[SCM] osgearth branch, master, updated. debian/1.4.1-1-32-g262f9f2

Pirmin Kalberer pka at sourcepole.ch
Tue Jul 9 20:58:11 UTC 2013


The following commit has been merged in the master branch:
commit a91dfb7a59bc49113d456d8c866e54b058899fa0
Author: Pirmin Kalberer <pka at sourcepole.ch>
Date:   Mon Oct 8 18:32:29 2012 +0200

    Upstream version 2.3 RC

diff --git a/CMakeLists.txt b/CMakeLists.txt
old mode 100644
new mode 100755
index 7c4b945..bb1f5a5
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -19,9 +19,9 @@ SET_PROPERTY( GLOBAL PROPERTY PREDEFINED_TARGETS_FOLDER "CMake Targets" )
 PROJECT(OSGEARTH)
 
 SET(OSGEARTH_MAJOR_VERSION 2)
-SET(OSGEARTH_MINOR_VERSION 1)
+SET(OSGEARTH_MINOR_VERSION 2)
 SET(OSGEARTH_PATCH_VERSION 0)
-SET(OSGEARTH_SOVERSION 1)
+SET(OSGEARTH_SOVERSION     2)
 
 SET(OSGEARTH_PLUGIN_PREFIX "")
 
@@ -47,6 +47,34 @@ SET(OpenThreads_SOURCE_DIR ${OSGEARTH_SOURCE_DIR})
 # Maybe this can be used override existing behavior if needed?
 SET(CMAKE_MODULE_PATH "${OSGEARTH_SOURCE_DIR}/CMakeModules;${CMAKE_MODULE_PATH}")
 
+# IPHONE_PORT at tom
+# Trying to get CMake to generate an XCode IPhone project, current efforts are to get iphoneos sdk 3.1 working
+# Added option which needs manually setting to select the IPhone SDK for building. We can only have one of the below 
+# set to true. Should realy have an OSG_BUILD_PLATFORM variable that we set to our desired platform
+OPTION(OSG_BUILD_PLATFORM_IPHONE "Enable IPhoneSDK Device support" OFF)
+OPTION(OSG_BUILD_PLATFORM_IPHONE_SIMULATOR "Enable IPhoneSDK Simulator support" OFF)
+IF(OSG_BUILD_PLATFORM_IPHONE OR OSG_BUILD_PLATFORM_IPHONE_SIMULATOR)
+  
+  #you need to manually set the default sdk version here
+  SET (IPHONE_SDKVER "5.1")
+  #the below is taken from ogre, it states the gcc stuff needs to happen before PROJECT() is called. I've no clue if we even need it
+  # Force gcc <= 4.2 on iPhone
+  include(CMakeForceCompiler)
+  CMAKE_FORCE_C_COMPILER(llvm-gcc-4.2 GNU)
+  CMAKE_FORCE_CXX_COMPILER(llvm-gcc-4.2 GNU)
+  SET(GCC_THUMB_SUPPORT NO)
+
+        #set either the device sdk or the simulator sdk. Can't find away to separate these in the same project
+        IF(OSG_BUILD_PLATFORM_IPHONE)
+            SET (IPHONE_DEVROOT "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer")
+            SET (IPHONE_SDKROOT "${IPHONE_DEVROOT}/SDKs/iPhoneOS${IPHONE_SDKVER}.sdk")
+        ELSE()
+            SET (IPHONE_DEVROOT "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer")
+            SET (IPHONE_SDKROOT "${IPHONE_DEVROOT}/SDKs/iPhoneSimulator${IPHONE_SDKVER}.sdk")
+        ENDIF()
+ENDIF ()
+# IPHONE_PORT at tom
+
 # check if STLport is required
 OPTION(USE_STLPORT "Set to ON to build OSGEARTH with stlport instead of the default STL library." OFF)
 IF(USE_STLPORT)
@@ -75,10 +103,18 @@ FIND_PACKAGE(OpenGL)
 
 FIND_PACKAGE(CURL)
 FIND_PACKAGE(GDAL)
-FIND_PACKAGE(LibZip)
 FIND_PACKAGE(GEOS)
 FIND_PACKAGE(Sqlite3)
 FIND_PACKAGE(ZLIB)
+FIND_PACKAGE(V8)
+
+FIND_PACKAGE(Qt4 4.6)
+IF (QT4_FOUND)
+    INCLUDE(${QT_USE_FILE})
+    SET(QT_ALL_LIBRARIES ${QT_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTWEBKIT_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QT_QTXML_LIBRARY} ${QT_QTOPENGL_LIBRARY})
+ENDIF (QT4_FOUND)
+
+OPTION(OSGEARTH_USE_QT "Enable to use Qt (build Qt-dependent libraries, plugins and examples)" ON)
 
 SET (WITH_EXTERNAL_TINYXML FALSE CACHE BOOL "Use bundled or system wide version of TinyXML")
 IF (WITH_EXTERNAL_TINYXML)
@@ -97,13 +133,6 @@ IF(UNIX)
     FIND_LIBRARY(MATH_LIBRARY m)
 ENDIF(UNIX)
 
-# Make the headers visible to everything
-INCLUDE_DIRECTORIES(
-    ${OSGEARTH_SOURCE_DIR}/src
-    ${OSG_DIR}/include
-    ${OSG_INCLUDE_DIR}
-)
-
 # Common global definitions
 #ADD_DEFINITIONS(-D)
 # Platform specific definitions
@@ -154,6 +183,11 @@ SET(CMAKE_DEBUG_POSTFIX  "d" CACHE STRING "add a postfix, usually d on windows")
 
 FIND_PACKAGE(OSG)
 
+# Make the headers visible to everything
+INCLUDE_DIRECTORIES(
+    ${OSGEARTH_SOURCE_DIR}/src
+    ${OSG_INCLUDE_DIR}
+)
 
 #FIND_PACKAGE(GDAL)
 
@@ -259,35 +293,66 @@ ADD_SUBDIRECTORY(src)
 # Set defaults for Universal Binaries. We want 32-bit Intel/PPC on 10.4
 # and 32/64-bit Intel/PPC on >= 10.5. Anything <= 10.3 doesn't support.
 IF(APPLE)
-    # These are just defaults/recommendations, but how we want to build
-    # out of the box. But the user needs to be able to change these options.
-    # So we must only set the values the first time CMake is run, or we
-    # will overwrite any changes the user sets.
-    # FORCE is used because the options are not reflected in the UI otherwise.
-    # Seems like a good place to add version specific compiler flags too.
-    IF(NOT OSGEARTH_CONFIG_HAS_BEEN_RUN_BEFORE)
-        # This is really fragile, but CMake doesn't provide the OS system
-        # version information we need. (Darwin versions can be changed
-        # independently of OS X versions.)
-        # It does look like CMake handles the CMAKE_OSX_SYSROOT automatically.
-        IF(EXISTS /Developer/SDKs/10.5.sdk)
-            SET(CMAKE_OSX_ARCHITECTURES "ppc;i386;ppc64;x86_64" CACHE STRING "Build architectures for OSX" FORCE)
-            SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=10.5 -ftree-vectorize -fvisibility-inlines-hidden" CACHE STRING "Flags used by the compiler during all build types." FORCE)
-        ELSE(EXISTS /Developer/SDKs/10.5.sdk)
-            IF(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
-                SET(CMAKE_OSX_ARCHITECTURES "ppc;i386" CACHE STRING "Build architectures for OSX" FORCE)
-                SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=10.4 -ftree-vectorize -fvisibility-inlines-hidden" CACHE STRING "Flags used by the compiler during all build types." FORCE)
-            ELSE(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
-                # No Universal Binary support
-                # Should break down further to set the -mmacosx-version-min,
-                # but the SDK detection is too unreliable here.
-            ENDIF(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
-        ENDIF(EXISTS /Developer/SDKs/10.5.sdk)
-    ENDIF(NOT OSGEARTH_CONFIG_HAS_BEEN_RUN_BEFORE)
-
-    OPTION(OSGEARTH_BUILD_APPLICATION_BUNDLES "Enable the building of applications and examples as OSX Bundles" OFF)
-    OPTION(OSGEARTH_BUILD_FRAMEWORKS "Compile frameworks instead of dylibs" OFF)
-    SET(OSGEARTH_BUILD_FRAMEWORKS_INSTALL_NAME_DIR "@executable_path/../Frameworks" CACHE STRING "Install name dir for compiled frameworks")
+
+        #Here we check if the user specified IPhone SDK
+    IF(OSG_BUILD_PLATFORM_IPHONE OR OSG_BUILD_PLATFORM_IPHONE_SIMULATOR)
+
+        IF(OSG_BUILD_PLATFORM_IPHONE)
+            SET(CMAKE_OSX_ARCHITECTURES "armv7" CACHE STRING "Build architectures for iOS" FORCE)
+            SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -miphoneos-version-min=4.1 -mno-thumb -arch armv7 -pipe -no-cpp-precomp" CACHE STRING "Flags used by the compiler during all build types." FORCE)
+        ELSE()
+            #simulator uses i386 architectures
+            SET(CMAKE_OSX_ARCHITECTURES "i386" CACHE STRING "Build architectures for iOS Simulator" FORCE)
+            SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mno-thumb -arch i386 -pipe -no-cpp-precomp" CACHE STRING "Flags used by the compiler during all build types." FORCE)
+        ENDIF()
+
+        #here we set the specific iphone sdk version. We can only set either device or simulator sdk. So if you want both you currently have to have two seperate projects
+        SET(CMAKE_OSX_SYSROOT "${IPHONE_SDKROOT}" CACHE STRING "System root for iOS" FORCE)
+
+        #hack, force link to opengles
+        set(CMAKE_EXE_LINKER_FLAGS "-framework Foundation -framework OpenGLES")
+
+        #use the IPhone windowing system
+        SET(OSG_WINDOWING_SYSTEM "IOS" CACHE STRING "Forced IPhone windowing system on iOS"  FORCE)
+        SET(OSG_DEFAULT_IMAGE_PLUGIN_FOR_OSX "imageio" CACHE STRING "Forced imageio default image plugin for iOS" FORCE)
+
+        #I think this or similar will be required for IPhone apps
+        #OPTION(OSG_BUILD_APPLICATION_BUNDLES "Enable the building of applications and examples as OSX Bundles" ON)
+
+    ELSE()
+
+        # These are just defaults/recommendations, but how we want to build
+        # out of the box. But the user needs to be able to change these options.
+        # So we must only set the values the first time CMake is run, or we
+        # will overwrite any changes the user sets.
+        # FORCE is used because the options are not reflected in the UI otherwise.
+        # Seems like a good place to add version specific compiler flags too.
+        IF(NOT OSGEARTH_CONFIG_HAS_BEEN_RUN_BEFORE)
+            # This is really fragile, but CMake doesn't provide the OS system
+            # version information we need. (Darwin versions can be changed
+            # independently of OS X versions.)
+            # It does look like CMake handles the CMAKE_OSX_SYSROOT automatically.
+            IF(EXISTS /Developer/SDKs/10.5.sdk)
+                SET(CMAKE_OSX_ARCHITECTURES "ppc;i386;ppc64;x86_64" CACHE STRING "Build architectures for OSX" FORCE)
+                SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=10.5 -ftree-vectorize -fvisibility-inlines-hidden" CACHE STRING "Flags used by the compiler during all build types." FORCE)
+            ELSE(EXISTS /Developer/SDKs/10.5.sdk)
+                IF(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
+                    SET(CMAKE_OSX_ARCHITECTURES "ppc;i386" CACHE STRING "Build architectures for OSX" FORCE)
+                    SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mmacosx-version-min=10.4 -ftree-vectorize -fvisibility-inlines-hidden" CACHE STRING "Flags used by the compiler during all build types." FORCE)
+                ELSE(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
+                    # No Universal Binary support
+                    # Should break down further to set the -mmacosx-version-min,
+                    # but the SDK detection is too unreliable here.
+                ENDIF(EXISTS /Developer/SDKs/MacOSX10.4u.sdk)
+            ENDIF(EXISTS /Developer/SDKs/10.5.sdk)
+        ENDIF(NOT OSGEARTH_CONFIG_HAS_BEEN_RUN_BEFORE)
+
+
+        OPTION(OSGEARTH_BUILD_APPLICATION_BUNDLES "Enable the building of applications and examples as OSX Bundles" OFF)
+        OPTION(OSGEARTH_BUILD_FRAMEWORKS "Compile frameworks instead of dylibs" OFF)
+        SET(OSGEARTH_BUILD_FRAMEWORKS_INSTALL_NAME_DIR "@executable_path/../Frameworks" CACHE STRING "Install name dir for compiled frameworks")
+
+    ENDIF()
 
 ENDIF(APPLE)
 
@@ -322,4 +387,4 @@ SET(CPACK_PACKAGE_VERSION_PATCH ${OSGEARTH_PATCH_VERSION} )
 SET(CPACK_RESOURCE_FILE_LICENSE ${PROJECT_SOURCE_DIR}/LICENSE.txt )
 SET(CPACK_MONOLITHIC_INSTALL    1 )                                        # create a single, monolithic package.
     
-INCLUDE(CPack)
\ No newline at end of file
+INCLUDE(CPack)
diff --git a/CMakeModules/FindLibZip.cmake b/CMakeModules/FindLibZip.cmake
deleted file mode 100644
index 492969a..0000000
--- a/CMakeModules/FindLibZip.cmake
+++ /dev/null
@@ -1,51 +0,0 @@
-# Locate libzip
-# This module defines
-# LIBZIP_LIBRARY
-# LIBZIP_FOUND, if false, do not try to link to libzip 
-# LIBZIP_INCLUDE_DIR, where to find the headers
-#
-
-FIND_PATH(LIBZIP_INCLUDE_DIR zip.h
-    $ENV{LIBZIP_DIR}/include
-    $ENV{LIBZIP_DIR}
-    $ENV{OSGDIR}/include
-    $ENV{OSGDIR}
-    $ENV{OSG_ROOT}/include
-    ~/Library/Frameworks
-    /Library/Frameworks
-    /usr/local/include
-    /usr/include
-    /sw/include # Fink
-    /opt/local/include # DarwinPorts
-    /opt/csw/include # Blastwave
-    /opt/include
-    [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/include
-    /usr/freeware/include
-)
-
-FIND_LIBRARY(LIBZIP_LIBRARY 
-    NAMES libzip zip
-    PATHS
-    $ENV{LIBZIP_DIR}/lib
-    $ENV{LIBZIP_DIR}
-    $ENV{OSGDIR}/lib
-    $ENV{OSGDIR}
-    $ENV{OSG_ROOT}/lib
-    ~/Library/Frameworks
-    /Library/Frameworks
-    /usr/local/lib
-    /usr/lib
-    /sw/lib
-    /opt/local/lib
-    /opt/csw/lib
-    /opt/lib
-    [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Session\ Manager\\Environment;OSG_ROOT]/lib
-    /usr/freeware/lib64
-)
-
-SET(LIBZIP_FOUND "NO")
-IF(LIBZIP_LIBRARY AND LIBZIP_INCLUDE_DIR)
-    SET(LIBZIP_FOUND "YES")
-ENDIF(LIBZIP_LIBRARY AND LIBZIP_INCLUDE_DIR)
-
-
diff --git a/CMakeModules/FindOSG.cmake b/CMakeModules/FindOSG.cmake
index fe298e6..4b25f74 100644
--- a/CMakeModules/FindOSG.cmake
+++ b/CMakeModules/FindOSG.cmake
@@ -37,6 +37,7 @@ FIND_PATH( ${THIS_OSG_INCLUDE_DIR} ${THIS_OSG_INCLUDE_FILE}
         /Library/Frameworks
     PATH_SUFFIXES
         /include/
+		/inc/
 )
 
 ENDMACRO( FIND_OSG_INCLUDE THIS_OSG_INCLUDE_DIR THIS_OSG_INCLUDE_FILE )
@@ -74,6 +75,8 @@ FIND_LIBRARY(${MYLIBRARY}
         /build/lib64/
         /Build/lib/
         /Build/lib64/
+		/win/32/debug/lib/
+		/win/32/release/lib/		
      )
 
 ENDMACRO(FIND_OSG_LIBRARY LIBRARY LIBRARYNAME)
@@ -114,6 +117,8 @@ FIND_OSG_LIBRARY( OSGSHADOW_LIBRARY_DEBUG osgShadowd )
 FIND_OSG_LIBRARY( OSGMANIPULATOR_LIBRARY osgManipulator )
 FIND_OSG_LIBRARY( OSGMANIPULATOR_LIBRARY_DEBUG osgManipulatord )
 
+FIND_OSG_LIBRARY( OSGQT_LIBRARY osgQt )
+FIND_OSG_LIBRARY( OSGQT_LIBRARY_DEBUG osgQtd )
 
 FIND_OSG_LIBRARY( OPENTHREADS_LIBRARY OpenThreads )
 FIND_OSG_LIBRARY( OPENTHREADS_LIBRARY_DEBUG OpenThreadsd )
diff --git a/CMakeModules/FindV8.cmake b/CMakeModules/FindV8.cmake
new file mode 100644
index 0000000..e8038ba
--- /dev/null
+++ b/CMakeModules/FindV8.cmake
@@ -0,0 +1,46 @@
+# Locate V8
+# This module defines
+# V8_LIBRARY
+# V8_FOUND, if false, do not try to link to V8
+# V8_INCLUDE_DIR, where to find the headers
+
+FIND_PATH(V8_INCLUDE_DIR v8.h
+    ${V8_DIR}/include
+    $ENV{V8_DIR}/include
+    $ENV{V8_DIR}
+    ~/Library/Frameworks
+    /Library/Frameworks
+    /usr/local/include
+    /usr/include
+    /sw/include # Fink
+    /opt/local/include # DarwinPorts
+    /opt/csw/include # Blastwave
+    /opt/include
+    /usr/freeware/include
+    /devel
+)
+
+FIND_LIBRARY(V8_LIBRARY
+    NAMES v8 libv8
+    PATHS
+    ${V8_DIR}
+    ${V8_DIR}/lib
+    $ENV{V8_DIR}
+    $ENV{V8_DIR}/lib
+    ~/Library/Frameworks
+    /Library/Frameworks
+    /usr/local/lib
+    /usr/lib
+    /sw/lib
+    /opt/local/lib
+    /opt/csw/lib
+    /opt/lib
+    /usr/freeware/lib64
+)
+
+SET(V8_FOUND "NO")
+IF(V8_LIBRARY AND V8_INCLUDE_DIR)
+    SET(V8_FOUND "YES")
+ENDIF(V8_LIBRARY AND V8_INCLUDE_DIR)
+
+
diff --git a/CMakeModules/ModuleInstall.cmake b/CMakeModules/ModuleInstall.cmake
index da2685a..efe90b2 100644
--- a/CMakeModules/ModuleInstall.cmake
+++ b/CMakeModules/ModuleInstall.cmake
@@ -14,12 +14,16 @@ ELSE(WIN32)
     SET(INSTALL_ARCHIVEDIR lib${LIB_POSTFIX})
 ENDIF(WIN32)
 
-SET(HEADERS_GROUP "Header Files")
 
-SOURCE_GROUP(
-    ${HEADERS_GROUP}
-    FILES ${LIB_PUBLIC_HEADERS}
-)
+IF(NOT USE_CUSTOM_SOURCE_GROUPS)
+
+    SET(HEADERS_GROUP "Headers")
+
+    SOURCE_GROUP(
+        ${HEADERS_GROUP}
+        FILES ${LIB_PUBLIC_HEADERS}
+    )
+ENDIF()
 
 
 INSTALL(
diff --git a/README.txt b/README.txt
index 5846d46..b8e386f 100644
--- a/README.txt
+++ b/README.txt
@@ -1,5 +1,5 @@
 osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-Copyright 2008-2010 Pelican Mapping
+Copyright 2008-2012 Pelican Mapping
 
 http://osgearth.org
 git://github.com/gwaldron/osgearth
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index b897ac7..07c49da 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,6 +1,7 @@
 #the old construct SUBDIRS( was substituded by ADD_SUBDIRECTORY that is to be preferred according on CMake docs.
 FOREACH( lib
          osgEarth
+         osgEarthAnnotation
          osgEarthFeatures
          osgEarthUtil
          osgEarthSymbology )
@@ -14,6 +15,11 @@ ENDFOREACH( lib )
 ADD_SUBDIRECTORY( osgEarthDrivers )
 ADD_SUBDIRECTORY( applications )
 
+IF (QT4_FOUND AND NOT ANDROID AND OSGEARTH_USE_QT)
+    ADD_SUBDIRECTORY(osgEarthQt)
+    SET_PROPERTY(TARGET osgEarthQt PROPERTY FOLDER "Libs")
+ENDIF()
+
 IF(MSVC80)
   OPTION(OSGEARTH_MSVC_GENERATE_PLUGINS_AND_WRAPPERS_MANIFESTS "Generate or not manifests files under VS8 for dynamically loaded dlls" ON)
 ENDIF(MSVC80)
diff --git a/src/applications/CMakeLists.txt b/src/applications/CMakeLists.txt
index 5fc0243..d12f3ad 100644
--- a/src/applications/CMakeLists.txt
+++ b/src/applications/CMakeLists.txt
@@ -19,26 +19,29 @@ SET(TARGET_COMMON_LIBRARIES
     osgEarthFeatures
     osgEarthUtil
     osgEarthSymbology
+    osgEarthAnnotation
 )
 
 SET(TARGET_DEFAULT_PREFIX "application_")
 SET(TARGET_DEFAULT_LABEL_PREFIX "Sample")
 
 ADD_SUBDIRECTORY(osgearth_viewer)
+ADD_SUBDIRECTORY(osgearth_clamp)
 ADD_SUBDIRECTORY(osgearth_manip)
 ADD_SUBDIRECTORY(osgearth_seed)
-ADD_SUBDIRECTORY(osgearth_composite)
-ADD_SUBDIRECTORY(osgearth_clouds)
-ADD_SUBDIRECTORY(osgearth_ocean)
 ADD_SUBDIRECTORY(osgearth_toc)
 ADD_SUBDIRECTORY(osgearth_elevation)
 ADD_SUBDIRECTORY(osgearth_features)
+ADD_SUBDIRECTORY(osgearth_featurefilter)
 ADD_SUBDIRECTORY(osgearth_featureinfo)
+ADD_SUBDIRECTORY(osgearth_los)
+ADD_SUBDIRECTORY(osgearth_terrainprofile)
 ADD_SUBDIRECTORY(osgearth_map)
 ADD_SUBDIRECTORY(osgearth_annotation)
+ADD_SUBDIRECTORY(osgearth_tracks)
 
 IF(NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "2.9.6")
-ADD_SUBDIRECTORY(osgearth_featureeditor)
+    ADD_SUBDIRECTORY(osgearth_featureeditor)
 ENDIF()
 
 ADD_SUBDIRECTORY(osgearth_measure)
@@ -46,11 +49,26 @@ ADD_SUBDIRECTORY(osgearth_version)
 ADD_SUBDIRECTORY(osgearth_controls)
 ADD_SUBDIRECTORY(osgearth_shadercomp)
 ADD_SUBDIRECTORY(osgearth_tilesource)
-ADD_SUBDIRECTORY(osgearth_labels)
 ADD_SUBDIRECTORY(osgearth_imageoverlay)
+ADD_SUBDIRECTORY(osgearth_city)
+ADD_SUBDIRECTORY(osgearth_package)
+ADD_SUBDIRECTORY(osgearth_graticule)
+ADD_SUBDIRECTORY(osgearth_featuremanip)
+ADD_SUBDIRECTORY(osgearth_featurequery)
+ADD_SUBDIRECTORY(osgearth_overlayviewer)
+ADD_SUBDIRECTORY(osgearth_occlusionculling)
+ADD_SUBDIRECTORY(osgearth_colorfilter)
+ADD_SUBDIRECTORY(osgearth_tfs)
+ADD_SUBDIRECTORY(osgearth_contour)
+ADD_SUBDIRECTORY(osgearth_verticalscale)
 
+IF(NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "3.1.0")
+    ADD_SUBDIRECTORY(osgearth_shadow)
+ENDIF()
 
-#ADD_SUBDIRECTORY(osgearth_symbology)
+IF (QT4_FOUND AND NOT ANDROID AND OSGEARTH_USE_QT)
+    ADD_SUBDIRECTORY(osgearth_qt)
+    ADD_SUBDIRECTORY(osgearth_qt_simple)
+ENDIF()
 
-#testing
-add_subdirectory(osgearth_resources)
\ No newline at end of file
+#ADD_SUBDIRECTORY(osgearth_test_srs)
diff --git a/src/applications/osgearth_annotation/osgearth_annotation.cpp b/src/applications/osgearth_annotation/osgearth_annotation.cpp
index 0b7636e..aeaf26d 100644
--- a/src/applications/osgearth_annotation/osgearth_annotation.cpp
+++ b/src/applications/osgearth_annotation/osgearth_annotation.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -18,19 +18,43 @@
 */
 
 #include <osgEarth/MapNode>
+#include <osgEarth/ECEF>
+
 #include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/Annotation>
-#include <osgEarthUtil/ImageOverlay>
-#include <osgEarthUtil/ImageOverlayEditor>
+#include <osgEarthUtil/AnnotationEvents>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/ExampleResources>
+
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/ImageOverlay>
+#include <osgEarthAnnotation/ImageOverlayEditor>
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/RectangleNode>
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/LocalGeometryNode>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthAnnotation/HighlightDecoration>
+#include <osgEarthAnnotation/ScaleDecoration>
+
 #include <osgEarthSymbology/GeometryFactory>
+
 #include <osgViewer/Viewer>
 #include <osgViewer/ViewerEventHandlers>
 #include <osgGA/StateSetManipulator>
+#include <osgGA/EventVisitor>
+#include <osgDB/WriteFile>
+
+#include <osgEarth/Pickers>
 
 using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
 using namespace osgEarth::Util;
 using namespace osgEarth::Util::Controls;
-using namespace osgEarth::Util::Annotation;
 
 int
 usage( char** argv )
@@ -39,172 +63,327 @@ usage( char** argv )
     return -1;
 }
 
-struct ToggleNode : public ControlEventHandler {
-    ToggleNode( osg::Node* node ) : _node( node ) { }
-    void onValueChanged( Control* src, bool value ) {
-        if ( _node.valid() )
-            _node->setNodeMask( value ? ~0 : 0 );
+
+//------------------------------------------------------------------
+
+/**
+ * Event handler that processes events fired from the
+ * AnnotationEventCallback
+ */
+struct MyAnnoEventHandler : public AnnotationEventHandler
+{
+    void onHoverEnter( AnnotationNode* anno, const EventArgs& args )
+    {
+        anno->setDecoration( "hover" );
+        OE_NOTICE << "Hover enter" << std::endl;
+    }
+
+    void onHoverLeave( AnnotationNode* anno, const EventArgs& args )
+    {
+        anno->clearDecoration();
+        OE_NOTICE << "Hover leave" << std::endl;
+    }
+
+    virtual void onClick( AnnotationNode* node, const EventArgs& details )
+    {        
+        PlaceNode* place = dynamic_cast<PlaceNode*>(node);
+        if (place == NULL)
+        {
+            OE_NOTICE << "Thanks for clicking this annotation" << std::endl;
+        }
+        else
+        {
+            OE_NOTICE << "Thanks for clicking the PlaceNode: " << place->getText() << std::endl;
+        }
     }
-    osg::observer_ptr<osg::Node> _node;
 };
 
+//------------------------------------------------------------------
+
+struct ToggleNodeHandler : public ControlEventHandler
+{
+    ToggleNodeHandler( osg::Node* node ) : _node(node) { }
+
+    void onValueChanged( Control* control, bool value )
+    {
+        _node->setNodeMask( value ? ~0 : 0 );
+    }
+
+    osg::Node* _node;
+};
+
+//------------------------------------------------------------------
+
+
 int
 main(int argc, char** argv)
 {
+    // The HighlightDecoration requires you to allocate stencil planes,
+    // and will yell at you if you don't. You have to do this prior to creating
+    // your Viewer.
+    osg::DisplaySettings::instance()->setMinimumNumStencilBits( 2 );
+
     osg::Group* root = new osg::Group();
 
     // try to load an earth file.
     osg::ArgumentParser arguments(&argc,argv);
-    osg::Node* node = osgDB::readNodeFiles( arguments );
-    if ( !node )
-        return usage(argv);
+
+    osgViewer::Viewer viewer(arguments);
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file and parse demo arguments
+    osg::Node* node = MapNodeHelper().load(arguments, &viewer);
+    if ( !node ) return usage(argv);
+    root->addChild( node );
 
     // find the map node that we loaded.
     MapNode* mapNode = MapNode::findMapNode(node);
     if ( !mapNode )
         return usage(argv);
 
-    root->addChild( mapNode );
-
-    // make some annotations.
+    // Group to hold all our annotation elements.
     osg::Group* annoGroup = new osg::Group();
     root->addChild( annoGroup );
 
-    // a Placemark combines a 2D icon with a text label.
-    annoGroup->addChild( new PlacemarkNode(
-        mapNode, 
-        osg::Vec3d(-74, 40.714, 0), 
-        URI("../data/placemark32.png").readImage(),
-        "New York") );
+    //A group for all the editors
+    osg::Group* editorGroup = new osg::Group;
+    root->addChild( editorGroup );
+    editorGroup->setNodeMask( 0 );
+
+    HBox* box = ControlCanvas::get(&viewer)->addControl( new HBox() );
+    box->setChildSpacing( 5 );
+    //Add a toggle button to toggle editing
+    CheckBoxControl* editCheckbox = new CheckBoxControl( false );
+    editCheckbox->addEventHandler( new ToggleNodeHandler( editorGroup ) );
+    box->addControl( editCheckbox );
+    LabelControl* labelControl = new LabelControl( "Edit Annotations" );
+    labelControl->setFontSize( 24.0f );
+    box->addControl( labelControl  );
+
+
+    // Make a group for 2D items, and activate the decluttering engine. Decluttering
+    // will migitate overlap between elements that occupy the same screen real estate.
+    osg::Group* labelGroup = new osg::Group();
+    Decluttering::setEnabled( labelGroup->getOrCreateStateSet(), true );
+    annoGroup->addChild( labelGroup );
+
+    // Style our labels:
+    Style labelStyle;
+    labelStyle.getOrCreate<TextSymbol>()->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+    labelStyle.getOrCreate<TextSymbol>()->fill()->color() = Color::Yellow;
+
+    // A lat/long SRS for specifying points.
+    const SpatialReference* geoSRS = mapNode->getMapSRS()->getGeographicSRS();
+
+    //--------------------------------------------------------------------
+
+    // A series of place nodes (an icon with a text label)
+    {
+        Style pin;
+        pin.getOrCreate<IconSymbol>()->url()->setLiteral( "../data/placemark32.png" );
+
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -74.00, 40.71), "New York"      , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -77.04, 38.85), "Washington, DC", pin));
+        //labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -87.65, 41.90), "Chicago"       , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS,-118.40, 33.93), "Los Angeles"   , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -71.03, 42.37), "Boston"        , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS,-157.93, 21.35), "Honolulu"      , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, 139.75, 35.68), "Tokyo"         , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -90.25, 29.98), "New Orleans"   , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -80.28, 25.82), "Miami"         , pin));
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS,-117.17, 32.72), "San Diego"     , pin));
+
+        // test with an LOD, just for kicks:
+        osg::LOD* lod = new osg::LOD();
+        lod->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, 14.68, 50.0), "Prague", pin), 0.0, 1e6);
+        labelGroup->addChild( lod );
+
+
+        labelGroup->addChild( new PlaceNode(mapNode, GeoPoint(geoSRS, -87.65, 41.90, 1000, ALTMODE_ABSOLUTE), "Chicago"       , pin));
+    }
 
-    // a Placemark combines a 2D icon with a text label.
-    annoGroup->addChild( new PlacemarkNode(
-        mapNode, 
-        osg::Vec3d(139.75, 35.685, 0), 
-        URI("../data/placemark32.png").readImage(),
-        "Tokyo" ) );
+    //--------------------------------------------------------------------
 
     // a box that follows lines of latitude (rhumb line interpolation, the default)
-    Geometry* geom = new Ring();
-    geom->push_back( osg::Vec3d(0,   40, 0) );
-    geom->push_back( osg::Vec3d(-60, 40, 0) );
-    geom->push_back( osg::Vec3d(-60, 60, 0) );
-    geom->push_back( osg::Vec3d(0,   60, 0) );
-    Style geomStyle;
-
-    geomStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::Yellow;
-    geomStyle.getOrCreate<LineSymbol>()->stroke()->width() = 5.0f;
-
-    FeatureNode* gnode = new FeatureNode(mapNode, new Feature(geom, geomStyle), true);
-    annoGroup->addChild( gnode );
-
-    // another line, this time using great-circle interpolation (flight path from New York to Tokyo)
-    Geometry* path = new LineString();
-    path->push_back( osg::Vec3d(-74, 40.714, 0) );    // New York
-    path->push_back( osg::Vec3d(139.75, 35.685, 0) ); // Tokyo
-
-    Style pathStyle;
-    pathStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::Red;
-    pathStyle.getOrCreate<LineSymbol>()->stroke()->width() = 10.0f;
-
-    Feature* pathFeature = new Feature(path, pathStyle);
-    pathFeature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
-    FeatureNode* pathNode = new FeatureNode(mapNode, pathFeature, true);
-    annoGroup->addChild( pathNode );
-
-    // a circle around New Orleans
-    Style circleStyle;
-    circleStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Cyan, 0.5);
-    CircleNode* circle = new CircleNode( 
-        mapNode, 
-        osg::Vec3d(-90.25, 29.98, 0), 
-        Linear(600, Units::KILOMETERS), 
-        circleStyle );
-    annoGroup->addChild( circle );
-
-    // an ellipse around Miami
-    Style ellipseStyle;
-    ellipseStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Orange, 0.75);
-    EllipseNode* ellipse = new EllipseNode(
-        mapNode, 
-        osg::Vec3d(-80.28,25.82,0), 
-        Linear(200, Units::MILES),
-        Linear(100, Units::MILES),
-        Angular(45, Units::DEGREES),
-        ellipseStyle,
-        true);
-    annoGroup->addChild( ellipse );
-
-    // an extruded polygon roughly the shape of Utah
-    Geometry* utah = new Polygon();
-    utah->push_back( osg::Vec3d(-114.052, 37, 0) );
-    utah->push_back( osg::Vec3d(-109.054, 37, 0) );
-    utah->push_back( osg::Vec3d(-109.054, 41, 0) );
-    utah->push_back( osg::Vec3d(-111.04, 41, 0) );
-    utah->push_back( osg::Vec3d(-111.08, 42.059, 0) );
-    utah->push_back( osg::Vec3d(-114.08, 42.024, 0) );
-
-    Style utahStyle;
-    utahStyle.getOrCreate<ExtrusionSymbol>()->height() = 250000.0; // meters MSL
-    utahStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::White, 0.8);
-
-    Feature* utahFeature = new Feature(utah, utahStyle);
-    FeatureNode* utahNode = new FeatureNode(mapNode, utahFeature, false);
-    annoGroup->addChild( utahNode );
+    {
+        Geometry* geom = new Polygon();
+        geom->push_back( osg::Vec3d(0,   40, 0) );
+        geom->push_back( osg::Vec3d(-60, 40, 0) );
+        geom->push_back( osg::Vec3d(-60, 60, 0) );
+        geom->push_back( osg::Vec3d(0,   60, 0) );
+        Style geomStyle;
+        geomStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::Cyan;
+        geomStyle.getOrCreate<LineSymbol>()->stroke()->width() = 5.0f;
+        geomStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+        FeatureNode* gnode = new FeatureNode(mapNode, new Feature(geom, geoSRS, geomStyle));
+        annoGroup->addChild( gnode );
+
+        labelGroup->addChild( new LabelNode(mapNode, GeoPoint(geoSRS,-30, 50), "Rhumb line polygon", labelStyle) );
+    }
 
-    // an image overlay
-    ImageOverlay* imageOverlay = 0L;
-    osg::Image* image = osgDB::readImageFile( "../data/USFLAG.TGA" );
-    if ( image ) {
-        imageOverlay = new ImageOverlay(mapNode, image);
-        imageOverlay->setBounds( Bounds( -100.0, 50.0, -90.0, 55.0) );
+    //--------------------------------------------------------------------
+
+    // another rhumb box that crosses the antimeridian
+    {
+        Geometry* geom = new Polygon();
+        geom->push_back( -160., -30. );
+        geom->push_back(  150., -20. );
+        geom->push_back(  160., -45. );
+        geom->push_back( -150., -40. );
+        Style geomStyle;
+        geomStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::Lime;
+        geomStyle.getOrCreate<LineSymbol>()->stroke()->width() = 3.0f;
+        geomStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+        FeatureNode* gnode = new FeatureNode(mapNode, new Feature(geom, geoSRS, geomStyle));
+        annoGroup->addChild( gnode );
+
+        labelGroup->addChild( new LabelNode(mapNode, GeoPoint(geoSRS, -175, -35), "Antimeridian polygon", labelStyle) );
+    }
+
+    //--------------------------------------------------------------------
 
-        //Add an editor            
-        annoGroup->addChild( imageOverlay );
-        
-        osg::Node* editor = new ImageOverlayEditor( imageOverlay, mapNode->getMap()->getProfile()->getSRS()->getEllipsoid(), mapNode );
-        root->addChild( editor );
+    // A path using great-circle interpolation.
+    {
+        Geometry* path = new LineString();
+        path->push_back( osg::Vec3d(-74, 40.714, 0) );   // New York
+        path->push_back( osg::Vec3d(139.75, 35.68, 0) ); // Tokyo
 
+        Style pathStyle;
+        pathStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::Red;
+        pathStyle.getOrCreate<LineSymbol>()->stroke()->width() = 3.0f;
+        pathStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
 
+        Feature* pathFeature = new Feature(path, geoSRS, pathStyle);
+        pathFeature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
 
+        //OE_INFO << "Path extent = " << pathFeature->getExtent().toString() << std::endl;
+
+        FeatureNode* pathNode = new FeatureNode(mapNode, pathFeature);
+        annoGroup->addChild( pathNode );
+
+        labelGroup->addChild( new LabelNode(mapNode, GeoPoint(geoSRS,-170, 61.2), "Great circle path", labelStyle) );
     }
 
+    //--------------------------------------------------------------------
+
+    // A circle around New Orleans.
+    {
+        Style circleStyle;
+        circleStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Cyan, 0.5);
+        CircleNode* circle = new CircleNode(
+            mapNode, 
+            GeoPoint(geoSRS, -90.25, 29.98, 1000., ALTMODE_RELATIVE),
+            Linear(300, Units::KILOMETERS ),
+            circleStyle,
+            false );
+        annoGroup->addChild( circle );        
+
+        editorGroup->addChild( new CircleNodeEditor( circle ) );
+    }
 
+    //--------------------------------------------------------------------
+
+    // An draped ellipse around Miami.
+    {
+        Style ellipseStyle;
+        ellipseStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Orange, 0.75);
+        EllipseNode* ellipse = new EllipseNode(
+            mapNode, 
+            GeoPoint(geoSRS, -80.28, 25.82, 0.0, ALTMODE_RELATIVE),
+            Linear(500, Units::MILES),
+            Linear(100, Units::MILES),
+            Angular(0, Units::DEGREES),
+            ellipseStyle,
+            true );
+        annoGroup->addChild( ellipse );
+        editorGroup->addChild( new EllipseNodeEditor( ellipse ) );
+    }
 
+    {
+        // A rectangle around San Diego
+        Style rectStyle;
+        rectStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Green, 0.5);
+        RectangleNode* rect = new RectangleNode(
+            mapNode, 
+            GeoPoint(geoSRS, -117.172, 32.721),
+            Linear(300, Units::KILOMETERS ),
+            Linear(600, Units::KILOMETERS ),
+            rectStyle,
+            true );
+        annoGroup->addChild( rect );
+
+        editorGroup->addChild( new RectangleNodeEditor( rect ) );
+    }
 
-    // initialize a viewer:
-    osgViewer::Viewer viewer(arguments);
-    viewer.setCameraManipulator( new EarthManipulator() );
-    viewer.setSceneData( root );
+    
+
+    //--------------------------------------------------------------------
+
+    // An extruded polygon roughly the shape of Utah. Here we demonstrate the
+    // FeatureNode, where you create a geographic geometry and use it as an
+    // annotation.
+    {
+        Geometry* utah = new Polygon();
+        utah->push_back( -114.052, 37.0   );
+        utah->push_back( -109.054, 37.0   );
+        utah->push_back( -109.054, 41.0   );
+        utah->push_back( -111.040, 41.0   );
+        utah->push_back( -111.080, 42.059 );
+        utah->push_back( -114.080, 42.024 );
+
+        Style utahStyle;
+        utahStyle.getOrCreate<ExtrusionSymbol>()->height() = 250000.0; // meters MSL
+        utahStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::White, 0.8);
+
+        Feature*     utahFeature = new Feature(utah, geoSRS, utahStyle);
+        FeatureNode* featureNode = new FeatureNode(mapNode, utahFeature);
+        annoGroup->addChild( featureNode );
+    }
+
+    //--------------------------------------------------------------------
 
-    // make a little HUD to toggle stuff:
-    VBox* vbox = new VBox();
-    vbox->setBackColor( Color(Color::Black, 0.5) );
-    vbox->setVertAlign( Control::ALIGN_TOP );
-    vbox->addControl( new LabelControl("Annotation Example", 22.0f, Color::Yellow) );
-    Grid* grid = new Grid();
-    vbox->addControl( grid );
-    grid->setChildSpacing( 5 );
-    grid->setChildHorizAlign( Control::ALIGN_LEFT );
-    grid->setChildVertAlign( Control::ALIGN_CENTER );
-    grid->setControl( 0, 0, new CheckBoxControl(true, new ToggleNode(gnode)) );
-    grid->setControl( 1, 0, new LabelControl("Line geoemtry") );
-    grid->setControl( 0, 1, new CheckBoxControl(true, new ToggleNode(pathNode)) );
-    grid->setControl( 1, 1, new LabelControl("Red flight path") );
-    grid->setControl( 0, 2, new CheckBoxControl(true, new ToggleNode(circle)) );
-    grid->setControl( 1, 2, new LabelControl("Blue circle") );
-    grid->setControl( 0, 3, new CheckBoxControl(true, new ToggleNode(ellipse)) );
-    grid->setControl( 1, 3, new LabelControl("Orange ellipse") );
-    grid->setControl( 0, 4, new CheckBoxControl(true, new ToggleNode(utahNode)) );
-    grid->setControl( 1, 4, new LabelControl("Extruded state") );
-    if ( imageOverlay ) {
-        grid->setControl( 0, 5, new CheckBoxControl(true, new ToggleNode(imageOverlay)) );
-        grid->setControl( 1, 5, new LabelControl("Image overlay") );
+    // an image overlay
+    {
+        ImageOverlay* imageOverlay = 0L;
+        osg::Image* image = osgDB::readImageFile( "../data/USFLAG.TGA" );
+        if ( image )
+        {
+            imageOverlay = new ImageOverlay(mapNode, image);
+            imageOverlay->setBounds( Bounds( -100.0, 35.0, -90.0, 40.0) );
+            annoGroup->addChild( imageOverlay );
+
+            editorGroup->addChild( new ImageOverlayEditor( imageOverlay ) );
+        }
     }
-    ControlCanvas::get(&viewer,true)->addControl(vbox);
+    
+    //--------------------------------------------------------------------
+
+    // install decoration. These change the appearance of an Annotation
+    // based on some user action.
+
+    // highlight annotation upon hover by default:
+    
+    DecorationInstaller highlightInstaller("hover", new HighlightDecoration());
+    annoGroup->accept( highlightInstaller );
+
+    // scale labels when hovering:
+    DecorationInstaller scaleInstaller("hover", new ScaleDecoration(1.1f));
+    labelGroup->accept( scaleInstaller );
+
+    // install an event handler for picking and hovering.
+    AnnotationEventCallback* cb = new AnnotationEventCallback();
+    cb->addHandler( new MyAnnoEventHandler() );
+
+    annoGroup->addEventCallback( cb );
+
+    //--------------------------------------------------------------------
+
+    // initialize the viewer:    
+    viewer.setSceneData( root );
 
-    // add some stock OSG handlers:
-    viewer.getDatabasePager()->setDoPreCompile( true );
+    viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
     viewer.addEventHandler(new osgViewer::StatsHandler());
     viewer.addEventHandler(new osgViewer::WindowSizeHandler());
     viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
diff --git a/src/applications/osgearth_city/CMakeLists.txt b/src/applications/osgearth_city/CMakeLists.txt
new file mode 100644
index 0000000..28dbf82
--- /dev/null
+++ b/src/applications/osgearth_city/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_city.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_city)
\ No newline at end of file
diff --git a/src/applications/osgearth_city/osgearth_city.cpp b/src/applications/osgearth_city/osgearth_city.cpp
new file mode 100644
index 0000000..633c4d3
--- /dev/null
+++ b/src/applications/osgearth_city/osgearth_city.cpp
@@ -0,0 +1,137 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osg/Notify>
+#include <osgGA/GUIEventHandler>
+#include <osgGA/StateSetManipulator>
+#include <osgViewer/Viewer>
+#include <osgEarth/MapNode>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/SkyNode>
+#include <osgEarthDrivers/tms/TMSOptions>
+#include <osgEarthDrivers/feature_ogr/OGRFeatureOptions>
+#include <osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Util;
+
+/**
+ * This code example effectively duplicates the "boston.earth" sample,
+ * demonstrating how to create a 3D city model in osgEarth.
+ *
+ * Run this from the tests folder.
+ */
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+
+    // create the map.
+    Map* map = new Map();
+
+    // add a TMS imagery layer:
+    TMSOptions imagery;
+    imagery.url() = "http://readymap.org/readymap/tiles/1.0.0/22/";
+    map->addImageLayer( new ImageLayer("ReadyMap imagery", imagery) );
+
+    // create a feature source to load the building footprint shapefile.
+    OGRFeatureOptions feature_opt;
+    feature_opt.name() = "buildings";
+    feature_opt.url() = "../data/boston_buildings_utm19.shp";
+    feature_opt.buildSpatialIndex() = true;
+    
+    // a style for the building data:
+    Style buildingStyle;
+    buildingStyle.setName( "default" );
+
+    ExtrusionSymbol* extrusion = buildingStyle.getOrCreate<ExtrusionSymbol>();
+    extrusion->heightExpression() = NumericExpression( "3.5 * max( [story_ht_], 1 )" );
+    extrusion->flatten() = true;
+    extrusion->wallStyleName() = "building-wall";
+    extrusion->roofStyleName() = "building-roof";
+
+    // a style for the wall textures:
+    Style wallStyle;
+    wallStyle.setName( "building-wall" );
+    SkinSymbol* wallSkin = wallStyle.getOrCreate<SkinSymbol>();
+    wallSkin->libraryName() = "us_resources";
+    wallSkin->addTag( "building" );
+    wallSkin->randomSeed() = 1;
+
+    // a style for the rooftop textures:
+    Style roofStyle;
+    roofStyle.setName( "building-roof" );
+    SkinSymbol* roofSkin = roofStyle.getOrCreate<SkinSymbol>();
+    roofSkin->libraryName() = "us_resources";
+    roofSkin->addTag( "rooftop" );
+    roofSkin->randomSeed() = 1;
+    roofSkin->isTiled() = true;
+
+    // assemble a stylesheet and add our styles to it:
+    StyleSheet* styleSheet = new StyleSheet();
+    styleSheet->addStyle( buildingStyle );
+    styleSheet->addStyle( wallStyle );
+    styleSheet->addStyle( roofStyle );
+    
+    // load a resource library that contains the building textures.
+    ResourceLibrary* reslib = new ResourceLibrary( "us_resources", "../data/resources/textures_us/catalog.xml" );
+    styleSheet->addResourceLibrary( reslib );
+
+    // set up a paging layout for incremental loading.
+    FeatureDisplayLayout layout;
+    layout.tileSizeFactor() = 45.0;
+    layout.addLevel( FeatureLevel(0.0f, 20000.0f) );
+
+    // create a model layer that will render the buildings according to our style sheet.
+    FeatureGeomModelOptions fgm_opt;
+    fgm_opt.featureOptions() = feature_opt;
+    fgm_opt.styles() = styleSheet;
+    fgm_opt.layout() = layout;
+
+    map->addModelLayer( new ModelLayer( "buildings", fgm_opt ) );
+
+
+    // initialize a viewer:
+    osgViewer::Viewer viewer(arguments);
+    EarthManipulator* manip = new EarthManipulator();
+    viewer.setCameraManipulator( manip );
+
+    // make the map scene graph:
+    osg::Group* root = new osg::Group();
+    viewer.setSceneData( root );
+
+    MapNode* mapNode = new MapNode( map );
+    root->addChild( mapNode );
+    
+    // Process cmdline args
+    MapNodeHelper helper;
+    helper.configureView( &viewer );
+    helper.parse(mapNode, arguments, &viewer, root, new LabelControl("City Demo"));
+
+    // zoom to a good startup position
+    manip->setViewpoint( Viewpoint(-71.0763, 42.34425, 0, 24.261, -21.6, 3450.0), 5.0 );
+
+    viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_clamp/CMakeLists.txt b/src/applications/osgearth_clamp/CMakeLists.txt
new file mode 100644
index 0000000..8bf1af5
--- /dev/null
+++ b/src/applications/osgearth_clamp/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_clamp.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_clamp)
\ No newline at end of file
diff --git a/src/applications/osgearth_clamp/osgearth_clamp.cpp b/src/applications/osgearth_clamp/osgearth_clamp.cpp
new file mode 100644
index 0000000..6f5d7fb
--- /dev/null
+++ b/src/applications/osgearth_clamp/osgearth_clamp.cpp
@@ -0,0 +1,175 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgEarth/MapNode>
+#include <osgEarth/Terrain>
+#include <osgEarth/XmlUtils>
+#include <osgEarth/Viewpoint>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/ObjectLocator>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+class ClampObjectLocatorCallback : public osgEarth::TerrainCallback
+{
+public:
+    ClampObjectLocatorCallback(ObjectLocatorNode* locator):
+      _locator(locator),
+      _maxLevel(-1),
+      _minLevel(0)
+    {
+    }
+
+    virtual void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext&)
+    {           
+        if ((int)tileKey.getLevelOfDetail() > _minLevel && _maxLevel < (int)tileKey.getLevelOfDetail())
+        {
+            osg::Vec3d position = _locator->getLocator()->getPosition();
+
+            if (tileKey.getExtent().contains(position.x(), position.y()))
+            {
+                //Compute our location in geocentric
+                const osg::EllipsoidModel* ellipsoid = tileKey.getProfile()->getSRS()->getEllipsoid();
+                double x, y, z;            
+                ellipsoid->convertLatLongHeightToXYZ(
+                    osg::DegreesToRadians(position.y()), osg::DegreesToRadians(position.x()), 0,
+                    x, y, z);
+                //Compute the up vector
+                osg::Vec3d up = ellipsoid->computeLocalUpVector(x, y, z );
+                up.normalize();
+                osg::Vec3d world(x, y, z);
+
+                double segOffset = 50000;
+
+                osg::Vec3d start = world + (up * segOffset);
+                osg::Vec3d end = world - (up * segOffset);
+
+                osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
+
+                osgUtil::IntersectionVisitor iv;            
+                iv.setIntersector( i );
+                terrain->accept( iv );
+
+                osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
+                if ( !results.empty() )
+                {
+                    const osgUtil::LineSegmentIntersector::Intersection& result = *results.begin();
+                    osg::Vec3d hit = result.getWorldIntersectPoint();
+                    double lat, lon, height;
+                    ellipsoid->convertXYZToLatLongHeight(hit.x(), hit.y(), hit.z(), 
+                        lat, lon, height);                
+                    position.z() = height;
+                    //OE_NOTICE << "Got hit, setting new height to " << height << std::endl;
+                    _maxLevel = tileKey.getLevelOfDetail();
+                    _locator->getLocator()->setPosition( position );
+                }            
+            }            
+        }            
+
+    }
+
+    osg::ref_ptr< ObjectLocatorNode > _locator;
+    int _maxLevel;
+    int _minLevel;
+};
+
+
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    osgViewer::Viewer viewer(arguments);
+
+    unsigned int numObjects = 5000;
+    while (arguments.read("--count", numObjects)) {}
+
+
+    // load the .earth file from the command line.
+    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+    if (!earthNode)
+    {
+        OE_NOTICE << "Unable to load earth model" << std::endl;
+        return 1;
+    }
+
+    osg::Group* root = new osg::Group();
+
+    osgEarth::MapNode * mapNode = osgEarth::MapNode::findMapNode( earthNode );
+    if (!mapNode)
+    {
+        OE_NOTICE << "Could not find MapNode " << std::endl;
+        return 1;
+    }
+
+    osgEarth::Util::EarthManipulator* manip = new EarthManipulator();
+    manip->getSettings()->setArcViewpointTransitions( true );
+    viewer.setCameraManipulator( manip );
+    
+    root->addChild( earthNode );    
+
+    //viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode->getMap()) );
+
+    
+    osg::Node* tree = osgDB::readNodeFile("../data/tree.osg");         
+    osg::MatrixTransform* mt = new osg::MatrixTransform();
+    mt->setMatrix(osg::Matrixd::scale(10,10,10));
+    mt->addChild( tree );
+    //Create bound around mt rainer
+    double centerLat =  46.840866;
+    double centerLon = -121.769846;
+    double height = 0.2;
+    double width = 0.2;
+    double minLat = centerLat - (height/2.0);
+    double minLon = centerLon - (width/2.0);
+
+    OE_NOTICE << "Placing " << numObjects << " trees" << std::endl;
+
+    for (unsigned int i = 0; i < numObjects; i++)
+    {
+        osgEarth::Util::ObjectLocatorNode* locator = new osgEarth::Util::ObjectLocatorNode( mapNode->getMap() );        
+        double lat = minLat + height * (rand() * 1.0)/(RAND_MAX-1);
+        double lon = minLon + width * (rand() * 1.0)/(RAND_MAX-1);        
+        //OE_NOTICE << "Placing tree at " << lat << ", " << lon << std::endl;
+        locator->getLocator()->setPosition(osg::Vec3d(lon,  lat, 0 ) );        
+        locator->addChild( mt );
+        root->addChild( locator );
+        mapNode->getTerrain()->addTerrainCallback( new ClampObjectLocatorCallback(locator) );        
+    }    
+    
+    manip->setHomeViewpoint(Viewpoint( "Mt Rainier",        osg::Vec3d(    centerLon,   centerLat, 0.0 ), 0.0, -90, 45000 ));
+
+    viewer.setSceneData( root );    
+
+    // add some stock OSG handlers:
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgViewer::ThreadingHandler());
+    viewer.addEventHandler(new osgViewer::LODScaleHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_clouds/CMakeLists.txt b/src/applications/osgearth_clouds/CMakeLists.txt
deleted file mode 100644
index a663e68..0000000
--- a/src/applications/osgearth_clouds/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_clouds.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_clouds)
\ No newline at end of file
diff --git a/src/applications/osgearth_clouds/osgearth_clouds.cpp b/src/applications/osgearth_clouds/osgearth_clouds.cpp
deleted file mode 100644
index bf1114c..0000000
--- a/src/applications/osgearth_clouds/osgearth_clouds.cpp
+++ /dev/null
@@ -1,169 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#include <osgEarth/Notify>
-
-#include <osgUtil/Optimizer>
-#include <osgDB/ReadFile>
-#include <osgViewer/Viewer>
-
-#include <osg/Material>
-#include <osg/Geode>
-#include <osg/BlendFunc>
-#include <osg/Depth>
-#include <osg/Projection>
-#include <osg/AutoTransform>
-#include <osg/Geometry>
-#include <osg/Image>
-#include <osg/CullFace>
-
-#include <osgTerrain/TerrainTile>
-#include <osgTerrain/GeometryTechnique>
-
-#include <osgDB/WriteFile>
-
-#include <osgText/Text>
-
-#include <iostream>
-
-using namespace osg;
-using namespace osgDB;
-using namespace osgTerrain;
-
-osg::Image* makeRGBA(osg::Image* image)
-{
-  osg::Image* result = new osg::Image;
-  result->allocateImage(image->s(), image->t(), image->r(), GL_RGBA, GL_UNSIGNED_BYTE);
-
-  if (image->getPixelFormat() == GL_LUMINANCE)
-  {
-    for (int r = 0; r < image->t(); ++r)
-    {
-      for (int c = 0; c < image->s(); ++c)
-      {
-        unsigned char val = *image->data(c, r);
-        result->data(c,r)[0] = val;
-        result->data(c,r)[1] = val;
-        result->data(c,r)[2] = val;
-        result->data(c,r)[3] = val;
-      }
-    }
-  }
-
-  return result;
-}
-
-osg::Node* createClouds(double maxRange)
-{
-  //Try to read from the WorldWind server
-  osg::ref_ptr<osg::Image> image = osgDB::readImageFile("http://worldwind25.arc.nasa.gov/GlobalClouds/GlobalClouds.aspx?.jpg");
-  if (image.valid())
-  {
-    OE_NOTICE << "Read clouds from WorldWind server" << std::endl;
-  }
-  else
-  {
-    //Just try to load clouds.jpg from the data directory.
-    //Note: You must append the osgearth\data folder to your OSG_FILE_PATH
-    //or just copy the clouds.jpg where current osg data is.
-    image = osgDB::readImageFile("clouds.jpg");
-  }
-
-  if (!image.valid())
-  {
-    OE_NOTICE << "Could not read clouds image " << std::endl;
-    return NULL;
-  }
-
-  //Convert the black and white data to RGBA
-  image = makeRGBA(image.get());
-  double min_lon = -180.0;
-  double min_lat = -90.0;
-  double max_lon = 180.0;
-  double max_lat = 90;
-
-  osgTerrain::TerrainTile* tile = new osgTerrain::TerrainTile();
-
-  osgTerrain::Locator* locator = new osgTerrain::Locator();
-  locator->setCoordinateSystemType( osgTerrain::Locator::GEOCENTRIC );
-
-  locator->setTransformAsExtents(
-    osg::DegreesToRadians( min_lon ),
-    osg::DegreesToRadians( min_lat ),
-    osg::DegreesToRadians( max_lon ),
-    osg::DegreesToRadians( max_lat ));
-
-  osg::HeightField *hf = new osg::HeightField();
-  hf->allocate(64,64);
-  for(unsigned int i=0; i<hf->getHeightList().size(); i++ ) hf->getHeightList()[i] = 0.0;
-
-  hf->setOrigin( osg::Vec3d( min_lon, min_lat, 0.0 ) );
-  hf->setXInterval( (max_lon - min_lon)/(double)(hf->getNumColumns()-1) );
-  hf->setYInterval( (max_lat - min_lat)/(double)(hf->getNumRows()-1) );
-  hf->setBorderWidth( 0 );
-
-  osgTerrain::HeightFieldLayer* hf_layer = new osgTerrain::HeightFieldLayer();
-  hf_layer->setLocator( locator );
-  hf_layer->setHeightField( hf );
-
-  osgTerrain::ImageLayer* img_layer = new osgTerrain::ImageLayer( image.get() );
-  img_layer->setLocator( locator );
-  tile->setColorLayer( 0, img_layer );
-
-  tile->setLocator( locator );
-  tile->setTerrainTechnique( new osgTerrain::GeometryTechnique() );
-  tile->setElevationLayer( hf_layer );
-  tile->setRequiresNormals( true );
-
-  tile->getOrCreateStateSet()->setAttributeAndModes(new CullFace(CullFace::BACK), StateAttribute::ON);
-  tile->getOrCreateStateSet()->setMode(GL_LIGHTING, StateAttribute::OFF);
-
-  double scale = 1.01;
-  osg::MatrixTransform* mt = new osg::MatrixTransform;
-  mt->setMatrix(osg::Matrixd::scale(scale, scale, scale));
-  mt->addChild(tile);
-
-  osg::LOD *lod = new LOD;
-  lod->addChild(mt, maxRange, FLT_MAX);
-
-  return lod;
-}
-
-int main(int argc, char** argv)
-{
-  osg::ArgumentParser arguments(&argc,argv);
-
-  // construct the viewer.
-  osgViewer::Viewer viewer(arguments);
-
-  osg::Group* group = new osg::Group;
-
-  osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFiles(arguments);
-  if (loadedModel.valid())
-  {
-    group->addChild(loadedModel.get());
-  }
-
-  group->addChild(createClouds(osg::WGS_84_RADIUS_EQUATOR * 2.0));
-
-  // set the scene to render
-  viewer.setSceneData(group);
-
-  // run the viewers frame loop
-  return viewer.run();
-}
diff --git a/src/applications/osgearth_colorfilter/CMakeLists.txt b/src/applications/osgearth_colorfilter/CMakeLists.txt
new file mode 100644
index 0000000..f19aa18
--- /dev/null
+++ b/src/applications/osgearth_colorfilter/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_colorfilter.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_colorfilter)
diff --git a/src/applications/osgearth_colorfilter/osgearth_colorfilter.cpp b/src/applications/osgearth_colorfilter/osgearth_colorfilter.cpp
new file mode 100644
index 0000000..2c8d393
--- /dev/null
+++ b/src/applications/osgearth_colorfilter/osgearth_colorfilter.cpp
@@ -0,0 +1,750 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgViewer/Viewer>
+#include <osgEarth/MapNode>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/BrightnessContrastColorFilter>
+#include <osgEarthUtil/CMYKColorFilter>
+#include <osgEarthUtil/GammaColorFilter>
+#include <osgEarthUtil/HSLColorFilter>
+#include <osgEarthUtil/RGBColorFilter>
+#include <osgEarthUtil/ChromaKeyColorFilter>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+
+
+Container*
+createControlPanel(osgViewer::View* view)
+{
+    ControlCanvas* canvas = ControlCanvas::get( view, true );
+    VBox* vbox = canvas->addControl(new VBox());
+    vbox->setChildSpacing(10);
+    return vbox;
+}
+
+
+
+namespace HSL
+{
+    struct SetHSL: public ControlEventHandler
+    {
+        SetHSL(HSLColorFilter* filter, unsigned index) :
+            _filter(filter), _index(index)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            osg::Vec3f hsl = _filter->getHSLOffset();
+            hsl[_index] = value;
+            _filter->setHSLOffset( hsl );
+        }
+
+        HSLColorFilter* _filter;
+        unsigned        _index;
+    };
+
+
+
+    struct ResetHSL : public ControlEventHandler
+    {
+        ResetHSL(HSliderControl* h, HSliderControl* s, HSliderControl* l) 
+            : _h(h), _s(s), _l(l) { }
+
+        void onClick( Control* control )
+        {
+            _h->setValue( 0.0 );
+            _s->setValue( 0.0 );
+            _l->setValue( 0.0 );
+        }
+
+        HSliderControl* _h;
+        HSliderControl* _s;
+        HSliderControl* _l;
+    };
+
+
+    void
+    addControls(HSLColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Hue:
+        LabelControl* hLabel = new LabelControl( "Hue" );      
+        hLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, hLabel );
+
+        HSliderControl* hAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new SetHSL(filter,0) );
+        hAdjust->setWidth( 125 );
+        hAdjust->setHeight( 12 );
+        hAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, hAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(hAdjust) );
+
+        // Saturation:
+        LabelControl* sLabel = new LabelControl( "Saturation" );      
+        sLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 2, sLabel );
+
+        HSliderControl* sAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new SetHSL(filter,1) );
+        sAdjust->setWidth( 125 );
+        sAdjust->setHeight( 12 );
+        sAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 2, sAdjust );
+        s_layerBox->setControl( 2, 2, new LabelControl(sAdjust) );
+
+        // Lightness
+        LabelControl* lLabel = new LabelControl( "Lightness" );      
+        lLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 3, lLabel );
+
+        HSliderControl* lAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new SetHSL(filter,2) );
+        lAdjust->setWidth( 125 );
+        lAdjust->setHeight( 12 );
+        lAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 3, lAdjust );
+        s_layerBox->setControl( 2, 3, new LabelControl(lAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new ResetHSL(hAdjust, sAdjust, lAdjust) );
+        s_layerBox->setControl( 1, 4, resetButton );
+    }
+}
+
+
+namespace RGB
+{
+    struct Set: public ControlEventHandler
+    {
+        Set(RGBColorFilter* filter, unsigned index) :
+            _filter(filter), _index(index)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            osg::Vec3f hsl = _filter->getRGBOffset();
+            hsl[_index] = value;
+            _filter->setRGBOffset( hsl );
+        }
+
+        RGBColorFilter* _filter;
+        unsigned        _index;
+    };
+
+
+
+    struct Reset : public ControlEventHandler
+    {
+        Reset(HSliderControl* r, HSliderControl* g, HSliderControl* b) 
+            : _r(r), _g(g), _b(b) { }
+
+        void onClick( Control* control )
+        {
+            _r->setValue( 0.0 );
+            _g->setValue( 0.0 );
+            _b->setValue( 0.0 );
+        }
+
+        HSliderControl* _r;
+        HSliderControl* _g;
+        HSliderControl* _b;
+    };
+
+
+    void
+    addControls(RGBColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Red:
+        LabelControl* rLabel = new LabelControl( "Red" );      
+        rLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, rLabel );
+
+        HSliderControl* rAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new RGB::Set(filter,0) );
+        rAdjust->setWidth( 125 );
+        rAdjust->setHeight( 12 );
+        rAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, rAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(rAdjust) );
+
+        // Green:
+        LabelControl* gLabel = new LabelControl( "Green" );      
+        gLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 2, gLabel );
+
+        HSliderControl* gAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new RGB::Set(filter,1) );
+        gAdjust->setWidth( 125 );
+        gAdjust->setHeight( 12 );
+        gAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 2, gAdjust );
+        s_layerBox->setControl( 2, 2, new LabelControl(gAdjust) );
+
+        // Blue
+        LabelControl* bLabel = new LabelControl( "Blue" );      
+        bLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 3, bLabel );
+
+        HSliderControl* bAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new RGB::Set(filter,2) );
+        bAdjust->setWidth( 125 );
+        bAdjust->setHeight( 12 );
+        bAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 3, bAdjust );
+        s_layerBox->setControl( 2, 3, new LabelControl(bAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new Reset(rAdjust, gAdjust, bAdjust) );
+        s_layerBox->setControl( 1, 4, resetButton );
+    }
+}
+
+
+namespace CMYK
+{
+    struct Set: public ControlEventHandler
+    {
+        Set(CMYKColorFilter* filter, unsigned index) :
+            _filter(filter), _index(index)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            osg::Vec4 cmyk = _filter->getCMYKOffset();
+            cmyk[_index] = value;
+            _filter->setCMYKOffset( cmyk );
+        }
+
+        CMYKColorFilter* _filter;
+        unsigned         _index;
+    };
+
+
+
+    struct Reset : public ControlEventHandler
+    {
+        Reset(HSliderControl* c, HSliderControl* m, HSliderControl* y, HSliderControl* k)
+            : _c(c), _m(m), _y(y), _k(k) { }
+
+        void onClick( Control* control )
+        {
+            _c->setValue( 0.0 );
+            _m->setValue( 0.0 );
+            _y->setValue( 0.0 );
+            _k->setValue( 0.0 );
+        }
+
+        HSliderControl* _c;
+        HSliderControl* _m;
+        HSliderControl* _y;
+        HSliderControl* _k;
+    };
+
+
+    void
+    addControls(CMYKColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Cyan:
+        LabelControl* cLabel = new LabelControl( "Cyan" );      
+        cLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, cLabel );
+
+        HSliderControl* cAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new CMYK::Set(filter,0) );
+        cAdjust->setWidth( 125 );
+        cAdjust->setHeight( 12 );
+        cAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, cAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(cAdjust) );
+
+        // Magenta:
+        LabelControl* mLabel = new LabelControl( "Magenta" );      
+        mLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 2, mLabel );
+
+        HSliderControl* mAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new CMYK::Set(filter,1) );
+        mAdjust->setWidth( 125 );
+        mAdjust->setHeight( 12 );
+        mAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 2, mAdjust );
+        s_layerBox->setControl( 2, 2, new LabelControl(mAdjust) );
+
+        // Yellow
+        LabelControl* yLabel = new LabelControl( "Yellow" );      
+        yLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 3, yLabel );
+
+        HSliderControl* yAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new CMYK::Set(filter,2) );
+        yAdjust->setWidth( 125 );
+        yAdjust->setHeight( 12 );
+        yAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 3, yAdjust );
+        s_layerBox->setControl( 2, 3, new LabelControl(yAdjust) );
+
+        // Black
+        LabelControl* kLabel = new LabelControl( "Black" );      
+        kLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 4, kLabel );
+
+        HSliderControl* kAdjust = new HSliderControl( -1.0f, 1.0f, 0.0f, new CMYK::Set(filter,3) );
+        kAdjust->setWidth( 125 );
+        kAdjust->setHeight( 12 );
+        kAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 4, kAdjust );
+        s_layerBox->setControl( 2, 4, new LabelControl(kAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new Reset(cAdjust, mAdjust, yAdjust, kAdjust) );
+        s_layerBox->setControl( 1, 5, resetButton );
+    }
+}
+
+
+namespace BC
+{
+    struct Set: public ControlEventHandler
+    {
+        Set(BrightnessContrastColorFilter* filter, unsigned index) :
+            _filter(filter), _index(index)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            osg::Vec2f bc = _filter->getBrightnessContrast();
+            bc[_index] = value;
+            _filter->setBrightnessContrast( bc );
+        }
+
+        BrightnessContrastColorFilter* _filter;
+        unsigned        _index;
+    };
+
+
+
+    struct Reset : public ControlEventHandler
+    {
+        Reset(HSliderControl* b, HSliderControl* c)
+            : _b(b), _c(c) { }
+
+        void onClick( Control* control )
+        {
+            _b->setValue( 1.0f );
+            _c->setValue( 1.0f );
+        }
+
+        HSliderControl* _b;
+        HSliderControl* _c;
+    };
+
+
+    void
+    addControls(BrightnessContrastColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Brightness:
+        LabelControl* bLabel = new LabelControl( "Brightness" );      
+        bLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, bLabel );
+
+        HSliderControl* bAdjust = new HSliderControl( 0.0f, 5.0f, 1.0f, new BC::Set(filter,0) );
+        bAdjust->setWidth( 125 );
+        bAdjust->setHeight( 12 );
+        bAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, bAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(bAdjust) );
+
+        // Contrast:
+        LabelControl* cLabel = new LabelControl( "Contrast" );      
+        cLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 2, cLabel );
+
+        HSliderControl* cAdjust = new HSliderControl( 0.0f, 5.0f, 1.0f, new BC::Set(filter,1) );
+        cAdjust->setWidth( 125 );
+        cAdjust->setHeight( 12 );
+        cAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 2, cAdjust );
+        s_layerBox->setControl( 2, 2, new LabelControl(cAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new Reset(bAdjust, cAdjust) );
+        s_layerBox->setControl( 1, 3, resetButton );
+    }
+}
+
+
+namespace GAMMA
+{
+    struct Set: public ControlEventHandler
+    {
+        Set(GammaColorFilter* filter) : _filter(filter) { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            _filter->setGamma( value );
+        }
+
+        GammaColorFilter* _filter;
+    };
+
+
+
+    struct Reset : public ControlEventHandler
+    {
+        Reset(HSliderControl* g)
+            : _g(g) { }
+
+        void onClick( Control* control )
+        {
+            _g->setValue( 1.0f );
+        }
+
+        HSliderControl*   _g;
+    };
+
+
+    void
+    addControls(GammaColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Gamma:
+        LabelControl* gLabel = new LabelControl( "Gamma" );      
+        gLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, gLabel );
+
+        HSliderControl* gAdjust = new HSliderControl( 0.1f, 3.0f, 1.0f, new GAMMA::Set(filter) );
+        gAdjust->setWidth( 125 );
+        gAdjust->setHeight( 12 );
+        gAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, gAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(gAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new Reset(gAdjust) );
+        s_layerBox->setControl( 1, 3, resetButton );
+    }
+}
+
+namespace CHROMAKEY
+{
+    struct SetColor: public ControlEventHandler
+    {
+        SetColor(ChromaKeyColorFilter* filter, unsigned index) :
+            _filter(filter), _index(index)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            osg::Vec3f color = _filter->getColor();
+            color[_index] = value;
+            _filter->setColor( color );
+        }
+
+        ChromaKeyColorFilter* _filter;
+        unsigned        _index;
+    };
+
+    struct SetDistance: public ControlEventHandler
+    {
+        SetDistance(ChromaKeyColorFilter* filter) :
+            _filter(filter)
+            { }
+
+        void onValueChanged( Control* control, float value )
+        {
+            _filter->setDistance( value );
+        }
+
+        ChromaKeyColorFilter* _filter;
+    };
+
+
+
+    struct Reset : public ControlEventHandler
+    {
+        Reset(HSliderControl* r, HSliderControl* g, HSliderControl* b, HSliderControl* distance) 
+            : _r(r), _g(g), _b(b), _distance( distance) { }
+
+        void onClick( Control* control )
+        {
+            _r->setValue( 0.0 );
+            _g->setValue( 0.0 );
+            _b->setValue( 0.0 );
+            _distance->setValue( 0.0 );
+        }
+
+        HSliderControl* _r;
+        HSliderControl* _g;
+        HSliderControl* _b;
+        HSliderControl* _distance;
+    };
+
+
+    void
+    addControls(ChromaKeyColorFilter* filter, Container* container, unsigned i)
+    {
+        // the outer container:
+        Grid* s_layerBox = container->addControl(new Grid());
+        s_layerBox->setBackColor(0,0,0,0.5);
+        s_layerBox->setMargin( 10 );
+        s_layerBox->setPadding( 10 );
+        s_layerBox->setChildSpacing( 10 );
+        s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setAbsorbEvents( true );
+        s_layerBox->setVertAlign( Control::ALIGN_TOP );
+
+        // Title:
+        s_layerBox->setControl( 0, 0, new LabelControl(Stringify()<<"Layer "<<i, Color::Yellow) );
+        
+        // Red:
+        LabelControl* rLabel = new LabelControl( "Red" );      
+        rLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 1, rLabel );
+
+        HSliderControl* rAdjust = new HSliderControl( 0.0f, 1.0f, 0.0f, new CHROMAKEY::SetColor(filter,0) );
+        rAdjust->setWidth( 125 );
+        rAdjust->setHeight( 12 );
+        rAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 1, rAdjust );
+        s_layerBox->setControl( 2, 1, new LabelControl(rAdjust) );
+
+        // Green:
+        LabelControl* gLabel = new LabelControl( "Green" );      
+        gLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 2, gLabel );
+
+        HSliderControl* gAdjust = new HSliderControl( 0.0f, 1.0f, 0.0f, new CHROMAKEY::SetColor(filter,1) );
+        gAdjust->setWidth( 125 );
+        gAdjust->setHeight( 12 );
+        gAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 2, gAdjust );
+        s_layerBox->setControl( 2, 2, new LabelControl(gAdjust) );
+
+        // Blue
+        LabelControl* bLabel = new LabelControl( "Blue" );      
+        bLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 3, bLabel );
+
+        HSliderControl* bAdjust = new HSliderControl( 0.0f, 1.0f, 0.0f, new CHROMAKEY::SetColor(filter,2) );
+        bAdjust->setWidth( 125 );
+        bAdjust->setHeight( 12 );
+        bAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 3, bAdjust );
+        s_layerBox->setControl( 2, 3, new LabelControl(bAdjust) );
+
+        // Distance
+        LabelControl* distLabel = new LabelControl( "Distance" );      
+        distLabel->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 0, 4, distLabel );
+
+        HSliderControl* distAdjust = new HSliderControl( 0.0f, 2.0f, 0.0f, new CHROMAKEY::SetDistance(filter) );
+        distAdjust->setWidth( 125 );
+        distAdjust->setHeight( 12 );
+        distAdjust->setVertAlign( Control::ALIGN_CENTER );
+        s_layerBox->setControl( 1, 4, distAdjust );
+        s_layerBox->setControl( 2, 4, new LabelControl(distAdjust) );
+
+        // Reset button
+        LabelControl* resetButton = new LabelControl( "Reset" );
+        resetButton->setBackColor( Color::Gray );
+        resetButton->setActiveColor( Color::Blue );
+        resetButton->addEventHandler( new Reset(rAdjust, gAdjust, bAdjust, distAdjust) );
+        s_layerBox->setControl( 1, 5, resetButton );
+    }
+}
+
+
+
+bool usage( const std::string& msg )
+{
+    OE_WARN << std::endl
+        << msg << "\n\n"
+        << "osgearth_colorfilter <earth_file> \n"
+        << "            [--hsl]        Use the HSL (hue/saturation/lightness) filter\n"
+        << "            [--rgb]        Use the RGB (red/green/blue/alpha) filter\n"
+        << "            [--cmyk]       Use the CMYK (cyan/magenta/yellow/black) filter\n"
+        << "            [--bc]         Use the Brightness/Contract filter\n"
+        << "            [--gamma]      Use the Gamma filter\n"
+        << "            [--chromakey]  Use the chromakey filter\n"
+        << std::endl;
+    return -1;
+}
+
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+
+    // Which filter?
+    bool useHSL   = arguments.read("--hsl");
+    bool useRGB   = arguments.read("--rgb");
+    bool useCMYK  = arguments.read("--cmyk");
+    bool useBC    = arguments.read("--bc");
+    bool useGamma = arguments.read("--gamma");
+    bool useChromaKey = arguments.read("--chromakey");
+
+    if ( !useHSL && !useRGB && !useCMYK && !useBC && !useGamma && !useChromaKey )
+    {
+        return usage( "Please select one of the filter options!" );
+    }
+
+    osgViewer::Viewer viewer(arguments);
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file
+    osg::Node* node = MapNodeHelper().load(arguments, &viewer);
+    if ( !node )
+        return usage( "Unable to load map from earth file!" );
+    viewer.setSceneData( node );
+
+    //Create the control panel
+    Container* box = createControlPanel(&viewer);
+    
+    osgEarth::MapNode* mapNode = osgEarth::MapNode::findMapNode( node );
+    if ( node )
+    {   
+        if (mapNode->getMap()->getNumImageLayers() == 0)
+        {
+            return usage("Please provide a map with at least one image layer.");
+        }
+
+        // attach color filter to each layer.
+        unsigned numLayers = mapNode->getMap()->getNumImageLayers();
+        for( unsigned i=0; i<numLayers; ++i )
+        {
+            ImageLayer* layer = mapNode->getMap()->getImageLayerAt( i );
+
+            if ( useHSL )
+            {
+                HSLColorFilter* filter = new HSLColorFilter();
+                layer->addColorFilter( filter );
+                HSL::addControls( filter, box, i );
+            }
+            else if ( useRGB )
+            {
+                RGBColorFilter* filter = new RGBColorFilter();
+                layer->addColorFilter( filter );
+                RGB::addControls( filter, box, i );
+            }
+            else if ( useCMYK )
+            {
+                CMYKColorFilter* filter = new CMYKColorFilter();
+                layer->addColorFilter( filter );
+                CMYK::addControls( filter, box, i );
+            }
+            else if ( useBC )
+            {
+                BrightnessContrastColorFilter* filter = new BrightnessContrastColorFilter();
+                layer->addColorFilter( filter );
+                BC::addControls( filter, box, i );
+            }
+            else if ( useGamma )
+            {
+                GammaColorFilter* filter = new GammaColorFilter();
+                layer->addColorFilter( filter );
+                GAMMA::addControls( filter, box, i );
+            }
+            else if ( useChromaKey )
+            {
+                ChromaKeyColorFilter* filter = new ChromaKeyColorFilter();
+                layer->addColorFilter( filter );
+                CHROMAKEY::addControls( filter, box , i );
+            }
+        }
+    }
+    
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_composite/CMakeLists.txt b/src/applications/osgearth_composite/CMakeLists.txt
deleted file mode 100644
index 371e203..0000000
--- a/src/applications/osgearth_composite/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_composite.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_composite)
\ No newline at end of file
diff --git a/src/applications/osgearth_composite/osgearth_composite.cpp b/src/applications/osgearth_composite/osgearth_composite.cpp
deleted file mode 100644
index 6a8c0fe..0000000
--- a/src/applications/osgearth_composite/osgearth_composite.cpp
+++ /dev/null
@@ -1,143 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/Notify>
-#include <osgGA/StateSetManipulator>
-#include <osgViewer/Viewer>
-#include <osgViewer/ViewerEventHandlers>
-#include <osgGA/GUIEventHandler>
-#include <osgEarth/Map>
-#include <osgEarth/MapNode>
-#include <osgEarthUtil/EarthManipulator>
-#include <osgEarth/Utils>
-#include <osgEarth/CompositeTileSource>
-
-#include <osgDB/FileUtils>
-#include <osgDB/FileNameUtils>
-
-#include <osgEarthDrivers/gdal/GDALOptions>
-
-using namespace osgEarth;
-using namespace osgEarth::Drivers;
-using namespace osgEarth::Util;
-
-static void
-getFiles(const std::string &file, const std::vector<std::string> &exts, std::vector<std::string> &files)
-{
-    if (osgDB::fileType(file) == osgDB::DIRECTORY)
-    {
-        osgDB::DirectoryContents contents = osgDB::getDirectoryContents(file);
-        for (osgDB::DirectoryContents::iterator itr = contents.begin(); itr != contents.end(); ++itr)
-        {
-            if (*itr == "." || *itr == "..") continue;
-            std::string f = osgDB::concatPaths(file, *itr);
-            getFiles(f, exts, files);
-        }
-    }
-    else
-    {
-        bool fileValid = false;
-        //If we have no _extensions specified, assume we should try everything
-        if (exts.size() == 0)
-        {
-            fileValid = true;
-        }
-        else
-        {
-            //Only accept files with the given _extensions
-            std::string ext = osgDB::getFileExtension(file);
-            for (unsigned int i = 0; i < exts.size(); ++i)
-            {
-                if (osgDB::equalCaseInsensitive(ext, exts[i]))
-                {
-                    fileValid = true;
-                    break;
-                }
-            }
-        }
-        
-        if (fileValid)
-        {
-          files.push_back(osgDB::convertFileNameToNativeStyle(file));
-        }
-    }
-}
-
-//
-// Loads a directory of images, demonstrates the programatic use of the CompositeTileSource
-// usage:  osgearth_composite --dir DIRECTORY_OF_IMAGES --ext EXTENSION [--ext EXTENSION]
-// example: osgearth_composite --dir c:\myimages --ext jpg --ext png
-// NOTE: run this sample from the repo/tests directory.
-//
-int main(int argc, char** argv)
-{
-    osg::ArgumentParser arguments(&argc,argv);
-
-    osgViewer::Viewer viewer(arguments);
-
-    std::vector<std::string> files;
-    std::vector< std::string > exts;    
-
-    //Specify a directory
-    std::string directory = ".";    
-    while (arguments.read("--dir", directory) );
-
-    //Specify the extensions that are valid
-    std::string ext;
-    while (arguments.read("--ext", ext)) { exts.push_back( ext ); };
-
-    OE_NOTICE << "directory=" << directory << std::endl;
-
-    getFiles(directory, exts, files);
-
-    // Start by creating the map:
-    Map* map = new Map();
-
-    //Add a base layer
-    GDALOptions basemapOpt;
-    basemapOpt.url() = URI("../data/world.tif");
-    map->addImageLayer( new ImageLayer( ImageLayerOptions("basemap", basemapOpt) ) );    
-
-    osgEarth::CompositeTileSourceOptions compositeOpt; 
-    for (unsigned int i = 0; i < files.size(); i++)
-    { 
-        GDALOptions gdalOpt; 
-        gdalOpt.url() = files[i];
-        ImageLayerOptions ilo(files[i], gdalOpt);
-        //Set the transparent color on each image        
-        //ilo.transparentColor() = osg::Vec4ub(255, 255, 206, 0); 
-        compositeOpt.add( ilo );
-        OE_NOTICE << "Added file " << files[i] << std::endl;
-    } 
-
-    map->addImageLayer( new ImageLayer( ImageLayerOptions("composite", compositeOpt) ) );
-
-    MapNode* mapNode = new MapNode( map );
-
-    viewer.setSceneData( mapNode );
-    viewer.setCameraManipulator( new EarthManipulator() );
-
-
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-
-    return viewer.run();
-}
diff --git a/src/applications/osgearth_contour/CMakeLists.txt b/src/applications/osgearth_contour/CMakeLists.txt
new file mode 100644
index 0000000..6d08b89
--- /dev/null
+++ b/src/applications/osgearth_contour/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_contour.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_contour)
diff --git a/src/applications/osgearth_contour/osgearth_contour.cpp b/src/applications/osgearth_contour/osgearth_contour.cpp
new file mode 100644
index 0000000..81d333d
--- /dev/null
+++ b/src/applications/osgearth_contour/osgearth_contour.cpp
@@ -0,0 +1,164 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+/**
+ * This sample shows how to use osgEarth's built-in elevation data attributes
+ * to apply contour-coloring to the terrain.
+ */
+#include <osg/Notify>
+#include <osgViewer/Viewer>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/Registry>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osg/TransferFunction>
+#include <osg/Texture1D>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+//-------------------------------------------------------------------------
+
+// In the vertex shader, we use a vertex attribute that's genreated by the
+// terrain engine. The attribute contains a vec4 which holds the unit
+// extrusion vector in indexes[0,1,2] and the raw height in index[3].
+// We just read the height, remap it to [0..1] and send it to the 
+// fragment shader.
+
+const char* vertexShader =
+    "attribute vec4  osgearth_elevData; \n"
+    "uniform   float contour_xferMin; \n"
+    "uniform   float contour_xferRange; \n"
+    "uniform   float contour_xferMax; \n"
+    "varying   float contour_lookup; \n"
+
+    "void setupContour() \n"
+    "{ \n"
+    "    float height = osgearth_elevData[3]; \n"
+    "    float height_normalized = (height-contour_xferMin)/contour_xferRange; \n"
+    "    contour_lookup = clamp( height_normalized, 0.0, 1.0 ); \n"
+    "} \n";
+
+
+// The fragment shader simply takes the texture index that we generated
+// in the vertex shader and does a texture lookup. In this case we're
+// just wholesale replacing the color, so if the map had any existing
+// imagery, this will overwrite it.
+
+const char* fragmentShader =
+    "uniform   sampler1D contour_colorMap; \n"
+    "varying   float     contour_lookup; \n"
+
+    "void colorContour( inout vec4 color ) \n"
+    "{ \n"
+    "    color = texture1D( contour_colorMap, contour_lookup ); \n"
+    "} \n";
+
+
+
+// Build the stateset necessary for drawing contours.
+osg::StateSet* createStateSet( osg::TransferFunction1D* xfer, int unit )
+{
+    osg::StateSet* stateSet = new osg::StateSet();
+
+    // Create a 1D texture from the transfer function's image.
+    osg::Texture* tex = new osg::Texture1D( xfer->getImage() );
+    tex->setResizeNonPowerOfTwoHint( false );
+    tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR );
+    tex->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
+    tex->setWrap( osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_EDGE );
+    stateSet->setTextureAttributeAndModes( unit, tex, osg::StateAttribute::ON );
+
+    // Tell the shader program where to find it.
+    stateSet->getOrCreateUniform( "contour_colorMap", osg::Uniform::SAMPLER_1D )->set( unit );
+
+    // Install the shaders. We also bind osgEarth's elevation data attribute, which the 
+    // terrain engine automatically generates at the specified location.
+    VirtualProgram* vp = new VirtualProgram();
+    vp->installDefaultColoringAndLightingShaders();
+    vp->setFunction( "setupContour", vertexShader,   ShaderComp::LOCATION_VERTEX_PRE_LIGHTING );
+    vp->setFunction( "colorContour", fragmentShader, ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+    vp->addBindAttribLocation( "osgearth_elevData", osg::Drawable::ATTRIBUTE_6 );
+    stateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+    // Install some uniforms that tell the shader the height range of the color map.
+    stateSet->getOrCreateUniform( "contour_xferMin",   osg::Uniform::FLOAT )->set( xfer->getMinimum() );
+    stateSet->getOrCreateUniform( "contour_xferRange", osg::Uniform::FLOAT )->set( xfer->getMaximum() - xfer->getMinimum() );
+
+    return stateSet;
+};
+
+
+int main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc, argv);
+
+    // create a viewer:
+    osgViewer::Viewer viewer(arguments);
+
+    // Tell osgEarth to use the "quadtree" terrain driver by default.
+    // Elevation data attribution is only available in this driver!
+    osgEarth::Registry::instance()->setDefaultTerrainEngineDriverName( "quadtree" );
+
+    // install our default manipulator (do this before calling load)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags    
+    osg::Node* node = MapNodeHelper().load( arguments, &viewer );
+    if ( node )
+    {
+        MapNode* mapNode = MapNode::findMapNode(node);
+        if ( !mapNode )
+            return -1;
+
+        if ( mapNode->getMap()->getNumElevationLayers() == 0 )
+            OE_WARN << "No elevation layers! The contour will be very boring." << std::endl;
+
+        // Set up a transfer function for the elevation contours.
+        osg::ref_ptr<osg::TransferFunction1D> xfer = new osg::TransferFunction1D();
+        xfer->setColor( -3000.0f, osg::Vec4f(0,0,0.5,1), false );
+        xfer->setColor(   -10.0f, osg::Vec4f(0,0,0,1),   false );
+        xfer->setColor(    10.0f, osg::Vec4f(0,1,0,1),   false );
+        xfer->setColor(  1500.0f, osg::Vec4f(1,0,0,1),   false );
+        xfer->setColor(  3000.0f, osg::Vec4f(1,1,1,1),   false );
+        xfer->updateImage();
+
+        // request an available texture unit:
+        int unit;
+        mapNode->getTerrainEngine()->getTextureCompositor()->reserveTextureImageUnit(unit);
+
+        // install the contour shaders:
+        osg::Group* root = new osg::Group();
+        root->setStateSet( createStateSet(xfer.get(), unit) );
+        root->addChild( node );
+        
+        viewer.setSceneData( root );
+        viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+
+    return 0;
+}
diff --git a/src/applications/osgearth_controls/osgearth_controls.cpp b/src/applications/osgearth_controls/osgearth_controls.cpp
index 681666c..adfadd4 100644
--- a/src/applications/osgearth_controls/osgearth_controls.cpp
+++ b/src/applications/osgearth_controls/osgearth_controls.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #include <typeinfo>
 
 #include <osg/Notify>
+#include <osgDB/ReadFile>
 #include <osgGA/GUIEventHandler>
 #include <osgViewer/Viewer>
 #include <osgEarthUtil/EarthManipulator>
@@ -74,7 +75,8 @@ struct MySliderHandler : public ControlEventHandler
     {
         std::stringstream buf;
         buf << (int)value;
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         s_sliderLabel->setText( str );
     }
 };
@@ -100,8 +102,8 @@ createControls( ControlCanvas* cs )
         center->setVertAlign( Control::ALIGN_CENTER );
 
         // Add an image:
-        osg::ref_ptr<osg::Image> image;
-        if ( HTTPClient::readImageFile("http://demo.pelicanmapping.com/rmweb/readymap_logo.png", image) == HTTPClient::RESULT_OK )
+        osg::ref_ptr<osg::Image> image = osgDB::readImageFile("http://demo.pelicanmapping.com/rmweb/readymap_logo.png");
+        if ( image.valid() )
         {
             s_imageControl = new ImageControl( image.get() );
             s_imageControl->setHorizAlign( Control::ALIGN_CENTER );
@@ -208,7 +210,9 @@ createControls( ControlCanvas* cs )
             LabelControl* label = new LabelControl();
             std::stringstream buf;
             buf << "Label_" << i;
-            label->setText( buf.str() );
+            std::string str;
+            str = buf.str();
+            label->setText( str );
             label->setMargin( 10 );
             label->setBackColor( 1,1,1,0.4 );
             bottom->addControl( label );
diff --git a/src/applications/osgearth_earthfile/CMakeLists.txt b/src/applications/osgearth_earthfile/CMakeLists.txt
deleted file mode 100644
index dbba621..0000000
--- a/src/applications/osgearth_earthfile/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY OSGEARTHFEATURES_LIBRARY)
-
-SET(TARGET_SRC osgearth_earthfile.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_earthfile)
diff --git a/src/applications/osgearth_earthfile/osgearth_earthfile.cpp b/src/applications/osgearth_earthfile/osgearth_earthfile.cpp
deleted file mode 100644
index ef2c599..0000000
--- a/src/applications/osgearth_earthfile/osgearth_earthfile.cpp
+++ /dev/null
@@ -1,69 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/ArgumentParser>
-#include <osgDB/ReadFile>
-#include <osgDB/WriteFile>
-
-#include <osgEarth/EarthFile>
-
-#include <iostream>
-
-using namespace osgEarth;
-
-/**
- * This is a TEST APP to test EARTH FILE WRITING.
- */
-int main(int argc, char** argv)
-{
-    if ( argc != 3 ) {
-        OE_NOTICE << "Usage: osgearth_earthfile <inputfile> <outputfile>" << std::endl;
-        return -1;
-    }
-
-    std::string infile( argv[1] );
-    std::string outfile( argv[2] );
-
-    // read in the earth file:
-    EarthFile earthReader;
-    if ( earthReader.readXML( infile ) )
-    {
-        osg::ref_ptr<Map> map = earthReader.getMap();
-        MapNodeOptions mapOptions = earthReader.getMapNodeOptions();
-
-        // now write it back out
-        EarthFile earthWriter;
-        earthWriter.setMap( map.get() );
-        earthWriter.setMapNodeOptions( mapOptions );
-
-        if ( !earthWriter.writeXML( outfile ) ) {
-            OE_NOTICE 
-                << "ERROR: unable to write earth file to " << outfile << std::endl;
-            return -1;
-        }
-    }
-    else
-    {
-        OE_NOTICE
-            << "ERROR: unable to read earth file from " << infile << std::endl;
-        return -1;
-    }
-
-    return 0;
-}
diff --git a/src/applications/osgearth_elevation/osgearth_elevation.cpp b/src/applications/osgearth_elevation/osgearth_elevation.cpp
index e460f5e..3eb1c17 100644
--- a/src/applications/osgearth_elevation/osgearth_elevation.cpp
+++ b/src/applications/osgearth_elevation/osgearth_elevation.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,122 +17,96 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 
-#include <osg/Notify>
-#include <osg/Shape>
-#include <osg/ShapeDrawable>
-#include <osg/Geode>
-#include <osg/AutoTransform>
-#include <osg/MatrixTransform>
-#include <osgText/Text>
 #include <osgGA/StateSetManipulator>
 #include <osgGA/GUIEventHandler>
 #include <osgViewer/Viewer>
 #include <osgViewer/ViewerEventHandlers>
 #include <osgUtil/LineSegmentIntersector>
 #include <osgEarth/MapNode>
-#include <osgEarth/FindNode>
+#include <osgEarth/TerrainEngineNode>
 #include <osgEarth/ElevationQuery>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Terrain>
 #include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/ObjectLocator>
-#include <osg/Depth>
-#include <sstream>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/LatLongFormatter>
 #include <iomanip>
 
 using namespace osgEarth;
 using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
 
-static osg::Node*     s_flagNode;
-static osgText::Text* s_flagText;
+static MapNode*       s_mapNode     = 0L;
+static LabelControl*  s_posLabel    = 0L;
+static LabelControl*  s_vdaLabel    = 0L;
+static LabelControl*  s_mslLabel    = 0L;
+static LabelControl*  s_haeLabel    = 0L;
+static LabelControl*  s_resLabel    = 0L;
 
-static
-osg::Node* createFlag()
-{
-    osg::Geode* g = new osg::Geode();
-    osgText::Text* text = new osgText::Text();
-    text->setCharacterSizeMode( osgText::Text::SCREEN_COORDS );
-    text->setCharacterSize( 24.f );
-    text->setFont( osgText::readFontFile("arial.ttf") );
-    text->setBackdropType( osgText::Text::OUTLINE );
-    text->setText( "00000000000000" );
-    text->setAutoRotateToScreen( true );
-    text->setPosition( osg::Vec3d( 0, 0, 0 ) );
-    text->setDataVariance( osg::Object::DYNAMIC );
-    g->addDrawable( text );
-    g->getOrCreateStateSet()->setMode( GL_LIGHTING, 0 );
-    g->getStateSet()->setAttribute( new osg::Depth(osg::Depth::ALWAYS), 1 );
-    g->getStateSet()->setRenderBinDetails( 99, "RenderBin" );
-    g->setDataVariance( osg::Object::DYNAMIC );
-    g->setCullingActive( false );
-    g->setNodeMask( 0 );
-    s_flagText = text;
-    s_flagNode = g;
-    return g;
-}
 
 // An event handler that will print out the elevation at the clicked point
 struct QueryElevationHandler : public osgGA::GUIEventHandler 
 {
-    QueryElevationHandler(const Map* map, ObjectLocator* flagLocator ) 
-        : _map(map),
-          _mouseDown( false ), 
-          _flagLocator(flagLocator), 
-          _query(map)
+    QueryElevationHandler()
+        : _mouseDown( false ),
+          _terrain  ( s_mapNode->getTerrain() ),
+          _query    ( s_mapNode->getMap() )
     {
+        _map = s_mapNode->getMap();
         _query.setMaxTilesToCache(10);
+        _path.push_back( s_mapNode->getTerrainEngine() );
     }
 
     void update( float x, float y, osgViewer::View* view )
     {
-        osgUtil::LineSegmentIntersector::Intersections results;
-        if ( view->computeIntersections( x, y, results, 0x01 ) )
+        bool yes = false;
+
+        // look under the mouse:
+        osg::Vec3d world;
+        if ( _terrain->getWorldCoordsUnderMouse(view, x, y, world) )
         {
-            // find the first hit under the mouse:
-            osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
-            osg::Vec3d point = first.getWorldIntersectPoint();
-            osg::Vec3d lla;
-            
-            // transform it to map coordinates:
-            _map->worldPointToMapPoint(point, lla);
-
-            // find the elevation at that map point:
-            osg::Matrixd out_mat;
+            // convert to map coords:
+            GeoPoint mapPoint;
+            mapPoint.fromWorld( _terrain->getSRS(), world );
+
+            // do an elevation query:
             double query_resolution = 0.1; // 1/10th of a degree
-            double out_elevation = 0.0;
-            double out_resolution = 0.0;
+            double out_hamsl        = 0.0;
+            double out_resolution   = 0.0;
 
             bool ok = _query.getElevation( 
-                lla,
-                _map->getProfile()->getSRS(),
-                out_elevation, 
+                mapPoint,
+                out_hamsl,
                 query_resolution, 
                 &out_resolution );
 
             if ( ok )
             {
-                _flagLocator->setPosition( osg::Vec3d(lla.x(), lla.y(), out_elevation) );
-                s_flagNode->setNodeMask( ~0 );
-
-                std::stringstream buf;
-                buf << std::fixed << std::setprecision(2) 
-                    << "Pos: " << lla.x() << ", " << lla.y() << std::endl
-                    << "Elv: " << out_elevation << "m" << std::endl
-                    << "X:   " << point.x() << std::endl
-                    << "Y:   " << point.y() << std::endl
-                    << "Z:   " << point.z();
-                s_flagText->setText( buf.str() );
-
-                OE_NOTICE << buf.str() << std::endl;
+                // convert to geodetic to get the HAE:
+                mapPoint.z() = out_hamsl;
+                GeoPoint mapPointGeodetic( s_mapNode->getMapSRS()->getGeodeticSRS(), mapPoint );
+
+                static LatLongFormatter s_f;
+
+                s_posLabel->setText( Stringify()
+                    << std::fixed << std::setprecision(2) 
+                    << s_f.format(mapPoint.y())
+                    << ", " 
+                    << s_f.format(mapPoint.x()) );
+
+                s_mslLabel->setText( Stringify() << out_hamsl );
+                s_haeLabel->setText( Stringify() << mapPointGeodetic.z() );
+                s_resLabel->setText( Stringify() << out_resolution );
+                yes = true;
             }
-            else
-            {
-                OE_NOTICE
-                    << "getElevation FAILED! at (" << point.x() << ", " << point.y() << ")" << std::endl;
-            }
-
         }
-        else
+
+        if (!yes)
         {
-            s_flagNode->setNodeMask(0);
+            s_posLabel->setText( "-" );
+            s_mslLabel->setText( "-" );
+            s_haeLabel->setText( "-" );
+            s_resLabel->setText( "-" );
         }
     }
 
@@ -148,9 +122,10 @@ struct QueryElevationHandler : public osgGA::GUIEventHandler
     }
 
     const Map*       _map;
+    const Terrain*   _terrain;
     bool             _mouseDown;
     ElevationQuery   _query;
-    ObjectLocator*   _flagLocator;
+    osg::NodePath    _path;
 };
 
 
@@ -160,15 +135,8 @@ int main(int argc, char** argv)
 
     osgViewer::Viewer viewer(arguments);
 
-	osgEarth::MapNode* mapNode = NULL;
-
-	osg::Node* loadedNode = osgDB::readNodeFiles( arguments );
-    if (loadedNode)
-    {
-		mapNode = findTopMostNodeOfType<osgEarth::MapNode>( loadedNode );
-    }
-
-    if ( !mapNode )
+    s_mapNode = MapNode::load(arguments);
+    if ( !s_mapNode )
     {
         OE_WARN << "Unable to load earth file." << std::endl;
         return -1;
@@ -177,19 +145,33 @@ int main(int argc, char** argv)
     osg::Group* root = new osg::Group();
 
     // The MapNode will render the Map object in the scene graph.
-    mapNode->setNodeMask( 0x01 );
-    root->addChild( mapNode );
+    root->addChild( s_mapNode );
+
+    // Make the readout:
+    Grid* grid = new Grid();
+    grid->setControl(0,0,new LabelControl("Coords (Lat, Long):"));
+    grid->setControl(0,1,new LabelControl("Vertical Datum:"));
+    grid->setControl(0,2,new LabelControl("Height (MSL):"));
+    grid->setControl(0,3,new LabelControl("Height (HAE):"));
+    grid->setControl(0,4,new LabelControl("Resolution:"));
+
+    s_posLabel = grid->setControl(1,0,new LabelControl(""));
+    s_vdaLabel = grid->setControl(1,1,new LabelControl(""));
+    s_mslLabel = grid->setControl(1,2,new LabelControl(""));
+    s_haeLabel = grid->setControl(1,3,new LabelControl(""));
+    s_resLabel = grid->setControl(1,4,new LabelControl(""));
+
+    const SpatialReference* mapSRS = s_mapNode->getMapSRS();
+    s_vdaLabel->setText( mapSRS->getVerticalDatum() ? 
+        mapSRS->getVerticalDatum()->getName() : 
+        Stringify() << "geodetic (" << mapSRS->getEllipsoid()->getName() << ")" );
 
-    // A flag so we can see where we clicked
-    ObjectLocatorNode* flag = new ObjectLocatorNode( mapNode->getMap() );
-    flag->addChild( createFlag() );
-    flag->setNodeMask( 0x02 );
-    root->addChild( flag );
+    ControlCanvas::get(&viewer,true)->addControl(grid);
 
     viewer.setSceneData( root );
 
     // An event handler that will respond to mouse clicks:
-    viewer.addEventHandler( new QueryElevationHandler( mapNode->getMap(), flag->getLocator() ) );
+    viewer.addEventHandler( new QueryElevationHandler() );
 
     // add some stock OSG handlers:
     viewer.addEventHandler(new osgViewer::StatsHandler());
@@ -197,7 +179,7 @@ int main(int argc, char** argv)
     viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
 
     // install the programmable manipulator.
-    if ( mapNode->getMap()->isGeocentric() )
+    if ( s_mapNode->getMap()->isGeocentric() )
         viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator() );
 
     return viewer.run();
diff --git a/src/applications/osgearth_featureeditor/osgearth_featureeditor.cpp b/src/applications/osgearth_featureeditor/osgearth_featureeditor.cpp
index 3d67b15..9871a6c 100644
--- a/src/applications/osgearth_featureeditor/osgearth_featureeditor.cpp
+++ b/src/applications/osgearth_featureeditor/osgearth_featureeditor.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -41,7 +41,7 @@
 
 #include <osgEarthUtil/Controls>
 
-#include <osgEarthUtil/FeatureEditing>
+#include <osgEarthAnnotation/FeatureEditing>
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
@@ -49,6 +49,7 @@ using namespace osgEarth::Drivers;
 using namespace osgEarth::Symbology;
 using namespace osgEarth::Util;
 using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Annotation;
 
 osg::Vec4
 randomColor()
@@ -184,7 +185,6 @@ StyleSheet* buildStyleSheet( const osg::Vec4 &color, float width )
     return styleSheet;
 }
 
-
 //
 // NOTE: run this sample from the repo/tests directory.
 //
@@ -220,28 +220,27 @@ int main(int argc, char** argv)
     // vectors as lines, configure the line symbolizer:
     StyleSheet* styleSheet = buildStyleSheet( Color::Yellow, 2.0f );
 
-    s_source = new FeatureListSource();
+    // create a feature list source with the map extents as the default extent.
+    s_source = new FeatureListSource( s_mapNode->getMap()->getProfile()->getExtent() );
 
     LineString* line = new LineString();
     line->push_back( osg::Vec3d(-60, 20, 0) );
     line->push_back( osg::Vec3d(-120, 20, 0) );
     line->push_back( osg::Vec3d(-120, 60, 0) );
     line->push_back( osg::Vec3d(-60, 60, 0) );
-    Feature *feature = new Feature(s_fid++);
-    feature->setGeometry( line );
+    Feature* feature = new Feature(line, s_mapNode->getMapSRS(), Style(), s_fid++);
     s_source->insertFeature( feature );
     s_activeFeature = feature;
   
     s_root = new osg::Group;
     s_root->addChild( s_mapNode.get() );
 
-    Session* session = new Session(s_mapNode->getMap(), styleSheet);
+    Session* session = new Session(s_mapNode->getMap(), styleSheet, s_source.get());
 
     FeatureModelGraph* graph = new FeatureModelGraph( 
-        s_source.get(), 
+        session,
         FeatureModelSourceOptions(), 
-        new GeomFeatureNodeFactory(),
-        session );
+        new GeomFeatureNodeFactory() );
 
     graph->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
     graph->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
@@ -296,7 +295,9 @@ int main(int argc, char** argv)
     
     viewer.setSceneData( s_root.get() );
     viewer.setCameraManipulator( new EarthManipulator() );
-    viewer.addEventHandler( new osgEarth::Util::AutoClipPlaneHandler );
+
+    if ( s_mapNode )
+        viewer.getCamera()->addCullCallback( new osgEarth::Util::AutoClipPlaneCullCallback(s_mapNode) );
 
     // add some stock OSG handlers:
     viewer.addEventHandler(new osgViewer::StatsHandler());
diff --git a/src/applications/osgearth_featurefilter/CMakeLists.txt b/src/applications/osgearth_featurefilter/CMakeLists.txt
new file mode 100644
index 0000000..cf81cde
--- /dev/null
+++ b/src/applications/osgearth_featurefilter/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_featurefilter.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_featurefilter)
\ No newline at end of file
diff --git a/src/applications/osgearth_featurefilter/osgearth_featurefilter.cpp b/src/applications/osgearth_featurefilter/osgearth_featurefilter.cpp
new file mode 100644
index 0000000..55b5ef9
--- /dev/null
+++ b/src/applications/osgearth_featurefilter/osgearth_featurefilter.cpp
@@ -0,0 +1,114 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgViewer/Viewer>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthFeatures/Filter>
+
+#define LC "[viewer] "
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+using namespace osgEarth::Util;
+
+
+/**
+ * Simple Feature Filter that changes the value of a Feature data sources attribute
+ */
+class ChangeAttributeFilter : public FeatureFilter
+{
+public:
+    ChangeAttributeFilter(const Config& conf)
+    {
+        if (conf.key() == "change_attribute")
+        {
+            conf.getIfSet("key", _key);
+            conf.getIfSet("value", _value);
+        }
+    }
+
+    virtual Config getConfig() const
+    {
+        Config config("change_attribute");
+        config.addIfSet("key", _key);
+        config.addIfSet("value", _value);
+        return config;
+    }
+
+
+    virtual FilterContext push( FeatureList& input, FilterContext& context )
+    {        
+        for (FeatureList::iterator itr = input.begin(); itr != input.end(); itr++)
+        {
+            //Change the value of the attribute
+            if (_key.isSet() && _value.isSet())
+            {
+                itr->get()->set(*_key, std::string(*_value));
+            }            
+        }
+        return context;
+    }
+
+    optional< std::string > _key;
+    optional< std::string > _value;
+};
+
+//Register our custom FeatureFilter with osgEarth
+//The first 
+OSGEARTH_REGISTER_SIMPLE_FEATUREFILTER(change_attribute, ChangeAttributeFilter);
+
+int
+main(int argc, char** argv)
+{    
+    //Run this example with the the feature_custom_filters.earth file in the tests directory for a simple example
+    osg::ArgumentParser arguments(&argc,argv);
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
+
+    // create a viewer:
+    osgViewer::Viewer viewer(arguments);
+
+    //Tell the database pager to not modify the unref settings
+    viewer.getDatabasePager()->setUnrefImageDataAfterApplyPolicy( false, false );
+
+    // install our default manipulator (do this before calling load)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags    
+    osg::Node* node = MapNodeHelper().load( arguments, &viewer );
+    if ( node )
+    {
+        viewer.setSceneData( node );
+
+        // configure the near/far so we don't clip things that are up close
+        viewer.getCamera()->setNearFarRatio(0.00002);
+
+        viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+    return 0;
+}
diff --git a/src/applications/osgearth_featureinfo/osgearth_featureinfo.cpp b/src/applications/osgearth_featureinfo/osgearth_featureinfo.cpp
index 48aedd3..e09b4f0 100644
--- a/src/applications/osgearth_featureinfo/osgearth_featureinfo.cpp
+++ b/src/applications/osgearth_featureinfo/osgearth_featureinfo.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -75,7 +75,7 @@ void printFeature( Feature* feature )
     Geometry* geom = feature->getGeometry();
     if (geom)
     {
-        std::cout << indent << geometryToWkt( geom ) << std::endl;
+        std::cout << indent << GeometryUtils::geometryToWKT( geom ) << std::endl;
     }
     std::cout << std::endl;
 }
@@ -83,7 +83,7 @@ void printFeature( Feature* feature )
 void printAllFeatures(FeatureSource* features)
 {
     osg::ref_ptr< FeatureCursor > cursor = features->createFeatureCursor();
-    while (cursor->hasMore())
+    while (cursor.valid() && cursor->hasMore())
     {
         osg::ref_ptr< Feature > feature = cursor->nextFeature();
         printFeature( feature.get() );
@@ -162,7 +162,7 @@ int main(int argc, char** argv)
     featureOpt.openWrite() = write;
 
     osg::ref_ptr< FeatureSource > features = FeatureSourceFactory::create( featureOpt );
-    features->initialize("");
+    features->initialize();
     features->getFeatureProfile();
 
     //Delete any features if requested
diff --git a/src/applications/osgearth_featuremanip/CMakeLists.txt b/src/applications/osgearth_featuremanip/CMakeLists.txt
new file mode 100644
index 0000000..7627241
--- /dev/null
+++ b/src/applications/osgearth_featuremanip/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_featuremanip.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_featuremanip)
\ No newline at end of file
diff --git a/src/applications/osgearth_featuremanip/osgearth_featuremanip.cpp b/src/applications/osgearth_featuremanip/osgearth_featuremanip.cpp
new file mode 100644
index 0000000..116395b
--- /dev/null
+++ b/src/applications/osgearth_featuremanip/osgearth_featuremanip.cpp
@@ -0,0 +1,168 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgEarth/MapNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/Controls>
+
+#include <osgEarthUtil/FeatureManipTool>
+
+#define LC "[feature_manip] "
+
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+
+//------------------------------------------------------------------------
+
+static FeatureManipTool* s_manipTool;
+
+static VBox* s_state_normal;
+static VBox* s_state_active;
+
+// Callback to toggle the visibility of the save/cancel buttons based on tool state
+struct ToggleUIStateCallback : public FeatureQueryTool::Callback
+{
+    // called when a valid feature is found under the mouse coords
+    virtual void onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args )
+    {
+        s_state_active->setVisible( true );
+    }
+
+    // called when no feature is found under the mouse coords
+    virtual void onMiss( const EventArgs& args )
+    {
+        s_state_active->setVisible( false );
+    }
+};
+
+
+// Cancels the manipulation when user clicks "cancel"
+struct OnCancel : public ControlEventHandler
+{
+    void onClick( Control* control )
+    {
+        s_manipTool->cancel();
+        s_state_active->setVisible( false );
+    }
+};
+
+
+// Commits the manipulation when user clicks "save"
+struct OnSave : public ControlEventHandler
+{
+    void onClick( Control* saveButton )
+    {
+        s_manipTool->commit();
+        s_state_active->setVisible( false );
+    }
+};
+
+
+// creaes a simple user interface for the manip demo
+Control*
+createUI()
+{
+    VBox* vbox = new VBox();
+    vbox->addControl( new LabelControl("Feature Manipulator Demo", Color::Yellow) );
+
+    s_state_normal = vbox->addControl(new VBox());
+    s_state_normal->addControl( new LabelControl("Shift-click on a feature to enter edit mode.") );
+    
+    s_state_active = vbox->addControl(new VBox());
+    s_state_active->setVisible( false );
+    s_state_active->addControl( new LabelControl("Drag the handles to position or rotation the feature.") );
+    
+    HBox* buttons = s_state_active->addControl(new HBox());
+    
+    LabelControl* cancel = buttons->addControl(new LabelControl("cancel"));
+    cancel->setBackColor(Color(Color::White,0.5));
+    cancel->setActiveColor(Color::Blue);
+    cancel->addEventHandler(new OnCancel());
+    cancel->setPadding( 5.0f );
+    cancel->setVertFill( true );
+
+    LabelControl* save = buttons->addControl(new LabelControl("save"));
+    save->setBackColor(Color(Color::White,0.5));
+    save->setActiveColor(Color::Blue);
+    save->addEventHandler(new OnSave());
+    save->setPadding( 5.0f );
+    save->setMargin(Control::SIDE_LEFT, 20.0f);
+    save->setVertFill( true );
+
+    vbox->setMargin( Control::SIDE_BOTTOM, 15.0f );
+    return vbox;
+} 
+
+//------------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
+
+    // a basic OSG viewer
+    osgViewer::Viewer viewer(arguments);
+
+    // install our default manipulator (do this before using MapNodeHelper)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags
+    osg::Group* root = MapNodeHelper().load( arguments, &viewer, createUI() );
+    if ( root )
+    {
+        viewer.setSceneData( root );
+
+        // configure the near/far so we don't clip things that are up close
+        viewer.getCamera()->setNearFarRatio(0.00002);
+
+        // add some stock OSG handlers:
+        viewer.addEventHandler(new osgViewer::StatsHandler());
+        viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+        viewer.addEventHandler(new osgViewer::ThreadingHandler());
+        viewer.addEventHandler(new osgViewer::LODScaleHandler());
+        viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+        MapNode* mapNode = MapNode::findMapNode( root );
+        if ( mapNode )
+        {
+            // install the Feature Manipulation tool.
+            s_manipTool = new FeatureManipTool( mapNode );
+            viewer.addEventHandler( s_manipTool );
+
+            s_manipTool->addCallback( new ToggleUIStateCallback() );
+        }
+
+        return viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+}
diff --git a/src/applications/osgearth_featurequery/CMakeLists.txt b/src/applications/osgearth_featurequery/CMakeLists.txt
new file mode 100644
index 0000000..49cf944
--- /dev/null
+++ b/src/applications/osgearth_featurequery/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_featurequery.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_featurequery)
\ No newline at end of file
diff --git a/src/applications/osgearth_featurequery/osgearth_featurequery.cpp b/src/applications/osgearth_featurequery/osgearth_featurequery.cpp
new file mode 100644
index 0000000..5ff5ad0
--- /dev/null
+++ b/src/applications/osgearth_featurequery/osgearth_featurequery.cpp
@@ -0,0 +1,102 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgEarth/MapNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/FeatureQueryTool>
+
+#define LC "[feature_query] "
+
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+
+//------------------------------------------------------------------------
+// creaes a simple user interface for the manip demo
+Control*
+createUI()
+{
+    VBox* vbox = new VBox();
+    vbox->setVertAlign( Control::ALIGN_TOP );
+    vbox->setHorizAlign( Control::ALIGN_LEFT );
+    vbox->addControl( new LabelControl("Feature Query Demo", Color::Yellow) );
+    vbox->addControl( new LabelControl("Click on a feature to see its attributes.") );
+    return vbox;
+} 
+
+//------------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
+
+    // a basic OSG viewer
+    osgViewer::Viewer viewer(arguments);
+
+    // install our default manipulator (do this before using MapNodeHelper)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags
+    osg::Group* root = MapNodeHelper().load( arguments, &viewer, createUI() );
+    if ( root )
+    {
+        viewer.setSceneData( root );
+
+        // configure the near/far so we don't clip things that are up close
+        viewer.getCamera()->setNearFarRatio(0.00002);
+
+        // add some stock OSG handlers:
+        viewer.addEventHandler(new osgViewer::StatsHandler());
+        viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+        viewer.addEventHandler(new osgViewer::ThreadingHandler());
+        viewer.addEventHandler(new osgViewer::LODScaleHandler());
+        viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+        MapNode* mapNode = MapNode::findMapNode( root );
+        if ( mapNode )
+        {
+            FeatureQueryTool* tool = new FeatureQueryTool( mapNode );
+            viewer.addEventHandler( tool );
+
+            VBox* readout = ControlCanvas::get(&viewer)->addControl( new VBox() );
+            readout->setHorizAlign( Control::ALIGN_RIGHT );
+            readout->setBackColor( Color(Color::Black,0.8) );
+            tool->addCallback( new FeatureReadoutCallback(readout) );
+            tool->addCallback( new FeatureHighlightCallback() );
+        }
+
+        return viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+}
diff --git a/src/applications/osgearth_features/osgearth_features.cpp b/src/applications/osgearth_features/osgearth_features.cpp
index db898ba..89bea6d 100644
--- a/src/applications/osgearth_features/osgearth_features.cpp
+++ b/src/applications/osgearth_features/osgearth_features.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,10 +23,12 @@
 #include <osgViewer/ViewerEventHandlers>
 #include <osgEarth/Map>
 #include <osgEarth/MapNode>
+#include <osgEarthUtil/ExampleResources>
 #include <osgEarthUtil/EarthManipulator>
 #include <osgEarthUtil/AutoClipPlaneHandler>
 
 #include <osgEarthSymbology/Style>
+#include <osgEarthFeatures/ConvertTypeFilter>
 
 #include <osgEarthDrivers/gdal/GDALOptions>
 #include <osgEarthDrivers/feature_ogr/OGRFeatureOptions>
@@ -34,12 +36,28 @@
 #include <osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions>
 #include <osgEarthDrivers/model_feature_stencil/FeatureStencilModelOptions>
 
+#include <osgDB/WriteFile>
+
 using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Drivers;
 using namespace osgEarth::Symbology;
 using namespace osgEarth::Util;
 
+int usage( const std::string& app )
+{
+    OE_NOTICE "\n" << app << "\n"
+        << "    --rasterize           : draw features as rasterized image tiles \n"
+        << "    --overlay             : draw features as projection texture \n"
+        << "    --stencil             : draw features using the stencil buffer \n"
+        << "    --mem                 : load features from memory \n"
+        << "    --labels              : add feature labels \n"
+        << "\n"
+        << MapNodeHelper().usage();
+
+    return -1;
+}
+
 //
 // NOTE: run this sample from the repo/tests directory.
 //
@@ -47,6 +65,12 @@ int main(int argc, char** argv)
 {
     osg::ArgumentParser arguments(&argc,argv);
 
+    if ( arguments.read("--help") )
+        return usage( argv[0] );
+
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
+
     bool useRaster  = arguments.read("--rasterize");
     bool useOverlay = arguments.read("--overlay");
     bool useStencil = arguments.read("--stencil");
@@ -64,21 +88,22 @@ int main(int argc, char** argv)
     basemapOpt.url() = "../data/world.tif";
     map->addImageLayer( new ImageLayer( ImageLayerOptions("basemap", basemapOpt) ) );
 
-    // Next we add a feature layer. First configure a feature driver to 
-    // load the vectors from a shapefile:
-    OGRFeatureOptions featureOpt;
+    // Next we add a feature layer. 
+    OGRFeatureOptions featureOptions;
     if ( !useMem )
     {
-        featureOpt.url() = "../data/usa.shp";
+        // Configures the feature driver to load the vectors from a shapefile:
+        featureOptions.url() = "../data/world.shp";
     }
     else
     {
+        // the --mem options tells us to just make an in-memory geometry:
         Ring* line = new Ring();
         line->push_back( osg::Vec3d(-60, 20, 0) );
         line->push_back( osg::Vec3d(-120, 20, 0) );
         line->push_back( osg::Vec3d(-120, 60, 0) );
         line->push_back( osg::Vec3d(-60, 60, 0) );
-        featureOpt.geometry() = line;
+        featureOptions.geometry() = line;
     }
 
     // Define a style for the feature data. Since we are going to render the
@@ -86,71 +111,81 @@ int main(int argc, char** argv)
     Style style;
 
     LineSymbol* ls = style.getOrCreateSymbol<LineSymbol>();
-    ls->stroke()->color() = osg::Vec4f( 1,1,0,1 ); // yellow
+    ls->stroke()->color() = Color::Yellow;
     ls->stroke()->width() = 2.0f;
 
-    // Add some text labels.
-    if ( useLabels )
-    {
-        TextSymbol* text = style.getOrCreateSymbol<TextSymbol>();
-        text->provider() = "overlay";
-        text->content() = StringExpression( "[name]" );
-        text->priority() = NumericExpression( "[area]" );
-        text->removeDuplicateLabels() = true;
-        text->size() = 16.0f;
-        text->fill()->color() = Color::White;
-        text->halo()->color() = Color::DarkGray;
-    }
-
     // That's it, the map is ready; now create a MapNode to render the Map:
     MapNodeOptions mapNodeOptions;
     mapNodeOptions.enableLighting() = false;
-
     MapNode* mapNode = new MapNode( map, mapNodeOptions );
 
-    // Now we'll choose the AGG-Lite driver to render the features. By the way, the
-    // feature data is actually polygons, so we override that to treat it as lines.
-    // We apply the feature driver and set the style as well.
+    osg::Group* root = new osg::Group();
+    root->addChild( mapNode );
+    viewer.setSceneData( root );
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // Process cmdline args
+    MapNodeHelper().parse(mapNode, arguments, &viewer, root, new LabelControl("Features Demo"));
+   
     if (useStencil)
     {
-        FeatureStencilModelOptions worldOpt;
-        worldOpt.featureOptions() = featureOpt;
-        worldOpt.geometryTypeOverride() = Geometry::TYPE_LINESTRING;
-        worldOpt.styles() = new StyleSheet();
-        worldOpt.styles()->addStyle( style );
-        worldOpt.enableLighting() = false;
-        worldOpt.depthTestEnabled() = false;
-        map->addModelLayer( new ModelLayer( "my features", worldOpt ) );
+        FeatureStencilModelOptions stencilOptions;
+        stencilOptions.featureOptions() = featureOptions;
+        stencilOptions.styles() = new StyleSheet();
+        stencilOptions.styles()->addStyle( style );
+        stencilOptions.enableLighting() = false;
+        stencilOptions.depthTestEnabled() = false;
+        ls->stroke()->width() = 0.1f;
+        map->addModelLayer( new ModelLayer("my features", stencilOptions) );
     }
     else if (useRaster)
     {
-        AGGLiteOptions worldOpt;
-        worldOpt.featureOptions() = featureOpt;
-        worldOpt.geometryTypeOverride() = Geometry::TYPE_LINESTRING;
-        worldOpt.styles() = new StyleSheet();
-        worldOpt.styles()->addStyle( style );
-        map->addImageLayer( new ImageLayer( ImageLayerOptions("world", worldOpt) ) );
+        AGGLiteOptions rasterOptions;
+        rasterOptions.featureOptions() = featureOptions;
+        rasterOptions.styles() = new StyleSheet();
+        rasterOptions.styles()->addStyle( style );
+        map->addImageLayer( new ImageLayer("my features", rasterOptions) );
     }
     else //if (useGeom || useOverlay)
     {
-        FeatureGeomModelOptions worldOpt;
-        worldOpt.featureOptions() = featureOpt;
-        worldOpt.geometryTypeOverride() = Geometry::TYPE_LINESTRING;
-        worldOpt.styles() = new StyleSheet();
-        worldOpt.styles()->addStyle( style );
-        worldOpt.enableLighting() = false;
-        worldOpt.depthTestEnabled() = false;
-
-        ModelLayerOptions options( "my features", worldOpt );
-        options.overlay() = useOverlay;
-        map->addModelLayer( new ModelLayer(options) );
+        FeatureGeomModelOptions geomOptions;
+        geomOptions.featureOptions() = featureOptions;
+        geomOptions.styles() = new StyleSheet();
+        geomOptions.styles()->addStyle( style );
+        geomOptions.enableLighting() = false;
+
+        ModelLayerOptions layerOptions( "my features", geomOptions );
+        layerOptions.overlay() = useOverlay;
+        map->addModelLayer( new ModelLayer(layerOptions) );
     }
 
-    viewer.setSceneData( mapNode );
-    viewer.setCameraManipulator( new EarthManipulator() );
+    if ( useLabels )
+    {
+        // set up symbology for drawing labels. We're pulling the label
+        // text from the name attribute, and its draw priority from the
+        // population attribute.
+        Style labelStyle;
+
+        TextSymbol* text = labelStyle.getOrCreateSymbol<TextSymbol>();
+        text->content() = StringExpression( "[cntry_name]" );
+        text->priority() = NumericExpression( "[pop_cntry]" );
+        text->removeDuplicateLabels() = true;
+        text->size() = 16.0f;
+        text->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+        text->fill()->color() = Color::White;
+        text->halo()->color() = Color::DarkGray;
+
+        // and configure a model layer:
+        FeatureGeomModelOptions geomOptions;
+        geomOptions.featureOptions() = featureOptions;
+        geomOptions.styles() = new StyleSheet();
+        geomOptions.styles()->addStyle( labelStyle );
+
+        map->addModelLayer( new ModelLayer("labels", geomOptions) );
+    }
 
-    if ( !useStencil && !useOverlay )
-        viewer.addEventHandler( new osgEarth::Util::AutoClipPlaneHandler );
+    if ( !useStencil )
+        viewer.getCamera()->addCullCallback( new osgEarth::Util::AutoClipPlaneCullCallback(mapNode) );
 
     // add some stock OSG handlers:
     viewer.addEventHandler(new osgViewer::StatsHandler());
diff --git a/src/applications/osgearth_graticule/CMakeLists.txt b/src/applications/osgearth_graticule/CMakeLists.txt
new file mode 100644
index 0000000..32414cf
--- /dev/null
+++ b/src/applications/osgearth_graticule/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_graticule.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_graticule)
\ No newline at end of file
diff --git a/src/applications/osgearth_graticule/osgearth_graticule.cpp b/src/applications/osgearth_graticule/osgearth_graticule.cpp
new file mode 100644
index 0000000..f719aae
--- /dev/null
+++ b/src/applications/osgearth_graticule/osgearth_graticule.cpp
@@ -0,0 +1,108 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+
+#include <osgEarth/MapNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/MouseCoordsTool>
+#include <osgEarthUtil/MGRSFormatter>
+#include <osgEarthUtil/LatLongFormatter>
+
+#include <osgEarthUtil/GeodeticGraticule>
+#include <osgEarthUtil/MGRSGraticule>
+#include <osgEarthUtil/UTMGraticule>
+
+using namespace osgEarth::Util;
+
+int
+usage( const std::string& msg )
+{
+    OE_NOTICE 
+        << msg << std::endl
+        << "USAGE: osgearth_graticule [options] file.earth" << std::endl
+        << "   --geodetic            : display a geodetic (lat/long) graticule" << std::endl
+        << "   --utm                 : display a UTM graticule" << std::endl
+        << "   --mgrs                : display an MGRS graticule" << std::endl;        
+    return -1;
+}
+
+//------------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    osgViewer::Viewer viewer(arguments);
+
+    // parse command line:
+    bool isUTM = arguments.read("--utm");
+    bool isMGRS = arguments.read("--mgrs");
+    bool isGeodetic = !isUTM && !isMGRS;
+
+    // load the .earth file from the command line.
+    MapNode* mapNode = MapNode::load( arguments );
+    if ( !mapNode )
+        return usage( "Failed to load a map from the .earth file" );
+
+    // install our manipulator:
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // root scene graph:
+    osg::Group* root = new osg::Group();
+    root->addChild( mapNode );
+
+    Formatter* formatter = 0L;
+    if ( isUTM )
+    {
+        UTMGraticule* gr = new UTMGraticule( mapNode );
+        root->addChild( gr );
+        formatter = new MGRSFormatter();
+    }
+    else if ( isMGRS )
+    {
+        MGRSGraticule* gr = new MGRSGraticule( mapNode );
+        root->addChild( gr );
+        formatter = new MGRSFormatter();
+    }
+    else // if ( isGeodetic )
+    {
+        GeodeticGraticule* gr = new GeodeticGraticule( mapNode );
+        root->addChild( gr );
+        formatter = new LatLongFormatter();
+    }
+
+    // mouse coordinate readout:
+    LabelControl* readout = new LabelControl();
+    ControlCanvas::get( &viewer, true )->addControl( readout );
+    MouseCoordsTool* tool = new MouseCoordsTool( mapNode );
+    tool->addCallback( new MouseCoordsLabelCallback(readout, formatter) );
+    viewer.addEventHandler( tool );
+
+    // finalize setup and run.
+    viewer.setSceneData( root );
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgViewer::ThreadingHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_imageoverlay/osgearth_imageoverlay.cpp b/src/applications/osgearth_imageoverlay/osgearth_imageoverlay.cpp
index 14137c9..4616d1d 100644
--- a/src/applications/osgearth_imageoverlay/osgearth_imageoverlay.cpp
+++ b/src/applications/osgearth_imageoverlay/osgearth_imageoverlay.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,12 +33,13 @@
 #include <osg/Version>
 #include <osgEarth/Version>
 
-#include <osgEarthUtil/ImageOverlay>
+#include <osgEarthAnnotation/ImageOverlay>
 #if OSG_MIN_VERSION_REQUIRED(2,9,6)
-#include <osgEarthUtil/ImageOverlayEditor>
+#include <osgEarthAnnotation/ImageOverlayEditor>
 #endif
 
 using namespace osgEarth;
+using namespace osgEarth::Annotation;
 using namespace osgEarth::Util;
 using namespace osgEarth::Util::Controls;
 
@@ -157,7 +158,9 @@ struct UpdateLabelCallback : public ImageOverlay::ImageOverlayCallback
         osg::Vec2d location = _overlay->getControlPoint( _controlPoint );
         std::stringstream ss;
         ss << location.y() << ", " << location.x();
-        _label->setText( ss.str() );
+        std::string str;
+        str = ss.str();
+        _label->setText( str );
     }
     
 
@@ -243,7 +246,7 @@ main(int argc, char** argv)
 
             //Create a new ImageOverlayEditor and set it's node mask to 0 to hide it initially
 #if OSG_MIN_VERSION_REQUIRED(2,9,6)
-            osg::Node* editor = new ImageOverlayEditor( overlay, mapNode->getMap()->getProfile()->getSRS()->getEllipsoid(), mapNode );
+            osg::Node* editor = new ImageOverlayEditor( overlay);
 #else
             //Just make an empty group for pre-2.9.6
             osg::Node* editor = new osg::Group;
@@ -285,10 +288,6 @@ main(int argc, char** argv)
         }        
     }
 
-    // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
-    // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
-    viewer.getDatabasePager()->setDoPreCompile( true );
-
     // add some stock OSG handlers:
     viewer.addEventHandler(new osgViewer::StatsHandler());
     viewer.addEventHandler(new osgViewer::WindowSizeHandler());    
diff --git a/src/applications/osgearth_labels/CMakeLists.txt b/src/applications/osgearth_labels/CMakeLists.txt
deleted file mode 100644
index d51634a..0000000
--- a/src/applications/osgearth_labels/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_labels.cpp)
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_labels)
\ No newline at end of file
diff --git a/src/applications/osgearth_labels/osgearth_labels.cpp b/src/applications/osgearth_labels/osgearth_labels.cpp
deleted file mode 100644
index 4c671c8..0000000
--- a/src/applications/osgearth_labels/osgearth_labels.cpp
+++ /dev/null
@@ -1,193 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/Notify>
-#include <osgGA/GUIEventHandler>
-#include <osgViewer/Viewer>
-#include <osgGA/StateSetManipulator>
-#include <osgViewer/ViewerEventHandlers>
-#include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/Controls>
-#include <osgEarthDrivers/feature_ogr/OGRFeatureOptions>
-#include <osgEarthFeatures/FeatureSource>
-#include <osgEarth/Utils>
-
-#define LC "[osgearth_labels] "
-
-using namespace osgEarth::Util::Controls;
-using namespace osgEarth::Drivers;
-using namespace osgEarth::Features;
-using namespace osgEarth::Symbology;
-
-osg::Group* createLabels( Map* );
-
-std::string g_featureFile, g_labelAttr, g_priorityAttr;
-bool g_removeDupes = true;
-
-/**
- * Demonstrates the dynamic labeling engine in osgEarthUtil::Controls.
- */
-
-int main(int argc, char** argv)
-{
-    osg::ArgumentParser arguments(&argc,argv);
-
-    if ( arguments.read( "--help" ) || argc < 2 )
-    {
-        OE_NOTICE << LC << std::endl << std::endl
-
-            << "osgearth_labels <earthfile>" << std::endl
-            << "    --features <filename>            : name of shapefile containing feature labels" << std::endl
-            << "    --label-attr <attribute>         : attribute containing label text" << std::endl
-            << "    --priority-attr <attribute>      : attribute containing priority value" << std::endl
-            << "    --show-duplicates                : draws duplicate labels (usually won't)" << std::endl;
-        
-        return 0;
-    }
-
-    if ( !arguments.read( "--features", g_featureFile ) )
-        g_featureFile = "../data/world.shp";
-    
-    if ( !arguments.read( "--label-attr", g_labelAttr ) )
-        g_labelAttr = "cntry_name";
-
-    if ( !arguments.read( "--priority-attr", g_priorityAttr ) )
-        g_priorityAttr = "cntry_pop";
-
-    if ( arguments.read( "--show-duplicates" ) )
-        g_removeDupes = false;
-
-    osgViewer::Viewer viewer(arguments);
-
-    osg::Group* root = new osg::Group();
-    osg::Node* node = osgDB::readNodeFiles( arguments );
-    if ( node )
-        root->addChild( node );
-
-    MapNode* mapNode = MapNode::findMapNode(node);
-    if ( mapNode )
-    {
-        viewer.setSceneData( root );
-        viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator );
-
-        //root->addChild( new ControlCanvas( &viewer ) );
-
-        // load up some labels.
-        root->addChild( createLabels(mapNode->getMap()) );
-    }
-
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgViewer::ThreadingHandler());
-    viewer.addEventHandler(new osgViewer::LODScaleHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-    viewer.addEventHandler(new osgViewer::HelpHandler(arguments.getApplicationUsage()));
-
-    return viewer.run();
-}
-
-osg::Group*
-createLabels( Map* map )
-{
-    osg::ref_ptr<osg::Group> labels = new osg::Group();
-
-    // first, open up the source shapefile
-    OGRFeatureOptions fo;
-    fo.url() = g_featureFile;
-
-    osg::ref_ptr<FeatureSource> features = FeatureSourceFactory::create( fo );
-    if ( !features.valid() )
-    {
-        OE_WARN << LC << "Unable to load features!" << std::endl;
-        return 0L;
-    }
-
-    features->initialize( "" );
-    const FeatureProfile* featureProfile = features->getFeatureProfile();
-    if ( !featureProfile || !featureProfile->getSRS() )
-    {
-        OE_WARN << LC << "Feature data has no spatial reference!" << std::endl;
-        return 0L;
-    }
-
-    osg::ref_ptr<FeatureCursor> cursor = features->createFeatureCursor();
-    if ( !cursor.valid() )
-    {
-        OE_WARN << LC << "Failed to query the feature source!" << std::endl;
-        return 0L;
-    }
-
-    //SceneControlBin* priorityBin = canvas->getSceneControls();
-
-    unsigned count = 0;
-
-    std::set<std::string> antiDupeSet;
-
-    while( cursor->hasMore() )
-    {
-        Feature* feature = cursor->nextFeature();
-        Geometry* geom = feature->getGeometry();
-
-        if ( !geom )
-            continue;
-
-        // we will display the country name:
-        std::string text = feature->getString( g_labelAttr );
-        if ( text.empty() )
-            continue;
-
-        // and use the population to prioritize labels:
-        float population = feature->getDouble(g_priorityAttr, 0.0);
-
-        // remove duplicate labels:
-        if ( g_removeDupes )
-        {
-            if ( antiDupeSet.find(text) != antiDupeSet.end() )
-                continue;
-            antiDupeSet.insert(text);
-        }
-
-        // calculate the world location of the label:
-        osg::Vec3d centerPoint = geom->getBounds().center();
-
-        osg::Vec3d mapPoint;
-        if ( !map->toMapPoint( centerPoint, featureProfile->getSRS(), mapPoint ) )
-            continue;
-
-        osg::Vec3d worldPoint;
-        if ( !map->mapPointToWorldPoint( mapPoint, worldPoint ) )
-            continue;
-
-        // create the label and place it:
-        osg::MatrixTransform* xform = new osg::MatrixTransform( osg::Matrix::translate(worldPoint) );
-        xform->setCullCallback( new CullNodeByNormal(worldPoint) );
-        xform->addChild( new ControlNode(new LabelControl(text)) );
-        labels->addChild( xform );
-
-        ++count;
-
-        //OE_NOTICE << LC << "Added: " << text << std::endl;
-    }
-
-    OE_NOTICE << LC << "Found " << count << " features. " << std::endl;
-
-    return labels.release();
-}
-
diff --git a/src/applications/osgearth_los/CMakeLists.txt b/src/applications/osgearth_los/CMakeLists.txt
new file mode 100644
index 0000000..84aa708
--- /dev/null
+++ b/src/applications/osgearth_los/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_los.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_los)
\ No newline at end of file
diff --git a/src/applications/osgearth_los/osgearth_los.cpp b/src/applications/osgearth_los/osgearth_los.cpp
new file mode 100644
index 0000000..f8610a3
--- /dev/null
+++ b/src/applications/osgearth_los/osgearth_los.cpp
@@ -0,0 +1,229 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgEarth/MapNode>
+#include <osgEarth/XmlUtils>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/LinearLineOfSight>
+#include <osgEarthUtil/RadialLineOfSight>
+#include <osg/io_utils>
+#include <osg/MatrixTransform>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+
+osg::AnimationPath* createAnimationPath(const GeoPoint& pos, const SpatialReference* mapSRS, float radius, double looptime)
+{
+    // set up the animation path 
+    osg::AnimationPath* animationPath = new osg::AnimationPath;
+    animationPath->setLoopMode(osg::AnimationPath::LOOP);
+    
+    int numSamples = 40;
+
+    double delta = osg::PI * 2.0 / (double)numSamples;
+
+    //Get the center point in geocentric
+    GeoPoint mapPos = pos.transform(mapSRS);
+    osg::Vec3d centerWorld;
+    mapPos.toWorld( centerWorld );
+
+    bool isProjected = mapSRS->isProjected();
+
+    osg::Vec3d up = isProjected ? osg::Vec3d(0,0,1) : centerWorld;
+    up.normalize();
+
+    //Get the "side" vector
+    osg::Vec3d side = isProjected ? osg::Vec3d(1,0,0) : up ^ osg::Vec3d(0,0,1);
+
+
+    double time=0.0f;
+    double time_delta = looptime/(double)numSamples;
+
+    osg::Vec3d firstPosition;
+    osg::Quat firstRotation;
+
+    for (unsigned int i = 0; i < (unsigned int)numSamples; i++)
+    {
+        double angle = delta * (double)i;
+        osg::Quat quat(angle, up );
+        osg::Vec3d spoke = quat * (side * radius);
+        osg::Vec3d end = centerWorld + spoke;                
+
+        osg::Quat makeUp;
+        makeUp.makeRotate(osg::Vec3d(0,0,1), up);
+
+        osg::Quat rot = makeUp;
+        animationPath->insert(time,osg::AnimationPath::ControlPoint(end,rot));
+        if (i == 0)
+        {
+            firstPosition = end;
+            firstRotation = rot;
+        }
+        time += time_delta;            
+    }
+   
+    animationPath->insert(time, osg::AnimationPath::ControlPoint(firstPosition, firstRotation));
+
+    return animationPath;    
+}
+
+osg::Node* createPlane(osg::Node* node, const GeoPoint& pos, const SpatialReference* mapSRS, double radius, double time)
+{
+    osg::MatrixTransform* positioner = new osg::MatrixTransform;
+    positioner->addChild( node );
+    osg::AnimationPath* animationPath = createAnimationPath(pos, mapSRS, radius, time);
+    positioner->setUpdateCallback( new osg::AnimationPathCallback(animationPath, 0.0, 1.0));
+    return positioner;
+}
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    osgViewer::Viewer viewer(arguments);
+
+    // load the .earth file from the command line.
+    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+    if (!earthNode)
+    {
+        OE_NOTICE << "Unable to load earth model" << std::endl;
+        return 1;
+    }
+
+    osg::Group* root = new osg::Group();
+
+    osgEarth::MapNode * mapNode = osgEarth::MapNode::findMapNode( earthNode );
+    if (!mapNode)
+    {
+        OE_NOTICE << "Could not find MapNode " << std::endl;
+        return 1;
+    }
+
+    osgEarth::Util::EarthManipulator* manip = new EarthManipulator();
+    viewer.setCameraManipulator( manip );
+    
+    root->addChild( earthNode );    
+    viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode));
+
+    // so we can speak lat/long:
+    const SpatialReference* mapSRS = mapNode->getMapSRS();
+    const SpatialReference* geoSRS = mapSRS->getGeographicSRS();
+
+    //Create a point to point LineOfSightNode.
+    LinearLineOfSightNode* los = new LinearLineOfSightNode(
+        mapNode, 
+        GeoPoint(geoSRS, -121.665, 46.0878, 1258.00, ALTMODE_ABSOLUTE),
+        GeoPoint(geoSRS, -121.488, 46.2054, 3620.11, ALTMODE_ABSOLUTE) );
+
+    root->addChild( los );
+    los->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+
+    
+    //Create an editor for the point to point line of sight that allows you to drag the beginning and end points around.
+    //This is just one way that you could manipulator the LineOfSightNode.
+    LinearLineOfSightEditor* p2peditor = new LinearLineOfSightEditor( los );
+    root->addChild( p2peditor );
+
+    //Create a relative point to point LineOfSightNode.
+    LinearLineOfSightNode* relativeLOS = new LinearLineOfSightNode( 
+        mapNode, 
+        GeoPoint(geoSRS, -121.2, 46.1, 10, ALTMODE_RELATIVE),
+        GeoPoint(geoSRS, -121.488, 46.2054, 10, ALTMODE_RELATIVE) );
+
+    root->addChild( relativeLOS );
+    relativeLOS->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+
+    LinearLineOfSightEditor* relEditor = new LinearLineOfSightEditor( relativeLOS );
+    root->addChild( relEditor );
+
+    //Create a RadialLineOfSightNode that allows you to do a 360 degree line of sight analysis.
+    RadialLineOfSightNode* radial = new RadialLineOfSightNode( mapNode );
+    radial->setCenter( GeoPoint(geoSRS, -121.515, 46.054, 847.604, ALTMODE_ABSOLUTE) );
+    radial->setRadius( 2000 );
+    radial->setNumSpokes( 100 );    
+    radial->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+    root->addChild( radial );
+    RadialLineOfSightEditor* radialEditor = new RadialLineOfSightEditor( radial );
+    root->addChild( radialEditor );
+
+    //Create a relative RadialLineOfSightNode that allows you to do a 360 degree line of sight analysis.
+    RadialLineOfSightNode* radialRelative = new RadialLineOfSightNode( mapNode );
+    radialRelative->setCenter( GeoPoint(geoSRS, -121.2, 46.054, 10, ALTMODE_RELATIVE) );
+    radialRelative->setRadius( 3000 );
+    radialRelative->setNumSpokes(60);    
+    radialRelative->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+    root->addChild( radialRelative );
+    RadialLineOfSightEditor* radialRelEditor = new RadialLineOfSightEditor( radialRelative );
+    root->addChild( radialRelEditor );
+
+    //Load a plane model.  
+    osg::ref_ptr< osg::Node >  plane = osgDB::readNodeFile("../data/cessna.osg.5,5,5.scale");
+
+    //Create 2 moving planes
+    osg::Node* plane1 = createPlane(plane, GeoPoint(geoSRS, -121.656, 46.0935, 4133.06, ALTMODE_ABSOLUTE), mapSRS, 5000, 20);
+    osg::Node* plane2 = createPlane(plane, GeoPoint(geoSRS, -121.321, 46.2589, 1390.09, ALTMODE_ABSOLUTE), mapSRS, 3000, 5);
+    root->addChild( plane1 );
+    root->addChild( plane2 );
+
+    //Create a LineOfSightNode that will use a LineOfSightTether callback to monitor
+    //the two plane's positions and recompute the LOS when they move
+    LinearLineOfSightNode* tetheredLOS = new LinearLineOfSightNode( mapNode);
+    tetheredLOS->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+    root->addChild( tetheredLOS );
+    tetheredLOS->setUpdateCallback( new LineOfSightTether( plane1, plane2 ) );
+
+    //Create another plane and attach a RadialLineOfSightNode to it using the RadialLineOfSightTether
+    osg::Node* plane3 = createPlane(plane, GeoPoint(geoSRS, -121.463, 46.3548, 1348.71, ALTMODE_ABSOLUTE), mapSRS, 10000, 5);
+    root->addChild( plane3 );
+    RadialLineOfSightNode* tetheredRadial = new RadialLineOfSightNode( mapNode );    
+    tetheredRadial->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);    
+    tetheredRadial->setRadius( 5000 );
+
+    //This RadialLineOfSightNode is going to be filled, so set some alpha values for the colors so it's partially transparent
+    tetheredRadial->setFill( true );
+    tetheredRadial->setGoodColor( osg::Vec4(0,1,0,0.3) );
+    tetheredRadial->setBadColor( osg::Vec4(1,0,0,0.3) );
+    tetheredRadial->setNumSpokes( 100 );
+    root->addChild( tetheredRadial );
+    tetheredRadial->setUpdateCallback( new RadialLineOfSightTether( plane3 ) );
+
+    manip->setHomeViewpoint( Viewpoint( 
+        "Mt Rainier",        
+        osg::Vec3d( -121.488, 46.2054, 0 ), 
+        0.0, -50, 100000,
+        geoSRS) );
+
+    viewer.setSceneData( root );    
+
+    // add some stock OSG handlers:
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgViewer::ThreadingHandler());
+    viewer.addEventHandler(new osgViewer::LODScaleHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_manip/osgearth_manip.cpp b/src/applications/osgearth_manip/osgearth_manip.cpp
index 868c794..ea9d58e 100644
--- a/src/applications/osgearth_manip/osgearth_manip.cpp
+++ b/src/applications/osgearth_manip/osgearth_manip.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,71 +20,71 @@
 #include <string>
 
 #include <osg/Notify>
-#include <osg/Switch>
+#include <osg/Timer>
+#include <osg/ShapeDrawable>
 #include <osgGA/StateSetManipulator>
 #include <osgGA/GUIEventHandler>
 #include <osgViewer/Viewer>
 #include <osgViewer/ViewerEventHandlers>
-#include <osgEarth/Map>
+#include <osgEarth/GeoMath>
 #include <osgEarth/MapNode>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/Viewpoint>
 #include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/Viewpoint>
 #include <osgEarthUtil/AutoClipPlaneHandler>
 #include <osgEarthUtil/Controls>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/LocalGeometryNode>
+#include <osgEarthSymbology/Style>
 
 using namespace osgEarth::Util;
 using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Annotation;
+
+#define D2R (osg::PI/180.0)
+#define R2D (180.0/osg::PI)
 
 namespace
 {
-    class SwitchHandler : public osgGA::GUIEventHandler
+    /**
+     * Builds our help menu UI.
+     */
+    Control* createHelp( osgViewer::View* view )
     {
-    public:
-        SwitchHandler(char key = 0) : _key(key) {}
-
-        bool handle(const osgGA::GUIEventAdapter& ea,osgGA::GUIActionAdapter& aa, osg::Object* object, osg::NodeVisitor* /*nv*/)
+        static char* text[] =
         {
-            if (ea.getHandled() || ea.getEventType() != osgGA::GUIEventAdapter::KEYDOWN )
-                return false;
-
-            if ( ea.getKey() == _key )
-            {
-                ControlCanvas* canvas = ControlCanvas::get(aa.asView());
-                if ( canvas )
-                    canvas->setNodeMask( canvas->getNodeMask() ^ 0xFFFFFFFF );
-            }
-            return false;
+            "left mouse :",        "pan",
+            "middle mouse :",      "rotate",
+            "right mouse :",       "continuous zoom",
+            "double-click :",      "zoom to point",
+            "scroll wheel :",      "zoom in/out",
+            "arrows :",            "pan",
+            "1-6 :",               "fly to preset viewpoints",
+            "shift-right-mouse :", "locked panning",
+            "u :",                 "toggle azimuth lock",
+            "c :",                 "toggle perspective/ortho",
+            "t :",                 "toggle tethering"
+        };
+
+        Grid* g = new Grid();
+        for( unsigned i=0; i<sizeof(text)/sizeof(text[0]); ++i )
+        {
+            unsigned c = i % 2;
+            unsigned r = i / 2;
+            g->setControl( c, r, new LabelControl(text[i]) );
         }
 
-    protected:
-        char _key;
-    };
-
-    osg::Node* createHelp( osgViewer::View* view )
-    {
-        static char s_help[] = 
-            "left mouse: pan \n"
-            "middle mouse: tilt/slew \n"
-            "right mouse: zoom in/out continuous \n"
-            "double-click: zoom in \n"
-            "scroll wheel: zoom in/out \n"
-            "arrows: pan\n"
-            "1-6 : fly to preset viewpoints \n"
-            "shift-right-mouse: locked panning\n"
-            "u : toggle azimuth locking\n"
-            "h : toggle this help\n";
-
         VBox* v = new VBox();
-        v->addControl( new LabelControl( "EarthManipulator", osg::Vec4f(1,1,0,1) ) );
-        v->addControl( new LabelControl( s_help ) );
-        ControlCanvas* canvas = ControlCanvas::get( view );
-        canvas->addControl( v );
-        canvas->setEventCallback(new SwitchHandler('h'));    
+        v->addControl( g );
 
-        return canvas;
+        return v;
     }
 
-    // some preset viewpoints.
+
+    /**
+     * Some preset viewpoints to show off the setViewpoint function.
+     */
     static Viewpoint VPs[] = {
         Viewpoint( "Africa",        osg::Vec3d(    0.0,   0.0, 0.0 ), 0.0, -90.0, 10e6 ),
         Viewpoint( "California",    osg::Vec3d( -121.0,  34.0, 0.0 ), 0.0, -90.0, 6e6 ),
@@ -94,8 +94,11 @@ namespace
         Viewpoint( "Boston",        osg::Vec3d( -71.096936, 42.332771, 0 ), 0.0, -90, 1e5 )
     };
 
-    // a simple handler that demonstrates the "viewpoint" functionality in 
-    // osgEarthUtil::EarthManipulator. Press a number key to fly to a viewpoint.
+
+    /**
+     * Handler that demonstrates the "viewpoint" functionality in 
+     *  osgEarthUtil::EarthManipulator. Press a number key to fly to a viewpoint.
+     */
     struct FlyToViewpointHandler : public osgGA::GUIEventHandler 
     {
         FlyToViewpointHandler( EarthManipulator* manip ) : _manip(manip) { }
@@ -105,6 +108,7 @@ namespace
             if ( ea.getEventType() == ea.KEYDOWN && ea.getKey() >= '1' && ea.getKey() <= '6' )
             {
                 _manip->setViewpoint( VPs[ea.getKey()-'1'], 4.0 );
+                aa.requestRedraw();
             }
             return false;
         }
@@ -112,9 +116,46 @@ namespace
         osg::observer_ptr<EarthManipulator> _manip;
     };
 
+
+    /**
+     * Handler to toggle "azimuth locking", which locks the camera's relative Azimuth
+     * while panning. For example, it can maintain "north-up" as you pan around. The
+     * caveat is that when azimuth is locked you cannot cross the poles.
+     */
     struct LockAzimuthHandler : public osgGA::GUIEventHandler
     {
         LockAzimuthHandler(char key, EarthManipulator* manip)
+            : _key(key), _manip(manip) { }
+
+        bool handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
+        {
+            if (ea.getEventType() == ea.KEYDOWN && ea.getKey() == _key)
+            {
+                bool lockAzimuth = _manip->getSettings()->getLockAzimuthWhilePanning();
+                _manip->getSettings()->setLockAzimuthWhilePanning(!lockAzimuth);
+                aa.requestRedraw();
+                return true;
+            }
+            return false;
+        }
+
+        void getUsage(osg::ApplicationUsage& usage) const
+        {
+            using namespace std;
+            usage.addKeyboardMouseBinding(string(1, _key), string("Toggle azimuth locking"));
+        }
+
+        char _key;
+        osg::ref_ptr<EarthManipulator> _manip;
+    };
+
+
+    /**
+     * Toggles the projection matrix between perspective and orthographic.
+     */
+    struct ToggleProjectionHandler : public osgGA::GUIEventHandler
+    {
+        ToggleProjectionHandler(char key, EarthManipulator* manip)
             : _key(key), _manip(manip)
         {
         }
@@ -123,9 +164,11 @@ namespace
         {
             if (ea.getEventType() == ea.KEYDOWN && ea.getKey() == _key)
             {
-                bool lockAzimuth
-                    = _manip->getSettings()->getLockAzimuthWhilePanning();
-                _manip->getSettings()->setLockAzimuthWhilePanning(!lockAzimuth);
+                if ( _manip->getSettings()->getCameraProjection() == EarthManipulator::PROJ_PERSPECTIVE )
+                    _manip->getSettings()->setCameraProjection( EarthManipulator::PROJ_ORTHOGRAPHIC );
+                else
+                    _manip->getSettings()->setCameraProjection( EarthManipulator::PROJ_PERSPECTIVE );
+                aa.requestRedraw();
                 return true;
             }
             return false;
@@ -134,38 +177,92 @@ namespace
         void getUsage(osg::ApplicationUsage& usage) const
         {
             using namespace std;
-            usage.addKeyboardMouseBinding(string(1, _key),
-                string("Toggle azimuth locking"));
+            usage.addKeyboardMouseBinding(string(1, _key), string("Toggle projection type"));
         }
 
         char _key;
         osg::ref_ptr<EarthManipulator> _manip;
-
     };
 
+
+    /**
+     * A simple simulator that moves an object around the Earth. We use this to
+     * demonstrate/test tethering.
+     */
+    struct Simulator : public osgGA::GUIEventHandler
+    {
+        Simulator( osg::Group* root, EarthManipulator* manip )
+            : _manip(manip), _lat0(55.0), _lon0(45.0), _lat1(-55.0), _lon1(-45.0)
+        {
+            osg::Node* geode = AnnotationUtils::createSphere( 100.0, osg::Vec4(1,1,1,1) );
+            
+            _xform = new osg::MatrixTransform();
+            _xform->addChild( geode );
+
+            _cam = new osg::Camera();
+            _cam->setRenderOrder( osg::Camera::NESTED_RENDER, 1 );
+            _cam->addChild( _xform );
+
+            root->addChild( _cam.get() );
+        }
+
+        bool handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
+        {
+            if ( ea.getEventType() == ea.FRAME )
+            {
+                double t = fmod( osg::Timer::instance()->time_s(), 600.0 ) / 600.0;
+                double lat, lon;
+                GeoMath::interpolate( D2R*_lat0, D2R*_lon0, D2R*_lat1, D2R*_lon1, t, lat, lon );
+                GeoPoint p( SpatialReference::create("wgs84"), R2D*lon, R2D*lat, 25000.0, ALTMODE_ABSOLUTE );
+                osg::Vec3d world;
+                p.toWorld( world );
+                _xform->setMatrix( osg::Matrix::translate(world) );
+            }
+            else if ( ea.getEventType() == ea.KEYDOWN && ea.getKey() == 't' )
+            {
+                _manip->setTetherNode( _manip->getTetherNode() ? 0L : _cam.get() );
+                if ( _manip->getTetherNode() )
+                {
+                    _manip->getSettings()->setArcViewpointTransitions( false );
+                    _manip->setViewpoint(Viewpoint(osg::Vec3d(0,0,0), 45, -25, 250000));
+                    _manip->getSettings()->setArcViewpointTransitions( true );
+                }
+                return true;
+            }
+            return false;
+        }
+
+        EarthManipulator*                  _manip;
+        osg::ref_ptr<osg::Camera>          _cam;
+        osg::ref_ptr<osg::MatrixTransform> _xform;
+        double                             _lat0, _lon0, _lat1, _lon1;
+    };
 }
 
 
 int main(int argc, char** argv)
 {
-    osg::ArgumentParser arguments(&argc,argv);       
+    osg::ArgumentParser arguments(&argc,argv);
     osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
 
+    osgViewer::Viewer viewer(arguments);
+
     // install the programmable manipulator.
     EarthManipulator* manip = new EarthManipulator();
+    viewer.setCameraManipulator( manip );
+
+    // UI:
+    Control* help = createHelp(&viewer);
 
-    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+    osg::Node* earthNode = MapNodeHelper().load( arguments, &viewer, help );
     if (!earthNode)
     {
         OE_WARN << "Unable to load earth model." << std::endl;
         return -1;
     }
 
-    osgViewer::Viewer viewer(arguments);
-
     osg::Group* root = new osg::Group();
     root->addChild( earthNode );
-    root->addChild( createHelp(&viewer) );
 
     osgEarth::MapNode* mapNode = osgEarth::MapNode::findMapNode( earthNode );
     if ( mapNode )
@@ -177,14 +274,16 @@ int main(int argc, char** argv)
         {
             manip->setHomeViewpoint( 
                 Viewpoint( osg::Vec3d( -90, 0, 0 ), 0.0, -90.0, 5e7 ) );
-
-            // add a handler that will automatically calculate good clipping planes
-            viewer.addEventHandler( new AutoClipPlaneHandler() );
         }
     }
 
+    // Simulator for tethering:
+    viewer.addEventHandler( new Simulator(root, manip) );
+    manip->getSettings()->getBreakTetherActions().push_back( EarthManipulator::ACTION_PAN );
+    manip->getSettings()->getBreakTetherActions().push_back( EarthManipulator::ACTION_GOTO );
+
+
     viewer.setSceneData( root );
-    viewer.setCameraManipulator( manip );
 
     manip->getSettings()->bindMouse(
         EarthManipulator::ACTION_EARTH_DRAG,
@@ -195,16 +294,7 @@ int main(int argc, char** argv)
     
     viewer.addEventHandler(new FlyToViewpointHandler( manip ));
     viewer.addEventHandler(new LockAzimuthHandler('u', manip));
-
-
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgViewer::ThreadingHandler());
-    viewer.addEventHandler(new osgViewer::LODScaleHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-    viewer.addEventHandler(new osgViewer::HelpHandler(arguments.getApplicationUsage()));
-    //viewer.addEventHandler(new osgViewer::RecordCameraPathHandler());
+    viewer.addEventHandler(new ToggleProjectionHandler('c', manip));
 
     return viewer.run();
 }
diff --git a/src/applications/osgearth_map/osgearth_map.cpp b/src/applications/osgearth_map/osgearth_map.cpp
index 04291d0..769a3b2 100644
--- a/src/applications/osgearth_map/osgearth_map.cpp
+++ b/src/applications/osgearth_map/osgearth_map.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -43,7 +43,7 @@ main(int argc, char** argv)
 
     // add a TMS imager layer:
     TMSOptions imagery;
-    imagery.url() = "http://readymap.org/readymap/tiles/1.0.0/7/";
+    imagery.url() = "http://readymaps.org/readymap/tiles/1.0.0/7/";
     map->addImageLayer( new ImageLayer("Imagery", imagery) );
 
     // add a TMS elevation layer:
@@ -59,10 +59,6 @@ main(int argc, char** argv)
     viewer.setCameraManipulator( new EarthManipulator );
     viewer.setSceneData( node );
 
-    // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
-    // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
-    viewer.getDatabasePager()->setDoPreCompile( true );
-
     // add some stock OSG handlers:
     viewer.addEventHandler(new osgViewer::StatsHandler());
     viewer.addEventHandler(new osgViewer::WindowSizeHandler());
diff --git a/src/applications/osgearth_measure/osgearth_measure.cpp b/src/applications/osgearth_measure/osgearth_measure.cpp
index 277040a..21999dd 100644
--- a/src/applications/osgearth_measure/osgearth_measure.cpp
+++ b/src/applications/osgearth_measure/osgearth_measure.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -24,12 +24,12 @@
 #include <osgViewer/ViewerEventHandlers>
 #include <osgEarth/MapNode>
 #include <osgEarth/XmlUtils>
+#include <osgEarth/Viewpoint>
 #include <osgEarthUtil/EarthManipulator>
 #include <osgEarthUtil/AutoClipPlaneHandler>
 #include <osgEarthUtil/Controls>
-#include <osgEarthUtil/Graticule>
 #include <osgEarthUtil/SkyNode>
-#include <osgEarthUtil/Viewpoint>
+#include <osgEarthUtil/MouseCoordsTool>
 #include <osgEarthSymbology/Color>
 
 #include <osgEarthUtil/MeasureTool>
@@ -49,8 +49,10 @@ public:
     virtual void onDistanceChanged(MeasureToolHandler* sender, double distance)
     {
         std::stringstream ss;
-        ss << "Distance = " << std::setprecision(10) << distance << "m" << std::endl;        
-        _label->setText( ss.str() );
+        ss << "Distance = " << std::setprecision(10) << distance << "m" << std::endl; 
+        std::string str;
+        str = ss.str();
+        _label->setText( str );
     }
     LabelControl* _label;
 };
@@ -146,18 +148,20 @@ main(int argc, char** argv)
 
     //Add a label to display the distance
     // Add a text label:
+    grid->setControl( 0, 0, new LabelControl("Distance:") );
     LabelControl* label = new LabelControl();
     label->setFont( osgText::readFontFile( "arialbd.ttf" ) );
     label->setFontSize( 24.0f );
     label->setHorizAlign( Control::ALIGN_LEFT );    
-    label->setText("Distance");
-    grid->setControl( 0, 0, label);
+    label->setText("click to measure");
+    grid->setControl( 1, 0, label );
 
     //Add a callback to update the label when the distance changes
     measureTool->addEventHandler( new MyMeasureToolCallback(label) );
     
-    Style style;
-    style.getOrCreate<LineSymbol>()->stroke()->color() = Color::Yellow;
+    Style style = measureTool->getLineStyle();
+    style.getOrCreate<LineSymbol>()->stroke()->color() = Color::Red;
+    style.getOrCreate<LineSymbol>()->stroke()->width() = 4.0f;
     measureTool->setLineStyle(style);
 
     //Add a checkbox to control if we are doing path based measurement or just point to point
@@ -174,10 +178,12 @@ main(int argc, char** argv)
     mode->addEventHandler( new ToggleModeHandler(measureTool));
     grid->setControl( 1, 2, mode);
 
+    //Add a mouse coords readout:
+    LabelControl* mouseLabel = new LabelControl();
+    grid->setControl( 0, 3, new LabelControl("Mouse:"));
+    grid->setControl( 1, 3, mouseLabel );
+    viewer.addEventHandler(new MouseCoordsTool(mapNode, mouseLabel) );
 
-    
-
-   
     viewer.setSceneData( root );
 
     // add some stock OSG handlers:
diff --git a/src/applications/osgearth_occlusionculling/CMakeLists.txt b/src/applications/osgearth_occlusionculling/CMakeLists.txt
new file mode 100644
index 0000000..5ca6538
--- /dev/null
+++ b/src/applications/osgearth_occlusionculling/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_occlusionculling.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_occlusionculling)
\ No newline at end of file
diff --git a/src/applications/osgearth_occlusionculling/osgearth_occlusionculling.cpp b/src/applications/osgearth_occlusionculling/osgearth_occlusionculling.cpp
new file mode 100644
index 0000000..9b627d1
--- /dev/null
+++ b/src/applications/osgearth_occlusionculling/osgearth_occlusionculling.cpp
@@ -0,0 +1,142 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarth/MapNode>
+#include <osgEarth/ECEF>
+
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AnnotationEvents>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/ExampleResources>
+
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/ImageOverlay>
+#include <osgEarthAnnotation/ImageOverlayEditor>
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/RectangleNode>
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/Decluttering>
+
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/EventVisitor>
+
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Util;
+
+int
+usage( char** argv )
+{
+    OE_WARN << "Usage: " << argv[0] << " <earthfile>" << std::endl;
+    return -1;
+}
+
+
+//------------------------------------------------------------------
+
+
+int
+main(int argc, char** argv)
+{
+    osg::Group* root = new osg::Group();
+
+    // try to load an earth file.
+    osg::ArgumentParser arguments(&argc,argv);
+
+    osgViewer::Viewer viewer(arguments);
+
+    unsigned int numObjects = 200;
+    while (arguments.read("--count", numObjects)) {}
+
+    bool declutter = false;
+    if (arguments.read("--declutter")) declutter = true;
+    
+    // initialize the viewer:    
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+
+    // load an earth file and parse demo arguments
+    osg::Node* node = MapNodeHelper().load(arguments, &viewer);
+    if ( !node )
+        return usage(argv);
+
+    // find the map node that we loaded.
+    MapNode* mapNode = MapNode::findMapNode(node);
+    if ( !mapNode )
+        return usage(argv);
+
+    root->addChild( node );
+   
+    // Make a group for 2D items, and activate the decluttering engine. Decluttering
+    // will migitate overlap between elements that occupy the same screen real estate.
+    osg::Group* labelGroup = new osg::Group();
+    if (declutter)
+    {
+        Decluttering::setEnabled( labelGroup->getOrCreateStateSet(), true );
+    }
+    root->addChild( labelGroup );
+    
+    // set up a style to use for placemarks:
+    Style placeStyle;
+    placeStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+
+    // A lat/long SRS for specifying points.
+    const SpatialReference* geoSRS = mapNode->getMapSRS()->getGeographicSRS();
+
+    //--------------------------------------------------------------------
+
+    //Create a bunch of placemarks around Mt Rainer so we can actually get some elevation
+    {
+        osg::Image* pin = osgDB::readImageFile( "../data/placemark32.png" );
+
+        double centerLat =  46.840866;
+        double centerLon = -121.769846;
+        double height = 0.2;
+        double width = 0.2;
+        double minLat = centerLat - (height/2.0);
+        double minLon = centerLon - (width/2.0);
+
+        OE_NOTICE << "Placing " << numObjects << " placemarks" << std::endl;
+
+        for (unsigned int i = 0; i < numObjects; i++)
+        {
+            double lat = minLat + height * (rand() * 1.0)/(RAND_MAX-1);
+            double lon = minLon + width * (rand() * 1.0)/(RAND_MAX-1);        
+            PlaceNode* place = new PlaceNode(mapNode, GeoPoint(geoSRS, lon, lat), pin, "Placemark", placeStyle);
+            //Enable occlusion culling.  This will hide placemarks that are hidden behind terrain.
+            //This makes use of the OcclusionCullingCallback in CullingUtils.
+            place->setOcclusionCulling( true );
+            labelGroup->addChild( place );
+        }    
+    }
+
+    viewer.setSceneData( root );
+
+    viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_ocean/CMakeLists.txt b/src/applications/osgearth_ocean/CMakeLists.txt
deleted file mode 100644
index 06ee8bf..0000000
--- a/src/applications/osgearth_ocean/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_ocean.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_ocean)
\ No newline at end of file
diff --git a/src/applications/osgearth_ocean/osgearth_ocean.cpp b/src/applications/osgearth_ocean/osgearth_ocean.cpp
deleted file mode 100644
index a213e73..0000000
--- a/src/applications/osgearth_ocean/osgearth_ocean.cpp
+++ /dev/null
@@ -1,286 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#include <osgEarth/Notify>
-
-#include <osgDB/ReadFile>
-#include <osgGA/StateSetManipulator>
-#include <osgViewer/Viewer>
-#include <osgViewer/ViewerEventHandlers>
-
-#include <osgEarth/MapNode>
-#include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/OceanSurfaceNode>
-#include <osgEarthUtil/Controls>
-
-class MyGraphicsContext {
-    public:
-        MyGraphicsContext()
-        {
-            osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits;
-            traits->x = 0;
-            traits->y = 0;
-            traits->width = 1;
-            traits->height = 1;
-            traits->windowDecoration = false;
-            traits->doubleBuffer = false;
-            traits->sharedContext = 0;
-            traits->pbuffer = true;
-
-            _gc = osg::GraphicsContext::createGraphicsContext(traits.get());
-
-            if (!_gc)
-            {
-                traits->pbuffer = false;
-                _gc = osg::GraphicsContext::createGraphicsContext(traits.get());
-            }
-
-            if (_gc.valid()) 
-            {
-                _gc->realize();
-                _gc->makeCurrent();
-            }
-        }
-        
-        bool valid() const { return _gc.valid() && _gc->isRealized(); }
-        
-    private:
-        osg::ref_ptr<osg::GraphicsContext> _gc;
-};
-
-// build an on-screen menu
-static osg::Node* createMenu( osgViewer::View* view )
-{
-    using namespace osgEarth::Util::Controls;
-
-    ControlCanvas* canvas = ControlCanvas::get( view );
-
-    Grid* grid = new Grid();
-    grid->setBackColor( 0, 0, 0, 0.5 );
-    grid->setMargin( 5 );
-    grid->setChildSpacing( 3 );
-    grid->setVertAlign( Control::ALIGN_BOTTOM );
-    int row = 0;
-
-    grid->setControl( 1, row++, new LabelControl( "Ocean Demo", 18.0f, osg::Vec4(1,1,0,1) ) );
-    grid->setControl( 1, row++, new LabelControl( "Zoom in to the coastline to see ocean effects.", 14.0f, osg::Vec4(.6,.6,.6,1) ) );
-
-    grid->setControl( 0, row  , new LabelControl( "e" ) );
-    grid->setControl( 1, row++, new LabelControl( "toggle ocean effects" ) );
-    grid->setControl( 0, row  , new LabelControl( "m" ) );
-    grid->setControl( 1, row++, new LabelControl( "toggle MSL adjustment" ) );
-    grid->setControl( 0, row  , new LabelControl( "h/H" ) );
-    grid->setControl( 1, row++, new LabelControl( "inc/dec wave height" ) );
-    grid->setControl( 0, row  , new LabelControl( "p/P" ) );
-    grid->setControl( 1, row++, new LabelControl( "inc/dec wave period" ) );
-    grid->setControl( 0, row  , new LabelControl( "c/C" ) );
-    grid->setControl( 1, row++, new LabelControl( "inc/dec ocean modulation color" ) );
-    grid->setControl( 0, row  , new LabelControl( "a/A" ) );
-    grid->setControl( 1, row++, new LabelControl( "inc/dec shimmer effect period" ) );
-    grid->setControl( 0, row  , new LabelControl( "j/J" ) );
-    grid->setControl( 1, row++, new LabelControl( "inc/dec surface image size" ) );
-    grid->setControl( 0, row  , new LabelControl( "i" ) );
-    grid->setControl( 1, row++, new LabelControl( "toggle ocean mask inversion" ) );
-    grid->setControl( 0, row  , new LabelControl( "w" ) );
-    grid->setControl( 1, row++, new LabelControl( "toggle wireframe mode" ) );
-
-    canvas->addControl( grid );
-    return canvas;
-}
-
-// An event handler that will print out the elevation at the clicked point
-struct MyEventHandler : public osgGA::GUIEventHandler 
-{
-    MyEventHandler( osgEarth::Util::OceanSurfaceNode* ocean )
-        :_ocean(ocean) { }
-
-    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-    {
-        if ( ea.getEventType() == osgGA::GUIEventAdapter::KEYDOWN )
-        {
-            switch (ea.getKey())
-            {
-            case 'h':
-                {
-                    _ocean->setWaveHeight( _ocean->getWaveHeight() * 1.1 );
-                }
-                break;
-            case 'H':
-                {
-                    _ocean->setWaveHeight( _ocean->getWaveHeight() * 0.9 );
-                }
-                break;
-            case 'p':
-                {
-                    _ocean->setPeriod( _ocean->getPeriod() * 1.1 );
-                }
-                break;
-            case 'P':
-                {
-                    _ocean->setPeriod( _ocean->getPeriod() * 0.9 );
-                }
-                break;
-            case 'e':
-                {
-                    _ocean->setEnabled( !_ocean->getEnabled() );
-                }
-            case 'i':
-                {
-                    _ocean->setInvertMask( !_ocean->getInvertMask() );
-                }
-                break;
-            case 'C':
-                {
-                    osg::Vec4f color = _ocean->getModulationColor();
-                    color.a() = osg::clampBelow( color.a() + 0.1f, 1.0f );
-                    _ocean->setModulationColor( color );                        
-                }
-                break;
-            case 'c':
-                {
-                    osg::Vec4f color = _ocean->getModulationColor();
-                    color.a() = osg::clampAbove( color.a() - 0.1f, 0.0f );
-                    _ocean->setModulationColor( color );                        
-                }
-                break;
-            case 'A':
-                { 
-                    _ocean->setOceanAnimationPeriod(_ocean->getOceanAnimationPeriod() + 0.25);
-                }
-                break;
-            case 'a':
-                { 
-                    _ocean->setOceanAnimationPeriod(_ocean->getOceanAnimationPeriod() - 0.25);
-                }
-                break;
-            case 'J':
-                {
-                    _ocean->setOceanSurfaceImageSizeRadians( _ocean->getOceanSurfaceImageSizeRadians() * 1.5f);
-                }
-                break;
-            case 'j':
-                {
-                    _ocean->setOceanSurfaceImageSizeRadians( _ocean->getOceanSurfaceImageSizeRadians() * 0.5f);
-                }
-                break;
-			case 'm':
-				{
-					_ocean->setAdjustToMSL( !_ocean->getAdjustToMSL());
-				}
-				break;
-            }
-        }
-        return false;
-    }
-
-    osg::ref_ptr< osgEarth::Util::OceanSurfaceNode > _ocean;
-};
-
-typedef std::vector< osg::ref_ptr< osg::Image > > ImageList;
-
-osg::Image* make3DImage(const ImageList& images)
-{
-    MyGraphicsContext gc;
-    osg::notify(osg::NOTICE) << "Made graphic context " << std::endl;
-    /*for (unsigned int i = 0; i < images.size(); ++i)
-    {
-        images[i]->scaleImage(256, 256, 1);
-        osg::notify(osg::NOTICE) << "Scaled image " << i << std::endl;
-    }*/
-
-    osg::Image* image3D = new osg::Image;
-    image3D->allocateImage(images[0]->s(), images[0]->t(), images.size(),
-                           images[0]->getPixelFormat(), images[0]->getDataType());
-    
-    for (unsigned int i = 0; i < images.size(); ++i)
-    {
-        image3D->copySubImage(0, 0, i, images[i].get());
-    }
-    image3D->setInternalTextureFormat(images[0]->getInternalTextureFormat());
-    return image3D;
-}
-
-
-int usage( const std::string& msg )
-{
-    OE_NOTICE
-        << msg << std::endl
-        << "USAGE: osgearth_ocean [--mask-layer <layername>] [--invert-mask] <earthfile>" << std::endl
-        << "(note: <layername> defaults to \"ocean\")" << std::endl;
-    return -1;
-}
-
-
-int main(int argc, char** argv)
-{
-    osg::ArgumentParser arguments(&argc,argv);
-
-    std::string maskLayerName = "ocean";
-    while( arguments.read("--mask-layer", maskLayerName) );
-
-    bool invertMask = arguments.isOption("--invert-mask");
-
-    osg::Group* group = new osg::Group;
-
-    osg::ref_ptr<osg::Node> loadedModel = osgDB::readNodeFiles(arguments);   
-    if ( !loadedModel.valid() )
-        return usage( "Failed to load an earth file." );
-
-    osgEarth::Util::OceanSurfaceNode* ocean = new osgEarth::Util::OceanSurfaceNode();
-
-    if ( !maskLayerName.empty() )
-    {
-        osgEarth::MapNode* mapNode = osgEarth::MapNode::findMapNode( loadedModel.get() );
-        if ( mapNode )
-        {
-            osgEarth::MapFrame mapf( mapNode->getMap() );
-            ocean->setOceanMaskImageLayer( mapf.getImageLayerByName( maskLayerName ) );
-        }
-    }
-
-    ocean->setInvertMask( !invertMask );
-
-    // install some water-surface images for an interesting shimmering effect:
-    ImageList waterImages;
-    waterImages.push_back( osgDB::readImageFile("../data/watersurface1.png") );
-    waterImages.push_back( osgDB::readImageFile("../data/watersurface2.png") );
-    waterImages.push_back( osgDB::readImageFile("../data/watersurface3.png") );
-    waterImages.push_back( osgDB::readImageFile("../data/watersurface4.png") );
-
-    osg::ref_ptr<osg::Image> waterImage = make3DImage(waterImages);    
-    ocean->setOceanSurfaceImage( waterImage.get() );
-
-    // Find the MapNode and add the ocean as a terrain decorator.
-    osgEarth::MapNode* mapNode = osgEarth::MapNode::findMapNode( loadedModel.get() );
-    mapNode->addTerrainDecorator( ocean );
-
-    // assemble the rest of the scene graph and go
-    osgViewer::Viewer viewer(arguments);
-
-    group->addChild( loadedModel.get() );
-    group->addChild( createMenu(&viewer) );
-    viewer.setSceneData(group);
-    
-    viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator() );
-
-    viewer.addEventHandler(new MyEventHandler(ocean));
-    viewer.addEventHandler( new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()) );
-    viewer.addEventHandler(new osgViewer::StatsHandler);
-
-    return viewer.run();
-}
diff --git a/src/applications/osgearth_overlayviewer/CMakeLists.txt b/src/applications/osgearth_overlayviewer/CMakeLists.txt
new file mode 100644
index 0000000..bb2802a
--- /dev/null
+++ b/src/applications/osgearth_overlayviewer/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_overlayviewer.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_overlayviewer)
diff --git a/src/applications/osgearth_overlayviewer/osgearth_overlayviewer.cpp b/src/applications/osgearth_overlayviewer/osgearth_overlayviewer.cpp
new file mode 100644
index 0000000..053eb53
--- /dev/null
+++ b/src/applications/osgearth_overlayviewer/osgearth_overlayviewer.cpp
@@ -0,0 +1,193 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osg/Depth>
+#include <osg/LineWidth>
+#include <osgGA/StateSetManipulator>
+#include <osgViewer/CompositeViewer>
+#include <osgEarth/OverlayDecorator>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/Controls>
+
+#define LC "[viewer] "
+
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Symbology;
+
+//------------------------------------------------------------------------
+
+static CheckBoxControl* s_cameraCheck;
+static CheckBoxControl* s_overlayCheck;
+static CheckBoxControl* s_intersectionCheck;
+static CheckBoxControl* s_rttCheck;
+
+namespace
+{
+    void toggle(osg::Group* p, const std::string& name, bool onoff)
+    {
+        if (p->getNumChildren() > 1)
+        {
+            osg::Group* g = p->getChild(1)->asGroup();
+            for(unsigned i=0; i<g->getNumChildren(); ++i)
+            {
+                if ( g->getChild(i)->getName() == name )
+                {
+                    g->getChild(i)->setNodeMask( onoff ? ~0 : 0 );
+                    break;
+                }
+            }
+        }
+        else
+        {
+            OE_WARN << "No overlays to display / toggle." << std::endl;
+        }
+    }
+
+
+    struct Toggle : public ControlEventHandler
+    {
+        osg::Group* _g;
+        std::string _name;
+        Toggle(osg::Group* g, const std::string& name) : _g(g), _name(name) { }
+        void onValueChanged( Control* control, bool value )
+        {
+            toggle(_g, _name, value);
+        }
+    };
+
+
+    // it's not used by osgEarth, but you can copy this code into a viewer app and
+    // use it to visualize the various polyhedra created by the overlay decorator.
+    // see the end of OverlayDecorator::cull for the dump types.
+    struct PHDumper : public osgGA::GUIEventHandler
+    {
+        MapNode*    _mapNode;
+        osg::Group* _parent;
+        PHDumper(MapNode* mapNode, osg::Group* parent) : _mapNode(mapNode), _parent(parent)
+        {
+        }
+
+        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+        {
+            if ( ea.getEventType() == ea.FRAME )
+            {
+                osg::Node* dump = _mapNode->getOverlayDecorator()->getDump();
+                if ( !dump )
+                {
+                    _mapNode->getOverlayDecorator()->requestDump();
+                    aa.requestRedraw();
+                }
+                else
+                {
+                    dump->getOrCreateStateSet()->setAttributeAndModes(new osg::Depth(
+                        osg::Depth::LEQUAL, 0, 1, false), 1 | osg::StateAttribute::OVERRIDE);
+                    dump->getOrCreateStateSet()->setMode(GL_BLEND,1);
+                    dump->getOrCreateStateSet()->setAttributeAndModes(new osg::LineWidth(1.5f), 1);
+
+                    _parent->removeChildren(1, _parent->getNumChildren()-1);
+                    _parent->addChild( dump );
+
+                    toggle(_parent, "camera", s_cameraCheck->getValue());
+                    //toggle(_parent, "overlay", s_overlayCheck->getValue());
+                    toggle(_parent, "intersection", s_intersectionCheck->getValue());
+                    toggle(_parent, "rtt", s_rttCheck->getValue());
+
+                    aa.requestRedraw();
+                }
+            }
+            return false;
+        }
+    };
+}
+
+
+void
+setupOverlayView( osgViewer::View* view, osg::Group* parent, MapNode* mapNode )
+{
+
+    ControlCanvas* canvas = ControlCanvas::get(view, true);
+
+    VBox* v = canvas->addControl(new VBox());
+    v->setBackColor( Color(Color::Black,0.75) );
+    {
+        HBox* camBox = v->addControl(new HBox());
+        {
+            camBox->addControl(s_cameraCheck = new CheckBoxControl(true, new Toggle(parent,"camera")));
+            camBox->addControl(new LabelControl("Camera", Color("#00ff00")));
+        }
+        //HBox* overlayBox = v->addControl(new HBox());
+        //{
+        //    overlayBox->addControl(s_overlayCheck = new CheckBoxControl(false, new Toggle(parent,"overlay")));
+        //    overlayBox->addControl(new LabelControl("Overlay", Color("#00ffff")));
+        //}
+        HBox* isectBox = v->addControl(new HBox());
+        {
+            isectBox->addControl(s_intersectionCheck = new CheckBoxControl(true, new Toggle(parent,"intersection")));
+            isectBox->addControl(new LabelControl("Intersection",Color("#ff7f00")));
+        }
+        HBox* rttBox = v->addControl(new HBox());
+        {
+            rttBox->addControl(s_rttCheck = new CheckBoxControl(true, new Toggle(parent,"rtt")));
+            rttBox->addControl(new LabelControl("RTT", Color("#ffff00")));
+        }
+    }
+    
+    view->addEventHandler( new PHDumper(mapNode, parent) );
+}
+
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+
+    osgViewer::CompositeViewer viewer(arguments);
+    viewer.setThreadingModel( osgViewer::CompositeViewer::SingleThreaded );
+
+    osgViewer::View* mainView = new osgViewer::View();
+    mainView->getCamera()->setNearFarRatio(0.00002);
+    mainView->setCameraManipulator( new EarthManipulator() );
+    mainView->setUpViewInWindow( 50, 50, 600, 600 );
+    viewer.addView( mainView );
+
+    osgViewer::View* overlayView = new osgViewer::View();
+    overlayView->getCamera()->setNearFarRatio(0.00002);
+    overlayView->setCameraManipulator( new EarthManipulator() );
+    overlayView->setUpViewInWindow( 700, 50, 600, 600 );
+    overlayView->addEventHandler(new osgGA::StateSetManipulator(overlayView->getCamera()->getOrCreateStateSet()));
+    viewer.addView( overlayView );
+
+    osg::Node* node = MapNodeHelper().load( arguments, mainView );
+    if ( node )
+    {
+        mainView->setSceneData( node );
+
+        osg::Group* group = new osg::Group();
+        group->addChild( MapNode::findMapNode(node) );
+        overlayView->setSceneData( group );
+
+        setupOverlayView( overlayView, group, MapNode::findMapNode(node) );
+
+        return viewer.run();
+    }
+    else return -1;
+}
diff --git a/src/applications/osgearth_package/CMakeLists.txt b/src/applications/osgearth_package/CMakeLists.txt
new file mode 100644
index 0000000..94a6927
--- /dev/null
+++ b/src/applications/osgearth_package/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_package.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_package)
\ No newline at end of file
diff --git a/src/applications/osgearth_package/osgearth_package.cpp b/src/applications/osgearth_package/osgearth_package.cpp
new file mode 100644
index 0000000..15723ec
--- /dev/null
+++ b/src/applications/osgearth_package/osgearth_package.cpp
@@ -0,0 +1,333 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osg/io_utils>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <osgDB/WriteFile>
+
+#include <osgEarth/Common>
+#include <osgEarth/Map>
+#include <osgEarth/MapNode>
+#include <osgEarth/Registry>
+#include <osgEarth/StringUtils>
+#include <osgEarth/HTTPClient>
+#include <osgEarthUtil/TMSPackager>
+#include <osgEarthDrivers/tms/TMSOptions>
+
+#include <iostream>
+#include <sstream>
+#include <iterator>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Drivers;
+
+#define LC "[osgearth_package] "
+
+
+/** Prints an error message, usage information, and returns -1. */
+int
+usage( const std::string& msg = "" )
+{
+    if ( !msg.empty() )
+    {
+        std::cout << msg << std::endl;
+    }
+
+    std::cout
+        << std::endl
+        << "USAGE: osgearth_package <earth_file>" << std::endl
+        << std::endl
+        << "         --tms                              : make a TMS repo\n"
+        << "            <earth_file>                    : earth file defining layers to export (requied)\n"
+        << "            --out <path>                    : root output folder of the TMS repo (required)\n"
+        << "            [--bounds xmin ymin xmax ymax]* : bounds to package (in map coordinates; default=entire map)\n"
+        << "            [--max-level <num>]             : max LOD level for tiles (all layers; default=5)\n"
+        << "            [--out-earth <earthfile>]       : export an earth file referencing the new repo\n"
+        << "            [--ext <extension>]             : overrides the image file extension (e.g. jpg)\n"
+        << "            [--overwrite]                   : overwrite existing tiles\n"
+        << "            [--keep-empties]                : writes out fully transparent image tiles (normally discarded)\n"
+#if 0
+        << std::endl
+        << "         --tfs                   : make a TFS repo" << std::endl
+        << "            [--out  <path>]      : root output folder of the TFS repo" << std::endl
+        << "            [--sort <attr>]      : name of attribute by which to sort features" << std::endl
+        << "            [--max  <num> ]      : target maximum # of features per tile" << std::endl
+#endif
+        << std::endl
+        << "         [--quiet]               : suppress progress output" << std::endl;
+
+    return -1;
+}
+
+
+/** Prints a message and returns a non-error return code. */
+int
+message( const std::string& msg )
+{
+    if ( !msg.empty() )
+    {
+        std::cout << msg << std::endl << std::endl;
+    }
+    return 0;
+}
+
+
+/** Finds an argument with the specified extension. */
+std::string
+findArgumentWithExtension( osg::ArgumentParser& args, const std::string& ext )
+{
+    for( int i=0; i<args.argc(); ++i )
+    {
+        std::string arg( args.argv()[i] );
+        if ( endsWith( toLower(trim(arg)), ".earth" ) )
+            return arg;
+    }
+    return "";
+}
+
+
+/** Packages an image layer as a TMS folder. */
+int
+makeTMS( osg::ArgumentParser& args )
+{
+    // see if the user wants to override the type extension (imagery only)
+    std::string extension;
+    args.read( "--ext", extension );
+
+    // verbosity?
+    bool verbose = !args.read( "--quiet" );
+
+    // find a .earth file on the command line
+    std::string earthFile = findArgumentWithExtension(args, ".earth");
+    if ( earthFile.empty() )
+        return usage( "Missing required .earth file" );
+
+    // folder to which to write the TMS archive.
+    std::string rootFolder;
+    if ( !args.read( "--out", rootFolder ) )
+        rootFolder = Stringify() << earthFile << ".tms_repo";
+
+    // whether to overwrite existing tile files
+    bool overwrite = false;
+    if ( args.read("--overwrite") )
+        overwrite = true;
+
+    // write out an earth file
+    std::string outEarth;
+    args.read("--out-earth", outEarth);
+
+    std::vector< Bounds > bounds;
+    // restrict packaging to user-specified bounds.    
+    double xmin=DBL_MAX, ymin=DBL_MAX, xmax=DBL_MIN, ymax=DBL_MIN;
+    while (args.read("--bounds", xmin, ymin, xmax, ymax ))
+    {        
+        Bounds b;
+        b.xMin() = xmin, b.yMin() = ymin, b.xMax() = xmax, b.yMax() = ymax;
+        bounds.push_back( b );
+    }
+
+    // max level to which to generate
+    unsigned maxLevel = ~0;
+    args.read( "--max-level", maxLevel );
+
+    // whether to keep 'empty' tiles
+    bool keepEmpties = args.read("--keep-empties");    
+
+    // load up the map
+    osg::ref_ptr<MapNode> mapNode = MapNode::load( args );
+    if ( !mapNode.valid() )
+        return usage( "Failed to load a valid .earth file" );
+
+    // create a folder for the output
+    osgDB::makeDirectory(rootFolder);
+    if ( !osgDB::fileExists(rootFolder) )
+        return usage("Failed to create root output folder" );
+
+    Map* map = mapNode->getMap();
+
+    // fire up a packager:
+    TMSPackager packager( map->getProfile() );
+
+    packager.setVerbose( verbose );
+    packager.setOverwrite( overwrite );
+    packager.setKeepEmptyImageTiles( keepEmpties );
+
+    if ( maxLevel != ~0 )
+        packager.setMaxLevel( maxLevel );
+
+    if (bounds.size() > 0)
+    {
+        for (unsigned int i = 0; i < bounds.size(); ++i)
+        {
+            Bounds b = bounds[i];            
+            if ( b.isValid() )
+                packager.addExtent( GeoExtent(map->getProfile()->getSRS(), b) );
+        }
+    }    
+
+    
+    // new map for an output earth file if necessary.
+    osg::ref_ptr<Map> outMap = 0L;
+    if ( !outEarth.empty() )
+    {
+        // copy the options from the source map first
+        outMap = new Map(map->getInitialMapOptions());
+    }
+
+    // establish the output path of the earth file, if applicable:
+    std::string outEarthFile = osgDB::concatPaths(rootFolder, osgDB::getSimpleFileName(outEarth));
+
+    // package any image layers that are enabled:
+    ImageLayerVector imageLayers;
+    map->getImageLayers( imageLayers );
+
+    unsigned counter = 0;
+    
+    for( ImageLayerVector::iterator i = imageLayers.begin(); i != imageLayers.end(); ++i, ++counter )
+    {
+        ImageLayer* layer = i->get();
+        if ( layer->getImageLayerOptions().enabled() == true )
+        {
+            std::string layerFolder = toLegalFileName( layer->getName() );
+            if ( layerFolder.empty() )
+                layerFolder = Stringify() << "image_layer_" << counter;
+
+            if ( verbose )
+            {
+                OE_NOTICE << LC << "Packaging image layer \"" << layerFolder << "\"" << std::endl;
+            }
+
+            std::string layerRoot = osgDB::concatPaths( rootFolder, layerFolder );
+            TMSPackager::Result r = packager.package( layer, layerRoot, extension );
+            if ( r.ok )
+            {
+                // save to the output map if requested:
+                if ( outMap.valid() )
+                {
+                    // new TMS driver info:
+                    TMSOptions tms;
+                    tms.url() = URI(
+                        osgDB::concatPaths(layerFolder, "tms.xml"),
+                        outEarthFile );
+
+                    ImageLayerOptions layerOptions( layer->getName(), tms );
+                    layerOptions.mergeConfig( layer->getInitialOptions().getConfig(true) );
+                    layerOptions.cachePolicy() = CachePolicy::NO_CACHE;
+
+                    outMap->addImageLayer( new ImageLayer(layerOptions) );
+                }
+            }
+            else
+            {
+                OE_WARN << LC << r.message << std::endl;
+            }
+        }
+        else if ( verbose )
+        {
+            OE_NOTICE << LC << "Skipping disabled layer \"" << layer->getName() << "\"" << std::endl;
+        }
+    }
+
+    // package any elevation layers that are enabled:
+    counter = 0;
+    ElevationLayerVector elevationLayers;
+    map->getElevationLayers( elevationLayers );
+
+    for( ElevationLayerVector::iterator i = elevationLayers.begin(); i != elevationLayers.end(); ++i, ++counter )
+    {
+        ElevationLayer* layer = i->get();
+        if ( layer->getElevationLayerOptions().enabled() == true )
+        {
+            std::string layerFolder = toLegalFileName( layer->getName() );
+            if ( layerFolder.empty() )
+                layerFolder = Stringify() << "elevation_layer_" << counter;
+
+            if ( verbose )
+            {
+                OE_NOTICE << LC << "Packaging elevation layer \"" << layerFolder << "\"" << std::endl;
+            }
+
+            std::string layerRoot = osgDB::concatPaths( rootFolder, layerFolder );
+            TMSPackager::Result r = packager.package( layer, layerRoot );
+
+            if ( r.ok )
+            {
+                // save to the output map if requested:
+                if ( outMap.valid() )
+                {
+                    // new TMS driver info:
+                    TMSOptions tms;
+                    tms.url() = URI(
+                        osgDB::concatPaths(layerFolder, "tms.xml"),
+                        outEarthFile );
+
+                    ElevationLayerOptions layerOptions( layer->getName(), tms );
+                    layerOptions.mergeConfig( layer->getInitialOptions().getConfig(true) );
+                    layerOptions.cachePolicy() = CachePolicy::NO_CACHE;
+
+                    outMap->addElevationLayer( new ElevationLayer(layerOptions) );
+                }
+            }
+            else
+            {
+                OE_WARN << LC << r.message << std::endl;
+            }
+        }
+        else if ( verbose )
+        {
+            OE_NOTICE << LC << "Skipping disabled layer \"" << layer->getName() << "\"" << std::endl;
+        }
+    }
+
+    // Finally, write an earth file if requested:
+    if ( outMap.valid() )
+    {
+        MapNodeOptions outNodeOptions = mapNode->getMapNodeOptions();
+        osg::ref_ptr<MapNode> outMapNode = new MapNode(outMap.get(), outNodeOptions);
+        if ( !osgDB::writeNodeFile(*outMapNode.get(), outEarthFile) )
+        {
+            OE_WARN << LC << "Error writing earth file to \"" << outEarthFile << "\"" << std::endl;
+        }
+        else if ( verbose )
+        {
+            OE_NOTICE << LC << "Wrote earth file to \"" << outEarthFile << "\"" << std::endl;
+        }
+    }
+
+    return 0;
+}
+
+/**
+ * Data packaging tool for osgEarth.
+ */
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser args(&argc,argv);
+
+    HTTPClient::setUserAgent( "osgearth_package/2.2" );
+
+    if ( args.read("--tms") )
+        return makeTMS(args);
+
+    else
+        return usage();
+}
diff --git a/src/applications/osgearth_qt/CMakeLists.txt b/src/applications/osgearth_qt/CMakeLists.txt
new file mode 100644
index 0000000..f4a735c
--- /dev/null
+++ b/src/applications/osgearth_qt/CMakeLists.txt
@@ -0,0 +1,37 @@
+INCLUDE( ${QT_USE_FILE} )
+
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} ${QT_INCLUDES})
+
+SET(MOC_HDRS
+    DemoMainWindow
+)
+
+# Qt resource files
+set(LIB_QT_RCS
+    images.qrc
+)
+
+QT4_ADD_RESOURCES( LIB_RC_SRCS ${LIB_QT_RCS} )
+
+QT4_WRAP_CPP( MOC_SRCS ${MOC_HDRS} OPTIONS "-f" )
+
+SET(TARGET_H
+    DemoMainWindow
+    ${LIB_QT_RCS}
+)
+
+SET(TARGET_SRC
+    ${MOC_SRCS}
+    ${LIB_RC_SRCS}
+    osgearth_qt.cpp
+)
+
+SET(TARGET_ADDED_LIBRARIES
+    osgEarthQt
+    ${QT_QTCORE_LIBRARY}
+    ${QT_QTGUI_LIBRARY}
+    ${QT_QTOPENGL_LIBRARY}
+)
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_qt)
diff --git a/src/applications/osgearth_qt/DemoMainWindow b/src/applications/osgearth_qt/DemoMainWindow
new file mode 100644
index 0000000..c063ef4
--- /dev/null
+++ b/src/applications/osgearth_qt/DemoMainWindow
@@ -0,0 +1,220 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/AnnotationToolbar>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/MultiViewerWidget>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/MapCatalogWidget>
+#include <osgEarthQt/TerrainProfileWidget>
+#include <osgEarthQt/ViewerWidget>
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/ScaleDecoration>
+#include <osgEarthDrivers/gdal/GDALOptions>
+#include <osgEarth/GeoData>
+
+#include <QAction>
+#include <QDockWidget>
+#include <QtGui>
+#include <QMainWindow>
+#include <QToolBar>
+
+
+class DemoMainWindow : public QMainWindow
+{
+    Q_OBJECT
+
+public:
+
+    DemoMainWindow(osgEarth::QtGui::DataManager* manager, osgEarth::MapNode* mapNode, osg::Group* annotationRoot)
+        : _manager(manager), _mapNode(mapNode), _annoRoot(annotationRoot), _layerAdded(false), _terrainProfileDock(0L), _viewerWidget(0L), _compositeViewerWidget(0L)
+    {
+        initUi(); 
+    }
+
+    void setViewerWidget(osgEarth::QtGui::ViewerWidget* viewerWidget)
+    {
+        setCentralWidget(viewerWidget);
+        _viewerWidget = viewerWidget;
+
+        _views.clear();
+        _viewerWidget->getViews( _views );
+
+        _annotationToolbar->setActiveViews(_views);
+    }
+
+    void setViewerWidget(osgEarth::QtGui::MultiViewerWidget* viewerWidget, const osgEarth::QtGui::ViewVector& views)
+    {
+        setCentralWidget(viewerWidget);
+        _compositeViewerWidget = viewerWidget;
+
+        _views.clear();
+        _views.insert(_views.end(), views.begin(), views.end());
+
+        _annotationToolbar->setActiveViews(_views);
+    }
+
+    void setTerrainProfileWidget(osgEarth::QtGui::TerrainProfileWidget* widget)
+    {
+        if (!_terrainProfileDock)
+        {
+            _terrainProfileDock = new QDockWidget;
+            _terrainProfileDock->setAllowedAreas(Qt::BottomDockWidgetArea);
+            _terrainProfileDock->setFeatures(QDockWidget::NoDockWidgetFeatures);
+            addDockWidget(Qt::BottomDockWidgetArea, _terrainProfileDock);
+            _terrainProfileDock->setVisible(_terrainProfileAction->isChecked());
+        }
+
+        _terrainProfileDock->setWidget(widget);
+    }
+
+    private slots:
+
+        void addRemoveLayer()
+        {
+            if (!_testLayer.valid())
+            {
+                osgEarth::Drivers::GDALOptions layerOpt;
+                layerOpt.url() = osgEarth::URI("../data/nyc-inset-wgs84.tif");
+                _testLayer = new osgEarth::ImageLayer(osgEarth::ImageLayerOptions("ny_inset", layerOpt));
+            }
+
+            if (!_layerAdded)
+            {
+                _manager->map()->addImageLayer(_testLayer.get());
+                _layerAdded = true;
+                _addRemoveLayerAction->setText(tr("&Remove Layer"));
+                _addRemoveLayerAction->setToolTip("Remove an image layer");
+            }
+            else
+            {
+                _manager->map()->removeImageLayer(_testLayer.get());
+                _layerAdded = false;
+                _addRemoveLayerAction->setText(tr("&Add Layer"));
+                _addRemoveLayerAction->setToolTip("Add an image layer");
+            }
+        }
+
+    void addAnnotation()
+    {
+        osgEarth::Annotation::PlaceNode* annotation = new osgEarth::Annotation::PlaceNode(
+            _mapNode.get(), 
+            osgEarth::GeoPoint(_mapNode->getMapSRS(), -74.0, 40.714),
+            osgDB::readImageFile("../data/placemark32.png"),
+            "New York");
+
+        osgEarth::Annotation::AnnotationData* annoData = new osgEarth::Annotation::AnnotationData();
+        annoData->setName("New York");
+        annoData->setViewpoint(osgEarth::Viewpoint(osg::Vec3d(-74, 40.714, 0), 0.0, -90.0, 1e5));
+        annotation->setAnnotationData(annoData);
+
+        annotation->installDecoration("selected", new osgEarth::Annotation::ScaleDecoration(2.0f));
+
+        _manager->addAnnotation(annotation, _annoRoot.get());
+
+        _addAnnotationAction->setDisabled(true);
+    }
+
+    void terrainProfileToggled(bool checked)
+    {
+        if (_terrainProfileDock)
+            _terrainProfileDock->setVisible(checked);
+    }
+
+protected:
+
+    void closeEvent(QCloseEvent *event)
+    {
+        if (_viewerWidget)
+        {
+            //_viewerWidget->getViewer()->setSceneData(0);
+            //_viewerWidget->getViewer()->frame();
+            _viewerWidget->getViewer()->setDone(true);
+        }
+
+        if (_compositeViewerWidget)
+        {
+            _compositeViewerWidget/*->getViewer()*/->setDone(true);
+        }
+
+        event->accept();
+    }
+
+private:
+
+    void initUi()
+    {
+        setWindowTitle(tr("osgEarth Qt"));
+        //setWindowIcon(QIcon(":/resources/images/pmicon32.png"));
+
+        createActions();
+        createToolbars();
+    }
+
+	void createActions()
+    {
+        _addRemoveLayerAction = new QAction(tr("&Add Layer"), this);
+        _addRemoveLayerAction->setToolTip(tr("Add an image layer"));
+        connect(_addRemoveLayerAction, SIGNAL(triggered()), this, SLOT(addRemoveLayer()));
+        _addRemoveLayerAction->setDisabled(!_manager.valid());
+
+        _addAnnotationAction = new QAction(/*QIcon(":/images/open.png"),*/ tr("&Add Annotation"), this);
+        _addAnnotationAction->setToolTip(tr("Add an annotation"));
+        connect(_addAnnotationAction, SIGNAL(triggered()), this, SLOT(addAnnotation()));
+        _addAnnotationAction->setDisabled(!_manager.valid() || !_mapNode.valid() || !_annoRoot.valid());
+
+        _terrainProfileAction = new QAction(QIcon(":/images/terrain_profile.png"), tr(""), this);
+        _terrainProfileAction->setToolTip(tr("Terrain Profile Tool"));
+        _terrainProfileAction->setCheckable(true);
+        connect(_terrainProfileAction, SIGNAL(toggled(bool)), this, SLOT(terrainProfileToggled(bool)));
+    }
+
+	void createToolbars()
+    {
+        _fileToolbar = addToolBar(tr("File Toolbar"));
+        _fileToolbar->setObjectName(tr("FILE_TOOLBAR"));
+        _fileToolbar->setIconSize(QSize(24, 24));
+        _fileToolbar->addAction(_addRemoveLayerAction);
+        _fileToolbar->addAction(_addAnnotationAction);
+        _fileToolbar->addSeparator();
+        _fileToolbar->addAction(_terrainProfileAction);
+
+        _annotationToolbar = new osgEarth::QtGui::AnnotationToolbar(_annoRoot, _mapNode, _manager);
+        addToolBar(_annotationToolbar);
+    }
+	
+    osg::ref_ptr<osgEarth::QtGui::DataManager> _manager;
+    osg::ref_ptr<osgEarth::MapNode> _mapNode;
+    osg::ref_ptr<osg::Group> _annoRoot;
+    osg::ref_ptr<osgEarth::ImageLayer> _testLayer;
+    osgEarth::QtGui::ViewerWidget* _viewerWidget;
+    osgEarth::QtGui::MultiViewerWidget* _compositeViewerWidget;
+    //osg::ref_ptr<osgEarth::QtGui::ViewerWidget> _viewerWidget;
+    //osg::ref_ptr<osgEarth::QtGui::MultiViewerWidget> _compositeViewerWidget;
+    osgEarth::QtGui::AnnotationToolbar* _annotationToolbar;
+    osgEarth::QtGui::ViewVector _views;
+    bool _layerAdded;
+    QAction *_addRemoveLayerAction;
+    QAction *_addAnnotationAction;
+    QAction *_terrainProfileAction;
+    QToolBar *_fileToolbar;
+    QDockWidget *_terrainProfileDock;
+};
diff --git a/src/applications/osgearth_qt/demo_style.qss b/src/applications/osgearth_qt/demo_style.qss
new file mode 100644
index 0000000..4c7fb02
--- /dev/null
+++ b/src/applications/osgearth_qt/demo_style.qss
@@ -0,0 +1,22 @@
+#oeFrameContainer, #oeFrameContainer * {
+  background-color: darkgrey;
+  color: white;
+} 
+
+#oeItem, #oeItem * {
+  background-color: lightgrey;
+  color: white;
+}
+
+#oeItemHeader, #oeItemHeader * {
+  background-color: orange;
+  color: white;
+} 
+
+#oeDropTarget, #oeDropTarget * {
+  background: qlineargradient(x1:0 y1:0, x2:0 y2:1, stop:0 orange, stop:1 lightgrey);
+}
+
+QTreeView::item::has-children {
+  background-color: orange;
+}
\ No newline at end of file
diff --git a/src/applications/osgearth_qt/images.qrc b/src/applications/osgearth_qt/images.qrc
new file mode 100644
index 0000000..f46f77f
--- /dev/null
+++ b/src/applications/osgearth_qt/images.qrc
@@ -0,0 +1,5 @@
+<RCC>
+    <qresource prefix="/">
+        <file>images/terrain_profile.png</file>
+    </qresource>
+</RCC>
diff --git a/src/applications/osgearth_qt/images/terrain_profile.png b/src/applications/osgearth_qt/images/terrain_profile.png
new file mode 100644
index 0000000..a4524c3
Binary files /dev/null and b/src/applications/osgearth_qt/images/terrain_profile.png differ
diff --git a/src/applications/osgearth_qt/osgearth_qt.cpp b/src/applications/osgearth_qt/osgearth_qt.cpp
new file mode 100644
index 0000000..98a3a41
--- /dev/null
+++ b/src/applications/osgearth_qt/osgearth_qt.cpp
@@ -0,0 +1,431 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/MapNode>
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/ScaleDecoration>
+#include <osgEarthAnnotation/TrackNode>
+#include <osgEarthQt/ViewerWidget>
+#include <osgEarthQt/MultiViewerWidget>
+#include <osgEarthQt/LayerManagerWidget>
+#include <osgEarthQt/MapCatalogWidget>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/AnnotationListWidget>
+#include <osgEarthQt/LOSControlWidget>
+#include <osgEarthQt/TerrainProfileWidget>
+#include <osgEarthUtil/AnnotationEvents>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/SkyNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthDrivers/ocean_surface/OceanSurface>
+
+#include <QAction>
+#include <QDockWidget>
+#include <QMainWindow>
+#include <QToolBar>
+#include <QtGui/QApplication>
+
+#include "DemoMainWindow"
+
+#ifdef Q_WS_X11
+#include <X11/Xlib.h>
+#endif
+
+
+using namespace osgEarth::Util;
+
+#define TRACK_ICON_URL    "../data/m2525_air.png"
+#define TRACK_ICON_SIZE   24
+#define TRACK_FIELD_NAME  "name"
+
+static osg::ref_ptr<osg::Group> s_annoGroup;
+static osgEarth::Util::SkyNode* s_sky=0L;
+static osgEarth::Drivers::OceanSurfaceNode* s_ocean=0L;
+
+//------------------------------------------------------------------
+
+int
+usage( const std::string& msg )
+{
+    OE_NOTICE << msg << std::endl;
+    OE_NOTICE << std::endl;
+    OE_NOTICE << "USAGE: osgearth_qt [options] file.earth" << std::endl;
+    OE_NOTICE << "   --multi n               : use a multi-pane viewer with n initial views" << std::endl;
+    OE_NOTICE << "   --stylesheet filename   : optional Qt stylesheet" << std::endl;
+    OE_NOTICE << "   --run-on-demand         : use the OSG ON_DEMAND frame scheme" << std::endl;
+    OE_NOTICE << "   --tracks                : create some moving track data" << std::endl;
+        
+    return -1;
+}
+
+//------------------------------------------------------------------
+
+/**
+ * Event handler that processes events fired from the
+ * AnnotationEventCallback
+ */
+struct MyAnnoEventHandler : public AnnotationEventHandler
+{
+  MyAnnoEventHandler(osgEarth::QtGui::DataManager* manager) : _manager(manager) {}
+
+  void onClick( AnnotationNode* node, const EventArgs& details )
+  {
+    if (_manager.valid() && details.buttons == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+    {
+      if (details.modkeys & osgGA::GUIEventAdapter::MODKEY_CTRL)
+      {
+        if (_manager->isSelected(node))
+          _manager->removeSelectedAnnotation(node);
+        else
+          _manager->addSelectedAnnotation(node);
+      }
+      else
+      {
+        _manager->clearSelectedAnnotations();
+        _manager->addSelectedAnnotation(node);
+      }
+    }   
+  }
+
+
+  osg::ref_ptr<osgEarth::QtGui::DataManager> _manager;
+};
+
+//------------------------------------------------------------------
+// Methods for demo track simulation
+
+struct TrackSim : public osg::Referenced
+{
+  TrackSim(TrackNode* track, const osg::Vec3d& center, float radius, double time, osgEarth::MapNode* mapNode)
+    : _track(track), _mapNode(mapNode), _radius(radius), _time(time)
+  {
+    //Get the center point in geocentric
+    GeoPoint centerMap(mapNode->getMapSRS(), center, ALTMODE_ABSOLUTE);
+    centerMap.toWorld( _center, mapNode->getTerrain() );
+    //mapNode->getMap()->toWorldPoint( centerMap, _center );
+
+    _up = _center;
+    _up.normalize();
+
+    //Get the "side" vector
+    _side = _up ^ osg::Vec3d(0,0,1);
+  }
+
+  void update(double time)
+  {
+    double angle = (time / _time);
+    angle = (angle - (int)angle) * osg::PI * 2.0;
+
+    osg::Quat quat(angle, _up );
+    osg::Vec3d spoke = quat * (_side * _radius);
+    osg::Vec3d end = _center + spoke;
+
+    GeoPoint mapPos;
+    mapPos.fromWorld( _mapNode->getMapSRS(), end );
+    //_mapNode->getMap()->worldPointToMapPoint(end, mapPos);
+
+    _track->setPosition(mapPos);
+  }
+
+  TrackNode* _track;
+  osgEarth::MapNode* _mapNode;
+  osg::Vec3d _center, _side, _up;
+  float _radius;
+  double _time;
+};
+typedef std::vector< osg::ref_ptr<TrackSim> > TrackSimVector;
+
+/** Update operation that runs the simulators. */
+struct TrackSimUpdate : public osg::Operation
+{
+  TrackSimUpdate(TrackSimVector& sims) : osg::Operation("tracksim", true), _sims(sims) { }
+
+  void operator()(osg::Object* obj)
+  {
+    osg::View* view = dynamic_cast<osg::View*>(obj);
+    double t = view->getFrameStamp()->getSimulationTime();
+
+    for(TrackSimVector::iterator i = _sims.begin(); i != _sims.end(); ++i)
+      i->get()->update(t);
+  }
+
+  TrackSimVector& _sims;
+};
+
+TrackNode* createTrack(TrackNodeFieldSchema& schema, osg::Image* image, const std::string& name, MapNode* mapNode, const osg::Vec3d& center, double radius, double time, TrackSimVector& trackSims)
+{
+  TrackNode* track = new TrackNode(mapNode, GeoPoint(mapNode->getMapSRS(),center,ALTMODE_ABSOLUTE), image, schema);
+  track->setFieldValue(TRACK_FIELD_NAME, name);
+
+  AnnotationData* data = new AnnotationData();
+  data->setName(name);
+  data->setViewpoint(osgEarth::Viewpoint(center, 0.0, -90.0, 1e5));
+  track->setAnnotationData( data );
+
+  trackSims.push_back(new TrackSim(track, center, radius, time, mapNode));
+
+  return track;
+}
+
+void createTrackSchema(TrackNodeFieldSchema& schema)
+{
+    // draw the track name above the icon:
+    TextSymbol* nameSymbol = new TextSymbol();
+    nameSymbol->pixelOffset()->set( 0, 2+TRACK_ICON_SIZE/2 );
+    nameSymbol->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
+    nameSymbol->halo()->color() = Color::Black;
+    schema[TRACK_FIELD_NAME] = TrackNodeField(nameSymbol, false);
+}
+
+//------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    osg::DisplaySettings::instance()->setMinimumNumStencilBits(8);
+
+    std::string compNum;
+    bool composite = arguments.read("--multi", compNum);
+    int numViews = composite ? osgEarth::as<int>(compNum, 4) : 1;
+
+    std::string stylesheet;
+    bool styled = arguments.read("--stylesheet", stylesheet);
+
+    bool on_demand = arguments.read("--run-on-demand");
+
+    bool trackData = arguments.read("--tracks");
+
+    bool testUseExistingViewer = arguments.read("--use-existing");
+
+
+    // load the .earth file from the command line.
+    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+    if (!earthNode)
+        return usage( "Unable to load earth model." );
+ 
+
+    osg::Group* root = new osg::Group();
+    root->addChild( earthNode );
+
+    s_annoGroup = new osg::Group();
+    root->addChild( s_annoGroup );
+
+  #ifdef Q_WS_X11
+    XInitThreads();
+  #endif
+
+    QApplication app(argc, argv);
+
+    osg::ref_ptr<osgEarth::MapNode> mapNode = osgEarth::MapNode::findMapNode( earthNode );
+    osg::ref_ptr<osgEarth::QtGui::DataManager> dataManager = new osgEarth::QtGui::DataManager(mapNode.get());
+    DemoMainWindow appWin(dataManager.get(), mapNode.get(), s_annoGroup);
+
+    // install an event handler for picking and selection
+    AnnotationEventCallback* cb = new AnnotationEventCallback();
+    cb->addHandler(new MyAnnoEventHandler(dataManager.get()));
+    s_annoGroup->addEventCallback(cb);
+    
+    osgEarth::QtGui::ViewVector views;
+    osg::ref_ptr<osgViewer::ViewerBase> viewer;
+
+    // create viewer widget
+    if (composite)
+    {
+      osgEarth::QtGui::MultiViewerWidget* viewerWidget = new osgEarth::QtGui::MultiViewerWidget(root);
+
+      osgViewer::View* primary = viewerWidget->createViewWidget(root);
+      primary->getCamera()->addCullCallback(new osgEarth::Util::AutoClipPlaneCullCallback(mapNode));
+      views.push_back(primary);
+
+      for (int i=0; i < numViews - 1; i++)
+      {
+        osgViewer::View* view = viewerWidget->createViewWidget(root, primary);
+        view->getCamera()->addCullCallback(new osgEarth::Util::AutoClipPlaneCullCallback(mapNode));
+        views.push_back(view);
+      }
+
+      //viewerWidget->setGeometry(50, 50, 1024, 768);
+      appWin.setViewerWidget(viewerWidget, views);
+
+      viewer = viewerWidget;
+    }
+
+    else
+    {
+        osgEarth::QtGui::ViewerWidget* viewerWidget = 0L;
+
+        if ( testUseExistingViewer )
+        {
+            // tests: create a pre-existing viewer and install that in the widget.
+            osgViewer::Viewer* v = new osgViewer::Viewer();
+            v->setSceneData(root);
+            v->setThreadingModel(osgViewer::Viewer::DrawThreadPerContext);
+            v->setCameraManipulator(new osgEarth::Util::EarthManipulator());
+            viewerWidget = new osgEarth::QtGui::ViewerWidget(v);
+        }
+
+        else
+        {
+            // tests: implicity creating a viewer.
+            viewerWidget = new osgEarth::QtGui::ViewerWidget( root );
+        }
+
+      //osgEarth::QtGui::ViewerWidget* viewerWidget = new osgEarth::QtGui::ViewerWidget(root);
+      //viewerWidget->setGeometry(50, 50, 1024, 768);
+
+      viewerWidget->getViews( views );
+
+      for(osgEarth::QtGui::ViewVector::iterator i = views.begin(); i != views.end(); ++i )
+      {
+          i->get()->getCamera()->addCullCallback(new osgEarth::Util::AutoClipPlaneCullCallback(mapNode));
+      }
+      appWin.setViewerWidget(viewerWidget);
+
+      if (mapNode.valid())
+      {
+        const Config& externals = mapNode->externalConfig();
+
+        if (mapNode->getMap()->isGeocentric())
+        {
+          // Sky model.
+          Config skyConf = externals.child("sky");
+
+          double hours = skyConf.value("hours", 12.0);
+          s_sky = new osgEarth::Util::SkyNode(mapNode->getMap());
+          s_sky->setDateTime(2011, 3, 6, hours);
+          for(osgEarth::QtGui::ViewVector::iterator i = views.begin(); i != views.end(); ++i )
+              s_sky->attach( *i );
+          //s_sky->attach(viewerWidget->getViewer());
+          root->addChild(s_sky);
+
+          // Ocean surface.
+          if (externals.hasChild("ocean"))
+          {
+            s_ocean = new osgEarth::Drivers::OceanSurfaceNode(mapNode.get(), externals.child("ocean"));
+            if (s_ocean)
+              root->addChild(s_ocean);
+          }
+        }
+      }
+
+      viewer = viewerWidget->getViewer();
+    }
+
+    // activate "on demand" rendering if requested:
+    if ( on_demand )
+    {
+        viewer->setRunFrameScheme( osgViewer::ViewerBase::ON_DEMAND );
+        OE_NOTICE << "On-demand rendering activated" << std::endl;
+    }
+
+
+    TrackSimVector trackSims;
+    if ( trackData )
+    {
+        // create demo tracks
+        osg::ref_ptr<osg::Image> srcImage = osgDB::readImageFile(TRACK_ICON_URL);
+        osg::ref_ptr<osg::Image> image;
+        ImageUtils::resizeImage(srcImage.get(), TRACK_ICON_SIZE, TRACK_ICON_SIZE, image);
+
+        TrackNodeFieldSchema schema;
+        createTrackSchema(schema);
+        dataManager->addAnnotation(createTrack(schema, image, "Plane 1", mapNode.get(), osg::Vec3d(-121.463, 46.3548, 1500.71), 10000, 24, trackSims), s_annoGroup);
+        dataManager->addAnnotation(createTrack(schema, image, "Plane 2", mapNode.get(), osg::Vec3d(-121.656, 46.0935, 4133.06), 10000, 8, trackSims), s_annoGroup);
+        dataManager->addAnnotation(createTrack(schema, image, "Plane 3", mapNode.get(), osg::Vec3d(-121.321, 46.2589, 1390.09), 10000, 12, trackSims), s_annoGroup);
+
+        viewer->addUpdateOperation(new TrackSimUpdate(trackSims));
+    }
+
+
+    // create catalog widget and add as a docked widget to the main window
+    QDockWidget *catalogDock = new QDockWidget(QWidget::tr("Layers"));
+    catalogDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    osgEarth::QtGui::MapCatalogWidget* layerCatalog = new osgEarth::QtGui::MapCatalogWidget(dataManager.get(), osgEarth::QtGui::MapCatalogWidget::ALL_LAYERS);
+    layerCatalog->setActiveViews(views);
+    layerCatalog->setHideEmptyGroups(true);
+    catalogDock->setWidget(layerCatalog);
+    appWin.addDockWidget(Qt::LeftDockWidgetArea, catalogDock);
+
+
+    // create and dock an annotation list widget
+    QDockWidget *annoDock = new QDockWidget;
+    annoDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    osgEarth::QtGui::AnnotationListWidget* annoList = new osgEarth::QtGui::AnnotationListWidget(dataManager.get());
+    annoList->setActiveViews(views);
+    annoDock->setWidget(annoList);
+    appWin.addDockWidget(Qt::LeftDockWidgetArea, annoDock);
+
+
+    // create a second catalog widget for viewpoints
+    QDockWidget *vpDock = new QDockWidget;
+    vpDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    osgEarth::QtGui::MapCatalogWidget* vpCatalog = new osgEarth::QtGui::MapCatalogWidget(dataManager.get(), osgEarth::QtGui::MapCatalogWidget::VIEWPOINTS);
+    vpCatalog->setActiveViews(views);
+    vpDock->setWidget(vpCatalog);
+    appWin.addDockWidget(Qt::LeftDockWidgetArea, vpDock);
+
+
+    // create layer manager widget and add as a docked widget on the right
+    QDockWidget *layersDock = new QDockWidget(QWidget::tr("Image Layers"));
+    layersDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    osgEarth::QtGui::LayerManagerWidget* layerManager = new osgEarth::QtGui::LayerManagerWidget(dataManager.get(), osgEarth::QtGui::LayerManagerWidget::IMAGE_LAYERS);
+    layerManager->setActiveViews(views);
+    layersDock->setWidget(layerManager);
+    appWin.addDockWidget(Qt::RightDockWidgetArea, layersDock);
+
+
+    // create and dock a LOSControlWidget
+    QDockWidget *losDock = new QDockWidget;
+    losDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
+    osgEarth::QtGui::LOSControlWidget* losControl = new osgEarth::QtGui::LOSControlWidget(root, mapNode.get(), dataManager.get());
+    losControl->setActiveViews(views);
+    losDock->setWidget(losControl);
+    appWin.addDockWidget(Qt::RightDockWidgetArea, losDock);
+
+    // create terrain profile widget
+    osgEarth::QtGui::TerrainProfileWidget* terrainProfiler = new osgEarth::QtGui::TerrainProfileWidget(root, mapNode.get());
+    terrainProfiler->setActiveViews(views);
+    appWin.setTerrainProfileWidget(terrainProfiler);
+
+
+    // attempt to load .qss stylesheet if one was provided
+    if (styled)
+    {
+      QFile file(QString(stylesheet.c_str()));
+      if (file.exists())
+      {
+        file.open(QFile::ReadOnly);
+        QString qstylesheet = QLatin1String(file.readAll());
+        app.setStyleSheet(qstylesheet);
+        layerManager->setStyleSheet(qstylesheet);
+        annoList->setStyleSheet(qstylesheet);
+        losControl->setStyleSheet(qstylesheet);
+      }
+    }
+
+    appWin.setGeometry(100, 100, 1280, 800);
+    appWin.show();
+
+    return app.exec();
+}
diff --git a/src/applications/osgearth_qt_simple/CMakeLists.txt b/src/applications/osgearth_qt_simple/CMakeLists.txt
new file mode 100644
index 0000000..a0ac75c
--- /dev/null
+++ b/src/applications/osgearth_qt_simple/CMakeLists.txt
@@ -0,0 +1,28 @@
+INCLUDE( ${QT_USE_FILE} )
+
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} ${QT_INCLUDES})
+
+SET(MOC_HDRS
+)
+
+QT4_WRAP_CPP( MOC_SRCS ${MOC_HDRS} OPTIONS "-f" )
+
+SET(TARGET_H
+    ${LIB_QT_RCS}
+)
+
+SET(TARGET_SRC
+    ${MOC_SRCS}
+    ${LIB_RC_SRCS}
+    osgearth_qt_simple.cpp
+)
+
+SET(TARGET_ADDED_LIBRARIES
+    osgEarthQt
+    ${QT_QTCORE_LIBRARY}
+    ${QT_QTGUI_LIBRARY}
+    ${QT_QTOPENGL_LIBRARY}
+)
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_qt_simple)
diff --git a/src/applications/osgearth_qt_simple/osgearth_qt_simple.cpp b/src/applications/osgearth_qt_simple/osgearth_qt_simple.cpp
new file mode 100644
index 0000000..2431ea4
--- /dev/null
+++ b/src/applications/osgearth_qt_simple/osgearth_qt_simple.cpp
@@ -0,0 +1,87 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgViewer/CompositeViewer>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthQt/ViewerWidget>
+#include <QtGui/QApplication>
+#include <QtGui/QMainWindow>
+#include <QtGui/QStatusBar>
+
+#ifdef Q_WS_X11
+#include <X11/Xlib.h>
+#endif
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::QtGui;
+
+//------------------------------------------------------------------
+
+int
+usage( const std::string& msg )
+{
+    OE_NOTICE << msg << std::endl << std::endl;
+    OE_NOTICE << "USAGE: osgearth_qt_simple file.earth" << std::endl;
+        
+    return -1;
+}
+
+//------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits(8);
+
+
+    osgViewer::Viewer viewer(arguments);
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file
+    osg::Node* node = MapNodeHelper().load(arguments, &viewer);
+    if ( !node )
+        return usage( "Failed to load earth file." );
+
+    viewer.setSceneData( node );
+
+
+#ifdef Q_WS_X11
+    // required for multi-threaded viewer on linux:
+    XInitThreads();
+#endif
+
+
+    QApplication app(argc, argv);
+
+    QWidget* viewerWidget = new ViewerWidget( &viewer );
+    
+    QMainWindow win;
+    win.setCentralWidget( viewerWidget );
+    win.setGeometry(100, 100, 1024, 800);
+
+    win.statusBar()->showMessage(QString("Quite possibly the world's simplest osgEarthQt app."));
+
+    win.show();
+    app.exec();
+}
diff --git a/src/applications/osgearth_resources/CMakeLists.txt b/src/applications/osgearth_resources/CMakeLists.txt
deleted file mode 100644
index 411725c..0000000
--- a/src/applications/osgearth_resources/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_resources.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_resources)
\ No newline at end of file
diff --git a/src/applications/osgearth_resources/osgearth_resources.cpp b/src/applications/osgearth_resources/osgearth_resources.cpp
deleted file mode 100644
index c47ef6f..0000000
--- a/src/applications/osgearth_resources/osgearth_resources.cpp
+++ /dev/null
@@ -1,36 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/Notify>
-#include <osgEarthSymbology/ResourceLibrary>
-#include <osgEarth/XmlUtils>
-#include <osgEarth/Config>
-#include <fstream>
-
-using namespace osgEarth;
-using namespace osgEarth::Symbology;
-
-int
-main(int argc, char** argv)
-{
-    XmlDocument* xml = XmlDocument::load( URI("e:/data/osgearth_resources/US/catalog.xml") );
-    Config conf = xml->getConfig();
-
-    OE_NOTICE << conf.toString() << std::endl;
-}
diff --git a/src/applications/osgearth_seamless/CMakeLists.txt b/src/applications/osgearth_seamless/CMakeLists.txt
deleted file mode 100644
index 00fce75..0000000
--- a/src/applications/osgearth_seamless/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_seamless.cpp)
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_seamless)
diff --git a/src/applications/osgearth_seamless/osgearth_seamless.cpp b/src/applications/osgearth_seamless/osgearth_seamless.cpp
deleted file mode 100644
index 5028d7c..0000000
--- a/src/applications/osgearth_seamless/osgearth_seamless.cpp
+++ /dev/null
@@ -1,233 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/Notify>
-#include <osg/Shape>
-#include <osg/ShapeDrawable>
-#include <osg/Geode>
-#include <osg/PagedLOD>
-#include <osg/PolygonMode>
-#include <osg/AutoTransform>
-#include <osg/MatrixTransform>
-#include <osgText/Text>
-#include <osgGA/StateSetManipulator>
-#include <osgGA/GUIEventHandler>
-#include <osgViewer/Viewer>
-#include <osgViewer/ViewerEventHandlers>
-#include <osgUtil/LineSegmentIntersector>
-#include <osgEarth/MapNode>
-#include <osgEarth/FindNode>
-#include <osgEarthUtil/AutoClipPlaneHandler>
-#include <osgEarthUtil/EarthManipulator>
-#include <osgEarthDrivers/tms/TMSOptions>
-#include <osgEarthDrivers/engine_seamless/PatchInfo>
-#include <osgEarthDrivers/engine_seamless/SeamlessOptions>
-#include <sstream>
-
-// Print info about terrain rendered using the seamless engine. Copied
-// from osgearth_elevation.
-
-using namespace osgEarth::Drivers;
-
-static
-osg::MatrixTransform* createFlag()
-{
-    osg::Cylinder* c = new osg::Cylinder( osg::Vec3d(0,0,0), 2.0f, 250.f );
-    osg::Geode* g = new osg::Geode();
-    g->addDrawable( new osg::ShapeDrawable( c ) );
-    osgText::Text* text = new osgText::Text();
-    text->setCharacterSizeMode( osgText::Text::SCREEN_COORDS );
-    text->setCharacterSize( 72.f );
-    text->setBackdropType( osgText::Text::OUTLINE );
-    text->setText( "00000000000000" );
-    text->setAutoRotateToScreen( true );
-    text->setPosition( osg::Vec3d( 0, 0, 125 ) );
-    text->setDataVariance( osg::Object::DYNAMIC );
-    g->addDrawable( text );
-    osg::StateSet* ss = g->getOrCreateStateSet();
-    ss->setAttribute(new osg::PolygonMode(osg::PolygonMode::FRONT_AND_BACK,
-                                          osg::PolygonMode::FILL),
-                     osg::StateAttribute::ON | osg::StateAttribute::PROTECTED);
-    osg::AutoTransform* at = new osg::AutoTransform();
-    at->setAutoScaleToScreen( true );
-    at->addChild( g );
-    at->getOrCreateStateSet()->setMode( GL_LIGHTING, 0 );
-    osg::MatrixTransform* xf = new osg::MatrixTransform();
-    xf->addChild( at );
-    xf->setDataVariance( osg::Object::DYNAMIC );
-    return xf;
-}
-
-static void
-updateFlag(osg::MatrixTransform* xf, const osg::Matrix& mat,
-           const osgEarth::TileKey& key)
-{
-    osg::Geode* g = static_cast<osg::Geode*>( xf->getChild(0)->asGroup()->getChild(0) );
-    std::stringstream buf;
-    buf << key.getLevelOfDetail() << " " << key.getTileX() << " "
-        << key.getTileY();
-    std::string bufStr;
-    bufStr = buf.str();
-    static_cast<osgText::Text*>( g->getDrawable(1) )->setText( bufStr );
-    xf->setMatrix( mat );
-}
-
-// An event handler that will print out the elevation at the clicked point
-struct QueryTileHandler : public osgGA::GUIEventHandler 
-{
-    QueryTileHandler(osg::MatrixTransform* flag,
-                     const osgEarth::SpatialReference* srs)
-        : _mouseDown(false), _flag(flag), _srs(srs) { }
-
-    void update( float x, float y, osgViewer::View* view )
-    {
-        using namespace osg;
-        using namespace osgUtil;
-        using namespace osgEarth;
-        LineSegmentIntersector::Intersections results;
-        TileKey key(TileKey::INVALID);
-        if ( view->computeIntersections( x, y, results, 0x01 ) )
-        {
-            // find the first hit under the mouse:
-            LineSegmentIntersector::Intersection first
-                = *(results.begin());
-            for (NodePath::const_reverse_iterator itr = first.nodePath.rbegin(),
-                     end = first.nodePath.rend();
-                 itr != end;
-                 ++itr)
-            {
-                const PagedLOD* plod = dynamic_cast<const PagedLOD*>(*itr);
-                if (!plod)
-                    continue;
-                const seamless::PatchInfo* popt
-                    = dynamic_cast<const seamless::PatchInfo*>(
-                        plod->getDatabaseOptions());
-                if (!popt)
-                    continue;
-                key = popt->getTileKey();
-                break;
-            }
-
-            if (!key.valid())
-            {
-                OE_WARN << "Couldn't get tile key.\n";
-                return;
-            }
-            osg::Vec3d point = first.getWorldIntersectPoint();
-            
-            // transform it to map coordinates:
-            Matrixd coordFrame;
-            _srs->getEllipsoid()->computeLocalToWorldTransformFromXYZ(
-                point.x(), point.y(), point.z(), coordFrame);
-            updateFlag(_flag.get(), coordFrame, key);
-        }
-    }
-
-    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-    {
-        if ( ea.getEventType() == osgGA::GUIEventAdapter::MOVE )
-        {
-            osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
-            update( ea.getX(), ea.getY(), view );
-        }
-
-        return false;
-    }
-
-    bool _mouseDown;
-    osg::ref_ptr<osg::MatrixTransform> _flag;
-    osg::ref_ptr<const osgEarth::SpatialReference> _srs;
-};
-
-
-int main(int argc, char** argv)
-{
-    osg::ArgumentParser arguments(&argc,argv);
-
-    osgViewer::Viewer viewer(arguments);
-
-    // install the programmable manipulator.
-    osgEarth::Util::EarthManipulator* manip = new osgEarth::Util::EarthManipulator();
-    viewer.setCameraManipulator( manip );
-
-    osgEarth::MapNode* mapNode = NULL;
-
-    osg::Node* loadedNode = osgDB::readNodeFiles( arguments );
-    if (!loadedNode)
-    {
-        // load up a map with an elevation layer:
-        osgEarth::Map *map = new osgEarth::Map();
-
-        // Add some imagery
-        {
-            TMSOptions tms;
-            tms.url() = "http://demo.pelicanmapping.com/rmweb/data/bluemarble-tms/tms.xml";
-            map->addImageLayer( new osgEarth::ImageLayer( "BLUEMARBLE", tms ) );
-        }
-
-        // Add some elevation
-        {
-            TMSOptions tms;
-            tms.url() = "http://demo.pelicanmapping.com/rmweb/data/srtm30_plus_tms/tms.xml";
-            map->addElevationLayer( new osgEarth::ElevationLayer( "SRTM", tms ) );
-        }
-
-        MapNodeOptions nodeOptions;
-        nodeOptions.setTerrainOptions( osgEarth::Drivers::SeamlessOptions() );
-
-        mapNode = new osgEarth::MapNode( map, nodeOptions );
-    }
-    else
-    {
-        mapNode = findTopMostNodeOfType<osgEarth::MapNode>( loadedNode );
-    }
-
-    osg::Group* root = new osg::Group();
-
-    // The MapNode will render the Map object in the scene graph.
-    mapNode->setNodeMask( 0x01 );
-    root->addChild( mapNode );
-
-    manip->setNode(mapNode->getTerrainEngine());
-    if ( mapNode->getMap()->isGeocentric() )
-    {
-        manip->setHomeViewpoint( 
-            osgEarth::Util::Viewpoint( osg::Vec3d( -90, 0, 0 ), 0.0, -90.0, 5e7 ) );
-
-        // add a handler that will automatically calculate good clipping planes
-        viewer.addEventHandler( new osgEarth::Util::AutoClipPlaneHandler() );
-    }
-    // A flag so we can see where we clicked
-    osg::MatrixTransform* flag = createFlag();
-    flag->setNodeMask( 0x02 );
-    root->addChild( flag );
-
-    viewer.setSceneData( root );
-
-    // An event handler that will respond to mouse clicks:
-    viewer.addEventHandler(
-        new QueryTileHandler(flag, mapNode->getMap()->getProfile()->getSRS()));
-
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-
-    return viewer.run();
-}
diff --git a/src/applications/osgearth_seed/osgearth_seed.cpp b/src/applications/osgearth_seed/osgearth_seed.cpp
index 3f94f5c..20cb33b 100644
--- a/src/applications/osgearth_seed/osgearth_seed.cpp
+++ b/src/applications/osgearth_seed/osgearth_seed.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,12 +24,11 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Map>
+#include <osgEarth/Cache>
 #include <osgEarth/CacheSeed>
 #include <osgEarth/MapNode>
 #include <osgEarth/Registry>
 
-#include <osgEarth/Caching>
-
 #include <iostream>
 #include <sstream>
 #include <iterator>
@@ -77,13 +76,11 @@ usage( const std::string& msg )
         << "    --seed file.earth                   ; Seeds the cache in a .earth file"  << std::endl
         << "        [--min-level level]             ; Lowest LOD level to seed (default=0)" << std::endl
         << "        [--max-level level]             ; Highest LOD level to seed (defaut=highest available)" << std::endl
-        << "        [--bounds xmin ymin xmax ymax]  ; Geospatial bounding box to seed" << std::endl
+        << "        [--bounds xmin ymin xmax ymax]* ; Geospatial bounding box to seed (in map coordinates; default=entire map)" << std::endl
         << "        [--cache-path path]             ; Overrides the cache path in the .earth file" << std::endl
         << "        [--cache-type type]             ; Overrides the cache type in the .earth file" << std::endl
-        //<< std::endl
-        //<< "    --purge file.earth                  ; Purges cached data from the cache in a .earth file" << std::endl
-        //<< "        [--layer name]                  ; Named layer for which to purge the cache" << std::endl
-        //<< "        [--all]                         ; Purge all data from the cache" << std::endl
+        << std::endl
+        << "    --purge file.earth                  ; Purges a layer cache in a .earth file (interactive)" << std::endl
         << std::endl;
 
     return -1;
@@ -110,10 +107,16 @@ seed( osg::ArgumentParser& args )
     unsigned int maxLevel = 5;
     while (args.read("--max-level", maxLevel));
     
-    //Read the bounds
-    Bounds bounds(0, 0, 0, 0);
-    while (args.read("--bounds", bounds.xMin(), bounds.yMin(), bounds.xMax(), bounds.yMax()));
-    while (args.read("-b", bounds.xMin(), bounds.yMin(), bounds.xMax(), bounds.yMax()));
+
+    std::vector< Bounds > bounds;
+    // restrict packaging to user-specified bounds.    
+    double xmin=DBL_MAX, ymin=DBL_MAX, xmax=DBL_MIN, ymax=DBL_MIN;
+    while (args.read("--bounds", xmin, ymin, xmax, ymax ))
+    {        
+        Bounds b;
+        b.xMin() = xmin, b.yMin() = ymin, b.xMax() = xmax, b.yMax() = ymax;
+        bounds.push_back( b );
+    }    
 
     //Read the cache override directory
     std::string cachePath;
@@ -123,7 +126,7 @@ seed( osg::ArgumentParser& args )
     std::string cacheType;
     while (args.read("--cache-type", cacheType));
 
-    bool quiet = args.read("--quiet");
+    bool verbose = args.read("--verbose");
 
     //Read in the earth file.
     osg::ref_ptr<osg::Node> node = osgDB::readNodeFiles( args );
@@ -137,8 +140,14 @@ seed( osg::ArgumentParser& args )
     CacheSeed seeder;
     seeder.setMinLevel( minLevel );
     seeder.setMaxLevel( maxLevel );
-    seeder.setBounds( bounds );
-    if (!quiet)
+
+    for (unsigned int i = 0; i < bounds.size(); i++)
+    {
+        GeoExtent extent(mapNode->getMapSRS(), bounds[i]);
+        OE_DEBUG << "Adding extent " << extent.toString() << std::endl;
+        seeder.addExtent( extent );
+    }    
+    if (verbose)
     {
         seeder.setProgressCallback(new ConsoleProgressCallback);
     }
@@ -165,7 +174,8 @@ list( osg::ArgumentParser& args )
         return message( "Earth file does not contain a cache." );
 
     std::cout 
-        << "Cache config = " << cache->getCacheOptions().getConfig().toString() << std::endl;
+        << "Cache config: " << std::endl
+        << cache->getCacheOptions().getConfig().toJSON(true) << std::endl;
 
     MapFrame mapf( mapNode->getMap() );
 
@@ -173,21 +183,46 @@ list( osg::ArgumentParser& args )
     std::copy( mapf.imageLayers().begin(), mapf.imageLayers().end(), std::back_inserter(layers) );
     std::copy( mapf.elevationLayers().begin(), mapf.elevationLayers().end(), std::back_inserter(layers) );
 
-    for( TerrainLayerVector::const_iterator i =layers.begin(); i != layers.end(); ++i )
+    for( TerrainLayerVector::iterator i =layers.begin(); i != layers.end(); ++i )
     {
         TerrainLayer* layer = i->get();
-        const CacheSpec& spec = layer->getCacheSpec();
-        std::cout
-            << "Layer = \"" << layer->getName() << "\", cacheId = " << spec.cacheId() << std::endl;
+        TerrainLayer::CacheBinMetadata meta;
+
+        bool useMFP =
+            layer->getProfile() &&
+            layer->getProfile()->getSRS()->isSphericalMercator() &&
+            mapNode->getMapNodeOptions().getTerrainOptions().enableMercatorFastPath() == true;
+
+        const Profile* cacheProfile = useMFP ? layer->getProfile() : map->getProfile();
+
+        if ( layer->getCacheBinMetadata( cacheProfile, meta ) )
+        {
+            Config conf = meta.getConfig();
+            std::cout << "Layer \"" << layer->getName() << "\", cache metadata =" << std::endl
+                << conf.toJSON(true) << std::endl;
+        }
+        else
+        {
+            std::cout << "Layer \"" << layer->getName() << "\": no cache information" 
+                << std::endl;
+        }
     }
 
     return 0;
 }
 
+struct Entry
+{
+    bool                   _isImage;
+    std::string            _name;
+    osg::ref_ptr<CacheBin> _bin;
+};
+
+
 int
 purge( osg::ArgumentParser& args )
 {
-    return usage( "Sorry, but purge is not yet implemented." );
+    //return usage( "Sorry, but purge is not yet implemented." );
 
     osg::ref_ptr<osg::Node> node = osgDB::readNodeFiles( args );
     if ( !node.valid() )
@@ -198,8 +233,116 @@ purge( osg::ArgumentParser& args )
         return usage( "Input file was not a .earth file" );
 
     Map* map = mapNode->getMap();
-    const Cache* cache = map->getCache();
 
-    if ( !cache )
+    if ( !map->getCache() )
         return message( "Earth file does not contain a cache." );
+
+    std::vector<Entry> entries;
+
+
+    ImageLayerVector imageLayers;
+    map->getImageLayers( imageLayers );
+    for( ImageLayerVector::const_iterator i = imageLayers.begin(); i != imageLayers.end(); ++i )
+    {
+        ImageLayer* layer = i->get();
+
+        bool useMFP =
+            layer->getProfile() &&
+            layer->getProfile()->getSRS()->isSphericalMercator() &&
+            mapNode->getMapNodeOptions().getTerrainOptions().enableMercatorFastPath() == true;
+
+        const Profile* cacheProfile = useMFP ? layer->getProfile() : map->getProfile();
+
+        CacheBin* bin = layer->getCacheBin( cacheProfile );
+        if ( bin )
+        {
+            entries.push_back(Entry());
+            entries.back()._isImage = true;
+            entries.back()._name = i->get()->getName();
+            entries.back()._bin = bin;
+        }
+    }
+
+    ElevationLayerVector elevationLayers;
+    map->getElevationLayers( elevationLayers );
+    for( ElevationLayerVector::const_iterator i = elevationLayers.begin(); i != elevationLayers.end(); ++i )
+    {
+        ElevationLayer* layer = i->get();
+
+        bool useMFP =
+            layer->getProfile() &&
+            layer->getProfile()->getSRS()->isSphericalMercator() &&
+            mapNode->getMapNodeOptions().getTerrainOptions().enableMercatorFastPath() == true;
+
+        const Profile* cacheProfile = useMFP ? layer->getProfile() : map->getProfile();
+
+        CacheBin* bin = i->get()->getCacheBin( cacheProfile );
+        if ( bin )
+        {
+            entries.push_back(Entry());
+            entries.back()._isImage = false;
+            entries.back()._name = i->get()->getName();
+            entries.back()._bin = bin;
+        }
+    }
+
+    if ( entries.size() > 0 )
+    {
+        std::cout << std::endl;
+
+        for( unsigned i=0; i<entries.size(); ++i )
+        {
+            std::cout << (i+1) << ") " << entries[i]._name << " (" << (entries[i]._isImage? "image" : "elevation" ) << ")" << std::endl;
+        }
+
+        std::cout 
+            << std::endl
+            << "Enter number of cache to purge, or <enter> to quit: "
+            << std::flush;
+
+        std::string input;
+        std::getline( std::cin, input );
+
+        if ( !input.empty() )
+        {
+            unsigned k = as<unsigned>(input, 0L);
+            if ( k > 0 && k <= entries.size() )
+            {
+                Config meta = entries[k-1]._bin->readMetadata();
+                if ( !meta.empty() )
+                {
+                    std::cout
+                        << std::endl
+                        << "Cache METADATA:" << std::endl
+                        << meta.toJSON() 
+                        << std::endl << std::endl;
+                }
+
+                std::cout
+                    << "Are you sure (y/N)? "
+                    << std::flush;
+
+                std::getline( std::cin, input );
+                if ( input == "y" || input == "Y" )
+                {
+                    std::cout << "Purging.." << std::flush;
+                    entries[k-1]._bin->purge();
+                }
+                else
+                {
+                    std::cout << "No action taken." << std::endl;
+                }
+            }
+            else
+            {
+                std::cout << "Invalid choice." << std::endl;
+            }
+        }
+        else
+        {
+            std::cout << "No action taken." << std::endl;
+        }
+    }
+
+    return 0;
 }
diff --git a/src/applications/osgearth_shadercomp/osgearth_shadercomp.cpp b/src/applications/osgearth_shadercomp/osgearth_shadercomp.cpp
index 574f7c2..6cc22bd 100644
--- a/src/applications/osgearth_shadercomp/osgearth_shadercomp.cpp
+++ b/src/applications/osgearth_shadercomp/osgearth_shadercomp.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -26,78 +26,306 @@
  * to add functionality.
  */
 #include <osg/Notify>
+#include <osgDB/ReadFile>
 #include <osgGA/StateSetManipulator>
 #include <osgViewer/Viewer>
 #include <osgViewer/ViewerEventHandlers>
 #include <osgEarthUtil/EarthManipulator>
 #include <osgEarth/ShaderComposition>
 #include <osgEarth/Registry>
+#include <osgEarthUtil/Controls>
+
+using namespace osgEarth;
+using namespace osgEarth::Util::Controls;
+
 
-osg::StateAttribute* createHaze();
 
 int usage( const std::string& msg )
 {    
     OE_NOTICE
-        << msg << std::endl
-        << "USAGE: osgearth_shadercomp <earthfile>" << std::endl;
+        << msg << "\n\n"
+        << "USAGE: osgearth_shadercomp <earthfile> \n"
+        << "           [--test1]    : Run the function injection test \n"
+        << "           [--test2]    : Run the shader nesting test \n"
+        << "           [--test3]    : Run the OVERRIDE mode test \n"
+        << "           [--test4]    : Run the PROTECTED mode test \n"
+        << "           [--test5]    : Run the Program state set text \n"
+        << std::endl;
 
     return -1;
 }
 
-int main(int argc, char** argv)
+//-------------------------------------------------------------------------
+
+// Simple function injection test -- turns the earth gray with a haze.
+namespace TEST_1
 {
-    osg::ArgumentParser arguments(&argc,argv);
+    char s_hazeVertShader[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "varying vec3 v_pos; \n"
+        "uniform mat4 gl_ModelViewMatrix; \n"
+        "void setup_haze() \n"
+        "{ \n"
+        "    v_pos = vec3(gl_ModelViewMatrix * gl_Vertex); \n"
+        "} \n";
+
+    char s_hazeFragShader[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "varying vec3 v_pos; \n"
+        "void apply_haze(inout vec4 color) \n"
+        "{ \n"
+        "    float dist = clamp( length(v_pos)/1e7, 0.0, 0.75 ); \n"
+        "    color = mix(color, vec4(0.5, 0.5, 0.5, 1.0), dist); \n"
+        "} \n";
 
-    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
-    if (!earthNode)
+    osg::StateAttribute* createHaze()
     {
-        return usage( "Unable to load earth model." );
+        osgEarth::VirtualProgram* vp = new osgEarth::VirtualProgram();
+        vp->setFunction( "setup_haze", s_hazeVertShader, osgEarth::ShaderComp::LOCATION_VERTEX_POST_LIGHTING );
+        vp->setFunction( "apply_haze", s_hazeFragShader, osgEarth::ShaderComp::LOCATION_FRAGMENT_POST_LIGHTING );
+        return vp;
     }
 
-    osg::Group* root = new osg::Group();
-    root->addChild( earthNode );
+    osg::Group* run( osg::Node* earth )
+    {   
+        osg::Group* g = new osg::Group();
+        g->addChild( earth );
+        g->getOrCreateStateSet()->setAttributeAndModes( createHaze(), osg::StateAttribute::ON );
+        return g;
+    }
+}
+
+//-------------------------------------------------------------------------
+
+// TESTS natual VP shader nesting. Even though a reddening shader is applied,
+// the built-in applyLighting shader should override it and take precedence.
+// Normal lighting should be used.
+namespace TEST_2
+{
+    char s_source[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void osgearth_frag_applyColoring( inout vec4 color ) { \n"
+        "    color.r = 1.0; \n"
+        "} \n";
+
+    osg::Group* run( osg::Node* earth )
+    {    
+        osg::Group* g1 = new osg::Group();
+        g1->addChild( earth );
+
+        osgEarth::VirtualProgram* vp = new osgEarth::VirtualProgram();
+        vp->setShader( "osgearth_frag_applyColoring", new osg::Shader(osg::Shader::FRAGMENT, s_source) );
+        g1->getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+        return g1;
+    }
+}
+
+//-------------------------------------------------------------------------
+
+// TESTS the use of the OVERRIDE qualifier. Same as TEST_2 shader, but the "reddening"
+// shader should pre-empty the built-in shader because of the OVERRIDE mode.
+namespace TEST_3
+{
+    char s_source[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void osgearth_frag_applyColoring( inout vec4 color ) { \n"
+        "    color = vec4(1.0, 0.0, 0.0, 1.0); \n"
+        "} \n";
+
+    osg::Group* run( osg::Node* earth )
+    {    
+        osg::Group* g1 = new osg::Group();
+        g1->addChild( earth );
+
+        osgEarth::VirtualProgram* vp = new osgEarth::VirtualProgram();
+
+        // NOTE the use of OVERRIDE; this prevents subordinate VPs from replacing the 
+        // function (unless marked as PROTECTED).
+        vp->setShader( 
+            "osgearth_frag_applyColoring",
+            new osg::Shader(osg::Shader::FRAGMENT, s_source),
+            osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE );
+
+        g1->getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+        return g1;
+    }
+}
+
+//-------------------------------------------------------------------------
+
+// TESTS the use of the PROTECTED qualifier. Same as TEST_3 shader, but the "reddening"
+// shader (which has its OVERRIDE mode set) has a subordinate shader with its PROTECTED
+// mode set, which nullifies the effect of the OVERRIDE.
+namespace TEST_4
+{
+    char s_source_1[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void osgearth_frag_applyColoring( inout vec4 color ) { \n"
+        "    color = vec4(1.0, 0.0, 0.0, 1.0); \n"
+        "} \n";
     
-    osgViewer::Viewer viewer(arguments);
-    viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator() );
-    viewer.setSceneData( root );
+    char s_source_2[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void osgearth_frag_applyColoring( inout vec4 color ) { \n"
+        "    color = vec4(0.0, 0.0, 1.0, 1.0); \n"
+        "} \n";
 
-    // inject the haze shader components:
-    root->getOrCreateStateSet()->setAttributeAndModes( createHaze(), osg::StateAttribute::ON );
+    osg::Group* run( osg::Node* earth )
+    {    
+        // Insert a Shader in OVERRIDE mode:
+        osg::Group* g1 = new osg::Group();
+        osgEarth::VirtualProgram* vp1 = new osgEarth::VirtualProgram();
+        vp1->setShader( 
+            "osgearth_frag_applyColoring",
+            new osg::Shader(osg::Shader::FRAGMENT, s_source_1),
+            osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE );
+        g1->getOrCreateStateSet()->setAttributeAndModes( vp1, osg::StateAttribute::ON );
 
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgViewer::ThreadingHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+        // Insert a subordinate shader in PROTECTED mode:
+        osg::Group* g2 = new osg::Group();
+        osgEarth::VirtualProgram* vp2 = new osgEarth::VirtualProgram();
+        vp2->setShader(
+            "osgearth_frag_applyColoring",
+            new osg::Shader(osg::Shader::FRAGMENT, s_source_2),
+            osg::StateAttribute::ON | osg::StateAttribute::PROTECTED | osg::StateAttribute::OVERRIDE );
+        g2->getOrCreateStateSet()->setAttributeAndModes( vp2, osg::StateAttribute::ON );
 
-    return viewer.run();
+        g1->addChild( g2 );
+        g2->addChild( earth );
+        return g1;
+    }
 }
 
 //-------------------------------------------------------------------------
 
-static char s_hazeVertShader[] =
-    "varying vec3 v_pos; \n"
-    "void setup_haze() \n"
-    "{ \n"
-    "    v_pos = vec3(gl_ModelViewMatrix * gl_Vertex); \n"
-    "} \n";
+// 
+namespace TEST_5
+{
+    char s_vert[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void main() { \n"
+        "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
+        "} \n";
+    char s_frag[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void main() { \n"
+        "    gl_FragColor = vec4(1.0,0.0,0.0,1.0); \n"
+        "} \n";
+    char s_vp[] =
+        "#version " GLSL_VERSION_STR "\n"
+        "void test( inout vec4 color ) { color = vec4(1.0,0.0,0.0,1.0); } \n";
+
+    osg::Geode* makeGeom( float v )
+    {
+        osg::Geode* geode = new osg::Geode();
+        osg::Geometry* geom = new osg::Geometry();
+        osg::Vec3Array* verts = new osg::Vec3Array();
+        verts->push_back( osg::Vec3(v-1, 0, 0) );
+        verts->push_back( osg::Vec3(v+1, 0, 0) );
+        verts->push_back( osg::Vec3(  0, 0, 2) );
+        geom->setVertexArray( verts );
+        geom->setUseDisplayList(false);
+        geom->setUseVertexBufferObjects(true);
+        osg::Vec4Array* colors = new osg::Vec4Array();
+        colors->push_back( osg::Vec4(0,0,1,1) );
+        geom->setColorArray(colors);
+        geom->setColorBinding(osg::Geometry::BIND_OVERALL);
+        geom->addPrimitiveSet(new osg::DrawArrays(GL_TRIANGLES,0,3));
+        geode->addDrawable(geom);
+        return geode;
+    }
+
+    osg::Group* run()
+    {
+        osg::Node* n1 = makeGeom( -5 );
+        osg::Node* n2 = makeGeom(  5 );
+
+#if 0
+        osg::Program* p = new osg::Program();
+        p->addShader( new osg::Shader(osg::Shader::VERTEX, s_vert) );
+        p->addShader( new osg::Shader(osg::Shader::FRAGMENT, s_frag) );
+#else
+        VirtualProgram* p = new VirtualProgram();
+        p->installDefaultColoringAndLightingShaders();
+        p->setFunction("test", s_vp, ShaderComp::LOCATION_FRAGMENT_POST_LIGHTING);
+#endif
+
+        n1->getOrCreateStateSet()->setAttributeAndModes( p, 1 );
 
-static char s_hazeFragShader[] =
-    "varying vec3 v_pos; \n"
-    "void apply_haze(inout vec4 color) \n"
-    "{ \n"
-    "    float dist = clamp( length(v_pos)/10000000.0, 0, 0.75 ); \n"
-    "    color = mix(color, vec4(0.5, 0.5, 0.5, 1.0), dist); \n"
-    "} \n";
+        osg::Group* root = new osg::Group();
+        root->getOrCreateStateSet()->setRenderBinDetails( 0, "TraversalOrderBin" );
+        //n1->getOrCreateStateSet()->setRenderBinDetails( 2, "RenderBin" );
+        //n2->getOrCreateStateSet()->setRenderBinDetails( 1, "RenderBin" );
+        root->getOrCreateStateSet()->setMode(GL_LIGHTING,0);
 
+        root->addChild( n1 );
+        root->addChild( n2 );
+
+        return root;
+    }
+}
+
+
+//-------------------------------------------------------------------------
 
-osg::StateAttribute*
-createHaze()
+int main(int argc, char** argv)
 {
-    osgEarth::VirtualProgram* vp = new osgEarth::VirtualProgram();
+    osg::ArgumentParser arguments(&argc,argv);
+    osgViewer::Viewer viewer(arguments);
+
+    bool test1 = arguments.read("--test1");
+    bool test2 = arguments.read("--test2");
+    bool test3 = arguments.read("--test3");
+    bool test4 = arguments.read("--test4");
+    bool test5 = arguments.read("--test5");
+
+    if ( !test5 )
+    {
+        osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+        if (!earthNode)
+        {
+            return usage( "Unable to load earth model." );
+        }
+
+        viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator() );
+
+        LabelControl* label = new LabelControl();
+        if ( !test5 )
+            ControlCanvas::get(&viewer,true)->addControl(label);
+
+        if ( test1 )
+        {
+            viewer.setSceneData( TEST_1::run(earthNode) );
+            label->setText( "Function injection test: the map should appear hazy." );
+        }
+        else if ( test2 )
+        {
+            viewer.setSceneData( TEST_2::run(earthNode) );
+            label->setText( "Shader nesting test: the map should appear normally." );
+        }
+        else if ( test3 )
+        {
+            viewer.setSceneData( TEST_3::run(earthNode) );
+            label->setText( "Shader override test: the map should appear red." );
+        }
+        else if ( test4 )
+        {
+            viewer.setSceneData( TEST_4::run(earthNode) );
+            label->setText( "Shader protected test: the map should appear blue." );
+        }
+    }
+    else // if ( test5 )
+    {
+        viewer.setSceneData( TEST_5::run() );
+    }
 
-    vp->setFunction( "setup_haze", s_hazeVertShader, osgEarth::ShaderComp::LOCATION_VERTEX_POST_LIGHTING );
-    vp->setFunction( "apply_haze", s_hazeFragShader, osgEarth::ShaderComp::LOCATION_FRAGMENT_POST_LIGHTING );
+    // add some stock OSG handlers:
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgViewer::ThreadingHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
 
-    return vp;
+    return viewer.run();
 }
diff --git a/src/applications/osgearth_shadow/CMakeLists.txt b/src/applications/osgearth_shadow/CMakeLists.txt
new file mode 100644
index 0000000..ab627b8
--- /dev/null
+++ b/src/applications/osgearth_shadow/CMakeLists.txt
@@ -0,0 +1,14 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+
+FIND_PATH(_HAS_VDSM osgShadow/ViewDependentShadowMap)
+
+if(_HAS_VDSM)
+ADD_DEFINITIONS(-DHAS_VDSM)
+endif(_HAS_VDSM)
+
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_shadow.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_shadow)
diff --git a/src/applications/osgearth_shadow/osgearth_shadow.cpp b/src/applications/osgearth_shadow/osgearth_shadow.cpp
new file mode 100644
index 0000000..9488f9c
--- /dev/null
+++ b/src/applications/osgearth_shadow/osgearth_shadow.cpp
@@ -0,0 +1,171 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osg/ArgumentParser>
+#include <osg/Texture2D>
+#include <osg/MatrixTransform>
+#include <osg/Geometry>
+
+#include <osgGA/AnimationPathManipulator>
+#include <osgGA/TerrainManipulator>
+#include <osgGA/AnimationPathManipulator>
+#include <osgGA/StateSetManipulator>
+
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+
+#include <osgShadow/ShadowedScene>
+#include <osgShadow/ViewDependentShadowMap>
+
+#include <osgUtil/Optimizer>
+
+#include <osgDB/ReadFile>
+
+#include <osg/io_utils>
+#include <iostream>
+#include <sstream>
+
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/ShadowUtils>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/MapNode>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarthDrivers/engine_osgterrain/OSGTerrainOptions>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Drivers;
+
+int main(int argc, char** argv)
+{
+    // use an ArgumentParser object to manage the program arguments.
+    osg::ArgumentParser arguments(&argc, argv);
+
+    // set up the usage document, in case we need to print out how to use this program.
+    arguments.getApplicationUsage()->setDescription(arguments.getApplicationName() + " demonstrates osgEarth working with osgShadow");
+    arguments.getApplicationUsage()->setCommandLineUsage(arguments.getApplicationName());
+    arguments.getApplicationUsage()->addCommandLineOption("-h or --help", "Display this information");     
+   
+    // construct the viewer.
+    osgViewer::Viewer viewer(arguments);
+
+    // if user request help write it out to cout.
+    if (arguments.read("-h") || arguments.read("--help"))
+    {
+        arguments.getApplicationUsage()->write(std::cout);
+        return 1;
+    }
+
+    float ambientBrightness = 0.4f;
+    arguments.read("--ambientBrightness", ambientBrightness);
+
+    // set up the camera manipulators.
+    viewer.setCameraManipulator(new EarthManipulator);
+
+    osg::ref_ptr<osgShadow::ShadowedScene> shadowedScene = new osgShadow::ShadowedScene();
+    
+    //Setup a vdsm shadow map
+    osgShadow::ShadowSettings* settings = new osgShadow::ShadowSettings;
+    settings->setShaderHint( osgShadow::ShadowSettings::NO_SHADERS );
+    settings->setUseOverrideForShadowMapTexture( true );
+    shadowedScene->setShadowSettings(settings);
+
+    if (arguments.read("--persp")) settings->setShadowMapProjectionHint(osgShadow::ShadowSettings::PERSPECTIVE_SHADOW_MAP);
+    if (arguments.read("--ortho")) settings->setShadowMapProjectionHint(osgShadow::ShadowSettings::ORTHOGRAPHIC_SHADOW_MAP);
+
+    double n=0.0;
+    if (arguments.read("-n",n)) settings->setMinimumShadowMapNearFarRatio(n);
+
+    unsigned int numShadowMaps;
+    if (arguments.read("--num-sm",numShadowMaps)) settings->setNumShadowMapsPerLight(numShadowMaps);
+
+    if (arguments.read("--parallel-split") || arguments.read("--ps") ) settings->setMultipleShadowMapHint(osgShadow::ShadowSettings::PARALLEL_SPLIT);
+    if (arguments.read("--cascaded")) settings->setMultipleShadowMapHint(osgShadow::ShadowSettings::CASCADED);
+
+    settings->setDebugDraw( arguments.read("--debug") );
+
+    int mapres = 1024;
+    while (arguments.read("--mapres", mapres))
+        settings->setTextureSize(osg::Vec2s(mapres,mapres));
+
+    // VDSM is really the only technique that osgEarth supports.
+    osg::ref_ptr<osgShadow::ViewDependentShadowMap> vdsm = new osgShadow::ViewDependentShadowMap;
+    shadowedScene->setShadowTechnique(vdsm.get());
+    
+    osg::ref_ptr<osg::Group> model = MapNodeHelper().load(arguments, &viewer);
+    if (!model.valid())
+    {
+        OE_NOTICE
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+        exit(1);
+    }
+
+    MapNode* mapNode = osgEarth::findTopMostNodeOfType< MapNode > ( model.get() );
+
+    SkyNode* skyNode = osgEarth::findTopMostNodeOfType< SkyNode > ( model.get() );
+    if (!skyNode)
+    {
+        OE_NOTICE << "Please run with options --sky to enable the SkyNode" << std::endl;
+        exit(1);
+    }
+
+    // Prevent terrain skirts (or other "secondary geometry") from casting shadows
+    const TerrainOptions& terrainOptions = mapNode->getTerrainEngine()->getTerrainOptions();
+    shadowedScene->setCastsShadowTraversalMask( ~terrainOptions.secondaryTraversalMask().value() );
+
+    // Enables shadowing on an osgEarth map node
+    ShadowUtils::setUpShadows(shadowedScene, mapNode);
+
+    // For shadowing to work, lighting MUST be enabled on the map node.
+    mapNode->getOrCreateStateSet()->setMode(
+        GL_LIGHTING,
+        osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE );
+
+    // Insert the ShadowedScene decorator just above the MapNode. We don't want other
+    // elements (Control canvas, annotations, etc) under the decorator.
+    osg::Group* root;
+
+    if ( mapNode->getNumParents() > 0 )
+    {
+        osg::Group* parent = mapNode->getParent(0);
+        parent->addChild( shadowedScene );
+        shadowedScene->addChild( mapNode );
+        parent->removeChild( mapNode );
+        root = model.get();
+    }
+    else
+    {
+        root = shadowedScene;
+        shadowedScene->addChild( model.get() );
+    }
+
+    // The skynode's ambient brightness will control the "darkness" of shadows.
+    if ( skyNode )
+    {
+        skyNode->setAmbientBrightness( ambientBrightness );
+    }
+
+    viewer.setSceneData( root );
+    viewer.realize();
+    viewer.addEventHandler(new osgViewer::ScreenCaptureHandler);
+    return viewer.run();    
+}
+
diff --git a/src/applications/osgearth_symbology/CMakeLists.txt b/src/applications/osgearth_symbology/CMakeLists.txt
deleted file mode 100644
index 645819d..0000000
--- a/src/applications/osgearth_symbology/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGWIDGET_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_symbology.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_symbology)
\ No newline at end of file
diff --git a/src/applications/osgearth_symbology/osgearth_symbology.cpp b/src/applications/osgearth_symbology/osgearth_symbology.cpp
deleted file mode 100644
index 77b0249..0000000
--- a/src/applications/osgearth_symbology/osgearth_symbology.cpp
+++ /dev/null
@@ -1,667 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2009 Pelican Ventures, Inc.
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-
-#include <sstream>
-#include <osg/Notify>
-#include <osgGA/StateSetManipulator>
-#include <osgGA/GUIEventHandler>
-#include <osgGA/TrackballManipulator>
-#include <osgDB/FileNameUtils>
-#include <osgViewer/Viewer>
-#include <osgViewer/ViewerEventHandlers>
-#include <osgDB/ReadFile>
-#include <osgEarthSymbology/GeometryExtrudeSymbolizer>
-#include <osgEarthSymbology/GeometrySymbolizer>
-#include <osgEarthSymbology/Style>
-#include <osgEarthSymbology/SymbolicNode>
-#include <osgEarthSymbology/MarkerSymbol>
-#include <osgEarthSymbology/MarkerSymbolizer>
-#include <osgEarthSymbology/ExtrudedSymbol>
-#include <osgEarthSymbology/ModelSymbolizer>
-#include <osgEarthUtil/Popups>
-//#include <osgEarthUtil/PopupManager>
-//#include <osgEarthUtil/TextPopup>
-//#include <osgEarthUtil/WidgetIcon>
-//#include <osgEarthUtil/WidgetNode>
-#include <osg/MatrixTransform>
-#include <osg/Geometry>
-#include <osgUtil/Tessellator>
-#include <osg/LineWidth>
-#include <osg/Point>
-#include <osg/Material>
-
-using namespace osgEarth::Symbology;
-using namespace osgEarthUtil;
-
-static double getRandomValueInOne()
-{
-    return ((rand() * 1.0)/(RAND_MAX-1));
-}
-
-
-Geometry* createLineGeometry(const osg::Vec3d& start)
-{
-    osg::ref_ptr<osg::Vec3dArray> array = new osg::Vec3dArray;
-    array->push_back(start + osg::Vec3d(-100,-100,0));
-    array->push_back(start + osg::Vec3d(100,-100,0));
-    array->push_back(start + osg::Vec3d(100,100,0));
-    array->push_back(start + osg::Vec3d(-100,100,0));
-    return Geometry::create(Geometry::TYPE_LINESTRING, array);
-}
-
-Geometry* createRingGeometry(const osg::Vec3d& start)
-{
-    osg::ref_ptr<osg::Vec3dArray> array = new osg::Vec3dArray;
-    array->push_back(start + osg::Vec3d(-100,-100,0));
-    array->push_back(start + osg::Vec3d(100,-100,0));
-    array->push_back(start + osg::Vec3d(100,100,0));
-    array->push_back(start + osg::Vec3d(-100,100,0));
-    return Geometry::create(Geometry::TYPE_RING, array);
-}
-
-
-Geometry* createPolygonGeometry(const osg::Vec3d& start)
-{
-    osg::ref_ptr<osg::Vec3dArray> array = new osg::Vec3dArray;
-    array->push_back(start + osg::Vec3d(-100,-100,0));
-    array->push_back(start + osg::Vec3d(-10,-10,0));
-    array->push_back(start + osg::Vec3d(100,-100,0));
-    array->push_back(start + osg::Vec3d(100,100,0));
-    array->push_back(start + osg::Vec3d(-100,100,0));
-    return Geometry::create(Geometry::TYPE_POLYGON, array);
-}
-
-
-Geometry* createPointsGeometry(const osg::Vec3d& start)
-{
-    osg::ref_ptr<osg::Vec3dArray> array = new osg::Vec3dArray;
-    array->push_back(start + osg::Vec3d(-100,-100,0));
-    array->push_back(start + osg::Vec3d(100,-100,0));
-    array->push_back(start + osg::Vec3d(100,100,0));
-    array->push_back(start + osg::Vec3d(-100,100,0));
-    return Geometry::create(Geometry::TYPE_POINTSET, array);
-}
-
-struct SampleGeometryInput : public GeometryContent
-{
-    SampleGeometryInput()
-    {
-        // points
-        {
-        _geometryList.push_back(createPointsGeometry(osg::Vec3d(-250,0,0)));
-        }
-
-        // ring
-        {
-        _geometryList.push_back(createRingGeometry(osg::Vec3d(0,0,0)));
-        }
-
-        // line
-        {
-        _geometryList.push_back(createLineGeometry(osg::Vec3d(250,0,0)));
-        }
-
-        // polygon
-        {
-        _geometryList.push_back(createPolygonGeometry(osg::Vec3d(500,0,0)));
-        }
-    }
-};
-
-
-struct PopUpSymbolizerContext : public SymbolizerContext
-{
-    typedef std::vector<osg::ref_ptr<TextPopup> > TextPopupList;
-
-    PopUpSymbolizerContext(PopupManager* windowmanager)  : _wm(windowmanager) {}
-    osg::ref_ptr<PopupManager> _wm;
-    TextPopupList _widgetList;
-};
-
-
-
-struct PopUpSymbolizer : public Symbolizer< State<GeometryContent> >
-{
-    static int PopUpIndex;
-
-    bool compile(State<GeometryContent>* state,
-                 osg::Group* attachPoint)
-    {
-        if ( !state || !attachPoint || !state->getContent() || !state->getStyle() )
-            return false;
-
-        PopUpSymbolizerContext* ctx = dynamic_cast<PopUpSymbolizerContext*>( state->getContext() );
-        if (!ctx)
-            return false;
-
-        osg::ref_ptr<osg::Group> newSymbolized = new osg::Group;
-
-        const GeometryList& geometryList = state->getContent()->getGeometryList();
-        for (GeometryList::const_iterator it = geometryList.begin(); it != geometryList.end(); ++it)
-        {
-            Geometry* geometry = *it;
-            if (!geometry)
-                continue;
-
-            osg::ref_ptr<osg::Geometry> osgGeom = new osg::Geometry;
-            switch( geometry->getType())
-            {
-            case Geometry::TYPE_POINTSET:
-            case Geometry::TYPE_LINESTRING:
-            case Geometry::TYPE_RING:
-            case Geometry::TYPE_POLYGON:
-            {
-                const PopupSymbol* symbol = state->getStyle()->getSymbol<PopupSymbol>();
-                if (symbol)
-                {
-                    //osg::Image* image = 0;
-                    //if (!symbol->theme()->empty())
-                    //    image = osgDB::readImageFile(symbol->theme().value());
-                    //osgText::Font* font = 0;
-                    //if (!symbol->font()->empty())
-                    //    font = osgText::readFontFile(symbol->font().value());
-                    //float size = symbol->size().value();
-                    //osg::Vec4 color = symbol->fill()->color();
-                    
-                    for ( osg::Vec3dArray::iterator it = geometry->begin(); it != geometry->end(); ++it)
-                    {
-                        osg::MatrixTransform* transform = new osg::MatrixTransform;
-                        transform->setMatrix(osg::Matrix::translate(*it));
-                        if (!PopUpIndex) {
-                            std::stringstream ss;
-                            ss << "Hit i Key to see more popup" << std::endl;
-                            ss << "And hit a second time to hide them" << std::endl;
-                            std::string text = ss.str();
-                            std::string title = "Info";
-
-                            TextPopup* popup = ctx->_wm->createTextPopup(title, text, symbol);
-                            //popup->setFocusColor(osg::Vec4(getRandomValueInOne(), getRandomValueInOne() , getRandomValueInOne(), 1.0));
-                            popup->attach(transform);
-                            popup->setAppear();
-
-                        } else {
-                            std::stringstream ss;
-                            ss << "osgEarth" << std::endl;
-                            ss << "rocks at " << *it << " miles" << std::endl;
-                            std::string text = ss.str();
-                            std::string title = "osgEarthUtil";
-                            TextPopup* popup = ctx->_wm->createTextPopup(title, text, symbol);
-                            //popup->setFocusColor(osg::Vec4(getRandomValueInOne(), getRandomValueInOne() , getRandomValueInOne(), 1.0));
-                            popup->attach(transform);
-                            ctx->_widgetList.push_back(popup);
-                        }
-                        PopUpIndex++;
-                        newSymbolized->addChild(transform);
-                        transform->addChild(osgDB::readNodeFile("../data/tree.ive"));
-                    }
-                }
-            }
-            break;
-            }
-        }
-
-        if (newSymbolized->getNumChildren()) 
-        {
-            attachPoint->removeChildren(0, attachPoint->getNumChildren());
-            attachPoint->addChild(newSymbolized.get());
-            return true;
-        }
-
-        return false;
-    }
-};
-int PopUpSymbolizer::PopUpIndex = 0;
-
-struct PolygonPointSizeSymbol : public PolygonSymbol
-{
-    PolygonPointSizeSymbol() : _size (1.0) {}
-    float& size() { return _size; }
-    const float& size() const { return _size; }
-
-protected:
-    float _size;
-};
-
-struct GeometryPointSymbolizer : public GeometrySymbolizer
-{
-    bool update(State<GeometryContent>* state,
-                osg::Group* attachPoint,
-                SymbolizerContext* context )
-    {
-        if ( !state || !attachPoint || !state->getContent() || !state->getStyle() )
-            return false;
-
-        osg::ref_ptr<osg::Group> newSymbolized = new osg::Group;
-        osg::ref_ptr<osg::Geode> geode = new osg::Geode;
-        newSymbolized->addChild(geode.get());
-
-        const GeometryList& geometryList = state->getContent()->getGeometryList();
-        for (GeometryList::const_iterator it = geometryList.begin(); it != geometryList.end(); ++it)
-        {
-            Geometry* geometry = *it;
-            if (!geometry)
-                continue;
-
-            osg::ref_ptr<osg::Geometry> osgGeom = new osg::Geometry;
-            osg::PrimitiveSet::Mode primMode = osg::PrimitiveSet::POINTS;
-
-            osg::Vec4 color = osg::Vec4(1.0, 0.0, 1.0, 1.);
-
-            switch( geometry->getType())
-            {
-            case Geometry::TYPE_POINTSET:
-            {
-                primMode = osg::PrimitiveSet::POINTS;
-                const PointSymbol* point = state->getStyle()->getSymbol<PointSymbol>();
-                if (point)
-                {
-                    color = point->fill()->color();
-
-                    float size = point->size().value();
-                    osgGeom->getOrCreateStateSet()->setAttributeAndModes( new osg::Point(size) );
-                }
-            }
-            break;
-
-            case Geometry::TYPE_LINESTRING:
-            {
-                primMode = osg::PrimitiveSet::LINE_STRIP;
-                const LineSymbol* line = state->getStyle()->getSymbol<LineSymbol>();
-                if (line) 
-                {
-                    color = line->stroke()->color();
-                    float size = line->stroke()->width().value();
-                    osgGeom->getOrCreateStateSet()->setAttributeAndModes( new osg::LineWidth(size));
-                }
-            }
-            break;
-
-            case Geometry::TYPE_RING:
-            {
-                primMode = osg::PrimitiveSet::LINE_LOOP;
-                const LineSymbol* line = state->getStyle()->getSymbol<LineSymbol>();
-                if (line)
-                {
-                    color = line->stroke()->color();
-                    float size = line->stroke()->width().value();
-                    osgGeom->getOrCreateStateSet()->setAttributeAndModes( new osg::LineWidth(size));
-                }
-            }
-            break;
-
-            case Geometry::TYPE_POLYGON:
-            {
-                // use polygon as point for this specific symbolizer
-                // it would be simpler to use the symbol style->getPoint but here
-                // we want to dmonstrate how to customize Symbol and Symbolizer
-                primMode = osg::PrimitiveSet::POINTS;
-                const PolygonPointSizeSymbol* poly = state->getStyle()->getSymbol<PolygonPointSizeSymbol>();
-                if (poly)
-                {
-                    color = poly->fill()->color();
-
-                    float size = poly->size();
-                    osgGeom->getOrCreateStateSet()->setAttributeAndModes( new osg::Point(size) );
-                }
-            }
-            break;
-            }
-
-            osg::Material* material = new osg::Material;
-            material->setDiffuse(osg::Material::FRONT_AND_BACK, color);
-
-            osgGeom->setVertexArray( geometry->toVec3Array() );
-            osgGeom->addPrimitiveSet( new osg::DrawArrays( primMode, 0, geometry->size() ) );
-
-            osgGeom->getOrCreateStateSet()->setAttributeAndModes(material);
-            osgGeom->getOrCreateStateSet()->setMode(GL_LIGHTING, false);
-            geode->addDrawable(osgGeom);
-
-        }
-
-        if (geode->getNumDrawables()) 
-        {
-            attachPoint->removeChildren(0, attachPoint->getNumChildren());
-            attachPoint->addChild(newSymbolized.get());
-            return true;
-        }
-
-        return false;
-    }
-};
-
-
-
-class StyleEditor : public osgGA::GUIEventHandler
-{
-public:
-    osg::ref_ptr<PopUpSymbolizerContext> _popupContext;
-    int _state;
-
-    StyleEditor(const ::StyleList& styles) : _styles(styles)
-    {
-        _state = 0;
-    }
-
-    void setPopupContext(PopUpSymbolizerContext* context) { _popupContext = context; }
-    
-    virtual bool handle(const osgGA::GUIEventAdapter& ea,osgGA::GUIActionAdapter&)
-    {
-        switch(ea.getEventType())
-        {
-        case(osgGA::GUIEventAdapter::KEYUP):
-        {
-            if (ea.getKey() == 'i') {
-                if (_popupContext.valid()) {
-                    for (int i = 0; i < _popupContext->_widgetList.size(); ++i) {
-                        if (_state) {
-                            _popupContext->_widgetList[i]->setDisappear();
-                        } else { 
-                            _popupContext->_widgetList[i]->setAppear();
-                        }
-                    }
-                    if (_state)
-                        _state = 0;
-                    else 
-                        _state = 1;
-                }
-                return true;
-            } else if (ea.getKey() == 'q') {
-                osgEarth::Symbology::Style* style = _styles[0].get();
-                PolygonSymbol* p = style->getSymbol<PolygonSymbol>();
-                if (p)
-                {
-                    osg::Vec4 color = p->fill()->color();
-                    color[0] = fmod(color[0]+0.5, 1.0);
-                    color[2] = fmod(1 + color[0]-0.3, 1.0);
-                    p->fill()->color() = color;
-                    style->dirty();
-                }
-                return true;
-            } else if (ea.getKey() == 'a') {
-                Style* style = _styles[1].get();
-                PolygonPointSizeSymbol* p = style->getSymbol<PolygonPointSizeSymbol>();
-                if (p)
-                {
-                    osg::Vec4 color = p->fill()->color();
-                    color[0] = fmod(color[0]+0.5, 1.0);
-                    color[2] = fmod(1 + color[0]-0.3, 1.0);
-                    p->fill()->color() = color;
-                    p->size() = 0.1 + color[2] * 10;
-                    style->dirty();
-                }
-                return true;
-            } else if (ea.getKey() == 'z') {
-                Style* style = _styles[2].get();
-                ExtrudedLineSymbol* l = style->getSymbol<ExtrudedLineSymbol>();
-                if (l)
-                {
-                    osg::Vec4 color = l->stroke()->color();
-                    color[0] = fmod(color[0]+0.5, 1.0);
-                    color[2] = fmod(1 + color[0]-0.3, 1.0);
-                    l->stroke()->color() = color;
-                    l->extrude()->height() = l->extrude()->height() + 200;
-                }
-                ExtrudedPolygonSymbol* p = style->getSymbol<ExtrudedPolygonSymbol>();
-                if (p)
-                {
-                    osg::Vec4 color = p->fill()->color();
-                    color[0] = fmod(color[0]+0.5, 1.0);
-                    color[2] = fmod(1 + color[0]-0.3, 1.0);
-                    p->fill()->color() = color;
-                    p->extrude()->height() = p->extrude()->height() + 50;
-                }
-                style->dirty();
-                return true;
-
-            } else if (ea.getKey() == 'x') {
-                Style* style = _styles[3].get();
-                MarkerLineSymbol* l = style->getSymbol<MarkerLineSymbol>();
-                if (l)
-                {
-                    if (l->interval().value() < 10)
-                        l->interval() = 15;
-                    else
-                        l->interval() = 5;
-                }
-
-                MarkerPolygonSymbol* p = style->getSymbol<MarkerPolygonSymbol>();
-                if (p)
-                {
-                    if (p->interval().value() < 10) {
-                        p->interval() = 15;
-                        p->randomRatio() = 0.1;
-                    } else {
-                        p->interval() = 5;
-                        p->randomRatio() = 0.9;
-                    }
-                }
-                style->dirty();
-                return true;
-            }
-        }
-        break;
-        }
-        return false;
-    }
-    
-    ::StyleList _styles;
-};
-
-
-typedef SymbolicNode< State<GeometryContent> > GeometrySymbolicNode;
-
-
-osg::Group* createSymbologyScene(PopupManager* wm)
-{
-    osg::Group* grp = new osg::Group;
-
-    osg::ref_ptr<SampleGeometryInput> dataset = new SampleGeometryInput;
-    StyleList styles;
-
-    {
-        osg::ref_ptr<Style> style = new Style;
-        style->setName("PolygonSymbol-color");
-        osg::ref_ptr<PolygonSymbol> polySymbol = new PolygonSymbol;
-        polySymbol->fill()->color() = osg::Vec4(0,1,1,1);
-        style->addSymbol(polySymbol.get());
-        styles.push_back(style.get());
-    }
-
-    {
-        osg::ref_ptr<Style> style = new Style;
-        style->setName("Custom-PolygonPointSizeSymbol-size&color");
-        osg::ref_ptr<PolygonPointSizeSymbol> polySymbol = new PolygonPointSizeSymbol;
-        polySymbol->fill()->color() = osg::Vec4(1,0,0,1);
-        polySymbol->size() = 2.0;
-        style->addSymbol(polySymbol.get());
-        styles.push_back(style.get());
-    }
-
-
-    // style for extruded
-    {
-        osg::ref_ptr<Style> style = new Style;
-        style->setName("Extrude-Polygon&Line-height&color");
-        osg::ref_ptr<ExtrudedPolygonSymbol> polySymbol = new ExtrudedPolygonSymbol;
-        polySymbol->fill()->color() = osg::Vec4(1,0,0,1);
-        polySymbol->extrude()->height() = 100;
-        polySymbol->extrude()->offset() = 10;
-        style->addSymbol(polySymbol.get());
-
-        osg::ref_ptr<ExtrudedLineSymbol> lineSymbol = new ExtrudedLineSymbol;
-        lineSymbol->stroke()->color() = osg::Vec4(0,0,1,1);
-        lineSymbol->extrude()->height() = 150;
-        lineSymbol->extrude()->offset() = 10;
-        style->addSymbol(lineSymbol.get());
-        styles.push_back(style.get());
-    }
-
-
-    // style for marker
-    {
-        osg::ref_ptr<Style> style = new Style;
-        style->setName("Marker");
-        osg::ref_ptr<MarkerSymbol> pointSymbol = new MarkerSymbol;
-        pointSymbol->marker() = "../data/tree.ive";
-        style->addSymbol(pointSymbol.get());
-
-        osg::ref_ptr<MarkerLineSymbol> lineSymbol = new MarkerLineSymbol;
-        lineSymbol->marker() = "../data/tree.ive";
-        lineSymbol->interval() = 5;
-        style->addSymbol(lineSymbol.get());
-
-        osg::ref_ptr<MarkerPolygonSymbol> polySymbol = new MarkerPolygonSymbol;
-        polySymbol->marker() = "../data/tree.ive";
-        polySymbol->interval() = 20;
-        polySymbol->randomRatio() = 1.0;
-        style->addSymbol(polySymbol.get());
-
-        styles.push_back(style.get());
-    }
-
-
-    // style for popup
-    {
-        osg::ref_ptr<Style> style = new Style;
-        style->setName("Popup");
-        osg::ref_ptr<TextSymbol> symbol = new TextSymbol;
-        //symbol->theme() = "../data/popup-theme.png";
-        symbol->font() = "arial.ttf";
-        symbol->size() = 14;
-        symbol->fill()->color() = osg::Vec4(getRandomValueInOne(), getRandomValueInOne() , getRandomValueInOne(), 0.7);
-        style->addSymbol(symbol.get());
-        styles.push_back(style.get());
-    }
-
-
-    /// associate the style / symbolizer to the symbolic node
-    {
-        GeometrySymbolicNode* node = new GeometrySymbolicNode();
-        node->setSymbolizer( new GeometrySymbolizer() );
-
-        node->getState()->setStyle( styles[0].get() );
-        node->getState()->setContent( dataset.get() );
-
-        osg::MatrixTransform* tr = new osg::MatrixTransform;
-        tr->setMatrix(osg::Matrix::translate(0, -250 , 0));
-        tr->addChild(node);
-        grp->addChild(tr);
-    }
-
-
-    {
-        GeometrySymbolicNode* node = new GeometrySymbolicNode();
-        node->setSymbolizer( new GeometryPointSymbolizer() );
-        node->getState()->setStyle(styles[1].get());
-        node->getState()->setContent(dataset.get());
-        osg::MatrixTransform* tr = new osg::MatrixTransform;
-        tr->addChild(node);
-        tr->setMatrix(osg::Matrix::translate(0, 0 , 0));
-        grp->addChild(tr);
-    }
-
-
-    {
-        GeometrySymbolicNode* node = new GeometrySymbolicNode();
-        node->setSymbolizer( new GeometryExtrudeSymbolizer() );
-        node->getState()->setStyle(styles[2].get());
-        node->getState()->setContent(dataset.get());
-        osg::MatrixTransform* tr = new osg::MatrixTransform;
-        tr->addChild(node);
-        tr->setMatrix(osg::Matrix::translate(0, 250 , 0));
-        grp->addChild(tr);
-    }
-
-
-    {
-        GeometrySymbolicNode* node = new GeometrySymbolicNode();
-        node->setSymbolizer( new MarkerSymbolizer() );
-        node->getState()->setStyle(styles[3].get());
-        node->getState()->setContent(dataset.get());
-        osg::MatrixTransform* tr = new osg::MatrixTransform;
-        tr->addChild(node);
-        tr->setMatrix(osg::Matrix::translate(0, 500 , 0));
-        grp->addChild(tr);
-    }
-
-
-
-    //{
-    //    osg::ref_ptr<ModelSymbolizer> symbolizer = new ModelSymbolizer();
-    //    osg::ref_ptr<SymbolicNode> node = new SymbolicNode;
-    //    node->setSymbolizer(symbolizer.get());
-    //    Style* style = new Style;
-    //    std::string real = osgDB::getRealPath("../data/tree.ive");
-    //    MarkerSymbol* marker = new MarkerSymbol;
-    //    marker->marker() = real;
-    //    node->setDataSet(dataset.get());
-    //    style->addSymbol(marker);
-    //    node->setStyle(style);
-    //    osg::MatrixTransform* tr = new osg::MatrixTransform;
-    //    tr->addChild(node);
-    //    tr->setMatrix(osg::Matrix::scale(10,10,10) * osg::Matrix::translate(0, 750 , 0));
-    //    grp->addChild(tr);
-    //}
-
-    StyleEditor* styleEditor = new StyleEditor(styles);
-    {
-        PopUpSymbolizerContext* ctx = new PopUpSymbolizerContext(wm);
-        styleEditor->setPopupContext(ctx);
-
-        SymbolicNode< State<GeometryContent> >* node = new SymbolicNode< State<GeometryContent> >();
-        node->setSymbolizer( new PopUpSymbolizer() );
-        node->getState()->setStyle(styles[4]);
-        node->getState()->setContent(dataset.get());
-        node->getState()->setContext(ctx);
-        osg::MatrixTransform* tr = new osg::MatrixTransform;
-        tr->addChild(node);
-        tr->setMatrix(osg::Matrix::translate(0, 1000 , 0));
-        grp->addChild(tr);
-    }
-    
-    grp->addEventCallback(styleEditor);
-    return grp;
-}
-
-
-
-
-int main(int argc, char** argv)
-{
-    osg::ArgumentParser arguments(&argc,argv);
-
-    osgViewer::Viewer viewer(arguments);
-
-    // add some stock OSG handlers:
-    viewer.setCameraManipulator(new osgGA::TrackballManipulator());
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-    
-    osg::Group* root = new osg::Group;
-    viewer.setSceneData(root);
-    viewer.realize();
-
-    PopupManager* wm = new PopupManager(&viewer);
-    osg::Node* node = createSymbologyScene(wm);
-    root->addChild(node);
-    return viewer.run();
-}
diff --git a/src/applications/osgearth_terrainprofile/CMakeLists.txt b/src/applications/osgearth_terrainprofile/CMakeLists.txt
new file mode 100644
index 0000000..debc4e7
--- /dev/null
+++ b/src/applications/osgearth_terrainprofile/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_terrainprofile.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_terrainprofile)
\ No newline at end of file
diff --git a/src/applications/osgearth_terrainprofile/osgearth_terrainprofile.cpp b/src/applications/osgearth_terrainprofile/osgearth_terrainprofile.cpp
new file mode 100644
index 0000000..932f85f
--- /dev/null
+++ b/src/applications/osgearth_terrainprofile/osgearth_terrainprofile.cpp
@@ -0,0 +1,400 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgGA/StateSetManipulator>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgEarth/MapNode>
+#include <osgEarth/XmlUtils>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/TerrainProfile>
+#include <osgEarth/GeoMath>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgText/Text>
+#include <osgText/Font>
+#include <osg/io_utils>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Features;
+using namespace osgEarth::Annotation;
+
+
+//Creates a simple HUD camera
+osg::Camera* createHud(double width, double height)
+{
+    osg::Camera* hud = new osg::Camera;
+    hud->setProjectionMatrix(osg::Matrix::ortho2D(0,width,0,height));    
+    hud->setReferenceFrame(osg::Transform::ABSOLUTE_RF);
+    hud->setViewMatrix(osg::Matrix::identity());    
+    hud->setClearMask(GL_DEPTH_BUFFER_BIT);
+    hud->setRenderOrder(osg::Camera::POST_RENDER);    
+    hud->setAllowEventFocus(false);
+    hud->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE);
+    hud->getOrCreateStateSet()->setMode( GL_DEPTH_TEST, osg::StateAttribute::OFF);
+    hud->getOrCreateStateSet()->setMode( GL_BLEND, osg::StateAttribute::ON);
+
+    return hud;
+}
+
+/**
+ * Simple terrain profile display
+ */
+class TerrainProfileGraph : public osg::Group
+{
+public:
+    /*
+     * Callback that is fired when the TerrainProfile changes
+     */
+    struct GraphChangedCallback : public TerrainProfileCalculator::ChangedCallback
+    {
+        GraphChangedCallback( TerrainProfileGraph* graph):
+        _graph( graph )
+      {
+      }
+
+      virtual void onChanged(const TerrainProfileCalculator* sender )
+      {
+        _graph->setTerrainProfile( sender->getProfile() );
+      }
+
+      TerrainProfileGraph* _graph;
+    };
+
+    TerrainProfileGraph( TerrainProfileCalculator* profileCalculator, double graphWidth = 200, double graphHeight = 200 ):
+    _profileCalculator( profileCalculator ),
+        _graphWidth( graphWidth ),
+        _graphHeight( graphHeight ),
+        _color( 1.0f, 1.0f, 0.0f, 1.0f),
+        _backcolor(0.0f,0.0f,0.0f,0.5f)
+    {
+        _graphChangedCallback = new GraphChangedCallback( this );
+        _profileCalculator->addChangedCallback( _graphChangedCallback.get() );
+
+        float textSize = 8;
+        osg::ref_ptr< osgText::Font> font = osgText::readFontFile( "arialbd.ttf" );
+
+        osg::Vec4 textColor = osg::Vec4f(1,0,0,1);
+        
+        _distanceMinLabel = new osgText::Text();
+        _distanceMinLabel->setCharacterSize( textSize );
+        _distanceMinLabel->setFont( font.get() );
+        _distanceMinLabel->setAlignment(osgText::TextBase::LEFT_BOTTOM);
+        _distanceMinLabel->setColor(textColor);
+
+        _distanceMaxLabel = new osgText::Text();
+        _distanceMaxLabel->setCharacterSize( textSize );
+        _distanceMaxLabel->setFont( font.get() );
+        _distanceMaxLabel->setAlignment(osgText::TextBase::RIGHT_BOTTOM);
+        _distanceMaxLabel->setColor(textColor);
+
+        _elevationMinLabel = new osgText::Text();
+        _elevationMinLabel->setCharacterSize( textSize );
+        _elevationMinLabel->setFont( font.get() );
+        _elevationMinLabel->setAlignment(osgText::TextBase::RIGHT_BOTTOM);
+        _elevationMinLabel->setColor(textColor);
+
+        _elevationMaxLabel = new osgText::Text();
+        _elevationMaxLabel->setCharacterSize( textSize );
+        _elevationMaxLabel->setFont( font.get() );
+        _elevationMaxLabel->setAlignment(osgText::TextBase::RIGHT_TOP);
+        _elevationMaxLabel->setColor(textColor);
+    }
+
+    ~TerrainProfileGraph()
+    {
+        _profileCalculator->removeChangedCallback( _graphChangedCallback.get() );
+    }
+
+    void setTerrainProfile( const TerrainProfile& profile)
+    {
+        _profile = profile;
+        redraw();
+    }
+
+    //Redraws the graph
+    void redraw()
+    {
+        removeChildren( 0, getNumChildren() );
+
+        addChild( createBackground( _graphWidth, _graphHeight, _backcolor));
+
+        osg::Geometry* geom = new osg::Geometry;
+        geom->setUseVertexBufferObjects(true);
+
+        osg::Vec3Array* verts = new osg::Vec3Array();
+        verts->reserve( _profile.getNumElevations() );
+        geom->setVertexArray( verts );
+        if ( verts->getVertexBufferObject() )
+            verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        osg::Vec4Array* colors = new osg::Vec4Array();
+        colors->push_back( _color );
+        geom->setColorArray( colors );
+        geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+        double minElevation, maxElevation;
+        _profile.getElevationRanges( minElevation, maxElevation );
+        double elevationRange = maxElevation - minElevation;
+
+        double totalDistance = _profile.getTotalDistance();
+
+        for (unsigned int i = 0; i < _profile.getNumElevations(); i++)
+        {
+            double distance = _profile.getDistance( i );
+            double elevation = _profile.getElevation( i );
+
+            double x = (distance / totalDistance) * _graphWidth;
+            double y = ( (elevation - minElevation) / elevationRange) * _graphHeight;
+            verts->push_back( osg::Vec3(x, y, 0 ) );
+        }
+
+        geom->addPrimitiveSet( new osg::DrawArrays( GL_LINE_STRIP, 0, verts->size()) );
+        osg::Geode* graphGeode = new osg::Geode;
+        graphGeode->addDrawable( geom );
+        addChild( graphGeode );
+
+        osg::Geode* labelGeode =new osg::Geode;
+        labelGeode->addDrawable( _distanceMinLabel.get());
+        labelGeode->addDrawable( _distanceMaxLabel.get());
+        labelGeode->addDrawable( _elevationMinLabel.get());
+        labelGeode->addDrawable( _elevationMaxLabel.get());
+
+        _distanceMinLabel->setPosition( osg::Vec3(0,0,0));
+        _distanceMaxLabel->setPosition( osg::Vec3(_graphWidth-15,0,0));
+        _elevationMinLabel->setPosition( osg::Vec3(_graphWidth-5,10,0));
+        _elevationMaxLabel->setPosition( osg::Vec3(_graphWidth-5,_graphHeight,0));
+        
+        _distanceMinLabel->setText("0m");        
+        _distanceMaxLabel->setText(toString<int>((int)totalDistance) + std::string("m"));
+        
+        _elevationMinLabel->setText(toString<int>((int)minElevation) + std::string("m"));
+        _elevationMaxLabel->setText(toString<int>((int)maxElevation) + std::string("m"));
+
+        addChild( labelGeode );
+
+    }
+
+    osg::Node* createBackground(double width, double height, const osg::Vec4f& backgroundColor)
+    {
+        //Create a background quad
+        osg::Geometry* geometry = new osg::Geometry();
+        geometry->setUseVertexBufferObjects(true);
+
+        osg::Vec3Array* verts = new osg::Vec3Array();
+        verts->reserve( 4 );
+        verts->push_back( osg::Vec3(0,0,0));
+        verts->push_back( osg::Vec3(width,0,0));
+        verts->push_back( osg::Vec3(width,height,0));
+        verts->push_back( osg::Vec3(0,height,0));
+        geometry->setVertexArray( verts );
+        if ( verts->getVertexBufferObject() )
+            verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        osg::Vec4Array* colors = new osg::Vec4Array();
+        colors->push_back( backgroundColor );
+        geometry->setColorArray( colors );
+        geometry->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+        geometry->addPrimitiveSet( new osg::DrawArrays( GL_QUADS, 0, 4 ) );
+
+        osg::Geode* geode = new osg::Geode;
+        geode->addDrawable( geometry );
+
+        return geode;
+
+    }
+
+    osg::ref_ptr<osgText::Text> _distanceMinLabel, _distanceMaxLabel, _elevationMinLabel, _elevationMaxLabel;
+
+    osg::Vec4f _backcolor;
+    osg::Vec4f _color;
+    TerrainProfile _profile;
+    osg::ref_ptr< TerrainProfileCalculator > _profileCalculator;
+    double _graphWidth, _graphHeight;
+    osg::ref_ptr< GraphChangedCallback > _graphChangedCallback;
+};
+
+/*
+ * Simple event handler that draws a line when you click two points with the left mouse button
+ */
+class DrawProfileEventHandler : public osgGA::GUIEventHandler
+{
+public:
+    DrawProfileEventHandler(osgEarth::MapNode* mapNode, osg::Group* root, TerrainProfileCalculator* profileCalculator):
+      _mapNode( mapNode ),
+          _root( root ),
+          _startValid( false ),
+          _profileCalculator( profileCalculator )
+      {
+          _start = profileCalculator->getStart().vec3d();
+          _end = profileCalculator->getEnd().vec3d();
+          compute();
+      }
+
+      bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+      {
+          if (ea.getEventType() == ea.PUSH && ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+          {
+              osg::Vec3d world;
+              if ( _mapNode->getTerrain()->getWorldCoordsUnderMouse( aa.asView(), ea.getX(), ea.getY(), world ))
+              {
+                  GeoPoint mapPoint;
+                  mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+                  //_mapNode->getMap()->worldPointToMapPoint( world, mapPoint );
+
+                  if (!_startValid)
+                  {
+                      _startValid = true;
+                      _start = mapPoint.vec3d();
+                      if (_featureNode.valid())
+                      {
+                          _root->removeChild( _featureNode.get() );
+                          _featureNode = 0;
+                      }
+                  }
+                  else
+                  {
+                      _end = mapPoint.vec3d();
+                      compute();
+                      _startValid = false;                    
+                  }
+              }        
+          }
+          return false;
+      }
+
+      void compute()
+      {
+          //Tell the calculator about the new start/end points
+          _profileCalculator->setStartEnd( GeoPoint(_mapNode->getMapSRS(), _start.x(), _start.y()),
+                                           GeoPoint(_mapNode->getMapSRS(), _end.x(), _end.y()) );
+
+          if (_featureNode.valid())
+          {
+              _root->removeChild( _featureNode.get() );
+              _featureNode = 0;
+          }
+
+          LineString* line = new LineString();
+          line->push_back( _start );
+          line->push_back( _end );
+          Feature* feature = new Feature(line, _mapNode->getMapSRS());
+          feature->geoInterp() = GEOINTERP_GREAT_CIRCLE;    
+
+          //Define a style for the line
+          Style style;
+          LineSymbol* ls = style.getOrCreateSymbol<LineSymbol>();
+          ls->stroke()->color() = Color::Yellow;
+          ls->stroke()->width() = 2.0f;
+          ls->tessellation() = 20;
+
+          style.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+          feature->style() = style;
+
+          _featureNode = new FeatureNode( _mapNode, feature );
+          //Disable lighting
+          _featureNode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+          _root->addChild( _featureNode.get() );
+
+      }
+
+
+
+
+      osgEarth::MapNode* _mapNode;      
+      osg::Group* _root;
+      TerrainProfileCalculator* _profileCalculator;
+      osg::ref_ptr< FeatureNode > _featureNode;
+      bool _startValid;
+      osg::Vec3d _start;
+      osg::Vec3d _end;  
+};
+
+
+
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    osgViewer::Viewer viewer(arguments);
+
+    // load the .earth file from the command line.
+    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
+    if (!earthNode)
+    {
+        OE_NOTICE << "Unable to load earth model" << std::endl;
+        return 1;
+    }
+
+    osg::Group* root = new osg::Group();
+
+    osgEarth::MapNode * mapNode = osgEarth::MapNode::findMapNode( earthNode );
+    if (!mapNode)
+    {
+        OE_NOTICE << "Could not find MapNode " << std::endl;
+        return 1;
+    }
+
+    osgEarth::Util::EarthManipulator* manip = new EarthManipulator();    
+    viewer.setCameraManipulator( manip );
+
+    root->addChild( earthNode );    
+
+    double backgroundWidth = 500;
+    double backgroundHeight = 500;
+
+    double graphWidth = 200;
+    double graphHeight = 100;
+
+    //Add the hud
+    osg::Camera* hud = createHud( backgroundWidth, backgroundHeight );
+    root->addChild( hud );
+
+    osg::ref_ptr< TerrainProfileCalculator > calculator = new TerrainProfileCalculator(mapNode, 
+        GeoPoint(mapNode->getMapSRS(), -124.0, 40.0),
+        GeoPoint(mapNode->getMapSRS(), -75.1, 39.2)
+        );    
+
+    osg::Group* profileNode = new TerrainProfileGraph( calculator.get(), graphWidth, graphHeight );
+    hud->addChild( profileNode );
+
+
+    viewer.getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode));
+
+    viewer.addEventHandler( new DrawProfileEventHandler( mapNode, root, calculator ) );
+
+    viewer.setSceneData( root );    
+
+    // add some stock OSG handlers:
+    viewer.addEventHandler(new osgViewer::StatsHandler());
+    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
+    viewer.addEventHandler(new osgViewer::ThreadingHandler());
+    viewer.addEventHandler(new osgViewer::LODScaleHandler());
+    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
+
+    return viewer.run();
+}
diff --git a/src/applications/osgearth_tests/CMakeLists.txt b/src/applications/osgearth_tests/CMakeLists.txt
deleted file mode 100644
index 23d45dd..0000000
--- a/src/applications/osgearth_tests/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
-SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
-
-SET(TARGET_SRC osgearth_tests.cpp )
-
-#### end var setup  ###
-SETUP_APPLICATION(osgearth_tests)
\ No newline at end of file
diff --git a/src/applications/osgearth_tests/osgearth_tests.cpp b/src/applications/osgearth_tests/osgearth_tests.cpp
deleted file mode 100644
index 65486dc..0000000
--- a/src/applications/osgearth_tests/osgearth_tests.cpp
+++ /dev/null
@@ -1,123 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osgUtil/Optimizer>
-#include <osgDB/ReadFile>
-
-#include <osgDB/ReadFile>
-#include <osgDB/WriteFile>
-
-#include <osgEarth/Map>
-#include <osgEarth/Registry>
-
-#include <osgEarthDrivers/gdal/GDALOptions>
-#include <osgEarthDrivers/arcgis/ArcGISOptions>
-#include <osgEarthDrivers/tms/TMSOptions>
-
-#include <iostream>
-
-using namespace osg;
-using namespace osgDB;
-using namespace osgEarth;
-using namespace osgEarth::Drivers;
-
-int main(int argc, char** argv)
-{
-  osg::ArgumentParser arguments(&argc,argv);
-
-  //One to one test.  Read a single 1 to 1 tile out of a MapLayer
-  {
-      GDALOptions driverOpt;
-      driverOpt.url() = "../data/world.tif";
-
-      ImageLayerOptions layerOpt;
-      layerOpt.driver() = driverOpt;
-      layerOpt.name() = "test_simple";
-
-      osg::ref_ptr<ImageLayer> layer = new ImageLayer( layerOpt );
-
-      TileKey key(0, 0, 0, layer->getProfile());
-	  GeoImage image = layer->createImage( key );
-	  osgDB::writeImageFile(*image.getImage(), layer->getName()+key.str() + std::string(".png"));
-  }
-
-  //Mosaic test.  Request a tile in the global geodetic profile from a layer with a geographic SRS but a different tiling scheme.
-  {
-      ArcGISOptions driverOpt;
-      driverOpt.url() = "http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer";
-
-      ImageLayerOptions layerOpt;
-      layerOpt.driver() = driverOpt;
-      layerOpt.name() = "test_mosaic";
-
-      osg::ref_ptr<ImageLayer> layer = new ImageLayer( layerOpt );
-
-      TileKey key(0, 0, 0, osgEarth::Registry::instance()->getGlobalGeodeticProfile());
-	  GeoImage image = layer->createImage( key );
-	  osgDB::writeImageFile(*image.getImage(), layer->getName()+key.str() + std::string(".png"));
-  }
-
-  //Reprojection.  Request a UTM image from a global geodetic profile
-  {
-      ArcGISOptions driverOpt;
-      driverOpt.url() = "http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer";
-
-      ImageLayerOptions layerOpt;
-      layerOpt.name() = "test_reprojected_utm";
-      layerOpt.driver() = driverOpt;
-      layerOpt.reprojectedTileSize() = 512;
-
-      osg::ref_ptr<ImageLayer> layer = new ImageLayer( layerOpt );
-
-      TileKey key(0, 0, 0, Profile::create("epsg:26917", 560725, 4385762, 573866, 4400705));
-	  GeoImage image = layer->createImage( key );
-	  osgDB::writeImageFile(*image.getImage(), layer->getName()+key.str() + std::string(".png"));
-  }
-
-
-  //Mercator.  Request a geodetic reprojected image from a mercator source
-  {
-      TMSOptions driverOpt;
-      driverOpt.url() = "http://tile.openstreetmap.org";
-      driverOpt.format() = "png";
-      driverOpt.tileSize() = 256;
-      driverOpt.tmsType() = "google";
-
-      ImageLayerOptions layerOpt;
-      layerOpt.driver() = driverOpt;
-      layerOpt.name() = "test_mercator_reprojected";
-      layerOpt.reprojectedTileSize() = 256;
-      layerOpt.exactCropping() = true;
-      layerOpt.profile() = ProfileOptions( "global-mercator" );
-
-      osg::ref_ptr<ImageLayer> layer = new ImageLayer( layerOpt );
-
-	  //Request an image from the mercator source.  Should be reprojected to geodetic
-	  TileKey key(0, 0, 0, osgEarth::Registry::instance()->getGlobalGeodeticProfile());
-	  GeoImage image = layer->createImage( key );
-	  if (!image.getSRS()->isGeographic())
-	  {
-		  OE_NOTICE << "Error:  Should have reprojected image to geodetic but returned SRS is  " << image.getSRS()->getWKT() << std::endl;
-	  }
-	  osgDB::writeImageFile(*image.getImage(), layer->getName()+key.str() + std::string(".png"));
-  }
-
-  return 0;
-}
-
diff --git a/src/applications/osgearth_tfs/CMakeLists.txt b/src/applications/osgearth_tfs/CMakeLists.txt
new file mode 100644
index 0000000..90c153a
--- /dev/null
+++ b/src/applications/osgearth_tfs/CMakeLists.txt
@@ -0,0 +1,8 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_tfs.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_tfs)
\ No newline at end of file
diff --git a/src/applications/osgearth_tfs/osgearth_tfs.cpp b/src/applications/osgearth_tfs/osgearth_tfs.cpp
new file mode 100644
index 0000000..64de78b
--- /dev/null
+++ b/src/applications/osgearth_tfs/osgearth_tfs.cpp
@@ -0,0 +1,185 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgEarthDrivers/feature_ogr/OGRFeatureOptions>
+
+#include <osgEarthUtil/TFSPackager>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Features;
+using namespace osgEarth::Drivers;
+using namespace osgEarth::Symbology;
+
+
+int
+usage( const std::string& msg )
+{
+    if ( !msg.empty() )
+    {
+        std::cout << msg << std::endl;
+    }
+
+    std::cout
+        << std::endl
+        << "USAGE: osgearth_tfs [options] filename" << std::endl
+        << std::endl
+        << "    filename           ; Shapefile (or other feature source data file)" << std::endl
+        << "    --first-level      ; The first level where features will be added to the quadtree" << std::endl
+        << "    --max-level        ; The maximum level of the feature quadtree" << std::endl
+        << "    --max-features     ; The maximum number of features per tile" << std::endl
+        << "    --out              ; The destination directory" << std::endl
+        << "    --layer            ; The name of the layer to be written to the metadata document" << std::endl
+        << "    --description      ; The abstract/description of the layer to be written to the metadata document" << std::endl
+        << "    --expression       ; The expression to run on the feature source, specific to the feature source" << std::endl
+        << "    --order-by         ; Sort the features, if not already included in the expression. Append DESC for descending order!" << std::endl
+        << "    --crop             ; Crops features instead of doing a centroid check.  Features can be added to multiple tiles when cropping is enabled" << std::endl
+        << "    --dest-srs         ;The destination SRS string in any format osgEarth can understand (wkt, proj4, epsg).  If none is specified the source data SRS will be used" << std::endl
+        << std::endl;
+
+    return -1;
+}
+
+
+
+int main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+
+    if (argc < 2)
+    {
+        return usage("");
+    }
+    
+    //The first level
+    unsigned int firstLevel = 0;
+    while (arguments.read("--first-level", firstLevel));
+
+    //The max level
+    unsigned int maxLevel = 6;
+    while (arguments.read("--max-level", maxLevel));
+
+    unsigned int maxFeatures = 300;
+    while (arguments.read("--max-features", maxFeatures));    
+
+    //The destination directory
+    std::string destination = "out";
+    while (arguments.read("--out", destination));
+
+    //The name of the layer
+    std::string layer = "layer";
+    while (arguments.read("--layer", layer));
+
+    //The description of the layer
+    std::string description = "";
+    while (arguments.read("--description", description));
+
+    std::string queryExpression = "";
+    while (arguments.read("--expression", queryExpression));
+
+    std::string queryOrderBy = "";
+    while (arguments.read("--order-by", queryOrderBy));
+
+    CropFilter::Method cropMethod = CropFilter::METHOD_CENTROID;
+    if (arguments.read("--crop"))
+    {
+        cropMethod = CropFilter::METHOD_CROPPING;
+    }
+
+    std::string destSRS;
+    while(arguments.read("--dest-srs", destSRS));
+    
+    std::string filename;
+
+    //Get the first argument that is not an option
+    for(int pos=1;pos<arguments.argc();++pos)
+    {
+        if (!arguments.isOption(pos))
+        {
+            filename  = arguments[ pos ];
+        }
+    }
+
+    if (filename.empty())
+    {
+        return usage( "Please provide a filename" );
+    }
+
+    //Open the feature source
+    OGRFeatureOptions featureOpt;
+    featureOpt.url() = filename;
+
+    osg::ref_ptr< FeatureSource > features = FeatureSourceFactory::create( featureOpt );
+    if (!features.valid())
+    {
+        OE_NOTICE << "Failed to open " << filename << std::endl;
+        return 1;
+    }
+
+    features->initialize();
+    const FeatureProfile* profile = features->getFeatureProfile();
+    if (!profile)
+    {
+        OE_NOTICE << "Failed to create a valid profile for " << filename << std::endl;
+        return 1;
+    }
+
+    std::string method = cropMethod == CropFilter::METHOD_CENTROID ? "Centroid" : "Cropping";
+
+    OE_NOTICE << "Processing " << filename << std::endl
+              << "  FirstLevel=" << firstLevel << std::endl
+              << "  MaxLevel=" << maxLevel << std::endl
+              << "  MaxFeatures=" << maxFeatures << std::endl
+              << "  Destination=" << destination << std::endl
+              << "  Layer=" << layer << std::endl
+              << "  Description=" << description << std::endl
+              << "  Expression=" << queryExpression << std::endl
+              << "  OrderBy=" << queryOrderBy << std::endl
+              << "  Method= " << method << std::endl
+              << "  DestSRS= " << destSRS << std::endl
+              << std::endl;
+
+
+    Query query;
+    if (!queryExpression.empty())
+    {
+        query.expression() = queryExpression;
+    }
+
+    if (!queryOrderBy.empty())
+    {
+        query.orderby() = queryOrderBy;
+    }    
+
+    osg::Timer_t startTime = osg::Timer::instance()->tick();
+    //buildTFS( features.get(), firstLevel, maxLevel, maxFeatures, destination, layer, description, query, cropMethod);
+    TFSPackager packager;
+    packager.setFirstLevel( firstLevel );
+    packager.setMaxLevel( maxLevel );
+    packager.setMaxFeatures( maxFeatures );
+    packager.setQuery( query );
+    packager.setMethod( cropMethod );    
+    packager.setDestSRS( destSRS );
+    packager.package( features, destination, layer, description );
+    osg::Timer_t endTime = osg::Timer::instance()->tick();
+    OE_NOTICE << "Completed in " << osg::Timer::instance()->delta_s( startTime, endTime ) << " s " << std::endl;
+
+    return 0;
+}
diff --git a/src/applications/osgearth_tilesource/osgearth_tilesource.cpp b/src/applications/osgearth_tilesource/osgearth_tilesource.cpp
index 94168c4..abb37da 100644
--- a/src/applications/osgearth_tilesource/osgearth_tilesource.cpp
+++ b/src/applications/osgearth_tilesource/osgearth_tilesource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,7 +33,7 @@ using namespace osgEarth::Util;
 using namespace osgEarth::Symbology;
 
 /**
- * This sample demonstrated how to create a custom TileSource.
+ * This sample demonstrates how to create a custom TileSource.
  */
 
 static osg::Vec4 colors[4] = {
@@ -43,9 +43,13 @@ static osg::Vec4 colors[4] = {
     osg::Vec4(0,0,0,1)
 };
 
+/**
+ * Our homemade TileSource.
+ */
 class CustomTileSource : public TileSource
 {
 public:
+    // Constructor that takes the user-provided options.
     CustomTileSource( const TileSourceOptions& options =TileSourceOptions() ) : TileSource(options)
     {
         _geom = new Ring();
@@ -55,14 +59,17 @@ public:
         _geom->push_back( osg::Vec3(5, 250, 0) );
     }
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile )
+    // Called by the terrain engine when a layer using this driver is first added.
+    Status initialize(const osgDB::Options* dbOptions)
     {
-        if ( overrideProfile )
-            setProfile( overrideProfile );
-        else
+        if ( !getProfile() )
+        {
             setProfile( Registry::instance()->getGlobalGeodeticProfile() );
+        }
+        return STATUS_OK;
     }
 
+    // Define this method to return an image corresponding to the given TileKey.
     osg::Image* createImage( const TileKey& key, ProgressCallback* progress )
     {
         GeometryRasterizer rasterizer( 256, 256 );
@@ -81,7 +88,9 @@ int main(int argc, char** argv)
     osgViewer::Viewer viewer(arguments);
 
     // Start by creating the map:
-    Map* map = new Map();
+    MapOptions mapOptions;
+    mapOptions.cachePolicy() = CachePolicy::NO_CACHE;
+    Map* map = new Map( mapOptions );
 
     // Create out image layer with a custom tile source.
     ImageLayerOptions options( "custom" );
diff --git a/src/applications/osgearth_toc/osgearth_toc.cpp b/src/applications/osgearth_toc/osgearth_toc.cpp
index d919df7..7addf24 100644
--- a/src/applications/osgearth_toc/osgearth_toc.cpp
+++ b/src/applications/osgearth_toc/osgearth_toc.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,7 +33,9 @@ void updateControlPanel();
 
 static osg::ref_ptr<Map> s_activeMap;
 static osg::ref_ptr<Map> s_inactiveMap;
-static Grid* s_layerBox;
+static Grid* s_masterGrid;
+static Grid* s_imageBox;
+static Grid* s_elevationBox;
 static bool s_updateRequired = true;
 
 //------------------------------------------------------------------------
@@ -45,6 +47,20 @@ struct MyMapListener : public MapCallback
     }
 };
 
+struct UpdateOperation : public osg::Operation
+{
+    UpdateOperation() : osg::Operation( "", true ) { }
+
+    void operator()(osg::Object*)
+    {
+        if ( s_updateRequired )
+        {
+            updateControlPanel();
+            s_updateRequired = false;
+        }
+    }
+};
+
 //------------------------------------------------------------------------
 
 int
@@ -52,11 +68,8 @@ main( int argc, char** argv )
 {
     osg::ArgumentParser arguments( &argc,argv );
 
-    // load a graph from the command line
-    osg::Node* node = osgDB::readNodeFiles( arguments );
-
-    // make sure we loaded a .earth file
-    osgEarth::MapNode* mapNode = MapNode::findMapNode( node );
+    // Load an earth file 
+    osgEarth::MapNode* mapNode = MapNode::load( arguments );
     if ( !mapNode ) {
         OE_WARN << "No osgEarth MapNode found in the loaded file(s)." << std::endl;
         return -1;
@@ -78,7 +91,7 @@ main( int argc, char** argv )
 
     // install the control panel
     root->addChild( createControlPanel( &viewer ) );
-    root->addChild( node );
+    root->addChild( mapNode );
 
     // update the control panel with the two Maps:
     updateControlPanel();
@@ -91,34 +104,29 @@ main( int argc, char** argv )
     // install a proper manipulator
     viewer.setCameraManipulator( new osgEarth::Util::EarthManipulator() );
 
+    // install our control panel updater
+    viewer.addUpdateOperation( new UpdateOperation() );
 
-    while( !viewer.done() )
-    {
-        viewer.frame();
-
-        if ( s_updateRequired )
-        {
-            updateControlPanel();
-            s_updateRequired = false;
-        }
-    }
+    viewer.run();
 }
 
 //------------------------------------------------------------------------
 
-struct LayerEnabledHandler : public ControlEventHandler
+struct LayerVisibleHandler : public ControlEventHandler
 {
-    LayerEnabledHandler( ImageLayer* layer ) : _layer(layer) { }
-    void onValueChanged( Control* control, bool value ) {
-        _layer->setEnabled( value );
+    LayerVisibleHandler( TerrainLayer* layer ) : _layer(layer) { }
+    void onValueChanged( Control* control, bool value )
+    {
+        _layer->setVisible( value );
     }
-    ImageLayer* _layer;
+    TerrainLayer* _layer;
 };
 
 struct LayerOpacityHandler : public ControlEventHandler
 {
     LayerOpacityHandler( ImageLayer* layer ) : _layer(layer) { }
-    void onValueChanged( Control* control, float value ) {
+    void onValueChanged( Control* control, float value )
+    {
         _layer->setOpacity( value );
     }
     ImageLayer* _layer;
@@ -126,31 +134,64 @@ struct LayerOpacityHandler : public ControlEventHandler
 
 struct AddLayerHandler : public ControlEventHandler
 {
-    AddLayerHandler( ImageLayer* layer ) : _layer(layer) { }
+    AddLayerHandler( TerrainLayer* layer ) : _layer(layer) { }
     void onClick( Control* control, int mouseButtonMask ) {
-        s_inactiveMap->removeImageLayer( _layer.get() );
-        s_activeMap->addImageLayer( _layer.get() );
+
+        ImageLayer* imageLayer = dynamic_cast< ImageLayer*>( _layer.get() );
+        ElevationLayer* elevationLayer = dynamic_cast< ElevationLayer*>( _layer.get() );
+
+        if (imageLayer)
+        {
+            s_inactiveMap->removeImageLayer( imageLayer );
+            s_activeMap->addImageLayer( imageLayer );
+        }
+        else
+        {
+            s_inactiveMap->removeElevationLayer( elevationLayer );
+            s_activeMap->addElevationLayer( elevationLayer );
+        }
     }
-    osg::ref_ptr<ImageLayer> _layer;
+    osg::ref_ptr<TerrainLayer> _layer;
 };
 
 struct RemoveLayerHandler : public ControlEventHandler
 {
-    RemoveLayerHandler( ImageLayer* layer ) : _layer(layer) { }
-    void onClick( Control* control, int mouseButtonMask ) {
-        s_inactiveMap->addImageLayer( _layer.get() );
-        s_activeMap->removeImageLayer( _layer.get() );
+    RemoveLayerHandler( TerrainLayer* layer ) : _layer(layer) { }
+    void onClick( Control* control, int mouseButtonMask ) {        
+        ImageLayer* imageLayer = dynamic_cast< ImageLayer*>( _layer.get() );
+        ElevationLayer* elevationLayer = dynamic_cast< ElevationLayer*>( _layer.get() );
+
+        if (imageLayer)
+        {
+            s_inactiveMap->addImageLayer( imageLayer );
+            s_activeMap->removeImageLayer( imageLayer );
+        }
+        else
+        {
+            s_inactiveMap->addElevationLayer( elevationLayer );
+            s_activeMap->removeElevationLayer( elevationLayer );
+        }
     }
-    osg::ref_ptr<ImageLayer> _layer;
+    osg::ref_ptr<TerrainLayer> _layer;
 };
 
 struct MoveLayerHandler : public ControlEventHandler
 {
-    MoveLayerHandler( ImageLayer* layer, int newIndex ) : _layer(layer), _newIndex(newIndex) { }
+    MoveLayerHandler( TerrainLayer* layer, int newIndex ) : _layer(layer), _newIndex(newIndex) { }
     void onClick( Control* control, int mouseButtonMask ) {
-        s_activeMap->moveImageLayer( _layer, _newIndex );
+        ImageLayer* imageLayer = dynamic_cast< ImageLayer*>( _layer );
+        ElevationLayer* elevationLayer = dynamic_cast< ElevationLayer*>( _layer );
+
+        if (imageLayer)
+        {
+            s_activeMap->moveImageLayer( imageLayer, _newIndex );
+        }
+        else
+        {
+            s_activeMap->moveElevationLayer( elevationLayer, _newIndex );
+        }
     }
-    ImageLayer* _layer;
+    TerrainLayer* _layer;
     int _newIndex;
 };
 
@@ -162,38 +203,64 @@ createControlPanel( osgViewer::View* view )
 {
     ControlCanvas* canvas = ControlCanvas::get( view );
 
-    // the outer container:
-    s_layerBox = new Grid();
-    s_layerBox->setBackColor(0,0,0,0.5);
-    s_layerBox->setMargin( 10 );
-    s_layerBox->setPadding( 10 );
-    s_layerBox->setChildSpacing( 10 );
-    s_layerBox->setChildVertAlign( Control::ALIGN_CENTER );
-    s_layerBox->setAbsorbEvents( true );
-    s_layerBox->setVertAlign( Control::ALIGN_BOTTOM );
-
-    canvas->addControl( s_layerBox );
+    s_masterGrid = new Grid();
+    s_masterGrid->setBackColor(0,0,0,0.5);
+    s_masterGrid->setMargin( 10 );
+    s_masterGrid->setPadding( 10 );
+    s_masterGrid->setChildSpacing( 10 );
+    s_masterGrid->setChildVertAlign( Control::ALIGN_CENTER );
+    s_masterGrid->setAbsorbEvents( true );
+    s_masterGrid->setVertAlign( Control::ALIGN_BOTTOM );
+
+    //The image layers
+    s_imageBox = new Grid();
+    s_imageBox->setBackColor(0,0,0,0.5);
+    s_imageBox->setMargin( 10 );
+    s_imageBox->setPadding( 10 );
+    s_imageBox->setChildSpacing( 10 );
+    s_imageBox->setChildVertAlign( Control::ALIGN_CENTER );
+    s_imageBox->setAbsorbEvents( true );
+    s_imageBox->setVertAlign( Control::ALIGN_BOTTOM );
+    s_masterGrid->setControl( 0, 0, s_imageBox );
+
+    //the elevation layers
+    s_elevationBox = new Grid();
+    s_elevationBox->setBackColor(0,0,0,0.5);
+    s_elevationBox->setMargin( 10 );
+    s_elevationBox->setPadding( 10 );
+    s_elevationBox->setChildSpacing( 10 );
+    s_elevationBox->setChildVertAlign( Control::ALIGN_CENTER );
+    s_elevationBox->setAbsorbEvents( true );
+    s_elevationBox->setVertAlign( Control::ALIGN_BOTTOM );
+    s_masterGrid->setControl( 1, 0, s_elevationBox );
+
+    canvas->addControl( s_masterGrid );
+
     return canvas;
 }
 
 void
-createLayerItem( int gridRow, int layerIndex, int numLayers, ImageLayer* layer, bool isActive )
+createLayerItem( Grid* grid, int gridRow, int layerIndex, int numLayers, TerrainLayer* layer, bool isActive )
 {
     // a checkbox to enable/disable the layer:
-    CheckBoxControl* enabled = new CheckBoxControl( layer->getEnabled() );
-    enabled->addEventHandler( new LayerEnabledHandler(layer) );
-    s_layerBox->setControl( 0, gridRow, enabled );
+    CheckBoxControl* enabled = new CheckBoxControl( layer->getVisible() );
+    enabled->addEventHandler( new LayerVisibleHandler(layer) );
+    grid->setControl( 0, gridRow, enabled );
 
     // the layer name
     LabelControl* name = new LabelControl( layer->getName() );
-    s_layerBox->setControl( 1, gridRow, name );
+    grid->setControl( 1, gridRow, name );
 
-    // an opacity slider
-    HSliderControl* opacity = new HSliderControl( 0.0f, 1.0f, layer->getOpacity() );
-    opacity->setWidth( 125 );
-    opacity->setHeight( 12 );
-    opacity->addEventHandler( new LayerOpacityHandler(layer) );
-    s_layerBox->setControl( 2, gridRow, opacity );
+    ImageLayer* imageLayer = dynamic_cast< ImageLayer* > (layer );
+    if (imageLayer)
+    {
+        // an opacity slider
+        HSliderControl* opacity = new HSliderControl( 0.0f, 1.0f, imageLayer->getOpacity() );
+        opacity->setWidth( 125 );
+        opacity->setHeight( 12 );
+        opacity->addEventHandler( new LayerOpacityHandler(imageLayer) );
+        grid->setControl( 2, gridRow, opacity );
+    }
 
     // move buttons
     if ( layerIndex < numLayers-1 && isActive )
@@ -202,7 +269,7 @@ createLayerItem( int gridRow, int layerIndex, int numLayers, ImageLayer* layer,
         upButton->setBackColor( .4,.4,.4,1 );
         upButton->setActiveColor( .8,0,0,1 );
         upButton->addEventHandler( new MoveLayerHandler( layer, layerIndex+1 ) );
-        s_layerBox->setControl( 3, gridRow, upButton );
+        grid->setControl( 3, gridRow, upButton );
     }
     if ( layerIndex > 0 && isActive)
     {
@@ -210,7 +277,7 @@ createLayerItem( int gridRow, int layerIndex, int numLayers, ImageLayer* layer,
         upButton->setBackColor( .4,.4,.4,1 );
         upButton->setActiveColor( .8,0,0,1 );
         upButton->addEventHandler( new MoveLayerHandler( layer, layerIndex-1 ) );
-        s_layerBox->setControl( 4, gridRow, upButton );
+        grid->setControl( 4, gridRow, upButton );
     }
 
     // add/remove button:
@@ -222,35 +289,65 @@ createLayerItem( int gridRow, int layerIndex, int numLayers, ImageLayer* layer,
         addRemove->addEventHandler( new RemoveLayerHandler(layer) );
     else
         addRemove->addEventHandler( new AddLayerHandler(layer) );
-    s_layerBox->setControl( 5, gridRow, addRemove );
+    grid->setControl( 5, gridRow, addRemove );
 }
 
 void
 updateControlPanel()
 {
     // erase all child controls and just rebuild them b/c we're lazy.
-    s_layerBox->clearControls();
+
+    //Rebuild all the image layers    
+    s_imageBox->clearControls();
 
     int row = 0;
 
-    LabelControl* activeLabel = new LabelControl( "Map Layers", 20, osg::Vec4f(1,1,0,1) );
-    s_layerBox->setControl( 1, row++, activeLabel );
+    LabelControl* activeLabel = new LabelControl( "Image Layers", 20, osg::Vec4f(1,1,0,1) );
+    s_imageBox->setControl( 1, row++, activeLabel );
 
     // the active map layers:
-    MapFrame mapf( s_activeMap.get(), Map::IMAGE_LAYERS );
+    MapFrame mapf( s_activeMap.get() );
     int layerNum = mapf.imageLayers().size()-1;
     for( ImageLayerVector::const_reverse_iterator i = mapf.imageLayers().rbegin(); i != mapf.imageLayers().rend(); ++i )
-        createLayerItem( row++, layerNum--, mapf.imageLayers().size(), i->get(), true );
+        createLayerItem( s_imageBox, row++, layerNum--, mapf.imageLayers().size(), i->get(), true );
 
-    MapFrame mapf2( s_inactiveMap.get(), Map::IMAGE_LAYERS );
+    MapFrame mapf2( s_inactiveMap.get() );
     if ( mapf2.imageLayers().size() > 0 )
     {
         LabelControl* inactiveLabel = new LabelControl( "Removed:", 18, osg::Vec4f(1,1,0,1) );
-        s_layerBox->setControl( 1, row++, inactiveLabel );
+        s_imageBox->setControl( 1, row++, inactiveLabel );
 
         for( unsigned int i=0; i<mapf2.imageLayers().size(); ++i )
         {
-            createLayerItem( row++, -1, -1, mapf2.getImageLayerAt(i), false );
+            createLayerItem( s_imageBox, row++, -1, -1, mapf2.getImageLayerAt(i), false );
+        }
+    }
+
+
+
+
+    //Rebuild the elevation layers
+    s_elevationBox->clearControls();
+
+    row = 0;
+
+    activeLabel = new LabelControl( "Elevation Layers", 20, osg::Vec4f(1,1,0,1) );
+    s_elevationBox->setControl( 1, row++, activeLabel );
+
+    // the active map layers:
+    layerNum = mapf.elevationLayers().size()-1;
+    for( ElevationLayerVector::const_reverse_iterator i = mapf.elevationLayers().rbegin(); i != mapf.elevationLayers().rend(); ++i )
+        createLayerItem( s_elevationBox, row++, layerNum--, mapf.elevationLayers().size(), i->get(), true );
+
+    if ( mapf2.elevationLayers().size() > 0 )
+    {
+        LabelControl* inactiveLabel = new LabelControl( "Removed:", 18, osg::Vec4f(1,1,0,1) );
+        s_elevationBox->setControl( 1, row++, inactiveLabel );
+
+        for( unsigned int i=0; i<mapf2.elevationLayers().size(); ++i )
+        {
+            createLayerItem( s_elevationBox, row++, -1, -1, mapf2.getElevationLayerAt(i), false );
         }
     }
+
 }
diff --git a/src/applications/osgearth_tracks/CMakeLists.txt b/src/applications/osgearth_tracks/CMakeLists.txt
new file mode 100644
index 0000000..a980315
--- /dev/null
+++ b/src/applications/osgearth_tracks/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_tracks.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_tracks)
\ No newline at end of file
diff --git a/src/applications/osgearth_tracks/osgearth_tracks.cpp b/src/applications/osgearth_tracks/osgearth_tracks.cpp
new file mode 100644
index 0000000..c96c82c
--- /dev/null
+++ b/src/applications/osgearth_tracks/osgearth_tracks.cpp
@@ -0,0 +1,345 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarth/MapNode>
+#include <osgEarth/Random>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/GeoMath>
+#include <osgEarth/Units>
+#include <osgEarth/StringUtils>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/MGRSFormatter>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/AnnotationEvents>
+#include <osgEarthAnnotation/TrackNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthSymbology/Color>
+
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgGA/StateSetManipulator>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+
+#define LC "[osgearth_tracks] "
+
+/**
+ * Demonstrates use of the TrackNode to display entity track symbols.
+ */
+
+// field names for the track labels
+#define FIELD_NAME     "name"
+#define FIELD_POSITION "position"
+#define FIELD_NUMBER   "number"
+
+// icon to use, and size in pixels
+#define ICON_URL       "../data/m2525_air.png"
+#define ICON_SIZE      40
+
+// format coordinates as MGRS
+static MGRSFormatter s_format(MGRSFormatter::PRECISION_10000M);
+
+// globals for this demo
+osg::StateSet*      g_declutterStateSet = 0L;
+bool                g_showCoords        = true;
+optional<float>     g_duration          = 60.0;
+unsigned            g_numTracks         = 500;
+DeclutteringOptions g_dcOptions;
+
+
+/** Prints an error message */
+int
+usage( const std::string& message )
+{
+    OE_WARN << LC << message << std::endl;
+    return -1;
+}
+
+
+/** A little track simulator that goes a simple great circle interpolation */
+struct TrackSim : public osg::Referenced
+{
+    TrackNode* _track;
+    Angular _startLat, _startLon, _endLat, _endLon;
+
+    void update( double t )
+    {
+        osg::Vec3d pos;
+        GeoMath::interpolate(
+            _startLat.as(Units::RADIANS), _startLon.as(Units::RADIANS),
+            _endLat.as(Units::RADIANS), _endLon.as(Units::RADIANS),
+            t,
+            pos.y(), pos.x() );
+
+        GeoPoint geo(
+            _track->getMapNode()->getMapSRS(),
+            osg::RadiansToDegrees(pos.x()),
+            osg::RadiansToDegrees(pos.y()),
+            10000.0,
+            ALTMODE_ABSOLUTE);
+
+        // update the position label.
+        _track->setPosition(geo);
+
+        if ( g_showCoords )
+        {
+            _track->setFieldValue( FIELD_POSITION, s_format(geo) );
+        }
+        else
+            _track->setFieldValue( FIELD_POSITION, "" );
+    }
+};
+typedef std::list< osg::ref_ptr<TrackSim> > TrackSims;
+
+
+/** Update operation that runs the simulators. */
+struct TrackSimUpdate : public osg::Operation
+{
+    TrackSimUpdate(TrackSims& sims) : osg::Operation( "tasksim", true ), _sims(sims) { }
+
+    void operator()( osg::Object* obj ) {
+        osg::View* view = dynamic_cast<osg::View*>(obj);
+        double t = fmod(view->getFrameStamp()->getSimulationTime(), (double)g_duration.get()) / (double)g_duration.get();
+        for( TrackSims::iterator i = _sims.begin(); i != _sims.end(); ++i )
+            i->get()->update( t );
+    }
+
+    TrackSims& _sims;
+};
+
+
+/**
+ * Creates a field schema that we'll later use as a labeling template for
+ * TrackNode instances.
+ */
+void
+createFieldSchema( TrackNodeFieldSchema& schema )
+{
+    // draw the track name above the icon:
+    TextSymbol* nameSymbol = new TextSymbol();
+    nameSymbol->pixelOffset()->set( 0, 2+ICON_SIZE/2 );
+    nameSymbol->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
+    nameSymbol->halo()->color() = Color::Black;
+    nameSymbol->size() = nameSymbol->size().value() + 2.0f;
+    schema[FIELD_NAME] = TrackNodeField(nameSymbol, false); // false => static label (won't change after set)
+
+    // draw the track coordinates below the icon:
+    TextSymbol* posSymbol = new TextSymbol();
+    posSymbol->pixelOffset()->set( 0, -2-ICON_SIZE/2 );
+    posSymbol->alignment() = TextSymbol::ALIGN_CENTER_TOP;
+    posSymbol->fill()->color() = Color::Yellow;
+    posSymbol->size() = posSymbol->size().value() - 2.0f;
+    schema[FIELD_POSITION] = TrackNodeField(posSymbol, true); // true => may change at runtime
+
+    // draw some other field to the left:
+    TextSymbol* numberSymbol = new TextSymbol();
+    numberSymbol->pixelOffset()->set( -2-ICON_SIZE/2, 0 );
+    numberSymbol->alignment() = TextSymbol::ALIGN_RIGHT_CENTER;
+    schema[FIELD_NUMBER] = TrackNodeField(numberSymbol, false);
+}
+
+
+/** Builds a bunch of tracks. */
+void
+createTrackNodes( MapNode* mapNode, osg::Group* parent, const TrackNodeFieldSchema& schema, TrackSims& sims )
+{
+    // load an icon to use:
+    osg::ref_ptr<osg::Image> srcImage = osgDB::readImageFile( ICON_URL );
+    osg::ref_ptr<osg::Image> image;
+    ImageUtils::resizeImage( srcImage.get(), ICON_SIZE, ICON_SIZE, image );
+
+    // make some tracks, choosing a random simulation for each.
+    Random prng;
+    const SpatialReference* geoSRS = mapNode->getMapSRS()->getGeographicSRS();
+
+    for( unsigned i=0; i<g_numTracks; ++i )
+    {
+        double lon0 = -180.0 + prng.next() * 360.0;
+        double lat0 = -80.0 + prng.next() * 160.0;
+
+        GeoPoint pos(geoSRS, lon0, lat0);
+
+        TrackNode* track = new TrackNode(mapNode, pos, image, schema);
+
+        track->setFieldValue( FIELD_NAME,     Stringify() << "Track:" << i );
+        track->setFieldValue( FIELD_POSITION, Stringify() << s_format(pos) );
+        track->setFieldValue( FIELD_NUMBER,   Stringify() << (1 + prng.next(9)) );
+
+        // add a priority
+        AnnotationData* data = new AnnotationData();
+        data->setPriority( float(i) );
+        track->setAnnotationData( data );
+
+        parent->addChild( track );
+
+        // add a simulator for this guy
+        double lon1 = -180.0 + prng.next() * 360.0;
+        double lat1 = -80.0 + prng.next() * 160.0;
+        TrackSim* sim = new TrackSim();
+        sim->_track = track;        
+        sim->_startLat = lat0; sim->_startLon = lon0;
+        sim->_endLat = lat1; sim->_endLon = lon1;
+        sims.push_back( sim );
+    }
+}
+
+
+/** creates some UI controls for adjusting the decluttering parameters. */
+void
+createControls( osgViewer::View* view )
+{
+    ControlCanvas* canvas = ControlCanvas::get(view, true);
+    
+    // title bar
+    VBox* vbox = canvas->addControl(new VBox(Control::ALIGN_NONE, Control::ALIGN_BOTTOM, 2, 1 ));
+    vbox->setBackColor( Color(Color::Black, 0.5) );
+    vbox->addControl( new LabelControl("osgEarth Tracks Demo", Color::Yellow) );
+    
+    // checkbox that toggles decluttering of tracks
+    struct ToggleDecluttering : public ControlEventHandler {
+        void onValueChanged( Control* c, bool on ) {
+            Decluttering::setEnabled( g_declutterStateSet, on );
+        }
+    };
+    HBox* dcToggle = vbox->addControl( new HBox() );
+    dcToggle->addControl( new CheckBoxControl(true, new ToggleDecluttering()) );
+    dcToggle->addControl( new LabelControl("Declutter") );
+
+    // checkbox that toggles the coordinate display
+    struct ToggleCoords : public ControlEventHandler {
+        void onValueChanged( Control* c, bool on ) {
+            g_showCoords = on;
+        }
+    };
+    HBox* coordsToggle = vbox->addControl( new HBox() );
+    coordsToggle->addControl( new CheckBoxControl(true, new ToggleCoords()) );
+    coordsToggle->addControl( new LabelControl("Show locations") );
+
+    // grid for the slider controls so they look nice
+    Grid* grid = vbox->addControl( new Grid() );
+    grid->setHorizFill( true );
+    grid->setChildHorizAlign( Control::ALIGN_LEFT );
+    grid->setChildSpacing( 6 );
+
+    unsigned r=0;
+
+    // event handler for changing decluttering options
+    struct ChangeFloatOption : public ControlEventHandler {
+        optional<float>& _param;
+        LabelControl* _label;
+        ChangeFloatOption( optional<float>& param, LabelControl* label ) : _param(param), _label(label) { }
+        void onValueChanged( Control* c, float value ) {
+            _param = value;
+            _label->setText( Stringify() << std::fixed << std::setprecision(1) << value );
+            Decluttering::setOptions( g_dcOptions );
+        }
+    };
+
+    grid->setControl( 0, r, new LabelControl("Sim loop duration:") );
+    LabelControl* speedLabel = grid->setControl( 2, r, new LabelControl(Stringify() << std::fixed << std::setprecision(1) << *g_duration) );
+    HSliderControl* speedSlider = grid->setControl( 1, r, new HSliderControl( 
+        600.0, 30.0, *g_duration, new ChangeFloatOption(g_duration, speedLabel) ) );
+    speedSlider->setHorizFill( true, 200 );
+
+    grid->setControl( 0, ++r, new LabelControl("Min scale:") );
+    LabelControl* minAnimationScaleLabel = grid->setControl( 2, r, new LabelControl(Stringify() << std::fixed << std::setprecision(1) << *g_dcOptions.minAnimationScale()) );
+    grid->setControl( 1, r, new HSliderControl( 
+        0.0, 1.0, *g_dcOptions.minAnimationScale(), new ChangeFloatOption(g_dcOptions.minAnimationScale(), minAnimationScaleLabel) ) );
+
+    grid->setControl( 0, ++r, new LabelControl("Min alpha:") );
+    LabelControl* alphaLabel = grid->setControl( 2, r, new LabelControl(Stringify() << std::fixed << std::setprecision(1) << *g_dcOptions.minAnimationAlpha()) );
+    grid->setControl( 1, r, new HSliderControl( 
+        0.0, 1.0, *g_dcOptions.minAnimationAlpha(), new ChangeFloatOption(g_dcOptions.minAnimationAlpha(), alphaLabel) ) );
+
+    grid->setControl( 0, ++r, new LabelControl("Activate time (s):") );
+    LabelControl* actLabel = grid->setControl( 2, r, new LabelControl(Stringify() << std::fixed << std::setprecision(1) << *g_dcOptions.inAnimationTime()) );
+    grid->setControl( 1, r, new HSliderControl( 
+        0.0, 2.0, *g_dcOptions.inAnimationTime(), new ChangeFloatOption(g_dcOptions.inAnimationTime(), actLabel) ) );
+
+    grid->setControl( 0, ++r, new LabelControl("Deactivate time (s):") );
+    LabelControl* deactLabel = grid->setControl( 2, r, new LabelControl(Stringify() << std::fixed << std::setprecision(1) << *g_dcOptions.outAnimationTime()) );
+    grid->setControl( 1, r, new HSliderControl( 
+        0.0, 2.0, *g_dcOptions.outAnimationTime(), new ChangeFloatOption(g_dcOptions.outAnimationTime(), deactLabel) ) );
+}
+
+
+/**
+ * Main application.
+ * Creates some simulated track data and runs the simulation.
+ */
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+
+    // initialize a viewer.
+    osgViewer::Viewer viewer( arguments );
+    viewer.setCameraManipulator( new EarthManipulator );
+
+    // load a map from an earth file.
+    osg::Node* earth = MapNodeHelper().load(arguments, &viewer);
+    MapNode* mapNode = MapNode::findMapNode(earth);
+    if ( !mapNode )
+        return usage("Missing required .earth file" );
+
+    // count on the cmd line?
+    arguments.read("--count", g_numTracks);
+    
+    osg::Group* root = new osg::Group();
+    root->addChild( earth );
+    viewer.setSceneData( root );
+
+    // build a track field schema.
+    TrackNodeFieldSchema schema;
+    createFieldSchema( schema );
+
+    // create some track nodes.
+    TrackSims trackSims;
+    osg::Group* tracks = new osg::Group();
+    createTrackNodes( mapNode, tracks, schema, trackSims );
+    root->addChild( tracks );
+
+    // Set up the automatic decluttering. setEnabled() activates decluttering for
+    // all drawables under that state set. We are also activating priority-based
+    // sorting, which looks at the AnnotationData::priority field for each drawable.
+    // (By default, objects are sorted by disatnce-to-camera.) Finally, we customize 
+    // a couple of the decluttering options to get the animation effects we want.
+    g_declutterStateSet = tracks->getOrCreateStateSet();
+    Decluttering::setEnabled( g_declutterStateSet, true );
+    g_dcOptions = Decluttering::getOptions();
+    g_dcOptions.inAnimationTime()  = 1.0f;
+    g_dcOptions.outAnimationTime() = 1.0f;
+    g_dcOptions.sortByPriority()   = true;
+    Decluttering::setOptions( g_dcOptions );
+
+    // attach the simulator to the viewer.
+    viewer.addUpdateOperation( new TrackSimUpdate(trackSims) );
+    viewer.setRunFrameScheme( viewer.CONTINUOUS );
+
+    // configure a UI for controlling the demo
+    createControls( &viewer );
+
+    viewer.run();
+}
diff --git a/src/applications/osgearth_version/osgearth_version.cpp b/src/applications/osgearth_version/osgearth_version.cpp
index cad9954..173d30f 100644
--- a/src/applications/osgearth_version/osgearth_version.cpp
+++ b/src/applications/osgearth_version/osgearth_version.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,7 @@
 #include <osg/ApplicationUsage>
 #include <osgEarth/Version>
 #include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
 
 using namespace std;
 
diff --git a/src/applications/osgearth_verticalscale/CMakeLists.txt b/src/applications/osgearth_verticalscale/CMakeLists.txt
new file mode 100644
index 0000000..00a19c7
--- /dev/null
+++ b/src/applications/osgearth_verticalscale/CMakeLists.txt
@@ -0,0 +1,7 @@
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
+SET(TARGET_LIBRARIES_VARS OSG_LIBRARY OSGDB_LIBRARY OSGUTIL_LIBRARY OSGVIEWER_LIBRARY OPENTHREADS_LIBRARY)
+
+SET(TARGET_SRC osgearth_verticalscale.cpp )
+
+#### end var setup  ###
+SETUP_APPLICATION(osgearth_verticalscale)
\ No newline at end of file
diff --git a/src/applications/osgearth_verticalscale/osgearth_verticalscale.cpp b/src/applications/osgearth_verticalscale/osgearth_verticalscale.cpp
new file mode 100644
index 0000000..23af1de
--- /dev/null
+++ b/src/applications/osgearth_verticalscale/osgearth_verticalscale.cpp
@@ -0,0 +1,152 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+/**
+ * This sample shows how to use osgEarth's built-in elevation data attributes
+ * to adjust the terrain's vertical scale in real time.
+ */
+#include <osg/Notify>
+#include <osgViewer/Viewer>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/Registry>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/Controls>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+//-------------------------------------------------------------------------
+
+// In the vertex shader, we use a vertex attribute that's genreated by the
+// terrain engine. In this example it's called "osgearth_elevData" but you 
+// can give it any name you want, as long as it's bound to the proper
+// attribute location (see code). 
+//
+// The attribute contains a vec4 which holds the unit "up vector" in 
+// indexes[0,1,2] and the original raw height in index[3].
+//
+// Here, we use the vertical scale uniform to move the vertex up or down
+// along its up vector, thereby scaling the terrain's elevation. The code
+// is intentionally verbose for clarity.
+
+const char* vertexShader =
+    "attribute vec4  osgearth_elevData; \n"
+    "uniform   float verticalScale;     \n"
+
+    "void applyVerticalScale() \n"
+    "{ \n"
+    "    vec3  upVector = osgearth_elevData.xyz;                     \n"
+    "    float elev     = osgearth_elevData.w;                       \n"
+    "    vec3  offset   = upVector * elev * (verticalScale - 1.0);   \n"
+    "    vec4  vertex   = gl_Vertex + vec4(offset/gl_Vertex.w, 0.0); \n"
+    "    gl_Position    = gl_ModelViewProjectionMatrix * vertex;     \n"
+    "} \n";
+
+
+// Build the stateset necessary for scaling elevation data.
+osg::StateSet* createStateSet()
+{
+    osg::StateSet* stateSet = new osg::StateSet();
+
+    // Install the shaders. We also bind osgEarth's elevation data attribute, which the 
+    // terrain engine automatically generates at the specified location.
+    VirtualProgram* vp = new VirtualProgram();
+    vp->installDefaultColoringAndLightingShaders();
+    vp->setFunction( "applyVerticalScale", vertexShader, ShaderComp::LOCATION_VERTEX_PRE_LIGHTING );
+    vp->addBindAttribLocation( "osgearth_elevData", osg::Drawable::ATTRIBUTE_6 );
+    stateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+    return stateSet;
+};
+
+
+// Build a slider to adjust the vertical scale
+osgEarth::Util::Controls::Control* createUI( osg::Uniform* scaler )
+{
+    using namespace osgEarth::Util::Controls;
+
+    struct ApplyVerticalScale : public ControlEventHandler {
+        osg::Uniform* _u;
+        ApplyVerticalScale(osg::Uniform* u) : _u(u) { }
+        void onValueChanged(Control*, float value) {
+            _u->set( value );
+        }
+    };
+
+    HBox* hbox = new HBox();
+    hbox->setChildVertAlign( Control::ALIGN_CENTER );
+    hbox->addControl( new LabelControl("Scale:") );
+    HSliderControl* slider = hbox->addControl( new HSliderControl(0.0, 5.0, 1.0, new ApplyVerticalScale(scaler)) );
+    slider->setHorizFill( true, 200 );
+    hbox->addControl( new LabelControl(slider) );
+
+    return hbox;
+}
+
+
+int main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc, argv);
+
+    // create a viewer:
+    osgViewer::Viewer viewer(arguments);
+
+    // Tell osgEarth to use the "quadtree" terrain driver by default.
+    // Elevation data attribution is only available in this driver!
+    osgEarth::Registry::instance()->setDefaultTerrainEngineDriverName( "quadtree" );
+
+    // install our default manipulator (do this before calling load)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    osg::Uniform* verticalScale = new osg::Uniform(osg::Uniform::FLOAT, "verticalScale");
+    verticalScale->set( 1.0f );
+    osgEarth::Util::Controls::Control* ui = createUI( verticalScale );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags    
+    osg::Node* node = MapNodeHelper().load( arguments, &viewer, ui );
+    if ( node )
+    {
+        MapNode* mapNode = MapNode::findMapNode(node);
+        if ( !mapNode )
+            return -1;
+
+        if ( mapNode->getMap()->getNumElevationLayers() == 0 )
+            OE_WARN << "No elevation layers! Scaling will be very boring." << std::endl;
+
+        // install the shader program and install our controller uniform:
+        osg::Group* root = new osg::Group();
+        root->setStateSet( createStateSet() );
+        root->getStateSet()->addUniform( verticalScale );
+        root->addChild( node );
+
+        viewer.setSceneData( root );
+        viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+
+    return 0;
+}
diff --git a/src/applications/osgearth_viewer/osgearth_viewer.cpp b/src/applications/osgearth_viewer/osgearth_viewer.cpp
index 02966fe..b7e38d7 100644
--- a/src/applications/osgearth_viewer/osgearth_viewer.cpp
+++ b/src/applications/osgearth_viewer/osgearth_viewer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -18,410 +18,48 @@
 */
 
 #include <osg/Notify>
-#include <osgGA/StateSetManipulator>
-#include <osgGA/GUIEventHandler>
 #include <osgViewer/Viewer>
-#include <osgViewer/ViewerEventHandlers>
-#include <osgEarth/MapNode>
-#include <osgEarth/XmlUtils>
 #include <osgEarthUtil/EarthManipulator>
-#include <osgEarthUtil/AutoClipPlaneHandler>
-#include <osgEarthUtil/Controls>
-#include <osgEarthUtil/Graticule>
-#include <osgEarthUtil/SkyNode>
-#include <osgEarthUtil/Viewpoint>
-#include <osgEarthUtil/Formatters>
-#include <osgEarthUtil/Annotation>
-#include <osgEarthSymbology/Color>
-#include <osgEarthDrivers/kml/KML>
+#include <osgEarthUtil/ExampleResources>
 
-using namespace osgEarth::Util;
-using namespace osgEarth::Util::Annotation;
-using namespace osgEarth::Util::Controls;
-using namespace osgEarth::Symbology;
-using namespace osgEarth::Drivers;
-
-int
-usage( const std::string& msg )
-{
-    OE_NOTICE << msg << std::endl;
-    OE_NOTICE << std::endl;
-    OE_NOTICE << "USAGE: osgearth_viewer [options] file.earth" << std::endl;
-    OE_NOTICE << "   --sky           : activates the atmospheric model" << std::endl;
-    OE_NOTICE << "   --autoclip      : activates the auto clip-plane handler" << std::endl;
-    OE_NOTICE << "   --dms           : format coordinates as degrees/minutes/seconds" << std::endl;
-    OE_NOTICE << "   --mgrs          : format coordinates as MGRS" << std::endl;
-    
-        
-    return -1;
-}
-
-static EarthManipulator* s_manip         =0L;
-static Control*          s_controlPanel  =0L;
-static SkyNode*          s_sky           =0L;
-static bool              s_dms           =false;
-static bool              s_mgrs          =false;
-
-struct SkySliderHandler : public ControlEventHandler
-{
-    virtual void onValueChanged( class Control* control, float value )
-    {
-        s_sky->setDateTime( 2011, 3, 6, value );
-    }
-};
-
-struct ToggleNodeHandler : public ControlEventHandler
-{
-    ToggleNodeHandler( osg::Node* node ) : _node(node) { }
-
-    virtual void onValueChanged( class Control* control, bool value )
-    {
-        osg::ref_ptr<osg::Node> safeNode = _node.get();
-        if ( safeNode.valid() )
-            safeNode->setNodeMask( value ? ~0 : 0 );
-    }
-
-    osg::observer_ptr<osg::Node> _node;
-};
-
-struct ClickViewpointHandler : public ControlEventHandler
-{
-    ClickViewpointHandler( const Viewpoint& vp ) : _vp(vp) { }
-    Viewpoint _vp;
-
-    virtual void onClick( class Control* control )
-    {
-        s_manip->setViewpoint( _vp, 4.5 );
-    }
-};
-
-struct MouseCoordsHandler : public osgGA::GUIEventHandler
-{
-    MouseCoordsHandler( LabelControl* label, osgEarth::MapNode* mapNode )
-        : _label( label ),
-          _mapNode( mapNode )
-    {
-        _mapNodePath.push_back( mapNode->getTerrainEngine() );
-    }
-
-    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-    {
-        osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
-        if (ea.getEventType() == ea.MOVE || ea.getEventType() == ea.DRAG)
-        {
-            osgUtil::LineSegmentIntersector::Intersections results;
-            if ( view->computeIntersections( ea.getX(), ea.getY(), _mapNodePath, results ) )
-            {
-                // find the first hit under the mouse:
-                osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
-                osg::Vec3d point = first.getWorldIntersectPoint();
-                osg::Vec3d lla;
-
-                // transform it to map coordinates:
-                _mapNode->getMap()->worldPointToMapPoint(point, lla);
-
-                std::stringstream ss;
-
-                if ( s_mgrs )
-                {
-                    MGRSFormatter f( MGRSFormatter::PRECISION_1M );
-                    ss << "MGRS: " << f.format(lla.y(), lla.x()) << "   ";
-                }
-                 // lat/long
-                {
-                    LatLongFormatter::AngularFormat fFormat = s_dms?
-                        LatLongFormatter::FORMAT_DEGREES_MINUTES_SECONDS :
-                        LatLongFormatter::FORMAT_DECIMAL_DEGREES;
-                    
-                    LatLongFormatter f( fFormat );
-
-                    ss 
-                        << "Lat: " << f.format( Angular(lla.y(),Units::DEGREES), 4 ) << "  "
-                        << "Lon: " << f.format( Angular(lla.x(),Units::DEGREES), 5 );
-                }
-
-                _label->setText( ss.str() );
-            }
-            else
-            {
-                //Clear the text
-                _label->setText( "" );
-            }
-        }
-        return false;
-    }
-
-    osg::ref_ptr< LabelControl > _label;
-    MapNode*                     _mapNode;
-    osg::NodePath                _mapNodePath;
-};
-
-
-
-void
-createControlPanel( osgViewer::View* view, std::vector<Viewpoint>& vps )
-{
-    ControlCanvas* canvas = ControlCanvas::get( view );
-
-    VBox* main = new VBox();
-    main->setBackColor(0,0,0,0.5);
-    main->setMargin( 10 );
-    main->setPadding( 10 );
-    main->setChildSpacing( 10 );
-    main->setAbsorbEvents( true );
-    main->setVertAlign( Control::ALIGN_BOTTOM );
-
-    if ( vps.size() > 0 )
-    {
-        // the viewpoint container:
-        Grid* g = new Grid();
-        g->setChildSpacing( 0 );
-        g->setChildVertAlign( Control::ALIGN_CENTER );
-
-        unsigned i;
-        for( i=0; i<vps.size(); ++i )
-        {
-            const Viewpoint& vp = vps[i];
-            std::stringstream buf;
-            buf << (i+1);
-            Control* num = new LabelControl(buf.str(), 16.0f, osg::Vec4f(1,1,0,1));
-            num->setPadding( 4 );
-            g->setControl( 0, i, num );
-
-            Control* vpc = new LabelControl(vp.getName().empty() ? "<no name>" : vp.getName(), 16.0f);
-            vpc->setPadding( 4 );
-            vpc->setHorizFill( true );
-            vpc->setActiveColor( Color::Blue );
-            vpc->addEventHandler( new ClickViewpointHandler(vp) );
-            g->setControl( 1, i, vpc );
-        }
-        main->addControl( g );
-    }
+#define LC "[viewer] "
 
-    // sky time slider:
-    if ( s_sky )
-    {
-        HBox* skyBox = new HBox();
-        skyBox->setChildVertAlign( Control::ALIGN_CENTER );
-        skyBox->setChildSpacing( 10 );
-        skyBox->setHorizFill( true );
-
-        skyBox->addControl( new LabelControl("Time: ", 16) );
-
-        HSliderControl* skySlider = new HSliderControl( 0.0f, 24.0f, 18.0f );
-        skySlider->setBackColor( Color::Gray );
-        skySlider->setHeight( 12 );
-        skySlider->setHorizFill( true, 200 );
-        skySlider->addEventHandler( new SkySliderHandler );
-        skyBox->addControl( skySlider );
-
-        main->addControl( skyBox );
-    }
-    
-    canvas->addControl( main );
-
-    s_controlPanel = main;
-}
-
-/**
- * Visitor that builds a UI control for a loaded KML file.
- */
-struct KMLUIBuilder : public osg::NodeVisitor
-{
-    KMLUIBuilder( ControlCanvas* canvas ) : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN), _canvas(canvas)
-    {
-        _grid = new Grid();
-        _grid->setAbsorbEvents( true );
-        _grid->setPadding( 5 );
-        _grid->setVertAlign( Control::ALIGN_TOP );
-        _grid->setHorizAlign( Control::ALIGN_LEFT );
-        _grid->setBackColor( Color(Color::Black,0.5) );
-        _canvas->addControl( _grid );
-    }
-
-    void apply( osg::Node& node )
-    {
-        AnnotationData* data = dynamic_cast<AnnotationData*>( node.getUserData() );
-        if ( data )
-        {
-            ControlVector row;
-            CheckBoxControl* cb = new CheckBoxControl( node.getNodeMask() != 0, new ToggleNodeHandler( &node ) );
-            cb->setSize( 12, 12 );
-            row.push_back( cb );
-            std::string name = data->getName().empty() ? "<unnamed>" : data->getName();
-            LabelControl* label = new LabelControl( name, 14.0f );
-            label->setMargin(Gutter(0,0,0,(this->getNodePath().size()-3)*20));
-            if ( data->getViewpoint() )
-            {
-                label->addEventHandler( new ClickViewpointHandler(*data->getViewpoint()) );
-                label->setActiveColor( Color::Blue );
-            }
-            row.push_back( label );
-            _grid->addControls( row );
-        }
-        traverse(node);
-    }
-
-    ControlCanvas* _canvas;
-    Grid*          _grid;
-};
-
-void addMouseCoords(osgViewer::Viewer* viewer, osgEarth::MapNode* mapNode)
-{
-    ControlCanvas* canvas = ControlCanvas::get( viewer );
-    LabelControl* mouseCoords = new LabelControl();
-    mouseCoords->setHorizAlign(Control::ALIGN_CENTER );
-    mouseCoords->setVertAlign(Control::ALIGN_BOTTOM );
-    mouseCoords->setBackColor(0,0,0,0.5);    
-    mouseCoords->setSize(400,50);
-    mouseCoords->setMargin( 10 );
-    canvas->addControl( mouseCoords );
-
-    viewer->addEventHandler( new MouseCoordsHandler(mouseCoords, mapNode ) );
-}
-
-struct ViewpointHandler : public osgGA::GUIEventHandler
-{
-    ViewpointHandler( const std::vector<Viewpoint>& viewpoints )
-        : _viewpoints( viewpoints ) { }
-
-    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-    {
-        if ( ea.getEventType() == ea.KEYDOWN )
-        {
-            int index = (int)ea.getKey() - (int)'1';
-            if ( index >= 0 && index < (int)_viewpoints.size() )
-            {
-                s_manip->setViewpoint( _viewpoints[index], 4.5 );
-            }
-            else if ( ea.getKey() == 'v' )
-            {
-                Viewpoint vp = s_manip->getViewpoint();
-                XmlDocument xml( vp.getConfig() );
-                xml.store( std::cout );
-                std::cout << std::endl;
-            }
-            else if ( ea.getKey() == '?' )
-            {
-                s_controlPanel->setVisible( !s_controlPanel->visible() );
-            }
-        }
-        return false;
-    }
-
-    std::vector<Viewpoint> _viewpoints;
-};
+using namespace osgEarth;
+using namespace osgEarth::Util;
 
 int
 main(int argc, char** argv)
 {
     osg::ArgumentParser arguments(&argc,argv);
-    osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
-    osgViewer::Viewer viewer(arguments);
-
-    bool useAutoClip  = arguments.read( "--autoclip" );
-    bool useSky       = arguments.read( "--sky" );
-    s_dms             = arguments.read( "--dms" );
-    s_mgrs            = arguments.read( "--mgrs" );
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
 
-    std::string kmlFile;
-    arguments.read( "--kml", kmlFile );
+    // create a viewer:
+    osgViewer::Viewer viewer(arguments);
 
-    // load the .earth file from the command line.
-    osg::Node* earthNode = osgDB::readNodeFiles( arguments );
-    if (!earthNode)
-        return usage( "Unable to load earth model." );
-    
-    s_manip = new EarthManipulator();
-    s_manip->getSettings()->setArcViewpointTransitions( true );
-    viewer.setCameraManipulator( s_manip );
+    //Tell the database pager to not modify the unref settings
+    viewer.getDatabasePager()->setUnrefImageDataAfterApplyPolicy( false, false );
 
-    osg::Group* root = new osg::Group();
-    root->addChild( earthNode );
+    // install our default manipulator (do this before calling load)
+    viewer.setCameraManipulator( new EarthManipulator() );
 
-    // create a graticule and clip plane handler.
-    Graticule* graticule = 0L;
-    osgEarth::MapNode* mapNode = osgEarth::MapNode::findMapNode( earthNode );
-    if ( mapNode )
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags    
+    osg::Node* node = MapNodeHelper().load( arguments, &viewer );
+    if ( node )
     {
-        const Config& externals = mapNode->externalConfig();
-
-        if ( mapNode->getMap()->isGeocentric() )
-        {
-            // Sky model.
-            Config skyConf = externals.child( "sky" );
-            if ( !skyConf.empty() )
-                useSky = true;
-
-            if ( useSky )
-            {
-                double hours = skyConf.value( "hours", 12.0 );
-                s_sky = new SkyNode( mapNode->getMap() );
-                s_sky->setDateTime( 2011, 3, 6, hours );
-                s_sky->attach( &viewer );
-                root->addChild( s_sky );
-            }
-
-            if ( externals.hasChild("autoclip") )
-                useAutoClip = externals.child("autoclip").boolValue( useAutoClip );
-
-            // the AutoClipPlaneHandler will automatically adjust the near/far clipping
-            // planes based on your view of the horizon. This prevents near clipping issues
-            // when you are very close to the ground. If your app never brings a user very
-            // close to the ground, you may not need this.
-            if ( useSky || useAutoClip )
-            {
-                viewer.getCamera()->addEventCallback( new AutoClipPlaneCallback() );
-            }
-        }
+        viewer.setSceneData( node );
 
-        // read in viewpoints, if any
-        std::vector<Viewpoint> viewpoints;
-        const ConfigSet children = externals.children("viewpoint");
-        if ( children.size() > 0 )
-        {
-            for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
-                viewpoints.push_back( Viewpoint(*i) );
+        // configure the near/far so we don't clip things that are up close
+        viewer.getCamera()->setNearFarRatio(0.00002);
 
-            viewer.addEventHandler( new ViewpointHandler(viewpoints) );
-        }
-
-        // Add a control panel to the scene
-        root->addChild( ControlCanvas::get( &viewer ) );
-        if ( viewpoints.size() > 0 || s_sky )
-            createControlPanel(&viewer, viewpoints);
-
-        addMouseCoords( &viewer, mapNode );
-
-        // Load a KML file if specified
-        if ( !kmlFile.empty() )
-        {
-            KMLOptions kmlo;
-            kmlo.defaultIconImage() = URI("http://www.osgearth.org/chrome/site/pushpin_yellow.png").readImage();
-
-            osg::Node* kml = KML::load( URI(kmlFile), mapNode, kmlo );
-            if ( kml )
-            {
-                root->addChild( kml );
-
-                KMLUIBuilder uibuilder( ControlCanvas::get(&viewer) );
-                root->accept( uibuilder );                
-            }
-        }
+        viewer.run();
     }
-
-    // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
-    // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
-    viewer.getDatabasePager()->setDoPreCompile( true );
-
-    viewer.setSceneData( root );
-
-    // add some stock OSG handlers:
-    viewer.addEventHandler(new osgViewer::StatsHandler());
-    viewer.addEventHandler(new osgViewer::WindowSizeHandler());
-    viewer.addEventHandler(new osgViewer::ThreadingHandler());
-    viewer.addEventHandler(new osgViewer::LODScaleHandler());
-    viewer.addEventHandler(new osgGA::StateSetManipulator(viewer.getCamera()->getOrCreateStateSet()));
-
-    return viewer.run();
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+    return 0;
 }
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.h
new file mode 100644
index 0000000..5be9a57
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.h
@@ -0,0 +1,20 @@
+//
+//  AppDelegate.h
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 14/07/2012.
+//
+
+#import <UIKit/UIKit.h>
+
+#include <osgViewer/Viewer>
+
+ at class StartViewerController;
+
+ at interface AppDelegate : UIResponder <UIApplicationDelegate>
+
+ at property (strong, nonatomic) UIWindow *window;
+
+ at property (strong, nonatomic) StartViewerController *startViewerController;
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.m b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.m
new file mode 100644
index 0000000..499a3e2
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/AppDelegate.m
@@ -0,0 +1,68 @@
+//
+//  AppDelegate.m
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 14/07/2012.
+//
+
+#import "AppDelegate.h"
+
+#import "StartViewerController.h"
+
+ at implementation AppDelegate
+
+ at synthesize window = _window;
+ at synthesize startViewerController = _startViewerController;
+
+- (void)dealloc
+{
+    [_window release];
+    [_startViewerController release];
+    [super dealloc];
+}
+
+- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
+{
+    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
+    // Override point for customization after application launch.
+    
+    self.startViewerController = [[StartViewerController alloc] init];
+    self.window.rootViewController = self.startViewerController;
+    [self.window makeKeyAndVisible];
+    return YES;
+}
+
+- (void)applicationWillResignActive:(UIApplication *)application
+{
+    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
+    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
+}
+
+- (void)applicationDidEnterBackground:(UIApplication *)application
+{
+    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 
+    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
+    [self.startViewerController stopAnimation];
+}
+
+- (void)applicationWillEnterForeground:(UIApplication *)application
+{
+    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
+}
+
+- (void)applicationDidBecomeActive:(UIApplication *)application
+{
+    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
+    [self.startViewerController startAnimation];
+}
+
+- (void)applicationWillTerminate:(UIApplication *)application
+{
+    OSG_ALWAYS << "applicationWillTerminate" <<std::endl;
+    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
+    self.window.rootViewController = nil;
+    [self.startViewerController stopAnimation];
+    //self.viewController = nil;
+}
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.cpp b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.cpp
new file mode 100644
index 0000000..a55a8bc
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.cpp
@@ -0,0 +1,179 @@
+/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2010 Robert Osfield
+ *
+ * This library is open source and may be redistributed and/or modified under
+ * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
+ * (at your option) any later version.  The full license is in LICENSE file
+ * included with this distribution, and on the openscenegraph.org website.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * OpenSceneGraph Public License for more details.
+*/
+
+
+#include "EarthMultiTouchManipulator.h"
+
+using namespace osgEarth::Util;
+
+/// Constructor.
+EarthMultiTouchManipulator::EarthMultiTouchManipulator()
+   : EarthManipulator(),
+    _gestureState(NO_GESTURE)
+{
+
+}
+
+
+/// Constructor.
+EarthMultiTouchManipulator::EarthMultiTouchManipulator( const EarthMultiTouchManipulator& tm)
+    : EarthManipulator(tm)
+{
+}
+
+EarthMultiTouchManipulator::~EarthMultiTouchManipulator(){
+    
+}
+
+osgGA::GUIEventAdapter* EarthMultiTouchManipulator::handleMultiTouchDrag(osgGA::GUIEventAdapter::TouchData* now, 
+                                                                         osgGA::GUIEventAdapter::TouchData* last, 
+                                                                         const osgGA::GUIEventAdapter& ea,
+                                                                         const double eventTimeDelta)
+{
+    const float zoom_threshold = 1.0f;
+    
+    osg::Vec2 pt_1_now(now->get(0).x,now->get(0).y);
+    osg::Vec2 pt_2_now(now->get(1).x,now->get(1).y);
+    osg::Vec2 pt_1_last(last->get(0).x,last->get(0).y);
+    osg::Vec2 pt_2_last(last->get(1).x,last->get(1).y);
+    
+    float gap_now((pt_1_now - pt_2_now).length());
+    float gap_last((pt_1_last - pt_2_last).length());
+    
+    osg::Vec2 pt1Dir = pt_1_now - pt_1_last;
+    //float pt1Traveled = pt1Dir.normalize();
+    osg::Vec2 pt2Dir = pt_2_now - pt_2_last;
+    //float pt2Traveled = pt2Dir.normalize();
+    float dotNow = pt1Dir * pt2Dir;
+    
+    
+    //osg::notify(osg::ALWAYS) << "Gap: " << gap_now << " " << gap_last << ", Dot: " << dotNow << std::endl;
+    
+    if (fabs(gap_last - gap_now) >= zoom_threshold && dotNow <= -0.6f)// && _gestureState != TWO_DRAGING)
+    {
+        _gestureState = PINCHING;
+        
+        // zoom gesture
+        osgGA::GUIEventAdapter* zoomAdpt = new osgGA::GUIEventAdapter(ea);
+        zoomAdpt->setButtonMask(osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON);
+        _pinchVector.y() += gap_last - gap_now;
+        zoomAdpt->setY(_pinchVector.y());
+        return zoomAdpt;
+        
+    }else if(fabs(gap_last - gap_now) >= zoom_threshold && dotNow >= 0.3f){// && _gestureState != PINCHING){
+    
+        _gestureState = TWO_DRAGING;
+        OSG_ALWAYS << "two drag" << std::endl;
+        // drag gesture
+        osgGA::GUIEventAdapter* dragAdpt = new osgGA::GUIEventAdapter(ea);
+        dragAdpt->setButtonMask(osgGA::GUIEventAdapter::MIDDLE_MOUSE_BUTTON);
+        return dragAdpt;
+        
+    }else{
+        if(_gestureState == PINCHING){
+            osgGA::GUIEventAdapter* zoomAdpt = new osgGA::GUIEventAdapter(ea);
+            zoomAdpt->setButtonMask(osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON);
+            zoomAdpt->setY(_pinchVector.y());
+            return zoomAdpt;
+        }
+        if(_gestureState == TWO_DRAGING){
+            osgGA::GUIEventAdapter* dragAdpt = new osgGA::GUIEventAdapter(ea);
+            dragAdpt->setButtonMask(osgGA::GUIEventAdapter::MIDDLE_MOUSE_BUTTON);
+            return dragAdpt;
+        }
+    }
+    return NULL;
+}
+
+
+bool EarthMultiTouchManipulator::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& us )
+{
+
+    bool handled(false);
+    
+    osg::ref_ptr<osgGA::GUIEventAdapter> touchAdpt = NULL;
+
+    switch(ea.getEventType())
+    {
+
+        case osgGA::GUIEventAdapter::PUSH:
+        case osgGA::GUIEventAdapter::DRAG:
+        case osgGA::GUIEventAdapter::RELEASE:
+            if (ea.isMultiTouchEvent())
+            {
+                double eventTimeDelta = 1/60.0; //_ga_t0->getTime() - _ga_t1->getTime();
+                if( eventTimeDelta < 0. )
+                {
+                    OSG_WARN << "Manipulator warning: eventTimeDelta = " << eventTimeDelta << std::endl;
+                    eventTimeDelta = 0.;
+                }
+                osgGA::GUIEventAdapter::TouchData* data = ea.getTouchData();
+
+                // single double tap replaces left double click
+                if((data->getNumTouchPoints() == 1) && (data->get(0).tapCount >= 2))
+                {
+                    OSG_ALWAYS << "Left Click" << std::endl;
+                    //build dummy input event
+                    touchAdpt = new osgGA::GUIEventAdapter(ea);
+                    touchAdpt->setButtonMask(osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON);
+                    touchAdpt->setEventType(osgGA::GUIEventAdapter::DOUBLECLICK);
+                    
+                //two touch doble tap replaces right click
+                }else if((data->getNumTouchPoints() == 2) && (data->get(0).tapCount >= 2))
+                {
+                    OSG_ALWAYS << "Right Click" << std::endl;
+                    //build dummy input event
+                    touchAdpt = new osgGA::GUIEventAdapter(ea);
+                    touchAdpt->setButtonMask(osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON);
+                    touchAdpt->setEventType(osgGA::GUIEventAdapter::DOUBLECLICK);
+                    
+                }else if (data->getNumTouchPoints() >= 2)//handle multi touch
+                {
+                    if ((_lastTouchData.valid()) && (_lastTouchData->getNumTouchPoints() >= 2))
+                    {
+                        touchAdpt = handleMultiTouchDrag(data, _lastTouchData.get(), ea, eventTimeDelta);
+                    }else{
+                        _pinchVector.y() = ea.getY();
+                    }
+                    
+                    //handled = true;
+                }
+
+                _lastTouchData = data;
+
+                // check if all touches ended
+                unsigned int num_touches_ended(0);
+                for(osgGA::GUIEventAdapter::TouchData::iterator i = data->begin(); i != data->end(); ++i)
+                {
+                    if ((*i).phase == osgGA::GUIEventAdapter::TOUCH_ENDED)
+                        num_touches_ended++;
+                }
+
+                if(num_touches_ended == data->getNumTouchPoints())
+                {
+                    _lastTouchData = NULL;
+                    _pinchVector = osg::Vec2(0,0);
+                    _gestureState = NO_GESTURE;
+                }
+
+            }
+            break;
+        default:
+            break;
+    }
+
+    if(touchAdpt.valid()){
+        return EarthManipulator::handle(*touchAdpt.get(), us);
+    }
+    return EarthManipulator::handle(ea, us);
+}
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.h
new file mode 100644
index 0000000..301ef7d
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/MultiTouchManipulator/EarthMultiTouchManipulator.h
@@ -0,0 +1,58 @@
+/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2010 Robert Osfield
+ *
+ * This library is open source and may be redistributed and/or modified under
+ * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
+ * (at your option) any later version.  The full license is in LICENSE file
+ * included with this distribution, and on the openscenegraph.org website.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * OpenSceneGraph Public License for more details.
+*/
+
+#ifndef OSGEARTHUTIL_EARTHMULTITOUCHMANIPULATOR
+#define OSGEARTHUTIL_EARTHMULTITOUCHMANIPULATOR
+
+#include <osgEarthUtil/EarthManipulator>
+
+
+namespace osgEarth { namespace Util
+{
+    
+class EarthMultiTouchManipulator : public EarthManipulator
+{
+public:
+    enum GestureState{
+        NO_GESTURE,
+        PINCHING,
+        TWO_DRAGING
+    };
+
+    EarthMultiTouchManipulator();
+    EarthMultiTouchManipulator( const EarthMultiTouchManipulator& tm);
+
+
+    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& us );
+
+public: // osgGA::MatrixManipulator
+    
+    virtual const char* className() const { return "EarthMultiTouchManipulator"; }
+    
+protected:
+    virtual ~EarthMultiTouchManipulator();
+
+    osgGA::GUIEventAdapter* handleMultiTouchDrag(osgGA::GUIEventAdapter::TouchData* now, 
+                                                 osgGA::GUIEventAdapter::TouchData* last, 
+                                                 const osgGA::GUIEventAdapter& ea,
+                                                 const double eventTimeDelta);
+
+    GestureState _gestureState;
+    osg::Vec2 _pinchVector;
+    osg::ref_ptr<osgGA::GUIEventAdapter::TouchData> _lastTouchData;
+};
+
+}
+}
+
+#endif /* OSGEARTHUTIL_EARTHMULTITOUCHMANIPULATOR */
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.cpp b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.cpp
new file mode 100755
index 0000000..a2043f1
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.cpp
@@ -0,0 +1,581 @@
+/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield 
+ *
+ * This library is open source and may be redistributed and/or modified under  
+ * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 
+ * (at your option) any later version.  The full license is in LICENSE file
+ * included with this distribution, and on the openscenegraph.org website.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
+ * OpenSceneGraph Public License for more details.
+ */
+
+/**
+ * \brief    Shader generator framework.
+ * \author   Maciej Krol
+ */
+
+#include "GLES2ShaderGenVisitor.h"
+#include <osg/Geode>
+#include <osg/Geometry> // for ShaderGenVisitor::update
+#include <osg/Fog>
+#include <osg/Material>
+#include <sstream>
+
+#ifndef WIN32
+#define SHADER_COMPAT \
+"#ifndef GL_ES\n" \
+"#if (__VERSION__ <= 110)\n" \
+"#define lowp\n" \
+"#define mediump\n" \
+"#define highp\n" \
+"#endif\n" \
+"#endif\n"
+#else
+#define SHADER_COMPAT ""
+#endif
+
+
+using namespace osgUtil;
+
+namespace osgUtil
+{
+    
+    /// State extended by mode/attribute accessors
+    class StateEx : public osg::State
+    {
+    public:
+        StateEx() : State() {}
+        
+        osg::StateAttribute::GLModeValue getMode(osg::StateAttribute::GLMode mode,
+                                                 osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            return getMode(_modeMap, mode, def);
+        }
+        
+        osg::StateAttribute *getAttribute(osg::StateAttribute::Type type, unsigned int member = 0) const
+        {
+            return getAttribute(_attributeMap, type, member);
+        }
+        
+        osg::StateAttribute::GLModeValue getTextureMode(unsigned int unit,
+                                                        osg::StateAttribute::GLMode mode,
+                                                        osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            return unit < _textureModeMapList.size() ? getMode(_textureModeMapList[unit], mode, def) : def;
+        }
+        
+        osg::StateAttribute *getTextureAttribute(unsigned int unit, osg::StateAttribute::Type type) const
+        {
+            return unit < _textureAttributeMapList.size() ? getAttribute(_textureAttributeMapList[unit], type, 0) : 0;
+        }
+        
+        osg::Uniform *getUniform(const std::string& name) const
+        {
+            UniformMap::const_iterator it = _uniformMap.find(name);
+            return it != _uniformMap.end() ? 
+            const_cast<osg::Uniform *>(it->second.uniformVec.back().first) : 0;
+        }
+        
+    protected:
+        
+        osg::StateAttribute::GLModeValue getMode(const ModeMap &modeMap,
+                                                 osg::StateAttribute::GLMode mode, 
+                                                 osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            ModeMap::const_iterator it = modeMap.find(mode);
+            return (it != modeMap.end() && it->second.valueVec.size()) ? it->second.valueVec.back() : def;
+        }
+        
+        osg::StateAttribute *getAttribute(const AttributeMap &attributeMap,
+                                          osg::StateAttribute::Type type, unsigned int member = 0) const
+        {
+            AttributeMap::const_iterator it = attributeMap.find(std::make_pair(type, member));
+            return (it != attributeMap.end() && it->second.attributeVec.size()) ? 
+            const_cast<osg::StateAttribute*>(it->second.attributeVec.back().first) : 0;
+        }
+    };
+    
+}
+
+void GLES2ShaderGenCache::setStateSet(int stateMask, osg::StateSet *stateSet)
+{
+    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
+    _stateSetMap[stateMask] = stateSet;
+}
+
+osg::StateSet* GLES2ShaderGenCache::getStateSet(int stateMask) const
+{
+    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
+    StateSetMap::const_iterator it = _stateSetMap.find(stateMask);
+    return (it != _stateSetMap.end()) ? it->second.get() : 0;
+}
+
+osg::StateSet* GLES2ShaderGenCache::getOrCreateStateSet(int stateMask)
+{
+    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
+    StateSetMap::iterator it = _stateSetMap.find(stateMask);
+    if (it == _stateSetMap.end())
+    {
+        osg::StateSet *stateSet = createStateSet(stateMask);
+        _stateSetMap.insert(it, StateSetMap::value_type(stateMask, stateSet));
+        return stateSet;
+    }
+    return it->second.get();
+}
+
+osg::StateSet* GLES2ShaderGenCache::createStateSet(int stateMask) const
+{
+    osg::StateSet *stateSet = new osg::StateSet;
+    osg::Program *program = new osg::Program;
+    stateSet->setAttribute(program);
+    
+    std::ostringstream vert;
+    std::ostringstream frag;
+    
+    //first add the shader compat defines so that we don't have issues with using precision stuff
+    vert << SHADER_COMPAT;
+    frag << SHADER_COMPAT;
+    
+    // write varyings
+    if ((stateMask & LIGHTING) && !(stateMask & NORMAL_MAP))
+    {
+        vert << "varying highp vec3 normalDir;\n";
+    }
+    
+    if (stateMask & (LIGHTING | NORMAL_MAP))
+    {
+        vert << "struct osg_LightSourceParameters {"
+        << "    mediump vec4  ambient;"
+        << "    mediump vec4  diffuse;"
+        << "    mediump vec4  specular;"
+        << "    mediump vec4  position;"
+        << "    mediump vec4  halfVector;"
+        << "    mediump vec3  spotDirection;" 
+        << "    mediump float  spotExponent;"
+        << "    mediump float  spotCutoff;"
+        << "    mediump float  spotCosCutoff;" 
+        << "    mediump float  constantAttenuation;"
+        << "    mediump float  linearAttenuation;"
+        << "    mediump float  quadraticAttenuation;" 
+        << "};\n"
+        << "uniform osg_LightSourceParameters osg_LightSource[" << 1 << "];\n"
+        
+        << "struct  osg_LightProducts {"
+        << "    mediump vec4  ambient;"
+        << "    mediump vec4  diffuse;"
+        << "    mediump vec4  specular;"
+        << "};\n"
+        << "uniform osg_LightProducts osg_FrontLightProduct[" << 1 << "];\n"
+        
+        << "varying highp vec3 lightDir;\n";
+    }
+    
+    if (stateMask & (LIGHTING | NORMAL_MAP | FOG))
+    {
+        vert << "varying highp vec3 viewDir;\n";
+    }
+    
+    //add texcoord varying if using gles2 as built in gl_TexCoord does not exist,
+    //also no gl_FrontColor so we will define vColor
+#ifndef OSG_GL_FIXED_FUNCTION_AVAILABLE
+    if (stateMask & (DIFFUSE_MAP | NORMAL_MAP))
+    {
+        vert << "varying mediump vec4 texCoord0;\n";
+    }
+    vert << "varying mediump vec4 vColor;\n";
+#endif
+    
+    // copy varying to fragment shader
+    frag << vert.str();
+    
+    //add our material replacment uniforms for non fixed function versions
+#ifndef OSG_GL_FIXED_FUNCTION_AVAILABLE
+    if (stateMask & (LIGHTING | NORMAL_MAP))
+    {
+        frag <<
+        "struct osgMaterial{\n"\
+        "  mediump vec4 ambient;\n"\
+        "  mediump vec4 diffuse;\n"\
+        "  mediump vec4 specular;\n"\
+        "  mediump float shine;\n"\
+        "};\n"\
+        
+        "uniform osgMaterial osg_Material;\n";
+    }
+#endif
+    
+
+    // write uniforms and attributes
+    int unit = 0;
+    
+    //add the replacements for gl matricies and verticies
+#ifndef OSG_GL_FIXED_FUNCTION_AVAILABLE
+    //vert << "attribute vec4 gl_Vertex;\n";
+    vert << "attribute vec4 osg_Color;\n";
+    vert << "uniform mat4 osg_ModelViewProjectionMatrix;\n";
+#endif
+    
+    if (stateMask & DIFFUSE_MAP)
+    {
+        osg::Uniform *diffuseMap = new osg::Uniform("diffuseMap", unit++);
+        stateSet->addUniform(diffuseMap);
+        frag << "uniform sampler2D diffuseMap;\n";
+    }
+    
+    if (stateMask & NORMAL_MAP)
+    {
+        osg::Uniform *normalMap = new osg::Uniform("normalMap", unit++);
+        stateSet->addUniform(normalMap);
+        frag << "uniform sampler2D normalMap;\n";
+        program->addBindAttribLocation("tangent", 6);
+        vert << "attribute vec3 tangent;\n";
+    }
+    
+    
+#ifndef OSG_GL_FIXED_FUNCTION_AVAILABLE
+
+    //non fixed function texturing
+    if (stateMask & (DIFFUSE_MAP | NORMAL_MAP))
+    {
+        vert << "attribute vec4 osg_MultiTexCoord0;\n";
+    }
+    
+    //non fixed function normal info
+    if (stateMask & (LIGHTING | NORMAL_MAP))
+    {
+        //vert << "uniform mat4 osg_ModelViewMatrix;\n";
+        //vert << "attribute vec3 osg_Normal;\n";
+        //vert << "uniform mat3 osg_NormalMatrix;\n";        
+    }
+#endif
+    
+    vert << "\n"\
+    "void main()\n"\
+    "{\n"\
+    
+    //ftransform does not exist in gles2 (need to see if it's still in GL3)
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+    "  gl_Position = ftransform();\n";
+#else
+    "  gl_Position = osg_ModelViewProjectionMatrix * gl_Vertex;\n";
+#endif
+    
+    if (stateMask & (DIFFUSE_MAP | NORMAL_MAP))
+    {
+        //gles2 does not have built in gl_TexCoord varying
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        vert << "  gl_TexCoord[0] = gl_MultiTexCoord0;\n";
+#else
+        vert << "  texCoord0 = osg_MultiTexCoord0;\n";
+#endif
+    }
+    
+    //
+    
+    if (stateMask & NORMAL_MAP)
+    {
+        //gl_NormalMatrix etc should be replaced automatically
+        vert << 
+        "  highp vec3 n = gl_NormalMatrix * gl_Normal;\n"\
+        "  highp vec3 t = gl_NormalMatrix * tangent;\n"\
+        "  highp vec3 b = cross(n, t);\n"\
+        "  highp vec3 dir = -vec3(gl_ModelViewMatrix * gl_Vertex);\n"\
+        "  viewDir.x = dot(dir, t);\n"\
+        "  viewDir.y = dot(dir, b);\n"\
+        "  viewDir.z = dot(dir, n);\n";
+//use fixed light pos for now where gl_LightSource is not avaliable
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE 
+        vert << "  vec4 lpos = gl_LightSource[0].position;\n";
+#else
+        vert << "  highp vec4 lpos = osg_LightSource[0].position;\n";
+#endif
+        vert << 
+        "  if (lpos.w == 0.0)\n"\
+        "    dir = lpos.xyz;\n"\
+        "  else\n"\
+        "    dir += lpos.xyz;\n"\
+        "  lightDir.x = dot(dir, t);\n"\
+        "  lightDir.y = dot(dir, b);\n"\
+        "  lightDir.z = dot(dir, n);\n";
+    }
+    else if (stateMask & LIGHTING)
+    {
+        vert << 
+        "  normalDir = gl_NormalMatrix * gl_Normal;\n"\
+        "  highp vec3 dir = -vec3(gl_ModelViewMatrix * gl_Vertex);\n"\
+        "  viewDir = dir;\n";
+//use fixed light pos for now where gl_LightSource is not avaliable
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        vert << "  vec4 lpos = gl_LightSource[0].position;\n";
+#else
+        vert << "  vec4 lpos = osg_LightSource[0].position;\n";
+#endif
+        vert <<
+        "  if (lpos.w == 0.0)\n"\
+        "    lightDir = lpos.xyz;\n"\
+        "  else\n"\
+        "    lightDir = lpos.xyz + dir;\n";
+    }
+    else if (stateMask & FOG)
+    {
+        vert << "  viewDir = -vec3(gl_ModelViewMatrix * gl_Vertex);\n";
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        vert << "  gl_FrontColor = gl_Color;\n";
+#else
+        vert << "  vColor = osg_Color;\n";
+#endif
+    }
+    else
+    {
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        vert << "  gl_FrontColor = gl_Color;\n";
+#else
+        vert << "  vColor = osg_Color;\n";
+#endif
+    }
+    
+    vert << "}\n";
+    
+    frag << "\n"\
+    "void main()\n"\
+    "{\n";
+    
+    if (stateMask & DIFFUSE_MAP)
+    {
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        frag << "  vec4 base = texture2D(diffuseMap, gl_TexCoord[0].st);\n";
+#else
+        frag << "  mediump vec4 base = texture2D(diffuseMap, texCoord0.st);\n";
+#endif
+    }
+    else
+    {
+        frag << "  mediump vec4 base = vec4(1.0);\n";
+    }
+    
+    if (stateMask & NORMAL_MAP)
+    {
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        frag << "  vec3 normalDir = texture2D(normalMap, gl_TexCoord[0].st).xyz*2.0-1.0;\n";
+#else
+        frag << "  mediump vec3 normalDir = texture2D(normalMap, texCoord0.st).xyz*2.0-1.0;\n";        
+        //frag << " normalDir.g = -normalDir.g;\n";
+#endif
+    }
+    
+    if (stateMask & (LIGHTING | NORMAL_MAP))
+    {
+//for now we will just have two versions of the below, once we have access to lights
+//then we can completely replace use of gl_FrontLightModelProduct
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        frag << 
+        "  highp vec3 nd = normalize(normalDir);\n"\
+        "  highp vec3 ld = normalize(lightDir);\n"\
+        "  highp vec3 vd = normalize(viewDir);\n"\
+        "  mediump vec4 color = gl_FrontLightModelProduct.sceneColor;\n"\
+        "  color += gl_FrontLightProduct[0].ambient;\n"\
+        "  mediump float diff = max(dot(ld, nd), 0.0);\n"\
+        "  color += gl_FrontLightProduct[0].diffuse * diff;\n"\
+        "  color *= base;\n"\
+        "  if (diff > 0.0)\n"\
+        "  {\n"\
+        "    highp vec3 halfDir = normalize(ld+vd);\n"\
+        "    color.rgb += base.a * gl_FrontLightProduct[0].specular.rgb * \n"\
+        "      pow(max(dot(halfDir, nd), 0.0), gl_FrontMaterial.shininess);\n"\
+        "  }\n";
+#else
+        frag << 
+        "  highp vec3 nd = normalize(normalDir);\n"\
+        "  highp vec3 ld = normalize(lightDir);\n"\
+        "  highp vec3 vd = normalize(viewDir);\n"\
+        "  mediump vec4 color = vec4(0.01,0.01,0.01,1.0);\n"\
+        "  color += osg_FrontLightProduct[0].ambient;\n"\
+        "  mediump float diff = max(dot(ld, nd), 0.0);\n"\
+        "  color += osg_FrontLightProduct[0].diffuse * diff;\n"\
+        "  color *= base;\n"\
+        "  if (diff > 0.0)\n"\
+        "  {\n"\
+        "    highp vec3 halfDir = normalize(ld+vd);\n"\
+        "    color.rgb += base.a * osg_FrontLightProduct[0].specular.rgb * \n"\
+        "      pow(max(dot(halfDir, nd), 0.0), osg_Material.shine);\n"\
+        "  }\n";       
+#endif
+    }
+    else
+    {
+        frag << "  mediump vec4 color = base;\n";
+    }
+    
+    if (!(stateMask & LIGHTING))
+    {
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
+        frag << "  color *= gl_Color;\n";
+#else
+        frag << "  color *= vColor;\n";
+#endif
+    }
+    
+    if (stateMask & FOG)
+    {
+        frag << 
+        "  float d2 = dot(viewDir, viewDir);//gl_FragCoord.z/gl_FragCoord.w;\n"\
+        "  float f = exp2(-1.442695*gl_Fog.density*gl_Fog.density*d2);\n"\
+        "  color.rgb = mix(gl_Fog.color.rgb, color.rgb, clamp(f, 0.0, 1.0));\n";
+    }
+    
+    frag << "  gl_FragColor = color;\n";
+    frag << "}\n";
+    
+    std::string vertstr = vert.str();
+    std::string fragstr = frag.str();
+    
+    OSG_DEBUG << "ShaderGenCache Vertex shader:\n" << vertstr << std::endl;
+    OSG_DEBUG << "ShaderGenCache Fragment shader:\n" << fragstr << std::endl;
+    
+    program->addShader(new osg::Shader(osg::Shader::VERTEX, vertstr));
+    program->addShader(new osg::Shader(osg::Shader::FRAGMENT, fragstr));
+    
+    return stateSet;
+}
+
+GLES2ShaderGenVisitor::GLES2ShaderGenVisitor() : 
+NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+_stateCache(new GLES2ShaderGenCache),
+_state(new StateEx)
+{
+}
+
+GLES2ShaderGenVisitor::GLES2ShaderGenVisitor(GLES2ShaderGenCache *stateCache) : 
+NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+_stateCache(stateCache),
+_state(new StateEx)
+{
+}
+
+void GLES2ShaderGenVisitor::setRootStateSet(osg::StateSet *stateSet)
+{
+    if (_rootStateSet.valid())
+        _state->removeStateSet(0);
+    _rootStateSet = stateSet;
+    if (_rootStateSet.valid())
+        _state->pushStateSet(_rootStateSet.get());
+}
+
+void GLES2ShaderGenVisitor::reset()
+{
+    _state->popAllStateSets();
+    if (_rootStateSet.valid())
+        _state->pushStateSet(_rootStateSet.get());
+}
+
+void GLES2ShaderGenVisitor::apply(osg::Node &node)
+{
+    osg::StateSet *stateSet = node.getStateSet();
+    
+    if (stateSet)
+        _state->pushStateSet(stateSet);
+    
+    traverse(node);
+    
+    if (stateSet)
+        _state->popStateSet();
+}
+
+void GLES2ShaderGenVisitor::apply(osg::Geode &geode)
+{
+    osg::StateSet *stateSet = geode.getStateSet();
+    if (stateSet)
+        _state->pushStateSet(stateSet);
+    
+    for (unsigned int i=0; i<geode.getNumDrawables(); ++i)
+    {
+        osg::Drawable *drawable = geode.getDrawable(i);
+        osg::StateSet *ss = drawable->getStateSet();
+        if (ss)
+            _state->pushStateSet(ss);
+        
+        update(drawable);
+        
+        if (ss)
+            _state->popStateSet();
+    }
+    
+    if (stateSet)
+        _state->popStateSet();
+}
+
+void GLES2ShaderGenVisitor::update(osg::Drawable *drawable)
+{
+    // update only geometry due to compatibility issues with user defined drawables
+    osg::Geometry *geometry = drawable->asGeometry();
+#if 1
+    if (!geometry)
+        return;
+#endif
+    
+    StateEx *state = static_cast<StateEx *>(_state.get());
+    // skip nodes without state sets
+    if (state->getStateSetStackSize() == (_rootStateSet.valid() ? 1u : 0u))
+        return;
+    
+    // skip state sets with already attached programs
+    if (state->getAttribute(osg::StateAttribute::PROGRAM))
+        return;
+    
+    int stateMask = 0;
+    //if (state->getMode(GL_BLEND) & osg::StateAttribute::ON)
+    //    stateMask |= ShaderGen::BLEND;
+    if (state->getMode(GL_LIGHTING) & osg::StateAttribute::ON)
+        stateMask |= GLES2ShaderGenCache::LIGHTING;
+    if (state->getMode(GL_FOG) & osg::StateAttribute::ON)
+        stateMask |= GLES2ShaderGenCache::FOG;
+    if (state->getTextureAttribute(0, osg::StateAttribute::TEXTURE))
+        stateMask |= GLES2ShaderGenCache::DIFFUSE_MAP;
+    
+    if (state->getTextureAttribute(1, osg::StateAttribute::TEXTURE) && geometry!=0 &&
+        geometry->getVertexAttribArray(6)) //tangent
+        stateMask |= GLES2ShaderGenCache::NORMAL_MAP;
+    
+    // Get program and uniforms for accumulated state.
+    osg::StateSet *progss = _stateCache->getOrCreateStateSet(stateMask);
+    // Set program and uniforms to the last state set.
+    osg::StateSet *ss = const_cast<osg::StateSet *>(state->getStateSetStack().back());
+    ss->setAttribute(progss->getAttribute(osg::StateAttribute::PROGRAM));
+    ss->setUniformList(progss->getUniformList());
+    
+    //Edit, for now we will pinch the Material colors and bind as uniforms for non fixed function to replace gl_Front Material
+#ifndef OSG_GL_FIXED_FUNCTION_AVAILABLE
+    osg::Material* mat = dynamic_cast<osg::Material*>(ss->getAttribute(osg::StateAttribute::MATERIAL));
+    if(mat){
+        ss->addUniform(new osg::Uniform("osg_Material.ambient", mat->getAmbient(osg::Material::FRONT)));
+        ss->addUniform(new osg::Uniform("osg_Material.diffuse", mat->getDiffuse(osg::Material::FRONT)));
+        ss->addUniform(new osg::Uniform("osg_Material.specular", mat->getSpecular(osg::Material::FRONT)));
+        ss->addUniform(new osg::Uniform("osg_Material.shine", mat->getShininess(osg::Material::FRONT)));
+        ss->removeAttribute(osg::StateAttribute::MATERIAL);
+    }else{
+        //if no material then setup some reasonable defaults
+        ss->addUniform(new osg::Uniform("osg_Material.ambient", osg::Vec4(0.2f,0.2f,0.2f,1.0f)));
+        ss->addUniform(new osg::Uniform("osg_Material.diffuse", osg::Vec4(0.8f,0.8f,0.8f,1.0f)));
+        ss->addUniform(new osg::Uniform("osg_Material.specular", osg::Vec4(1.0f,1.0f,1.0f,1.0f)));
+        ss->addUniform(new osg::Uniform("osg_Material.shine", 16.0f));
+    }
+#endif
+    
+    
+    // remove any modes that won't be appropriate when using shaders
+    if ((stateMask & GLES2ShaderGenCache::LIGHTING)!=0)
+    {
+        ss->removeMode(GL_LIGHTING);
+        ss->removeMode(GL_LIGHT0);
+    }
+    if ((stateMask & GLES2ShaderGenCache::FOG)!=0)
+    {
+        ss->removeMode(GL_FOG);
+    }
+    if ((stateMask & GLES2ShaderGenCache::DIFFUSE_MAP)!=0) ss->removeTextureMode(0, GL_TEXTURE_2D);
+    if ((stateMask & GLES2ShaderGenCache::NORMAL_MAP)!=0) ss->removeTextureMode(1, GL_TEXTURE_2D);
+}
+
+
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.h
new file mode 100755
index 0000000..ace8e3a
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/GLES2ShaderGenVisitor.h
@@ -0,0 +1,84 @@
+/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2009 Robert Osfield 
+ *
+ * This library is open source and may be redistributed and/or modified under  
+ * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or 
+ * (at your option) any later version.  The full license is in LICENSE file
+ * included with this distribution, and on the openscenegraph.org website.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
+ * OpenSceneGraph Public License for more details.
+ */
+
+/**
+ * \brief    Shader generator framework.
+ * \author   Maciej Krol
+ */
+
+#ifndef OSGUTIL_GLES2SHADER_STATE_
+#define OSGUTIL_GLES2SHADER_STATE_ 1
+
+#include <osgUtil/Export>
+#include <osg/NodeVisitor>
+#include <osg/State>
+
+namespace osgUtil
+{
+    
+    class GLES2ShaderGenCache : public osg::Referenced
+    {
+    public:
+        enum StateMask
+        {
+            BLEND = 1,
+            LIGHTING = 2,
+            FOG = 4,
+            DIFFUSE_MAP = 8, //< Texture in unit 0
+            NORMAL_MAP = 16  //< Texture in unit 1 and vertex attribute array 6
+        };
+        
+        typedef std::map<int, osg::ref_ptr<osg::StateSet> > StateSetMap;
+        
+        GLES2ShaderGenCache() {};
+        
+        void setStateSet(int stateMask, osg::StateSet *program);
+        osg::StateSet *getStateSet(int stateMask) const;
+        osg::StateSet *getOrCreateStateSet(int stateMask);
+        
+    protected:
+        osg::StateSet *createStateSet(int stateMask) const;
+        mutable OpenThreads::Mutex _mutex;
+        StateSetMap _stateSetMap;
+        
+    };
+    
+    class OSGUTIL_EXPORT GLES2ShaderGenVisitor : public osg::NodeVisitor
+    {
+    public:
+        GLES2ShaderGenVisitor();
+        GLES2ShaderGenVisitor(GLES2ShaderGenCache *stateCache);
+        
+        void setStateCache(GLES2ShaderGenCache *stateCache) { _stateCache = stateCache; }
+        GLES2ShaderGenCache *getStateCache() const { return _stateCache.get(); }
+        
+        /// Top level state set applied as the first one.
+        void setRootStateSet(osg::StateSet *stateSet);
+        osg::StateSet *getRootStateSet() const { return _rootStateSet.get(); }
+        
+        void apply(osg::Node &node);
+        void apply(osg::Geode &geode);
+        
+        void reset();
+        
+    protected:
+        void update(osg::Drawable *drawable);
+        
+        osg::ref_ptr<GLES2ShaderGenCache> _stateCache;
+        osg::ref_ptr<osg::State> _state;
+        osg::ref_ptr<osg::StateSet> _rootStateSet;
+    };
+    
+}
+
+#endif
\ No newline at end of file
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/ShaderGenScene.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/ShaderGenScene.h
new file mode 100755
index 0000000..527f6bf
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ShaderGen/ShaderGenScene.h
@@ -0,0 +1,227 @@
+#pragma once
+
+#include <osg/ShapeDrawable>
+#include <osg/Texture2D>
+#include <osg/MatrixTransform>
+#include <osgDB/ReadFile>
+#include <osgDB/FileUtils>
+#include <osgUtil/TangentSpaceGenerator>
+
+#include "GLES2ShaderGenVisitor.h"
+
+class GenerateTangentsVisitor : public osg::NodeVisitor
+{
+public:
+    std::vector<osg::Geode*> _geodesList;
+    GenerateTangentsVisitor()
+    : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+    {
+    }
+    virtual void apply(osg::Geode& geode)
+    {
+        _geodesList.push_back(&geode);
+        //loop the geoms
+        for(unsigned int i=0; i<geode.getNumDrawables(); i++)
+        {
+            //cast drawable to geometry
+            osg::Geometry* geom = geode.getDrawable(i)->asGeometry();
+            
+            if(geom)
+            {
+                //check if the geom already has the vectors
+                if( (geom->getVertexAttribArray(6) == 0) && (geom->getVertexAttribArray(7) == 0) )
+                {
+                    
+                    osgUtil::TangentSpaceGenerator* tangGen = new osgUtil::TangentSpaceGenerator();
+                    tangGen->generate(geom, 0);
+                    
+                    if(tangGen)
+                    {
+                        osg::Vec4Array* tangentArray = tangGen->getTangentArray(); 
+                        osg::Vec4Array* biNormalArray = tangGen->getBinormalArray();
+                        
+                        int size = tangentArray->size();
+                        int sizeb = biNormalArray->size();
+                        
+                        if( (size>0) && (sizeb>0))
+                        {
+                            geom->setVertexAttribArray(6, tangentArray);
+                            geom->setVertexAttribBinding(6, osg::Geometry::BIND_PER_VERTEX);  
+                            
+                            //geom->setVertexAttribArray(7, biNormalArray);
+                            //geom->setVertexAttribBinding(7, osg::Geometry::BIND_PER_VERTEX);  
+                        }
+                    }
+                }
+            }
+        }
+        traverse(geode);
+    }
+protected:
+    
+};
+
+class ShaderGenScene
+{
+public:
+    ShaderGenScene(){
+        
+    }
+    virtual ~ShaderGenScene(){
+    }
+    
+    static osg::MatrixTransform* CreateScene(){
+        osg::MatrixTransform* root = new osg::MatrixTransform();
+        //move whole scene in front of camera
+        root->setMatrix(osg::Matrix::translate(osg::Vec3(0.0f,0.0f,-100.0f)));
+
+        //create each type with an offset
+        float size = 20.0f;
+        float offset = size+1.0f;
+        
+        //top row
+        root->addChild(ShaderGenScene::CreateColoredShape(osg::Vec3(-offset,offset,0.0f), size));
+        
+        root->addChild(ShaderGenScene::CreateColoredLitShape(osg::Vec3(0.0f,offset,0.0f), size));
+        
+        root->addChild(ShaderGenScene::CreateTexturedShape(osg::Vec3(offset,offset,0.0f), size));
+        
+        //bottom row
+        root->addChild(ShaderGenScene::CreateTexturedLitShape(osg::Vec3(-offset,-offset,0.0f), size));
+        
+        root->addChild(ShaderGenScene::CreateColoredNormalMappedShape(osg::Vec3(0.0f,-offset,0.0f), size));
+        
+        root->addChild(ShaderGenScene::CreateTexturedNormalMappedShape(osg::Vec3(offset,-offset,0.0f), size));
+        
+        //apply shader gen to entire root
+        //osgUtil::GLES2ShaderGenVisitor shaderGen;
+        //root->accept(shaderGen);
+        
+        return root;
+    }
+    
+    static osg::MatrixTransform* CreateColoredShape(osg::Vec3 offset, float size){
+        osg::Sphere* sphere = new osg::Sphere();
+        sphere->setRadius(size*0.5f);
+        osg::ShapeDrawable* shape = new osg::ShapeDrawable(sphere);
+        osg::Geode* geode = new osg::Geode();
+        geode->addDrawable(shape);
+        
+        osg::StateSet* state = geode->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::translate(offset));
+        transform->addChild(geode);
+        return transform;
+    }
+    
+    static osg::MatrixTransform* CreateColoredLitShape(osg::Vec3 offset, float size){
+        osg::Sphere* sphere = new osg::Sphere();
+        sphere->setRadius(size*0.5f);
+        osg::ShapeDrawable* shape = new osg::ShapeDrawable(sphere);
+        osg::Geode* geode = new osg::Geode();
+        geode->addDrawable(shape);
+        
+        osg::StateSet* state = geode->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::ON);
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::translate(offset));
+        transform->addChild(geode);
+        return transform;
+    }
+    
+    static osg::MatrixTransform* CreateTexturedShape(osg::Vec3 offset, float size){
+        osg::Sphere* sphere = new osg::Sphere();
+        sphere->setRadius(size*0.5f);
+        osg::ShapeDrawable* shape = new osg::ShapeDrawable(sphere);
+        osg::Geode* geode = new osg::Geode();
+        geode->addDrawable(shape);
+        
+        osg::StateSet* state = geode->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+        state->setTextureAttributeAndModes(0, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/diffuse.png"))), osg::StateAttribute::ON);
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::translate(offset));
+        transform->addChild(geode);
+        return transform;
+    } 
+    
+    static osg::MatrixTransform* CreateTexturedLitShape(osg::Vec3 offset, float size){
+        osg::Sphere* sphere = new osg::Sphere();
+        sphere->setRadius(size*0.5f);
+        osg::ShapeDrawable* shape = new osg::ShapeDrawable(sphere);
+        osg::Geode* geode = new osg::Geode();
+        geode->addDrawable(shape);
+        
+        osg::StateSet* state = geode->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::ON);
+        state->setTextureAttributeAndModes(0, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/diffuse.png"))), osg::StateAttribute::ON);
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::translate(offset));
+        transform->addChild(geode);
+        return transform;
+    } 
+
+    static osg::MatrixTransform* CreateColoredNormalMappedShape(osg::Vec3 offset, float size){
+        osg::Node* model = osgDB::readNodeFile(osgDB::findDataFile("Models/sphere.osg"));
+        if(!model){
+            OSG_FATAL << "ERROR: Failed to load model 'Models/sphere.osg' no normal mapping example avaliable." << std::endl;
+            return false;
+        }
+        
+        //generate tangent vectors
+        GenerateTangentsVisitor genTangents;
+        model->accept(genTangents);
+        
+        osg::StateSet* state = model->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::ON);
+        //state->setTextureAttributeAndModes(0, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/diffuse.png"))), osg::StateAttribute::ON);
+        state->setTextureAttributeAndModes(1, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/normal.png"))), osg::StateAttribute::ON);
+        
+        //make sure the model fits the scene scale
+        float radius = model->computeBound().radius();
+        OSG_FATAL << "RADIUS: " << radius << std::endl;
+        float scale = (size)/radius;
+        
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::rotate(osg::DegreesToRadians(-90.0f), osg::Vec3(1,0,0)) * osg::Matrix::scale(osg::Vec3(scale,scale,scale)) * osg::Matrix::translate(offset));
+        transform->addChild(model);
+        return transform;
+    } 
+    
+    static osg::MatrixTransform* CreateTexturedNormalMappedShape(osg::Vec3 offset, float size){
+        osg::Node* model = osgDB::readNodeFile(osgDB::findDataFile("Models/sphere.osg"));
+        if(!model){
+            OSG_FATAL << "ERROR: Failed to load model 'Models/sphere.osg' no normal mapping example avaliable." << std::endl;
+            return false;
+        }
+        
+        //generate tangent vectors
+        GenerateTangentsVisitor genTangents;
+        model->accept(genTangents);
+
+        osg::StateSet* state = model->getOrCreateStateSet();
+        state->setMode(GL_LIGHTING, osg::StateAttribute::ON);
+        state->setTextureAttributeAndModes(0, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/diffuse.png"))), osg::StateAttribute::ON);
+        state->setTextureAttributeAndModes(1, new osg::Texture2D(osgDB::readImageFile(osgDB::findDataFile("Images/normal.png"))), osg::StateAttribute::ON);
+
+        //make sure the model fits the scene scale
+        float radius = model->computeBound().radius();
+        OSG_FATAL << "RADIUS: " << radius << std::endl;
+        float scale = (size)/radius;
+
+        
+        osg::MatrixTransform* transform = new osg::MatrixTransform();
+        transform->setMatrix(osg::Matrix::rotate(osg::DegreesToRadians(-90.0f), osg::Vec3(1,0,0)) * osg::Matrix::scale(osg::Vec3(scale,scale,scale)) * osg::Matrix::translate(offset));
+        transform->addChild(model);
+        return transform;
+    } 
+    
+protected:
+
+};
\ No newline at end of file
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.h
new file mode 100644
index 0000000..3c19659
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.h
@@ -0,0 +1,27 @@
+//
+//  StartViewerController.h
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 31/07/2012.
+//
+
+#import <UIKit/UIKit.h>
+
+ at class ViewController;
+
+ at interface StartViewerController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource> {
+
+    IBOutlet UIPickerView *pickerView;
+    NSMutableArray *fileArray;
+    NSInteger currentSelection;
+}
+
+ at property(nonatomic, retain) IBOutlet UIPickerView *pickerView;
+ at property (strong, nonatomic) ViewController *osgEarthViewController;
+
+-(IBAction)onStartViewer;
+
+- (void)startAnimation;
+- (void)stopAnimation;
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.m b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.m
new file mode 100644
index 0000000..517121c
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.m
@@ -0,0 +1,122 @@
+//
+//  StartViewerController.m
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 31/07/2012.
+//
+
+#import "StartViewerController.h"
+#import "ViewController.h"
+
+#include <osgDB/FileUtils>
+#include <osgDB/FileNameUtils>
+
+ at interface StartViewerController ()
+
+ at end
+
+ at implementation StartViewerController
+
+ at synthesize pickerView;
+ at synthesize osgEarthViewController = _osgEarthViewController;
+
+- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
+{
+    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
+    if (self) {
+        // Custom initialization
+    }
+    return self;
+}
+
+- (void)dealloc
+{
+    [super dealloc];
+    [_osgEarthViewController release];
+}
+
+- (void)viewDidLoad
+{
+    [super viewDidLoad];
+    // Do any additional setup after loading the view from its nib.
+    
+    fileArray = [[NSMutableArray alloc] init];
+    
+    std::string fullPath = osgDB::findDataFile("tests/readymap.earth");
+    
+    osgDB::DirectoryContents dirContents = osgDB::getDirectoryContents(osgDB::getFilePath(fullPath));
+    for(unsigned int i=0; i<dirContents.size(); i++){
+        //OSG_ALWAYS << "Dir item: " << dirContents[i] << std::endl;
+        if(osgDB::getFileExtensionIncludingDot(dirContents[i]) == ".earth"){ 
+            NSString* nsFile = [NSString stringWithCString:dirContents[i].c_str() encoding:NSASCIIStringEncoding];
+            [fileArray addObject:nsFile];
+        }
+    }
+     
+    currentSelection = [fileArray count]-1;
+    [pickerView selectRow:currentSelection inComponent:0 animated:NO];  
+}
+
+- (void)viewDidUnload
+{
+    [super viewDidUnload];
+    // Release any retained subviews of the main view.
+    self.pickerView = nil;
+    [self.osgEarthViewController stopAnimation]; 
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+{
+    return (interfaceOrientation == UIInterfaceOrientationPortrait);
+}
+
+-(IBAction)onStartViewer
+{
+    /*if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
+     self.osgEarthViewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil] autorelease];
+     } else {
+     self.osgEarthViewController = [[[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil] autorelease];
+     }*/
+    self.osgEarthViewController = [[ViewController alloc] intWithFileName:[fileArray objectAtIndex:currentSelection]];
+    [self.osgEarthViewController startAnimation]; 
+    [self.view addSubview:self.osgEarthViewController.view];
+}
+
+- (void)startAnimation
+{
+    if(self.osgEarthViewController){
+        [self.osgEarthViewController startAnimation]; 
+    }
+}
+- (void)stopAnimation
+{
+    if(self.osgEarthViewController){
+        [self.osgEarthViewController stopAnimation]; 
+    }
+}
+
+#pragma mark - PickerView Delegates
+
+- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView;
+{
+    return 1;
+}
+
+- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
+{
+    //mlabel.text=    [arrayNo objectAtIndex:row];
+    currentSelection = row;
+}
+
+- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component;
+{
+    return [fileArray count];
+}
+
+- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component;
+{
+    return [fileArray objectAtIndex:row];
+}
+
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.xib b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.xib
new file mode 100644
index 0000000..71e0059
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/StartViewerController.xib
@@ -0,0 +1,282 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="8.00">
+	<data>
+		<int key="IBDocument.SystemTarget">1296</int>
+		<string key="IBDocument.SystemVersion">11E53</string>
+		<string key="IBDocument.InterfaceBuilderVersion">2182</string>
+		<string key="IBDocument.AppKitVersion">1138.47</string>
+		<string key="IBDocument.HIToolboxVersion">569.00</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			<string key="NS.object.0">1181</string>
+		</object>
+		<array key="IBDocument.IntegratedClassDependencies">
+			<string>IBUIPickerView</string>
+			<string>IBUIButton</string>
+			<string>IBUIView</string>
+			<string>IBUILabel</string>
+			<string>IBProxyObject</string>
+		</array>
+		<array key="IBDocument.PluginDependencies">
+			<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+		</array>
+		<object class="NSMutableDictionary" key="IBDocument.Metadata">
+			<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
+			<integer value="1" key="NS.object.0"/>
+		</object>
+		<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+			<object class="IBProxyObject" id="372490531">
+				<string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+			<object class="IBProxyObject" id="975951072">
+				<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+			<object class="IBUIView" id="191373211">
+				<reference key="NSNextResponder"/>
+				<int key="NSvFlags">274</int>
+				<array class="NSMutableArray" key="NSSubviews">
+					<object class="IBUIPickerView" id="544167590">
+						<reference key="NSNextResponder" ref="191373211"/>
+						<int key="NSvFlags">290</int>
+						<string key="NSFrame">{{0, 72}, {320, 216}}</string>
+						<reference key="NSSuperview" ref="191373211"/>
+						<reference key="NSWindow"/>
+						<reference key="NSNextKeyView" ref="211265553"/>
+						<string key="NSReuseIdentifierKey">_NS:9</string>
+						<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+						<bool key="IBUIShowsSelectionIndicator">YES</bool>
+					</object>
+					<object class="IBUIButton" id="211265553">
+						<reference key="NSNextResponder" ref="191373211"/>
+						<int key="NSvFlags">292</int>
+						<string key="NSFrame">{{228, 423}, {72, 37}}</string>
+						<reference key="NSSuperview" ref="191373211"/>
+						<reference key="NSWindow"/>
+						<string key="NSReuseIdentifierKey">_NS:9</string>
+						<bool key="IBUIOpaque">NO</bool>
+						<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+						<int key="IBUIContentHorizontalAlignment">0</int>
+						<int key="IBUIContentVerticalAlignment">0</int>
+						<int key="IBUIButtonType">1</int>
+						<string key="IBUINormalTitle">Go</string>
+						<object class="NSColor" key="IBUIHighlightedTitleColor">
+							<int key="NSColorSpace">3</int>
+							<bytes key="NSWhite">MQA</bytes>
+						</object>
+						<object class="NSColor" key="IBUINormalTitleColor">
+							<int key="NSColorSpace">1</int>
+							<bytes key="NSRGB">MC4xOTYwNzg0MzQ2IDAuMzA5ODAzOTMyOSAwLjUyMTU2ODY1NgA</bytes>
+						</object>
+						<object class="NSColor" key="IBUINormalTitleShadowColor">
+							<int key="NSColorSpace">3</int>
+							<bytes key="NSWhite">MC41AA</bytes>
+						</object>
+						<object class="IBUIFontDescription" key="IBUIFontDescription">
+							<int key="type">2</int>
+							<double key="pointSize">15</double>
+						</object>
+						<object class="NSFont" key="IBUIFont">
+							<string key="NSName">Helvetica-Bold</string>
+							<double key="NSSize">15</double>
+							<int key="NSfFlags">16</int>
+						</object>
+					</object>
+					<object class="IBUILabel" id="774713826">
+						<reference key="NSNextResponder" ref="191373211"/>
+						<int key="NSvFlags">292</int>
+						<string key="NSFrame">{{73, 44}, {174, 20}}</string>
+						<reference key="NSSuperview" ref="191373211"/>
+						<reference key="NSWindow"/>
+						<reference key="NSNextKeyView" ref="544167590"/>
+						<string key="NSReuseIdentifierKey">_NS:9</string>
+						<bool key="IBUIOpaque">NO</bool>
+						<bool key="IBUIClipsSubviews">YES</bool>
+						<int key="IBUIContentMode">7</int>
+						<bool key="IBUIUserInteractionEnabled">NO</bool>
+						<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+						<string key="IBUIText">Select A File To View</string>
+						<object class="NSColor" key="IBUITextColor">
+							<int key="NSColorSpace">1</int>
+							<bytes key="NSRGB">MCAwIDAAA</bytes>
+						</object>
+						<nil key="IBUIHighlightedColor"/>
+						<int key="IBUIBaselineAdjustment">0</int>
+						<float key="IBUIMinimumFontSize">10</float>
+						<object class="IBUIFontDescription" key="IBUIFontDescription">
+							<int key="type">1</int>
+							<double key="pointSize">17</double>
+						</object>
+						<object class="NSFont" key="IBUIFont">
+							<string key="NSName">Helvetica</string>
+							<double key="NSSize">17</double>
+							<int key="NSfFlags">16</int>
+						</object>
+					</object>
+				</array>
+				<string key="NSFrameSize">{320, 480}</string>
+				<reference key="NSSuperview"/>
+				<reference key="NSWindow"/>
+				<reference key="NSNextKeyView" ref="774713826"/>
+				<object class="NSColor" key="IBUIBackgroundColor">
+					<int key="NSColorSpace">3</int>
+					<bytes key="NSWhite">MQA</bytes>
+					<object class="NSColorSpace" key="NSCustomColorSpace">
+						<int key="NSID">2</int>
+					</object>
+				</object>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+		</array>
+		<object class="IBObjectContainer" key="IBDocument.Objects">
+			<array class="NSMutableArray" key="connectionRecords">
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">view</string>
+						<reference key="source" ref="372490531"/>
+						<reference key="destination" ref="191373211"/>
+					</object>
+					<int key="connectionID">3</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">pickerView</string>
+						<reference key="source" ref="372490531"/>
+						<reference key="destination" ref="544167590"/>
+					</object>
+					<int key="connectionID">7</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">dataSource</string>
+						<reference key="source" ref="544167590"/>
+						<reference key="destination" ref="372490531"/>
+					</object>
+					<int key="connectionID">8</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">delegate</string>
+						<reference key="source" ref="544167590"/>
+						<reference key="destination" ref="372490531"/>
+					</object>
+					<int key="connectionID">9</int>
+				</object>
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchEventConnection" key="connection">
+						<string key="label">onStartViewer</string>
+						<reference key="source" ref="211265553"/>
+						<reference key="destination" ref="372490531"/>
+						<int key="IBEventType">7</int>
+					</object>
+					<int key="connectionID">10</int>
+				</object>
+			</array>
+			<object class="IBMutableOrderedSet" key="objectRecords">
+				<array key="orderedObjects">
+					<object class="IBObjectRecord">
+						<int key="objectID">0</int>
+						<array key="object" id="0"/>
+						<reference key="children" ref="1000"/>
+						<nil key="parent"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">1</int>
+						<reference key="object" ref="191373211"/>
+						<array class="NSMutableArray" key="children">
+							<reference ref="211265553"/>
+							<reference ref="774713826"/>
+							<reference ref="544167590"/>
+						</array>
+						<reference key="parent" ref="0"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-1</int>
+						<reference key="object" ref="372490531"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">File's Owner</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-2</int>
+						<reference key="object" ref="975951072"/>
+						<reference key="parent" ref="0"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">4</int>
+						<reference key="object" ref="544167590"/>
+						<reference key="parent" ref="191373211"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">5</int>
+						<reference key="object" ref="211265553"/>
+						<reference key="parent" ref="191373211"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">6</int>
+						<reference key="object" ref="774713826"/>
+						<reference key="parent" ref="191373211"/>
+					</object>
+				</array>
+			</object>
+			<dictionary class="NSMutableDictionary" key="flattenedProperties">
+				<string key="-1.CustomClassName">StartViewerController</string>
+				<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="-2.CustomClassName">UIResponder</string>
+				<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="4.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			</dictionary>
+			<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
+			<nil key="activeLocalization"/>
+			<dictionary class="NSMutableDictionary" key="localizations"/>
+			<nil key="sourceID"/>
+			<int key="maxID">10</int>
+		</object>
+		<object class="IBClassDescriber" key="IBDocument.Classes">
+			<array class="NSMutableArray" key="referencedPartialClassDescriptions">
+				<object class="IBPartialClassDescription">
+					<string key="className">StartViewerController</string>
+					<string key="superclassName">UIViewController</string>
+					<object class="NSMutableDictionary" key="actions">
+						<string key="NS.key.0">onStartViewer</string>
+						<string key="NS.object.0">id</string>
+					</object>
+					<object class="NSMutableDictionary" key="actionInfosByName">
+						<string key="NS.key.0">onStartViewer</string>
+						<object class="IBActionInfo" key="NS.object.0">
+							<string key="name">onStartViewer</string>
+							<string key="candidateClassName">id</string>
+						</object>
+					</object>
+					<object class="NSMutableDictionary" key="outlets">
+						<string key="NS.key.0">pickerView</string>
+						<string key="NS.object.0">UIPickerView</string>
+					</object>
+					<object class="NSMutableDictionary" key="toOneOutletInfosByName">
+						<string key="NS.key.0">pickerView</string>
+						<object class="IBToOneOutletInfo" key="NS.object.0">
+							<string key="name">pickerView</string>
+							<string key="candidateClassName">UIPickerView</string>
+						</object>
+					</object>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">./Classes/StartViewerController.h</string>
+					</object>
+				</object>
+			</array>
+		</object>
+		<int key="IBDocument.localizationMode">0</int>
+		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
+			<real value="1296" key="NS.object.0"/>
+		</object>
+		<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+		<int key="IBDocument.defaultPropertyAccessControl">3</int>
+		<string key="IBCocoaTouchPluginVersion">1181</string>
+	</data>
+</archive>
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.h
new file mode 100644
index 0000000..4d52641
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.h
@@ -0,0 +1,27 @@
+//
+//  ViewController.h
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 14/07/2012.
+//
+
+#import <UIKit/UIKit.h>
+
+#include <osgViewer/Viewer>
+
+ at interface ViewController : UIViewController{
+
+    osg::ref_ptr<osgViewer::Viewer> _viewer;
+    CADisplayLink* _displayLink;
+    bool _isAnimating;
+    
+    //the file to load
+    std::string _file;
+}
+
+- (id)intWithFileName:(NSString*)file;
+
+- (void)startAnimation;
+- (void)stopAnimation;
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.m b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.m
new file mode 100644
index 0000000..fe08880
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/ViewController.m
@@ -0,0 +1,358 @@
+//
+//  ViewController.m
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 14/07/2012.
+//
+
+#import "ViewController.h"
+
+#include "osgPlugins.h"
+
+#include <osgDB/FileUtils>
+
+#include <osgGA/MultiTouchTrackballManipulator>
+
+#include <osgViewer/api/IOS/GraphicsWindowIOS>
+
+#include <osgEarth/Viewpoint>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+#include <osgEarthUtil/ObjectLocator>
+#include <osgEarthUtil/SkyNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+
+#include "EarthMultiTouchManipulator.h"
+#include "GLES2ShaderGenVisitor.h"
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+class ClampObjectLocatorCallback : public osgEarth::TerrainCallback
+{
+public:
+    ClampObjectLocatorCallback(ObjectLocatorNode* locator):
+    _locator(locator),
+    _maxLevel(-1),
+    _minLevel(0)
+    {
+    }
+    
+    virtual void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext&)
+    {           
+        if ((int)tileKey.getLevelOfDetail() > _minLevel && _maxLevel < (int)tileKey.getLevelOfDetail())
+        {
+            osg::Vec3d position = _locator->getLocator()->getPosition();
+            
+            if (tileKey.getExtent().contains(position.x(), position.y()))
+            {
+                //Compute our location in geocentric
+                const osg::EllipsoidModel* ellipsoid = tileKey.getProfile()->getSRS()->getEllipsoid();
+                double x, y, z;            
+                ellipsoid->convertLatLongHeightToXYZ(
+                                                     osg::DegreesToRadians(position.y()), osg::DegreesToRadians(position.x()), 0,
+                                                     x, y, z);
+                //Compute the up vector
+                osg::Vec3d up = ellipsoid->computeLocalUpVector(x, y, z );
+                up.normalize();
+                osg::Vec3d world(x, y, z);
+                
+                double segOffset = 50000;
+                
+                osg::Vec3d start = world + (up * segOffset);
+                osg::Vec3d end = world - (up * segOffset);
+                
+                osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
+                
+                osgUtil::IntersectionVisitor iv;            
+                iv.setIntersector( i );
+                terrain->accept( iv );
+                
+                osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
+                if ( !results.empty() )
+                {
+                    const osgUtil::LineSegmentIntersector::Intersection& result = *results.begin();
+                    osg::Vec3d hit = result.getWorldIntersectPoint();
+                    double lat, lon, height;
+                    ellipsoid->convertXYZToLatLongHeight(hit.x(), hit.y(), hit.z(), 
+                                                         lat, lon, height);                
+                    position.z() = height;
+                    //OE_NOTICE << "Got hit, setting new height to " << height << std::endl;
+                    _maxLevel = tileKey.getLevelOfDetail();
+                    _locator->getLocator()->setPosition( position );
+                }            
+            }            
+        }            
+        
+    }
+    
+    osg::ref_ptr< ObjectLocatorNode > _locator;
+    int _maxLevel;
+    int _minLevel;
+};
+
+
+
+ at interface ViewController () {
+
+}
+
+ at end
+
+
+ at implementation ViewController
+
+- (id)intWithFileName:(NSString*)file
+{
+    self = [super init];
+    if(self){
+        
+        _file = [file cStringUsingEncoding:NSASCIIStringEncoding];
+        
+    }
+    return self;
+}
+
+- (void)dealloc
+{
+    OSG_ALWAYS << "dealloc" << std::endl;
+    [super dealloc];
+    
+    [self stopAnimation];
+    _viewer = NULL;
+}
+
+- (void)loadOsgEarthDemoScene{
+
+    // install our default manipulator (do this before calling load)
+    _viewer->setCameraManipulator( new osgEarth::Util::EarthMultiTouchManipulator() );
+    
+    osg::Light* light = new osg::Light( 0 );  
+    light->setPosition( osg::Vec4(0, -1, 0, 0 ) );
+    light->setAmbient( osg::Vec4(0.4f, 0.4f, 0.4f ,1.0) );
+    light->setDiffuse( osg::Vec4(1,1,1,1) );
+    light->setSpecular( osg::Vec4(0,0,0,1) );
+
+    osg::Material* material = new osg::Material();
+    material->setAmbient(osg::Material::FRONT, osg::Vec4(0.4,0.4,0.4,1.0));
+    material->setDiffuse(osg::Material::FRONT, osg::Vec4(0.9,0.9,0.9,1.0));
+    material->setSpecular(osg::Material::FRONT, osg::Vec4(0.4,0.4,0.4,1.0));
+    
+    
+    osg::Node* node = osgDB::readNodeFile(osgDB::findDataFile("tests/" + _file));
+    if ( !node )
+    {
+        OSG_WARN << "Unable to load an earth file from the command line." << std::endl;
+        return;
+    }
+    
+    osg::ref_ptr<osgEarth::Util::MapNode> mapNode = osgEarth::Util::MapNode::findMapNode(node);
+    if ( !mapNode.valid() )
+    {
+        OSG_WARN << "Loaded scene graph does not contain a MapNode - aborting" << std::endl;
+        return;
+    }
+    
+    // warn about not having an earth manip
+    osgEarth::Util::EarthManipulator* manip = dynamic_cast<osgEarth::Util::EarthManipulator*>(_viewer->getCameraManipulator());
+    if ( manip == 0L )
+    {
+        OSG_WARN << "Helper used before installing an EarthManipulator" << std::endl;
+    }
+    
+    // a root node to hold everything:
+    osg::Group* root = new osg::Group();
+    root->addChild( mapNode.get() );
+    //root->getOrCreateStateSet()->setAttribute(light);
+    
+    //have to add these
+    root->getOrCreateStateSet()->setAttribute(material);
+    //root->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE);
+    
+    double hours = 12.0f;
+    float ambientBrightness = 0.4f;
+    osgEarth::Util::SkyNode* sky = new osgEarth::Util::SkyNode( mapNode->getMap() );
+    sky->setAmbientBrightness( ambientBrightness );
+    sky->setDateTime( 1984, 11, 8, hours );
+    sky->attach( _viewer, 0 );
+    root->addChild( sky );
+    
+    
+    //for some reason we have to do this as global stateset doesn't
+    //appear to be in the statesetstack
+    root->getOrCreateStateSet()->setAttribute(_viewer->getLight());
+    
+    
+    //add model
+     unsigned int numObjects = 2;
+    osg::Group* treeGroup = new osg::Group();
+    root->addChild(treeGroup);
+    osg::Node* tree = osgDB::readNodeFile("./data/boxman.osg");         
+    osg::MatrixTransform* mt = new osg::MatrixTransform();
+    mt->setMatrix(osg::Matrixd::scale(1000,1000,1000));
+    mt->addChild( tree );
+    //Create bound around mt rainer
+    double centerLat =  46.840866;
+    double centerLon = -121.769846;
+    double height = 0.2;
+    double width = 0.2;
+    double minLat = centerLat - (height/2.0);
+    double minLon = centerLon - (width/2.0);
+    
+    OE_NOTICE << "Placing " << numObjects << " trees" << std::endl;
+    
+    for (unsigned int i = 0; i < numObjects; i++)
+    {
+        osgEarth::Util::ObjectLocatorNode* locator = new osgEarth::Util::ObjectLocatorNode( mapNode->getMap() );        
+        double lat = minLat + height * (rand() * 1.0)/(RAND_MAX-1);
+        double lon = minLon + width * (rand() * 1.0)/(RAND_MAX-1);        
+        //OE_NOTICE << "Placing tree at " << lat << ", " << lon << std::endl;
+        locator->getLocator()->setPosition(osg::Vec3d(lon,  lat, 0 ) );        
+        locator->addChild( mt );
+        treeGroup->addChild( locator );
+        mapNode->getTerrain()->addTerrainCallback( new ClampObjectLocatorCallback(locator) );        
+    }    
+    
+    //manip->setHomeViewpoint(Viewpoint( "Mt Rainier",        osg::Vec3d(    centerLon,   centerLat, 0.0 ), 0.0, -90, 45000 ));
+    
+    //attach a UpdateLightingUniformsHelper to the model
+    UpdateLightingUniformsHelper* updateLightInfo = new UpdateLightingUniformsHelper();
+    treeGroup->setCullCallback(updateLightInfo);
+    
+    osgUtil::GLES2ShaderGenVisitor shaderGen;
+    treeGroup->accept(shaderGen);
+    
+    _viewer->setSceneData( root );
+}
+
+- (void)viewDidLoad
+{
+    [super viewDidLoad];
+    
+    osg::setNotifyLevel(osg::DEBUG_FP);
+    osgEarth::setNotifyLevel(osg::DEBUG_FP);
+
+    
+    //get screen scale
+    UIScreen* screen = [UIScreen mainScreen];
+    float scale = 1.0f;
+#if defined(__IPHONE_4_0) && (__IPHONE_OS_VERSION_MIN_REQUIRED >= __IPHONE_4_0)
+    scale = [screen scale];
+#endif
+
+	CGRect lFrame = [screen bounds];//[self.view bounds];
+	unsigned int w = lFrame.size.width;
+	unsigned int h = lFrame.size.height; 
+    
+	osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits;
+    
+    //create the viewer
+	_viewer = new osgViewer::Viewer();
+    
+    //_viewer->setThreadingModel(osgViewer::ViewerBase::SingleThreaded);
+    _viewer->getDatabasePager()->setTargetMaximumNumberOfPageLOD(0);
+    _viewer->getDatabasePager()->setUnrefImageDataAfterApplyPolicy(true,true);
+    
+	// Setup the traits parameters
+	traits->x = 0;
+	traits->y = 0;
+	traits->width = w*scale;
+	traits->height = h*scale;
+	traits->depth = 24; //keep memory down, default is currently 24
+	traits->alpha = 8;
+    //traits->samples = 4;
+    //traits->sampleBuffers = 2;
+	//traits->stencil = 1;
+	traits->windowDecoration = false;
+	traits->doubleBuffer = true;
+	traits->sharedContext = 0;
+	traits->setInheritedWindowPixelFormat = true;
+    
+	osg::ref_ptr<osg::Referenced> windata = new osgViewer::GraphicsWindowIOS::WindowData(self.view, osgViewer::GraphicsWindowIOS::WindowData::PORTRAIT_ORIENTATION, scale);
+	traits->inheritedWindowData = windata;
+    
+	// Create the Graphics Context
+	osg::ref_ptr<osg::GraphicsContext> graphicsContext = osg::GraphicsContext::createGraphicsContext(traits.get());
+	
+	if(graphicsContext)
+	{
+        _viewer->getCamera()->setGraphicsContext(graphicsContext);
+    }
+    
+    _viewer->getCamera()->setViewport(new osg::Viewport(0, 0, traits->width, traits->height));
+    _viewer->getCamera()->setClearMask(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
+    _viewer->getCamera()->setClearColor(osg::Vec4(1.0f,0.0f,0.0f,0.0f));
+    _viewer->getCamera()->setProjectionMatrixAsPerspective(45.0f,(float)w/h,
+                                                           0.1f, 10000.0f);
+
+
+    //load
+    [self loadOsgEarthDemoScene];
+    
+    // configure the near/far so we don't clip things that are up close
+    _viewer->getCamera()->setNearFarRatio(0.00002);
+    
+    // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
+    // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
+    _viewer->getDatabasePager()->setDoPreCompile( true );
+
+  
+    _isAnimating=false;
+    [self startAnimation];
+    
+}
+
+- (void)viewDidUnload
+{    
+    [super viewDidUnload];
+    
+    [self stopAnimation];
+}
+
+- (void)didReceiveMemoryWarning
+{
+    [super didReceiveMemoryWarning];
+    // Release any cached data, images, etc. that aren't in use.
+}
+
+- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
+{
+    return interfaceOrientation == UIInterfaceOrientationPortrait;
+}
+
+- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
+{
+	NSLog(@"touchesBegan");
+}
+
+#pragma mark - update fired by timer to render update and render osgm
+
+//
+- (void)startAnimation
+{
+    if(!_isAnimating){
+        _displayLink = [CADisplayLink displayLinkWithTarget:self selector:@selector(update:)];
+        [_displayLink setFrameInterval:1];
+        [_displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
+        _isAnimating = true;
+    }
+}
+- (void)stopAnimation
+{
+    if(_displayLink){
+        [_displayLink invalidate];
+        _displayLink = nil;
+        _isAnimating = false;
+    }
+}
+
+
+- (void)update:(CADisplayLink *)sender
+{
+    //
+    _viewer->frame();
+}
+
+
+ at end
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/InfoPlist.strings b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/InfoPlist.strings
new file mode 100644
index 0000000..477b28f
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPad.xib b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPad.xib
new file mode 100644
index 0000000..83de253
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPad.xib
@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.CocoaTouch.iPad.XIB" version="8.00">
+	<data>
+		<int key="IBDocument.SystemTarget">1296</int>
+		<string key="IBDocument.SystemVersion">11D50b</string>
+		<string key="IBDocument.InterfaceBuilderVersion">2182</string>
+		<string key="IBDocument.AppKitVersion">1138.32</string>
+		<string key="IBDocument.HIToolboxVersion">568.00</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			<string key="NS.object.0">1181</string>
+		</object>
+		<array key="IBDocument.IntegratedClassDependencies">
+			<string>IBProxyObject</string>
+			<string>IBUIView</string>
+		</array>
+		<array key="IBDocument.PluginDependencies">
+			<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+		</array>
+		<object class="NSMutableDictionary" key="IBDocument.Metadata">
+			<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
+			<integer value="1" key="NS.object.0"/>
+		</object>
+		<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+			<object class="IBProxyObject" id="372490531">
+				<string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
+				<string key="targetRuntimeIdentifier">IBIPadFramework</string>
+			</object>
+			<object class="IBProxyObject" id="975951072">
+				<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
+				<string key="targetRuntimeIdentifier">IBIPadFramework</string>
+			</object>
+			<object class="IBUIView" id="191373211">
+				<reference key="NSNextResponder"/>
+				<int key="NSvFlags">274</int>
+				<string key="NSFrame">{{0, 20}, {768, 1004}}</string>
+				<reference key="NSSuperview"/>
+				<reference key="NSWindow"/>
+				<reference key="NSNextKeyView"/>
+				<object class="NSColor" key="IBUIBackgroundColor">
+					<int key="NSColorSpace">3</int>
+					<bytes key="NSWhite">MQA</bytes>
+					<object class="NSColorSpace" key="NSCustomColorSpace">
+						<int key="NSID">2</int>
+					</object>
+				</object>
+				<object class="IBUISimulatedStatusBarMetrics" key="IBUISimulatedStatusBarMetrics">
+					<int key="IBUIStatusBarStyle">2</int>
+				</object>
+				<string key="targetRuntimeIdentifier">IBIPadFramework</string>
+			</object>
+		</array>
+		<object class="IBObjectContainer" key="IBDocument.Objects">
+			<array class="NSMutableArray" key="connectionRecords">
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">view</string>
+						<reference key="source" ref="372490531"/>
+						<reference key="destination" ref="191373211"/>
+					</object>
+					<int key="connectionID">3</int>
+				</object>
+			</array>
+			<object class="IBMutableOrderedSet" key="objectRecords">
+				<array key="orderedObjects">
+					<object class="IBObjectRecord">
+						<int key="objectID">0</int>
+						<array key="object" id="0"/>
+						<reference key="children" ref="1000"/>
+						<nil key="parent"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">1</int>
+						<reference key="object" ref="191373211"/>
+						<reference key="parent" ref="0"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-1</int>
+						<reference key="object" ref="372490531"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">File's Owner</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-2</int>
+						<reference key="object" ref="975951072"/>
+						<reference key="parent" ref="0"/>
+					</object>
+				</array>
+			</object>
+			<dictionary class="NSMutableDictionary" key="flattenedProperties">
+				<string key="-1.CustomClassName">ViewController</string>
+				<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="-2.CustomClassName">UIResponder</string>
+				<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			</dictionary>
+			<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
+			<nil key="activeLocalization"/>
+			<dictionary class="NSMutableDictionary" key="localizations"/>
+			<nil key="sourceID"/>
+			<int key="maxID">3</int>
+		</object>
+		<object class="IBClassDescriber" key="IBDocument.Classes">
+			<array class="NSMutableArray" key="referencedPartialClassDescriptions">
+				<object class="IBPartialClassDescription">
+					<string key="className">ViewController</string>
+					<string key="superclassName">UIViewController</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">./Classes/ViewController.h</string>
+					</object>
+				</object>
+			</array>
+		</object>
+		<int key="IBDocument.localizationMode">0</int>
+		<string key="IBDocument.TargetRuntimeIdentifier">IBIPadFramework</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
+			<real value="1296" key="NS.object.0"/>
+		</object>
+		<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+		<int key="IBDocument.defaultPropertyAccessControl">3</int>
+		<string key="IBCocoaTouchPluginVersion">1181</string>
+	</data>
+</archive>
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPhone.xib b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPhone.xib
new file mode 100644
index 0000000..78d0b27
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/en.lproj/ViewController_iPhone.xib
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<archive type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="8.00">
+	<data>
+		<int key="IBDocument.SystemTarget">1296</int>
+		<string key="IBDocument.SystemVersion">11E53</string>
+		<string key="IBDocument.InterfaceBuilderVersion">2182</string>
+		<string key="IBDocument.AppKitVersion">1138.47</string>
+		<string key="IBDocument.HIToolboxVersion">569.00</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			<string key="NS.object.0">1181</string>
+		</object>
+		<array key="IBDocument.IntegratedClassDependencies">
+			<string>IBProxyObject</string>
+			<string>IBUIView</string>
+		</array>
+		<array key="IBDocument.PluginDependencies">
+			<string>com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+		</array>
+		<object class="NSMutableDictionary" key="IBDocument.Metadata">
+			<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
+			<integer value="1" key="NS.object.0"/>
+		</object>
+		<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
+			<object class="IBProxyObject" id="841351856">
+				<string key="IBProxiedObjectIdentifier">IBFilesOwner</string>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+			<object class="IBProxyObject" id="371349661">
+				<string key="IBProxiedObjectIdentifier">IBFirstResponder</string>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+			<object class="IBUIView" id="184854543">
+				<reference key="NSNextResponder"/>
+				<int key="NSvFlags">274</int>
+				<string key="NSFrameSize">{320, 460}</string>
+				<reference key="NSSuperview"/>
+				<reference key="NSWindow"/>
+				<reference key="NSNextKeyView"/>
+				<object class="NSColor" key="IBUIBackgroundColor">
+					<int key="NSColorSpace">3</int>
+					<bytes key="NSWhite">MQA</bytes>
+					<object class="NSColorSpace" key="NSCustomColorSpace">
+						<int key="NSID">2</int>
+					</object>
+				</object>
+				<bool key="IBUIClearsContextBeforeDrawing">NO</bool>
+				<string key="targetRuntimeIdentifier">IBCocoaTouchFramework</string>
+			</object>
+		</array>
+		<object class="IBObjectContainer" key="IBDocument.Objects">
+			<array class="NSMutableArray" key="connectionRecords">
+				<object class="IBConnectionRecord">
+					<object class="IBCocoaTouchOutletConnection" key="connection">
+						<string key="label">view</string>
+						<reference key="source" ref="841351856"/>
+						<reference key="destination" ref="184854543"/>
+					</object>
+					<int key="connectionID">3</int>
+				</object>
+			</array>
+			<object class="IBMutableOrderedSet" key="objectRecords">
+				<array key="orderedObjects">
+					<object class="IBObjectRecord">
+						<int key="objectID">0</int>
+						<array key="object" id="0"/>
+						<reference key="children" ref="1000"/>
+						<nil key="parent"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-1</int>
+						<reference key="object" ref="841351856"/>
+						<reference key="parent" ref="0"/>
+						<string key="objectName">File's Owner</string>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">-2</int>
+						<reference key="object" ref="371349661"/>
+						<reference key="parent" ref="0"/>
+					</object>
+					<object class="IBObjectRecord">
+						<int key="objectID">2</int>
+						<reference key="object" ref="184854543"/>
+						<array class="NSMutableArray" key="children"/>
+						<reference key="parent" ref="0"/>
+					</object>
+				</array>
+			</object>
+			<dictionary class="NSMutableDictionary" key="flattenedProperties">
+				<string key="-1.CustomClassName">ViewController</string>
+				<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="-2.CustomClassName">UIResponder</string>
+				<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+				<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.IBCocoaTouchPlugin</string>
+			</dictionary>
+			<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
+			<nil key="activeLocalization"/>
+			<dictionary class="NSMutableDictionary" key="localizations"/>
+			<nil key="sourceID"/>
+			<int key="maxID">6</int>
+		</object>
+		<object class="IBClassDescriber" key="IBDocument.Classes">
+			<array class="NSMutableArray" key="referencedPartialClassDescriptions">
+				<object class="IBPartialClassDescription">
+					<string key="className">ViewController</string>
+					<string key="superclassName">UIViewController</string>
+					<object class="IBClassDescriptionSource" key="sourceIdentifier">
+						<string key="majorKey">IBProjectSource</string>
+						<string key="minorKey">./Classes/ViewController.h</string>
+					</object>
+				</object>
+			</array>
+		</object>
+		<int key="IBDocument.localizationMode">0</int>
+		<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaTouchFramework</string>
+		<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
+			<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaTouchPlugin.iPhoneOS</string>
+			<real value="1296" key="NS.object.0"/>
+		</object>
+		<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
+		<int key="IBDocument.defaultPropertyAccessControl">3</int>
+		<string key="IBCocoaTouchPluginVersion">1181</string>
+	</data>
+</archive>
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/main.m b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/main.m
new file mode 100644
index 0000000..20f6a89
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/main.m
@@ -0,0 +1,18 @@
+//
+//  main.m
+//  osgEarthViewerIOS
+//
+//  Created by Thomas Hogarth on 14/07/2012.
+//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
+//
+
+#import <UIKit/UIKit.h>
+
+#import "AppDelegate.h"
+
+int main(int argc, char *argv[])
+{
+    @autoreleasepool {
+        return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
+    }
+}
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Info.plist b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Info.plist
new file mode 100644
index 0000000..0253f5e
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Info.plist
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>en</string>
+	<key>CFBundleDisplayName</key>
+	<string>${PRODUCT_NAME}</string>
+	<key>CFBundleExecutable</key>
+	<string>${EXECUTABLE_NAME}</string>
+	<key>CFBundleIdentifier</key>
+	<string>com.osgearth.viewer</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>${PRODUCT_NAME}</string>
+	<key>CFBundlePackageType</key>
+	<string>APPL</string>
+	<key>CFBundleShortVersionString</key>
+	<string>1.0</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>1.2</string>
+	<key>LSRequiresIPhoneOS</key>
+	<true/>
+	<key>UIApplicationExitsOnSuspend</key>
+	<true/>
+	<key>UIRequiredDeviceCapabilities</key>
+	<array>
+		<string>armv7</string>
+	</array>
+	<key>UIStatusBarHidden</key>
+	<true/>
+	<key>UISupportedInterfaceOrientations</key>
+	<array>
+		<string>UIInterfaceOrientationPortrait</string>
+	</array>
+	<key>UISupportedInterfaceOrientations~ipad</key>
+	<array>
+		<string>UIInterfaceOrientationPortrait</string>
+		<string>UIInterfaceOrientationPortraitUpsideDown</string>
+		<string>UIInterfaceOrientationLandscapeLeft</string>
+		<string>UIInterfaceOrientationLandscapeRight</string>
+	</array>
+</dict>
+</plist>
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Prefix.pch b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Prefix.pch
new file mode 100644
index 0000000..15e6a77
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgEarthViewerIOS-Prefix.pch
@@ -0,0 +1,14 @@
+//
+// Prefix header for all source files of the 'osgEarthViewerIOS' target in the 'osgEarthViewerIOS' project
+//
+
+#import <Availability.h>
+
+#ifndef __IPHONE_5_0
+#warning "This project uses features only available in iOS SDK 5.0 and later."
+#endif
+
+#ifdef __OBJC__
+    #import <UIKit/UIKit.h>
+    #import <Foundation/Foundation.h>
+#endif
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgPlugins.h b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgPlugins.h
new file mode 100755
index 0000000..486ab1a
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgPlugins.h
@@ -0,0 +1,81 @@
+#pragma once 
+
+//This file is used to force the linking of the osg and hogbox plugins
+//as we our doing a static build we can't depend on the loading of the
+//dynamic libs to add the plugins to the registries
+
+#include <osgViewer/GraphicsWindow>
+#include <osgDB/Registry>
+
+//windowing system
+#ifndef ANDROID
+USE_GRAPICSWINDOW_IMPLEMENTATION(IOS)
+#endif
+
+
+//osg plugins
+
+USE_OSGPLUGIN(OpenFlight)
+USE_OSGPLUGIN(obj)
+USE_OSGPLUGIN(ive)
+
+//depreceated osg format
+USE_OSGPLUGIN(osg)
+USE_DOTOSGWRAPPER_LIBRARY(osg)
+
+
+USE_OSGPLUGIN(osg2)
+USE_SERIALIZER_WRAPPER_LIBRARY(osg)
+USE_SERIALIZER_WRAPPER_LIBRARY(osgAnimation)
+
+USE_OSGPLUGIN(rot)
+USE_OSGPLUGIN(scale)
+USE_OSGPLUGIN(trans)
+
+
+//image files
+#ifndef ANDROID
+USE_OSGPLUGIN(tiff)
+USE_OSGPLUGIN(imageio)
+#else
+USE_OSGPLUGIN(png)
+USE_OSGPLUGIN(jpeg)
+#endif
+
+USE_OSGPLUGIN(zip)
+USE_OSGPLUGIN(curl)
+USE_OSGPLUGIN(freetype)
+
+
+USE_OSGPLUGIN(kml)
+USE_OSGPLUGIN(osgearth_feature_wfs)
+USE_OSGPLUGIN(osgearth_feature_tfs)
+USE_OSGPLUGIN(osgearth_tms)
+USE_OSGPLUGIN(osgearth_wms)
+USE_OSGPLUGIN(osgearth_label_overlay)
+USE_OSGPLUGIN(osgearth_xyz)
+USE_OSGPLUGIN(osgearth_label_annotation)
+USE_OSGPLUGIN(osgearth_mask_feature)
+USE_OSGPLUGIN(osgearth_model_feature_geom)
+USE_OSGPLUGIN(osgearth_agglite)
+USE_OSGPLUGIN(osgearth_feature_ogr)
+USE_OSGPLUGIN(osgearth_model_feature_stencil)
+USE_OSGPLUGIN(osgearth_vdatum_egm2008)
+USE_OSGPLUGIN(osgearth_model_simple)
+USE_OSGPLUGIN(osgearth_engine_osgterrain)
+//USE_OSGPLUGIN(osgearth_engine_quadtree)
+USE_OSGPLUGIN(osgearth_vdatum_egm96)
+USE_OSGPLUGIN(osgearth_ocean_surface)
+USE_OSGPLUGIN(osgearth_debug)
+USE_OSGPLUGIN(osgearth_mbtiles)
+USE_OSGPLUGIN(osgearth_vdatum_egm84)
+USE_OSGPLUGIN(osgearth_tileservice)
+USE_OSGPLUGIN(osgearth_yahoo)
+USE_OSGPLUGIN(osgearth_arcgis_map_cache)
+USE_OSGPLUGIN(osgearth_tilecache)
+USE_OSGPLUGIN(osgearth_wcs)
+USE_OSGPLUGIN(osgearth_gdal)
+USE_OSGPLUGIN(earth)
+USE_OSGPLUGIN(osgearth_cache_filesystem)
+USE_OSGPLUGIN(osgearth_arcgis)
+USE_OSGPLUGIN(osgearth_osg)
diff --git a/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgearth_viewerIOS.cpp b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgearth_viewerIOS.cpp
new file mode 100755
index 0000000..2e970bf
--- /dev/null
+++ b/src/applications/osgearth_viewerIOS/osgEarthViewerIOS/osgearth_viewerIOS.cpp
@@ -0,0 +1,66 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osg/Notify>
+#include <osgViewer/Viewer>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/ExampleResources>
+
+#define LC "[viewer] "
+
+using namespace osgEarth::Util;
+
+//------------------------------------------------------------------------
+
+int
+main(int argc, char** argv)
+{
+    osg::ArgumentParser arguments(&argc,argv);
+    if ( arguments.read("--stencil") )
+        osg::DisplaySettings::instance()->setMinimumNumStencilBits( 8 );
+
+    // create a viewer:
+    osgViewer::Viewer viewer(arguments);
+
+    // install our default manipulator (do this before calling load)
+    viewer.setCameraManipulator( new EarthManipulator() );
+
+    // load an earth file, and support all or our example command-line options
+    // and earth file <external> tags
+    osg::Node* node = MapNodeHelper().load( arguments, &viewer );
+    if ( node )
+    {
+        viewer.setSceneData( node );
+
+        // configure the near/far so we don't clip things that are up close
+        viewer.getCamera()->setNearFarRatio(0.00002);
+
+        // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
+        // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
+        viewer.getDatabasePager()->setDoPreCompile( true );
+
+        return viewer.run();
+    }
+    else
+    {
+        OE_NOTICE 
+            << "\nUsage: " << argv[0] << " file.earth" << std::endl
+            << MapNodeHelper().usage() << std::endl;
+    }
+}
diff --git a/src/osgEarth/Bounds b/src/osgEarth/Bounds
new file mode 100644
index 0000000..41fa5a7
--- /dev/null
+++ b/src/osgEarth/Bounds
@@ -0,0 +1,62 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_BOUNDS_H
+#define OSGEARTH_BOUNDS_H 1
+
+#include <osgEarth/Common>
+#include <osg/BoundingBox>
+
+namespace osgEarth
+{  
+    class SpatialReference;
+
+    /**
+     * An "anonymous" bounding extent (i.e., no geo reference information)
+     */
+    class OSGEARTH_EXPORT Bounds : public osg::BoundingBoxImpl<osg::Vec3d>
+    {
+    public:
+        Bounds();
+        Bounds(double xmin, double ymin, double xmax, double ymax );
+
+        /** dtor */
+        virtual ~Bounds() { }
+
+        double width() const;
+        double height() const;
+        double depth() const;
+        bool contains(double x, double y ) const;
+        bool contains(const Bounds& rhs) const;
+        Bounds unionWith(const Bounds& rhs) const; 
+        Bounds intersectionWith(const Bounds& rhs) const;
+        void expandBy( double x, double y );
+        void expandBy( double x, double y, double z );
+        void expandBy( const Bounds& rhs );
+        osg::Vec2d center2d() const;
+        double radius2d() const;
+        double area2d() const;
+        std::string toString() const;
+        bool isValid() const;
+        bool isEmpty() const { return !isValid(); }
+        void transform( const SpatialReference* fromSRS, const SpatialReference* toSRS );
+    };
+}
+
+#endif // OSGEARTH_BOUNDS_H
diff --git a/src/osgEarth/Bounds.cpp b/src/osgEarth/Bounds.cpp
new file mode 100644
index 0000000..98b4ae4
--- /dev/null
+++ b/src/osgEarth/Bounds.cpp
@@ -0,0 +1,163 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/Bounds>
+#include <osgEarth/StringUtils>
+#include <osgEarth/SpatialReference>
+
+using namespace osgEarth;
+
+#define LC "[Bounds] "
+
+//------------------------------------------------------------------------
+
+
+Bounds::Bounds() :
+osg::BoundingBoxImpl<osg::Vec3d>( DBL_MAX, DBL_MAX, DBL_MAX, -DBL_MAX, -DBL_MAX, -DBL_MAX )
+{
+    //nop
+}
+
+Bounds::Bounds(double xmin, double ymin, double xmax, double ymax ) :
+osg::BoundingBoxImpl<osg::Vec3d>( xmin, ymin, -DBL_MAX, xmax, ymax, DBL_MAX )
+{
+    //nop
+}
+
+bool
+Bounds::isValid() const
+{
+    return xMin() <= xMax() && yMin() <= yMax();
+}
+
+bool 
+Bounds::contains(double x, double y ) const
+{
+    return 
+        isValid() &&
+        x >= xMin() && x <= xMax() && y >= yMin() && y <= yMax();
+}
+
+bool
+Bounds::contains(const Bounds& rhs) const
+{
+    return 
+        isValid() && rhs.isValid() && 
+        xMin() <= rhs.xMin() && xMax() >= rhs.xMax() &&
+        yMin() <= rhs.yMin() && yMax() >= rhs.yMax();
+}
+
+void
+Bounds::expandBy( double x, double y )
+{
+    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( x, y, 0 );
+}
+
+void
+Bounds::expandBy( double x, double y, double z )
+{
+    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( x, y, z );
+}
+
+void
+Bounds::expandBy( const Bounds& rhs )
+{
+    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( rhs );
+}
+
+Bounds 
+Bounds::unionWith(const Bounds& rhs) const
+{
+    if ( valid() && !rhs.valid() ) return *this;
+    if ( !valid() && rhs.valid() ) return rhs;
+
+    Bounds u;
+    if ( intersects(rhs) ) {
+        u.xMin() = xMin() >= rhs.xMin() && xMin() <= rhs.xMax() ? xMin() : rhs.xMin();
+        u.xMax() = xMax() >= rhs.xMin() && xMax() <= rhs.xMax() ? xMax() : rhs.xMax();
+        u.yMin() = yMin() >= rhs.yMin() && yMin() <= rhs.yMax() ? yMin() : rhs.yMin();
+        u.yMax() = yMax() >= rhs.yMin() && yMax() <= rhs.yMax() ? yMax() : rhs.yMax();
+        u.zMin() = zMin() >= rhs.zMin() && zMin() <= rhs.zMax() ? zMin() : rhs.zMin();
+        u.zMax() = zMax() >= rhs.zMin() && zMax() <= rhs.zMax() ? zMax() : rhs.zMax();
+    }
+    return u;
+}
+
+Bounds
+Bounds::intersectionWith(const Bounds& rhs) const 
+{
+    if ( valid() && !rhs.valid() ) return *this;
+    if ( !valid() && rhs.valid() ) return rhs;
+
+    if ( this->contains(rhs) ) return rhs;
+    if ( rhs.contains(*this) ) return *this;
+
+    if ( !intersects(rhs) ) return Bounds();
+
+    double xmin, xmax, ymin, ymax;
+
+    xmin = ( xMin() > rhs.xMin() && xMin() < rhs.xMax() ) ? xMin() : rhs.xMin();
+    xmax = ( xMax() > rhs.xMin() && xMax() < rhs.xMax() ) ? xMax() : rhs.xMax();
+    ymin = ( yMin() > rhs.yMin() && yMin() < rhs.yMax() ) ? yMin() : rhs.yMin();
+    ymax = ( yMax() > rhs.yMin() && yMax() < rhs.yMax() ) ? yMax() : rhs.yMax();
+
+    return Bounds(xmin, ymin, xmax, ymax);
+}
+
+double
+Bounds::width() const {
+    return xMax()-xMin();
+}
+
+double
+Bounds::height() const {
+    return yMax()-yMin();
+}
+
+double
+Bounds::depth() const {
+    return zMax()-zMin();
+}
+
+osg::Vec2d
+Bounds::center2d() const {
+    osg::Vec3d c = center();
+    return osg::Vec2d( c.x(), c.y() );
+}
+
+double
+Bounds::radius2d() const {
+    return (center2d() - osg::Vec2d(xMin(),yMin())).length();
+}
+
+double
+Bounds::area2d() const {
+    return width() * height();
+}
+
+std::string
+Bounds::toString() const
+{
+    return Stringify() << "(" << xMin() << "," << yMin() << " => " << xMax() << "," << yMax() << ")";
+}
+
+void
+Bounds::transform( const SpatialReference* from, const SpatialReference* to )
+{
+    from->transformExtentToMBR( to, _min.x(), _min.y(), _max.x(), _max.y() );
+}
diff --git a/src/osgEarth/CMakeLists.txt b/src/osgEarth/CMakeLists.txt
index b0f12ad..25e0e0c 100644
--- a/src/osgEarth/CMakeLists.txt
+++ b/src/osgEarth/CMakeLists.txt
@@ -19,72 +19,92 @@ SET(LIB_NAME osgEarth)
 
 SET(HEADER_PATH ${OSGEARTH_SOURCE_DIR}/include/${LIB_NAME})
 SET(LIB_PUBLIC_HEADERS
-    Caching
-	CacheSeed
-	Capabilities
+    Bounds
+    Cache
+    CacheBin
+    CachePolicy
+    CacheSeed
+    Capabilities
+    ColorFilter
     Common
     CompositeTileSource
     Config
+    Containers
     Cube
+    CullingUtils
+    DepthOffset
+    DPLineSegmentIntersector
+    Draggers
     DrapeableNode
+    DrawInstanced
     ECEF
     ElevationLayer
+    ElevationLOD
     ElevationQuery
     Export
-    EGM
+    FadeEffect
     FileUtils
-	FindNode
+    GeoCommon
     GeoData
+    Geoid
     GeoMath
     HeightFieldUtils
     HTTPClient
-    ImageToHeightFieldConverter
     ImageLayer
     ImageMosaic
+    ImageToHeightFieldConverter
     ImageUtils
+    IOTypes
     JsonUtils
     Layer
+    LineFunctor
     Locators
     LocalTangentPlane
     Map
     MapNode
+    MapNodeObserver
     MapNodeOptions
     MapOptions
     MaskLayer
     MaskNode
     MaskSource
+    MemCache
     ModelLayer
     ModelSource
     NodeUtils
-	Notify
-	OverlayDecorator
+    Notify
+    optional
+    OverlayDecorator
+    Pickers
     Profile
-	Progress
-	Random
+    Progress
+    Random
     Registry
     Revisioning
     ShaderComposition
+    ShaderGenerator
     ShaderUtils
     SparseTexture2DArray
     SpatialReference
+    StateSetCache
     StringUtils
     TaskService
+    Terrain
     TerrainLayer
     TerrainOptions
     TerrainEngineNode
     TextureCompositor
     TextureCompositorMulti
     TextureCompositorTexArray
-    TileFactory
     TileKey
     TileSource
     ThreadingUtils
-    TMS
     Units
     URI
     Utils
-	Version
-    VerticalSpatialReference
+    Version
+    VerticalDatum
+    Viewpoint
     XmlUtils
 )
 
@@ -105,25 +125,33 @@ IF (NOT TINYXML_FOUND)
         tinyxmlparser.cpp
     )
 ENDIF (NOT TINYXML_FOUND)
-MESSAGE("${LIB_PUBLIC_HEADERS}")
 
-ADD_LIBRARY(${LIB_NAME} SHARED
-#    ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
+ADD_LIBRARY(${LIB_NAME} ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
     ${LIB_PUBLIC_HEADERS}
     ${TINYXML_SRC}
-    Caching.cpp
+    Bounds.cpp
+    Cache.cpp
+    CachePolicy.cpp
     CacheSeed.cpp
-	Capabilities.cpp
+    Capabilities.cpp
+    ColorFilter.cpp
     CompositeTileSource.cpp
     Config.cpp
     Cube.cpp
+    CullingUtils.cpp
+    DepthOffset.cpp
+    Draggers.cpp
+    DPLineSegmentIntersector.cpp
     DrapeableNode.cpp
+    DrawInstanced.cpp
     ECEF.cpp
-    EGM.cpp
     ElevationLayer.cpp
+    ElevationLOD.cpp
     ElevationQuery.cpp
+    FadeEffect.cpp
     FileUtils.cpp
     GeoData.cpp
+    Geoid.cpp
     GeoMath.cpp
     HeightFieldUtils.cpp
     HTTPClient.cpp
@@ -131,6 +159,7 @@ ADD_LIBRARY(${LIB_NAME} SHARED
     ImageMosaic.cpp
     ImageToHeightFieldConverter.cpp
     ImageUtils.cpp
+    IOTypes.cpp
     JsonUtils.cpp
     Layer.cpp
     Locators.cpp
@@ -142,37 +171,43 @@ ADD_LIBRARY(${LIB_NAME} SHARED
     MaskLayer.cpp
     MaskNode.cpp
     MaskSource.cpp
-	MimeTypes.cpp
-	ModelLayer.cpp
-	ModelSource.cpp
-	NodeUtils.cpp
-	Notify.cpp
-	OverlayDecorator.cpp
+    MemCache.cpp
+    MimeTypes.cpp
+    ModelLayer.cpp
+    ModelSource.cpp
+    NodeUtils.cpp
+    Notify.cpp
+    OverlayDecorator.cpp
+    Pickers.cpp
     Profile.cpp
-	Progress.cpp
-	Random.cpp
+    Progress.cpp
+    Random.cpp
     Registry.cpp
+    Revisioning.cpp
     ShaderComposition.cpp
+    ShaderGenerator.cpp
     ShaderUtils.cpp
     SparseTexture2DArray.cpp
     SpatialReference.cpp
+    StateSetCache.cpp
     StringUtils.cpp
     TaskService.cpp
+    Terrain.cpp
     TerrainLayer.cpp
     TerrainOptions.cpp
     TerrainEngineNode.cpp
     TextureCompositor.cpp
     TextureCompositorMulti.cpp
     TextureCompositorTexArray.cpp
-    TileFactory.cpp
     TileKey.cpp
     TileSource.cpp
-    TMS.cpp
+    ThreadingUtils.cpp
     Units.cpp
     URI.cpp
     Utils.cpp
     Version.cpp
-    VerticalSpatialReference.cpp
+    VerticalDatum.cpp
+    Viewpoint.cpp
     XmlUtils.cpp
 )
 
@@ -188,7 +223,15 @@ ELSE(WIN32)
   LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY} )
 ENDIF(WIN32)
 
-LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY CURL_LIBRARY GDAL_LIBRARY ZLIB_LIBRARY)
+#LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY CURL_LIBRARY GDAL_LIBRARY ZLIB_LIBRARY)
+
+OPTION(NRL_STATIC_LIBRARIES "Link osgEarth against static GDAL and cURL, including static OpenSSL, Proj4, JPEG, PNG, and TIFF." OFF)
+if(NOT NRL_STATIC_LIBRARIES)
+  LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY CURL_LIBRARY GDAL_LIBRARY ZLIB_LIBRARY)
+else(NOT NRL_STATIC_LIBRARIES)
+  LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY CURL_LIBRARY GDAL_LIBRARY ZLIB_LIBRARY SSL_EAY_RELEASE LIB_EAY_RELEASE TIFF_LIBRARY PROJ4_LIBRARY PNG_LIBRARY JPEG_LIBRARY)
+endif(NOT NRL_STATIC_LIBRARIES)
+
 LINK_CORELIB_DEFAULT(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
 
 IF (TINYXML_FOUND)
diff --git a/src/osgEarth/Cache b/src/osgEarth/Cache
new file mode 100644
index 0000000..b5a79b2
--- /dev/null
+++ b/src/osgEarth/Cache
@@ -0,0 +1,165 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_CACHE_H
+#define OSGEARTH_CACHE_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/CacheBin>
+#include <osgEarth/Config>
+#include <osgEarth/TileKey>
+#include <osgEarth/ThreadingUtils>
+
+namespace osgEarth
+{    
+    /**
+     * Base class for Cache implementation options.
+     */
+    class CacheOptions : public DriverConfigOptions // no export (header only)
+    {
+    public:
+        CacheOptions( const ConfigOptions& options =ConfigOptions() )
+            : DriverConfigOptions( options )
+        { 
+            fromConfig( _conf ); 
+        }
+
+        /** dtor */
+        virtual ~CacheOptions() { }
+
+    public:
+        virtual Config getConfig() const {
+            return ConfigOptions::getConfig();
+        }
+        virtual void mergeConfig( const Config& conf ) {
+            ConfigOptions::mergeConfig( conf );            
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            //nop
+        }
+    };
+
+//--------------------------------------------------------------------
+
+    typedef Threading::PerObjectRefMap<std::string, CacheBin> ThreadSafeCacheBinMap;
+
+
+    /**
+     * Cache is a container for local storage of keyed data elements.
+     */
+    class OSGEARTH_EXPORT Cache : public osg::Object
+    {
+    protected:
+        Cache( const CacheOptions& options =CacheOptions() );
+        Cache( const Cache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
+        META_Object( osgEarth, Cache );
+
+        /** dtor */
+        virtual ~Cache() { }
+
+    public:
+        /**
+         * Whether this cache is valid and available for use
+         */
+        bool isOK() const { return _ok; }
+
+        /**
+         * Gets a caching bin within this cache.
+         * @param name Name of the caching bin
+         * @param rw   Read/write driver for the bin (can be null)
+         */
+        CacheBin* getBin( const std::string& name );
+
+        /** 
+         * Gets the default caching bin within this cache. This may or may not
+         * be supported by the implementation, so be sure to check the result
+         * before using it.
+         */
+        virtual CacheBin* getOrCreateDefaultBin() { return _defaultBin.get(); }
+
+        /**
+         * Creates (and returns a pointer to) a new Cache Bin.
+         * @param binID Name of the new bin
+         * @param rw    Read/write driver that will handle serialization for the bin
+         */
+        virtual CacheBin* addBin( const std::string& binID ) { return 0L; }
+
+        /**
+         * Removes a cache bin from the cache.
+         * @param bin Bin to remove.
+         */
+        virtual void removeBin( CacheBin* bin );
+
+        /** 
+         * Gets an Options structure representing this cache's configuration.
+         */
+        const CacheOptions& getCacheOptions() const { return _options; }
+
+        /**
+         * Store this to an osgDB::Options
+         */
+        void apply( osgDB::Options* options ) {
+            if ( options ) options->setPluginData( "osgEarth::Cache", this );
+        }
+
+        /**
+         * Fetch pointer from a osgDB::Options
+         */
+        static Cache* get( const osgDB::Options* options ) {
+            return options ? const_cast<Cache*>( static_cast<const Cache*>( options->getPluginData("osgEarth::Cache") ) ) : 0L;
+        }
+
+    protected:
+        bool                   _ok;
+        CacheOptions           _options;
+        ThreadSafeCacheBinMap  _bins;
+        osg::ref_ptr<CacheBin> _defaultBin;
+    };
+
+//----------------------------------------------------------------------
+
+    /**
+     * Base class for a cache driver plugin.
+     */
+    class OSGEARTH_EXPORT CacheDriver : public osgDB::ReaderWriter
+    {
+    public:
+        const CacheOptions& getCacheOptions( const osgDB::ReaderWriter::Options* options ) const;
+
+        /** dtor */
+        virtual ~CacheDriver() { }
+    };
+
+//----------------------------------------------------------------------
+
+    /** 
+     * Factory class that can load and instantiate a Cache implementation based on the
+     * information in the CacheOptions settings.
+     */
+    class OSGEARTH_EXPORT CacheFactory
+    {
+    public:
+        static Cache* create( const CacheOptions& options);
+    };
+}
+
+#endif // OSGEARTH_CACHE_H
diff --git a/src/osgEarth/Cache.cpp b/src/osgEarth/Cache.cpp
new file mode 100644
index 0000000..06c26b2
--- /dev/null
+++ b/src/osgEarth/Cache.cpp
@@ -0,0 +1,108 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/Cache>
+#include <osgEarth/Registry>
+#include <osgEarth/ThreadingUtils>
+
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <osgDB/ReadFile>
+#include <osgDB/Registry>
+
+using namespace osgEarth;
+using namespace osgEarth::Threading;
+
+#define LC "[Cache] "
+
+//------------------------------------------------------------------------
+
+Cache::Cache( const CacheOptions& options ) :
+_ok     ( true ),
+_options( options )
+{
+    //nop
+}
+
+Cache::Cache( const Cache& rhs, const osg::CopyOp& op ) :
+osg::Object( rhs, op )
+{
+    _ok = rhs._ok;
+}
+
+CacheBin*
+Cache::getBin( const std::string& binID )
+{
+    osg::ref_ptr<CacheBin> _bin;
+    _bin = _bins.get( binID );
+    return _bin.get();
+}
+
+void
+Cache::removeBin( CacheBin* bin )
+{
+    _bins.remove( bin );
+}
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[CacheFactory] "
+#define CACHE_OPTIONS_TAG "__osgEarth::CacheOptions"
+
+Cache*
+CacheFactory::create( const CacheOptions& options )
+{
+    osg::ref_ptr<Cache> result =0L;
+    OE_INFO << LC << "Initializing cache of type \"" << options.getDriver() << "\"" << std::endl;
+
+    if ( options.getDriver().empty() )
+    {
+        OE_WARN << LC << "ILLEGAL: no driver set in cache options" << std::endl;
+    }
+    else if ( options.getDriver() == "tms" )
+    {
+        OE_WARN << LC << "Sorry, but TMS caching is no longer supported; try \"filesystem\" instead" << std::endl;
+    }
+//    else if ( options.getDriver() == "tilecache" )
+//    {
+////        result = new DiskCache( options );
+//    }
+    else // try to load from a plugin
+    {
+        osg::ref_ptr<osgDB::Options> rwopt = Registry::instance()->cloneOrCreateOptions();
+        rwopt->setPluginData( CACHE_OPTIONS_TAG, (void*)&options );
+
+        std::string driverExt = std::string(".osgearth_cache_") + options.getDriver();
+        osgDB::ReaderWriter::ReadResult rr = osgDB::readObjectFile( driverExt, rwopt.get() );
+        result = dynamic_cast<Cache*>( rr.getObject() );
+        if ( !result )
+        {
+            OE_WARN << LC << "Failed to load cache plugin for type \"" << options.getDriver() << "\"" << std::endl;
+        }
+    }
+    return result.release();
+}
+
+//------------------------------------------------------------------------
+
+const CacheOptions&
+CacheDriver::getCacheOptions( const osgDB::ReaderWriter::Options* rwopt ) const 
+{
+    return *static_cast<const CacheOptions*>( rwopt->getPluginData( CACHE_OPTIONS_TAG ) );
+}
diff --git a/src/osgEarth/CacheBin b/src/osgEarth/CacheBin
new file mode 100644
index 0000000..0dee96d
--- /dev/null
+++ b/src/osgEarth/CacheBin
@@ -0,0 +1,131 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_CACHE_BIN_H
+#define OSGEARTH_CACHE_BIN_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/Config>
+#include <osgEarth/IOTypes>
+#include <osgDB/ReaderWriter>
+
+namespace osgEarth
+{
+    /**
+     * CacheBin is a names container within a Cache. It allows different
+     * application modules to compartmentalize their data withing a single
+     * cache location.
+     */
+    class /*no export*/ CacheBin : public osg::Referenced
+    {
+    public:
+        /**
+         * Constructs a caching bin.
+         * @param binID  Name of this caching bin (unique withing a Cache)
+         * @param driver ReaderWriter that serializes data for this caching bin.
+         */
+        CacheBin( const std::string& binID ) : _binID(binID) { }
+
+        /** dtor */
+        virtual ~CacheBin() { }
+
+        /**
+         * The identifier (unique withing a Cache) of this bin.
+         */
+        const std::string& getID() const { return _binID; }
+
+        /**
+         * Reads an object from the cache bin.
+         * @param key    Lookup key to read
+         * @param maxAge Maximum age of the record; return 0L if expired.
+         */
+        virtual ReadResult readObject(
+            const std::string&         key,
+            double                     maxAge =DBL_MAX ) =0;
+
+        /**
+         * Reads an image from the cache bin.
+         * @param key    Lookup key to read
+         * @param maxAge Maximum age of the record; return 0L if expired.
+         */
+        virtual ReadResult readImage(
+            const std::string&        key,
+            double                    maxAge =DBL_MAX ) =0;
+
+        /**
+         * Reads a string buffer from the cache bin.
+         * @param key    Lookup key to read
+         * @param maxAge Maximum age of the record; return 0L if expired.
+         */
+        virtual ReadResult readString(
+            const std::string&          key,
+            double                      maxAge =DBL_MAX ) =0;
+
+        /**
+         * Writes an object (or an image) to the cache bin.
+         * @param key    Lookup key to write to
+         * @param object Object to serialize to the cache
+         */
+        virtual bool write( 
+            const std::string& key, 
+            const osg::Object* object,
+            const Config&      metadata =Config() ) =0;
+
+        /**
+         * Checks whether a key exists in the cache.
+         * (Default implementation just tries to read the object)
+         */
+        virtual bool isCached( 
+            const std::string& key, 
+            double             maxAge =DBL_MAX ) =0;
+
+        /**
+         * Reads custom metadata from the cache.
+         */
+        virtual Config readMetadata() { return Config(); }
+
+        /**
+         * Writes custom metadata to the cache.
+         */
+        virtual bool writeMetadata( const Config& meta ) { return false; }
+
+        /**
+         * Purges all entries in the cache bin.
+         */
+        virtual bool purge() = 0;
+
+        /**
+         * Store this pointer in an options structure
+         */
+        void apply( osgDB::Options* options ) const {
+            if ( options ) options->setPluginData( "osgEarth::CacheBin", (void*)this );
+        }
+
+        /**
+         * Retrieve pointer from an options struture
+         */
+        static CacheBin* get( const osgDB::Options* options ) {
+            return options ? const_cast<CacheBin*>(static_cast<const CacheBin*>(options->getPluginData("osgEarth::CacheBin"))) : 0L;
+        }
+
+    protected:
+        std::string _binID;
+    };
+}
+
+#endif // OSGEARTH_CACHE_BIN_H
diff --git a/src/osgEarth/CachePolicy b/src/osgEarth/CachePolicy
new file mode 100644
index 0000000..fa86de0
--- /dev/null
+++ b/src/osgEarth/CachePolicy
@@ -0,0 +1,110 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_CACHE_POLICY_H
+#define OSGEARTH_CACHE_POLICY_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/Config>
+#include <osgDB/Options>
+
+namespace osgEarth
+{
+    /**
+     * Policy for cache usage.
+     */
+    class OSGEARTH_EXPORT CachePolicy
+    {
+    public:
+        enum Usage
+        {
+            USAGE_READ_WRITE   = 0,  // read/write to the cache if one exists.
+            USAGE_CACHE_ONLY   = 1,  // treat the cache as the ONLY source of data.
+            USAGE_READ_ONLY    = 2,  // read from the cache, but don't write new data to it.
+            USAGE_NO_CACHE     = 3   // neither read from or write to the cache
+        };
+
+        /** default cache policy (READ_WRITE) */
+        static CachePolicy DEFAULT;
+
+        /* policy indicating to never use a cache */
+        static CachePolicy NO_CACHE;
+
+        /** policy indicating to only use a cache */
+        static CachePolicy CACHE_ONLY;
+
+    public:
+        /** constructs an invalid CachePolicy. */
+        CachePolicy();
+
+        /** constructs a caching policy. */
+        CachePolicy( const Usage& usage );
+
+        /** constructs a caching policy. */
+        CachePolicy( const Usage& usage, double maxAgeSeconds );
+
+        /** constructs a CachePolicy from a config options */
+        CachePolicy( const Config& conf );
+
+        /** construct a cache policy be reading it from an osgDB::Options */
+        static bool fromOptions( const osgDB::Options* dbOptions, optional<CachePolicy>& out_policy );
+
+        /** Stores this cache policy in a DB Options. */
+        void apply( osgDB::Options* options );
+
+        /** dtor */
+        virtual ~CachePolicy() { }
+
+        /** Gets the usage policy */
+        optional<Usage>& usage() { return _usage; }
+        const optional<Usage>& usage() const { return _usage; }
+
+        /** Gets the age limit for a cache record (in seconds) */
+        optional<double>& maxAge() { return _maxAge; }
+        const optional<double>& maxAge() const { return _maxAge; }
+
+    public: // convenience functions.
+
+        bool isCacheReadable() const { 
+            return *_usage == USAGE_READ_WRITE || *_usage == USAGE_CACHE_ONLY || *_usage == USAGE_READ_ONLY;
+        }
+
+        bool isCacheWriteable() const {
+            return *_usage == USAGE_READ_WRITE;
+        }
+
+        bool operator == ( const CachePolicy& rhs ) const;
+
+        bool operator != ( const CachePolicy& rhs ) const {
+            return ! operator==(rhs);
+        }
+
+        std::string usageString() const;
+
+    public: // config
+        Config getConfig() const;
+        void fromConfig( const Config& conf );
+
+    private:
+        optional<Usage>   _usage;
+        optional<double>  _maxAge;
+    };
+}
+
+#endif // OSGEARTH_CACHE_POLICY_H
diff --git a/src/osgEarth/CachePolicy.cpp b/src/osgEarth/CachePolicy.cpp
new file mode 100644
index 0000000..ea24bea
--- /dev/null
+++ b/src/osgEarth/CachePolicy.cpp
@@ -0,0 +1,125 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/CachePolicy>
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+//statics
+CachePolicy CachePolicy::DEFAULT( CachePolicy::USAGE_READ_WRITE );
+CachePolicy CachePolicy::NO_CACHE( CachePolicy::USAGE_NO_CACHE );
+CachePolicy CachePolicy::CACHE_ONLY( CachePolicy::USAGE_CACHE_ONLY );
+
+//------------------------------------------------------------------------
+
+CachePolicy::CachePolicy() :
+_maxAge( DBL_MAX )
+{
+    _usage = USAGE_READ_WRITE;
+}
+
+CachePolicy::CachePolicy( const Usage& usage ) :
+_usage ( usage ),
+_maxAge( DBL_MAX )
+{
+    _usage = usage; // explicity init the optional<>
+}
+
+CachePolicy::CachePolicy( const Usage& usage, double maxAge ) :
+_usage( usage ),
+_maxAge( maxAge )
+{
+    _usage  = usage; // explicity init the optional<>
+    _maxAge = maxAge;
+}
+
+CachePolicy::CachePolicy( const Config& conf ) :
+_usage ( USAGE_READ_WRITE ),
+_maxAge( DBL_MAX )
+{
+    fromConfig( conf );
+}
+
+bool
+CachePolicy::fromOptions( const osgDB::Options* dbOptions, optional<CachePolicy>& out )
+{
+    if ( dbOptions )
+    {
+        std::string jsonString = dbOptions->getPluginStringData( "osgEarth::CachePolicy" );
+        if ( !jsonString.empty() )
+        {
+            Config conf;
+            conf.fromJSON( jsonString );
+            out = CachePolicy( conf );
+            return true;
+        }
+    }
+    return false;
+}
+
+void
+CachePolicy::apply( osgDB::Options* dbOptions )
+{
+    if ( dbOptions )
+    {
+        Config conf = getConfig();
+        dbOptions->setPluginStringData( "osgEarth::CachePolicy", conf.toJSON() );
+    }
+}
+
+bool
+CachePolicy::operator == (const CachePolicy& rhs) const
+{
+    return 
+        (_usage.get() == rhs._usage.get()) &&
+        (_maxAge.get() == rhs._maxAge.get());
+}
+
+std::string
+CachePolicy::usageString() const
+{
+    if ( _usage == USAGE_READ_WRITE ) return "read-write";
+    if ( _usage == USAGE_READ_ONLY )  return "read-only";
+    if ( _usage == USAGE_CACHE_ONLY)  return "cache-only";
+    if ( _usage == USAGE_NO_CACHE)    return "no-cache";
+    return "unknown";
+}
+
+void
+CachePolicy::fromConfig( const Config& conf )
+{
+    conf.getIfSet( "usage", "read_write", _usage, USAGE_READ_WRITE );
+    conf.getIfSet( "usage", "read_only",  _usage, USAGE_READ_ONLY );
+    conf.getIfSet( "usage", "cache_only", _usage, USAGE_CACHE_ONLY );
+    conf.getIfSet( "usage", "no_cache",   _usage, USAGE_NO_CACHE );
+    conf.getIfSet( "max_age", _maxAge );
+}
+
+Config
+CachePolicy::getConfig() const
+{
+    Config conf( "cache_policy" );
+    conf.addIfSet( "usage", "read_write", _usage, USAGE_READ_WRITE );
+    conf.addIfSet( "usage", "read_only",  _usage, USAGE_READ_ONLY );
+    conf.addIfSet( "usage", "cache_only", _usage, USAGE_CACHE_ONLY );
+    conf.addIfSet( "usage", "no_cache",   _usage, USAGE_NO_CACHE );
+    conf.addIfSet( "max_age", _maxAge );
+    return conf;
+}
diff --git a/src/osgEarth/CacheSeed b/src/osgEarth/CacheSeed
index b64b260..99d978a 100644
--- a/src/osgEarth/CacheSeed
+++ b/src/osgEarth/CacheSeed
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,10 +33,10 @@ namespace osgEarth
     class OSGEARTH_EXPORT CacheSeed
     {
     public:
-        CacheSeed():
-          _minLevel(0),
-          _maxLevel(12),
-          _bounds(-180, -90, 180, 90) { }
+        CacheSeed();
+
+        /** dtor */
+        virtual ~CacheSeed() { }
 
         /**
         * Sets the minimum level to seed to
@@ -59,19 +59,9 @@ namespace osgEarth
         const unsigned int getMaxLevel() const {return _maxLevel;}
 
         /**
-        * Gets the bounds to seed in
-        */
-        const Bounds& getBounds() const { return _bounds; }
-
-        /**
-        * Sets the bounds to seed in
-        */
-        void setBounds(const Bounds& bounds) { _bounds = bounds; }
-
-        /**
-        * Sets the bounds to seed in
+        *Adds an extent to cache
         */
-        void setBounds(const double& minLon, const double& minLat, const double& maxLon, const double& maxLat) { _bounds = Bounds(minLon, minLat, maxLon, maxLat); }
+        void addExtent( const GeoExtent& value );
 
         /**
         * Set progress callback for reporting which tiles are seeded
@@ -84,13 +74,21 @@ namespace osgEarth
         void seed( Map* map );
 
     protected:
+
+        void incrementCompleted( unsigned int total ) const;
+
         unsigned int _minLevel;
         unsigned int _maxLevel;
-        Bounds _bounds;
+
+        unsigned int _total;
+        unsigned int _completed;
+
         osg::ref_ptr<ProgressCallback> _progress;
 
         void processKey( const MapFrame& mapf, const TileKey& key ) const;
-        void cacheTile( const MapFrame& mapf, const TileKey& key ) const;
+        bool cacheTile( const MapFrame& mapf, const TileKey& key ) const;
+
+        std::vector< GeoExtent > _extents;
     };
 }
 
diff --git a/src/osgEarth/CacheSeed.cpp b/src/osgEarth/CacheSeed.cpp
index 8a5d49f..b3d2759 100644
--- a/src/osgEarth/CacheSeed.cpp
+++ b/src/osgEarth/CacheSeed.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -18,38 +18,39 @@
 */
 
 #include <osgEarth/CacheSeed>
-#include <osgEarth/Caching>
 #include <OpenThreads/ScopedLock>
 #include <limits.h>
 
+#define LC "[CacheSeed] "
+
 using namespace osgEarth;
 using namespace OpenThreads;
 
+CacheSeed::CacheSeed():
+          _minLevel(0),
+          _maxLevel(12),          
+          _total(0),
+          _completed(0)
+          {
+          }
+
 void CacheSeed::seed( Map* map )
 {
-    //Threading::ScopedReadLock lock( map->getMapDataMutex() );
-
-    if ( !map->getMapOptions().cache().isSet() )
-    //if (!map->getCache())
+    if ( !map->getCache() )
     {
-        OE_WARN << "Warning:  Map does not have a cache defined, please define a cache." << std::endl;
+        OE_WARN << LC << "Warning: No cache defined; aborting." << std::endl;
         return;
     }
 
-//    osg::ref_ptr<MapEngine> engine = new MapEngine(); //map->createMapEngine();
-
     std::vector<TileKey> keys;
     map->getProfile()->getRootKeys(keys);
 
-    //Set the default bounds to the entire profile if the user didn't override the bounds
-    if (_bounds.xMin() == 0 && _bounds.yMin() == 0 &&
-        _bounds.xMax() == 0 && _bounds.yMax() == 0)
+    //Add the map's entire extent if we don't have one specified.
+    if (_extents.empty())
     {
-        const GeoExtent& mapEx =  map->getProfile()->getExtent();
-        _bounds = Bounds( mapEx.xMin(), mapEx.yMin(), mapEx.xMax(), mapEx.yMax() );
+        addExtent( map->getProfile()->getExtent() );
     }
 
-
     bool hasCaches = false;
     int src_min_level = INT_MAX;
     unsigned int src_max_level = 0;
@@ -60,31 +61,31 @@ void CacheSeed::seed( Map* map )
     for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); i++ )
     {
 		ImageLayer* layer = i->get();
-        TileSource* src = i->get()->getTileSource();
+        TileSource* src   = layer->getTileSource();
+
         const ImageLayerOptions& opt = layer->getImageLayerOptions();
 
-        if ( opt.cacheOnly() == true )
+        if ( layer->isCacheOnly() )
         {
-            OE_WARN << "Warning:  Cannot seed b/c Layer \"" << layer->getName() << "\" is cache only." << std::endl;
-            return;
+            OE_WARN << LC << "Warning: Layer \"" << layer->getName() << "\" is set to cache-only; skipping." << std::endl;
         }
-        else if (!src)
+        else if ( !src )
         {
-            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" could not create TileSource." << std::endl;
+            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" could not create TileSource; skipping." << std::endl;
         }
-        else if ( !src->supportsPersistentCaching() )
+        else if ( src->getCachePolicyHint() == CachePolicy::NO_CACHE )
         {
-            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" does not support seeding." << std::endl;
+            OE_WARN << LC << "Warning: Layer \"" << layer->getName() << "\" does not support seeding; skipping." << std::endl;
         }
         else if ( !layer->getCache() )
         {
-            OE_NOTICE << "Notice: Layer \"" << layer->getName() << "\" has no persistent cache defined; skipping." << std::endl;
+            OE_WARN << LC << "Notice: Layer \"" << layer->getName() << "\" has no cache defined; skipping." << std::endl;
         }
         else
         {
             hasCaches = true;
 
-			if (opt.minLevel().isSet() && opt.minLevel().get() < src_min_level)
+			if (opt.minLevel().isSet() && (int)opt.minLevel().get() < src_min_level)
                 src_min_level = opt.minLevel().get();
 			if (opt.maxLevel().isSet() && opt.maxLevel().get() > src_max_level)
                 src_max_level = opt.maxLevel().get();
@@ -94,40 +95,39 @@ void CacheSeed::seed( Map* map )
     for( ElevationLayerVector::const_iterator i = mapf.elevationLayers().begin(); i != mapf.elevationLayers().end(); i++ )
     {
 		ElevationLayer* layer = i->get();
-        TileSource* src = i->get()->getTileSource();
+        TileSource*     src   = layer->getTileSource();
         const ElevationLayerOptions& opt = layer->getElevationLayerOptions();
 
-        if ( opt.cacheOnly().get())
+        if ( layer->isCacheOnly() )
         {
-            OE_WARN << "Warning:  Cannot seed b/c Layer \"" << layer->getName() << "\" is cache only." << std::endl;
-            return;
+            OE_WARN << LC << "Warning: Layer \"" << layer->getName() << "\" is set to cache-only; skipping." << std::endl;
         }
         else if (!src)
         {
-            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" could not create TileSource." << std::endl;
+            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" could not create TileSource; skipping." << std::endl;
         }
-        else if ( !src->supportsPersistentCaching() )
+        else if ( src->getCachePolicyHint() == CachePolicy::NO_CACHE )
         {
-            OE_WARN << "Warning: Layer \"" << layer->getName() << "\" does not support seeding." << std::endl;
+            OE_WARN << LC << "Warning: Layer \"" << layer->getName() << "\" does not support seeding; skipping." << std::endl;
         }
         else if ( !layer->getCache() )
         {
-            OE_NOTICE << "Notice: Layer \"" << src->getName() << "\" has no persistent cache defined; skipping." << std::endl;
+            OE_WARN << LC << "Notice: Layer \"" << layer->getName() << "\" has no cache defined; skipping." << std::endl;
         }
         else
         {
             hasCaches = true;
 
-			if (opt.minLevel().isSet() && opt.minLevel().get() < src_min_level)
+			if (opt.minLevel().isSet() && (int)opt.minLevel().get() < src_min_level)
                 src_min_level = opt.minLevel().get();
 			if (opt.maxLevel().isSet() && opt.maxLevel().get() > src_max_level)
                 src_max_level = opt.maxLevel().get();
 		}
     }
 
-    if (!hasCaches)
+    if ( !hasCaches )
     {
-        OE_NOTICE << "There are either no caches defined in the map, or no sources to cache. Exiting." << std::endl;
+        OE_WARN << LC << "There are either no caches defined in the map, or no sources to cache; aborting." << std::endl;
         return;
     }
 
@@ -136,14 +136,145 @@ void CacheSeed::seed( Map* map )
         _maxLevel = src_max_level;
     }
 
-    OE_NOTICE << "Maximum cache level will be " << _maxLevel << std::endl;
+    OE_NOTICE << LC << "Maximum cache level will be " << _maxLevel << std::endl;
+
+    osg::Timer_t startTime = osg::Timer::instance()->tick();
+    //Estimate the number of tiles
+    _total = 0;    
+
+    for (unsigned int level = _minLevel; level <= _maxLevel; level++)
+    {
+        double coverageRatio = 0.0;
+
+        if (_extents.empty())
+        {
+            unsigned int wide, high;
+            map->getProfile()->getNumTiles( level, wide, high );
+            _total += (wide * high);
+        }
+        else
+        {
+            for (std::vector< GeoExtent >::const_iterator itr = _extents.begin(); itr != _extents.end(); itr++)
+            {
+                const GeoExtent& extent = *itr;
+                double boundsArea = extent.area();
+
+                TileKey ll = map->getProfile()->createTileKey(extent.xMin(), extent.yMin(), level);
+                TileKey ur = map->getProfile()->createTileKey(extent.xMax(), extent.yMax(), level);
+
+                int tilesWide = ur.getTileX() - ll.getTileX() + 1;
+                int tilesHigh = ll.getTileY() - ur.getTileY() + 1;
+                int tilesAtLevel = tilesWide * tilesHigh;
+                //OE_NOTICE << "Tiles at level " << level << "=" << tilesAtLevel << std::endl;
+
+                bool hasData = false;
+
+                for (ImageLayerVector::const_iterator itr = mapf.imageLayers().begin(); itr != mapf.imageLayers().end(); itr++)
+                {
+                    TileSource* src = itr->get()->getTileSource();
+                    if (src)
+                    {
+                        if (src->hasDataAtLOD( level ))
+                        {
+                            //Compute the percent coverage of this dataset on the current extent
+                            if (src->getDataExtents().size() > 0)
+                            {
+                                double cov = 0.0;
+                                for (unsigned int j = 0; j < src->getDataExtents().size(); j++)
+                                {
+                                    GeoExtent b = src->getDataExtents()[j].transform( extent.getSRS());
+                                    GeoExtent intersection = b.intersectionSameSRS( extent );
+                                    if (intersection.isValid())
+                                    {
+                                        double coverage = intersection.area() / boundsArea;
+                                        cov += coverage; //Assumes the extents aren't overlapping                            
+                                    }
+                                }
+                                if (coverageRatio < cov) coverageRatio = cov;
+                            }
+                            else
+                            {
+                                //We have no way of knowing how much coverage we have
+                                coverageRatio = 1.0;
+                            }
+                            hasData = true;
+                            break;
+                        }
+                    }
+                }
+
+                for (ElevationLayerVector::const_iterator itr = mapf.elevationLayers().begin(); itr != mapf.elevationLayers().end(); itr++)
+                {
+                    TileSource* src = itr->get()->getTileSource();
+                    if (src)
+                    {
+                        if (src->hasDataAtLOD( level ))
+                        {
+                            //Compute the percent coverage of this dataset on the current extent
+                            if (src->getDataExtents().size() > 0)
+                            {
+                                double cov = 0.0;
+                                for (unsigned int j = 0; j < src->getDataExtents().size(); j++)
+                                {
+                                    GeoExtent b = src->getDataExtents()[j].transform( extent.getSRS());
+                                    GeoExtent intersection = b.intersectionSameSRS( extent );
+                                    if (intersection.isValid())
+                                    {
+                                        double coverage = intersection.area() / boundsArea;
+                                        cov += coverage; //Assumes the extents aren't overlapping                            
+                                    }
+                                }
+                                if (coverageRatio < cov) coverageRatio = cov;
+                            }
+                            else
+                            {
+                                //We have no way of knowing how much coverage we have
+                                coverageRatio = 1.0;
+                            }
+                            hasData = true;
+                            break;
+                        }
+                    }
+                }
+
+                //Adjust the coverage ratio by a fudge factor to try to keep it from being too small,
+                //tiles are either processed or not and the ratio is exact so will cover tiles partially
+                //and potentially be too small
+                double adjust = 4.0;
+                coverageRatio = osg::clampBetween(coverageRatio * adjust, 0.0, 1.0);
+
+                //OE_NOTICE << level <<  " CoverageRatio = " << coverageRatio << std::endl;
+
+                if (hasData)
+                {
+                    _total += (int)ceil(coverageRatio * (double)tilesAtLevel );
+                }
+            }
+        }
+    }
+
+    //Adjust the # of tiles again to be bigger than computed to avoid giving false hope
+    _total *= 2;
+    osg::Timer_t endTime = osg::Timer::instance()->tick();
+    //OE_NOTICE << "Counted tiles in " << osg::Timer::instance()->delta_s(startTime, endTime) << " s" << std::endl;
+
+    OE_INFO << "Processing ~" << _total << " tiles" << std::endl;
 
     for (unsigned int i = 0; i < keys.size(); ++i)
     {
         processKey( mapf, keys[i] );
     }
+
+    _total = _completed;
+
+    if ( _progress.valid()) _progress->reportProgress(_completed, _total, "Finished");
 }
 
+void CacheSeed::incrementCompleted( unsigned int total ) const
+{    
+    CacheSeed* nonconst_this = const_cast<CacheSeed*>(this);
+    nonconst_this->_completed += total;
+}
 
 void
 CacheSeed::processKey(const MapFrame& mapf, const TileKey& key ) const
@@ -152,30 +283,50 @@ CacheSeed::processKey(const MapFrame& mapf, const TileKey& key ) const
     key.getTileXY(x, y);
     lod = key.getLevelOfDetail();
 
-//	osg::ref_ptr<osgEarth::VersionedTerrain> terrain = new osgEarth::VersionedTerrain( map, engine );
+    bool gotData = true;
 
     if ( _minLevel <= lod && _maxLevel >= lod )
     {
-//        OE_NOTICE << "Caching tile = " << key.str() << std::endl; //<< lod << " (" << x << ", " << y << ") " << std::endl;
-	if ( _progress.valid() && _progress->reportProgress(0, 0, "Caching tile: " + key.str()) )
-	    return; // Task has been cancelled by user
+        gotData = cacheTile( mapf, key );
+        if (gotData)
+        {
+        incrementCompleted( 1 );
+        }
 
-        cacheTile( mapf, key );
-  //      bool validData;
-		//osg::ref_ptr<osg::Node> node = engine->createTile( map, terrain.get(), key, true, false, false, validData );        
+    	if ( _progress.valid() && _progress->isCanceled() )
+	        return; // Task has been cancelled by user
+
+        if ( _progress.valid() && gotData && _progress->reportProgress(_completed, _total, std::string("Cached tile: ") + key.str()) )
+            return; // Canceled
     }
 
-    if (lod <= _maxLevel)
+    if ( gotData && lod <= _maxLevel )
     {
         TileKey k0 = key.createChildKey(0);
         TileKey k1 = key.createChildKey(1);
         TileKey k2 = key.createChildKey(2);
-        TileKey k3 = key.createChildKey(3);        
+        TileKey k3 = key.createChildKey(3); 
+
+        bool intersectsKey = false;
+        if (_extents.empty()) intersectsKey = true;
+        else
+        {
+            for (unsigned int i = 0; i < _extents.size(); ++i)
+            {
+                if (_extents[i].intersects( k0.getExtent() ) ||
+                    _extents[i].intersects( k1.getExtent() ) ||
+                    _extents[i].intersects( k2.getExtent() ) ||
+                    _extents[i].intersects( k3.getExtent() ))
+                {
+                    intersectsKey = true;
+                }
+
+            }
+        }
 
         //Check to see if the bounds intersects ANY of the tile's children.  If it does, then process all of the children
         //for this level
-        if (_bounds.intersects( k0.getExtent().bounds() ) || _bounds.intersects(k1.getExtent().bounds()) ||
-            _bounds.intersects( k2.getExtent().bounds() ) || _bounds.intersects(k3.getExtent().bounds()) )
+        if (intersectsKey)
         {
             processKey(mapf, k0);
             processKey(mapf, k1);
@@ -185,15 +336,19 @@ CacheSeed::processKey(const MapFrame& mapf, const TileKey& key ) const
     }
 }
 
-void
+bool
 CacheSeed::cacheTile(const MapFrame& mapf, const TileKey& key ) const
 {
+    bool gotData = false;
+
     for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); i++ )
     {
         ImageLayer* layer = i->get();
         if ( layer->isKeyValid( key ) )
         {
             GeoImage image = layer->createImage( key );
+            if ( image.valid() )
+                gotData = true;
         }
     }
 
@@ -201,5 +356,15 @@ CacheSeed::cacheTile(const MapFrame& mapf, const TileKey& key ) const
     {
         osg::ref_ptr<osg::HeightField> hf;
         mapf.getHeightField( key, false, hf );
+        if ( hf.valid() )
+            gotData = true;
     }
+
+    return gotData;
+}
+
+void
+CacheSeed::addExtent( const GeoExtent& value)
+{
+    _extents.push_back( value );
 }
diff --git a/src/osgEarth/Caching b/src/osgEarth/Caching
deleted file mode 100644
index 99a11ed..0000000
--- a/src/osgEarth/Caching
+++ /dev/null
@@ -1,500 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#ifndef OSGEARTH_CACHING_H
-#define OSGEARTH_CACHING_H 1
-
-#include <osgEarth/Common>
-#include <osgEarth/Config>
-#include <osgEarth/TMS>
-#include <osgEarth/TileKey>
-
-#include <osg/Referenced>
-#include <osg/Object>
-#include <osg/Image>
-#include <osg/Shape>
-#include <osg/Timer>
-#include <osgDB/ReadFile>
-
-#include <OpenThreads/ReadWriteMutex>
-
-#include <string>
-#include <list>
-#include <map>
-
-namespace osgEarth
-{
-    /**
-     * Base class for Cache implementation options.
-     */
-    class CacheOptions : public DriverConfigOptions // no export (header only)
-    {
-    public:
-        CacheOptions( const ConfigOptions& options =ConfigOptions() )
-            : DriverConfigOptions( options ),
-              _cacheOnly( false )
-        { 
-            fromConfig( _conf ); 
-        }
-
-        /** Whether to run exclusively off the cache (and not fetch files from tile sources) */
-        optional<bool>& cacheOnly() { return _cacheOnly; }
-        const optional<bool>& cacheOnly() const { return _cacheOnly; }
-
-    public:
-        virtual Config getConfig() const {
-            Config conf = ConfigOptions::getConfig();
-            conf.updateIfSet( "cache_only", _cacheOnly );
-            return conf;
-        }
-        virtual void mergeConfig( const Config& conf ) {
-            ConfigOptions::mergeConfig( conf );            
-            fromConfig( conf );
-        }
-
-        /** INTERNAL FUNCTION
-            TODO: this most definitely should not be in the Options structure */
-        void setReferenceURI(const std::string& referenceURI) { _referenceURI = referenceURI; }
-        const std::string& getReferenceURI() const { return _referenceURI; }
-
-    private:
-        void fromConfig( const Config& conf ) {
-            conf.getIfSet( "cache_only", _cacheOnly );
-        }
-
-        optional<bool> _cacheOnly;
-        std::string _referenceURI;
-    };
-
-    //----------------------------------------------------------------------
-
-    /**
-     * Options class for any cache that caches tiles as individual files on disk.
-     */
-    class DiskCacheOptions : public CacheOptions
-    {
-    public:
-        DiskCacheOptions( const ConfigOptions& options =ConfigOptions() )
-            : CacheOptions( options ),
-              _writeWorldFiles( false ),
-			  _imageWriterPluginOptions("")
-        {
-            fromConfig( _conf );
-        }
-
-        /** The folder path in which to store the cache data */
-        void setPath( const std::string& value ) { _path = value; }
-        const std::string& path() const { return _path; }
-
-        /** Whether to write out "world" files alongside the cached tiles */
-        optional<bool>& writeWorldFiles() { return _writeWorldFiles; }
-        const optional<bool>& writeWorldFiles() const { return _writeWorldFiles; }
-
-        /** Options string to pass to an osgDB image plugin */
-        optional<std::string>& imageWriterPluginOptions() { return _imageWriterPluginOptions; }
-        const optional<std::string>& imageWriterPluginOptions() const { return _imageWriterPluginOptions; }
-
-    public:
-        virtual Config getConfig() const {
-            Config conf = CacheOptions::getConfig();
-            conf.update("path", _path);
-            conf.updateIfSet("write_world_files", _writeWorldFiles);
-            conf.updateIfSet("image_writer_plugin_options", _imageWriterPluginOptions);
-            return conf;
-        }
-        virtual void mergeConfig( const Config& conf ) {
-            CacheOptions::mergeConfig( conf );
-            fromConfig( conf );
-        }
-
-    private:
-        void fromConfig( const Config& conf ) {
-            _path = conf.value("path");
-            conf.getIfSet("write_world_files", _writeWorldFiles);
-            conf.getIfSet("image_writer_plugin_options", _imageWriterPluginOptions);
-			
-        }
-
-        std::string           _path;
-        optional<bool>        _writeWorldFiles;
-		optional<std::string> _imageWriterPluginOptions;
-    };
-
-    //----------------------------------------------------------------------
-
-    /**
-     * Options for a TMS-style disk cache. The cache is stored on disk in a file hierarchy
-     * identical to that in the TMS specification:
-     * http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification
-     */
-    class TMSCacheOptions : public DiskCacheOptions // no export (header only)
-    {
-    public:
-        TMSCacheOptions( const ConfigOptions& options =ConfigOptions() )
-            : DiskCacheOptions( options ),
-              _invertY( false )
-        {
-            setDriver("tms");
-            fromConfig( _conf );
-        }
-
-        /** Wheher to invert the Y tile indicies ("google type") */
-        optional<bool>& invertY() { return _invertY; }
-        const optional<bool>& invertY() const { return _invertY; }
-
-    public:
-        virtual Config getConfig() const {
-            Config conf = DiskCacheOptions::getConfig();
-            conf.updateIfSet("invert_y", _invertY);
-            return conf;
-        }
-        virtual void mergeConfig( const Config& conf ) {
-            DiskCacheOptions::mergeConfig( conf );
-            fromConfig( conf );
-        }
-
-    private:
-        void fromConfig( const Config& conf ) {
-            conf.getIfSet("invert_y", _invertY);
-        }
-
-        optional<bool> _invertY;
-    };
-
-  //----------------------------------------------------------------------
-
-  /**
-   * Cache specification is a pairing of cache ID and cache format.
-   */
-    struct CacheSpec
-    {
-        CacheSpec() { }
-        CacheSpec( const std::string& cacheId, const std::string& format, const std::string& name ="")
-            :  _cacheId( cacheId ), _format(format), _name(name) { }
-
-        bool empty() const { return _cacheId.empty(); }
-
-        const std::string& cacheId() const { return _cacheId; }
-        const std::string& format() const { return _format; }
-        const std::string& name() const { return _name; }
-
-    private:
-        std::string _cacheId;
-        std::string _format;
-        std::string _name; // this is only here so you can see what layer the cache spec is referencing.
-    };
-
-  //----------------------------------------------------------------------
-
-  /**
-   * A Cache is an object that stores and retrieves image or heightfield rasters.
-   * This is the base class for all such implementations.
-   */
-  class OSGEARTH_EXPORT Cache : public osg::Object
-  {
-  public:
-    /**
-    * Gets the cached image for the given TileKey
-    */
-    virtual bool getImage( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Image>& out_image ) =0;
-
-    /**
-    * Sets the cached image for the given TileKey
-    */
-    virtual void setImage( const TileKey& key, const CacheSpec& spec, const osg::Image* image ) = 0;
-
-    /**
-    * Gets the cached heightfield for the given TileKey
-    */
-    virtual bool getHeightField( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::HeightField>& out_hf );
-
-    /**
-    * Sets the cached heightfield for the given TileKey
-    */
-    virtual void setHeightField( const TileKey& key, const CacheSpec& spec, const osg::HeightField* hf );
-
-    /**
-    * Gets the current MapConfig filename.  This is used for getting relative paths to the MapConfig.
-    */
-    virtual const std::string& getReferenceURI() { return _refURI; }
-
-    /**
-    * Sets the current MapConfig filename.
-    */
-    virtual void setReferenceURI( const std::string& value ) { _refURI = value; }
-
-    /**
-    * Gets whether the given TileKey is cached or not
-    */
-    virtual bool isCached( const TileKey& key, const CacheSpec& spec) const { return false; }
-
-    /**
-    * Store the TileMap for the given profile.
-    */
-    virtual void storeProperties( const CacheSpec& spec, const Profile* profile, unsigned int tileSize ) 
-        { }
-
-    /**
-    * Loads the TileMap for the given cacheId.
-    */
-    virtual bool loadProperties( 
-        const std::string&           cacheId, 
-        CacheSpec&                   out_spec, 
-        osg::ref_ptr<const Profile>& out_profile,
-        unsigned int&                out_tileSize ) { return false; }
-
-    /**
-     * Compact the cache, if supported by the underlying implementation.
-     * You can optionally specify that the compaction operation run in 
-     * a background thread if supported.
-     *
-     * This method will return false if the implementation does not support
-     * compaction.
-     */
-    virtual bool compact( bool async =true ) { return false; }
-
-    /**
-     * Delete old entries from the cache. The timestamp is UTC, second since epoch.
-     * You can optionally control whether the purge operation should run in the
-     * background (async=true) if supported.
-     *
-     * This method will return false if the implementation does not support 
-     * the operation.
-     */
-    virtual bool purge(
-        const std::string& cacheId,
-        int olderThanTimeStamp =0L,
-        bool async =true ) { return false; }
-
-    const CacheOptions& getCacheOptions() const { return _options; }
-
-  public:
-      Cache( const CacheOptions& options =CacheOptions() );
-      Cache( const Cache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
-
-  protected:
-      CacheOptions _options;
-      std::string _refURI;
-  };
-
-  //----------------------------------------------------------------------
-
-  /**
-   * In-memory tile cache.
-   */
-  class OSGEARTH_EXPORT MemCache : public Cache
-  {
-  public:
-    MemCache( int maxTilesInCache =16 );
-    MemCache( const MemCache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
-    META_Object(osgEarth,MemCache);
-
-    /**
-     * Gets the maximum number of tiles to keep in the cache
-     */
-    unsigned int getMaxNumTilesInCache() const;
-
-    /**
-     * Sets the maximum number of tiles to keep in the cache
-     */
-    void setMaxNumTilesInCache(unsigned int max);
-
-    /**
-     * Gets whether the given TileKey is cached or not
-     */
-    virtual bool isCached( const TileKey& key, const CacheSpec& spec ) const;
-
-    /**
-     * Gets the cached image for the given TileKey
-     */
-    virtual bool getImage( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Image>& out_image );
-
-    /**
-     * Sets the cached image for the given TileKey
-     */
-    virtual void setImage( const TileKey& key, const CacheSpec& spec, const osg::Image* image );
-
-    /**
-     * Gets the cached heightfield for the given TileKey
-     */
-    virtual bool getHeightField( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::HeightField>& out_hf );
-
-    /**
-     * Sets the cached heightfield for the given TileKey
-     */
-    virtual void setHeightField( const TileKey& key, const CacheSpec& spec, const osg::HeightField* hf );
-
-    /** Delete entries from the cache. */
-    virtual bool purge( const std::string& cacheId, int olderThan, bool async );
-
-  protected:
-    /**
-     * Gets the cached object for the given TileKey
-     */
-    bool getObject( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Object>& out_result );
-
-    /**
-     * Sets the cached object for the given TileKey
-     */
-    void setObject( const TileKey& key, const CacheSpec& spec, const osg::Object* image );
-
-    struct CachedObject
-    {
-      std::string _key;
-      osg::ref_ptr<const osg::Object> _object;
-    };
-
-    typedef std::list<CachedObject> ObjectList;
-    ObjectList _objects;
-
-    typedef std::map<std::string,ObjectList::iterator> KeyToIteratorMap;
-    KeyToIteratorMap _keyToIterMap;
-
-    unsigned int _maxNumTilesInCache;
-    OpenThreads::Mutex _mutex;
-
-  };
-
-  /**
-   * Base class for any cache that stores tile files to disk
-   */
-  class OSGEARTH_EXPORT DiskCache : public Cache
-  {
-  public:
-    DiskCache( const DiskCacheOptions& options =DiskCacheOptions() );
-
-    DiskCache( const DiskCache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
-
-    META_Object(osgEarth,DiskCache);
-
-    /**
-    * Gets the path of this DiskCache
-    */
-    std::string getPath() const;
-
-    /**
-    * Gets whether the given TileKey is cached or not
-    */
-    virtual bool isCached( const TileKey& key, const CacheSpec& spec ) const;
-
-    /**
-    * Gets the filename to cache to for the given TileKey
-    */
-    virtual std::string getFilename( const TileKey& key, const CacheSpec& spec ) const;
-
-    /**
-    * Gets the cached image for the given TileKey
-    */
-    virtual bool getImage( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Image>& out_image );
-
-    /**
-    * Sets the cached image for the given TileKey
-    */
-    virtual void setImage( const TileKey& key, const CacheSpec& spec, const osg::Image* image );
-
-    /**
-    * Store the TileMap for the given profile.
-    */
-    virtual void storeProperties( const CacheSpec& spec, const Profile* profile, unsigned int tileSize );
-
-    /**
-    * Loads the TileMap for the given layer.
-    */
-    virtual bool loadProperties( 
-        const std::string&           cacheId, 
-        CacheSpec&                   out_spec, 
-        osg::ref_ptr<const Profile>& out_profile,
-        unsigned int&                out_tileSize );
-
-
-  protected:
-    std::string getTMSPath(const std::string& cacheId) const;
-
-    struct LayerProperties
-    {
-      std::string _format;
-      unsigned int _tile_size;
-      osg::ref_ptr< const Profile > _profile;
-    };
-
-    typedef std::map< std::string, LayerProperties > LayerPropertiesCache;
-    LayerPropertiesCache _layerPropertiesCache;
-    bool        _writeWorldFilesOverride;     
-
-  private:
-      DiskCacheOptions _options;
-  };
-
-  /**
-   * Disk-based cache that stores image tiles according the the OSGeo TMS specification.
-   * TODO: move this imlpementation into a proper driver plugin
-   */
-  class OSGEARTH_EXPORT TMSCache : public DiskCache
-  {
-  public:
-    TMSCache(const TMSCacheOptions& options =TMSCacheOptions() );
-
-    TMSCache(const TMSCache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL);
-    META_Object(osgEarth,TMSCache);
-
-    /**
-    * Gets whether or not to invert the y tile index
-    */
-    const bool& getInvertY() {return _invertY; }
-
-    /**
-    * Sets whether or not to invert the y tile index
-    */
-    void setInvertY(const bool &invertY) {_invertY = invertY;}
-
-    /**
-    * Gets the filename to cache to for the given TileKey
-    */
-    virtual std::string getFilename( const TileKey& key, const CacheSpec& spec ) const;
-
-  private:
-    bool _invertY;
-    TMSCacheOptions _options;
-  };
-
-  //----------------------------------------------------------------------
-
-  /**
-   * Base class for a cache driver plugin.
-   */
-  class OSGEARTH_EXPORT CacheDriver : public osgDB::ReaderWriter
-  {
-  public:
-      const CacheOptions& getCacheOptions( const osgDB::ReaderWriter::Options* options ) const;
-  };
-
-  //----------------------------------------------------------------------
-
-  /** 
-   * Factory class that can load and instantiate a Cache implementation based on the
-   * information in the CacheOptions settings.
-   */
-  class OSGEARTH_EXPORT CacheFactory
-  {
-  public:
-      static Cache* create( const CacheOptions& options);
-  };
-}
-
-#endif // OSGEARTH_CACHING_H
diff --git a/src/osgEarth/Caching.cpp b/src/osgEarth/Caching.cpp
deleted file mode 100644
index 76162d2..0000000
--- a/src/osgEarth/Caching.cpp
+++ /dev/null
@@ -1,557 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <limits.h>
-#include <iomanip>
-
-#include <osgEarth/Caching>
-#include <osgEarth/ImageToHeightFieldConverter>
-#include <osgEarth/FileUtils>
-#include <osgEarth/ImageUtils>
-#include <osgEarth/ThreadingUtils>
-
-#include <osgDB/FileUtils>
-#include <osgDB/FileNameUtils>
-#include <osgDB/ReadFile>
-#include <osgDB/WriteFile>
-
-#include <OpenThreads/ScopedLock>
-
-using namespace osgEarth;
-
-#define LC "[Cache] "
-
-//------------------------------------------------------------------------
-
-Cache::Cache( const CacheOptions& options ) :
-osg::Object( true ),
-_options(options)
-{
-    //NOP
-}
-
-Cache::Cache(const Cache& rhs, const osg::CopyOp& op) :
-osg::Object(rhs),
-_refURI( rhs._refURI )
-{
-    //NOP
-}
-
-bool
-Cache::getHeightField( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::HeightField>& out_hf )
-{
-	//Try to get an image from the cache
-	osg::ref_ptr<const osg::Image> image;
-    if ( getImage( key, spec, image ) )
-	{
-		OE_DEBUG << LC << "Read cached heightfield " << std::endl;
-		ImageToHeightFieldConverter conv;
-		out_hf = conv.convert(image.get());
-        return out_hf.valid();
-	}
-    else return false;
-}
-
-void
-Cache::setHeightField( const TileKey& key, const CacheSpec& spec, const osg::HeightField* hf)
-{
-	ImageToHeightFieldConverter conv;
-	//Take a reference to the returned image so it gets deleted properly
-    osg::ref_ptr<osg::Image> image = conv.convert(hf);
-	setImage( key, spec, image.get() );
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[DiskCache] "
-
-static Threading::ReadWriteMutex s_mutex;
-
-DiskCache::DiskCache( const DiskCacheOptions& options ) :
-Cache( options ),
-_options( options )
-{
-    setName( "tilecache" );
-    _writeWorldFilesOverride = getenv("OSGEARTH_WRITE_WORLD_FILES") != 0L;
-}
-
-DiskCache::DiskCache( const DiskCache& rhs, const osg::CopyOp& op ) :
-Cache( rhs, op ),
-_layerPropertiesCache( rhs._layerPropertiesCache ),
-_writeWorldFilesOverride( rhs._writeWorldFilesOverride ),
-_options( rhs._options )
-{
-    //NOP
-}
-
-bool
-DiskCache::isCached(const osgEarth::TileKey& key, const CacheSpec& spec ) const
-{
-	//Check to see if the file for this key exists
-	std::string filename = getFilename( key, spec );
-    return osgDB::fileExists(filename);
-}
-
-std::string
-DiskCache::getPath() const
-{
-    if ( _options.path().empty() || _refURI.empty() )
-        return _options.path();
-    else
-    {
-        if (osgDB::containsServerAddress( _refURI )) return _options.path();
-        return osgEarth::getFullPath( _refURI, _options.path() );
-    }
-}
-
-std::string
-DiskCache::getFilename(const osgEarth::TileKey& key, const CacheSpec& spec ) const
-{
-	unsigned int level, x, y;
-    level = key.getLevelOfDetail() +1;
-    key.getTileXY( x, y );
-
-    unsigned int numCols, numRows;
-    key.getProfile()->getNumTiles(level, numCols, numRows);
-
-    // need to invert the y-tile index
-    y = numRows - y - 1;
-
-    char buf[2048];
-    sprintf( buf, "%s/%s/%02d/%03d/%03d/%03d/%03d/%03d/%03d.%s",
-        getPath().c_str(),
-        spec.cacheId().c_str(),
-        level,
-        (x / 1000000),
-        (x / 1000) % 1000,
-        (x % 1000),
-        (y / 1000000),
-        (y / 1000) % 1000,
-        (y % 1000),
-        spec.format().c_str());
-
-    return buf;
-}
-
-bool
-DiskCache::getImage( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Image>& out_image )
-{
-	std::string filename = getFilename(key, spec);
-
-    //If the path doesn't contain a zip file, check to see that it actually exists on disk
-    if (!osgEarth::isZipPath(filename))
-    {
-        if (!osgDB::fileExists(filename)) 
-            return false;
-    }
-
-    {
-        Threading::ScopedReadLock lock(s_mutex);
-        out_image = osgDB::readImageFile( filename );
-    }
-
-    return out_image.valid();
-}
-
-/**
-* Sets the cached image for the given TileKey
-*/
-void 
-DiskCache::setImage( const TileKey& key, const CacheSpec& spec, const osg::Image* image)
-{
-	std::string filename = getFilename( key, spec );
-    std::string path = osgDB::getFilePath(filename);
-	std::string extension = spec.format();
-
-	//If the format is empty, see if we can glean an extension from the image filename
-	if (extension.empty())
-	{
-		if (!image->getFileName().empty())
-		{
-			extension = osgDB::getFileExtension( image->getFileName() );
-		}
-	}
-
-	//If the format is STILL empty, just use PNG
-	if (extension.empty())
-	{
-		extension = "png";
-	}
-
-    // serialize cache writes.
-    Threading::ScopedWriteLock lock(s_mutex);
-
-    //If the path doesn't currently exist or we can't create the path, don't cache the file
-    if (!osgDB::fileExists(path) && !osgEarth::isZipPath(path) && !osgDB::makeDirectory(path))
-    {
-        OE_WARN << LC << "Couldn't create path " << path << std::endl;
-    }
-
-    std::string ext = osgDB::getFileExtension(filename);
-
-    if ( _options.writeWorldFiles() == true || _writeWorldFilesOverride )
-    {
-        //Write out the world file along side the image
-        double minx, miny, maxx, maxy;
-        key.getExtent().getBounds(minx, miny, maxx, maxy);
-
-        std::string baseFilename = osgDB::getNameLessExtension(filename);
-
-        /*
-        Determine the correct extension for the file type.  Typically, world file extensions
-        consist of the first letter of the extension, followed by the third, then the letter "w".
-        For instance a jpg file's world file would be a jgw file.
-        */
-        std::string worldFileExt = "wld";
-        if (ext.size() >= 3)
-        {
-            worldFileExt[0] = ext[0];
-            worldFileExt[1] = ext[2];
-            worldFileExt[2] = 'w';
-        }
-        std::string worldFileName = baseFilename + std::string(".") + worldFileExt;
-        std::ofstream worldFile;
-        worldFile.open(worldFileName.c_str());
-
-        double x_units_per_pixel = (maxx - minx) / (double)image->s();
-        double y_units_per_pixel = -(maxy - miny) / (double)image->t();
-        worldFile << std::fixed << std::setprecision(10)
-            //X direction units per pixel
-            << x_units_per_pixel << std::endl
-            //Rotation about the y axis, in our case 0
-            << "0" << std::endl
-            //Rotation about the x axis, in our case 0
-            << "0" << std::endl
-            //Y direction units per pixel, typically negative
-            << y_units_per_pixel << std::endl
-            //X coordinate of the center of the upper left pixel
-            << minx + 0.5 * x_units_per_pixel << std::endl
-            //Y coordinate of the upper left pixel
-            << maxy + 0.5 * y_units_per_pixel;
-        worldFile.close();
-    }
-
-    bool writingJpeg = (ext == "jpg" || ext == "jpeg");
-
-	osg::ref_ptr<osgDB::ReaderWriter::Options> op = new osgDB::ReaderWriter::Options();
-	op->setOptionString(_options.imageWriterPluginOptions().value());
-
-	//If we are trying to write a non RGB image to JPEG, convert it to RGB before we write it
-    if ((image->getPixelFormat() != GL_RGB) && writingJpeg)
-    {
-		//Take a reference so the converted image will be deleted
-		osg::ref_ptr<osg::Image> rgb = ImageUtils::convertToRGB8( image );
-		if (rgb.valid())
-		{
-			osgDB::writeImageFile(*rgb.get(), filename, op.get());
-		}
-    }
-    else
-    {
-        osgDB::writeImageFile(*image, filename, op.get());
-    }
-}
-
-std::string
-DiskCache::getTMSPath(const std::string& cacheId) const
-{
-    return getPath() + std::string("/") + cacheId + std::string("/tms.xml");
-}
-
-void DiskCache::storeProperties(const CacheSpec& spec,
-                                const Profile* profile,
-                                unsigned int tile_size)
-{
-	osg::ref_ptr<TileMap> tileMap = TileMap::create("", profile, spec.format(), tile_size, tile_size);
-    tileMap->setTitle( spec.name() );
-	std::string path = getTMSPath( spec.cacheId() );
-    OE_DEBUG << LC << "Writing TMS file to  " << path << std::endl;
-	TileMapReaderWriter::write( tileMap.get(), path );
-}
-
-bool
-DiskCache::loadProperties(const std::string&           cacheId,
-                          CacheSpec&                   out_spec,
-                          osg::ref_ptr<const Profile>& out_profile,
-                          unsigned int&                out_tileSize)
-{
-	//Try to get it from the cache.
-	LayerPropertiesCache::const_iterator i = _layerPropertiesCache.find(cacheId);
-	if ( i != _layerPropertiesCache.end())
-	{
-        out_spec = CacheSpec(cacheId, i->second._format);
-		out_tileSize = i->second._tile_size;
-        out_profile = i->second._profile.get();
-        return true;
-	}
-
-	osg::ref_ptr<TileMap> tileMap;
-
-	std::string path = getTMSPath( cacheId );
-	OE_INFO << LC << "Metadata file is " << path << std::endl;
-
-	if (osgDB::fileExists( path ) )
-	{
-		osg::ref_ptr<TileMap> tileMap = TileMapReaderWriter::read(path, NULL);
-		if (tileMap.valid())
-		{
-			LayerProperties props;
-			props._format = tileMap->getFormat().getExtension();
-			props._tile_size = tileMap->getFormat().getWidth();
-			props._profile = tileMap->createProfile();
-
-			_layerPropertiesCache[cacheId] = props;
-
-            out_spec = CacheSpec( cacheId, props._format );
-            out_profile = props._profile.get();
-            out_tileSize = props._tile_size;
-            return true;
-		}
-        else
-        {
-            OE_WARN << LC << "Failed to load cache metadata from " << path << std::endl;
-        }
-	}
-	return false;
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[MemCache] "
-
-MemCache::MemCache( int maxSize ):
-_maxNumTilesInCache( maxSize )
-{
-    setName( "mem" );
-}
-
-MemCache::MemCache( const MemCache& rhs, const osg::CopyOp& op ) :
-_maxNumTilesInCache( rhs._maxNumTilesInCache )
-{
-}
-
-unsigned int
-MemCache::getMaxNumTilesInCache() const
-{
-	return _maxNumTilesInCache;
-}
-
-void
-MemCache::setMaxNumTilesInCache(unsigned int max)
-{
-	_maxNumTilesInCache = max;
-}
-
-bool
-MemCache::getImage(const osgEarth::TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Image>& out_image )
-{
-    osg::ref_ptr<const osg::Object> result;
-    if ( getObject(key, spec, result) )
-    {
-        out_image = dynamic_cast<const osg::Image*>( result.get() );
-        return out_image.valid();
-    }
-    else return false;
-}
-
-void
-MemCache::setImage(const osgEarth::TileKey& key, const CacheSpec& spec, const osg::Image* image)
-{
-    setObject( key, spec, ImageUtils::cloneImage(image) );
-}
-
-bool
-MemCache::getHeightField( const TileKey& key,const CacheSpec& spec, osg::ref_ptr<const osg::HeightField>& out_hf )
-{
-    osg::ref_ptr<const osg::Object> result;
-    if ( getObject(key, spec, result) )
-    {
-        out_hf = dynamic_cast<const osg::HeightField*>(result.get());
-        return out_hf.valid();
-    }
-    else return false;
-}
-
-void
-MemCache::setHeightField( const TileKey& key, const CacheSpec& spec, const osg::HeightField* hf)
-{
-    setObject( key, spec, new osg::HeightField(*hf) );
-}
-
-bool
-MemCache::purge( const std::string& cacheId, int olderThan, bool async )
-{
-    //TODO: can this be a ReadWriteLock instead?
-
-    // MemCache does not support timestamps or async, so just clear it out altogether.
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
-
-    // MemCache does not support cacheId...
-    _keyToIterMap.clear();
-    _objects.clear();
-
-    return true;
-}
-
-bool
-MemCache::getObject( const TileKey& key, const CacheSpec& spec, osg::ref_ptr<const osg::Object>& output )
-{
-  OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
-
-  std::string id = key.str() + spec.cacheId();
-  KeyToIteratorMap::iterator itr = _keyToIterMap.find(id);
-  if (itr != _keyToIterMap.end())
-  {
-    CachedObject entry = *itr->second;
-    _objects.erase(itr->second);
-    _objects.push_front(entry);
-    itr->second = _objects.begin();
-    output = itr->second->_object.get();
-    return output.valid();
-  }
-  return false;
-}
-
-void
-MemCache::setObject( const TileKey& key, const CacheSpec& spec, const osg::Object* referenced )
-{
-  OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_mutex);
-
-  std::string id = key.str() + spec.cacheId();
-
-  _objects.push_front(CachedObject());
-  CachedObject& entry = _objects.front();
-
-  //CachedObject entry;
-  entry._object = referenced;
-  entry._key = id;
-  //_objects.push_front(entry);
-
-  _keyToIterMap[id] = _objects.begin();
-
-  if (_objects.size() > _maxNumTilesInCache)
-  {
-      _keyToIterMap.erase( _objects.back()._key );
-      _objects.pop_back();
-    //CachedObject toRemove = _objects.back();
-    //_objects.pop_back();
-    //_keyToIterMap.erase(toRemove._key);
-  }
-}
-
-bool
-MemCache::isCached(const osgEarth::TileKey& key, const CacheSpec& spec) const
-{
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock( const_cast<MemCache*>(this)->_mutex);
-    std::string id = key.str() + spec.cacheId();
-    return _keyToIterMap.find(id) != _keyToIterMap.end();
-	//osg::ref_ptr<osg::Image> image = getImage(key,spec);
-	//return image.valid();
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[TMSCache] "
-
-TMSCache::TMSCache( const TMSCacheOptions& options ) :
-DiskCache( options ),
-_options( options )
-{
-    setName( "tms" );
-}
-
-TMSCache::TMSCache( const TMSCache& rhs, const osg::CopyOp& op ) :
-DiskCache( rhs, op ),
-_options( rhs._options )
-{
-    //nop
-}
-
-std::string
-TMSCache::getFilename( const TileKey& key,const CacheSpec& spec ) const
-{
-	unsigned int x,y;
-    key.getTileXY(x, y);
-
-    unsigned int lod = key.getLevelOfDetail();
-    
-    unsigned int numCols, numRows;
-    key.getProfile()->getNumTiles(lod, numCols, numRows);
-    if ( _options.invertY() == false )
-    {
-        y = numRows - y - 1;
-    }
-
-    std::stringstream buf;
-    buf << getPath() << "/" << spec.cacheId() << "/" << lod << "/" << x << "/" << y << "." << spec.format();
-	std::string bufStr;
-	bufStr = buf.str();
-    return bufStr;
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[CacheFactory] "
-#define CACHE_OPTIONS_TAG "__osgEarth::CacheOptions"
-
-Cache*
-CacheFactory::create( const CacheOptions& options)
-{
-    osg::ref_ptr<Cache> result =0L;
-    OE_INFO << LC << "Initializing cache of type \"" << options.getDriver() << "\"" << std::endl;
-
-    if ( options.getDriver().empty() )
-    {
-        OE_WARN << LC << "ILLEGAL: no driver set in cache options" << std::endl;
-    }
-    else if ( options.getDriver() == "tms" )
-    {
-        result = new TMSCache( options );
-    }
-    else if ( options.getDriver() == "tilecache" )
-    {
-        result = new DiskCache( options );
-    }
-    else // try to load from a plugin
-    {
-        osg::ref_ptr<osgDB::ReaderWriter::Options> rwopt = new osgDB::ReaderWriter::Options();
-        rwopt->setPluginData( CACHE_OPTIONS_TAG, (void*)&options );
-
-        std::string driverExt = ".osgearth_cache_" + options.getDriver();
-        osgDB::ReaderWriter::ReadResult rr = osgDB::readObjectFile( driverExt, rwopt.get() );
-        result = dynamic_cast<Cache*>( rr.getObject() );
-        if ( !result )
-        {
-            OE_WARN << LC << "Failed to load cache plugin for type \"" << options.getDriver() << "\"" << std::endl;
-        }
-    }
-    return result.release();
-}
-
-//------------------------------------------------------------------------
-
-const CacheOptions&
-CacheDriver::getCacheOptions( const osgDB::ReaderWriter::Options* rwopt ) const 
-{
-    return *static_cast<const CacheOptions*>( rwopt->getPluginData( CACHE_OPTIONS_TAG ) );
-}
-
diff --git a/src/osgEarth/Capabilities b/src/osgEarth/Capabilities
index 4693b7b..5e56327 100644
--- a/src/osgEarth/Capabilities
+++ b/src/osgEarth/Capabilities
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -50,6 +50,9 @@ namespace osgEarth
         /** maximum number of openGL lights */
         int getMaxLights() const { return _maxLights; }
 
+        /** bits in depth buffer */
+        int getDepthBufferBits() const { return _depthBits; }
+
         /** whether the GPU supports shaders */
         bool supportsGLSL(float minimumVersion =1.0f) const { 
             return _supportsGLSL && _GLSLversion >= minimumVersion; }
@@ -57,6 +60,15 @@ namespace osgEarth
         /** the GLSL version */
         float getGLSLVersion() const { return _GLSLversion; }
 
+        /** the GPU vendor */
+        const std::string& getVendor() const { return _vendor;}
+
+        /** the GPU renderer */
+        const std::string& getRenderer() const { return _renderer;}
+
+        /** the GPU driver version */
+        const std::string& getVersion() const { return _version;}
+
         /** whether the GPU supports texture arrays */
         bool supportsTextureArrays() const { return _supportsTextureArrays; }
 
@@ -78,9 +90,28 @@ namespace osgEarth
         /** whether the GPU properly supports updating an existing texture with a new mipmapped image */
         bool supportsMipmappedTextureUpdates() const { return _supportsMipmappedTextureUpdates; }
 
-    private:
+        /** whether the GPU supports DEPTH_PACKED_STENCIL buffer */
+        bool supportsDepthPackedStencilBuffer() const { return _supportsDepthPackedStencilBuffer; }
+
+        /** whether the GPU supporst occlusion query */
+        bool supportsOcclusionQuery() const { return _supportsOcclusionQuery; }
+
+        /** whether the GPU supports DrawInstanced rendering */
+        bool supportsDrawInstanced() const { return _supportsDrawInstanced; }
+
+        /** whether the GPU supports Uniform Buffer Objects */
+        bool supportsUniformBufferObjects() const { return _supportsUniformBufferObjects; }
+
+        /** maximum size of a uniform buffer block, in bytes */
+        int getMaxUniformBlockSize() const { return _maxUniformBlockSize; }
+
+
+    protected:
         Capabilities();
 
+        /** dtor */
+        virtual ~Capabilities() { }
+
     private:
         int  _maxFFPTextureUnits;
         int  _maxGPUTextureUnits;
@@ -88,6 +119,7 @@ namespace osgEarth
         int  _maxTextureSize;
         int  _maxFastTextureSize;
         int  _maxLights;
+        int  _depthBits;
         bool _supportsGLSL;
         float _GLSLversion;
         bool _supportsTextureArrays;
@@ -97,6 +129,11 @@ namespace osgEarth
         bool _supportsTwoSidedStencil;
         bool _supportsTexture2DLod;
         bool _supportsMipmappedTextureUpdates;
+        bool _supportsDepthPackedStencilBuffer;
+        bool _supportsOcclusionQuery;
+        bool _supportsDrawInstanced;
+        bool _supportsUniformBufferObjects;
+        int  _maxUniformBlockSize;
         std::string _vendor;
         std::string _renderer;
         std::string _version;
diff --git a/src/osgEarth/Capabilities.cpp b/src/osgEarth/Capabilities.cpp
index a8ad647..fe42b5d 100644
--- a/src/osgEarth/Capabilities.cpp
+++ b/src/osgEarth/Capabilities.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -102,6 +102,7 @@ _maxGPUTextureCoordSets ( 1 ),
 _maxTextureSize         ( 256 ),
 _maxFastTextureSize     ( 256 ),
 _maxLights              ( 1 ),
+_depthBits              ( 0 ),
 _supportsGLSL           ( false ),
 _GLSLversion            ( 1.0f ),
 _supportsTextureArrays  ( false ),
@@ -109,7 +110,12 @@ _supportsMultiTexture   ( false ),
 _supportsStencilWrap    ( true ),
 _supportsTwoSidedStencil( false ),
 _supportsTexture2DLod   ( false ),
-_supportsMipmappedTextureUpdates( false )
+_supportsMipmappedTextureUpdates( false ),
+_supportsDepthPackedStencilBuffer( false ),
+_supportsOcclusionQuery ( false ),
+_supportsDrawInstanced  ( false ),
+_supportsUniformBufferObjects( false ),
+_maxUniformBlockSize    ( 0 )
 {
     // little hack to force the osgViewer library to link so we can create a graphics context
     osgViewerGetVersion();
@@ -146,10 +152,21 @@ _supportsMipmappedTextureUpdates( false )
         OE_INFO << LC << "  Max GPU texture units = " << _maxGPUTextureUnits << std::endl;
 
         glGetIntegerv( GL_MAX_TEXTURE_COORDS_ARB, &_maxGPUTextureCoordSets );
+#if defined(OSG_GLES2_AVAILABLE)
+        int maxVertAttributes = 0;
+        glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, &maxVertAttributes);
+        _maxGPUTextureCoordSets = maxVertAttributes - 5; //-5 for vertex, normal, color, tangent and binormal
+#endif
         OE_INFO << LC << "  Max GPU texture coordinate sets = " << _maxGPUTextureCoordSets << std::endl;
 
-        // Use the texture-proxy method to determine the maximum texture size 
+
+        glGetIntegerv( GL_DEPTH_BITS, &_depthBits );
+        OE_INFO << LC << "  Depth buffer bits = " << _depthBits << std::endl;
+
+        
         glGetIntegerv( GL_MAX_TEXTURE_SIZE, &_maxTextureSize );
+#if !(defined(OSG_GLES1_AVAILABLE) || defined(OSG_GLES2_AVAILABLE))
+        // Use the texture-proxy method to determine the maximum texture size 
         for( int s = _maxTextureSize; s > 2; s >>= 1 )
         {
             glTexImage2D( GL_PROXY_TEXTURE_2D, 0, GL_RGBA8, s, s, 0, GL_RGBA, GL_UNSIGNED_BYTE, 0L );
@@ -161,9 +178,15 @@ _supportsMipmappedTextureUpdates( false )
                 break;
             }
         }
+#endif
         OE_INFO << LC << "  Max texture size = " << _maxTextureSize << std::endl;
 
+        //PORT at tom, what effect will this have?
+#ifdef OSG_GL_FIXED_FUNCTION_AVAILABLE
         glGetIntegerv( GL_MAX_LIGHTS, &_maxLights );
+#else
+        _maxLights = 1;
+#endif
         OE_INFO << LC << "  Max lights = " << _maxLights << std::endl;
 
         _supportsGLSL = GL2->isGlslSupported();
@@ -196,6 +219,22 @@ _supportsMipmappedTextureUpdates( false )
         _supportsTwoSidedStencil = osg::isGLExtensionSupported( id, "GL_EXT_stencil_two_side" );
         OE_INFO << LC << "  2-sided stencils = " << SAYBOOL(_supportsTwoSidedStencil) << std::endl;
 
+        _supportsDepthPackedStencilBuffer = osg::isGLExtensionSupported( id, "GL_EXT_packed_depth_stencil" );
+        OE_INFO << LC << "  depth-packed stencil = " << SAYBOOL(_supportsDepthPackedStencilBuffer) << std::endl;
+
+        _supportsOcclusionQuery = osg::isGLExtensionSupported( id, "GL_ARB_occlusion_query" );
+        OE_INFO << LC << "  occulsion query = " << SAYBOOL(_supportsOcclusionQuery) << std::endl;
+
+        _supportsDrawInstanced = osg::isGLExtensionOrVersionSupported( id, "GL_EXT_draw_instanced", 3.1f );
+        OE_INFO << LC << "  draw instanced = " << SAYBOOL(_supportsDrawInstanced) << std::endl;
+
+        _supportsUniformBufferObjects = osg::isGLExtensionOrVersionSupported( id, "GL_ARB_uniform_buffer_object", 2.0f );
+        OE_INFO << LC << "  uniform buffer objects = " << SAYBOOL(_supportsUniformBufferObjects) << std::endl;
+
+        glGetIntegerv( GL_MAX_UNIFORM_BLOCK_SIZE, &_maxUniformBlockSize );
+        OE_INFO << LC << "  max uniform block size = " << _maxUniformBlockSize << std::endl;
+
+
         //_supportsTexture2DLod = osg::isGLExtensionSupported( id, "GL_ARB_shader_texture_lod" );
         //OE_INFO << LC << "  texture2DLod = " << SAYBOOL(_supportsTexture2DLod) << std::endl;
 
@@ -205,12 +244,17 @@ _supportsMipmappedTextureUpdates( false )
         _supportsMipmappedTextureUpdates = isATI && enableATIworkarounds ? false : true;
         OE_INFO << LC << "  Mipmapped texture updates = " << SAYBOOL(_supportsMipmappedTextureUpdates) << std::endl;
 
+#if 0
         // Intel workarounds:
         bool isIntel = 
             _vendor.find("Intel ")   != std::string::npos ||
-            _vendor.find("Intel(R)") != std::string::npos;
-        _maxFastTextureSize = isIntel ? std::min(2048, _maxTextureSize) : _maxTextureSize;
-        OE_INFO << LC << "Max Fast Texture Size = " << _maxFastTextureSize << std::endl;
+            _vendor.find("Intel(R)") != std::string::npos ||
+            _vendor.compare("Intel") == 0;
+#endif
+
+        _maxFastTextureSize = _maxTextureSize;
+
+        OE_INFO << LC << "  Max Fast Texture Size = " << _maxFastTextureSize << std::endl;
     }
 }
 
diff --git a/src/osgEarth/ColorFilter b/src/osgEarth/ColorFilter
new file mode 100644
index 0000000..e7c8427
--- /dev/null
+++ b/src/osgEarth/ColorFilter
@@ -0,0 +1,136 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_COLOR_FILTER_H
+#define OSGEARTH_COLOR_FILTER_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/Config>
+#include <osg/StateSet>
+#include <vector>
+
+namespace osgEarth
+{
+    /** 
+     * An ColorFilter is an inline shader-based image processing function.
+     * You can install a chain of ColorFilters on an ImageLayer and the shaders
+     * will post-process the layer's color (after texturing but before lighting)
+     * using custom shader code.
+     */
+    class /*header-only*/ ColorFilter : public osg::Referenced
+    {
+    protected:
+        ColorFilter() { }
+
+    public:
+        /**
+         * The name of the function to call in the custom shader. This function
+         * must have the signature:
+         *
+         *    void function(in int slot, inout vec4 color)
+         *
+         * Failure to match this signature will result in a shader compilation error.
+         *
+         * @param uid Unique ID of the object to which this filter is attached.
+         */
+        virtual std::string getEntryPointFunctionName() const =0;
+
+        /**
+         * Installs any uniforms or other bindings required by this filter on the
+         * provided state set.
+         */
+        virtual void install( osg::StateSet* stateSet ) const =0;
+
+        /**
+         * Serializes this object to a Config (optional).
+         */
+        virtual Config getConfig() const { return Config(); }
+    };
+
+
+    /**
+     * A "Chain" of image filters. They are executed in order.
+     */
+    typedef std::vector< osg::ref_ptr<ColorFilter> > ColorFilterChain;
+
+
+    //--------------------------------------------------------------------
+
+
+    /**
+     * Registry for ColorFilter serialization support.
+     */
+    class OSGEARTH_EXPORT ColorFilterRegistry
+    {
+    public:
+        static ColorFilterRegistry* instance();
+
+    public:
+        /**
+         * Creates a chain of color filters (based on order of appearance in the Config)
+         * @return True if it created at least one object.
+         */
+        bool readChain(const Config& conf, ColorFilterChain& out_chain);
+
+        /**
+         * Serializes a filter chain to the provided Config object
+         * @return True if at least one filter was serialized.
+         */
+        bool writeChain(const ColorFilterChain& chain, Config& out_config);
+
+        /**
+         * Adds a ColorFilter type to the registry
+         */
+        void add( const std::string& key, class ColorFilterFactory* factory );
+
+
+    public:
+        ColorFilterRegistry() { }
+        virtual ~ColorFilterRegistry() { }
+
+        // must override this to support serialization:
+        virtual Config getConfig() const { return Config(); }
+
+    private:
+        typedef std::map<std::string, class ColorFilterFactory*> FactoryMap;
+        FactoryMap _factories;
+        ColorFilter* createOne(const Config& conf) const;
+    };
+
+    // internal: interface class for an object that creates a ColorFilter instance from a Config
+    // (used by OSGEARTH_REGISTER_COLORFILTER macro)
+    class ColorFilterFactory {
+    public:
+        virtual ColorFilter* create(const Config& conf) const =0;
+        virtual ~ColorFilterFactory() { }
+    };
+
+    // internal: proxy class used by the registraion macro
+    template<typename T>
+    struct ColorFilterRegistrationProxy : public ColorFilterFactory {
+        ColorFilterRegistrationProxy(const std::string& key) { ColorFilterRegistry::instance()->add(key, this); }
+        ColorFilter* create(const Config& conf) const { return new T(conf); }
+    };
+
+    // Macro used to register new annotation types.
+#define OSGEARTH_REGISTER_COLORFILTER( KEY, CLASSNAME ) \
+    static osgEarth::ColorFilterRegistrationProxy< CLASSNAME > s_osgEarthColorFilterRegistrationProxy##KEY( #KEY )
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_IMAGE_FILTER_H
diff --git a/src/osgEarth/ColorFilter.cpp b/src/osgEarth/ColorFilter.cpp
new file mode 100644
index 0000000..835ea9e
--- /dev/null
+++ b/src/osgEarth/ColorFilter.cpp
@@ -0,0 +1,113 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/ColorFilter>
+#include <osgEarth/ThreadingUtils>
+
+using namespace osgEarth;
+
+ColorFilterRegistry*
+ColorFilterRegistry::instance()
+{
+    // OK to be in the local scope since this gets called at static init time
+    // by the OSGEARTH_REGISTER_COLORFILTER macro
+    static ColorFilterRegistry* s_singleton =0L;
+    static Threading::Mutex     s_singletonMutex;
+
+    if ( !s_singleton )
+    {
+        Threading::ScopedMutexLock lock(s_singletonMutex);
+        if ( !s_singleton )
+        {
+            s_singleton = new ColorFilterRegistry();
+        }
+    }
+    return s_singleton;
+}
+
+bool
+ColorFilterRegistry::readChain(const Config& conf, ColorFilterChain& out_chain)
+{
+    bool createdAtLeastOne = false;
+
+    // first try to parse the top-level config:
+    ColorFilter* top = createOne( conf );
+    if ( top )
+    {
+        out_chain.push_back( top );
+        createdAtLeastOne = true;
+    }
+
+    // failing that, treat it like a chain:
+    else
+    {
+        for( ConfigSet::const_iterator i = conf.children().begin(); i != conf.children().end(); ++i )
+        {
+            ColorFilter* object = createOne( *i );
+            if ( object )
+            {
+                out_chain.push_back( object );
+                createdAtLeastOne = true;
+            }
+        }
+    }
+
+    return createdAtLeastOne;
+}
+
+
+bool
+ColorFilterRegistry::writeChain(const ColorFilterChain& chain, Config& out_config)
+{
+    bool wroteAtLeastOne = false;
+
+    for( ColorFilterChain::const_iterator i = chain.begin(); i != chain.end(); ++i )
+    {
+        Config conf = i->get()->getConfig();
+        if ( !conf.empty() )
+        {
+            out_config.add( conf );
+            wroteAtLeastOne = true;
+        }
+    }
+
+    return wroteAtLeastOne;
+}
+
+
+void
+ColorFilterRegistry::add( const std::string& key, class ColorFilterFactory* factory )
+{
+    if ( factory )
+        _factories[key] = factory;
+}
+
+ColorFilter*
+ColorFilterRegistry::createOne(const Config& conf) const
+{
+    FactoryMap::const_iterator f = _factories.find( conf.key() );
+    if ( f != _factories.end() && f->second != 0L )
+    {
+        ColorFilter* object = f->second->create(conf);
+        if ( object )
+        {
+            return object;
+        }
+    }
+    return 0L;
+}
diff --git a/src/osgEarth/Common b/src/osgEarth/Common
index 85ad856..c9789aa 100644
--- a/src/osgEarth/Common
+++ b/src/osgEarth/Common
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,10 +22,7 @@
 
 #include <osgEarth/Export>
 #include <osgEarth/Notify>
-#include <osg/Referenced>
-#include <osg/ref_ptr>
 #include <osg/Version>
-#include <string>
 
 // define the OSG Version checks for older OSG versions
 
@@ -42,76 +39,6 @@ namespace osgEarth
 {
     // application-wide unique ID.
     typedef int UID;
-    
-    /**
-     * A template for defining "optional" class members. An optional member has a default value
-     * and a flag indicating whether the member is "set".
-     * This is used extensively in osgEarth's ConfigOptions subsystem.
-     */
-    template<typename T> struct optional {
-        optional() : _set(false), _value(T()), _defaultValue(T()) { }
-        optional(T defaultValue) : _set(false), _value(defaultValue), _defaultValue(defaultValue) { }
-        optional(T defaultValue, T value) : _set(true), _value(value), _defaultValue(defaultValue) { }
-        optional(const optional<T>& rhs) { (*this)=rhs; }
-        virtual ~optional() { }
-        optional<T>& operator =(const optional<T>& rhs) { _set=rhs._set; _value=rhs._value; _defaultValue=rhs._defaultValue; return *this; }
-        const T& operator =(const T& value) { _set=true; _value=value; return _value; }
-        bool operator ==(const optional<T>& rhs) const { return _set && rhs._set && _value==rhs._value; }
-        bool operator !=(const optional<T>& rhs) const { return !( (*this)==rhs); }
-        bool operator ==(const T& value) const { return _value==value; }
-        bool operator !=(const T& value) const { return _value!=value; }
-        bool isSetTo(const T& value) const { return _set && _value==value; } // differs from == in that the value must be explicity set
-        bool isSet() const { return _set; }
-        void unset() { _set = false; _value=_defaultValue; }
-
-        //T& get() { return _value; }
-        const T& get() const { return _value; }
-        const T& value() const { return _value; }
-        const T& defaultValue() const { return _defaultValue; }
-
-        // gets a mutable reference, automatically setting
-        T& mutable_value() { _set = true; return _value; }
-
-        void init(T defValue) { _value=defValue; _defaultValue=defValue; unset(); }
-
-        operator const T*() const { return &_value; }
-
-        T* operator ->() { _set=true; return &_value; }
-        const T* operator ->() const { return &_value; }
-
-    private:
-        bool _set;
-        T _value;
-        T _defaultValue;
-        typedef T* optional::*unspecified_bool_type;
-
-    public:
-        operator unspecified_bool_type() const { return 0; }
-    };
-}
-
-// backwards-compat stuff:
-
-#if OSG_VERSION_LESS_THAN( 2, 9, 5 )
-
-#include <osgDB/ReaderWriter>
-namespace osgDB
-{
-    typedef osgDB::ReaderWriter::Options Options;
 }
 
-#endif // OSG_VERSION_LESS_THAN( 2, 9, 5 )
-
-#if OSG_MIN_VERSION_REQUIRED(2,9,8)
-#  include <osgGA/CameraManipulator>
-    namespace osgGA {
-        typedef CameraManipulator MatrixManipulator;
-    };
-#  include <osg/ObserverNodePath>
-#  define USE_OBSERVER_NODE_PATH 1
-#else
-#  include <osgGA/MatrixManipulator>
-#endif
-
-
 #endif // OSGEARTH_COMMON_H
diff --git a/src/osgEarth/CompositeTileSource b/src/osgEarth/CompositeTileSource
index 7cd4111..f5393fd 100644
--- a/src/osgEarth/CompositeTileSource
+++ b/src/osgEarth/CompositeTileSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -33,18 +33,12 @@ namespace osgEarth
     public:
         CompositeTileSourceOptions( const TileSourceOptions& options =TileSourceOptions() );
 
-        /** Add a tile source by using its configuration options */
-        void add( const TileSourceOptions& options );
-
-        /** Add an existing TileSource instance (note: not serializable) */
-        void add( TileSource* source );
+        /** dtor */
+        virtual ~CompositeTileSourceOptions() { }
 
         /** Add a component described by an image layer configuration. */
         void add( const ImageLayerOptions& options );
 
-        /** Add a component consisting of a TileSource instance and an imagelayer configuration. (not serializable) */
-        void add( TileSource* source, const ImageLayerOptions& options );
-
     public:
         virtual Config getConfig() const;
 
@@ -55,9 +49,8 @@ namespace osgEarth
         void fromConfig( const Config& conf );
 
         struct Component {
-            optional<TileSourceOptions>         _tileSourceOptions;
-            optional<osg::ref_ptr<TileSource> > _tileSourceInstance;
-            optional<ImageLayerOptions>         _imageLayerOptions;
+            optional<ImageLayerOptions> _imageLayerOptions;
+            osg::ref_ptr<TileSource>    _tileSourceInstance;
         };
 
         typedef std::vector<Component> ComponentVector;
@@ -78,21 +71,46 @@ namespace osgEarth
         /** Constructs a new composite tile source */
         CompositeTileSource( const TileSourceOptions& options =TileSourceOptions() );
 
+        /** dtor */
+        virtual ~CompositeTileSource() { }
+
+        /**
+         * Adds a pre-existing tile source instance to the composite. 
+         * Note: You can only add tile sources BEFORE the tile source is initialized,
+         * i.e., before you add it to the map.
+         * Returns true upon success; false if the composite tile source is already
+         * initialized.
+         */
+        bool add( TileSource* tileSource );
+        
+        /**
+         * Adds a pre-existing tile source instance to the composite along with
+         * image layer options.
+         * Note: You can only add tile sources BEFORE the tile source is initialized,
+         * i.e., before you add it to the map.
+         * Returns true upon success; false if the composite tile source is already
+         * initialized.
+         */
+        bool add( TileSource* tileSource, const ImageLayerOptions& options );
+
     public: // TileSource overrides
         
-		/** Creates a new image for the given key */
-		virtual osg::Image* createImage( const TileKey& key, ProgressCallback* progress =0 );
+        /** Creates a new image for the given key */
+        virtual osg::Image* createImage( 
+            const TileKey&        key,
+            ProgressCallback*     progress =0 );
 
         /** Whether one of the underlying tile source's is dynamic */
         virtual bool isDynamic() const { return _dynamic; }
         
         /** Initializes the tile source */
-		virtual void initialize( const std::string& referenceURI, const Profile* overrideProfile =0L );
+        Status initialize( const osgDB::Options* dbOptions );
 
     protected:
-        CompositeTileSourceOptions _options;
-        bool _initialized;
-        bool _dynamic;
+        CompositeTileSourceOptions         _options;
+        bool                               _initialized;
+        bool                               _dynamic;
+        osg::ref_ptr<const osgDB::Options> _dbOptions;
        
 
         CompositeTileSourceOptions::ComponentVector _components;
diff --git a/src/osgEarth/CompositeTileSource.cpp b/src/osgEarth/CompositeTileSource.cpp
index 8b401c1..6918b1d 100644
--- a/src/osgEarth/CompositeTileSource.cpp
+++ b/src/osgEarth/CompositeTileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,8 @@
  */
 #include <osgEarth/CompositeTileSource>
 #include <osgEarth/ImageUtils>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Registry>
 #include <osgDB/FileNameUtils>
 
 #define LC "[CompositeTileSource] "
@@ -34,22 +36,6 @@ TileSourceOptions( options )
 }
 
 void
-CompositeTileSourceOptions::add( const TileSourceOptions& options )
-{
-    Component c;
-    c._tileSourceOptions = options;
-    _components.push_back( c );
-}
-
-void
-CompositeTileSourceOptions::add( TileSource* source )
-{
-    Component c;
-    c._tileSourceInstance = source;
-    _components.push_back( c );
-}
-
-void
 CompositeTileSourceOptions::add( const ImageLayerOptions& options )
 {
     Component c;
@@ -57,26 +43,15 @@ CompositeTileSourceOptions::add( const ImageLayerOptions& options )
     _components.push_back( c );
 }
 
-void
-CompositeTileSourceOptions::add( TileSource* source, const ImageLayerOptions& options )
-{
-    Component c;
-    c._tileSourceInstance = source;
-    c._imageLayerOptions = options;
-    _components.push_back( c );
-}
-
 Config 
 CompositeTileSourceOptions::getConfig() const
 {
-    Config conf = TileSourceOptions::getConfig();
+    Config conf = TileSourceOptions::newConfig();
 
     for( ComponentVector::const_iterator i = _components.begin(); i != _components.end(); ++i )
     {
         if ( i->_imageLayerOptions.isSet() )
             conf.add( "image", i->_imageLayerOptions->getConfig() );
-        else if ( i->_tileSourceOptions.isSet() )
-            conf.add( "image", i->_tileSourceOptions->getConfig() );
     }
 
     return conf;
@@ -109,9 +84,29 @@ CompositeTileSourceOptions::fromConfig( const Config& conf )
 
 namespace
 {
-    // some helper types.
-    typedef std::pair< osg::ref_ptr<osg::Image>, float> ImageOpacityPair;
-    typedef std::vector<ImageOpacityPair> ImageMixVector;
+    struct ImageInfo
+    {
+        ImageInfo()
+        {
+            image = 0;
+            opacity = 1;
+            dataInExtents = false;
+        }
+
+        ImageInfo(osg::Image* image, float opacity, bool dataInExtents)
+        {
+            this->image = image;
+            this->opacity = opacity;
+            this->dataInExtents = dataInExtents;
+        }
+
+        bool dataInExtents;
+        float opacity;
+        osg::ref_ptr< osg::Image> image;
+    };
+
+    // some helper types.    
+    typedef std::vector<ImageInfo> ImageMixVector;
 
     // same op that occurs in ImageLayer.cpp ... maybe consilidate
     struct ImageLayerPreCacheOperation : public TileSource::ImageOperation
@@ -128,19 +123,20 @@ namespace
 //-----------------------------------------------------------------------
 
 CompositeTileSource::CompositeTileSource( const TileSourceOptions& options ) :
-_options( options ),
+_options    ( options ),
 _initialized( false ),
-_dynamic( false )
+_dynamic    ( false )
 {
+#if 0
     for(CompositeTileSourceOptions::ComponentVector::iterator i = _options._components.begin(); 
         i != _options._components.end(); )
 
     {
-        if ( i->_imageLayerOptions.isSet() )
-        {
-            if ( i->_imageLayerOptions->driver().isSet() )
-                i->_tileSourceOptions = i->_imageLayerOptions->driver().value();
-        }
+        //if ( i->_imageLayerOptions.isSet() )
+        //{
+        //    if ( i->_imageLayerOptions->driver().isSet() )
+        //        i->_tileSourceOptions = i->_imageLayerOptions->driver().value();
+        //}
 
         if ( i->_tileSourceOptions.isSet() )
         {
@@ -161,10 +157,12 @@ _dynamic( false )
             ++i;
         }
     }
+#endif
 }
 
 osg::Image*
-CompositeTileSource::createImage( const TileKey& key, ProgressCallback* progress )
+CompositeTileSource::createImage(const TileKey&    key,
+                                 ProgressCallback* progress )
 {
     ImageMixVector images;
     images.reserve( _options._components.size() );
@@ -176,10 +174,14 @@ CompositeTileSource::createImage( const TileKey& key, ProgressCallback* progress
         if ( progress && progress->isCanceled() )
             return 0L;
 
-        TileSource* source = i->_tileSourceInstance->get();
+        ImageInfo imageInfo;
+        imageInfo.dataInExtents = false;
+
+
+
+        TileSource* source = i->_tileSourceInstance.get();
         if ( source )
         {
-
             //TODO:  This duplicates code in ImageLayer::isKeyValid.  Maybe should move that to TileSource::isKeyValid instead
             int minLevel = 0;
             int maxLevel = INT_MAX;
@@ -187,154 +189,304 @@ CompositeTileSource::createImage( const TileKey& key, ProgressCallback* progress
             {
                 minLevel = i->_imageLayerOptions->minLevel().value();
             }
-            else if (i->_imageLayerOptions->minLevelResolution().isSet())
+            else if (i->_imageLayerOptions->minResolution().isSet())
             {
-                minLevel = source->getProfile()->getLevelOfDetailForHorizResolution( i->_imageLayerOptions->minLevelResolution().value(), source->getPixelsPerTile());            
+                minLevel = source->getProfile()->getLevelOfDetailForHorizResolution( 
+                    i->_imageLayerOptions->minResolution().value(), 
+                    source->getPixelsPerTile());
             }
 
             if (i->_imageLayerOptions->maxLevel().isSet())
             {
                 maxLevel = i->_imageLayerOptions->maxLevel().value();
             }
-            else if (i->_imageLayerOptions->maxLevelResolution().isSet())
+            else if (i->_imageLayerOptions->maxResolution().isSet())
             {
-                maxLevel = source->getProfile()->getLevelOfDetailForHorizResolution( i->_imageLayerOptions->maxLevelResolution().value(), source->getPixelsPerTile());            
+                maxLevel = source->getProfile()->getLevelOfDetailForHorizResolution( 
+                    i->_imageLayerOptions->maxResolution().value(), 
+                    source->getPixelsPerTile());
             }
 
-
-
-
             // check that this source is within the level bounds:
-            if (minLevel > key.getLevelOfDetail() ||
-                maxLevel < key.getLevelOfDetail() )
+            if (minLevel > (int)key.getLevelOfDetail() ||
+                maxLevel < (int)key.getLevelOfDetail() )
             {
                 continue;
             }
+            
+                //Only try to get data if the source actually has data                
+                if (source->hasDataInExtent( key.getExtent() ) )
+                {
+                    //We have data within these extents
+                    imageInfo.dataInExtents = true;
+
+                    if ( !source->getBlacklist()->contains( key.getTileId() ) )
+                    {                        
+                        osg::ref_ptr< ImageLayerPreCacheOperation > preCacheOp;
+                        if ( i->_imageLayerOptions.isSet() )
+                        {
+                            preCacheOp = new ImageLayerPreCacheOperation();
+                            preCacheOp->_processor.init( i->_imageLayerOptions.value(), _dbOptions.get(), true );                        
+                        }
+
+                        imageInfo.image = source->createImage( key, preCacheOp.get(), progress );
+                        imageInfo.opacity = 1.0f;
+
+                        //If the image is not valid and the progress was not cancelled, blacklist
+                        if (!imageInfo.image.valid() && (!progress || !progress->isCanceled()))
+                        {
+                            //Add the tile to the blacklist
+                            OE_DEBUG << LC << "Adding tile " << key.str() << " to the blacklist" << std::endl;
+                            source->getBlacklist()->add( key.getTileId() );
+                        }
+                        imageInfo.opacity = i->_imageLayerOptions.isSet() ? i->_imageLayerOptions->opacity().value() : 1.0f;
+                    }
+                }
+                else
+                {
+                    OE_DEBUG << LC << "Source has no data at " << key.str() << std::endl;
+                }
+        }
 
+        //Add the ImageInfo to the list
+        images.push_back( imageInfo );
+    }
 
-
-
-
-            if ( !source->getBlacklist()->contains( key.getTileId() ) )
+    unsigned numValidImages = 0;
+    osg::Vec2s textureSize;
+    for (unsigned int i = 0; i < images.size(); i++)
+    {
+        ImageInfo& info = images[i];
+        if (info.image.valid())
+        {
+            if (numValidImages == 0)
             {
-                //Only try to get data if the source actually has data
-                if ( source->hasData( key ) )
-                {
+                textureSize.set( info.image->s(), info.image->t());
+            }
+            numValidImages++;        
+        }
+    }
+
+    //Try to fallback on any empty images if we have some valid images but not valid images for ALL layers
+    if (numValidImages > 0 && numValidImages < images.size())
+    {        
+        for (unsigned int i = 0; i < images.size(); i++)
+        {
+            ImageInfo& info = images[i];
+            if (!info.image.valid() && info.dataInExtents)
+            {                                
+                TileKey parentKey = key.createParentKey();
+
+                TileSource* source = _options._components[i]._tileSourceInstance;
+                if (source)
+                {                 
                     osg::ref_ptr< ImageLayerPreCacheOperation > preCacheOp;
-                    if ( i->_imageLayerOptions.isSet() )
+                    if ( _options._components[i]._imageLayerOptions.isSet() )
                     {
                         preCacheOp = new ImageLayerPreCacheOperation();
-                        preCacheOp->_processor.init( i->_imageLayerOptions.value(), true );                        
-                    }
-
-
-
-                    ImageOpacityPair imagePair(
-                        source->createImage( key, preCacheOp.get(), progress ),
-                        1.0f );
-
-                    //If the image is not valid and the progress was not cancelled, blacklist
-                    if (!imagePair.first.valid() && (!progress || !progress->isCanceled()))
+                        preCacheOp->_processor.init( _options._components[i]._imageLayerOptions.value(), _dbOptions.get(), true );                        
+                    }                
+
+                    osg::ref_ptr< osg::Image > image;
+                    while (!image.valid() && parentKey.valid())
+                    {                        
+                        image = source->createImage( parentKey, preCacheOp.get(), progress );
+                        if (image.valid())
+                        {                     
+                            break;
+                        }
+                        parentKey = parentKey.createParentKey();
+                    }     
+
+                    if (image.valid())
                     {
-                        //Add the tile to the blacklist
-                        OE_DEBUG << LC << "Adding tile " << key.str() << " to the blacklist" << std::endl;
-                        source->getBlacklist()->add( key.getTileId() );
+                        //We got an image, but now we need to crop it to match the incoming key's extents
+                        GeoImage geoImage( image.get(), parentKey.getExtent());
+                        GeoImage cropped = geoImage.crop( key.getExtent(), true, textureSize.x(), textureSize.y());
+                        image = cropped.getImage();
                     }
 
-                    if ( imagePair.first.valid() )
-                    {
-                        // check for opacity:
-                        imagePair.second = i->_imageLayerOptions.isSet() ? i->_imageLayerOptions->opacity().value() : 1.0f;
-
-                        images.push_back( imagePair );
-                    }
+                    info.image = image.get();
                 }
-                else
-                {
-                    OE_DEBUG << LC << "Source has no data at " << key.str() << std::endl;
-                }
-            }
-            else
-            {
-                OE_DEBUG << LC << "Tile " << key.str() << " is blacklisted, not checking" << std::endl;
             }
         }
     }
 
+    //Recompute the number of valid images
+    numValidImages = 0;
+    for (unsigned int i = 0; i < images.size(); i++)
+    {
+        ImageInfo& info = images[i];
+        if (info.image.valid()) numValidImages++;        
+    }
+
     if ( progress && progress->isCanceled() )
     {
         return 0L;
     }
-    else if ( images.size() == 0 )
+    else if ( numValidImages == 0 )
     {
         return 0L;
     }
-    else if ( images.size() == 1 )
+    else if ( numValidImages == 1 )
     {
-        return images[0].first.release();
+        //We only have one valid image, so just return it and don't bother with compositing
+        for (unsigned int i = 0; i < images.size(); i++)
+        {
+            ImageInfo& info = images[i];
+            if (info.image.valid())
+                return info.image.release();
+        }
+        return 0L;
     }
     else
     {
-        osg::Image* result = new osg::Image( *images[0].first.get() );
-        for( unsigned int i=1; i<images.size(); ++i )
+        osg::Image* result = 0;
+        for (unsigned int i = 0; i < images.size(); i++)
         {
-            ImageOpacityPair& pair = images[i];
-            if ( pair.first.valid() )
+            ImageInfo& imageInfo = images[i];
+            if (!result)
             {
-                ImageUtils::mix( result, pair.first.get(), pair.second );
+                if (imageInfo.image.valid())
+                {
+                    result = new osg::Image( *imageInfo.image.get());
+                }
             }
-        }
+            else
+            {
+                if (imageInfo.image.valid())
+                {
+                    ImageUtils::mix( result, imageInfo.image, imageInfo.opacity );
+                }
+            }            
+        }        
         return result;
     }
 }
 
-void
-CompositeTileSource::initialize( const std::string& referenceURI, const Profile* overrideProfile )
+bool
+CompositeTileSource::add( TileSource* ts )
 {
-    osg::ref_ptr<const Profile> profile = overrideProfile;
+    if ( _initialized )
+    {
+        OE_WARN << LC << "Illegal: cannot add a tile source after initialization" << std::endl;
+        return false;
+    }
 
-    for(CompositeTileSourceOptions::ComponentVector::iterator i = _options._components.begin();
-        i != _options._components.end();
-        ++i)
+    if ( !ts )
     {
-        TileSource* source = i->_tileSourceInstance->get(); //.get();
-        if ( source )
-        {
-            osg::ref_ptr<const Profile> localOverrideProfile = overrideProfile;
+        OE_WARN << LC << "Illegal: tried to add a NULL tile source" << std::endl;
+        return false;
+    }
 
-            const TileSourceOptions& opt = source->getOptions();
-            if ( opt.profile().isSet() )
-                localOverrideProfile = Profile::create( opt.profile().value() );
+    CompositeTileSourceOptions::Component comp;
+    comp._tileSourceInstance = ts;
+    _options._components.push_back( comp );
 
-            source->initialize( referenceURI, localOverrideProfile.get() );
+    return true;
+}
 
-            if ( !profile.valid() )
-            {
-                // assume the profile of the first source to be the overall profile.
-                profile = source->getProfile();
-            }
-            else if ( !profile->isEquivalentTo( source->getProfile() ) )
+bool
+CompositeTileSource::add( TileSource* ts, const ImageLayerOptions& options )
+{
+    if ( add(ts) )
+    {
+        _options._components.back()._imageLayerOptions = options;
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+
+TileSource::Status
+CompositeTileSource::initialize(const osgDB::Options* dbOptions)
+{
+    _dbOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+
+    osg::ref_ptr<const Profile> profile = getProfile();
+
+    for(CompositeTileSourceOptions::ComponentVector::iterator i = _options._components.begin();
+        i != _options._components.end(); )
+    {
+        if ( i->_imageLayerOptions.isSet() )
+        {
+            if ( !i->_tileSourceInstance.valid() )
             {
-                // if sub-sources have different profiles, print a warning because this is
-                // not supported!
-                OE_WARN << LC << "Components with differing profiles are not supported. " 
-                    << "Visual anomalies may result." << std::endl;
-            }
+                i->_tileSourceInstance = TileSourceFactory::create( i->_imageLayerOptions->driver().value() );
             
-            _dynamic = _dynamic || source->isDynamic();
+                if ( !i->_tileSourceInstance.valid() )
+                {
+                    OE_WARN << LC << "Could not find a TileSource for driver [" << i->_imageLayerOptions->driver()->getDriver() << "]" << std::endl;
+                }
+            }
+        }
 
-            // gather extents
-            const DataExtentList& extents = source->getDataExtents();
-            for( DataExtentList::const_iterator j = extents.begin(); j != extents.end(); ++j )
+        if ( !i->_tileSourceInstance.valid() )
+        {
+            OE_WARN << LC << "A component has no valid TileSource ... removing." << std::endl;
+            i = _options._components.erase( i );
+        }
+        else
+        {
+            TileSource* source = i->_tileSourceInstance.get();
+            if ( source )
             {
-                getDataExtents().push_back( *j );
+                osg::ref_ptr<const Profile> localOverrideProfile = profile.get();
+
+                const TileSourceOptions& opt = source->getOptions();
+                if ( opt.profile().isSet() )
+                {
+                    localOverrideProfile = Profile::create( opt.profile().value() );
+                    source->setProfile( localOverrideProfile.get() );
+                }
+
+                // initialize the component tile source:
+                TileSource::Status compStatus = source->startup( _dbOptions.get() );
+
+                if ( compStatus == TileSource::STATUS_OK )
+                {
+                    if ( !profile.valid() )
+                    {
+                        // assume the profile of the first source to be the overall profile.
+                        profile = source->getProfile();
+                    }
+                    else if ( !profile->isEquivalentTo( source->getProfile() ) )
+                    {
+                        // if sub-sources have different profiles, print a warning because this is
+                        // not supported!
+                        OE_WARN << LC << "Components with differing profiles are not supported. " 
+                            << "Visual anomalies may result." << std::endl;
+                    }
+                
+                    _dynamic = _dynamic || source->isDynamic();
+
+                    // gather extents
+                    const DataExtentList& extents = source->getDataExtents();
+                    for( DataExtentList::const_iterator j = extents.begin(); j != extents.end(); ++j )
+                    {
+                        getDataExtents().push_back( *j );
+                    }
+                }
+
+                else
+                {
+                    // if even one of the components fails to initialize, the entire
+                    // composite tile source is invalid.
+                    return Status::Error("At least one component is invalid");
+                }
             }
         }
+
+        ++i;
     }
 
+    // set the new profile that was derived from the components
     setProfile( profile.get() );
 
     _initialized = true;
+    return STATUS_OK;
 }
 
 //------------------------------------------------------------------------
diff --git a/src/osgEarth/Config b/src/osgEarth/Config
index ddfa3b9..1bdc175 100644
--- a/src/osgEarth/Config
+++ b/src/osgEarth/Config
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,19 +20,19 @@
 #define OSGEARTH_CONFIG_H 1
 
 #include <osgEarth/Common>
+#include <osgEarth/optional>
 #include <osgEarth/StringUtils>
-#include <osgEarth/URI>
-#include <osgDB/ReaderWriter>
+#include <osg/Object>
 #include <osg/Version>
-#if OSG_MIN_VERSION_REQUIRED(2,9,5)
 #include <osgDB/Options>
-#endif
 #include <list>
 #include <stack>
 #include <istream>
 
 namespace osgEarth
 {
+    class URI;
+
     typedef std::list<class Config> ConfigSet;
 
 
@@ -44,6 +44,7 @@ namespace osgEarth
         }
     };
 
+
     /**
      * Config is a general-purpose container for serializable data. You store an object's members
      * to Config, and then translate the Config to a particular format (like XML or JSON). Likewise,
@@ -53,41 +54,44 @@ namespace osgEarth
     class OSGEARTH_EXPORT Config
     {
     public:
-        Config() { }
+        Config() : _emptyConfig(0L) { }
 
-        Config( const std::string& key ) : _key(key) { }
+        Config( const std::string& key )
+            : _key(key), _emptyConfig(0L) { }
 
-        Config( const std::string& key, const std::string& value ) : _key( key ), _defaultValue( value ) { }
+        Config( const std::string& key, const std::string& value ) 
+            : _key( key ), _defaultValue( value ), _emptyConfig(0L) { }
 
-        Config( const Config& rhs ) : _key(rhs._key), _defaultValue(rhs._defaultValue), _attrs(rhs._attrs), _children(rhs._children), _refMap(rhs._refMap), _uriContext(rhs._uriContext) { }
+        Config( const Config& rhs ) 
+            : _key(rhs._key), _defaultValue(rhs._defaultValue), _children(rhs._children), _referrer(rhs._referrer), _emptyConfig(0L), _refMap(rhs._refMap) { }
+
+        virtual ~Config() { if ( _emptyConfig ) delete _emptyConfig; }
 
         /** Context for resolving relative URIs that occur in this Config */
-        void setURIContext( const URIContext& value );
-        const URIContext& uriContext() const { return _uriContext; }
+        void setReferrer( const std::string& value );
+        void inheritReferrer( const std::string& value );
+        const std::string& referrer() const { return _referrer; }
+
+        bool fromXML( std::istream& in );
 
-        bool loadXML( std::istream& in );
+        std::string toJSON( bool pretty =false ) const;
+
+        bool fromJSON( const std::string& json );
 
         bool empty() const {
             return _key.empty() && _defaultValue.empty() && _children.empty();
         }
 
+        bool isSimple() const {
+            return !_key.empty() && !_defaultValue.empty() && _children.empty();
+        }
+
         std::string& key() { return _key; }
         const std::string& key() const { return _key; }
 
         const std::string& value() const { return _defaultValue; }
         std::string& value() { return _defaultValue; }
 
-        Properties& attrs() { return _attrs; }
-        const Properties& attrs() const { return _attrs; }
-
-        std::string attr( const std::string& name ) const {
-            Properties::const_iterator i = _attrs.find(name);
-            return i != _attrs.end()? trim(i->second) : "";
-        }
-
-        std::string& attr( const std::string& name ) { return _attrs[name]; }
-        
-        //ConfigSet& children() { return _children; }
         const ConfigSet& children() const { return _children; }
 
         const ConfigSet children( const std::string& key ) const {
@@ -107,7 +111,6 @@ namespace osgEarth
         }
 
         void remove( const std::string& key ) {
-            _attrs.erase(key);            
             for(ConfigSet::iterator i = _children.begin(); i != _children.end(); ) {
                 if ( i->key() == key )
                     i = _children.erase( i );
@@ -116,10 +119,17 @@ namespace osgEarth
             }
         }
 
-        const Config& child( const std::string& key ) const;
+        Config child( const std::string& key ) const;
+
+        const Config* child_ptr( const std::string& key ) const;
+
+        Config* mutable_child( const std::string& key );
 
         void merge( const Config& rhs );
 
+        Config* find( const std::string& key, bool checkThis =true );
+        const Config* find( const std::string& key, bool checkThis =true) const;
+
         template<typename T>
         void addIfSet( const std::string& key, const optional<T>& opt ) {
             if ( opt.isSet() ) {
@@ -151,22 +161,17 @@ namespace osgEarth
                 add( key, val );
         }
 
-        void addChild( const std::string& key, const std::string& value ) {
-            add( key, value );
-        }
-
-        void add( const std::string& key, const std::string& value ) {
-            _children.push_back( Config( key, value ) );
-            _children.back().setURIContext( _uriContext );
-        }
-
-        void addChild( const Config& conf ) {
-            add( conf );
+        template<typename T>
+        void add( const std::string& key, const T& value ) {
+            _children.push_back( Config(key, Stringify() << value) );
+            //_children.back().setReferrer( _referrer );
+            _children.back().inheritReferrer( _referrer );
         }
 
         void add( const Config& conf ) {
             _children.push_back( conf );
-            _children.back().setURIContext( _uriContext );
+            //_children.back().setReferrer( _referrer );
+            _children.back().inheritReferrer( _referrer );
         }
 
         void add( const std::string& key, const Config& conf ) {
@@ -181,6 +186,13 @@ namespace osgEarth
         }
 
         template<typename T>
+        void addObj( const std::string& key, const T& value ) {
+            Config conf = value.getConfig();
+            conf.key() = key;
+            add( conf );
+        }
+
+        template<typename T>
         void updateIfSet( const std::string& key, const optional<T>& opt ) {
             if ( opt.isSet() ) {
                 remove(key);
@@ -216,33 +228,28 @@ namespace osgEarth
             }
         }
 
-        void updateChild( const std::string& key, const std::string& value ) {
-            update( key, value );
-        }
-
-        void update( const std::string& key, const std::string& value ) {
-            remove(key);
-            add( Config(key, value) );
-            //_children.push_back( Config( key, value ) );
-        }
-
-        void updateChild( const Config& conf ) {
-            update( conf );
+        template<typename T>
+        void update( const std::string& key, const T& value ) {
+            update( Config(key, Stringify() << value) );
         }
 
         void update( const Config& conf ) {
             remove(conf.key());
             add( conf );
-            //_children.push_back( conf );
         }
 
-        void update( const std::string& key, const Config& conf ) {
+        template<typename T>
+        void updateObj( const std::string& key, const T& value ) {
             remove(key);
-            Config temp = conf;
-            temp.key() = key;
-            add( temp );
+            Config conf = value.getConfig();
+            conf.key() = key;
+            add( conf );
         }
 
+        template<typename T>
+        void set( const std::string& key, const T& value ) {
+            update( key, value );
+        }
 
         bool hasValue( const std::string& key ) const {
             return !value(key).empty();
@@ -250,16 +257,20 @@ namespace osgEarth
 
         const std::string value( const std::string& key ) const {
             std::string r = trim(child(key).value());
-            if ( r.empty() )
-                r = attr(key);
+            if ( r.empty() && _key == key )
+                r = _defaultValue;
             return r;
         }
 
+        const std::string referrer( const std::string& key ) const {
+            return child(key).referrer();
+        }
+
         // populates a primitive value.
         template<typename T>
         T value( const std::string& key, T fallback ) const {
-            std::string r = attr(key);
-            if ( r.empty() && hasChild( key ) )
+            std::string r;
+            if ( hasChild( key ) )
                 r = child(key).value();
             return osgEarth::as<T>( r, fallback );
         }
@@ -271,8 +282,8 @@ namespace osgEarth
         // populates the output value iff the Config exists.
         template<typename T>
         bool getIfSet( const std::string& key, optional<T>& output ) const {
-            std::string r = attr(key);
-            if ( r.empty() && hasChild(key) )
+            std::string r;
+            if ( hasChild(key) )
                 r = child(key).value();
             if ( !r.empty() ) {
                 output = osgEarth::as<T>( r, output.defaultValue() );
@@ -304,6 +315,15 @@ namespace osgEarth
                 return false;
         }
 
+        template<typename T>
+        bool getObjIfSet( const std::string& key, T& output ) const {
+            if ( hasChild(key) ) {
+                output = T( child(key) );
+                return true;
+            }
+            return false;
+        }
+
         template<typename X, typename Y>
         bool getIfSet( const std::string& key, const std::string& val, optional<X>& target, const Y& targetValue ) const {
             if ( hasValue( key ) && value( key ) == val ) {
@@ -314,9 +334,23 @@ namespace osgEarth
                 return false;
         }
 
-        std::string toString( int indent =0 ) const;
+        template<typename X, typename Y>
+        bool getIfSet( const std::string& key, const std::string& val, X& target, const Y& targetValue ) const {
+            if ( hasValue(key) && value(key) == val ) {
+                target = targetValue;
+                return true;
+            }
+            return false;
+        }
 
-        std::string toHashString() const;
+        template<typename T>
+        bool getIfSet( const std::string& key, T& output ) const {
+            if ( hasValue(key) ) {
+                output = value<T>(key, output);
+                return true;
+            }
+            return false;
+        }
 
         /** support for conveying non-serializable objects in a Config (in memory only) */
 
@@ -336,16 +370,21 @@ namespace osgEarth
             return i == _refMap.end() ? 0 : dynamic_cast<X*>( i->second.get() );
         }
 
+        // remove everything from (this) that also appears in rhs
+        Config operator - ( const Config& rhs ) const;
+
     protected:
         std::string _key;
         std::string _defaultValue;
-        Properties  _attrs;
         ConfigSet   _children;   
-        URIContext  _uriContext;
+        std::string _referrer;
+        Config*     _emptyConfig;
 
         RefMap _refMap;
     };
 
+
+
     // specialization for Config
     template <> inline
     void Config::addIfSet<Config>( const std::string& key, const optional<Config>& opt ) {
@@ -376,32 +415,52 @@ namespace osgEarth
             return false;
     }
 
-    // specializations for URI:
-    template <> inline
-    void Config::addIfSet<URI>( const std::string& key, const optional<URI>& opt ) {
-        if ( opt.isSet() ) {
-            add( Config(key, opt->base()) );
-        }
+    template<> inline
+    void Config::add<std::string>( const std::string& key, const std::string& value ) {
+        _children.push_back( Config( key, value ) );
+        //_children.back().setReferrer( _referrer );
+        _children.back().inheritReferrer( _referrer );
     }
 
     template<> inline
-    void Config::updateIfSet<URI>( const std::string& key, const optional<URI>& opt ) {
-        if ( opt.isSet() ) {
-            remove(key);
-            add( Config(key, opt->base()) );
-        }
+    void Config::update<std::string>( const std::string& key, const std::string& value ) {
+        remove(key);
+        add( Config(key, value) );
     }
 
     template<> inline
-    bool Config::getIfSet<URI>( const std::string& key, optional<URI>& output ) const {
-        if ( hasValue( key ) ) {
-            output = URI( value(key), _uriContext );
-            return true;
-        }
-        else
-            return false;
+    void Config::update<Config>( const std::string& key, const Config& conf ) {
+        remove(key);
+        Config temp = conf;
+        temp.key() = key;
+        add( temp );
+    }
+
+    template<> inline
+    void Config::add<float>( const std::string& key, const float& value ) {
+        add( key, Stringify() << std::setprecision(8) << value );
+        //add( key, Stringify() << std::fixed << std::setprecision(8) << value );
+    }
+
+    template<> inline
+    void Config::add<double>( const std::string& key, const double& value ) {
+        add( key, Stringify() << std::setprecision(16) << value );
+        //add( key, Stringify() << std::fixed << std::setprecision(16) << value );
+    }
+
+    template<> inline
+    void Config::update<float>( const std::string& key, const float& value ) {
+        update( key, Stringify() << std::setprecision(8) << value );
+        //update( key, Stringify() << std::fixed << std::setprecision(8) << value );
+    }
+
+    template<> inline
+    void Config::update<double>( const std::string& key, const double& value ) {
+        update( key, Stringify() << std::setprecision(16) << value );
     }
 
+    //--------------------------------------------------------------------
+
     /**
      * Base class for all serializable options classes.
      */
@@ -413,6 +472,10 @@ namespace osgEarth
         ConfigOptions( const ConfigOptions& rhs )
             : _conf( rhs.getConfig() ) { }
 
+        virtual ~ConfigOptions() { }
+        
+        const std::string& referrer() const { return _conf.referrer(); }
+
         ConfigOptions& operator = ( const ConfigOptions& rhs ) {
             if ( this != &rhs ) {
                 _conf = rhs.getConfig();
@@ -428,6 +491,12 @@ namespace osgEarth
 
         virtual Config getConfig() const { return _conf; }
 
+        virtual Config getConfig( bool isolate ) const { return isolate ? newConfig() : _conf; }
+
+        Config newConfig() const { Config c; c.setReferrer(referrer()); return c; }
+
+        bool empty() const { return _conf.empty(); }
+
     protected:
         virtual void mergeConfig( const Config& conf ) { }
 
@@ -443,19 +512,22 @@ namespace osgEarth
         DriverConfigOptions( const ConfigOptions& rhs =ConfigOptions() )
             : ConfigOptions( rhs ) { fromConfig( _conf ); }
 
+        /** dtor */
+        virtual ~DriverConfigOptions() { }
+
         /** Gets or sets the name of the driver to load */
         void setDriver( const std::string& value ) { _driver = value; }
         const std::string& getDriver() const { return _driver; }
 
-        ///** Gets or sets the name of the object */
-        //void setName( const std::string& value ) { _name = value; }
-        //const std::string& getName() const { return _name; }
-
     public:
         virtual Config getConfig() const {
             Config conf = ConfigOptions::getConfig();
-            //conf.attr("name") = _name;
-            conf.attr("driver") = _driver;
+            conf.set("driver", _driver);
+            return conf;
+        }
+        virtual Config getConfig( bool isolate ) const {
+            Config conf = ConfigOptions::getConfig( isolate );
+            conf.set("driver", _driver);
             return conf;
         }
 
@@ -466,7 +538,6 @@ namespace osgEarth
 
     public:
         void fromConfig( const Config& conf ) {
-            //_name = conf.value( "name" );
             _driver = conf.value( "driver" );
             if ( _driver.empty() && conf.hasValue("type") )
                 _driver = conf.value("type");
diff --git a/src/osgEarth/Config.cpp b/src/osgEarth/Config.cpp
index f694341..44008b7 100644
--- a/src/osgEarth/Config.cpp
+++ b/src/osgEarth/Config.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -18,31 +18,41 @@
 */
 #include <osgEarth/Config>
 #include <osgEarth/XmlUtils>
+#include <osgEarth/JsonUtils>
+#include <osgDB/ReaderWriter>
+#include <osgDB/FileNameUtils>
+#include <osgDB/Registry>
 #include <sstream>
+#include <fstream>
 #include <iomanip>
 
 using namespace osgEarth;
 
-Config& emptyConfig()
+void
+Config::setReferrer( const std::string& referrer )
 {
-    static Config _emptyConfig;
-    return _emptyConfig;
+    _referrer = referrer;
+    for( ConfigSet::iterator i = _children.begin(); i != _children.end(); i++ )
+    { 
+        i->setReferrer( osgEarth::getFullPath(_referrer, i->_referrer) );
+    }
 }
 
 void
-Config::setURIContext( const URIContext& context )
+Config::inheritReferrer( const std::string& referrer )
 {
-    _uriContext = context;
-    for( ConfigSet::iterator i = _children.begin(); i != _children.end(); i++ )
-    { 
-        i->setURIContext( context.add(i->_uriContext) );
-        //URI newURI( i->uriContext(), context );
-        //i->setURIContext( *newURI );
+    if ( _referrer.empty() || !osgEarth::isRelativePath(referrer) )
+    {
+        setReferrer( referrer );
+    }
+    else if ( !referrer.empty() )
+    {
+        setReferrer( osgDB::concatPaths(_referrer, referrer) );
     }
 }
 
 bool
-Config::loadXML( std::istream& in )
+Config::fromXML( std::istream& in )
 {
     osg::ref_ptr<XmlDocument> xml = XmlDocument::load( in );
     if ( xml.valid() )
@@ -50,75 +60,215 @@ Config::loadXML( std::istream& in )
     return xml.valid();
 }
 
-const Config&
+Config
 Config::child( const std::string& childName ) const
 {
     for( ConfigSet::const_iterator i = _children.begin(); i != _children.end(); i++ ) {
         if ( i->key() == childName )
             return *i;
     }
-    return emptyConfig();
+
+    Config emptyConf;
+    emptyConf.setReferrer( _referrer );
+    return emptyConf;
+}
+
+const Config*
+Config::child_ptr( const std::string& childName ) const
+{
+    for( ConfigSet::const_iterator i = _children.begin(); i != _children.end(); i++ ) {
+        if ( i->key() == childName )
+            return &(*i);
+    }
+    return 0L;
+}
+
+Config*
+Config::mutable_child( const std::string& childName )
+{
+    for( ConfigSet::iterator i = _children.begin(); i != _children.end(); i++ ) {
+        if ( i->key() == childName )
+            return &(*i);
+    }
+
+    return 0L;
 }
 
 void
 Config::merge( const Config& rhs ) 
 {
-    for( Properties::const_iterator a = rhs._attrs.begin(); a != rhs._attrs.end(); ++a )
-        _attrs[ a->first ] = a->second;
+    // remove any matching keys first; this will allow the addition of multi-key values
+    for( ConfigSet::const_iterator c = rhs._children.begin(); c != rhs._children.end(); ++c )
+        remove( c->key() );
 
+    // add in the new values.
     for( ConfigSet::const_iterator c = rhs._children.begin(); c != rhs._children.end(); ++c )
-        addChild( *c );
+        add( *c );
 }
 
-std::string
-Config::toString( int indent ) const
+const Config*
+Config::find( const std::string& key, bool checkMe ) const
 {
-    std::stringstream buf;
-    buf << std::fixed;
-    for( int i=0; i<indent; i++ ) buf << "  ";
-    buf << "{ " << (_key.empty()? "anonymous" : _key) << ": ";
-    if ( !_defaultValue.empty() ) buf << _defaultValue;
-    if ( !_attrs.empty() ) {
-        buf << std::endl;
-        for( int i=0; i<indent+1; i++ ) buf << "  ";
-        buf << "attrs: [ ";
-        for( Properties::const_iterator a = _attrs.begin(); a != _attrs.end(); a++ )
-            buf << a->first << "=" << a->second << ", ";
-        buf << " ]";
+    if ( checkMe && key == this->key() )
+        return this;
+
+    for( ConfigSet::const_iterator c = _children.begin(); c != _children.end(); ++c )
+        if ( key == c->key() )
+            return &(*c);
+
+    for( ConfigSet::const_iterator c = _children.begin(); c != _children.end(); ++c )
+    {
+        const Config* r = c->find(key, false);
+        if ( r ) return r;
     }
-    if ( !_children.empty() ) {
-        for( ConfigSet::const_iterator c = _children.begin(); c != _children.end(); c++ )
-            buf << std::endl << (*c).toString( indent+1 );
+
+    return 0L;
+}
+
+Config*
+Config::find( const std::string& key, bool checkMe )
+{
+    if ( checkMe && key == this->key() )
+        return this;
+
+    for( ConfigSet::iterator c = _children.begin(); c != _children.end(); ++c )
+        if ( key == c->key() )
+            return &(*c);
+
+    for( ConfigSet::iterator c = _children.begin(); c != _children.end(); ++c )
+    {
+        Config* r = c->find(key, false);
+        if ( r ) return r;
     }
 
-    buf << " }";
+    return 0L;
+}
+
+namespace
+{
+    Json::Value conf2json( const Config& conf )
+    {
+        Json::Value value( Json::objectValue );
+
+        if ( conf.isSimple() )
+        {
+            value[ conf.key() ] = conf.value();
+        }
+        else
+        {
+            if ( !conf.key().empty() )
+                value["$key"] = conf.key();
+
+            if ( !conf.value().empty() )
+                value["$value"] = conf.value();
+
+            if ( conf.children().size() > 0 )
+            {
+                Json::Value children( Json::arrayValue );
+                unsigned i = 0;
+                for( ConfigSet::const_iterator c = conf.children().begin(); c != conf.children().end(); ++c )
+                {
+                    if ( c->isSimple() )
+                        value[c->key()] = c->value();
+                    else
+                        children[i++] = conf2json( *c );
+                }
+
+                if ( !children.empty() )
+                    value["$children"] = children;
+            }
+        }
+
+        return value;
+    }
 
-	std::string bufStr;
-	bufStr = buf.str();
-    return bufStr;
+    void json2conf( const Json::Value& json, Config& conf )
+    {
+        if ( json.type() == Json::objectValue )
+        {
+            Json::Value::Members members = json.getMemberNames();
+
+            if ( members.size() == 1 )
+            {
+                const Json::Value& value = json[members[0]];
+                if ( value.type() != Json::nullValue && value.type() != Json::objectValue && value.type() != Json::arrayValue )
+                {
+                    conf.key() = members[0];
+                    conf.value() = value.asString();
+                    return;
+                }
+            }
+
+            for( Json::Value::Members::const_iterator i = members.begin(); i != members.end(); ++i )
+            {
+                const Json::Value& value = json[*i];
+                if ( (*i) == "$key" )
+                {
+                    conf.key() = value.asString();
+                }
+                else if ( (*i) == "$value" )
+                {
+                    conf.value() = value.asString();
+                }
+                else if ( (*i) == "$children" && value.isArray() )
+                {
+                    json2conf( value, conf );
+                }
+                else
+                {
+                    conf.add( *i, value.asString() );
+                }
+            }
+        }
+        else if ( json.type() == Json::arrayValue )
+        {          
+            for( Json::Value::const_iterator j = json.begin(); j != json.end(); ++j )
+            {
+                Config child;
+                json2conf( *j, child );
+                if ( !child.empty() )
+                    conf.add( child );
+            }
+        }
+        else if ( json.type() != Json::nullValue )
+        {
+            //conf.value() = json.asString();
+        }
+    }
 }
 
 std::string
-Config::toHashString() const
+Config::toJSON( bool pretty ) const
 {
-    std::stringstream buf;
-    buf << std::fixed;
-    buf << "{" << (_key.empty()? "anonymous" : _key) << ":";
-    if ( !_defaultValue.empty() ) buf << _defaultValue;
-    if ( !_attrs.empty() ) {
-        buf << "[";
-        for( Properties::const_iterator a = _attrs.begin(); a != _attrs.end(); a++ )
-            buf << a->first << "=" << a->second << ",";
-        buf << "]";
-    }
-    if ( !_children.empty() ) {
-        for( ConfigSet::const_iterator c = _children.begin(); c != _children.end(); c++ )
-            buf << (*c).toHashString();
+    Json::Value root = conf2json( *this );
+    if ( pretty )
+        return Json::StyledWriter().write( root );
+    else
+        return Json::FastWriter().write( root );
+}
+
+bool
+Config::fromJSON( const std::string& input )
+{
+    Json::Reader reader;
+    Json::Value root( Json::objectValue );
+    if ( reader.parse( input, root ) )
+    {
+        json2conf( root, *this );
+        return true;
     }
+    return false;
+}
 
-    buf << "}";
+Config
+Config::operator - ( const Config& rhs ) const
+{
+    Config result( *this );
+
+    for( ConfigSet::const_iterator i = rhs.children().begin(); i != rhs.children().end(); ++i )
+    {
+        result.remove( i->key() );
+    }
 
-	std::string bufStr;
-	bufStr = buf.str();
-    return bufStr;
+    return result;
 }
diff --git a/src/osgEarth/Containers b/src/osgEarth/Containers
new file mode 100644
index 0000000..d53ec2f
--- /dev/null
+++ b/src/osgEarth/Containers
@@ -0,0 +1,456 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_CONTAINERS_H
+#define OSGEARTH_CONTAINERS_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/ThreadingUtils>
+#include <list>
+
+namespace osgEarth
+{
+    /**
+     * A std::map-like container that is faster than std::map for small amounts
+     * of data accessed by a single user
+     */
+    template<typename KEY, typename DATA>
+    struct fast_map
+    {
+        typedef std::pair<KEY,DATA> entry_t;
+        typedef std::list<entry_t>  list_t;
+
+        typedef typename list_t::iterator       iterator;
+        typedef typename list_t::const_iterator const_iterator;
+
+        list_t _data;
+        KEY    _lastKey;
+
+        DATA& operator[] (const KEY& key) {
+            for( iterator i = _data.begin(); i != _data.end(); ++i ) {
+                if ( i->first == key ) {
+                    if ( _lastKey == key && i != _data.begin() ) {
+                        _data.insert(begin(), *i);
+                        _data.erase(i);
+                        return _data.front().second;
+                    }
+                    else {
+                        _lastKey = key;
+                        return i->second;
+                    }
+                }
+            }
+            _data.push_back(entry_t(key,DATA()));
+            return _data.back().second;
+        }
+
+        iterator find( const KEY& key ) {
+            for( iterator i = _data.begin(); i != _data.end(); ++i ) {
+                if ( i->first == key ) {
+                    return i;
+                }
+            }
+            return end();
+        }
+
+        const_iterator find( const KEY& key ) const {
+            for( const_iterator i = _data.begin(); i != _data.end(); ++i ) {
+                if ( i->first == key ) {
+                    return i;
+                }
+            }
+            return end();
+        }
+
+        const_iterator begin() const { return _data.begin(); }
+        const_iterator end() const { return _data.end(); }
+        iterator begin() { return _data.begin(); }
+        iterator end() { return _data.end(); }
+
+        bool empty() const { return _data.empty(); }
+    };
+
+    //------------------------------------------------------------------------
+
+    struct CacheStats
+    {
+    public:
+        CacheStats( unsigned entries, unsigned maxEntries, unsigned queries, float hitRatio )
+            : _entries(entries), _maxEntries(maxEntries), _queries(queries), _hitRatio(hitRatio) { }
+
+        /** dtor */
+        virtual ~CacheStats() { }
+
+        unsigned _entries;
+        unsigned _maxEntries;
+        unsigned _queries;
+        float    _hitRatio;
+    };
+
+    //------------------------------------------------------------------------
+
+    /**
+     * Least-recently-used cache class.
+     * K = key type, T = value type
+     *
+     * usage:
+     *    LRUCache<K,T> cache;
+     *    cache.put( key, value );
+     *    LRUCache.Record rec = cache.get( key );
+     *    if ( rec.valid() )
+     *        const T& value = rec.value();
+     */
+    template<typename K, typename T, typename COMPARE=std::less<K> >
+    class LRUCache
+    {
+    public:
+        struct Record {
+            Record(const T* value) : _value(value) { }
+            const bool valid() const { return _value != 0L; }
+            const T& value() const { return *_value; }
+        private:
+            bool _valid;
+            const T* _value;
+        };
+
+    protected:
+        typedef typename std::list<K>::iterator lru_iter;
+        typedef typename std::list<K> lru_type;
+        typedef typename std::pair<T, lru_iter> map_value_type;
+        typedef typename std::map<K, map_value_type> map_type;
+        typedef typename map_type::iterator map_iter;
+
+        map_type _map;
+        lru_type _lru;
+        unsigned _max;
+        unsigned _buf;
+        unsigned _queries;
+        unsigned _hits;
+        bool     _threadsafe;
+        mutable Threading::Mutex _mutex;
+
+    public:
+        LRUCache( unsigned max =100 ) : _max(max), _threadsafe(false) {
+            _buf = _max/10;
+            _queries = 0;
+            _hits = 0;
+        }
+        LRUCache( bool threadsafe, unsigned max =100 ) : _max(max), _threadsafe(threadsafe) {
+            _buf = _max/10;
+            _queries = 0;
+            _hits = 0;
+        }
+
+        /** dtor */
+        virtual ~LRUCache() { }
+
+        void insert( const K& key, const T& value ) {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                insert_impl( key, value );
+            }
+            else {
+                insert_impl( key, value );
+            }
+        }
+
+        Record get( const K& key ) {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                return get_impl( key );
+            }
+            else {
+                return get_impl( key );
+            }
+        }
+
+        bool has( const K& key ) {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                return has_impl( key );
+            }
+            else {
+                return has_impl( key );
+            }
+        }
+
+        void erase( const K& key ) {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                erase_impl( key );
+            }
+            else {
+                erase_impl( key );
+            }
+        }
+
+        void clear() {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                clear_impl();
+            }
+            else {
+                clear_impl();
+            }
+        }
+
+        void setMaxSize( unsigned max ) {
+            if ( _threadsafe ) {
+                Threading::ScopedMutexLock lock(_mutex);
+                setMaxSize_impl( max );
+            }
+            else {
+                setMaxSize_impl( max );
+            }
+        }
+
+        unsigned getMaxSize() const {
+            return _max;
+        }
+
+        CacheStats getStats() const {
+            return CacheStats(
+                _lru.size(), _max, _queries, _queries > 0 ? (float)_hits/(float)_queries : 0.0f );
+        }
+
+    private:
+
+        void insert_impl( const K& key, const T& value ) {
+            map_iter mi = _map.find( key );
+            if ( mi != _map.end() ) {
+                _lru.erase( mi->second.second );
+                mi->second.first = value;
+                _lru.push_back( key );
+                mi->second.second = _lru.end();
+                mi->second.second--;
+            }
+            else {
+                _lru.push_back( key );
+                lru_iter last = _lru.end(); last--;
+                _map[key] = std::make_pair(value, last);
+            }
+
+            if ( _lru.size() > _max ) {
+                for( unsigned i=0; i < _buf; ++i ) {
+                    const K& key = _lru.front();
+                    _map.erase( key );
+                    _lru.pop_front();
+                }
+            }
+        }
+
+        Record get_impl( const K& key ) {
+            _queries++;
+            map_iter mi = _map.find( key );
+            if ( mi != _map.end() ) {
+                _lru.erase( mi->second.second );
+                _lru.push_back( key );
+                lru_iter new_iter = _lru.end(); new_iter--;
+                mi->second.second = new_iter;
+                _hits++;
+                return Record( &(mi->second.first) );
+            }
+            else {
+                return Record( 0L );
+            }
+        }
+
+        bool has_impl( const K& key ) {
+            return _map.find( key ) != _map.end();
+        }
+
+        void erase_impl( const K& key ) {
+            map_iter mi = _map.find( key );
+            if ( mi != _map.end() ) {
+                _lru.erase( mi->second.second );
+                _map.erase( mi );
+            }
+        }
+
+        void clear_impl() {
+            _lru.clear();
+            _map.clear();
+            _queries = 0;
+            _hits = 0;
+        }
+
+        void setMaxSize_impl( unsigned max ) {
+            _max = max;
+            _buf = max/10;
+            while( _lru.size() > _max ) {
+                const K& key = _lru.front();
+                _map.erase( key );
+                _lru.pop_front();
+            }
+        }
+
+    };
+
+    //--------------------------------------------------------------------
+
+    /**
+     * Same of osg::MixinVector, but with a superclass template parameter.
+     */
+    template<class ValueT, class SuperClass>
+    class MixinVector : public SuperClass
+    {
+        typedef typename std::vector<ValueT> vector_type;
+    public:
+        typedef typename vector_type::allocator_type allocator_type;
+        typedef typename vector_type::value_type value_type;
+        typedef typename vector_type::const_pointer const_pointer;
+        typedef typename vector_type::pointer pointer;
+        typedef typename vector_type::const_reference const_reference;
+        typedef typename vector_type::reference reference;
+        typedef typename vector_type::const_iterator const_iterator;
+        typedef typename vector_type::iterator iterator;
+        typedef typename vector_type::const_reverse_iterator const_reverse_iterator;
+        typedef typename vector_type::reverse_iterator reverse_iterator;
+        typedef typename vector_type::size_type size_type;
+        typedef typename vector_type::difference_type difference_type;
+
+        explicit MixinVector() : _impl()
+        {
+        }
+
+        explicit MixinVector(size_type initial_size, const value_type& fill_value = value_type())
+        : _impl(initial_size, fill_value)
+        {
+        }
+
+        template<class InputIterator>
+        MixinVector(InputIterator first, InputIterator last)
+        : _impl(first, last)
+        {
+        }
+
+        MixinVector(const vector_type& other)
+        : _impl(other)
+        {
+        }
+
+        MixinVector(const MixinVector& other)
+        : _impl(other._impl)
+        {
+        }
+
+        MixinVector& operator=(const vector_type& other)
+        {
+            _impl = other;
+            return *this;
+        }
+
+        MixinVector& operator=(const MixinVector& other)
+        {
+            _impl = other._impl;
+            return *this;
+        }
+
+        virtual ~MixinVector() {}
+
+        void clear() { _impl.clear(); }
+        void resize(size_type new_size, const value_type& fill_value = value_type()) { _impl.resize(new_size, fill_value); }
+        void reserve(size_type new_capacity) { _impl.reserve(new_capacity); }
+        
+        void swap(vector_type& other) { _impl.swap(other); }
+        void swap(MixinVector& other) { _impl.swap(other._impl); }
+
+        bool empty() const { return _impl.empty(); }
+        size_type size() const { return _impl.size(); }
+        size_type capacity() const { return _impl.capacity(); }
+        size_type max_size() const { return _impl.max_size(); }
+        allocator_type get_allocator() const { return _impl.get_allocator(); }
+
+        const_iterator begin() const { return _impl.begin(); }
+        iterator begin() { return _impl.begin(); }
+        const_iterator end() const { return _impl.end(); }
+        iterator end() { return _impl.end(); }
+
+        const_reverse_iterator rbegin() const { return _impl.rbegin(); }
+        reverse_iterator rbegin() { return _impl.rbegin(); }
+        const_reverse_iterator rend() const { return _impl.rend(); }
+        reverse_iterator rend() { return _impl.rend(); }
+
+        const_reference operator[](size_type index) const { return _impl[index]; }
+        reference operator[](size_type index) { return _impl[index]; }
+
+        const_reference at(size_type index) const { return _impl.at(index); }
+        reference at(size_type index) { return _impl.at(index); }
+
+        void assign(size_type count, const value_type& value) { _impl.assign(count, value); }
+        template<class Iter>
+        void assign(Iter first, Iter last) { _impl.assign(first, last); }
+
+        void push_back(const value_type& value) { _impl.push_back(value); }
+        void pop_back() { _impl.pop_back(); }
+
+        iterator erase(iterator where) { return _impl.erase(where); }
+        iterator erase(iterator first, iterator last) { return _impl.erase(first, last); }
+
+        iterator insert(iterator where, const value_type& value) { return _impl.insert(where, value); }
+
+        template<class InputIterator>
+        void insert(iterator where, InputIterator first, InputIterator last)
+        {
+            _impl.insert(where, first, last);
+        }
+
+        void insert(iterator where, size_type count, const value_type& value)
+        {
+            _impl.insert(where, count, value);
+        }
+
+        const_reference back() const { return _impl.back(); }
+        reference back() { return _impl.back(); }
+        const_reference front() const { return _impl.front(); }
+        reference front() { return _impl.front(); }
+
+        vector_type& asVector() { return _impl; }
+        const vector_type& asVector() const { return _impl; }
+
+        friend inline bool operator==(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl == right._impl; }
+        friend inline bool operator==(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl == right; }
+        friend inline bool operator==(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left == right._impl; }
+
+        friend inline bool operator!=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl != right._impl; }
+        friend inline bool operator!=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl != right; }
+        friend inline bool operator!=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left != right._impl; }
+
+        friend inline bool operator<(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl < right._impl; }
+        friend inline bool operator<(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl < right; }
+        friend inline bool operator<(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left < right._impl; }
+
+        friend inline bool operator>(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl > right._impl; }
+        friend inline bool operator>(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl > right; }
+        friend inline bool operator>(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left > right._impl; }
+
+        friend inline bool operator<=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl <= right._impl; }
+        friend inline bool operator<=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl <= right; }
+        friend inline bool operator<=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left <= right._impl; }
+
+        friend inline bool operator>=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl >= right._impl; }
+        friend inline bool operator>=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl >= right; }
+        friend inline bool operator>=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left >= right._impl; }
+
+    private:
+        vector_type _impl;
+    };
+
+}
+
+#endif // OSGEARTH_CONTAINERS_H
diff --git a/src/osgEarth/Cube b/src/osgEarth/Cube
index 57f9036..e4898b5 100644
--- a/src/osgEarth/Cube
+++ b/src/osgEarth/Cube
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -64,7 +64,7 @@ namespace osgEarth
         static bool cubeToFace( 
             double& in_out_x, 
             double& in_out_y, 
-            int& out_face );
+            int&    out_face );
 
         /**
          * Converts cube coordinates (0,0=>6,1) to face coordinates (0,0=>1,1,F). This
@@ -74,14 +74,14 @@ namespace osgEarth
         static bool cubeToFace( 
             double& in_out_xmin, double& in_out_ymin, 
             double& in_out_xmax, double& in_out_ymax, 
-            int& out_face );
+            int&    out_face );
 
         /**
          * Converts face coordinates (0,0=>1,1 +F) to cube coordinates (0,0=>6,1).
          */
         static bool faceToCube(
             double& in_out_x, double& in_out_y, 
-            int face );
+            int     face );
     };
 
     /**
@@ -93,6 +93,9 @@ namespace osgEarth
     public:
         CubeFaceLocator(unsigned int face);
 
+        /** dtor */
+        virtual ~CubeFaceLocator() { }
+
         // This method will generate geocentric vertex coordinates, given local tile
         // coordinates (0=>1).
         bool convertLocalToModel(const osg::Vec3d& local, osg::Vec3d& world) const;
@@ -115,6 +118,9 @@ namespace osgEarth
     public:
         CubeSpatialReference(void* handle);
 
+        /** dtor */
+        virtual ~CubeSpatialReference() { }
+
         virtual GeoLocator* createLocator(
             double xmin, double ymin, double xmax, double ymax,
             bool plate_carre =false) const;
@@ -125,16 +131,15 @@ namespace osgEarth
 
         // This SRS uses a WGS84 lat/long SRS under the hood for reprojection. So we need the
         // pre/post transforms to move from cube to latlong and back.
-        virtual bool preTransform(double& x, double& y, double& z, void* context) const;
-        virtual bool postTransform(double& x, double& y, double& z, void* context) const;
+        virtual bool preTransform ( std::vector<osg::Vec3d>& points ) const;
+        virtual bool postTransform( std::vector<osg::Vec3d>& points ) const;
 
-        virtual bool transformExtent(
+        virtual bool transformExtentToMBR(
             const SpatialReference* to_srs,
-            double& in_out_xmin,
-            double& in_out_ymin,
-            double& in_out_xmax,
-            double& in_out_ymax,
-            void* context) const;
+            double&                 in_out_xmin,
+            double&                 in_out_ymin,
+            double&                 in_out_xmax,
+            double&                 in_out_ymax ) const;
 
     protected: // SpatialReference overrides
 
diff --git a/src/osgEarth/Cube.cpp b/src/osgEarth/Cube.cpp
index 0467e5c..18e5e71 100644
--- a/src/osgEarth/Cube.cpp
+++ b/src/osgEarth/Cube.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -388,9 +388,11 @@ CubeFaceLocator::convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local)
 // --------------------------------------------------------------------------
 
 CubeSpatialReference::CubeSpatialReference( void* handle ) :
-SpatialReference( handle, "OSGEARTH", "unified-cube", "Unified Cube" )
+SpatialReference( handle, "OSGEARTH" )
 {
     //nop
+    _key.first = "unified-cube";
+    _name      = "Unified Cube";
 }
 
 void
@@ -399,10 +401,11 @@ CubeSpatialReference::_init()
     SpatialReference::_init();
 
     _is_user_defined = true;
-    _is_cube = true;
-    _is_contiguous = false;
-    _is_geographic = false;
-    _name = "Unified Cube";
+    _is_cube         = true;
+    _is_contiguous  = false;
+    _is_geographic  = false;
+    _key.first      = "unified-cube";
+    _name           = "Unified Cube";
 }
 
 GeoLocator*
@@ -426,54 +429,71 @@ CubeSpatialReference::createLocator(double xmin, double ymin, double xmax, doubl
 }
 
 bool
-CubeSpatialReference::preTransform(double& x, double& y, double& z, void* context) const
+CubeSpatialReference::preTransform( std::vector<osg::Vec3d>& points ) const
 {
-    // Convert the incoming points from cube => face => lat/long.
-    int face;
-    if ( !CubeUtils::cubeToFace( x, y, face ) )
+    for( unsigned i=0; i<points.size(); ++i )
     {
-        OE_WARN << LC << "Failed to convert (" << x << "," << y << ") into face coordinates." << std::endl;
-        return false;
-    }
+        osg::Vec3d& p = points[i];
 
-    double lat_deg, lon_deg;
-    bool success = CubeUtils::faceCoordsToLatLon( x, y, face, lat_deg, lon_deg );
-    if (!success)
-    {
-        OE_WARN << LC << "Could not transform face coordinates to lat lon" << std::endl;
-        return false;
+        // Convert the incoming points from cube => face => lat/long.
+        int face;
+        if ( !CubeUtils::cubeToFace( p.x(), p.y(), face ) )
+        {
+            OE_WARN << LC << "Failed to convert (" << p.x() << "," << p.y() << ") into face coordinates." << std::endl;
+            return false;
+        }
+
+        double lat_deg, lon_deg;
+        bool success = CubeUtils::faceCoordsToLatLon( p.x(), p.y(), face, lat_deg, lon_deg );
+        if (!success)
+        {
+            OE_WARN << LC << 
+                std::fixed << std::setprecision(2)
+                << "Could not transform face coordinates ["
+                << p.x() << ", " << p.y() << ", " << face << "] to lat lon"
+                << std::endl;
+            return false;
+        }
+        p.x() = lon_deg;
+        p.y() = lat_deg;
     }
-    x = lon_deg;
-    y = lat_deg;
     return true;
 }
 
 bool
-CubeSpatialReference::postTransform(double& x, double& y, double& z, void* context) const
+CubeSpatialReference::postTransform( std::vector<osg::Vec3d>& points) const
 {
-    //Convert the incoming points from lat/lon back to face coordinates
-    int face;
-    double out_x, out_y;
-
-    // convert from lat/long to x/y/face
-    bool success = CubeUtils::latLonToFaceCoords( y, x, out_x, out_y, face );
-    if (!success)
+    for( unsigned i=0; i<points.size(); ++i )
     {
-        OE_WARN << LC << "Could not transform face coordinates to lat lon" << std::endl;
-        return false;
-    }
+        osg::Vec3d& p = points[i];
 
-    //TODO: what to do about boundary points?
+        //Convert the incoming points from lat/lon back to face coordinates
+        int face;
+        double out_x, out_y;
 
-    if ( !CubeUtils::faceToCube( out_x, out_y, face ) )
-    {
-        OE_WARN << LC << "fromFace(" << out_x << "," << out_y << "," << face << ") failed" << std::endl;
-        return false;
-    }
-    
-    x = out_x;
-    y = out_y;
+        // convert from lat/long to x/y/face
+        bool success = CubeUtils::latLonToFaceCoords( p.y(), p.x(), out_x, out_y, face );
+        if (!success)
+        {
+            OE_WARN << LC
+                << std::fixed << std::setprecision(2)
+                << "Could not transform lat long ["
+                << p.y() << ", " << p.x() << "] coordinates to face" 
+                << std::endl;
+            return false;
+        }
+
+        //TODO: what to do about boundary points?
 
+        if ( !CubeUtils::faceToCube( out_x, out_y, face ) )
+        {
+            OE_WARN << LC << "fromFace(" << out_x << "," << out_y << "," << face << ") failed" << std::endl;
+            return false;
+        }
+        
+        p.x() = out_x;
+        p.y() = out_y;
+    }
     return true;
 }
 
@@ -485,12 +505,11 @@ CubeSpatialReference::postTransform(double& x, double& y, double& z, void* conte
 #define LARGEST( W,X,Y,Z ) osg::maximum(W, osg::maximum( X, osg::maximum( Y, Z ) ) )
 
 bool
-CubeSpatialReference::transformExtent(const SpatialReference* to_srs,
-                                      double& in_out_xmin,
-                                      double& in_out_ymin,
-                                      double& in_out_xmax,
-                                      double& in_out_ymax,
-                                      void* context ) const
+CubeSpatialReference::transformExtentToMBR(const SpatialReference* to_srs,
+                                           double&                 in_out_xmin,
+                                           double&                 in_out_ymin,
+                                           double&                 in_out_xmax,
+                                           double&                 in_out_ymax ) const
 {
     // note: this method only works when the extent is isolated to one face of the cube. If you
     // want to transform an artibrary extent, you need to break it up into separate extents for
@@ -507,7 +526,7 @@ CubeSpatialReference::transformExtent(const SpatialReference* to_srs,
     // pre/postTransform).
     if ( face < 4 )
     {
-        ok = SpatialReference::transformExtent( to_srs, in_out_xmin, in_out_ymin, in_out_xmax, in_out_ymax );
+        ok = SpatialReference::transformExtentToMBR( to_srs, in_out_xmin, in_out_ymin, in_out_xmax, in_out_ymax );
     }
     else
     {
@@ -522,8 +541,18 @@ CubeSpatialReference::transformExtent(const SpatialReference* to_srs,
         if ( crosses_pole ) // full x extent.
         {
             bool north = face == 4; // else south
-            to_srs->getGeographicSRS()->transform2D( -180.0, north? 45.0 : -90.0, to_srs, in_out_xmin, in_out_ymin );
-            to_srs->getGeographicSRS()->transform2D( 180.0, north? 90.0 : -45.0, to_srs, in_out_xmax, in_out_ymax );
+            osg::Vec3d output;
+            
+            to_srs->getGeographicSRS()->transform( osg::Vec3d(-180.0, north? 45.0 : -90.0, 0), to_srs, output );
+            in_out_xmin = output.x();
+            in_out_ymin = output.y();
+
+            to_srs->getGeographicSRS()->transform( osg::Vec3d(180.0, north? 90.0 : -45.0, 0), to_srs, output );
+            in_out_xmax = output.x();
+            in_out_ymax = output.y();
+            
+            //to_srs->getGeographicSRS()->transform2D( -180.0, north? 45.0 : -90.0, to_srs, in_out_xmin, in_out_ymin );
+            //to_srs->getGeographicSRS()->transform2D( 180.0, north? 90.0 : -45.0, to_srs, in_out_xmax, in_out_ymax );
         }
 
         else
@@ -563,8 +592,21 @@ CubeSpatialReference::transformExtent(const SpatialReference* to_srs,
             }
             else
             {
-                bool ok1 = transform2D( lonmin, latmin, to_srs, in_out_xmin, in_out_ymin, context );
-                bool ok2 = transform2D( lonmax, latmax, to_srs, in_out_xmax, in_out_ymax, context );
+                osg::Vec3d output;
+
+                bool ok1 = transform( osg::Vec3d(lonmin, latmin, 0), to_srs, output );
+                if ( ok1 ) {
+                    in_out_xmin = output.x();
+                    in_out_ymin = output.y();
+                }
+                bool ok2 = transform( osg::Vec3d(lonmax, latmax, 0), to_srs, output );
+                if ( ok2 ) {
+                    in_out_xmax = output.x();
+                    in_out_ymax = output.y();
+                }
+
+                //bool ok1 = transform2D( lonmin, latmin, to_srs, in_out_xmin, in_out_ymin, context );
+                //bool ok2 = transform2D( lonmax, latmax, to_srs, in_out_xmax, in_out_ymax, context );
                 ok = ok1 && ok2;
             }
         }
@@ -579,7 +621,6 @@ UnifiedCubeProfile::UnifiedCubeProfile() :
 Profile(SpatialReference::create( "unified-cube" ),
         0.0, 0.0, 6.0, 1.0,
         -180.0, -90.0, 180.0, 90.0,
-        0L, // let it automatically create a VSRS
         6, 1 )
 
 {
@@ -594,24 +635,6 @@ Profile(SpatialReference::create( "unified-cube" ),
     _faceExtent_gcs[5] = GeoExtent( srs, -180, -90, 180, -45 ); // south polar
 }
 
-//UnifiedCubeProfile::UnifiedCubeProfile(double xmin, double ymin, double xmax, double ymax,
-//                                       double lonMin, double latMin, double lonMax, double latMax ) :
-//Profile(SpatialReference::create( "unified-cube" ),
-//        xmin, ymin, xmax, ymax,
-//        lonMin, latMin, lonMax, latMax,
-//        6, 1 )
-//{
-//    const SpatialReference* srs = getSRS()->getGeographicSRS();
-//
-//    // set up some faceextents
-//    _faceExtent_gcs[0] = GeoExtent( srs, osg::maximum(-180.,lonMin), osg::maximum(-45.,latMin), osg::minimum(-90.,lonMax), osg::minimum( 45.,latMax) );
-//    _faceExtent_gcs[1] = GeoExtent( srs, osg::maximum( -90.,lonMin), osg::maximum(-45.,latMin), osg::minimum(  0.,lonMax), osg::minimum( 45.,latMax) );
-//    _faceExtent_gcs[2] = GeoExtent( srs, osg::maximum(   0.,lonMin), osg::maximum(-45.,latMin), osg::minimum( 90.,lonMax), osg::minimum( 45.,latMax) );
-//    _faceExtent_gcs[3] = GeoExtent( srs, osg::maximum(  90.,lonMin), osg::maximum(-45.,latMin), osg::minimum(180.,lonMax), osg::minimum( 45.,latMax) );
-//    _faceExtent_gcs[4] = GeoExtent( srs, osg::maximum(-180.,lonMin), osg::maximum( 45.,latMin), osg::minimum(180.,lonMax), osg::minimum( 90.,latMax) ); // north polar
-//    _faceExtent_gcs[5] = GeoExtent( srs, osg::maximum(-180.,lonMin), osg::maximum(-90.,latMin), osg::minimum(180.,lonMax), osg::minimum(-45.,latMax) ); // south polar
-//}
-
 int
 UnifiedCubeProfile::getFace( const TileKey& key )
 {
@@ -683,7 +706,7 @@ UnifiedCubeProfile::getIntersectingTiles(
         // and south polar tile regions.
         for( int face=0; face<6; ++face )
         {
-            GeoExtent partExtent_gcs = _faceExtent_gcs[face].intersectionSameSRS( remoteExtent_gcs.bounds() );
+            GeoExtent partExtent_gcs = _faceExtent_gcs[face].intersectionSameSRS( remoteExtent_gcs );
             if ( partExtent_gcs.isValid() )
             {
                 GeoExtent partExtent = transformGcsExtentOnFace( partExtent_gcs, face );
diff --git a/src/osgEarth/CullingUtils b/src/osgEarth/CullingUtils
new file mode 100644
index 0000000..682032c
--- /dev/null
+++ b/src/osgEarth/CullingUtils
@@ -0,0 +1,146 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_CULLING_UTILS_H
+#define OSGEARTH_CULLING_UTILS_H 1
+
+#include <osgEarth/Common>
+#include <osg/NodeCallback>
+#include <osg/ClusterCullingCallback>
+#include <osg/CoordinateSystemNode>
+#include <osg/Vec3d>
+#include <osg/Vec3>
+#include <osgUtil/CullVisitor>
+
+namespace osgEarth
+{    
+    /**
+     * A customized CCC that works correctly under an RTT camera and also with 
+     * an orthographic projection matrix.
+     */
+    class SuperClusterCullingCallback : public osg::ClusterCullingCallback
+    {
+    public:
+        bool cull(osg::NodeVisitor* nv, osg::Drawable* , osg::State*) const;
+    };
+
+
+    /**
+     * Utility functions for creating cluster cullers
+     */
+    class OSGEARTH_EXPORT ClusterCullingFactory
+    {
+    public:
+        /**
+         * Creates a cluster culling callback based on the data in a node graph.
+         * NOTE! Never put a CCC somewhere where it will be under a transform. They
+         * only work in absolute world space.
+         */
+        static osg::NodeCallback* create( osg::Node* node, const osg::Vec3d& ecefControlPoint );
+
+        /**
+         * Same as above, but uses another method to compute the parameters. There should only
+         * be one, but we need to investigate to see which is the better algorithm. Keeping this
+         * for now since it works with the feature setup..
+         */
+        static osg::NodeCallback* create2( osg::Node* node, const osg::Vec3d& ecefControlPoint );
+
+        /**
+         * Creates a cluster culling callback and installs it on the node. If the node is
+         * a transform, it will create a group above the transform and install the callback
+         * on that group instead.
+         */
+        static osg::Node* createAndInstall( osg::Node* node, const osg::Vec3d& ecefControlPoint );
+
+        /**
+         * Creates a cluster culling callback with the standard parameters.
+         */
+        static osg::NodeCallback* create(const osg::Vec3& controlPoint, const osg::Vec3& normal, float deviation, float radius);
+    };
+
+    
+    /**
+     * A simple culling-plane callback (a simpler version of ClusterCullingCallback)
+     */
+    struct OSGEARTH_EXPORT CullNodeByNormal : public osg::NodeCallback {
+        osg::Vec3d _normal;
+        CullNodeByNormal( const osg::Vec3d& normal );
+        void operator()(osg::Node* node, osg::NodeVisitor* nv);
+    };
+
+    struct CullDrawableByNormal : public osg::Drawable::CullCallback {
+        osg::Vec3d _normal;
+        CullDrawableByNormal( const osg::Vec3d& normal ) : _normal(normal) { }
+        bool cull(osg::NodeVisitor* nv, osg::Drawable* drawable, osg::State* state) const {
+            return nv && nv->getEyePoint() * _normal <= 0;
+        }
+    };
+
+    struct OSGEARTH_EXPORT CullNodeByHorizon : public osg::NodeCallback {
+        osg::Vec3d _world;
+        double _r, _r2;
+        CullNodeByHorizon( const osg::Vec3d& world, const osg::EllipsoidModel* model );
+        void operator()(osg::Node* node, osg::NodeVisitor* nv );
+    };
+
+    struct OSGEARTH_EXPORT CullNodeByFrameNumber : public osg::NodeCallback {
+        unsigned _frame;
+        CullNodeByFrameNumber() : _frame(0) { }
+        void operator()( osg::Node* node, osg::NodeVisitor* nv ) {
+            if ( nv->getFrameStamp()->getFrameNumber() - _frame <= 1 )
+                traverse(node, nv);
+        }
+    };
+
+    struct DisableSubgraphCulling : public osg::NodeCallback {
+        void operator()(osg::Node* n, osg::NodeVisitor* v);
+    };
+
+    struct StaticBound : public osg::Node::ComputeBoundingSphereCallback {
+        osg::BoundingSphere _bs;
+        StaticBound(const osg::BoundingSphere& bs) : _bs(bs) { }
+        osg::BoundingSphere computeBound(const osg::Node&) const { return _bs; }
+    };
+
+    /**
+     * Simple occlusion culling callback that does a ray interseciton between the eyepoint
+     * and a world point and doesn't draw if there are intersections with the node.
+     */
+    struct OSGEARTH_EXPORT OcclusionCullingCallback : public osg::NodeCallback {
+        OcclusionCullingCallback( const osg::Vec3d& world, osg::Node* node);
+
+        const osg::Vec3d& getWorld() const;
+        void setWorld( const osg::Vec3d& world);
+        double getMaxRange() const;
+        void setMaxRange( double maxRange);
+        void operator()(osg::Node* node, osg::NodeVisitor* nv);
+
+        osg::ref_ptr< osg::Node > _node;
+        osg::Vec3d _world;
+        osg::Vec3d _prevWorld;
+        osg::Vec3d _prevEye;
+        bool _visible;
+        double _maxRange;
+        double _maxRange2;
+    };
+
+
+}
+
+#endif // OSGEARTH_CULLING_UTILS_H
diff --git a/src/osgEarth/CullingUtils.cpp b/src/osgEarth/CullingUtils.cpp
new file mode 100644
index 0000000..f8341c9
--- /dev/null
+++ b/src/osgEarth/CullingUtils.cpp
@@ -0,0 +1,594 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/CullingUtils>
+#include <osgEarth/LineFunctor>
+#include <osg/ClusterCullingCallback>
+#include <osg/PrimitiveSet>
+#include <osg/Geode>
+#include <osg/TemplatePrimitiveFunctor>
+#include <osgUtil/CullVisitor>
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+
+using namespace osgEarth;
+
+namespace
+{
+    struct ComputeMaxNormalLength
+    {
+        void set( const osg::Vec3& normalECEF, const osg::Matrixd& local2world, float* maxNormalLen )
+        {
+            _normal       = normalECEF;
+            _local2world  = local2world;
+            _maxNormalLen = maxNormalLen;
+        }
+
+        void operator()( const osg::Vec3 &v1, bool)
+        {         
+            compute( v1 );
+        }
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, bool)
+        {         
+            compute( v1 );
+            compute( v2 );
+        }
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3& v3, bool)
+        {         
+            compute( v1 );
+            compute( v2 );
+            compute( v3 );
+        }
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3& v3, const osg::Vec3& v4, bool)
+        {         
+            compute( v1 );
+            compute( v2 );
+            compute( v3 );
+            compute( v4 );
+        }
+
+        void compute( const osg::Vec3& v )
+        {
+            osg::Vec3d vworld = v * _local2world;
+            double vlen = vworld.length();
+            vworld.normalize();
+
+            // the dot product of the 2 vecs is the cos of the angle between them;
+            // mult that be the vector length to get the new normal length.
+            float normalLen = fabs(_normal * vworld) * vlen;
+
+            if ( normalLen < *_maxNormalLen )
+                *_maxNormalLen = normalLen;
+        }
+
+        osg::Vec3 _normal;
+        osg::Matrixd _local2world;
+        float*    _maxNormalLen;
+    };
+
+    struct ComputeMaxRadius2
+    {
+        void set( const osg::Vec3& center, float* maxRadius2 )
+        {
+            _center = center;
+            _maxRadius2 = maxRadius2;
+        }
+
+        void operator()( const osg::Vec3 &v1, bool )
+        {            
+            compute( v1 );
+        }
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, bool )
+        {            
+            compute( v1 );
+            compute( v2 );
+        }
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3 &v3, bool )
+        {            
+            compute( v1 );
+            compute( v2 );
+            compute( v3 );
+        }        
+
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3 &v3, const osg::Vec3& v4, bool )
+        {            
+            compute( v1 );
+            compute( v2 );
+            compute( v3 );
+            compute( v4 );
+        }
+
+        void compute( const osg::Vec3& v )
+        {
+            float dist = (v - _center).length2();
+            if ( dist > *_maxRadius2 )
+                *_maxRadius2 = dist;
+        }
+
+
+
+        osg::Vec3 _center;
+        float*    _maxRadius2;
+    };
+
+    struct ComputeVisitor : public osg::NodeVisitor
+    {
+        ComputeVisitor()
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN), 
+              _maxRadius2(0.0f) { }
+
+        void run( osg::Node* node, const osg::Vec3d& centerECEF )
+        {
+            _centerECEF = centerECEF;
+            _normalECEF = _centerECEF;
+            _normalECEF.normalize();
+            _maxNormalLen = _centerECEF.length();
+
+            _pass = 1;
+            node->accept( *this );
+
+            _centerECEF = _normalECEF * _maxNormalLen;
+
+            _pass = 2;
+            node->accept( *this );
+        }
+
+        void apply( osg::Geode& geode )
+        {            
+            if ( _pass == 1 )
+            {
+                osg::Matrixd local2world;
+                if ( !_matrixStack.empty() )
+                    local2world = _matrixStack.back();
+
+                osg::TemplatePrimitiveFunctor<ComputeMaxNormalLength> pass1;
+                pass1.set( _normalECEF, local2world, &_maxNormalLen );
+
+                for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+                    geode.getDrawable(i)->accept( pass1 );
+            }
+
+            else // if ( _pass == 2 )
+            {
+                osg::Vec3d center = _matrixStack.empty() ? _centerECEF : _centerECEF * osg::Matrixd::inverse(_matrixStack.back());
+
+                osg::TemplatePrimitiveFunctor<ComputeMaxRadius2> pass2;
+                pass2.set( center, &_maxRadius2 );
+                for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+                    geode.getDrawable(i)->accept( pass2 );
+            }
+        }
+
+        void apply( osg::Transform& xform )
+        {
+            osg::Matrixd matrix;
+            if (!_matrixStack.empty()) matrix = _matrixStack.back();
+            xform.computeLocalToWorldMatrix( matrix, this );
+            _matrixStack.push_back( matrix );
+            traverse(xform);
+            _matrixStack.pop_back();
+        }
+        
+        unsigned   _pass;
+        osg::Vec3d _centerECEF;
+        osg::Vec3f _normalECEF;
+        float      _maxNormalLen;
+        float      _maxRadius2;
+        std::vector<osg::Matrixd> _matrixStack;
+    };
+
+    /** 
+     * Line functor that computes the minimum deviation from a world normal, based on 
+     * line normals in world space.
+     */
+    struct ComputeMinDeviation
+    {
+        void set( const osg::Matrixd& local2world, const osg::Vec3& normal, double* minDeviation )
+        {
+            _local2world        = local2world;
+            _worldControlNormal = normal;
+            _minDeviation       = minDeviation;
+        }
+
+        // called for each line segment in the geometry. Compute the world-space
+        // "face" normal of the line, and DOT that with the world control normal
+        // to find the deviation required for that line to be visible.
+        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, bool )
+        {
+            // convert endpoints to world space:
+            osg::Vec3d v1d = v1;
+            osg::Vec3d v2d = v2;
+            v1d = v1d * _local2world;
+            v1d.normalize();
+            v2d = v2d * _local2world;
+            v2d.normalize();
+
+            // find the world-space normal of the line segment:
+            osg::Vec3d segmentNormal = (v1d+v2d)/2.0;
+
+            // calculate its deviation from the control normal
+            double deviation = (_worldControlNormal * segmentNormal);
+            if ( deviation < *_minDeviation )
+                *_minDeviation = deviation;
+        }
+
+        osg::Vec3d   _worldControlNormal;
+        osg::Matrixd _local2world;
+        double*      _minDeviation;
+    };
+
+    /**
+     * Visitor that goes over a scene graph and calculates all the cluster
+     * culling parameters for that graph.
+     */
+    struct ComputeClusterCullingParams : public osg::NodeVisitor
+    {
+        ComputeClusterCullingParams( const osg::Vec3d& ecefControlPoint )
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+              _minDeviation( 1.0 )
+        {
+            _ecefControl = ecefControlPoint;
+            _ecefNormal = ecefControlPoint;
+            _ecefNormal.normalize();
+            _matrixStack.push_back( osg::Matrixd::identity() );
+        }
+
+        void apply( osg::Geode& geode )
+        {
+            LineFunctor<ComputeMinDeviation> functor;
+            functor.set( _matrixStack.back(), _ecefNormal, &_minDeviation );
+
+             for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+             {
+                 geode.getDrawable(i)->accept( functor );
+             }
+
+             traverse(geode);
+        }
+
+        void apply( osg::Transform& xform )
+        {
+            osg::Matrixd local2world = _matrixStack.back();
+            xform.computeLocalToWorldMatrix(local2world, this);
+
+            _matrixStack.push_back(local2world);
+
+            traverse(xform);
+
+            _matrixStack.pop_back();
+        }
+        
+        std::vector<osg::Matrixd> _matrixStack;
+        double _maxOffset, _maxRadius, _minDeviation;
+        osg::Vec3d _ecefControl, _ecefNormal;
+    };
+}
+
+
+//----------------------------------------------------------------------------
+
+
+bool 
+SuperClusterCullingCallback::cull(osg::NodeVisitor* nv, osg::Drawable* , osg::State*) const
+{
+    osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>(nv);
+
+    if (!cv) return false;
+
+    // quick bail if cluster culling is disabled:
+    if ( !(cv->getCullingMode() & osg::CullSettings::CLUSTER_CULLING) )
+        return false;
+
+    // quick bail is the deviation is maxed out
+    if ( _deviation <= -1.0f )
+        return false;
+
+    // accept if we're within the culling radius
+    osg::Vec3d eye_cp = nv->getViewPoint() - _controlPoint;
+    float radius = (float)eye_cp.length();
+    if (radius < _radius)
+        return false;
+
+    // handle perspective and orthographic projections differently.
+    const osg::Matrixd& proj = *cv->getProjectionMatrix();
+    bool isOrtho = ( proj(3,3) == 1. ) && ( proj(2,3) == 0. ) && ( proj(1,3) == 0. ) && ( proj(0,3) == 0.);
+
+    if ( isOrtho )
+    {
+        // For an ortho camera, use the reverse look vector instead of the eye->controlpoint
+        // vector for the deviation test. Transform the local reverse-look vector (always 0,0,1)
+        // into world space and dot them. (Use 3x3 since we're xforming a vector, not a point)
+        osg::Vec3d revLookWorld = osg::Matrix::transform3x3( *cv->getModelViewMatrix(), osg::Vec3d(0,0,1) );
+        revLookWorld.normalize();
+        float deviation = revLookWorld * _normal;
+        return deviation < _deviation;
+    }
+
+    else // isPerspective
+    {
+        float deviation = (eye_cp * _normal)/radius;
+        return deviation < _deviation;
+    }
+}
+
+
+//----------------------------------------------------------------------------
+
+
+osg::NodeCallback*
+ClusterCullingFactory::create( osg::Node* node, const osg::Vec3d& ecefControlPoint )
+{
+    SuperClusterCullingCallback* ccc = 0L;
+    if ( node )
+    { 
+        ComputeClusterCullingParams pass( ecefControlPoint );
+        node->accept( pass );
+
+        osg::Vec3d ecefNormal = ecefControlPoint;
+        ecefNormal.normalize();
+        
+        // adjust the calculated deviation for the eyepoint angle:
+        float angle = acosf(pass._minDeviation)+osg::PI*0.5f;
+        float deviation = angle < osg::PI ? cosf(angle) : -1.0f;
+
+        ccc = new SuperClusterCullingCallback();
+
+        // note: getBound()->radius() should really be a computed max radius..todo.
+        ccc->set( ecefControlPoint, ecefNormal, deviation, node->getBound().radius() );
+    }
+    return ccc;
+}
+
+osg::NodeCallback*
+ClusterCullingFactory::create2( osg::Node* node, const osg::Vec3d& centerECEF )
+{
+    // Cluster culling computer. This works in two passes.
+    //
+    // It starts with a control point provided by the caller. I the first pass it computes
+    // a new control point that is along the same geocentric normal but at a lower Z. This 
+    // corresponds to the lowest Z of a vertex with respect to that normal. This means we
+    // can always use a "deviation" of 0 -- and it gets around the problem of the control
+    // point being higher than a vertex and corrupting the deviation.
+    //
+    // In the second pass, we compute the radius based on the new control point.
+    //
+    // NOTE: This is based on code developed separately from the method used in create()
+    // above. We need to sort out which is the better approach and consolidate!
+
+    osg::ClusterCullingCallback* ccc = 0L;
+    if ( node )
+    {
+        ComputeVisitor cv;
+        cv.run( node, centerECEF );
+
+        ccc = new SuperClusterCullingCallback();
+        ccc->set( cv._centerECEF, cv._normalECEF, 0.0f, sqrt(cv._maxRadius2) );
+    }
+    return ccc;
+}
+
+osg::Node*
+ClusterCullingFactory::createAndInstall( osg::Node* node, const osg::Vec3d& ecefControlPoint )
+{
+    osg::NodeCallback* cb = create(node, ecefControlPoint);
+    if ( cb )
+    {
+        if ( dynamic_cast<osg::Transform*>(node) )
+        {
+            osg::Group* group = new osg::Group();
+            group->addChild( node );
+            node = group;
+        }
+
+        node->addCullCallback( cb );
+    }
+    return node;
+}
+
+osg::NodeCallback*
+ClusterCullingFactory::create(const osg::Vec3& controlPoint,
+                              const osg::Vec3& normal,
+                              float deviation,
+                              float radius)
+{
+    SuperClusterCullingCallback* ccc = new SuperClusterCullingCallback();
+    ccc->set(controlPoint, normal, deviation, radius);
+    return ccc;
+}
+
+
+//------------------------------------------------------------------------
+
+CullNodeByHorizon::CullNodeByHorizon( const osg::Vec3d& world, const osg::EllipsoidModel* model ) :
+_world(world),
+_r(model->getRadiusPolar()),
+_r2(model->getRadiusPolar() * model->getRadiusPolar())
+{
+    //nop
+}
+
+void
+CullNodeByHorizon::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    if ( nv )
+    {
+        osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( nv );
+
+        // get the viewpoint. It will be relative to the current reference location (world).
+        osg::Matrix l2w = osg::computeLocalToWorld( nv->getNodePath(), true );
+        osg::Vec3d vp  = cv->getViewPoint() * l2w;
+
+        // same quadrant:
+        if ( vp * _world >= 0.0 )
+        {
+            double d2 = vp.length2();
+            double horiz2 = d2 - _r2;
+            double dist2 = (_world-vp).length2();
+            if ( dist2 < horiz2 )
+            {
+                traverse(node, nv);
+            }
+        }
+
+        // different quadrants:
+        else
+        {
+            // there's a horizon between them; now see if the thing is visible.
+            // find the triangle formed by the viewpoint, the target point, and 
+            // the center of the earth.
+            double a = (_world-vp).length();
+            double b = _world.length();
+            double c = vp.length();
+
+            // Heron's formula for triangle area:
+            double s = 0.5*(a+b+c);
+            double area = 0.25*sqrt( s*(s-a)*(s-b)*(s-c) );
+
+            // Get the triangle's height:
+            double h = (2*area)/a;
+
+            if ( h >= _r )
+            {
+                traverse(node, nv);
+            }
+        }
+    }
+}
+
+//------------------------------------------------------------------------
+
+CullNodeByNormal::CullNodeByNormal( const osg::Vec3d& normal )
+{
+    _normal = normal;
+    //_normal.normalize();
+}
+
+void
+CullNodeByNormal::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    osg::Vec3d eye, center, up;
+    osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( nv );
+
+    cv->getCurrentCamera()->getViewMatrixAsLookAt(eye,center,up);
+
+    eye.normalize();
+    osg::Vec3d normal = _normal;
+    normal.normalize();
+
+    double dotProduct = eye * normal;
+    if ( dotProduct > 0.0 )
+    {
+        traverse(node, nv);
+    }
+}
+
+//------------------------------------------------------------------------
+
+void
+DisableSubgraphCulling::operator()(osg::Node* n, osg::NodeVisitor* v)
+{
+    osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>(v);
+    cv->getCurrentCullingSet().setCullingMask( osg::CullSettings::NO_CULLING );
+    //osg::CullSettings::ComputeNearFarMode mode = cv->getComputeNearFarMode();
+    //cv->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
+    traverse(n, v);
+    //cv->setComputeNearFarMode( mode );
+}
+
+
+//------------------------------------------------------------------------
+
+OcclusionCullingCallback::OcclusionCullingCallback(const osg::Vec3d& world, osg::Node* node):
+_world(world),
+_node( node ),
+_visible( true ),
+_maxRange(200000),
+_maxRange2(_maxRange * _maxRange)
+{
+}
+
+const osg::Vec3d& OcclusionCullingCallback::getWorld() const
+{
+    return _world;
+}
+
+void OcclusionCullingCallback::setWorld( const osg::Vec3d& world)
+{
+    _world = world;
+}
+
+double OcclusionCullingCallback::getMaxRange() const
+{
+    return _maxRange;
+}
+
+void OcclusionCullingCallback::setMaxRange( double maxRange)
+{
+    _maxRange = maxRange;
+    _maxRange2 = maxRange * maxRange;
+}
+
+void OcclusionCullingCallback::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    if (nv->getVisitorType() == osg::NodeVisitor::CULL_VISITOR)
+    {
+        osg::Vec3d eye, center, up;
+        osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( nv );
+
+        cv->getCurrentCamera()->getViewMatrixAsLookAt(eye,center,up);
+
+        if (_prevEye != eye || _prevWorld != _world)
+        {
+            double range = (eye-_world).length2();
+            //Only do the intersection if we are close enough for it to matter
+            if (range <= _maxRange2 && _node.valid())
+            {
+                //Compute the intersection from the eye to the world point
+                osg::Vec3d start = eye;
+                osg::Vec3d end = _world;
+                osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
+                osgUtil::IntersectionVisitor iv;            
+                iv.setIntersector( i );
+                _node->accept( iv );
+                osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
+                _visible = results.empty();
+            }
+            else
+            {
+                _visible = true;
+            }
+
+            _prevEye = eye;
+            _prevWorld = _world;
+        }
+
+        if (_visible)
+        {
+            traverse(node, nv );
+        }
+    }
+    else
+    {
+        traverse( node, nv );
+    }
+}
\ No newline at end of file
diff --git a/src/osgEarth/DPLineSegmentIntersector b/src/osgEarth/DPLineSegmentIntersector
new file mode 100644
index 0000000..cc81365
--- /dev/null
+++ b/src/osgEarth/DPLineSegmentIntersector
@@ -0,0 +1,51 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DP_LINE_SEG_INTERSECTOR_H
+#define OSGEARTH_DP_LINE_SEG_INTERSECTOR_H
+
+#include <osgEarthUtil/Common>
+#include <osgUtil/LineSegmentIntersector>
+
+namespace osgEarth
+{
+    /**
+     * A double-precision version of the osgUtil::LineSegmentIntersector.
+     * Use this instead of the OSG one when working in geocentric space.
+     */
+    class OSGEARTH_EXPORT DPLineSegmentIntersector : public osgUtil::LineSegmentIntersector
+    {
+    public:
+        DPLineSegmentIntersector(const osgUtil::Intersector::CoordinateFrame& cf, const osg::Vec3d& start, const osg::Vec3d& end)
+            : osgUtil::LineSegmentIntersector(cf, start, end) { }
+
+        DPLineSegmentIntersector(const osg::Vec3d& start, const osg::Vec3d& end)
+            : osgUtil::LineSegmentIntersector(start, end) { }
+
+        /** dtor */
+        virtual ~DPLineSegmentIntersector() { }
+
+    public: // overrides
+        
+        virtual osgUtil::Intersector* clone(osgUtil::IntersectionVisitor& iv);
+        virtual void intersect(osgUtil::IntersectionVisitor& iv, osg::Drawable* drawable);
+    };
+
+} // namespace osgEarth::Util
+
+#endif // OSGEARTH_DP_LINE_SEG_INTERSECTOR_H
diff --git a/src/osgEarth/DPLineSegmentIntersector.cpp b/src/osgEarth/DPLineSegmentIntersector.cpp
new file mode 100644
index 0000000..4018cd0
--- /dev/null
+++ b/src/osgEarth/DPLineSegmentIntersector.cpp
@@ -0,0 +1,401 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/DPLineSegmentIntersector>
+#include <osg/KdTree>
+#include <osg/TriangleFunctor>
+
+using namespace osgEarth;
+
+namespace
+{
+    struct TriangleIntersection
+    {
+        TriangleIntersection(unsigned int index, const osg::Vec3d& normal, double r1, const osg::Vec3* v1, double r2, const osg::Vec3* v2, double r3, const osg::Vec3* v3):
+            _index(index),
+            _normal(normal),
+            _r1(r1),
+            _v1(v1),
+            _r2(r2),
+            _v2(v2),
+            _r3(r3),
+            _v3(v3) {}
+
+        unsigned int         _index;
+        const osg::Vec3      _normal;
+        double               _r1;
+        const osg::Vec3*     _v1;
+        double               _r2;
+        const osg::Vec3*     _v2;
+        double               _r3;
+        const osg::Vec3*     _v3;
+
+    protected:
+
+        TriangleIntersection& operator = (const TriangleIntersection&) { return *this; }
+    };
+
+
+    typedef std::multimap<double,TriangleIntersection> TriangleIntersections;
+
+
+    struct DoublePrecisionTriangleIntersector
+    {
+        osg::Vec3d   _s;
+        osg::Vec3d   _d;
+        double       _length;
+
+        int         _index;
+        double       _ratio;
+        bool        _hit;
+        bool        _limitOneIntersection;
+
+        TriangleIntersections _intersections;
+
+        DoublePrecisionTriangleIntersector()
+        {
+            _length = 0.0;
+            _index = 0;
+            _ratio = 0.0;
+            _hit = false;
+            _limitOneIntersection = false;
+        }
+
+        void set(const osg::Vec3d& start, osg::Vec3d& end, double ratio=FLT_MAX)
+        {
+            _hit=false;
+            _index = 0;
+            _ratio = ratio;
+
+            _s = start;
+            _d = end - start;
+            _length = _d.length();
+            _d /= _length;
+        }
+
+        inline void operator () (const osg::Vec3& v1,const osg::Vec3& v2,const osg::Vec3& v3, bool treatVertexDataAsTemporary)
+        {
+            ++_index;
+
+            if (_limitOneIntersection && _hit) return;
+
+            if (v1==v2 || v2==v3 || v1==v3) return;
+
+            osg::Vec3d v1d(v1), v2d(v2), v3d(v3);
+
+            osg::Vec3d v12 = v2d-v1d;
+            osg::Vec3d n12 = v12^_d;
+            double ds12 = (_s-v1d)*n12;
+            double d312 = (v3d-v1d)*n12;
+            if (d312>=0.0)
+            {
+                if (ds12<0.0) return;
+                if (ds12>d312) return;
+            }
+            else                     // d312 < 0
+            {
+                if (ds12>0.0) return;
+                if (ds12<d312) return;
+            }
+
+            osg::Vec3d v23 = v3d-v2d;
+            osg::Vec3d n23 = v23^_d;
+            double ds23 = (_s-v2d)*n23;
+            double d123 = (v1d-v2d)*n23;
+            if (d123>=0.0)
+            {
+                if (ds23<0.0) return;
+                if (ds23>d123) return;
+            }
+            else                     // d123 < 0
+            {
+                if (ds23>0.0) return;
+                if (ds23<d123) return;
+            }
+
+            osg::Vec3d v31 = v1d-v3d;
+            osg::Vec3d n31 = v31^_d;
+            double ds31 = (_s-v3d)*n31;
+            double d231 = (v2d-v3d)*n31;
+            if (d231>=0.0)
+            {
+                if (ds31<0.0) return;
+                if (ds31>d231) return;
+            }
+            else                     // d231 < 0
+            {
+                if (ds31>0.0) return;
+                if (ds31<d231) return;
+            }
+
+
+            double r3;
+            if (osg::equivalent(ds12,0.0)) r3=0.0;
+            else if (!osg::equivalent(d312,0.0)) r3 = ds12/d312;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double r1;
+            if (osg::equivalent(ds23,0.0)) r1=0.0;
+            else if (!osg::equivalent(d123,0.0)) r1 = ds23/d123;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double r2;
+            if (osg::equivalent(ds31,0.0)) r2=0.0;
+            else if (!osg::equivalent(d231,0.0)) r2 = ds31/d231;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double total_r = (r1+r2+r3);
+            if (!osg::equivalent(total_r,1.0))
+            {
+                if (osg::equivalent(total_r,0.0)) return; // the triangle and the line must be parallel intersection.
+                double inv_total_r = 1.0/total_r;
+                r1 *= inv_total_r;
+                r2 *= inv_total_r;
+                r3 *= inv_total_r;
+            }
+
+            osg::Vec3d in = v1d*r1+v2d*r2+v3d*r3;
+            if (!in.valid())
+            {
+                //OSG_WARN<<"Warning:: Picked up error in TriangleIntersect"<<std::endl;
+                //OSG_WARN<<"   ("<<v1<<",\t"<<v2<<",\t"<<v3<<")"<<std::endl;
+                //OSG_WARN<<"   ("<<r1<<",\t"<<r2<<",\t"<<r3<<")"<<std::endl;
+                return;
+            }
+
+            float d = (in-_s)*_d;
+
+            if (d<0.0) return;
+            if (d>_length) return;
+
+            osg::Vec3d normal = v12^v23;
+            normal.normalize();
+
+            float r = d/_length;
+
+
+            if (treatVertexDataAsTemporary)
+            {
+                _intersections.insert(std::pair<const double,TriangleIntersection>(r,TriangleIntersection(_index-1,normal,r1,0,r2,0,r3,0)));
+            }
+            else
+            {
+                _intersections.insert(std::pair<const double,TriangleIntersection>(r,TriangleIntersection(_index-1,normal,r1,&v1,r2,&v2,r3,&v3)));
+            }
+            _hit = true;
+
+        }
+
+    };
+}
+
+//----------------------------------------------------------------------------    
+
+osgUtil::Intersector* 
+DPLineSegmentIntersector::clone(osgUtil::IntersectionVisitor& iv)
+{
+    if (_coordinateFrame==MODEL && iv.getModelMatrix()==0)
+    {
+        //GW: changed the next line
+        osg::ref_ptr<DPLineSegmentIntersector> lsi = new DPLineSegmentIntersector(_start, _end);
+        lsi->_parent = this;
+        lsi->_intersectionLimit = this->_intersectionLimit;
+        return lsi.release();
+    }
+
+    // compute the matrix that takes this Intersector from its CoordinateFrame into the local MODEL coordinate frame
+    // that geometry in the scene graph will always be in.
+    osg::Matrix matrix;
+    switch (_coordinateFrame)
+    {
+    case(WINDOW):
+        if (iv.getWindowMatrix()) matrix.preMult( *iv.getWindowMatrix() );
+        if (iv.getProjectionMatrix()) matrix.preMult( *iv.getProjectionMatrix() );
+        if (iv.getViewMatrix()) matrix.preMult( *iv.getViewMatrix() );
+        if (iv.getModelMatrix()) matrix.preMult( *iv.getModelMatrix() );
+        break;
+    case(PROJECTION):
+        if (iv.getProjectionMatrix()) matrix.preMult( *iv.getProjectionMatrix() );
+        if (iv.getViewMatrix()) matrix.preMult( *iv.getViewMatrix() );
+        if (iv.getModelMatrix()) matrix.preMult( *iv.getModelMatrix() );
+        break;
+    case(VIEW):
+        if (iv.getViewMatrix()) matrix.preMult( *iv.getViewMatrix() );
+        if (iv.getModelMatrix()) matrix.preMult( *iv.getModelMatrix() );
+        break;
+    case(MODEL):
+        if (iv.getModelMatrix()) matrix = *iv.getModelMatrix();
+        break;
+    }
+
+    osg::Matrix inverse;
+    inverse.invert(matrix);
+
+    //GW: changed the next line
+    osg::ref_ptr<DPLineSegmentIntersector> lsi = new DPLineSegmentIntersector(_start * inverse, _end * inverse);
+    lsi->_parent = this;
+    lsi->_intersectionLimit = this->_intersectionLimit;
+    return lsi.release();
+}
+        
+void
+DPLineSegmentIntersector::intersect(osgUtil::IntersectionVisitor& iv, osg::Drawable* drawable)
+{
+    if (reachedLimit()) return;
+
+    osg::Vec3d s(_start), e(_end);
+    if ( !intersectAndClip( s, e, drawable->getBound() ) ) return;
+
+    if (iv.getDoDummyTraversal()) return;
+
+    osg::KdTree* kdTree = iv.getUseKdTreeWhenAvailable() ? dynamic_cast<osg::KdTree*>(drawable->getShape()) : 0;
+    if (kdTree)
+    {
+        osg::KdTree::LineSegmentIntersections intersections;
+        intersections.reserve(4);
+        if (kdTree->intersect(s,e,intersections))
+        {
+            // OSG_NOTICE<<"Got KdTree intersections"<<std::endl;
+            for(osg::KdTree::LineSegmentIntersections::iterator itr = intersections.begin();
+                itr != intersections.end();
+                ++itr)
+            {
+                osg::KdTree::LineSegmentIntersection& lsi = *(itr);
+
+                // get ratio in s,e range
+                double ratio = lsi.ratio;
+
+                // remap ratio into _start, _end range
+                double remap_ratio = ((s-_start).length() + ratio * (e-s).length() )/(_end-_start).length();
+
+
+                Intersection hit;
+                hit.ratio = remap_ratio;
+                hit.matrix = iv.getModelMatrix();
+                hit.nodePath = iv.getNodePath();
+                hit.drawable = drawable;
+                hit.primitiveIndex = lsi.primitiveIndex;
+
+                hit.localIntersectionPoint = _start*(1.0-remap_ratio) + _end*remap_ratio;
+
+                // OSG_NOTICE<<"KdTree: ratio="<<hit.ratio<<" ("<<hit.localIntersectionPoint<<")"<<std::endl;
+
+                hit.localIntersectionNormal = lsi.intersectionNormal;
+
+                hit.indexList.reserve(3);
+                hit.ratioList.reserve(3);
+                if (lsi.r0!=0.0f)
+                {
+                    hit.indexList.push_back(lsi.p0);
+                    hit.ratioList.push_back(lsi.r0);
+                }
+
+                if (lsi.r1!=0.0f)
+                {
+                    hit.indexList.push_back(lsi.p1);
+                    hit.ratioList.push_back(lsi.r1);
+                }
+
+                if (lsi.r2!=0.0f)
+                {
+                    hit.indexList.push_back(lsi.p2);
+                    hit.ratioList.push_back(lsi.r2);
+                }
+
+                insertIntersection(hit);
+            }
+        }
+
+        return;
+    }
+
+    // GW: changed this ONE line
+    osg::TriangleFunctor<DoublePrecisionTriangleIntersector> ti;
+
+    ti.set(s,e);
+    ti._limitOneIntersection = (_intersectionLimit == LIMIT_ONE_PER_DRAWABLE || _intersectionLimit == LIMIT_ONE);
+    drawable->accept(ti);
+
+    if (ti._hit)
+    {
+        osg::Geometry* geometry = drawable->asGeometry();
+
+        for(TriangleIntersections::iterator thitr = ti._intersections.begin();
+            thitr != ti._intersections.end();
+            ++thitr)
+        {
+
+            // get ratio in s,e range
+            double ratio = thitr->first;
+
+            // remap ratio into _start, _end range
+            double remap_ratio = ((s-_start).length() + ratio * (e-s).length() )/(_end-_start).length();
+
+            if ( _intersectionLimit == LIMIT_NEAREST && !getIntersections().empty() )
+            {
+                if (remap_ratio >= getIntersections().begin()->ratio )
+                    break;
+                else
+                    getIntersections().clear();
+            }
+
+            TriangleIntersection& triHit = thitr->second;
+
+            Intersection hit;
+            hit.ratio = remap_ratio;
+            hit.matrix = iv.getModelMatrix();
+            hit.nodePath = iv.getNodePath();
+            hit.drawable = drawable;
+            hit.primitiveIndex = triHit._index;
+
+            hit.localIntersectionPoint = _start*(1.0-remap_ratio) + _end*remap_ratio;
+
+            // OSG_NOTICE<<"Conventional: ratio="<<hit.ratio<<" ("<<hit.localIntersectionPoint<<")"<<std::endl;
+
+            hit.localIntersectionNormal = triHit._normal;
+
+            if (geometry)
+            {
+                osg::Vec3Array* vertices = dynamic_cast<osg::Vec3Array*>(geometry->getVertexArray());
+                if (vertices)
+                {
+                    osg::Vec3* first = &(vertices->front());
+
+                    if (triHit._v1)
+                    {
+                        hit.indexList.push_back(triHit._v1-first);
+                        hit.ratioList.push_back(triHit._r1);
+                    }
+                    if (triHit._v2)
+                    {
+                        hit.indexList.push_back(triHit._v2-first);
+                        hit.ratioList.push_back(triHit._r2);
+                    }
+                    if (triHit._v3)
+                    {
+                        hit.indexList.push_back(triHit._v3-first);
+                        hit.ratioList.push_back(triHit._r3);
+                    }
+                }
+            }
+
+            insertIntersection(hit);
+
+        }
+    }
+}
diff --git a/src/osgEarth/DepthOffset b/src/osgEarth/DepthOffset
new file mode 100644
index 0000000..ae97593
--- /dev/null
+++ b/src/osgEarth/DepthOffset
@@ -0,0 +1,154 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_DEPTH_ADJUSTMENT_H
+#define OSGEARTH_DEPTH_ADJUSTMENT_H 1
+
+#include <osgEarth/Common>
+#include <osg/Group>
+#include <osg/Program>
+#include <osg/Uniform>
+
+/**
+* Depth offsetting mitigates z-fighting artifacts for geometry that is very close
+* together, e.g. terrain-following lines. It uses a shader program to apply a 
+* simulated eye-space offset, writing values to the z-buffer as if the geometry were
+* drawn closer to the camera than they actually are. The effect is similar to what
+* glPolygonOffset is *supposed* to do (but doesn't). You get rid of z-fighting but
+* still maintain local occlusion.
+*
+* There is a trade off. You need to set a "minimum offset" that the technique will
+* apply to the geometry. From there, it uses distance-to-vertex to ramp between that and
+* a set maximum offset. The appropriate minimum offset depends a lot on the tessellation
+* of your geometry, so it's wise to use a higher offset for geometry with longer 
+* segments when in a round-earth situation. The automatic setting (the default) analyzes
+* the subgraph and picks a decent value, but you can always override this is you like.
+*/
+namespace osgEarth
+{
+    /**
+     * Utilities to manage depth testing for feature data. Handy especially
+     * for terrain-conforming lines.
+     */
+    class OSGEARTH_EXPORT DepthOffsetUtils
+    {
+    public:
+        /**
+         * Creates a uniform that will configure the depth adjustment program.
+         * The value of the uniform is the minimum depth offset applied to 
+         * geometry under the program's stateset. If you pass in a graph, it
+         * will analyze it and attempt to come up with a reasonable default
+         * minimum offset.
+         */
+        static osg::Uniform* createMinOffsetUniform( osg::Node* graphToAdjust =0L );
+
+        /**
+         * Analyses a graph, calculates a suitable minimum depth offset, and
+         * returns it. Also may install support uniforms within the graph as
+         * necessary to support depth offsetting.
+         */
+        static float recalculate( osg::Node* graph );
+
+        /**
+         * Traverses a graph and applies the necessary uniforms to statesets
+         * so they'll work with depth offsetting.
+         */
+        static void prepareGraph( osg::Node* graph );
+
+        /**
+         * Creates a complete shader program that you can use to implement vertex
+         * depth adjustment. Use createUniform() to make a uniform for tweaking
+         * the depth offset value.
+         */
+        static osg::Program* getOrCreateProgram();
+
+        /**
+         * Returns a uniform that, when used with the Program, can inform the program
+         * whether the underlying drawables are osgText drawables.
+         */
+        static osg::Uniform* getIsTextUniform();
+
+        /**
+         * Returns a uniform that, when used with the Program, can inform the program
+         * whether the underlying drawables are NOT osgText drawables.
+         */
+        static osg::Uniform* getIsNotTextUniform();
+
+        /**
+         * Creates the source for a depth adjustment vertex shader. Use this instead
+         * of createProgram() if you want you are using the shader composition framework.
+         * You can install this in any FunctionLocation.
+         */
+        static std::string createVertexFunction(
+            const std::string& funcName ="osgearth_depth_adjustment_vertex" );
+
+        /**
+         * Creates the source for a depth adjustment fragment shader. Use this instead
+         * of createProgram() if you want you are using the shader composition framework.
+         * You can install this in any FunctionLocation.
+         */
+        static std::string createFragmentFunction(
+            const std::string& funcName ="osgearth_depth_adjustment_fragment" );
+    };
+
+    /**
+     * Group that applies the depth offset technique to its children.
+     */
+    class OSGEARTH_EXPORT DepthOffsetGroup : public osg::Group
+    {
+    public:
+        /**
+         * Constructs a new depth offset group
+         */
+        DepthOffsetGroup();
+
+        /** dtor */
+        virtual ~DepthOffsetGroup() { }
+
+        /**
+         * Sets a minimum depth offset range (in scene units, e.g. meters)
+         * This is the minimim simulated depth offset that will be applied to 
+         * geometry under this group.
+         */
+        void setMinimumOffset( float value );
+
+        /**
+         * Sets the group to automatically calculate an "appropriate" minimum
+         * depth offset based on the child geometry. Whenever the child graph
+         * changes, it will attempt to recalculate the best offset to use.
+         */
+        void setAutoMinimumOffset();
+
+    public: // osg::Node
+
+        virtual osg::BoundingSphere computeBound() const;
+
+        virtual void traverse(osg::NodeVisitor& );
+
+    protected:
+        bool _auto;
+        bool _dirty;
+        osg::Uniform* _minOffsetUniform;
+        void update();
+        void dirty();
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_DEPTH_ADJUSTMENT_H
diff --git a/src/osgEarth/DepthOffset.cpp b/src/osgEarth/DepthOffset.cpp
new file mode 100644
index 0000000..f7e8d4a
--- /dev/null
+++ b/src/osgEarth/DepthOffset.cpp
@@ -0,0 +1,429 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/DepthOffset>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/LineFunctor>
+#include <osgEarth/Registry>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Capabilities>
+
+#include <osg/Geode>
+#include <osg/Geometry>
+#include <osgText/Text>
+#include <sstream>
+
+#define LC "[DepthOffset] "
+
+using namespace osgEarth;
+
+#define MIN_OFFSET_UNIFORM "osgearth_depthoffset_minoffset"
+#define IS_TEXT_UNIFORM    "osgearth_depthoffset_istext"
+
+#define MAX_DEPTH_OFFSET 10000.0
+
+// undef this if you want to adjust in the normal direction (of a geocentric point) instead
+#define ADJUST_TOWARDS_EYE 1
+
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct SegmentAnalyzer
+    {
+        SegmentAnalyzer() : _maxLen2(0) { }
+        void operator()( const osg::Vec3& v0, const osg::Vec3& v1, bool ) {
+            double len2 = (v1-v0).length2();
+            if ( len2 > _maxLen2 ) _maxLen2 = len2;
+        }
+        double _maxLen2;
+    };
+
+    struct GeometryAnalysisVisitor : public osg::NodeVisitor
+    {
+        GeometryAnalysisVisitor()
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN), _analyzeSegments(true) { }
+
+        void apply( osg::Geode& geode )
+        {
+            for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+            {
+                osg::Drawable* d = geode.getDrawable(i);
+
+                if ( _analyzeSegments && d->asGeometry() )
+                {
+                    d->accept( _segmentAnalyzer );
+                }
+                else if ( dynamic_cast<osgText::Text*>(d) )
+                {
+                    d->getOrCreateStateSet()->addUniform( DepthOffsetUtils::getIsTextUniform() );
+                }
+            }
+        }
+        LineFunctor<SegmentAnalyzer> _segmentAnalyzer;
+        bool                         _analyzeSegments;
+    };
+
+
+    //...............................
+    // Shader code:
+
+
+    static char remapFunction[] =
+        "float remap( float val, float vmin, float vmax, float r0, float r1 ) \n"
+        "{ \n"
+        "    float vr = (clamp(val, vmin, vmax)-vmin)/(vmax-vmin); \n"
+        "    return r0 + vr * (r1-r0); \n"
+        "} \n";
+
+    static char castMat4ToMat3Function[] = 
+        "mat3 normalMatrix(in mat4 m) { \n"
+        "    return mat3( m[0].xyz, m[1].xyz, m[2].xyz ); \n"
+        "} \n";
+
+    static std::string createVertexShader( const std::string& shaderCompName )
+    {
+
+        float glslVersion = Registry::instance()->getCapabilities().getGLSLVersion();
+
+        std::string versionString = glslVersion < 1.2f ? "#version 110 \n" : "#version 120 \n";
+
+        std::string castMat4ToMat3 = glslVersion < 1.2f ? "castMat4ToMat3Function" : "mat3";
+        
+
+        std::stringstream buf;
+        buf
+            << versionString
+            << remapFunction;
+
+        if ( glslVersion < 1.2f )
+            buf << castMat4ToMat3Function;
+
+        buf
+            << "uniform mat4 osg_ViewMatrix; \n"
+            << "uniform mat4 osg_ViewMatrixInverse; \n"
+            << "uniform float " << MIN_OFFSET_UNIFORM << "; \n"
+            << "uniform bool " << IS_TEXT_UNIFORM << "; \n"
+            << "varying vec4 adjV; \n"
+            << "varying float simRange; \n";
+        
+
+        if ( !shaderCompName.empty() )
+            buf << "void " << shaderCompName << "() { \n";
+        else
+            buf << "void main(void) { \n";
+
+        buf <<
+            // transform the vertex into eye space:
+            "vec4 vertEye  = gl_ModelViewMatrix * gl_Vertex; \n"
+            "vec3 vertEye3 = vertEye.xyz/vertEye.w; \n"
+            "float range = length(vertEye3); \n"
+
+#ifdef ADJUST_TOWARDS_EYE
+
+            "vec3 adjVecEye3 = normalize(vertEye3); \n"
+
+#else // ADJUST_ALONG_UP_VECTOR
+
+            // calculate the "up" vector, that will be our adjustment vector:
+            "vec4 vertWorld = osg_ViewMatrixInverse * vertEye; \n"
+            "vec3 adjVecWorld3 = -normalize(vertWorld.xyz/vertWorld.w); \n"
+            "vec3 adjVecEye3 = " << castMat4ToMat3 << "(osg_ViewMatrix) * adjVecWorld3; \n"
+
+#endif
+
+            // remap depth offset based on camera distance to vertex. The farther you are away,
+            // the more of an offset you need.        
+            "float offset = remap( range, 1000.0, 10000000.0, " << MIN_OFFSET_UNIFORM << ", 10000.0); \n"
+
+            // adjust the Z (distance from the eye) by our offset value:
+            "vertEye3 -= adjVecEye3 * offset; \n"
+            "vertEye.xyz = vertEye3 * vertEye.w; \n"
+
+            // Transform the new adjusted vertex into clip space and pass it to the fragment shader.
+            "adjV = gl_ProjectionMatrix * vertEye; \n"
+
+            // Also pass along the simulated range (eye=>vertex distance). We will need this
+            // to detect when the depth offset has pushed the Z value "behind" the camera.
+            "simRange = range - offset; \n"
+            ;
+
+        if ( shaderCompName.empty() )
+        {
+            buf << 
+                "gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
+                //"gl_Position = adjV; \n" // <-- uncomment for debugging
+                "gl_FrontColor = gl_Color; \n"
+                "gl_TexCoord[0] = gl_MultiTexCoord0; \n";
+            
+        }
+
+        buf << "} \n";
+
+        std::string result;
+        result = buf.str();
+        return result;
+    }
+
+    static std::string createFragmentShader( const std::string& shaderCompName )
+    {
+        if ( shaderCompName.empty() )
+        {
+            // Transform out adjusted Z value (from the vertex shader) from clip space [-1..1]
+            // into depth buffer space [0..1] and write it to the z-buffer. Yes, this will
+            // deactivate early-Z optimizations; so be it!!
+            return 
+                "#version 110 \n"
+
+                "uniform bool " IS_TEXT_UNIFORM "; \n"
+                "uniform sampler2D tex0; \n"
+                "varying vec4 adjV; \n"
+                "varying float simRange; \n"
+
+                "void main(void) \n"
+                "{ \n"
+                "    if (" IS_TEXT_UNIFORM ") \n"
+                "    { \n"
+                "        float alpha = texture2D(tex0,gl_TexCoord[0].st).a; \n"
+                "        gl_FragColor = vec4( gl_Color.rgb, gl_Color.a * alpha); \n"
+                "    } \n"
+                "    else \n"
+                "    { \n"
+                "        gl_FragColor = gl_Color; \n"
+                "    } \n"
+
+                // transform clipspace depth into [0..1] for FragDepth:
+                "    float z = 0.5 * (1.0+(adjV.z/adjV.w)); \n"
+
+                // if the offset pushed the Z behind the eye, the projection mapping will
+                // result in a z>1. We need to bring these values back down to the 
+                // near clip plan (z=0). We need to check simRange too before doing this
+                // so we don't draw fragments that are legitimently beyond the far clip plane.
+                "    if ( z > 1.0 && simRange < 0.0 ) { z = 0.0; } \n"
+
+                "    gl_FragDepth = max(0.0, z); \n"
+                "} \n";
+        }
+        else
+        {
+            return Stringify() <<
+                "#version 110 \n"
+                "varying vec4 adjV; \n"
+                "varying float simRange; \n"
+                "void " << shaderCompName << "(inout vec4 color) \n"
+                "{ \n"
+                "    float z = 0.5 * (1.0+(adjV.z/adjV.w)); \n"
+                "    if ( z > 1.0 && simRange < 0.0 ) { z = 0.0; } \n"
+                "    gl_FragDepth = max(0.0,z); \n"
+                "} \n";
+        }
+    }
+}
+
+//---------------------------------------------------------------------------
+
+osg::Uniform*
+DepthOffsetUtils::createMinOffsetUniform( osg::Node* graph )
+{
+    osg::Uniform* u = new osg::Uniform(osg::Uniform::FLOAT, MIN_OFFSET_UNIFORM);
+    u->set( graph ? recalculate(graph) : 0.0f );
+    return u;
+}
+
+float
+DepthOffsetUtils::recalculate( osg::Node* graph )
+{
+    double minDepthOffset = 0.0;
+    if ( graph )
+    {
+        GeometryAnalysisVisitor v;
+        v._analyzeSegments = true;
+        graph->accept( v );
+        double maxLen = std::max(1.0, sqrt(v._segmentAnalyzer._maxLen2));
+        minDepthOffset = sqrt(maxLen)*19.0;
+
+        OE_DEBUG << LC << std::fixed << std::setprecision(2)
+            << "max res = " << maxLen << ", min offset = " << minDepthOffset << std::endl;
+    }
+    return float(minDepthOffset);
+}
+
+void
+DepthOffsetUtils::prepareGraph( osg::Node* graph )
+{
+    if ( graph )
+    {
+        GeometryAnalysisVisitor v;
+        v._analyzeSegments = false;
+        graph->accept( v );
+    }
+}
+
+namespace
+{
+    static osg::ref_ptr<osg::Uniform> s_isTextUniform;
+    static Threading::Mutex           s_isTextUniformMutex;
+}
+
+osg::Uniform*
+DepthOffsetUtils::getIsTextUniform()
+{
+    if ( !s_isTextUniform.valid() )
+    {
+        Threading::ScopedMutexLock exclusive(s_isTextUniformMutex);
+        if ( !s_isTextUniform.valid() )
+        {
+            s_isTextUniform = new osg::Uniform(osg::Uniform::BOOL, IS_TEXT_UNIFORM);
+            s_isTextUniform->set( true );
+        }
+    }
+    return s_isTextUniform.get();
+}
+
+namespace
+{    
+    static osg::ref_ptr<osg::Uniform> s_isNotTextUniform;
+    static Threading::Mutex           s_isNotTextUniformMutex;
+}
+
+osg::Uniform*
+DepthOffsetUtils::getIsNotTextUniform()
+{
+    if ( !s_isNotTextUniform.valid() )
+    {
+        Threading::ScopedMutexLock exclusive(s_isNotTextUniformMutex);
+        if ( !s_isNotTextUniform.valid() )
+        {
+            s_isNotTextUniform = new osg::Uniform(osg::Uniform::BOOL, IS_TEXT_UNIFORM);
+            s_isNotTextUniform->set( false );
+        }
+    }
+    return s_isNotTextUniform.get();
+}
+ 
+namespace
+{
+    static osg::ref_ptr<osg::Program> s_depthOffsetProgram;
+    static Threading::Mutex           s_depthOffsetProgramMutex;
+}
+
+osg::Program*
+DepthOffsetUtils::getOrCreateProgram()
+{
+    if ( !s_depthOffsetProgram.valid() )
+    {
+        Threading::ScopedMutexLock exclusive(s_depthOffsetProgramMutex);
+        if ( !s_depthOffsetProgram.valid() )
+        {
+            s_depthOffsetProgram = new osg::Program();
+            s_depthOffsetProgram->setName( "osgEarth::DepthOffset" );
+            s_depthOffsetProgram->addShader( new osg::Shader(osg::Shader::VERTEX, createVertexShader("")) );
+            s_depthOffsetProgram->addShader( new osg::Shader(osg::Shader::FRAGMENT, createFragmentShader("")) );
+        }
+    }
+
+    return s_depthOffsetProgram.get();
+}
+
+std::string
+DepthOffsetUtils::createVertexFunction( const std::string& funcName )
+{
+    return createVertexShader( funcName );
+}
+
+std::string
+DepthOffsetUtils::createFragmentFunction( const std::string& funcName )
+{
+    return createFragmentShader( funcName );
+}
+
+//------------------------------------------------------------------------
+
+DepthOffsetGroup::DepthOffsetGroup() :
+_auto ( true ),
+_dirty( false )
+{
+    osg::StateSet* s = this->getOrCreateStateSet();
+
+    osg::Program* program = DepthOffsetUtils::getOrCreateProgram();
+    s->setAttributeAndModes( program, 1 );
+
+    _minOffsetUniform = DepthOffsetUtils::createMinOffsetUniform();
+    s->addUniform( _minOffsetUniform );
+
+    s->addUniform( DepthOffsetUtils::getIsNotTextUniform() );
+}
+
+void
+DepthOffsetGroup::setMinimumOffset( float value )
+{
+    _auto = false;
+    _minOffsetUniform->set( std::max(0.0f, value) );
+}
+
+void
+DepthOffsetGroup::setAutoMinimumOffset()
+{
+    _auto = true;
+    dirty();
+}
+
+void
+DepthOffsetGroup::dirty()
+{
+    if ( !_dirty )
+    {
+        _dirty = true;
+        ADJUST_UPDATE_TRAV_COUNT(this, 1);
+    }
+}
+
+osg::BoundingSphere
+DepthOffsetGroup::computeBound() const
+{
+    const_cast<DepthOffsetGroup*>(this)->dirty();
+    return osg::Group::computeBound();
+}
+
+void
+DepthOffsetGroup::traverse(osg::NodeVisitor& nv)
+{
+    if ( _dirty && nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+    {
+        update();
+        ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+        _dirty = false;
+    }
+    osg::Group::traverse( nv );
+}
+
+void
+DepthOffsetGroup::update()
+{
+    GeometryAnalysisVisitor v;
+    v._analyzeSegments = _auto;
+    this->accept( v );
+
+    if ( _auto )
+    {
+        double maxLen = sqrt(v._segmentAnalyzer._maxLen2);
+        _minOffsetUniform->set( float(sqrt(maxLen)*19.0) );
+    }
+}
diff --git a/src/osgEarth/Draggers b/src/osgEarth/Draggers
new file mode 100644
index 0000000..d629b7e
--- /dev/null
+++ b/src/osgEarth/Draggers
@@ -0,0 +1,143 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_DRAGGERS_H
+#define OSGEARTH_DRAGGERS_H
+
+#include <osgEarth/Common>
+#include <osgEarth/GeoData>
+#include <osgEarth/TileKey>
+#include <osgEarth/MapNodeObserver>
+#include <osg/MatrixTransform>
+#include <osg/ShapeDrawable>
+#include <osgGA/GUIEventHandler>
+#include <osgEarth/Terrain>
+
+namespace osgEarth
+{
+    class MapNode;
+    class Terrain;
+
+    class OSGEARTH_EXPORT Dragger : public osg::MatrixTransform, public MapNodeObserver
+    {
+    public:
+        /**
+        * Callback that is fired when the position changes
+        */
+        struct PositionChangedCallback : public osg::Referenced
+        {
+        public:
+            virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position) {};
+            virtual ~PositionChangedCallback() { }
+        };
+
+        typedef std::list< osg::ref_ptr<PositionChangedCallback> > PositionChangedCallbackList;
+
+        Dragger( MapNode* mapNode);
+
+        /** dtor */
+        virtual ~Dragger();
+
+        bool getDragging() const;
+
+        bool getHovered() const;
+
+        const osgEarth::GeoPoint& getPosition() const;
+
+        void setPosition( const osgEarth::GeoPoint& position, bool fireEvents=true);
+
+
+        void updateTransform(osg::Node* patch = 0);
+
+        virtual void enter();
+
+        virtual void leave();
+
+        virtual void setColor( const osg::Vec4f& color ) =0;
+
+        virtual void setPickColor( const osg::Vec4f& color ) =0;
+
+        void addPositionChangedCallback( PositionChangedCallback* callback );
+
+        void removePositionChangedCallback( PositionChangedCallback* callback );
+
+        virtual void traverse(osg::NodeVisitor& nv);        
+
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain );
+
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        virtual MapNode* getMapNode() { return _mapNode.get(); }
+
+
+    protected:
+        virtual bool handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa);
+        void setHover( bool hovered);
+        void firePositionChanged();
+
+        osg::ref_ptr< TerrainCallback > _autoClampCallback;
+
+        osg::observer_ptr< MapNode > _mapNode;
+        osgEarth::GeoPoint _position;
+        bool _dragging;
+        bool _hovered;
+        PositionChangedCallbackList _callbacks;
+    };
+
+    /**********************************************************/
+    class OSGEARTH_EXPORT SphereDragger : public Dragger
+    {
+    public:
+        SphereDragger(MapNode* mapNode);
+
+        /** dtor */
+        virtual ~SphereDragger() { }
+
+        const osg::Vec4f& getColor() const;
+
+        void setColor(const osg::Vec4f& color);
+
+        const osg::Vec4f& getPickColor() const;
+
+        void setPickColor(const osg::Vec4f& pickColor);
+
+        float getSize() const;
+        void setSize(float size);
+
+        virtual void enter();
+
+        virtual void leave();
+
+    protected:
+
+        void updateColor();
+
+        osg::MatrixTransform* _scaler;
+        osg::ShapeDrawable* _shapeDrawable;
+        osg::Vec4f _pickColor;
+        osg::Vec4f _color;
+        float _size;
+    };
+
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_DRAGGERS_H
diff --git a/src/osgEarth/Draggers.cpp b/src/osgEarth/Draggers.cpp
new file mode 100644
index 0000000..4b25b74
--- /dev/null
+++ b/src/osgEarth/Draggers.cpp
@@ -0,0 +1,375 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarth/Draggers>
+#include <osgEarth/MapNode>
+#include <osgEarth/Pickers>
+
+#include <osg/AutoTransform>
+#include <osgViewer/View>
+
+#include <osg/io_utils>
+
+#include <osgGA/EventVisitor>
+
+
+
+using namespace osgEarth;
+
+struct ClampDraggerCallback : public TerrainCallback
+{
+    ClampDraggerCallback( Dragger* dragger ):
+_dragger( dragger )
+{
+}
+
+void onTileAdded( const TileKey& key, osg::Node* tile, TerrainCallbackContext& context )
+{
+    _dragger->reclamp( key, tile, context.getTerrain() );
+}
+
+Dragger* _dragger;
+};
+
+/**********************************************************/
+Dragger::Dragger( MapNode* mapNode):
+_mapNode( mapNode ),
+_position( mapNode->getMapSRS(), 0,0,0, ALTMODE_RELATIVE),
+_dragging(false),
+_hovered(false)
+{
+    setNumChildrenRequiringEventTraversal( 1 );
+
+    _autoClampCallback = new ClampDraggerCallback( this );
+
+    setMapNode( mapNode );
+}
+
+Dragger::~Dragger()
+{
+    setMapNode( 0L );
+}
+
+void
+Dragger::setMapNode( MapNode* mapNode )
+{
+    MapNode* oldMapNode = getMapNode();
+
+    if ( oldMapNode != mapNode )
+    {
+        if ( oldMapNode && _autoClampCallback.valid() )
+        {
+            oldMapNode->getTerrain()->removeTerrainCallback( _autoClampCallback.get() );
+        }
+
+        _mapNode = mapNode;
+
+        if ( _mapNode.valid() && _autoClampCallback.valid() )
+        {
+            _mapNode->getTerrain()->addTerrainCallback( _autoClampCallback.get() );
+        }
+    }
+}
+
+bool Dragger::getDragging() const
+{
+    return _dragging;
+}
+
+bool Dragger::getHovered() const
+{
+    return _hovered;
+}
+
+const GeoPoint& Dragger::getPosition() const
+{
+    return _position;
+}
+
+void Dragger::setPosition( const GeoPoint& position, bool fireEvents)
+{
+    if (_position != position)
+    {
+        _position = position;
+        updateTransform();
+
+        if ( fireEvents )
+            firePositionChanged();
+    }
+}
+
+void Dragger::firePositionChanged()
+{
+    for( PositionChangedCallbackList::iterator i = _callbacks.begin(); i != _callbacks.end(); i++ )
+    {
+        i->get()->onPositionChanged(this, _position);
+    }
+}
+
+void Dragger::updateTransform(osg::Node* patch)
+{
+    if ( getMapNode() )
+    {
+        osg::Matrixd matrix;
+
+        GeoPoint mapPoint( _position );
+        mapPoint.makeAbsolute( getMapNode()->getTerrain() );
+
+        mapPoint.createLocalToWorld( matrix );
+        setMatrix( matrix );
+    }
+}
+
+void Dragger::enter()
+{
+}
+
+void Dragger::leave()
+{        
+}    
+
+void Dragger::addPositionChangedCallback( PositionChangedCallback* callback )
+{
+    _callbacks.push_back( callback );
+}
+
+void Dragger::removePositionChangedCallback( PositionChangedCallback* callback )
+{
+    PositionChangedCallbackList::iterator i = std::find( _callbacks.begin(), _callbacks.end(), callback);
+    if (i != _callbacks.end())
+    {
+        _callbacks.erase( i );
+    }    
+}
+
+void Dragger::traverse(osg::NodeVisitor& nv)
+{
+    if (nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR)
+    {
+        osgGA::EventVisitor* ev = static_cast<osgGA::EventVisitor*>(&nv);
+        for(osgGA::EventQueue::Events::iterator itr = ev->getEvents().begin();
+            itr != ev->getEvents().end();
+            ++itr)
+        {
+            osgGA::GUIEventAdapter* ea = itr->get();
+            if (handle(*ea, *(ev->getActionAdapter()))) ea->setHandled(true);
+        }
+    }
+    osg::MatrixTransform::traverse(nv);
+}
+
+bool Dragger::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
+{
+    if (ea.getHandled()) return false;
+
+    osgViewer::View* view = dynamic_cast<osgViewer::View*>(&aa);
+    if (!view) return false;
+    if (!_mapNode.valid()) return false;
+
+    if (ea.getEventType() == osgGA::GUIEventAdapter::PUSH)
+    {
+        Picker picker( view, this );
+        Picker::Hits hits;
+
+        if ( picker.pick( ea.getX(), ea.getY(), hits ) )
+        {
+            _dragging = true;
+            aa.requestRedraw();
+            return true;
+        }
+    }
+    else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
+    {
+        if ( _dragging )
+        {
+            _dragging = false;
+            firePositionChanged();
+        }
+        aa.requestRedraw();
+    }
+    else if (ea.getEventType() == osgGA::GUIEventAdapter::DRAG)
+    {
+        if (_dragging)
+        {
+            osg::Vec3d world;
+            if ( getMapNode() && getMapNode()->getTerrain()->getWorldCoordsUnderMouse(view, ea.getX(), ea.getY(), world) )
+            {
+                //Get the absolute mapPoint that they've drug it to.
+                GeoPoint mapPoint;
+                mapPoint.fromWorld( getMapNode()->getMapSRS(), world );
+                //_mapNode->getMap()->worldPointToMapPoint(world, mapPoint);
+
+                //If the current position is relative, we need to convert the absolute world point to relative.
+                //If the point is absolute then just emit the absolute point.
+                if (_position.altitudeMode() == ALTMODE_RELATIVE)
+                {
+                    mapPoint.alt() = _position.alt();
+                    mapPoint.altitudeMode() = ALTMODE_RELATIVE;
+                }
+                setPosition( mapPoint );
+                aa.requestRedraw();
+                return true;
+            }
+        }
+    }   
+    else if (ea.getEventType() == osgGA::GUIEventAdapter::MOVE)
+    {
+        Picker picker( view, this );
+        Picker::Hits hits;
+
+        if ( picker.pick( ea.getX(), ea.getY(), hits ) )
+        {
+            setHover( true );
+        }
+        else
+        {
+            setHover( false );
+        }        
+        aa.requestRedraw();
+    }
+    return false;
+}
+
+void Dragger::setHover( bool hovered)
+{
+    if (_hovered != hovered)
+    {
+        bool wasHovered = _hovered;
+        _hovered = hovered;
+        if (wasHovered)
+        {
+            leave();            
+        }
+        else
+        {
+            enter();
+        }
+    }
+}
+
+void Dragger::reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain )
+{    
+    GeoPoint p;
+    _position.transform( key.getExtent().getSRS(), p );
+    // first verify that the control position intersects the tile:
+    if ( key.getExtent().contains( p.x(), p.y() ) )
+    {
+        updateTransform( tile );
+    }
+}
+
+
+
+/**********************************************************/
+
+SphereDragger::SphereDragger(MapNode* mapNode):
+Dragger( mapNode ),
+_pickColor(1.0f, 1.0f, 0.0f, 1.0f),
+_color(0.0f, 1.0f, 0.0f, 1.0f),
+_size( 5.0f )
+{
+    //Disable culling
+    setCullingActive( false );
+
+    //Build the handle
+    osg::Sphere* shape = new osg::Sphere(osg::Vec3(0,0,0), 1.0f);   
+    osg::Geode* geode = new osg::Geode();
+    _shapeDrawable = new osg::ShapeDrawable( shape );    
+    _shapeDrawable->setDataVariance( osg::Object::DYNAMIC );
+    geode->addDrawable( _shapeDrawable );          
+
+    geode->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+    geode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+
+    _scaler = new osg::MatrixTransform;
+    _scaler->setMatrix( osg::Matrixd::scale( _size, _size, _size ));
+    _scaler->addChild( geode );
+
+    osg::AutoTransform* at = new osg::AutoTransform;
+    at->setAutoScaleToScreen( true );
+    at->addChild( _scaler );
+    addChild( at );
+
+    updateColor();
+}
+
+const osg::Vec4f& SphereDragger::getColor() const
+{
+    return _color;
+}
+
+void SphereDragger::setColor(const osg::Vec4f& color)
+{
+    if (_color != color)
+    {
+        _color = color;
+        updateColor();
+    }
+}
+
+
+const osg::Vec4f& SphereDragger::getPickColor() const
+{
+    return _pickColor;
+}
+
+void SphereDragger::setPickColor(const osg::Vec4f& pickColor)
+{
+    if (_pickColor != pickColor)
+    {
+        _pickColor = pickColor;
+        updateColor();
+    }
+}
+
+float SphereDragger::getSize() const
+{
+    return _size;
+}
+
+void SphereDragger::setSize(float size)
+{
+    if (_size != size)
+    {
+        _size = size;
+        _scaler->setMatrix( osg::Matrixd::scale( _size, _size, _size ));
+    }
+}
+
+
+void SphereDragger::enter()
+{
+    updateColor();
+}
+
+void SphereDragger::leave()
+{
+    updateColor();
+}
+
+void SphereDragger::updateColor()
+{
+    if (getHovered())
+    {
+        _shapeDrawable->setColor( _pickColor );
+    }        
+    else
+    {
+        _shapeDrawable->setColor( _color );
+    }
+}
diff --git a/src/osgEarth/DrapeableNode b/src/osgEarth/DrapeableNode
index 465e0da..00bdfcd 100644
--- a/src/osgEarth/DrapeableNode
+++ b/src/osgEarth/DrapeableNode
@@ -21,24 +21,30 @@
 #define OSGEARTH_DRAPEABLE_NODE_H 1
 
 #include <osgEarth/Common>
-#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osg/Group>
 
 namespace osgEarth
 {
+    class MapNode;
+
     /**
-     * Base class for a node that can be "draped" on the MapNode terrain
+     * Base class for a graph that can be "draped" on the MapNode terrain
      * using the overlay decorator.
+     *
+     * Usage: Create this node and put it anywhere in the scene graph. The
+     * subgraph of this node will be draped on the MapNode's terrain.
      */
-    class OSGEARTH_EXPORT DrapeableNode : public osg::Group
+    class OSGEARTH_EXPORT DrapeableNode : public osg::Group, public MapNodeObserver
     {
     public:
-        DrapeableNode( MapNode* mapNode =0L, bool draped =true );
-
         /**
-         * The node to drape (or not) on the MapNode terrain.
+         * Constructs a new drapeable node.
          */
-        void setNode( osg::Node* node );
-        osg::Node* getNode() const { return _node.get(); }
+        DrapeableNode( MapNode* mapNode, bool draped =true );
+
+        /** dtor */
+        virtual ~DrapeableNode() { }
 
         /**
          * Whether to drape the node content on the mapnode terrain.
@@ -46,24 +52,32 @@ namespace osgEarth
         void setDraped( bool value );
         bool getDraped() const { return _draped; }
 
-    public:
+    public: // MapNodeObserver
+
+        void setMapNode( MapNode* mapNode );
+
+        MapNode* getMapNode() { return _mapNode.get(); }
+
+    public: // osg::Node
+
         virtual void traverse( osg::NodeVisitor& nv );
 
-    protected:
-        osg::observer_ptr<MapNode> _mapNode;
+    public: // osg::Group
+
+        // override these in order to manage the proxy container.
+        virtual bool addChild( osg::Node* child );
+        virtual bool insertChild( unsigned index, osg::Node* child );
+        virtual bool removeChild( osg::Node* child );
+        virtual bool replaceChild( osg::Node* origChild, osg::Node* newChild );
 
     private:
         bool                       _draped;
-        osg::ref_ptr<osg::Node>    _node;
-        osg::ref_ptr<osg::Group>   _nodeContainer;
-
-        int                     _dirty;
-        bool                    _newDraped;
-        osg::ref_ptr<osg::Node> _newNode;
+        bool                       _dirty;
+        bool                       _newDraped;
+        osg::ref_ptr<osg::Group>   _overlayProxyContainer;
+        osg::observer_ptr<MapNode> _mapNode;
 
         void applyChanges();
-        void setNodeImpl( osg::Node* );
-        void setDrapedImpl( bool );
     };
 
 } // namespace osgEarth
diff --git a/src/osgEarth/DrapeableNode.cpp b/src/osgEarth/DrapeableNode.cpp
index 58703bd..6dee4fd 100644
--- a/src/osgEarth/DrapeableNode.cpp
+++ b/src/osgEarth/DrapeableNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,13 +18,132 @@
  */
 
 #include <osgEarth/DrapeableNode>
-#include <osgEarth/Utils>
-#include <osgEarth/FindNode>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/OverlayDecorator>
+#include <osgEarth/MapNode>
+#include <osgEarth/NodeUtils>
+#include <osgUtil/IntersectionVisitor>
+
+#define LC "[DrapeableNode] "
 
 using namespace osgEarth;
 
+namespace
+{
+#if 0
+    // Custom group that limits traversals to CULL and any visitor internal to
+    // the operation of the OverlayDecorator.
+    struct OverlayTraversalGroup : public osg::Group {
+        virtual void traverse(osg::NodeVisitor& nv) {
+            if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR ||  
+                 dynamic_cast<OverlayDecorator::InternalNodeVisitor*>(&nv) )
+            {
+                osg::Group::traverse(nv);
+            }
+        }
+    };
+#endif
+
+    struct OverlayProxy : public osg::Group
+    {
+        OverlayProxy( osg::Node* owner ) 
+            : _owner(owner) { }
+
+        void traverse(osg::NodeVisitor& nv)
+        {
+            // only allow CULL and OD-internal traversal:
+            if ( dynamic_cast<OverlayDecorator::InternalNodeVisitor*>(&nv) )
+            {
+                osg::Group::traverse( nv );
+            }
+            else if ( nv.getVisitorType() == nv.CULL_VISITOR && _owner.valid() )
+            {
+                // first find the highest ancestor in the owner's node parental node path that does
+                // not occur in the visitor's node path. That is where we want to begin collecting
+                // state.
+                const osg::NodePath& visitorPath = nv.getNodePath();
+
+                // get the owner's node path (just use the first one)
+                osg::NodePathList ownerPaths;
+                ownerPaths = _owner->getParentalNodePaths();
+
+                // note: I descovered that getParentalNodePaths will stop when it finds an "invalid"
+                // node mask (e.g., == zero).. so indeed it's possible for there to be zero node paths.
+                if ( ownerPaths.size() > 0 )
+                {
+                    const osg::NodePath& ownerPath = ownerPaths[0];
+
+                    // first check the owner's traversal mask.
+                    bool visible = true;
+                    for( int k = 0; visible && k < ownerPath.size(); ++k )
+                    {
+                        visible = nv.validNodeMask(*ownerPath[k]);
+                    }
+
+                    if ( visible )
+                    {
+                        // find the intersection point:
+                        int i = findIndexOfNodePathConvergence( visitorPath, ownerPath );
+
+                        if ( i >= 0 && i < ownerPath.size()-1 )
+                        {
+                            osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>(&nv);
+
+                            int pushes = 0;
+                            for( int k = i+1; k < ownerPath.size(); ++k )
+                            {
+                                osg::Node* node = ownerPath[k];
+                                osg::StateSet* ss = ownerPath[k]->getStateSet();
+                                if ( ss )
+                                {
+                                    cv->pushStateSet( ss );
+                                    ++pushes;
+                                }
+                            }
+                        
+                            osg::Group::traverse( nv );
+
+                            for( int k = 0; k < pushes; ++k )
+                            {
+                                cv->popStateSet();
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+
+        // returns the deepest index into the ownerPath at which the two paths converge
+        // (i.e. share a node pointer)
+        int findIndexOfNodePathConvergence(const osg::NodePath& visitorPath, const osg::NodePath& ownerPath)
+        {
+            // use the knowledge that a NodePath is a vector.
+
+            for( int vi = visitorPath.size()-1; vi >= 0; --vi )
+            {
+                osg::Node* visitorNode = visitorPath[vi];
+                for( int oi = ownerPath.size()-1; oi >= 0; --oi )
+                {
+                    if ( ownerPath[oi] == visitorNode )
+                    {
+                        // found the deepest intersection, so set the start index to one higher.
+                        return oi;
+                    }
+                }
+            }   
+
+            // no convergence. 
+            return -1;
+        }
+
+        osg::observer_ptr<osg::Node> _owner;
+    };
+}
+
+//------------------------------------------------------------------------
+
 DrapeableNode::DrapeableNode( MapNode* mapNode, bool draped ) :
-_mapNode  ( mapNode ),
 _newDraped( draped ),
 _draped   ( false ),
 _dirty    ( false )
@@ -32,124 +151,153 @@ _dirty    ( false )
     // create a container group that will house the culler. This culler
     // allows a draped node, which sits under the MapNode's OverlayDecorator,
     // to "track" the traversal state of the DrapeableNode itself.
-    _nodeContainer = new osg::Group();
-    _nodeContainer->setCullCallback( new CullNodeByFrameNumber() );
-    _nodeContainer->setStateSet( this->getOrCreateStateSet() ); // share the stateset
-}
+    _overlayProxyContainer = new OverlayProxy( this );
 
-void
-DrapeableNode::applyChanges()
-{    
-    if ( _newDraped != _draped )
-    {
-        setDrapedImpl( _newDraped );
-    }
+    setMapNode( mapNode );
 
-    if ( _newNode.valid() )
+    if ( mapNode )
     {
-        setNodeImpl( _newNode.get() );
-        _newNode = 0L;
+        // If draping is requested, set up to apply it on the first update traversal.
+        // Can't apply it until then since we need safe access to the MapNode.
+        setDraped( draped );
     }
-}
-
-void
-DrapeableNode::setNode( osg::Node* node )
-{
-    _newNode = node;
-    if ( !_dirty )
+    else
     {
-        _dirty = true;
-        ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+        OE_DEBUG << LC << "Creates a drapeable without a MapNode; draping will be disabled" << std::endl;
     }
 }
 
 void
-DrapeableNode::setDraped( bool draped )
+DrapeableNode::setMapNode( MapNode* mapNode )
 {
-    _newDraped = draped;
-    if ( !_dirty )
+    MapNode* oldMapNode = getMapNode();
+
+    if ( oldMapNode != mapNode )
     {
-        _dirty = true;
-        ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+        if ( oldMapNode && _draped && _overlayProxyContainer->getNumParents() > 0 )
+        {
+            oldMapNode->getOverlayGroup()->removeChild( _overlayProxyContainer.get() );
+            oldMapNode->updateOverlayGraph();
+        }
+
+        _mapNode = mapNode;
+
+        applyChanges();
     }
 }
 
 void
-DrapeableNode::setNodeImpl( osg::Node* node )
+DrapeableNode::applyChanges()
 {
-    if ( _node.valid() )
+    _draped = _newDraped;
+
+    if ( getMapNode() )
     {
-        if ( _draped && _mapNode.valid() )
+        if ( _draped && _overlayProxyContainer->getNumParents() == 0 )
         {
-            _mapNode->getOverlayGroup()->removeChild( _nodeContainer.get() );
-            _mapNode->updateOverlayGraph();
+            getMapNode()->getOverlayGroup()->addChild( _overlayProxyContainer.get() );
+            getMapNode()->updateOverlayGraph();
         }
-        else
+        else if ( !_draped && _overlayProxyContainer->getNumParents() > 0 )
         {
-            this->removeChild( _node.get() );
+            getMapNode()->getOverlayGroup()->removeChild( _overlayProxyContainer.get() );
+            getMapNode()->updateOverlayGraph();
         }
-    }
 
-    _node = node;
-    _nodeContainer->removeChildren( 0, _nodeContainer->getNumChildren() );
+        dirtyBound();
+    }
+}
 
-    if ( _node.valid() )
-    {
-        if ( _draped && _mapNode.valid() )
-        {
-            _nodeContainer->addChild( _node.get() );
-            _mapNode->getOverlayGroup()->addChild( _nodeContainer.get() );
-            _mapNode->updateOverlayGraph();
-        }
-        else
+void
+DrapeableNode::setDraped( bool draped )
+{    
+    if ( draped != _draped && getMapNode() )
+    {        
+        _newDraped = draped;
+        if ( !_dirty )
         {
-            this->addChild( _node.get() );
-        }
+            _dirty = true;
+            ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+        }        
     }
 }
 
-void
-DrapeableNode::setDrapedImpl( bool value )
+bool
+DrapeableNode::addChild( osg::Node* child )
 {
-    if ( _draped != value )
-    {
-        osg::ref_ptr<osg::Node> save = _node.get();
-        if ( save.valid() )
-            setNode( 0L );
+    bool ok = osg::Group::addChild( child );
+    if ( _overlayProxyContainer.valid() )
+        _overlayProxyContainer->addChild( child );
+    return ok;
+}
 
-        _draped = value;
+bool
+DrapeableNode::insertChild( unsigned i, osg::Node* child )
+{
+    bool ok = osg::Group::insertChild( i, child );
+    if ( _overlayProxyContainer.valid() )
+        _overlayProxyContainer->insertChild( i, child );
+    return ok;
+}
 
-        if ( save.valid() )
-            setNode( save.get() );
-    }
+bool
+DrapeableNode::removeChild( osg::Node* child )
+{
+    bool ok = osg::Group::removeChild( child );
+    if ( _overlayProxyContainer.valid() )
+        _overlayProxyContainer->removeChild( child );
+    return ok;
 }
 
+bool
+DrapeableNode::replaceChild( osg::Node* oldChild, osg::Node* newChild )
+{
+    bool ok = osg::Group::replaceChild( oldChild, newChild );
+    if ( _overlayProxyContainer.valid() )
+        _overlayProxyContainer->replaceChild( oldChild, newChild );
+    return ok;
+}
 
 void
 DrapeableNode::traverse( osg::NodeVisitor& nv )
 {
-    if ( _draped && nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR && _node.valid() && _mapNode.valid() )
+    if ( !_overlayProxyContainer.valid() )
     {
-        CullNodeByFrameNumber* cb = static_cast<CullNodeByFrameNumber*>(_nodeContainer->getCullCallback());
-        cb->_frame = nv.getFrameStamp()->getFrameNumber();
+        osg::Group::traverse( nv );
     }
-
-    if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+    else
     {
-        if ( _dirty )
+        if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
         {
-            applyChanges();
+            if ( _draped )
+            {
+                // do nothing -- culling will happen via the OverlayProxy instead.
+            }
+            else
+            {
+                // for a non-draped node, just traverse children as usual.
+                osg::Group::traverse( nv );
+            }
+        }
 
-            _dirty = false;
-            ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+        else if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+        {
+            if ( _dirty )
+            {
+                applyChanges();
+                _dirty = false;
+                ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+            }
+            
+            // traverse children directly, regardles of draped status
+            osg::Group::traverse( nv );
         }
 
-        // traverse the subgraph
-        if ( _nodeContainer.valid() && this->getNumChildrenRequiringUpdateTraversal() > 0 )
+        // handle other visitor types (like intersections, etc) by simply
+        // traversing the child graph.
+        else // if ( nv.getNodeVisitor() == osg::NodeVisitor::NODE_VISITOR )
         {
-            _nodeContainer->accept( nv );
+            osg::Group::traverse( nv );
         }
     }
-
-    osg::Group::traverse( nv );
 }
diff --git a/src/osgEarth/DrawInstanced b/src/osgEarth/DrawInstanced
new file mode 100644
index 0000000..e74d3f4
--- /dev/null
+++ b/src/osgEarth/DrawInstanced
@@ -0,0 +1,80 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_DRAW_INSTANCED_H
+#define OSGEARTH_DRAW_INSTANCED_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/ShaderComposition>
+#include <osg/NodeVisitor>
+#include <osg/Geode>
+
+/**
+ * Some utilities to support *DrawInstanced rendering.
+ */
+namespace osgEarth
+{
+    namespace DrawInstanced
+    {
+        /**
+         * Visitor that converts all the primitive sets in a graph to use
+         * instanced draw calls.
+         * Called by convertGraphToUseDrawInstanced().
+         */
+        class OSGEARTH_EXPORT ConvertToDrawInstanced : public osg::NodeVisitor
+        {
+        public:
+            /**
+             * Create the visitor that will convert primitive sets to draw
+             * <num> instances.
+             */
+            ConvertToDrawInstanced(
+                unsigned                numInstances,
+                const osg::BoundingBox& bbox,
+                bool                    optimize );
+
+            void apply(osg::Geode&);
+
+        protected:
+            unsigned _numInstances;
+            bool     _optimize;
+            osg::ref_ptr<osg::Drawable::ComputeBoundingBoxCallback> _staticBBoxCallback;
+        };
+
+
+        /**
+         * Creates a virtual shader program that implements DrawInstanced rendering.
+         * You should prepare the scene graph with the ConvertToDrawInstanced
+         * visitor first.
+         * Called by convertGraphToUseDrawInstanced().
+         */
+        extern OSGEARTH_EXPORT VirtualProgram* createDrawInstancedProgram();
+
+
+        /**
+         * Processes a scene graph and converts all the top-level MatrixTransform
+         * nodes into shader uniforms that can be used with the VirtualProgram
+         * created by createDrawInstacedShaders.
+         */
+        extern OSGEARTH_EXPORT void convertGraphToUseDrawInstanced( 
+            osg::Group* graph );
+    }
+}
+
+#endif // OSGEARTH_DRAW_INSTANCED_H
diff --git a/src/osgEarth/DrawInstanced.cpp b/src/osgEarth/DrawInstanced.cpp
new file mode 100644
index 0000000..b51c301
--- /dev/null
+++ b/src/osgEarth/DrawInstanced.cpp
@@ -0,0 +1,280 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/DrawInstanced>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/ShaderUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+
+#include <osg/ComputeBoundsVisitor>
+#include <osg/MatrixTransform>
+#include <osg/BufferIndexBinding>
+#include <osgUtil/MeshOptimizers>
+
+#define MAX_COUNT_UBO   (Registry::capabilities().getMaxUniformBlockSize()/64)
+#define MAX_COUNT_ARRAY 128 // max size of a mat4 uniform array...how to query?
+
+using namespace osgEarth;
+using namespace osgEarth::DrawInstanced;
+
+
+//----------------------------------------------------------------------
+
+namespace
+{
+    typedef std::map< osg::ref_ptr<osg::Node>, std::vector<osg::Matrix> > ModelNodeMatrices;
+    
+    /**
+     * Simple bbox callback to return a static bbox.
+     */
+    struct StaticBoundingBox : public osg::Drawable::ComputeBoundingBoxCallback
+    {
+        osg::BoundingBox _bbox;
+        StaticBoundingBox( const osg::BoundingBox& bbox ) : _bbox(bbox) { }
+        osg::BoundingBox computeBound(const osg::Drawable&) const { return _bbox; }
+    };
+}
+
+//----------------------------------------------------------------------
+
+
+ConvertToDrawInstanced::ConvertToDrawInstanced(unsigned                numInstances,
+                                               const osg::BoundingBox& bbox,
+                                               bool                    optimize ) :
+osg::NodeVisitor ( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+_numInstances    ( numInstances ),
+_optimize        ( optimize )
+{
+    _staticBBoxCallback = new StaticBoundingBox(bbox);
+}
+
+
+void 
+ConvertToDrawInstanced::apply( osg::Geode& geode )
+{
+    for( unsigned d=0; d<geode.getNumDrawables(); ++d )
+    {
+        osg::Geometry* geom = geode.getDrawable(d)->asGeometry();
+        if ( geom )
+        {
+            if ( _optimize )
+            {
+                // convert to triangles
+                osgUtil::IndexMeshVisitor imv;
+                imv.makeMesh( *geom );
+
+                // activate VBOs
+                geom->setUseDisplayList( false );
+                geom->setUseVertexBufferObjects( true );
+            }
+
+            geom->setComputeBoundingBoxCallback( _staticBBoxCallback.get() ); 
+            geom->dirtyBound();
+
+            // convert to use DrawInstanced
+            for( unsigned p=0; p<geom->getNumPrimitiveSets(); ++p )
+            {
+                geom->getPrimitiveSet(p)->setNumInstances( _numInstances );
+            }
+        }
+    }
+
+    traverse(geode);
+}
+
+
+VirtualProgram*
+DrawInstanced::createDrawInstancedProgram()
+{
+    VirtualProgram* vp = new VirtualProgram();
+    vp->setName( "DrawInstanced" );
+
+    std::stringstream buf;
+
+    buf << "#version 120 \n"
+        << "#extension GL_EXT_gpu_shader4 : enable \n";
+        //<< "#extension GL_EXT_draw_instanced : enable\n";
+
+    if ( Registry::capabilities().supportsUniformBufferObjects() )
+    {
+        buf << "#extension GL_ARB_uniform_buffer_object : enable\n"
+            << "layout(std140) uniform osgearth_InstanceModelData\n"
+            << "{\n"
+            <<     "mat4 osgearth_instanceModelMatrix[ " << MAX_COUNT_UBO << "];\n"
+            << "};\n";
+
+        vp->getTemplate()->addBindUniformBlock( "osgearth_InstanceModelData", 0 );
+    }
+    else
+    {
+        buf << "uniform mat4 osgearth_instanceModelMatrix[" << MAX_COUNT_ARRAY << "];\n";
+    }
+
+    buf << "void osgearth_setInstancePosition()\n"
+        << "{\n"
+        << "    gl_Position = gl_ModelViewProjectionMatrix * osgearth_instanceModelMatrix[gl_InstanceID] * gl_Vertex; \n"
+        << "}\n";
+
+    std::string src;
+    src = buf.str();
+
+    vp->setFunction(
+        "osgearth_setInstancePosition",
+        src,
+        ShaderComp::LOCATION_VERTEX_PRE_COLORING );
+
+    return vp;
+}
+
+
+void
+DrawInstanced::convertGraphToUseDrawInstanced( osg::Group* parent )
+{
+    // place a static bounding sphere on the graph since we intend to alter
+    // the structure of the subgraph.
+    const osg::BoundingSphere& bs = parent->getBound();
+    parent->setComputeBoundingSphereCallback( new StaticBound(bs) );
+    parent->dirtyBound();
+
+    ModelNodeMatrices models;
+
+    // collect the matrices for all the MT's under the parent. Obviously this assumes
+    // a particular scene graph structure.
+    for( unsigned i=0; i < parent->getNumChildren(); ++i )
+    {
+        // each MT in the group parents the same child.
+        osg::MatrixTransform* mt = dynamic_cast<osg::MatrixTransform*>( parent->getChild(i) );
+        if ( mt )
+        {
+            osg::Node* n = mt->getChild(0);
+            models[n].push_back( mt->getMatrix() );
+        }
+    }
+
+    // get rid of the old matrix transforms.
+    parent->removeChildren(0, parent->getNumChildren());
+
+    // whether to use UBOs.
+    bool useUBO = Registry::capabilities().supportsUniformBufferObjects();
+
+    // maximum size of a slice.
+    // for UBOs, assume 64K / sizeof(mat4) = 1024.
+    // for uniform array, assume 8K / sizeof(mat4) = 128.
+    unsigned maxSliceSize = useUBO ? MAX_COUNT_UBO : MAX_COUNT_ARRAY;
+
+    // For each model:
+    for( ModelNodeMatrices::iterator i = models.begin(); i != models.end(); ++i )
+    {
+        osg::Node*                node     = i->first.get();
+        std::vector<osg::Matrix>& matrices = i->second;
+
+        // calculate the overall bounding box for the model:
+        osg::ComputeBoundsVisitor cbv;
+        node->accept( cbv );
+        const osg::BoundingBox& nodeBox = cbv.getBoundingBox();
+
+        osg::BoundingBox bbox;
+        for( std::vector<osg::Matrix>::iterator m = matrices.begin(); m != matrices.end(); ++m )
+        {
+            osg::Matrix& matrix = *m;
+            bbox.expandBy(nodeBox.corner(0) * matrix);
+            bbox.expandBy(nodeBox.corner(1) * matrix);
+            bbox.expandBy(nodeBox.corner(2) * matrix);
+            bbox.expandBy(nodeBox.corner(3) * matrix);
+            bbox.expandBy(nodeBox.corner(4) * matrix);
+            bbox.expandBy(nodeBox.corner(5) * matrix);
+            bbox.expandBy(nodeBox.corner(6) * matrix);
+            bbox.expandBy(nodeBox.corner(7) * matrix);
+        }
+
+        // calculate slice count and sizes:
+        unsigned sliceSize = std::min(matrices.size(), (size_t)maxSliceSize);
+        unsigned numSlices = matrices.size() / maxSliceSize;
+        unsigned lastSliceSize = matrices.size() % maxSliceSize;
+        if ( lastSliceSize == 0 )
+            lastSliceSize = sliceSize;
+        else
+            ++numSlices;
+
+        // Convert the node's primitive sets to use "draw-instanced" rendering; at the
+        // same time, assign our computed bounding box as the static bounds for all
+        // geometries. (As DI's they cannot report bounds naturally.)
+        ConvertToDrawInstanced cdi(sliceSize, bbox, true);
+        node->accept( cdi );
+
+        // If we don't have an even number of instance groups, make a smaller last one.
+        osg::Node* lastNode = node;
+        if ( numSlices > 1 && lastSliceSize < sliceSize )
+        {
+            // clone, but only make copies of necessary things
+            lastNode = osg::clone( 
+                node, 
+                osg::CopyOp::DEEP_COPY_NODES | osg::CopyOp::DEEP_COPY_DRAWABLES | osg::CopyOp::DEEP_COPY_PRIMITIVES );
+
+            ConvertToDrawInstanced cdi(lastSliceSize, bbox, false);
+            lastNode->accept( cdi );
+        }
+
+        // Next, break the rendering down into "slices". GLSL will only support a limited
+        // amount of pre-instance uniform data, so we have to portion the graph out into
+        // slices of no more than this chunk size.
+        for( unsigned slice = 0; slice < numSlices; ++slice )
+        {
+            unsigned   offset      = slice * sliceSize;
+            unsigned   currentSize = slice == numSlices-1 ? lastSliceSize : sliceSize;
+            osg::Node* currentNode = slice == numSlices-1 ? lastNode      : node;
+
+            // this group is simply a container for the uniform:
+            osg::Group* sliceGroup = new osg::Group();
+
+            if ( useUBO ) // uniform buffer object:
+            {
+                osg::MatrixfArray* mats = new osg::MatrixfArray();
+                mats->setBufferObject( new osg::UniformBufferObject() );
+                // 64 = sizeof(mat4)
+                osg::UniformBufferBinding* ubb = new osg::UniformBufferBinding( 0, mats->getBufferObject(), 0, currentSize * 64 );
+                sliceGroup->getOrCreateStateSet()->setAttribute( ubb, osg::StateAttribute::ON );
+                for( unsigned m=0; m < currentSize; ++m )
+                {
+                    mats->push_back( matrices[offset + m] );
+                }
+                ubb->setDataVariance( osg::Object::DYNAMIC );
+            }
+            else // just use a uniform array
+            {
+                // assign the matrices to the uniform array:
+                ArrayUniform uniform(
+                    "osgearth_instanceModelMatrix", 
+                    osg::Uniform::FLOAT_MAT4,
+                    sliceGroup->getOrCreateStateSet(),
+                    currentSize );
+
+                for( unsigned m=0; m < currentSize; ++m )
+                {
+                    uniform.setElement( m, matrices[offset + m] );
+                }
+            }
+
+            // add the node as a child:
+            sliceGroup->addChild( currentNode );
+
+            parent->addChild( sliceGroup );
+        }
+    }
+}
diff --git a/src/osgEarth/ECEF b/src/osgEarth/ECEF
index a2a89fe..6e0529d 100644
--- a/src/osgEarth/ECEF
+++ b/src/osgEarth/ECEF
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,7 +32,7 @@ namespace osgEarth
          * Creates a "localization" matrix for double-precision geocentric
          * coordinates. The matrix is ceneterd at the specified ECEF reference point.
          */
-        static osg::Matrixd createInverseRefFrame( 
+        static osg::Matrixd createLocalToWorld( 
             const osg::Vec3d& ecefRefPoint );
 
         /**
@@ -41,8 +41,8 @@ namespace osgEarth
          */
         static void transformAndLocalize(
             const osg::Vec3d&       input,
+            const SpatialReference* inputSRS,
             osg::Vec3d&             output,
-            const SpatialReference* srs,
             const osg::Matrixd&     world2local =osg::Matrixd() );
 
         /**
@@ -51,8 +51,8 @@ namespace osgEarth
          */
         static void transformAndLocalize(
             const std::vector<osg::Vec3d>& input,
+            const SpatialReference*        inputSRS,
             osg::Vec3Array*                output,
-            const SpatialReference*        srs,
             const osg::Matrixd&            world2local =osg::Matrixd() );
 
         /**
@@ -60,8 +60,8 @@ namespace osgEarth
          * rotates the point into the local tangent place at that point.
          */
         static void transformAndGetRotationMatrix(
-            const SpatialReference* input_srs,
             const osg::Vec3d&       input,
+            const SpatialReference* input_srs,
             osg::Vec3d&             out_ecef_point,
             osg::Matrixd&           out_rotation );
 
diff --git a/src/osgEarth/ECEF.cpp b/src/osgEarth/ECEF.cpp
index 5ac843c..d951c0a 100644
--- a/src/osgEarth/ECEF.cpp
+++ b/src/osgEarth/ECEF.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -27,9 +27,8 @@ using namespace osgEarth;
 
 
 osg::Matrixd
-ECEF::createInverseRefFrame( const osg::Vec3d& input )
+ECEF::createLocalToWorld( const osg::Vec3d& input )
 {
-    // convert to geocentric first:
     double X = input.x(), Y = input.y(), Z = input.z();
 
     osg::Matrixd localToWorld;
@@ -69,44 +68,44 @@ ECEF::createInverseRefFrame( const osg::Vec3d& input )
 
 void
 ECEF::transformAndLocalize(const osg::Vec3d&       input,
+                           const SpatialReference* inputSRS,
                            osg::Vec3d&             output,
-                           const SpatialReference* srs,
                            const osg::Matrixd&     world2local)
 {
     osg::Vec3d ecef;
-    srs->transformToECEF( input, ecef );
+    inputSRS->transformToECEF( input, ecef );
     output = ecef * world2local;
 }
 
 
 void
 ECEF::transformAndLocalize(const std::vector<osg::Vec3d>& input,
+                           const SpatialReference*        inputSRS,
                            osg::Vec3Array*                output,
-                           const SpatialReference*        srs,
                            const osg::Matrixd&            world2local )
 {
     output->reserve( output->size() + input.size() );
     for( std::vector<osg::Vec3d>::const_iterator i = input.begin(); i != input.end(); ++i )
     {
         osg::Vec3d ecef;
-        srs->transformToECEF( *i, ecef );
+        inputSRS->transformToECEF( *i, ecef );
         output->push_back( ecef * world2local );
     }
 }
 
 void
-ECEF::transformAndGetRotationMatrix(const SpatialReference* srs,
-                                    const osg::Vec3d&       input,
+ECEF::transformAndGetRotationMatrix(const osg::Vec3d&       input,
+                                    const SpatialReference* inputSRS,
                                     osg::Vec3d&             out_point,
                                     osg::Matrixd&           out_rotation )
 {
     osg::Vec3d geod_point;
-    if ( !srs->isGeographic() )
-        srs->transform( input, srs->getGeographicSRS(), geod_point );
+    if ( !inputSRS->isGeographic() )
+        inputSRS->transform( input, inputSRS->getGeographicSRS(), geod_point );
     else
         geod_point = input;
 
-    const osg::EllipsoidModel* em = srs->getEllipsoid();
+    const osg::EllipsoidModel* em = inputSRS->getEllipsoid();
     
     em->convertLatLongHeightToXYZ(
         osg::DegreesToRadians( geod_point.y() ),
diff --git a/src/osgEarth/EGM b/src/osgEarth/EGM
deleted file mode 100644
index c4488e4..0000000
--- a/src/osgEarth/EGM
+++ /dev/null
@@ -1,37 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTH_EGM
-#define OSGEARTH_EGM
-
-#include <osgEarth/Common>
-#include <osgEarth/GeoData>
-
-namespace osgEarth
-{
-    /**
-     * The EGM96 geoid 
-     * http://cddis.nasa.gov/926/egm96/egm96.html
-     */
-    struct EGM96Geoid : public Geoid
-    {
-        EGM96Geoid();
-    };
-}
-
-#endif // OSGEARTH_EGM
diff --git a/src/osgEarth/EGM.cpp b/src/osgEarth/EGM.cpp
deleted file mode 100644
index 3f3ab09..0000000
--- a/src/osgEarth/EGM.cpp
+++ /dev/null
@@ -1,64991 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarth/EGM>
-#include <osgEarth/GeoData>
-#include <osgEarth/SpatialReference>
-#include <osgEarth/ThreadingUtils>
-
-#define EGM96_COLS 1441
-#define EGM96_ROWS 721
-#define EGM96_INTERVAL 0.25 // degrees
-
-using namespace osgEarth;
-
-static float egm96[1038961] = {
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,13.606,
-13.606,13.903,13.902,13.901,13.900,13.899,13.897,13.896,13.895,13.894,13.893,13.892,13.891,13.890,13.889,13.888,
-13.887,13.886,13.884,13.883,13.882,13.881,13.880,13.879,13.878,13.876,13.875,13.874,13.873,13.872,13.871,13.869,
-13.868,13.867,13.866,13.865,13.863,13.862,13.861,13.860,13.859,13.857,13.856,13.855,13.854,13.852,13.851,13.850,
-13.849,13.847,13.846,13.845,13.844,13.842,13.841,13.840,13.839,13.837,13.836,13.835,13.833,13.832,13.831,13.830,
-13.828,13.827,13.826,13.824,13.823,13.822,13.820,13.819,13.818,13.816,13.815,13.814,13.812,13.811,13.810,13.808,
-13.807,13.806,13.804,13.803,13.802,13.800,13.799,13.798,13.796,13.795,13.794,13.792,13.791,13.790,13.788,13.787,
-13.785,13.784,13.783,13.781,13.780,13.779,13.777,13.776,13.775,13.773,13.772,13.770,13.769,13.768,13.766,13.765,
-13.764,13.762,13.761,13.760,13.758,13.757,13.755,13.754,13.753,13.751,13.750,13.749,13.747,13.746,13.745,13.743,
-13.742,13.741,13.739,13.738,13.737,13.735,13.734,13.732,13.731,13.730,13.728,13.727,13.726,13.724,13.723,13.722,
-13.720,13.719,13.718,13.716,13.715,13.714,13.712,13.711,13.710,13.709,13.707,13.706,13.705,13.703,13.702,13.701,
-13.699,13.698,13.697,13.696,13.694,13.693,13.692,13.690,13.689,13.688,13.687,13.685,13.684,13.683,13.682,13.680,
-13.679,13.678,13.677,13.675,13.674,13.673,13.672,13.670,13.669,13.668,13.667,13.665,13.664,13.663,13.662,13.661,
-13.659,13.658,13.657,13.656,13.655,13.653,13.652,13.651,13.650,13.649,13.648,13.646,13.645,13.644,13.643,13.642,
-13.641,13.640,13.638,13.637,13.636,13.635,13.634,13.633,13.632,13.631,13.629,13.628,13.627,13.626,13.625,13.624,
-13.623,13.622,13.621,13.620,13.619,13.618,13.617,13.615,13.614,13.613,13.612,13.611,13.610,13.609,13.608,13.607,
-13.606,13.605,13.604,13.603,13.602,13.601,13.600,13.599,13.598,13.597,13.596,13.595,13.594,13.593,13.592,13.591,
-13.590,13.590,13.589,13.588,13.587,13.586,13.585,13.584,13.583,13.582,13.581,13.580,13.579,13.578,13.578,13.577,
-13.576,13.575,13.574,13.573,13.572,13.571,13.571,13.570,13.569,13.568,13.567,13.566,13.565,13.565,13.564,13.563,
-13.562,13.561,13.560,13.560,13.559,13.558,13.557,13.556,13.556,13.555,13.554,13.553,13.552,13.552,13.551,13.550,
-13.549,13.549,13.548,13.547,13.546,13.546,13.545,13.544,13.543,13.543,13.542,13.541,13.540,13.540,13.539,13.538,
-13.538,13.537,13.536,13.535,13.535,13.534,13.533,13.533,13.532,13.531,13.531,13.530,13.529,13.528,13.528,13.527,
-13.526,13.526,13.525,13.524,13.524,13.523,13.523,13.522,13.521,13.521,13.520,13.519,13.519,13.518,13.517,13.517,
-13.516,13.516,13.515,13.514,13.514,13.513,13.512,13.512,13.511,13.511,13.510,13.509,13.509,13.508,13.508,13.507,
-13.506,13.506,13.505,13.505,13.504,13.504,13.503,13.502,13.502,13.501,13.501,13.500,13.500,13.499,13.499,13.498,
-13.497,13.497,13.496,13.496,13.495,13.495,13.494,13.494,13.493,13.493,13.492,13.491,13.491,13.490,13.490,13.489,
-13.489,13.488,13.488,13.487,13.487,13.486,13.486,13.485,13.485,13.484,13.484,13.483,13.483,13.482,13.482,13.481,
-13.481,13.480,13.480,13.479,13.479,13.478,13.478,13.477,13.477,13.476,13.476,13.476,13.475,13.475,13.474,13.474,
-13.473,13.473,13.472,13.472,13.471,13.471,13.470,13.470,13.470,13.469,13.469,13.468,13.468,13.467,13.467,13.466,
-13.466,13.466,13.465,13.465,13.464,13.464,13.463,13.463,13.463,13.462,13.462,13.461,13.461,13.460,13.460,13.460,
-13.459,13.459,13.458,13.458,13.458,13.457,13.457,13.456,13.456,13.456,13.455,13.455,13.454,13.454,13.454,13.453,
-13.453,13.453,13.452,13.452,13.451,13.451,13.451,13.450,13.450,13.450,13.449,13.449,13.449,13.448,13.448,13.448,
-13.447,13.447,13.447,13.446,13.446,13.446,13.445,13.445,13.445,13.444,13.444,13.444,13.443,13.443,13.443,13.442,
-13.442,13.442,13.441,13.441,13.441,13.441,13.440,13.440,13.440,13.439,13.439,13.439,13.439,13.438,13.438,13.438,
-13.438,13.437,13.437,13.437,13.437,13.436,13.436,13.436,13.436,13.436,13.435,13.435,13.435,13.435,13.435,13.434,
-13.434,13.434,13.434,13.434,13.433,13.433,13.433,13.433,13.433,13.433,13.432,13.432,13.432,13.432,13.432,13.432,
-13.432,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.430,13.430,13.430,13.430,13.430,
-13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.430,
-13.430,13.430,13.430,13.430,13.430,13.430,13.430,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.431,13.431,
-13.432,13.432,13.432,13.432,13.432,13.432,13.432,13.433,13.433,13.433,13.433,13.433,13.434,13.434,13.434,13.434,
-13.435,13.435,13.435,13.435,13.436,13.436,13.436,13.436,13.437,13.437,13.437,13.438,13.438,13.438,13.439,13.439,
-13.439,13.440,13.440,13.440,13.441,13.441,13.442,13.442,13.442,13.443,13.443,13.444,13.444,13.445,13.445,13.445,
-13.446,13.446,13.447,13.447,13.448,13.448,13.449,13.449,13.450,13.450,13.451,13.452,13.452,13.453,13.453,13.454,
-13.454,13.455,13.456,13.456,13.457,13.458,13.458,13.459,13.459,13.460,13.461,13.461,13.462,13.463,13.464,13.464,
-13.465,13.466,13.466,13.467,13.468,13.469,13.469,13.470,13.471,13.472,13.473,13.473,13.474,13.475,13.476,13.477,
-13.477,13.478,13.479,13.480,13.481,13.482,13.483,13.484,13.484,13.485,13.486,13.487,13.488,13.489,13.490,13.491,
-13.492,13.493,13.494,13.495,13.496,13.497,13.498,13.499,13.500,13.501,13.502,13.503,13.504,13.505,13.506,13.507,
-13.508,13.509,13.510,13.511,13.512,13.513,13.515,13.516,13.517,13.518,13.519,13.520,13.521,13.522,13.524,13.525,
-13.526,13.527,13.528,13.529,13.531,13.532,13.533,13.534,13.535,13.537,13.538,13.539,13.540,13.542,13.543,13.544,
-13.545,13.547,13.548,13.549,13.550,13.552,13.553,13.554,13.556,13.557,13.558,13.559,13.561,13.562,13.563,13.565,
-13.566,13.567,13.569,13.570,13.571,13.573,13.574,13.575,13.577,13.578,13.580,13.581,13.582,13.584,13.585,13.586,
-13.588,13.589,13.591,13.592,13.593,13.595,13.596,13.598,13.599,13.601,13.602,13.603,13.605,13.606,13.608,13.609,
-13.611,13.612,13.613,13.615,13.616,13.618,13.619,13.621,13.622,13.624,13.625,13.626,13.628,13.629,13.631,13.632,
-13.634,13.635,13.637,13.638,13.640,13.641,13.643,13.644,13.646,13.647,13.649,13.650,13.651,13.653,13.654,13.656,
-13.657,13.659,13.660,13.662,13.663,13.665,13.666,13.668,13.669,13.671,13.672,13.674,13.675,13.677,13.678,13.679,
-13.681,13.682,13.684,13.685,13.687,13.688,13.690,13.691,13.693,13.694,13.696,13.697,13.699,13.700,13.701,13.703,
-13.704,13.706,13.707,13.709,13.710,13.712,13.713,13.714,13.716,13.717,13.719,13.720,13.722,13.723,13.724,13.726,
-13.727,13.729,13.730,13.732,13.733,13.734,13.736,13.737,13.739,13.740,13.741,13.743,13.744,13.746,13.747,13.748,
-13.750,13.751,13.752,13.754,13.755,13.756,13.758,13.759,13.760,13.762,13.763,13.764,13.766,13.767,13.768,13.770,
-13.771,13.772,13.774,13.775,13.776,13.778,13.779,13.780,13.781,13.783,13.784,13.785,13.787,13.788,13.789,13.790,
-13.792,13.793,13.794,13.795,13.796,13.798,13.799,13.800,13.801,13.803,13.804,13.805,13.806,13.807,13.809,13.810,
-13.811,13.812,13.813,13.814,13.816,13.817,13.818,13.819,13.820,13.821,13.822,13.823,13.825,13.826,13.827,13.828,
-13.829,13.830,13.831,13.832,13.833,13.834,13.835,13.837,13.838,13.839,13.840,13.841,13.842,13.843,13.844,13.845,
-13.846,13.847,13.848,13.849,13.850,13.851,13.852,13.853,13.854,13.855,13.856,13.857,13.858,13.859,13.860,13.861,
-13.862,13.862,13.863,13.864,13.865,13.866,13.867,13.868,13.869,13.870,13.871,13.872,13.872,13.873,13.874,13.875,
-13.876,13.877,13.878,13.878,13.879,13.880,13.881,13.882,13.883,13.883,13.884,13.885,13.886,13.887,13.887,13.888,
-13.889,13.890,13.891,13.891,13.892,13.893,13.894,13.894,13.895,13.896,13.897,13.897,13.898,13.899,13.900,13.900,
-13.901,13.902,13.902,13.903,13.904,13.905,13.905,13.906,13.907,13.907,13.908,13.909,13.909,13.910,13.911,13.911,
-13.912,13.913,13.913,13.914,13.915,13.915,13.916,13.917,13.917,13.918,13.918,13.919,13.920,13.920,13.921,13.921,
-13.922,13.923,13.923,13.924,13.924,13.925,13.926,13.926,13.927,13.927,13.928,13.928,13.929,13.929,13.930,13.931,
-13.931,13.932,13.932,13.933,13.933,13.934,13.934,13.935,13.935,13.936,13.936,13.937,13.937,13.938,13.938,13.939,
-13.939,13.940,13.940,13.941,13.941,13.942,13.942,13.943,13.943,13.944,13.944,13.945,13.945,13.946,13.946,13.946,
-13.947,13.947,13.948,13.948,13.949,13.949,13.950,13.950,13.950,13.951,13.951,13.952,13.952,13.952,13.953,13.953,
-13.954,13.954,13.955,13.955,13.955,13.956,13.956,13.957,13.957,13.957,13.958,13.958,13.958,13.959,13.959,13.960,
-13.960,13.960,13.961,13.961,13.961,13.962,13.962,13.962,13.963,13.963,13.963,13.964,13.964,13.964,13.965,13.965,
-13.965,13.966,13.966,13.966,13.967,13.967,13.967,13.968,13.968,13.968,13.969,13.969,13.969,13.970,13.970,13.970,
-13.970,13.971,13.971,13.971,13.972,13.972,13.972,13.972,13.973,13.973,13.973,13.973,13.974,13.974,13.974,13.974,
-13.975,13.975,13.975,13.975,13.976,13.976,13.976,13.976,13.976,13.977,13.977,13.977,13.977,13.977,13.978,13.978,
-13.978,13.978,13.978,13.979,13.979,13.979,13.979,13.979,13.979,13.980,13.980,13.980,13.980,13.980,13.980,13.980,
-13.981,13.981,13.981,13.981,13.981,13.981,13.981,13.981,13.982,13.982,13.982,13.982,13.982,13.982,13.982,13.982,
-13.982,13.982,13.982,13.982,13.982,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,
-13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.983,13.982,13.982,13.982,13.982,13.982,13.982,
-13.982,13.982,13.982,13.982,13.982,13.982,13.981,13.981,13.981,13.981,13.981,13.981,13.981,13.980,13.980,13.980,
-13.980,13.980,13.980,13.979,13.979,13.979,13.979,13.979,13.978,13.978,13.978,13.978,13.977,13.977,13.977,13.977,
-13.976,13.976,13.976,13.976,13.975,13.975,13.975,13.974,13.974,13.974,13.973,13.973,13.973,13.972,13.972,13.972,
-13.971,13.971,13.971,13.970,13.970,13.969,13.969,13.968,13.968,13.968,13.967,13.967,13.966,13.966,13.965,13.965,
-13.964,13.964,13.963,13.963,13.962,13.962,13.961,13.961,13.960,13.960,13.959,13.959,13.958,13.958,13.957,13.956,
-13.956,13.955,13.955,13.954,13.953,13.953,13.952,13.951,13.951,13.950,13.949,13.949,13.948,13.947,13.947,13.946,
-13.945,13.945,13.944,13.943,13.942,13.942,13.941,13.940,13.939,13.939,13.938,13.937,13.936,13.936,13.935,13.934,
-13.933,13.932,13.932,13.931,13.930,13.929,13.928,13.927,13.926,13.926,13.925,13.924,13.923,13.922,13.921,13.920,
-13.919,13.918,13.917,13.916,13.916,13.915,13.914,13.913,13.912,13.911,13.910,13.909,13.908,13.907,13.906,13.905,
-13.904,13.903,14.423,14.421,14.419,14.417,14.414,14.412,14.410,14.408,14.406,14.403,14.401,14.399,14.396,14.394,
-14.392,14.389,14.387,14.384,14.382,14.379,14.377,14.374,14.372,14.369,14.367,14.364,14.362,14.359,14.356,14.354,
-14.351,14.348,14.346,14.343,14.340,14.338,14.335,14.332,14.329,14.326,14.324,14.321,14.318,14.315,14.312,14.309,
-14.306,14.304,14.301,14.298,14.295,14.292,14.289,14.286,14.283,14.280,14.277,14.274,14.271,14.268,14.265,14.262,
-14.258,14.255,14.252,14.249,14.246,14.243,14.240,14.237,14.234,14.230,14.227,14.224,14.221,14.218,14.215,14.212,
-14.208,14.205,14.202,14.199,14.196,14.192,14.189,14.186,14.183,14.180,14.176,14.173,14.170,14.167,14.163,14.160,
-14.157,14.154,14.151,14.147,14.144,14.141,14.138,14.134,14.131,14.128,14.125,14.122,14.118,14.115,14.112,14.109,
-14.106,14.102,14.099,14.096,14.093,14.090,14.086,14.083,14.080,14.077,14.074,14.070,14.067,14.064,14.061,14.058,
-14.055,14.052,14.048,14.045,14.042,14.039,14.036,14.033,14.030,14.027,14.024,14.021,14.018,14.014,14.011,14.008,
-14.005,14.002,13.999,13.996,13.993,13.990,13.987,13.984,13.981,13.978,13.976,13.973,13.970,13.967,13.964,13.961,
-13.958,13.955,13.952,13.949,13.947,13.944,13.941,13.938,13.935,13.933,13.930,13.927,13.924,13.921,13.919,13.916,
-13.913,13.910,13.908,13.905,13.902,13.900,13.897,13.894,13.892,13.889,13.887,13.884,13.881,13.879,13.876,13.874,
-13.871,13.868,13.866,13.863,13.861,13.858,13.856,13.853,13.851,13.849,13.846,13.844,13.841,13.839,13.836,13.834,
-13.832,13.829,13.827,13.825,13.822,13.820,13.818,13.815,13.813,13.811,13.808,13.806,13.804,13.802,13.799,13.797,
-13.795,13.793,13.791,13.788,13.786,13.784,13.782,13.780,13.778,13.775,13.773,13.771,13.769,13.767,13.765,13.763,
-13.761,13.759,13.757,13.755,13.753,13.751,13.749,13.747,13.745,13.743,13.741,13.739,13.737,13.735,13.733,13.731,
-13.729,13.727,13.725,13.723,13.721,13.720,13.718,13.716,13.714,13.712,13.710,13.708,13.707,13.705,13.703,13.701,
-13.699,13.698,13.696,13.694,13.692,13.691,13.689,13.687,13.685,13.684,13.682,13.680,13.678,13.677,13.675,13.673,
-13.672,13.670,13.668,13.667,13.665,13.663,13.662,13.660,13.658,13.657,13.655,13.653,13.652,13.650,13.649,13.647,
-13.645,13.644,13.642,13.641,13.639,13.637,13.636,13.634,13.633,13.631,13.630,13.628,13.627,13.625,13.624,13.622,
-13.620,13.619,13.617,13.616,13.614,13.613,13.611,13.610,13.609,13.607,13.606,13.604,13.603,13.601,13.600,13.598,
-13.597,13.595,13.594,13.593,13.591,13.590,13.588,13.587,13.585,13.584,13.583,13.581,13.580,13.578,13.577,13.576,
-13.574,13.573,13.571,13.570,13.569,13.567,13.566,13.565,13.563,13.562,13.560,13.559,13.558,13.556,13.555,13.554,
-13.552,13.551,13.550,13.548,13.547,13.546,13.544,13.543,13.542,13.541,13.539,13.538,13.537,13.535,13.534,13.533,
-13.531,13.530,13.529,13.528,13.526,13.525,13.524,13.522,13.521,13.520,13.519,13.517,13.516,13.515,13.514,13.512,
-13.511,13.510,13.509,13.507,13.506,13.505,13.504,13.502,13.501,13.500,13.499,13.498,13.496,13.495,13.494,13.493,
-13.491,13.490,13.489,13.488,13.487,13.485,13.484,13.483,13.482,13.480,13.479,13.478,13.477,13.476,13.474,13.473,
-13.472,13.471,13.470,13.469,13.467,13.466,13.465,13.464,13.463,13.461,13.460,13.459,13.458,13.457,13.455,13.454,
-13.453,13.452,13.451,13.450,13.448,13.447,13.446,13.445,13.444,13.443,13.441,13.440,13.439,13.438,13.437,13.436,
-13.434,13.433,13.432,13.431,13.430,13.428,13.427,13.426,13.425,13.424,13.423,13.421,13.420,13.419,13.418,13.417,
-13.416,13.414,13.413,13.412,13.411,13.410,13.409,13.407,13.406,13.405,13.404,13.403,13.402,13.400,13.399,13.398,
-13.397,13.396,13.394,13.393,13.392,13.391,13.390,13.389,13.387,13.386,13.385,13.384,13.383,13.381,13.380,13.379,
-13.378,13.377,13.376,13.374,13.373,13.372,13.371,13.370,13.368,13.367,13.366,13.365,13.364,13.363,13.361,13.360,
-13.359,13.358,13.357,13.355,13.354,13.353,13.352,13.351,13.350,13.348,13.347,13.346,13.345,13.344,13.343,13.341,
-13.340,13.339,13.338,13.337,13.336,13.334,13.333,13.332,13.331,13.330,13.329,13.328,13.327,13.325,13.324,13.323,
-13.322,13.321,13.320,13.319,13.318,13.317,13.315,13.314,13.313,13.312,13.311,13.310,13.309,13.308,13.307,13.306,
-13.305,13.304,13.303,13.302,13.301,13.300,13.299,13.298,13.297,13.296,13.295,13.294,13.293,13.293,13.292,13.291,
-13.290,13.289,13.288,13.287,13.286,13.286,13.285,13.284,13.283,13.283,13.282,13.281,13.280,13.280,13.279,13.278,
-13.278,13.277,13.276,13.276,13.275,13.274,13.274,13.273,13.273,13.272,13.272,13.271,13.271,13.270,13.270,13.269,
-13.269,13.269,13.268,13.268,13.268,13.267,13.267,13.267,13.267,13.266,13.266,13.266,13.266,13.266,13.266,13.265,
-13.265,13.265,13.265,13.265,13.265,13.265,13.265,13.265,13.266,13.266,13.266,13.266,13.266,13.266,13.267,13.267,
-13.267,13.268,13.268,13.268,13.269,13.269,13.270,13.270,13.271,13.271,13.272,13.272,13.273,13.274,13.274,13.275,
-13.276,13.276,13.277,13.278,13.279,13.280,13.281,13.282,13.282,13.283,13.284,13.285,13.286,13.288,13.289,13.290,
-13.291,13.292,13.293,13.295,13.296,13.297,13.299,13.300,13.301,13.303,13.304,13.306,13.307,13.309,13.310,13.312,
-13.313,13.315,13.317,13.318,13.320,13.322,13.324,13.325,13.327,13.329,13.331,13.333,13.335,13.337,13.339,13.341,
-13.343,13.345,13.347,13.349,13.351,13.353,13.356,13.358,13.360,13.362,13.365,13.367,13.369,13.372,13.374,13.377,
-13.379,13.382,13.384,13.387,13.389,13.392,13.394,13.397,13.400,13.402,13.405,13.408,13.410,13.413,13.416,13.419,
-13.422,13.425,13.427,13.430,13.433,13.436,13.439,13.442,13.445,13.448,13.451,13.454,13.457,13.460,13.464,13.467,
-13.470,13.473,13.476,13.480,13.483,13.486,13.489,13.493,13.496,13.499,13.503,13.506,13.509,13.513,13.516,13.520,
-13.523,13.527,13.530,13.534,13.537,13.541,13.544,13.548,13.551,13.555,13.558,13.562,13.566,13.569,13.573,13.577,
-13.580,13.584,13.588,13.591,13.595,13.599,13.603,13.606,13.610,13.614,13.618,13.621,13.625,13.629,13.633,13.637,
-13.641,13.644,13.648,13.652,13.656,13.660,13.664,13.668,13.672,13.675,13.679,13.683,13.687,13.691,13.695,13.699,
-13.703,13.707,13.711,13.715,13.719,13.723,13.727,13.731,13.735,13.739,13.743,13.746,13.750,13.754,13.758,13.762,
-13.766,13.770,13.774,13.778,13.782,13.786,13.790,13.794,13.798,13.802,13.806,13.810,13.814,13.818,13.822,13.826,
-13.830,13.834,13.838,13.842,13.846,13.850,13.853,13.857,13.861,13.865,13.869,13.873,13.877,13.881,13.885,13.889,
-13.892,13.896,13.900,13.904,13.908,13.912,13.915,13.919,13.923,13.927,13.931,13.934,13.938,13.942,13.946,13.949,
-13.953,13.957,13.961,13.964,13.968,13.972,13.975,13.979,13.983,13.986,13.990,13.993,13.997,14.001,14.004,14.008,
-14.011,14.015,14.018,14.022,14.025,14.029,14.032,14.035,14.039,14.042,14.046,14.049,14.052,14.056,14.059,14.062,
-14.066,14.069,14.072,14.076,14.079,14.082,14.085,14.088,14.092,14.095,14.098,14.101,14.104,14.107,14.110,14.113,
-14.116,14.119,14.122,14.125,14.128,14.131,14.134,14.137,14.140,14.143,14.146,14.148,14.151,14.154,14.157,14.160,
-14.162,14.165,14.168,14.170,14.173,14.176,14.178,14.181,14.183,14.186,14.189,14.191,14.194,14.196,14.199,14.201,
-14.204,14.206,14.208,14.211,14.213,14.215,14.218,14.220,14.222,14.225,14.227,14.229,14.231,14.234,14.236,14.238,
-14.240,14.242,14.244,14.246,14.248,14.250,14.253,14.255,14.257,14.259,14.260,14.262,14.264,14.266,14.268,14.270,
-14.272,14.274,14.276,14.277,14.279,14.281,14.283,14.284,14.286,14.288,14.289,14.291,14.293,14.294,14.296,14.298,
-14.299,14.301,14.302,14.304,14.305,14.307,14.308,14.310,14.311,14.313,14.314,14.316,14.317,14.318,14.320,14.321,
-14.322,14.324,14.325,14.326,14.328,14.329,14.330,14.331,14.333,14.334,14.335,14.336,14.337,14.339,14.340,14.341,
-14.342,14.343,14.344,14.345,14.346,14.348,14.349,14.350,14.351,14.352,14.353,14.354,14.355,14.356,14.357,14.358,
-14.358,14.359,14.360,14.361,14.362,14.363,14.364,14.365,14.366,14.367,14.367,14.368,14.369,14.370,14.371,14.372,
-14.372,14.373,14.374,14.375,14.375,14.376,14.377,14.378,14.378,14.379,14.380,14.381,14.381,14.382,14.383,14.383,
-14.384,14.385,14.385,14.386,14.387,14.387,14.388,14.389,14.389,14.390,14.391,14.391,14.392,14.392,14.393,14.394,
-14.394,14.395,14.395,14.396,14.397,14.397,14.398,14.398,14.399,14.400,14.400,14.401,14.401,14.402,14.402,14.403,
-14.403,14.404,14.405,14.405,14.406,14.406,14.407,14.407,14.408,14.408,14.409,14.409,14.410,14.410,14.411,14.412,
-14.412,14.413,14.413,14.414,14.414,14.415,14.415,14.416,14.416,14.417,14.417,14.418,14.418,14.419,14.419,14.420,
-14.420,14.421,14.422,14.422,14.423,14.423,14.424,14.424,14.425,14.425,14.426,14.426,14.427,14.427,14.428,14.429,
-14.429,14.430,14.430,14.431,14.431,14.432,14.432,14.433,14.434,14.434,14.435,14.435,14.436,14.436,14.437,14.438,
-14.438,14.439,14.439,14.440,14.441,14.441,14.442,14.442,14.443,14.444,14.444,14.445,14.445,14.446,14.447,14.447,
-14.448,14.448,14.449,14.450,14.450,14.451,14.452,14.452,14.453,14.454,14.454,14.455,14.455,14.456,14.457,14.457,
-14.458,14.459,14.459,14.460,14.461,14.461,14.462,14.463,14.463,14.464,14.465,14.466,14.466,14.467,14.468,14.468,
-14.469,14.470,14.470,14.471,14.472,14.472,14.473,14.474,14.474,14.475,14.476,14.477,14.477,14.478,14.479,14.479,
-14.480,14.481,14.481,14.482,14.483,14.483,14.484,14.485,14.485,14.486,14.487,14.487,14.488,14.489,14.489,14.490,
-14.491,14.491,14.492,14.493,14.493,14.494,14.495,14.495,14.496,14.497,14.497,14.498,14.498,14.499,14.500,14.500,
-14.501,14.501,14.502,14.503,14.503,14.504,14.504,14.505,14.505,14.506,14.506,14.507,14.507,14.508,14.508,14.509,
-14.509,14.510,14.510,14.511,14.511,14.511,14.512,14.512,14.513,14.513,14.513,14.514,14.514,14.514,14.515,14.515,
-14.515,14.516,14.516,14.516,14.516,14.517,14.517,14.517,14.517,14.517,14.518,14.518,14.518,14.518,14.518,14.518,
-14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.518,14.517,14.517,14.517,
-14.517,14.517,14.516,14.516,14.516,14.515,14.515,14.515,14.514,14.514,14.514,14.513,14.513,14.512,14.512,14.511,
-14.511,14.510,14.509,14.509,14.508,14.507,14.507,14.506,14.505,14.505,14.504,14.503,14.502,14.501,14.500,14.500,
-14.499,14.498,14.497,14.496,14.495,14.494,14.493,14.492,14.491,14.489,14.488,14.487,14.486,14.485,14.483,14.482,
-14.481,14.480,14.478,14.477,14.476,14.474,14.473,14.471,14.470,14.468,14.467,14.465,14.464,14.462,14.460,14.459,
-14.457,14.455,14.454,14.452,14.450,14.448,14.446,14.445,14.443,14.441,14.439,14.437,14.435,14.433,14.431,14.429,
-14.427,14.425,14.423,14.979,14.977,14.974,14.972,14.970,14.967,14.965,14.962,14.960,14.957,14.954,14.952,14.949,
-14.946,14.943,14.941,14.938,14.935,14.932,14.929,14.926,14.923,14.920,14.917,14.914,14.910,14.907,14.904,14.901,
-14.897,14.894,14.891,14.887,14.884,14.881,14.877,14.874,14.870,14.866,14.863,14.859,14.856,14.852,14.848,14.845,
-14.841,14.837,14.833,14.829,14.826,14.822,14.818,14.814,14.810,14.806,14.802,14.798,14.794,14.790,14.786,14.782,
-14.778,14.774,14.770,14.766,14.761,14.757,14.753,14.749,14.745,14.740,14.736,14.732,14.728,14.723,14.719,14.715,
-14.711,14.706,14.702,14.698,14.693,14.689,14.685,14.680,14.676,14.672,14.667,14.663,14.658,14.654,14.650,14.645,
-14.641,14.636,14.632,14.628,14.623,14.619,14.614,14.610,14.606,14.601,14.597,14.592,14.588,14.584,14.579,14.575,
-14.570,14.566,14.562,14.557,14.553,14.548,14.544,14.540,14.535,14.531,14.526,14.522,14.518,14.513,14.509,14.505,
-14.500,14.496,14.492,14.487,14.483,14.479,14.475,14.470,14.466,14.462,14.458,14.453,14.449,14.445,14.441,14.436,
-14.432,14.428,14.424,14.420,14.416,14.411,14.407,14.403,14.399,14.395,14.391,14.387,14.383,14.378,14.374,14.370,
-14.366,14.362,14.358,14.354,14.350,14.346,14.342,14.338,14.334,14.330,14.326,14.322,14.318,14.314,14.311,14.307,
-14.303,14.299,14.295,14.291,14.287,14.283,14.279,14.276,14.272,14.268,14.264,14.260,14.256,14.253,14.249,14.245,
-14.241,14.237,14.233,14.230,14.226,14.222,14.218,14.215,14.211,14.207,14.203,14.200,14.196,14.192,14.188,14.185,
-14.181,14.177,14.173,14.170,14.166,14.162,14.158,14.155,14.151,14.147,14.143,14.140,14.136,14.132,14.128,14.125,
-14.121,14.117,14.113,14.110,14.106,14.102,14.098,14.095,14.091,14.087,14.083,14.079,14.076,14.072,14.068,14.064,
-14.060,14.057,14.053,14.049,14.045,14.041,14.037,14.034,14.030,14.026,14.022,14.018,14.014,14.010,14.007,14.003,
-13.999,13.995,13.991,13.987,13.983,13.979,13.975,13.971,13.967,13.963,13.959,13.955,13.951,13.947,13.943,13.939,
-13.935,13.931,13.927,13.923,13.919,13.915,13.911,13.907,13.903,13.899,13.895,13.891,13.886,13.882,13.878,13.874,
-13.870,13.866,13.862,13.857,13.853,13.849,13.845,13.841,13.837,13.832,13.828,13.824,13.820,13.816,13.811,13.807,
-13.803,13.799,13.794,13.790,13.786,13.782,13.777,13.773,13.769,13.765,13.760,13.756,13.752,13.748,13.743,13.739,
-13.735,13.730,13.726,13.722,13.718,13.713,13.709,13.705,13.701,13.696,13.692,13.688,13.683,13.679,13.675,13.671,
-13.666,13.662,13.658,13.653,13.649,13.645,13.641,13.636,13.632,13.628,13.624,13.620,13.615,13.611,13.607,13.603,
-13.598,13.594,13.590,13.586,13.582,13.578,13.573,13.569,13.565,13.561,13.557,13.553,13.549,13.545,13.541,13.537,
-13.532,13.528,13.524,13.520,13.516,13.512,13.508,13.505,13.501,13.497,13.493,13.489,13.485,13.481,13.477,13.473,
-13.470,13.466,13.462,13.458,13.455,13.451,13.447,13.444,13.440,13.436,13.433,13.429,13.426,13.422,13.419,13.415,
-13.412,13.408,13.405,13.401,13.398,13.395,13.391,13.388,13.385,13.382,13.379,13.375,13.372,13.369,13.366,13.363,
-13.360,13.357,13.354,13.351,13.348,13.345,13.343,13.340,13.337,13.334,13.332,13.329,13.326,13.324,13.321,13.319,
-13.316,13.314,13.311,13.309,13.307,13.304,13.302,13.300,13.298,13.296,13.293,13.291,13.289,13.287,13.285,13.283,
-13.282,13.280,13.278,13.276,13.274,13.273,13.271,13.269,13.268,13.266,13.265,13.263,13.262,13.260,13.259,13.257,
-13.256,13.255,13.253,13.252,13.251,13.250,13.249,13.248,13.247,13.246,13.245,13.244,13.243,13.242,13.241,13.240,
-13.239,13.238,13.238,13.237,13.236,13.235,13.235,13.234,13.234,13.233,13.232,13.232,13.231,13.231,13.230,13.230,
-13.229,13.229,13.228,13.228,13.228,13.227,13.227,13.226,13.226,13.226,13.225,13.225,13.225,13.224,13.224,13.224,
-13.224,13.223,13.223,13.223,13.222,13.222,13.222,13.222,13.221,13.221,13.221,13.220,13.220,13.220,13.219,13.219,
-13.219,13.218,13.218,13.218,13.217,13.217,13.217,13.216,13.216,13.215,13.215,13.214,13.214,13.213,13.213,13.212,
-13.212,13.211,13.211,13.210,13.209,13.209,13.208,13.207,13.207,13.206,13.205,13.204,13.203,13.203,13.202,13.201,
-13.200,13.199,13.198,13.197,13.196,13.195,13.194,13.193,13.192,13.191,13.189,13.188,13.187,13.186,13.184,13.183,
-13.182,13.181,13.179,13.178,13.176,13.175,13.174,13.172,13.171,13.169,13.168,13.166,13.165,13.163,13.161,13.160,
-13.158,13.157,13.155,13.153,13.152,13.150,13.148,13.146,13.145,13.143,13.141,13.140,13.138,13.136,13.134,13.133,
-13.131,13.129,13.127,13.125,13.124,13.122,13.120,13.118,13.117,13.115,13.113,13.111,13.110,13.108,13.106,13.104,
-13.103,13.101,13.099,13.098,13.096,13.094,13.093,13.091,13.089,13.088,13.086,13.085,13.083,13.082,13.080,13.079,
-13.078,13.076,13.075,13.074,13.072,13.071,13.070,13.069,13.067,13.066,13.065,13.064,13.063,13.062,13.061,13.060,
-13.059,13.059,13.058,13.057,13.056,13.056,13.055,13.054,13.054,13.053,13.053,13.052,13.052,13.052,13.051,13.051,
-13.051,13.051,13.051,13.051,13.051,13.051,13.051,13.051,13.051,13.051,13.052,13.052,13.052,13.053,13.053,13.054,
-13.054,13.055,13.056,13.056,13.057,13.058,13.059,13.060,13.061,13.062,13.063,13.064,13.065,13.066,13.067,13.069,
-13.070,13.071,13.073,13.074,13.076,13.077,13.079,13.081,13.082,13.084,13.086,13.088,13.090,13.092,13.094,13.096,
-13.098,13.100,13.102,13.104,13.106,13.109,13.111,13.113,13.116,13.118,13.121,13.123,13.126,13.129,13.131,13.134,
-13.137,13.139,13.142,13.145,13.148,13.151,13.154,13.157,13.160,13.163,13.166,13.169,13.172,13.175,13.179,13.182,
-13.185,13.189,13.192,13.195,13.199,13.202,13.206,13.209,13.213,13.217,13.220,13.224,13.228,13.231,13.235,13.239,
-13.243,13.247,13.250,13.254,13.258,13.262,13.266,13.270,13.274,13.278,13.282,13.287,13.291,13.295,13.299,13.303,
-13.308,13.312,13.316,13.321,13.325,13.330,13.334,13.338,13.343,13.347,13.352,13.357,13.361,13.366,13.371,13.375,
-13.380,13.385,13.389,13.394,13.399,13.404,13.409,13.414,13.419,13.423,13.428,13.433,13.438,13.443,13.449,13.454,
-13.459,13.464,13.469,13.474,13.479,13.485,13.490,13.495,13.501,13.506,13.511,13.517,13.522,13.527,13.533,13.538,
-13.544,13.549,13.555,13.560,13.566,13.572,13.577,13.583,13.588,13.594,13.600,13.606,13.611,13.617,13.623,13.629,
-13.634,13.640,13.646,13.652,13.658,13.664,13.670,13.675,13.681,13.687,13.693,13.699,13.705,13.711,13.717,13.723,
-13.730,13.736,13.742,13.748,13.754,13.760,13.766,13.772,13.778,13.785,13.791,13.797,13.803,13.809,13.815,13.822,
-13.828,13.834,13.840,13.846,13.853,13.859,13.865,13.871,13.878,13.884,13.890,13.896,13.903,13.909,13.915,13.921,
-13.928,13.934,13.940,13.946,13.953,13.959,13.965,13.971,13.978,13.984,13.990,13.996,14.002,14.009,14.015,14.021,
-14.027,14.033,14.040,14.046,14.052,14.058,14.064,14.070,14.076,14.082,14.089,14.095,14.101,14.107,14.113,14.119,
-14.125,14.131,14.137,14.143,14.149,14.155,14.161,14.167,14.173,14.178,14.184,14.190,14.196,14.202,14.208,14.213,
-14.219,14.225,14.231,14.236,14.242,14.248,14.254,14.259,14.265,14.271,14.276,14.282,14.287,14.293,14.298,14.304,
-14.309,14.315,14.320,14.326,14.331,14.337,14.342,14.347,14.353,14.358,14.363,14.369,14.374,14.379,14.385,14.390,
-14.395,14.400,14.405,14.410,14.416,14.421,14.426,14.431,14.436,14.441,14.446,14.451,14.456,14.461,14.466,14.471,
-14.476,14.481,14.485,14.490,14.495,14.500,14.505,14.509,14.514,14.519,14.524,14.528,14.533,14.538,14.542,14.547,
-14.552,14.556,14.561,14.565,14.570,14.574,14.579,14.583,14.588,14.592,14.597,14.601,14.605,14.610,14.614,14.618,
-14.623,14.627,14.631,14.636,14.640,14.644,14.648,14.652,14.657,14.661,14.665,14.669,14.673,14.677,14.681,14.685,
-14.689,14.693,14.697,14.701,14.705,14.709,14.713,14.717,14.720,14.724,14.728,14.732,14.736,14.739,14.743,14.747,
-14.751,14.754,14.758,14.761,14.765,14.769,14.772,14.776,14.779,14.783,14.786,14.790,14.793,14.796,14.800,14.803,
-14.806,14.810,14.813,14.816,14.820,14.823,14.826,14.829,14.832,14.835,14.838,14.842,14.845,14.848,14.851,14.853,
-14.856,14.859,14.862,14.865,14.868,14.871,14.873,14.876,14.879,14.882,14.884,14.887,14.890,14.892,14.895,14.897,
-14.900,14.902,14.905,14.907,14.909,14.912,14.914,14.916,14.919,14.921,14.923,14.925,14.927,14.929,14.931,14.934,
-14.936,14.938,14.940,14.941,14.943,14.945,14.947,14.949,14.951,14.952,14.954,14.956,14.957,14.959,14.961,14.962,
-14.964,14.965,14.967,14.968,14.969,14.971,14.972,14.973,14.975,14.976,14.977,14.978,14.979,14.981,14.982,14.983,
-14.984,14.985,14.986,14.987,14.988,14.988,14.989,14.990,14.991,14.992,14.992,14.993,14.994,14.994,14.995,14.995,
-14.996,14.997,14.997,14.997,14.998,14.998,14.999,14.999,14.999,15.000,15.000,15.000,15.000,15.001,15.001,15.001,
-15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,15.001,
-15.000,15.000,15.000,15.000,14.999,14.999,14.999,14.999,14.998,14.998,14.998,14.997,14.997,14.997,14.996,14.996,
-14.995,14.995,14.995,14.994,14.994,14.993,14.993,14.992,14.992,14.992,14.991,14.991,14.990,14.990,14.989,14.989,
-14.988,14.988,14.988,14.987,14.987,14.986,14.986,14.985,14.985,14.984,14.984,14.984,14.983,14.983,14.982,14.982,
-14.982,14.981,14.981,14.981,14.980,14.980,14.980,14.980,14.979,14.979,14.979,14.979,14.978,14.978,14.978,14.978,
-14.978,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,14.977,
-14.977,14.978,14.978,14.978,14.978,14.978,14.979,14.979,14.979,14.980,14.980,14.980,14.981,14.981,14.981,14.982,
-14.982,14.983,14.983,14.984,14.984,14.985,14.985,14.986,14.986,14.987,14.988,14.988,14.989,14.990,14.990,14.991,
-14.992,14.992,14.993,14.994,14.995,14.995,14.996,14.997,14.998,14.999,14.999,15.000,15.001,15.002,15.003,15.004,
-15.004,15.005,15.006,15.007,15.008,15.009,15.010,15.011,15.011,15.012,15.013,15.014,15.015,15.016,15.017,15.018,
-15.018,15.019,15.020,15.021,15.022,15.023,15.023,15.024,15.025,15.026,15.027,15.027,15.028,15.029,15.030,15.030,
-15.031,15.032,15.032,15.033,15.034,15.034,15.035,15.035,15.036,15.036,15.037,15.037,15.038,15.038,15.038,15.039,
-15.039,15.039,15.040,15.040,15.040,15.040,15.041,15.041,15.041,15.041,15.041,15.041,15.041,15.041,15.041,15.040,
-15.040,15.040,15.040,15.040,15.039,15.039,15.039,15.038,15.038,15.037,15.037,15.036,15.035,15.035,15.034,15.033,
-15.032,15.032,15.031,15.030,15.029,15.028,15.027,15.026,15.025,15.024,15.022,15.021,15.020,15.019,15.017,15.016,
-15.014,15.013,15.011,15.010,15.008,15.006,15.005,15.003,15.001,14.999,14.998,14.996,14.994,14.992,14.990,14.988,
-14.985,14.983,14.981,14.979,15.452,15.451,15.449,15.447,15.446,15.444,15.442,15.441,15.439,15.437,15.435,15.433,
-15.431,15.429,15.427,15.425,15.423,15.420,15.418,15.416,15.414,15.411,15.409,15.406,15.404,15.401,15.399,15.396,
-15.393,15.391,15.388,15.385,15.382,15.380,15.377,15.374,15.371,15.368,15.365,15.362,15.359,15.356,15.352,15.349,
-15.346,15.343,15.340,15.336,15.333,15.330,15.326,15.323,15.319,15.316,15.312,15.309,15.305,15.301,15.298,15.294,
-15.290,15.287,15.283,15.279,15.275,15.271,15.267,15.264,15.260,15.256,15.252,15.248,15.244,15.240,15.236,15.231,
-15.227,15.223,15.219,15.215,15.210,15.206,15.202,15.198,15.193,15.189,15.185,15.180,15.176,15.171,15.167,15.162,
-15.158,15.153,15.149,15.144,15.140,15.135,15.131,15.126,15.121,15.117,15.112,15.107,15.103,15.098,15.093,15.089,
-15.084,15.079,15.074,15.069,15.065,15.060,15.055,15.050,15.045,15.041,15.036,15.031,15.026,15.021,15.016,15.011,
-15.006,15.001,14.996,14.992,14.987,14.982,14.977,14.972,14.967,14.962,14.957,14.952,14.947,14.942,14.937,14.932,
-14.927,14.922,14.917,14.912,14.907,14.902,14.897,14.892,14.887,14.882,14.877,14.872,14.867,14.862,14.857,14.853,
-14.848,14.843,14.838,14.833,14.828,14.823,14.818,14.813,14.808,14.803,14.798,14.793,14.788,14.783,14.778,14.773,
-14.768,14.763,14.758,14.753,14.748,14.743,14.738,14.733,14.728,14.723,14.718,14.713,14.708,14.703,14.698,14.693,
-14.687,14.682,14.677,14.672,14.667,14.662,14.657,14.652,14.647,14.641,14.636,14.631,14.626,14.620,14.615,14.610,
-14.605,14.599,14.594,14.589,14.583,14.578,14.572,14.567,14.561,14.556,14.550,14.545,14.539,14.534,14.528,14.522,
-14.517,14.511,14.505,14.500,14.494,14.488,14.482,14.476,14.470,14.464,14.458,14.452,14.446,14.440,14.434,14.428,
-14.422,14.415,14.409,14.403,14.396,14.390,14.384,14.377,14.371,14.364,14.357,14.351,14.344,14.337,14.331,14.324,
-14.317,14.310,14.303,14.296,14.289,14.282,14.275,14.268,14.261,14.254,14.247,14.239,14.232,14.225,14.217,14.210,
-14.203,14.195,14.188,14.180,14.172,14.165,14.157,14.149,14.142,14.134,14.126,14.118,14.110,14.102,14.095,14.087,
-14.079,14.071,14.062,14.054,14.046,14.038,14.030,14.022,14.014,14.005,13.997,13.989,13.980,13.972,13.964,13.955,
-13.947,13.938,13.930,13.921,13.913,13.904,13.896,13.887,13.879,13.870,13.861,13.853,13.844,13.835,13.827,13.818,
-13.809,13.800,13.792,13.783,13.774,13.765,13.756,13.748,13.739,13.730,13.721,13.712,13.703,13.695,13.686,13.677,
-13.668,13.659,13.650,13.641,13.632,13.623,13.614,13.605,13.596,13.587,13.578,13.569,13.560,13.551,13.542,13.533,
-13.524,13.515,13.507,13.498,13.489,13.480,13.471,13.462,13.453,13.444,13.435,13.426,13.417,13.408,13.399,13.390,
-13.381,13.372,13.363,13.354,13.345,13.337,13.328,13.319,13.310,13.301,13.293,13.284,13.275,13.266,13.258,13.249,
-13.240,13.232,13.223,13.215,13.206,13.198,13.189,13.181,13.172,13.164,13.156,13.147,13.139,13.131,13.123,13.115,
-13.107,13.099,13.091,13.083,13.075,13.067,13.060,13.052,13.045,13.037,13.030,13.022,13.015,13.008,13.001,12.994,
-12.987,12.980,12.973,12.967,12.960,12.954,12.948,12.941,12.935,12.929,12.923,12.917,12.912,12.906,12.901,12.895,
-12.890,12.885,12.880,12.875,12.871,12.866,12.862,12.857,12.853,12.849,12.845,12.842,12.838,12.835,12.832,12.828,
-12.826,12.823,12.820,12.818,12.815,12.813,12.811,12.810,12.808,12.807,12.805,12.804,12.803,12.802,12.802,12.801,
-12.801,12.801,12.801,12.801,12.802,12.803,12.803,12.804,12.805,12.807,12.808,12.810,12.812,12.814,12.816,12.818,
-12.821,12.823,12.826,12.829,12.832,12.835,12.839,12.842,12.846,12.850,12.854,12.858,12.862,12.867,12.871,12.876,
-12.881,12.886,12.891,12.896,12.901,12.906,12.912,12.917,12.923,12.929,12.935,12.941,12.947,12.953,12.959,12.965,
-12.971,12.978,12.984,12.990,12.997,13.003,13.010,13.016,13.023,13.030,13.036,13.043,13.049,13.056,13.063,13.069,
-13.076,13.082,13.089,13.095,13.102,13.108,13.115,13.121,13.127,13.133,13.139,13.146,13.152,13.157,13.163,13.169,
-13.175,13.180,13.186,13.191,13.196,13.201,13.206,13.211,13.216,13.221,13.225,13.230,13.234,13.238,13.242,13.246,
-13.250,13.253,13.257,13.260,13.263,13.266,13.269,13.271,13.274,13.276,13.278,13.280,13.282,13.284,13.285,13.287,
-13.288,13.289,13.290,13.290,13.291,13.291,13.291,13.291,13.291,13.291,13.290,13.290,13.289,13.288,13.287,13.286,
-13.284,13.283,13.281,13.279,13.277,13.275,13.273,13.270,13.268,13.265,13.262,13.259,13.256,13.253,13.250,13.246,
-13.243,13.239,13.236,13.232,13.228,13.224,13.220,13.216,13.211,13.207,13.203,13.198,13.194,13.189,13.184,13.180,
-13.175,13.170,13.165,13.161,13.156,13.151,13.146,13.141,13.136,13.131,13.126,13.121,13.115,13.110,13.105,13.100,
-13.095,13.090,13.085,13.080,13.075,13.070,13.065,13.060,13.055,13.050,13.046,13.041,13.036,13.031,13.027,13.022,
-13.018,13.013,13.009,13.004,13.000,12.996,12.992,12.987,12.983,12.979,12.975,12.971,12.968,12.964,12.960,12.957,
-12.953,12.950,12.946,12.943,12.940,12.937,12.934,12.931,12.928,12.925,12.922,12.920,12.917,12.914,12.912,12.910,
-12.907,12.905,12.903,12.901,12.899,12.897,12.895,12.893,12.892,12.890,12.888,12.887,12.885,12.884,12.883,12.881,
-12.880,12.879,12.878,12.877,12.876,12.875,12.874,12.873,12.873,12.872,12.871,12.871,12.870,12.870,12.869,12.869,
-12.868,12.868,12.868,12.867,12.867,12.867,12.867,12.867,12.867,12.866,12.866,12.866,12.866,12.866,12.866,12.867,
-12.867,12.867,12.867,12.867,12.867,12.868,12.868,12.868,12.868,12.869,12.869,12.869,12.869,12.870,12.870,12.871,
-12.871,12.871,12.872,12.872,12.873,12.873,12.874,12.874,12.875,12.875,12.876,12.876,12.877,12.877,12.878,12.879,
-12.879,12.880,12.881,12.881,12.882,12.883,12.884,12.884,12.885,12.886,12.887,12.888,12.889,12.889,12.890,12.891,
-12.892,12.893,12.895,12.896,12.897,12.898,12.899,12.900,12.902,12.903,12.904,12.906,12.907,12.909,12.910,12.912,
-12.913,12.915,12.917,12.919,12.920,12.922,12.924,12.926,12.928,12.930,12.932,12.935,12.937,12.939,12.941,12.944,
-12.946,12.949,12.952,12.954,12.957,12.960,12.963,12.966,12.969,12.972,12.975,12.978,12.981,12.985,12.988,12.992,
-12.995,12.999,13.003,13.006,13.010,13.014,13.018,13.022,13.026,13.031,13.035,13.039,13.044,13.048,13.053,13.058,
-13.062,13.067,13.072,13.077,13.082,13.087,13.093,13.098,13.103,13.109,13.114,13.120,13.125,13.131,13.137,13.142,
-13.148,13.154,13.160,13.166,13.173,13.179,13.185,13.191,13.198,13.204,13.211,13.217,13.224,13.231,13.237,13.244,
-13.251,13.258,13.265,13.272,13.279,13.286,13.293,13.300,13.308,13.315,13.322,13.330,13.337,13.345,13.352,13.360,
-13.367,13.375,13.383,13.390,13.398,13.406,13.414,13.421,13.429,13.437,13.445,13.453,13.461,13.469,13.477,13.485,
-13.493,13.501,13.510,13.518,13.526,13.534,13.542,13.551,13.559,13.567,13.575,13.584,13.592,13.600,13.609,13.617,
-13.626,13.634,13.642,13.651,13.659,13.668,13.676,13.685,13.693,13.702,13.711,13.719,13.728,13.736,13.745,13.754,
-13.762,13.771,13.780,13.788,13.797,13.806,13.815,13.823,13.832,13.841,13.850,13.859,13.868,13.877,13.885,13.894,
-13.903,13.912,13.921,13.930,13.939,13.949,13.958,13.967,13.976,13.985,13.994,14.004,14.013,14.022,14.031,14.041,
-14.050,14.060,14.069,14.079,14.088,14.098,14.107,14.117,14.126,14.136,14.146,14.156,14.165,14.175,14.185,14.195,
-14.205,14.215,14.225,14.235,14.245,14.255,14.265,14.276,14.286,14.296,14.307,14.317,14.327,14.338,14.348,14.359,
-14.369,14.380,14.391,14.401,14.412,14.423,14.434,14.445,14.455,14.466,14.477,14.488,14.499,14.510,14.522,14.533,
-14.544,14.555,14.566,14.578,14.589,14.600,14.611,14.623,14.634,14.646,14.657,14.669,14.680,14.692,14.703,14.715,
-14.726,14.738,14.750,14.761,14.773,14.784,14.796,14.808,14.819,14.831,14.843,14.854,14.866,14.878,14.890,14.901,
-14.913,14.925,14.936,14.948,14.959,14.971,14.983,14.994,15.006,15.017,15.029,15.041,15.052,15.064,15.075,15.086,
-15.098,15.109,15.120,15.132,15.143,15.154,15.165,15.176,15.188,15.199,15.210,15.220,15.231,15.242,15.253,15.264,
-15.274,15.285,15.296,15.306,15.317,15.327,15.337,15.347,15.358,15.368,15.378,15.388,15.397,15.407,15.417,15.427,
-15.436,15.446,15.455,15.464,15.474,15.483,15.492,15.501,15.510,15.518,15.527,15.536,15.544,15.552,15.561,15.569,
-15.577,15.585,15.593,15.601,15.608,15.616,15.623,15.630,15.638,15.645,15.652,15.659,15.665,15.672,15.678,15.685,
-15.691,15.697,15.703,15.709,15.715,15.721,15.726,15.731,15.737,15.742,15.747,15.752,15.757,15.761,15.766,15.770,
-15.774,15.778,15.782,15.786,15.790,15.793,15.797,15.800,15.803,15.806,15.809,15.811,15.814,15.816,15.819,15.821,
-15.823,15.825,15.826,15.828,15.829,15.831,15.832,15.833,15.834,15.834,15.835,15.835,15.836,15.836,15.836,15.836,
-15.835,15.835,15.835,15.834,15.833,15.832,15.831,15.830,15.829,15.827,15.826,15.824,15.822,15.820,15.818,15.816,
-15.814,15.811,15.809,15.806,15.803,15.800,15.797,15.794,15.791,15.788,15.784,15.781,15.777,15.773,15.769,15.766,
-15.762,15.757,15.753,15.749,15.745,15.740,15.736,15.731,15.727,15.722,15.717,15.712,15.708,15.703,15.698,15.693,
-15.688,15.682,15.677,15.672,15.667,15.662,15.656,15.651,15.646,15.640,15.635,15.630,15.624,15.619,15.613,15.608,
-15.602,15.597,15.592,15.586,15.581,15.575,15.570,15.565,15.560,15.554,15.549,15.544,15.539,15.533,15.528,15.523,
-15.518,15.513,15.508,15.504,15.499,15.494,15.489,15.485,15.480,15.476,15.471,15.467,15.463,15.459,15.454,15.450,
-15.446,15.443,15.439,15.435,15.431,15.428,15.424,15.421,15.418,15.415,15.412,15.409,15.406,15.403,15.400,15.398,
-15.395,15.393,15.390,15.388,15.386,15.384,15.382,15.380,15.378,15.377,15.375,15.374,15.373,15.371,15.370,15.369,
-15.368,15.367,15.366,15.366,15.365,15.365,15.364,15.364,15.364,15.364,15.364,15.364,15.364,15.364,15.364,15.364,
-15.365,15.365,15.366,15.366,15.367,15.368,15.369,15.370,15.370,15.371,15.373,15.374,15.375,15.376,15.377,15.379,
-15.380,15.381,15.383,15.384,15.386,15.387,15.389,15.390,15.392,15.394,15.395,15.397,15.399,15.401,15.402,15.404,
-15.406,15.408,15.409,15.411,15.413,15.415,15.417,15.419,15.420,15.422,15.424,15.426,15.427,15.429,15.431,15.433,
-15.434,15.436,15.438,15.439,15.441,15.443,15.444,15.446,15.447,15.449,15.450,15.451,15.453,15.454,15.455,15.457,
-15.458,15.459,15.460,15.461,15.462,15.463,15.464,15.465,15.466,15.467,15.467,15.468,15.469,15.469,15.470,15.471,
-15.471,15.471,15.472,15.472,15.472,15.472,15.473,15.473,15.473,15.473,15.473,15.473,15.472,15.472,15.472,15.471,
-15.471,15.471,15.470,15.470,15.469,15.468,15.468,15.467,15.466,15.465,15.464,15.463,15.462,15.461,15.460,15.459,
-15.457,15.456,15.455,15.453,15.452,15.922,15.921,15.919,15.917,15.916,15.914,15.912,15.910,15.909,15.907,15.905,
-15.903,15.901,15.900,15.898,15.896,15.894,15.892,15.890,15.888,15.886,15.884,15.882,15.880,15.878,15.876,15.874,
-15.872,15.870,15.868,15.866,15.864,15.862,15.860,15.857,15.855,15.853,15.851,15.849,15.847,15.844,15.842,15.840,
-15.838,15.835,15.833,15.831,15.828,15.826,15.823,15.821,15.818,15.816,15.813,15.811,15.808,15.805,15.803,15.800,
-15.797,15.794,15.792,15.789,15.786,15.783,15.780,15.777,15.774,15.770,15.767,15.764,15.761,15.757,15.754,15.750,
-15.747,15.743,15.739,15.736,15.732,15.728,15.724,15.720,15.716,15.712,15.708,15.704,15.699,15.695,15.690,15.686,
-15.681,15.677,15.672,15.667,15.662,15.658,15.653,15.648,15.642,15.637,15.632,15.627,15.621,15.616,15.610,15.605,
-15.599,15.594,15.588,15.582,15.576,15.570,15.564,15.558,15.552,15.546,15.540,15.534,15.527,15.521,15.515,15.508,
-15.502,15.495,15.488,15.482,15.475,15.468,15.462,15.455,15.448,15.441,15.434,15.427,15.420,15.413,15.406,15.399,
-15.392,15.385,15.378,15.371,15.364,15.356,15.349,15.342,15.335,15.327,15.320,15.313,15.306,15.298,15.291,15.284,
-15.277,15.269,15.262,15.255,15.247,15.240,15.233,15.225,15.218,15.211,15.203,15.196,15.189,15.182,15.174,15.167,
-15.160,15.153,15.145,15.138,15.131,15.124,15.116,15.109,15.102,15.095,15.088,15.080,15.073,15.066,15.059,15.052,
-15.045,15.037,15.030,15.023,15.016,15.009,15.002,14.995,14.987,14.980,14.973,14.966,14.959,14.952,14.945,14.937,
-14.930,14.923,14.916,14.908,14.901,14.894,14.887,14.879,14.872,14.865,14.857,14.850,14.842,14.835,14.827,14.820,
-14.812,14.805,14.797,14.790,14.782,14.774,14.766,14.759,14.751,14.743,14.735,14.727,14.719,14.711,14.703,14.694,
-14.686,14.678,14.670,14.661,14.653,14.644,14.636,14.627,14.618,14.610,14.601,14.592,14.583,14.574,14.565,14.556,
-14.547,14.538,14.528,14.519,14.510,14.500,14.491,14.481,14.471,14.462,14.452,14.442,14.432,14.422,14.412,14.402,
-14.392,14.382,14.372,14.362,14.351,14.341,14.331,14.320,14.310,14.299,14.289,14.278,14.267,14.257,14.246,14.235,
-14.224,14.213,14.202,14.192,14.181,14.170,14.159,14.148,14.136,14.125,14.114,14.103,14.092,14.081,14.069,14.058,
-14.047,14.036,14.024,14.013,14.002,13.990,13.979,13.968,13.956,13.945,13.934,13.922,13.911,13.899,13.888,13.877,
-13.865,13.854,13.842,13.831,13.819,13.808,13.796,13.785,13.774,13.762,13.751,13.739,13.728,13.716,13.705,13.693,
-13.682,13.670,13.658,13.647,13.635,13.624,13.612,13.600,13.589,13.577,13.565,13.554,13.542,13.530,13.518,13.507,
-13.495,13.483,13.471,13.459,13.447,13.435,13.423,13.411,13.399,13.387,13.375,13.362,13.350,13.338,13.325,13.313,
-13.301,13.288,13.276,13.263,13.250,13.238,13.225,13.212,13.199,13.186,13.173,13.160,13.147,13.134,13.121,13.107,
-13.094,13.081,13.067,13.054,13.040,13.027,13.013,12.999,12.986,12.972,12.958,12.945,12.931,12.917,12.903,12.889,
-12.875,12.861,12.847,12.833,12.819,12.805,12.791,12.777,12.763,12.750,12.736,12.722,12.708,12.694,12.680,12.667,
-12.653,12.640,12.626,12.613,12.600,12.586,12.573,12.560,12.548,12.535,12.522,12.510,12.498,12.485,12.474,12.462,
-12.450,12.439,12.428,12.417,12.406,12.396,12.385,12.375,12.366,12.356,12.347,12.338,12.330,12.321,12.313,12.306,
-12.298,12.291,12.285,12.278,12.273,12.267,12.262,12.257,12.253,12.249,12.245,12.242,12.239,12.237,12.235,12.234,
-12.233,12.232,12.232,12.233,12.234,12.235,12.237,12.239,12.242,12.245,12.249,12.253,12.258,12.263,12.269,12.275,
-12.281,12.289,12.296,12.304,12.313,12.322,12.332,12.342,12.352,12.363,12.374,12.386,12.398,12.411,12.424,12.438,
-12.452,12.466,12.481,12.497,12.512,12.528,12.545,12.561,12.578,12.596,12.614,12.632,12.650,12.669,12.687,12.707,
-12.726,12.746,12.765,12.786,12.806,12.826,12.847,12.868,12.888,12.909,12.930,12.952,12.973,12.994,13.015,13.037,
-13.058,13.079,13.101,13.122,13.143,13.164,13.185,13.206,13.227,13.248,13.268,13.288,13.308,13.328,13.348,13.367,
-13.386,13.405,13.424,13.442,13.460,13.478,13.495,13.512,13.529,13.545,13.561,13.577,13.592,13.606,13.621,13.635,
-13.648,13.661,13.673,13.685,13.697,13.708,13.718,13.728,13.738,13.747,13.755,13.763,13.771,13.778,13.784,13.790,
-13.795,13.800,13.805,13.808,13.812,13.814,13.817,13.818,13.819,13.820,13.820,13.820,13.819,13.818,13.816,13.813,
-13.810,13.807,13.803,13.799,13.794,13.789,13.784,13.778,13.771,13.764,13.757,13.749,13.741,13.733,13.724,13.715,
-13.706,13.696,13.686,13.676,13.665,13.654,13.643,13.631,13.619,13.608,13.595,13.583,13.570,13.558,13.545,13.532,
-13.518,13.505,13.492,13.478,13.464,13.450,13.437,13.423,13.409,13.395,13.381,13.367,13.353,13.338,13.324,13.310,
-13.296,13.282,13.269,13.255,13.241,13.227,13.214,13.200,13.187,13.173,13.160,13.147,13.134,13.121,13.109,13.096,
-13.084,13.071,13.059,13.047,13.036,13.024,13.013,13.001,12.990,12.979,12.969,12.958,12.948,12.938,12.928,12.918,
-12.909,12.899,12.890,12.881,12.872,12.864,12.855,12.847,12.839,12.831,12.823,12.816,12.808,12.801,12.794,12.787,
-12.781,12.774,12.768,12.761,12.755,12.749,12.744,12.738,12.732,12.727,12.722,12.717,12.711,12.707,12.702,12.697,
-12.692,12.688,12.683,12.679,12.675,12.670,12.666,12.662,12.658,12.654,12.650,12.646,12.642,12.638,12.635,12.631,
-12.627,12.623,12.620,12.616,12.612,12.609,12.605,12.601,12.598,12.594,12.590,12.587,12.583,12.579,12.575,12.572,
-12.568,12.564,12.560,12.556,12.552,12.548,12.545,12.541,12.537,12.532,12.528,12.524,12.520,12.516,12.512,12.507,
-12.503,12.499,12.494,12.490,12.486,12.481,12.477,12.472,12.468,12.463,12.459,12.454,12.449,12.445,12.440,12.435,
-12.431,12.426,12.421,12.417,12.412,12.407,12.402,12.398,12.393,12.388,12.384,12.379,12.374,12.370,12.365,12.361,
-12.356,12.352,12.347,12.343,12.339,12.334,12.330,12.326,12.322,12.318,12.314,12.310,12.306,12.302,12.298,12.295,
-12.291,12.288,12.284,12.281,12.278,12.275,12.272,12.269,12.266,12.263,12.261,12.258,12.256,12.254,12.251,12.249,
-12.248,12.246,12.244,12.243,12.241,12.240,12.239,12.238,12.237,12.237,12.236,12.236,12.235,12.235,12.235,12.235,
-12.236,12.236,12.237,12.238,12.239,12.240,12.241,12.242,12.244,12.245,12.247,12.249,12.251,12.253,12.256,12.258,
-12.261,12.264,12.267,12.270,12.273,12.277,12.280,12.284,12.288,12.292,12.296,12.300,12.305,12.309,12.314,12.319,
-12.324,12.329,12.334,12.339,12.345,12.350,12.356,12.362,12.367,12.373,12.380,12.386,12.392,12.399,12.405,12.412,
-12.418,12.425,12.432,12.439,12.446,12.453,12.461,12.468,12.475,12.483,12.490,12.498,12.506,12.514,12.521,12.529,
-12.537,12.545,12.553,12.561,12.570,12.578,12.586,12.594,12.603,12.611,12.620,12.628,12.637,12.645,12.654,12.663,
-12.671,12.680,12.689,12.697,12.706,12.715,12.724,12.733,12.742,12.751,12.760,12.769,12.778,12.787,12.796,12.805,
-12.814,12.823,12.832,12.841,12.851,12.860,12.869,12.878,12.888,12.897,12.906,12.916,12.925,12.935,12.944,12.954,
-12.963,12.973,12.983,12.992,13.002,13.012,13.022,13.032,13.042,13.052,13.062,13.072,13.082,13.093,13.103,13.113,
-13.124,13.135,13.145,13.156,13.167,13.178,13.189,13.200,13.211,13.223,13.234,13.246,13.257,13.269,13.281,13.293,
-13.305,13.318,13.330,13.343,13.355,13.368,13.381,13.394,13.408,13.421,13.435,13.448,13.462,13.476,13.491,13.505,
-13.519,13.534,13.549,13.564,13.579,13.595,13.610,13.626,13.642,13.658,13.675,13.691,13.708,13.725,13.742,13.759,
-13.776,13.794,13.812,13.830,13.848,13.866,13.885,13.903,13.922,13.941,13.961,13.980,14.000,14.019,14.039,14.059,
-14.080,14.100,14.121,14.141,14.162,14.183,14.205,14.226,14.248,14.269,14.291,14.313,14.335,14.357,14.379,14.402,
-14.424,14.447,14.470,14.493,14.516,14.539,14.562,14.585,14.608,14.632,14.655,14.679,14.702,14.726,14.750,14.774,
-14.797,14.821,14.845,14.869,14.893,14.917,14.941,14.965,14.989,15.013,15.037,15.061,15.085,15.109,15.133,15.156,
-15.180,15.204,15.228,15.252,15.275,15.299,15.322,15.346,15.369,15.393,15.416,15.439,15.462,15.485,15.508,15.531,
-15.554,15.577,15.599,15.622,15.644,15.666,15.688,15.710,15.732,15.754,15.775,15.797,15.818,15.839,15.860,15.881,
-15.902,15.923,15.943,15.964,15.984,16.004,16.024,16.043,16.063,16.082,16.101,16.120,16.139,16.158,16.176,16.195,
-16.213,16.231,16.248,16.266,16.283,16.300,16.317,16.334,16.351,16.367,16.383,16.399,16.415,16.430,16.446,16.461,
-16.476,16.490,16.505,16.519,16.533,16.547,16.560,16.573,16.586,16.599,16.612,16.624,16.636,16.648,16.659,16.671,
-16.682,16.693,16.703,16.713,16.723,16.733,16.742,16.751,16.760,16.769,16.777,16.785,16.793,16.800,16.807,16.814,
-16.820,16.827,16.832,16.838,16.843,16.848,16.853,16.857,16.861,16.865,16.868,16.871,16.874,16.876,16.878,16.880,
-16.881,16.882,16.883,16.883,16.884,16.883,16.883,16.882,16.880,16.879,16.877,16.875,16.872,16.869,16.866,16.862,
-16.858,16.854,16.849,16.845,16.839,16.834,16.828,16.822,16.816,16.809,16.802,16.795,16.787,16.779,16.771,16.763,
-16.754,16.745,16.736,16.726,16.717,16.707,16.696,16.686,16.675,16.665,16.654,16.642,16.631,16.619,16.607,16.595,
-16.583,16.571,16.558,16.546,16.533,16.520,16.507,16.494,16.481,16.468,16.454,16.441,16.427,16.414,16.400,16.387,
-16.373,16.359,16.345,16.332,16.318,16.304,16.291,16.277,16.263,16.250,16.236,16.223,16.209,16.196,16.183,16.170,
-16.157,16.144,16.131,16.118,16.106,16.093,16.081,16.069,16.057,16.045,16.033,16.022,16.011,16.000,15.989,15.978,
-15.968,15.957,15.947,15.938,15.928,15.919,15.909,15.901,15.892,15.883,15.875,15.867,15.860,15.852,15.845,15.838,
-15.831,15.825,15.819,15.813,15.807,15.802,15.796,15.792,15.787,15.782,15.778,15.774,15.771,15.767,15.764,15.761,
-15.759,15.756,15.754,15.752,15.750,15.749,15.747,15.746,15.745,15.745,15.744,15.744,15.744,15.744,15.745,15.745,
-15.746,15.747,15.748,15.749,15.750,15.752,15.754,15.755,15.757,15.759,15.762,15.764,15.767,15.769,15.772,15.775,
-15.777,15.780,15.783,15.787,15.790,15.793,15.796,15.800,15.803,15.807,15.810,15.814,15.817,15.821,15.824,15.828,
-15.832,15.835,15.839,15.843,15.846,15.850,15.853,15.857,15.860,15.864,15.867,15.871,15.874,15.878,15.881,15.884,
-15.887,15.890,15.893,15.896,15.899,15.902,15.905,15.908,15.910,15.913,15.915,15.918,15.920,15.922,15.925,15.927,
-15.929,15.931,15.932,15.934,15.936,15.937,15.939,15.940,15.942,15.943,15.944,15.945,15.946,15.947,15.947,15.948,
-15.949,15.949,15.950,15.950,15.950,15.950,15.950,15.950,15.950,15.950,15.950,15.950,15.949,15.949,15.948,15.948,
-15.947,15.947,15.946,15.945,15.944,15.943,15.942,15.941,15.940,15.939,15.938,15.937,15.935,15.934,15.933,15.931,
-15.930,15.928,15.927,15.925,15.924,15.922,16.466,16.462,16.458,16.454,16.450,16.446,16.442,16.438,16.434,16.430,
-16.427,16.423,16.419,16.416,16.413,16.409,16.406,16.403,16.400,16.397,16.394,16.391,16.388,16.385,16.383,16.380,
-16.378,16.375,16.373,16.370,16.368,16.366,16.364,16.362,16.360,16.358,16.356,16.354,16.352,16.350,16.348,16.346,
-16.345,16.343,16.341,16.340,16.338,16.336,16.335,16.333,16.332,16.330,16.328,16.327,16.325,16.323,16.322,16.320,
-16.318,16.316,16.315,16.313,16.311,16.309,16.307,16.305,16.302,16.300,16.298,16.296,16.293,16.291,16.288,16.285,
-16.282,16.279,16.276,16.273,16.270,16.267,16.263,16.260,16.256,16.252,16.248,16.244,16.240,16.236,16.231,16.227,
-16.222,16.217,16.212,16.207,16.202,16.196,16.191,16.185,16.179,16.173,16.167,16.161,16.154,16.148,16.141,16.134,
-16.127,16.120,16.113,16.105,16.098,16.090,16.082,16.074,16.066,16.058,16.049,16.041,16.032,16.023,16.014,16.005,
-15.996,15.987,15.978,15.968,15.959,15.949,15.939,15.929,15.919,15.909,15.899,15.889,15.878,15.868,15.857,15.847,
-15.836,15.825,15.815,15.804,15.793,15.782,15.771,15.760,15.749,15.737,15.726,15.715,15.704,15.693,15.681,15.670,
-15.659,15.647,15.636,15.625,15.613,15.602,15.591,15.579,15.568,15.557,15.545,15.534,15.523,15.512,15.500,15.489,
-15.478,15.467,15.456,15.445,15.434,15.423,15.412,15.401,15.390,15.379,15.369,15.358,15.347,15.337,15.326,15.316,
-15.305,15.295,15.284,15.274,15.264,15.254,15.244,15.234,15.224,15.214,15.204,15.194,15.184,15.174,15.164,15.155,
-15.145,15.135,15.126,15.116,15.107,15.097,15.088,15.079,15.069,15.060,15.051,15.041,15.032,15.023,15.013,15.004,
-14.995,14.986,14.977,14.967,14.958,14.949,14.940,14.930,14.921,14.912,14.903,14.893,14.884,14.874,14.865,14.856,
-14.846,14.837,14.827,14.818,14.808,14.798,14.789,14.779,14.769,14.759,14.749,14.739,14.729,14.719,14.709,14.699,
-14.688,14.678,14.668,14.657,14.647,14.636,14.625,14.615,14.604,14.593,14.582,14.571,14.560,14.549,14.538,14.526,
-14.515,14.504,14.492,14.481,14.469,14.458,14.446,14.434,14.423,14.411,14.399,14.387,14.375,14.363,14.351,14.339,
-14.327,14.315,14.303,14.291,14.279,14.266,14.254,14.242,14.230,14.218,14.206,14.193,14.181,14.169,14.157,14.145,
-14.132,14.120,14.108,14.096,14.084,14.072,14.060,14.048,14.036,14.024,14.013,14.001,13.989,13.977,13.966,13.954,
-13.943,13.931,13.920,13.908,13.897,13.886,13.874,13.863,13.852,13.841,13.830,13.819,13.808,13.797,13.787,13.776,
-13.765,13.755,13.744,13.733,13.723,13.712,13.702,13.691,13.681,13.671,13.660,13.650,13.639,13.629,13.619,13.608,
-13.598,13.588,13.577,13.567,13.556,13.546,13.535,13.525,13.514,13.503,13.492,13.481,13.471,13.459,13.448,13.437,
-13.426,13.414,13.403,13.391,13.379,13.367,13.355,13.343,13.330,13.318,13.305,13.292,13.279,13.265,13.252,13.238,
-13.224,13.210,13.195,13.181,13.166,13.151,13.136,13.120,13.105,13.089,13.072,13.056,13.039,13.022,13.005,12.988,
-12.970,12.952,12.934,12.916,12.897,12.879,12.860,12.840,12.821,12.801,12.781,12.761,12.741,12.721,12.700,12.679,
-12.658,12.637,12.616,12.595,12.573,12.552,12.530,12.508,12.487,12.465,12.443,12.421,12.399,12.378,12.356,12.334,
-12.312,12.291,12.269,12.248,12.227,12.206,12.185,12.164,12.144,12.124,12.104,12.084,12.065,12.046,12.028,12.010,
-11.992,11.975,11.958,11.941,11.925,11.910,11.895,11.881,11.867,11.854,11.842,11.830,11.819,11.808,11.798,11.789,
-11.781,11.774,11.767,11.761,11.756,11.752,11.749,11.746,11.745,11.744,11.744,11.745,11.747,11.750,11.754,11.759,
-11.765,11.772,11.780,11.789,11.799,11.810,11.822,11.835,11.849,11.864,11.880,11.897,11.915,11.934,11.953,11.974,
-11.996,12.019,12.042,12.067,12.093,12.119,12.146,12.174,12.203,12.233,12.264,12.295,12.327,12.360,12.393,12.427,
-12.462,12.498,12.534,12.570,12.607,12.645,12.683,12.721,12.760,12.799,12.839,12.879,12.919,12.959,12.999,13.040,
-13.081,13.121,13.162,13.203,13.244,13.284,13.325,13.365,13.405,13.445,13.484,13.524,13.562,13.601,13.639,13.676,
-13.713,13.750,13.786,13.821,13.856,13.890,13.923,13.955,13.987,14.018,14.048,14.077,14.106,14.133,14.160,14.185,
-14.210,14.233,14.256,14.277,14.298,14.317,14.335,14.353,14.369,14.383,14.397,14.410,14.421,14.432,14.441,14.449,
-14.456,14.461,14.466,14.469,14.471,14.472,14.472,14.471,14.469,14.465,14.461,14.455,14.448,14.440,14.432,14.422,
-14.411,14.399,14.386,14.372,14.357,14.342,14.325,14.308,14.290,14.270,14.251,14.230,14.209,14.187,14.164,14.141,
-14.117,14.092,14.067,14.042,14.015,13.989,13.962,13.934,13.907,13.879,13.850,13.822,13.793,13.763,13.734,13.705,
-13.675,13.645,13.615,13.585,13.556,13.526,13.496,13.466,13.436,13.407,13.377,13.348,13.319,13.290,13.261,13.233,
-13.205,13.177,13.149,13.122,13.095,13.068,13.042,13.016,12.991,12.966,12.941,12.917,12.893,12.870,12.847,12.825,
-12.803,12.781,12.760,12.740,12.720,12.700,12.681,12.662,12.644,12.627,12.610,12.593,12.577,12.561,12.546,12.531,
-12.517,12.503,12.490,12.477,12.465,12.453,12.441,12.430,12.419,12.409,12.398,12.389,12.380,12.371,12.362,12.354,
-12.346,12.338,12.331,12.324,12.317,12.310,12.304,12.298,12.292,12.287,12.281,12.276,12.271,12.266,12.261,12.257,
-12.252,12.248,12.243,12.239,12.235,12.231,12.227,12.223,12.219,12.216,12.212,12.208,12.204,12.201,12.197,12.193,
-12.189,12.185,12.181,12.177,12.173,12.169,12.165,12.161,12.157,12.153,12.148,12.144,12.139,12.135,12.130,12.125,
-12.120,12.115,12.110,12.105,12.100,12.094,12.089,12.083,12.078,12.072,12.066,12.060,12.054,12.048,12.042,12.036,
-12.030,12.023,12.017,12.011,12.004,11.997,11.991,11.984,11.977,11.971,11.964,11.957,11.950,11.943,11.937,11.930,
-11.923,11.916,11.909,11.902,11.896,11.889,11.882,11.875,11.869,11.862,11.855,11.849,11.842,11.836,11.830,11.824,
-11.817,11.811,11.805,11.799,11.794,11.788,11.782,11.777,11.772,11.766,11.761,11.756,11.752,11.747,11.742,11.738,
-11.734,11.730,11.726,11.722,11.718,11.715,11.711,11.708,11.705,11.702,11.699,11.697,11.695,11.692,11.690,11.689,
-11.687,11.686,11.684,11.683,11.682,11.681,11.681,11.680,11.680,11.680,11.680,11.680,11.681,11.682,11.682,11.683,
-11.685,11.686,11.687,11.689,11.691,11.693,11.695,11.698,11.700,11.703,11.706,11.709,11.712,11.715,11.719,11.722,
-11.726,11.730,11.734,11.738,11.743,11.747,11.752,11.757,11.762,11.767,11.772,11.778,11.783,11.789,11.795,11.801,
-11.807,11.813,11.819,11.826,11.832,11.839,11.846,11.853,11.860,11.867,11.874,11.881,11.888,11.896,11.903,11.911,
-11.919,11.927,11.935,11.943,11.951,11.959,11.967,11.975,11.984,11.992,12.000,12.009,12.017,12.026,12.035,12.043,
-12.052,12.061,12.070,12.079,12.088,12.097,12.105,12.114,12.123,12.132,12.141,12.150,12.159,12.169,12.178,12.187,
-12.196,12.205,12.214,12.223,12.232,12.241,12.250,12.259,12.268,12.277,12.286,12.295,12.303,12.312,12.321,12.330,
-12.339,12.347,12.356,12.365,12.374,12.382,12.391,12.400,12.408,12.417,12.425,12.434,12.443,12.451,12.460,12.468,
-12.477,12.485,12.494,12.502,12.511,12.520,12.528,12.537,12.545,12.554,12.563,12.572,12.580,12.589,12.598,12.607,
-12.616,12.625,12.635,12.644,12.653,12.663,12.672,12.682,12.692,12.702,12.712,12.722,12.733,12.744,12.754,12.765,
-12.776,12.788,12.799,12.811,12.823,12.835,12.848,12.861,12.874,12.887,12.900,12.914,12.928,12.942,12.957,12.972,
-12.987,13.003,13.018,13.035,13.051,13.068,13.085,13.103,13.121,13.139,13.157,13.176,13.196,13.215,13.235,13.256,
-13.277,13.298,13.319,13.341,13.364,13.386,13.409,13.433,13.457,13.481,13.505,13.530,13.556,13.581,13.608,13.634,
-13.661,13.688,13.715,13.743,13.771,13.800,13.828,13.858,13.887,13.917,13.947,13.977,14.008,14.038,14.070,14.101,
-14.132,14.164,14.196,14.229,14.261,14.294,14.327,14.360,14.393,14.426,14.460,14.493,14.527,14.561,14.595,14.629,
-14.663,14.697,14.732,14.766,14.800,14.835,14.869,14.903,14.938,14.972,15.006,15.041,15.075,15.109,15.143,15.177,
-15.211,15.245,15.279,15.313,15.346,15.380,15.413,15.446,15.479,15.512,15.545,15.578,15.610,15.642,15.675,15.706,
-15.738,15.770,15.801,15.832,15.863,15.894,15.925,15.955,15.985,16.015,16.045,16.074,16.104,16.133,16.162,16.191,
-16.219,16.247,16.275,16.303,16.331,16.359,16.386,16.413,16.440,16.466,16.493,16.519,16.545,16.571,16.596,16.622,
-16.647,16.672,16.697,16.722,16.746,16.770,16.794,16.818,16.842,16.866,16.889,16.912,16.935,16.958,16.980,17.002,
-17.025,17.047,17.068,17.090,17.111,17.132,17.153,17.174,17.194,17.215,17.235,17.255,17.274,17.294,17.313,17.332,
-17.350,17.369,17.387,17.405,17.422,17.439,17.456,17.473,17.489,17.505,17.521,17.537,17.552,17.566,17.581,17.595,
-17.608,17.622,17.635,17.647,17.659,17.671,17.682,17.693,17.703,17.713,17.723,17.732,17.740,17.748,17.756,17.763,
-17.770,17.776,17.781,17.786,17.791,17.795,17.798,17.801,17.803,17.805,17.806,17.807,17.807,17.806,17.805,17.804,
-17.801,17.799,17.795,17.791,17.787,17.782,17.776,17.770,17.763,17.755,17.747,17.739,17.730,17.720,17.710,17.699,
-17.688,17.676,17.664,17.651,17.638,17.624,17.610,17.595,17.580,17.564,17.548,17.531,17.514,17.497,17.479,17.461,
-17.443,17.424,17.405,17.386,17.366,17.346,17.326,17.306,17.285,17.264,17.243,17.222,17.201,17.179,17.158,17.136,
-17.114,17.093,17.071,17.049,17.027,17.005,16.983,16.962,16.940,16.918,16.897,16.876,16.854,16.833,16.812,16.792,
-16.771,16.751,16.731,16.711,16.692,16.673,16.654,16.635,16.617,16.599,16.581,16.564,16.547,16.531,16.515,16.499,
-16.484,16.469,16.455,16.441,16.427,16.414,16.402,16.390,16.378,16.367,16.356,16.346,16.336,16.327,16.318,16.310,
-16.302,16.295,16.288,16.281,16.275,16.270,16.265,16.261,16.257,16.253,16.250,16.247,16.245,16.243,16.242,16.241,
-16.241,16.241,16.241,16.242,16.243,16.244,16.246,16.248,16.251,16.254,16.257,16.260,16.264,16.268,16.273,16.277,
-16.282,16.288,16.293,16.298,16.304,16.310,16.316,16.323,16.329,16.336,16.343,16.350,16.357,16.364,16.371,16.378,
-16.385,16.393,16.400,16.408,16.415,16.422,16.430,16.437,16.445,16.452,16.459,16.466,16.474,16.481,16.488,16.495,
-16.501,16.508,16.515,16.521,16.527,16.533,16.539,16.545,16.551,16.556,16.562,16.567,16.572,16.576,16.581,16.585,
-16.590,16.594,16.597,16.601,16.604,16.607,16.610,16.613,16.615,16.618,16.620,16.622,16.623,16.625,16.626,16.627,
-16.628,16.628,16.629,16.629,16.629,16.628,16.628,16.627,16.626,16.625,16.624,16.623,16.621,16.620,16.618,16.616,
-16.613,16.611,16.608,16.606,16.603,16.600,16.597,16.594,16.591,16.587,16.584,16.580,16.576,16.573,16.569,16.565,
-16.561,16.557,16.553,16.548,16.544,16.540,16.536,16.531,16.527,16.522,16.518,16.514,16.509,16.505,16.500,16.496,
-16.492,16.487,16.483,16.479,16.474,16.470,16.466,17.042,17.035,17.029,17.022,17.015,17.009,17.003,16.996,16.990,
-16.985,16.979,16.973,16.968,16.963,16.958,16.953,16.948,16.944,16.939,16.935,16.931,16.927,16.923,16.920,16.916,
-16.913,16.910,16.907,16.904,16.901,16.898,16.896,16.893,16.891,16.889,16.887,16.885,16.883,16.881,16.880,16.878,
-16.876,16.875,16.873,16.872,16.871,16.870,16.868,16.867,16.866,16.865,16.864,16.863,16.861,16.860,16.859,16.858,
-16.857,16.856,16.855,16.853,16.852,16.851,16.849,16.848,16.846,16.845,16.843,16.841,16.840,16.838,16.836,16.834,
-16.831,16.829,16.827,16.824,16.821,16.819,16.816,16.813,16.809,16.806,16.802,16.799,16.795,16.791,16.787,16.783,
-16.778,16.774,16.769,16.764,16.759,16.754,16.748,16.743,16.737,16.731,16.725,16.718,16.712,16.705,16.698,16.691,
-16.684,16.676,16.669,16.661,16.653,16.645,16.636,16.628,16.619,16.610,16.601,16.592,16.582,16.572,16.563,16.553,
-16.542,16.532,16.522,16.511,16.500,16.489,16.478,16.466,16.455,16.443,16.431,16.419,16.407,16.395,16.382,16.370,
-16.357,16.344,16.331,16.318,16.305,16.292,16.278,16.265,16.251,16.237,16.223,16.209,16.195,16.181,16.167,16.153,
-16.138,16.124,16.109,16.094,16.080,16.065,16.050,16.036,16.021,16.006,15.991,15.976,15.961,15.946,15.931,15.916,
-15.901,15.886,15.871,15.856,15.841,15.826,15.812,15.797,15.782,15.767,15.752,15.738,15.723,15.708,15.694,15.679,
-15.665,15.651,15.637,15.622,15.608,15.594,15.580,15.566,15.553,15.539,15.525,15.512,15.498,15.485,15.472,15.459,
-15.446,15.433,15.420,15.407,15.395,15.382,15.370,15.357,15.345,15.333,15.321,15.309,15.297,15.285,15.273,15.261,
-15.250,15.238,15.227,15.215,15.204,15.192,15.181,15.170,15.159,15.148,15.137,15.126,15.115,15.104,15.093,15.082,
-15.071,15.060,15.049,15.038,15.027,15.016,15.006,14.995,14.984,14.973,14.962,14.951,14.939,14.928,14.917,14.906,
-14.895,14.883,14.872,14.860,14.849,14.837,14.826,14.814,14.802,14.790,14.778,14.766,14.754,14.742,14.729,14.717,
-14.705,14.692,14.679,14.667,14.654,14.641,14.628,14.615,14.602,14.588,14.575,14.562,14.548,14.535,14.521,14.507,
-14.494,14.480,14.466,14.452,14.438,14.424,14.410,14.396,14.382,14.368,14.354,14.339,14.325,14.311,14.297,14.283,
-14.269,14.254,14.240,14.226,14.212,14.198,14.184,14.170,14.156,14.142,14.129,14.115,14.101,14.088,14.074,14.061,
-14.048,14.035,14.021,14.008,13.996,13.983,13.970,13.958,13.945,13.933,13.921,13.909,13.897,13.886,13.874,13.863,
-13.851,13.840,13.829,13.819,13.808,13.797,13.787,13.777,13.767,13.757,13.747,13.737,13.727,13.718,13.709,13.699,
-13.690,13.681,13.672,13.663,13.655,13.646,13.637,13.629,13.620,13.612,13.604,13.595,13.587,13.578,13.570,13.562,
-13.553,13.545,13.537,13.528,13.520,13.511,13.502,13.493,13.484,13.475,13.466,13.457,13.447,13.437,13.427,13.417,
-13.407,13.396,13.386,13.374,13.363,13.351,13.339,13.327,13.315,13.302,13.288,13.275,13.261,13.246,13.231,13.216,
-13.201,13.184,13.168,13.151,13.134,13.116,13.098,13.079,13.060,13.040,13.020,12.999,12.978,12.957,12.935,12.912,
-12.889,12.866,12.842,12.817,12.792,12.767,12.741,12.715,12.689,12.662,12.634,12.607,12.579,12.550,12.521,12.492,
-12.463,12.433,12.404,12.373,12.343,12.313,12.282,12.252,12.221,12.190,12.159,12.128,12.098,12.067,12.036,12.006,
-11.976,11.946,11.916,11.887,11.857,11.829,11.800,11.773,11.745,11.718,11.692,11.667,11.642,11.618,11.594,11.571,
-11.550,11.529,11.509,11.490,11.472,11.455,11.439,11.424,11.410,11.398,11.387,11.377,11.368,11.361,11.355,11.350,
-11.347,11.345,11.345,11.346,11.349,11.354,11.359,11.367,11.376,11.387,11.399,11.413,11.428,11.445,11.464,11.485,
-11.507,11.530,11.556,11.582,11.611,11.641,11.672,11.706,11.740,11.776,11.814,11.853,11.893,11.935,11.978,12.023,
-12.069,12.115,12.163,12.213,12.263,12.314,12.366,12.419,12.473,12.528,12.583,12.640,12.696,12.753,12.811,12.869,
-12.928,12.986,13.045,13.104,13.163,13.222,13.281,13.340,13.399,13.457,13.515,13.572,13.629,13.685,13.740,13.795,
-13.849,13.902,13.954,14.005,14.056,14.104,14.152,14.198,14.244,14.287,14.329,14.370,14.409,14.447,14.483,14.517,
-14.550,14.580,14.609,14.637,14.662,14.685,14.707,14.726,14.744,14.759,14.773,14.784,14.794,14.801,14.807,14.810,
-14.811,14.811,14.808,14.804,14.797,14.788,14.778,14.765,14.751,14.735,14.717,14.697,14.675,14.652,14.627,14.600,
-14.571,14.542,14.510,14.477,14.443,14.407,14.370,14.331,14.292,14.251,14.209,14.167,14.123,14.078,14.032,13.986,
-13.939,13.891,13.843,13.794,13.744,13.695,13.644,13.594,13.543,13.492,13.441,13.390,13.339,13.288,13.237,13.186,
-13.136,13.086,13.036,12.986,12.937,12.888,12.840,12.793,12.746,12.699,12.654,12.609,12.564,12.521,12.478,12.437,
-12.396,12.356,12.317,12.278,12.241,12.205,12.170,12.135,12.102,12.070,12.039,12.009,11.979,11.951,11.924,11.898,
-11.873,11.850,11.827,11.805,11.784,11.764,11.745,11.727,11.710,11.695,11.679,11.665,11.652,11.640,11.628,11.618,
-11.608,11.599,11.590,11.583,11.576,11.570,11.564,11.559,11.555,11.551,11.548,11.546,11.544,11.542,11.541,11.540,
-11.540,11.540,11.540,11.540,11.541,11.542,11.544,11.545,11.547,11.549,11.551,11.553,11.556,11.558,11.560,11.563,
-11.565,11.567,11.570,11.572,11.574,11.576,11.579,11.581,11.582,11.584,11.586,11.587,11.588,11.589,11.590,11.591,
-11.592,11.592,11.592,11.592,11.592,11.591,11.591,11.590,11.589,11.587,11.586,11.584,11.582,11.580,11.578,11.575,
-11.572,11.570,11.567,11.563,11.560,11.556,11.553,11.549,11.545,11.541,11.537,11.533,11.528,11.524,11.519,11.515,
-11.510,11.506,11.501,11.497,11.492,11.487,11.483,11.478,11.474,11.469,11.465,11.461,11.457,11.452,11.448,11.445,
-11.441,11.437,11.434,11.430,11.427,11.424,11.421,11.419,11.416,11.414,11.412,11.410,11.409,11.407,11.406,11.405,
-11.404,11.404,11.404,11.404,11.404,11.404,11.405,11.406,11.407,11.409,11.410,11.412,11.414,11.417,11.420,11.422,
-11.426,11.429,11.432,11.436,11.440,11.444,11.449,11.453,11.458,11.463,11.468,11.474,11.479,11.485,11.491,11.497,
-11.503,11.509,11.516,11.523,11.529,11.536,11.543,11.550,11.557,11.565,11.572,11.579,11.587,11.594,11.602,11.610,
-11.617,11.625,11.633,11.641,11.649,11.657,11.665,11.673,11.681,11.689,11.697,11.705,11.713,11.721,11.729,11.737,
-11.745,11.753,11.761,11.769,11.777,11.785,11.794,11.802,11.810,11.818,11.826,11.834,11.842,11.850,11.858,11.866,
-11.874,11.882,11.890,11.898,11.906,11.914,11.922,11.931,11.939,11.947,11.955,11.964,11.972,11.980,11.989,11.997,
-12.006,12.014,12.023,12.032,12.040,12.049,12.058,12.067,12.076,12.085,12.095,12.104,12.113,12.123,12.132,12.142,
-12.151,12.161,12.171,12.181,12.191,12.201,12.211,12.221,12.231,12.242,12.252,12.262,12.273,12.283,12.294,12.305,
-12.315,12.326,12.337,12.348,12.359,12.369,12.380,12.391,12.402,12.413,12.424,12.435,12.446,12.456,12.467,12.478,
-12.489,12.500,12.510,12.521,12.532,12.542,12.552,12.563,12.573,12.583,12.594,12.604,12.614,12.623,12.633,12.643,
-12.652,12.662,12.671,12.681,12.690,12.699,12.708,12.717,12.725,12.734,12.743,12.751,12.759,12.768,12.776,12.784,
-12.792,12.800,12.808,12.816,12.824,12.832,12.840,12.847,12.855,12.863,12.871,12.878,12.886,12.894,12.902,12.910,
-12.918,12.926,12.935,12.943,12.952,12.960,12.969,12.978,12.988,12.997,13.007,13.017,13.027,13.038,13.048,13.059,
-13.071,13.082,13.095,13.107,13.120,13.133,13.147,13.161,13.175,13.190,13.205,13.221,13.237,13.254,13.271,13.289,
-13.307,13.326,13.345,13.365,13.385,13.406,13.428,13.449,13.472,13.495,13.519,13.543,13.568,13.593,13.619,13.645,
-13.672,13.700,13.728,13.756,13.785,13.815,13.845,13.876,13.907,13.938,13.971,14.003,14.036,14.069,14.103,14.137,
-14.172,14.207,14.242,14.278,14.314,14.350,14.386,14.423,14.460,14.497,14.535,14.573,14.610,14.648,14.686,14.725,
-14.763,14.801,14.839,14.878,14.916,14.955,14.993,15.031,15.070,15.108,15.146,15.184,15.221,15.259,15.296,15.334,
-15.371,15.408,15.444,15.481,15.517,15.553,15.588,15.623,15.658,15.693,15.727,15.761,15.795,15.828,15.861,15.894,
-15.926,15.958,15.990,16.021,16.052,16.083,16.113,16.143,16.173,16.202,16.231,16.259,16.287,16.315,16.343,16.370,
-16.397,16.424,16.451,16.477,16.503,16.528,16.554,16.579,16.604,16.629,16.654,16.678,16.702,16.727,16.751,16.775,
-16.798,16.822,16.846,16.869,16.893,16.916,16.939,16.963,16.986,17.009,17.032,17.056,17.079,17.102,17.125,17.149,
-17.172,17.195,17.219,17.242,17.266,17.289,17.313,17.337,17.360,17.384,17.408,17.432,17.455,17.479,17.503,17.527,
-17.551,17.575,17.599,17.623,17.646,17.670,17.694,17.718,17.741,17.765,17.788,17.811,17.834,17.857,17.880,17.902,
-17.925,17.947,17.968,17.990,18.011,18.032,18.052,18.072,18.092,18.111,18.130,18.148,18.166,18.183,18.200,18.217,
-18.232,18.247,18.262,18.276,18.289,18.301,18.313,18.324,18.335,18.345,18.353,18.362,18.369,18.375,18.381,18.386,
-18.390,18.393,18.396,18.397,18.398,18.397,18.396,18.394,18.391,18.388,18.383,18.377,18.371,18.364,18.355,18.346,
-18.336,18.326,18.314,18.301,18.288,18.274,18.259,18.244,18.227,18.210,18.192,18.174,18.155,18.135,18.114,18.093,
-18.071,18.049,18.026,18.003,17.979,17.955,17.931,17.906,17.880,17.855,17.829,17.803,17.776,17.749,17.723,17.696,
-17.669,17.641,17.614,17.587,17.560,17.533,17.506,17.479,17.452,17.425,17.399,17.373,17.347,17.321,17.296,17.271,
-17.247,17.222,17.199,17.175,17.153,17.130,17.109,17.087,17.067,17.047,17.027,17.008,16.990,16.972,16.955,16.939,
-16.924,16.909,16.894,16.881,16.868,16.856,16.845,16.834,16.824,16.815,16.807,16.799,16.792,16.786,16.781,16.776,
-16.772,16.768,16.766,16.764,16.763,16.762,16.762,16.763,16.765,16.767,16.769,16.773,16.776,16.781,16.786,16.791,
-16.798,16.804,16.811,16.819,16.827,16.835,16.844,16.853,16.863,16.873,16.883,16.894,16.905,16.916,16.927,16.939,
-16.951,16.963,16.975,16.988,17.000,17.013,17.025,17.038,17.051,17.064,17.077,17.090,17.102,17.115,17.128,17.141,
-17.153,17.165,17.178,17.190,17.202,17.214,17.225,17.237,17.248,17.259,17.270,17.280,17.291,17.300,17.310,17.320,
-17.329,17.337,17.346,17.354,17.362,17.369,17.376,17.383,17.389,17.395,17.401,17.406,17.411,17.416,17.420,17.423,
-17.427,17.430,17.432,17.435,17.437,17.438,17.439,17.440,17.440,17.440,17.440,17.439,17.438,17.437,17.435,17.433,
-17.431,17.428,17.425,17.422,17.418,17.414,17.410,17.405,17.400,17.395,17.390,17.385,17.379,17.373,17.367,17.360,
-17.353,17.347,17.340,17.333,17.325,17.318,17.310,17.302,17.294,17.287,17.278,17.270,17.262,17.254,17.245,17.237,
-17.228,17.220,17.211,17.203,17.194,17.186,17.177,17.169,17.160,17.152,17.144,17.135,17.127,17.119,17.111,17.103,
-17.095,17.087,17.079,17.072,17.064,17.057,17.050,17.042,17.632,17.626,17.620,17.615,17.609,17.604,17.599,17.593,
-17.589,17.584,17.579,17.575,17.570,17.566,17.562,17.558,17.555,17.551,17.548,17.544,17.541,17.538,17.535,17.532,
-17.529,17.526,17.524,17.521,17.519,17.516,17.514,17.511,17.509,17.507,17.505,17.503,17.500,17.498,17.496,17.494,
-17.492,17.490,17.488,17.486,17.484,17.481,17.479,17.477,17.475,17.472,17.470,17.468,17.465,17.462,17.460,17.457,
-17.454,17.452,17.449,17.446,17.443,17.440,17.436,17.433,17.430,17.426,17.423,17.419,17.415,17.411,17.407,17.403,
-17.399,17.395,17.391,17.386,17.382,17.377,17.373,17.368,17.363,17.358,17.353,17.348,17.343,17.338,17.332,17.327,
-17.322,17.316,17.310,17.305,17.299,17.293,17.287,17.281,17.275,17.269,17.263,17.256,17.250,17.244,17.237,17.231,
-17.224,17.217,17.210,17.203,17.196,17.189,17.182,17.175,17.168,17.160,17.153,17.145,17.137,17.129,17.121,17.113,
-17.105,17.097,17.089,17.080,17.071,17.063,17.054,17.045,17.035,17.026,17.017,17.007,16.997,16.987,16.977,16.967,
-16.956,16.946,16.935,16.924,16.913,16.901,16.890,16.878,16.866,16.854,16.841,16.829,16.816,16.803,16.790,16.776,
-16.763,16.749,16.735,16.721,16.707,16.692,16.677,16.662,16.647,16.632,16.616,16.600,16.585,16.569,16.552,16.536,
-16.519,16.503,16.486,16.469,16.452,16.435,16.417,16.400,16.382,16.364,16.347,16.329,16.311,16.293,16.275,16.257,
-16.239,16.221,16.202,16.184,16.166,16.148,16.130,16.111,16.093,16.075,16.057,16.039,16.021,16.003,15.985,15.967,
-15.950,15.932,15.915,15.897,15.880,15.863,15.846,15.829,15.812,15.795,15.779,15.762,15.746,15.730,15.714,15.698,
-15.682,15.666,15.651,15.635,15.620,15.605,15.590,15.575,15.561,15.546,15.532,15.517,15.503,15.489,15.475,15.461,
-15.447,15.433,15.420,15.406,15.393,15.379,15.366,15.352,15.339,15.326,15.312,15.299,15.286,15.273,15.260,15.246,
-15.233,15.220,15.207,15.193,15.180,15.166,15.153,15.139,15.126,15.112,15.098,15.085,15.071,15.057,15.043,15.028,
-15.014,15.000,14.985,14.970,14.956,14.941,14.926,14.911,14.895,14.880,14.864,14.849,14.833,14.817,14.801,14.785,
-14.768,14.752,14.735,14.718,14.702,14.685,14.667,14.650,14.633,14.616,14.598,14.580,14.563,14.545,14.527,14.509,
-14.491,14.473,14.454,14.436,14.418,14.399,14.381,14.362,14.344,14.325,14.307,14.288,14.270,14.251,14.233,14.214,
-14.196,14.177,14.159,14.140,14.122,14.104,14.085,14.067,14.049,14.031,14.013,13.996,13.978,13.960,13.943,13.926,
-13.908,13.891,13.875,13.858,13.841,13.825,13.809,13.793,13.777,13.761,13.746,13.730,13.715,13.700,13.686,13.671,
-13.657,13.643,13.629,13.616,13.603,13.590,13.577,13.564,13.552,13.540,13.528,13.516,13.504,13.493,13.482,13.471,
-13.461,13.450,13.440,13.430,13.420,13.411,13.401,13.392,13.383,13.374,13.365,13.356,13.347,13.339,13.330,13.322,
-13.314,13.305,13.297,13.289,13.281,13.272,13.264,13.256,13.247,13.239,13.230,13.222,13.213,13.204,13.194,13.185,
-13.175,13.165,13.155,13.144,13.134,13.122,13.111,13.099,13.087,13.074,13.061,13.047,13.033,13.018,13.003,12.988,
-12.971,12.955,12.937,12.919,12.901,12.882,12.862,12.841,12.820,12.798,12.776,12.753,12.729,12.704,12.679,12.654,
-12.627,12.600,12.572,12.544,12.515,12.485,12.454,12.424,12.392,12.360,12.327,12.294,12.261,12.227,12.192,12.157,
-12.122,12.087,12.051,12.015,11.978,11.942,11.906,11.869,11.833,11.796,11.760,11.723,11.687,11.652,11.616,11.581,
-11.547,11.513,11.479,11.446,11.414,11.383,11.352,11.323,11.294,11.267,11.240,11.215,11.191,11.168,11.147,11.127,
-11.109,11.092,11.076,11.063,11.051,11.041,11.033,11.026,11.022,11.019,11.019,11.020,11.024,11.030,11.038,11.048,
-11.060,11.075,11.092,11.111,11.132,11.156,11.181,11.210,11.240,11.272,11.307,11.344,11.383,11.425,11.468,11.513,
-11.561,11.610,11.661,11.715,11.770,11.826,11.885,11.945,12.006,12.069,12.133,12.199,12.266,12.334,12.402,12.472,
-12.542,12.614,12.685,12.757,12.830,12.903,12.976,13.048,13.121,13.194,13.266,13.337,13.409,13.479,13.548,13.617,
-13.685,13.751,13.816,13.880,13.942,14.003,14.062,14.119,14.174,14.227,14.278,14.327,14.374,14.418,14.460,14.499,
-14.535,14.569,14.601,14.629,14.655,14.678,14.698,14.715,14.729,14.740,14.748,14.753,14.755,14.753,14.749,14.742,
-14.732,14.719,14.703,14.683,14.661,14.636,14.609,14.578,14.545,14.509,14.470,14.429,14.385,14.339,14.291,14.240,
-14.188,14.133,14.076,14.017,13.957,13.895,13.831,13.766,13.699,13.631,13.562,13.492,13.421,13.349,13.276,13.203,
-13.129,13.055,12.980,12.906,12.831,12.756,12.681,12.607,12.533,12.459,12.386,12.313,12.242,12.171,12.100,12.031,
-11.963,11.896,11.830,11.766,11.702,11.640,11.580,11.521,11.464,11.408,11.354,11.301,11.250,11.201,11.154,11.109,
-11.065,11.024,10.984,10.946,10.910,10.876,10.843,10.813,10.784,10.757,10.733,10.710,10.688,10.669,10.651,10.635,
-10.621,10.608,10.597,10.588,10.580,10.574,10.569,10.566,10.564,10.563,10.564,10.565,10.568,10.573,10.578,10.584,
-10.591,10.600,10.609,10.618,10.629,10.640,10.652,10.665,10.678,10.691,10.705,10.720,10.735,10.750,10.765,10.780,
-10.796,10.812,10.827,10.843,10.859,10.875,10.890,10.906,10.921,10.936,10.951,10.966,10.980,10.994,11.008,11.021,
-11.034,11.046,11.058,11.070,11.081,11.091,11.102,11.111,11.120,11.129,11.137,11.145,11.152,11.158,11.164,11.170,
-11.175,11.180,11.184,11.187,11.190,11.193,11.195,11.196,11.198,11.198,11.199,11.199,11.198,11.198,11.197,11.195,
-11.194,11.192,11.189,11.187,11.184,11.182,11.179,11.175,11.172,11.169,11.165,11.162,11.159,11.155,11.152,11.148,
-11.145,11.142,11.138,11.135,11.133,11.130,11.127,11.125,11.123,11.121,11.120,11.119,11.118,11.117,11.117,11.117,
-11.118,11.119,11.120,11.122,11.124,11.126,11.129,11.133,11.137,11.141,11.146,11.151,11.157,11.163,11.169,11.177,
-11.184,11.192,11.201,11.210,11.219,11.229,11.240,11.250,11.262,11.273,11.285,11.298,11.310,11.324,11.337,11.351,
-11.365,11.380,11.395,11.410,11.426,11.441,11.457,11.473,11.490,11.506,11.523,11.540,11.557,11.574,11.592,11.609,
-11.626,11.644,11.661,11.679,11.696,11.713,11.731,11.748,11.765,11.782,11.799,11.816,11.833,11.849,11.866,11.882,
-11.898,11.913,11.929,11.944,11.959,11.974,11.988,12.002,12.016,12.030,12.043,12.056,12.069,12.081,12.093,12.105,
-12.117,12.128,12.139,12.149,12.159,12.169,12.179,12.188,12.197,12.206,12.215,12.223,12.231,12.239,12.246,12.254,
-12.261,12.268,12.275,12.281,12.288,12.294,12.300,12.306,12.312,12.318,12.324,12.330,12.335,12.341,12.347,12.353,
-12.359,12.365,12.371,12.377,12.383,12.389,12.396,12.402,12.409,12.416,12.423,12.430,12.438,12.446,12.454,12.462,
-12.470,12.479,12.488,12.498,12.507,12.517,12.528,12.538,12.549,12.560,12.572,12.584,12.596,12.609,12.621,12.635,
-12.648,12.662,12.676,12.690,12.705,12.720,12.735,12.750,12.766,12.782,12.798,12.814,12.831,12.847,12.864,12.881,
-12.898,12.916,12.933,12.950,12.968,12.985,13.003,13.021,13.038,13.056,13.073,13.091,13.108,13.125,13.142,13.159,
-13.176,13.193,13.209,13.225,13.241,13.257,13.273,13.288,13.303,13.318,13.332,13.346,13.360,13.373,13.386,13.399,
-13.412,13.424,13.435,13.447,13.458,13.468,13.479,13.488,13.498,13.507,13.516,13.525,13.533,13.541,13.549,13.556,
-13.563,13.570,13.576,13.583,13.589,13.595,13.601,13.606,13.612,13.617,13.623,13.628,13.633,13.638,13.644,13.649,
-13.655,13.660,13.666,13.671,13.677,13.684,13.690,13.697,13.704,13.711,13.719,13.727,13.735,13.744,13.753,13.763,
-13.773,13.784,13.795,13.807,13.819,13.832,13.846,13.860,13.875,13.890,13.906,13.923,13.940,13.959,13.978,13.997,
-14.018,14.039,14.060,14.083,14.106,14.130,14.154,14.180,14.206,14.232,14.260,14.288,14.316,14.346,14.376,14.406,
-14.437,14.469,14.501,14.534,14.567,14.600,14.634,14.669,14.704,14.739,14.775,14.811,14.847,14.883,14.920,14.957,
-14.994,15.031,15.068,15.105,15.143,15.180,15.217,15.255,15.292,15.329,15.366,15.402,15.439,15.475,15.511,15.547,
-15.582,15.618,15.652,15.687,15.721,15.754,15.787,15.820,15.852,15.884,15.916,15.946,15.977,16.006,16.036,16.064,
-16.093,16.120,16.148,16.174,16.200,16.226,16.251,16.275,16.299,16.323,16.346,16.369,16.391,16.412,16.434,16.454,
-16.475,16.495,16.515,16.534,16.553,16.572,16.590,16.609,16.627,16.645,16.662,16.680,16.697,16.715,16.732,16.750,
-16.767,16.784,16.802,16.819,16.837,16.855,16.873,16.891,16.909,16.928,16.946,16.965,16.985,17.005,17.025,17.045,
-17.066,17.087,17.109,17.131,17.153,17.176,17.199,17.223,17.247,17.272,17.297,17.323,17.349,17.375,17.402,17.429,
-17.457,17.485,17.514,17.543,17.573,17.602,17.633,17.663,17.694,17.725,17.756,17.787,17.819,17.851,17.883,17.915,
-17.947,17.979,18.011,18.044,18.076,18.108,18.139,18.171,18.202,18.233,18.264,18.294,18.324,18.354,18.383,18.411,
-18.439,18.467,18.493,18.519,18.545,18.569,18.593,18.616,18.638,18.659,18.679,18.698,18.716,18.733,18.749,18.764,
-18.778,18.791,18.802,18.813,18.822,18.830,18.837,18.842,18.847,18.850,18.851,18.852,18.851,18.849,18.846,18.842,
-18.836,18.829,18.821,18.812,18.801,18.789,18.777,18.763,18.748,18.732,18.714,18.696,18.677,18.657,18.636,18.615,
-18.592,18.569,18.544,18.520,18.494,18.468,18.441,18.414,18.386,18.358,18.330,18.301,18.272,18.242,18.213,18.183,
-18.153,18.123,18.093,18.063,18.034,18.004,17.975,17.946,17.917,17.888,17.860,17.832,17.805,17.778,17.751,17.726,
-17.700,17.676,17.652,17.629,17.606,17.584,17.563,17.543,17.524,17.505,17.487,17.470,17.454,17.439,17.425,17.412,
-17.400,17.388,17.378,17.368,17.359,17.352,17.345,17.339,17.334,17.330,17.327,17.325,17.323,17.323,17.323,17.325,
-17.327,17.329,17.333,17.337,17.342,17.348,17.355,17.362,17.370,17.378,17.387,17.397,17.407,17.418,17.429,17.440,
-17.452,17.465,17.478,17.491,17.504,17.518,17.532,17.547,17.561,17.576,17.591,17.606,17.621,17.636,17.651,17.666,
-17.681,17.697,17.712,17.727,17.742,17.757,17.772,17.786,17.801,17.815,17.829,17.843,17.857,17.870,17.883,17.896,
-17.909,17.921,17.933,17.944,17.956,17.967,17.977,17.987,17.997,18.007,18.016,18.024,18.032,18.040,18.048,18.055,
-18.062,18.068,18.074,18.079,18.084,18.089,18.093,18.096,18.100,18.103,18.105,18.107,18.109,18.110,18.111,18.112,
-18.112,18.112,18.111,18.110,18.109,18.107,18.105,18.103,18.100,18.097,18.094,18.090,18.086,18.082,18.078,18.073,
-18.068,18.062,18.057,18.051,18.045,18.038,18.032,18.025,18.018,18.011,18.004,17.996,17.989,17.981,17.973,17.965,
-17.957,17.948,17.940,17.931,17.923,17.914,17.905,17.897,17.888,17.879,17.870,17.861,17.852,17.843,17.834,17.826,
-17.817,17.808,17.799,17.791,17.782,17.773,17.765,17.756,17.748,17.740,17.732,17.724,17.716,17.708,17.701,17.693,
-17.686,17.679,17.671,17.665,17.658,17.651,17.645,17.638,17.632,18.285,18.284,18.282,18.281,18.280,18.280,18.279,
-18.278,18.277,18.277,18.276,18.276,18.275,18.275,18.274,18.274,18.273,18.273,18.273,18.272,18.271,18.271,18.270,
-18.269,18.268,18.267,18.266,18.265,18.264,18.262,18.260,18.259,18.257,18.255,18.252,18.250,18.247,18.244,18.241,
-18.237,18.234,18.230,18.226,18.221,18.217,18.212,18.207,18.201,18.196,18.190,18.184,18.177,18.171,18.164,18.157,
-18.150,18.142,18.134,18.126,18.118,18.110,18.101,18.092,18.083,18.074,18.065,18.055,18.046,18.036,18.026,18.016,
-18.006,17.996,17.985,17.975,17.965,17.954,17.944,17.933,17.923,17.912,17.902,17.891,17.881,17.871,17.861,17.850,
-17.840,17.830,17.821,17.811,17.801,17.792,17.782,17.773,17.764,17.755,17.747,17.738,17.730,17.722,17.714,17.706,
-17.698,17.691,17.684,17.677,17.670,17.663,17.657,17.651,17.644,17.639,17.633,17.627,17.622,17.616,17.611,17.606,
-17.601,17.596,17.591,17.586,17.581,17.577,17.572,17.567,17.563,17.558,17.553,17.548,17.544,17.539,17.534,17.528,
-17.523,17.518,17.512,17.507,17.501,17.495,17.488,17.482,17.475,17.468,17.460,17.453,17.445,17.436,17.428,17.419,
-17.409,17.400,17.390,17.379,17.368,17.357,17.346,17.333,17.321,17.308,17.295,17.281,17.267,17.253,17.238,17.222,
-17.206,17.190,17.174,17.157,17.139,17.122,17.103,17.085,17.066,17.047,17.027,17.008,16.988,16.967,16.946,16.925,
-16.904,16.883,16.861,16.839,16.817,16.795,16.773,16.750,16.728,16.705,16.682,16.659,16.637,16.614,16.591,16.568,
-16.545,16.522,16.499,16.477,16.454,16.432,16.409,16.387,16.365,16.343,16.321,16.299,16.278,16.256,16.235,16.214,
-16.193,16.173,16.152,16.132,16.112,16.092,16.073,16.054,16.034,16.016,15.997,15.978,15.960,15.942,15.924,15.906,
-15.889,15.871,15.854,15.837,15.820,15.803,15.786,15.770,15.753,15.737,15.721,15.704,15.688,15.672,15.656,15.640,
-15.624,15.608,15.592,15.576,15.560,15.543,15.527,15.511,15.495,15.478,15.462,15.446,15.429,15.412,15.396,15.379,
-15.362,15.345,15.327,15.310,15.292,15.275,15.257,15.239,15.221,15.203,15.185,15.166,15.147,15.129,15.110,15.091,
-15.072,15.052,15.033,15.013,14.994,14.974,14.954,14.934,14.913,14.893,14.872,14.852,14.831,14.810,14.789,14.768,
-14.747,14.726,14.704,14.683,14.661,14.640,14.618,14.596,14.574,14.552,14.530,14.508,14.486,14.464,14.441,14.419,
-14.396,14.374,14.351,14.328,14.305,14.283,14.260,14.237,14.214,14.191,14.167,14.144,14.121,14.098,14.074,14.051,
-14.028,14.004,13.981,13.958,13.934,13.911,13.887,13.864,13.841,13.817,13.794,13.771,13.747,13.724,13.701,13.678,
-13.655,13.633,13.610,13.587,13.565,13.543,13.520,13.499,13.477,13.455,13.434,13.413,13.392,13.371,13.351,13.331,
-13.311,13.291,13.272,13.253,13.235,13.217,13.199,13.181,13.164,13.147,13.131,13.115,13.099,13.084,13.070,13.055,
-13.041,13.028,13.015,13.002,12.990,12.978,12.967,12.956,12.945,12.935,12.925,12.916,12.906,12.898,12.889,12.881,
-12.873,12.866,12.859,12.852,12.845,12.838,12.832,12.825,12.819,12.813,12.807,12.801,12.795,12.789,12.782,12.776,
-12.770,12.763,12.756,12.749,12.742,12.734,12.726,12.717,12.709,12.699,12.689,12.679,12.668,12.656,12.644,12.631,
-12.617,12.603,12.587,12.571,12.555,12.537,12.518,12.499,12.479,12.457,12.435,12.412,12.388,12.363,12.337,12.310,
-12.282,12.253,12.224,12.193,12.162,12.129,12.096,12.062,12.027,11.992,11.956,11.919,11.881,11.843,11.805,11.766,
-11.727,11.687,11.647,11.607,11.567,11.527,11.486,11.446,11.407,11.367,11.328,11.290,11.252,11.215,11.178,11.143,
-11.108,11.075,11.042,11.011,10.982,10.953,10.927,10.902,10.879,10.858,10.838,10.821,10.806,10.793,10.782,10.774,
-10.768,10.765,10.764,10.766,10.771,10.778,10.788,10.801,10.817,10.835,10.857,10.882,10.909,10.939,10.973,11.009,
-11.048,11.090,11.134,11.182,11.232,11.285,11.340,11.398,11.459,11.522,11.587,11.654,11.723,11.794,11.868,11.942,
-12.019,12.096,12.176,12.256,12.337,12.419,12.502,12.585,12.669,12.752,12.836,12.920,13.003,13.086,13.168,13.250,
-13.330,13.409,13.486,13.563,13.637,13.709,13.780,13.848,13.914,13.977,14.038,14.096,14.150,14.202,14.251,14.296,
-14.338,14.376,14.411,14.441,14.468,14.492,14.511,14.526,14.537,14.544,14.547,14.546,14.540,14.531,14.517,14.499,
-14.477,14.451,14.421,14.387,14.350,14.308,14.262,14.213,14.160,14.104,14.044,13.981,13.915,13.846,13.773,13.699,
-13.621,13.541,13.459,13.374,13.288,13.200,13.110,13.018,12.925,12.831,12.736,12.640,12.544,12.447,12.349,12.252,
-12.154,12.057,11.960,11.864,11.768,11.673,11.579,11.486,11.394,11.304,11.215,11.128,11.043,10.960,10.878,10.799,
-10.722,10.647,10.574,10.504,10.437,10.372,10.310,10.250,10.194,10.140,10.088,10.040,9.995,9.952,9.912,9.876,
-9.842,9.811,9.782,9.757,9.734,9.715,9.698,9.683,9.671,9.662,9.656,9.651,9.650,9.650,9.653,9.658,
-9.665,9.674,9.686,9.699,9.713,9.730,9.748,9.768,9.789,9.811,9.835,9.860,9.886,9.913,9.941,9.970,
-9.999,10.029,10.060,10.091,10.123,10.155,10.187,10.220,10.252,10.285,10.317,10.349,10.382,10.413,10.445,10.476,
-10.507,10.538,10.568,10.597,10.626,10.654,10.682,10.709,10.735,10.760,10.785,10.808,10.831,10.853,10.875,10.895,
-10.914,10.933,10.950,10.967,10.983,10.998,11.012,11.025,11.037,11.048,11.058,11.068,11.076,11.084,11.091,11.097,
-11.102,11.107,11.111,11.114,11.116,11.118,11.119,11.119,11.119,11.118,11.117,11.115,11.112,11.110,11.106,11.103,
-11.099,11.095,11.090,11.086,11.081,11.075,11.070,11.065,11.059,11.054,11.048,11.042,11.037,11.031,11.026,11.021,
-11.016,11.011,11.006,11.002,10.998,10.994,10.991,10.988,10.985,10.983,10.981,10.980,10.979,10.979,10.979,10.980,
-10.982,10.984,10.986,10.989,10.993,10.997,11.002,11.008,11.015,11.022,11.029,11.038,11.047,11.056,11.067,11.078,
-11.090,11.102,11.115,11.129,11.143,11.158,11.174,11.190,11.207,11.224,11.242,11.260,11.280,11.299,11.319,11.340,
-11.361,11.382,11.404,11.426,11.449,11.471,11.495,11.518,11.542,11.566,11.590,11.614,11.639,11.663,11.688,11.712,
-11.737,11.762,11.786,11.811,11.835,11.860,11.884,11.908,11.932,11.955,11.979,12.002,12.025,12.047,12.069,12.091,
-12.112,12.133,12.154,12.174,12.193,12.212,12.231,12.249,12.266,12.284,12.300,12.316,12.331,12.346,12.360,12.374,
-12.387,12.400,12.412,12.423,12.434,12.444,12.454,12.463,12.472,12.480,12.487,12.495,12.501,12.507,12.513,12.518,
-12.523,12.528,12.532,12.535,12.539,12.542,12.545,12.547,12.550,12.552,12.554,12.555,12.557,12.559,12.560,12.562,
-12.563,12.565,12.566,12.568,12.570,12.572,12.574,12.576,12.579,12.582,12.585,12.589,12.592,12.597,12.601,12.606,
-12.612,12.618,12.624,12.631,12.639,12.647,12.656,12.665,12.675,12.685,12.696,12.708,12.721,12.734,12.747,12.762,
-12.777,12.793,12.809,12.826,12.844,12.862,12.881,12.901,12.921,12.942,12.963,12.985,13.008,13.031,13.054,13.079,
-13.103,13.128,13.154,13.179,13.206,13.232,13.259,13.286,13.313,13.340,13.368,13.396,13.424,13.451,13.479,13.507,
-13.535,13.562,13.590,13.617,13.644,13.671,13.697,13.724,13.749,13.775,13.800,13.824,13.848,13.872,13.895,13.917,
-13.939,13.960,13.981,14.000,14.020,14.038,14.056,14.073,14.089,14.104,14.119,14.133,14.146,14.159,14.171,14.181,
-14.192,14.201,14.210,14.218,14.225,14.232,14.237,14.243,14.247,14.251,14.255,14.258,14.260,14.262,14.264,14.265,
-14.266,14.266,14.266,14.266,14.266,14.265,14.264,14.263,14.263,14.262,14.261,14.260,14.260,14.259,14.259,14.259,
-14.259,14.260,14.261,14.263,14.264,14.267,14.270,14.273,14.277,14.282,14.287,14.293,14.300,14.308,14.316,14.325,
-14.335,14.346,14.357,14.369,14.383,14.397,14.412,14.428,14.444,14.462,14.480,14.500,14.520,14.541,14.563,14.586,
-14.609,14.634,14.659,14.685,14.711,14.739,14.767,14.795,14.825,14.855,14.885,14.916,14.948,14.980,15.012,15.045,
-15.078,15.111,15.145,15.179,15.213,15.248,15.282,15.317,15.351,15.386,15.421,15.455,15.490,15.524,15.558,15.592,
-15.626,15.659,15.692,15.725,15.757,15.789,15.821,15.852,15.883,15.913,15.942,15.972,16.000,16.028,16.056,16.083,
-16.109,16.135,16.160,16.185,16.209,16.232,16.255,16.277,16.299,16.320,16.340,16.360,16.380,16.399,16.417,16.436,
-16.453,16.470,16.487,16.504,16.520,16.536,16.551,16.566,16.582,16.596,16.611,16.626,16.640,16.655,16.670,16.684,
-16.699,16.714,16.729,16.744,16.759,16.775,16.791,16.807,16.824,16.841,16.858,16.876,16.895,16.914,16.933,16.953,
-16.974,16.996,17.018,17.041,17.064,17.089,17.114,17.139,17.166,17.193,17.222,17.251,17.280,17.311,17.342,17.375,
-17.407,17.441,17.476,17.511,17.547,17.584,17.621,17.659,17.698,17.737,17.777,17.818,17.859,17.900,17.942,17.985,
-18.027,18.070,18.113,18.157,18.200,18.244,18.288,18.331,18.375,18.419,18.462,18.505,18.548,18.590,18.632,18.673,
-18.714,18.755,18.794,18.833,18.871,18.909,18.945,18.980,19.015,19.048,19.080,19.111,19.141,19.170,19.197,19.223,
-19.248,19.271,19.292,19.313,19.331,19.348,19.364,19.378,19.390,19.401,19.410,19.417,19.423,19.428,19.430,19.431,
-19.430,19.428,19.424,19.419,19.412,19.403,19.393,19.382,19.369,19.355,19.339,19.322,19.304,19.285,19.264,19.243,
-19.220,19.196,19.172,19.146,19.120,19.093,19.065,19.037,19.008,18.979,18.949,18.918,18.888,18.857,18.826,18.795,
-18.764,18.733,18.702,18.672,18.641,18.611,18.581,18.551,18.522,18.494,18.466,18.438,18.412,18.386,18.360,18.336,
-18.312,18.289,18.267,18.246,18.226,18.207,18.189,18.171,18.155,18.140,18.126,18.113,18.101,18.090,18.080,18.072,
-18.064,18.057,18.052,18.047,18.043,18.041,18.039,18.038,18.038,18.040,18.041,18.044,18.048,18.052,18.058,18.063,
-18.070,18.077,18.085,18.094,18.103,18.112,18.122,18.132,18.143,18.154,18.166,18.177,18.189,18.202,18.214,18.227,
-18.239,18.252,18.265,18.277,18.290,18.303,18.315,18.328,18.340,18.352,18.364,18.376,18.388,18.399,18.410,18.421,
-18.432,18.442,18.452,18.461,18.471,18.479,18.488,18.496,18.504,18.511,18.518,18.525,18.531,18.537,18.543,18.548,
-18.553,18.557,18.561,18.565,18.569,18.572,18.574,18.577,18.579,18.580,18.582,18.583,18.584,18.585,18.585,18.585,
-18.585,18.584,18.584,18.583,18.582,18.581,18.579,18.577,18.576,18.574,18.571,18.569,18.567,18.564,18.561,18.559,
-18.556,18.553,18.549,18.546,18.543,18.539,18.536,18.532,18.528,18.525,18.521,18.517,18.513,18.509,18.505,18.501,
-18.496,18.492,18.488,18.483,18.479,18.475,18.470,18.466,18.461,18.457,18.452,18.447,18.443,18.438,18.434,18.429,
-18.424,18.420,18.415,18.410,18.406,18.401,18.397,18.392,18.387,18.383,18.379,18.374,18.370,18.366,18.361,18.357,
-18.353,18.349,18.345,18.341,18.338,18.334,18.330,18.327,18.324,18.320,18.317,18.314,18.311,18.309,18.306,18.303,
-18.301,18.299,18.297,18.295,18.293,18.291,18.289,18.288,18.286,18.285,18.974,18.976,18.978,18.981,18.983,18.985,
-18.988,18.990,18.993,18.995,18.998,19.000,19.003,19.005,19.008,19.010,19.012,19.015,19.017,19.019,19.020,19.022,
-19.023,19.024,19.025,19.026,19.026,19.026,19.026,19.026,19.025,19.023,19.022,19.020,19.017,19.014,19.011,19.007,
-19.003,18.998,18.993,18.987,18.981,18.974,18.967,18.960,18.952,18.943,18.934,18.925,18.915,18.904,18.893,18.882,
-18.870,18.858,18.846,18.833,18.819,18.805,18.791,18.777,18.762,18.747,18.732,18.717,18.701,18.685,18.669,18.653,
-18.636,18.620,18.603,18.586,18.570,18.553,18.536,18.520,18.503,18.487,18.471,18.454,18.438,18.422,18.407,18.391,
-18.376,18.361,18.346,18.332,18.318,18.304,18.291,18.278,18.265,18.253,18.241,18.229,18.218,18.208,18.197,18.188,
-18.178,18.169,18.161,18.153,18.145,18.138,18.131,18.125,18.119,18.113,18.108,18.103,18.099,18.095,18.091,18.088,
-18.085,18.082,18.080,18.077,18.075,18.074,18.072,18.071,18.069,18.068,18.067,18.066,18.065,18.064,18.063,18.062,
-18.061,18.060,18.059,18.057,18.056,18.054,18.052,18.050,18.047,18.044,18.041,18.037,18.033,18.028,18.023,18.018,
-18.012,18.005,17.998,17.991,17.983,17.974,17.965,17.955,17.944,17.933,17.921,17.909,17.896,17.882,17.868,17.852,
-17.837,17.820,17.803,17.785,17.767,17.748,17.729,17.708,17.688,17.666,17.645,17.622,17.599,17.576,17.552,17.528,
-17.503,17.478,17.453,17.427,17.401,17.375,17.348,17.321,17.295,17.267,17.240,17.213,17.186,17.158,17.131,17.104,
-17.076,17.049,17.022,16.995,16.968,16.942,16.915,16.889,16.863,16.838,16.812,16.787,16.762,16.738,16.714,16.690,
-16.667,16.643,16.621,16.598,16.576,16.554,16.533,16.512,16.491,16.471,16.451,16.431,16.411,16.392,16.373,16.354,
-16.335,16.317,16.299,16.281,16.263,16.245,16.227,16.210,16.192,16.174,16.157,16.139,16.121,16.104,16.086,16.068,
-16.050,16.032,16.014,15.995,15.977,15.958,15.939,15.919,15.900,15.880,15.860,15.840,15.819,15.798,15.777,15.756,
-15.734,15.712,15.690,15.668,15.645,15.622,15.599,15.575,15.552,15.528,15.504,15.480,15.455,15.431,15.406,15.381,
-15.356,15.331,15.306,15.281,15.255,15.230,15.205,15.179,15.154,15.129,15.103,15.078,15.053,15.028,15.003,14.978,
-14.953,14.929,14.904,14.880,14.855,14.831,14.807,14.783,14.760,14.736,14.713,14.689,14.666,14.643,14.620,14.598,
-14.575,14.552,14.530,14.507,14.485,14.463,14.441,14.418,14.396,14.374,14.352,14.330,14.307,14.285,14.263,14.240,
-14.217,14.195,14.172,14.149,14.126,14.103,14.079,14.056,14.032,14.008,13.984,13.959,13.935,13.910,13.885,13.860,
-13.834,13.809,13.783,13.757,13.731,13.704,13.677,13.651,13.624,13.596,13.569,13.542,13.514,13.487,13.459,13.431,
-13.403,13.376,13.348,13.320,13.293,13.265,13.238,13.210,13.183,13.156,13.130,13.103,13.077,13.051,13.026,13.000,
-12.976,12.951,12.927,12.904,12.881,12.858,12.836,12.815,12.794,12.774,12.754,12.735,12.717,12.699,12.682,12.665,
-12.650,12.635,12.620,12.607,12.594,12.582,12.570,12.559,12.549,12.540,12.531,12.523,12.515,12.508,12.502,12.496,
-12.491,12.486,12.481,12.477,12.474,12.471,12.468,12.465,12.463,12.460,12.458,12.456,12.454,12.452,12.450,12.447,
-12.445,12.442,12.439,12.435,12.431,12.427,12.422,12.416,12.410,12.403,12.395,12.386,12.377,12.366,12.355,12.342,
-12.328,12.313,12.297,12.280,12.262,12.242,12.221,12.199,12.175,12.150,12.124,12.096,12.067,12.037,12.005,11.972,
-11.938,11.902,11.866,11.828,11.789,11.749,11.708,11.666,11.623,11.580,11.536,11.491,11.446,11.400,11.354,11.308,
-11.262,11.216,11.170,11.125,11.080,11.036,10.992,10.949,10.907,10.867,10.827,10.789,10.753,10.718,10.686,10.655,
-10.627,10.600,10.577,10.556,10.537,10.521,10.509,10.499,10.492,10.489,10.489,10.492,10.499,10.509,10.523,10.541,
-10.562,10.587,10.616,10.649,10.685,10.724,10.768,10.815,10.866,10.920,10.978,11.039,11.103,11.170,11.241,11.314,
-11.390,11.469,11.550,11.634,11.719,11.807,11.896,11.986,12.078,12.171,12.265,12.360,12.455,12.550,12.644,12.739,
-12.833,12.926,13.018,13.109,13.198,13.285,13.371,13.454,13.534,13.612,13.687,13.758,13.826,13.891,13.952,14.008,
-14.061,14.109,14.153,14.192,14.227,14.256,14.281,14.300,14.315,14.324,14.328,14.327,14.320,14.309,14.291,14.269,
-14.241,14.209,14.171,14.127,14.079,14.027,13.969,13.907,13.840,13.769,13.693,13.614,13.531,13.444,13.353,13.260,
-13.163,13.064,12.961,12.857,12.750,12.642,12.532,12.420,12.307,12.193,12.079,11.964,11.849,11.734,11.619,11.505,
-11.391,11.278,11.167,11.057,10.948,10.841,10.736,10.634,10.533,10.436,10.340,10.248,10.158,10.072,9.989,9.909,
-9.832,9.759,9.690,9.624,9.562,9.503,9.448,9.397,9.350,9.307,9.267,9.232,9.200,9.171,9.147,9.126,
-9.109,9.095,9.085,9.078,9.074,9.074,9.077,9.082,9.091,9.103,9.117,9.134,9.153,9.175,9.198,9.224,
-9.252,9.282,9.313,9.346,9.381,9.417,9.454,9.492,9.531,9.571,9.612,9.654,9.695,9.738,9.780,9.823,
-9.866,9.909,9.952,9.995,10.037,10.079,10.121,10.162,10.203,10.243,10.282,10.321,10.359,10.396,10.433,10.468,
-10.502,10.536,10.568,10.600,10.630,10.660,10.688,10.715,10.742,10.767,10.791,10.814,10.836,10.857,10.876,10.895,
-10.913,10.929,10.945,10.959,10.973,10.986,10.997,11.008,11.018,11.027,11.035,11.042,11.049,11.054,11.059,11.063,
-11.067,11.070,11.072,11.073,11.074,11.074,11.074,11.073,11.072,11.070,11.068,11.065,11.062,11.059,11.055,11.051,
-11.046,11.042,11.037,11.032,11.027,11.021,11.016,11.010,11.004,10.998,10.993,10.987,10.981,10.975,10.970,10.964,
-10.959,10.953,10.948,10.943,10.939,10.934,10.930,10.927,10.923,10.920,10.917,10.915,10.913,10.911,10.910,10.910,
-10.910,10.910,10.911,10.913,10.915,10.917,10.921,10.924,10.929,10.934,10.940,10.946,10.953,10.961,10.969,10.978,
-10.988,10.998,11.009,11.020,11.033,11.046,11.059,11.073,11.088,11.103,11.119,11.136,11.153,11.171,11.189,11.208,
-11.228,11.247,11.268,11.288,11.310,11.331,11.353,11.376,11.398,11.421,11.444,11.468,11.492,11.516,11.540,11.564,
-11.588,11.613,11.637,11.662,11.687,11.711,11.736,11.760,11.784,11.809,11.833,11.857,11.880,11.904,11.927,11.950,
-11.973,11.995,12.017,12.039,12.061,12.082,12.102,12.122,12.142,12.162,12.180,12.199,12.217,12.234,12.251,12.268,
-12.284,12.299,12.314,12.329,12.343,12.356,12.369,12.381,12.393,12.404,12.415,12.426,12.436,12.445,12.454,12.462,
-12.470,12.478,12.485,12.491,12.498,12.504,12.509,12.514,12.519,12.524,12.528,12.532,12.536,12.539,12.543,12.546,
-12.549,12.552,12.555,12.557,12.560,12.563,12.566,12.568,12.571,12.574,12.578,12.581,12.585,12.588,12.593,12.597,
-12.602,12.607,12.613,12.619,12.625,12.632,12.640,12.648,12.656,12.666,12.675,12.686,12.697,12.709,12.722,12.735,
-12.749,12.764,12.780,12.796,12.813,12.831,12.850,12.870,12.890,12.912,12.934,12.957,12.980,13.005,13.030,13.056,
-13.083,13.110,13.138,13.167,13.197,13.227,13.258,13.289,13.321,13.353,13.386,13.419,13.452,13.486,13.520,13.555,
-13.589,13.624,13.659,13.694,13.728,13.763,13.798,13.832,13.866,13.900,13.934,13.967,14.000,14.032,14.064,14.096,
-14.126,14.156,14.186,14.214,14.242,14.269,14.295,14.321,14.345,14.368,14.391,14.412,14.433,14.452,14.470,14.488,
-14.504,14.519,14.533,14.546,14.558,14.569,14.579,14.588,14.596,14.602,14.608,14.613,14.617,14.620,14.622,14.623,
-14.624,14.624,14.623,14.621,14.619,14.616,14.613,14.609,14.605,14.600,14.595,14.590,14.585,14.579,14.574,14.568,
-14.562,14.557,14.551,14.546,14.541,14.536,14.532,14.528,14.524,14.521,14.518,14.516,14.515,14.514,14.514,14.514,
-14.516,14.518,14.521,14.524,14.529,14.534,14.541,14.548,14.556,14.565,14.575,14.586,14.598,14.611,14.625,14.639,
-14.655,14.671,14.689,14.707,14.726,14.746,14.767,14.789,14.811,14.834,14.858,14.883,14.908,14.934,14.960,14.987,
-15.015,15.043,15.071,15.100,15.129,15.159,15.189,15.219,15.249,15.280,15.311,15.341,15.372,15.403,15.434,15.465,
-15.496,15.527,15.558,15.589,15.619,15.649,15.679,15.709,15.739,15.768,15.797,15.826,15.854,15.882,15.909,15.937,
-15.963,15.990,16.016,16.042,16.067,16.092,16.116,16.140,16.164,16.187,16.210,16.232,16.254,16.276,16.297,16.318,
-16.339,16.359,16.379,16.399,16.419,16.438,16.458,16.477,16.496,16.514,16.533,16.552,16.571,16.589,16.608,16.627,
-16.646,16.665,16.684,16.703,16.723,16.743,16.763,16.784,16.804,16.826,16.848,16.870,16.892,16.916,16.940,16.964,
-16.989,17.015,17.041,17.068,17.096,17.125,17.154,17.184,17.215,17.247,17.279,17.313,17.347,17.383,17.419,17.456,
-17.494,17.533,17.572,17.613,17.654,17.697,17.740,17.784,17.829,17.874,17.921,17.968,18.016,18.064,18.113,18.163,
-18.213,18.264,18.315,18.367,18.419,18.471,18.524,18.576,18.629,18.682,18.735,18.788,18.840,18.892,18.944,18.996,
-19.047,19.098,19.148,19.198,19.246,19.294,19.341,19.387,19.432,19.476,19.519,19.561,19.601,19.640,19.677,19.713,
-19.748,19.781,19.812,19.841,19.869,19.895,19.919,19.942,19.962,19.981,19.997,20.012,20.025,20.036,20.045,20.052,
-20.057,20.060,20.061,20.060,20.058,20.054,20.047,20.039,20.030,20.018,20.005,19.991,19.975,19.957,19.938,19.918,
-19.896,19.874,19.850,19.825,19.799,19.772,19.745,19.717,19.688,19.658,19.628,19.598,19.567,19.537,19.506,19.475,
-19.444,19.413,19.382,19.352,19.322,19.292,19.263,19.235,19.207,19.179,19.153,19.127,19.102,19.078,19.055,19.033,
-19.012,18.991,18.972,18.954,18.938,18.922,18.907,18.894,18.881,18.870,18.860,18.852,18.844,18.837,18.832,18.827,
-18.824,18.822,18.820,18.820,18.821,18.822,18.825,18.828,18.832,18.837,18.842,18.848,18.855,18.862,18.869,18.878,
-18.886,18.895,18.904,18.914,18.923,18.933,18.943,18.953,18.963,18.973,18.982,18.992,19.002,19.011,19.020,19.029,
-19.037,19.045,19.053,19.061,19.068,19.074,19.081,19.086,19.091,19.096,19.101,19.104,19.108,19.110,19.113,19.114,
-19.116,19.116,19.117,19.117,19.116,19.115,19.113,19.112,19.109,19.107,19.104,19.100,19.097,19.093,19.089,19.084,
-19.080,19.075,19.070,19.065,19.060,19.055,19.049,19.044,19.039,19.033,19.028,19.023,19.018,19.013,19.008,19.003,
-18.998,18.994,18.990,18.986,18.982,18.978,18.974,18.971,18.968,18.965,18.963,18.960,18.958,18.956,18.955,18.953,
-18.952,18.951,18.950,18.950,18.949,18.949,18.949,18.949,18.949,18.950,18.950,18.951,18.951,18.952,18.953,18.954,
-18.955,18.956,18.957,18.958,18.959,18.960,18.961,18.962,18.963,18.964,18.965,18.965,18.966,18.967,18.967,18.968,
-18.968,18.968,18.969,18.969,18.969,18.969,18.968,18.968,18.968,18.968,18.967,18.967,18.966,18.966,18.965,18.965,
-18.964,18.964,18.963,18.962,18.962,18.962,18.961,18.961,18.960,18.960,18.960,18.960,18.960,18.960,18.961,18.961,
-18.962,18.962,18.963,18.964,18.965,18.966,18.968,18.969,18.971,18.972,18.974,19.593,19.594,19.595,19.597,19.598,
-19.601,19.603,19.605,19.608,19.611,19.614,19.617,19.620,19.623,19.626,19.629,19.632,19.635,19.638,19.641,19.644,
-19.646,19.649,19.651,19.652,19.654,19.655,19.655,19.656,19.656,19.655,19.654,19.652,19.650,19.648,19.645,19.641,
-19.637,19.632,19.627,19.621,19.615,19.608,19.600,19.592,19.583,19.573,19.564,19.553,19.542,19.531,19.518,19.506,
-19.493,19.479,19.466,19.451,19.437,19.422,19.406,19.391,19.375,19.358,19.342,19.325,19.309,19.292,19.275,19.258,
-19.240,19.223,19.206,19.189,19.172,19.155,19.139,19.122,19.106,19.089,19.073,19.058,19.042,19.027,19.012,18.998,
-18.983,18.970,18.956,18.943,18.930,18.918,18.906,18.895,18.884,18.873,18.863,18.854,18.845,18.836,18.828,18.820,
-18.812,18.805,18.799,18.793,18.787,18.782,18.777,18.773,18.769,18.765,18.762,18.759,18.756,18.754,18.752,18.750,
-18.748,18.747,18.746,18.745,18.744,18.743,18.743,18.742,18.742,18.741,18.741,18.741,18.740,18.740,18.739,18.738,
-18.737,18.736,18.735,18.733,18.731,18.729,18.727,18.724,18.720,18.716,18.712,18.707,18.702,18.696,18.690,18.683,
-18.675,18.666,18.657,18.648,18.637,18.626,18.614,18.601,18.587,18.573,18.558,18.542,18.525,18.507,18.489,18.469,
-18.449,18.428,18.406,18.383,18.360,18.336,18.311,18.285,18.259,18.232,18.204,18.175,18.146,18.117,18.087,18.056,
-18.026,17.994,17.963,17.931,17.898,17.866,17.833,17.801,17.768,17.735,17.702,17.670,17.637,17.605,17.572,17.541,
-17.509,17.478,17.447,17.417,17.387,17.358,17.329,17.301,17.273,17.246,17.220,17.194,17.169,17.145,17.121,17.099,
-17.077,17.055,17.034,17.015,16.995,16.977,16.959,16.941,16.925,16.909,16.893,16.878,16.863,16.849,16.835,16.822,
-16.809,16.796,16.783,16.771,16.758,16.746,16.733,16.721,16.708,16.696,16.683,16.670,16.656,16.642,16.628,16.613,
-16.598,16.582,16.566,16.549,16.531,16.513,16.494,16.474,16.453,16.432,16.410,16.387,16.363,16.338,16.313,16.286,
-16.259,16.231,16.203,16.173,16.143,16.112,16.080,16.048,16.015,15.981,15.947,15.912,15.877,15.841,15.805,15.768,
-15.732,15.695,15.657,15.620,15.582,15.545,15.507,15.469,15.432,15.395,15.357,15.320,15.284,15.247,15.211,15.176,
-15.140,15.106,15.071,15.038,15.005,14.972,14.940,14.908,14.878,14.848,14.818,14.789,14.761,14.733,14.706,14.680,
-14.655,14.630,14.605,14.581,14.558,14.535,14.513,14.492,14.470,14.450,14.429,14.409,14.390,14.370,14.351,14.333,
-14.314,14.296,14.277,14.259,14.241,14.223,14.205,14.187,14.169,14.150,14.132,14.113,14.095,14.076,14.056,14.037,
-14.017,13.997,13.976,13.955,13.934,13.912,13.890,13.867,13.844,13.821,13.797,13.773,13.748,13.723,13.697,13.671,
-13.645,13.618,13.590,13.563,13.535,13.506,13.478,13.448,13.419,13.389,13.360,13.329,13.299,13.268,13.238,13.207,
-13.176,13.145,13.114,13.083,13.052,13.021,12.990,12.960,12.929,12.899,12.869,12.839,12.809,12.780,12.752,12.723,
-12.695,12.668,12.641,12.615,12.589,12.564,12.539,12.515,12.492,12.469,12.448,12.427,12.406,12.387,12.368,12.351,
-12.334,12.318,12.302,12.288,12.275,12.262,12.250,12.239,12.229,12.220,12.211,12.204,12.197,12.190,12.185,12.180,
-12.175,12.172,12.169,12.166,12.163,12.161,12.160,12.158,12.157,12.156,12.154,12.153,12.152,12.150,12.148,12.146,
-12.143,12.139,12.135,12.131,12.125,12.119,12.111,12.103,12.093,12.082,12.070,12.057,12.042,12.026,12.008,11.988,
-11.967,11.945,11.920,11.894,11.866,11.836,11.805,11.772,11.737,11.700,11.662,11.622,11.581,11.538,11.493,11.448,
-11.401,11.352,11.303,11.253,11.201,11.150,11.097,11.044,10.991,10.938,10.885,10.832,10.780,10.728,10.677,10.627,
-10.578,10.531,10.485,10.441,10.399,10.360,10.322,10.288,10.256,10.227,10.201,10.178,10.159,10.144,10.133,10.125,
-10.121,10.122,10.127,10.136,10.150,10.168,10.190,10.218,10.249,10.286,10.327,10.372,10.423,10.477,10.536,10.599,
-10.666,10.737,10.812,10.891,10.973,11.059,11.147,11.239,11.333,11.429,11.528,11.628,11.730,11.833,11.938,12.042,
-12.147,12.253,12.357,12.462,12.565,12.667,12.767,12.865,12.961,13.055,13.145,13.233,13.317,13.397,13.473,13.544,
-13.611,13.674,13.731,13.783,13.829,13.870,13.905,13.934,13.958,13.974,13.985,13.990,13.988,13.979,13.965,13.944,
-13.916,13.883,13.843,13.797,13.745,13.688,13.624,13.555,13.481,13.402,13.317,13.228,13.135,13.037,12.935,12.830,
-12.721,12.609,12.495,12.378,12.259,12.138,12.015,11.891,11.766,11.641,11.516,11.390,11.265,11.140,11.017,10.894,
-10.774,10.654,10.538,10.423,10.311,10.201,10.095,9.992,9.892,9.796,9.703,9.614,9.530,9.449,9.373,9.301,
-9.233,9.170,9.111,9.057,9.007,8.961,8.921,8.884,8.852,8.825,8.801,8.782,8.768,8.757,8.750,8.747,
-8.747,8.751,8.759,8.770,8.784,8.801,8.821,8.843,8.868,8.895,8.925,8.956,8.990,9.025,9.061,9.099,
-9.138,9.178,9.219,9.261,9.303,9.346,9.389,9.432,9.476,9.519,9.562,9.605,9.648,9.690,9.731,9.772,
-9.812,9.852,9.890,9.928,9.965,10.001,10.036,10.070,10.103,10.134,10.165,10.195,10.223,10.251,10.277,10.303,
-10.327,10.350,10.373,10.394,10.414,10.434,10.452,10.470,10.487,10.503,10.518,10.532,10.546,10.559,10.572,10.584,
-10.595,10.605,10.616,10.625,10.635,10.643,10.652,10.660,10.668,10.675,10.682,10.689,10.695,10.702,10.707,10.713,
-10.719,10.724,10.729,10.734,10.738,10.743,10.747,10.751,10.755,10.759,10.762,10.765,10.769,10.771,10.774,10.777,
-10.779,10.781,10.783,10.784,10.786,10.787,10.788,10.789,10.790,10.790,10.791,10.791,10.791,10.790,10.790,10.790,
-10.789,10.788,10.787,10.786,10.785,10.784,10.783,10.782,10.781,10.780,10.779,10.778,10.778,10.777,10.776,10.776,
-10.776,10.776,10.776,10.777,10.777,10.779,10.780,10.782,10.784,10.786,10.789,10.793,10.796,10.801,10.805,10.810,
-10.816,10.822,10.829,10.836,10.843,10.851,10.860,10.869,10.879,10.889,10.900,10.911,10.922,10.934,10.947,10.960,
-10.974,10.988,11.002,11.017,11.032,11.047,11.063,11.080,11.096,11.113,11.131,11.148,11.166,11.184,11.202,11.221,
-11.240,11.258,11.277,11.297,11.316,11.336,11.355,11.375,11.395,11.414,11.434,11.454,11.474,11.494,11.514,11.535,
-11.555,11.575,11.595,11.615,11.635,11.655,11.675,11.695,11.715,11.735,11.755,11.775,11.795,11.814,11.834,11.854,
-11.873,11.893,11.912,11.932,11.951,11.970,11.990,12.009,12.028,12.046,12.065,12.084,12.102,12.121,12.139,12.157,
-12.175,12.193,12.210,12.227,12.245,12.261,12.278,12.295,12.311,12.327,12.343,12.358,12.374,12.389,12.403,12.418,
-12.432,12.446,12.460,12.473,12.486,12.499,12.511,12.524,12.536,12.548,12.559,12.571,12.582,12.593,12.604,12.614,
-12.625,12.636,12.646,12.656,12.667,12.677,12.688,12.698,12.709,12.720,12.731,12.742,12.753,12.765,12.777,12.789,
-12.802,12.815,12.828,12.842,12.857,12.872,12.888,12.904,12.921,12.939,12.957,12.976,12.995,13.016,13.037,13.059,
-13.082,13.105,13.129,13.155,13.180,13.207,13.235,13.263,13.292,13.321,13.352,13.383,13.415,13.447,13.480,13.514,
-13.548,13.582,13.617,13.653,13.689,13.725,13.761,13.798,13.834,13.871,13.908,13.945,13.981,14.018,14.054,14.090,
-14.126,14.161,14.196,14.231,14.265,14.298,14.330,14.362,14.393,14.423,14.453,14.481,14.509,14.535,14.561,14.585,
-14.608,14.631,14.652,14.672,14.690,14.708,14.724,14.740,14.754,14.767,14.778,14.789,14.799,14.807,14.814,14.820,
-14.826,14.830,14.833,14.835,14.837,14.837,14.837,14.836,14.834,14.832,14.829,14.826,14.822,14.818,14.813,14.808,
-14.803,14.798,14.792,14.786,14.781,14.775,14.770,14.765,14.760,14.755,14.750,14.746,14.743,14.739,14.737,14.734,
-14.733,14.732,14.731,14.731,14.732,14.734,14.736,14.739,14.743,14.748,14.753,14.759,14.766,14.773,14.782,14.791,
-14.801,14.812,14.823,14.835,14.848,14.862,14.876,14.891,14.907,14.923,14.940,14.957,14.975,14.993,15.012,15.031,
-15.051,15.071,15.092,15.113,15.134,15.156,15.178,15.200,15.222,15.245,15.267,15.290,15.313,15.337,15.360,15.383,
-15.407,15.430,15.454,15.478,15.502,15.525,15.549,15.573,15.597,15.620,15.644,15.668,15.692,15.716,15.739,15.763,
-15.787,15.811,15.834,15.858,15.882,15.906,15.929,15.953,15.977,16.001,16.025,16.049,16.072,16.096,16.120,16.144,
-16.168,16.193,16.217,16.241,16.265,16.290,16.314,16.339,16.363,16.388,16.413,16.437,16.462,16.488,16.513,16.538,
-16.564,16.589,16.615,16.641,16.667,16.693,16.720,16.746,16.773,16.800,16.827,16.855,16.883,16.911,16.939,16.968,
-16.997,17.027,17.057,17.087,17.118,17.149,17.181,17.213,17.245,17.279,17.313,17.347,17.382,17.418,17.454,17.491,
-17.529,17.568,17.607,17.647,17.688,17.730,17.772,17.815,17.860,17.904,17.950,17.997,18.044,18.092,18.141,18.191,
-18.241,18.293,18.344,18.397,18.450,18.504,18.559,18.613,18.669,18.725,18.781,18.837,18.894,18.951,19.008,19.065,
-19.122,19.178,19.235,19.291,19.347,19.403,19.458,19.512,19.566,19.618,19.670,19.721,19.771,19.820,19.867,19.913,
-19.958,20.001,20.042,20.082,20.121,20.157,20.192,20.225,20.255,20.284,20.311,20.336,20.358,20.379,20.397,20.413,
-20.427,20.439,20.448,20.456,20.461,20.464,20.465,20.464,20.461,20.456,20.449,20.440,20.429,20.416,20.402,20.386,
-20.369,20.350,20.329,20.308,20.285,20.261,20.237,20.211,20.184,20.157,20.129,20.101,20.072,20.043,20.014,19.985,
-19.956,19.927,19.898,19.869,19.841,19.813,19.786,19.759,19.733,19.708,19.684,19.661,19.638,19.617,19.596,19.577,
-19.559,19.542,19.526,19.511,19.498,19.485,19.474,19.465,19.456,19.449,19.442,19.437,19.434,19.431,19.429,19.429,
-19.429,19.430,19.433,19.436,19.440,19.444,19.450,19.456,19.463,19.470,19.477,19.486,19.494,19.503,19.512,19.521,
-19.530,19.539,19.549,19.558,19.567,19.576,19.585,19.593,19.601,19.609,19.617,19.624,19.630,19.636,19.642,19.647,
-19.651,19.655,19.658,19.661,19.663,19.664,19.665,19.665,19.665,19.664,19.662,19.660,19.657,19.653,19.650,19.645,
-19.640,19.635,19.629,19.623,19.617,19.610,19.603,19.595,19.588,19.580,19.572,19.565,19.557,19.549,19.541,19.533,
-19.526,19.518,19.511,19.504,19.497,19.490,19.484,19.478,19.473,19.468,19.463,19.459,19.455,19.452,19.450,19.447,
-19.446,19.445,19.444,19.444,19.445,19.446,19.447,19.449,19.452,19.455,19.459,19.463,19.467,19.472,19.478,19.483,
-19.489,19.496,19.502,19.509,19.516,19.524,19.531,19.539,19.546,19.554,19.562,19.569,19.577,19.585,19.592,19.600,
-19.607,19.614,19.620,19.627,19.633,19.639,19.645,19.650,19.655,19.659,19.663,19.667,19.670,19.673,19.675,19.677,
-19.679,19.680,19.681,19.681,19.681,19.681,19.680,19.678,19.677,19.675,19.673,19.670,19.668,19.665,19.662,19.658,
-19.655,19.651,19.648,19.644,19.640,19.636,19.632,19.628,19.625,19.621,19.618,19.614,19.611,19.608,19.605,19.603,
-19.600,19.598,19.596,19.595,19.593,19.592,19.592,19.591,19.591,19.591,19.592,19.593,20.147,20.149,20.151,20.153,
-20.156,20.159,20.162,20.166,20.170,20.173,20.177,20.181,20.185,20.189,20.193,20.197,20.201,20.205,20.208,20.211,
-20.214,20.216,20.218,20.220,20.221,20.222,20.223,20.222,20.222,20.220,20.219,20.216,20.213,20.209,20.205,20.200,
-20.195,20.188,20.182,20.174,20.166,20.158,20.148,20.139,20.128,20.118,20.106,20.095,20.083,20.070,20.057,20.044,
-20.031,20.017,20.003,19.989,19.975,19.960,19.946,19.932,19.917,19.903,19.889,19.875,19.861,19.847,19.834,19.821,
-19.808,19.796,19.784,19.772,19.761,19.750,19.739,19.729,19.720,19.711,19.702,19.694,19.687,19.680,19.673,19.667,
-19.661,19.656,19.652,19.648,19.644,19.641,19.638,19.635,19.633,19.632,19.630,19.629,19.628,19.628,19.628,19.627,
-19.628,19.628,19.628,19.629,19.629,19.630,19.631,19.631,19.632,19.633,19.633,19.634,19.634,19.634,19.634,19.634,
-19.634,19.633,19.633,19.632,19.631,19.629,19.627,19.625,19.623,19.620,19.617,19.614,19.610,19.606,19.601,19.596,
-19.590,19.584,19.578,19.571,19.564,19.556,19.548,19.539,19.529,19.519,19.508,19.497,19.485,19.472,19.459,19.445,
-19.430,19.415,19.398,19.381,19.363,19.345,19.325,19.305,19.284,19.262,19.239,19.215,19.190,19.164,19.138,19.110,
-19.082,19.053,19.023,18.992,18.960,18.927,18.893,18.859,18.824,18.788,18.751,18.714,18.676,18.638,18.599,18.559,
-18.519,18.479,18.438,18.397,18.356,18.315,18.273,18.232,18.191,18.150,18.109,18.068,18.028,17.988,17.949,17.910,
-17.872,17.835,17.799,17.763,17.729,17.695,17.662,17.631,17.600,17.571,17.543,17.516,17.491,17.467,17.444,17.422,
-17.402,17.383,17.366,17.350,17.335,17.321,17.309,17.298,17.288,17.279,17.271,17.264,17.259,17.254,17.249,17.246,
-17.243,17.241,17.239,17.238,17.237,17.236,17.235,17.234,17.233,17.232,17.230,17.228,17.226,17.223,17.219,17.215,
-17.209,17.203,17.195,17.187,17.177,17.166,17.154,17.140,17.125,17.108,17.090,17.070,17.049,17.026,17.001,16.975,
-16.947,16.917,16.886,16.853,16.819,16.783,16.745,16.706,16.666,16.624,16.581,16.537,16.491,16.445,16.397,16.349,
-16.299,16.249,16.198,16.146,16.094,16.041,15.988,15.935,15.882,15.828,15.775,15.721,15.668,15.615,15.562,15.510,
-15.458,15.407,15.357,15.307,15.258,15.209,15.162,15.115,15.070,15.025,14.981,14.939,14.897,14.857,14.817,14.779,
-14.742,14.705,14.670,14.636,14.603,14.571,14.541,14.511,14.482,14.454,14.427,14.400,14.375,14.350,14.327,14.303,
-14.281,14.259,14.238,14.217,14.197,14.177,14.158,14.139,14.120,14.102,14.083,14.065,14.047,14.030,14.012,13.994,
-13.977,13.959,13.941,13.924,13.906,13.888,13.870,13.851,13.833,13.814,13.795,13.776,13.756,13.737,13.717,13.697,
-13.676,13.655,13.634,13.612,13.590,13.568,13.546,13.523,13.499,13.476,13.452,13.427,13.403,13.377,13.352,13.326,
-13.300,13.273,13.246,13.218,13.191,13.162,13.134,13.105,13.075,13.045,13.015,12.985,12.954,12.923,12.891,12.860,
-12.827,12.795,12.763,12.730,12.697,12.664,12.631,12.598,12.565,12.531,12.498,12.465,12.432,12.400,12.367,12.335,
-12.304,12.272,12.241,12.211,12.181,12.152,12.124,12.096,12.069,12.043,12.018,11.994,11.970,11.948,11.927,11.907,
-11.888,11.870,11.854,11.838,11.824,11.811,11.799,11.788,11.779,11.770,11.763,11.757,11.751,11.747,11.744,11.741,
-11.739,11.738,11.738,11.738,11.738,11.739,11.740,11.740,11.741,11.742,11.742,11.742,11.742,11.740,11.738,11.735,
-11.731,11.726,11.720,11.712,11.702,11.691,11.678,11.663,11.647,11.628,11.607,11.584,11.559,11.532,11.503,11.471,
-11.437,11.400,11.362,11.321,11.279,11.234,11.187,11.138,11.088,11.036,10.983,10.928,10.872,10.815,10.757,10.699,
-10.640,10.581,10.522,10.464,10.406,10.349,10.293,10.239,10.186,10.134,10.085,10.039,9.995,9.954,9.916,9.882,
-9.851,9.824,9.801,9.783,9.769,9.759,9.755,9.755,9.760,9.771,9.787,9.808,9.835,9.867,9.904,9.946,
-9.994,10.048,10.106,10.169,10.237,10.310,10.388,10.470,10.555,10.645,10.738,10.835,10.934,11.036,11.141,11.247,
-11.355,11.464,11.574,11.684,11.795,11.905,12.014,12.122,12.228,12.333,12.434,12.533,12.629,12.721,12.810,12.894,
-12.973,13.047,13.116,13.179,13.237,13.288,13.333,13.372,13.404,13.429,13.446,13.457,13.461,13.457,13.446,13.428,
-13.403,13.370,13.331,13.284,13.231,13.171,13.105,13.032,12.954,12.869,12.779,12.684,12.584,12.479,12.371,12.258,
-12.142,12.022,11.900,11.776,11.649,11.521,11.391,11.261,11.131,11.000,10.869,10.740,10.611,10.484,10.358,10.235,
-10.114,9.996,9.881,9.769,9.660,9.556,9.455,9.359,9.266,9.179,9.096,9.018,8.944,8.876,8.812,8.754,
-8.700,8.652,8.609,8.570,8.537,8.508,8.485,8.465,8.451,8.441,8.435,8.433,8.435,8.441,8.450,8.463,
-8.479,8.498,8.520,8.544,8.571,8.600,8.631,8.664,8.698,8.733,8.770,8.808,8.846,8.885,8.925,8.964,
-9.004,9.044,9.084,9.123,9.161,9.200,9.237,9.274,9.309,9.344,9.378,9.411,9.442,9.473,9.502,9.530,
-9.557,9.582,9.607,9.630,9.652,9.673,9.692,9.711,9.728,9.745,9.760,9.775,9.788,9.801,9.813,9.825,
-9.836,9.846,9.856,9.865,9.874,9.883,9.891,9.900,9.908,9.916,9.924,9.932,9.941,9.949,9.958,9.967,
-9.976,9.985,9.994,10.004,10.015,10.025,10.036,10.047,10.059,10.071,10.083,10.096,10.108,10.122,10.135,10.149,
-10.163,10.177,10.191,10.205,10.220,10.234,10.249,10.263,10.278,10.292,10.307,10.321,10.335,10.348,10.362,10.375,
-10.388,10.400,10.412,10.424,10.435,10.446,10.456,10.466,10.475,10.484,10.492,10.500,10.507,10.514,10.520,10.526,
-10.531,10.536,10.540,10.544,10.547,10.550,10.552,10.555,10.556,10.558,10.559,10.560,10.561,10.562,10.562,10.563,
-10.563,10.564,10.564,10.564,10.565,10.566,10.566,10.567,10.569,10.570,10.572,10.574,10.577,10.579,10.582,10.586,
-10.590,10.594,10.599,10.604,10.610,10.616,10.622,10.629,10.637,10.645,10.653,10.661,10.671,10.680,10.690,10.700,
-10.710,10.721,10.732,10.744,10.755,10.767,10.779,10.791,10.804,10.816,10.829,10.842,10.855,10.868,10.881,10.894,
-10.907,10.920,10.933,10.946,10.960,10.973,10.986,10.999,11.013,11.026,11.039,11.053,11.066,11.080,11.094,11.107,
-11.121,11.135,11.150,11.164,11.179,11.193,11.209,11.224,11.240,11.256,11.272,11.289,11.306,11.324,11.342,11.361,
-11.380,11.399,11.420,11.440,11.461,11.483,11.505,11.528,11.551,11.575,11.599,11.624,11.649,11.675,11.702,11.728,
-11.755,11.783,11.811,11.839,11.868,11.896,11.925,11.955,11.984,12.014,12.043,12.073,12.102,12.132,12.161,12.190,
-12.219,12.248,12.277,12.305,12.333,12.360,12.387,12.414,12.440,12.465,12.491,12.515,12.539,12.562,12.585,12.607,
-12.629,12.650,12.670,12.690,12.710,12.728,12.746,12.764,12.781,12.798,12.814,12.830,12.846,12.861,12.876,12.891,
-12.905,12.920,12.934,12.949,12.963,12.978,12.993,13.008,13.023,13.038,13.054,13.071,13.087,13.105,13.123,13.141,
-13.160,13.180,13.201,13.222,13.244,13.267,13.291,13.315,13.341,13.367,13.395,13.423,13.452,13.482,13.513,13.544,
-13.577,13.610,13.644,13.679,13.714,13.750,13.787,13.824,13.862,13.900,13.939,13.978,14.017,14.057,14.096,14.136,
-14.175,14.215,14.254,14.294,14.332,14.371,14.409,14.447,14.484,14.520,14.556,14.590,14.624,14.658,14.690,14.721,
-14.751,14.780,14.808,14.835,14.861,14.885,14.908,14.930,14.951,14.970,14.988,15.005,15.020,15.035,15.048,15.059,
-15.070,15.079,15.087,15.094,15.100,15.105,15.109,15.112,15.114,15.115,15.115,15.115,15.113,15.112,15.109,15.107,
-15.103,15.100,15.096,15.092,15.087,15.083,15.078,15.074,15.069,15.065,15.061,15.057,15.053,15.049,15.046,15.043,
-15.041,15.039,15.038,15.037,15.036,15.036,15.037,15.038,15.040,15.043,15.046,15.049,15.053,15.058,15.064,15.069,
-15.076,15.083,15.090,15.098,15.107,15.115,15.125,15.134,15.144,15.155,15.165,15.176,15.188,15.199,15.211,15.222,
-15.234,15.247,15.259,15.271,15.284,15.296,15.309,15.321,15.334,15.346,15.359,15.372,15.384,15.397,15.410,15.422,
-15.435,15.448,15.461,15.474,15.487,15.500,15.513,15.526,15.540,15.554,15.568,15.582,15.596,15.611,15.626,15.642,
-15.657,15.674,15.690,15.707,15.725,15.743,15.761,15.780,15.799,15.819,15.840,15.861,15.882,15.905,15.927,15.951,
-15.974,15.999,16.024,16.049,16.075,16.102,16.128,16.156,16.183,16.212,16.240,16.269,16.298,16.328,16.358,16.388,
-16.418,16.448,16.479,16.509,16.540,16.571,16.601,16.632,16.663,16.694,16.724,16.755,16.785,16.816,16.846,16.876,
-16.906,16.936,16.966,16.996,17.025,17.055,17.084,17.114,17.143,17.173,17.202,17.232,17.262,17.292,17.322,17.353,
-17.383,17.415,17.446,17.478,17.511,17.544,17.578,17.613,17.648,17.684,17.721,17.759,17.798,17.838,17.879,17.920,
-17.963,18.007,18.053,18.099,18.146,18.195,18.244,18.295,18.347,18.400,18.454,18.510,18.566,18.623,18.681,18.739,
-18.799,18.859,18.920,18.981,19.042,19.104,19.166,19.229,19.291,19.353,19.415,19.476,19.537,19.598,19.657,19.716,
-19.774,19.830,19.886,19.940,19.993,20.044,20.093,20.140,20.186,20.230,20.271,20.311,20.348,20.383,20.415,20.445,
-20.473,20.498,20.520,20.540,20.558,20.573,20.585,20.595,20.602,20.607,20.609,20.609,20.607,20.602,20.596,20.587,
-20.576,20.564,20.549,20.533,20.515,20.496,20.476,20.454,20.431,20.407,20.383,20.357,20.331,20.305,20.278,20.251,
-20.224,20.198,20.171,20.144,20.118,20.093,20.068,20.043,20.020,19.997,19.975,19.955,19.935,19.916,19.899,19.883,
-19.868,19.854,19.842,19.831,19.821,19.813,19.806,19.800,19.795,19.792,19.790,19.789,19.790,19.791,19.794,19.797,
-19.802,19.807,19.813,19.820,19.828,19.837,19.846,19.855,19.865,19.875,19.886,19.897,19.908,19.919,19.930,19.941,
-19.952,19.963,19.974,19.984,19.994,20.004,20.013,20.022,20.031,20.039,20.046,20.053,20.060,20.065,20.070,20.075,
-20.079,20.082,20.085,20.087,20.088,20.089,20.089,20.089,20.088,20.086,20.084,20.082,20.079,20.075,20.072,20.068,
-20.063,20.058,20.053,20.048,20.043,20.037,20.032,20.026,20.020,20.015,20.009,20.004,19.999,19.994,19.989,19.984,
-19.980,19.976,19.973,19.970,19.967,19.965,19.964,19.962,19.962,19.962,19.962,19.964,19.965,19.968,19.971,19.974,
-19.978,19.983,19.989,19.994,20.001,20.008,20.016,20.024,20.032,20.041,20.051,20.061,20.071,20.082,20.093,20.104,
-20.115,20.127,20.138,20.150,20.162,20.174,20.185,20.197,20.209,20.220,20.231,20.242,20.252,20.263,20.272,20.282,
-20.291,20.299,20.307,20.315,20.321,20.328,20.333,20.338,20.342,20.346,20.349,20.351,20.353,20.354,20.354,20.354,
-20.353,20.351,20.349,20.346,20.342,20.338,20.334,20.329,20.324,20.318,20.311,20.305,20.298,20.291,20.284,20.276,
-20.269,20.261,20.253,20.245,20.238,20.230,20.223,20.215,20.208,20.201,20.195,20.188,20.183,20.177,20.172,20.167,
-20.163,20.159,20.155,20.152,20.150,20.148,20.147,20.146,20.145,20.145,20.145,20.146,20.147,20.782,20.790,20.799,
-20.808,20.817,20.826,20.835,20.844,20.852,20.860,20.868,20.876,20.883,20.889,20.895,20.901,20.905,20.910,20.913,
-20.916,20.918,20.920,20.920,20.920,20.919,20.917,20.914,20.911,20.906,20.901,20.895,20.888,20.880,20.871,20.862,
-20.852,20.841,20.829,20.817,20.804,20.791,20.777,20.763,20.748,20.732,20.717,20.701,20.685,20.669,20.652,20.636,
-20.619,20.603,20.587,20.571,20.555,20.540,20.524,20.510,20.495,20.481,20.468,20.456,20.443,20.432,20.421,20.411,
-20.402,20.394,20.386,20.379,20.373,20.368,20.364,20.360,20.358,20.356,20.355,20.354,20.355,20.356,20.358,20.361,
-20.364,20.368,20.372,20.377,20.382,20.388,20.394,20.401,20.407,20.414,20.421,20.428,20.435,20.442,20.449,20.456,
-20.463,20.469,20.475,20.481,20.486,20.491,20.495,20.499,20.502,20.505,20.507,20.508,20.509,20.509,20.508,20.506,
-20.504,20.501,20.497,20.492,20.486,20.480,20.473,20.465,20.456,20.447,20.437,20.426,20.415,20.402,20.389,20.376,
-20.362,20.347,20.331,20.315,20.299,20.282,20.264,20.246,20.227,20.208,20.188,20.167,20.147,20.125,20.104,20.081,
-20.058,20.035,20.011,19.986,19.961,19.936,19.909,19.883,19.855,19.827,19.798,19.768,19.738,19.707,19.675,19.643,
-19.609,19.575,19.540,19.504,19.467,19.430,19.391,19.352,19.312,19.271,19.230,19.187,19.144,19.100,19.055,19.010,
-18.964,18.918,18.871,18.824,18.776,18.728,18.680,18.631,18.583,18.535,18.486,18.438,18.390,18.343,18.296,18.250,
-18.204,18.159,18.115,18.073,18.031,17.990,17.950,17.912,17.875,17.840,17.806,17.774,17.744,17.715,17.688,17.663,
-17.639,17.618,17.598,17.580,17.565,17.551,17.539,17.528,17.520,17.513,17.508,17.505,17.503,17.503,17.504,17.506,
-17.510,17.515,17.521,17.527,17.535,17.543,17.551,17.560,17.570,17.579,17.588,17.598,17.606,17.615,17.623,17.630,
-17.636,17.641,17.646,17.649,17.650,17.651,17.649,17.646,17.641,17.635,17.626,17.616,17.603,17.589,17.572,17.553,
-17.532,17.508,17.483,17.455,17.425,17.393,17.358,17.322,17.283,17.242,17.199,17.155,17.108,17.060,17.010,16.958,
-16.905,16.851,16.795,16.738,16.680,16.621,16.561,16.500,16.438,16.376,16.314,16.251,16.188,16.125,16.062,15.999,
-15.937,15.874,15.812,15.751,15.690,15.629,15.570,15.511,15.453,15.396,15.340,15.284,15.230,15.177,15.125,15.073,
-15.023,14.975,14.927,14.880,14.834,14.790,14.746,14.704,14.662,14.621,14.582,14.543,14.505,14.468,14.432,14.397,
-14.362,14.328,14.295,14.262,14.230,14.199,14.168,14.137,14.107,14.077,14.048,14.019,13.991,13.962,13.935,13.907,
-13.880,13.853,13.826,13.800,13.774,13.748,13.723,13.698,13.673,13.648,13.624,13.600,13.577,13.554,13.531,13.509,
-13.486,13.465,13.443,13.422,13.402,13.381,13.361,13.342,13.323,13.304,13.285,13.267,13.248,13.230,13.213,13.195,
-13.177,13.160,13.142,13.124,13.107,13.089,13.071,13.052,13.034,13.014,12.995,12.975,12.954,12.933,12.911,12.889,
-12.865,12.841,12.816,12.791,12.764,12.736,12.708,12.678,12.648,12.617,12.584,12.551,12.517,12.482,12.446,12.409,
-12.372,12.334,12.296,12.256,12.217,12.177,12.137,12.096,12.056,12.015,11.975,11.935,11.895,11.856,11.818,11.780,
-11.743,11.707,11.672,11.638,11.605,11.574,11.544,11.516,11.490,11.465,11.442,11.420,11.401,11.383,11.368,11.354,
-11.342,11.332,11.324,11.318,11.313,11.310,11.309,11.310,11.311,11.314,11.319,11.324,11.331,11.338,11.345,11.354,
-11.362,11.370,11.379,11.387,11.395,11.401,11.408,11.413,11.416,11.419,11.419,11.418,11.415,11.410,11.403,11.393,
-11.380,11.365,11.348,11.327,11.304,11.278,11.249,11.217,11.182,11.144,11.103,11.059,11.013,10.964,10.913,10.860,
-10.804,10.747,10.687,10.627,10.565,10.502,10.438,10.374,10.310,10.246,10.182,10.120,10.058,9.998,9.940,9.883,
-9.830,9.779,9.731,9.687,9.646,9.610,9.577,9.550,9.527,9.509,9.497,9.490,9.488,9.493,9.503,9.519,
-9.541,9.569,9.604,9.644,9.690,9.743,9.800,9.864,9.933,10.007,10.086,10.170,10.258,10.351,10.447,10.546,
-10.649,10.754,10.861,10.970,11.080,11.191,11.303,11.414,11.524,11.634,11.741,11.847,11.950,12.050,12.146,12.239,
-12.327,12.410,12.488,12.560,12.626,12.686,12.739,12.786,12.825,12.857,12.881,12.898,12.906,12.907,12.900,12.885,
-12.862,12.831,12.793,12.746,12.692,12.631,12.562,12.487,12.405,12.317,12.223,12.123,12.018,11.908,11.794,11.676,
-11.554,11.429,11.301,11.171,11.040,10.907,10.773,10.639,10.505,10.371,10.239,10.107,9.978,9.851,9.726,9.605,
-9.486,9.372,9.261,9.154,9.052,8.954,8.861,8.773,8.691,8.613,8.541,8.475,8.413,8.358,8.307,8.263,
-8.223,8.189,8.160,8.136,8.117,8.103,8.093,8.088,8.087,8.090,8.097,8.107,8.121,8.137,8.157,8.179,
-8.203,8.230,8.258,8.288,8.320,8.352,8.385,8.420,8.454,8.489,8.524,8.559,8.593,8.628,8.661,8.694,
-8.726,8.758,8.788,8.817,8.845,8.872,8.898,8.922,8.945,8.967,8.987,9.007,9.025,9.041,9.057,9.072,
-9.085,9.098,9.109,9.120,9.130,9.139,9.148,9.156,9.163,9.170,9.177,9.184,9.191,9.197,9.204,9.211,
-9.218,9.225,9.233,9.241,9.249,9.258,9.268,9.278,9.289,9.300,9.312,9.325,9.339,9.353,9.368,9.384,
-9.401,9.418,9.436,9.455,9.474,9.494,9.515,9.537,9.558,9.581,9.604,9.627,9.651,9.675,9.699,9.723,
-9.748,9.772,9.797,9.822,9.846,9.871,9.895,9.919,9.942,9.965,9.988,10.010,10.032,10.053,10.074,10.094,
-10.113,10.131,10.149,10.166,10.182,10.197,10.211,10.224,10.237,10.249,10.259,10.269,10.278,10.287,10.294,10.301,
-10.306,10.311,10.316,10.319,10.322,10.324,10.326,10.327,10.328,10.328,10.328,10.328,10.327,10.326,10.325,10.323,
-10.322,10.321,10.319,10.318,10.317,10.316,10.316,10.315,10.315,10.316,10.316,10.318,10.319,10.321,10.324,10.327,
-10.331,10.335,10.340,10.345,10.351,10.358,10.365,10.372,10.380,10.389,10.398,10.407,10.417,10.427,10.438,10.449,
-10.460,10.471,10.483,10.495,10.506,10.518,10.530,10.542,10.554,10.566,10.578,10.590,10.601,10.613,10.624,10.635,
-10.645,10.655,10.666,10.675,10.685,10.694,10.703,10.712,10.720,10.728,10.736,10.744,10.752,10.759,10.767,10.774,
-10.782,10.789,10.797,10.804,10.812,10.820,10.829,10.838,10.847,10.857,10.867,10.878,10.890,10.902,10.915,10.929,
-10.943,10.959,10.975,10.993,11.011,11.030,11.051,11.072,11.095,11.118,11.143,11.168,11.195,11.223,11.252,11.281,
-11.312,11.344,11.376,11.410,11.444,11.479,11.515,11.551,11.588,11.626,11.664,11.702,11.741,11.779,11.818,11.858,
-11.897,11.936,11.975,12.014,12.053,12.091,12.129,12.167,12.204,12.240,12.276,12.311,12.346,12.380,12.413,12.446,
-12.477,12.508,12.538,12.567,12.596,12.623,12.650,12.676,12.701,12.725,12.749,12.772,12.794,12.816,12.837,12.858,
-12.878,12.898,12.917,12.936,12.955,12.974,12.993,13.012,13.030,13.049,13.068,13.088,13.107,13.127,13.148,13.169,
-13.191,13.213,13.236,13.259,13.284,13.309,13.335,13.362,13.390,13.418,13.448,13.479,13.510,13.543,13.576,13.611,
-13.646,13.683,13.720,13.758,13.797,13.836,13.877,13.918,13.960,14.002,14.045,14.089,14.132,14.176,14.221,14.265,
-14.310,14.355,14.399,14.444,14.488,14.532,14.575,14.618,14.661,14.703,14.744,14.784,14.824,14.862,14.900,14.936,
-14.972,15.006,15.039,15.070,15.101,15.129,15.157,15.183,15.207,15.230,15.252,15.272,15.290,15.307,15.322,15.336,
-15.349,15.359,15.369,15.377,15.384,15.389,15.393,15.396,15.397,15.398,15.397,15.396,15.393,15.390,15.386,15.381,
-15.376,15.370,15.363,15.356,15.349,15.342,15.334,15.326,15.318,15.310,15.302,15.295,15.287,15.280,15.273,15.267,
-15.261,15.255,15.250,15.245,15.241,15.238,15.235,15.232,15.231,15.230,15.229,15.230,15.230,15.232,15.234,15.237,
-15.240,15.244,15.248,15.253,15.258,15.264,15.270,15.277,15.283,15.291,15.298,15.305,15.313,15.321,15.329,15.337,
-15.345,15.353,15.361,15.368,15.376,15.384,15.392,15.399,15.406,15.413,15.420,15.427,15.434,15.440,15.446,15.453,
-15.459,15.465,15.470,15.476,15.482,15.488,15.494,15.500,15.506,15.513,15.519,15.526,15.533,15.541,15.549,15.557,
-15.566,15.576,15.586,15.597,15.608,15.621,15.634,15.647,15.662,15.678,15.694,15.711,15.730,15.749,15.769,15.790,
-15.812,15.835,15.859,15.884,15.910,15.936,15.964,15.992,16.021,16.051,16.081,16.112,16.144,16.176,16.208,16.241,
-16.275,16.308,16.342,16.376,16.410,16.444,16.477,16.511,16.545,16.578,16.611,16.643,16.675,16.707,16.738,16.768,
-16.798,16.827,16.856,16.884,16.911,16.938,16.964,16.990,17.014,17.039,17.062,17.086,17.108,17.131,17.153,17.175,
-17.197,17.218,17.240,17.262,17.284,17.306,17.329,17.352,17.376,17.400,17.425,17.452,17.479,17.508,17.538,17.569,
-17.601,17.635,17.671,17.709,17.748,17.789,17.832,17.877,17.924,17.972,18.023,18.076,18.130,18.187,18.246,18.306,
-18.368,18.432,18.498,18.565,18.634,18.704,18.775,18.847,18.920,18.994,19.069,19.144,19.219,19.295,19.370,19.445,
-19.520,19.594,19.667,19.739,19.810,19.879,19.947,20.013,20.078,20.140,20.199,20.257,20.311,20.364,20.413,20.459,
-20.502,20.543,20.580,20.614,20.644,20.671,20.695,20.716,20.733,20.748,20.758,20.766,20.771,20.772,20.771,20.767,
-20.760,20.751,20.739,20.725,20.709,20.690,20.670,20.649,20.626,20.601,20.576,20.549,20.522,20.494,20.466,20.438,
-20.410,20.381,20.353,20.326,20.299,20.272,20.247,20.223,20.199,20.177,20.156,20.136,20.118,20.102,20.086,20.073,
-20.061,20.051,20.042,20.035,20.030,20.026,20.024,20.023,20.024,20.026,20.030,20.035,20.042,20.049,20.058,20.068,
-20.079,20.090,20.103,20.116,20.130,20.144,20.159,20.174,20.190,20.205,20.221,20.237,20.253,20.269,20.284,20.300,
-20.315,20.330,20.344,20.358,20.372,20.385,20.398,20.410,20.422,20.433,20.443,20.453,20.462,20.471,20.479,20.487,
-20.494,20.500,20.506,20.511,20.516,20.521,20.524,20.528,20.531,20.534,20.536,20.538,20.539,20.540,20.541,20.542,
-20.543,20.543,20.543,20.543,20.543,20.543,20.543,20.542,20.542,20.542,20.541,20.541,20.541,20.541,20.541,20.541,
-20.542,20.542,20.543,20.544,20.545,20.546,20.548,20.550,20.552,20.554,20.557,20.560,20.563,20.566,20.570,20.574,
-20.578,20.582,20.587,20.592,20.598,20.603,20.609,20.615,20.621,20.627,20.634,20.641,20.647,20.654,20.661,20.668,
-20.675,20.683,20.690,20.697,20.704,20.710,20.717,20.723,20.730,20.736,20.742,20.747,20.752,20.757,20.762,20.766,
-20.770,20.773,20.776,20.778,20.780,20.782,20.783,20.784,20.784,20.784,20.783,20.782,20.780,20.778,20.776,20.773,
-20.770,20.767,20.763,20.759,20.755,20.750,20.746,20.741,20.736,20.731,20.726,20.722,20.717,20.712,20.708,20.704,
-20.700,20.696,20.693,20.690,20.687,20.685,20.683,20.682,20.681,20.680,20.681,20.681,20.683,20.685,20.687,20.690,
-20.694,20.698,20.702,20.708,20.713,20.719,20.726,20.733,20.740,20.748,20.756,20.764,20.773,20.782,21.521,21.538,
-21.555,21.570,21.585,21.599,21.613,21.625,21.637,21.648,21.657,21.666,21.673,21.680,21.685,21.689,21.692,21.694,
-21.695,21.695,21.693,21.691,21.687,21.682,21.677,21.670,21.662,21.653,21.643,21.633,21.621,21.609,21.596,21.583,
-21.568,21.553,21.538,21.522,21.506,21.489,21.472,21.455,21.438,21.420,21.403,21.385,21.368,21.350,21.333,21.316,
-21.299,21.283,21.267,21.251,21.236,21.221,21.207,21.193,21.180,21.167,21.155,21.144,21.134,21.124,21.115,21.107,
-21.100,21.093,21.087,21.082,21.078,21.075,21.072,21.070,21.069,21.069,21.069,21.071,21.072,21.075,21.078,21.081,
-21.085,21.089,21.094,21.099,21.105,21.110,21.116,21.122,21.128,21.134,21.139,21.145,21.150,21.155,21.160,21.164,
-21.168,21.171,21.173,21.175,21.176,21.176,21.175,21.173,21.171,21.167,21.163,21.157,21.150,21.142,21.133,21.123,
-21.112,21.100,21.086,21.072,21.056,21.040,21.022,21.004,20.984,20.964,20.942,20.920,20.898,20.874,20.850,20.825,
-20.799,20.773,20.747,20.720,20.693,20.666,20.638,20.610,20.582,20.554,20.526,20.498,20.470,20.441,20.413,20.385,
-20.357,20.329,20.301,20.273,20.245,20.217,20.189,20.161,20.132,20.104,20.076,20.047,20.018,19.989,19.960,19.930,
-19.900,19.869,19.838,19.806,19.773,19.740,19.706,19.672,19.636,19.600,19.563,19.525,19.487,19.447,19.406,19.365,
-19.323,19.280,19.236,19.191,19.145,19.099,19.052,19.005,18.957,18.908,18.859,18.810,18.761,18.711,18.662,18.612,
-18.563,18.514,18.465,18.417,18.370,18.323,18.277,18.232,18.188,18.145,18.104,18.064,18.025,17.988,17.952,17.918,
-17.886,17.856,17.828,17.801,17.777,17.754,17.734,17.715,17.699,17.684,17.672,17.661,17.653,17.646,17.641,17.637,
-17.636,17.636,17.637,17.640,17.643,17.649,17.655,17.662,17.669,17.678,17.687,17.696,17.706,17.715,17.725,17.734,
-17.743,17.751,17.759,17.766,17.772,17.777,17.781,17.784,17.785,17.784,17.782,17.779,17.773,17.766,17.757,17.746,
-17.732,17.717,17.700,17.680,17.658,17.634,17.608,17.579,17.549,17.516,17.482,17.445,17.406,17.365,17.323,17.278,
-17.232,17.184,17.135,17.084,17.032,16.979,16.924,16.869,16.812,16.755,16.696,16.638,16.578,16.519,16.459,16.399,
-16.338,16.278,16.218,16.158,16.098,16.039,15.980,15.921,15.863,15.806,15.750,15.694,15.638,15.584,15.530,15.477,
-15.425,15.374,15.324,15.274,15.225,15.177,15.130,15.084,15.038,14.993,14.948,14.905,14.861,14.819,14.776,14.734,
-14.693,14.652,14.611,14.570,14.530,14.490,14.449,14.410,14.370,14.330,14.290,14.251,14.211,14.171,14.132,14.093,
-14.053,14.014,13.975,13.936,13.897,13.858,13.820,13.782,13.744,13.707,13.670,13.634,13.598,13.563,13.529,13.495,
-13.463,13.431,13.400,13.370,13.341,13.313,13.286,13.260,13.235,13.211,13.189,13.167,13.147,13.128,13.110,13.093,
-13.077,13.061,13.047,13.034,13.021,13.009,12.998,12.987,12.976,12.966,12.956,12.946,12.936,12.925,12.915,12.904,
-12.892,12.880,12.867,12.853,12.838,12.822,12.805,12.787,12.767,12.746,12.723,12.699,12.673,12.645,12.616,12.585,
-12.552,12.518,12.482,12.445,12.406,12.365,12.324,12.280,12.236,12.190,12.144,12.096,12.048,12.000,11.951,11.901,
-11.852,11.802,11.753,11.704,11.656,11.609,11.562,11.517,11.472,11.430,11.388,11.349,11.311,11.276,11.242,11.211,
-11.182,11.155,11.131,11.109,11.090,11.073,11.059,11.047,11.038,11.031,11.027,11.025,11.025,11.027,11.031,11.037,
-11.044,11.053,11.063,11.075,11.087,11.100,11.113,11.127,11.140,11.153,11.166,11.178,11.189,11.198,11.207,11.213,
-11.218,11.220,11.220,11.218,11.213,11.205,11.194,11.180,11.163,11.142,11.118,11.090,11.060,11.025,10.987,10.946,
-10.902,10.854,10.804,10.750,10.694,10.635,10.574,10.511,10.446,10.379,10.312,10.243,10.174,10.105,10.036,9.967,
-9.899,9.833,9.769,9.706,9.646,9.589,9.535,9.485,9.438,9.396,9.359,9.327,9.299,9.278,9.262,9.252,
-9.249,9.252,9.261,9.277,9.299,9.328,9.364,9.406,9.455,9.510,9.571,9.639,9.712,9.791,9.875,9.963,
-10.057,10.154,10.255,10.359,10.466,10.576,10.686,10.799,10.911,11.024,11.137,11.248,11.358,11.466,11.570,11.672,
-11.770,11.863,11.952,12.035,12.112,12.183,12.248,12.305,12.355,12.397,12.432,12.458,12.476,12.486,12.487,12.479,
-12.462,12.437,12.404,12.362,12.311,12.253,12.187,12.113,12.031,11.943,11.848,11.747,11.640,11.528,11.412,11.290,
-11.165,11.037,10.906,10.772,10.637,10.501,10.364,10.227,10.090,9.955,9.820,9.688,9.558,9.431,9.307,9.186,
-9.069,8.957,8.849,8.746,8.648,8.555,8.468,8.386,8.310,8.239,8.174,8.115,8.062,8.014,7.972,7.935,
-7.904,7.877,7.856,7.839,7.827,7.819,7.816,7.816,7.819,7.826,7.836,7.848,7.863,7.880,7.899,7.919,
-7.941,7.964,7.987,8.011,8.036,8.061,8.085,8.110,8.134,8.157,8.180,8.202,8.223,8.244,8.263,8.281,
-8.299,8.315,8.330,8.344,8.357,8.369,8.380,8.390,8.400,8.408,8.416,8.424,8.431,8.438,8.444,8.451,
-8.457,8.464,8.470,8.477,8.485,8.492,8.501,8.510,8.519,8.530,8.541,8.553,8.566,8.580,8.595,8.611,
-8.628,8.646,8.665,8.685,8.706,8.728,8.751,8.775,8.800,8.826,8.852,8.880,8.908,8.937,8.966,8.996,
-9.026,9.057,9.088,9.120,9.152,9.184,9.216,9.248,9.280,9.312,9.344,9.375,9.407,9.438,9.469,9.499,
-9.529,9.558,9.587,9.616,9.644,9.671,9.697,9.723,9.748,9.773,9.796,9.819,9.841,9.862,9.883,9.902,
-9.921,9.938,9.955,9.971,9.986,10.000,10.014,10.026,10.038,10.048,10.058,10.067,10.075,10.082,10.089,10.094,
-10.099,10.103,10.107,10.110,10.112,10.113,10.115,10.115,10.115,10.115,10.114,10.113,10.111,10.110,10.108,10.106,
-10.103,10.101,10.099,10.097,10.095,10.093,10.091,10.089,10.088,10.087,10.086,10.086,10.086,10.087,10.088,10.089,
-10.091,10.094,10.097,10.100,10.104,10.109,10.114,10.119,10.125,10.132,10.139,10.146,10.154,10.162,10.171,10.179,
-10.188,10.198,10.207,10.217,10.226,10.236,10.246,10.256,10.265,10.275,10.284,10.294,10.303,10.312,10.320,10.329,
-10.337,10.345,10.352,10.359,10.366,10.373,10.379,10.385,10.391,10.397,10.402,10.407,10.412,10.417,10.422,10.427,
-10.432,10.437,10.443,10.448,10.454,10.461,10.467,10.475,10.482,10.491,10.500,10.510,10.521,10.532,10.545,10.559,
-10.573,10.589,10.606,10.624,10.643,10.664,10.685,10.708,10.733,10.758,10.785,10.813,10.843,10.873,10.905,10.938,
-10.972,11.007,11.044,11.081,11.119,11.158,11.198,11.239,11.280,11.322,11.364,11.407,11.450,11.494,11.538,11.581,
-11.625,11.669,11.713,11.756,11.799,11.842,11.885,11.927,11.969,12.010,12.050,12.090,12.129,12.167,12.205,12.242,
-12.278,12.313,12.347,12.381,12.414,12.446,12.477,12.508,12.538,12.567,12.595,12.623,12.651,12.677,12.704,12.730,
-12.755,12.780,12.805,12.830,12.855,12.879,12.903,12.928,12.952,12.977,13.002,13.027,13.053,13.079,13.105,13.132,
-13.159,13.187,13.215,13.244,13.273,13.304,13.335,13.366,13.399,13.432,13.466,13.501,13.536,13.572,13.609,13.647,
-13.685,13.724,13.764,13.804,13.845,13.887,13.929,13.972,14.015,14.058,14.102,14.146,14.190,14.235,14.280,14.324,
-14.369,14.414,14.458,14.503,14.547,14.590,14.634,14.676,14.719,14.760,14.801,14.842,14.881,14.920,14.957,14.994,
-15.029,15.064,15.097,15.129,15.159,15.189,15.217,15.243,15.268,15.292,15.314,15.335,15.354,15.371,15.387,15.402,
-15.414,15.426,15.436,15.444,15.451,15.456,15.460,15.463,15.464,15.464,15.463,15.460,15.457,15.452,15.447,15.440,
-15.433,15.425,15.416,15.407,15.397,15.387,15.377,15.366,15.355,15.343,15.332,15.321,15.310,15.299,15.289,15.279,
-15.269,15.259,15.251,15.242,15.235,15.228,15.221,15.216,15.211,15.207,15.204,15.201,15.200,15.199,15.199,15.200,
-15.201,15.204,15.207,15.211,15.215,15.220,15.226,15.233,15.240,15.247,15.255,15.264,15.273,15.282,15.291,15.301,
-15.311,15.321,15.331,15.341,15.351,15.361,15.371,15.381,15.391,15.400,15.410,15.419,15.428,15.437,15.445,15.454,
-15.462,15.470,15.477,15.485,15.492,15.499,15.506,15.513,15.520,15.527,15.534,15.541,15.548,15.555,15.563,15.570,
-15.578,15.587,15.596,15.605,15.615,15.626,15.637,15.649,15.662,15.676,15.690,15.706,15.722,15.739,15.757,15.777,
-15.797,15.818,15.841,15.864,15.889,15.914,15.941,15.969,15.997,16.027,16.057,16.088,16.120,16.153,16.187,16.221,
-16.255,16.291,16.326,16.362,16.398,16.434,16.470,16.506,16.542,16.578,16.614,16.649,16.683,16.717,16.751,16.784,
-16.816,16.847,16.877,16.907,16.935,16.963,16.989,17.015,17.040,17.063,17.086,17.108,17.129,17.149,17.168,17.187,
-17.205,17.222,17.239,17.256,17.273,17.289,17.306,17.323,17.340,17.358,17.377,17.396,17.417,17.438,17.461,17.486,
-17.512,17.540,17.570,17.602,17.636,17.673,17.712,17.753,17.798,17.845,17.895,17.947,18.003,18.061,18.122,18.187,
-18.254,18.323,18.396,18.471,18.548,18.628,18.710,18.794,18.881,18.968,19.057,19.148,19.239,19.332,19.425,19.518,
-19.611,19.703,19.796,19.887,19.977,20.066,20.153,20.238,20.321,20.401,20.479,20.554,20.625,20.693,20.758,20.818,
-20.875,20.928,20.976,21.020,21.060,21.095,21.125,21.151,21.173,21.190,21.203,21.211,21.215,21.215,21.210,21.202,
-21.190,21.175,21.156,21.134,21.109,21.082,21.052,21.020,20.986,20.951,20.914,20.876,20.837,20.798,20.759,20.719,
-20.680,20.641,20.603,20.565,20.529,20.494,20.461,20.429,20.399,20.371,20.346,20.322,20.300,20.281,20.265,20.250,
-20.238,20.229,20.222,20.217,20.215,20.215,20.217,20.221,20.228,20.236,20.246,20.258,20.271,20.286,20.303,20.320,
-20.339,20.359,20.379,20.400,20.422,20.444,20.467,20.490,20.513,20.535,20.558,20.581,20.603,20.625,20.647,20.668,
-20.689,20.709,20.729,20.748,20.766,20.784,20.801,20.817,20.833,20.848,20.863,20.877,20.890,20.903,20.915,20.927,
-20.938,20.949,20.959,20.969,20.978,20.988,20.996,21.005,21.013,21.022,21.029,21.037,21.045,21.052,21.059,21.066,
-21.073,21.080,21.086,21.093,21.099,21.105,21.111,21.117,21.122,21.128,21.133,21.138,21.143,21.147,21.152,21.156,
-21.160,21.163,21.167,21.170,21.173,21.175,21.178,21.180,21.182,21.183,21.185,21.186,21.187,21.188,21.188,21.188,
-21.189,21.188,21.188,21.188,21.187,21.187,21.186,21.185,21.184,21.183,21.182,21.181,21.179,21.178,21.176,21.175,
-21.173,21.171,21.169,21.167,21.165,21.163,21.161,21.159,21.156,21.154,21.151,21.148,21.145,21.142,21.139,21.135,
-21.132,21.128,21.125,21.121,21.117,21.113,21.109,21.104,21.100,21.096,21.092,21.088,21.083,21.079,21.076,21.072,
-21.068,21.065,21.062,21.059,21.057,21.055,21.054,21.053,21.053,21.053,21.054,21.055,21.057,21.060,21.064,21.068,
-21.073,21.079,21.086,21.094,21.102,21.111,21.121,21.132,21.144,21.157,21.170,21.184,21.199,21.214,21.230,21.247,
-21.264,21.281,21.299,21.318,21.336,21.355,21.374,21.393,21.412,21.431,21.449,21.468,21.486,21.504,21.521,22.188,
-22.204,22.218,22.232,22.244,22.255,22.264,22.272,22.278,22.283,22.287,22.289,22.290,22.289,22.288,22.285,22.280,
-22.275,22.269,22.261,22.253,22.244,22.234,22.224,22.213,22.202,22.190,22.178,22.166,22.153,22.141,22.129,22.117,
-22.105,22.093,22.082,22.071,22.060,22.050,22.040,22.031,22.022,22.014,22.006,21.999,21.992,21.986,21.981,21.975,
-21.971,21.966,21.962,21.959,21.956,21.953,21.950,21.948,21.945,21.943,21.941,21.940,21.938,21.936,21.934,21.933,
-21.931,21.929,21.927,21.925,21.923,21.920,21.918,21.915,21.913,21.910,21.907,21.904,21.900,21.897,21.893,21.889,
-21.885,21.880,21.876,21.871,21.866,21.860,21.855,21.849,21.842,21.836,21.829,21.821,21.813,21.805,21.796,21.787,
-21.777,21.766,21.755,21.743,21.730,21.717,21.702,21.687,21.671,21.654,21.637,21.618,21.598,21.578,21.556,21.533,
-21.510,21.485,21.459,21.433,21.405,21.377,21.348,21.317,21.287,21.255,21.223,21.190,21.156,21.122,21.088,21.053,
-21.018,20.982,20.947,20.911,20.876,20.840,20.805,20.769,20.735,20.700,20.666,20.632,20.599,20.566,20.534,20.502,
-20.471,20.441,20.411,20.382,20.353,20.325,20.298,20.271,20.245,20.219,20.194,20.169,20.144,20.119,20.095,20.071,
-20.047,20.022,19.998,19.973,19.948,19.923,19.898,19.871,19.845,19.817,19.789,19.760,19.730,19.699,19.668,19.635,
-19.602,19.567,19.531,19.495,19.457,19.418,19.378,19.337,19.296,19.253,19.209,19.165,19.120,19.074,19.028,18.981,
-18.933,18.886,18.838,18.790,18.742,18.694,18.646,18.598,18.551,18.504,18.458,18.412,18.368,18.324,18.281,18.239,
-18.199,18.160,18.121,18.085,18.049,18.016,17.983,17.953,17.923,17.896,17.870,17.845,17.823,17.802,17.782,17.764,
-17.747,17.732,17.719,17.706,17.695,17.686,17.677,17.669,17.663,17.657,17.652,17.648,17.644,17.641,17.639,17.636,
-17.634,17.632,17.630,17.627,17.625,17.622,17.618,17.614,17.610,17.605,17.598,17.591,17.583,17.574,17.564,17.553,
-17.540,17.526,17.510,17.494,17.475,17.455,17.434,17.411,17.387,17.361,17.333,17.304,17.274,17.241,17.208,17.172,
-17.136,17.098,17.058,17.018,16.976,16.933,16.888,16.843,16.797,16.750,16.702,16.653,16.604,16.554,16.504,16.453,
-16.402,16.351,16.299,16.248,16.197,16.146,16.095,16.044,15.994,15.944,15.895,15.846,15.798,15.750,15.703,15.657,
-15.611,15.567,15.523,15.480,15.437,15.396,15.355,15.315,15.276,15.237,15.199,15.161,15.124,15.088,15.052,15.016,
-14.980,14.945,14.910,14.875,14.840,14.805,14.770,14.735,14.700,14.664,14.628,14.592,14.556,14.519,14.481,14.443,
-14.405,14.366,14.327,14.287,14.247,14.207,14.167,14.126,14.085,14.043,14.002,13.961,13.919,13.878,13.838,13.797,
-13.757,13.717,13.679,13.640,13.603,13.567,13.531,13.497,13.463,13.431,13.400,13.371,13.342,13.315,13.290,13.266,
-13.243,13.221,13.201,13.183,13.165,13.149,13.134,13.120,13.107,13.094,13.083,13.072,13.062,13.052,13.042,13.033,
-13.023,13.014,13.003,12.993,12.982,12.970,12.957,12.943,12.928,12.912,12.894,12.875,12.854,12.831,12.807,12.781,
-12.752,12.722,12.690,12.657,12.621,12.583,12.543,12.501,12.458,12.413,12.366,12.318,12.268,12.217,12.165,12.112,
-12.058,12.003,11.948,11.892,11.836,11.780,11.725,11.669,11.614,11.560,11.507,11.455,11.404,11.355,11.307,11.261,
-11.216,11.174,11.134,11.096,11.060,11.027,10.996,10.968,10.942,10.919,10.898,10.880,10.865,10.852,10.841,10.833,
-10.827,10.823,10.821,10.821,10.823,10.827,10.832,10.838,10.845,10.853,10.862,10.871,10.880,10.889,10.898,10.907,
-10.914,10.921,10.926,10.930,10.933,10.933,10.931,10.927,10.921,10.911,10.899,10.884,10.866,10.845,10.820,10.793,
-10.761,10.726,10.688,10.647,10.602,10.554,10.503,10.449,10.392,10.332,10.270,10.206,10.140,10.073,10.004,9.933,
-9.863,9.792,9.721,9.651,9.581,9.513,9.446,9.382,9.320,9.261,9.206,9.154,9.106,9.063,9.025,8.992,
-8.965,8.943,8.928,8.919,8.917,8.921,8.933,8.951,8.977,9.009,9.049,9.095,9.149,9.209,9.276,9.349,
-9.428,9.512,9.602,9.697,9.797,9.900,10.007,10.116,10.229,10.342,10.458,10.573,10.689,10.804,10.918,11.029,
-11.138,11.244,11.346,11.443,11.536,11.622,11.703,11.777,11.844,11.903,11.954,11.997,12.032,12.057,12.074,12.081,
-12.080,12.068,12.048,12.018,11.979,11.931,11.874,11.809,11.736,11.654,11.565,11.469,11.367,11.258,11.144,11.025,
-10.901,10.773,10.643,10.509,10.374,10.237,10.099,9.961,9.823,9.686,9.551,9.418,9.287,9.160,9.036,8.915,
-8.799,8.688,8.582,8.481,8.385,8.295,8.210,8.132,8.059,7.992,7.931,7.876,7.826,7.783,7.744,7.711,
-7.683,7.659,7.640,7.625,7.614,7.607,7.603,7.602,7.604,7.607,7.613,7.621,7.629,7.639,7.650,7.661,
-7.672,7.683,7.694,7.705,7.715,7.724,7.732,7.739,7.746,7.751,7.755,7.758,7.760,7.761,7.761,7.760,
-7.758,7.756,7.753,7.750,7.746,7.742,7.739,7.735,7.732,7.730,7.728,7.727,7.728,7.729,7.732,7.736,
-7.742,7.749,7.759,7.770,7.783,7.798,7.815,7.834,7.855,7.878,7.903,7.929,7.958,7.989,8.021,8.055,
-8.090,8.126,8.164,8.203,8.243,8.284,8.325,8.367,8.410,8.452,8.495,8.538,8.581,8.623,8.665,8.706,
-8.747,8.787,8.827,8.865,8.903,8.939,8.975,9.009,9.042,9.074,9.106,9.135,9.164,9.192,9.218,9.244,
-9.268,9.292,9.315,9.336,9.357,9.377,9.397,9.416,9.434,9.451,9.469,9.485,9.502,9.518,9.533,9.549,
-9.564,9.579,9.594,9.609,9.623,9.638,9.652,9.666,9.681,9.695,9.708,9.722,9.736,9.749,9.763,9.776,
-9.788,9.801,9.813,9.825,9.837,9.848,9.859,9.869,9.879,9.888,9.897,9.906,9.914,9.921,9.928,9.935,
-9.941,9.946,9.951,9.956,9.960,9.963,9.966,9.969,9.971,9.973,9.975,9.976,9.977,9.977,9.978,9.978,
-9.978,9.978,9.978,9.978,9.977,9.977,9.977,9.976,9.976,9.975,9.975,9.975,9.975,9.974,9.974,9.975,
-9.975,9.975,9.975,9.976,9.976,9.977,9.977,9.978,9.979,9.980,9.981,9.982,9.983,9.984,9.985,9.987,
-9.988,9.990,9.991,9.993,9.995,9.998,10.000,10.003,10.006,10.009,10.012,10.016,10.021,10.026,10.031,10.037,
-10.044,10.051,10.059,10.068,10.077,10.088,10.099,10.112,10.125,10.140,10.156,10.173,10.191,10.210,10.231,10.252,
-10.276,10.300,10.326,10.353,10.382,10.412,10.443,10.476,10.510,10.545,10.581,10.619,10.657,10.697,10.738,10.780,
-10.823,10.866,10.911,10.956,11.002,11.048,11.095,11.142,11.189,11.237,11.285,11.332,11.380,11.428,11.475,11.523,
-11.570,11.616,11.662,11.708,11.753,11.797,11.841,11.884,11.926,11.967,12.008,12.048,12.087,12.125,12.163,12.200,
-12.236,12.271,12.305,12.339,12.372,12.405,12.437,12.468,12.499,12.529,12.559,12.588,12.617,12.646,12.675,12.703,
-12.731,12.760,12.788,12.816,12.844,12.872,12.900,12.929,12.957,12.986,13.015,13.044,13.073,13.103,13.133,13.163,
-13.193,13.224,13.255,13.286,13.317,13.348,13.380,13.412,13.444,13.476,13.508,13.541,13.573,13.606,13.638,13.671,
-13.704,13.736,13.769,13.801,13.834,13.866,13.899,13.931,13.963,13.995,14.027,14.059,14.091,14.122,14.154,14.185,
-14.216,14.247,14.278,14.309,14.339,14.369,14.399,14.429,14.459,14.488,14.518,14.547,14.575,14.604,14.632,14.659,
-14.687,14.714,14.740,14.766,14.792,14.817,14.841,14.865,14.888,14.910,14.932,14.953,14.973,14.993,15.011,15.029,
-15.046,15.062,15.077,15.090,15.103,15.115,15.126,15.136,15.145,15.153,15.160,15.166,15.171,15.175,15.178,15.181,
-15.182,15.183,15.183,15.182,15.181,15.179,15.176,15.173,15.170,15.167,15.163,15.159,15.155,15.151,15.147,15.143,
-15.139,15.135,15.132,15.129,15.127,15.125,15.124,15.123,15.123,15.123,15.124,15.126,15.129,15.133,15.137,15.142,
-15.148,15.155,15.162,15.171,15.180,15.190,15.201,15.212,15.224,15.237,15.250,15.264,15.279,15.294,15.309,15.325,
-15.341,15.357,15.374,15.391,15.408,15.425,15.442,15.459,15.476,15.493,15.510,15.526,15.542,15.558,15.574,15.590,
-15.605,15.620,15.634,15.648,15.662,15.675,15.688,15.700,15.712,15.724,15.735,15.747,15.758,15.768,15.779,15.789,
-15.799,15.809,15.819,15.829,15.840,15.850,15.861,15.871,15.883,15.894,15.906,15.918,15.931,15.945,15.959,15.974,
-15.990,16.006,16.024,16.042,16.061,16.082,16.103,16.125,16.148,16.172,16.198,16.224,16.251,16.280,16.309,16.339,
-16.370,16.402,16.435,16.469,16.503,16.538,16.574,16.610,16.646,16.683,16.720,16.758,16.795,16.832,16.870,16.907,
-16.944,16.980,17.016,17.052,17.086,17.121,17.154,17.187,17.219,17.250,17.280,17.310,17.338,17.366,17.392,17.418,
-17.443,17.468,17.492,17.515,17.537,17.560,17.582,17.603,17.625,17.647,17.670,17.692,17.716,17.740,17.766,17.792,
-17.820,17.850,17.881,17.914,17.950,17.988,18.028,18.071,18.116,18.165,18.217,18.272,18.330,18.391,18.456,18.524,
-18.596,18.671,18.749,18.831,18.916,19.004,19.095,19.188,19.285,19.383,19.484,19.587,19.692,19.798,19.905,20.012,
-20.120,20.229,20.336,20.444,20.550,20.655,20.758,20.859,20.957,21.052,21.145,21.233,21.318,21.398,21.474,21.545,
-21.611,21.672,21.728,21.777,21.821,21.859,21.891,21.917,21.937,21.951,21.958,21.960,21.956,21.947,21.932,21.911,
-21.886,21.856,21.821,21.782,21.739,21.693,21.643,21.590,21.535,21.478,21.419,21.359,21.297,21.235,21.173,21.112,
-21.050,20.990,20.931,20.873,20.818,20.764,20.713,20.665,20.619,20.576,20.537,20.501,20.468,20.439,20.414,20.392,
-20.374,20.359,20.348,20.341,20.337,20.336,20.338,20.344,20.352,20.364,20.377,20.393,20.412,20.432,20.454,20.478,
-20.503,20.530,20.557,20.586,20.614,20.644,20.673,20.703,20.733,20.763,20.792,20.821,20.849,20.877,20.904,20.931,
-20.956,20.981,21.005,21.028,21.051,21.072,21.093,21.113,21.132,21.150,21.167,21.184,21.201,21.216,21.231,21.246,
-21.260,21.274,21.288,21.301,21.314,21.327,21.339,21.352,21.364,21.377,21.389,21.401,21.413,21.425,21.437,21.449,
-21.460,21.472,21.483,21.495,21.506,21.517,21.528,21.539,21.549,21.559,21.569,21.578,21.587,21.596,21.604,21.612,
-21.620,21.627,21.634,21.640,21.646,21.652,21.657,21.662,21.666,21.670,21.674,21.678,21.681,21.684,21.687,21.690,
-21.692,21.695,21.697,21.699,21.701,21.703,21.705,21.707,21.709,21.711,21.713,21.715,21.717,21.719,21.721,21.723,
-21.725,21.727,21.728,21.730,21.731,21.732,21.733,21.734,21.734,21.734,21.734,21.734,21.733,21.731,21.730,21.727,
-21.725,21.722,21.718,21.714,21.710,21.705,21.700,21.694,21.688,21.682,21.675,21.669,21.662,21.655,21.648,21.641,
-21.635,21.628,21.622,21.616,21.611,21.606,21.602,21.598,21.596,21.594,21.593,21.593,21.594,21.596,21.600,21.604,
-21.610,21.617,21.626,21.635,21.646,21.658,21.672,21.686,21.702,21.719,21.737,21.756,21.775,21.796,21.818,21.840,
-21.862,21.885,21.908,21.932,21.956,21.979,22.003,22.026,22.048,22.071,22.092,22.113,22.133,22.153,22.171,22.188,
-22.659,22.668,22.675,22.680,22.684,22.686,22.686,22.685,22.681,22.677,22.670,22.663,22.654,22.644,22.632,22.620,
-22.607,22.594,22.580,22.566,22.551,22.537,22.523,22.510,22.497,22.484,22.473,22.463,22.454,22.446,22.440,22.435,
-22.432,22.430,22.430,22.432,22.435,22.440,22.447,22.456,22.466,22.477,22.490,22.505,22.520,22.537,22.554,22.572,
-22.591,22.611,22.631,22.651,22.671,22.691,22.710,22.729,22.748,22.765,22.782,22.798,22.812,22.826,22.838,22.848,
-22.857,22.864,22.870,22.874,22.876,22.877,22.876,22.873,22.868,22.862,22.854,22.845,22.834,22.821,22.807,22.792,
-22.776,22.759,22.740,22.720,22.700,22.679,22.657,22.634,22.610,22.587,22.562,22.537,22.512,22.486,22.460,22.434,
-22.407,22.380,22.353,22.325,22.298,22.270,22.241,22.212,22.183,22.154,22.124,22.094,22.063,22.032,22.000,21.968,
-21.935,21.901,21.867,21.833,21.798,21.762,21.726,21.689,21.652,21.614,21.575,21.537,21.497,21.458,21.418,21.378,
-21.338,21.297,21.257,21.216,21.176,21.136,21.096,21.056,21.016,20.977,20.939,20.901,20.863,20.826,20.790,20.755,
-20.720,20.686,20.652,20.620,20.588,20.556,20.526,20.496,20.467,20.438,20.410,20.383,20.356,20.329,20.303,20.277,
-20.251,20.225,20.199,20.173,20.147,20.121,20.094,20.068,20.040,20.012,19.984,19.955,19.925,19.894,19.863,19.831,
-19.798,19.764,19.729,19.693,19.656,19.618,19.579,19.540,19.499,19.458,19.416,19.372,19.329,19.284,19.239,19.193,
-19.147,19.100,19.053,19.006,18.958,18.911,18.863,18.815,18.767,18.720,18.672,18.625,18.579,18.532,18.487,18.442,
-18.397,18.353,18.310,18.268,18.226,18.186,18.146,18.107,18.069,18.032,17.996,17.960,17.926,17.893,17.860,17.829,
-17.798,17.769,17.740,17.712,17.685,17.659,17.633,17.609,17.585,17.561,17.539,17.516,17.495,17.474,17.453,17.433,
-17.414,17.394,17.375,17.357,17.338,17.320,17.302,17.284,17.266,17.248,17.231,17.213,17.195,17.177,17.159,17.140,
-17.122,17.103,17.083,17.064,17.044,17.023,17.002,16.980,16.958,16.934,16.911,16.886,16.861,16.835,16.807,16.780,
-16.751,16.721,16.690,16.658,16.625,16.591,16.556,16.520,16.483,16.446,16.407,16.367,16.326,16.285,16.242,16.199,
-16.155,16.111,16.066,16.021,15.975,15.929,15.883,15.837,15.790,15.744,15.698,15.653,15.607,15.562,15.518,15.474,
-15.431,15.389,15.348,15.308,15.268,15.230,15.193,15.157,15.121,15.087,15.055,15.023,14.992,14.962,14.934,14.906,
-14.879,14.853,14.827,14.803,14.779,14.755,14.732,14.709,14.686,14.663,14.640,14.617,14.594,14.570,14.547,14.522,
-14.498,14.472,14.446,14.419,14.392,14.364,14.335,14.305,14.274,14.243,14.211,14.179,14.146,14.112,14.078,14.043,
-14.009,13.974,13.938,13.903,13.868,13.833,13.799,13.764,13.731,13.697,13.665,13.633,13.602,13.572,13.542,13.514,
-13.487,13.461,13.435,13.411,13.388,13.366,13.345,13.325,13.305,13.286,13.268,13.251,13.234,13.218,13.201,13.185,
-13.169,13.153,13.136,13.119,13.102,13.083,13.064,13.045,13.024,13.002,12.978,12.953,12.927,12.900,12.870,12.840,
-12.807,12.773,12.737,12.699,12.660,12.619,12.576,12.532,12.486,12.439,12.390,12.340,12.289,12.236,12.183,12.129,
-12.074,12.018,11.962,11.906,11.850,11.793,11.736,11.680,11.624,11.569,11.514,11.460,11.406,11.354,11.303,11.253,
-11.204,11.157,11.111,11.067,11.024,10.983,10.943,10.906,10.870,10.836,10.804,10.774,10.746,10.719,10.695,10.672,
-10.651,10.632,10.615,10.600,10.586,10.574,10.563,10.554,10.547,10.540,10.535,10.531,10.528,10.525,10.523,10.522,
-10.522,10.521,10.521,10.520,10.520,10.519,10.517,10.514,10.511,10.506,10.500,10.492,10.483,10.472,10.459,10.444,
-10.426,10.406,10.383,10.357,10.329,10.298,10.264,10.226,10.186,10.143,10.097,10.049,9.997,9.943,9.886,9.827,
-9.765,9.702,9.637,9.571,9.503,9.435,9.367,9.298,9.230,9.162,9.096,9.031,8.968,8.908,8.851,8.797,
-8.746,8.700,8.659,8.623,8.592,8.567,8.547,8.535,8.529,8.530,8.537,8.553,8.575,8.605,8.642,8.686,
-8.738,8.796,8.862,8.934,9.012,9.097,9.186,9.281,9.381,9.485,9.592,9.702,9.815,9.929,10.044,10.159,
-10.273,10.387,10.499,10.608,10.713,10.815,10.912,11.003,11.088,11.167,11.239,11.303,11.358,11.406,11.444,11.473,
-11.492,11.502,11.502,11.492,11.472,11.442,11.403,11.354,11.295,11.228,11.152,11.068,10.976,10.877,10.771,10.659,
-10.542,10.419,10.293,10.163,10.030,9.895,9.759,9.622,9.484,9.348,9.213,9.079,8.949,8.821,8.697,8.577,
-8.461,8.351,8.245,8.146,8.052,7.964,7.882,7.806,7.737,7.673,7.616,7.565,7.520,7.481,7.446,7.418,
-7.394,7.374,7.359,7.347,7.339,7.334,7.332,7.331,7.333,7.336,7.340,7.344,7.349,7.354,7.358,7.362,
-7.365,7.366,7.367,7.366,7.363,7.359,7.353,7.345,7.336,7.325,7.313,7.299,7.284,7.267,7.250,7.232,
-7.214,7.196,7.177,7.160,7.142,7.126,7.111,7.097,7.085,7.075,7.067,7.062,7.059,7.059,7.062,7.069,
-7.078,7.091,7.107,7.127,7.150,7.176,7.206,7.239,7.274,7.313,7.355,7.400,7.446,7.495,7.546,7.599,
-7.653,7.709,7.765,7.822,7.879,7.936,7.993,8.050,8.106,8.161,8.215,8.267,8.318,8.367,8.414,8.459,
-8.502,8.543,8.581,8.617,8.650,8.681,8.710,8.736,8.760,8.782,8.802,8.819,8.835,8.849,8.862,8.873,
-8.883,8.891,8.899,8.906,8.913,8.919,8.926,8.932,8.938,8.945,8.952,8.960,8.969,8.978,8.988,9.000,
-9.013,9.026,9.041,9.058,9.076,9.094,9.115,9.136,9.159,9.183,9.208,9.233,9.260,9.288,9.316,9.346,
-9.375,9.405,9.435,9.466,9.496,9.527,9.557,9.587,9.617,9.646,9.674,9.702,9.728,9.754,9.779,9.803,
-9.826,9.847,9.868,9.887,9.904,9.921,9.936,9.950,9.962,9.973,9.983,9.991,9.998,10.004,10.008,10.012,
-10.014,10.015,10.016,10.015,10.013,10.010,10.007,10.003,9.998,9.992,9.986,9.979,9.972,9.964,9.956,9.948,
-9.940,9.931,9.922,9.913,9.904,9.895,9.886,9.877,9.869,9.860,9.852,9.844,9.836,9.829,9.822,9.815,
-9.809,9.804,9.799,9.794,9.791,9.788,9.786,9.784,9.784,9.784,9.786,9.788,9.792,9.796,9.802,9.808,
-9.816,9.826,9.836,9.848,9.861,9.876,9.892,9.909,9.928,9.948,9.970,9.994,10.019,10.045,10.073,10.103,
-10.134,10.166,10.200,10.236,10.273,10.311,10.350,10.391,10.433,10.476,10.521,10.566,10.612,10.660,10.708,10.756,
-10.806,10.855,10.906,10.957,11.008,11.059,11.110,11.162,11.213,11.265,11.316,11.366,11.417,11.467,11.516,11.565,
-11.614,11.661,11.708,11.754,11.800,11.844,11.888,11.931,11.973,12.014,12.055,12.094,12.133,12.171,12.208,12.245,
-12.280,12.316,12.350,12.384,12.417,12.450,12.483,12.515,12.547,12.578,12.610,12.641,12.672,12.703,12.734,12.765,
-12.796,12.827,12.858,12.889,12.920,12.952,12.983,13.014,13.046,13.078,13.109,13.141,13.172,13.204,13.235,13.266,
-13.297,13.327,13.357,13.387,13.416,13.445,13.473,13.501,13.528,13.554,13.579,13.603,13.627,13.649,13.671,13.692,
-13.711,13.730,13.748,13.764,13.780,13.795,13.809,13.822,13.834,13.845,13.856,13.866,13.875,13.884,13.893,13.901,
-13.908,13.916,13.923,13.931,13.938,13.946,13.953,13.961,13.970,13.978,13.988,13.998,14.008,14.019,14.031,14.043,
-14.057,14.071,14.086,14.101,14.118,14.135,14.153,14.171,14.191,14.211,14.231,14.252,14.274,14.296,14.318,14.341,
-14.364,14.387,14.410,14.434,14.457,14.480,14.503,14.525,14.548,14.570,14.591,14.612,14.633,14.653,14.673,14.692,
-14.710,14.728,14.746,14.763,14.779,14.795,14.810,14.825,14.839,14.853,14.867,14.880,14.893,14.906,14.919,14.931,
-14.944,14.957,14.969,14.982,14.995,15.008,15.022,15.036,15.050,15.065,15.080,15.096,15.112,15.129,15.146,15.164,
-15.182,15.201,15.220,15.240,15.261,15.282,15.304,15.326,15.348,15.372,15.395,15.419,15.443,15.467,15.492,15.516,
-15.541,15.566,15.591,15.616,15.641,15.666,15.690,15.715,15.739,15.762,15.786,15.809,15.831,15.853,15.875,15.896,
-15.916,15.936,15.955,15.974,15.992,16.009,16.025,16.041,16.056,16.071,16.084,16.097,16.109,16.121,16.132,16.142,
-16.152,16.161,16.169,16.177,16.185,16.192,16.199,16.205,16.211,16.217,16.223,16.229,16.235,16.241,16.247,16.254,
-16.261,16.268,16.275,16.284,16.293,16.302,16.313,16.324,16.336,16.349,16.364,16.379,16.396,16.414,16.433,16.454,
-16.476,16.500,16.524,16.551,16.579,16.608,16.638,16.670,16.704,16.739,16.775,16.812,16.850,16.890,16.931,16.972,
-17.015,17.058,17.102,17.146,17.191,17.237,17.282,17.328,17.374,17.420,17.465,17.511,17.556,17.601,17.645,17.689,
-17.733,17.776,17.818,17.859,17.900,17.941,17.981,18.020,18.059,18.098,18.136,18.174,18.212,18.250,18.288,18.327,
-18.366,18.406,18.447,18.489,18.532,18.576,18.623,18.671,18.721,18.773,18.827,18.885,18.944,19.007,19.073,19.141,
-19.213,19.288,19.367,19.448,19.533,19.621,19.712,19.806,19.904,20.004,20.106,20.211,20.318,20.427,20.538,20.650,
-20.763,20.876,20.990,21.103,21.216,21.328,21.438,21.547,21.653,21.756,21.856,21.952,22.045,22.132,22.215,22.293,
-22.365,22.431,22.491,22.544,22.591,22.631,22.663,22.689,22.707,22.718,22.721,22.717,22.706,22.688,22.663,22.631,
-22.593,22.548,22.498,22.442,22.382,22.316,22.246,22.172,22.095,22.015,21.933,21.849,21.763,21.676,21.590,21.503,
-21.417,21.331,21.248,21.166,21.087,21.010,20.937,20.867,20.801,20.738,20.680,20.627,20.577,20.533,20.493,20.458,
-20.428,20.403,20.383,20.367,20.356,20.349,20.347,20.349,20.355,20.364,20.377,20.393,20.412,20.434,20.458,20.485,
-20.513,20.543,20.575,20.607,20.641,20.675,20.710,20.745,20.780,20.815,20.850,20.884,20.918,20.951,20.983,21.015,
-21.045,21.075,21.104,21.132,21.159,21.185,21.210,21.234,21.257,21.279,21.301,21.322,21.342,21.361,21.380,21.398,
-21.416,21.434,21.451,21.467,21.483,21.499,21.515,21.530,21.545,21.560,21.574,21.589,21.603,21.617,21.630,21.643,
-21.656,21.669,21.681,21.693,21.705,21.716,21.727,21.737,21.747,21.757,21.766,21.775,21.784,21.793,21.801,21.809,
-21.817,21.825,21.832,21.840,21.848,21.856,21.864,21.873,21.882,21.891,21.901,21.912,21.923,21.935,21.948,21.962,
-21.976,21.992,22.008,22.026,22.044,22.064,22.084,22.106,22.128,22.151,22.175,22.200,22.226,22.252,22.278,22.305,
-22.333,22.360,22.387,22.414,22.441,22.467,22.493,22.518,22.542,22.565,22.587,22.607,22.626,22.643,22.659,22.673,
-22.685,22.695,22.703,22.709,22.713,22.715,22.715,22.713,22.708,22.702,22.694,22.684,22.672,22.659,22.645,22.629,
-22.612,22.593,22.575,22.555,22.535,22.515,22.495,22.475,22.455,22.436,22.417,22.400,22.383,22.368,22.353,22.341,
-22.330,22.320,22.313,22.307,22.303,22.301,22.301,22.303,22.307,22.313,22.320,22.329,22.340,22.352,22.366,22.381,
-22.397,22.414,22.431,22.449,22.468,22.487,22.506,22.525,22.543,22.561,22.578,22.595,22.610,22.624,22.637,22.649,
-22.659,23.067,23.075,23.081,23.085,23.088,23.088,23.086,23.082,23.076,23.068,23.059,23.048,23.035,23.021,23.007,
-22.991,22.975,22.959,22.942,22.926,22.910,22.895,22.881,22.868,22.856,22.846,22.838,22.832,22.829,22.827,22.829,
-22.833,22.839,22.849,22.861,22.876,22.893,22.914,22.937,22.962,22.990,23.020,23.052,23.085,23.121,23.157,23.195,
-23.234,23.273,23.312,23.351,23.390,23.428,23.466,23.502,23.537,23.571,23.602,23.631,23.659,23.683,23.705,23.724,
-23.741,23.754,23.765,23.772,23.777,23.778,23.776,23.771,23.763,23.753,23.739,23.723,23.705,23.684,23.661,23.636,
-23.609,23.580,23.550,23.519,23.486,23.452,23.418,23.382,23.347,23.310,23.274,23.237,23.200,23.163,23.127,23.090,
-23.053,23.017,22.981,22.945,22.910,22.875,22.839,22.804,22.770,22.735,22.700,22.665,22.630,22.595,22.560,22.524,
-22.488,22.452,22.415,22.378,22.340,22.301,22.262,22.223,22.183,22.142,22.100,22.058,22.016,21.973,21.929,21.885,
-21.841,21.796,21.751,21.706,21.661,21.615,21.570,21.525,21.480,21.435,21.390,21.346,21.302,21.258,21.215,21.172,
-21.130,21.088,21.047,21.007,20.967,20.927,20.888,20.849,20.811,20.773,20.736,20.698,20.661,20.625,20.588,20.551,
-20.514,20.477,20.440,20.402,20.365,20.327,20.288,20.249,20.209,20.169,20.128,20.087,20.045,20.002,19.958,19.914,
-19.869,19.823,19.776,19.729,19.681,19.633,19.584,19.534,19.484,19.434,19.383,19.332,19.280,19.229,19.177,19.125,
-19.073,19.022,18.970,18.919,18.868,18.817,18.766,18.716,18.666,18.617,18.568,18.520,18.472,18.425,18.379,18.333,
-18.288,18.243,18.199,18.156,18.113,18.071,18.029,17.988,17.948,17.907,17.868,17.829,17.790,17.752,17.714,17.676,
-17.639,17.601,17.565,17.528,17.492,17.456,17.420,17.384,17.348,17.313,17.278,17.243,17.208,17.174,17.139,17.105,
-17.072,17.038,17.005,16.973,16.940,16.909,16.877,16.846,16.816,16.787,16.757,16.729,16.701,16.674,16.647,16.621,
-16.596,16.571,16.547,16.524,16.501,16.479,16.457,16.436,16.415,16.395,16.374,16.354,16.334,16.314,16.294,16.274,
-16.253,16.232,16.211,16.188,16.166,16.142,16.118,16.092,16.066,16.038,16.009,15.980,15.948,15.916,15.882,15.847,
-15.810,15.773,15.734,15.693,15.652,15.609,15.566,15.521,15.476,15.430,15.384,15.337,15.290,15.242,15.195,15.148,
-15.101,15.054,15.008,14.963,14.919,14.875,14.833,14.792,14.752,14.714,14.677,14.642,14.608,14.576,14.545,14.516,
-14.488,14.462,14.438,14.414,14.392,14.372,14.352,14.334,14.316,14.299,14.283,14.267,14.251,14.236,14.221,14.205,
-14.190,14.174,14.158,14.141,14.124,14.106,14.088,14.068,14.048,14.027,14.005,13.982,13.959,13.935,13.910,13.884,
-13.858,13.831,13.804,13.777,13.749,13.722,13.694,13.667,13.640,13.613,13.586,13.560,13.535,13.511,13.487,13.464,
-13.441,13.420,13.399,13.379,13.360,13.342,13.324,13.307,13.291,13.275,13.259,13.244,13.228,13.213,13.197,13.181,
-13.165,13.147,13.129,13.110,13.090,13.068,13.045,13.021,12.995,12.967,12.938,12.907,12.873,12.838,12.801,12.762,
-12.721,12.678,12.634,12.587,12.539,12.490,12.439,12.386,12.333,12.278,12.222,12.166,12.109,12.052,11.995,11.937,
-11.879,11.822,11.765,11.709,11.653,11.597,11.543,11.490,11.437,11.386,11.336,11.287,11.239,11.193,11.148,11.104,
-11.061,11.020,10.979,10.940,10.902,10.865,10.829,10.794,10.760,10.727,10.695,10.664,10.633,10.603,10.574,10.545,
-10.517,10.490,10.463,10.437,10.411,10.387,10.363,10.340,10.317,10.295,10.275,10.255,10.236,10.218,10.201,10.185,
-10.170,10.156,10.144,10.132,10.121,10.112,10.103,10.095,10.088,10.082,10.076,10.071,10.066,10.062,10.057,10.052,
-10.047,10.041,10.034,10.026,10.017,10.007,9.994,9.980,9.964,9.945,9.924,9.899,9.872,9.843,9.809,9.773,
-9.734,9.691,9.645,9.596,9.543,9.488,9.430,9.369,9.306,9.241,9.175,9.106,9.037,8.967,8.897,8.827,
-8.758,8.691,8.625,8.561,8.500,8.443,8.390,8.341,8.297,8.258,8.225,8.198,8.178,8.165,8.160,8.161,
-8.171,8.188,8.213,8.246,8.287,8.336,8.392,8.456,8.526,8.604,8.687,8.777,8.871,8.970,9.074,9.180,
-9.289,9.400,9.512,9.624,9.736,9.846,9.954,10.059,10.160,10.257,10.348,10.433,10.511,10.582,10.644,10.699,
-10.744,10.779,10.805,10.820,10.826,10.821,10.805,10.779,10.743,10.696,10.640,10.574,10.499,10.415,10.323,10.224,
-10.117,10.004,9.886,9.762,9.635,9.504,9.371,9.235,9.100,8.963,8.828,8.694,8.562,8.433,8.307,8.185,
-8.068,7.956,7.850,7.749,7.655,7.567,7.486,7.412,7.344,7.283,7.229,7.181,7.140,7.105,7.076,7.053,
-7.035,7.021,7.012,7.007,7.004,7.005,7.009,7.014,7.020,7.027,7.035,7.043,7.050,7.056,7.061,7.064,
-7.066,7.065,7.063,7.057,7.050,7.039,7.026,7.011,6.993,6.973,6.951,6.926,6.900,6.873,6.845,6.816,
-6.787,6.757,6.729,6.701,6.674,6.649,6.625,6.605,6.587,6.571,6.560,6.552,6.548,6.548,6.552,6.561,
-6.574,6.592,6.615,6.642,6.674,6.711,6.751,6.796,6.845,6.897,6.953,7.012,7.073,7.137,7.203,7.271,
-7.340,7.409,7.479,7.549,7.619,7.688,7.756,7.822,7.887,7.949,8.009,8.067,8.121,8.172,8.220,8.265,
-8.306,8.343,8.377,8.407,8.434,8.457,8.476,8.493,8.506,8.516,8.524,8.529,8.532,8.533,8.532,8.530,
-8.526,8.522,8.517,8.512,8.507,8.502,8.498,8.494,8.492,8.491,8.491,8.493,8.497,8.503,8.511,8.521,
-8.533,8.548,8.565,8.585,8.607,8.631,8.658,8.686,8.717,8.750,8.785,8.821,8.859,8.898,8.939,8.981,
-9.024,9.067,9.111,9.155,9.200,9.244,9.289,9.333,9.376,9.419,9.462,9.503,9.543,9.582,9.620,9.656,
-9.691,9.725,9.756,9.787,9.815,9.842,9.867,9.891,9.912,9.932,9.950,9.967,9.982,9.995,10.007,10.017,
-10.026,10.033,10.039,10.044,10.047,10.049,10.050,10.050,10.049,10.047,10.044,10.041,10.037,10.032,10.026,10.020,
-10.014,10.007,10.000,9.992,9.985,9.977,9.969,9.961,9.953,9.946,9.938,9.930,9.923,9.916,9.910,9.904,
-9.898,9.893,9.889,9.885,9.882,9.879,9.877,9.877,9.876,9.877,9.879,9.882,9.885,9.890,9.896,9.903,
-9.911,9.920,9.930,9.941,9.954,9.968,9.983,9.999,10.017,10.035,10.055,10.076,10.099,10.122,10.147,10.173,
-10.200,10.228,10.258,10.288,10.320,10.352,10.386,10.420,10.455,10.492,10.529,10.567,10.605,10.645,10.685,10.726,
-10.767,10.809,10.851,10.893,10.936,10.980,11.023,11.067,11.111,11.155,11.200,11.244,11.288,11.332,11.376,11.420,
-11.464,11.508,11.551,11.594,11.637,11.679,11.721,11.763,11.805,11.846,11.886,11.927,11.966,12.006,12.045,12.084,
-12.123,12.161,12.199,12.236,12.274,12.311,12.348,12.384,12.421,12.457,12.493,12.529,12.565,12.601,12.637,12.673,
-12.709,12.744,12.780,12.815,12.850,12.886,12.921,12.956,12.990,13.025,13.059,13.092,13.126,13.159,13.191,13.222,
-13.253,13.284,13.313,13.341,13.369,13.395,13.420,13.444,13.467,13.488,13.508,13.526,13.543,13.559,13.573,13.585,
-13.596,13.605,13.613,13.619,13.623,13.626,13.628,13.628,13.628,13.625,13.622,13.618,13.613,13.607,13.601,13.594,
-13.587,13.579,13.572,13.565,13.557,13.550,13.544,13.538,13.533,13.529,13.526,13.524,13.523,13.523,13.525,13.528,
-13.533,13.539,13.546,13.555,13.566,13.578,13.592,13.607,13.624,13.642,13.661,13.682,13.704,13.726,13.750,13.775,
-13.801,13.827,13.854,13.882,13.909,13.938,13.966,13.995,14.023,14.052,14.081,14.109,14.137,14.165,14.193,14.221,
-14.248,14.275,14.301,14.327,14.353,14.379,14.404,14.429,14.454,14.479,14.504,14.528,14.553,14.578,14.603,14.628,
-14.653,14.679,14.705,14.732,14.759,14.786,14.814,14.843,14.872,14.902,14.932,14.963,14.995,15.027,15.060,15.094,
-15.128,15.162,15.197,15.233,15.269,15.305,15.341,15.378,15.415,15.452,15.489,15.526,15.562,15.599,15.635,15.671,
-15.707,15.742,15.777,15.811,15.845,15.877,15.910,15.941,15.971,16.001,16.030,16.057,16.084,16.110,16.135,16.159,
-16.181,16.203,16.224,16.243,16.262,16.279,16.295,16.310,16.325,16.338,16.350,16.361,16.371,16.380,16.388,16.395,
-16.401,16.406,16.411,16.415,16.417,16.420,16.421,16.422,16.423,16.423,16.422,16.421,16.420,16.419,16.417,16.416,
-16.414,16.413,16.412,16.411,16.411,16.411,16.412,16.414,16.416,16.420,16.424,16.430,16.437,16.445,16.455,16.467,
-16.480,16.495,16.511,16.530,16.551,16.574,16.599,16.626,16.655,16.686,16.720,16.756,16.794,16.835,16.878,16.922,
-16.969,17.018,17.069,17.122,17.177,17.233,17.291,17.350,17.411,17.473,17.536,17.599,17.664,17.729,17.795,17.860,
-17.927,17.993,18.059,18.124,18.190,18.255,18.319,18.383,18.447,18.509,18.571,18.632,18.692,18.751,18.810,18.867,
-18.925,18.981,19.038,19.093,19.149,19.204,19.260,19.316,19.372,19.429,19.486,19.545,19.605,19.666,19.728,19.792,
-19.858,19.926,19.996,20.068,20.143,20.220,20.300,20.382,20.466,20.553,20.642,20.734,20.828,20.924,21.022,21.121,
-21.222,21.325,21.427,21.531,21.635,21.738,21.841,21.942,22.043,22.141,22.237,22.330,22.420,22.506,22.588,22.665,
-22.738,22.804,22.865,22.920,22.968,23.010,23.044,23.071,23.091,23.103,23.107,23.103,23.092,23.073,23.047,23.013,
-22.972,22.924,22.869,22.808,22.740,22.667,22.589,22.506,22.419,22.329,22.235,22.138,22.040,21.939,21.839,21.737,
-21.636,21.536,21.437,21.339,21.245,21.152,21.064,20.978,20.897,20.820,20.748,20.680,20.618,20.561,20.509,20.463,
-20.423,20.388,20.358,20.334,20.316,20.303,20.294,20.291,20.293,20.298,20.309,20.323,20.340,20.362,20.386,20.413,
-20.443,20.474,20.508,20.544,20.581,20.619,20.658,20.698,20.738,20.779,20.820,20.860,20.901,20.941,20.981,21.021,
-21.060,21.098,21.135,21.172,21.209,21.244,21.279,21.313,21.346,21.379,21.410,21.441,21.472,21.501,21.530,21.559,
-21.586,21.613,21.639,21.664,21.689,21.712,21.735,21.757,21.778,21.798,21.817,21.835,21.851,21.867,21.882,21.895,
-21.907,21.918,21.928,21.937,21.944,21.951,21.956,21.960,21.963,21.966,21.968,21.969,21.969,21.969,21.969,21.969,
-21.969,21.969,21.970,21.971,21.973,21.976,21.981,21.987,21.994,22.004,22.015,22.029,22.045,22.063,22.084,22.108,
-22.134,22.163,22.196,22.231,22.268,22.309,22.353,22.399,22.447,22.499,22.552,22.608,22.665,22.724,22.785,22.846,
-22.909,22.972,23.035,23.098,23.161,23.223,23.284,23.344,23.401,23.457,23.510,23.561,23.609,23.653,23.694,23.731,
-23.764,23.794,23.818,23.839,23.855,23.867,23.873,23.876,23.874,23.867,23.856,23.841,23.822,23.799,23.773,23.743,
-23.710,23.674,23.635,23.595,23.552,23.508,23.463,23.417,23.371,23.324,23.278,23.233,23.188,23.145,23.103,23.063,
-23.025,22.989,22.956,22.926,22.899,22.874,22.853,22.835,22.820,22.809,22.800,22.795,22.792,22.793,22.796,22.802,
-22.810,22.820,22.832,22.846,22.861,22.878,22.895,22.913,22.931,22.949,22.967,22.985,23.001,23.017,23.032,23.045,
-23.057,23.067,23.612,23.630,23.645,23.658,23.669,23.677,23.682,23.685,23.686,23.684,23.680,23.673,23.665,23.655,
-23.644,23.631,23.618,23.604,23.589,23.575,23.560,23.546,23.533,23.521,23.511,23.502,23.495,23.491,23.488,23.488,
-23.491,23.496,23.505,23.516,23.530,23.547,23.567,23.590,23.615,23.643,23.673,23.705,23.739,23.775,23.812,23.850,
-23.889,23.928,23.968,24.007,24.046,24.084,24.121,24.156,24.190,24.222,24.251,24.278,24.303,24.324,24.343,24.358,
-24.370,24.379,24.385,24.387,24.386,24.381,24.374,24.363,24.349,24.332,24.313,24.291,24.266,24.240,24.211,24.181,
-24.149,24.116,24.082,24.047,24.011,23.975,23.938,23.901,23.865,23.828,23.792,23.756,23.720,23.685,23.650,23.616,
-23.583,23.549,23.517,23.485,23.453,23.421,23.389,23.358,23.326,23.294,23.262,23.230,23.196,23.163,23.128,23.092,
-23.056,23.018,22.979,22.939,22.898,22.855,22.811,22.765,22.719,22.671,22.621,22.571,22.519,22.466,22.413,22.358,
-22.303,22.247,22.190,22.133,22.076,22.018,21.961,21.903,21.846,21.789,21.733,21.677,21.621,21.566,21.512,21.459,
-21.406,21.354,21.303,21.252,21.202,21.153,21.105,21.057,21.010,20.963,20.916,20.870,20.824,20.778,20.732,20.685,
-20.639,20.593,20.546,20.498,20.450,20.401,20.352,20.302,20.251,20.200,20.148,20.094,20.040,19.986,19.930,19.874,
-19.817,19.759,19.701,19.642,19.582,19.522,19.462,19.402,19.341,19.281,19.220,19.160,19.100,19.040,18.980,18.921,
-18.862,18.804,18.747,18.690,18.634,18.579,18.524,18.471,18.418,18.366,18.315,18.265,18.216,18.168,18.120,18.073,
-18.027,17.982,17.938,17.894,17.851,17.808,17.766,17.724,17.682,17.641,17.600,17.560,17.519,17.479,17.438,17.398,
-17.358,17.317,17.277,17.236,17.195,17.154,17.112,17.071,17.029,16.987,16.944,16.902,16.859,16.816,16.773,16.731,
-16.688,16.645,16.602,16.559,16.517,16.475,16.434,16.393,16.352,16.312,16.273,16.235,16.198,16.162,16.127,16.093,
-16.060,16.028,15.998,15.969,15.941,15.915,15.889,15.866,15.843,15.822,15.802,15.783,15.765,15.748,15.732,15.717,
-15.702,15.687,15.673,15.659,15.645,15.631,15.617,15.602,15.586,15.570,15.552,15.534,15.514,15.493,15.470,15.446,
-15.421,15.394,15.365,15.334,15.301,15.267,15.231,15.194,15.155,15.114,15.072,15.029,14.985,14.940,14.894,14.847,
-14.800,14.753,14.706,14.659,14.612,14.566,14.520,14.476,14.432,14.389,14.348,14.309,14.270,14.234,14.199,14.165,
-14.133,14.103,14.075,14.048,14.023,13.999,13.976,13.955,13.934,13.915,13.896,13.878,13.861,13.843,13.826,13.809,
-13.792,13.774,13.756,13.737,13.717,13.697,13.676,13.654,13.631,13.607,13.582,13.556,13.530,13.502,13.474,13.446,
-13.417,13.388,13.358,13.329,13.299,13.271,13.242,13.215,13.188,13.162,13.138,13.115,13.093,13.073,13.054,13.037,
-13.022,13.009,12.997,12.987,12.979,12.973,12.967,12.963,12.960,12.958,12.957,12.957,12.956,12.956,12.955,12.954,
-12.953,12.950,12.946,12.940,12.933,12.923,12.912,12.898,12.881,12.862,12.840,12.815,12.786,12.755,12.721,12.684,
-12.643,12.600,12.554,12.506,12.455,12.401,12.346,12.289,12.230,12.170,12.109,12.047,11.984,11.922,11.859,11.797,
-11.735,11.674,11.614,11.555,11.498,11.443,11.389,11.337,11.287,11.239,11.193,11.149,11.108,11.068,11.030,10.994,
-10.960,10.927,10.896,10.866,10.837,10.809,10.782,10.755,10.729,10.703,10.676,10.650,10.623,10.596,10.568,10.540,
-10.511,10.480,10.450,10.418,10.385,10.351,10.317,10.282,10.247,10.211,10.174,10.138,10.102,10.066,10.030,9.995,
-9.961,9.928,9.897,9.866,9.838,9.811,9.786,9.763,9.743,9.725,9.709,9.695,9.684,9.675,9.668,9.663,
-9.660,9.659,9.659,9.661,9.664,9.667,9.671,9.675,9.678,9.681,9.683,9.684,9.682,9.679,9.673,9.664,
-9.652,9.636,9.617,9.594,9.566,9.535,9.499,9.458,9.413,9.364,9.310,9.252,9.190,9.125,9.056,8.984,
-8.910,8.834,8.756,8.677,8.597,8.518,8.440,8.363,8.288,8.216,8.147,8.083,8.023,7.969,7.921,7.879,
-7.844,7.817,7.798,7.787,7.784,7.790,7.805,7.829,7.862,7.904,7.954,8.013,8.079,8.153,8.235,8.323,
-8.417,8.516,8.620,8.727,8.837,8.949,9.063,9.176,9.289,9.400,9.508,9.612,9.712,9.807,9.895,9.976,
-10.050,10.115,10.171,10.217,10.254,10.279,10.295,10.299,10.292,10.274,10.245,10.205,10.154,10.094,10.023,9.943,
-9.854,9.757,9.653,9.542,9.425,9.302,9.176,9.046,8.914,8.780,8.645,8.511,8.377,8.246,8.117,7.991,
-7.870,7.753,7.642,7.536,7.437,7.344,7.259,7.180,7.108,7.044,6.987,6.938,6.895,6.859,6.830,6.806,
-6.789,6.777,6.769,6.766,6.766,6.770,6.776,6.784,6.794,6.804,6.815,6.825,6.834,6.842,6.849,6.853,
-6.855,6.854,6.851,6.844,6.834,6.820,6.803,6.783,6.760,6.734,6.706,6.675,6.641,6.606,6.570,6.533,
-6.495,6.457,6.419,6.383,6.348,6.315,6.284,6.256,6.231,6.210,6.193,6.180,6.172,6.169,6.171,6.178,
-6.191,6.209,6.232,6.261,6.296,6.335,6.380,6.429,6.482,6.540,6.602,6.667,6.735,6.806,6.878,6.953,
-7.028,7.105,7.181,7.257,7.333,7.407,7.480,7.551,7.619,7.685,7.748,7.807,7.864,7.916,7.964,8.009,
-8.050,8.086,8.118,8.147,8.172,8.192,8.210,8.223,8.234,8.242,8.247,8.249,8.250,8.248,8.246,8.242,
-8.237,8.232,8.227,8.222,8.217,8.214,8.211,8.209,8.209,8.211,8.215,8.220,8.228,8.238,8.251,8.265,
-8.283,8.302,8.325,8.349,8.376,8.405,8.436,8.469,8.503,8.540,8.578,8.617,8.658,8.699,8.741,8.784,
-8.828,8.871,8.915,8.959,9.002,9.046,9.088,9.130,9.172,9.212,9.252,9.291,9.328,9.365,9.400,9.434,
-9.467,9.498,9.529,9.558,9.585,9.612,9.637,9.661,9.684,9.706,9.727,9.747,9.765,9.783,9.800,9.815,
-9.830,9.844,9.858,9.870,9.882,9.893,9.904,9.914,9.923,9.931,9.940,9.947,9.954,9.961,9.967,9.973,
-9.978,9.983,9.987,9.992,9.996,9.999,10.003,10.006,10.010,10.013,10.016,10.019,10.022,10.025,10.028,10.031,
-10.035,10.038,10.042,10.046,10.051,10.056,10.061,10.066,10.072,10.079,10.086,10.093,10.101,10.109,10.118,10.127,
-10.137,10.147,10.158,10.169,10.181,10.193,10.205,10.217,10.230,10.244,10.257,10.271,10.285,10.299,10.314,10.328,
-10.343,10.358,10.373,10.388,10.404,10.419,10.435,10.451,10.467,10.484,10.500,10.517,10.534,10.552,10.570,10.589,
-10.608,10.627,10.647,10.668,10.690,10.712,10.735,10.759,10.784,10.809,10.836,10.864,10.892,10.922,10.952,10.984,
-11.017,11.050,11.085,11.120,11.157,11.194,11.233,11.272,11.312,11.353,11.394,11.436,11.478,11.521,11.565,11.608,
-11.652,11.696,11.740,11.785,11.829,11.873,11.917,11.961,12.004,12.047,12.090,12.132,12.174,12.215,12.256,12.296,
-12.335,12.374,12.412,12.449,12.486,12.522,12.558,12.592,12.626,12.659,12.691,12.723,12.754,12.783,12.813,12.841,
-12.868,12.895,12.920,12.945,12.969,12.992,13.013,13.034,13.054,13.073,13.091,13.107,13.123,13.137,13.150,13.162,
-13.174,13.184,13.192,13.200,13.207,13.213,13.218,13.222,13.225,13.227,13.229,13.230,13.230,13.231,13.230,13.230,
-13.230,13.229,13.229,13.229,13.229,13.230,13.231,13.233,13.236,13.239,13.244,13.249,13.256,13.264,13.273,13.283,
-13.294,13.307,13.321,13.336,13.352,13.370,13.388,13.408,13.428,13.450,13.472,13.495,13.519,13.543,13.567,13.592,
-13.617,13.642,13.667,13.692,13.717,13.741,13.765,13.789,13.812,13.835,13.857,13.879,13.900,13.921,13.941,13.960,
-13.979,13.998,14.016,14.034,14.052,14.070,14.088,14.106,14.124,14.142,14.161,14.181,14.201,14.222,14.244,14.267,
-14.291,14.316,14.342,14.370,14.399,14.429,14.461,14.494,14.529,14.565,14.603,14.641,14.682,14.723,14.766,14.810,
-14.855,14.901,14.948,14.996,15.044,15.093,15.142,15.192,15.242,15.291,15.341,15.391,15.440,15.489,15.537,15.584,
-15.631,15.677,15.722,15.766,15.809,15.850,15.891,15.930,15.967,16.004,16.038,16.072,16.103,16.134,16.162,16.189,
-16.215,16.239,16.261,16.282,16.302,16.320,16.336,16.352,16.365,16.378,16.389,16.399,16.408,16.415,16.422,16.427,
-16.432,16.435,16.438,16.440,16.441,16.441,16.441,16.440,16.439,16.438,16.436,16.433,16.431,16.428,16.426,16.424,
-16.421,16.419,16.418,16.416,16.416,16.415,16.416,16.417,16.420,16.423,16.427,16.433,16.439,16.448,16.457,16.469,
-16.482,16.496,16.513,16.531,16.552,16.574,16.599,16.626,16.655,16.687,16.721,16.758,16.797,16.838,16.882,16.929,
-16.978,17.029,17.083,17.140,17.199,17.260,17.323,17.389,17.457,17.526,17.598,17.671,17.746,17.822,17.900,17.979,
-18.059,18.139,18.221,18.302,18.384,18.466,18.549,18.631,18.712,18.793,18.874,18.953,19.032,19.109,19.186,19.261,
-19.335,19.407,19.479,19.548,19.617,19.684,19.749,19.814,19.877,19.939,20.000,20.061,20.120,20.179,20.237,20.296,
-20.354,20.412,20.471,20.530,20.589,20.649,20.711,20.773,20.837,20.901,20.967,21.035,21.104,21.175,21.247,21.320,
-21.395,21.471,21.548,21.627,21.706,21.785,21.865,21.944,22.024,22.102,22.180,22.256,22.330,22.402,22.471,22.538,
-22.601,22.659,22.714,22.764,22.809,22.849,22.882,22.910,22.932,22.947,22.955,22.956,22.951,22.938,22.918,22.892,
-22.858,22.818,22.771,22.717,22.658,22.593,22.522,22.446,22.366,22.282,22.194,22.103,22.009,21.914,21.817,21.719,
-21.621,21.523,21.426,21.330,21.236,21.144,21.056,20.970,20.889,20.811,20.738,20.669,20.606,20.548,20.494,20.447,
-20.405,20.368,20.338,20.312,20.292,20.278,20.269,20.265,20.266,20.271,20.281,20.295,20.313,20.335,20.360,20.388,
-20.420,20.453,20.490,20.528,20.568,20.610,20.653,20.698,20.743,20.790,20.837,20.885,20.934,20.983,21.032,21.082,
-21.131,21.181,21.231,21.281,21.331,21.381,21.431,21.481,21.531,21.580,21.629,21.678,21.727,21.775,21.822,21.869,
-21.915,21.960,22.004,22.047,22.088,22.129,22.167,22.204,22.240,22.273,22.304,22.333,22.360,22.385,22.407,22.426,
-22.443,22.458,22.470,22.479,22.486,22.491,22.493,22.493,22.492,22.488,22.483,22.476,22.468,22.460,22.450,22.441,
-22.431,22.422,22.413,22.405,22.399,22.394,22.392,22.391,22.394,22.399,22.407,22.418,22.434,22.453,22.476,22.503,
-22.534,22.570,22.610,22.654,22.703,22.756,22.813,22.873,22.938,23.006,23.078,23.152,23.229,23.309,23.390,23.473,
-23.557,23.641,23.726,23.811,23.895,23.978,24.059,24.138,24.215,24.289,24.359,24.426,24.488,24.546,24.599,24.647,
-24.690,24.727,24.758,24.783,24.802,24.814,24.821,24.822,24.816,24.804,24.786,24.763,24.734,24.700,24.661,24.617,
-24.569,24.517,24.462,24.403,24.342,24.279,24.214,24.147,24.080,24.013,23.945,23.879,23.813,23.749,23.687,23.627,
-23.570,23.516,23.466,23.419,23.376,23.337,23.302,23.271,23.245,23.224,23.207,23.194,23.186,23.182,23.183,23.187,
-23.195,23.206,23.221,23.238,23.258,23.280,23.304,23.330,23.357,23.384,23.412,23.440,23.468,23.495,23.521,23.546,
-23.570,23.592,23.612,24.318,24.343,24.364,24.384,24.400,24.414,24.425,24.433,24.438,24.440,24.440,24.438,24.433,
-24.426,24.417,24.406,24.394,24.381,24.367,24.353,24.338,24.323,24.308,24.294,24.281,24.269,24.258,24.249,24.242,
-24.236,24.232,24.231,24.232,24.234,24.240,24.247,24.257,24.268,24.282,24.297,24.315,24.333,24.353,24.374,24.396,
-24.418,24.441,24.463,24.485,24.507,24.528,24.548,24.566,24.583,24.598,24.611,24.622,24.631,24.637,24.641,24.642,
-24.640,24.636,24.629,24.620,24.607,24.593,24.576,24.557,24.536,24.513,24.488,24.462,24.435,24.407,24.377,24.348,
-24.317,24.287,24.257,24.226,24.196,24.167,24.138,24.110,24.083,24.057,24.031,24.007,23.983,23.960,23.938,23.916,
-23.896,23.875,23.855,23.835,23.814,23.793,23.772,23.750,23.727,23.703,23.678,23.650,23.622,23.591,23.558,23.522,
-23.484,23.444,23.401,23.356,23.307,23.257,23.203,23.147,23.088,23.027,22.963,22.898,22.830,22.761,22.690,22.617,
-22.544,22.469,22.394,22.318,22.243,22.167,22.092,22.017,21.942,21.869,21.797,21.726,21.656,21.588,21.521,21.456,
-21.393,21.331,21.271,21.212,21.156,21.100,21.047,20.994,20.943,20.893,20.844,20.796,20.748,20.701,20.654,20.608,
-20.561,20.514,20.467,20.420,20.372,20.324,20.275,20.225,20.175,20.123,20.071,20.017,19.963,19.908,19.852,19.795,
-19.738,19.679,19.621,19.561,19.501,19.441,19.381,19.321,19.260,19.200,19.139,19.079,19.020,18.960,18.902,18.843,
-18.786,18.729,18.672,18.617,18.562,18.508,18.454,18.402,18.350,18.299,18.248,18.198,18.149,18.100,18.052,18.005,
-17.958,17.911,17.864,17.818,17.772,17.726,17.681,17.635,17.590,17.545,17.499,17.454,17.409,17.363,17.317,17.271,
-17.225,17.179,17.133,17.086,17.039,16.992,16.944,16.897,16.848,16.800,16.751,16.703,16.653,16.604,16.554,16.504,
-16.454,16.404,16.353,16.303,16.252,16.202,16.151,16.101,16.051,16.002,15.953,15.904,15.856,15.809,15.762,15.716,
-15.672,15.628,15.586,15.545,15.505,15.467,15.430,15.395,15.361,15.329,15.299,15.270,15.243,15.218,15.194,15.171,
-15.150,15.130,15.111,15.093,15.077,15.061,15.045,15.030,15.016,15.001,14.986,14.971,14.956,14.940,14.923,14.905,
-14.886,14.866,14.845,14.822,14.798,14.772,14.745,14.716,14.686,14.654,14.620,14.586,14.549,14.512,14.474,14.435,
-14.395,14.355,14.314,14.273,14.232,14.192,14.152,14.112,14.074,14.036,14.000,13.964,13.930,13.898,13.867,13.838,
-13.810,13.783,13.759,13.735,13.714,13.693,13.673,13.655,13.637,13.620,13.604,13.587,13.571,13.554,13.537,13.520,
-13.501,13.482,13.461,13.439,13.416,13.391,13.364,13.336,13.305,13.273,13.240,13.204,13.168,13.129,13.090,13.049,
-13.008,12.966,12.924,12.882,12.840,12.798,12.757,12.718,12.680,12.643,12.609,12.577,12.547,12.520,12.496,12.475,
-12.457,12.442,12.430,12.422,12.417,12.415,12.416,12.421,12.427,12.436,12.448,12.461,12.475,12.491,12.508,12.525,
-12.542,12.559,12.575,12.589,12.603,12.614,12.623,12.630,12.633,12.634,12.631,12.625,12.615,12.601,12.583,12.561,
-12.535,12.505,12.471,12.434,12.394,12.350,12.302,12.253,12.200,12.146,12.090,12.032,11.973,11.914,11.854,11.794,
-11.734,11.675,11.617,11.560,11.505,11.452,11.400,11.351,11.304,11.260,11.217,11.178,11.140,11.106,11.073,11.043,
-11.015,10.989,10.964,10.941,10.919,10.898,10.878,10.858,10.838,10.818,10.797,10.776,10.754,10.730,10.705,10.678,
-10.650,10.619,10.586,10.551,10.514,10.475,10.433,10.389,10.344,10.296,10.246,10.195,10.142,10.089,10.034,9.979,
-9.924,9.869,9.815,9.761,9.708,9.657,9.608,9.561,9.516,9.474,9.434,9.398,9.365,9.336,9.310,9.288,
-9.269,9.254,9.242,9.233,9.228,9.226,9.227,9.229,9.234,9.241,9.249,9.258,9.268,9.277,9.286,9.294,
-9.300,9.304,9.307,9.306,9.302,9.294,9.282,9.266,9.245,9.220,9.189,9.153,9.112,9.066,9.015,8.959,
-8.898,8.832,8.763,8.690,8.613,8.534,8.453,8.370,8.286,8.202,8.118,8.036,7.956,7.878,7.805,7.735,
-7.671,7.612,7.559,7.514,7.476,7.446,7.425,7.413,7.410,7.417,7.433,7.458,7.494,7.539,7.593,7.656,
-7.727,7.807,7.894,7.987,8.087,8.192,8.302,8.415,8.530,8.647,8.765,8.882,8.998,9.111,9.221,9.326,
-9.426,9.519,9.605,9.683,9.752,9.812,9.862,9.901,9.929,9.947,9.953,9.947,9.931,9.903,9.863,9.814,
-9.753,9.683,9.604,9.516,9.420,9.317,9.207,9.092,8.973,8.849,8.724,8.596,8.468,8.339,8.212,8.087,
-7.964,7.845,7.730,7.619,7.514,7.415,7.322,7.236,7.157,7.084,7.019,6.961,6.910,6.866,6.828,6.797,
-6.771,6.752,6.737,6.727,6.721,6.718,6.718,6.721,6.725,6.730,6.735,6.740,6.745,6.748,6.750,6.749,
-6.746,6.740,6.732,6.719,6.704,6.685,6.662,6.636,6.607,6.575,6.539,6.501,6.461,6.419,6.375,6.331,
-6.286,6.240,6.195,6.151,6.109,6.068,6.030,5.995,5.963,5.935,5.911,5.892,5.878,5.868,5.864,5.866,
-5.873,5.886,5.904,5.928,5.958,5.992,6.032,6.077,6.126,6.180,6.237,6.298,6.362,6.428,6.496,6.566,
-6.638,6.710,6.782,6.854,6.925,6.995,7.063,7.130,7.194,7.256,7.315,7.371,7.423,7.473,7.518,7.561,
-7.599,7.634,7.666,7.694,7.719,7.741,7.760,7.776,7.790,7.801,7.811,7.819,7.826,7.831,7.836,7.841,
-7.845,7.850,7.855,7.861,7.868,7.876,7.885,7.896,7.908,7.922,7.938,7.956,7.976,7.998,8.022,8.047,
-8.075,8.104,8.135,8.167,8.201,8.236,8.272,8.309,8.346,8.384,8.423,8.462,8.501,8.540,8.578,8.616,
-8.654,8.691,8.728,8.763,8.798,8.832,8.865,8.897,8.928,8.958,8.987,9.015,9.043,9.069,9.094,9.119,
-9.143,9.167,9.189,9.212,9.233,9.255,9.276,9.297,9.318,9.338,9.358,9.379,9.399,9.419,9.439,9.459,
-9.479,9.499,9.518,9.538,9.558,9.577,9.596,9.615,9.633,9.652,9.669,9.687,9.704,9.721,9.737,9.752,
-9.767,9.782,9.796,9.809,9.822,9.835,9.847,9.858,9.869,9.880,9.890,9.900,9.910,9.920,9.929,9.938,
-9.948,9.957,9.966,9.976,9.986,9.996,10.006,10.016,10.027,10.038,10.049,10.061,10.073,10.086,10.098,10.111,
-10.124,10.137,10.151,10.164,10.177,10.191,10.204,10.217,10.229,10.241,10.253,10.264,10.275,10.285,10.294,10.303,
-10.310,10.317,10.323,10.328,10.332,10.336,10.338,10.340,10.341,10.342,10.341,10.341,10.340,10.338,10.337,10.335,
-10.334,10.332,10.331,10.331,10.332,10.333,10.335,10.339,10.344,10.350,10.358,10.368,10.380,10.393,10.409,10.427,
-10.447,10.469,10.493,10.520,10.549,10.580,10.613,10.648,10.685,10.724,10.765,10.808,10.852,10.897,10.943,10.991,
-11.039,11.088,11.137,11.187,11.236,11.286,11.335,11.383,11.431,11.479,11.525,11.570,11.614,11.656,11.697,11.737,
-11.775,11.812,11.847,11.880,11.911,11.941,11.970,11.997,12.022,12.046,12.069,12.090,12.110,12.129,12.147,12.164,
-12.181,12.196,12.211,12.226,12.240,12.254,12.268,12.281,12.294,12.308,12.321,12.334,12.348,12.361,12.375,12.389,
-12.404,12.418,12.433,12.448,12.463,12.479,12.494,12.510,12.527,12.543,12.560,12.578,12.595,12.613,12.632,12.650,
-12.669,12.689,12.709,12.730,12.751,12.773,12.795,12.818,12.841,12.866,12.891,12.916,12.943,12.970,12.997,13.026,
-13.055,13.084,13.114,13.145,13.176,13.207,13.239,13.270,13.302,13.334,13.365,13.397,13.427,13.458,13.487,13.516,
-13.544,13.572,13.598,13.623,13.647,13.669,13.691,13.711,13.730,13.747,13.763,13.778,13.792,13.805,13.816,13.827,
-13.837,13.846,13.854,13.862,13.870,13.878,13.885,13.893,13.902,13.911,13.920,13.931,13.943,13.955,13.970,13.985,
-14.003,14.022,14.043,14.066,14.090,14.117,14.145,14.176,14.209,14.243,14.280,14.318,14.358,14.400,14.444,14.489,
-14.535,14.583,14.632,14.682,14.732,14.784,14.836,14.888,14.941,14.994,15.047,15.100,15.152,15.205,15.256,15.307,
-15.358,15.408,15.457,15.505,15.551,15.597,15.642,15.685,15.727,15.768,15.807,15.845,15.882,15.917,15.951,15.983,
-16.014,16.043,16.070,16.097,16.121,16.144,16.166,16.186,16.205,16.222,16.238,16.253,16.266,16.278,16.289,16.299,
-16.308,16.315,16.322,16.328,16.333,16.338,16.342,16.345,16.348,16.351,16.354,16.356,16.359,16.362,16.365,16.368,
-16.373,16.377,16.383,16.389,16.396,16.404,16.413,16.423,16.435,16.448,16.462,16.478,16.495,16.513,16.534,16.555,
-16.579,16.604,16.631,16.659,16.689,16.721,16.754,16.790,16.827,16.865,16.905,16.947,16.991,17.036,17.083,17.132,
-17.182,17.234,17.288,17.343,17.400,17.458,17.518,17.579,17.642,17.707,17.773,17.840,17.909,17.979,18.051,18.123,
-18.197,18.272,18.348,18.425,18.503,18.581,18.660,18.740,18.819,18.900,18.980,19.060,19.140,19.219,19.298,19.376,
-19.454,19.531,19.607,19.681,19.754,19.826,19.897,19.966,20.034,20.099,20.164,20.226,20.287,20.346,20.404,20.460,
-20.515,20.569,20.621,20.672,20.722,20.771,20.820,20.868,20.915,20.963,21.010,21.057,21.104,21.152,21.200,21.248,
-21.297,21.347,21.397,21.448,21.500,21.552,21.605,21.658,21.712,21.765,21.819,21.872,21.925,21.976,22.027,22.077,
-22.124,22.170,22.213,22.254,22.291,22.325,22.356,22.382,22.404,22.421,22.434,22.441,22.443,22.440,22.431,22.416,
-22.396,22.370,22.338,22.301,22.259,22.211,22.159,22.102,22.040,21.975,21.906,21.834,21.760,21.683,21.605,21.525,
-21.445,21.365,21.285,21.206,21.128,21.052,20.979,20.909,20.841,20.777,20.717,20.662,20.610,20.564,20.522,20.485,
-20.453,20.426,20.404,20.388,20.376,20.369,20.367,20.370,20.377,20.388,20.403,20.423,20.445,20.471,20.500,20.532,
-20.566,20.603,20.642,20.683,20.726,20.771,20.817,20.864,20.913,20.963,21.014,21.067,21.120,21.174,21.229,21.286,
-21.343,21.401,21.460,21.520,21.582,21.644,21.706,21.770,21.835,21.900,21.966,22.032,22.099,22.166,22.233,22.300,
-22.366,22.432,22.498,22.562,22.625,22.687,22.747,22.805,22.861,22.914,22.965,23.013,23.059,23.101,23.139,23.175,
-23.207,23.236,23.261,23.282,23.301,23.316,23.328,23.337,23.344,23.348,23.350,23.350,23.348,23.345,23.342,23.337,
-23.333,23.329,23.326,23.324,23.323,23.324,23.327,23.333,23.341,23.353,23.368,23.386,23.408,23.434,23.464,23.499,
-23.537,23.579,23.626,23.676,23.730,23.788,23.850,23.914,23.981,24.051,24.123,24.197,24.273,24.350,24.427,24.505,
-24.582,24.659,24.735,24.809,24.881,24.951,25.019,25.083,25.144,25.201,25.253,25.302,25.345,25.384,25.417,25.445,
-25.468,25.485,25.497,25.502,25.502,25.497,25.485,25.468,25.446,25.419,25.387,25.349,25.308,25.262,25.212,25.158,
-25.102,25.042,24.980,24.915,24.849,24.782,24.713,24.644,24.576,24.507,24.439,24.373,24.308,24.245,24.184,24.126,
-24.071,24.019,23.971,23.926,23.886,23.850,23.818,23.791,23.768,23.750,23.736,23.727,23.723,23.723,23.727,23.736,
-23.748,23.764,23.784,23.806,23.832,23.860,23.890,23.922,23.955,23.990,24.025,24.061,24.097,24.132,24.166,24.200,
-24.232,24.263,24.292,24.318,25.076,25.095,25.110,25.124,25.135,25.143,25.148,25.151,25.151,25.148,25.143,25.136,
-25.126,25.114,25.101,25.086,25.069,25.051,25.032,25.013,24.992,24.972,24.952,24.931,24.912,24.893,24.874,24.857,
-24.841,24.826,24.813,24.801,24.790,24.782,24.774,24.768,24.764,24.761,24.760,24.759,24.760,24.761,24.764,24.766,
-24.769,24.772,24.775,24.778,24.780,24.782,24.783,24.782,24.780,24.777,24.773,24.767,24.759,24.749,24.738,24.725,
-24.710,24.693,24.675,24.654,24.633,24.610,24.585,24.560,24.533,24.506,24.478,24.449,24.421,24.392,24.364,24.336,
-24.308,24.281,24.256,24.231,24.207,24.184,24.163,24.143,24.124,24.106,24.090,24.075,24.061,24.048,24.036,24.025,
-24.014,24.003,23.992,23.981,23.969,23.956,23.943,23.928,23.911,23.892,23.872,23.848,23.822,23.793,23.761,23.726,
-23.687,23.645,23.599,23.549,23.496,23.439,23.379,23.315,23.247,23.177,23.103,23.027,22.948,22.867,22.784,22.700,
-22.614,22.527,22.439,22.351,22.264,22.176,22.089,22.003,21.918,21.835,21.754,21.674,21.597,21.522,21.449,21.378,
-21.310,21.245,21.182,21.122,21.064,21.008,20.954,20.902,20.852,20.804,20.757,20.711,20.667,20.623,20.580,20.537,
-20.494,20.451,20.409,20.365,20.321,20.277,20.232,20.186,20.139,20.092,20.043,19.993,19.943,19.892,19.839,19.787,
-19.733,19.679,19.625,19.570,19.515,19.460,19.404,19.349,19.294,19.240,19.186,19.132,19.079,19.026,18.974,18.922,
-18.871,18.821,18.771,18.722,18.673,18.624,18.576,18.528,18.481,18.433,18.386,18.338,18.291,18.243,18.195,18.147,
-18.098,18.049,17.999,17.949,17.898,17.847,17.795,17.742,17.690,17.636,17.583,17.529,17.474,17.419,17.364,17.309,
-17.254,17.199,17.143,17.088,17.033,16.978,16.923,16.868,16.813,16.759,16.704,16.650,16.596,16.542,16.488,16.434,
-16.380,16.326,16.272,16.218,16.164,16.109,16.055,16.000,15.945,15.890,15.835,15.780,15.724,15.668,15.613,15.557,
-15.502,15.447,15.392,15.338,15.284,15.231,15.178,15.127,15.076,15.027,14.979,14.932,14.886,14.842,14.800,14.759,
-14.719,14.681,14.645,14.610,14.577,14.545,14.514,14.485,14.456,14.429,14.403,14.377,14.351,14.327,14.302,14.277,
-14.253,14.228,14.202,14.176,14.150,14.122,14.094,14.065,14.035,14.004,13.972,13.939,13.905,13.870,13.835,13.799,
-13.763,13.726,13.689,13.653,13.616,13.580,13.544,13.510,13.476,13.444,13.412,13.383,13.355,13.328,13.304,13.281,
-13.261,13.242,13.225,13.210,13.196,13.184,13.174,13.165,13.157,13.150,13.143,13.137,13.131,13.125,13.118,13.110,
-13.102,13.092,13.080,13.067,13.051,13.033,13.013,12.991,12.965,12.938,12.907,12.874,12.838,12.800,12.759,12.717,
-12.672,12.626,12.578,12.530,12.480,12.431,12.381,12.332,12.283,12.236,12.190,12.146,12.105,12.066,12.030,11.997,
-11.967,11.941,11.919,11.900,11.885,11.874,11.867,11.864,11.864,11.868,11.875,11.885,11.897,11.912,11.929,11.948,
-11.967,11.988,12.009,12.030,12.050,12.070,12.089,12.106,12.121,12.133,12.143,12.151,12.155,12.156,12.154,12.148,
-12.139,12.127,12.110,12.091,12.068,12.042,12.013,11.981,11.947,11.910,11.871,11.831,11.789,11.746,11.702,11.658,
-11.614,11.570,11.526,11.483,11.441,11.400,11.360,11.322,11.286,11.252,11.219,11.188,11.159,11.132,11.107,11.084,
-11.062,11.042,11.023,11.006,10.989,10.973,10.958,10.943,10.928,10.912,10.896,10.879,10.861,10.842,10.821,10.799,
-10.774,10.747,10.718,10.686,10.652,10.615,10.575,10.532,10.486,10.438,10.387,10.333,10.277,10.219,10.158,10.096,
-10.031,9.966,9.899,9.831,9.763,9.695,9.627,9.560,9.493,9.428,9.364,9.302,9.243,9.186,9.132,9.081,
-9.033,8.989,8.949,8.912,8.879,8.850,8.825,8.804,8.786,8.772,8.761,8.754,8.749,8.747,8.747,8.748,
-8.751,8.755,8.759,8.764,8.767,8.770,8.771,8.771,8.767,8.761,8.752,8.739,8.722,8.701,8.675,8.645,
-8.609,8.569,8.525,8.475,8.421,8.363,8.300,8.234,8.164,8.092,8.017,7.941,7.864,7.786,7.708,7.632,
-7.557,7.485,7.417,7.352,7.292,7.238,7.190,7.149,7.115,7.090,7.073,7.064,7.065,7.075,7.095,7.124,
-7.162,7.210,7.267,7.333,7.407,7.489,7.578,7.673,7.774,7.880,7.990,8.103,8.218,8.334,8.451,8.566,
-8.679,8.789,8.895,8.996,9.091,9.179,9.259,9.331,9.395,9.448,9.492,9.525,9.547,9.558,9.559,9.548,
-9.527,9.495,9.453,9.402,9.341,9.271,9.193,9.108,9.017,8.920,8.818,8.712,8.603,8.492,8.380,8.267,
-8.156,8.045,7.936,7.831,7.729,7.631,7.537,7.449,7.366,7.289,7.217,7.152,7.093,7.039,6.992,6.950,
-6.914,6.882,6.856,6.834,6.815,6.800,6.788,6.778,6.769,6.762,6.755,6.748,6.741,6.733,6.724,6.713,
-6.700,6.684,6.666,6.645,6.621,6.594,6.565,6.532,6.496,6.458,6.417,6.375,6.330,6.284,6.237,6.189,
-6.141,6.093,6.046,6.000,5.956,5.913,5.874,5.837,5.803,5.773,5.748,5.726,5.709,5.697,5.690,5.688,
-5.691,5.699,5.712,5.730,5.753,5.780,5.812,5.849,5.889,5.932,5.979,6.029,6.081,6.135,6.191,6.248,
-6.305,6.363,6.421,6.479,6.536,6.591,6.645,6.698,6.748,6.796,6.842,6.885,6.926,6.963,6.998,7.030,
-7.060,7.087,7.111,7.133,7.152,7.170,7.186,7.200,7.213,7.224,7.235,7.246,7.256,7.266,7.276,7.287,
-7.299,7.311,7.325,7.340,7.356,7.374,7.394,7.415,7.439,7.464,7.491,7.519,7.550,7.582,7.616,7.651,
-7.687,7.725,7.763,7.802,7.842,7.882,7.923,7.964,8.004,8.045,8.085,8.124,8.163,8.201,8.238,8.274,
-8.309,8.344,8.377,8.408,8.439,8.469,8.498,8.526,8.553,8.579,8.604,8.629,8.653,8.677,8.701,8.724,
-8.747,8.771,8.794,8.817,8.841,8.865,8.889,8.914,8.939,8.964,8.990,9.016,9.043,9.070,9.097,9.124,
-9.151,9.179,9.206,9.233,9.260,9.286,9.312,9.337,9.362,9.386,9.409,9.432,9.453,9.473,9.492,9.510,
-9.527,9.543,9.557,9.570,9.582,9.594,9.604,9.613,9.621,9.628,9.634,9.640,9.645,9.650,9.654,9.658,
-9.662,9.666,9.670,9.674,9.678,9.683,9.688,9.693,9.699,9.706,9.713,9.721,9.730,9.739,9.749,9.760,
-9.771,9.783,9.796,9.809,9.822,9.836,9.849,9.863,9.877,9.891,9.904,9.917,9.930,9.942,9.953,9.964,
-9.973,9.982,9.990,9.996,10.001,10.005,10.008,10.010,10.011,10.010,10.008,10.005,10.001,9.997,9.991,9.985,
-9.979,9.972,9.965,9.958,9.951,9.945,9.939,9.934,9.930,9.928,9.927,9.927,9.929,9.934,9.940,9.949,
-9.960,9.973,9.989,10.008,10.029,10.053,10.079,10.108,10.140,10.173,10.209,10.247,10.287,10.329,10.372,10.417,
-10.463,10.509,10.557,10.604,10.652,10.699,10.746,10.792,10.838,10.882,10.925,10.966,11.006,11.044,11.080,11.113,
-11.145,11.174,11.201,11.226,11.248,11.268,11.286,11.302,11.316,11.328,11.339,11.347,11.355,11.361,11.367,11.371,
-11.375,11.378,11.382,11.385,11.388,11.392,11.397,11.402,11.407,11.414,11.422,11.431,11.441,11.452,11.465,11.478,
-11.494,11.510,11.528,11.547,11.568,11.590,11.612,11.636,11.661,11.687,11.714,11.742,11.771,11.800,11.830,11.861,
-11.892,11.924,11.956,11.989,12.023,12.057,12.091,12.126,12.162,12.198,12.234,12.271,12.308,12.346,12.385,12.424,
-12.463,12.503,12.543,12.584,12.625,12.666,12.707,12.749,12.790,12.831,12.873,12.914,12.954,12.994,13.034,13.073,
-13.111,13.148,13.184,13.219,13.253,13.286,13.317,13.347,13.376,13.404,13.430,13.455,13.479,13.502,13.523,13.544,
-13.564,13.583,13.601,13.619,13.637,13.654,13.671,13.689,13.706,13.724,13.742,13.761,13.781,13.802,13.824,13.846,
-13.870,13.895,13.921,13.949,13.977,14.007,14.038,14.070,14.103,14.137,14.172,14.208,14.245,14.282,14.320,14.359,
-14.398,14.437,14.476,14.516,14.555,14.595,14.634,14.673,14.712,14.751,14.790,14.828,14.866,14.904,14.942,14.979,
-15.016,15.053,15.090,15.127,15.163,15.200,15.236,15.273,15.309,15.346,15.382,15.418,15.454,15.490,15.526,15.562,
-15.597,15.632,15.666,15.701,15.734,15.767,15.799,15.830,15.860,15.890,15.918,15.945,15.971,15.995,16.018,16.040,
-16.061,16.080,16.098,16.115,16.131,16.145,16.159,16.171,16.183,16.194,16.204,16.214,16.224,16.234,16.244,16.254,
-16.265,16.277,16.289,16.303,16.317,16.333,16.350,16.369,16.390,16.413,16.437,16.464,16.492,16.522,16.555,16.589,
-16.626,16.664,16.705,16.747,16.791,16.836,16.884,16.932,16.982,17.032,17.084,17.137,17.190,17.244,17.298,17.353,
-17.408,17.463,17.518,17.573,17.628,17.682,17.737,17.791,17.845,17.899,17.953,18.006,18.059,18.113,18.166,18.219,
-18.273,18.327,18.381,18.435,18.490,18.545,18.601,18.657,18.715,18.772,18.831,18.890,18.950,19.011,19.073,19.135,
-19.197,19.260,19.324,19.388,19.452,19.516,19.580,19.644,19.707,19.770,19.833,19.895,19.956,20.016,20.075,20.133,
-20.189,20.245,20.299,20.351,20.402,20.452,20.501,20.548,20.594,20.639,20.682,20.725,20.766,20.807,20.847,20.887,
-20.926,20.965,21.004,21.042,21.081,21.120,21.159,21.198,21.237,21.277,21.316,21.356,21.397,21.437,21.477,21.517,
-21.556,21.594,21.632,21.669,21.704,21.738,21.769,21.799,21.826,21.850,21.871,21.889,21.903,21.913,21.920,21.922,
-21.920,21.913,21.903,21.887,21.868,21.844,21.816,21.783,21.747,21.708,21.665,21.619,21.570,21.519,21.467,21.413,
-21.358,21.303,21.248,21.193,21.139,21.087,21.037,20.989,20.943,20.901,20.862,20.827,20.796,20.768,20.746,20.727,
-20.713,20.703,20.698,20.698,20.701,20.709,20.721,20.737,20.757,20.780,20.806,20.835,20.867,20.901,20.938,20.976,
-21.016,21.058,21.101,21.145,21.191,21.237,21.285,21.333,21.382,21.431,21.482,21.533,21.586,21.639,21.693,21.749,
-21.806,21.864,21.924,21.985,22.048,22.113,22.179,22.247,22.317,22.388,22.461,22.536,22.611,22.688,22.767,22.845,
-22.925,23.005,23.084,23.164,23.243,23.321,23.398,23.473,23.547,23.618,23.687,23.754,23.817,23.878,23.936,23.990,
-24.041,24.088,24.132,24.173,24.211,24.245,24.277,24.306,24.332,24.356,24.379,24.400,24.420,24.439,24.457,24.476,
-24.495,24.515,24.536,24.558,24.582,24.609,24.637,24.669,24.703,24.739,24.779,24.822,24.868,24.917,24.968,25.023,
-25.079,25.139,25.200,25.263,25.327,25.392,25.458,25.524,25.590,25.655,25.719,25.782,25.843,25.901,25.957,26.009,
-26.058,26.104,26.145,26.182,26.214,26.241,26.264,26.281,26.294,26.301,26.304,26.301,26.293,26.280,26.263,26.240,
-26.214,26.183,26.149,26.110,26.068,26.024,25.976,25.926,25.873,25.818,25.762,25.705,25.646,25.587,25.527,25.467,
-25.407,25.347,25.288,25.229,25.172,25.115,25.060,25.007,24.955,24.906,24.858,24.813,24.770,24.729,24.691,24.656,
-24.624,24.594,24.568,24.545,24.525,24.508,24.494,24.484,24.476,24.473,24.472,24.474,24.480,24.488,24.500,24.514,
-24.531,24.550,24.572,24.595,24.621,24.648,24.677,24.706,24.737,24.768,24.800,24.832,24.863,24.894,24.925,24.954,
-24.982,25.008,25.033,25.056,25.076,25.816,25.824,25.830,25.833,25.833,25.830,25.825,25.817,25.806,25.793,25.777,
-25.759,25.739,25.717,25.693,25.667,25.640,25.612,25.583,25.553,25.523,25.493,25.463,25.433,25.403,25.375,25.347,
-25.320,25.294,25.269,25.246,25.224,25.204,25.185,25.167,25.151,25.136,25.122,25.110,25.098,25.088,25.078,25.068,
-25.059,25.050,25.042,25.033,25.024,25.014,25.004,24.993,24.982,24.969,24.955,24.940,24.924,24.907,24.888,24.868,
-24.847,24.824,24.801,24.776,24.750,24.722,24.694,24.666,24.636,24.606,24.576,24.545,24.514,24.484,24.453,24.423,
-24.393,24.364,24.335,24.308,24.281,24.255,24.230,24.206,24.183,24.161,24.140,24.120,24.101,24.082,24.065,24.048,
-24.031,24.014,23.997,23.981,23.963,23.945,23.927,23.907,23.886,23.863,23.838,23.812,23.783,23.752,23.718,23.681,
-23.642,23.599,23.554,23.505,23.453,23.398,23.340,23.279,23.215,23.148,23.079,23.007,22.932,22.856,22.779,22.699,
-22.619,22.538,22.456,22.374,22.293,22.211,22.131,22.051,21.973,21.896,21.820,21.747,21.676,21.606,21.539,21.475,
-21.412,21.352,21.294,21.239,21.185,21.134,21.084,21.035,20.989,20.943,20.898,20.854,20.811,20.767,20.724,20.681,
-20.637,20.593,20.548,20.502,20.455,20.407,20.358,20.308,20.257,20.204,20.150,20.095,20.039,19.982,19.925,19.866,
-19.808,19.749,19.689,19.630,19.571,19.512,19.453,19.395,19.338,19.281,19.225,19.171,19.117,19.064,19.012,18.961,
-18.911,18.861,18.813,18.765,18.718,18.670,18.624,18.577,18.530,18.483,18.436,18.388,18.339,18.290,18.240,18.189,
-18.136,18.083,18.029,17.973,17.916,17.858,17.799,17.739,17.679,17.617,17.554,17.491,17.428,17.364,17.300,17.236,
-17.172,17.109,17.045,16.983,16.921,16.860,16.799,16.740,16.681,16.623,16.567,16.511,16.456,16.402,16.349,16.296,
-16.245,16.193,16.142,16.092,16.041,15.990,15.940,15.889,15.837,15.785,15.733,15.680,15.626,15.571,15.516,15.460,
-15.403,15.345,15.287,15.228,15.168,15.108,15.047,14.987,14.926,14.866,14.805,14.745,14.686,14.627,14.569,14.512,
-14.456,14.401,14.348,14.296,14.245,14.195,14.147,14.101,14.056,14.012,13.969,13.928,13.887,13.848,13.809,13.771,
-13.734,13.697,13.660,13.623,13.586,13.549,13.512,13.474,13.436,13.397,13.358,13.318,13.277,13.236,13.194,13.152,
-13.110,13.067,13.024,12.981,12.939,12.897,12.855,12.814,12.775,12.736,12.699,12.663,12.629,12.597,12.567,12.540,
-12.514,12.491,12.471,12.452,12.436,12.423,12.412,12.402,12.395,12.390,12.386,12.383,12.382,12.381,12.381,12.382,
-12.382,12.382,12.381,12.379,12.377,12.372,12.366,12.358,12.348,12.336,12.321,12.303,12.284,12.261,12.236,12.209,
-12.179,12.147,12.113,12.077,12.039,12.001,11.961,11.920,11.879,11.837,11.796,11.756,11.716,11.677,11.640,11.604,
-11.570,11.538,11.509,11.482,11.457,11.436,11.416,11.400,11.386,11.375,11.366,11.360,11.356,11.354,11.354,11.355,
-11.358,11.362,11.366,11.372,11.377,11.383,11.388,11.394,11.398,11.402,11.405,11.406,11.407,11.406,11.403,11.400,
-11.394,11.387,11.379,11.369,11.358,11.345,11.331,11.316,11.300,11.283,11.266,11.247,11.229,11.210,11.190,11.171,
-11.151,11.132,11.112,11.093,11.075,11.056,11.039,11.021,11.004,10.988,10.972,10.956,10.941,10.926,10.912,10.898,
-10.885,10.872,10.859,10.846,10.833,10.821,10.808,10.795,10.783,10.770,10.757,10.743,10.729,10.715,10.700,10.684,
-10.667,10.649,10.631,10.611,10.589,10.566,10.542,10.516,10.488,10.457,10.425,10.390,10.353,10.314,10.272,10.227,
-10.179,10.129,10.076,10.021,9.963,9.902,9.839,9.774,9.707,9.638,9.568,9.496,9.424,9.351,9.277,9.204,
-9.131,9.059,8.989,8.920,8.853,8.789,8.727,8.668,8.613,8.561,8.514,8.470,8.430,8.394,8.362,8.335,
-8.311,8.291,8.275,8.263,8.253,8.246,8.241,8.238,8.236,8.235,8.235,8.234,8.232,8.230,8.225,8.218,
-8.209,8.196,8.180,8.159,8.135,8.106,8.073,8.035,7.993,7.946,7.895,7.839,7.780,7.717,7.651,7.583,
-7.513,7.441,7.369,7.298,7.227,7.157,7.090,7.027,6.967,6.912,6.863,6.819,6.783,6.754,6.733,6.721,
-6.717,6.723,6.737,6.761,6.794,6.837,6.888,6.949,7.017,7.093,7.177,7.267,7.362,7.463,7.567,7.675,
-7.784,7.895,8.006,8.115,8.223,8.328,8.429,8.525,8.615,8.698,8.774,8.843,8.902,8.953,8.994,9.025,
-9.046,9.057,9.059,9.050,9.032,9.005,8.969,8.924,8.871,8.812,8.746,8.674,8.597,8.516,8.432,8.345,
-8.257,8.167,8.078,7.989,7.901,7.815,7.731,7.651,7.574,7.500,7.431,7.366,7.305,7.249,7.197,7.149,
-7.106,7.066,7.030,6.997,6.968,6.940,6.916,6.892,6.870,6.849,6.829,6.808,6.787,6.766,6.743,6.719,
-6.693,6.666,6.637,6.605,6.571,6.536,6.498,6.458,6.417,6.374,6.329,6.284,6.238,6.191,6.144,6.097,
-6.051,6.006,5.963,5.921,5.881,5.844,5.809,5.778,5.750,5.725,5.705,5.688,5.675,5.667,5.663,5.663,
-5.667,5.675,5.688,5.704,5.724,5.747,5.773,5.803,5.835,5.870,5.906,5.944,5.984,6.025,6.066,6.108,
-6.150,6.192,6.233,6.274,6.313,6.351,6.387,6.422,6.455,6.486,6.515,6.542,6.567,6.589,6.610,6.628,
-6.644,6.659,6.672,6.683,6.693,6.702,6.710,6.717,6.723,6.729,6.735,6.742,6.748,6.756,6.764,6.773,
-6.784,6.795,6.809,6.824,6.840,6.859,6.879,6.901,6.925,6.951,6.979,7.009,7.040,7.073,7.107,7.142,
-7.179,7.217,7.255,7.294,7.334,7.374,7.414,7.454,7.494,7.534,7.573,7.612,7.651,7.688,7.725,7.761,
-7.797,7.832,7.866,7.899,7.932,7.964,7.995,8.026,8.057,8.087,8.118,8.148,8.178,8.209,8.239,8.270,
-8.302,8.333,8.366,8.398,8.432,8.466,8.500,8.535,8.570,8.606,8.642,8.679,8.715,8.752,8.789,8.825,
-8.862,8.897,8.933,8.967,9.001,9.034,9.066,9.096,9.126,9.154,9.181,9.206,9.229,9.251,9.272,9.290,
-9.307,9.322,9.336,9.348,9.358,9.367,9.374,9.380,9.385,9.388,9.390,9.391,9.391,9.390,9.389,9.387,
-9.384,9.381,9.377,9.373,9.369,9.365,9.362,9.358,9.355,9.351,9.349,9.347,9.345,9.344,9.343,9.344,
-9.344,9.346,9.348,9.351,9.355,9.360,9.365,9.371,9.377,9.384,9.391,9.399,9.408,9.416,9.425,9.434,
-9.443,9.452,9.461,9.470,9.479,9.487,9.495,9.502,9.510,9.516,9.522,9.527,9.532,9.537,9.540,9.544,
-9.546,9.549,9.551,9.552,9.554,9.555,9.557,9.558,9.560,9.563,9.565,9.569,9.573,9.579,9.585,9.593,
-9.602,9.613,9.625,9.638,9.653,9.670,9.689,9.709,9.731,9.755,9.780,9.807,9.835,9.865,9.896,9.927,
-9.960,9.993,10.027,10.061,10.095,10.129,10.163,10.196,10.229,10.260,10.290,10.320,10.347,10.374,10.398,10.421,
-10.442,10.461,10.478,10.494,10.507,10.519,10.529,10.538,10.544,10.550,10.554,10.557,10.560,10.562,10.563,10.564,
-10.565,10.566,10.567,10.569,10.572,10.575,10.579,10.585,10.592,10.600,10.610,10.621,10.634,10.648,10.664,10.681,
-10.699,10.720,10.741,10.764,10.787,10.812,10.838,10.864,10.891,10.918,10.946,10.975,11.003,11.032,11.060,11.089,
-11.117,11.146,11.174,11.202,11.230,11.258,11.286,11.314,11.342,11.370,11.399,11.428,11.458,11.488,11.519,11.550,
-11.583,11.616,11.651,11.687,11.723,11.761,11.801,11.841,11.883,11.925,11.969,12.014,12.060,12.106,12.154,12.202,
-12.251,12.300,12.350,12.399,12.449,12.499,12.549,12.599,12.648,12.697,12.746,12.795,12.843,12.890,12.937,12.984,
-13.030,13.076,13.122,13.168,13.213,13.258,13.303,13.348,13.393,13.438,13.483,13.528,13.573,13.618,13.663,13.709,
-13.754,13.799,13.844,13.888,13.932,13.976,14.019,14.061,14.102,14.142,14.180,14.218,14.253,14.288,14.320,14.351,
-14.379,14.406,14.431,14.454,14.475,14.494,14.511,14.527,14.541,14.554,14.566,14.577,14.587,14.596,14.605,14.615,
-14.624,14.634,14.645,14.657,14.670,14.684,14.700,14.718,14.738,14.760,14.784,14.810,14.838,14.868,14.901,14.935,
-14.972,15.010,15.050,15.092,15.134,15.178,15.223,15.267,15.313,15.358,15.403,15.447,15.491,15.533,15.575,15.614,
-15.653,15.689,15.724,15.757,15.787,15.816,15.843,15.867,15.890,15.911,15.930,15.948,15.965,15.980,15.995,16.009,
-16.022,16.036,16.050,16.064,16.079,16.095,16.112,16.131,16.152,16.174,16.199,16.227,16.256,16.288,16.323,16.361,
-16.401,16.444,16.490,16.539,16.589,16.642,16.698,16.755,16.814,16.875,16.937,17.000,17.063,17.128,17.192,17.257,
-17.321,17.385,17.448,17.510,17.571,17.631,17.689,17.745,17.800,17.853,17.904,17.953,18.000,18.045,18.088,18.130,
-18.170,18.209,18.246,18.282,18.317,18.351,18.385,18.418,18.451,18.484,18.517,18.551,18.586,18.621,18.658,18.695,
-18.734,18.774,18.816,18.859,18.904,18.950,18.998,19.048,19.098,19.151,19.204,19.258,19.314,19.370,19.427,19.484,
-19.542,19.600,19.657,19.715,19.772,19.828,19.884,19.939,19.993,20.046,20.098,20.149,20.199,20.248,20.296,20.342,
-20.388,20.433,20.477,20.521,20.564,20.606,20.649,20.691,20.733,20.775,20.817,20.860,20.903,20.946,20.990,21.034,
-21.078,21.123,21.167,21.212,21.257,21.301,21.345,21.388,21.430,21.471,21.510,21.548,21.583,21.616,21.647,21.674,
-21.699,21.720,21.738,21.752,21.762,21.769,21.772,21.771,21.767,21.758,21.747,21.732,21.714,21.694,21.672,21.647,
-21.621,21.594,21.566,21.538,21.511,21.484,21.458,21.434,21.411,21.392,21.375,21.361,21.350,21.343,21.340,21.340,
-21.345,21.354,21.366,21.383,21.403,21.427,21.454,21.485,21.519,21.555,21.594,21.634,21.677,21.721,21.766,21.812,
-21.859,21.906,21.953,22.000,22.047,22.094,22.141,22.188,22.234,22.280,22.326,22.371,22.418,22.464,22.511,22.559,
-22.608,22.658,22.710,22.764,22.819,22.876,22.936,22.998,23.062,23.129,23.199,23.270,23.344,23.421,23.499,23.579,
-23.661,23.744,23.828,23.912,23.997,24.082,24.166,24.250,24.332,24.413,24.492,24.569,24.643,24.715,24.784,24.850,
-24.912,24.972,25.029,25.083,25.133,25.181,25.227,25.271,25.312,25.352,25.391,25.429,25.466,25.504,25.542,25.581,
-25.621,25.662,25.706,25.752,25.800,25.851,25.904,25.961,26.020,26.083,26.148,26.215,26.285,26.358,26.432,26.507,
-26.584,26.661,26.737,26.814,26.889,26.962,27.033,27.100,27.165,27.225,27.280,27.331,27.375,27.414,27.446,27.471,
-27.489,27.500,27.503,27.499,27.487,27.468,27.442,27.409,27.369,27.322,27.269,27.211,27.148,27.079,27.007,26.931,
-26.852,26.770,26.687,26.602,26.517,26.431,26.346,26.262,26.179,26.098,26.019,25.942,25.869,25.799,25.732,25.668,
-25.609,25.553,25.502,25.454,25.410,25.370,25.334,25.302,25.274,25.249,25.227,25.209,25.194,25.182,25.173,25.166,
-25.162,25.160,25.160,25.163,25.167,25.173,25.182,25.191,25.203,25.216,25.230,25.246,25.264,25.282,25.302,25.323,
-25.345,25.368,25.392,25.417,25.442,25.468,25.494,25.521,25.548,25.574,25.601,25.627,25.652,25.676,25.700,25.722,
-25.742,25.761,25.778,25.793,25.806,25.816,26.508,26.513,26.514,26.512,26.506,26.496,26.483,26.467,26.447,26.423,
-26.396,26.367,26.334,26.300,26.263,26.224,26.183,26.141,26.098,26.055,26.011,25.968,25.925,25.882,25.840,25.800,
-25.761,25.723,25.687,25.653,25.620,25.590,25.561,25.535,25.510,25.487,25.466,25.446,25.428,25.411,25.396,25.381,
-25.367,25.353,25.340,25.327,25.314,25.301,25.287,25.273,25.259,25.243,25.227,25.210,25.192,25.173,25.153,25.132,
-25.109,25.086,25.061,25.035,25.009,24.981,24.952,24.922,24.892,24.860,24.828,24.795,24.762,24.728,24.693,24.658,
-24.623,24.588,24.552,24.516,24.480,24.443,24.407,24.371,24.335,24.299,24.263,24.227,24.191,24.156,24.120,24.085,
-24.050,24.015,23.980,23.945,23.910,23.875,23.840,23.804,23.769,23.733,23.696,23.659,23.621,23.582,23.542,23.501,
-23.459,23.416,23.371,23.325,23.278,23.229,23.179,23.127,23.074,23.019,22.963,22.906,22.847,22.787,22.726,22.664,
-22.602,22.539,22.476,22.412,22.349,22.285,22.222,22.159,22.098,22.037,21.976,21.917,21.859,21.803,21.747,21.693,
-21.640,21.589,21.538,21.489,21.440,21.393,21.346,21.300,21.254,21.208,21.162,21.116,21.069,21.022,20.974,20.925,
-20.875,20.823,20.770,20.716,20.660,20.602,20.543,20.482,20.420,20.356,20.290,20.224,20.156,20.087,20.017,19.947,
-19.876,19.805,19.733,19.662,19.592,19.521,19.452,19.383,19.315,19.248,19.183,19.118,19.055,18.994,18.933,18.874,
-18.816,18.759,18.703,18.647,18.593,18.539,18.486,18.432,18.379,18.326,18.273,18.219,18.164,18.109,18.053,17.996,
-17.937,17.878,17.818,17.756,17.694,17.630,17.566,17.500,17.434,17.366,17.299,17.231,17.162,17.094,17.025,16.957,
-16.889,16.822,16.756,16.691,16.626,16.563,16.502,16.441,16.382,16.324,16.268,16.213,16.160,16.108,16.057,16.008,
-15.959,15.911,15.864,15.818,15.772,15.726,15.681,15.635,15.589,15.542,15.495,15.447,15.399,15.349,15.299,15.247,
-15.194,15.140,15.085,15.029,14.972,14.914,14.855,14.796,14.735,14.674,14.613,14.552,14.490,14.428,14.367,14.306,
-14.246,14.186,14.127,14.069,14.011,13.955,13.900,13.846,13.793,13.741,13.690,13.641,13.592,13.544,13.497,13.451,
-13.406,13.361,13.316,13.272,13.228,13.184,13.140,13.095,13.051,13.005,12.960,12.914,12.867,12.819,12.771,12.723,
-12.673,12.624,12.573,12.523,12.472,12.421,12.370,12.319,12.269,12.219,12.170,12.121,12.074,12.028,11.983,11.940,
-11.899,11.859,11.822,11.787,11.754,11.723,11.694,11.668,11.644,11.622,11.602,11.585,11.570,11.556,11.544,11.534,
-11.525,11.518,11.511,11.505,11.500,11.495,11.490,11.486,11.481,11.475,11.469,11.462,11.455,11.446,11.436,11.426,
-11.414,11.400,11.386,11.371,11.354,11.337,11.318,11.299,11.279,11.259,11.238,11.217,11.195,11.174,11.152,11.131,
-11.110,11.090,11.070,11.050,11.031,11.013,10.995,10.978,10.961,10.945,10.929,10.914,10.899,10.884,10.870,10.855,
-10.841,10.826,10.811,10.796,10.781,10.766,10.750,10.734,10.718,10.701,10.685,10.668,10.652,10.635,10.619,10.603,
-10.588,10.573,10.560,10.547,10.535,10.524,10.515,10.507,10.500,10.495,10.491,10.489,10.487,10.487,10.489,10.491,
-10.494,10.498,10.502,10.506,10.511,10.515,10.519,10.522,10.525,10.527,10.527,10.526,10.524,10.520,10.514,10.507,
-10.499,10.489,10.477,10.464,10.450,10.435,10.419,10.402,10.386,10.369,10.352,10.336,10.320,10.306,10.292,10.280,
-10.269,10.259,10.251,10.245,10.240,10.237,10.234,10.233,10.233,10.233,10.233,10.233,10.232,10.230,10.226,10.221,
-10.213,10.201,10.187,10.168,10.145,10.118,10.085,10.047,10.004,9.956,9.902,9.842,9.777,9.707,9.633,9.553,
-9.470,9.383,9.293,9.201,9.106,9.011,8.916,8.820,8.726,8.634,8.544,8.457,8.374,8.295,8.221,8.153,
-8.090,8.033,7.982,7.937,7.899,7.867,7.840,7.820,7.805,7.794,7.788,7.786,7.788,7.791,7.797,7.804,
-7.811,7.817,7.823,7.827,7.828,7.826,7.820,7.810,7.795,7.775,7.749,7.718,7.681,7.639,7.591,7.538,
-7.480,7.417,7.350,7.279,7.206,7.130,7.053,6.976,6.899,6.823,6.750,6.679,6.613,6.552,6.496,6.448,
-6.406,6.373,6.348,6.333,6.327,6.331,6.345,6.369,6.403,6.447,6.501,6.564,6.636,6.716,6.804,6.898,
-6.998,7.103,7.212,7.324,7.437,7.551,7.665,7.777,7.887,7.993,8.094,8.190,8.279,8.362,8.436,8.502,
-8.559,8.607,8.646,8.674,8.694,8.703,8.703,8.694,8.677,8.650,8.617,8.576,8.529,8.476,8.418,8.356,
-8.290,8.222,8.152,8.080,8.009,7.937,7.866,7.797,7.729,7.664,7.601,7.540,7.483,7.429,7.377,7.329,
-7.283,7.241,7.200,7.162,7.126,7.091,7.058,7.025,6.993,6.961,6.929,6.896,6.862,6.827,6.791,6.754,
-6.714,6.673,6.631,6.586,6.540,6.493,6.444,6.393,6.342,6.291,6.239,6.186,6.135,6.084,6.033,5.985,
-5.938,5.893,5.850,5.810,5.773,5.739,5.708,5.681,5.658,5.638,5.622,5.610,5.602,5.598,5.597,5.600,
-5.606,5.616,5.628,5.644,5.662,5.682,5.705,5.729,5.755,5.783,5.811,5.840,5.870,5.901,5.931,5.961,
-5.991,6.021,6.049,6.077,6.104,6.130,6.154,6.177,6.199,6.219,6.238,6.255,6.271,6.285,6.298,6.309,
-6.319,6.328,6.336,6.343,6.349,6.354,6.358,6.363,6.367,6.370,6.374,6.378,6.383,6.388,6.394,6.400,
-6.408,6.417,6.427,6.439,6.452,6.467,6.483,6.500,6.520,6.541,6.564,6.588,6.614,6.641,6.670,6.700,
-6.731,6.763,6.796,6.829,6.864,6.899,6.934,6.970,7.006,7.042,7.078,7.114,7.149,7.185,7.220,7.255,
-7.290,7.325,7.359,7.393,7.427,7.461,7.494,7.528,7.562,7.596,7.630,7.664,7.699,7.734,7.769,7.805,
-7.842,7.879,7.916,7.954,7.992,8.031,8.070,8.110,8.149,8.189,8.229,8.268,8.308,8.347,8.386,8.424,
-8.462,8.499,8.536,8.571,8.606,8.639,8.672,8.703,8.734,8.763,8.791,8.817,8.843,8.867,8.891,8.913,
-8.934,8.954,8.973,8.991,9.007,9.023,9.038,9.052,9.065,9.077,9.088,9.099,9.108,9.116,9.124,9.130,
-9.136,9.140,9.143,9.145,9.146,9.146,9.145,9.142,9.139,9.134,9.128,9.122,9.114,9.105,9.095,9.085,
-9.074,9.062,9.050,9.038,9.025,9.013,9.000,8.988,8.976,8.965,8.954,8.945,8.936,8.928,8.922,8.916,
-8.912,8.910,8.909,8.909,8.911,8.914,8.919,8.925,8.932,8.941,8.951,8.962,8.975,8.988,9.002,9.017,
-9.033,9.049,9.065,9.082,9.099,9.117,9.134,9.152,9.169,9.187,9.204,9.221,9.237,9.254,9.270,9.286,
-9.302,9.317,9.333,9.348,9.362,9.377,9.391,9.405,9.419,9.433,9.447,9.461,9.474,9.487,9.501,9.514,
-9.526,9.539,9.551,9.563,9.575,9.587,9.598,9.608,9.618,9.628,9.637,9.646,9.654,9.661,9.668,9.674,
-9.679,9.684,9.689,9.693,9.697,9.700,9.704,9.707,9.710,9.713,9.717,9.720,9.724,9.729,9.735,9.741,
-9.748,9.757,9.766,9.777,9.789,9.803,9.818,9.834,9.852,9.872,9.893,9.915,9.939,9.963,9.990,10.017,
-10.045,10.073,10.103,10.132,10.162,10.192,10.222,10.251,10.280,10.309,10.336,10.363,10.389,10.413,10.437,10.459,
-10.480,10.500,10.519,10.536,10.553,10.568,10.583,10.598,10.612,10.626,10.639,10.654,10.668,10.683,10.700,10.717,
-10.736,10.757,10.779,10.803,10.830,10.858,10.889,10.923,10.959,10.997,11.038,11.082,11.128,11.176,11.226,11.278,
-11.333,11.389,11.447,11.506,11.567,11.628,11.691,11.754,11.819,11.883,11.949,12.014,12.080,12.145,12.211,12.277,
-12.343,12.409,12.475,12.541,12.607,12.673,12.739,12.805,12.871,12.937,13.002,13.068,13.134,13.199,13.264,13.329,
-13.393,13.456,13.518,13.579,13.639,13.697,13.753,13.807,13.859,13.908,13.955,13.998,14.038,14.075,14.108,14.138,
-14.164,14.186,14.204,14.219,14.230,14.237,14.242,14.243,14.241,14.236,14.230,14.222,14.212,14.201,14.189,14.177,
-14.166,14.155,14.146,14.138,14.132,14.128,14.127,14.129,14.134,14.143,14.155,14.171,14.191,14.215,14.243,14.275,
-14.310,14.349,14.391,14.436,14.484,14.535,14.587,14.642,14.697,14.754,14.811,14.869,14.926,14.983,15.038,15.093,
-15.146,15.197,15.246,15.293,15.337,15.379,15.418,15.454,15.487,15.518,15.546,15.572,15.595,15.616,15.634,15.652,
-15.667,15.681,15.695,15.707,15.720,15.732,15.745,15.759,15.773,15.789,15.807,15.826,15.848,15.871,15.898,15.927,
-15.960,15.995,16.034,16.075,16.120,16.168,16.220,16.274,16.331,16.391,16.453,16.518,16.585,16.654,16.725,16.797,
-16.870,16.943,17.017,17.091,17.165,17.238,17.310,17.382,17.451,17.520,17.586,17.650,17.712,17.771,17.828,17.882,
-17.934,17.983,18.030,18.073,18.115,18.154,18.191,18.225,18.258,18.290,18.320,18.349,18.377,18.405,18.432,18.460,
-18.487,18.516,18.545,18.575,18.606,18.639,18.674,18.710,18.749,18.789,18.831,18.876,18.922,18.970,19.021,19.073,
-19.126,19.181,19.238,19.296,19.354,19.414,19.474,19.534,19.594,19.655,19.714,19.774,19.833,19.891,19.949,20.005,
-20.061,20.115,20.169,20.222,20.274,20.325,20.375,20.426,20.475,20.525,20.574,20.624,20.674,20.725,20.776,20.828,
-20.880,20.934,20.989,21.044,21.101,21.159,21.217,21.277,21.337,21.397,21.457,21.518,21.578,21.637,21.695,21.752,
-21.808,21.861,21.913,21.961,22.007,22.050,22.090,22.126,22.159,22.189,22.214,22.237,22.255,22.271,22.283,22.293,
-22.300,22.304,22.307,22.309,22.309,22.309,22.309,22.309,22.310,22.312,22.315,22.321,22.329,22.339,22.352,22.369,
-22.388,22.411,22.436,22.465,22.498,22.533,22.570,22.611,22.653,22.697,22.743,22.791,22.838,22.887,22.935,22.984,
-23.031,23.078,23.124,23.168,23.211,23.252,23.292,23.330,23.367,23.402,23.436,23.469,23.501,23.533,23.565,23.596,
-23.629,23.662,23.697,23.734,23.772,23.813,23.857,23.904,23.954,24.007,24.064,24.124,24.187,24.254,24.325,24.398,
-24.474,24.552,24.633,24.715,24.799,24.883,24.968,25.053,25.137,25.220,25.301,25.381,25.458,25.533,25.605,25.673,
-25.739,25.801,25.859,25.915,25.967,26.015,26.061,26.104,26.145,26.184,26.221,26.257,26.293,26.328,26.364,26.400,
-26.438,26.477,26.518,26.561,26.607,26.655,26.706,26.761,26.818,26.879,26.942,27.008,27.076,27.146,27.218,27.291,
-27.364,27.438,27.511,27.582,27.652,27.719,27.783,27.843,27.898,27.948,27.992,28.030,28.062,28.085,28.102,28.110,
-28.110,28.103,28.086,28.062,28.029,27.989,27.941,27.885,27.823,27.754,27.680,27.600,27.516,27.427,27.336,27.242,
-27.146,27.049,26.951,26.854,26.758,26.664,26.572,26.483,26.397,26.315,26.237,26.163,26.094,26.031,25.972,25.919,
-25.871,25.828,25.790,25.758,25.730,25.707,25.688,25.673,25.663,25.656,25.652,25.652,25.654,25.658,25.665,25.674,
-25.684,25.696,25.709,25.723,25.738,25.754,25.771,25.789,25.807,25.827,25.846,25.867,25.888,25.910,25.933,25.957,
-25.981,26.007,26.033,26.059,26.087,26.115,26.144,26.173,26.202,26.231,26.260,26.289,26.317,26.345,26.371,26.396,
-26.419,26.440,26.459,26.476,26.490,26.501,26.508,27.069,27.073,27.073,27.068,27.058,27.043,27.023,26.999,26.970,
-26.936,26.899,26.857,26.812,26.764,26.713,26.660,26.605,26.548,26.491,26.434,26.376,26.320,26.264,26.210,26.157,
-26.106,26.058,26.012,25.969,25.929,25.891,25.856,25.824,25.795,25.768,25.743,25.721,25.700,25.681,25.664,25.648,
-25.632,25.618,25.603,25.589,25.574,25.559,25.544,25.528,25.511,25.493,25.474,25.454,25.433,25.410,25.387,25.362,
-25.336,25.309,25.281,25.252,25.223,25.192,25.161,25.129,25.097,25.063,25.030,24.996,24.961,24.926,24.890,24.854,
-24.817,24.779,24.741,24.703,24.664,24.624,24.583,24.542,24.500,24.457,24.414,24.370,24.325,24.280,24.234,24.188,
-24.142,24.095,24.048,24.000,23.953,23.905,23.858,23.811,23.764,23.717,23.670,23.624,23.578,23.532,23.486,23.440,
-23.395,23.350,23.304,23.259,23.214,23.168,23.123,23.076,23.030,22.983,22.936,22.888,22.839,22.790,22.740,22.690,
-22.639,22.588,22.536,22.483,22.431,22.378,22.324,22.271,22.217,22.164,22.111,22.057,22.004,21.952,21.899,21.847,
-21.795,21.743,21.692,21.641,21.590,21.538,21.487,21.436,21.384,21.332,21.280,21.227,21.173,21.118,21.062,21.005,
-20.947,20.888,20.827,20.765,20.702,20.637,20.571,20.503,20.434,20.365,20.293,20.221,20.149,20.075,20.001,19.926,
-19.851,19.776,19.702,19.627,19.552,19.478,19.405,19.332,19.260,19.189,19.119,19.049,18.981,18.913,18.846,18.780,
-18.715,18.650,18.587,18.523,18.460,18.398,18.335,18.273,18.211,18.148,18.086,18.023,17.960,17.896,17.832,17.768,
-17.703,17.637,17.571,17.505,17.438,17.370,17.302,17.234,17.166,17.097,17.029,16.960,16.892,16.824,16.757,16.690,
-16.623,16.557,16.493,16.429,16.366,16.303,16.242,16.182,16.123,16.065,16.008,15.952,15.897,15.843,15.789,15.737,
-15.685,15.633,15.582,15.531,15.481,15.430,15.380,15.329,15.279,15.228,15.176,15.125,15.073,15.020,14.967,14.914,
-14.860,14.805,14.750,14.695,14.639,14.583,14.526,14.469,14.412,14.355,14.298,14.240,14.183,14.126,14.070,14.013,
-13.957,13.902,13.846,13.792,13.737,13.683,13.630,13.578,13.525,13.474,13.422,13.372,13.321,13.272,13.222,13.173,
-13.124,13.075,13.027,12.978,12.930,12.882,12.833,12.785,12.737,12.688,12.639,12.590,12.541,12.492,12.442,12.392,
-12.342,12.291,12.240,12.189,12.137,12.086,12.034,11.981,11.929,11.876,11.824,11.771,11.718,11.666,11.614,11.562,
-11.511,11.460,11.410,11.360,11.312,11.264,11.217,11.172,11.128,11.085,11.044,11.004,10.966,10.930,10.895,10.862,
-10.830,10.801,10.773,10.747,10.722,10.699,10.677,10.657,10.639,10.621,10.605,10.591,10.577,10.564,10.552,10.541,
-10.531,10.521,10.512,10.503,10.496,10.488,10.481,10.475,10.469,10.463,10.458,10.453,10.448,10.443,10.439,10.436,
-10.432,10.428,10.425,10.421,10.418,10.414,10.410,10.405,10.400,10.394,10.388,10.380,10.372,10.362,10.351,10.338,
-10.325,10.309,10.293,10.274,10.255,10.233,10.211,10.187,10.163,10.137,10.111,10.084,10.058,10.031,10.006,9.981,
-9.957,9.934,9.914,9.895,9.879,9.865,9.854,9.845,9.840,9.838,9.839,9.843,9.849,9.858,9.870,9.884,
-9.900,9.917,9.935,9.954,9.973,9.992,10.010,10.027,10.042,10.055,10.066,10.074,10.078,10.080,10.077,10.072,
-10.063,10.050,10.034,10.015,9.994,9.970,9.944,9.917,9.889,9.861,9.833,9.806,9.780,9.757,9.737,9.720,
-9.706,9.697,9.692,9.692,9.697,9.706,9.721,9.740,9.763,9.790,9.820,9.853,9.888,9.924,9.961,9.997,
-10.032,10.064,10.093,10.118,10.138,10.152,10.158,10.158,10.149,10.131,10.105,10.069,10.023,9.968,9.903,9.830,
-9.747,9.657,9.558,9.453,9.342,9.226,9.105,8.982,8.857,8.732,8.606,8.483,8.362,8.244,8.132,8.025,
-7.924,7.831,7.745,7.667,7.598,7.538,7.486,7.443,7.408,7.382,7.363,7.352,7.347,7.348,7.354,7.364,
-7.377,7.392,7.408,7.424,7.440,7.454,7.465,7.473,7.476,7.475,7.468,7.456,7.437,7.411,7.378,7.339,
-7.293,7.241,7.183,7.119,7.050,6.977,6.900,6.820,6.739,6.657,6.575,6.494,6.415,6.340,6.269,6.204,
-6.145,6.093,6.049,6.015,5.990,5.975,5.971,5.978,5.996,6.025,6.066,6.118,6.180,6.253,6.336,6.427,
-6.527,6.634,6.747,6.865,6.987,7.112,7.239,7.366,7.492,7.616,7.737,7.853,7.964,8.068,8.165,8.253,
-8.332,8.402,8.462,8.511,8.550,8.578,8.596,8.604,8.601,8.589,8.568,8.539,8.502,8.458,8.408,8.353,
-8.294,8.231,8.165,8.098,8.030,7.961,7.893,7.827,7.761,7.698,7.638,7.580,7.524,7.472,7.423,7.377,
-7.333,7.291,7.252,7.215,7.179,7.143,7.109,7.074,7.039,7.003,6.966,6.927,6.887,6.844,6.799,6.751,
-6.701,6.649,6.594,6.536,6.477,6.415,6.352,6.287,6.222,6.156,6.090,6.025,5.960,5.896,5.835,5.775,
-5.718,5.664,5.613,5.565,5.521,5.481,5.445,5.413,5.386,5.362,5.343,5.327,5.316,5.308,5.304,5.303,
-5.306,5.311,5.319,5.329,5.342,5.356,5.372,5.389,5.407,5.427,5.447,5.468,5.489,5.510,5.532,5.553,
-5.575,5.597,5.618,5.639,5.660,5.680,5.700,5.719,5.738,5.757,5.775,5.792,5.809,5.825,5.840,5.855,
-5.869,5.883,5.895,5.907,5.919,5.930,5.940,5.950,5.959,5.968,5.977,5.985,5.994,6.002,6.011,6.020,
-6.030,6.040,6.051,6.063,6.075,6.089,6.104,6.120,6.137,6.156,6.177,6.199,6.222,6.247,6.273,6.300,
-6.329,6.359,6.390,6.422,6.455,6.489,6.523,6.558,6.594,6.629,6.665,6.701,6.737,6.772,6.808,6.843,
-6.878,6.913,6.947,6.981,7.015,7.048,7.082,7.115,7.147,7.180,7.212,7.245,7.277,7.309,7.341,7.374,
-7.406,7.439,7.471,7.504,7.536,7.569,7.601,7.633,7.665,7.697,7.728,7.759,7.789,7.819,7.848,7.877,
-7.905,7.932,7.959,7.984,8.010,8.034,8.059,8.082,8.106,8.129,8.152,8.174,8.197,8.220,8.243,8.267,
-8.291,8.315,8.340,8.365,8.391,8.418,8.445,8.473,8.502,8.530,8.559,8.588,8.617,8.645,8.673,8.700,
-8.727,8.752,8.775,8.797,8.817,8.835,8.850,8.863,8.873,8.880,8.884,8.885,8.884,8.879,8.871,8.860,
-8.846,8.830,8.811,8.790,8.767,8.742,8.716,8.689,8.661,8.632,8.604,8.576,8.548,8.522,8.496,8.472,
-8.451,8.431,8.414,8.399,8.387,8.378,8.371,8.368,8.368,8.371,8.377,8.386,8.398,8.413,8.431,8.451,
-8.473,8.497,8.523,8.551,8.580,8.610,8.642,8.674,8.706,8.738,8.771,8.803,8.834,8.865,8.895,8.924,
-8.951,8.977,9.002,9.025,9.046,9.065,9.082,9.097,9.111,9.122,9.131,9.138,9.143,9.146,9.147,9.146,
-9.143,9.139,9.133,9.125,9.116,9.106,9.095,9.083,9.070,9.056,9.042,9.028,9.013,8.999,8.985,8.971,
-8.958,8.945,8.933,8.923,8.913,8.905,8.898,8.892,8.889,8.887,8.886,8.888,8.891,8.897,8.905,8.914,
-8.926,8.940,8.956,8.974,8.994,9.016,9.039,9.065,9.092,9.121,9.151,9.183,9.215,9.249,9.283,9.318,
-9.354,9.389,9.425,9.460,9.496,9.530,9.564,9.597,9.629,9.659,9.689,9.716,9.742,9.767,9.790,9.811,
-9.830,9.848,9.864,9.878,9.892,9.904,9.915,9.925,9.934,9.944,9.953,9.962,9.972,9.983,9.995,10.008,
-10.022,10.039,10.058,10.078,10.102,10.128,10.157,10.188,10.223,10.260,10.300,10.343,10.389,10.437,10.488,10.541,
-10.596,10.653,10.712,10.772,10.834,10.896,10.959,11.023,11.088,11.152,11.217,11.281,11.345,11.410,11.473,11.537,
-11.600,11.663,11.726,11.789,11.852,11.914,11.977,12.040,12.103,12.166,12.230,12.294,12.359,12.424,12.489,12.554,
-12.620,12.685,12.750,12.815,12.879,12.943,13.005,13.066,13.125,13.182,13.236,13.288,13.338,13.384,13.427,13.466,
-13.502,13.534,13.563,13.587,13.608,13.626,13.639,13.650,13.657,13.662,13.664,13.664,13.662,13.659,13.655,13.650,
-13.646,13.642,13.638,13.636,13.636,13.638,13.642,13.648,13.658,13.670,13.686,13.705,13.728,13.754,13.784,13.816,
-13.853,13.892,13.934,13.978,14.026,14.075,14.126,14.179,14.233,14.287,14.343,14.399,14.454,14.510,14.565,14.619,
-14.672,14.724,14.774,14.823,14.870,14.915,14.958,14.999,15.038,15.075,15.110,15.143,15.173,15.202,15.229,15.254,
-15.278,15.300,15.321,15.341,15.360,15.378,15.396,15.413,15.430,15.448,15.466,15.484,15.504,15.524,15.546,15.570,
-15.595,15.623,15.653,15.686,15.721,15.759,15.800,15.844,15.891,15.942,15.996,16.054,16.115,16.179,16.246,16.317,
-16.390,16.466,16.545,16.626,16.709,16.794,16.881,16.969,17.057,17.146,17.236,17.325,17.413,17.501,17.588,17.672,
-17.756,17.837,17.915,17.991,18.065,18.135,18.203,18.268,18.329,18.388,18.443,18.495,18.545,18.592,18.637,18.680,
-18.721,18.760,18.797,18.834,18.870,18.906,18.941,18.977,19.013,19.050,19.089,19.128,19.169,19.212,19.256,19.303,
-19.351,19.401,19.453,19.507,19.563,19.620,19.678,19.738,19.799,19.860,19.923,19.985,20.047,20.110,20.172,20.233,
-20.293,20.353,20.411,20.468,20.524,20.579,20.632,20.684,20.736,20.786,20.836,20.885,20.934,20.983,21.032,21.082,
-21.132,21.184,21.237,21.291,21.347,21.404,21.464,21.526,21.590,21.656,21.724,21.794,21.865,21.939,22.013,22.088,
-22.164,22.241,22.317,22.393,22.467,22.541,22.613,22.683,22.750,22.815,22.877,22.936,22.991,23.044,23.093,23.138,
-23.180,23.219,23.255,23.289,23.320,23.349,23.376,23.402,23.427,23.452,23.476,23.501,23.526,23.552,23.579,23.608,
-23.639,23.671,23.706,23.742,23.780,23.820,23.861,23.904,23.948,23.992,24.037,24.082,24.127,24.171,24.213,24.255,
-24.294,24.331,24.366,24.398,24.427,24.453,24.476,24.496,24.513,24.528,24.540,24.549,24.557,24.564,24.570,24.575,
-24.580,24.587,24.594,24.603,24.614,24.629,24.646,24.667,24.693,24.722,24.756,24.795,24.839,24.887,24.941,24.998,
-25.060,25.126,25.195,25.268,25.343,25.420,25.499,25.579,25.658,25.738,25.817,25.894,25.969,26.041,26.111,26.178,
-26.240,26.299,26.354,26.405,26.451,26.493,26.532,26.566,26.597,26.625,26.650,26.672,26.692,26.711,26.728,26.745,
-26.761,26.778,26.795,26.814,26.833,26.855,26.878,26.903,26.930,26.959,26.991,27.025,27.061,27.098,27.137,27.178,
-27.219,27.260,27.301,27.342,27.382,27.421,27.458,27.492,27.523,27.551,27.575,27.594,27.609,27.620,27.625,27.625,
-27.620,27.609,27.593,27.571,27.544,27.512,27.475,27.434,27.388,27.339,27.286,27.231,27.173,27.114,27.053,26.992,
-26.930,26.869,26.809,26.750,26.693,26.638,26.586,26.537,26.491,26.449,26.411,26.377,26.346,26.320,26.298,26.279,
-26.265,26.254,26.247,26.243,26.242,26.244,26.248,26.254,26.261,26.270,26.281,26.292,26.303,26.315,26.327,26.339,
-26.350,26.361,26.372,26.382,26.391,26.400,26.409,26.418,26.426,26.435,26.444,26.453,26.463,26.474,26.486,26.500,
-26.515,26.531,26.549,26.569,26.591,26.614,26.639,26.666,26.694,26.723,26.754,26.785,26.816,26.847,26.878,26.909,
-26.937,26.965,26.990,27.012,27.032,27.048,27.061,27.069,27.419,27.416,27.408,27.396,27.379,27.357,27.329,27.297,
-27.259,27.217,27.170,27.120,27.066,27.008,26.948,26.886,26.822,26.758,26.693,26.628,26.564,26.502,26.441,26.383,
-26.327,26.274,26.224,26.177,26.134,26.095,26.059,26.026,25.997,25.970,25.947,25.925,25.906,25.889,25.873,25.857,
-25.843,25.828,25.813,25.798,25.781,25.764,25.745,25.725,25.702,25.678,25.652,25.625,25.595,25.563,25.530,25.496,
-25.460,25.423,25.385,25.347,25.308,25.268,25.229,25.190,25.151,25.112,25.074,25.037,25.000,24.964,24.928,24.894,
-24.860,24.826,24.793,24.760,24.728,24.695,24.663,24.630,24.597,24.563,24.529,24.495,24.459,24.423,24.386,24.348,
-24.310,24.270,24.230,24.189,24.147,24.105,24.062,24.019,23.975,23.931,23.887,23.842,23.797,23.752,23.706,23.661,
-23.615,23.569,23.523,23.476,23.429,23.382,23.334,23.286,23.237,23.187,23.137,23.086,23.034,22.981,22.927,22.873,
-22.817,22.761,22.703,22.645,22.586,22.527,22.467,22.406,22.345,22.284,22.222,22.161,22.099,22.036,21.974,21.912,
-21.850,21.788,21.726,21.664,21.602,21.539,21.477,21.414,21.352,21.289,21.225,21.162,21.097,21.033,20.967,20.901,
-20.835,20.768,20.700,20.632,20.563,20.494,20.425,20.355,20.285,20.215,20.145,20.075,20.005,19.935,19.865,19.796,
-19.728,19.659,19.592,19.525,19.458,19.392,19.326,19.261,19.196,19.131,19.067,19.002,18.938,18.873,18.809,18.744,
-18.678,18.613,18.547,18.480,18.412,18.344,18.276,18.206,18.136,18.066,17.995,17.923,17.851,17.779,17.706,17.634,
-17.561,17.488,17.416,17.344,17.273,17.201,17.131,17.061,16.992,16.924,16.856,16.789,16.723,16.658,16.593,16.530,
-16.467,16.404,16.342,16.281,16.220,16.159,16.098,16.038,15.977,15.917,15.856,15.795,15.734,15.673,15.611,15.548,
-15.486,15.423,15.359,15.295,15.231,15.166,15.101,15.036,14.970,14.905,14.840,14.774,14.710,14.645,14.581,14.518,
-14.455,14.393,14.332,14.272,14.212,14.154,14.097,14.041,13.986,13.933,13.880,13.828,13.778,13.728,13.679,13.630,
-13.583,13.535,13.488,13.441,13.394,13.347,13.299,13.251,13.203,13.154,13.104,13.054,13.003,12.951,12.898,12.844,
-12.790,12.735,12.679,12.622,12.566,12.508,12.451,12.393,12.336,12.279,12.222,12.165,12.109,12.053,11.998,11.944,
-11.890,11.837,11.785,11.734,11.683,11.633,11.584,11.535,11.486,11.438,11.390,11.342,11.294,11.246,11.197,11.148,
-11.099,11.050,11.000,10.949,10.898,10.847,10.795,10.744,10.692,10.640,10.588,10.537,10.486,10.435,10.386,10.337,
-10.289,10.243,10.198,10.154,10.112,10.072,10.033,9.996,9.961,9.928,9.897,9.867,9.839,9.813,9.789,9.766,
-9.745,9.725,9.707,9.690,9.674,9.659,9.646,9.634,9.623,9.612,9.603,9.595,9.588,9.582,9.577,9.573,
-9.569,9.567,9.566,9.565,9.566,9.567,9.569,9.571,9.573,9.576,9.579,9.582,9.585,9.587,9.588,9.589,
-9.588,9.586,9.583,9.579,9.572,9.565,9.555,9.544,9.531,9.516,9.500,9.483,9.465,9.446,9.426,9.407,
-9.387,9.369,9.351,9.334,9.320,9.307,9.297,9.290,9.285,9.284,9.285,9.291,9.299,9.311,9.326,9.343,
-9.364,9.386,9.410,9.435,9.461,9.487,9.513,9.537,9.560,9.581,9.598,9.613,9.623,9.629,9.631,9.628,
-9.620,9.607,9.589,9.567,9.541,9.511,9.477,9.441,9.403,9.365,9.325,9.287,9.250,9.215,9.184,9.157,
-9.135,9.118,9.108,9.104,9.108,9.119,9.138,9.164,9.197,9.237,9.283,9.335,9.391,9.451,9.514,9.579,
-9.644,9.708,9.770,9.828,9.880,9.927,9.966,9.997,10.018,10.028,10.027,10.015,9.989,9.952,9.901,9.838,
-9.763,9.677,9.579,9.471,9.354,9.229,9.097,8.959,8.818,8.674,8.528,8.383,8.239,8.098,7.962,7.831,
-7.706,7.589,7.481,7.381,7.292,7.212,7.142,7.083,7.034,6.994,6.964,6.942,6.929,6.923,6.924,6.929,
-6.940,6.953,6.969,6.987,7.004,7.020,7.035,7.046,7.054,7.058,7.056,7.049,7.036,7.016,6.989,6.956,
-6.916,6.870,6.817,6.759,6.695,6.627,6.555,6.480,6.403,6.324,6.246,6.168,6.092,6.019,5.949,5.885,
-5.828,5.777,5.734,5.700,5.676,5.662,5.659,5.668,5.688,5.720,5.764,5.819,5.886,5.965,6.054,6.153,
-6.261,6.378,6.502,6.632,6.767,6.905,7.046,7.188,7.329,7.468,7.603,7.734,7.859,7.976,8.086,8.185,
-8.275,8.353,8.420,8.474,8.516,8.546,8.563,8.568,8.560,8.542,8.512,8.473,8.425,8.368,8.305,8.235,
-8.161,8.083,8.002,7.920,7.838,7.757,7.677,7.599,7.524,7.453,7.387,7.324,7.267,7.214,7.165,7.122,
-7.082,7.046,7.014,6.984,6.956,6.930,6.904,6.879,6.853,6.826,6.797,6.765,6.730,6.693,6.651,6.606,
-6.556,6.503,6.445,6.383,6.318,6.250,6.178,6.105,6.029,5.952,5.874,5.795,5.718,5.641,5.566,5.493,
-5.422,5.355,5.291,5.231,5.176,5.124,5.077,5.035,4.997,4.964,4.936,4.911,4.891,4.875,4.862,4.852,
-4.846,4.842,4.841,4.843,4.846,4.850,4.857,4.864,4.873,4.883,4.893,4.904,4.916,4.929,4.943,4.957,
-4.971,4.987,5.003,5.019,5.037,5.055,5.074,5.093,5.113,5.134,5.155,5.176,5.198,5.219,5.241,5.263,
-5.284,5.305,5.325,5.345,5.364,5.382,5.399,5.416,5.431,5.446,5.459,5.472,5.484,5.496,5.507,5.518,
-5.528,5.539,5.551,5.562,5.575,5.588,5.603,5.619,5.637,5.656,5.677,5.700,5.725,5.752,5.781,5.812,
-5.845,5.879,5.915,5.953,5.992,6.032,6.073,6.114,6.156,6.199,6.241,6.284,6.326,6.367,6.408,6.448,
-6.487,6.525,6.561,6.597,6.632,6.665,6.697,6.728,6.758,6.787,6.815,6.842,6.868,6.894,6.919,6.943,
-6.967,6.990,7.013,7.035,7.057,7.079,7.101,7.121,7.142,7.162,7.182,7.201,7.219,7.237,7.255,7.271,
-7.287,7.303,7.318,7.332,7.346,7.360,7.374,7.387,7.400,7.414,7.428,7.443,7.458,7.475,7.492,7.511,
-7.531,7.553,7.577,7.602,7.629,7.658,7.689,7.722,7.757,7.793,7.830,7.868,7.908,7.948,7.989,8.029,
-8.069,8.109,8.147,8.184,8.219,8.252,8.282,8.310,8.334,8.355,8.372,8.386,8.395,8.401,8.403,8.401,
-8.394,8.385,8.371,8.355,8.335,8.312,8.287,8.261,8.232,8.202,8.172,8.141,8.110,8.079,8.050,8.021,
-7.994,7.969,7.947,7.926,7.908,7.894,7.882,7.873,7.867,7.865,7.866,7.870,7.878,7.888,7.902,7.918,
-7.938,7.959,7.983,8.010,8.038,8.068,8.099,8.132,8.165,8.200,8.235,8.270,8.305,8.340,8.375,8.408,
-8.441,8.473,8.503,8.532,8.558,8.583,8.606,8.626,8.643,8.658,8.670,8.679,8.685,8.688,8.688,8.685,
-8.679,8.670,8.658,8.643,8.626,8.607,8.586,8.562,8.538,8.511,8.484,8.456,8.427,8.398,8.370,8.341,
-8.314,8.288,8.263,8.239,8.217,8.198,8.181,8.166,8.153,8.143,8.136,8.132,8.130,8.131,8.135,8.142,
-8.151,8.163,8.177,8.193,8.212,8.232,8.255,8.279,8.304,8.331,8.360,8.389,8.419,8.449,8.481,8.512,
-8.544,8.576,8.608,8.640,8.671,8.702,8.733,8.763,8.792,8.820,8.848,8.875,8.900,8.925,8.949,8.972,
-8.993,9.014,9.034,9.053,9.072,9.089,9.107,9.123,9.140,9.156,9.173,9.190,9.207,9.226,9.245,9.265,
-9.286,9.310,9.334,9.361,9.389,9.420,9.453,9.488,9.525,9.564,9.606,9.649,9.695,9.742,9.791,9.842,
-9.894,9.947,10.000,10.055,10.109,10.164,10.219,10.273,10.327,10.380,10.433,10.485,10.535,10.585,10.634,10.682,
-10.729,10.775,10.821,10.867,10.912,10.957,11.003,11.048,11.095,11.142,11.190,11.239,11.289,11.340,11.393,11.447,
-11.503,11.560,11.618,11.677,11.737,11.798,11.859,11.920,11.981,12.042,12.102,12.161,12.219,12.276,12.330,12.383,
-12.434,12.482,12.529,12.572,12.614,12.653,12.689,12.724,12.757,12.788,12.817,12.845,12.872,12.898,12.924,12.949,
-12.975,13.001,13.028,13.056,13.084,13.114,13.145,13.178,13.212,13.247,13.284,13.323,13.362,13.403,13.445,13.487,
-13.531,13.574,13.619,13.663,13.707,13.751,13.795,13.838,13.881,13.924,13.965,14.006,14.047,14.087,14.126,14.165,
-14.203,14.242,14.280,14.318,14.356,14.394,14.433,14.472,14.511,14.551,14.591,14.632,14.673,14.715,14.757,14.799,
-14.841,14.884,14.927,14.969,15.012,15.054,15.095,15.137,15.177,15.217,15.257,15.296,15.334,15.372,15.409,15.446,
-15.484,15.521,15.558,15.596,15.635,15.675,15.716,15.758,15.803,15.850,15.899,15.951,16.005,16.063,16.124,16.189,
-16.257,16.329,16.404,16.484,16.566,16.653,16.742,16.835,16.931,17.029,17.130,17.232,17.337,17.442,17.549,17.656,
-17.762,17.869,17.974,18.079,18.181,18.282,18.380,18.475,18.568,18.657,18.742,18.824,18.902,18.977,19.047,19.114,
-19.177,19.236,19.292,19.345,19.395,19.443,19.488,19.532,19.574,19.615,19.655,19.695,19.736,19.777,19.818,19.861,
-19.905,19.951,19.999,20.049,20.101,20.155,20.211,20.269,20.329,20.391,20.454,20.518,20.583,20.649,20.715,20.782,
-20.847,20.912,20.976,21.039,21.100,21.160,21.217,21.273,21.326,21.377,21.426,21.473,21.518,21.562,21.605,21.646,
-21.687,21.727,21.768,21.809,21.852,21.895,21.941,21.988,22.038,22.091,22.147,22.206,22.268,22.333,22.401,22.473,
-22.547,22.625,22.704,22.786,22.869,22.954,23.039,23.125,23.211,23.296,23.380,23.463,23.544,23.622,23.698,23.772,
-23.842,23.910,23.974,24.035,24.094,24.149,24.202,24.252,24.300,24.346,24.390,24.433,24.475,24.516,24.557,24.598,
-24.639,24.680,24.722,24.764,24.807,24.849,24.893,24.936,24.979,25.021,25.063,25.104,25.144,25.181,25.216,25.249,
-25.278,25.305,25.327,25.346,25.361,25.372,25.378,25.381,25.379,25.373,25.364,25.352,25.337,25.320,25.301,25.281,
-25.261,25.241,25.222,25.204,25.188,25.176,25.166,25.161,25.160,25.164,25.173,25.187,25.207,25.232,25.263,25.300,
-25.341,25.388,25.439,25.494,25.553,25.615,25.679,25.745,25.813,25.881,25.948,26.015,26.081,26.145,26.206,26.265,
-26.320,26.372,26.420,26.464,26.503,26.539,26.570,26.598,26.621,26.641,26.657,26.670,26.679,26.687,26.691,26.694,
-26.696,26.696,26.695,26.693,26.691,26.688,26.686,26.684,26.682,26.681,26.680,26.679,26.679,26.679,26.679,26.680,
-26.680,26.680,26.681,26.680,26.679,26.678,26.675,26.671,26.667,26.661,26.653,26.644,26.634,26.622,26.609,26.595,
-26.579,26.562,26.543,26.524,26.504,26.484,26.463,26.442,26.421,26.401,26.381,26.362,26.344,26.328,26.313,26.300,
-26.289,26.280,26.274,26.271,26.271,26.273,26.279,26.288,26.299,26.315,26.333,26.354,26.378,26.406,26.435,26.468,
-26.502,26.538,26.576,26.616,26.656,26.697,26.737,26.778,26.819,26.858,26.896,26.932,26.967,26.999,27.029,27.057,
-27.081,27.103,27.122,27.137,27.150,27.160,27.167,27.172,27.174,27.175,27.174,27.171,27.168,27.164,27.160,27.156,
-27.153,27.151,27.149,27.150,27.152,27.156,27.162,27.171,27.181,27.194,27.208,27.224,27.242,27.261,27.281,27.301,
-27.321,27.340,27.359,27.376,27.390,27.403,27.412,27.417,27.419,27.615,27.604,27.589,27.572,27.551,27.526,27.498,
-27.465,27.429,27.389,27.345,27.298,27.248,27.195,27.139,27.082,27.023,26.963,26.902,26.842,26.783,26.724,26.667,
-26.612,26.560,26.510,26.463,26.419,26.378,26.341,26.307,26.275,26.247,26.221,26.198,26.177,26.157,26.138,26.121,
-26.103,26.086,26.068,26.049,26.029,26.007,25.984,25.958,25.930,25.900,25.867,25.832,25.794,25.754,25.712,25.668,
-25.622,25.575,25.527,25.479,25.429,25.380,25.331,25.283,25.235,25.189,25.144,25.100,25.059,25.019,24.981,24.944,
-24.910,24.878,24.847,24.819,24.791,24.765,24.741,24.717,24.694,24.671,24.649,24.627,24.605,24.583,24.560,24.537,
-24.513,24.489,24.463,24.436,24.408,24.380,24.350,24.318,24.286,24.252,24.216,24.180,24.142,24.102,24.061,24.019,
-23.975,23.930,23.883,23.834,23.783,23.731,23.677,23.622,23.564,23.505,23.444,23.381,23.317,23.251,23.184,23.115,
-23.045,22.974,22.902,22.829,22.756,22.682,22.608,22.534,22.460,22.387,22.313,22.240,22.168,22.096,22.024,21.953,
-21.883,21.813,21.744,21.675,21.606,21.537,21.468,21.399,21.330,21.261,21.190,21.120,21.048,20.976,20.903,20.830,
-20.755,20.680,20.605,20.529,20.452,20.376,20.299,20.223,20.147,20.072,19.997,19.923,19.851,19.779,19.709,19.640,
-19.573,19.507,19.442,19.379,19.316,19.255,19.194,19.134,19.075,19.015,18.956,18.896,18.835,18.773,18.711,18.647,
-18.581,18.514,18.445,18.374,18.302,18.227,18.151,18.074,17.995,17.915,17.833,17.751,17.668,17.585,17.502,17.419,
-17.337,17.256,17.175,17.096,17.018,16.942,16.867,16.795,16.724,16.655,16.587,16.522,16.457,16.395,16.333,16.273,
-16.213,16.154,16.096,16.037,15.979,15.920,15.861,15.801,15.740,15.678,15.615,15.551,15.485,15.418,15.350,15.280,
-15.210,15.138,15.065,14.990,14.916,14.840,14.764,14.688,14.612,14.536,14.461,14.386,14.312,14.239,14.167,14.097,
-14.029,13.962,13.898,13.835,13.774,13.716,13.660,13.606,13.555,13.505,13.458,13.412,13.368,13.326,13.285,13.245,
-13.206,13.167,13.128,13.090,13.051,13.012,12.971,12.929,12.886,12.842,12.795,12.747,12.696,12.643,12.588,12.531,
-12.471,12.410,12.346,12.281,12.215,12.147,12.078,12.008,11.938,11.868,11.798,11.729,11.660,11.592,11.526,11.461,
-11.397,11.335,11.275,11.217,11.160,11.105,11.052,11.000,10.949,10.900,10.851,10.803,10.755,10.708,10.660,10.613,
-10.564,10.515,10.466,10.415,10.364,10.312,10.258,10.204,10.150,10.094,10.038,9.982,9.926,9.871,9.816,9.761,
-9.708,9.656,9.605,9.556,9.509,9.464,9.421,9.381,9.342,9.305,9.271,9.239,9.208,9.180,9.152,9.126,
-9.102,9.078,9.055,9.033,9.011,8.989,8.967,8.946,8.924,8.902,8.881,8.859,8.837,8.815,8.794,8.773,
-8.753,8.734,8.716,8.699,8.684,8.670,8.659,8.649,8.641,8.635,8.631,8.629,8.630,8.632,8.636,8.641,
-8.647,8.654,8.662,8.671,8.679,8.687,8.695,8.702,8.707,8.712,8.715,8.717,8.717,8.715,8.712,8.708,
-8.702,8.696,8.689,8.682,8.675,8.668,8.663,8.658,8.656,8.655,8.657,8.661,8.668,8.678,8.692,8.708,
-8.727,8.750,8.774,8.801,8.830,8.860,8.891,8.922,8.952,8.981,9.009,9.033,9.055,9.072,9.086,9.094,
-9.097,9.095,9.088,9.074,9.056,9.032,9.003,8.970,8.934,8.894,8.853,8.810,8.767,8.726,8.686,8.649,
-8.617,8.589,8.568,8.553,8.546,8.547,8.557,8.575,8.602,8.638,8.681,8.733,8.792,8.856,8.926,9.000,
-9.076,9.154,9.231,9.307,9.379,9.446,9.506,9.559,9.603,9.636,9.657,9.667,9.663,9.645,9.614,9.569,
-9.510,9.438,9.353,9.257,9.149,9.031,8.905,8.771,8.632,8.489,8.343,8.196,8.049,7.905,7.764,7.629,
-7.499,7.376,7.262,7.157,7.061,6.974,6.898,6.833,6.777,6.730,6.694,6.665,6.645,6.632,6.625,6.623,
-6.626,6.631,6.639,6.648,6.657,6.665,6.672,6.675,6.676,6.672,6.663,6.650,6.631,6.607,6.577,6.541,
-6.500,6.453,6.401,6.344,6.283,6.218,6.151,6.081,6.009,5.937,5.864,5.793,5.723,5.657,5.594,5.536,
-5.484,5.438,5.399,5.369,5.348,5.336,5.335,5.344,5.365,5.397,5.441,5.497,5.564,5.644,5.734,5.835,
-5.946,6.066,6.194,6.330,6.472,6.618,6.767,6.919,7.070,7.220,7.368,7.510,7.647,7.776,7.896,8.006,
-8.104,8.190,8.262,8.320,8.363,8.392,8.406,8.404,8.388,8.358,8.315,8.260,8.193,8.115,8.029,7.936,
-7.836,7.733,7.626,7.518,7.410,7.303,7.200,7.100,7.005,6.916,6.834,6.759,6.691,6.632,6.579,6.535,
-6.497,6.466,6.441,6.422,6.407,6.395,6.385,6.377,6.370,6.362,6.352,6.340,6.325,6.306,6.283,6.254,
-6.221,6.181,6.137,6.086,6.031,5.970,5.905,5.836,5.763,5.688,5.610,5.531,5.452,5.372,5.294,5.216,
-5.141,5.069,5.000,4.934,4.873,4.816,4.763,4.715,4.671,4.632,4.597,4.567,4.540,4.517,4.497,4.481,
-4.467,4.456,4.447,4.440,4.435,4.431,4.428,4.427,4.427,4.427,4.429,4.431,4.435,4.440,4.446,4.453,
-4.462,4.472,4.483,4.496,4.511,4.528,4.546,4.565,4.586,4.609,4.632,4.657,4.682,4.708,4.734,4.760,
-4.785,4.810,4.835,4.858,4.880,4.900,4.919,4.936,4.952,4.966,4.978,4.988,4.997,5.005,5.012,5.019,
-5.024,5.030,5.036,5.043,5.050,5.059,5.070,5.083,5.098,5.115,5.135,5.158,5.184,5.213,5.245,5.280,
-5.318,5.358,5.400,5.445,5.492,5.540,5.590,5.640,5.690,5.741,5.791,5.841,5.890,5.937,5.983,6.026,
-6.068,6.108,6.145,6.180,6.212,6.242,6.270,6.296,6.319,6.340,6.360,6.378,6.394,6.409,6.424,6.437,
-6.450,6.462,6.475,6.487,6.499,6.511,6.523,6.536,6.549,6.562,6.575,6.588,6.602,6.615,6.629,6.642,
-6.656,6.669,6.682,6.695,6.708,6.720,6.733,6.745,6.757,6.769,6.781,6.794,6.807,6.820,6.835,6.850,
-6.867,6.884,6.903,6.923,6.945,6.969,6.994,7.021,7.050,7.080,7.112,7.145,7.179,7.214,7.249,7.285,
-7.321,7.357,7.392,7.426,7.459,7.491,7.520,7.547,7.572,7.595,7.614,7.631,7.644,7.654,7.661,7.665,
-7.666,7.664,7.660,7.652,7.643,7.632,7.619,7.604,7.588,7.572,7.555,7.538,7.522,7.506,7.490,7.475,
-7.462,7.450,7.439,7.430,7.423,7.417,7.413,7.411,7.411,7.412,7.415,7.419,7.425,7.432,7.440,7.449,
-7.460,7.472,7.484,7.498,7.512,7.528,7.544,7.561,7.578,7.597,7.616,7.636,7.656,7.677,7.698,7.720,
-7.742,7.764,7.786,7.808,7.830,7.851,7.871,7.890,7.908,7.924,7.938,7.951,7.961,7.969,7.974,7.976,
-7.976,7.972,7.966,7.956,7.944,7.929,7.911,7.890,7.867,7.842,7.815,7.787,7.758,7.728,7.697,7.667,
-7.637,7.608,7.580,7.553,7.529,7.506,7.486,7.468,7.454,7.442,7.432,7.426,7.423,7.423,7.425,7.430,
-7.438,7.447,7.459,7.473,7.488,7.505,7.523,7.542,7.562,7.582,7.602,7.623,7.644,7.665,7.685,7.706,
-7.726,7.746,7.766,7.786,7.806,7.825,7.845,7.865,7.884,7.904,7.924,7.945,7.966,7.987,8.009,8.031,
-8.053,8.077,8.100,8.124,8.149,8.174,8.199,8.225,8.251,8.278,8.305,8.332,8.360,8.388,8.417,8.446,
-8.476,8.506,8.537,8.569,8.601,8.635,8.669,8.704,8.740,8.776,8.814,8.853,8.892,8.932,8.973,9.015,
-9.056,9.099,9.141,9.184,9.226,9.268,9.310,9.352,9.392,9.433,9.472,9.510,9.548,9.585,9.621,9.657,
-9.692,9.726,9.760,9.794,9.829,9.863,9.898,9.934,9.971,10.009,10.049,10.090,10.133,10.177,10.224,10.272,
-10.322,10.375,10.428,10.484,10.541,10.599,10.658,10.718,10.778,10.839,10.899,10.960,11.019,11.078,11.136,11.192,
-11.248,11.302,11.354,11.406,11.456,11.504,11.552,11.599,11.645,11.691,11.737,11.783,11.830,11.877,11.925,11.974,
-12.025,12.077,12.130,12.185,12.242,12.300,12.360,12.421,12.483,12.545,12.608,12.671,12.734,12.796,12.857,12.917,
-12.975,13.031,13.085,13.136,13.185,13.231,13.275,13.316,13.354,13.390,13.424,13.455,13.486,13.515,13.544,13.572,
-13.601,13.630,13.660,13.692,13.727,13.763,13.802,13.845,13.890,13.939,13.991,14.047,14.107,14.169,14.235,14.303,
-14.374,14.447,14.523,14.599,14.677,14.755,14.834,14.912,14.990,15.068,15.144,15.219,15.292,15.363,15.433,15.501,
-15.568,15.632,15.695,15.757,15.817,15.876,15.935,15.993,16.051,16.110,16.169,16.228,16.289,16.351,16.415,16.481,
-16.548,16.618,16.691,16.765,16.842,16.922,17.004,17.089,17.176,17.265,17.356,17.449,17.544,17.640,17.737,17.835,
-17.933,18.032,18.130,18.229,18.326,18.422,18.517,18.610,18.702,18.791,18.877,18.960,19.041,19.118,19.192,19.263,
-19.330,19.393,19.453,19.510,19.563,19.613,19.660,19.705,19.747,19.787,19.826,19.864,19.900,19.937,19.973,20.010,
-20.049,20.088,20.129,20.173,20.219,20.267,20.318,20.373,20.430,20.490,20.553,20.619,20.687,20.757,20.830,20.903,
-20.978,21.053,21.128,21.203,21.277,21.350,21.421,21.490,21.556,21.619,21.679,21.736,21.790,21.840,21.887,21.932,
-21.973,22.012,22.049,22.084,22.117,22.151,22.184,22.217,22.251,22.287,22.325,22.365,22.408,22.454,22.504,22.557,
-22.614,22.675,22.740,22.808,22.880,22.955,23.033,23.113,23.195,23.279,23.364,23.450,23.536,23.621,23.706,23.789,
-23.871,23.950,24.028,24.103,24.176,24.246,24.314,24.379,24.441,24.501,24.559,24.616,24.670,24.724,24.776,24.827,
-24.878,24.928,24.977,25.027,25.076,25.125,25.174,25.223,25.270,25.318,25.364,25.408,25.451,25.492,25.531,25.567,
-25.600,25.629,25.655,25.676,25.694,25.707,25.716,25.721,25.722,25.719,25.712,25.702,25.689,25.673,25.656,25.637,
-25.618,25.598,25.579,25.562,25.546,25.532,25.522,25.514,25.511,25.512,25.518,25.528,25.543,25.563,25.587,25.616,
-25.650,25.688,25.730,25.774,25.822,25.872,25.924,25.977,26.031,26.085,26.139,26.192,26.243,26.293,26.341,26.387,
-26.430,26.470,26.507,26.541,26.572,26.600,26.626,26.648,26.668,26.685,26.700,26.713,26.724,26.733,26.740,26.746,
-26.751,26.754,26.756,26.757,26.757,26.756,26.753,26.749,26.744,26.736,26.728,26.717,26.705,26.690,26.673,26.654,
-26.632,26.608,26.582,26.553,26.522,26.489,26.453,26.416,26.376,26.335,26.293,26.250,26.207,26.163,26.118,26.075,
-26.032,25.990,25.949,25.910,25.873,25.838,25.806,25.776,25.749,25.725,25.705,25.688,25.674,25.664,25.658,25.655,
-25.656,25.661,25.670,25.682,25.699,25.719,25.743,25.772,25.804,25.840,25.880,25.923,25.971,26.022,26.077,26.136,
-26.198,26.263,26.331,26.402,26.475,26.551,26.628,26.706,26.786,26.865,26.945,27.024,27.102,27.179,27.253,27.325,
-27.393,27.458,27.519,27.576,27.628,27.674,27.716,27.752,27.783,27.808,27.828,27.843,27.853,27.859,27.860,27.857,
-27.851,27.842,27.831,27.817,27.803,27.787,27.771,27.755,27.739,27.724,27.711,27.698,27.687,27.678,27.670,27.663,
-27.658,27.653,27.650,27.647,27.644,27.640,27.636,27.631,27.624,27.615,27.818,27.806,27.794,27.782,27.769,27.755,
-27.739,27.721,27.700,27.677,27.650,27.621,27.589,27.554,27.515,27.474,27.430,27.384,27.336,27.286,27.234,27.182,
-27.129,27.076,27.023,26.971,26.920,26.870,26.821,26.775,26.730,26.687,26.647,26.608,26.572,26.537,26.504,26.473,
-26.443,26.415,26.387,26.359,26.332,26.305,26.277,26.249,26.220,26.190,26.159,26.126,26.092,26.056,26.019,25.980,
-25.940,25.898,25.855,25.811,25.766,25.720,25.674,25.628,25.581,25.535,25.489,25.444,25.399,25.355,25.313,25.272,
-25.232,25.193,25.156,25.120,25.086,25.052,25.021,24.990,24.960,24.932,24.904,24.877,24.850,24.824,24.798,24.772,
-24.746,24.720,24.694,24.667,24.639,24.611,24.582,24.552,24.520,24.487,24.453,24.417,24.379,24.340,24.298,24.254,
-24.208,24.159,24.108,24.054,23.997,23.938,23.876,23.811,23.743,23.673,23.600,23.525,23.447,23.368,23.287,23.204,
-23.120,23.036,22.951,22.865,22.780,22.695,22.611,22.529,22.447,22.368,22.289,22.213,22.139,22.067,21.997,21.928,
-21.862,21.796,21.733,21.670,21.607,21.545,21.483,21.421,21.358,21.294,21.228,21.161,21.092,21.021,20.947,20.872,
-20.794,20.714,20.632,20.548,20.462,20.375,20.288,20.199,20.111,20.022,19.934,19.847,19.761,19.676,19.593,19.513,
-19.434,19.357,19.283,19.210,19.140,19.071,19.003,18.937,18.871,18.806,18.740,18.675,18.608,18.540,18.470,18.399,
-18.325,18.249,18.170,18.088,18.004,17.918,17.829,17.738,17.645,17.550,17.455,17.359,17.262,17.166,17.071,16.977,
-16.884,16.793,16.705,16.620,16.537,16.458,16.382,16.309,16.239,16.173,16.109,16.049,15.991,15.935,15.881,15.828,
-15.777,15.727,15.676,15.626,15.576,15.525,15.473,15.420,15.366,15.310,15.253,15.195,15.134,15.073,15.009,14.945,
-14.879,14.812,14.744,14.675,14.606,14.536,14.466,14.396,14.326,14.257,14.188,14.119,14.051,13.985,13.919,13.854,
-13.790,13.728,13.667,13.607,13.549,13.492,13.436,13.382,13.330,13.279,13.229,13.181,13.134,13.088,13.043,13.000,
-12.957,12.914,12.873,12.831,12.789,12.748,12.705,12.662,12.618,12.572,12.526,12.477,12.427,12.374,12.320,12.263,
-12.204,12.143,12.080,12.015,11.948,11.879,11.809,11.737,11.665,11.592,11.519,11.446,11.373,11.301,11.230,11.160,
-11.091,11.024,10.958,10.894,10.832,10.771,10.712,10.654,10.597,10.541,10.486,10.431,10.376,10.321,10.265,10.209,
-10.152,10.093,10.033,9.972,9.909,9.844,9.778,9.711,9.643,9.573,9.504,9.434,9.364,9.294,9.226,9.159,
-9.094,9.031,8.971,8.914,8.860,8.810,8.763,8.719,8.680,8.644,8.612,8.583,8.558,8.535,8.514,8.496,
-8.479,8.463,8.448,8.433,8.418,8.402,8.385,8.367,8.347,8.326,8.302,8.277,8.250,8.221,8.191,8.159,
-8.127,8.093,8.060,8.026,7.994,7.962,7.932,7.905,7.879,7.856,7.837,7.821,7.808,7.799,7.793,7.791,
-7.793,7.797,7.805,7.815,7.827,7.841,7.856,7.873,7.889,7.905,7.921,7.936,7.949,7.961,7.971,7.978,
-7.984,7.987,7.989,7.988,7.986,7.983,7.978,7.974,7.969,7.964,7.961,7.959,7.959,7.962,7.967,7.975,
-7.987,8.003,8.022,8.044,8.070,8.099,8.130,8.164,8.200,8.237,8.274,8.311,8.346,8.380,8.411,8.439,
-8.462,8.481,8.494,8.501,8.503,8.498,8.487,8.470,8.448,8.420,8.387,8.350,8.310,8.268,8.225,8.182,
-8.140,8.101,8.064,8.033,8.007,7.988,7.977,7.973,7.979,7.993,8.016,8.048,8.090,8.139,8.196,8.259,
-8.328,8.402,8.478,8.556,8.634,8.710,8.783,8.851,8.912,8.965,9.009,9.043,9.065,9.074,9.071,9.054,
-9.023,8.979,8.922,8.852,8.770,8.677,8.574,8.462,8.343,8.218,8.089,7.958,7.825,7.692,7.562,7.434,
-7.312,7.195,7.084,6.981,6.887,6.801,6.724,6.655,6.596,6.545,6.503,6.468,6.440,6.418,6.402,6.391,
-6.383,6.377,6.374,6.371,6.369,6.365,6.360,6.353,6.343,6.330,6.314,6.293,6.269,6.240,6.207,6.170,
-6.129,6.084,6.036,5.984,5.929,5.871,5.812,5.750,5.688,5.624,5.561,5.497,5.435,5.375,5.317,5.261,
-5.210,5.163,5.121,5.086,5.057,5.035,5.022,5.018,5.023,5.039,5.066,5.104,5.153,5.214,5.287,5.372,
-5.468,5.575,5.693,5.820,5.956,6.100,6.250,6.404,6.562,6.722,6.881,7.038,7.191,7.338,7.477,7.607,
-7.725,7.831,7.923,7.999,8.059,8.102,8.127,8.135,8.124,8.097,8.052,7.991,7.915,7.825,7.723,7.610,
-7.489,7.360,7.227,7.090,6.953,6.816,6.681,6.551,6.427,6.310,6.202,6.103,6.014,5.935,5.868,5.811,
-5.764,5.728,5.701,5.683,5.673,5.669,5.671,5.676,5.685,5.695,5.705,5.714,5.721,5.725,5.725,5.720,
-5.710,5.694,5.672,5.644,5.609,5.568,5.522,5.471,5.415,5.355,5.291,5.225,5.158,5.089,5.021,4.953,
-4.886,4.821,4.759,4.700,4.644,4.591,4.543,4.498,4.457,4.420,4.387,4.357,4.330,4.307,4.286,4.267,
-4.250,4.236,4.222,4.210,4.199,4.188,4.179,4.170,4.163,4.156,4.150,4.145,4.141,4.139,4.138,4.140,
-4.143,4.149,4.156,4.167,4.180,4.195,4.212,4.232,4.254,4.278,4.304,4.331,4.359,4.388,4.417,4.446,
-4.475,4.502,4.528,4.553,4.575,4.596,4.614,4.629,4.643,4.653,4.661,4.667,4.671,4.673,4.674,4.674,
-4.673,4.672,4.672,4.672,4.674,4.678,4.684,4.692,4.704,4.719,4.737,4.760,4.786,4.815,4.849,4.886,
-4.927,4.970,5.017,5.066,5.117,5.169,5.223,5.276,5.330,5.383,5.435,5.486,5.534,5.581,5.624,5.664,
-5.701,5.734,5.764,5.790,5.813,5.832,5.847,5.859,5.868,5.875,5.879,5.881,5.881,5.880,5.878,5.875,
-5.873,5.870,5.868,5.866,5.865,5.866,5.868,5.872,5.877,5.884,5.892,5.902,5.914,5.927,5.942,5.958,
-5.975,5.993,6.012,6.032,6.052,6.072,6.093,6.113,6.134,6.155,6.175,6.196,6.216,6.236,6.256,6.276,
-6.296,6.316,6.337,6.357,6.378,6.400,6.421,6.444,6.466,6.489,6.513,6.537,6.561,6.585,6.609,6.634,
-6.657,6.680,6.703,6.724,6.745,6.764,6.782,6.798,6.812,6.824,6.834,6.843,6.849,6.854,6.856,6.857,
-6.856,6.854,6.851,6.847,6.842,6.836,6.831,6.826,6.821,6.816,6.813,6.811,6.810,6.810,6.812,6.815,
-6.820,6.827,6.834,6.843,6.853,6.864,6.876,6.888,6.900,6.912,6.924,6.935,6.946,6.955,6.964,6.971,
-6.977,6.981,6.984,6.986,6.987,6.986,6.985,6.983,6.980,6.978,6.975,6.972,6.970,6.969,6.968,6.969,
-6.970,6.973,6.978,6.983,6.990,6.997,7.006,7.016,7.026,7.036,7.046,7.056,7.065,7.073,7.080,7.084,
-7.087,7.088,7.086,7.082,7.075,7.065,7.052,7.037,7.020,7.000,6.978,6.954,6.929,6.903,6.876,6.849,
-6.823,6.797,6.773,6.750,6.729,6.710,6.694,6.681,6.671,6.664,6.660,6.660,6.662,6.668,6.677,6.688,
-6.701,6.717,6.734,6.753,6.773,6.793,6.814,6.835,6.855,6.875,6.894,6.913,6.930,6.946,6.961,6.974,
-6.987,6.998,7.009,7.019,7.028,7.037,7.047,7.056,7.067,7.078,7.090,7.103,7.118,7.134,7.153,7.173,
-7.195,7.218,7.244,7.272,7.301,7.331,7.364,7.397,7.431,7.466,7.502,7.538,7.574,7.610,7.646,7.681,
-7.716,7.751,7.784,7.817,7.849,7.880,7.911,7.941,7.970,7.998,8.026,8.054,8.082,8.109,8.136,8.163,
-8.190,8.218,8.245,8.273,8.301,8.329,8.358,8.387,8.416,8.446,8.476,8.506,8.537,8.568,8.599,8.631,
-8.664,8.697,8.731,8.766,8.802,8.839,8.877,8.917,8.958,9.000,9.045,9.091,9.139,9.188,9.240,9.293,
-9.347,9.403,9.460,9.519,9.577,9.637,9.696,9.755,9.814,9.872,9.929,9.984,10.038,10.090,10.140,10.188,
-10.235,10.279,10.321,10.361,10.400,10.437,10.474,10.510,10.546,10.583,10.620,10.659,10.699,10.742,10.787,10.835,
-10.887,10.941,10.999,11.061,11.126,11.194,11.266,11.340,11.417,11.495,11.576,11.656,11.738,11.819,11.899,11.978,
-12.055,12.129,12.201,12.270,12.336,12.398,12.456,12.512,12.564,12.613,12.659,12.704,12.747,12.789,12.830,12.872,
-12.915,12.959,13.006,13.055,13.108,13.165,13.226,13.291,13.362,13.437,13.517,13.601,13.691,13.784,13.881,13.982,
-14.086,14.192,14.300,14.410,14.520,14.630,14.739,14.848,14.956,15.062,15.166,15.268,15.367,15.464,15.559,15.651,
-15.740,15.828,15.914,15.998,16.080,16.161,16.241,16.321,16.399,16.478,16.556,16.635,16.713,16.791,16.870,16.949,
-17.027,17.106,17.184,17.262,17.339,17.415,17.490,17.565,17.638,17.709,17.779,17.848,17.915,17.980,18.044,18.106,
-18.167,18.226,18.284,18.340,18.396,18.451,18.505,18.558,18.610,18.662,18.713,18.764,18.814,18.863,18.912,18.960,
-19.007,19.053,19.098,19.141,19.183,19.224,19.263,19.301,19.337,19.371,19.404,19.436,19.467,19.497,19.526,19.555,
-19.585,19.615,19.646,19.678,19.712,19.749,19.788,19.829,19.875,19.923,19.975,20.031,20.090,20.153,20.220,20.290,
-20.362,20.438,20.515,20.594,20.674,20.755,20.836,20.916,20.994,21.071,21.146,21.218,21.287,21.352,21.414,21.471,
-21.525,21.575,21.622,21.664,21.704,21.741,21.775,21.808,21.839,21.870,21.900,21.931,21.963,21.996,22.032,22.069,
-22.110,22.153,22.200,22.250,22.304,22.361,22.421,22.485,22.551,22.620,22.691,22.764,22.838,22.913,22.988,23.063,
-23.138,23.213,23.286,23.358,23.429,23.498,23.565,23.631,23.695,23.757,23.819,23.878,23.937,23.995,24.053,24.110,
-24.167,24.224,24.281,24.339,24.398,24.456,24.516,24.575,24.635,24.696,24.756,24.815,24.874,24.933,24.989,25.045,
-25.098,25.149,25.198,25.244,25.287,25.327,25.364,25.398,25.430,25.458,25.484,25.508,25.530,25.551,25.571,25.590,
-25.610,25.629,25.650,25.673,25.697,25.724,25.753,25.786,25.822,25.861,25.903,25.949,25.999,26.051,26.107,26.165,
-26.225,26.287,26.350,26.414,26.479,26.543,26.606,26.668,26.728,26.787,26.843,26.896,26.946,26.993,27.036,27.077,
-27.114,27.148,27.179,27.208,27.234,27.258,27.280,27.301,27.320,27.338,27.356,27.374,27.391,27.409,27.426,27.444,
-27.462,27.479,27.497,27.514,27.530,27.545,27.559,27.571,27.580,27.587,27.591,27.591,27.588,27.580,27.567,27.550,
-27.527,27.499,27.466,27.428,27.385,27.337,27.284,27.227,27.165,27.100,27.033,26.962,26.890,26.816,26.741,26.666,
-26.591,26.517,26.443,26.372,26.302,26.235,26.170,26.108,26.049,25.994,25.941,25.891,25.845,25.802,25.763,25.726,
-25.693,25.663,25.636,25.612,25.592,25.575,25.561,25.551,25.545,25.543,25.546,25.553,25.565,25.582,25.605,25.634,
-25.669,25.711,25.760,25.815,25.877,25.946,26.022,26.105,26.193,26.288,26.389,26.494,26.603,26.716,26.832,26.949,
-27.067,27.185,27.302,27.417,27.528,27.635,27.738,27.834,27.924,28.006,28.081,28.148,28.205,28.254,28.294,28.326,
-28.349,28.363,28.370,28.369,28.361,28.347,28.328,28.305,28.278,28.247,28.215,28.181,28.147,28.112,28.079,28.046,
-28.015,27.986,27.958,27.934,27.911,27.891,27.873,27.857,27.843,27.830,27.818,28.114,28.103,28.093,28.086,28.079,
-28.074,28.068,28.062,28.055,28.047,28.036,28.023,28.007,27.987,27.964,27.937,27.906,27.870,27.831,27.788,27.741,
-27.690,27.637,27.580,27.522,27.461,27.399,27.337,27.274,27.211,27.149,27.088,27.029,26.972,26.918,26.866,26.818,
-26.773,26.731,26.693,26.658,26.626,26.598,26.573,26.550,26.530,26.512,26.496,26.481,26.467,26.453,26.439,26.425,
-26.411,26.395,26.378,26.358,26.337,26.314,26.288,26.260,26.229,26.195,26.159,26.120,26.078,26.034,25.988,25.940,
-25.891,25.839,25.787,25.733,25.679,25.624,25.569,25.513,25.458,25.403,25.349,25.295,25.242,25.190,25.138,25.088,
-25.038,24.990,24.942,24.895,24.849,24.803,24.758,24.713,24.668,24.622,24.576,24.530,24.482,24.433,24.383,24.331,
-24.277,24.221,24.162,24.101,24.037,23.970,23.900,23.827,23.751,23.672,23.590,23.506,23.419,23.330,23.239,23.147,
-23.053,22.959,22.865,22.771,22.678,22.586,22.496,22.408,22.322,22.239,22.159,22.082,22.008,21.938,21.870,21.806,
-21.745,21.686,21.629,21.574,21.520,21.467,21.414,21.361,21.306,21.250,21.191,21.131,21.067,20.999,20.929,20.854,
-20.776,20.694,20.608,20.519,20.427,20.332,20.235,20.137,20.037,19.937,19.837,19.738,19.640,19.543,19.449,19.357,
-19.267,19.181,19.097,19.015,18.937,18.860,18.786,18.713,18.640,18.568,18.496,18.424,18.349,18.273,18.195,18.113,
-18.029,17.941,17.850,17.755,17.656,17.555,17.450,17.343,17.234,17.124,17.013,16.903,16.793,16.685,16.579,16.477,
-16.378,16.284,16.195,16.110,16.032,15.959,15.892,15.830,15.774,15.723,15.677,15.635,15.597,15.562,15.530,15.499,
-15.470,15.442,15.413,15.384,15.355,15.323,15.291,15.256,15.220,15.182,15.142,15.100,15.056,15.011,14.964,14.917,
-14.869,14.820,14.771,14.722,14.673,14.624,14.576,14.528,14.480,14.432,14.384,14.336,14.287,14.238,14.188,14.137,
-14.084,14.030,13.973,13.915,13.854,13.792,13.727,13.660,13.591,13.520,13.447,13.373,13.298,13.222,13.145,13.068,
-12.992,12.916,12.841,12.766,12.693,12.622,12.551,12.483,12.415,12.350,12.285,12.222,12.161,12.100,12.039,11.980,
-11.920,11.861,11.802,11.742,11.682,11.622,11.561,11.500,11.438,11.376,11.313,11.250,11.188,11.125,11.063,11.001,
-10.939,10.878,10.818,10.758,10.699,10.641,10.584,10.526,10.469,10.412,10.355,10.297,10.238,10.178,10.116,10.052,
-9.987,9.919,9.848,9.775,9.698,9.620,9.538,9.454,9.368,9.279,9.189,9.098,9.007,8.915,8.823,8.733,
-8.644,8.558,8.475,8.395,8.318,8.247,8.179,8.117,8.060,8.008,7.962,7.921,7.884,7.853,7.826,7.802,
-7.783,7.766,7.752,7.739,7.728,7.718,7.707,7.697,7.685,7.672,7.658,7.642,7.624,7.604,7.582,7.558,
-7.533,7.505,7.477,7.448,7.418,7.388,7.359,7.331,7.304,7.280,7.257,7.237,7.221,7.207,7.197,7.190,
-7.187,7.188,7.191,7.198,7.208,7.220,7.234,7.249,7.265,7.282,7.299,7.315,7.330,7.344,7.356,7.365,
-7.372,7.376,7.377,7.376,7.372,7.365,7.356,7.345,7.333,7.320,7.306,7.293,7.280,7.269,7.261,7.254,
-7.251,7.252,7.257,7.266,7.280,7.299,7.322,7.349,7.381,7.417,7.455,7.496,7.539,7.583,7.627,7.670,
-7.711,7.750,7.785,7.816,7.841,7.861,7.874,7.880,7.880,7.872,7.858,7.836,7.809,7.776,7.738,7.696,
-7.651,7.605,7.558,7.511,7.467,7.426,7.390,7.359,7.336,7.319,7.311,7.312,7.323,7.342,7.371,7.409,
-7.456,7.510,7.571,7.637,7.708,7.781,7.856,7.930,8.002,8.071,8.134,8.190,8.239,8.277,8.306,8.322,
-8.327,8.319,8.298,8.264,8.218,8.160,8.090,8.010,7.920,7.823,7.719,7.609,7.495,7.379,7.263,7.146,
-7.032,6.920,6.813,6.711,6.616,6.526,6.444,6.369,6.302,6.242,6.190,6.144,6.104,6.071,6.042,6.019,
-5.998,5.981,5.966,5.953,5.941,5.928,5.916,5.903,5.888,5.873,5.855,5.835,5.814,5.790,5.764,5.737,
-5.706,5.674,5.640,5.604,5.566,5.526,5.485,5.442,5.397,5.351,5.303,5.254,5.205,5.154,5.103,5.052,
-5.001,4.951,4.903,4.857,4.814,4.776,4.742,4.714,4.694,4.682,4.678,4.685,4.704,4.734,4.777,4.833,
-4.903,4.986,5.083,5.194,5.318,5.453,5.600,5.756,5.920,6.090,6.265,6.442,6.619,6.793,6.963,7.125,
-7.278,7.418,7.545,7.656,7.749,7.823,7.877,7.909,7.921,7.910,7.878,7.826,7.753,7.662,7.553,7.429,
-7.291,7.143,6.985,6.821,6.653,6.484,6.315,6.149,5.989,5.836,5.692,5.558,5.437,5.327,5.231,5.149,
-5.080,5.025,4.982,4.951,4.932,4.923,4.922,4.929,4.942,4.959,4.979,5.000,5.022,5.042,5.060,5.074,
-5.084,5.089,5.088,5.082,5.069,5.051,5.027,4.998,4.964,4.925,4.883,4.837,4.790,4.740,4.690,4.640,
-4.591,4.542,4.496,4.451,4.409,4.369,4.333,4.299,4.268,4.239,4.213,4.190,4.168,4.148,4.129,4.112,
-4.096,4.080,4.064,4.049,4.034,4.019,4.004,3.990,3.976,3.962,3.950,3.938,3.928,3.920,3.914,3.910,
-3.908,3.910,3.914,3.922,3.933,3.947,3.964,3.983,4.006,4.031,4.058,4.087,4.116,4.147,4.178,4.209,
-4.238,4.267,4.294,4.319,4.342,4.363,4.380,4.395,4.407,4.416,4.422,4.426,4.429,4.429,4.428,4.426,
-4.424,4.422,4.421,4.421,4.423,4.428,4.435,4.445,4.459,4.476,4.497,4.522,4.552,4.585,4.621,4.661,
-4.705,4.751,4.799,4.849,4.901,4.953,5.006,5.058,5.109,5.158,5.206,5.251,5.293,5.331,5.366,5.397,
-5.423,5.446,5.463,5.477,5.486,5.491,5.492,5.489,5.483,5.473,5.461,5.447,5.431,5.414,5.396,5.377,
-5.359,5.340,5.323,5.307,5.293,5.280,5.270,5.262,5.256,5.254,5.254,5.257,5.262,5.271,5.282,5.295,
-5.311,5.329,5.350,5.372,5.395,5.420,5.446,5.472,5.499,5.527,5.555,5.583,5.610,5.638,5.665,5.692,
-5.718,5.743,5.768,5.793,5.816,5.840,5.862,5.884,5.906,5.927,5.947,5.967,5.987,6.005,6.023,6.040,
-6.057,6.072,6.086,6.099,6.111,6.121,6.130,6.137,6.142,6.146,6.148,6.148,6.147,6.144,6.139,6.133,
-6.127,6.119,6.111,6.102,6.093,6.085,6.077,6.071,6.065,6.061,6.059,6.059,6.062,6.066,6.073,6.082,
-6.094,6.108,6.124,6.142,6.161,6.182,6.204,6.226,6.249,6.271,6.293,6.314,6.333,6.350,6.366,6.379,
-6.389,6.397,6.403,6.405,6.405,6.403,6.398,6.391,6.382,6.372,6.360,6.348,6.335,6.322,6.310,6.298,
-6.287,6.277,6.268,6.261,6.255,6.250,6.247,6.245,6.244,6.244,6.245,6.246,6.246,6.247,6.246,6.244,
-6.241,6.236,6.229,6.219,6.207,6.193,6.176,6.157,6.135,6.111,6.085,6.058,6.030,6.001,5.971,5.942,
-5.914,5.887,5.861,5.838,5.817,5.800,5.785,5.775,5.768,5.765,5.767,5.772,5.781,5.794,5.811,5.831,
-5.853,5.878,5.905,5.934,5.963,5.993,6.023,6.053,6.082,6.110,6.136,6.161,6.184,6.205,6.223,6.240,
-6.254,6.267,6.277,6.287,6.295,6.303,6.310,6.317,6.324,6.333,6.342,6.353,6.366,6.381,6.399,6.418,
-6.441,6.467,6.495,6.526,6.559,6.595,6.633,6.672,6.713,6.756,6.799,6.843,6.886,6.930,6.972,7.014,
-7.054,7.093,7.130,7.165,7.198,7.229,7.257,7.284,7.308,7.331,7.352,7.371,7.389,7.406,7.422,7.438,
-7.453,7.469,7.484,7.501,7.518,7.535,7.554,7.574,7.596,7.619,7.643,7.669,7.697,7.726,7.756,7.789,
-7.823,7.858,7.895,7.934,7.974,8.017,8.060,8.106,8.153,8.201,8.251,8.303,8.357,8.411,8.467,8.524,
-8.583,8.642,8.701,8.761,8.821,8.880,8.939,8.997,9.053,9.108,9.160,9.211,9.258,9.303,9.346,9.385,
-9.421,9.454,9.485,9.513,9.539,9.564,9.587,9.609,9.632,9.654,9.678,9.704,9.733,9.764,9.799,9.838,
-9.881,9.930,9.984,10.042,10.106,10.176,10.250,10.329,10.412,10.499,10.589,10.681,10.776,10.871,10.967,11.063,
-11.158,11.251,11.343,11.432,11.519,11.603,11.684,11.762,11.838,11.912,11.984,12.055,12.125,12.194,12.265,12.337,
-12.411,12.487,12.567,12.651,12.738,12.831,12.928,13.030,13.137,13.248,13.364,13.484,13.607,13.733,13.862,13.992,
-14.122,14.252,14.382,14.510,14.635,14.758,14.878,14.993,15.105,15.213,15.317,15.417,15.513,15.605,15.695,15.782,
-15.867,15.950,16.033,16.115,16.198,16.281,16.365,16.451,16.538,16.627,16.718,16.811,16.905,17.000,17.096,17.192,
-17.288,17.382,17.474,17.564,17.651,17.734,17.813,17.886,17.954,18.017,18.073,18.123,18.168,18.206,18.239,18.267,
-18.290,18.310,18.326,18.339,18.350,18.360,18.370,18.380,18.392,18.404,18.420,18.437,18.458,18.482,18.509,18.540,
-18.574,18.611,18.650,18.692,18.735,18.780,18.826,18.872,18.918,18.963,19.007,19.049,19.090,19.128,19.165,19.199,
-19.230,19.260,19.287,19.313,19.338,19.362,19.385,19.409,19.433,19.459,19.486,19.515,19.547,19.582,19.619,19.660,
-19.704,19.752,19.802,19.856,19.912,19.971,20.031,20.093,20.156,20.219,20.282,20.344,20.405,20.464,20.521,20.576,
-20.627,20.676,20.722,20.764,20.804,20.840,20.874,20.905,20.935,20.962,20.989,21.015,21.040,21.066,21.093,21.120,
-21.150,21.181,21.214,21.250,21.289,21.330,21.373,21.420,21.468,21.519,21.572,21.627,21.683,21.740,21.798,21.857,
-21.915,21.974,22.032,22.090,22.148,22.204,22.260,22.316,22.371,22.425,22.480,22.534,22.590,22.645,22.702,22.760,
-22.820,22.881,22.945,23.010,23.078,23.148,23.221,23.295,23.372,23.451,23.531,23.613,23.696,23.780,23.864,23.948,
-24.032,24.116,24.198,24.280,24.360,24.439,24.516,24.592,24.667,24.740,24.812,24.884,24.955,25.026,25.098,25.170,
-25.244,25.319,25.396,25.476,25.558,25.643,25.732,25.824,25.919,26.018,26.120,26.224,26.332,26.441,26.552,26.665,
-26.778,26.891,27.003,27.114,27.224,27.330,27.434,27.533,27.629,27.720,27.806,27.887,27.963,28.033,28.098,28.158,
-28.214,28.264,28.310,28.353,28.392,28.428,28.462,28.493,28.524,28.553,28.582,28.610,28.638,28.667,28.695,28.724,
-28.753,28.782,28.811,28.839,28.866,28.892,28.916,28.937,28.955,28.970,28.980,28.986,28.986,28.981,28.969,28.952,
-28.927,28.896,28.859,28.814,28.764,28.707,28.644,28.576,28.503,28.425,28.344,28.261,28.174,28.087,27.998,27.909,
-27.821,27.733,27.648,27.564,27.482,27.403,27.326,27.253,27.182,27.115,27.050,26.987,26.927,26.869,26.813,26.757,
-26.704,26.651,26.598,26.546,26.494,26.443,26.392,26.341,26.292,26.243,26.195,26.150,26.107,26.068,26.032,26.001,
-25.976,25.956,25.944,25.940,25.944,25.957,25.980,26.012,26.055,26.108,26.172,26.245,26.329,26.422,26.524,26.633,
-26.750,26.873,27.000,27.131,27.264,27.398,27.532,27.664,27.793,27.917,28.035,28.147,28.251,28.346,28.432,28.507,
-28.573,28.627,28.671,28.705,28.727,28.740,28.744,28.739,28.725,28.705,28.679,28.647,28.611,28.572,28.530,28.488,
-28.445,28.402,28.361,28.321,28.284,28.250,28.219,28.191,28.167,28.146,28.129,28.114,28.477,28.444,28.414,28.386,
-28.361,28.337,28.315,28.295,28.276,28.257,28.238,28.219,28.200,28.179,28.156,28.131,28.104,28.074,28.041,28.005,
-27.965,27.923,27.878,27.829,27.779,27.726,27.671,27.616,27.559,27.503,27.447,27.393,27.340,27.290,27.244,27.201,
-27.162,27.127,27.098,27.074,27.055,27.042,27.033,27.030,27.031,27.037,27.046,27.058,27.072,27.088,27.104,27.120,
-27.135,27.148,27.158,27.164,27.167,27.164,27.156,27.141,27.120,27.093,27.059,27.017,26.970,26.915,26.855,26.789,
-26.717,26.641,26.560,26.477,26.390,26.301,26.211,26.120,26.028,25.937,25.848,25.759,25.672,25.588,25.506,25.426,
-25.349,25.275,25.204,25.135,25.069,25.005,24.943,24.882,24.823,24.765,24.708,24.651,24.594,24.536,24.478,24.418,
-24.357,24.294,24.229,24.162,24.092,24.020,23.945,23.867,23.787,23.704,23.618,23.529,23.439,23.346,23.251,23.155,
-23.058,22.960,22.862,22.764,22.666,22.569,22.474,22.381,22.289,22.200,22.114,22.031,21.950,21.873,21.799,21.727,
-21.659,21.592,21.528,21.465,21.404,21.343,21.283,21.221,21.159,21.095,21.029,20.961,20.889,20.815,20.736,20.654,
-20.569,20.479,20.387,20.291,20.193,20.093,19.991,19.888,19.785,19.683,19.581,19.482,19.385,19.291,19.200,19.114,
-19.031,18.952,18.877,18.806,18.738,18.673,18.610,18.549,18.488,18.428,18.366,18.302,18.236,18.166,18.091,18.012,
-17.928,17.838,17.742,17.641,17.534,17.422,17.307,17.187,17.066,16.942,16.819,16.696,16.576,16.459,16.346,16.240,
-16.140,16.048,15.965,15.890,15.825,15.769,15.723,15.686,15.657,15.637,15.624,15.618,15.616,15.620,15.626,15.634,
-15.643,15.652,15.660,15.666,15.669,15.669,15.666,15.659,15.647,15.632,15.614,15.592,15.567,15.540,15.511,15.481,
-15.450,15.418,15.387,15.357,15.327,15.299,15.271,15.244,15.217,15.190,15.163,15.135,15.105,15.072,15.036,14.995,
-14.950,14.898,14.841,14.776,14.705,14.625,14.538,14.444,14.342,14.233,14.117,13.996,13.870,13.739,13.606,13.470,
-13.334,13.197,13.062,12.928,12.798,12.672,12.549,12.433,12.321,12.215,12.116,12.022,11.934,11.852,11.775,11.703,
-11.635,11.572,11.511,11.453,11.398,11.344,11.291,11.238,11.186,11.134,11.081,11.028,10.974,10.919,10.864,10.807,
-10.750,10.693,10.635,10.577,10.519,10.460,10.402,10.343,10.284,10.225,10.166,10.106,10.046,9.984,9.922,9.858,
-9.792,9.725,9.655,9.583,9.508,9.430,9.349,9.265,9.178,9.089,8.997,8.902,8.806,8.707,8.608,8.507,
-8.406,8.306,8.206,8.107,8.011,7.916,7.825,7.736,7.652,7.571,7.495,7.423,7.356,7.293,7.236,7.183,
-7.135,7.091,7.052,7.016,6.985,6.957,6.932,6.910,6.891,6.873,6.858,6.844,6.832,6.820,6.810,6.800,
-6.791,6.782,6.774,6.766,6.758,6.751,6.744,6.737,6.731,6.726,6.721,6.717,6.714,6.712,6.711,6.711,
-6.711,6.713,6.716,6.720,6.724,6.729,6.735,6.741,6.747,6.752,6.758,6.763,6.766,6.769,6.770,6.770,
-6.768,6.764,6.758,6.750,6.740,6.727,6.713,6.697,6.679,6.660,6.641,6.621,6.600,6.581,6.562,6.545,
-6.530,6.518,6.509,6.503,6.502,6.505,6.513,6.525,6.543,6.565,6.592,6.623,6.658,6.697,6.739,6.783,
-6.828,6.873,6.918,6.962,7.003,7.040,7.074,7.103,7.126,7.142,7.152,7.155,7.150,7.139,7.120,7.095,
-7.063,7.027,6.986,6.941,6.895,6.847,6.800,6.755,6.712,6.674,6.642,6.615,6.597,6.587,6.585,6.593,
-6.610,6.637,6.672,6.716,6.768,6.826,6.890,6.958,7.029,7.101,7.172,7.241,7.306,7.365,7.418,7.462,
-7.497,7.521,7.534,7.535,7.523,7.500,7.464,7.416,7.357,7.288,7.209,7.122,7.029,6.930,6.827,6.721,
-6.614,6.507,6.401,6.298,6.199,6.104,6.014,5.931,5.853,5.782,5.717,5.659,5.607,5.561,5.521,5.485,
-5.454,5.427,5.403,5.381,5.362,5.345,5.329,5.313,5.299,5.284,5.270,5.256,5.242,5.227,5.213,5.198,
-5.183,5.167,5.151,5.135,5.117,5.098,5.078,5.057,5.033,5.008,4.980,4.949,4.915,4.878,4.838,4.795,
-4.749,4.701,4.650,4.599,4.547,4.495,4.445,4.399,4.357,4.321,4.292,4.273,4.264,4.267,4.283,4.315,
-4.362,4.425,4.505,4.602,4.716,4.846,4.992,5.152,5.325,5.509,5.701,5.900,6.102,6.305,6.505,6.701,
-6.888,7.063,7.225,7.370,7.496,7.601,7.683,7.741,7.773,7.780,7.761,7.716,7.647,7.554,7.440,7.305,
-7.153,6.985,6.805,6.616,6.420,6.220,6.019,5.820,5.626,5.439,5.262,5.095,4.942,4.802,4.678,4.570,
-4.477,4.400,4.339,4.292,4.260,4.240,4.231,4.233,4.242,4.258,4.280,4.305,4.331,4.358,4.385,4.409,
-4.430,4.448,4.461,4.469,4.473,4.471,4.464,4.453,4.437,4.417,4.394,4.368,4.341,4.311,4.281,4.251,
-4.222,4.193,4.165,4.139,4.114,4.092,4.071,4.052,4.035,4.019,4.005,3.992,3.979,3.967,3.955,3.943,
-3.931,3.918,3.904,3.890,3.875,3.859,3.843,3.826,3.810,3.794,3.778,3.764,3.751,3.739,3.730,3.723,
-3.719,3.718,3.720,3.725,3.734,3.745,3.760,3.778,3.798,3.820,3.845,3.870,3.897,3.924,3.951,3.977,
-4.003,4.027,4.049,4.069,4.087,4.102,4.114,4.124,4.132,4.137,4.140,4.142,4.142,4.141,4.140,4.139,
-4.138,4.139,4.141,4.146,4.153,4.163,4.176,4.193,4.214,4.238,4.266,4.297,4.332,4.371,4.412,4.456,
-4.502,4.550,4.599,4.648,4.698,4.747,4.796,4.843,4.888,4.931,4.971,5.007,5.041,5.071,5.097,5.119,
-5.137,5.150,5.160,5.166,5.168,5.167,5.162,5.153,5.142,5.129,5.113,5.095,5.075,5.054,5.033,5.010,
-4.988,4.965,4.944,4.923,4.903,4.884,4.867,4.852,4.840,4.829,4.821,4.816,4.813,4.813,4.815,4.820,
-4.828,4.838,4.851,4.866,4.883,4.902,4.922,4.944,4.967,4.990,5.014,5.039,5.064,5.088,5.112,5.136,
-5.159,5.181,5.202,5.223,5.242,5.261,5.278,5.295,5.310,5.325,5.339,5.352,5.365,5.377,5.388,5.399,
-5.410,5.419,5.428,5.437,5.445,5.452,5.458,5.463,5.467,5.469,5.471,5.471,5.470,5.468,5.464,5.459,
-5.452,5.445,5.436,5.427,5.418,5.408,5.398,5.389,5.381,5.374,5.368,5.363,5.361,5.361,5.364,5.368,
-5.376,5.386,5.399,5.415,5.432,5.452,5.474,5.498,5.522,5.548,5.574,5.600,5.625,5.649,5.673,5.694,
-5.714,5.731,5.746,5.758,5.768,5.774,5.778,5.780,5.779,5.776,5.770,5.763,5.755,5.745,5.734,5.723,
-5.711,5.699,5.688,5.676,5.665,5.654,5.644,5.634,5.624,5.614,5.603,5.593,5.581,5.569,5.555,5.540,
-5.524,5.505,5.484,5.461,5.436,5.408,5.378,5.347,5.313,5.277,5.240,5.203,5.165,5.126,5.088,5.052,
-5.016,4.983,4.952,4.924,4.899,4.878,4.862,4.849,4.842,4.839,4.840,4.847,4.857,4.873,4.892,4.915,
-4.942,4.972,5.004,5.038,5.074,5.111,5.149,5.186,5.223,5.260,5.295,5.328,5.360,5.390,5.418,5.443,
-5.467,5.488,5.507,5.525,5.540,5.555,5.569,5.582,5.595,5.609,5.623,5.638,5.654,5.672,5.692,5.715,
-5.740,5.767,5.798,5.831,5.866,5.904,5.945,5.987,6.032,6.077,6.124,6.172,6.219,6.267,6.314,6.360,
-6.404,6.447,6.488,6.526,6.562,6.595,6.625,6.652,6.676,6.698,6.717,6.734,6.749,6.762,6.773,6.783,
-6.793,6.802,6.812,6.821,6.831,6.843,6.855,6.870,6.885,6.903,6.923,6.945,6.969,6.995,7.024,7.054,
-7.086,7.121,7.157,7.195,7.234,7.275,7.317,7.361,7.406,7.452,7.499,7.548,7.597,7.647,7.698,7.749,
-7.802,7.855,7.908,7.961,8.015,8.068,8.122,8.174,8.226,8.277,8.327,8.375,8.421,8.466,8.509,8.550,
-8.589,8.626,8.661,8.695,8.728,8.759,8.790,8.822,8.853,8.886,8.921,8.958,8.998,9.042,9.090,9.142,
-9.200,9.262,9.331,9.405,9.485,9.571,9.662,9.757,9.858,9.962,10.070,10.180,10.292,10.405,10.518,10.631,
-10.743,10.853,10.961,11.065,11.167,11.266,11.362,11.455,11.545,11.633,11.719,11.804,11.889,11.974,12.061,12.149,
-12.240,12.334,12.433,12.536,12.644,12.757,12.874,12.997,13.125,13.257,13.393,13.531,13.671,13.812,13.954,14.094,
-14.232,14.367,14.497,14.623,14.742,14.856,14.962,15.061,15.153,15.238,15.317,15.389,15.456,15.518,15.577,15.633,
-15.687,15.741,15.796,15.852,15.911,15.974,16.041,16.113,16.190,16.273,16.360,16.453,16.550,16.651,16.755,16.861,
-16.968,17.075,17.181,17.284,17.384,17.479,17.569,17.652,17.728,17.796,17.856,17.909,17.953,17.990,18.019,18.042,
-18.060,18.073,18.083,18.090,18.097,18.104,18.112,18.124,18.139,18.158,18.184,18.215,18.253,18.298,18.351,18.410,
-18.475,18.547,18.624,18.706,18.792,18.880,18.970,19.061,19.151,19.240,19.326,19.409,19.487,19.560,19.628,19.689,
-19.744,19.792,19.834,19.869,19.898,19.921,19.939,19.952,19.961,19.966,19.968,19.968,19.967,19.965,19.963,19.961,
-19.959,19.959,19.960,19.962,19.966,19.972,19.979,19.988,19.997,20.008,20.019,20.030,20.042,20.053,20.063,20.073,
-20.081,20.089,20.095,20.100,20.104,20.107,20.109,20.110,20.111,20.112,20.113,20.115,20.117,20.122,20.128,20.136,
-20.146,20.159,20.174,20.193,20.214,20.238,20.265,20.294,20.326,20.360,20.396,20.433,20.472,20.512,20.552,20.593,
-20.634,20.675,20.716,20.757,20.797,20.837,20.878,20.918,20.959,21.001,21.044,21.088,21.135,21.184,21.235,21.290,
-21.349,21.412,21.479,21.551,21.627,21.708,21.794,21.885,21.980,22.079,22.183,22.291,22.401,22.515,22.630,22.748,
-22.867,22.987,23.107,23.227,23.347,23.467,23.585,23.703,23.820,23.936,24.051,24.165,24.279,24.392,24.506,24.621,
-24.737,24.853,24.972,25.093,25.216,25.342,25.471,25.603,25.738,25.877,26.018,26.162,26.308,26.457,26.607,26.758,
-26.910,27.062,27.214,27.364,27.512,27.658,27.801,27.940,28.075,28.205,28.331,28.451,28.566,28.675,28.779,28.877,
-28.970,29.057,29.140,29.218,29.291,29.360,29.425,29.487,29.545,29.601,29.654,29.704,29.752,29.798,29.841,29.881,
-29.920,29.955,29.987,30.016,30.042,30.063,30.080,30.092,30.098,30.099,30.093,30.082,30.063,30.038,30.005,29.966,
-29.919,29.866,29.806,29.740,29.669,29.592,29.510,29.425,29.337,29.246,29.154,29.062,28.971,28.880,28.792,28.708,
-28.626,28.550,28.478,28.413,28.353,28.299,28.251,28.210,28.175,28.145,28.121,28.102,28.088,28.076,28.068,28.062,
-28.057,28.053,28.048,28.042,28.034,28.023,28.009,27.991,27.970,27.943,27.913,27.878,27.839,27.797,27.751,27.702,
-27.652,27.600,27.548,27.497,27.448,27.402,27.360,27.323,27.292,27.267,27.251,27.243,27.243,27.253,27.273,27.302,
-27.341,27.390,27.447,27.513,27.587,27.668,27.754,27.846,27.941,28.039,28.139,28.238,28.337,28.433,28.526,28.615,
-28.698,28.775,28.844,28.907,28.961,29.006,29.043,29.071,29.090,29.101,29.104,29.099,29.087,29.068,29.043,29.013,
-28.978,28.940,28.899,28.856,28.811,28.766,28.721,28.676,28.632,28.590,28.550,28.513,28.477,28.898,28.827,28.756,
-28.686,28.617,28.551,28.488,28.429,28.373,28.321,28.273,28.230,28.190,28.155,28.124,28.097,28.073,28.053,28.035,
-28.019,28.005,27.993,27.982,27.971,27.962,27.953,27.945,27.937,27.930,27.923,27.918,27.913,27.911,27.910,27.912,
-27.916,27.923,27.933,27.947,27.964,27.984,28.008,28.035,28.064,28.096,28.129,28.163,28.196,28.229,28.259,28.286,
-28.309,28.327,28.338,28.342,28.338,28.324,28.301,28.267,28.223,28.168,28.103,28.026,27.940,27.844,27.740,27.627,
-27.508,27.383,27.253,27.120,26.985,26.849,26.713,26.578,26.446,26.318,26.193,26.074,25.960,25.852,25.749,25.653,
-25.562,25.477,25.398,25.323,25.253,25.187,25.123,25.062,25.003,24.944,24.886,24.828,24.769,24.709,24.646,24.582,
-24.515,24.446,24.374,24.300,24.222,24.142,24.059,23.974,23.887,23.798,23.707,23.614,23.521,23.426,23.331,23.235,
-23.139,23.043,22.948,22.853,22.758,22.665,22.572,22.480,22.390,22.301,22.213,22.126,22.040,21.956,21.872,21.790,
-21.708,21.627,21.546,21.465,21.384,21.303,21.220,21.136,21.051,20.964,20.875,20.784,20.690,20.595,20.496,20.396,
-20.294,20.190,20.085,19.979,19.873,19.767,19.663,19.560,19.460,19.364,19.271,19.184,19.101,19.025,18.955,18.891,
-18.833,18.782,18.737,18.697,18.661,18.630,18.601,18.574,18.548,18.520,18.490,18.457,18.419,18.375,18.323,18.264,
-18.196,18.119,18.033,17.938,17.834,17.721,17.602,17.476,17.346,17.213,17.078,16.944,16.812,16.684,16.562,16.449,
-16.344,16.251,16.170,16.101,16.046,16.005,15.977,15.963,15.962,15.973,15.994,16.024,16.061,16.105,16.153,16.202,
-16.253,16.302,16.348,16.390,16.427,16.458,16.482,16.498,16.508,16.509,16.504,16.493,16.476,16.454,16.429,16.400,
-16.370,16.339,16.308,16.278,16.248,16.221,16.195,16.170,16.147,16.124,16.101,16.077,16.051,16.021,15.986,15.945,
-15.897,15.840,15.774,15.696,15.608,15.507,15.394,15.269,15.132,14.983,14.824,14.655,14.478,14.294,14.105,13.913,
-13.718,13.524,13.332,13.143,12.960,12.783,12.614,12.455,12.304,12.164,12.035,11.916,11.808,11.710,11.621,11.542,
-11.470,11.404,11.345,11.290,11.239,11.190,11.142,11.094,11.046,10.997,10.945,10.891,10.834,10.774,10.711,10.645,
-10.576,10.504,10.430,10.354,10.276,10.197,10.118,10.038,9.958,9.879,9.800,9.722,9.646,9.571,9.497,9.425,
-9.354,9.284,9.215,9.147,9.079,9.012,8.945,8.877,8.809,8.740,8.671,8.600,8.527,8.453,8.378,8.301,
-8.222,8.141,8.058,7.974,7.888,7.801,7.713,7.624,7.534,7.443,7.353,7.262,7.173,7.084,6.997,6.912,
-6.829,6.749,6.673,6.600,6.531,6.467,6.408,6.355,6.307,6.264,6.228,6.198,6.174,6.156,6.143,6.136,
-6.135,6.138,6.145,6.156,6.171,6.187,6.206,6.226,6.246,6.266,6.285,6.302,6.318,6.331,6.341,6.348,
-6.351,6.350,6.346,6.338,6.327,6.312,6.295,6.274,6.252,6.227,6.201,6.174,6.147,6.119,6.092,6.066,
-6.040,6.015,5.992,5.971,5.951,5.932,5.915,5.899,5.885,5.872,5.859,5.848,5.837,5.827,5.817,5.808,
-5.800,5.792,5.785,5.779,5.774,5.770,5.768,5.768,5.771,5.776,5.784,5.795,5.810,5.828,5.849,5.874,
-5.902,5.933,5.966,6.001,6.038,6.076,6.113,6.150,6.185,6.218,6.248,6.274,6.295,6.311,6.322,6.327,
-6.325,6.318,6.304,6.285,6.261,6.233,6.200,6.166,6.130,6.093,6.057,6.024,5.993,5.967,5.947,5.933,
-5.926,5.926,5.935,5.953,5.978,6.012,6.053,6.101,6.155,6.213,6.274,6.338,6.402,6.464,6.524,6.579,
-6.629,6.671,6.705,6.730,6.744,6.747,6.739,6.719,6.688,6.646,6.593,6.531,6.460,6.382,6.297,6.208,
-6.115,6.019,5.923,5.827,5.733,5.642,5.554,5.471,5.393,5.320,5.253,5.192,5.137,5.087,5.043,5.003,
-4.969,4.938,4.910,4.885,4.863,4.843,4.824,4.807,4.790,4.774,4.759,4.744,4.730,4.717,4.704,4.691,
-4.679,4.668,4.657,4.647,4.637,4.626,4.616,4.604,4.591,4.576,4.559,4.540,4.517,4.490,4.459,4.425,
-4.386,4.343,4.296,4.247,4.194,4.141,4.087,4.035,3.985,3.940,3.901,3.870,3.849,3.840,3.844,3.864,
-3.900,3.954,4.026,4.118,4.228,4.357,4.505,4.669,4.848,5.041,5.244,5.456,5.673,5.892,6.110,6.323,
-6.528,6.722,6.900,7.061,7.201,7.318,7.410,7.475,7.512,7.520,7.500,7.452,7.377,7.275,7.149,7.002,
-6.835,6.652,6.455,6.248,6.034,5.816,5.598,5.382,5.172,4.970,4.779,4.600,4.436,4.287,4.154,4.039,
-3.940,3.859,3.794,3.744,3.709,3.687,3.676,3.676,3.684,3.699,3.719,3.743,3.768,3.795,3.820,3.844,
-3.865,3.883,3.897,3.907,3.913,3.915,3.914,3.908,3.900,3.889,3.876,3.862,3.846,3.831,3.816,3.801,
-3.788,3.776,3.766,3.758,3.751,3.747,3.744,3.742,3.742,3.743,3.744,3.745,3.746,3.747,3.747,3.746,
-3.744,3.741,3.736,3.730,3.722,3.713,3.703,3.692,3.681,3.670,3.659,3.648,3.639,3.631,3.625,3.620,
-3.618,3.618,3.621,3.626,3.633,3.643,3.655,3.669,3.684,3.701,3.718,3.736,3.754,3.771,3.787,3.802,
-3.815,3.827,3.836,3.844,3.849,3.851,3.852,3.851,3.848,3.843,3.838,3.833,3.827,3.822,3.818,3.816,
-3.815,3.818,3.823,3.831,3.843,3.859,3.878,3.901,3.928,3.959,3.993,4.030,4.070,4.112,4.156,4.201,
-4.248,4.294,4.341,4.387,4.432,4.475,4.516,4.556,4.592,4.626,4.657,4.686,4.711,4.733,4.752,4.768,
-4.782,4.792,4.800,4.806,4.810,4.811,4.810,4.808,4.804,4.798,4.792,4.783,4.774,4.764,4.752,4.740,
-4.727,4.713,4.699,4.685,4.671,4.656,4.642,4.629,4.615,4.603,4.592,4.582,4.574,4.567,4.562,4.559,
-4.558,4.559,4.562,4.567,4.574,4.583,4.593,4.605,4.617,4.631,4.645,4.660,4.674,4.688,4.702,4.714,
-4.726,4.736,4.745,4.752,4.758,4.762,4.764,4.765,4.765,4.763,4.761,4.758,4.754,4.750,4.747,4.743,
-4.740,4.738,4.736,4.735,4.736,4.737,4.739,4.742,4.746,4.750,4.755,4.760,4.766,4.771,4.776,4.780,
-4.784,4.787,4.789,4.791,4.792,4.792,4.791,4.790,4.788,4.787,4.785,4.784,4.784,4.785,4.787,4.791,
-4.797,4.804,4.814,4.825,4.839,4.855,4.873,4.892,4.913,4.936,4.959,4.983,5.007,5.031,5.055,5.078,
-5.099,5.118,5.136,5.151,5.164,5.174,5.182,5.187,5.189,5.189,5.186,5.181,5.173,5.164,5.153,5.140,
-5.126,5.111,5.095,5.078,5.060,5.042,5.023,5.004,4.984,4.963,4.941,4.919,4.896,4.871,4.845,4.818,
-4.789,4.758,4.726,4.692,4.657,4.620,4.582,4.543,4.503,4.462,4.421,4.380,4.340,4.301,4.263,4.227,
-4.193,4.162,4.134,4.109,4.087,4.070,4.056,4.047,4.042,4.041,4.045,4.053,4.064,4.080,4.099,4.122,
-4.148,4.176,4.207,4.240,4.275,4.312,4.349,4.387,4.425,4.464,4.502,4.540,4.578,4.614,4.650,4.684,
-4.717,4.749,4.780,4.810,4.838,4.865,4.891,4.917,4.941,4.966,4.990,5.014,5.038,5.063,5.088,5.114,
-5.141,5.170,5.200,5.231,5.264,5.298,5.334,5.372,5.411,5.451,5.492,5.534,5.577,5.620,5.662,5.704,
-5.745,5.785,5.823,5.860,5.894,5.925,5.954,5.981,6.004,6.024,6.042,6.056,6.068,6.078,6.085,6.091,
-6.095,6.098,6.100,6.102,6.104,6.107,6.111,6.116,6.123,6.132,6.143,6.156,6.172,6.191,6.212,6.235,
-6.261,6.289,6.320,6.352,6.387,6.422,6.459,6.498,6.537,6.577,6.618,6.659,6.700,6.742,6.784,6.827,
-6.870,6.913,6.956,6.999,7.043,7.088,7.133,7.178,7.224,7.270,7.317,7.364,7.412,7.460,7.510,7.559,
-7.610,7.661,7.713,7.766,7.821,7.877,7.936,7.996,8.059,8.125,8.195,8.268,8.346,8.428,8.516,8.608,
-8.706,8.810,8.919,9.034,9.154,9.279,9.408,9.542,9.679,9.818,9.959,10.101,10.243,10.383,10.522,10.657,
-10.789,10.917,11.040,11.157,11.268,11.373,11.473,11.567,11.656,11.740,11.820,11.897,11.972,12.046,12.120,12.195,
-12.272,12.352,12.435,12.523,12.615,12.713,12.817,12.925,13.038,13.156,13.278,13.402,13.528,13.655,13.781,13.905,
-14.026,14.142,14.253,14.358,14.455,14.544,14.625,14.697,14.761,14.816,14.864,14.905,14.940,14.970,14.996,15.020,
-15.044,15.068,15.095,15.125,15.160,15.201,15.248,15.303,15.366,15.436,15.514,15.599,15.691,15.789,15.892,15.998,
-16.107,16.218,16.328,16.437,16.544,16.647,16.745,16.838,16.925,17.006,17.081,17.149,17.212,17.270,17.323,17.374,
-17.422,17.470,17.518,17.568,17.621,17.679,17.742,17.813,17.890,17.976,18.071,18.175,18.287,18.408,18.537,18.673,
-18.816,18.964,19.116,19.270,19.426,19.582,19.736,19.887,20.033,20.174,20.307,20.433,20.550,20.657,20.755,20.842,
-20.919,20.985,21.041,21.086,21.123,21.150,21.168,21.179,21.182,21.179,21.170,21.155,21.136,21.113,21.086,21.056,
-21.023,20.988,20.950,20.910,20.867,20.823,20.776,20.727,20.676,20.623,20.567,20.510,20.450,20.389,20.325,20.260,
-20.194,20.127,20.059,19.991,19.923,19.856,19.791,19.727,19.666,19.609,19.554,19.504,19.459,19.418,19.382,19.352,
-19.328,19.309,19.296,19.288,19.286,19.289,19.297,19.309,19.324,19.344,19.366,19.390,19.416,19.444,19.472,19.501,
-19.530,19.559,19.588,19.616,19.643,19.671,19.698,19.725,19.753,19.782,19.813,19.845,19.880,19.919,19.962,20.009,
-20.062,20.121,20.186,20.258,20.336,20.423,20.517,20.618,20.727,20.844,20.967,21.098,21.234,21.377,21.524,21.676,
-21.832,21.991,22.153,22.316,22.480,22.645,22.810,22.975,23.139,23.301,23.462,23.622,23.780,23.936,24.090,24.243,
-24.395,24.545,24.695,24.843,24.992,25.140,25.288,25.436,25.585,25.734,25.884,26.035,26.186,26.338,26.490,26.642,
-26.795,26.948,27.100,27.252,27.403,27.553,27.701,27.848,27.992,28.135,28.275,28.412,28.547,28.679,28.807,28.932,
-29.054,29.172,29.286,29.397,29.504,29.607,29.705,29.800,29.890,29.975,30.055,30.130,30.200,30.265,30.323,30.375,
-30.420,30.458,30.489,30.512,30.528,30.535,30.534,30.524,30.505,30.477,30.441,30.396,30.342,30.280,30.209,30.131,
-30.046,29.954,29.856,29.753,29.645,29.534,29.421,29.305,29.190,29.075,28.962,28.851,28.745,28.644,28.550,28.462,
-28.383,28.313,28.253,28.204,28.165,28.139,28.124,28.122,28.132,28.153,28.186,28.231,28.285,28.349,28.422,28.503,
-28.590,28.681,28.777,28.875,28.973,29.071,29.166,29.258,29.345,29.425,29.498,29.562,29.616,29.661,29.694,29.716,
-29.727,29.726,29.714,29.692,29.659,29.616,29.565,29.507,29.442,29.373,29.299,29.223,29.147,29.070,28.996,28.924,
-28.857,28.795,28.739,28.691,28.650,28.618,28.594,28.580,28.575,28.578,28.591,28.611,28.640,28.676,28.718,28.766,
-28.818,28.874,28.933,28.993,29.053,29.114,29.172,29.228,29.281,29.329,29.372,29.409,29.440,29.464,29.480,29.489,
-29.490,29.482,29.467,29.444,29.414,29.377,29.333,29.283,29.228,29.168,29.104,29.037,28.968,28.898,29.470,29.386,
-29.298,29.206,29.114,29.021,28.931,28.843,28.760,28.683,28.614,28.552,28.499,28.456,28.423,28.399,28.386,28.383,
-28.389,28.404,28.427,28.458,28.495,28.538,28.587,28.639,28.694,28.752,28.811,28.872,28.933,28.994,29.054,29.114,
-29.173,29.231,29.288,29.343,29.397,29.449,29.499,29.547,29.593,29.635,29.674,29.708,29.738,29.761,29.778,29.787,
-29.787,29.777,29.757,29.725,29.681,29.623,29.553,29.469,29.371,29.259,29.135,28.997,28.848,28.689,28.520,28.343,
-28.160,27.972,27.782,27.591,27.401,27.213,27.030,26.853,26.683,26.522,26.370,26.229,26.098,25.977,25.867,25.768,
-25.679,25.598,25.525,25.460,25.400,25.344,25.291,25.240,25.190,25.138,25.085,25.029,24.968,24.904,24.834,24.759,
-24.679,24.593,24.502,24.407,24.308,24.204,24.099,23.990,23.881,23.771,23.661,23.552,23.444,23.339,23.236,23.136,
-23.038,22.945,22.854,22.766,22.682,22.600,22.520,22.442,22.366,22.291,22.217,22.143,22.068,21.993,21.916,21.838,
-21.758,21.675,21.590,21.503,21.413,21.320,21.224,21.125,21.023,20.919,20.813,20.704,20.593,20.481,20.368,20.255,
-20.141,20.028,19.917,19.807,19.700,19.596,19.497,19.403,19.314,19.232,19.158,19.091,19.032,18.982,18.941,18.909,
-18.885,18.870,18.863,18.862,18.868,18.878,18.892,18.908,18.925,18.940,18.952,18.960,18.961,18.954,18.937,18.909,
-18.870,18.818,18.752,18.674,18.582,18.478,18.363,18.238,18.104,17.963,17.818,17.670,17.523,17.379,17.239,17.107,
-16.985,16.875,16.778,16.696,16.630,16.581,16.549,16.534,16.535,16.551,16.580,16.622,16.674,16.734,16.800,16.870,
-16.940,17.009,17.074,17.134,17.187,17.232,17.267,17.291,17.305,17.309,17.302,17.285,17.260,17.227,17.188,17.145,
-17.097,17.048,16.998,16.948,16.899,16.853,16.809,16.767,16.727,16.689,16.653,16.615,16.577,16.535,16.489,16.437,
-16.377,16.307,16.227,16.134,16.029,15.909,15.775,15.627,15.464,15.288,15.100,14.900,14.691,14.474,14.252,14.026,
-13.800,13.574,13.353,13.137,12.928,12.730,12.542,12.367,12.206,12.058,11.925,11.806,11.701,11.609,11.529,11.461,
-11.402,11.352,11.308,11.270,11.234,11.201,11.168,11.133,11.096,11.055,11.009,10.959,10.902,10.839,10.770,10.694,
-10.613,10.525,10.432,10.335,10.234,10.129,10.022,9.913,9.803,9.693,9.584,9.476,9.370,9.267,9.166,9.070,
-8.977,8.888,8.804,8.724,8.649,8.579,8.513,8.451,8.394,8.341,8.291,8.244,8.200,8.158,8.118,8.079,
-8.040,8.000,7.960,7.918,7.874,7.827,7.776,7.722,7.664,7.601,7.534,7.462,7.386,7.306,7.223,7.136,
-7.046,6.956,6.864,6.773,6.683,6.596,6.512,6.434,6.360,6.294,6.235,6.185,6.144,6.111,6.089,6.075,
-6.071,6.076,6.089,6.108,6.134,6.165,6.200,6.236,6.273,6.310,6.343,6.373,6.398,6.416,6.427,6.429,
-6.422,6.406,6.379,6.344,6.298,6.244,6.182,6.113,6.039,5.959,5.876,5.792,5.707,5.624,5.543,5.466,
-5.394,5.329,5.270,5.219,5.176,5.142,5.115,5.097,5.086,5.083,5.085,5.093,5.105,5.120,5.137,5.155,
-5.174,5.192,5.208,5.221,5.232,5.240,5.244,5.245,5.243,5.237,5.230,5.220,5.210,5.199,5.189,5.180,
-5.172,5.168,5.167,5.169,5.175,5.186,5.201,5.220,5.242,5.268,5.297,5.328,5.360,5.392,5.424,5.454,
-5.482,5.506,5.527,5.544,5.555,5.562,5.563,5.559,5.550,5.537,5.521,5.502,5.480,5.458,5.436,5.416,
-5.397,5.382,5.372,5.366,5.367,5.373,5.386,5.406,5.431,5.463,5.500,5.541,5.586,5.633,5.681,5.728,
-5.774,5.816,5.854,5.887,5.912,5.929,5.938,5.938,5.928,5.908,5.879,5.841,5.794,5.739,5.678,5.611,
-5.540,5.465,5.389,5.312,5.235,5.160,5.087,5.018,4.953,4.893,4.838,4.787,4.742,4.701,4.665,4.633,
-4.605,4.579,4.556,4.534,4.514,4.494,4.474,4.454,4.433,4.411,4.389,4.366,4.343,4.319,4.295,4.272,
-4.249,4.226,4.205,4.185,4.166,4.148,4.132,4.116,4.101,4.086,4.070,4.053,4.035,4.015,3.992,3.966,
-3.936,3.904,3.867,3.828,3.786,3.741,3.696,3.651,3.607,3.567,3.531,3.502,3.482,3.472,3.475,3.492,
-3.525,3.575,3.642,3.729,3.834,3.958,4.100,4.259,4.434,4.622,4.821,5.029,5.242,5.457,5.671,5.879,
-6.079,6.267,6.439,6.592,6.724,6.832,6.914,6.969,6.995,6.993,6.961,6.902,6.816,6.704,6.570,6.415,
-6.242,6.055,5.857,5.650,5.439,5.228,5.018,4.813,4.616,4.430,4.256,4.096,3.951,3.823,3.711,3.616,
-3.537,3.474,3.425,3.390,3.368,3.355,3.352,3.356,3.365,3.378,3.393,3.408,3.424,3.437,3.448,3.457,
-3.461,3.462,3.459,3.452,3.442,3.430,3.414,3.397,3.380,3.361,3.343,3.327,3.311,3.298,3.288,3.280,
-3.276,3.275,3.277,3.282,3.290,3.301,3.315,3.330,3.346,3.364,3.382,3.401,3.419,3.436,3.452,3.466,
-3.480,3.491,3.501,3.509,3.515,3.519,3.523,3.525,3.526,3.527,3.527,3.528,3.529,3.531,3.533,3.536,
-3.541,3.547,3.553,3.562,3.571,3.581,3.591,3.602,3.614,3.624,3.635,3.644,3.653,3.660,3.665,3.668,
-3.670,3.669,3.666,3.661,3.655,3.647,3.637,3.627,3.616,3.605,3.595,3.585,3.577,3.571,3.567,3.566,
-3.569,3.575,3.584,3.598,3.615,3.636,3.661,3.690,3.722,3.757,3.795,3.835,3.877,3.919,3.962,4.006,
-4.048,4.090,4.131,4.170,4.207,4.241,4.274,4.303,4.331,4.355,4.377,4.397,4.415,4.430,4.444,4.457,
-4.468,4.478,4.487,4.496,4.503,4.511,4.517,4.524,4.529,4.534,4.538,4.542,4.544,4.545,4.545,4.543,
-4.540,4.536,4.529,4.521,4.512,4.501,4.489,4.476,4.462,4.448,4.434,4.419,4.406,4.393,4.381,4.370,
-4.362,4.355,4.350,4.347,4.346,4.346,4.349,4.353,4.359,4.366,4.373,4.381,4.388,4.395,4.401,4.406,
-4.409,4.410,4.409,4.405,4.399,4.391,4.380,4.367,4.351,4.334,4.316,4.296,4.276,4.256,4.235,4.216,
-4.198,4.182,4.167,4.155,4.146,4.139,4.135,4.134,4.136,4.141,4.148,4.158,4.169,4.183,4.197,4.213,
-4.229,4.245,4.262,4.278,4.293,4.307,4.321,4.333,4.345,4.355,4.365,4.374,4.382,4.391,4.399,4.407,
-4.416,4.425,4.435,4.446,4.459,4.472,4.486,4.501,4.518,4.534,4.551,4.568,4.585,4.601,4.616,4.630,
-4.642,4.652,4.659,4.664,4.665,4.664,4.659,4.651,4.640,4.626,4.609,4.589,4.566,4.542,4.515,4.487,
-4.457,4.427,4.395,4.363,4.331,4.299,4.266,4.234,4.202,4.170,4.138,4.106,4.075,4.043,4.011,3.980,
-3.948,3.915,3.883,3.850,3.818,3.785,3.753,3.721,3.690,3.659,3.630,3.602,3.576,3.551,3.529,3.510,
-3.493,3.479,3.468,3.460,3.455,3.453,3.454,3.459,3.466,3.476,3.488,3.503,3.520,3.539,3.559,3.582,
-3.605,3.631,3.657,3.684,3.713,3.742,3.772,3.804,3.836,3.869,3.903,3.938,3.973,4.010,4.047,4.085,
-4.123,4.162,4.201,4.240,4.279,4.318,4.357,4.394,4.432,4.468,4.503,4.537,4.570,4.602,4.632,4.662,
-4.690,4.717,4.744,4.770,4.796,4.821,4.847,4.872,4.898,4.924,4.951,4.979,5.007,5.036,5.065,5.094,
-5.124,5.153,5.183,5.211,5.238,5.264,5.289,5.311,5.331,5.348,5.362,5.374,5.382,5.388,5.390,5.390,
-5.387,5.381,5.374,5.366,5.356,5.346,5.336,5.326,5.318,5.312,5.307,5.305,5.306,5.310,5.318,5.329,
-5.344,5.363,5.385,5.411,5.439,5.471,5.505,5.542,5.580,5.620,5.661,5.702,5.745,5.787,5.829,5.872,
-5.913,5.955,5.996,6.037,6.078,6.119,6.160,6.201,6.243,6.286,6.330,6.376,6.423,6.473,6.525,6.580,
-6.638,6.698,6.763,6.831,6.904,6.980,7.062,7.148,7.239,7.336,7.439,7.547,7.662,7.783,7.910,8.044,
-8.183,8.330,8.482,8.639,8.802,8.970,9.141,9.316,9.493,9.671,9.849,10.026,10.201,10.373,10.540,10.701,
-10.856,11.003,11.142,11.272,11.392,11.503,11.605,11.697,11.781,11.856,11.924,11.985,12.041,12.094,12.143,12.192,
-12.240,12.289,12.341,12.396,12.455,12.519,12.589,12.663,12.743,12.828,12.917,13.010,13.105,13.202,13.299,13.395,
-13.489,13.580,13.666,13.746,13.820,13.886,13.946,13.997,14.041,14.078,14.109,14.134,14.154,14.172,14.187,14.202,
-14.218,14.236,14.259,14.287,14.321,14.363,14.412,14.471,14.537,14.613,14.696,14.787,14.884,14.988,15.095,15.206,
-15.319,15.432,15.545,15.656,15.765,15.870,15.971,16.068,16.161,16.250,16.336,16.419,16.501,16.583,16.666,16.751,
-16.840,16.935,17.037,17.148,17.267,17.397,17.537,17.689,17.851,18.025,18.209,18.402,18.603,18.810,19.023,19.238,
-19.455,19.670,19.883,20.091,20.292,20.484,20.666,20.836,20.994,21.139,21.269,21.385,21.487,21.575,21.650,21.711,
-21.761,21.800,21.829,21.850,21.862,21.868,21.869,21.864,21.856,21.844,21.829,21.812,21.791,21.768,21.742,21.713,
-21.680,21.642,21.599,21.551,21.497,21.435,21.367,21.291,21.208,21.116,21.017,20.910,20.796,20.675,20.548,20.416,
-20.280,20.141,20.000,19.858,19.717,19.577,19.441,19.308,19.182,19.061,18.948,18.843,18.747,18.661,18.585,18.518,
-18.462,18.416,18.380,18.353,18.336,18.327,18.326,18.332,18.344,18.362,18.385,18.411,18.440,18.471,18.504,18.538,
-18.571,18.604,18.636,18.668,18.698,18.727,18.754,18.781,18.807,18.833,18.860,18.888,18.917,18.949,18.984,19.024,
-19.068,19.119,19.176,19.240,19.313,19.394,19.484,19.584,19.694,19.813,19.943,20.082,20.232,20.391,20.559,20.736,
-20.920,21.112,21.310,21.515,21.724,21.937,22.153,22.372,22.593,22.814,23.035,23.255,23.474,23.691,23.906,24.117,
-24.325,24.529,24.729,24.925,25.116,25.303,25.485,25.662,25.834,26.002,26.166,26.325,26.480,26.631,26.779,26.923,
-27.064,27.202,27.337,27.470,27.601,27.730,27.858,27.984,28.109,28.233,28.357,28.479,28.602,28.723,28.844,28.964,
-29.083,29.202,29.318,29.433,29.546,29.655,29.762,29.865,29.964,30.057,30.145,30.227,30.301,30.369,30.428,30.478,
-30.519,30.550,30.571,30.582,30.582,30.571,30.549,30.516,30.471,30.417,30.351,30.276,30.191,30.096,29.993,29.882,
-29.763,29.638,29.508,29.372,29.233,29.091,28.946,28.801,28.656,28.512,28.370,28.232,28.098,27.970,27.849,27.735,
-27.631,27.537,27.454,27.383,27.325,27.281,27.252,27.239,27.242,27.261,27.296,27.349,27.419,27.505,27.607,27.724,
-27.856,28.002,28.160,28.328,28.506,28.691,28.881,29.075,29.270,29.465,29.656,29.842,30.021,30.191,30.350,30.496,
-30.627,30.742,30.841,30.922,30.984,31.028,31.052,31.058,31.046,31.016,30.970,30.908,30.832,30.743,30.643,30.535,
-30.418,30.297,30.172,30.045,29.918,29.794,29.673,29.557,29.449,29.348,29.257,29.176,29.106,29.047,29.001,28.967,
-28.945,28.936,28.938,28.952,28.976,29.011,29.054,29.104,29.161,29.223,29.289,29.357,29.426,29.494,29.559,29.620,
-29.676,29.726,29.768,29.801,29.824,29.837,29.838,29.829,29.808,29.776,29.733,29.680,29.618,29.547,29.470,30.232,
-30.202,30.160,30.109,30.050,29.986,29.917,29.847,29.776,29.709,29.645,29.588,29.539,29.499,29.469,29.451,29.445,
-29.451,29.469,29.500,29.541,29.593,29.655,29.724,29.801,29.882,29.968,30.057,30.146,30.235,30.323,30.409,30.491,
-30.568,30.641,30.708,30.769,30.824,30.872,30.914,30.948,30.976,30.996,31.009,31.014,31.010,30.999,30.978,30.947,
-30.907,30.855,30.792,30.717,30.630,30.529,30.416,30.289,30.149,29.996,29.830,29.653,29.465,29.267,29.061,28.849,
-28.632,28.412,28.192,27.972,27.756,27.545,27.342,27.147,26.963,26.790,26.629,26.482,26.349,26.229,26.122,26.028,
-25.946,25.874,25.811,25.756,25.706,25.659,25.615,25.570,25.524,25.473,25.418,25.356,25.287,25.209,25.122,25.027,
-24.922,24.808,24.686,24.557,24.422,24.281,24.137,23.991,23.844,23.697,23.553,23.412,23.276,23.145,23.021,22.903,
-22.794,22.692,22.598,22.511,22.432,22.359,22.292,22.230,22.171,22.116,22.062,22.009,21.956,21.901,21.845,21.785,
-21.722,21.655,21.583,21.506,21.425,21.339,21.248,21.152,21.053,20.950,20.844,20.736,20.627,20.517,20.406,20.297,
-20.189,20.084,19.982,19.884,19.790,19.703,19.622,19.548,19.481,19.423,19.373,19.333,19.302,19.280,19.268,19.266,
-19.272,19.288,19.311,19.342,19.379,19.421,19.467,19.516,19.565,19.612,19.657,19.697,19.730,19.755,19.769,19.772,
-19.761,19.736,19.696,19.640,19.569,19.481,19.379,19.263,19.134,18.994,18.845,18.690,18.530,18.369,18.209,18.053,
-17.903,17.762,17.633,17.517,17.416,17.331,17.262,17.211,17.177,17.160,17.159,17.171,17.196,17.231,17.274,17.323,
-17.375,17.427,17.478,17.524,17.564,17.596,17.619,17.632,17.633,17.624,17.603,17.572,17.531,17.482,17.425,17.363,
-17.296,17.227,17.158,17.088,17.020,16.954,16.891,16.831,16.775,16.721,16.668,16.617,16.565,16.511,16.453,16.389,
-16.318,16.238,16.146,16.042,15.925,15.793,15.647,15.485,15.309,15.119,14.917,14.703,14.480,14.249,14.014,13.777,
-13.539,13.305,13.075,12.854,12.642,12.443,12.256,12.085,11.929,11.790,11.667,11.560,11.469,11.393,11.331,11.280,
-11.241,11.210,11.187,11.168,11.153,11.140,11.127,11.112,11.094,11.073,11.046,11.013,10.974,10.928,10.875,10.815,
-10.749,10.675,10.595,10.509,10.418,10.322,10.222,10.118,10.011,9.901,9.789,9.677,9.563,9.450,9.338,9.227,
-9.118,9.011,8.908,8.809,8.714,8.624,8.540,8.461,8.389,8.324,8.265,8.214,8.168,8.130,8.097,8.070,
-8.048,8.031,8.016,8.004,7.993,7.982,7.970,7.956,7.939,7.918,7.892,7.860,7.822,7.778,7.727,7.670,
-7.608,7.540,7.467,7.391,7.313,7.234,7.156,7.080,7.007,6.940,6.879,6.825,6.780,6.745,6.721,6.706,
-6.703,6.709,6.726,6.751,6.784,6.823,6.866,6.912,6.958,7.003,7.044,7.079,7.106,7.124,7.129,7.122,
-7.100,7.064,7.012,6.945,6.862,6.765,6.654,6.531,6.398,6.256,6.108,5.956,5.803,5.651,5.502,5.359,
-5.225,5.100,4.988,4.888,4.803,4.733,4.679,4.639,4.615,4.604,4.607,4.621,4.644,4.676,4.714,4.755,
-4.799,4.842,4.883,4.920,4.952,4.977,4.995,5.003,5.003,4.995,4.977,4.951,4.918,4.879,4.835,4.787,
-4.738,4.687,4.638,4.591,4.549,4.511,4.480,4.456,4.439,4.431,4.431,4.439,4.454,4.476,4.504,4.537,
-4.574,4.614,4.655,4.696,4.735,4.772,4.806,4.836,4.861,4.880,4.894,4.902,4.905,4.904,4.898,4.888,
-4.876,4.862,4.848,4.834,4.822,4.812,4.806,4.803,4.805,4.812,4.823,4.839,4.860,4.883,4.910,4.939,
-4.969,4.999,5.028,5.054,5.076,5.094,5.106,5.112,5.111,5.102,5.086,5.062,5.031,4.993,4.948,4.899,
-4.845,4.787,4.728,4.667,4.607,4.548,4.491,4.436,4.386,4.340,4.298,4.261,4.229,4.200,4.176,4.155,
-4.136,4.120,4.104,4.089,4.074,4.057,4.039,4.019,3.996,3.971,3.943,3.913,3.880,3.847,3.812,3.777,
-3.742,3.708,3.675,3.645,3.617,3.592,3.570,3.551,3.535,3.522,3.511,3.503,3.495,3.487,3.480,3.471,
-3.460,3.447,3.432,3.413,3.392,3.367,3.341,3.313,3.284,3.256,3.231,3.209,3.193,3.184,3.185,3.196,
-3.221,3.260,3.314,3.384,3.472,3.576,3.697,3.834,3.985,4.149,4.324,4.508,4.696,4.887,5.077,5.262,
-5.439,5.605,5.756,5.890,6.003,6.094,6.160,6.201,6.215,6.202,6.163,6.098,6.010,5.899,5.769,5.621,
-5.459,5.287,5.107,4.922,4.737,4.554,4.376,4.206,4.047,3.899,3.765,3.646,3.542,3.454,3.382,3.324,
-3.279,3.248,3.227,3.215,3.211,3.213,3.218,3.226,3.233,3.239,3.243,3.243,3.238,3.228,3.213,3.193,
-3.167,3.136,3.101,3.063,3.023,2.981,2.938,2.896,2.856,2.818,2.784,2.754,2.728,2.708,2.694,2.685,
-2.682,2.685,2.693,2.707,2.724,2.746,2.772,2.800,2.830,2.861,2.894,2.927,2.960,2.992,3.023,3.053,
-3.082,3.109,3.134,3.158,3.180,3.200,3.219,3.237,3.254,3.270,3.285,3.300,3.315,3.329,3.343,3.357,
-3.371,3.385,3.398,3.411,3.424,3.436,3.448,3.458,3.467,3.475,3.482,3.487,3.490,3.492,3.491,3.490,
-3.487,3.482,3.476,3.469,3.462,3.454,3.447,3.440,3.433,3.428,3.425,3.424,3.425,3.429,3.436,3.446,
-3.459,3.476,3.496,3.520,3.546,3.576,3.608,3.642,3.679,3.717,3.755,3.795,3.834,3.873,3.911,3.948,
-3.983,4.017,4.048,4.077,4.104,4.129,4.151,4.171,4.189,4.205,4.220,4.234,4.247,4.259,4.271,4.282,
-4.294,4.305,4.317,4.330,4.342,4.355,4.368,4.380,4.392,4.403,4.413,4.422,4.429,4.434,4.437,4.438,
-4.435,4.430,4.422,4.411,4.398,4.382,4.364,4.344,4.322,4.299,4.275,4.252,4.228,4.205,4.184,4.164,
-4.146,4.130,4.116,4.106,4.097,4.092,4.088,4.087,4.088,4.090,4.094,4.098,4.102,4.106,4.109,4.111,
-4.111,4.110,4.106,4.100,4.091,4.079,4.065,4.049,4.031,4.010,3.988,3.966,3.942,3.919,3.897,3.875,
-3.855,3.837,3.822,3.810,3.801,3.795,3.793,3.795,3.800,3.809,3.821,3.835,3.852,3.871,3.892,3.914,
-3.937,3.959,3.982,4.004,4.024,4.044,4.061,4.077,4.092,4.104,4.115,4.124,4.131,4.138,4.143,4.148,
-4.152,4.156,4.160,4.165,4.170,4.175,4.181,4.188,4.195,4.202,4.209,4.216,4.222,4.227,4.230,4.232,
-4.231,4.227,4.220,4.210,4.195,4.178,4.156,4.130,4.100,4.067,4.030,3.991,3.949,3.904,3.858,3.810,
-3.762,3.714,3.666,3.618,3.572,3.527,3.483,3.442,3.402,3.365,3.329,3.296,3.265,3.235,3.208,3.182,
-3.157,3.134,3.112,3.091,3.072,3.054,3.037,3.021,3.007,2.994,2.984,2.975,2.968,2.964,2.962,2.963,
-2.966,2.972,2.981,2.992,3.005,3.021,3.039,3.058,3.079,3.101,3.123,3.147,3.170,3.193,3.217,3.239,
-3.262,3.283,3.305,3.326,3.346,3.367,3.387,3.408,3.430,3.452,3.476,3.501,3.528,3.557,3.588,3.621,
-3.656,3.692,3.731,3.771,3.812,3.855,3.897,3.940,3.982,4.023,4.064,4.102,4.138,4.173,4.204,4.233,
-4.259,4.282,4.303,4.321,4.337,4.351,4.363,4.375,4.385,4.395,4.405,4.416,4.427,4.440,4.453,4.468,
-4.485,4.503,4.522,4.542,4.563,4.584,4.605,4.625,4.645,4.662,4.678,4.691,4.702,4.709,4.713,4.713,
-4.709,4.702,4.691,4.678,4.661,4.643,4.623,4.602,4.581,4.560,4.541,4.524,4.509,4.498,4.491,4.489,
-4.491,4.499,4.512,4.530,4.554,4.583,4.616,4.654,4.696,4.741,4.789,4.839,4.891,4.944,4.997,5.050,
-5.103,5.154,5.205,5.254,5.302,5.349,5.395,5.440,5.484,5.528,5.573,5.618,5.665,5.713,5.764,5.818,
-5.875,5.936,6.002,6.073,6.149,6.231,6.320,6.414,6.516,6.624,6.740,6.863,6.993,7.131,7.276,7.428,
-7.587,7.753,7.925,8.103,8.287,8.475,8.666,8.861,9.057,9.254,9.451,9.645,9.837,10.024,10.206,10.381,
-10.548,10.706,10.854,10.991,11.117,11.232,11.336,11.427,11.509,11.579,11.641,11.694,11.740,11.780,11.816,11.850,
-11.882,11.915,11.949,11.987,12.028,12.074,12.126,12.184,12.248,12.317,12.392,12.471,12.554,12.640,12.727,12.815,
-12.901,12.986,13.066,13.143,13.214,13.279,13.337,13.390,13.437,13.478,13.514,13.546,13.576,13.605,13.634,13.665,
-13.700,13.740,13.787,13.841,13.903,13.976,14.058,14.150,14.251,14.362,14.481,14.608,14.740,14.876,15.016,15.156,
-15.297,15.435,15.569,15.700,15.825,15.944,16.057,16.164,16.265,16.363,16.456,16.548,16.640,16.734,16.831,16.934,
-17.044,17.164,17.295,17.438,17.594,17.764,17.947,18.144,18.353,18.573,18.802,19.038,19.279,19.522,19.763,20.001,
-20.232,20.452,20.660,20.853,21.028,21.184,21.320,21.434,21.526,21.597,21.647,21.677,21.688,21.683,21.664,21.632,
-21.590,21.542,21.488,21.432,21.376,21.321,21.269,21.221,21.179,21.141,21.109,21.083,21.060,21.040,21.022,21.005,
-20.985,20.963,20.935,20.900,20.856,20.803,20.738,20.661,20.571,20.467,20.351,20.222,20.080,19.928,19.766,19.596,
-19.419,19.237,19.054,18.870,18.687,18.508,18.335,18.170,18.013,17.868,17.734,17.613,17.505,17.412,17.333,17.269,
-17.219,17.183,17.160,17.150,17.152,17.165,17.187,17.219,17.258,17.303,17.354,17.409,17.468,17.529,17.591,17.654,
-17.717,17.779,17.840,17.899,17.957,18.012,18.065,18.116,18.165,18.212,18.257,18.302,18.346,18.391,18.436,18.483,
-18.532,18.584,18.641,18.703,18.771,18.845,18.928,19.018,19.119,19.229,19.349,19.481,19.624,19.779,19.946,20.125,
-20.315,20.518,20.731,20.956,21.191,21.435,21.688,21.949,22.217,22.490,22.768,23.050,23.335,23.620,23.906,24.191,
-24.473,24.752,25.027,25.296,25.559,25.816,26.064,26.305,26.536,26.759,26.972,27.175,27.369,27.554,27.729,27.895,
-28.053,28.203,28.344,28.479,28.608,28.731,28.848,28.961,29.070,29.176,29.279,29.380,29.479,29.577,29.673,29.768,
-29.862,29.954,30.045,30.135,30.222,30.307,30.389,30.468,30.542,30.612,30.676,30.734,30.786,30.829,30.865,30.893,
-30.911,30.921,30.920,30.910,30.889,30.859,30.818,30.768,30.707,30.638,30.559,30.471,30.375,30.271,30.159,30.041,
-29.916,29.785,29.649,29.509,29.364,29.215,29.064,28.910,28.754,28.596,28.438,28.280,28.123,27.967,27.814,27.664,
-27.518,27.378,27.244,27.118,27.001,26.895,26.800,26.718,26.650,26.597,26.561,26.543,26.544,26.564,26.603,26.664,
-26.744,26.845,26.967,27.107,27.266,27.442,27.635,27.841,28.059,28.287,28.524,28.765,29.009,29.253,29.495,29.731,
-29.960,30.180,30.387,30.579,30.756,30.916,31.056,31.176,31.276,31.355,31.412,31.448,31.464,31.459,31.434,31.391,
-31.331,31.255,31.164,31.061,30.946,30.822,30.690,30.553,30.412,30.268,30.124,29.982,29.842,29.708,29.580,29.460,
-29.349,29.249,29.161,29.086,29.025,28.978,28.945,28.928,28.926,28.939,28.966,29.007,29.060,29.126,29.201,29.284,
-29.374,29.469,29.566,29.664,29.760,29.852,29.939,30.018,30.088,30.147,30.194,30.228,30.249,30.257,30.251,30.232,
-30.978,31.051,31.107,31.145,31.166,31.171,31.163,31.142,31.112,31.075,31.034,30.990,30.947,30.907,30.873,30.845,
-30.825,30.815,30.815,30.825,30.846,30.877,30.916,30.964,31.018,31.077,31.140,31.204,31.268,31.329,31.388,31.441,
-31.488,31.527,31.559,31.582,31.596,31.600,31.596,31.582,31.559,31.528,31.489,31.442,31.388,31.327,31.259,31.185,
-31.105,31.018,30.926,30.826,30.720,30.607,30.487,30.360,30.225,30.083,29.934,29.778,29.615,29.446,29.273,29.095,
-28.914,28.731,28.548,28.367,28.187,28.012,27.843,27.680,27.525,27.380,27.244,27.119,27.005,26.902,26.809,26.726,
-26.652,26.587,26.528,26.474,26.424,26.376,26.328,26.277,26.224,26.165,26.099,26.025,25.942,25.849,25.746,25.632,
-25.508,25.373,25.229,25.076,24.916,24.750,24.580,24.407,24.233,24.060,23.890,23.723,23.562,23.409,23.263,23.126,
-22.999,22.883,22.776,22.680,22.593,22.515,22.446,22.384,22.328,22.276,22.229,22.183,22.138,22.093,22.045,21.995,
-21.942,21.884,21.820,21.752,21.677,21.598,21.513,21.423,21.329,21.231,21.130,21.028,20.924,20.821,20.718,20.618,
-20.521,20.428,20.339,20.256,20.179,20.109,20.046,19.991,19.944,19.905,19.874,19.852,19.837,19.832,19.834,19.843,
-19.860,19.884,19.915,19.951,19.992,20.036,20.084,20.134,20.185,20.235,20.282,20.326,20.366,20.398,20.422,20.437,
-20.440,20.431,20.409,20.373,20.321,20.254,20.172,20.075,19.964,19.839,19.703,19.555,19.400,19.238,19.071,18.903,
-18.736,18.572,18.413,18.262,18.121,17.992,17.875,17.772,17.683,17.609,17.549,17.503,17.470,17.448,17.436,17.431,
-17.432,17.437,17.443,17.448,17.451,17.450,17.443,17.429,17.408,17.378,17.341,17.295,17.242,17.183,17.118,17.050,
-16.978,16.905,16.833,16.761,16.692,16.625,16.563,16.503,16.448,16.395,16.345,16.295,16.245,16.193,16.136,16.074,
-16.004,15.924,15.833,15.729,15.611,15.479,15.331,15.167,14.989,14.796,14.591,14.375,14.149,13.916,13.679,13.440,
-13.202,12.966,12.737,12.516,12.306,12.108,11.924,11.755,11.601,11.464,11.343,11.238,11.148,11.072,11.009,10.958,
-10.917,10.885,10.860,10.839,10.823,10.810,10.797,10.785,10.773,10.758,10.743,10.724,10.704,10.681,10.655,10.626,
-10.595,10.561,10.524,10.485,10.444,10.399,10.351,10.300,10.246,10.188,10.126,10.060,9.989,9.914,9.834,9.750,
-9.662,9.570,9.476,9.379,9.280,9.181,9.083,8.986,8.891,8.801,8.715,8.635,8.561,8.494,8.435,8.384,
-8.341,8.305,8.276,8.253,8.236,8.224,8.215,8.209,8.203,8.197,8.190,8.179,8.165,8.147,8.124,8.095,
-8.060,8.020,7.974,7.925,7.871,7.816,7.759,7.702,7.646,7.594,7.547,7.505,7.470,7.444,7.427,7.419,
-7.422,7.434,7.456,7.486,7.525,7.569,7.619,7.671,7.724,7.776,7.823,7.865,7.898,7.920,7.929,7.924,
-7.903,7.864,7.807,7.731,7.637,7.524,7.394,7.249,7.089,6.916,6.734,6.544,6.350,6.154,5.960,5.770,
-5.587,5.414,5.252,5.105,4.974,4.860,4.764,4.686,4.626,4.585,4.560,4.551,4.556,4.573,4.599,4.632,
-4.670,4.709,4.749,4.785,4.816,4.839,4.853,4.857,4.850,4.830,4.798,4.754,4.699,4.632,4.556,4.473,
-4.383,4.289,4.192,4.096,4.002,3.911,3.827,3.750,3.682,3.625,3.578,3.543,3.520,3.509,3.509,3.520,
-3.541,3.571,3.608,3.651,3.698,3.749,3.800,3.852,3.901,3.949,3.992,4.031,4.065,4.093,4.116,4.133,
-4.146,4.153,4.157,4.158,4.157,4.155,4.152,4.150,4.149,4.150,4.153,4.159,4.168,4.179,4.193,4.209,
-4.227,4.245,4.263,4.279,4.293,4.305,4.312,4.314,4.311,4.302,4.287,4.265,4.236,4.202,4.162,4.116,
-4.067,4.015,3.960,3.904,3.849,3.794,3.742,3.693,3.648,3.607,3.570,3.539,3.512,3.490,3.472,3.457,
-3.445,3.435,3.425,3.416,3.406,3.394,3.379,3.362,3.342,3.318,3.290,3.259,3.226,3.190,3.153,3.115,
-3.077,3.041,3.007,2.976,2.949,2.927,2.911,2.899,2.894,2.893,2.898,2.907,2.920,2.935,2.953,2.971,
-2.988,3.004,3.017,3.028,3.034,3.036,3.034,3.027,3.017,3.004,2.989,2.973,2.959,2.948,2.941,2.940,
-2.948,2.966,2.996,3.038,3.094,3.165,3.250,3.350,3.463,3.589,3.725,3.870,4.022,4.177,4.333,4.487,
-4.635,4.775,4.903,5.016,5.113,5.190,5.245,5.279,5.289,5.276,5.240,5.182,5.103,5.005,4.891,4.763,
-4.623,4.476,4.324,4.170,4.017,3.869,3.728,3.596,3.476,3.368,3.274,3.195,3.130,3.079,3.043,3.018,
-3.005,3.001,3.004,3.013,3.025,3.038,3.050,3.060,3.066,3.066,3.060,3.046,3.025,2.995,2.958,2.914,
-2.863,2.806,2.745,2.681,2.616,2.550,2.485,2.423,2.364,2.311,2.263,2.222,2.187,2.161,2.142,2.131,
-2.127,2.131,2.141,2.157,2.178,2.205,2.235,2.268,2.304,2.342,2.381,2.420,2.460,2.499,2.538,2.577,
-2.615,2.652,2.688,2.723,2.758,2.792,2.825,2.858,2.890,2.921,2.953,2.983,3.013,3.042,3.070,3.097,
-3.123,3.147,3.170,3.191,3.210,3.226,3.241,3.254,3.264,3.272,3.278,3.282,3.285,3.286,3.285,3.284,
-3.282,3.280,3.278,3.277,3.277,3.277,3.280,3.284,3.291,3.300,3.311,3.325,3.343,3.362,3.385,3.411,
-3.439,3.469,3.501,3.535,3.570,3.607,3.644,3.681,3.718,3.754,3.790,3.824,3.856,3.887,3.915,3.941,
-3.965,3.987,4.006,4.024,4.039,4.053,4.066,4.077,4.088,4.099,4.109,4.120,4.131,4.143,4.157,4.171,
-4.186,4.202,4.220,4.238,4.256,4.275,4.293,4.311,4.328,4.343,4.356,4.366,4.374,4.379,4.379,4.377,
-4.370,4.360,4.345,4.327,4.306,4.282,4.254,4.225,4.194,4.162,4.129,4.096,4.064,4.033,4.003,3.976,
-3.950,3.928,3.907,3.890,3.876,3.864,3.854,3.847,3.841,3.837,3.834,3.832,3.830,3.828,3.825,3.821,
-3.816,3.810,3.802,3.793,3.782,3.770,3.756,3.741,3.725,3.709,3.692,3.676,3.661,3.647,3.635,3.624,
-3.617,3.611,3.609,3.610,3.614,3.621,3.632,3.645,3.661,3.679,3.699,3.721,3.744,3.768,3.792,3.815,
-3.837,3.857,3.876,3.892,3.906,3.916,3.924,3.928,3.929,3.928,3.923,3.915,3.905,3.893,3.879,3.864,
-3.848,3.831,3.815,3.799,3.784,3.770,3.756,3.744,3.734,3.724,3.715,3.707,3.700,3.692,3.684,3.675,
-3.665,3.652,3.638,3.620,3.600,3.576,3.549,3.518,3.484,3.446,3.405,3.361,3.315,3.267,3.217,3.166,
-3.115,3.064,3.014,2.966,2.919,2.875,2.833,2.795,2.759,2.727,2.698,2.673,2.650,2.630,2.613,2.599,
-2.586,2.575,2.566,2.559,2.552,2.546,2.542,2.538,2.536,2.535,2.535,2.536,2.539,2.543,2.550,2.558,
-2.569,2.582,2.598,2.615,2.635,2.657,2.680,2.705,2.731,2.758,2.785,2.812,2.839,2.865,2.890,2.914,
-2.937,2.958,2.978,2.996,3.013,3.028,3.043,3.057,3.071,3.085,3.100,3.115,3.132,3.150,3.170,3.193,
-3.217,3.243,3.271,3.301,3.333,3.366,3.400,3.435,3.469,3.503,3.536,3.568,3.597,3.624,3.649,3.671,
-3.689,3.705,3.717,3.726,3.732,3.736,3.737,3.737,3.735,3.732,3.729,3.726,3.724,3.723,3.724,3.726,
-3.731,3.738,3.747,3.759,3.773,3.789,3.806,3.824,3.843,3.863,3.881,3.899,3.915,3.929,3.940,3.948,
-3.952,3.953,3.950,3.943,3.933,3.919,3.903,3.884,3.864,3.843,3.821,3.801,3.782,3.766,3.753,3.745,
-3.741,3.743,3.751,3.765,3.785,3.813,3.846,3.886,3.931,3.981,4.036,4.095,4.157,4.221,4.286,4.353,
-4.419,4.484,4.548,4.611,4.672,4.731,4.787,4.842,4.894,4.946,4.996,5.046,5.097,5.148,5.201,5.255,
-5.313,5.375,5.440,5.511,5.587,5.668,5.756,5.850,5.950,6.058,6.172,6.294,6.422,6.557,6.699,6.847,
-7.001,7.161,7.327,7.497,7.672,7.850,8.032,8.215,8.399,8.584,8.768,8.950,9.129,9.304,9.473,9.636,
-9.791,9.938,10.075,10.202,10.319,10.425,10.520,10.605,10.679,10.744,10.801,10.850,10.892,10.931,10.966,10.999,
-11.033,11.069,11.108,11.152,11.202,11.259,11.323,11.396,11.476,11.565,11.660,11.762,11.870,11.981,12.095,12.211,
-12.326,12.439,12.549,12.655,12.755,12.849,12.936,13.017,13.091,13.159,13.221,13.281,13.338,13.394,13.452,13.514,
-13.581,13.655,13.737,13.831,13.936,14.053,14.184,14.328,14.484,14.652,14.831,15.019,15.214,15.414,15.618,15.822,
-16.023,16.221,16.413,16.597,16.771,16.935,17.088,17.230,17.361,17.482,17.594,17.699,17.799,17.896,17.992,18.090,
-18.191,18.299,18.416,18.541,18.678,18.826,18.986,19.157,19.339,19.529,19.725,19.925,20.127,20.326,20.519,20.703,
-20.875,21.031,21.168,21.283,21.375,21.441,21.481,21.494,21.481,21.443,21.381,21.296,21.193,21.074,20.942,20.801,
-20.655,20.506,20.359,20.217,20.082,19.956,19.842,19.741,19.653,19.578,19.517,19.466,19.426,19.393,19.366,19.342,
-19.318,19.291,19.258,19.217,19.166,19.103,19.026,18.933,18.825,18.702,18.563,18.410,18.244,18.067,17.881,17.690,
-17.494,17.298,17.103,16.914,16.732,16.560,16.400,16.255,16.126,16.014,15.920,15.845,15.789,15.751,15.732,15.731,
-15.746,15.776,15.821,15.878,15.946,16.024,16.110,16.203,16.301,16.403,16.509,16.616,16.725,16.834,16.942,17.050,
-17.158,17.263,17.367,17.470,17.570,17.668,17.765,17.859,17.951,18.041,18.130,18.216,18.301,18.385,18.467,18.548,
-18.629,18.710,18.792,18.874,18.959,19.046,19.137,19.232,19.333,19.440,19.554,19.677,19.809,19.951,20.104,20.269,
-20.446,20.636,20.839,21.055,21.285,21.529,21.785,22.054,22.335,22.627,22.929,23.240,23.559,23.885,24.216,24.550,
-24.887,25.224,25.560,25.894,26.224,26.548,26.865,27.175,27.475,27.765,28.045,28.312,28.568,28.811,29.042,29.259,
-29.464,29.656,29.836,30.005,30.162,30.308,30.444,30.570,30.688,30.797,30.899,30.994,31.083,31.166,31.243,31.316,
-31.383,31.446,31.505,31.560,31.610,31.656,31.697,31.734,31.766,31.793,31.815,31.831,31.842,31.848,31.847,31.841,
-31.828,31.809,31.784,31.754,31.717,31.674,31.625,31.571,31.511,31.446,31.376,31.300,31.220,31.134,31.044,30.950,
-30.850,30.746,30.638,30.524,30.405,30.282,30.153,30.020,29.881,29.737,29.588,29.434,29.275,29.112,28.945,28.774,
-28.601,28.426,28.250,28.074,27.901,27.730,27.564,27.405,27.253,27.112,26.982,26.865,26.764,26.680,26.615,26.569,
-26.544,26.541,26.560,26.602,26.667,26.755,26.865,26.997,27.148,27.318,27.505,27.707,27.922,28.147,28.381,28.621,
-28.864,29.108,29.350,29.589,29.823,30.048,30.264,30.469,30.661,30.840,31.004,31.152,31.283,31.398,31.496,31.576,
-31.638,31.682,31.708,31.716,31.707,31.680,31.635,31.574,31.496,31.403,31.294,31.171,31.036,30.889,30.732,30.567,
-30.396,30.221,30.045,29.870,29.699,29.535,29.381,29.238,29.111,29.000,28.909,28.840,28.793,28.770,28.771,28.796,
-28.845,28.917,29.010,29.123,29.252,29.395,29.549,29.711,29.877,30.044,30.208,30.367,30.516,30.654,30.778,30.886,
-30.978,31.381,31.545,31.686,31.801,31.890,31.953,31.992,32.008,32.004,31.982,31.946,31.899,31.844,31.785,31.725,
-31.667,31.613,31.566,31.527,31.497,31.476,31.466,31.465,31.472,31.486,31.506,31.529,31.553,31.577,31.599,31.615,
-31.625,31.628,31.621,31.604,31.577,31.538,31.489,31.430,31.360,31.282,31.197,31.104,31.007,30.905,30.801,30.696,
-30.590,30.484,30.380,30.277,30.176,30.078,29.982,29.888,29.796,29.706,29.616,29.528,29.440,29.352,29.263,29.174,
-29.085,28.995,28.904,28.814,28.723,28.632,28.543,28.455,28.368,28.284,28.202,28.123,28.047,27.974,27.904,27.838,
-27.773,27.711,27.651,27.591,27.531,27.471,27.409,27.344,27.275,27.202,27.124,27.039,26.948,26.850,26.744,26.630,
-26.509,26.381,26.245,26.103,25.956,25.803,25.647,25.488,25.327,25.167,25.007,24.849,24.695,24.545,24.400,24.262,
-24.130,24.006,23.889,23.780,23.679,23.585,23.498,23.417,23.342,23.272,23.204,23.140,23.076,23.013,22.950,22.884,
-22.816,22.744,22.668,22.588,22.503,22.413,22.319,22.220,22.118,22.012,21.904,21.795,21.685,21.575,21.467,21.361,
-21.259,21.161,21.068,20.980,20.899,20.825,20.757,20.696,20.643,20.596,20.556,20.523,20.495,20.473,20.457,20.445,
-20.437,20.433,20.433,20.435,20.440,20.447,20.456,20.465,20.476,20.486,20.496,20.504,20.511,20.514,20.514,20.510,
-20.499,20.482,20.458,20.425,20.383,20.331,20.267,20.193,20.107,20.010,19.902,19.783,19.655,19.517,19.372,19.220,
-19.065,18.906,18.747,18.588,18.433,18.282,18.137,17.999,17.870,17.751,17.642,17.543,17.454,17.375,17.305,17.244,
-17.189,17.140,17.096,17.054,17.014,16.975,16.934,16.891,16.846,16.797,16.745,16.689,16.630,16.568,16.505,16.440,
-16.375,16.311,16.249,16.190,16.134,16.081,16.033,15.989,15.949,15.911,15.876,15.841,15.805,15.767,15.724,15.675,
-15.617,15.549,15.470,15.377,15.269,15.146,15.007,14.852,14.682,14.498,14.300,14.091,13.873,13.647,13.416,13.184,
-12.952,12.722,12.499,12.283,12.076,11.881,11.698,11.529,11.374,11.232,11.105,10.991,10.889,10.799,10.719,10.647,
-10.584,10.526,10.474,10.425,10.379,10.336,10.294,10.254,10.216,10.179,10.143,10.110,10.080,10.053,10.030,10.011,
-9.996,9.986,9.981,9.979,9.981,9.986,9.994,10.002,10.010,10.017,10.020,10.020,10.014,10.001,9.981,9.953,
-9.916,9.869,9.814,9.749,9.677,9.596,9.510,9.418,9.323,9.225,9.127,9.029,8.934,8.843,8.756,8.674,
-8.599,8.531,8.471,8.417,8.369,8.328,8.293,8.261,8.234,8.209,8.185,8.161,8.137,8.111,8.083,8.052,
-8.018,7.980,7.939,7.896,7.850,7.802,7.754,7.706,7.659,7.615,7.575,7.539,7.510,7.487,7.473,7.466,
-7.468,7.478,7.497,7.524,7.558,7.598,7.644,7.693,7.744,7.796,7.845,7.891,7.931,7.964,7.986,7.997,
-7.996,7.980,7.948,7.900,7.835,7.754,7.656,7.542,7.413,7.270,7.116,6.951,6.779,6.601,6.420,6.239,
-6.060,5.885,5.718,5.560,5.413,5.278,5.158,5.052,4.962,4.886,4.826,4.780,4.747,4.726,4.714,4.710,
-4.711,4.716,4.721,4.725,4.725,4.719,4.705,4.681,4.647,4.600,4.542,4.471,4.387,4.292,4.185,4.069,
-3.945,3.815,3.680,3.543,3.405,3.270,3.139,3.014,2.897,2.790,2.694,2.611,2.541,2.485,2.442,2.414,
-2.399,2.398,2.408,2.430,2.461,2.500,2.547,2.598,2.654,2.712,2.770,2.829,2.886,2.941,2.992,3.040,
-3.084,3.124,3.159,3.191,3.220,3.245,3.268,3.289,3.308,3.327,3.345,3.362,3.381,3.399,3.417,3.436,
-3.454,3.472,3.488,3.502,3.514,3.523,3.527,3.527,3.522,3.511,3.494,3.472,3.444,3.410,3.371,3.328,
-3.282,3.232,3.181,3.130,3.079,3.030,2.983,2.940,2.901,2.867,2.838,2.815,2.796,2.783,2.773,2.768,
-2.765,2.764,2.764,2.763,2.761,2.757,2.749,2.738,2.723,2.702,2.678,2.649,2.616,2.580,2.542,2.503,
-2.463,2.425,2.389,2.357,2.330,2.308,2.293,2.285,2.284,2.290,2.304,2.324,2.350,2.380,2.414,2.451,
-2.488,2.525,2.560,2.592,2.620,2.642,2.660,2.671,2.677,2.677,2.672,2.664,2.653,2.641,2.630,2.622,
-2.618,2.620,2.630,2.650,2.681,2.723,2.778,2.845,2.926,3.018,3.120,3.233,3.352,3.478,3.605,3.734,
-3.859,3.979,4.090,4.190,4.277,4.348,4.401,4.435,4.450,4.444,4.417,4.371,4.307,4.225,4.128,4.019,
-3.899,3.772,3.641,3.508,3.377,3.250,3.130,3.018,2.917,2.829,2.754,2.692,2.644,2.610,2.589,2.579,
-2.580,2.588,2.604,2.623,2.645,2.667,2.688,2.704,2.716,2.721,2.719,2.708,2.689,2.661,2.625,2.581,
-2.530,2.474,2.413,2.349,2.284,2.219,2.155,2.094,2.036,1.984,1.938,1.898,1.865,1.839,1.821,1.810,
-1.805,1.807,1.814,1.827,1.844,1.865,1.888,1.914,1.942,1.971,2.001,2.031,2.063,2.094,2.126,2.159,
-2.192,2.226,2.261,2.298,2.335,2.375,2.415,2.457,2.500,2.544,2.590,2.635,2.681,2.726,2.771,2.814,
-2.856,2.895,2.932,2.965,2.996,3.023,3.047,3.067,3.084,3.097,3.107,3.115,3.120,3.124,3.126,3.128,
-3.129,3.130,3.132,3.135,3.140,3.147,3.156,3.168,3.182,3.199,3.219,3.242,3.268,3.296,3.326,3.359,
-3.393,3.428,3.464,3.500,3.537,3.573,3.609,3.643,3.677,3.708,3.737,3.764,3.789,3.812,3.832,3.850,
-3.865,3.879,3.891,3.902,3.911,3.920,3.929,3.937,3.946,3.956,3.967,3.979,3.992,4.007,4.024,4.043,
-4.063,4.084,4.107,4.130,4.153,4.176,4.197,4.218,4.237,4.253,4.266,4.276,4.282,4.283,4.281,4.274,
-4.262,4.247,4.227,4.203,4.176,4.146,4.114,4.080,4.045,4.009,3.973,3.938,3.904,3.872,3.842,3.814,
-3.788,3.765,3.745,3.727,3.711,3.697,3.685,3.674,3.664,3.654,3.645,3.635,3.625,3.613,3.601,3.587,
-3.572,3.556,3.539,3.521,3.502,3.483,3.464,3.446,3.428,3.412,3.398,3.385,3.375,3.368,3.364,3.363,
-3.365,3.370,3.378,3.390,3.404,3.420,3.439,3.459,3.481,3.504,3.526,3.549,3.571,3.591,3.611,3.627,
-3.642,3.653,3.662,3.666,3.668,3.665,3.658,3.648,3.633,3.615,3.593,3.568,3.540,3.509,3.476,3.441,
-3.404,3.366,3.328,3.290,3.252,3.215,3.179,3.145,3.112,3.082,3.053,3.026,3.002,2.979,2.958,2.938,
-2.919,2.901,2.883,2.864,2.846,2.826,2.805,2.782,2.758,2.732,2.704,2.674,2.643,2.610,2.576,2.541,
-2.506,2.471,2.436,2.403,2.370,2.340,2.311,2.285,2.262,2.241,2.223,2.207,2.194,2.184,2.175,2.168,
-2.163,2.159,2.156,2.153,2.151,2.149,2.147,2.145,2.143,2.142,2.141,2.140,2.141,2.142,2.145,2.150,
-2.156,2.165,2.176,2.190,2.207,2.225,2.247,2.270,2.296,2.323,2.351,2.381,2.411,2.440,2.470,2.499,
-2.526,2.553,2.577,2.600,2.622,2.641,2.659,2.675,2.689,2.703,2.715,2.727,2.738,2.749,2.760,2.771,
-2.783,2.796,2.809,2.822,2.837,2.851,2.867,2.882,2.897,2.912,2.927,2.941,2.954,2.965,2.976,2.984,
-2.991,2.996,2.999,3.001,3.000,2.998,2.994,2.989,2.983,2.976,2.968,2.959,2.951,2.943,2.936,2.929,
-2.924,2.920,2.918,2.917,2.918,2.921,2.925,2.932,2.939,2.948,2.958,2.969,2.980,2.991,3.001,3.011,
-3.019,3.026,3.031,3.034,3.035,3.034,3.031,3.027,3.021,3.014,3.007,3.000,2.993,2.988,2.986,2.987,
-2.991,3.000,3.014,3.034,3.059,3.091,3.129,3.173,3.223,3.279,3.340,3.405,3.475,3.547,3.623,3.700,
-3.777,3.855,3.932,4.009,4.084,4.157,4.228,4.297,4.364,4.429,4.493,4.556,4.619,4.683,4.747,4.812,
-4.880,4.951,5.025,5.102,5.184,5.270,5.361,5.456,5.557,5.662,5.772,5.886,6.004,6.127,6.254,6.384,
-6.517,6.653,6.792,6.934,7.077,7.221,7.367,7.513,7.660,7.806,7.951,8.094,8.235,8.372,8.506,8.634,
-8.757,8.874,8.983,9.086,9.180,9.266,9.345,9.415,9.478,9.534,9.584,9.629,9.671,9.710,9.749,9.789,
-9.832,9.879,9.932,9.993,10.062,10.141,10.230,10.330,10.440,10.561,10.691,10.831,10.978,11.131,11.288,11.447,
-11.607,11.765,11.921,12.071,12.215,12.352,12.480,12.600,12.712,12.816,12.913,13.005,13.093,13.179,13.265,13.355,
-13.450,13.553,13.665,13.791,13.930,14.084,14.255,14.443,14.648,14.869,15.104,15.353,15.613,15.881,16.155,16.432,
-16.709,16.981,17.247,17.503,17.747,17.977,18.190,18.386,18.564,18.724,18.866,18.992,19.103,19.200,19.287,19.365,
-19.438,19.507,19.575,19.644,19.717,19.795,19.879,19.969,20.065,20.167,20.274,20.384,20.494,20.603,20.707,20.804,
-20.890,20.963,21.020,21.059,21.077,21.073,21.046,20.995,20.921,20.825,20.708,20.572,20.420,20.255,20.079,19.897,
-19.711,19.525,19.343,19.166,18.998,18.840,18.695,18.562,18.442,18.334,18.238,18.153,18.075,18.002,17.933,17.864,
-17.792,17.715,17.629,17.533,17.425,17.303,17.167,17.016,16.851,16.672,16.481,16.281,16.073,15.861,15.648,15.437,
-15.233,15.038,14.855,14.689,14.541,14.415,14.313,14.235,14.182,14.156,14.156,14.181,14.231,14.303,14.397,14.508,
-14.637,14.779,14.932,15.094,15.262,15.434,15.609,15.784,15.957,16.128,16.295,16.459,16.618,16.772,16.922,17.068,
-17.210,17.348,17.484,17.618,17.750,17.881,18.011,18.141,18.270,18.400,18.530,18.659,18.789,18.919,19.048,19.176,
-19.304,19.430,19.556,19.680,19.804,19.928,20.051,20.174,20.299,20.425,20.553,20.686,20.822,20.965,21.114,21.271,
-21.436,21.612,21.798,21.996,22.205,22.428,22.663,22.911,23.173,23.447,23.734,24.032,24.341,24.661,24.989,25.324,
-25.666,26.013,26.362,26.714,27.065,27.415,27.761,28.103,28.438,28.766,29.086,29.395,29.694,29.980,30.254,30.516,
-30.763,30.996,31.216,31.421,31.612,31.790,31.953,32.103,32.240,32.364,32.475,32.575,32.664,32.742,32.809,32.867,
-32.915,32.954,32.985,33.008,33.024,33.033,33.036,33.032,33.024,33.011,32.993,32.972,32.947,32.919,32.889,32.858,
-32.824,32.790,32.754,32.718,32.682,32.645,32.608,32.570,32.532,32.493,32.453,32.412,32.368,32.323,32.275,32.223,
-32.167,32.107,32.042,31.971,31.893,31.808,31.716,31.617,31.509,31.392,31.267,31.134,30.991,30.841,30.682,30.515,
-30.341,30.161,29.976,29.786,29.592,29.397,29.202,29.007,28.816,28.629,28.449,28.277,28.116,27.966,27.830,27.710,
-27.607,27.522,27.456,27.411,27.387,27.384,27.402,27.442,27.502,27.583,27.682,27.799,27.932,28.080,28.241,28.413,
-28.595,28.784,28.979,29.179,29.381,29.585,29.789,29.992,30.193,30.392,30.586,30.776,30.961,31.141,31.313,31.478,
-31.635,31.783,31.920,32.044,32.156,32.252,32.331,32.391,32.431,32.448,32.443,32.412,32.355,32.272,32.163,32.027,
-31.866,31.681,31.476,31.251,31.011,30.760,30.502,30.242,29.985,29.735,29.498,29.279,29.083,28.914,28.776,28.671,
-28.603,28.572,28.579,28.624,28.706,28.823,28.972,29.148,29.348,29.567,29.801,30.042,30.287,30.529,30.764,30.987,
-31.193,31.381,31.430,31.622,31.786,31.919,32.021,32.090,32.129,32.139,32.123,32.083,32.024,31.950,31.865,31.773,
-31.679,31.586,31.498,31.418,31.347,31.289,31.243,31.209,31.189,31.179,31.179,31.187,31.201,31.217,31.234,31.249,
-31.260,31.263,31.258,31.243,31.216,31.177,31.126,31.063,30.989,30.904,30.810,30.709,30.602,30.492,30.380,30.269,
-30.159,30.054,29.954,29.860,29.775,29.697,29.628,29.569,29.518,29.475,29.441,29.413,29.392,29.376,29.365,29.356,
-29.350,29.344,29.338,29.332,29.323,29.313,29.299,29.281,29.259,29.233,29.202,29.167,29.127,29.082,29.032,28.978,
-28.920,28.857,28.790,28.720,28.646,28.569,28.489,28.406,28.321,28.234,28.144,28.053,27.960,27.865,27.769,27.671,
-27.572,27.471,27.369,27.266,27.161,27.055,26.946,26.837,26.726,26.613,26.498,26.383,26.266,26.148,26.030,25.911,
-25.793,25.674,25.557,25.440,25.325,25.212,25.100,24.991,24.884,24.778,24.675,24.574,24.474,24.376,24.278,24.180,
-24.082,23.983,23.883,23.781,23.677,23.571,23.462,23.350,23.235,23.118,22.999,22.878,22.756,22.633,22.510,22.388,
-22.268,22.150,22.034,21.922,21.814,21.710,21.611,21.516,21.426,21.341,21.260,21.183,21.109,21.039,20.971,20.906,
-20.842,20.779,20.718,20.657,20.597,20.537,20.478,20.420,20.362,20.306,20.251,20.197,20.144,20.093,20.044,19.995,
-19.948,19.901,19.855,19.808,19.759,19.708,19.654,19.596,19.533,19.465,19.390,19.308,19.219,19.122,19.018,18.907,
-18.789,18.665,18.535,18.402,18.266,18.129,17.991,17.855,17.721,17.590,17.464,17.344,17.229,17.122,17.020,16.925,
-16.837,16.754,16.677,16.604,16.534,16.468,16.403,16.339,16.276,16.213,16.150,16.087,16.023,15.959,15.895,15.832,
-15.770,15.711,15.654,15.601,15.551,15.506,15.465,15.428,15.395,15.364,15.336,15.309,15.281,15.251,15.217,15.177,
-15.129,15.072,15.003,14.922,14.827,14.717,14.591,14.451,14.295,14.125,13.942,13.748,13.544,13.333,13.117,12.898,
-12.680,12.463,12.251,12.045,11.848,11.661,11.485,11.320,11.167,11.026,10.897,10.777,10.668,10.566,10.472,10.383,
-10.298,10.216,10.136,10.057,9.979,9.900,9.821,9.743,9.665,9.589,9.515,9.445,9.379,9.320,9.267,9.222,
-9.186,9.159,9.142,9.134,9.134,9.143,9.160,9.182,9.208,9.238,9.268,9.297,9.323,9.345,9.360,9.368,
-9.367,9.357,9.337,9.306,9.266,9.216,9.157,9.090,9.017,8.938,8.855,8.770,8.683,8.597,8.512,8.429,
-8.349,8.273,8.200,8.131,8.066,8.005,7.947,7.891,7.837,7.784,7.732,7.679,7.626,7.572,7.516,7.458,
-7.399,7.338,7.277,7.214,7.151,7.089,7.028,6.969,6.913,6.860,6.812,6.768,6.730,6.698,6.673,6.655,
-6.643,6.638,6.640,6.649,6.664,6.684,6.710,6.739,6.773,6.809,6.846,6.884,6.921,6.957,6.989,7.018,
-7.041,7.057,7.067,7.067,7.059,7.041,7.012,6.972,6.922,6.860,6.789,6.707,6.617,6.518,6.413,6.303,
-6.189,6.073,5.957,5.842,5.729,5.621,5.519,5.423,5.335,5.256,5.184,5.121,5.067,5.019,4.978,4.943,
-4.911,4.881,4.852,4.821,4.787,4.748,4.702,4.648,4.585,4.511,4.427,4.330,4.222,4.102,3.972,3.831,
-3.682,3.525,3.362,3.195,3.026,2.857,2.690,2.526,2.368,2.218,2.077,1.946,1.828,1.722,1.629,1.551,
-1.487,1.438,1.402,1.380,1.371,1.373,1.387,1.411,1.443,1.483,1.529,1.579,1.634,1.690,1.749,1.808,
-1.867,1.925,1.982,2.037,2.090,2.141,2.190,2.236,2.281,2.323,2.364,2.403,2.440,2.476,2.510,2.541,
-2.571,2.598,2.622,2.642,2.660,2.673,2.681,2.685,2.683,2.677,2.665,2.648,2.626,2.600,2.571,2.538,
-2.503,2.468,2.432,2.397,2.365,2.336,2.311,2.291,2.276,2.268,2.265,2.268,2.277,2.290,2.308,2.329,
-2.352,2.375,2.398,2.418,2.435,2.448,2.455,2.455,2.449,2.434,2.413,2.384,2.348,2.306,2.259,2.209,
-2.156,2.102,2.049,1.999,1.952,1.909,1.873,1.844,1.822,1.809,1.803,1.805,1.813,1.829,1.849,1.874,
-1.902,1.931,1.961,1.990,2.017,2.042,2.062,2.079,2.092,2.100,2.105,2.107,2.107,2.106,2.106,2.108,
-2.114,2.124,2.142,2.167,2.201,2.245,2.300,2.365,2.442,2.529,2.625,2.729,2.840,2.957,3.075,3.195,
-3.312,3.425,3.531,3.628,3.713,3.785,3.841,3.880,3.901,3.904,3.888,3.854,3.802,3.734,3.651,3.555,
-3.449,3.334,3.213,3.089,2.965,2.843,2.725,2.615,2.513,2.422,2.343,2.277,2.223,2.183,2.155,2.140,
-2.136,2.141,2.154,2.174,2.197,2.224,2.251,2.277,2.299,2.318,2.331,2.338,2.339,2.332,2.317,2.296,
-2.269,2.236,2.199,2.158,2.116,2.072,2.028,1.985,1.945,1.908,1.875,1.846,1.822,1.802,1.787,1.776,
-1.769,1.766,1.766,1.768,1.771,1.776,1.782,1.787,1.793,1.799,1.804,1.810,1.815,1.822,1.829,1.838,
-1.849,1.863,1.880,1.900,1.925,1.954,1.988,2.026,2.068,2.114,2.164,2.216,2.271,2.328,2.385,2.443,
-2.499,2.554,2.607,2.656,2.703,2.745,2.783,2.817,2.847,2.872,2.894,2.912,2.927,2.938,2.948,2.956,
-2.964,2.970,2.977,2.984,2.991,3.001,3.011,3.024,3.038,3.054,3.072,3.092,3.114,3.138,3.163,3.189,
-3.217,3.246,3.275,3.305,3.335,3.365,3.395,3.424,3.454,3.482,3.510,3.537,3.563,3.588,3.612,3.635,
-3.658,3.679,3.700,3.720,3.740,3.759,3.778,3.797,3.817,3.837,3.857,3.878,3.900,3.922,3.945,3.968,
-3.992,4.016,4.039,4.062,4.085,4.105,4.124,4.140,4.154,4.164,4.171,4.174,4.172,4.166,4.156,4.141,
-4.122,4.098,4.071,4.040,4.006,3.970,3.932,3.893,3.854,3.815,3.777,3.741,3.706,3.674,3.644,3.618,
-3.594,3.573,3.555,3.539,3.525,3.513,3.502,3.492,3.482,3.472,3.461,3.449,3.436,3.421,3.404,3.386,
-3.366,3.344,3.322,3.298,3.274,3.250,3.227,3.204,3.183,3.164,3.147,3.133,3.121,3.113,3.107,3.105,
-3.105,3.107,3.112,3.118,3.125,3.134,3.143,3.151,3.160,3.167,3.173,3.178,3.181,3.182,3.181,3.178,
-3.173,3.165,3.156,3.145,3.132,3.117,3.101,3.083,3.063,3.042,3.018,2.993,2.967,2.938,2.907,2.874,
-2.840,2.803,2.765,2.725,2.683,2.640,2.596,2.552,2.507,2.463,2.419,2.376,2.335,2.295,2.258,2.223,
-2.191,2.161,2.134,2.109,2.087,2.067,2.049,2.033,2.018,2.004,1.990,1.977,1.964,1.951,1.938,1.924,
-1.910,1.896,1.881,1.866,1.851,1.836,1.821,1.807,1.794,1.781,1.769,1.759,1.749,1.740,1.732,1.725,
-1.718,1.712,1.706,1.701,1.695,1.689,1.684,1.678,1.672,1.667,1.662,1.658,1.655,1.654,1.654,1.656,
-1.661,1.668,1.678,1.692,1.709,1.728,1.751,1.777,1.806,1.837,1.871,1.905,1.941,1.978,2.015,2.051,
-2.086,2.121,2.153,2.184,2.213,2.239,2.263,2.284,2.303,2.319,2.332,2.343,2.352,2.358,2.363,2.365,
-2.366,2.365,2.362,2.358,2.352,2.346,2.339,2.330,2.321,2.312,2.302,2.292,2.282,2.272,2.263,2.254,
-2.246,2.238,2.232,2.226,2.221,2.217,2.214,2.211,2.208,2.206,2.203,2.200,2.196,2.192,2.186,2.179,
-2.172,2.163,2.152,2.141,2.130,2.117,2.105,2.092,2.080,2.068,2.058,2.049,2.042,2.036,2.032,2.031,
-2.031,2.033,2.037,2.043,2.050,2.059,2.069,2.080,2.092,2.105,2.120,2.135,2.151,2.170,2.190,2.213,
-2.238,2.267,2.299,2.336,2.378,2.424,2.475,2.532,2.594,2.661,2.734,2.811,2.892,2.978,3.066,3.157,
-3.249,3.343,3.438,3.532,3.626,3.719,3.811,3.901,3.990,4.078,4.165,4.251,4.336,4.421,4.507,4.593,
-4.680,4.768,4.858,4.949,5.042,5.137,5.234,5.332,5.431,5.531,5.631,5.732,5.832,5.932,6.031,6.129,
-6.226,6.321,6.416,6.509,6.601,6.693,6.783,6.874,6.964,7.054,7.144,7.234,7.324,7.413,7.503,7.591,
-7.678,7.764,7.848,7.929,8.007,8.082,8.154,8.222,8.287,8.348,8.407,8.464,8.520,8.575,8.632,8.690,
-8.753,8.820,8.894,8.975,9.065,9.164,9.274,9.394,9.524,9.665,9.815,9.974,10.140,10.312,10.489,10.667,
-10.846,11.024,11.198,11.367,11.530,11.685,11.831,11.968,12.096,12.215,12.327,12.433,12.533,12.632,12.730,12.831,
-12.937,13.051,13.176,13.314,13.467,13.637,13.825,14.032,14.259,14.505,14.768,15.049,15.343,15.649,15.964,16.284,
-16.606,16.926,17.239,17.543,17.833,18.107,18.362,18.595,18.804,18.989,19.149,19.285,19.396,19.484,19.551,19.600,
-19.632,19.651,19.660,19.662,19.660,19.657,19.654,19.655,19.660,19.671,19.689,19.713,19.744,19.779,19.819,19.861,
-19.904,19.944,19.981,20.011,20.032,20.044,20.043,20.029,20.000,19.957,19.898,19.825,19.739,19.639,19.528,19.407,
-19.278,19.143,19.003,18.861,18.716,18.571,18.427,18.283,18.141,17.999,17.857,17.714,17.570,17.421,17.268,17.109,
-16.941,16.764,16.577,16.380,16.171,15.951,15.722,15.483,15.238,14.987,14.735,14.483,14.237,13.998,13.771,13.561,
-13.369,13.201,13.058,12.945,12.862,12.813,12.797,12.815,12.868,12.953,13.070,13.217,13.391,13.589,13.808,14.044,
-14.294,14.555,14.821,15.091,15.361,15.628,15.890,16.144,16.388,16.623,16.846,17.058,17.258,17.448,17.627,17.797,
-17.958,18.113,18.262,18.407,18.549,18.690,18.830,18.970,19.111,19.254,19.399,19.547,19.697,19.849,20.003,20.158,
-20.315,20.473,20.631,20.789,20.947,21.105,21.261,21.418,21.573,21.729,21.884,22.040,22.197,22.356,22.518,22.683,
-22.853,23.028,23.209,23.397,23.592,23.797,24.010,24.233,24.466,24.709,24.962,25.226,25.499,25.782,26.074,26.374,
-26.682,26.996,27.315,27.640,27.967,28.296,28.625,28.954,29.280,29.603,29.921,30.233,30.537,30.832,31.117,31.392,
-31.654,31.904,32.141,32.363,32.571,32.764,32.941,33.103,33.249,33.379,33.494,33.594,33.679,33.749,33.805,33.848,
-33.878,33.897,33.904,33.901,33.889,33.870,33.843,33.811,33.775,33.735,33.693,33.651,33.608,33.567,33.528,33.492,
-33.459,33.431,33.406,33.386,33.371,33.360,33.352,33.348,33.346,33.346,33.346,33.346,33.345,33.340,33.331,33.318,
-33.298,33.271,33.236,33.192,33.138,33.075,33.002,32.918,32.824,32.720,32.606,32.483,32.351,32.211,32.063,31.909,
-31.749,31.584,31.414,31.242,31.067,30.892,30.716,30.541,30.368,30.198,30.033,29.873,29.720,29.575,29.439,29.313,
-29.199,29.097,29.008,28.934,28.875,28.831,28.803,28.791,28.795,28.813,28.847,28.894,28.955,29.028,29.111,29.203,
-29.304,29.412,29.526,29.645,29.767,29.893,30.021,30.152,30.285,30.420,30.557,30.698,30.841,30.988,31.138,31.291,
-31.448,31.608,31.770,31.932,32.093,32.251,32.404,32.547,32.680,32.797,32.896,32.973,33.025,33.049,33.042,33.001,
-32.926,32.816,32.670,32.491,32.279,32.037,31.771,31.483,31.180,30.868,30.553,30.242,29.942,29.660,29.402,29.174,
-28.981,28.828,28.719,28.655,28.637,28.666,28.740,28.857,29.012,29.202,29.420,29.662,29.919,30.186,30.455,30.720,
-30.975,31.213,31.430,31.597,31.763,31.901,32.007,32.082,32.124,32.135,32.118,32.074,32.007,31.922,31.823,31.714,
-31.601,31.488,31.379,31.277,31.186,31.108,31.045,30.997,30.965,30.948,30.944,30.953,30.971,30.996,31.026,31.057,
-31.086,31.112,31.132,31.143,31.144,31.135,31.113,31.080,31.036,30.981,30.916,30.844,30.765,30.681,30.595,30.509,
-30.424,30.342,30.265,30.194,30.130,30.074,30.027,29.989,29.960,29.939,29.926,29.920,29.920,29.926,29.936,29.949,
-29.963,29.979,29.993,30.006,30.016,30.023,30.025,30.021,30.012,29.996,29.973,29.943,29.905,29.860,29.807,29.747,
-29.680,29.606,29.526,29.441,29.351,29.256,29.159,29.060,28.959,28.859,28.759,28.660,28.564,28.471,28.382,28.297,
-28.215,28.138,28.064,27.995,27.928,27.863,27.799,27.736,27.672,27.607,27.538,27.466,27.389,27.307,27.218,27.123,
-27.022,26.913,26.798,26.678,26.551,26.421,26.286,26.149,26.010,25.870,25.730,25.592,25.456,25.322,25.191,25.064,
-24.940,24.819,24.701,24.586,24.473,24.362,24.251,24.140,24.029,23.916,23.802,23.685,23.566,23.444,23.320,23.193,
-23.063,22.932,22.798,22.664,22.529,22.393,22.258,22.123,21.990,21.857,21.726,21.597,21.468,21.342,21.216,21.091,
-20.968,20.845,20.723,20.602,20.481,20.362,20.243,20.126,20.012,19.899,19.790,19.684,19.583,19.486,19.395,19.308,
-19.228,19.153,19.084,19.020,18.960,18.904,18.851,18.800,18.750,18.700,18.648,18.593,18.534,18.470,18.401,18.325,
-18.243,18.154,18.059,17.957,17.850,17.737,17.621,17.502,17.381,17.260,17.139,17.019,16.903,16.789,16.680,16.576,
-16.476,16.381,16.291,16.205,16.123,16.045,15.969,15.895,15.823,15.751,15.681,15.610,15.539,15.468,15.398,15.327,
-15.258,15.190,15.123,15.059,14.998,14.940,14.886,14.835,14.788,14.744,14.703,14.664,14.626,14.587,14.546,14.502,
-14.452,14.396,14.331,14.257,14.171,14.073,13.962,13.837,13.699,13.548,13.385,13.211,13.027,12.835,12.637,12.436,
-12.233,12.030,11.831,11.636,11.447,11.266,11.095,10.933,10.781,10.639,10.507,10.384,10.269,10.160,10.058,9.960,
-9.864,9.770,9.676,9.582,9.486,9.389,9.290,9.189,9.088,8.986,8.885,8.786,8.690,8.599,8.514,8.436,
-8.366,8.306,8.255,8.215,8.184,8.162,8.150,8.145,8.147,8.154,8.164,8.176,8.189,8.200,8.208,8.212,
-8.210,8.203,8.189,8.168,8.140,8.106,8.065,8.020,7.969,7.915,7.858,7.799,7.739,7.679,7.619,7.559,
-7.500,7.442,7.384,7.325,7.267,7.207,7.146,7.082,7.016,6.947,6.874,6.797,6.717,6.633,6.547,6.458,
-6.367,6.275,6.184,6.094,6.005,5.920,5.838,5.762,5.690,5.624,5.565,5.511,5.464,5.423,5.388,5.358,
-5.334,5.314,5.299,5.288,5.281,5.277,5.277,5.280,5.288,5.298,5.313,5.332,5.355,5.382,5.414,5.449,
-5.488,5.531,5.576,5.622,5.670,5.717,5.763,5.806,5.845,5.879,5.907,5.927,5.939,5.943,5.938,5.924,
-5.902,5.872,5.834,5.790,5.741,5.689,5.634,5.578,5.522,5.468,5.416,5.367,5.321,5.279,5.241,5.206,
-5.173,5.141,5.109,5.077,5.041,5.000,4.954,4.900,4.837,4.764,4.680,4.584,4.475,4.355,4.222,4.077,
-3.922,3.757,3.584,3.403,3.218,3.029,2.839,2.649,2.462,2.279,2.101,1.931,1.770,1.619,1.478,1.350,
-1.234,1.132,1.042,.966,.902,.852,.814,.787,.771,.766,.770,.782,.802,.829,.861,.898,
-.939,.984,1.032,1.081,1.133,1.185,1.238,1.292,1.345,1.399,1.452,1.504,1.556,1.606,1.654,1.700,
-1.744,1.785,1.822,1.855,1.883,1.906,1.925,1.937,1.944,1.945,1.940,1.931,1.916,1.898,1.877,1.853,
-1.829,1.806,1.784,1.765,1.751,1.742,1.740,1.745,1.758,1.779,1.808,1.845,1.889,1.939,1.994,2.052,
-2.111,2.170,2.227,2.280,2.327,2.366,2.396,2.416,2.425,2.422,2.408,2.382,2.344,2.297,2.240,2.175,
-2.105,2.030,1.952,1.874,1.797,1.722,1.651,1.585,1.526,1.472,1.427,1.388,1.356,1.331,1.312,1.298,
-1.289,1.284,1.282,1.282,1.283,1.285,1.289,1.293,1.297,1.303,1.310,1.319,1.331,1.346,1.367,1.393,
-1.426,1.466,1.515,1.572,1.639,1.715,1.801,1.895,1.998,2.109,2.226,2.348,2.474,2.601,2.729,2.854,
-2.976,3.091,3.199,3.296,3.382,3.455,3.514,3.557,3.584,3.595,3.589,3.566,3.527,3.473,3.406,3.325,
-3.234,3.134,3.027,2.916,2.801,2.687,2.574,2.466,2.363,2.268,2.182,2.107,2.042,1.989,1.948,1.919,
-1.900,1.893,1.894,1.904,1.920,1.941,1.966,1.993,2.019,2.045,2.068,2.088,2.103,2.114,2.118,2.117,
-2.111,2.100,2.085,2.065,2.043,2.019,1.994,1.969,1.945,1.922,1.902,1.883,1.868,1.854,1.844,1.835,
-1.828,1.823,1.817,1.812,1.806,1.798,1.788,1.777,1.762,1.746,1.727,1.706,1.684,1.661,1.639,1.617,
-1.597,1.581,1.568,1.561,1.558,1.562,1.573,1.590,1.615,1.646,1.683,1.726,1.774,1.827,1.883,1.941,
-2.000,2.060,2.119,2.177,2.233,2.286,2.335,2.381,2.424,2.463,2.498,2.530,2.558,2.584,2.608,2.629,
-2.649,2.667,2.685,2.702,2.719,2.735,2.752,2.768,2.784,2.801,2.817,2.834,2.850,2.867,2.883,2.900,
-2.917,2.935,2.954,2.973,2.994,3.016,3.039,3.065,3.092,3.122,3.154,3.188,3.224,3.263,3.303,3.345,
-3.388,3.432,3.477,3.523,3.568,3.613,3.658,3.701,3.743,3.784,3.823,3.860,3.895,3.928,3.959,3.988,
-4.015,4.039,4.060,4.080,4.096,4.110,4.120,4.128,4.132,4.132,4.129,4.121,4.110,4.094,4.074,4.050,
-4.022,3.990,3.954,3.915,3.874,3.830,3.784,3.738,3.691,3.644,3.599,3.555,3.513,3.473,3.437,3.404,
-3.375,3.349,3.326,3.307,3.291,3.277,3.266,3.256,3.247,3.240,3.232,3.224,3.215,3.205,3.193,3.180,
-3.165,3.149,3.131,3.113,3.093,3.073,3.052,3.032,3.013,2.994,2.977,2.962,2.948,2.935,2.924,2.914,
-2.905,2.897,2.888,2.879,2.869,2.858,2.845,2.829,2.811,2.790,2.766,2.739,2.709,2.677,2.644,2.609,
-2.573,2.538,2.503,2.469,2.437,2.408,2.381,2.357,2.337,2.319,2.304,2.292,2.282,2.273,2.264,2.255,
-2.245,2.233,2.219,2.201,2.180,2.154,2.124,2.090,2.052,2.009,1.964,1.916,1.866,1.816,1.765,1.715,
-1.666,1.621,1.578,1.539,1.504,1.474,1.449,1.428,1.411,1.399,1.390,1.384,1.381,1.379,1.379,1.380,
-1.381,1.381,1.381,1.380,1.377,1.373,1.368,1.361,1.353,1.344,1.334,1.323,1.312,1.300,1.288,1.276,
-1.265,1.253,1.242,1.231,1.220,1.210,1.201,1.193,1.185,1.179,1.174,1.171,1.170,1.171,1.174,1.180,
-1.190,1.202,1.218,1.238,1.260,1.286,1.315,1.347,1.382,1.419,1.457,1.496,1.536,1.575,1.615,1.653,
-1.689,1.723,1.755,1.784,1.811,1.834,1.854,1.871,1.884,1.895,1.902,1.906,1.906,1.904,1.899,1.891,
-1.880,1.866,1.849,1.830,1.807,1.783,1.756,1.726,1.695,1.663,1.629,1.595,1.562,1.528,1.497,1.466,
-1.439,1.414,1.392,1.374,1.359,1.349,1.341,1.338,1.337,1.338,1.342,1.347,1.352,1.357,1.362,1.365,
-1.365,1.364,1.360,1.353,1.343,1.331,1.316,1.300,1.282,1.264,1.246,1.229,1.214,1.201,1.191,1.185,
-1.183,1.186,1.193,1.204,1.220,1.240,1.264,1.291,1.322,1.356,1.393,1.431,1.472,1.515,1.560,1.607,
-1.656,1.708,1.763,1.821,1.883,1.949,2.020,2.096,2.177,2.263,2.355,2.452,2.553,2.659,2.770,2.883,
-3.000,3.119,3.239,3.360,3.482,3.603,3.724,3.843,3.961,4.077,4.192,4.305,4.416,4.526,4.634,4.741,
-4.847,4.952,5.054,5.156,5.255,5.353,5.447,5.539,5.626,5.710,5.789,5.862,5.930,5.992,6.048,6.098,
-6.142,6.181,6.215,6.245,6.271,6.295,6.319,6.342,6.365,6.391,6.420,6.453,6.491,6.534,6.582,6.636,
-6.695,6.760,6.831,6.906,6.985,7.068,7.154,7.242,7.333,7.425,7.519,7.614,7.710,7.808,7.908,8.011,
-8.117,8.227,8.341,8.460,8.584,8.714,8.850,8.992,9.140,9.293,9.451,9.612,9.776,9.940,10.105,10.267,
-10.426,10.579,10.727,10.867,10.998,11.120,11.233,11.337,11.432,11.520,11.601,11.677,11.750,11.824,11.899,11.979,
-12.067,12.165,12.275,12.401,12.543,12.704,12.884,13.085,13.306,13.546,13.805,14.082,14.372,14.675,14.987,15.305,
-15.624,15.941,16.252,16.554,16.841,17.112,17.362,17.590,17.792,17.967,18.115,18.235,18.327,18.392,18.431,18.448,
-18.444,18.422,18.386,18.339,18.286,18.229,18.173,18.121,18.075,18.040,18.017,18.007,18.013,18.035,18.073,18.126,
-18.193,18.274,18.365,18.465,18.571,18.680,18.789,18.895,18.996,19.087,19.167,19.233,19.284,19.316,19.330,19.323,
-19.295,19.246,19.176,19.084,18.971,18.837,18.684,18.512,18.322,18.115,17.893,17.655,17.404,17.140,16.864,16.579,
-16.285,15.983,15.676,15.366,15.053,14.741,14.432,14.128,13.832,13.547,13.276,13.022,12.788,12.577,12.392,12.235,
-12.109,12.016,11.958,11.935,11.948,11.998,12.084,12.206,12.362,12.549,12.767,13.011,13.279,13.568,13.874,14.194,
-14.524,14.859,15.198,15.536,15.871,16.200,16.520,16.830,17.128,17.412,17.683,17.940,18.183,18.411,18.627,18.830,
-19.021,19.203,19.376,19.541,19.700,19.854,20.005,20.153,20.300,20.447,20.593,20.741,20.890,21.040,21.193,21.347,
-21.504,21.663,21.823,21.985,22.149,22.314,22.481,22.648,22.817,22.986,23.157,23.329,23.501,23.675,23.851,24.028,
-24.208,24.389,24.574,24.762,24.954,25.149,25.349,25.554,25.764,25.980,26.201,26.429,26.663,26.903,27.150,27.403,
-27.663,27.929,28.200,28.477,28.759,29.044,29.333,29.624,29.916,30.209,30.500,30.789,31.074,31.355,31.629,31.896,
-32.153,32.400,32.636,32.859,33.068,33.262,33.441,33.604,33.749,33.878,33.990,34.085,34.163,34.225,34.271,34.302,
-34.318,34.322,34.315,34.297,34.271,34.237,34.198,34.156,34.111,34.066,34.022,33.981,33.944,33.913,33.887,33.869,
-33.858,33.855,33.859,33.871,33.889,33.914,33.943,33.975,34.009,34.043,34.074,34.103,34.125,34.141,34.147,34.142,
-34.126,34.097,34.055,33.998,33.927,33.843,33.745,33.635,33.514,33.383,33.244,33.098,32.947,32.793,32.637,32.480,
-32.326,32.173,32.025,31.880,31.741,31.607,31.479,31.357,31.240,31.128,31.022,30.921,30.825,30.734,30.647,30.566,
-30.489,30.418,30.353,30.294,30.243,30.198,30.162,30.135,30.116,30.107,30.107,30.116,30.134,30.160,30.193,30.233,
-30.278,30.328,30.381,30.436,30.492,30.549,30.605,30.661,30.717,30.772,30.827,30.884,30.943,31.006,31.073,31.147,
-31.229,31.319,31.419,31.528,31.648,31.776,31.913,32.056,32.203,32.351,32.495,32.633,32.761,32.872,32.965,33.033,
-33.073,33.082,33.058,32.998,32.902,32.769,32.602,32.402,32.173,31.920,31.647,31.362,31.070,30.780,30.498,30.231,
-29.986,29.769,29.587,29.443,29.342,29.284,29.272,29.304,29.379,29.494,29.644,29.826,30.032,30.256,30.491,30.730,
-30.967,31.194,31.406,31.597,32.344,32.481,32.594,32.682,32.741,32.774,32.779,32.759,32.717,32.655,32.577,32.488,
-32.390,32.289,32.187,32.089,31.998,31.916,31.844,31.785,31.739,31.705,31.683,31.673,31.672,31.678,31.690,31.705,
-31.721,31.736,31.749,31.757,31.760,31.757,31.746,31.729,31.706,31.676,31.641,31.602,31.561,31.517,31.474,31.431,
-31.390,31.352,31.317,31.285,31.258,31.235,31.215,31.199,31.184,31.172,31.160,31.148,31.135,31.120,31.103,31.081,
-31.056,31.026,30.991,30.951,30.905,30.854,30.798,30.736,30.669,30.598,30.522,30.441,30.357,30.268,30.176,30.079,
-29.980,29.878,29.772,29.665,29.555,29.443,29.331,29.218,29.105,28.994,28.884,28.777,28.674,28.574,28.480,28.390,
-28.307,28.229,28.157,28.090,28.028,27.971,27.917,27.865,27.814,27.762,27.708,27.651,27.589,27.520,27.445,27.361,
-27.267,27.165,27.052,26.931,26.800,26.662,26.516,26.365,26.210,26.052,25.893,25.734,25.578,25.425,25.277,25.134,
-24.998,24.869,24.746,24.630,24.520,24.415,24.314,24.216,24.121,24.026,23.930,23.833,23.732,23.628,23.518,23.403,
-23.282,23.155,23.022,22.883,22.738,22.588,22.434,22.276,22.115,21.952,21.787,21.621,21.456,21.291,21.127,20.964,
-20.803,20.644,20.488,20.335,20.184,20.037,19.894,19.755,19.621,19.491,19.367,19.248,19.136,19.030,18.931,18.839,
-18.754,18.676,18.605,18.540,18.480,18.425,18.375,18.326,18.280,18.233,18.186,18.136,18.083,18.025,17.962,17.892,
-17.815,17.731,17.639,17.541,17.435,17.324,17.207,17.086,16.961,16.835,16.708,16.582,16.458,16.336,16.217,16.103,
-15.993,15.889,15.789,15.694,15.604,15.517,15.434,15.353,15.274,15.196,15.119,15.041,14.962,14.883,14.802,14.720,
-14.637,14.554,14.470,14.387,14.304,14.224,14.145,14.069,13.996,13.927,13.860,13.797,13.737,13.678,13.621,13.563,
-13.505,13.444,13.379,13.309,13.232,13.147,13.054,12.950,12.836,12.711,12.576,12.430,12.274,12.110,11.938,11.761,
-11.578,11.393,11.207,11.022,10.840,10.661,10.487,10.320,10.160,10.007,9.861,9.724,9.593,9.468,9.349,9.235,
-9.124,9.015,8.909,8.802,8.696,8.589,8.482,8.373,8.264,8.156,8.047,7.941,7.837,7.737,7.641,7.552,
-7.469,7.394,7.328,7.269,7.220,7.179,7.145,7.120,7.100,7.086,7.075,7.067,7.061,7.055,7.047,7.037,
-7.025,7.009,6.988,6.964,6.936,6.904,6.868,6.830,6.790,6.749,6.706,6.663,6.620,6.578,6.535,6.492,
-6.449,6.404,6.357,6.308,6.254,6.196,6.132,6.062,5.984,5.899,5.807,5.708,5.602,5.490,5.374,5.254,
-5.132,5.011,4.891,4.774,4.663,4.558,4.460,4.371,4.292,4.222,4.162,4.111,4.068,4.034,4.006,3.983,
-3.965,3.951,3.938,3.927,3.917,3.907,3.898,3.890,3.884,3.880,3.880,3.884,3.895,3.914,3.941,3.978,
-4.025,4.083,4.151,4.230,4.318,4.414,4.516,4.623,4.732,4.841,4.947,5.048,5.142,5.227,5.300,5.362,
-5.410,5.446,5.468,5.477,5.475,5.464,5.443,5.417,5.386,5.352,5.319,5.286,5.257,5.231,5.209,5.193,
-5.181,5.173,5.167,5.164,5.160,5.154,5.144,5.128,5.103,5.069,5.022,4.963,4.889,4.801,4.698,4.579,
-4.446,4.299,4.140,3.970,3.790,3.603,3.411,3.215,3.018,2.821,2.626,2.436,2.251,2.074,1.904,1.744,
-1.594,1.455,1.327,1.209,1.103,1.009,.925,.851,.788,.735,.691,.656,.629,.609,.597,.592,
-.593,.600,.613,.631,.654,.683,.716,.754,.796,.842,.892,.946,1.002,1.061,1.121,1.182,
-1.243,1.303,1.360,1.414,1.464,1.508,1.546,1.576,1.598,1.612,1.617,1.614,1.603,1.585,1.560,1.530,
-1.498,1.464,1.430,1.398,1.371,1.350,1.337,1.333,1.340,1.357,1.386,1.426,1.477,1.537,1.605,1.680,
-1.759,1.839,1.919,1.996,2.068,2.132,2.186,2.228,2.258,2.274,2.276,2.263,2.237,2.197,2.146,2.084,
-2.013,1.935,1.852,1.765,1.678,1.590,1.504,1.421,1.342,1.267,1.197,1.132,1.072,1.016,.965,.918,
-.875,.834,.797,.762,.729,.700,.673,.650,.632,.619,.612,.612,.621,.639,.667,.705,
-.755,.816,.890,.974,1.070,1.175,1.290,1.413,1.543,1.677,1.815,1.954,2.093,2.230,2.363,2.490,
-2.610,2.722,2.824,2.915,2.994,3.061,3.116,3.157,3.185,3.200,3.202,3.191,3.168,3.134,3.089,3.034,
-2.971,2.901,2.824,2.742,2.658,2.571,2.484,2.397,2.314,2.234,2.159,2.090,2.029,1.976,1.931,1.894,
-1.867,1.848,1.837,1.834,1.837,1.846,1.858,1.874,1.891,1.908,1.925,1.939,1.950,1.957,1.960,1.958,
-1.952,1.941,1.926,1.907,1.887,1.864,1.841,1.819,1.798,1.778,1.762,1.749,1.740,1.734,1.732,1.733,
-1.736,1.741,1.747,1.752,1.756,1.758,1.757,1.751,1.741,1.726,1.707,1.682,1.653,1.619,1.583,1.545,
-1.506,1.468,1.431,1.398,1.369,1.345,1.327,1.316,1.313,1.317,1.329,1.348,1.374,1.406,1.443,1.484,
-1.529,1.576,1.625,1.674,1.723,1.771,1.818,1.863,1.907,1.948,1.988,2.026,2.062,2.098,2.132,2.167,
-2.200,2.234,2.267,2.301,2.334,2.366,2.398,2.428,2.458,2.485,2.511,2.534,2.555,2.574,2.590,2.604,
-2.617,2.629,2.639,2.650,2.662,2.676,2.692,2.711,2.733,2.761,2.793,2.830,2.872,2.919,2.971,3.028,
-3.089,3.153,3.220,3.288,3.357,3.426,3.494,3.560,3.624,3.684,3.741,3.794,3.841,3.885,3.923,3.957,
-3.986,4.010,4.030,4.046,4.058,4.067,4.072,4.073,4.072,4.067,4.060,4.049,4.035,4.018,3.997,3.973,
-3.945,3.914,3.879,3.841,3.800,3.756,3.709,3.661,3.611,3.560,3.508,3.458,3.408,3.360,3.314,3.272,
-3.232,3.197,3.166,3.139,3.116,3.097,3.083,3.072,3.064,3.058,3.055,3.053,3.052,3.050,3.049,3.046,
-3.042,3.036,3.028,3.017,3.005,2.991,2.974,2.956,2.937,2.917,2.896,2.874,2.853,2.831,2.809,2.787,
-2.765,2.742,2.719,2.694,2.667,2.639,2.607,2.573,2.535,2.493,2.448,2.398,2.346,2.290,2.232,2.172,
-2.111,2.051,1.992,1.936,1.883,1.835,1.792,1.755,1.725,1.702,1.686,1.676,1.673,1.674,1.680,1.689,
-1.699,1.710,1.720,1.727,1.730,1.728,1.720,1.706,1.685,1.658,1.624,1.583,1.538,1.488,1.435,1.381,
-1.326,1.271,1.219,1.171,1.127,1.088,1.055,1.028,1.007,.992,.983,.980,.980,.985,.992,1.000,
-1.010,1.020,1.029,1.036,1.042,1.045,1.045,1.043,1.039,1.031,1.022,1.011,.998,.984,.970,.955,
-.940,.925,.910,.896,.883,.871,.860,.850,.841,.834,.829,.825,.824,.824,.827,.833,
-.842,.854,.868,.886,.907,.931,.958,.986,1.017,1.049,1.081,1.114,1.146,1.177,1.206,1.232,
-1.256,1.277,1.294,1.307,1.316,1.321,1.323,1.321,1.316,1.308,1.297,1.283,1.268,1.250,1.231,1.209,
-1.186,1.161,1.134,1.105,1.073,1.039,1.003,.964,.923,.879,.833,.786,.737,.688,.640,.591,
-.545,.501,.460,.423,.390,.361,.338,.320,.307,.299,.295,.295,.299,.305,.313,.322,
-.332,.342,.351,.359,.366,.372,.376,.381,.385,.389,.395,.402,.412,.425,.442,.463,
-.489,.519,.554,.594,.639,.688,.740,.796,.854,.914,.976,1.039,1.103,1.168,1.234,1.300,
-1.368,1.438,1.510,1.586,1.665,1.749,1.838,1.932,2.033,2.141,2.255,2.376,2.504,2.637,2.776,2.919,
-3.067,3.217,3.369,3.522,3.674,3.826,3.976,4.122,4.266,4.406,4.541,4.673,4.800,4.922,5.040,5.152,
-5.261,5.364,5.462,5.555,5.642,5.723,5.797,5.863,5.922,5.972,6.013,6.045,6.066,6.078,6.081,6.074,
-6.058,6.035,6.005,5.969,5.930,5.889,5.848,5.809,5.773,5.742,5.718,5.703,5.698,5.703,5.719,5.748,
-5.788,5.841,5.905,5.980,6.065,6.160,6.264,6.376,6.495,6.620,6.752,6.888,7.030,7.176,7.328,7.483,
-7.644,7.809,7.979,8.154,8.333,8.516,8.702,8.891,9.081,9.270,9.459,9.644,9.824,9.997,10.161,10.314,
-10.455,10.583,10.695,10.792,10.874,10.939,10.990,11.027,11.051,11.065,11.072,11.074,11.074,11.075,11.081,11.095,
-11.121,11.160,11.217,11.292,11.388,11.506,11.647,11.810,11.996,12.203,12.430,12.674,12.934,13.205,13.485,13.771,
-14.058,14.344,14.624,14.895,15.153,15.396,15.621,15.826,16.008,16.166,16.299,16.408,16.492,16.551,16.588,16.604,
-16.601,16.583,16.551,16.510,16.463,16.414,16.367,16.325,16.292,16.271,16.266,16.278,16.311,16.366,16.444,16.544,
-16.667,16.811,16.975,17.156,17.351,17.556,17.768,17.981,18.192,18.395,18.585,18.759,18.910,19.035,19.130,19.192,
-19.218,19.205,19.154,19.062,18.929,18.758,18.548,18.303,18.024,17.714,17.379,17.020,16.643,16.252,15.851,15.446,
-15.040,14.638,14.245,13.864,13.500,13.156,12.835,12.539,12.272,12.036,11.832,11.661,11.525,11.424,11.358,11.327,
-11.330,11.367,11.437,11.539,11.670,11.829,12.015,12.225,12.457,12.709,12.979,13.264,13.563,13.874,14.194,14.521,
-14.853,15.189,15.527,15.865,16.202,16.537,16.868,17.194,17.515,17.829,18.135,18.434,18.724,19.005,19.277,19.539,
-19.791,20.034,20.267,20.491,20.705,20.911,21.108,21.297,21.479,21.654,21.824,21.988,22.148,22.304,22.458,22.610,
-22.761,22.911,23.062,23.214,23.367,23.522,23.679,23.839,24.002,24.168,24.336,24.508,24.682,24.859,25.038,25.219,
-25.403,25.587,25.774,25.961,26.150,26.340,26.531,26.723,26.916,27.110,27.306,27.505,27.705,27.908,28.115,28.325,
-28.539,28.757,28.980,29.208,29.441,29.678,29.920,30.166,30.416,30.669,30.924,31.180,31.436,31.690,31.941,32.188,
-32.430,32.663,32.888,33.102,33.305,33.494,33.669,33.829,33.973,34.101,34.212,34.307,34.385,34.447,34.495,34.528,
-34.548,34.557,34.556,34.546,34.530,34.509,34.485,34.460,34.436,34.414,34.397,34.385,34.379,34.381,34.391,34.410,
-34.437,34.472,34.515,34.565,34.620,34.679,34.739,34.799,34.856,34.908,34.953,34.987,35.010,35.017,35.008,34.982,
-34.936,34.870,34.783,34.677,34.552,34.408,34.248,34.075,33.889,33.695,33.495,33.293,33.092,32.894,32.703,32.522,
-32.352,32.196,32.054,31.928,31.818,31.724,31.644,31.579,31.525,31.482,31.447,31.418,31.394,31.371,31.349,31.326,
-31.301,31.273,31.242,31.207,31.170,31.130,31.090,31.050,31.012,30.977,30.947,30.922,30.904,30.893,30.890,30.895,
-30.907,30.925,30.948,30.976,31.006,31.037,31.068,31.098,31.124,31.147,31.166,31.181,31.193,31.202,31.210,31.218,
-31.229,31.244,31.266,31.298,31.341,31.396,31.465,31.549,31.647,31.759,31.882,32.015,32.155,32.297,32.439,32.575,
-32.700,32.811,32.902,32.969,33.010,33.021,33.000,32.947,32.862,32.747,32.603,32.435,32.247,32.044,31.832,31.618,
-31.408,31.208,31.025,30.865,30.733,30.631,30.565,30.534,30.541,30.584,30.662,30.771,30.908,31.068,31.246,31.435,
-31.629,31.823,32.010,32.185,32.344,33.480,33.616,33.736,33.838,33.920,33.982,34.023,34.044,34.046,34.032,34.002,
-33.961,33.910,33.852,33.790,33.725,33.660,33.596,33.534,33.476,33.421,33.371,33.324,33.280,33.239,33.200,33.163,
-33.126,33.088,33.051,33.013,32.974,32.936,32.897,32.859,32.823,32.789,32.759,32.732,32.711,32.695,32.685,32.680,
-32.681,32.687,32.697,32.711,32.726,32.741,32.755,32.765,32.770,32.767,32.756,32.734,32.701,32.654,32.595,32.521,
-32.434,32.333,32.220,32.094,31.959,31.814,31.662,31.504,31.342,31.177,31.012,30.847,30.684,30.524,30.367,30.215,
-30.067,29.923,29.785,29.650,29.520,29.394,29.270,29.150,29.032,28.917,28.803,28.692,28.582,28.475,28.370,28.267,
-28.167,28.070,27.977,27.886,27.799,27.716,27.635,27.557,27.481,27.406,27.332,27.256,27.179,27.099,27.015,26.926,
-26.832,26.731,26.623,26.508,26.386,26.257,26.122,25.981,25.836,25.688,25.539,25.388,25.239,25.093,24.950,24.812,
-24.680,24.554,24.435,24.323,24.217,24.118,24.023,23.934,23.847,23.762,23.677,23.591,23.502,23.409,23.311,23.207,
-23.096,22.978,22.851,22.717,22.574,22.424,22.266,22.103,21.934,21.760,21.583,21.403,21.222,21.040,20.860,20.681,
-20.505,20.332,20.164,20.000,19.843,19.692,19.547,19.410,19.280,19.159,19.045,18.939,18.842,18.753,18.671,18.597,
-18.529,18.468,18.412,18.360,18.311,18.265,18.219,18.172,18.123,18.071,18.015,17.953,17.884,17.807,17.722,17.628,
-17.526,17.414,17.294,17.166,17.030,16.888,16.742,16.591,16.437,16.283,16.128,15.976,15.825,15.679,15.537,15.401,
-15.271,15.147,15.029,14.917,14.811,14.709,14.613,14.520,14.430,14.342,14.255,14.168,14.082,13.994,13.905,13.815,
-13.723,13.629,13.535,13.439,13.342,13.246,13.150,13.055,12.963,12.872,12.784,12.699,12.618,12.539,12.463,12.390,
-12.319,12.249,12.179,12.108,12.036,11.961,11.882,11.798,11.708,11.611,11.507,11.395,11.275,11.147,11.011,10.868,
-10.718,10.563,10.403,10.240,10.074,9.906,9.739,9.573,9.409,9.247,9.089,8.935,8.785,8.639,8.497,8.359,
-8.225,8.094,7.965,7.839,7.715,7.593,7.472,7.353,7.236,7.121,7.009,6.901,6.797,6.697,6.604,6.517,
-6.438,6.368,6.306,6.253,6.209,6.174,6.147,6.129,6.117,6.111,6.110,6.112,6.116,6.121,6.125,6.127,
-6.126,6.121,6.111,6.097,6.078,6.054,6.026,5.993,5.956,5.916,5.873,5.828,5.781,5.733,5.682,5.629,
-5.574,5.516,5.454,5.387,5.314,5.235,5.148,5.054,4.950,4.837,4.716,4.586,4.449,4.306,4.158,4.007,
-3.855,3.705,3.558,3.418,3.286,3.165,3.056,2.961,2.879,2.813,2.761,2.722,2.697,2.683,2.679,2.683,
-2.693,2.706,2.721,2.737,2.751,2.764,2.774,2.782,2.788,2.794,2.801,2.810,2.825,2.846,2.875,2.916,
-2.968,3.034,3.115,3.209,3.317,3.438,3.569,3.709,3.854,4.002,4.150,4.293,4.428,4.553,4.665,4.761,
-4.840,4.900,4.943,4.967,4.974,4.967,4.946,4.916,4.878,4.837,4.795,4.754,4.719,4.690,4.670,4.660,
-4.659,4.668,4.687,4.712,4.743,4.777,4.812,4.844,4.870,4.889,4.896,4.891,4.870,4.833,4.778,4.706,
-4.615,4.507,4.383,4.243,4.091,3.927,3.754,3.574,3.389,3.202,3.015,2.830,2.648,2.471,2.300,2.136,
-1.981,1.834,1.696,1.567,1.447,1.337,1.234,1.141,1.055,.976,.905,.840,.781,.728,.681,.640,
-.603,.573,.548,.530,.517,.512,.513,.522,.540,.565,.599,.642,.693,.752,.818,.890,
-.968,1.049,1.132,1.216,1.297,1.374,1.445,1.507,1.560,1.600,1.628,1.642,1.642,1.628,1.601,1.561,
-1.512,1.453,1.389,1.322,1.255,1.190,1.130,1.079,1.038,1.010,.995,.994,1.008,1.037,1.079,1.133,
-1.197,1.268,1.344,1.421,1.498,1.571,1.638,1.696,1.743,1.779,1.801,1.810,1.806,1.789,1.760,1.721,
-1.673,1.617,1.557,1.493,1.427,1.360,1.295,1.232,1.171,1.113,1.058,1.005,.955,.907,.860,.813,
-.766,.719,.671,.622,.573,.524,.476,.430,.387,.350,.319,.296,.282,.280,.289,.312,
-.348,.397,.460,.537,.625,.724,.833,.950,1.072,1.198,1.326,1.453,1.578,1.700,1.815,1.924,
-2.024,2.116,2.198,2.271,2.334,2.387,2.431,2.465,2.491,2.510,2.520,2.524,2.521,2.513,2.499,2.479,
-2.456,2.427,2.395,2.359,2.320,2.279,2.235,2.190,2.144,2.099,2.054,2.011,1.971,1.934,1.901,1.873,
-1.849,1.831,1.817,1.809,1.805,1.805,1.808,1.812,1.818,1.824,1.828,1.829,1.828,1.822,1.812,1.796,
-1.775,1.750,1.720,1.687,1.652,1.615,1.579,1.544,1.512,1.484,1.462,1.445,1.436,1.434,1.439,1.451,
-1.469,1.492,1.519,1.548,1.579,1.608,1.636,1.659,1.677,1.688,1.692,1.688,1.676,1.657,1.630,1.597,
-1.559,1.517,1.472,1.428,1.384,1.342,1.305,1.272,1.246,1.226,1.214,1.208,1.210,1.218,1.232,1.251,
-1.274,1.301,1.330,1.360,1.391,1.422,1.452,1.482,1.512,1.541,1.570,1.600,1.630,1.661,1.695,1.730,
-1.768,1.809,1.852,1.897,1.944,1.993,2.042,2.092,2.140,2.186,2.229,2.269,2.305,2.336,2.362,2.383,
-2.400,2.412,2.421,2.427,2.431,2.436,2.441,2.449,2.460,2.476,2.497,2.525,2.560,2.601,2.650,2.706,
-2.768,2.836,2.908,2.984,3.063,3.142,3.222,3.300,3.376,3.448,3.516,3.579,3.636,3.687,3.733,3.772,
-3.806,3.835,3.858,3.877,3.891,3.902,3.910,3.915,3.917,3.917,3.915,3.911,3.905,3.896,3.884,3.869,
-3.852,3.831,3.806,3.778,3.746,3.710,3.671,3.628,3.582,3.534,3.484,3.433,3.381,3.330,3.281,3.233,
-3.189,3.149,3.113,3.081,3.056,3.036,3.021,3.012,3.008,3.009,3.013,3.021,3.031,3.041,3.052,3.062,
-3.070,3.075,3.076,3.072,3.064,3.050,3.031,3.006,2.977,2.943,2.904,2.863,2.819,2.772,2.725,2.677,
-2.629,2.582,2.535,2.490,2.445,2.401,2.357,2.314,2.269,2.224,2.177,2.128,2.077,2.022,1.966,1.906,
-1.845,1.782,1.718,1.654,1.592,1.531,1.474,1.421,1.374,1.332,1.298,1.270,1.250,1.237,1.230,1.229,
-1.233,1.240,1.249,1.258,1.267,1.274,1.277,1.275,1.268,1.255,1.235,1.210,1.178,1.142,1.101,1.058,
-1.013,.967,.923,.881,.843,.810,.782,.760,.745,.736,.733,.736,.743,.754,.768,.784,
-.800,.815,.829,.841,.849,.854,.856,.854,.849,.840,.828,.814,.798,.781,.763,.745,
-.727,.709,.692,.676,.660,.646,.632,.618,.605,.593,.581,.569,.558,.548,.538,.530,
-.523,.518,.515,.514,.516,.521,.528,.537,.548,.561,.575,.589,.604,.617,.628,.637,
-.643,.645,.643,.636,.626,.610,.591,.567,.540,.510,.478,.443,.408,.372,.336,.300,
-.265,.230,.195,.161,.128,.094,.060,.025,-.012,-.050,-.089,-.131,-.174,-.219,-.266,-.314,
--.362,-.411,-.459,-.505,-.550,-.592,-.631,-.666,-.697,-.724,-.746,-.764,-.777,-.785,-.790,-.790,
--.786,-.779,-.768,-.753,-.736,-.715,-.690,-.661,-.628,-.590,-.548,-.500,-.446,-.387,-.322,-.251,
--.174,-.093,-.006,.084,.177,.272,.369,.466,.562,.658,.752,.843,.932,1.020,1.105,1.189,
-1.273,1.358,1.444,1.533,1.627,1.726,1.832,1.945,2.066,2.197,2.336,2.484,2.640,2.804,2.974,3.150,
-3.329,3.511,3.693,3.873,4.051,4.224,4.392,4.553,4.706,4.851,4.986,5.113,5.230,5.338,5.436,5.526,
-5.607,5.679,5.743,5.798,5.844,5.882,5.910,5.929,5.938,5.937,5.926,5.903,5.870,5.827,5.774,5.711,
-5.640,5.562,5.479,5.392,5.304,5.217,5.133,5.054,4.982,4.920,4.869,4.830,4.805,4.795,4.800,4.820,
-4.855,4.904,4.967,5.042,5.129,5.227,5.334,5.450,5.574,5.705,5.844,5.989,6.142,6.303,6.472,6.650,
-6.837,7.034,7.242,7.461,7.689,7.928,8.175,8.429,8.688,8.950,9.212,9.469,9.720,9.960,10.186,10.395,
-10.582,10.746,10.883,10.993,11.074,11.127,11.151,11.148,11.121,11.072,11.005,10.924,10.834,10.739,10.644,10.554,
-10.474,10.408,10.360,10.333,10.329,10.351,10.400,10.476,10.579,10.708,10.862,11.037,11.233,11.445,11.671,11.907,
-12.150,12.397,12.644,12.889,13.129,13.361,13.583,13.794,13.991,14.174,14.342,14.494,14.631,14.752,14.858,14.950,
-15.029,15.096,15.153,15.201,15.243,15.281,15.318,15.355,15.396,15.443,15.498,15.564,15.643,15.736,15.844,15.968,
-16.109,16.265,16.436,16.620,16.813,17.014,17.218,17.421,17.618,17.804,17.974,18.123,18.245,18.336,18.391,18.407,
-18.379,18.307,18.188,18.021,17.808,17.549,17.248,16.906,16.530,16.123,15.692,15.242,14.780,14.313,13.848,13.391,
-12.950,12.530,12.137,11.775,11.450,11.165,10.923,10.725,10.573,10.467,10.407,10.390,10.416,10.481,10.583,10.718,
-10.883,11.074,11.287,11.519,11.766,12.024,12.290,12.563,12.839,13.117,13.396,13.675,13.953,14.231,14.508,14.785,
-15.064,15.344,15.627,15.913,16.203,16.499,16.800,17.107,17.419,17.736,18.058,18.383,18.711,19.039,19.367,19.692,
-20.014,20.330,20.638,20.938,21.229,21.508,21.775,22.030,22.273,22.503,22.721,22.927,23.123,23.309,23.487,23.657,
-23.822,23.982,24.139,24.294,24.448,24.603,24.759,24.917,25.077,25.241,25.407,25.577,25.750,25.926,26.104,26.285,
-26.467,26.651,26.835,27.020,27.205,27.389,27.573,27.755,27.937,28.118,28.298,28.477,28.656,28.835,29.014,29.195,
-29.377,29.561,29.747,29.937,30.130,30.326,30.527,30.731,30.939,31.150,31.364,31.580,31.797,32.015,32.231,32.445,
-32.656,32.861,33.060,33.251,33.433,33.606,33.766,33.915,34.052,34.175,34.285,34.383,34.468,34.540,34.602,34.654,
-34.697,34.732,34.761,34.786,34.808,34.829,34.849,34.872,34.898,34.927,34.962,35.003,35.051,35.105,35.165,35.232,
-35.305,35.383,35.464,35.547,35.631,35.713,35.792,35.865,35.929,35.981,36.021,36.044,36.049,36.034,35.997,35.936,
-35.850,35.740,35.605,35.446,35.264,35.061,34.839,34.602,34.353,34.095,33.834,33.573,33.316,33.068,32.833,32.614,
-32.415,32.238,32.085,31.958,31.856,31.780,31.727,31.697,31.687,31.692,31.711,31.739,31.772,31.807,31.840,31.867,
-31.886,31.894,31.891,31.874,31.845,31.804,31.752,31.690,31.622,31.550,31.477,31.405,31.338,31.277,31.226,31.185,
-31.157,31.140,31.136,31.144,31.161,31.187,31.219,31.255,31.293,31.330,31.364,31.393,31.417,31.433,31.443,31.447,
-31.445,31.440,31.434,31.429,31.428,31.434,31.450,31.479,31.522,31.582,31.659,31.754,31.866,31.993,32.133,32.284,
-32.440,32.599,32.755,32.904,33.042,33.162,33.263,33.340,33.390,33.413,33.407,33.374,33.313,33.229,33.124,33.003,
-32.871,32.733,32.594,32.460,32.337,32.230,32.142,32.078,32.041,32.031,32.050,32.098,32.172,32.272,32.392,32.531,
-32.683,32.844,33.009,33.172,33.331,33.480,34.270,34.412,34.547,34.671,34.785,34.885,34.971,35.043,35.100,35.144,
-35.174,35.191,35.197,35.192,35.178,35.155,35.125,35.088,35.045,34.996,34.943,34.884,34.822,34.755,34.685,34.612,
-34.537,34.461,34.384,34.308,34.233,34.161,34.095,34.033,33.979,33.934,33.897,33.870,33.854,33.849,33.853,33.867,
-33.890,33.919,33.953,33.990,34.027,34.061,34.091,34.113,34.124,34.121,34.104,34.069,34.014,33.940,33.845,33.729,
-33.592,33.436,33.261,33.069,32.863,32.645,32.418,32.184,31.946,31.707,31.470,31.237,31.010,30.792,30.583,30.386,
-30.199,30.025,29.862,29.711,29.570,29.439,29.315,29.199,29.088,28.980,28.875,28.771,28.667,28.562,28.456,28.347,
-28.236,28.122,28.006,27.889,27.770,27.650,27.529,27.409,27.290,27.172,27.055,26.940,26.826,26.714,26.603,26.493,
-26.384,26.275,26.165,26.055,25.943,25.829,25.714,25.597,25.479,25.359,25.238,25.116,24.995,24.874,24.755,24.637,
-24.522,24.410,24.300,24.195,24.092,23.992,23.895,23.800,23.707,23.614,23.520,23.425,23.328,23.228,23.123,23.013,
-22.898,22.776,22.648,22.512,22.370,22.221,22.065,21.902,21.734,21.561,21.383,21.202,21.018,20.833,20.647,20.461,
-20.277,20.096,19.919,19.747,19.580,19.420,19.268,19.124,18.989,18.864,18.749,18.644,18.549,18.463,18.387,18.319,
-18.258,18.204,18.155,18.108,18.064,18.019,17.972,17.922,17.867,17.805,17.735,17.656,17.567,17.467,17.356,17.235,
-17.103,16.961,16.810,16.651,16.485,16.313,16.138,15.960,15.782,15.603,15.427,15.253,15.083,14.918,14.759,14.605,
-14.457,14.316,14.180,14.051,13.927,13.808,13.694,13.584,13.478,13.375,13.274,13.176,13.079,12.983,12.889,12.795,
-12.701,12.608,12.514,12.420,12.327,12.233,12.139,12.045,11.951,11.857,11.764,11.671,11.579,11.488,11.398,11.308,
-11.220,11.132,11.045,10.959,10.873,10.788,10.702,10.615,10.527,10.438,10.346,10.251,10.152,10.050,9.944,9.833,
-9.717,9.596,9.470,9.340,9.206,9.067,8.925,8.780,8.633,8.484,8.334,8.183,8.032,7.882,7.732,7.584,
-7.437,7.291,7.147,7.005,6.865,6.726,6.590,6.457,6.326,6.199,6.075,5.957,5.843,5.736,5.636,5.544,
-5.461,5.388,5.325,5.273,5.233,5.203,5.185,5.177,5.179,5.190,5.208,5.231,5.260,5.290,5.322,5.352,
-5.380,5.403,5.421,5.432,5.435,5.429,5.415,5.393,5.361,5.321,5.273,5.218,5.156,5.088,5.014,4.934,
-4.850,4.760,4.665,4.565,4.459,4.347,4.229,4.103,3.971,3.832,3.685,3.532,3.373,3.209,3.042,2.873,
-2.705,2.539,2.378,2.225,2.082,1.952,1.835,1.735,1.652,1.587,1.540,1.512,1.501,1.505,1.524,1.554,
-1.594,1.640,1.691,1.744,1.797,1.847,1.895,1.938,1.977,2.012,2.044,2.074,2.105,2.137,2.175,2.219,
-2.271,2.335,2.410,2.498,2.599,2.712,2.837,2.971,3.112,3.257,3.402,3.545,3.681,3.808,3.921,4.018,
-4.097,4.157,4.196,4.215,4.214,4.196,4.163,4.118,4.064,4.005,3.945,3.887,3.834,3.791,3.758,3.739,
-3.733,3.742,3.764,3.798,3.843,3.896,3.954,4.014,4.072,4.125,4.171,4.205,4.226,4.231,4.219,4.189,
-4.141,4.075,3.991,3.890,3.775,3.647,3.507,3.359,3.203,3.043,2.881,2.718,2.556,2.396,2.240,2.089,
-1.944,1.805,1.673,1.548,1.430,1.318,1.214,1.117,1.026,.940,.861,.786,.716,.651,.589,.531,
-.477,.427,.380,.337,.299,.267,.240,.220,.208,.205,.212,.229,.257,.297,.349,.412,
-.485,.568,.659,.755,.855,.956,1.055,1.148,1.234,1.309,1.370,1.416,1.445,1.456,1.448,1.421,
-1.378,1.319,1.247,1.164,1.075,.982,.889,.800,.718,.647,.588,.545,.518,.507,.513,.535,
-.571,.620,.678,.742,.811,.880,.946,1.008,1.062,1.107,1.142,1.165,1.177,1.177,1.167,1.148,
-1.121,1.089,1.052,1.013,.973,.934,.898,.864,.833,.806,.781,.760,.740,.720,.701,.680,
-.656,.630,.600,.566,.528,.486,.443,.397,.352,.307,.266,.229,.198,.175,.162,.158,
-.165,.184,.214,.254,.306,.366,.435,.510,.590,.674,.760,.845,.930,1.013,1.092,1.166,
-1.236,1.301,1.361,1.416,1.466,1.512,1.555,1.594,1.630,1.665,1.697,1.728,1.757,1.785,1.811,1.835,
-1.856,1.875,1.891,1.904,1.912,1.917,1.918,1.916,1.910,1.901,1.889,1.876,1.863,1.849,1.836,1.825,
-1.817,1.812,1.810,1.811,1.816,1.824,1.835,1.846,1.859,1.870,1.880,1.886,1.888,1.884,1.874,1.857,
-1.833,1.801,1.762,1.717,1.668,1.614,1.559,1.504,1.450,1.400,1.356,1.318,1.289,1.270,1.260,1.260,
-1.271,1.290,1.317,1.350,1.388,1.428,1.469,1.507,1.543,1.572,1.594,1.608,1.613,1.608,1.593,1.570,
-1.539,1.500,1.457,1.410,1.361,1.313,1.267,1.224,1.186,1.154,1.129,1.110,1.099,1.094,1.096,1.102,
-1.113,1.128,1.144,1.161,1.179,1.197,1.213,1.229,1.244,1.258,1.273,1.288,1.306,1.325,1.349,1.377,
-1.410,1.449,1.493,1.543,1.597,1.656,1.719,1.783,1.848,1.912,1.973,2.031,2.083,2.129,2.168,2.199,
-2.222,2.237,2.245,2.248,2.245,2.240,2.233,2.226,2.222,2.221,2.227,2.239,2.259,2.289,2.327,2.376,
-2.433,2.499,2.573,2.653,2.738,2.826,2.917,3.008,3.098,3.185,3.269,3.348,3.422,3.490,3.551,3.607,
-3.656,3.699,3.737,3.769,3.797,3.821,3.841,3.858,3.872,3.882,3.890,3.896,3.898,3.897,3.892,3.884,
-3.871,3.854,3.833,3.806,3.775,3.739,3.698,3.653,3.604,3.551,3.496,3.439,3.381,3.324,3.267,3.213,
-3.163,3.116,3.075,3.040,3.011,2.990,2.976,2.969,2.970,2.977,2.990,3.009,3.031,3.055,3.081,3.106,
-3.129,3.149,3.163,3.170,3.169,3.160,3.141,3.112,3.074,3.025,2.968,2.902,2.830,2.752,2.670,2.586,
-2.500,2.416,2.334,2.255,2.181,2.112,2.048,1.990,1.937,1.889,1.845,1.804,1.765,1.726,1.688,1.648,
-1.606,1.562,1.514,1.464,1.410,1.354,1.297,1.238,1.180,1.123,1.069,1.018,.972,.930,.895,.865,
-.842,.823,.810,.801,.795,.791,.788,.784,.780,.773,.763,.749,.733,.713,.690,.665,
-.639,.613,.587,.563,.542,.526,.513,.506,.505,.508,.517,.530,.546,.565,.586,.606,
-.626,.643,.657,.666,.672,.672,.667,.656,.641,.622,.600,.575,.547,.519,.491,.464,
-.437,.411,.387,.365,.344,.324,.304,.285,.265,.244,.222,.199,.174,.148,.120,.092,
-.062,.033,.005,-.023,-.048,-.071,-.091,-.107,-.120,-.130,-.136,-.140,-.142,-.143,-.143,-.144,
--.147,-.152,-.161,-.174,-.191,-.214,-.241,-.274,-.312,-.355,-.401,-.450,-.501,-.554,-.607,-.660,
--.711,-.761,-.808,-.852,-.893,-.932,-.967,-1.000,-1.030,-1.058,-1.085,-1.111,-1.136,-1.161,-1.186,-1.211,
--1.237,-1.264,-1.291,-1.319,-1.348,-1.376,-1.405,-1.433,-1.461,-1.488,-1.513,-1.537,-1.559,-1.579,-1.596,-1.610,
--1.620,-1.627,-1.628,-1.624,-1.615,-1.598,-1.575,-1.543,-1.503,-1.453,-1.394,-1.325,-1.246,-1.156,-1.058,-.950,
--.834,-.711,-.582,-.448,-.311,-.173,-.034,.104,.239,.370,.498,.620,.738,.852,.962,1.069,
-1.174,1.279,1.386,1.496,1.610,1.732,1.861,1.999,2.147,2.306,2.474,2.653,2.840,3.034,3.234,3.438,
-3.643,3.847,4.048,4.243,4.430,4.607,4.772,4.924,5.062,5.185,5.292,5.385,5.462,5.526,5.575,5.612,
-5.637,5.650,5.653,5.646,5.630,5.605,5.570,5.527,5.475,5.413,5.343,5.263,5.175,5.078,4.974,4.864,
-4.748,4.629,4.509,4.389,4.273,4.162,4.059,3.966,3.886,3.821,3.772,3.740,3.726,3.730,3.752,3.790,
-3.845,3.913,3.994,4.085,4.185,4.292,4.403,4.519,4.637,4.758,4.882,5.010,5.142,5.281,5.427,5.584,
-5.754,5.939,6.140,6.361,6.601,6.861,7.142,7.441,7.758,8.089,8.430,8.778,9.128,9.473,9.809,10.129,
-10.428,10.699,10.939,11.143,11.308,11.430,11.510,11.547,11.542,11.497,11.416,11.302,11.161,10.999,10.821,10.635,
-10.445,10.259,10.082,9.920,9.777,9.656,9.562,9.496,9.460,9.454,9.478,9.532,9.613,9.721,9.852,10.005,
-10.178,10.367,10.570,10.786,11.012,11.247,11.487,11.733,11.982,12.234,12.486,12.738,12.989,13.237,13.482,13.721,
-13.954,14.180,14.397,14.604,14.802,14.988,15.163,15.327,15.480,15.622,15.754,15.877,15.991,16.099,16.201,16.298,
-16.391,16.481,16.567,16.650,16.729,16.802,16.868,16.925,16.969,16.999,17.010,16.999,16.963,16.899,16.803,16.673,
-16.507,16.304,16.064,15.785,15.471,15.124,14.746,14.341,13.915,13.473,13.021,12.566,12.114,11.672,11.248,10.847,
-10.477,10.142,9.847,9.596,9.394,9.241,9.139,9.089,9.090,9.141,9.238,9.379,9.560,9.777,10.024,10.297,
-10.591,10.901,11.220,11.546,11.874,12.199,12.519,12.832,13.135,13.427,13.708,13.979,14.239,14.491,14.737,14.978,
-15.217,15.457,15.699,15.947,16.203,16.468,16.743,17.031,17.330,17.641,17.964,18.297,18.638,18.987,19.340,19.695,
-20.050,20.402,20.749,21.089,21.419,21.739,22.046,22.340,22.621,22.887,23.140,23.380,23.608,23.824,24.031,24.229,
-24.420,24.605,24.786,24.963,25.138,25.312,25.485,25.658,25.832,26.006,26.181,26.357,26.534,26.711,26.889,27.067,
-27.246,27.424,27.602,27.779,27.956,28.132,28.308,28.483,28.658,28.832,29.005,29.178,29.351,29.524,29.697,29.870,
-30.044,30.218,30.393,30.568,30.744,30.922,31.100,31.279,31.458,31.638,31.819,31.998,32.178,32.355,32.531,32.704,
-32.873,33.039,33.199,33.353,33.500,33.641,33.774,33.899,34.017,34.127,34.229,34.324,34.413,34.497,34.576,34.651,
-34.724,34.795,34.867,34.939,35.014,35.091,35.172,35.257,35.346,35.440,35.538,35.640,35.746,35.854,35.964,36.074,
-36.184,36.292,36.396,36.496,36.588,36.672,36.746,36.808,36.856,36.889,36.904,36.901,36.879,36.835,36.768,36.679,
-36.566,36.430,36.270,36.088,35.884,35.661,35.419,35.163,34.895,34.618,34.337,34.056,33.778,33.508,33.250,33.008,
-32.787,32.588,32.415,32.270,32.153,32.065,32.005,31.972,31.963,31.976,32.007,32.052,32.106,32.164,32.223,32.278,
-32.323,32.357,32.376,32.378,32.362,32.327,32.273,32.204,32.119,32.023,31.918,31.808,31.698,31.590,31.489,31.398,
-31.320,31.256,31.209,31.179,31.166,31.168,31.185,31.214,31.253,31.299,31.348,31.398,31.447,31.491,31.529,31.560,
-31.583,31.598,31.607,31.611,31.613,31.614,31.619,31.629,31.649,31.682,31.729,31.793,31.875,31.976,32.095,32.232,
-32.383,32.548,32.721,32.899,33.077,33.251,33.417,33.568,33.703,33.816,33.906,33.970,34.008,34.019,34.004,33.966,
-33.908,33.832,33.744,33.647,33.547,33.449,33.357,33.276,33.209,33.161,33.133,33.128,33.146,33.187,33.251,33.335,
-33.438,33.557,33.689,33.829,33.975,34.124,34.270,34.278,34.399,34.518,34.635,34.746,34.851,34.949,35.039,35.121,
-35.193,35.257,35.312,35.358,35.395,35.424,35.444,35.456,35.460,35.457,35.445,35.426,35.400,35.367,35.328,35.283,
-35.234,35.181,35.126,35.070,35.014,34.960,34.909,34.863,34.823,34.790,34.765,34.747,34.739,34.739,34.746,34.760,
-34.780,34.803,34.828,34.852,34.874,34.890,34.899,34.897,34.882,34.853,34.807,34.743,34.660,34.556,34.433,34.290,
-34.127,33.945,33.747,33.533,33.306,33.068,32.821,32.569,32.314,32.059,31.806,31.558,31.318,31.087,30.867,30.660,
-30.466,30.286,30.121,29.970,29.832,29.707,29.593,29.488,29.390,29.299,29.210,29.124,29.036,28.947,28.853,28.754,
-28.648,28.535,28.415,28.287,28.151,28.009,27.861,27.708,27.551,27.392,27.231,27.071,26.912,26.755,26.602,26.452,
-26.307,26.166,26.031,25.900,25.774,25.653,25.536,25.422,25.311,25.204,25.098,24.995,24.893,24.792,24.693,24.594,
-24.495,24.397,24.299,24.201,24.102,24.002,23.901,23.799,23.695,23.588,23.479,23.367,23.252,23.132,23.009,22.882,
-22.750,22.614,22.474,22.329,22.180,22.026,21.869,21.707,21.541,21.372,21.199,21.023,20.843,20.662,20.478,20.292,
-20.106,19.919,19.732,19.548,19.366,19.187,19.014,18.847,18.686,18.535,18.392,18.259,18.136,18.024,17.922,17.830,
-17.747,17.672,17.604,17.541,17.481,17.422,17.362,17.300,17.233,17.159,17.078,16.988,16.888,16.778,16.657,16.526,
-16.386,16.238,16.082,15.920,15.753,15.584,15.413,15.242,15.072,14.904,14.740,14.579,14.421,14.268,14.120,13.974,
-13.833,13.694,13.558,13.425,13.293,13.164,13.036,12.909,12.785,12.664,12.545,12.429,12.317,12.209,12.106,12.008,
-11.915,11.827,11.743,11.664,11.589,11.516,11.445,11.375,11.305,11.234,11.160,11.083,11.002,10.916,10.825,10.730,
-10.629,10.524,10.414,10.301,10.186,10.068,9.950,9.832,9.714,9.597,9.482,9.368,9.257,9.148,9.040,8.933,
-8.827,8.721,8.614,8.507,8.397,8.284,8.169,8.051,7.930,7.805,7.676,7.545,7.411,7.274,7.135,6.994,
-6.853,6.710,6.567,6.424,6.281,6.139,5.997,5.857,5.719,5.582,5.449,5.318,5.192,5.071,4.956,4.847,
-4.746,4.655,4.573,4.502,4.443,4.396,4.361,4.339,4.329,4.331,4.344,4.366,4.396,4.432,4.473,4.515,
-4.558,4.598,4.634,4.663,4.684,4.696,4.696,4.685,4.662,4.626,4.578,4.519,4.448,4.367,4.277,4.179,
-4.074,3.963,3.847,3.727,3.603,3.476,3.346,3.213,3.078,2.940,2.799,2.655,2.509,2.362,2.213,2.063,
-1.914,1.767,1.624,1.486,1.355,1.233,1.123,1.026,.944,.877,.828,.796,.782,.784,.803,.837,
-.884,.941,1.007,1.078,1.154,1.230,1.304,1.376,1.444,1.506,1.563,1.614,1.660,1.703,1.744,1.784,
-1.825,1.870,1.920,1.976,2.040,2.112,2.192,2.279,2.373,2.472,2.574,2.676,2.776,2.871,2.959,3.036,
-3.100,3.151,3.186,3.206,3.211,3.201,3.178,3.145,3.103,3.057,3.008,2.960,2.917,2.880,2.852,2.835,
-2.830,2.838,2.858,2.889,2.930,2.980,3.035,3.093,3.151,3.207,3.257,3.300,3.333,3.354,3.362,3.357,
-3.337,3.303,3.255,3.193,3.119,3.034,2.939,2.835,2.723,2.605,2.482,2.355,2.224,2.091,1.957,1.821,
-1.685,1.550,1.417,1.285,1.157,1.031,.911,.795,.685,.581,.483,.392,.308,.230,.158,.092,
-.032,-.025,-.077,-.125,-.171,-.213,-.252,-.288,-.320,-.348,-.369,-.384,-.391,-.390,-.378,-.355,
--.321,-.275,-.219,-.152,-.077,.006,.092,.181,.269,.353,.431,.498,.554,.595,.620,.629,
-.622,.598,.561,.511,.451,.384,.314,.244,.178,.118,.068,.030,.006,-.003,.002,.021,
-.054,.099,.152,.211,.274,.338,.399,.454,.502,.541,.569,.585,.590,.583,.566,.539,
-.506,.466,.424,.379,.335,.293,.254,.219,.189,.164,.144,.128,.115,.106,.098,.091,
-.084,.076,.066,.054,.040,.023,.005,-.015,-.036,-.056,-.076,-.093,-.108,-.120,-.128,-.131,
--.130,-.124,-.113,-.098,-.078,-.055,-.029,.000,.032,.065,.100,.137,.176,.216,.258,.302,
-.349,.400,.453,.511,.572,.638,.708,.782,.859,.939,1.022,1.106,1.191,1.275,1.357,1.435,
-1.510,1.579,1.643,1.699,1.749,1.791,1.825,1.853,1.874,1.890,1.900,1.908,1.913,1.918,1.923,1.930,
-1.940,1.954,1.973,1.996,2.025,2.058,2.095,2.134,2.176,2.218,2.258,2.295,2.327,2.352,2.368,2.375,
-2.371,2.356,2.329,2.290,2.241,2.181,2.114,2.040,1.962,1.882,1.801,1.723,1.650,1.583,1.524,1.474,
-1.434,1.404,1.383,1.372,1.368,1.370,1.376,1.385,1.395,1.402,1.407,1.406,1.399,1.384,1.362,1.333,
-1.296,1.253,1.205,1.153,1.100,1.046,.995,.946,.903,.865,.834,.811,.795,.787,.785,.789,
-.798,.810,.825,.841,.857,.873,.887,.900,.911,.922,.932,.944,.957,.974,.996,1.023,
-1.057,1.099,1.148,1.206,1.271,1.342,1.419,1.500,1.582,1.664,1.743,1.818,1.885,1.944,1.994,2.032,
-2.058,2.073,2.077,2.071,2.058,2.038,2.014,1.989,1.965,1.946,1.933,1.930,1.937,1.956,1.989,2.036,
-2.097,2.170,2.256,2.353,2.458,2.571,2.688,2.809,2.930,3.049,3.166,3.278,3.384,3.483,3.576,3.660,
-3.738,3.807,3.870,3.926,3.976,4.019,4.057,4.090,4.118,4.140,4.158,4.170,4.176,4.177,4.171,4.159,
-4.139,4.113,4.079,4.038,3.990,3.936,3.875,3.809,3.739,3.665,3.588,3.510,3.432,3.354,3.279,3.206,
-3.138,3.075,3.017,2.967,2.925,2.890,2.864,2.846,2.837,2.836,2.844,2.858,2.879,2.905,2.934,2.966,
-2.998,3.029,3.056,3.079,3.094,3.101,3.097,3.082,3.055,3.015,2.961,2.896,2.818,2.729,2.632,2.527,
-2.417,2.304,2.190,2.078,1.969,1.867,1.771,1.684,1.606,1.537,1.478,1.427,1.384,1.347,1.316,1.287,
-1.261,1.234,1.206,1.175,1.140,1.101,1.057,1.009,.957,.902,.845,.787,.729,.674,.621,.571,
-.527,.488,.455,.427,.404,.386,.371,.360,.350,.341,.332,.323,.312,.300,.286,.271,
-.255,.238,.222,.208,.197,.188,.184,.184,.189,.199,.213,.231,.252,.276,.299,.323,
-.344,.361,.374,.381,.382,.376,.363,.342,.316,.283,.246,.206,.163,.119,.074,.031,
--.010,-.049,-.085,-.119,-.150,-.178,-.205,-.232,-.258,-.285,-.314,-.345,-.379,-.416,-.456,-.498,
--.543,-.589,-.636,-.682,-.728,-.770,-.810,-.845,-.875,-.900,-.919,-.933,-.942,-.947,-.949,-.948,
--.946,-.945,-.945,-.949,-.956,-.969,-.988,-1.014,-1.046,-1.086,-1.133,-1.185,-1.244,-1.307,-1.374,-1.444,
--1.515,-1.586,-1.656,-1.724,-1.789,-1.849,-1.905,-1.955,-1.999,-2.037,-2.068,-2.094,-2.113,-2.127,-2.135,-2.138,
--2.138,-2.133,-2.126,-2.117,-2.107,-2.096,-2.086,-2.076,-2.068,-2.062,-2.058,-2.056,-2.058,-2.062,-2.068,-2.077,
--2.086,-2.095,-2.104,-2.111,-2.114,-2.112,-2.103,-2.087,-2.062,-2.026,-1.978,-1.918,-1.845,-1.759,-1.660,-1.548,
--1.425,-1.290,-1.147,-.995,-.838,-.677,-.513,-.349,-.186,-.025,.133,.287,.437,.582,.724,.864,
-1.003,1.141,1.281,1.425,1.573,1.728,1.891,2.061,2.241,2.430,2.627,2.831,3.041,3.254,3.469,3.683,
-3.893,4.097,4.290,4.472,4.638,4.788,4.919,5.031,5.122,5.193,5.244,5.275,5.288,5.285,5.265,5.233,
-5.188,5.132,5.068,4.996,4.917,4.832,4.741,4.644,4.542,4.434,4.321,4.202,4.078,3.949,3.816,3.679,
-3.541,3.402,3.266,3.133,3.008,2.892,2.788,2.700,2.628,2.576,2.545,2.535,2.548,2.582,2.638,2.714,
-2.807,2.916,3.038,3.169,3.308,3.450,3.594,3.736,3.877,4.014,4.147,4.278,4.406,4.534,4.665,4.802,
-4.947,5.105,5.279,5.472,5.687,5.927,6.193,6.485,6.804,7.147,7.512,7.895,8.292,8.698,9.104,9.506,
-9.896,10.267,10.611,10.923,11.196,11.426,11.608,11.741,11.822,11.851,11.830,11.760,11.647,11.494,11.306,11.091,
-10.854,10.603,10.344,10.084,9.829,9.586,9.358,9.152,8.969,8.814,8.689,8.595,8.532,8.502,8.505,8.539,
-8.604,8.700,8.826,8.980,9.162,9.370,9.603,9.861,10.141,10.442,10.763,11.100,11.453,11.816,12.188,12.566,
-12.944,13.320,13.689,14.047,14.390,14.714,15.017,15.294,15.544,15.765,15.956,16.116,16.244,16.342,16.410,16.451,
-16.464,16.453,16.420,16.365,16.290,16.197,16.086,15.959,15.814,15.653,15.473,15.276,15.060,14.823,14.566,14.289,
-13.990,13.671,13.332,12.975,12.603,12.218,11.824,11.425,11.025,10.629,10.243,9.871,9.519,9.192,8.895,8.631,
-8.405,8.219,8.077,7.979,7.926,7.920,7.958,8.041,8.165,8.328,8.528,8.760,9.021,9.307,9.614,9.938,
-10.274,10.620,10.970,11.322,11.673,12.020,12.361,12.695,13.020,13.336,13.644,13.943,14.234,14.519,14.798,15.075,
-15.351,15.627,15.905,16.188,16.476,16.772,17.075,17.386,17.705,18.031,18.365,18.704,19.047,19.392,19.737,20.081,
-20.422,20.756,21.084,21.402,21.711,22.009,22.296,22.571,22.835,23.089,23.333,23.568,23.796,24.017,24.233,24.444,
-24.652,24.858,25.062,25.264,25.464,25.664,25.861,26.056,26.249,26.439,26.626,26.809,26.988,27.163,27.334,27.501,
-27.665,27.826,27.984,28.141,28.298,28.454,28.612,28.771,28.932,29.096,29.263,29.434,29.607,29.783,29.962,30.143,
-30.325,30.509,30.693,30.876,31.059,31.239,31.418,31.594,31.766,31.935,32.101,32.262,32.418,32.570,32.717,32.860,
-32.997,33.129,33.257,33.379,33.496,33.608,33.716,33.819,33.919,34.015,34.109,34.201,34.293,34.385,34.478,34.574,
-34.673,34.776,34.884,34.998,35.118,35.244,35.377,35.514,35.657,35.803,35.951,36.101,36.249,36.395,36.536,36.671,
-36.797,36.912,37.016,37.106,37.181,37.240,37.282,37.307,37.314,37.302,37.273,37.225,37.160,37.077,36.977,36.861,
-36.728,36.579,36.415,36.237,36.045,35.840,35.623,35.397,35.161,34.919,34.672,34.422,34.173,33.927,33.688,33.457,
-33.239,33.035,32.850,32.685,32.541,32.421,32.325,32.253,32.204,32.178,32.172,32.183,32.208,32.244,32.286,32.332,
-32.376,32.414,32.445,32.463,32.468,32.456,32.428,32.383,32.322,32.247,32.158,32.060,31.955,31.846,31.738,31.633,
-31.535,31.446,31.370,31.308,31.262,31.230,31.215,31.214,31.226,31.249,31.280,31.318,31.360,31.403,31.444,31.483,
-31.517,31.546,31.570,31.589,31.605,31.618,31.632,31.649,31.671,31.702,31.744,31.799,31.870,31.957,32.062,32.185,
-32.325,32.480,32.648,32.826,33.011,33.197,33.382,33.561,33.729,33.882,34.017,34.131,34.222,34.287,34.327,34.342,
-34.332,34.301,34.250,34.184,34.105,34.019,33.929,33.840,33.756,33.680,33.617,33.569,33.538,33.525,33.531,33.557,
-33.601,33.662,33.739,33.830,33.932,34.042,34.158,34.278,33.895,33.968,34.041,34.115,34.188,34.260,34.331,34.400,
-34.468,34.536,34.602,34.668,34.733,34.798,34.862,34.925,34.987,35.046,35.103,35.156,35.205,35.250,35.289,35.323,
-35.352,35.375,35.392,35.405,35.413,35.418,35.420,35.419,35.418,35.416,35.414,35.412,35.411,35.410,35.410,35.408,
-35.405,35.399,35.389,35.374,35.353,35.323,35.283,35.233,35.172,35.098,35.010,34.910,34.795,34.667,34.526,34.373,
-34.207,34.030,33.843,33.647,33.444,33.234,33.019,32.800,32.579,32.357,32.136,31.917,31.701,31.491,31.287,31.092,
-30.905,30.728,30.563,30.408,30.265,30.134,30.014,29.904,29.804,29.711,29.624,29.542,29.462,29.381,29.299,29.213,
-29.120,29.020,28.911,28.792,28.662,28.521,28.370,28.208,28.038,27.859,27.673,27.482,27.288,27.091,26.895,26.700,
-26.508,26.320,26.137,25.960,25.790,25.627,25.471,25.323,25.182,25.048,24.921,24.800,24.685,24.575,24.470,24.368,
-24.270,24.173,24.078,23.984,23.889,23.793,23.694,23.592,23.487,23.377,23.262,23.141,23.014,22.882,22.744,22.600,
-22.451,22.298,22.140,21.979,21.816,21.650,21.483,21.315,21.146,20.977,20.807,20.636,20.464,20.291,20.117,19.940,
-19.762,19.582,19.399,19.215,19.029,18.843,18.657,18.472,18.290,18.113,17.941,17.776,17.619,17.470,17.332,17.203,
-17.085,16.976,16.876,16.784,16.698,16.617,16.538,16.460,16.381,16.298,16.211,16.118,16.019,15.912,15.797,15.675,
-15.546,15.411,15.272,15.130,14.986,14.843,14.700,14.559,14.422,14.289,14.159,14.034,13.911,13.792,13.674,13.556,
-13.438,13.318,13.196,13.069,12.939,12.805,12.668,12.527,12.384,12.241,12.099,11.960,11.826,11.698,11.580,11.471,
-11.373,11.286,11.212,11.149,11.096,11.052,11.015,10.984,10.954,10.925,10.892,10.854,10.809,10.754,10.687,10.609,
-10.517,10.413,10.297,10.170,10.033,9.888,9.738,9.583,9.427,9.271,9.117,8.966,8.821,8.681,8.546,8.418,
-8.295,8.177,8.063,7.952,7.842,7.734,7.624,7.514,7.401,7.285,7.165,7.043,6.917,6.787,6.655,6.520,
-6.383,6.245,6.106,5.967,5.827,5.688,5.550,5.413,5.276,5.141,5.008,4.876,4.746,4.619,4.495,4.374,
-4.259,4.149,4.046,3.950,3.864,3.787,3.721,3.666,3.624,3.593,3.574,3.567,3.571,3.583,3.604,3.630,
-3.661,3.693,3.726,3.755,3.780,3.797,3.807,3.806,3.793,3.769,3.733,3.684,3.623,3.551,3.469,3.378,
-3.280,3.176,3.068,2.958,2.846,2.734,2.623,2.514,2.407,2.303,2.201,2.102,2.005,1.910,1.815,1.722,
-1.630,1.538,1.446,1.356,1.267,1.181,1.099,1.021,.949,.885,.830,.785,.751,.729,.720,.724,
-.739,.767,.805,.852,.907,.967,1.031,1.096,1.160,1.222,1.279,1.332,1.378,1.418,1.451,1.479,
-1.501,1.519,1.535,1.549,1.563,1.579,1.598,1.621,1.648,1.680,1.716,1.756,1.800,1.846,1.893,1.940,
-1.985,2.027,2.064,2.097,2.124,2.146,2.162,2.173,2.180,2.184,2.185,2.187,2.188,2.192,2.199,2.210,
-2.226,2.246,2.270,2.298,2.329,2.363,2.397,2.431,2.463,2.492,2.517,2.537,2.552,2.560,2.563,2.560,
-2.551,2.537,2.518,2.494,2.466,2.434,2.397,2.357,2.311,2.259,2.201,2.136,2.062,1.979,1.886,1.783,
-1.668,1.544,1.410,1.268,1.119,.965,.807,.650,.494,.343,.199,.063,-.063,-.177,-.280,-.370,
--.449,-.517,-.575,-.626,-.669,-.708,-.743,-.777,-.810,-.842,-.874,-.907,-.938,-.968,-.995,-1.018,
--1.036,-1.047,-1.049,-1.043,-1.028,-1.004,-.971,-.931,-.885,-.835,-.783,-.730,-.680,-.634,-.593,-.560,
--.535,-.518,-.508,-.506,-.509,-.516,-.525,-.533,-.539,-.540,-.534,-.520,-.497,-.465,-.424,-.374,
--.317,-.255,-.191,-.127,-.064,-.007,.042,.082,.111,.127,.129,.119,.095,.059,.013,-.043,
--.106,-.173,-.244,-.316,-.388,-.457,-.524,-.586,-.643,-.695,-.742,-.784,-.822,-.855,-.884,-.909,
--.931,-.949,-.964,-.975,-.981,-.984,-.982,-.976,-.964,-.948,-.928,-.904,-.877,-.847,-.817,-.786,
--.757,-.730,-.706,-.687,-.672,-.662,-.657,-.656,-.659,-.663,-.667,-.669,-.667,-.658,-.641,-.612,
--.572,-.517,-.447,-.362,-.261,-.145,-.016,.125,.277,.436,.600,.766,.931,1.092,1.247,1.394,
-1.529,1.653,1.763,1.859,1.941,2.009,2.064,2.108,2.142,2.168,2.187,2.202,2.215,2.228,2.243,2.262,
-2.286,2.316,2.353,2.397,2.449,2.508,2.573,2.643,2.717,2.793,2.869,2.943,3.012,3.075,3.129,3.172,
-3.203,3.220,3.222,3.208,3.179,3.133,3.073,2.999,2.912,2.815,2.710,2.598,2.483,2.367,2.252,2.140,
-2.033,1.933,1.840,1.756,1.680,1.612,1.552,1.498,1.450,1.406,1.364,1.323,1.282,1.239,1.194,1.146,
-1.094,1.039,.982,.922,.862,.801,.742,.686,.634,.587,.546,.511,.483,.463,.448,.440,
-.438,.439,.444,.451,.459,.468,.478,.487,.496,.506,.517,.530,.547,.569,.597,.633,
-.677,.732,.796,.870,.954,1.046,1.145,1.249,1.355,1.461,1.563,1.659,1.747,1.822,1.884,1.931,
-1.962,1.976,1.975,1.958,1.930,1.891,1.845,1.797,1.749,1.705,1.669,1.645,1.635,1.642,1.668,1.713,
-1.779,1.863,1.966,2.086,2.219,2.364,2.516,2.674,2.834,2.993,3.149,3.298,3.440,3.573,3.696,3.809,
-3.911,4.002,4.084,4.158,4.222,4.279,4.329,4.373,4.410,4.441,4.465,4.483,4.493,4.496,4.490,4.475,
-4.451,4.417,4.373,4.320,4.258,4.187,4.108,4.023,3.933,3.838,3.742,3.644,3.546,3.450,3.357,3.267,
-3.182,3.102,3.028,2.960,2.899,2.844,2.795,2.754,2.719,2.692,2.671,2.656,2.649,2.648,2.652,2.662,
-2.677,2.695,2.715,2.736,2.756,2.774,2.787,2.793,2.791,2.780,2.756,2.721,2.672,2.609,2.533,2.445,
-2.346,2.237,2.120,1.998,1.873,1.748,1.626,1.508,1.398,1.296,1.203,1.122,1.051,.991,.941,.900,
-.866,.838,.813,.791,.769,.745,.720,.691,.658,.621,.581,.537,.492,.445,.399,.353,
-.310,.270,.234,.201,.173,.149,.128,.109,.092,.077,.061,.044,.026,.005,-.017,-.042,
--.069,-.096,-.124,-.151,-.175,-.197,-.214,-.225,-.231,-.230,-.222,-.209,-.191,-.168,-.142,-.116,
--.090,-.066,-.046,-.032,-.025,-.025,-.034,-.052,-.078,-.111,-.152,-.199,-.250,-.304,-.359,-.415,
--.469,-.521,-.570,-.615,-.658,-.697,-.733,-.768,-.802,-.835,-.870,-.906,-.945,-.987,-1.032,-1.081,
--1.133,-1.187,-1.243,-1.300,-1.355,-1.409,-1.460,-1.507,-1.548,-1.583,-1.612,-1.633,-1.647,-1.655,-1.658,-1.655,
--1.649,-1.640,-1.631,-1.622,-1.616,-1.613,-1.616,-1.625,-1.642,-1.666,-1.699,-1.741,-1.791,-1.850,-1.917,-1.990,
--2.069,-2.152,-2.239,-2.328,-2.417,-2.504,-2.589,-2.669,-2.744,-2.811,-2.871,-2.921,-2.961,-2.990,-3.009,-3.017,
--3.014,-3.002,-2.980,-2.950,-2.913,-2.871,-2.825,-2.777,-2.728,-2.681,-2.636,-2.595,-2.559,-2.529,-2.506,-2.488,
--2.477,-2.472,-2.471,-2.473,-2.476,-2.479,-2.479,-2.474,-2.463,-2.443,-2.413,-2.370,-2.314,-2.244,-2.159,-2.059,
--1.944,-1.816,-1.675,-1.523,-1.361,-1.190,-1.014,-.833,-.649,-.463,-.277,-.092,.092,.275,.456,.637,
-.817,.998,1.180,1.364,1.552,1.744,1.939,2.140,2.344,2.551,2.761,2.971,3.179,3.384,3.582,3.771,
-3.949,4.111,4.257,4.383,4.489,4.571,4.631,4.667,4.679,4.669,4.639,4.589,4.522,4.440,4.346,4.243,
-4.132,4.016,3.898,3.778,3.657,3.538,3.419,3.301,3.184,3.068,2.952,2.835,2.718,2.599,2.480,2.360,
-2.241,2.123,2.008,1.898,1.796,1.703,1.623,1.557,1.508,1.478,1.468,1.481,1.516,1.574,1.655,1.756,
-1.878,2.016,2.170,2.336,2.512,2.694,2.879,3.065,3.250,3.431,3.608,3.780,3.947,4.109,4.269,4.427,
-4.587,4.751,4.921,5.102,5.296,5.505,5.732,5.979,6.247,6.535,6.844,7.172,7.516,7.874,8.241,8.612,
-8.982,9.346,9.696,10.028,10.335,10.611,10.852,11.053,11.211,11.323,11.389,11.407,11.379,11.306,11.192,11.040,
-10.855,10.642,10.407,10.155,9.892,9.625,9.359,9.099,8.851,8.618,8.405,8.215,8.052,7.917,7.813,7.741,
-7.703,7.700,7.732,7.800,7.905,8.047,8.224,8.437,8.685,8.966,9.278,9.618,9.984,10.372,10.777,11.195,
-11.619,12.045,12.466,12.877,13.270,13.642,13.986,14.298,14.574,14.811,15.006,15.158,15.267,15.333,15.358,15.343,
-15.291,15.205,15.088,14.944,14.774,14.583,14.373,14.145,13.902,13.646,13.376,13.095,12.802,12.499,12.184,11.861,
-11.528,11.188,10.843,10.494,10.145,9.798,9.458,9.127,8.811,8.513,8.237,7.988,7.768,7.581,7.429,7.314,
-7.236,7.197,7.195,7.230,7.300,7.404,7.538,7.700,7.888,8.098,8.328,8.574,8.835,9.109,9.393,9.686,
-9.987,10.294,10.608,10.926,11.250,11.579,11.912,12.250,12.592,12.939,13.289,13.643,14.001,14.363,14.728,15.096,
-15.466,15.839,16.214,16.589,16.966,17.342,17.717,18.091,18.462,18.828,19.190,19.545,19.893,20.231,20.560,20.878,
-21.184,21.479,21.761,22.031,22.289,22.536,22.773,23.001,23.221,23.437,23.647,23.856,24.063,24.271,24.480,24.691,
-24.904,25.119,25.337,25.555,25.774,25.991,26.206,26.417,26.623,26.821,27.012,27.194,27.367,27.531,27.685,27.832,
-27.971,28.104,28.233,28.359,28.485,28.612,28.741,28.875,29.014,29.160,29.312,29.472,29.639,29.813,29.992,30.177,
-30.365,30.555,30.746,30.937,31.126,31.312,31.494,31.671,31.843,32.009,32.169,32.322,32.469,32.611,32.746,32.877,
-33.002,33.123,33.239,33.352,33.461,33.568,33.671,33.773,33.872,33.971,34.069,34.168,34.268,34.371,34.476,34.585,
-34.700,34.820,34.946,35.079,35.219,35.366,35.519,35.678,35.841,36.007,36.174,36.339,36.501,36.656,36.803,36.939,
-37.061,37.166,37.254,37.322,37.369,37.394,37.397,37.378,37.338,37.278,37.198,37.100,36.987,36.860,36.720,36.571,
-36.412,36.247,36.075,35.899,35.719,35.536,35.350,35.161,34.970,34.776,34.580,34.383,34.184,33.984,33.785,33.588,
-33.393,33.203,33.020,32.844,32.679,32.526,32.386,32.262,32.153,32.062,31.988,31.930,31.888,31.861,31.848,31.845,
-31.851,31.863,31.878,31.895,31.910,31.921,31.926,31.924,31.914,31.896,31.869,31.833,31.791,31.743,31.691,31.636,
-31.581,31.528,31.478,31.433,31.395,31.364,31.340,31.325,31.317,31.316,31.322,31.333,31.348,31.366,31.386,31.406,
-31.426,31.445,31.464,31.482,31.501,31.521,31.544,31.572,31.607,31.650,31.705,31.772,31.853,31.949,32.062,32.190,
-32.334,32.492,32.663,32.843,33.031,33.222,33.412,33.599,33.777,33.944,34.094,34.226,34.336,34.422,34.484,34.521,
-34.533,34.521,34.487,34.434,34.365,34.283,34.192,34.097,34.000,33.906,33.818,33.739,33.672,33.618,33.578,33.554,
-33.545,33.551,33.571,33.603,33.647,33.700,33.760,33.826,33.895,33.859,33.891,33.923,33.956,33.989,34.023,34.059,
-34.098,34.143,34.193,34.251,34.318,34.393,34.478,34.572,34.674,34.785,34.901,35.022,35.146,35.270,35.392,35.511,
-35.623,35.728,35.824,35.909,35.984,36.046,36.097,36.136,36.164,36.181,36.188,36.186,36.175,36.155,36.128,36.094,
-36.052,36.003,35.947,35.883,35.813,35.734,35.648,35.554,35.453,35.345,35.230,35.109,34.982,34.850,34.714,34.574,
-34.431,34.284,34.135,33.983,33.828,33.670,33.508,33.342,33.172,32.996,32.815,32.629,32.438,32.242,32.043,31.841,
-31.639,31.436,31.236,31.041,30.851,30.669,30.496,30.333,30.181,30.039,29.909,29.789,29.677,29.572,29.472,29.375,
-29.279,29.180,29.077,28.968,28.850,28.722,28.583,28.432,28.270,28.096,27.911,27.717,27.514,27.304,27.089,26.870,
-26.649,26.428,26.209,25.992,25.780,25.573,25.372,25.178,24.992,24.814,24.645,24.485,24.334,24.192,24.058,23.933,
-23.816,23.706,23.602,23.502,23.407,23.313,23.219,23.124,23.026,22.923,22.814,22.697,22.573,22.439,22.295,22.143,
-21.981,21.812,21.636,21.454,21.269,21.081,20.893,20.705,20.519,20.336,20.157,19.981,19.810,19.642,19.476,19.313,
-19.151,18.988,18.825,18.660,18.492,18.321,18.148,17.973,17.796,17.618,17.442,17.268,17.098,16.933,16.776,16.627,
-16.487,16.356,16.235,16.124,16.021,15.925,15.835,15.750,15.666,15.583,15.498,15.410,15.318,15.220,15.117,15.007,
-14.892,14.772,14.648,14.522,14.394,14.267,14.142,14.019,13.900,13.785,13.675,13.568,13.464,13.362,13.260,13.157,
-13.051,12.941,12.824,12.700,12.569,12.429,12.281,12.127,11.967,11.804,11.640,11.478,11.321,11.172,11.034,10.909,
-10.799,10.707,10.631,10.574,10.533,10.508,10.495,10.493,10.498,10.505,10.512,10.514,10.508,10.490,10.458,10.410,
-10.344,10.261,10.159,10.040,9.906,9.758,9.600,9.434,9.262,9.089,8.916,8.746,8.581,8.422,8.269,8.124,
-7.986,7.854,7.728,7.606,7.486,7.368,7.249,7.129,7.006,6.880,6.750,6.617,6.479,6.338,6.195,6.050,
-5.904,5.759,5.614,5.471,5.331,5.193,5.058,4.926,4.797,4.670,4.546,4.423,4.302,4.183,4.065,3.948,
-3.833,3.720,3.610,3.504,3.403,3.308,3.220,3.140,3.068,3.007,2.956,2.915,2.885,2.865,2.855,2.853,
-2.859,2.870,2.885,2.903,2.920,2.936,2.949,2.957,2.958,2.951,2.935,2.910,2.876,2.833,2.780,2.720,
-2.652,2.579,2.502,2.422,2.341,2.261,2.183,2.108,2.038,1.973,1.913,1.860,1.812,1.770,1.732,1.698,
-1.666,1.635,1.605,1.574,1.541,1.505,1.465,1.423,1.377,1.328,1.276,1.224,1.171,1.120,1.072,1.027,
-.988,.955,.930,.912,.902,.899,.903,.913,.928,.946,.966,.986,1.005,1.021,1.034,1.041,
-1.044,1.040,1.032,1.019,1.003,.984,.963,.943,.925,.910,.899,.894,.896,.904,.920,.943,
-.974,1.011,1.054,1.102,1.154,1.210,1.268,1.326,1.386,1.445,1.502,1.558,1.612,1.662,1.709,1.752,
-1.791,1.825,1.854,1.877,1.894,1.905,1.910,1.909,1.903,1.891,1.875,1.856,1.835,1.814,1.795,1.778,
-1.765,1.759,1.759,1.766,1.781,1.803,1.831,1.864,1.899,1.933,1.965,1.989,2.004,2.006,1.992,1.959,
-1.905,1.830,1.732,1.612,1.472,1.313,1.139,.953,.759,.562,.364,.172,-.012,-.184,-.341,-.483,
--.607,-.714,-.805,-.880,-.942,-.992,-1.034,-1.070,-1.103,-1.135,-1.166,-1.200,-1.237,-1.276,-1.317,-1.361,
--1.404,-1.447,-1.487,-1.523,-1.554,-1.578,-1.595,-1.604,-1.606,-1.600,-1.587,-1.569,-1.547,-1.521,-1.492,-1.463,
--1.433,-1.403,-1.372,-1.342,-1.311,-1.278,-1.242,-1.203,-1.160,-1.112,-1.058,-.998,-.933,-.864,-.791,-.717,
--.643,-.572,-.506,-.447,-.398,-.360,-.336,-.325,-.329,-.347,-.379,-.424,-.480,-.545,-.618,-.695,
--.775,-.856,-.937,-1.015,-1.090,-1.162,-1.230,-1.295,-1.356,-1.415,-1.472,-1.527,-1.582,-1.636,-1.689,-1.740,
--1.789,-1.834,-1.875,-1.908,-1.934,-1.950,-1.955,-1.949,-1.931,-1.900,-1.859,-1.808,-1.749,-1.686,-1.620,-1.554,
--1.492,-1.437,-1.391,-1.357,-1.335,-1.325,-1.329,-1.344,-1.368,-1.399,-1.431,-1.462,-1.486,-1.500,-1.497,-1.475,
--1.429,-1.358,-1.259,-1.132,-.976,-.795,-.589,-.364,-.122,.130,.389,.648,.903,1.148,1.379,1.593,
-1.787,1.958,2.106,2.231,2.334,2.415,2.478,2.523,2.556,2.578,2.594,2.605,2.615,2.627,2.642,2.663,
-2.690,2.725,2.768,2.818,2.877,2.942,3.013,3.089,3.169,3.251,3.333,3.414,3.493,3.566,3.634,3.694,
-3.744,3.784,3.811,3.826,3.826,3.811,3.781,3.736,3.676,3.602,3.515,3.417,3.308,3.191,3.068,2.940,
-2.812,2.683,2.557,2.435,2.318,2.208,2.106,2.011,1.924,1.845,1.772,1.705,1.642,1.583,1.526,1.469,
-1.413,1.356,1.297,1.236,1.173,1.108,1.042,.975,.908,.842,.777,.716,.657,.602,.552,.506,
-.465,.428,.395,.366,.341,.318,.298,.281,.267,.257,.250,.249,.253,.264,.284,.313,
-.354,.406,.470,.546,.634,.733,.841,.957,1.078,1.200,1.321,1.437,1.544,1.640,1.721,1.786,
-1.831,1.857,1.863,1.851,1.821,1.777,1.721,1.659,1.594,1.530,1.474,1.428,1.398,1.387,1.398,1.433,
-1.492,1.575,1.682,1.810,1.957,2.119,2.292,2.473,2.656,2.839,3.017,3.187,3.346,3.493,3.626,3.745,
-3.849,3.940,4.019,4.086,4.144,4.194,4.238,4.277,4.311,4.342,4.368,4.391,4.409,4.422,4.428,4.427,
-4.417,4.397,4.367,4.327,4.276,4.215,4.145,4.067,3.983,3.894,3.802,3.709,3.616,3.525,3.437,3.353,
-3.273,3.198,3.128,3.062,3.000,2.941,2.885,2.831,2.778,2.726,2.676,2.627,2.580,2.536,2.495,2.459,
-2.428,2.403,2.384,2.372,2.366,2.366,2.370,2.377,2.385,2.393,2.397,2.395,2.385,2.365,2.333,2.288,
-2.229,2.156,2.070,1.971,1.862,1.744,1.621,1.494,1.368,1.245,1.127,1.017,.916,.827,.749,.684,
-.630,.587,.553,.527,.507,.491,.476,.462,.447,.429,.409,.385,.357,.327,.293,.258,
-.223,.186,.151,.116,.083,.051,.020,-.010,-.040,-.070,-.103,-.137,-.175,-.216,-.261,-.309,
--.361,-.414,-.468,-.521,-.573,-.620,-.662,-.696,-.722,-.738,-.744,-.741,-.727,-.706,-.677,-.642,
--.605,-.566,-.529,-.496,-.469,-.449,-.439,-.438,-.448,-.468,-.498,-.537,-.584,-.637,-.694,-.753,
--.814,-.874,-.932,-.988,-1.041,-1.091,-1.138,-1.182,-1.225,-1.267,-1.309,-1.352,-1.398,-1.446,-1.498,-1.553,
--1.611,-1.673,-1.737,-1.802,-1.868,-1.932,-1.995,-2.053,-2.107,-2.155,-2.197,-2.232,-2.259,-2.278,-2.291,-2.297,
--2.298,-2.294,-2.287,-2.277,-2.267,-2.258,-2.250,-2.245,-2.245,-2.250,-2.262,-2.280,-2.306,-2.341,-2.383,-2.433,
--2.492,-2.558,-2.631,-2.710,-2.794,-2.882,-2.972,-3.062,-3.152,-3.239,-3.321,-3.396,-3.463,-3.520,-3.567,-3.600,
--3.621,-3.629,-3.624,-3.607,-3.578,-3.539,-3.491,-3.437,-3.379,-3.319,-3.258,-3.201,-3.147,-3.099,-3.057,-3.024,
--2.998,-2.979,-2.967,-2.961,-2.958,-2.957,-2.956,-2.951,-2.942,-2.925,-2.898,-2.860,-2.808,-2.741,-2.659,-2.561,
--2.448,-2.319,-2.175,-2.018,-1.849,-1.669,-1.481,-1.285,-1.082,-.876,-.666,-.454,-.240,-.025,.190,.406,
-.621,.838,1.054,1.270,1.486,1.702,1.916,2.128,2.336,2.539,2.736,2.924,3.101,3.264,3.412,3.542,
-3.652,3.740,3.805,3.845,3.860,3.850,3.816,3.759,3.679,3.580,3.464,3.333,3.191,3.040,2.885,2.727,
-2.570,2.416,2.268,2.126,1.993,1.868,1.753,1.646,1.548,1.459,1.376,1.300,1.229,1.163,1.101,1.042,
-.987,.937,.890,.849,.814,.786,.766,.757,.758,.772,.799,.840,.895,.965,1.050,1.150,
-1.264,1.391,1.530,1.681,1.842,2.011,2.189,2.372,2.561,2.754,2.949,3.147,3.345,3.544,3.744,3.943,
-4.141,4.339,4.537,4.736,4.935,5.136,5.339,5.545,5.755,5.969,6.189,6.414,6.646,6.883,7.125,7.372,
-7.622,7.872,8.122,8.368,8.606,8.834,9.049,9.246,9.421,9.573,9.697,9.792,9.855,9.886,9.883,9.848,
-9.780,9.683,9.559,9.411,9.242,9.057,8.860,8.656,8.449,8.244,8.045,7.857,7.682,7.526,7.391,7.280,
-7.196,7.140,7.115,7.123,7.164,7.239,7.350,7.495,7.676,7.890,8.136,8.412,8.715,9.041,9.386,9.746,
-10.114,10.485,10.853,11.211,11.553,11.873,12.166,12.426,12.650,12.834,12.976,13.076,13.133,13.149,13.125,13.064,
-12.970,12.846,12.698,12.528,12.342,12.142,11.931,11.713,11.489,11.260,11.027,10.791,10.551,10.307,10.059,9.807,
-9.551,9.292,9.031,8.769,8.510,8.256,8.010,7.777,7.561,7.366,7.195,7.052,6.940,6.862,6.820,6.813,
-6.841,6.905,7.001,7.126,7.279,7.455,7.650,7.862,8.085,8.318,8.557,8.800,9.046,9.295,9.546,9.800,
-10.057,10.321,10.591,10.871,11.162,11.466,11.785,12.119,12.469,12.835,13.217,13.614,14.025,14.448,14.881,15.321,
-15.767,16.216,16.665,17.112,17.555,17.991,18.419,18.836,19.242,19.635,20.013,20.377,20.724,21.056,21.372,21.671,
-21.955,22.223,22.477,22.718,22.947,23.165,23.375,23.578,23.776,23.972,24.166,24.361,24.559,24.759,24.964,25.174,
-25.387,25.605,25.826,26.048,26.270,26.490,26.706,26.916,27.119,27.313,27.496,27.667,27.827,27.976,28.113,28.240,
-28.359,28.471,28.578,28.684,28.790,28.898,29.011,29.129,29.256,29.390,29.534,29.687,29.847,30.016,30.190,30.369,
-30.552,30.736,30.919,31.101,31.279,31.453,31.621,31.784,31.941,32.092,32.236,32.376,32.511,32.642,32.770,32.896,
-33.019,33.142,33.263,33.384,33.503,33.623,33.741,33.859,33.976,34.091,34.205,34.319,34.431,34.543,34.655,34.768,
-34.882,34.999,35.118,35.240,35.366,35.497,35.632,35.770,35.912,36.056,36.201,36.345,36.486,36.621,36.749,36.867,
-36.973,37.063,37.136,37.190,37.223,37.234,37.223,37.189,37.133,37.055,36.958,36.841,36.709,36.562,36.404,36.236,
-36.061,35.881,35.698,35.514,35.330,35.147,34.965,34.785,34.607,34.430,34.254,34.079,33.903,33.726,33.548,33.369,
-33.189,33.007,32.824,32.642,32.462,32.284,32.111,31.943,31.783,31.632,31.493,31.365,31.250,31.149,31.063,30.992,
-30.935,30.892,30.862,30.845,30.839,30.843,30.854,30.873,30.897,30.925,30.956,30.988,31.021,31.053,31.085,31.115,
-31.144,31.170,31.195,31.217,31.238,31.256,31.273,31.287,31.300,31.312,31.321,31.330,31.337,31.343,31.349,31.354,
-31.361,31.369,31.379,31.393,31.413,31.438,31.472,31.515,31.569,31.636,31.717,31.813,31.925,32.054,32.199,32.360,
-32.536,32.725,32.926,33.136,33.351,33.569,33.785,33.996,34.198,34.386,34.557,34.707,34.835,34.936,35.011,35.057,
-35.076,35.067,35.034,34.977,34.900,34.807,34.701,34.587,34.468,34.350,34.235,34.127,34.029,33.943,33.871,33.814,
-33.771,33.743,33.728,33.725,33.732,33.748,33.771,33.798,33.827,33.859,34.448,34.481,34.511,34.537,34.560,34.582,
-34.604,34.629,34.660,34.699,34.748,34.811,34.888,34.981,35.091,35.216,35.356,35.509,35.671,35.841,36.015,36.188,
-36.357,36.518,36.668,36.804,36.923,37.024,37.105,37.166,37.206,37.226,37.227,37.210,37.176,37.128,37.066,36.992,
-36.908,36.816,36.716,36.609,36.497,36.381,36.262,36.140,36.016,35.891,35.767,35.644,35.523,35.404,35.289,35.178,
-35.070,34.965,34.863,34.762,34.661,34.557,34.450,34.335,34.212,34.077,33.928,33.764,33.584,33.386,33.172,32.941,
-32.696,32.439,32.172,31.899,31.623,31.349,31.080,30.819,30.569,30.333,30.113,29.908,29.721,29.549,29.392,29.247,
-29.112,28.984,28.860,28.737,28.612,28.482,28.346,28.201,28.047,27.882,27.708,27.523,27.329,27.128,26.919,26.706,
-26.489,26.270,26.050,25.830,25.612,25.397,25.184,24.976,24.773,24.575,24.384,24.199,24.022,23.854,23.693,23.543,
-23.401,23.269,23.145,23.031,22.923,22.822,22.724,22.629,22.534,22.437,22.335,22.226,22.108,21.978,21.837,21.684,
-21.517,21.339,21.149,20.950,20.743,20.532,20.318,20.105,19.894,19.689,19.490,19.299,19.118,18.945,18.782,18.626,
-18.476,18.332,18.190,18.050,17.909,17.765,17.619,17.469,17.314,17.156,16.995,16.832,16.668,16.507,16.349,16.197,
-16.052,15.916,15.789,15.672,15.565,15.468,15.379,15.297,15.219,15.145,15.071,14.996,14.917,14.833,14.743,14.645,
-14.540,14.428,14.309,14.184,14.054,13.921,13.786,13.652,13.518,13.387,13.258,13.132,13.009,12.888,12.769,12.649,
-12.527,12.402,12.273,12.137,11.995,11.846,11.690,11.527,11.358,11.187,11.014,10.843,10.676,10.517,10.369,10.234,
-10.115,10.013,9.930,9.866,9.821,9.792,9.779,9.778,9.786,9.799,9.813,9.824,9.828,9.821,9.801,9.765,
-9.711,9.638,9.548,9.440,9.316,9.179,9.031,8.874,8.713,8.550,8.387,8.228,8.073,7.924,7.782,7.646,
-7.517,7.393,7.272,7.153,7.035,6.915,6.791,6.664,6.531,6.393,6.249,6.099,5.945,5.788,5.630,5.470,
-5.313,5.158,5.007,4.862,4.722,4.589,4.463,4.342,4.227,4.117,4.010,3.906,3.804,3.702,3.601,3.499,
-3.397,3.294,3.191,3.089,2.989,2.891,2.796,2.707,2.623,2.547,2.478,2.418,2.367,2.324,2.291,2.266,
-2.248,2.238,2.234,2.234,2.238,2.245,2.252,2.260,2.266,2.269,2.269,2.264,2.255,2.239,2.218,2.191,
-2.158,2.120,2.076,2.028,1.978,1.925,1.871,1.818,1.768,1.720,1.677,1.639,1.608,1.584,1.566,1.555,
-1.550,1.551,1.554,1.560,1.566,1.571,1.572,1.568,1.557,1.538,1.509,1.471,1.423,1.365,1.299,1.225,
-1.145,1.062,.976,.891,.807,.728,.653,.585,.524,.471,.426,.388,.356,.330,.308,.289,
-.272,.256,.239,.222,.203,.184,.163,.142,.122,.104,.089,.078,.073,.075,.085,.103,
-.130,.167,.212,.266,.327,.395,.468,.545,.624,.704,.782,.858,.929,.995,1.054,1.104,
-1.147,1.179,1.202,1.215,1.218,1.211,1.196,1.172,1.142,1.106,1.067,1.027,.988,.951,.921,.898,
-.886,.886,.899,.927,.970,1.029,1.101,1.186,1.280,1.382,1.486,1.590,1.689,1.777,1.851,1.906,
-1.939,1.947,1.927,1.879,1.802,1.697,1.566,1.411,1.236,1.046,.844,.635,.425,.217,.015,-.178,
--.358,-.524,-.675,-.810,-.931,-1.038,-1.133,-1.217,-1.292,-1.361,-1.425,-1.486,-1.544,-1.600,-1.654,-1.706,
--1.756,-1.803,-1.846,-1.883,-1.915,-1.940,-1.958,-1.969,-1.973,-1.971,-1.963,-1.949,-1.932,-1.912,-1.890,-1.866,
--1.841,-1.815,-1.788,-1.759,-1.729,-1.695,-1.658,-1.616,-1.569,-1.517,-1.460,-1.398,-1.333,-1.265,-1.198,-1.133,
--1.072,-1.019,-.975,-.942,-.923,-.919,-.930,-.956,-.996,-1.049,-1.113,-1.184,-1.261,-1.339,-1.417,-1.490,
--1.558,-1.617,-1.667,-1.707,-1.738,-1.760,-1.776,-1.787,-1.796,-1.805,-1.817,-1.833,-1.856,-1.886,-1.924,-1.968,
--2.019,-2.073,-2.128,-2.181,-2.229,-2.269,-2.298,-2.313,-2.314,-2.300,-2.270,-2.226,-2.170,-2.106,-2.036,-1.965,
--1.897,-1.837,-1.788,-1.753,-1.734,-1.733,-1.750,-1.782,-1.826,-1.879,-1.936,-1.989,-2.034,-2.063,-2.070,-2.049,
--1.996,-1.905,-1.777,-1.608,-1.402,-1.159,-.884,-.584,-.263,.071,.410,.746,1.072,1.382,1.669,1.929,
-2.158,2.355,2.519,2.650,2.751,2.824,2.874,2.904,2.920,2.925,2.924,2.920,2.918,2.920,2.928,2.942,
-2.964,2.992,3.028,3.068,3.113,3.161,3.210,3.259,3.307,3.354,3.398,3.440,3.479,3.515,3.548,3.579,
-3.607,3.633,3.656,3.675,3.690,3.700,3.705,3.703,3.694,3.676,3.650,3.614,3.570,3.516,3.455,3.386,
-3.311,3.231,3.149,3.065,2.982,2.901,2.824,2.752,2.686,2.625,2.571,2.522,2.477,2.437,2.398,2.361,
-2.322,2.281,2.236,2.185,2.129,2.065,1.994,1.916,1.831,1.740,1.644,1.545,1.443,1.341,1.239,1.140,
-1.044,.952,.865,.783,.708,.638,.574,.515,.462,.414,.372,.335,.304,.279,.261,.250,
-.249,.257,.276,.307,.349,.404,.470,.547,.633,.727,.827,.929,1.030,1.128,1.219,1.300,
-1.368,1.421,1.458,1.477,1.480,1.467,1.439,1.401,1.354,1.305,1.257,1.214,1.182,1.164,1.165,1.187,
-1.232,1.302,1.395,1.512,1.649,1.804,1.972,2.150,2.332,2.514,2.691,2.860,3.016,3.158,3.283,3.390,
-3.481,3.555,3.614,3.660,3.697,3.726,3.751,3.773,3.795,3.819,3.844,3.872,3.901,3.931,3.960,3.987,
-4.008,4.023,4.030,4.027,4.013,3.988,3.951,3.905,3.849,3.785,3.717,3.644,3.571,3.499,3.429,3.363,
-3.302,3.246,3.196,3.149,3.106,3.064,3.023,2.980,2.934,2.885,2.830,2.771,2.707,2.638,2.567,2.495,
-2.423,2.355,2.292,2.236,2.189,2.153,2.127,2.111,2.106,2.109,2.118,2.131,2.145,2.156,2.163,2.161,
-2.148,2.123,2.083,2.029,1.961,1.879,1.785,1.682,1.572,1.458,1.344,1.233,1.127,1.030,.942,.866,
-.802,.750,.708,.677,.653,.635,.620,.606,.591,.573,.551,.522,.488,.447,.400,.347,
-.290,.230,.167,.104,.040,-.023,-.085,-.146,-.206,-.265,-.325,-.385,-.447,-.511,-.577,-.647,
--.718,-.791,-.865,-.938,-1.009,-1.074,-1.134,-1.185,-1.225,-1.254,-1.269,-1.272,-1.262,-1.239,-1.205,-1.162,
--1.112,-1.059,-1.004,-.952,-.905,-.865,-.835,-.816,-.810,-.817,-.837,-.869,-.911,-.963,-1.022,-1.086,
--1.153,-1.221,-1.289,-1.354,-1.416,-1.475,-1.530,-1.582,-1.631,-1.679,-1.725,-1.773,-1.822,-1.874,-1.929,-1.988,
--2.051,-2.118,-2.188,-2.260,-2.334,-2.408,-2.480,-2.550,-2.616,-2.677,-2.733,-2.782,-2.824,-2.859,-2.887,-2.908,
--2.924,-2.933,-2.938,-2.939,-2.937,-2.933,-2.927,-2.920,-2.914,-2.908,-2.903,-2.901,-2.902,-2.906,-2.915,-2.929,
--2.948,-2.974,-3.006,-3.046,-3.092,-3.145,-3.204,-3.269,-3.338,-3.410,-3.483,-3.555,-3.624,-3.689,-3.747,-3.797,
--3.838,-3.867,-3.884,-3.890,-3.884,-3.868,-3.842,-3.808,-3.769,-3.726,-3.682,-3.638,-3.598,-3.562,-3.531,-3.508,
--3.491,-3.481,-3.477,-3.477,-3.480,-3.483,-3.484,-3.480,-3.469,-3.449,-3.417,-3.371,-3.311,-3.234,-3.141,-3.031,
--2.905,-2.764,-2.608,-2.440,-2.260,-2.071,-1.873,-1.669,-1.459,-1.245,-1.028,-.808,-.587,-.364,-.141,.083,
-.307,.530,.753,.973,1.190,1.403,1.610,1.809,1.998,2.175,2.338,2.485,2.613,2.721,2.807,2.868,
-2.905,2.916,2.901,2.861,2.797,2.709,2.600,2.472,2.328,2.170,2.002,1.827,1.648,1.468,1.290,1.117,
-.952,.796,.650,.517,.397,.291,.198,.118,.052,-.002,-.044,-.074,-.093,-.101,-.100,-.088,
--.068,-.038,.000,.046,.101,.163,.232,.307,.388,.472,.560,.649,.740,.831,.921,1.010,
-1.098,1.184,1.270,1.356,1.444,1.535,1.631,1.733,1.843,1.963,2.095,2.238,2.393,2.560,2.739,2.928,
-3.126,3.329,3.536,3.744,3.950,4.152,4.348,4.535,4.712,4.880,5.038,5.187,5.329,5.464,5.596,5.727,
-5.860,5.996,6.137,6.285,6.440,6.602,6.769,6.941,7.114,7.284,7.449,7.604,7.746,7.869,7.972,8.050,
-8.101,8.125,8.120,8.087,8.028,7.945,7.841,7.720,7.585,7.442,7.296,7.150,7.010,6.880,6.763,6.663,
-6.584,6.528,6.496,6.492,6.515,6.567,6.648,6.759,6.898,7.066,7.261,7.480,7.723,7.985,8.263,8.554,
-8.852,9.153,9.450,9.739,10.014,10.269,10.499,10.699,10.865,10.995,11.086,11.137,11.149,11.123,11.062,10.969,
-10.848,10.704,10.542,10.367,10.183,9.996,9.807,9.622,9.441,9.265,9.096,8.932,8.772,8.616,8.461,8.306,
-8.150,7.992,7.831,7.669,7.507,7.346,7.191,7.044,6.910,6.793,6.698,6.628,6.588,6.580,6.607,6.669,
-6.767,6.900,7.065,7.259,7.480,7.722,7.981,8.253,8.533,8.818,9.104,9.389,9.671,9.950,10.225,10.498,
-10.771,11.045,11.324,11.610,11.907,12.215,12.539,12.878,13.234,13.608,13.998,14.403,14.822,15.252,15.690,16.135,
-16.581,17.028,17.471,17.908,18.337,18.755,19.163,19.557,19.939,20.306,20.659,20.999,21.324,21.636,21.936,22.223,
-22.498,22.761,23.014,23.258,23.492,23.719,23.938,24.152,24.361,24.566,24.768,24.969,25.170,25.371,25.573,25.775,
-25.979,26.183,26.387,26.590,26.790,26.987,27.179,27.364,27.542,27.711,27.870,28.019,28.159,28.290,28.412,28.528,
-28.638,28.746,28.852,28.959,29.070,29.185,29.307,29.437,29.575,29.722,29.877,30.040,30.209,30.383,30.561,30.740,
-30.918,31.094,31.266,31.433,31.593,31.746,31.893,32.032,32.166,32.293,32.417,32.537,32.656,32.774,32.892,33.012,
-33.134,33.259,33.387,33.516,33.648,33.781,33.915,34.048,34.179,34.308,34.434,34.555,34.672,34.784,34.892,34.995,
-35.095,35.191,35.284,35.376,35.468,35.559,35.652,35.746,35.841,35.939,36.037,36.137,36.236,36.334,36.429,36.519,
-36.603,36.678,36.743,36.796,36.835,36.859,36.866,36.856,36.828,36.781,36.717,36.634,36.535,36.419,36.289,36.146,
-35.991,35.826,35.653,35.473,35.288,35.098,34.906,34.711,34.515,34.318,34.120,33.922,33.723,33.524,33.324,33.123,
-32.922,32.720,32.517,32.315,32.112,31.911,31.711,31.514,31.321,31.133,30.951,30.776,30.610,30.454,30.310,30.179,
-30.061,29.958,29.871,29.800,29.747,29.710,29.690,29.688,29.701,29.731,29.774,29.831,29.900,29.978,30.064,30.156,
-30.252,30.349,30.446,30.541,30.631,30.715,30.792,30.860,30.920,30.971,31.013,31.046,31.072,31.091,31.105,31.116,
-31.126,31.136,31.149,31.168,31.194,31.229,31.276,31.336,31.411,31.502,31.611,31.738,31.884,32.049,32.232,32.434,
-32.653,32.887,33.134,33.392,33.657,33.926,34.195,34.460,34.716,34.959,35.184,35.388,35.565,35.714,35.832,35.915,
-35.965,35.979,35.961,35.910,35.831,35.728,35.604,35.464,35.314,35.160,35.007,34.859,34.721,34.598,34.492,34.404,
-34.337,34.290,34.262,34.252,34.258,34.275,34.303,34.337,34.374,34.411,34.448,35.362,35.441,35.511,35.571,35.620,
-35.661,35.695,35.724,35.752,35.783,35.821,35.869,35.930,36.007,36.101,36.212,36.341,36.486,36.644,36.813,36.987,
-37.163,37.336,37.503,37.657,37.797,37.918,38.018,38.095,38.148,38.177,38.183,38.166,38.128,38.071,37.997,37.907,
-37.805,37.691,37.568,37.437,37.300,37.158,37.012,36.865,36.718,36.571,36.427,36.286,36.152,36.024,35.904,35.794,
-35.693,35.602,35.520,35.446,35.377,35.312,35.246,35.176,35.098,35.008,34.901,34.773,34.622,34.445,34.240,34.007,
-33.747,33.461,33.153,32.826,32.486,32.137,31.785,31.436,31.095,30.766,30.452,30.158,29.885,29.632,29.401,29.189,
-28.994,28.813,28.643,28.480,28.320,28.161,28.000,27.835,27.663,27.484,27.299,27.107,26.910,26.708,26.504,26.299,
-26.095,25.892,25.691,25.494,25.301,25.110,24.923,24.739,24.557,24.376,24.197,24.019,23.843,23.669,23.498,23.330,
-23.167,23.009,22.859,22.715,22.579,22.451,22.329,22.213,22.101,21.990,21.880,21.766,21.647,21.519,21.382,21.232,
-21.070,20.894,20.706,20.506,20.297,20.080,19.859,19.637,19.417,19.201,18.994,18.796,18.609,18.435,18.274,18.123,
-17.984,17.852,17.726,17.604,17.483,17.360,17.233,17.101,16.962,16.817,16.665,16.508,16.347,16.184,16.022,15.863,
-15.710,15.565,15.430,15.306,15.194,15.094,15.006,14.928,14.858,14.794,14.734,14.674,14.613,14.547,14.473,14.391,
-14.299,14.196,14.082,13.956,13.821,13.676,13.525,13.368,13.207,13.045,12.882,12.719,12.559,12.400,12.244,12.090,
-11.938,11.786,11.634,11.481,11.327,11.170,11.011,10.849,10.686,10.522,10.358,10.197,10.040,9.889,9.747,9.615,
-9.496,9.390,9.300,9.224,9.162,9.115,9.079,9.053,9.034,9.018,9.004,8.986,8.963,8.931,8.888,8.832,
-8.762,8.678,8.579,8.468,8.345,8.212,8.074,7.931,7.787,7.644,7.505,7.371,7.244,7.123,7.008,6.899,
-6.795,6.693,6.591,6.488,6.380,6.267,6.146,6.016,5.878,5.731,5.575,5.413,5.246,5.076,4.907,4.739,
-4.577,4.421,4.274,4.137,4.010,3.895,3.789,3.693,3.604,3.521,3.443,3.366,3.290,3.212,3.131,3.047,
-2.959,2.868,2.773,2.676,2.578,2.480,2.385,2.292,2.205,2.124,2.050,1.983,1.925,1.874,1.831,1.795,
-1.765,1.740,1.720,1.704,1.691,1.679,1.670,1.661,1.653,1.645,1.637,1.629,1.620,1.609,1.597,1.582,
-1.565,1.545,1.520,1.491,1.458,1.421,1.379,1.334,1.287,1.237,1.188,1.140,1.095,1.054,1.020,.992,
-.973,.961,.958,.963,.973,.989,1.007,1.025,1.041,1.053,1.056,1.050,1.031,1.000,.954,.894,
-.819,.732,.634,.526,.411,.293,.174,.056,-.057,-.163,-.260,-.348,-.424,-.489,-.543,-.586,
--.620,-.645,-.663,-.676,-.684,-.690,-.693,-.695,-.696,-.696,-.695,-.693,-.688,-.680,-.669,-.653,
--.632,-.606,-.575,-.538,-.497,-.451,-.402,-.352,-.300,-.249,-.200,-.154,-.112,-.075,-.044,-.019,
-.000,.013,.020,.022,.019,.012,.003,-.008,-.019,-.029,-.038,-.043,-.043,-.038,-.027,-.008,
-.020,.058,.105,.163,.232,.311,.401,.499,.606,.719,.836,.955,1.073,1.187,1.294,1.390,
-1.473,1.540,1.588,1.615,1.619,1.601,1.558,1.492,1.403,1.293,1.164,1.018,.857,.685,.503,.315,
-.123,-.071,-.266,-.458,-.648,-.834,-1.014,-1.189,-1.358,-1.519,-1.672,-1.815,-1.949,-2.071,-2.180,-2.276,
--2.358,-2.424,-2.473,-2.507,-2.525,-2.528,-2.516,-2.493,-2.458,-2.416,-2.368,-2.317,-2.265,-2.215,-2.168,-2.126,
--2.089,-2.058,-2.032,-2.011,-1.993,-1.977,-1.961,-1.944,-1.924,-1.900,-1.871,-1.839,-1.802,-1.764,-1.724,-1.686,
--1.652,-1.625,-1.606,-1.599,-1.604,-1.623,-1.656,-1.703,-1.762,-1.830,-1.905,-1.984,-2.062,-2.135,-2.201,-2.255,
--2.294,-2.318,-2.324,-2.313,-2.287,-2.246,-2.194,-2.135,-2.072,-2.010,-1.952,-1.902,-1.863,-1.837,-1.825,-1.828,
--1.844,-1.872,-1.908,-1.949,-1.991,-2.031,-2.064,-2.088,-2.099,-2.096,-2.078,-2.046,-2.002,-1.948,-1.888,-1.826,
--1.766,-1.714,-1.672,-1.646,-1.636,-1.645,-1.673,-1.716,-1.773,-1.839,-1.908,-1.973,-2.027,-2.062,-2.071,-2.048,
--1.987,-1.884,-1.737,-1.545,-1.309,-1.033,-.722,-.383,-.023,.348,.722,1.088,1.440,1.768,2.066,2.329,
-2.554,2.739,2.884,2.992,3.065,3.107,3.126,3.125,3.111,3.089,3.065,3.044,3.027,3.019,3.019,3.028,
-3.045,3.069,3.098,3.127,3.156,3.182,3.202,3.215,3.220,3.216,3.204,3.184,3.159,3.130,3.099,3.068,
-3.040,3.017,3.000,2.990,2.987,2.992,3.004,3.023,3.046,3.073,3.101,3.129,3.155,3.179,3.199,3.215,
-3.226,3.233,3.236,3.236,3.234,3.231,3.229,3.227,3.228,3.231,3.236,3.243,3.251,3.259,3.264,3.267,
-3.263,3.253,3.232,3.201,3.157,3.099,3.027,2.942,2.843,2.732,2.610,2.480,2.343,2.203,2.062,1.923,
-1.787,1.658,1.537,1.424,1.322,1.228,1.145,1.070,1.002,.940,.883,.828,.775,.722,.668,.614,
-.558,.503,.448,.396,.348,.307,.273,.250,.238,.239,.253,.280,.320,.371,.431,.498,
-.568,.640,.709,.774,.831,.879,.917,.944,.962,.971,.973,.973,.972,.976,.986,1.008,
-1.044,1.097,1.167,1.257,1.365,1.490,1.630,1.781,1.940,2.103,2.265,2.421,2.568,2.703,2.823,2.925,
-3.010,3.078,3.131,3.169,3.196,3.215,3.230,3.244,3.259,3.279,3.304,3.337,3.377,3.424,3.476,3.530,
-3.585,3.637,3.684,3.722,3.750,3.765,3.767,3.754,3.728,3.689,3.640,3.583,3.519,3.453,3.387,3.323,
-3.263,3.209,3.161,3.120,3.084,3.053,3.025,2.997,2.969,2.937,2.899,2.856,2.805,2.747,2.682,2.612,
-2.538,2.463,2.390,2.320,2.257,2.204,2.162,2.133,2.117,2.114,2.123,2.143,2.171,2.203,2.237,2.270,
-2.297,2.316,2.324,2.320,2.302,2.270,2.225,2.167,2.099,2.024,1.943,1.861,1.780,1.702,1.630,1.565,
-1.509,1.460,1.418,1.383,1.351,1.321,1.290,1.255,1.213,1.163,1.102,1.029,.943,.846,.738,.620,
-.494,.363,.229,.095,-.036,-.163,-.284,-.397,-.503,-.601,-.692,-.776,-.855,-.931,-1.004,-1.076,
--1.148,-1.220,-1.292,-1.363,-1.433,-1.500,-1.562,-1.617,-1.664,-1.700,-1.723,-1.733,-1.729,-1.712,-1.682,-1.640,
--1.590,-1.534,-1.476,-1.418,-1.364,-1.317,-1.281,-1.258,-1.250,-1.256,-1.278,-1.316,-1.366,-1.429,-1.500,-1.579,
--1.661,-1.744,-1.825,-1.903,-1.977,-2.044,-2.104,-2.159,-2.208,-2.252,-2.294,-2.334,-2.375,-2.417,-2.462,-2.511,
--2.565,-2.623,-2.686,-2.752,-2.821,-2.892,-2.962,-3.031,-3.097,-3.160,-3.217,-3.269,-3.315,-3.354,-3.388,-3.417,
--3.440,-3.458,-3.473,-3.485,-3.494,-3.501,-3.507,-3.510,-3.512,-3.513,-3.512,-3.509,-3.506,-3.501,-3.496,-3.492,
--3.488,-3.486,-3.486,-3.490,-3.499,-3.513,-3.532,-3.558,-3.589,-3.625,-3.665,-3.708,-3.752,-3.796,-3.838,-3.875,
--3.907,-3.932,-3.948,-3.956,-3.955,-3.946,-3.930,-3.908,-3.881,-3.853,-3.825,-3.799,-3.777,-3.760,-3.751,-3.748,
--3.753,-3.765,-3.781,-3.801,-3.821,-3.839,-3.853,-3.858,-3.853,-3.834,-3.799,-3.748,-3.679,-3.591,-3.485,-3.362,
--3.222,-3.069,-2.903,-2.727,-2.544,-2.354,-2.161,-1.966,-1.769,-1.573,-1.376,-1.181,-.986,-.792,-.598,-.404,
--.210,-.018,.174,.364,.550,.732,.906,1.071,1.225,1.364,1.487,1.591,1.674,1.734,1.770,1.782,
-1.770,1.732,1.672,1.590,1.487,1.368,1.234,1.088,.933,.773,.611,.449,.290,.136,-.010,-.148,
--.275,-.392,-.498,-.592,-.674,-.746,-.806,-.855,-.893,-.920,-.936,-.941,-.935,-.916,-.884,-.839,
--.780,-.706,-.618,-.516,-.401,-.273,-.136,.010,.160,.313,.464,.610,.748,.874,.986,1.081,
-1.159,1.218,1.260,1.285,1.296,1.297,1.291,1.283,1.277,1.278,1.291,1.319,1.366,1.432,1.521,1.630,
-1.759,1.905,2.066,2.236,2.412,2.589,2.762,2.928,3.084,3.227,3.356,3.472,3.577,3.672,3.761,3.849,
-3.940,4.039,4.150,4.277,4.422,4.587,4.771,4.975,5.194,5.425,5.663,5.901,6.132,6.351,6.549,6.722,
-6.864,6.971,7.041,7.072,7.065,7.023,6.948,6.845,6.720,6.580,6.431,6.280,6.133,5.996,5.875,5.774,
-5.696,5.646,5.624,5.631,5.668,5.735,5.831,5.955,6.105,6.281,6.480,6.701,6.941,7.198,7.470,7.753,
-8.044,8.339,8.634,8.924,9.204,9.469,9.713,9.931,10.120,10.274,10.391,10.468,10.504,10.500,10.456,10.376,
-10.262,10.119,9.951,9.765,9.566,9.359,9.149,8.941,8.738,8.543,8.358,8.183,8.019,7.865,7.720,7.582,
-7.450,7.323,7.201,7.082,6.967,6.858,6.757,6.667,6.591,6.533,6.497,6.488,6.508,6.562,6.651,6.777,
-6.941,7.141,7.376,7.642,7.937,8.256,8.594,8.946,9.307,9.673,10.040,10.404,10.763,11.116,11.461,11.801,
-12.135,12.465,12.794,13.124,13.457,13.795,14.141,14.495,14.858,15.231,15.611,15.999,16.392,16.787,17.184,17.578,
-17.967,18.350,18.725,19.089,19.443,19.785,20.116,20.436,20.746,21.048,21.342,21.629,21.911,22.189,22.463,22.733,
-23.000,23.264,23.524,23.779,24.029,24.274,24.511,24.742,24.965,25.180,25.387,25.588,25.781,25.967,26.148,26.323,
-26.493,26.659,26.821,26.978,27.132,27.281,27.426,27.566,27.700,27.830,27.954,28.074,28.189,28.300,28.409,28.516,
-28.624,28.733,28.846,28.964,29.088,29.219,29.359,29.508,29.665,29.830,30.003,30.180,30.362,30.546,30.730,30.912,
-31.090,31.263,31.429,31.588,31.739,31.881,32.017,32.146,32.269,32.388,32.505,32.621,32.737,32.855,32.976,33.099,
-33.227,33.358,33.491,33.627,33.765,33.902,34.038,34.171,34.300,34.425,34.544,34.656,34.761,34.859,34.951,35.036,
-35.116,35.191,35.262,35.330,35.397,35.462,35.528,35.594,35.662,35.731,35.801,35.872,35.945,36.018,36.091,36.162,
-36.232,36.299,36.361,36.418,36.469,36.512,36.546,36.570,36.582,36.583,36.570,36.544,36.502,36.446,36.374,36.285,
-36.181,36.061,35.924,35.773,35.607,35.427,35.234,35.029,34.814,34.590,34.358,34.119,33.876,33.629,33.381,33.131,
-32.882,32.635,32.390,32.148,31.910,31.677,31.448,31.225,31.007,30.794,30.588,30.388,30.195,30.009,29.832,29.663,
-29.505,29.359,29.226,29.108,29.006,28.922,28.857,28.813,28.790,28.789,28.809,28.852,28.914,28.996,29.094,29.206,
-29.330,29.461,29.597,29.733,29.868,29.996,30.117,30.227,30.326,30.411,30.483,30.542,30.589,30.626,30.655,30.678,
-30.697,30.717,30.739,30.766,30.800,30.845,30.902,30.972,31.058,31.160,31.278,31.415,31.569,31.741,31.932,32.141,
-32.368,32.611,32.871,33.145,33.433,33.731,34.037,34.347,34.658,34.966,35.264,35.549,35.814,36.055,36.266,36.443,
-36.582,36.681,36.738,36.753,36.726,36.660,36.559,36.428,36.272,36.099,35.916,35.729,35.547,35.377,35.224,35.093,
-34.989,34.913,34.867,34.850,34.860,34.895,34.950,35.020,35.102,35.189,35.277,35.362,36.215,36.360,36.494,36.613,
-36.716,36.800,36.868,36.920,36.961,36.994,37.022,37.051,37.085,37.126,37.179,37.244,37.323,37.415,37.520,37.635,
-37.757,37.884,38.010,38.134,38.250,38.355,38.448,38.524,38.584,38.625,38.647,38.651,38.637,38.605,38.556,38.491,
-38.412,38.318,38.209,38.088,37.953,37.805,37.645,37.474,37.293,37.104,36.908,36.710,36.511,36.315,36.126,35.947,
-35.782,35.632,35.501,35.389,35.295,35.219,35.157,35.107,35.063,35.019,34.970,34.908,34.829,34.726,34.595,34.433,
-34.236,34.005,33.741,33.447,33.125,32.783,32.425,32.058,31.689,31.324,30.968,30.628,30.305,30.002,29.720,29.458,
-29.215,28.988,28.774,28.568,28.367,28.168,27.966,27.761,27.549,27.332,27.109,26.881,26.650,26.419,26.190,25.966,
-25.749,25.541,25.344,25.156,24.979,24.812,24.651,24.497,24.345,24.194,24.041,23.884,23.723,23.555,23.382,23.203,
-23.020,22.835,22.649,22.464,22.283,22.108,21.939,21.778,21.624,21.477,21.336,21.199,21.063,20.927,20.787,20.642,
-20.490,20.328,20.158,19.978,19.790,19.595,19.395,19.193,18.993,18.796,18.606,18.425,18.255,18.096,17.949,17.814,
-17.689,17.571,17.459,17.349,17.239,17.125,17.004,16.875,16.737,16.588,16.429,16.260,16.084,15.904,15.721,15.540,
-15.364,15.195,15.037,14.892,14.761,14.645,14.545,14.458,14.384,14.320,14.264,14.212,14.160,14.106,14.046,13.978,
-13.899,13.808,13.704,13.586,13.454,13.310,13.155,12.990,12.817,12.639,12.457,12.273,12.089,11.906,11.726,11.549,
-11.375,11.205,11.038,10.875,10.714,10.556,10.399,10.245,10.092,9.941,9.792,9.646,9.504,9.367,9.235,9.110,
-8.993,8.884,8.784,8.694,8.612,8.538,8.471,8.410,8.354,8.299,8.244,8.187,8.126,8.060,7.986,7.903,
-7.812,7.712,7.604,7.488,7.368,7.244,7.118,6.993,6.871,6.754,6.643,6.539,6.441,6.351,6.267,6.186,
-6.107,6.028,5.945,5.856,5.758,5.650,5.529,5.395,5.247,5.088,4.917,4.738,4.554,4.368,4.183,4.003,
-3.832,3.673,3.527,3.397,3.283,3.184,3.101,3.029,2.968,2.915,2.865,2.816,2.765,2.709,2.646,2.576,
-2.496,2.409,2.315,2.215,2.111,2.006,1.903,1.803,1.710,1.624,1.547,1.480,1.422,1.374,1.334,1.301,
-1.273,1.249,1.226,1.204,1.181,1.156,1.129,1.100,1.069,1.036,1.002,.968,.935,.903,.873,.844,
-.817,.791,.766,.739,.711,.680,.645,.605,.560,.511,.457,.400,.341,.281,.223,.168,
-.119,.077,.043,.019,.004,-.001,.003,.014,.029,.047,.064,.078,.086,.086,.074,.050,
-.012,-.039,-.104,-.182,-.270,-.367,-.469,-.575,-.680,-.783,-.880,-.969,-1.049,-1.118,-1.175,-1.221,
--1.256,-1.280,-1.296,-1.304,-1.307,-1.306,-1.303,-1.299,-1.296,-1.295,-1.295,-1.298,-1.304,-1.311,-1.320,-1.330,
--1.341,-1.352,-1.362,-1.371,-1.380,-1.388,-1.396,-1.404,-1.413,-1.423,-1.435,-1.450,-1.468,-1.487,-1.509,-1.531,
--1.554,-1.575,-1.593,-1.606,-1.612,-1.610,-1.596,-1.571,-1.533,-1.481,-1.415,-1.335,-1.243,-1.140,-1.026,-.906,
--.780,-.651,-.522,-.394,-.270,-.151,-.039,.066,.163,.253,.335,.410,.479,.543,.602,.658,
-.710,.760,.806,.850,.889,.924,.952,.972,.984,.984,.971,.943,.898,.836,.754,.653,
-.530,.387,.224,.042,-.158,-.374,-.603,-.842,-1.088,-1.336,-1.583,-1.823,-2.053,-2.268,-2.464,-2.637,
--2.785,-2.905,-2.995,-3.056,-3.087,-3.091,-3.070,-3.027,-2.966,-2.891,-2.808,-2.721,-2.634,-2.552,-2.479,-2.416,
--2.366,-2.329,-2.305,-2.294,-2.293,-2.299,-2.311,-2.325,-2.338,-2.349,-2.354,-2.353,-2.346,-2.332,-2.313,-2.290,
--2.266,-2.243,-2.224,-2.211,-2.207,-2.213,-2.230,-2.258,-2.296,-2.343,-2.395,-2.451,-2.506,-2.557,-2.601,-2.634,
--2.653,-2.657,-2.644,-2.614,-2.569,-2.510,-2.439,-2.360,-2.276,-2.192,-2.110,-2.035,-1.968,-1.913,-1.869,-1.838,
--1.818,-1.808,-1.806,-1.808,-1.811,-1.811,-1.806,-1.793,-1.769,-1.733,-1.685,-1.626,-1.556,-1.479,-1.399,-1.318,
--1.241,-1.173,-1.116,-1.075,-1.050,-1.044,-1.056,-1.084,-1.125,-1.175,-1.228,-1.279,-1.319,-1.342,-1.342,-1.312,
--1.247,-1.144,-1.000,-.815,-.592,-.332,-.043,.271,.600,.936,1.271,1.595,1.900,2.179,2.425,2.635,
-2.806,2.938,3.031,3.088,3.114,3.113,3.092,3.058,3.017,2.974,2.935,2.905,2.885,2.877,2.883,2.900,
-2.927,2.961,2.998,3.034,3.067,3.092,3.106,3.108,3.096,3.071,3.032,2.981,2.921,2.854,2.783,2.712,
-2.644,2.582,2.528,2.484,2.452,2.431,2.422,2.425,2.438,2.460,2.490,2.525,2.565,2.608,2.653,2.699,
-2.745,2.793,2.841,2.891,2.943,2.996,3.053,3.112,3.174,3.238,3.303,3.369,3.433,3.493,3.548,3.595,
-3.632,3.655,3.664,3.656,3.631,3.586,3.522,3.440,3.340,3.225,3.096,2.957,2.810,2.661,2.511,2.366,
-2.227,2.099,1.983,1.882,1.796,1.725,1.669,1.627,1.595,1.572,1.552,1.534,1.513,1.486,1.450,1.401,
-1.339,1.262,1.170,1.065,.949,.824,.695,.566,.441,.326,.223,.138,.073,.030,.012,.017,
-.045,.094,.161,.241,.332,.427,.524,.617,.705,.783,.850,.907,.952,.989,1.019,1.044,
-1.070,1.098,1.133,1.178,1.234,1.304,1.389,1.488,1.599,1.721,1.850,1.983,2.117,2.248,2.371,2.485,
-2.586,2.674,2.748,2.807,2.855,2.891,2.920,2.945,2.968,2.992,3.020,3.055,3.097,3.147,3.204,3.267,
-3.335,3.403,3.470,3.532,3.586,3.629,3.658,3.672,3.669,3.651,3.617,3.570,3.512,3.445,3.372,3.298,
-3.223,3.152,3.087,3.028,2.976,2.932,2.895,2.863,2.836,2.811,2.786,2.760,2.731,2.698,2.662,2.621,
-2.577,2.532,2.487,2.445,2.408,2.378,2.358,2.349,2.352,2.368,2.397,2.437,2.487,2.545,2.607,2.671,
-2.733,2.790,2.840,2.879,2.907,2.922,2.923,2.912,2.890,2.858,2.817,2.772,2.723,2.673,2.623,2.576,
-2.530,2.486,2.442,2.398,2.350,2.296,2.233,2.158,2.069,1.962,1.836,1.691,1.527,1.345,1.146,.935,
-.715,.490,.265,.044,-.168,-.367,-.551,-.716,-.862,-.988,-1.095,-1.185,-1.261,-1.324,-1.379,-1.428,
--1.475,-1.523,-1.573,-1.626,-1.684,-1.745,-1.808,-1.871,-1.932,-1.988,-2.036,-2.074,-2.100,-2.113,-2.112,-2.097,
--2.070,-2.033,-1.990,-1.942,-1.896,-1.853,-1.819,-1.797,-1.788,-1.796,-1.821,-1.864,-1.923,-1.996,-2.082,-2.176,
--2.276,-2.378,-2.478,-2.574,-2.662,-2.742,-2.812,-2.871,-2.920,-2.960,-2.993,-3.021,-3.046,-3.070,-3.094,-3.122,
--3.154,-3.190,-3.232,-3.278,-3.328,-3.380,-3.434,-3.488,-3.541,-3.590,-3.636,-3.677,-3.712,-3.743,-3.768,-3.790,
--3.808,-3.825,-3.839,-3.854,-3.870,-3.886,-3.904,-3.923,-3.943,-3.964,-3.984,-4.004,-4.022,-4.037,-4.050,-4.059,
--4.066,-4.070,-4.071,-4.071,-4.070,-4.070,-4.071,-4.073,-4.078,-4.085,-4.094,-4.105,-4.117,-4.128,-4.138,-4.145,
--4.147,-4.144,-4.135,-4.119,-4.096,-4.067,-4.033,-3.996,-3.956,-3.918,-3.882,-3.851,-3.827,-3.813,-3.807,-3.812,
--3.827,-3.851,-3.881,-3.915,-3.951,-3.984,-4.010,-4.027,-4.031,-4.019,-3.989,-3.938,-3.867,-3.776,-3.665,-3.536,
--3.391,-3.234,-3.068,-2.895,-2.720,-2.543,-2.369,-2.199,-2.035,-1.875,-1.722,-1.574,-1.430,-1.290,-1.151,-1.014,
--.876,-.738,-.599,-.460,-.322,-.186,-.054,.071,.186,.290,.378,.450,.503,.536,.547,.536,
-.504,.452,.382,.295,.194,.083,-.035,-.158,-.283,-.405,-.524,-.637,-.742,-.839,-.926,-1.003,
--1.070,-1.129,-1.179,-1.222,-1.258,-1.289,-1.314,-1.335,-1.351,-1.363,-1.369,-1.370,-1.362,-1.346,-1.319,-1.280,
--1.227,-1.159,-1.075,-.974,-.857,-.724,-.577,-.418,-.250,-.078,.095,.265,.425,.573,.703,.812,
-.896,.955,.987,.993,.974,.935,.878,.810,.735,.660,.591,.533,.492,.470,.472,.498,
-.548,.622,.715,.824,.946,1.074,1.205,1.332,1.454,1.566,1.668,1.759,1.841,1.918,1.993,2.072,
-2.160,2.263,2.388,2.539,2.720,2.933,3.177,3.452,3.753,4.075,4.409,4.748,5.082,5.399,5.691,5.947,
-6.161,6.325,6.436,6.491,6.491,6.439,6.339,6.200,6.028,5.835,5.629,5.421,5.222,5.038,4.880,4.752,
-4.660,4.606,4.592,4.619,4.685,4.788,4.925,5.094,5.291,5.513,5.758,6.022,6.303,6.600,6.911,7.233,
-7.566,7.906,8.252,8.600,8.945,9.284,9.612,9.923,10.211,10.470,10.696,10.883,11.028,11.126,11.177,11.179,
-11.134,11.043,10.910,10.740,10.537,10.309,10.060,9.797,9.527,9.256,8.987,8.726,8.475,8.239,8.017,7.813,
-7.626,7.457,7.306,7.174,7.061,6.969,6.898,6.851,6.829,6.835,6.870,6.938,7.041,7.179,7.354,7.567,
-7.816,8.100,8.416,8.762,9.134,9.526,9.933,10.352,10.777,11.203,11.627,12.044,12.454,12.853,13.242,13.621,
-13.990,14.352,14.707,15.059,15.408,15.757,16.108,16.461,16.817,17.174,17.534,17.893,18.250,18.604,18.951,19.290,
-19.619,19.936,20.240,20.531,20.810,21.077,21.333,21.580,21.821,22.058,22.293,22.527,22.763,23.002,23.245,23.491,
-23.739,23.990,24.241,24.491,24.737,24.976,25.209,25.431,25.642,25.841,26.027,26.200,26.360,26.509,26.647,26.776,
-26.897,27.012,27.122,27.229,27.333,27.436,27.538,27.640,27.742,27.844,27.945,28.047,28.148,28.251,28.354,28.459,
-28.566,28.677,28.792,28.912,29.038,29.170,29.309,29.455,29.608,29.766,29.929,30.097,30.266,30.436,30.605,30.772,
-30.935,31.094,31.247,31.395,31.538,31.676,31.810,31.941,32.070,32.199,32.329,32.461,32.596,32.733,32.874,33.017,
-33.162,33.309,33.454,33.598,33.737,33.872,34.000,34.121,34.233,34.336,34.431,34.518,34.597,34.670,34.739,34.805,
-34.869,34.933,34.999,35.067,35.139,35.215,35.296,35.380,35.469,35.560,35.653,35.747,35.841,35.934,36.024,36.112,
-36.195,36.273,36.346,36.414,36.475,36.529,36.577,36.617,36.650,36.673,36.688,36.692,36.684,36.663,36.629,36.578,
-36.512,36.427,36.323,36.200,36.057,35.894,35.711,35.509,35.289,35.053,34.802,34.538,34.265,33.983,33.696,33.405,
-33.114,32.824,32.538,32.257,31.981,31.713,31.452,31.200,30.955,30.718,30.489,30.267,30.052,29.844,29.643,29.450,
-29.264,29.088,28.924,28.772,28.635,28.515,28.415,28.337,28.283,28.254,28.251,28.275,28.326,28.401,28.499,28.617,
-28.752,28.900,29.055,29.215,29.373,29.525,29.669,29.801,29.917,30.018,30.103,30.172,30.227,30.269,30.303,30.331,
-30.356,30.382,30.413,30.451,30.499,30.558,30.630,30.714,30.811,30.920,31.041,31.173,31.315,31.466,31.627,31.797,
-31.977,32.169,32.373,32.592,32.826,33.077,33.346,33.632,33.936,34.253,34.582,34.919,35.256,35.589,35.910,36.211,
-36.485,36.725,36.925,37.079,37.183,37.236,37.237,37.190,37.096,36.964,36.799,36.610,36.408,36.202,36.002,35.817,
-35.655,35.524,35.427,35.369,35.351,35.371,35.427,35.515,35.629,35.763,35.910,36.063,36.215,36.857,37.057,37.250,
-37.429,37.592,37.734,37.855,37.954,38.033,38.095,38.142,38.178,38.206,38.230,38.253,38.277,38.304,38.334,38.368,
-38.406,38.446,38.488,38.529,38.568,38.605,38.637,38.663,38.684,38.700,38.709,38.712,38.709,38.700,38.683,38.659,
-38.625,38.580,38.521,38.445,38.349,38.232,38.090,37.922,37.727,37.506,37.259,36.991,36.705,36.407,36.102,35.799,
-35.504,35.225,34.968,34.740,34.544,34.382,34.257,34.166,34.106,34.072,34.057,34.053,34.051,34.043,34.019,33.973,
-33.896,33.786,33.638,33.452,33.229,32.972,32.687,32.378,32.055,31.722,31.388,31.059,30.740,30.435,30.148,29.877,
-29.624,29.385,29.158,28.938,28.722,28.504,28.282,28.052,27.812,27.561,27.300,27.031,26.757,26.480,26.206,25.938,
-25.679,25.434,25.205,24.994,24.799,24.621,24.458,24.306,24.162,24.021,23.880,23.735,23.581,23.417,23.241,23.053,
-22.852,22.641,22.422,22.198,21.972,21.748,21.529,21.318,21.116,20.925,20.746,20.577,20.418,20.266,20.120,19.977,
-19.834,19.689,19.541,19.389,19.232,19.070,18.905,18.738,18.572,18.408,18.249,18.097,17.953,17.819,17.694,17.577,
-17.468,17.365,17.264,17.163,17.058,16.946,16.826,16.693,16.548,16.389,16.216,16.031,15.837,15.635,15.429,15.223,
-15.020,14.825,14.641,14.470,14.314,14.175,14.053,13.946,13.855,13.776,13.707,13.644,13.584,13.524,13.460,13.390,
-13.310,13.220,13.118,13.003,12.876,12.736,12.586,12.426,12.258,12.084,11.906,11.725,11.544,11.363,11.184,11.007,
-10.834,10.664,10.498,10.335,10.176,10.019,9.866,9.715,9.566,9.420,9.276,9.134,8.995,8.859,8.726,8.597,
-8.472,8.351,8.236,8.125,8.020,7.919,7.824,7.732,7.645,7.559,7.476,7.393,7.310,7.225,7.139,7.049,
-6.957,6.862,6.764,6.664,6.563,6.461,6.362,6.265,6.172,6.085,6.003,5.928,5.858,5.795,5.735,5.677,
-5.619,5.557,5.490,5.414,5.327,5.225,5.108,4.974,4.824,4.658,4.477,4.286,4.087,3.884,3.681,3.484,
-3.295,3.120,2.961,2.821,2.699,2.597,2.514,2.446,2.392,2.348,2.308,2.270,2.230,2.183,2.127,2.060,
-1.982,1.891,1.789,1.679,1.563,1.444,1.325,1.211,1.104,1.007,.922,.851,.793,.747,.714,.690,
-.673,.660,.649,.637,.622,.601,.575,.541,.501,.456,.406,.352,.298,.244,.192,.144,
-.099,.059,.023,-.010,-.041,-.070,-.101,-.133,-.169,-.209,-.254,-.305,-.361,-.421,-.484,-.549,
--.613,-.675,-.733,-.786,-.831,-.869,-.898,-.920,-.935,-.943,-.947,-.949,-.950,-.953,-.960,-.971,
--.989,-1.014,-1.046,-1.085,-1.131,-1.182,-1.236,-1.292,-1.349,-1.403,-1.454,-1.500,-1.540,-1.573,-1.598,-1.617,
--1.629,-1.636,-1.638,-1.638,-1.637,-1.637,-1.640,-1.646,-1.658,-1.676,-1.700,-1.731,-1.768,-1.812,-1.861,-1.914,
--1.972,-2.032,-2.094,-2.157,-2.220,-2.285,-2.349,-2.414,-2.479,-2.545,-2.613,-2.681,-2.751,-2.822,-2.892,-2.961,
--3.027,-3.087,-3.138,-3.178,-3.204,-3.212,-3.199,-3.163,-3.101,-3.013,-2.897,-2.754,-2.586,-2.396,-2.187,-1.964,
--1.731,-1.495,-1.262,-1.036,-.824,-.630,-.458,-.311,-.191,-.097,-.030,.014,.036,.042,.035,.020,
-.003,-.012,-.021,-.021,-.009,.017,.056,.108,.170,.240,.314,.387,.454,.510,.550,.569,
-.563,.528,.463,.365,.235,.074,-.117,-.334,-.572,-.826,-1.091,-1.359,-1.624,-1.879,-2.119,-2.337,
--2.528,-2.690,-2.818,-2.912,-2.972,-3.000,-2.997,-2.969,-2.920,-2.855,-2.780,-2.701,-2.625,-2.555,-2.498,-2.455,
--2.429,-2.421,-2.431,-2.456,-2.495,-2.545,-2.600,-2.658,-2.713,-2.762,-2.802,-2.830,-2.845,-2.845,-2.833,-2.808,
--2.773,-2.731,-2.685,-2.637,-2.592,-2.551,-2.516,-2.490,-2.472,-2.462,-2.461,-2.465,-2.473,-2.483,-2.493,-2.501,
--2.504,-2.502,-2.493,-2.477,-2.454,-2.426,-2.393,-2.358,-2.321,-2.284,-2.249,-2.216,-2.187,-2.160,-2.136,-2.113,
--2.089,-2.063,-2.031,-1.992,-1.944,-1.884,-1.812,-1.726,-1.626,-1.513,-1.389,-1.256,-1.116,-.973,-.831,-.693,
--.563,-.444,-.339,-.251,-.180,-.127,-.090,-.069,-.060,-.060,-.064,-.068,-.067,-.054,-.027,.020,
-.090,.185,.306,.453,.624,.816,1.024,1.245,1.471,1.697,1.915,2.120,2.306,2.467,2.602,2.706,
-2.780,2.824,2.841,2.833,2.806,2.764,2.713,2.659,2.607,2.562,2.529,2.509,2.505,2.516,2.542,2.581,
-2.630,2.685,2.743,2.800,2.851,2.894,2.926,2.946,2.953,2.947,2.929,2.900,2.863,2.821,2.776,2.730,
-2.687,2.647,2.611,2.581,2.557,2.538,2.523,2.512,2.502,2.493,2.485,2.476,2.466,2.456,2.447,2.440,
-2.437,2.438,2.447,2.465,2.493,2.532,2.583,2.646,2.720,2.804,2.894,2.990,3.087,3.183,3.274,3.356,
-3.426,3.482,3.520,3.538,3.536,3.513,3.469,3.405,3.323,3.224,3.113,2.991,2.863,2.732,2.604,2.480,
-2.366,2.264,2.178,2.109,2.059,2.028,2.016,2.022,2.043,2.076,2.118,2.164,2.210,2.250,2.280,2.294,
-2.290,2.264,2.215,2.140,2.041,1.919,1.778,1.621,1.454,1.283,1.113,.952,.805,.678,.575,.501,
-.457,.443,.459,.503,.571,.658,.758,.866,.976,1.081,1.177,1.260,1.327,1.376,1.406,1.420,
-1.420,1.409,1.391,1.371,1.355,1.346,1.349,1.367,1.402,1.456,1.528,1.617,1.720,1.835,1.957,2.083,
-2.207,2.328,2.440,2.541,2.630,2.706,2.769,2.821,2.862,2.895,2.924,2.950,2.976,3.004,3.036,3.072,
-3.113,3.157,3.204,3.252,3.298,3.339,3.374,3.399,3.414,3.416,3.406,3.382,3.347,3.301,3.246,3.185,
-3.119,3.052,2.985,2.922,2.862,2.808,2.760,2.718,2.683,2.653,2.627,2.605,2.586,2.570,2.555,2.541,
-2.530,2.521,2.517,2.517,2.523,2.537,2.560,2.594,2.637,2.692,2.757,2.831,2.913,3.000,3.090,3.181,
-3.270,3.353,3.428,3.493,3.546,3.586,3.612,3.625,3.625,3.613,3.590,3.560,3.522,3.480,3.434,3.384,
-3.332,3.277,3.217,3.151,3.076,2.991,2.891,2.774,2.637,2.479,2.298,2.094,1.867,1.620,1.355,1.078,
-.792,.504,.220,-.055,-.313,-.550,-.761,-.944,-1.096,-1.217,-1.309,-1.375,-1.418,-1.443,-1.456,-1.462,
--1.469,-1.480,-1.500,-1.534,-1.582,-1.645,-1.723,-1.814,-1.914,-2.019,-2.125,-2.226,-2.318,-2.397,-2.460,-2.504,
--2.529,-2.536,-2.526,-2.503,-2.469,-2.431,-2.392,-2.359,-2.334,-2.323,-2.329,-2.353,-2.395,-2.457,-2.535,-2.627,
--2.730,-2.841,-2.954,-3.066,-3.172,-3.271,-3.360,-3.436,-3.500,-3.552,-3.593,-3.624,-3.648,-3.667,-3.683,-3.700,
--3.718,-3.739,-3.764,-3.793,-3.826,-3.863,-3.901,-3.940,-3.978,-4.014,-4.047,-4.075,-4.099,-4.118,-4.133,-4.144,
--4.154,-4.164,-4.174,-4.187,-4.203,-4.225,-4.251,-4.283,-4.319,-4.361,-4.405,-4.451,-4.497,-4.542,-4.584,-4.622,
--4.655,-4.682,-4.703,-4.717,-4.725,-4.728,-4.727,-4.721,-4.713,-4.702,-4.689,-4.675,-4.658,-4.639,-4.617,-4.592,
--4.561,-4.526,-4.484,-4.437,-4.383,-4.325,-4.262,-4.197,-4.132,-4.069,-4.010,-3.958,-3.915,-3.883,-3.863,-3.856,
--3.862,-3.879,-3.905,-3.938,-3.974,-4.009,-4.040,-4.061,-4.071,-4.064,-4.039,-3.993,-3.927,-3.840,-3.734,-3.610,
--3.473,-3.325,-3.170,-3.013,-2.856,-2.705,-2.560,-2.425,-2.300,-2.186,-2.081,-1.986,-1.898,-1.814,-1.733,-1.652,
--1.569,-1.483,-1.393,-1.300,-1.202,-1.103,-1.004,-.907,-.815,-.732,-.660,-.601,-.559,-.534,-.528,-.540,
--.570,-.617,-.678,-.751,-.834,-.923,-1.015,-1.107,-1.196,-1.281,-1.359,-1.429,-1.491,-1.544,-1.589,-1.626,
--1.656,-1.680,-1.700,-1.717,-1.732,-1.745,-1.757,-1.769,-1.780,-1.790,-1.798,-1.804,-1.804,-1.800,-1.787,-1.766,
--1.733,-1.689,-1.632,-1.561,-1.476,-1.377,-1.265,-1.143,-1.012,-.874,-.735,-.596,-.462,-.337,-.224,-.128,
--.052,.003,.036,.045,.032,-.001,-.051,-.113,-.185,-.259,-.330,-.394,-.444,-.478,-.491,-.483,
--.452,-.399,-.326,-.237,-.136,-.028,.083,.191,.292,.383,.462,.528,.584,.632,.677,.725,
-.781,.854,.950,1.076,1.237,1.435,1.674,1.951,2.263,2.604,2.967,3.341,3.715,4.077,4.415,4.717,
-4.974,5.177,5.319,5.398,5.414,5.368,5.268,5.121,4.936,4.727,4.504,4.282,4.072,3.885,3.731,3.617,
-3.550,3.532,3.564,3.645,3.772,3.941,4.146,4.384,4.647,4.931,5.232,5.546,5.870,6.202,6.543,6.891,
-7.247,7.611,7.983,8.362,8.747,9.135,9.522,9.905,10.278,10.633,10.965,11.267,11.531,11.752,11.924,12.044,
-12.107,12.114,12.065,11.962,11.808,11.609,11.371,11.101,10.806,10.495,10.174,9.853,9.537,9.233,8.947,8.683,
-8.446,8.238,8.064,7.924,7.820,7.754,7.726,7.738,7.789,7.881,8.012,8.183,8.393,8.641,8.925,9.243,
-9.592,9.968,10.368,10.787,11.220,11.662,12.109,12.556,12.998,13.431,13.853,14.262,14.655,15.033,15.396,15.745,
-16.081,16.409,16.729,17.044,17.357,17.671,17.986,18.305,18.626,18.951,19.278,19.606,19.931,20.254,20.569,20.876,
-21.173,21.457,21.727,21.984,22.227,22.457,22.676,22.886,23.088,23.287,23.484,23.681,23.880,24.084,24.291,24.504,
-24.720,24.938,25.157,25.375,25.588,25.795,25.993,26.179,26.352,26.512,26.656,26.786,26.903,27.008,27.102,27.188,
-27.269,27.346,27.423,27.500,27.580,27.665,27.754,27.848,27.947,28.051,28.159,28.269,28.382,28.496,28.610,28.724,
-28.839,28.953,29.067,29.181,29.296,29.413,29.531,29.652,29.775,29.900,30.026,30.155,30.284,30.414,30.544,30.672,
-30.799,30.925,31.049,31.172,31.295,31.418,31.543,31.670,31.801,31.936,32.077,32.223,32.375,32.532,32.692,32.855,
-33.018,33.179,33.336,33.485,33.627,33.757,33.875,33.980,34.072,34.152,34.220,34.278,34.330,34.377,34.423,34.472,
-34.524,34.585,34.655,34.736,34.830,34.936,35.054,35.183,35.321,35.466,35.615,35.766,35.917,36.064,36.205,36.339,
-36.464,36.579,36.683,36.775,36.857,36.927,36.986,37.035,37.074,37.103,37.121,37.128,37.124,37.108,37.079,37.034,
-36.974,36.896,36.800,36.684,36.548,36.391,36.214,36.017,35.800,35.566,35.315,35.049,34.772,34.484,34.189,33.889,
-33.587,33.284,32.982,32.684,32.390,32.102,31.819,31.544,31.274,31.011,30.754,30.503,30.257,30.017,29.783,29.555,
-29.334,29.122,28.922,28.734,28.562,28.409,28.278,28.172,28.093,28.044,28.027,28.041,28.088,28.165,28.270,28.400,
-28.551,28.718,28.895,29.076,29.255,29.426,29.586,29.729,29.854,29.957,30.041,30.104,30.151,30.184,30.209,30.230,
-30.253,30.282,30.322,30.377,30.448,30.538,30.646,30.771,30.911,31.061,31.219,31.380,31.540,31.696,31.846,31.988,
-32.122,32.250,32.375,32.501,32.633,32.777,32.938,33.122,33.333,33.575,33.848,34.153,34.487,34.845,35.220,35.604,
-35.987,36.358,36.706,37.020,37.291,37.510,37.671,37.771,37.807,37.783,37.702,37.571,37.400,37.199,36.979,36.754,
-36.535,36.334,36.161,36.023,35.928,35.878,35.876,35.920,36.006,36.130,36.285,36.463,36.656,36.857,37.325,37.530,
-37.738,37.941,38.136,38.318,38.485,38.635,38.767,38.882,38.980,39.063,39.131,39.185,39.227,39.257,39.276,39.284,
-39.281,39.267,39.242,39.207,39.163,39.112,39.054,38.992,38.930,38.868,38.810,38.759,38.716,38.683,38.658,38.642,
-38.632,38.624,38.614,38.595,38.562,38.508,38.426,38.310,38.156,37.959,37.719,37.436,37.112,36.752,36.364,35.957,
-35.540,35.125,34.724,34.346,34.002,33.700,33.446,33.243,33.092,32.990,32.934,32.915,32.924,32.951,32.985,33.014,
-33.027,33.017,32.975,32.896,32.778,32.622,32.429,32.203,31.952,31.682,31.401,31.117,30.837,30.566,30.309,30.067,
-29.843,29.633,29.436,29.246,29.059,28.870,28.673,28.463,28.238,27.995,27.733,27.454,27.160,26.856,26.546,26.235,
-25.929,25.634,25.353,25.090,24.848,24.627,24.425,24.240,24.070,23.908,23.752,23.595,23.433,23.261,23.078,22.882,
-22.670,22.446,22.210,21.965,21.715,21.464,21.217,20.976,20.746,20.529,20.326,20.138,19.964,19.804,19.655,19.514,
-19.379,19.248,19.117,18.984,18.849,18.711,18.569,18.426,18.281,18.137,17.995,17.858,17.726,17.601,17.483,17.371,
-17.265,17.162,17.061,16.957,16.850,16.735,16.610,16.472,16.321,16.156,15.978,15.786,15.584,15.374,15.160,14.946,
-14.734,14.529,14.334,14.151,13.983,13.830,13.693,13.571,13.462,13.364,13.274,13.190,13.109,13.026,12.941,12.849,
-12.750,12.641,12.524,12.396,12.260,12.115,11.963,11.805,11.643,11.478,11.312,11.146,10.981,10.817,10.654,10.494,
-10.336,10.180,10.025,9.871,9.718,9.566,9.415,9.264,9.114,8.964,8.814,8.666,8.519,8.374,8.231,8.090,
-7.952,7.817,7.685,7.557,7.434,7.315,7.200,7.090,6.985,6.884,6.787,6.695,6.605,6.519,6.435,6.352,
-6.271,6.190,6.110,6.029,5.949,5.868,5.789,5.710,5.634,5.560,5.489,5.422,5.359,5.300,5.243,5.188,
-5.134,5.079,5.019,4.954,4.879,4.794,4.695,4.582,4.453,4.308,4.148,3.974,3.789,3.596,3.399,3.202,
-3.008,2.823,2.650,2.491,2.348,2.224,2.117,2.026,1.950,1.885,1.829,1.776,1.723,1.666,1.602,1.528,
-1.443,1.345,1.237,1.118,.992,.861,.730,.601,.478,.366,.265,.179,.107,.052,.010,-.019,
--.038,-.049,-.056,-.061,-.067,-.077,-.093,-.115,-.144,-.179,-.221,-.267,-.316,-.366,-.416,-.464,
--.509,-.550,-.587,-.621,-.651,-.680,-.708,-.736,-.767,-.801,-.839,-.882,-.930,-.982,-1.039,-1.100,
--1.163,-1.227,-1.290,-1.353,-1.413,-1.471,-1.525,-1.576,-1.623,-1.667,-1.709,-1.749,-1.789,-1.827,-1.866,-1.905,
--1.944,-1.983,-2.022,-2.059,-2.095,-2.128,-2.157,-2.181,-2.200,-2.213,-2.221,-2.222,-2.218,-2.209,-2.196,-2.180,
--2.163,-2.146,-2.131,-2.119,-2.112,-2.110,-2.116,-2.130,-2.152,-2.183,-2.223,-2.271,-2.327,-2.390,-2.460,-2.534,
--2.613,-2.694,-2.777,-2.862,-2.946,-3.030,-3.113,-3.196,-3.279,-3.361,-3.444,-3.528,-3.613,-3.699,-3.786,-3.874,
--3.961,-4.044,-4.123,-4.193,-4.252,-4.296,-4.320,-4.321,-4.294,-4.239,-4.150,-4.029,-3.874,-3.686,-3.469,-3.226,
--2.962,-2.684,-2.398,-2.113,-1.834,-1.571,-1.329,-1.114,-.930,-.781,-.667,-.589,-.543,-.526,-.534,-.560,
--.597,-.640,-.680,-.713,-.733,-.735,-.718,-.680,-.621,-.544,-.452,-.349,-.241,-.133,-.032,.056,
-.126,.172,.190,.178,.134,.057,-.051,-.188,-.350,-.533,-.731,-.937,-1.147,-1.353,-1.549,-1.729,
--1.890,-2.026,-2.137,-2.219,-2.275,-2.304,-2.310,-2.296,-2.268,-2.231,-2.189,-2.150,-2.119,-2.099,-2.096,-2.112,
--2.148,-2.205,-2.281,-2.373,-2.479,-2.593,-2.711,-2.826,-2.935,-3.031,-3.110,-3.170,-3.208,-3.223,-3.215,-3.186,
--3.138,-3.074,-2.998,-2.913,-2.824,-2.734,-2.645,-2.562,-2.485,-2.416,-2.355,-2.303,-2.258,-2.221,-2.190,-2.165,
--2.144,-2.129,-2.118,-2.111,-2.110,-2.114,-2.124,-2.139,-2.160,-2.186,-2.215,-2.246,-2.275,-2.301,-2.318,-2.325,
--2.317,-2.291,-2.244,-2.175,-2.081,-1.964,-1.823,-1.660,-1.479,-1.283,-1.076,-.862,-.647,-.435,-.230,-.035,
-.145,.309,.456,.585,.697,.794,.877,.949,1.012,1.070,1.126,1.182,1.241,1.305,1.376,1.455,
-1.541,1.635,1.735,1.841,1.949,2.059,2.165,2.267,2.361,2.443,2.511,2.564,2.599,2.615,2.613,2.593,
-2.556,2.506,2.446,2.378,2.307,2.238,2.175,2.120,2.079,2.052,2.042,2.049,2.073,2.111,2.163,2.224,
-2.291,2.361,2.430,2.495,2.554,2.604,2.644,2.676,2.699,2.715,2.727,2.737,2.747,2.761,2.780,2.804,
-2.836,2.873,2.915,2.960,3.003,3.043,3.075,3.096,3.103,3.094,3.068,3.025,2.966,2.893,2.810,2.720,
-2.629,2.542,2.464,2.399,2.352,2.325,2.321,2.340,2.381,2.444,2.524,2.618,2.721,2.829,2.937,3.039,
-3.131,3.209,3.271,3.313,3.336,3.338,3.321,3.285,3.232,3.166,3.088,3.002,2.912,2.820,2.729,2.643,
-2.564,2.495,2.437,2.392,2.362,2.348,2.349,2.366,2.399,2.445,2.503,2.570,2.643,2.719,2.794,2.864,
-2.923,2.970,2.999,3.007,2.994,2.956,2.895,2.812,2.707,2.586,2.452,2.310,2.166,2.026,1.895,1.780,
-1.683,1.610,1.561,1.539,1.541,1.567,1.612,1.671,1.740,1.812,1.881,1.942,1.990,2.020,2.030,2.018,
-1.985,1.933,1.865,1.785,1.700,1.616,1.537,1.472,1.424,1.398,1.398,1.425,1.479,1.559,1.662,1.783,
-1.919,2.063,2.210,2.353,2.489,2.612,2.719,2.808,2.877,2.927,2.959,2.974,2.976,2.967,2.952,2.933,
-2.912,2.894,2.878,2.868,2.862,2.861,2.864,2.870,2.878,2.885,2.891,2.894,2.893,2.887,2.876,2.860,
-2.839,2.813,2.784,2.752,2.719,2.684,2.650,2.617,2.586,2.557,2.531,2.509,2.490,2.477,2.469,2.467,
-2.472,2.484,2.506,2.536,2.576,2.627,2.688,2.759,2.840,2.930,3.028,3.131,3.239,3.348,3.456,3.560,
-3.658,3.748,3.826,3.892,3.944,3.980,4.001,4.007,3.998,3.974,3.938,3.892,3.835,3.771,3.701,3.624,
-3.543,3.457,3.366,3.268,3.162,3.046,2.917,2.775,2.616,2.438,2.242,2.026,1.791,1.539,1.274,.997,
-.716,.435,.161,-.101,-.343,-.561,-.749,-.905,-1.027,-1.113,-1.167,-1.191,-1.190,-1.170,-1.139,-1.104,
--1.074,-1.055,-1.054,-1.077,-1.126,-1.204,-1.311,-1.443,-1.598,-1.769,-1.950,-2.133,-2.311,-2.477,-2.623,-2.746,
--2.842,-2.907,-2.944,-2.952,-2.937,-2.903,-2.855,-2.801,-2.746,-2.698,-2.663,-2.643,-2.644,-2.667,-2.712,-2.778,
--2.863,-2.963,-3.075,-3.195,-3.316,-3.436,-3.550,-3.656,-3.751,-3.834,-3.905,-3.965,-4.015,-4.057,-4.093,-4.124,
--4.154,-4.184,-4.215,-4.248,-4.283,-4.319,-4.357,-4.394,-4.431,-4.464,-4.495,-4.521,-4.542,-4.559,-4.572,-4.582,
--4.591,-4.599,-4.608,-4.622,-4.639,-4.663,-4.694,-4.732,-4.777,-4.829,-4.886,-4.946,-5.008,-5.070,-5.128,-5.183,
--5.231,-5.271,-5.302,-5.324,-5.335,-5.338,-5.331,-5.316,-5.294,-5.266,-5.232,-5.194,-5.153,-5.108,-5.059,-5.008,
--4.952,-4.892,-4.828,-4.759,-4.686,-4.608,-4.527,-4.444,-4.360,-4.278,-4.199,-4.125,-4.060,-4.004,-3.959,-3.926,
--3.905,-3.896,-3.897,-3.906,-3.921,-3.937,-3.952,-3.961,-3.961,-3.949,-3.922,-3.880,-3.820,-3.743,-3.650,-3.545,
--3.429,-3.306,-3.181,-3.056,-2.937,-2.825,-2.725,-2.636,-2.561,-2.498,-2.446,-2.404,-2.369,-2.337,-2.305,-2.270,
--2.229,-2.181,-2.123,-2.057,-1.981,-1.898,-1.810,-1.720,-1.632,-1.548,-1.472,-1.408,-1.358,-1.323,-1.306,-1.306,
--1.323,-1.355,-1.400,-1.455,-1.518,-1.586,-1.655,-1.723,-1.789,-1.850,-1.906,-1.957,-2.002,-2.042,-2.078,-2.112,
--2.145,-2.177,-2.210,-2.245,-2.282,-2.320,-2.359,-2.398,-2.437,-2.472,-2.504,-2.530,-2.548,-2.558,-2.559,-2.549,
--2.528,-2.497,-2.454,-2.402,-2.340,-2.269,-2.192,-2.110,-2.024,-1.936,-1.849,-1.764,-1.684,-1.610,-1.545,-1.491,
--1.448,-1.418,-1.402,-1.400,-1.411,-1.433,-1.465,-1.504,-1.547,-1.589,-1.627,-1.657,-1.674,-1.675,-1.657,-1.618,
--1.556,-1.474,-1.371,-1.250,-1.116,-.974,-.828,-.684,-.547,-.422,-.313,-.223,-.152,-.099,-.062,-.037,
--.018,.001,.028,.069,.133,.223,.345,.501,.691,.912,1.161,1.430,1.712,1.996,2.271,2.528,
-2.756,2.947,3.094,3.193,3.243,3.243,3.199,3.118,3.007,2.877,2.741,2.609,2.494,2.407,2.356,2.348,
-2.389,2.481,2.623,2.813,3.046,3.317,3.618,3.943,4.284,4.634,4.987,5.340,5.690,6.034,6.374,6.710,
-7.044,7.379,7.718,8.062,8.413,8.772,9.137,9.506,9.875,10.239,10.592,10.927,11.236,11.513,11.751,11.943,
-12.084,12.172,12.204,12.181,12.103,11.975,11.801,11.588,11.342,11.072,10.786,10.493,10.200,9.916,9.649,9.405,
-9.190,9.010,8.869,8.769,8.715,8.708,8.748,8.837,8.973,9.157,9.386,9.657,9.969,10.318,10.699,11.108,
-11.540,11.990,12.452,12.921,13.392,13.859,14.317,14.762,15.191,15.601,15.990,16.357,16.703,17.027,17.333,17.622,
-17.898,18.163,18.422,18.678,18.934,19.193,19.457,19.729,20.007,20.293,20.586,20.885,21.186,21.489,21.790,22.086,
-22.375,22.655,22.923,23.179,23.421,23.650,23.866,24.071,24.266,24.453,24.634,24.812,24.987,25.163,25.339,25.516,
-25.695,25.875,26.054,26.230,26.403,26.570,26.728,26.877,27.015,27.140,27.254,27.355,27.446,27.528,27.602,27.671,
-27.737,27.804,27.874,27.948,28.028,28.116,28.212,28.315,28.426,28.543,28.665,28.790,28.916,29.042,29.167,29.288,
-29.405,29.517,29.625,29.728,29.827,29.923,30.016,30.108,30.199,30.290,30.381,30.473,30.565,30.659,30.753,30.848,
-30.944,31.040,31.137,31.236,31.336,31.440,31.547,31.660,31.778,31.902,32.034,32.173,32.319,32.470,32.627,32.786,
-32.946,33.103,33.256,33.402,33.538,33.662,33.772,33.868,33.950,34.019,34.075,34.122,34.163,34.199,34.237,34.278,
-34.327,34.387,34.461,34.550,34.655,34.778,34.916,35.070,35.236,35.411,35.594,35.780,35.967,36.151,36.329,36.499,
-36.660,36.809,36.946,37.070,37.182,37.282,37.369,37.445,37.510,37.563,37.604,37.633,37.650,37.652,37.640,37.612,
-37.565,37.500,37.416,37.310,37.184,37.037,36.870,36.683,36.478,36.256,36.020,35.770,35.510,35.241,34.965,34.684,
-34.400,34.114,33.827,33.540,33.253,32.967,32.681,32.396,32.111,31.827,31.543,31.259,30.975,30.693,30.413,30.137,
-29.866,29.603,29.351,29.112,28.891,28.692,28.517,28.371,28.257,28.178,28.136,28.131,28.164,28.233,28.336,28.470,
-28.628,28.804,28.993,29.187,29.379,29.561,29.728,29.875,29.997,30.093,30.163,30.208,30.233,30.242,30.243,30.241,
-30.245,30.263,30.301,30.364,30.458,30.583,30.741,30.928,31.140,31.372,31.617,31.865,32.110,32.343,32.558,32.749,
-32.913,33.050,33.160,33.249,33.322,33.387,33.454,33.532,33.631,33.760,33.926,34.135,34.389,34.687,35.027,35.402,
-35.804,36.220,36.639,37.046,37.429,37.774,38.069,38.305,38.475,38.576,38.607,38.572,38.475,38.325,38.133,37.912,
-37.674,37.433,37.202,36.992,36.812,36.672,36.577,36.529,36.529,36.575,36.664,36.790,36.947,37.128,37.325,37.784,
-37.924,38.072,38.225,38.381,38.537,38.693,38.846,38.996,39.142,39.283,39.417,39.541,39.655,39.754,39.837,39.901,
-39.942,39.960,39.952,39.918,39.860,39.779,39.678,39.560,39.432,39.299,39.167,39.042,38.929,38.833,38.757,38.704,
-38.672,38.659,38.662,38.674,38.688,38.695,38.685,38.649,38.577,38.462,38.297,38.078,37.804,37.476,37.098,36.678,
-36.224,35.749,35.264,34.784,34.321,33.889,33.497,33.154,32.866,32.635,32.461,32.339,32.264,32.226,32.214,32.218,
-32.224,32.223,32.204,32.160,32.085,31.976,31.833,31.658,31.457,31.235,31.000,30.761,30.524,30.297,30.085,29.892,
-29.718,29.564,29.427,29.301,29.182,29.061,28.933,28.790,28.626,28.438,28.222,27.978,27.707,27.412,27.098,26.770,
-26.436,26.101,25.773,25.456,25.156,24.876,24.615,24.375,24.154,23.947,23.751,23.562,23.374,23.184,22.986,22.780,
-22.562,22.333,22.094,21.847,21.595,21.341,21.090,20.846,20.611,20.389,20.181,19.990,19.813,19.652,19.503,19.364,
-19.233,19.105,18.980,18.854,18.725,18.592,18.454,18.313,18.169,18.023,17.877,17.733,17.592,17.456,17.325,17.198,
-17.077,16.959,16.842,16.724,16.603,16.477,16.342,16.197,16.042,15.874,15.695,15.506,15.308,15.104,14.897,14.690,
-14.486,14.289,14.100,13.923,13.759,13.607,13.469,13.343,13.227,13.120,13.017,12.918,12.818,12.715,12.608,12.494,
-12.372,12.242,12.104,11.959,11.807,11.651,11.492,11.331,11.170,11.011,10.855,10.701,10.551,10.404,10.259,10.117,
-9.976,9.835,9.694,9.551,9.407,9.260,9.111,8.961,8.808,8.655,8.502,8.350,8.199,8.050,7.904,7.761,
-7.622,7.486,7.355,7.228,7.105,6.987,6.872,6.762,6.656,6.554,6.456,6.361,6.270,6.182,6.097,6.013,
-5.930,5.848,5.765,5.680,5.594,5.505,5.414,5.320,5.224,5.127,5.029,4.931,4.836,4.743,4.654,4.569,
-4.488,4.412,4.339,4.269,4.199,4.128,4.053,3.972,3.884,3.786,3.677,3.556,3.424,3.281,3.128,2.969,
-2.804,2.638,2.473,2.312,2.158,2.013,1.879,1.755,1.642,1.540,1.445,1.357,1.272,1.188,1.102,1.011,
-.915,.812,.700,.582,.458,.329,.199,.069,-.057,-.178,-.289,-.391,-.481,-.559,-.625,-.680,
--.725,-.761,-.790,-.815,-.837,-.858,-.880,-.902,-.925,-.951,-.977,-1.004,-1.031,-1.058,-1.083,-1.107,
--1.129,-1.150,-1.171,-1.191,-1.213,-1.238,-1.266,-1.299,-1.337,-1.381,-1.431,-1.487,-1.548,-1.612,-1.679,-1.748,
--1.816,-1.884,-1.949,-2.012,-2.073,-2.131,-2.187,-2.242,-2.298,-2.354,-2.412,-2.473,-2.537,-2.604,-2.674,-2.746,
--2.818,-2.890,-2.959,-3.023,-3.081,-3.131,-3.172,-3.202,-3.222,-3.231,-3.230,-3.221,-3.204,-3.182,-3.156,-3.130,
--3.104,-3.080,-3.060,-3.046,-3.038,-3.036,-3.041,-3.053,-3.071,-3.095,-3.124,-3.158,-3.196,-3.238,-3.283,-3.331,
--3.382,-3.434,-3.489,-3.545,-3.603,-3.662,-3.723,-3.785,-3.848,-3.913,-3.979,-4.046,-4.115,-4.187,-4.260,-4.336,
--4.414,-4.492,-4.571,-4.649,-4.722,-4.790,-4.847,-4.892,-4.920,-4.928,-4.911,-4.866,-4.792,-4.686,-4.548,-4.379,
--4.182,-3.958,-3.715,-3.456,-3.188,-2.920,-2.656,-2.406,-2.173,-1.964,-1.783,-1.631,-1.510,-1.418,-1.354,-1.313,
--1.291,-1.283,-1.282,-1.284,-1.282,-1.274,-1.254,-1.221,-1.175,-1.114,-1.042,-.962,-.875,-.788,-.704,-.629,
--.566,-.519,-.491,-.485,-.501,-.538,-.597,-.675,-.769,-.875,-.989,-1.108,-1.226,-1.339,-1.443,-1.536,
--1.613,-1.674,-1.718,-1.743,-1.752,-1.747,-1.729,-1.704,-1.675,-1.646,-1.622,-1.609,-1.610,-1.629,-1.669,-1.731,
--1.815,-1.922,-2.048,-2.191,-2.346,-2.507,-2.669,-2.826,-2.972,-3.101,-3.208,-3.290,-3.345,-3.371,-3.369,-3.339,
--3.286,-3.211,-3.120,-3.017,-2.907,-2.794,-2.681,-2.572,-2.470,-2.375,-2.289,-2.212,-2.144,-2.084,-2.032,-1.987,
--1.950,-1.920,-1.897,-1.884,-1.879,-1.884,-1.900,-1.926,-1.961,-2.004,-2.053,-2.103,-2.151,-2.192,-2.220,-2.231,
--2.219,-2.179,-2.109,-2.007,-1.871,-1.703,-1.505,-1.282,-1.038,-.781,-.516,-.251,.007,.253,.481,.689,
-.874,1.035,1.174,1.293,1.395,1.484,1.564,1.639,1.714,1.792,1.875,1.965,2.061,2.164,2.271,2.380,
-2.488,2.592,2.688,2.772,2.842,2.896,2.930,2.945,2.939,2.913,2.868,2.805,2.726,2.635,2.533,2.426,
-2.315,2.205,2.099,2.000,1.913,1.840,1.782,1.742,1.722,1.720,1.736,1.769,1.816,1.875,1.942,2.012,
-2.083,2.149,2.209,2.260,2.299,2.328,2.345,2.354,2.357,2.358,2.361,2.370,2.389,2.422,2.471,2.537,
-2.621,2.720,2.832,2.952,3.074,3.192,3.300,3.390,3.458,3.499,3.509,3.488,3.436,3.355,3.251,3.128,
-2.993,2.855,2.721,2.598,2.493,2.413,2.359,2.336,2.342,2.377,2.438,2.520,2.619,2.727,2.839,2.948,
-3.051,3.141,3.217,3.275,3.314,3.336,3.340,3.329,3.306,3.273,3.233,3.190,3.144,3.099,3.056,3.015,
-2.979,2.946,2.917,2.892,2.872,2.855,2.843,2.836,2.834,2.839,2.852,2.872,2.900,2.937,2.983,3.035,
-3.093,3.155,3.218,3.279,3.334,3.382,3.417,3.439,3.444,3.432,3.402,3.355,3.292,3.216,3.130,3.039,
-2.946,2.856,2.773,2.700,2.639,2.594,2.564,2.548,2.544,2.550,2.561,2.573,2.581,2.582,2.569,2.541,
-2.496,2.432,2.350,2.252,2.142,2.026,1.908,1.795,1.694,1.610,1.551,1.519,1.519,1.551,1.616,1.712,
-1.834,1.977,2.137,2.304,2.473,2.636,2.786,2.918,3.026,3.109,3.163,3.189,3.188,3.162,3.116,3.052,
-2.977,2.894,2.809,2.726,2.649,2.580,2.523,2.477,2.444,2.423,2.414,2.415,2.423,2.438,2.455,2.475,
-2.494,2.510,2.523,2.530,2.532,2.528,2.519,2.504,2.484,2.462,2.438,2.414,2.392,2.374,2.363,2.359,
-2.366,2.384,2.415,2.460,2.518,2.590,2.674,2.771,2.877,2.991,3.111,3.233,3.355,3.474,3.588,3.693,
-3.788,3.871,3.939,3.992,4.029,4.049,4.052,4.039,4.011,3.967,3.910,3.841,3.761,3.671,3.573,3.468,
-3.357,3.241,3.121,2.997,2.867,2.733,2.593,2.447,2.292,2.129,1.956,1.772,1.579,1.376,1.165,.949,
-.730,.513,.301,.099,-.088,-.254,-.397,-.513,-.601,-.658,-.688,-.691,-.673,-.640,-.598,-.555,
--.518,-.497,-.497,-.526,-.587,-.683,-.815,-.979,-1.174,-1.392,-1.626,-1.868,-2.108,-2.338,-2.548,-2.732,
--2.884,-2.999,-3.077,-3.117,-3.123,-3.100,-3.052,-2.988,-2.915,-2.841,-2.774,-2.721,-2.686,-2.674,-2.687,-2.726,
--2.788,-2.873,-2.977,-3.095,-3.222,-3.355,-3.488,-3.619,-3.743,-3.858,-3.964,-4.059,-4.145,-4.221,-4.290,-4.353,
--4.412,-4.468,-4.522,-4.575,-4.627,-4.679,-4.729,-4.777,-4.823,-4.864,-4.902,-4.934,-4.962,-4.985,-5.004,-5.019,
--5.033,-5.047,-5.061,-5.079,-5.101,-5.128,-5.162,-5.202,-5.249,-5.301,-5.358,-5.418,-5.480,-5.540,-5.598,-5.651,
--5.697,-5.734,-5.762,-5.779,-5.785,-5.781,-5.766,-5.741,-5.709,-5.669,-5.623,-5.572,-5.518,-5.460,-5.401,-5.339,
--5.276,-5.210,-5.141,-5.070,-4.995,-4.916,-4.833,-4.746,-4.657,-4.565,-4.471,-4.378,-4.287,-4.200,-4.117,-4.041,
--3.973,-3.912,-3.859,-3.813,-3.773,-3.737,-3.703,-3.670,-3.635,-3.595,-3.550,-3.498,-3.438,-3.370,-3.297,-3.219,
--3.138,-3.058,-2.982,-2.912,-2.852,-2.803,-2.768,-2.746,-2.738,-2.742,-2.756,-2.778,-2.802,-2.826,-2.845,-2.855,
--2.854,-2.838,-2.807,-2.759,-2.697,-2.620,-2.533,-2.440,-2.343,-2.248,-2.159,-2.080,-2.014,-1.964,-1.930,-1.914,
--1.915,-1.930,-1.959,-1.998,-2.044,-2.094,-2.145,-2.195,-2.243,-2.288,-2.329,-2.367,-2.403,-2.440,-2.478,-2.521,
--2.570,-2.626,-2.690,-2.762,-2.842,-2.927,-3.017,-3.109,-3.198,-3.283,-3.360,-3.425,-3.478,-3.515,-3.536,-3.540,
--3.528,-3.501,-3.460,-3.409,-3.349,-3.284,-3.215,-3.147,-3.080,-3.018,-2.960,-2.910,-2.867,-2.831,-2.804,-2.784,
--2.772,-2.767,-2.769,-2.777,-2.792,-2.811,-2.835,-2.860,-2.887,-2.913,-2.934,-2.949,-2.954,-2.946,-2.921,-2.877,
--2.811,-2.722,-2.608,-2.471,-2.312,-2.134,-1.940,-1.737,-1.530,-1.325,-1.128,-.945,-.782,-.643,-.530,-.444,
--.385,-.350,-.336,-.337,-.348,-.362,-.373,-.375,-.363,-.333,-.284,-.216,-.130,-.029,.082,.198,
-.313,.421,.517,.598,.661,.706,.732,.745,.749,.751,.758,.778,.819,.889,.994,1.139,
-1.326,1.557,1.830,2.140,2.484,2.854,3.243,3.643,4.047,4.447,4.838,5.215,5.575,5.919,6.245,6.556,
-6.856,7.148,7.435,7.722,8.013,8.308,8.609,8.915,9.225,9.534,9.838,10.132,10.408,10.661,10.885,11.072,
-11.220,11.323,11.381,11.392,11.357,11.279,11.163,11.012,10.834,10.635,10.422,10.203,9.986,9.777,9.584,9.412,
-9.269,9.158,9.083,9.050,9.060,9.115,9.216,9.365,9.560,9.801,10.086,10.411,10.774,11.170,11.595,12.044,
-12.510,12.989,13.473,13.958,14.438,14.909,15.364,15.802,16.219,16.612,16.983,17.329,17.652,17.954,18.237,18.503,
-18.757,19.000,19.237,19.471,19.705,19.942,20.184,20.433,20.689,20.954,21.226,21.506,21.791,22.081,22.372,22.662,
-22.950,23.232,23.507,23.773,24.028,24.271,24.503,24.722,24.930,25.128,25.316,25.496,25.670,25.839,26.004,26.168,
-26.330,26.490,26.650,26.808,26.964,27.117,27.265,27.407,27.543,27.671,27.791,27.903,28.007,28.104,28.195,28.280,
-28.363,28.445,28.527,28.611,28.699,28.790,28.887,28.988,29.093,29.202,29.313,29.424,29.535,29.644,29.749,29.849,
-29.943,30.032,30.115,30.192,30.265,30.335,30.403,30.469,30.537,30.605,30.676,30.750,30.828,30.909,30.994,31.081,
-31.171,31.264,31.358,31.454,31.551,31.650,31.751,31.854,31.961,32.071,32.184,32.303,32.425,32.552,32.682,32.815,
-32.948,33.082,33.212,33.339,33.459,33.572,33.676,33.770,33.854,33.928,33.995,34.054,34.109,34.162,34.215,34.272,
-34.336,34.408,34.491,34.587,34.696,34.818,34.954,35.100,35.257,35.421,35.591,35.764,35.938,36.110,36.278,36.442,
-36.600,36.753,36.899,37.039,37.173,37.302,37.426,37.545,37.659,37.767,37.868,37.960,38.041,38.110,38.163,38.198,
-38.213,38.206,38.175,38.120,38.039,37.934,37.804,37.652,37.479,37.288,37.082,36.862,36.632,36.393,36.148,35.898,
-35.644,35.387,35.126,34.861,34.592,34.318,34.037,33.750,33.455,33.152,32.841,32.523,32.198,31.869,31.538,31.206,
-30.878,30.557,30.246,29.950,29.674,29.422,29.198,29.005,28.849,28.730,28.652,28.616,28.620,28.664,28.746,28.860,
-29.002,29.165,29.342,29.525,29.707,29.879,30.034,30.167,30.273,30.349,30.396,30.413,30.407,30.382,30.346,30.308,
-30.278,30.265,30.280,30.329,30.420,30.557,30.741,30.971,31.243,31.550,31.885,32.235,32.591,32.940,33.272,33.576,
-33.846,34.075,34.263,34.410,34.521,34.601,34.661,34.710,34.762,34.827,34.917,35.040,35.204,35.413,35.668,35.966,
-36.303,36.668,37.053,37.443,37.826,38.187,38.514,38.796,39.023,39.189,39.291,39.327,39.300,39.217,39.085,38.914,
-38.715,38.499,38.279,38.066,37.869,37.696,37.554,37.447,37.377,37.344,37.348,37.385,37.451,37.543,37.655,37.784,
-38.495,38.522,38.552,38.586,38.629,38.681,38.746,38.826,38.921,39.031,39.156,39.293,39.437,39.584,39.727,39.862,
-39.981,40.078,40.149,40.190,40.197,40.170,40.110,40.021,39.905,39.771,39.623,39.471,39.322,39.183,39.061,38.962,
-38.887,38.840,38.818,38.819,38.836,38.862,38.889,38.905,38.901,38.866,38.791,38.668,38.492,38.258,37.967,37.622,
-37.226,36.789,36.321,35.834,35.339,34.851,34.381,33.940,33.539,33.182,32.874,32.616,32.406,32.239,32.108,32.003,
-31.917,31.838,31.757,31.666,31.558,31.430,31.279,31.107,30.915,30.709,30.496,30.282,30.074,29.880,29.706,29.554,
-29.428,29.327,29.248,29.187,29.137,29.091,29.041,28.977,28.892,28.779,28.634,28.452,28.234,27.981,27.697,27.385,
-27.053,26.709,26.358,26.010,25.669,25.342,25.031,24.739,24.466,24.210,23.970,23.741,23.520,23.302,23.084,22.863,
-22.636,22.402,22.161,21.914,21.664,21.412,21.161,20.916,20.679,20.452,20.239,20.038,19.852,19.678,19.517,19.365,
-19.220,19.080,18.942,18.803,18.663,18.520,18.372,18.221,18.068,17.912,17.755,17.600,17.447,17.297,17.152,17.011,
-16.874,16.740,16.608,16.475,16.341,16.202,16.057,15.905,15.745,15.575,15.397,15.210,15.017,14.820,14.621,14.422,
-14.226,14.037,13.855,13.684,13.523,13.374,13.236,13.109,12.990,12.877,12.769,12.663,12.556,12.446,12.332,12.211,
-12.083,11.949,11.807,11.659,11.507,11.351,11.194,11.036,10.881,10.728,10.579,10.435,10.294,10.157,10.023,9.890,
-9.759,9.627,9.493,9.356,9.216,9.073,8.926,8.777,8.625,8.473,8.321,8.171,8.024,7.881,7.743,7.611,
-7.485,7.365,7.250,7.141,7.036,6.935,6.836,6.740,6.645,6.551,6.458,6.363,6.269,6.173,6.076,5.977,
-5.876,5.772,5.665,5.553,5.438,5.317,5.191,5.061,4.925,4.786,4.644,4.500,4.358,4.217,4.081,3.951,
-3.830,3.718,3.616,3.525,3.444,3.373,3.309,3.250,3.195,3.139,3.081,3.018,2.947,2.866,2.775,2.673,
-2.559,2.436,2.303,2.164,2.020,1.873,1.725,1.579,1.435,1.296,1.161,1.031,.905,.783,.665,.548,
-.432,.316,.200,.083,-.034,-.151,-.267,-.381,-.493,-.601,-.704,-.802,-.893,-.979,-1.059,-1.133,
--1.201,-1.266,-1.326,-1.382,-1.436,-1.486,-1.534,-1.577,-1.616,-1.651,-1.680,-1.703,-1.721,-1.732,-1.738,-1.739,
--1.738,-1.737,-1.737,-1.742,-1.753,-1.773,-1.804,-1.848,-1.904,-1.973,-2.054,-2.145,-2.244,-2.348,-2.454,-2.559,
--2.661,-2.756,-2.843,-2.921,-2.990,-3.050,-3.102,-3.149,-3.193,-3.236,-3.281,-3.329,-3.383,-3.444,-3.511,-3.585,
--3.663,-3.744,-3.826,-3.905,-3.979,-4.046,-4.103,-4.149,-4.183,-4.205,-4.216,-4.217,-4.209,-4.197,-4.181,-4.164,
--4.148,-4.135,-4.127,-4.123,-4.124,-4.129,-4.137,-4.147,-4.157,-4.166,-4.173,-4.178,-4.180,-4.178,-4.175,-4.170,
--4.167,-4.165,-4.167,-4.174,-4.189,-4.210,-4.240,-4.278,-4.323,-4.375,-4.432,-4.494,-4.558,-4.624,-4.690,-4.756,
--4.821,-4.885,-4.946,-5.006,-5.063,-5.117,-5.168,-5.213,-5.252,-5.281,-5.299,-5.303,-5.290,-5.256,-5.200,-5.119,
--5.014,-4.883,-4.728,-4.551,-4.355,-4.144,-3.924,-3.699,-3.474,-3.255,-3.047,-2.853,-2.676,-2.518,-2.380,-2.260,
--2.158,-2.070,-1.994,-1.928,-1.866,-1.808,-1.750,-1.691,-1.630,-1.568,-1.506,-1.445,-1.387,-1.336,-1.292,-1.260,
--1.239,-1.233,-1.240,-1.262,-1.296,-1.341,-1.395,-1.455,-1.518,-1.580,-1.640,-1.694,-1.740,-1.776,-1.802,-1.815,
--1.817,-1.808,-1.789,-1.761,-1.726,-1.687,-1.645,-1.604,-1.566,-1.535,-1.512,-1.502,-1.506,-1.526,-1.565,-1.622,
--1.699,-1.794,-1.906,-2.031,-2.166,-2.308,-2.450,-2.587,-2.715,-2.829,-2.923,-2.994,-3.039,-3.058,-3.050,-3.017,
--2.960,-2.885,-2.795,-2.695,-2.590,-2.484,-2.383,-2.288,-2.203,-2.130,-2.068,-2.017,-1.977,-1.945,-1.920,-1.900,
--1.884,-1.871,-1.861,-1.853,-1.848,-1.847,-1.850,-1.859,-1.873,-1.890,-1.911,-1.931,-1.947,-1.955,-1.949,-1.924,
--1.874,-1.796,-1.686,-1.541,-1.361,-1.148,-.906,-.638,-.353,-.058,.238,.527,.799,1.049,1.270,1.458,
-1.612,1.733,1.823,1.886,1.928,1.955,1.975,1.995,2.019,2.054,2.102,2.164,2.241,2.330,2.429,2.532,
-2.635,2.731,2.817,2.886,2.935,2.962,2.964,2.942,2.897,2.830,2.745,2.644,2.534,2.416,2.297,2.178,
-2.065,1.960,1.866,1.784,1.717,1.666,1.632,1.614,1.612,1.626,1.654,1.695,1.746,1.804,1.866,1.929,
-1.989,2.042,2.086,2.118,2.135,2.139,2.128,2.105,2.073,2.036,1.998,1.966,1.943,1.936,1.948,1.982,
-2.041,2.123,2.228,2.351,2.487,2.630,2.772,2.906,3.023,3.119,3.186,3.222,3.226,3.197,3.138,3.054,
-2.952,2.838,2.721,2.608,2.508,2.428,2.371,2.342,2.342,2.371,2.426,2.504,2.599,2.706,2.818,2.930,
-3.036,3.130,3.211,3.276,3.325,3.357,3.375,3.382,3.380,3.373,3.363,3.354,3.348,3.346,3.349,3.356,
-3.367,3.379,3.390,3.400,3.404,3.403,3.395,3.379,3.355,3.326,3.293,3.257,3.223,3.193,3.171,3.158,
-3.157,3.170,3.197,3.238,3.291,3.354,3.423,3.496,3.568,3.634,3.691,3.734,3.762,3.771,3.760,3.731,
-3.684,3.622,3.547,3.464,3.377,3.290,3.207,3.131,3.065,3.009,2.964,2.929,2.902,2.879,2.857,2.832,
-2.801,2.759,2.705,2.637,2.556,2.462,2.358,2.250,2.141,2.039,1.949,1.877,1.829,1.809,1.821,1.865,
-1.942,2.048,2.180,2.333,2.499,2.671,2.841,3.001,3.145,3.265,3.358,3.419,3.448,3.445,3.412,3.351,
-3.267,3.166,3.053,2.934,2.814,2.699,2.593,2.500,2.422,2.360,2.315,2.286,2.272,2.271,2.280,2.296,
-2.316,2.337,2.356,2.370,2.379,2.380,2.372,2.356,2.333,2.303,2.269,2.233,2.198,2.168,2.144,2.131,
-2.131,2.147,2.179,2.229,2.297,2.382,2.483,2.597,2.721,2.853,2.988,3.123,3.255,3.379,3.494,3.597,
-3.686,3.760,3.818,3.860,3.887,3.899,3.896,3.881,3.852,3.812,3.761,3.699,3.627,3.546,3.456,3.358,
-3.252,3.140,3.022,2.899,2.772,2.642,2.509,2.375,2.239,2.102,1.962,1.821,1.678,1.532,1.383,1.231,
-1.078,.925,.772,.623,.480,.346,.225,.118,.028,-.044,-.097,-.132,-.151,-.158,-.157,-.154,
--.156,-.168,-.197,-.249,-.328,-.436,-.576,-.746,-.944,-1.164,-1.400,-1.645,-1.889,-2.125,-2.344,-2.538,
--2.701,-2.829,-2.921,-2.975,-2.994,-2.983,-2.947,-2.892,-2.828,-2.761,-2.699,-2.649,-2.616,-2.606,-2.619,-2.657,
--2.720,-2.804,-2.908,-3.026,-3.154,-3.289,-3.426,-3.561,-3.692,-3.816,-3.933,-4.042,-4.143,-4.237,-4.326,-4.410,
--4.490,-4.568,-4.644,-4.718,-4.790,-4.860,-4.927,-4.990,-5.048,-5.101,-5.148,-5.189,-5.225,-5.255,-5.281,-5.305,
--5.327,-5.349,-5.372,-5.398,-5.428,-5.462,-5.501,-5.544,-5.592,-5.643,-5.696,-5.749,-5.802,-5.853,-5.900,-5.941,
--5.976,-6.003,-6.022,-6.032,-6.034,-6.027,-6.012,-5.991,-5.963,-5.930,-5.893,-5.853,-5.812,-5.768,-5.724,-5.679,
--5.632,-5.584,-5.534,-5.480,-5.421,-5.356,-5.283,-5.203,-5.114,-5.015,-4.908,-4.791,-4.666,-4.535,-4.399,-4.259,
--4.119,-3.979,-3.842,-3.710,-3.583,-3.463,-3.351,-3.246,-3.149,-3.060,-2.977,-2.902,-2.833,-2.771,-2.717,-2.671,
--2.634,-2.607,-2.593,-2.592,-2.605,-2.633,-2.677,-2.734,-2.805,-2.886,-2.974,-3.066,-3.157,-3.243,-3.318,-3.379,
--3.423,-3.446,-3.447,-3.425,-3.383,-3.321,-3.244,-3.155,-3.059,-2.962,-2.869,-2.784,-2.712,-2.654,-2.614,-2.591,
--2.586,-2.597,-2.620,-2.654,-2.695,-2.739,-2.784,-2.826,-2.865,-2.899,-2.929,-2.956,-2.982,-3.009,-3.042,-3.081,
--3.131,-3.194,-3.270,-3.360,-3.464,-3.579,-3.703,-3.831,-3.961,-4.086,-4.203,-4.307,-4.393,-4.460,-4.505,-4.527,
--4.527,-4.506,-4.467,-4.414,-4.349,-4.278,-4.203,-4.130,-4.062,-4.000,-3.946,-3.902,-3.868,-3.843,-3.825,-3.814,
--3.808,-3.805,-3.805,-3.806,-3.808,-3.812,-3.817,-3.823,-3.832,-3.843,-3.856,-3.871,-3.886,-3.898,-3.905,-3.902,
--3.885,-3.851,-3.794,-3.710,-3.598,-3.454,-3.279,-3.075,-2.845,-2.592,-2.325,-2.051,-1.777,-1.513,-1.267,-1.047,
--.859,-.709,-.599,-.531,-.503,-.512,-.553,-.620,-.706,-.804,-.906,-1.005,-1.096,-1.173,-1.235,-1.278,
--1.302,-1.308,-1.297,-1.271,-1.231,-1.180,-1.117,-1.042,-.955,-.854,-.735,-.596,-.432,-.241,-.020,.234,
-.521,.841,1.191,1.569,1.969,2.385,2.810,3.239,3.664,4.078,4.478,4.859,5.219,5.557,5.874,6.172,
-6.455,6.727,6.991,7.251,7.512,7.774,8.040,8.310,8.581,8.850,9.114,9.367,9.604,9.818,10.005,10.160,
-10.279,10.359,10.400,10.400,10.363,10.290,10.187,10.059,9.910,9.748,9.579,9.410,9.246,9.093,8.956,8.840,
-8.750,8.688,8.658,8.663,8.705,8.785,8.905,9.064,9.264,9.504,9.782,10.096,10.444,10.823,11.229,11.657,
-12.102,12.558,13.022,13.487,13.949,14.402,14.845,15.273,15.684,16.077,16.452,16.807,17.146,17.468,17.775,18.070,
-18.355,18.632,18.902,19.169,19.433,19.697,19.960,20.225,20.492,20.761,21.032,21.306,21.582,21.860,22.138,22.417,
-22.695,22.971,23.245,23.514,23.777,24.034,24.284,24.525,24.757,24.980,25.194,25.400,25.597,25.788,25.973,26.153,
-26.330,26.505,26.679,26.853,27.027,27.201,27.374,27.547,27.718,27.886,28.050,28.209,28.363,28.509,28.648,28.780,
-28.904,29.021,29.132,29.237,29.337,29.432,29.525,29.614,29.701,29.785,29.866,29.945,30.020,30.092,30.159,30.222,
-30.279,30.333,30.382,30.427,30.470,30.511,30.552,30.595,30.640,30.689,30.744,30.804,30.872,30.946,31.028,31.116,
-31.209,31.308,31.411,31.518,31.627,31.737,31.849,31.960,32.072,32.184,32.295,32.406,32.517,32.628,32.738,32.848,
-32.957,33.065,33.171,33.275,33.376,33.474,33.568,33.659,33.746,33.830,33.912,33.993,34.074,34.155,34.240,34.329,
-34.423,34.523,34.630,34.746,34.868,34.998,35.135,35.276,35.422,35.570,35.720,35.869,36.017,36.163,36.306,36.447,
-36.587,36.726,36.865,37.005,37.148,37.295,37.446,37.601,37.761,37.924,38.088,38.250,38.408,38.558,38.695,38.816,
-38.917,38.994,39.044,39.066,39.058,39.019,38.951,38.854,38.732,38.586,38.421,38.239,38.043,37.837,37.622,37.401,
-37.174,36.941,36.701,36.454,36.197,35.929,35.648,35.352,35.040,34.711,34.366,34.005,33.630,33.245,32.853,32.457,
-32.065,31.680,31.308,30.955,30.627,30.328,30.064,29.838,29.653,29.511,29.414,29.361,29.351,29.382,29.450,29.550,
-29.676,29.822,29.980,30.142,30.301,30.449,30.579,30.686,30.765,30.814,30.832,30.820,30.784,30.727,30.660,30.590,
-30.528,30.485,30.471,30.496,30.568,30.693,30.873,31.110,31.400,31.739,32.117,32.524,32.949,33.378,33.798,34.198,
-34.568,34.898,35.183,35.423,35.616,35.768,35.886,35.978,36.056,36.129,36.210,36.309,36.433,36.588,36.778,37.003,
-37.259,37.541,37.841,38.148,38.452,38.741,39.005,39.234,39.420,39.558,39.646,39.684,39.673,39.620,39.531,39.415,
-39.279,39.135,38.990,38.852,38.726,38.619,38.532,38.467,38.423,38.398,38.388,38.392,38.405,38.423,38.446,38.470,
-38.495,39.549,39.478,39.397,39.312,39.231,39.162,39.110,39.082,39.081,39.111,39.170,39.256,39.367,39.495,39.634,
-39.775,39.912,40.035,40.138,40.215,40.262,40.276,40.258,40.208,40.130,40.029,39.912,39.785,39.656,39.532,39.419,
-39.322,39.245,39.190,39.156,39.142,39.142,39.152,39.164,39.170,39.160,39.127,39.062,38.957,38.808,38.610,38.363,
-38.067,37.724,37.342,36.926,36.485,36.030,35.570,35.114,34.674,34.255,33.864,33.507,33.183,32.893,32.636,32.405,
-32.198,32.006,31.823,31.644,31.464,31.277,31.082,30.877,30.666,30.449,30.233,30.021,29.821,29.636,29.474,29.336,
-29.226,29.143,29.086,29.051,29.032,29.021,29.011,28.994,28.960,28.902,28.814,28.691,28.530,28.331,28.096,27.827,
-27.531,27.214,26.882,26.543,26.203,25.869,25.544,25.233,24.938,24.658,24.392,24.139,23.896,23.658,23.424,23.189,
-22.952,22.710,22.463,22.211,21.955,21.696,21.438,21.181,20.929,20.683,20.446,20.219,20.001,19.794,19.596,19.406,
-19.224,19.046,18.873,18.701,18.532,18.363,18.195,18.027,17.861,17.697,17.536,17.378,17.225,17.076,16.932,16.792,
-16.655,16.521,16.387,16.252,16.115,15.974,15.827,15.673,15.511,15.341,15.164,14.980,14.790,14.596,14.399,14.203,
-14.008,13.817,13.632,13.454,13.284,13.123,12.972,12.829,12.694,12.566,12.443,12.325,12.209,12.094,11.978,11.860,
-11.739,11.614,11.485,11.352,11.215,11.075,10.933,10.790,10.647,10.504,10.362,10.222,10.084,9.947,9.812,9.677,
-9.543,9.408,9.271,9.133,8.992,8.848,8.702,8.554,8.405,8.255,8.107,7.962,7.820,7.684,7.554,7.431,
-7.314,7.205,7.103,7.006,6.914,6.825,6.738,6.651,6.563,6.473,6.380,6.283,6.181,6.074,5.962,5.844,
-5.722,5.595,5.463,5.327,5.187,5.042,4.893,4.741,4.586,4.429,4.269,4.110,3.951,3.795,3.644,3.499,
-3.362,3.235,3.120,3.016,2.926,2.848,2.782,2.727,2.680,2.640,2.603,2.567,2.529,2.486,2.436,2.376,
-2.306,2.223,2.128,2.021,1.902,1.773,1.635,1.490,1.339,1.185,1.028,.871,.714,.558,.405,.255,
-.109,-.034,-.171,-.303,-.429,-.549,-.663,-.769,-.868,-.959,-1.044,-1.122,-1.194,-1.260,-1.323,-1.383,
--1.441,-1.498,-1.555,-1.613,-1.670,-1.727,-1.784,-1.838,-1.889,-1.935,-1.975,-2.008,-2.033,-2.050,-2.059,-2.062,
--2.060,-2.058,-2.056,-2.060,-2.072,-2.096,-2.135,-2.191,-2.265,-2.357,-2.468,-2.593,-2.732,-2.880,-3.032,-3.185,
--3.334,-3.474,-3.604,-3.719,-3.819,-3.904,-3.974,-4.030,-4.077,-4.116,-4.152,-4.186,-4.223,-4.265,-4.312,-4.366,
--4.427,-4.492,-4.560,-4.628,-4.694,-4.755,-4.809,-4.853,-4.886,-4.908,-4.920,-4.922,-4.917,-4.906,-4.892,-4.879,
--4.868,-4.860,-4.857,-4.859,-4.866,-4.876,-4.888,-4.898,-4.906,-4.908,-4.903,-4.890,-4.869,-4.840,-4.804,-4.764,
--4.722,-4.683,-4.650,-4.625,-4.613,-4.616,-4.634,-4.669,-4.719,-4.784,-4.861,-4.946,-5.036,-5.129,-5.219,-5.304,
--5.381,-5.449,-5.508,-5.555,-5.593,-5.622,-5.643,-5.657,-5.666,-5.670,-5.670,-5.664,-5.651,-5.630,-5.600,-5.556,
--5.498,-5.423,-5.330,-5.218,-5.088,-4.941,-4.779,-4.604,-4.420,-4.231,-4.041,-3.854,-3.672,-3.498,-3.335,-3.184,
--3.044,-2.915,-2.796,-2.686,-2.583,-2.487,-2.395,-2.307,-2.224,-2.146,-2.074,-2.009,-1.954,-1.910,-1.878,-1.860,
--1.856,-1.866,-1.887,-1.918,-1.957,-2.000,-2.043,-2.083,-2.116,-2.141,-2.153,-2.154,-2.141,-2.116,-2.080,-2.036,
--1.985,-1.931,-1.876,-1.823,-1.774,-1.732,-1.696,-1.668,-1.648,-1.635,-1.630,-1.631,-1.638,-1.651,-1.668,-1.691,
--1.719,-1.752,-1.790,-1.833,-1.879,-1.928,-1.978,-2.027,-2.073,-2.111,-2.141,-2.158,-2.162,-2.149,-2.121,-2.077,
--2.018,-1.947,-1.868,-1.785,-1.701,-1.622,-1.552,-1.494,-1.451,-1.424,-1.415,-1.421,-1.442,-1.474,-1.515,-1.561,
--1.607,-1.652,-1.692,-1.725,-1.751,-1.769,-1.780,-1.784,-1.782,-1.774,-1.761,-1.742,-1.715,-1.677,-1.627,-1.559,
--1.470,-1.356,-1.214,-1.041,-.837,-.603,-.341,-.056,.244,.553,.861,1.160,1.439,1.690,1.907,2.085,
-2.221,2.314,2.368,2.386,2.374,2.340,2.292,2.238,2.186,2.142,2.110,2.095,2.096,2.113,2.142,2.181,
-2.224,2.266,2.302,2.328,2.339,2.334,2.313,2.275,2.222,2.158,2.086,2.010,1.934,1.861,1.794,1.736,
-1.687,1.649,1.620,1.600,1.589,1.584,1.586,1.593,1.604,1.619,1.638,1.662,1.690,1.723,1.759,1.798,
-1.838,1.877,1.913,1.943,1.965,1.976,1.974,1.959,1.931,1.890,1.840,1.784,1.726,1.671,1.625,1.591,
-1.575,1.579,1.606,1.654,1.723,1.809,1.908,2.014,2.121,2.223,2.314,2.389,2.443,2.476,2.487,2.476,
-2.448,2.406,2.357,2.305,2.258,2.220,2.197,2.192,2.207,2.243,2.300,2.373,2.461,2.558,2.660,2.763,
-2.861,2.950,3.029,3.096,3.149,3.191,3.221,3.243,3.259,3.272,3.285,3.301,3.322,3.348,3.381,3.420,
-3.464,3.510,3.557,3.602,3.643,3.676,3.700,3.713,3.714,3.703,3.680,3.648,3.608,3.562,3.515,3.469,
-3.428,3.395,3.373,3.364,3.371,3.392,3.429,3.479,3.540,3.609,3.681,3.753,3.819,3.875,3.916,3.940,
-3.945,3.928,3.891,3.834,3.761,3.674,3.580,3.481,3.384,3.292,3.209,3.138,3.080,3.035,3.002,2.979,
-2.961,2.945,2.926,2.900,2.864,2.816,2.754,2.678,2.592,2.498,2.402,2.309,2.225,2.156,2.108,2.086,
-2.092,2.129,2.195,2.288,2.405,2.539,2.684,2.832,2.976,3.109,3.223,3.314,3.378,3.412,3.416,3.390,
-3.339,3.265,3.173,3.068,2.957,2.845,2.736,2.634,2.544,2.466,2.403,2.355,2.320,2.297,2.284,2.279,
-2.277,2.277,2.275,2.269,2.257,2.237,2.209,2.172,2.128,2.077,2.022,1.967,1.913,1.866,1.828,1.803,
-1.794,1.804,1.835,1.888,1.962,2.056,2.168,2.295,2.433,2.578,2.725,2.869,3.006,3.133,3.246,3.343,
-3.424,3.489,3.537,3.571,3.593,3.604,3.607,3.604,3.595,3.583,3.566,3.546,3.521,3.491,3.453,3.407,
-3.352,3.287,3.212,3.127,3.034,2.933,2.826,2.714,2.599,2.482,2.364,2.246,2.128,2.008,1.887,1.764,
-1.637,1.506,1.370,1.231,1.088,.944,.800,.660,.525,.398,.282,.177,.085,.005,-.066,-.129,
--.189,-.250,-.317,-.395,-.487,-.597,-.727,-.877,-1.047,-1.232,-1.429,-1.632,-1.833,-2.027,-2.206,-2.364,
--2.497,-2.600,-2.672,-2.713,-2.727,-2.716,-2.687,-2.647,-2.602,-2.559,-2.526,-2.507,-2.507,-2.530,-2.575,-2.643,
--2.731,-2.837,-2.955,-3.083,-3.215,-3.347,-3.475,-3.598,-3.714,-3.821,-3.921,-4.014,-4.102,-4.187,-4.271,-4.354,
--4.439,-4.526,-4.614,-4.703,-4.792,-4.880,-4.964,-5.044,-5.117,-5.182,-5.241,-5.291,-5.335,-5.373,-5.407,-5.439,
--5.470,-5.503,-5.538,-5.577,-5.621,-5.669,-5.722,-5.777,-5.834,-5.891,-5.947,-6.000,-6.047,-6.089,-6.125,-6.152,
--6.173,-6.186,-6.192,-6.192,-6.187,-6.178,-6.165,-6.150,-6.134,-6.118,-6.101,-6.085,-6.069,-6.054,-6.039,-6.023,
--6.006,-5.987,-5.964,-5.934,-5.898,-5.851,-5.793,-5.721,-5.633,-5.528,-5.405,-5.263,-5.103,-4.925,-4.732,-4.526,
--4.310,-4.088,-3.863,-3.640,-3.424,-3.217,-3.024,-2.848,-2.691,-2.554,-2.439,-2.346,-2.276,-2.228,-2.201,-2.195,
--2.209,-2.241,-2.292,-2.360,-2.444,-2.543,-2.655,-2.780,-2.914,-3.055,-3.199,-3.342,-3.481,-3.611,-3.729,-3.829,
--3.909,-3.967,-4.000,-4.009,-3.995,-3.960,-3.906,-3.839,-3.764,-3.685,-3.608,-3.538,-3.480,-3.436,-3.410,-3.401,
--3.410,-3.435,-3.473,-3.522,-3.578,-3.637,-3.695,-3.750,-3.800,-3.842,-3.878,-3.908,-3.934,-3.959,-3.986,-4.019,
--4.060,-4.113,-4.180,-4.262,-4.359,-4.469,-4.590,-4.719,-4.851,-4.982,-5.105,-5.217,-5.311,-5.386,-5.437,-5.463,
--5.465,-5.442,-5.399,-5.338,-5.264,-5.181,-5.095,-5.010,-4.931,-4.860,-4.800,-4.753,-4.718,-4.694,-4.679,-4.671,
--4.667,-4.664,-4.660,-4.652,-4.640,-4.624,-4.604,-4.582,-4.560,-4.541,-4.528,-4.522,-4.525,-4.538,-4.560,-4.587,
--4.617,-4.644,-4.662,-4.663,-4.641,-4.589,-4.502,-4.374,-4.205,-3.994,-3.744,-3.460,-3.150,-2.822,-2.489,-2.162,
--1.853,-1.572,-1.330,-1.134,-.991,-.902,-.867,-.884,-.947,-1.048,-1.179,-1.329,-1.489,-1.648,-1.797,-1.929,
--2.038,-2.119,-2.170,-2.189,-2.177,-2.136,-2.066,-1.969,-1.848,-1.703,-1.536,-1.345,-1.132,-.894,-.632,-.345,
--.031,.307,.668,1.051,1.450,1.862,2.282,2.703,3.120,3.527,3.919,4.294,4.648,4.981,5.293,5.585,
-5.862,6.126,6.382,6.633,6.884,7.137,7.393,7.653,7.916,8.177,8.434,8.682,8.914,9.125,9.309,9.461,
-9.577,9.655,9.693,9.692,9.654,9.583,9.482,9.358,9.216,9.063,8.906,8.750,8.602,8.465,8.346,8.246,
-8.169,8.117,8.092,8.096,8.130,8.196,8.293,8.423,8.586,8.783,9.013,9.276,9.569,9.892,10.241,10.613,
-11.004,11.410,11.827,12.250,12.675,13.098,13.515,13.925,14.325,14.713,15.091,15.457,15.814,16.161,16.500,16.833,
-17.161,17.485,17.806,18.123,18.437,18.748,19.055,19.358,19.656,19.948,20.236,20.518,20.795,21.068,21.338,21.604,
-21.869,22.132,22.395,22.656,22.917,23.175,23.432,23.685,23.934,24.177,24.414,24.643,24.865,25.080,25.287,25.489,
-25.686,25.880,26.072,26.264,26.458,26.655,26.855,27.058,27.265,27.473,27.683,27.892,28.098,28.300,28.494,28.680,
-28.856,29.021,29.174,29.315,29.444,29.561,29.669,29.767,29.857,29.940,30.017,30.089,30.156,30.219,30.278,30.334,
-30.386,30.434,30.479,30.519,30.557,30.592,30.625,30.657,30.689,30.722,30.758,30.798,30.843,30.895,30.953,31.020,
-31.096,31.180,31.273,31.374,31.482,31.598,31.719,31.845,31.974,32.105,32.237,32.369,32.499,32.626,32.749,32.869,
-32.983,33.093,33.197,33.296,33.391,33.481,33.569,33.654,33.739,33.823,33.909,33.997,34.090,34.187,34.290,34.400,
-34.517,34.642,34.773,34.912,35.058,35.209,35.364,35.524,35.685,35.848,36.010,36.172,36.332,36.489,36.645,36.799,
-36.952,37.106,37.260,37.417,37.578,37.745,37.918,38.097,38.283,38.475,38.671,38.870,39.067,39.260,39.444,39.615,
-39.769,39.901,40.007,40.085,40.133,40.148,40.132,40.084,40.007,39.903,39.776,39.629,39.466,39.290,39.104,38.909,
-38.707,38.497,38.279,38.050,37.809,37.550,37.272,36.971,36.645,36.291,35.910,35.502,35.070,34.617,34.149,33.672,
-33.194,32.723,32.268,31.837,31.438,31.079,30.767,30.505,30.297,30.146,30.050,30.008,30.017,30.071,30.165,30.290,
-30.438,30.602,30.772,30.938,31.095,31.232,31.346,31.430,31.483,31.502,31.488,31.446,31.379,31.295,31.202,31.110,
-31.030,30.972,30.947,30.964,31.031,31.154,31.336,31.578,31.877,32.227,32.621,33.048,33.497,33.954,34.408,34.844,
-35.253,35.626,35.957,36.241,36.480,36.675,36.833,36.961,37.069,37.166,37.264,37.370,37.494,37.640,37.810,38.006,
-38.225,38.460,38.705,38.951,39.187,39.405,39.594,39.749,39.863,39.934,39.961,39.949,39.900,39.824,39.728,39.622,
-39.516,39.419,39.337,39.278,39.244,39.237,39.255,39.295,39.351,39.417,39.485,39.548,39.600,39.634,39.647,39.636,
-39.603,39.549,40.617,40.518,40.400,40.270,40.139,40.015,39.907,39.822,39.765,39.740,39.746,39.782,39.845,39.930,
-40.029,40.135,40.240,40.338,40.421,40.486,40.526,40.542,40.532,40.497,40.440,40.366,40.278,40.181,40.082,39.984,
-39.892,39.808,39.735,39.675,39.625,39.585,39.552,39.522,39.490,39.452,39.402,39.334,39.244,39.128,38.981,38.802,
-38.588,38.341,38.059,37.747,37.407,37.043,36.661,36.266,35.865,35.462,35.062,34.672,34.293,33.930,33.583,33.253,
-32.939,32.640,32.354,32.079,31.813,31.552,31.296,31.044,30.797,30.555,30.320,30.095,29.883,29.688,29.513,29.360,
-29.231,29.126,29.044,28.983,28.940,28.908,28.881,28.854,28.819,28.770,28.701,28.606,28.483,28.329,28.145,27.933,
-27.694,27.434,27.157,26.868,26.574,26.279,25.986,25.700,25.423,25.155,24.896,24.645,24.401,24.160,23.921,23.680,
-23.437,23.189,22.936,22.677,22.413,22.146,21.876,21.605,21.335,21.068,20.805,20.547,20.295,20.049,19.809,19.575,
-19.346,19.123,18.904,18.690,18.482,18.278,18.081,17.890,17.707,17.532,17.364,17.205,17.055,16.911,16.774,16.642,
-16.514,16.387,16.259,16.129,15.995,15.856,15.710,15.558,15.398,15.231,15.058,14.879,14.695,14.508,14.318,14.127,
-13.936,13.745,13.557,13.371,13.189,13.010,12.836,12.667,12.504,12.346,12.194,12.047,11.906,11.771,11.640,11.513,
-11.389,11.267,11.146,11.025,10.903,10.779,10.652,10.521,10.388,10.250,10.110,9.966,9.821,9.673,9.525,9.376,
-9.227,9.079,8.932,8.785,8.639,8.494,8.350,8.206,8.064,7.922,7.783,7.645,7.510,7.378,7.250,7.127,
-7.008,6.895,6.786,6.681,6.580,6.482,6.385,6.289,6.192,6.094,5.991,5.885,5.774,5.657,5.535,5.408,
-5.275,5.139,4.998,4.855,4.710,4.564,4.417,4.271,4.125,3.981,3.840,3.700,3.565,3.432,3.305,3.182,
-3.066,2.956,2.853,2.757,2.670,2.591,2.520,2.457,2.400,2.350,2.304,2.262,2.221,2.180,2.138,2.092,
-2.042,1.985,1.921,1.849,1.768,1.678,1.578,1.468,1.348,1.219,1.081,.935,.781,.621,.455,.286,
-.113,-.060,-.231,-.400,-.563,-.719,-.866,-1.001,-1.125,-1.235,-1.331,-1.413,-1.482,-1.539,-1.585,-1.622,
--1.652,-1.677,-1.700,-1.721,-1.743,-1.766,-1.792,-1.820,-1.849,-1.880,-1.911,-1.940,-1.968,-1.993,-2.016,-2.035,
--2.052,-2.069,-2.087,-2.109,-2.138,-2.175,-2.224,-2.288,-2.367,-2.463,-2.576,-2.705,-2.848,-3.003,-3.166,-3.333,
--3.500,-3.664,-3.820,-3.966,-4.099,-4.218,-4.323,-4.414,-4.492,-4.560,-4.619,-4.673,-4.724,-4.774,-4.825,-4.878,
--4.934,-4.992,-5.050,-5.107,-5.162,-5.211,-5.254,-5.287,-5.311,-5.323,-5.326,-5.319,-5.305,-5.285,-5.262,-5.239,
--5.217,-5.200,-5.188,-5.181,-5.181,-5.185,-5.193,-5.202,-5.209,-5.213,-5.212,-5.203,-5.185,-5.160,-5.127,-5.089,
--5.049,-5.010,-4.976,-4.951,-4.938,-4.942,-4.963,-5.004,-5.063,-5.140,-5.233,-5.337,-5.449,-5.564,-5.677,-5.785,
--5.882,-5.966,-6.035,-6.089,-6.128,-6.152,-6.163,-6.164,-6.157,-6.145,-6.129,-6.110,-6.089,-6.066,-6.038,-6.004,
--5.961,-5.908,-5.842,-5.760,-5.662,-5.548,-5.417,-5.271,-5.114,-4.947,-4.774,-4.600,-4.428,-4.261,-4.101,-3.951,
--3.811,-3.681,-3.562,-3.451,-3.347,-3.249,-3.155,-3.065,-2.978,-2.894,-2.815,-2.741,-2.675,-2.619,-2.573,-2.539,
--2.518,-2.509,-2.510,-2.519,-2.533,-2.547,-2.557,-2.559,-2.550,-2.525,-2.484,-2.426,-2.351,-2.263,-2.164,-2.059,
--1.954,-1.853,-1.763,-1.686,-1.628,-1.588,-1.569,-1.569,-1.585,-1.613,-1.650,-1.690,-1.727,-1.758,-1.779,-1.787,
--1.780,-1.758,-1.722,-1.674,-1.615,-1.550,-1.481,-1.410,-1.340,-1.272,-1.207,-1.144,-1.083,-1.023,-.963,-.902,
--.840,-.777,-.713,-.651,-.594,-.544,-.504,-.479,-.470,-.480,-.510,-.560,-.628,-.712,-.808,-.912,
--1.018,-1.122,-1.219,-1.304,-1.374,-1.428,-1.463,-1.480,-1.481,-1.465,-1.435,-1.392,-1.338,-1.274,-1.198,-1.110,
--1.009,-.891,-.754,-.597,-.416,-.212,.015,.262,.527,.804,1.085,1.363,1.630,1.878,2.098,2.285,
-2.434,2.542,2.608,2.633,2.622,2.579,2.512,2.426,2.328,2.227,2.127,2.034,1.949,1.874,1.809,1.753,
-1.703,1.656,1.610,1.563,1.513,1.459,1.403,1.345,1.288,1.235,1.190,1.156,1.135,1.130,1.141,1.167,
-1.207,1.257,1.315,1.375,1.433,1.485,1.529,1.562,1.584,1.594,1.594,1.588,1.578,1.569,1.563,1.565,
-1.576,1.597,1.628,1.668,1.713,1.760,1.805,1.843,1.871,1.885,1.884,1.866,1.832,1.785,1.728,1.665,
-1.601,1.542,1.492,1.455,1.435,1.432,1.448,1.480,1.527,1.586,1.651,1.720,1.787,1.850,1.905,1.951,
-1.987,2.014,2.033,2.047,2.059,2.070,2.086,2.106,2.135,2.171,2.217,2.270,2.330,2.395,2.464,2.532,
-2.600,2.665,2.725,2.781,2.832,2.878,2.920,2.959,2.997,3.034,3.072,3.111,3.152,3.196,3.241,3.288,
-3.337,3.386,3.435,3.483,3.530,3.574,3.616,3.653,3.686,3.713,3.735,3.750,3.759,3.760,3.755,3.743,
-3.725,3.703,3.679,3.655,3.633,3.615,3.605,3.604,3.614,3.635,3.667,3.709,3.758,3.811,3.864,3.914,
-3.954,3.983,3.995,3.988,3.962,3.916,3.852,3.773,3.683,3.586,3.488,3.394,3.307,3.232,3.170,3.123,
-3.088,3.064,3.047,3.033,3.018,2.996,2.964,2.919,2.860,2.787,2.701,2.607,2.509,2.412,2.323,2.248,
-2.193,2.160,2.153,2.173,2.219,2.288,2.375,2.476,2.583,2.690,2.789,2.876,2.945,2.993,3.018,3.018,
-2.996,2.954,2.895,2.823,2.743,2.659,2.576,2.498,2.425,2.362,2.308,2.264,2.229,2.202,2.179,2.161,
-2.143,2.124,2.101,2.073,2.039,1.998,1.949,1.893,1.831,1.765,1.697,1.629,1.566,1.509,1.464,1.433,
-1.420,1.428,1.457,1.510,1.587,1.684,1.802,1.935,2.080,2.232,2.384,2.533,2.672,2.798,2.908,2.999,
-3.071,3.124,3.160,3.183,3.194,3.199,3.201,3.204,3.209,3.219,3.233,3.253,3.275,3.297,3.317,3.330,
-3.335,3.328,3.307,3.271,3.220,3.153,3.074,2.983,2.883,2.776,2.664,2.548,2.430,2.310,2.187,2.060,
-1.927,1.788,1.641,1.485,1.321,1.149,.971,.789,.606,.427,.254,.092,-.058,-.194,-.315,-.422,
--.517,-.603,-.684,-.766,-.852,-.946,-1.051,-1.170,-1.302,-1.446,-1.599,-1.757,-1.914,-2.065,-2.203,-2.324,
--2.422,-2.494,-2.540,-2.560,-2.557,-2.535,-2.500,-2.460,-2.421,-2.390,-2.374,-2.378,-2.405,-2.457,-2.534,-2.633,
--2.751,-2.883,-3.023,-3.166,-3.306,-3.440,-3.563,-3.673,-3.771,-3.857,-3.932,-4.001,-4.066,-4.131,-4.199,-4.273,
--4.355,-4.444,-4.541,-4.644,-4.751,-4.858,-4.963,-5.063,-5.154,-5.236,-5.307,-5.368,-5.420,-5.464,-5.503,-5.540,
--5.578,-5.619,-5.667,-5.721,-5.783,-5.853,-5.928,-6.006,-6.086,-6.165,-6.239,-6.305,-6.362,-6.407,-6.441,-6.462,
--6.472,-6.472,-6.463,-6.447,-6.426,-6.404,-6.380,-6.358,-6.337,-6.320,-6.306,-6.295,-6.286,-6.280,-6.275,-6.270,
--6.264,-6.255,-6.241,-6.221,-6.191,-6.151,-6.097,-6.026,-5.937,-5.826,-5.693,-5.535,-5.353,-5.147,-4.918,-4.670,
--4.406,-4.131,-3.851,-3.572,-3.301,-3.044,-2.807,-2.596,-2.414,-2.266,-2.153,-2.076,-2.034,-2.026,-2.050,-2.102,
--2.179,-2.277,-2.393,-2.524,-2.666,-2.816,-2.972,-3.131,-3.292,-3.453,-3.610,-3.762,-3.906,-4.039,-4.160,-4.265,
--4.352,-4.420,-4.467,-4.494,-4.502,-4.492,-4.467,-4.431,-4.387,-4.342,-4.298,-4.262,-4.236,-4.225,-4.230,-4.252,
--4.292,-4.347,-4.416,-4.495,-4.582,-4.671,-4.759,-4.844,-4.921,-4.991,-5.051,-5.102,-5.146,-5.184,-5.220,-5.256,
--5.295,-5.341,-5.396,-5.461,-5.537,-5.624,-5.720,-5.822,-5.928,-6.032,-6.131,-6.220,-6.294,-6.349,-6.383,-6.393,
--6.378,-6.340,-6.279,-6.199,-6.105,-6.001,-5.892,-5.784,-5.682,-5.590,-5.513,-5.453,-5.410,-5.384,-5.374,-5.377,
--5.390,-5.408,-5.426,-5.442,-5.451,-5.452,-5.442,-5.423,-5.396,-5.362,-5.326,-5.292,-5.263,-5.243,-5.235,-5.238,
--5.254,-5.279,-5.309,-5.339,-5.360,-5.366,-5.348,-5.298,-5.210,-5.079,-4.902,-4.681,-4.418,-4.119,-3.794,-3.453,
--3.109,-2.773,-2.460,-2.181,-1.947,-1.763,-1.636,-1.566,-1.552,-1.588,-1.667,-1.780,-1.916,-2.062,-2.208,-2.344,
--2.460,-2.548,-2.605,-2.627,-2.614,-2.565,-2.483,-2.371,-2.232,-2.068,-1.882,-1.677,-1.451,-1.207,-.943,-.657,
--.350,-.020,.332,.705,1.098,1.507,1.927,2.352,2.777,3.195,3.600,3.987,4.351,4.689,5.000,5.285,
-5.546,5.787,6.011,6.225,6.433,6.641,6.852,7.070,7.294,7.525,7.760,7.996,8.226,8.446,8.648,8.828,
-8.978,9.095,9.175,9.218,9.223,9.192,9.130,9.041,8.931,8.805,8.672,8.537,8.406,8.284,8.176,8.085,
-8.013,7.963,7.935,7.931,7.950,7.994,8.062,8.156,8.275,8.422,8.595,8.796,9.024,9.279,9.561,9.866,
-10.193,10.539,10.901,11.274,11.656,12.042,12.429,12.814,13.195,13.570,13.940,14.303,14.661,15.015,15.365,15.714,
-16.062,16.410,16.759,17.108,17.456,17.803,18.148,18.487,18.820,19.146,19.462,19.769,20.065,20.352,20.630,20.900,
-21.164,21.422,21.676,21.928,22.177,22.425,22.671,22.913,23.152,23.386,23.614,23.834,24.046,24.248,24.442,24.628,
-24.807,24.980,25.151,25.322,25.494,25.671,25.854,26.045,26.243,26.450,26.665,26.885,27.109,27.334,27.558,27.778,
-27.992,28.196,28.391,28.574,28.745,28.904,29.051,29.189,29.318,29.440,29.556,29.667,29.775,29.880,29.982,30.082,
-30.179,30.272,30.360,30.442,30.518,30.586,30.646,30.698,30.742,30.779,30.809,30.835,30.858,30.880,30.905,30.934,
-30.970,31.016,31.073,31.142,31.226,31.325,31.438,31.565,31.705,31.856,32.016,32.181,32.351,32.520,32.688,32.851,
-33.006,33.153,33.291,33.417,33.534,33.641,33.739,33.831,33.918,34.002,34.086,34.172,34.262,34.358,34.461,34.572,
-34.693,34.823,34.963,35.112,35.270,35.436,35.610,35.791,35.977,36.168,36.364,36.562,36.763,36.966,37.169,37.373,
-37.577,37.780,37.983,38.185,38.387,38.589,38.791,38.993,39.196,39.398,39.599,39.799,39.995,40.186,40.370,40.542,
-40.701,40.842,40.962,41.059,41.130,41.173,41.188,41.173,41.131,41.062,40.971,40.859,40.731,40.590,40.439,40.281,
-40.116,39.946,39.769,39.582,39.382,39.165,38.924,38.655,38.351,38.010,37.627,37.202,36.735,36.229,35.690,35.125,
-34.544,33.958,33.380,32.824,32.301,31.824,31.405,31.051,30.770,30.566,30.439,30.386,30.404,30.485,30.620,30.796,
-31.001,31.222,31.447,31.663,31.858,32.023,32.151,32.237,32.279,32.277,32.234,32.155,32.050,31.926,31.797,31.673,
-31.568,31.493,31.460,31.478,31.555,31.696,31.903,32.175,32.507,32.893,33.324,33.787,34.270,34.759,35.239,35.699,
-36.127,36.513,36.852,37.140,37.378,37.569,37.720,37.838,37.934,38.018,38.102,38.195,38.305,38.439,38.600,38.787,
-38.998,39.227,39.466,39.706,39.935,40.143,40.320,40.460,40.554,40.602,40.602,40.559,40.478,40.369,40.242,40.107,
-39.978,39.865,39.777,39.723,39.705,39.726,39.784,39.875,39.992,40.126,40.266,40.403,40.525,40.625,40.694,40.729,
-40.727,40.689,40.617,41.272,41.208,41.125,41.032,40.938,40.848,40.770,40.709,40.670,40.653,40.659,40.686,40.729,
-40.784,40.846,40.907,40.962,41.007,41.037,41.049,41.043,41.017,40.973,40.913,40.841,40.761,40.674,40.586,40.499,
-40.414,40.334,40.258,40.186,40.117,40.049,39.981,39.909,39.833,39.750,39.657,39.555,39.442,39.316,39.178,39.026,
-38.860,38.679,38.482,38.268,38.037,37.787,37.517,37.228,36.920,36.593,36.248,35.887,35.513,35.128,34.737,34.342,
-33.948,33.558,33.174,32.801,32.440,32.094,31.763,31.448,31.151,30.872,30.610,30.366,30.140,29.932,29.742,29.570,
-29.417,29.280,29.161,29.056,28.963,28.881,28.806,28.735,28.662,28.585,28.499,28.402,28.289,28.160,28.013,27.848,
-27.665,27.467,27.254,27.031,26.800,26.564,26.325,26.084,25.844,25.606,25.368,25.131,24.894,24.656,24.414,24.169,
-23.918,23.662,23.401,23.134,22.864,22.589,22.313,22.037,21.761,21.488,21.217,20.949,20.685,20.425,20.168,19.914,
-19.663,19.415,19.171,18.930,18.695,18.465,18.242,18.028,17.824,17.630,17.448,17.276,17.115,16.964,16.820,16.682,
-16.547,16.413,16.279,16.141,15.999,15.851,15.697,15.537,15.372,15.203,15.029,14.854,14.677,14.500,14.323,14.147,
-13.971,13.795,13.618,13.441,13.261,13.080,12.897,12.713,12.528,12.344,12.161,11.982,11.808,11.640,11.480,11.327,
-11.183,11.046,10.915,10.789,10.665,10.542,10.418,10.289,10.156,10.016,9.869,9.716,9.556,9.392,9.225,9.056,
-8.888,8.722,8.560,8.403,8.252,8.106,7.966,7.832,7.701,7.573,7.448,7.323,7.199,7.074,6.949,6.823,
-6.697,6.571,6.446,6.322,6.200,6.081,5.963,5.848,5.736,5.624,5.513,5.401,5.289,5.174,5.057,4.937,
-4.813,4.686,4.556,4.423,4.289,4.153,4.018,3.884,3.752,3.622,3.496,3.374,3.256,3.143,3.034,2.929,
-2.829,2.732,2.639,2.549,2.462,2.377,2.295,2.216,2.140,2.067,1.997,1.932,1.870,1.813,1.761,1.714,
-1.671,1.633,1.597,1.564,1.531,1.496,1.459,1.415,1.364,1.303,1.229,1.141,1.038,.918,.781,.628,
-.459,.276,.082,-.120,-.327,-.536,-.742,-.941,-1.131,-1.307,-1.467,-1.609,-1.732,-1.834,-1.916,-1.980,
--2.025,-2.055,-2.073,-2.080,-2.080,-2.076,-2.070,-2.065,-2.063,-2.065,-2.071,-2.083,-2.100,-2.123,-2.150,-2.181,
--2.216,-2.254,-2.294,-2.337,-2.384,-2.433,-2.487,-2.546,-2.610,-2.682,-2.760,-2.846,-2.940,-3.041,-3.149,-3.262,
--3.380,-3.501,-3.624,-3.747,-3.869,-3.989,-4.105,-4.218,-4.326,-4.431,-4.531,-4.627,-4.720,-4.810,-4.897,-4.981,
--5.061,-5.138,-5.210,-5.276,-5.335,-5.387,-5.430,-5.464,-5.487,-5.501,-5.505,-5.500,-5.488,-5.470,-5.449,-5.426,
--5.403,-5.382,-5.365,-5.353,-5.346,-5.344,-5.347,-5.355,-5.364,-5.375,-5.385,-5.394,-5.399,-5.401,-5.399,-5.394,
--5.388,-5.381,-5.377,-5.378,-5.385,-5.402,-5.430,-5.470,-5.523,-5.588,-5.663,-5.747,-5.838,-5.931,-6.023,-6.112,
--6.194,-6.267,-6.330,-6.381,-6.422,-6.453,-6.475,-6.491,-6.503,-6.513,-6.522,-6.531,-6.540,-6.549,-6.554,-6.555,
--6.547,-6.527,-6.493,-6.440,-6.366,-6.272,-6.156,-6.020,-5.866,-5.698,-5.521,-5.339,-5.157,-4.980,-4.811,-4.655,
--4.512,-4.384,-4.270,-4.169,-4.077,-3.993,-3.914,-3.838,-3.762,-3.686,-3.608,-3.532,-3.456,-3.385,-3.320,-3.264,
--3.218,-3.182,-3.158,-3.143,-3.134,-3.128,-3.120,-3.105,-3.078,-3.035,-2.972,-2.887,-2.780,-2.653,-2.509,-2.355,
--2.197,-2.041,-1.897,-1.771,-1.670,-1.598,-1.557,-1.548,-1.568,-1.613,-1.677,-1.752,-1.828,-1.899,-1.954,-1.988,
--1.995,-1.972,-1.918,-1.834,-1.723,-1.590,-1.440,-1.281,-1.118,-.958,-.805,-.663,-.534,-.419,-.319,-.232,
--.156,-.090,-.032,.018,.062,.098,.125,.142,.145,.134,.104,.057,-.009,-.092,-.191,-.300,
--.417,-.535,-.649,-.752,-.841,-.910,-.957,-.981,-.981,-.958,-.916,-.857,-.784,-.702,-.614,-.521,
--.425,-.327,-.226,-.119,-.004,.120,.257,.408,.574,.753,.945,1.145,1.349,1.551,1.745,1.925,
-2.084,2.216,2.318,2.387,2.422,2.422,2.391,2.332,2.248,2.145,2.028,1.901,1.769,1.636,1.504,1.376,
-1.252,1.135,1.023,.918,.821,.732,.654,.588,.537,.503,.488,.495,.523,.574,.646,.736,
-.840,.954,1.072,1.186,1.292,1.384,1.457,1.509,1.538,1.544,1.531,1.502,1.462,1.418,1.376,1.342,
-1.323,1.320,1.338,1.377,1.434,1.508,1.592,1.683,1.773,1.856,1.927,1.981,2.015,2.027,2.018,1.989,
-1.943,1.886,1.822,1.756,1.695,1.642,1.601,1.574,1.564,1.570,1.591,1.625,1.670,1.723,1.781,1.841,
-1.902,1.961,2.017,2.070,2.118,2.162,2.203,2.240,2.274,2.305,2.333,2.358,2.381,2.402,2.421,2.439,
-2.456,2.474,2.495,2.520,2.549,2.585,2.627,2.677,2.734,2.797,2.864,2.932,3.001,3.067,3.127,3.181,
-3.226,3.263,3.291,3.312,3.328,3.342,3.355,3.371,3.392,3.418,3.452,3.492,3.537,3.584,3.632,3.675,
-3.711,3.738,3.752,3.754,3.742,3.720,3.690,3.656,3.621,3.592,3.573,3.566,3.574,3.599,3.640,3.693,
-3.755,3.822,3.886,3.942,3.985,4.009,4.011,3.990,3.946,3.880,3.797,3.702,3.600,3.496,3.397,3.307,
-3.228,3.163,3.111,3.071,3.039,3.012,2.985,2.953,2.913,2.862,2.798,2.723,2.639,2.548,2.455,2.365,
-2.284,2.217,2.167,2.139,2.131,2.146,2.179,2.228,2.288,2.353,2.419,2.479,2.528,2.564,2.585,2.588,
-2.574,2.546,2.506,2.456,2.401,2.344,2.288,2.235,2.186,2.144,2.106,2.073,2.044,2.015,1.987,1.956,
-1.921,1.881,1.836,1.783,1.725,1.661,1.591,1.518,1.442,1.366,1.291,1.220,1.154,1.097,1.052,1.020,
-1.004,1.008,1.032,1.078,1.147,1.237,1.347,1.474,1.615,1.765,1.918,2.069,2.212,2.344,2.459,2.556,
-2.632,2.689,2.726,2.748,2.757,2.759,2.758,2.758,2.763,2.774,2.794,2.822,2.856,2.894,2.931,2.963,
-2.987,2.998,2.992,2.967,2.923,2.860,2.779,2.682,2.573,2.455,2.331,2.204,2.076,1.948,1.820,1.691,
-1.561,1.426,1.285,1.137,.979,.813,.639,.459,.277,.096,-.080,-.246,-.398,-.533,-.651,-.750,
--.832,-.901,-.960,-1.015,-1.071,-1.133,-1.207,-1.294,-1.397,-1.516,-1.649,-1.791,-1.938,-2.082,-2.218,-2.338,
--2.437,-2.511,-2.557,-2.576,-2.569,-2.541,-2.497,-2.447,-2.396,-2.354,-2.328,-2.325,-2.347,-2.398,-2.477,-2.582,
--2.710,-2.853,-3.006,-3.161,-3.313,-3.455,-3.583,-3.695,-3.790,-3.870,-3.937,-3.996,-4.050,-4.106,-4.167,-4.237,
--4.319,-4.413,-4.520,-4.638,-4.762,-4.889,-5.014,-5.134,-5.244,-5.341,-5.424,-5.492,-5.548,-5.592,-5.629,-5.664,
--5.699,-5.740,-5.789,-5.850,-5.923,-6.008,-6.103,-6.206,-6.314,-6.422,-6.525,-6.619,-6.701,-6.768,-6.819,-6.852,
--6.867,-6.867,-6.854,-6.829,-6.797,-6.759,-6.719,-6.678,-6.638,-6.600,-6.564,-6.531,-6.499,-6.469,-6.439,-6.409,
--6.377,-6.343,-6.305,-6.262,-6.213,-6.156,-6.089,-6.009,-5.914,-5.801,-5.667,-5.511,-5.331,-5.127,-4.900,-4.651,
--4.384,-4.105,-3.819,-3.534,-3.259,-3.000,-2.766,-2.565,-2.401,-2.280,-2.204,-2.173,-2.187,-2.242,-2.334,-2.456,
--2.604,-2.770,-2.948,-3.131,-3.315,-3.495,-3.668,-3.833,-3.987,-4.130,-4.261,-4.382,-4.491,-4.590,-4.677,-4.753,
--4.817,-4.869,-4.908,-4.935,-4.950,-4.955,-4.951,-4.942,-4.929,-4.917,-4.909,-4.909,-4.921,-4.946,-4.987,-5.045,
--5.119,-5.209,-5.311,-5.423,-5.542,-5.664,-5.784,-5.901,-6.010,-6.110,-6.199,-6.277,-6.345,-6.404,-6.456,-6.503,
--6.548,-6.592,-6.639,-6.690,-6.745,-6.806,-6.870,-6.938,-7.007,-7.074,-7.136,-7.190,-7.233,-7.261,-7.271,-7.262,
--7.232,-7.181,-7.109,-7.018,-6.910,-6.789,-6.660,-6.528,-6.398,-6.275,-6.165,-6.071,-5.998,-5.947,-5.920,-5.914,
--5.929,-5.961,-6.005,-6.056,-6.110,-6.160,-6.202,-6.232,-6.249,-6.251,-6.238,-6.212,-6.177,-6.136,-6.092,-6.049,
--6.011,-5.979,-5.953,-5.931,-5.911,-5.888,-5.856,-5.809,-5.738,-5.640,-5.507,-5.338,-5.132,-4.889,-4.615,-4.317,
--4.003,-3.685,-3.373,-3.080,-2.817,-2.593,-2.414,-2.286,-2.210,-2.182,-2.200,-2.254,-2.336,-2.435,-2.539,-2.639,
--2.723,-2.783,-2.814,-2.812,-2.775,-2.703,-2.598,-2.464,-2.304,-2.121,-1.920,-1.702,-1.468,-1.218,-.952,-.667,
--.362,-.033,.321,.701,1.105,1.532,1.976,2.432,2.893,3.350,3.794,4.216,4.610,4.969,5.289,5.567,
-5.805,6.006,6.174,6.316,6.441,6.558,6.673,6.795,6.929,7.080,7.248,7.434,7.635,7.844,8.057,8.266,
-8.463,8.640,8.793,8.915,9.004,9.057,9.077,9.066,9.028,8.968,8.893,8.809,8.723,8.641,8.567,8.506,
-8.461,8.433,8.422,8.430,8.456,8.498,8.556,8.630,8.719,8.824,8.945,9.084,9.243,9.421,9.622,9.845,
-10.091,10.359,10.649,10.959,11.285,11.626,11.978,12.338,12.703,13.070,13.438,13.805,14.171,14.534,14.895,15.256,
-15.616,15.977,16.339,16.703,17.067,17.433,17.798,18.160,18.519,18.872,19.217,19.553,19.877,20.190,20.490,20.777,
-21.052,21.316,21.570,21.813,22.048,22.275,22.493,22.704,22.906,23.099,23.282,23.455,23.616,23.767,23.906,24.035,
-24.156,24.270,24.380,24.490,24.602,24.719,24.845,24.981,25.130,25.292,25.467,25.656,25.856,26.065,26.280,26.500,
-26.720,26.940,27.155,27.366,27.569,27.766,27.956,28.140,28.317,28.491,28.661,28.828,28.994,29.159,29.322,29.483,
-29.642,29.796,29.944,30.085,30.216,30.335,30.442,30.535,30.613,30.676,30.724,30.760,30.784,30.800,30.809,30.816,
-30.825,30.838,30.861,30.896,30.947,31.016,31.105,31.215,31.346,31.498,31.668,31.853,32.050,32.256,32.465,32.674,
-32.879,33.076,33.262,33.435,33.595,33.740,33.872,33.993,34.103,34.207,34.307,34.406,34.506,34.611,34.722,34.841,
-34.968,35.105,35.251,35.407,35.571,35.744,35.925,36.113,36.308,36.511,36.720,36.936,37.158,37.386,37.619,37.856,
-38.096,38.338,38.580,38.821,39.059,39.292,39.520,39.741,39.955,40.162,40.362,40.554,40.739,40.917,41.087,41.248,
-41.400,41.541,41.668,41.780,41.875,41.950,42.003,42.034,42.041,42.026,41.990,41.934,41.863,41.778,41.684,41.584,
-41.479,41.372,41.261,41.145,41.020,40.881,40.721,40.533,40.307,40.037,39.714,39.333,38.891,38.387,37.823,37.206,
-36.545,35.851,35.141,34.431,33.739,33.083,32.482,31.952,31.504,31.151,30.896,30.743,30.689,30.726,30.845,31.031,
-31.268,31.539,31.824,32.107,32.370,32.599,32.781,32.910,32.980,32.992,32.947,32.854,32.722,32.565,32.396,32.232,
-32.088,31.980,31.920,31.922,31.993,32.138,32.361,32.660,33.028,33.458,33.939,34.456,34.995,35.540,36.076,36.587,
-37.062,37.489,37.862,38.177,38.432,38.632,38.783,38.892,38.971,39.031,39.085,39.144,39.218,39.314,39.439,39.594,
-39.778,39.987,40.215,40.452,40.687,40.911,41.112,41.279,41.406,41.486,41.516,41.498,41.435,41.333,41.202,41.052,
-40.894,40.741,40.604,40.492,40.412,40.371,40.369,40.405,40.476,40.575,40.694,40.824,40.954,41.075,41.178,41.257,
-41.307,41.326,41.313,41.272,41.560,41.538,41.505,41.465,41.425,41.389,41.361,41.346,41.345,41.359,41.385,41.422,
-41.466,41.512,41.554,41.588,41.609,41.614,41.600,41.567,41.516,41.448,41.367,41.275,41.178,41.079,40.981,40.888,
-40.799,40.717,40.639,40.564,40.488,40.410,40.325,40.231,40.126,40.008,39.879,39.738,39.589,39.433,39.274,39.115,
-38.958,38.805,38.657,38.513,38.369,38.222,38.067,37.899,37.711,37.497,37.253,36.975,36.661,36.311,35.927,35.513,
-35.074,34.617,34.151,33.684,33.223,32.778,32.353,31.956,31.588,31.253,30.950,30.679,30.438,30.223,30.032,29.861,
-29.706,29.563,29.431,29.307,29.188,29.073,28.961,28.850,28.740,28.628,28.515,28.398,28.277,28.150,28.015,27.873,
-27.722,27.563,27.393,27.215,27.029,26.834,26.632,26.423,26.207,25.986,25.758,25.525,25.285,25.039,24.787,24.528,
-24.263,23.993,23.718,23.439,23.159,22.877,22.597,22.320,22.047,21.779,21.516,21.259,21.007,20.760,20.516,20.276,
-20.038,19.800,19.564,19.329,19.095,18.864,18.636,18.413,18.197,17.988,17.787,17.596,17.413,17.238,17.070,16.907,
-16.748,16.589,16.428,16.265,16.098,15.925,15.748,15.566,15.381,15.194,15.008,14.823,14.641,14.464,14.292,14.124,
-13.961,13.800,13.641,13.480,13.316,13.148,12.975,12.795,12.609,12.418,12.224,12.028,11.833,11.643,11.458,11.281,
-11.113,10.955,10.806,10.665,10.530,10.399,10.268,10.135,9.998,9.854,9.702,9.542,9.374,9.200,9.021,8.840,
-8.659,8.482,8.309,8.145,7.989,7.842,7.705,7.575,7.452,7.333,7.216,7.099,6.981,6.859,6.734,6.603,
-6.469,6.331,6.192,6.052,5.914,5.779,5.648,5.524,5.406,5.294,5.189,5.089,4.993,4.900,4.808,4.714,
-4.618,4.518,4.414,4.303,4.187,4.065,3.938,3.807,3.673,3.537,3.401,3.266,3.133,3.002,2.876,2.754,
-2.635,2.521,2.411,2.303,2.198,2.096,1.995,1.897,1.800,1.707,1.617,1.532,1.454,1.385,1.325,1.276,
-1.240,1.217,1.206,1.208,1.220,1.240,1.265,1.292,1.316,1.332,1.336,1.324,1.293,1.237,1.157,1.049,
-.914,.752,.565,.357,.129,-.113,-.364,-.621,-.877,-1.128,-1.371,-1.599,-1.811,-2.004,-2.175,-2.325,
--2.451,-2.556,-2.640,-2.705,-2.754,-2.789,-2.814,-2.831,-2.844,-2.856,-2.868,-2.884,-2.906,-2.933,-2.967,-3.008,
--3.056,-3.108,-3.163,-3.220,-3.277,-3.332,-3.382,-3.427,-3.466,-3.498,-3.522,-3.540,-3.552,-3.560,-3.566,-3.572,
--3.581,-3.595,-3.617,-3.648,-3.689,-3.743,-3.810,-3.889,-3.980,-4.082,-4.193,-4.310,-4.432,-4.555,-4.678,-4.797,
--4.910,-5.015,-5.111,-5.197,-5.271,-5.335,-5.388,-5.430,-5.464,-5.488,-5.506,-5.518,-5.525,-5.528,-5.529,-5.529,
--5.528,-5.527,-5.527,-5.529,-5.533,-5.539,-5.549,-5.561,-5.577,-5.597,-5.620,-5.646,-5.675,-5.706,-5.740,-5.776,
--5.813,-5.851,-5.891,-5.932,-5.973,-6.016,-6.060,-6.106,-6.153,-6.200,-6.249,-6.299,-6.348,-6.396,-6.442,-6.486,
--6.527,-6.565,-6.600,-6.631,-6.661,-6.690,-6.719,-6.751,-6.785,-6.823,-6.866,-6.913,-6.964,-7.016,-7.066,-7.111,
--7.148,-7.170,-7.175,-7.157,-7.115,-7.046,-6.949,-6.826,-6.678,-6.510,-6.327,-6.135,-5.939,-5.747,-5.563,-5.393,
--5.239,-5.105,-4.988,-4.890,-4.806,-4.733,-4.666,-4.603,-4.538,-4.468,-4.393,-4.312,-4.225,-4.135,-4.046,-3.960,
--3.883,-3.816,-3.764,-3.726,-3.703,-3.692,-3.689,-3.690,-3.688,-3.677,-3.650,-3.601,-3.528,-3.427,-3.299,-3.147,
--2.975,-2.792,-2.604,-2.422,-2.254,-2.110,-1.995,-1.916,-1.874,-1.869,-1.897,-1.953,-2.028,-2.113,-2.197,-2.270,
--2.324,-2.350,-2.343,-2.299,-2.220,-2.105,-1.961,-1.794,-1.609,-1.417,-1.223,-1.036,-.860,-.699,-.557,-.434,
--.329,-.240,-.166,-.102,-.048,-.001,.040,.075,.102,.121,.130,.126,.107,.074,.025,-.037,
--.110,-.190,-.272,-.351,-.421,-.477,-.514,-.529,-.520,-.487,-.431,-.356,-.266,-.167,-.063,.039,
-.136,.223,.299,.363,.416,.461,.501,.540,.584,.635,.698,.775,.866,.971,1.088,1.212,
-1.338,1.462,1.576,1.675,1.753,1.807,1.833,1.829,1.795,1.732,1.644,1.533,1.405,1.264,1.116,.965,
-.817,.676,.546,.430,.332,.253,.195,.159,.146,.156,.189,.243,.317,.409,.515,.633,
-.756,.881,1.002,1.116,1.216,1.298,1.361,1.402,1.420,1.416,1.394,1.356,1.307,1.254,1.202,1.157,
-1.125,1.110,1.115,1.142,1.191,1.260,1.347,1.446,1.553,1.662,1.767,1.864,1.947,2.014,2.062,2.091,
-2.101,2.094,2.074,2.044,2.007,1.967,1.928,1.894,1.866,1.847,1.838,1.838,1.849,1.868,1.896,1.931,
-1.972,2.018,2.067,2.119,2.172,2.224,2.275,2.323,2.366,2.403,2.432,2.452,2.463,2.465,2.458,2.443,
-2.424,2.403,2.384,2.370,2.365,2.373,2.396,2.436,2.493,2.565,2.651,2.746,2.846,2.946,3.039,3.122,
-3.189,3.239,3.270,3.282,3.279,3.262,3.238,3.212,3.189,3.175,3.173,3.185,3.213,3.255,3.308,3.367,
-3.428,3.484,3.529,3.560,3.572,3.565,3.540,3.498,3.446,3.389,3.335,3.289,3.260,3.253,3.269,3.312,
-3.379,3.465,3.567,3.675,3.781,3.877,3.956,4.009,4.034,4.028,3.992,3.927,3.839,3.735,3.620,3.503,
-3.390,3.286,3.196,3.121,3.061,3.015,2.979,2.949,2.920,2.887,2.848,2.799,2.739,2.670,2.593,2.511,
-2.429,2.351,2.281,2.224,2.181,2.154,2.143,2.147,2.163,2.187,2.215,2.244,2.270,2.289,2.300,2.301,
-2.294,2.280,2.259,2.235,2.211,2.186,2.165,2.146,2.129,2.114,2.099,2.081,2.058,2.027,1.986,1.934,
-1.870,1.794,1.707,1.611,1.508,1.401,1.293,1.185,1.081,.982,.890,.807,.733,.670,.618,.580,
-.554,.544,.551,.576,.619,.683,.765,.867,.985,1.118,1.260,1.408,1.556,1.701,1.836,1.958,
-2.065,2.153,2.224,2.278,2.317,2.345,2.364,2.380,2.394,2.410,2.430,2.452,2.476,2.498,2.516,2.524,
-2.519,2.496,2.453,2.386,2.295,2.182,2.048,1.899,1.739,1.574,1.408,1.247,1.095,.954,.826,.710,
-.605,.507,.413,.320,.225,.125,.020,-.091,-.207,-.323,-.438,-.547,-.646,-.733,-.804,-.860,
--.902,-.932,-.954,-.975,-.999,-1.034,-1.084,-1.155,-1.248,-1.364,-1.501,-1.656,-1.822,-1.993,-2.159,-2.313,
--2.447,-2.554,-2.631,-2.675,-2.686,-2.669,-2.629,-2.573,-2.510,-2.449,-2.399,-2.368,-2.362,-2.385,-2.440,-2.524,
--2.636,-2.769,-2.918,-3.074,-3.231,-3.382,-3.522,-3.647,-3.754,-3.846,-3.922,-3.988,-4.048,-4.108,-4.171,-4.244,
--4.329,-4.427,-4.540,-4.665,-4.799,-4.937,-5.076,-5.209,-5.331,-5.440,-5.532,-5.607,-5.665,-5.709,-5.742,-5.770,
--5.796,-5.828,-5.868,-5.922,-5.991,-6.076,-6.176,-6.289,-6.411,-6.538,-6.663,-6.784,-6.893,-6.989,-7.067,-7.126,
--7.166,-7.187,-7.191,-7.180,-7.157,-7.124,-7.083,-7.038,-6.988,-6.935,-6.878,-6.819,-6.756,-6.689,-6.618,-6.542,
--6.463,-6.381,-6.295,-6.208,-6.119,-6.028,-5.936,-5.839,-5.738,-5.629,-5.508,-5.374,-5.223,-5.054,-4.864,-4.656,
--4.429,-4.189,-3.941,-3.691,-3.449,-3.222,-3.021,-2.852,-2.723,-2.640,-2.607,-2.623,-2.687,-2.796,-2.943,-3.121,
--3.321,-3.534,-3.751,-3.965,-4.168,-4.355,-4.523,-4.670,-4.796,-4.902,-4.991,-5.064,-5.125,-5.177,-5.221,-5.261,
--5.296,-5.327,-5.354,-5.378,-5.397,-5.413,-5.425,-5.435,-5.445,-5.457,-5.474,-5.499,-5.534,-5.582,-5.645,-5.724,
--5.819,-5.929,-6.052,-6.186,-6.327,-6.471,-6.616,-6.757,-6.891,-7.017,-7.131,-7.235,-7.327,-7.408,-7.479,-7.541,
--7.597,-7.647,-7.694,-7.737,-7.779,-7.818,-7.856,-7.891,-7.923,-7.952,-7.975,-7.993,-8.003,-8.004,-7.996,-7.976,
--7.944,-7.899,-7.840,-7.766,-7.678,-7.577,-7.464,-7.341,-7.213,-7.082,-6.953,-6.830,-6.719,-6.624,-6.548,-6.494,
--6.464,-6.458,-6.475,-6.512,-6.565,-6.628,-6.696,-6.763,-6.823,-6.870,-6.902,-6.914,-6.907,-6.879,-6.834,-6.773,
--6.699,-6.618,-6.530,-6.440,-6.348,-6.255,-6.158,-6.057,-5.945,-5.821,-5.679,-5.516,-5.329,-5.116,-4.880,-4.622,
--4.348,-4.063,-3.778,-3.500,-3.239,-3.004,-2.803,-2.640,-2.519,-2.441,-2.403,-2.401,-2.428,-2.475,-2.532,-2.590,
--2.638,-2.670,-2.677,-2.656,-2.603,-2.519,-2.404,-2.262,-2.095,-1.907,-1.703,-1.484,-1.251,-1.006,-.746,-.470,
--.175,.143,.486,.856,1.255,1.679,2.126,2.590,3.063,3.536,3.997,4.438,4.846,5.215,5.536,5.805,
-6.021,6.186,6.305,6.385,6.436,6.470,6.498,6.532,6.583,6.658,6.763,6.903,7.076,7.280,7.509,7.756,
-8.010,8.263,8.505,8.727,8.922,9.084,9.211,9.303,9.362,9.391,9.396,9.384,9.361,9.336,9.314,9.301,
-9.300,9.313,9.341,9.385,9.441,9.507,9.581,9.660,9.741,9.824,9.908,9.993,10.082,10.178,10.284,10.404,
-10.542,10.702,10.887,11.099,11.340,11.610,11.908,12.230,12.576,12.940,13.319,13.708,14.105,14.506,14.907,15.307,
-15.705,16.098,16.488,16.873,17.255,17.632,18.005,18.373,18.736,19.093,19.442,19.783,20.112,20.430,20.733,21.023,
-21.296,21.553,21.795,22.019,22.229,22.422,22.601,22.766,22.917,23.055,23.180,23.292,23.394,23.484,23.564,23.636,
-23.702,23.763,23.822,23.882,23.946,24.016,24.097,24.189,24.295,24.416,24.553,24.705,24.872,25.052,25.243,25.444,
-25.651,25.863,26.078,26.293,26.509,26.723,26.935,27.146,27.356,27.564,27.772,27.978,28.185,28.390,28.594,28.795,
-28.993,29.186,29.372,29.550,29.718,29.874,30.017,30.146,30.260,30.359,30.442,30.510,30.564,30.606,30.637,30.660,
-30.678,30.695,30.713,30.738,30.772,30.819,30.884,30.967,31.071,31.197,31.345,31.513,31.700,31.902,32.115,32.335,
-32.558,32.779,32.994,33.200,33.395,33.578,33.747,33.905,34.053,34.193,34.328,34.462,34.597,34.737,34.883,35.036,
-35.198,35.368,35.546,35.731,35.921,36.114,36.311,36.509,36.709,36.911,37.114,37.319,37.528,37.740,37.957,38.180,
-38.406,38.637,38.870,39.105,39.338,39.569,39.795,40.014,40.226,40.429,40.623,40.810,40.989,41.163,41.332,41.497,
-41.659,41.819,41.975,42.126,42.271,42.407,42.531,42.641,42.734,42.808,42.864,42.899,42.917,42.919,42.907,42.886,
-42.857,42.823,42.786,42.745,42.698,42.642,42.569,42.472,42.341,42.167,41.937,41.644,41.278,40.833,40.309,39.705,
-39.028,38.287,37.497,36.675,35.842,35.019,34.229,33.495,32.837,32.273,31.815,31.473,31.251,31.145,31.150,31.253,
-31.438,31.686,31.976,32.285,32.594,32.882,33.132,33.331,33.470,33.545,33.557,33.511,33.415,33.283,33.129,32.970,
-32.824,32.707,32.636,32.623,32.679,32.811,33.022,33.311,33.675,34.104,34.589,35.116,35.670,36.237,36.800,37.345,
-37.859,38.332,38.755,39.123,39.434,39.690,39.893,40.050,40.170,40.261,40.334,40.399,40.466,40.542,40.633,40.744,
-40.877,41.029,41.199,41.380,41.566,41.748,41.919,42.068,42.189,42.276,42.324,42.330,42.295,42.221,42.113,41.978,
-41.825,41.662,41.499,41.346,41.210,41.099,41.018,40.969,40.953,40.968,41.011,41.074,41.153,41.239,41.326,41.405,
-41.472,41.523,41.555,41.567,41.560,41.946,41.938,41.917,41.885,41.847,41.810,41.776,41.752,41.738,41.737,41.749,
-41.772,41.803,41.837,41.870,41.897,41.912,41.913,41.897,41.862,41.808,41.737,41.653,41.559,41.459,41.359,41.260,
-41.167,41.080,40.998,40.920,40.844,40.763,40.675,40.575,40.459,40.325,40.171,40.000,39.813,39.617,39.416,39.218,
-39.029,38.855,38.702,38.571,38.462,38.374,38.299,38.230,38.157,38.068,37.954,37.802,37.604,37.353,37.046,36.683,
-36.266,35.803,35.302,34.777,34.240,33.704,33.182,32.685,32.224,31.806,31.433,31.108,30.828,30.591,30.390,30.220,
-30.072,29.941,29.819,29.702,29.585,29.465,29.341,29.213,29.080,28.943,28.804,28.663,28.520,28.376,28.231,28.083,
-27.932,27.777,27.616,27.448,27.272,27.086,26.891,26.686,26.471,26.246,26.012,25.770,25.520,25.262,24.998,24.728,
-24.452,24.172,23.890,23.605,23.320,23.035,22.754,22.477,22.205,21.940,21.684,21.435,21.195,20.962,20.736,20.516,
-20.300,20.086,19.875,19.664,19.453,19.242,19.031,18.820,18.610,18.401,18.196,17.994,17.797,17.603,17.413,17.225,
-17.039,16.853,16.666,16.476,16.283,16.085,15.883,15.677,15.468,15.258,15.048,14.841,14.638,14.441,14.251,14.067,
-13.891,13.721,13.554,13.390,13.226,13.060,12.890,12.716,12.535,12.349,12.158,11.965,11.770,11.578,11.389,11.207,
-11.032,10.867,10.710,10.562,10.421,10.285,10.151,10.016,9.879,9.736,9.587,9.429,9.265,9.094,8.918,8.740,
-8.561,8.385,8.214,8.050,7.894,7.747,7.607,7.474,7.346,7.221,7.096,6.970,6.840,6.705,6.564,6.418,
-6.267,6.114,5.960,5.807,5.660,5.519,5.388,5.267,5.159,5.062,4.977,4.903,4.836,4.774,4.715,4.656,
-4.593,4.524,4.446,4.358,4.259,4.147,4.023,3.888,3.743,3.590,3.432,3.269,3.106,2.944,2.786,2.632,
-2.485,2.345,2.213,2.089,1.972,1.862,1.757,1.658,1.563,1.473,1.387,1.306,1.232,1.166,1.109,1.063,
-1.031,1.014,1.012,1.025,1.053,1.093,1.144,1.200,1.258,1.313,1.358,1.389,1.400,1.387,1.346,1.274,
-1.171,1.036,.870,.675,.455,.213,-.047,-.320,-.600,-.885,-1.168,-1.447,-1.717,-1.977,-2.223,-2.454,
--2.668,-2.864,-3.043,-3.204,-3.347,-3.475,-3.587,-3.686,-3.774,-3.853,-3.925,-3.993,-4.059,-4.125,-4.192,-4.261,
--4.333,-4.407,-4.482,-4.556,-4.627,-4.692,-4.749,-4.793,-4.823,-4.835,-4.830,-4.804,-4.760,-4.699,-4.622,-4.534,
--4.438,-4.341,-4.246,-4.160,-4.087,-4.032,-3.998,-3.988,-4.003,-4.043,-4.107,-4.191,-4.293,-4.408,-4.531,-4.658,
--4.784,-4.904,-5.017,-5.118,-5.207,-5.284,-5.348,-5.402,-5.446,-5.483,-5.515,-5.544,-5.570,-5.596,-5.623,-5.649,
--5.676,-5.702,-5.727,-5.750,-5.772,-5.792,-5.811,-5.830,-5.848,-5.869,-5.893,-5.921,-5.956,-5.997,-6.045,-6.100,
--6.161,-6.227,-6.296,-6.368,-6.439,-6.508,-6.574,-6.636,-6.692,-6.744,-6.789,-6.830,-6.866,-6.900,-6.931,-6.960,
--6.990,-7.019,-7.050,-7.083,-7.117,-7.154,-7.194,-7.236,-7.282,-7.330,-7.381,-7.435,-7.489,-7.542,-7.593,-7.638,
--7.675,-7.699,-7.708,-7.698,-7.666,-7.611,-7.530,-7.423,-7.294,-7.143,-6.976,-6.798,-6.614,-6.431,-6.254,-6.089,
--5.940,-5.810,-5.700,-5.609,-5.534,-5.473,-5.420,-5.369,-5.316,-5.256,-5.185,-5.100,-5.003,-4.893,-4.775,-4.653,
--4.532,-4.418,-4.317,-4.233,-4.171,-4.130,-4.111,-4.110,-4.123,-4.142,-4.160,-4.168,-4.159,-4.125,-4.061,-3.965,
--3.836,-3.676,-3.492,-3.289,-3.079,-2.870,-2.674,-2.499,-2.355,-2.247,-2.178,-2.149,-2.158,-2.198,-2.262,-2.341,
--2.424,-2.501,-2.562,-2.600,-2.608,-2.583,-2.524,-2.431,-2.310,-2.164,-2.002,-1.829,-1.654,-1.483,-1.320,-1.169,
--1.034,-.914,-.809,-.717,-.636,-.563,-.496,-.434,-.375,-.319,-.268,-.223,-.186,-.159,-.143,-.139,
--.148,-.168,-.197,-.230,-.264,-.295,-.315,-.322,-.312,-.282,-.231,-.160,-.072,.029,.137,.247,
-.353,.448,.528,.588,.627,.645,.643,.625,.596,.561,.528,.501,.487,.490,.511,.553,
-.613,.688,.775,.866,.955,1.035,1.099,1.142,1.158,1.147,1.105,1.035,.940,.823,.692,.554,
-.415,.283,.166,.070,-.002,-.044,-.056,-.038,.010,.083,.179,.291,.414,.543,.672,.795,
-.908,1.007,1.088,1.151,1.194,1.218,1.223,1.212,1.188,1.152,1.110,1.064,1.018,.976,.940,.914,
-.899,.897,.909,.935,.975,1.027,1.090,1.163,1.241,1.324,1.409,1.493,1.573,1.649,1.719,1.781,
-1.835,1.880,1.918,1.947,1.968,1.983,1.991,1.994,1.992,1.986,1.977,1.965,1.953,1.940,1.929,1.920,
-1.916,1.917,1.926,1.942,1.967,1.999,2.040,2.086,2.136,2.187,2.236,2.280,2.316,2.342,2.356,2.358,
-2.348,2.329,2.303,2.275,2.250,2.233,2.228,2.241,2.273,2.327,2.403,2.498,2.608,2.728,2.852,2.974,
-3.085,3.181,3.257,3.309,3.337,3.341,3.326,3.295,3.255,3.212,3.173,3.142,3.124,3.122,3.134,3.160,
-3.196,3.236,3.276,3.308,3.328,3.331,3.317,3.284,3.236,3.176,3.112,3.050,2.998,2.964,2.954,2.970,
-3.017,3.091,3.190,3.307,3.435,3.564,3.686,3.790,3.870,3.920,3.938,3.923,3.878,3.807,3.717,3.615,
-3.509,3.406,3.313,3.233,3.170,3.122,3.088,3.064,3.046,3.028,3.006,2.974,2.930,2.871,2.799,2.713,
-2.618,2.517,2.415,2.316,2.224,2.142,2.072,2.016,1.972,1.940,1.918,1.904,1.896,1.891,1.889,1.890,
-1.894,1.901,1.913,1.931,1.956,1.988,2.025,2.066,2.109,2.149,2.181,2.202,2.206,2.189,2.149,2.084,
-1.995,1.882,1.749,1.601,1.442,1.279,1.116,.960,.813,.681,.563,.462,.377,.306,.249,.204,
-.170,.147,.133,.132,.142,.168,.209,.268,.345,.441,.555,.683,.823,.971,1.121,1.271,
-1.414,1.547,1.668,1.775,1.868,1.947,2.014,2.072,2.121,2.164,2.202,2.234,2.260,2.275,2.277,2.261,
-2.223,2.159,2.065,1.940,1.783,1.598,1.389,1.160,.921,.679,.444,.222,.022,-.152,-.296,-.408,
--.491,-.548,-.582,-.599,-.606,-.607,-.608,-.612,-.622,-.637,-.657,-.680,-.704,-.726,-.744,-.758,
--.767,-.774,-.781,-.793,-.814,-.850,-.906,-.985,-1.090,-1.220,-1.375,-1.551,-1.740,-1.937,-2.131,-2.315,
--2.480,-2.618,-2.725,-2.796,-2.831,-2.833,-2.805,-2.755,-2.691,-2.622,-2.558,-2.506,-2.476,-2.471,-2.495,-2.550,
--2.633,-2.741,-2.869,-3.010,-3.157,-3.304,-3.444,-3.574,-3.691,-3.793,-3.881,-3.957,-4.026,-4.092,-4.159,-4.232,
--4.315,-4.410,-4.519,-4.639,-4.770,-4.908,-5.048,-5.186,-5.316,-5.436,-5.540,-5.628,-5.700,-5.756,-5.800,-5.835,
--5.866,-5.898,-5.937,-5.986,-6.048,-6.125,-6.217,-6.323,-6.440,-6.565,-6.692,-6.818,-6.938,-7.048,-7.145,-7.227,
--7.292,-7.340,-7.373,-7.390,-7.395,-7.389,-7.372,-7.345,-7.308,-7.262,-7.206,-7.138,-7.059,-6.967,-6.863,-6.747,
--6.622,-6.490,-6.353,-6.216,-6.080,-5.949,-5.825,-5.709,-5.601,-5.498,-5.399,-5.299,-5.194,-5.082,-4.957,-4.818,
--4.663,-4.495,-4.316,-4.132,-3.948,-3.774,-3.619,-3.490,-3.396,-3.344,-3.337,-3.378,-3.466,-3.596,-3.763,-3.959,
--4.173,-4.396,-4.617,-4.827,-5.018,-5.185,-5.325,-5.436,-5.519,-5.578,-5.617,-5.642,-5.657,-5.669,-5.680,-5.695,
--5.715,-5.741,-5.772,-5.807,-5.844,-5.881,-5.917,-5.951,-5.982,-6.012,-6.043,-6.076,-6.114,-6.161,-6.220,-6.291,
--6.377,-6.477,-6.592,-6.719,-6.855,-6.998,-7.144,-7.290,-7.433,-7.571,-7.701,-7.823,-7.936,-8.040,-8.135,-8.224,
--8.304,-8.379,-8.446,-8.507,-8.561,-8.606,-8.643,-8.669,-8.686,-8.692,-8.688,-8.675,-8.654,-8.626,-8.594,-8.558,
--8.520,-8.480,-8.438,-8.394,-8.346,-8.294,-8.235,-8.168,-8.091,-8.005,-7.910,-7.807,-7.699,-7.589,-7.481,-7.379,
--7.288,-7.213,-7.154,-7.115,-7.095,-7.094,-7.108,-7.132,-7.163,-7.194,-7.220,-7.235,-7.235,-7.216,-7.177,-7.117,
--7.038,-6.940,-6.829,-6.706,-6.575,-6.439,-6.300,-6.158,-6.014,-5.867,-5.713,-5.551,-5.378,-5.192,-4.990,-4.774,
--4.543,-4.302,-4.053,-3.804,-3.560,-3.328,-3.114,-2.925,-2.764,-2.634,-2.536,-2.468,-2.427,-2.407,-2.402,-2.405,
--2.407,-2.401,-2.382,-2.344,-2.285,-2.202,-2.095,-1.967,-1.820,-1.655,-1.478,-1.289,-1.090,-.883,-.665,-.436,
--.193,.068,.349,.653,.982,1.335,1.710,2.104,2.509,2.917,3.321,3.709,4.071,4.399,4.685,4.924,
-5.113,5.254,5.350,5.407,5.436,5.448,5.454,5.469,5.503,5.567,5.670,5.816,6.008,6.244,6.519,6.826,
-7.156,7.498,7.840,8.172,8.482,8.764,9.011,9.220,9.391,9.525,9.628,9.704,9.762,9.808,9.852,9.899,
-9.954,10.022,10.104,10.200,10.307,10.421,10.540,10.657,10.768,10.869,10.956,11.028,11.087,11.133,11.171,11.207,
-11.248,11.300,11.371,11.469,11.600,11.769,11.978,12.229,12.522,12.854,13.221,13.617,14.036,14.471,14.916,15.364,
-15.809,16.247,16.673,17.087,17.486,17.869,18.238,18.592,18.933,19.261,19.578,19.883,20.176,20.456,20.724,20.978,
-21.216,21.438,21.642,21.829,21.998,22.150,22.284,22.402,22.505,22.595,22.673,22.742,22.803,22.858,22.908,22.956,
-23.004,23.054,23.107,23.165,23.230,23.305,23.389,23.486,23.595,23.718,23.855,24.005,24.167,24.341,24.526,24.719,
-24.920,25.127,25.339,25.555,25.773,25.995,26.218,26.443,26.670,26.898,27.128,27.358,27.589,27.818,28.045,28.268,
-28.486,28.698,28.903,29.099,29.285,29.461,29.627,29.781,29.926,30.059,30.182,30.294,30.396,30.488,30.570,30.642,
-30.706,30.762,30.811,30.857,30.901,30.947,30.997,31.056,31.126,31.211,31.312,31.432,31.569,31.725,31.897,32.083,
-32.280,32.483,32.689,32.895,33.097,33.293,33.482,33.663,33.838,34.007,34.175,34.343,34.514,34.692,34.878,35.074,
-35.281,35.497,35.722,35.953,36.188,36.423,36.655,36.883,37.105,37.319,37.525,37.724,37.917,38.106,38.292,38.479,
-38.667,38.857,39.050,39.247,39.445,39.644,39.843,40.039,40.232,40.420,40.603,40.781,40.956,41.129,41.302,41.477,
-41.656,41.840,42.031,42.228,42.430,42.634,42.837,43.037,43.228,43.408,43.572,43.718,43.844,43.950,44.037,44.105,
-44.156,44.194,44.220,44.235,44.239,44.230,44.204,44.155,44.075,43.955,43.785,43.554,43.252,42.873,42.409,41.859,
-41.225,40.512,39.731,38.895,38.024,37.138,36.261,35.415,34.624,33.909,33.288,32.775,32.379,32.105,31.949,31.906,
-31.964,32.106,32.314,32.567,32.844,33.126,33.392,33.628,33.823,33.968,34.061,34.104,34.102,34.065,34.004,33.934,
-33.869,33.824,33.814,33.848,33.936,34.085,34.297,34.571,34.905,35.290,35.719,36.182,36.667,37.163,37.658,38.143,
-38.607,39.046,39.451,39.822,40.156,40.453,40.715,40.946,41.149,41.328,41.489,41.634,41.768,41.895,42.016,42.133,
-42.247,42.358,42.464,42.564,42.655,42.734,42.799,42.847,42.875,42.880,42.862,42.819,42.751,42.660,42.547,42.417,
-42.274,42.123,41.970,41.821,41.682,41.559,41.458,41.381,41.332,41.311,41.318,41.351,41.405,41.475,41.556,41.642,
-41.725,41.800,41.862,41.909,41.937,41.946,42.625,42.616,42.579,42.518,42.440,42.350,42.256,42.167,42.088,42.026,
-41.982,41.960,41.957,41.971,41.997,42.029,42.062,42.089,42.103,42.103,42.084,42.046,41.990,41.920,41.838,41.750,
-41.659,41.569,41.482,41.399,41.319,41.238,41.153,41.057,40.947,40.816,40.661,40.481,40.277,40.051,39.811,39.564,
-39.319,39.088,38.880,38.703,38.564,38.465,38.404,38.377,38.375,38.384,38.391,38.379,38.331,38.234,38.075,37.845,
-37.541,37.163,36.716,36.212,35.662,35.084,34.495,33.912,33.351,32.826,32.348,31.923,31.556,31.244,30.984,30.770,
-30.593,30.442,30.310,30.187,30.065,29.940,29.807,29.665,29.513,29.352,29.184,29.012,28.838,28.663,28.489,28.316,
-28.143,27.969,27.793,27.613,27.426,27.231,27.028,26.814,26.591,26.359,26.117,25.869,25.615,25.356,25.094,24.829,
-24.562,24.294,24.025,23.755,23.484,23.214,22.943,22.673,22.405,22.140,21.879,21.624,21.375,21.133,20.900,20.675,
-20.457,20.247,20.043,19.844,19.649,19.456,19.265,19.074,18.883,18.691,18.498,18.306,18.112,17.918,17.724,17.530,
-17.335,17.139,16.942,16.742,16.539,16.332,16.121,15.907,15.688,15.466,15.243,15.018,14.793,14.571,14.351,14.134,
-13.922,13.715,13.511,13.311,13.114,12.919,12.724,12.530,12.336,12.142,11.948,11.756,11.567,11.383,11.204,11.032,
-10.868,10.712,10.564,10.423,10.288,10.157,10.027,9.896,9.762,9.623,9.478,9.327,9.169,9.007,8.840,8.672,
-8.505,8.340,8.180,8.024,7.875,7.732,7.593,7.456,7.321,7.184,7.043,6.897,6.745,6.585,6.419,6.247,
-6.073,5.898,5.727,5.563,5.409,5.268,5.141,5.031,4.938,4.861,4.797,4.746,4.702,4.664,4.626,4.585,
-4.538,4.480,4.411,4.327,4.227,4.112,3.981,3.836,3.679,3.512,3.338,3.160,2.981,2.805,2.635,2.474,
-2.324,2.187,2.064,1.956,1.862,1.781,1.710,1.649,1.595,1.546,1.499,1.454,1.409,1.365,1.321,1.280,
-1.242,1.210,1.185,1.170,1.163,1.167,1.180,1.199,1.223,1.246,1.264,1.273,1.267,1.241,1.193,1.119,
-1.016,.885,.727,.542,.334,.107,-.136,-.391,-.653,-.919,-1.186,-1.450,-1.710,-1.964,-2.211,-2.451,
--2.683,-2.906,-3.121,-3.328,-3.525,-3.713,-3.892,-4.061,-4.221,-4.371,-4.513,-4.647,-4.775,-4.897,-5.014,-5.128,
--5.240,-5.349,-5.456,-5.560,-5.659,-5.752,-5.837,-5.910,-5.968,-6.008,-6.027,-6.024,-5.996,-5.944,-5.867,-5.768,
--5.649,-5.516,-5.372,-5.225,-5.080,-4.944,-4.822,-4.721,-4.643,-4.594,-4.573,-4.581,-4.617,-4.678,-4.759,-4.856,
--4.963,-5.077,-5.191,-5.301,-5.405,-5.500,-5.585,-5.659,-5.724,-5.781,-5.831,-5.877,-5.920,-5.961,-6.001,-6.040,
--6.078,-6.113,-6.146,-6.175,-6.198,-6.217,-6.230,-6.239,-6.245,-6.249,-6.255,-6.265,-6.280,-6.302,-6.333,-6.372,
--6.421,-6.477,-6.539,-6.605,-6.672,-6.739,-6.802,-6.862,-6.916,-6.965,-7.011,-7.053,-7.095,-7.137,-7.183,-7.233,
--7.290,-7.352,-7.421,-7.494,-7.571,-7.649,-7.726,-7.799,-7.867,-7.927,-7.978,-8.020,-8.051,-8.072,-8.083,-8.084,
--8.075,-8.057,-8.029,-7.990,-7.940,-7.877,-7.801,-7.711,-7.607,-7.490,-7.362,-7.224,-7.081,-6.936,-6.793,-6.656,
--6.529,-6.416,-6.317,-6.234,-6.166,-6.110,-6.062,-6.018,-5.973,-5.922,-5.859,-5.782,-5.687,-5.575,-5.446,-5.303,
--5.151,-4.996,-4.844,-4.702,-4.576,-4.471,-4.390,-4.334,-4.302,-4.290,-4.294,-4.306,-4.317,-4.319,-4.305,-4.265,
--4.197,-4.095,-3.960,-3.794,-3.601,-3.390,-3.168,-2.947,-2.735,-2.545,-2.383,-2.257,-2.171,-2.126,-2.121,-2.152,
--2.212,-2.293,-2.385,-2.478,-2.562,-2.630,-2.673,-2.687,-2.670,-2.621,-2.543,-2.439,-2.316,-2.178,-2.033,-1.886,
--1.743,-1.608,-1.483,-1.370,-1.270,-1.180,-1.099,-1.025,-.955,-.888,-.823,-.758,-.695,-.635,-.578,-.528,
--.485,-.450,-.426,-.410,-.403,-.401,-.401,-.401,-.396,-.382,-.356,-.317,-.263,-.194,-.113,-.023,
-.072,.167,.256,.334,.397,.442,.466,.470,.454,.422,.379,.330,.280,.236,.204,.187,
-.189,.210,.249,.304,.369,.440,.508,.568,.613,.637,.636,.607,.552,.472,.373,.260,
-.143,.028,-.073,-.154,-.207,-.226,-.209,-.155,-.066,.054,.197,.357,.524,.688,.841,.974,
-1.082,1.159,1.204,1.218,1.202,1.160,1.100,1.026,.945,.866,.793,.730,.683,.652,.638,.641,
-.658,.686,.723,.766,.811,.857,.902,.945,.987,1.027,1.068,1.111,1.156,1.206,1.261,1.322,
-1.388,1.459,1.533,1.607,1.681,1.751,1.814,1.870,1.914,1.947,1.967,1.975,1.970,1.955,1.932,1.902,
-1.869,1.836,1.807,1.784,1.770,1.767,1.776,1.798,1.831,1.874,1.925,1.981,2.037,2.090,2.138,2.176,
-2.202,2.217,2.220,2.213,2.198,2.181,2.165,2.156,2.159,2.178,2.216,2.276,2.356,2.457,2.573,2.701,
-2.834,2.964,3.087,3.195,3.283,3.349,3.390,3.406,3.401,3.378,3.342,3.298,3.253,3.211,3.176,3.150,
-3.135,3.129,3.130,3.135,3.139,3.138,3.130,3.111,3.081,3.041,2.994,2.943,2.895,2.853,2.826,2.816,
-2.827,2.862,2.919,2.996,3.088,3.189,3.292,3.389,3.474,3.541,3.586,3.607,3.604,3.580,3.538,3.485,
-3.426,3.367,3.315,3.272,3.241,3.223,3.215,3.215,3.218,3.218,3.210,3.188,3.149,3.090,3.009,2.907,
-2.787,2.653,2.508,2.358,2.208,2.062,1.924,1.798,1.684,1.585,1.499,1.427,1.369,1.324,1.293,1.276,
-1.273,1.287,1.318,1.367,1.433,1.514,1.609,1.713,1.820,1.924,2.016,2.090,2.139,2.155,2.135,2.077,
-1.981,1.848,1.685,1.498,1.295,1.086,.879,.683,.504,.349,.219,.116,.038,-.017,-.054,-.077,
--.090,-.097,-.101,-.102,-.100,-.094,-.081,-.057,-.019,.036,.109,.202,.314,.442,.584,.735,
-.891,1.045,1.195,1.336,1.465,1.583,1.687,1.779,1.860,1.931,1.992,2.043,2.084,2.111,2.120,2.108,
-2.069,1.998,1.892,1.748,1.565,1.346,1.093,.815,.520,.218,-.079,-.361,-.617,-.838,-1.019,-1.155,
--1.244,-1.291,-1.297,-1.271,-1.218,-1.149,-1.069,-.988,-.910,-.840,-.781,-.734,-.699,-.676,-.663,-.660,
--.666,-.681,-.707,-.745,-.798,-.868,-.958,-1.069,-1.202,-1.355,-1.527,-1.713,-1.908,-2.104,-2.295,-2.474,
--2.632,-2.765,-2.868,-2.939,-2.978,-2.986,-2.968,-2.930,-2.878,-2.820,-2.764,-2.718,-2.686,-2.674,-2.686,-2.721,
--2.780,-2.860,-2.957,-3.067,-3.184,-3.304,-3.422,-3.534,-3.638,-3.732,-3.816,-3.892,-3.962,-4.029,-4.097,-4.169,
--4.249,-4.338,-4.438,-4.549,-4.670,-4.800,-4.934,-5.071,-5.206,-5.335,-5.455,-5.565,-5.663,-5.748,-5.823,-5.888,
--5.948,-6.005,-6.063,-6.125,-6.194,-6.273,-6.360,-6.457,-6.563,-6.674,-6.789,-6.903,-7.014,-7.120,-7.217,-7.304,
--7.380,-7.445,-7.498,-7.540,-7.572,-7.594,-7.606,-7.606,-7.594,-7.569,-7.527,-7.468,-7.389,-7.289,-7.168,-7.028,
--6.870,-6.699,-6.519,-6.335,-6.154,-5.980,-5.819,-5.673,-5.547,-5.438,-5.348,-5.271,-5.205,-5.144,-5.082,-5.016,
--4.942,-4.857,-4.763,-4.660,-4.553,-4.449,-4.355,-4.278,-4.226,-4.207,-4.224,-4.282,-4.379,-4.514,-4.680,-4.871,
--5.076,-5.285,-5.488,-5.675,-5.838,-5.972,-6.073,-6.140,-6.177,-6.187,-6.177,-6.155,-6.127,-6.102,-6.086,-6.083,
--6.096,-6.126,-6.172,-6.230,-6.296,-6.368,-6.440,-6.508,-6.569,-6.623,-6.669,-6.709,-6.743,-6.777,-6.813,-6.854,
--6.903,-6.962,-7.033,-7.115,-7.207,-7.308,-7.415,-7.526,-7.639,-7.752,-7.864,-7.975,-8.083,-8.191,-8.298,-8.406,
--8.515,-8.624,-8.733,-8.840,-8.942,-9.036,-9.119,-9.188,-9.239,-9.272,-9.284,-9.277,-9.253,-9.213,-9.162,-9.105,
--9.046,-8.990,-8.940,-8.898,-8.865,-8.841,-8.825,-8.812,-8.800,-8.784,-8.760,-8.725,-8.676,-8.613,-8.534,-8.443,
--8.342,-8.235,-8.126,-8.020,-7.920,-7.829,-7.749,-7.680,-7.622,-7.572,-7.527,-7.483,-7.436,-7.381,-7.317,-7.240,
--7.149,-7.044,-6.927,-6.800,-6.664,-6.524,-6.382,-6.241,-6.101,-5.964,-5.829,-5.695,-5.561,-5.423,-5.280,-5.129,
--4.968,-4.798,-4.618,-4.430,-4.237,-4.043,-3.850,-3.664,-3.488,-3.326,-3.178,-3.048,-2.933,-2.834,-2.747,-2.668,
--2.593,-2.520,-2.443,-2.359,-2.266,-2.163,-2.050,-1.927,-1.796,-1.659,-1.517,-1.374,-1.229,-1.084,-.938,-.790,
--.637,-.477,-.306,-.121,.079,.297,.532,.782,1.044,1.315,1.587,1.854,2.110,2.347,2.561,2.745,
-2.899,3.022,3.117,3.188,3.242,3.287,3.333,3.391,3.470,3.578,3.724,3.911,4.142,4.418,4.735,5.087,
-5.467,5.867,6.276,6.684,7.082,7.461,7.814,8.137,8.427,8.683,8.908,9.105,9.280,9.438,9.585,9.729,
-9.874,10.026,10.186,10.355,10.534,10.720,10.909,11.095,11.275,11.441,11.590,11.718,11.821,11.900,11.956,11.992,
-12.014,12.030,12.047,12.074,12.122,12.197,12.308,12.461,12.659,12.903,13.192,13.523,13.891,14.288,14.706,15.137,
-15.571,16.002,16.421,16.824,17.206,17.566,17.901,18.214,18.505,18.778,19.033,19.274,19.503,19.721,19.929,20.128,
-20.316,20.494,20.660,20.813,20.952,21.077,21.188,21.286,21.371,21.446,21.512,21.572,21.629,21.684,21.740,21.799,
-21.864,21.934,22.013,22.100,22.197,22.305,22.424,22.553,22.695,22.848,23.013,23.189,23.376,23.573,23.780,23.994,
-24.216,24.444,24.678,24.916,25.159,25.405,25.654,25.906,26.161,26.418,26.676,26.935,27.193,27.449,27.702,27.949,
-28.191,28.424,28.648,28.862,29.067,29.262,29.448,29.626,29.796,29.961,30.120,30.275,30.424,30.568,30.705,30.834,
-30.955,31.064,31.162,31.247,31.321,31.384,31.439,31.488,31.535,31.584,31.639,31.705,31.785,31.881,31.994,32.126,
-32.275,32.438,32.614,32.798,32.988,33.180,33.372,33.561,33.748,33.932,34.114,34.298,34.486,34.680,34.884,35.098,
-35.324,35.563,35.812,36.070,36.334,36.600,36.864,37.122,37.371,37.608,37.832,38.043,38.240,38.426,38.602,38.772,
-38.938,39.103,39.268,39.436,39.606,39.780,39.956,40.132,40.309,40.485,40.659,40.831,41.001,41.172,41.345,41.522,
-41.706,41.900,42.104,42.321,42.551,42.792,43.043,43.300,43.559,43.817,44.067,44.305,44.527,44.731,44.912,45.070,
-45.203,45.312,45.397,45.457,45.493,45.503,45.485,45.436,45.350,45.221,45.044,44.810,44.514,44.149,43.711,43.200,
-42.615,41.961,41.246,40.481,39.681,38.862,38.043,37.243,36.481,35.776,35.144,34.598,34.147,33.797,33.548,33.398,
-33.337,33.356,33.440,33.574,33.743,33.930,34.120,34.301,34.464,34.602,34.713,34.797,34.857,34.902,34.938,34.975,
-35.025,35.096,35.197,35.334,35.512,35.732,35.993,36.292,36.623,36.979,37.352,37.734,38.116,38.491,38.854,39.200,
-39.528,39.836,40.126,40.400,40.661,40.914,41.161,41.406,41.650,41.895,42.138,42.379,42.613,42.838,43.046,43.235,
-43.399,43.534,43.636,43.705,43.740,43.740,43.709,43.648,43.561,43.452,43.326,43.185,43.035,42.878,42.717,42.555,
-42.396,42.241,42.093,41.956,41.831,41.724,41.636,41.571,41.531,41.520,41.537,41.583,41.655,41.751,41.865,41.992,
-42.124,42.253,42.372,42.474,42.553,42.604,42.625,43.226,43.236,43.206,43.139,43.039,42.916,42.780,42.640,42.507,
-42.391,42.298,42.234,42.201,42.196,42.217,42.258,42.309,42.363,42.412,42.447,42.462,42.455,42.425,42.371,42.298,
-42.210,42.114,42.013,41.913,41.817,41.725,41.636,41.547,41.451,41.344,41.217,41.067,40.888,40.681,40.447,40.190,
-39.920,39.648,39.387,39.149,38.946,38.790,38.686,38.638,38.641,38.688,38.767,38.860,38.949,39.013,39.032,38.987,
-38.864,38.653,38.351,37.960,37.487,36.945,36.352,35.727,35.091,34.464,33.864,33.306,32.800,32.354,31.969,31.643,
-31.368,31.138,30.941,30.767,30.605,30.448,30.287,30.118,29.940,29.750,29.552,29.347,29.139,28.930,28.722,28.519,
-28.319,28.123,27.930,27.736,27.541,27.341,27.135,26.921,26.699,26.468,26.229,25.985,25.736,25.486,25.235,24.985,
-24.737,24.491,24.247,24.004,23.760,23.515,23.266,23.013,22.755,22.492,22.225,21.955,21.684,21.415,21.149,20.890,
-20.638,20.397,20.166,19.946,19.737,19.538,19.348,19.164,18.985,18.810,18.635,18.460,18.284,18.105,17.923,17.739,
-17.551,17.360,17.166,16.969,16.770,16.567,16.361,16.151,15.938,15.721,15.500,15.275,15.046,14.814,14.579,14.341,
-14.102,13.862,13.621,13.380,13.140,12.902,12.666,12.434,12.206,11.984,11.768,11.561,11.362,11.174,10.997,10.831,
-10.676,10.531,10.395,10.267,10.143,10.022,9.900,9.776,9.646,9.511,9.368,9.218,9.062,8.901,8.738,8.573,
-8.411,8.252,8.099,7.952,7.811,7.675,7.542,7.410,7.276,7.138,6.993,6.839,6.676,6.503,6.322,6.136,
-5.948,5.761,5.581,5.412,5.256,5.118,4.999,4.899,4.818,4.753,4.702,4.660,4.624,4.588,4.548,4.500,
-4.441,4.368,4.279,4.175,4.054,3.918,3.770,3.610,3.441,3.267,3.091,2.915,2.742,2.578,2.423,2.282,
-2.156,2.048,1.959,1.890,1.840,1.808,1.792,1.788,1.792,1.801,1.809,1.813,1.809,1.794,1.766,1.724,
-1.670,1.604,1.530,1.449,1.366,1.284,1.203,1.127,1.054,.985,.917,.848,.774,.690,.595,.484,
-.355,.207,.040,-.145,-.345,-.558,-.781,-1.008,-1.236,-1.463,-1.684,-1.899,-2.105,-2.302,-2.491,-2.673,
--2.848,-3.018,-3.185,-3.349,-3.512,-3.674,-3.835,-3.995,-4.154,-4.311,-4.466,-4.618,-4.768,-4.914,-5.057,-5.197,
--5.334,-5.468,-5.599,-5.728,-5.853,-5.975,-6.092,-6.203,-6.305,-6.397,-6.475,-6.538,-6.584,-6.609,-6.612,-6.592,
--6.549,-6.483,-6.398,-6.294,-6.177,-6.052,-5.923,-5.796,-5.678,-5.574,-5.489,-5.427,-5.390,-5.379,-5.395,-5.436,
--5.499,-5.581,-5.677,-5.783,-5.894,-6.006,-6.116,-6.221,-6.318,-6.408,-6.489,-6.562,-6.627,-6.684,-6.735,-6.779,
--6.816,-6.846,-6.868,-6.883,-6.890,-6.889,-6.880,-6.866,-6.846,-6.825,-6.803,-6.784,-6.769,-6.762,-6.762,-6.772,
--6.789,-6.813,-6.842,-6.873,-6.904,-6.933,-6.957,-6.975,-6.988,-6.997,-7.003,-7.010,-7.021,-7.039,-7.070,-7.115,
--7.176,-7.253,-7.347,-7.454,-7.571,-7.692,-7.814,-7.929,-8.034,-8.123,-8.193,-8.242,-8.270,-8.278,-8.267,-8.240,
--8.202,-8.154,-8.101,-8.046,-7.989,-7.931,-7.874,-7.815,-7.753,-7.687,-7.615,-7.536,-7.449,-7.356,-7.256,-7.153,
--7.047,-6.943,-6.842,-6.747,-6.659,-6.578,-6.505,-6.438,-6.373,-6.309,-6.240,-6.165,-6.078,-5.978,-5.863,-5.733,
--5.589,-5.434,-5.271,-5.105,-4.942,-4.786,-4.642,-4.514,-4.405,-4.315,-4.245,-4.193,-4.154,-4.124,-4.097,-4.066,
--4.026,-3.971,-3.897,-3.801,-3.682,-3.542,-3.382,-3.209,-3.029,-2.849,-2.678,-2.522,-2.391,-2.288,-2.219,-2.186,
--2.187,-2.221,-2.281,-2.362,-2.456,-2.552,-2.643,-2.721,-2.778,-2.809,-2.811,-2.783,-2.727,-2.644,-2.541,-2.424,
--2.297,-2.169,-2.044,-1.928,-1.823,-1.732,-1.653,-1.588,-1.532,-1.482,-1.437,-1.391,-1.342,-1.289,-1.230,-1.166,
--1.097,-1.027,-.957,-.890,-.829,-.775,-.731,-.695,-.669,-.649,-.633,-.618,-.602,-.580,-.551,-.512,
--.463,-.405,-.339,-.268,-.194,-.123,-.057,-.001,.044,.075,.091,.095,.087,.070,.049,.028,
-.011,.001,.001,.012,.035,.066,.103,.143,.179,.206,.220,.217,.194,.152,.090,.013,
--.073,-.162,-.245,-.314,-.361,-.379,-.363,-.310,-.220,-.097,.055,.227,.409,.592,.764,.915,
-1.037,1.124,1.173,1.183,1.156,1.099,1.017,.920,.818,.719,.631,.561,.513,.489,.490,.512,
-.552,.604,.664,.724,.781,.830,.870,.900,.921,.935,.946,.957,.973,.997,1.031,1.078,
-1.138,1.211,1.294,1.385,1.481,1.578,1.671,1.759,1.838,1.905,1.961,2.003,2.033,2.051,2.058,2.056,
-2.048,2.034,2.017,1.999,1.981,1.965,1.953,1.945,1.943,1.946,1.956,1.972,1.994,2.020,2.049,2.079,
-2.108,2.134,2.155,2.170,2.178,2.179,2.176,2.169,2.163,2.160,2.164,2.180,2.210,2.257,2.322,2.406,
-2.505,2.617,2.738,2.861,2.981,3.092,3.187,3.264,3.318,3.348,3.354,3.339,3.306,3.260,3.204,3.146,
-3.088,3.035,2.989,2.953,2.924,2.904,2.889,2.878,2.868,2.856,2.843,2.826,2.808,2.789,2.771,2.758,
-2.751,2.752,2.763,2.785,2.815,2.854,2.898,2.943,2.987,3.026,3.058,3.081,3.095,3.100,3.099,3.094,
-3.088,3.084,3.085,3.094,3.111,3.134,3.163,3.194,3.221,3.241,3.249,3.238,3.207,3.153,3.075,2.973,
-2.850,2.709,2.555,2.392,2.227,2.062,1.902,1.751,1.609,1.479,1.362,1.257,1.166,1.088,1.025,.978,
-.950,.941,.955,.991,1.051,1.134,1.235,1.351,1.475,1.598,1.712,1.808,1.875,1.907,1.896,1.840,
-1.737,1.590,1.406,1.191,.958,.717,.480,.260,.065,-.097,-.221,-.306,-.353,-.366,-.352,-.318,
--.271,-.220,-.170,-.125,-.088,-.060,-.037,-.016,.007,.037,.079,.137,.212,.305,.415,.540,
-.674,.813,.952,1.086,1.212,1.326,1.428,1.518,1.595,1.661,1.718,1.766,1.806,1.835,1.853,1.853,
-1.832,1.785,1.706,1.591,1.437,1.245,1.016,.754,.469,.168,-.137,-.434,-.711,-.958,-1.165,-1.326,
--1.439,-1.502,-1.519,-1.495,-1.436,-1.352,-1.252,-1.144,-1.038,-.939,-.853,-.785,-.735,-.706,-.697,-.707,
--.736,-.784,-.849,-.932,-1.032,-1.149,-1.282,-1.431,-1.593,-1.766,-1.946,-2.127,-2.305,-2.474,-2.629,-2.765,
--2.879,-2.966,-3.028,-3.064,-3.076,-3.069,-3.047,-3.016,-2.981,-2.948,-2.921,-2.904,-2.901,-2.912,-2.939,-2.979,
--3.032,-3.094,-3.165,-3.240,-3.317,-3.395,-3.470,-3.544,-3.614,-3.682,-3.749,-3.814,-3.881,-3.950,-4.023,-4.101,
--4.187,-4.280,-4.381,-4.491,-4.608,-4.731,-4.860,-4.992,-5.125,-5.257,-5.386,-5.511,-5.630,-5.743,-5.848,-5.947,
--6.041,-6.130,-6.217,-6.303,-6.390,-6.479,-6.572,-6.667,-6.766,-6.867,-6.970,-7.072,-7.172,-7.269,-7.361,-7.447,
--7.526,-7.598,-7.663,-7.720,-7.770,-7.811,-7.843,-7.865,-7.873,-7.866,-7.840,-7.794,-7.724,-7.629,-7.508,-7.362,
--7.193,-7.003,-6.799,-6.586,-6.370,-6.159,-5.959,-5.776,-5.613,-5.475,-5.361,-5.271,-5.202,-5.150,-5.111,-5.079,
--5.050,-5.020,-4.987,-4.952,-4.915,-4.881,-4.853,-4.838,-4.842,-4.870,-4.927,-5.016,-5.137,-5.289,-5.467,-5.664,
--5.872,-6.082,-6.283,-6.466,-6.623,-6.748,-6.836,-6.888,-6.906,-6.893,-6.857,-6.807,-6.751,-6.699,-6.658,-6.635,
--6.634,-6.657,-6.705,-6.773,-6.859,-6.956,-7.058,-7.158,-7.253,-7.336,-7.407,-7.462,-7.503,-7.532,-7.551,-7.564,
--7.574,-7.583,-7.595,-7.612,-7.633,-7.660,-7.691,-7.726,-7.764,-7.804,-7.848,-7.896,-7.950,-8.012,-8.084,-8.169,
--8.268,-8.383,-8.512,-8.654,-8.805,-8.961,-9.116,-9.263,-9.396,-9.510,-9.598,-9.658,-9.690,-9.692,-9.669,-9.625,
--9.566,-9.500,-9.431,-9.368,-9.316,-9.278,-9.256,-9.250,-9.258,-9.276,-9.299,-9.321,-9.337,-9.342,-9.331,-9.302,
--9.252,-9.182,-9.095,-8.991,-8.876,-8.753,-8.627,-8.499,-8.374,-8.253,-8.137,-8.025,-7.916,-7.808,-7.700,-7.589,
--7.474,-7.354,-7.228,-7.098,-6.963,-6.826,-6.689,-6.555,-6.424,-6.299,-6.181,-6.070,-5.966,-5.867,-5.772,-5.678,
--5.585,-5.488,-5.387,-5.280,-5.166,-5.044,-4.916,-4.781,-4.640,-4.495,-4.347,-4.198,-4.046,-3.894,-3.741,-3.586,
--3.430,-3.271,-3.110,-2.947,-2.781,-2.615,-2.449,-2.285,-2.126,-1.974,-1.832,-1.700,-1.580,-1.474,-1.380,-1.297,
--1.222,-1.154,-1.088,-1.022,-.950,-.871,-.782,-.682,-.570,-.447,-.315,-.176,-.033,.111,.253,.390,
-.521,.645,.763,.876,.988,1.102,1.222,1.353,1.499,1.665,1.854,2.068,2.309,2.576,2.870,3.187,
-3.525,3.880,4.249,4.626,5.007,5.389,5.768,6.141,6.506,6.862,7.206,7.540,7.863,8.176,8.480,8.777,
-9.067,9.353,9.635,9.915,10.193,10.468,10.740,11.007,11.267,11.517,11.755,11.976,12.177,12.356,12.511,12.642,
-12.749,12.834,12.902,12.957,13.007,13.058,13.118,13.194,13.294,13.423,13.584,13.780,14.009,14.269,14.555,14.861,
-15.180,15.504,15.826,16.138,16.434,16.712,16.967,17.200,17.411,17.603,17.778,17.942,18.096,18.245,18.391,18.536,
-18.681,18.827,18.971,19.113,19.252,19.386,19.514,19.635,19.749,19.857,19.959,20.057,20.153,20.249,20.345,20.444,
-20.548,20.656,20.769,20.889,21.016,21.149,21.291,21.442,21.602,21.774,21.957,22.152,22.362,22.585,22.823,23.074,
-23.339,23.615,23.902,24.197,24.499,24.806,25.116,25.427,25.738,26.048,26.355,26.658,26.955,27.247,27.531,27.806,
-28.072,28.327,28.571,28.803,29.024,29.235,29.435,29.628,29.814,29.995,30.173,30.349,30.522,30.693,30.862,31.025,
-31.181,31.328,31.463,31.583,31.688,31.776,31.847,31.905,31.950,31.989,32.024,32.062,32.107,32.165,32.238,32.331,
-32.443,32.576,32.727,32.895,33.075,33.265,33.460,33.658,33.855,34.052,34.247,34.440,34.635,34.833,35.035,35.246,
-35.467,35.698,35.939,36.190,36.449,36.712,36.976,37.236,37.490,37.734,37.966,38.184,38.389,38.580,38.760,38.932,
-39.098,39.261,39.423,39.588,39.757,39.929,40.105,40.284,40.465,40.646,40.826,41.005,41.181,41.355,41.529,41.705,
-41.886,42.073,42.270,42.479,42.702,42.941,43.194,43.460,43.737,44.022,44.310,44.597,44.877,45.147,45.400,45.634,
-45.843,46.025,46.176,46.293,46.374,46.415,46.413,46.365,46.267,46.116,45.909,45.644,45.317,44.928,44.480,43.973,
-43.414,42.808,42.166,41.497,40.815,40.132,39.463,38.819,38.215,37.662,37.168,36.740,36.383,36.097,35.881,35.730,
-35.637,35.594,35.592,35.619,35.666,35.723,35.781,35.836,35.883,35.920,35.947,35.970,35.991,36.018,36.058,36.119,
-36.207,36.329,36.489,36.690,36.930,37.208,37.519,37.854,38.207,38.566,38.924,39.269,39.595,39.895,40.165,40.404,
-40.613,40.797,40.960,41.111,41.258,41.408,41.570,41.749,41.949,42.171,42.415,42.675,42.945,43.218,43.483,43.731,
-43.953,44.138,44.282,44.378,44.425,44.423,44.375,44.285,44.161,44.009,43.837,43.653,43.464,43.274,43.090,42.912,
-42.745,42.587,42.441,42.305,42.182,42.070,41.973,41.892,41.831,41.793,41.781,41.798,41.845,41.924,42.031,42.164,
-42.317,42.483,42.652,42.815,42.962,43.084,43.174,43.226,43.370,43.433,43.455,43.436,43.379,43.290,43.176,43.049,
-42.920,42.799,42.695,42.616,42.567,42.549,42.559,42.592,42.642,42.699,42.753,42.795,42.818,42.815,42.783,42.723,
-42.637,42.530,42.410,42.282,42.155,42.034,41.923,41.822,41.729,41.641,41.551,41.451,41.334,41.193,41.023,40.825,
-40.599,40.354,40.098,39.846,39.610,39.407,39.251,39.150,39.113,39.139,39.224,39.357,39.522,39.698,39.862,39.989,
-40.056,40.044,39.936,39.723,39.403,38.978,38.461,37.866,37.215,36.529,35.832,35.146,34.492,33.883,33.332,32.843,
-32.418,32.052,31.739,31.469,31.231,31.014,30.808,30.605,30.399,30.187,29.968,29.742,29.511,29.280,29.050,28.825,
-28.607,28.396,28.192,27.994,27.800,27.605,27.408,27.205,26.994,26.775,26.547,26.311,26.068,25.820,25.571,25.322,
-25.076,24.833,24.593,24.358,24.124,23.890,23.654,23.413,23.166,22.909,22.642,22.366,22.082,21.791,21.496,21.201,
-20.910,20.626,20.352,20.091,19.845,19.615,19.400,19.200,19.013,18.836,18.666,18.501,18.338,18.173,18.006,17.834,
-17.656,17.472,17.283,17.087,16.887,16.683,16.474,16.263,16.049,15.832,15.613,15.392,15.168,14.940,14.710,14.475,
-14.236,13.994,13.747,13.496,13.243,12.987,12.731,12.475,12.222,11.973,11.730,11.496,11.274,11.063,10.867,10.685,
-10.518,10.366,10.226,10.096,9.975,9.858,9.742,9.625,9.503,9.373,9.235,9.089,8.934,8.772,8.606,8.437,
-8.269,8.105,7.947,7.796,7.652,7.516,7.384,7.257,7.129,6.998,6.862,6.717,6.563,6.400,6.227,6.049,
-5.867,5.687,5.513,5.349,5.199,5.066,4.951,4.855,4.776,4.711,4.657,4.608,4.559,4.506,4.444,4.369,
-4.279,4.173,4.052,3.916,3.769,3.612,3.450,3.286,3.122,2.961,2.806,2.659,2.520,2.392,2.275,2.171,
-2.081,2.005,1.946,1.903,1.877,1.868,1.874,1.893,1.921,1.953,1.986,2.012,2.026,2.024,1.999,1.950,
-1.875,1.773,1.647,1.499,1.333,1.155,.970,.782,.595,.413,.238,.069,-.093,-.252,-.409,-.566,
--.728,-.896,-1.071,-1.253,-1.443,-1.637,-1.835,-2.032,-2.226,-2.414,-2.592,-2.759,-2.912,-3.053,-3.180,-3.295,
--3.400,-3.496,-3.586,-3.672,-3.756,-3.840,-3.926,-4.015,-4.108,-4.205,-4.306,-4.412,-4.523,-4.637,-4.754,-4.874,
--4.995,-5.117,-5.240,-5.362,-5.483,-5.603,-5.722,-5.838,-5.953,-6.065,-6.175,-6.280,-6.381,-6.475,-6.561,-6.636,
--6.698,-6.745,-6.775,-6.787,-6.779,-6.752,-6.708,-6.649,-6.579,-6.502,-6.424,-6.350,-6.286,-6.236,-6.204,-6.194,
--6.206,-6.242,-6.299,-6.375,-6.467,-6.571,-6.683,-6.797,-6.911,-7.020,-7.122,-7.216,-7.298,-7.369,-7.428,-7.475,
--7.509,-7.532,-7.544,-7.544,-7.534,-7.515,-7.488,-7.454,-7.416,-7.376,-7.337,-7.301,-7.270,-7.246,-7.231,-7.223,
--7.223,-7.227,-7.234,-7.241,-7.243,-7.238,-7.224,-7.198,-7.162,-7.116,-7.063,-7.008,-6.955,-6.911,-6.880,-6.868,
--6.879,-6.915,-6.975,-7.059,-7.164,-7.282,-7.410,-7.539,-7.662,-7.774,-7.870,-7.945,-7.998,-8.029,-8.041,-8.036,
--8.019,-7.994,-7.967,-7.940,-7.918,-7.901,-7.890,-7.884,-7.880,-7.875,-7.864,-7.846,-7.815,-7.771,-7.711,-7.636,
--7.546,-7.444,-7.333,-7.216,-7.096,-6.976,-6.860,-6.749,-6.644,-6.544,-6.449,-6.356,-6.264,-6.170,-6.070,-5.964,
--5.849,-5.724,-5.588,-5.442,-5.288,-5.128,-4.964,-4.799,-4.637,-4.480,-4.333,-4.197,-4.075,-3.968,-3.875,-3.797,
--3.732,-3.677,-3.630,-3.588,-3.546,-3.501,-3.452,-3.395,-3.330,-3.257,-3.178,-3.095,-3.013,-2.935,-2.866,-2.811,
--2.773,-2.754,-2.757,-2.780,-2.821,-2.876,-2.940,-3.006,-3.067,-3.116,-3.149,-3.159,-3.144,-3.104,-3.038,-2.951,
--2.847,-2.733,-2.613,-2.497,-2.388,-2.292,-2.213,-2.150,-2.104,-2.072,-2.050,-2.032,-2.014,-1.990,-1.955,-1.906,
--1.841,-1.759,-1.662,-1.553,-1.438,-1.320,-1.206,-1.101,-1.009,-.933,-.877,-.839,-.818,-.811,-.814,-.822,
--.830,-.834,-.828,-.809,-.777,-.731,-.673,-.604,-.529,-.451,-.376,-.308,-.249,-.203,-.170,-.152,
--.146,-.151,-.163,-.180,-.198,-.216,-.231,-.243,-.252,-.259,-.266,-.276,-.291,-.313,-.343,-.381,
--.425,-.473,-.519,-.558,-.585,-.594,-.579,-.537,-.466,-.366,-.239,-.092,.071,.240,.406,.560,
-.693,.800,.874,.915,.922,.899,.852,.788,.715,.642,.578,.528,.498,.490,.504,.539,
-.589,.651,.719,.785,.846,.898,.938,.966,.983,.993,.999,1.005,1.017,1.038,1.071,1.116,
-1.176,1.247,1.328,1.415,1.505,1.594,1.679,1.758,1.829,1.893,1.950,2.002,2.050,2.097,2.145,2.193,
-2.243,2.293,2.341,2.384,2.420,2.447,2.461,2.461,2.447,2.419,2.380,2.332,2.279,2.226,2.177,2.134,
-2.101,2.080,2.069,2.069,2.076,2.089,2.104,2.118,2.129,2.136,2.138,2.137,2.135,2.136,2.143,2.160,
-2.191,2.239,2.303,2.383,2.476,2.579,2.686,2.790,2.886,2.968,3.030,3.069,3.084,3.075,3.043,2.994,
-2.932,2.862,2.791,2.725,2.666,2.620,2.586,2.567,2.560,2.564,2.575,2.591,2.608,2.623,2.636,2.644,
-2.648,2.648,2.646,2.641,2.636,2.632,2.630,2.630,2.632,2.638,2.645,2.654,2.665,2.678,2.693,2.711,
-2.733,2.759,2.790,2.825,2.865,2.907,2.949,2.988,3.021,3.044,3.055,3.049,3.025,2.983,2.921,2.842,
-2.748,2.643,2.530,2.413,2.296,2.182,2.074,1.973,1.879,1.792,1.711,1.637,1.567,1.501,1.441,1.387,
-1.343,1.309,1.290,1.288,1.305,1.341,1.396,1.465,1.546,1.629,1.707,1.771,1.811,1.818,1.786,1.709,
-1.587,1.421,1.215,.979,.723,.460,.203,-.035,-.241,-.407,-.525,-.593,-.612,-.585,-.520,-.425,
--.312,-.191,-.071,.040,.135,.212,.270,.312,.341,.364,.386,.413,.449,.499,.563,.640,
-.729,.826,.926,1.024,1.116,1.198,1.268,1.326,1.371,1.405,1.429,1.447,1.460,1.468,1.470,1.465,
-1.449,1.418,1.366,1.288,1.182,1.043,.872,.671,.444,.197,-.059,-.314,-.559,-.783,-.975,-1.131,
--1.244,-1.313,-1.340,-1.329,-1.285,-1.217,-1.133,-1.043,-.954,-.875,-.810,-.764,-.740,-.740,-.763,-.809,
--.877,-.966,-1.075,-1.201,-1.344,-1.501,-1.670,-1.848,-2.031,-2.215,-2.395,-2.564,-2.718,-2.852,-2.961,-3.043,
--3.097,-3.124,-3.126,-3.108,-3.076,-3.035,-2.994,-2.957,-2.931,-2.919,-2.924,-2.947,-2.985,-3.037,-3.098,-3.164,
--3.232,-3.298,-3.358,-3.412,-3.459,-3.499,-3.535,-3.569,-3.604,-3.644,-3.690,-3.746,-3.812,-3.888,-3.976,-4.072,
--4.178,-4.290,-4.407,-4.527,-4.650,-4.774,-4.899,-5.024,-5.148,-5.273,-5.396,-5.519,-5.640,-5.758,-5.874,-5.987,
--6.096,-6.201,-6.303,-6.402,-6.499,-6.594,-6.688,-6.783,-6.878,-6.975,-7.072,-7.171,-7.270,-7.369,-7.466,-7.561,
--7.653,-7.739,-7.820,-7.894,-7.961,-8.019,-8.066,-8.102,-8.123,-8.129,-8.117,-8.084,-8.029,-7.949,-7.845,-7.714,
--7.560,-7.384,-7.189,-6.979,-6.761,-6.539,-6.320,-6.108,-5.909,-5.726,-5.562,-5.419,-5.296,-5.193,-5.108,-5.039,
--4.983,-4.939,-4.904,-4.880,-4.866,-4.865,-4.878,-4.911,-4.965,-5.045,-5.152,-5.289,-5.454,-5.647,-5.862,-6.095,
--6.338,-6.582,-6.820,-7.041,-7.240,-7.408,-7.542,-7.639,-7.700,-7.727,-7.725,-7.702,-7.665,-7.622,-7.582,-7.553,
--7.540,-7.547,-7.577,-7.630,-7.702,-7.791,-7.890,-7.994,-8.097,-8.193,-8.278,-8.347,-8.399,-8.433,-8.450,-8.450,
--8.437,-8.413,-8.381,-8.342,-8.300,-8.255,-8.208,-8.160,-8.112,-8.066,-8.022,-7.984,-7.954,-7.936,-7.934,-7.953,
--7.995,-8.064,-8.161,-8.286,-8.438,-8.612,-8.803,-9.003,-9.205,-9.399,-9.577,-9.733,-9.859,-9.954,-10.014,-10.042,
--10.041,-10.016,-9.973,-9.920,-9.865,-9.813,-9.772,-9.744,-9.732,-9.736,-9.754,-9.783,-9.817,-9.852,-9.882,-9.902,
--9.908,-9.896,-9.864,-9.811,-9.739,-9.649,-9.545,-9.428,-9.303,-9.172,-9.039,-8.906,-8.774,-8.644,-8.515,-8.388,
--8.261,-8.133,-8.003,-7.870,-7.734,-7.595,-7.453,-7.309,-7.165,-7.023,-6.884,-6.751,-6.625,-6.507,-6.399,-6.300,
--6.211,-6.130,-6.057,-5.989,-5.923,-5.859,-5.792,-5.721,-5.644,-5.557,-5.459,-5.348,-5.223,-5.083,-4.927,-4.755,
--4.568,-4.367,-4.153,-3.929,-3.697,-3.461,-3.225,-2.992,-2.766,-2.553,-2.355,-2.176,-2.019,-1.885,-1.774,-1.688,
--1.623,-1.578,-1.549,-1.531,-1.521,-1.514,-1.505,-1.491,-1.467,-1.431,-1.381,-1.315,-1.233,-1.133,-1.018,-.886,
--.739,-.577,-.402,-.213,-.012,.200,.421,.650,.886,1.125,1.365,1.604,1.840,2.072,2.297,2.516,
-2.731,2.942,3.154,3.370,3.595,3.835,4.094,4.376,4.686,5.025,5.393,5.789,6.209,6.649,7.103,7.563,
-8.024,8.479,8.922,9.348,9.756,10.144,10.511,10.860,11.192,11.510,11.816,12.112,12.398,12.674,12.939,13.189,
-13.422,13.635,13.824,13.989,14.128,14.242,14.334,14.408,14.470,14.527,14.584,14.649,14.726,14.820,14.933,15.064,
-15.212,15.373,15.542,15.713,15.881,16.041,16.188,16.319,16.433,16.532,16.616,16.690,16.757,16.822,16.890,16.963,
-17.045,17.137,17.241,17.356,17.480,17.613,17.753,17.897,18.046,18.197,18.350,18.505,18.661,18.820,18.980,19.143,
-19.307,19.472,19.637,19.802,19.965,20.128,20.291,20.454,20.621,20.793,20.974,21.168,21.378,21.606,21.857,22.130,
-22.427,22.747,23.087,23.446,23.818,24.200,24.587,24.975,25.360,25.737,26.106,26.462,26.805,27.133,27.447,27.746,
-28.030,28.299,28.554,28.796,29.025,29.241,29.447,29.643,29.830,30.011,30.186,30.357,30.526,30.692,30.855,31.015,
-31.171,31.320,31.461,31.591,31.708,31.812,31.901,31.975,32.038,32.091,32.137,32.183,32.231,32.288,32.358,32.445,
-32.550,32.675,32.821,32.985,33.166,33.360,33.564,33.773,33.985,34.198,34.409,34.617,34.824,35.031,35.238,35.449,
-35.664,35.886,36.114,36.348,36.587,36.829,37.071,37.310,37.543,37.768,37.983,38.186,38.378,38.559,38.732,38.898,
-39.062,39.227,39.394,39.567,39.748,39.935,40.129,40.329,40.532,40.737,40.940,41.139,41.334,41.522,41.705,41.884,
-42.060,42.237,42.418,42.606,42.804,43.014,43.238,43.478,43.732,44.000,44.279,44.566,44.857,45.148,45.434,45.710,
-45.970,46.210,46.422,46.602,46.743,46.841,46.889,46.883,46.818,46.690,46.498,46.241,45.919,45.537,45.100,44.614,
-44.090,43.537,42.969,42.397,41.835,41.294,40.785,40.317,39.898,39.533,39.222,38.966,38.762,38.605,38.489,38.407,
-38.350,38.310,38.279,38.250,38.217,38.177,38.126,38.064,37.992,37.912,37.829,37.748,37.676,37.620,37.587,37.583,
-37.615,37.686,37.801,37.961,38.165,38.409,38.690,38.999,39.329,39.671,40.013,40.348,40.665,40.958,41.220,41.450,
-41.645,41.809,41.945,42.060,42.162,42.258,42.358,42.468,42.595,42.741,42.910,43.099,43.304,43.519,43.736,43.947,
-44.143,44.313,44.452,44.553,44.614,44.633,44.612,44.556,44.469,44.359,44.233,44.098,43.961,43.826,43.697,43.575,
-43.461,43.352,43.247,43.142,43.036,42.926,42.812,42.695,42.578,42.465,42.362,42.275,42.212,42.176,42.174,42.208,
-42.277,42.380,42.511,42.663,42.825,42.988,43.140,43.270,43.370,43.211,43.329,43.420,43.477,43.499,43.487,43.443,
-43.375,43.290,43.198,43.108,43.028,42.965,42.924,42.905,42.908,42.927,42.956,42.987,43.012,43.021,43.007,42.967,
-42.898,42.801,42.679,42.539,42.389,42.236,42.088,41.952,41.832,41.728,41.639,41.559,41.483,41.401,41.306,41.191,
-41.051,40.886,40.697,40.493,40.283,40.082,39.904,39.765,39.676,39.649,39.688,39.792,39.953,40.157,40.386,40.615,
-40.820,40.974,41.052,41.035,40.908,40.662,40.296,39.819,39.242,38.585,37.870,37.123,36.368,35.629,34.926,34.274,
-33.683,33.159,32.700,32.302,31.958,31.657,31.388,31.141,30.907,30.677,30.447,30.213,29.977,29.738,29.500,29.264,
-29.035,28.814,28.601,28.398,28.202,28.010,27.819,27.627,27.428,27.220,27.001,26.770,26.527,26.273,26.012,25.744,
-25.474,25.205,24.938,24.676,24.419,24.167,23.919,23.673,23.425,23.174,22.917,22.652,22.378,22.096,21.805,21.509,
-21.209,20.910,20.616,20.330,20.055,19.795,19.551,19.323,19.113,18.917,18.735,18.562,18.397,18.234,18.072,17.905,
-17.734,17.554,17.365,17.167,16.960,16.744,16.521,16.293,16.060,15.824,15.587,15.350,15.115,14.881,14.648,14.417,
-14.187,13.958,13.728,13.496,13.262,13.024,12.783,12.538,12.291,12.041,11.792,11.544,11.301,11.065,10.840,10.626,
-10.427,10.243,10.075,9.922,9.782,9.654,9.533,9.416,9.299,9.179,9.054,8.920,8.776,8.624,8.463,8.295,
-8.124,7.952,7.782,7.617,7.459,7.307,7.164,7.026,6.893,6.761,6.629,6.493,6.352,6.203,6.048,5.887,
-5.722,5.556,5.393,5.237,5.091,4.957,4.838,4.732,4.639,4.556,4.479,4.403,4.323,4.236,4.137,4.023,
-3.895,3.753,3.600,3.439,3.274,3.112,2.958,2.814,2.685,2.573,2.478,2.399,2.335,2.281,2.236,2.196,
-2.159,2.123,2.088,2.052,2.018,1.987,1.960,1.937,1.919,1.904,1.891,1.876,1.854,1.821,1.770,1.698,
-1.600,1.473,1.318,1.134,.924,.692,.445,.187,-.075,-.336,-.590,-.835,-1.069,-1.289,-1.497,-1.695,
--1.883,-2.065,-2.241,-2.415,-2.586,-2.754,-2.919,-3.080,-3.236,-3.383,-3.521,-3.649,-3.764,-3.867,-3.957,-4.036,
--4.103,-4.160,-4.209,-4.251,-4.288,-4.322,-4.353,-4.384,-4.417,-4.452,-4.491,-4.536,-4.587,-4.644,-4.709,-4.781,
--4.859,-4.942,-5.028,-5.116,-5.204,-5.291,-5.376,-5.459,-5.540,-5.620,-5.700,-5.783,-5.869,-5.960,-6.057,-6.159,
--6.265,-6.374,-6.483,-6.587,-6.683,-6.767,-6.836,-6.888,-6.921,-6.936,-6.935,-6.921,-6.897,-6.870,-6.843,-6.823,
--6.813,-6.816,-6.835,-6.870,-6.920,-6.984,-7.058,-7.139,-7.224,-7.308,-7.388,-7.462,-7.527,-7.583,-7.627,-7.661,
--7.683,-7.695,-7.696,-7.689,-7.672,-7.648,-7.618,-7.583,-7.546,-7.507,-7.470,-7.436,-7.408,-7.387,-7.375,-7.370,
--7.374,-7.383,-7.395,-7.406,-7.413,-7.412,-7.400,-7.374,-7.333,-7.278,-7.210,-7.134,-7.053,-6.975,-6.904,-6.847,
--6.810,-6.795,-6.806,-6.843,-6.904,-6.986,-7.084,-7.192,-7.304,-7.414,-7.517,-7.608,-7.685,-7.747,-7.796,-7.832,
--7.859,-7.881,-7.902,-7.923,-7.947,-7.976,-8.009,-8.043,-8.077,-8.106,-8.128,-8.137,-8.132,-8.109,-8.068,-8.008,
--7.931,-7.839,-7.735,-7.623,-7.507,-7.389,-7.273,-7.160,-7.053,-6.951,-6.854,-6.761,-6.671,-6.581,-6.489,-6.394,
--6.293,-6.184,-6.067,-5.939,-5.800,-5.650,-5.488,-5.316,-5.134,-4.945,-4.751,-4.556,-4.364,-4.180,-4.009,-3.855,
--3.724,-3.618,-3.539,-3.488,-3.464,-3.465,-3.485,-3.521,-3.565,-3.611,-3.654,-3.689,-3.712,-3.722,-3.718,-3.702,
--3.678,-3.650,-3.621,-3.596,-3.580,-3.573,-3.577,-3.591,-3.611,-3.633,-3.652,-3.662,-3.659,-3.638,-3.596,-3.532,
--3.447,-3.345,-3.230,-3.108,-2.985,-2.869,-2.766,-2.679,-2.611,-2.562,-2.532,-2.516,-2.507,-2.501,-2.490,-2.466,
--2.425,-2.361,-2.273,-2.161,-2.027,-1.876,-1.714,-1.549,-1.388,-1.241,-1.112,-1.009,-.934,-.889,-.872,-.880,
--.909,-.950,-.997,-1.043,-1.079,-1.101,-1.104,-1.086,-1.046,-.987,-.912,-.826,-.736,-.647,-.566,-.497,
--.446,-.414,-.402,-.410,-.434,-.473,-.522,-.577,-.634,-.689,-.740,-.785,-.822,-.853,-.877,-.894,
--.906,-.912,-.913,-.906,-.891,-.865,-.826,-.773,-.703,-.617,-.516,-.400,-.274,-.143,-.011,.116,
-.231,.330,.409,.466,.500,.513,.508,.490,.465,.439,.417,.405,.407,.424,.458,.505,
-.564,.630,.698,.764,.823,.874,.915,.946,.969,.988,1.006,1.028,1.058,1.098,1.150,1.214,
-1.290,1.372,1.459,1.544,1.623,1.692,1.749,1.791,1.820,1.839,1.850,1.860,1.875,1.899,1.937,1.992,
-2.065,2.154,2.255,2.363,2.469,2.567,2.648,2.704,2.731,2.727,2.689,2.622,2.531,2.422,2.305,2.187,
-2.079,1.987,1.917,1.871,1.850,1.852,1.872,1.904,1.940,1.976,2.005,2.022,2.026,2.017,1.998,1.972,
-1.947,1.927,1.919,1.927,1.956,2.006,2.076,2.162,2.259,2.361,2.460,2.548,2.620,2.671,2.699,2.701,
-2.682,2.644,2.592,2.533,2.474,2.419,2.374,2.343,2.326,2.324,2.336,2.357,2.386,2.417,2.448,2.475,
-2.497,2.512,2.520,2.522,2.520,2.516,2.512,2.509,2.510,2.515,2.525,2.539,2.558,2.579,2.603,2.628,
-2.654,2.680,2.705,2.728,2.750,2.769,2.784,2.794,2.798,2.795,2.783,2.762,2.731,2.690,2.641,2.585,
-2.525,2.464,2.403,2.347,2.297,2.255,2.222,2.197,2.179,2.166,2.155,2.144,2.131,2.113,2.090,2.061,
-2.029,1.996,1.965,1.938,1.920,1.912,1.916,1.931,1.954,1.982,2.008,2.025,2.026,2.003,1.950,1.860,
-1.733,1.569,1.370,1.143,.897,.644,.396,.166,-.035,-.196,-.309,-.370,-.378,-.335,-.248,-.126,
-.022,.183,.346,.500,.637,.751,.839,.900,.936,.952,.953,.947,.939,.934,.937,.951,
-.975,1.007,1.047,1.089,1.129,1.165,1.193,1.211,1.218,1.216,1.205,1.188,1.167,1.143,1.117,1.089,
-1.056,1.017,.968,.903,.820,.714,.585,.433,.260,.070,-.129,-.329,-.523,-.700,-.852,-.974,
--1.061,-1.111,-1.125,-1.107,-1.063,-1.000,-.927,-.852,-.783,-.728,-.691,-.676,-.687,-.722,-.782,-.866,
--.971,-1.096,-1.239,-1.397,-1.569,-1.753,-1.945,-2.141,-2.338,-2.531,-2.713,-2.878,-3.020,-3.135,-3.217,-3.265,
--3.279,-3.261,-3.216,-3.151,-3.075,-2.995,-2.923,-2.866,-2.830,-2.819,-2.836,-2.879,-2.945,-3.027,-3.120,-3.215,
--3.305,-3.386,-3.452,-3.502,-3.536,-3.558,-3.571,-3.580,-3.592,-3.611,-3.643,-3.691,-3.757,-3.840,-3.939,-4.051,
--4.172,-4.300,-4.430,-4.560,-4.686,-4.809,-4.928,-5.044,-5.157,-5.270,-5.383,-5.496,-5.612,-5.728,-5.845,-5.961,
--6.075,-6.186,-6.292,-6.394,-6.491,-6.584,-6.675,-6.764,-6.854,-6.946,-7.042,-7.142,-7.247,-7.357,-7.470,-7.585,
--7.699,-7.811,-7.917,-8.017,-8.107,-8.185,-8.250,-8.301,-8.335,-8.352,-8.351,-8.331,-8.292,-8.232,-8.153,-8.053,
--7.933,-7.795,-7.638,-7.466,-7.281,-7.084,-6.878,-6.666,-6.451,-6.236,-6.022,-5.813,-5.611,-5.417,-5.235,-5.066,
--4.914,-4.781,-4.669,-4.583,-4.525,-4.498,-4.504,-4.547,-4.626,-4.743,-4.897,-5.086,-5.308,-5.557,-5.829,-6.119,
--6.418,-6.722,-7.021,-7.309,-7.581,-7.830,-8.052,-8.243,-8.403,-8.530,-8.627,-8.696,-8.741,-8.768,-8.781,-8.788,
--8.793,-8.801,-8.817,-8.843,-8.881,-8.931,-8.991,-9.058,-9.130,-9.201,-9.266,-9.323,-9.367,-9.396,-9.407,-9.400,
--9.374,-9.332,-9.274,-9.202,-9.120,-9.029,-8.932,-8.831,-8.729,-8.627,-8.529,-8.436,-8.353,-8.282,-8.227,-8.192,
--8.181,-8.198,-8.244,-8.322,-8.431,-8.570,-8.736,-8.923,-9.126,-9.338,-9.550,-9.755,-9.945,-10.114,-10.258,-10.375,
--10.462,-10.521,-10.555,-10.567,-10.564,-10.551,-10.533,-10.515,-10.502,-10.496,-10.499,-10.510,-10.530,-10.554,-10.581,-10.606,
--10.626,-10.638,-10.637,-10.621,-10.590,-10.543,-10.479,-10.401,-10.310,-10.208,-10.098,-9.982,-9.863,-9.743,-9.622,-9.501,
--9.380,-9.257,-9.133,-9.004,-8.870,-8.728,-8.578,-8.419,-8.251,-8.076,-7.894,-7.710,-7.525,-7.345,-7.171,-7.008,
--6.858,-6.724,-6.607,-6.507,-6.424,-6.355,-6.298,-6.249,-6.205,-6.161,-6.113,-6.056,-5.988,-5.903,-5.801,-5.678,
--5.534,-5.367,-5.179,-4.970,-4.742,-4.498,-4.242,-3.978,-3.710,-3.444,-3.184,-2.936,-2.704,-2.493,-2.305,-2.143,
--2.007,-1.897,-1.811,-1.747,-1.699,-1.665,-1.637,-1.612,-1.582,-1.543,-1.491,-1.421,-1.329,-1.213,-1.071,-.901,
--.703,-.477,-.224,.055,.358,.680,1.018,1.366,1.717,2.065,2.401,2.717,3.006,3.261,3.476,3.649,
-3.779,3.869,3.923,3.952,3.965,3.977,4.002,4.054,4.148,4.295,4.505,4.782,5.128,5.540,6.009,6.527,
-7.080,7.653,8.232,8.803,9.355,9.878,10.368,10.823,11.243,11.633,11.999,12.348,12.685,13.015,13.343,13.668,
-13.990,14.303,14.603,14.883,15.136,15.355,15.538,15.681,15.785,15.854,15.894,15.913,15.919,15.920,15.926,15.942,
-15.973,16.020,16.083,16.159,16.242,16.326,16.406,16.475,16.529,16.565,16.581,16.579,16.562,16.534,16.500,16.465,
-16.435,16.415,16.408,16.418,16.445,16.491,16.555,16.638,16.738,16.854,16.987,17.136,17.300,17.479,17.673,17.879,
-18.095,18.320,18.550,18.781,19.011,19.237,19.456,19.667,19.872,20.071,20.268,20.468,20.676,20.897,21.138,21.401,
-21.691,22.009,22.356,22.729,23.124,23.536,23.961,24.390,24.818,25.240,25.650,26.046,26.423,26.782,27.122,27.444,
-27.748,28.037,28.311,28.572,28.821,29.058,29.284,29.499,29.704,29.898,30.082,30.257,30.423,30.581,30.731,30.875,
-31.013,31.144,31.269,31.387,31.498,31.601,31.697,31.786,31.868,31.946,32.021,32.097,32.176,32.263,32.359,32.469,
-32.593,32.734,32.891,33.064,33.251,33.449,33.656,33.868,34.084,34.301,34.517,34.731,34.944,35.155,35.367,35.580,
-35.795,36.013,36.235,36.459,36.685,36.909,37.131,37.347,37.554,37.751,37.936,38.110,38.272,38.426,38.573,38.719,
-38.867,39.021,39.185,39.362,39.553,39.758,39.976,40.205,40.442,40.681,40.919,41.151,41.374,41.586,41.784,41.969,
-42.142,42.307,42.465,42.622,42.781,42.946,43.122,43.311,43.514,43.733,43.968,44.216,44.477,44.746,45.021,45.295,
-45.566,45.826,46.070,46.290,46.481,46.635,46.745,46.804,46.808,46.751,46.630,46.446,46.200,45.895,45.540,45.143,
-44.714,44.268,43.816,43.373,42.951,42.561,42.211,41.907,41.653,41.447,41.289,41.171,41.086,41.027,40.984,40.948,
-40.911,40.866,40.808,40.733,40.641,40.533,40.409,40.273,40.130,39.985,39.843,39.708,39.587,39.483,39.401,39.345,
-39.318,39.322,39.361,39.435,39.544,39.690,39.869,40.079,40.318,40.579,40.859,41.149,41.443,41.735,42.018,42.287,
-42.535,42.761,42.963,43.141,43.295,43.430,43.549,43.655,43.754,43.848,43.942,44.037,44.133,44.229,44.323,44.413,
-44.494,44.562,44.614,44.647,44.660,44.654,44.628,44.587,44.533,44.473,44.410,44.349,44.294,44.247,44.209,44.179,
-44.154,44.132,44.106,44.072,44.024,43.957,43.868,43.756,43.622,43.468,43.300,43.125,42.951,42.787,42.644,42.528,
-42.448,42.408,42.410,42.453,42.534,42.646,42.780,42.926,43.074,43.211,43.166,43.297,43.421,43.528,43.612,43.666,
-43.688,43.680,43.643,43.583,43.508,43.425,43.343,43.270,43.211,43.169,43.145,43.138,43.141,43.149,43.153,43.145,
-43.118,43.067,42.987,42.880,42.747,42.595,42.429,42.259,42.093,41.938,41.799,41.678,41.575,41.486,41.405,41.325,
-41.239,41.139,41.021,40.884,40.730,40.565,40.400,40.246,40.118,40.029,39.991,40.013,40.096,40.240,40.433,40.662,
-40.906,41.141,41.340,41.480,41.535,41.488,41.326,41.042,40.638,40.123,39.511,38.823,38.082,37.314,36.543,35.791,
-35.077,34.416,33.815,33.279,32.807,32.394,32.032,31.711,31.421,31.152,30.896,30.646,30.399,30.153,29.906,29.661,
-29.419,29.184,28.956,28.736,28.526,28.322,28.123,27.926,27.726,27.519,27.301,27.070,26.824,26.563,26.286,25.997,
-25.699,25.395,25.090,24.788,24.491,24.203,23.925,23.658,23.400,23.149,22.904,22.661,22.418,22.172,21.922,21.666,
-21.404,21.139,20.871,20.603,20.339,20.080,19.830,19.591,19.365,19.151,18.950,18.761,18.581,18.407,18.237,18.068,
-17.895,17.717,17.530,17.334,17.125,16.905,16.673,16.431,16.179,15.921,15.658,15.393,15.129,14.868,14.611,14.362,
-14.119,13.885,13.657,13.435,13.217,13.001,12.784,12.565,12.342,12.114,11.880,11.640,11.397,11.152,10.909,10.671,
-10.441,10.222,10.017,9.829,9.657,9.501,9.360,9.231,9.111,8.994,8.878,8.759,8.633,8.498,8.353,8.197,
-8.033,7.863,7.688,7.512,7.337,7.166,7.001,6.842,6.689,6.541,6.397,6.253,6.109,5.962,5.812,5.658,
-5.500,5.341,5.182,5.027,4.876,4.733,4.598,4.471,4.353,4.239,4.128,4.015,3.896,3.768,3.629,3.476,
-3.311,3.137,2.957,2.777,2.605,2.448,2.312,2.204,2.127,2.082,2.070,2.086,2.124,2.178,2.238,2.295,
-2.341,2.370,2.376,2.357,2.312,2.243,2.153,2.048,1.932,1.810,1.686,1.562,1.440,1.319,1.195,1.067,
-.929,.778,.610,.423,.217,-.008,-.249,-.504,-.767,-1.034,-1.299,-1.560,-1.811,-2.051,-2.277,-2.490,
--2.689,-2.876,-3.051,-3.214,-3.368,-3.512,-3.647,-3.773,-3.889,-3.995,-4.092,-4.180,-4.259,-4.330,-4.395,-4.455,
--4.510,-4.562,-4.611,-4.658,-4.702,-4.743,-4.781,-4.815,-4.846,-4.873,-4.899,-4.924,-4.950,-4.978,-5.010,-5.048,
--5.092,-5.142,-5.197,-5.254,-5.313,-5.370,-5.424,-5.472,-5.514,-5.551,-5.583,-5.613,-5.644,-5.681,-5.726,-5.783,
--5.855,-5.941,-6.043,-6.157,-6.280,-6.407,-6.535,-6.656,-6.767,-6.864,-6.944,-7.007,-7.053,-7.084,-7.104,-7.116,
--7.123,-7.131,-7.140,-7.155,-7.175,-7.200,-7.229,-7.261,-7.293,-7.323,-7.350,-7.370,-7.384,-7.392,-7.393,-7.388,
--7.378,-7.365,-7.348,-7.330,-7.310,-7.289,-7.267,-7.244,-7.220,-7.198,-7.176,-7.157,-7.142,-7.133,-7.129,-7.134,
--7.145,-7.163,-7.187,-7.213,-7.239,-7.263,-7.281,-7.290,-7.288,-7.275,-7.251,-7.218,-7.178,-7.136,-7.096,-7.064,
--7.043,-7.037,-7.049,-7.081,-7.132,-7.200,-7.283,-7.376,-7.475,-7.576,-7.674,-7.767,-7.852,-7.928,-7.996,-8.055,
--8.108,-8.157,-8.203,-8.247,-8.290,-8.332,-8.371,-8.404,-8.430,-8.445,-8.446,-8.432,-8.402,-8.356,-8.296,-8.224,
--8.144,-8.060,-7.978,-7.900,-7.830,-7.769,-7.719,-7.678,-7.645,-7.616,-7.587,-7.554,-7.512,-7.460,-7.393,-7.310,
--7.212,-7.097,-6.968,-6.825,-6.669,-6.503,-6.326,-6.140,-5.946,-5.742,-5.531,-5.314,-5.092,-4.870,-4.652,-4.443,
--4.250,-4.078,-3.934,-3.823,-3.749,-3.712,-3.713,-3.747,-3.808,-3.891,-3.985,-4.082,-4.174,-4.252,-4.312,-4.350,
--4.365,-4.360,-4.337,-4.302,-4.261,-4.220,-4.183,-4.155,-4.137,-4.128,-4.127,-4.128,-4.127,-4.119,-4.096,-4.055,
--3.994,-3.911,-3.807,-3.686,-3.553,-3.414,-3.277,-3.148,-3.033,-2.936,-2.860,-2.806,-2.770,-2.749,-2.736,-2.726,
--2.709,-2.680,-2.633,-2.563,-2.468,-2.348,-2.206,-2.047,-1.878,-1.705,-1.539,-1.387,-1.256,-1.152,-1.080,-1.040,
--1.032,-1.053,-1.096,-1.155,-1.222,-1.289,-1.348,-1.391,-1.414,-1.413,-1.389,-1.340,-1.273,-1.190,-1.100,-1.008,
--.921,-.846,-.789,-.752,-.737,-.745,-.774,-.821,-.881,-.949,-1.021,-1.090,-1.154,-1.207,-1.247,-1.272,
--1.282,-1.276,-1.255,-1.219,-1.171,-1.110,-1.039,-.959,-.871,-.776,-.676,-.573,-.469,-.366,-.268,-.177,
--.095,-.025,.033,.076,.107,.125,.134,.137,.137,.138,.145,.159,.184,.220,.268,.324,
-.387,.454,.521,.585,.642,.692,.734,.769,.799,.828,.858,.896,.943,1.003,1.076,1.161,
-1.257,1.358,1.460,1.556,1.640,1.707,1.751,1.772,1.769,1.745,1.705,1.656,1.606,1.564,1.537,1.533,
-1.555,1.606,1.685,1.787,1.905,2.031,2.154,2.265,2.353,2.411,2.434,2.421,2.373,2.295,2.193,2.078,
-1.958,1.845,1.748,1.673,1.624,1.604,1.610,1.638,1.681,1.732,1.783,1.826,1.854,1.865,1.857,1.831,
-1.792,1.745,1.698,1.657,1.630,1.622,1.636,1.674,1.734,1.812,1.902,1.998,2.093,2.179,2.251,2.305,
-2.339,2.354,2.351,2.336,2.311,2.284,2.258,2.237,2.225,2.223,2.230,2.245,2.266,2.290,2.313,2.334,
-2.352,2.365,2.374,2.380,2.387,2.396,2.410,2.430,2.458,2.494,2.537,2.585,2.635,2.684,2.729,2.767,
-2.796,2.814,2.821,2.816,2.800,2.775,2.742,2.703,2.660,2.614,2.567,2.519,2.471,2.424,2.378,2.334,
-2.293,2.257,2.226,2.201,2.185,2.176,2.176,2.183,2.197,2.214,2.234,2.254,2.270,2.281,2.285,2.281,
-2.271,2.254,2.234,2.212,2.191,2.173,2.161,2.155,2.154,2.157,2.161,2.161,2.153,2.131,2.090,2.027,
-1.938,1.824,1.685,1.525,1.350,1.168,.988,.818,.669,.549,.466,.423,.423,.466,.548,.663,
-.803,.958,1.119,1.275,1.418,1.541,1.637,1.705,1.744,1.755,1.743,1.712,1.668,1.617,1.564,1.514,
-1.469,1.430,1.397,1.369,1.345,1.320,1.294,1.263,1.228,1.186,1.140,1.089,1.036,.981,.926,.870,
-.814,.754,.688,.614,.527,.425,.306,.170,.017,-.149,-.322,-.497,-.665,-.819,-.951,-1.055,
--1.128,-1.166,-1.172,-1.148,-1.101,-1.037,-.965,-.893,-.831,-.785,-.760,-.760,-.787,-.842,-.922,-1.026,
--1.150,-1.294,-1.452,-1.624,-1.808,-2.000,-2.200,-2.403,-2.606,-2.804,-2.992,-3.163,-3.311,-3.429,-3.513,-3.560,
--3.567,-3.538,-3.477,-3.390,-3.288,-3.180,-3.077,-2.990,-2.926,-2.893,-2.892,-2.924,-2.984,-3.067,-3.165,-3.268,
--3.368,-3.457,-3.529,-3.582,-3.616,-3.632,-3.635,-3.631,-3.628,-3.631,-3.647,-3.679,-3.729,-3.798,-3.884,-3.983,
--4.091,-4.204,-4.318,-4.430,-4.538,-4.642,-4.743,-4.843,-4.944,-5.049,-5.161,-5.281,-5.408,-5.542,-5.681,-5.823,
--5.963,-6.099,-6.228,-6.349,-6.460,-6.562,-6.656,-6.746,-6.833,-6.922,-7.016,-7.116,-7.225,-7.342,-7.468,-7.599,
--7.734,-7.869,-8.001,-8.126,-8.240,-8.342,-8.427,-8.496,-8.546,-8.577,-8.590,-8.585,-8.563,-8.523,-8.468,-8.397,
--8.311,-8.212,-8.098,-7.970,-7.827,-7.669,-7.495,-7.305,-7.098,-6.873,-6.631,-6.374,-6.103,-5.823,-5.537,-5.253,
--4.978,-4.721,-4.490,-4.294,-4.142,-4.041,-3.996,-4.011,-4.086,-4.221,-4.412,-4.654,-4.938,-5.257,-5.601,-5.963,
--6.334,-6.706,-7.073,-7.429,-7.770,-8.093,-8.396,-8.676,-8.932,-9.163,-9.368,-9.547,-9.699,-9.825,-9.926,-10.004,
--10.063,-10.104,-10.132,-10.152,-10.167,-10.180,-10.196,-10.214,-10.236,-10.262,-10.288,-10.313,-10.332,-10.342,-10.340,-10.322,
--10.288,-10.234,-10.163,-10.075,-9.973,-9.860,-9.740,-9.618,-9.496,-9.379,-9.270,-9.172,-9.088,-9.019,-8.968,-8.936,
--8.924,-8.933,-8.964,-9.018,-9.094,-9.193,-9.312,-9.450,-9.603,-9.770,-9.945,-10.124,-10.303,-10.477,-10.642,-10.796,
--10.935,-11.059,-11.165,-11.255,-11.329,-11.390,-11.438,-11.477,-11.508,-11.534,-11.556,-11.576,-11.594,-11.611,-11.626,-11.639,
--11.649,-11.654,-11.652,-11.642,-11.623,-11.592,-11.550,-11.496,-11.430,-11.352,-11.264,-11.168,-11.065,-10.957,-10.844,-10.729,
--10.612,-10.491,-10.367,-10.237,-10.100,-9.953,-9.793,-9.621,-9.434,-9.232,-9.018,-8.793,-8.561,-8.326,-8.094,-7.869,
--7.655,-7.458,-7.281,-7.124,-6.990,-6.877,-6.783,-6.707,-6.644,-6.590,-6.542,-6.496,-6.448,-6.395,-6.334,-6.261,
--6.176,-6.076,-5.959,-5.823,-5.668,-5.492,-5.295,-5.078,-4.843,-4.591,-4.326,-4.053,-3.777,-3.502,-3.236,-2.982,
--2.745,-2.528,-2.334,-2.161,-2.010,-1.876,-1.756,-1.644,-1.536,-1.424,-1.303,-1.169,-1.016,-.840,-.640,-.412,
--.156,.129,.443,.785,1.154,1.548,1.963,2.396,2.840,3.288,3.732,4.161,4.564,4.929,5.246,5.504,
-5.695,5.815,5.861,5.838,5.753,5.619,5.453,5.274,5.106,4.970,4.888,4.878,4.955,5.130,5.404,5.775,
-6.235,6.769,7.360,7.989,8.634,9.277,9.901,10.494,11.046,11.556,12.025,12.456,12.857,13.236,13.602,13.961,
-14.316,14.670,15.019,15.360,15.684,15.983,16.251,16.480,16.666,16.807,16.907,16.970,17.005,17.021,17.028,17.038,
-17.059,17.096,17.153,17.229,17.321,17.422,17.524,17.618,17.694,17.746,17.768,17.757,17.711,17.634,17.530,17.405,
-17.266,17.120,16.974,16.835,16.708,16.596,16.503,16.430,16.381,16.355,16.356,16.384,16.441,16.530,16.651,16.805,
-16.991,17.207,17.450,17.716,17.998,18.289,18.585,18.877,19.162,19.436,19.698,19.947,20.188,20.424,20.660,20.903,
-21.159,21.432,21.726,22.043,22.383,22.744,23.123,23.515,23.915,24.317,24.717,25.110,25.493,25.865,26.225,26.573,
-26.911,27.239,27.559,27.871,28.177,28.475,28.766,29.046,29.316,29.572,29.813,30.038,30.246,30.436,30.610,30.768,
-30.911,31.042,31.163,31.275,31.380,31.480,31.578,31.674,31.770,31.868,31.970,32.078,32.193,32.316,32.450,32.595,
-32.751,32.919,33.098,33.287,33.483,33.684,33.889,34.094,34.298,34.499,34.697,34.892,35.083,35.273,35.463,35.654,
-35.849,36.047,36.249,36.455,36.662,36.869,37.072,37.268,37.455,37.630,37.791,37.938,38.073,38.198,38.317,38.435,
-38.557,38.690,38.838,39.005,39.194,39.406,39.640,39.892,40.159,40.434,40.711,40.982,41.241,41.484,41.706,41.905,
-42.081,42.236,42.373,42.496,42.612,42.726,42.843,42.969,43.107,43.262,43.435,43.626,43.834,44.059,44.297,44.545,
-44.798,45.050,45.296,45.530,45.745,45.933,46.088,46.202,46.271,46.290,46.255,46.167,46.027,45.839,45.611,45.352,
-45.073,44.785,44.503,44.237,43.998,43.794,43.631,43.510,43.430,43.385,43.368,43.370,43.379,43.384,43.375,43.344,
-43.283,43.191,43.066,42.911,42.731,42.532,42.324,42.113,41.909,41.719,41.548,41.401,41.279,41.185,41.116,41.072,
-41.051,41.051,41.070,41.108,41.165,41.240,41.336,41.454,41.595,41.761,41.951,42.165,42.401,42.655,42.922,43.197,
-43.473,43.744,44.003,44.245,44.464,44.656,44.821,44.955,45.061,45.138,45.191,45.220,45.231,45.224,45.205,45.173,
-45.133,45.086,45.032,44.974,44.913,44.851,44.788,44.729,44.674,44.627,44.588,44.561,44.545,44.542,44.551,44.568,
-44.593,44.619,44.643,44.660,44.664,44.650,44.614,44.552,44.464,44.349,44.208,44.046,43.867,43.678,43.486,43.301,
-43.130,42.981,42.862,42.777,42.731,42.724,42.756,42.823,42.919,43.037,43.166,43.373,43.457,43.555,43.657,43.753,
-43.835,43.895,43.926,43.926,43.896,43.839,43.761,43.670,43.577,43.491,43.418,43.366,43.336,43.328,43.338,43.358,
-43.380,43.392,43.386,43.352,43.285,43.183,43.046,42.879,42.689,42.487,42.282,42.084,41.901,41.738,41.597,41.476,
-41.371,41.275,41.180,41.079,40.966,40.839,40.698,40.547,40.395,40.253,40.133,40.048,40.009,40.022,40.091,40.213,
-40.380,40.576,40.784,40.980,41.141,41.244,41.267,41.194,41.013,40.721,40.320,39.817,39.228,38.571,37.867,37.139,
-36.408,35.694,35.013,34.376,33.791,33.260,32.784,32.357,31.974,31.626,31.305,31.005,30.719,30.443,30.173,29.908,
-29.648,29.393,29.146,28.906,28.674,28.450,28.232,28.017,27.802,27.583,27.357,27.119,26.866,26.597,26.312,26.010,
-25.696,25.371,25.040,24.709,24.383,24.065,23.759,23.468,23.194,22.937,22.695,22.466,22.248,22.038,21.831,21.626,
-21.419,21.210,20.997,20.781,20.562,20.341,20.121,19.902,19.686,19.475,19.270,19.070,18.876,18.687,18.501,18.318,
-18.134,17.949,17.759,17.562,17.358,17.144,16.920,16.684,16.437,16.180,15.914,15.641,15.363,15.084,14.805,14.531,
-14.263,14.004,13.754,13.514,13.284,13.061,12.845,12.631,12.418,12.202,11.982,11.756,11.523,11.285,11.044,10.800,
-10.560,10.325,10.099,9.887,9.689,9.508,9.344,9.195,9.059,8.933,8.813,8.694,8.574,8.448,8.313,8.169,
-8.015,7.852,7.680,7.503,7.323,7.143,6.964,6.788,6.616,6.448,6.284,6.122,5.962,5.801,5.639,5.474,
-5.308,5.141,4.974,4.809,4.647,4.490,4.339,4.194,4.054,3.918,3.783,3.646,3.503,3.351,3.189,3.016,
-2.832,2.641,2.448,2.259,2.083,1.929,1.804,1.717,1.673,1.674,1.721,1.808,1.929,2.073,2.227,2.379,
-2.513,2.618,2.683,2.700,2.665,2.578,2.441,2.261,2.046,1.806,1.552,1.292,1.034,.785,.548,.325,
-.114,-.086,-.279,-.468,-.657,-.850,-1.047,-1.249,-1.456,-1.666,-1.877,-2.088,-2.295,-2.497,-2.692,-2.879,
--3.057,-3.225,-3.384,-3.533,-3.672,-3.799,-3.914,-4.016,-4.105,-4.181,-4.245,-4.298,-4.342,-4.380,-4.416,-4.453,
--4.493,-4.539,-4.593,-4.655,-4.723,-4.797,-4.873,-4.949,-5.022,-5.089,-5.149,-5.203,-5.249,-5.290,-5.327,-5.364,
--5.403,-5.445,-5.492,-5.543,-5.597,-5.652,-5.705,-5.754,-5.795,-5.828,-5.851,-5.866,-5.874,-5.879,-5.886,-5.898,
--5.921,-5.957,-6.010,-6.079,-6.165,-6.263,-6.372,-6.485,-6.599,-6.708,-6.808,-6.896,-6.972,-7.034,-7.083,-7.122,
--7.153,-7.179,-7.201,-7.221,-7.240,-7.258,-7.274,-7.287,-7.294,-7.294,-7.286,-7.270,-7.245,-7.214,-7.177,-7.136,
--7.095,-7.056,-7.019,-6.988,-6.962,-6.942,-6.927,-6.916,-6.908,-6.904,-6.901,-6.900,-6.901,-6.904,-6.911,-6.923,
--6.940,-6.962,-6.990,-7.023,-7.060,-7.099,-7.138,-7.175,-7.210,-7.240,-7.265,-7.287,-7.306,-7.325,-7.346,-7.372,
--7.406,-7.450,-7.506,-7.574,-7.654,-7.744,-7.841,-7.943,-8.047,-8.148,-8.245,-8.335,-8.417,-8.490,-8.555,-8.613,
--8.666,-8.713,-8.758,-8.799,-8.837,-8.870,-8.897,-8.914,-8.918,-8.907,-8.879,-8.834,-8.771,-8.692,-8.603,-8.507,
--8.412,-8.324,-8.250,-8.195,-8.163,-8.156,-8.174,-8.212,-8.267,-8.329,-8.392,-8.445,-8.481,-8.493,-8.474,-8.423,
--8.338,-8.222,-8.078,-7.910,-7.726,-7.531,-7.330,-7.127,-6.924,-6.724,-6.525,-6.328,-6.131,-5.933,-5.735,-5.538,
--5.344,-5.158,-4.985,-4.830,-4.700,-4.598,-4.529,-4.492,-4.488,-4.511,-4.558,-4.619,-4.687,-4.753,-4.811,-4.852,
--4.875,-4.876,-4.858,-4.823,-4.776,-4.723,-4.670,-4.622,-4.583,-4.556,-4.540,-4.533,-4.532,-4.531,-4.523,-4.503,
--4.465,-4.406,-4.323,-4.217,-4.091,-3.948,-3.795,-3.638,-3.485,-3.342,-3.215,-3.109,-3.024,-2.962,-2.920,-2.895,
--2.880,-2.870,-2.858,-2.838,-2.804,-2.753,-2.683,-2.592,-2.484,-2.360,-2.227,-2.089,-1.955,-1.829,-1.720,-1.630,
--1.564,-1.524,-1.509,-1.517,-1.543,-1.584,-1.632,-1.681,-1.725,-1.757,-1.773,-1.771,-1.748,-1.705,-1.645,-1.572,
--1.489,-1.404,-1.321,-1.246,-1.184,-1.138,-1.110,-1.101,-1.111,-1.136,-1.175,-1.222,-1.273,-1.324,-1.369,-1.406,
--1.429,-1.437,-1.429,-1.403,-1.360,-1.301,-1.227,-1.141,-1.046,-.945,-.840,-.735,-.632,-.534,-.443,-.362,
--.290,-.230,-.180,-.141,-.112,-.089,-.072,-.058,-.044,-.028,-.007,.019,.052,.093,.140,.192,
-.248,.305,.361,.413,.461,.503,.539,.569,.597,.625,.655,.691,.736,.793,.862,.944,
-1.037,1.137,1.240,1.341,1.434,1.512,1.571,1.607,1.617,1.601,1.561,1.502,1.429,1.350,1.272,1.204,
-1.152,1.122,1.119,1.143,1.192,1.265,1.354,1.453,1.553,1.648,1.728,1.789,1.826,1.838,1.826,1.793,
-1.743,1.682,1.618,1.558,1.507,1.469,1.448,1.443,1.454,1.478,1.509,1.543,1.574,1.599,1.613,1.616,
-1.607,1.589,1.563,1.536,1.511,1.493,1.486,1.492,1.513,1.547,1.593,1.647,1.704,1.762,1.815,1.861,
-1.898,1.926,1.945,1.958,1.967,1.977,1.988,2.004,2.026,2.054,2.085,2.119,2.151,2.179,2.201,2.214,
-2.218,2.215,2.207,2.197,2.189,2.189,2.201,2.226,2.267,2.324,2.394,2.474,2.558,2.641,2.717,2.779,
-2.824,2.848,2.850,2.830,2.790,2.734,2.666,2.590,2.513,2.438,2.368,2.305,2.252,2.207,2.171,2.142,
-2.119,2.099,2.083,2.068,2.055,2.043,2.033,2.023,2.016,2.010,2.005,2.002,1.999,1.997,1.994,1.990,
-1.986,1.981,1.976,1.971,1.967,1.966,1.967,1.972,1.979,1.988,1.997,2.005,2.009,2.007,1.997,1.977,
-1.945,1.902,1.847,1.783,1.712,1.638,1.565,1.498,1.441,1.399,1.375,1.373,1.394,1.439,1.506,1.593,
-1.696,1.810,1.930,2.050,2.163,2.265,2.351,2.418,2.464,2.488,2.490,2.473,2.439,2.392,2.334,2.270,
-2.201,2.129,2.057,1.984,1.909,1.833,1.753,1.670,1.583,1.492,1.397,1.300,1.202,1.104,1.008,.914,
-.822,.732,.641,.547,.447,.338,.217,.083,-.064,-.222,-.389,-.560,-.729,-.888,-1.032,-1.155,
--1.250,-1.317,-1.354,-1.364,-1.350,-1.318,-1.277,-1.234,-1.198,-1.175,-1.172,-1.191,-1.236,-1.307,-1.401,-1.518,
--1.652,-1.803,-1.965,-2.137,-2.317,-2.503,-2.694,-2.887,-3.080,-3.270,-3.453,-3.622,-3.773,-3.898,-3.992,-4.050,
--4.069,-4.049,-3.993,-3.907,-3.797,-3.675,-3.550,-3.435,-3.339,-3.270,-3.233,-3.229,-3.258,-3.314,-3.391,-3.479,
--3.569,-3.653,-3.724,-3.777,-3.810,-3.824,-3.822,-3.809,-3.791,-3.774,-3.764,-3.765,-3.779,-3.807,-3.847,-3.897,
--3.953,-4.012,-4.072,-4.132,-4.191,-4.252,-4.317,-4.390,-4.476,-4.578,-4.699,-4.841,-5.001,-5.179,-5.369,-5.565,
--5.762,-5.953,-6.134,-6.300,-6.449,-6.580,-6.696,-6.800,-6.895,-6.988,-7.081,-7.180,-7.288,-7.405,-7.531,-7.667,
--7.808,-7.952,-8.094,-8.232,-8.361,-8.479,-8.583,-8.671,-8.743,-8.798,-8.835,-8.856,-8.861,-8.849,-8.822,-8.779,
--8.722,-8.651,-8.565,-8.465,-8.349,-8.217,-8.066,-7.895,-7.701,-7.481,-7.234,-6.958,-6.654,-6.323,-5.971,-5.604,
--5.232,-4.866,-4.521,-4.210,-3.948,-3.748,-3.621,-3.574,-3.613,-3.738,-3.944,-4.223,-4.565,-4.957,-5.383,-5.831,
--6.286,-6.738,-7.177,-7.596,-7.992,-8.363,-8.709,-9.031,-9.330,-9.608,-9.865,-10.100,-10.313,-10.502,-10.666,-10.803,
--10.913,-10.996,-11.055,-11.093,-11.114,-11.123,-11.125,-11.124,-11.126,-11.131,-11.142,-11.156,-11.171,-11.184,-11.190,-11.186,
--11.166,-11.128,-11.072,-10.996,-10.903,-10.797,-10.682,-10.564,-10.447,-10.338,-10.241,-10.160,-10.097,-10.054,-10.031,-10.027,
--10.042,-10.072,-10.117,-10.174,-10.243,-10.321,-10.409,-10.504,-10.607,-10.716,-10.832,-10.955,-11.082,-11.213,-11.347,-11.484,
--11.620,-11.755,-11.888,-12.017,-12.140,-12.255,-12.363,-12.460,-12.547,-12.623,-12.688,-12.740,-12.782,-12.814,-12.836,-12.849,
--12.855,-12.853,-12.845,-12.830,-12.808,-12.779,-12.742,-12.696,-12.640,-12.575,-12.498,-12.412,-12.317,-12.213,-12.102,-11.985,
--11.862,-11.734,-11.600,-11.459,-11.309,-11.149,-10.977,-10.790,-10.588,-10.370,-10.138,-9.894,-9.642,-9.386,-9.131,-8.883,
--8.648,-8.428,-8.227,-8.048,-7.888,-7.748,-7.625,-7.515,-7.415,-7.321,-7.231,-7.142,-7.054,-6.965,-6.878,-6.792,
--6.707,-6.624,-6.541,-6.457,-6.368,-6.270,-6.159,-6.030,-5.878,-5.701,-5.497,-5.267,-5.012,-4.738,-4.450,-4.154,
--3.857,-3.566,-3.286,-3.021,-2.774,-2.543,-2.328,-2.123,-1.924,-1.726,-1.522,-1.308,-1.078,-.831,-.564,-.276,
-.032,.359,.704,1.067,1.446,1.841,2.252,2.679,3.122,3.580,4.048,4.523,4.997,5.460,5.899,6.302,
-6.653,6.939,7.148,7.269,7.299,7.238,7.092,6.875,6.605,6.307,6.006,5.732,5.513,5.374,5.337,5.416,
-5.617,5.942,6.380,6.918,7.533,8.204,8.903,9.608,10.296,10.952,11.562,12.121,12.628,13.089,13.509,13.899,
-14.266,14.620,14.966,15.305,15.637,15.958,16.262,16.543,16.794,17.010,17.190,17.333,17.445,17.532,17.602,17.667,
-17.736,17.817,17.916,18.036,18.175,18.329,18.490,18.649,18.794,18.916,19.004,19.052,19.057,19.016,18.933,18.812,
-18.659,18.482,18.290,18.089,17.885,17.683,17.488,17.301,17.124,16.961,16.813,16.683,16.576,16.498,16.452,16.445,
-16.483,16.568,16.703,16.886,17.115,17.383,17.684,18.008,18.345,18.686,19.022,19.345,19.652,19.940,20.210,20.464,
-20.707,20.944,21.182,21.425,21.679,21.947,22.232,22.533,22.850,23.181,23.524,23.877,24.237,24.603,24.973,25.346,
-25.723,26.102,26.483,26.867,27.251,27.633,28.012,28.383,28.744,29.090,29.418,29.726,30.010,30.270,30.504,30.714,
-30.902,31.068,31.216,31.350,31.473,31.588,31.698,31.806,31.916,32.029,32.148,32.275,32.412,32.559,32.716,32.886,
-33.065,33.255,33.452,33.655,33.860,34.066,34.268,34.465,34.653,34.833,35.002,35.161,35.312,35.457,35.598,35.739,
-35.882,36.029,36.183,36.345,36.512,36.685,36.860,37.035,37.205,37.366,37.517,37.655,37.780,37.893,37.996,38.094,
-38.193,38.299,38.417,38.555,38.716,38.904,39.120,39.362,39.627,39.909,40.201,40.496,40.784,41.059,41.312,41.541,
-41.740,41.911,42.054,42.174,42.275,42.365,42.449,42.536,42.631,42.740,42.866,43.013,43.182,43.373,43.582,43.809,
-44.047,44.293,44.540,44.783,45.013,45.224,45.409,45.562,45.676,45.747,45.774,45.757,45.696,45.599,45.473,45.328,
-45.176,45.029,44.900,44.801,44.741,44.724,44.754,44.828,44.939,45.077,45.228,45.378,45.510,45.610,45.664,45.662,
-45.600,45.475,45.291,45.057,44.783,44.482,44.170,43.862,43.570,43.307,43.081,42.898,42.760,42.664,42.609,42.588,
-42.595,42.623,42.668,42.725,42.790,42.863,42.945,43.037,43.143,43.265,43.407,43.570,43.756,43.964,44.190,44.431,
-44.681,44.932,45.178,45.410,45.621,45.806,45.958,46.075,46.156,46.200,46.210,46.188,46.139,46.068,45.980,45.881,
-45.775,45.667,45.561,45.460,45.367,45.282,45.209,45.147,45.096,45.057,45.028,45.010,45.001,44.999,45.004,45.012,
-45.023,45.034,45.043,45.048,45.047,45.039,45.021,44.992,44.951,44.897,44.829,44.747,44.650,44.539,44.414,44.279,
-44.135,43.986,43.838,43.695,43.564,43.452,43.363,43.302,43.273,43.276,43.311,43.373,43.723,43.720,43.749,43.802,
-43.870,43.942,44.008,44.057,44.082,44.078,44.045,43.984,43.904,43.813,43.722,43.642,43.583,43.549,43.546,43.569,
-43.615,43.672,43.730,43.773,43.790,43.770,43.704,43.591,43.430,43.230,42.999,42.750,42.496,42.251,42.023,41.822,
-41.650,41.505,41.382,41.275,41.173,41.067,40.949,40.815,40.662,40.495,40.321,40.149,39.991,39.861,39.768,39.722,
-39.725,39.777,39.871,39.994,40.130,40.259,40.362,40.418,40.408,40.319,40.141,39.870,39.508,39.062,38.543,37.966,
-37.348,36.707,36.058,35.417,34.797,34.206,33.651,33.135,32.658,32.218,31.812,31.435,31.083,30.752,30.437,30.138,
-29.850,29.574,29.308,29.051,28.802,28.561,28.325,28.092,27.858,27.622,27.378,27.124,26.858,26.577,26.281,25.970,
-25.647,25.314,24.974,24.633,24.296,23.966,23.649,23.346,23.060,22.793,22.543,22.311,22.093,21.888,21.693,21.505,
-21.322,21.142,20.964,20.786,20.608,20.429,20.250,20.070,19.889,19.706,19.521,19.334,19.144,18.950,18.753,18.552,
-18.348,18.140,17.930,17.717,17.501,17.283,17.061,16.835,16.604,16.368,16.125,15.876,15.621,15.360,15.095,14.828,
-14.560,14.294,14.032,13.775,13.525,13.282,13.045,12.813,12.584,12.357,12.129,11.899,11.666,11.429,11.189,10.948,
-10.708,10.472,10.244,10.025,9.819,9.627,9.448,9.284,9.132,8.989,8.853,8.720,8.587,8.452,8.311,8.164,
-8.009,7.848,7.682,7.511,7.337,7.162,6.987,6.813,6.639,6.465,6.291,6.116,5.939,5.759,5.576,5.390,
-5.202,5.013,4.826,4.642,4.464,4.294,4.131,3.978,3.832,3.693,3.557,3.422,3.284,3.140,2.987,2.824,
-2.651,2.470,2.286,2.105,1.934,1.783,1.659,1.572,1.527,1.530,1.581,1.678,1.815,1.982,2.167,2.354,
-2.528,2.674,2.776,2.822,2.805,2.721,2.569,2.353,2.082,1.768,1.421,1.057,.688,.326,-.020,-.343,
--.638,-.906,-1.145,-1.361,-1.555,-1.732,-1.897,-2.053,-2.202,-2.346,-2.487,-2.625,-2.761,-2.893,-3.022,-3.149,
--3.273,-3.394,-3.513,-3.628,-3.738,-3.842,-3.939,-4.025,-4.100,-4.162,-4.211,-4.246,-4.270,-4.286,-4.298,-4.310,
--4.328,-4.355,-4.395,-4.450,-4.521,-4.606,-4.703,-4.808,-4.915,-5.022,-5.122,-5.214,-5.296,-5.367,-5.430,-5.485,
--5.537,-5.588,-5.643,-5.702,-5.766,-5.836,-5.909,-5.983,-6.055,-6.121,-6.180,-6.229,-6.269,-6.300,-6.324,-6.346,
--6.367,-6.394,-6.427,-6.469,-6.522,-6.584,-6.653,-6.726,-6.800,-6.872,-6.937,-6.994,-7.042,-7.080,-7.109,-7.132,
--7.152,-7.169,-7.188,-7.209,-7.232,-7.258,-7.284,-7.309,-7.329,-7.343,-7.348,-7.343,-7.329,-7.304,-7.272,-7.234,
--7.194,-7.154,-7.118,-7.086,-7.061,-7.043,-7.032,-7.027,-7.028,-7.033,-7.041,-7.052,-7.065,-7.081,-7.101,-7.124,
--7.152,-7.185,-7.223,-7.265,-7.311,-7.360,-7.410,-7.459,-7.507,-7.552,-7.594,-7.635,-7.675,-7.715,-7.759,-7.808,
--7.864,-7.929,-8.003,-8.087,-8.178,-8.276,-8.378,-8.480,-8.580,-8.675,-8.761,-8.838,-8.906,-8.963,-9.011,-9.052,
--9.088,-9.121,-9.154,-9.186,-9.219,-9.253,-9.284,-9.312,-9.333,-9.344,-9.341,-9.324,-9.290,-9.241,-9.178,-9.106,
--9.029,-8.954,-8.887,-8.835,-8.803,-8.794,-8.810,-8.849,-8.908,-8.981,-9.058,-9.131,-9.190,-9.227,-9.233,-9.204,
--9.138,-9.035,-8.900,-8.737,-8.554,-8.361,-8.165,-7.974,-7.793,-7.627,-7.475,-7.337,-7.210,-7.090,-6.974,-6.857,
--6.738,-6.614,-6.487,-6.359,-6.234,-6.116,-6.009,-5.918,-5.845,-5.790,-5.753,-5.731,-5.719,-5.712,-5.705,-5.692,
--5.668,-5.633,-5.584,-5.522,-5.452,-5.377,-5.301,-5.231,-5.168,-5.117,-5.078,-5.051,-5.032,-5.019,-5.005,-4.984,
--4.953,-4.905,-4.838,-4.750,-4.641,-4.514,-4.372,-4.220,-4.064,-3.909,-3.763,-3.628,-3.511,-3.412,-3.333,-3.273,
--3.231,-3.204,-3.187,-3.177,-3.168,-3.156,-3.137,-3.109,-3.069,-3.015,-2.949,-2.871,-2.784,-2.691,-2.596,-2.502,
--2.413,-2.333,-2.264,-2.208,-2.167,-2.139,-2.123,-2.117,-2.118,-2.123,-2.127,-2.128,-2.122,-2.107,-2.083,-2.047,
--2.001,-1.947,-1.885,-1.820,-1.753,-1.688,-1.627,-1.574,-1.529,-1.495,-1.472,-1.459,-1.456,-1.461,-1.471,-1.485,
--1.498,-1.508,-1.512,-1.507,-1.491,-1.463,-1.421,-1.367,-1.301,-1.224,-1.138,-1.047,-.952,-.857,-.763,-.673,
--.587,-.508,-.434,-.367,-.304,-.246,-.192,-.139,-.088,-.039,.011,.059,.107,.153,.198,.239,
-.278,.312,.343,.369,.392,.411,.428,.443,.458,.474,.493,.516,.545,.580,.622,.672,
-.729,.793,.862,.934,1.008,1.079,1.144,1.201,1.247,1.278,1.293,1.290,1.271,1.237,1.189,1.132,
-1.069,1.006,.947,.899,.864,.847,.849,.871,.913,.972,1.044,1.124,1.207,1.286,1.357,1.414,
-1.454,1.475,1.476,1.458,1.425,1.379,1.326,1.270,1.216,1.168,1.130,1.105,1.092,1.093,1.107,1.131,
-1.164,1.203,1.247,1.292,1.338,1.382,1.423,1.461,1.493,1.518,1.537,1.547,1.549,1.543,1.528,1.507,
-1.482,1.456,1.433,1.416,1.410,1.418,1.441,1.481,1.536,1.604,1.682,1.763,1.841,1.912,1.969,2.010,
-2.032,2.036,2.026,2.005,1.980,1.957,1.944,1.946,1.966,2.008,2.069,2.147,2.237,2.332,2.423,2.503,
-2.566,2.606,2.620,2.608,2.571,2.514,2.442,2.360,2.277,2.197,2.126,2.068,2.023,1.993,1.975,1.968,
-1.966,1.968,1.970,1.968,1.961,1.947,1.926,1.900,1.869,1.836,1.802,1.769,1.739,1.714,1.694,1.681,
-1.675,1.675,1.681,1.692,1.707,1.726,1.747,1.769,1.789,1.808,1.824,1.837,1.845,1.849,1.848,1.845,
-1.840,1.834,1.829,1.827,1.829,1.836,1.848,1.868,1.894,1.926,1.964,2.006,2.053,2.103,2.156,2.210,
-2.266,2.323,2.380,2.437,2.494,2.549,2.603,2.653,2.700,2.742,2.778,2.808,2.830,2.844,2.850,2.847,
-2.834,2.811,2.778,2.732,2.674,2.602,2.517,2.417,2.304,2.178,2.040,1.894,1.742,1.588,1.433,1.282,
-1.136,.996,.863,.737,.614,.493,.371,.245,.113,-.026,-.174,-.327,-.484,-.641,-.794,-.936,
--1.065,-1.177,-1.270,-1.344,-1.400,-1.443,-1.477,-1.509,-1.544,-1.588,-1.648,-1.726,-1.824,-1.942,-2.080,-2.235,
--2.402,-2.579,-2.761,-2.945,-3.129,-3.312,-3.492,-3.668,-3.840,-4.006,-4.164,-4.311,-4.442,-4.553,-4.638,-4.693,
--4.714,-4.699,-4.648,-4.564,-4.454,-4.324,-4.186,-4.049,-3.923,-3.818,-3.740,-3.694,-3.681,-3.699,-3.742,-3.804,
--3.875,-3.947,-4.012,-4.065,-4.100,-4.116,-4.115,-4.098,-4.070,-4.035,-3.999,-3.964,-3.934,-3.909,-3.890,-3.875,
--3.864,-3.854,-3.845,-3.839,-3.837,-3.845,-3.867,-3.909,-3.976,-4.074,-4.204,-4.367,-4.561,-4.782,-5.023,-5.274,
--5.528,-5.776,-6.009,-6.221,-6.410,-6.575,-6.717,-6.840,-6.949,-7.050,-7.149,-7.250,-7.358,-7.474,-7.599,-7.731,
--7.868,-8.008,-8.146,-8.281,-8.409,-8.530,-8.641,-8.742,-8.834,-8.916,-8.987,-9.047,-9.095,-9.129,-9.147,-9.147,
--9.129,-9.090,-9.031,-8.950,-8.850,-8.728,-8.587,-8.424,-8.239,-8.029,-7.793,-7.526,-7.227,-6.895,-6.530,-6.137,
--5.724,-5.299,-4.877,-4.475,-4.111,-3.803,-3.569,-3.422,-3.375,-3.433,-3.597,-3.860,-4.212,-4.638,-5.120,-5.639,
--6.173,-6.706,-7.222,-7.709,-8.160,-8.571,-8.941,-9.272,-9.569,-9.836,-10.077,-10.296,-10.496,-10.676,-10.837,-10.978,
--11.098,-11.196,-11.275,-11.334,-11.378,-11.412,-11.439,-11.465,-11.496,-11.533,-11.579,-11.633,-11.694,-11.759,-11.821,-11.875,
--11.918,-11.943,-11.948,-11.933,-11.898,-11.845,-11.780,-11.707,-11.633,-11.563,-11.501,-11.452,-11.418,-11.399,-11.395,-11.405,
--11.427,-11.457,-11.494,-11.536,-11.582,-11.630,-11.682,-11.737,-11.798,-11.864,-11.937,-12.019,-12.109,-12.209,-12.317,-12.434,
--12.557,-12.687,-12.822,-12.958,-13.096,-13.231,-13.362,-13.487,-13.603,-13.707,-13.799,-13.877,-13.940,-13.988,-14.022,-14.042,
--14.051,-14.049,-14.039,-14.020,-13.995,-13.964,-13.926,-13.881,-13.827,-13.764,-13.692,-13.609,-13.517,-13.414,-13.302,-13.183,
--13.056,-12.923,-12.783,-12.637,-12.482,-12.316,-12.138,-11.947,-11.739,-11.516,-11.277,-11.027,-10.768,-10.506,-10.247,-9.997,
--9.762,-9.547,-9.355,-9.185,-9.037,-8.907,-8.790,-8.679,-8.569,-8.454,-8.330,-8.195,-8.050,-7.898,-7.741,-7.587,
--7.441,-7.307,-7.190,-7.090,-7.006,-6.933,-6.867,-6.798,-6.718,-6.620,-6.495,-6.340,-6.152,-5.932,-5.683,-5.412,
--5.127,-4.834,-4.543,-4.259,-3.988,-3.730,-3.486,-3.251,-3.021,-2.790,-2.550,-2.296,-2.024,-1.730,-1.414,-1.078,
--.726,-.362,.009,.382,.753,1.119,1.482,1.842,2.204,2.572,2.952,3.348,3.763,4.196,4.643,5.097,
-5.547,5.977,6.371,6.711,6.980,7.165,7.255,7.248,7.147,6.963,6.715,6.426,6.127,5.849,5.624,5.481,
-5.445,5.532,5.752,6.105,6.580,7.162,7.826,8.546,9.291,10.034,10.752,11.423,12.036,12.585,13.069,13.494,
-13.871,14.210,14.525,14.824,15.117,15.407,15.696,15.980,16.256,16.516,16.756,16.971,17.160,17.321,17.459,17.580,
-17.691,17.800,17.913,18.036,18.173,18.322,18.482,18.645,18.804,18.951,19.077,19.175,19.240,19.270,19.265,19.228,
-19.164,19.079,18.978,18.868,18.752,18.632,18.509,18.381,18.246,18.101,17.944,17.777,17.600,17.418,17.239,17.072,
-16.928,16.819,16.754,16.742,16.791,16.902,17.074,17.302,17.579,17.894,18.234,18.587,18.941,19.287,19.615,19.923,
-20.206,20.467,20.709,20.936,21.156,21.375,21.599,21.834,22.084,22.354,22.645,22.958,23.293,23.649,24.024,24.418,
-24.827,25.249,25.681,26.121,26.565,27.009,27.449,27.882,28.303,28.708,29.094,29.458,29.798,30.112,30.400,30.662,
-30.900,31.115,31.310,31.488,31.651,31.802,31.944,32.080,32.213,32.345,32.479,32.617,32.760,32.911,33.070,33.239,
-33.417,33.604,33.799,33.998,34.200,34.402,34.598,34.787,34.965,35.129,35.278,35.411,35.530,35.636,35.731,35.821,
-35.908,35.998,36.093,36.198,36.314,36.442,36.581,36.729,36.883,37.039,37.192,37.339,37.476,37.601,37.714,37.814,
-37.907,37.994,38.083,38.180,38.291,38.421,38.576,38.757,38.966,39.201,39.458,39.730,40.012,40.295,40.572,40.835,
-41.079,41.299,41.495,41.667,41.816,41.949,42.069,42.184,42.300,42.423,42.558,42.709,42.878,43.068,43.276,43.503,
-43.743,43.994,44.249,44.503,44.749,44.980,45.188,45.367,45.510,45.614,45.674,45.691,45.668,45.609,45.523,45.421,
-45.318,45.227,45.162,45.137,45.163,45.246,45.389,45.587,45.834,46.114,46.411,46.704,46.974,47.199,47.362,47.449,
-47.452,47.369,47.203,46.963,46.664,46.322,45.956,45.587,45.233,44.908,44.626,44.395,44.217,44.093,44.019,43.990,
-43.999,44.036,44.095,44.171,44.258,44.354,44.457,44.569,44.692,44.826,44.975,45.138,45.317,45.508,45.710,45.917,
-46.125,46.326,46.513,46.681,46.823,46.933,47.010,47.051,47.057,47.029,46.971,46.887,46.784,46.666,46.541,46.414,
-46.289,46.172,46.066,45.973,45.894,45.830,45.781,45.745,45.720,45.706,45.699,45.698,45.699,45.700,45.700,45.696,
-45.686,45.669,45.646,45.616,45.581,45.541,45.500,45.458,45.418,45.381,45.347,45.316,45.286,45.254,45.217,45.169,
-45.108,45.029,44.931,44.813,44.677,44.527,44.370,44.213,44.066,43.936,43.832,43.760,43.723,44.236,44.151,44.101,
-44.085,44.095,44.123,44.157,44.188,44.204,44.198,44.167,44.112,44.036,43.947,43.857,43.776,43.716,43.685,43.688,
-43.725,43.792,43.879,43.973,44.059,44.122,44.147,44.123,44.044,43.908,43.719,43.487,43.224,42.946,42.667,42.403,
-42.163,41.955,41.781,41.636,41.515,41.407,41.301,41.186,41.053,40.897,40.717,40.515,40.299,40.079,39.867,39.675,
-39.515,39.394,39.316,39.281,39.284,39.314,39.358,39.401,39.425,39.416,39.359,39.243,39.062,38.811,38.493,38.112,
-37.675,37.193,36.677,36.139,35.589,35.038,34.493,33.963,33.451,32.962,32.496,32.056,31.639,31.247,30.877,30.528,
-30.198,29.886,29.590,29.307,29.036,28.773,28.516,28.261,28.006,27.746,27.479,27.202,26.914,26.613,26.299,25.975,
-25.642,25.303,24.962,24.624,24.293,23.971,23.663,23.368,23.089,22.825,22.575,22.337,22.108,21.887,21.671,21.461,
-21.255,21.054,20.859,20.671,20.491,20.319,20.156,20.000,19.850,19.702,19.554,19.402,19.241,19.069,18.884,18.684,
-18.469,18.242,18.005,17.760,17.512,17.264,17.018,16.777,16.542,16.312,16.087,15.865,15.645,15.424,15.200,14.973,
-14.742,14.508,14.270,14.030,13.788,13.547,13.305,13.064,12.823,12.581,12.338,12.092,11.844,11.594,11.342,11.091,
-10.842,10.598,10.362,10.136,9.923,9.722,9.535,9.359,9.194,9.036,8.883,8.731,8.579,8.424,8.266,8.105,
-7.940,7.775,7.609,7.445,7.284,7.126,6.970,6.816,6.660,6.502,6.338,6.166,5.984,5.791,5.589,5.377,
-5.161,4.942,4.724,4.514,4.313,4.125,3.952,3.795,3.652,3.521,3.400,3.283,3.167,3.047,2.920,2.784,
-2.638,2.484,2.324,2.163,2.008,1.865,1.742,1.647,1.585,1.562,1.579,1.637,1.730,1.851,1.992,2.140,
-2.281,2.400,2.484,2.520,2.499,2.414,2.262,2.045,1.769,1.441,1.075,.682,.277,-.128,-.520,-.890,
--1.231,-1.539,-1.813,-2.052,-2.261,-2.443,-2.601,-2.741,-2.865,-2.978,-3.080,-3.175,-3.262,-3.344,-3.420,-3.492,
--3.561,-3.629,-3.696,-3.764,-3.832,-3.901,-3.970,-4.036,-4.098,-4.153,-4.198,-4.234,-4.259,-4.275,-4.283,-4.288,
--4.293,-4.304,-4.325,-4.358,-4.408,-4.475,-4.558,-4.654,-4.760,-4.870,-4.982,-5.089,-5.190,-5.281,-5.363,-5.437,
--5.505,-5.571,-5.637,-5.707,-5.783,-5.866,-5.956,-6.052,-6.150,-6.249,-6.345,-6.435,-6.519,-6.594,-6.661,-6.722,
--6.779,-6.835,-6.891,-6.950,-7.012,-7.076,-7.141,-7.205,-7.265,-7.317,-7.360,-7.390,-7.409,-7.416,-7.413,-7.405,
--7.393,-7.383,-7.377,-7.379,-7.390,-7.409,-7.437,-7.471,-7.508,-7.545,-7.578,-7.606,-7.626,-7.638,-7.642,-7.639,
--7.631,-7.620,-7.608,-7.597,-7.588,-7.582,-7.579,-7.579,-7.582,-7.587,-7.595,-7.605,-7.620,-7.639,-7.665,-7.697,
--7.737,-7.786,-7.842,-7.904,-7.971,-8.040,-8.108,-8.173,-8.233,-8.285,-8.329,-8.366,-8.396,-8.422,-8.447,-8.472,
--8.501,-8.535,-8.576,-8.625,-8.681,-8.742,-8.806,-8.872,-8.935,-8.994,-9.047,-9.092,-9.129,-9.158,-9.180,-9.198,
--9.214,-9.231,-9.252,-9.279,-9.314,-9.358,-9.411,-9.472,-9.540,-9.612,-9.683,-9.751,-9.812,-9.861,-9.896,-9.916,
--9.921,-9.910,-9.887,-9.854,-9.816,-9.777,-9.741,-9.710,-9.687,-9.671,-9.660,-9.652,-9.641,-9.624,-9.594,-9.548,
--9.482,-9.395,-9.288,-9.164,-9.027,-8.884,-8.740,-8.603,-8.479,-8.371,-8.281,-8.211,-8.156,-8.115,-8.082,-8.051,
--8.017,-7.976,-7.925,-7.862,-7.789,-7.706,-7.618,-7.526,-7.435,-7.347,-7.263,-7.184,-7.109,-7.036,-6.962,-6.885,
--6.801,-6.709,-6.608,-6.500,-6.387,-6.271,-6.156,-6.046,-5.945,-5.854,-5.776,-5.710,-5.655,-5.607,-5.564,-5.520,
--5.472,-5.417,-5.350,-5.271,-5.179,-5.075,-4.961,-4.838,-4.712,-4.584,-4.458,-4.336,-4.223,-4.118,-4.023,-3.939,
--3.866,-3.803,-3.749,-3.703,-3.664,-3.630,-3.600,-3.571,-3.541,-3.510,-3.476,-3.437,-3.393,-3.343,-3.288,-3.227,
--3.162,-3.093,-3.023,-2.953,-2.884,-2.818,-2.755,-2.697,-2.644,-2.596,-2.554,-2.517,-2.484,-2.456,-2.431,-2.408,
--2.386,-2.363,-2.340,-2.313,-2.283,-2.248,-2.208,-2.163,-2.112,-2.057,-2.000,-1.942,-1.885,-1.831,-1.782,-1.740,
--1.704,-1.676,-1.653,-1.636,-1.621,-1.607,-1.590,-1.569,-1.542,-1.506,-1.462,-1.410,-1.349,-1.281,-1.206,-1.126,
--1.042,-.954,-.862,-.768,-.671,-.571,-.470,-.367,-.264,-.164,-.068,.020,.099,.166,.219,.259,
-.285,.298,.301,.296,.288,.279,.272,.270,.275,.287,.305,.329,.357,.386,.415,.442,
-.466,.487,.507,.525,.546,.571,.602,.640,.687,.742,.802,.864,.925,.980,1.023,1.053,
-1.064,1.056,1.029,.986,.932,.871,.811,.759,.723,.706,.714,.746,.802,.878,.967,1.061,
-1.151,1.228,1.283,1.311,1.308,1.273,1.208,1.118,1.010,.894,.779,.675,.590,.532,.506,.512,
-.552,.621,.714,.826,.948,1.072,1.191,1.298,1.387,1.454,1.495,1.509,1.496,1.459,1.401,1.326,
-1.241,1.151,1.065,.989,.930,.894,.884,.904,.952,1.027,1.123,1.235,1.354,1.473,1.582,1.676,
-1.749,1.798,1.823,1.827,1.814,1.792,1.768,1.749,1.742,1.750,1.778,1.823,1.885,1.957,2.033,2.106,
-2.169,2.217,2.244,2.249,2.231,2.194,2.140,2.077,2.010,1.944,1.885,1.837,1.801,1.780,1.771,1.771,
-1.779,1.790,1.801,1.809,1.811,1.806,1.794,1.775,1.751,1.724,1.695,1.667,1.642,1.622,1.609,1.602,
-1.602,1.610,1.625,1.646,1.670,1.698,1.726,1.753,1.777,1.796,1.810,1.816,1.816,1.809,1.798,1.785,
-1.772,1.762,1.759,1.765,1.782,1.811,1.852,1.905,1.966,2.033,2.103,2.171,2.234,2.289,2.335,2.368,
-2.391,2.404,2.409,2.409,2.408,2.409,2.416,2.431,2.456,2.492,2.541,2.600,2.669,2.746,2.826,2.907,
-2.985,3.056,3.116,3.161,3.187,3.190,3.168,3.119,3.043,2.938,2.807,2.652,2.477,2.287,2.087,1.883,
-1.680,1.483,1.296,1.121,.961,.814,.680,.556,.438,.323,.209,.093,-.027,-.151,-.278,-.407,
--.536,-.663,-.786,-.905,-1.020,-1.131,-1.242,-1.357,-1.477,-1.609,-1.755,-1.918,-2.099,-2.297,-2.511,-2.738,
--2.972,-3.210,-3.446,-3.675,-3.894,-4.099,-4.290,-4.466,-4.627,-4.773,-4.905,-5.021,-5.122,-5.204,-5.266,-5.303,
--5.314,-5.296,-5.248,-5.170,-5.066,-4.940,-4.800,-4.655,-4.512,-4.381,-4.271,-4.186,-4.131,-4.107,-4.110,-4.138,
--4.183,-4.237,-4.294,-4.345,-4.385,-4.411,-4.418,-4.409,-4.384,-4.345,-4.296,-4.239,-4.178,-4.114,-4.048,-3.982,
--3.915,-3.848,-3.784,-3.726,-3.677,-3.643,-3.632,-3.648,-3.698,-3.787,-3.917,-4.088,-4.296,-4.536,-4.800,-5.076,
--5.355,-5.627,-5.882,-6.113,-6.319,-6.497,-6.650,-6.783,-6.902,-7.012,-7.122,-7.235,-7.354,-7.482,-7.617,-7.757,
--7.899,-8.038,-8.173,-8.300,-8.418,-8.528,-8.630,-8.728,-8.823,-8.917,-9.011,-9.104,-9.194,-9.277,-9.349,-9.404,
--9.438,-9.446,-9.427,-9.378,-9.300,-9.195,-9.066,-8.915,-8.743,-8.551,-8.338,-8.102,-7.839,-7.545,-7.218,-6.854,
--6.457,-6.030,-5.584,-5.133,-4.694,-4.287,-3.935,-3.658,-3.474,-3.399,-3.441,-3.601,-3.874,-4.250,-4.710,-5.233,
--5.796,-6.374,-6.947,-7.493,-8.000,-8.457,-8.859,-9.205,-9.500,-9.747,-9.955,-10.131,-10.280,-10.410,-10.523,-10.623,
--10.712,-10.792,-10.864,-10.930,-10.994,-11.059,-11.128,-11.206,-11.295,-11.398,-11.514,-11.644,-11.783,-11.927,-12.071,-12.208,
--12.333,-12.442,-12.531,-12.599,-12.648,-12.680,-12.699,-12.711,-12.720,-12.731,-12.747,-12.769,-12.798,-12.830,-12.865,-12.898,
--12.927,-12.948,-12.960,-12.964,-12.960,-12.953,-12.945,-12.942,-12.948,-12.968,-13.004,-13.060,-13.135,-13.229,-13.339,-13.464,
--13.600,-13.742,-13.889,-14.036,-14.180,-14.321,-14.455,-14.581,-14.698,-14.804,-14.898,-14.979,-15.046,-15.098,-15.136,-15.161,
--15.172,-15.171,-15.160,-15.139,-15.110,-15.073,-15.029,-14.977,-14.917,-14.847,-14.766,-14.675,-14.574,-14.462,-14.341,-14.213,
--14.079,-13.941,-13.800,-13.656,-13.508,-13.353,-13.189,-13.014,-12.824,-12.617,-12.392,-12.151,-11.898,-11.636,-11.374,-11.119,
--10.878,-10.659,-10.466,-10.302,-10.164,-10.051,-9.955,-9.867,-9.779,-9.681,-9.566,-9.430,-9.271,-9.091,-8.895,-8.692,
--8.490,-8.300,-8.129,-7.984,-7.867,-7.778,-7.712,-7.661,-7.616,-7.565,-7.499,-7.408,-7.288,-7.137,-6.954,-6.746,
--6.519,-6.281,-6.043,-5.810,-5.590,-5.384,-5.192,-5.010,-4.833,-4.650,-4.455,-4.238,-3.993,-3.716,-3.405,-3.064,
--2.696,-2.311,-1.917,-1.524,-1.142,-.778,-.437,-.119,.176,.454,.724,.995,1.276,1.578,1.907,2.268,
-2.661,3.080,3.516,3.955,4.382,4.778,5.125,5.408,5.615,5.740,5.785,5.756,5.670,5.549,5.419,5.309,
-5.249,5.266,5.380,5.607,5.953,6.414,6.979,7.629,8.338,9.079,9.822,10.540,11.212,11.820,12.356,12.818,
-13.211,13.545,13.834,14.093,14.336,14.576,14.822,15.078,15.345,15.617,15.890,16.156,16.405,16.633,16.835,17.008,
-17.155,17.278,17.382,17.474,17.559,17.642,17.725,17.809,17.894,17.976,18.054,18.124,18.183,18.233,18.272,18.304,
-18.334,18.365,18.402,18.447,18.503,18.567,18.636,18.702,18.757,18.792,18.796,18.762,18.684,18.561,18.396,18.195,
-17.971,17.737,17.510,17.308,17.148,17.043,17.004,17.038,17.146,17.324,17.566,17.860,18.193,18.550,18.917,19.283,
-19.636,19.969,20.280,20.567,20.833,21.082,21.322,21.559,21.802,22.057,22.331,22.629,22.953,23.304,23.683,24.088,
-24.515,24.959,25.417,25.883,26.352,26.817,27.275,27.721,28.151,28.563,28.954,29.323,29.671,29.996,30.301,30.586,
-30.853,31.104,31.340,31.562,31.772,31.970,32.158,32.335,32.503,32.664,32.818,32.967,33.114,33.261,33.410,33.562,
-33.720,33.885,34.056,34.233,34.414,34.597,34.779,34.956,35.125,35.282,35.425,35.553,35.663,35.758,35.838,35.907,
-35.968,36.027,36.086,36.152,36.228,36.317,36.420,36.539,36.672,36.816,36.968,37.122,37.276,37.422,37.558,37.681,
-37.790,37.884,37.968,38.044,38.120,38.200,38.292,38.402,38.535,38.695,38.883,39.099,39.339,39.599,39.873,40.156,
-40.439,40.717,40.985,41.240,41.481,41.707,41.921,42.125,42.324,42.520,42.719,42.923,43.135,43.355,43.586,43.824,
-44.070,44.320,44.570,44.817,45.056,45.281,45.486,45.666,45.814,45.927,45.999,46.029,46.018,45.969,45.889,45.787,
-45.677,45.572,45.489,45.443,45.446,45.510,45.640,45.835,46.090,46.394,46.729,47.075,47.410,47.710,47.955,48.128,
-48.217,48.216,48.125,47.953,47.712,47.420,47.095,46.759,46.430,46.127,45.861,45.643,45.477,45.364,45.300,45.281,
-45.300,45.349,45.421,45.511,45.616,45.731,45.857,45.994,46.141,46.299,46.469,46.648,46.834,47.025,47.213,47.395,
-47.564,47.712,47.836,47.929,47.989,48.014,48.003,47.958,47.883,47.782,47.660,47.525,47.382,47.238,47.097,46.966,
-46.846,46.741,46.652,46.579,46.521,46.478,46.446,46.425,46.412,46.405,46.404,46.405,46.408,46.412,46.414,46.412,
-46.406,46.394,46.374,46.346,46.310,46.265,46.215,46.161,46.106,46.053,46.006,45.967,45.936,45.913,45.897,45.884,
-45.868,45.843,45.803,45.741,45.655,45.541,45.400,45.236,45.055,44.867,44.681,44.507,44.357,44.236,45.036,44.900,
-44.787,44.698,44.630,44.579,44.538,44.499,44.454,44.397,44.324,44.236,44.136,44.030,43.929,43.842,43.780,43.751,
-43.761,43.810,43.896,44.008,44.134,44.259,44.366,44.439,44.464,44.432,44.340,44.189,43.985,43.742,43.472,43.192,
-42.917,42.659,42.429,42.230,42.062,41.919,41.794,41.676,41.554,41.418,41.260,41.077,40.869,40.639,40.395,40.145,
-39.902,39.674,39.469,39.295,39.153,39.042,38.956,38.890,38.832,38.772,38.699,38.603,38.475,38.310,38.102,37.851,
-37.557,37.223,36.853,36.451,36.023,35.575,35.113,34.642,34.167,33.692,33.223,32.762,32.312,31.876,31.456,31.053,
-30.667,30.299,29.948,29.612,29.290,28.979,28.676,28.378,28.081,27.783,27.481,27.172,26.856,26.531,26.199,25.862,
-25.522,25.182,24.847,24.522,24.208,23.910,23.628,23.363,23.114,22.877,22.649,22.427,22.205,21.980,21.750,21.514,
-21.272,21.029,20.787,20.551,20.327,20.119,19.930,19.762,19.613,19.480,19.359,19.242,19.122,18.991,18.844,18.674,
-18.480,18.261,18.020,17.760,17.487,17.208,16.930,16.658,16.397,16.149,15.916,15.697,15.489,15.289,15.095,14.903,
-14.710,14.514,14.313,14.108,13.899,13.684,13.466,13.244,13.017,12.785,12.548,12.304,12.053,11.797,11.535,11.269,
-11.003,10.740,10.483,10.236,10.000,9.779,9.571,9.378,9.195,9.021,8.852,8.685,8.517,8.347,8.174,7.999,
-7.823,7.650,7.482,7.322,7.171,7.031,6.898,6.772,6.647,6.518,6.380,6.228,6.059,5.870,5.661,5.435,
-5.195,4.948,4.701,4.461,4.233,4.025,3.838,3.674,3.531,3.408,3.299,3.198,3.099,2.997,2.888,2.769,
-2.639,2.499,2.352,2.203,2.058,1.924,1.805,1.707,1.636,1.593,1.579,1.592,1.630,1.686,1.752,1.821,
-1.883,1.926,1.942,1.923,1.859,1.748,1.586,1.374,1.115,.815,.483,.127,-.240,-.609,-.969,-1.312,
--1.630,-1.920,-2.179,-2.408,-2.608,-2.781,-2.933,-3.067,-3.186,-3.292,-3.389,-3.477,-3.557,-3.628,-3.691,-3.746,
--3.793,-3.835,-3.872,-3.907,-3.942,-3.979,-4.018,-4.061,-4.105,-4.151,-4.197,-4.240,-4.278,-4.311,-4.338,-4.359,
--4.376,-4.393,-4.411,-4.435,-4.468,-4.511,-4.566,-4.634,-4.712,-4.798,-4.891,-4.985,-5.080,-5.172,-5.260,-5.345,
--5.427,-5.507,-5.588,-5.673,-5.763,-5.859,-5.961,-6.068,-6.179,-6.291,-6.402,-6.509,-6.610,-6.705,-6.794,-6.877,
--6.957,-7.036,-7.115,-7.196,-7.281,-7.368,-7.456,-7.543,-7.626,-7.700,-7.763,-7.813,-7.848,-7.868,-7.874,-7.871,
--7.860,-7.848,-7.836,-7.831,-7.833,-7.845,-7.867,-7.897,-7.934,-7.976,-8.019,-8.060,-8.099,-8.133,-8.163,-8.188,
--8.210,-8.229,-8.247,-8.264,-8.280,-8.296,-8.310,-8.324,-8.335,-8.343,-8.351,-8.357,-8.365,-8.377,-8.394,-8.421,
--8.458,-8.507,-8.568,-8.640,-8.720,-8.805,-8.891,-8.974,-9.049,-9.114,-9.167,-9.206,-9.232,-9.247,-9.252,-9.251,
--9.246,-9.241,-9.237,-9.235,-9.237,-9.242,-9.248,-9.255,-9.262,-9.268,-9.272,-9.273,-9.273,-9.272,-9.273,-9.276,
--9.283,-9.298,-9.321,-9.354,-9.399,-9.458,-9.531,-9.618,-9.719,-9.833,-9.958,-10.090,-10.225,-10.360,-10.486,-10.600,
--10.695,-10.765,-10.808,-10.821,-10.803,-10.756,-10.684,-10.591,-10.483,-10.367,-10.249,-10.133,-10.024,-9.925,-9.836,-9.755,
--9.683,-9.616,-9.551,-9.488,-9.425,-9.361,-9.298,-9.237,-9.180,-9.130,-9.087,-9.054,-9.029,-9.011,-8.998,-8.987,
--8.974,-8.956,-8.930,-8.893,-8.846,-8.787,-8.719,-8.644,-8.562,-8.477,-8.389,-8.299,-8.208,-8.113,-8.014,-7.908,
--7.795,-7.673,-7.543,-7.404,-7.260,-7.112,-6.965,-6.822,-6.686,-6.560,-6.445,-6.342,-6.251,-6.169,-6.095,-6.025,
--5.957,-5.888,-5.817,-5.743,-5.664,-5.582,-5.497,-5.410,-5.323,-5.236,-5.151,-5.067,-4.983,-4.901,-4.818,-4.735,
--4.652,-4.568,-4.484,-4.400,-4.318,-4.238,-4.162,-4.091,-4.024,-3.963,-3.907,-3.855,-3.808,-3.764,-3.722,-3.681,
--3.640,-3.599,-3.557,-3.513,-3.466,-3.416,-3.362,-3.305,-3.244,-3.179,-3.112,-3.044,-2.977,-2.913,-2.854,-2.801,
--2.758,-2.724,-2.700,-2.683,-2.673,-2.666,-2.659,-2.648,-2.629,-2.599,-2.557,-2.501,-2.434,-2.356,-2.272,-2.184,
--2.097,-2.015,-1.940,-1.874,-1.819,-1.775,-1.739,-1.711,-1.687,-1.665,-1.642,-1.617,-1.588,-1.554,-1.514,-1.467,
--1.414,-1.354,-1.285,-1.208,-1.122,-1.026,-.921,-.808,-.688,-.566,-.444,-.329,-.223,-.133,-.062,-.012,
-.017,.025,.016,-.005,-.032,-.058,-.077,-.084,-.075,-.048,-.006,.050,.115,.182,.245,.298,
-.337,.358,.361,.348,.323,.292,.264,.244,.240,.257,.297,.361,.447,.548,.657,.766,
-.866,.948,1.006,1.036,1.036,1.009,.961,.899,.833,.772,.727,.704,.709,.744,.806,.890,
-.987,1.089,1.182,1.257,1.305,1.319,1.296,1.236,1.145,1.030,.901,.769,.647,.543,.468,.427,
-.422,.453,.516,.606,.714,.833,.953,1.066,1.164,1.243,1.299,1.328,1.331,1.309,1.263,1.199,
-1.120,1.032,.940,.852,.774,.711,.669,.652,.663,.701,.767,.855,.961,1.078,1.198,1.315,
-1.420,1.509,1.578,1.626,1.654,1.664,1.662,1.653,1.644,1.638,1.641,1.655,1.679,1.714,1.754,1.797,
-1.837,1.871,1.894,1.903,1.899,1.882,1.853,1.816,1.774,1.731,1.690,1.653,1.623,1.600,1.583,1.572,
-1.564,1.559,1.554,1.550,1.545,1.539,1.533,1.527,1.523,1.521,1.522,1.526,1.533,1.543,1.555,1.570,
-1.585,1.601,1.618,1.635,1.652,1.669,1.684,1.698,1.710,1.719,1.724,1.724,1.719,1.709,1.696,1.680,
-1.664,1.650,1.642,1.641,1.650,1.672,1.705,1.750,1.806,1.869,1.935,2.002,2.065,2.120,2.165,2.196,
-2.214,2.219,2.212,2.196,2.175,2.152,2.132,2.119,2.117,2.128,2.155,2.200,2.263,2.343,2.439,2.548,
-2.667,2.791,2.916,3.035,3.144,3.235,3.303,3.342,3.349,3.321,3.255,3.153,3.016,2.847,2.653,2.441,
-2.216,1.988,1.762,1.547,1.346,1.164,1.002,.861,.738,.630,.535,.448,.365,.282,.197,.106,
-.009,-.095,-.206,-.325,-.451,-.587,-.732,-.889,-1.060,-1.248,-1.454,-1.680,-1.926,-2.191,-2.473,-2.768,
--3.071,-3.376,-3.676,-3.964,-4.236,-4.485,-4.709,-4.906,-5.076,-5.220,-5.340,-5.439,-5.518,-5.581,-5.627,-5.657,
--5.671,-5.667,-5.643,-5.599,-5.534,-5.450,-5.350,-5.237,-5.117,-4.997,-4.882,-4.781,-4.697,-4.636,-4.597,-4.582,
--4.588,-4.610,-4.643,-4.681,-4.718,-4.748,-4.766,-4.771,-4.759,-4.731,-4.687,-4.628,-4.555,-4.472,-4.379,-4.280,
--4.175,-4.069,-3.966,-3.869,-3.784,-3.718,-3.678,-3.670,-3.700,-3.772,-3.887,-4.046,-4.245,-4.476,-4.731,-5.000,
--5.272,-5.536,-5.784,-6.010,-6.210,-6.384,-6.535,-6.670,-6.793,-6.914,-7.037,-7.168,-7.310,-7.463,-7.624,-7.789,
--7.952,-8.109,-8.254,-8.385,-8.499,-8.600,-8.689,-8.772,-8.853,-8.938,-9.029,-9.128,-9.234,-9.342,-9.448,-9.544,
--9.623,-9.678,-9.703,-9.694,-9.652,-9.578,-9.476,-9.349,-9.203,-9.040,-8.863,-8.671,-8.460,-8.225,-7.959,-7.657,
--7.314,-6.929,-6.506,-6.052,-5.582,-5.113,-4.669,-4.274,-3.950,-3.721,-3.601,-3.603,-3.730,-3.976,-4.331,-4.776,
--5.289,-5.844,-6.415,-6.977,-7.511,-8.000,-8.433,-8.804,-9.112,-9.362,-9.558,-9.710,-9.825,-9.914,-9.983,-10.040,
--10.090,-10.138,-10.190,-10.248,-10.316,-10.399,-10.499,-10.619,-10.760,-10.921,-11.102,-11.299,-11.506,-11.716,-11.923,-12.119,
--12.300,-12.460,-12.598,-12.715,-12.814,-12.901,-12.981,-13.062,-13.149,-13.247,-13.357,-13.479,-13.609,-13.741,-13.867,-13.981,
--14.073,-14.140,-14.177,-14.185,-14.167,-14.129,-14.079,-14.028,-13.985,-13.960,-13.958,-13.987,-14.046,-14.135,-14.250,-14.386,
--14.537,-14.695,-14.855,-15.010,-15.157,-15.294,-15.419,-15.533,-15.635,-15.726,-15.808,-15.880,-15.942,-15.995,-16.037,-16.068,
--16.087,-16.096,-16.092,-16.079,-16.055,-16.021,-15.977,-15.924,-15.860,-15.785,-15.698,-15.597,-15.484,-15.358,-15.222,-15.077,
--14.926,-14.773,-14.620,-14.469,-14.321,-14.175,-14.028,-13.877,-13.716,-13.542,-13.351,-13.141,-12.911,-12.666,-12.410,-12.152,
--11.900,-11.663,-11.450,-11.266,-11.115,-10.996,-10.904,-10.831,-10.768,-10.703,-10.625,-10.527,-10.403,-10.250,-10.073,-9.877,
--9.672,-9.469,-9.279,-9.111,-8.973,-8.867,-8.791,-8.741,-8.707,-8.680,-8.648,-8.602,-8.535,-8.441,-8.322,-8.180,
--8.023,-7.857,-7.694,-7.539,-7.400,-7.280,-7.177,-7.088,-7.004,-6.917,-6.815,-6.689,-6.528,-6.328,-6.086,-5.801,
--5.479,-5.128,-4.756,-4.375,-3.997,-3.632,-3.287,-2.969,-2.681,-2.421,-2.186,-1.970,-1.764,-1.558,-1.343,-1.109,
--.848,-.555,-.228,.133,.520,.928,1.343,1.754,2.147,2.510,2.832,3.109,3.338,3.525,3.679,3.814,
-3.950,4.106,4.305,4.563,4.897,5.314,5.816,6.398,7.047,7.744,8.467,9.192,9.895,10.555,11.156,11.687,
-12.145,12.534,12.861,13.141,13.388,13.617,13.844,14.077,14.325,14.589,14.866,15.152,15.437,15.712,15.969,16.199,
-16.396,16.558,16.685,16.780,16.846,16.888,16.914,16.928,16.934,16.937,16.940,16.946,16.957,16.975,17.004,17.049,
-17.112,17.200,17.315,17.459,17.634,17.836,18.060,18.297,18.536,18.762,18.961,19.118,19.221,19.259,19.227,19.125,
-18.958,18.737,18.476,18.194,17.912,17.652,17.433,17.274,17.187,17.182,17.260,17.421,17.655,17.953,18.299,18.678,
-19.075,19.475,19.866,20.239,20.589,20.914,21.217,21.501,21.774,22.043,22.318,22.607,22.915,23.249,23.609,23.998,
-24.412,24.849,25.302,25.765,26.232,26.696,27.151,27.592,28.015,28.417,28.799,29.160,29.502,29.828,30.138,30.436,
-30.724,31.004,31.275,31.538,31.793,32.037,32.270,32.490,32.696,32.888,33.065,33.230,33.383,33.529,33.669,33.807,
-33.946,34.089,34.237,34.392,34.552,34.717,34.885,35.053,35.217,35.376,35.525,35.663,35.788,35.899,35.997,36.082,
-36.157,36.224,36.286,36.347,36.411,36.480,36.558,36.647,36.747,36.859,36.981,37.113,37.250,37.390,37.529,37.662,
-37.788,37.904,38.010,38.107,38.197,38.284,38.375,38.474,38.589,38.724,38.884,39.071,39.287,39.529,39.796,40.082,
-40.382,40.690,41.001,41.310,41.613,41.909,42.195,42.474,42.745,43.011,43.273,43.534,43.793,44.050,44.305,44.557,
-44.803,45.041,45.268,45.484,45.684,45.867,46.031,46.172,46.289,46.378,46.437,46.463,46.456,46.416,46.347,46.254,
-46.146,46.033,45.927,45.844,45.795,45.793,45.846,45.958,46.130,46.354,46.618,46.908,47.203,47.482,47.727,47.918,
-48.044,48.095,48.071,47.975,47.819,47.616,47.384,47.143,46.909,46.699,46.524,46.393,46.310,46.274,46.282,46.329,
-46.406,46.507,46.626,46.758,46.899,47.047,47.202,47.364,47.533,47.707,47.886,48.066,48.244,48.415,48.571,48.709,
-48.820,48.902,48.950,48.963,48.940,48.883,48.796,48.684,48.552,48.407,48.256,48.104,47.957,47.820,47.696,47.587,
-47.494,47.416,47.352,47.299,47.256,47.218,47.183,47.150,47.116,47.082,47.049,47.016,46.985,46.959,46.939,46.925,
-46.917,46.915,46.916,46.918,46.917,46.911,46.895,46.870,46.833,46.786,46.732,46.672,46.612,46.554,46.503,46.460,
-46.426,46.397,46.372,46.345,46.311,46.262,46.194,46.103,45.989,45.852,45.697,45.530,45.358,45.191,45.036,45.988,
-45.833,45.679,45.529,45.386,45.251,45.121,44.996,44.871,44.744,44.615,44.484,44.355,44.232,44.123,44.036,43.979,
-43.959,43.979,44.040,44.139,44.266,44.410,44.557,44.689,44.793,44.852,44.858,44.805,44.690,44.520,44.303,44.052,
-43.781,43.504,43.235,42.984,42.757,42.557,42.382,42.226,42.082,41.941,41.794,41.634,41.457,41.259,41.043,40.812,
-40.571,40.327,40.086,39.854,39.637,39.436,39.251,39.080,38.921,38.768,38.615,38.458,38.291,38.109,37.908,37.687,
-37.442,37.173,36.880,36.561,36.218,35.853,35.465,35.059,34.635,34.198,33.751,33.297,32.841,32.386,31.935,31.492,
-31.058,30.634,30.222,29.820,29.430,29.050,28.678,28.314,27.956,27.602,27.252,26.904,26.558,26.213,25.871,25.531,
-25.197,24.871,24.555,24.252,23.965,23.697,23.447,23.216,23.002,22.800,22.607,22.415,22.220,22.016,21.797,21.563,
-21.313,21.049,20.776,20.502,20.234,19.979,19.746,19.539,19.361,19.210,19.082,18.972,18.870,18.767,18.653,18.519,
-18.359,18.170,17.953,17.709,17.444,17.166,16.883,16.602,16.329,16.071,15.829,15.604,15.394,15.197,15.008,14.823,
-14.638,14.452,14.262,14.068,13.871,13.670,13.467,13.263,13.057,12.848,12.636,12.417,12.190,11.954,11.707,11.451,
-11.186,10.917,10.647,10.380,10.120,9.872,9.638,9.418,9.213,9.019,8.835,8.655,8.478,8.299,8.118,7.935,
-7.752,7.572,7.397,7.233,7.082,6.946,6.824,6.714,6.611,6.509,6.400,6.277,6.135,5.967,5.773,5.554,
-5.314,5.059,4.798,4.540,4.295,4.069,3.868,3.695,3.548,3.424,3.317,3.220,3.125,3.024,2.913,2.788,
-2.649,2.499,2.342,2.185,2.035,1.899,1.784,1.694,1.632,1.595,1.583,1.590,1.608,1.631,1.651,1.658,
-1.647,1.611,1.546,1.448,1.316,1.150,.951,.723,.468,.191,-.101,-.403,-.708,-1.009,-1.301,-1.579,
--1.837,-2.074,-2.287,-2.477,-2.644,-2.791,-2.922,-3.040,-3.147,-3.246,-3.340,-3.428,-3.512,-3.590,-3.661,-3.724,
--3.779,-3.826,-3.864,-3.895,-3.922,-3.947,-3.972,-4.001,-4.034,-4.072,-4.116,-4.166,-4.218,-4.273,-4.327,-4.379,
--4.428,-4.473,-4.515,-4.555,-4.594,-4.635,-4.678,-4.726,-4.779,-4.838,-4.903,-4.973,-5.048,-5.127,-5.210,-5.295,
--5.384,-5.477,-5.574,-5.676,-5.784,-5.896,-6.013,-6.132,-6.252,-6.371,-6.487,-6.597,-6.700,-6.796,-6.885,-6.968,
--7.047,-7.126,-7.205,-7.287,-7.374,-7.465,-7.561,-7.659,-7.756,-7.850,-7.936,-8.014,-8.079,-8.133,-8.174,-8.205,
--8.229,-8.247,-8.265,-8.284,-8.308,-8.337,-8.372,-8.413,-8.459,-8.506,-8.554,-8.600,-8.642,-8.682,-8.717,-8.751,
--8.782,-8.814,-8.848,-8.883,-8.920,-8.959,-8.998,-9.036,-9.070,-9.100,-9.123,-9.142,-9.155,-9.166,-9.178,-9.192,
--9.214,-9.244,-9.285,-9.338,-9.400,-9.471,-9.546,-9.621,-9.693,-9.758,-9.811,-9.852,-9.879,-9.893,-9.895,-9.886,
--9.870,-9.847,-9.820,-9.791,-9.758,-9.724,-9.687,-9.648,-9.608,-9.568,-9.528,-9.492,-9.463,-9.443,-9.434,-9.440,
--9.461,-9.499,-9.552,-9.619,-9.700,-9.791,-9.892,-10.000,-10.114,-10.235,-10.360,-10.490,-10.622,-10.755,-10.885,-11.008,
--11.117,-11.207,-11.272,-11.306,-11.306,-11.268,-11.195,-11.089,-10.958,-10.807,-10.648,-10.491,-10.343,-10.215,-10.110,-10.032,
--9.981,-9.955,-9.949,-9.957,-9.973,-9.990,-10.003,-10.008,-10.003,-9.987,-9.960,-9.923,-9.879,-9.828,-9.774,-9.717,
--9.657,-9.594,-9.529,-9.460,-9.388,-9.313,-9.234,-9.153,-9.070,-8.986,-8.901,-8.815,-8.728,-8.639,-8.545,-8.446,
--8.339,-8.224,-8.100,-7.967,-7.828,-7.685,-7.539,-7.396,-7.256,-7.124,-7.001,-6.888,-6.785,-6.691,-6.604,-6.524,
--6.448,-6.374,-6.303,-6.232,-6.162,-6.094,-6.028,-5.964,-5.903,-5.844,-5.786,-5.729,-5.669,-5.607,-5.540,-5.467,
--5.388,-5.302,-5.211,-5.116,-5.018,-4.920,-4.824,-4.731,-4.642,-4.557,-4.478,-4.403,-4.333,-4.267,-4.206,-4.148,
--4.096,-4.049,-4.006,-3.970,-3.938,-3.909,-3.882,-3.854,-3.823,-3.785,-3.739,-3.683,-3.617,-3.542,-3.460,-3.376,
--3.292,-3.213,-3.143,-3.086,-3.042,-3.012,-2.993,-2.982,-2.975,-2.965,-2.949,-2.921,-2.879,-2.821,-2.748,-2.661,
--2.564,-2.461,-2.357,-2.256,-2.161,-2.075,-1.999,-1.932,-1.875,-1.824,-1.780,-1.740,-1.702,-1.667,-1.634,-1.602,
--1.570,-1.539,-1.507,-1.471,-1.430,-1.382,-1.323,-1.253,-1.171,-1.079,-.978,-.873,-.770,-.673,-.590,-.524,
--.479,-.456,-.453,-.465,-.486,-.508,-.523,-.523,-.501,-.454,-.380,-.283,-.167,-.041,.086,.204,
-.303,.376,.418,.428,.407,.363,.302,.236,.174,.128,.105,.111,.149,.218,.313,.427,
-.551,.674,.786,.878,.945,.983,.994,.980,.948,.908,.869,.842,.834,.852,.899,.976,
-1.078,1.198,1.328,1.458,1.577,1.676,1.749,1.792,1.802,1.783,1.739,1.676,1.601,1.523,1.449,1.383,
-1.329,1.289,1.260,1.242,1.231,1.222,1.214,1.202,1.185,1.164,1.137,1.107,1.075,1.041,1.008,.976,
-.945,.914,.885,.856,.827,.801,.779,.763,.755,.759,.777,.809,.857,.918,.991,1.071,
-1.155,1.237,1.314,1.382,1.440,1.485,1.518,1.542,1.558,1.568,1.576,1.583,1.592,1.601,1.611,1.620,
-1.628,1.633,1.634,1.630,1.621,1.607,1.591,1.573,1.554,1.536,1.518,1.502,1.485,1.467,1.448,1.425,
-1.400,1.371,1.341,1.311,1.283,1.260,1.244,1.237,1.241,1.255,1.278,1.309,1.345,1.383,1.419,1.450,
-1.476,1.493,1.502,1.503,1.498,1.489,1.477,1.464,1.453,1.444,1.437,1.433,1.431,1.431,1.433,1.436,
-1.441,1.447,1.456,1.469,1.486,1.508,1.535,1.568,1.605,1.645,1.686,1.727,1.766,1.801,1.830,1.853,
-1.870,1.879,1.883,1.882,1.878,1.871,1.864,1.857,1.853,1.854,1.862,1.878,1.905,1.945,1.999,2.070,
-2.156,2.258,2.373,2.499,2.630,2.760,2.884,2.992,3.078,3.135,3.158,3.142,3.085,2.988,2.853,2.686,
-2.492,2.279,2.057,1.833,1.616,1.411,1.225,1.061,.919,.800,.702,.621,.552,.492,.435,.377,
-.314,.242,.159,.064,-.047,-.173,-.317,-.479,-.661,-.864,-1.088,-1.335,-1.605,-1.895,-2.205,-2.529,
--2.864,-3.203,-3.538,-3.863,-4.169,-4.451,-4.703,-4.921,-5.104,-5.253,-5.370,-5.459,-5.527,-5.578,-5.618,-5.651,
--5.681,-5.710,-5.736,-5.759,-5.776,-5.783,-5.779,-5.762,-5.729,-5.683,-5.626,-5.561,-5.493,-5.427,-5.367,-5.319,
--5.285,-5.265,-5.261,-5.268,-5.285,-5.307,-5.327,-5.343,-5.347,-5.337,-5.309,-5.262,-5.193,-5.105,-4.997,-4.874,
--4.737,-4.593,-4.446,-4.304,-4.172,-4.060,-3.974,-3.921,-3.908,-3.939,-4.015,-4.137,-4.300,-4.499,-4.726,-4.970,
--5.221,-5.469,-5.706,-5.925,-6.122,-6.297,-6.451,-6.591,-6.723,-6.853,-6.987,-7.132,-7.289,-7.458,-7.637,-7.821,
--8.005,-8.180,-8.343,-8.487,-8.612,-8.717,-8.807,-8.884,-8.957,-9.030,-9.110,-9.200,-9.300,-9.409,-9.521,-9.631,
--9.730,-9.810,-9.865,-9.890,-9.883,-9.845,-9.778,-9.687,-9.578,-9.454,-9.320,-9.175,-9.017,-8.840,-8.637,-8.400,
--8.120,-7.794,-7.418,-6.996,-6.539,-6.061,-5.582,-5.127,-4.719,-4.384,-4.144,-4.014,-4.004,-4.116,-4.345,-4.676,
--5.091,-5.566,-6.076,-6.596,-7.102,-7.577,-8.004,-8.375,-8.685,-8.935,-9.130,-9.275,-9.380,-9.452,-9.501,-9.535,
--9.562,-9.587,-9.617,-9.658,-9.714,-9.790,-9.890,-10.016,-10.170,-10.350,-10.555,-10.778,-11.013,-11.251,-11.482,-11.700,
--11.895,-12.065,-12.207,-12.323,-12.419,-12.503,-12.584,-12.674,-12.782,-12.914,-13.076,-13.267,-13.482,-13.714,-13.952,-14.182,
--14.392,-14.572,-14.712,-14.809,-14.863,-14.880,-14.867,-14.837,-14.802,-14.775,-14.766,-14.784,-14.832,-14.911,-15.019,-15.148,
--15.292,-15.442,-15.590,-15.729,-15.855,-15.966,-16.063,-16.145,-16.218,-16.283,-16.343,-16.401,-16.457,-16.511,-16.561,-16.605,
--16.642,-16.669,-16.685,-16.690,-16.684,-16.667,-16.641,-16.605,-16.560,-16.505,-16.439,-16.360,-16.268,-16.161,-16.039,-15.903,
--15.756,-15.601,-15.441,-15.281,-15.124,-14.971,-14.823,-14.678,-14.531,-14.378,-14.213,-14.031,-13.830,-13.608,-13.367,-13.114,
--12.856,-12.603,-12.365,-12.151,-11.970,-11.824,-11.713,-11.634,-11.576,-11.531,-11.484,-11.426,-11.346,-11.238,-11.101,-10.937,
--10.753,-10.560,-10.368,-10.189,-10.032,-9.904,-9.807,-9.740,-9.696,-9.668,-9.647,-9.622,-9.585,-9.532,-9.462,-9.376,
--9.279,-9.179,-9.083,-8.999,-8.933,-8.886,-8.857,-8.841,-8.831,-8.816,-8.787,-8.734,-8.648,-8.525,-8.361,-8.160,
--7.924,-7.661,-7.378,-7.083,-6.784,-6.488,-6.199,-5.921,-5.654,-5.400,-5.157,-4.925,-4.702,-4.486,-4.275,-4.067,
--3.859,-3.647,-3.428,-3.196,-2.948,-2.680,-2.389,-2.074,-1.735,-1.376,-1.000,-.614,-.223,.166,.551,.929,
-1.302,1.674,2.054,2.451,2.876,3.338,3.846,4.405,5.015,5.672,6.366,7.083,7.809,8.525,9.215,9.862,
-10.457,10.991,11.463,11.875,12.236,12.555,12.843,13.113,13.374,13.635,13.900,14.171,14.446,14.721,14.989,15.243,
-15.478,15.686,15.865,16.010,16.124,16.206,16.261,16.292,16.306,16.308,16.303,16.297,16.297,16.307,16.333,16.381,
-16.455,16.561,16.702,16.881,17.098,17.351,17.636,17.945,18.269,18.595,18.909,19.195,19.438,19.625,19.744,19.788,
-19.752,19.638,19.454,19.211,18.926,18.618,18.309,18.020,17.774,17.589,17.479,17.454,17.519,17.672,17.906,18.210,
-18.569,18.967,19.387,19.811,20.227,20.624,20.995,21.338,21.655,21.950,22.231,22.507,22.788,23.082,23.397,23.737,
-24.105,24.499,24.918,25.354,25.803,26.257,26.709,27.153,27.584,27.999,28.397,28.777,29.141,29.491,29.830,30.161,
-30.486,30.805,31.118,31.425,31.723,32.010,32.282,32.537,32.773,32.988,33.183,33.358,33.517,33.662,33.799,33.930,
-34.062,34.196,34.337,34.485,34.641,34.803,34.971,35.141,35.311,35.479,35.641,35.796,35.942,36.080,36.208,36.327,
-36.437,36.540,36.636,36.726,36.810,36.890,36.967,37.041,37.115,37.190,37.267,37.348,37.434,37.527,37.627,37.735,
-37.850,37.972,38.100,38.236,38.378,38.529,38.689,38.861,39.047,39.250,39.471,39.711,39.970,40.247,40.539,40.842,
-41.150,41.460,41.766,42.065,42.354,42.633,42.902,43.163,43.419,43.673,43.929,44.188,44.450,44.715,44.981,45.243,
-45.496,45.735,45.955,46.153,46.325,46.469,46.586,46.676,46.742,46.784,46.806,46.807,46.791,46.758,46.709,46.646,
-46.574,46.496,46.420,46.352,46.302,46.278,46.288,46.338,46.430,46.563,46.731,46.926,47.135,47.343,47.535,47.697,
-47.816,47.886,47.902,47.867,47.787,47.674,47.540,47.402,47.272,47.164,47.088,47.049,47.051,47.092,47.169,47.275,
-47.404,47.551,47.710,47.877,48.050,48.228,48.410,48.596,48.784,48.973,49.159,49.336,49.499,49.640,49.753,49.832,
-49.872,49.871,49.828,49.747,49.631,49.488,49.325,49.151,48.973,48.799,48.636,48.489,48.360,48.251,48.162,48.091,
-48.037,47.996,47.965,47.938,47.913,47.886,47.853,47.813,47.764,47.707,47.642,47.573,47.502,47.434,47.373,47.323,
-47.286,47.265,47.260,47.268,47.287,47.311,47.335,47.353,47.359,47.350,47.322,47.277,47.217,47.144,47.065,46.986,
-46.913,46.850,46.801,46.767,46.745,46.732,46.722,46.709,46.686,46.647,46.588,46.507,46.402,46.278,46.138,45.988,
-46.724,46.569,46.402,46.229,46.055,45.882,45.716,45.556,45.403,45.259,45.122,44.994,44.877,44.772,44.684,44.617,
-44.576,44.565,44.584,44.635,44.714,44.815,44.928,45.043,45.145,45.223,45.264,45.259,45.203,45.093,44.932,44.727,
-44.488,44.225,43.953,43.682,43.422,43.180,42.961,42.764,42.586,42.423,42.268,42.114,41.955,41.786,41.605,41.410,
-41.202,40.984,40.759,40.531,40.302,40.076,39.854,39.636,39.422,39.210,38.999,38.787,38.571,38.349,38.118,37.877,
-37.622,37.352,37.064,36.755,36.423,36.068,35.689,35.287,34.863,34.421,33.964,33.497,33.025,32.553,32.083,31.620,
-31.164,30.717,30.278,29.845,29.419,28.997,28.580,28.167,27.760,27.359,26.966,26.582,26.211,25.853,25.509,25.179,
-24.864,24.564,24.279,24.009,23.754,23.514,23.289,23.079,22.882,22.695,22.516,22.339,22.161,21.974,21.775,21.559,
-21.326,21.075,20.810,20.536,20.259,19.988,19.730,19.493,19.281,19.095,18.936,18.798,18.675,18.558,18.437,18.303,
-18.151,17.974,17.772,17.546,17.301,17.043,16.781,16.521,16.271,16.034,15.815,15.612,15.423,15.243,15.067,14.891,
-14.709,14.518,14.317,14.107,13.889,13.667,13.445,13.224,13.008,12.797,12.590,12.386,12.180,11.970,11.753,11.524,
-11.285,11.035,10.776,10.513,10.249,9.991,9.741,9.503,9.279,9.070,8.872,8.684,8.501,8.320,8.138,7.954,
-7.768,7.582,7.399,7.222,7.057,6.905,6.770,6.651,6.545,6.447,6.350,6.247,6.129,5.991,5.827,5.636,
-5.419,5.183,4.933,4.680,4.432,4.200,3.989,3.804,3.646,3.511,3.394,3.287,3.180,3.067,2.940,2.796,
-2.635,2.461,2.281,2.103,1.938,1.796,1.685,1.610,1.572,1.570,1.596,1.642,1.694,1.741,1.770,1.771,
-1.734,1.656,1.534,1.370,1.168,.935,.678,.404,.121,-.164,-.447,-.722,-.988,-1.241,-1.481,-1.706,
--1.915,-2.107,-2.284,-2.443,-2.586,-2.714,-2.829,-2.931,-3.024,-3.109,-3.190,-3.266,-3.340,-3.412,-3.481,-3.548,
--3.609,-3.666,-3.716,-3.759,-3.797,-3.830,-3.861,-3.892,-3.925,-3.964,-4.009,-4.062,-4.125,-4.195,-4.271,-4.352,
--4.434,-4.516,-4.594,-4.668,-4.736,-4.798,-4.853,-4.905,-4.953,-4.999,-5.047,-5.098,-5.153,-5.214,-5.283,-5.360,
--5.446,-5.541,-5.644,-5.755,-5.874,-5.997,-6.125,-6.253,-6.381,-6.506,-6.627,-6.741,-6.848,-6.948,-7.041,-7.128,
--7.210,-7.290,-7.369,-7.448,-7.528,-7.610,-7.692,-7.774,-7.854,-7.930,-8.000,-8.063,-8.118,-8.166,-8.206,-8.241,
--8.273,-8.306,-8.342,-8.383,-8.431,-8.488,-8.552,-8.623,-8.699,-8.777,-8.855,-8.929,-8.998,-9.061,-9.117,-9.168,
--9.215,-9.260,-9.305,-9.353,-9.405,-9.460,-9.520,-9.582,-9.644,-9.704,-9.760,-9.809,-9.850,-9.883,-9.909,-9.929,
--9.946,-9.962,-9.980,-10.001,-10.027,-10.058,-10.093,-10.130,-10.167,-10.201,-10.229,-10.250,-10.261,-10.263,-10.255,-10.239,
--10.214,-10.183,-10.146,-10.104,-10.057,-10.005,-9.949,-9.889,-9.827,-9.765,-9.705,-9.653,-9.614,-9.591,-9.591,-9.615,
--9.667,-9.746,-9.850,-9.974,-10.114,-10.262,-10.412,-10.557,-10.693,-10.816,-10.924,-11.018,-11.098,-11.165,-11.223,-11.271,
--11.309,-11.336,-11.349,-11.346,-11.322,-11.276,-11.207,-11.116,-11.006,-10.884,-10.758,-10.636,-10.527,-10.441,-10.383,-10.357,
--10.363,-10.397,-10.455,-10.527,-10.604,-10.675,-10.733,-10.770,-10.780,-10.763,-10.718,-10.648,-10.559,-10.455,-10.342,-10.226,
--10.110,-9.998,-9.891,-9.790,-9.694,-9.604,-9.516,-9.432,-9.348,-9.266,-9.184,-9.101,-9.017,-8.931,-8.842,-8.750,
--8.653,-8.551,-8.444,-8.332,-8.216,-8.098,-7.980,-7.863,-7.750,-7.643,-7.542,-7.448,-7.361,-7.280,-7.204,-7.130,
--7.058,-6.987,-6.917,-6.846,-6.777,-6.708,-6.642,-6.578,-6.516,-6.457,-6.398,-6.338,-6.276,-6.209,-6.136,-6.056,
--5.969,-5.876,-5.780,-5.682,-5.587,-5.495,-5.409,-5.331,-5.260,-5.196,-5.137,-5.079,-5.021,-4.959,-4.894,-4.824,
--4.750,-4.675,-4.602,-4.534,-4.474,-4.424,-4.386,-4.358,-4.339,-4.325,-4.310,-4.290,-4.260,-4.215,-4.155,-4.079,
--3.989,-3.889,-3.784,-3.680,-3.581,-3.494,-3.420,-3.360,-3.314,-3.278,-3.249,-3.220,-3.189,-3.149,-3.100,-3.038,
--2.966,-2.884,-2.795,-2.703,-2.611,-2.520,-2.433,-2.349,-2.269,-2.192,-2.118,-2.044,-1.972,-1.903,-1.837,-1.777,
--1.724,-1.680,-1.646,-1.621,-1.604,-1.589,-1.575,-1.554,-1.524,-1.482,-1.425,-1.354,-1.273,-1.185,-1.097,-1.015,
--.945,-.891,-.855,-.836,-.831,-.833,-.835,-.827,-.801,-.752,-.674,-.568,-.435,-.284,-.121,.041,
-.192,.322,.421,.486,.514,.507,.470,.413,.345,.276,.217,.177,.161,.173,.212,.276,
-.358,.453,.551,.645,.729,.797,.849,.883,.904,.916,.925,.940,.967,1.013,1.083,1.178,
-1.298,1.442,1.604,1.779,1.958,2.134,2.301,2.453,2.585,2.695,2.781,2.843,2.883,2.901,2.898,2.874,
-2.829,2.762,2.672,2.559,2.422,2.263,2.085,1.894,1.696,1.498,1.311,1.141,.996,.882,.801,.753,
-.735,.742,.769,.806,.846,.883,.913,.933,.941,.941,.934,.925,.919,.920,.929,.950,
-.981,1.023,1.073,1.128,1.186,1.244,1.300,1.352,1.398,1.438,1.472,1.500,1.520,1.532,1.537,1.534,
-1.524,1.507,1.484,1.459,1.432,1.407,1.386,1.372,1.364,1.364,1.369,1.378,1.387,1.393,1.393,1.385,
-1.366,1.338,1.301,1.260,1.217,1.179,1.149,1.130,1.126,1.137,1.162,1.198,1.240,1.284,1.326,1.360,
-1.382,1.392,1.388,1.372,1.346,1.313,1.278,1.244,1.214,1.190,1.176,1.170,1.173,1.183,1.201,1.225,
-1.252,1.283,1.316,1.351,1.386,1.420,1.453,1.482,1.507,1.526,1.538,1.541,1.537,1.526,1.508,1.488,
-1.466,1.445,1.428,1.417,1.411,1.412,1.417,1.426,1.437,1.447,1.456,1.463,1.469,1.477,1.488,1.509,
-1.542,1.591,1.660,1.749,1.857,1.982,2.118,2.257,2.392,2.512,2.609,2.675,2.704,2.692,2.638,2.543,
-2.412,2.250,2.066,1.867,1.664,1.464,1.276,1.104,.953,.825,.721,.639,.575,.526,.486,.450,
-.413,.369,.313,.241,.150,.039,-.096,-.254,-.436,-.641,-.869,-1.119,-1.390,-1.679,-1.986,-2.306,
--2.636,-2.971,-3.306,-3.633,-3.945,-4.237,-4.500,-4.730,-4.924,-5.079,-5.197,-5.282,-5.340,-5.378,-5.405,-5.430,
--5.461,-5.504,-5.562,-5.638,-5.728,-5.830,-5.936,-6.039,-6.133,-6.210,-6.266,-6.298,-6.307,-6.295,-6.266,-6.228,
--6.186,-6.147,-6.118,-6.100,-6.097,-6.107,-6.126,-6.150,-6.173,-6.187,-6.186,-6.163,-6.114,-6.036,-5.928,-5.791,
--5.629,-5.446,-5.251,-5.051,-4.856,-4.675,-4.518,-4.392,-4.306,-4.265,-4.272,-4.328,-4.431,-4.575,-4.756,-4.963,
--5.187,-5.420,-5.650,-5.872,-6.080,-6.270,-6.443,-6.600,-6.745,-6.884,-7.022,-7.163,-7.310,-7.466,-7.629,-7.796,
--7.965,-8.130,-8.286,-8.430,-8.559,-8.673,-8.774,-8.864,-8.948,-9.032,-9.120,-9.215,-9.317,-9.427,-9.541,-9.652,
--9.756,-9.846,-9.915,-9.960,-9.977,-9.968,-9.935,-9.882,-9.813,-9.733,-9.645,-9.548,-9.441,-9.317,-9.170,-8.989,
--8.767,-8.496,-8.173,-7.800,-7.382,-6.933,-6.470,-6.017,-5.596,-5.233,-4.949,-4.762,-4.684,-4.719,-4.864,-5.108,
--5.436,-5.826,-6.255,-6.699,-7.138,-7.551,-7.926,-8.253,-8.526,-8.747,-8.918,-9.046,-9.136,-9.198,-9.237,-9.262,
--9.277,-9.288,-9.301,-9.319,-9.349,-9.394,-9.460,-9.550,-9.668,-9.813,-9.986,-10.181,-10.394,-10.616,-10.838,-11.051,
--11.245,-11.414,-11.556,-11.669,-11.759,-11.832,-11.900,-11.974,-12.067,-12.189,-12.349,-12.549,-12.790,-13.065,-13.364,-13.674,
--13.982,-14.272,-14.532,-14.754,-14.932,-15.067,-15.163,-15.229,-15.275,-15.313,-15.354,-15.408,-15.479,-15.572,-15.683,-15.808,
--15.941,-16.073,-16.198,-16.310,-16.404,-16.480,-16.540,-16.587,-16.627,-16.665,-16.704,-16.749,-16.799,-16.855,-16.913,-16.969,
--17.020,-17.061,-17.089,-17.105,-17.107,-17.099,-17.084,-17.064,-17.042,-17.020,-16.997,-16.972,-16.942,-16.902,-16.850,-16.781,
--16.694,-16.588,-16.466,-16.330,-16.185,-16.034,-15.881,-15.726,-15.571,-15.412,-15.245,-15.066,-14.870,-14.654,-14.418,-14.163,
--13.895,-13.624,-13.359,-13.111,-12.891,-12.707,-12.563,-12.457,-12.386,-12.338,-12.303,-12.266,-12.213,-12.135,-12.024,-11.878,
--11.700,-11.497,-11.279,-11.060,-10.850,-10.662,-10.501,-10.372,-10.272,-10.199,-10.145,-10.102,-10.063,-10.021,-9.975,-9.924,
--9.870,-9.819,-9.776,-9.745,-9.731,-9.732,-9.747,-9.768,-9.787,-9.794,-9.780,-9.738,-9.662,-9.551,-9.409,-9.243,
--9.059,-8.870,-8.683,-8.505,-8.340,-8.189,-8.047,-7.908,-7.763,-7.604,-7.423,-7.217,-6.984,-6.727,-6.453,-6.172,
--5.894,-5.628,-5.384,-5.163,-4.968,-4.791,-4.626,-4.459,-4.277,-4.067,-3.818,-3.522,-3.175,-2.778,-2.337,-1.858,
--1.352,-.828,-.295,.242,.779,1.318,1.862,2.417,2.990,3.586,4.211,4.864,5.545,6.248,6.964,7.682,
-8.389,9.072,9.719,10.322,10.873,11.370,11.813,12.204,12.550,12.858,13.136,13.391,13.631,13.860,14.083,14.300,
-14.513,14.719,14.915,15.099,15.267,15.417,15.546,15.653,15.740,15.808,15.861,15.905,15.944,15.987,16.041,16.114,
-16.211,16.339,16.502,16.703,16.943,17.220,17.531,17.870,18.230,18.603,18.976,19.339,19.680,19.985,20.243,20.441,
-20.570,20.623,20.596,20.489,20.306,20.057,19.756,19.419,19.068,18.726,18.415,18.157,17.971,17.870,17.863,17.952,
-18.133,18.397,18.728,19.109,19.522,19.948,20.369,20.775,21.155,21.507,21.831,22.133,22.420,22.703,22.990,23.293,
-23.616,23.965,24.341,24.744,25.168,25.608,26.058,26.511,26.961,27.403,27.834,28.252,28.658,29.052,29.436,29.812,
-30.181,30.544,30.900,31.248,31.585,31.908,32.214,32.498,32.760,32.996,33.207,33.395,33.562,33.712,33.851,33.984,
-34.117,34.252,34.394,34.545,34.705,34.872,35.044,35.219,35.394,35.566,35.732,35.893,36.046,36.194,36.337,36.476,
-36.613,36.749,36.883,37.015,37.143,37.264,37.376,37.478,37.567,37.644,37.710,37.767,37.820,37.873,37.932,38.003,
-38.090,38.200,38.334,38.495,38.684,38.901,39.146,39.416,39.708,40.021,40.350,40.692,41.043,41.396,41.746,42.087,
-42.414,42.720,43.001,43.255,43.481,43.681,43.860,44.023,44.179,44.337,44.505,44.690,44.896,45.124,45.373,45.637,
-45.908,46.175,46.428,46.656,46.851,47.005,47.117,47.187,47.217,47.216,47.189,47.146,47.093,47.039,46.988,46.944,
-46.909,46.885,46.871,46.868,46.877,46.899,46.937,46.992,47.066,47.158,47.270,47.396,47.533,47.673,47.810,47.935,
-48.041,48.123,48.178,48.207,48.211,48.196,48.170,48.141,48.117,48.106,48.112,48.138,48.186,48.253,48.337,48.434,
-48.541,48.656,48.777,48.906,49.043,49.191,49.351,49.524,49.708,49.899,50.091,50.275,50.441,50.577,50.674,50.723,
-50.719,50.660,50.548,50.390,50.195,49.974,49.740,49.505,49.281,49.077,48.900,48.752,48.634,48.546,48.482,48.440,
-48.413,48.396,48.385,48.376,48.366,48.352,48.333,48.306,48.271,48.228,48.176,48.116,48.051,47.981,47.912,47.845,
-47.785,47.736,47.700,47.679,47.673,47.681,47.698,47.721,47.744,47.761,47.768,47.759,47.734,47.691,47.633,47.564,
-47.489,47.415,47.346,47.289,47.246,47.219,47.206,47.204,47.207,47.208,47.201,47.179,47.136,47.070,46.978,46.862,
-46.724,47.114,46.978,46.836,46.692,46.551,46.416,46.292,46.179,46.078,45.988,45.909,45.838,45.775,45.718,45.667,
-45.622,45.585,45.557,45.539,45.533,45.537,45.549,45.565,45.579,45.584,45.572,45.536,45.470,45.368,45.230,45.057,
-44.853,44.625,44.381,44.131,43.883,43.645,43.422,43.219,43.034,42.866,42.711,42.564,42.418,42.268,42.110,41.942,
-41.761,41.568,41.363,41.150,40.929,40.704,40.476,40.246,40.014,39.782,39.547,39.311,39.070,38.825,38.573,38.311,
-38.036,37.745,37.435,37.099,36.737,36.344,35.919,35.465,34.983,34.479,33.960,33.434,32.910,32.394,31.895,31.415,
-30.958,30.521,30.101,29.695,29.296,28.900,28.502,28.100,27.694,27.286,26.879,26.479,26.091,25.720,25.370,25.043,
-24.740,24.459,24.198,23.955,23.726,23.507,23.297,23.093,22.895,22.700,22.508,22.318,22.127,21.933,21.734,21.527,
-21.310,21.081,20.842,20.594,20.341,20.088,19.839,19.602,19.379,19.173,18.985,18.811,18.649,18.491,18.331,18.163,
-17.980,17.779,17.560,17.325,17.079,16.828,16.580,16.342,16.120,15.919,15.739,15.580,15.437,15.303,15.171,15.033,
-14.882,14.713,14.524,14.314,14.086,13.844,13.593,13.340,13.090,12.845,12.610,12.383,12.163,11.947,11.732,11.514,
-11.289,11.055,10.814,10.565,10.312,10.059,9.809,9.568,9.337,9.119,8.914,8.719,8.533,8.353,8.173,7.993,
-7.809,7.622,7.434,7.246,7.064,6.890,6.729,6.582,6.450,6.330,6.219,6.111,5.999,5.876,5.735,5.573,
-5.388,5.182,4.957,4.723,4.485,4.253,4.034,3.834,3.656,3.498,3.358,3.228,3.101,2.969,2.826,2.666,
-2.490,2.300,2.105,1.913,1.738,1.591,1.483,1.421,1.408,1.442,1.516,1.615,1.726,1.831,1.911,1.951,
-1.938,1.866,1.731,1.537,1.292,1.005,.690,.361,.030,-.292,-.598,-.882,-1.143,-1.381,-1.598,-1.797,
--1.981,-2.152,-2.311,-2.460,-2.598,-2.725,-2.839,-2.941,-3.030,-3.108,-3.176,-3.237,-3.293,-3.346,-3.400,-3.454,
--3.510,-3.567,-3.624,-3.681,-3.735,-3.787,-3.836,-3.882,-3.927,-3.974,-4.024,-4.081,-4.147,-4.222,-4.308,-4.403,
--4.506,-4.613,-4.723,-4.830,-4.931,-5.024,-5.107,-5.178,-5.239,-5.290,-5.335,-5.377,-5.418,-5.464,-5.517,-5.579,
--5.653,-5.738,-5.836,-5.944,-6.060,-6.182,-6.306,-6.432,-6.555,-6.675,-6.790,-6.901,-7.006,-7.107,-7.206,-7.302,
--7.398,-7.493,-7.588,-7.682,-7.773,-7.860,-7.940,-8.012,-8.073,-8.122,-8.159,-8.182,-8.195,-8.197,-8.193,-8.186,
--8.180,-8.180,-8.188,-8.209,-8.244,-8.296,-8.364,-8.447,-8.545,-8.653,-8.768,-8.887,-9.005,-9.120,-9.229,-9.331,
--9.423,-9.508,-9.586,-9.659,-9.730,-9.800,-9.871,-9.944,-10.020,-10.098,-10.176,-10.252,-10.324,-10.388,-10.443,-10.488,
--10.522,-10.546,-10.560,-10.566,-10.567,-10.564,-10.559,-10.552,-10.545,-10.535,-10.523,-10.507,-10.486,-10.459,-10.424,-10.383,
--10.334,-10.280,-10.221,-10.159,-10.094,-10.028,-9.963,-9.899,-9.839,-9.785,-9.740,-9.708,-9.694,-9.703,-9.737,-9.801,
--9.896,-10.023,-10.177,-10.354,-10.547,-10.746,-10.941,-11.123,-11.283,-11.413,-11.511,-11.573,-11.603,-11.603,-11.579,-11.537,
--11.482,-11.419,-11.353,-11.285,-11.215,-11.145,-11.073,-11.000,-10.927,-10.858,-10.795,-10.744,-10.711,-10.700,-10.714,-10.757,
--10.824,-10.913,-11.016,-11.124,-11.225,-11.309,-11.367,-11.391,-11.376,-11.323,-11.233,-11.112,-10.968,-10.811,-10.649,-10.492,
--10.345,-10.215,-10.102,-10.008,-9.930,-9.865,-9.809,-9.758,-9.707,-9.653,-9.594,-9.528,-9.454,-9.373,-9.283,-9.186,
--9.084,-8.976,-8.865,-8.752,-8.640,-8.530,-8.425,-8.325,-8.233,-8.150,-8.075,-8.008,-7.948,-7.892,-7.838,-7.784,
--7.728,-7.668,-7.604,-7.534,-7.461,-7.385,-7.308,-7.230,-7.153,-7.076,-6.999,-6.921,-6.840,-6.754,-6.661,-6.561,
--6.454,-6.342,-6.227,-6.113,-6.005,-5.906,-5.821,-5.751,-5.698,-5.660,-5.635,-5.617,-5.601,-5.582,-5.554,-5.513,
--5.458,-5.388,-5.306,-5.217,-5.126,-5.039,-4.962,-4.899,-4.853,-4.823,-4.807,-4.801,-4.798,-4.791,-4.774,-4.742,
--4.692,-4.622,-4.533,-4.429,-4.314,-4.195,-4.076,-3.963,-3.859,-3.765,-3.681,-3.606,-3.537,-3.471,-3.405,-3.339,
--3.270,-3.200,-3.128,-3.057,-2.988,-2.922,-2.860,-2.799,-2.739,-2.677,-2.611,-2.538,-2.459,-2.372,-2.280,-2.187,
--2.097,-2.014,-1.943,-1.887,-1.846,-1.819,-1.803,-1.793,-1.782,-1.764,-1.734,-1.687,-1.622,-1.540,-1.446,-1.345,
--1.245,-1.152,-1.073,-1.011,-.968,-.941,-.925,-.913,-.898,-.870,-.823,-.753,-.659,-.541,-.406,-.261,
--.114,.023,.144,.242,.311,.352,.367,.359,.336,.306,.275,.250,.237,.239,.257,.289,
-.334,.387,.444,.503,.559,.610,.656,.699,.739,.781,.827,.882,.950,1.033,1.134,1.253,
-1.390,1.544,1.712,1.892,2.079,2.269,2.460,2.649,2.831,3.006,3.169,3.319,3.453,3.566,3.655,3.714,
-3.738,3.720,3.658,3.548,3.389,3.183,2.936,2.657,2.356,2.048,1.747,1.467,1.220,1.018,.866,.766,
-.716,.708,.735,.785,.845,.905,.956,.990,1.006,1.003,.984,.954,.917,.882,.853,.834,
-.829,.838,.861,.898,.945,1.001,1.062,1.126,1.191,1.255,1.315,1.371,1.418,1.456,1.482,1.495,
-1.494,1.480,1.454,1.420,1.380,1.341,1.307,1.282,1.269,1.270,1.285,1.310,1.343,1.377,1.409,1.432,
-1.443,1.440,1.424,1.396,1.361,1.323,1.288,1.261,1.245,1.242,1.253,1.274,1.303,1.334,1.361,1.381,
-1.390,1.385,1.367,1.338,1.300,1.258,1.216,1.178,1.148,1.128,1.119,1.121,1.133,1.152,1.178,1.208,
-1.241,1.277,1.314,1.352,1.390,1.428,1.463,1.494,1.516,1.528,1.525,1.505,1.468,1.414,1.344,1.262,
-1.174,1.085,1.001,.926,.866,.822,.794,.780,.778,.782,.789,.794,.796,.794,.789,.785,
-.787,.801,.833,.887,.967,1.072,1.200,1.346,1.502,1.658,1.803,1.929,2.024,2.083,2.101,2.076,
-2.010,1.908,1.775,1.620,1.451,1.278,1.109,.951,.810,.689,.592,.519,.467,.434,.415,.405,
-.396,.384,.360,.320,.257,.169,.052,-.093,-.267,-.467,-.691,-.936,-1.197,-1.473,-1.759,-2.054,
--2.354,-2.659,-2.964,-3.268,-3.566,-3.853,-4.124,-4.372,-4.593,-4.781,-4.934,-5.050,-5.132,-5.186,-5.218,-5.239,
--5.258,-5.287,-5.334,-5.407,-5.509,-5.640,-5.795,-5.968,-6.149,-6.328,-6.493,-6.636,-6.750,-6.832,-6.883,-6.906,
--6.908,-6.897,-6.882,-6.871,-6.871,-6.885,-6.913,-6.954,-7.001,-7.047,-7.083,-7.099,-7.088,-7.043,-6.959,-6.836,
--6.674,-6.480,-6.259,-6.021,-5.777,-5.538,-5.314,-5.117,-4.955,-4.834,-4.761,-4.738,-4.765,-4.839,-4.955,-5.109,
--5.291,-5.493,-5.707,-5.924,-6.138,-6.342,-6.532,-6.707,-6.867,-7.013,-7.148,-7.274,-7.395,-7.514,-7.632,-7.749,
--7.867,-7.983,-8.098,-8.210,-8.318,-8.422,-8.524,-8.625,-8.726,-8.831,-8.940,-9.056,-9.177,-9.301,-9.425,-9.545,
--9.655,-9.751,-9.828,-9.883,-9.915,-9.925,-9.916,-9.892,-9.857,-9.814,-9.767,-9.714,-9.654,-9.580,-9.485,-9.359,
--9.194,-8.982,-8.718,-8.403,-8.042,-7.645,-7.230,-6.815,-6.424,-6.080,-5.804,-5.613,-5.519,-5.527,-5.634,-5.832,
--6.105,-6.433,-6.797,-7.172,-7.541,-7.886,-8.194,-8.459,-8.676,-8.848,-8.977,-9.071,-9.135,-9.177,-9.203,-9.217,
--9.222,-9.222,-9.218,-9.214,-9.212,-9.216,-9.230,-9.259,-9.307,-9.378,-9.475,-9.597,-9.744,-9.910,-10.089,-10.275,
--10.460,-10.636,-10.797,-10.940,-11.066,-11.177,-11.280,-11.382,-11.494,-11.625,-11.784,-11.978,-12.208,-12.474,-12.771,-13.091,
--13.423,-13.756,-14.077,-14.376,-14.646,-14.884,-15.089,-15.265,-15.417,-15.554,-15.683,-15.812,-15.945,-16.087,-16.235,-16.388,
--16.539,-16.683,-16.813,-16.926,-17.019,-17.091,-17.146,-17.188,-17.224,-17.259,-17.299,-17.347,-17.405,-17.470,-17.539,-17.605,
--17.662,-17.704,-17.729,-17.733,-17.719,-17.690,-17.654,-17.617,-17.587,-17.569,-17.566,-17.580,-17.606,-17.640,-17.673,-17.696,
--17.702,-17.685,-17.640,-17.566,-17.465,-17.340,-17.196,-17.039,-16.871,-16.694,-16.508,-16.311,-16.099,-15.870,-15.620,-15.350,
--15.063,-14.765,-14.465,-14.175,-13.907,-13.672,-13.477,-13.328,-13.222,-13.153,-13.109,-13.076,-13.038,-12.979,-12.887,-12.752,
--12.573,-12.352,-12.098,-11.821,-11.538,-11.262,-11.005,-10.777,-10.583,-10.425,-10.299,-10.202,-10.125,-10.064,-10.014,-9.971,
--9.937,-9.913,-9.900,-9.902,-9.918,-9.947,-9.983,-10.019,-10.043,-10.046,-10.017,-9.950,-9.840,-9.691,-9.512,-9.313,
--9.111,-8.924,-8.765,-8.648,-8.577,-8.552,-8.564,-8.597,-8.633,-8.650,-8.626,-8.544,-8.394,-8.172,-7.884,-7.543,
--7.166,-6.778,-6.400,-6.053,-5.752,-5.503,-5.305,-5.150,-5.021,-4.896,-4.753,-4.568,-4.324,-4.007,-3.611,-3.139,
--2.600,-2.007,-1.380,-.738,-.098,.525,1.121,1.687,2.224,2.739,3.244,3.750,4.269,4.814,5.390,6.001,
-6.645,7.316,8.004,8.693,9.371,10.020,10.627,11.182,11.675,12.103,12.468,12.773,13.027,13.240,13.422,13.587,
-13.743,13.898,14.058,14.224,14.395,14.569,14.738,14.898,15.044,15.170,15.277,15.365,15.438,15.503,15.569,15.646,
-15.743,15.869,16.032,16.236,16.483,16.772,17.101,17.464,17.855,18.268,18.696,19.131,19.566,19.991,20.399,20.779,
-21.118,21.405,21.624,21.765,21.815,21.767,21.619,21.372,21.038,20.632,20.178,19.703,19.237,18.811,18.452,18.185,
-18.025,17.983,18.057,18.240,18.518,18.870,19.275,19.709,20.152,20.588,21.005,21.396,21.762,22.106,22.435,22.760,
-23.088,23.429,23.789,24.172,24.578,25.005,25.450,25.907,26.371,26.834,27.294,27.746,28.188,28.620,29.041,29.452,
-29.854,30.248,30.633,31.010,31.375,31.728,32.064,32.382,32.678,32.952,33.201,33.427,33.630,33.815,33.984,34.142,
-34.293,34.442,34.591,34.743,34.899,35.058,35.218,35.379,35.536,35.689,35.835,35.974,36.106,36.235,36.362,36.491,
-36.625,36.767,36.918,37.079,37.246,37.416,37.586,37.749,37.901,38.038,38.157,38.259,38.345,38.421,38.492,38.568,
-38.655,38.764,38.900,39.071,39.279,39.525,39.811,40.131,40.483,40.860,41.255,41.662,42.073,42.479,42.872,43.245,
-43.590,43.901,44.171,44.399,44.583,44.725,44.832,44.911,44.974,45.033,45.103,45.195,45.321,45.486,45.694,45.939,
-46.215,46.509,46.804,47.083,47.330,47.530,47.673,47.754,47.774,47.740,47.661,47.553,47.431,47.312,47.210,47.135,
-47.095,47.092,47.126,47.191,47.281,47.389,47.506,47.626,47.744,47.855,47.958,48.052,48.140,48.220,48.296,48.368,
-48.439,48.508,48.577,48.648,48.722,48.799,48.882,48.970,49.063,49.160,49.259,49.357,49.451,49.535,49.608,49.667,
-49.714,49.751,49.782,49.816,49.860,49.922,50.009,50.125,50.270,50.441,50.629,50.823,51.007,51.167,51.287,51.353,
-51.356,51.294,51.167,50.982,50.750,50.488,50.212,49.937,49.679,49.450,49.256,49.102,48.987,48.906,48.853,48.821,
-48.802,48.790,48.780,48.768,48.753,48.737,48.718,48.700,48.683,48.667,48.652,48.636,48.618,48.596,48.569,48.536,
-48.497,48.453,48.407,48.361,48.319,48.283,48.255,48.237,48.227,48.225,48.227,48.230,48.231,48.227,48.214,48.192,
-48.160,48.120,48.073,48.022,47.970,47.919,47.871,47.827,47.785,47.745,47.703,47.656,47.600,47.532,47.450,47.353,
-47.240,47.114,47.454,47.361,47.274,47.195,47.123,47.062,47.011,46.970,46.938,46.913,46.892,46.870,46.844,46.811,
-46.767,46.711,46.643,46.562,46.472,46.375,46.274,46.170,46.065,45.959,45.851,45.738,45.617,45.484,45.337,45.174,
-44.995,44.801,44.595,44.383,44.171,43.963,43.766,43.581,43.412,43.257,43.113,42.978,42.847,42.714,42.575,42.428,
-42.269,42.098,41.916,41.723,41.521,41.312,41.097,40.875,40.647,40.413,40.171,39.921,39.661,39.391,39.109,38.814,
-38.504,38.176,37.826,37.450,37.044,36.605,36.131,35.622,35.081,34.514,33.930,33.339,32.755,32.188,31.651,31.151,
-30.692,30.274,29.893,29.542,29.209,28.885,28.557,28.218,27.862,27.488,27.099,26.699,26.297,25.902,25.523,25.165,
-24.835,24.533,24.258,24.007,23.775,23.557,23.347,23.140,22.934,22.727,22.518,22.307,22.096,21.883,21.670,21.455,
-21.238,21.018,20.794,20.565,20.334,20.102,19.870,19.644,19.424,19.213,19.012,18.819,18.632,18.446,18.258,18.062,
-17.854,17.634,17.400,17.155,16.905,16.655,16.413,16.186,15.980,15.799,15.644,15.513,15.401,15.303,15.210,15.113,
-15.004,14.876,14.726,14.551,14.351,14.130,13.890,13.638,13.378,13.115,12.853,12.594,12.339,12.089,11.842,11.596,
-11.350,11.102,10.852,10.601,10.349,10.098,9.852,9.612,9.381,9.160,8.950,8.749,8.557,8.372,8.190,8.009,
-7.827,7.643,7.456,7.268,7.080,6.896,6.718,6.550,6.392,6.245,6.109,5.979,5.852,5.721,5.582,5.430,
-5.260,5.072,4.865,4.644,4.413,4.180,3.950,3.731,3.526,3.339,3.169,3.014,2.867,2.724,2.577,2.423,
-2.259,2.085,1.906,1.731,1.568,1.430,1.327,1.269,1.260,1.301,1.385,1.502,1.637,1.771,1.885,1.959,
-1.978,1.930,1.810,1.619,1.363,1.055,.709,.343,-.027,-.387,-.724,-1.032,-1.306,-1.547,-1.759,-1.946,
--2.115,-2.271,-2.417,-2.556,-2.689,-2.814,-2.930,-3.034,-3.125,-3.202,-3.265,-3.316,-3.360,-3.399,-3.439,-3.483,
--3.532,-3.590,-3.656,-3.727,-3.802,-3.879,-3.953,-4.024,-4.090,-4.152,-4.211,-4.271,-4.334,-4.405,-4.485,-4.578,
--4.682,-4.797,-4.921,-5.048,-5.175,-5.296,-5.407,-5.504,-5.587,-5.654,-5.708,-5.751,-5.788,-5.823,-5.863,-5.911,
--5.970,-6.043,-6.129,-6.227,-6.334,-6.448,-6.563,-6.676,-6.785,-6.887,-6.982,-7.070,-7.154,-7.236,-7.319,-7.406,
--7.499,-7.599,-7.705,-7.815,-7.927,-8.035,-8.135,-8.224,-8.297,-8.352,-8.387,-8.403,-8.401,-8.385,-8.358,-8.325,
--8.290,-8.258,-8.233,-8.219,-8.220,-8.237,-8.273,-8.328,-8.402,-8.496,-8.608,-8.736,-8.876,-9.025,-9.178,-9.332,
--9.480,-9.621,-9.751,-9.868,-9.972,-10.066,-10.150,-10.229,-10.304,-10.380,-10.457,-10.536,-10.617,-10.697,-10.774,-10.843,
--10.902,-10.947,-10.977,-10.990,-10.988,-10.973,-10.947,-10.913,-10.875,-10.833,-10.790,-10.746,-10.699,-10.647,-10.590,-10.526,
--10.453,-10.373,-10.286,-10.195,-10.103,-10.016,-9.937,-9.871,-9.822,-9.794,-9.789,-9.810,-9.858,-9.933,-10.037,-10.168,
--10.324,-10.502,-10.700,-10.909,-11.124,-11.337,-11.537,-11.716,-11.865,-11.978,-12.049,-12.078,-12.065,-12.014,-11.932,-11.828,
--11.709,-11.586,-11.466,-11.356,-11.260,-11.180,-11.118,-11.074,-11.047,-11.038,-11.044,-11.068,-11.110,-11.170,-11.248,-11.343,
--11.451,-11.567,-11.684,-11.793,-11.883,-11.945,-11.972,-11.956,-11.896,-11.792,-11.648,-11.474,-11.279,-11.074,-10.873,-10.685,
--10.519,-10.380,-10.273,-10.195,-10.144,-10.115,-10.101,-10.094,-10.090,-10.080,-10.061,-10.029,-9.983,-9.921,-9.843,-9.751,
--9.647,-9.531,-9.407,-9.278,-9.148,-9.018,-8.894,-8.778,-8.673,-8.580,-8.502,-8.437,-8.385,-8.343,-8.308,-8.277,
--8.245,-8.209,-8.167,-8.117,-8.058,-7.991,-7.917,-7.837,-7.753,-7.666,-7.577,-7.487,-7.394,-7.298,-7.196,-7.088,
--6.974,-6.853,-6.728,-6.600,-6.475,-6.355,-6.247,-6.155,-6.081,-6.027,-5.994,-5.978,-5.976,-5.982,-5.989,-5.991,
--5.981,-5.956,-5.914,-5.855,-5.781,-5.698,-5.611,-5.527,-5.452,-5.390,-5.344,-5.314,-5.299,-5.294,-5.293,-5.290,
--5.278,-5.253,-5.210,-5.148,-5.066,-4.967,-4.853,-4.730,-4.600,-4.467,-4.335,-4.204,-4.076,-3.951,-3.829,-3.710,
--3.596,-3.487,-3.385,-3.293,-3.213,-3.146,-3.092,-3.049,-3.016,-2.987,-2.958,-2.923,-2.878,-2.821,-2.749,-2.665,
--2.572,-2.475,-2.380,-2.292,-2.216,-2.154,-2.108,-2.074,-2.047,-2.021,-1.988,-1.942,-1.879,-1.795,-1.693,-1.575,
--1.448,-1.320,-1.199,-1.093,-1.008,-.945,-.904,-.881,-.870,-.863,-.852,-.830,-.792,-.736,-.661,-.572,
--.475,-.374,-.279,-.194,-.123,-.068,-.029,-.003,.015,.030,.046,.068,.099,.138,.185,.238,
-.294,.348,.397,.441,.477,.508,.534,.560,.590,.627,.675,.738,.815,.909,1.017,1.137,
-1.267,1.404,1.545,1.687,1.828,1.968,2.106,2.244,2.383,2.523,2.666,2.812,2.957,3.100,3.234,3.353,
-3.448,3.510,3.531,3.504,3.425,3.292,3.107,2.878,2.615,2.332,2.044,1.766,1.514,1.300,1.133,1.016,
-.948,.925,.935,.969,1.014,1.057,1.088,1.102,1.094,1.064,1.017,.957,.893,.830,.777,.737,
-.713,.707,.718,.743,.781,.829,.885,.946,1.013,1.082,1.154,1.226,1.296,1.362,1.419,1.464,
-1.494,1.506,1.500,1.478,1.442,1.398,1.352,1.311,1.280,1.264,1.266,1.285,1.319,1.364,1.413,1.460,
-1.499,1.526,1.537,1.533,1.516,1.489,1.459,1.429,1.405,1.390,1.384,1.388,1.397,1.409,1.418,1.421,
-1.413,1.394,1.364,1.326,1.282,1.238,1.199,1.168,1.149,1.144,1.151,1.170,1.197,1.229,1.263,1.295,
-1.325,1.352,1.377,1.401,1.425,1.451,1.477,1.504,1.527,1.542,1.545,1.530,1.493,1.431,1.344,1.233,
-1.103,.960,.813,.669,.536,.421,.328,.258,.210,.181,.164,.156,.150,.142,.132,.119,
-.107,.100,.105,.127,.173,.244,.342,.464,.605,.756,.908,1.050,1.174,1.270,1.331,1.356,
-1.342,1.293,1.214,1.110,.989,.860,.730,.607,.495,.400,.324,.268,.233,.217,.216,.227,
-.244,.260,.269,.264,.239,.189,.111,.002,-.137,-.304,-.493,-.701,-.920,-1.147,-1.377,-1.608,
--1.838,-2.069,-2.302,-2.539,-2.784,-3.035,-3.293,-3.554,-3.813,-4.062,-4.294,-4.503,-4.681,-4.826,-4.938,-5.020,
--5.081,-5.129,-5.176,-5.234,-5.311,-5.416,-5.553,-5.719,-5.910,-6.118,-6.332,-6.540,-6.732,-6.899,-7.035,-7.140,
--7.215,-7.265,-7.299,-7.326,-7.354,-7.390,-7.437,-7.497,-7.568,-7.643,-7.713,-7.771,-7.805,-7.807,-7.771,-7.693,
--7.572,-7.411,-7.216,-6.994,-6.755,-6.511,-6.272,-6.049,-5.851,-5.686,-5.559,-5.475,-5.436,-5.440,-5.487,-5.572,
--5.691,-5.837,-6.004,-6.184,-6.371,-6.558,-6.740,-6.912,-7.071,-7.214,-7.342,-7.455,-7.554,-7.641,-7.720,-7.791,
--7.858,-7.924,-7.989,-8.057,-8.127,-8.203,-8.284,-8.373,-8.469,-8.574,-8.688,-8.809,-8.936,-9.067,-9.196,-9.321,
--9.435,-9.536,-9.618,-9.681,-9.722,-9.744,-9.748,-9.738,-9.718,-9.693,-9.665,-9.635,-9.601,-9.560,-9.504,-9.426,
--9.316,-9.168,-8.975,-8.736,-8.453,-8.133,-7.790,-7.439,-7.102,-6.798,-6.547,-6.366,-6.268,-6.258,-6.337,-6.498,
--6.728,-7.010,-7.326,-7.656,-7.980,-8.283,-8.554,-8.785,-8.972,-9.117,-9.224,-9.297,-9.344,-9.370,-9.381,-9.380,
--9.369,-9.350,-9.325,-9.292,-9.255,-9.215,-9.176,-9.142,-9.118,-9.110,-9.122,-9.159,-9.222,-9.313,-9.429,-9.569,
--9.728,-9.901,-10.082,-10.267,-10.452,-10.635,-10.816,-10.997,-11.180,-11.370,-11.571,-11.786,-12.019,-12.272,-12.543,-12.831,
--13.131,-13.438,-13.745,-14.047,-14.339,-14.616,-14.876,-15.120,-15.349,-15.567,-15.777,-15.983,-16.189,-16.396,-16.603,-16.808,
--17.009,-17.199,-17.376,-17.534,-17.671,-17.789,-17.887,-17.971,-18.045,-18.115,-18.187,-18.262,-18.343,-18.428,-18.511,-18.588,
--18.651,-18.693,-18.710,-18.699,-18.662,-18.605,-18.536,-18.464,-18.402,-18.359,-18.343,-18.356,-18.399,-18.465,-18.546,-18.629,
--18.701,-18.750,-18.767,-18.745,-18.682,-18.579,-18.442,-18.277,-18.092,-17.892,-17.681,-17.462,-17.234,-16.992,-16.735,-16.459,
--16.163,-15.851,-15.528,-15.204,-14.892,-14.603,-14.350,-14.141,-13.981,-13.869,-13.796,-13.751,-13.716,-13.674,-13.607,-13.501,
--13.346,-13.138,-12.882,-12.585,-12.261,-11.927,-11.598,-11.291,-11.015,-10.779,-10.585,-10.432,-10.315,-10.228,-10.165,-10.121,
--10.092,-10.076,-10.074,-10.086,-10.110,-10.144,-10.184,-10.221,-10.246,-10.246,-10.213,-10.137,-10.014,-9.845,-9.640,-9.410,
--9.175,-8.956,-8.774,-8.646,-8.584,-8.593,-8.667,-8.791,-8.943,-9.094,-9.216,-9.278,-9.257,-9.137,-8.912,-8.589,
--8.183,-7.716,-7.219,-6.723,-6.254,-5.836,-5.483,-5.198,-4.975,-4.797,-4.641,-4.479,-4.283,-4.029,-3.696,-3.274,
--2.762,-2.166,-1.505,-.800,-.078,.635,1.315,1.941,2.503,2.996,3.424,3.798,4.137,4.461,4.792,5.150,
-5.554,6.013,6.533,7.111,7.738,8.397,9.071,9.736,10.373,10.962,11.489,11.943,12.323,12.630,12.873,13.066,
-13.221,13.355,13.481,13.609,13.746,13.893,14.049,14.207,14.360,14.500,14.621,14.718,14.793,14.848,14.893,14.937,
-14.992,15.071,15.184,15.340,15.543,15.793,16.090,16.428,16.801,17.205,17.635,18.086,18.559,19.050,19.558,20.080,
-20.609,21.133,21.635,22.096,22.490,22.794,22.981,23.035,22.942,22.700,22.318,21.816,21.223,20.577,19.923,19.302,
-18.757,18.320,18.019,17.864,17.860,17.996,18.254,18.610,19.035,19.502,19.985,20.464,20.924,21.358,21.764,22.146,
-22.511,22.869,23.230,23.600,23.988,24.395,24.822,25.269,25.730,26.202,26.680,27.157,27.631,28.098,28.555,29.001,
-29.435,29.859,30.271,30.673,31.065,31.447,31.818,32.178,32.526,32.860,33.179,33.481,33.765,34.030,34.276,34.502,
-34.709,34.899,35.072,35.232,35.379,35.515,35.642,35.761,35.873,35.979,36.079,36.175,36.269,36.364,36.462,36.568,
-36.686,36.819,36.969,37.138,37.325,37.528,37.742,37.963,38.183,38.397,38.598,38.782,38.948,39.097,39.232,39.358,
-39.484,39.617,39.767,39.940,40.143,40.379,40.650,40.954,41.290,41.650,42.030,42.423,42.821,43.216,43.603,43.973,
-44.320,44.639,44.923,45.169,45.374,45.537,45.660,45.749,45.812,45.858,45.902,45.956,46.034,46.147,46.301,46.500,
-46.740,47.010,47.298,47.584,47.849,48.072,48.235,48.328,48.343,48.283,48.157,47.982,47.777,47.568,47.377,47.225,
-47.130,47.100,47.139,47.243,47.400,47.596,47.813,48.033,48.239,48.418,48.561,48.664,48.728,48.758,48.763,48.753,
-48.741,48.737,48.751,48.791,48.861,48.963,49.095,49.253,49.431,49.618,49.806,49.985,50.144,50.276,50.376,50.442,
-50.475,50.480,50.468,50.448,50.434,50.440,50.475,50.548,50.663,50.817,51.002,51.206,51.411,51.600,51.753,51.853,
-51.888,51.851,51.740,51.563,51.330,51.058,50.767,50.474,50.198,49.952,49.747,49.587,49.471,49.394,49.348,49.325,
-49.313,49.304,49.293,49.276,49.253,49.225,49.196,49.170,49.151,49.142,49.145,49.157,49.178,49.204,49.229,49.248,
-49.259,49.257,49.240,49.209,49.166,49.114,49.056,48.996,48.940,48.891,48.851,48.822,48.804,48.794,48.792,48.793,
-48.794,48.791,48.781,48.760,48.727,48.681,48.622,48.551,48.468,48.377,48.279,48.177,48.072,47.965,47.859,47.755,
-47.652,47.551,47.454,48.072,48.034,48.003,47.975,47.949,47.924,47.899,47.874,47.847,47.818,47.784,47.742,47.689,
-47.623,47.540,47.438,47.316,47.176,47.019,46.850,46.673,46.492,46.314,46.140,45.972,45.811,45.655,45.501,45.345,
-45.185,45.019,44.845,44.665,44.480,44.293,44.109,43.930,43.759,43.598,43.445,43.300,43.160,43.022,42.882,42.739,
-42.592,42.440,42.284,42.125,41.964,41.801,41.635,41.463,41.281,41.084,40.869,40.629,40.362,40.065,39.739,39.383,
-39.000,38.592,38.162,37.711,37.240,36.748,36.235,35.700,35.145,34.572,33.987,33.397,32.815,32.251,31.717,31.223,
-30.777,30.382,30.035,29.729,29.452,29.191,28.931,28.657,28.358,28.026,27.660,27.262,26.841,26.406,25.971,25.546,
-25.142,24.767,24.423,24.111,23.829,23.570,23.329,23.101,22.878,22.659,22.440,22.220,22.000,21.779,21.558,21.336,
-21.113,20.887,20.658,20.424,20.185,19.943,19.700,19.458,19.221,18.991,18.771,18.561,18.361,18.169,17.982,17.795,
-17.606,17.412,17.212,17.006,16.797,16.588,16.385,16.193,16.014,15.853,15.709,15.581,15.467,15.361,15.259,15.153,
-15.040,14.915,14.775,14.619,14.447,14.259,14.057,13.842,13.616,13.380,13.135,12.881,12.619,12.351,12.076,11.798,
-11.517,11.236,10.959,10.687,10.423,10.168,9.923,9.690,9.466,9.252,9.045,8.844,8.647,8.454,8.262,8.071,
-7.880,7.690,7.501,7.313,7.127,6.945,6.769,6.598,6.435,6.278,6.128,5.983,5.839,5.693,5.542,5.381,
-5.207,5.017,4.810,4.588,4.353,4.109,3.863,3.621,3.389,3.173,2.975,2.797,2.638,2.496,2.366,2.243,
-2.123,2.004,1.885,1.768,1.657,1.560,1.483,1.432,1.414,1.429,1.477,1.551,1.639,1.730,1.806,1.851,
-1.850,1.792,1.669,1.479,1.226,.920,.574,.204,-.174,-.544,-.892,-1.209,-1.489,-1.733,-1.941,-2.120,
--2.277,-2.418,-2.548,-2.673,-2.793,-2.909,-3.019,-3.120,-3.209,-3.285,-3.347,-3.398,-3.439,-3.476,-3.513,-3.556,
--3.609,-3.675,-3.753,-3.844,-3.944,-4.047,-4.151,-4.249,-4.339,-4.419,-4.489,-4.552,-4.611,-4.672,-4.738,-4.815,
--4.906,-5.011,-5.131,-5.262,-5.400,-5.539,-5.672,-5.794,-5.901,-5.991,-6.062,-6.118,-6.161,-6.197,-6.232,-6.272,
--6.321,-6.382,-6.458,-6.546,-6.645,-6.750,-6.856,-6.958,-7.052,-7.133,-7.202,-7.260,-7.308,-7.351,-7.395,-7.445,
--7.505,-7.578,-7.666,-7.767,-7.880,-7.998,-8.117,-8.230,-8.333,-8.422,-8.493,-8.547,-8.585,-8.608,-8.621,-8.626,
--8.627,-8.626,-8.627,-8.629,-8.633,-8.641,-8.654,-8.673,-8.701,-8.741,-8.796,-8.870,-8.964,-9.079,-9.215,-9.367,
--9.530,-9.699,-9.867,-10.027,-10.173,-10.303,-10.414,-10.510,-10.592,-10.667,-10.737,-10.809,-10.884,-10.964,-11.047,-11.130,
--11.206,-11.272,-11.321,-11.350,-11.357,-11.343,-11.309,-11.261,-11.203,-11.143,-11.082,-11.025,-10.973,-10.923,-10.873,-10.819,
--10.757,-10.685,-10.603,-10.511,-10.415,-10.319,-10.233,-10.165,-10.122,-10.112,-10.138,-10.203,-10.306,-10.444,-10.613,-10.805,
--11.013,-11.230,-11.449,-11.662,-11.863,-12.045,-12.204,-12.333,-12.430,-12.489,-12.510,-12.492,-12.436,-12.348,-12.233,-12.099,
--11.955,-11.812,-11.679,-11.563,-11.473,-11.410,-11.379,-11.377,-11.405,-11.457,-11.532,-11.623,-11.729,-11.844,-11.966,-12.090,
--12.213,-12.328,-12.431,-12.513,-12.569,-12.591,-12.575,-12.516,-12.414,-12.271,-12.093,-11.887,-11.664,-11.436,-11.213,-11.007,
--10.825,-10.674,-10.555,-10.469,-10.413,-10.380,-10.366,-10.363,-10.365,-10.366,-10.362,-10.350,-10.326,-10.289,-10.239,-10.174,
--10.096,-10.004,-9.898,-9.781,-9.654,-9.520,-9.383,-9.246,-9.116,-8.995,-8.888,-8.797,-8.724,-8.668,-8.629,-8.602,
--8.585,-8.573,-8.561,-8.545,-8.521,-8.487,-8.441,-8.384,-8.316,-8.238,-8.153,-8.063,-7.968,-7.870,-7.769,-7.666,
--7.561,-7.453,-7.341,-7.226,-7.109,-6.991,-6.875,-6.764,-6.661,-6.570,-6.493,-6.433,-6.391,-6.365,-6.353,-6.352,
--6.356,-6.360,-6.359,-6.349,-6.326,-6.290,-6.240,-6.180,-6.113,-6.042,-5.975,-5.913,-5.861,-5.820,-5.790,-5.768,
--5.750,-5.733,-5.711,-5.680,-5.636,-5.576,-5.501,-5.408,-5.300,-5.177,-5.043,-4.897,-4.743,-4.582,-4.416,-4.247,
--4.077,-3.910,-3.748,-3.598,-3.462,-3.344,-3.248,-3.174,-3.122,-3.088,-3.068,-3.056,-3.044,-3.026,-2.997,-2.954,
--2.895,-2.823,-2.741,-2.654,-2.568,-2.488,-2.417,-2.357,-2.307,-2.261,-2.215,-2.162,-2.097,-2.013,-1.910,-1.787,
--1.650,-1.504,-1.357,-1.219,-1.097,-.997,-.922,-.872,-.843,-.830,-.824,-.818,-.805,-.780,-.740,-.688,
--.625,-.557,-.490,-.429,-.379,-.341,-.317,-.302,-.292,-.282,-.266,-.239,-.198,-.142,-.073,.006,
-.090,.174,.253,.321,.379,.424,.460,.489,.517,.548,.588,.638,.703,.781,.872,.971,
-1.076,1.180,1.281,1.374,1.458,1.533,1.599,1.661,1.722,1.787,1.860,1.945,2.044,2.157,2.281,2.409,
-2.536,2.650,2.741,2.800,2.818,2.789,2.712,2.588,2.423,2.230,2.020,1.809,1.612,1.442,1.309,1.220,
-1.175,1.170,1.197,1.244,1.298,1.348,1.382,1.392,1.376,1.332,1.267,1.185,1.096,1.009,.930,.867,
-.821,.795,.786,.792,.810,.837,.871,.911,.956,1.008,1.067,1.133,1.207,1.285,1.362,1.436,
-1.498,1.545,1.571,1.575,1.557,1.521,1.472,1.417,1.364,1.321,1.294,1.285,1.295,1.323,1.363,1.408,
-1.453,1.491,1.516,1.526,1.522,1.505,1.479,1.449,1.421,1.398,1.383,1.376,1.377,1.382,1.387,1.388,
-1.381,1.365,1.340,1.306,1.268,1.230,1.196,1.172,1.160,1.162,1.178,1.205,1.241,1.281,1.321,1.357,
-1.386,1.409,1.426,1.439,1.450,1.463,1.478,1.496,1.515,1.533,1.544,1.542,1.521,1.475,1.402,1.300,
-1.171,1.020,.854,.682,.513,.356,.219,.106,.021,-.039,-.077,-.100,-.112,-.121,-.132,-.148,
--.169,-.194,-.218,-.235,-.241,-.229,-.196,-.141,-.066,.025,.126,.229,.326,.408,.470,.508,
-.520,.508,.473,.422,.358,.289,.219,.153,.094,.046,.008,-.018,-.032,-.036,-.030,-.017,
-.001,.020,.036,.044,.039,.018,-.025,-.091,-.179,-.289,-.417,-.555,-.698,-.840,-.974,-1.098,
--1.211,-1.317,-1.420,-1.529,-1.653,-1.800,-1.976,-2.186,-2.430,-2.702,-2.994,-3.296,-3.594,-3.877,-4.134,-4.358,
--4.546,-4.701,-4.829,-4.940,-5.046,-5.157,-5.285,-5.436,-5.612,-5.813,-6.032,-6.261,-6.491,-6.709,-6.908,-7.081,
--7.226,-7.342,-7.434,-7.509,-7.574,-7.636,-7.701,-7.773,-7.853,-7.939,-8.024,-8.103,-8.168,-8.210,-8.222,-8.201,
--8.143,-8.049,-7.923,-7.770,-7.596,-7.411,-7.222,-7.038,-6.866,-6.712,-6.582,-6.479,-6.405,-6.362,-6.349,-6.366,
--6.411,-6.481,-6.573,-6.682,-6.805,-6.935,-7.069,-7.202,-7.330,-7.450,-7.558,-7.655,-7.738,-7.810,-7.871,-7.923,
--7.969,-8.010,-8.050,-8.090,-8.133,-8.179,-8.231,-8.290,-8.356,-8.430,-8.513,-8.604,-8.703,-8.808,-8.916,-9.025,
--9.131,-9.229,-9.316,-9.389,-9.444,-9.481,-9.499,-9.499,-9.485,-9.459,-9.424,-9.384,-9.340,-9.291,-9.235,-9.168,
--9.085,-8.978,-8.844,-8.678,-8.480,-8.252,-8.001,-7.738,-7.477,-7.233,-7.025,-6.867,-6.772,-6.749,-6.801,-6.926,
--7.117,-7.362,-7.645,-7.951,-8.261,-8.562,-8.839,-9.085,-9.292,-9.460,-9.588,-9.680,-9.739,-9.769,-9.775,-9.759,
--9.725,-9.674,-9.608,-9.529,-9.441,-9.345,-9.247,-9.152,-9.065,-8.992,-8.939,-8.911,-8.912,-8.944,-9.009,-9.107,
--9.236,-9.396,-9.582,-9.791,-10.018,-10.261,-10.513,-10.772,-11.033,-11.295,-11.556,-11.813,-12.068,-12.320,-12.571,-12.821,
--13.073,-13.327,-13.583,-13.843,-14.105,-14.370,-14.635,-14.900,-15.165,-15.429,-15.693,-15.955,-16.218,-16.479,-16.740,-16.998,
--17.251,-17.497,-17.731,-17.952,-18.155,-18.340,-18.507,-18.656,-18.790,-18.912,-19.025,-19.132,-19.235,-19.333,-19.424,-19.503,
--19.565,-19.606,-19.621,-19.608,-19.568,-19.507,-19.431,-19.352,-19.281,-19.230,-19.207,-19.219,-19.266,-19.345,-19.444,-19.553,
--19.654,-19.733,-19.775,-19.770,-19.713,-19.603,-19.445,-19.249,-19.024,-18.782,-18.533,-18.282,-18.034,-17.786,-17.536,-17.277,
--17.005,-16.716,-16.411,-16.094,-15.773,-15.460,-15.167,-14.908,-14.692,-14.525,-14.405,-14.326,-14.276,-14.238,-14.194,-14.124,
--14.014,-13.855,-13.641,-13.376,-13.070,-12.737,-12.394,-12.059,-11.748,-11.474,-11.244,-11.062,-10.926,-10.831,-10.770,-10.736,
--10.721,-10.720,-10.729,-10.746,-10.769,-10.797,-10.827,-10.854,-10.871,-10.871,-10.846,-10.786,-10.689,-10.551,-10.378,-10.177,
--9.965,-9.757,-9.575,-9.435,-9.353,-9.337,-9.387,-9.496,-9.646,-9.813,-9.969,-10.083,-10.126,-10.077,-9.919,-9.648,
--9.269,-8.800,-8.265,-7.693,-7.117,-6.567,-6.069,-5.639,-5.286,-5.005,-4.784,-4.601,-4.429,-4.239,-4.003,-3.697,
--3.306,-2.823,-2.249,-1.599,-.892,-.156,.581,1.288,1.939,2.515,3.003,3.401,3.715,3.961,4.162,4.344,
-4.537,4.768,5.061,5.432,5.889,6.431,7.049,7.724,8.434,9.152,9.850,10.504,11.094,11.607,12.036,12.383,
-12.657,12.869,13.037,13.175,13.299,13.417,13.538,13.661,13.784,13.902,14.008,14.097,14.164,14.212,14.244,14.267,
-14.294,14.336,14.405,14.510,14.657,14.847,15.079,15.347,15.645,15.966,16.306,16.665,17.046,17.454,17.899,18.389,
-18.931,19.525,20.164,20.834,21.509,22.156,22.738,23.215,23.552,23.719,23.698,23.486,23.095,22.552,21.897,21.179,
-20.452,19.768,19.176,18.713,18.403,18.258,18.275,18.437,18.720,19.095,19.527,19.988,20.451,20.897,21.315,21.701,
-22.057,22.391,22.713,23.034,23.366,23.717,24.093,24.499,24.933,25.394,25.878,26.378,26.889,27.404,27.916,28.420,
-28.913,29.392,29.854,30.301,30.733,31.153,31.563,31.966,32.365,32.760,33.152,33.539,33.918,34.285,34.632,34.956,
-35.250,35.509,35.731,35.915,36.063,36.177,36.262,36.327,36.376,36.419,36.460,36.507,36.563,36.632,36.718,36.821,
-36.944,37.087,37.250,37.435,37.639,37.861,38.099,38.348,38.603,38.860,39.112,39.355,39.583,39.795,39.990,40.168,
-40.335,40.496,40.656,40.824,41.006,41.207,41.431,41.680,41.955,42.253,42.571,42.904,43.249,43.599,43.952,44.301,
-44.644,44.975,45.291,45.588,45.862,46.108,46.323,46.507,46.660,46.784,46.885,46.972,47.054,47.142,47.246,47.375,
-47.531,47.715,47.922,48.139,48.352,48.542,48.690,48.781,48.803,48.749,48.621,48.431,48.197,47.942,47.694,47.480,
-47.325,47.248,47.259,47.361,47.544,47.794,48.086,48.395,48.694,48.958,49.169,49.313,49.388,49.396,49.349,49.263,
-49.158,49.054,48.971,48.924,48.925,48.979,49.086,49.240,49.432,49.649,49.876,50.097,50.301,50.475,50.613,50.712,
-50.774,50.804,50.813,50.812,50.817,50.839,50.891,50.981,51.111,51.280,51.480,51.698,51.918,52.120,52.286,52.398,
-52.444,52.416,52.312,52.139,51.908,51.634,51.338,51.037,50.752,50.497,50.284,50.117,49.998,49.922,49.881,49.866,
-49.866,49.872,49.876,49.873,49.862,49.843,49.819,49.794,49.774,49.761,49.760,49.771,49.793,49.826,49.865,49.906,
-49.944,49.975,49.995,50.002,49.993,49.967,49.928,49.875,49.812,49.744,49.674,49.605,49.543,49.488,49.443,49.408,
-49.381,49.361,49.343,49.323,49.297,49.261,49.211,49.146,49.065,48.970,48.864,48.751,48.636,48.524,48.419,48.325,
-48.243,48.174,48.118,48.072,48.925,48.919,48.905,48.879,48.839,48.782,48.711,48.627,48.533,48.431,48.323,48.210,
-48.093,47.969,47.836,47.693,47.537,47.369,47.191,47.004,46.813,46.623,46.438,46.261,46.096,45.940,45.793,45.650,
-45.508,45.362,45.207,45.042,44.866,44.679,44.486,44.289,44.091,43.896,43.705,43.520,43.339,43.163,42.989,42.819,
-42.652,42.491,42.338,42.197,42.070,41.958,41.858,41.766,41.673,41.568,41.439,41.272,41.056,40.783,40.448,40.052,
-39.600,39.100,38.566,38.008,37.440,36.870,36.306,35.753,35.212,34.683,34.165,33.660,33.169,32.695,32.243,31.821,
-31.432,31.081,30.769,30.490,30.238,30.001,29.765,29.515,29.237,28.921,28.560,28.155,27.709,27.232,26.737,26.237,
-25.747,25.278,24.839,24.436,24.068,23.735,23.431,23.151,22.890,22.643,22.405,22.174,21.948,21.725,21.504,21.281,
-21.056,20.824,20.582,20.330,20.065,19.789,19.505,19.217,18.931,18.654,18.390,18.145,17.921,17.719,17.538,17.375,
-17.225,17.086,16.953,16.824,16.696,16.571,16.447,16.326,16.207,16.091,15.974,15.855,15.730,15.596,15.450,15.289,
-15.114,14.927,14.730,14.527,14.322,14.119,13.920,13.724,13.530,13.334,13.132,12.919,12.691,12.446,12.182,11.903,
-11.612,11.316,11.021,10.735,10.462,10.208,9.973,9.758,9.558,9.370,9.189,9.010,8.827,8.640,8.445,8.245,
-8.039,7.832,7.626,7.425,7.231,7.045,6.869,6.703,6.545,6.394,6.248,6.104,5.960,5.811,5.655,5.488,
-5.308,5.113,4.901,4.673,4.430,4.175,3.914,3.652,3.396,3.152,2.928,2.728,2.555,2.410,2.293,2.200,
-2.128,2.072,2.027,1.990,1.958,1.931,1.909,1.892,1.883,1.881,1.885,1.893,1.899,1.896,1.875,1.827,
-1.742,1.613,1.435,1.209,.936,.625,.284,-.072,-.431,-.780,-1.106,-1.402,-1.663,-1.888,-2.080,-2.243,
--2.384,-2.511,-2.630,-2.745,-2.859,-2.973,-3.084,-3.191,-3.289,-3.376,-3.451,-3.514,-3.567,-3.614,-3.660,-3.711,
--3.772,-3.846,-3.935,-4.038,-4.152,-4.273,-4.395,-4.511,-4.618,-4.712,-4.791,-4.858,-4.914,-4.966,-5.019,-5.079,
--5.152,-5.241,-5.346,-5.467,-5.601,-5.741,-5.881,-6.016,-6.139,-6.247,-6.337,-6.410,-6.468,-6.515,-6.556,-6.598,
--6.646,-6.704,-6.774,-6.856,-6.947,-7.043,-7.140,-7.230,-7.309,-7.372,-7.417,-7.444,-7.456,-7.458,-7.456,-7.457,
--7.468,-7.495,-7.543,-7.611,-7.701,-7.807,-7.925,-8.049,-8.173,-8.292,-8.403,-8.504,-8.596,-8.680,-8.759,-8.836,
--8.912,-8.989,-9.064,-9.135,-9.200,-9.253,-9.292,-9.315,-9.324,-9.323,-9.317,-9.314,-9.324,-9.355,-9.413,-9.501,
--9.619,-9.764,-9.928,-10.103,-10.279,-10.446,-10.598,-10.731,-10.843,-10.938,-11.021,-11.097,-11.172,-11.250,-11.334,-11.421,
--11.508,-11.587,-11.652,-11.696,-11.712,-11.700,-11.660,-11.598,-11.520,-11.436,-11.356,-11.286,-11.233,-11.197,-11.177,-11.169,
--11.166,-11.160,-11.146,-11.121,-11.083,-11.037,-10.989,-10.948,-10.924,-10.926,-10.962,-11.035,-11.146,-11.290,-11.462,-11.651,
--11.848,-12.040,-12.220,-12.380,-12.515,-12.621,-12.699,-12.747,-12.768,-12.762,-12.732,-12.678,-12.602,-12.508,-12.398,-12.277,
--12.152,-12.030,-11.919,-11.828,-11.763,-11.731,-11.734,-11.774,-11.848,-11.953,-12.081,-12.227,-12.381,-12.537,-12.686,-12.823,
--12.942,-13.038,-13.107,-13.146,-13.151,-13.121,-13.053,-12.949,-12.810,-12.640,-12.443,-12.229,-12.005,-11.780,-11.564,-11.364,
--11.185,-11.032,-10.905,-10.803,-10.723,-10.661,-10.611,-10.570,-10.533,-10.499,-10.464,-10.429,-10.394,-10.359,-10.323,-10.286,
--10.247,-10.202,-10.150,-10.088,-10.015,-9.930,-9.832,-9.725,-9.612,-9.497,-9.385,-9.280,-9.187,-9.110,-9.049,-9.006,
--8.978,-8.963,-8.957,-8.956,-8.953,-8.946,-8.929,-8.899,-8.856,-8.796,-8.723,-8.636,-8.539,-8.435,-8.327,-8.219,
--8.112,-8.009,-7.911,-7.817,-7.726,-7.637,-7.547,-7.456,-7.362,-7.267,-7.170,-7.076,-6.987,-6.907,-6.838,-6.785,
--6.747,-6.725,-6.715,-6.713,-6.716,-6.717,-6.711,-6.695,-6.665,-6.621,-6.564,-6.497,-6.424,-6.350,-6.278,-6.212,
--6.153,-6.103,-6.059,-6.019,-5.979,-5.936,-5.886,-5.826,-5.753,-5.666,-5.564,-5.447,-5.316,-5.170,-5.012,-4.842,
--4.664,-4.478,-4.289,-4.101,-3.919,-3.748,-3.593,-3.459,-3.348,-3.261,-3.197,-3.154,-3.125,-3.105,-3.087,-3.065,
--3.033,-2.990,-2.933,-2.866,-2.792,-2.714,-2.638,-2.566,-2.501,-2.442,-2.386,-2.330,-2.267,-2.192,-2.102,-1.994,
--1.870,-1.731,-1.585,-1.439,-1.300,-1.175,-1.070,-.988,-.927,-.883,-.852,-.824,-.795,-.756,-.705,-.641,
--.567,-.487,-.409,-.339,-.285,-.250,-.237,-.244,-.268,-.300,-.334,-.359,-.370,-.361,-.328,-.273,
--.198,-.109,-.012,.086,.180,.265,.340,.403,.458,.506,.553,.601,.655,.715,.783,.857,
-.934,1.011,1.084,1.150,1.206,1.251,1.285,1.311,1.332,1.353,1.381,1.420,1.475,1.548,1.641,1.751,
-1.873,1.998,2.118,2.221,2.296,2.335,2.331,2.281,2.187,2.056,1.899,1.728,1.559,1.407,1.285,1.203,
-1.166,1.174,1.220,1.295,1.388,1.482,1.567,1.630,1.665,1.669,1.643,1.591,1.521,1.443,1.364,1.291,
-1.229,1.180,1.144,1.119,1.103,1.093,1.087,1.085,1.089,1.102,1.126,1.164,1.217,1.284,1.363,1.447,
-1.530,1.604,1.661,1.696,1.706,1.690,1.652,1.598,1.535,1.472,1.417,1.376,1.354,1.350,1.362,1.385,
-1.414,1.441,1.461,1.469,1.464,1.446,1.418,1.385,1.351,1.321,1.300,1.289,1.289,1.297,1.312,1.329,
-1.345,1.356,1.361,1.359,1.352,1.341,1.330,1.322,1.319,1.324,1.336,1.355,1.380,1.407,1.433,1.458,
-1.478,1.493,1.504,1.512,1.519,1.528,1.538,1.551,1.566,1.579,1.586,1.583,1.564,1.523,1.457,1.363,
-1.243,1.099,.937,.765,.591,.426,.278,.153,.055,-.014,-.057,-.077,-.083,-.080,-.078,-.082,
--.096,-.123,-.160,-.206,-.254,-.300,-.337,-.362,-.371,-.365,-.346,-.318,-.285,-.252,-.225,-.208,
--.200,-.203,-.215,-.231,-.249,-.265,-.275,-.278,-.274,-.262,-.245,-.226,-.206,-.188,-.173,-.162,
--.156,-.154,-.156,-.165,-.180,-.204,-.238,-.283,-.340,-.408,-.484,-.563,-.638,-.705,-.755,-.785,
--.792,-.779,-.752,-.719,-.694,-.691,-.723,-.801,-.935,-1.128,-1.375,-1.671,-2.002,-2.353,-2.709,-3.054,
--3.376,-3.669,-3.928,-4.157,-4.363,-4.555,-4.743,-4.937,-5.144,-5.369,-5.611,-5.866,-6.127,-6.385,-6.632,-6.859,
--7.061,-7.236,-7.383,-7.506,-7.610,-7.702,-7.787,-7.871,-7.956,-8.043,-8.131,-8.215,-8.292,-8.355,-8.401,-8.425,
--8.425,-8.401,-8.355,-8.288,-8.206,-8.111,-8.010,-7.905,-7.801,-7.701,-7.607,-7.522,-7.447,-7.384,-7.335,-7.301,
--7.282,-7.280,-7.293,-7.322,-7.364,-7.418,-7.481,-7.550,-7.622,-7.694,-7.764,-7.830,-7.889,-7.943,-7.991,-8.033,
--8.071,-8.105,-8.136,-8.165,-8.192,-8.217,-8.242,-8.267,-8.293,-8.321,-8.352,-8.390,-8.434,-8.488,-8.552,-8.626,
--8.708,-8.797,-8.887,-8.976,-9.056,-9.124,-9.174,-9.202,-9.207,-9.189,-9.148,-9.089,-9.014,-8.926,-8.830,-8.726,
--8.616,-8.498,-8.370,-8.231,-8.078,-7.911,-7.732,-7.546,-7.361,-7.187,-7.036,-6.921,-6.853,-6.844,-6.898,-7.019,
--7.203,-7.443,-7.728,-8.045,-8.378,-8.712,-9.033,-9.329,-9.591,-9.813,-9.991,-10.126,-10.218,-10.268,-10.279,-10.254,
--10.195,-10.107,-9.992,-9.856,-9.703,-9.540,-9.375,-9.215,-9.067,-8.939,-8.838,-8.769,-8.735,-8.740,-8.783,-8.866,
--8.987,-9.144,-9.335,-9.557,-9.807,-10.080,-10.371,-10.674,-10.983,-11.292,-11.593,-11.882,-12.155,-12.410,-12.647,-12.868,
--13.078,-13.282,-13.487,-13.697,-13.918,-14.153,-14.403,-14.668,-14.947,-15.236,-15.532,-15.832,-16.133,-16.433,-16.729,-17.023,
--17.311,-17.594,-17.869,-18.136,-18.391,-18.633,-18.857,-19.063,-19.249,-19.415,-19.561,-19.689,-19.800,-19.896,-19.976,-20.041,
--20.089,-20.120,-20.130,-20.121,-20.092,-20.048,-19.994,-19.939,-19.892,-19.864,-19.863,-19.897,-19.966,-20.069,-20.197,-20.337,
--20.472,-20.586,-20.661,-20.684,-20.643,-20.537,-20.369,-20.146,-19.883,-19.595,-19.296,-19.000,-18.717,-18.449,-18.197,-17.955,
--17.715,-17.469,-17.212,-16.939,-16.653,-16.359,-16.066,-15.789,-15.538,-15.325,-15.156,-15.032,-14.947,-14.891,-14.849,-14.801,
--14.731,-14.623,-14.468,-14.261,-14.005,-13.710,-13.391,-13.064,-12.748,-12.459,-12.210,-12.011,-11.863,-11.767,-11.715,-11.700,
--11.712,-11.743,-11.784,-11.829,-11.874,-11.914,-11.949,-11.974,-11.988,-11.985,-11.963,-11.918,-11.846,-11.746,-11.621,-11.476,
--11.318,-11.161,-11.016,-10.898,-10.816,-10.779,-10.789,-10.842,-10.928,-11.030,-11.127,-11.195,-11.211,-11.154,-11.006,-10.760,
--10.413,-9.974,-9.458,-8.890,-8.295,-7.704,-7.144,-6.640,-6.209,-5.862,-5.597,-5.407,-5.274,-5.175,-5.082,-4.966,
--4.801,-4.564,-4.239,-3.820,-3.310,-2.719,-2.068,-1.381,-.686,-.013,.613,1.173,1.653,2.051,2.372,2.632,
-2.854,3.063,3.291,3.563,3.904,4.330,4.849,5.459,6.148,6.898,7.682,8.473,9.241,9.960,10.610,11.176,
-11.652,12.039,12.346,12.583,12.766,12.910,13.027,13.129,13.221,13.305,13.382,13.449,13.506,13.551,13.589,13.624,
-13.664,13.719,13.798,13.911,14.060,14.247,14.467,14.713,14.973,15.238,15.497,15.747,15.989,16.232,16.490,16.782,
-17.129,17.551,18.058,18.656,19.336,20.078,20.849,21.607,22.307,22.902,23.350,23.620,23.697,23.581,23.288,22.853,
-22.319,21.739,21.165,20.646,20.224,19.926,19.766,19.744,19.847,20.054,20.335,20.661,21.004,21.341,21.656,21.940,
-22.193,22.420,22.633,22.844,23.068,23.318,23.604,23.935,24.314,24.741,25.212,25.723,26.265,26.828,27.404,27.981,
-28.550,29.105,29.639,30.149,30.633,31.095,31.537,31.966,32.387,32.806,33.228,33.653,34.082,34.510,34.928,35.327,
-35.695,36.023,36.300,36.521,36.683,36.789,36.844,36.860,36.850,36.827,36.806,36.800,36.818,36.869,36.954,37.075,
-37.228,37.411,37.617,37.842,38.081,38.329,38.584,38.842,39.103,39.363,39.621,39.874,40.118,40.352,40.574,40.780,
-40.972,41.150,41.318,41.481,41.642,41.809,41.988,42.184,42.400,42.639,42.901,43.186,43.491,43.814,44.151,44.497,
-44.851,45.207,45.563,45.914,46.257,46.586,46.895,47.179,47.432,47.650,47.830,47.973,48.082,48.162,48.223,48.275,
-48.329,48.392,48.472,48.570,48.683,48.803,48.917,49.012,49.073,49.087,49.047,48.952,48.809,48.631,48.440,48.259,
-48.115,48.030,48.022,48.101,48.266,48.507,48.805,49.133,49.461,49.759,50.002,50.169,50.252,50.249,50.170,50.035,
-49.865,49.689,49.532,49.417,49.360,49.370,49.448,49.589,49.779,50.002,50.239,50.472,50.686,50.868,51.012,51.115,
-51.183,51.223,51.246,51.265,51.295,51.347,51.430,51.549,51.704,51.891,52.099,52.315,52.524,52.708,52.850,52.937,
-52.958,52.910,52.792,52.611,52.380,52.113,51.828,51.542,51.273,51.034,50.834,50.678,50.566,50.496,50.460,50.450,
-50.459,50.477,50.498,50.518,50.533,50.543,50.549,50.553,50.555,50.557,50.562,50.569,50.579,50.591,50.605,50.619,
-50.635,50.649,50.663,50.673,50.680,50.681,50.675,50.659,50.632,50.592,50.539,50.474,50.398,50.316,50.229,50.142,
-50.058,49.979,49.908,49.843,49.783,49.726,49.669,49.608,49.542,49.469,49.391,49.309,49.227,49.150,49.081,49.024,
-48.981,48.953,48.937,48.929,48.925,49.702,49.677,49.632,49.562,49.467,49.346,49.204,49.045,48.877,48.705,48.536,
-48.372,48.215,48.064,47.916,47.768,47.616,47.458,47.291,47.118,46.941,46.763,46.587,46.418,46.256,46.101,45.952,
-45.803,45.652,45.492,45.320,45.134,44.934,44.722,44.502,44.278,44.054,43.834,43.619,43.409,43.203,43.001,42.801,
-42.604,42.412,42.231,42.066,41.925,41.813,41.733,41.683,41.657,41.641,41.617,41.566,41.465,41.296,41.044,40.701,
-40.267,39.751,39.168,38.541,37.892,37.244,36.618,36.029,35.485,34.991,34.543,34.136,33.762,33.413,33.083,32.769,
-32.467,32.178,31.902,31.638,31.381,31.127,30.868,30.592,30.290,29.951,29.571,29.144,28.674,28.168,27.635,27.090,
-26.545,26.015,25.509,25.036,24.599,24.199,23.833,23.497,23.186,22.895,22.622,22.362,22.113,21.875,21.643,21.416,
-21.189,20.956,20.713,20.456,20.181,19.887,19.578,19.258,18.934,18.615,18.310,18.027,17.773,17.551,17.362,17.204,
-17.073,16.964,16.871,16.789,16.714,16.643,16.574,16.505,16.434,16.359,16.274,16.176,16.058,15.915,15.743,15.541,
-15.310,15.054,14.781,14.499,14.219,13.949,13.697,13.467,13.257,13.064,12.881,12.698,12.507,12.299,12.069,11.817,
-11.544,11.257,10.965,10.679,10.407,10.157,9.935,9.739,9.569,9.417,9.276,9.136,8.991,8.834,8.660,8.470,
-8.264,8.049,7.827,7.607,7.393,7.189,6.999,6.824,6.662,6.512,6.370,6.234,6.099,5.960,5.815,5.659,
-5.489,5.304,5.101,4.881,4.643,4.391,4.127,3.857,3.588,3.327,3.080,2.854,2.657,2.491,2.359,2.261,
-2.196,2.160,2.149,2.156,2.177,2.205,2.237,2.266,2.289,2.301,2.299,2.279,2.235,2.164,2.060,1.919,
-1.739,1.518,1.257,.960,.634,.286,-.073,-.430,-.775,-1.098,-1.390,-1.646,-1.864,-2.047,-2.198,-2.324,
--2.433,-2.535,-2.636,-2.742,-2.855,-2.977,-3.105,-3.236,-3.365,-3.488,-3.601,-3.701,-3.790,-3.868,-3.940,-4.010,
--4.083,-4.164,-4.254,-4.355,-4.466,-4.583,-4.701,-4.817,-4.924,-5.019,-5.102,-5.171,-5.230,-5.282,-5.333,-5.389,
--5.454,-5.532,-5.625,-5.731,-5.849,-5.974,-6.102,-6.225,-6.341,-6.444,-6.534,-6.610,-6.674,-6.730,-6.782,-6.835,
--6.892,-6.958,-7.032,-7.116,-7.205,-7.297,-7.385,-7.464,-7.529,-7.576,-7.601,-7.604,-7.588,-7.558,-7.519,-7.480,
--7.449,-7.434,-7.439,-7.471,-7.529,-7.613,-7.718,-7.840,-7.971,-8.108,-8.243,-8.376,-8.503,-8.627,-8.750,-8.873,
--9.000,-9.131,-9.264,-9.396,-9.522,-9.634,-9.726,-9.791,-9.826,-9.832,-9.812,-9.775,-9.731,-9.694,-9.677,-9.690,
--9.740,-9.831,-9.960,-10.120,-10.301,-10.492,-10.680,-10.854,-11.009,-11.142,-11.253,-11.347,-11.430,-11.510,-11.590,-11.672,
--11.757,-11.838,-11.908,-11.960,-11.984,-11.977,-11.935,-11.862,-11.766,-11.656,-11.547,-11.451,-11.380,-11.342,-11.340,-11.372,
--11.433,-11.514,-11.603,-11.692,-11.771,-11.839,-11.894,-11.940,-11.984,-12.033,-12.095,-12.174,-12.271,-12.385,-12.508,-12.634,
--12.751,-12.850,-12.924,-12.967,-12.978,-12.960,-12.918,-12.858,-12.789,-12.716,-12.644,-12.575,-12.511,-12.448,-12.387,-12.324,
--12.260,-12.196,-12.137,-12.090,-12.060,-12.056,-12.084,-12.148,-12.248,-12.382,-12.543,-12.723,-12.911,-13.096,-13.266,-13.412,
--13.526,-13.601,-13.636,-13.628,-13.578,-13.489,-13.363,-13.205,-13.020,-12.814,-12.594,-12.366,-12.137,-11.916,-11.708,-11.518,
--11.350,-11.204,-11.081,-10.978,-10.889,-10.812,-10.740,-10.670,-10.600,-10.528,-10.456,-10.386,-10.320,-10.262,-10.214,-10.177,
--10.151,-10.134,-10.122,-10.113,-10.101,-10.083,-10.056,-10.020,-9.973,-9.917,-9.854,-9.788,-9.721,-9.656,-9.597,-9.545,
--9.500,-9.462,-9.431,-9.405,-9.382,-9.359,-9.333,-9.301,-9.260,-9.208,-9.143,-9.064,-8.972,-8.868,-8.756,-8.639,
--8.523,-8.411,-8.307,-8.214,-8.132,-8.061,-7.997,-7.937,-7.875,-7.807,-7.730,-7.643,-7.544,-7.439,-7.330,-7.224,
--7.127,-7.045,-6.982,-6.939,-6.916,-6.910,-6.914,-6.922,-6.927,-6.923,-6.905,-6.871,-6.821,-6.757,-6.682,-6.601,
--6.520,-6.441,-6.368,-6.302,-6.243,-6.188,-6.134,-6.078,-6.018,-5.949,-5.871,-5.782,-5.681,-5.569,-5.445,-5.311,
--5.166,-5.011,-4.847,-4.675,-4.499,-4.320,-4.144,-3.974,-3.815,-3.672,-3.548,-3.443,-3.358,-3.290,-3.236,-3.190,
--3.146,-3.101,-3.050,-2.992,-2.927,-2.855,-2.780,-2.706,-2.635,-2.569,-2.508,-2.451,-2.394,-2.334,-2.266,-2.186,
--2.091,-1.983,-1.862,-1.734,-1.604,-1.479,-1.365,-1.265,-1.181,-1.112,-1.054,-1.001,-.947,-.885,-.810,-.719,
--.615,-.500,-.382,-.269,-.172,-.099,-.055,-.043,-.062,-.107,-.170,-.241,-.309,-.362,-.393,-.397,
--.370,-.315,-.235,-.138,-.030,.081,.187,.285,.371,.444,.505,.557,.604,.648,.692,.740,
-.792,.848,.907,.967,1.025,1.080,1.130,1.173,1.210,1.243,1.275,1.309,1.350,1.401,1.466,1.546,
-1.638,1.742,1.849,1.951,2.040,2.105,2.137,2.130,2.080,1.989,1.863,1.711,1.546,1.384,1.239,1.126,
-1.054,1.028,1.049,1.112,1.207,1.323,1.445,1.561,1.660,1.734,1.781,1.800,1.795,1.772,1.738,1.699,
-1.659,1.622,1.587,1.555,1.523,1.490,1.454,1.417,1.381,1.350,1.331,1.327,1.343,1.380,1.437,1.510,
-1.594,1.679,1.756,1.818,1.858,1.874,1.864,1.832,1.784,1.728,1.671,1.620,1.580,1.554,1.541,1.539,
-1.543,1.548,1.549,1.542,1.525,1.498,1.463,1.423,1.383,1.347,1.319,1.303,1.298,1.306,1.325,1.353,
-1.386,1.423,1.461,1.500,1.537,1.572,1.606,1.637,1.666,1.690,1.711,1.725,1.733,1.734,1.728,1.716,
-1.700,1.683,1.666,1.653,1.645,1.644,1.649,1.658,1.669,1.677,1.678,1.666,1.636,1.584,1.508,1.406,
-1.279,1.131,.966,.791,.615,.445,.290,.156,.049,-.029,-.078,-.101,-.102,-.090,-.071,-.054,
--.046,-.051,-.072,-.109,-.159,-.220,-.284,-.347,-.403,-.448,-.482,-.504,-.516,-.522,-.524,-.528,
--.533,-.542,-.553,-.564,-.571,-.571,-.561,-.538,-.503,-.458,-.404,-.348,-.293,-.244,-.205,-.178,
--.164,-.163,-.172,-.189,-.214,-.243,-.276,-.313,-.355,-.400,-.448,-.496,-.540,-.577,-.599,-.601,
--.579,-.532,-.460,-.370,-.271,-.175,-.096,-.051,-.051,-.108,-.227,-.407,-.646,-.932,-1.253,-1.594,
--1.941,-2.283,-2.611,-2.920,-3.211,-3.486,-3.752,-4.016,-4.284,-4.560,-4.845,-5.138,-5.436,-5.731,-6.016,-6.286,
--6.534,-6.757,-6.955,-7.130,-7.285,-7.425,-7.556,-7.680,-7.802,-7.921,-8.038,-8.150,-8.253,-8.345,-8.423,-8.485,
--8.530,-8.558,-8.572,-8.574,-8.565,-8.549,-8.525,-8.496,-8.462,-8.423,-8.378,-8.327,-8.271,-8.212,-8.152,-8.092,
--8.036,-7.987,-7.946,-7.915,-7.896,-7.887,-7.888,-7.898,-7.913,-7.933,-7.955,-7.978,-8.002,-8.024,-8.046,-8.066,
--8.086,-8.104,-8.121,-8.135,-8.145,-8.150,-8.150,-8.145,-8.134,-8.119,-8.103,-8.089,-8.080,-8.082,-8.098,-8.130,
--8.181,-8.250,-8.335,-8.431,-8.533,-8.631,-8.719,-8.788,-8.831,-8.844,-8.823,-8.769,-8.685,-8.573,-8.441,-8.293,
--8.135,-7.970,-7.802,-7.631,-7.459,-7.285,-7.112,-6.941,-6.779,-6.632,-6.511,-6.427,-6.392,-6.416,-6.506,-6.666,
--6.896,-7.188,-7.534,-7.917,-8.321,-8.728,-9.121,-9.485,-9.807,-10.080,-10.299,-10.463,-10.572,-10.629,-10.638,-10.602,
--10.527,-10.416,-10.273,-10.104,-9.914,-9.710,-9.502,-9.298,-9.107,-8.940,-8.803,-8.705,-8.649,-8.638,-8.674,-8.755,
--8.879,-9.043,-9.244,-9.477,-9.739,-10.025,-10.331,-10.649,-10.974,-11.298,-11.614,-11.915,-12.195,-12.450,-12.680,-12.886,
--13.074,-13.251,-13.425,-13.605,-13.799,-14.015,-14.255,-14.520,-14.808,-15.114,-15.434,-15.760,-16.086,-16.409,-16.726,-17.036,
--17.338,-17.634,-17.925,-18.211,-18.491,-18.762,-19.022,-19.264,-19.486,-19.684,-19.855,-19.998,-20.115,-20.208,-20.279,-20.332,
--20.369,-20.392,-20.403,-20.402,-20.390,-20.369,-20.341,-20.312,-20.288,-20.278,-20.289,-20.330,-20.405,-20.515,-20.658,-20.823,
--20.998,-21.166,-21.307,-21.405,-21.443,-21.413,-21.310,-21.137,-20.904,-20.626,-20.319,-20.002,-19.689,-19.391,-19.115,-18.860,
--18.621,-18.392,-18.162,-17.924,-17.673,-17.408,-17.134,-16.858,-16.593,-16.350,-16.141,-15.972,-15.845,-15.756,-15.696,-15.650,
--15.602,-15.534,-15.432,-15.285,-15.089,-14.848,-14.570,-14.268,-13.959,-13.663,-13.395,-13.169,-12.995,-12.876,-12.813,-12.799,
--12.828,-12.889,-12.971,-13.064,-13.159,-13.248,-13.325,-13.384,-13.422,-13.435,-13.420,-13.378,-13.306,-13.207,-13.084,-12.943,
--12.792,-12.640,-12.496,-12.371,-12.272,-12.204,-12.169,-12.165,-12.182,-12.211,-12.235,-12.238,-12.202,-12.111,-11.952,-11.717,
--11.401,-11.007,-10.545,-10.030,-9.480,-8.918,-8.369,-7.857,-7.402,-7.022,-6.727,-6.521,-6.400,-6.353,-6.359,-6.396,
--6.436,-6.449,-6.409,-6.293,-6.082,-5.769,-5.351,-4.838,-4.244,-3.592,-2.908,-2.217,-1.545,-.913,-.335,.182,
-.641,1.051,1.429,1.794,2.169,2.576,3.034,3.555,4.146,4.805,5.521,6.280,7.060,7.839,8.593,9.301,
-9.947,10.519,11.010,11.421,11.757,12.025,12.237,12.402,12.530,12.630,12.706,12.765,12.809,12.844,12.873,12.905,
-12.946,13.008,13.099,13.227,13.399,13.614,13.871,14.158,14.463,14.770,15.063,15.327,15.554,15.743,15.903,16.047,
-16.200,16.389,16.640,16.976,17.413,17.955,18.593,19.306,20.061,20.817,21.529,22.157,22.664,23.026,23.234,23.293,
-23.220,23.047,22.812,22.554,22.312,22.116,21.988,21.938,21.967,22.062,22.207,22.381,22.563,22.734,22.883,23.003,
-23.096,23.170,23.236,23.310,23.408,23.546,23.735,23.984,24.299,24.679,25.122,25.622,26.169,26.754,27.364,27.986,
-28.609,29.221,29.812,30.373,30.902,31.395,31.855,32.287,32.698,33.097,33.492,33.889,34.294,34.704,35.118,35.524,
-35.913,36.269,36.581,36.834,37.023,37.144,37.200,37.201,37.160,37.095,37.026,36.972,36.949,36.970,37.042,37.166,
-37.339,37.553,37.800,38.066,38.342,38.619,38.890,39.151,39.403,39.646,39.882,40.115,40.345,40.575,40.802,41.025,
-41.243,41.451,41.649,41.836,42.014,42.187,42.361,42.541,42.736,42.951,43.191,43.460,43.758,44.083,44.432,44.800,
-45.181,45.568,45.956,46.340,46.714,47.075,47.417,47.735,48.024,48.279,48.493,48.663,48.786,48.863,48.899,48.900,
-48.878,48.846,48.817,48.806,48.821,48.867,48.944,49.046,49.162,49.278,49.380,49.455,49.496,49.501,49.475,49.433,
-49.390,49.368,49.386,49.458,49.594,49.791,50.040,50.321,50.608,50.872,51.087,51.229,51.283,51.246,51.127,50.942,
-50.717,50.484,50.274,50.115,50.028,50.026,50.109,50.270,50.494,50.757,51.036,51.307,51.550,51.750,51.900,51.999,
-52.054,52.076,52.080,52.081,52.093,52.129,52.195,52.295,52.425,52.579,52.746,52.911,53.060,53.178,53.255,53.279,
-53.248,53.160,53.020,52.838,52.623,52.392,52.157,51.933,51.731,51.559,51.421,51.318,51.249,51.209,51.192,51.192,
-51.204,51.222,51.244,51.268,51.296,51.326,51.359,51.394,51.432,51.468,51.501,51.527,51.542,51.545,51.534,51.510,
-51.475,51.434,51.390,51.348,51.312,51.283,51.263,51.248,51.236,51.222,51.202,51.170,51.124,51.061,50.983,50.892,
-50.792,50.688,50.585,50.487,50.397,50.316,50.245,50.181,50.122,50.066,50.011,49.956,49.903,49.853,49.808,49.771,
-49.745,49.728,49.720,49.717,49.713,49.702,50.192,50.113,50.014,49.893,49.749,49.584,49.403,49.213,49.021,48.834,
-48.657,48.493,48.343,48.203,48.068,47.934,47.792,47.640,47.474,47.293,47.101,46.902,46.698,46.496,46.297,46.103,
-45.911,45.720,45.525,45.322,45.109,44.885,44.653,44.414,44.177,43.944,43.723,43.514,43.318,43.132,42.951,42.772,
-42.588,42.398,42.205,42.013,41.833,41.673,41.547,41.460,41.415,41.409,41.428,41.453,41.460,41.421,41.311,41.111,
-40.806,40.396,39.888,39.302,38.663,38.001,37.345,36.723,36.153,35.648,35.211,34.836,34.513,34.228,33.966,33.714,
-33.462,33.203,32.935,32.655,32.364,32.062,31.746,31.413,31.057,30.672,30.255,29.802,29.313,28.793,28.251,27.697,
-27.144,26.604,26.087,25.601,25.149,24.733,24.349,23.992,23.658,23.341,23.038,22.746,22.466,22.196,21.939,21.691,
-21.452,21.217,20.981,20.739,20.484,20.214,19.928,19.629,19.320,19.012,18.712,18.431,18.175,17.950,17.757,17.594,
-17.458,17.341,17.237,17.139,17.043,16.947,16.849,16.749,16.650,16.550,16.448,16.341,16.223,16.087,15.927,15.737,
-15.513,15.257,14.973,14.669,14.355,14.043,13.745,13.468,13.217,12.992,12.788,12.597,12.409,12.214,12.002,11.770,
-11.515,11.241,10.956,10.670,10.394,10.138,9.909,9.711,9.543,9.401,9.278,9.163,9.047,8.922,8.780,8.618,
-8.436,8.237,8.026,7.808,7.590,7.379,7.178,6.990,6.817,6.659,6.512,6.376,6.245,6.116,5.985,5.848,
-5.701,5.540,5.361,5.164,4.948,4.713,4.462,4.199,3.930,3.662,3.403,3.159,2.937,2.742,2.579,2.449,
-2.351,2.285,2.248,2.235,2.244,2.267,2.302,2.341,2.379,2.410,2.425,2.419,2.382,2.307,2.189,2.022,
-1.804,1.535,1.221,.868,.486,.088,-.311,-.699,-1.060,-1.386,-1.667,-1.900,-2.084,-2.225,-2.329,-2.407,
--2.469,-2.528,-2.593,-2.672,-2.770,-2.889,-3.028,-3.183,-3.348,-3.516,-3.680,-3.837,-3.981,-4.111,-4.228,-4.334,
--4.433,-4.528,-4.623,-4.719,-4.819,-4.920,-5.021,-5.121,-5.215,-5.302,-5.381,-5.452,-5.517,-5.579,-5.641,-5.708,
--5.783,-5.866,-5.959,-6.060,-6.166,-6.272,-6.375,-6.470,-6.554,-6.627,-6.689,-6.741,-6.788,-6.835,-6.885,-6.943,
--7.011,-7.090,-7.180,-7.277,-7.378,-7.477,-7.569,-7.648,-7.709,-7.748,-7.765,-7.758,-7.731,-7.688,-7.634,-7.576,
--7.523,-7.481,-7.458,-7.459,-7.487,-7.544,-7.629,-7.738,-7.866,-8.009,-8.159,-8.313,-8.465,-8.615,-8.761,-8.905,
--9.048,-9.192,-9.337,-9.483,-9.625,-9.759,-9.879,-9.978,-10.050,-10.092,-10.103,-10.089,-10.055,-10.014,-9.977,-9.960,
--9.972,-10.022,-10.114,-10.247,-10.413,-10.602,-10.803,-11.000,-11.184,-11.346,-11.482,-11.593,-11.682,-11.756,-11.822,-11.886,
--11.950,-12.014,-12.075,-12.126,-12.157,-12.163,-12.137,-12.079,-11.990,-11.881,-11.762,-11.648,-11.555,-11.495,-11.478,-11.509,
--11.585,-11.702,-11.849,-12.015,-12.189,-12.360,-12.522,-12.672,-12.810,-12.939,-13.061,-13.181,-13.297,-13.407,-13.507,-13.588,
--13.641,-13.658,-13.634,-13.566,-13.457,-13.315,-13.151,-12.980,-12.814,-12.666,-12.546,-12.457,-12.400,-12.368,-12.355,-12.352,
--12.351,-12.346,-12.337,-12.326,-12.320,-12.328,-12.359,-12.423,-12.523,-12.663,-12.837,-13.038,-13.253,-13.466,-13.664,-13.830,
--13.954,-14.028,-14.046,-14.010,-13.921,-13.786,-13.612,-13.407,-13.178,-12.935,-12.683,-12.429,-12.180,-11.941,-11.717,-11.512,
--11.328,-11.167,-11.028,-10.911,-10.812,-10.726,-10.650,-10.578,-10.509,-10.439,-10.368,-10.298,-10.231,-10.169,-10.115,-10.070,
--10.037,-10.015,-10.002,-9.996,-9.995,-9.995,-9.996,-9.996,-9.993,-9.988,-9.981,-9.972,-9.960,-9.946,-9.927,-9.902,
--9.870,-9.830,-9.782,-9.725,-9.662,-9.593,-9.523,-9.451,-9.381,-9.311,-9.242,-9.173,-9.102,-9.026,-8.945,-8.859,
--8.769,-8.676,-8.584,-8.497,-8.416,-8.343,-8.279,-8.221,-8.166,-8.107,-8.041,-7.963,-7.869,-7.758,-7.632,-7.497,
--7.358,-7.223,-7.102,-7.001,-6.925,-6.877,-6.856,-6.857,-6.875,-6.902,-6.930,-6.951,-6.960,-6.955,-6.933,-6.895,
--6.845,-6.786,-6.722,-6.655,-6.588,-6.520,-6.453,-6.384,-6.311,-6.233,-6.149,-6.058,-5.960,-5.857,-5.747,-5.633,
--5.515,-5.392,-5.264,-5.130,-4.988,-4.839,-4.684,-4.522,-4.359,-4.196,-4.039,-3.890,-3.754,-3.632,-3.526,-3.433,
--3.351,-3.277,-3.206,-3.137,-3.066,-2.993,-2.917,-2.842,-2.768,-2.698,-2.635,-2.578,-2.526,-2.478,-2.428,-2.374,
--2.312,-2.239,-2.154,-2.057,-1.954,-1.847,-1.741,-1.643,-1.555,-1.478,-1.412,-1.352,-1.295,-1.232,-1.159,-1.069,
--.962,-.838,-.702,-.559,-.421,-.295,-.192,-.119,-.080,-.074,-.098,-.143,-.201,-.260,-.309,-.339,
--.343,-.318,-.265,-.187,-.090,.018,.128,.233,.326,.403,.463,.504,.532,.549,.561,.573,
-.591,.619,.659,.712,.777,.852,.934,1.018,1.099,1.175,1.242,1.300,1.350,1.393,1.432,1.472,
-1.516,1.566,1.623,1.684,1.746,1.802,1.846,1.870,1.868,1.835,1.772,1.682,1.570,1.448,1.327,1.218,
-1.133,1.079,1.062,1.081,1.132,1.208,1.299,1.395,1.487,1.568,1.633,1.682,1.716,1.740,1.757,1.772,
-1.787,1.805,1.822,1.836,1.844,1.841,1.824,1.794,1.752,1.703,1.654,1.613,1.586,1.579,1.595,1.633,
-1.690,1.760,1.834,1.904,1.963,2.005,2.028,2.032,2.019,1.994,1.963,1.932,1.902,1.878,1.860,1.844,
-1.829,1.812,1.789,1.759,1.721,1.678,1.631,1.585,1.544,1.510,1.486,1.473,1.472,1.479,1.496,1.520,
-1.549,1.585,1.627,1.676,1.733,1.796,1.865,1.938,2.009,2.074,2.128,2.165,2.182,2.177,2.150,2.104,
-2.045,1.978,1.911,1.850,1.800,1.764,1.742,1.732,1.729,1.728,1.722,1.703,1.668,1.611,1.530,1.424,
-1.296,1.148,.986,.814,.640,.469,.309,.165,.041,-.058,-.131,-.178,-.200,-.201,-.188,-.165,
--.141,-.122,-.113,-.117,-.136,-.169,-.212,-.260,-.309,-.352,-.386,-.410,-.421,-.423,-.419,-.413,
--.410,-.411,-.420,-.435,-.454,-.474,-.490,-.497,-.492,-.473,-.441,-.396,-.345,-.290,-.238,-.193,
--.157,-.133,-.120,-.116,-.118,-.124,-.131,-.139,-.147,-.156,-.167,-.181,-.198,-.217,-.236,-.251,
--.257,-.250,-.226,-.185,-.127,-.059,.012,.077,.122,.138,.115,.046,-.071,-.235,-.441,-.682,
--.947,-1.228,-1.515,-1.804,-2.088,-2.369,-2.646,-2.922,-3.199,-3.480,-3.766,-4.054,-4.343,-4.629,-4.907,-5.174,
--5.427,-5.666,-5.892,-6.108,-6.317,-6.523,-6.731,-6.941,-7.153,-7.366,-7.575,-7.775,-7.961,-8.127,-8.269,-8.387,
--8.480,-8.550,-8.602,-8.640,-8.667,-8.687,-8.703,-8.715,-8.722,-8.723,-8.716,-8.699,-8.672,-8.634,-8.587,-8.534,
--8.476,-8.419,-8.364,-8.314,-8.271,-8.234,-8.204,-8.178,-8.156,-8.137,-8.119,-8.103,-8.087,-8.073,-8.062,-8.053,
--8.047,-8.043,-8.041,-8.038,-8.033,-8.023,-8.006,-7.982,-7.950,-7.912,-7.869,-7.825,-7.784,-7.751,-7.730,-7.726,
--7.741,-7.778,-7.834,-7.909,-7.996,-8.089,-8.181,-8.263,-8.326,-8.364,-8.372,-8.346,-8.287,-8.194,-8.073,-7.926,
--7.758,-7.573,-7.376,-7.169,-6.953,-6.732,-6.509,-6.288,-6.077,-5.887,-5.730,-5.621,-5.574,-5.603,-5.719,-5.926,
--6.223,-6.603,-7.052,-7.549,-8.070,-8.590,-9.085,-9.533,-9.917,-10.227,-10.460,-10.617,-10.703,-10.729,-10.705,-10.640,
--10.544,-10.423,-10.282,-10.126,-9.956,-9.776,-9.591,-9.406,-9.228,-9.065,-8.926,-8.819,-8.751,-8.726,-8.749,-8.819,
--8.934,-9.092,-9.288,-9.518,-9.775,-10.055,-10.352,-10.661,-10.976,-11.290,-11.598,-11.892,-12.168,-12.422,-12.652,-12.860,
--13.049,-13.226,-13.400,-13.580,-13.775,-13.992,-14.235,-14.507,-14.805,-15.124,-15.457,-15.796,-16.134,-16.466,-16.786,-17.095,
--17.394,-17.684,-17.970,-18.254,-18.537,-18.816,-19.090,-19.353,-19.598,-19.821,-20.015,-20.179,-20.312,-20.417,-20.499,-20.562,
--20.612,-20.654,-20.691,-20.723,-20.750,-20.770,-20.780,-20.780,-20.773,-20.762,-20.754,-20.758,-20.784,-20.841,-20.933,-21.062,
--21.223,-21.405,-21.595,-21.773,-21.921,-22.021,-22.059,-22.027,-21.923,-21.753,-21.528,-21.262,-20.974,-20.677,-20.385,-20.105,
--19.840,-19.587,-19.342,-19.096,-18.843,-18.579,-18.303,-18.019,-17.736,-17.464,-17.215,-17.000,-16.826,-16.696,-16.606,-16.547,
--16.506,-16.466,-16.410,-16.323,-16.196,-16.024,-15.808,-15.555,-15.280,-14.998,-14.726,-14.482,-14.280,-14.129,-14.035,-13.998,
--14.014,-14.077,-14.176,-14.301,-14.438,-14.578,-14.708,-14.820,-14.904,-14.954,-14.963,-14.929,-14.850,-14.728,-14.567,-14.374,
--14.159,-13.933,-13.709,-13.498,-13.310,-13.152,-13.029,-12.940,-12.879,-12.839,-12.807,-12.771,-12.715,-12.626,-12.491,-12.303,
--12.055,-11.746,-11.380,-10.964,-10.509,-10.030,-9.544,-9.070,-8.626,-8.231,-7.900,-7.643,-7.467,-7.371,-7.348,-7.386,
--7.464,-7.559,-7.645,-7.694,-7.680,-7.583,-7.386,-7.082,-6.668,-6.153,-5.550,-4.878,-4.160,-3.420,-2.680,-1.961,
--1.278,-.642,-.055,.483,.979,1.445,1.894,2.341,2.799,3.281,3.794,4.344,4.931,5.550,6.194,6.851,
-7.508,8.151,8.768,9.347,9.878,10.354,10.772,11.130,11.429,11.672,11.863,12.007,12.110,12.179,12.223,12.251,
-12.274,12.306,12.357,12.440,12.566,12.740,12.967,13.244,13.562,13.909,14.269,14.623,14.954,15.249,15.499,15.704,
-15.872,16.019,16.166,16.338,16.560,16.853,17.230,17.697,18.247,18.864,19.524,20.197,20.852,21.458,21.993,22.442,
-22.798,23.068,23.263,23.401,23.503,23.589,23.675,23.769,23.875,23.990,24.105,24.209,24.292,24.344,24.361,24.344,
-24.301,24.243,24.187,24.150,24.149,24.201,24.316,24.503,24.764,25.099,25.503,25.967,26.484,27.043,27.632,28.241,
-28.858,29.472,30.074,30.653,31.203,31.718,32.195,32.634,33.040,33.418,33.776,34.123,34.466,34.812,35.161,35.513,
-35.860,36.193,36.500,36.768,36.987,37.147,37.246,37.287,37.278,37.234,37.172,37.111,37.071,37.069,37.115,37.217,
-37.374,37.580,37.826,38.098,38.382,38.665,38.936,39.190,39.424,39.640,39.843,40.041,40.240,40.446,40.665,40.897,
-41.140,41.391,41.643,41.892,42.133,42.364,42.587,42.806,43.027,43.258,43.509,43.784,44.090,44.426,44.792,45.179,
-45.581,45.988,46.389,46.775,47.140,47.479,47.790,48.072,48.324,48.546,48.738,48.896,49.019,49.104,49.152,49.162,
-49.141,49.097,49.043,48.994,48.965,48.968,49.015,49.108,49.246,49.418,49.612,49.809,49.993,50.150,50.273,50.360,
-50.420,50.466,50.516,50.589,50.701,50.860,51.067,51.311,51.574,51.830,52.050,52.207,52.279,52.256,52.138,51.937,
-51.680,51.397,51.126,50.900,50.749,50.692,50.736,50.878,51.102,51.384,51.696,52.009,52.298,52.543,52.734,52.869,
-52.951,52.994,53.011,53.018,53.030,53.056,53.102,53.169,53.252,53.343,53.431,53.505,53.553,53.568,53.543,53.478,
-53.375,53.238,53.078,52.904,52.728,52.561,52.412,52.288,52.193,52.129,52.091,52.077,52.078,52.089,52.103,52.114,
-52.121,52.122,52.119,52.117,52.120,52.132,52.156,52.193,52.242,52.300,52.359,52.413,52.454,52.476,52.472,52.442,
-52.385,52.307,52.212,52.109,52.006,51.910,51.826,51.758,51.706,51.668,51.638,51.613,51.585,51.551,51.507,51.452,
-51.386,51.313,51.236,51.159,51.087,51.022,50.965,50.918,50.876,50.838,50.801,50.762,50.718,50.670,50.618,50.564,
-50.510,50.457,50.407,50.359,50.310,50.256,50.192,50.429,50.304,50.168,50.020,49.859,49.687,49.508,49.326,49.146,
-48.974,48.812,48.661,48.519,48.381,48.243,48.095,47.933,47.750,47.546,47.320,47.078,46.825,46.567,46.310,46.060,
-45.817,45.582,45.351,45.120,44.885,44.644,44.397,44.146,43.897,43.658,43.434,43.233,43.057,42.904,42.769,42.644,
-42.519,42.385,42.235,42.067,41.885,41.699,41.523,41.370,41.253,41.182,41.158,41.171,41.206,41.239,41.242,41.186,
-41.048,40.811,40.468,40.026,39.499,38.914,38.298,37.683,37.095,36.555,36.074,35.653,35.288,34.965,34.669,34.384,
-34.096,33.795,33.476,33.137,32.780,32.408,32.023,31.626,31.217,30.791,30.346,29.880,29.390,28.879,28.353,27.819,
-27.290,26.776,26.288,25.833,25.415,25.033,24.684,24.361,24.054,23.757,23.463,23.169,22.875,22.582,22.294,22.015,
-21.749,21.495,21.252,21.016,20.783,20.548,20.306,20.055,19.798,19.538,19.281,19.035,18.807,18.600,18.417,18.257,
-18.114,17.981,17.850,17.713,17.565,17.402,17.226,17.041,16.852,16.666,16.488,16.321,16.165,16.017,15.869,15.715,
-15.546,15.356,15.143,14.905,14.647,14.377,14.102,13.831,13.571,13.326,13.097,12.878,12.665,12.450,12.224,11.983,
-11.723,11.446,11.157,10.862,10.572,10.296,10.042,9.815,9.617,9.446,9.298,9.165,9.039,8.914,8.781,8.638,
-8.483,8.316,8.139,7.956,7.771,7.587,7.408,7.235,7.071,6.917,6.771,6.634,6.504,6.381,6.260,6.138,
-6.011,5.874,5.722,5.551,5.358,5.140,4.900,4.642,4.371,4.095,3.823,3.564,3.324,3.110,2.924,2.768,
-2.641,2.541,2.464,2.407,2.366,2.341,2.328,2.326,2.331,2.342,2.350,2.350,2.332,2.286,2.200,2.067,
-1.878,1.632,1.329,.975,.581,.161,-.268,-.688,-1.083,-1.438,-1.742,-1.989,-2.179,-2.314,-2.404,-2.459,
--2.492,-2.518,-2.549,-2.596,-2.666,-2.766,-2.894,-3.050,-3.227,-3.420,-3.620,-3.820,-4.013,-4.194,-4.361,-4.511,
--4.647,-4.769,-4.880,-4.984,-5.081,-5.173,-5.262,-5.347,-5.428,-5.504,-5.577,-5.647,-5.716,-5.786,-5.861,-5.943,
--6.033,-6.131,-6.236,-6.344,-6.450,-6.551,-6.641,-6.715,-6.774,-6.816,-6.844,-6.865,-6.883,-6.907,-6.942,-6.993,
--7.063,-7.151,-7.256,-7.371,-7.491,-7.607,-7.713,-7.802,-7.870,-7.915,-7.936,-7.935,-7.916,-7.881,-7.836,-7.786,
--7.736,-7.692,-7.658,-7.640,-7.640,-7.664,-7.712,-7.787,-7.888,-8.014,-8.160,-8.322,-8.496,-8.674,-8.854,-9.030,
--9.200,-9.363,-9.516,-9.661,-9.797,-9.923,-10.038,-10.139,-10.224,-10.291,-10.337,-10.364,-10.374,-10.373,-10.369,-10.370,
--10.387,-10.428,-10.500,-10.604,-10.740,-10.903,-11.083,-11.269,-11.450,-11.616,-11.759,-11.876,-11.966,-12.033,-12.084,-12.125,
--12.164,-12.203,-12.246,-12.289,-12.328,-12.356,-12.368,-12.357,-12.322,-12.265,-12.191,-12.109,-12.033,-11.972,-11.940,-11.944,
--11.987,-12.070,-12.188,-12.333,-12.497,-12.670,-12.845,-13.017,-13.183,-13.342,-13.496,-13.646,-13.790,-13.924,-14.044,-14.140,
--14.203,-14.222,-14.190,-14.105,-13.968,-13.787,-13.576,-13.350,-13.129,-12.928,-12.762,-12.638,-12.558,-12.518,-12.508,-12.516,
--12.529,-12.536,-12.532,-12.517,-12.497,-12.481,-12.484,-12.518,-12.595,-12.720,-12.893,-13.108,-13.349,-13.600,-13.839,-14.046,
--14.204,-14.300,-14.328,-14.288,-14.183,-14.025,-13.823,-13.590,-13.339,-13.078,-12.815,-12.555,-12.301,-12.054,-11.817,-11.591,
--11.378,-11.179,-10.998,-10.835,-10.691,-10.568,-10.464,-10.377,-10.306,-10.249,-10.203,-10.166,-10.137,-10.115,-10.098,-10.086,
--10.076,-10.066,-10.055,-10.039,-10.018,-9.992,-9.960,-9.926,-9.893,-9.863,-9.841,-9.828,-9.825,-9.830,-9.840,-9.849,
--9.852,-9.841,-9.813,-9.764,-9.693,-9.605,-9.503,-9.394,-9.287,-9.187,-9.100,-9.031,-8.978,-8.940,-8.914,-8.894,
--8.875,-8.854,-8.825,-8.788,-8.743,-8.689,-8.628,-8.560,-8.486,-8.404,-8.312,-8.208,-8.090,-7.956,-7.806,-7.644,
--7.473,-7.301,-7.135,-6.984,-6.857,-6.759,-6.694,-6.665,-6.668,-6.698,-6.750,-6.813,-6.880,-6.942,-6.994,-7.031,
--7.050,-7.051,-7.034,-7.003,-6.957,-6.901,-6.835,-6.760,-6.677,-6.588,-6.491,-6.388,-6.279,-6.167,-6.053,-5.937,
--5.822,-5.707,-5.593,-5.477,-5.359,-5.236,-5.106,-4.969,-4.825,-4.674,-4.519,-4.363,-4.210,-4.063,-3.925,-3.798,
--3.682,-3.576,-3.480,-3.389,-3.303,-3.220,-3.137,-3.057,-2.978,-2.905,-2.837,-2.776,-2.724,-2.677,-2.635,-2.594,
--2.550,-2.500,-2.439,-2.368,-2.286,-2.197,-2.103,-2.009,-1.920,-1.840,-1.770,-1.711,-1.659,-1.610,-1.558,-1.497,
--1.421,-1.328,-1.217,-1.089,-.951,-.809,-.672,-.548,-.443,-.363,-.309,-.278,-.265,-.264,-.266,-.263,
--.247,-.214,-.161,-.090,-.003,.093,.191,.284,.365,.428,.471,.492,.494,.480,.456,.430,
-.410,.401,.411,.443,.499,.577,.675,.787,.905,1.022,1.130,1.223,1.295,1.346,1.376,1.388,
-1.388,1.382,1.376,1.374,1.382,1.399,1.423,1.453,1.482,1.506,1.521,1.524,1.515,1.497,1.473,1.450,
-1.432,1.424,1.430,1.449,1.480,1.517,1.556,1.590,1.616,1.630,1.635,1.632,1.628,1.629,1.643,1.675,
-1.727,1.798,1.884,1.976,2.064,2.140,2.194,2.221,2.218,2.189,2.139,2.078,2.015,1.962,1.925,1.909,
-1.916,1.943,1.986,2.036,2.088,2.134,2.171,2.196,2.210,2.214,2.212,2.207,2.201,2.192,2.182,2.166,
-2.141,2.106,2.059,2.001,1.935,1.865,1.797,1.739,1.694,1.668,1.660,1.670,1.694,1.727,1.763,1.799,
-1.832,1.861,1.890,1.921,1.960,2.010,2.073,2.150,2.237,2.328,2.414,2.486,2.536,2.558,2.547,2.504,
-2.434,2.344,2.243,2.141,2.047,1.966,1.903,1.857,1.824,1.798,1.773,1.740,1.695,1.632,1.549,1.447,
-1.328,1.194,1.051,.902,.752,.605,.462,.328,.205,.095,.002,-.072,-.126,-.159,-.172,-.167,
--.149,-.122,-.094,-.070,-.053,-.048,-.055,-.071,-.093,-.116,-.135,-.144,-.141,-.126,-.101,-.070,
--.039,-.014,.000,-.002,-.021,-.055,-.100,-.150,-.199,-.241,-.271,-.286,-.285,-.270,-.244,-.212,
--.178,-.146,-.117,-.091,-.067,-.043,-.016,.015,.052,.094,.137,.179,.215,.241,.255,.255,
-.242,.220,.193,.165,.140,.122,.110,.104,.098,.086,.062,.018,-.052,-.150,-.279,-.437,
--.620,-.823,-1.040,-1.265,-1.494,-1.722,-1.947,-2.169,-2.386,-2.599,-2.808,-3.012,-3.211,-3.405,-3.594,-3.778,
--3.961,-4.146,-4.338,-4.544,-4.770,-5.020,-5.297,-5.600,-5.926,-6.267,-6.613,-6.953,-7.273,-7.564,-7.817,-8.026,
--8.191,-8.314,-8.400,-8.458,-8.495,-8.519,-8.537,-8.554,-8.570,-8.586,-8.600,-8.610,-8.614,-8.610,-8.599,-8.580,
--8.557,-8.530,-8.503,-8.476,-8.450,-8.424,-8.398,-8.369,-8.335,-8.297,-8.253,-8.206,-8.156,-8.107,-8.061,-8.022,
--7.991,-7.968,-7.953,-7.944,-7.937,-7.928,-7.916,-7.896,-7.868,-7.832,-7.789,-7.740,-7.691,-7.644,-7.604,-7.574,
--7.556,-7.553,-7.564,-7.588,-7.623,-7.665,-7.709,-7.752,-7.787,-7.811,-7.819,-7.808,-7.775,-7.720,-7.642,-7.540,
--7.415,-7.266,-7.093,-6.895,-6.673,-6.428,-6.165,-5.889,-5.613,-5.350,-5.118,-4.938,-4.832,-4.820,-4.916,-5.132,
--5.467,-5.914,-6.456,-7.065,-7.711,-8.358,-8.971,-9.519,-9.979,-10.336,-10.582,-10.724,-10.773,-10.746,-10.663,-10.545,
--10.409,-10.268,-10.132,-10.003,-9.881,-9.764,-9.650,-9.536,-9.423,-9.314,-9.214,-9.131,-9.074,-9.049,-9.062,-9.118,
--9.217,-9.359,-9.538,-9.750,-9.989,-10.247,-10.520,-10.802,-11.087,-11.371,-11.649,-11.918,-12.175,-12.417,-12.643,-12.854,
--13.053,-13.245,-13.436,-13.633,-13.844,-14.074,-14.327,-14.604,-14.904,-15.221,-15.548,-15.878,-16.203,-16.518,-16.820,-17.107,
--17.382,-17.650,-17.915,-18.182,-18.454,-18.732,-19.011,-19.288,-19.554,-19.801,-20.022,-20.213,-20.372,-20.501,-20.606,-20.693,
--20.772,-20.849,-20.929,-21.015,-21.103,-21.190,-21.267,-21.327,-21.365,-21.378,-21.367,-21.339,-21.306,-21.282,-21.280,-21.313,
--21.390,-21.512,-21.676,-21.870,-22.077,-22.277,-22.449,-22.573,-22.637,-22.631,-22.554,-22.413,-22.217,-21.981,-21.720,-21.446,
--21.169,-20.895,-20.623,-20.353,-20.078,-19.795,-19.502,-19.198,-18.889,-18.584,-18.293,-18.029,-17.802,-17.620,-17.485,-17.395,
--17.340,-17.308,-17.281,-17.242,-17.178,-17.077,-16.934,-16.750,-16.533,-16.294,-16.050,-15.817,-15.611,-15.446,-15.331,-15.270,
--15.264,-15.308,-15.395,-15.514,-15.654,-15.802,-15.947,-16.077,-16.180,-16.248,-16.272,-16.246,-16.165,-16.029,-15.838,-15.599,
--15.320,-15.013,-14.691,-14.369,-14.062,-13.782,-13.537,-13.335,-13.175,-13.054,-12.964,-12.896,-12.837,-12.774,-12.694,-12.585,
--12.439,-12.249,-12.013,-11.731,-11.407,-11.049,-10.665,-10.268,-9.872,-9.492,-9.142,-8.834,-8.578,-8.382,-8.245,-8.163,
--8.128,-8.125,-8.136,-8.140,-8.116,-8.044,-7.906,-7.690,-7.387,-6.996,-6.520,-5.965,-5.345,-4.673,-3.967,-3.244,
--2.521,-1.815,-1.139,-.507,.073,.595,1.058,1.465,1.823,2.143,2.440,2.731,3.034,3.366,3.741,4.168,
-4.653,5.194,5.784,6.411,7.058,7.707,8.338,8.935,9.483,9.970,10.391,10.743,11.028,11.251,11.419,11.543,
-11.634,11.702,11.760,11.821,11.896,11.995,12.130,12.306,12.527,12.794,13.102,13.444,13.807,14.179,14.545,14.893,
-15.214,15.505,15.767,16.009,16.242,16.483,16.749,17.055,17.413,17.829,18.302,18.827,19.390,19.976,20.567,21.147,
-21.699,22.216,22.690,23.122,23.511,23.863,24.181,24.467,24.721,24.940,25.119,25.254,25.339,25.372,25.355,25.294,
-25.201,25.091,24.982,24.893,24.843,24.846,24.914,25.053,25.263,25.542,25.883,26.278,26.716,27.190,27.691,28.212,
-28.749,29.295,29.846,30.395,30.937,31.463,31.969,32.447,32.893,33.305,33.685,34.034,34.358,34.664,34.958,35.244,
-35.526,35.803,36.071,36.324,36.556,36.759,36.925,37.052,37.139,37.192,37.218,37.230,37.243,37.269,37.323,37.413,
-37.545,37.719,37.930,38.169,38.425,38.684,38.936,39.171,39.384,39.575,39.748,39.910,40.070,40.239,40.426,40.638,
-40.875,41.139,41.422,41.719,42.020,42.318,42.607,42.887,43.158,43.426,43.699,43.985,44.293,44.627,44.989,45.373,
-45.773,46.177,46.573,46.947,47.289,47.594,47.859,48.085,48.279,48.447,48.596,48.732,48.857,48.972,49.073,49.157,
-49.220,49.262,49.286,49.299,49.311,49.335,49.384,49.467,49.591,49.752,49.942,50.147,50.347,50.525,50.665,50.759,
-50.807,50.820,50.817,50.820,50.857,50.949,51.110,51.343,51.638,51.973,52.316,52.631,52.884,53.045,53.098,53.040,
-52.882,52.648,52.375,52.099,51.859,51.686,51.599,51.608,51.707,51.881,52.107,52.358,52.610,52.844,53.046,53.212,
-53.344,53.452,53.545,53.636,53.731,53.836,53.948,54.062,54.166,54.250,54.301,54.310,54.271,54.185,54.055,53.891,
-53.704,53.509,53.321,53.152,53.014,52.913,52.853,52.833,52.848,52.890,52.950,53.017,53.079,53.129,53.159,53.165,
-53.147,53.108,53.054,52.993,52.934,52.886,52.854,52.844,52.856,52.888,52.935,52.988,53.039,53.079,53.099,53.094,
-53.062,53.002,52.917,52.813,52.697,52.577,52.460,52.353,52.259,52.180,52.116,52.066,52.025,51.990,51.957,51.924,
-51.888,51.848,51.807,51.764,51.723,51.685,51.651,51.622,51.596,51.571,51.545,51.512,51.471,51.418,51.352,51.274,
-51.185,51.087,50.984,50.877,50.768,50.659,50.546,50.429,50.553,50.416,50.274,50.126,49.970,49.805,49.632,49.454,
-49.272,49.090,48.910,48.733,48.557,48.378,48.192,47.994,47.778,47.541,47.283,47.008,46.719,46.425,46.135,45.854,
-45.589,45.340,45.106,44.883,44.665,44.444,44.216,43.979,43.736,43.491,43.254,43.033,42.837,42.671,42.536,42.426,
-42.334,42.247,42.153,42.042,41.908,41.752,41.581,41.407,41.245,41.112,41.018,40.969,40.962,40.984,41.016,41.031,
-41.002,40.904,40.719,40.436,40.058,39.597,39.073,38.510,37.936,37.373,36.841,36.347,35.894,35.476,35.083,34.700,
-34.316,33.922,33.511,33.085,32.646,32.199,31.751,31.305,30.863,30.424,29.984,29.539,29.084,28.617,28.140,27.658,
-27.179,26.714,26.274,25.868,25.502,25.176,24.887,24.627,24.385,24.148,23.906,23.652,23.380,23.093,22.794,22.490,
-22.188,21.895,21.616,21.353,21.102,20.862,20.628,20.394,20.158,19.920,19.682,19.448,19.223,19.012,18.819,18.644,
-18.483,18.332,18.182,18.024,17.852,17.661,17.448,17.217,16.974,16.727,16.487,16.262,16.058,15.878,15.722,15.584,
-15.456,15.331,15.199,15.054,14.892,14.712,14.514,14.304,14.083,13.857,13.626,13.392,13.152,12.904,12.644,12.370,
-12.082,11.780,11.469,11.156,10.847,10.551,10.272,10.017,9.785,9.577,9.389,9.217,9.056,8.900,8.748,8.597,
-8.446,8.298,8.153,8.012,7.877,7.746,7.620,7.495,7.372,7.249,7.126,7.004,6.884,6.767,6.653,6.542,
-6.431,6.313,6.184,6.036,5.862,5.658,5.422,5.157,4.869,4.567,4.263,3.969,3.696,3.453,3.244,3.071,
-2.931,2.818,2.726,2.647,2.576,2.509,2.447,2.389,2.338,2.295,2.260,2.231,2.201,2.162,2.103,2.010,
-1.873,1.684,1.437,1.134,.781,.390,-.023,-.441,-.846,-1.221,-1.553,-1.833,-2.057,-2.227,-2.349,-2.431,
--2.487,-2.528,-2.568,-2.616,-2.683,-2.772,-2.889,-3.031,-3.199,-3.385,-3.586,-3.794,-4.003,-4.206,-4.400,-4.580,
--4.744,-4.892,-5.025,-5.143,-5.248,-5.343,-5.429,-5.507,-5.580,-5.648,-5.713,-5.777,-5.843,-5.912,-5.988,-6.072,
--6.165,-6.268,-6.379,-6.494,-6.609,-6.718,-6.815,-6.896,-6.958,-7.001,-7.027,-7.043,-7.054,-7.070,-7.098,-7.146,
--7.215,-7.308,-7.421,-7.549,-7.682,-7.812,-7.930,-8.029,-8.104,-8.154,-8.180,-8.184,-8.173,-8.150,-8.122,-8.091,
--8.061,-8.032,-8.006,-7.983,-7.965,-7.955,-7.957,-7.976,-8.018,-8.088,-8.189,-8.323,-8.488,-8.679,-8.890,-9.112,
--9.335,-9.551,-9.753,-9.934,-10.094,-10.230,-10.344,-10.440,-10.519,-10.586,-10.642,-10.690,-10.731,-10.767,-10.802,-10.838,
--10.879,-10.929,-10.993,-11.074,-11.174,-11.292,-11.425,-11.569,-11.717,-11.860,-11.993,-12.108,-12.203,-12.277,-12.333,-12.375,
--12.408,-12.440,-12.475,-12.515,-12.562,-12.612,-12.663,-12.709,-12.746,-12.771,-12.782,-12.781,-12.772,-12.760,-12.752,-12.753,
--12.769,-12.801,-12.850,-12.913,-12.988,-13.069,-13.153,-13.238,-13.323,-13.411,-13.503,-13.601,-13.708,-13.820,-13.933,-14.041,
--14.132,-14.196,-14.221,-14.201,-14.131,-14.014,-13.856,-13.671,-13.475,-13.284,-13.113,-12.973,-12.869,-12.801,-12.762,-12.740,
--12.722,-12.697,-12.658,-12.602,-12.534,-12.466,-12.413,-12.392,-12.421,-12.510,-12.664,-12.878,-13.140,-13.428,-13.717,-13.980,
--14.193,-14.336,-14.398,-14.376,-14.274,-14.105,-13.886,-13.635,-13.369,-13.103,-12.847,-12.604,-12.377,-12.163,-11.956,-11.753,
--11.551,-11.348,-11.146,-10.948,-10.758,-10.582,-10.425,-10.290,-10.183,-10.102,-10.050,-10.025,-10.024,-10.044,-10.080,-10.128,
--10.181,-10.232,-10.274,-10.300,-10.306,-10.287,-10.244,-10.178,-10.094,-10.000,-9.904,-9.816,-9.742,-9.688,-9.654,-9.639,
--9.637,-9.640,-9.638,-9.624,-9.592,-9.536,-9.459,-9.364,-9.258,-9.151,-9.052,-8.971,-8.913,-8.881,-8.875,-8.892,
--8.924,-8.963,-9.001,-9.030,-9.043,-9.036,-9.005,-8.949,-8.870,-8.769,-8.648,-8.508,-8.352,-8.182,-7.999,-7.807,
--7.609,-7.411,-7.217,-7.035,-6.871,-6.733,-6.626,-6.553,-6.517,-6.517,-6.549,-6.608,-6.686,-6.776,-6.867,-6.954,
--7.027,-7.084,-7.119,-7.132,-7.123,-7.094,-7.048,-6.988,-6.916,-6.835,-6.748,-6.657,-6.562,-6.464,-6.365,-6.264,
--6.162,-6.058,-5.952,-5.844,-5.732,-5.617,-5.497,-5.371,-5.240,-5.104,-4.963,-4.820,-4.676,-4.534,-4.395,-4.262,
--4.136,-4.017,-3.904,-3.797,-3.695,-3.596,-3.501,-3.407,-3.318,-3.232,-3.153,-3.081,-3.017,-2.960,-2.911,-2.865,
--2.820,-2.771,-2.716,-2.651,-2.576,-2.489,-2.395,-2.296,-2.198,-2.104,-2.020,-1.948,-1.888,-1.838,-1.795,-1.754,
--1.708,-1.653,-1.583,-1.497,-1.396,-1.280,-1.155,-1.027,-.901,-.782,-.676,-.583,-.504,-.437,-.376,-.318,
--.259,-.194,-.121,-.040,.048,.140,.230,.314,.387,.444,.481,.498,.496,.476,.444,.406,
-.369,.341,.328,.335,.368,.427,.512,.618,.739,.868,.996,1.113,1.212,1.287,1.336,1.359,
-1.358,1.339,1.310,1.277,1.249,1.231,1.226,1.235,1.259,1.295,1.340,1.391,1.446,1.504,1.565,1.630,
-1.701,1.776,1.856,1.936,2.012,2.077,2.125,2.150,2.148,2.120,2.070,2.006,1.939,1.883,1.850,1.851,
-1.893,1.975,2.095,2.239,2.396,2.547,2.677,2.773,2.826,2.834,2.800,2.734,2.646,2.552,2.465,2.395,
-2.348,2.327,2.330,2.350,2.381,2.414,2.445,2.469,2.485,2.494,2.498,2.499,2.498,2.497,2.491,2.477,
-2.451,2.409,2.347,2.266,2.170,2.066,1.963,1.872,1.801,1.759,1.750,1.773,1.824,1.894,1.974,2.054,
-2.126,2.186,2.230,2.264,2.291,2.319,2.355,2.403,2.466,2.542,2.624,2.704,2.772,2.820,2.840,2.828,
-2.786,2.717,2.630,2.534,2.437,2.348,2.271,2.207,2.154,2.106,2.057,2.000,1.929,1.841,1.735,1.614,
-1.482,1.343,1.205,1.070,.943,.825,.715,.612,.514,.422,.335,.255,.186,.130,.092,.072,
-.072,.089,.119,.157,.194,.227,.249,.259,.257,.247,.233,.221,.217,.224,.245,.278,
-.319,.360,.396,.419,.424,.407,.370,.314,.247,.174,.103,.040,-.010,-.045,-.066,-.074,
--.074,-.068,-.059,-.050,-.038,-.022,.001,.034,.080,.139,.211,.290,.371,.447,.511,.556,
-.578,.576,.550,.503,.442,.372,.299,.228,.161,.098,.035,-.031,-.107,-.196,-.305,-.435,
--.586,-.757,-.944,-1.141,-1.342,-1.539,-1.728,-1.903,-2.061,-2.199,-2.316,-2.414,-2.494,-2.559,-2.614,-2.665,
--2.721,-2.792,-2.886,-3.015,-3.188,-3.413,-3.692,-4.026,-4.410,-4.832,-5.279,-5.733,-6.176,-6.590,-6.959,-7.274,
--7.528,-7.722,-7.860,-7.950,-8.005,-8.036,-8.054,-8.067,-8.083,-8.104,-8.130,-8.159,-8.190,-8.219,-8.246,-8.269,
--8.290,-8.308,-8.327,-8.345,-8.363,-8.378,-8.389,-8.391,-8.382,-8.359,-8.322,-8.270,-8.208,-8.139,-8.069,-8.004,
--7.948,-7.905,-7.876,-7.859,-7.852,-7.850,-7.849,-7.845,-7.834,-7.813,-7.782,-7.742,-7.696,-7.646,-7.595,-7.545,
--7.500,-7.460,-7.426,-7.397,-7.373,-7.352,-7.334,-7.317,-7.301,-7.283,-7.264,-7.241,-7.214,-7.178,-7.133,-7.074,
--6.996,-6.896,-6.769,-6.611,-6.419,-6.193,-5.935,-5.653,-5.357,-5.064,-4.794,-4.572,-4.422,-4.369,-4.433,-4.629,
--4.962,-5.426,-6.005,-6.672,-7.393,-8.127,-8.833,-9.473,-10.015,-10.438,-10.731,-10.897,-10.948,-10.905,-10.795,-10.642,
--10.474,-10.310,-10.164,-10.041,-9.943,-9.865,-9.800,-9.741,-9.683,-9.624,-9.567,-9.516,-9.480,-9.467,-9.487,-9.544,
--9.643,-9.783,-9.962,-10.172,-10.408,-10.661,-10.922,-11.187,-11.449,-11.705,-11.953,-12.191,-12.420,-12.640,-12.852,-13.056,
--13.256,-13.454,-13.654,-13.860,-14.078,-14.309,-14.557,-14.820,-15.098,-15.385,-15.676,-15.964,-16.243,-16.509,-16.760,-16.995,
--17.221,-17.442,-17.666,-17.900,-18.149,-18.415,-18.696,-18.988,-19.282,-19.566,-19.832,-20.070,-20.276,-20.449,-20.591,-20.711,
--20.819,-20.924,-21.035,-21.158,-21.294,-21.437,-21.581,-21.714,-21.824,-21.903,-21.943,-21.945,-21.916,-21.867,-21.814,-21.776,
--21.769,-21.808,-21.899,-22.043,-22.231,-22.449,-22.676,-22.890,-23.070,-23.198,-23.261,-23.254,-23.178,-23.041,-22.855,-22.633,
--22.388,-22.131,-21.867,-21.599,-21.327,-21.048,-20.758,-20.455,-20.141,-19.822,-19.506,-19.205,-18.930,-18.694,-18.505,-18.364,
--18.270,-18.213,-18.180,-18.155,-18.119,-18.059,-17.964,-17.829,-17.656,-17.454,-17.235,-17.017,-16.816,-16.648,-16.525,-16.453,
--16.436,-16.468,-16.543,-16.648,-16.773,-16.902,-17.025,-17.130,-17.207,-17.248,-17.249,-17.204,-17.110,-16.965,-16.770,-16.528,
--16.244,-15.925,-15.581,-15.224,-14.867,-14.524,-14.207,-13.925,-13.685,-13.490,-13.339,-13.227,-13.146,-13.086,-13.035,-12.981,
--12.913,-12.821,-12.697,-12.535,-12.333,-12.092,-11.815,-11.508,-11.181,-10.844,-10.508,-10.186,-9.887,-9.619,-9.387,-9.190,
--9.026,-8.885,-8.757,-8.628,-8.485,-8.313,-8.103,-7.847,-7.539,-7.178,-6.766,-6.308,-5.807,-5.270,-4.704,-4.114,
--3.509,-2.897,-2.288,-1.693,-1.126,-.600,-.128,.279,.615,.880,1.081,1.231,1.351,1.465,1.602,1.786,
-2.042,2.383,2.818,3.343,3.946,4.610,5.308,6.016,6.708,7.364,7.967,8.508,8.986,9.402,9.763,10.078,
-10.356,10.604,10.828,11.033,11.222,11.398,11.564,11.726,11.890,12.064,12.257,12.477,12.729,13.017,13.339,13.692,
-14.067,14.454,14.843,15.226,15.596,15.952,16.296,16.634,16.976,17.332,17.712,18.124,18.572,19.056,19.573,20.115,
-20.672,21.233,21.788,22.327,22.842,23.327,23.776,24.186,24.553,24.873,25.143,25.359,25.519,25.622,25.672,25.674,
-25.639,25.579,25.511,25.451,25.416,25.418,25.468,25.571,25.728,25.934,26.184,26.468,26.779,27.110,27.457,27.819,
-28.198,28.596,29.017,29.463,29.934,30.427,30.936,31.451,31.962,32.455,32.922,33.353,33.744,34.093,34.403,34.681,
-34.932,35.167,35.392,35.612,35.832,36.050,36.266,36.474,36.671,36.853,37.018,37.165,37.299,37.424,37.546,37.674,
-37.814,37.972,38.149,38.345,38.556,38.777,38.999,39.214,39.417,39.602,39.770,39.922,40.066,40.211,40.365,40.540,
-40.741,40.972,41.235,41.524,41.832,42.151,42.472,42.787,43.093,43.389,43.678,43.968,44.266,44.579,44.913,45.269,
-45.642,46.024,46.403,46.765,47.098,47.392,47.642,47.849,48.021,48.167,48.300,48.434,48.576,48.733,48.903,49.081,
-49.259,49.428,49.580,49.711,49.823,49.922,50.019,50.124,50.248,50.393,50.558,50.733,50.900,51.040,51.132,51.162,
-51.123,51.022,50.878,50.721,50.587,50.516,50.541,50.685,50.955,51.341,51.815,52.335,52.854,53.321,53.694,53.944,
-54.057,54.039,53.909,53.702,53.458,53.214,53.005,52.854,52.770,52.754,52.795,52.876,52.981,53.095,53.209,53.323,
-53.440,53.569,53.720,53.900,54.112,54.349,54.601,54.848,55.069,55.241,55.346,55.371,55.313,55.176,54.975,54.729,
-54.463,54.203,53.972,53.788,53.664,53.606,53.609,53.668,53.767,53.892,54.024,54.149,54.251,54.321,54.351,54.340,
-54.290,54.206,54.096,53.971,53.843,53.720,53.612,53.524,53.460,53.420,53.402,53.399,53.406,53.417,53.424,53.423,
-53.410,53.382,53.340,53.286,53.222,53.152,53.079,53.006,52.937,52.874,52.818,52.769,52.727,52.690,52.657,52.625,
-52.593,52.558,52.519,52.474,52.424,52.370,52.313,52.254,52.194,52.133,52.073,52.010,51.944,51.872,51.792,51.701,
-51.599,51.486,51.364,51.233,51.099,50.962,50.825,50.689,50.553,50.643,50.510,50.373,50.229,50.073,49.903,49.715,
-49.511,49.292,49.062,48.825,48.584,48.341,48.096,47.848,47.594,47.331,47.057,46.772,46.478,46.181,45.887,45.604,
-45.340,45.099,44.883,44.689,44.511,44.341,44.170,43.988,43.791,43.577,43.352,43.121,42.896,42.687,42.502,42.347,
-42.221,42.118,42.028,41.941,41.846,41.734,41.602,41.455,41.299,41.148,41.015,40.912,40.845,40.813,40.807,40.812,
-40.805,40.762,40.661,40.483,40.220,39.870,39.442,38.951,38.420,37.867,37.314,36.773,36.253,35.754,35.271,34.798,
-34.323,33.842,33.349,32.845,32.335,31.827,31.328,30.848,30.390,29.955,29.541,29.141,28.749,28.357,27.962,27.564,
-27.164,26.772,26.397,26.048,25.734,25.458,25.221,25.017,24.834,24.661,24.482,24.287,24.065,23.813,23.531,23.226,
-22.905,22.578,22.255,21.942,21.643,21.358,21.085,20.818,20.552,20.285,20.014,19.739,19.465,19.196,18.938,18.696,
-18.472,18.266,18.077,17.897,17.722,17.545,17.359,17.163,16.957,16.744,16.529,16.319,16.121,15.940,15.780,15.640,
-15.519,15.410,15.308,15.205,15.096,14.974,14.836,14.681,14.507,14.315,14.104,13.873,13.624,13.354,13.064,12.755,
-12.430,12.092,11.747,11.404,11.069,10.751,10.453,10.181,9.933,9.707,9.501,9.308,9.125,8.947,8.774,8.606,
-8.446,8.296,8.160,8.040,7.936,7.846,7.767,7.692,7.616,7.535,7.446,7.348,7.243,7.134,7.025,6.917,
-6.812,6.706,6.594,6.467,6.316,6.132,5.909,5.646,5.346,5.018,4.675,4.331,4.004,3.707,3.449,3.236,
-3.065,2.931,2.824,2.734,2.649,2.564,2.473,2.377,2.279,2.185,2.099,2.025,1.963,1.907,1.850,1.780,
-1.685,1.552,1.372,1.142,.862,.540,.185,-.186,-.558,-.915,-1.245,-1.538,-1.791,-2.002,-2.177,-2.321,
--2.443,-2.551,-2.654,-2.759,-2.871,-2.992,-3.126,-3.272,-3.431,-3.600,-3.779,-3.964,-4.154,-4.344,-4.531,-4.713,
--4.885,-5.045,-5.191,-5.321,-5.436,-5.536,-5.622,-5.697,-5.762,-5.821,-5.875,-5.928,-5.983,-6.041,-6.105,-6.178,
--6.260,-6.353,-6.456,-6.566,-6.682,-6.798,-6.909,-7.011,-7.101,-7.175,-7.235,-7.282,-7.322,-7.361,-7.408,-7.468,
--7.546,-7.646,-7.765,-7.898,-8.039,-8.178,-8.306,-8.414,-8.495,-8.549,-8.575,-8.577,-8.563,-8.539,-8.512,-8.487,
--8.465,-8.448,-8.431,-8.413,-8.390,-8.360,-8.326,-8.293,-8.268,-8.261,-8.284,-8.344,-8.449,-8.602,-8.798,-9.030,
--9.288,-9.556,-9.819,-10.065,-10.282,-10.466,-10.613,-10.726,-10.811,-10.876,-10.927,-10.974,-11.020,-11.070,-11.124,-11.183,
--11.246,-11.311,-11.379,-11.450,-11.525,-11.606,-11.694,-11.790,-11.894,-12.004,-12.116,-12.227,-12.333,-12.429,-12.515,-12.589,
--12.652,-12.707,-12.758,-12.809,-12.862,-12.921,-12.986,-13.057,-13.130,-13.204,-13.274,-13.337,-13.391,-13.436,-13.470,-13.495,
--13.513,-13.525,-13.531,-13.534,-13.532,-13.525,-13.514,-13.500,-13.484,-13.470,-13.461,-13.462,-13.477,-13.508,-13.554,-13.613,
--13.678,-13.741,-13.791,-13.820,-13.818,-13.783,-13.712,-13.612,-13.489,-13.356,-13.224,-13.104,-13.003,-12.924,-12.865,-12.818,
--12.773,-12.721,-12.653,-12.565,-12.459,-12.344,-12.236,-12.153,-12.115,-12.139,-12.236,-12.409,-12.648,-12.937,-13.251,-13.559,
--13.830,-14.039,-14.163,-14.194,-14.132,-13.985,-13.771,-13.514,-13.235,-12.958,-12.696,-12.461,-12.256,-12.076,-11.916,-11.766,
--11.616,-11.459,-11.291,-11.112,-10.925,-10.736,-10.551,-10.379,-10.227,-10.101,-10.005,-9.943,-9.915,-9.922,-9.961,-10.027,
--10.116,-10.219,-10.327,-10.429,-10.514,-10.573,-10.597,-10.582,-10.527,-10.436,-10.316,-10.178,-10.035,-9.898,-9.778,-9.682,
--9.614,-9.572,-9.551,-9.543,-9.540,-9.531,-9.511,-9.475,-9.423,-9.357,-9.284,-9.210,-9.145,-9.093,-9.060,-9.047,
--9.054,-9.076,-9.106,-9.137,-9.161,-9.170,-9.157,-9.118,-9.051,-8.954,-8.831,-8.684,-8.516,-8.333,-8.138,-7.937,
--7.735,-7.534,-7.340,-7.156,-6.986,-6.834,-6.703,-6.599,-6.522,-6.475,-6.459,-6.473,-6.512,-6.573,-6.648,-6.731,
--6.814,-6.890,-6.951,-6.995,-7.018,-7.020,-7.003,-6.970,-6.926,-6.875,-6.821,-6.766,-6.713,-6.660,-6.608,-6.553,
--6.492,-6.424,-6.346,-6.256,-6.154,-6.041,-5.918,-5.787,-5.651,-5.513,-5.374,-5.236,-5.102,-4.972,-4.846,-4.724,
--4.607,-4.493,-4.382,-4.271,-4.162,-4.053,-3.944,-3.836,-3.730,-3.627,-3.529,-3.437,-3.353,-3.277,-3.208,-3.145,
--3.084,-3.022,-2.956,-2.883,-2.800,-2.707,-2.604,-2.494,-2.382,-2.271,-2.166,-2.072,-1.991,-1.924,-1.869,-1.825,
--1.786,-1.747,-1.704,-1.652,-1.589,-1.512,-1.423,-1.324,-1.217,-1.107,-.997,-.889,-.786,-.687,-.592,-.500,
--.409,-.318,-.226,-.132,-.038,.056,.147,.232,.310,.377,.431,.472,.500,.514,.518,.512,
-.502,.490,.482,.482,.495,.524,.570,.635,.716,.810,.912,1.015,1.114,1.202,1.274,1.328,
-1.363,1.381,1.385,1.381,1.374,1.369,1.369,1.377,1.394,1.419,1.451,1.489,1.532,1.582,1.639,1.707,
-1.787,1.881,1.988,2.107,2.229,2.349,2.455,2.539,2.592,2.611,2.595,2.552,2.491,2.428,2.377,2.355,
-2.374,2.439,2.550,2.699,2.872,3.051,3.215,3.346,3.430,3.460,3.434,3.361,3.253,3.126,2.999,2.887,
-2.802,2.750,2.731,2.739,2.767,2.804,2.840,2.868,2.884,2.888,2.881,2.869,2.855,2.841,2.829,2.815,
-2.795,2.761,2.708,2.632,2.533,2.414,2.283,2.152,2.034,1.940,1.882,1.865,1.889,1.951,2.041,2.149,
-2.261,2.368,2.461,2.536,2.594,2.638,2.675,2.711,2.751,2.796,2.848,2.901,2.951,2.990,3.013,3.015,
-2.996,2.958,2.906,2.848,2.790,2.739,2.696,2.663,2.634,2.603,2.563,2.504,2.421,2.311,2.174,2.015,
-1.842,1.663,1.490,1.329,1.186,1.065,.964,.879,.806,.739,.675,.611,.549,.491,.441,.403,
-.383,.381,.398,.429,.470,.514,.554,.584,.602,.606,.599,.585,.571,.561,.561,.572,
-.594,.625,.658,.689,.709,.715,.702,.672,.626,.568,.504,.439,.378,.325,.280,.242,
-.209,.179,.149,.118,.088,.059,.038,.028,.034,.060,.106,.170,.247,.330,.410,.477,
-.523,.542,.531,.491,.426,.343,.249,.152,.061,-.022,-.095,-.159,-.219,-.283,-.356,-.445,
--.556,-.691,-.849,-1.026,-1.215,-1.409,-1.598,-1.773,-1.925,-2.049,-2.140,-2.198,-2.223,-2.221,-2.196,-2.160,
--2.122,-2.094,-2.090,-2.123,-2.203,-2.342,-2.544,-2.813,-3.145,-3.532,-3.961,-4.417,-4.878,-5.328,-5.746,-6.118,
--6.435,-6.691,-6.888,-7.031,-7.131,-7.198,-7.244,-7.281,-7.315,-7.352,-7.392,-7.435,-7.479,-7.520,-7.558,-7.590,
--7.618,-7.645,-7.674,-7.708,-7.749,-7.797,-7.850,-7.905,-7.956,-7.998,-8.027,-8.039,-8.033,-8.010,-7.974,-7.930,
--7.884,-7.842,-7.807,-7.782,-7.767,-7.760,-7.757,-7.754,-7.746,-7.730,-7.704,-7.666,-7.617,-7.559,-7.493,-7.422,
--7.348,-7.273,-7.199,-7.125,-7.054,-6.986,-6.921,-6.861,-6.807,-6.758,-6.716,-6.679,-6.645,-6.610,-6.571,-6.522,
--6.457,-6.371,-6.259,-6.116,-5.942,-5.736,-5.503,-5.250,-4.988,-4.732,-4.501,-4.316,-4.200,-4.174,-4.256,-4.460,
--4.792,-5.249,-5.817,-6.475,-7.193,-7.933,-8.658,-9.332,-9.921,-10.402,-10.761,-10.997,-11.117,-11.138,-11.082,-10.976,
--10.843,-10.705,-10.576,-10.465,-10.375,-10.301,-10.240,-10.184,-10.128,-10.072,-10.017,-9.968,-9.935,-9.928,-9.954,-10.023,
--10.136,-10.296,-10.496,-10.730,-10.988,-11.260,-11.535,-11.807,-12.069,-12.318,-12.554,-12.775,-12.986,-13.188,-13.384,-13.576,
--13.766,-13.957,-14.149,-14.346,-14.548,-14.757,-14.974,-15.198,-15.428,-15.659,-15.887,-16.108,-16.317,-16.510,-16.686,-16.847,
--16.999,-17.149,-17.306,-17.481,-17.681,-17.913,-18.178,-18.474,-18.793,-19.125,-19.456,-19.775,-20.070,-20.334,-20.563,-20.760,
--20.929,-21.081,-21.225,-21.369,-21.520,-21.680,-21.845,-22.009,-22.163,-22.296,-22.398,-22.464,-22.492,-22.489,-22.463,-22.429,
--22.405,-22.406,-22.445,-22.532,-22.666,-22.843,-23.050,-23.270,-23.483,-23.669,-23.811,-23.896,-23.918,-23.878,-23.781,-23.637,
--23.457,-23.253,-23.035,-22.808,-22.575,-22.334,-22.083,-21.818,-21.537,-21.241,-20.936,-20.629,-20.333,-20.060,-19.822,-19.627,
--19.478,-19.372,-19.301,-19.251,-19.204,-19.143,-19.054,-18.927,-18.758,-18.552,-18.319,-18.077,-17.845,-17.642,-17.485,-17.386,
--17.350,-17.375,-17.453,-17.570,-17.708,-17.849,-17.978,-18.079,-18.142,-18.162,-18.136,-18.063,-17.948,-17.794,-17.605,-17.385,
--17.138,-16.869,-16.583,-16.284,-15.980,-15.677,-15.384,-15.107,-14.855,-14.632,-14.441,-14.285,-14.161,-14.064,-13.990,-13.928,
--13.871,-13.808,-13.730,-13.628,-13.497,-13.331,-13.130,-12.893,-12.626,-12.335,-12.029,-11.718,-11.410,-11.115,-10.839,-10.583,
--10.347,-10.126,-9.913,-9.696,-9.466,-9.213,-8.931,-8.614,-8.264,-7.882,-7.474,-7.046,-6.604,-6.152,-5.694,-5.229,
--4.756,-4.275,-3.785,-3.289,-2.793,-2.307,-1.844,-1.418,-1.043,-.730,-.484,-.303,-.175,-.083,-.002,.096,
-.238,.447,.740,1.123,1.593,2.136,2.734,3.359,3.989,4.599,5.175,5.707,6.195,6.647,7.074,7.489,
-7.906,8.334,8.776,9.228,9.682,10.124,10.541,10.919,11.251,11.534,11.773,11.977,12.163,12.349,12.553,12.788,
-13.065,13.388,13.754,14.154,14.578,15.014,15.451,15.880,16.299,16.708,17.112,17.520,17.939,18.378,18.842,19.332,
-19.847,20.382,20.928,21.475,22.013,22.534,23.029,23.491,23.917,24.302,24.645,24.945,25.200,25.411,25.580,25.708,
-25.803,25.871,25.921,25.964,26.012,26.073,26.155,26.262,26.394,26.549,26.721,26.902,27.085,27.266,27.441,27.614,
-27.791,27.981,28.196,28.450,28.751,29.106,29.516,29.978,30.480,31.007,31.542,32.065,32.561,33.015,33.420,33.772,
-34.075,34.338,34.571,34.788,35.002,35.222,35.456,35.707,35.973,36.250,36.531,36.807,37.071,37.318,37.545,37.750,
-37.939,38.114,38.283,38.452,38.626,38.807,38.996,39.191,39.388,39.583,39.772,39.952,40.122,40.287,40.450,40.619,
-40.802,41.005,41.234,41.491,41.774,42.077,42.394,42.717,43.037,43.350,43.652,43.946,44.237,44.529,44.831,45.147,
-45.477,45.821,46.170,46.515,46.844,47.146,47.413,47.644,47.842,48.014,48.174,48.336,48.512,48.711,48.935,49.181,
-49.440,49.699,49.944,50.166,50.357,50.521,50.665,50.800,50.942,51.101,51.282,51.480,51.682,51.866,52.005,52.073,
-52.051,51.932,51.724,51.453,51.157,50.888,50.696,50.628,50.716,50.971,51.385,51.926,52.544,53.182,53.777,54.278,
-54.646,54.863,54.931,54.871,54.716,54.509,54.288,54.086,53.926,53.816,53.753,53.728,53.727,53.738,53.754,53.779,
-53.820,53.892,54.011,54.189,54.430,54.729,55.069,55.424,55.761,56.046,56.249,56.349,56.336,56.213,55.997,55.716,
-55.404,55.096,54.824,54.616,54.486,54.441,54.476,54.579,54.731,54.909,55.093,55.261,55.397,55.492,55.538,55.536,
-55.489,55.402,55.286,55.149,55.000,54.849,54.702,54.565,54.440,54.328,54.229,54.141,54.063,53.993,53.928,53.869,
-53.816,53.768,53.728,53.694,53.669,53.650,53.637,53.627,53.620,53.614,53.606,53.597,53.585,53.571,53.554,53.533,
-53.505,53.470,53.423,53.362,53.284,53.190,53.079,52.953,52.817,52.675,52.532,52.394,52.261,52.137,52.019,51.906,
-51.795,51.682,51.564,51.441,51.312,51.179,51.044,50.909,50.775,50.643,50.648,50.507,50.363,50.210,50.041,49.851,
-49.636,49.395,49.130,48.847,48.552,48.253,47.957,47.667,47.387,47.113,46.844,46.576,46.306,46.034,45.761,45.492,
-45.233,44.992,44.774,44.583,44.418,44.275,44.144,44.017,43.883,43.734,43.564,43.374,43.169,42.957,42.748,42.552,
-42.376,42.225,42.096,41.985,41.882,41.779,41.667,41.541,41.401,41.253,41.103,40.963,40.841,40.744,40.672,40.619,
-40.573,40.516,40.429,40.294,40.096,39.826,39.483,39.073,38.607,38.102,37.573,37.036,36.501,35.974,35.454,34.938,
-34.421,33.897,33.363,32.819,32.269,31.722,31.188,30.677,30.197,29.755,29.350,28.979,28.637,28.313,28.001,27.692,
-27.386,27.081,26.782,26.496,26.229,25.987,25.774,25.586,25.420,25.266,25.111,24.944,24.755,24.535,24.283,23.998,
-23.687,23.357,23.020,22.683,22.353,22.035,21.729,21.432,21.138,20.842,20.539,20.225,19.900,19.567,19.232,18.900,
-18.581,18.282,18.008,17.762,17.544,17.353,17.183,17.030,16.888,16.753,16.620,16.488,16.357,16.228,16.101,15.977,
-15.857,15.741,15.626,15.511,15.393,15.270,15.138,14.994,14.836,14.661,14.466,14.250,14.009,13.742,13.448,13.128,
-12.785,12.424,12.053,11.679,11.314,10.965,10.640,10.344,10.079,9.842,9.630,9.437,9.256,9.083,8.913,8.747,
-8.586,8.434,8.295,8.174,8.072,7.990,7.924,7.868,7.815,7.757,7.689,7.608,7.512,7.404,7.288,7.169,
-7.051,6.935,6.819,6.697,6.559,6.395,6.197,5.958,5.676,5.354,5.004,4.639,4.276,3.932,3.620,3.351,
-3.127,2.946,2.798,2.674,2.561,2.448,2.329,2.202,2.069,1.935,1.810,1.698,1.606,1.532,1.473,1.418,
-1.357,1.276,1.162,1.009,.813,.575,.302,.006,-.302,-.607,-.900,-1.173,-1.424,-1.652,-1.862,-2.059,
--2.250,-2.438,-2.627,-2.818,-3.011,-3.202,-3.389,-3.570,-3.744,-3.910,-4.072,-4.231,-4.391,-4.553,-4.720,-4.889,
--5.061,-5.229,-5.391,-5.541,-5.676,-5.792,-5.889,-5.967,-6.029,-6.079,-6.120,-6.158,-6.197,-6.239,-6.289,-6.347,
--6.415,-6.494,-6.583,-6.681,-6.788,-6.901,-7.017,-7.132,-7.244,-7.349,-7.446,-7.534,-7.614,-7.689,-7.765,-7.845,
--7.936,-8.039,-8.158,-8.291,-8.433,-8.578,-8.717,-8.842,-8.945,-9.021,-9.068,-9.087,-9.083,-9.062,-9.033,-9.001,
--8.972,-8.948,-8.927,-8.907,-8.881,-8.846,-8.799,-8.740,-8.674,-8.610,-8.561,-8.539,-8.557,-8.625,-8.748,-8.925,
--9.149,-9.408,-9.685,-9.962,-10.224,-10.456,-10.651,-10.805,-10.920,-11.004,-11.065,-11.116,-11.165,-11.219,-11.283,-11.358,
--11.441,-11.529,-11.618,-11.704,-11.785,-11.861,-11.935,-12.009,-12.087,-12.172,-12.268,-12.372,-12.485,-12.603,-12.722,-12.836,
--12.942,-13.037,-13.120,-13.192,-13.254,-13.311,-13.365,-13.420,-13.476,-13.535,-13.596,-13.655,-13.710,-13.758,-13.797,-13.823,
--13.836,-13.837,-13.827,-13.809,-13.784,-13.754,-13.722,-13.688,-13.654,-13.621,-13.591,-13.564,-13.542,-13.528,-13.523,-13.526,
--13.537,-13.554,-13.572,-13.586,-13.590,-13.578,-13.548,-13.496,-13.425,-13.339,-13.244,-13.148,-13.057,-12.977,-12.908,-12.850,
--12.798,-12.742,-12.675,-12.591,-12.486,-12.363,-12.229,-12.100,-11.992,-11.925,-11.915,-11.974,-12.106,-12.304,-12.555,-12.834,
--13.114,-13.365,-13.561,-13.681,-13.715,-13.660,-13.526,-13.329,-13.091,-12.833,-12.577,-12.338,-12.126,-11.943,-11.786,-11.649,
--11.521,-11.393,-11.258,-11.111,-10.952,-10.783,-10.608,-10.435,-10.269,-10.117,-9.985,-9.876,-9.796,-9.746,-9.729,-9.745,
--9.795,-9.877,-9.984,-10.110,-10.245,-10.377,-10.493,-10.582,-10.634,-10.644,-10.608,-10.531,-10.421,-10.287,-10.144,-10.004,
--9.878,-9.774,-9.697,-9.647,-9.621,-9.612,-9.615,-9.619,-9.620,-9.611,-9.591,-9.559,-9.516,-9.467,-9.414,-9.361,
--9.311,-9.267,-9.227,-9.190,-9.153,-9.113,-9.064,-9.003,-8.925,-8.829,-8.712,-8.577,-8.423,-8.256,-8.080,-7.898,
--7.717,-7.540,-7.371,-7.213,-7.066,-6.932,-6.812,-6.707,-6.619,-6.549,-6.498,-6.470,-6.463,-6.479,-6.516,-6.569,
--6.634,-6.705,-6.775,-6.837,-6.887,-6.922,-6.941,-6.945,-6.938,-6.924,-6.906,-6.889,-6.874,-6.862,-6.850,-6.835,
--6.813,-6.778,-6.727,-6.655,-6.562,-6.448,-6.316,-6.171,-6.016,-5.858,-5.701,-5.549,-5.405,-5.270,-5.144,-5.027,
--4.916,-4.810,-4.705,-4.601,-4.495,-4.386,-4.275,-4.161,-4.047,-3.933,-3.821,-3.714,-3.612,-3.517,-3.428,-3.344,
--3.263,-3.183,-3.101,-3.013,-2.919,-2.816,-2.704,-2.586,-2.464,-2.342,-2.224,-2.114,-2.017,-1.933,-1.864,-1.808,
--1.763,-1.725,-1.690,-1.655,-1.614,-1.567,-1.511,-1.446,-1.373,-1.292,-1.204,-1.111,-1.014,-.913,-.809,-.702,
--.593,-.482,-.371,-.260,-.152,-.048,.052,.146,.234,.317,.395,.468,.537,.600,.658,.709,
-.751,.785,.808,.823,.831,.834,.836,.842,.855,.877,.910,.955,1.009,1.069,1.132,1.194,
-1.253,1.307,1.355,1.398,1.438,1.476,1.514,1.553,1.592,1.629,1.663,1.692,1.715,1.732,1.746,1.761,
-1.784,1.821,1.875,1.951,2.048,2.162,2.285,2.410,2.524,2.619,2.688,2.730,2.748,2.750,2.747,2.753,
-2.781,2.841,2.936,3.065,3.218,3.381,3.535,3.662,3.746,3.775,3.747,3.665,3.541,3.391,3.237,3.097,
-2.987,2.918,2.893,2.908,2.954,3.018,3.085,3.144,3.186,3.206,3.205,3.189,3.164,3.138,3.116,3.101,
-3.090,3.079,3.059,3.024,2.964,2.878,2.766,2.633,2.490,2.349,2.224,2.128,2.069,2.051,2.075,2.134,
-2.220,2.322,2.431,2.536,2.631,2.714,2.785,2.844,2.894,2.938,2.975,3.007,3.029,3.041,3.039,3.023,
-2.995,2.956,2.914,2.875,2.846,2.831,2.831,2.846,2.869,2.891,2.901,2.887,2.840,2.754,2.629,2.466,
-2.276,2.069,1.858,1.656,1.473,1.317,1.190,1.091,1.014,.954,.904,.857,.811,.763,.716,.674,
-.640,.618,.612,.622,.646,.680,.719,.758,.793,.820,.838,.848,.853,.855,.859,.867,
-.879,.896,.914,.930,.940,.941,.929,.905,.868,.822,.770,.716,.661,.609,.560,.513,
-.465,.414,.359,.298,.234,.168,.106,.054,.016,-.002,.002,.029,.073,.129,.187,.238,
-.271,.279,.256,.200,.115,.007,-.114,-.239,-.355,-.455,-.532,-.584,-.614,-.626,-.630,-.637,
--.657,-.698,-.767,-.865,-.992,-1.141,-1.304,-1.472,-1.633,-1.778,-1.899,-1.991,-2.051,-2.080,-2.082,-2.065,
--2.035,-2.004,-1.981,-1.977,-2.003,-2.066,-2.174,-2.331,-2.537,-2.791,-3.086,-3.414,-3.762,-4.117,-4.466,-4.795,
--5.095,-5.357,-5.580,-5.763,-5.911,-6.031,-6.128,-6.212,-6.286,-6.353,-6.414,-6.466,-6.507,-6.531,-6.538,-6.526,
--6.498,-6.459,-6.418,-6.384,-6.366,-6.372,-6.407,-6.473,-6.566,-6.683,-6.813,-6.949,-7.081,-7.201,-7.304,-7.387,
--7.451,-7.497,-7.529,-7.550,-7.564,-7.573,-7.577,-7.577,-7.570,-7.556,-7.532,-7.496,-7.446,-7.384,-7.309,-7.222,
--7.124,-7.017,-6.904,-6.788,-6.670,-6.554,-6.444,-6.343,-6.252,-6.174,-6.109,-6.053,-6.005,-5.958,-5.906,-5.842,
--5.761,-5.656,-5.525,-5.367,-5.184,-4.981,-4.766,-4.551,-4.347,-4.170,-4.034,-3.955,-3.948,-4.024,-4.194,-4.463,
--4.832,-5.295,-5.842,-6.454,-7.108,-7.780,-8.441,-9.065,-9.628,-10.113,-10.508,-10.811,-11.026,-11.162,-11.234,-11.257,
--11.249,-11.221,-11.185,-11.145,-11.103,-11.057,-11.006,-10.947,-10.880,-10.809,-10.738,-10.678,-10.638,-10.630,-10.663,-10.742,
--10.872,-11.048,-11.265,-11.515,-11.784,-12.063,-12.340,-12.608,-12.861,-13.097,-13.316,-13.521,-13.714,-13.900,-14.082,-14.261,
--14.439,-14.616,-14.791,-14.966,-15.140,-15.313,-15.486,-15.658,-15.830,-15.999,-16.164,-16.320,-16.463,-16.592,-16.705,-16.801,
--16.885,-16.964,-17.047,-17.145,-17.271,-17.434,-17.643,-17.901,-18.207,-18.556,-18.937,-19.336,-19.740,-20.133,-20.505,-20.845,
--21.150,-21.419,-21.656,-21.865,-22.054,-22.227,-22.390,-22.544,-22.687,-22.816,-22.928,-23.019,-23.085,-23.127,-23.148,-23.156,
--23.159,-23.168,-23.196,-23.251,-23.338,-23.460,-23.614,-23.789,-23.975,-24.157,-24.320,-24.449,-24.536,-24.573,-24.560,-24.501,
--24.400,-24.268,-24.112,-23.940,-23.757,-23.564,-23.360,-23.143,-22.910,-22.658,-22.389,-22.108,-21.821,-21.540,-21.278,-21.044,
--20.847,-20.690,-20.571,-20.480,-20.402,-20.322,-20.221,-20.084,-19.903,-19.674,-19.405,-19.110,-18.809,-18.528,-18.288,-18.112,
--18.012,-17.994,-18.055,-18.181,-18.353,-18.548,-18.742,-18.912,-19.041,-19.116,-19.134,-19.094,-19.003,-18.869,-18.702,-18.514,
--18.311,-18.101,-17.887,-17.672,-17.456,-17.239,-17.022,-16.806,-16.595,-16.390,-16.195,-16.014,-15.849,-15.702,-15.572,-15.458,
--15.356,-15.261,-15.167,-15.067,-14.953,-14.819,-14.660,-14.472,-14.254,-14.008,-13.737,-13.449,-13.151,-12.850,-12.554,-12.268,
--11.994,-11.733,-11.478,-11.225,-10.965,-10.689,-10.390,-10.064,-9.709,-9.327,-8.922,-8.502,-8.073,-7.642,-7.212,-6.785,
--6.360,-5.934,-5.502,-5.062,-4.612,-4.156,-3.699,-3.253,-2.828,-2.437,-2.088,-1.787,-1.533,-1.318,-1.127,-.943,
--.745,-.515,-.237,.096,.483,.917,1.381,1.856,2.321,2.756,3.150,3.499,3.808,4.092,4.369,4.666,
-5.006,5.407,5.881,6.428,7.040,7.697,8.374,9.040,9.668,10.234,10.723,11.131,11.463,11.733,11.962,12.176,
-12.397,12.646,12.935,13.270,13.650,14.067,14.509,14.963,15.419,15.867,16.306,16.736,17.163,17.595,18.040,18.506,
-18.997,19.513,20.051,20.603,21.160,21.711,22.247,22.759,23.241,23.688,24.099,24.473,24.812,25.116,25.388,25.630,
-25.845,26.036,26.209,26.368,26.519,26.668,26.820,26.978,27.141,27.307,27.469,27.622,27.755,27.862,27.938,27.984,
-28.003,28.008,28.013,28.036,28.097,28.213,28.400,28.665,29.008,29.424,29.898,30.413,30.947,31.477,31.985,32.455,
-32.879,33.254,33.585,33.881,34.153,34.417,34.684,34.964,35.263,35.582,35.916,36.259,36.601,36.931,37.239,37.521,
-37.771,37.990,38.183,38.356,38.518,38.677,38.841,39.015,39.201,39.399,39.605,39.817,40.030,40.241,40.449,40.657,
-40.867,41.086,41.320,41.574,41.851,42.150,42.470,42.805,43.146,43.487,43.821,44.144,44.454,44.754,45.048,45.342,
-45.639,45.943,46.254,46.568,46.878,47.178,47.459,47.718,47.954,48.171,48.377,48.584,48.801,49.039,49.300,49.583,
-49.879,50.175,50.454,50.704,50.914,51.084,51.220,51.338,51.457,51.600,51.781,52.009,52.279,52.573,52.860,53.104,
-53.269,53.327,53.262,53.078,52.800,52.470,52.143,51.878,51.727,51.728,51.896,52.223,52.676,53.202,53.742,54.233,
-54.624,54.881,54.994,54.973,54.848,54.662,54.461,54.284,54.162,54.107,54.117,54.177,54.265,54.357,54.436,54.496,
-54.539,54.582,54.646,54.752,54.919,55.152,55.446,55.781,56.124,56.439,56.689,56.844,56.885,56.808,56.627,56.369,
-56.067,55.763,55.493,55.287,55.166,55.136,55.191,55.318,55.494,55.695,55.899,56.085,56.240,56.355,56.427,56.459,
-56.456,56.424,56.369,56.297,56.213,56.120,56.018,55.909,55.793,55.669,55.537,55.398,55.254,55.107,54.961,54.820,
-54.690,54.576,54.481,54.408,54.357,54.328,54.315,54.315,54.321,54.328,54.331,54.328,54.317,54.299,54.275,54.246,
-54.213,54.173,54.125,54.064,53.985,53.884,53.757,53.606,53.432,53.241,53.040,52.839,52.645,52.464,52.300,52.152,
-52.017,51.892,51.769,51.644,51.513,51.375,51.231,51.084,50.936,50.791,50.648,50.460,50.294,50.131,49.964,49.784,
-49.581,49.351,49.091,48.804,48.497,48.179,47.861,47.554,47.264,46.995,46.745,46.509,46.282,46.056,45.826,45.589,
-45.348,45.108,44.875,44.658,44.464,44.295,44.152,44.029,43.918,43.810,43.695,43.565,43.417,43.251,43.072,42.888,
-42.705,42.533,42.374,42.232,42.102,41.979,41.855,41.723,41.579,41.420,41.250,41.074,40.901,40.737,40.590,40.462,
-40.349,40.245,40.135,40.007,39.845,39.637,39.374,39.053,38.679,38.256,37.797,37.313,36.814,36.307,35.798,35.286,
-34.769,34.245,33.710,33.164,32.610,32.054,31.504,30.971,30.467,30.000,29.576,29.198,28.864,28.568,28.302,28.057,
-27.824,27.596,27.370,27.144,26.917,26.692,26.471,26.256,26.047,25.840,25.633,25.421,25.198,24.959,24.701,24.425,
-24.130,23.823,23.508,23.192,22.881,22.580,22.291,22.013,21.742,21.474,21.201,20.917,20.615,20.294,19.952,19.593,
-19.224,18.854,18.492,18.150,17.837,17.559,17.321,17.123,16.962,16.832,16.726,16.637,16.555,16.475,16.391,16.299,
-16.199,16.089,15.970,15.844,15.710,15.571,15.424,15.271,15.108,14.935,14.747,14.542,14.317,14.068,13.794,13.494,
-13.169,12.820,12.455,12.079,11.701,11.332,10.978,10.650,10.352,10.086,9.852,9.646,9.464,9.300,9.146,8.999,
-8.857,8.719,8.588,8.467,8.359,8.265,8.186,8.119,8.058,7.998,7.932,7.855,7.762,7.652,7.527,7.392,
-7.249,7.103,6.955,6.804,6.646,6.473,6.277,6.052,5.794,5.501,5.179,4.836,4.486,4.143,3.820,3.529,
-3.276,3.060,2.876,2.717,2.571,2.427,2.279,2.121,1.957,1.790,1.630,1.486,1.364,1.269,1.200,1.149,
-1.108,1.063,1.002,.913,.789,.629,.436,.218,-.016,-.256,-.491,-.717,-.932,-1.138,-1.340,-1.544,
--1.756,-1.982,-2.222,-2.474,-2.733,-2.991,-3.240,-3.474,-3.688,-3.880,-4.054,-4.214,-4.368,-4.524,-4.688,-4.864,
--5.053,-5.252,-5.456,-5.657,-5.845,-6.014,-6.157,-6.271,-6.357,-6.418,-6.460,-6.489,-6.513,-6.538,-6.570,-6.613,
--6.667,-6.734,-6.811,-6.898,-6.993,-7.095,-7.200,-7.309,-7.420,-7.530,-7.639,-7.745,-7.846,-7.944,-8.037,-8.129,
--8.222,-8.319,-8.425,-8.541,-8.667,-8.803,-8.944,-9.084,-9.217,-9.334,-9.430,-9.501,-9.545,-9.563,-9.562,-9.545,
--9.519,-9.489,-9.458,-9.427,-9.395,-9.358,-9.312,-9.254,-9.186,-9.110,-9.033,-8.967,-8.922,-8.911,-8.944,-9.028,
--9.163,-9.344,-9.562,-9.803,-10.050,-10.289,-10.507,-10.694,-10.849,-10.972,-11.069,-11.150,-11.224,-11.300,-11.385,-11.482,
--11.591,-11.709,-11.831,-11.951,-12.066,-12.170,-12.265,-12.352,-12.434,-12.517,-12.605,-12.702,-12.810,-12.929,-13.055,-13.185,
--13.313,-13.432,-13.539,-13.631,-13.705,-13.762,-13.806,-13.839,-13.865,-13.887,-13.907,-13.924,-13.938,-13.948,-13.950,-13.943,
--13.926,-13.900,-13.868,-13.834,-13.803,-13.779,-13.768,-13.771,-13.788,-13.819,-13.860,-13.905,-13.949,-13.989,-14.019,-14.039,
--14.048,-14.048,-14.039,-14.023,-14.002,-13.973,-13.936,-13.889,-13.830,-13.758,-13.674,-13.581,-13.483,-13.384,-13.291,-13.207,
--13.132,-13.064,-12.999,-12.929,-12.847,-12.747,-12.627,-12.489,-12.339,-12.192,-12.062,-11.965,-11.918,-11.930,-12.003,-12.133,
--12.308,-12.507,-12.708,-12.888,-13.026,-13.107,-13.125,-13.078,-12.974,-12.826,-12.648,-12.455,-12.258,-12.067,-11.886,-11.713,
--11.545,-11.380,-11.211,-11.037,-10.857,-10.672,-10.486,-10.303,-10.127,-9.962,-9.813,-9.680,-9.566,-9.472,-9.402,-9.358,
--9.344,-9.361,-9.411,-9.494,-9.606,-9.742,-9.890,-10.041,-10.181,-10.300,-10.388,-10.439,-10.451,-10.425,-10.368,-10.288,
--10.194,-10.096,-10.002,-9.920,-9.854,-9.804,-9.771,-9.752,-9.743,-9.740,-9.738,-9.732,-9.718,-9.694,-9.658,-9.607,
--9.544,-9.467,-9.380,-9.285,-9.182,-9.076,-8.966,-8.852,-8.735,-8.613,-8.484,-8.348,-8.205,-8.055,-7.900,-7.743,
--7.588,-7.438,-7.297,-7.167,-7.049,-6.945,-6.853,-6.773,-6.704,-6.647,-6.602,-6.572,-6.558,-6.562,-6.585,-6.628,
--6.688,-6.761,-6.844,-6.929,-7.011,-7.084,-7.145,-7.193,-7.226,-7.247,-7.258,-7.262,-7.261,-7.255,-7.244,-7.225,
--7.195,-7.150,-7.086,-7.002,-6.895,-6.766,-6.619,-6.456,-6.283,-6.106,-5.929,-5.756,-5.591,-5.436,-5.290,-5.155,
--5.029,-4.910,-4.797,-4.687,-4.580,-4.473,-4.366,-4.258,-4.149,-4.039,-3.930,-3.822,-3.716,-3.613,-3.514,-3.417,
--3.323,-3.229,-3.133,-3.035,-2.931,-2.820,-2.702,-2.579,-2.452,-2.325,-2.200,-2.083,-1.976,-1.882,-1.801,-1.735,
--1.681,-1.637,-1.601,-1.569,-1.539,-1.507,-1.472,-1.433,-1.389,-1.338,-1.279,-1.212,-1.134,-1.045,-.944,-.830,
--.706,-.573,-.434,-.293,-.156,-.025,.098,.209,.311,.405,.493,.579,.665,.754,.844,.934,
-1.020,1.096,1.158,1.200,1.221,1.219,1.196,1.158,1.111,1.064,1.022,.994,.983,.990,1.016,1.058,
-1.110,1.169,1.231,1.292,1.351,1.408,1.463,1.517,1.571,1.623,1.673,1.718,1.755,1.782,1.798,1.804,
-1.803,1.801,1.802,1.816,1.845,1.896,1.966,2.055,2.155,2.261,2.365,2.459,2.542,2.612,2.674,2.733,
-2.798,2.877,2.975,3.092,3.225,3.366,3.502,3.618,3.699,3.735,3.718,3.650,3.537,3.394,3.238,3.089,
-2.965,2.878,2.838,2.845,2.892,2.967,3.057,3.146,3.222,3.275,3.302,3.306,3.292,3.270,3.248,3.235,
-3.232,3.240,3.254,3.265,3.263,3.240,3.189,3.107,2.997,2.865,2.722,2.581,2.452,2.348,2.275,2.238,
-2.234,2.261,2.312,2.380,2.457,2.537,2.615,2.689,2.755,2.811,2.857,2.891,2.910,2.914,2.900,2.869,
-2.825,2.772,2.716,2.665,2.627,2.608,2.612,2.638,2.682,2.736,2.789,2.829,2.843,2.823,2.761,2.658,
-2.516,2.345,2.154,1.956,1.764,1.587,1.432,1.302,1.198,1.116,1.052,1.001,.957,.917,.879,.844,
-.813,.788,.772,.766,.771,.786,.810,.842,.878,.917,.958,1.000,1.041,1.083,1.124,1.163,
-1.198,1.227,1.248,1.257,1.252,1.231,1.195,1.145,1.084,1.015,.942,.867,.795,.726,.660,.595,
-.530,.463,.392,.317,.239,.161,.087,.023,-.028,-.060,-.072,-.065,-.041,-.006,.031,.061,
-.075,.064,.023,-.051,-.158,-.291,-.442,-.600,-.752,-.887,-.994,-1.067,-1.102,-1.102,-1.073,-1.023,
--.966,-.914,-.877,-.865,-.884,-.935,-1.016,-1.122,-1.244,-1.374,-1.502,-1.623,-1.729,-1.819,-1.892,-1.950,
--1.998,-2.039,-2.078,-2.120,-2.168,-2.228,-2.300,-2.387,-2.492,-2.615,-2.757,-2.916,-3.093,-3.283,-3.482,-3.687,
--3.891,-4.089,-4.278,-4.453,-4.614,-4.760,-4.891,-5.008,-5.112,-5.201,-5.273,-5.325,-5.350,-5.345,-5.304,-5.227,
--5.115,-4.974,-4.814,-4.650,-4.497,-4.372,-4.290,-4.263,-4.299,-4.399,-4.558,-4.769,-5.018,-5.290,-5.569,-5.842,
--6.096,-6.324,-6.521,-6.685,-6.818,-6.923,-7.003,-7.062,-7.104,-7.132,-7.146,-7.147,-7.134,-7.106,-7.062,-6.998,
--6.915,-6.812,-6.689,-6.550,-6.397,-6.235,-6.070,-5.907,-5.753,-5.612,-5.485,-5.372,-5.272,-5.179,-5.086,-4.987,
--4.875,-4.747,-4.599,-4.433,-4.256,-4.075,-3.901,-3.748,-3.630,-3.559,-3.547,-3.603,-3.734,-3.942,-4.227,-4.586,
--5.010,-5.491,-6.016,-6.569,-7.136,-7.700,-8.247,-8.762,-9.235,-9.659,-10.032,-10.353,-10.626,-10.858,-11.056,-11.225,
--11.372,-11.498,-11.605,-11.691,-11.754,-11.792,-11.804,-11.792,-11.760,-11.718,-11.675,-11.643,-11.635,-11.661,-11.727,-11.838,
--11.991,-12.182,-12.400,-12.636,-12.878,-13.115,-13.341,-13.550,-13.741,-13.916,-14.079,-14.234,-14.387,-14.540,-14.697,-14.857,
--15.019,-15.181,-15.339,-15.492,-15.637,-15.775,-15.907,-16.034,-16.158,-16.280,-16.400,-16.517,-16.628,-16.729,-16.817,-16.890,
--16.948,-16.993,-17.032,-17.074,-17.129,-17.213,-17.337,-17.513,-17.748,-18.046,-18.406,-18.821,-19.279,-19.766,-20.265,-20.760,
--21.234,-21.675,-22.073,-22.424,-22.724,-22.975,-23.181,-23.349,-23.483,-23.589,-23.674,-23.741,-23.793,-23.833,-23.863,-23.887,
--23.907,-23.928,-23.955,-23.992,-24.045,-24.118,-24.212,-24.328,-24.461,-24.606,-24.755,-24.898,-25.023,-25.122,-25.187,-25.214,
--25.200,-25.147,-25.059,-24.941,-24.800,-24.639,-24.463,-24.272,-24.068,-23.850,-23.617,-23.370,-23.115,-22.856,-22.602,-22.362,
--22.145,-21.957,-21.802,-21.675,-21.569,-21.469,-21.360,-21.224,-21.046,-20.818,-20.539,-20.215,-19.863,-19.506,-19.171,-18.886,
--18.675,-18.555,-18.534,-18.610,-18.769,-18.991,-19.248,-19.511,-19.755,-19.956,-20.099,-20.177,-20.191,-20.146,-20.054,-19.927,
--19.778,-19.618,-19.455,-19.293,-19.133,-18.975,-18.815,-18.652,-18.484,-18.309,-18.128,-17.944,-17.760,-17.578,-17.403,-17.236,
--17.080,-16.934,-16.797,-16.666,-16.537,-16.405,-16.264,-16.108,-15.934,-15.738,-15.518,-15.274,-15.011,-14.731,-14.442,-14.147,
--13.853,-13.563,-13.278,-12.998,-12.719,-12.437,-12.145,-11.838,-11.512,-11.165,-10.796,-10.407,-10.000,-9.580,-9.151,-8.713,
--8.270,-7.819,-7.361,-6.894,-6.418,-5.933,-5.443,-4.954,-4.472,-4.006,-3.562,-3.143,-2.753,-2.388,-2.041,-1.705,
--1.367,-1.019,-.652,-.264,.143,.560,.976,1.374,1.738,2.053,2.311,2.508,2.652,2.757,2.844,2.943,
-3.080,3.284,3.576,3.970,4.468,5.063,5.734,6.458,7.201,7.934,8.627,9.260,9.821,10.306,10.724,11.090,
-11.423,11.745,12.075,12.428,12.811,13.226,13.669,14.128,14.594,15.056,15.507,15.943,16.367,16.786,17.208,17.646,
-18.108,18.601,19.129,19.688,20.271,20.869,21.469,22.058,22.625,23.159,23.656,24.110,24.522,24.892,25.225,25.522,
-25.791,26.034,26.258,26.469,26.671,26.871,27.072,27.279,27.491,27.706,27.917,28.117,28.293,28.435,28.530,28.572,
-28.557,28.490,28.380,28.245,28.106,27.987,27.915,27.910,27.991,28.168,28.441,28.805,29.245,29.742,30.274,30.819,
-31.356,31.871,32.352,32.796,33.205,33.584,33.942,34.289,34.633,34.980,35.333,35.691,36.051,36.404,36.746,37.067,
-37.363,37.631,37.870,38.083,38.276,38.455,38.630,38.805,38.989,39.184,39.391,39.610,39.840,40.076,40.317,40.561,
-40.809,41.063,41.327,41.606,41.902,42.220,42.558,42.916,43.287,43.666,44.044,44.414,44.772,45.113,45.438,45.748,
-46.048,46.342,46.633,46.923,47.212,47.497,47.774,48.042,48.298,48.544,48.784,49.026,49.277,49.545,49.833,50.140,
-50.458,50.776,51.076,51.341,51.559,51.722,51.832,51.904,51.959,52.025,52.130,52.297,52.536,52.845,53.202,53.575,
-53.921,54.195,54.361,54.397,54.300,54.090,53.806,53.501,53.233,53.052,52.996,53.079,53.288,53.590,53.932,54.257,
-54.509,54.645,54.646,54.517,54.287,54.002,53.718,53.488,53.356,53.345,53.458,53.675,53.963,54.280,54.586,54.850,
-55.056,55.205,55.313,55.404,55.507,55.643,55.824,56.049,56.299,56.547,56.761,56.907,56.963,56.919,56.782,56.571,
-56.320,56.066,55.846,55.691,55.619,55.636,55.734,55.894,56.092,56.301,56.499,56.667,56.797,56.888,56.944,56.975,
-56.990,57.000,57.010,57.022,57.035,57.044,57.043,57.023,56.980,56.910,56.810,56.683,56.531,56.361,56.181,55.999,
-55.823,55.663,55.523,55.408,55.319,55.254,55.207,55.171,55.138,55.099,55.047,54.979,54.893,54.793,54.684,54.573,
-54.466,54.367,54.279,54.199,54.123,54.043,53.951,53.840,53.708,53.553,53.379,53.192,53.001,52.813,52.634,52.469,
-52.316,52.172,52.031,51.886,51.731,51.565,51.386,51.198,51.006,50.817,50.634,50.460,50.053,49.872,49.701,49.533,
-49.355,49.159,48.937,48.685,48.408,48.111,47.806,47.506,47.220,46.958,46.722,46.511,46.320,46.138,45.958,45.770,
-45.571,45.359,45.139,44.917,44.702,44.503,44.325,44.171,44.039,43.924,43.817,43.709,43.593,43.464,43.319,43.161,
-42.993,42.822,42.654,42.492,42.337,42.188,42.041,41.890,41.728,41.552,41.361,41.156,40.944,40.731,40.525,40.334,
-40.161,40.007,39.867,39.732,39.591,39.431,39.241,39.011,38.734,38.411,38.044,37.637,37.200,36.738,36.259,35.767,
-35.266,34.756,34.237,33.710,33.175,32.637,32.100,31.574,31.067,30.588,30.147,29.751,29.403,29.102,28.846,28.628,
-28.437,28.264,28.095,27.920,27.731,27.521,27.285,27.024,26.739,26.433,26.113,25.785,25.454,25.125,24.802,24.488,
-24.184,23.892,23.610,23.339,23.079,22.831,22.595,22.370,22.156,21.950,21.748,21.543,21.328,21.095,20.836,20.547,
-20.225,19.872,19.494,19.100,18.703,18.316,17.953,17.625,17.337,17.095,16.896,16.735,16.605,16.495,16.399,16.307,
-16.215,16.118,16.015,15.906,15.790,15.668,15.539,15.402,15.254,15.093,14.916,14.722,14.508,14.273,14.017,13.741,
-13.446,13.132,12.803,12.460,12.109,11.755,11.403,11.062,10.737,10.437,10.165,9.924,9.716,9.537,9.384,9.250,
-9.131,9.020,8.914,8.811,8.710,8.612,8.519,8.431,8.347,8.268,8.188,8.104,8.013,7.909,7.791,7.657,
-7.508,7.345,7.169,6.981,6.782,6.569,6.341,6.094,5.828,5.541,5.237,4.921,4.602,4.289,3.992,3.721,
-3.481,3.273,3.093,2.936,2.791,2.650,2.503,2.346,2.177,2.001,1.823,1.653,1.499,1.367,1.259,1.174,
-1.105,1.043,.977,.897,.795,.667,.516,.345,.164,-.020,-.198,-.365,-.520,-.664,-.805,-.950,
--1.109,-1.289,-1.493,-1.722,-1.973,-2.237,-2.507,-2.771,-3.023,-3.257,-3.473,-3.674,-3.868,-4.061,-4.264,-4.484,
--4.724,-4.983,-5.259,-5.541,-5.818,-6.079,-6.313,-6.509,-6.664,-6.778,-6.854,-6.899,-6.924,-6.939,-6.953,-6.974,
--7.006,-7.053,-7.113,-7.183,-7.262,-7.346,-7.433,-7.521,-7.611,-7.702,-7.795,-7.890,-7.986,-8.083,-8.180,-8.274,
--8.366,-8.457,-8.548,-8.641,-8.741,-8.849,-8.968,-9.096,-9.232,-9.370,-9.503,-9.624,-9.726,-9.805,-9.858,-9.885,
--9.888,-9.874,-9.847,-9.813,-9.776,-9.737,-9.697,-9.655,-9.609,-9.558,-9.502,-9.447,-9.396,-9.359,-9.343,-9.357,
--9.408,-9.498,-9.625,-9.785,-9.968,-10.165,-10.364,-10.556,-10.734,-10.895,-11.038,-11.167,-11.288,-11.407,-11.530,-11.660,
--11.800,-11.948,-12.100,-12.252,-12.400,-12.538,-12.664,-12.777,-12.878,-12.970,-13.057,-13.144,-13.235,-13.331,-13.433,-13.541,
--13.651,-13.759,-13.861,-13.952,-14.031,-14.094,-14.142,-14.176,-14.197,-14.209,-14.214,-14.213,-14.207,-14.195,-14.176,-14.148,
--14.112,-14.068,-14.020,-13.971,-13.929,-13.901,-13.893,-13.912,-13.960,-14.036,-14.137,-14.253,-14.377,-14.495,-14.600,-14.683,
--14.740,-14.769,-14.775,-14.762,-14.736,-14.702,-14.663,-14.621,-14.575,-14.520,-14.454,-14.373,-14.276,-14.164,-14.043,-13.918,
--13.798,-13.687,-13.589,-13.503,-13.426,-13.349,-13.263,-13.158,-13.029,-12.873,-12.695,-12.505,-12.318,-12.153,-12.025,-11.948,
--11.930,-11.972,-12.065,-12.198,-12.350,-12.502,-12.637,-12.737,-12.793,-12.801,-12.762,-12.678,-12.558,-12.409,-12.237,-12.047,
--11.841,-11.623,-11.393,-11.154,-10.908,-10.659,-10.412,-10.174,-9.947,-9.739,-9.550,-9.383,-9.239,-9.119,-9.021,-8.949,
--8.902,-8.885,-8.899,-8.946,-9.026,-9.137,-9.274,-9.430,-9.596,-9.761,-9.918,-10.057,-10.173,-10.262,-10.323,-10.357,
--10.366,-10.354,-10.324,-10.280,-10.225,-10.163,-10.097,-10.031,-9.968,-9.910,-9.859,-9.816,-9.779,-9.747,-9.714,-9.677,
--9.629,-9.568,-9.488,-9.390,-9.275,-9.143,-9.000,-8.849,-8.694,-8.539,-8.384,-8.231,-8.081,-7.933,-7.788,-7.645,
--7.508,-7.378,-7.257,-7.147,-7.050,-6.967,-6.899,-6.844,-6.802,-6.773,-6.756,-6.753,-6.763,-6.790,-6.834,-6.896,
--6.975,-7.070,-7.176,-7.288,-7.401,-7.510,-7.608,-7.692,-7.759,-7.807,-7.836,-7.846,-7.838,-7.811,-7.766,-7.701,
--7.618,-7.515,-7.394,-7.256,-7.105,-6.942,-6.773,-6.599,-6.426,-6.254,-6.085,-5.920,-5.757,-5.595,-5.435,-5.276,
--5.119,-4.966,-4.817,-4.674,-4.540,-4.414,-4.296,-4.187,-4.083,-3.983,-3.885,-3.788,-3.691,-3.593,-3.495,-3.397,
--3.299,-3.201,-3.102,-3.001,-2.896,-2.787,-2.672,-2.552,-2.427,-2.300,-2.174,-2.052,-1.937,-1.832,-1.740,-1.660,
--1.592,-1.534,-1.484,-1.441,-1.403,-1.367,-1.333,-1.300,-1.267,-1.234,-1.198,-1.155,-1.103,-1.037,-.953,-.850,
--.725,-.580,-.419,-.248,-.074,.096,.254,.396,.518,.622,.710,.788,.861,.937,1.018,1.105,
-1.198,1.291,1.378,1.449,1.498,1.518,1.508,1.469,1.407,1.330,1.249,1.176,1.119,1.085,1.079,1.099,
-1.140,1.197,1.261,1.324,1.381,1.428,1.466,1.495,1.519,1.544,1.572,1.607,1.647,1.691,1.737,1.780,
-1.817,1.846,1.866,1.880,1.890,1.901,1.918,1.945,1.983,2.033,2.095,2.165,2.242,2.322,2.405,2.492,
-2.584,2.685,2.796,2.917,3.048,3.184,3.317,3.437,3.534,3.600,3.626,3.609,3.553,3.463,3.351,3.231,
-3.118,3.024,2.961,2.933,2.940,2.977,3.036,3.105,3.174,3.234,3.277,3.303,3.313,3.313,3.308,3.306,
-3.312,3.327,3.351,3.380,3.405,3.420,3.417,3.389,3.334,3.253,3.149,3.030,2.904,2.782,2.670,2.576,
-2.503,2.454,2.426,2.418,2.426,2.446,2.474,2.506,2.541,2.575,2.606,2.631,2.648,2.654,2.647,2.626,
-2.592,2.546,2.493,2.440,2.391,2.354,2.334,2.333,2.352,2.387,2.433,2.481,2.522,2.549,2.552,2.527,
-2.472,2.387,2.277,2.146,2.001,1.850,1.699,1.554,1.419,1.297,1.189,1.096,1.018,.955,.906,.870,
-.847,.835,.833,.840,.854,.873,.897,.926,.960,.998,1.043,1.095,1.153,1.217,1.285,1.353,
-1.417,1.471,1.510,1.531,1.529,1.504,1.457,1.389,1.306,1.211,1.111,1.008,.907,.808,.712,.619,
-.528,.436,.345,.254,.165,.081,.006,-.057,-.104,-.135,-.147,-.145,-.131,-.111,-.091,-.079,
--.080,-.102,-.147,-.217,-.313,-.429,-.562,-.704,-.846,-.979,-1.094,-1.185,-1.246,-1.275,-1.273,-1.245,
--1.196,-1.137,-1.076,-1.022,-.984,-.968,-.975,-1.007,-1.060,-1.129,-1.210,-1.297,-1.386,-1.473,-1.558,-1.642,
--1.726,-1.812,-1.902,-1.995,-2.091,-2.188,-2.283,-2.374,-2.458,-2.535,-2.605,-2.671,-2.736,-2.805,-2.882,-2.971,
--3.072,-3.186,-3.310,-3.441,-3.575,-3.706,-3.831,-3.944,-4.043,-4.123,-4.182,-4.217,-4.222,-4.195,-4.129,-4.024,
--3.876,-3.689,-3.468,-3.224,-2.971,-2.726,-2.508,-2.337,-2.227,-2.192,-2.239,-2.368,-2.574,-2.845,-3.166,-3.519,
--3.887,-4.252,-4.600,-4.920,-5.207,-5.456,-5.669,-5.848,-5.998,-6.122,-6.226,-6.312,-6.382,-6.435,-6.471,-6.485,
--6.476,-6.439,-6.372,-6.273,-6.144,-5.987,-5.807,-5.611,-5.404,-5.196,-4.991,-4.793,-4.607,-4.431,-4.264,-4.104,
--3.947,-3.793,-3.642,-3.497,-3.364,-3.251,-3.168,-3.127,-3.136,-3.205,-3.338,-3.537,-3.801,-4.125,-4.502,-4.921,
--5.373,-5.844,-6.324,-6.801,-7.267,-7.712,-8.132,-8.523,-8.884,-9.217,-9.526,-9.815,-10.091,-10.357,-10.618,-10.874,
--11.124,-11.364,-11.587,-11.786,-11.956,-12.093,-12.195,-12.267,-12.315,-12.352,-12.391,-12.443,-12.521,-12.632,-12.778,-12.959,
--13.165,-13.388,-13.613,-13.828,-14.024,-14.193,-14.333,-14.447,-14.539,-14.619,-14.697,-14.781,-14.878,-14.992,-15.123,-15.269,
--15.423,-15.581,-15.734,-15.878,-16.010,-16.129,-16.237,-16.335,-16.429,-16.523,-16.619,-16.718,-16.819,-16.920,-17.015,-17.100,
--17.170,-17.224,-17.263,-17.291,-17.315,-17.348,-17.403,-17.494,-17.635,-17.839,-18.112,-18.459,-18.877,-19.358,-19.889,-20.454,
--21.034,-21.608,-22.157,-22.664,-23.116,-23.503,-23.822,-24.074,-24.263,-24.397,-24.487,-24.544,-24.578,-24.598,-24.612,-24.624,
--24.637,-24.652,-24.670,-24.692,-24.720,-24.756,-24.804,-24.867,-24.948,-25.049,-25.168,-25.302,-25.443,-25.582,-25.709,-25.811,
--25.878,-25.905,-25.886,-25.822,-25.716,-25.575,-25.406,-25.218,-25.017,-24.810,-24.598,-24.385,-24.172,-23.959,-23.750,-23.547,
--23.354,-23.177,-23.018,-22.878,-22.754,-22.639,-22.524,-22.393,-22.232,-22.030,-21.777,-21.473,-21.124,-20.746,-20.360,-19.993,
--19.674,-19.430,-19.279,-19.232,-19.291,-19.446,-19.677,-19.959,-20.263,-20.562,-20.829,-21.047,-21.205,-21.298,-21.332,-21.312,
--21.251,-21.160,-21.050,-20.928,-20.799,-20.667,-20.532,-20.392,-20.245,-20.091,-19.928,-19.757,-19.578,-19.395,-19.209,-19.022,
--18.838,-18.657,-18.482,-18.313,-18.148,-17.988,-17.831,-17.672,-17.510,-17.340,-17.158,-16.961,-16.747,-16.516,-16.267,-16.004,
--15.728,-15.445,-15.157,-14.869,-14.581,-14.295,-14.009,-13.721,-13.427,-13.125,-12.809,-12.476,-12.124,-11.751,-11.353,-10.931,
--10.484,-10.012,-9.515,-8.996,-8.458,-7.905,-7.343,-6.777,-6.214,-5.660,-5.118,-4.593,-4.083,-3.588,-3.103,-2.624,
--2.148,-1.670,-1.191,-.712,-.239,.220,.655,1.056,1.414,1.719,1.968,2.160,2.300,2.396,2.463,2.517,
-2.579,2.667,2.802,2.998,3.268,3.618,4.046,4.546,5.104,5.704,6.326,6.950,7.560,8.144,8.694,9.211,
-9.700,10.171,10.635,11.105,11.589,12.090,12.610,13.141,13.675,14.203,14.713,15.199,15.661,16.100,16.526,16.951,
-17.389,17.853,18.353,18.895,19.477,20.095,20.735,21.385,22.026,22.643,23.221,23.752,24.228,24.647,25.012,25.327,
-25.599,25.837,26.051,26.249,26.442,26.636,26.839,27.056,27.288,27.534,27.789,28.043,28.285,28.501,28.673,28.789,
-28.837,28.811,28.712,28.548,28.336,28.099,27.862,27.656,27.509,27.446,27.483,27.631,27.890,28.253,28.706,29.227,
-29.794,30.385,30.978,31.556,32.108,32.627,33.111,33.564,33.988,34.389,34.774,35.147,35.510,35.864,36.208,36.542,
-36.862,37.167,37.455,37.726,37.981,38.220,38.448,38.667,38.881,39.092,39.305,39.521,39.743,39.972,40.209,40.454,
-40.710,40.977,41.257,41.552,41.863,42.192,42.539,42.903,43.282,43.671,44.065,44.458,44.846,45.223,45.586,45.934,
-46.268,46.588,46.899,47.202,47.498,47.790,48.075,48.354,48.625,48.890,49.151,49.413,49.681,49.962,50.261,50.579,
-50.912,51.252,51.586,51.896,52.165,52.379,52.533,52.627,52.676,52.701,52.730,52.791,52.908,53.094,53.350,53.656,
-53.985,54.295,54.544,54.698,54.734,54.648,54.458,54.201,53.925,53.683,53.521,53.470,53.539,53.711,53.948,54.198,
-54.403,54.511,54.488,54.325,54.037,53.666,53.271,52.917,52.664,52.557,52.616,52.837,53.191,53.633,54.110,54.569,
-54.973,55.299,55.544,55.724,55.864,55.992,56.132,56.298,56.486,56.682,56.860,56.992,57.054,57.031,56.923,56.747,
-56.532,56.314,56.132,56.018,55.992,56.059,56.210,56.420,56.659,56.896,57.101,57.255,57.349,57.388,57.384,57.354,
-57.319,57.295,57.295,57.322,57.373,57.437,57.503,57.556,57.582,57.572,57.521,57.428,57.299,57.140,56.963,56.778,
-56.598,56.431,56.288,56.171,56.082,56.018,55.970,55.928,55.880,55.812,55.714,55.577,55.402,55.190,54.953,54.703,
-54.457,54.229,54.031,53.870,53.747,53.657,53.590,53.533,53.474,53.402,53.311,53.199,53.068,52.922,52.769,52.613,
-52.457,52.301,52.142,51.976,51.798,51.603,51.391,51.164,50.929,50.693,50.464,50.250,50.053,49.582,49.407,49.243,
-49.084,48.917,48.735,48.531,48.302,48.050,47.784,47.512,47.245,46.993,46.764,46.558,46.375,46.210,46.054,45.898,
-45.737,45.566,45.384,45.193,45.000,44.811,44.632,44.468,44.320,44.186,44.061,43.940,43.814,43.680,43.531,43.369,
-43.193,43.008,42.819,42.630,42.444,42.263,42.085,41.907,41.724,41.533,41.331,41.118,40.896,40.669,40.446,40.234,
-40.038,39.863,39.709,39.574,39.448,39.322,39.184,39.021,38.823,38.582,38.294,37.958,37.577,37.158,36.707,36.232,
-35.740,35.238,34.730,34.218,33.707,33.197,32.692,32.194,31.711,31.246,30.809,30.407,30.045,29.730,29.463,29.242,
-29.062,28.913,28.781,28.649,28.502,28.322,28.098,27.820,27.488,27.105,26.681,26.233,25.776,25.330,24.910,24.527,
-24.189,23.897,23.645,23.426,23.231,23.050,22.876,22.706,22.536,22.368,22.203,22.041,21.881,21.717,21.541,21.345,
-21.117,20.848,20.534,20.174,19.774,19.344,18.900,18.457,18.033,17.641,17.291,16.986,16.727,16.509,16.327,16.171,
-16.037,15.917,15.809,15.709,15.616,15.527,15.438,15.345,15.241,15.120,14.976,14.806,14.607,14.381,14.131,13.862,
-13.579,13.287,12.990,12.688,12.383,12.074,11.760,11.444,11.127,10.815,10.516,10.237,9.986,9.768,9.586,9.439,
-9.323,9.230,9.151,9.078,9.003,8.921,8.829,8.729,8.621,8.511,8.400,8.291,8.184,8.077,7.966,7.846,
-7.715,7.566,7.398,7.208,6.997,6.764,6.511,6.239,5.952,5.653,5.346,5.036,4.730,4.435,4.158,3.905,
-3.680,3.486,3.320,3.179,3.055,2.940,2.825,2.704,2.572,2.426,2.270,2.105,1.939,1.774,1.615,1.464,
-1.318,1.174,1.027,.873,.709,.533,.347,.158,-.027,-.200,-.353,-.481,-.582,-.657,-.714,-.761,
--.809,-.869,-.950,-1.061,-1.203,-1.376,-1.578,-1.801,-2.039,-2.286,-2.538,-2.793,-3.050,-3.314,-3.588,-3.878,
--4.187,-4.515,-4.862,-5.220,-5.581,-5.932,-6.261,-6.555,-6.805,-7.004,-7.150,-7.247,-7.303,-7.328,-7.335,-7.336,
--7.341,-7.357,-7.388,-7.434,-7.492,-7.558,-7.628,-7.698,-7.768,-7.837,-7.906,-7.979,-8.056,-8.140,-8.230,-8.325,
--8.422,-8.518,-8.611,-8.700,-8.786,-8.873,-8.963,-9.059,-9.165,-9.281,-9.404,-9.529,-9.649,-9.757,-9.845,-9.909,
--9.945,-9.955,-9.944,-9.917,-9.882,-9.846,-9.813,-9.787,-9.769,-9.757,-9.748,-9.741,-9.734,-9.728,-9.725,-9.731,
--9.752,-9.793,-9.857,-9.948,-10.065,-10.205,-10.363,-10.533,-10.709,-10.886,-11.060,-11.230,-11.395,-11.559,-11.722,-11.887,
--12.054,-12.224,-12.394,-12.563,-12.725,-12.879,-13.020,-13.147,-13.259,-13.357,-13.442,-13.517,-13.585,-13.649,-13.712,-13.776,
--13.842,-13.910,-13.978,-14.046,-14.111,-14.171,-14.223,-14.267,-14.301,-14.326,-14.341,-14.348,-14.348,-14.340,-14.326,-14.305,
--14.277,-14.243,-14.204,-14.164,-14.124,-14.092,-14.073,-14.073,-14.097,-14.147,-14.222,-14.319,-14.431,-14.549,-14.661,-14.759,
--14.836,-14.887,-14.914,-14.920,-14.912,-14.898,-14.884,-14.875,-14.872,-14.869,-14.862,-14.840,-14.798,-14.727,-14.629,-14.505,
--14.364,-14.217,-14.076,-13.950,-13.846,-13.764,-13.698,-13.639,-13.574,-13.489,-13.375,-13.228,-13.051,-12.852,-12.650,-12.461,
--12.305,-12.198,-12.149,-12.159,-12.223,-12.328,-12.457,-12.590,-12.708,-12.795,-12.842,-12.842,-12.794,-12.702,-12.569,-12.401,
--12.205,-11.985,-11.745,-11.488,-11.218,-10.939,-10.655,-10.371,-10.092,-9.825,-9.573,-9.342,-9.135,-8.955,-8.807,-8.691,
--8.612,-8.572,-8.573,-8.614,-8.696,-8.813,-8.960,-9.129,-9.310,-9.494,-9.673,-9.841,-9.994,-10.129,-10.247,-10.348,
--10.434,-10.505,-10.559,-10.595,-10.610,-10.601,-10.566,-10.507,-10.426,-10.330,-10.225,-10.120,-10.020,-9.931,-9.854,-9.788,
--9.727,-9.666,-9.597,-9.513,-9.410,-9.285,-9.141,-8.979,-8.805,-8.625,-8.445,-8.269,-8.101,-7.943,-7.798,-7.665,
--7.545,-7.437,-7.343,-7.263,-7.195,-7.142,-7.101,-7.073,-7.056,-7.052,-7.059,-7.079,-7.113,-7.162,-7.227,-7.309,
--7.407,-7.519,-7.641,-7.769,-7.897,-8.021,-8.135,-8.234,-8.314,-8.373,-8.407,-8.414,-8.392,-8.338,-8.252,-8.133,
--7.983,-7.805,-7.605,-7.392,-7.174,-6.960,-6.759,-6.577,-6.416,-6.275,-6.150,-6.033,-5.917,-5.794,-5.656,-5.501,
--5.329,-5.143,-4.949,-4.754,-4.566,-4.392,-4.234,-4.096,-3.974,-3.866,-3.768,-3.676,-3.584,-3.491,-3.397,-3.301,
--3.204,-3.108,-3.014,-2.920,-2.827,-2.732,-2.634,-2.531,-2.423,-2.309,-2.193,-2.076,-1.963,-1.856,-1.758,-1.671,
--1.593,-1.523,-1.461,-1.402,-1.346,-1.292,-1.239,-1.188,-1.141,-1.098,-1.059,-1.022,-.984,-.938,-.879,-.801,
--.697,-.567,-.409,-.230,-.034,.166,.362,.543,.700,.829,.930,1.006,1.063,1.110,1.157,1.211,
-1.275,1.351,1.434,1.519,1.596,1.656,1.690,1.694,1.668,1.615,1.545,1.469,1.399,1.345,1.318,1.321,
-1.353,1.410,1.482,1.558,1.628,1.683,1.717,1.729,1.722,1.704,1.681,1.663,1.659,1.672,1.704,1.754,
-1.817,1.886,1.954,2.015,2.064,2.100,2.123,2.136,2.143,2.149,2.161,2.181,2.214,2.261,2.323,2.401,
-2.494,2.601,2.719,2.848,2.984,3.122,3.259,3.388,3.504,3.600,3.671,3.715,3.730,3.717,3.681,3.626,
-3.562,3.494,3.430,3.376,3.335,3.308,3.297,3.298,3.308,3.326,3.346,3.369,3.392,3.415,3.439,3.464,
-3.490,3.518,3.544,3.567,3.583,3.589,3.582,3.559,3.520,3.465,3.396,3.317,3.232,3.146,3.062,2.984,
-2.913,2.851,2.797,2.750,2.708,2.671,2.636,2.605,2.575,2.548,2.524,2.503,2.484,2.466,2.447,2.427,
-2.405,2.379,2.350,2.319,2.287,2.258,2.234,2.216,2.206,2.206,2.214,2.229,2.248,2.269,2.288,2.302,
-2.305,2.295,2.268,2.222,2.155,2.066,1.955,1.824,1.678,1.521,1.361,1.204,1.059,.932,.830,.756,
-.711,.695,.704,.734,.777,.828,.882,.936,.988,1.038,1.087,1.136,1.189,1.245,1.304,1.364,
-1.423,1.474,1.514,1.539,1.545,1.531,1.496,1.444,1.377,1.298,1.213,1.123,1.031,.938,.843,.746,
-.645,.542,.436,.329,.226,.131,.046,-.024,-.078,-.116,-.139,-.153,-.161,-.170,-.186,-.211,
--.250,-.302,-.367,-.442,-.524,-.608,-.691,-.770,-.843,-.908,-.963,-1.010,-1.047,-1.075,-1.095,-1.106,
--1.111,-1.112,-1.110,-1.108,-1.109,-1.115,-1.126,-1.144,-1.167,-1.193,-1.220,-1.246,-1.269,-1.290,-1.309,-1.331,
--1.357,-1.394,-1.443,-1.508,-1.588,-1.680,-1.781,-1.886,-1.988,-2.082,-2.165,-2.236,-2.297,-2.350,-2.401,-2.456,
--2.520,-2.596,-2.684,-2.783,-2.889,-2.997,-3.099,-3.190,-3.266,-3.321,-3.355,-3.367,-3.356,-3.323,-3.267,-3.187,
--3.081,-2.948,-2.787,-2.600,-2.392,-2.168,-1.939,-1.720,-1.523,-1.364,-1.256,-1.210,-1.232,-1.323,-1.481,-1.698,
--1.964,-2.264,-2.586,-2.916,-3.243,-3.555,-3.847,-4.115,-4.356,-4.571,-4.763,-4.933,-5.083,-5.216,-5.331,-5.429,
--5.507,-5.561,-5.589,-5.586,-5.550,-5.478,-5.371,-5.230,-5.060,-4.865,-4.652,-4.427,-4.198,-3.969,-3.747,-3.535,
--3.339,-3.163,-3.014,-2.896,-2.818,-2.788,-2.812,-2.896,-3.043,-3.253,-3.524,-3.848,-4.216,-4.617,-5.037,-5.467,
--5.894,-6.309,-6.708,-7.084,-7.436,-7.763,-8.066,-8.348,-8.612,-8.862,-9.104,-9.343,-9.584,-9.831,-10.087,-10.352,
--10.622,-10.891,-11.153,-11.400,-11.623,-11.818,-11.985,-12.127,-12.252,-12.372,-12.498,-12.644,-12.819,-13.027,-13.266,-13.530,
--13.805,-14.075,-14.324,-14.539,-14.709,-14.830,-14.906,-14.946,-14.964,-14.975,-14.995,-15.038,-15.111,-15.219,-15.360,-15.527,
--15.711,-15.899,-16.083,-16.253,-16.403,-16.533,-16.644,-16.740,-16.825,-16.907,-16.990,-17.077,-17.169,-17.265,-17.360,-17.451,
--17.532,-17.599,-17.651,-17.687,-17.712,-17.732,-17.760,-17.806,-17.885,-18.010,-18.194,-18.447,-18.773,-19.174,-19.644,-20.174,
--20.749,-21.352,-21.962,-22.559,-23.122,-23.636,-24.086,-24.464,-24.768,-25.000,-25.167,-25.278,-25.346,-25.383,-25.401,-25.408,
--25.412,-25.416,-25.422,-25.432,-25.444,-25.461,-25.484,-25.518,-25.566,-25.635,-25.726,-25.840,-25.976,-26.126,-26.280,-26.425,
--26.546,-26.629,-26.665,-26.647,-26.575,-26.452,-26.289,-26.098,-25.891,-25.681,-25.479,-25.291,-25.119,-24.963,-24.821,-24.689,
--24.563,-24.443,-24.325,-24.210,-24.097,-23.983,-23.866,-23.737,-23.589,-23.412,-23.196,-22.936,-22.631,-22.286,-21.913,-21.531,
--21.163,-20.834,-20.569,-20.386,-20.300,-20.313,-20.422,-20.612,-20.863,-21.150,-21.448,-21.734,-21.989,-22.199,-22.356,-22.460,
--22.514,-22.524,-22.497,-22.442,-22.365,-22.273,-22.168,-22.053,-21.929,-21.798,-21.659,-21.514,-21.362,-21.203,-21.038,-20.866,
--20.686,-20.499,-20.304,-20.102,-19.895,-19.684,-19.473,-19.262,-19.056,-18.853,-18.654,-18.458,-18.261,-18.062,-17.856,-17.641,
--17.416,-17.179,-16.932,-16.677,-16.415,-16.149,-15.882,-15.614,-15.346,-15.078,-14.805,-14.525,-14.233,-13.923,-13.588,-13.225,
--12.827,-12.390,-11.913,-11.397,-10.844,-10.258,-9.648,-9.021,-8.386,-7.749,-7.116,-6.491,-5.874,-5.263,-4.658,-4.056,
--3.457,-2.861,-2.274,-1.702,-1.153,-.637,-.161,.269,.651,.986,1.279,1.537,1.768,1.979,2.179,2.371,
-2.558,2.742,2.925,3.109,3.298,3.498,3.715,3.959,4.235,4.550,4.905,5.299,5.728,6.186,6.664,7.158,
-7.662,8.177,8.704,9.246,9.810,10.398,11.010,11.643,12.290,12.939,13.579,14.197,14.785,15.338,15.859,16.354,
-16.836,17.320,17.820,18.349,18.914,19.515,20.148,20.800,21.457,22.100,22.711,23.275,23.782,24.226,24.606,24.928,
-25.199,25.430,25.634,25.824,26.010,26.202,26.407,26.629,26.869,27.126,27.395,27.669,27.936,28.183,28.397,28.564,
-28.670,28.706,28.667,28.554,28.374,28.142,27.879,27.610,27.364,27.169,27.050,27.028,27.117,27.322,27.638,28.056,
-28.558,29.123,29.727,30.349,30.969,31.572,32.147,32.690,33.197,33.670,34.114,34.532,34.929,35.310,35.677,36.033,
-36.381,36.720,37.051,37.374,37.687,37.990,38.281,38.558,38.821,39.070,39.306,39.531,39.750,39.967,40.188,40.418,
-40.662,40.923,41.202,41.500,41.815,42.146,42.488,42.840,43.198,43.560,43.925,44.291,44.656,45.021,45.383,45.742,
-46.098,46.449,46.794,47.134,47.467,47.794,48.115,48.428,48.733,49.032,49.325,49.614,49.903,50.197,50.500,50.816,
-51.147,51.490,51.841,52.189,52.520,52.822,53.082,53.291,53.446,53.554,53.628,53.686,53.749,53.834,53.953,54.106,
-54.283,54.461,54.613,54.706,54.715,54.625,54.438,54.171,53.861,53.552,53.295,53.131,53.088,53.173,53.370,53.640,
-53.932,54.187,54.352,54.393,54.295,54.071,53.760,53.413,53.094,52.859,52.752,52.795,52.984,53.296,53.689,54.118,
-54.538,54.916,55.236,55.498,55.718,55.918,56.123,56.349,56.599,56.863,57.118,57.334,57.481,57.537,57.494,57.361,
-57.162,56.935,56.723,56.569,56.501,56.535,56.669,56.884,57.146,57.418,57.662,57.850,57.965,58.003,57.976,57.904,
-57.811,57.722,57.656,57.626,57.632,57.668,57.720,57.772,57.807,57.810,57.773,57.692,57.568,57.408,57.223,57.026,
-56.830,56.648,56.490,56.365,56.276,56.220,56.190,56.174,56.156,56.115,56.036,55.902,55.706,55.446,55.130,54.775,
-54.403,54.039,53.707,53.427,53.211,53.062,52.974,52.933,52.922,52.921,52.911,52.880,52.819,52.727,52.608,52.466,
-52.308,52.140,51.965,51.783,51.591,51.388,51.171,50.941,50.701,50.457,50.217,49.988,49.775,49.582,49.247,49.077,
-48.914,48.753,48.586,48.408,48.215,48.007,47.785,47.556,47.326,47.100,46.886,46.686,46.500,46.328,46.164,46.006,
-45.848,45.688,45.525,45.360,45.195,45.033,44.877,44.729,44.589,44.455,44.322,44.187,44.045,43.890,43.721,43.537,
-43.339,43.131,42.915,42.697,42.479,42.264,42.053,41.845,41.638,41.430,41.219,41.005,40.789,40.575,40.366,40.167,
-39.985,39.823,39.681,39.558,39.449,39.346,39.238,39.114,38.961,38.770,38.533,38.245,37.908,37.524,37.099,36.642,
-36.162,35.669,35.169,34.670,34.175,33.687,33.207,32.735,32.272,31.820,31.383,30.967,30.578,30.224,29.913,29.649,
-29.433,29.261,29.124,29.007,28.890,28.753,28.573,28.334,28.026,27.645,27.199,26.704,26.183,25.664,25.175,24.739,
-24.373,24.083,23.866,23.710,23.597,23.506,23.417,23.313,23.186,23.034,22.859,22.669,22.474,22.280,22.089,21.899,
-21.701,21.485,21.236,20.946,20.607,20.221,19.794,19.339,18.872,18.411,17.972,17.567,17.204,16.884,16.605,16.364,
-16.154,15.971,15.811,15.672,15.552,15.451,15.365,15.287,15.211,15.126,15.023,14.892,14.728,14.528,14.297,14.040,
-13.766,13.486,13.206,12.931,12.664,12.400,12.136,11.864,11.582,11.288,10.986,10.683,10.390,10.120,9.883,9.688,
-9.536,9.426,9.348,9.291,9.241,9.185,9.113,9.019,8.901,8.765,8.615,8.461,8.307,8.160,8.021,7.888,
-7.757,7.621,7.473,7.307,7.120,6.908,6.673,6.418,6.145,5.861,5.570,5.278,4.990,4.710,4.443,4.193,
-3.964,3.757,3.573,3.413,3.273,3.151,3.041,2.937,2.834,2.727,2.611,2.483,2.341,2.184,2.010,1.820,
-1.612,1.388,1.146,.890,.622,.347,.072,-.195,-.444,-.665,-.852,-.997,-1.098,-1.155,-1.173,-1.158,
--1.121,-1.072,-1.026,-.993,-.984,-1.008,-1.070,-1.175,-1.323,-1.513,-1.741,-2.003,-2.292,-2.605,-2.937,-3.284,
--3.643,-4.014,-4.394,-4.780,-5.170,-5.556,-5.929,-6.282,-6.601,-6.878,-7.105,-7.278,-7.396,-7.467,-7.498,-7.503,
--7.496,-7.489,-7.493,-7.513,-7.553,-7.611,-7.680,-7.757,-7.834,-7.909,-7.981,-8.049,-8.117,-8.189,-8.268,-8.356,
--8.451,-8.552,-8.654,-8.754,-8.848,-8.935,-9.015,-9.092,-9.169,-9.250,-9.338,-9.431,-9.528,-9.623,-9.710,-9.781,
--9.831,-9.857,-9.860,-9.844,-9.816,-9.784,-9.758,-9.744,-9.746,-9.765,-9.799,-9.843,-9.892,-9.941,-9.988,-10.032,
--10.074,-10.120,-10.173,-10.239,-10.323,-10.426,-10.550,-10.692,-10.850,-11.020,-11.198,-11.380,-11.564,-11.749,-11.934,-12.118,
--12.300,-12.481,-12.658,-12.830,-12.995,-13.149,-13.292,-13.420,-13.532,-13.629,-13.709,-13.774,-13.826,-13.867,-13.899,-13.927,
--13.952,-13.980,-14.011,-14.047,-14.088,-14.134,-14.180,-14.225,-14.263,-14.292,-14.308,-14.310,-14.298,-14.274,-14.241,-14.203,
--14.162,-14.122,-14.085,-14.051,-14.022,-13.995,-13.972,-13.953,-13.939,-13.931,-13.932,-13.941,-13.959,-13.986,-14.017,-14.050,
--14.082,-14.109,-14.131,-14.149,-14.167,-14.190,-14.222,-14.269,-14.330,-14.404,-14.484,-14.560,-14.620,-14.652,-14.649,-14.604,
--14.521,-14.406,-14.273,-14.136,-14.011,-13.909,-13.837,-13.795,-13.775,-13.767,-13.755,-13.726,-13.670,-13.582,-13.466,-13.330,
--13.190,-13.062,-12.961,-12.898,-12.878,-12.898,-12.949,-13.018,-13.088,-13.141,-13.165,-13.150,-13.092,-12.992,-12.854,-12.687,
--12.498,-12.293,-12.079,-11.858,-11.632,-11.400,-11.161,-10.914,-10.660,-10.398,-10.130,-9.861,-9.595,-9.340,-9.103,-8.894,
--8.722,-8.596,-8.525,-8.513,-8.562,-8.667,-8.822,-9.014,-9.230,-9.453,-9.669,-9.869,-10.045,-10.196,-10.323,-10.431,
--10.528,-10.617,-10.702,-10.783,-10.854,-10.911,-10.944,-10.949,-10.922,-10.861,-10.771,-10.660,-10.536,-10.410,-10.288,-10.176,
--10.075,-9.982,-9.892,-9.798,-9.692,-9.569,-9.425,-9.260,-9.077,-8.882,-8.680,-8.480,-8.288,-8.111,-7.953,-7.817,
--7.705,-7.617,-7.553,-7.511,-7.489,-7.483,-7.491,-7.508,-7.531,-7.560,-7.593,-7.631,-7.675,-7.728,-7.793,-7.871,
--7.963,-8.067,-8.181,-8.300,-8.420,-8.535,-8.639,-8.729,-8.801,-8.851,-8.876,-8.872,-8.835,-8.761,-8.645,-8.487,
--8.285,-8.045,-7.774,-7.485,-7.193,-6.914,-6.664,-6.453,-6.288,-6.169,-6.088,-6.033,-5.987,-5.932,-5.855,-5.743,
--5.593,-5.405,-5.187,-4.950,-4.709,-4.475,-4.258,-4.066,-3.900,-3.757,-3.632,-3.520,-3.413,-3.309,-3.204,-3.098,
--2.993,-2.893,-2.798,-2.709,-2.627,-2.549,-2.472,-2.391,-2.306,-2.214,-2.116,-2.015,-1.914,-1.819,-1.732,-1.656,
--1.592,-1.537,-1.489,-1.444,-1.397,-1.346,-1.289,-1.227,-1.163,-1.098,-1.037,-.981,-.930,-.881,-.828,-.766,
--.686,-.582,-.448,-.285,-.095,.114,.334,.550,.752,.928,1.072,1.181,1.257,1.307,1.339,1.363,
-1.391,1.430,1.484,1.551,1.629,1.708,1.781,1.836,1.868,1.873,1.851,1.808,1.753,1.698,1.652,1.627,
-1.628,1.656,1.710,1.780,1.858,1.932,1.990,2.027,2.038,2.025,1.992,1.950,1.907,1.875,1.861,1.871,
-1.905,1.962,2.036,2.118,2.201,2.276,2.338,2.384,2.414,2.430,2.438,2.444,2.455,2.477,2.514,2.570,
-2.646,2.741,2.853,2.978,3.110,3.245,3.377,3.502,3.615,3.713,3.796,3.862,3.912,3.946,3.966,3.971,
-3.963,3.943,3.910,3.867,3.814,3.754,3.692,3.631,3.577,3.535,3.510,3.504,3.519,3.554,3.605,3.665,
-3.729,3.788,3.837,3.868,3.878,3.867,3.834,3.784,3.719,3.647,3.570,3.496,3.426,3.365,3.311,3.265,
-3.226,3.190,3.156,3.121,3.082,3.039,2.991,2.937,2.879,2.817,2.753,2.690,2.628,2.569,2.515,2.467,
-2.425,2.391,2.363,2.341,2.324,2.312,2.301,2.291,2.281,2.270,2.258,2.244,2.232,2.223,2.217,2.217,
-2.222,2.230,2.236,2.236,2.223,2.188,2.127,2.033,1.907,1.750,1.567,1.370,1.168,.976,.805,.665,
-.565,.506,.488,.507,.555,.625,.706,.792,.877,.955,1.026,1.088,1.143,1.190,1.231,1.265,
-1.293,1.312,1.322,1.322,1.311,1.292,1.264,1.232,1.197,1.161,1.126,1.092,1.057,1.019,.974,.920,
-.854,.774,.682,.581,.476,.371,.273,.187,.116,.059,.015,-.022,-.057,-.097,-.149,-.217,
--.301,-.401,-.511,-.623,-.731,-.825,-.900,-.951,-.978,-.984,-.972,-.950,-.925,-.903,-.891,-.892,
--.908,-.939,-.982,-1.035,-1.094,-1.155,-1.213,-1.266,-1.309,-1.339,-1.354,-1.353,-1.334,-1.299,-1.251,-1.194,
--1.135,-1.079,-1.035,-1.007,-1.002,-1.020,-1.062,-1.126,-1.207,-1.299,-1.397,-1.497,-1.594,-1.687,-1.778,-1.867,
--1.957,-2.051,-2.149,-2.252,-2.358,-2.461,-2.559,-2.644,-2.714,-2.764,-2.793,-2.803,-2.796,-2.776,-2.746,-2.711,
--2.672,-2.629,-2.583,-2.528,-2.464,-2.386,-2.292,-2.182,-2.060,-1.930,-1.798,-1.674,-1.567,-1.486,-1.439,-1.432,
--1.469,-1.550,-1.674,-1.837,-2.031,-2.248,-2.480,-2.719,-2.954,-3.180,-3.392,-3.585,-3.760,-3.915,-4.054,-4.179,
--4.291,-4.391,-4.479,-4.552,-4.609,-4.643,-4.652,-4.630,-4.576,-4.488,-4.368,-4.220,-4.049,-3.863,-3.670,-3.479,
--3.299,-3.142,-3.017,-2.934,-2.902,-2.930,-3.022,-3.183,-3.409,-3.698,-4.038,-4.417,-4.821,-5.234,-5.641,-6.030,
--6.392,-6.723,-7.022,-7.292,-7.538,-7.766,-7.982,-8.189,-8.391,-8.592,-8.792,-8.993,-9.196,-9.404,-9.619,-9.840,
--10.069,-10.302,-10.537,-10.767,-10.988,-11.196,-11.389,-11.568,-11.739,-11.910,-12.091,-12.294,-12.525,-12.786,-13.076,-13.385,
--13.699,-14.000,-14.270,-14.495,-14.664,-14.776,-14.836,-14.858,-14.859,-14.861,-14.884,-14.942,-15.046,-15.200,-15.397,-15.629,
--15.882,-16.141,-16.391,-16.621,-16.824,-16.996,-17.139,-17.258,-17.356,-17.442,-17.520,-17.594,-17.667,-17.738,-17.808,-17.874,
--17.933,-17.984,-18.026,-18.060,-18.087,-18.112,-18.142,-18.185,-18.250,-18.347,-18.488,-18.681,-18.934,-19.252,-19.637,-20.086,
--20.593,-21.147,-21.735,-22.340,-22.943,-23.527,-24.075,-24.571,-25.006,-25.372,-25.668,-25.895,-26.059,-26.171,-26.239,-26.276,
--26.291,-26.293,-26.289,-26.283,-26.280,-26.282,-26.292,-26.314,-26.350,-26.405,-26.481,-26.581,-26.702,-26.842,-26.990,-27.137,
--27.268,-27.369,-27.427,-27.434,-27.385,-27.281,-27.130,-26.944,-26.739,-26.531,-26.334,-26.160,-26.015,-25.902,-25.816,-25.753,
--25.703,-25.657,-25.610,-25.554,-25.487,-25.406,-25.310,-25.199,-25.069,-24.916,-24.737,-24.525,-24.278,-23.996,-23.682,-23.345,
--22.998,-22.660,-22.350,-22.086,-21.887,-21.765,-21.726,-21.768,-21.884,-22.061,-22.280,-22.524,-22.774,-23.013,-23.227,-23.410,
--23.554,-23.660,-23.729,-23.764,-23.770,-23.749,-23.707,-23.647,-23.572,-23.485,-23.389,-23.284,-23.171,-23.050,-22.919,-22.777,
--22.619,-22.443,-22.246,-22.028,-21.788,-21.530,-21.258,-20.979,-20.700,-20.428,-20.169,-19.926,-19.701,-19.493,-19.298,-19.112,
--18.929,-18.744,-18.553,-18.353,-18.142,-17.920,-17.688,-17.448,-17.202,-16.952,-16.697,-16.439,-16.174,-15.899,-15.610,-15.300,
--14.962,-14.591,-14.179,-13.725,-13.226,-12.683,-12.102,-11.489,-10.851,-10.197,-9.533,-8.864,-8.192,-7.518,-6.839,-6.155,
--5.465,-4.774,-4.087,-3.414,-2.770,-2.165,-1.612,-1.118,-.683,-.302,.037,.350,.652,.960,1.284,1.627,
-1.985,2.349,2.704,3.035,3.330,3.581,3.786,3.954,4.097,4.231,4.374,4.541,4.745,4.991,5.282,5.616,
-5.989,6.399,6.845,7.329,7.855,8.426,9.046,9.714,10.426,11.170,11.934,12.699,13.449,14.170,14.853,15.495,
-16.101,16.682,17.249,17.818,18.399,19.000,19.621,20.256,20.895,21.521,22.120,22.675,23.175,23.615,23.994,24.316,
-24.593,24.835,25.058,25.274,25.495,25.727,25.976,26.242,26.522,26.810,27.099,27.380,27.644,27.881,28.083,28.241,
-28.349,28.400,28.393,28.325,28.201,28.026,27.813,27.577,27.338,27.117,26.939,26.826,26.796,26.865,27.039,27.319,
-27.697,28.161,28.691,29.268,29.871,30.481,31.083,31.666,32.225,32.757,33.263,33.745,34.208,34.653,35.084,35.501,
-35.907,36.301,36.683,37.054,37.412,37.758,38.089,38.405,38.704,38.985,39.246,39.490,39.721,39.942,40.163,40.389,
-40.630,40.891,41.175,41.482,41.810,42.152,42.502,42.852,43.197,43.533,43.859,44.178,44.493,44.809,45.131,45.462,
-45.803,46.154,46.511,46.871,47.230,47.585,47.935,48.278,48.617,48.952,49.285,49.619,49.953,50.289,50.627,50.967,
-51.309,51.654,52.001,52.349,52.694,53.033,53.358,53.663,53.940,54.185,54.394,54.570,54.717,54.842,54.953,55.057,
-55.152,55.235,55.293,55.309,55.264,55.144,54.939,54.654,54.305,53.924,53.550,53.229,53.004,52.904,52.944,53.117,
-53.397,53.740,54.094,54.407,54.635,54.752,54.752,54.651,54.481,54.285,54.106,53.981,53.934,53.971,54.085,54.255,
-54.458,54.671,54.880,55.083,55.289,55.514,55.775,56.086,56.449,56.853,57.271,57.666,57.999,58.234,58.346,58.330,
-58.197,57.981,57.725,57.479,57.290,57.190,57.197,57.308,57.503,57.750,58.009,58.244,58.424,58.535,58.572,58.546,
-58.474,58.380,58.285,58.206,58.152,58.123,58.114,58.113,58.106,58.080,58.023,57.930,57.797,57.626,57.424,57.200,
-56.965,56.731,56.513,56.323,56.169,56.058,55.988,55.952,55.936,55.920,55.880,55.795,55.644,55.416,55.108,54.732,
-54.307,53.863,53.431,53.043,52.725,52.491,52.346,52.281,52.279,52.314,52.362,52.396,52.400,52.362,52.281,52.159,
-52.005,51.830,51.644,51.452,51.259,51.065,50.868,50.667,50.460,50.248,50.035,49.824,49.620,49.427,49.247,49.056,
-48.874,48.695,48.517,48.339,48.157,47.973,47.785,47.596,47.408,47.222,47.041,46.865,46.692,46.521,46.350,46.178,
-46.003,45.827,45.651,45.478,45.310,45.150,44.999,44.855,44.717,44.580,44.441,44.296,44.141,43.973,43.792,43.599,
-43.396,43.185,42.969,42.749,42.529,42.308,42.086,41.865,41.642,41.419,41.195,40.973,40.755,40.543,40.342,40.155,
-39.985,39.833,39.701,39.585,39.482,39.385,39.286,39.174,39.040,38.874,38.669,38.419,38.124,37.783,37.402,36.987,
-36.547,36.089,35.622,35.151,34.682,34.215,33.752,33.289,32.827,32.364,31.901,31.442,30.994,30.566,30.167,29.810,
-29.501,29.246,29.043,28.885,28.757,28.638,28.505,28.335,28.106,27.808,27.435,26.996,26.510,26.004,25.510,25.060,
-24.683,24.396,24.204,24.101,24.067,24.075,24.095,24.094,24.051,23.949,23.786,23.566,23.304,23.017,22.722,22.431,
-22.151,21.880,21.612,21.335,21.038,20.713,20.355,19.967,19.557,19.138,18.723,18.324,17.953,17.613,17.305,17.027,
-16.773,16.538,16.318,16.112,15.921,15.748,15.594,15.459,15.342,15.235,15.130,15.015,14.883,14.725,14.539,14.326,
-14.093,13.849,13.603,13.363,13.132,12.910,12.692,12.469,12.231,11.973,11.691,11.388,11.072,10.757,10.458,10.191,
-9.968,9.794,9.668,9.582,9.523,9.474,9.418,9.342,9.235,9.097,8.930,8.740,8.540,8.338,8.143,7.960,
-7.789,7.627,7.468,7.305,7.133,6.946,6.743,6.524,6.291,6.049,5.802,5.555,5.309,5.067,4.829,4.597,
-4.370,4.149,3.936,3.732,3.540,3.363,3.201,3.055,2.924,2.806,2.695,2.586,2.473,2.348,2.205,2.038,
-1.843,1.616,1.358,1.072,.762,.437,.105,-.222,-.533,-.818,-1.067,-1.275,-1.436,-1.549,-1.616,-1.638,
--1.622,-1.575,-1.505,-1.422,-1.339,-1.266,-1.216,-1.201,-1.232,-1.315,-1.454,-1.649,-1.895,-2.185,-2.507,-2.852,
--3.207,-3.566,-3.923,-4.276,-4.626,-4.973,-5.318,-5.658,-5.988,-6.302,-6.587,-6.835,-7.035,-7.185,-7.283,-7.337,
--7.358,-7.360,-7.360,-7.370,-7.402,-7.460,-7.544,-7.648,-7.764,-7.883,-7.998,-8.102,-8.196,-8.280,-8.359,-8.438,
--8.520,-8.609,-8.702,-8.798,-8.893,-8.984,-9.066,-9.141,-9.209,-9.274,-9.340,-9.410,-9.485,-9.564,-9.642,-9.715,
--9.775,-9.818,-9.841,-9.845,-9.833,-9.815,-9.798,-9.791,-9.802,-9.834,-9.887,-9.959,-10.044,-10.134,-10.223,-10.307,
--10.384,-10.456,-10.524,-10.596,-10.675,-10.767,-10.875,-10.999,-11.140,-11.293,-11.456,-11.625,-11.799,-11.974,-12.150,-12.325,
--12.501,-12.675,-12.847,-13.015,-13.177,-13.329,-13.470,-13.597,-13.708,-13.803,-13.881,-13.943,-13.991,-14.025,-14.049,-14.066,
--14.079,-14.092,-14.108,-14.131,-14.161,-14.199,-14.241,-14.284,-14.320,-14.344,-14.350,-14.332,-14.288,-14.221,-14.134,-14.035,
--13.933,-13.836,-13.751,-13.683,-13.632,-13.595,-13.566,-13.539,-13.506,-13.462,-13.403,-13.332,-13.252,-13.168,-13.090,-13.024,
--12.976,-12.953,-12.955,-12.983,-13.037,-13.114,-13.214,-13.333,-13.470,-13.620,-13.779,-13.940,-14.092,-14.228,-14.335,-14.407,
--14.438,-14.427,-14.381,-14.308,-14.223,-14.139,-14.071,-14.028,-14.015,-14.030,-14.065,-14.110,-14.152,-14.180,-14.185,-14.167,
--14.127,-14.074,-14.019,-13.971,-13.939,-13.927,-13.931,-13.945,-13.957,-13.953,-13.921,-13.851,-13.738,-13.583,-13.391,-13.172,
--12.939,-12.701,-12.470,-12.253,-12.052,-11.866,-11.691,-11.520,-11.347,-11.162,-10.960,-10.737,-10.490,-10.223,-9.941,-9.657,
--9.382,-9.135,-8.930,-8.785,-8.709,-8.710,-8.788,-8.934,-9.135,-9.371,-9.623,-9.870,-10.095,-10.290,-10.449,-10.574,
--10.673,-10.756,-10.830,-10.905,-10.981,-11.058,-11.129,-11.187,-11.223,-11.230,-11.206,-11.151,-11.070,-10.969,-10.857,-10.742,
--10.630,-10.521,-10.415,-10.309,-10.196,-10.071,-9.930,-9.770,-9.591,-9.396,-9.189,-8.978,-8.768,-8.569,-8.386,-8.227,
--8.095,-7.995,-7.928,-7.895,-7.894,-7.920,-7.968,-8.032,-8.105,-8.180,-8.253,-8.321,-8.385,-8.447,-8.509,-8.576,
--8.650,-8.732,-8.822,-8.916,-9.010,-9.098,-9.175,-9.237,-9.280,-9.301,-9.298,-9.267,-9.205,-9.106,-8.966,-8.781,
--8.548,-8.270,-7.953,-7.611,-7.260,-6.921,-6.614,-6.356,-6.160,-6.029,-5.957,-5.932,-5.933,-5.938,-5.923,-5.870,
--5.766,-5.609,-5.403,-5.159,-4.893,-4.622,-4.359,-4.117,-3.900,-3.709,-3.540,-3.386,-3.242,-3.102,-2.963,-2.826,
--2.692,-2.566,-2.450,-2.347,-2.256,-2.175,-2.100,-2.024,-1.945,-1.858,-1.764,-1.666,-1.569,-1.478,-1.400,-1.339,
--1.299,-1.278,-1.272,-1.275,-1.280,-1.278,-1.265,-1.238,-1.195,-1.140,-1.077,-1.009,-.942,-.877,-.814,-.748,
--.674,-.586,-.476,-.339,-.174,.019,.233,.460,.689,.908,1.106,1.275,1.409,1.509,1.577,1.621,
-1.649,1.671,1.697,1.732,1.780,1.839,1.907,1.976,2.039,2.087,2.116,2.122,2.106,2.073,2.029,1.983,
-1.945,1.922,1.919,1.937,1.974,2.023,2.078,2.131,2.173,2.199,2.208,2.201,2.183,2.160,2.140,2.131,
-2.139,2.166,2.212,2.277,2.353,2.436,2.518,2.594,2.658,2.709,2.748,2.775,2.796,2.816,2.842,2.878,
-2.929,2.997,3.083,3.184,3.296,3.414,3.532,3.643,3.744,3.830,3.902,3.959,4.004,4.040,4.069,4.093,
-4.110,4.120,4.119,4.103,4.070,4.019,3.951,3.872,3.789,3.714,3.655,3.621,3.619,3.651,3.712,3.797,
-3.894,3.990,4.073,4.133,4.162,4.158,4.121,4.058,3.977,3.885,3.793,3.706,3.630,3.568,3.519,3.481,
-3.451,3.426,3.404,3.382,3.358,3.333,3.305,3.275,3.241,3.205,3.163,3.117,3.064,3.005,2.941,2.874,
-2.805,2.739,2.678,2.625,2.582,2.550,2.528,2.513,2.502,2.492,2.480,2.462,2.439,2.411,2.381,2.351,
-2.325,2.304,2.288,2.276,2.260,2.236,2.194,2.128,2.031,1.901,1.740,1.552,1.349,1.140,.940,.760,
-.611,.501,.432,.404,.414,.455,.520,.601,.691,.784,.875,.959,1.034,1.097,1.145,1.177,
-1.191,1.189,1.169,1.136,1.093,1.044,.996,.954,.922,.904,.901,.911,.930,.953,.973,.983,
-.978,.954,.908,.842,.759,.665,.566,.469,.379,.301,.234,.178,.127,.075,.017,-.053,
--.140,-.244,-.363,-.492,-.623,-.747,-.855,-.940,-.997,-1.026,-1.027,-1.006,-.971,-.929,-.890,-.860,
--.845,-.847,-.868,-.905,-.954,-1.012,-1.072,-1.129,-1.178,-1.215,-1.236,-1.238,-1.220,-1.183,-1.127,-1.055,
--.972,-.883,-.794,-.710,-.637,-.581,-.547,-.535,-.548,-.585,-.643,-.720,-.813,-.917,-1.029,-1.147,
--1.268,-1.390,-1.511,-1.631,-1.748,-1.859,-1.963,-2.058,-2.141,-2.211,-2.265,-2.303,-2.327,-2.338,-2.339,-2.335,
--2.329,-2.326,-2.328,-2.337,-2.353,-2.374,-2.397,-2.418,-2.430,-2.429,-2.412,-2.375,-2.321,-2.250,-2.168,-2.083,
--2.004,-1.939,-1.898,-1.889,-1.915,-1.978,-2.076,-2.205,-2.355,-2.518,-2.685,-2.845,-2.995,-3.129,-3.248,-3.354,
--3.452,-3.546,-3.641,-3.739,-3.838,-3.935,-4.025,-4.101,-4.154,-4.180,-4.174,-4.136,-4.070,-3.980,-3.877,-3.770,
--3.670,-3.588,-3.536,-3.521,-3.551,-3.631,-3.764,-3.950,-4.187,-4.468,-4.783,-5.121,-5.468,-5.810,-6.134,-6.432,
--6.698,-6.931,-7.135,-7.319,-7.490,-7.658,-7.829,-8.010,-8.199,-8.395,-8.594,-8.790,-8.980,-9.162,-9.336,-9.506,
--9.674,-9.846,-10.024,-10.209,-10.400,-10.595,-10.791,-10.985,-11.177,-11.369,-11.567,-11.777,-12.004,-12.252,-12.522,-12.807,
--13.098,-13.380,-13.638,-13.860,-14.035,-14.161,-14.243,-14.294,-14.330,-14.373,-14.443,-14.556,-14.722,-14.943,-15.213,-15.520,
--15.849,-16.181,-16.502,-16.797,-17.058,-17.282,-17.468,-17.620,-17.744,-17.843,-17.922,-17.986,-18.036,-18.074,-18.103,-18.123,
--18.138,-18.150,-18.164,-18.181,-18.207,-18.243,-18.294,-18.362,-18.450,-18.563,-18.706,-18.884,-19.105,-19.373,-19.693,-20.070,
--20.502,-20.989,-21.522,-22.094,-22.692,-23.300,-23.904,-24.487,-25.033,-25.530,-25.967,-26.337,-26.637,-26.867,-27.033,-27.141,
--27.201,-27.224,-27.222,-27.205,-27.183,-27.164,-27.156,-27.163,-27.191,-27.239,-27.311,-27.404,-27.515,-27.640,-27.770,-27.895,
--28.006,-28.091,-28.139,-28.142,-28.098,-28.005,-27.869,-27.701,-27.514,-27.321,-27.139,-26.979,-26.850,-26.756,-26.697,-26.668,
--26.661,-26.666,-26.674,-26.675,-26.665,-26.637,-26.591,-26.525,-26.438,-26.332,-26.203,-26.051,-25.873,-25.669,-25.437,-25.183,
--24.909,-24.627,-24.347,-24.082,-23.847,-23.652,-23.509,-23.423,-23.396,-23.425,-23.504,-23.622,-23.770,-23.935,-24.105,-24.272,
--24.426,-24.563,-24.679,-24.772,-24.842,-24.889,-24.914,-24.920,-24.907,-24.879,-24.837,-24.783,-24.717,-24.640,-24.550,-24.443,
--24.316,-24.164,-23.982,-23.769,-23.522,-23.245,-22.942,-22.621,-22.292,-21.966,-21.654,-21.364,-21.102,-20.871,-20.670,-20.495,
--20.338,-20.193,-20.051,-19.904,-19.747,-19.575,-19.386,-19.180,-18.958,-18.721,-18.473,-18.214,-17.948,-17.673,-17.390,-17.096,
--16.787,-16.458,-16.102,-15.714,-15.290,-14.827,-14.324,-13.786,-13.215,-12.619,-12.004,-11.375,-10.734,-10.082,-9.417,-8.734,
--8.032,-7.310,-6.572,-5.826,-5.086,-4.369,-3.691,-3.068,-2.508,-2.014,-1.579,-1.188,-.821,-.458,-.079,.327,
-.765,1.228,1.701,2.164,2.595,2.976,3.293,3.543,3.731,3.870,3.976,4.070,4.170,4.288,4.436,4.617,
-4.834,5.090,5.389,5.736,6.140,6.612,7.159,7.786,8.492,9.267,10.096,10.956,11.822,12.672,13.487,14.254,
-14.973,15.646,16.287,16.909,17.527,18.152,18.787,19.431,20.075,20.707,21.311,21.874,22.384,22.835,23.229,23.571,
-23.872,24.146,24.407,24.668,24.940,25.228,25.536,25.860,26.193,26.527,26.851,27.155,27.427,27.660,27.850,27.991,
-28.084,28.130,28.129,28.086,28.001,27.880,27.724,27.542,27.340,27.131,26.930,26.756,26.627,26.566,26.587,26.705,
-26.926,27.247,27.662,28.154,28.705,29.293,29.901,30.510,31.109,31.692,32.255,32.800,33.328,33.844,34.347,34.840,
-35.319,35.783,36.230,36.656,37.060,37.443,37.805,38.146,38.468,38.771,39.056,39.326,39.582,39.828,40.070,40.315,
-40.570,40.843,41.139,41.459,41.802,42.162,42.529,42.894,43.249,43.584,43.899,44.196,44.479,44.757,45.042,45.339,
-45.655,45.990,46.341,46.702,47.064,47.421,47.768,48.107,48.439,48.773,49.115,49.473,49.851,50.249,50.662,51.083,
-51.501,51.907,52.293,52.656,52.995,53.315,53.619,53.915,54.205,54.491,54.769,55.036,55.286,55.511,55.709,55.877,
-56.016,56.125,56.204,56.251,56.259,56.220,56.124,55.963,55.735,55.446,55.114,54.765,54.436,54.163,53.982,53.919,
-53.985,54.176,54.468,54.825,55.202,55.555,55.843,56.042,56.139,56.140,56.061,55.929,55.771,55.612,55.471,55.357,
-55.276,55.228,55.215,55.240,55.313,55.447,55.654,55.946,56.323,56.774,57.275,57.788,58.270,58.676,58.966,59.119,
-59.127,59.008,58.792,58.526,58.259,58.038,57.897,57.855,57.912,58.053,58.249,58.468,58.678,58.851,58.972,59.035,
-59.045,59.014,58.955,58.883,58.810,58.741,58.679,58.620,58.560,58.492,58.409,58.307,58.179,58.022,57.836,57.620,
-57.376,57.112,56.836,56.563,56.306,56.080,55.896,55.759,55.668,55.608,55.562,55.501,55.399,55.232,54.983,54.649,
-54.239,53.775,53.291,52.824,52.408,52.074,51.837,51.702,51.657,51.681,51.745,51.819,51.876,51.896,51.868,51.791,
-51.672,51.521,51.352,51.177,51.003,50.834,50.670,50.507,50.343,50.173,49.996,49.812,49.623,49.432,49.242,49.056,
-48.836,48.645,48.461,48.284,48.113,47.947,47.785,47.627,47.473,47.323,47.176,47.029,46.880,46.725,46.563,46.392,
-46.213,46.027,45.838,45.650,45.466,45.291,45.124,44.964,44.808,44.652,44.493,44.327,44.151,43.967,43.775,43.579,
-43.381,43.183,42.987,42.792,42.597,42.399,42.195,41.984,41.764,41.537,41.304,41.069,40.837,40.611,40.396,40.194,
-40.008,39.838,39.684,39.544,39.415,39.291,39.169,39.041,38.900,38.741,38.557,38.342,38.095,37.814,37.499,37.155,
-36.785,36.395,35.990,35.574,35.149,34.716,34.274,33.821,33.355,32.876,32.384,31.882,31.377,30.877,30.395,29.944,
-29.535,29.179,28.882,28.645,28.462,28.318,28.196,28.073,27.925,27.733,27.481,27.165,26.790,26.373,25.938,25.516,
-25.140,24.836,24.623,24.508,24.482,24.526,24.608,24.693,24.746,24.736,24.645,24.463,24.197,23.861,23.477,23.070,
-22.661,22.266,21.894,21.546,21.217,20.898,20.581,20.260,19.931,19.596,19.262,18.936,18.624,18.331,18.058,17.803,
-17.561,17.324,17.088,16.847,16.603,16.358,16.117,15.888,15.675,15.481,15.305,15.145,14.992,14.839,14.681,14.513,
-14.334,14.148,13.958,13.771,13.591,13.418,13.250,13.079,12.898,12.695,12.465,12.202,11.909,11.595,11.273,10.958,
-10.668,10.414,10.207,10.046,9.925,9.833,9.754,9.672,9.573,9.446,9.288,9.100,8.889,8.664,8.436,8.213,
-8.001,7.802,7.614,7.433,7.254,7.070,6.878,6.677,6.466,6.249,6.029,5.808,5.591,5.377,5.166,4.956,
-4.745,4.530,4.310,4.086,3.860,3.635,3.416,3.208,3.015,2.839,2.681,2.540,2.412,2.290,2.168,2.039,
-1.894,1.728,1.535,1.315,1.067,.797,.509,.213,-.084,-.373,-.645,-.895,-1.118,-1.310,-1.471,-1.599,
--1.694,-1.758,-1.791,-1.795,-1.776,-1.740,-1.697,-1.659,-1.638,-1.648,-1.701,-1.803,-1.957,-2.161,-2.405,-2.678,
--2.966,-3.257,-3.541,-3.815,-4.077,-4.335,-4.594,-4.861,-5.141,-5.433,-5.732,-6.025,-6.299,-6.541,-6.739,-6.887,
--6.987,-7.048,-7.084,-7.112,-7.150,-7.210,-7.301,-7.424,-7.573,-7.739,-7.908,-8.071,-8.217,-8.343,-8.450,-8.541,
--8.623,-8.700,-8.779,-8.862,-8.946,-9.030,-9.110,-9.185,-9.252,-9.314,-9.374,-9.435,-9.502,-9.576,-9.657,-9.741,
--9.822,-9.895,-9.953,-9.994,-10.018,-10.029,-10.033,-10.039,-10.056,-10.089,-10.143,-10.216,-10.306,-10.407,-10.511,-10.612,
--10.707,-10.793,-10.872,-10.949,-11.029,-11.117,-11.217,-11.331,-11.458,-11.597,-11.744,-11.895,-12.046,-12.197,-12.345,-12.492,
--12.638,-12.785,-12.933,-13.081,-13.227,-13.369,-13.502,-13.624,-13.732,-13.825,-13.901,-13.964,-14.014,-14.054,-14.088,-14.119,
--14.149,-14.182,-14.218,-14.260,-14.307,-14.359,-14.413,-14.464,-14.506,-14.532,-14.536,-14.510,-14.452,-14.360,-14.239,-14.095,
--13.940,-13.787,-13.646,-13.528,-13.437,-13.374,-13.332,-13.301,-13.267,-13.218,-13.143,-13.038,-12.903,-12.746,-12.582,-12.428,
--12.301,-12.217,-12.186,-12.213,-12.297,-12.429,-12.600,-12.796,-13.004,-13.215,-13.421,-13.616,-13.799,-13.967,-14.118,-14.251,
--14.364,-14.453,-14.518,-14.558,-14.577,-14.582,-14.580,-14.581,-14.592,-14.619,-14.665,-14.726,-14.797,-14.869,-14.933,-14.981,
--15.010,-15.018,-15.009,-14.989,-14.966,-14.945,-14.930,-14.919,-14.906,-14.883,-14.836,-14.756,-14.633,-14.465,-14.252,-14.000,
--13.722,-13.431,-13.142,-12.866,-12.615,-12.393,-12.203,-12.039,-11.895,-11.762,-11.627,-11.480,-11.311,-11.113,-10.884,-10.626,
--10.346,-10.057,-9.776,-9.523,-9.317,-9.174,-9.108,-9.122,-9.214,-9.372,-9.580,-9.815,-10.057,-10.286,-10.489,-10.657,
--10.791,-10.896,-10.980,-11.054,-11.124,-11.196,-11.269,-11.340,-11.402,-11.447,-11.470,-11.467,-11.437,-11.385,-11.314,-11.232,
--11.145,-11.055,-10.965,-10.873,-10.776,-10.670,-10.550,-10.415,-10.263,-10.093,-9.910,-9.715,-9.515,-9.315,-9.120,-8.937,
--8.772,-8.633,-8.524,-8.452,-8.418,-8.422,-8.463,-8.534,-8.628,-8.735,-8.848,-8.959,-9.063,-9.158,-9.246,-9.328,
--9.408,-9.487,-9.567,-9.644,-9.715,-9.775,-9.818,-9.838,-9.831,-9.795,-9.730,-9.634,-9.507,-9.348,-9.154,-8.923,
--8.653,-8.345,-8.004,-7.640,-7.267,-6.903,-6.570,-6.287,-6.067,-5.917,-5.837,-5.814,-5.829,-5.860,-5.881,-5.870,
--5.810,-5.693,-5.520,-5.300,-5.047,-4.776,-4.504,-4.243,-4.001,-3.778,-3.574,-3.381,-3.196,-3.012,-2.828,-2.645,
--2.466,-2.296,-2.139,-1.998,-1.874,-1.763,-1.660,-1.561,-1.458,-1.348,-1.231,-1.110,-.989,-.879,-.787,-.720,
--.683,-.678,-.701,-.744,-.800,-.857,-.906,-.939,-.953,-.945,-.917,-.874,-.819,-.758,-.694,-.626,
--.553,-.473,-.379,-.268,-.135,.021,.199,.396,.607,.823,1.035,1.237,1.419,1.577,1.709,1.813,
-1.893,1.952,1.997,2.033,2.066,2.102,2.141,2.186,2.234,2.283,2.326,2.361,2.382,2.388,2.378,2.353,
-2.318,2.278,2.239,2.206,2.184,2.174,2.178,2.194,2.219,2.248,2.278,2.306,2.331,2.353,2.373,2.395,
-2.421,2.454,2.498,2.552,2.616,2.690,2.769,2.850,2.928,3.000,3.063,3.114,3.153,3.182,3.204,3.224,
-3.246,3.277,3.320,3.379,3.453,3.543,3.642,3.746,3.848,3.942,4.024,4.092,4.146,4.186,4.217,4.242,
-4.261,4.276,4.283,4.280,4.262,4.226,4.171,4.100,4.018,3.935,3.862,3.810,3.790,3.807,3.859,3.942,
-4.045,4.154,4.254,4.331,4.376,4.385,4.358,4.300,4.223,4.136,4.049,3.972,3.909,3.862,3.827,3.802,
-3.782,3.762,3.739,3.713,3.685,3.658,3.636,3.620,3.612,3.611,3.615,3.619,3.618,3.607,3.581,3.538,
-3.478,3.402,3.315,3.223,3.132,3.048,2.976,2.918,2.873,2.840,2.814,2.791,2.766,2.735,2.697,2.651,
-2.600,2.545,2.489,2.433,2.377,2.319,2.256,2.181,2.090,1.980,1.848,1.695,1.525,1.346,1.166,.994,
-.838,.705,.601,.527,.483,.468,.479,.511,.563,.629,.707,.792,.879,.964,1.039,1.099,
-1.138,1.153,1.143,1.109,1.055,.988,.915,.845,.787,.747,.728,.732,.756,.795,.843,.893,
-.936,.966,.978,.967,.934,.879,.807,.721,.628,.535,.446,.365,.296,.237,.187,.142,
-.098,.049,-.009,-.077,-.156,-.245,-.338,-.433,-.522,-.601,-.666,-.713,-.742,-.754,-.752,-.740,
--.723,-.704,-.686,-.673,-.666,-.664,-.667,-.673,-.680,-.684,-.684,-.679,-.666,-.646,-.618,-.583,
--.541,-.494,-.442,-.386,-.329,-.272,-.217,-.167,-.127,-.100,-.090,-.101,-.135,-.193,-.274,-.374,
--.489,-.613,-.741,-.866,-.985,-1.095,-1.196,-1.289,-1.373,-1.451,-1.523,-1.587,-1.643,-1.687,-1.715,-1.725,
--1.717,-1.691,-1.652,-1.604,-1.556,-1.515,-1.489,-1.483,-1.498,-1.534,-1.586,-1.647,-1.711,-1.768,-1.812,-1.839,
--1.849,-1.845,-1.832,-1.821,-1.818,-1.833,-1.870,-1.933,-2.020,-2.127,-2.248,-2.375,-2.501,-2.621,-2.735,-2.842,
--2.948,-3.057,-3.175,-3.306,-3.450,-3.604,-3.760,-3.910,-4.042,-4.146,-4.216,-4.248,-4.247,-4.219,-4.177,-4.134,
--4.104,-4.101,-4.133,-4.206,-4.321,-4.477,-4.667,-4.885,-5.122,-5.370,-5.622,-5.867,-6.100,-6.315,-6.506,-6.673,
--6.815,-6.938,-7.048,-7.157,-7.273,-7.406,-7.563,-7.746,-7.954,-8.178,-8.410,-8.637,-8.850,-9.041,-9.208,-9.354,
--9.484,-9.609,-9.738,-9.878,-10.034,-10.205,-10.389,-10.579,-10.769,-10.954,-11.130,-11.301,-11.468,-11.639,-11.817,-12.006,
--12.205,-12.408,-12.609,-12.798,-12.967,-13.113,-13.236,-13.343,-13.447,-13.563,-13.707,-13.892,-14.126,-14.412,-14.743,-15.107,
--15.490,-15.874,-16.244,-16.586,-16.892,-17.158,-17.385,-17.574,-17.729,-17.852,-17.948,-18.016,-18.059,-18.077,-18.075,-18.058,
--18.034,-18.011,-17.999,-18.006,-18.038,-18.099,-18.188,-18.304,-18.443,-18.602,-18.778,-18.971,-19.184,-19.423,-19.695,-20.009,
--20.370,-20.785,-21.255,-21.778,-22.347,-22.951,-23.579,-24.212,-24.836,-25.433,-25.988,-26.487,-26.921,-27.282,-27.568,-27.779,
--27.923,-28.006,-28.042,-28.044,-28.025,-28.000,-27.980,-27.976,-27.993,-28.036,-28.104,-28.195,-28.302,-28.418,-28.534,-28.640,
--28.727,-28.785,-28.808,-28.793,-28.738,-28.645,-28.520,-28.371,-28.210,-28.048,-27.896,-27.764,-27.658,-27.583,-27.537,-27.520,
--27.524,-27.544,-27.571,-27.599,-27.621,-27.634,-27.635,-27.621,-27.592,-27.547,-27.485,-27.405,-27.306,-27.187,-27.048,-26.888,
--26.710,-26.516,-26.312,-26.104,-25.898,-25.702,-25.524,-25.369,-25.242,-25.146,-25.082,-25.049,-25.046,-25.067,-25.109,-25.167,
--25.234,-25.307,-25.380,-25.450,-25.515,-25.570,-25.615,-25.649,-25.671,-25.681,-25.680,-25.669,-25.648,-25.615,-25.571,-25.510,
--25.430,-25.325,-25.188,-25.015,-24.803,-24.549,-24.258,-23.936,-23.593,-23.241,-22.894,-22.565,-22.267,-22.007,-21.788,-21.609,
--21.466,-21.349,-21.249,-21.155,-21.056,-20.945,-20.814,-20.661,-20.484,-20.283,-20.062,-19.822,-19.567,-19.300,-19.023,-18.737,
--18.443,-18.138,-17.819,-17.480,-17.118,-16.727,-16.305,-15.850,-15.364,-14.850,-14.313,-13.759,-13.192,-12.611,-12.015,-11.398,
--10.755,-10.078,-9.364,-8.613,-7.833,-7.037,-6.244,-5.475,-4.749,-4.082,-3.481,-2.943,-2.459,-2.011,-1.579,-1.144,
--.692,-.216,.280,.784,1.281,1.749,2.174,2.541,2.847,3.093,3.288,3.442,3.569,3.679,3.782,3.886,
-3.997,4.125,4.282,4.484,4.750,5.102,5.557,6.128,6.817,7.613,8.496,9.434,10.390,11.330,12.221,13.045,
-13.794,14.472,15.094,15.684,16.262,16.849,17.457,18.088,18.736,19.389,20.029,20.641,21.210,21.729,22.196,22.615,
-22.996,23.350,23.689,24.023,24.360,24.705,25.058,25.417,25.777,26.131,26.471,26.789,27.078,27.330,27.540,27.704,
-27.821,27.893,27.922,27.910,27.861,27.776,27.657,27.504,27.319,27.106,26.870,26.626,26.390,26.184,26.034,25.965,
-25.997,26.146,26.418,26.808,27.302,27.880,28.516,29.184,29.860,30.527,31.172,31.791,32.384,32.954,33.506,34.043,
-34.567,35.076,35.568,36.039,36.487,36.909,37.306,37.680,38.034,38.372,38.696,39.008,39.311,39.604,39.891,40.175,
-40.460,40.753,41.058,41.380,41.720,42.077,42.445,42.814,43.177,43.523,43.847,44.148,44.430,44.702,44.976,45.263,
-45.572,45.907,46.265,46.638,47.015,47.383,47.734,48.062,48.372,48.673,48.982,49.316,49.691,50.115,50.588,51.100,
-51.632,52.161,52.662,53.115,53.506,53.832,54.103,54.332,54.539,54.742,54.957,55.189,55.437,55.693,55.944,56.178,
-56.384,56.559,56.703,56.821,56.922,57.009,57.085,57.146,57.182,57.182,57.134,57.035,56.887,56.706,56.516,56.347,
-56.232,56.196,56.256,56.413,56.652,56.946,57.257,57.546,57.775,57.919,57.962,57.907,57.764,57.557,57.311,57.052,
-56.806,56.589,56.418,56.303,56.253,56.277,56.381,56.568,56.840,57.188,57.596,58.037,58.478,58.881,59.212,59.441,
-59.554,59.548,59.440,59.258,59.039,58.824,58.647,58.536,58.503,58.547,58.655,58.806,58.974,59.137,59.274,59.374,
-59.433,59.451,59.434,59.389,59.323,59.242,59.151,59.052,58.949,58.843,58.736,58.628,58.517,58.399,58.266,58.111,
-57.925,57.701,57.440,57.146,56.832,56.515,56.216,55.953,55.741,55.583,55.470,55.384,55.297,55.179,55.000,54.740,
-54.392,53.963,53.478,52.968,52.474,52.032,51.674,51.418,51.265,51.205,51.215,51.266,51.329,51.377,51.392,51.366,
-51.300,51.201,51.080,50.949,50.816,50.686,50.559,50.432,50.298,50.154,49.996,49.821,49.634,49.436,49.234,49.033,
-48.836,48.514,48.354,48.208,48.073,47.945,47.821,47.697,47.573,47.447,47.319,47.187,47.050,46.905,46.751,46.587,
-46.412,46.229,46.041,45.851,45.664,45.481,45.305,45.134,44.964,44.793,44.616,44.431,44.238,44.039,43.835,43.633,
-43.434,43.243,43.059,42.880,42.701,42.517,42.323,42.115,41.892,41.655,41.408,41.156,40.905,40.661,40.427,40.205,
-39.997,39.799,39.611,39.430,39.255,39.083,38.914,38.747,38.580,38.409,38.233,38.046,37.843,37.621,37.376,37.106,
-36.810,36.488,36.143,35.776,35.388,34.980,34.553,34.107,33.643,33.162,32.666,32.161,31.652,31.149,30.661,30.199,
-29.771,29.387,29.053,28.771,28.541,28.357,28.209,28.083,27.963,27.830,27.668,27.465,27.214,26.918,26.584,26.232,
-25.883,25.565,25.299,25.104,24.989,24.950,24.973,25.032,25.096,25.130,25.104,24.995,24.791,24.492,24.110,23.667,
-23.188,22.700,22.226,21.784,21.382,21.022,20.698,20.403,20.126,19.859,19.598,19.341,19.088,18.842,18.604,18.374,
-18.151,17.930,17.706,17.473,17.227,16.967,16.695,16.414,16.132,15.856,15.592,15.345,15.116,14.905,14.709,14.526,
-14.351,14.184,14.022,13.868,13.722,13.585,13.456,13.331,13.204,13.068,12.914,12.735,12.526,12.288,12.024,11.743,
-11.456,11.176,10.915,10.681,10.478,10.304,10.154,10.017,9.882,9.739,9.580,9.400,9.200,8.984,8.758,8.532,
-8.312,8.103,7.908,7.724,7.549,7.377,7.202,7.019,6.825,6.619,6.403,6.179,5.950,5.719,5.490,5.263,
-5.037,4.813,4.589,4.363,4.134,3.905,3.675,3.448,3.225,3.011,2.807,2.616,2.438,2.273,2.119,1.974,
-1.834,1.695,1.552,1.402,1.241,1.068,.880,.679,.467,.245,.018,-.212,-.440,-.666,-.885,-1.096,
--1.296,-1.480,-1.645,-1.788,-1.905,-1.995,-2.059,-2.102,-2.132,-2.160,-2.199,-2.259,-2.348,-2.473,-2.630,-2.815,
--3.016,-3.222,-3.422,-3.608,-3.777,-3.935,-4.088,-4.250,-4.432,-4.643,-4.887,-5.159,-5.450,-5.743,-6.021,-6.268,
--6.474,-6.634,-6.753,-6.842,-6.916,-6.993,-7.086,-7.205,-7.352,-7.523,-7.708,-7.897,-8.078,-8.242,-8.385,-8.507,
--8.613,-8.709,-8.801,-8.895,-8.992,-9.091,-9.188,-9.280,-9.362,-9.433,-9.496,-9.552,-9.609,-9.670,-9.741,-9.820,
--9.908,-9.998,-10.086,-10.164,-10.229,-10.279,-10.318,-10.349,-10.379,-10.417,-10.466,-10.531,-10.611,-10.703,-10.802,-10.902,
--10.997,-11.085,-11.166,-11.242,-11.317,-11.397,-11.486,-11.588,-11.703,-11.831,-11.966,-12.105,-12.243,-12.376,-12.502,-12.621,
--12.735,-12.845,-12.956,-13.067,-13.181,-13.294,-13.405,-13.510,-13.605,-13.688,-13.759,-13.818,-13.868,-13.915,-13.962,-14.015,
--14.076,-14.146,-14.227,-14.315,-14.406,-14.495,-14.578,-14.647,-14.699,-14.728,-14.730,-14.703,-14.645,-14.557,-14.443,-14.309,
--14.164,-14.020,-13.886,-13.775,-13.691,-13.637,-13.609,-13.599,-13.590,-13.568,-13.516,-13.424,-13.286,-13.107,-12.900,-12.684,
--12.485,-12.327,-12.232,-12.212,-12.273,-12.407,-12.599,-12.828,-13.070,-13.305,-13.515,-13.693,-13.838,-13.955,-14.055,-14.148,
--14.245,-14.350,-14.464,-14.585,-14.708,-14.827,-14.937,-15.039,-15.133,-15.223,-15.315,-15.412,-15.516,-15.624,-15.730,-15.826,
--15.903,-15.955,-15.977,-15.969,-15.936,-15.885,-15.824,-15.760,-15.698,-15.637,-15.573,-15.496,-15.397,-15.267,-15.097,-14.886,
--14.636,-14.354,-14.050,-13.738,-13.433,-13.144,-12.883,-12.653,-12.455,-12.287,-12.141,-12.009,-11.881,-11.746,-11.596,-11.423,
--11.227,-11.009,-10.775,-10.538,-10.312,-10.114,-9.960,-9.862,-9.827,-9.856,-9.943,-10.075,-10.236,-10.411,-10.582,-10.739,
--10.876,-10.992,-11.090,-11.178,-11.262,-11.346,-11.431,-11.516,-11.595,-11.661,-11.707,-11.728,-11.722,-11.692,-11.642,-11.578,
--11.508,-11.436,-11.366,-11.296,-11.226,-11.149,-11.063,-10.962,-10.845,-10.711,-10.561,-10.397,-10.224,-10.044,-9.861,-9.681,
--9.509,-9.349,-9.210,-9.099,-9.021,-8.983,-8.986,-9.030,-9.112,-9.223,-9.356,-9.500,-9.648,-9.794,-9.933,-10.063,
--10.186,-10.301,-10.406,-10.500,-10.577,-10.630,-10.651,-10.632,-10.569,-10.458,-10.299,-10.094,-9.848,-9.567,-9.254,-8.916,
--8.556,-8.179,-7.791,-7.403,-7.024,-6.670,-6.356,-6.096,-5.900,-5.772,-5.711,-5.703,-5.733,-5.778,-5.813,-5.819,
--5.779,-5.686,-5.539,-5.347,-5.121,-4.877,-4.628,-4.385,-4.154,-3.936,-3.728,-3.524,-3.320,-3.110,-2.895,-2.677,
--2.460,-2.251,-2.053,-1.872,-1.707,-1.556,-1.414,-1.275,-1.133,-.985,-.832,-.677,-.527,-.390,-.276,-.193,
--.145,-.133,-.155,-.204,-.270,-.343,-.413,-.470,-.511,-.531,-.532,-.515,-.484,-.443,-.394,-.339,
--.279,-.211,-.134,-.045,.057,.175,.309,.456,.616,.784,.957,1.131,1.304,1.471,1.631,1.779,
-1.915,2.037,2.143,2.233,2.308,2.369,2.418,2.458,2.491,2.521,2.549,2.576,2.602,2.624,2.642,2.652,
-2.654,2.646,2.630,2.605,2.576,2.546,2.517,2.493,2.476,2.468,2.470,2.483,2.504,2.535,2.573,2.619,
-2.670,2.727,2.788,2.854,2.923,2.996,3.071,3.147,3.224,3.298,3.367,3.429,3.480,3.518,3.544,3.558,
-3.564,3.567,3.574,3.592,3.627,3.683,3.762,3.861,3.976,4.100,4.224,4.340,4.444,4.530,4.599,4.652,
-4.689,4.714,4.728,4.729,4.715,4.686,4.638,4.572,4.492,4.406,4.323,4.254,4.210,4.199,4.223,4.280,
-4.361,4.452,4.538,4.605,4.642,4.642,4.606,4.541,4.457,4.368,4.286,4.222,4.182,4.166,4.170,4.186,
-4.206,4.222,4.227,4.219,4.200,4.173,4.144,4.120,4.105,4.104,4.115,4.135,4.160,4.182,4.193,4.186,
-4.156,4.102,4.024,3.926,3.813,3.693,3.575,3.464,3.367,3.285,3.220,3.168,3.124,3.084,3.042,2.993,
-2.936,2.868,2.791,2.706,2.615,2.521,2.424,2.323,2.217,2.103,1.979,1.846,1.703,1.554,1.401,1.251,
-1.107,.974,.857,.756,.674,.610,.564,.537,.530,.542,.574,.626,.693,.773,.858,.941,
-1.013,1.067,1.098,1.102,1.079,1.034,.973,.903,.834,.772,.724,.694,.684,.693,.719,.758,
-.804,.854,.900,.937,.960,.965,.947,.906,.843,.761,.667,.568,.473,.390,.326,.285,
-.269,.274,.296,.327,.358,.381,.390,.381,.351,.304,.243,.174,.104,.040,-.013,-.051,
--.072,-.077,-.067,-.044,-.014,.021,.058,.093,.125,.154,.178,.199,.217,.230,.239,.244,
-.244,.240,.235,.231,.231,.238,.257,.287,.329,.378,.429,.474,.503,.509,.488,.436,
-.356,.253,.136,.015,-.101,-.206,-.296,-.369,-.431,-.483,-.531,-.578,-.622,-.661,-.686,-.689,
--.661,-.595,-.489,-.345,-.172,.019,.209,.383,.524,.620,.663,.654,.595,.496,.369,.226,
-.080,-.060,-.190,-.308,-.415,-.516,-.616,-.719,-.830,-.948,-1.074,-1.206,-1.341,-1.480,-1.621,-1.769,
--1.929,-2.106,-2.307,-2.535,-2.789,-3.066,-3.354,-3.638,-3.902,-4.130,-4.308,-4.429,-4.495,-4.513,-4.500,-4.476,
--4.464,-4.484,-4.550,-4.670,-4.844,-5.063,-5.314,-5.580,-5.843,-6.088,-6.302,-6.480,-6.617,-6.716,-6.780,-6.818,
--6.838,-6.850,-6.866,-6.896,-6.951,-7.040,-7.169,-7.340,-7.549,-7.789,-8.047,-8.309,-8.559,-8.787,-8.984,-9.148,
--9.286,-9.405,-9.518,-9.635,-9.766,-9.914,-10.075,-10.243,-10.407,-10.556,-10.680,-10.777,-10.846,-10.895,-10.933,-10.974,
--11.026,-11.098,-11.194,-11.311,-11.446,-11.595,-11.755,-11.924,-12.105,-12.306,-12.534,-12.797,-13.101,-13.447,-13.829,-14.238,
--14.661,-15.084,-15.492,-15.874,-16.223,-16.536,-16.813,-17.056,-17.268,-17.449,-17.600,-17.720,-17.806,-17.858,-17.878,-17.872,
--17.850,-17.824,-17.810,-17.821,-17.868,-17.957,-18.088,-18.256,-18.452,-18.666,-18.885,-19.105,-19.322,-19.539,-19.765,-20.012,
--20.294,-20.623,-21.010,-21.460,-21.973,-22.543,-23.159,-23.805,-24.465,-25.118,-25.747,-26.335,-26.869,-27.336,-27.731,-28.049,
--28.293,-28.467,-28.581,-28.646,-28.676,-28.686,-28.690,-28.701,-28.728,-28.776,-28.848,-28.942,-29.051,-29.167,-29.280,-29.379,
--29.455,-29.500,-29.508,-29.478,-29.412,-29.313,-29.191,-29.054,-28.912,-28.778,-28.658,-28.561,-28.490,-28.447,-28.428,-28.431,
--28.451,-28.480,-28.515,-28.550,-28.583,-28.610,-28.631,-28.645,-28.652,-28.651,-28.640,-28.618,-28.584,-28.535,-28.472,-28.394,
--28.300,-28.192,-28.071,-27.938,-27.795,-27.643,-27.484,-27.321,-27.156,-26.992,-26.833,-26.681,-26.542,-26.418,-26.311,-26.223,
--26.155,-26.105,-26.072,-26.053,-26.046,-26.046,-26.052,-26.060,-26.067,-26.072,-26.075,-26.075,-26.071,-26.065,-26.054,-26.038,
--26.012,-25.972,-25.911,-25.819,-25.690,-25.515,-25.291,-25.018,-24.699,-24.345,-23.968,-23.587,-23.219,-22.881,-22.585,-22.341,
--22.151,-22.012,-21.916,-21.851,-21.803,-21.759,-21.707,-21.636,-21.541,-21.418,-21.267,-21.089,-20.887,-20.666,-20.430,-20.182,
--19.925,-19.660,-19.387,-19.103,-18.804,-18.485,-18.141,-17.769,-17.366,-16.933,-16.471,-15.986,-15.480,-14.959,-14.421,-13.865,
--13.284,-12.669,-12.013,-11.307,-10.550,-9.749,-8.914,-8.065,-7.224,-6.414,-5.654,-4.958,-4.328,-3.759,-3.237,-2.746,
--2.266,-1.783,-1.287,-.778,-.261,.253,.749,1.215,1.640,2.018,2.347,2.627,2.859,3.045,3.186,3.286,
-3.350,3.389,3.423,3.480,3.594,3.804,4.144,4.641,5.309,6.139,7.107,8.169,9.270,10.354,11.367,12.273,
-13.051,13.704,14.250,14.722,15.160,15.601,16.071,16.587,17.152,17.755,18.380,19.007,19.619,20.205,20.760,21.285,
-21.786,22.270,22.742,23.207,23.662,24.104,24.529,24.932,25.310,25.663,25.992,26.301,26.589,26.859,27.105,27.324,
-27.507,27.648,27.739,27.777,27.759,27.687,27.561,27.385,27.163,26.898,26.598,26.271,25.932,25.601,25.303,25.068,
-24.926,24.905,25.025,25.297,25.717,26.272,26.936,27.674,28.453,29.238,30.004,30.732,31.414,32.049,32.643,33.204,
-33.741,34.258,34.760,35.245,35.714,36.164,36.594,37.005,37.399,37.781,38.153,38.518,38.876,39.227,39.570,39.902,
-40.225,40.541,40.853,41.168,41.491,41.826,42.173,42.529,42.887,43.241,43.581,43.903,44.206,44.495,44.779,45.071,
-45.383,45.724,46.096,46.495,46.909,47.323,47.720,48.087,48.420,48.725,49.015,49.315,49.650,50.042,50.505,51.039,
-51.629,52.249,52.862,53.429,53.918,54.309,54.596,54.789,54.916,55.009,55.103,55.226,55.396,55.614,55.871,56.147,
-56.417,56.663,56.872,57.043,57.186,57.320,57.464,57.635,57.841,58.077,58.328,58.572,58.782,58.938,59.028,59.053,
-59.026,58.971,58.917,58.891,58.910,58.980,59.091,59.222,59.345,59.430,59.450,59.391,59.249,59.037,58.774,58.489,
-58.211,57.966,57.774,57.647,57.591,57.603,57.679,57.812,57.993,58.213,58.460,58.721,58.979,59.215,59.412,59.553,
-59.629,59.637,59.584,59.485,59.361,59.238,59.138,59.079,59.070,59.114,59.200,59.314,59.440,59.559,59.658,59.729,
-59.767,59.774,59.751,59.704,59.636,59.549,59.446,59.329,59.201,59.068,58.936,58.813,58.702,58.605,58.516,58.426,
-58.320,58.182,58.000,57.766,57.481,57.156,56.812,56.472,56.161,55.898,55.693,55.541,55.425,55.317,55.186,55.000,
-54.738,54.389,53.960,53.471,52.954,52.449,51.992,51.611,51.323,51.133,51.028,50.990,50.990,51.005,51.013,50.999,
-50.958,50.893,50.809,50.714,50.615,50.515,50.412,50.304,50.183,50.045,49.885,49.704,49.506,49.298,49.087,48.883,
-48.690,48.514,48.269,48.169,48.082,48.000,47.915,47.822,47.720,47.606,47.483,47.351,47.211,47.063,46.908,46.744,
-46.570,46.389,46.200,46.008,45.816,45.627,45.442,45.262,45.085,44.909,44.730,44.546,44.355,44.160,43.961,43.764,
-43.571,43.383,43.201,43.019,42.834,42.637,42.424,42.190,41.935,41.663,41.379,41.093,40.815,40.550,40.304,40.078,
-39.869,39.673,39.483,39.295,39.105,38.912,38.718,38.527,38.340,38.161,37.989,37.821,37.651,37.472,37.276,37.055,
-36.803,36.515,36.190,35.830,35.437,35.014,34.567,34.100,33.621,33.134,32.649,32.171,31.710,31.273,30.867,30.495,
-30.161,29.864,29.601,29.369,29.162,28.975,28.802,28.640,28.482,28.324,28.159,27.982,27.787,27.570,27.327,27.062,
-26.780,26.492,26.211,25.954,25.734,25.561,25.439,25.362,25.316,25.280,25.228,25.134,24.976,24.739,24.419,24.023,
-23.567,23.074,22.572,22.086,21.638,21.240,20.898,20.609,20.362,20.143,19.938,19.735,19.525,19.304,19.072,18.833,
-18.591,18.350,18.111,17.875,17.640,17.400,17.152,16.892,16.620,16.337,16.045,15.751,15.461,15.180,14.912,14.661,
-14.429,14.214,14.017,13.835,13.668,13.516,13.377,13.253,13.140,13.035,12.935,12.833,12.722,12.595,12.447,12.274,
-12.076,11.857,11.622,11.380,11.137,10.902,10.678,10.467,10.268,10.075,9.884,9.689,9.486,9.273,9.052,8.828,
-8.606,8.393,8.194,8.014,7.850,7.701,7.561,7.421,7.273,7.110,6.927,6.721,6.493,6.246,5.985,5.715,
-5.443,5.175,4.914,4.664,4.425,4.198,3.982,3.774,3.572,3.373,3.174,2.975,2.773,2.570,2.366,2.165,
-1.969,1.781,1.603,1.437,1.282,1.136,.996,.857,.714,.564,.401,.225,.033,-.173,-.391,-.620,
--.855,-1.092,-1.325,-1.549,-1.758,-1.947,-2.112,-2.253,-2.371,-2.470,-2.558,-2.644,-2.736,-2.843,-2.968,-3.113,
--3.271,-3.436,-3.596,-3.742,-3.868,-3.970,-4.053,-4.127,-4.205,-4.302,-4.430,-4.598,-4.807,-5.051,-5.318,-5.592,
--5.856,-6.098,-6.308,-6.484,-6.631,-6.760,-6.880,-7.004,-7.139,-7.288,-7.451,-7.620,-7.790,-7.953,-8.104,-8.243,
--8.372,-8.497,-8.624,-8.757,-8.899,-9.048,-9.201,-9.349,-9.487,-9.607,-9.706,-9.785,-9.849,-9.902,-9.953,-10.009,
--10.073,-10.147,-10.228,-10.314,-10.398,-10.476,-10.546,-10.607,-10.661,-10.713,-10.766,-10.826,-10.895,-10.973,-11.059,-11.149,
--11.239,-11.326,-11.408,-11.485,-11.559,-11.634,-11.714,-11.802,-11.903,-12.015,-12.137,-12.266,-12.396,-12.523,-12.642,-12.750,
--12.848,-12.936,-13.017,-13.096,-13.174,-13.254,-13.336,-13.417,-13.496,-13.570,-13.635,-13.693,-13.745,-13.794,-13.848,-13.913,
--13.993,-14.092,-14.209,-14.341,-14.480,-14.615,-14.736,-14.833,-14.897,-14.923,-14.909,-14.859,-14.779,-14.675,-14.559,-14.441,
--14.329,-14.234,-14.163,-14.121,-14.110,-14.129,-14.173,-14.232,-14.291,-14.335,-14.346,-14.311,-14.219,-14.069,-13.868,-13.633,
--13.389,-13.163,-12.983,-12.872,-12.843,-12.897,-13.025,-13.204,-13.408,-13.607,-13.777,-13.901,-13.974,-14.004,-14.005,-13.998,
--14.006,-14.045,-14.127,-14.253,-14.415,-14.602,-14.798,-14.990,-15.169,-15.335,-15.489,-15.640,-15.796,-15.963,-16.140,-16.322,
--16.499,-16.655,-16.775,-16.846,-16.861,-16.821,-16.734,-16.610,-16.467,-16.316,-16.170,-16.033,-15.904,-15.777,-15.643,-15.491,
--15.315,-15.109,-14.875,-14.617,-14.344,-14.066,-13.794,-13.537,-13.301,-13.089,-12.903,-12.739,-12.592,-12.458,-12.329,-12.201,
--12.067,-11.924,-11.773,-11.615,-11.456,-11.302,-11.164,-11.049,-10.964,-10.914,-10.898,-10.912,-10.948,-10.996,-11.049,-11.098,
--11.141,-11.180,-11.218,-11.263,-11.321,-11.397,-11.491,-11.599,-11.711,-11.817,-11.904,-11.961,-11.984,-11.972,-11.929,-11.863,
--11.785,-11.704,-11.628,-11.560,-11.499,-11.440,-11.378,-11.304,-11.213,-11.102,-10.971,-10.823,-10.661,-10.491,-10.319,-10.150,
--9.991,-9.845,-9.719,-9.617,-9.547,-9.511,-9.516,-9.561,-9.647,-9.768,-9.919,-10.092,-10.278,-10.470,-10.662,-10.850,
--11.031,-11.203,-11.363,-11.506,-11.625,-11.709,-11.748,-11.729,-11.644,-11.485,-11.251,-10.942,-10.567,-10.135,-9.660,-9.154,
--8.634,-8.113,-7.607,-7.129,-6.695,-6.317,-6.007,-5.774,-5.621,-5.544,-5.533,-5.572,-5.639,-5.710,-5.761,-5.774,
--5.737,-5.644,-5.500,-5.316,-5.106,-4.884,-4.664,-4.455,-4.258,-4.073,-3.892,-3.709,-3.517,-3.312,-3.095,-2.869,
--2.641,-2.418,-2.205,-2.006,-1.820,-1.644,-1.474,-1.302,-1.126,-.943,-.757,-.572,-.399,-.246,-.123,-.037,
-.010,.020,-.001,-.045,-.101,-.157,-.205,-.238,-.253,-.249,-.228,-.195,-.153,-.106,-.057,-.007,
-.045,.099,.160,.229,.309,.400,.503,.615,.736,.862,.993,1.125,1.260,1.397,1.537,1.680,
-1.827,1.975,2.123,2.267,2.402,2.524,2.629,2.715,2.782,2.829,2.861,2.880,2.891,2.897,2.902,2.908,
-2.915,2.922,2.928,2.933,2.934,2.931,2.923,2.912,2.898,2.883,2.870,2.861,2.859,2.865,2.881,2.908,
-2.946,2.995,3.051,3.114,3.181,3.250,3.320,3.389,3.457,3.525,3.590,3.652,3.710,3.759,3.799,3.826,
-3.843,3.850,3.853,3.858,3.875,3.911,3.973,4.064,4.183,4.325,4.483,4.645,4.803,4.946,5.069,5.169,
-5.245,5.299,5.335,5.354,5.357,5.344,5.313,5.264,5.199,5.119,5.034,4.951,4.881,4.834,4.816,4.828,
-4.864,4.916,4.969,5.010,5.024,5.004,4.948,4.861,4.754,4.640,4.536,4.455,4.405,4.390,4.407,4.449,
-4.504,4.563,4.614,4.651,4.671,4.676,4.668,4.654,4.639,4.628,4.624,4.627,4.635,4.646,4.653,4.652,
-4.638,4.607,4.555,4.482,4.389,4.279,4.157,4.028,3.899,3.777,3.665,3.568,3.485,3.414,3.351,3.291,
-3.229,3.161,3.084,2.996,2.900,2.795,2.685,2.572,2.456,2.338,2.216,2.089,1.957,1.820,1.679,1.536,
-1.394,1.256,1.126,1.005,.896,.800,.716,.646,.592,.554,.535,.536,.557,.598,.655,.723,
-.794,.863,.921,.964,.988,.994,.983,.958,.924,.885,.846,.809,.778,.754,.740,.736,
-.744,.764,.797,.837,.882,.924,.956,.969,.958,.920,.855,.769,.672,.575,.493,.437,
-.417,.438,.500,.596,.718,.853,.989,1.113,1.217,1.293,1.341,1.361,1.359,1.338,1.308,1.274,
-1.242,1.216,1.198,1.189,1.187,1.190,1.196,1.202,1.207,1.208,1.206,1.200,1.191,1.179,1.164,1.146,
-1.124,1.098,1.069,1.037,1.007,.983,.969,.970,.989,1.027,1.079,1.139,1.197,1.244,1.269,1.264,
-1.226,1.158,1.065,.958,.850,.751,.672,.615,.583,.571,.572,.582,.596,.613,.639,.682,
-.752,.862,1.019,1.227,1.483,1.777,2.093,2.412,2.711,2.971,3.176,3.316,3.385,3.387,3.329,3.222,
-3.076,2.905,2.719,2.525,2.330,2.136,1.944,1.756,1.570,1.387,1.207,1.030,.854,.678,.497,.305,
-.091,-.152,-.435,-.766,-1.145,-1.571,-2.032,-2.511,-2.986,-3.432,-3.827,-4.151,-4.395,-4.560,-4.657,-4.707,
--4.736,-4.771,-4.837,-4.951,-5.119,-5.339,-5.596,-5.871,-6.140,-6.383,-6.582,-6.727,-6.814,-6.849,-6.839,-6.799,
--6.742,-6.682,-6.631,-6.602,-6.601,-6.638,-6.717,-6.841,-7.008,-7.215,-7.453,-7.709,-7.970,-8.222,-8.455,-8.660,
--8.835,-8.986,-9.120,-9.246,-9.374,-9.509,-9.651,-9.794,-9.927,-10.037,-10.110,-10.139,-10.119,-10.058,-9.965,-9.859,
--9.760,-9.685,-9.650,-9.664,-9.729,-9.844,-10.003,-10.199,-10.428,-10.686,-10.973,-11.290,-11.639,-12.020,-12.431,-12.864,
--13.312,-13.762,-14.203,-14.627,-15.027,-15.400,-15.747,-16.069,-16.371,-16.652,-16.913,-17.148,-17.353,-17.523,-17.654,-17.749,
--17.813,-17.857,-17.897,-17.947,-18.024,-18.137,-18.291,-18.484,-18.707,-18.947,-19.190,-19.422,-19.637,-19.833,-20.016,-20.198,
--20.397,-20.631,-20.918,-21.272,-21.699,-22.199,-22.765,-23.385,-24.040,-24.711,-25.377,-26.018,-26.617,-27.161,-27.640,-28.048,
--28.385,-28.653,-28.857,-29.007,-29.114,-29.192,-29.252,-29.307,-29.367,-29.439,-29.528,-29.632,-29.748,-29.870,-29.989,-30.094,
--30.177,-30.229,-30.246,-30.223,-30.163,-30.071,-29.954,-29.823,-29.690,-29.566,-29.461,-29.382,-29.335,-29.320,-29.333,-29.369,
--29.421,-29.480,-29.539,-29.593,-29.639,-29.674,-29.699,-29.716,-29.727,-29.732,-29.733,-29.728,-29.718,-29.701,-29.676,-29.642,
--29.598,-29.545,-29.482,-29.409,-29.324,-29.226,-29.112,-28.979,-28.827,-28.656,-28.466,-28.261,-28.048,-27.832,-27.620,-27.420,
--27.237,-27.076,-26.939,-26.826,-26.738,-26.670,-26.621,-26.585,-26.559,-26.540,-26.524,-26.509,-26.494,-26.481,-26.470,-26.462,
--26.459,-26.459,-26.457,-26.448,-26.418,-26.357,-26.251,-26.086,-25.855,-25.556,-25.194,-24.781,-24.338,-23.887,-23.454,-23.062,
--22.731,-22.471,-22.286,-22.171,-22.114,-22.098,-22.105,-22.115,-22.115,-22.091,-22.036,-21.946,-21.824,-21.671,-21.492,-21.295,
--21.084,-20.864,-20.638,-20.408,-20.172,-19.926,-19.666,-19.385,-19.078,-18.740,-18.369,-17.963,-17.526,-17.060,-16.567,-16.049,
--15.504,-14.929,-14.316,-13.659,-12.952,-12.194,-11.390,-10.551,-9.694,-8.842,-8.015,-7.233,-6.509,-5.846,-5.240,-4.679,
--4.148,-3.631,-3.112,-2.583,-2.043,-1.494,-.945,-.406,.115,.607,1.064,1.481,1.850,2.163,2.413,2.590,
-2.691,2.720,2.692,2.638,2.601,2.636,2.800,3.145,3.706,4.496,5.498,6.671,7.946,9.245,10.487,11.603,
-12.548,13.303,13.877,14.306,14.638,14.930,15.228,15.570,15.973,16.439,16.955,17.504,18.068,18.633,19.195,19.756,
-20.324,20.907,21.506,22.118,22.732,23.328,23.889,24.397,24.843,25.226,25.555,25.846,26.116,26.381,26.647,26.914,
-27.170,27.396,27.570,27.671,27.683,27.598,27.419,27.155,26.822,26.439,26.023,25.594,25.168,24.764,24.399,24.096,
-23.878,23.771,23.798,23.976,24.314,24.808,25.443,26.189,27.013,27.874,28.735,29.567,30.349,31.069,31.729,32.336,
-32.901,33.436,33.950,34.449,34.936,35.411,35.871,36.317,36.749,37.168,37.577,37.979,38.374,38.762,39.140,39.505,
-39.854,40.185,40.501,40.807,41.111,41.422,41.746,42.088,42.446,42.816,43.189,43.555,43.907,44.240,44.558,44.867,
-45.181,45.513,45.873,46.266,46.690,47.134,47.583,48.017,48.424,48.794,49.132,49.451,49.774,50.128,50.537,51.017,
-51.566,52.170,52.797,53.406,53.952,54.399,54.724,54.923,55.015,55.036,55.032,55.052,55.136,55.307,55.568,55.904,
-56.281,56.661,57.008,57.296,57.516,57.678,57.808,57.940,58.108,58.338,58.640,59.008,59.417,59.834,60.220,60.541,
-60.776,60.915,60.967,60.950,60.889,60.807,60.721,60.638,60.553,60.455,60.330,60.163,59.949,59.694,59.410,59.121,
-58.852,58.630,58.474,58.394,58.392,58.459,58.581,58.739,58.916,59.095,59.262,59.410,59.530,59.620,59.675,59.694,
-59.678,59.631,59.562,59.481,59.403,59.344,59.318,59.334,59.393,59.493,59.620,59.760,59.894,60.006,60.084,60.124,
-60.126,60.094,60.038,59.964,59.879,59.785,59.682,59.568,59.443,59.308,59.167,59.027,58.896,58.781,58.686,58.606,
-58.533,58.451,58.343,58.192,57.989,57.731,57.427,57.093,56.753,56.432,56.148,55.912,55.722,55.565,55.417,55.250,
-55.037,54.757,54.403,53.980,53.507,53.014,52.532,52.094,51.722,51.432,51.223,51.086,51.003,50.952,50.914,50.871,
-50.816,50.743,50.657,50.560,50.458,50.352,50.243,50.126,49.997,49.849,49.682,49.495,49.294,49.088,48.886,48.697,
-48.530,48.388,48.269,48.300,48.234,48.163,48.079,47.978,47.859,47.725,47.581,47.432,47.281,47.131,46.980,46.826,
-46.665,46.494,46.310,46.114,45.909,45.698,45.486,45.279,45.077,44.883,44.696,44.513,44.331,44.150,43.969,43.786,
-43.604,43.421,43.236,43.044,42.842,42.622,42.379,42.111,41.818,41.505,41.182,40.861,40.554,40.271,40.021,39.804,
-39.620,39.459,39.313,39.172,39.028,38.876,38.718,38.554,38.391,38.232,38.079,37.931,37.782,37.623,37.443,37.231,
-36.979,36.678,36.328,35.930,35.490,35.017,34.521,34.013,33.504,33.006,32.530,32.086,31.683,31.329,31.027,30.778,
-30.578,30.418,30.285,30.166,30.045,29.909,29.750,29.563,29.350,29.116,28.869,28.619,28.371,28.130,27.896,27.666,
-27.436,27.200,26.957,26.708,26.458,26.214,25.985,25.777,25.594,25.431,25.280,25.126,24.951,24.738,24.473,24.148,
-23.764,23.334,22.875,22.411,21.965,21.560,21.208,20.917,20.681,20.489,20.324,20.166,19.997,19.805,19.584,19.334,
-19.062,18.779,18.497,18.225,17.970,17.733,17.510,17.296,17.080,16.854,16.613,16.353,16.076,15.786,15.491,15.197,
-14.912,14.641,14.386,14.148,13.926,13.718,13.526,13.348,13.188,13.046,12.925,12.824,12.739,12.664,12.590,12.507,
-12.404,12.274,12.112,11.918,11.698,11.460,11.214,10.970,10.736,10.517,10.310,10.113,9.918,9.719,9.511,9.291,
-9.062,8.830,8.602,8.388,8.196,8.029,7.886,7.764,7.652,7.540,7.415,7.267,7.088,6.876,6.631,6.360,
-6.069,5.768,5.467,5.175,4.900,4.646,4.416,4.208,4.019,3.845,3.678,3.511,3.338,3.151,2.948,2.728,
-2.493,2.248,2.001,1.760,1.533,1.324,1.137,.971,.821,.681,.543,.398,.241,.065,-.129,-.342,
--.569,-.805,-1.046,-1.284,-1.513,-1.730,-1.930,-2.112,-2.274,-2.419,-2.551,-2.674,-2.796,-2.924,-3.064,-3.219,
--3.390,-3.573,-3.760,-3.942,-4.106,-4.244,-4.350,-4.424,-4.472,-4.504,-4.536,-4.582,-4.656,-4.768,-4.919,-5.107,
--5.322,-5.552,-5.784,-6.006,-6.212,-6.398,-6.566,-6.721,-6.868,-7.012,-7.156,-7.303,-7.449,-7.594,-7.736,-7.874,
--8.011,-8.150,-8.297,-8.456,-8.631,-8.823,-9.027,-9.237,-9.445,-9.640,-9.815,-9.965,-10.088,-10.185,-10.263,-10.328,
--10.388,-10.449,-10.516,-10.590,-10.670,-10.755,-10.840,-10.921,-10.998,-11.069,-11.134,-11.195,-11.255,-11.316,-11.379,-11.446,
--11.517,-11.591,-11.668,-11.744,-11.821,-11.899,-11.977,-12.059,-12.145,-12.239,-12.339,-12.447,-12.559,-12.674,-12.787,-12.894,
--12.993,-13.080,-13.157,-13.225,-13.288,-13.351,-13.416,-13.485,-13.559,-13.636,-13.712,-13.786,-13.854,-13.917,-13.978,-14.042,
--14.117,-14.209,-14.321,-14.455,-14.604,-14.759,-14.906,-15.030,-15.115,-15.150,-15.131,-15.059,-14.944,-14.800,-14.645,-14.499,
--14.379,-14.299,-14.268,-14.290,-14.361,-14.475,-14.620,-14.781,-14.942,-15.085,-15.193,-15.249,-15.243,-15.168,-15.027,-14.830,
--14.595,-14.346,-14.112,-13.919,-13.787,-13.727,-13.740,-13.811,-13.920,-14.037,-14.135,-14.193,-14.199,-14.154,-14.073,-13.979,
--13.899,-13.861,-13.882,-13.971,-14.122,-14.320,-14.542,-14.765,-14.970,-15.146,-15.295,-15.425,-15.556,-15.704,-15.887,-16.108,
--16.364,-16.639,-16.906,-17.139,-17.311,-17.401,-17.402,-17.318,-17.161,-16.955,-16.724,-16.492,-16.275,-16.083,-15.918,-15.774,
--15.642,-15.512,-15.375,-15.225,-15.062,-14.887,-14.707,-14.527,-14.351,-14.184,-14.026,-13.877,-13.736,-13.601,-13.468,-13.338,
--13.207,-13.077,-12.946,-12.818,-12.693,-12.575,-12.466,-12.371,-12.290,-12.225,-12.175,-12.134,-12.096,-12.055,-12.004,-11.937,
--11.857,-11.766,-11.675,-11.597,-11.545,-11.530,-11.559,-11.629,-11.734,-11.857,-11.982,-12.089,-12.163,-12.193,-12.177,-12.122,
--12.038,-11.939,-11.839,-11.748,-11.672,-11.610,-11.556,-11.500,-11.431,-11.343,-11.228,-11.088,-10.925,-10.747,-10.563,-10.385,
--10.222,-10.083,-9.974,-9.902,-9.871,-9.882,-9.936,-10.033,-10.169,-10.339,-10.538,-10.758,-10.992,-11.232,-11.474,-11.714,
--11.949,-12.176,-12.394,-12.595,-12.774,-12.918,-13.015,-13.048,-13.004,-12.869,-12.636,-12.302,-11.869,-11.346,-10.747,-10.092,
--9.401,-8.698,-8.010,-7.362,-6.776,-6.275,-5.874,-5.584,-5.405,-5.329,-5.340,-5.413,-5.518,-5.624,-5.702,-5.732,
--5.700,-5.605,-5.454,-5.264,-5.052,-4.837,-4.634,-4.450,-4.288,-4.140,-3.997,-3.848,-3.685,-3.503,-3.302,-3.088,
--2.869,-2.654,-2.449,-2.258,-2.079,-1.907,-1.733,-1.550,-1.354,-1.144,-.925,-.706,-.501,-.320,-.177,-.078,
--.023,-.011,-.030,-.071,-.119,-.163,-.193,-.202,-.190,-.156,-.104,-.040,.033,.108,.183,.254,
-.321,.384,.445,.507,.571,.641,.720,.809,.909,1.019,1.137,1.262,1.391,1.523,1.657,1.792,
-1.929,2.068,2.211,2.357,2.505,2.650,2.791,2.920,3.034,3.128,3.199,3.246,3.271,3.275,3.263,3.240,
-3.211,3.182,3.156,3.137,3.127,3.126,3.134,3.149,3.170,3.192,3.214,3.235,3.252,3.268,3.282,3.296,
-3.314,3.337,3.366,3.402,3.444,3.490,3.540,3.592,3.645,3.699,3.754,3.811,3.869,3.926,3.981,4.031,
-4.073,4.107,4.134,4.157,4.183,4.220,4.275,4.355,4.463,4.598,4.756,4.927,5.100,5.265,5.413,5.538,
-5.638,5.715,5.773,5.816,5.849,5.873,5.888,5.889,5.875,5.844,5.795,5.733,5.664,5.598,5.542,5.503,
-5.482,5.478,5.481,5.481,5.466,5.427,5.359,5.261,5.141,5.010,4.881,4.768,4.683,4.630,4.612,4.623,
-4.657,4.704,4.754,4.802,4.842,4.873,4.896,4.914,4.928,4.941,4.952,4.962,4.970,4.975,4.977,4.974,
-4.967,4.954,4.933,4.901,4.856,4.794,4.713,4.613,4.495,4.365,4.228,4.091,3.961,3.842,3.736,3.642,
-3.557,3.476,3.394,3.306,3.210,3.106,2.995,2.878,2.760,2.641,2.521,2.400,2.277,2.150,2.016,1.877,
-1.734,1.589,1.445,1.307,1.177,1.059,.952,.858,.778,.710,.657,.618,.594,.585,.592,.611,
-.641,.679,.720,.763,.804,.842,.876,.907,.933,.954,.968,.972,.967,.950,.923,.890,
-.856,.827,.809,.806,.820,.848,.883,.917,.940,.943,.922,.876,.811,.738,.671,.625,
-.613,.645,.727,.856,1.027,1.229,1.449,1.675,1.894,2.099,2.281,2.438,2.567,2.670,2.746,2.798,
-2.828,2.837,2.828,2.803,2.765,2.716,2.659,2.595,2.525,2.452,2.377,2.300,2.223,2.148,2.077,2.011,
-1.951,1.898,1.853,1.815,1.785,1.763,1.752,1.754,1.769,1.798,1.840,1.891,1.946,1.997,2.036,2.056,
-2.051,2.020,1.967,1.899,1.825,1.757,1.705,1.676,1.674,1.697,1.741,1.802,1.872,1.952,2.041,2.145,
-2.273,2.433,2.634,2.881,3.171,3.497,3.847,4.203,4.547,4.861,5.133,5.351,5.513,5.619,5.673,5.680,
-5.648,5.582,5.484,5.359,5.206,5.029,4.829,4.609,4.375,4.131,3.885,3.640,3.401,3.168,2.940,2.709,
-2.467,2.202,1.899,1.546,1.133,.655,.115,-.478,-1.106,-1.744,-2.365,-2.940,-3.447,-3.871,-4.206,-4.459,
--4.646,-4.791,-4.918,-5.051,-5.206,-5.389,-5.597,-5.819,-6.036,-6.229,-6.383,-6.485,-6.533,-6.531,-6.490,-6.424,
--6.349,-6.279,-6.223,-6.190,-6.184,-6.206,-6.259,-6.344,-6.462,-6.613,-6.797,-7.009,-7.242,-7.485,-7.728,-7.959,
--8.172,-8.361,-8.528,-8.677,-8.816,-8.949,-9.081,-9.209,-9.328,-9.425,-9.488,-9.505,-9.468,-9.376,-9.237,-9.067,
--8.886,-8.717,-8.584,-8.503,-8.485,-8.535,-8.648,-8.818,-9.034,-9.286,-9.568,-9.874,-10.204,-10.556,-10.930,-11.326,
--11.739,-12.164,-12.595,-13.025,-13.449,-13.863,-14.268,-14.664,-15.054,-15.440,-15.820,-16.192,-16.549,-16.884,-17.189,-17.458,
--17.691,-17.889,-18.061,-18.218,-18.373,-18.538,-18.721,-18.925,-19.148,-19.382,-19.615,-19.836,-20.036,-20.209,-20.359,-20.494,
--20.631,-20.787,-20.983,-21.239,-21.567,-21.975,-22.463,-23.023,-23.641,-24.299,-24.975,-25.650,-26.301,-26.913,-27.472,-27.967,
--28.395,-28.753,-29.045,-29.278,-29.459,-29.601,-29.715,-29.813,-29.905,-29.999,-30.101,-30.213,-30.334,-30.460,-30.584,-30.700,
--30.799,-30.874,-30.919,-30.929,-30.903,-30.844,-30.756,-30.647,-30.528,-30.410,-30.306,-30.225,-30.175,-30.161,-30.184,-30.238,
--30.316,-30.408,-30.504,-30.593,-30.669,-30.726,-30.762,-30.780,-30.783,-30.774,-30.759,-30.739,-30.718,-30.695,-30.671,-30.644,
--30.615,-30.582,-30.545,-30.501,-30.450,-30.387,-30.310,-30.213,-30.092,-29.944,-29.767,-29.562,-29.332,-29.084,-28.826,-28.568,
--28.318,-28.086,-27.879,-27.700,-27.554,-27.440,-27.356,-27.298,-27.260,-27.236,-27.220,-27.205,-27.188,-27.165,-27.137,-27.108,
--27.082,-27.066,-27.062,-27.072,-27.092,-27.110,-27.112,-27.077,-26.984,-26.816,-26.560,-26.214,-25.787,-25.297,-24.773,-24.248,
--23.756,-23.327,-22.982,-22.734,-22.580,-22.511,-22.508,-22.545,-22.600,-22.648,-22.673,-22.662,-22.610,-22.515,-22.382,-22.218,
--22.030,-21.827,-21.617,-21.406,-21.195,-20.988,-20.780,-20.568,-20.344,-20.101,-19.830,-19.526,-19.183,-18.799,-18.375,-17.912,
--17.412,-16.876,-16.303,-15.691,-15.039,-14.344,-13.610,-12.841,-12.048,-11.245,-10.449,-9.676,-8.940,-8.247,-7.600,-6.991,
--6.410,-5.844,-5.280,-4.711,-4.133,-3.547,-2.960,-2.381,-1.815,-1.270,-.748,-.252,.216,.646,1.029,1.348,
-1.586,1.730,1.779,1.746,1.664,1.585,1.577,1.710,2.052,2.647,3.512,4.630,5.948,7.384,8.843,10.227,
-11.457,12.478,13.271,13.851,14.259,14.556,14.803,15.054,15.346,15.696,16.101,16.549,17.021,17.505,17.997,18.504,
-19.040,19.621,20.257,20.949,21.680,22.423,23.142,23.800,24.368,24.833,25.198,25.484,25.721,25.945,26.183,26.448,
-26.738,27.031,27.291,27.478,27.553,27.491,27.282,26.936,26.477,25.944,25.379,24.823,24.310,23.864,23.503,23.236,
-23.071,23.012,23.067,23.244,23.548,23.982,24.541,25.212,25.972,26.791,27.638,28.481,29.295,30.062,30.775,31.435,
-32.050,32.631,33.190,33.734,34.268,34.792,35.304,35.800,36.279,36.738,37.179,37.605,38.017,38.417,38.804,39.176,
-39.530,39.864,40.178,40.476,40.765,41.057,41.363,41.691,42.049,42.436,42.846,43.267,43.686,44.089,44.469,44.823,
-45.155,45.477,45.803,46.148,46.521,46.927,47.361,47.810,48.260,48.695,49.105,49.488,49.852,50.215,50.597,51.019,
-51.493,52.018,52.578,53.145,53.678,54.136,54.485,54.706,54.801,54.797,54.736,54.676,54.673,54.772,55.000,55.360,
-55.825,56.353,56.890,57.382,57.790,58.092,58.293,58.420,58.514,58.622,58.785,59.028,59.358,59.759,60.200,60.637,
-61.028,61.337,61.543,61.639,61.634,61.547,61.401,61.215,61.007,60.783,60.546,60.292,60.022,59.737,59.447,59.167,
-58.916,58.714,58.576,58.511,58.518,58.590,58.711,58.862,59.024,59.180,59.320,59.437,59.529,59.595,59.637,59.656,
-59.654,59.634,59.599,59.556,59.516,59.492,59.495,59.535,59.616,59.737,59.888,60.052,60.211,60.345,60.439,60.485,
-60.480,60.433,60.353,60.255,60.151,60.048,59.948,59.850,59.748,59.636,59.511,59.373,59.226,59.078,58.938,58.811,
-58.700,58.600,58.502,58.392,58.257,58.086,57.873,57.621,57.339,57.041,56.744,56.462,56.201,55.962,55.735,55.506,
-55.257,54.971,54.638,54.257,53.834,53.387,52.939,52.515,52.135,51.816,51.563,51.373,51.236,51.136,51.057,50.983,
-50.902,50.809,50.701,50.580,50.450,50.314,50.172,50.024,49.869,49.704,49.531,49.350,49.167,48.989,48.823,48.675,
-48.551,48.450,48.369,48.300,48.539,48.444,48.319,48.164,47.985,47.789,47.590,47.399,47.224,47.069,46.932,46.807,
-46.682,46.549,46.395,46.216,46.011,45.783,45.541,45.294,45.051,44.821,44.607,44.409,44.224,44.046,43.869,43.687,
-43.497,43.295,43.079,42.850,42.604,42.343,42.064,41.768,41.457,41.136,40.813,40.498,40.202,39.936,39.709,39.524,
-39.381,39.273,39.192,39.126,39.063,38.995,38.918,38.827,38.724,38.610,38.485,38.347,38.192,38.010,37.794,37.533,
-37.221,36.853,36.432,35.964,35.460,34.934,34.402,33.877,33.375,32.905,32.478,32.100,31.776,31.509,31.300,31.146,
-31.040,30.971,30.926,30.886,30.833,30.750,30.622,30.443,30.210,29.930,29.614,29.278,28.939,28.610,28.302,28.018,
-27.757,27.513,27.277,27.040,26.797,26.546,26.288,26.028,25.774,25.531,25.303,25.087,24.876,24.659,24.425,24.160,
-23.858,23.516,23.140,22.742,22.339,21.950,21.594,21.283,21.021,20.807,20.629,20.470,20.313,20.140,19.938,19.703,
-19.436,19.147,18.849,18.558,18.287,18.045,17.835,17.652,17.488,17.329,17.164,16.981,16.774,16.542,16.288,16.019,
-15.743,15.469,15.202,14.944,14.696,14.455,14.219,13.987,13.761,13.544,13.342,13.160,13.001,12.867,12.754,12.651,
-12.549,12.435,12.297,12.130,11.933,11.712,11.477,11.244,11.024,10.828,10.661,10.520,10.395,10.276,10.147,9.996,
-9.818,9.610,9.378,9.135,8.894,8.668,8.466,8.295,8.150,8.026,7.910,7.788,7.649,7.481,7.280,7.044,
-6.777,6.486,6.179,5.867,5.557,5.258,4.978,4.720,4.489,4.285,4.105,3.945,3.798,3.653,3.500,3.330,
-3.135,2.911,2.662,2.392,2.111,1.832,1.567,1.324,1.109,.921,.755,.603,.454,.298,.126,-.064,
--.275,-.501,-.738,-.975,-1.208,-1.427,-1.631,-1.815,-1.980,-2.129,-2.264,-2.391,-2.517,-2.647,-2.789,-2.948,
--3.129,-3.332,-3.556,-3.795,-4.036,-4.269,-4.480,-4.657,-4.794,-4.889,-4.946,-4.976,-4.995,-5.016,-5.056,-5.125,
--5.227,-5.362,-5.525,-5.704,-5.890,-6.072,-6.245,-6.404,-6.551,-6.689,-6.822,-6.955,-7.092,-7.235,-7.384,-7.538,
--7.696,-7.859,-8.027,-8.202,-8.387,-8.582,-8.790,-9.008,-9.235,-9.467,-9.696,-9.918,-10.126,-10.316,-10.487,-10.637,
--10.768,-10.883,-10.987,-11.082,-11.174,-11.263,-11.352,-11.440,-11.525,-11.604,-11.676,-11.737,-11.787,-11.827,-11.860,-11.889,
--11.920,-11.956,-12.002,-12.059,-12.127,-12.203,-12.284,-12.367,-12.448,-12.528,-12.605,-12.683,-12.763,-12.847,-12.937,-13.030,
--13.125,-13.217,-13.305,-13.384,-13.457,-13.525,-13.592,-13.664,-13.744,-13.833,-13.932,-14.035,-14.136,-14.230,-14.312,-14.382,
--14.442,-14.501,-14.565,-14.644,-14.741,-14.855,-14.979,-15.099,-15.199,-15.261,-15.272,-15.225,-15.121,-14.973,-14.799,-14.624,
--14.474,-14.371,-14.332,-14.366,-14.472,-14.643,-14.864,-15.115,-15.374,-15.621,-15.834,-15.997,-16.097,-16.124,-16.076,-15.959,
--15.785,-15.571,-15.340,-15.117,-14.925,-14.781,-14.694,-14.662,-14.673,-14.705,-14.735,-14.740,-14.704,-14.623,-14.505,-14.369,
--14.242,-14.155,-14.130,-14.181,-14.309,-14.499,-14.723,-14.949,-15.145,-15.290,-15.374,-15.405,-15.404,-15.402,-15.434,-15.527,
--15.697,-15.943,-16.247,-16.577,-16.892,-17.153,-17.326,-17.393,-17.349,-17.207,-16.991,-16.732,-16.463,-16.210,-15.993,-15.820,
--15.690,-15.597,-15.529,-15.476,-15.428,-15.380,-15.329,-15.276,-15.221,-15.164,-15.105,-15.041,-14.970,-14.890,-14.798,-14.694,
--14.578,-14.453,-14.322,-14.187,-14.051,-13.919,-13.793,-13.678,-13.575,-13.488,-13.415,-13.354,-13.300,-13.243,-13.174,-13.084,
--12.968,-12.825,-12.660,-12.485,-12.317,-12.174,-12.071,-12.020,-12.024,-12.077,-12.162,-12.261,-12.349,-12.409,-12.425,-12.394,
--12.318,-12.210,-12.086,-11.960,-11.848,-11.755,-11.683,-11.625,-11.571,-11.509,-11.426,-11.315,-11.175,-11.008,-10.824,-10.635,
--10.455,-10.296,-10.173,-10.094,-10.066,-10.092,-10.172,-10.305,-10.484,-10.703,-10.955,-11.231,-11.522,-11.821,-12.122,-12.421,
--12.715,-13.002,-13.279,-13.542,-13.783,-13.993,-14.160,-14.267,-14.299,-14.240,-14.077,-13.801,-13.408,-12.900,-12.283,-11.573,
--10.790,-9.958,-9.109,-8.276,-7.492,-6.792,-6.202,-5.743,-5.426,-5.247,-5.191,-5.231,-5.331,-5.453,-5.559,-5.620,
--5.617,-5.544,-5.409,-5.227,-5.020,-4.811,-4.619,-4.452,-4.312,-4.192,-4.080,-3.961,-3.823,-3.660,-3.472,-3.266,
--3.053,-2.844,-2.648,-2.470,-2.307,-2.151,-1.990,-1.815,-1.616,-1.391,-1.144,-.886,-.631,-.395,-.193,-.035,
-.078,.147,.180,.187,.181,.171,.164,.165,.174,.191,.217,.252,.296,.350,.415,.491,
-.575,.664,.753,.837,.913,.981,1.042,1.102,1.168,1.245,1.340,1.455,1.590,1.741,1.903,2.067,
-2.229,2.382,2.525,2.657,2.780,2.897,3.011,3.122,3.231,3.335,3.430,3.509,3.570,3.607,3.618,3.604,
-3.567,3.513,3.448,3.381,3.319,3.270,3.241,3.234,3.250,3.289,3.344,3.410,3.481,3.550,3.612,3.664,
-3.706,3.738,3.763,3.784,3.804,3.826,3.851,3.880,3.914,3.951,3.994,4.041,4.093,4.150,4.209,4.269,
-4.327,4.379,4.426,4.467,4.505,4.545,4.595,4.661,4.749,4.861,4.996,5.148,5.309,5.468,5.614,5.742,
-5.846,5.929,5.996,6.054,6.110,6.170,6.234,6.301,6.364,6.415,6.447,6.455,6.438,6.399,6.344,6.281,
-6.218,6.157,6.102,6.048,5.990,5.921,5.836,5.732,5.612,5.481,5.349,5.225,5.117,5.031,4.969,4.929,
-4.905,4.892,4.884,4.880,4.878,4.880,4.890,4.910,4.941,4.983,5.032,5.084,5.133,5.175,5.210,5.237,
-5.259,5.279,5.299,5.318,5.333,5.337,5.324,5.286,5.217,5.116,4.987,4.836,4.673,4.509,4.353,4.212,
-4.086,3.974,3.870,3.768,3.662,3.546,3.421,3.287,3.147,3.006,2.867,2.732,2.601,2.473,2.344,2.213,
-2.076,1.934,1.790,1.646,1.507,1.375,1.256,1.150,1.057,.977,.909,.850,.801,.760,.726,.700,
-.681,.669,.665,.670,.684,.708,.744,.791,.849,.912,.976,1.034,1.079,1.104,1.107,1.086,
-1.046,.994,.941,.896,.867,.857,.866,.888,.914,.933,.939,.927,.899,.862,.828,.813,
-.831,.892,1.003,1.165,1.372,1.614,1.879,2.157,2.435,2.707,2.967,3.211,3.438,3.645,3.827,3.980,
-4.099,4.180,4.221,4.222,4.186,4.119,4.027,3.919,3.801,3.680,3.557,3.435,3.315,3.196,3.079,2.968,
-2.864,2.772,2.696,2.639,2.605,2.593,2.601,2.627,2.666,2.714,2.766,2.817,2.863,2.900,2.925,2.937,
-2.936,2.923,2.904,2.883,2.869,2.866,2.881,2.918,2.975,3.049,3.138,3.234,3.334,3.438,3.548,3.671,
-3.816,3.993,4.208,4.466,4.762,5.087,5.426,5.759,6.070,6.343,6.568,6.742,6.870,6.960,7.023,7.069,
-7.104,7.130,7.145,7.139,7.104,7.030,6.910,6.742,6.527,6.273,5.989,5.688,5.381,5.076,4.780,4.493,
-4.213,3.933,3.640,3.323,2.968,2.562,2.096,1.567,.977,.339,-.331,-1.009,-1.670,-2.290,-2.850,-3.336,
--3.747,-4.088,-4.372,-4.614,-4.829,-5.030,-5.220,-5.397,-5.555,-5.683,-5.771,-5.812,-5.808,-5.765,-5.697,-5.619,
--5.549,-5.501,-5.481,-5.494,-5.538,-5.606,-5.694,-5.797,-5.915,-6.049,-6.203,-6.380,-6.581,-6.803,-7.039,-7.280,
--7.513,-7.729,-7.922,-8.089,-8.233,-8.361,-8.479,-8.593,-8.705,-8.810,-8.900,-8.963,-8.988,-8.967,-8.897,-8.783,
--8.640,-8.485,-8.340,-8.227,-8.163,-8.157,-8.213,-8.328,-8.491,-8.691,-8.916,-9.158,-9.410,-9.670,-9.940,-10.222,
--10.522,-10.840,-11.178,-11.537,-11.914,-12.308,-12.716,-13.137,-13.570,-14.015,-14.467,-14.926,-15.385,-15.837,-16.275,-16.693,
--17.083,-17.444,-17.774,-18.079,-18.363,-18.633,-18.897,-19.158,-19.416,-19.671,-19.916,-20.144,-20.349,-20.527,-20.678,-20.808,
--20.928,-21.053,-21.202,-21.394,-21.645,-21.968,-22.369,-22.848,-23.400,-24.011,-24.665,-25.343,-26.025,-26.690,-27.321,-27.903,
--28.424,-28.877,-29.260,-29.573,-29.823,-30.018,-30.170,-30.291,-30.393,-30.488,-30.584,-30.686,-30.797,-30.916,-31.038,-31.159,
--31.272,-31.370,-31.448,-31.501,-31.525,-31.521,-31.488,-31.431,-31.355,-31.269,-31.182,-31.107,-31.052,-31.027,-31.037,-31.082,
--31.161,-31.265,-31.382,-31.502,-31.611,-31.700,-31.762,-31.795,-31.801,-31.785,-31.754,-31.713,-31.670,-31.628,-31.589,-31.555,
--31.522,-31.491,-31.459,-31.423,-31.381,-31.331,-31.269,-31.191,-31.092,-30.967,-30.812,-30.624,-30.403,-30.153,-29.880,-29.592,
--29.300,-29.016,-28.750,-28.512,-28.309,-28.148,-28.028,-27.950,-27.907,-27.894,-27.900,-27.915,-27.929,-27.934,-27.923,-27.896,
--27.857,-27.812,-27.773,-27.748,-27.745,-27.764,-27.798,-27.832,-27.845,-27.811,-27.705,-27.508,-27.209,-26.812,-26.332,-25.800,
--25.251,-24.724,-24.256,-23.875,-23.597,-23.424,-23.347,-23.345,-23.392,-23.458,-23.519,-23.554,-23.549,-23.497,-23.399,-23.260,
--23.086,-22.889,-22.676,-22.456,-22.237,-22.024,-21.817,-21.618,-21.422,-21.223,-21.013,-20.781,-20.519,-20.218,-19.874,-19.482,
--19.044,-18.562,-18.039,-17.478,-16.884,-16.258,-15.603,-14.924,-14.227,-13.517,-12.805,-12.101,-11.411,-10.743,-10.096,-9.468,
--8.851,-8.237,-7.618,-6.990,-6.354,-5.717,-5.089,-4.480,-3.902,-3.357,-2.844,-2.358,-1.888,-1.428,-.977,-.545,
--.149,.188,.443,.599,.661,.650,.616,.625,.754,1.077,1.651,2.502,3.618,4.951,6.421,7.927,
-9.371,10.665,11.753,12.612,13.256,13.728,14.087,14.394,14.700,15.039,15.421,15.842,16.286,16.737,17.189,17.646,
-18.127,18.657,19.258,19.944,20.710,21.531,22.365,23.161,23.868,24.448,24.886,25.191,25.395,25.545,25.691,25.873,
-26.111,26.400,26.708,26.988,27.180,27.235,27.118,26.820,26.358,25.775,25.128,24.481,23.893,23.409,23.057,22.848,
-22.776,22.829,22.992,23.249,23.593,24.017,24.520,25.096,25.739,26.437,27.171,27.921,28.667,29.392,30.085,30.744,
-31.371,31.974,32.562,33.143,33.721,34.296,34.864,35.420,35.956,36.469,36.955,37.417,37.855,38.274,38.676,39.060,
-39.427,39.774,40.100,40.407,40.699,40.986,41.278,41.588,41.927,42.301,42.709,43.146,43.598,44.050,44.485,44.892,
-45.263,45.602,45.915,46.219,46.528,46.857,47.214,47.603,48.016,48.444,48.875,49.297,49.707,50.106,50.505,50.916,
-51.354,51.825,52.328,52.848,53.358,53.823,54.208,54.484,54.637,54.673,54.620,54.525,54.443,54.432,54.540,54.793,
-55.191,55.709,56.300,56.906,57.468,57.940,58.296,58.534,58.676,58.763,58.841,58.953,59.130,59.382,59.701,60.058,
-60.417,60.738,60.986,61.141,61.196,61.158,61.044,60.877,60.677,60.462,60.242,60.022,59.801,59.581,59.365,59.159,
-58.973,58.818,58.702,58.632,58.607,58.621,58.662,58.718,58.779,58.837,58.891,58.945,59.004,59.076,59.163,59.265,
-59.378,59.492,59.598,59.688,59.761,59.819,59.871,59.928,60.002,60.100,60.224,60.368,60.517,60.654,60.761,60.824,
-60.835,60.795,60.712,60.601,60.478,60.355,60.243,60.144,60.054,59.964,59.864,59.746,59.606,59.445,59.268,59.085,
-58.906,58.739,58.587,58.449,58.320,58.191,58.053,57.897,57.719,57.516,57.291,57.047,56.787,56.514,56.226,55.921,
-55.596,55.246,54.870,54.471,54.056,53.635,53.223,52.835,52.483,52.176,51.920,51.712,51.546,51.412,51.298,51.194,
-51.089,50.977,50.854,50.719,50.572,50.415,50.249,50.077,49.899,49.720,49.541,49.370,49.210,49.067,48.947,48.850,
-48.775,48.716,48.665,48.610,48.539,48.729,48.572,48.375,48.146,47.899,47.650,47.418,47.215,47.050,46.921,46.822,
-46.738,46.650,46.543,46.401,46.218,45.995,45.739,45.465,45.189,44.924,44.680,44.462,44.266,44.084,43.902,43.707,
-43.489,43.240,42.959,42.649,42.317,41.972,41.624,41.283,40.955,40.647,40.363,40.107,39.883,39.693,39.541,39.428,
-39.351,39.309,39.293,39.296,39.308,39.318,39.316,39.295,39.246,39.165,39.045,38.880,38.664,38.393,38.060,37.665,
-37.209,36.698,36.143,35.561,34.971,34.394,33.850,33.354,32.919,32.552,32.254,32.022,31.848,31.725,31.641,31.586,
-31.549,31.520,31.488,31.443,31.374,31.272,31.130,30.944,30.712,30.438,30.129,29.792,29.440,29.082,28.728,28.384,
-28.053,27.734,27.426,27.124,26.825,26.527,26.229,25.936,25.649,25.376,25.119,24.881,24.661,24.452,24.248,24.038,
-23.812,23.562,23.285,22.980,22.654,22.316,21.978,21.652,21.348,21.071,20.820,20.591,20.375,20.162,19.942,19.709,
-19.461,19.203,18.941,18.689,18.456,18.253,18.082,17.943,17.829,17.729,17.629,17.517,17.383,17.223,17.035,16.824,
-16.598,16.366,16.133,15.904,15.679,15.455,15.226,14.989,14.741,14.481,14.215,13.949,13.691,13.448,13.222,13.013,
-12.816,12.620,12.417,12.198,11.962,11.711,11.455,11.209,10.990,10.811,10.683,10.607,10.574,10.570,10.573,10.562,
-10.517,10.428,10.289,10.105,9.890,9.660,9.429,9.212,9.015,8.840,8.680,8.526,8.367,8.193,7.995,7.769,
-7.516,7.237,6.936,6.619,6.291,5.956,5.620,5.289,4.972,4.677,4.411,4.180,3.987,3.830,3.698,3.581,
-3.462,3.324,3.156,2.949,2.704,2.427,2.132,1.835,1.551,1.294,1.070,.878,.712,.559,.407,.245,
-.064,-.140,-.362,-.597,-.835,-1.067,-1.283,-1.479,-1.652,-1.803,-1.935,-2.054,-2.165,-2.274,-2.388,-2.515,
--2.661,-2.832,-3.032,-3.263,-3.521,-3.801,-4.092,-4.379,-4.649,-4.887,-5.086,-5.240,-5.353,-5.434,-5.494,-5.547,
--5.606,-5.679,-5.770,-5.877,-5.994,-6.112,-6.224,-6.324,-6.410,-6.487,-6.559,-6.638,-6.731,-6.848,-6.991,-7.163,
--7.359,-7.572,-7.796,-8.021,-8.242,-8.456,-8.663,-8.865,-9.067,-9.276,-9.496,-9.731,-9.980,-10.242,-10.510,-10.775,
--11.030,-11.264,-11.473,-11.652,-11.802,-11.925,-12.026,-12.112,-12.186,-12.252,-12.311,-12.360,-12.396,-12.419,-12.427,-12.424,
--12.414,-12.406,-12.408,-12.426,-12.466,-12.526,-12.603,-12.688,-12.775,-12.854,-12.923,-12.979,-13.027,-13.072,-13.121,-13.181,
--13.253,-13.337,-13.430,-13.525,-13.618,-13.705,-13.787,-13.866,-13.949,-14.041,-14.146,-14.262,-14.385,-14.507,-14.616,-14.705,
--14.768,-14.806,-14.824,-14.834,-14.848,-14.877,-14.925,-14.992,-15.068,-15.138,-15.186,-15.196,-15.160,-15.077,-14.957,-14.819,
--14.687,-14.587,-14.541,-14.566,-14.669,-14.849,-15.092,-15.382,-15.696,-16.011,-16.303,-16.554,-16.748,-16.873,-16.924,-16.901,
--16.809,-16.660,-16.470,-16.261,-16.053,-15.866,-15.716,-15.610,-15.546,-15.514,-15.496,-15.472,-15.426,-15.346,-15.232,-15.095,
--14.956,-14.841,-14.778,-14.786,-14.873,-15.033,-15.243,-15.469,-15.672,-15.818,-15.881,-15.854,-15.750,-15.595,-15.432,-15.305,
--15.251,-15.296,-15.444,-15.682,-15.976,-16.283,-16.558,-16.761,-16.865,-16.860,-16.754,-16.570,-16.340,-16.096,-15.869,-15.682,
--15.547,-15.466,-15.433,-15.438,-15.469,-15.515,-15.567,-15.618,-15.666,-15.706,-15.737,-15.756,-15.761,-15.750,-15.722,-15.677,
--15.618,-15.545,-15.461,-15.367,-15.263,-15.150,-15.028,-14.898,-14.765,-14.634,-14.512,-14.403,-14.311,-14.236,-14.173,-14.113,
--14.044,-13.954,-13.838,-13.691,-13.520,-13.336,-13.156,-12.998,-12.876,-12.799,-12.767,-12.771,-12.795,-12.818,-12.822,-12.792,
--12.720,-12.607,-12.463,-12.301,-12.139,-11.989,-11.861,-11.758,-11.675,-11.604,-11.534,-11.453,-11.353,-11.229,-11.083,-10.922,
--10.755,-10.596,-10.456,-10.348,-10.283,-10.267,-10.305,-10.399,-10.547,-10.746,-10.990,-11.273,-11.586,-11.923,-12.277,-12.640,
--13.007,-13.373,-13.731,-14.073,-14.392,-14.675,-14.912,-15.087,-15.187,-15.198,-15.108,-14.906,-14.585,-14.143,-13.580,-12.902,
--12.123,-11.261,-10.342,-9.399,-8.468,-7.589,-6.803,-6.143,-5.632,-5.281,-5.085,-5.023,-5.064,-5.165,-5.284,-5.381,
--5.428,-5.409,-5.324,-5.184,-5.009,-4.824,-4.648,-4.495,-4.369,-4.264,-4.168,-4.065,-3.942,-3.788,-3.605,-3.398,
--3.179,-2.963,-2.761,-2.580,-2.418,-2.268,-2.115,-1.947,-1.749,-1.517,-1.252,-.963,-.665,-.375,-.109,.123,
-.317,.475,.603,.710,.802,.883,.951,1.001,1.028,1.025,.994,.939,.872,.808,.764,.754,
-.787,.862,.971,1.101,1.235,1.357,1.457,1.530,1.581,1.620,1.662,1.721,1.808,1.929,2.082,2.259,
-2.448,2.636,2.810,2.964,3.092,3.196,3.282,3.355,3.423,3.490,3.560,3.630,3.698,3.758,3.804,3.831,
-3.835,3.814,3.771,3.710,3.638,3.565,3.499,3.450,3.426,3.432,3.468,3.532,3.619,3.720,3.825,3.926,
-4.016,4.091,4.147,4.188,4.217,4.237,4.254,4.272,4.294,4.321,4.354,4.394,4.440,4.491,4.546,4.602,
-4.658,4.709,4.754,4.791,4.822,4.850,4.879,4.918,4.973,5.050,5.151,5.275,5.417,5.568,5.717,5.855,
-5.977,6.079,6.165,6.240,6.313,6.393,6.484,6.589,6.703,6.819,6.925,7.012,7.071,7.097,7.090,7.055,
-6.998,6.926,6.845,6.758,6.665,6.564,6.454,6.332,6.200,6.061,5.920,5.786,5.664,5.559,5.470,5.396,
-5.332,5.272,5.212,5.150,5.090,5.037,4.998,4.981,4.991,5.029,5.092,5.172,5.261,5.348,5.428,5.497,
-5.556,5.608,5.660,5.714,5.771,5.827,5.874,5.900,5.896,5.852,5.764,5.637,5.478,5.299,5.115,4.938,
-4.777,4.634,4.506,4.388,4.269,4.141,3.999,3.841,3.669,3.489,3.307,3.130,2.963,2.806,2.659,2.519,
-2.381,2.242,2.101,1.958,1.816,1.679,1.549,1.432,1.327,1.236,1.158,1.090,1.031,.978,.930,.885,
-.843,.803,.767,.735,.711,.696,.694,.708,.740,.788,.850,.919,.987,1.044,1.082,1.097,
-1.086,1.055,1.011,.966,.930,.911,.915,.938,.975,1.016,1.050,1.070,1.072,1.062,1.048,1.046,
-1.070,1.135,1.251,1.420,1.638,1.895,2.177,2.472,2.767,3.054,3.328,3.590,3.838,4.074,4.295,4.494,
-4.666,4.801,4.892,4.933,4.926,4.875,4.790,4.683,4.567,4.452,4.344,4.247,4.159,4.076,3.995,3.914,
-3.832,3.755,3.688,3.640,3.618,3.627,3.668,3.737,3.826,3.925,4.022,4.106,4.168,4.203,4.211,4.196,
-4.165,4.128,4.099,4.087,4.103,4.154,4.240,4.360,4.505,4.667,4.831,4.988,5.128,5.249,5.353,5.449,
-5.551,5.674,5.831,6.029,6.269,6.541,6.830,7.114,7.370,7.578,7.727,7.814,7.846,7.837,7.809,7.779,
-7.765,7.773,7.802,7.841,7.876,7.886,7.854,7.767,7.619,7.409,7.146,6.841,6.508,6.160,5.808,5.463,
-5.128,4.805,4.493,4.186,3.877,3.556,3.214,2.839,2.422,1.957,1.446,.892,.309,-.289,-.883,-1.453,
--1.987,-2.474,-2.910,-3.297,-3.640,-3.942,-4.207,-4.434,-4.621,-4.759,-4.843,-4.872,-4.848,-4.780,-4.687,-4.589,
--4.506,-4.458,-4.456,-4.503,-4.596,-4.725,-4.877,-5.040,-5.208,-5.378,-5.552,-5.737,-5.938,-6.159,-6.400,-6.652,
--6.905,-7.145,-7.360,-7.542,-7.690,-7.808,-7.905,-7.995,-8.087,-8.189,-8.301,-8.418,-8.528,-8.619,-8.679,-8.700,
--8.683,-8.634,-8.567,-8.500,-8.450,-8.434,-8.461,-8.536,-8.654,-8.807,-8.982,-9.167,-9.352,-9.530,-9.699,-9.862,
--10.027,-10.204,-10.403,-10.634,-10.904,-11.216,-11.573,-11.970,-12.402,-12.863,-13.342,-13.831,-14.321,-14.804,-15.275,-15.729,
--16.164,-16.581,-16.982,-17.370,-17.749,-18.122,-18.493,-18.862,-19.226,-19.582,-19.924,-20.245,-20.539,-20.800,-21.028,-21.226,
--21.400,-21.563,-21.730,-21.917,-22.140,-22.415,-22.752,-23.156,-23.628,-24.162,-24.749,-25.376,-26.025,-26.681,-27.324,-27.940,
--28.511,-29.027,-29.478,-29.859,-30.170,-30.414,-30.600,-30.739,-30.845,-30.932,-31.011,-31.095,-31.187,-31.291,-31.406,-31.526,
--31.646,-31.760,-31.862,-31.948,-32.015,-32.061,-32.088,-32.096,-32.087,-32.067,-32.038,-32.008,-31.985,-31.975,-31.987,-32.025,
--32.092,-32.186,-32.301,-32.427,-32.552,-32.663,-32.751,-32.808,-32.832,-32.824,-32.791,-32.741,-32.682,-32.623,-32.568,-32.520,
--32.479,-32.443,-32.407,-32.370,-32.326,-32.275,-32.214,-32.139,-32.048,-31.937,-31.800,-31.632,-31.430,-31.192,-30.919,-30.617,
--30.295,-29.963,-29.636,-29.327,-29.049,-28.813,-28.626,-28.492,-28.411,-28.377,-28.382,-28.415,-28.463,-28.512,-28.552,-28.575,
--28.576,-28.559,-28.529,-28.496,-28.472,-28.466,-28.479,-28.509,-28.543,-28.560,-28.537,-28.449,-28.276,-28.006,-27.641,-27.196,
--26.697,-26.181,-25.684,-25.244,-24.887,-24.629,-24.472,-24.405,-24.407,-24.453,-24.515,-24.569,-24.595,-24.583,-24.528,-24.431,
--24.297,-24.133,-23.947,-23.744,-23.533,-23.317,-23.101,-22.888,-22.678,-22.470,-22.261,-22.042,-21.806,-21.543,-21.243,-20.901,
--20.511,-20.074,-19.594,-19.075,-18.525,-17.950,-17.356,-16.749,-16.133,-15.511,-14.886,-14.262,-13.640,-13.022,-12.407,-11.790,
--11.167,-10.529,-9.872,-9.194,-8.498,-7.795,-7.100,-6.430,-5.803,-5.228,-4.709,-4.237,-3.796,-3.367,-2.929,-2.471,
--1.995,-1.516,-1.060,-.660,-.343,-.123,.006,.079,.152,.297,.589,1.091,1.841,2.841,4.058,5.424,
-6.851,8.244,9.521,10.624,11.527,12.238,12.793,13.244,13.645,14.040,14.459,14.908,15.382,15.864,16.343,16.816,
-17.294,17.800,18.365,19.013,19.759,20.592,21.480,22.374,23.210,23.932,24.496,24.887,25.120,25.234,25.287,25.343,
-25.451,25.637,25.897,26.200,26.489,26.700,26.777,26.681,26.403,25.965,25.414,24.817,24.245,23.759,23.406,23.210,
-23.171,23.275,23.495,23.805,24.181,24.607,25.076,25.587,26.139,26.733,27.360,28.012,28.673,29.329,29.968,30.582,
-31.171,31.740,32.296,32.849,33.406,33.971,34.541,35.110,35.673,36.220,36.746,37.248,37.727,38.186,38.626,39.050,
-39.458,39.849,40.221,40.572,40.903,41.216,41.521,41.826,42.143,42.481,42.848,43.244,43.663,44.097,44.531,44.951,
-45.346,45.709,46.039,46.343,46.631,46.917,47.216,47.535,47.882,48.255,48.649,49.056,49.470,49.886,50.306,50.734,
-51.178,51.646,52.141,52.656,53.177,53.680,54.132,54.504,54.770,54.919,54.957,54.908,54.813,54.722,54.688,54.752,
-54.939,55.252,55.671,56.159,56.665,57.143,57.553,57.874,58.106,58.265,58.384,58.498,58.638,58.824,59.058,59.328,
-59.607,59.866,60.073,60.210,60.267,60.249,60.172,60.058,59.929,59.802,59.689,59.592,59.508,59.429,59.351,59.270,
-59.188,59.109,59.040,58.984,58.942,58.911,58.885,58.855,58.817,58.770,58.720,58.680,58.665,58.690,58.768,58.903,
-59.088,59.311,59.551,59.786,59.999,60.178,60.320,60.431,60.524,60.611,60.704,60.808,60.921,61.032,61.126,61.190,
-61.209,61.179,61.101,60.985,60.845,60.698,60.557,60.431,60.322,60.225,60.130,60.027,59.906,59.759,59.586,59.390,
-59.179,58.965,58.756,58.562,58.387,58.231,58.093,57.967,57.845,57.717,57.576,57.412,57.218,56.988,56.718,56.406,
-56.055,55.671,55.261,54.838,54.414,54.003,53.615,53.258,52.938,52.654,52.403,52.182,51.982,51.799,51.628,51.466,
-51.309,51.159,51.012,50.869,50.727,50.582,50.432,50.275,50.110,49.939,49.766,49.598,49.444,49.310,49.201,49.119,
-49.060,49.016,48.975,48.922,48.843,48.729,48.737,48.552,48.339,48.110,47.878,47.658,47.465,47.308,47.187,47.100,
-47.031,46.965,46.882,46.764,46.602,46.390,46.134,45.848,45.549,45.255,44.982,44.737,44.522,44.326,44.135,43.928,
-43.689,43.403,43.066,42.683,42.266,41.834,41.409,41.011,40.658,40.360,40.122,39.942,39.815,39.732,39.686,39.668,
-39.673,39.697,39.735,39.784,39.837,39.886,39.920,39.928,39.895,39.806,39.648,39.408,39.078,38.654,38.136,37.533,
-36.859,36.135,35.386,34.642,33.933,33.285,32.723,32.265,31.917,31.683,31.552,31.511,31.540,31.616,31.713,31.808,
-31.881,31.915,31.898,31.825,31.695,31.513,31.288,31.031,30.755,30.471,30.185,29.902,29.622,29.340,29.052,28.748,
-28.424,28.076,27.704,27.310,26.904,26.494,26.091,25.705,25.345,25.018,24.725,24.466,24.238,24.035,23.849,23.671,
-23.494,23.310,23.111,22.893,22.654,22.394,22.116,21.823,21.521,21.214,20.908,20.604,20.307,20.017,19.736,19.464,
-19.206,18.964,18.745,18.552,18.391,18.264,18.172,18.108,18.066,18.033,17.998,17.948,17.874,17.770,17.635,17.473,
-17.291,17.098,16.900,16.705,16.513,16.322,16.128,15.923,15.701,15.458,15.194,14.912,14.617,14.318,14.020,13.728,
-13.441,13.156,12.868,12.570,12.259,11.938,11.615,11.303,11.020,10.786,10.613,10.511,10.478,10.503,10.568,10.648,
-10.718,10.757,10.751,10.694,10.590,10.448,10.283,10.107,9.932,9.763,9.599,9.435,9.262,9.074,8.864,8.628,
-8.367,8.082,7.778,7.456,7.118,6.765,6.397,6.016,5.627,5.239,4.864,4.517,4.213,3.961,3.766,3.623,
-3.518,3.433,3.343,3.227,3.069,2.859,2.601,2.305,1.991,1.677,1.385,1.126,.906,.723,.565,.420,
-.272,.111,-.070,-.272,-.488,-.711,-.931,-1.139,-1.329,-1.498,-1.649,-1.782,-1.902,-2.013,-2.118,-2.222,
--2.330,-2.446,-2.579,-2.735,-2.922,-3.143,-3.400,-3.687,-3.997,-4.316,-4.630,-4.924,-5.188,-5.417,-5.610,-5.772,
--5.911,-6.035,-6.151,-6.260,-6.362,-6.451,-6.520,-6.564,-6.578,-6.567,-6.538,-6.505,-6.485,-6.495,-6.551,-6.661,
--6.829,-7.048,-7.309,-7.596,-7.891,-8.180,-8.451,-8.698,-8.924,-9.136,-9.345,-9.566,-9.810,-10.085,-10.391,-10.725,
--11.074,-11.422,-11.750,-12.044,-12.291,-12.486,-12.629,-12.728,-12.794,-12.836,-12.865,-12.888,-12.905,-12.916,-12.918,-12.910,
--12.893,-12.871,-12.852,-12.845,-12.858,-12.896,-12.959,-13.041,-13.132,-13.219,-13.294,-13.349,-13.383,-13.402,-13.416,-13.437,
--13.474,-13.533,-13.614,-13.714,-13.823,-13.932,-14.034,-14.126,-14.211,-14.292,-14.378,-14.474,-14.581,-14.696,-14.809,-14.911,
--14.989,-15.035,-15.049,-15.035,-15.004,-14.970,-14.948,-14.945,-14.965,-15.003,-15.049,-15.088,-15.107,-15.100,-15.065,-15.011,
--14.952,-14.908,-14.900,-14.943,-15.049,-15.219,-15.448,-15.724,-16.029,-16.343,-16.649,-16.928,-17.167,-17.352,-17.477,-17.535,
--17.527,-17.456,-17.330,-17.162,-16.968,-16.768,-16.578,-16.413,-16.282,-16.185,-16.116,-16.063,-16.011,-15.945,-15.858,-15.750,
--15.629,-15.513,-15.424,-15.382,-15.404,-15.494,-15.644,-15.831,-16.026,-16.191,-16.294,-16.312,-16.238,-16.082,-15.869,-15.638,
--15.432,-15.288,-15.233,-15.277,-15.411,-15.610,-15.838,-16.054,-16.221,-16.313,-16.320,-16.245,-16.105,-15.926,-15.737,-15.565,
--15.430,-15.344,-15.311,-15.326,-15.381,-15.465,-15.566,-15.674,-15.781,-15.879,-15.961,-16.025,-16.066,-16.084,-16.083,-16.066,
--16.040,-16.012,-15.986,-15.964,-15.943,-15.917,-15.878,-15.817,-15.728,-15.610,-15.469,-15.314,-15.159,-15.018,-14.900,-14.811,
--14.747,-14.699,-14.654,-14.596,-14.516,-14.406,-14.271,-14.118,-13.961,-13.814,-13.688,-13.589,-13.516,-13.458,-13.403,-13.337,
--13.245,-13.122,-12.965,-12.781,-12.580,-12.374,-12.177,-11.996,-11.839,-11.704,-11.587,-11.482,-11.382,-11.281,-11.174,-11.060,
--10.942,-10.824,-10.712,-10.612,-10.534,-10.482,-10.465,-10.487,-10.553,-10.667,-10.830,-11.043,-11.305,-11.612,-11.962,-12.347,
--12.761,-13.194,-13.634,-14.070,-14.484,-14.861,-15.183,-15.435,-15.601,-15.668,-15.626,-15.470,-15.194,-14.799,-14.283,-13.653,
--12.913,-12.078,-11.165,-10.199,-9.215,-8.250,-7.347,-6.547,-5.883,-5.379,-5.043,-4.866,-4.823,-4.879,-4.988,-5.107,
--5.200,-5.241,-5.218,-5.136,-5.009,-4.856,-4.700,-4.556,-4.432,-4.327,-4.231,-4.130,-4.012,-3.866,-3.688,-3.486,
--3.268,-3.050,-2.843,-2.655,-2.487,-2.330,-2.171,-1.992,-1.781,-1.530,-1.238,-.916,-.581,-.252,.053,.323,
-.552,.746,.916,1.073,1.229,1.387,1.540,1.676,1.776,1.820,1.795,1.699,1.541,1.343,1.138,.961,
-.841,.799,.843,.965,1.143,1.349,1.554,1.732,1.870,1.965,2.024,2.063,2.104,2.162,2.251,2.374,
-2.527,2.700,2.879,3.051,3.205,3.336,3.442,3.527,3.596,3.655,3.710,3.765,3.819,3.872,3.921,3.964,
-3.997,4.017,4.022,4.013,3.990,3.957,3.916,3.876,3.841,3.821,3.820,3.844,3.893,3.965,4.055,4.156,
-4.258,4.353,4.435,4.501,4.551,4.586,4.612,4.634,4.655,4.681,4.713,4.752,4.797,4.847,4.899,4.952,
-5.003,5.049,5.088,5.117,5.138,5.149,5.157,5.165,5.182,5.214,5.267,5.347,5.452,5.579,5.722,5.871,
-6.017,6.155,6.280,6.392,6.497,6.598,6.703,6.815,6.935,7.061,7.186,7.302,7.401,7.477,7.526,7.547,
-7.544,7.519,7.478,7.423,7.354,7.270,7.168,7.047,6.907,6.749,6.581,6.411,6.246,6.094,5.960,5.844,
-5.744,5.656,5.573,5.493,5.415,5.343,5.285,5.249,5.241,5.267,5.326,5.412,5.515,5.622,5.722,5.807,
-5.874,5.925,5.966,6.004,6.047,6.097,6.151,6.203,6.239,6.249,6.222,6.153,6.043,5.899,5.733,5.560,
-5.391,5.234,5.093,4.964,4.839,4.710,4.567,4.406,4.225,4.027,3.820,3.613,3.412,3.223,3.048,2.885,
-2.732,2.583,2.435,2.285,2.135,1.985,1.841,1.704,1.578,1.465,1.366,1.279,1.205,1.140,1.084,1.035,
-.991,.950,.911,.872,.833,.793,.756,.724,.702,.693,.701,.725,.762,.805,.846,.879,
-.896,.896,.883,.863,.848,.846,.865,.910,.977,1.058,1.141,1.215,1.269,1.299,1.311,1.313,
-1.321,1.352,1.422,1.540,1.710,1.925,2.176,2.448,2.727,2.999,3.258,3.501,3.729,3.944,4.148,4.339,
-4.512,4.661,4.776,4.848,4.874,4.855,4.798,4.715,4.620,4.529,4.454,4.403,4.376,4.372,4.384,4.405,
-4.430,4.458,4.492,4.537,4.602,4.692,4.812,4.961,5.130,5.308,5.480,5.629,5.740,5.805,5.820,5.789,
-5.723,5.640,5.559,5.500,5.481,5.516,5.611,5.764,5.967,6.204,6.455,6.701,6.922,7.105,7.246,7.348,
-7.420,7.479,7.543,7.627,7.741,7.886,8.053,8.228,8.388,8.514,8.588,8.602,8.558,8.468,8.351,8.229,
-8.124,8.050,8.014,8.011,8.028,8.046,8.045,8.007,7.918,7.773,7.572,7.323,7.034,6.717,6.381,6.035,
-5.686,5.339,4.999,4.669,4.354,4.052,3.764,3.484,3.205,2.914,2.602,2.260,1.882,1.467,1.022,.554,
-.076,-.403,-.872,-1.325,-1.759,-2.170,-2.556,-2.910,-3.224,-3.485,-3.683,-3.808,-3.859,-3.841,-3.769,-3.666,
--3.560,-3.477,-3.439,-3.459,-3.540,-3.677,-3.855,-4.059,-4.275,-4.492,-4.709,-4.927,-5.152,-5.392,-5.649,-5.920,
--6.196,-6.464,-6.708,-6.917,-7.083,-7.207,-7.297,-7.368,-7.438,-7.521,-7.630,-7.767,-7.927,-8.099,-8.268,-8.417,
--8.535,-8.616,-8.662,-8.683,-8.692,-8.705,-8.739,-8.803,-8.902,-9.036,-9.197,-9.372,-9.549,-9.716,-9.863,-9.989,
--10.097,-10.196,-10.301,-10.428,-10.595,-10.817,-11.104,-11.457,-11.873,-12.341,-12.845,-13.363,-13.879,-14.373,-14.836,-15.260,
--15.649,-16.008,-16.351,-16.691,-17.043,-17.418,-17.824,-18.262,-18.730,-19.219,-19.715,-20.206,-20.676,-21.113,-21.508,-21.857,
--22.162,-22.431,-22.676,-22.913,-23.159,-23.430,-23.739,-24.095,-24.502,-24.959,-25.459,-25.992,-26.548,-27.114,-27.676,-28.224,
--28.745,-29.230,-29.669,-30.057,-30.387,-30.658,-30.872,-31.036,-31.159,-31.254,-31.334,-31.412,-31.498,-31.598,-31.713,-31.840,
--31.971,-32.101,-32.221,-32.327,-32.417,-32.492,-32.555,-32.610,-32.662,-32.713,-32.764,-32.816,-32.870,-32.926,-32.986,-33.053,
--33.130,-33.219,-33.320,-33.430,-33.544,-33.653,-33.746,-33.815,-33.854,-33.860,-33.835,-33.784,-33.717,-33.643,-33.569,-33.502,
--33.444,-33.392,-33.345,-33.297,-33.245,-33.185,-33.116,-33.037,-32.947,-32.843,-32.722,-32.579,-32.406,-32.199,-31.951,-31.663,
--31.338,-30.986,-30.618,-30.252,-29.904,-29.589,-29.322,-29.111,-28.961,-28.869,-28.830,-28.835,-28.873,-28.931,-28.997,-29.062,
--29.119,-29.165,-29.200,-29.228,-29.253,-29.280,-29.312,-29.347,-29.377,-29.390,-29.369,-29.295,-29.150,-28.923,-28.610,-28.218,
--27.764,-27.277,-26.788,-26.333,-25.940,-25.632,-25.418,-25.296,-25.254,-25.271,-25.323,-25.386,-25.439,-25.469,-25.466,-25.429,
--25.359,-25.259,-25.133,-24.984,-24.815,-24.627,-24.425,-24.210,-23.987,-23.758,-23.526,-23.290,-23.046,-22.788,-22.507,-22.195,
--21.842,-21.446,-21.005,-20.522,-20.005,-19.463,-18.904,-18.335,-17.764,-17.192,-16.622,-16.052,-15.483,-14.912,-14.337,-13.754,
--13.158,-12.542,-11.901,-11.230,-10.528,-9.801,-9.058,-8.318,-7.600,-6.923,-6.298,-5.732,-5.218,-4.738,-4.270,-3.792,
--3.286,-2.747,-2.186,-1.627,-1.103,-.647,-.283,-.018,.167,.311,.476,.729,1.135,1.738,2.557,3.575,
-4.746,6.002,7.265,8.460,9.531,10.450,11.215,11.847,12.386,12.874,13.347,13.827,14.324,14.832,15.339,15.839,
-16.332,16.832,17.365,17.960,18.642,19.422,20.290,21.213,22.138,23.002,23.745,24.322,24.717,24.942,25.036,25.059,
-25.073,25.134,25.270,25.485,25.752,26.021,26.235,26.342,26.307,26.122,25.808,25.410,24.986,24.597,24.294,24.112,
-24.063,24.140,24.323,24.585,24.903,25.260,25.652,26.080,26.552,27.073,27.645,28.262,28.908,29.565,30.213,30.833,
-31.418,31.964,32.479,32.975,33.463,33.956,34.460,34.977,35.504,36.034,36.560,37.078,37.583,38.076,38.556,39.025,
-39.483,39.929,40.359,40.770,41.158,41.524,41.869,42.198,42.521,42.845,43.179,43.528,43.894,44.274,44.661,45.047,
-45.422,45.779,46.115,46.428,46.725,47.012,47.299,47.596,47.909,48.245,48.603,48.982,49.379,49.792,50.220,50.663,
-51.126,51.612,52.125,52.660,53.208,53.752,54.267,54.724,55.097,55.363,55.514,55.557,55.512,55.414,55.308,55.235,
-55.230,55.316,55.496,55.755,56.068,56.400,56.719,57.001,57.237,57.431,57.598,57.761,57.941,58.150,58.391,58.652,
-58.911,59.142,59.320,59.430,59.466,59.440,59.372,59.289,59.215,59.171,59.166,59.196,59.250,59.309,59.357,59.380,
-59.372,59.337,59.282,59.220,59.159,59.107,59.064,59.027,58.991,58.953,58.913,58.879,58.862,58.879,58.943,59.064,
-59.244,59.474,59.737,60.013,60.279,60.517,60.717,60.875,61.000,61.100,61.188,61.274,61.360,61.443,61.514,61.561,
-61.573,61.541,61.466,61.351,61.209,61.051,60.892,60.741,60.605,60.481,60.367,60.253,60.133,59.999,59.847,59.677,
-59.491,59.294,59.090,58.885,58.683,58.489,58.305,58.133,57.972,57.821,57.675,57.527,57.366,57.181,56.963,56.703,
-56.400,56.054,55.677,55.282,54.885,54.503,54.148,53.828,53.542,53.285,53.047,52.815,52.582,52.340,52.090,51.837,
-51.591,51.363,51.160,50.988,50.847,50.732,50.633,50.539,50.439,50.326,50.196,50.053,49.901,49.750,49.608,49.483,
-49.375,49.282,49.199,49.113,49.014,48.891,48.737,48.670,48.512,48.354,48.200,48.055,47.924,47.811,47.716,47.636,
-47.563,47.486,47.393,47.270,47.107,46.900,46.649,46.361,46.051,45.733,45.423,45.133,44.866,44.619,44.381,44.135,
-43.864,43.555,43.198,42.798,42.365,41.920,41.489,41.098,40.767,40.511,40.334,40.233,40.193,40.200,40.236,40.288,
-40.343,40.397,40.448,40.496,40.540,40.576,40.596,40.585,40.525,40.395,40.172,39.839,39.382,38.796,38.088,37.274,
-36.381,35.443,34.501,33.597,32.769,32.051,31.467,31.031,30.748,30.610,30.603,30.703,30.883,31.114,31.365,31.605,
-31.806,31.943,31.998,31.959,31.825,31.604,31.311,30.969,30.608,30.252,29.923,29.635,29.390,29.180,28.986,28.786,
-28.556,28.278,27.940,27.542,27.092,26.608,26.112,25.626,25.170,24.758,24.397,24.085,23.816,23.581,23.370,23.173,
-22.982,22.791,22.597,22.398,22.193,21.979,21.754,21.517,21.265,20.997,20.714,20.418,20.113,19.805,19.502,19.211,
-18.943,18.704,18.503,18.344,18.230,18.159,18.128,18.129,18.150,18.180,18.205,18.214,18.195,18.145,18.059,17.942,
-17.799,17.637,17.465,17.289,17.113,16.938,16.762,16.580,16.385,16.174,15.944,15.693,15.426,15.147,14.862,14.574,
-14.285,13.994,13.695,13.384,13.055,12.707,12.345,11.977,11.618,11.287,11.002,10.777,10.623,10.538,10.516,10.538,
-10.586,10.638,10.675,10.685,10.662,10.607,10.527,10.431,10.326,10.219,10.110,9.997,9.872,9.730,9.562,9.367,
-9.143,8.891,8.617,8.322,8.009,7.678,7.327,6.954,6.559,6.145,5.722,5.303,4.905,4.545,4.239,3.995,
-3.811,3.678,3.576,3.481,3.370,3.220,3.019,2.765,2.465,2.136,1.799,1.475,1.181,.927,.713,.535,
-.380,.235,.089,-.068,-.237,-.418,-.605,-.793,-.976,-1.151,-1.318,-1.477,-1.630,-1.777,-1.918,-2.052,
--2.177,-2.292,-2.398,-2.502,-2.612,-2.739,-2.894,-3.085,-3.317,-3.586,-3.885,-4.203,-4.523,-4.835,-5.126,-5.392,
--5.633,-5.852,-6.051,-6.235,-6.402,-6.548,-6.665,-6.743,-6.775,-6.756,-6.689,-6.583,-6.458,-6.334,-6.237,-6.191,
--6.213,-6.314,-6.495,-6.748,-7.057,-7.401,-7.759,-8.113,-8.447,-8.757,-9.044,-9.317,-9.590,-9.876,-10.188,-10.532,
--10.907,-11.302,-11.702,-12.085,-12.430,-12.720,-12.945,-13.104,-13.201,-13.252,-13.271,-13.274,-13.274,-13.276,-13.282,-13.291,
--13.299,-13.304,-13.306,-13.310,-13.322,-13.349,-13.396,-13.461,-13.539,-13.622,-13.698,-13.757,-13.793,-13.807,-13.807,-13.804,
--13.813,-13.843,-13.904,-13.993,-14.105,-14.229,-14.352,-14.464,-14.560,-14.640,-14.710,-14.777,-14.849,-14.929,-15.015,-15.102,
--15.180,-15.239,-15.272,-15.278,-15.261,-15.229,-15.194,-15.167,-15.154,-15.157,-15.171,-15.191,-15.206,-15.212,-15.208,-15.199,
--15.194,-15.207,-15.252,-15.338,-15.471,-15.650,-15.866,-16.109,-16.366,-16.623,-16.871,-17.100,-17.307,-17.485,-17.630,-17.738,
--17.802,-17.819,-17.786,-17.702,-17.574,-17.411,-17.227,-17.037,-16.854,-16.691,-16.551,-16.437,-16.342,-16.259,-16.180,-16.099,
--16.016,-15.934,-15.863,-15.813,-15.798,-15.825,-15.895,-16.003,-16.133,-16.266,-16.377,-16.445,-16.453,-16.398,-16.283,-16.127,
--15.954,-15.792,-15.669,-15.604,-15.607,-15.672,-15.785,-15.922,-16.056,-16.162,-16.220,-16.222,-16.168,-16.069,-15.941,-15.804,
--15.677,-15.574,-15.506,-15.479,-15.492,-15.542,-15.622,-15.725,-15.841,-15.960,-16.072,-16.166,-16.234,-16.271,-16.277,-16.256,
--16.219,-16.179,-16.149,-16.139,-16.154,-16.189,-16.234,-16.273,-16.288,-16.264,-16.190,-16.068,-15.905,-15.719,-15.530,-15.356,
--15.214,-15.108,-15.037,-14.991,-14.956,-14.917,-14.862,-14.784,-14.685,-14.570,-14.446,-14.322,-14.204,-14.092,-13.984,-13.872,
--13.748,-13.604,-13.436,-13.243,-13.029,-12.800,-12.566,-12.335,-12.115,-11.910,-11.724,-11.556,-11.408,-11.277,-11.163,-11.063,
--10.976,-10.901,-10.837,-10.783,-10.737,-10.702,-10.678,-10.670,-10.684,-10.725,-10.800,-10.917,-11.082,-11.300,-11.572,-11.900,
--12.280,-12.704,-13.164,-13.643,-14.122,-14.580,-14.994,-15.340,-15.597,-15.747,-15.779,-15.684,-15.460,-15.109,-14.633,-14.040,
--13.337,-12.535,-11.650,-10.702,-9.720,-8.738,-7.796,-6.935,-6.193,-5.599,-5.169,-4.905,-4.790,-4.793,-4.875,-4.992,
--5.104,-5.178,-5.198,-5.157,-5.065,-4.936,-4.791,-4.645,-4.511,-4.392,-4.283,-4.174,-4.054,-3.915,-3.753,-3.570,
--3.376,-3.181,-2.996,-2.827,-2.674,-2.527,-2.371,-2.188,-1.960,-1.679,-1.343,-.964,-.562,-.164,.202,.515,
-.763,.947,1.080,1.182,1.277,1.383,1.508,1.648,1.786,1.896,1.950,1.925,1.811,1.613,1.354,1.069,
-.801,.591,.473,.463,.560,.747,.994,1.268,1.536,1.774,1.969,2.121,2.237,2.333,2.424,2.522,
-2.634,2.761,2.899,3.043,3.185,3.321,3.448,3.567,3.679,3.785,3.885,3.977,4.059,4.129,4.184,4.225,
-4.254,4.273,4.287,4.298,4.309,4.319,4.328,4.333,4.335,4.333,4.332,4.334,4.345,4.369,4.408,4.461,
-4.525,4.595,4.663,4.726,4.778,4.820,4.852,4.877,4.901,4.928,4.960,5.000,5.047,5.099,5.155,5.211,
-5.266,5.316,5.362,5.400,5.430,5.452,5.466,5.474,5.479,5.487,5.503,5.533,5.582,5.653,5.747,5.860,
-5.990,6.128,6.271,6.413,6.550,6.682,6.807,6.927,7.042,7.152,7.256,7.353,7.441,7.518,7.584,7.639,
-7.686,7.725,7.758,7.782,7.794,7.788,7.757,7.694,7.594,7.457,7.286,7.087,6.872,6.654,6.443,6.249,
-6.077,5.930,5.806,5.703,5.619,5.554,5.509,5.489,5.497,5.537,5.609,5.707,5.823,5.944,6.056,6.147,
-6.210,6.242,6.248,6.236,6.219,6.206,6.206,6.221,6.246,6.272,6.289,6.284,6.249,6.182,6.084,5.962,
-5.825,5.682,5.539,5.400,5.263,5.125,4.978,4.819,4.645,4.458,4.261,4.061,3.864,3.676,3.498,3.332,
-3.173,3.018,2.863,2.705,2.543,2.379,2.217,2.058,1.908,1.768,1.640,1.523,1.418,1.325,1.243,1.174,
-1.116,1.069,1.032,.999,.967,.932,.890,.840,.784,.728,.677,.638,.615,.608,.616,.634,
-.653,.669,.675,.674,.670,.669,.683,.719,.781,.868,.973,1.084,1.189,1.276,1.338,1.377,
-1.398,1.416,1.446,1.503,1.599,1.738,1.920,2.135,2.371,2.614,2.853,3.080,3.290,3.485,3.666,3.835,
-3.992,4.134,4.257,4.351,4.411,4.433,4.418,4.371,4.304,4.229,4.163,4.116,4.101,4.120,4.176,4.264,
-4.383,4.526,4.691,4.879,5.087,5.318,5.570,5.838,6.114,6.386,6.639,6.856,7.023,7.129,7.169,7.147,
-7.072,6.961,6.837,6.723,6.642,6.613,6.651,6.759,6.937,7.171,7.446,7.739,8.027,8.291,8.513,8.685,
-8.805,8.880,8.920,8.941,8.955,8.972,8.997,9.025,9.049,9.058,9.040,8.986,8.895,8.770,8.624,8.473,
-8.331,8.214,8.128,8.073,8.044,8.026,8.003,7.962,7.890,7.782,7.635,7.454,7.243,7.008,6.753,6.482,
-6.196,5.895,5.584,5.267,4.952,4.647,4.360,4.097,3.856,3.634,3.421,3.205,2.973,2.718,2.432,2.116,
-1.772,1.405,1.019,.618,.203,-.226,-.667,-1.113,-1.552,-1.968,-2.339,-2.642,-2.861,-2.985,-3.018,-2.975,
--2.883,-2.773,-2.680,-2.631,-2.644,-2.725,-2.869,-3.062,-3.287,-3.528,-3.773,-4.018,-4.265,-4.519,-4.784,-5.062,
--5.347,-5.631,-5.899,-6.137,-6.334,-6.486,-6.598,-6.681,-6.753,-6.833,-6.938,-7.077,-7.253,-7.460,-7.684,-7.910,
--8.120,-8.301,-8.447,-8.557,-8.638,-8.703,-8.764,-8.838,-8.934,-9.058,-9.214,-9.394,-9.590,-9.791,-9.984,-10.160,
--10.313,-10.445,-10.564,-10.684,-10.824,-11.004,-11.245,-11.559,-11.950,-12.415,-12.939,-13.497,-14.063,-14.608,-15.108,-15.545,
--15.915,-16.222,-16.482,-16.718,-16.958,-17.227,-17.549,-17.938,-18.400,-18.931,-19.517,-20.140,-20.775,-21.398,-21.986,-22.523,
--23.000,-23.414,-23.772,-24.089,-24.381,-24.669,-24.971,-25.299,-25.662,-26.060,-26.489,-26.939,-27.397,-27.853,-28.296,-28.719,
--29.118,-29.491,-29.837,-30.155,-30.441,-30.695,-30.913,-31.095,-31.243,-31.364,-31.466,-31.562,-31.661,-31.774,-31.904,-32.051,
--32.209,-32.368,-32.519,-32.654,-32.767,-32.859,-32.937,-33.011,-33.089,-33.180,-33.290,-33.418,-33.559,-33.707,-33.853,-33.991,
--34.116,-34.228,-34.329,-34.422,-34.508,-34.588,-34.658,-34.715,-34.752,-34.762,-34.743,-34.697,-34.627,-34.540,-34.447,-34.355,
--34.270,-34.193,-34.125,-34.061,-33.995,-33.925,-33.847,-33.759,-33.663,-33.559,-33.445,-33.319,-33.174,-33.003,-32.797,-32.548,
--32.255,-31.920,-31.552,-31.165,-30.780,-30.414,-30.088,-29.815,-29.603,-29.454,-29.362,-29.321,-29.318,-29.342,-29.383,-29.437,
--29.499,-29.570,-29.650,-29.742,-29.845,-29.957,-30.072,-30.179,-30.266,-30.315,-30.311,-30.237,-30.080,-29.836,-29.504,-29.094,
--28.625,-28.121,-27.611,-27.127,-26.696,-26.340,-26.072,-25.895,-25.803,-25.781,-25.809,-25.868,-25.936,-25.997,-26.041,-26.060,
--26.052,-26.015,-25.949,-25.853,-25.727,-25.570,-25.383,-25.168,-24.932,-24.681,-24.423,-24.166,-23.912,-23.661,-23.408,-23.142,
--22.853,-22.531,-22.167,-21.759,-21.309,-20.823,-20.310,-19.780,-19.243,-18.702,-18.162,-17.623,-17.083,-16.539,-15.991,-15.437,
--14.875,-14.303,-13.715,-13.107,-12.471,-11.804,-11.103,-10.371,-9.618,-8.855,-8.100,-7.367,-6.666,-5.999,-5.364,-4.746,
--4.134,-3.513,-2.878,-2.235,-1.599,-.993,-.446,.019,.392,.678,.903,1.108,1.347,1.673,2.132,2.749,
-3.529,4.448,5.465,6.527,7.577,8.569,9.472,10.274,10.982,11.616,12.200,12.758,13.306,13.849,14.384,14.906,
-15.411,15.902,16.396,16.915,17.489,18.141,18.886,19.718,20.612,21.524,22.398,23.180,23.825,24.310,24.635,24.827,
-24.930,24.995,25.069,25.180,25.337,25.526,25.714,25.863,25.938,25.919,25.805,25.616,25.391,25.172,25.003,24.914,
-24.917,25.010,25.174,25.386,25.626,25.881,26.151,26.449,26.795,27.208,27.701,28.279,28.928,29.625,30.341,31.042,
-31.704,32.310,32.857,33.353,33.812,34.253,34.693,35.144,35.612,36.097,36.594,37.098,37.604,38.108,38.607,39.102,
-39.591,40.072,40.541,40.995,41.427,41.835,42.219,42.580,42.924,43.258,43.590,43.925,44.266,44.612,44.961,45.306,
-45.642,45.964,46.269,46.557,46.833,47.103,47.375,47.658,47.959,48.282,48.630,49.005,49.404,49.827,50.271,50.738,
-51.229,51.743,52.282,52.842,53.415,53.985,54.531,55.028,55.450,55.772,55.981,56.073,56.060,55.967,55.831,55.691,
-55.586,55.546,55.587,55.709,55.898,56.130,56.378,56.619,56.837,57.031,57.208,57.382,57.572,57.787,58.029,58.288,
-58.543,58.769,58.941,59.044,59.074,59.042,58.973,58.898,58.847,58.843,58.898,59.006,59.149,59.298,59.423,59.501,
-59.517,59.471,59.375,59.251,59.124,59.018,58.948,58.921,58.937,58.988,59.063,59.156,59.263,59.383,59.521,59.681,
-59.867,60.076,60.301,60.533,60.757,60.962,61.141,61.292,61.416,61.521,61.615,61.701,61.782,61.853,61.907,61.934,
-61.926,61.878,61.793,61.676,61.538,61.390,61.242,61.099,60.964,60.832,60.700,60.561,60.412,60.252,60.086,59.917,
-59.750,59.589,59.433,59.278,59.119,58.948,58.760,58.556,58.337,58.109,57.880,57.655,57.438,57.225,57.011,56.785,
-56.538,56.265,55.966,55.646,55.318,54.994,54.689,54.410,54.158,53.926,53.701,53.469,53.215,52.930,52.614,52.277,
-51.935,51.611,51.325,51.093,50.924,50.816,50.758,50.733,50.720,50.698,50.653,50.575,50.463,50.319,50.154,49.976,
-49.795,49.618,49.448,49.287,49.132,48.979,48.826,48.670,48.675,48.564,48.475,48.404,48.343,48.287,48.229,48.161,
-48.079,47.977,47.853,47.703,47.523,47.312,47.070,46.799,46.503,46.187,45.860,45.528,45.195,44.864,44.532,44.194,
-43.844,43.476,43.089,42.688,42.287,41.901,41.553,41.262,41.043,40.904,40.842,40.847,40.898,40.974,41.053,41.119,
-41.162,41.179,41.174,41.154,41.126,41.091,41.045,40.974,40.858,40.672,40.387,39.980,39.433,38.741,37.911,36.965,
-35.936,34.869,33.815,32.822,31.938,31.199,30.626,30.230,30.005,29.935,29.994,30.154,30.383,30.653,30.937,31.210,
-31.451,31.640,31.759,31.792,31.729,31.567,31.313,30.981,30.598,30.194,29.799,29.439,29.132,28.882,28.678,28.499,
-28.319,28.107,27.841,27.509,27.109,26.654,26.164,25.664,25.180,24.730,24.325,23.968,23.652,23.368,23.102,22.843,
-22.584,22.320,22.054,21.787,21.524,21.268,21.022,20.783,20.550,20.320,20.090,19.856,19.620,19.383,19.149,18.923,
-18.711,18.520,18.357,18.226,18.130,18.070,18.044,18.048,18.074,18.115,18.158,18.195,18.217,18.216,18.189,18.134,
-18.053,17.949,17.828,17.694,17.548,17.394,17.230,17.053,16.862,16.654,16.427,16.184,15.930,15.668,15.407,15.150,
-14.902,14.662,14.425,14.183,13.927,13.649,13.345,13.013,12.661,12.299,11.944,11.614,11.325,11.087,10.907,10.781,
-10.702,10.656,10.627,10.601,10.566,10.515,10.448,10.366,10.274,10.178,10.081,9.985,9.889,9.789,9.680,9.557,
-9.418,9.259,9.079,8.879,8.659,8.417,8.151,7.859,7.539,7.191,6.817,6.425,6.025,5.631,5.258,4.920,
-4.626,4.378,4.173,3.998,3.837,3.673,3.486,3.267,3.008,2.713,2.391,2.057,1.727,1.415,1.132,.883,
-.666,.476,.305,.145,-.011,-.166,-.322,-.478,-.635,-.792,-.950,-1.114,-1.283,-1.461,-1.643,-1.827,
--2.005,-2.169,-2.314,-2.438,-2.544,-2.639,-2.737,-2.850,-2.992,-3.169,-3.384,-3.632,-3.904,-4.187,-4.468,-4.738,
--4.993,-5.234,-5.462,-5.684,-5.900,-6.110,-6.305,-6.474,-6.602,-6.675,-6.683,-6.624,-6.502,-6.334,-6.144,-5.959,
--5.810,-5.724,-5.722,-5.815,-6.006,-6.287,-6.641,-7.049,-7.484,-7.926,-8.356,-8.764,-9.148,-9.511,-9.865,-10.221,
--10.591,-10.979,-11.385,-11.797,-12.200,-12.573,-12.899,-13.162,-13.357,-13.484,-13.556,-13.588,-13.598,-13.602,-13.611,-13.631,
--13.661,-13.697,-13.734,-13.768,-13.799,-13.828,-13.860,-13.899,-13.944,-13.995,-14.045,-14.089,-14.119,-14.134,-14.136,-14.133,
--14.135,-14.155,-14.201,-14.278,-14.382,-14.505,-14.636,-14.763,-14.875,-14.969,-15.044,-15.107,-15.165,-15.223,-15.286,-15.351,
--15.414,-15.468,-15.508,-15.531,-15.538,-15.534,-15.528,-15.525,-15.529,-15.538,-15.549,-15.552,-15.541,-15.514,-15.474,-15.432,
--15.403,-15.405,-15.452,-15.553,-15.709,-15.909,-16.137,-16.374,-16.600,-16.803,-16.976,-17.121,-17.244,-17.356,-17.464,-17.572,
--17.678,-17.774,-17.849,-17.891,-17.891,-17.843,-17.749,-17.615,-17.453,-17.274,-17.090,-16.914,-16.751,-16.606,-16.483,-16.383,
--16.306,-16.253,-16.224,-16.219,-16.238,-16.278,-16.335,-16.402,-16.473,-16.539,-16.592,-16.625,-16.635,-16.618,-16.576,-16.516,
--16.445,-16.374,-16.315,-16.277,-16.268,-16.291,-16.342,-16.414,-16.496,-16.573,-16.633,-16.666,-16.665,-16.631,-16.566,-16.478,
--16.376,-16.271,-16.173,-16.089,-16.028,-15.995,-15.994,-16.026,-16.088,-16.177,-16.282,-16.392,-16.493,-16.572,-16.618,-16.626,
--16.601,-16.550,-16.489,-16.436,-16.405,-16.404,-16.436,-16.490,-16.551,-16.598,-16.612,-16.578,-16.489,-16.348,-16.168,-15.966,
--15.764,-15.579,-15.422,-15.298,-15.205,-15.135,-15.078,-15.023,-14.963,-14.893,-14.811,-14.720,-14.619,-14.510,-14.390,-14.257,
--14.107,-13.939,-13.752,-13.546,-13.326,-13.096,-12.864,-12.632,-12.407,-12.190,-11.984,-11.791,-11.613,-11.452,-11.312,-11.196,
--11.103,-11.035,-10.988,-10.959,-10.941,-10.932,-10.926,-10.925,-10.928,-10.942,-10.971,-11.025,-11.111,-11.237,-11.409,-11.633,
--11.911,-12.243,-12.626,-13.052,-13.506,-13.971,-14.424,-14.840,-15.190,-15.453,-15.605,-15.632,-15.526,-15.281,-14.900,-14.388,
--13.753,-13.006,-12.164,-11.246,-10.280,-9.298,-8.339,-7.444,-6.653,-5.999,-5.502,-5.171,-4.993,-4.944,-4.987,-5.081,
--5.184,-5.262,-5.293,-5.268,-5.191,-5.074,-4.934,-4.786,-4.645,-4.514,-4.394,-4.278,-4.158,-4.027,-3.883,-3.727,
--3.565,-3.407,-3.261,-3.133,-3.020,-2.913,-2.796,-2.647,-2.445,-2.175,-1.828,-1.410,-.938,-.443,.040,.475,
-.831,1.090,1.249,1.320,1.329,1.308,1.286,1.289,1.325,1.390,1.465,1.526,1.543,1.495,1.373,1.184,
-.949,.702,.478,.313,.232,.246,.351,.534,.770,1.035,1.306,1.567,1.810,2.032,2.235,2.424,
-2.602,2.769,2.926,3.071,3.204,3.328,3.449,3.570,3.700,3.839,3.988,4.141,4.289,4.421,4.529,4.606,
-4.652,4.672,4.674,4.669,4.667,4.673,4.690,4.716,4.745,4.773,4.795,4.808,4.815,4.818,4.823,4.835,
-4.856,4.887,4.924,4.964,5.002,5.035,5.061,5.083,5.102,5.124,5.151,5.187,5.232,5.284,5.342,5.402,
-5.463,5.521,5.577,5.630,5.681,5.730,5.776,5.818,5.855,5.886,5.911,5.930,5.947,5.967,5.995,6.035,
-6.093,6.171,6.270,6.387,6.518,6.658,6.801,6.939,7.067,7.180,7.278,7.360,7.427,7.486,7.540,7.595,
-7.656,7.726,7.804,7.887,7.968,8.039,8.088,8.106,8.083,8.011,7.891,7.724,7.517,7.281,7.030,6.777,
-6.534,6.311,6.116,5.953,5.824,5.730,5.670,5.645,5.656,5.701,5.778,5.882,6.006,6.138,6.265,6.374,
-6.452,6.493,6.495,6.463,6.408,6.342,6.280,6.234,6.212,6.213,6.234,6.265,6.293,6.306,6.296,6.256,
-6.185,6.086,5.963,5.821,5.665,5.497,5.322,5.139,4.952,4.762,4.573,4.388,4.211,4.044,3.887,3.738,
-3.594,3.449,3.301,3.145,2.983,2.817,2.648,2.482,2.322,2.170,2.025,1.888,1.757,1.632,1.513,1.403,
-1.305,1.223,1.159,1.113,1.081,1.056,1.031,.999,.955,.898,.830,.758,.690,.634,.597,.578,
-.576,.584,.594,.601,.599,.590,.578,.570,.577,.604,.655,.727,.816,.911,1.001,1.081,
-1.145,1.197,1.245,1.299,1.372,1.474,1.611,1.783,1.986,2.209,2.440,2.670,2.890,3.093,3.278,3.446,
-3.599,3.739,3.865,3.975,4.065,4.130,4.168,4.175,4.153,4.109,4.051,3.990,3.940,3.913,3.920,3.971,
-4.072,4.228,4.437,4.698,5.005,5.348,5.716,6.096,6.470,6.823,7.138,7.401,7.600,7.729,7.788,7.781,
-7.719,7.618,7.496,7.374,7.272,7.206,7.190,7.232,7.336,7.497,7.707,7.952,8.217,8.484,8.738,8.964,
-9.153,9.299,9.400,9.459,9.481,9.472,9.438,9.383,9.312,9.225,9.122,9.005,8.877,8.742,8.606,8.478,
-8.363,8.268,8.193,8.135,8.089,8.044,7.991,7.920,7.828,7.713,7.578,7.427,7.267,7.100,6.928,6.749,
-6.558,6.350,6.124,5.879,5.621,5.359,5.102,4.859,4.635,4.430,4.237,4.049,3.853,3.641,3.408,3.154,
-2.882,2.597,2.303,2.000,1.683,1.343,.971,.560,.111,-.365,-.845,-1.300,-1.696,-2.006,-2.210,-2.305,
--2.305,-2.237,-2.138,-2.047,-1.997,-2.012,-2.099,-2.254,-2.462,-2.704,-2.963,-3.225,-3.484,-3.740,-3.998,-4.261,
--4.530,-4.801,-5.066,-5.312,-5.528,-5.709,-5.855,-5.971,-6.073,-6.177,-6.300,-6.454,-6.645,-6.873,-7.127,-7.394,
--7.660,-7.909,-8.132,-8.323,-8.482,-8.615,-8.729,-8.836,-8.945,-9.067,-9.207,-9.370,-9.557,-9.765,-9.988,-10.220,
--10.451,-10.676,-10.892,-11.101,-11.310,-11.534,-11.789,-12.092,-12.456,-12.888,-13.384,-13.933,-14.513,-15.093,-15.646,-16.144,
--16.567,-16.909,-17.174,-17.380,-17.551,-17.720,-17.920,-18.179,-18.519,-18.950,-19.472,-20.074,-20.734,-21.425,-22.118,-22.782,
--23.396,-23.942,-24.415,-24.819,-25.166,-25.477,-25.772,-26.072,-26.392,-26.740,-27.114,-27.507,-27.907,-28.299,-28.670,-29.013,
--29.326,-29.611,-29.873,-30.120,-30.356,-30.582,-30.797,-30.995,-31.172,-31.326,-31.459,-31.578,-31.693,-31.816,-31.956,-32.119,
--32.304,-32.503,-32.702,-32.889,-33.052,-33.186,-33.291,-33.378,-33.462,-33.558,-33.680,-33.836,-34.025,-34.237,-34.460,-34.675,
--34.869,-35.031,-35.157,-35.250,-35.316,-35.363,-35.399,-35.427,-35.446,-35.452,-35.440,-35.404,-35.343,-35.259,-35.158,-35.049,
--34.940,-34.840,-34.750,-34.671,-34.598,-34.527,-34.450,-34.363,-34.265,-34.156,-34.037,-33.908,-33.767,-33.611,-33.430,-33.216,
--32.961,-32.662,-32.319,-31.943,-31.549,-31.156,-30.788,-30.464,-30.197,-29.995,-29.857,-29.773,-29.732,-29.719,-29.723,-29.737,
--29.761,-29.799,-29.860,-29.951,-30.077,-30.237,-30.423,-30.620,-30.803,-30.949,-31.031,-31.026,-30.921,-30.708,-30.392,-29.987,
--29.513,-28.999,-28.473,-27.965,-27.500,-27.097,-26.770,-26.524,-26.357,-26.260,-26.222,-26.228,-26.263,-26.312,-26.364,-26.408,
--26.437,-26.444,-26.423,-26.367,-26.272,-26.134,-25.952,-25.728,-25.470,-25.188,-24.897,-24.610,-24.340,-24.092,-23.866,-23.656,
--23.448,-23.227,-22.978,-22.687,-22.349,-21.963,-21.537,-21.078,-20.599,-20.110,-19.615,-19.118,-18.618,-18.111,-17.595,-17.068,
--16.532,-15.989,-15.439,-14.884,-14.321,-13.743,-13.141,-12.504,-11.824,-11.097,-10.324,-9.514,-8.677,-7.829,-6.984,-6.152,
--5.340,-4.548,-3.776,-3.020,-2.283,-1.568,-.884,-.246,.335,.847,1.288,1.665,1.995,2.305,2.627,2.992,
-3.427,3.946,4.554,5.242,5.990,6.775,7.570,8.356,9.118,9.852,10.559,11.245,11.916,12.576,13.221,13.847,
-14.446,15.012,15.547,16.059,16.569,17.100,17.678,18.323,19.044,19.831,20.662,21.499,22.299,23.020,23.631,24.117,
-24.482,24.743,24.928,25.067,25.184,25.290,25.383,25.454,25.488,25.475,25.413,25.317,25.211,25.128,25.102,25.156,
-25.298,25.521,25.801,26.107,26.408,26.682,26.925,27.148,27.378,27.651,28.000,28.448,29.002,29.650,30.364,31.107,
-31.841,32.534,33.165,33.729,34.233,34.694,35.133,35.568,36.012,36.472,36.947,37.435,37.930,38.428,38.927,39.425,
-39.923,40.419,40.910,41.390,41.852,42.291,42.702,43.085,43.444,43.784,44.114,44.440,44.766,45.094,45.419,45.735,
-46.036,46.314,46.568,46.797,47.008,47.211,47.417,47.640,47.891,48.179,48.510,48.885,49.302,49.757,50.246,50.763,
-51.305,51.869,52.450,53.046,53.646,54.239,54.807,55.326,55.771,56.117,56.346,56.450,56.435,56.320,56.138,55.933,
-55.750,55.627,55.592,55.658,55.820,56.056,56.337,56.633,56.915,57.169,57.389,57.584,57.766,57.950,58.146,58.353,
-58.560,58.750,58.903,59.001,59.039,59.022,58.969,58.909,58.873,58.886,58.961,59.096,59.273,59.460,59.622,59.728,
-59.755,59.698,59.567,59.390,59.200,59.032,58.918,58.877,58.915,59.028,59.200,59.413,59.650,59.894,60.137,60.372,
-60.598,60.814,61.017,61.205,61.375,61.526,61.656,61.769,61.869,61.964,62.057,62.148,62.236,62.310,62.360,62.375,
-62.347,62.275,62.165,62.028,61.881,61.737,61.607,61.494,61.392,61.290,61.174,61.031,60.854,60.646,60.416,60.181,
-59.959,59.764,59.603,59.474,59.364,59.255,59.128,58.967,58.763,58.517,58.239,57.945,57.650,57.369,57.108,56.866,
-56.638,56.413,56.182,55.941,55.690,55.435,55.182,54.940,54.711,54.492,54.272,54.037,53.771,53.465,53.115,52.728,
-52.324,51.926,51.563,51.259,51.032,50.886,50.816,50.805,50.830,50.865,50.886,50.876,50.823,50.726,50.587,50.413,
-50.215,50.001,49.780,49.560,49.348,49.149,48.969,48.810,48.675,48.755,48.661,48.601,48.564,48.538,48.507,48.458,
-48.380,48.266,48.116,47.933,47.723,47.490,47.241,46.977,46.699,46.406,46.093,45.760,45.404,45.024,44.621,44.198,
-43.758,43.310,42.865,42.437,42.045,41.707,41.442,41.264,41.178,41.181,41.259,41.386,41.534,41.673,41.775,41.824,
-41.812,41.744,41.633,41.496,41.350,41.203,41.057,40.902,40.716,40.473,40.142,39.696,39.117,38.396,37.540,36.572,
-35.525,34.446,33.386,32.399,31.531,30.822,30.294,29.954,29.793,29.785,29.898,30.093,30.331,30.580,30.817,31.026,
-31.199,31.331,31.420,31.459,31.443,31.363,31.213,30.992,30.705,30.365,29.993,29.613,29.246,28.908,28.606,28.335,
-28.081,27.824,27.544,27.227,26.865,26.461,26.028,25.583,25.146,24.732,24.350,24.002,23.680,23.375,23.072,22.763,
-22.439,22.101,21.751,21.396,21.045,20.705,20.382,20.079,19.798,19.540,19.304,19.091,18.900,18.733,18.589,18.466,
-18.362,18.272,18.195,18.125,18.062,18.006,17.957,17.917,17.890,17.876,17.875,17.886,17.904,17.926,17.946,17.960,
-17.963,17.953,17.927,17.885,17.824,17.740,17.631,17.493,17.321,17.113,16.870,16.596,16.298,15.988,15.678,15.382,
-15.111,14.871,14.663,14.482,14.315,14.150,13.969,13.761,13.518,13.238,12.929,12.602,12.275,11.965,11.688,11.455,
-11.270,11.130,11.027,10.947,10.877,10.801,10.710,10.596,10.457,10.296,10.120,9.936,9.755,9.582,9.425,9.285,
-9.164,9.056,8.958,8.862,8.760,8.644,8.508,8.346,8.154,7.930,7.675,7.389,7.075,6.741,6.391,6.035,
-5.681,5.337,5.010,4.705,4.422,4.160,3.912,3.671,3.429,3.179,2.916,2.640,2.353,2.059,1.766,1.480,
-1.207,.951,.713,.493,.291,.103,-.071,-.235,-.390,-.541,-.691,-.845,-1.008,-1.184,-1.373,-1.572,
--1.775,-1.975,-2.161,-2.326,-2.469,-2.591,-2.700,-2.808,-2.927,-3.069,-3.241,-3.442,-3.669,-3.910,-4.153,-4.387,
--4.607,-4.810,-5.001,-5.186,-5.373,-5.566,-5.764,-5.958,-6.136,-6.279,-6.371,-6.397,-6.352,-6.237,-6.067,-5.861,
--5.647,-5.456,-5.317,-5.256,-5.292,-5.436,-5.688,-6.039,-6.473,-6.965,-7.490,-8.020,-8.534,-9.016,-9.462,-9.873,
--10.260,-10.636,-11.015,-11.405,-11.807,-12.211,-12.605,-12.968,-13.283,-13.537,-13.723,-13.847,-13.919,-13.957,-13.978,-13.996,
--14.022,-14.057,-14.101,-14.147,-14.190,-14.224,-14.249,-14.266,-14.277,-14.285,-14.292,-14.299,-14.303,-14.306,-14.308,-14.313,
--14.327,-14.357,-14.410,-14.488,-14.590,-14.710,-14.836,-14.960,-15.073,-15.169,-15.248,-15.317,-15.380,-15.444,-15.511,-15.580,
--15.646,-15.701,-15.739,-15.760,-15.765,-15.764,-15.768,-15.785,-15.819,-15.868,-15.921,-15.962,-15.975,-15.951,-15.888,-15.797,
--15.701,-15.626,-15.600,-15.643,-15.762,-15.948,-16.181,-16.431,-16.668,-16.868,-17.017,-17.117,-17.180,-17.227,-17.280,-17.356,
--17.464,-17.602,-17.756,-17.909,-18.041,-18.133,-18.176,-18.164,-18.100,-17.991,-17.847,-17.679,-17.497,-17.314,-17.139,-16.985,
--16.863,-16.782,-16.750,-16.768,-16.831,-16.928,-17.041,-17.153,-17.245,-17.303,-17.320,-17.295,-17.237,-17.157,-17.071,-16.991,
--16.929,-16.893,-16.886,-16.906,-16.950,-17.013,-17.087,-17.168,-17.248,-17.320,-17.380,-17.422,-17.441,-17.435,-17.403,-17.345,
--17.266,-17.169,-17.061,-16.949,-16.840,-16.743,-16.666,-16.616,-16.599,-16.618,-16.671,-16.753,-16.853,-16.957,-17.051,-17.121,
--17.156,-17.155,-17.122,-17.066,-17.002,-16.944,-16.903,-16.887,-16.891,-16.908,-16.925,-16.926,-16.897,-16.832,-16.728,-16.589,
--16.424,-16.246,-16.066,-15.891,-15.729,-15.581,-15.447,-15.326,-15.214,-15.110,-15.012,-14.917,-14.822,-14.721,-14.608,-14.477,
--14.323,-14.145,-13.944,-13.726,-13.496,-13.266,-13.042,-12.830,-12.633,-12.451,-12.282,-12.124,-11.974,-11.833,-11.704,-11.589,
--11.493,-11.416,-11.360,-11.320,-11.293,-11.272,-11.253,-11.234,-11.215,-11.201,-11.197,-11.209,-11.245,-11.311,-11.411,-11.549,
--11.730,-11.954,-12.225,-12.542,-12.900,-13.293,-13.705,-14.118,-14.507,-14.846,-15.110,-15.273,-15.317,-15.229,-15.001,-14.631,
--14.123,-13.483,-12.726,-11.869,-10.938,-9.966,-8.991,-8.057,-7.208,-6.482,-5.905,-5.493,-5.241,-5.128,-5.122,-5.182,
--5.265,-5.337,-5.371,-5.357,-5.294,-5.192,-5.066,-4.933,-4.802,-4.682,-4.570,-4.462,-4.352,-4.233,-4.102,-3.961,
--3.817,-3.676,-3.548,-3.438,-3.348,-3.271,-3.194,-3.101,-2.970,-2.779,-2.512,-2.158,-1.720,-1.211,-.658,-.097,
-.432,.889,1.242,1.473,1.581,1.580,1.500,1.379,1.256,1.162,1.117,1.126,1.177,1.250,1.317,1.355,
-1.346,1.288,1.186,1.058,.925,.811,.732,.699,.716,.780,.884,1.022,1.189,1.379,1.592,1.824,
-2.071,2.324,2.574,2.812,3.030,3.223,3.394,3.549,3.697,3.849,4.012,4.188,4.372,4.553,4.719,4.858,
-4.960,5.024,5.053,5.057,5.048,5.039,5.039,5.052,5.076,5.107,5.137,5.161,5.175,5.181,5.180,5.180,
-5.184,5.197,5.219,5.247,5.279,5.309,5.334,5.353,5.369,5.384,5.403,5.431,5.469,5.519,5.578,5.641,
-5.706,5.768,5.827,5.883,5.937,5.993,6.054,6.119,6.188,6.257,6.321,6.375,6.415,6.438,6.446,6.445,
-6.442,6.448,6.470,6.518,6.594,6.698,6.825,6.965,7.107,7.241,7.360,7.457,7.533,7.594,7.645,7.696,
-7.754,7.824,7.907,8.000,8.097,8.188,8.264,8.314,8.332,8.311,8.248,8.145,8.003,7.827,7.624,7.403,
-7.171,6.938,6.715,6.509,6.329,6.180,6.066,5.989,5.949,5.945,5.974,6.033,6.114,6.210,6.313,6.411,
-6.494,6.553,6.581,6.575,6.538,6.478,6.407,6.339,6.286,6.259,6.262,6.294,6.346,6.407,6.461,6.495,
-6.496,6.457,6.375,6.252,6.092,5.905,5.698,5.481,5.261,5.046,4.841,4.650,4.475,4.316,4.169,4.032,
-3.899,3.765,3.625,3.478,3.323,3.162,3.000,2.840,2.687,2.541,2.402,2.268,2.134,1.997,1.857,1.715,
-1.576,1.448,1.339,1.254,1.198,1.167,1.156,1.154,1.152,1.138,1.107,1.057,.991,.918,.847,.787,
-.744,.719,.709,.709,.710,.706,.693,.670,.642,.614,.596,.592,.607,.642,.694,.758,
-.829,.905,.985,1.073,1.172,1.291,1.435,1.608,1.809,2.033,2.274,2.521,2.765,2.997,3.210,3.401,
-3.571,3.720,3.853,3.971,4.076,4.168,4.245,4.304,4.341,4.352,4.337,4.300,4.245,4.183,4.130,4.101,
-4.113,4.181,4.319,4.529,4.812,5.157,5.548,5.964,6.379,6.770,7.116,7.401,7.616,7.757,7.830,7.843,
-7.811,7.748,7.670,7.592,7.526,7.482,7.468,7.488,7.542,7.631,7.750,7.896,8.061,8.241,8.427,8.613,
-8.792,8.956,9.100,9.216,9.300,9.347,9.355,9.323,9.254,9.151,9.023,8.879,8.729,8.585,8.455,8.346,
-8.262,8.200,8.157,8.123,8.086,8.038,7.969,7.874,7.754,7.614,7.462,7.309,7.162,7.028,6.906,6.793,
-6.681,6.560,6.425,6.272,6.101,5.920,5.737,5.558,5.390,5.229,5.069,4.898,4.705,4.482,4.225,3.941,
-3.642,3.345,3.065,2.810,2.578,2.358,2.127,1.860,1.537,1.148,.698,.208,-.285,-.742,-1.123,-1.400,
--1.565,-1.625,-1.610,-1.557,-1.508,-1.498,-1.551,-1.676,-1.866,-2.105,-2.371,-2.645,-2.913,-3.170,-3.416,-3.656,
--3.894,-4.134,-4.372,-4.602,-4.816,-5.007,-5.171,-5.314,-5.444,-5.576,-5.723,-5.899,-6.110,-6.357,-6.633,-6.930,
--7.234,-7.533,-7.819,-8.084,-8.327,-8.548,-8.747,-8.928,-9.094,-9.248,-9.396,-9.545,-9.703,-9.878,-10.079,-10.309,
--10.570,-10.859,-11.169,-11.493,-11.824,-12.158,-12.496,-12.844,-13.211,-13.605,-14.035,-14.502,-15.002,-15.521,-16.042,-16.542,
--17.001,-17.401,-17.733,-17.997,-18.204,-18.371,-18.524,-18.692,-18.900,-19.172,-19.523,-19.960,-20.478,-21.065,-21.697,-22.349,
--22.991,-23.598,-24.148,-24.629,-25.041,-25.392,-25.699,-25.983,-26.263,-26.558,-26.877,-27.220,-27.582,-27.949,-28.310,-28.653,
--28.972,-29.266,-29.542,-29.806,-30.066,-30.327,-30.587,-30.839,-31.076,-31.286,-31.464,-31.611,-31.734,-31.847,-31.968,-32.111,
--32.286,-32.494,-32.727,-32.969,-33.202,-33.410,-33.582,-33.718,-33.828,-33.929,-34.041,-34.181,-34.359,-34.576,-34.821,-35.075,
--35.317,-35.527,-35.692,-35.807,-35.877,-35.911,-35.925,-35.930,-35.933,-35.938,-35.938,-35.927,-35.896,-35.841,-35.760,-35.660,
--35.549,-35.438,-35.336,-35.249,-35.178,-35.117,-35.058,-34.992,-34.911,-34.810,-34.688,-34.547,-34.389,-34.216,-34.028,-33.821,
--33.587,-33.321,-33.018,-32.677,-32.304,-31.913,-31.522,-31.151,-30.822,-30.547,-30.335,-30.186,-30.089,-30.032,-30.000,-29.981,
--29.969,-29.967,-29.982,-30.026,-30.111,-30.246,-30.428,-30.648,-30.885,-31.109,-31.288,-31.392,-31.399,-31.294,-31.078,-30.762,
--30.367,-29.920,-29.450,-28.984,-28.542,-28.142,-27.791,-27.494,-27.249,-27.053,-26.902,-26.792,-26.719,-26.677,-26.661,-26.665,
--26.681,-26.698,-26.704,-26.686,-26.633,-26.534,-26.384,-26.180,-25.930,-25.643,-25.338,-25.032,-24.744,-24.488,-24.272,-24.092,
--23.938,-23.793,-23.637,-23.447,-23.211,-22.919,-22.572,-22.181,-21.758,-21.319,-20.876,-20.437,-20.004,-19.571,-19.131,-18.676,
--18.199,-17.701,-17.182,-16.650,-16.109,-15.563,-15.011,-14.447,-13.858,-13.232,-12.554,-11.815,-11.011,-10.148,-9.236,-8.292,
--7.336,-6.385,-5.455,-4.553,-3.684,-2.843,-2.028,-1.232,-.453,.308,1.044,1.745,2.399,2.992,3.515,3.965,
-4.348,4.676,4.967,5.245,5.534,5.855,6.226,6.656,7.151,7.710,8.331,9.005,9.727,10.487,11.273,12.073,
-12.870,13.647,14.385,15.074,15.706,16.288,16.832,17.361,17.903,18.480,19.110,19.794,20.523,21.271,22.006,22.694,
-23.305,23.821,24.235,24.551,24.782,24.942,25.044,25.097,25.107,25.077,25.016,24.938,24.867,24.834,24.872,25.007,
-25.256,25.614,26.061,26.558,27.060,27.525,27.924,28.246,28.504,28.729,28.964,29.252,29.625,30.101,30.673,31.322,
-32.013,32.708,33.378,34.002,34.572,35.096,35.587,36.062,36.533,37.011,37.496,37.985,38.475,38.960,39.441,39.920,
-40.400,40.885,41.377,41.872,42.363,42.839,43.291,43.711,44.096,44.447,44.771,45.077,45.371,45.659,45.941,46.213,
-46.469,46.700,46.900,47.068,47.207,47.327,47.444,47.575,47.740,47.955,48.232,48.579,48.997,49.480,50.019,50.602,
-51.217,51.851,52.495,53.139,53.775,54.393,54.981,55.522,55.996,56.382,56.658,56.811,56.836,56.743,56.556,56.313,
-56.060,55.845,55.710,55.683,55.774,55.977,56.266,56.606,56.961,57.298,57.595,57.844,58.049,58.220,58.374,58.520,
-58.663,58.800,58.920,59.013,59.071,59.094,59.090,59.080,59.083,59.122,59.209,59.344,59.514,59.694,59.854,59.962,
-59.998,59.953,59.837,59.673,59.495,59.342,59.246,59.229,59.302,59.459,59.683,59.951,60.241,60.530,60.803,61.054,
-61.278,61.478,61.654,61.810,61.947,62.067,62.171,62.265,62.352,62.440,62.531,62.627,62.721,62.805,62.863,62.883,
-62.854,62.772,62.644,62.485,62.315,62.154,62.020,61.918,61.845,61.784,61.713,61.608,61.451,61.233,60.961,60.652,
-60.334,60.033,59.773,59.566,59.410,59.292,59.187,59.072,58.924,58.730,58.490,58.212,57.916,57.618,57.336,57.079,
-56.848,56.639,56.441,56.245,56.045,55.837,55.625,55.411,55.199,54.987,54.769,54.533,54.266,53.957,53.601,53.204,
-52.779,52.351,51.947,51.592,51.308,51.105,50.980,50.921,50.908,50.915,50.922,50.911,50.871,50.798,50.693,50.562,
-50.409,50.237,50.051,49.853,49.646,49.436,49.233,49.046,48.884,48.755,48.823,48.702,48.623,48.580,48.556,48.531,
-48.485,48.400,48.266,48.081,47.850,47.581,47.287,46.978,46.662,46.341,46.015,45.678,45.327,44.955,44.559,44.139,
-43.699,43.248,42.800,42.374,41.990,41.673,41.441,41.310,41.284,41.355,41.503,41.697,41.899,42.070,42.178,42.200,
-42.131,41.978,41.762,41.509,41.244,40.988,40.746,40.512,40.266,39.980,39.623,39.168,38.597,37.902,37.091,36.184,
-35.212,34.215,33.236,32.321,31.510,30.839,30.332,30.002,29.844,29.841,29.962,30.168,30.417,30.668,30.889,31.061,
-31.175,31.234,31.246,31.223,31.173,31.099,30.999,30.866,30.692,30.474,30.209,29.905,29.571,29.219,28.861,28.501,
-28.142,27.778,27.404,27.013,26.604,26.180,25.750,25.328,24.925,24.552,24.210,23.897,23.602,23.310,23.009,22.687,
-22.342,21.973,21.588,21.198,20.811,20.435,20.076,19.735,19.412,19.110,18.830,18.579,18.363,18.188,18.061,17.980,
-17.940,17.931,17.937,17.943,17.935,17.904,17.848,17.770,17.680,17.589,17.510,17.454,17.427,17.431,17.463,17.519,
-17.589,17.667,17.744,17.812,17.866,17.896,17.897,17.858,17.772,17.629,17.426,17.161,16.841,16.476,16.086,15.693,
-15.320,14.987,14.709,14.491,14.331,14.213,14.119,14.024,13.908,13.754,13.555,13.312,13.036,12.745,12.459,12.198,
-11.976,11.801,11.673,11.584,11.518,11.456,11.381,11.273,11.122,10.921,10.670,10.380,10.064,9.739,9.426,9.143,
-8.901,8.710,8.570,8.475,8.414,8.372,8.335,8.289,8.223,8.131,8.008,7.851,7.659,7.432,7.168,6.867,
-6.531,6.162,5.770,5.366,4.962,4.573,4.211,3.884,3.595,3.339,3.109,2.894,2.682,2.464,2.232,1.985,
-1.725,1.456,1.186,.920,.664,.422,.197,-.012,-.204,-.383,-.552,-.717,-.882,-1.052,-1.229,-1.416,
--1.609,-1.804,-1.994,-2.174,-2.337,-2.483,-2.616,-2.743,-2.876,-3.027,-3.204,-3.411,-3.647,-3.904,-4.168,-4.427,
--4.669,-4.886,-5.076,-5.243,-5.393,-5.533,-5.667,-5.794,-5.908,-5.999,-6.054,-6.063,-6.020,-5.925,-5.786,-5.618,
--5.440,-5.276,-5.149,-5.078,-5.081,-5.172,-5.357,-5.638,-6.011,-6.463,-6.977,-7.529,-8.095,-8.648,-9.170,-9.648,
--10.078,-10.468,-10.831,-11.185,-11.545,-11.920,-12.311,-12.707,-13.092,-13.446,-13.750,-13.990,-14.163,-14.274,-14.337,-14.368,
--14.385,-14.400,-14.422,-14.451,-14.485,-14.517,-14.542,-14.556,-14.559,-14.551,-14.536,-14.516,-14.497,-14.480,-14.470,-14.472,
--14.490,-14.529,-14.593,-14.683,-14.796,-14.924,-15.056,-15.180,-15.288,-15.373,-15.438,-15.491,-15.541,-15.598,-15.668,-15.750,
--15.836,-15.914,-15.973,-16.003,-16.006,-15.990,-15.972,-15.970,-16.001,-16.070,-16.171,-16.284,-16.384,-16.445,-16.447,-16.387,
--16.277,-16.145,-16.029,-15.963,-15.975,-16.073,-16.249,-16.476,-16.719,-16.942,-17.119,-17.240,-17.309,-17.348,-17.384,-17.442,
--17.542,-17.688,-17.871,-18.073,-18.269,-18.437,-18.560,-18.629,-18.646,-18.617,-18.551,-18.455,-18.338,-18.203,-18.056,-17.906,
--17.763,-17.644,-17.564,-17.538,-17.572,-17.665,-17.803,-17.962,-18.114,-18.231,-18.290,-18.281,-18.206,-18.078,-17.919,-17.757,
--17.616,-17.515,-17.467,-17.474,-17.531,-17.628,-17.751,-17.886,-18.021,-18.144,-18.245,-18.318,-18.357,-18.358,-18.321,-18.248,
--18.144,-18.017,-17.875,-17.730,-17.590,-17.464,-17.358,-17.277,-17.226,-17.204,-17.214,-17.252,-17.316,-17.397,-17.489,-17.578,
--17.657,-17.714,-17.744,-17.745,-17.719,-17.673,-17.613,-17.549,-17.487,-17.429,-17.376,-17.326,-17.273,-17.214,-17.145,-17.063,
--16.967,-16.856,-16.730,-16.589,-16.433,-16.262,-16.078,-15.885,-15.687,-15.492,-15.306,-15.134,-14.978,-14.834,-14.697,-14.558,
--14.408,-14.241,-14.055,-13.852,-13.639,-13.427,-13.224,-13.038,-12.873,-12.730,-12.603,-12.487,-12.378,-12.272,-12.169,-12.071,
--11.983,-11.907,-11.845,-11.794,-11.749,-11.705,-11.657,-11.601,-11.539,-11.476,-11.419,-11.379,-11.364,-11.380,-11.432,-11.520,
--11.645,-11.805,-12.001,-12.233,-12.503,-12.809,-13.146,-13.504,-13.867,-14.212,-14.513,-14.745,-14.883,-14.907,-14.802,-14.560,
--14.177,-13.658,-13.009,-12.245,-11.385,-10.459,-9.501,-8.553,-7.661,-6.866,-6.205,-5.700,-5.359,-5.169,-5.103,-5.124,
--5.189,-5.261,-5.310,-5.320,-5.287,-5.217,-5.124,-5.023,-4.923,-4.831,-4.744,-4.657,-4.563,-4.453,-4.327,-4.184,
--4.030,-3.873,-3.722,-3.584,-3.462,-3.357,-3.265,-3.179,-3.088,-2.976,-2.828,-2.625,-2.351,-1.996,-1.555,-1.039,
--.467,.126,.698,1.204,1.605,1.872,1.997,1.991,1.884,1.719,1.543,1.401,1.323,1.325,1.405,1.543,
-1.715,1.890,2.043,2.157,2.224,2.243,2.219,2.160,2.073,1.967,1.846,1.721,1.603,1.505,1.445,1.437,
-1.494,1.620,1.811,2.055,2.335,2.630,2.922,3.199,3.453,3.687,3.906,4.115,4.320,4.521,4.713,4.887,
-5.036,5.152,5.233,5.281,5.305,5.315,5.320,5.330,5.346,5.369,5.394,5.416,5.431,5.437,5.436,5.432,
-5.432,5.440,5.459,5.489,5.526,5.566,5.603,5.634,5.658,5.678,5.698,5.723,5.759,5.809,5.872,5.945,
-6.022,6.098,6.166,6.224,6.272,6.314,6.354,6.399,6.452,6.517,6.590,6.668,6.741,6.803,6.846,6.867,
-6.868,6.854,6.838,6.830,6.844,6.887,6.962,7.067,7.194,7.329,7.461,7.578,7.676,7.754,7.817,7.874,
-7.932,8.000,8.079,8.166,8.256,8.337,8.400,8.438,8.445,8.423,8.374,8.303,8.214,8.111,7.995,7.866,
-7.723,7.567,7.399,7.225,7.051,6.886,6.738,6.612,6.511,6.438,6.389,6.361,6.352,6.357,6.374,6.398,
-6.427,6.454,6.475,6.484,6.478,6.455,6.419,6.376,6.336,6.309,6.304,6.326,6.375,6.443,6.518,6.585,
-6.629,6.634,6.591,6.499,6.358,6.177,5.968,5.743,5.513,5.289,5.078,4.885,4.709,4.551,4.407,4.271,
-4.139,4.007,3.870,3.725,3.574,3.417,3.259,3.103,2.953,2.811,2.677,2.549,2.422,2.291,2.154,2.010,
-1.860,1.713,1.578,1.464,1.380,1.333,1.320,1.337,1.373,1.415,1.447,1.460,1.446,1.404,1.340,1.261,
-1.179,1.104,1.045,1.004,.981,.972,.970,.970,.966,.955,.939,.921,.904,.894,.894,.909,
-.938,.985,1.049,1.132,1.235,1.362,1.513,1.690,1.891,2.114,2.354,2.602,2.852,3.094,3.323,3.532,
-3.719,3.885,4.029,4.156,4.269,4.372,4.465,4.551,4.626,4.688,4.732,4.753,4.749,4.723,4.680,4.633,
-4.598,4.594,4.639,4.747,4.928,5.180,5.493,5.849,6.224,6.592,6.931,7.220,7.450,7.617,7.727,7.788,
-7.814,7.818,7.813,7.807,7.806,7.815,7.835,7.866,7.909,7.962,8.026,8.099,8.180,8.269,8.365,8.467,
-8.574,8.686,8.800,8.910,9.010,9.092,9.148,9.168,9.147,9.083,8.979,8.843,8.686,8.525,8.372,8.240,
-8.135,8.058,8.005,7.966,7.926,7.875,7.800,7.698,7.569,7.420,7.264,7.113,6.979,6.870,6.789,6.731,
-6.686,6.643,6.591,6.522,6.436,6.336,6.230,6.124,6.024,5.927,5.824,5.700,5.538,5.323,5.051,4.727,
-4.371,4.009,3.674,3.390,3.172,3.015,2.899,2.789,2.643,2.426,2.116,1.710,1.228,.708,.198,-.254,
--.613,-.864,-1.010,-1.077,-1.102,-1.126,-1.183,-1.296,-1.470,-1.697,-1.959,-2.234,-2.505,-2.760,-2.996,-3.217,
--3.430,-3.642,-3.856,-4.070,-4.277,-4.472,-4.649,-4.808,-4.955,-5.099,-5.254,-5.433,-5.642,-5.887,-6.163,-6.465,
--6.781,-7.104,-7.426,-7.744,-8.054,-8.357,-8.650,-8.930,-9.193,-9.433,-9.648,-9.839,-10.012,-10.178,-10.354,-10.555,
--10.797,-11.088,-11.430,-11.818,-12.238,-12.676,-13.116,-13.545,-13.957,-14.350,-14.728,-15.100,-15.473,-15.852,-16.239,-16.630,
--17.018,-17.392,-17.741,-18.055,-18.330,-18.564,-18.762,-18.936,-19.102,-19.279,-19.487,-19.743,-20.062,-20.449,-20.904,-21.415,
--21.965,-22.529,-23.083,-23.604,-24.074,-24.486,-24.842,-25.152,-25.432,-25.702,-25.980,-26.276,-26.597,-26.939,-27.298,-27.662,
--28.026,-28.385,-28.740,-29.094,-29.451,-29.815,-30.183,-30.547,-30.894,-31.207,-31.473,-31.683,-31.840,-31.954,-32.047,-32.141,
--32.260,-32.420,-32.627,-32.873,-33.144,-33.416,-33.668,-33.885,-34.063,-34.208,-34.335,-34.465,-34.616,-34.800,-35.019,-35.261,
--35.509,-35.741,-35.936,-36.081,-36.174,-36.220,-36.233,-36.231,-36.228,-36.234,-36.250,-36.270,-36.284,-36.280,-36.249,-36.191,
--36.108,-36.011,-35.913,-35.825,-35.753,-35.700,-35.659,-35.620,-35.568,-35.493,-35.386,-35.244,-35.071,-34.872,-34.656,-34.428,
--34.192,-33.946,-33.685,-33.405,-33.100,-32.770,-32.421,-32.062,-31.709,-31.379,-31.087,-30.844,-30.653,-30.512,-30.411,-30.341,
--30.291,-30.255,-30.234,-30.234,-30.266,-30.341,-30.465,-30.638,-30.848,-31.076,-31.293,-31.468,-31.572,-31.585,-31.498,-31.315,
--31.051,-30.728,-30.372,-30.007,-29.652,-29.317,-29.005,-28.714,-28.440,-28.178,-27.929,-27.695,-27.482,-27.299,-27.153,-27.048,
--26.985,-26.956,-26.951,-26.951,-26.941,-26.902,-26.820,-26.688,-26.503,-26.272,-26.009,-25.732,-25.460,-25.213,-25.004,-24.836,
--24.705,-24.597,-24.488,-24.356,-24.176,-23.935,-23.625,-23.254,-22.836,-22.394,-21.950,-21.524,-21.125,-20.755,-20.405,-20.060,
--19.700,-19.309,-18.877,-18.401,-17.884,-17.336,-16.768,-16.190,-15.604,-15.009,-14.396,-13.752,-13.061,-12.312,-11.499,-10.622,
--9.693,-8.726,-7.743,-6.762,-5.800,-4.864,-3.951,-3.052,-2.151,-1.231,-.281,.701,1.701,2.694,3.640,4.496,
-5.219,5.780,6.163,6.377,6.449,6.425,6.357,6.302,6.309,6.416,6.648,7.014,7.515,8.143,8.882,9.716,
-10.623,11.579,12.552,13.509,14.417,15.247,15.982,16.617,17.164,17.650,18.112,18.587,19.104,19.680,20.311,20.979,
-21.652,22.296,22.879,23.379,23.786,24.104,24.342,24.516,24.638,24.718,24.763,24.783,24.791,24.808,24.863,24.987,
-25.210,25.550,26.009,26.567,27.187,27.821,28.418,28.940,29.367,29.700,29.964,30.200,30.452,30.761,31.150,31.626,
-32.178,32.781,33.408,34.031,34.635,35.213,35.769,36.311,36.848,37.387,37.926,38.460,38.979,39.477,39.951,40.404,
-40.846,41.287,41.739,42.208,42.692,43.185,43.672,44.140,44.574,44.967,45.317,45.626,45.902,46.153,46.386,46.603,
-46.804,46.985,47.139,47.264,47.361,47.435,47.498,47.567,47.662,47.804,48.013,48.301,48.679,49.146,49.695,50.314,
-50.983,51.683,52.392,53.093,53.771,54.413,55.010,55.556,56.039,56.450,56.775,57.002,57.121,57.132,57.041,56.870,
-56.649,56.419,56.222,56.094,56.062,56.136,56.309,56.560,56.859,57.170,57.466,57.725,57.939,58.110,58.250,58.371,
-58.486,58.599,58.712,58.821,58.919,59.003,59.075,59.141,59.212,59.301,59.413,59.551,59.704,59.854,59.981,60.062,
-60.082,60.039,59.943,59.819,59.699,59.617,59.603,59.676,59.838,60.080,60.378,60.704,61.029,61.328,61.588,61.802,
-61.975,62.115,62.232,62.338,62.437,62.532,62.625,62.715,62.802,62.888,62.975,63.064,63.152,63.233,63.296,63.328,
-63.319,63.260,63.153,63.007,62.839,62.669,62.520,62.403,62.325,62.275,62.236,62.181,62.084,61.927,61.700,61.408,
-61.068,60.706,60.349,60.020,59.734,59.493,59.288,59.104,58.923,58.731,58.519,58.288,58.044,57.799,57.564,57.344,
-57.143,56.955,56.774,56.592,56.402,56.204,55.999,55.792,55.586,55.381,55.173,54.951,54.702,54.415,54.080,53.702,
-53.290,52.866,52.456,52.086,51.775,51.536,51.367,51.256,51.184,51.128,51.068,50.993,50.898,50.786,50.665,50.544,
-50.428,50.317,50.205,50.084,49.944,49.780,49.591,49.386,49.178,48.985,48.823,48.860,48.687,48.573,48.512,48.489,
-48.478,48.450,48.381,48.250,48.049,47.777,47.445,47.067,46.659,46.239,45.818,45.407,45.009,44.625,44.254,43.893,
-43.539,43.192,42.854,42.535,42.243,41.997,41.811,41.700,41.673,41.728,41.851,42.017,42.191,42.334,42.411,42.396,
-42.277,42.063,41.773,41.439,41.092,40.759,40.453,40.171,39.893,39.593,39.236,38.796,38.255,37.608,36.867,36.053,
-35.197,34.331,33.486,32.690,31.969,31.342,30.828,30.439,30.184,30.063,30.065,30.172,30.354,30.575,30.799,30.991,
-31.131,31.205,31.215,31.171,31.087,30.979,30.855,30.721,30.574,30.406,30.210,29.978,29.709,29.402,29.062,28.693,
-28.298,27.880,27.438,26.976,26.496,26.008,25.523,25.057,24.623,24.231,23.883,23.575,23.293,23.020,22.737,22.432,
-22.098,21.739,21.363,20.984,20.615,20.265,19.938,19.630,19.336,19.051,18.771,18.501,18.249,18.028,17.853,17.733,
-17.671,17.660,17.684,17.723,17.752,17.753,17.713,17.628,17.508,17.367,17.226,17.104,17.019,16.981,16.992,17.048,
-17.141,17.258,17.387,17.519,17.646,17.760,17.856,17.924,17.956,17.940,17.862,17.714,17.488,17.187,16.821,16.411,
-15.983,15.568,15.195,14.883,14.646,14.479,14.370,14.294,14.224,14.133,14.001,13.818,13.586,13.319,13.036,12.760,
-12.515,12.314,12.165,12.066,12.005,11.964,11.921,11.855,11.746,11.578,11.343,11.042,10.681,10.276,9.848,9.421,
-9.019,8.664,8.373,8.152,8.003,7.916,7.877,7.869,7.875,7.878,7.866,7.828,7.758,7.647,7.491,7.284,
-7.020,6.697,6.319,5.894,5.436,4.966,4.506,4.076,3.693,3.365,3.093,2.869,2.679,2.506,2.336,2.157,
-1.960,1.745,1.513,1.271,1.024,.777,.534,.300,.074,-.141,-.347,-.544,-.734,-.919,-1.102,-1.285,
--1.471,-1.659,-1.847,-2.031,-2.207,-2.372,-2.526,-2.672,-2.818,-2.975,-3.155,-3.368,-3.619,-3.907,-4.224,-4.558,
--4.891,-5.209,-5.496,-5.742,-5.942,-6.095,-6.200,-6.257,-6.266,-6.226,-6.137,-6.002,-5.828,-5.627,-5.418,-5.221,
--5.059,-4.952,-4.914,-4.952,-5.068,-5.259,-5.517,-5.835,-6.208,-6.628,-7.091,-7.588,-8.108,-8.636,-9.155,-9.650,
--10.107,-10.519,-10.890,-11.229,-11.551,-11.874,-12.210,-12.565,-12.935,-13.307,-13.662,-13.980,-14.246,-14.448,-14.588,-14.673,
--14.717,-14.737,-14.747,-14.757,-14.772,-14.793,-14.817,-14.840,-14.859,-14.870,-14.874,-14.871,-14.863,-14.850,-14.836,-14.826,
--14.826,-14.843,-14.886,-14.960,-15.065,-15.197,-15.344,-15.491,-15.622,-15.726,-15.798,-15.841,-15.867,-15.891,-15.929,-15.989,
--16.070,-16.162,-16.247,-16.308,-16.335,-16.325,-16.292,-16.257,-16.248,-16.287,-16.384,-16.535,-16.714,-16.890,-17.025,-17.090,
--17.073,-16.985,-16.853,-16.718,-16.622,-16.598,-16.661,-16.805,-17.004,-17.225,-17.431,-17.599,-17.719,-17.800,-17.865,-17.940,
--18.047,-18.197,-18.386,-18.596,-18.799,-18.969,-19.087,-19.144,-19.145,-19.107,-19.047,-18.984,-18.927,-18.879,-18.833,-18.782,
--18.719,-18.645,-18.570,-18.509,-18.480,-18.498,-18.569,-18.685,-18.828,-18.971,-19.085,-19.144,-19.134,-19.052,-18.912,-18.735,
--18.549,-18.384,-18.261,-18.196,-18.195,-18.255,-18.367,-18.518,-18.691,-18.870,-19.037,-19.175,-19.271,-19.311,-19.290,-19.204,
--19.062,-18.874,-18.659,-18.437,-18.228,-18.050,-17.913,-17.822,-17.776,-17.767,-17.786,-17.825,-17.875,-17.930,-17.986,-18.042,
--18.094,-18.141,-18.180,-18.207,-18.219,-18.213,-18.187,-18.140,-18.073,-17.988,-17.890,-17.783,-17.672,-17.562,-17.457,-17.360,
--17.272,-17.189,-17.107,-17.016,-16.909,-16.776,-16.610,-16.412,-16.183,-15.933,-15.673,-15.416,-15.173,-14.951,-14.752,-14.573,
--14.407,-14.248,-14.089,-13.927,-13.765,-13.607,-13.459,-13.325,-13.208,-13.105,-13.010,-12.917,-12.819,-12.712,-12.597,-12.479,
--12.366,-12.264,-12.180,-12.114,-12.063,-12.019,-11.974,-11.920,-11.854,-11.776,-11.695,-11.621,-11.567,-11.541,-11.552,-11.602,
--11.690,-11.814,-11.969,-12.155,-12.370,-12.615,-12.890,-13.188,-13.499,-13.806,-14.087,-14.315,-14.464,-14.512,-14.441,-14.243,
--13.913,-13.455,-12.876,-12.189,-11.410,-10.560,-9.667,-8.763,-7.887,-7.079,-6.376,-5.808,-5.392,-5.127,-4.997,-4.972,
--5.016,-5.089,-5.157,-5.199,-5.206,-5.178,-5.127,-5.064,-5.000,-4.940,-4.880,-4.815,-4.734,-4.629,-4.496,-4.335,
--4.154,-3.960,-3.763,-3.568,-3.382,-3.207,-3.043,-2.893,-2.756,-2.635,-2.526,-2.423,-2.310,-2.165,-1.964,-1.679,
--1.296,-.810,-.238,.385,1.012,1.586,2.055,2.383,2.552,2.572,2.475,2.307,2.122,1.969,1.886,1.893,
-1.993,2.174,2.415,2.693,2.983,3.264,3.517,3.725,3.872,3.941,3.917,3.794,3.573,3.268,2.906,2.526,
-2.170,1.882,1.696,1.632,1.692,1.865,2.125,2.442,2.787,3.133,3.464,3.772,4.053,4.310,4.543,4.753,
-4.937,5.093,5.218,5.313,5.380,5.426,5.459,5.486,5.514,5.543,5.573,5.599,5.619,5.628,5.628,5.621,
-5.613,5.610,5.616,5.635,5.666,5.705,5.748,5.790,5.827,5.860,5.891,5.925,5.968,6.025,6.098,6.187,
-6.286,6.390,6.488,6.574,6.641,6.689,6.718,6.736,6.751,6.772,6.806,6.857,6.923,6.997,7.072,7.136,
-7.182,7.204,7.205,7.192,7.176,7.172,7.190,7.238,7.316,7.419,7.534,7.649,7.755,7.843,7.914,7.972,
-8.028,8.088,8.160,8.243,8.331,8.416,8.485,8.526,8.535,8.512,8.461,8.393,8.318,8.244,8.175,8.109,
-8.041,7.965,7.873,7.764,7.638,7.502,7.364,7.231,7.109,7.001,6.905,6.818,6.736,6.656,6.579,6.508,
-6.446,6.396,6.361,6.340,6.329,6.323,6.317,6.308,6.298,6.290,6.292,6.310,6.346,6.400,6.465,6.527,
-6.574,6.589,6.562,6.486,6.363,6.199,6.005,5.796,5.585,5.383,5.197,5.029,4.879,4.745,4.621,4.502,
-4.385,4.265,4.139,4.006,3.864,3.714,3.558,3.399,3.239,3.081,2.928,2.781,2.640,2.504,2.369,2.235,
-2.103,1.975,1.856,1.753,1.673,1.625,1.611,1.631,1.680,1.749,1.825,1.893,1.942,1.961,1.946,1.899,
-1.824,1.733,1.638,1.549,1.477,1.428,1.402,1.398,1.410,1.433,1.459,1.483,1.502,1.514,1.520,1.523,
-1.527,1.536,1.558,1.596,1.657,1.743,1.856,1.997,2.163,2.350,2.551,2.760,2.971,3.177,3.375,3.561,
-3.736,3.899,4.050,4.191,4.322,4.445,4.559,4.665,4.765,4.856,4.938,5.008,5.064,5.103,5.126,5.135,
-5.138,5.145,5.170,5.227,5.329,5.482,5.687,5.936,6.215,6.506,6.791,7.053,7.282,7.474,7.630,7.757,
-7.863,7.955,8.038,8.115,8.183,8.241,8.287,8.323,8.351,8.376,8.403,8.438,8.484,8.541,8.608,8.682,
-8.760,8.840,8.919,8.995,9.066,9.129,9.176,9.202,9.196,9.153,9.068,8.942,8.781,8.595,8.400,8.210,
-8.039,7.895,7.781,7.693,7.621,7.554,7.481,7.394,7.289,7.171,7.048,6.931,6.834,6.767,6.733,6.730,
-6.751,6.783,6.811,6.825,6.819,6.791,6.746,6.693,6.638,6.582,6.518,6.434,6.310,6.128,5.877,5.555,
-5.179,4.777,4.388,4.049,3.794,3.633,3.561,3.544,3.537,3.486,3.344,3.079,2.686,2.184,1.615,1.034,
-.493,.035,-.317,-.565,-.729,-.845,-.949,-1.072,-1.236,-1.443,-1.686,-1.948,-2.210,-2.459,-2.689,-2.901,
--3.102,-3.302,-3.506,-3.719,-3.935,-4.148,-4.351,-4.538,-4.710,-4.871,-5.031,-5.202,-5.393,-5.611,-5.857,-6.129,
--6.420,-6.725,-7.040,-7.363,-7.695,-8.036,-8.386,-8.740,-9.091,-9.429,-9.742,-10.024,-10.272,-10.493,-10.700,-10.911,
--11.147,-11.426,-11.757,-12.145,-12.581,-13.050,-13.532,-14.005,-14.450,-14.854,-15.211,-15.523,-15.798,-16.048,-16.285,-16.523,
--16.771,-17.033,-17.308,-17.593,-17.877,-18.152,-18.408,-18.639,-18.843,-19.025,-19.195,-19.368,-19.564,-19.799,-20.088,-20.439,
--20.850,-21.310,-21.802,-22.305,-22.794,-23.253,-23.667,-24.035,-24.361,-24.656,-24.937,-25.219,-25.514,-25.829,-26.167,-26.526,
--26.902,-27.292,-27.694,-28.111,-28.544,-28.994,-29.458,-29.930,-30.394,-30.831,-31.222,-31.550,-31.804,-31.986,-32.110,-32.197,
--32.276,-32.374,-32.513,-32.701,-32.938,-33.209,-33.493,-33.769,-34.019,-34.234,-34.417,-34.580,-34.739,-34.910,-35.103,-35.320,
--35.552,-35.783,-35.993,-36.165,-36.289,-36.363,-36.395,-36.400,-36.396,-36.398,-36.415,-36.448,-36.491,-36.532,-36.558,-36.560,
--36.533,-36.481,-36.412,-36.340,-36.274,-36.222,-36.184,-36.154,-36.121,-36.068,-35.982,-35.855,-35.682,-35.469,-35.225,-34.964,
--34.700,-34.444,-34.200,-33.968,-33.744,-33.516,-33.278,-33.022,-32.748,-32.460,-32.168,-31.885,-31.623,-31.392,-31.199,-31.044,
--30.923,-30.832,-30.766,-30.722,-30.705,-30.718,-30.769,-30.864,-31.000,-31.170,-31.357,-31.537,-31.685,-31.777,-31.796,-31.734,
--31.596,-31.397,-31.155,-30.893,-30.628,-30.370,-30.121,-29.877,-29.629,-29.370,-29.095,-28.807,-28.514,-28.231,-27.974,-27.758,
--27.592,-27.480,-27.416,-27.387,-27.376,-27.363,-27.331,-27.265,-27.155,-27.002,-26.810,-26.593,-26.367,-26.151,-25.960,-25.805,
--25.689,-25.603,-25.531,-25.447,-25.325,-25.141,-24.879,-24.535,-24.117,-23.649,-23.158,-22.676,-22.230,-21.837,-21.499,-21.206,
--20.936,-20.662,-20.357,-19.998,-19.572,-19.077,-18.522,-17.921,-17.292,-16.651,-16.009,-15.369,-14.723,-14.060,-13.364,-12.620,
--11.820,-10.961,-10.052,-9.108,-8.149,-7.197,-6.263,-5.351,-4.452,-3.542,-2.594,-1.581,-.485,.693,1.926,3.170,
-4.358,5.420,6.292,6.928,7.309,7.451,7.396,7.209,6.966,6.739,6.590,6.564,6.687,6.971,7.415,8.012,
-8.752,9.617,10.586,11.626,12.697,13.751,14.738,15.620,16.368,16.981,17.477,17.893,18.278,18.678,19.127,19.640,
-20.209,20.809,21.407,21.968,22.469,22.901,23.269,23.589,23.878,24.149,24.408,24.648,24.863,25.045,25.196,25.331,
-25.479,25.672,25.944,26.315,26.787,27.342,27.942,28.543,29.100,29.583,29.982,30.306,30.586,30.859,31.162,31.524,
-31.956,32.455,33.006,33.590,34.188,34.788,35.386,35.988,36.597,37.219,37.850,38.480,39.095,39.678,40.218,40.709,
-41.156,41.572,41.976,42.383,42.808,43.253,43.716,44.183,44.639,45.070,45.463,45.812,46.117,46.381,46.611,46.812,
-46.989,47.142,47.273,47.382,47.469,47.540,47.601,47.664,47.743,47.854,48.013,48.237,48.538,48.926,49.404,49.968,
-50.607,51.303,52.032,52.770,53.489,54.168,54.789,55.340,55.817,56.217,56.541,56.791,56.965,57.067,57.098,57.066,
-56.984,56.870,56.749,56.645,56.581,56.573,56.627,56.737,56.892,57.071,57.254,57.426,57.578,57.708,57.823,57.933,
-58.048,58.174,58.315,58.467,58.624,58.780,58.930,59.073,59.212,59.353,59.499,59.648,59.796,59.929,60.032,60.092,
-60.098,60.053,59.969,59.870,59.787,59.754,59.797,59.934,60.166,60.479,60.848,61.238,61.615,61.951,62.227,62.438,
-62.588,62.691,62.766,62.828,62.891,62.961,63.039,63.122,63.206,63.287,63.362,63.429,63.491,63.544,63.587,63.615,
-63.620,63.595,63.538,63.449,63.334,63.206,63.077,62.962,62.870,62.803,62.756,62.714,62.660,62.576,62.445,62.260,
-62.020,61.731,61.405,61.056,60.696,60.335,59.979,59.630,59.292,58.965,58.656,58.370,58.115,57.894,57.709,57.555,
-57.420,57.291,57.152,56.994,56.809,56.600,56.376,56.146,55.922,55.709,55.505,55.300,55.079,54.825,54.527,54.179,
-53.791,53.381,52.975,52.600,52.281,52.029,51.847,51.720,51.629,51.547,51.454,51.334,51.188,51.022,50.852,50.697,
-50.569,50.474,50.404,50.345,50.275,50.174,50.026,49.830,49.593,49.335,49.082,48.860,48.953,48.737,48.586,48.498,
-48.457,48.435,48.402,48.326,48.183,47.960,47.651,47.264,46.815,46.322,45.811,45.301,44.814,44.365,43.965,43.617,
-43.324,43.079,42.877,42.710,42.573,42.462,42.380,42.331,42.322,42.354,42.424,42.520,42.618,42.691,42.708,42.644,
-42.485,42.231,41.898,41.516,41.118,40.735,40.388,40.079,39.795,39.506,39.178,38.779,38.287,37.698,37.026,36.295,
-35.543,34.801,34.097,33.448,32.860,32.331,31.859,31.443,31.089,30.806,30.607,30.499,30.483,30.549,30.673,30.826,
-30.975,31.094,31.161,31.168,31.118,31.020,30.888,30.731,30.557,30.367,30.156,29.920,29.653,29.353,29.020,28.656,
-28.263,27.843,27.397,26.924,26.427,25.911,25.387,24.872,24.381,23.931,23.533,23.188,22.889,22.618,22.357,22.085,
-21.791,21.470,21.127,20.775,20.431,20.108,19.815,19.550,19.308,19.077,18.847,18.610,18.370,18.137,17.924,17.750,
-17.625,17.554,17.533,17.544,17.566,17.576,17.554,17.489,17.381,17.240,17.084,16.936,16.817,16.743,16.721,16.752,
-16.827,16.931,17.052,17.176,17.295,17.404,17.503,17.592,17.671,17.734,17.772,17.772,17.718,17.599,17.408,17.149,
-16.833,16.485,16.132,15.802,15.517,15.290,15.119,14.990,14.880,14.760,14.606,14.401,14.141,13.834,13.500,13.163,
-12.850,12.581,12.368,12.214,12.111,12.043,11.992,11.935,11.854,11.733,11.561,11.330,11.037,10.685,10.282,9.842,
-9.382,8.926,8.497,8.118,7.806,7.574,7.423,7.346,7.332,7.361,7.413,7.469,7.508,7.516,7.478,7.382,
-7.222,6.989,6.685,6.314,5.885,5.416,4.928,4.445,3.987,3.572,3.211,2.905,2.651,2.439,2.255,2.090,
-1.932,1.774,1.613,1.446,1.271,1.088,.895,.691,.475,.251,.021,-.209,-.434,-.650,-.855,-1.051,
--1.241,-1.430,-1.623,-1.821,-2.023,-2.225,-2.424,-2.615,-2.800,-2.983,-3.174,-3.387,-3.634,-3.926,-4.266,-4.651,
--5.067,-5.495,-5.912,-6.291,-6.610,-6.850,-6.998,-7.046,-6.994,-6.845,-6.610,-6.306,-5.956,-5.588,-5.236,-4.934,
--4.716,-4.606,-4.619,-4.758,-5.011,-5.357,-5.769,-6.219,-6.683,-7.147,-7.603,-8.052,-8.499,-8.947,-9.396,-9.842,
--10.276,-10.688,-11.068,-11.413,-11.727,-12.020,-12.304,-12.594,-12.898,-13.219,-13.550,-13.878,-14.186,-14.459,-14.683,-14.854,
--14.973,-15.049,-15.092,-15.114,-15.127,-15.137,-15.150,-15.167,-15.191,-15.219,-15.252,-15.287,-15.320,-15.346,-15.361,-15.362,
--15.350,-15.333,-15.321,-15.330,-15.372,-15.455,-15.580,-15.737,-15.908,-16.071,-16.208,-16.305,-16.363,-16.389,-16.403,-16.422,
--16.460,-16.523,-16.601,-16.678,-16.735,-16.757,-16.739,-16.694,-16.644,-16.620,-16.651,-16.752,-16.923,-17.141,-17.369,-17.565,
--17.693,-17.735,-17.693,-17.592,-17.473,-17.381,-17.352,-17.406,-17.539,-17.731,-17.949,-18.159,-18.339,-18.479,-18.589,-18.690,
--18.805,-18.953,-19.136,-19.343,-19.549,-19.720,-19.831,-19.865,-19.825,-19.728,-19.606,-19.492,-19.411,-19.380,-19.395,-19.443,
--19.500,-19.545,-19.563,-19.552,-19.521,-19.488,-19.472,-19.487,-19.538,-19.619,-19.712,-19.796,-19.850,-19.857,-19.811,-19.717,
--19.590,-19.447,-19.309,-19.197,-19.122,-19.095,-19.117,-19.189,-19.302,-19.449,-19.615,-19.782,-19.930,-20.039,-20.088,-20.063,
--19.959,-19.780,-19.542,-19.269,-18.991,-18.737,-18.531,-18.388,-18.312,-18.296,-18.326,-18.383,-18.449,-18.508,-18.550,-18.572,
--18.576,-18.566,-18.547,-18.525,-18.500,-18.473,-18.439,-18.394,-18.334,-18.254,-18.154,-18.036,-17.904,-17.765,-17.628,-17.499,
--17.384,-17.284,-17.199,-17.119,-17.036,-16.938,-16.812,-16.652,-16.455,-16.223,-15.965,-15.694,-15.422,-15.162,-14.922,-14.706,
--14.514,-14.343,-14.189,-14.050,-13.924,-13.814,-13.721,-13.645,-13.584,-13.532,-13.479,-13.414,-13.326,-13.209,-13.063,-12.894,
--12.716,-12.543,-12.391,-12.270,-12.185,-12.132,-12.102,-12.084,-12.066,-12.041,-12.007,-11.968,-11.932,-11.910,-11.909,-11.936,
--11.993,-12.077,-12.187,-12.320,-12.476,-12.656,-12.861,-13.091,-13.340,-13.595,-13.837,-14.040,-14.176,-14.219,-14.149,-13.952,
--13.626,-13.177,-12.617,-11.962,-11.231,-10.445,-9.625,-8.797,-7.986,-7.222,-6.536,-5.955,-5.498,-5.175,-4.982,-4.900,
--4.901,-4.952,-5.019,-5.077,-5.111,-5.115,-5.097,-5.065,-5.029,-4.995,-4.960,-4.916,-4.852,-4.757,-4.622,-4.447,
--4.239,-4.007,-3.763,-3.517,-3.273,-3.036,-2.803,-2.575,-2.358,-2.158,-1.987,-1.853,-1.761,-1.701,-1.652,-1.583,
--1.454,-1.230,-.885,-.417,.157,.795,1.442,2.036,2.525,2.871,3.063,3.110,3.045,2.910,2.752,2.613,
-2.526,2.511,2.580,2.736,2.977,3.298,3.687,4.126,4.586,5.030,5.410,5.680,5.797,5.733,5.483,5.068,
-4.531,3.932,3.340,2.819,2.419,2.170,2.079,2.132,2.301,2.554,2.856,3.178,3.501,3.812,4.103,4.371,
-4.613,4.826,5.009,5.158,5.277,5.368,5.439,5.497,5.549,5.599,5.650,5.698,5.742,5.775,5.797,5.806,
-5.805,5.798,5.791,5.789,5.794,5.807,5.826,5.850,5.877,5.905,5.936,5.972,6.019,6.080,6.160,6.259,
-6.375,6.503,6.635,6.762,6.875,6.965,7.029,7.067,7.083,7.088,7.092,7.106,7.138,7.192,7.264,7.347,
-7.429,7.496,7.541,7.558,7.553,7.533,7.515,7.511,7.534,7.587,7.668,7.766,7.870,7.966,8.046,8.107,
-8.155,8.197,8.244,8.304,8.378,8.463,8.548,8.621,8.670,8.688,8.673,8.632,8.573,8.506,8.441,8.380,
-8.321,8.260,8.188,8.103,8.001,7.885,7.763,7.642,7.527,7.420,7.320,7.219,7.113,6.996,6.868,6.733,
-6.602,6.485,6.392,6.330,6.298,6.292,6.302,6.319,6.334,6.345,6.352,6.361,6.376,6.400,6.433,6.468,
-6.493,6.496,6.464,6.392,6.276,6.125,5.947,5.758,5.571,5.396,5.241,5.106,4.990,4.888,4.794,4.703,
-4.613,4.519,4.422,4.317,4.205,4.081,3.944,3.793,3.627,3.451,3.267,3.081,2.901,2.730,2.574,2.436,
-2.318,2.219,2.140,2.082,2.044,2.027,2.031,2.058,2.103,2.164,2.235,2.308,2.375,2.426,2.457,2.461,
-2.438,2.391,2.326,2.250,2.173,2.104,2.049,2.012,1.995,1.997,2.014,2.041,2.074,2.106,2.135,2.159,
-2.175,2.187,2.197,2.211,2.235,2.273,2.333,2.415,2.521,2.647,2.787,2.933,3.079,3.220,3.352,3.477,
-3.599,3.722,3.852,3.992,4.142,4.298,4.456,4.610,4.754,4.885,5.000,5.102,5.193,5.274,5.349,5.418,
-5.484,5.549,5.616,5.692,5.782,5.893,6.028,6.188,6.370,6.566,6.768,6.966,7.154,7.329,7.493,7.649,
-7.801,7.953,8.103,8.244,8.369,8.469,8.536,8.568,8.572,8.556,8.538,8.530,8.547,8.593,8.668,8.767,
-8.876,8.985,9.083,9.163,9.220,9.256,9.269,9.261,9.229,9.169,9.077,8.950,8.787,8.592,8.374,8.146,
-7.922,7.717,7.541,7.400,7.294,7.216,7.159,7.113,7.069,7.024,6.977,6.933,6.900,6.884,6.893,6.928,
-6.986,7.060,7.137,7.208,7.261,7.292,7.299,7.286,7.258,7.218,7.165,7.091,6.985,6.829,6.610,6.323,
-5.975,5.586,5.192,4.832,4.545,4.361,4.285,4.303,4.374,4.445,4.453,4.349,4.097,3.691,3.152,2.525,
-1.866,1.232,.669,.203,-.162,-.441,-.663,-.859,-1.058,-1.275,-1.515,-1.772,-2.034,-2.288,-2.526,-2.748,
--2.957,-3.163,-3.374,-3.595,-3.825,-4.060,-4.293,-4.515,-4.723,-4.916,-5.098,-5.279,-5.466,-5.666,-5.884,-6.119,
--6.371,-6.638,-6.918,-7.213,-7.527,-7.861,-8.218,-8.596,-8.985,-9.376,-9.756,-10.112,-10.438,-10.733,-11.005,-11.266,
--11.536,-11.829,-12.160,-12.533,-12.946,-13.388,-13.842,-14.289,-14.709,-15.088,-15.414,-15.684,-15.903,-16.079,-16.226,-16.359,
--16.494,-16.644,-16.819,-17.024,-17.255,-17.505,-17.764,-18.018,-18.256,-18.470,-18.661,-18.834,-19.004,-19.188,-19.404,-19.668,
--19.988,-20.364,-20.790,-21.248,-21.720,-22.186,-22.629,-23.040,-23.414,-23.756,-24.074,-24.379,-24.683,-24.995,-25.319,-25.657,
--26.011,-26.380,-26.763,-27.164,-27.586,-28.032,-28.503,-28.997,-29.505,-30.012,-30.499,-30.945,-31.333,-31.651,-31.896,-32.077,
--32.212,-32.324,-32.439,-32.578,-32.754,-32.971,-33.222,-33.492,-33.766,-34.029,-34.272,-34.493,-34.699,-34.898,-35.102,-35.317,
--35.542,-35.770,-35.990,-36.184,-36.342,-36.454,-36.521,-36.552,-36.560,-36.560,-36.567,-36.589,-36.629,-36.681,-36.737,-36.786,
--36.819,-36.831,-36.823,-36.799,-36.767,-36.733,-36.702,-36.672,-36.638,-36.590,-36.515,-36.401,-36.242,-36.034,-35.783,-35.501,
--35.204,-34.910,-34.635,-34.392,-34.185,-34.012,-33.863,-33.724,-33.581,-33.419,-33.232,-33.020,-32.787,-32.546,-32.310,-32.091,
--31.899,-31.737,-31.606,-31.503,-31.426,-31.374,-31.348,-31.352,-31.390,-31.465,-31.573,-31.704,-31.841,-31.965,-32.055,-32.094,
--32.073,-31.991,-31.856,-31.683,-31.487,-31.281,-31.074,-30.865,-30.651,-30.425,-30.180,-29.914,-29.632,-29.344,-29.064,-28.808,
--28.589,-28.415,-28.287,-28.199,-28.139,-28.094,-28.046,-27.983,-27.893,-27.771,-27.617,-27.436,-27.239,-27.038,-26.851,-26.690,
--26.567,-26.484,-26.434,-26.400,-26.358,-26.279,-26.136,-25.907,-25.586,-25.179,-24.706,-24.198,-23.690,-23.215,-22.794,-22.437,
--22.136,-21.874,-21.620,-21.343,-21.016,-20.619,-20.144,-19.595,-18.985,-18.334,-17.663,-16.988,-16.323,-15.667,-15.013,-14.347,
--13.651,-12.908,-12.110,-11.258,-10.362,-9.445,-8.533,-7.647,-6.799,-5.985,-5.183,-4.356,-3.459,-2.454,-1.318,-.056,
-1.297,2.678,4.007,5.198,6.181,6.910,7.375,7.601,7.642,7.566,7.446,7.345,7.310,7.371,7.543,7.833,
-8.245,8.785,9.455,10.252,11.162,12.156,13.190,14.209,15.159,15.996,16.699,17.268,17.733,18.135,18.523,18.935,
-19.391,19.890,20.411,20.926,21.406,21.837,22.221,22.576,22.930,23.309,23.727,24.180,24.644,25.083,25.460,25.749,
-25.947,26.071,26.161,26.269,26.441,26.709,27.082,27.545,28.063,28.595,29.102,29.559,29.960,30.320,30.663,31.017,
-31.408,31.847,32.335,32.864,33.422,33.997,34.585,35.190,35.818,36.477,37.170,37.888,38.617,39.332,40.010,40.631,
-41.185,41.672,42.105,42.502,42.885,43.269,43.667,44.078,44.498,44.916,45.320,45.700,46.048,46.360,46.635,46.873,
-47.075,47.242,47.378,47.486,47.573,47.647,47.717,47.794,47.887,48.003,48.149,48.332,48.558,48.836,49.175,49.584,
-50.070,50.631,51.260,51.940,52.646,53.347,54.013,54.615,55.134,55.559,55.890,56.134,56.307,56.425,56.503,56.556,
-56.595,56.629,56.665,56.709,56.764,56.833,56.915,57.006,57.100,57.191,57.271,57.339,57.396,57.448,57.506,57.581,
-57.683,57.819,57.988,58.184,58.397,58.616,58.830,59.032,59.220,59.395,59.560,59.717,59.864,59.997,60.106,60.182,
-60.220,60.219,60.187,60.142,60.108,60.111,60.174,60.314,60.535,60.828,61.175,61.548,61.916,62.254,62.542,62.769,
-62.938,63.056,63.140,63.205,63.265,63.328,63.399,63.475,63.553,63.625,63.688,63.738,63.774,63.797,63.809,63.812,
-63.806,63.791,63.765,63.728,63.680,63.622,63.557,63.489,63.422,63.359,63.300,63.243,63.186,63.123,63.047,62.954,
-62.836,62.687,62.501,62.271,61.989,61.653,61.261,60.818,60.339,59.842,59.353,58.898,58.504,58.185,57.949,57.786,
-57.679,57.600,57.521,57.418,57.274,57.087,56.864,56.621,56.376,56.141,55.921,55.711,55.497,55.260,54.982,54.654,
-54.278,53.870,53.454,53.062,52.719,52.446,52.248,52.116,52.028,51.958,51.878,51.769,51.623,51.446,51.255,51.071,
-50.914,50.798,50.723,50.678,50.641,50.586,50.486,50.327,50.105,49.830,49.527,49.225,48.953,49.206,48.970,48.779,
-48.630,48.510,48.400,48.276,48.118,47.908,47.637,47.301,46.905,46.459,45.979,45.483,44.990,44.522,44.094,43.723,
-43.419,43.186,43.021,42.918,42.864,42.845,42.850,42.869,42.897,42.932,42.971,43.009,43.038,43.041,42.999,42.892,
-42.705,42.432,42.081,41.676,41.245,40.823,40.436,40.097,39.802,39.529,39.242,38.905,38.487,37.976,37.376,36.715,
-36.029,35.362,34.749,34.211,33.751,33.357,33.007,32.678,32.355,32.037,31.732,31.461,31.244,31.098,31.026,31.020,
-31.060,31.118,31.166,31.183,31.156,31.082,30.966,30.815,30.636,30.432,30.201,29.938,29.641,29.305,28.934,28.532,
-28.108,27.666,27.210,26.741,26.257,25.756,25.240,24.716,24.199,23.706,23.254,22.856,22.517,22.232,21.983,21.753,
-21.519,21.265,20.986,20.685,20.372,20.063,19.772,19.509,19.274,19.063,18.864,18.668,18.467,18.262,18.058,17.868,
-17.704,17.578,17.492,17.444,17.421,17.408,17.387,17.345,17.274,17.175,17.058,16.937,16.830,16.753,16.715,16.721,
-16.765,16.836,16.919,17.000,17.067,17.114,17.141,17.154,17.162,17.175,17.196,17.226,17.256,17.272,17.260,17.204,
-17.099,16.945,16.753,16.541,16.328,16.130,15.956,15.802,15.656,15.496,15.299,15.047,14.731,14.356,13.940,13.509,
-13.094,12.723,12.413,12.172,11.997,11.872,11.780,11.701,11.618,11.519,11.394,11.238,11.046,10.810,10.525,10.186,
-9.795,9.357,8.889,8.413,7.957,7.551,7.221,6.984,6.846,6.802,6.835,6.923,7.035,7.143,7.221,7.248,
-7.206,7.087,6.887,6.610,6.262,5.858,5.414,4.948,4.479,4.023,3.593,3.198,2.844,2.532,2.261,2.029,
-1.834,1.672,1.539,1.429,1.332,1.236,1.128,.997,.834,.635,.405,.152,-.109,-.365,-.604,-.822,
--1.018,-1.200,-1.379,-1.565,-1.766,-1.986,-2.222,-2.469,-2.720,-2.969,-3.218,-3.473,-3.746,-4.051,-4.400,-4.799,
--5.245,-5.725,-6.213,-6.678,-7.085,-7.401,-7.598,-7.660,-7.581,-7.368,-7.038,-6.621,-6.152,-5.672,-5.224,-4.851,
--4.588,-4.465,-4.496,-4.683,-5.010,-5.452,-5.971,-6.528,-7.087,-7.620,-8.112,-8.559,-8.969,-9.356,-9.733,-10.112,
--10.495,-10.878,-11.252,-11.605,-11.929,-12.222,-12.487,-12.737,-12.984,-13.240,-13.513,-13.804,-14.105,-14.403,-14.684,-14.934,
--15.142,-15.304,-15.420,-15.496,-15.538,-15.556,-15.559,-15.555,-15.554,-15.562,-15.586,-15.627,-15.684,-15.748,-15.810,-15.854,
--15.872,-15.858,-15.817,-15.762,-15.715,-15.700,-15.736,-15.834,-15.989,-16.185,-16.396,-16.594,-16.754,-16.865,-16.929,-16.960,
--16.978,-17.004,-17.047,-17.107,-17.171,-17.221,-17.238,-17.214,-17.156,-17.085,-17.030,-17.024,-17.090,-17.232,-17.435,-17.666,
--17.883,-18.050,-18.140,-18.152,-18.106,-18.039,-17.993,-18.006,-18.098,-18.269,-18.498,-18.751,-18.995,-19.203,-19.366,-19.491,
--19.597,-19.711,-19.850,-20.019,-20.208,-20.392,-20.540,-20.624,-20.630,-20.562,-20.440,-20.300,-20.176,-20.101,-20.089,-20.139,
--20.235,-20.347,-20.448,-20.514,-20.536,-20.517,-20.470,-20.417,-20.376,-20.362,-20.378,-20.419,-20.472,-20.523,-20.556,-20.564,
--20.541,-20.489,-20.416,-20.329,-20.238,-20.151,-20.078,-20.027,-20.006,-20.022,-20.075,-20.164,-20.276,-20.397,-20.502,-20.570,
--20.578,-20.515,-20.379,-20.179,-19.937,-19.679,-19.436,-19.233,-19.086,-19.002,-18.975,-18.991,-19.030,-19.074,-19.105,-19.112,
--19.091,-19.043,-18.974,-18.890,-18.798,-18.701,-18.602,-18.498,-18.389,-18.272,-18.145,-18.009,-17.867,-17.724,-17.586,-17.459,
--17.346,-17.250,-17.167,-17.094,-17.020,-16.937,-16.835,-16.705,-16.545,-16.356,-16.144,-15.917,-15.685,-15.458,-15.244,-15.046,
--14.865,-14.698,-14.543,-14.401,-14.272,-14.159,-14.067,-14.000,-13.956,-13.930,-13.913,-13.888,-13.841,-13.757,-13.629,-13.459,
--13.254,-13.033,-12.815,-12.621,-12.466,-12.359,-12.300,-12.281,-12.290,-12.315,-12.344,-12.372,-12.397,-12.420,-12.447,-12.482,
--12.526,-12.579,-12.642,-12.711,-12.790,-12.880,-12.989,-13.120,-13.276,-13.454,-13.641,-13.817,-13.955,-14.025,-13.998,-13.853,
--13.578,-13.172,-12.647,-12.021,-11.318,-10.563,-9.781,-8.997,-8.231,-7.505,-6.840,-6.256,-5.768,-5.389,-5.122,-4.959,
--4.884,-4.873,-4.901,-4.940,-4.973,-4.990,-4.988,-4.975,-4.958,-4.942,-4.928,-4.910,-4.875,-4.808,-4.699,-4.539,
--4.330,-4.081,-3.806,-3.518,-3.230,-2.947,-2.672,-2.402,-2.137,-1.879,-1.637,-1.424,-1.253,-1.133,-1.063,-1.028,
--1.000,-.941,-.813,-.583,-.238,.220,.765,1.355,1.939,2.471,2.911,3.237,3.443,3.540,3.547,3.491,
-3.396,3.288,3.190,3.126,3.121,3.203,3.394,3.711,4.154,4.706,5.326,5.956,6.525,6.962,7.211,7.238,
-7.037,6.636,6.087,5.456,4.814,4.225,3.733,3.367,3.131,3.017,3.006,3.077,3.210,3.387,3.595,3.821,
-4.057,4.292,4.517,4.723,4.905,5.062,5.195,5.310,5.413,5.510,5.604,5.697,5.785,5.866,5.934,5.987,
-6.025,6.049,6.061,6.064,6.062,6.055,6.045,6.033,6.021,6.011,6.007,6.013,6.036,6.079,6.144,6.234,
-6.344,6.473,6.614,6.759,6.901,7.031,7.143,7.232,7.297,7.341,7.370,7.395,7.427,7.474,7.541,7.629,
-7.728,7.828,7.913,7.973,8.000,7.997,7.973,7.943,7.925,7.934,7.978,8.056,8.159,8.271,8.377,8.463,
-8.522,8.558,8.578,8.596,8.624,8.670,8.734,8.810,8.887,8.952,8.993,9.006,8.989,8.946,8.883,8.807,
-8.720,8.625,8.522,8.410,8.290,8.168,8.048,7.937,7.837,7.749,7.665,7.577,7.471,7.341,7.184,7.005,
-6.820,6.646,6.503,6.405,6.358,6.359,6.393,6.445,6.495,6.530,6.544,6.537,6.517,6.492,6.470,6.452,
-6.435,6.410,6.367,6.297,6.198,6.070,5.923,5.766,5.613,5.471,5.345,5.236,5.140,5.050,4.963,4.876,
-4.788,4.702,4.619,4.538,4.459,4.374,4.277,4.160,4.019,3.852,3.661,3.455,3.243,3.039,2.853,2.696,
-2.572,2.484,2.431,2.409,2.413,2.437,2.475,2.521,2.572,2.623,2.671,2.715,2.753,2.782,2.803,2.814,
-2.817,2.811,2.799,2.781,2.761,2.740,2.718,2.698,2.679,2.661,2.645,2.631,2.622,2.617,2.619,2.629,
-2.645,2.667,2.693,2.722,2.753,2.786,2.826,2.876,2.937,3.012,3.099,3.192,3.287,3.375,3.455,3.524,
-3.587,3.655,3.737,3.843,3.980,4.147,4.340,4.546,4.751,4.943,5.113,5.256,5.376,5.478,5.571,5.663,
-5.759,5.861,5.968,6.078,6.188,6.298,6.409,6.521,6.638,6.759,6.884,7.010,7.136,7.260,7.384,7.511,
-7.645,7.788,7.940,8.095,8.242,8.369,8.463,8.516,8.527,8.505,8.464,8.424,8.405,8.422,8.480,8.575,
-8.696,8.825,8.943,9.036,9.093,9.112,9.096,9.052,8.984,8.899,8.795,8.674,8.530,8.363,8.175,7.972,
-7.763,7.561,7.379,7.228,7.117,7.046,7.015,7.015,7.040,7.078,7.123,7.168,7.211,7.253,7.296,7.343,
-7.397,7.458,7.524,7.591,7.653,7.705,7.742,7.761,7.762,7.743,7.704,7.641,7.546,7.409,7.222,6.977,
-6.677,6.333,5.971,5.624,5.330,5.121,5.019,5.025,5.118,5.256,5.381,5.434,5.364,5.136,4.744,4.204,
-3.558,2.857,2.155,1.496,.911,.409,-.018,-.385,-.716,-1.029,-1.336,-1.642,-1.944,-2.236,-2.514,-2.775,
--3.023,-3.261,-3.497,-3.736,-3.978,-4.222,-4.462,-4.693,-4.913,-5.119,-5.316,-5.509,-5.704,-5.906,-6.118,-6.340,
--6.573,-6.815,-7.069,-7.339,-7.631,-7.950,-8.299,-8.679,-9.080,-9.491,-9.898,-10.286,-10.646,-10.976,-11.282,-11.575,
--11.871,-12.184,-12.527,-12.902,-13.305,-13.726,-14.147,-14.553,-14.928,-15.260,-15.543,-15.777,-15.964,-16.112,-16.231,-16.333,
--16.430,-16.534,-16.655,-16.800,-16.972,-17.168,-17.382,-17.601,-17.813,-18.009,-18.185,-18.343,-18.492,-18.650,-18.834,-19.061,
--19.343,-19.684,-20.078,-20.512,-20.969,-21.429,-21.876,-22.299,-22.694,-23.062,-23.409,-23.742,-24.070,-24.399,-24.730,-25.065,
--25.404,-25.745,-26.090,-26.442,-26.807,-27.190,-27.597,-28.033,-28.496,-28.981,-29.478,-29.970,-30.442,-30.878,-31.263,-31.592,
--31.864,-32.088,-32.278,-32.452,-32.626,-32.815,-33.028,-33.266,-33.524,-33.794,-34.067,-34.335,-34.592,-34.839,-35.077,-35.311,
--35.542,-35.770,-35.990,-36.195,-36.375,-36.523,-36.635,-36.710,-36.757,-36.783,-36.801,-36.821,-36.853,-36.898,-36.957,-37.026,
--37.097,-37.165,-37.224,-37.271,-37.304,-37.322,-37.326,-37.314,-37.285,-37.234,-37.157,-37.046,-36.897,-36.707,-36.474,-36.205,
--35.908,-35.597,-35.288,-35.001,-34.749,-34.544,-34.389,-34.278,-34.199,-34.134,-34.062,-33.969,-33.843,-33.682,-33.493,-33.286,
--33.078,-32.880,-32.703,-32.549,-32.417,-32.305,-32.208,-32.126,-32.062,-32.023,-32.014,-32.041,-32.103,-32.192,-32.294,-32.389,
--32.461,-32.492,-32.475,-32.408,-32.296,-32.150,-31.979,-31.792,-31.595,-31.387,-31.169,-30.939,-30.699,-30.453,-30.210,-29.978,
--29.767,-29.581,-29.423,-29.289,-29.172,-29.066,-28.960,-28.848,-28.723,-28.582,-28.424,-28.248,-28.056,-27.855,-27.653,-27.462,
--27.296,-27.168,-27.085,-27.045,-27.038,-27.041,-27.027,-26.963,-26.824,-26.592,-26.263,-25.851,-25.381,-24.884,-24.393,-23.935,
--23.523,-23.159,-22.830,-22.515,-22.190,-21.830,-21.417,-20.943,-20.407,-19.819,-19.193,-18.547,-17.895,-17.249,-16.613,-15.981,
--15.342,-14.677,-13.971,-13.210,-12.393,-11.530,-10.642,-9.760,-8.915,-8.129,-7.407,-6.733,-6.068,-5.358,-4.548,-3.591,
--2.468,-1.190,.196,1.618,2.991,4.232,5.282,6.111,6.724,7.155,7.452,7.670,7.855,8.037,8.231,8.444,
-8.682,8.955,9.286,9.704,10.236,10.902,11.699,12.604,13.571,14.542,15.460,16.284,16.993,17.593,18.112,18.585,
-19.044,19.507,19.974,20.430,20.852,21.223,21.542,21.826,22.112,22.442,22.853,23.362,23.957,24.598,25.226,25.777,
-26.199,26.470,26.601,26.634,26.635,26.671,26.800,27.054,27.434,27.915,28.454,29.005,29.531,30.013,30.449,30.853,
-31.246,31.649,32.076,32.530,33.009,33.507,34.021,34.553,35.114,35.715,36.367,37.072,37.822,38.599,39.374,40.119,
-40.809,41.428,41.972,42.449,42.877,43.274,43.658,44.042,44.431,44.825,45.219,45.606,45.980,46.332,46.655,46.943,
-47.189,47.388,47.538,47.641,47.707,47.751,47.790,47.843,47.923,48.040,48.192,48.374,48.578,48.794,49.022,49.269,
-49.547,49.876,50.272,50.746,51.296,51.906,52.549,53.186,53.781,54.300,54.722,55.040,55.263,55.411,55.511,55.595,
-55.686,55.805,55.960,56.150,56.368,56.599,56.827,57.036,57.213,57.347,57.437,57.487,57.507,57.513,57.522,57.554,
-57.624,57.739,57.902,58.108,58.343,58.595,58.846,59.086,59.305,59.502,59.677,59.833,59.975,60.104,60.220,60.321,
-60.406,60.477,60.536,60.593,60.658,60.745,60.865,61.026,61.229,61.470,61.736,62.015,62.290,62.546,62.775,62.969,
-63.130,63.262,63.370,63.462,63.544,63.621,63.695,63.768,63.838,63.903,63.961,64.009,64.045,64.068,64.077,64.072,
-64.054,64.027,63.993,63.958,63.924,63.896,63.873,63.855,63.839,63.818,63.789,63.746,63.689,63.619,63.540,63.456,
-63.373,63.291,63.203,63.100,62.962,62.770,62.504,62.154,61.717,61.206,60.647,60.075,59.529,59.045,58.650,58.352,
-58.146,58.011,57.916,57.830,57.724,57.584,57.404,57.192,56.962,56.727,56.496,56.269,56.036,55.783,55.494,55.157,
-54.774,54.356,53.925,53.510,53.141,52.838,52.611,52.456,52.354,52.280,52.205,52.109,51.978,51.813,51.626,51.434,
-51.260,51.119,51.019,50.955,50.914,50.874,50.811,50.704,50.542,50.324,50.060,49.770,49.478,49.206,49.610,49.381,
-49.148,48.907,48.653,48.385,48.099,47.796,47.476,47.142,46.797,46.443,46.081,45.714,45.343,44.974,44.614,44.274,
-43.966,43.702,43.491,43.339,43.242,43.194,43.183,43.194,43.213,43.230,43.237,43.227,43.196,43.136,43.038,42.890,
-42.682,42.406,42.063,41.665,41.234,40.797,40.384,40.014,39.697,39.421,39.162,38.885,38.551,38.136,37.629,37.042,
-36.407,35.769,35.172,34.654,34.234,33.909,33.659,33.454,33.261,33.055,32.824,32.573,32.319,32.081,31.878,31.720,
-31.605,31.520,31.448,31.368,31.269,31.142,30.990,30.816,30.626,30.420,30.193,29.937,29.642,29.298,28.905,28.466,
-27.993,27.500,26.999,26.500,26.004,25.508,25.009,24.503,23.993,23.491,23.010,22.570,22.185,21.862,21.598,21.381,
-21.191,21.006,20.806,20.581,20.329,20.058,19.780,19.510,19.259,19.034,18.834,18.654,18.487,18.326,18.167,18.012,
-17.863,17.726,17.608,17.509,17.430,17.368,17.316,17.267,17.217,17.163,17.104,17.046,16.992,16.951,16.929,16.929,
-16.952,16.992,17.042,17.091,17.124,17.132,17.107,17.049,16.965,16.866,16.767,16.682,16.621,16.587,16.576,16.576,
-16.573,16.554,16.511,16.442,16.354,16.253,16.150,16.046,15.938,15.811,15.648,15.429,15.140,14.777,14.352,13.885,
-13.410,12.958,12.558,12.229,11.975,11.790,11.659,11.563,11.483,11.408,11.328,11.239,11.136,11.011,10.852,10.645,
-10.372,10.023,9.596,9.101,8.562,8.015,7.501,7.059,6.720,6.503,6.409,6.424,6.521,6.664,6.816,6.942,
-7.013,7.010,6.924,6.754,6.505,6.190,5.822,5.416,4.987,4.548,4.107,3.675,3.257,2.860,2.492,2.161,
-1.875,1.642,1.463,1.338,1.257,1.203,1.158,1.096,.998,.850,.648,.396,.112,-.185,-.473,-.735,
--.961,-1.152,-1.317,-1.471,-1.631,-1.811,-2.021,-2.263,-2.535,-2.830,-3.141,-3.466,-3.804,-4.162,-4.546,-4.963,
--5.413,-5.888,-6.369,-6.827,-7.229,-7.537,-7.721,-7.758,-7.640,-7.376,-6.991,-6.521,-6.014,-5.518,-5.084,-4.750,
--4.550,-4.501,-4.608,-4.863,-5.245,-5.727,-6.273,-6.848,-7.419,-7.961,-8.457,-8.903,-9.302,-9.668,-10.016,-10.360,
--10.709,-11.067,-11.427,-11.780,-12.113,-12.417,-12.689,-12.932,-13.156,-13.375,-13.604,-13.853,-14.124,-14.415,-14.714,-15.007,
--15.278,-15.514,-15.707,-15.853,-15.952,-16.009,-16.031,-16.027,-16.008,-15.985,-15.971,-15.976,-16.006,-16.061,-16.134,-16.211,
--16.275,-16.308,-16.299,-16.248,-16.166,-16.079,-16.015,-16.003,-16.064,-16.202,-16.406,-16.649,-16.897,-17.119,-17.292,-17.409,
--17.478,-17.517,-17.548,-17.588,-17.641,-17.701,-17.749,-17.766,-17.741,-17.673,-17.578,-17.486,-17.430,-17.438,-17.524,-17.682,
--17.888,-18.104,-18.293,-18.428,-18.500,-18.522,-18.524,-18.546,-18.621,-18.771,-18.996,-19.274,-19.573,-19.854,-20.088,-20.261,
--20.375,-20.452,-20.519,-20.600,-20.710,-20.850,-21.003,-21.146,-21.253,-21.307,-21.304,-21.255,-21.183,-21.117,-21.078,-21.082,
--21.129,-21.205,-21.289,-21.357,-21.391,-21.382,-21.333,-21.258,-21.173,-21.100,-21.052,-21.038,-21.057,-21.102,-21.162,-21.224,
--21.277,-21.311,-21.321,-21.303,-21.256,-21.182,-21.086,-20.976,-20.863,-20.760,-20.683,-20.641,-20.643,-20.686,-20.761,-20.851,
--20.934,-20.988,-20.996,-20.946,-20.839,-20.686,-20.502,-20.310,-20.130,-19.977,-19.860,-19.780,-19.730,-19.700,-19.676,-19.648,
--19.606,-19.547,-19.467,-19.370,-19.255,-19.126,-18.982,-18.826,-18.655,-18.473,-18.280,-18.082,-17.886,-17.700,-17.532,-17.390,
--17.276,-17.190,-17.128,-17.079,-17.031,-16.972,-16.891,-16.779,-16.636,-16.465,-16.275,-16.077,-15.882,-15.702,-15.540,-15.397,
--15.270,-15.152,-15.034,-14.913,-14.788,-14.664,-14.547,-14.448,-14.374,-14.330,-14.312,-14.310,-14.310,-14.293,-14.245,-14.153,
--14.017,-13.841,-13.639,-13.432,-13.237,-13.074,-12.953,-12.879,-12.847,-12.850,-12.878,-12.918,-12.963,-13.008,-13.051,-13.091,
--13.129,-13.165,-13.197,-13.225,-13.249,-13.271,-13.296,-13.334,-13.392,-13.476,-13.587,-13.717,-13.847,-13.953,-14.004,-13.968,
--13.821,-13.544,-13.135,-12.601,-11.960,-11.240,-10.470,-9.680,-8.898,-8.145,-7.443,-6.805,-6.246,-5.776,-5.398,-5.116,
--4.922,-4.806,-4.750,-4.736,-4.744,-4.760,-4.773,-4.782,-4.787,-4.790,-4.795,-4.796,-4.787,-4.755,-4.686,-4.567,
--4.392,-4.162,-3.886,-3.578,-3.254,-2.928,-2.611,-2.307,-2.017,-1.740,-1.477,-1.230,-1.008,-.818,-.666,-.552,
--.467,-.392,-.303,-.171,.025,.301,.656,1.078,1.544,2.026,2.494,2.925,3.300,3.611,3.853,4.024,
-4.125,4.156,4.123,4.035,3.914,3.791,3.707,3.706,3.826,4.094,4.512,5.060,5.691,6.342,6.943,7.428,
-7.749,7.879,7.819,7.592,7.235,6.796,6.318,5.840,5.389,4.985,4.636,4.349,4.125,3.966,3.872,3.841,
-3.867,3.943,4.058,4.200,4.358,4.526,4.697,4.872,5.048,5.227,5.406,5.580,5.744,5.893,6.023,6.132,
-6.220,6.292,6.349,6.394,6.428,6.449,6.454,6.440,6.408,6.361,6.308,6.259,6.225,6.216,6.239,6.294,
-6.380,6.491,6.618,6.753,6.889,7.021,7.145,7.258,7.359,7.448,7.528,7.603,7.678,7.759,7.852,7.959,
-8.079,8.204,8.322,8.421,8.489,8.520,8.517,8.491,8.458,8.438,8.448,8.497,8.586,8.704,8.832,8.951,
-9.043,9.098,9.116,9.107,9.086,9.071,9.075,9.104,9.156,9.221,9.286,9.335,9.357,9.345,9.298,9.216,
-9.106,8.976,8.831,8.681,8.532,8.394,8.275,8.180,8.109,8.057,8.013,7.957,7.873,7.744,7.564,7.338,
-7.084,6.828,6.602,6.433,6.337,6.317,6.361,6.444,6.537,6.612,6.651,6.645,6.599,6.524,6.437,6.351,
-6.273,6.204,6.138,6.070,5.991,5.902,5.804,5.704,5.609,5.524,5.450,5.382,5.313,5.234,5.140,5.032,
-4.914,4.797,4.689,4.597,4.525,4.466,4.411,4.345,4.257,4.137,3.985,3.805,3.608,3.409,3.222,3.060,
-2.932,2.841,2.786,2.764,2.770,2.797,2.839,2.892,2.949,3.005,3.055,3.096,3.125,3.139,3.139,3.127,
-3.107,3.084,3.065,3.055,3.057,3.072,3.099,3.134,3.169,3.197,3.214,3.214,3.199,3.174,3.145,3.123,
-3.114,3.126,3.157,3.207,3.267,3.331,3.393,3.450,3.503,3.554,3.607,3.664,3.725,3.787,3.846,3.897,
-3.941,3.981,4.026,4.089,4.182,4.315,4.488,4.694,4.920,5.148,5.360,5.543,5.693,5.813,5.912,6.003,
-6.097,6.202,6.318,6.442,6.565,6.680,6.781,6.868,6.943,7.011,7.078,7.148,7.223,7.304,7.389,7.478,
-7.572,7.675,7.787,7.909,8.036,8.162,8.277,8.370,8.433,8.466,8.472,8.464,8.458,8.467,8.501,8.563,
-8.646,8.737,8.820,8.878,8.901,8.886,8.834,8.756,8.663,8.564,8.465,8.369,8.273,8.171,8.060,7.938,
-7.806,7.669,7.538,7.422,7.331,7.272,7.248,7.260,7.304,7.372,7.458,7.550,7.640,7.720,7.787,7.838,
-7.875,7.902,7.923,7.944,7.969,7.998,8.030,8.063,8.090,8.106,8.104,8.077,8.019,7.922,7.779,7.587,
-7.343,7.055,6.738,6.414,6.112,5.864,5.698,5.628,5.655,5.758,5.902,6.038,6.112,6.077,5.901,5.571,
-5.095,4.500,3.825,3.111,2.399,1.716,1.079,.496,-.036,-.525,-.977,-1.397,-1.790,-2.158,-2.502,-2.826,
--3.134,-3.430,-3.718,-4.000,-4.273,-4.534,-4.778,-5.002,-5.204,-5.388,-5.561,-5.731,-5.907,-6.093,-6.292,-6.503,
--6.723,-6.950,-7.187,-7.438,-7.712,-8.020,-8.368,-8.756,-9.179,-9.620,-10.062,-10.485,-10.873,-11.221,-11.532,-11.820,
--12.104,-12.404,-12.736,-13.105,-13.508,-13.932,-14.359,-14.768,-15.142,-15.470,-15.748,-15.979,-16.168,-16.326,-16.462,-16.585,
--16.703,-16.822,-16.948,-17.085,-17.235,-17.398,-17.567,-17.735,-17.891,-18.026,-18.135,-18.220,-18.292,-18.370,-18.475,-18.629,
--18.849,-19.142,-19.505,-19.922,-20.373,-20.836,-21.288,-21.718,-22.118,-22.491,-22.843,-23.184,-23.522,-23.861,-24.202,-24.545,
--24.884,-25.218,-25.548,-25.876,-26.208,-26.551,-26.912,-27.296,-27.705,-28.138,-28.592,-29.058,-29.529,-29.993,-30.439,-30.858,
--31.240,-31.582,-31.884,-32.152,-32.395,-32.625,-32.854,-33.093,-33.349,-33.623,-33.912,-34.211,-34.509,-34.799,-35.076,-35.335,
--35.577,-35.801,-36.009,-36.201,-36.378,-36.536,-36.675,-36.793,-36.891,-36.971,-37.038,-37.098,-37.157,-37.221,-37.293,-37.376,
--37.469,-37.569,-37.674,-37.777,-37.872,-37.952,-38.010,-38.039,-38.034,-37.993,-37.913,-37.797,-37.647,-37.464,-37.253,-37.015,
--36.755,-36.476,-36.187,-35.898,-35.624,-35.379,-35.176,-35.023,-34.921,-34.862,-34.832,-34.810,-34.776,-34.714,-34.615,-34.480,
--34.318,-34.141,-33.964,-33.797,-33.646,-33.507,-33.377,-33.248,-33.117,-32.986,-32.864,-32.762,-32.693,-32.666,-32.683,-32.737,
--32.815,-32.896,-32.962,-32.996,-32.987,-32.931,-32.832,-32.696,-32.531,-32.344,-32.141,-31.928,-31.708,-31.487,-31.269,-31.061,
--30.866,-30.685,-30.517,-30.358,-30.201,-30.042,-29.877,-29.705,-29.528,-29.351,-29.175,-29.001,-28.827,-28.648,-28.462,-28.269,
--28.076,-27.893,-27.734,-27.616,-27.544,-27.518,-27.523,-27.534,-27.521,-27.450,-27.296,-27.049,-26.709,-26.295,-25.830,-25.346,
--24.866,-24.408,-23.977,-23.569,-23.169,-22.764,-22.336,-21.877,-21.382,-20.851,-20.291,-19.711,-19.120,-18.526,-17.935,-17.347,
--16.758,-16.158,-15.532,-14.865,-14.146,-13.370,-12.544,-11.687,-10.829,-10.002,-9.235,-8.540,-7.912,-7.319,-6.712,-6.032,
--5.226,-4.258,-3.124,-1.850,-.494,.874,2.178,3.361,4.388,5.255,5.980,6.597,7.136,7.620,8.057,8.440,
-8.760,9.014,9.216,9.402,9.624,9.941,10.405,11.044,11.855,12.804,13.832,14.870,15.854,16.741,17.513,18.176,
-18.754,19.271,19.745,20.181,20.572,20.904,21.172,21.387,21.578,21.793,22.086,22.499,23.053,23.733,24.491,25.254,
-25.945,26.497,26.877,27.088,27.175,27.207,27.262,27.407,27.684,28.098,28.626,29.221,29.831,30.408,30.925,31.374,
-31.767,32.125,32.472,32.826,33.199,33.594,34.009,34.446,34.910,35.411,35.962,36.570,37.239,37.960,38.712,39.470,
-40.205,40.893,41.520,42.082,42.586,43.047,43.481,43.903,44.322,44.743,45.165,45.583,45.992,46.385,46.752,47.084,
-47.370,47.598,47.760,47.854,47.885,47.870,47.835,47.808,47.819,47.886,48.019,48.209,48.437,48.677,48.902,49.098,
-49.261,49.408,49.566,49.767,50.041,50.408,50.866,51.398,51.971,52.541,53.069,53.522,53.885,54.161,54.368,54.536,
-54.700,54.888,55.121,55.407,55.740,56.101,56.467,56.811,57.111,57.350,57.523,57.631,57.689,57.714,57.729,57.756,
-57.812,57.910,58.053,58.240,58.461,58.702,58.951,59.195,59.423,59.630,59.813,59.974,60.115,60.239,60.350,60.452,
-60.551,60.652,60.763,60.890,61.040,61.218,61.423,61.651,61.894,62.142,62.382,62.604,62.803,62.977,63.128,63.262,
-63.386,63.506,63.624,63.739,63.850,63.951,64.039,64.112,64.172,64.223,64.269,64.315,64.362,64.409,64.450,64.479,
-64.488,64.474,64.436,64.379,64.312,64.247,64.194,64.160,64.149,64.155,64.168,64.176,64.165,64.127,64.058,63.961,
-63.845,63.723,63.605,63.497,63.396,63.291,63.162,62.986,62.743,62.419,62.014,61.539,61.020,60.488,59.978,59.520,
-59.130,58.815,58.566,58.367,58.197,58.037,57.871,57.692,57.500,57.295,57.079,56.849,56.598,56.315,55.992,55.624,
-55.215,54.780,54.341,53.925,53.556,53.254,53.024,52.859,52.742,52.647,52.551,52.432,52.283,52.103,51.904,51.702,
-51.515,51.357,51.234,51.144,51.078,51.021,50.959,50.878,50.769,50.628,50.459,50.265,50.055,49.835,49.610,50.031,
-49.826,49.567,49.251,48.883,48.476,48.048,47.618,47.204,46.821,46.475,46.165,45.885,45.624,45.370,45.115,44.854,
-44.589,44.328,44.083,43.865,43.685,43.548,43.451,43.388,43.344,43.305,43.256,43.187,43.090,42.960,42.796,42.594,
-42.353,42.071,41.748,41.388,41.003,40.608,40.223,39.868,39.553,39.280,39.035,38.793,38.523,38.192,37.779,37.278,
-36.705,36.091,35.480,34.918,34.439,34.064,33.793,33.607,33.476,33.366,33.249,33.109,32.942,32.755,32.561,32.370,
-32.189,32.016,31.843,31.661,31.460,31.240,31.001,30.753,30.503,30.256,30.009,29.752,29.469,29.145,28.768,28.333,
-27.848,27.325,26.784,26.242,25.711,25.195,24.693,24.199,23.708,23.221,22.743,22.287,21.870,21.504,21.198,20.950,
-20.751,20.582,20.423,20.255,20.067,19.855,19.623,19.382,19.145,18.925,18.730,18.566,18.430,18.319,18.225,18.141,
-18.060,17.976,17.887,17.790,17.687,17.581,17.477,17.381,17.300,17.238,17.199,17.180,17.178,17.189,17.206,17.226,
-17.248,17.272,17.300,17.331,17.360,17.379,17.377,17.341,17.264,17.143,16.981,16.793,16.595,16.406,16.241,16.106,
-16.004,15.925,15.861,15.801,15.739,15.675,15.610,15.549,15.493,15.437,15.369,15.269,15.119,14.902,14.612,14.255,
-13.849,13.421,13.004,12.625,12.305,12.052,11.867,11.737,11.651,11.594,11.556,11.528,11.503,11.470,11.416,11.321,
-11.160,10.912,10.560,10.101,9.546,8.926,8.281,7.661,7.114,6.679,6.380,6.222,6.193,6.265,6.399,6.555,
-6.695,6.786,6.808,6.749,6.607,6.390,6.108,5.775,5.405,5.009,4.598,4.178,3.756,3.336,2.927,2.537,
-2.178,1.863,1.602,1.401,1.260,1.169,1.113,1.067,1.007,.910,.762,.556,.298,.003,-.310,-.619,
--.905,-1.157,-1.372,-1.556,-1.719,-1.876,-2.043,-2.233,-2.454,-2.712,-3.006,-3.336,-3.697,-4.087,-4.501,-4.933,
--5.375,-5.816,-6.238,-6.621,-6.937,-7.160,-7.267,-7.240,-7.074,-6.780,-6.383,-5.925,-5.454,-5.027,-4.691,-4.489,
--4.444,-4.561,-4.830,-5.224,-5.709,-6.247,-6.803,-7.348,-7.861,-8.334,-8.764,-9.156,-9.519,-9.864,-10.202,-10.541,
--10.886,-11.237,-11.590,-11.937,-12.270,-12.579,-12.859,-13.110,-13.339,-13.555,-13.772,-14.003,-14.256,-14.533,-14.830,-15.135,
--15.434,-15.712,-15.957,-16.161,-16.320,-16.435,-16.510,-16.551,-16.565,-16.559,-16.542,-16.525,-16.517,-16.527,-16.558,-16.609,
--16.670,-16.726,-16.760,-16.759,-16.716,-16.638,-16.545,-16.463,-16.423,-16.451,-16.559,-16.742,-16.980,-17.241,-17.493,-17.706,
--17.867,-17.974,-18.043,-18.092,-18.140,-18.194,-18.252,-18.300,-18.319,-18.295,-18.224,-18.119,-18.004,-17.915,-17.883,-17.930,
--18.059,-18.252,-18.480,-18.704,-18.894,-19.034,-19.127,-19.195,-19.271,-19.386,-19.563,-19.804,-20.096,-20.407,-20.700,-20.944,
--21.118,-21.221,-21.269,-21.287,-21.306,-21.348,-21.425,-21.533,-21.660,-21.786,-21.892,-21.967,-22.010,-22.029,-22.035,-22.041,
--22.056,-22.079,-22.103,-22.116,-22.106,-22.063,-21.988,-21.887,-21.775,-21.670,-21.587,-21.541,-21.537,-21.573,-21.641,-21.729,
--21.823,-21.910,-21.979,-22.020,-22.028,-22.002,-21.942,-21.852,-21.740,-21.618,-21.498,-21.394,-21.319,-21.283,-21.287,-21.327,
--21.394,-21.470,-21.538,-21.580,-21.583,-21.540,-21.451,-21.322,-21.165,-20.994,-20.824,-20.666,-20.527,-20.410,-20.312,-20.230,
--20.157,-20.087,-20.015,-19.934,-19.843,-19.736,-19.612,-19.466,-19.295,-19.098,-18.876,-18.632,-18.376,-18.117,-17.871,-17.651,
--17.468,-17.328,-17.231,-17.167,-17.123,-17.081,-17.022,-16.932,-16.803,-16.637,-16.441,-16.232,-16.025,-15.838,-15.681,-15.559,
--15.467,-15.397,-15.335,-15.269,-15.193,-15.104,-15.007,-14.912,-14.832,-14.777,-14.754,-14.763,-14.795,-14.837,-14.873,-14.884,
--14.859,-14.790,-14.679,-14.535,-14.371,-14.204,-14.052,-13.925,-13.832,-13.773,-13.744,-13.736,-13.741,-13.751,-13.760,-13.766,
--13.768,-13.768,-13.769,-13.770,-13.772,-13.774,-13.777,-13.784,-13.798,-13.828,-13.878,-13.951,-14.046,-14.150,-14.244,-14.299,
--14.284,-14.170,-13.931,-13.555,-13.043,-12.409,-11.679,-10.884,-10.059,-9.237,-8.444,-7.700,-7.020,-6.414,-5.887,-5.444,
--5.086,-4.815,-4.626,-4.511,-4.460,-4.457,-4.486,-4.533,-4.585,-4.633,-4.670,-4.693,-4.697,-4.677,-4.624,-4.531,
--4.391,-4.198,-3.954,-3.663,-3.337,-2.989,-2.637,-2.292,-1.965,-1.662,-1.386,-1.136,-.912,-.711,-.531,-.368,
--.217,-.070,.084,.256,.460,.701,.984,1.306,1.658,2.030,2.409,2.785,3.151,3.499,3.825,4.121,
-4.376,4.577,4.711,4.766,4.741,4.645,4.502,4.348,4.225,4.176,4.235,4.421,4.732,5.150,5.639,6.155,
-6.654,7.098,7.458,7.718,7.872,7.924,7.881,7.753,7.550,7.284,6.968,6.616,6.246,5.874,5.519,5.193,
-4.907,4.669,4.482,4.348,4.268,4.248,4.290,4.396,4.565,4.788,5.052,5.335,5.615,5.872,6.090,6.263,
-6.395,6.495,6.576,6.649,6.722,6.792,6.853,6.892,6.899,6.871,6.809,6.726,6.639,6.569,6.531,6.538,
-6.590,6.682,6.799,6.929,7.058,7.177,7.283,7.378,7.467,7.556,7.650,7.753,7.868,7.994,8.130,8.276,
-8.426,8.578,8.721,8.848,8.948,9.015,9.045,9.043,9.021,8.994,8.980,8.996,9.048,9.136,9.249,9.367,
-9.471,9.542,9.573,9.562,9.521,9.467,9.418,9.391,9.392,9.422,9.469,9.520,9.556,9.563,9.531,9.457,
-9.344,9.199,9.032,8.857,8.687,8.534,8.409,8.319,8.266,8.243,8.237,8.224,8.181,8.083,7.916,7.676,
-7.378,7.050,6.729,6.455,6.260,6.159,6.150,6.213,6.313,6.412,6.479,6.491,6.446,6.350,6.224,6.088,
-5.960,5.852,5.763,5.690,5.626,5.566,5.508,5.457,5.416,5.388,5.373,5.362,5.342,5.300,5.226,5.116,
-4.977,4.822,4.671,4.541,4.445,4.384,4.351,4.330,4.302,4.252,4.169,4.053,3.913,3.761,3.613,3.482,
-3.375,3.295,3.237,3.198,3.171,3.155,3.148,3.154,3.174,3.211,3.264,3.327,3.394,3.455,3.501,3.525,
-3.524,3.498,3.454,3.400,3.348,3.309,3.293,3.304,3.342,3.400,3.469,3.537,3.594,3.633,3.655,3.666,
-3.676,3.696,3.735,3.797,3.880,3.976,4.074,4.163,4.236,4.290,4.329,4.362,4.394,4.434,4.482,4.536,
-4.592,4.646,4.698,4.752,4.816,4.902,5.018,5.167,5.344,5.538,5.732,5.911,6.062,6.182,6.275,6.355,
-6.435,6.526,6.634,6.757,6.885,7.004,7.104,7.177,7.223,7.248,7.265,7.284,7.317,7.368,7.437,7.519,
-7.609,7.702,7.797,7.895,7.996,8.104,8.216,8.329,8.438,8.538,8.626,8.701,8.768,8.831,8.896,8.964,
-9.032,9.091,9.131,9.141,9.116,9.055,8.966,8.859,8.751,8.655,8.580,8.530,8.500,8.484,8.469,8.448,
-8.414,8.365,8.304,8.236,8.169,8.109,8.062,8.033,8.024,8.037,8.068,8.114,8.170,8.227,8.278,8.316,
-8.337,8.341,8.330,8.312,8.295,8.286,8.291,8.312,8.344,8.382,8.415,8.433,8.426,8.385,8.304,8.179,
-8.007,7.791,7.537,7.256,6.965,6.687,6.443,6.255,6.136,6.089,6.104,6.157,6.215,6.239,6.194,6.049,
-5.787,5.404,4.912,4.328,3.680,2.994,2.296,1.607,.944,.317,-.265,-.800,-1.288,-1.733,-2.143,-2.525,
--2.892,-3.251,-3.608,-3.962,-4.308,-4.636,-4.936,-5.200,-5.425,-5.612,-5.772,-5.917,-6.059,-6.209,-6.374,-6.551,
--6.739,-6.934,-7.134,-7.345,-7.577,-7.843,-8.157,-8.526,-8.949,-9.415,-9.901,-10.382,-10.833,-11.237,-11.588,-11.894,
--12.173,-12.452,-12.753,-13.094,-13.480,-13.904,-14.348,-14.790,-15.208,-15.584,-15.909,-16.183,-16.413,-16.610,-16.786,-16.949,
--17.108,-17.266,-17.425,-17.586,-17.750,-17.913,-18.071,-18.217,-18.342,-18.436,-18.491,-18.510,-18.500,-18.481,-18.477,-18.518,
--18.628,-18.824,-19.107,-19.469,-19.887,-20.335,-20.785,-21.216,-21.617,-21.987,-22.332,-22.664,-22.993,-23.326,-23.665,-24.007,
--24.347,-24.683,-25.013,-25.341,-25.673,-26.018,-26.382,-26.770,-27.181,-27.611,-28.055,-28.504,-28.953,-29.396,-29.828,-30.246,
--30.647,-31.027,-31.383,-31.713,-32.019,-32.305,-32.579,-32.851,-33.131,-33.425,-33.736,-34.063,-34.397,-34.728,-35.044,-35.336,
--35.599,-35.830,-36.033,-36.212,-36.373,-36.522,-36.663,-36.799,-36.931,-37.057,-37.180,-37.299,-37.416,-37.532,-37.649,-37.767,
--37.890,-38.016,-38.145,-38.274,-38.399,-38.513,-38.607,-38.673,-38.701,-38.684,-38.619,-38.508,-38.355,-38.170,-37.961,-37.737,
--37.504,-37.266,-37.025,-36.783,-36.543,-36.314,-36.106,-35.930,-35.795,-35.706,-35.661,-35.648,-35.651,-35.650,-35.627,-35.571,
--35.480,-35.359,-35.219,-35.075,-34.937,-34.808,-34.687,-34.564,-34.431,-34.279,-34.108,-33.925,-33.744,-33.583,-33.459,-33.382,
--33.355,-33.371,-33.415,-33.467,-33.510,-33.526,-33.507,-33.448,-33.350,-33.216,-33.054,-32.868,-32.666,-32.455,-32.243,-32.036,
--31.838,-31.653,-31.478,-31.307,-31.132,-30.945,-30.742,-30.524,-30.296,-30.071,-29.860,-29.671,-29.508,-29.364,-29.229,-29.088,
--28.932,-28.754,-28.562,-28.370,-28.194,-28.052,-27.953,-27.891,-27.850,-27.802,-27.715,-27.563,-27.329,-27.010,-26.618,-26.175,
--25.706,-25.234,-24.773,-24.329,-23.895,-23.462,-23.017,-22.552,-22.061,-21.545,-21.010,-20.462,-19.908,-19.353,-18.799,-18.247,
--17.695,-17.138,-16.570,-15.980,-15.359,-14.696,-13.986,-13.230,-12.439,-11.634,-10.839,-10.081,-9.375,-8.723,-8.106,-7.490,
--6.828,-6.074,-5.194,-4.178,-3.039,-1.817,-.564,.661,1.813,2.866,3.813,4.665,5.440,6.154,6.808,7.390,
-7.880,8.256,8.515,8.676,8.786,8.917,9.149,9.553,10.175,11.022,12.057,13.215,14.409,15.558,16.596,17.490,
-18.234,18.848,19.360,19.798,20.178,20.504,20.776,20.993,21.169,21.337,21.543,21.839,22.268,22.852,23.578,24.397,
-25.239,26.022,26.678,27.168,27.491,27.685,27.817,27.961,28.183,28.522,28.985,29.545,30.155,30.758,31.309,31.778,
-32.160,32.471,32.740,32.997,33.270,33.576,33.922,34.309,34.736,35.203,35.713,36.271,36.881,37.539,38.235,38.950,
-39.661,40.346,40.986,41.573,42.108,42.601,43.067,43.522,43.976,44.437,44.906,45.376,45.842,46.293,46.718,47.106,
-47.443,47.717,47.913,48.024,48.051,48.003,47.907,47.793,47.703,47.669,47.718,47.855,48.069,48.331,48.602,48.844,
-49.029,49.147,49.209,49.244,49.295,49.404,49.604,49.910,50.317,50.802,51.327,51.852,52.343,52.778,53.155,53.486,
-53.794,54.107,54.448,54.829,55.251,55.699,56.151,56.577,56.953,57.260,57.490,57.647,57.747,57.812,57.865,57.929,
-58.021,58.149,58.313,58.509,58.724,58.949,59.171,59.383,59.580,59.761,59.926,60.075,60.212,60.336,60.448,60.552,
-60.651,60.752,60.865,61.000,61.165,61.365,61.601,61.865,62.145,62.425,62.688,62.922,63.120,63.284,63.420,63.541,
-63.661,63.789,63.929,64.080,64.233,64.377,64.500,64.594,64.659,64.700,64.728,64.756,64.794,64.847,64.915,64.989,
-65.055,65.098,65.107,65.075,65.006,64.910,64.804,64.707,64.634,64.595,64.593,64.617,64.650,64.673,64.663,64.606,
-64.496,64.337,64.142,63.931,63.725,63.540,63.384,63.254,63.135,63.004,62.838,62.613,62.318,61.950,61.520,61.049,
-60.562,60.085,59.640,59.241,58.895,58.600,58.350,58.132,57.936,57.746,57.550,57.331,57.078,56.778,56.426,56.024,
-55.583,55.125,54.676,54.264,53.914,53.638,53.436,53.295,53.190,53.093,52.979,52.829,52.639,52.419,52.186,51.961,
-51.763,51.603,51.482,51.390,51.315,51.241,51.155,51.053,50.936,50.810,50.683,50.561,50.444,50.325,50.192,50.031,
-50.320,50.147,49.899,49.574,49.180,48.737,48.269,47.802,47.357,46.948,46.582,46.257,45.965,45.696,45.439,45.185,
-44.929,44.673,44.421,44.182,43.966,43.778,43.623,43.498,43.393,43.296,43.192,43.067,42.911,42.719,42.491,42.232,
-41.948,41.647,41.336,41.022,40.709,40.404,40.113,39.842,39.595,39.370,39.159,38.947,38.713,38.432,38.084,37.655,
-37.149,36.581,35.983,35.392,34.847,34.378,34.002,33.719,33.515,33.364,33.240,33.118,32.982,32.827,32.654,32.471,
-32.282,32.090,31.892,31.683,31.455,31.206,30.936,30.651,30.359,30.067,29.779,29.489,29.188,28.860,28.490,28.068,
-27.593,27.072,26.521,25.957,25.398,24.855,24.335,23.835,23.352,22.880,22.420,21.976,21.557,21.174,20.836,20.549,
-20.311,20.111,19.938,19.775,19.611,19.437,19.251,19.058,18.865,18.681,18.517,18.379,18.272,18.197,18.152,18.132,
-18.128,18.129,18.122,18.095,18.038,17.947,17.828,17.689,17.548,17.423,17.329,17.276,17.264,17.286,17.329,17.378,
-17.422,17.456,17.481,17.505,17.535,17.576,17.624,17.668,17.690,17.672,17.598,17.459,17.259,17.012,16.738,16.457,
-16.189,15.944,15.725,15.531,15.355,15.194,15.048,14.921,14.820,14.747,14.702,14.674,14.646,14.596,14.503,14.351,
-14.135,13.863,13.550,13.222,12.902,12.613,12.368,12.175,12.034,11.939,11.883,11.860,11.859,11.869,11.872,11.848,
-11.771,11.613,11.351,10.971,10.472,9.872,9.203,8.509,7.839,7.240,6.751,6.393,6.174,6.084,6.099,6.188,
-6.313,6.439,6.537,6.581,6.558,6.459,6.285,6.043,5.744,5.401,5.027,4.633,4.229,3.824,3.423,3.032,
-2.659,2.312,1.998,1.727,1.503,1.327,1.193,1.090,1.004,.916,.809,.672,.495,.277,.021,-.264,
--.568,-.879,-1.188,-1.483,-1.759,-2.010,-2.238,-2.445,-2.640,-2.835,-3.042,-3.276,-3.545,-3.854,-4.200,-4.571,
--4.951,-5.320,-5.656,-5.936,-6.142,-6.262,-6.284,-6.207,-6.034,-5.778,-5.461,-5.115,-4.781,-4.505,-4.331,-4.297,
--4.423,-4.713,-5.148,-5.691,-6.297,-6.915,-7.501,-8.026,-8.476,-8.855,-9.178,-9.470,-9.751,-10.040,-10.348,-10.675,
--11.018,-11.368,-11.714,-12.050,-12.368,-12.665,-12.940,-13.195,-13.434,-13.664,-13.894,-14.133,-14.389,-14.663,-14.957,-15.263,
--15.571,-15.868,-16.140,-16.380,-16.582,-16.747,-16.879,-16.983,-17.064,-17.124,-17.165,-17.188,-17.195,-17.191,-17.183,-17.179,
--17.184,-17.198,-17.218,-17.232,-17.229,-17.202,-17.148,-17.077,-17.008,-16.965,-16.974,-17.052,-17.202,-17.414,-17.664,-17.922,
--18.158,-18.351,-18.493,-18.589,-18.652,-18.699,-18.740,-18.778,-18.806,-18.810,-18.777,-18.704,-18.600,-18.486,-18.393,-18.354,
--18.393,-18.518,-18.721,-18.974,-19.244,-19.495,-19.706,-19.868,-19.993,-20.104,-20.231,-20.396,-20.612,-20.871,-21.153,-21.430,
--21.671,-21.854,-21.971,-22.028,-22.042,-22.039,-22.040,-22.063,-22.112,-22.185,-22.272,-22.362,-22.444,-22.515,-22.573,-22.623,
--22.667,-22.706,-22.734,-22.745,-22.729,-22.679,-22.592,-22.473,-22.335,-22.195,-22.074,-21.991,-21.957,-21.979,-22.051,-22.162,
--22.295,-22.431,-22.552,-22.644,-22.698,-22.710,-22.683,-22.621,-22.534,-22.432,-22.326,-22.226,-22.143,-22.082,-22.049,-22.045,
--22.068,-22.111,-22.164,-22.214,-22.245,-22.246,-22.206,-22.121,-21.991,-21.825,-21.634,-21.434,-21.239,-21.063,-20.914,-20.794,
--20.701,-20.628,-20.567,-20.509,-20.446,-20.373,-20.285,-20.179,-20.052,-19.899,-19.717,-19.503,-19.256,-18.983,-18.692,-18.399,
--18.121,-17.874,-17.670,-17.514,-17.400,-17.316,-17.242,-17.158,-17.047,-16.898,-16.710,-16.493,-16.263,-16.040,-15.841,-15.680,
--15.560,-15.479,-15.426,-15.389,-15.357,-15.323,-15.285,-15.249,-15.222,-15.215,-15.235,-15.286,-15.363,-15.457,-15.554,-15.639,
--15.696,-15.712,-15.684,-15.610,-15.497,-15.359,-15.211,-15.066,-14.939,-14.837,-14.763,-14.712,-14.678,-14.650,-14.620,-14.581,
--14.534,-14.481,-14.429,-14.385,-14.356,-14.346,-14.352,-14.373,-14.403,-14.439,-14.480,-14.529,-14.589,-14.661,-14.741,-14.817,
--14.867,-14.861,-14.768,-14.557,-14.209,-13.716,-13.088,-12.347,-11.527,-10.666,-9.801,-8.959,-8.162,-7.420,-6.741,-6.128,
--5.585,-5.120,-4.741,-4.458,-4.273,-4.184,-4.180,-4.241,-4.341,-4.456,-4.559,-4.634,-4.668,-4.657,-4.601,-4.502,
--4.363,-4.187,-3.973,-3.721,-3.435,-3.119,-2.781,-2.433,-2.088,-1.758,-1.454,-1.183,-.946,-.741,-.560,-.392,
--.228,-.055,.136,.354,.602,.882,1.190,1.520,1.864,2.213,2.560,2.898,3.224,3.537,3.837,4.120,
-4.383,4.616,4.808,4.947,5.025,5.039,4.993,4.902,4.787,4.677,4.596,4.568,4.609,4.725,4.915,5.171,
-5.482,5.834,6.213,6.604,6.992,7.361,7.693,7.972,8.181,8.310,8.352,8.308,8.183,7.986,7.726,7.410,
-7.048,6.645,6.213,5.769,5.336,4.948,4.639,4.444,4.385,4.471,4.690,5.010,5.388,5.773,6.122,6.404,
-6.608,6.740,6.822,6.880,6.938,7.011,7.098,7.187,7.260,7.296,7.285,7.228,7.138,7.039,6.958,6.919,
-6.936,7.009,7.128,7.272,7.419,7.551,7.657,7.735,7.793,7.844,7.904,7.983,8.089,8.223,8.380,8.552,
-8.730,8.905,9.067,9.211,9.330,9.421,9.480,9.511,9.518,9.511,9.501,9.502,9.522,9.567,9.633,9.710,
-9.785,9.842,9.868,9.859,9.818,9.756,9.688,9.631,9.597,9.591,9.608,9.638,9.664,9.671,9.647,9.585,
-9.486,9.353,9.198,9.031,8.864,8.708,8.570,8.459,8.377,8.323,8.289,8.261,8.219,8.142,8.009,7.811,
-7.547,7.235,6.902,6.587,6.324,6.140,6.048,6.038,6.085,6.156,6.212,6.225,6.180,6.081,5.942,5.787,
-5.640,5.518,5.427,5.364,5.319,5.283,5.248,5.215,5.186,5.169,5.168,5.178,5.191,5.189,5.155,5.080,
-4.960,4.807,4.639,4.481,4.354,4.272,4.236,4.234,4.248,4.257,4.242,4.197,4.123,4.031,3.936,3.850,
-3.782,3.732,3.693,3.655,3.610,3.554,3.487,3.418,3.360,3.327,3.328,3.368,3.446,3.550,3.668,3.783,
-3.877,3.937,3.956,3.931,3.868,3.779,3.681,3.592,3.528,3.502,3.519,3.577,3.665,3.770,3.878,3.980,
-4.071,4.155,4.237,4.327,4.429,4.545,4.668,4.788,4.894,4.977,5.034,5.068,5.090,5.111,5.143,5.191,
-5.257,5.335,5.418,5.500,5.577,5.654,5.734,5.826,5.933,6.055,6.184,6.310,6.423,6.515,6.586,6.645,
-6.702,6.773,6.865,6.980,7.110,7.240,7.354,7.434,7.475,7.479,7.459,7.432,7.417,7.430,7.479,7.561,
-7.668,7.789,7.913,8.032,8.143,8.248,8.350,8.454,8.561,8.673,8.789,8.908,9.029,9.152,9.277,9.399,
-9.513,9.611,9.680,9.711,9.698,9.643,9.555,9.449,9.346,9.264,9.218,9.214,9.250,9.314,9.392,9.468,
-9.528,9.564,9.573,9.555,9.516,9.459,9.390,9.314,9.235,9.158,9.087,9.028,8.982,8.949,8.928,8.913,
-8.896,8.874,8.842,8.801,8.756,8.715,8.685,8.671,8.676,8.696,8.723,8.748,8.761,8.751,8.711,8.639,
-8.532,8.392,8.220,8.021,7.798,7.560,7.316,7.077,6.855,6.660,6.497,6.365,6.255,6.154,6.044,5.904,
-5.715,5.465,5.146,4.755,4.299,3.786,3.231,2.649,2.057,1.471,.906,.372,-.125,-.585,-1.014,-1.423,
--1.825,-2.232,-2.651,-3.085,-3.528,-3.966,-4.384,-4.767,-5.103,-5.389,-5.629,-5.834,-6.017,-6.192,-6.368,-6.549,
--6.732,-6.914,-7.091,-7.264,-7.441,-7.637,-7.870,-8.155,-8.504,-8.916,-9.380,-9.872,-10.366,-10.835,-11.260,-11.635,
--11.967,-12.274,-12.581,-12.910,-13.278,-13.689,-14.136,-14.601,-15.060,-15.490,-15.876,-16.209,-16.489,-16.726,-16.931,-17.117,
--17.296,-17.474,-17.654,-17.836,-18.020,-18.201,-18.375,-18.535,-18.670,-18.773,-18.834,-18.851,-18.828,-18.779,-18.726,-18.699,
--18.727,-18.832,-19.026,-19.307,-19.660,-20.059,-20.474,-20.882,-21.264,-21.615,-21.940,-22.250,-22.558,-22.873,-23.200,-23.537,
--23.878,-24.216,-24.548,-24.877,-25.209,-25.557,-25.930,-26.334,-26.769,-27.231,-27.707,-28.185,-28.654,-29.106,-29.537,-29.948,
--30.340,-30.715,-31.074,-31.415,-31.737,-32.042,-32.332,-32.615,-32.899,-33.193,-33.505,-33.836,-34.183,-34.537,-34.884,-35.212,
--35.511,-35.775,-36.003,-36.201,-36.375,-36.535,-36.688,-36.838,-36.989,-37.142,-37.296,-37.453,-37.612,-37.772,-37.934,-38.097,
--38.258,-38.416,-38.568,-38.711,-38.844,-38.963,-39.064,-39.143,-39.193,-39.207,-39.179,-39.104,-38.983,-38.820,-38.623,-38.404,
--38.174,-37.943,-37.717,-37.499,-37.292,-37.094,-36.909,-36.741,-36.598,-36.487,-36.412,-36.374,-36.365,-36.373,-36.383,-36.378,
--36.348,-36.288,-36.202,-36.100,-35.993,-35.890,-35.796,-35.706,-35.612,-35.501,-35.362,-35.190,-34.990,-34.774,-34.560,-34.368,
--34.212,-34.103,-34.041,-34.016,-34.016,-34.025,-34.027,-34.010,-33.967,-33.893,-33.788,-33.654,-33.493,-33.311,-33.116,-32.918,
--32.725,-32.544,-32.378,-32.222,-32.068,-31.902,-31.713,-31.492,-31.242,-30.972,-30.699,-30.445,-30.228,-30.054,-29.922,-29.817,
--29.717,-29.600,-29.450,-29.263,-29.046,-28.816,-28.594,-28.394,-28.222,-28.071,-27.920,-27.743,-27.517,-27.225,-26.865,-26.449,
--25.997,-25.535,-25.082,-24.651,-24.243,-23.847,-23.450,-23.035,-22.590,-22.112,-21.602,-21.069,-20.522,-19.968,-19.413,-18.858,
--18.303,-17.745,-17.182,-16.611,-16.029,-15.431,-14.811,-14.166,-13.493,-12.795,-12.079,-11.361,-10.655,-9.974,-9.322,-8.691,
--8.059,-7.398,-6.676,-5.867,-4.957,-3.953,-2.876,-1.759,-.638,.455,1.500,2.487,3.416,4.286,5.093,5.820,
-6.444,6.938,7.288,7.499,7.608,7.678,7.796,8.054,8.528,9.260,10.248,11.444,12.763,14.103,15.365,16.473,
-17.391,18.115,18.675,19.114,19.477,19.797,20.090,20.361,20.608,20.837,21.068,21.335,21.681,22.144,22.745,23.478,
-24.306,25.167,25.988,26.701,27.264,27.667,27.934,28.120,28.289,28.502,28.797,29.185,29.648,30.147,30.635,31.074,
-31.441,31.734,31.973,32.189,32.417,32.687,33.017,33.414,33.877,34.397,34.967,35.581,36.234,36.922,37.639,38.374,
-39.109,39.826,40.507,41.138,41.712,42.233,42.713,43.165,43.608,44.055,44.512,44.983,45.463,45.943,46.411,46.852,
-47.251,47.590,47.854,48.030,48.111,48.099,48.008,47.864,47.701,47.559,47.472,47.464,47.545,47.703,47.912,48.137,
-48.339,48.492,48.583,48.620,48.629,48.647,48.715,48.868,49.125,49.489,49.944,50.461,51.005,51.548,52.069,52.560,
-53.028,53.488,53.955,54.443,54.952,55.472,55.982,56.456,56.866,57.194,57.431,57.586,57.679,57.739,57.799,57.885,
-58.018,58.203,58.434,58.695,58.964,59.222,59.451,59.643,59.796,59.918,60.018,60.108,60.199,60.296,60.402,60.517,
-60.641,60.775,60.922,61.085,61.270,61.480,61.717,61.975,62.245,62.516,62.772,63.005,63.207,63.380,63.531,63.672,
-63.817,63.976,64.156,64.353,64.557,64.756,64.932,65.073,65.173,65.232,65.260,65.273,65.289,65.321,65.379,65.463,
-65.564,65.667,65.753,65.807,65.816,65.777,65.695,65.585,65.467,65.360,65.282,65.242,65.239,65.262,65.289,65.294,
-65.252,65.143,64.959,64.707,64.406,64.085,63.777,63.512,63.308,63.166,63.073,63.002,62.915,62.777,62.560,62.252,
-61.853,61.383,60.870,60.348,59.850,59.402,59.017,58.697,58.435,58.212,58.006,57.792,57.548,57.255,56.905,56.500,
-56.051,55.583,55.124,54.704,54.348,54.072,53.873,53.735,53.632,53.530,53.400,53.224,52.998,52.737,52.464,52.210,
-52.000,51.847,51.752,51.698,51.661,51.614,51.536,51.419,51.267,51.097,50.929,50.783,50.668,50.583,50.513,50.434,
-50.320,50.470,50.326,50.116,49.837,49.498,49.114,48.701,48.276,47.849,47.427,47.012,46.606,46.211,45.828,45.462,
-45.119,44.804,44.521,44.274,44.060,43.878,43.720,43.580,43.446,43.309,43.157,42.982,42.777,42.540,42.272,41.980,
-41.674,41.366,41.068,40.790,40.539,40.320,40.132,39.970,39.827,39.692,39.552,39.392,39.195,38.947,38.636,38.253,
-37.801,37.291,36.743,36.182,35.636,35.132,34.688,34.310,33.995,33.728,33.492,33.267,33.038,32.798,32.545,32.286,
-32.029,31.780,31.543,31.317,31.096,30.874,30.644,30.403,30.149,29.883,29.604,29.312,28.998,28.657,28.276,27.851,
-27.377,26.859,26.307,25.734,25.156,24.587,24.036,23.508,23.002,22.519,22.056,21.616,21.203,20.823,20.481,20.181,
-19.922,19.699,19.503,19.325,19.159,18.998,18.842,18.690,18.544,18.409,18.286,18.177,18.085,18.014,17.969,17.952,
-17.965,18.004,18.061,18.118,18.156,18.156,18.106,18.002,17.853,17.678,17.504,17.356,17.253,17.206,17.209,17.250,
-17.310,17.371,17.425,17.470,17.513,17.565,17.637,17.729,17.832,17.930,17.997,18.010,17.952,17.816,17.608,17.342,
-17.039,16.718,16.394,16.075,15.764,15.463,15.172,14.897,14.647,14.433,14.265,14.148,14.077,14.040,14.017,13.985,
-13.924,13.821,13.671,13.480,13.259,13.024,12.791,12.573,12.379,12.215,12.082,11.983,11.913,11.867,11.835,11.800,
-11.740,11.631,11.447,11.170,10.788,10.306,9.739,9.118,8.478,7.860,7.300,6.827,6.458,6.201,6.050,5.994,
-6.014,6.085,6.182,6.279,6.352,6.377,6.339,6.227,6.039,5.778,5.458,5.093,4.700,4.296,3.895,3.506,
-3.136,2.787,2.462,2.163,1.891,1.646,1.429,1.239,1.075,.932,.806,.690,.576,.454,.311,.137,
--.081,-.350,-.673,-1.043,-1.444,-1.854,-2.245,-2.592,-2.879,-3.098,-3.259,-3.379,-3.485,-3.602,-3.749,-3.932,
--4.145,-4.369,-4.580,-4.754,-4.873,-4.928,-4.922,-4.861,-4.762,-4.639,-4.511,-4.394,-4.308,-4.278,-4.326,-4.479,
--4.753,-5.155,-5.675,-6.284,-6.941,-7.595,-8.197,-8.712,-9.121,-9.430,-9.663,-9.854,-10.041,-10.252,-10.506,-10.803,
--11.131,-11.474,-11.811,-12.129,-12.422,-12.689,-12.938,-13.177,-13.414,-13.654,-13.902,-14.158,-14.425,-14.704,-14.993,-15.293,
--15.596,-15.896,-16.182,-16.445,-16.677,-16.876,-17.044,-17.187,-17.312,-17.425,-17.527,-17.615,-17.684,-17.728,-17.745,-17.738,
--17.715,-17.686,-17.661,-17.646,-17.639,-17.635,-17.623,-17.597,-17.557,-17.512,-17.479,-17.482,-17.540,-17.666,-17.858,-18.103,
--18.373,-18.638,-18.869,-19.047,-19.167,-19.233,-19.258,-19.258,-19.243,-19.218,-19.178,-19.120,-19.040,-18.942,-18.843,-18.765,
--18.734,-18.774,-18.895,-19.095,-19.356,-19.649,-19.943,-20.210,-20.436,-20.620,-20.775,-20.921,-21.080,-21.265,-21.480,-21.717,
--21.958,-22.182,-22.369,-22.506,-22.592,-22.633,-22.640,-22.629,-22.611,-22.597,-22.590,-22.593,-22.607,-22.632,-22.672,-22.730,
--22.807,-22.902,-23.007,-23.109,-23.191,-23.236,-23.232,-23.174,-23.065,-22.922,-22.767,-22.628,-22.530,-22.492,-22.523,-22.620,
--22.768,-22.946,-23.126,-23.284,-23.398,-23.456,-23.456,-23.403,-23.309,-23.188,-23.056,-22.928,-22.814,-22.722,-22.656,-22.620,
--22.612,-22.631,-22.671,-22.725,-22.778,-22.817,-22.825,-22.788,-22.696,-22.549,-22.353,-22.124,-21.881,-21.647,-21.441,-21.275,
--21.153,-21.070,-21.015,-20.973,-20.931,-20.879,-20.811,-20.728,-20.630,-20.518,-20.391,-20.244,-20.070,-19.862,-19.619,-19.343,
--19.045,-18.742,-18.452,-18.193,-17.975,-17.802,-17.665,-17.549,-17.434,-17.303,-17.142,-16.950,-16.732,-16.501,-16.276,-16.071,
--15.898,-15.762,-15.661,-15.590,-15.543,-15.512,-15.498,-15.503,-15.532,-15.590,-15.681,-15.804,-15.951,-16.111,-16.269,-16.408,
--16.514,-16.576,-16.587,-16.548,-16.462,-16.339,-16.193,-16.040,-15.893,-15.765,-15.665,-15.593,-15.546,-15.513,-15.483,-15.444,
--15.388,-15.314,-15.227,-15.139,-15.064,-15.013,-14.993,-15.006,-15.045,-15.099,-15.158,-15.214,-15.265,-15.314,-15.365,-15.419,
--15.471,-15.504,-15.493,-15.404,-15.205,-14.871,-14.390,-13.768,-13.027,-12.202,-11.331,-10.452,-9.591,-8.766,-7.983,-7.243,
--6.546,-5.899,-5.315,-4.814,-4.416,-4.138,-3.989,-3.959,-4.026,-4.158,-4.313,-4.454,-4.552,-4.587,-4.556,-4.462,
--4.319,-4.140,-3.935,-3.711,-3.469,-3.208,-2.926,-2.627,-2.313,-1.996,-1.685,-1.393,-1.127,-.891,-.682,-.494,
--.314,-.131,.067,.289,.540,.821,1.129,1.458,1.801,2.151,2.501,2.845,3.178,3.496,3.798,4.078,
-4.334,4.558,4.747,4.895,5.000,5.062,5.087,5.084,5.064,5.040,5.023,5.022,5.043,5.090,5.165,5.271,
-5.411,5.590,5.811,6.075,6.379,6.715,7.068,7.423,7.761,8.070,8.341,8.571,8.757,8.896,8.981,8.997,
-8.919,8.727,8.401,7.939,7.361,6.709,6.046,5.447,4.984,4.712,4.657,4.812,5.136,5.563,6.021,6.440,
-6.774,7.003,7.133,7.193,7.219,7.246,7.295,7.370,7.460,7.542,7.593,7.599,7.560,7.490,7.412,7.357,
-7.348,7.399,7.506,7.656,7.824,7.983,8.113,8.202,8.252,8.276,8.292,8.320,8.376,8.469,8.597,8.753,
-8.924,9.097,9.261,9.408,9.535,9.640,9.725,9.793,9.847,9.889,9.923,9.953,9.983,10.016,10.052,10.090,
-10.125,10.150,10.157,10.144,10.108,10.056,9.995,9.936,9.889,9.857,9.841,9.833,9.824,9.801,9.756,9.684,
-9.586,9.470,9.343,9.215,9.091,8.973,8.859,8.746,8.630,8.511,8.386,8.258,8.124,7.983,7.830,7.656,
-7.459,7.239,7.004,6.769,6.555,6.381,6.263,6.201,6.186,6.196,6.202,6.179,6.110,5.989,5.829,5.650,
-5.480,5.340,5.244,5.192,5.173,5.170,5.166,5.152,5.125,5.092,5.062,5.044,5.038,5.037,5.026,4.991,
-4.919,4.808,4.667,4.516,4.377,4.272,4.212,4.198,4.217,4.250,4.277,4.283,4.261,4.218,4.163,4.112,
-4.072,4.049,4.035,4.021,3.994,3.943,3.866,3.768,3.661,3.563,3.490,3.455,3.465,3.520,3.614,3.737,
-3.875,4.012,4.131,4.218,4.259,4.249,4.188,4.086,3.961,3.834,3.731,3.672,3.669,3.723,3.827,3.965,
-4.119,4.274,4.421,4.558,4.689,4.819,4.952,5.087,5.219,5.338,5.437,5.511,5.561,5.595,5.625,5.665,
-5.723,5.802,5.899,6.006,6.114,6.213,6.302,6.382,6.457,6.531,6.607,6.684,6.757,6.822,6.875,6.921,
-6.965,7.019,7.093,7.192,7.313,7.445,7.570,7.669,7.729,7.744,7.720,7.673,7.626,7.601,7.616,7.678,
-7.785,7.927,8.087,8.249,8.401,8.536,8.651,8.749,8.835,8.913,8.990,9.070,9.159,9.262,9.382,9.521,
-9.674,9.831,9.978,10.098,10.176,10.205,10.186,10.129,10.057,9.991,9.955,9.964,10.022,10.125,10.258,10.401,
-10.536,10.647,10.726,10.771,10.781,10.762,10.718,10.650,10.562,10.456,10.336,10.209,10.083,9.964,9.859,9.770,
-9.694,9.628,9.563,9.497,9.426,9.352,9.281,9.218,9.168,9.134,9.113,9.098,9.082,9.057,9.015,8.953,
-8.871,8.773,8.660,8.536,8.403,8.260,8.105,7.938,7.756,7.559,7.348,7.124,6.889,6.645,6.391,6.129,
-5.856,5.573,5.277,4.969,4.646,4.311,3.962,3.602,3.234,2.862,2.490,2.122,1.759,1.398,1.035,.659,
-.262,-.166,-.629,-1.127,-1.652,-2.190,-2.724,-3.237,-3.715,-4.150,-4.542,-4.897,-5.225,-5.538,-5.842,-6.141,
--6.435,-6.715,-6.977,-7.216,-7.432,-7.634,-7.835,-8.053,-8.306,-8.605,-8.956,-9.354,-9.784,-10.228,-10.667,-11.085,
--11.477,-11.845,-12.202,-12.562,-12.944,-13.357,-13.804,-14.276,-14.757,-15.224,-15.656,-16.037,-16.358,-16.620,-16.834,-17.013,
--17.174,-17.333,-17.500,-17.681,-17.875,-18.079,-18.284,-18.481,-18.657,-18.802,-18.906,-18.966,-18.984,-18.970,-18.944,-18.929,
--18.951,-19.035,-19.193,-19.428,-19.731,-20.079,-20.449,-20.814,-21.156,-21.469,-21.756,-22.029,-22.304,-22.594,-22.907,-23.240,
--23.587,-23.938,-24.283,-24.619,-24.951,-25.287,-25.641,-26.024,-26.441,-26.893,-27.372,-27.865,-28.358,-28.843,-29.310,-29.760,
--30.191,-30.605,-31.001,-31.377,-31.728,-32.050,-32.342,-32.608,-32.859,-33.106,-33.364,-33.642,-33.945,-34.270,-34.608,-34.947,
--35.272,-35.574,-35.847,-36.092,-36.314,-36.520,-36.716,-36.909,-37.098,-37.285,-37.469,-37.648,-37.826,-38.003,-38.183,-38.365,
--38.550,-38.733,-38.908,-39.070,-39.212,-39.333,-39.433,-39.511,-39.571,-39.609,-39.625,-39.612,-39.563,-39.474,-39.343,-39.173,
--38.971,-38.749,-38.519,-38.291,-38.072,-37.868,-37.679,-37.505,-37.346,-37.206,-37.087,-36.993,-36.926,-36.884,-36.860,-36.846,
--36.829,-36.802,-36.759,-36.700,-36.631,-36.559,-36.490,-36.428,-36.370,-36.306,-36.226,-36.120,-35.981,-35.810,-35.614,-35.409,
--35.210,-35.033,-34.887,-34.776,-34.697,-34.641,-34.598,-34.557,-34.509,-34.446,-34.363,-34.257,-34.126,-33.973,-33.802,-33.621,
--33.442,-33.277,-33.134,-33.017,-32.921,-32.831,-32.726,-32.585,-32.392,-32.143,-31.846,-31.524,-31.206,-30.923,-30.695,-30.528,
--30.413,-30.327,-30.238,-30.118,-29.949,-29.728,-29.462,-29.172,-28.877,-28.591,-28.316,-28.044,-27.757,-27.436,-27.068,-26.650,
--26.193,-25.716,-25.244,-24.799,-24.390,-24.018,-23.669,-23.324,-22.961,-22.565,-22.125,-21.642,-21.124,-20.582,-20.025,-19.460,
--18.891,-18.317,-17.735,-17.144,-16.543,-15.934,-15.318,-14.697,-14.071,-13.439,-12.804,-12.166,-11.531,-10.905,-10.295,-9.702,
--9.124,-8.550,-7.963,-7.342,-6.667,-5.921,-5.096,-4.195,-3.225,-2.202,-1.142,-.064,1.013,2.066,3.069,3.988,
-4.786,5.430,5.897,6.186,6.325,6.375,6.422,6.567,6.905,7.505,8.395,9.553,10.911,12.365,13.799,15.107,
-16.213,17.086,17.735,18.205,18.558,18.856,19.145,19.451,19.775,20.109,20.443,20.777,21.127,21.524,22.001,22.585,
-23.284,24.078,24.921,25.751,26.503,27.123,27.583,27.887,28.066,28.173,28.261,28.380,28.557,28.797,29.085,29.397,
-29.706,29.996,30.265,30.526,30.802,31.118,31.499,31.956,32.492,33.098,33.763,34.471,35.211,35.975,36.757,37.553,
-38.356,39.155,39.935,40.680,41.373,42.005,42.572,43.078,43.536,43.962,44.374,44.786,45.210,45.646,46.092,46.536,
-46.962,47.350,47.679,47.932,48.093,48.158,48.126,48.012,47.835,47.624,47.409,47.219,47.078,46.996,46.976,47.007,
-47.073,47.155,47.239,47.319,47.399,47.494,47.627,47.821,48.098,48.467,48.929,49.469,50.066,50.692,51.325,51.945,
-52.544,53.123,53.688,54.248,54.807,55.359,55.889,56.376,56.794,57.122,57.349,57.479,57.532,57.542,57.548,57.591,
-57.699,57.889,58.154,58.477,58.826,59.166,59.464,59.699,59.863,59.961,60.008,60.026,60.041,60.071,60.133,60.235,
-60.381,60.570,60.795,61.053,61.335,61.634,61.941,62.244,62.534,62.800,63.034,63.234,63.402,63.544,63.673,63.802,
-63.944,64.107,64.297,64.508,64.732,64.954,65.159,65.333,65.467,65.559,65.613,65.641,65.658,65.680,65.719,65.785,
-65.880,65.999,66.131,66.261,66.372,66.449,66.480,66.461,66.395,66.293,66.172,66.051,65.950,65.881,65.846,65.837,
-65.832,65.803,65.721,65.562,65.316,64.991,64.611,64.211,63.834,63.514,63.275,63.117,63.023,62.955,62.872,62.732,
-62.505,62.180,61.767,61.290,60.785,60.288,59.830,59.430,59.092,58.807,58.558,58.321,58.074,57.796,57.477,57.114,
-56.712,56.287,55.860,55.454,55.089,54.781,54.532,54.334,54.168,54.006,53.824,53.603,53.337,53.036,52.726,52.436,
-52.198,52.031,51.940,51.911,51.916,51.920,51.891,51.809,51.667,51.480,51.271,51.069,50.899,50.772,50.686,50.624,
-50.562,50.470,50.595,50.459,50.273,50.038,49.758,49.443,49.097,48.722,48.318,47.881,47.412,46.919,46.415,45.920,
-45.456,45.043,44.695,44.417,44.203,44.038,43.900,43.766,43.618,43.441,43.229,42.983,42.708,42.414,42.110,41.806,
-41.511,41.231,40.972,40.740,40.539,40.373,40.241,40.141,40.062,39.994,39.918,39.816,39.670,39.466,39.194,38.852,
-38.446,37.989,37.499,36.998,36.506,36.037,35.604,35.207,34.841,34.497,34.161,33.821,33.467,33.097,32.714,32.326,
-31.946,31.586,31.255,30.959,30.697,30.465,30.255,30.056,29.858,29.651,29.428,29.179,28.898,28.577,28.209,27.792,
-27.325,26.811,26.259,25.680,25.085,24.487,23.897,23.320,22.763,22.229,21.722,21.246,20.806,20.409,20.056,19.750,
-19.488,19.262,19.067,18.894,18.738,18.596,18.468,18.356,18.261,18.180,18.109,18.041,17.971,17.897,17.824,17.760,
-17.719,17.715,17.754,17.832,17.934,18.036,18.108,18.124,18.067,17.937,17.750,17.533,17.321,17.146,17.029,16.980,
-16.990,17.045,17.124,17.210,17.293,17.374,17.459,17.555,17.668,17.794,17.922,18.034,18.108,18.128,18.082,17.968,
-17.793,17.566,17.299,17.001,16.678,16.332,15.966,15.586,15.202,14.828,14.481,14.176,13.924,13.728,13.583,13.477,
-13.393,13.315,13.232,13.134,13.019,12.888,12.742,12.585,12.418,12.243,12.062,11.880,11.702,11.533,11.378,11.236,
-11.100,10.958,10.793,10.587,10.325,10.001,9.614,9.176,8.705,8.224,7.756,7.321,6.936,6.611,6.353,6.165,
-6.047,5.995,6.002,6.055,6.137,6.225,6.292,6.314,6.268,6.142,5.931,5.643,5.292,4.898,4.481,4.061,
-3.654,3.268,2.909,2.575,2.267,1.979,1.710,1.458,1.223,1.006,.813,.647,.512,.405,.318,.237,
-.139,-.004,-.216,-.514,-.900,-1.357,-1.854,-2.344,-2.780,-3.122,-3.345,-3.446,-3.447,-3.381,-3.290,-3.212,
--3.169,-3.170,-3.206,-3.261,-3.317,-3.363,-3.396,-3.428,-3.473,-3.549,-3.667,-3.833,-4.046,-4.304,-4.604,-4.949,
--5.348,-5.807,-6.332,-6.913,-7.528,-8.145,-8.720,-9.216,-9.608,-9.890,-10.078,-10.209,-10.325,-10.467,-10.662,-10.921,
--11.231,-11.571,-11.909,-12.224,-12.500,-12.739,-12.951,-13.153,-13.362,-13.588,-13.834,-14.098,-14.372,-14.650,-14.930,-15.210,
--15.492,-15.777,-16.059,-16.334,-16.590,-16.818,-17.014,-17.177,-17.314,-17.434,-17.547,-17.659,-17.770,-17.873,-17.960,-18.023,
--18.059,-18.069,-18.064,-18.053,-18.047,-18.048,-18.055,-18.060,-18.052,-18.027,-17.990,-17.954,-17.942,-17.978,-18.082,-18.263,
--18.511,-18.803,-19.106,-19.382,-19.600,-19.743,-19.807,-19.803,-19.750,-19.669,-19.579,-19.489,-19.404,-19.322,-19.243,-19.172,
--19.121,-19.103,-19.137,-19.236,-19.403,-19.632,-19.908,-20.206,-20.503,-20.781,-21.029,-21.247,-21.442,-21.624,-21.805,-21.990,
--22.179,-22.366,-22.539,-22.688,-22.804,-22.881,-22.918,-22.919,-22.890,-22.838,-22.770,-22.696,-22.625,-22.571,-22.546,-22.563,
--22.633,-22.759,-22.936,-23.150,-23.376,-23.588,-23.755,-23.854,-23.874,-23.816,-23.694,-23.538,-23.381,-23.257,-23.193,-23.207,
--23.298,-23.453,-23.647,-23.848,-24.024,-24.147,-24.200,-24.177,-24.085,-23.936,-23.751,-23.550,-23.352,-23.173,-23.025,-22.916,
--22.853,-22.838,-22.872,-22.948,-23.056,-23.178,-23.293,-23.374,-23.398,-23.347,-23.215,-23.008,-22.743,-22.450,-22.158,-21.895,
--21.680,-21.521,-21.412,-21.340,-21.286,-21.236,-21.176,-21.102,-21.016,-20.924,-20.828,-20.729,-20.622,-20.498,-20.344,-20.153,
--19.921,-19.655,-19.369,-19.081,-18.810,-18.570,-18.369,-18.202,-18.058,-17.922,-17.776,-17.611,-17.423,-17.216,-16.999,-16.785,
--16.585,-16.407,-16.255,-16.128,-16.025,-15.946,-15.893,-15.873,-15.894,-15.963,-16.082,-16.247,-16.447,-16.665,-16.879,-17.070,
--17.221,-17.319,-17.360,-17.345,-17.280,-17.174,-17.039,-16.886,-16.729,-16.580,-16.450,-16.347,-16.272,-16.225,-16.195,-16.171,
--16.141,-16.094,-16.026,-15.942,-15.853,-15.772,-15.715,-15.689,-15.698,-15.734,-15.786,-15.843,-15.894,-15.936,-15.972,-16.009,
--16.050,-16.091,-16.118,-16.106,-16.020,-15.826,-15.497,-15.019,-14.399,-13.659,-12.835,-11.966,-11.089,-10.226,-9.391,-8.584,
--7.802,-7.043,-6.314,-5.634,-5.028,-4.526,-4.156,-3.928,-3.839,-3.865,-3.970,-4.107,-4.233,-4.315,-4.333,-4.280,
--4.166,-4.005,-3.814,-3.605,-3.384,-3.154,-2.910,-2.650,-2.373,-2.083,-1.787,-1.495,-1.216,-.956,-.716,-.495,
--.283,-.072,.146,.377,.624,.886,1.160,1.441,1.724,2.008,2.292,2.577,2.864,3.154,3.447,3.739,
-4.024,4.295,4.542,4.756,4.933,5.070,5.171,5.242,5.294,5.339,5.387,5.446,5.521,5.613,5.724,5.853,
-6.002,6.174,6.370,6.591,6.832,7.084,7.334,7.569,7.780,7.963,8.126,8.286,8.463,8.672,8.917,9.183,
-9.433,9.614,9.667,9.538,9.199,8.656,7.953,7.169,6.403,5.755,5.308,5.108,5.159,5.420,5.823,6.282,
-6.720,7.078,7.327,7.470,7.531,7.549,7.558,7.583,7.632,7.699,7.766,7.816,7.838,7.830,7.804,7.781,
-7.781,7.822,7.908,8.035,8.187,8.341,8.476,8.577,8.638,8.664,8.669,8.669,8.683,8.723,8.793,8.891,
-9.007,9.132,9.254,9.369,9.475,9.574,9.673,9.775,9.883,9.996,10.109,10.215,10.309,10.384,10.440,10.475,
-10.493,10.496,10.489,10.472,10.447,10.415,10.379,10.339,10.298,10.256,10.212,10.162,10.100,10.020,9.919,9.797,
-9.660,9.520,9.387,9.275,9.189,9.125,9.073,9.015,8.932,8.808,8.637,8.422,8.177,7.920,7.673,7.451,
-7.262,7.106,6.979,6.873,6.780,6.700,6.631,6.576,6.534,6.499,6.458,6.395,6.297,6.155,5.972,5.760,
-5.543,5.347,5.193,5.095,5.052,5.051,5.071,5.093,5.100,5.087,5.058,5.022,4.990,4.969,4.955,4.939,
-4.910,4.854,4.768,4.657,4.535,4.420,4.331,4.278,4.263,4.278,4.306,4.333,4.347,4.344,4.327,4.306,
-4.289,4.282,4.285,4.290,4.288,4.268,4.225,4.158,4.074,3.983,3.896,3.823,3.768,3.734,3.721,3.732,
-3.767,3.829,3.916,4.023,4.139,4.245,4.321,4.350,4.322,4.242,4.125,3.997,3.889,3.829,3.832,3.902,
-4.029,4.196,4.378,4.560,4.729,4.883,5.026,5.165,5.305,5.444,5.578,5.699,5.799,5.877,5.934,5.981,
-6.029,6.089,6.167,6.264,6.374,6.489,6.598,6.696,6.780,6.853,6.919,6.982,7.044,7.106,7.168,7.229,
-7.291,7.357,7.434,7.524,7.629,7.742,7.853,7.947,8.011,8.037,8.026,7.986,7.937,7.899,7.893,7.932,
-8.022,8.158,8.326,8.511,8.695,8.867,9.016,9.137,9.231,9.297,9.340,9.367,9.385,9.409,9.449,9.520,
-9.627,9.772,9.944,10.126,10.295,10.429,10.514,10.545,10.530,10.489,10.447,10.429,10.452,10.524,10.640,10.787,
-10.945,11.097,11.227,11.330,11.402,11.448,11.470,11.470,11.449,11.404,11.334,11.240,11.127,11.001,10.871,10.746,
-10.631,10.528,10.433,10.341,10.246,10.145,10.038,9.928,9.823,9.727,9.645,9.577,9.521,9.471,9.419,9.360,
-9.291,9.211,9.123,9.030,8.938,8.847,8.759,8.671,8.577,8.469,8.340,8.181,7.986,7.754,7.484,7.182,
-6.855,6.514,6.172,5.840,5.528,5.244,4.991,4.770,4.578,4.410,4.257,4.109,3.953,3.774,3.557,3.287,
-2.954,2.551,2.080,1.552,.981,.390,-.202,-.775,-1.320,-1.833,-2.319,-2.787,-3.250,-3.719,-4.199,-4.691,
--5.190,-5.685,-6.167,-6.622,-7.045,-7.431,-7.781,-8.101,-8.400,-8.687,-8.972,-9.265,-9.572,-9.893,-10.230,-10.580,
--10.939,-11.307,-11.683,-12.071,-12.476,-12.903,-13.355,-13.829,-14.315,-14.799,-15.261,-15.680,-16.041,-16.333,-16.560,-16.732,
--16.869,-16.994,-17.129,-17.293,-17.492,-17.726,-17.985,-18.250,-18.501,-18.720,-18.892,-19.009,-19.075,-19.102,-19.110,-19.123,
--19.167,-19.263,-19.423,-19.651,-19.936,-20.259,-20.597,-20.928,-21.234,-21.511,-21.761,-21.999,-22.242,-22.507,-22.804,-23.134,
--23.491,-23.861,-24.231,-24.590,-24.935,-25.270,-25.604,-25.950,-26.317,-26.711,-27.131,-27.573,-28.030,-28.496,-28.967,-29.443,
--29.923,-30.407,-30.888,-31.356,-31.797,-32.195,-32.538,-32.823,-33.055,-33.249,-33.426,-33.609,-33.815,-34.057,-34.334,-34.640,
--34.959,-35.278,-35.584,-35.872,-36.142,-36.398,-36.645,-36.888,-37.130,-37.370,-37.603,-37.826,-38.037,-38.238,-38.433,-38.625,
--38.817,-39.009,-39.197,-39.374,-39.533,-39.668,-39.776,-39.859,-39.923,-39.974,-40.017,-40.052,-40.074,-40.075,-40.043,-39.971,
--39.854,-39.694,-39.500,-39.284,-39.061,-38.841,-38.632,-38.436,-38.253,-38.080,-37.913,-37.754,-37.606,-37.472,-37.357,-37.263,
--37.189,-37.130,-37.080,-37.034,-36.987,-36.937,-36.887,-36.837,-36.790,-36.743,-36.693,-36.632,-36.555,-36.456,-36.335,-36.196,
--36.046,-35.896,-35.753,-35.625,-35.513,-35.414,-35.324,-35.235,-35.142,-35.039,-34.923,-34.789,-34.638,-34.467,-34.280,-34.082,
--33.884,-33.701,-33.549,-33.439,-33.376,-33.354,-33.352,-33.342,-33.290,-33.169,-32.964,-32.679,-32.335,-31.970,-31.626,-31.338,
--31.126,-30.990,-30.908,-30.845,-30.761,-30.623,-30.411,-30.125,-29.780,-29.399,-29.006,-28.618,-28.240,-27.865,-27.479,-27.070,
--26.631,-26.166,-25.688,-25.216,-24.769,-24.358,-23.986,-23.642,-23.307,-22.959,-22.579,-22.157,-21.688,-21.181,-20.644,-20.090,
--19.527,-18.960,-18.386,-17.801,-17.200,-16.580,-15.942,-15.289,-14.628,-13.966,-13.309,-12.663,-12.033,-11.421,-10.830,-10.264,
--9.723,-9.208,-8.714,-8.234,-7.756,-7.262,-6.733,-6.146,-5.480,-4.718,-3.847,-2.869,-1.797,-.657,.505,1.635,
-2.670,3.552,4.236,4.705,4.970,5.084,5.128,5.206,5.425,5.876,6.617,7.657,8.957,10.432,11.968,13.445,
-14.760,15.843,16.668,17.257,17.664,17.963,18.225,18.506,18.833,19.210,19.618,20.035,20.444,20.844,21.254,21.707,
-22.238,22.871,23.610,24.429,25.278,26.091,26.802,27.357,27.728,27.920,27.965,27.916,27.833,27.768,27.762,27.835,
-27.987,28.211,28.493,28.823,29.198,29.625,30.111,30.667,31.295,31.991,32.745,33.538,34.354,35.178,36.003,36.825,
-37.647,38.471,39.296,40.116,40.918,41.686,42.400,43.048,43.622,44.126,44.571,44.977,45.363,45.748,46.143,46.548,
-46.955,47.346,47.700,47.993,48.206,48.327,48.348,48.272,48.108,47.871,47.579,47.252,46.911,46.579,46.274,46.016,
-45.819,45.696,45.651,45.687,45.804,45.998,46.266,46.607,47.021,47.507,48.063,48.685,49.363,50.082,50.821,51.561,
-52.283,52.973,53.624,54.234,54.804,55.335,55.824,56.261,56.634,56.925,57.124,57.227,57.246,57.205,57.143,57.103,
-57.123,57.233,57.443,57.745,58.110,58.501,58.875,59.197,59.441,59.600,59.682,59.706,59.701,59.698,59.724,59.801,
-59.942,60.154,60.435,60.777,61.166,61.584,62.009,62.419,62.793,63.117,63.380,63.582,63.733,63.847,63.943,64.040,
-64.155,64.295,64.463,64.653,64.854,65.053,65.236,65.394,65.523,65.623,65.697,65.754,65.802,65.850,65.906,65.975,
-66.063,66.170,66.297,66.439,66.589,66.736,66.864,66.958,67.004,66.992,66.920,66.797,66.642,66.479,66.332,66.222,
-66.155,66.125,66.108,66.071,65.977,65.800,65.525,65.162,64.738,64.295,63.877,63.523,63.251,63.058,62.923,62.808,
-62.672,62.481,62.218,61.881,61.486,61.059,60.627,60.214,59.834,59.489,59.171,58.869,58.572,58.269,57.956,57.633,
-57.302,56.968,56.636,56.311,55.996,55.695,55.409,55.136,54.871,54.607,54.333,54.042,53.731,53.406,53.078,52.771,
-52.504,52.299,52.162,52.091,52.066,52.061,52.043,51.990,51.885,51.731,51.543,51.344,51.159,51.006,50.894,50.815,
-50.754,50.688,50.595,50.742,50.577,50.369,50.122,49.844,49.538,49.203,48.836,48.428,47.976,47.482,46.956,46.419,
-45.899,45.424,45.020,44.700,44.462,44.292,44.160,44.032,43.877,43.671,43.404,43.081,42.718,42.342,41.977,41.645,
-41.359,41.121,40.927,40.765,40.628,40.508,40.401,40.310,40.232,40.167,40.105,40.031,39.928,39.775,39.558,39.269,
-38.911,38.496,38.045,37.580,37.123,36.689,36.283,35.902,35.536,35.171,34.793,34.390,33.958,33.501,33.027,32.550,
-32.086,31.650,31.252,30.898,30.590,30.324,30.091,29.882,29.686,29.489,29.282,29.054,28.796,28.499,28.158,27.769,
-27.329,26.840,26.307,25.736,25.138,24.522,23.898,23.275,22.663,22.068,21.500,20.966,20.474,20.031,19.642,19.307,
-19.025,18.790,18.595,18.431,18.292,18.175,18.080,18.008,17.959,17.929,17.912,17.897,17.872,17.826,17.757,17.670,
-17.582,17.512,17.485,17.514,17.604,17.741,17.898,18.039,18.125,18.128,18.034,17.852,17.607,17.337,17.085,16.886,
-16.762,16.720,16.748,16.829,16.938,17.056,17.170,17.275,17.373,17.469,17.566,17.662,17.754,17.833,17.888,17.911,
-17.897,17.840,17.739,17.591,17.392,17.141,16.834,16.476,16.073,15.640,15.195,14.758,14.349,13.981,13.661,13.389,
-13.161,12.971,12.810,12.673,12.556,12.454,12.361,12.269,12.166,12.040,11.880,11.682,11.446,11.182,10.903,10.625,
-10.360,10.117,9.894,9.686,9.479,9.264,9.030,8.775,8.502,8.215,7.926,7.642,7.371,7.116,6.882,6.672,
-6.491,6.346,6.243,6.189,6.183,6.218,6.279,6.346,6.391,6.391,6.325,6.179,5.952,5.650,5.285,4.875,
-4.439,3.995,3.559,3.140,2.747,2.384,2.049,1.741,1.455,1.188,.938,.707,.501,.327,.190,.091,
-.019,-.048,-.138,-.286,-.520,-.852,-1.275,-1.758,-2.251,-2.695,-3.033,-3.226,-3.259,-3.147,-2.927,-2.654,
--2.379,-2.148,-1.987,-1.905,-1.896,-1.949,-2.055,-2.210,-2.419,-2.688,-3.021,-3.417,-3.864,-4.343,-4.835,-5.325,
--5.809,-6.291,-6.784,-7.298,-7.837,-8.389,-8.928,-9.421,-9.835,-10.149,-10.363,-10.497,-10.589,-10.685,-10.826,-11.035,
--11.314,-11.645,-11.995,-12.328,-12.619,-12.856,-13.045,-13.207,-13.366,-13.543,-13.751,-13.990,-14.251,-14.522,-14.791,-15.053,
--15.310,-15.568,-15.832,-16.102,-16.373,-16.633,-16.868,-17.067,-17.227,-17.353,-17.459,-17.561,-17.672,-17.800,-17.942,-18.089,
--18.228,-18.348,-18.442,-18.511,-18.560,-18.596,-18.625,-18.646,-18.653,-18.639,-18.600,-18.540,-18.472,-18.422,-18.417,-18.482,
--18.633,-18.867,-19.162,-19.484,-19.790,-20.041,-20.207,-20.280,-20.266,-20.186,-20.070,-19.945,-19.833,-19.744,-19.680,-19.637,
--19.610,-19.598,-19.607,-19.644,-19.724,-19.854,-20.040,-20.276,-20.553,-20.853,-21.157,-21.450,-21.721,-21.964,-22.177,-22.363,
--22.525,-22.665,-22.783,-22.878,-22.948,-22.992,-23.008,-22.996,-22.957,-22.893,-22.808,-22.708,-22.603,-22.505,-22.433,-22.406,
--22.441,-22.551,-22.741,-23.003,-23.317,-23.654,-23.977,-24.251,-24.447,-24.549,-24.554,-24.477,-24.346,-24.197,-24.066,-23.983,
--23.968,-24.027,-24.148,-24.309,-24.480,-24.630,-24.730,-24.762,-24.716,-24.595,-24.413,-24.187,-23.941,-23.695,-23.469,-23.282,
--23.148,-23.077,-23.077,-23.150,-23.289,-23.480,-23.700,-23.917,-24.096,-24.206,-24.220,-24.126,-23.929,-23.647,-23.310,-22.956,
--22.617,-22.320,-22.078,-21.893,-21.755,-21.651,-21.566,-21.489,-21.415,-21.344,-21.278,-21.216,-21.157,-21.091,-21.008,-20.893,
--20.738,-20.541,-20.307,-20.049,-19.783,-19.528,-19.296,-19.091,-18.913,-18.750,-18.592,-18.426,-18.245,-18.049,-17.843,-17.633,
--17.430,-17.239,-17.064,-16.905,-16.761,-16.633,-16.525,-16.447,-16.411,-16.428,-16.507,-16.648,-16.840,-17.066,-17.301,-17.519,
--17.699,-17.827,-17.897,-17.911,-17.879,-17.810,-17.714,-17.600,-17.472,-17.337,-17.200,-17.068,-16.951,-16.853,-16.780,-16.729,
--16.694,-16.666,-16.636,-16.596,-16.546,-16.489,-16.436,-16.396,-16.376,-16.380,-16.402,-16.435,-16.470,-16.501,-16.527,-16.553,
--16.584,-16.625,-16.670,-16.701,-16.690,-16.603,-16.402,-16.060,-15.567,-14.929,-14.171,-13.331,-12.447,-11.555,-10.678,-9.825,
--8.998,-8.192,-7.406,-6.649,-5.939,-5.303,-4.769,-4.360,-4.085,-3.937,-3.892,-3.914,-3.963,-4.003,-4.006,-3.960,
--3.864,-3.725,-3.555,-3.364,-3.156,-2.933,-2.690,-2.426,-2.140,-1.838,-1.528,-1.224,-.937,-.673,-.435,-.217,
--.009,.200,.421,.659,.914,1.182,1.451,1.712,1.954,2.173,2.368,2.545,2.712,2.881,3.064,3.269,
-3.501,3.761,4.042,4.334,4.625,4.901,5.149,5.360,5.533,5.667,5.770,5.851,5.924,6.001,6.095,6.217,
-6.376,6.580,6.829,7.118,7.434,7.756,8.058,8.312,8.495,8.595,8.618,8.589,8.546,8.537,8.603,8.765,
-9.020,9.331,9.634,9.851,9.908,9.753,9.371,8.790,8.080,7.336,6.663,6.148,5.850,5.783,5.923,6.213,
-6.581,6.954,7.279,7.523,7.681,7.768,7.808,7.827,7.846,7.875,7.913,7.956,7.998,8.035,8.069,8.106,
-8.155,8.222,8.310,8.415,8.529,8.642,8.742,8.822,8.879,8.916,8.939,8.958,8.981,9.013,9.057,9.110,
-9.165,9.217,9.263,9.304,9.343,9.392,9.461,9.559,9.692,9.857,10.044,10.238,10.420,10.574,10.688,10.758,
-10.787,10.785,10.764,10.738,10.715,10.698,10.687,10.676,10.658,10.629,10.583,10.516,10.426,10.311,10.171,10.009,
-9.830,9.646,9.470,9.319,9.205,9.131,9.093,9.072,9.042,8.975,8.848,8.650,8.388,8.082,7.766,7.476,
-7.241,7.077,6.982,6.942,6.932,6.927,6.909,6.868,6.805,6.729,6.644,6.554,6.454,6.334,6.184,5.998,
-5.779,5.544,5.313,5.114,4.966,4.879,4.849,4.863,4.898,4.934,4.957,4.962,4.953,4.937,4.923,4.913,
-4.904,4.887,4.852,4.792,4.707,4.607,4.504,4.414,4.350,4.318,4.315,4.334,4.365,4.398,4.427,4.452,
-4.476,4.499,4.524,4.545,4.558,4.557,4.537,4.502,4.455,4.406,4.359,4.317,4.277,4.231,4.172,4.096,
-4.008,3.921,3.854,3.827,3.851,3.929,4.044,4.173,4.283,4.349,4.355,4.305,4.217,4.122,4.053,4.039,
-4.091,4.210,4.379,4.577,4.780,4.972,5.147,5.305,5.454,5.601,5.748,5.894,6.029,6.146,6.237,6.303,
-6.349,6.387,6.429,6.487,6.565,6.663,6.773,6.886,6.994,7.090,7.174,7.249,7.320,7.394,7.473,7.561,
-7.657,7.760,7.868,7.978,8.086,8.186,8.272,8.336,8.371,8.375,8.350,8.304,8.253,8.214,8.204,8.234,
-8.309,8.428,8.580,8.752,8.931,9.104,9.264,9.404,9.522,9.614,9.678,9.713,9.723,9.713,9.698,9.693,
-9.716,9.781,9.892,10.044,10.221,10.399,10.552,10.660,10.716,10.723,10.697,10.662,10.641,10.655,10.711,10.806,
-10.930,11.066,11.199,11.317,11.418,11.503,11.575,11.641,11.699,11.748,11.781,11.792,11.774,11.728,11.657,11.570,
-11.474,11.377,11.283,11.190,11.095,10.992,10.876,10.747,10.608,10.467,10.334,10.219,10.128,10.065,10.026,10.006,
-9.994,9.979,9.953,9.909,9.846,9.765,9.670,9.567,9.462,9.356,9.249,9.137,9.012,8.867,8.693,8.486,
-8.246,7.975,7.682,7.379,7.080,6.796,6.540,6.321,6.145,6.013,5.922,5.863,5.821,5.773,5.695,5.560,
-5.345,5.034,4.627,4.132,3.575,2.985,2.395,1.831,1.309,.828,.378,-.065,-.524,-1.019,-1.566,-2.165,
--2.812,-3.493,-4.193,-4.899,-5.597,-6.276,-6.927,-7.540,-8.104,-8.608,-9.046,-9.415,-9.721,-9.978,-10.204,-10.423,
--10.653,-10.912,-11.207,-11.543,-11.917,-12.324,-12.759,-13.216,-13.687,-14.162,-14.627,-15.065,-15.457,-15.788,-16.048,-16.241,
--16.381,-16.493,-16.608,-16.756,-16.960,-17.228,-17.555,-17.919,-18.290,-18.635,-18.926,-19.144,-19.285,-19.361,-19.395,-19.417,
--19.459,-19.546,-19.694,-19.905,-20.170,-20.470,-20.782,-21.084,-21.362,-21.610,-21.835,-22.052,-22.279,-22.533,-22.825,-23.157,
--23.523,-23.907,-24.296,-24.675,-25.037,-25.382,-25.716,-26.048,-26.387,-26.738,-27.102,-27.477,-27.863,-28.258,-28.667,-29.097,
--29.555,-30.048,-30.571,-31.113,-31.651,-32.157,-32.605,-32.973,-33.253,-33.452,-33.590,-33.699,-33.810,-33.951,-34.141,-34.383,
--34.671,-34.988,-35.317,-35.641,-35.951,-36.244,-36.523,-36.796,-37.068,-37.343,-37.619,-37.894,-38.162,-38.419,-38.661,-38.890,
--39.106,-39.314,-39.512,-39.699,-39.871,-40.023,-40.150,-40.251,-40.328,-40.389,-40.441,-40.490,-40.537,-40.580,-40.610,-40.616,
--40.586,-40.513,-40.396,-40.241,-40.057,-39.859,-39.659,-39.464,-39.276,-39.092,-38.908,-38.717,-38.518,-38.314,-38.113,-37.924,
--37.757,-37.619,-37.511,-37.430,-37.368,-37.318,-37.271,-37.222,-37.168,-37.109,-37.047,-36.983,-36.916,-36.846,-36.772,-36.693,
--36.610,-36.524,-36.438,-36.352,-36.267,-36.180,-36.088,-35.984,-35.865,-35.726,-35.566,-35.383,-35.177,-34.949,-34.701,-34.437,
--34.168,-33.908,-33.674,-33.487,-33.365,-33.315,-33.333,-33.397,-33.473,-33.519,-33.497,-33.380,-33.163,-32.861,-32.513,-32.166,
--31.865,-31.642,-31.505,-31.438,-31.403,-31.352,-31.239,-31.034,-30.726,-30.327,-29.865,-29.375,-28.889,-28.429,-28.001,-27.597,
--27.203,-26.805,-26.393,-25.966,-25.533,-25.105,-24.692,-24.299,-23.923,-23.550,-23.166,-22.754,-22.304,-21.813,-21.287,-20.737,
--20.175,-19.613,-19.053,-18.495,-17.931,-17.349,-16.741,-16.101,-15.430,-14.733,-14.022,-13.308,-12.604,-11.918,-11.258,-10.627,
--10.025,-9.456,-8.923,-8.430,-7.980,-7.574,-7.203,-6.850,-6.486,-6.074,-5.574,-4.948,-4.175,-3.254,-2.207,-1.086,
-.041,1.096,2.009,2.730,3.243,3.568,3.767,3.928,4.153,4.541,5.167,6.072,7.248,8.645,10.177,11.736,
-13.211,14.510,15.571,16.375,16.941,17.323,17.593,17.823,18.074,18.382,18.753,19.174,19.616,20.051,20.467,20.869,
-21.285,21.754,22.314,22.989,23.777,24.644,25.530,26.358,27.053,27.555,27.838,27.911,27.816,27.619,27.396,27.216,
-27.131,27.171,27.341,27.632,28.028,28.511,29.070,29.699,30.396,31.162,31.988,32.862,33.765,34.674,35.569,36.436,
-37.271,38.080,38.872,39.658,40.446,41.234,42.012,42.764,43.473,44.122,44.706,45.226,45.696,46.131,46.547,46.955,
-47.356,47.741,48.093,48.391,48.614,48.747,48.782,48.718,48.560,48.315,47.992,47.602,47.158,46.675,46.176,45.692,
-45.259,44.913,44.687,44.605,44.676,44.894,45.240,45.687,46.211,46.789,47.408,48.065,48.762,49.501,50.279,51.086,
-51.903,52.704,53.462,54.155,54.766,55.289,55.725,56.079,56.355,56.556,56.683,56.737,56.724,56.658,56.561,56.467,
-56.411,56.427,56.538,56.750,57.053,57.419,57.810,58.188,58.518,58.780,58.969,59.094,59.174,59.238,59.313,59.424,
-59.589,59.821,60.122,60.490,60.914,61.376,61.855,62.326,62.763,63.144,63.457,63.697,63.873,64.003,64.107,64.209,
-64.327,64.471,64.640,64.826,65.015,65.192,65.346,65.471,65.569,65.646,65.715,65.783,65.859,65.947,66.046,66.153,
-66.263,66.374,66.485,66.599,66.717,66.841,66.968,67.090,67.192,67.258,67.272,67.224,67.113,66.952,66.762,66.574,
-66.416,66.306,66.250,66.232,66.221,66.178,66.065,65.854,65.540,65.138,64.684,64.224,63.800,63.446,63.174,62.972,
-62.817,62.672,62.505,62.295,62.031,61.717,61.367,60.994,60.610,60.222,59.829,59.431,59.029,58.627,58.238,57.875,
-57.549,57.266,57.021,56.803,56.592,56.370,56.121,55.836,55.517,55.173,54.816,54.458,54.111,53.784,53.481,53.207,
-52.964,52.756,52.585,52.448,52.339,52.247,52.160,52.063,51.949,51.814,51.665,51.511,51.369,51.247,51.152,51.080,
-51.019,50.953,50.866,50.742,50.804,50.576,50.306,50.002,49.669,49.312,48.932,48.528,48.096,47.635,47.149,46.648,
-46.149,45.675,45.248,44.887,44.601,44.386,44.224,44.086,43.936,43.745,43.489,43.164,42.783,42.371,41.964,41.595,
-41.290,41.059,40.899,40.791,40.714,40.646,40.572,40.490,40.404,40.321,40.247,40.180,40.107,40.007,39.857,39.635,
-39.329,38.944,38.494,38.007,37.513,37.037,36.594,36.186,35.803,35.426,35.036,34.615,34.155,33.661,33.146,32.628,
-32.129,31.670,31.263,30.912,30.617,30.366,30.148,29.946,29.746,29.536,29.307,29.052,28.766,28.448,28.097,27.710,
-27.286,26.824,26.323,25.783,25.206,24.599,23.969,23.325,22.680,22.047,21.437,20.862,20.332,19.852,19.428,19.060,
-18.747,18.485,18.270,18.095,17.957,17.852,17.776,17.728,17.704,17.702,17.713,17.728,17.735,17.724,17.686,17.622,
-17.541,17.458,17.396,17.377,17.417,17.521,17.678,17.862,18.036,18.161,18.202,18.138,17.970,17.717,17.416,17.109,
-16.842,16.646,16.540,16.521,16.576,16.679,16.803,16.924,17.028,17.107,17.164,17.204,17.237,17.270,17.309,17.355,
-17.406,17.454,17.490,17.500,17.469,17.382,17.225,16.993,16.686,16.314,15.895,15.450,15.003,14.574,14.177,13.818,
-13.497,13.212,12.959,12.736,12.542,12.378,12.241,12.126,12.019,11.905,11.763,11.579,11.342,11.052,10.720,10.365,
-10.008,9.670,9.367,9.105,8.882,8.689,8.514,8.348,8.185,8.022,7.861,7.708,7.565,7.432,7.306,7.184,
-7.061,6.936,6.812,6.694,6.593,6.516,6.468,6.449,6.452,6.462,6.462,6.433,6.356,6.218,6.009,5.728,
-5.378,4.968,4.514,4.032,3.543,3.066,2.617,2.207,1.839,1.509,1.212,.937,.680,.441,.224,.040,
--.103,-.206,-.280,-.348,-.445,-.605,-.851,-1.189,-1.598,-2.033,-2.436,-2.743,-2.903,-2.892,-2.717,-2.415,
--2.044,-1.672,-1.359,-1.149,-1.065,-1.108,-1.268,-1.526,-1.867,-2.278,-2.746,-3.262,-3.810,-4.372,-4.925,-5.452,
--5.945,-6.406,-6.851,-7.299,-7.771,-8.275,-8.801,-9.325,-9.810,-10.221,-10.534,-10.747,-10.880,-10.971,-11.068,-11.211,
--11.423,-11.706,-12.036,-12.378,-12.695,-12.959,-13.160,-13.306,-13.421,-13.534,-13.671,-13.845,-14.057,-14.298,-14.553,-14.809,
--15.061,-15.309,-15.562,-15.826,-16.102,-16.384,-16.659,-16.912,-17.129,-17.306,-17.449,-17.573,-17.698,-17.842,-18.016,-18.218,
--18.438,-18.658,-18.859,-19.025,-19.152,-19.238,-19.291,-19.316,-19.320,-19.301,-19.257,-19.187,-19.095,-18.993,-18.904,-18.854,
--18.871,-18.971,-19.157,-19.415,-19.713,-20.013,-20.274,-20.463,-20.565,-20.580,-20.525,-20.428,-20.318,-20.219,-20.146,-20.106,
--20.095,-20.106,-20.135,-20.179,-20.243,-20.336,-20.466,-20.640,-20.859,-21.118,-21.404,-21.703,-21.998,-22.274,-22.519,-22.729,
--22.899,-23.030,-23.125,-23.186,-23.219,-23.225,-23.208,-23.172,-23.117,-23.046,-22.960,-22.862,-22.756,-22.651,-22.560,-22.501,
--22.492,-22.552,-22.692,-22.915,-23.214,-23.567,-23.946,-24.314,-24.639,-24.892,-25.058,-25.134,-25.130,-25.066,-24.972,-24.875,
--24.801,-24.766,-24.777,-24.830,-24.911,-25.003,-25.082,-25.128,-25.127,-25.070,-24.958,-24.797,-24.601,-24.389,-24.180,-23.995,
--23.850,-23.763,-23.744,-23.798,-23.926,-24.119,-24.358,-24.618,-24.867,-25.071,-25.200,-25.229,-25.148,-24.959,-24.679,-24.335,
--23.958,-23.579,-23.225,-22.911,-22.647,-22.433,-22.264,-22.135,-22.040,-21.974,-21.932,-21.909,-21.897,-21.884,-21.855,-21.797,
--21.697,-21.550,-21.359,-21.131,-20.881,-20.624,-20.375,-20.142,-19.927,-19.727,-19.534,-19.339,-19.136,-18.925,-18.707,-18.490,
--18.281,-18.086,-17.906,-17.741,-17.586,-17.439,-17.301,-17.179,-17.084,-17.032,-17.037,-17.105,-17.235,-17.414,-17.620,-17.826,
--18.006,-18.140,-18.218,-18.243,-18.224,-18.174,-18.108,-18.032,-17.951,-17.862,-17.762,-17.647,-17.522,-17.393,-17.272,-17.168,
--17.091,-17.042,-17.018,-17.009,-17.007,-17.005,-16.998,-16.989,-16.981,-16.977,-16.979,-16.986,-16.995,-17.001,-17.003,-17.005,
--17.012,-17.029,-17.059,-17.092,-17.111,-17.085,-16.978,-16.756,-16.393,-15.879,-15.223,-14.449,-13.592,-12.691,-11.779,-10.879,
--10.005,-9.161,-8.350,-7.575,-6.848,-6.186,-5.607,-5.131,-4.765,-4.505,-4.335,-4.225,-4.145,-4.064,-3.960,-3.823,
--3.655,-3.462,-3.254,-3.037,-2.813,-2.575,-2.315,-2.025,-1.704,-1.358,-1.003,-.657,-.341,-.070,.152,.330,
-.480,.622,.778,.963,1.184,1.439,1.718,2.002,2.274,2.517,2.720,2.879,2.998,3.086,3.158,3.231,
-3.325,3.454,3.630,3.857,4.132,4.444,4.774,5.100,5.402,5.660,5.865,6.013,6.112,6.176,6.226,6.285,
-6.376,6.518,6.723,6.998,7.335,7.718,8.119,8.503,8.831,9.070,9.201,9.220,9.148,9.025,8.902,8.831,
-8.850,8.973,9.185,9.440,9.672,9.812,9.804,9.617,9.259,8.769,8.215,7.674,7.218,6.899,6.740,6.735,
-6.852,7.049,7.280,7.506,7.702,7.856,7.968,8.044,8.092,8.122,8.141,8.157,8.176,8.206,8.254,8.323,
-8.414,8.523,8.641,8.757,8.861,8.944,9.005,9.049,9.082,9.116,9.159,9.217,9.289,9.369,9.450,9.521,
-9.572,9.597,9.597,9.576,9.546,9.522,9.522,9.563,9.655,9.801,9.994,10.219,10.450,10.663,10.834,10.949,
-11.004,11.006,10.972,10.922,10.875,10.842,10.827,10.823,10.821,10.809,10.778,10.723,10.646,10.548,10.434,10.305,
-10.163,10.008,9.844,9.677,9.517,9.376,9.263,9.176,9.107,9.036,8.938,8.792,8.587,8.326,8.031,7.736,
-7.476,7.281,7.164,7.116,7.113,7.119,7.102,7.039,6.927,6.780,6.622,6.478,6.365,6.284,6.219,6.143,
-6.031,5.867,5.651,5.400,5.147,4.925,4.764,4.677,4.661,4.696,4.756,4.817,4.859,4.878,4.875,4.861,
-4.845,4.829,4.812,4.787,4.744,4.680,4.596,4.503,4.414,4.343,4.303,4.298,4.325,4.378,4.447,4.522,
-4.597,4.665,4.724,4.769,4.797,4.804,4.789,4.756,4.712,4.666,4.628,4.605,4.594,4.587,4.570,4.526,
-4.446,4.332,4.197,4.065,3.963,3.913,3.928,4.002,4.115,4.238,4.339,4.398,4.407,4.377,4.331,4.299,
-4.308,4.374,4.501,4.676,4.882,5.097,5.304,5.496,5.672,5.837,5.998,6.156,6.309,6.448,6.565,6.652,
-6.706,6.736,6.752,6.771,6.806,6.869,6.959,7.073,7.198,7.325,7.443,7.547,7.640,7.727,7.815,7.913,
-8.024,8.151,8.289,8.430,8.565,8.680,8.767,8.818,8.828,8.801,8.743,8.669,8.595,8.539,8.517,8.536,
-8.599,8.699,8.825,8.963,9.101,9.228,9.343,9.448,9.545,9.637,9.726,9.806,9.873,9.922,9.952,9.969,
-9.983,10.008,10.059,10.142,10.257,10.393,10.533,10.657,10.748,10.799,10.812,10.800,10.782,10.779,10.803,10.859,
-10.945,11.048,11.153,11.249,11.331,11.398,11.459,11.522,11.598,11.688,11.790,11.895,11.991,12.065,12.110,12.125,
-12.111,12.076,12.029,11.973,11.911,11.839,11.750,11.639,11.502,11.343,11.171,11.001,10.850,10.738,10.675,10.667,
-10.708,10.784,10.874,10.954,11.002,11.002,10.945,10.834,10.679,10.495,10.299,10.104,9.920,9.751,9.595,9.446,
-9.297,9.141,8.972,8.787,8.587,8.373,8.148,7.919,7.694,7.483,7.297,7.146,7.032,6.950,6.886,6.812,
-6.699,6.516,6.242,5.871,5.413,4.897,4.359,3.837,3.362,2.946,2.582,2.246,1.904,1.521,1.069,.533,
--.088,-.783,-1.539,-2.342,-3.180,-4.046,-4.934,-5.832,-6.719,-7.569,-8.346,-9.019,-9.565,-9.977,-10.265,-10.459,
--10.599,-10.726,-10.877,-11.078,-11.337,-11.656,-12.024,-12.430,-12.860,-13.302,-13.744,-14.174,-14.575,-14.931,-15.229,-15.461,
--15.633,-15.762,-15.878,-16.017,-16.214,-16.492,-16.858,-17.300,-17.786,-18.275,-18.724,-19.099,-19.380,-19.568,-19.681,-19.750,
--19.812,-19.900,-20.035,-20.225,-20.466,-20.738,-21.019,-21.287,-21.530,-21.744,-21.937,-22.127,-22.335,-22.579,-22.871,-23.210,
--23.587,-23.986,-24.387,-24.774,-25.140,-25.485,-25.817,-26.145,-26.480,-26.826,-27.182,-27.542,-27.900,-28.251,-28.599,-28.956,
--29.337,-29.758,-30.231,-30.754,-31.311,-31.874,-32.407,-32.875,-33.250,-33.521,-33.695,-33.798,-33.864,-33.934,-34.040,-34.208,
--34.444,-34.743,-35.086,-35.452,-35.819,-36.171,-36.501,-36.809,-37.102,-37.390,-37.681,-37.979,-38.283,-38.589,-38.890,-39.178,
--39.447,-39.693,-39.917,-40.120,-40.302,-40.466,-40.611,-40.736,-40.841,-40.927,-40.994,-41.048,-41.090,-41.124,-41.148,-41.161,
--41.155,-41.126,-41.066,-40.974,-40.852,-40.705,-40.542,-40.370,-40.193,-40.013,-39.827,-39.631,-39.419,-39.192,-38.953,-38.713,
--38.484,-38.279,-38.108,-37.976,-37.880,-37.812,-37.758,-37.708,-37.650,-37.580,-37.498,-37.408,-37.315,-37.228,-37.150,-37.083,
--37.028,-36.983,-36.945,-36.909,-36.871,-36.825,-36.767,-36.690,-36.589,-36.459,-36.296,-36.099,-35.866,-35.600,-35.300,-34.972,
--34.623,-34.265,-33.915,-33.596,-33.332,-33.147,-33.054,-33.053,-33.129,-33.246,-33.363,-33.433,-33.421,-33.309,-33.105,-32.836,
--32.546,-32.283,-32.081,-31.957,-31.898,-31.871,-31.827,-31.717,-31.504,-31.172,-30.731,-30.212,-29.657,-29.111,-28.607,-28.161,
--27.773,-27.426,-27.098,-26.769,-26.423,-26.055,-25.669,-25.270,-24.864,-24.454,-24.035,-23.598,-23.133,-22.633,-22.097,-21.530,
--20.943,-20.351,-19.764,-19.191,-18.630,-18.074,-17.509,-16.922,-16.301,-15.640,-14.941,-14.214,-13.472,-12.727,-11.991,-11.271,
--10.569,-9.886,-9.222,-8.585,-7.986,-7.444,-6.974,-6.585,-6.275,-6.022,-5.786,-5.517,-5.160,-4.673,-4.032,-3.246,
--2.351,-1.407,-.485,.353,1.061,1.630,2.083,2.477,2.885,3.390,4.059,4.937,6.037,7.337,8.783,10.301,
-11.805,13.210,14.444,15.459,16.237,16.790,17.157,17.398,17.583,17.773,18.016,18.334,18.725,19.165,19.623,20.071,
-20.498,20.913,21.346,21.841,22.436,23.152,23.980,24.877,25.775,26.590,27.242,27.678,27.877,27.863,27.692,27.442,
-27.195,27.024,26.976,27.072,27.312,27.680,28.155,28.722,29.372,30.104,30.920,31.815,32.779,33.789,34.816,35.826,
-36.792,37.697,38.537,39.322,40.070,40.800,41.527,42.261,42.997,43.727,44.436,45.113,45.749,46.341,46.891,47.402,
-47.873,48.300,48.673,48.978,49.201,49.332,49.365,49.301,49.146,48.905,48.585,48.191,47.725,47.197,46.622,46.030,
-45.461,44.963,44.589,44.381,44.363,44.539,44.886,45.364,45.926,46.527,47.137,47.744,48.357,48.996,49.683,50.432,
-51.239,52.084,52.927,53.724,54.430,55.015,55.463,55.777,55.972,56.073,56.101,56.078,56.018,55.934,55.838,55.747,
-55.682,55.668,55.725,55.869,56.101,56.410,56.771,57.154,57.526,57.863,58.152,58.392,58.595,58.779,58.965,59.175,
-59.422,59.715,60.057,60.443,60.867,61.317,61.775,62.225,62.647,63.022,63.338,63.591,63.786,63.938,64.068,64.197,
-64.343,64.517,64.717,64.932,65.146,65.341,65.505,65.631,65.723,65.792,65.854,65.922,66.007,66.114,66.239,66.374,
-66.509,66.634,66.743,66.835,66.912,66.981,67.047,67.115,67.182,67.243,67.284,67.294,67.258,67.173,67.042,66.878,
-66.703,66.542,66.415,66.329,66.280,66.243,66.186,66.074,65.880,65.590,65.216,64.785,64.338,63.918,63.558,63.276,
-63.069,62.917,62.790,62.658,62.496,62.288,62.031,61.727,61.378,60.989,60.561,60.093,59.593,59.074,58.558,58.074,
-57.650,57.307,57.047,56.860,56.716,56.576,56.403,56.171,55.868,55.504,55.100,54.690,54.303,53.964,53.683,53.458,
-53.278,53.126,52.985,52.844,52.695,52.537,52.373,52.207,52.046,51.894,51.758,51.639,51.542,51.465,51.403,51.351,
-51.296,51.225,51.125,50.987,50.804,50.668,50.380,50.053,49.689,49.292,48.869,48.424,47.965,47.497,47.026,46.555,
-46.090,45.637,45.206,44.808,44.455,44.156,43.914,43.723,43.565,43.417,43.253,43.049,42.795,42.493,42.161,41.827,
-41.521,41.265,41.072,40.939,40.850,40.783,40.720,40.649,40.571,40.494,40.429,40.384,40.354,40.318,40.247,40.107,
-39.867,39.512,39.048,38.500,37.904,37.303,36.733,36.216,35.756,35.338,34.938,34.530,34.093,33.616,33.105,32.578,
-32.060,31.577,31.152,30.798,30.516,30.299,30.129,29.983,29.836,29.670,29.466,29.215,28.916,28.570,28.184,27.767,
-27.324,26.860,26.373,25.862,25.321,24.747,24.142,23.509,22.861,22.212,21.579,20.980,20.427,19.928,19.485,19.098,
-18.763,18.476,18.233,18.034,17.879,17.767,17.696,17.662,17.656,17.668,17.688,17.703,17.706,17.691,17.655,17.602,
-17.537,17.471,17.416,17.387,17.397,17.453,17.557,17.699,17.859,18.011,18.123,18.163,18.112,17.964,17.730,17.436,
-17.121,16.826,16.589,16.432,16.365,16.379,16.453,16.558,16.667,16.755,16.810,16.828,16.816,16.786,16.753,16.732,
-16.733,16.761,16.814,16.880,16.942,16.978,16.967,16.889,16.733,16.496,16.189,15.830,15.444,15.055,14.684,14.344,
-14.038,13.765,13.517,13.286,13.068,12.862,12.667,12.484,12.310,12.139,11.958,11.752,11.511,11.226,10.900,10.542,
-10.171,9.806,9.466,9.165,8.907,8.688,8.501,8.333,8.176,8.026,7.886,7.759,7.654,7.575,7.521,7.488,
-7.462,7.430,7.379,7.299,7.189,7.053,6.903,6.754,6.620,6.511,6.432,6.379,6.341,6.300,6.235,6.125,
-5.949,5.697,5.361,4.948,4.472,3.956,3.426,2.909,2.428,1.995,1.613,1.277,.975,.697,.437,.197,
--.015,-.188,-.317,-.405,-.472,-.549,-.670,-.867,-1.151,-1.511,-1.907,-2.281,-2.568,-2.711,-2.682,-2.483,
--2.152,-1.754,-1.368,-1.066,-.902,-.904,-1.073,-1.388,-1.816,-2.320,-2.867,-3.431,-3.993,-4.537,-5.051,-5.529,
--5.967,-6.373,-6.761,-7.154,-7.576,-8.043,-8.558,-9.106,-9.657,-10.168,-10.601,-10.931,-11.155,-11.291,-11.379,-11.466,
--11.592,-11.782,-12.037,-12.338,-12.650,-12.938,-13.174,-13.346,-13.462,-13.545,-13.623,-13.723,-13.861,-14.042,-14.259,-14.501,
--14.755,-15.015,-15.279,-15.551,-15.832,-16.124,-16.421,-16.712,-16.986,-17.233,-17.451,-17.648,-17.837,-18.035,-18.255,-18.503,
--18.773,-19.049,-19.310,-19.534,-19.705,-19.816,-19.870,-19.878,-19.852,-19.807,-19.748,-19.678,-19.599,-19.510,-19.418,-19.335,
--19.280,-19.271,-19.326,-19.451,-19.641,-19.878,-20.136,-20.381,-20.586,-20.730,-20.806,-20.819,-20.783,-20.719,-20.647,-20.585,
--20.543,-20.527,-20.538,-20.577,-20.645,-20.745,-20.879,-21.051,-21.260,-21.501,-21.766,-22.042,-22.316,-22.575,-22.807,-23.006,
--23.170,-23.299,-23.394,-23.460,-23.500,-23.517,-23.515,-23.497,-23.463,-23.417,-23.356,-23.283,-23.198,-23.104,-23.009,-22.925,
--22.868,-22.857,-22.909,-23.035,-23.241,-23.519,-23.852,-24.216,-24.581,-24.919,-25.209,-25.434,-25.591,-25.682,-25.717,-25.710,
--25.676,-25.629,-25.580,-25.538,-25.509,-25.492,-25.486,-25.483,-25.476,-25.456,-25.415,-25.348,-25.257,-25.149,-25.036,-24.933,
--24.856,-24.822,-24.840,-24.916,-25.049,-25.229,-25.440,-25.664,-25.875,-26.051,-26.171,-26.219,-26.184,-26.066,-25.870,-25.611,
--25.304,-24.969,-24.623,-24.281,-23.958,-23.663,-23.403,-23.186,-23.017,-22.899,-22.831,-22.806,-22.813,-22.836,-22.856,-22.851,
--22.807,-22.712,-22.565,-22.370,-22.138,-21.883,-21.618,-21.355,-21.099,-20.850,-20.607,-20.365,-20.120,-19.874,-19.629,-19.391,
--19.167,-18.962,-18.779,-18.614,-18.463,-18.319,-18.177,-18.036,-17.904,-17.793,-17.719,-17.696,-17.735,-17.832,-17.975,-18.143,
--18.308,-18.443,-18.529,-18.560,-18.538,-18.476,-18.392,-18.301,-18.214,-18.131,-18.049,-17.959,-17.854,-17.735,-17.608,-17.485,
--17.379,-17.302,-17.262,-17.255,-17.274,-17.307,-17.342,-17.371,-17.389,-17.396,-17.393,-17.384,-17.368,-17.345,-17.314,-17.277,
--17.238,-17.203,-17.177,-17.163,-17.153,-17.131,-17.071,-16.942,-16.712,-16.360,-15.873,-15.256,-14.529,-13.719,-12.856,-11.971,
--11.084,-10.214,-9.373,-8.572,-7.824,-7.146,-6.554,-6.062,-5.676,-5.389,-5.183,-5.028,-4.890,-4.736,-4.544,-4.303,
--4.017,-3.699,-3.365,-3.030,-2.700,-2.373,-2.040,-1.688,-1.312,-.913,-.503,-.104,.258,.562,.792,.949,
-1.047,1.110,1.168,1.250,1.376,1.558,1.791,2.065,2.361,2.656,2.933,3.176,3.376,3.529,3.638,3.710,
-3.760,3.803,3.858,3.941,4.067,4.241,4.461,4.717,4.991,5.262,5.510,5.720,5.887,6.014,6.110,6.193,
-6.281,6.390,6.536,6.727,6.969,7.261,7.595,7.959,8.330,8.683,8.989,9.225,9.374,9.434,9.418,9.356,
-9.282,9.233,9.235,9.296,9.406,9.534,9.643,9.691,9.652,9.512,9.283,8.990,8.671,8.365,8.103,7.909,
-7.789,7.740,7.754,7.815,7.910,8.026,8.150,8.270,8.375,8.455,8.507,8.531,8.537,8.540,8.555,8.599,
-8.677,8.788,8.920,9.055,9.177,9.271,9.334,9.372,9.399,9.431,9.485,9.567,9.677,9.806,9.940,10.061,
-10.156,10.216,10.239,10.229,10.197,10.155,10.120,10.107,10.129,10.196,10.311,10.467,10.650,10.839,11.008,11.136,
-11.207,11.219,11.180,11.108,11.025,10.952,10.898,10.867,10.848,10.830,10.800,10.751,10.687,10.614,10.545,10.487,
-10.441,10.399,10.347,10.271,10.161,10.016,9.842,9.655,9.469,9.291,9.120,8.947,8.759,8.545,8.306,8.054,
-7.813,7.610,7.466,7.385,7.355,7.344,7.316,7.236,7.090,6.883,6.646,6.419,6.241,6.138,6.109,6.128,
-6.151,6.131,6.033,5.845,5.582,5.284,4.999,4.774,4.637,4.592,4.620,4.687,4.757,4.801,4.807,4.777,
-4.726,4.673,4.631,4.604,4.587,4.568,4.537,4.489,4.428,4.364,4.315,4.294,4.310,4.364,4.448,4.549,
-4.652,4.745,4.821,4.875,4.907,4.916,4.904,4.872,4.825,4.767,4.709,4.657,4.618,4.596,4.586,4.580,
-4.566,4.535,4.482,4.413,4.337,4.273,4.234,4.232,4.267,4.328,4.401,4.466,4.510,4.530,4.529,4.523,
-4.531,4.568,4.647,4.768,4.924,5.103,5.293,5.482,5.666,5.845,6.021,6.196,6.369,6.533,6.679,6.798,
-6.883,6.933,6.956,6.966,6.981,7.016,7.082,7.184,7.314,7.464,7.619,7.766,7.900,8.018,8.126,8.233,
-8.347,8.475,8.619,8.774,8.929,9.070,9.182,9.252,9.275,9.251,9.188,9.103,9.016,8.946,8.910,8.917,
-8.968,9.053,9.157,9.264,9.356,9.424,9.468,9.494,9.516,9.548,9.603,9.685,9.792,9.915,10.043,10.163,
-10.269,10.359,10.437,10.509,10.582,10.659,10.738,10.813,10.874,10.917,10.939,10.946,10.949,10.962,10.996,11.059,
-11.148,11.254,11.363,11.459,11.529,11.571,11.590,11.597,11.611,11.648,11.718,11.823,11.957,12.106,12.252,12.380,
-12.479,12.546,12.582,12.594,12.588,12.567,12.529,12.468,12.375,12.242,12.068,11.861,11.638,11.425,11.250,11.138,
-11.106,11.156,11.276,11.438,11.608,11.750,11.833,11.836,11.754,11.595,11.376,11.121,10.854,10.594,10.356,10.145,
-9.963,9.807,9.670,9.546,9.425,9.296,9.148,8.971,8.757,8.509,8.234,7.952,7.682,7.446,7.256,7.112,
-6.998,6.886,6.742,6.536,6.251,5.888,5.467,5.024,4.596,4.213,3.888,3.614,3.364,3.102,2.791,2.403,
-1.925,1.359,.715,.006,-.759,-1.579,-2.461,-3.408,-4.416,-5.464,-6.513,-7.512,-8.407,-9.149,-9.714,-10.101,
--10.336,-10.465,-10.544,-10.624,-10.747,-10.933,-11.189,-11.509,-11.877,-12.278,-12.696,-13.117,-13.526,-13.908,-14.248,-14.535,
--14.764,-14.942,-15.090,-15.239,-15.425,-15.679,-16.024,-16.461,-16.972,-17.525,-18.076,-18.583,-19.014,-19.354,-19.609,-19.800,
--19.956,-20.112,-20.292,-20.510,-20.764,-21.042,-21.322,-21.583,-21.809,-21.996,-22.153,-22.300,-22.462,-22.664,-22.922,-23.241,
--23.614,-24.021,-24.438,-24.843,-25.222,-25.570,-25.894,-26.209,-26.530,-26.868,-27.225,-27.594,-27.965,-28.324,-28.666,-28.994,
--29.322,-29.670,-30.059,-30.504,-31.004,-31.545,-32.096,-32.620,-33.079,-33.444,-33.703,-33.864,-33.949,-33.996,-34.046,-34.137,
--34.297,-34.538,-34.857,-35.240,-35.662,-36.097,-36.521,-36.920,-37.286,-37.624,-37.941,-38.249,-38.560,-38.878,-39.202,-39.526,
--39.838,-40.129,-40.391,-40.620,-40.820,-40.996,-41.155,-41.302,-41.438,-41.563,-41.669,-41.750,-41.803,-41.826,-41.822,-41.796,
--41.755,-41.704,-41.645,-41.577,-41.497,-41.401,-41.285,-41.146,-40.984,-40.800,-40.597,-40.376,-40.140,-39.889,-39.630,-39.368,
--39.114,-38.878,-38.673,-38.506,-38.381,-38.294,-38.235,-38.192,-38.149,-38.095,-38.022,-37.931,-37.828,-37.721,-37.623,-37.541,
--37.480,-37.441,-37.421,-37.413,-37.409,-37.402,-37.384,-37.348,-37.289,-37.201,-37.079,-36.919,-36.718,-36.474,-36.185,-35.854,
--35.483,-35.082,-34.662,-34.243,-33.850,-33.509,-33.246,-33.080,-33.018,-33.048,-33.146,-33.271,-33.381,-33.436,-33.410,-33.299,
--33.120,-32.906,-32.694,-32.520,-32.400,-32.328,-32.279,-32.212,-32.082,-31.857,-31.519,-31.079,-30.563,-30.014,-29.475,-28.981,
--28.551,-28.186,-27.871,-27.582,-27.296,-26.992,-26.659,-26.294,-25.902,-25.488,-25.055,-24.604,-24.129,-23.626,-23.088,-22.515,
--21.911,-21.285,-20.651,-20.020,-19.402,-18.800,-18.210,-17.621,-17.023,-16.402,-15.754,-15.075,-14.371,-13.651,-12.923,-12.194,
--11.463,-10.729,-9.984,-9.228,-8.468,-7.722,-7.016,-6.386,-5.860,-5.455,-5.167,-4.967,-4.809,-4.634,-4.388,-4.033,
--3.556,-2.972,-2.318,-1.639,-.979,-.358,.225,.799,1.410,2.112,2.948,3.944,5.101,6.398,7.792,9.230,
-10.656,12.016,13.261,14.351,15.260,15.974,16.495,16.846,17.070,17.222,17.365,17.556,17.833,18.211,18.677,19.196,
-19.728,20.235,20.704,21.143,21.587,22.081,22.668,23.369,24.173,25.038,25.891,26.653,27.250,27.639,27.810,27.794,
-27.648,27.447,27.262,27.151,27.148,27.267,27.505,27.853,28.304,28.858,29.520,30.297,31.191,32.194,33.282,34.419,
-35.561,36.666,37.699,38.643,39.495,40.269,40.991,41.689,42.387,43.100,43.836,44.589,45.346,46.091,46.806,47.474,
-48.079,48.608,49.051,49.398,49.647,49.796,49.848,49.809,49.686,49.485,49.206,48.848,48.409,47.889,47.297,46.658,
-46.011,45.409,44.914,44.581,44.454,44.547,44.847,45.313,45.886,46.504,47.116,47.692,48.231,48.757,49.308,49.919,
-50.614,51.390,52.219,53.051,53.824,54.484,54.990,55.327,55.505,55.554,55.512,55.421,55.314,55.214,55.135,55.084,
-55.067,55.091,55.167,55.305,55.512,55.786,56.117,56.484,56.865,57.237,57.582,57.896,58.181,58.452,58.723,59.012,
-59.331,59.684,60.071,60.486,60.922,61.366,61.807,62.233,62.631,62.988,63.296,63.549,63.750,63.910,64.045,64.177,
-64.323,64.495,64.695,64.916,65.143,65.359,65.550,65.707,65.830,65.929,66.016,66.103,66.200,66.311,66.432,66.558,
-66.680,66.790,66.885,66.962,67.022,67.070,67.107,67.138,67.162,67.181,67.191,67.189,67.168,67.124,67.052,66.951,
-66.825,66.684,66.539,66.404,66.283,66.177,66.073,65.953,65.793,65.574,65.289,64.943,64.559,64.169,63.808,63.502,
-63.267,63.099,62.981,62.887,62.787,62.658,62.484,62.257,61.974,61.636,61.241,60.787,60.277,59.721,59.139,58.561,
-58.024,57.563,57.199,56.936,56.756,56.620,56.483,56.301,56.042,55.699,55.287,54.838,54.394,53.994,53.666,53.417,
-53.240,53.113,53.010,52.906,52.784,52.638,52.472,52.298,52.131,51.982,51.861,51.770,51.705,51.657,51.616,51.568,
-51.502,51.410,51.284,51.119,50.914,50.668,50.386,50.081,49.739,49.355,48.926,48.458,47.961,47.449,46.939,46.442,
-45.964,45.503,45.057,44.622,44.201,43.806,43.453,43.160,42.943,42.801,42.725,42.687,42.656,42.600,42.496,42.338,
-42.134,41.904,41.671,41.456,41.268,41.109,40.975,40.857,40.754,40.670,40.611,40.585,40.587,40.603,40.600,40.536,
-40.369,40.068,39.618,39.034,38.351,37.621,36.898,36.229,35.641,35.138,34.704,34.311,33.926,33.520,33.081,32.608,
-32.117,31.632,31.179,30.783,30.458,30.211,30.033,29.907,29.808,29.710,29.585,29.410,29.172,28.865,28.493,28.068,
-27.606,27.119,26.619,26.109,25.587,25.046,24.477,23.876,23.246,22.598,21.949,21.318,20.726,20.188,19.710,19.292,
-18.929,18.614,18.343,18.114,17.930,17.798,17.720,17.693,17.711,17.755,17.807,17.846,17.858,17.837,17.784,17.709,
-17.626,17.549,17.491,17.459,17.455,17.481,17.533,17.608,17.700,17.798,17.889,17.953,17.970,17.923,17.801,17.605,
-17.350,17.065,16.783,16.539,16.361,16.262,16.243,16.286,16.367,16.455,16.525,16.559,16.549,16.499,16.419,16.328,
-16.241,16.176,16.142,16.141,16.170,16.214,16.254,16.270,16.239,16.147,15.988,15.767,15.499,15.205,14.908,14.630,
-14.381,14.165,13.978,13.808,13.644,13.473,13.292,13.097,12.889,12.671,12.441,12.198,11.938,11.658,11.355,11.034,
-10.702,10.369,10.049,9.750,9.477,9.233,9.011,8.806,8.612,8.426,8.250,8.092,7.961,7.865,7.809,7.792,
-7.803,7.827,7.842,7.827,7.764,7.646,7.472,7.256,7.015,6.773,6.552,6.368,6.227,6.129,6.060,5.998,
-5.921,5.802,5.620,5.361,5.021,4.606,4.132,3.623,3.105,2.604,2.137,1.715,1.339,1.004,.704,.433,
-.192,-.015,-.183,-.308,-.399,-.475,-.567,-.709,-.929,-1.235,-1.614,-2.021,-2.396,-2.671,-2.791,-2.728,
--2.490,-2.127,-1.714,-1.338,-1.081,-1.000,-1.118,-1.427,-1.887,-2.448,-3.055,-3.661,-4.237,-4.765,-5.241,-5.670,
--6.062,-6.432,-6.795,-7.169,-7.573,-8.019,-8.512,-9.043,-9.592,-10.126,-10.608,-11.006,-11.303,-11.499,-11.616,-11.689,
--11.759,-11.863,-12.022,-12.239,-12.498,-12.772,-13.032,-13.252,-13.423,-13.547,-13.640,-13.724,-13.822,-13.950,-14.115,-14.318,
--14.551,-14.807,-15.077,-15.356,-15.642,-15.934,-16.228,-16.523,-16.814,-17.096,-17.370,-17.635,-17.900,-18.171,-18.456,-18.755,
--19.065,-19.374,-19.662,-19.910,-20.101,-20.223,-20.276,-20.269,-20.217,-20.141,-20.057,-19.981,-19.918,-19.869,-19.832,-19.803,
--19.781,-19.771,-19.779,-19.817,-19.892,-20.010,-20.170,-20.361,-20.567,-20.771,-20.951,-21.091,-21.183,-21.222,-21.214,-21.169,
--21.104,-21.036,-20.980,-20.954,-20.970,-21.037,-21.158,-21.333,-21.557,-21.817,-22.099,-22.386,-22.663,-22.915,-23.134,-23.316,
--23.463,-23.578,-23.667,-23.737,-23.791,-23.832,-23.860,-23.876,-23.880,-23.871,-23.848,-23.811,-23.759,-23.689,-23.606,-23.513,
--23.422,-23.348,-23.310,-23.326,-23.410,-23.571,-23.805,-24.101,-24.438,-24.794,-25.145,-25.472,-25.761,-26.001,-26.189,-26.322,
--26.401,-26.429,-26.411,-26.355,-26.273,-26.181,-26.093,-26.020,-25.971,-25.945,-25.937,-25.936,-25.933,-25.923,-25.907,-25.891,
--25.890,-25.918,-25.987,-26.105,-26.267,-26.464,-26.677,-26.882,-27.058,-27.185,-27.251,-27.249,-27.183,-27.059,-26.888,-26.682,
--26.450,-26.201,-25.938,-25.665,-25.385,-25.101,-24.822,-24.557,-24.322,-24.128,-23.986,-23.899,-23.864,-23.869,-23.894,-23.917,
--23.919,-23.882,-23.796,-23.659,-23.475,-23.253,-23.002,-22.732,-22.451,-22.163,-21.870,-21.575,-21.279,-20.986,-20.701,-20.429,
--20.176,-19.947,-19.744,-19.566,-19.408,-19.261,-19.118,-18.972,-18.822,-18.674,-18.539,-18.432,-18.371,-18.366,-18.422,-18.530,
--18.670,-18.817,-18.943,-19.024,-19.046,-19.009,-18.923,-18.802,-18.667,-18.530,-18.398,-18.273,-18.149,-18.022,-17.892,-17.764,
--17.647,-17.554,-17.494,-17.470,-17.481,-17.515,-17.558,-17.596,-17.620,-17.623,-17.607,-17.575,-17.530,-17.475,-17.411,-17.336,
--17.252,-17.160,-17.066,-16.977,-16.896,-16.825,-16.753,-16.665,-16.537,-16.344,-16.065,-15.684,-15.198,-14.613,-13.945,-13.213,
--12.437,-11.637,-10.829,-10.031,-9.263,-8.545,-7.901,-7.350,-6.909,-6.578,-6.348,-6.192,-6.076,-5.959,-5.804,-5.585,
--5.290,-4.922,-4.495,-4.028,-3.540,-3.045,-2.549,-2.049,-1.546,-1.037,-.532,-.044,.404,.791,1.099,1.319,
-1.458,1.534,1.575,1.612,1.674,1.782,1.943,2.157,2.413,2.696,2.989,3.279,3.553,3.804,4.026,4.215,
-4.369,4.488,4.576,4.640,4.692,4.744,4.806,4.887,4.990,5.111,5.246,5.390,5.539,5.694,5.856,6.031,
-6.222,6.427,6.643,6.860,7.072,7.273,7.466,7.658,7.862,8.088,8.342,8.619,8.906,9.181,9.418,9.597,
-9.709,9.755,9.750,9.716,9.677,9.650,9.644,9.658,9.681,9.698,9.695,9.659,9.585,9.474,9.332,9.169,
-8.996,8.827,8.676,8.558,8.485,8.465,8.498,8.576,8.684,8.801,8.906,8.985,9.032,9.053,9.062,9.078,
-9.118,9.191,9.294,9.418,9.545,9.660,9.753,9.824,9.881,9.938,10.011,10.108,10.230,10.369,10.512,10.644,
-10.755,10.838,10.895,10.931,10.952,10.965,10.974,10.980,10.987,11.000,11.023,11.062,11.122,11.198,11.281,11.356,
-11.406,11.417,11.383,11.310,11.210,11.105,11.010,10.937,10.885,10.847,10.807,10.755,10.688,10.611,10.540,10.494,
-10.482,10.506,10.552,10.593,10.599,10.546,10.420,10.225,9.981,9.713,9.445,9.194,8.965,8.751,8.542,8.332,
-8.125,7.931,7.768,7.650,7.581,7.546,7.518,7.463,7.352,7.172,6.936,6.674,6.433,6.255,6.163,6.155,
-6.198,6.243,6.233,6.129,5.918,5.620,5.280,4.957,4.703,4.551,4.502,4.532,4.598,4.655,4.671,4.632,
-4.549,4.447,4.354,4.295,4.276,4.293,4.327,4.358,4.373,4.369,4.354,4.344,4.357,4.402,4.480,4.581,
-4.688,4.783,4.851,4.888,4.894,4.879,4.852,4.820,4.789,4.756,4.719,4.674,4.621,4.563,4.506,4.457,
-4.422,4.406,4.410,4.433,4.469,4.515,4.566,4.616,4.661,4.699,4.727,4.742,4.746,4.741,4.732,4.726,
-4.730,4.751,4.791,4.851,4.930,5.023,5.128,5.244,5.371,5.511,5.666,5.837,6.019,6.205,6.386,6.548,
-6.682,6.784,6.853,6.897,6.931,6.968,7.025,7.111,7.229,7.378,7.547,7.726,7.902,8.069,8.223,8.368,
-8.510,8.655,8.808,8.970,9.133,9.287,9.418,9.512,9.562,9.565,9.528,9.465,9.396,9.341,9.316,9.332,
-9.388,9.476,9.579,9.679,9.757,9.801,9.809,9.788,9.754,9.727,9.729,9.774,9.871,10.016,10.198,10.399,
-10.598,10.780,10.933,11.053,11.140,11.201,11.242,11.268,11.284,11.293,11.296,11.297,11.303,11.323,11.367,11.442,
-11.550,11.687,11.839,11.988,12.115,12.201,12.237,12.225,12.178,12.116,12.063,12.042,12.068,12.142,12.258,12.398,
-12.543,12.672,12.775,12.847,12.891,12.913,12.920,12.912,12.884,12.824,12.720,12.563,12.352,12.100,11.831,11.579,
-11.377,11.252,11.218,11.272,11.392,11.548,11.699,11.812,11.861,11.834,11.732,11.568,11.360,11.126,10.882,10.641,
-10.408,10.189,9.986,9.803,9.639,9.490,9.349,9.200,9.028,8.814,8.552,8.241,7.899,7.550,7.225,6.951,
-6.742,6.594,6.488,6.389,6.262,6.079,5.829,5.521,5.178,4.833,4.514,4.235,3.993,3.766,3.524,3.235,
-2.878,2.444,1.941,1.381,.776,.131,-.564,-1.327,-2.175,-3.118,-4.145,-5.221,-6.292,-7.292,-8.162,-8.858,
--9.364,-9.694,-9.888,-9.999,-10.083,-10.188,-10.346,-10.571,-10.865,-11.216,-11.611,-12.034,-12.467,-12.896,-13.303,-13.675,
--14.001,-14.280,-14.518,-14.734,-14.954,-15.205,-15.512,-15.888,-16.331,-16.826,-17.347,-17.861,-18.342,-18.770,-19.139,-19.458,
--19.743,-20.015,-20.292,-20.588,-20.902,-21.229,-21.551,-21.851,-22.112,-22.325,-22.491,-22.625,-22.750,-22.892,-23.077,-23.325,
--23.639,-24.012,-24.423,-24.849,-25.263,-25.650,-26.003,-26.329,-26.640,-26.954,-27.280,-27.622,-27.975,-28.327,-28.668,-28.993,
--29.307,-29.623,-29.963,-30.346,-30.783,-31.274,-31.801,-32.334,-32.836,-33.273,-33.617,-33.859,-34.006,-34.082,-34.121,-34.164,
--34.248,-34.403,-34.648,-34.984,-35.401,-35.878,-36.384,-36.892,-37.375,-37.818,-38.217,-38.576,-38.908,-39.228,-39.547,-39.871,
--40.196,-40.513,-40.811,-41.079,-41.313,-41.516,-41.697,-41.865,-42.028,-42.187,-42.337,-42.464,-42.555,-42.598,-42.590,-42.534,
--42.446,-42.341,-42.238,-42.147,-42.071,-42.003,-41.930,-41.836,-41.709,-41.540,-41.329,-41.082,-40.809,-40.521,-40.232,-39.948,
--39.680,-39.432,-39.211,-39.024,-38.874,-38.762,-38.687,-38.639,-38.609,-38.583,-38.548,-38.496,-38.425,-38.339,-38.246,-38.158,
--38.085,-38.035,-38.008,-38.001,-38.007,-38.016,-38.018,-38.007,-37.976,-37.921,-37.840,-37.729,-37.585,-37.403,-37.180,-36.913,
--36.600,-36.246,-35.856,-35.443,-35.025,-34.621,-34.258,-33.957,-33.736,-33.605,-33.558,-33.577,-33.635,-33.696,-33.728,-33.708,
--33.627,-33.494,-33.328,-33.158,-33.007,-32.889,-32.799,-32.719,-32.620,-32.469,-32.241,-31.927,-31.534,-31.086,-30.614,-30.150,
--29.717,-29.329,-28.983,-28.665,-28.359,-28.045,-27.710,-27.349,-26.960,-26.547,-26.114,-25.661,-25.189,-24.691,-24.164,-23.602,
--23.006,-22.377,-21.723,-21.052,-20.373,-19.692,-19.016,-18.346,-17.679,-17.013,-16.345,-15.674,-15.002,-14.330,-13.663,-12.999,
--12.334,-11.656,-10.950,-10.203,-9.405,-8.562,-7.692,-6.832,-6.026,-5.321,-4.750,-4.329,-4.045,-3.864,-3.735,-3.603,
--3.426,-3.179,-2.860,-2.484,-2.070,-1.634,-1.170,-.655,-.049,.693,1.604,2.697,3.957,5.342,6.790,8.237,
-9.623,10.908,12.067,13.090,13.976,14.725,15.336,15.812,16.160,16.402,16.577,16.737,16.937,17.226,17.631,18.149,
-18.748,19.380,19.989,20.537,21.010,21.424,21.825,22.267,22.799,23.444,24.194,25.006,25.815,26.547,27.138,27.549,
-27.775,27.838,27.786,27.675,27.561,27.491,27.495,27.593,27.797,28.116,28.558,29.131,29.842,30.693,31.672,32.758,
-33.915,35.102,36.273,37.390,38.425,39.365,40.212,40.986,41.713,42.422,43.140,43.885,44.660,45.460,46.263,47.042,
-47.769,48.413,48.956,49.385,49.700,49.907,50.020,50.051,50.009,49.898,49.712,49.438,49.064,48.581,47.993,47.321,
-46.605,45.906,45.291,44.831,44.581,44.572,44.803,45.241,45.828,46.494,47.172,47.813,48.393,48.920,49.423,49.944,
-50.518,51.163,51.871,52.609,53.323,53.955,54.455,54.795,54.971,55.005,54.940,54.825,54.705,54.614,54.571,54.581,
-54.640,54.741,54.879,55.054,55.270,55.529,55.831,56.172,56.538,56.914,57.285,57.641,57.977,58.297,58.611,58.930,
-59.264,59.620,60.000,60.400,60.817,61.242,61.670,62.091,62.499,62.881,63.229,63.532,63.785,63.987,64.147,64.278,
-64.397,64.522,64.663,64.826,65.005,65.191,65.375,65.546,65.702,65.844,65.979,66.110,66.241,66.370,66.491,66.596,
-66.681,66.745,66.795,66.839,66.886,66.942,67.007,67.074,67.131,67.167,67.172,67.144,67.084,66.998,66.894,66.778,
-66.654,66.523,66.386,66.244,66.098,65.950,65.799,65.644,65.474,65.281,65.055,64.792,64.496,64.181,63.871,63.588,
-63.352,63.171,63.043,62.951,62.873,62.782,62.660,62.493,62.274,62.001,61.675,61.294,60.858,60.367,59.833,59.273,
-58.718,58.200,57.750,57.388,57.113,56.907,56.732,56.546,56.306,55.990,55.593,55.133,54.645,54.169,53.742,53.389,
-53.117,52.917,52.771,52.655,52.547,52.434,52.312,52.187,52.068,51.965,51.886,51.832,51.797,51.770,51.737,51.684,
-51.600,51.479,51.321,51.129,50.908,50.660,50.386,50.086,49.813,49.505,49.147,48.732,48.262,47.747,47.209,46.669,
-46.144,45.641,45.156,44.680,44.206,43.733,43.278,42.868,42.538,42.321,42.234,42.270,42.401,42.578,42.745,42.854,
-42.872,42.790,42.619,42.386,42.123,41.857,41.608,41.388,41.200,41.048,40.934,40.859,40.821,40.806,40.789,40.732,
-40.594,40.336,39.932,39.380,38.702,37.941,37.153,36.391,35.699,35.099,34.594,34.165,33.786,33.426,33.060,32.675,
-32.270,31.853,31.441,31.052,30.704,30.410,30.176,30.001,29.874,29.777,29.685,29.572,29.412,29.185,28.882,28.501,
-28.055,27.559,27.035,26.496,25.954,25.407,24.850,24.272,23.666,23.032,22.378,21.720,21.080,20.481,19.938,19.460,
-19.047,18.692,18.387,18.126,17.910,17.745,17.637,17.593,17.612,17.680,17.777,17.875,17.949,17.979,17.959,17.897,
-17.808,17.714,17.635,17.583,17.561,17.564,17.585,17.615,17.650,17.686,17.723,17.759,17.784,17.784,17.743,17.646,
-17.486,17.268,17.011,16.745,16.503,16.313,16.194,16.148,16.163,16.215,16.277,16.321,16.330,16.295,16.217,16.106,
-15.975,15.842,15.721,15.622,15.554,15.516,15.504,15.507,15.510,15.495,15.447,15.357,15.222,15.051,14.857,14.657,
-14.468,14.301,14.158,14.036,13.924,13.808,13.678,13.524,13.345,13.140,12.915,12.675,12.423,12.163,11.898,11.628,
-11.357,11.085,10.815,10.548,10.285,10.025,9.768,9.515,9.269,9.036,8.823,8.639,8.493,8.391,8.334,8.317,
-8.331,8.358,8.378,8.372,8.321,8.212,8.041,7.813,7.539,7.239,6.934,6.645,6.387,6.167,5.985,5.834,
-5.698,5.562,5.409,5.222,4.990,4.708,4.373,3.991,3.573,3.132,2.684,2.243,1.823,1.430,1.072,.750,
-.467,.227,.033,-.117,-.228,-.318,-.412,-.543,-.742,-1.028,-1.400,-1.831,-2.267,-2.642,-2.886,-2.952,
--2.821,-2.519,-2.109,-1.678,-1.324,-1.127,-1.138,-1.369,-1.793,-2.356,-2.993,-3.640,-4.252,-4.803,-5.289,-5.720,
--6.117,-6.502,-6.894,-7.305,-7.744,-8.213,-8.707,-9.217,-9.726,-10.214,-10.657,-11.036,-11.334,-11.550,-11.693,-11.783,
--11.850,-11.921,-12.022,-12.165,-12.352,-12.575,-12.817,-13.059,-13.287,-13.490,-13.667,-13.824,-13.969,-14.114,-14.271,-14.447,
--14.647,-14.870,-15.115,-15.377,-15.648,-15.924,-16.200,-16.473,-16.744,-17.015,-17.290,-17.575,-17.872,-18.184,-18.509,-18.843,
--19.176,-19.497,-19.793,-20.051,-20.260,-20.412,-20.505,-20.539,-20.525,-20.474,-20.404,-20.330,-20.269,-20.230,-20.220,-20.235,
--20.271,-20.317,-20.364,-20.409,-20.451,-20.496,-20.554,-20.637,-20.753,-20.902,-21.080,-21.271,-21.455,-21.611,-21.720,-21.772,
--21.767,-21.714,-21.635,-21.554,-21.496,-21.486,-21.540,-21.664,-21.857,-22.106,-22.393,-22.697,-22.997,-23.273,-23.515,-23.716,
--23.877,-24.005,-24.107,-24.191,-24.261,-24.318,-24.362,-24.392,-24.404,-24.398,-24.377,-24.342,-24.294,-24.234,-24.162,-24.078,
--23.984,-23.886,-23.797,-23.733,-23.713,-23.754,-23.866,-24.052,-24.305,-24.612,-24.953,-25.309,-25.663,-25.998,-26.302,-26.566,
--26.780,-26.935,-27.027,-27.055,-27.027,-26.955,-26.860,-26.765,-26.689,-26.647,-26.640,-26.663,-26.703,-26.749,-26.790,-26.824,
--26.860,-26.910,-26.990,-27.109,-27.272,-27.471,-27.689,-27.903,-28.088,-28.223,-28.293,-28.294,-28.229,-28.110,-27.951,-27.768,
--27.571,-27.369,-27.163,-26.952,-26.732,-26.501,-26.258,-26.011,-25.768,-25.544,-25.353,-25.205,-25.106,-25.052,-25.033,-25.033,
--25.034,-25.019,-24.975,-24.892,-24.767,-24.600,-24.395,-24.156,-23.886,-23.592,-23.277,-22.949,-22.614,-22.280,-21.955,-21.644,
--21.352,-21.083,-20.838,-20.616,-20.416,-20.235,-20.066,-19.904,-19.742,-19.578,-19.413,-19.256,-19.121,-19.024,-18.982,-19.004,
--19.090,-19.225,-19.386,-19.542,-19.662,-19.725,-19.719,-19.645,-19.517,-19.352,-19.169,-18.982,-18.798,-18.619,-18.446,-18.279,
--18.124,-17.987,-17.878,-17.804,-17.766,-17.758,-17.769,-17.782,-17.784,-17.763,-17.717,-17.647,-17.560,-17.464,-17.361,-17.252,
--17.136,-17.009,-16.871,-16.725,-16.578,-16.438,-16.313,-16.203,-16.101,-15.995,-15.863,-15.686,-15.444,-15.126,-14.727,-14.251,
--13.705,-13.102,-12.456,-11.781,-11.095,-10.417,-9.770,-9.179,-8.668,-8.257,-7.956,-7.760,-7.651,-7.596,-7.552,-7.478,
--7.333,-7.092,-6.743,-6.290,-5.746,-5.135,-4.480,-3.803,-3.118,-2.440,-1.777,-1.141,-.544,.000,.478,.879,
-1.200,1.448,1.637,1.790,1.931,2.081,2.256,2.461,2.695,2.949,3.214,3.481,3.746,4.005,4.260,4.510,
-4.753,4.981,5.187,5.360,5.492,5.581,5.629,5.644,5.635,5.618,5.604,5.607,5.640,5.714,5.839,6.022,
-6.264,6.556,6.881,7.213,7.521,7.779,7.968,8.086,8.147,8.181,8.226,8.316,8.477,8.713,9.011,9.340,
-9.658,9.927,10.118,10.220,10.237,10.192,10.111,10.026,9.960,9.927,9.927,9.954,9.993,10.024,10.030,9.997,
-9.919,9.795,9.636,9.459,9.286,9.142,9.044,9.005,9.025,9.093,9.192,9.300,9.400,9.482,9.546,9.599,
-9.655,9.723,9.810,9.916,10.034,10.152,10.263,10.364,10.457,10.551,10.655,10.772,10.902,11.036,11.161,11.266,
-11.344,11.396,11.432,11.465,11.506,11.563,11.632,11.702,11.759,11.789,11.788,11.760,11.715,11.669,11.634,11.615,
-11.605,11.593,11.562,11.502,11.412,11.300,11.183,11.078,10.998,10.945,10.910,10.879,10.836,10.774,10.695,10.613,
-10.547,10.511,10.509,10.533,10.557,10.552,10.490,10.357,10.154,9.900,9.624,9.355,9.115,8.909,8.733,8.573,
-8.414,8.251,8.090,7.943,7.824,7.742,7.691,7.653,7.601,7.509,7.364,7.170,6.950,6.737,6.565,6.453,
-6.395,6.364,6.316,6.207,6.007,5.713,5.354,4.978,4.643,4.398,4.267,4.243,4.291,4.362,4.407,4.395,
-4.319,4.198,4.066,3.960,3.910,3.924,3.993,4.090,4.189,4.266,4.314,4.338,4.356,4.387,4.443,4.527,
-4.626,4.724,4.798,4.836,4.833,4.798,4.747,4.700,4.670,4.666,4.682,4.705,4.720,4.711,4.671,4.602,
-4.518,4.438,4.384,4.372,4.412,4.503,4.632,4.779,4.920,5.035,5.109,5.139,5.129,5.092,5.046,5.006,
-4.982,4.978,4.992,5.016,5.041,5.063,5.082,5.102,5.133,5.185,5.266,5.382,5.528,5.699,5.881,6.063,
-6.231,6.377,6.498,6.596,6.676,6.748,6.822,6.909,7.015,7.145,7.299,7.473,7.661,7.857,8.054,8.249,
-8.443,8.636,8.829,9.020,9.206,9.377,9.521,9.629,9.692,9.709,9.686,9.638,9.585,9.547,9.541,9.576,
-9.652,9.760,9.884,10.003,10.100,10.163,10.190,10.188,10.171,10.160,10.173,10.228,10.332,10.485,10.677,10.891,
-11.107,11.303,11.466,11.587,11.667,11.713,11.738,11.755,11.776,11.806,11.850,11.905,11.969,12.041,12.122,12.219,
-12.340,12.490,12.671,12.875,13.085,13.277,13.425,13.504,13.504,13.424,13.282,13.107,12.931,12.785,12.691,12.654,
-12.668,12.715,12.772,12.821,12.850,12.860,12.857,12.849,12.844,12.839,12.825,12.783,12.697,12.554,12.355,12.112,
-11.850,11.599,11.390,11.241,11.160,11.139,11.158,11.191,11.214,11.209,11.166,11.087,10.977,10.844,10.694,10.529,
-10.348,10.150,9.935,9.707,9.475,9.248,9.034,8.836,8.646,8.451,8.232,7.975,7.673,7.334,6.977,6.634,
-6.333,6.098,5.934,5.832,5.764,5.696,5.596,5.446,5.241,4.994,4.727,4.461,4.211,3.974,3.737,3.476,
-3.169,2.801,2.371,1.892,1.382,.857,.320,-.237,-.837,-1.509,-2.272,-3.132,-4.070,-5.045,-6.001,-6.881,
--7.637,-8.241,-8.692,-9.010,-9.236,-9.413,-9.584,-9.782,-10.027,-10.328,-10.683,-11.084,-11.519,-11.976,-12.437,-12.890,
--13.322,-13.724,-14.095,-14.440,-14.769,-15.098,-15.439,-15.803,-16.190,-16.598,-17.016,-17.434,-17.844,-18.239,-18.622,-18.994,
--19.363,-19.733,-20.106,-20.483,-20.859,-21.231,-21.591,-21.932,-22.244,-22.522,-22.759,-22.957,-23.121,-23.266,-23.413,-23.587,
--23.807,-24.088,-24.431,-24.827,-25.253,-25.686,-26.103,-26.488,-26.837,-27.156,-27.454,-27.743,-28.031,-28.319,-28.606,-28.889,
--29.171,-29.459,-29.769,-30.117,-30.516,-30.971,-31.472,-31.997,-32.514,-32.988,-33.389,-33.698,-33.912,-34.043,-34.117,-34.167,
--34.229,-34.338,-34.520,-34.791,-35.156,-35.604,-36.116,-36.665,-37.218,-37.748,-38.233,-38.664,-39.044,-39.387,-39.710,-40.030,
--40.357,-40.692,-41.026,-41.347,-41.643,-41.906,-42.139,-42.347,-42.541,-42.727,-42.907,-43.070,-43.201,-43.283,-43.301,-43.254,
--43.148,-43.005,-42.849,-42.706,-42.591,-42.507,-42.444,-42.382,-42.298,-42.174,-41.999,-41.773,-41.509,-41.224,-40.937,-40.663,
--40.412,-40.185,-39.983,-39.801,-39.640,-39.499,-39.383,-39.293,-39.231,-39.192,-39.168,-39.149,-39.124,-39.086,-39.033,-38.969,
--38.902,-38.842,-38.796,-38.767,-38.753,-38.745,-38.736,-38.715,-38.675,-38.614,-38.531,-38.427,-38.303,-38.159,-37.992,-37.799,
--37.575,-37.319,-37.032,-36.720,-36.391,-36.058,-35.735,-35.436,-35.175,-34.961,-34.795,-34.675,-34.590,-34.522,-34.455,-34.371,
--34.261,-34.124,-33.967,-33.806,-33.655,-33.524,-33.416,-33.321,-33.221,-33.094,-32.918,-32.683,-32.389,-32.048,-31.680,-31.306,
--30.944,-30.600,-30.275,-29.958,-29.637,-29.300,-28.940,-28.557,-28.155,-27.737,-27.308,-26.866,-26.407,-25.923,-25.408,-24.855,
--24.264,-23.636,-22.977,-22.290,-21.579,-20.847,-20.096,-19.327,-18.544,-17.755,-16.970,-16.201,-15.459,-14.757,-14.100,-13.486,
--12.906,-12.340,-11.761,-11.140,-10.449,-9.670,-8.803,-7.866,-6.898,-5.951,-5.083,-4.342,-3.755,-3.329,-3.041,-2.852,
--2.716,-2.593,-2.455,-2.294,-2.111,-1.909,-1.679,-1.396,-1.015,-.480,.262,1.239,2.450,3.852,5.370,6.912,
-8.388,9.726,10.887,11.865,12.679,13.360,13.939,14.437,14.862,15.217,15.507,15.750,15.978,16.235,16.566,17.000,
-17.546,18.183,18.863,19.533,20.139,20.652,21.074,21.435,21.789,22.194,22.698,23.321,24.053,24.853,25.663,26.416,
-27.054,27.540,27.861,28.027,28.073,28.042,27.987,27.957,27.996,28.139,28.411,28.825,29.384,30.083,30.907,31.836,
-32.847,33.912,35.004,36.097,37.165,38.188,39.151,40.049,40.884,41.669,42.424,43.171,43.928,44.705,45.501,46.298,
-47.071,47.788,48.419,48.946,49.359,49.667,49.884,50.027,50.109,50.131,50.081,49.935,49.668,49.259,48.704,48.022,
-47.258,46.479,45.769,45.207,44.863,44.780,44.965,45.393,46.009,46.741,47.516,48.269,48.960,49.574,50.122,50.628,
-51.124,51.633,52.162,52.699,53.213,53.668,54.027,54.265,54.379,54.384,54.313,54.211,54.120,54.075,54.094,54.182,
-54.329,54.520,54.737,54.969,55.211,55.466,55.738,56.035,56.357,56.704,57.067,57.440,57.813,58.181,58.541,58.895,
-59.245,59.594,59.943,60.294,60.648,61.007,61.373,61.749,62.137,62.531,62.924,63.302,63.647,63.945,64.185,64.367,
-64.497,64.592,64.670,64.750,64.845,64.960,65.096,65.246,65.407,65.574,65.744,65.914,66.080,66.234,66.367,66.468,
-66.533,66.562,66.568,66.570,66.590,66.645,66.742,66.872,67.014,67.138,67.214,67.220,67.150,67.009,66.818,66.602,
-66.384,66.181,65.998,65.834,65.683,65.537,65.389,65.237,65.077,64.907,64.723,64.521,64.299,64.060,63.812,63.571,
-63.352,63.168,63.026,62.921,62.841,62.764,62.671,62.543,62.371,62.150,61.881,61.566,61.207,60.806,60.368,59.900,
-59.419,58.944,58.499,58.104,57.769,57.488,57.242,57.000,56.731,56.406,56.013,55.556,55.056,54.543,54.050,53.605,
-53.225,52.915,52.671,52.480,52.329,52.207,52.105,52.019,51.949,51.894,51.854,51.825,51.800,51.772,51.729,51.660,
-51.559,51.420,51.245,51.041,50.817,50.582,50.339,50.086,49.781,49.554,49.299,48.998,48.638,48.217,47.744,47.237,
-46.716,46.198,45.690,45.190,44.688,44.176,43.660,43.159,42.712,42.365,42.158,42.117,42.236,42.481,42.794,43.105,
-43.352,43.489,43.499,43.390,43.190,42.933,42.655,42.378,42.118,41.880,41.668,41.479,41.314,41.166,41.022,40.861,
-40.655,40.372,39.990,39.497,38.901,38.226,37.509,36.791,36.107,35.480,34.917,34.414,33.958,33.534,33.130,32.740,
-32.366,32.011,31.679,31.374,31.097,30.847,30.624,30.426,30.251,30.097,29.954,29.809,29.642,29.434,29.165,28.823,
-28.403,27.913,27.368,26.786,26.188,25.585,24.983,24.380,23.769,23.142,22.499,21.845,21.194,20.568,19.986,19.466,
-19.017,18.637,18.320,18.056,17.835,17.656,17.521,17.439,17.417,17.454,17.541,17.660,17.783,17.886,17.947,17.960,
-17.929,17.870,17.804,17.749,17.715,17.703,17.706,17.714,17.720,17.722,17.721,17.725,17.735,17.746,17.746,17.714,
-17.631,17.484,17.275,17.018,16.743,16.482,16.266,16.115,16.032,16.006,16.014,16.029,16.029,15.998,15.931,15.832,
-15.710,15.576,15.442,15.316,15.205,15.112,15.041,14.990,14.955,14.930,14.903,14.864,14.804,14.719,14.612,14.490,
-14.364,14.243,14.133,14.036,13.946,13.855,13.753,13.631,13.486,13.317,13.127,12.924,12.712,12.497,12.285,12.076,
-11.873,11.673,11.472,11.263,11.040,10.796,10.526,10.234,9.930,9.629,9.353,9.123,8.955,8.856,8.824,8.845,
-8.897,8.954,8.988,8.979,8.911,8.778,8.581,8.329,8.036,7.720,7.395,7.076,6.773,6.489,6.225,5.975,
-5.733,5.494,5.252,5.005,4.751,4.490,4.220,3.938,3.643,3.331,3.001,2.654,2.293,1.926,1.561,1.209,
-.881,.588,.338,.137,-.018,-.136,-.241,-.362,-.531,-.776,-1.110,-1.519,-1.967,-2.395,-2.734,-2.921,
--2.919,-2.727,-2.386,-1.972,-1.580,-1.304,-1.213,-1.342,-1.684,-2.196,-2.813,-3.466,-4.098,-4.674,-5.183,-5.636,
--6.056,-6.468,-6.897,-7.353,-7.841,-8.353,-8.877,-9.396,-9.891,-10.345,-10.744,-11.077,-11.341,-11.538,-11.681,-11.786,
--11.872,-11.956,-12.054,-12.175,-12.322,-12.496,-12.693,-12.910,-13.143,-13.386,-13.635,-13.883,-14.125,-14.356,-14.576,-14.786,
--14.992,-15.201,-15.420,-15.652,-15.897,-16.149,-16.403,-16.653,-16.896,-17.137,-17.382,-17.640,-17.919,-18.220,-18.540,-18.869,
--19.192,-19.497,-19.773,-20.015,-20.223,-20.400,-20.547,-20.667,-20.757,-20.815,-20.839,-20.831,-20.799,-20.758,-20.724,-20.711,
--20.729,-20.778,-20.850,-20.930,-21.002,-21.055,-21.087,-21.105,-21.127,-21.173,-21.259,-21.392,-21.568,-21.769,-21.967,-22.137,
--22.256,-22.312,-22.309,-22.262,-22.198,-22.147,-22.134,-22.181,-22.296,-22.479,-22.717,-22.992,-23.282,-23.567,-23.828,-24.057,
--24.251,-24.412,-24.549,-24.669,-24.776,-24.873,-24.954,-25.015,-25.047,-25.048,-25.017,-24.961,-24.889,-24.809,-24.728,-24.649,
--24.570,-24.490,-24.408,-24.326,-24.256,-24.211,-24.207,-24.258,-24.372,-24.550,-24.785,-25.066,-25.379,-25.710,-26.045,-26.374,
--26.684,-26.964,-27.200,-27.382,-27.504,-27.567,-27.581,-27.563,-27.532,-27.508,-27.504,-27.524,-27.563,-27.612,-27.661,-27.706,
--27.748,-27.794,-27.859,-27.953,-28.082,-28.244,-28.427,-28.613,-28.782,-28.917,-29.004,-29.040,-29.027,-28.972,-28.884,-28.773,
--28.645,-28.503,-28.349,-28.181,-27.999,-27.801,-27.591,-27.373,-27.156,-26.947,-26.759,-26.599,-26.474,-26.382,-26.321,-26.280,
--26.248,-26.212,-26.161,-26.087,-25.985,-25.850,-25.680,-25.474,-25.231,-24.953,-24.644,-24.310,-23.962,-23.610,-23.264,-22.932,
--22.617,-22.319,-22.038,-21.771,-21.517,-21.278,-21.054,-20.847,-20.655,-20.475,-20.301,-20.132,-19.971,-19.826,-19.713,-19.649,
--19.649,-19.718,-19.849,-20.020,-20.202,-20.360,-20.466,-20.500,-20.460,-20.353,-20.196,-20.008,-19.804,-19.594,-19.382,-19.167,
--18.951,-18.738,-18.538,-18.362,-18.219,-18.114,-18.042,-17.992,-17.948,-17.892,-17.814,-17.707,-17.576,-17.428,-17.273,-17.118,
--16.966,-16.815,-16.660,-16.496,-16.323,-16.145,-15.971,-15.810,-15.668,-15.548,-15.441,-15.335,-15.213,-15.055,-14.848,-14.583,
--14.259,-13.881,-13.456,-12.995,-12.509,-12.008,-11.505,-11.015,-10.556,-10.152,-9.823,-9.587,-9.451,-9.407,-9.431,-9.486,
--9.524,-9.494,-9.356,-9.081,-8.661,-8.105,-7.440,-6.700,-5.920,-5.132,-4.356,-3.607,-2.888,-2.201,-1.550,-.938,
--.371,.145,.607,1.017,1.385,1.723,2.047,2.367,2.690,3.016,3.338,3.650,3.945,4.221,4.481,4.732,
-4.982,5.236,5.490,5.738,5.963,6.151,6.287,6.366,6.389,6.366,6.314,6.254,6.209,6.198,6.238,6.342,
-6.516,6.760,7.064,7.409,7.767,8.105,8.391,8.599,8.719,8.758,8.741,8.707,8.699,8.754,8.894,9.121,
-9.416,9.746,10.066,10.339,10.537,10.647,10.676,10.641,10.571,10.493,10.428,10.391,10.385,10.404,10.435,10.462,
-10.468,10.439,10.369,10.257,10.113,9.951,9.791,9.653,9.552,9.498,9.493,9.530,9.600,9.693,9.798,9.912,
-10.032,10.159,10.292,10.429,10.565,10.696,10.815,10.922,11.023,11.123,11.232,11.353,11.486,11.621,11.745,11.844,
-11.907,11.935,11.938,11.933,11.940,11.973,12.036,12.121,12.208,12.274,12.299,12.274,12.205,12.107,12.005,11.916,
-11.853,11.812,11.781,11.740,11.674,11.578,11.458,11.333,11.224,11.148,11.114,11.114,11.129,11.137,11.116,11.057,
-10.961,10.841,10.714,10.594,10.484,10.379,10.264,10.125,9.954,9.753,9.536,9.323,9.136,8.986,8.873,8.785,
-8.703,8.609,8.493,8.356,8.213,8.081,7.975,7.901,7.851,7.805,7.740,7.641,7.501,7.329,7.144,6.968,
-6.811,6.672,6.533,6.366,6.142,5.848,5.491,5.099,4.721,4.403,4.185,4.079,4.071,4.123,4.186,4.215,
-4.181,4.083,3.942,3.796,3.684,3.635,3.658,3.743,3.863,3.987,4.090,4.159,4.197,4.218,4.242,4.285,
-4.351,4.435,4.523,4.598,4.644,4.658,4.644,4.618,4.598,4.602,4.636,4.699,4.779,4.855,4.907,4.919,
-4.886,4.815,4.726,4.646,4.602,4.615,4.691,4.825,4.994,5.171,5.323,5.429,5.477,5.470,5.424,5.363,
-5.306,5.270,5.258,5.266,5.281,5.291,5.288,5.271,5.250,5.235,5.243,5.282,5.358,5.466,5.599,5.743,
-5.890,6.030,6.161,6.282,6.395,6.504,6.613,6.726,6.845,6.974,7.117,7.276,7.453,7.647,7.855,8.076,
-8.305,8.540,8.776,9.010,9.233,9.437,9.610,9.739,9.817,9.839,9.813,9.753,9.681,9.623,9.598,9.622,
-9.695,9.810,9.948,10.087,10.209,10.301,10.361,10.399,10.430,10.475,10.551,10.672,10.838,11.041,11.265,11.487,
-11.682,11.833,11.927,11.964,11.957,11.926,11.897,11.899,11.952,12.068,12.246,12.471,12.723,12.976,13.210,13.415,
-13.592,13.754,13.919,14.106,14.322,14.563,14.808,15.022,15.168,15.216,15.147,14.968,14.701,14.385,14.065,13.778,
-13.548,13.381,13.266,13.184,13.111,13.032,12.943,12.850,12.765,12.702,12.666,12.653,12.648,12.633,12.586,12.494,
-12.355,12.177,11.975,11.769,11.574,11.397,11.240,11.094,10.950,10.800,10.640,10.471,10.301,10.136,9.982,9.837,
-9.695,9.547,9.382,9.193,8.981,8.750,8.511,8.277,8.054,7.842,7.633,7.414,7.170,6.891,6.580,6.249,
-5.922,5.624,5.379,5.201,5.087,5.020,4.974,4.923,4.844,4.725,4.570,4.387,4.189,3.984,3.769,3.534,
-3.261,2.934,2.547,2.104,1.620,1.118,.619,.132,-.344,-.829,-1.348,-1.927,-2.581,-3.312,-4.098,-4.908,
--5.699,-6.434,-7.084,-7.637,-8.097,-8.479,-8.807,-9.108,-9.404,-9.714,-10.049,-10.414,-10.811,-11.234,-11.677,-12.132,
--12.589,-13.044,-13.493,-13.939,-14.384,-14.832,-15.284,-15.733,-16.173,-16.590,-16.977,-17.331,-17.658,-17.973,-18.295,-18.641,
--19.022,-19.438,-19.878,-20.323,-20.754,-21.158,-21.527,-21.868,-22.188,-22.496,-22.798,-23.089,-23.361,-23.605,-23.817,-24.004,
--24.183,-24.381,-24.622,-24.923,-25.288,-25.704,-26.147,-26.588,-27.000,-27.365,-27.678,-27.945,-28.177,-28.390,-28.594,-28.800,
--29.015,-29.247,-29.509,-29.813,-30.171,-30.589,-31.061,-31.570,-32.087,-32.579,-33.012,-33.364,-33.627,-33.808,-33.929,-34.022,
--34.121,-34.255,-34.450,-34.719,-35.067,-35.490,-35.973,-36.496,-37.035,-37.562,-38.057,-38.506,-38.903,-39.258,-39.587,-39.909,
--40.242,-40.595,-40.969,-41.353,-41.730,-42.084,-42.403,-42.686,-42.936,-43.160,-43.365,-43.551,-43.711,-43.830,-43.894,-43.892,
--43.823,-43.697,-43.536,-43.364,-43.206,-43.076,-42.975,-42.895,-42.814,-42.713,-42.576,-42.398,-42.183,-41.950,-41.716,-41.502,
--41.318,-41.165,-41.036,-40.919,-40.800,-40.671,-40.533,-40.393,-40.262,-40.154,-40.075,-40.026,-40.000,-39.986,-39.972,-39.947,
--39.909,-39.859,-39.803,-39.749,-39.699,-39.654,-39.607,-39.551,-39.476,-39.378,-39.256,-39.113,-38.955,-38.788,-38.616,-38.440,
--38.259,-38.070,-37.872,-37.667,-37.459,-37.253,-37.057,-36.875,-36.709,-36.557,-36.413,-36.269,-36.116,-35.946,-35.752,-35.534,
--35.295,-35.044,-34.795,-34.562,-34.359,-34.191,-34.058,-33.947,-33.837,-33.705,-33.530,-33.302,-33.020,-32.699,-32.360,-32.027,
--31.718,-31.440,-31.188,-30.946,-30.695,-30.416,-30.102,-29.753,-29.379,-28.991,-28.599,-28.204,-27.798,-27.369,-26.901,-26.383,
--25.809,-25.183,-24.513,-23.809,-23.077,-22.319,-21.531,-20.705,-19.839,-18.935,-18.006,-17.074,-16.167,-15.316,-14.545,-13.868,
--13.286,-12.780,-12.321,-11.866,-11.370,-10.790,-10.095,-9.276,-8.344,-7.336,-6.306,-5.317,-4.428,-3.680,-3.095,-2.665,
--2.366,-2.160,-2.013,-1.899,-1.804,-1.722,-1.645,-1.555,-1.412,-1.157,-.723,-.050,.900,2.123,3.567,5.145,
-6.745,8.255,9.587,10.694,11.569,12.245,12.773,13.208,13.594,13.955,14.296,14.618,14.919,15.213,15.522,15.878,
-16.309,16.829,17.430,18.084,18.747,19.373,19.928,20.397,20.795,21.157,21.530,21.965,22.495,23.137,23.879,24.687,
-25.512,26.296,26.988,27.545,27.946,28.195,28.317,28.360,28.382,28.447,28.614,28.921,29.388,30.010,30.764,31.613,
-32.519,33.450,34.387,35.319,36.246,37.171,38.094,39.010,39.911,40.786,41.631,42.445,43.236,44.014,44.787,45.558,
-46.319,47.050,47.729,48.334,48.852,49.278,49.623,49.900,50.119,50.281,50.372,50.363,50.219,49.910,49.422,48.770,
-48.001,47.190,46.430,45.819,45.436,45.333,45.523,45.981,46.650,47.454,48.311,49.150,49.921,50.597,51.173,51.663,
-52.085,52.459,52.795,53.093,53.348,53.545,53.674,53.731,53.724,53.670,53.596,53.531,53.505,53.538,53.639,53.809,
-54.034,54.297,54.579,54.865,55.143,55.413,55.678,55.948,56.232,56.538,56.871,57.231,57.613,58.011,58.416,58.822,
-59.219,59.604,59.969,60.313,60.636,60.941,61.237,61.535,61.847,62.183,62.546,62.930,63.320,63.693,64.027,64.301,
-64.505,64.641,64.724,64.775,64.819,64.877,64.963,65.080,65.224,65.388,65.561,65.734,65.897,66.044,66.167,66.259,
-66.313,66.332,66.322,66.302,66.295,66.324,66.407,66.546,66.727,66.916,67.074,67.160,67.146,67.022,66.801,66.513,
-66.196,65.887,65.614,65.388,65.209,65.064,64.936,64.812,64.681,64.536,64.376,64.200,64.009,63.804,63.590,63.375,
-63.172,62.992,62.848,62.742,62.669,62.617,62.565,62.493,62.383,62.224,62.012,61.750,61.443,61.101,60.730,60.339,
-59.940,59.544,59.164,58.810,58.487,58.190,57.904,57.610,57.285,56.909,56.475,55.988,55.464,54.930,54.410,53.928,
-53.497,53.125,52.810,52.548,52.335,52.167,52.040,51.951,51.892,51.855,51.828,51.800,51.761,51.702,51.622,51.516,
-51.386,51.232,51.054,50.857,50.646,50.428,50.211,49.996,49.781,49.414,49.206,48.985,48.737,48.450,48.117,47.740,
-47.327,46.890,46.440,45.981,45.509,45.019,44.507,43.984,43.477,43.026,42.680,42.483,42.455,42.593,42.859,43.197,
-43.538,43.823,44.010,44.082,44.045,43.922,43.738,43.517,43.272,43.010,42.733,42.442,42.140,41.832,41.521,41.206,
-40.876,40.517,40.115,39.659,39.148,38.592,38.011,37.424,36.849,36.291,35.750,35.216,34.681,34.140,33.601,33.081,
-32.601,32.184,31.841,31.575,31.374,31.218,31.082,30.946,30.793,30.616,30.412,30.183,29.925,29.634,29.301,28.916,
-28.470,27.958,27.385,26.759,26.097,25.414,24.727,24.046,23.376,22.719,22.075,21.444,20.832,20.248,19.705,19.219,
-18.800,18.454,18.178,17.964,17.797,17.665,17.559,17.479,17.427,17.411,17.435,17.498,17.589,17.694,17.791,17.867,
-17.910,17.924,17.916,17.899,17.886,17.881,17.882,17.883,17.875,17.856,17.827,17.796,17.774,17.765,17.766,17.762,
-17.732,17.651,17.505,17.290,17.021,16.726,16.438,16.187,15.994,15.862,15.780,15.726,15.679,15.620,15.539,15.438,
-15.324,15.207,15.097,15.000,14.918,14.851,14.796,14.750,14.710,14.671,14.629,14.576,14.509,14.424,14.325,14.216,
-14.107,14.007,13.921,13.847,13.781,13.713,13.630,13.527,13.399,13.248,13.080,12.903,12.724,12.548,12.379,12.218,
-12.068,11.927,11.793,11.659,11.514,11.343,11.133,10.872,10.564,10.222,9.872,9.549,9.289,9.116,9.043,9.060,
-9.144,9.257,9.356,9.407,9.384,9.276,9.087,8.831,8.529,8.203,7.871,7.545,7.232,6.931,6.637,6.344,
-6.045,5.734,5.410,5.077,4.741,4.409,4.091,3.789,3.507,3.240,2.983,2.727,2.467,2.197,1.915,1.622,
-1.324,1.029,.748,.491,.267,.080,-.078,-.221,-.375,-.567,-.822,-1.147,-1.529,-1.929,-2.294,-2.562,
--2.684,-2.635,-2.431,-2.123,-1.791,-1.525,-1.404,-1.478,-1.757,-2.213,-2.792,-3.427,-4.057,-4.641,-5.162,-5.627,
--6.056,-6.475,-6.907,-7.365,-7.851,-8.358,-8.874,-9.383,-9.868,-10.313,-10.703,-11.028,-11.286,-11.480,-11.623,-11.733,
--11.829,-11.931,-12.049,-12.189,-12.347,-12.521,-12.705,-12.899,-13.108,-13.337,-13.590,-13.868,-14.164,-14.466,-14.763,-15.043,
--15.304,-15.547,-15.781,-16.017,-16.260,-16.511,-16.765,-17.015,-17.254,-17.480,-17.698,-17.918,-18.152,-18.408,-18.686,-18.979,
--19.271,-19.543,-19.785,-19.990,-20.165,-20.324,-20.481,-20.647,-20.823,-20.998,-21.155,-21.271,-21.334,-21.341,-21.303,-21.245,
--21.194,-21.174,-21.198,-21.265,-21.356,-21.449,-21.522,-21.559,-21.564,-21.552,-21.549,-21.582,-21.670,-21.819,-22.017,-22.240,
--22.456,-22.636,-22.759,-22.818,-22.823,-22.795,-22.762,-22.751,-22.787,-22.883,-23.040,-23.251,-23.498,-23.762,-24.021,-24.258,
--24.463,-24.634,-24.778,-24.904,-25.025,-25.148,-25.274,-25.397,-25.502,-25.577,-25.611,-25.600,-25.549,-25.473,-25.387,-25.307,
--25.240,-25.189,-25.146,-25.103,-25.053,-24.995,-24.935,-24.885,-24.860,-24.874,-24.937,-25.053,-25.221,-25.436,-25.691,-25.978,
--26.290,-26.617,-26.945,-27.260,-27.546,-27.789,-27.983,-28.126,-28.225,-28.290,-28.333,-28.363,-28.387,-28.406,-28.421,-28.433,
--28.450,-28.478,-28.529,-28.611,-28.724,-28.863,-29.012,-29.154,-29.270,-29.347,-29.383,-29.383,-29.358,-29.324,-29.291,-29.265,
--29.244,-29.219,-29.179,-29.115,-29.018,-28.887,-28.728,-28.549,-28.361,-28.176,-28.005,-27.856,-27.733,-27.636,-27.561,-27.500,
--27.446,-27.388,-27.317,-27.229,-27.119,-26.984,-26.821,-26.628,-26.401,-26.139,-25.841,-25.512,-25.162,-24.802,-24.446,-24.104,
--23.784,-23.485,-23.203,-22.930,-22.663,-22.398,-22.140,-21.893,-21.663,-21.455,-21.267,-21.094,-20.930,-20.774,-20.630,-20.510,
--20.430,-20.406,-20.447,-20.549,-20.697,-20.861,-21.012,-21.121,-21.170,-21.152,-21.074,-20.950,-20.794,-20.615,-20.417,-20.196,
--19.950,-19.678,-19.388,-19.094,-18.817,-18.573,-18.376,-18.226,-18.111,-18.013,-17.910,-17.784,-17.626,-17.436,-17.225,-17.006,
--16.792,-16.591,-16.405,-16.230,-16.059,-15.884,-15.704,-15.521,-15.339,-15.165,-15.004,-14.854,-14.709,-14.560,-14.395,-14.205,
--13.985,-13.735,-13.463,-13.175,-12.881,-12.586,-12.294,-12.008,-11.730,-11.468,-11.235,-11.047,-10.923,-10.874,-10.900,-10.988,
--11.103,-11.202,-11.233,-11.148,-10.917,-10.528,-9.994,-9.348,-8.632,-7.891,-7.158,-6.452,-5.775,-5.117,-4.464,-3.803,
--3.130,-2.453,-1.787,-1.149,-.552,.000,.514,1.002,1.480,1.960,2.447,2.934,3.410,3.861,4.274,4.647,
-4.983,5.292,5.583,5.863,6.129,6.373,6.579,6.733,6.828,6.863,6.851,6.812,6.767,6.741,6.749,6.802,
-6.904,7.053,7.245,7.475,7.736,8.017,8.305,8.582,8.828,9.025,9.166,9.250,9.291,9.312,9.342,9.407,
-9.526,9.703,9.930,10.187,10.446,10.681,10.868,10.995,11.062,11.075,11.049,11.002,10.950,10.908,10.883,10.877,
-10.885,10.899,10.906,10.895,10.856,10.782,10.675,10.541,10.394,10.249,10.122,10.027,9.976,9.976,10.026,10.125,
-10.265,10.437,10.628,10.824,11.012,11.181,11.323,11.435,11.524,11.599,11.673,11.758,11.859,11.976,12.100,12.216,
-12.311,12.374,12.403,12.408,12.401,12.399,12.415,12.451,12.501,12.547,12.573,12.562,12.510,12.423,12.318,12.216,
-12.133,12.077,12.045,12.020,11.983,11.919,11.820,11.696,11.567,11.459,11.394,11.382,11.419,11.482,11.541,11.563,
-11.525,11.415,11.240,11.015,10.763,10.506,10.258,10.027,9.814,9.618,9.442,9.289,9.166,9.078,9.024,8.996,
-8.977,8.950,8.897,8.810,8.692,8.555,8.418,8.297,8.202,8.131,8.070,8.004,7.913,7.790,7.635,7.459,
-7.275,7.095,6.919,6.741,6.544,6.310,6.030,5.709,5.367,5.038,4.756,4.548,4.426,4.380,4.381,4.391,
-4.375,4.307,4.184,4.022,3.849,3.699,3.600,3.566,3.594,3.668,3.765,3.859,3.935,3.984,4.011,4.027,
-4.043,4.072,4.118,4.182,4.257,4.337,4.415,4.485,4.547,4.605,4.665,4.730,4.805,4.887,4.970,5.042,
-5.091,5.110,5.097,5.058,5.009,4.973,4.970,5.016,5.113,5.251,5.407,5.553,5.665,5.725,5.731,5.695,
-5.637,5.581,5.544,5.534,5.548,5.575,5.600,5.615,5.615,5.606,5.597,5.599,5.622,5.666,5.731,5.809,
-5.893,5.980,6.070,6.165,6.269,6.386,6.517,6.659,6.810,6.969,7.134,7.307,7.491,7.689,7.902,8.130,
-8.369,8.617,8.867,9.116,9.358,9.583,9.781,9.939,10.044,10.090,10.075,10.009,9.913,9.814,9.739,9.711,
-9.741,9.826,9.953,10.097,10.234,10.346,10.426,10.479,10.523,10.580,10.673,10.817,11.015,11.257,11.517,11.767,
-11.974,12.111,12.167,12.143,12.061,11.955,11.868,11.845,11.923,12.122,12.443,12.864,13.347,13.841,14.298,14.679,
-14.964,15.156,15.278,15.369,15.466,15.602,15.788,16.013,16.244,16.440,16.555,16.557,16.436,16.204,15.895,15.551,
-15.215,14.918,14.672,14.472,14.299,14.130,13.946,13.740,13.518,13.296,13.093,12.926,12.802,12.720,12.666,12.625,
-12.581,12.520,12.435,12.326,12.195,12.042,11.868,11.671,11.448,11.197,10.919,10.620,10.311,10.004,9.710,9.439,
-9.194,8.974,8.774,8.584,8.399,8.212,8.022,7.829,7.635,7.441,7.245,7.040,6.818,6.572,6.296,5.992,
-5.671,5.350,5.050,4.792,4.588,4.442,4.346,4.284,4.236,4.183,4.113,4.021,3.908,3.776,3.627,3.455,
-3.250,2.998,2.689,2.319,1.892,1.424,.936,.450,-.020,-.472,-.913,-1.361,-1.836,-2.355,-2.925,-3.542,
--4.192,-4.856,-5.512,-6.143,-6.736,-7.286,-7.793,-8.263,-8.703,-9.120,-9.522,-9.916,-10.308,-10.701,-11.096,-11.494,
--11.893,-12.295,-12.705,-13.132,-13.586,-14.075,-14.599,-15.150,-15.708,-16.245,-16.736,-17.162,-17.521,-17.827,-18.110,-18.407,
--18.750,-19.153,-19.612,-20.104,-20.596,-21.053,-21.457,-21.805,-22.113,-22.407,-22.714,-23.046,-23.401,-23.760,-24.097,-24.390,
--24.632,-24.833,-25.022,-25.232,-25.493,-25.821,-26.211,-26.638,-27.069,-27.469,-27.812,-28.091,-28.309,-28.485,-28.638,-28.788,
--28.947,-29.128,-29.339,-29.589,-29.887,-30.243,-30.658,-31.124,-31.619,-32.112,-32.570,-32.962,-33.271,-33.498,-33.661,-33.792,
--33.928,-34.104,-34.345,-34.662,-35.054,-35.507,-36.002,-36.516,-37.025,-37.509,-37.955,-38.356,-38.712,-39.033,-39.336,-39.641,
--39.967,-40.327,-40.723,-41.150,-41.589,-42.022,-42.428,-42.795,-43.118,-43.398,-43.643,-43.859,-44.047,-44.204,-44.321,-44.389,
--44.402,-44.360,-44.272,-44.151,-44.017,-43.883,-43.759,-43.644,-43.532,-43.411,-43.272,-43.108,-42.924,-42.731,-42.546,-42.386,
--42.264,-42.184,-42.136,-42.106,-42.071,-42.013,-41.918,-41.786,-41.626,-41.458,-41.302,-41.177,-41.091,-41.043,-41.023,-41.015,
--41.004,-40.979,-40.936,-40.878,-40.808,-40.732,-40.651,-40.562,-40.457,-40.330,-40.177,-39.999,-39.801,-39.592,-39.379,-39.171,
--38.971,-38.779,-38.596,-38.424,-38.267,-38.129,-38.017,-37.934,-37.877,-37.837,-37.798,-37.741,-37.648,-37.502,-37.296,-37.030,
--36.714,-36.364,-36.002,-35.653,-35.337,-35.067,-34.846,-34.664,-34.502,-34.331,-34.126,-33.867,-33.548,-33.180,-32.788,-32.404,
--32.059,-31.774,-31.552,-31.379,-31.228,-31.069,-30.876,-30.637,-30.353,-30.037,-29.706,-29.373,-29.038,-28.693,-28.317,-27.891,
--27.398,-26.833,-26.202,-25.517,-24.793,-24.038,-23.253,-22.429,-21.553,-20.616,-19.617,-18.571,-17.507,-16.466,-15.491,-14.620,
--13.878,-13.272,-12.787,-12.390,-12.034,-11.662,-11.222,-10.668,-9.976,-9.142,-8.190,-7.165,-6.127,-5.140,-4.260,-3.522,
--2.942,-2.511,-2.207,-2.001,-1.865,-1.778,-1.725,-1.688,-1.641,-1.540,-1.326,-.931,-.290,.634,1.841,3.284,
-4.875,6.498,8.033,9.379,10.477,11.313,11.915,12.343,12.666,12.945,13.220,13.511,13.818,14.135,14.459,14.796,
-15.160,15.570,16.041,16.578,17.169,17.790,18.409,18.997,19.535,20.016,20.454,20.873,21.307,21.789,22.346,22.991,
-23.721,24.515,25.337,26.138,26.866,27.476,27.941,28.258,28.456,28.586,28.720,28.928,29.269,29.773,30.441,31.241,
-32.126,33.043,33.949,34.820,35.655,36.470,37.288,38.127,38.998,39.895,40.803,41.703,42.580,43.425,44.237,45.020,
-45.776,46.505,47.199,47.847,48.437,48.961,49.418,49.811,50.144,50.411,50.600,50.681,50.621,50.388,49.965,49.363,
-48.626,47.830,47.071,46.453,46.064,45.963,46.168,46.653,47.358,48.200,49.092,49.954,50.732,51.395,51.934,52.360,
-52.689,52.936,53.114,53.228,53.280,53.272,53.214,53.120,53.013,52.919,52.863,52.864,52.933,53.072,53.273,53.522,
-53.803,54.100,54.401,54.697,54.986,55.267,55.544,55.824,56.114,56.420,56.749,57.102,57.480,57.880,58.297,58.722,
-59.148,59.565,59.967,60.345,60.695,61.014,61.306,61.576,61.837,62.102,62.387,62.698,63.038,63.396,63.755,64.090,
-64.379,64.606,64.769,64.877,64.950,65.012,65.085,65.182,65.306,65.449,65.597,65.737,65.855,65.947,66.011,66.050,
-66.068,66.067,66.052,66.029,66.007,66.001,66.025,66.090,66.197,66.334,66.474,66.582,66.624,66.574,66.424,66.183,
-65.881,65.555,65.243,64.972,64.754,64.588,64.458,64.344,64.226,64.090,63.930,63.744,63.539,63.321,63.099,62.883,
-62.685,62.517,62.387,62.302,62.262,62.256,62.268,62.277,62.259,62.196,62.077,61.896,61.658,61.371,61.048,60.703,
-60.352,60.010,59.688,59.392,59.123,58.870,58.613,58.328,57.992,57.586,57.108,56.566,55.987,55.399,54.835,54.317,
-53.857,53.454,53.102,52.791,52.517,52.280,52.084,51.935,51.833,51.770,51.730,51.694,51.643,51.563,51.451,51.310,
-51.149,50.976,50.798,50.615,50.426,50.231,50.029,49.824,49.618,49.414,49.061,48.834,48.610,48.383,48.145,47.891,
-47.613,47.313,46.991,46.649,46.284,45.892,45.468,45.014,44.544,44.088,43.685,43.380,43.209,43.187,43.306,43.530,
-43.809,44.088,44.320,44.477,44.548,44.540,44.465,44.334,44.155,43.927,43.647,43.317,42.944,42.542,42.129,41.719,
-41.317,40.921,40.522,40.105,39.664,39.198,38.716,38.229,37.746,37.267,36.783,36.276,35.732,35.143,34.516,33.876,
-33.259,32.704,32.245,31.898,31.660,31.510,31.412,31.329,31.224,31.073,30.860,30.583,30.242,29.845,29.395,28.897,
-28.352,27.761,27.125,26.446,25.731,24.987,24.227,23.465,22.716,21.996,21.317,20.690,20.119,19.609,19.160,18.774,
-18.451,18.193,17.998,17.861,17.772,17.720,17.691,17.673,17.658,17.646,17.642,17.650,17.676,17.720,17.778,17.841,
-17.898,17.945,17.978,18.001,18.020,18.038,18.056,18.068,18.066,18.042,17.994,17.926,17.850,17.781,17.727,17.690,
-17.659,17.615,17.532,17.393,17.191,16.934,16.644,16.351,16.082,15.856,15.681,15.548,15.443,15.347,15.246,15.133,
-15.010,14.884,14.764,14.662,14.582,14.529,14.500,14.493,14.498,14.506,14.504,14.478,14.417,14.316,14.178,14.017,
-13.850,13.697,13.574,13.487,13.430,13.389,13.344,13.279,13.183,13.055,12.903,12.738,12.571,12.410,12.259,12.117,
-11.985,11.864,11.758,11.668,11.591,11.515,11.421,11.285,11.085,10.812,10.476,10.103,9.735,9.420,9.197,9.087,
-9.088,9.175,9.305,9.431,9.511,9.517,9.438,9.279,9.056,8.791,8.500,8.197,7.888,7.573,7.250,6.915,
-6.565,6.201,5.822,5.433,5.038,4.644,4.257,3.883,3.527,3.193,2.885,2.604,2.350,2.120,1.910,1.712,
-1.517,1.318,1.107,.885,.654,.423,.202,-.005,-.199,-.394,-.606,-.853,-1.143,-1.466,-1.793,-2.080,
--2.278,-2.352,-2.290,-2.116,-1.885,-1.674,-1.563,-1.612,-1.849,-2.264,-2.814,-3.439,-4.076,-4.680,-5.228,-5.722,
--6.177,-6.617,-7.058,-7.510,-7.971,-8.431,-8.883,-9.319,-9.734,-10.123,-10.480,-10.798,-11.067,-11.282,-11.443,-11.563,
--11.660,-11.759,-11.879,-12.034,-12.225,-12.443,-12.677,-12.913,-13.147,-13.380,-13.623,-13.884,-14.170,-14.477,-14.798,-15.118,
--15.428,-15.721,-15.999,-16.270,-16.543,-16.824,-17.110,-17.394,-17.665,-17.913,-18.135,-18.338,-18.533,-18.737,-18.958,-19.198,
--19.449,-19.693,-19.913,-20.099,-20.249,-20.377,-20.501,-20.645,-20.822,-21.032,-21.258,-21.474,-21.648,-21.756,-21.788,-21.755,
--21.684,-21.610,-21.568,-21.579,-21.646,-21.755,-21.877,-21.982,-22.046,-22.065,-22.050,-22.027,-22.029,-22.085,-22.207,-22.393,
--22.621,-22.860,-23.074,-23.236,-23.330,-23.359,-23.337,-23.293,-23.258,-23.261,-23.322,-23.451,-23.645,-23.887,-24.152,-24.413,
--24.644,-24.828,-24.960,-25.051,-25.118,-25.187,-25.278,-25.400,-25.551,-25.715,-25.866,-25.980,-26.042,-26.048,-26.010,-25.948,
--25.885,-25.839,-25.818,-25.816,-25.821,-25.816,-25.788,-25.735,-25.661,-25.582,-25.516,-25.481,-25.490,-25.552,-25.671,-25.846,
--26.075,-26.351,-26.666,-27.008,-27.359,-27.704,-28.023,-28.304,-28.535,-28.715,-28.843,-28.924,-28.966,-28.974,-28.958,-28.929,
--28.902,-28.892,-28.916,-28.984,-29.099,-29.249,-29.413,-29.563,-29.671,-29.716,-29.693,-29.612,-29.496,-29.376,-29.281,-29.230,
--29.232,-29.277,-29.348,-29.421,-29.472,-29.485,-29.452,-29.373,-29.257,-29.116,-28.967,-28.821,-28.690,-28.580,-28.492,-28.422,
--28.362,-28.303,-28.236,-28.153,-28.049,-27.921,-27.768,-27.590,-27.382,-27.143,-26.868,-26.557,-26.214,-25.849,-25.475,-25.110,
--24.767,-24.453,-24.169,-23.910,-23.666,-23.429,-23.192,-22.957,-22.729,-22.513,-22.313,-22.129,-21.957,-21.791,-21.629,-21.473,
--21.334,-21.229,-21.172,-21.173,-21.232,-21.337,-21.464,-21.587,-21.682,-21.733,-21.732,-21.682,-21.590,-21.461,-21.295,-21.088,
--20.831,-20.522,-20.164,-19.775,-19.379,-19.007,-18.684,-18.428,-18.239,-18.102,-17.989,-17.871,-17.722,-17.526,-17.282,-17.004,
--16.711,-16.425,-16.162,-15.932,-15.732,-15.556,-15.390,-15.222,-15.047,-14.860,-14.663,-14.461,-14.256,-14.052,-13.848,-13.642,
--13.432,-13.218,-13.002,-12.791,-12.590,-12.407,-12.243,-12.097,-11.966,-11.846,-11.735,-11.636,-11.559,-11.515,-11.515,-11.560,
--11.638,-11.725,-11.782,-11.767,-11.641,-11.383,-10.989,-10.482,-9.900,-9.290,-8.695,-8.143,-7.640,-7.174,-6.717,-6.239,
--5.716,-5.140,-4.520,-3.877,-3.238,-2.624,-2.042,-1.486,-.935,-.365,.243,.900,1.596,2.310,3.012,3.675,
-4.275,4.807,5.272,5.682,6.048,6.375,6.661,6.896,7.069,7.176,7.219,7.213,7.183,7.155,7.152,7.186,
-7.260,7.365,7.488,7.620,7.758,7.909,8.083,8.293,8.542,8.825,9.125,9.414,9.666,9.859,9.985,10.051,
-10.078,10.094,10.129,10.204,10.331,10.505,10.710,10.924,11.119,11.276,11.380,11.428,11.429,11.395,11.346,11.301,
-11.275,11.274,11.300,11.343,11.389,11.422,11.424,11.384,11.298,11.168,11.010,10.844,10.692,10.578,10.522,10.534,
-10.617,10.763,10.955,11.172,11.391,11.590,11.755,11.877,11.960,12.012,12.049,12.087,12.140,12.215,12.313,12.426,
-12.542,12.647,12.730,12.785,12.812,12.818,12.811,12.800,12.789,12.778,12.760,12.729,12.678,12.605,12.516,12.421,
-12.333,12.261,12.208,12.172,12.139,12.096,12.031,11.943,11.837,11.731,11.646,11.599,11.599,11.641,11.704,11.759,
-11.772,11.718,11.583,11.368,11.090,10.776,10.456,10.157,9.898,9.688,9.527,9.411,9.332,9.282,9.254,9.239,
-9.228,9.211,9.177,9.120,9.035,8.928,8.805,8.681,8.565,8.464,8.376,8.295,8.206,8.099,7.965,7.807,
-7.632,7.455,7.287,7.138,7.005,6.877,6.738,6.573,6.372,6.137,5.881,5.626,5.395,5.207,5.068,4.971,
-4.898,4.825,4.729,4.596,4.426,4.230,4.030,3.852,3.718,3.646,3.636,3.682,3.765,3.863,3.951,4.013,
-4.041,4.036,4.011,3.985,3.979,4.010,4.088,4.209,4.360,4.523,4.675,4.801,4.892,4.952,4.991,5.021,
-5.054,5.094,5.138,5.181,5.214,5.236,5.251,5.272,5.311,5.378,5.475,5.593,5.714,5.816,5.882,5.907,
-5.893,5.858,5.820,5.798,5.801,5.830,5.876,5.927,5.971,6.002,6.021,6.034,6.047,6.066,6.094,6.129,
-6.167,6.209,6.255,6.313,6.389,6.489,6.617,6.771,6.946,7.136,7.336,7.542,7.756,7.979,8.213,8.457,
-8.709,8.962,9.212,9.454,9.683,9.895,10.085,10.245,10.364,10.431,10.441,10.395,10.303,10.188,10.078,10.000,
-9.977,10.017,10.116,10.254,10.406,10.545,10.653,10.722,10.761,10.787,10.825,10.898,11.019,11.191,11.402,11.626,
-11.835,11.998,12.097,12.128,12.106,12.061,12.038,12.084,12.240,12.531,12.959,13.499,14.107,14.724,15.286,15.741,
-16.056,16.222,16.260,16.209,16.123,16.056,16.047,16.118,16.265,16.463,16.673,16.850,16.961,16.986,16.927,16.801,
-16.637,16.464,16.302,16.158,16.023,15.880,15.704,15.478,15.195,14.860,14.491,14.111,13.749,13.424,13.151,12.934,
-12.769,12.648,12.559,12.487,12.420,12.345,12.251,12.127,11.966,11.765,11.521,11.238,10.923,10.582,10.226,9.866,
-9.510,9.170,8.853,8.566,8.312,8.091,7.900,7.732,7.576,7.421,7.258,7.075,6.866,6.627,6.357,6.060,
-5.743,5.417,5.096,4.796,4.529,4.303,4.120,3.975,3.860,3.761,3.670,3.577,3.480,3.378,3.271,3.155,
-3.023,2.864,2.665,2.417,2.113,1.759,1.365,.947,.519,.092,-.332,-.755,-1.189,-1.642,-2.122,-2.632,
--3.167,-3.722,-4.286,-4.855,-5.422,-5.987,-6.549,-7.106,-7.657,-8.198,-8.723,-9.230,-9.714,-10.173,-10.605,-11.010,
--11.389,-11.744,-12.085,-12.428,-12.792,-13.200,-13.672,-14.215,-14.819,-15.460,-16.098,-16.692,-17.211,-17.640,-17.991,-18.297,
--18.600,-18.941,-19.344,-19.810,-20.315,-20.823,-21.297,-21.714,-22.071,-22.390,-22.700,-23.034,-23.407,-23.816,-24.237,-24.634,
--24.979,-25.255,-25.471,-25.656,-25.848,-26.083,-26.379,-26.733,-27.121,-27.506,-27.854,-28.143,-28.366,-28.536,-28.676,-28.809,
--28.955,-29.124,-29.318,-29.539,-29.790,-30.078,-30.411,-30.794,-31.225,-31.686,-32.149,-32.582,-32.956,-33.253,-33.477,-33.648,
--33.803,-33.982,-34.220,-34.540,-34.944,-35.419,-35.941,-36.476,-36.995,-37.474,-37.899,-38.266,-38.583,-38.865,-39.134,-39.410,
--39.714,-40.058,-40.446,-40.872,-41.322,-41.778,-42.218,-42.627,-42.997,-43.324,-43.613,-43.868,-44.094,-44.294,-44.465,-44.603,
--44.704,-44.767,-44.792,-44.785,-44.751,-44.697,-44.627,-44.542,-44.441,-44.323,-44.186,-44.031,-43.863,-43.692,-43.530,-43.389,
--43.280,-43.211,-43.179,-43.176,-43.185,-43.186,-43.158,-43.089,-42.974,-42.821,-42.648,-42.477,-42.330,-42.221,-42.153,-42.119,
--42.104,-42.091,-42.065,-42.018,-41.949,-41.862,-41.763,-41.654,-41.536,-41.404,-41.253,-41.080,-40.885,-40.673,-40.451,-40.227,
--40.006,-39.793,-39.588,-39.393,-39.212,-39.052,-38.922,-38.829,-38.775,-38.756,-38.755,-38.753,-38.725,-38.649,-38.509,-38.300,
--38.025,-37.697,-37.335,-36.960,-36.591,-36.245,-35.932,-35.652,-35.396,-35.147,-34.883,-34.582,-34.231,-33.829,-33.389,-32.940,
--32.518,-32.157,-31.879,-31.687,-31.564,-31.478,-31.390,-31.265,-31.083,-30.841,-30.552,-30.235,-29.908,-29.580,-29.247,-28.894,
--28.501,-28.051,-27.536,-26.957,-26.325,-25.649,-24.935,-24.183,-23.379,-22.510,-21.563,-20.537,-19.446,-18.320,-17.200,-16.132,
--15.161,-14.316,-13.615,-13.052,-12.608,-12.244,-11.913,-11.563,-11.145,-10.618,-9.960,-9.168,-8.266,-7.294,-6.308,-5.369,
--4.527,-3.817,-3.256,-2.837,-2.542,-2.342,-2.209,-2.114,-2.029,-1.919,-1.742,-1.448,-.978,-.284,.667,1.872,
-3.290,4.839,6.415,7.902,9.204,10.256,11.038,11.576,11.927,12.162,12.351,12.547,12.781,13.058,13.375,13.719,
-14.085,14.474,14.892,15.348,15.849,16.392,16.969,17.564,18.158,18.735,19.283,19.799,20.285,20.754,21.224,21.718,
-22.262,22.875,23.569,24.336,25.150,25.970,26.743,27.417,27.959,28.362,28.652,28.883,29.126,29.449,29.906,30.517,
-31.273,32.137,33.058,33.991,34.901,35.779,36.631,37.478,38.341,39.233,40.153,41.091,42.028,42.943,43.821,44.656,
-45.444,46.189,46.892,47.555,48.175,48.748,49.270,49.735,50.136,50.460,50.686,50.789,50.738,50.511,50.099,49.518,
-48.814,48.059,47.344,46.764,46.402,46.311,46.509,46.970,47.635,48.425,49.254,50.046,50.746,51.326,51.781,52.123,
-52.371,52.543,52.653,52.706,52.704,52.650,52.556,52.441,52.333,52.263,52.260,52.339,52.507,52.751,53.049,53.375,
-53.703,54.015,54.304,54.572,54.828,55.084,55.351,55.639,55.951,56.288,56.649,57.032,57.431,57.842,58.260,58.680,
-59.096,59.504,59.900,60.283,60.650,60.999,61.328,61.632,61.914,62.174,62.422,62.669,62.926,63.202,63.500,63.811,
-64.121,64.412,64.666,64.875,65.038,65.165,65.274,65.379,65.489,65.604,65.714,65.806,65.865,65.887,65.874,65.837,
-65.790,65.746,65.712,65.685,65.661,65.631,65.592,65.548,65.506,65.475,65.460,65.458,65.457,65.437,65.379,65.269,
-65.106,64.899,64.669,64.437,64.222,64.035,63.874,63.729,63.584,63.424,63.241,63.031,62.801,62.562,62.328,62.116,
-61.938,61.804,61.722,61.692,61.711,61.768,61.847,61.930,61.995,62.023,62.000,61.917,61.772,61.568,61.314,61.025,
-60.715,60.405,60.112,59.849,59.620,59.419,59.228,59.016,58.753,58.411,57.976,57.453,56.864,56.247,55.639,55.074,
-54.569,54.125,53.729,53.364,53.015,52.679,52.365,52.089,51.867,51.705,51.598,51.528,51.469,51.393,51.286,51.143,
-50.972,50.787,50.602,50.425,50.257,50.089,49.913,49.720,49.510,49.288,49.061,48.922,48.674,48.427,48.184,47.947,
-47.715,47.488,47.261,47.033,46.795,46.540,46.258,45.941,45.592,45.226,44.869,44.558,44.329,44.205,44.195,44.282,
-44.432,44.603,44.754,44.856,44.895,44.874,44.800,44.683,44.525,44.322,44.067,43.755,43.393,42.997,42.589,42.192,
-41.823,41.482,41.158,40.829,40.474,40.078,39.641,39.171,38.682,38.186,37.686,37.175,36.639,36.066,35.455,34.816,
-34.175,33.567,33.027,32.580,32.235,31.983,31.800,31.657,31.518,31.354,31.140,30.862,30.507,30.073,29.559,28.972,
-28.321,27.622,26.887,26.129,25.358,24.578,23.792,23.005,22.225,21.469,20.758,20.112,19.549,19.080,18.705,18.414,
-18.193,18.029,17.908,17.824,17.773,17.754,17.762,17.790,17.829,17.871,17.907,17.935,17.956,17.975,17.995,18.018,
-18.042,18.063,18.081,18.094,18.107,18.123,18.145,18.170,18.190,18.193,18.167,18.105,18.008,17.888,17.760,17.641,
-17.542,17.460,17.385,17.296,17.174,17.004,16.784,16.527,16.252,15.983,15.741,15.539,15.379,15.254,15.149,15.051,
-14.946,14.826,14.690,14.544,14.397,14.265,14.164,14.105,14.095,14.129,14.189,14.250,14.280,14.252,14.153,13.984,
-13.765,13.530,13.314,13.145,13.034,12.975,12.945,12.918,12.868,12.782,12.661,12.514,12.359,12.208,12.068,11.938,
-11.813,11.692,11.577,11.477,11.404,11.362,11.344,11.327,11.280,11.167,10.964,10.668,10.301,9.905,9.536,9.246,
-9.067,9.009,9.055,9.166,9.298,9.410,9.473,9.476,9.419,9.310,9.159,8.970,8.742,8.471,8.153,7.786,
-7.375,6.931,6.467,5.997,5.533,5.080,4.641,4.214,3.797,3.390,2.995,2.622,2.281,1.984,1.742,1.557,
-1.423,1.325,1.241,1.147,1.025,.863,.665,.439,.200,-.041,-.281,-.528,-.791,-1.077,-1.382,-1.682,
--1.943,-2.125,-2.196,-2.150,-2.012,-1.838,-1.701,-1.674,-1.808,-2.121,-2.595,-3.180,-3.819,-4.456,-5.058,-5.616,
--6.139,-6.646,-7.151,-7.657,-8.151,-8.617,-9.037,-9.406,-9.726,-10.011,-10.276,-10.528,-10.766,-10.980,-11.158,-11.294,
--11.395,-11.480,-11.578,-11.715,-11.910,-12.165,-12.466,-12.789,-13.112,-13.420,-13.707,-13.981,-14.255,-14.542,-14.846,-15.166,
--15.491,-15.813,-16.126,-16.429,-16.730,-17.034,-17.346,-17.662,-17.972,-18.262,-18.523,-18.749,-18.946,-19.126,-19.304,-19.493,
--19.698,-19.912,-20.122,-20.313,-20.475,-20.608,-20.721,-20.834,-20.967,-21.134,-21.337,-21.562,-21.785,-21.974,-22.106,-22.169,
--22.167,-22.124,-22.074,-22.049,-22.075,-22.159,-22.289,-22.441,-22.582,-22.686,-22.740,-22.751,-22.740,-22.738,-22.775,-22.872,
--23.032,-23.240,-23.467,-23.677,-23.839,-23.930,-23.945,-23.898,-23.813,-23.727,-23.676,-23.693,-23.796,-23.987,-24.250,-24.551,
--24.851,-25.108,-25.293,-25.393,-25.419,-25.399,-25.376,-25.389,-25.464,-25.608,-25.804,-26.017,-26.208,-26.343,-26.407,-26.405,
--26.357,-26.297,-26.252,-26.239,-26.262,-26.305,-26.347,-26.368,-26.354,-26.305,-26.232,-26.155,-26.096,-26.074,-26.102,-26.189,
--26.334,-26.534,-26.782,-27.067,-27.379,-27.701,-28.019,-28.315,-28.578,-28.799,-28.972,-29.096,-29.174,-29.211,-29.212,-29.187,
--29.151,-29.121,-29.115,-29.152,-29.242,-29.383,-29.559,-29.743,-29.899,-29.995,-30.009,-29.937,-29.791,-29.603,-29.410,-29.251,
--29.154,-29.132,-29.182,-29.287,-29.421,-29.554,-29.660,-29.720,-29.725,-29.675,-29.578,-29.449,-29.307,-29.169,-29.048,-28.953,
--28.884,-28.832,-28.786,-28.732,-28.661,-28.565,-28.442,-28.293,-28.119,-27.920,-27.691,-27.428,-27.127,-26.789,-26.421,-26.038,
--25.658,-25.298,-24.973,-24.688,-24.439,-24.220,-24.018,-23.826,-23.637,-23.451,-23.269,-23.091,-22.916,-22.740,-22.559,-22.374,
--22.190,-22.019,-21.879,-21.787,-21.754,-21.783,-21.864,-21.979,-22.104,-22.213,-22.287,-22.313,-22.281,-22.188,-22.028,-21.797,
--21.491,-21.113,-20.671,-20.189,-19.697,-19.232,-18.831,-18.517,-18.297,-18.160,-18.075,-18.004,-17.905,-17.749,-17.520,-17.220,
--16.867,-16.489,-16.116,-15.774,-15.479,-15.233,-15.030,-14.855,-14.693,-14.527,-14.349,-14.155,-13.948,-13.734,-13.520,-13.313,
--13.116,-12.930,-12.755,-12.589,-12.432,-12.286,-12.149,-12.025,-11.910,-11.803,-11.701,-11.603,-11.508,-11.423,-11.352,-11.301,
--11.270,-11.249,-11.219,-11.152,-11.019,-10.798,-10.479,-10.068,-9.592,-9.088,-8.597,-8.155,-7.778,-7.466,-7.198,-6.941,
--6.663,-6.338,-5.959,-5.531,-5.075,-4.611,-4.154,-3.707,-3.254,-2.767,-2.212,-1.566,-.817,.022,.923,1.842,
-2.735,3.565,4.310,4.965,5.537,6.039,6.480,6.863,7.183,7.430,7.597,7.686,7.713,7.702,7.682,7.680,
-7.711,7.776,7.864,7.959,8.046,8.124,8.202,8.303,8.453,8.674,8.969,9.324,9.707,10.072,10.376,10.585,
-10.689,10.697,10.642,10.567,10.514,10.517,10.593,10.739,10.935,11.151,11.355,11.519,11.628,11.678,11.679,11.650,
-11.611,11.583,11.580,11.606,11.657,11.721,11.780,11.815,11.809,11.755,11.652,11.512,11.356,11.210,11.102,11.055,
-11.082,11.184,11.350,11.557,11.776,11.981,12.151,12.273,12.349,12.388,12.408,12.427,12.461,12.517,12.598,12.699,
-12.808,12.914,13.004,13.068,13.104,13.109,13.088,13.047,12.992,12.931,12.866,12.799,12.728,12.652,12.567,12.474,
-12.375,12.274,12.177,12.088,12.010,11.942,11.882,11.825,11.771,11.719,11.674,11.642,11.629,11.634,11.650,11.665,
-11.657,11.608,11.501,11.329,11.097,10.822,10.530,10.249,10.004,9.812,9.677,9.596,9.554,9.535,9.523,9.505,
-9.475,9.429,9.369,9.296,9.213,9.120,9.020,8.914,8.806,8.699,8.596,8.497,8.399,8.295,8.179,8.044,
-7.891,7.727,7.561,7.410,7.285,7.190,7.120,7.059,6.985,6.875,6.716,6.504,6.251,5.982,5.725,5.506,
-5.341,5.229,5.154,5.092,5.014,4.898,4.736,4.536,4.319,4.119,3.966,3.886,3.886,3.959,4.078,4.209,
-4.314,4.366,4.350,4.277,4.171,4.070,4.013,4.029,4.127,4.297,4.508,4.722,4.901,5.022,5.079,5.083,
-5.061,5.041,5.043,5.078,5.141,5.219,5.297,5.365,5.422,5.475,5.535,5.610,5.702,5.804,5.902,5.981,
-6.033,6.058,6.062,6.062,6.070,6.096,6.141,6.198,6.256,6.308,6.346,6.373,6.394,6.414,6.439,6.471,
-6.508,6.551,6.598,6.655,6.728,6.824,6.949,7.104,7.286,7.488,7.703,7.926,8.155,8.391,8.637,8.892,
-9.155,9.419,9.676,9.916,10.134,10.325,10.487,10.618,10.714,10.770,10.780,10.745,10.668,10.563,10.452,10.361,
-10.314,10.326,10.403,10.534,10.698,10.870,11.023,11.138,11.206,11.231,11.227,11.215,11.216,11.247,11.317,11.426,
-11.563,11.713,11.861,11.998,12.127,12.263,12.433,12.668,12.995,13.428,13.959,14.557,15.174,15.749,16.222,16.549,
-16.710,16.709,16.578,16.367,16.132,15.925,15.786,15.736,15.778,15.899,16.072,16.270,16.465,16.637,16.777,16.884,
-16.963,17.023,17.073,17.113,17.138,17.134,17.083,16.967,16.769,16.485,16.118,15.683,15.204,14.710,14.229,13.787,
-13.404,13.090,12.847,12.667,12.536,12.435,12.345,12.247,12.128,11.980,11.803,11.599,11.370,11.120,10.850,10.560,
-10.250,9.923,9.585,9.245,8.918,8.615,8.344,8.109,7.904,7.718,7.537,7.346,7.135,6.896,6.629,6.337,
-6.029,5.715,5.405,5.109,4.834,4.585,4.360,4.154,3.962,3.774,3.586,3.397,3.209,3.031,2.868,2.726,
-2.603,2.490,2.372,2.234,2.062,1.849,1.597,1.313,1.010,.694,.370,.032,-.327,-.720,-1.152,-1.626,
--2.133,-2.662,-3.199,-3.733,-4.260,-4.783,-5.312,-5.857,-6.423,-7.012,-7.620,-8.235,-8.846,-9.438,-10.000,-10.522,
--10.996,-11.420,-11.793,-12.125,-12.433,-12.746,-13.096,-13.513,-14.018,-14.614,-15.279,-15.976,-16.656,-17.272,-17.796,-18.223,
--18.573,-18.886,-19.207,-19.570,-19.991,-20.462,-20.957,-21.445,-21.901,-22.317,-22.705,-23.085,-23.480,-23.903,-24.347,-24.790,
--25.199,-25.548,-25.825,-26.041,-26.222,-26.408,-26.629,-26.902,-27.220,-27.558,-27.884,-28.169,-28.397,-28.572,-28.714,-28.849,
--29.000,-29.180,-29.389,-29.619,-29.861,-30.112,-30.378,-30.672,-31.007,-31.389,-31.810,-32.249,-32.673,-33.053,-33.368,-33.614,
--33.810,-33.987,-34.185,-34.437,-34.766,-35.174,-35.647,-36.160,-36.678,-37.173,-37.622,-38.017,-38.358,-38.660,-38.941,-39.223,
--39.525,-39.859,-40.231,-40.635,-41.059,-41.487,-41.904,-42.296,-42.658,-42.988,-43.290,-43.569,-43.829,-44.068,-44.285,-44.476,
--44.638,-44.772,-44.879,-44.965,-45.032,-45.083,-45.114,-45.123,-45.106,-45.061,-44.990,-44.897,-44.792,-44.681,-44.572,-44.472,
--44.384,-44.312,-44.259,-44.225,-44.208,-44.201,-44.193,-44.170,-44.120,-44.034,-43.914,-43.769,-43.617,-43.475,-43.360,-43.279,
--43.227,-43.192,-43.158,-43.110,-43.038,-42.941,-42.823,-42.692,-42.553,-42.410,-42.261,-42.103,-41.932,-41.748,-41.554,-41.356,
--41.158,-40.963,-40.769,-40.576,-40.383,-40.193,-40.013,-39.853,-39.722,-39.620,-39.544,-39.480,-39.408,-39.310,-39.172,-38.989,
--38.764,-38.505,-38.226,-37.937,-37.646,-37.354,-37.063,-36.769,-36.472,-36.168,-35.852,-35.517,-35.156,-34.762,-34.338,-33.892,
--33.446,-33.029,-32.668,-32.386,-32.187,-32.058,-31.970,-31.883,-31.759,-31.572,-31.310,-30.982,-30.607,-30.209,-29.808,-29.413,
--29.023,-28.626,-28.210,-27.763,-27.278,-26.754,-26.189,-25.579,-24.917,-24.191,-23.388,-22.499,-21.526,-20.484,-19.396,-18.298,
--17.224,-16.209,-15.279,-14.452,-13.735,-13.126,-12.612,-12.173,-11.779,-11.392,-10.972,-10.483,-9.897,-9.203,-8.412,-7.555,
--6.677,-5.831,-5.062,-4.404,-3.869,-3.453,-3.132,-2.874,-2.644,-2.405,-2.122,-1.759,-1.280,-.648,.166,1.177,
-2.376,3.724,5.155,6.580,7.906,9.051,9.963,10.626,11.065,11.335,11.507,11.648,11.814,12.036,12.323,12.669,
-13.061,13.484,13.930,14.396,14.882,15.388,15.913,16.453,17.004,17.560,18.116,18.668,19.210,19.737,20.243,20.729,
-21.201,21.676,22.183,22.750,23.402,24.147,24.970,25.833,26.678,27.449,28.100,28.614,29.004,29.319,29.623,29.985,
-30.462,31.082,31.848,32.738,33.713,34.735,35.770,36.796,37.803,38.791,39.762,40.716,41.653,42.566,43.449,44.295,
-45.098,45.856,46.567,47.233,47.858,48.442,48.986,49.485,49.925,50.284,50.531,50.632,50.556,50.285,49.823,49.202,
-48.484,47.750,47.092,46.595,46.323,46.308,46.545,46.995,47.596,48.271,48.949,49.571,50.101,50.525,50.851,51.096,
-51.285,51.436,51.562,51.667,51.746,51.797,51.819,51.821,51.823,51.847,51.920,52.062,52.279,52.567,52.906,53.268,
-53.624,53.954,54.247,54.503,54.737,54.966,55.209,55.480,55.787,56.131,56.508,56.912,57.335,57.770,58.208,58.641,
-59.062,59.466,59.850,60.216,60.567,60.910,61.246,61.577,61.896,62.197,62.472,62.720,62.944,63.157,63.372,63.603,
-63.855,64.126,64.403,64.669,64.909,65.113,65.278,65.411,65.519,65.608,65.680,65.726,65.740,65.714,65.652,65.562,
-65.465,65.380,65.320,65.286,65.267,65.239,65.178,65.068,64.905,64.704,64.490,64.294,64.140,64.040,63.990,63.970,
-63.956,63.923,63.854,63.743,63.595,63.421,63.231,63.034,62.832,62.621,62.400,62.166,61.925,61.686,61.466,61.282,
-61.150,61.081,61.076,61.132,61.235,61.368,61.511,61.643,61.749,61.815,61.836,61.806,61.727,61.599,61.426,61.212,
-60.967,60.701,60.433,60.179,59.955,59.768,59.611,59.466,59.302,59.086,58.791,58.404,57.931,57.398,56.841,56.295,
-55.787,55.324,54.900,54.492,54.081,53.655,53.218,52.791,52.401,52.076,51.831,51.662,51.547,51.454,51.351,51.216,
-51.041,50.836,50.619,50.410,50.221,50.055,49.901,49.746,49.575,49.380,49.160,48.922,49.071,48.846,48.594,48.327,
-48.060,47.808,47.580,47.382,47.210,47.055,46.899,46.723,46.513,46.267,45.995,45.723,45.481,45.298,45.192,45.161,
-45.186,45.233,45.267,45.259,45.196,45.079,44.923,44.742,44.547,44.341,44.117,43.868,43.589,43.288,42.982,42.689,
-42.426,42.194,41.979,41.754,41.486,41.147,40.724,40.220,39.656,39.058,38.451,37.851,37.262,36.681,36.102,35.525,
-34.957,34.413,33.909,33.457,33.061,32.717,32.412,32.132,31.863,31.594,31.314,31.010,30.666,30.262,29.776,29.195,
-28.517,27.753,26.929,26.079,25.233,24.413,23.627,22.875,22.149,21.447,20.776,20.150,19.592,19.124,18.758,18.491,
-18.308,18.185,18.097,18.024,17.958,17.901,17.863,17.852,17.872,17.921,17.990,18.065,18.137,18.197,18.241,18.269,
-18.282,18.279,18.263,18.235,18.202,18.171,18.152,18.152,18.171,18.201,18.226,18.227,18.188,18.102,17.972,17.814,
-17.648,17.493,17.359,17.245,17.140,17.023,16.877,16.690,16.460,16.200,15.930,15.675,15.455,15.283,15.159,15.075,
-15.009,14.938,14.838,14.693,14.503,14.279,14.049,13.847,13.708,13.654,13.688,13.789,13.918,14.025,14.061,14.000,
-13.837,13.596,13.320,13.057,12.845,12.701,12.618,12.573,12.532,12.468,12.369,12.238,12.092,11.951,11.827,11.722,
-11.629,11.534,11.431,11.323,11.223,11.151,11.118,11.125,11.149,11.154,11.097,10.943,10.682,10.329,9.927,9.533,
-9.205,8.983,8.880,8.886,8.968,9.087,9.208,9.307,9.374,9.408,9.409,9.376,9.298,9.160,8.944,8.639,
-8.245,7.774,7.246,6.688,6.126,5.580,5.060,4.571,4.107,3.661,3.229,2.810,2.411,2.044,1.727,1.477,
-1.304,1.208,1.175,1.179,1.186,1.164,1.089,.951,.755,.517,.252,-.027,-.318,-.628,-.960,-1.311,
--1.662,-1.979,-2.218,-2.346,-2.347,-2.242,-2.081,-1.938,-1.889,-1.991,-2.267,-2.706,-3.265,-3.889,-4.528,-5.154,
--5.758,-6.349,-6.940,-7.533,-8.116,-8.664,-9.146,-9.540,-9.843,-10.071,-10.252,-10.417,-10.584,-10.758,-10.929,-11.079,
--11.199,-11.292,-11.378,-11.491,-11.661,-11.910,-12.235,-12.618,-13.026,-13.425,-13.790,-14.117,-14.412,-14.697,-14.989,-15.301,
--15.634,-15.978,-16.322,-16.655,-16.973,-17.278,-17.577,-17.878,-18.181,-18.482,-18.770,-19.035,-19.272,-19.480,-19.665,-19.840,
--20.015,-20.196,-20.382,-20.567,-20.741,-20.898,-21.034,-21.155,-21.271,-21.398,-21.546,-21.722,-21.919,-22.123,-22.314,-22.470,
--22.578,-22.633,-22.648,-22.644,-22.649,-22.687,-22.774,-22.907,-23.072,-23.244,-23.395,-23.508,-23.575,-23.606,-23.625,-23.657,
--23.725,-23.840,-23.998,-24.179,-24.354,-24.491,-24.567,-24.568,-24.501,-24.386,-24.259,-24.162,-24.133,-24.201,-24.374,-24.640,
--24.964,-25.294,-25.578,-25.773,-25.856,-25.835,-25.744,-25.637,-25.567,-25.578,-25.685,-25.874,-26.107,-26.333,-26.507,-26.602,
--26.615,-26.569,-26.501,-26.449,-26.437,-26.474,-26.548,-26.636,-26.711,-26.755,-26.761,-26.740,-26.708,-26.689,-26.703,-26.762,
--26.873,-27.034,-27.235,-27.468,-27.720,-27.977,-28.227,-28.459,-28.663,-28.833,-28.968,-29.070,-29.144,-29.196,-29.231,-29.252,
--29.264,-29.273,-29.287,-29.318,-29.376,-29.470,-29.600,-29.755,-29.917,-30.059,-30.155,-30.185,-30.141,-30.028,-29.866,-29.685,
--29.516,-29.388,-29.321,-29.322,-29.387,-29.498,-29.630,-29.755,-29.846,-29.883,-29.856,-29.769,-29.637,-29.481,-29.329,-29.202,
--29.113,-29.061,-29.036,-29.020,-28.993,-28.940,-28.853,-28.732,-28.584,-28.415,-28.228,-28.020,-27.786,-27.517,-27.208,-26.862,
--26.492,-26.115,-25.752,-25.420,-25.129,-24.880,-24.668,-24.482,-24.313,-24.151,-23.992,-23.834,-23.674,-23.508,-23.334,-23.146,
--22.946,-22.742,-22.547,-22.380,-22.260,-22.203,-22.214,-22.287,-22.406,-22.546,-22.677,-22.770,-22.797,-22.736,-22.571,-22.293,
--21.904,-21.417,-20.857,-20.265,-19.685,-19.167,-18.750,-18.461,-18.300,-18.249,-18.266,-18.299,-18.298,-18.218,-18.035,-17.743,
--17.356,-16.902,-16.419,-15.940,-15.497,-15.107,-14.779,-14.510,-14.288,-14.099,-13.927,-13.761,-13.594,-13.426,-13.262,-13.109,
--12.971,-12.852,-12.750,-12.656,-12.563,-12.462,-12.344,-12.207,-12.051,-11.877,-11.689,-11.491,-11.288,-11.084,-10.883,-10.689,
--10.505,-10.330,-10.156,-9.973,-9.764,-9.514,-9.213,-8.859,-8.459,-8.032,-7.605,-7.201,-6.843,-6.540,-6.290,-6.081,
--5.893,-5.707,-5.509,-5.292,-5.060,-4.821,-4.581,-4.341,-4.091,-3.806,-3.455,-3.004,-2.428,-1.714,-.874,.064,
-1.053,2.044,2.990,3.859,4.638,5.327,5.938,6.484,6.973,7.404,7.769,8.057,8.262,8.387,8.450,8.473,
-8.483,8.500,8.535,8.585,8.641,8.694,8.739,8.785,8.851,8.964,9.144,9.402,9.730,10.097,10.461,10.775,
-10.999,11.113,11.119,11.043,10.926,10.817,10.756,10.770,10.866,11.032,11.241,11.460,11.658,11.812,11.911,11.957,
-11.960,11.938,11.908,11.884,11.874,11.881,11.898,11.914,11.917,11.895,11.841,11.753,11.642,11.526,11.429,11.376,
-11.388,11.476,11.636,11.849,12.087,12.315,12.506,12.642,12.720,12.752,12.759,12.768,12.798,12.861,12.955,13.070,
-13.186,13.286,13.355,13.385,13.373,13.325,13.249,13.154,13.050,12.943,12.839,12.742,12.651,12.566,12.482,12.394,
-12.295,12.183,12.059,11.927,11.797,11.678,11.580,11.510,11.470,11.457,11.465,11.486,11.512,11.535,11.547,11.541,
-11.509,11.444,11.338,11.189,10.998,10.777,10.539,10.308,10.102,9.940,9.830,9.771,9.753,9.757,9.765,9.760,
-9.733,9.683,9.615,9.537,9.455,9.374,9.291,9.201,9.098,8.980,8.849,8.710,8.573,8.444,8.325,8.212,
-8.095,7.964,7.815,7.648,7.473,7.302,7.149,7.017,6.902,6.788,6.652,6.477,6.254,5.992,5.714,5.454,
-5.247,5.116,5.067,5.085,5.137,5.181,5.183,5.120,4.989,4.809,4.615,4.443,4.329,4.290,4.326,4.419,
-4.534,4.633,4.685,4.669,4.586,4.458,4.319,4.210,4.166,4.207,4.329,4.512,4.717,4.906,5.045,5.120,
-5.136,5.114,5.082,5.068,5.087,5.142,5.223,5.315,5.404,5.482,5.551,5.619,5.695,5.784,5.884,5.988,
-6.084,6.166,6.228,6.277,6.318,6.362,6.413,6.471,6.529,6.580,6.619,6.646,6.664,6.683,6.712,6.755,
-6.815,6.888,6.972,7.064,7.167,7.286,7.425,7.588,7.774,7.979,8.195,8.414,8.633,8.851,9.074,9.305,
-9.546,9.795,10.045,10.286,10.506,10.695,10.848,10.959,11.028,11.054,11.038,10.984,10.899,10.797,10.696,10.616,
-10.576,10.591,10.666,10.793,10.959,11.142,11.317,11.467,11.575,11.635,11.649,11.627,11.582,11.533,11.501,11.502,
-11.550,11.650,11.803,12.003,12.245,12.528,12.856,13.240,13.687,14.200,14.764,15.344,15.889,16.337,16.633,16.743,
-16.664,16.428,16.098,15.750,15.457,15.275,15.228,15.308,15.483,15.709,15.941,16.148,16.314,16.440,16.538,16.623,
-16.709,16.805,16.909,17.017,17.119,17.204,17.260,17.274,17.233,17.126,16.943,16.678,16.335,15.925,15.467,14.988,
-14.517,14.083,13.705,13.392,13.144,12.945,12.777,12.617,12.449,12.262,12.055,11.834,11.608,11.386,11.170,10.959,
-10.744,10.515,10.263,9.988,9.690,9.380,9.066,8.760,8.467,8.189,7.921,7.660,7.398,7.132,6.858,6.578,
-6.294,6.010,5.731,5.463,5.211,4.977,4.760,4.552,4.344,4.122,3.877,3.603,3.308,3.005,2.715,2.459,
-2.252,2.097,1.983,1.891,1.796,1.678,1.528,1.346,1.144,.938,.739,.546,.349,.126,-.146,-.485,
--.897,-1.377,-1.906,-2.461,-3.023,-3.581,-4.135,-4.695,-5.275,-5.886,-6.534,-7.213,-7.912,-8.615,-9.302,-9.958,
--10.569,-11.125,-11.617,-12.043,-12.405,-12.715,-12.997,-13.283,-13.612,-14.018,-14.522,-15.121,-15.791,-16.490,-17.166,-17.774,
--18.289,-18.710,-19.062,-19.383,-19.716,-20.092,-20.521,-20.997,-21.500,-22.007,-22.503,-22.983,-23.452,-23.919,-24.387,-24.852,
--25.296,-25.696,-26.036,-26.310,-26.527,-26.715,-26.901,-27.113,-27.362,-27.640,-27.926,-28.196,-28.429,-28.620,-28.777,-28.922,
--29.080,-29.267,-29.489,-29.736,-29.993,-30.247,-30.491,-30.734,-30.993,-31.287,-31.627,-32.014,-32.429,-32.844,-33.228,-33.559,
--33.828,-34.047,-34.240,-34.440,-34.678,-34.973,-35.333,-35.749,-36.202,-36.668,-37.125,-37.556,-37.955,-38.323,-38.668,-39.003,
--39.343,-39.697,-40.072,-40.465,-40.867,-41.266,-41.648,-42.004,-42.331,-42.630,-42.908,-43.175,-43.434,-43.686,-43.926,-44.146,
--44.341,-44.507,-44.649,-44.772,-44.887,-44.998,-45.105,-45.204,-45.287,-45.348,-45.384,-45.398,-45.396,-45.388,-45.378,-45.369,
--45.358,-45.340,-45.313,-45.277,-45.238,-45.203,-45.177,-45.158,-45.141,-45.113,-45.061,-44.980,-44.871,-44.745,-44.618,-44.503,
--44.411,-44.338,-44.275,-44.206,-44.116,-43.997,-43.849,-43.679,-43.497,-43.312,-43.130,-42.950,-42.770,-42.586,-42.400,-42.215,
--42.038,-41.871,-41.715,-41.566,-41.417,-41.260,-41.093,-40.917,-40.737,-40.560,-40.387,-40.213,-40.030,-39.827,-39.596,-39.338,
--39.063,-38.788,-38.530,-38.301,-38.102,-37.924,-37.747,-37.552,-37.323,-37.054,-36.747,-36.413,-36.062,-35.699,-35.326,-34.941,
--34.543,-34.140,-33.742,-33.371,-33.046,-32.779,-32.569,-32.401,-32.246,-32.071,-31.847,-31.554,-31.190,-30.769,-30.310,-29.839,
--29.377,-28.934,-28.514,-28.113,-27.720,-27.324,-26.912,-26.469,-25.980,-25.430,-24.806,-24.099,-23.308,-22.441,-21.514,-20.549,
--19.568,-18.593,-17.637,-16.711,-15.822,-14.976,-14.184,-13.456,-12.803,-12.228,-11.724,-11.270,-10.835,-10.381,-9.875,-9.296,
--8.640,-7.924,-7.181,-6.448,-5.760,-5.137,-4.583,-4.085,-3.618,-3.152,-2.657,-2.109,-1.488,-.776,.041,.971,
-2.019,3.171,4.397,5.647,6.855,7.950,8.873,9.587,10.087,10.404,10.593,10.723,10.859,11.047,11.313,11.659,
-12.072,12.533,13.024,13.532,14.050,14.576,15.105,15.632,16.150,16.657,17.155,17.652,18.157,18.674,19.203,19.733,
-20.247,20.732,21.184,21.619,22.070,22.578,23.185,23.912,24.755,25.675,26.612,27.494,28.261,28.878,29.348,29.711,
-30.034,30.397,30.872,31.509,32.328,33.318,34.441,35.645,36.870,38.066,39.196,40.241,41.199,42.081,42.905,43.688,
-44.442,45.171,45.873,46.544,47.180,47.780,48.346,48.878,49.366,49.788,50.105,50.269,50.233,49.966,49.470,48.787,
-47.998,47.212,46.545,46.098,45.931,46.057,46.438,47.000,47.648,48.290,48.856,49.304,49.628,49.847,49.993,50.104,
-50.213,50.340,50.491,50.664,50.849,51.034,51.210,51.371,51.522,51.671,51.831,52.018,52.240,52.503,52.802,53.125,
-53.456,53.779,54.082,54.361,54.622,54.874,55.132,55.408,55.710,56.041,56.400,56.784,57.190,57.614,58.052,58.499,
-58.946,59.383,59.799,60.190,60.554,60.895,61.223,61.545,61.867,62.186,62.493,62.778,63.030,63.249,63.440,63.619,
-63.803,64.004,64.228,64.469,64.711,64.937,65.130,65.281,65.390,65.461,65.500,65.510,65.492,65.444,65.367,65.264,
-65.152,65.046,64.965,64.916,64.895,64.879,64.838,64.740,64.563,64.308,63.994,63.663,63.360,63.129,62.992,62.948,
-62.976,63.035,63.083,63.085,63.022,62.890,62.701,62.476,62.232,61.986,61.743,61.507,61.279,61.065,60.873,60.720,
-60.621,60.591,60.635,60.749,60.914,61.107,61.298,61.463,61.582,61.647,61.659,61.627,61.560,61.466,61.349,61.207,
-61.037,60.840,60.621,60.391,60.167,59.965,59.795,59.656,59.534,59.403,59.237,59.011,58.715,58.355,57.948,57.523,
-57.102,56.698,56.310,55.923,55.515,55.071,54.587,54.078,53.572,53.105,52.708,52.397,52.165,51.989,51.832,51.659,
-51.446,51.187,50.895,50.595,50.315,50.077,49.891,49.750,49.639,49.533,49.412,49.261,49.071,49.366,49.204,48.976,
-48.704,48.415,48.141,47.909,47.732,47.608,47.520,47.438,47.333,47.182,46.975,46.723,46.450,46.188,45.967,45.802,
-45.691,45.616,45.546,45.454,45.321,45.144,44.936,44.717,44.507,44.320,44.157,44.010,43.869,43.726,43.579,43.433,
-43.294,43.159,43.015,42.836,42.592,42.252,41.801,41.240,40.590,39.886,39.167,38.462,37.793,37.167,36.583,36.037,
-35.529,35.059,34.629,34.236,33.872,33.522,33.168,32.797,32.407,32.003,31.599,31.204,30.816,30.418,29.976,29.454,
-28.823,28.072,27.219,26.305,25.382,24.504,23.705,22.999,22.375,21.811,21.281,20.772,20.286,19.838,19.449,19.136,
-18.901,18.733,18.610,18.505,18.400,18.289,18.176,18.079,18.014,17.992,18.016,18.078,18.163,18.255,18.339,18.406,
-18.449,18.464,18.452,18.413,18.352,18.279,18.208,18.153,18.127,18.135,18.173,18.223,18.263,18.269,18.224,18.124,
-17.976,17.801,17.621,17.453,17.307,17.178,17.052,16.910,16.736,16.522,16.271,16.001,15.736,15.499,15.312,15.182,
-15.100,15.044,14.983,14.884,14.722,14.492,14.208,13.908,13.639,13.451,13.376,13.420,13.558,13.740,13.903,13.987,
-13.957,13.807,13.563,13.272,12.986,12.746,12.567,12.442,12.345,12.245,12.123,11.972,11.808,11.652,11.526,11.440,
-11.387,11.349,11.304,11.238,11.153,11.063,10.993,10.959,10.964,10.988,10.994,10.937,10.784,10.523,10.171,9.772,
-9.384,9.061,8.840,8.730,8.719,8.773,8.858,8.945,9.018,9.074,9.116,9.145,9.152,9.122,9.030,8.854,
-8.578,8.200,7.731,7.192,6.610,6.013,5.423,4.856,4.322,3.824,3.362,2.934,2.537,2.171,1.840,1.554,
-1.322,1.157,1.065,1.039,1.061,1.104,1.133,1.118,1.039,.891,.683,.429,.143,-.169,-.512,-.890,
--1.303,-1.731,-2.139,-2.477,-2.699,-2.774,-2.708,-2.544,-2.355,-2.226,-2.229,-2.409,-2.769,-3.278,-3.885,-4.541,
--5.207,-5.869,-6.524,-7.178,-7.825,-8.447,-9.014,-9.494,-9.866,-10.130,-10.307,-10.434,-10.548,-10.676,-10.824,-10.983,
--11.134,-11.267,-11.386,-11.511,-11.676,-11.910,-12.228,-12.624,-13.068,-13.521,-13.945,-14.318,-14.637,-14.920,-15.197,-15.495,
--15.829,-16.196,-16.582,-16.964,-17.322,-17.643,-17.930,-18.191,-18.442,-18.696,-18.957,-19.225,-19.492,-19.748,-19.986,-20.200,
--20.391,-20.562,-20.719,-20.868,-21.012,-21.152,-21.288,-21.418,-21.543,-21.668,-21.796,-21.936,-22.095,-22.275,-22.472,-22.675,
--22.866,-23.028,-23.146,-23.217,-23.250,-23.267,-23.294,-23.357,-23.470,-23.633,-23.832,-24.039,-24.227,-24.375,-24.475,-24.535,
--24.573,-24.613,-24.676,-24.769,-24.889,-25.019,-25.133,-25.207,-25.222,-25.173,-25.072,-24.944,-24.826,-24.757,-24.771,-24.885,
--25.095,-25.372,-25.668,-25.928,-26.104,-26.166,-26.115,-25.984,-25.825,-25.698,-25.653,-25.713,-25.870,-26.087,-26.314,-26.501,
--26.618,-26.658,-26.642,-26.605,-26.584,-26.605,-26.678,-26.790,-26.918,-27.035,-27.123,-27.176,-27.201,-27.216,-27.243,-27.299,
--27.394,-27.530,-27.702,-27.898,-28.107,-28.315,-28.512,-28.687,-28.832,-28.944,-29.022,-29.074,-29.109,-29.139,-29.176,-29.226,
--29.291,-29.367,-29.450,-29.531,-29.610,-29.684,-29.759,-29.839,-29.927,-30.021,-30.115,-30.200,-30.261,-30.287,-30.270,-30.210,
--30.113,-29.994,-29.874,-29.774,-29.713,-29.701,-29.736,-29.804,-29.880,-29.938,-29.951,-29.904,-29.798,-29.649,-29.483,-29.330,
--29.215,-29.149,-29.129,-29.137,-29.147,-29.135,-29.083,-28.989,-28.857,-28.701,-28.532,-28.358,-28.174,-27.972,-27.741,-27.472,
--27.167,-26.834,-26.492,-26.157,-25.847,-25.570,-25.325,-25.109,-24.911,-24.727,-24.552,-24.384,-24.225,-24.073,-23.924,-23.770,
--23.607,-23.430,-23.243,-23.056,-22.886,-22.751,-22.668,-22.644,-22.678,-22.755,-22.851,-22.931,-22.959,-22.899,-22.720,-22.406,
--21.954,-21.384,-20.733,-20.060,-19.429,-18.906,-18.540,-18.358,-18.352,-18.486,-18.697,-18.912,-19.058,-19.080,-18.947,-18.652,
--18.217,-17.675,-17.071,-16.447,-15.840,-15.277,-14.775,-14.343,-13.981,-13.683,-13.441,-13.243,-13.080,-12.943,-12.828,-12.734,
--12.663,-12.613,-12.580,-12.557,-12.530,-12.484,-12.406,-12.283,-12.112,-11.894,-11.635,-11.343,-11.030,-10.704,-10.373,-10.042,
--9.715,-9.394,-9.078,-8.765,-8.451,-8.131,-7.800,-7.457,-7.101,-6.736,-6.369,-6.007,-5.657,-5.325,-5.015,-4.729,
--4.469,-4.235,-4.029,-3.850,-3.698,-3.570,-3.463,-3.368,-3.274,-3.163,-3.011,-2.790,-2.472,-2.031,-1.451,-.734,
-.102,1.020,1.974,2.913,3.797,4.599,5.312,5.944,6.513,7.036,7.524,7.975,8.381,8.725,8.997,9.193,
-9.320,9.395,9.438,9.467,9.493,9.521,9.551,9.581,9.616,9.665,9.743,9.867,10.044,10.273,10.538,10.810,
-11.057,11.244,11.352,11.375,11.326,11.234,11.136,11.068,11.060,11.124,11.260,11.451,11.672,11.893,12.090,12.245,
-12.347,12.397,12.403,12.375,12.326,12.268,12.210,12.158,12.111,12.066,12.018,11.959,11.886,11.804,11.723,11.663,
-11.647,11.693,11.814,12.005,12.247,12.508,12.752,12.948,13.078,13.141,13.156,13.150,13.155,13.192,13.269,13.378,
-13.498,13.602,13.666,13.675,13.626,13.525,13.387,13.229,13.067,12.911,12.768,12.641,12.530,12.435,12.350,12.273,
-12.196,12.114,12.021,11.915,11.799,11.679,11.565,11.467,11.394,11.352,11.340,11.352,11.381,11.416,11.448,11.466,
-11.462,11.429,11.362,11.257,11.116,10.942,10.747,10.544,10.353,10.189,10.065,9.987,9.952,9.949,9.961,9.975,
-9.977,9.965,9.939,9.908,9.879,9.852,9.823,9.779,9.704,9.585,9.418,9.209,8.979,8.751,8.550,8.387,
-8.260,8.152,8.039,7.894,7.702,7.458,7.176,6.874,6.573,6.287,6.017,5.757,5.498,5.238,4.984,4.759,
-4.590,4.505,4.516,4.619,4.785,4.972,5.135,5.236,5.257,5.199,5.084,4.941,4.805,4.699,4.637,4.617,
-4.628,4.655,4.681,4.691,4.677,4.639,4.581,4.517,4.464,4.437,4.452,4.513,4.616,4.747,4.884,5.005,
-5.097,5.152,5.177,5.185,5.193,5.215,5.258,5.320,5.396,5.476,5.556,5.635,5.716,5.804,5.901,6.005,
-6.111,6.211,6.301,6.377,6.444,6.508,6.573,6.643,6.713,6.778,6.833,6.874,6.904,6.932,6.969,7.022,
-7.099,7.197,7.313,7.441,7.577,7.720,7.876,8.047,8.236,8.442,8.657,8.874,9.083,9.282,9.470,9.655,
-9.844,10.042,10.252,10.467,10.679,10.874,11.039,11.164,11.242,11.268,11.244,11.178,11.080,10.969,10.866,10.793,
-10.767,10.798,10.886,11.019,11.179,11.345,11.497,11.623,11.717,11.778,11.808,11.814,11.801,11.780,11.764,11.771,
-11.821,11.932,12.113,12.363,12.672,13.021,13.391,13.768,14.147,14.526,14.900,15.254,15.560,15.774,15.854,15.769,
-15.517,15.136,14.702,14.313,14.065,14.031,14.238,14.659,15.223,15.834,16.393,16.826,17.096,17.205,17.187,17.088,
-16.958,16.833,16.731,16.659,16.614,16.592,16.594,16.619,16.666,16.727,16.785,16.816,16.792,16.687,16.490,16.203,
-15.844,15.443,15.034,14.646,14.297,13.993,13.724,13.474,13.224,12.963,12.684,12.392,12.099,11.816,11.554,11.314,
-11.092,10.879,10.662,10.433,10.184,9.915,9.628,9.325,9.010,8.686,8.356,8.026,7.701,7.388,7.093,6.818,
-6.559,6.313,6.072,5.831,5.589,5.351,5.121,4.903,4.693,4.479,4.247,3.978,3.664,3.309,2.933,2.564,
-2.237,1.978,1.794,1.676,1.597,1.522,1.424,1.286,1.113,.925,.749,.607,.507,.434,.361,.246,
-.055,-.235,-.631,-1.118,-1.673,-2.270,-2.889,-3.524,-4.175,-4.853,-5.564,-6.310,-7.083,-7.868,-8.644,-9.393,
--10.101,-10.756,-11.352,-11.883,-12.343,-12.727,-13.037,-13.283,-13.492,-13.702,-13.957,-14.297,-14.746,-15.306,-15.950,-16.636,
--17.310,-17.929,-18.467,-18.924,-19.323,-19.701,-20.092,-20.523,-21.002,-21.522,-22.064,-22.611,-23.148,-23.671,-24.180,-24.675,
--25.155,-25.608,-26.022,-26.383,-26.686,-26.935,-27.148,-27.344,-27.545,-27.760,-27.988,-28.221,-28.443,-28.646,-28.827,-28.998,
--29.172,-29.366,-29.589,-29.838,-30.101,-30.365,-30.618,-30.857,-31.092,-31.340,-31.619,-31.938,-32.297,-32.680,-33.065,-33.425,
--33.744,-34.017,-34.250,-34.464,-34.682,-34.925,-35.207,-35.533,-35.899,-36.297,-36.713,-37.137,-37.559,-37.974,-38.379,-38.776,
--39.166,-39.554,-39.944,-40.337,-40.730,-41.115,-41.483,-41.826,-42.136,-42.415,-42.666,-42.901,-43.127,-43.352,-43.576,-43.793,
--43.996,-44.180,-44.343,-44.490,-44.631,-44.774,-44.925,-45.085,-45.246,-45.397,-45.532,-45.645,-45.740,-45.823,-45.900,-45.976,
--46.047,-46.105,-46.142,-46.153,-46.140,-46.113,-46.084,-46.065,-46.060,-46.063,-46.062,-46.041,-45.990,-45.908,-45.802,-45.687,
--45.578,-45.483,-45.399,-45.313,-45.210,-45.076,-44.903,-44.696,-44.466,-44.227,-43.991,-43.762,-43.540,-43.320,-43.100,-42.882,
--42.673,-42.483,-42.322,-42.189,-42.080,-41.980,-41.874,-41.748,-41.596,-41.416,-41.210,-40.980,-40.725,-40.441,-40.125,-39.779,
--39.416,-39.057,-38.726,-38.447,-38.231,-38.073,-37.951,-37.835,-37.690,-37.495,-37.242,-36.939,-36.604,-36.260,-35.919,-35.585,
--35.248,-34.896,-34.518,-34.113,-33.693,-33.279,-32.892,-32.549,-32.256,-32.001,-31.764,-31.517,-31.237,-30.909,-30.531,-30.109,
--29.660,-29.204,-28.756,-28.331,-27.934,-27.565,-27.218,-26.880,-26.532,-26.153,-25.720,-25.216,-24.629,-23.960,-23.220,-22.430,
--21.612,-20.787,-19.966,-19.150,-18.332,-17.504,-16.658,-15.798,-14.940,-14.110,-13.335,-12.638,-12.028,-11.498,-11.023,-10.568,
--10.099,-9.590,-9.028,-8.417,-7.770,-7.103,-6.430,-5.754,-5.066,-4.354,-3.605,-2.811,-1.972,-1.091,-.175,.771,
-1.751,2.768,3.821,4.899,5.972,6.993,7.906,8.662,9.227,9.602,9.817,9.934,10.023,10.150,10.361,10.675,
-11.081,11.557,12.073,12.605,13.143,13.684,14.230,14.780,15.327,15.862,16.373,16.860,17.329,17.797,18.281,18.791,
-19.322,19.857,20.366,20.829,21.237,21.609,21.988,22.430,22.989,23.697,24.551,25.512,26.512,27.467,28.307,28.988,
-29.508,29.908,30.262,30.662,31.190,31.908,32.837,33.956,35.209,36.518,37.804,38.998,40.062,40.990,41.803,42.538,
-43.235,43.924,44.618,45.313,45.998,46.660,47.292,47.894,48.466,48.996,49.452,49.781,49.917,49.804,49.410,48.757,
-47.923,47.036,46.250,45.708,45.511,45.689,46.199,46.936,47.760,48.535,49.156,49.570,49.781,49.837,49.806,49.760,
-49.753,49.812,49.942,50.130,50.355,50.599,50.846,51.090,51.328,51.560,51.789,52.018,52.249,52.487,52.736,52.997,
-53.271,53.555,53.845,54.139,54.434,54.731,55.035,55.348,55.674,56.015,56.369,56.735,57.112,57.503,57.909,58.333,
-58.775,59.228,59.682,60.122,60.537,60.919,61.267,61.590,61.898,62.201,62.504,62.803,63.089,63.352,63.586,63.790,
-63.972,64.144,64.319,64.503,64.694,64.881,65.051,65.190,65.288,65.344,65.363,65.350,65.313,65.254,65.175,65.077,
-64.965,64.851,64.748,64.668,64.617,64.586,64.555,64.496,64.381,64.192,63.932,63.622,63.301,63.014,62.798,62.673,
-62.634,62.654,62.692,62.705,62.662,62.547,62.366,62.139,61.894,61.654,61.435,61.241,61.068,60.909,60.760,60.628,
-60.526,60.471,60.479,60.557,60.696,60.875,61.065,61.232,61.352,61.410,61.409,61.361,61.286,61.200,61.112,61.024,
-60.926,60.808,60.662,60.488,60.297,60.102,59.921,59.763,59.629,59.508,59.382,59.231,59.041,58.808,58.539,58.247,
-57.946,57.647,57.348,57.037,56.698,56.314,55.878,55.394,54.884,54.375,53.899,53.478,53.120,52.816,52.542,52.267,
-51.963,51.617,51.228,50.819,50.419,50.066,49.788,49.601,49.502,49.473,49.481,49.487,49.457,49.366,49.649,49.529,
-49.313,49.032,48.728,48.449,48.229,48.085,48.007,47.967,47.923,47.835,47.673,47.431,47.123,46.780,46.440,46.135,
-45.885,45.690,45.533,45.392,45.246,45.084,44.909,44.738,44.589,44.482,44.423,44.407,44.419,44.440,44.451,44.437,
-44.388,44.295,44.144,43.920,43.603,43.176,42.634,41.987,41.259,40.488,39.716,38.974,38.285,37.655,37.079,36.549,
-36.060,35.611,35.203,34.837,34.505,34.187,33.860,33.500,33.091,32.635,32.149,31.655,31.174,30.707,30.235,29.722,
-29.124,28.410,27.575,26.646,25.678,24.744,23.906,23.207,22.655,22.224,21.870,21.545,21.211,20.854,20.481,20.115,
-19.782,19.499,19.268,19.081,18.920,18.770,18.622,18.479,18.352,18.253,18.194,18.178,18.201,18.253,18.320,18.389,
-18.451,18.497,18.522,18.522,18.495,18.443,18.375,18.304,18.245,18.213,18.215,18.250,18.303,18.355,18.380,18.360,
-18.286,18.160,17.997,17.817,17.640,17.480,17.338,17.209,17.076,16.925,16.743,16.529,16.290,16.042,15.806,15.602,
-15.437,15.310,15.204,15.090,14.942,14.737,14.475,14.173,13.869,13.613,13.450,13.408,13.485,13.650,13.847,14.012,
-14.089,14.049,13.892,13.649,13.364,13.085,12.839,12.636,12.462,12.292,12.108,11.900,11.683,11.479,11.319,11.219,
-11.181,11.184,11.200,11.197,11.160,11.091,11.009,10.940,10.905,10.904,10.916,10.903,10.823,10.646,10.366,10.008,
-9.616,9.248,8.951,8.753,8.653,8.631,8.652,8.684,8.703,8.703,8.687,8.662,8.632,8.589,8.519,8.401,
-8.217,7.955,7.615,7.205,6.738,6.228,5.689,5.132,4.571,4.022,3.500,3.021,2.596,2.228,1.911,1.636,
-1.393,1.180,1.000,.863,.776,.739,.739,.752,.748,.702,.599,.437,.225,-.025,-.309,-.628,
--.993,-1.407,-1.860,-2.317,-2.726,-3.028,-3.174,-3.152,-2.990,-2.757,-2.547,-2.451,-2.536,-2.827,-3.306,-3.925,
--4.623,-5.349,-6.070,-6.770,-7.447,-8.095,-8.700,-9.238,-9.685,-10.025,-10.260,-10.412,-10.519,-10.619,-10.737,-10.883,
--11.050,-11.223,-11.396,-11.572,-11.772,-12.024,-12.351,-12.758,-13.228,-13.723,-14.199,-14.619,-14.967,-15.250,-15.499,-15.753,
--16.045,-16.391,-16.785,-17.203,-17.614,-17.988,-18.307,-18.571,-18.794,-18.998,-19.206,-19.434,-19.688,-19.963,-20.247,-20.521,
--20.768,-20.975,-21.137,-21.260,-21.352,-21.431,-21.509,-21.600,-21.707,-21.830,-21.966,-22.112,-22.270,-22.442,-22.635,-22.850,
--23.082,-23.315,-23.528,-23.698,-23.811,-23.866,-23.882,-23.890,-23.924,-24.014,-24.173,-24.394,-24.651,-24.908,-25.131,-25.299,
--25.406,-25.463,-25.494,-25.525,-25.575,-25.652,-25.751,-25.855,-25.941,-25.989,-25.985,-25.929,-25.832,-25.721,-25.628,-25.584,
--25.611,-25.717,-25.884,-26.078,-26.254,-26.367,-26.387,-26.310,-26.159,-25.979,-25.823,-25.740,-25.754,-25.862,-26.038,-26.238,
--26.420,-26.556,-26.641,-26.688,-26.727,-26.786,-26.883,-27.020,-27.183,-27.348,-27.493,-27.604,-27.677,-27.724,-27.762,-27.809,
--27.880,-27.979,-28.105,-28.251,-28.405,-28.558,-28.702,-28.829,-28.935,-29.015,-29.070,-29.103,-29.122,-29.140,-29.170,-29.225,
--29.311,-29.427,-29.567,-29.716,-29.857,-29.974,-30.061,-30.114,-30.141,-30.156,-30.173,-30.205,-30.259,-30.330,-30.407,-30.472,
--30.505,-30.493,-30.435,-30.338,-30.224,-30.117,-30.039,-30.000,-29.998,-30.014,-30.022,-29.997,-29.923,-29.799,-29.643,-29.480,
--29.340,-29.244,-29.199,-29.194,-29.207,-29.212,-29.186,-29.121,-29.020,-28.894,-28.758,-28.621,-28.485,-28.340,-28.172,-27.969,
--27.725,-27.445,-27.141,-26.832,-26.532,-26.253,-25.995,-25.754,-25.521,-25.292,-25.066,-24.849,-24.650,-24.475,-24.328,-24.205,
--24.094,-23.985,-23.867,-23.734,-23.591,-23.447,-23.314,-23.204,-23.124,-23.072,-23.036,-22.994,-22.918,-22.776,-22.536,-22.177,
--21.694,-21.100,-20.436,-19.763,-19.154,-18.685,-18.418,-18.383,-18.571,-18.934,-19.389,-19.834,-20.171,-20.324,-20.247,-19.936,
--19.419,-18.748,-17.985,-17.188,-16.406,-15.672,-15.005,-14.415,-13.905,-13.475,-13.120,-12.836,-12.612,-12.442,-12.315,-12.224,
--12.162,-12.124,-12.104,-12.093,-12.079,-12.047,-11.982,-11.870,-11.701,-11.475,-11.195,-10.870,-10.511,-10.129,-9.736,-9.337,
--8.938,-8.542,-8.149,-7.759,-7.370,-6.983,-6.596,-6.212,-5.833,-5.465,-5.109,-4.767,-4.436,-4.113,-3.792,-3.473,
--3.159,-2.858,-2.582,-2.343,-2.147,-1.997,-1.887,-1.806,-1.740,-1.676,-1.598,-1.491,-1.337,-1.113,-.795,-.360,
-.206,.900,1.700,2.564,3.440,4.277,5.035,5.695,6.262,6.757,7.211,7.652,8.094,8.536,8.961,9.347,
-9.673,9.927,10.109,10.232,10.312,10.368,10.414,10.458,10.503,10.549,10.596,10.649,10.715,10.801,10.913,11.049,
-11.202,11.354,11.489,11.586,11.635,11.634,11.594,11.535,11.483,11.465,11.500,11.598,11.756,11.960,12.188,12.415,
-12.618,12.780,12.889,12.944,12.948,12.912,12.849,12.776,12.705,12.647,12.606,12.576,12.551,12.518,12.471,12.410,
-12.348,12.305,12.304,12.367,12.501,12.697,12.933,13.171,13.379,13.529,13.614,13.642,13.635,13.621,13.623,13.649,
-13.694,13.742,13.771,13.761,13.702,13.594,13.447,13.277,13.099,12.927,12.768,12.627,12.504,12.400,12.316,12.251,
-12.204,12.171,12.145,12.118,12.082,12.029,11.959,11.871,11.772,11.669,11.571,11.485,11.419,11.376,11.357,11.358,
-11.371,11.384,11.383,11.356,11.291,11.183,11.035,10.856,10.662,10.473,10.308,10.181,10.101,10.065,10.068,10.096,
-10.136,10.180,10.224,10.270,10.321,10.378,10.434,10.475,10.478,10.416,10.272,10.042,9.738,9.391,9.044,8.733,
-8.484,8.300,8.158,8.023,7.850,7.608,7.280,6.876,6.420,5.945,5.482,5.053,4.670,4.338,4.063,3.857,
-3.738,3.725,3.827,4.036,4.320,4.632,4.916,5.125,5.234,5.241,5.172,5.065,4.955,4.866,4.805,4.762,
-4.721,4.670,4.606,4.540,4.489,4.468,4.486,4.539,4.612,4.686,4.748,4.792,4.823,4.853,4.894,4.955,
-5.036,5.129,5.221,5.303,5.368,5.416,5.455,5.491,5.530,5.578,5.635,5.702,5.777,5.861,5.952,6.047,
-6.143,6.233,6.313,6.380,6.436,6.487,6.542,6.607,6.684,6.771,6.863,6.952,7.035,7.112,7.189,7.274,
-7.373,7.488,7.619,7.760,7.906,8.054,8.208,8.371,8.549,8.744,8.955,9.171,9.383,9.580,9.758,9.917,
-10.064,10.210,10.365,10.532,10.710,10.892,11.066,11.217,11.332,11.401,11.420,11.389,11.318,11.223,11.129,11.058,
-11.033,11.066,11.156,11.289,11.440,11.583,11.694,11.763,11.791,11.791,11.779,11.772,11.782,11.814,11.874,11.969,
-12.110,12.310,12.582,12.925,13.323,13.744,14.146,14.485,14.729,14.864,14.896,14.840,14.714,14.526,14.274,13.951,
-13.557,13.117,12.685,12.344,12.190,12.303,12.726,13.443,14.380,15.414,16.410,17.243,17.830,18.144,18.205,18.071,
-17.812,17.493,17.158,16.835,16.537,16.278,16.075,15.952,15.933,16.029,16.235,16.519,16.828,17.099,17.275,17.315,
-17.203,16.953,16.599,16.185,15.753,15.330,14.932,14.557,14.196,13.838,13.479,13.120,12.770,12.440,12.138,11.864,
-11.612,11.371,11.130,10.877,10.612,10.334,10.048,9.756,9.459,9.153,8.835,8.504,8.167,7.835,7.523,7.242,
-6.996,6.778,6.572,6.360,6.127,5.868,5.590,5.307,5.036,4.783,4.543,4.300,4.031,3.717,3.355,2.960,
-2.566,2.210,1.927,1.732,1.614,1.544,1.481,1.386,1.241,1.047,.831,.628,.473,.382,.347,.338,
-.309,.215,.021,-.289,-.710,-1.222,-1.802,-2.429,-3.093,-3.794,-4.536,-5.322,-6.148,-6.999,-7.855,-8.690,
--9.484,-10.223,-10.900,-11.514,-12.061,-12.536,-12.929,-13.232,-13.446,-13.586,-13.687,-13.798,-13.976,-14.267,-14.697,-15.263,
--15.933,-16.656,-17.376,-18.048,-18.647,-19.176,-19.656,-20.117,-20.586,-21.082,-21.604,-22.142,-22.684,-23.216,-23.734,-24.240,
--24.738,-25.230,-25.710,-26.166,-26.584,-26.950,-27.259,-27.514,-27.728,-27.918,-28.100,-28.283,-28.470,-28.661,-28.854,-29.048,
--29.247,-29.456,-29.682,-29.923,-30.177,-30.435,-30.690,-30.938,-31.181,-31.429,-31.692,-31.980,-32.295,-32.629,-32.970,-33.301,
--33.609,-33.888,-34.143,-34.385,-34.628,-34.886,-35.167,-35.473,-35.805,-36.157,-36.527,-36.914,-37.316,-37.731,-38.156,-38.585,
--39.011,-39.429,-39.834,-40.227,-40.608,-40.977,-41.333,-41.671,-41.983,-42.265,-42.515,-42.734,-42.930,-43.114,-43.295,-43.478,
--43.665,-43.854,-44.042,-44.228,-44.416,-44.610,-44.815,-45.032,-45.257,-45.481,-45.693,-45.886,-46.055,-46.202,-46.334,-46.456,
--46.569,-46.669,-46.748,-46.798,-46.818,-46.812,-46.792,-46.775,-46.773,-46.789,-46.816,-46.840,-46.844,-46.816,-46.755,-46.670,
--46.574,-46.482,-46.397,-46.315,-46.220,-46.093,-45.923,-45.705,-45.449,-45.173,-44.894,-44.626,-44.372,-44.126,-43.881,-43.631,
--43.379,-43.136,-42.919,-42.741,-42.606,-42.508,-42.430,-42.348,-42.242,-42.096,-41.907,-41.675,-41.407,-41.105,-40.772,-40.412,
--40.029,-39.637,-39.256,-38.908,-38.611,-38.375,-38.190,-38.034,-37.875,-37.683,-37.437,-37.137,-36.794,-36.433,-36.075,-35.734,
--35.409,-35.084,-34.738,-34.352,-33.916,-33.437,-32.936,-32.441,-31.978,-31.567,-31.213,-30.908,-30.636,-30.374,-30.103,-29.807,
--29.478,-29.117,-28.728,-28.320,-27.908,-27.507,-27.131,-26.788,-26.481,-26.201,-25.930,-25.639,-25.300,-24.889,-24.393,-23.815,
--23.171,-22.487,-21.790,-21.100,-20.423,-19.751,-19.067,-18.350,-17.586,-16.774,-15.928,-15.077,-14.254,-13.487,-12.793,-12.173,
--11.611,-11.082,-10.558,-10.017,-9.443,-8.828,-8.167,-7.456,-6.686,-5.848,-4.936,-3.954,-2.918,-1.854,-.797,.228,
-1.206,2.143,3.063,3.990,4.941,5.910,6.862,7.739,8.478,9.028,9.373,9.539,9.588,9.604,9.668,9.840,
-10.142,10.560,11.060,11.597,12.140,12.675,13.207,13.751,14.317,14.906,15.504,16.090,16.646,17.165,17.657,18.140,
-18.634,19.152,19.685,20.212,20.702,21.132,21.496,21.817,22.144,22.536,23.050,23.720,24.545,25.488,26.482,27.447,
-28.312,29.034,29.607,30.070,30.493,30.962,31.556,32.326,33.284,34.398,35.602,36.816,37.965,39.002,39.912,40.719,
-41.462,42.189,42.929,43.695,44.474,45.246,45.990,46.698,47.371,48.015,48.618,49.146,49.537,49.711,49.598,49.168,
-48.453,47.559,46.645,45.895,45.471,45.467,45.889,46.647,47.590,48.538,49.334,49.878,50.144,50.177,50.065,49.908,
-49.792,49.767,49.845,50.007,50.221,50.456,50.692,50.922,51.150,51.381,51.620,51.868,52.119,52.372,52.623,52.875,
-53.134,53.403,53.686,53.982,54.288,54.601,54.920,55.247,55.583,55.934,56.299,56.677,57.066,57.461,57.863,58.273,
-58.692,59.124,59.566,60.010,60.446,60.859,61.240,61.585,61.897,62.187,62.467,62.748,63.032,63.317,63.595,63.856,
-64.093,64.304,64.491,64.660,64.815,64.957,65.082,65.185,65.260,65.302,65.313,65.296,65.257,65.198,65.123,65.032,
-64.926,64.809,64.688,64.575,64.477,64.400,64.340,64.283,64.211,64.106,63.958,63.767,63.549,63.327,63.127,62.970,
-62.861,62.790,62.736,62.669,62.565,62.409,62.204,61.968,61.726,61.504,61.321,61.181,61.075,60.986,60.896,60.796,
-60.687,60.586,60.514,60.492,60.530,60.624,60.754,60.887,60.994,61.051,61.052,61.005,60.931,60.851,60.784,60.731,
-60.687,60.635,60.558,60.450,60.312,60.156,59.999,59.855,59.726,59.607,59.483,59.337,59.158,58.945,58.705,58.455,
-58.208,57.971,57.743,57.509,57.250,56.949,56.596,56.191,55.747,55.281,54.814,54.360,53.926,53.509,53.100,52.685,
-52.252,51.796,51.318,50.835,50.369,49.952,49.614,49.380,49.264,49.258,49.340,49.467,49.592,49.665,49.649,49.910,
-49.750,49.478,49.140,48.793,48.492,48.273,48.144,48.085,48.053,47.996,47.873,47.659,47.358,46.996,46.613,46.248,
-45.934,45.684,45.494,45.347,45.224,45.111,45.003,44.910,44.848,44.834,44.877,44.974,45.109,45.254,45.379,45.452,
-45.447,45.345,45.134,44.805,44.354,43.786,43.111,42.355,41.552,40.742,39.964,39.248,38.608,38.039,37.526,37.048,
-36.588,36.142,35.715,35.318,34.959,34.636,34.331,34.019,33.673,33.274,32.817,32.314,31.785,31.246,30.697,30.124,
-29.495,28.781,27.962,27.049,26.081,25.122,24.244,23.509,22.947,22.553,22.287,22.089,21.894,21.654,21.347,20.979,
-20.578,20.179,19.816,19.510,19.266,19.076,18.926,18.800,18.687,18.584,18.492,18.414,18.356,18.320,18.308,18.319,
-18.348,18.391,18.439,18.484,18.517,18.531,18.525,18.501,18.469,18.439,18.422,18.424,18.443,18.472,18.495,18.495,
-18.460,18.382,18.263,18.113,17.947,17.781,17.629,17.498,17.385,17.284,17.181,17.064,16.923,16.754,16.562,16.355,
-16.146,15.943,15.749,15.557,15.354,15.124,14.859,14.564,14.259,13.979,13.764,13.646,13.639,13.729,13.878,14.035,
-14.144,14.167,14.091,13.927,13.708,13.471,13.244,13.038,12.845,12.643,12.416,12.157,11.880,11.616,11.401,11.263,
-11.210,11.224,11.272,11.310,11.308,11.252,11.155,11.046,10.959,10.914,10.909,10.919,10.902,10.815,10.632,10.352,
-10.004,9.635,9.296,9.028,8.848,8.749,8.705,8.682,8.653,8.602,8.528,8.438,8.339,8.232,8.110,7.960,
-7.769,7.533,7.252,6.938,6.600,6.242,5.862,5.448,4.991,4.490,3.957,3.420,2.911,2.459,2.080,1.771,
-1.512,1.278,1.048,.816,.592,.396,.245,.148,.093,.059,.014,-.064,-.186,-.349,-.543,-.762,
--1.009,-1.297,-1.640,-2.038,-2.468,-2.881,-3.209,-3.391,-3.394,-3.229,-2.959,-2.683,-2.507,-2.520,-2.767,-3.240,
--3.891,-4.648,-5.439,-6.213,-6.942,-7.619,-8.242,-8.808,-9.305,-9.718,-10.035,-10.257,-10.403,-10.504,-10.595,-10.705,
--10.845,-11.016,-11.209,-11.423,-11.664,-11.951,-12.304,-12.738,-13.247,-13.805,-14.365,-14.881,-15.316,-15.657,-15.919,-16.138,
--16.361,-16.623,-16.944,-17.318,-17.722,-18.121,-18.485,-18.796,-19.050,-19.263,-19.457,-19.658,-19.886,-20.150,-20.447,-20.760,
--21.067,-21.340,-21.559,-21.712,-21.801,-21.840,-21.855,-21.874,-21.920,-22.006,-22.133,-22.294,-22.480,-22.681,-22.896,-23.125,
--23.372,-23.632,-23.892,-24.130,-24.323,-24.454,-24.521,-24.539,-24.541,-24.566,-24.649,-24.807,-25.036,-25.309,-25.592,-25.847,
--26.048,-26.187,-26.272,-26.323,-26.365,-26.419,-26.493,-26.588,-26.691,-26.786,-26.856,-26.887,-26.871,-26.813,-26.725,-26.628,
--26.547,-26.503,-26.507,-26.556,-26.632,-26.705,-26.742,-26.719,-26.629,-26.486,-26.324,-26.183,-26.099,-26.091,-26.160,-26.283,
--26.430,-26.571,-26.688,-26.781,-26.865,-26.962,-27.090,-27.257,-27.456,-27.668,-27.869,-28.039,-28.167,-28.254,-28.313,-28.361,
--28.413,-28.477,-28.558,-28.649,-28.743,-28.833,-28.912,-28.977,-29.028,-29.066,-29.095,-29.119,-29.145,-29.179,-29.231,-29.308,
--29.417,-29.557,-29.726,-29.912,-30.100,-30.273,-30.414,-30.511,-30.561,-30.570,-30.552,-30.529,-30.519,-30.538,-30.590,-30.666,
--30.745,-30.804,-30.819,-30.780,-30.688,-30.562,-30.427,-30.308,-30.222,-30.170,-30.140,-30.110,-30.058,-29.969,-29.844,-29.699,
--29.556,-29.438,-29.357,-29.312,-29.290,-29.271,-29.238,-29.182,-29.106,-29.022,-28.944,-28.880,-28.827,-28.769,-28.684,-28.551,
--28.359,-28.108,-27.813,-27.497,-27.181,-26.880,-26.598,-26.329,-26.065,-25.798,-25.525,-25.255,-25.001,-24.780,-24.601,-24.469,
--24.376,-24.310,-24.253,-24.192,-24.119,-24.030,-23.927,-23.814,-23.695,-23.566,-23.423,-23.255,-23.046,-22.782,-22.444,-22.022,
--21.514,-20.933,-20.309,-19.695,-19.157,-18.766,-18.585,-18.652,-18.965,-19.478,-20.106,-20.736,-21.250,-21.547,-21.560,-21.270,
--20.702,-19.918,-18.996,-18.020,-17.056,-16.155,-15.343,-14.632,-14.021,-13.504,-13.074,-12.721,-12.435,-12.206,-12.023,-11.875,
--11.754,-11.654,-11.570,-11.496,-11.423,-11.343,-11.241,-11.106,-10.926,-10.697,-10.419,-10.098,-9.744,-9.366,-8.974,-8.574,
--8.174,-7.777,-7.384,-6.995,-6.608,-6.216,-5.816,-5.405,-4.983,-4.555,-4.133,-3.725,-3.340,-2.982,-2.647,-2.332,
--2.030,-1.739,-1.462,-1.206,-.980,-.788,-.631,-.502,-.391,-.287,-.178,-.059,.078,.242,.452,.730,
-1.103,1.591,2.201,2.917,3.700,4.499,5.257,5.930,6.492,6.949,7.324,7.657,7.987,8.338,8.719,9.121,
-9.521,9.892,10.216,10.483,10.694,10.860,10.996,11.114,11.222,11.320,11.407,11.476,11.528,11.562,11.587,11.613,
-11.648,11.701,11.771,11.852,11.931,11.996,12.034,12.041,12.023,11.995,11.976,11.988,12.046,12.157,12.317,12.513,
-12.727,12.939,13.130,13.287,13.401,13.471,13.501,13.499,13.479,13.457,13.446,13.454,13.480,13.513,13.536,13.531,
-13.486,13.405,13.302,13.208,13.155,13.169,13.262,13.424,13.629,13.840,14.020,14.144,14.201,14.196,14.147,14.073,
-13.990,13.905,13.817,13.722,13.614,13.490,13.353,13.208,13.063,12.924,12.795,12.679,12.577,12.494,12.434,12.402,
-12.401,12.429,12.477,12.531,12.575,12.591,12.566,12.492,12.367,12.200,12.003,11.794,11.595,11.423,11.293,11.214,
-11.183,11.189,11.214,11.235,11.231,11.183,11.085,10.939,10.758,10.564,10.378,10.224,10.116,10.064,10.067,10.118,
-10.203,10.309,10.422,10.535,10.645,10.752,10.855,10.947,11.014,11.032,10.974,10.819,10.557,10.199,9.775,9.329,
-8.908,8.546,8.254,8.016,7.795,7.546,7.229,6.822,6.332,5.783,5.215,4.667,4.169,3.741,3.397,3.148,
-3.011,3.006,3.147,3.432,3.834,4.298,4.750,5.115,5.338,5.397,5.315,5.144,4.951,4.796,4.707,4.683,
-4.691,4.693,4.657,4.577,4.471,4.376,4.331,4.360,4.462,4.612,4.774,4.909,4.997,5.037,5.048,5.058,
-5.093,5.165,5.273,5.401,5.529,5.638,5.718,5.769,5.800,5.823,5.847,5.879,5.922,5.975,6.037,6.106,
-6.177,6.246,6.307,6.358,6.395,6.423,6.449,6.482,6.535,6.613,6.718,6.847,6.991,7.143,7.297,7.450,
-7.601,7.752,7.903,8.051,8.196,8.335,8.472,8.613,8.765,8.935,9.124,9.330,9.541,9.746,9.933,10.095,
-10.233,10.357,10.475,10.599,10.736,10.886,11.043,11.198,11.339,11.454,11.535,11.577,11.580,11.553,11.508,11.465,
-11.446,11.465,11.530,11.633,11.755,11.870,11.950,11.978,11.953,11.888,11.810,11.749,11.730,11.768,11.868,12.029,
-12.251,12.534,12.885,13.304,13.779,14.280,14.758,15.149,15.395,15.450,15.301,14.963,14.478,13.897,13.271,12.638,
-12.027,11.463,10.984,10.640,10.498,10.625,11.067,11.830,12.863,14.066,15.307,16.448,17.376,18.029,18.395,18.509,
-18.430,18.221,17.928,17.581,17.197,16.794,16.400,16.063,15.839,15.779,15.913,16.233,16.691,17.209,17.693,18.056,
-18.239,18.222,18.021,17.678,17.248,16.778,16.302,15.832,15.368,14.902,14.430,13.957,13.497,13.072,12.698,12.383,
-12.121,11.894,11.678,11.451,11.198,10.918,10.618,10.310,10.004,9.703,9.403,9.097,8.779,8.453,8.130,7.825,
-7.553,7.320,7.116,6.923,6.716,6.475,6.192,5.874,5.543,5.221,4.924,4.653,4.392,4.116,3.803,3.444,
-3.051,2.654,2.293,2.003,1.802,1.683,1.615,1.555,1.464,1.318,1.117,.883,.651,.456,.315,.225,
-.161,.085,-.042,-.248,-.546,-.928,-1.377,-1.876,-2.412,-2.986,-3.605,-4.285,-5.033,-5.847,-6.711,-7.599,
--8.480,-9.325,-10.117,-10.843,-11.501,-12.087,-12.596,-13.016,-13.337,-13.555,-13.681,-13.748,-13.808,-13.919,-14.141,-14.509,
--15.034,-15.692,-16.437,-17.208,-17.953,-18.635,-19.243,-19.787,-20.291,-20.781,-21.273,-21.774,-22.281,-22.785,-23.280,-23.767,
--24.253,-24.744,-25.246,-25.753,-26.252,-26.722,-27.143,-27.501,-27.794,-28.028,-28.221,-28.393,-28.560,-28.734,-28.921,-29.122,
--29.334,-29.556,-29.785,-30.021,-30.262,-30.505,-30.749,-30.993,-31.240,-31.495,-31.764,-32.049,-32.351,-32.661,-32.969,-33.262,
--33.532,-33.779,-34.008,-34.233,-34.468,-34.727,-35.013,-35.326,-35.659,-36.005,-36.359,-36.722,-37.098,-37.493,-37.911,-38.349,
--38.798,-39.246,-39.678,-40.087,-40.467,-40.821,-41.154,-41.469,-41.767,-42.045,-42.298,-42.520,-42.713,-42.881,-43.034,-43.186,
--43.348,-43.529,-43.732,-43.957,-44.201,-44.459,-44.729,-45.006,-45.285,-45.559,-45.823,-46.067,-46.290,-46.490,-46.671,-46.836,
--46.989,-47.126,-47.242,-47.327,-47.375,-47.387,-47.372,-47.345,-47.325,-47.326,-47.351,-47.392,-47.435,-47.461,-47.457,-47.421,
--47.359,-47.283,-47.204,-47.123,-47.033,-46.918,-46.761,-46.553,-46.297,-46.007,-45.706,-45.413,-45.143,-44.896,-44.663,-44.431,
--44.191,-43.944,-43.701,-43.478,-43.292,-43.147,-43.039,-42.947,-42.847,-42.718,-42.544,-42.322,-42.057,-41.760,-41.441,-41.106,
--40.761,-40.408,-40.055,-39.711,-39.388,-39.093,-38.827,-38.580,-38.333,-38.065,-37.758,-37.404,-37.011,-36.597,-36.184,-35.791,
--35.425,-35.079,-34.736,-34.373,-33.970,-33.520,-33.026,-32.504,-31.977,-31.465,-30.984,-30.544,-30.146,-29.787,-29.458,-29.151,
--28.855,-28.556,-28.241,-27.898,-27.521,-27.114,-26.691,-26.278,-25.903,-25.592,-25.358,-25.192,-25.069,-24.948,-24.781,-24.529,
--24.170,-23.705,-23.154,-22.554,-21.941,-21.345,-20.775,-20.225,-19.671,-19.086,-18.447,-17.744,-16.984,-16.187,-15.378,-14.582,
--13.815,-13.081,-12.375,-11.683,-10.995,-10.299,-9.584,-8.840,-8.051,-7.200,-6.270,-5.251,-4.152,-3.001,-1.844,-.732,
-.294,1.218,2.055,2.853,3.668,4.549,5.508,6.515,7.497,8.359,9.018,9.423,9.585,9.568,9.474,9.415,
-9.477,9.704,10.087,10.582,11.129,11.680,12.212,12.729,13.257,13.824,14.444,15.108,15.789,16.455,17.076,17.643,
-18.166,18.668,19.174,19.697,20.233,20.761,21.252,21.682,22.045,22.358,22.664,23.017,23.473,24.070,24.819,25.696,
-26.649,27.607,28.500,29.277,29.917,30.443,30.907,31.383,31.942,32.634,33.473,34.436,35.471,36.521,37.536,38.495,
-39.401,40.280,41.157,42.049,42.953,43.846,44.703,45.505,46.250,46.952,47.625,48.270,48.852,49.304,49.538,49.474,
-49.081,48.395,47.533,46.668,45.995,45.672,45.783,46.310,47.140,48.102,49.008,49.710,50.131,50.275,50.213,50.052,
-49.896,49.820,49.855,49.990,50.188,50.410,50.626,50.823,51.008,51.195,51.399,51.626,51.874,52.138,52.410,52.686,
-52.968,53.260,53.564,53.880,54.203,54.525,54.841,55.152,55.463,55.786,56.132,56.509,56.917,57.349,57.795,58.243,
-58.683,59.113,59.532,59.943,60.347,60.741,61.120,61.476,61.805,62.108,62.391,62.662,62.932,63.207,63.487,63.768,
-64.039,64.291,64.515,64.706,64.863,64.987,65.083,65.153,65.199,65.224,65.229,65.216,65.186,65.139,65.076,64.996,
-64.901,64.791,64.673,64.552,64.436,64.330,64.237,64.155,64.077,63.995,63.900,63.790,63.666,63.532,63.398,63.268,
-63.147,63.030,62.908,62.770,62.603,62.404,62.175,61.928,61.683,61.460,61.277,61.139,61.043,60.972,60.906,60.828,
-60.727,60.609,60.492,60.400,60.354,60.367,60.433,60.530,60.627,60.695,60.715,60.685,60.621,60.545,60.481,60.439,
-60.415,60.393,60.353,60.280,60.171,60.040,59.907,59.792,59.703,59.631,59.555,59.446,59.284,59.061,58.791,58.499,
-58.214,57.958,57.733,57.528,57.318,57.077,56.787,56.445,56.060,55.649,55.226,54.796,54.356,53.895,53.403,52.873,
-52.313,51.738,51.172,50.640,50.165,49.767,49.460,49.258,49.167,49.185,49.300,49.480,49.682,49.853,49.941,49.910,
-50.172,49.897,49.508,49.063,48.633,48.276,48.023,47.873,47.789,47.719,47.610,47.428,47.165,46.841,46.497,46.175,
-45.910,45.717,45.593,45.517,45.463,45.410,45.350,45.288,45.242,45.235,45.286,45.401,45.572,45.773,45.965,46.106,
-46.153,46.071,45.839,45.447,44.902,44.221,43.436,42.586,41.717,40.873,40.093,39.403,38.809,38.301,37.853,37.435,
-37.018,36.589,36.149,35.711,35.295,34.916,34.578,34.267,33.962,33.634,33.264,32.839,32.361,31.835,31.269,30.661,
-30.000,29.271,28.463,27.580,26.646,25.707,24.821,24.046,23.422,22.960,22.641,22.419,22.235,22.030,21.764,21.419,
-21.007,20.557,20.111,19.707,19.376,19.130,18.967,18.870,18.814,18.774,18.730,18.668,18.589,18.500,18.415,18.348,
-18.311,18.310,18.340,18.392,18.450,18.502,18.537,18.551,18.547,18.533,18.516,18.505,18.502,18.503,18.501,18.490,
-18.459,18.404,18.324,18.220,18.097,17.965,17.831,17.707,17.598,17.508,17.436,17.375,17.312,17.235,17.131,16.995,
-16.828,16.635,16.425,16.203,15.970,15.721,15.448,15.149,14.830,14.512,14.224,13.998,13.858,13.809,13.835,13.901,
-13.963,13.984,13.943,13.842,13.703,13.555,13.418,13.301,13.187,13.052,12.868,12.624,12.332,12.026,11.753,11.558,
-11.463,11.463,11.521,11.588,11.614,11.570,11.454,11.292,11.129,11.003,10.937,10.926,10.939,10.929,10.854,10.688,
-10.435,10.123,9.796,9.500,9.264,9.098,8.989,8.912,8.839,8.752,8.644,8.522,8.392,8.260,8.119,7.956,
-7.757,7.512,7.226,6.919,6.612,6.325,6.060,5.802,5.519,5.178,4.757,4.260,3.714,3.166,2.661,2.233,
-1.886,1.599,1.338,1.066,.766,.446,.130,-.148,-.365,-.516,-.616,-.697,-.786,-.900,-1.040,-1.196,
--1.360,-1.532,-1.730,-1.976,-2.284,-2.643,-3.011,-3.320,-3.499,-3.497,-3.314,-3.005,-2.669,-2.427,-2.382,-2.594,
--3.062,-3.735,-4.527,-5.354,-6.149,-6.879,-7.538,-8.135,-8.677,-9.163,-9.580,-9.913,-10.157,-10.321,-10.431,-10.521,
--10.621,-10.753,-10.925,-11.139,-11.395,-11.699,-12.067,-12.511,-13.040,-13.640,-14.279,-14.910,-15.481,-15.955,-16.318,-16.583,
--16.786,-16.973,-17.184,-17.442,-17.749,-18.089,-18.436,-18.766,-19.060,-19.317,-19.544,-19.761,-19.989,-20.244,-20.536,-20.863,
--21.209,-21.550,-21.855,-22.099,-22.263,-22.346,-22.366,-22.352,-22.341,-22.366,-22.448,-22.592,-22.791,-23.028,-23.285,-23.552,
--23.820,-24.088,-24.350,-24.596,-24.810,-24.977,-25.085,-25.138,-25.154,-25.166,-25.207,-25.305,-25.472,-25.697,-25.958,-26.222,
--26.460,-26.653,-26.800,-26.908,-26.996,-27.078,-27.165,-27.261,-27.362,-27.460,-27.546,-27.612,-27.648,-27.652,-27.621,-27.558,
--27.473,-27.380,-27.295,-27.231,-27.193,-27.176,-27.168,-27.149,-27.108,-27.040,-26.955,-26.875,-26.824,-26.820,-26.868,-26.956,
--27.062,-27.160,-27.233,-27.276,-27.302,-27.337,-27.404,-27.524,-27.699,-27.917,-28.153,-28.379,-28.572,-28.720,-28.822,-28.888,
--28.934,-28.973,-29.015,-29.063,-29.115,-29.165,-29.206,-29.235,-29.247,-29.248,-29.242,-29.241,-29.256,-29.298,-29.376,-29.495,
--29.653,-29.843,-30.054,-30.275,-30.492,-30.693,-30.869,-31.010,-31.112,-31.173,-31.197,-31.191,-31.170,-31.150,-31.143,-31.157,
--31.189,-31.224,-31.245,-31.231,-31.171,-31.064,-30.923,-30.768,-30.621,-30.496,-30.397,-30.316,-30.238,-30.150,-30.043,-29.922,
--29.799,-29.687,-29.599,-29.534,-29.484,-29.436,-29.375,-29.299,-29.213,-29.136,-29.084,-29.069,-29.087,-29.119,-29.135,-29.100,
--28.990,-28.797,-28.530,-28.212,-27.869,-27.525,-27.193,-26.874,-26.561,-26.247,-25.931,-25.620,-25.328,-25.072,-24.866,-24.714,
--24.612,-24.545,-24.500,-24.460,-24.417,-24.367,-24.308,-24.237,-24.151,-24.041,-23.894,-23.699,-23.446,-23.127,-22.740,-22.289,
--21.780,-21.229,-20.661,-20.113,-19.634,-19.280,-19.105,-19.148,-19.420,-19.895,-20.506,-21.156,-21.728,-22.115,-22.229,-22.029,
--21.518,-20.741,-19.776,-18.712,-17.633,-16.606,-15.676,-14.867,-14.181,-13.612,-13.147,-12.769,-12.461,-12.203,-11.980,-11.776,
--11.581,-11.388,-11.199,-11.013,-10.835,-10.661,-10.486,-10.303,-10.100,-9.871,-9.612,-9.323,-9.007,-8.671,-8.319,-7.956,
--7.586,-7.214,-6.844,-6.481,-6.124,-5.769,-5.408,-5.028,-4.620,-4.177,-3.704,-3.214,-2.727,-2.262,-1.836,-1.458,
--1.126,-.834,-.571,-.332,-.111,.092,.275,.439,.589,.731,.874,1.025,1.190,1.379,1.602,1.874,
-2.216,2.644,3.169,3.785,4.471,5.186,5.883,6.518,7.059,7.494,7.835,8.109,8.351,8.592,8.852,9.138,
-9.443,9.756,10.063,10.354,10.625,10.877,11.110,11.328,11.531,11.715,11.878,12.014,12.119,12.192,12.233,12.248,
-12.246,12.238,12.237,12.251,12.285,12.336,12.395,12.452,12.497,12.526,12.544,12.560,12.585,12.631,12.706,12.809,
-12.938,13.085,13.244,13.408,13.570,13.724,13.861,13.975,14.059,14.116,14.153,14.181,14.215,14.260,14.315,14.365,
-14.389,14.368,14.293,14.173,14.033,13.910,13.842,13.856,13.956,14.126,14.330,14.525,14.672,14.743,14.729,14.635,
-14.479,14.281,14.063,13.840,13.624,13.424,13.243,13.086,12.953,12.841,12.749,12.674,12.618,12.586,12.585,12.623,
-12.705,12.826,12.971,13.117,13.234,13.294,13.275,13.165,12.968,12.698,12.380,12.045,11.723,11.443,11.224,11.077,
-11.001,10.983,11.001,11.028,11.038,11.011,10.937,10.817,10.664,10.498,10.341,10.214,10.132,10.105,10.134,10.214,
-10.334,10.480,10.634,10.781,10.908,11.009,11.086,11.144,11.187,11.213,11.211,11.158,11.027,10.797,10.460,10.030,
-9.539,9.030,8.544,8.108,7.722,7.365,7.000,6.593,6.123,5.590,5.019,4.444,3.903,3.422,3.019,2.704,
-2.486,2.386,2.429,2.640,3.025,3.558,4.178,4.791,5.297,5.616,5.710,5.595,5.337,5.029,4.759,4.585,
-4.519,4.533,4.576,4.595,4.562,4.481,4.382,4.307,4.289,4.340,4.450,4.587,4.718,4.823,4.897,4.956,
-5.023,5.120,5.255,5.419,5.595,5.758,5.890,5.985,6.047,6.085,6.112,6.136,6.161,6.186,6.210,6.233,
-6.257,6.288,6.325,6.368,6.412,6.450,6.479,6.503,6.530,6.574,6.647,6.759,6.910,7.096,7.306,7.526,
-7.745,7.955,8.150,8.327,8.485,8.626,8.754,8.875,9.000,9.137,9.293,9.471,9.666,9.867,10.063,10.240,
-10.394,10.524,10.637,10.744,10.852,10.967,11.090,11.218,11.345,11.465,11.573,11.665,11.740,11.795,11.834,11.860,
-11.882,11.910,11.952,12.012,12.085,12.159,12.213,12.231,12.202,12.128,12.027,11.929,11.863,11.858,11.929,12.081,
-12.308,12.602,12.956,13.365,13.820,14.305,14.789,15.225,15.555,15.720,15.678,15.413,14.936,14.289,13.526,12.709,
-11.894,11.127,10.456,9.927,9.594,9.512,9.727,10.259,11.089,12.152,13.347,14.556,15.668,16.604,17.326,17.837,
-18.170,18.360,18.433,18.397,18.245,17.973,17.595,17.156,16.728,16.399,16.247,16.317,16.607,17.062,17.591,18.090,
-18.466,18.662,18.666,18.503,18.224,17.884,17.525,17.164,16.794,16.392,15.935,15.411,14.831,14.226,13.639,13.112,
-12.676,12.338,12.084,11.883,11.698,11.499,11.269,11.005,10.715,10.412,10.102,9.787,9.463,9.125,8.773,8.417,
-8.072,7.755,7.475,7.232,7.012,6.796,6.563,6.304,6.019,5.721,5.425,5.141,4.869,4.595,4.300,3.968,
-3.596,3.197,2.800,2.441,2.150,1.939,1.800,1.704,1.615,1.498,1.335,1.128,.893,.658,.442,.256,
-.089,-.079,-.278,-.528,-.838,-1.201,-1.596,-2.003,-2.404,-2.802,-3.211,-3.662,-4.186,-4.807,-5.533,-6.351,
--7.232,-8.140,-9.035,-9.888,-10.679,-11.397,-12.036,-12.590,-13.053,-13.416,-13.681,-13.862,-13.991,-14.114,-14.288,-14.563,
--14.970,-15.515,-16.174,-16.903,-17.646,-18.355,-19.000,-19.573,-20.085,-20.560,-21.023,-21.489,-21.966,-22.451,-22.938,-23.423,
--23.907,-24.396,-24.895,-25.406,-25.922,-26.427,-26.902,-27.327,-27.691,-27.993,-28.243,-28.457,-28.653,-28.847,-29.047,-29.257,
--29.475,-29.699,-29.924,-30.151,-30.378,-30.607,-30.838,-31.074,-31.316,-31.567,-31.832,-32.111,-32.401,-32.698,-32.989,-33.265,
--33.514,-33.735,-33.932,-34.117,-34.307,-34.516,-34.757,-35.032,-35.338,-35.667,-36.011,-36.368,-36.738,-37.128,-37.542,-37.983,
--38.447,-38.922,-39.391,-39.837,-40.248,-40.618,-40.947,-41.243,-41.514,-41.765,-42.000,-42.218,-42.415,-42.593,-42.755,-42.910,
--43.070,-43.250,-43.458,-43.699,-43.972,-44.270,-44.583,-44.901,-45.213,-45.512,-45.793,-46.055,-46.299,-46.528,-46.746,-46.958,
--47.166,-47.368,-47.554,-47.714,-47.833,-47.906,-47.931,-47.920,-47.891,-47.866,-47.862,-47.886,-47.934,-47.991,-48.037,-48.057,
--48.042,-47.991,-47.912,-47.811,-47.693,-47.553,-47.381,-47.170,-46.916,-46.627,-46.318,-46.011,-45.726,-45.473,-45.253,-45.054,
--44.863,-44.669,-44.469,-44.269,-44.080,-43.913,-43.771,-43.647,-43.525,-43.386,-43.214,-43.001,-42.748,-42.462,-42.156,-41.840,
--41.520,-41.201,-40.884,-40.571,-40.264,-39.966,-39.675,-39.385,-39.083,-38.756,-38.390,-37.981,-37.536,-37.070,-36.605,-36.162,
--35.750,-35.370,-35.009,-34.650,-34.275,-33.872,-33.438,-32.979,-32.503,-32.017,-31.525,-31.026,-30.521,-30.013,-29.509,-29.023,
--28.570,-28.157,-27.781,-27.427,-27.072,-26.692,-26.273,-25.820,-25.359,-24.932,-24.584,-24.352,-24.250,-24.258,-24.332,-24.406,
--24.414,-24.303,-24.049,-23.657,-23.163,-22.614,-22.061,-21.537,-21.056,-20.608,-20.167,-19.700,-19.181,-18.593,-17.934,-17.213,
--16.441,-15.631,-14.788,-13.917,-13.022,-12.108,-11.184,-10.258,-9.334,-8.405,-7.455,-6.461,-5.407,-4.294,-3.145,-2.005,
--.931,.034,.874,1.614,2.316,3.063,3.923,4.924,6.036,7.170,8.201,9.009,9.512,9.701,9.639,9.445,
-9.260,9.203,9.342,9.682,10.175,10.746,11.326,11.874,12.388,12.895,13.433,14.035,14.705,15.425,16.156,16.859,
-17.506,18.094,18.635,19.157,19.687,20.238,20.805,21.366,21.892,22.355,22.742,23.063,23.352,23.662,24.054,24.578,
-25.262,26.098,27.039,28.014,28.940,29.746,30.396,30.899,31.305,31.691,32.139,32.710,33.432,34.297,35.269,36.304,
-37.363,38.423,39.475,40.516,41.538,42.524,43.450,44.296,45.059,45.754,46.412,47.059,47.700,48.301,48.788,49.070,
-49.067,48.748,48.157,47.413,46.690,46.168,45.985,46.197,46.762,47.557,48.413,49.166,49.703,49.984,50.043,49.965,
-49.850,49.782,49.808,49.929,50.119,50.337,50.548,50.738,50.909,51.078,51.263,51.474,51.711,51.968,52.235,52.505,
-52.781,53.067,53.370,53.693,54.032,54.376,54.714,55.037,55.348,55.656,55.978,56.331,56.727,57.167,57.641,58.130,
-58.614,59.077,59.510,59.912,60.290,60.651,61.002,61.347,61.684,62.012,62.327,62.628,62.918,63.198,63.473,63.742,
-64.002,64.249,64.474,64.669,64.829,64.951,65.035,65.085,65.107,65.109,65.097,65.076,65.045,65.005,64.951,64.882,
-64.795,64.696,64.588,64.479,64.377,64.283,64.199,64.118,64.034,63.941,63.835,63.718,63.594,63.468,63.343,63.221,
-63.098,62.969,62.828,62.672,62.499,62.311,62.112,61.907,61.703,61.506,61.322,61.156,61.009,60.880,60.763,60.649,
-60.534,60.414,60.295,60.193,60.126,60.108,60.144,60.224,60.326,60.419,60.475,60.479,60.434,60.359,60.280,60.217,
-60.176,60.146,60.105,60.030,59.913,59.762,59.604,59.474,59.395,59.371,59.380,59.377,59.318,59.171,58.930,58.620,
-58.283,57.963,57.688,57.462,57.260,57.048,56.792,56.477,56.109,55.708,55.297,54.891,54.483,54.053,53.575,53.030,
-52.420,51.772,51.129,50.540,50.047,49.675,49.430,49.306,49.287,49.361,49.509,49.712,49.938,50.144,50.281,50.299,
-50.172,50.337,49.945,49.443,48.900,48.394,47.984,47.695,47.514,47.395,47.277,47.113,46.882,46.595,46.291,46.019,
-45.822,45.720,45.708,45.754,45.817,45.857,45.849,45.789,45.694,45.595,45.527,45.520,45.590,45.729,45.913,46.098,
-46.231,46.257,46.132,45.827,45.338,44.680,43.890,43.019,42.124,41.256,40.458,39.754,39.149,38.631,38.175,37.752,
-37.332,36.900,36.449,35.990,35.537,35.108,34.713,34.354,34.019,33.692,33.354,32.989,32.585,32.138,31.642,31.092,
-30.479,29.796,29.038,28.211,27.336,26.446,25.587,24.800,24.119,23.560,23.116,22.763,22.462,22.174,21.864,21.511,
-21.111,20.675,20.228,19.800,19.424,19.126,18.919,18.804,18.765,18.773,18.798,18.810,18.788,18.728,18.641,18.547,
-18.467,18.420,18.411,18.433,18.468,18.497,18.501,18.473,18.415,18.340,18.261,18.194,18.144,18.114,18.097,18.087,
-18.075,18.059,18.035,18.003,17.961,17.909,17.846,17.770,17.687,17.601,17.519,17.445,17.379,17.313,17.236,17.138,
-17.012,16.860,16.690,16.511,16.331,16.148,15.954,15.732,15.470,15.167,14.834,14.500,14.198,13.955,13.784,13.678,
-13.612,13.555,13.483,13.389,13.285,13.193,13.135,13.121,13.134,13.141,13.099,12.975,12.761,12.479,12.178,11.917,
-11.743,11.675,11.698,11.768,11.827,11.827,11.742,11.583,11.384,11.193,11.052,10.977,10.959,10.963,10.945,10.865,
-10.706,10.475,10.200,9.921,9.673,9.477,9.331,9.218,9.115,8.999,8.861,8.707,8.549,8.399,8.263,8.129,
-7.979,7.790,7.551,7.267,6.962,6.668,6.410,6.198,6.014,5.818,5.564,5.213,4.757,4.218,3.647,3.102,
-2.628,2.244,1.932,1.652,1.359,1.023,.641,.237,-.151,-.486,-.752,-.956,-1.120,-1.273,-1.433,-1.600,
--1.765,-1.915,-2.051,-2.192,-2.366,-2.597,-2.888,-3.202,-3.475,-3.630,-3.610,-3.403,-3.060,-2.682,-2.395,-2.312,
--2.496,-2.950,-3.616,-4.400,-5.209,-5.975,-6.666,-7.287,-7.857,-8.395,-8.901,-9.358,-9.742,-10.035,-10.236,-10.370,
--10.472,-10.582,-10.732,-10.938,-11.203,-11.524,-11.901,-12.339,-12.847,-13.426,-14.066,-14.736,-15.394,-15.992,-16.492,-16.875,
--17.152,-17.350,-17.512,-17.677,-17.873,-18.109,-18.380,-18.669,-18.958,-19.233,-19.489,-19.731,-19.970,-20.223,-20.504,-20.823,
--21.179,-21.559,-21.938,-22.285,-22.568,-22.765,-22.872,-22.904,-22.891,-22.877,-22.900,-22.989,-23.154,-23.389,-23.674,-23.986,
--24.302,-24.604,-24.881,-25.121,-25.317,-25.462,-25.552,-25.594,-25.602,-25.604,-25.629,-25.704,-25.842,-26.040,-26.281,-26.536,
--26.779,-26.989,-27.161,-27.300,-27.417,-27.525,-27.630,-27.733,-27.831,-27.919,-27.994,-28.055,-28.103,-28.135,-28.148,-28.137,
--28.095,-28.022,-27.923,-27.812,-27.700,-27.602,-27.521,-27.457,-27.407,-27.369,-27.346,-27.350,-27.396,-27.495,-27.646,-27.834,
--28.028,-28.193,-28.298,-28.329,-28.292,-28.216,-28.139,-28.102,-28.131,-28.237,-28.409,-28.619,-28.837,-29.033,-29.186,-29.290,
--29.347,-29.369,-29.373,-29.371,-29.377,-29.394,-29.423,-29.457,-29.489,-29.510,-29.519,-29.521,-29.530,-29.565,-29.646,-29.786,
--29.988,-30.244,-30.531,-30.826,-31.103,-31.344,-31.542,-31.697,-31.814,-31.899,-31.958,-31.991,-32.000,-31.987,-31.959,-31.923,
--31.886,-31.854,-31.823,-31.787,-31.735,-31.656,-31.546,-31.407,-31.249,-31.081,-30.915,-30.754,-30.598,-30.446,-30.296,-30.151,
--30.018,-29.907,-29.823,-29.764,-29.722,-29.679,-29.622,-29.544,-29.449,-29.354,-29.278,-29.241,-29.248,-29.287,-29.334,-29.354,
--29.319,-29.208,-29.021,-28.770,-28.474,-28.154,-27.823,-27.484,-27.136,-26.777,-26.413,-26.058,-25.731,-25.453,-25.236,-25.082,
--24.981,-24.914,-24.859,-24.804,-24.742,-24.676,-24.612,-24.554,-24.497,-24.430,-24.333,-24.186,-23.976,-23.694,-23.343,-22.931,
--22.472,-21.981,-21.478,-20.984,-20.528,-20.148,-19.883,-19.772,-19.837,-20.077,-20.460,-20.923,-21.377,-21.727,-21.886,-21.793,
--21.423,-20.793,-19.951,-18.970,-17.926,-16.893,-15.925,-15.059,-14.314,-13.691,-13.182,-12.773,-12.445,-12.173,-11.934,-11.706,
--11.471,-11.219,-10.947,-10.663,-10.376,-10.097,-9.831,-9.581,-9.343,-9.110,-8.875,-8.634,-8.384,-8.122,-7.848,-7.557,
--7.247,-6.917,-6.570,-6.211,-5.847,-5.486,-5.127,-4.764,-4.385,-3.976,-3.528,-3.041,-2.525,-2.002,-1.496,-1.029,
--.615,-.257,.052,.323,.569,.799,1.015,1.216,1.398,1.560,1.706,1.843,1.985,2.151,2.363,2.642,
-3.007,3.469,4.026,4.661,5.342,6.025,6.668,7.234,7.705,8.080,8.378,8.627,8.855,9.082,9.313,9.543,
-9.764,9.969,10.159,10.344,10.537,10.751,10.988,11.244,11.505,11.753,11.974,12.162,12.315,12.438,12.536,12.612,
-12.667,12.699,12.712,12.711,12.706,12.706,12.722,12.759,12.815,12.887,12.969,13.054,13.141,13.225,13.305,13.377,
-13.441,13.499,13.556,13.624,13.715,13.836,13.989,14.161,14.333,14.481,14.587,14.645,14.665,14.665,14.666,14.680,
-14.709,14.738,14.749,14.723,14.659,14.570,14.486,14.441,14.460,14.554,14.709,14.892,15.062,15.177,15.209,15.146,
-14.992,14.764,14.488,14.186,13.882,13.592,13.331,13.106,12.922,12.779,12.676,12.609,12.578,12.585,12.640,12.749,
-12.917,13.139,13.396,13.654,13.872,14.005,14.017,13.891,13.628,13.252,12.802,12.327,11.875,11.488,11.192,11.000,
-10.907,10.891,10.923,10.969,10.995,10.980,10.916,10.809,10.677,10.547,10.441,10.378,10.364,10.397,10.470,10.571,
-10.689,10.815,10.938,11.046,11.129,11.176,11.183,11.159,11.117,11.075,11.049,11.038,11.024,10.971,10.836,10.585,
-10.202,9.702,9.121,8.513,7.922,7.378,6.881,6.411,5.937,5.434,4.897,4.340,3.792,3.283,2.835,2.456,
-2.145,1.907,1.755,1.726,1.861,2.194,2.729,3.423,4.187,4.905,5.461,5.775,5.824,5.648,5.332,4.981,
-4.686,4.497,4.416,4.410,4.427,4.423,4.377,4.295,4.202,4.127,4.091,4.102,4.153,4.232,4.332,4.452,
-4.599,4.779,4.993,5.230,5.469,5.687,5.868,6.005,6.104,6.179,6.246,6.313,6.378,6.432,6.466,6.474,
-6.463,6.445,6.438,6.455,6.501,6.570,6.647,6.719,6.776,6.821,6.866,6.929,7.026,7.169,7.357,7.582,
-7.828,8.079,8.319,8.538,8.732,8.899,9.041,9.165,9.278,9.390,9.512,9.651,9.810,9.988,10.175,10.360,
-10.534,10.688,10.822,10.939,11.046,11.146,11.244,11.339,11.431,11.517,11.601,11.685,11.773,11.868,11.969,12.069,
-12.163,12.245,12.310,12.363,12.406,12.444,12.477,12.499,12.503,12.479,12.427,12.353,12.278,12.226,12.223,12.291,
-12.439,12.665,12.955,13.293,13.660,14.039,14.413,14.765,15.070,15.298,15.416,15.393,15.204,14.839,14.300,13.609,
-12.797,11.914,11.016,10.174,9.466,8.970,8.756,8.868,9.316,10.065,11.044,12.155,13.295,14.381,15.358,16.209,
-16.944,17.578,18.119,18.554,18.850,18.970,18.891,18.622,18.214,17.753,17.343,17.073,16.998,17.123,17.399,17.745,
-18.071,18.302,18.400,18.367,18.241,18.078,17.926,17.812,17.729,17.639,17.485,17.213,16.786,16.201,15.493,14.723,
-13.967,13.293,12.748,12.345,12.067,11.873,11.714,11.550,11.351,11.107,10.820,10.499,10.151,9.782,9.392,8.986,
-8.569,8.155,7.760,7.399,7.081,6.807,6.569,6.355,6.153,5.955,5.756,5.551,5.335,5.099,4.833,4.526,
-4.176,3.795,3.402,3.026,2.692,2.416,2.197,2.017,1.851,1.671,1.460,1.217,.955,.696,.459,.251,
-.065,-.124,-.344,-.622,-.968,-1.374,-1.812,-2.246,-2.646,-2.994,-3.299,-3.591,-3.917,-4.325,-4.851,-5.512,
--6.294,-7.166,-8.081,-8.991,-9.859,-10.659,-11.379,-12.015,-12.567,-13.037,-13.427,-13.744,-14.006,-14.241,-14.490,-14.793,
--15.185,-15.682,-16.276,-16.937,-17.623,-18.288,-18.898,-19.440,-19.918,-20.354,-20.774,-21.203,-21.655,-22.134,-22.632,-23.143,
--23.659,-24.176,-24.696,-25.216,-25.732,-26.233,-26.706,-27.136,-27.517,-27.848,-28.137,-28.397,-28.643,-28.885,-29.127,-29.370,
--29.608,-29.838,-30.059,-30.272,-30.483,-30.696,-30.916,-31.144,-31.380,-31.624,-31.875,-32.133,-32.397,-32.664,-32.929,-33.185,
--33.425,-33.642,-33.835,-34.008,-34.171,-34.336,-34.517,-34.723,-34.964,-35.240,-35.553,-35.899,-36.275,-36.680,-37.112,-37.566,
--38.038,-38.520,-38.999,-39.463,-39.899,-40.297,-40.652,-40.963,-41.236,-41.477,-41.697,-41.901,-42.095,-42.283,-42.467,-42.649,
--42.835,-43.033,-43.250,-43.492,-43.761,-44.055,-44.368,-44.690,-45.010,-45.320,-45.612,-45.887,-46.144,-46.390,-46.630,-46.869,
--47.113,-47.361,-47.608,-47.843,-48.052,-48.221,-48.339,-48.403,-48.423,-48.415,-48.402,-48.403,-48.431,-48.486,-48.554,-48.617,
--48.651,-48.641,-48.577,-48.460,-48.299,-48.102,-47.876,-47.625,-47.353,-47.063,-46.762,-46.461,-46.174,-45.914,-45.687,-45.492,
--45.323,-45.171,-45.027,-44.887,-44.749,-44.615,-44.486,-44.358,-44.224,-44.075,-43.901,-43.698,-43.466,-43.209,-42.933,-42.644,
--42.343,-42.032,-41.713,-41.387,-41.061,-40.741,-40.430,-40.124,-39.814,-39.484,-39.120,-38.711,-38.260,-37.781,-37.298,-36.834,
--36.407,-36.022,-35.670,-35.331,-34.986,-34.620,-34.227,-33.813,-33.386,-32.952,-32.511,-32.052,-31.559,-31.021,-30.436,-29.816,
--29.189,-28.590,-28.045,-27.568,-27.151,-26.765,-26.377,-25.955,-25.489,-24.997,-24.519,-24.112,-23.829,-23.702,-23.729,-23.872,
--24.067,-24.234,-24.304,-24.231,-24.000,-23.635,-23.179,-22.685,-22.200,-21.752,-21.346,-20.968,-20.592,-20.191,-19.742,-19.231,
--18.648,-17.989,-17.247,-16.417,-15.496,-14.487,-13.406,-12.280,-11.138,-10.009,-8.905,-7.826,-6.756,-5.674,-4.573,-3.463,
--2.379,-1.367,-.466,.311,.993,1.647,2.361,3.215,4.244,5.418,6.644,7.785,8.702,9.297,9.543,9.499,
-9.288,9.060,8.952,9.049,9.366,9.859,10.450,11.058,11.630,12.149,12.638,13.137,13.684,14.299,14.978,15.696,
-16.418,17.113,17.765,18.375,18.954,19.524,20.101,20.691,21.289,21.873,22.417,22.896,23.295,23.623,23.910,24.210,
-24.588,25.100,25.777,26.608,27.541,28.489,29.362,30.087,30.636,31.031,31.342,31.662,32.082,32.663,33.427,34.356,
-35.407,36.526,37.666,38.790,39.869,40.883,41.813,42.649,43.391,44.060,44.691,45.326,45.989,46.675,47.333,47.876,
-48.208,48.258,48.013,47.537,46.961,46.452,46.166,46.201,46.568,47.193,47.940,48.656,49.220,49.569,49.711,49.711,
-49.657,49.628,49.674,49.802,49.991,50.202,50.407,50.591,50.761,50.937,51.137,51.371,51.636,51.915,52.192,52.455,
-52.702,52.944,53.196,53.471,53.777,54.111,54.462,54.819,55.173,55.524,55.878,56.249,56.647,57.077,57.539,58.020,
-58.506,58.978,59.425,59.840,60.224,60.584,60.929,61.267,61.605,61.944,62.285,62.622,62.951,63.266,63.562,63.836,
-64.086,64.312,64.511,64.685,64.831,64.945,65.025,65.071,65.084,65.069,65.035,64.989,64.938,64.884,64.824,64.755,
-64.671,64.572,64.464,64.354,64.253,64.169,64.100,64.039,63.973,63.888,63.773,63.629,63.462,63.283,63.105,62.934,
-62.771,62.613,62.453,62.289,62.124,61.963,61.815,61.683,61.564,61.448,61.323,61.180,61.015,60.834,60.648,60.471,
-60.313,60.179,60.070,59.986,59.930,59.906,59.920,59.972,60.053,60.145,60.222,60.262,60.251,60.194,60.110,60.023,
-59.949,59.891,59.834,59.753,59.625,59.446,59.238,59.041,58.902,58.850,58.887,58.976,59.057,59.067,58.963,58.738,
-58.424,58.078,57.754,57.487,57.272,57.077,56.854,56.564,56.195,55.764,55.308,54.863,54.449,54.055,53.648,53.186,
-52.645,52.028,51.375,50.748,50.211,49.813,49.575,49.486,49.517,49.633,49.805,50.009,50.227,50.433,50.589,50.651,
-50.575,50.337,50.268,49.813,49.261,48.684,48.162,47.752,47.471,47.296,47.171,47.034,46.842,46.584,46.287,46.004,
-45.789,45.684,45.696,45.803,45.956,46.100,46.186,46.184,46.094,45.935,45.746,45.574,45.458,45.425,45.481,45.607,
-45.762,45.888,45.922,45.808,45.512,45.024,44.368,43.588,42.744,41.896,41.091,40.360,39.708,39.127,38.595,38.088,
-37.589,37.088,36.587,36.095,35.621,35.174,34.757,34.366,33.991,33.623,33.253,32.875,32.488,32.089,31.672,31.224,
-30.729,30.166,29.522,28.795,28.000,27.166,26.333,25.541,24.821,24.187,23.639,23.162,22.732,22.330,21.937,21.545,
-21.152,20.759,20.371,19.995,19.644,19.331,19.074,18.886,18.773,18.733,18.745,18.786,18.825,18.841,18.825,18.783,
-18.729,18.682,18.654,18.645,18.639,18.614,18.549,18.429,18.255,18.042,17.815,17.603,17.428,17.301,17.223,17.189,
-17.187,17.209,17.248,17.301,17.361,17.423,17.475,17.508,17.512,17.484,17.429,17.353,17.264,17.166,17.057,16.931,
-16.784,16.617,16.440,16.270,16.126,16.015,15.934,15.859,15.758,15.598,15.360,15.046,14.680,14.301,13.948,13.650,
-13.412,13.222,13.059,12.907,12.764,12.645,12.577,12.578,12.650,12.766,12.881,12.939,12.898,12.746,12.505,12.227,
-11.972,11.792,11.707,11.705,11.745,11.776,11.758,11.672,11.531,11.366,11.215,11.106,11.047,11.020,10.992,10.928,
-10.803,10.612,10.370,10.111,9.868,9.667,9.517,9.407,9.314,9.211,9.076,8.906,8.711,8.513,8.332,8.180,
-8.054,7.933,7.791,7.608,7.379,7.118,6.854,6.617,6.421,6.260,6.098,5.889,5.590,5.181,4.677,4.122,
-3.578,3.098,2.711,2.408,2.150,1.885,1.570,1.190,.757,.307,-.121,-.501,-.827,-1.112,-1.376,-1.633,
--1.880,-2.105,-2.293,-2.442,-2.572,-2.715,-2.903,-3.144,-3.412,-3.648,-3.776,-3.738,-3.518,-3.165,-2.778,-2.483,
--2.394,-2.573,-3.020,-3.670,-4.427,-5.196,-5.912,-6.553,-7.134,-7.684,-8.224,-8.752,-9.244,-9.664,-9.987,-10.210,
--10.361,-10.485,-10.635,-10.846,-11.136,-11.499,-11.919,-12.379,-12.871,-13.399,-13.965,-14.568,-15.193,-15.810,-16.382,-16.873,
--17.265,-17.559,-17.775,-17.947,-18.108,-18.286,-18.494,-18.730,-18.986,-19.246,-19.501,-19.745,-19.981,-20.220,-20.477,-20.767,
--21.099,-21.473,-21.875,-22.279,-22.651,-22.957,-23.174,-23.295,-23.335,-23.328,-23.317,-23.345,-23.446,-23.632,-23.901,-24.233,
--24.599,-24.968,-25.313,-25.610,-25.840,-25.994,-26.070,-26.078,-26.043,-25.995,-25.974,-26.010,-26.124,-26.316,-26.569,-26.851,
--27.130,-27.379,-27.585,-27.748,-27.878,-27.987,-28.083,-28.169,-28.244,-28.303,-28.349,-28.386,-28.422,-28.462,-28.503,-28.537,
--28.548,-28.522,-28.453,-28.345,-28.211,-28.071,-27.941,-27.831,-27.745,-27.683,-27.647,-27.647,-27.701,-27.825,-28.029,-28.307,
--28.629,-28.951,-29.221,-29.396,-29.455,-29.403,-29.271,-29.108,-28.962,-28.874,-28.863,-28.929,-29.053,-29.207,-29.362,-29.492,
--29.582,-29.626,-29.630,-29.608,-29.579,-29.562,-29.570,-29.610,-29.677,-29.757,-29.834,-29.897,-29.945,-29.992,-30.064,-30.187,
--30.385,-30.663,-31.006,-31.385,-31.759,-32.092,-32.358,-32.549,-32.673,-32.746,-32.786,-32.806,-32.808,-32.791,-32.750,-32.682,
--32.593,-32.493,-32.394,-32.306,-32.232,-32.168,-32.103,-32.024,-31.921,-31.786,-31.619,-31.423,-31.205,-30.976,-30.745,-30.526,
--30.331,-30.171,-30.050,-29.968,-29.916,-29.879,-29.842,-29.791,-29.724,-29.645,-29.567,-29.504,-29.464,-29.445,-29.433,-29.412,
--29.363,-29.273,-29.142,-28.975,-28.781,-28.567,-28.331,-28.064,-27.758,-27.409,-27.026,-26.633,-26.263,-25.947,-25.708,-25.550,
--25.458,-25.404,-25.357,-25.297,-25.216,-25.124,-25.036,-24.968,-24.922,-24.889,-24.846,-24.765,-24.624,-24.410,-24.127,-23.784,
--23.397,-22.981,-22.545,-22.095,-21.641,-21.198,-20.793,-20.460,-20.235,-20.141,-20.180,-20.330,-20.538,-20.734,-20.845,-20.803,
--20.566,-20.120,-19.484,-18.698,-17.819,-16.906,-16.013,-15.178,-14.428,-13.776,-13.224,-12.765,-12.388,-12.075,-11.805,-11.555,
--11.303,-11.032,-10.732,-10.402,-10.052,-9.694,-9.344,-9.013,-8.710,-8.435,-8.188,-7.964,-7.757,-7.560,-7.365,-7.161,
--6.935,-6.678,-6.380,-6.041,-5.665,-5.264,-4.849,-4.430,-4.010,-3.586,-3.153,-2.703,-2.235,-1.754,-1.271,-.802,
--.361,.043,.407,.738,1.042,1.327,1.597,1.849,2.077,2.274,2.433,2.556,2.653,2.747,2.871,3.063,
-3.358,3.780,4.335,5.003,5.738,6.480,7.167,7.747,8.196,8.524,8.763,8.963,9.167,9.401,9.666,9.939,
-10.188,10.387,10.528,10.627,10.716,10.830,10.994,11.214,11.470,11.733,11.972,12.167,12.316,12.433,12.539,12.650,
-12.770,12.893,13.001,13.079,13.118,13.123,13.107,13.092,13.098,13.136,13.212,13.322,13.457,13.605,13.750,13.878,
-13.976,14.036,14.059,14.059,14.057,14.079,14.149,14.274,14.443,14.631,14.802,14.925,14.984,14.982,14.943,14.896,
-14.869,14.875,14.909,14.955,14.995,15.019,15.030,15.044,15.084,15.164,15.285,15.429,15.564,15.654,15.670,15.595,
-15.431,15.194,14.904,14.586,14.258,13.934,13.625,13.340,13.089,12.879,12.719,12.614,12.565,12.575,12.645,12.778,
-12.974,13.228,13.526,13.840,14.130,14.351,14.458,14.419,14.221,13.874,13.413,12.885,12.346,11.852,11.445,11.154,
-10.986,10.930,10.956,11.026,11.099,11.140,11.129,11.064,10.964,10.857,10.776,10.744,10.773,10.852,10.961,11.074,
-11.167,11.227,11.250,11.239,11.199,11.133,11.044,10.935,10.818,10.711,10.639,10.620,10.657,10.728,10.785,10.764,
-10.606,10.272,9.761,9.112,8.392,7.672,7.008,6.423,5.905,5.420,4.931,4.416,3.875,3.332,2.816,2.352,
-1.946,1.590,1.274,1.002,.807,.744,.878,1.255,1.876,2.688,3.584,4.429,5.098,5.508,5.638,5.531,
-5.272,4.960,4.677,4.468,4.338,4.265,4.213,4.153,4.073,3.975,3.877,3.796,3.749,3.748,3.800,3.911,
-4.084,4.318,4.602,4.916,5.230,5.514,5.745,5.915,6.033,6.123,6.210,6.312,6.433,6.560,6.668,6.737,
-6.757,6.735,6.695,6.667,6.677,6.736,6.839,6.966,7.091,7.196,7.272,7.329,7.385,7.462,7.579,7.742,
-7.947,8.180,8.424,8.663,8.885,9.083,9.256,9.404,9.532,9.646,9.754,9.864,9.986,10.123,10.278,10.445,
-10.617,10.785,10.941,11.083,11.209,11.321,11.423,11.513,11.591,11.658,11.714,11.768,11.831,11.912,12.020,12.153,
-12.301,12.449,12.578,12.675,12.737,12.771,12.790,12.809,12.837,12.870,12.899,12.910,12.893,12.850,12.800,12.769,
-12.789,12.883,13.057,13.300,13.584,13.875,14.142,14.368,14.550,14.695,14.812,14.900,14.940,14.895,14.713,14.343,
-13.751,12.933,11.926,10.810,9.698,8.719,7.994,7.616,7.634,8.038,8.771,9.738,10.831,11.951,13.030,14.033,
-14.960,15.824,16.637,17.395,18.067,18.605,18.960,19.102,19.032,18.794,18.463,18.126,17.863,17.721,17.706,17.788,
-17.908,18.003,18.026,17.960,17.819,17.648,17.500,17.426,17.449,17.561,17.716,17.843,17.859,17.695,17.311,16.712,
-15.945,15.091,14.246,13.493,12.888,12.448,12.150,11.947,11.780,11.599,11.372,11.085,10.743,10.361,9.951,9.525,
-9.088,8.647,8.206,7.777,7.370,7.000,6.676,6.403,6.179,5.995,5.841,5.700,5.554,5.386,5.181,4.929,
-4.631,4.296,3.945,3.601,3.285,3.010,2.770,2.550,2.322,2.061,1.752,1.400,1.023,.657,.333,.075,
--.119,-.268,-.413,-.599,-.859,-1.207,-1.630,-2.093,-2.550,-2.962,-3.308,-3.599,-3.873,-4.186,-4.593,-5.136,
--5.826,-6.644,-7.542,-8.462,-9.348,-10.159,-10.874,-11.493,-12.029,-12.497,-12.913,-13.288,-13.631,-13.956,-14.284,-14.641,
--15.053,-15.538,-16.100,-16.723,-17.375,-18.018,-18.620,-19.161,-19.639,-20.071,-20.482,-20.898,-21.339,-21.812,-22.314,-22.838,
--23.374,-23.914,-24.455,-24.992,-25.518,-26.024,-26.498,-26.929,-27.312,-27.650,-27.953,-28.236,-28.512,-28.790,-29.070,-29.347,
--29.611,-29.857,-30.081,-30.289,-30.489,-30.690,-30.899,-31.118,-31.346,-31.577,-31.808,-32.036,-32.261,-32.485,-32.708,-32.929,
--33.146,-33.357,-33.558,-33.747,-33.925,-34.096,-34.267,-34.446,-34.644,-34.873,-35.145,-35.467,-35.842,-36.265,-36.726,-37.208,
--37.693,-38.167,-38.619,-39.046,-39.447,-39.824,-40.179,-40.509,-40.814,-41.090,-41.337,-41.559,-41.763,-41.960,-42.156,-42.360,
--42.574,-42.799,-43.034,-43.280,-43.537,-43.805,-44.084,-44.375,-44.675,-44.981,-45.288,-45.593,-45.895,-46.190,-46.477,-46.757,
--47.028,-47.291,-47.546,-47.791,-48.023,-48.235,-48.417,-48.561,-48.662,-48.723,-48.754,-48.770,-48.792,-48.831,-48.892,-48.965,
--49.031,-49.065,-49.044,-48.954,-48.791,-48.565,-48.294,-47.996,-47.690,-47.388,-47.096,-46.820,-46.559,-46.318,-46.096,-45.898,
--45.723,-45.571,-45.441,-45.330,-45.234,-45.147,-45.062,-44.968,-44.856,-44.719,-44.552,-44.358,-44.141,-43.909,-43.668,-43.418,
--43.154,-42.869,-42.554,-42.210,-41.843,-41.467,-41.097,-40.744,-40.409,-40.079,-39.737,-39.363,-38.946,-38.490,-38.014,-37.546,
--37.117,-36.743,-36.425,-36.146,-35.879,-35.591,-35.262,-34.885,-34.467,-34.025,-33.572,-33.115,-32.648,-32.154,-31.616,-31.027,
--30.393,-29.740,-29.102,-28.512,-27.992,-27.542,-27.140,-26.749,-26.336,-25.879,-25.384,-24.881,-24.422,-24.061,-23.838,-23.767,
--23.827,-23.967,-24.120,-24.218,-24.210,-24.073,-23.813,-23.459,-23.053,-22.636,-22.236,-21.866,-21.521,-21.187,-20.845,-20.478,
--20.070,-19.608,-19.075,-18.454,-17.723,-16.866,-15.879,-14.770,-13.568,-12.310,-11.039,-9.786,-8.567,-7.384,-6.227,-5.088,
--3.975,-2.912,-1.933,-1.067,-.320,.337,.968,1.658,2.483,3.480,4.625,5.834,6.981,7.934,8.596,8.937,
-9.002,8.898,8.760,8.712,8.834,9.147,9.617,10.181,10.769,11.333,11.856,12.348,12.839,13.358,13.924,14.544,
-15.208,15.901,16.603,17.298,17.977,18.631,19.260,19.866,20.454,21.032,21.603,22.161,22.695,23.185,23.619,23.996,
-24.340,24.696,25.117,25.652,26.319,27.099,27.933,28.741,29.448,30.009,30.426,30.750,31.060,31.444,31.970,32.667,
-33.526,34.507,35.555,36.612,37.631,38.581,39.440,40.205,40.887,41.516,42.138,42.804,43.552,44.389,45.272,46.114,
-46.800,47.225,47.332,47.141,46.754,46.330,46.040,46.015,46.307,46.872,47.591,48.311,48.896,49.268,49.423,49.420,
-49.354,49.315,49.359,49.496,49.699,49.926,50.137,50.320,50.484,50.658,50.869,51.132,51.443,51.778,52.109,52.413,
-52.679,52.913,53.135,53.365,53.620,53.910,54.233,54.584,54.955,55.344,55.749,56.173,56.616,57.074,57.540,58.006,
-58.462,58.902,59.325,59.730,60.121,60.500,60.868,61.228,61.579,61.923,62.262,62.599,62.933,63.260,63.573,63.863,
-64.123,64.347,64.535,64.692,64.821,64.926,65.008,65.062,65.086,65.076,65.034,64.968,64.889,64.807,64.727,64.650,
-64.569,64.477,64.371,64.253,64.132,64.019,63.923,63.845,63.775,63.698,63.596,63.457,63.281,63.076,62.859,62.645,
-62.442,62.252,62.069,61.887,61.707,61.536,61.385,61.268,61.186,61.130,61.079,61.008,60.898,60.744,60.557,60.361,
-60.183,60.042,59.946,59.888,59.854,59.831,59.815,59.808,59.817,59.846,59.888,59.928,59.947,59.930,59.877,59.797,
-59.711,59.632,59.562,59.487,59.381,59.223,59.012,58.773,58.554,58.407,58.368,58.435,58.567,58.694,58.741,58.662,
-58.449,58.144,57.811,57.513,57.284,57.113,56.953,56.741,56.432,56.012,55.512,54.985,54.486,54.043,53.650,53.264,
-52.837,52.335,51.761,51.159,50.598,50.149,49.860,49.740,49.763,49.882,50.048,50.226,50.397,50.552,50.679,50.752,
-50.731,50.577,50.268,49.941,49.477,48.941,48.401,47.928,47.574,47.345,47.210,47.108,46.975,46.772,46.497,46.185,
-45.894,45.683,45.591,45.623,45.751,45.927,46.094,46.204,46.229,46.161,46.015,45.824,45.627,45.463,45.362,45.339,
-45.383,45.461,45.520,45.500,45.345,45.021,44.524,43.881,43.139,42.359,41.593,40.875,40.215,39.603,39.017,38.436,
-37.845,37.246,36.650,36.076,35.543,35.059,34.624,34.225,33.845,33.467,33.080,32.684,32.284,31.891,31.508,31.131,
-30.740,30.309,29.807,29.213,28.523,27.755,26.942,26.131,25.361,24.660,24.038,23.487,22.989,22.527,22.090,21.675,
-21.288,20.934,20.614,20.321,20.046,19.778,19.515,19.267,19.049,18.879,18.770,18.724,18.728,18.764,18.811,18.851,
-18.877,18.891,18.894,18.886,18.857,18.791,18.667,18.471,18.198,17.863,17.493,17.123,16.788,16.516,16.319,16.198,
-16.143,16.144,16.188,16.267,16.374,16.503,16.643,16.778,16.894,16.977,17.021,17.024,16.991,16.929,16.838,16.717,
-16.562,16.372,16.154,15.929,15.726,15.573,15.489,15.470,15.487,15.497,15.449,15.306,15.056,14.717,14.328,13.933,
-13.570,13.253,12.981,12.737,12.511,12.306,12.142,12.050,12.054,12.155,12.326,12.514,12.656,12.698,12.619,12.433,
-12.185,11.934,11.732,11.607,11.555,11.548,11.551,11.530,11.474,11.388,11.291,11.204,11.136,11.082,11.022,10.932,
-10.793,10.599,10.361,10.103,9.859,9.656,9.508,9.414,9.356,9.303,9.225,9.099,8.917,8.692,8.449,8.218,
-8.025,7.877,7.766,7.665,7.546,7.389,7.190,6.967,6.744,6.544,6.373,6.213,6.026,5.772,5.424,4.982,
-4.480,3.973,3.516,3.147,2.867,2.647,2.435,2.181,1.856,1.459,1.015,.557,.116,-.298,-.687,-1.063,
--1.433,-1.789,-2.112,-2.383,-2.594,-2.760,-2.912,-3.086,-3.297,-3.530,-3.733,-3.839,-3.792,-3.578,-3.240,-2.875,
--2.604,-2.536,-2.732,-3.188,-3.841,-4.595,-5.356,-6.063,-6.697,-7.275,-7.825,-8.366,-8.890,-9.369,-9.766,-10.061,
--10.262,-10.408,-10.559,-10.770,-11.079,-11.489,-11.976,-12.502,-13.031,-13.544,-14.042,-14.538,-15.047,-15.574,-16.107,-16.623,
--17.094,-17.498,-17.829,-18.095,-18.318,-18.521,-18.727,-18.945,-19.178,-19.419,-19.661,-19.895,-20.122,-20.347,-20.581,-20.839,
--21.133,-21.469,-21.843,-22.238,-22.626,-22.975,-23.253,-23.443,-23.545,-23.576,-23.572,-23.575,-23.625,-23.753,-23.972,-24.279,
--24.656,-25.076,-25.505,-25.908,-26.251,-26.507,-26.661,-26.711,-26.677,-26.594,-26.509,-26.471,-26.514,-26.656,-26.887,-27.180,
--27.496,-27.798,-28.060,-28.272,-28.437,-28.566,-28.666,-28.743,-28.796,-28.824,-28.831,-28.828,-28.831,-28.853,-28.898,-28.960,
--29.018,-29.048,-29.030,-28.960,-28.847,-28.714,-28.589,-28.489,-28.420,-28.375,-28.342,-28.314,-28.298,-28.316,-28.397,-28.563,
--28.821,-29.152,-29.514,-29.850,-30.107,-30.251,-30.270,-30.181,-30.021,-29.834,-29.660,-29.529,-29.455,-29.441,-29.475,-29.543,
--29.624,-29.702,-29.761,-29.796,-29.813,-29.823,-29.846,-29.899,-29.992,-30.120,-30.267,-30.411,-30.531,-30.623,-30.700,-30.790,
--30.930,-31.149,-31.458,-31.844,-32.271,-32.691,-33.058,-33.338,-33.519,-33.609,-33.630,-33.607,-33.557,-33.491,-33.406,-33.298,
--33.165,-33.013,-32.854,-32.705,-32.584,-32.499,-32.447,-32.415,-32.382,-32.325,-32.226,-32.074,-31.871,-31.626,-31.357,-31.084,
--30.827,-30.601,-30.413,-30.264,-30.150,-30.062,-29.991,-29.929,-29.874,-29.827,-29.788,-29.759,-29.735,-29.706,-29.661,-29.587,
--29.479,-29.341,-29.184,-29.025,-28.877,-28.741,-28.606,-28.448,-28.239,-27.961,-27.614,-27.221,-26.821,-26.462,-26.181,-25.993,
--25.889,-25.839,-25.803,-25.752,-25.672,-25.574,-25.482,-25.421,-25.407,-25.431,-25.469,-25.483,-25.438,-25.312,-25.101,-24.821,
--24.489,-24.125,-23.733,-23.309,-22.844,-22.335,-21.792,-21.245,-20.736,-20.311,-20.005,-19.829,-19.766,-19.771,-19.781,-19.731,
--19.567,-19.255,-18.789,-18.186,-17.484,-16.725,-15.956,-15.212,-14.522,-13.901,-13.354,-12.880,-12.472,-12.118,-11.806,-11.518,
--11.237,-10.948,-10.638,-10.298,-9.928,-9.533,-9.127,-8.723,-8.337,-7.980,-7.662,-7.386,-7.150,-6.948,-6.769,-6.600,
--6.424,-6.224,-5.986,-5.699,-5.359,-4.970,-4.540,-4.082,-3.609,-3.134,-2.665,-2.207,-1.762,-1.331,-.913,-.507,
--.112,.270,.641,1.001,1.348,1.680,1.994,2.283,2.543,2.767,2.949,3.086,3.181,3.247,3.306,3.393,
-3.550,3.820,4.232,4.792,5.477,6.234,6.991,7.677,8.237,8.651,8.939,9.147,9.336,9.551,9.815,10.114,
-10.411,10.663,10.842,10.947,11.007,11.067,11.172,11.345,11.578,11.839,12.083,12.274,12.398,12.469,12.522,12.593,
-12.709,12.871,13.060,13.239,13.377,13.453,13.469,13.444,13.408,13.389,13.406,13.466,13.568,13.702,13.854,14.012,
-14.159,14.282,14.369,14.418,14.436,14.440,14.457,14.511,14.614,14.761,14.930,15.090,15.209,15.273,15.283,15.262,
-15.239,15.240,15.276,15.344,15.429,15.512,15.585,15.650,15.720,15.809,15.920,16.042,16.148,16.204,16.180,16.061,
-15.850,15.569,15.248,14.915,14.589,14.276,13.977,13.688,13.413,13.160,12.946,12.788,12.700,12.686,12.742,12.860,
-13.027,13.229,13.456,13.694,13.927,14.132,14.283,14.353,14.320,14.170,13.903,13.535,13.092,12.614,12.146,11.730,
-11.405,11.192,11.098,11.108,11.189,11.297,11.391,11.437,11.423,11.362,11.281,11.216,11.197,11.233,11.316,11.414,
-11.491,11.514,11.464,11.343,11.168,10.964,10.755,10.559,10.390,10.255,10.165,10.133,10.165,10.254,10.374,10.470,
-10.475,10.322,9.970,9.415,8.700,7.904,7.114,6.401,5.799,5.296,4.847,4.398,3.905,3.360,2.784,2.216,
-1.694,1.234,.830,.460,.111,-.209,-.450,-.539,-.397,.026,.726,1.637,2.642,3.600,4.386,4.921,
-5.186,5.216,5.084,4.870,4.642,4.440,4.274,4.138,4.019,3.907,3.799,3.703,3.631,3.596,3.612,3.691,
-3.841,4.064,4.354,4.693,5.051,5.391,5.680,5.898,6.043,6.134,6.203,6.282,6.392,6.536,6.696,6.843,
-6.949,6.998,6.996,6.966,6.942,6.953,7.018,7.134,7.282,7.436,7.574,7.682,7.764,7.835,7.918,8.029,
-8.178,8.362,8.572,8.791,9.007,9.211,9.397,9.567,9.720,9.859,9.988,10.108,10.223,10.340,10.461,10.590,
-10.726,10.867,11.007,11.144,11.274,11.398,11.515,11.626,11.729,11.819,11.895,11.960,12.022,12.095,12.192,12.323,
-12.490,12.681,12.872,13.037,13.156,13.219,13.236,13.228,13.222,13.239,13.287,13.354,13.418,13.454,13.447,13.405,
-13.353,13.330,13.371,13.494,13.690,13.924,14.151,14.331,14.444,14.500,14.533,14.579,14.658,14.751,14.798,14.703,
-14.368,13.719,12.738,11.483,10.080,8.700,7.526,6.714,6.359,6.480,7.024,7.881,8.919,10.011,11.062,12.022,
-12.882,13.665,14.407,15.131,15.843,16.523,17.135,17.635,17.994,18.204,18.284,18.270,18.213,18.154,18.123,18.123,
-18.140,18.141,18.094,17.969,17.757,17.469,17.139,16.820,16.570,16.442,16.462,16.624,16.883,17.157,17.351,17.375,
-17.170,16.724,16.076,15.304,14.506,13.771,13.157,12.684,12.331,12.051,11.792,11.512,11.187,10.813,10.404,9.976,
-9.546,9.123,8.710,8.308,7.916,7.538,7.181,6.850,6.552,6.289,6.061,5.858,5.669,5.481,5.280,5.053,
-4.798,4.518,4.224,3.933,3.660,3.413,3.191,2.976,2.745,2.469,2.128,1.720,1.260,.784,.337,-.039,
--.318,-.500,-.611,-.700,-.819,-1.017,-1.314,-1.704,-2.150,-2.604,-3.019,-3.373,-3.676,-3.968,-4.314,-4.776,
--5.395,-6.176,-7.082,-8.046,-8.990,-9.844,-10.565,-11.145,-11.605,-11.984,-12.322,-12.650,-12.987,-13.337,-13.704,-14.093,
--14.513,-14.978,-15.499,-16.075,-16.691,-17.324,-17.945,-18.529,-19.067,-19.562,-20.030,-20.491,-20.963,-21.454,-21.962,-22.482,
--23.005,-23.527,-24.044,-24.559,-25.069,-25.571,-26.053,-26.506,-26.922,-27.299,-27.643,-27.965,-28.278,-28.588,-28.895,-29.192,
--29.470,-29.721,-29.945,-30.149,-30.345,-30.544,-30.752,-30.970,-31.191,-31.407,-31.612,-31.803,-31.984,-32.160,-32.339,-32.523,
--32.713,-32.907,-33.103,-33.301,-33.499,-33.700,-33.904,-34.114,-34.333,-34.569,-34.832,-35.136,-35.494,-35.908,-36.373,-36.867,
--37.364,-37.834,-38.258,-38.629,-38.955,-39.254,-39.549,-39.853,-40.169,-40.488,-40.797,-41.081,-41.334,-41.560,-41.770,-41.979,
--42.200,-42.440,-42.696,-42.962,-43.230,-43.495,-43.756,-44.015,-44.281,-44.559,-44.854,-45.170,-45.505,-45.854,-46.207,-46.554,
--46.882,-47.182,-47.448,-47.681,-47.885,-48.069,-48.240,-48.399,-48.543,-48.667,-48.765,-48.838,-48.890,-48.934,-48.981,-49.037,
--49.098,-49.149,-49.167,-49.129,-49.019,-48.832,-48.579,-48.280,-47.962,-47.647,-47.354,-47.088,-46.850,-46.636,-46.439,-46.256,
--46.086,-45.931,-45.795,-45.682,-45.593,-45.525,-45.469,-45.414,-45.346,-45.249,-45.117,-44.946,-44.743,-44.519,-44.284,-44.046,
--43.803,-43.546,-43.263,-42.943,-42.585,-42.195,-41.792,-41.395,-41.016,-40.659,-40.311,-39.952,-39.564,-39.135,-38.674,-38.204,
--37.760,-37.376,-37.073,-36.847,-36.675,-36.515,-36.323,-36.062,-35.715,-35.286,-34.796,-34.274,-33.744,-33.221,-32.702,-32.177,
--31.634,-31.066,-30.479,-29.891,-29.324,-28.797,-28.316,-27.874,-27.449,-27.016,-26.557,-26.070,-25.570,-25.091,-24.674,-24.352,
--24.144,-24.041,-24.014,-24.018,-24.004,-23.933,-23.781,-23.549,-23.253,-22.920,-22.580,-22.253,-21.952,-21.675,-21.413,-21.150,
--20.871,-20.560,-20.202,-19.780,-19.272,-18.657,-17.914,-17.030,-16.005,-14.854,-13.604,-12.292,-10.952,-9.613,-8.293,-7.005,
--5.760,-4.575,-3.475,-2.486,-1.626,-.892,-.249,.362,1.018,1.784,2.693,3.728,4.824,5.879,6.791,7.483,
-7.931,8.168,8.272,8.338,8.453,8.671,9.002,9.428,9.911,10.417,10.926,11.433,11.948,12.481,13.039,13.621,
-14.227,14.853,15.502,16.176,16.874,17.585,18.288,18.961,19.585,20.155,20.685,21.199,21.724,22.272,22.836,23.394,
-23.918,24.391,24.821,25.237,25.683,26.196,26.790,27.446,28.116,28.746,29.290,29.736,30.109,30.461,30.856,31.345,
-31.957,32.686,33.503,34.363,35.221,36.034,36.775,37.432,38.012,38.550,39.100,39.734,40.514,41.476,42.597,43.793,
-44.926,45.844,46.421,46.612,46.471,46.142,45.823,45.699,45.884,46.390,47.121,47.916,48.604,49.063,49.253,49.223,
-49.078,48.938,48.894,48.981,49.179,49.434,49.690,49.913,50.103,50.286,50.499,50.768,51.096,51.465,51.840,52.192,
-52.504,52.776,53.027,53.276,53.543,53.834,54.149,54.482,54.832,55.201,55.598,56.028,56.493,56.984,57.484,57.972,
-58.433,58.859,59.254,59.632,60.008,60.391,60.785,61.180,61.567,61.934,62.276,62.596,62.900,63.197,63.487,63.768,
-64.030,64.262,64.456,64.610,64.729,64.823,64.898,64.955,64.990,64.995,64.963,64.894,64.798,64.688,64.581,64.486,
-64.406,64.332,64.252,64.154,64.034,63.897,63.756,63.623,63.505,63.397,63.289,63.164,63.011,62.828,62.624,62.413,
-62.209,62.021,61.844,61.673,61.497,61.316,61.139,60.982,60.859,60.778,60.730,60.693,60.639,60.548,60.416,60.255,
-60.092,59.958,59.869,59.827,59.814,59.806,59.781,59.733,59.671,59.617,59.588,59.591,59.617,59.643,59.647,59.614,
-59.548,59.463,59.378,59.299,59.220,59.119,58.977,58.786,58.567,58.360,58.216,58.167,58.216,58.320,58.413,58.423,
-58.305,58.061,57.739,57.413,57.150,56.981,56.886,56.801,56.648,56.365,55.938,55.400,54.818,54.265,53.782,53.371,
-52.994,52.596,52.142,51.631,51.106,50.637,50.291,50.109,50.087,50.182,50.332,50.479,50.590,50.654,50.680,50.674,
-50.626,50.508,50.287,49.941,49.454,49.014,48.535,48.073,47.685,47.407,47.237,47.136,47.043,46.901,46.677,46.376,
-46.038,45.723,45.488,45.369,45.372,45.473,45.633,45.805,45.949,46.040,46.068,46.036,45.957,45.853,45.746,45.657,
-45.594,45.550,45.500,45.401,45.209,44.887,44.419,43.818,43.124,42.391,41.671,41.003,40.397,39.840,39.303,38.751,
-38.163,37.532,36.873,36.210,35.574,34.988,34.462,33.996,33.576,33.183,32.803,32.425,32.050,31.683,31.330,30.991,
-30.658,30.309,29.912,29.438,28.865,28.190,27.431,26.626,25.821,25.059,24.369,23.759,23.220,22.736,22.287,21.866,
-21.474,21.120,20.814,20.557,20.337,20.136,19.933,19.714,19.478,19.240,19.023,18.852,18.744,18.703,18.723,18.785,
-18.869,18.953,19.020,19.056,19.044,18.971,18.821,18.587,18.266,17.871,17.427,16.967,16.530,16.147,15.840,15.618,
-15.477,15.404,15.385,15.407,15.465,15.552,15.667,15.804,15.954,16.105,16.244,16.362,16.453,16.513,16.538,16.525,
-16.462,16.343,16.163,15.931,15.672,15.423,15.223,15.103,15.072,15.108,15.170,15.201,15.153,14.999,14.742,14.408,
-14.036,13.660,13.301,12.962,12.637,12.324,12.036,11.801,11.657,11.631,11.727,11.917,12.143,12.334,12.433,12.408,
-12.268,12.052,11.819,11.618,11.482,11.413,11.391,11.388,11.377,11.344,11.290,11.222,11.146,11.063,10.965,10.839,
-10.676,10.474,10.245,10.008,9.788,9.607,9.478,9.403,9.369,9.355,9.331,9.267,9.142,8.947,8.691,8.400,
-8.112,7.861,7.670,7.542,7.458,7.383,7.285,7.143,6.956,6.745,6.535,6.346,6.178,6.007,5.798,5.517,
-5.153,4.721,4.263,3.832,3.470,3.194,2.985,2.803,2.599,2.339,2.012,1.630,1.217,.799,.384,-.031,
--.458,-.900,-1.347,-1.774,-2.151,-2.458,-2.700,-2.899,-3.091,-3.296,-3.510,-3.695,-3.795,-3.758,-3.570,-3.269,
--2.942,-2.705,-2.663,-2.878,-3.351,-4.026,-4.812,-5.617,-6.376,-7.062,-7.680,-8.246,-8.773,-9.251,-9.660,-9.979,
--10.205,-10.365,-10.514,-10.713,-11.016,-11.441,-11.973,-12.565,-13.161,-13.715,-14.203,-14.635,-15.035,-15.436,-15.860,-16.311,
--16.775,-17.229,-17.651,-18.025,-18.349,-18.632,-18.885,-19.124,-19.357,-19.589,-19.820,-20.050,-20.278,-20.509,-20.748,-21.004,
--21.285,-21.595,-21.933,-22.288,-22.641,-22.969,-23.247,-23.457,-23.595,-23.669,-23.702,-23.727,-23.776,-23.878,-24.053,-24.310,
--24.646,-25.049,-25.498,-25.964,-26.411,-26.801,-27.097,-27.278,-27.339,-27.302,-27.210,-27.118,-27.079,-27.131,-27.285,-27.527,
--27.823,-28.132,-28.418,-28.664,-28.865,-29.029,-29.164,-29.276,-29.361,-29.412,-29.427,-29.411,-29.383,-29.363,-29.371,-29.412,
--29.474,-29.532,-29.558,-29.533,-29.458,-29.356,-29.259,-29.200,-29.196,-29.241,-29.307,-29.360,-29.373,-29.340,-29.282,-29.237,
--29.252,-29.358,-29.564,-29.849,-30.168,-30.471,-30.708,-30.848,-30.880,-30.811,-30.663,-30.465,-30.248,-30.044,-29.879,-29.770,
--29.725,-29.742,-29.805,-29.894,-29.991,-30.085,-30.179,-30.284,-30.416,-30.583,-30.785,-31.003,-31.212,-31.389,-31.523,-31.625,
--31.723,-31.855,-32.056,-32.341,-32.703,-33.108,-33.508,-33.856,-34.114,-34.267,-34.319,-34.288,-34.202,-34.082,-33.942,-33.789,
--33.623,-33.445,-33.261,-33.083,-32.926,-32.803,-32.723,-32.681,-32.663,-32.646,-32.602,-32.513,-32.365,-32.162,-31.917,-31.649,
--31.381,-31.130,-30.904,-30.704,-30.524,-30.360,-30.208,-30.073,-29.963,-29.889,-29.857,-29.864,-29.896,-29.929,-29.937,-29.896,
--29.793,-29.632,-29.435,-29.229,-29.041,-28.887,-28.762,-28.643,-28.496,-28.288,-28.003,-27.651,-27.265,-26.893,-26.581,-26.360,
--26.231,-26.169,-26.136,-26.093,-26.020,-25.923,-25.831,-25.780,-25.798,-25.888,-26.028,-26.170,-26.264,-26.267,-26.163,-25.958,
--25.675,-25.339,-24.963,-24.543,-24.061,-23.499,-22.852,-22.140,-21.408,-20.715,-20.122,-19.671,-19.373,-19.205,-19.115,-19.036,
--18.905,-18.675,-18.320,-17.844,-17.266,-16.623,-15.951,-15.286,-14.656,-14.078,-13.560,-13.103,-12.701,-12.342,-12.014,-11.704,
--11.397,-11.082,-10.750,-10.394,-10.008,-9.592,-9.152,-8.696,-8.239,-7.795,-7.381,-7.011,-6.690,-6.419,-6.189,-5.984,
--5.788,-5.582,-5.353,-5.091,-4.792,-4.455,-4.086,-3.686,-3.263,-2.822,-2.372,-1.924,-1.486,-1.068,-.674,-.300,
-.060,.418,.782,1.157,1.537,1.913,2.266,2.581,2.849,3.065,3.234,3.364,3.464,3.543,3.610,3.677,
-3.766,3.908,4.138,4.488,4.973,5.584,6.281,7.004,7.689,8.281,8.755,9.120,9.410,9.672,9.940,10.228,
-10.521,10.786,10.993,11.127,11.204,11.261,11.344,11.488,11.702,11.959,12.213,12.416,12.539,12.584,12.585,12.594,
-12.656,12.793,12.993,13.220,13.424,13.566,13.629,13.624,13.581,13.537,13.520,13.544,13.605,13.692,13.795,13.906,
-14.024,14.149,14.280,14.410,14.532,14.639,14.734,14.824,14.921,15.033,15.159,15.290,15.408,15.500,15.561,15.601,
-15.637,15.692,15.777,15.889,16.014,16.129,16.218,16.277,16.317,16.357,16.411,16.482,16.552,16.587,16.552,16.421,
-16.190,15.878,15.521,15.160,14.823,14.526,14.261,14.015,13.774,13.535,13.310,13.121,12.993,12.942,12.970,13.062,
-13.193,13.335,13.464,13.570,13.652,13.719,13.780,13.839,13.891,13.922,13.906,13.821,13.644,13.371,13.010,12.594,
-12.168,11.787,11.502,11.347,11.329,11.426,11.591,11.763,11.887,11.927,11.879,11.768,11.637,11.533,11.486,11.500,
-11.549,11.588,11.572,11.470,11.278,11.020,10.735,10.468,10.255,10.111,10.032,10.004,10.007,10.021,10.025,9.996,
-9.902,9.706,9.372,8.878,8.233,7.478,6.680,5.915,5.243,4.689,4.234,3.827,3.403,2.916,2.351,1.735,
-1.122,.565,.101,-.270,-.575,-.851,-1.117,-1.360,-1.525,-1.535,-1.317,-.831,-.093,.825,1.814,2.751,
-3.537,4.112,4.466,4.627,4.645,4.573,4.453,4.313,4.167,4.023,3.887,3.770,3.681,3.634,3.637,3.698,
-3.821,4.008,4.259,4.563,4.906,5.261,5.597,5.885,6.104,6.250,6.336,6.390,6.442,6.517,6.626,6.762,
-6.905,7.031,7.122,7.172,7.193,7.205,7.233,7.293,7.391,7.520,7.664,7.806,7.938,8.058,8.176,8.303,
-8.451,8.623,8.816,9.020,9.223,9.416,9.593,9.757,9.913,10.065,10.217,10.369,10.516,10.656,10.783,10.896,
-10.994,11.082,11.164,11.244,11.329,11.424,11.532,11.652,11.781,11.912,12.038,12.154,12.261,12.365,12.480,12.621,
-12.799,13.014,13.251,13.484,13.678,13.805,13.852,13.824,13.750,13.667,13.613,13.609,13.656,13.732,13.807,13.853,
-13.863,13.850,13.845,13.881,13.979,14.132,14.310,14.469,14.575,14.615,14.613,14.613,14.659,14.765,14.893,14.948,
-14.803,14.333,13.465,12.210,10.679,9.063,7.592,6.478,5.871,5.821,6.278,7.114,8.159,9.246,10.247,11.089,
-11.759,12.286,12.726,13.135,13.557,14.012,14.502,15.008,15.509,15.980,16.403,16.769,17.075,17.323,17.519,17.669,
-17.775,17.839,17.852,17.799,17.659,17.412,17.050,16.585,16.057,15.539,15.116,14.876,14.875,15.122,15.564,16.098,
-16.592,16.916,16.979,16.748,16.253,15.575,14.814,14.066,13.397,12.831,12.360,11.953,11.571,11.187,10.785,10.365,
-9.936,9.510,9.098,8.707,8.339,7.995,7.674,7.373,7.087,6.810,6.538,6.265,5.988,5.705,5.418,5.128,
-4.839,4.554,4.277,4.012,3.761,3.523,3.293,3.062,2.813,2.532,2.202,1.818,1.384,.918,.450,.020,
--.340,-.605,-.775,-.873,-.942,-1.038,-1.207,-1.479,-1.849,-2.283,-2.730,-3.137,-3.477,-3.759,-4.030,-4.365,
--4.837,-5.495,-6.342,-7.327,-8.360,-9.341,-10.180,-10.830,-11.292,-11.607,-11.839,-12.054,-12.301,-12.601,-12.954,-13.351,
--13.780,-14.238,-14.729,-15.258,-15.826,-16.426,-17.040,-17.646,-18.229,-18.783,-19.311,-19.825,-20.339,-20.860,-21.389,-21.917,
--22.436,-22.939,-23.426,-23.902,-24.373,-24.844,-25.313,-25.777,-26.227,-26.659,-27.072,-27.470,-27.857,-28.235,-28.598,-28.936,
--29.239,-29.500,-29.720,-29.914,-30.099,-30.292,-30.503,-30.730,-30.959,-31.175,-31.366,-31.527,-31.667,-31.801,-31.943,-32.103,
--32.281,-32.471,-32.665,-32.858,-33.051,-33.253,-33.473,-33.715,-33.982,-34.268,-34.570,-34.891,-35.235,-35.612,-36.027,-36.475,
--36.937,-37.385,-37.791,-38.135,-38.416,-38.655,-38.882,-39.132,-39.423,-39.757,-40.116,-40.471,-40.796,-41.075,-41.311,-41.521,
--41.730,-41.957,-42.214,-42.499,-42.800,-43.103,-43.397,-43.675,-43.942,-44.204,-44.473,-44.757,-45.064,-45.396,-45.750,-46.117,
--46.482,-46.828,-47.140,-47.407,-47.628,-47.811,-47.970,-48.120,-48.272,-48.427,-48.578,-48.714,-48.825,-48.908,-48.967,-49.011,
--49.048,-49.080,-49.098,-49.085,-49.025,-48.902,-48.713,-48.467,-48.183,-47.882,-47.587,-47.310,-47.059,-46.834,-46.632,-46.451,
--46.288,-46.145,-46.021,-45.920,-45.840,-45.781,-45.738,-45.704,-45.667,-45.616,-45.537,-45.419,-45.258,-45.056,-44.822,-44.566,
--44.299,-44.026,-43.744,-43.449,-43.133,-42.794,-42.435,-42.065,-41.695,-41.332,-40.974,-40.611,-40.230,-39.819,-39.380,-38.926,
--38.486,-38.096,-37.787,-37.576,-37.456,-37.394,-37.342,-37.243,-37.052,-36.740,-36.306,-35.772,-35.179,-34.566,-33.969,-33.403,
--32.870,-32.355,-31.839,-31.308,-30.756,-30.189,-29.618,-29.059,-28.520,-28.003,-27.502,-27.009,-26.520,-26.037,-25.573,-25.145,
--24.772,-24.464,-24.221,-24.030,-23.865,-23.701,-23.513,-23.286,-23.018,-22.718,-22.407,-22.106,-21.837,-21.609,-21.425,-21.274,
--21.136,-20.988,-20.804,-20.560,-20.236,-19.816,-19.286,-18.634,-17.851,-16.934,-15.882,-14.706,-13.422,-12.056,-10.637,-9.198,
--7.775,-6.404,-5.122,-3.962,-2.945,-2.080,-1.350,-.716,-.118,.507,1.210,2.014,2.905,3.832,4.728,5.524,
-6.180,6.687,7.076,7.399,7.709,8.044,8.418,8.822,9.235,9.646,10.055,10.481,10.948,11.473,12.056,12.683,
-13.325,13.961,14.582,15.196,15.825,16.485,17.177,17.883,18.568,19.200,19.761,20.264,20.742,21.242,21.796,22.414,
-23.070,23.723,24.327,24.857,25.318,25.741,26.171,26.643,27.169,27.731,28.295,28.823,29.294,29.712,30.102,30.503,
-30.952,31.472,32.068,32.728,33.424,34.123,34.791,35.398,35.925,36.381,36.805,37.268,37.863,38.676,39.750,41.057,
-42.487,43.867,45.008,45.762,46.079,46.027,45.777,45.551,45.544,45.861,46.488,47.299,48.108,48.738,49.083,49.135,
-48.978,48.746,48.571,48.536,48.657,48.895,49.183,49.463,49.709,49.930,50.161,50.432,50.758,51.127,51.508,51.870,
-52.192,52.476,52.745,53.024,53.335,53.681,54.052,54.429,54.796,55.153,55.513,55.895,56.319,56.790,57.296,57.812,
-58.308,58.765,59.175,59.551,59.914,60.286,60.679,61.093,61.512,61.916,62.288,62.620,62.916,63.189,63.450,63.708,
-63.958,64.192,64.393,64.553,64.668,64.745,64.794,64.825,64.842,64.840,64.811,64.747,64.648,64.524,64.392,64.270,
-64.173,64.101,64.043,63.980,63.895,63.777,63.628,63.461,63.291,63.133,62.990,62.854,62.714,62.558,62.382,62.193,
-62.002,61.824,61.664,61.522,61.386,61.248,61.100,60.947,60.804,60.684,60.595,60.535,60.486,60.426,60.337,60.216,
-60.074,59.935,59.824,59.755,59.725,59.715,59.699,59.658,59.590,59.513,59.452,59.431,59.457,59.516,59.576,59.605,
-59.579,59.499,59.384,59.263,59.157,59.072,58.992,58.893,58.759,58.593,58.420,58.279,58.202,58.191,58.217,58.220,
-58.142,57.946,57.643,57.286,56.954,56.716,56.601,56.582,56.582,56.509,56.286,55.889,55.350,54.744,54.154,53.639,
-53.215,52.852,52.502,52.124,51.715,51.308,50.963,50.737,50.656,50.705,50.827,50.952,51.020,51.001,50.900,50.742,
-50.555,50.350,50.114,49.822,49.454,48.941,48.551,48.153,47.786,47.489,47.280,47.148,47.053,46.939,46.758,46.490,
-46.151,45.786,45.453,45.207,45.076,45.062,45.141,45.280,45.440,45.594,45.726,45.828,45.900,45.947,45.974,45.982,
-45.973,45.938,45.857,45.703,45.442,45.049,44.514,43.854,43.110,42.341,41.608,40.956,40.401,39.929,39.502,39.072,
-38.596,38.050,37.431,36.757,36.056,35.358,34.690,34.068,33.503,32.998,32.550,32.154,31.803,31.486,31.192,30.907,
-30.616,30.303,29.947,29.531,29.037,28.456,27.792,27.062,26.298,25.539,24.819,24.162,23.575,23.049,22.565,22.106,
-21.664,21.243,20.858,20.527,20.260,20.057,19.900,19.768,19.635,19.488,19.326,19.161,19.013,18.905,18.853,18.860,
-18.919,19.011,19.110,19.189,19.218,19.175,19.041,18.809,18.482,18.073,17.608,17.119,16.640,16.203,15.833,15.543,
-15.333,15.194,15.108,15.059,15.034,15.027,15.039,15.076,15.147,15.255,15.396,15.563,15.742,15.919,16.078,16.206,
-16.288,16.311,16.262,16.137,15.940,15.694,15.435,15.206,15.047,14.980,15.000,15.076,15.156,15.188,15.131,14.966,
-14.701,14.360,13.969,13.552,13.122,12.689,12.266,11.878,11.565,11.364,11.303,11.381,11.564,11.791,11.987,12.095,
-12.085,11.966,11.780,11.583,11.423,11.328,11.297,11.308,11.329,11.333,11.303,11.237,11.140,11.019,10.876,10.712,
-10.530,10.333,10.135,9.952,9.800,9.689,9.622,9.592,9.585,9.581,9.561,9.505,9.395,9.218,8.970,8.661,
-8.317,7.974,7.673,7.443,7.296,7.217,7.171,7.117,7.020,6.868,6.672,6.458,6.255,6.076,5.912,5.733,
-5.506,5.207,4.840,4.433,4.030,3.673,3.384,3.159,2.966,2.768,2.532,2.248,1.924,1.581,1.235,.890,
-.532,.140,-.298,-.775,-1.264,-1.726,-2.127,-2.454,-2.718,-2.946,-3.164,-3.377,-3.562,-3.673,-3.667,-3.526,
--3.278,-3.002,-2.802,-2.784,-3.016,-3.508,-4.216,-5.056,-5.934,-6.774,-7.530,-8.188,-8.751,-9.226,-9.618,-9.925,
--10.154,-10.328,-10.490,-10.695,-10.994,-11.416,-11.954,-12.572,-13.209,-13.808,-14.327,-14.757,-15.116,-15.440,-15.765,-16.119,
--16.507,-16.922,-17.345,-17.755,-18.138,-18.486,-18.799,-19.083,-19.343,-19.586,-19.822,-20.057,-20.299,-20.554,-20.827,-21.118,
--21.428,-21.750,-22.079,-22.405,-22.717,-23.003,-23.251,-23.453,-23.608,-23.724,-23.815,-23.898,-23.995,-24.120,-24.285,-24.497,
--24.763,-25.085,-25.463,-25.888,-26.341,-26.788,-27.190,-27.503,-27.698,-27.770,-27.743,-27.662,-27.589,-27.577,-27.659,-27.840,
--28.094,-28.383,-28.664,-28.909,-29.112,-29.279,-29.429,-29.573,-29.712,-29.836,-29.927,-29.972,-29.972,-29.940,-29.903,-29.882,
--29.889,-29.916,-29.943,-29.944,-29.906,-29.833,-29.752,-29.702,-29.717,-29.811,-29.970,-30.152,-30.306,-30.387,-30.376,-30.284,
--30.154,-30.043,-30.003,-30.069,-30.246,-30.509,-30.817,-31.118,-31.365,-31.521,-31.566,-31.496,-31.323,-31.076,-30.793,-30.521,
--30.298,-30.153,-30.095,-30.115,-30.188,-30.287,-30.394,-30.504,-30.629,-30.786,-30.990,-31.241,-31.524,-31.811,-32.075,-32.294,
--32.471,-32.622,-32.778,-32.968,-33.210,-33.502,-33.820,-34.130,-34.394,-34.581,-34.676,-34.679,-34.607,-34.479,-34.318,-34.143,
--33.966,-33.793,-33.630,-33.477,-33.338,-33.219,-33.124,-33.053,-33.001,-32.958,-32.906,-32.828,-32.711,-32.547,-32.341,-32.108,
--31.865,-31.627,-31.405,-31.198,-30.997,-30.796,-30.589,-30.383,-30.196,-30.049,-29.962,-29.944,-29.985,-30.060,-30.132,-30.161,
--30.120,-29.999,-29.809,-29.577,-29.336,-29.115,-28.927,-28.765,-28.605,-28.418,-28.182,-27.890,-27.561,-27.228,-26.934,-26.712,
--26.575,-26.508,-26.479,-26.450,-26.394,-26.308,-26.215,-26.154,-26.164,-26.267,-26.451,-26.677,-26.886,-27.019,-27.037,-26.928,
--26.707,-26.400,-26.029,-25.602,-25.105,-24.516,-23.819,-23.021,-22.157,-21.292,-20.499,-19.843,-19.360,-19.048,-18.866,-18.753,
--18.637,-18.461,-18.189,-17.810,-17.335,-16.790,-16.202,-15.599,-15.004,-14.432,-13.897,-13.408,-12.967,-12.573,-12.217,-11.885,
--11.563,-11.234,-10.887,-10.513,-10.107,-9.670,-9.204,-8.715,-8.213,-7.710,-7.223,-6.769,-6.362,-6.010,-5.711,-5.453,
--5.216,-4.980,-4.729,-4.452,-4.151,-3.834,-3.510,-3.185,-2.861,-2.534,-2.195,-1.841,-1.471,-1.090,-.708,-.330,
-.042,.416,.801,1.205,1.627,2.054,2.465,2.831,3.128,3.347,3.493,3.584,3.644,3.699,3.761,3.837,
-3.928,4.039,4.182,4.381,4.667,5.063,5.575,6.188,6.860,7.541,8.180,8.744,9.224,9.630,9.986,10.309,
-10.606,10.868,11.081,11.232,11.328,11.394,11.469,11.588,11.767,11.994,12.232,12.432,12.558,12.599,12.582,12.556,
-12.577,12.682,12.874,13.119,13.360,13.541,13.629,13.625,13.561,13.486,13.445,13.462,13.533,13.636,13.741,13.829,
-13.899,13.964,14.047,14.165,14.326,14.520,14.733,14.946,15.144,15.321,15.473,15.600,15.699,15.770,15.816,15.850,
-15.889,15.955,16.061,16.208,16.377,16.540,16.667,16.739,16.758,16.740,16.712,16.695,16.694,16.690,16.652,16.544,
-16.346,16.059,15.709,15.339,14.990,14.690,14.446,14.245,14.066,13.888,13.706,13.531,13.385,13.294,13.272,13.316,
-13.406,13.510,13.596,13.641,13.641,13.608,13.567,13.548,13.568,13.631,13.719,13.801,13.833,13.778,13.609,13.328,
-12.961,12.558,12.182,11.897,11.747,11.746,11.873,12.073,12.274,12.405,12.420,12.307,12.097,11.847,11.626,11.485,
-11.445,11.483,11.547,11.572,11.509,11.342,11.094,10.820,10.586,10.437,10.386,10.405,10.434,10.402,10.251,9.950,
-9.497,8.918,8.248,7.522,6.772,6.019,5.289,4.606,3.993,3.468,3.026,2.640,2.267,1.856,1.374,.817,
-.219,-.362,-.863,-1.238,-1.476,-1.605,-1.672,-1.723,-1.780,-1.828,-1.820,-1.695,-1.402,-.923,-.282,.462,
-1.231,1.952,2.571,3.065,3.433,3.693,3.867,3.971,4.016,4.011,3.965,3.892,3.815,3.754,3.730,3.758,
-3.841,3.981,4.172,4.410,4.689,4.999,5.327,5.653,5.955,6.211,6.403,6.527,6.593,6.623,6.644,6.682,
-6.754,6.861,6.995,7.137,7.268,7.376,7.458,7.521,7.579,7.644,7.727,7.831,7.956,8.099,8.256,8.428,
-8.616,8.821,9.042,9.270,9.496,9.708,9.898,10.065,10.213,10.353,10.496,10.649,10.812,10.977,11.133,11.264,
-11.361,11.422,11.451,11.465,11.480,11.514,11.580,11.682,11.815,11.970,12.132,12.289,12.436,12.575,12.717,12.877,
-13.071,13.306,13.577,13.863,14.132,14.346,14.471,14.489,14.407,14.252,14.071,13.913,13.818,13.803,13.860,13.962,
-14.074,14.171,14.245,14.303,14.365,14.443,14.535,14.624,14.685,14.703,14.686,14.665,14.684,14.772,14.915,15.042,
-15.030,14.736,14.047,12.925,11.443,9.782,8.188,6.918,6.171,6.038,6.486,7.375,8.501,9.659,10.681,11.474,
-12.017,12.344,12.523,12.624,12.707,12.810,12.955,13.154,13.411,13.723,14.084,14.478,14.883,15.272,15.617,15.901,
-16.118,16.273,16.376,16.436,16.447,16.390,16.233,15.946,15.518,14.975,14.384,13.850,13.490,13.402,13.635,14.167,
-14.905,15.702,16.397,16.849,16.975,16.758,16.250,15.542,14.742,13.944,13.213,12.578,12.037,11.569,11.147,10.745,
-10.342,9.929,9.503,9.072,8.648,8.247,7.884,7.567,7.296,7.058,6.835,6.605,6.351,6.061,5.737,5.390,
-5.035,4.690,4.367,4.071,3.798,3.538,3.276,2.999,2.697,2.364,2.003,1.618,1.219,.816,.419,.043,
--.298,-.588,-.818,-.987,-1.108,-1.212,-1.340,-1.534,-1.819,-2.194,-2.628,-3.069,-3.463,-3.780,-4.025,-4.253,
--4.545,-4.987,-5.638,-6.499,-7.516,-8.583,-9.580,-10.406,-11.005,-11.381,-11.590,-11.714,-11.835,-12.012,-12.275,-12.620,
--13.031,-13.488,-13.978,-14.496,-15.043,-15.617,-16.207,-16.796,-17.369,-17.913,-18.427,-18.920,-19.409,-19.906,-20.419,-20.945,
--21.474,-21.997,-22.505,-22.996,-23.475,-23.947,-24.415,-24.882,-25.345,-25.803,-26.257,-26.710,-27.163,-27.617,-28.062,-28.482,
--28.859,-29.179,-29.438,-29.648,-29.831,-30.014,-30.216,-30.442,-30.681,-30.912,-31.112,-31.272,-31.396,-31.503,-31.619,-31.764,
--31.943,-32.148,-32.361,-32.563,-32.749,-32.927,-33.118,-33.344,-33.617,-33.939,-34.294,-34.663,-35.029,-35.386,-35.737,-36.094,
--36.459,-36.828,-37.185,-37.510,-37.790,-38.030,-38.251,-38.484,-38.761,-39.095,-39.478,-39.883,-40.270,-40.609,-40.884,-41.103,
--41.294,-41.488,-41.714,-41.983,-42.292,-42.626,-42.965,-43.293,-43.603,-43.893,-44.169,-44.438,-44.708,-44.984,-45.274,-45.580,
--45.901,-46.232,-46.560,-46.871,-47.153,-47.399,-47.613,-47.807,-47.994,-48.185,-48.380,-48.572,-48.747,-48.892,-48.998,-49.067,
--49.106,-49.124,-49.125,-49.105,-49.056,-48.964,-48.821,-48.627,-48.390,-48.124,-47.843,-47.560,-47.284,-47.018,-46.770,-46.544,
--46.350,-46.194,-46.080,-46.007,-45.966,-45.946,-45.936,-45.928,-45.915,-45.893,-45.855,-45.793,-45.694,-45.549,-45.352,-45.103,
--44.812,-44.494,-44.164,-43.836,-43.518,-43.211,-42.912,-42.616,-42.317,-42.009,-41.686,-41.345,-40.980,-40.592,-40.188,-39.782,
--39.397,-39.059,-38.793,-38.614,-38.523,-38.500,-38.509,-38.502,-38.427,-38.242,-37.922,-37.466,-36.895,-36.248,-35.569,-34.900,
--34.269,-33.682,-33.131,-32.591,-32.038,-31.454,-30.833,-30.185,-29.528,-28.885,-28.274,-27.705,-27.179,-26.691,-26.233,-25.800,
--25.391,-25.010,-24.660,-24.343,-24.057,-23.792,-23.536,-23.274,-22.994,-22.691,-22.369,-22.042,-21.731,-21.458,-21.244,-21.097,
--21.012,-20.965,-20.923,-20.845,-20.694,-20.441,-20.071,-19.579,-18.965,-18.230,-17.375,-16.394,-15.282,-14.043,-12.687,-11.244,
--9.755,-8.269,-6.842,-5.521,-4.342,-3.323,-2.460,-1.727,-1.081,-.470,.155,.825,1.548,2.307,3.063,3.773,
-4.405,4.949,5.423,5.866,6.321,6.814,7.350,7.903,8.438,8.919,9.337,9.709,10.076,10.489,10.982,11.565,
-12.215,12.893,13.560,14.193,14.796,15.394,16.013,16.668,17.350,18.029,18.669,19.248,19.771,20.268,20.786,21.364,
-22.016,22.724,23.442,24.120,24.720,25.237,25.693,26.129,26.584,27.078,27.607,28.147,28.666,29.143,29.574,29.975,
-30.375,30.803,31.283,31.829,32.441,33.105,33.797,34.480,35.110,35.650,36.085,36.441,36.791,37.240,37.901,38.846,
-40.073,41.484,42.905,44.137,45.016,45.476,45.574,45.473,45.384,45.493,45.895,46.562,47.365,48.122,48.674,48.939,
-48.933,48.755,48.544,48.416,48.436,48.600,48.858,49.143,49.410,49.649,49.881,50.142,50.454,50.816,51.199,51.569,
-51.896,52.177,52.433,52.699,53.010,53.379,53.799,54.241,54.674,55.078,55.452,55.817,56.202,56.628,57.104,57.614,
-58.132,58.626,59.077,59.482,59.855,60.220,60.598,61.000,61.419,61.838,62.237,62.599,62.920,63.206,63.470,63.724,
-63.971,64.207,64.417,64.587,64.706,64.773,64.797,64.791,64.766,64.730,64.681,64.613,64.519,64.400,64.265,64.129,
-64.008,63.911,63.839,63.779,63.713,63.622,63.497,63.337,63.155,62.967,62.787,62.621,62.466,62.311,62.146,61.967,
-61.778,61.592,61.424,61.282,61.170,61.080,61.000,60.919,60.832,60.744,60.661,60.587,60.524,60.461,60.385,60.285,
-60.158,60.013,59.870,59.748,59.660,59.607,59.577,59.554,59.526,59.493,59.468,59.470,59.511,59.589,59.681,59.749,
-59.760,59.693,59.554,59.372,59.186,59.031,58.919,58.838,58.759,58.655,58.514,58.349,58.191,58.071,58.001,57.962,
-57.909,57.791,57.575,57.267,56.916,56.595,56.372,56.276,56.283,56.318,56.285,56.101,55.735,55.212,54.606,54.008,
-53.492,53.088,52.782,52.530,52.290,52.045,51.808,51.618,51.511,51.498,51.555,51.626,51.646,51.564,51.363,51.063,
-50.707,50.339,49.986,49.647,49.306,48.941,48.535,48.213,47.902,47.623,47.402,47.244,47.133,47.028,46.880,46.652,
-46.336,45.959,45.572,45.236,44.999,44.883,44.879,44.955,45.070,45.188,45.285,45.360,45.419,45.480,45.556,45.651,
-45.760,45.862,45.922,45.898,45.745,45.429,44.935,44.280,43.510,42.694,41.908,41.215,40.648,40.203,39.845,39.517,
-39.163,38.740,38.226,37.624,36.949,36.223,35.469,34.712,33.975,33.283,32.663,32.135,31.710,31.378,31.117,30.888,
-30.651,30.373,30.031,29.619,29.139,28.598,28.006,27.375,26.716,26.045,25.379,24.736,24.126,23.551,23.002,22.465,
-21.929,21.392,20.868,20.381,19.964,19.643,19.428,19.314,19.276,19.283,19.300,19.304,19.285,19.246,19.203,19.175,
-19.176,19.210,19.269,19.334,19.375,19.361,19.267,19.075,18.782,18.401,17.954,17.471,16.986,16.528,16.121,15.782,
-15.518,15.324,15.190,15.099,15.030,14.970,14.913,14.864,14.836,14.847,14.913,15.037,15.214,15.424,15.643,15.846,
-16.013,16.131,16.190,16.185,16.114,15.983,15.804,15.603,15.414,15.274,15.211,15.233,15.320,15.432,15.516,15.524,
-15.421,15.198,14.863,14.439,13.951,13.424,12.881,12.352,11.870,11.479,11.217,11.107,11.144,11.290,11.482,11.650,
-11.738,11.723,11.617,11.462,11.310,11.204,11.164,11.182,11.230,11.273,11.282,11.245,11.159,11.036,10.886,10.721,
-10.550,10.385,10.235,10.115,10.037,10.003,10.007,10.031,10.052,10.045,9.993,9.886,9.720,9.495,9.214,8.882,
-8.513,8.129,7.761,7.445,7.210,7.066,7.002,6.984,6.966,6.910,6.794,6.620,6.412,6.198,5.999,5.815,
-5.628,5.411,5.143,4.822,4.468,4.113,3.792,3.521,3.293,3.082,2.855,2.590,2.284,1.954,1.627,1.322,
-1.041,.759,.446,.072,-.366,-.850,-1.337,-1.784,-2.162,-2.469,-2.724,-2.950,-3.161,-3.345,-3.468,-3.492,
--3.398,-3.209,-2.990,-2.841,-2.864,-3.132,-3.666,-4.430,-5.342,-6.302,-7.217,-8.021,-8.683,-9.199,-9.585,-9.866,
--10.075,-10.247,-10.426,-10.656,-10.976,-11.406,-11.940,-12.545,-13.173,-13.770,-14.297,-14.740,-15.107,-15.427,-15.730,-16.041,
--16.371,-16.718,-17.074,-17.429,-17.776,-18.114,-18.443,-18.761,-19.067,-19.359,-19.637,-19.909,-20.185,-20.477,-20.791,-21.130,
--21.485,-21.844,-22.190,-22.511,-22.799,-23.049,-23.266,-23.454,-23.623,-23.782,-23.940,-24.106,-24.282,-24.468,-24.661,-24.857,
--25.061,-25.282,-25.536,-25.840,-26.199,-26.603,-27.019,-27.403,-27.707,-27.897,-27.969,-27.950,-27.893,-27.862,-27.909,-28.058,
--28.301,-28.602,-28.911,-29.185,-29.401,-29.560,-29.685,-29.805,-29.940,-30.095,-30.253,-30.389,-30.479,-30.510,-30.489,-30.439,
--30.386,-30.349,-30.333,-30.328,-30.316,-30.285,-30.236,-30.188,-30.173,-30.219,-30.340,-30.526,-30.742,-30.937,-31.067,-31.104,
--31.053,-30.946,-30.832,-30.767,-30.789,-30.919,-31.146,-31.442,-31.760,-32.051,-32.269,-32.380,-32.365,-32.227,-31.988,-31.690,
--31.383,-31.112,-30.911,-30.790,-30.736,-30.722,-30.721,-30.717,-30.712,-30.728,-30.796,-30.941,-31.173,-31.481,-31.837,-32.207,
--32.558,-32.873,-33.150,-33.399,-33.634,-33.865,-34.091,-34.305,-34.492,-34.634,-34.719,-34.742,-34.702,-34.610,-34.478,-34.324,
--34.164,-34.016,-33.889,-33.788,-33.710,-33.647,-33.591,-33.534,-33.469,-33.394,-33.306,-33.200,-33.073,-32.921,-32.745,-32.548,
--32.341,-32.134,-31.933,-31.739,-31.546,-31.343,-31.122,-30.888,-30.655,-30.449,-30.298,-30.220,-30.219,-30.275,-30.354,-30.412,
--30.412,-30.331,-30.166,-29.936,-29.668,-29.395,-29.138,-28.906,-28.693,-28.485,-28.264,-28.023,-27.766,-27.509,-27.278,-27.096,
--26.977,-26.917,-26.897,-26.888,-26.864,-26.814,-26.746,-26.688,-26.675,-26.737,-26.880,-27.083,-27.301,-27.476,-27.558,-27.515,
--27.345,-27.063,-26.694,-26.255,-25.747,-25.156,-24.463,-23.664,-22.781,-21.863,-20.983,-20.214,-19.609,-19.187,-18.924,-18.768,
--18.647,-18.498,-18.280,-17.975,-17.590,-17.145,-16.659,-16.147,-15.614,-15.061,-14.492,-13.918,-13.354,-12.820,-12.330,-11.892,
--11.497,-11.131,-10.770,-10.396,-9.992,-9.553,-9.082,-8.583,-8.068,-7.547,-7.032,-6.537,-6.076,-5.661,-5.302,-4.998,
--4.736,-4.499,-4.263,-4.009,-3.730,-3.427,-3.112,-2.802,-2.508,-2.231,-1.965,-1.693,-1.401,-1.078,-.723,-.342,
-.057,.467,.886,1.317,1.759,2.209,2.648,3.053,3.397,3.659,3.832,3.926,3.966,3.982,4.001,4.039,
-4.100,4.184,4.288,4.423,4.606,4.864,5.221,5.688,6.254,6.891,7.555,8.200,8.794,9.317,9.771,10.164,
-10.507,10.806,11.057,11.256,11.404,11.515,11.612,11.723,11.867,12.044,12.231,12.392,12.490,12.512,12.471,12.413,
-12.395,12.468,12.651,12.920,13.219,13.475,13.630,13.662,13.590,13.469,13.366,13.333,13.388,13.514,13.670,13.811,
-13.907,13.957,13.985,14.026,14.114,14.268,14.486,14.747,15.027,15.298,15.540,15.743,15.898,16.006,16.069,16.097,
-16.110,16.131,16.182,16.278,16.415,16.575,16.726,16.837,16.891,16.886,16.841,16.781,16.727,16.684,16.637,16.556,
-16.414,16.193,15.897,15.554,15.204,14.885,14.623,14.422,14.271,14.146,14.028,13.906,13.786,13.680,13.607,13.577,
-13.590,13.631,13.682,13.723,13.745,13.750,13.749,13.762,13.802,13.873,13.964,14.050,14.098,14.078,13.967,13.763,
-13.481,13.157,12.837,12.570,12.394,12.327,12.367,12.481,12.618,12.720,12.731,12.622,12.394,12.084,11.755,11.478,
-11.307,11.261,11.314,11.404,11.455,11.409,11.247,11.002,10.748,10.569,10.521,10.605,10.754,10.851,10.761,10.379,
-9.664,8.652,7.445,6.178,4.984,3.958,3.143,2.531,2.082,1.741,1.458,1.193,.913,.595,.224,-.205,
--.679,-1.162,-1.608,-1.962,-2.186,-2.265,-2.218,-2.088,-1.924,-1.767,-1.631,-1.506,-1.360,-1.161,-.887,-.538,
--.134,.297,.725,1.134,1.522,1.897,2.266,2.633,2.984,3.300,3.559,3.744,3.854,3.904,3.918,3.929,
-3.961,4.032,4.148,4.306,4.501,4.728,4.987,5.273,5.583,5.901,6.203,6.463,6.654,6.764,6.800,6.787,
-6.765,6.774,6.843,6.980,7.172,7.387,7.589,7.751,7.860,7.922,7.961,8.001,8.065,8.166,8.306,8.479,
-8.679,8.898,9.133,9.381,9.637,9.892,10.134,10.352,10.539,10.697,10.834,10.964,11.097,11.240,11.384,11.518,
-11.624,11.687,11.707,11.692,11.666,11.656,11.684,11.766,11.899,12.068,12.253,12.430,12.589,12.731,12.867,13.020,
-13.208,13.445,13.728,14.041,14.354,14.631,14.835,14.938,14.927,14.811,14.619,14.395,14.189,14.045,13.991,14.029,
-14.140,14.290,14.445,14.578,14.676,14.741,14.777,14.789,14.776,14.737,14.678,14.620,14.594,14.629,14.728,14.848,
-14.896,14.740,14.255,13.366,12.098,10.584,9.053,7.770,6.967,6.777,7.201,8.113,9.298,10.523,11.594,12.396,
-12.904,13.162,13.247,13.236,13.181,13.110,13.030,12.946,12.870,12.824,12.831,12.909,13.057,13.259,13.485,13.702,
-13.886,14.025,14.125,14.198,14.254,14.293,14.296,14.236,14.082,13.820,13.465,13.067,12.710,12.489,12.488,12.752,
-13.270,13.969,14.735,15.435,15.946,16.190,16.139,15.816,15.283,14.620,13.905,13.203,12.557,11.989,11.501,11.081,
-10.704,10.343,9.969,9.565,9.125,8.661,8.197,7.763,7.382,7.067,6.813,6.601,6.403,6.189,5.938,5.644,
-5.310,4.953,4.591,4.242,3.915,3.610,3.316,3.017,2.695,2.340,1.952,1.541,1.127,.728,.358,.024,
--.276,-.549,-.800,-1.030,-1.238,-1.428,-1.609,-1.804,-2.038,-2.331,-2.687,-3.086,-3.489,-3.854,-4.154,-4.398,
--4.638,-4.949,-5.414,-6.085,-6.958,-7.973,-9.021,-9.980,-10.749,-11.278,-11.578,-11.710,-11.763,-11.823,-11.951,-12.178,
--12.503,-12.909,-13.375,-13.886,-14.430,-14.998,-15.576,-16.145,-16.684,-17.177,-17.622,-18.027,-18.416,-18.813,-19.241,-19.709,
--20.216,-20.752,-21.301,-21.851,-22.394,-22.925,-23.444,-23.948,-24.437,-24.910,-25.371,-25.828,-26.290,-26.763,-27.246,-27.728,
--28.188,-28.604,-28.959,-29.251,-29.490,-29.700,-29.905,-30.124,-30.358,-30.593,-30.810,-30.989,-31.127,-31.237,-31.343,-31.473,
--31.645,-31.855,-32.087,-32.314,-32.514,-32.687,-32.848,-33.031,-33.266,-33.571,-33.940,-34.348,-34.758,-35.139,-35.474,-35.767,
--36.036,-36.299,-36.569,-36.845,-37.120,-37.386,-37.647,-37.917,-38.219,-38.571,-38.973,-39.407,-39.837,-40.226,-40.546,-40.791,
--40.981,-41.151,-41.336,-41.562,-41.837,-42.149,-42.480,-42.811,-43.129,-43.432,-43.722,-44.006,-44.284,-44.557,-44.825,-45.092,
--45.363,-45.645,-45.941,-46.249,-46.560,-46.861,-47.145,-47.409,-47.659,-47.902,-48.145,-48.387,-48.620,-48.830,-49.004,-49.133,
--49.218,-49.266,-49.283,-49.271,-49.228,-49.147,-49.020,-48.846,-48.630,-48.383,-48.118,-47.842,-47.560,-47.273,-46.986,-46.707,
--46.453,-46.245,-46.100,-46.025,-46.013,-46.046,-46.101,-46.155,-46.193,-46.210,-46.206,-46.181,-46.132,-46.046,-45.909,-45.708,
--45.441,-45.113,-44.746,-44.364,-43.992,-43.651,-43.347,-43.078,-42.832,-42.592,-42.341,-42.064,-41.756,-41.421,-41.073,-40.733,
--40.427,-40.180,-40.008,-39.915,-39.890,-39.909,-39.938,-39.938,-39.873,-39.710,-39.430,-39.024,-38.498,-37.870,-37.170,-36.434,
--35.696,-34.982,-34.305,-33.664,-33.042,-32.421,-31.782,-31.118,-30.435,-29.751,-29.087,-28.464,-27.895,-27.382,-26.918,-26.490,
--26.087,-25.700,-25.326,-24.967,-24.629,-24.314,-24.022,-23.748,-23.481,-23.207,-22.914,-22.597,-22.259,-21.916,-21.592,-21.313,
--21.100,-20.955,-20.866,-20.798,-20.708,-20.551,-20.294,-19.917,-19.415,-18.795,-18.063,-17.220,-16.261,-15.180,-13.974,-12.654,
--11.249,-9.805,-8.377,-7.018,-5.772,-4.663,-3.697,-2.856,-2.112,-1.427,-.766,-.101,.579,1.269,1.946,2.582,
-3.148,3.634,4.049,4.431,4.826,5.283,5.826,6.452,7.123,7.785,8.385,8.894,9.316,9.689,10.069,10.507,
-11.030,11.634,12.289,12.957,13.608,14.233,14.844,15.462,16.106,16.774,17.448,18.100,18.712,19.282,19.832,20.396,
-21.007,21.676,22.391,23.115,23.809,24.443,25.011,25.530,26.030,26.538,27.064,27.599,28.123,28.612,29.056,29.464,
-29.856,30.261,30.706,31.211,31.787,32.437,33.156,33.928,34.717,35.475,36.144,36.682,37.085,37.397,37.717,38.164,
-38.836,39.773,40.921,42.148,43.281,44.168,44.731,45.000,45.101,45.202,45.452,45.921,46.580,47.313,47.972,48.434,
-48.650,48.655,48.549,48.445,48.433,48.542,48.751,49.003,49.247,49.457,49.647,49.851,50.106,50.428,50.803,51.195,
-51.567,51.895,52.184,52.461,52.763,53.118,53.531,53.985,54.451,54.899,55.317,55.713,56.108,56.528,56.988,57.486,
-58.003,58.511,58.986,59.419,59.814,60.188,60.562,60.949,61.352,61.761,62.159,62.531,62.868,63.172,63.450,63.710,
-63.959,64.193,64.401,64.572,64.693,64.760,64.776,64.753,64.704,64.640,64.568,64.489,64.400,64.298,64.184,64.064,
-63.944,63.832,63.733,63.644,63.558,63.463,63.348,63.207,63.041,62.855,62.660,62.463,62.271,62.083,61.897,61.710,
-61.522,61.337,61.166,61.021,60.909,60.833,60.789,60.765,60.746,60.721,60.681,60.626,60.556,60.476,60.386,60.284,
-60.170,60.043,59.908,59.777,59.661,59.573,59.518,59.496,59.500,59.522,59.559,59.608,59.670,59.744,59.816,59.866,
-59.868,59.801,59.659,59.454,59.216,58.982,58.781,58.620,58.487,58.353,58.190,57.988,57.761,57.543,57.374,57.275,
-57.239,57.229,57.190,57.078,56.881,56.624,56.363,56.159,56.050,56.026,56.033,55.990,55.821,55.489,55.009,54.445,
-53.885,53.408,53.058,52.834,52.705,52.623,52.553,52.482,52.417,52.369,52.339,52.306,52.228,52.064,51.786,51.399,
-50.935,50.445,49.977,49.558,49.191,48.857,48.535,48.323,48.061,47.806,47.578,47.395,47.262,47.159,47.046,46.878,
-46.622,46.275,45.870,45.466,45.127,44.903,44.811,44.833,44.922,45.021,45.083,45.085,45.035,44.965,44.917,44.930,
-45.024,45.191,45.396,45.576,45.662,45.588,45.311,44.826,44.165,43.399,42.611,41.885,41.275,40.800,40.436,40.132,
-39.826,39.468,39.025,38.492,37.875,37.191,36.454,35.676,34.870,34.060,33.279,32.570,31.972,31.505,31.163,30.911,
-30.693,30.451,30.141,29.741,29.258,28.715,28.142,27.562,26.988,26.423,25.861,25.297,24.727,24.149,23.561,22.960,
-22.342,21.708,21.069,20.447,19.876,19.395,19.036,18.818,18.739,18.777,18.894,19.047,19.197,19.317,19.394,19.434,
-19.448,19.452,19.458,19.468,19.470,19.444,19.364,19.210,18.971,18.649,18.261,17.831,17.388,16.956,16.556,16.200,
-15.897,15.651,15.462,15.322,15.222,15.147,15.082,15.021,14.968,14.935,14.943,15.007,15.134,15.311,15.514,15.711,
-15.874,15.986,16.046,16.060,16.041,15.997,15.932,15.848,15.752,15.659,15.592,15.573,15.614,15.707,15.823,15.917,
-15.940,15.857,15.650,15.321,14.891,14.384,13.827,13.246,12.669,12.132,11.674,11.336,11.143,11.097,11.170,11.308,
-11.450,11.540,11.552,11.488,11.380,11.269,11.189,11.158,11.168,11.199,11.223,11.220,11.181,11.109,11.016,10.913,
-10.810,10.715,10.635,10.577,10.547,10.545,10.563,10.585,10.585,10.538,10.425,10.240,9.987,9.680,9.336,8.969,
-8.590,8.211,7.847,7.517,7.246,7.052,6.943,6.905,6.910,6.917,6.888,6.799,6.648,6.450,6.226,5.996,
-5.768,5.534,5.281,5.000,4.696,4.387,4.098,3.847,3.639,3.452,3.254,3.011,2.703,2.338,1.947,1.568,
-1.235,.953,.702,.443,.137,-.238,-.671,-1.130,-1.571,-1.957,-2.274,-2.531,-2.749,-2.941,-3.103,-3.210,
--3.234,-3.158,-3.003,-2.833,-2.741,-2.828,-3.168,-3.784,-4.639,-5.648,-6.698,-7.680,-8.513,-9.155,-9.605,-9.897,
--10.082,-10.224,-10.381,-10.606,-10.931,-11.366,-11.895,-12.480,-13.071,-13.622,-14.104,-14.513,-14.867,-15.195,-15.525,-15.871,
--16.226,-16.576,-16.902,-17.196,-17.464,-17.724,-17.996,-18.295,-18.622,-18.967,-19.317,-19.662,-20.000,-20.341,-20.694,-21.067,
--21.457,-21.849,-22.224,-22.561,-22.850,-23.089,-23.290,-23.469,-23.647,-23.839,-24.054,-24.295,-24.554,-24.817,-25.066,-25.285,
--25.467,-25.621,-25.767,-25.938,-26.164,-26.461,-26.822,-27.211,-27.579,-27.872,-28.059,-28.137,-28.139,-28.122,-28.149,-28.268,
--28.493,-28.806,-29.159,-29.498,-29.776,-29.974,-30.099,-30.181,-30.258,-30.361,-30.499,-30.661,-30.822,-30.950,-31.024,-31.038,
--31.005,-30.949,-30.896,-30.863,-30.851,-30.854,-30.859,-30.857,-30.853,-30.861,-30.900,-30.986,-31.118,-31.278,-31.439,-31.567,
--31.641,-31.659,-31.638,-31.611,-31.618,-31.689,-31.842,-32.072,-32.357,-32.662,-32.942,-33.158,-33.272,-33.268,-33.144,-32.922,
--32.639,-32.343,-32.074,-31.860,-31.702,-31.582,-31.472,-31.344,-31.188,-31.017,-30.864,-30.773,-30.782,-30.912,-31.161,-31.508,
--31.920,-32.361,-32.801,-33.218,-33.595,-33.923,-34.192,-34.399,-34.542,-34.628,-34.664,-34.662,-34.629,-34.571,-34.491,-34.391,
--34.278,-34.165,-34.066,-33.993,-33.954,-33.943,-33.946,-33.945,-33.923,-33.869,-33.783,-33.668,-33.532,-33.382,-33.223,-33.059,
--32.892,-32.725,-32.559,-32.393,-32.219,-32.028,-31.811,-31.567,-31.308,-31.058,-30.847,-30.703,-30.640,-30.648,-30.700,-30.752,
--30.762,-30.700,-30.555,-30.336,-30.066,-29.772,-29.477,-29.195,-28.928,-28.675,-28.431,-28.196,-27.974,-27.771,-27.598,-27.463,
--27.369,-27.314,-27.291,-27.287,-27.288,-27.283,-27.271,-27.258,-27.260,-27.293,-27.368,-27.481,-27.610,-27.720,-27.768,-27.720,
--27.556,-27.278,-26.899,-26.439,-25.911,-25.318,-24.652,-23.908,-23.094,-22.237,-21.390,-20.616,-19.971,-19.490,-19.169,-18.970,
--18.834,-18.696,-18.506,-18.241,-17.905,-17.517,-17.103,-16.676,-16.232,-15.755,-15.224,-14.628,-13.974,-13.288,-12.607,-11.970,
--11.403,-10.912,-10.483,-10.086,-9.692,-9.275,-8.824,-8.342,-7.838,-7.327,-6.821,-6.328,-5.854,-5.408,-5.000,-4.638,
--4.332,-4.078,-3.866,-3.675,-3.481,-3.264,-3.015,-2.736,-2.438,-2.133,-1.830,-1.528,-1.219,-.889,-.528,-.131,
-.297,.744,1.198,1.648,2.086,2.507,2.906,3.273,3.598,3.870,4.083,4.238,4.342,4.410,4.456,4.491,
-4.523,4.556,4.598,4.661,4.768,4.946,5.221,5.606,6.097,6.673,7.293,7.913,8.496,9.017,9.471,9.867,
-10.220,10.545,10.846,11.121,11.362,11.565,11.736,11.886,12.030,12.176,12.318,12.437,12.506,12.508,12.444,12.345,
-12.263,12.256,12.364,12.596,12.915,13.254,13.538,13.707,13.744,13.673,13.555,13.458,13.434,13.500,13.637,13.799,
-13.940,14.030,14.066,14.071,14.084,14.140,14.260,14.445,14.681,14.945,15.213,15.470,15.703,15.904,16.067,16.188,
-16.269,16.319,16.356,16.398,16.460,16.546,16.645,16.739,16.807,16.835,16.823,16.785,16.737,16.694,16.656,16.608,
-16.527,16.389,16.181,15.906,15.589,15.262,14.960,14.707,14.513,14.373,14.271,14.189,14.111,14.030,13.947,13.866,
-13.796,13.741,13.709,13.704,13.731,13.797,13.907,14.059,14.245,14.442,14.618,14.736,14.762,14.675,14.473,14.181,
-13.839,13.500,13.212,13.007,12.895,12.865,12.890,12.932,12.957,12.937,12.851,12.691,12.459,12.171,11.857,11.554,
-11.303,11.131,11.042,11.007,10.971,10.873,10.672,10.369,10.019,9.715,9.556,9.602,9.834,10.147,10.367,10.299,
-9.796,8.802,7.385,5.711,4.007,2.489,1.309,.523,.094,-.081,-.126,-.150,-.225,-.377,-.605,-.888,
--1.203,-1.524,-1.828,-2.088,-2.275,-2.365,-2.345,-2.224,-2.025,-1.784,-1.536,-1.305,-1.099,-.911,-.730,-.547,
--.362,-.184,-.019,.133,.285,.465,.708,1.039,1.467,1.975,2.522,3.053,3.512,3.862,4.089,4.209,
-4.257,4.276,4.306,4.370,4.477,4.625,4.807,5.020,5.266,5.547,5.860,6.187,6.499,6.757,6.930,7.008,
-7.007,6.967,6.945,6.987,7.121,7.338,7.604,7.869,8.088,8.236,8.315,8.351,8.379,8.432,8.525,8.661,
-8.828,9.014,9.210,9.415,9.634,9.873,10.129,10.391,10.644,10.870,11.061,11.215,11.341,11.450,11.551,11.647,
-11.730,11.789,11.815,11.810,11.787,11.770,11.787,11.860,11.994,12.178,12.387,12.591,12.766,12.906,13.023,13.146,
-13.303,13.517,13.791,14.107,14.432,14.726,14.953,15.090,15.129,15.077,14.954,14.788,14.611,14.456,14.353,14.319,
-14.359,14.461,14.598,14.739,14.856,14.931,14.958,14.942,14.894,14.824,14.742,14.660,14.592,14.555,14.555,14.576,
-14.565,14.434,14.082,13.429,12.457,11.241,9.947,8.802,8.032,7.795,8.132,8.953,10.067,11.240,12.263,13.011,
-13.454,13.649,13.689,13.667,13.636,13.602,13.542,13.426,13.242,13.005,12.752,12.528,12.368,12.285,12.268,12.295,
-12.338,12.378,12.405,12.417,12.417,12.404,12.375,12.320,12.231,12.103,11.944,11.774,11.622,11.528,11.525,11.638,
-11.869,12.201,12.594,12.997,13.361,13.643,13.817,13.875,13.819,13.655,13.398,13.059,12.658,12.220,11.771,11.340,
-10.943,10.584,10.252,9.921,9.568,9.175,8.741,8.279,7.816,7.379,6.987,6.650,6.363,6.111,5.875,5.635,
-5.373,5.083,4.761,4.416,4.060,3.711,3.380,3.071,2.776,2.479,2.163,1.814,1.434,1.035,.639,.268,
--.070,-.374,-.659,-.940,-1.229,-1.526,-1.826,-2.119,-2.401,-2.678,-2.958,-3.250,-3.554,-3.859,-4.154,-4.434,
--4.719,-5.048,-5.480,-6.064,-6.824,-7.735,-8.726,-9.698,-10.546,-11.194,-11.615,-11.836,-11.922,-11.956,-12.012,-12.141,
--12.365,-12.682,-13.079,-13.542,-14.054,-14.600,-15.158,-15.704,-16.209,-16.653,-17.028,-17.345,-17.630,-17.918,-18.244,-18.629,
--19.079,-19.587,-20.135,-20.704,-21.279,-21.849,-22.407,-22.949,-23.470,-23.968,-24.444,-24.903,-25.355,-25.811,-26.280,-26.762,
--27.248,-27.723,-28.167,-28.564,-28.909,-29.207,-29.473,-29.721,-29.962,-30.197,-30.420,-30.617,-30.784,-30.921,-31.045,-31.176,
--31.333,-31.525,-31.744,-31.971,-32.185,-32.374,-32.543,-32.715,-32.922,-33.192,-33.535,-33.934,-34.356,-34.758,-35.106,-35.389,
--35.615,-35.812,-36.011,-36.232,-36.482,-36.759,-37.055,-37.370,-37.710,-38.086,-38.505,-38.955,-39.412,-39.839,-40.204,-40.490,
--40.705,-40.878,-41.047,-41.244,-41.483,-41.758,-42.049,-42.334,-42.598,-42.844,-43.084,-43.336,-43.609,-43.905,-44.215,-44.526,
--44.833,-45.133,-45.431,-45.733,-46.041,-46.351,-46.654,-46.945,-47.223,-47.494,-47.764,-48.039,-48.318,-48.588,-48.835,-49.042,
--49.203,-49.316,-49.385,-49.417,-49.410,-49.360,-49.260,-49.107,-48.903,-48.661,-48.397,-48.123,-47.846,-47.565,-47.277,-46.983,
--46.696,-46.436,-46.232,-46.107,-46.069,-46.110,-46.205,-46.323,-46.436,-46.524,-46.581,-46.608,-46.606,-46.569,-46.486,-46.344,
--46.129,-45.840,-45.489,-45.097,-44.694,-44.307,-43.955,-43.648,-43.385,-43.157,-42.947,-42.737,-42.514,-42.271,-42.011,-41.751,
--41.514,-41.330,-41.219,-41.187,-41.223,-41.293,-41.354,-41.360,-41.274,-41.073,-40.750,-40.311,-39.769,-39.140,-38.440,-37.686,
--36.898,-36.097,-35.305,-34.539,-33.811,-33.119,-32.458,-31.816,-31.186,-30.565,-29.958,-29.376,-28.829,-28.321,-27.853,-27.419,
--27.011,-26.621,-26.244,-25.879,-25.528,-25.196,-24.885,-24.599,-24.334,-24.083,-23.834,-23.573,-23.286,-22.967,-22.619,-22.255,
--21.896,-21.563,-21.269,-21.011,-20.772,-20.522,-20.229,-19.864,-19.409,-18.860,-18.216,-17.477,-16.640,-15.697,-14.639,-13.471,
--12.210,-10.895,-9.573,-8.297,-7.107,-6.026,-5.056,-4.182,-3.377,-2.615,-1.875,-1.144,-.417,.302,1.001,1.662,
-2.267,2.797,3.243,3.615,3.941,4.265,4.637,5.097,5.658,6.305,6.994,7.668,8.280,8.806,9.254,9.662,
-10.077,10.542,11.076,11.677,12.321,12.983,13.643,14.298,14.952,15.614,16.286,16.959,17.619,18.253,18.861,19.456,
-20.059,20.690,21.359,22.056,22.761,23.448,24.101,24.716,25.304,25.880,26.449,27.007,27.538,28.023,28.457,28.849,
-29.225,29.618,30.054,30.547,31.098,31.703,32.360,33.075,33.851,34.683,35.539,36.368,37.110,37.718,38.191,38.575,
-38.960,39.442,40.088,40.899,41.809,42.706,43.479,44.061,44.460,44.751,45.046,45.437,45.962,46.585,47.216,47.748,
-48.107,48.279,48.313,48.296,48.314,48.417,48.607,48.848,49.087,49.291,49.455,49.608,49.791,50.039,50.360,50.737,
-51.135,51.523,51.886,52.231,52.580,52.954,53.366,53.809,54.265,54.712,55.141,55.556,55.973,56.412,56.886,57.391,
-57.910,58.417,58.893,59.328,59.730,60.113,60.498,60.895,61.304,61.716,62.114,62.483,62.817,63.118,63.391,63.646,
-63.883,64.100,64.288,64.435,64.536,64.588,64.598,64.575,64.529,64.468,64.398,64.320,64.234,64.142,64.045,63.945,
-63.845,63.745,63.643,63.537,63.426,63.308,63.183,63.050,62.907,62.750,62.573,62.372,62.149,61.910,61.667,61.434,
-61.226,61.052,60.915,60.813,60.742,60.697,60.672,60.660,60.654,60.643,60.616,60.565,60.484,60.377,60.253,60.124,
-60.002,59.895,59.804,59.726,59.659,59.602,59.561,59.544,59.557,59.602,59.672,59.752,59.825,59.873,59.883,59.846,
-59.760,59.627,59.452,59.245,59.017,58.783,58.556,58.341,58.133,57.917,57.675,57.393,57.078,56.755,56.467,56.259,
-56.159,56.167,56.247,56.343,56.394,56.363,56.248,56.082,55.916,55.797,55.740,55.723,55.693,55.586,55.358,55.006,
-54.567,54.108,53.703,53.404,53.227,53.154,53.144,53.151,53.138,53.086,52.987,52.835,52.622,52.337,51.969,51.523,
-51.019,50.495,49.993,49.548,49.174,48.861,48.586,48.323,48.227,47.994,47.759,47.541,47.361,47.227,47.119,47.001,
-46.826,46.561,46.203,45.785,45.367,45.022,44.804,44.733,44.783,44.897,45.000,45.032,44.966,44.817,44.636,44.494,
-44.452,44.543,44.758,45.040,45.307,45.464,45.434,45.177,44.699,44.055,43.328,42.611,41.977,41.466,41.073,40.757,
-40.457,40.117,39.697,39.186,38.595,37.943,37.250,36.522,35.762,34.969,34.157,33.356,32.610,31.962,31.438,31.037,
-30.724,30.446,30.145,29.779,29.331,28.815,28.260,27.703,27.167,26.661,26.176,25.695,25.200,24.677,24.117,23.521,
-22.891,22.235,21.564,20.897,20.260,19.686,19.206,18.844,18.615,18.515,18.528,18.627,18.779,18.954,19.123,19.270,
-19.383,19.462,19.508,19.525,19.513,19.467,19.376,19.229,19.017,18.741,18.411,18.050,17.680,17.322,16.991,16.689,
-16.416,16.168,15.947,15.755,15.598,15.477,15.390,15.330,15.289,15.268,15.274,15.317,15.408,15.542,15.704,15.864,
-15.988,16.053,16.054,16.004,15.931,15.862,15.817,15.798,15.795,15.797,15.800,15.808,15.834,15.889,15.971,16.061,
-16.123,16.123,16.029,15.832,15.537,15.164,14.732,14.258,13.752,13.225,12.699,12.207,11.790,11.490,11.331,11.309,
-11.391,11.525,11.654,11.734,11.745,11.695,11.607,11.511,11.428,11.368,11.331,11.309,11.292,11.277,11.262,11.247,
-11.232,11.217,11.200,11.182,11.163,11.141,11.112,11.063,10.977,10.835,10.625,10.344,10.002,9.621,9.226,8.838,
-8.474,8.139,7.836,7.567,7.338,7.158,7.035,6.971,6.953,6.960,6.962,6.931,6.847,6.706,6.514,6.285,
-6.032,5.762,5.476,5.174,4.859,4.547,4.257,4.010,3.816,3.667,3.533,3.372,3.146,2.835,2.447,2.016,
-1.587,1.203,.880,.607,.349,.065,-.272,-.666,-1.093,-1.516,-1.898,-2.219,-2.479,-2.689,-2.859,-2.987,
--3.055,-3.043,-2.944,-2.785,-2.634,-2.584,-2.734,-3.155,-3.866,-4.825,-5.933,-7.068,-8.109,-8.966,-9.597,-10.008,
--10.246,-10.386,-10.506,-10.679,-10.953,-11.345,-11.841,-12.399,-12.961,-13.475,-13.909,-14.259,-14.554,-14.838,-15.152,-15.517,
--15.924,-16.341,-16.725,-17.046,-17.298,-17.504,-17.703,-17.935,-18.225,-18.573,-18.963,-19.367,-19.766,-20.152,-20.531,-20.916,
--21.313,-21.720,-22.119,-22.490,-22.815,-23.088,-23.316,-23.519,-23.718,-23.934,-24.182,-24.463,-24.769,-25.084,-25.385,-25.649,
--25.861,-26.017,-26.130,-26.231,-26.357,-26.545,-26.810,-27.143,-27.510,-27.860,-28.145,-28.335,-28.435,-28.479,-28.518,-28.607,
--28.780,-29.041,-29.366,-29.711,-30.026,-30.276,-30.445,-30.542,-30.595,-30.639,-30.707,-30.817,-30.966,-31.140,-31.309,-31.447,
--31.535,-31.570,-31.564,-31.536,-31.510,-31.500,-31.510,-31.537,-31.569,-31.600,-31.631,-31.668,-31.724,-31.803,-31.903,-32.013,
--32.116,-32.197,-32.254,-32.296,-32.344,-32.424,-32.557,-32.753,-33.008,-33.303,-33.609,-33.888,-34.103,-34.223,-34.229,-34.119,
--33.911,-33.638,-33.344,-33.068,-32.835,-32.648,-32.490,-32.332,-32.147,-31.924,-31.673,-31.423,-31.216,-31.091,-31.076,-31.183,
--31.408,-31.735,-32.142,-32.601,-33.081,-33.547,-33.962,-34.295,-34.526,-34.654,-34.693,-34.674,-34.626,-34.573,-34.526,-34.480,
--34.429,-34.365,-34.292,-34.224,-34.176,-34.160,-34.176,-34.211,-34.245,-34.258,-34.234,-34.169,-34.067,-33.939,-33.796,-33.646,
--33.495,-33.347,-33.203,-33.061,-32.914,-32.751,-32.559,-32.328,-32.061,-31.776,-31.502,-31.276,-31.123,-31.054,-31.050,-31.079,
--31.094,-31.058,-30.950,-30.769,-30.532,-30.262,-29.981,-29.697,-29.414,-29.131,-28.847,-28.571,-28.314,-28.091,-27.910,-27.773,
--27.674,-27.606,-27.562,-27.539,-27.536,-27.555,-27.593,-27.644,-27.699,-27.750,-27.789,-27.815,-27.821,-27.800,-27.738,-27.615,
--27.412,-27.114,-26.720,-26.236,-25.678,-25.062,-24.403,-23.708,-22.986,-22.248,-21.520,-20.836,-20.236,-19.754,-19.404,-19.174,
--19.024,-18.900,-18.748,-18.529,-18.230,-17.863,-17.455,-17.034,-16.614,-16.189,-15.734,-15.217,-14.617,-13.930,-13.182,-12.416,
--11.683,-11.023,-10.453,-9.965,-9.531,-9.112,-8.677,-8.211,-7.718,-7.212,-6.712,-6.230,-5.769,-5.327,-4.900,-4.491,
--4.113,-3.783,-3.514,-3.310,-3.158,-3.028,-2.888,-2.708,-2.470,-2.175,-1.833,-1.462,-1.077,-.683,-.277,.145,
-.589,1.053,1.527,1.995,2.438,2.840,3.191,3.488,3.737,3.948,4.135,4.314,4.494,4.678,4.858,5.020,
-5.147,5.227,5.262,5.272,5.295,5.376,5.558,5.868,6.307,6.848,7.446,8.044,8.593,9.066,9.456,9.782,
-10.072,10.356,10.652,10.962,11.272,11.562,11.815,12.022,12.185,12.317,12.427,12.517,12.581,12.602,12.570,12.489,
-12.383,12.295,12.275,12.360,12.561,12.852,13.180,13.480,13.697,13.808,13.823,13.783,13.741,13.738,13.790,13.886,
-13.994,14.083,14.133,14.146,14.142,14.151,14.199,14.299,14.449,14.638,14.849,15.072,15.302,15.536,15.771,15.998,
-16.206,16.383,16.521,16.620,16.689,16.738,16.777,16.808,16.828,16.832,16.815,16.782,16.739,16.698,16.664,16.634,
-16.598,16.534,16.424,16.256,16.030,15.759,15.467,15.181,14.926,14.717,14.561,14.451,14.373,14.310,14.245,14.166,
-14.069,13.960,13.854,13.774,13.743,13.785,13.916,14.138,14.436,14.774,15.103,15.362,15.493,15.453,15.233,14.857,
-14.387,13.904,13.491,13.206,13.070,13.061,13.123,13.189,13.201,13.131,12.980,12.773,12.543,12.316,12.099,11.889,
-11.674,11.443,11.189,10.906,10.584,10.206,9.755,9.231,8.665,8.131,7.729,7.555,7.661,8.012,8.480,8.858,
-8.921,8.492,7.505,6.032,4.271,2.484,.927,-.225,-.910,-1.183,-1.176,-1.046,-.924,-.886,-.950,-1.091,
--1.270,-1.454,-1.623,-1.768,-1.884,-1.963,-1.989,-1.950,-1.841,-1.670,-1.460,-1.235,-1.018,-.821,-.645,-.483,
--.331,-.192,-.076,.006,.052,.077,.117,.222,.445,.819,1.348,1.998,2.698,3.364,3.917,4.306,
-4.522,4.595,4.584,4.553,4.553,4.612,4.729,4.893,5.089,5.312,5.565,5.854,6.177,6.512,6.822,7.066,
-7.217,7.274,7.268,7.254,7.289,7.408,7.617,7.885,8.164,8.403,8.576,8.683,8.747,8.805,8.887,9.005,
-9.151,9.309,9.461,9.599,9.732,9.875,10.046,10.254,10.493,10.748,10.996,11.215,11.396,11.536,11.642,11.723,
-11.787,11.835,11.868,11.883,11.887,11.892,11.916,11.980,12.096,12.264,12.469,12.685,12.883,13.046,13.176,13.293,
-13.431,13.621,13.875,14.184,14.513,14.814,15.041,15.169,15.195,15.139,15.034,14.913,14.803,14.718,14.665,14.647,
-14.665,14.719,14.802,14.899,14.991,15.059,15.090,15.081,15.041,14.984,14.922,14.860,14.796,14.726,14.643,14.535,
-14.385,14.158,13.808,13.288,12.576,11.696,10.740,9.857,9.219,8.973,9.184,9.814,10.719,11.699,12.557,13.158,
-13.464,13.529,13.465,13.381,13.349,13.379,13.429,13.439,13.363,13.189,12.945,12.679,12.437,12.247,12.110,12.011,
-11.930,11.852,11.775,11.699,11.622,11.533,11.417,11.258,11.053,10.817,10.582,10.388,10.267,10.237,10.288,10.391,
-10.502,10.580,10.595,10.544,10.449,10.354,10.308,10.352,10.503,10.746,11.036,11.309,11.501,11.568,11.493,11.294,
-11.007,10.675,10.334,10.001,9.677,9.352,9.013,8.652,8.271,7.873,7.468,7.063,6.667,6.288,5.936,5.616,
-5.327,5.059,4.792,4.506,4.188,3.840,3.482,3.142,2.844,2.597,2.386,2.180,1.941,1.641,1.279,.872,
-.454,.055,-.310,-.649,-.984,-1.337,-1.722,-2.135,-2.552,-2.947,-3.295,-3.586,-3.825,-4.027,-4.217,-4.423,
--4.676,-5.010,-5.457,-6.043,-6.776,-7.634,-8.564,-9.488,-10.322,-10.998,-11.481,-11.780,-11.941,-12.027,-12.105,-12.225,
--12.413,-12.679,-13.018,-13.422,-13.882,-14.384,-14.908,-15.425,-15.902,-16.310,-16.638,-16.895,-17.112,-17.330,-17.592,-17.925,
--18.336,-18.811,-19.329,-19.861,-20.388,-20.901,-21.397,-21.881,-22.357,-22.829,-23.298,-23.766,-24.236,-24.712,-25.196,-25.689,
--26.186,-26.681,-27.164,-27.625,-28.055,-28.452,-28.813,-29.142,-29.440,-29.710,-29.952,-30.169,-30.362,-30.538,-30.704,-30.871,
--31.046,-31.234,-31.434,-31.638,-31.838,-32.029,-32.216,-32.410,-32.631,-32.898,-33.218,-33.582,-33.966,-34.334,-34.655,-34.914,
--35.114,-35.279,-35.442,-35.632,-35.865,-36.144,-36.457,-36.794,-37.152,-37.534,-37.945,-38.388,-38.846,-39.294,-39.698,-40.033,
--40.292,-40.494,-40.672,-40.864,-41.093,-41.360,-41.644,-41.916,-42.152,-42.347,-42.516,-42.690,-42.899,-43.160,-43.476,-43.830,
--44.201,-44.569,-44.924,-45.265,-45.593,-45.910,-46.212,-46.497,-46.765,-47.023,-47.283,-47.559,-47.859,-48.177,-48.497,-48.795,
--49.050,-49.247,-49.384,-49.467,-49.501,-49.491,-49.432,-49.320,-49.154,-48.939,-48.689,-48.422,-48.150,-47.878,-47.605,-47.325,
--47.040,-46.763,-46.517,-46.330,-46.226,-46.211,-46.275,-46.395,-46.540,-46.685,-46.812,-46.912,-46.981,-47.012,-46.994,-46.912,
--46.755,-46.520,-46.215,-45.860,-45.479,-45.096,-44.730,-44.392,-44.088,-43.822,-43.594,-43.403,-43.240,-43.093,-42.947,-42.793,
--42.633,-42.481,-42.361,-42.294,-42.291,-42.338,-42.398,-42.421,-42.354,-42.159,-41.821,-41.349,-40.768,-40.109,-39.395,-38.641,
--37.853,-37.039,-36.207,-35.378,-34.574,-33.818,-33.123,-32.493,-31.920,-31.391,-30.889,-30.405,-29.931,-29.463,-29.004,-28.553,
--28.113,-27.689,-27.283,-26.902,-26.546,-26.215,-25.906,-25.614,-25.334,-25.065,-24.804,-24.548,-24.294,-24.032,-23.751,-23.443,
--23.101,-22.726,-22.324,-21.903,-21.465,-21.011,-20.535,-20.029,-19.486,-18.903,-18.278,-17.608,-16.880,-16.078,-15.184,-14.185,
--13.087,-11.915,-10.712,-9.533,-8.422,-7.408,-6.493,-5.655,-4.864,-4.087,-3.304,-2.513,-1.720,-.940,-.182,.546,
-1.241,1.899,2.507,3.050,3.512,3.892,4.209,4.501,4.817,5.204,5.689,6.267,6.908,7.563,8.186,8.750,
-9.256,9.725,10.196,10.700,11.257,11.865,12.510,13.175,13.844,14.512,15.179,15.847,16.514,17.175,17.824,18.458,
-19.083,19.709,20.349,21.008,21.683,22.366,23.043,23.708,24.357,24.993,25.616,26.218,26.784,27.296,27.747,28.146,
-28.522,28.913,29.354,29.861,30.422,31.013,31.606,32.193,32.792,33.443,34.186,35.035,35.964,36.912,37.800,38.566,
-39.190,39.702,40.168,40.657,41.214,41.838,42.487,43.106,43.654,44.126,44.558,45.001,45.497,46.050,46.619,47.139,
-47.544,47.800,47.924,47.969,48.009,48.102,48.272,48.506,48.765,49.010,49.223,49.409,49.599,49.824,50.104,50.438,
-50.807,51.189,51.569,51.946,52.332,52.741,53.178,53.637,54.099,54.549,54.977,55.392,55.812,56.260,56.746,57.265,
-57.795,58.307,58.779,59.205,59.594,59.969,60.356,60.769,61.204,61.644,62.067,62.452,62.788,63.080,63.339,63.577,
-63.799,64.002,64.172,64.298,64.373,64.397,64.384,64.349,64.306,64.261,64.214,64.157,64.085,63.995,63.893,63.785,
-63.681,63.581,63.483,63.379,63.264,63.135,62.999,62.864,62.736,62.612,62.480,62.321,62.116,61.862,61.571,61.272,
-61.004,60.799,60.674,60.624,60.629,60.657,60.681,60.682,60.658,60.611,60.548,60.470,60.375,60.259,60.126,59.988,
-59.862,59.768,59.715,59.702,59.714,59.731,59.741,59.741,59.741,59.757,59.799,59.864,59.927,59.956,59.917,59.792,
-59.581,59.309,59.012,58.724,58.468,58.251,58.062,57.882,57.691,57.471,57.215,56.920,56.596,56.258,55.934,55.656,
-55.457,55.359,55.365,55.452,55.575,55.684,55.733,55.706,55.616,55.503,55.414,55.384,55.417,55.483,55.531,55.505,
-55.372,55.133,54.823,54.496,54.208,53.995,53.862,53.785,53.724,53.632,53.477,53.237,52.911,52.504,52.033,51.517,
-50.981,50.454,49.965,49.538,49.185,48.901,48.664,48.447,48.227,48.010,47.802,47.592,47.394,47.225,47.089,46.973,
-46.843,46.660,46.392,46.035,45.617,45.200,44.856,44.645,44.588,44.660,44.795,44.909,44.934,44.841,44.653,44.438,
-44.282,44.260,44.401,44.681,45.022,45.316,45.459,45.378,45.049,44.509,43.836,43.126,42.470,41.926,41.507,41.185,
-40.902,40.594,40.210,39.727,39.151,38.506,37.824,37.127,36.423,35.706,34.968,34.208,33.445,32.707,32.031,31.442,
-30.945,30.522,30.137,29.751,29.333,28.872,28.378,27.871,27.373,26.897,26.445,26.005,25.561,25.098,24.604,24.075,
-23.508,22.911,22.292,21.665,21.051,20.470,19.944,19.490,19.117,18.828,18.619,18.488,18.434,18.454,18.545,18.694,
-18.883,19.085,19.272,19.419,19.509,19.530,19.480,19.357,19.164,18.909,18.606,18.275,17.944,17.635,17.365,17.137,
-16.941,16.761,16.581,16.395,16.207,16.030,15.881,15.768,15.696,15.661,15.659,15.689,15.750,15.842,15.955,16.069,
-16.157,16.191,16.156,16.057,15.917,15.775,15.666,15.613,15.616,15.660,15.725,15.793,15.861,15.931,16.010,16.093,
-16.163,16.194,16.157,16.039,15.843,15.587,15.295,14.984,14.656,14.299,13.900,13.455,12.985,12.533,12.153,11.894,
-11.779,11.801,11.917,12.068,12.195,12.256,12.234,12.138,11.997,11.846,11.716,11.629,11.593,11.606,11.653,11.714,
-11.769,11.802,11.801,11.763,11.694,11.598,11.478,11.331,11.145,10.908,10.610,10.252,9.846,9.419,8.999,8.613,
-8.278,7.998,7.768,7.579,7.422,7.294,7.195,7.126,7.085,7.064,7.047,7.016,6.954,6.849,6.699,6.506,
-6.277,6.020,5.737,5.433,5.111,4.781,4.458,4.161,3.908,3.707,3.551,3.416,3.266,3.067,2.796,2.453,
-2.059,1.651,1.265,.921,.617,.330,.028,-.315,-.706,-1.129,-1.554,-1.948,-2.288,-2.568,-2.789,-2.955,
--3.062,-3.098,-3.047,-2.915,-2.737,-2.585,-2.556,-2.746,-3.223,-3.997,-5.017,-6.179,-7.353,-8.415,-9.279,-9.907,
--10.314,-10.558,-10.715,-10.867,-11.081,-11.397,-11.819,-12.325,-12.863,-13.378,-13.821,-14.171,-14.442,-14.674,-14.919,-15.220,
--15.592,-16.017,-16.450,-16.842,-17.161,-17.404,-17.601,-17.797,-18.037,-18.342,-18.709,-19.114,-19.527,-19.926,-20.306,-20.678,
--21.056,-21.449,-21.855,-22.257,-22.638,-22.981,-23.286,-23.560,-23.821,-24.086,-24.367,-24.665,-24.979,-25.298,-25.609,-25.896,
--26.148,-26.353,-26.513,-26.639,-26.757,-26.896,-27.084,-27.330,-27.626,-27.943,-28.241,-28.489,-28.672,-28.799,-28.899,-29.008,
--29.155,-29.353,-29.595,-29.859,-30.117,-30.346,-30.529,-30.664,-30.758,-30.825,-30.883,-30.952,-31.050,-31.187,-31.365,-31.569,
--31.776,-31.958,-32.092,-32.168,-32.190,-32.177,-32.151,-32.132,-32.131,-32.148,-32.181,-32.224,-32.278,-32.346,-32.429,-32.524,
--32.622,-32.712,-32.783,-32.835,-32.880,-32.939,-33.035,-33.188,-33.408,-33.690,-34.015,-34.357,-34.682,-34.954,-35.140,-35.215,
--35.165,-34.997,-34.736,-34.421,-34.097,-33.799,-33.548,-33.342,-33.162,-32.983,-32.785,-32.564,-32.328,-32.100,-31.907,-31.775,
--31.727,-31.778,-31.939,-32.212,-32.584,-33.031,-33.508,-33.961,-34.338,-34.603,-34.745,-34.782,-34.752,-34.700,-34.658,-34.641,
--34.640,-34.638,-34.619,-34.578,-34.524,-34.475,-34.452,-34.464,-34.506,-34.563,-34.612,-34.635,-34.619,-34.559,-34.459,-34.325,
--34.166,-33.991,-33.810,-33.632,-33.461,-33.295,-33.120,-32.921,-32.685,-32.411,-32.115,-31.827,-31.584,-31.411,-31.318,-31.286,
--31.281,-31.262,-31.197,-31.074,-30.899,-30.691,-30.468,-30.239,-30.002,-29.748,-29.469,-29.168,-28.861,-28.570,-28.316,-28.111,
--27.954,-27.837,-27.749,-27.687,-27.657,-27.666,-27.719,-27.809,-27.913,-28.000,-28.039,-28.009,-27.905,-27.737,-27.519,-27.262,
--26.965,-26.617,-26.201,-25.705,-25.128,-24.488,-23.810,-23.125,-22.457,-21.823,-21.231,-20.688,-20.201,-19.784,-19.447,-19.199,
--19.029,-18.913,-18.810,-18.674,-18.468,-18.172,-17.791,-17.350,-16.880,-16.409,-15.947,-15.481,-14.984,-14.428,-13.796,-13.092,
--12.348,-11.606,-10.912,-10.291,-9.747,-9.259,-8.794,-8.320,-7.821,-7.303,-6.782,-6.283,-5.818,-5.387,-4.977,-4.572,
--4.164,-3.763,-3.388,-3.067,-2.816,-2.632,-2.491,-2.355,-2.182,-1.943,-1.632,-1.261,-.854,-.436,-.025,.377,
-.777,1.187,1.615,2.056,2.498,2.916,3.287,3.593,3.832,4.014,4.166,4.321,4.510,4.749,5.038,5.352,
-5.653,5.897,6.058,6.134,6.152,6.168,6.244,6.434,6.766,7.228,7.780,8.359,8.902,9.364,9.729,10.010,
-10.242,10.467,10.718,11.009,11.331,11.658,11.956,12.197,12.367,12.471,12.529,12.566,12.600,12.636,12.665,12.672,
-12.644,12.583,12.511,12.463,12.478,12.580,12.770,13.024,13.297,13.546,13.737,13.861,13.932,13.974,14.012,14.060,
-14.116,14.166,14.196,14.204,14.199,14.201,14.232,14.308,14.432,14.594,14.779,14.973,15.173,15.381,15.604,15.847,
-16.106,16.365,16.606,16.809,16.961,17.058,17.107,17.116,17.098,17.059,17.003,16.933,16.854,16.770,16.691,16.620,
-16.560,16.505,16.446,16.367,16.255,16.103,15.909,15.684,15.443,15.209,14.999,14.827,14.697,14.601,14.525,14.453,
-14.371,14.277,14.177,14.090,14.039,14.048,14.137,14.316,14.582,14.916,15.281,15.627,15.892,16.014,15.947,15.677,
-15.230,14.673,14.102,13.614,13.281,13.126,13.121,13.196,13.270,13.279,13.199,13.047,12.868,12.708,12.588,12.493,
-12.377,12.182,11.860,11.392,10.787,10.075,9.294,8.479,7.666,6.902,6.254,5.803,5.624,5.753,6.151,6.691,
-7.177,7.388,7.148,6.382,5.149,3.627,2.061,.690,-.320,-.914,-1.142,-1.130,-1.018,-.920,-.893,-.940,
--1.032,-1.134,-1.223,-1.297,-1.363,-1.427,-1.482,-1.510,-1.488,-1.401,-1.253,-1.063,-.864,-.683,-.536,-.422,
--.325,-.227,-.119,-.006,.096,.165,.194,.199,.222,.328,.580,1.015,1.631,2.372,3.146,3.843,
-4.374,4.694,4.815,4.795,4.720,4.666,4.683,4.781,4.941,5.135,5.345,5.572,5.827,6.124,6.459,6.803,
-7.114,7.353,7.498,7.564,7.594,7.641,7.748,7.929,8.166,8.421,8.651,8.832,8.965,9.071,9.180,9.313,
-9.474,9.647,9.808,9.940,10.036,10.109,10.181,10.276,10.410,10.585,10.792,11.012,11.227,11.421,11.586,11.719,
-11.822,11.901,11.961,12.008,12.050,12.091,12.141,12.206,12.296,12.416,12.564,12.735,12.914,13.087,13.247,13.397,
-13.553,13.737,13.968,14.249,14.560,14.862,15.107,15.257,15.296,15.238,15.122,14.992,14.886,14.822,14.801,14.810,
-14.837,14.875,14.926,14.991,15.066,15.141,15.200,15.230,15.230,15.206,15.173,15.140,15.102,15.042,14.932,14.750,
-14.481,14.127,13.691,13.183,12.609,11.984,11.345,10.756,10.305,10.087,10.165,10.542,11.145,11.841,12.473,12.915,
-13.113,13.096,12.958,12.811,12.743,12.780,12.891,13.006,13.063,13.031,12.920,12.772,12.632,12.522,12.433,12.336,
-12.199,12.007,11.773,11.527,11.294,11.087,10.888,10.667,10.397,10.072,9.721,9.395,9.157,9.048,9.071,9.187,
-9.323,9.394,9.333,9.109,8.743,8.300,7.876,7.570,7.460,7.581,7.918,8.411,8.971,9.507,9.945,10.240,
-10.380,10.378,10.256,10.039,9.747,9.399,9.016,8.624,8.248,7.904,7.593,7.301,7.004,6.681,6.325,5.949,
-5.580,5.241,4.940,4.665,4.388,4.081,3.735,3.369,3.022,2.736,2.535,2.405,2.299,2.155,1.917,1.566,
-1.121,.632,.158,-.264,-.629,-.966,-1.318,-1.722,-2.190,-2.700,-3.206,-3.656,-4.013,-4.270,-4.447,-4.593,
--4.768,-5.029,-5.423,-5.973,-6.675,-7.495,-8.379,-9.252,-10.042,-10.693,-11.178,-11.506,-11.713,-11.855,-11.984,-12.140,
--12.344,-12.602,-12.912,-13.273,-13.687,-14.150,-14.652,-15.166,-15.654,-16.077,-16.412,-16.658,-16.846,-17.024,-17.242,-17.538,
--17.921,-18.375,-18.862,-19.345,-19.793,-20.193,-20.549,-20.877,-21.200,-21.536,-21.902,-22.309,-22.763,-23.265,-23.807,-24.378,
--24.960,-25.533,-26.082,-26.600,-27.088,-27.549,-27.987,-28.402,-28.788,-29.135,-29.439,-29.699,-29.926,-30.135,-30.344,-30.564,
--30.796,-31.033,-31.265,-31.481,-31.678,-31.862,-32.047,-32.251,-32.490,-32.770,-33.088,-33.426,-33.759,-34.059,-34.305,-34.491,
--34.627,-34.740,-34.861,-35.022,-35.239,-35.512,-35.828,-36.168,-36.518,-36.876,-37.248,-37.644,-38.066,-38.502,-38.927,-39.311,
--39.632,-39.889,-40.102,-40.306,-40.533,-40.800,-41.100,-41.407,-41.687,-41.918,-42.100,-42.257,-42.422,-42.631,-42.901,-43.231,
--43.603,-43.992,-44.377,-44.749,-45.105,-45.444,-45.768,-46.070,-46.349,-46.608,-46.859,-47.124,-47.420,-47.758,-48.127,-48.505,
--48.856,-49.150,-49.368,-49.505,-49.571,-49.579,-49.540,-49.458,-49.333,-49.167,-48.965,-48.736,-48.494,-48.246,-47.994,-47.737,
--47.471,-47.202,-46.944,-46.722,-46.560,-46.475,-46.468,-46.526,-46.630,-46.757,-46.890,-47.022,-47.144,-47.244,-47.307,-47.308,
--47.228,-47.058,-46.805,-46.493,-46.151,-45.804,-45.469,-45.149,-44.845,-44.559,-44.299,-44.082,-43.922,-43.821,-43.764,-43.721,
--43.659,-43.558,-43.421,-43.272,-43.146,-43.071,-43.048,-43.048,-43.016,-42.891,-42.625,-42.203,-41.638,-40.968,-40.235,-39.473,
--38.699,-37.913,-37.115,-36.306,-35.505,-34.736,-34.028,-33.399,-32.854,-32.381,-31.956,-31.554,-31.151,-30.731,-30.287,-29.820,
--29.338,-28.852,-28.379,-27.934,-27.531,-27.175,-26.862,-26.579,-26.307,-26.031,-25.745,-25.452,-25.161,-24.885,-24.629,-24.387,
--24.142,-23.872,-23.553,-23.167,-22.706,-22.169,-21.564,-20.903,-20.205,-19.488,-18.768,-18.057,-17.353,-16.641,-15.894,-15.082,
--14.182,-13.190,-12.127,-11.034,-9.962,-8.955,-8.036,-7.200,-6.422,-5.664,-4.894,-4.099,-3.283,-2.463,-1.659,-.881,
--.123,.624,1.371,2.109,2.812,3.443,3.961,4.350,4.624,4.830,5.037,5.316,5.710,6.232,6.854,7.527,
-8.199,8.832,9.415,9.961,10.496,11.044,11.617,12.214,12.827,13.443,14.060,14.681,15.314,15.964,16.632,17.310,
-17.989,18.662,19.327,19.986,20.645,21.306,21.967,22.626,23.279,23.925,24.561,25.184,25.783,26.343,26.855,27.317,
-27.746,28.177,28.647,29.183,29.787,30.431,31.068,31.659,32.187,32.682,33.204,33.827,34.600,35.527,36.555,37.592,
-38.542,39.339,39.968,40.465,40.898,41.331,41.806,42.328,42.879,43.433,43.975,44.508,45.043,45.586,46.124,46.624,
-47.041,47.346,47.532,47.629,47.688,47.764,47.895,48.092,48.338,48.608,48.878,49.143,49.410,49.696,50.011,50.353,
-50.709,51.062,51.405,51.742,52.092,52.473,52.897,53.358,53.838,54.313,54.769,55.206,55.640,56.093,56.582,57.104,
-57.642,58.165,58.648,59.078,59.465,59.834,60.215,60.627,61.073,61.535,61.982,62.387,62.733,63.021,63.265,63.484,
-63.694,63.893,64.070,64.207,64.288,64.309,64.282,64.228,64.168,64.119,64.083,64.050,64.004,63.932,63.831,63.707,
-63.574,63.446,63.328,63.216,63.102,62.976,62.837,62.692,62.555,62.434,62.325,62.212,62.066,61.863,61.599,61.292,
-60.984,60.726,60.559,60.499,60.528,60.604,60.674,60.698,60.659,60.566,60.446,60.326,60.223,60.139,60.065,59.996,
-59.933,59.889,59.879,59.911,59.976,60.049,60.100,60.106,60.067,60.003,59.946,59.921,59.931,59.946,59.919,59.797,
-59.551,59.188,58.749,58.297,57.892,57.571,57.337,57.164,57.014,56.855,56.674,56.474,56.274,56.089,55.929,55.790,
-55.663,55.544,55.433,55.340,55.271,55.229,55.203,55.178,55.141,55.093,55.052,55.048,55.109,55.247,55.445,55.657,
-55.824,55.890,55.823,55.628,55.343,55.022,54.719,54.464,54.256,54.068,53.858,53.585,53.223,52.770,52.242,51.672,
-51.092,50.535,50.024,49.576,49.197,48.886,48.630,48.413,48.212,48.010,47.554,47.395,47.257,47.132,47.015,46.902,
-46.783,46.636,46.437,46.165,45.818,45.421,45.029,44.708,44.512,44.465,44.540,44.671,44.775,44.782,44.669,44.471,
-44.267,44.152,44.197,44.421,44.774,45.152,45.430,45.502,45.311,44.867,44.236,43.522,42.830,42.238,41.779,41.440,
-41.172,40.906,40.582,40.161,39.630,39.008,38.327,37.624,36.924,36.238,35.563,34.888,34.204,33.511,32.823,32.158,
-31.536,30.967,30.450,29.974,29.523,29.081,28.641,28.198,27.757,27.318,26.883,26.448,26.010,25.563,25.106,24.634,
-24.145,23.635,23.102,22.551,21.992,21.441,20.914,20.423,19.969,19.550,19.158,18.797,18.481,18.239,18.104,18.101,
-18.234,18.480,18.793,19.116,19.393,19.584,19.669,19.648,19.531,19.333,19.073,18.770,18.447,18.132,17.849,17.616,
-17.436,17.295,17.171,17.039,16.885,16.709,16.525,16.355,16.215,16.116,16.057,16.030,16.027,16.043,16.073,16.109,
-16.137,16.138,16.095,15.997,15.853,15.686,15.531,15.420,15.373,15.394,15.469,15.581,15.713,15.857,16.008,16.159,
-16.296,16.394,16.421,16.359,16.203,15.976,15.714,15.453,15.215,14.998,14.776,14.516,14.194,13.811,13.402,13.019,
-12.720,12.544,12.497,12.552,12.657,12.750,12.782,12.730,12.599,12.418,12.231,12.085,12.011,12.021,12.103,12.224,
-12.341,12.411,12.405,12.313,12.146,11.926,11.678,11.419,11.151,10.865,10.545,10.183,9.786,9.372,8.971,8.610,
-8.308,8.069,7.884,7.736,7.611,7.499,7.400,7.317,7.251,7.201,7.158,7.109,7.040,6.940,6.803,6.629,
-6.421,6.185,5.926,5.652,5.364,5.066,4.761,4.454,4.153,3.869,3.610,3.379,3.172,2.975,2.768,2.534,
-2.262,1.953,1.624,1.291,.969,.660,.352,.027,-.334,-.735,-1.163,-1.593,-1.996,-2.350,-2.643,-2.875,
--3.046,-3.153,-3.184,-3.131,-3.002,-2.836,-2.704,-2.702,-2.923,-3.428,-4.219,-5.239,-6.380,-7.516,-8.532,-9.353,
--9.958,-10.374,-10.659,-10.885,-11.118,-11.407,-11.775,-12.221,-12.720,-13.235,-13.720,-14.139,-14.477,-14.742,-14.969,-15.200,
--15.474,-15.804,-16.180,-16.568,-16.933,-17.249,-17.516,-17.756,-18.004,-18.289,-18.622,-18.992,-19.377,-19.755,-20.115,-20.461,
--20.810,-21.177,-21.570,-21.981,-22.395,-22.794,-23.168,-23.520,-23.858,-24.193,-24.531,-24.868,-25.198,-25.513,-25.809,-26.083,
--26.339,-26.575,-26.792,-26.989,-27.169,-27.343,-27.525,-27.725,-27.948,-28.185,-28.420,-28.633,-28.816,-28.973,-29.121,-29.281,
--29.467,-29.676,-29.895,-30.103,-30.284,-30.436,-30.567,-30.693,-30.826,-30.966,-31.105,-31.230,-31.337,-31.436,-31.547,-31.692,
--31.882,-32.109,-32.348,-32.562,-32.719,-32.804,-32.821,-32.792,-32.743,-32.701,-32.681,-32.689,-32.727,-32.794,-32.885,-32.995,
--33.113,-33.222,-33.308,-33.360,-33.384,-33.397,-33.426,-33.500,-33.639,-33.852,-34.132,-34.464,-34.826,-35.192,-35.533,-35.815,
--36.004,-36.072,-36.002,-35.800,-35.495,-35.130,-34.755,-34.413,-34.124,-33.890,-33.695,-33.517,-33.336,-33.143,-32.940,-32.738,
--32.557,-32.419,-32.351,-32.377,-32.517,-32.774,-33.131,-33.548,-33.969,-34.335,-34.601,-34.752,-34.802,-34.790,-34.763,-34.757,
--34.786,-34.843,-34.903,-34.944,-34.953,-34.934,-34.905,-34.886,-34.894,-34.933,-34.995,-35.064,-35.118,-35.141,-35.119,-35.043,
--34.911,-34.726,-34.497,-34.242,-33.979,-33.724,-33.484,-33.254,-33.021,-32.771,-32.499,-32.215,-31.944,-31.714,-31.547,-31.448,
--31.399,-31.370,-31.325,-31.243,-31.116,-30.958,-30.787,-30.615,-30.445,-30.264,-30.053,-29.801,-29.510,-29.196,-28.885,-28.602,
--28.361,-28.164,-28.007,-27.884,-27.799,-27.760,-27.777,-27.848,-27.952,-28.050,-28.094,-28.042,-27.872,-27.587,-27.215,-26.792,
--26.346,-25.889,-25.412,-24.893,-24.316,-23.680,-23.004,-22.323,-21.679,-21.104,-20.614,-20.204,-19.859,-19.562,-19.302,-19.082,
--18.907,-18.781,-18.696,-18.626,-18.531,-18.370,-18.109,-17.739,-17.274,-16.751,-16.212,-15.690,-15.196,-14.715,-14.215,-13.665,
--13.042,-12.354,-11.628,-10.906,-10.226,-9.609,-9.050,-8.530,-8.019,-7.501,-6.974,-6.455,-5.967,-5.523,-5.124,-4.751,
--4.379,-3.988,-3.576,-3.158,-2.762,-2.414,-2.121,-1.872,-1.639,-1.388,-1.095,-.755,-.383,-.006,.350,.674,
-.970,1.256,1.558,1.896,2.274,2.683,3.097,3.487,3.829,4.111,4.340,4.541,4.747,4.990,5.291,5.645,
-6.024,6.385,6.683,6.887,6.996,7.043,7.083,7.179,7.381,7.709,8.145,8.644,9.147,9.601,9.975,10.268,
-10.502,10.715,10.946,11.217,11.529,11.863,12.182,12.449,12.635,12.731,12.748,12.719,12.681,12.666,12.688,12.740,
-12.798,12.832,12.824,12.773,12.702,12.648,12.648,12.724,12.877,13.084,13.311,13.525,13.704,13.844,13.953,14.044,
-14.123,14.190,14.238,14.263,14.269,14.270,14.291,14.353,14.470,14.641,14.852,15.082,15.315,15.542,15.765,15.994,
-16.235,16.489,16.744,16.981,17.181,17.327,17.413,17.444,17.431,17.387,17.321,17.237,17.135,17.015,16.880,16.737,
-16.598,16.475,16.377,16.304,16.248,16.193,16.123,16.021,15.884,15.715,15.529,15.343,15.174,15.030,14.912,14.814,
-14.729,14.655,14.597,14.565,14.573,14.629,14.739,14.897,15.098,15.334,15.594,15.865,16.122,16.326,16.427,16.373,
-16.133,15.710,15.153,14.549,13.999,13.589,13.361,13.304,13.356,13.436,13.475,13.439,13.336,13.205,13.083,12.981,
-12.869,12.686,12.364,11.855,11.152,10.294,9.344,8.377,7.449,6.603,5.870,5.285,4.896,4.750,4.873,5.237,
-5.745,6.235,6.522,6.447,5.931,5.007,3.809,2.535,1.380,.486,-.095,-.397,-.508,-.532,-.546,-.585,
--.648,-.713,-.765,-.800,-.834,-.883,-.953,-1.029,-1.083,-1.080,-.999,-.844,-.642,-.434,-.262,-.152,
--.103,-.091,-.081,-.040,.044,.158,.269,.342,.359,.338,.334,.429,.699,1.189,1.883,2.704,
-3.531,4.240,4.740,5.003,5.068,5.020,4.954,4.942,5.010,5.146,5.318,5.497,5.678,5.880,6.128,6.434,
-6.784,7.137,7.445,7.674,7.819,7.906,7.982,8.087,8.243,8.441,8.655,8.854,9.020,9.158,9.287,9.431,
-9.602,9.794,9.989,10.163,10.301,10.399,10.471,10.533,10.603,10.692,10.805,10.940,11.096,11.267,11.448,11.629,
-11.798,11.944,12.064,12.159,12.238,12.313,12.394,12.483,12.578,12.676,12.774,12.877,12.993,13.129,13.288,13.467,
-13.661,13.868,14.087,14.320,14.563,14.805,15.024,15.191,15.285,15.300,15.252,15.169,15.084,15.021,14.985,14.970,
-14.962,14.953,14.950,14.967,15.016,15.101,15.205,15.305,15.377,15.409,15.409,15.390,15.361,15.315,15.224,15.049,
-14.761,14.353,13.850,13.296,12.742,12.228,11.776,11.397,11.102,10.912,10.854,10.949,11.187,11.525,11.883,12.177,
-12.349,12.388,12.339,12.277,12.273,12.360,12.521,12.701,12.834,12.883,12.849,12.771,12.697,12.651,12.619,12.553,
-12.394,12.105,11.694,11.208,10.720,10.286,9.932,9.640,9.365,9.069,8.740,8.407,8.128,7.966,7.956,8.090,
-8.314,8.541,8.682,8.670,8.479,8.129,7.679,7.208,6.798,6.513,6.393,6.447,6.659,7.001,7.437,7.934,
-8.456,8.962,9.397,9.703,9.818,9.706,9.368,8.855,8.257,7.680,7.212,6.895,6.714,6.608,6.502,6.335,
-6.082,5.762,5.412,5.066,4.739,4.417,4.077,3.707,3.321,2.961,2.675,2.491,2.398,2.339,2.237,2.020,
-1.657,1.172,.630,.110,-.329,-.674,-.960,-1.249,-1.604,-2.052,-2.579,-3.134,-3.651,-4.077,-4.395,-4.628,
--4.833,-5.080,-5.433,-5.933,-6.583,-7.354,-8.188,-9.015,-9.768,-10.396,-10.879,-11.224,-11.466,-11.652,-11.825,-12.014,
--12.232,-12.477,-12.747,-13.046,-13.388,-13.789,-14.258,-14.781,-15.323,-15.832,-16.264,-16.593,-16.829,-17.012,-17.198,-17.438,
--17.759,-18.153,-18.585,-19.008,-19.382,-19.684,-19.915,-20.095,-20.253,-20.418,-20.616,-20.872,-21.204,-21.630,-22.154,-22.769,
--23.450,-24.161,-24.860,-25.516,-26.115,-26.658,-27.160,-27.637,-28.093,-28.523,-28.912,-29.249,-29.533,-29.778,-30.011,-30.255,
--30.526,-30.821,-31.122,-31.407,-31.658,-31.874,-32.069,-32.266,-32.490,-32.752,-33.047,-33.354,-33.642,-33.885,-34.064,-34.180,
--34.250,-34.305,-34.379,-34.500,-34.684,-34.928,-35.218,-35.530,-35.844,-36.149,-36.451,-36.765,-37.105,-37.481,-37.883,-38.291,
--38.677,-39.019,-39.313,-39.574,-39.827,-40.099,-40.400,-40.724,-41.048,-41.347,-41.604,-41.824,-42.026,-42.241,-42.493,-42.793,
--43.132,-43.494,-43.860,-44.218,-44.567,-44.912,-45.257,-45.599,-45.931,-46.245,-46.539,-46.825,-47.124,-47.454,-47.824,-48.224,
--48.626,-48.992,-49.288,-49.492,-49.604,-49.636,-49.608,-49.536,-49.433,-49.303,-49.151,-48.980,-48.796,-48.604,-48.405,-48.197,
--47.975,-47.739,-47.499,-47.275,-47.090,-46.962,-46.900,-46.895,-46.931,-46.990,-47.060,-47.139,-47.230,-47.333,-47.433,-47.505,
--47.514,-47.435,-47.259,-46.999,-46.689,-46.366,-46.056,-45.770,-45.500,-45.238,-44.982,-44.748,-44.564,-44.452,-44.417,-44.433,
--44.452,-44.422,-44.307,-44.110,-43.871,-43.648,-43.494,-43.424,-43.409,-43.382,-43.260,-42.981,-42.519,-41.893,-41.154,-40.364,
--39.567,-38.788,-38.026,-37.274,-36.528,-35.801,-35.117,-34.500,-33.966,-33.511,-33.116,-32.751,-32.385,-31.996,-31.574,-31.116,
--30.629,-30.121,-29.605,-29.098,-28.620,-28.186,-27.808,-27.483,-27.196,-26.926,-26.650,-26.357,-26.050,-25.747,-25.467,-25.225,
--25.018,-24.826,-24.616,-24.350,-23.996,-23.532,-22.956,-22.279,-21.523,-20.717,-19.892,-19.077,-18.293,-17.546,-16.828,-16.115,
--15.373,-14.571,-13.691,-12.735,-11.728,-10.709,-9.720,-8.790,-7.929,-7.125,-6.353,-5.587,-4.809,-4.017,-3.220,-2.426,
--1.638,-.848,-.042,.791,1.643,2.483,3.257,3.907,4.390,4.697,4.865,4.968,5.095,5.328,5.713,6.253,
-6.911,7.629,8.349,9.035,9.674,10.274,10.852,11.418,11.978,12.527,13.063,13.594,14.135,14.709,15.332,16.010,
-16.733,17.481,18.230,18.963,19.672,20.356,21.020,21.668,22.301,22.918,23.520,24.109,24.689,25.260,25.818,26.360,
-26.884,27.401,27.931,28.498,29.121,29.798,30.506,31.204,31.852,32.435,32.970,33.507,34.109,34.825,35.662,36.578,
-37.499,38.340,39.045,39.601,40.047,40.450,40.880,41.381,41.962,42.601,43.260,43.905,44.516,45.085,45.610,46.084,
-46.493,46.823,47.066,47.233,47.352,47.461,47.594,47.770,47.993,48.250,48.528,48.822,49.132,49.467,49.829,50.212,
-50.599,50.969,51.312,51.629,51.940,52.273,52.649,53.077,53.545,54.034,54.520,54.993,55.457,55.925,56.414,56.927,
-57.457,57.980,58.474,58.926,59.338,59.731,60.128,60.549,60.998,61.460,61.908,62.312,62.655,62.933,63.161,63.359,
-63.548,63.736,63.915,64.068,64.175,64.221,64.209,64.153,64.077,64.005,63.950,63.914,63.884,63.839,63.766,63.658,
-63.523,63.375,63.230,63.098,62.976,62.856,62.726,62.582,62.428,62.277,62.139,62.013,61.887,61.740,61.553,61.322,
-61.066,60.823,60.636,60.538,60.531,60.585,60.649,60.672,60.621,60.496,60.330,60.169,60.055,60.008,60.020,60.068,
-60.124,60.175,60.221,60.275,60.341,60.411,60.457,60.447,60.363,60.212,60.029,59.864,59.760,59.725,59.726,59.697,
-59.567,59.288,58.859,58.328,57.772,57.268,56.865,56.571,56.361,56.195,56.047,55.915,55.822,55.798,55.857,55.983,
-56.127,56.224,56.219,56.088,55.845,55.542,55.243,55.001,54.847,54.787,54.804,54.881,55.007,55.178,55.393,55.638,
-55.881,56.075,56.168,56.124,55.936,55.632,55.265,54.894,54.563,54.287,54.046,53.797,53.497,53.115,52.644,52.104,
-51.527,50.949,50.395,49.881,49.409,48.981,48.597,48.262,47.978,47.744,47.554,47.073,46.968,46.915,46.876,46.822,
-46.735,46.610,46.442,46.226,45.959,45.641,45.291,44.950,44.668,44.492,44.441,44.495,44.594,44.662,44.639,44.509,
-44.312,44.131,44.062,44.167,44.447,44.833,45.207,45.435,45.422,45.132,44.604,43.931,43.228,42.593,42.084,41.707,
-41.424,41.173,40.888,40.521,40.046,39.466,38.805,38.096,37.375,36.669,35.992,35.346,34.725,34.116,33.509,32.903,
-32.301,31.712,31.148,30.617,30.124,29.668,29.243,28.838,28.442,28.042,27.629,27.196,26.744,26.277,25.804,25.331,
-24.860,24.385,23.898,23.391,22.861,22.319,21.781,21.262,20.769,20.298,19.834,19.368,18.904,18.471,18.117,17.899,
-17.861,18.011,18.320,18.723,19.141,19.500,19.752,19.879,19.891,19.809,19.654,19.443,19.189,18.904,18.607,18.324,
-18.076,17.876,17.721,17.594,17.469,17.328,17.164,16.986,16.810,16.652,16.520,16.412,16.317,16.227,16.137,16.047,
-15.960,15.876,15.790,15.691,15.574,15.439,15.302,15.184,15.111,15.101,15.161,15.286,15.467,15.690,15.942,16.209,
-16.468,16.690,16.836,16.875,16.788,16.585,16.301,15.986,15.693,15.450,15.262,15.102,14.932,14.719,14.449,14.139,
-13.828,13.559,13.369,13.270,13.245,13.260,13.269,13.233,13.135,12.977,12.789,12.610,12.485,12.443,12.491,12.608,
-12.747,12.851,12.867,12.763,12.540,12.223,11.859,11.489,11.144,10.827,10.527,10.223,9.902,9.567,9.235,8.930,
-8.673,8.468,8.307,8.168,8.032,7.888,7.739,7.595,7.470,7.370,7.293,7.227,7.156,7.064,6.938,6.774,
-6.571,6.336,6.075,5.801,5.523,5.250,4.986,4.727,4.463,4.187,3.893,3.586,3.276,2.978,2.702,2.449,
-2.210,1.971,1.721,1.455,1.175,.889,.598,.297,-.024,-.377,-.765,-1.176,-1.586,-1.968,-2.300,-2.571,
--2.785,-2.947,-3.058,-3.112,-3.100,-3.027,-2.926,-2.859,-2.916,-3.180,-3.706,-4.493,-5.478,-6.554,-7.600,-8.514,
--9.245,-9.791,-10.198,-10.529,-10.845,-11.190,-11.583,-12.023,-12.500,-12.993,-13.482,-13.944,-14.360,-14.718,-15.019,-15.277,
--15.517,-15.767,-16.046,-16.357,-16.691,-17.030,-17.361,-17.681,-17.997,-18.322,-18.663,-19.020,-19.381,-19.732,-20.067,-20.390,
--20.716,-21.063,-21.439,-21.842,-22.256,-22.663,-23.050,-23.418,-23.777,-24.142,-24.519,-24.907,-25.289,-25.648,-25.971,-26.255,
--26.510,-26.748,-26.979,-27.208,-27.433,-27.653,-27.867,-28.078,-28.287,-28.491,-28.682,-28.851,-28.996,-29.124,-29.258,-29.423,
--29.636,-29.893,-30.167,-30.421,-30.619,-30.752,-30.835,-30.909,-31.016,-31.179,-31.394,-31.627,-31.835,-31.986,-32.077,-32.133,
--32.198,-32.310,-32.487,-32.715,-32.959,-33.175,-33.332,-33.419,-33.445,-33.433,-33.408,-33.390,-33.391,-33.419,-33.475,-33.560,
--33.665,-33.775,-33.871,-33.936,-33.962,-33.957,-33.944,-33.952,-34.009,-34.129,-34.311,-34.544,-34.815,-35.113,-35.430,-35.758,
--36.076,-36.353,-36.549,-36.623,-36.555,-36.347,-36.032,-35.657,-35.273,-34.919,-34.614,-34.356,-34.131,-33.922,-33.717,-33.513,
--33.316,-33.135,-32.987,-32.890,-32.865,-32.928,-33.086,-33.330,-33.634,-33.955,-34.246,-34.472,-34.616,-34.688,-34.719,-34.747,
--34.800,-34.892,-35.016,-35.150,-35.271,-35.364,-35.422,-35.455,-35.475,-35.496,-35.525,-35.562,-35.602,-35.636,-35.652,-35.636,
--35.574,-35.452,-35.264,-35.010,-34.702,-34.360,-34.006,-33.657,-33.324,-33.007,-32.703,-32.414,-32.147,-31.918,-31.743,-31.629,
--31.570,-31.544,-31.520,-31.469,-31.375,-31.241,-31.083,-30.922,-30.770,-30.628,-30.481,-30.307,-30.093,-29.834,-29.545,-29.244,
--28.954,-28.688,-28.454,-28.252,-28.085,-27.959,-27.885,-27.866,-27.893,-27.937,-27.950,-27.883,-27.695,-27.369,-26.919,-26.378,
--25.790,-25.191,-24.595,-24.002,-23.398,-22.775,-22.138,-21.507,-20.917,-20.402,-19.983,-19.664,-19.429,-19.252,-19.107,-18.977,
--18.856,-18.752,-18.669,-18.607,-18.548,-18.462,-18.310,-18.059,-17.693,-17.223,-16.681,-16.112,-15.559,-15.044,-14.562,-14.082,
--13.561,-12.963,-12.276,-11.518,-10.731,-9.968,-9.269,-8.649,-8.101,-7.599,-7.115,-6.637,-6.168,-5.722,-5.313,-4.944,
--4.598,-4.250,-3.875,-3.460,-3.011,-2.551,-2.106,-1.693,-1.316,-.963,-.616,-.266,.086,.425,.730,.988,
-1.200,1.383,1.570,1.793,2.077,2.428,2.837,3.281,3.730,4.158,4.548,4.897,5.216,5.524,5.840,6.174,
-6.522,6.866,7.176,7.425,7.599,7.706,7.778,7.861,8.001,8.229,8.549,8.938,9.357,9.761,10.118,10.416,
-10.665,10.891,11.124,11.386,11.685,12.011,12.340,12.639,12.874,13.024,13.081,13.063,12.999,12.928,12.884,12.882,
-12.917,12.965,12.994,12.980,12.915,12.819,12.724,12.668,12.679,12.762,12.902,13.071,13.242,13.399,13.537,13.665,
-13.792,13.920,14.043,14.147,14.223,14.271,14.305,14.352,14.437,14.579,14.782,15.032,15.308,15.589,15.861,16.121,
-16.373,16.622,16.867,17.101,17.305,17.463,17.565,17.610,17.607,17.571,17.517,17.450,17.370,17.268,17.137,16.976,
-16.793,16.609,16.447,16.325,16.253,16.224,16.221,16.216,16.187,16.119,16.011,15.874,15.725,15.581,15.452,15.342,
-15.250,15.181,15.142,15.144,15.200,15.314,15.476,15.666,15.859,16.036,16.190,16.331,16.472,16.621,16.760,16.849,
-16.827,16.645,16.280,15.761,15.163,14.589,14.136,13.862,13.765,13.788,13.846,13.855,13.764,13.570,13.300,12.994,
-12.674,12.331,11.926,11.417,10.778,10.018,9.184,8.339,7.544,6.837,6.231,5.724,5.321,5.046,4.937,5.027,
-5.312,5.731,6.166,6.462,6.477,6.126,5.413,4.430,3.326,2.266,1.377,.723,.299,.054,-.081,-.161,
--.220,-.266,-.296,-.312,-.321,-.340,-.383,-.451,-.529,-.590,-.605,-.554,-.438,-.276,-.104,.038,
-.122,.140,.111,.071,.064,.116,.229,.370,.487,.533,.490,.393,.326,.399,.707,1.291,
-2.112,3.059,3.980,4.737,5.247,5.506,5.579,5.565,5.553,5.594,5.689,5.813,5.935,6.050,6.176,6.348,
-6.591,6.901,7.246,7.575,7.844,8.036,8.166,8.270,8.385,8.530,8.701,8.876,9.035,9.168,9.286,9.408,
-9.555,9.732,9.928,10.124,10.301,10.453,10.583,10.703,10.821,10.937,11.048,11.147,11.237,11.332,11.447,11.594,
-11.770,11.958,12.134,12.279,12.390,12.477,12.561,12.659,12.774,12.898,13.014,13.114,13.201,13.294,13.417,13.584,
-13.797,14.037,14.277,14.494,14.676,14.824,14.946,15.049,15.137,15.205,15.251,15.274,15.279,15.274,15.259,15.232,
-15.186,15.119,15.041,14.978,14.957,14.998,15.100,15.237,15.371,15.467,15.509,15.504,15.475,15.436,15.382,15.279,
-15.081,14.753,14.292,13.739,13.163,12.637,12.207,11.885,11.643,11.446,11.266,11.106,10.987,10.936,10.967,11.067,
-11.209,11.361,11.513,11.675,11.868,12.105,12.374,12.632,12.824,12.907,12.873,12.755,12.605,12.465,12.342,12.198,
-11.968,11.595,11.062,10.410,9.722,9.090,8.582,8.212,7.945,7.721,7.492,7.246,7.015,6.855,6.822,6.942,
-7.195,7.526,7.863,8.139,8.312,8.364,8.303,8.141,7.895,7.577,7.199,6.784,6.370,6.017,5.800,5.793,
-6.053,6.590,7.351,8.218,9.021,9.581,9.761,9.507,8.874,8.014,7.130,6.413,5.981,5.845,5.924,6.078,
-6.171,6.114,5.890,5.538,5.120,4.690,4.271,3.863,3.458,3.063,2.706,2.428,2.252,2.167,2.120,2.033,
-1.834,1.489,1.021,.494,-.009,-.427,-.744,-.995,-1.247,-1.561,-1.970,-2.459,-2.978,-3.466,-3.875,-4.200,
--4.474,-4.758,-5.121,-5.610,-6.241,-6.989,-7.803,-8.616,-9.367,-10.012,-10.532,-10.939,-11.260,-11.531,-11.785,-12.038,
--12.293,-12.540,-12.774,-13.000,-13.242,-13.533,-13.906,-14.376,-14.925,-15.510,-16.068,-16.545,-16.915,-17.186,-17.399,-17.607,
--17.852,-18.151,-18.488,-18.827,-19.127,-19.362,-19.527,-19.637,-19.717,-19.794,-19.889,-20.018,-20.202,-20.466,-20.839,-21.342,
--21.979,-22.727,-23.538,-24.353,-25.119,-25.807,-26.412,-26.952,-27.452,-27.928,-28.381,-28.797,-29.161,-29.467,-29.730,-29.975,
--30.232,-30.521,-30.841,-31.174,-31.494,-31.781,-32.027,-32.244,-32.454,-32.674,-32.910,-33.152,-33.379,-33.568,-33.706,-33.795,
--33.853,-33.908,-33.988,-34.111,-34.285,-34.502,-34.747,-34.999,-35.240,-35.464,-35.673,-35.883,-36.113,-36.384,-36.705,-37.075,
--37.477,-37.887,-38.283,-38.652,-38.994,-39.321,-39.645,-39.973,-40.303,-40.622,-40.920,-41.191,-41.442,-41.693,-41.962,-42.263,
--42.596,-42.949,-43.305,-43.654,-43.994,-44.333,-44.682,-45.049,-45.428,-45.809,-46.177,-46.525,-46.859,-47.192,-47.540,-47.909,
--48.290,-48.658,-48.983,-49.238,-49.409,-49.497,-49.516,-49.484,-49.416,-49.322,-49.209,-49.083,-48.951,-48.819,-48.689,-48.558,
--48.418,-48.260,-48.084,-47.900,-47.728,-47.591,-47.503,-47.463,-47.457,-47.464,-47.468,-47.465,-47.468,-47.491,-47.543,-47.613,
--47.671,-47.678,-47.599,-47.425,-47.171,-46.872,-46.570,-46.290,-46.040,-45.810,-45.587,-45.373,-45.184,-45.051,-44.995,-45.010,
--45.057,-45.073,-44.997,-44.798,-44.498,-44.159,-43.868,-43.694,-43.652,-43.698,-43.738,-43.665,-43.396,-42.903,-42.219,-41.415,
--40.571,-39.748,-38.973,-38.242,-37.541,-36.859,-36.203,-35.595,-35.056,-34.594,-34.198,-33.839,-33.483,-33.105,-32.694,-32.253,
--31.794,-31.326,-30.853,-30.376,-29.896,-29.422,-28.968,-28.549,-28.174,-27.841,-27.537,-27.248,-26.963,-26.683,-26.423,-26.195,
--26.007,-25.848,-25.688,-25.487,-25.203,-24.806,-24.286,-23.653,-22.928,-22.139,-21.314,-20.476,-19.644,-18.832,-18.051,-17.302,
--16.575,-15.850,-15.099,-14.293,-13.414,-12.462,-11.456,-10.432,-9.429,-8.482,-7.608,-6.808,-6.066,-5.354,-4.648,-3.926,
--3.174,-2.383,-1.545,-.658,.271,1.223,2.160,3.026,3.761,4.317,4.675,4.859,4.934,4.991,5.122,5.392,
-5.827,6.407,7.085,7.802,8.515,9.200,9.855,10.486,11.099,11.689,12.245,12.764,13.253,13.738,14.256,14.840,
-15.506,16.248,17.042,17.852,18.647,19.411,20.136,20.826,21.484,22.111,22.704,23.264,23.801,24.331,24.870,25.433,
-26.021,26.628,27.246,27.869,28.502,29.154,29.837,30.548,31.278,32.007,32.717,33.405,34.080,34.760,35.455,36.157,
-36.840,37.463,37.995,38.430,38.799,39.162,39.586,40.125,40.792,41.563,42.382,43.184,43.918,44.554,45.091,45.538,
-45.911,46.224,46.484,46.702,46.890,47.070,47.260,47.476,47.721,47.992,48.278,48.574,48.882,49.208,49.559,49.934,
-50.323,50.709,51.078,51.426,51.763,52.107,52.482,52.900,53.361,53.849,54.347,54.839,55.321,55.797,56.279,56.771,
-57.270,57.767,58.248,58.705,59.144,59.575,60.015,60.473,60.945,61.415,61.857,62.248,62.576,62.841,63.060,63.250,
-63.427,63.599,63.761,63.898,63.997,64.045,64.041,63.993,63.917,63.833,63.756,63.697,63.653,63.613,63.564,63.490,
-63.387,63.257,63.112,62.966,62.829,62.704,62.584,62.459,62.320,62.163,61.995,61.826,61.663,61.508,61.357,61.202,
-61.044,60.891,60.763,60.679,60.649,60.662,60.687,60.687,60.629,60.505,60.338,60.173,60.059,60.031,60.093,60.217,
-60.358,60.475,60.545,60.568,60.560,60.537,60.499,60.427,60.300,60.103,59.852,59.590,59.376,59.255,59.235,59.278,
-59.304,59.229,58.992,58.585,58.052,57.477,56.944,56.510,56.188,55.955,55.773,55.617,55.496,55.443,55.499,55.681,
-55.964,56.273,56.511,56.590,56.464,56.149,55.721,55.286,54.946,54.770,54.772,54.921,55.160,55.427,55.678,55.886,
-56.043,56.139,56.161,56.093,55.921,55.648,55.298,54.916,54.552,54.244,54.001,53.801,53.600,53.350,53.017,52.594,
-52.099,51.566,51.023,50.488,49.962,49.440,48.920,48.414,47.949,47.557,47.264,47.073,46.927,46.826,46.793,46.774,
-46.723,46.618,46.460,46.263,46.040,45.796,45.532,45.251,44.971,44.724,44.547,44.463,44.465,44.511,44.542,44.507,
-44.391,44.227,44.089,44.057,44.184,44.459,44.809,45.117,45.263,45.166,44.812,44.259,43.606,42.963,42.412,41.984,
-41.661,41.393,41.114,40.772,40.336,39.800,39.178,38.496,37.784,37.072,36.382,35.729,35.119,34.546,33.999,33.466,
-32.938,32.411,31.891,31.388,30.912,30.470,30.064,29.685,29.320,28.954,28.571,28.161,27.720,27.252,26.767,26.273,
-25.776,25.274,24.759,24.220,23.652,23.061,22.463,21.882,21.339,20.841,20.376,19.924,19.467,19.006,18.570,18.213,
-17.998,17.969,18.136,18.463,18.877,19.295,19.643,19.881,20.005,20.036,20.003,19.926,19.810,19.651,19.443,19.193,
-18.921,18.656,18.422,18.228,18.067,17.921,17.771,17.604,17.422,17.235,17.052,16.876,16.702,16.518,16.317,16.099,
-15.875,15.661,15.471,15.312,15.179,15.065,14.965,14.881,14.825,14.815,14.868,14.994,15.194,15.461,15.777,16.122,
-16.471,16.789,17.041,17.191,17.211,17.095,16.861,16.547,16.207,15.889,15.624,15.418,15.253,15.098,14.927,14.724,
-14.496,14.263,14.052,13.886,13.774,13.710,13.674,13.641,13.586,13.492,13.359,13.200,13.042,12.916,12.849,12.847,
-12.895,12.953,12.967,12.891,12.697,12.392,12.008,11.597,11.206,10.864,10.573,10.317,10.071,9.820,9.566,9.321,
-9.106,8.931,8.788,8.658,8.516,8.348,8.153,7.946,7.750,7.584,7.457,7.360,7.276,7.184,7.070,6.922,
-6.738,6.518,6.264,5.985,5.689,5.393,5.112,4.853,4.616,4.386,4.141,3.866,3.552,3.211,2.863,2.531,
-2.227,1.953,1.698,1.447,1.190,.925,.659,.393,.123,-.161,-.475,-.824,-1.198,-1.571,-1.914,-2.202,
--2.428,-2.602,-2.742,-2.859,-2.954,-3.013,-3.032,-3.024,-3.040,-3.157,-3.456,-3.991,-4.763,-5.709,-6.723,-7.685,
--8.503,-9.141,-9.622,-10.008,-10.372,-10.769,-11.221,-11.716,-12.226,-12.724,-13.193,-13.631,-14.043,-14.432,-14.796,-15.132,
--15.438,-15.719,-15.991,-16.269,-16.568,-16.896,-17.251,-17.625,-18.011,-18.400,-18.789,-19.169,-19.533,-19.875,-20.193,-20.495,
--20.797,-21.118,-21.471,-21.855,-22.254,-22.647,-23.012,-23.346,-23.659,-23.976,-24.320,-24.703,-25.117,-25.540,-25.944,-26.308,
--26.625,-26.901,-27.148,-27.379,-27.600,-27.812,-28.018,-28.220,-28.424,-28.630,-28.835,-29.024,-29.185,-29.316,-29.430,-29.558,
--29.733,-29.975,-30.276,-30.599,-30.890,-31.105,-31.230,-31.291,-31.343,-31.445,-31.630,-31.893,-32.186,-32.447,-32.626,-32.708,
--32.720,-32.714,-32.749,-32.859,-33.045,-33.281,-33.525,-33.741,-33.909,-34.027,-34.104,-34.152,-34.184,-34.208,-34.232,-34.266,
--34.314,-34.377,-34.444,-34.499,-34.527,-34.524,-34.502,-34.485,-34.501,-34.568,-34.687,-34.842,-35.011,-35.181,-35.352,-35.542,
--35.768,-36.037,-36.332,-36.613,-36.827,-36.928,-36.894,-36.731,-36.471,-36.154,-35.819,-35.492,-35.182,-34.888,-34.609,-34.345,
--34.103,-33.892,-33.719,-33.591,-33.509,-33.475,-33.492,-33.564,-33.687,-33.854,-34.046,-34.242,-34.422,-34.575,-34.700,-34.807,
--34.912,-35.031,-35.171,-35.332,-35.505,-35.678,-35.838,-35.974,-36.080,-36.152,-36.190,-36.197,-36.181,-36.150,-36.113,-36.075,
--36.033,-35.975,-35.882,-35.732,-35.511,-35.212,-34.842,-34.419,-33.967,-33.511,-33.077,-32.685,-32.351,-32.090,-31.909,-31.809,
--31.778,-31.792,-31.819,-31.826,-31.788,-31.695,-31.555,-31.386,-31.211,-31.046,-30.895,-30.748,-30.589,-30.403,-30.183,-29.929,
--29.651,-29.364,-29.077,-28.802,-28.546,-28.317,-28.126,-27.977,-27.871,-27.790,-27.706,-27.579,-27.370,-27.050,-26.609,-26.060,
--25.430,-24.749,-24.049,-23.350,-22.665,-22.006,-21.384,-20.812,-20.308,-19.884,-19.545,-19.288,-19.101,-18.970,-18.881,-18.823,
--18.788,-18.767,-18.750,-18.721,-18.664,-18.559,-18.391,-18.146,-17.819,-17.414,-16.944,-16.434,-15.910,-15.397,-14.906,-14.428,
--13.936,-13.389,-12.754,-12.018,-11.199,-10.343,-9.510,-8.756,-8.112,-7.578,-7.128,-6.723,-6.330,-5.934,-5.535,-5.144,
--4.767,-4.399,-4.025,-3.624,-3.184,-2.710,-2.217,-1.731,-1.271,-.847,-.455,-.088,.260,.588,.886,1.144,
-1.361,1.546,1.725,1.926,2.176,2.492,2.874,3.310,3.781,4.265,4.743,5.204,5.640,6.049,6.432,6.789,
-7.119,7.418,7.677,7.888,8.049,8.167,8.263,8.365,8.506,8.711,8.984,9.316,9.676,10.034,10.360,10.642,
-10.883,11.101,11.317,11.550,11.811,12.099,12.403,12.702,12.973,13.192,13.342,13.416,13.422,13.381,13.320,13.263,
-13.223,13.195,13.162,13.104,13.007,12.876,12.734,12.612,12.544,12.544,12.609,12.717,12.839,12.955,13.057,13.155,
-13.264,13.399,13.559,13.730,13.892,14.025,14.124,14.200,14.278,14.386,14.543,14.756,15.015,15.301,15.593,15.880,
-16.155,16.423,16.684,16.935,17.164,17.353,17.487,17.558,17.571,17.538,17.481,17.412,17.339,17.258,17.158,17.031,
-16.875,16.704,16.541,16.409,16.330,16.306,16.328,16.368,16.399,16.396,16.351,16.269,16.167,16.067,15.984,15.925,
-15.889,15.873,15.876,15.905,15.969,16.073,16.212,16.370,16.520,16.638,16.714,16.758,16.797,16.862,16.968,17.100,
-17.208,17.222,17.081,16.757,16.276,15.715,15.176,14.754,14.494,14.383,14.349,14.291,14.117,13.777,13.275,12.659,
-11.994,11.337,10.718,10.133,9.568,9.007,8.454,7.930,7.460,7.059,6.721,6.425,6.147,5.885,5.663,5.535,
-5.555,5.747,6.080,6.463,6.761,6.837,6.591,5.998,5.114,4.060,2.982,2.014,1.245,.707,.382,.219,
-.159,.150,.155,.155,.145,.124,.097,.067,.034,.001,-.033,-.063,-.084,-.087,-.067,-.025,
-.029,.079,.108,.114,.110,.125,.193,.328,.510,.686,.789,.768,.625,.430,.307,.396,
-.796,1.520,2.485,3.534,4.494,5.233,5.702,5.937,6.029,6.076,6.144,6.246,6.361,6.456,6.521,6.578,
-6.669,6.830,7.073,7.370,7.675,7.940,8.143,8.291,8.416,8.548,8.704,8.874,9.036,9.172,9.278,9.371,
-9.477,9.613,9.780,9.964,10.141,10.299,10.442,10.587,10.752,10.940,11.137,11.316,11.455,11.548,11.617,11.693,
-11.807,11.968,12.159,12.345,12.495,12.598,12.669,12.737,12.832,12.965,13.125,13.285,13.422,13.533,13.636,13.764,
-13.942,14.173,14.433,14.683,14.884,15.016,15.085,15.116,15.139,15.176,15.232,15.299,15.360,15.404,15.419,15.404,
-15.355,15.276,15.175,15.074,15.000,14.982,15.033,15.144,15.285,15.412,15.490,15.509,15.486,15.452,15.425,15.399,
-15.333,15.168,14.862,14.412,13.863,13.295,12.788,12.386,12.085,11.833,11.571,11.258,10.903,10.555,10.288,10.163,
-10.205,10.400,10.707,11.080,11.483,11.890,12.280,12.620,12.870,12.986,12.947,12.761,12.468,12.120,11.756,11.377,
-10.957,10.451,9.838,9.139,8.420,7.773,7.276,6.962,6.802,6.727,6.658,6.543,6.382,6.218,6.112,6.115,
-6.242,6.466,6.744,7.029,7.294,7.537,7.762,7.969,8.135,8.213,8.147,7.890,7.431,6.808,6.117,5.494,
-5.090,5.036,5.396,6.144,7.147,8.186,9.009,9.402,9.252,8.590,7.588,6.504,5.598,5.050,4.910,5.088,
-5.409,5.677,5.751,5.581,5.203,4.706,4.184,3.697,3.267,2.886,2.545,2.247,2.009,1.846,1.752,1.690,
-1.604,1.435,1.157,.780,.354,-.063,-.427,-.732,-1.008,-1.304,-1.662,-2.090,-2.558,-3.015,-3.409,-3.717,
--3.956,-4.181,-4.463,-4.863,-5.410,-6.095,-6.871,-7.675,-8.448,-9.148,-9.757,-10.284,-10.750,-11.180,-11.591,-11.985,
--12.353,-12.680,-12.953,-13.176,-13.373,-13.581,-13.848,-14.207,-14.670,-15.215,-15.795,-16.352,-16.836,-17.224,-17.523,-17.766,
--17.994,-18.239,-18.506,-18.782,-19.039,-19.253,-19.415,-19.532,-19.627,-19.720,-19.825,-19.945,-20.083,-20.249,-20.469,-20.783,
--21.228,-21.822,-22.554,-23.376,-24.222,-25.023,-25.736,-26.348,-26.877,-27.355,-27.811,-28.255,-28.679,-29.063,-29.396,-29.678,
--29.928,-30.176,-30.444,-30.741,-31.059,-31.377,-31.675,-31.942,-32.177,-32.389,-32.585,-32.766,-32.925,-33.054,-33.152,-33.228,
--33.303,-33.402,-33.544,-33.733,-33.960,-34.202,-34.433,-34.635,-34.799,-34.930,-35.041,-35.151,-35.279,-35.445,-35.663,-35.944,
--36.286,-36.682,-37.112,-37.556,-37.993,-38.409,-38.799,-39.163,-39.504,-39.825,-40.125,-40.408,-40.677,-40.942,-41.220,-41.522,
--41.855,-42.213,-42.587,-42.961,-43.328,-43.688,-44.049,-44.421,-44.810,-45.211,-45.613,-46.005,-46.379,-46.735,-47.083,-47.430,
--47.777,-48.115,-48.426,-48.691,-48.897,-49.041,-49.130,-49.175,-49.186,-49.166,-49.117,-49.043,-48.952,-48.856,-48.768,-48.696,
--48.637,-48.577,-48.503,-48.407,-48.295,-48.184,-48.093,-48.034,-48.006,-47.991,-47.970,-47.929,-47.870,-47.811,-47.776,-47.780,
--47.814,-47.851,-47.849,-47.774,-47.611,-47.374,-47.097,-46.819,-46.566,-46.345,-46.147,-45.964,-45.798,-45.665,-45.587,-45.576,
--45.612,-45.643,-45.602,-45.431,-45.119,-44.709,-44.291,-43.967,-43.809,-43.823,-43.941,-44.045,-44.006,-43.739,-43.224,-42.509,
--41.684,-40.842,-40.046,-39.313,-38.629,-37.969,-37.318,-36.687,-36.101,-35.586,-35.149,-34.771,-34.416,-34.047,-33.643,-33.204,
--32.752,-32.310,-31.892,-31.497,-31.106,-30.702,-30.273,-29.825,-29.375,-28.943,-28.544,-28.184,-27.862,-27.578,-27.338,-27.148,
--27.010,-26.913,-26.823,-26.692,-26.465,-26.103,-25.590,-24.942,-24.197,-23.404,-22.600,-21.808,-21.030,-20.258,-19.480,-18.697,
--17.913,-17.138,-16.375,-15.612,-14.825,-13.985,-13.069,-12.071,-11.016,-9.946,-8.921,-7.989,-7.179,-6.490,-5.887,-5.317,
--4.723,-4.055,-3.284,-2.402,-1.421,-.369,.712,1.770,2.748,3.585,4.233,4.668,4.905,4.998,5.031,5.099,
-5.275,5.599,6.067,6.642,7.277,7.932,8.590,9.251,9.926,10.613,11.297,11.952,12.553,13.093,13.591,14.089,
-14.631,15.250,15.954,16.724,17.526,18.328,19.107,19.858,20.583,21.281,21.947,22.570,23.143,23.672,24.182,24.705,
-25.271,25.894,26.566,27.261,27.951,28.618,29.262,29.901,30.561,31.260,32.005,32.785,33.577,34.353,35.085,35.748,
-36.324,36.800,37.178,37.479,37.750,38.054,38.457,39.010,39.729,40.584,41.513,42.436,43.277,43.990,44.561,45.006,
-45.357,45.647,45.901,46.137,46.365,46.595,46.838,47.102,47.392,47.704,48.030,48.361,48.694,49.027,49.367,49.718,
-50.078,50.444,50.809,51.170,51.534,51.913,52.320,52.765,53.246,53.749,54.258,54.759,55.244,55.718,56.186,56.655,
-57.125,57.589,58.042,58.482,58.919,59.365,59.834,60.327,60.832,61.323,61.770,62.153,62.465,62.718,62.935,63.135,
-63.331,63.517,63.678,63.797,63.859,63.866,63.827,63.760,63.684,63.611,63.545,63.488,63.435,63.384,63.329,63.263,
-63.181,63.076,62.948,62.802,62.648,62.499,62.362,62.239,62.123,62.000,61.860,61.699,61.525,61.349,61.187,61.052,
-60.947,60.871,60.822,60.792,60.777,60.770,60.757,60.726,60.664,60.568,60.453,60.346,60.282,60.290,60.377,60.522,
-60.681,60.802,60.846,60.797,60.666,60.483,60.279,60.071,59.858,59.630,59.382,59.126,58.898,58.741,58.683,58.722,
-58.811,58.874,58.829,58.622,58.248,57.757,57.232,56.757,56.389,56.138,55.971,55.839,55.703,55.560,55.438,55.387,
-55.446,55.618,55.857,56.083,56.206,56.167,55.962,55.644,55.312,55.071,54.998,55.117,55.394,55.752,56.101,56.365,
-56.501,56.499,56.379,56.168,55.893,55.574,55.229,54.876,54.540,54.245,54.004,53.813,53.645,53.458,53.212,52.880,
-52.465,51.991,51.493,50.999,50.518,50.039,49.541,49.014,48.469,47.943,47.485,47.141,46.927,47.202,47.053,46.961,
-46.876,46.753,46.577,46.358,46.124,45.899,45.691,45.490,45.278,45.048,44.811,44.598,44.438,44.348,44.315,44.302,
-44.267,44.190,44.084,43.999,43.992,44.099,44.311,44.566,44.764,44.810,44.642,44.262,43.726,43.125,42.552,42.064,
-41.676,41.360,41.065,40.738,40.342,39.863,39.308,38.696,38.051,37.397,36.757,36.145,35.571,35.034,34.526,34.034,
-33.543,33.046,32.547,32.057,31.591,31.163,30.777,30.425,30.092,29.761,29.415,29.045,28.648,28.225,27.781,27.319,
-26.837,26.330,25.787,25.200,24.563,23.884,23.185,22.496,21.854,21.284,20.793,20.367,19.978,19.598,19.219,18.860,
-18.565,18.389,18.369,18.513,18.787,19.126,19.457,19.723,19.898,19.992,20.031,20.045,20.046,20.027,19.968,19.851,
-19.673,19.451,19.214,18.989,18.792,18.621,18.460,18.290,18.098,17.885,17.656,17.421,17.182,16.932,16.662,16.366,
-16.050,15.729,15.428,15.167,14.961,14.808,14.702,14.632,14.596,14.600,14.655,14.774,14.966,15.226,15.540,15.886,
-16.235,16.556,16.820,17.003,17.086,17.060,16.932,16.723,16.463,16.186,15.919,15.677,15.461,15.262,15.064,14.859,
-14.644,14.428,14.225,14.048,13.910,13.814,13.759,13.735,13.727,13.713,13.674,13.595,13.472,13.315,13.146,12.992,
-12.871,12.785,12.714,12.624,12.477,12.253,11.955,11.608,11.253,10.926,10.645,10.407,10.195,9.987,9.774,9.559,
-9.359,9.186,9.044,8.917,8.784,8.621,8.422,8.198,7.975,7.776,7.617,7.493,7.387,7.275,7.141,6.978,
-6.792,6.589,6.371,6.136,5.878,5.595,5.296,4.996,4.712,4.450,4.205,3.956,3.685,3.378,3.040,2.686,
-2.337,2.010,1.706,1.418,1.136,.855,.579,.319,.080,-.147,-.381,-.644,-.951,-1.293,-1.641,-1.958,
--2.216,-2.409,-2.555,-2.687,-2.828,-2.981,-3.125,-3.236,-3.306,-3.366,-3.487,-3.755,-4.239,-4.955,-5.853,-6.827,
--7.756,-8.544,-9.155,-9.617,-10.004,-10.396,-10.848,-11.367,-11.924,-12.468,-12.959,-13.382,-13.751,-14.092,-14.434,-14.790,
--15.156,-15.521,-15.874,-16.214,-16.550,-16.899,-17.271,-17.672,-18.096,-18.532,-18.964,-19.379,-19.764,-20.114,-20.428,-20.714,
--20.987,-21.268,-21.574,-21.914,-22.280,-22.653,-23.006,-23.322,-23.598,-23.855,-24.123,-24.432,-24.798,-25.217,-25.665,-26.111,
--26.527,-26.899,-27.222,-27.499,-27.737,-27.940,-28.114,-28.271,-28.425,-28.594,-28.787,-28.999,-29.211,-29.401,-29.553,-29.678,
--29.805,-29.974,-30.213,-30.522,-30.864,-31.182,-31.424,-31.570,-31.638,-31.686,-31.776,-31.950,-32.205,-32.501,-32.774,-32.972,
--33.075,-33.105,-33.111,-33.146,-33.247,-33.417,-33.636,-33.873,-34.097,-34.293,-34.455,-34.586,-34.686,-34.757,-34.799,-34.820,
--34.831,-34.845,-34.867,-34.892,-34.907,-34.901,-34.874,-34.841,-34.829,-34.865,-34.959,-35.100,-35.259,-35.403,-35.515,-35.601,
--35.692,-35.826,-36.030,-36.304,-36.617,-36.919,-37.156,-37.287,-37.300,-37.203,-37.021,-36.777,-36.494,-36.185,-35.860,-35.530,
--35.213,-34.928,-34.692,-34.513,-34.392,-34.320,-34.285,-34.278,-34.295,-34.338,-34.413,-34.525,-34.677,-34.861,-35.069,-35.282,
--35.486,-35.668,-35.822,-35.954,-36.074,-36.195,-36.327,-36.471,-36.617,-36.747,-36.838,-36.875,-36.850,-36.773,-36.662,-36.543,
--36.436,-36.350,-36.280,-36.206,-36.097,-35.924,-35.662,-35.302,-34.850,-34.333,-33.788,-33.262,-32.799,-32.434,-32.188,-32.060,
--32.034,-32.079,-32.157,-32.228,-32.261,-32.238,-32.154,-32.016,-31.843,-31.653,-31.464,-31.286,-31.120,-30.958,-30.786,-30.593,
--30.367,-30.105,-29.808,-29.487,-29.156,-28.830,-28.526,-28.253,-28.011,-27.791,-27.572,-27.329,-27.037,-26.678,-26.239,-25.721,
--25.130,-24.476,-23.774,-23.040,-22.298,-21.576,-20.910,-20.331,-19.859,-19.496,-19.221,-19.005,-18.816,-18.640,-18.484,-18.369,
--18.321,-18.349,-18.437,-18.537,-18.589,-18.538,-18.350,-18.029,-17.605,-17.128,-16.642,-16.176,-15.741,-15.332,-14.931,-14.520,
--14.079,-13.586,-13.017,-12.356,-11.598,-10.764,-9.897,-9.057,-8.300,-7.666,-7.161,-6.757,-6.408,-6.066,-5.698,-5.292,
--4.855,-4.401,-3.939,-3.469,-2.989,-2.496,-1.996,-1.506,-1.047,-.633,-.267,.061,.367,.667,.969,1.272,
-1.568,1.856,2.140,2.431,2.747,3.098,3.487,3.910,4.354,4.805,5.254,5.694,6.122,6.534,6.924,7.285,
-7.610,7.892,8.127,8.316,8.462,8.578,8.681,8.793,8.939,9.138,9.397,9.709,10.052,10.398,10.722,11.006,
-11.249,11.460,11.656,11.855,12.069,12.304,12.557,12.820,13.079,13.316,13.513,13.655,13.733,13.749,13.718,13.659,
-13.587,13.510,13.422,13.309,13.160,12.975,12.771,12.580,12.439,12.372,12.384,12.459,12.565,12.672,12.762,12.836,
-12.910,13.005,13.134,13.297,13.476,13.650,13.802,13.925,14.033,14.145,14.283,14.462,14.680,14.929,15.192,15.456,
-15.716,15.971,16.227,16.484,16.735,16.964,17.154,17.286,17.353,17.356,17.309,17.229,17.130,17.021,16.905,16.780,
-16.648,16.518,16.404,16.324,16.292,16.311,16.370,16.445,16.506,16.532,16.512,16.455,16.383,16.326,16.306,16.335,
-16.410,16.517,16.638,16.758,16.869,16.966,17.046,17.101,17.122,17.102,17.044,16.968,16.910,16.909,16.989,17.145,
-17.334,17.483,17.515,17.372,17.046,16.583,16.071,15.607,15.258,15.037,14.892,14.729,14.442,13.959,13.263,12.397,
-11.449,10.519,9.688,9.001,8.463,8.057,7.754,7.533,7.376,7.268,7.186,7.098,6.966,6.771,6.520,6.256,
-6.049,5.970,6.063,6.315,6.655,6.962,7.100,6.960,6.489,5.707,4.705,3.613,2.574,1.703,1.070,.689,
-.522,.503,.550,.595,.599,.552,.476,.404,.365,.367,.392,.407,.377,.288,.152,.009,
--.098,-.138,-.109,-.036,.048,.121,.188,.279,.427,.637,.870,1.052,1.104,.985,.734,.464,
-.335,.486,.981,1.778,2.740,3.690,4.477,5.031,5.371,5.581,5.756,5.954,6.179,6.392,6.545,6.623,
-6.652,6.692,6.801,7.005,7.286,7.593,7.873,8.093,8.260,8.404,8.560,8.743,8.941,9.127,9.275,9.383,
-9.469,9.564,9.690,9.848,10.015,10.166,10.287,10.391,10.507,10.668,10.883,11.134,11.378,11.574,11.703,11.780,
-11.846,11.944,12.096,12.291,12.490,12.653,12.761,12.827,12.887,12.982,13.132,13.324,13.527,13.704,13.840,13.949,
-14.065,14.222,14.433,14.681,14.926,15.126,15.257,15.323,15.349,15.368,15.398,15.443,15.486,15.507,15.494,15.446,
-15.371,15.283,15.194,15.115,15.056,15.031,15.053,15.127,15.240,15.367,15.476,15.541,15.560,15.552,15.543,15.547,
-15.546,15.494,15.330,15.012,14.543,13.976,13.396,12.881,12.470,12.144,11.844,11.504,11.095,10.643,10.226,9.941,
-9.861,10.011,10.357,10.828,11.346,11.849,12.302,12.681,12.965,13.123,13.122,12.936,12.568,12.048,11.424,10.743,
-10.034,9.305,8.563,7.828,7.149,6.593,6.228,6.082,6.129,6.292,6.466,6.565,6.547,6.429,6.270,6.136,
-6.066,6.065,6.103,6.144,6.169,6.191,6.246,6.368,6.573,6.835,7.096,7.278,7.307,7.142,6.784,6.290,
-5.758,5.318,5.097,5.191,5.624,6.325,7.134,7.833,8.210,8.127,7.574,6.677,5.667,4.793,4.244,4.086,
-4.246,4.554,4.814,4.879,4.697,4.308,3.816,3.330,2.923,2.617,2.386,2.194,2.010,1.830,1.662,1.513,
-1.378,1.235,1.059,.834,.562,.266,-.031,-.317,-.604,-.921,-1.298,-1.749,-2.251,-2.756,-3.202,-3.545,
--3.775,-3.926,-4.063,-4.262,-4.580,-5.038,-5.621,-6.286,-6.982,-7.672,-8.338,-8.980,-9.612,-10.241,-10.865,-11.466,
--12.019,-12.499,-12.891,-13.202,-13.455,-13.686,-13.937,-14.239,-14.611,-15.047,-15.525,-16.011,-16.470,-16.877,-17.226,-17.526,
--17.800,-18.069,-18.348,-18.637,-18.923,-19.190,-19.425,-19.625,-19.801,-19.968,-20.137,-20.314,-20.497,-20.681,-20.873,-21.097,
--21.387,-21.782,-22.306,-22.953,-23.685,-24.439,-25.152,-25.778,-26.301,-26.744,-27.144,-27.541,-27.953,-28.378,-28.791,-29.164,
--29.483,-29.752,-29.990,-30.225,-30.478,-30.755,-31.048,-31.341,-31.616,-31.862,-32.074,-32.249,-32.387,-32.490,-32.565,-32.630,
--32.710,-32.833,-33.017,-33.265,-33.554,-33.850,-34.111,-34.310,-34.438,-34.509,-34.550,-34.593,-34.662,-34.772,-34.931,-35.140,
--35.404,-35.722,-36.094,-36.507,-36.946,-37.386,-37.807,-38.197,-38.552,-38.877,-39.183,-39.479,-39.772,-40.067,-40.368,-40.684,
--41.019,-41.376,-41.755,-42.147,-42.544,-42.938,-43.325,-43.706,-44.085,-44.463,-44.840,-45.213,-45.580,-45.940,-46.296,-46.652,
--47.006,-47.350,-47.670,-47.949,-48.178,-48.356,-48.493,-48.600,-48.688,-48.757,-48.803,-48.816,-48.793,-48.743,-48.685,-48.638,
--48.615,-48.614,-48.624,-48.623,-48.600,-48.553,-48.494,-48.440,-48.404,-48.385,-48.369,-48.338,-48.281,-48.202,-48.120,-48.059,
--48.035,-48.044,-48.060,-48.047,-47.972,-47.823,-47.611,-47.364,-47.117,-46.893,-46.700,-46.534,-46.388,-46.265,-46.176,-46.136,
--46.142,-46.167,-46.153,-46.039,-45.780,-45.379,-44.896,-44.430,-44.085,-43.925,-43.945,-44.065,-44.162,-44.111,-43.837,-43.333,
--42.661,-41.913,-41.173,-40.486,-39.851,-39.235,-38.604,-37.948,-37.290,-36.672,-36.131,-35.680,-35.297,-34.938,-34.558,-34.136,
--33.678,-33.214,-32.781,-32.398,-32.059,-31.739,-31.405,-31.032,-30.615,-30.165,-29.707,-29.261,-28.847,-28.477,-28.166,-27.929,
--27.776,-27.706,-27.689,-27.672,-27.582,-27.346,-26.918,-26.293,-25.511,-24.644,-23.766,-22.936,-22.175,-21.468,-20.778,-20.067,
--19.311,-18.510,-17.686,-16.860,-16.047,-15.239,-14.407,-13.520,-12.556,-11.519,-10.450,-9.411,-8.472,-7.683,-7.061,-6.573,
--6.155,-5.721,-5.193,-4.514,-3.660,-2.641,-1.492,-.265,.973,2.149,3.188,4.025,4.619,4.969,5.119,5.154,
-5.176,5.276,5.507,5.879,6.360,6.902,7.470,8.051,8.660,9.320,10.040,10.805,11.574,12.300,12.949,13.521,
-14.048,14.576,15.151,15.793,16.496,17.233,17.979,18.719,19.455,20.194,20.939,21.676,22.380,23.025,23.605,24.135,
-24.655,25.208,25.827,26.513,27.242,27.974,28.673,29.324,29.938,30.547,31.183,31.869,32.602,33.359,34.102,34.789,
-35.391,35.893,36.303,36.649,36.978,37.345,37.807,38.401,39.137,39.991,40.907,41.811,42.635,43.335,43.895,44.333,
-44.685,44.989,45.273,45.553,45.834,46.114,46.398,46.689,46.997,47.325,47.673,48.036,48.408,48.785,49.164,49.545,
-49.927,50.307,50.679,51.044,51.409,51.785,52.188,52.628,53.106,53.610,54.123,54.627,55.115,55.585,56.047,56.509,
-56.972,57.434,57.887,58.328,58.765,59.211,59.679,60.176,60.688,61.189,61.643,62.024,62.325,62.561,62.762,62.960,
-63.170,63.384,63.575,63.708,63.761,63.732,63.644,63.532,63.433,63.366,63.334,63.322,63.308,63.275,63.218,63.139,
-63.044,62.937,62.816,62.677,62.519,62.347,62.175,62.017,61.882,61.769,61.668,61.561,61.439,61.300,61.157,61.032,
-60.941,60.893,60.883,60.891,60.896,60.879,60.833,60.758,60.669,60.580,60.512,60.481,60.499,60.572,60.694,60.845,
-60.993,61.096,61.118,61.035,60.842,60.561,60.226,59.875,59.540,59.240,58.981,58.769,58.608,58.510,58.483,58.524,
-58.608,58.687,58.700,58.590,58.329,57.929,57.445,56.958,56.549,56.270,56.129,56.084,56.067,56.010,55.876,55.668,
-55.435,55.245,55.157,55.196,55.339,55.529,55.691,55.772,55.759,55.686,55.622,55.638,55.779,56.038,56.364,56.671,
-56.875,56.920,56.793,56.525,56.171,55.791,55.429,55.107,54.828,54.581,54.355,54.136,53.909,53.654,53.350,52.978,
-52.535,52.039,51.523,51.028,50.585,50.198,49.846,49.492,49.103,48.672,48.221,47.797,47.448,47.202,47.615,47.420,
-47.259,47.094,46.892,46.642,46.362,46.086,45.845,45.650,45.484,45.313,45.108,44.862,44.593,44.339,44.135,43.994,
-43.903,43.836,43.764,43.684,43.615,43.592,43.639,43.751,43.886,43.972,43.939,43.742,43.380,42.897,42.362,41.844,
-41.385,40.994,40.651,40.321,39.967,39.568,39.117,38.619,38.090,37.546,37.008,36.493,36.013,35.571,35.157,34.750,
-34.327,33.867,33.369,32.846,32.327,31.841,31.409,31.035,30.704,30.392,30.076,29.739,29.378,28.996,28.602,28.197,
-27.777,27.327,26.830,26.271,25.639,24.939,24.189,23.419,22.671,21.985,21.390,20.898,20.497,20.159,19.855,19.567,
-19.299,19.077,18.937,18.907,18.990,19.162,19.376,19.580,19.737,19.834,19.886,19.918,19.950,19.988,20.018,20.017,
-19.967,19.864,19.721,19.563,19.412,19.276,19.148,19.007,18.835,18.621,18.366,18.082,17.783,17.476,17.160,16.831,
-16.484,16.124,15.766,15.431,15.140,14.909,14.741,14.633,14.579,14.574,14.619,14.719,14.874,15.083,15.333,15.603,
-15.869,16.107,16.298,16.429,16.497,16.504,16.458,16.370,16.251,16.109,15.951,15.778,15.589,15.380,15.151,14.907,
-14.657,14.413,14.186,13.986,13.820,13.691,13.599,13.544,13.521,13.518,13.516,13.491,13.422,13.296,13.116,12.901,
-12.680,12.480,12.314,12.175,12.041,11.886,11.688,11.448,11.181,10.913,10.665,10.444,10.245,10.052,9.854,9.649,
-9.448,9.268,9.117,8.990,8.865,8.718,8.537,8.323,8.100,7.897,7.733,7.610,7.505,7.388,7.231,7.027,
-6.790,6.546,6.319,6.118,5.930,5.732,5.502,5.230,4.925,4.606,4.292,3.990,3.692,3.387,3.061,2.715,
-2.360,2.010,1.676,1.358,1.048,.740,.436,.149,-.108,-.325,-.516,-.706,-.929,-1.204,-1.526,-1.863,
--2.171,-2.416,-2.596,-2.737,-2.882,-3.065,-3.286,-3.513,-3.697,-3.804,-3.845,-3.888,-4.033,-4.379,-4.972,-5.788,
--6.735,-7.686,-8.530,-9.212,-9.743,-10.188,-10.624,-11.107,-11.647,-12.209,-12.742,-13.203,-13.582,-13.901,-14.202,-14.524,
--14.887,-15.287,-15.706,-16.123,-16.527,-16.922,-17.322,-17.738,-18.178,-18.634,-19.092,-19.535,-19.946,-20.317,-20.646,-20.935,
--21.196,-21.446,-21.703,-21.985,-22.298,-22.637,-22.984,-23.315,-23.613,-23.872,-24.107,-24.347,-24.620,-24.947,-25.330,-25.755,
--26.197,-26.629,-27.033,-27.396,-27.711,-27.975,-28.185,-28.348,-28.478,-28.600,-28.739,-28.912,-29.119,-29.337,-29.539,-29.704,
--29.831,-29.950,-30.101,-30.320,-30.616,-30.960,-31.300,-31.580,-31.770,-31.880,-31.953,-32.045,-32.199,-32.421,-32.682,-32.935,
--33.139,-33.279,-33.371,-33.451,-33.556,-33.706,-33.895,-34.105,-34.311,-34.496,-34.655,-34.792,-34.910,-35.006,-35.075,-35.114,
--35.126,-35.122,-35.116,-35.114,-35.110,-35.094,-35.057,-35.002,-34.950,-34.932,-34.977,-35.092,-35.263,-35.454,-35.626,-35.755,
--35.846,-35.928,-36.042,-36.221,-36.475,-36.786,-37.114,-37.410,-37.636,-37.768,-37.798,-37.734,-37.584,-37.363,-37.082,-36.759,
--36.415,-36.073,-35.762,-35.504,-35.314,-35.197,-35.145,-35.144,-35.179,-35.235,-35.309,-35.406,-35.540,-35.722,-35.960,-36.242,
--36.543,-36.824,-37.049,-37.196,-37.266,-37.283,-37.282,-37.300,-37.353,-37.437,-37.525,-37.583,-37.581,-37.507,-37.368,-37.188,
--36.999,-36.825,-36.683,-36.569,-36.465,-36.343,-36.170,-35.915,-35.560,-35.105,-34.574,-34.010,-33.471,-33.012,-32.677,-32.484,
--32.422,-32.459,-32.551,-32.653,-32.729,-32.761,-32.737,-32.661,-32.537,-32.376,-32.189,-31.992,-31.797,-31.616,-31.449,-31.288,
--31.112,-30.899,-30.630,-30.299,-29.914,-29.497,-29.076,-28.674,-28.303,-27.956,-27.615,-27.254,-26.849,-26.387,-25.870,-25.306,
--24.711,-24.093,-23.455,-22.794,-22.114,-21.428,-20.765,-20.166,-19.664,-19.276,-18.984,-18.748,-18.514,-18.245,-17.941,-17.640,
--17.410,-17.314,-17.379,-17.572,-17.804,-17.962,-17.943,-17.697,-17.244,-16.658,-16.042,-15.485,-15.034,-14.685,-14.397,-14.113,
--13.788,-13.392,-12.916,-12.359,-11.724,-11.016,-10.250,-9.455,-8.677,-7.967,-7.361,-6.870,-6.470,-6.111,-5.740,-5.314,
--4.818,-4.262,-3.672,-3.074,-2.486,-1.919,-1.377,-.869,-.409,-.010,.322,.598,.841,1.088,1.368,1.699,
-2.081,2.500,2.936,3.372,3.801,4.224,4.643,5.062,5.479,5.890,6.288,6.668,7.025,7.357,7.661,7.935,
-8.176,8.387,8.571,8.732,8.876,9.008,9.134,9.263,9.408,9.580,9.792,10.046,10.337,10.647,10.957,11.249,
-11.512,11.746,11.960,12.166,12.376,12.599,12.838,13.090,13.344,13.586,13.793,13.945,14.025,14.028,13.967,13.866,
-13.750,13.642,13.545,13.448,13.330,13.177,12.987,12.783,12.598,12.469,12.415,12.438,12.515,12.617,12.718,12.806,
-12.887,12.977,13.090,13.230,13.391,13.556,13.708,13.842,13.961,14.080,14.214,14.374,14.562,14.771,14.989,15.208,
-15.422,15.636,15.853,16.077,16.306,16.532,16.739,16.912,17.035,17.099,17.103,17.051,16.952,16.817,16.660,16.495,
-16.340,16.213,16.130,16.104,16.138,16.221,16.332,16.440,16.519,16.547,16.524,16.467,16.407,16.379,16.413,16.523,
-16.705,16.937,17.190,17.432,17.639,17.789,17.870,17.873,17.797,17.648,17.448,17.235,17.060,16.976,17.017,17.182,
-17.428,17.676,17.833,17.822,17.613,17.230,16.752,16.273,15.873,15.579,15.358,15.124,14.772,14.222,13.447,12.489,
-11.439,10.414,9.518,8.814,8.319,8.012,7.846,7.775,7.759,7.769,7.777,7.757,7.679,7.521,7.274,6.961,
-6.632,6.356,6.198,6.202,6.364,6.633,6.912,7.085,7.045,6.723,6.105,5.240,4.226,3.193,2.271,1.560,
-1.106,.900,.878,.946,1.013,1.014,.934,.800,.667,.586,.578,.622,.663,.644,.533,.341,
-.125,-.043,-.108,-.059,.069,.215,.326,.390,.440,.531,.702,.941,1.180,1.318,1.280,1.058,
-.734,.454,.371,.578,1.068,1.738,2.440,3.045,3.498,3.830,4.123,4.459,4.866,5.307,5.700,5.972,
-6.100,6.132,6.163,6.285,6.548,6.932,7.365,7.762,8.069,8.282,8.440,8.598,8.789,9.011,9.233,9.418,
-9.550,9.643,9.729,9.839,9.978,10.127,10.254,10.341,10.398,10.462,10.576,10.765,11.016,11.286,11.520,11.686,
-11.787,11.860,11.957,12.110,12.317,12.544,12.746,12.894,12.993,13.074,13.180,13.336,13.537,13.748,13.930,14.063,
-14.155,14.241,14.359,14.533,14.755,14.990,15.200,15.358,15.460,15.523,15.571,15.615,15.649,15.656,15.619,15.537,
-15.425,15.306,15.206,15.137,15.099,15.088,15.099,15.135,15.203,15.302,15.423,15.546,15.651,15.728,15.776,15.800,
-15.796,15.741,15.596,15.320,14.899,14.356,13.759,13.190,12.714,12.352,12.067,11.793,11.469,11.082,10.678,10.348,
-10.191,10.266,10.569,11.036,11.572,12.090,12.536,12.894,13.165,13.344,13.404,13.299,12.985,12.442,11.692,10.791,
-9.813,8.831,7.903,7.076,6.390,5.890,5.613,5.575,5.753,6.077,6.443,6.746,6.916,6.933,6.832,6.675,
-6.518,6.384,6.260,6.111,5.907,5.649,5.370,5.123,4.961,4.916,4.988,5.150,5.362,5.579,5.761,5.872,
-5.887,5.802,5.638,5.452,5.321,5.319,5.479,5.772,6.098,6.320,6.314,6.020,5.479,4.817,4.199,3.765,
-3.578,3.599,3.716,3.795,3.739,3.524,3.200,2.859,2.589,2.436,2.388,2.393,2.385,2.312,2.159,1.939,
-1.679,1.409,1.144,.889,.644,.410,.189,-.022,-.237,-.482,-.790,-1.185,-1.666,-2.204,-2.746,-3.232,
--3.615,-3.883,-4.059,-4.193,-4.342,-4.553,-4.849,-5.230,-5.680,-6.187,-6.747,-7.367,-8.056,-8.814,-9.619,-10.428,
--11.189,-11.855,-12.398,-12.825,-13.167,-13.469,-13.776,-14.112,-14.481,-14.865,-15.243,-15.595,-15.917,-16.213,-16.501,-16.794,
--17.105,-17.437,-17.787,-18.149,-18.517,-18.882,-19.236,-19.569,-19.876,-20.153,-20.401,-20.629,-20.845,-21.060,-21.285,-21.529,
--21.806,-22.133,-22.524,-22.988,-23.517,-24.084,-24.650,-25.171,-25.618,-25.989,-26.308,-26.618,-26.960,-27.357,-27.803,-28.265,
--28.701,-29.076,-29.380,-29.625,-29.843,-30.066,-30.313,-30.586,-30.871,-31.146,-31.392,-31.597,-31.759,-31.883,-31.981,-32.070,
--32.170,-32.306,-32.494,-32.739,-33.028,-33.329,-33.602,-33.813,-33.946,-34.009,-34.034,-34.060,-34.120,-34.232,-34.397,-34.605,
--34.845,-35.113,-35.409,-35.737,-36.092,-36.463,-36.830,-37.175,-37.492,-37.784,-38.068,-38.362,-38.679,-39.023,-39.388,-39.764,
--40.143,-40.524,-40.907,-41.297,-41.692,-42.090,-42.484,-42.868,-43.237,-43.591,-43.933,-44.266,-44.596,-44.928,-45.269,-45.623,
--45.988,-46.356,-46.711,-47.034,-47.310,-47.531,-47.705,-47.846,-47.973,-48.097,-48.215,-48.317,-48.391,-48.428,-48.435,-48.429,
--48.429,-48.449,-48.490,-48.538,-48.578,-48.596,-48.593,-48.578,-48.567,-48.571,-48.586,-48.599,-48.593,-48.554,-48.487,-48.407,
--48.336,-48.292,-48.273,-48.263,-48.232,-48.154,-48.019,-47.834,-47.621,-47.408,-47.215,-47.049,-46.908,-46.786,-46.685,-46.611,
--46.572,-46.561,-46.550,-46.491,-46.333,-46.042,-45.626,-45.139,-44.671,-44.309,-44.108,-44.059,-44.094,-44.111,-44.008,-43.730,
--43.281,-42.718,-42.115,-41.534,-40.993,-40.471,-39.922,-39.314,-38.646,-37.954,-37.296,-36.721,-36.247,-35.852,-35.489,-35.107,
--34.681,-34.217,-33.746,-33.308,-32.925,-32.596,-32.296,-31.990,-31.649,-31.262,-30.834,-30.380,-29.917,-29.464,-29.040,-28.670,
--28.384,-28.204,-28.135,-28.148,-28.176,-28.131,-27.922,-27.493,-26.835,-25.994,-25.057,-24.116,-23.245,-22.472,-21.782,-21.129,
--20.457,-19.728,-18.929,-18.078,-17.203,-16.333,-15.480,-14.630,-13.760,-12.844,-11.878,-10.884,-9.914,-9.033,-8.296,-7.731,
--7.325,-7.021,-6.737,-6.385,-5.889,-5.196,-4.287,-3.171,-1.884,-.491,.923,2.252,3.392,4.258,4.816,5.092,
-5.173,5.181,5.235,5.417,5.747,6.197,6.707,7.229,7.744,8.275,8.861,9.533,10.292,11.099,11.898,12.637,
-13.294,13.884,14.448,15.030,15.654,16.317,17.000,17.681,18.355,19.037,19.750,20.507,21.297,22.083,22.820,23.476,
-24.049,24.571,25.092,25.663,26.306,27.014,27.751,28.476,29.160,29.798,30.407,31.015,31.643,32.296,32.959,33.608,
-34.218,34.775,35.282,35.761,36.246,36.774,37.376,38.067,38.842,39.671,40.506,41.292,41.984,42.559,43.019,43.395,
-43.727,44.053,44.396,44.761,45.138,45.510,45.869,46.214,46.550,46.890,47.241,47.606,47.985,48.376,48.780,49.198,
-49.629,50.066,50.499,50.920,51.323,51.713,52.104,52.511,52.947,53.412,53.898,54.388,54.870,55.338,55.797,56.256,
-56.723,57.201,57.683,58.162,58.636,59.108,59.586,60.076,60.574,61.061,61.510,61.894,62.197,62.428,62.613,62.785,
-62.968,63.167,63.358,63.506,63.575,63.553,63.453,63.315,63.186,63.104,63.083,63.108,63.147,63.166,63.140,63.068,
-62.959,62.833,62.702,62.569,62.427,62.271,62.100,61.924,61.759,61.619,61.508,61.420,61.340,61.255,61.163,61.073,
-61.004,60.970,60.973,61.000,61.024,61.016,60.959,60.855,60.728,60.613,60.542,60.538,60.603,60.724,60.874,61.024,
-61.149,61.226,61.240,61.180,61.038,60.813,60.512,60.156,59.775,59.406,59.089,58.854,58.719,58.685,58.735,58.840,
-58.960,59.053,59.074,58.987,58.769,58.418,57.956,57.431,56.911,56.469,56.163,56.016,56.005,56.065,56.108,56.054,
-55.864,55.557,55.211,54.937,54.832,54.946,55.258,55.684,56.108,56.428,56.595,56.628,56.597,56.584,56.647,56.788,
-56.953,57.061,57.041,56.863,56.551,56.169,55.796,55.485,55.254,55.078,54.908,54.697,54.409,54.035,53.581,53.060,
-52.492,51.895,51.297,50.733,50.241,49.848,49.560,49.355,49.185,48.999,48.765,48.477,48.164,47.865,47.615,47.827,
-47.627,47.448,47.264,47.043,46.770,46.456,46.136,45.847,45.610,45.416,45.235,45.031,44.778,44.483,44.172,43.884,
-43.647,43.466,43.326,43.204,43.086,42.975,42.888,42.843,42.844,42.867,42.867,42.794,42.611,42.309,41.910,41.454,
-40.988,40.547,40.145,39.782,39.444,39.114,38.775,38.416,38.029,37.615,37.181,36.747,36.337,35.969,35.649,35.362,
-35.076,34.750,34.354,33.881,33.353,32.809,32.296,31.844,31.461,31.129,30.817,30.493,30.139,29.753,29.344,28.926,
-28.505,28.077,27.629,27.143,26.603,26.000,25.334,24.618,23.876,23.140,22.445,21.823,21.294,20.862,20.515,20.232,
-19.994,19.792,19.628,19.517,19.468,19.483,19.545,19.625,19.696,19.736,19.743,19.729,19.713,19.710,19.722,19.739,
-19.745,19.728,19.690,19.641,19.595,19.560,19.532,19.493,19.417,19.285,19.085,18.824,18.518,18.185,17.841,17.495,
-17.145,16.792,16.436,16.085,15.752,15.453,15.203,15.012,14.887,14.829,14.833,14.893,15.000,15.138,15.292,15.443,
-15.576,15.681,15.751,15.791,15.807,15.811,15.809,15.807,15.799,15.777,15.729,15.640,15.505,15.326,15.112,14.881,
-14.651,14.438,14.251,14.087,13.940,13.803,13.670,13.542,13.424,13.317,13.221,13.126,13.016,12.878,12.704,12.502,
-12.289,12.089,11.918,11.781,11.668,11.554,11.419,11.248,11.045,10.825,10.604,10.397,10.204,10.017,9.827,9.632,
-9.442,9.274,9.142,9.045,8.964,8.870,8.736,8.551,8.329,8.103,7.905,7.755,7.643,7.535,7.390,7.183,
-6.912,6.607,6.311,6.060,5.867,5.713,5.561,5.371,5.121,4.813,4.468,4.110,3.756,3.410,3.062,2.704,
-2.335,1.962,1.597,1.248,.913,.586,.259,-.063,-.365,-.629,-.844,-1.023,-1.192,-1.390,-1.640,-1.937,
--2.250,-2.537,-2.764,-2.930,-3.068,-3.229,-3.448,-3.725,-4.012,-4.240,-4.352,-4.341,-4.270,-4.254,-4.417,-4.847,
--5.554,-6.467,-7.463,-8.415,-9.237,-9.908,-10.465,-10.970,-11.476,-12.003,-12.531,-13.025,-13.456,-13.818,-14.138,-14.454,
--14.800,-15.191,-15.617,-16.054,-16.481,-16.889,-17.288,-17.695,-18.126,-18.584,-19.060,-19.532,-19.979,-20.383,-20.740,-21.052,
--21.329,-21.583,-21.829,-22.083,-22.359,-22.665,-22.997,-23.344,-23.683,-23.994,-24.265,-24.500,-24.718,-24.945,-25.205,-25.512,
--25.864,-26.248,-26.647,-27.044,-27.422,-27.768,-28.072,-28.326,-28.527,-28.686,-28.823,-28.963,-29.124,-29.310,-29.507,-29.691,
--29.843,-29.962,-30.073,-30.214,-30.420,-30.704,-31.047,-31.405,-31.728,-31.982,-32.163,-32.300,-32.432,-32.591,-32.786,-33.001,
--33.205,-33.377,-33.513,-33.630,-33.755,-33.910,-34.099,-34.308,-34.514,-34.697,-34.852,-34.982,-35.099,-35.206,-35.303,-35.379,
--35.427,-35.447,-35.444,-35.427,-35.400,-35.359,-35.296,-35.210,-35.112,-35.030,-35.000,-35.047,-35.178,-35.371,-35.590,-35.793,
--35.955,-36.078,-36.183,-36.304,-36.470,-36.693,-36.967,-37.267,-37.562,-37.818,-38.011,-38.121,-38.137,-38.055,-37.882,-37.631,
--37.323,-36.984,-36.642,-36.325,-36.062,-35.877,-35.787,-35.798,-35.902,-36.074,-36.282,-36.498,-36.706,-36.912,-37.135,-37.395,
--37.696,-38.018,-38.318,-38.547,-38.672,-38.688,-38.626,-38.537,-38.469,-38.448,-38.469,-38.499,-38.494,-38.420,-38.265,-38.042,
--37.781,-37.513,-37.263,-37.042,-36.848,-36.665,-36.473,-36.248,-35.966,-35.608,-35.172,-34.677,-34.164,-33.687,-33.303,-33.049,
--32.935,-32.938,-33.015,-33.117,-33.203,-33.251,-33.257,-33.226,-33.164,-33.073,-32.951,-32.799,-32.624,-32.441,-32.264,-32.099,
--31.938,-31.757,-31.521,-31.204,-30.792,-30.298,-29.751,-29.193,-28.656,-28.157,-27.690,-27.230,-26.743,-26.204,-25.603,-24.952,
--24.278,-23.612,-22.977,-22.385,-21.830,-21.302,-20.793,-20.307,-19.859,-19.463,-19.121,-18.811,-18.494,-18.127,-17.688,-17.198,
--16.723,-16.355,-16.178,-16.222,-16.447,-16.742,-16.960,-16.975,-16.725,-16.234,-15.597,-14.941,-14.375,-13.949,-13.647,-13.408,
--13.158,-12.842,-12.441,-11.963,-11.429,-10.853,-10.240,-9.590,-8.916,-8.243,-7.610,-7.051,-6.573,-6.154,-5.743,-5.284,
--4.736,-4.093,-3.380,-2.644,-1.930,-1.268,-.669,-.132,.347,.767,1.121,1.413,1.657,1.885,2.142,2.465,
-2.874,3.362,3.900,4.448,4.968,5.439,5.858,6.239,6.601,6.962,7.329,7.700,8.062,8.395,8.680,8.903,
-9.064,9.170,9.244,9.309,9.389,9.493,9.624,9.770,9.922,10.072,10.221,10.378,10.552,10.751,10.974,11.215,
-11.466,11.718,11.970,12.222,12.480,12.748,13.032,13.330,13.633,13.927,14.183,14.371,14.461,14.439,14.311,14.106,
-13.873,13.656,13.490,13.379,13.308,13.245,13.165,13.061,12.947,12.848,12.790,12.785,12.826,12.893,12.967,13.038,
-13.114,13.208,13.334,13.494,13.677,13.863,14.031,14.174,14.294,14.405,14.523,14.656,14.804,14.958,15.110,15.256,
-15.399,15.547,15.709,15.886,16.075,16.266,16.446,16.605,16.736,16.831,16.884,16.889,16.841,16.739,16.591,16.415,
-16.240,16.098,16.020,16.022,16.101,16.237,16.391,16.522,16.595,16.596,16.535,16.445,16.371,16.359,16.441,16.625,
-16.898,17.225,17.566,17.881,18.141,18.327,18.427,18.436,18.354,18.189,17.962,17.711,17.490,17.355,17.352,17.492,
-17.742,18.029,18.253,18.322,18.184,17.843,17.363,16.838,16.363,15.985,15.694,15.420,15.064,14.542,13.816,12.917,
-11.933,10.977,10.155,9.529,9.112,8.870,8.747,8.686,8.644,8.595,8.524,8.419,8.266,8.052,7.769,7.430,
-7.062,6.712,6.431,6.264,6.232,6.329,6.514,6.721,6.866,6.864,6.649,6.186,5.488,4.616,3.670,2.772,
-2.030,1.521,1.261,1.209,1.278,1.368,1.400,1.338,1.199,1.036,.908,.850,.854,.874,.853,.755,
-.586,.398,.260,.230,.314,.471,.627,.719,.727,.691,.684,.769,.961,1.204,1.397,1.443,
-1.301,1.017,.706,.503,.500,.705,1.044,1.410,1.719,1.960,2.192,2.508,2.968,3.559,4.187,4.720,
-5.058,5.187,5.195,5.229,5.433,5.872,6.508,7.220,7.862,8.331,8.605,8.740,8.831,8.958,9.149,9.380,
-9.601,9.771,9.882,9.961,10.044,10.154,10.284,10.403,10.485,10.528,10.560,10.626,10.762,10.971,11.221,11.460,
-11.645,11.768,11.855,11.954,12.106,12.319,12.571,12.817,13.021,13.172,13.290,13.408,13.553,13.725,13.903,14.055,
-14.165,14.242,14.316,14.424,14.588,14.800,15.029,15.234,15.388,15.485,15.541,15.577,15.608,15.630,15.630,15.595,
-15.526,15.438,15.352,15.287,15.246,15.220,15.195,15.169,15.152,15.165,15.228,15.346,15.504,15.671,15.811,15.894,
-15.897,15.807,15.609,15.296,14.867,14.347,13.785,13.250,12.807,12.488,12.278,12.118,11.937,11.688,11.378,11.076,
-10.881,10.880,11.106,11.522,12.037,12.542,12.959,13.257,13.450,13.564,13.607,13.547,13.321,12.865,12.150,11.201,
-10.100,8.955,7.879,6.959,6.249,5.775,5.539,5.530,5.713,6.032,6.409,6.757,7.007,7.123,7.113,7.019,
-6.890,6.758,6.624,6.460,6.235,5.929,5.554,5.144,4.743,4.385,4.093,3.875,3.744,3.716,3.810,4.029,
-4.340,4.673,4.934,5.042,4.962,4.728,4.433,4.189,4.082,4.131,4.287,4.455,4.537,4.481,4.290,4.020,
-3.740,3.500,3.308,3.138,2.954,2.739,2.510,2.318,2.216,2.236,2.368,2.560,2.734,2.819,2.772,2.587,
-2.294,1.937,1.561,1.199,.868,.574,.315,.089,-.115,-.313,-.529,-.789,-1.115,-1.514,-1.974,-2.467,
--2.954,-3.399,-3.780,-4.091,-4.346,-4.564,-4.769,-4.978,-5.208,-5.475,-5.804,-6.226,-6.771,-7.454,-8.264,-9.155,
--10.056,-10.888,-11.591,-12.143,-12.566,-12.915,-13.250,-13.615,-14.016,-14.425,-14.796,-15.091,-15.305,-15.464,-15.619,-15.821,
--16.104,-16.469,-16.894,-17.346,-17.801,-18.247,-18.685,-19.118,-19.541,-19.937,-20.285,-20.572,-20.804,-21.005,-21.212,-21.458,
--21.762,-22.122,-22.523,-22.941,-23.356,-23.754,-24.126,-24.463,-24.761,-25.019,-25.251,-25.484,-25.756,-26.102,-26.535,-27.040,
--27.572,-28.076,-28.506,-28.842,-29.099,-29.314,-29.529,-29.771,-30.041,-30.320,-30.579,-30.794,-30.962,-31.093,-31.211,-31.337,
--31.490,-31.675,-31.894,-32.139,-32.400,-32.658,-32.891,-33.080,-33.212,-33.291,-33.340,-33.392,-33.480,-33.626,-33.831,-34.081,
--34.354,-34.631,-34.905,-35.179,-35.457,-35.742,-36.026,-36.295,-36.542,-36.769,-36.993,-37.241,-37.534,-37.885,-38.287,-38.721,
--39.162,-39.593,-40.005,-40.403,-40.791,-41.174,-41.551,-41.919,-42.273,-42.611,-42.938,-43.258,-43.579,-43.905,-44.239,-44.580,
--44.928,-45.279,-45.627,-45.959,-46.265,-46.532,-46.758,-46.950,-47.119,-47.282,-47.445,-47.607,-47.759,-47.888,-47.987,-48.060,
--48.115,-48.168,-48.224,-48.285,-48.342,-48.386,-48.415,-48.436,-48.465,-48.513,-48.586,-48.672,-48.749,-48.794,-48.789,-48.735,
--48.649,-48.555,-48.474,-48.415,-48.371,-48.322,-48.246,-48.132,-47.981,-47.806,-47.626,-47.459,-47.310,-47.180,-47.065,-46.963,
--46.879,-46.816,-46.770,-46.723,-46.643,-46.490,-46.237,-45.883,-45.462,-45.032,-44.659,-44.388,-44.224,-44.128,-44.031,-43.868,
--43.596,-43.217,-42.766,-42.292,-41.829,-41.382,-40.926,-40.422,-39.844,-39.199,-38.526,-37.879,-37.306,-36.825,-36.417,-36.042,
--35.655,-35.231,-34.774,-34.311,-33.875,-33.485,-33.141,-32.823,-32.503,-32.158,-31.775,-31.355,-30.903,-30.428,-29.942,-29.465,
--29.027,-28.669,-28.425,-28.311,-28.301,-28.333,-28.315,-28.151,-27.776,-27.169,-26.368,-25.448,-24.497,-23.589,-22.766,-22.025,
--21.336,-20.650,-19.928,-19.145,-18.301,-17.411,-16.500,-15.587,-14.682,-13.784,-12.886,-11.987,-11.097,-10.244,-9.466,-8.803,
--8.280,-7.901,-7.639,-7.443,-7.243,-6.964,-6.533,-5.889,-4.990,-3.825,-2.424,-.868,.718,2.182,3.385,4.236,
-4.726,4.930,4.983,5.038,5.208,5.543,6.017,6.563,7.112,7.627,8.121,8.640,9.231,9.917,10.676,11.461,
-12.218,12.917,13.563,14.187,14.824,15.491,16.179,16.861,17.513,18.134,18.749,19.400,20.115,20.898,21.714,22.507,
-23.226,23.847,24.385,24.886,25.406,25.984,26.632,27.330,28.046,28.749,29.423,30.073,30.711,31.351,31.996,32.637,
-33.261,33.859,34.433,34.998,35.578,36.199,36.879,37.620,38.406,39.201,39.960,40.640,41.209,41.663,42.020,42.322,
-42.618,42.949,43.335,43.771,44.237,44.703,45.150,45.570,45.969,46.359,46.750,47.145,47.541,47.936,48.332,48.735,
-49.157,49.603,50.071,50.548,51.019,51.472,51.904,52.325,52.749,53.189,53.649,54.124,54.602,55.073,55.532,55.985,
-56.442,56.912,57.400,57.904,58.417,58.932,59.445,59.950,60.443,60.913,61.348,61.730,62.049,62.304,62.507,62.677,
-62.833,62.985,63.125,63.235,63.292,63.281,63.206,63.089,62.969,62.879,62.843,62.857,62.900,62.938,62.941,62.892,
-62.794,62.665,62.526,62.393,62.270,62.150,62.025,61.889,61.747,61.609,61.485,61.382,61.296,61.219,61.144,61.073,
-61.014,60.982,60.985,61.019,61.064,61.090,61.071,60.998,60.884,60.764,60.680,60.665,60.730,60.858,61.013,61.153,
-61.247,61.281,61.261,61.203,61.117,61.002,60.846,60.630,60.348,60.014,59.667,59.361,59.151,59.070,59.117,59.259,
-59.439,59.596,59.683,59.671,59.552,59.326,58.995,58.563,58.040,57.460,56.879,56.376,56.022,55.853,55.848,55.928,
-55.982,55.914,55.691,55.364,55.055,54.912,55.045,55.471,56.102,56.778,57.323,57.619,57.646,57.480,57.249,57.076,
-57.016,57.048,57.088,57.043,56.859,56.547,56.174,55.829,55.574,55.415,55.302,55.152,54.887,54.468,53.901,53.233,
-52.522,51.820,51.160,50.559,50.030,49.589,49.253,49.028,48.901,48.833,48.774,48.676,48.515,48.299,48.058,47.827,
-47.762,47.564,47.402,47.250,47.067,46.822,46.508,46.150,45.788,45.461,45.184,44.948,44.724,44.484,44.215,43.924,
-43.635,43.371,43.145,42.952,42.778,42.610,42.443,42.288,42.158,42.062,41.993,41.927,41.829,41.670,41.431,41.116,
-40.740,40.333,39.923,39.534,39.184,38.878,38.613,38.372,38.129,37.858,37.539,37.171,36.775,36.386,36.041,35.761,
-35.538,35.336,35.105,34.801,34.405,33.934,33.430,32.942,32.508,32.138,31.813,31.497,31.152,30.754,30.299,29.801,
-29.280,28.756,28.243,27.742,27.248,26.750,26.234,25.686,25.097,24.466,23.803,23.131,22.483,21.894,21.390,20.983,
-20.671,20.438,20.267,20.141,20.053,19.996,19.962,19.940,19.912,19.866,19.790,19.690,19.576,19.466,19.376,19.314,
-19.280,19.270,19.282,19.314,19.368,19.442,19.531,19.616,19.674,19.679,19.613,19.467,19.246,18.965,18.644,18.305,
-17.963,17.626,17.297,16.975,16.656,16.343,16.043,15.771,15.546,15.384,15.297,15.282,15.324,15.396,15.471,15.521,
-15.533,15.507,15.454,15.394,15.349,15.334,15.356,15.408,15.472,15.522,15.528,15.467,15.331,15.129,14.887,14.645,
-14.440,14.298,14.223,14.197,14.186,14.154,14.072,13.929,13.733,13.502,13.257,13.014,12.780,12.554,12.335,12.126,
-11.935,11.775,11.651,11.560,11.486,11.405,11.293,11.138,10.942,10.720,10.494,10.279,10.080,9.892,9.704,9.514,
-9.332,9.180,9.079,9.039,9.047,9.067,9.054,8.970,8.803,8.570,8.312,8.071,7.872,7.709,7.552,7.363,
-7.115,6.810,6.479,6.164,5.898,5.690,5.520,5.346,5.131,4.854,4.519,4.150,3.775,3.411,3.059,2.708,
-2.344,1.962,1.569,1.178,.799,.434,.078,-.277,-.626,-.956,-1.249,-1.490,-1.685,-1.858,-2.041,-2.258,
--2.511,-2.777,-3.020,-3.215,-3.363,-3.497,-3.664,-3.899,-4.196,-4.505,-4.746,-4.853,-4.808,-4.665,-4.538,-4.568,
--4.864,-5.467,-6.331,-7.347,-8.383,-9.330,-10.137,-10.805,-11.377,-11.900,-12.402,-12.888,-13.345,-13.760,-14.137,-14.495,
--14.860,-15.248,-15.660,-16.080,-16.484,-16.862,-17.218,-17.576,-17.962,-18.396,-18.876,-19.380,-19.876,-20.333,-20.731,-21.070,
--21.363,-21.629,-21.887,-22.151,-22.432,-22.737,-23.067,-23.419,-23.780,-24.132,-24.454,-24.729,-24.957,-25.149,-25.330,-25.529,
--25.765,-26.047,-26.372,-26.725,-27.091,-27.456,-27.807,-28.134,-28.427,-28.680,-28.894,-29.076,-29.240,-29.401,-29.565,-29.731,
--29.887,-30.025,-30.147,-30.270,-30.423,-30.633,-30.912,-31.246,-31.605,-31.949,-32.248,-32.493,-32.696,-32.877,-33.055,-33.231,
--33.395,-33.532,-33.634,-33.712,-33.788,-33.890,-34.031,-34.212,-34.415,-34.619,-34.807,-34.978,-35.137,-35.295,-35.453,-35.605,
--35.737,-35.836,-35.895,-35.912,-35.890,-35.831,-35.735,-35.607,-35.460,-35.320,-35.223,-35.202,-35.274,-35.432,-35.645,-35.871,
--36.073,-36.231,-36.347,-36.439,-36.532,-36.649,-36.803,-36.998,-37.227,-37.479,-37.732,-37.959,-38.129,-38.214,-38.199,-38.082,
--37.879,-37.614,-37.315,-37.008,-36.719,-36.481,-36.328,-36.296,-36.408,-36.659,-37.013,-37.406,-37.775,-38.074,-38.296,-38.471,
--38.647,-38.859,-39.111,-39.368,-39.579,-39.700,-39.718,-39.660,-39.577,-39.520,-39.511,-39.532,-39.540,-39.483,-39.327,-39.068,
--38.734,-38.363,-37.993,-37.648,-37.335,-37.048,-36.778,-36.514,-36.243,-35.948,-35.614,-35.233,-34.815,-34.391,-34.006,-33.709,
--33.530,-33.471,-33.502,-33.578,-33.651,-33.692,-33.695,-33.672,-33.639,-33.605,-33.565,-33.508,-33.421,-33.301,-33.155,-32.992,
--32.818,-32.621,-32.375,-32.048,-31.615,-31.069,-30.427,-29.727,-29.016,-28.332,-27.699,-27.115,-26.560,-26.002,-25.413,-24.775,
--24.095,-23.399,-22.727,-22.120,-21.607,-21.194,-20.867,-20.596,-20.345,-20.087,-19.803,-19.481,-19.112,-18.683,-18.183,-17.615,
--17.010,-16.427,-15.948,-15.644,-15.549,-15.631,-15.799,-15.929,-15.905,-15.668,-15.231,-14.673,-14.099,-13.596,-13.202,-12.894,
--12.612,-12.295,-11.906,-11.447,-10.943,-10.425,-9.907,-9.384,-8.843,-8.279,-7.710,-7.165,-6.673,-6.237,-5.824,-5.375,
--4.830,-4.156,-3.364,-2.507,-1.660,-.885,-.218,.345,.828,1.260,1.657,2.023,2.355,2.658,2.954,3.276,
-3.660,4.120,4.646,5.200,5.732,6.197,6.575,6.874,7.126,7.374,7.660,8.003,8.401,8.825,9.233,9.578,
-9.827,9.969,10.021,10.019,10.009,10.030,10.103,10.224,10.373,10.521,10.647,10.744,10.822,10.900,10.999,11.136,
-11.317,11.542,11.805,12.098,12.413,12.745,13.089,13.442,13.798,14.146,14.463,14.719,14.877,14.908,14.798,14.566,
-14.255,13.925,13.634,13.418,13.284,13.213,13.175,13.147,13.125,13.119,13.143,13.203,13.287,13.371,13.434,13.469,
-13.491,13.533,13.626,13.787,14.006,14.253,14.490,14.693,14.855,14.987,15.108,15.230,15.354,15.468,15.557,15.619,
-15.661,15.704,15.768,15.867,15.996,16.141,16.284,16.412,16.517,16.603,16.669,16.713,16.724,16.688,16.599,16.464,
-16.309,16.174,16.100,16.115,16.223,16.399,16.596,16.757,16.835,16.811,16.699,16.548,16.423,16.388,16.487,16.728,
-17.085,17.505,17.926,18.291,18.566,18.736,18.805,18.787,18.698,18.556,18.378,18.190,18.028,17.931,17.935,18.054,
-18.272,18.534,18.756,18.851,18.755,18.448,17.968,17.398,16.830,16.335,15.934,15.589,15.222,14.754,14.138,13.386,
-12.567,11.776,11.105,10.605,10.274,10.067,9.921,9.782,9.621,9.433,9.228,9.008,8.766,8.481,8.137,7.733,
-7.294,6.866,6.503,6.252,6.135,6.149,6.262,6.426,6.580,6.664,6.620,6.402,5.987,5.382,4.630,3.805,
-3.004,2.325,1.838,1.571,1.500,1.558,1.658,1.722,1.704,1.602,1.453,1.307,1.203,1.150,1.125,1.088,
-1.008,.883,.745,.645,.627,.699,.825,.945,1.005,.986,.922,.880,.921,1.067,1.278,1.468,
-1.550,1.478,1.279,1.038,.858,.807,.883,1.027,1.159,1.239,1.294,1.414,1.696,2.185,2.830,3.492,
-4.008,4.272,4.295,4.213,4.236,4.546,5.220,6.184,7.250,8.192,8.845,9.163,9.223,9.172,9.155,9.252,
-9.458,9.709,9.933,10.088,10.182,10.254,10.346,10.470,10.607,10.726,10.803,10.847,10.890,10.973,11.119,11.315,
-11.525,11.709,11.844,11.944,12.043,12.183,12.383,12.632,12.896,13.138,13.333,13.484,13.610,13.732,13.860,13.986,
-14.098,14.188,14.267,14.362,14.500,14.690,14.918,15.144,15.326,15.436,15.473,15.458,15.427,15.405,15.403,15.414,
-15.425,15.425,15.411,15.389,15.362,15.326,15.275,15.203,15.120,15.049,15.021,15.060,15.169,15.323,15.477,15.578,
-15.585,15.475,15.247,14.916,14.507,14.055,13.602,13.197,12.883,12.684,12.591,12.556,12.511,12.394,12.188,11.932,
-11.716,11.641,11.776,12.124,12.612,13.125,13.547,13.806,13.893,13.844,13.708,13.503,13.205,12.754,12.096,11.212,
-10.149,9.006,7.914,6.988,6.307,5.898,5.742,5.794,5.995,6.284,6.600,6.885,7.095,7.204,7.215,7.153,
-7.053,6.942,6.826,6.690,6.506,6.259,5.953,5.613,5.268,4.936,4.610,4.270,3.902,3.517,3.165,2.914,
-2.822,2.902,3.102,3.319,3.437,3.379,3.141,2.797,2.471,2.287,2.320,2.572,2.973,3.414,3.786,4.011,
-4.055,3.924,3.650,3.277,2.858,2.446,2.101,1.875,1.803,1.890,2.103,2.375,2.626,2.785,2.805,2.679,
-2.433,2.111,1.758,1.411,1.087,.790,.514,.252,-.004,-.255,-.503,-.749,-.998,-1.259,-1.544,-1.862,
--2.220,-2.617,-3.042,-3.480,-3.910,-4.313,-4.675,-4.989,-5.256,-5.488,-5.710,-5.960,-6.283,-6.723,-7.309,-8.037,
--8.867,-9.727,-10.535,-11.222,-11.763,-12.180,-12.528,-12.874,-13.257,-13.674,-14.082,-14.420,-14.649,-14.771,-14.837,-14.928,
--15.115,-15.435,-15.877,-16.390,-16.919,-17.422,-17.892,-18.345,-18.799,-19.255,-19.691,-20.068,-20.362,-20.576,-20.749,-20.940,
--21.205,-21.565,-22.002,-22.466,-22.898,-23.253,-23.516,-23.700,-23.835,-23.954,-24.083,-24.248,-24.472,-24.782,-25.193,-25.706,
--26.290,-26.890,-27.443,-27.898,-28.239,-28.490,-28.699,-28.917,-29.170,-29.449,-29.720,-29.942,-30.096,-30.190,-30.262,-30.360,
--30.518,-30.748,-31.032,-31.337,-31.628,-31.878,-32.078,-32.227,-32.336,-32.420,-32.497,-32.591,-32.721,-32.906,-33.148,-33.436,
--33.749,-34.060,-34.353,-34.621,-34.869,-35.105,-35.333,-35.552,-35.755,-35.942,-36.126,-36.327,-36.573,-36.882,-37.256,-37.681,
--38.130,-38.578,-39.010,-39.422,-39.821,-40.212,-40.595,-40.964,-41.312,-41.639,-41.951,-42.264,-42.590,-42.936,-43.296,-43.658,
--44.007,-44.331,-44.629,-44.907,-45.173,-45.432,-45.689,-45.941,-46.190,-46.433,-46.670,-46.900,-47.116,-47.311,-47.479,-47.618,
--47.732,-47.829,-47.915,-47.992,-48.057,-48.105,-48.136,-48.161,-48.196,-48.262,-48.370,-48.516,-48.677,-48.820,-48.912,-48.931,
--48.878,-48.770,-48.639,-48.515,-48.416,-48.346,-48.290,-48.231,-48.150,-48.039,-47.903,-47.752,-47.601,-47.459,-47.332,-47.219,
--47.117,-47.025,-46.946,-46.878,-46.815,-46.739,-46.624,-46.443,-46.180,-45.839,-45.448,-45.052,-44.693,-44.399,-44.168,-43.971,
--43.768,-43.521,-43.211,-42.842,-42.435,-42.010,-41.576,-41.127,-40.645,-40.118,-39.551,-38.966,-38.396,-37.870,-37.399,-36.976,
--36.573,-36.166,-35.740,-35.298,-34.855,-34.432,-34.039,-33.672,-33.317,-32.956,-32.574,-32.164,-31.722,-31.250,-30.749,-30.228,
--29.708,-29.222,-28.814,-28.522,-28.362,-28.314,-28.320,-28.299,-28.163,-27.849,-27.333,-26.631,-25.796,-24.892,-23.980,-23.104,
--22.284,-21.517,-20.784,-20.056,-19.305,-18.506,-17.646,-16.725,-15.759,-14.772,-13.793,-12.847,-11.956,-11.130,-10.377,-9.705,
--9.121,-8.634,-8.252,-7.972,-7.780,-7.646,-7.518,-7.325,-6.982,-6.399,-5.507,-4.285,-2.774,-1.090,.596,2.097,
-3.266,4.036,4.445,4.618,4.717,4.892,5.223,5.715,6.309,6.926,7.512,8.056,8.589,9.158,9.792,10.487,
-11.212,11.927,12.609,13.264,13.919,14.602,15.322,16.059,16.775,17.436,18.035,18.599,19.177,19.814,20.528,21.301,
-22.085,22.825,23.488,24.071,24.604,25.131,25.689,26.294,26.942,27.615,28.296,28.976,29.659,30.353,31.060,31.775,
-32.483,33.167,33.818,34.438,35.043,35.653,36.289,36.962,37.666,38.378,39.064,39.687,40.221,40.658,41.015,41.329,
-41.647,42.007,42.431,42.913,43.428,43.943,44.433,44.891,45.326,45.756,46.196,46.650,47.107,47.553,47.975,48.376,
-48.768,49.172,49.601,50.061,50.542,51.029,51.509,51.977,52.439,52.904,53.383,53.876,54.377,54.874,55.356,55.820,
-56.270,56.720,57.182,57.666,58.174,58.701,59.237,59.765,60.270,60.737,61.156,61.524,61.842,62.116,62.352,62.558,
-62.732,62.873,62.972,63.025,63.030,62.994,62.928,62.850,62.778,62.726,62.699,62.694,62.698,62.698,62.678,62.629,
-62.547,62.440,62.320,62.198,62.083,61.979,61.883,61.791,61.698,61.603,61.510,61.420,61.335,61.252,61.169,61.087,
-61.012,60.955,60.928,60.935,60.970,61.015,61.044,61.038,60.994,60.927,60.869,60.855,60.906,61.018,61.165,61.304,
-61.393,61.409,61.355,61.255,61.142,61.041,60.950,60.847,60.699,60.481,60.196,59.880,59.591,59.392,59.322,59.379,
-59.527,59.705,59.856,59.951,59.984,59.970,59.913,59.791,59.558,59.163,58.584,57.859,57.092,56.418,55.959,55.765,
-55.790,55.909,55.974,55.884,55.638,55.343,55.168,55.265,55.691,56.378,57.150,57.795,58.153,58.179,57.947,57.612,
-57.328,57.183,57.164,57.183,57.129,56.934,56.604,56.215,55.866,55.624,55.486,55.381,55.201,54.853,54.303,53.585,
-52.786,52.003,51.308,50.730,50.256,49.861,49.524,49.242,49.024,48.873,48.776,48.697,48.596,48.442,48.233,47.994,
-47.762,47.569,47.340,47.171,47.040,46.898,46.696,46.408,46.038,45.624,45.214,44.848,44.543,44.290,44.065,43.846,
-43.623,43.397,43.180,42.980,42.797,42.623,42.447,42.265,42.080,41.901,41.740,41.599,41.470,41.337,41.178,40.974,
-40.717,40.408,40.060,39.694,39.340,39.024,38.765,38.569,38.418,38.275,38.099,37.853,37.524,37.131,36.717,36.333,
-36.017,35.777,35.586,35.395,35.154,34.834,34.438,34.000,33.565,33.169,32.824,32.512,32.194,31.829,31.386,30.857,
-30.255,29.612,28.963,28.342,27.774,27.267,26.814,26.393,25.973,25.520,25.007,24.425,23.789,23.134,22.505,21.946,
-21.485,21.132,20.879,20.705,20.589,20.509,20.451,20.399,20.340,20.258,20.142,19.984,19.790,19.573,19.356,19.163,
-19.017,18.933,18.918,18.972,19.087,19.247,19.432,19.618,19.779,19.893,19.940,19.910,19.799,19.611,19.358,19.059,
-18.737,18.414,18.109,17.827,17.562,17.302,17.032,16.749,16.463,16.198,15.983,15.839,15.769,15.756,15.765,15.760,
-15.716,15.629,15.512,15.395,15.309,15.274,15.296,15.363,15.450,15.521,15.538,15.471,15.305,15.046,14.727,14.400,
-14.126,13.956,13.912,13.979,14.110,14.237,14.296,14.246,14.078,13.814,13.495,13.162,12.845,12.560,12.311,12.095,
-11.915,11.771,11.663,11.581,11.505,11.410,11.272,11.080,10.842,10.579,10.320,10.086,9.884,9.704,9.529,9.348,
-9.167,9.009,8.908,8.891,8.961,9.091,9.227,9.305,9.277,9.126,8.872,8.561,8.244,7.956,7.705,7.473,
-7.232,6.959,6.655,6.336,6.032,5.762,5.524,5.299,5.053,4.760,4.413,4.028,3.633,3.255,2.907,2.583,
-2.260,1.917,1.544,1.143,.730,.318,-.084,-.478,-.867,-1.251,-1.618,-1.951,-2.232,-2.459,-2.644,-2.812,
--2.987,-3.179,-3.381,-3.573,-3.740,-3.883,-4.027,-4.205,-4.442,-4.729,-5.021,-5.249,-5.354,-5.318,-5.185,-5.056,
--5.058,-5.301,-5.836,-6.636,-7.614,-8.647,-9.626,-10.482,-11.197,-11.795,-12.315,-12.794,-13.251,-13.693,-14.118,-14.530,
--14.937,-15.347,-15.761,-16.169,-16.554,-16.903,-17.218,-17.520,-17.844,-18.221,-18.670,-19.179,-19.714,-20.228,-20.683,-21.059,
--21.363,-21.623,-21.869,-22.131,-22.422,-22.746,-23.095,-23.461,-23.833,-24.200,-24.547,-24.861,-25.131,-25.357,-25.549,-25.730,
--25.924,-26.151,-26.419,-26.722,-27.045,-27.375,-27.698,-28.010,-28.309,-28.592,-28.857,-29.095,-29.305,-29.486,-29.646,-29.794,
--29.937,-30.079,-30.223,-30.372,-30.535,-30.726,-30.958,-31.236,-31.552,-31.885,-32.209,-32.503,-32.757,-32.974,-33.163,-33.330,
--33.476,-33.592,-33.672,-33.720,-33.751,-33.791,-33.862,-33.979,-34.139,-34.328,-34.528,-34.727,-34.925,-35.125,-35.333,-35.548,
--35.760,-35.952,-36.108,-36.214,-36.262,-36.249,-36.174,-36.042,-35.873,-35.695,-35.550,-35.478,-35.505,-35.633,-35.836,-36.072,
--36.299,-36.485,-36.622,-36.717,-36.785,-36.843,-36.902,-36.972,-37.063,-37.190,-37.359,-37.567,-37.788,-37.986,-38.122,-38.169,
--38.123,-37.999,-37.822,-37.616,-37.399,-37.188,-37.013,-36.918,-36.955,-37.162,-37.538,-38.032,-38.552,-38.997,-39.296,-39.437,
--39.470,-39.476,-39.529,-39.659,-39.844,-40.028,-40.154,-40.200,-40.185,-40.156,-40.160,-40.207,-40.268,-40.286,-40.202,-39.985,
--39.641,-39.212,-38.749,-38.294,-37.871,-37.487,-37.136,-36.815,-36.522,-36.251,-35.991,-35.722,-35.429,-35.109,-34.780,-34.477,
--34.240,-34.095,-34.039,-34.046,-34.074,-34.087,-34.068,-34.021,-33.966,-33.926,-33.908,-33.906,-33.903,-33.879,-33.820,-33.717,
--33.565,-33.352,-33.064,-32.680,-32.186,-31.579,-30.875,-30.101,-29.295,-28.492,-27.722,-27.007,-26.353,-25.758,-25.207,-24.676,
--24.140,-23.581,-23.003,-22.431,-21.908,-21.479,-21.173,-20.985,-20.877,-20.788,-20.654,-20.432,-20.107,-19.689,-19.202,-18.667,
--18.098,-17.509,-16.919,-16.361,-15.881,-15.513,-15.267,-15.116,-14.999,-14.848,-14.611,-14.278,-13.876,-13.456,-13.060,-12.704,
--12.370,-12.021,-11.626,-11.176,-10.688,-10.191,-9.707,-9.238,-8.765,-8.272,-7.754,-7.235,-6.751,-6.327,-5.957,-5.593,
--5.158,-4.583,-3.841,-2.960,-2.019,-1.116,-.328,.315,.833,1.278,1.703,2.139,2.585,3.025,3.442,3.834,
-4.221,4.627,5.070,5.541,6.010,6.432,6.769,7.008,7.166,7.289,7.434,7.654,7.979,8.405,8.898,9.400,
-9.846,10.186,10.395,10.484,10.492,10.474,10.481,10.540,10.654,10.798,10.940,11.055,11.132,11.181,11.226,11.295,
-11.413,11.593,11.837,12.139,12.485,12.859,13.243,13.621,13.981,14.316,14.616,14.867,15.049,15.135,15.107,14.961,
-14.717,14.415,14.106,13.835,13.622,13.466,13.350,13.259,13.194,13.172,13.215,13.332,13.505,13.691,13.839,13.915,
-13.922,13.902,13.913,14.009,14.208,14.488,14.801,15.092,15.329,15.507,15.649,15.780,15.912,16.039,16.139,16.193,
-16.196,16.165,16.131,16.120,16.147,16.208,16.286,16.362,16.428,16.484,16.536,16.587,16.626,16.638,16.603,16.516,
-16.392,16.265,16.182,16.182,16.283,16.469,16.698,16.908,17.040,17.057,16.963,16.800,16.637,16.555,16.614,16.843,
-17.224,17.703,18.205,18.656,18.999,19.208,19.285,19.251,19.141,18.988,18.822,18.670,18.557,18.504,18.527,18.632,
-18.804,19.007,19.185,19.272,19.212,18.972,18.561,18.024,17.430,16.846,16.314,15.831,15.361,14.851,14.263,13.600,
-12.912,12.276,11.763,11.410,11.196,11.057,10.912,10.703,10.413,10.070,9.727,9.423,9.163,8.911,8.613,8.221,
-7.730,7.178,6.644,6.213,5.951,5.881,5.977,6.178,6.404,6.577,6.629,6.519,6.226,5.758,5.147,4.448,
-3.731,3.070,2.529,2.144,1.924,1.843,1.854,1.899,1.926,1.904,1.823,1.701,1.569,1.455,1.375,1.323,
-1.278,1.215,1.123,1.010,.906,.840,.832,.873,.936,.988,1.013,1.023,1.051,1.130,1.268,1.435,
-1.577,1.635,1.587,1.461,1.323,1.245,1.265,1.366,1.486,1.562,1.571,1.559,1.619,1.843,2.263,2.810,
-3.337,3.684,3.761,3.612,3.413,3.407,3.800,4.663,5.893,7.247,8.440,9.256,9.623,9.628,9.457,9.308,
-9.307,9.475,9.747,10.024,10.235,10.363,10.446,10.537,10.671,10.842,11.016,11.153,11.236,11.279,11.321,11.400,
-11.529,11.694,11.862,12.007,12.120,12.221,12.342,12.509,12.726,12.976,13.225,13.446,13.626,13.768,13.884,13.988,
-14.082,14.167,14.246,14.333,14.446,14.603,14.806,15.035,15.250,15.409,15.482,15.468,15.393,15.297,15.217,15.174,
-15.166,15.177,15.188,15.184,15.161,15.120,15.067,15.011,14.958,14.923,14.918,14.953,15.024,15.110,15.173,15.171,
-15.075,14.874,14.585,14.244,13.894,13.573,13.309,13.121,13.016,12.992,13.034,13.105,13.156,13.138,13.027,12.840,
-12.643,12.527,12.581,12.840,13.272,13.778,14.223,14.492,14.522,14.315,13.924,13.416,12.833,12.180,11.432,10.569,
-9.602,8.590,7.630,6.825,6.258,5.960,5.913,6.061,6.331,6.652,6.965,7.227,7.410,7.502,7.509,7.448,
-7.348,7.230,7.101,6.952,6.763,6.517,6.221,5.902,5.601,5.350,5.149,4.962,4.732,4.405,3.966,3.449,
-2.928,2.485,2.174,1.995,1.896,1.803,1.650,1.422,1.156,.933,.844,.957,1.287,1.796,2.404,3.003,
-3.490,3.779,3.824,3.621,3.217,2.699,2.179,1.766,1.537,1.515,1.664,1.902,2.132,2.270,2.274,2.145,
-1.919,1.649,1.381,1.139,.932,.748,.569,.378,.161,-.089,-.373,-.680,-.997,-1.304,-1.587,-1.843,
--2.080,-2.321,-2.591,-2.909,-3.283,-3.705,-4.157,-4.613,-5.052,-5.454,-5.809,-6.119,-6.398,-6.680,-7.006,-7.422,
--7.953,-8.597,-9.312,-10.032,-10.689,-11.239,-11.681,-12.052,-12.406,-12.784,-13.186,-13.576,-13.899,-14.114,-14.227,-14.291,
--14.389,-14.596,-14.948,-15.424,-15.966,-16.505,-17.001,-17.452,-17.885,-18.332,-18.796,-19.251,-19.649,-19.955,-20.171,-20.341,
--20.539,-20.828,-21.229,-21.708,-22.193,-22.602,-22.883,-23.027,-23.071,-23.076,-23.101,-23.187,-23.359,-23.631,-24.011,-24.501,
--25.087,-25.727,-26.362,-26.922,-27.363,-27.676,-27.899,-28.095,-28.319,-28.592,-28.892,-29.164,-29.357,-29.451,-29.472,-29.485,
--29.559,-29.739,-30.026,-30.378,-30.734,-31.036,-31.257,-31.400,-31.492,-31.568,-31.659,-31.783,-31.951,-32.167,-32.430,-32.733,
--33.062,-33.396,-33.714,-34.000,-34.250,-34.469,-34.666,-34.851,-35.027,-35.198,-35.369,-35.554,-35.771,-36.039,-36.365,-36.741,
--37.150,-37.568,-37.981,-38.387,-38.794,-39.212,-39.638,-40.059,-40.456,-40.811,-41.127,-41.419,-41.716,-42.043,-42.405,-42.789,
--43.166,-43.506,-43.792,-44.029,-44.240,-44.454,-44.696,-44.980,-45.302,-45.648,-45.998,-46.333,-46.638,-46.900,-47.116,-47.286,
--47.419,-47.528,-47.623,-47.712,-47.792,-47.858,-47.905,-47.933,-47.958,-48.000,-48.083,-48.218,-48.397,-48.593,-48.768,-48.884,
--48.918,-48.868,-48.755,-48.612,-48.471,-48.358,-48.281,-48.231,-48.190,-48.137,-48.058,-47.951,-47.821,-47.683,-47.552,-47.437,
--47.339,-47.256,-47.181,-47.112,-47.048,-46.988,-46.924,-46.837,-46.702,-46.489,-46.182,-45.785,-45.332,-44.873,-44.458,-44.122,
--43.870,-43.675,-43.493,-43.275,-42.991,-42.635,-42.220,-41.769,-41.305,-40.838,-40.370,-39.899,-39.422,-38.944,-38.471,-38.010,
--37.563,-37.125,-36.693,-36.261,-35.831,-35.405,-34.985,-34.573,-34.164,-33.753,-33.334,-32.903,-32.455,-31.985,-31.488,-30.963,
--30.417,-29.874,-29.370,-28.946,-28.636,-28.450,-28.365,-28.331,-28.277,-28.135,-27.855,-27.414,-26.815,-26.084,-25.256,-24.371,
--23.468,-22.581,-21.737,-20.950,-20.211,-19.495,-18.761,-17.967,-17.085,-16.112,-15.074,-14.017,-12.996,-12.057,-11.227,-10.513,
--9.905,-9.389,-8.949,-8.580,-8.281,-8.056,-7.902,-7.799,-7.702,-7.533,-7.194,-6.583,-5.626,-4.311,-2.711,-.972,
-.709,2.145,3.212,3.886,4.244,4.433,4.613,4.903,5.350,5.935,6.594,7.266,7.918,8.551,9.185,9.839,
-10.514,11.192,11.850,12.481,13.100,13.738,14.420,15.152,15.912,16.654,17.338,17.947,18.497,19.029,19.591,20.211,
-20.890,21.603,22.313,22.993,23.635,24.249,24.855,25.468,26.094,26.729,27.369,28.015,28.678,29.370,30.102,30.869,
-31.652,32.424,33.158,33.836,34.458,35.036,35.594,36.155,36.735,37.336,37.948,38.548,39.111,39.621,40.078,40.498,
-40.911,41.351,41.835,42.365,42.918,43.463,43.974,44.440,44.871,45.291,45.726,46.188,46.674,47.163,47.634,48.074,
-48.484,48.881,49.285,49.709,50.157,50.623,51.098,51.576,52.059,52.553,53.064,53.594,54.134,54.671,55.192,55.689,
-56.164,56.624,57.082,57.552,58.043,58.556,59.085,59.617,60.132,60.606,61.022,61.375,61.669,61.920,62.146,62.357,
-62.551,62.712,62.819,62.858,62.831,62.757,62.667,62.594,62.555,62.551,62.567,62.578,62.567,62.524,62.455,62.372,
-62.287,62.207,62.130,62.051,61.965,61.872,61.774,61.679,61.592,61.517,61.453,61.396,61.340,61.281,61.216,61.144,
-61.069,60.998,60.939,60.902,60.892,60.906,60.934,60.962,60.978,60.980,60.976,60.984,61.023,61.103,61.217,61.340,
-61.438,61.478,61.443,61.335,61.179,61.008,60.847,60.708,60.577,60.430,60.246,60.018,59.767,59.535,59.366,59.290,
-59.309,59.398,59.517,59.640,59.761,59.897,60.066,60.257,60.414,60.438,60.221,59.701,58.903,57.950,57.032,56.336,
-55.971,55.923,56.061,56.198,56.181,55.962,55.626,55.349,55.314,55.620,56.231,56.985,57.669,58.102,58.214,58.063,
-57.789,57.543,57.410,57.381,57.370,57.272,57.028,56.655,56.239,55.882,55.645,55.514,55.402,55.189,54.786,54.171,
-53.405,52.599,51.868,51.286,50.863,50.554,50.296,50.040,49.770,49.500,49.253,49.041,48.851,48.653,48.420,48.145,
-47.849,47.569,47.411,47.130,46.920,46.768,46.631,46.458,46.208,45.869,45.464,45.036,44.631,44.280,43.994,43.761,
-43.564,43.385,43.215,43.054,42.902,42.757,42.612,42.457,42.286,42.096,41.895,41.693,41.501,41.323,41.155,40.988,
-40.806,40.593,40.340,40.047,39.727,39.405,39.111,38.872,38.702,38.591,38.504,38.395,38.220,37.957,37.611,37.220,
-36.835,36.497,36.224,36.002,35.791,35.544,35.231,34.847,34.419,33.986,33.584,33.228,32.906,32.583,32.212,31.757,
-31.202,30.557,29.856,29.147,28.478,27.884,27.383,26.967,26.604,26.252,25.865,25.410,24.876,24.278,23.651,23.039,
-22.485,22.017,21.644,21.363,21.159,21.016,20.920,20.856,20.808,20.756,20.680,20.558,20.381,20.148,19.875,19.590,
-19.327,19.122,19.006,18.994,19.089,19.274,19.516,19.775,20.009,20.185,20.284,20.297,20.225,20.076,19.859,19.587,
-19.279,18.960,18.659,18.399,18.187,18.010,17.841,17.646,17.405,17.120,16.819,16.540,16.316,16.162,16.067,16.001,
-15.934,15.848,15.748,15.655,15.595,15.585,15.624,15.693,15.760,15.793,15.765,15.654,15.452,15.160,14.799,14.407,
-14.037,13.749,13.590,13.578,13.687,13.857,14.009,14.072,14.006,13.813,13.530,13.211,12.907,12.649,12.445,12.285,
-12.154,12.038,11.926,11.809,11.673,11.502,11.282,11.007,10.691,10.363,10.057,9.801,9.604,9.452,9.317,9.174,
-9.016,8.858,8.737,8.696,8.756,8.910,9.114,9.300,9.401,9.369,9.195,8.905,8.551,8.185,7.846,7.546,
-7.273,7.006,6.728,6.434,6.133,5.840,5.562,5.293,5.014,4.703,4.346,3.945,3.521,3.104,2.717,2.371,
-2.054,1.741,1.408,1.038,.631,.199,-.241,-.677,-1.105,-1.525,-1.936,-2.332,-2.694,-3.007,-3.258,-3.450,
--3.598,-3.724,-3.846,-3.974,-4.110,-4.251,-4.400,-4.567,-4.767,-5.005,-5.271,-5.527,-5.728,-5.835,-5.838,-5.776,
--5.727,-5.792,-6.056,-6.564,-7.298,-8.189,-9.140,-10.053,-10.862,-11.545,-12.117,-12.613,-13.075,-13.528,-13.985,-14.446,
--14.905,-15.357,-15.795,-16.213,-16.601,-16.952,-17.264,-17.551,-17.839,-18.163,-18.553,-19.015,-19.534,-20.067,-20.567,-20.994,
--21.333,-21.600,-21.831,-22.066,-22.338,-22.658,-23.018,-23.400,-23.785,-24.158,-24.512,-24.845,-25.157,-25.445,-25.710,-25.959,
--26.203,-26.456,-26.728,-27.020,-27.324,-27.623,-27.903,-28.160,-28.398,-28.626,-28.854,-29.081,-29.302,-29.504,-29.680,-29.830,
--29.964,-30.098,-30.246,-30.418,-30.617,-30.843,-31.094,-31.368,-31.662,-31.967,-32.269,-32.551,-32.799,-33.006,-33.173,-33.308,
--33.422,-33.518,-33.597,-33.659,-33.710,-33.761,-33.829,-33.927,-34.062,-34.229,-34.414,-34.604,-34.790,-34.971,-35.154,-35.344,
--35.544,-35.747,-35.940,-36.110,-36.240,-36.318,-36.331,-36.277,-36.161,-36.009,-35.860,-35.762,-35.754,-35.851,-36.041,-36.285,
--36.538,-36.760,-36.937,-37.073,-37.180,-37.269,-37.340,-37.386,-37.406,-37.415,-37.437,-37.501,-37.619,-37.777,-37.941,-38.070,
--38.136,-38.137,-38.090,-38.017,-37.931,-37.833,-37.726,-37.628,-37.586,-37.666,-37.921,-38.357,-38.916,-39.485,-39.940,-40.195,
--40.238,-40.133,-39.990,-39.907,-39.932,-40.046,-40.189,-40.295,-40.335,-40.326,-40.314,-40.339,-40.406,-40.478,-40.490,-40.386,
--40.139,-39.766,-39.313,-38.835,-38.371,-37.940,-37.542,-37.177,-36.847,-36.560,-36.316,-36.107,-35.911,-35.705,-35.476,-35.231,
--34.995,-34.799,-34.661,-34.582,-34.540,-34.505,-34.454,-34.377,-34.284,-34.191,-34.115,-34.065,-34.038,-34.028,-34.018,-33.992,
--33.923,-33.776,-33.516,-33.113,-32.557,-31.865,-31.076,-30.240,-29.401,-28.587,-27.804,-27.053,-26.337,-25.670,-25.074,-24.567,
--24.147,-23.785,-23.438,-23.070,-22.669,-22.259,-21.886,-21.597,-21.410,-21.298,-21.199,-21.043,-20.781,-20.404,-19.946,-19.455,
--18.969,-18.496,-18.009,-17.475,-16.873,-16.220,-15.566,-14.973,-14.489,-14.128,-13.863,-13.645,-13.426,-13.175,-12.886,-12.567,
--12.231,-11.880,-11.514,-11.129,-10.728,-10.321,-9.913,-9.501,-9.064,-8.582,-8.047,-7.477,-6.918,-6.423,-6.024,-5.708,
--5.412,-5.044,-4.524,-3.818,-2.959,-2.033,-1.143,-.366,.275,.810,1.300,1.803,2.345,2.913,3.473,3.989,
-4.448,4.861,5.255,5.653,6.059,6.455,6.808,7.086,7.278,7.398,7.484,7.590,7.767,8.048,8.439,8.916,
-9.428,9.911,10.305,10.574,10.714,10.757,10.754,10.757,10.805,10.908,11.052,11.207,11.350,11.466,11.563,11.660,
-11.783,11.954,12.185,12.480,12.828,13.213,13.608,13.986,14.322,14.600,14.814,14.966,15.061,15.099,15.080,14.998,
-14.860,14.680,14.486,14.300,14.138,13.994,13.849,13.689,13.521,13.375,13.303,13.345,13.510,13.762,14.027,14.226,
-14.316,14.306,14.259,14.259,14.375,14.625,14.973,15.347,15.675,15.919,16.082,16.196,16.303,16.425,16.555,16.668,
-16.740,16.759,16.735,16.694,16.656,16.635,16.628,16.626,16.623,16.623,16.632,16.657,16.689,16.709,16.694,16.626,
-16.509,16.367,16.245,16.185,16.217,16.344,16.541,16.760,16.947,17.061,17.083,17.027,16.938,16.876,16.904,17.064,
-17.368,17.792,18.285,18.781,19.218,19.551,19.757,19.839,19.816,19.717,19.576,19.427,19.300,19.217,19.193,19.228,
-19.311,19.417,19.513,19.561,19.525,19.378,19.108,18.721,18.238,17.694,17.115,16.517,15.895,15.232,14.516,13.761,
-13.014,12.348,11.840,11.532,11.407,11.391,11.373,11.256,10.990,10.598,10.156,9.754,9.452,9.244,9.066,8.825,
-8.447,7.916,7.284,6.654,6.140,5.829,5.750,5.872,6.120,6.395,6.599,6.657,6.522,6.184,5.669,5.034,
-4.357,3.715,3.172,2.761,2.482,2.310,2.208,2.140,2.081,2.017,1.940,1.850,1.747,1.638,1.533,1.443,
-1.375,1.323,1.273,1.209,1.120,1.009,.897,.809,.768,.782,.843,.936,1.050,1.176,1.312,1.452,
-1.577,1.661,1.683,1.644,1.572,1.518,1.527,1.618,1.769,1.926,2.039,2.088,2.110,2.175,2.353,2.658,
-3.030,3.347,3.482,3.380,3.105,2.838,2.815,3.232,4.154,5.475,6.951,8.292,9.265,9.776,9.889,9.777,
-9.641,9.620,9.759,10.006,10.270,10.476,10.600,10.673,10.753,10.884,11.070,11.275,11.452,11.564,11.612,11.629,
-11.662,11.742,11.876,12.040,12.202,12.338,12.447,12.552,12.680,12.850,13.062,13.295,13.524,13.728,13.897,14.036,
-14.152,14.253,14.342,14.423,14.504,14.600,14.724,14.882,15.062,15.238,15.375,15.443,15.433,15.359,15.248,15.135,
-15.039,14.965,14.902,14.836,14.757,14.670,14.593,14.551,14.565,14.647,14.790,14.969,15.143,15.262,15.276,15.150,
-14.875,14.478,14.016,13.564,13.193,12.953,12.859,12.895,13.023,13.198,13.383,13.546,13.666,13.726,13.720,13.657,
-13.573,13.521,13.563,13.741,14.051,14.436,14.793,15.007,14.985,14.688,14.135,13.388,12.526,11.610,10.679,9.752,
-8.845,7.991,7.239,6.650,6.269,6.114,6.162,6.365,6.655,6.973,7.271,7.519,7.700,7.806,7.836,7.800,
-7.713,7.593,7.456,7.299,7.111,6.873,6.576,6.232,5.876,5.553,5.297,5.113,4.971,4.813,4.578,4.229,
-3.767,3.231,2.680,2.169,1.730,1.368,1.066,.801,.560,.348,.186,.110,.157,.359,.725,1.238,
-1.844,2.450,2.946,3.228,3.234,2.971,2.518,2.008,1.580,1.333,1.293,1.408,1.578,1.698,1.701,1.579,
-1.372,1.142,.944,.797,.690,.593,.477,.327,.142,-.074,-.318,-.592,-.902,-1.244,-1.603,-1.954,
--2.272,-2.542,-2.770,-2.975,-3.188,-3.438,-3.745,-4.117,-4.550,-5.027,-5.525,-6.011,-6.448,-6.813,-7.103,-7.345,
--7.592,-7.904,-8.325,-8.862,-9.478,-10.108,-10.690,-11.187,-11.603,-11.974,-12.340,-12.720,-13.098,-13.434,-13.692,-13.864,
--13.985,-14.120,-14.333,-14.660,-15.089,-15.575,-16.065,-16.527,-16.964,-17.404,-17.872,-18.367,-18.854,-19.281,-19.608,-19.839,
--20.024,-20.238,-20.545,-20.961,-21.443,-21.909,-22.275,-22.490,-22.561,-22.542,-22.508,-22.528,-22.643,-22.866,-23.198,-23.632,
--24.161,-24.765,-25.403,-26.014,-26.536,-26.929,-27.197,-27.389,-27.578,-27.820,-28.132,-28.474,-28.777,-28.980,-29.063,-29.062,
--29.056,-29.123,-29.310,-29.606,-29.953,-30.279,-30.526,-30.680,-30.764,-30.825,-30.911,-31.047,-31.240,-31.481,-31.756,-32.057,
--32.379,-32.711,-33.041,-33.350,-33.621,-33.849,-34.037,-34.198,-34.345,-34.491,-34.643,-34.809,-35.001,-35.232,-35.510,-35.836,
--36.199,-36.581,-36.969,-37.359,-37.761,-38.189,-38.651,-39.135,-39.613,-40.050,-40.423,-40.733,-41.006,-41.280,-41.586,-41.934,
--42.305,-42.664,-42.978,-43.236,-43.452,-43.659,-43.898,-44.196,-44.560,-44.975,-45.414,-45.844,-46.238,-46.576,-46.847,-47.052,
--47.196,-47.296,-47.372,-47.443,-47.520,-47.605,-47.687,-47.755,-47.806,-47.844,-47.890,-47.966,-48.085,-48.245,-48.426,-48.595,
--48.719,-48.776,-48.761,-48.689,-48.584,-48.474,-48.378,-48.306,-48.252,-48.206,-48.153,-48.080,-47.986,-47.876,-47.761,-47.655,
--47.570,-47.505,-47.456,-47.413,-47.366,-47.314,-47.254,-47.184,-47.090,-46.946,-46.720,-46.386,-45.942,-45.417,-44.870,-44.373,
--43.986,-43.735,-43.602,-43.529,-43.445,-43.285,-43.017,-42.647,-42.207,-41.740,-41.280,-40.844,-40.425,-40.007,-39.574,-39.119,
--38.646,-38.169,-37.700,-37.249,-36.816,-36.395,-35.974,-35.541,-35.090,-34.623,-34.146,-33.668,-33.196,-32.727,-32.252,-31.758,
--31.237,-30.694,-30.150,-29.642,-29.209,-28.879,-28.658,-28.523,-28.428,-28.319,-28.145,-27.870,-27.472,-26.948,-26.301,-25.543,
--24.695,-23.785,-22.856,-21.949,-21.101,-20.325,-19.608,-18.909,-18.178,-17.369,-16.462,-15.467,-14.423,-13.386,-12.412,-11.547,
--10.813,-10.214,-9.736,-9.356,-9.047,-8.788,-8.565,-8.373,-8.208,-8.055,-7.876,-7.602,-7.140,-6.398,-5.317,-3.908,
--2.259,-.534,1.078,2.409,3.369,3.968,4.301,4.515,4.750,5.103,5.604,6.231,6.935,7.670,8.406,9.132,
-9.843,10.534,11.195,11.818,12.409,12.989,13.592,14.244,14.952,15.696,16.441,17.145,17.786,18.366,18.906,19.440,
-19.994,20.581,21.200,21.843,22.505,23.184,23.877,24.583,25.287,25.978,26.644,27.287,27.925,28.582,29.279,30.024,
-30.804,31.592,32.350,33.049,33.676,34.235,34.748,35.244,35.751,36.289,36.865,37.471,38.088,38.694,39.270,39.812,
-40.332,40.849,41.385,41.948,42.531,43.110,43.658,44.157,44.608,45.026,45.439,45.867,46.316,46.779,47.238,47.681,
-48.105,48.520,48.942,49.382,49.839,50.306,50.773,51.237,51.705,52.190,52.704,53.250,53.815,54.380,54.929,55.451,
-55.949,56.435,56.923,57.423,57.938,58.464,58.996,59.523,60.031,60.506,60.928,61.285,61.572,61.798,61.983,62.147,
-62.304,62.448,62.562,62.620,62.611,62.542,62.443,62.350,62.297,62.293,62.322,62.351,62.347,62.295,62.201,62.090,
-61.990,61.921,61.882,61.858,61.827,61.771,61.689,61.590,61.490,61.404,61.339,61.293,61.258,61.226,61.192,61.154,
-61.113,61.069,61.023,60.979,60.940,60.914,60.905,60.916,60.945,60.987,61.034,61.080,61.126,61.175,61.231,61.293,
-61.352,61.389,61.381,61.309,61.163,60.954,60.705,60.450,60.220,60.034,59.892,59.780,59.676,59.568,59.452,59.342,
-59.256,59.211,59.214,59.268,59.376,59.545,59.782,60.082,60.406,60.675,60.774,60.593,60.073,59.247,58.251,57.286,
-56.551,56.166,56.121,56.281,56.448,56.448,56.216,55.822,55.443,55.275,55.443,55.941,56.640,57.338,57.858,58.108,
-58.112,57.972,57.806,57.683,57.600,57.494,57.294,56.971,56.560,56.146,55.817,55.613,55.503,55.394,55.178,54.782,
-54.204,53.514,52.822,52.228,51.782,51.472,51.235,51.000,50.715,50.373,49.999,49.634,49.305,49.012,48.729,48.429,
-48.097,47.746,47.411,47.332,47.026,46.780,46.590,46.433,46.268,46.057,45.779,45.439,45.059,44.674,44.314,43.997,
-43.729,43.504,43.312,43.144,42.994,42.856,42.722,42.583,42.427,42.248,42.042,41.818,41.589,41.369,41.172,41.001,
-40.852,40.709,40.552,40.360,40.123,39.843,39.539,39.239,38.976,38.772,38.632,38.536,38.448,38.329,38.152,37.913,
-37.628,37.331,37.053,36.806,36.580,36.341,36.053,35.688,35.244,34.746,34.238,33.763,33.349,32.992,32.663,32.313,
-31.895,31.380,30.771,30.096,29.406,28.754,28.180,27.699,27.297,26.941,26.584,26.187,25.730,25.212,24.655,24.090,
-23.550,23.059,22.629,22.264,21.962,21.721,21.541,21.418,21.345,21.306,21.275,21.224,21.129,20.974,20.757,20.491,
-20.202,19.927,19.703,19.567,19.545,19.640,19.837,20.094,20.360,20.580,20.713,20.738,20.658,20.487,20.246,19.955,
-19.632,19.300,18.985,18.716,18.517,18.389,18.312,18.242,18.126,17.931,17.650,17.311,16.962,16.652,16.407,16.230,
-16.101,16.003,15.927,15.882,15.886,15.949,16.057,16.178,16.263,16.270,16.175,15.980,15.701,15.362,14.985,14.589,
-14.196,13.838,13.553,13.377,13.326,13.384,13.499,13.606,13.642,13.575,13.410,13.185,12.952,12.755,12.612,12.517,
-12.443,12.361,12.248,12.092,11.886,11.626,11.312,10.950,10.557,10.163,9.807,9.519,9.314,9.179,9.084,8.990,
-8.874,8.737,8.610,8.534,8.545,8.651,8.823,9.002,9.123,9.131,9.004,8.758,8.435,8.090,7.767,7.486,
-7.244,7.020,6.788,6.532,6.247,5.943,5.633,5.327,5.023,4.711,4.375,4.004,3.598,3.172,2.746,2.340,
-1.962,1.608,1.261,.899,.507,.079,-.377,-.848,-1.319,-1.779,-2.224,-2.651,-3.055,-3.426,-3.748,-4.008,
--4.199,-4.326,-4.404,-4.455,-4.502,-4.565,-4.657,-4.787,-4.958,-5.168,-5.407,-5.655,-5.881,-6.058,-6.166,-6.209,
--6.222,-6.265,-6.411,-6.719,-7.220,-7.902,-8.710,-9.566,-10.390,-11.127,-11.753,-12.285,-12.757,-13.212,-13.681,-14.176,
--14.690,-15.204,-15.697,-16.153,-16.563,-16.929,-17.256,-17.558,-17.853,-18.163,-18.510,-18.911,-19.365,-19.855,-20.347,-20.803,
--21.193,-21.510,-21.770,-22.007,-22.260,-22.554,-22.896,-23.271,-23.656,-24.030,-24.383,-24.719,-25.049,-25.383,-25.724,-26.068,
--26.409,-26.741,-27.065,-27.380,-27.685,-27.973,-28.235,-28.462,-28.654,-28.823,-28.983,-29.151,-29.332,-29.518,-29.698,-29.859,
--30.001,-30.134,-30.278,-30.454,-30.673,-30.936,-31.234,-31.554,-31.883,-32.209,-32.522,-32.809,-33.055,-33.250,-33.390,-33.482,
--33.542,-33.587,-33.635,-33.693,-33.764,-33.849,-33.948,-34.067,-34.211,-34.378,-34.559,-34.742,-34.912,-35.061,-35.192,-35.312,
--35.435,-35.569,-35.717,-35.874,-36.026,-36.159,-36.254,-36.295,-36.275,-36.202,-36.103,-36.021,-35.999,-36.072,-36.244,-36.489,
--36.763,-37.019,-37.229,-37.392,-37.524,-37.645,-37.762,-37.861,-37.923,-37.936,-37.911,-37.880,-37.880,-37.931,-38.025,-38.133,
--38.217,-38.258,-38.263,-38.255,-38.255,-38.263,-38.259,-38.223,-38.159,-38.114,-38.165,-38.383,-38.791,-39.338,-39.910,-40.372,
--40.627,-40.656,-40.523,-40.339,-40.205,-40.173,-40.225,-40.307,-40.358,-40.355,-40.316,-40.282,-40.286,-40.323,-40.354,-40.321,
--40.178,-39.915,-39.557,-39.149,-38.734,-38.334,-37.956,-37.593,-37.248,-36.929,-36.652,-36.425,-36.242,-36.083,-35.926,-35.756,
--35.573,-35.393,-35.232,-35.100,-34.997,-34.910,-34.826,-34.735,-34.635,-34.526,-34.407,-34.280,-34.150,-34.028,-33.932,-33.873,
--33.843,-33.801,-33.679,-33.402,-32.916,-32.214,-31.346,-30.399,-29.467,-28.615,-27.859,-27.173,-26.512,-25.853,-25.207,-24.619,
--24.143,-23.804,-23.585,-23.427,-23.257,-23.024,-22.719,-22.377,-22.049,-21.769,-21.531,-21.290,-20.989,-20.590,-20.101,-19.570,
--19.060,-18.611,-18.212,-17.809,-17.328,-16.719,-15.987,-15.200,-14.458,-13.855,-13.435,-13.183,-13.029,-12.886,-12.686,-12.400,
--12.041,-11.651,-11.273,-10.938,-10.655,-10.411,-10.179,-9.921,-9.596,-9.170,-8.628,-7.984,-7.287,-6.613,-6.035,-5.595,
--5.283,-5.035,-4.753,-4.350,-3.780,-3.062,-2.259,-1.453,-.708,-.039,.577,1.184,1.816,2.476,3.136,3.754,
-4.297,4.759,5.162,5.543,5.934,6.348,6.770,7.172,7.522,7.800,8.005,8.156,8.290,8.449,8.669,8.975,
-9.362,9.802,10.243,10.625,10.901,11.051,11.092,11.070,11.041,11.055,11.133,11.272,11.449,11.637,11.819,11.994,
-12.174,12.378,12.622,12.915,13.255,13.628,14.011,14.371,14.678,14.906,15.041,15.090,15.069,15.005,14.916,14.815,
-14.708,14.600,14.499,14.417,14.358,14.313,14.257,14.161,14.008,13.818,13.644,13.555,13.610,13.815,14.120,14.431,
-14.654,14.737,14.701,14.626,14.616,14.751,15.047,15.453,15.879,16.238,16.483,16.619,16.688,16.744,16.822,16.925,
-17.037,17.132,17.197,17.231,17.243,17.240,17.224,17.193,17.148,17.097,17.054,17.030,17.025,17.021,16.991,16.912,
-16.778,16.607,16.436,16.305,16.244,16.263,16.352,16.487,16.640,16.789,16.919,17.027,17.119,17.209,17.318,17.470,
-17.686,17.975,18.332,18.737,19.158,19.557,19.900,20.161,20.329,20.403,20.396,20.329,20.233,20.135,20.055,20.004,
-19.976,19.958,19.934,19.889,19.812,19.695,19.530,19.303,18.999,18.609,18.127,17.555,16.893,16.145,15.311,14.409,
-13.477,12.586,11.828,11.284,10.999,10.945,11.031,11.127,11.113,10.930,10.596,10.191,9.816,9.536,9.349,9.192,
-8.973,8.618,8.115,7.515,6.917,6.422,6.102,5.977,6.017,6.163,6.340,6.475,6.504,6.379,6.077,5.606,
-5.014,4.375,3.773,3.276,2.915,2.676,2.520,2.400,2.285,2.167,2.054,1.955,1.870,1.786,1.685,1.561,
-1.424,1.297,1.200,1.139,1.100,1.061,1.002,.921,.839,.786,.790,.860,.986,1.141,1.299,1.441,
-1.558,1.648,1.709,1.743,1.753,1.750,1.756,1.792,1.869,1.980,2.103,2.211,2.294,2.369,2.468,2.622,
-2.830,3.046,3.189,3.185,3.010,2.727,2.482,2.466,2.836,3.658,4.866,6.278,7.662,8.811,9.610,10.061,
-10.257,10.334,10.404,10.520,10.673,10.822,10.927,10.980,11.012,11.066,11.174,11.336,11.520,11.679,11.777,11.812,
-11.814,11.830,11.900,12.037,12.221,12.417,12.588,12.719,12.820,12.919,13.044,13.208,13.404,13.614,13.815,13.995,
-14.151,14.290,14.417,14.533,14.633,14.715,14.783,14.849,14.927,15.024,15.134,15.235,15.300,15.308,15.252,15.144,
-15.008,14.864,14.727,14.600,14.482,14.375,14.292,14.260,14.308,14.454,14.696,14.998,15.296,15.509,15.559,15.392,
-14.999,14.421,13.748,13.093,12.568,12.254,12.179,12.316,12.598,12.941,13.271,13.545,13.751,13.902,14.023,14.134,
-14.250,14.382,14.534,14.704,14.880,15.033,15.115,15.069,14.842,14.406,13.764,12.956,12.038,11.076,10.123,9.224,
-8.411,7.716,7.168,6.794,6.606,6.592,6.718,6.929,7.172,7.402,7.596,7.747,7.857,7.927,7.953,7.930,
-7.856,7.738,7.589,7.424,7.248,7.054,6.829,6.559,6.244,5.897,5.548,5.224,4.943,4.702,4.480,4.246,
-3.971,3.638,3.247,2.812,2.356,1.908,1.494,1.135,.837,.594,.384,.186,-.009,-.179,-.271,-.213,
-.053,.537,1.178,1.846,2.384,2.660,2.622,2.316,1.872,1.449,1.170,1.078,1.131,1.232,1.286,1.247,
-1.129,.992,.899,.875,.892,.886,.791,.573,.245,-.138,-.517,-.849,-1.133,-1.396,-1.676,-1.996,
--2.354,-2.721,-3.062,-3.348,-3.571,-3.749,-3.913,-4.102,-4.349,-4.681,-5.103,-5.601,-6.136,-6.652,-7.092,-7.420,
--7.638,-7.793,-7.960,-8.215,-8.607,-9.129,-9.732,-10.339,-10.889,-11.353,-11.743,-12.099,-12.454,-12.818,-13.173,-13.485,
--13.734,-13.924,-14.092,-14.284,-14.536,-14.861,-15.242,-15.657,-16.090,-16.545,-17.034,-17.563,-18.111,-18.633,-19.075,-19.406,
--19.636,-19.820,-20.036,-20.343,-20.751,-21.215,-21.651,-21.982,-22.166,-22.221,-22.210,-22.211,-22.288,-22.471,-22.761,-23.141,
--23.596,-24.112,-24.672,-25.243,-25.774,-26.218,-26.546,-26.775,-26.958,-27.167,-27.455,-27.827,-28.233,-28.596,-28.851,-28.978,
--29.015,-29.038,-29.119,-29.294,-29.542,-29.802,-30.012,-30.135,-30.181,-30.198,-30.244,-30.360,-30.555,-30.813,-31.106,-31.411,
--31.721,-32.037,-32.358,-32.673,-32.964,-33.213,-33.412,-33.568,-33.700,-33.828,-33.968,-34.126,-34.305,-34.507,-34.740,-35.011,
--35.324,-35.673,-36.046,-36.433,-36.833,-37.254,-37.707,-38.192,-38.693,-39.179,-39.616,-39.984,-40.288,-40.557,-40.829,-41.131,
--41.466,-41.814,-42.142,-42.428,-42.675,-42.909,-43.170,-43.491,-43.883,-44.333,-44.810,-45.278,-45.708,-46.083,-46.396,-46.645,
--46.833,-46.965,-47.053,-47.118,-47.182,-47.262,-47.361,-47.473,-47.580,-47.669,-47.736,-47.793,-47.860,-47.953,-48.080,-48.229,
--48.381,-48.511,-48.599,-48.638,-48.635,-48.599,-48.544,-48.480,-48.412,-48.340,-48.265,-48.185,-48.103,-48.018,-47.935,-47.859,
--47.794,-47.744,-47.707,-47.676,-47.644,-47.603,-47.548,-47.479,-47.389,-47.267,-47.088,-46.822,-46.446,-45.958,-45.389,-44.803,
--44.281,-43.893,-43.676,-43.615,-43.651,-43.695,-43.662,-43.500,-43.202,-42.797,-42.338,-41.874,-41.434,-41.017,-40.604,-40.171,
--39.705,-39.208,-38.699,-38.201,-37.731,-37.294,-36.875,-36.456,-36.014,-35.540,-35.036,-34.519,-34.007,-33.516,-33.046,-32.588,
--32.121,-31.631,-31.115,-30.587,-30.077,-29.618,-29.237,-28.940,-28.716,-28.534,-28.356,-28.144,-27.868,-27.504,-27.037,-26.455,
--25.755,-24.945,-24.049,-23.102,-22.150,-21.233,-20.376,-19.585,-18.840,-18.109,-17.356,-16.553,-15.689,-14.772,-13.827,-12.893,
--12.016,-11.243,-10.610,-10.133,-9.803,-9.584,-9.426,-9.277,-9.099,-8.880,-8.622,-8.330,-7.987,-7.541,-6.913,-6.022,
--4.823,-3.338,-1.667,.026,1.563,2.804,3.686,4.241,4.572,4.816,5.095,5.489,6.020,6.669,7.395,8.153,
-8.913,9.650,10.354,11.014,11.633,12.219,12.795,13.386,14.015,14.689,15.400,16.124,16.835,17.511,18.144,18.739,
-19.305,19.858,20.408,20.971,21.563,22.197,22.883,23.617,24.382,25.148,25.889,26.590,27.257,27.913,28.586,29.295,
-30.038,30.792,31.523,32.200,32.806,33.346,33.842,34.326,34.830,35.375,35.972,36.616,37.289,37.968,38.626,39.248,
-39.829,40.381,40.925,41.481,42.057,42.646,43.225,43.771,44.270,44.726,45.153,45.572,45.995,46.421,46.842,47.247,
-47.640,48.034,48.451,48.904,49.393,49.900,50.403,50.887,51.354,51.824,52.322,52.860,53.435,54.022,54.591,55.124,
-55.621,56.103,56.594,57.115,57.668,58.239,58.804,59.341,59.840,60.296,60.706,61.068,61.373,61.618,61.804,61.943,
-62.053,62.146,62.226,62.282,62.303,62.280,62.221,62.148,62.087,62.053,62.046,62.044,62.022,61.960,61.861,61.746,
-61.645,61.582,61.561,61.566,61.572,61.554,61.503,61.426,61.343,61.272,61.223,61.193,61.173,61.153,61.130,61.105,
-61.085,61.071,61.061,61.047,61.024,60.993,60.965,60.954,60.974,61.032,61.121,61.222,61.316,61.386,61.423,61.432,
-61.421,61.397,61.357,61.287,61.164,60.970,60.703,60.383,60.059,59.785,59.609,59.550,59.588,59.669,59.732,59.728,
-59.643,59.503,59.364,59.284,59.307,59.445,59.682,59.975,60.266,60.490,60.572,60.444,60.057,59.408,58.560,57.638,
-56.808,56.221,55.955,55.985,56.182,56.370,56.398,56.209,55.866,55.522,55.353,55.476,55.900,56.525,57.187,57.730,
-58.064,58.184,58.148,58.032,57.884,57.707,57.472,57.154,56.761,56.340,55.963,55.685,55.516,55.414,55.300,55.095,
-54.758,54.303,53.790,53.292,52.864,52.517,52.221,51.920,51.566,51.141,50.663,50.172,49.715,49.317,48.976,48.666,
-48.356,48.024,47.675,47.332,47.262,46.980,46.735,46.530,46.356,46.191,46.011,45.796,45.533,45.226,44.888,44.538,
-44.198,43.886,43.609,43.372,43.171,42.998,42.842,42.690,42.530,42.352,42.148,41.921,41.680,41.440,41.219,41.032,
-40.885,40.773,40.679,40.579,40.445,40.261,40.020,39.734,39.426,39.129,38.866,38.654,38.490,38.358,38.233,38.097,
-37.940,37.766,37.589,37.419,37.256,37.082,36.866,36.570,36.169,35.663,35.082,34.478,33.912,33.428,33.038,32.720,
-32.420,32.076,31.642,31.105,30.485,29.833,29.204,28.642,28.159,27.742,27.353,26.954,26.519,26.042,25.537,25.028,
-24.540,24.086,23.673,23.298,22.961,22.666,22.424,22.244,22.128,22.067,22.036,22.007,21.951,21.852,21.702,21.507,
-21.279,21.036,20.798,20.590,20.439,20.373,20.403,20.525,20.706,20.897,21.041,21.093,21.033,20.863,20.609,20.299,
-19.963,19.624,19.301,19.019,18.801,18.665,18.608,18.601,18.589,18.512,18.328,18.028,17.644,17.233,16.854,16.546,
-16.319,16.164,16.065,16.020,16.038,16.130,16.290,16.483,16.648,16.720,16.652,16.433,16.091,15.678,15.245,14.825,
-14.434,14.073,13.749,13.480,13.293,13.209,13.227,13.316,13.424,13.498,13.503,13.434,13.315,13.181,13.059,12.958,
-12.865,12.752,12.596,12.381,12.105,11.776,11.402,10.995,10.570,10.150,9.764,9.443,9.204,9.046,8.946,8.865,
-8.771,8.650,8.517,8.406,8.354,8.378,8.462,8.562,8.618,8.578,8.421,8.164,7.852,7.544,7.286,7.100,
-6.977,6.883,6.779,6.629,6.417,6.143,5.823,5.480,5.132,4.790,4.453,4.111,3.753,3.369,2.961,2.535,
-2.106,1.686,1.279,.880,.476,.049,-.411,-.905,-1.420,-1.939,-2.443,-2.917,-3.353,-3.750,-4.105,-4.413,
--4.664,-4.849,-4.964,-5.014,-5.014,-4.990,-4.973,-4.989,-5.060,-5.192,-5.381,-5.606,-5.842,-6.058,-6.228,-6.341,
--6.407,-6.457,-6.542,-6.720,-7.041,-7.530,-8.178,-8.941,-9.754,-10.543,-11.255,-11.865,-12.385,-12.854,-13.317,-13.812,
--14.352,-14.922,-15.491,-16.020,-16.486,-16.881,-17.217,-17.518,-17.811,-18.119,-18.456,-18.828,-19.234,-19.668,-20.115,-20.556,
--20.969,-21.338,-21.659,-21.943,-22.212,-22.492,-22.800,-23.139,-23.497,-23.854,-24.196,-24.522,-24.844,-25.182,-25.548,-25.944,
--26.358,-26.770,-27.163,-27.526,-27.857,-28.158,-28.429,-28.668,-28.871,-29.037,-29.175,-29.301,-29.430,-29.574,-29.730,-29.890,
--30.046,-30.197,-30.354,-30.536,-30.761,-31.038,-31.362,-31.717,-32.084,-32.447,-32.791,-33.106,-33.379,-33.597,-33.752,-33.841,
--33.879,-33.889,-33.898,-33.928,-33.986,-34.069,-34.167,-34.274,-34.392,-34.524,-34.673,-34.836,-34.998,-35.143,-35.261,-35.352,
--35.429,-35.510,-35.613,-35.743,-35.895,-36.050,-36.185,-36.277,-36.311,-36.285,-36.217,-36.142,-36.106,-36.153,-36.308,-36.565,
--36.886,-37.214,-37.499,-37.712,-37.855,-37.951,-38.028,-38.100,-38.160,-38.194,-38.197,-38.181,-38.174,-38.207,-38.288,-38.400,
--38.507,-38.576,-38.600,-38.600,-38.611,-38.658,-38.726,-38.775,-38.758,-38.663,-38.532,-38.454,-38.525,-38.797,-39.245,-39.770,
--40.243,-40.557,-40.675,-40.636,-40.523,-40.422,-40.375,-40.377,-40.391,-40.385,-40.350,-40.305,-40.278,-40.281,-40.295,-40.276,
--40.180,-39.987,-39.707,-39.372,-39.020,-38.676,-38.344,-38.016,-37.686,-37.361,-37.057,-36.790,-36.570,-36.388,-36.229,-36.075,
--35.920,-35.765,-35.614,-35.469,-35.327,-35.185,-35.047,-34.922,-34.821,-34.743,-34.670,-34.570,-34.416,-34.203,-33.962,-33.747,
--33.611,-33.564,-33.557,-33.487,-33.233,-32.706,-31.896,-30.879,-29.788,-28.762,-27.891,-27.191,-26.610,-26.072,-25.523,-24.960,
--24.432,-24.008,-23.730,-23.592,-23.534,-23.472,-23.339,-23.106,-22.794,-22.444,-22.091,-21.735,-21.345,-20.881,-20.323,-19.695,
--19.053,-18.463,-17.962,-17.533,-17.112,-16.624,-16.019,-15.313,-14.580,-13.924,-13.434,-13.137,-12.986,-12.881,-12.713,-12.410,
--11.964,-11.431,-10.900,-10.458,-10.156,-9.993,-9.923,-9.872,-9.757,-9.512,-9.095,-8.503,-7.771,-6.971,-6.189,-5.509,
--4.980,-4.606,-4.336,-4.091,-3.791,-3.382,-2.854,-2.234,-1.565,-.882,-.200,.488,1.192,1.909,2.618,3.281,
-3.866,4.360,4.779,5.163,5.554,5.986,6.463,6.970,7.472,7.932,8.323,8.632,8.861,9.032,9.182,9.355,
-9.589,9.905,10.292,10.707,11.086,11.370,11.521,11.547,11.492,11.420,11.392,11.443,11.575,11.765,11.981,12.202,
-12.421,12.649,12.903,13.196,13.529,13.893,14.263,14.607,14.891,15.083,15.170,15.154,15.060,14.923,14.779,14.653,
-14.550,14.466,14.394,14.333,14.292,14.274,14.272,14.263,14.215,14.111,13.969,13.842,13.802,13.906,14.162,14.511,
-14.853,15.088,15.164,15.104,14.998,14.962,15.080,15.374,15.792,16.238,16.622,16.889,17.037,17.104,17.137,17.174,
-17.228,17.296,17.369,17.442,17.515,17.586,17.649,17.690,17.702,17.685,17.652,17.620,17.595,17.567,17.514,17.411,
-17.249,17.044,16.831,16.650,16.526,16.464,16.449,16.460,16.490,16.546,16.649,16.814,17.045,17.321,17.611,17.886,
-18.131,18.354,18.578,18.828,19.119,19.448,19.796,20.131,20.424,20.649,20.798,20.875,20.896,20.881,20.851,20.812,
-20.763,20.691,20.584,20.438,20.258,20.058,19.850,19.630,19.382,19.079,18.698,18.225,17.662,17.014,16.282,15.458,
-14.537,13.539,12.521,11.584,10.842,10.382,10.223,10.299,10.482,10.629,10.638,10.486,10.218,9.916,9.648,9.429,
-9.223,8.970,8.627,8.196,7.725,7.283,6.927,6.677,6.519,6.420,6.348,6.286,6.221,6.136,5.994,5.753,
-5.379,4.876,4.292,3.706,3.199,2.822,2.579,2.433,2.335,2.247,2.155,2.068,1.996,1.932,1.855,1.736,
-1.560,1.343,1.125,.953,.857,.837,.864,.902,.922,.924,.929,.964,1.044,1.164,1.299,1.425,
-1.524,1.601,1.672,1.752,1.847,1.949,2.040,2.103,2.134,2.140,2.136,2.138,2.160,2.209,2.290,2.403,
-2.544,2.692,2.816,2.873,2.832,2.690,2.491,2.326,2.315,2.572,3.166,4.093,5.277,6.583,7.859,8.975,
-9.853,10.475,10.871,11.099,11.218,11.277,11.306,11.327,11.356,11.410,11.499,11.621,11.759,11.884,11.966,11.993,
-11.974,11.943,11.946,12.018,12.168,12.378,12.608,12.818,12.983,13.104,13.203,13.307,13.435,13.588,13.752,13.910,
-14.052,14.181,14.306,14.435,14.568,14.691,14.790,14.856,14.895,14.923,14.958,15.005,15.056,15.086,15.067,14.986,
-14.851,14.685,14.525,14.401,14.329,14.312,14.347,14.429,14.563,14.753,14.998,15.274,15.534,15.708,15.719,15.507,
-15.050,14.376,13.567,12.743,12.031,11.540,11.328,11.395,11.683,12.102,12.555,12.974,13.325,13.618,13.883,14.154,
-14.446,14.750,15.029,15.237,15.325,15.255,15.009,14.586,14.007,13.305,12.525,11.715,10.916,10.161,9.467,8.847,
-8.310,7.867,7.537,7.337,7.274,7.335,7.485,7.678,7.862,8.003,8.086,8.120,8.120,8.102,8.070,8.014,
-7.920,7.780,7.597,7.387,7.169,6.961,6.765,6.573,6.366,6.126,5.841,5.515,5.158,4.789,4.428,4.089,
-3.777,3.490,3.213,2.929,2.619,2.280,1.921,1.568,1.251,.989,.775,.575,.341,.039,-.318,-.662,
--.879,-.854,-.523,.085,.842,1.560,2.057,2.227,2.076,1.717,1.310,.998,.845,.831,.877,.905,
-.884,.844,.851,.955,1.149,1.356,1.457,1.343,.969,.376,-.324,-1.000,-1.551,-1.942,-2.206,-2.414,
--2.640,-2.921,-3.254,-3.602,-3.919,-4.174,-4.362,-4.502,-4.635,-4.805,-5.048,-5.386,-5.818,-6.315,-6.826,-7.288,
--7.653,-7.900,-8.056,-8.185,-8.368,-8.668,-9.108,-9.661,-10.262,-10.839,-11.344,-11.765,-12.124,-12.460,-12.798,-13.142,
--13.472,-13.763,-14.001,-14.192,-14.363,-14.547,-14.773,-15.057,-15.405,-15.819,-16.300,-16.841,-17.422,-18.003,-18.529,-18.953,
--19.255,-19.460,-19.629,-19.837,-20.137,-20.533,-20.979,-21.396,-21.713,-21.900,-21.978,-22.011,-22.074,-22.223,-22.477,-22.825,
--23.237,-23.688,-24.159,-24.635,-25.098,-25.517,-25.867,-26.140,-26.358,-26.573,-26.843,-27.205,-27.649,-28.120,-28.542,-28.854,
--29.041,-29.139,-29.210,-29.310,-29.458,-29.627,-29.763,-29.826,-29.808,-29.747,-29.705,-29.743,-29.886,-30.123,-30.420,-30.737,
--31.051,-31.360,-31.670,-31.980,-32.277,-32.538,-32.746,-32.898,-33.015,-33.130,-33.270,-33.449,-33.662,-33.897,-34.142,-34.400,
--34.680,-34.995,-35.348,-35.733,-36.138,-36.552,-36.972,-37.401,-37.836,-38.269,-38.682,-39.058,-39.391,-39.694,-39.992,-40.309,
--40.655,-41.015,-41.361,-41.667,-41.925,-42.158,-42.405,-42.709,-43.092,-43.543,-44.027,-44.500,-44.927,-45.295,-45.607,-45.876,
--46.110,-46.312,-46.475,-46.600,-46.695,-46.780,-46.875,-46.992,-47.127,-47.266,-47.394,-47.503,-47.597,-47.691,-47.799,-47.928,
--48.074,-48.220,-48.349,-48.450,-48.518,-48.557,-48.570,-48.560,-48.525,-48.466,-48.385,-48.291,-48.198,-48.117,-48.056,-48.014,
--47.984,-47.955,-47.920,-47.875,-47.819,-47.755,-47.689,-47.620,-47.546,-47.456,-47.330,-47.141,-46.862,-46.474,-45.980,-45.415,
--44.838,-44.326,-43.948,-43.741,-43.698,-43.762,-43.849,-43.870,-43.764,-43.510,-43.133,-42.684,-42.219,-41.778,-41.368,-40.973,
--40.562,-40.111,-39.614,-39.084,-38.550,-38.039,-37.567,-37.132,-36.713,-36.288,-35.837,-35.355,-34.850,-34.342,-33.847,-33.375,
--32.920,-32.470,-32.008,-31.526,-31.026,-30.523,-30.037,-29.588,-29.193,-28.855,-28.567,-28.315,-28.072,-27.809,-27.493,-27.092,
--26.582,-25.950,-25.200,-24.349,-23.426,-22.464,-21.492,-20.537,-19.618,-18.747,-17.931,-17.164,-16.432,-15.707,-14.961,-14.171,
--13.340,-12.497,-11.703,-11.025,-10.518,-10.203,-10.050,-9.992,-9.945,-9.836,-9.632,-9.335,-8.975,-8.573,-8.120,-7.563,
--6.818,-5.809,-4.502,-2.940,-1.238,.442,1.939,3.140,4.007,4.586,4.975,5.290,5.630,6.055,6.581,7.194,
-7.864,8.562,9.263,9.952,10.619,11.260,11.879,12.487,13.097,13.722,14.371,15.042,15.729,16.421,17.108,17.781,
-18.433,19.061,19.662,20.245,20.824,21.422,22.063,22.761,23.510,24.290,25.068,25.817,26.526,27.207,27.884,28.578,
-29.298,30.026,30.733,31.388,31.974,32.499,32.992,33.489,34.025,34.617,35.267,35.963,36.682,37.399,38.091,38.741,
-39.341,39.898,40.429,40.961,41.512,42.087,42.674,43.247,43.781,44.266,44.708,45.127,45.545,45.971,46.400,46.819,
-47.220,47.608,48.004,48.433,48.909,49.425,49.957,50.477,50.971,51.447,51.933,52.457,53.029,53.635,54.238,54.803,
-55.312,55.779,56.237,56.725,57.264,57.847,58.441,59.006,59.512,59.950,60.330,60.666,60.970,61.240,61.469,61.644,
-61.767,61.844,61.891,61.920,61.937,61.944,61.939,61.924,61.903,61.881,61.855,61.817,61.754,61.663,61.550,61.436,
-61.349,61.306,61.307,61.333,61.354,61.346,61.300,61.230,61.161,61.116,61.104,61.116,61.132,61.135,61.116,61.084,
-61.053,61.039,61.042,61.054,61.060,61.053,61.036,61.028,61.051,61.123,61.245,61.402,61.564,61.696,61.775,61.791,
-61.752,61.674,61.575,61.464,61.331,61.157,60.925,60.631,60.303,59.996,59.779,59.708,59.795,60.000,60.233,60.392,
-60.402,60.250,59.992,59.734,59.584,59.608,59.801,60.090,60.360,60.500,60.432,60.126,59.600,58.902,58.100,57.276,
-56.516,55.908,55.519,55.375,55.440,55.625,55.813,55.907,55.871,55.743,55.621,55.619,55.808,56.193,56.705,57.238,
-57.689,57.999,58.154,58.181,58.110,57.960,57.729,57.416,57.029,56.604,56.196,55.854,55.603,55.430,55.291,55.135,
-54.925,54.655,54.345,54.028,53.723,53.427,53.113,52.746,52.302,51.779,51.202,50.616,50.065,49.578,49.165,48.813,
-48.496,48.191,47.881,47.568,47.262,47.111,46.866,46.645,46.448,46.274,46.116,45.962,45.796,45.598,45.353,45.060,
-44.728,44.379,44.037,43.724,43.452,43.220,43.022,42.845,42.676,42.504,42.320,42.122,41.911,41.691,41.475,41.276,
-41.106,40.972,40.872,40.792,40.712,40.609,40.463,40.266,40.021,39.742,39.448,39.158,38.884,38.634,38.408,38.202,
-38.014,37.843,37.693,37.568,37.468,37.384,37.289,37.145,36.909,36.546,36.049,35.445,34.791,34.164,33.630,33.220,
-32.921,32.678,32.415,32.065,31.596,31.019,30.383,29.748,29.161,28.644,28.182,27.745,27.302,26.836,26.351,25.865,
-25.401,24.971,24.578,24.219,23.888,23.593,23.346,23.164,23.055,23.008,22.996,22.982,22.931,22.827,22.669,22.477,
-22.273,22.074,21.884,21.702,21.524,21.358,21.223,21.139,21.118,21.151,21.206,21.238,21.207,21.090,20.889,20.625,
-20.328,20.023,19.727,19.457,19.226,19.053,18.951,18.917,18.921,18.909,18.820,18.612,18.278,17.854,17.406,16.998,
-16.676,16.451,16.313,16.241,16.228,16.278,16.397,16.577,16.778,16.937,16.985,16.875,16.601,16.199,15.732,15.263,
-14.830,14.449,14.116,13.829,13.599,13.449,13.402,13.462,13.604,13.781,13.938,14.029,14.037,13.970,13.848,13.692,
-13.510,13.297,13.041,12.736,12.384,11.997,11.591,11.181,10.774,10.379,10.006,9.672,9.394,9.180,9.024,8.907,
-8.799,8.679,8.541,8.400,8.281,8.204,8.168,8.148,8.099,7.980,7.771,7.483,7.162,6.866,6.646,6.527,
-6.499,6.525,6.555,6.541,6.449,6.270,6.010,5.689,5.332,4.963,4.597,4.240,3.889,3.532,3.157,2.754,
-2.325,1.882,1.437,1.002,.578,.152,-.296,-.784,-1.319,-1.890,-2.471,-3.032,-3.545,-3.995,-4.379,-4.703,
--4.975,-5.199,-5.371,-5.485,-5.535,-5.528,-5.479,-5.416,-5.369,-5.370,-5.436,-5.573,-5.768,-5.993,-6.213,-6.397,
--6.524,-6.598,-6.645,-6.714,-6.865,-7.150,-7.604,-8.225,-8.977,-9.797,-10.611,-11.356,-11.999,-12.546,-13.034,-13.516,
--14.038,-14.615,-15.231,-15.844,-16.402,-16.870,-17.239,-17.532,-17.790,-18.056,-18.362,-18.716,-19.113,-19.534,-19.962,-20.383,
--20.788,-21.171,-21.527,-21.854,-22.154,-22.439,-22.721,-23.013,-23.319,-23.636,-23.954,-24.266,-24.575,-24.893,-25.236,-25.616,
--26.031,-26.467,-26.902,-27.317,-27.700,-28.053,-28.379,-28.680,-28.951,-29.183,-29.368,-29.508,-29.615,-29.711,-29.814,-29.935,
--30.078,-30.240,-30.421,-30.629,-30.871,-31.157,-31.483,-31.839,-32.205,-32.565,-32.904,-33.217,-33.498,-33.738,-33.924,-34.049,
--34.112,-34.133,-34.138,-34.158,-34.211,-34.296,-34.394,-34.488,-34.564,-34.630,-34.701,-34.794,-34.913,-35.046,-35.170,-35.269,
--35.341,-35.402,-35.481,-35.599,-35.762,-35.953,-36.138,-36.279,-36.345,-36.326,-36.234,-36.105,-35.992,-35.952,-36.030,-36.249,
--36.593,-37.014,-37.445,-37.818,-38.089,-38.246,-38.308,-38.308,-38.275,-38.229,-38.184,-38.152,-38.156,-38.215,-38.339,-38.512,
--38.695,-38.841,-38.922,-38.947,-38.958,-39.006,-39.116,-39.261,-39.376,-39.384,-39.251,-39.010,-38.759,-38.615,-38.666,-38.927,
--39.331,-39.769,-40.136,-40.374,-40.484,-40.510,-40.500,-40.486,-40.473,-40.454,-40.425,-40.398,-40.390,-40.410,-40.443,-40.455,
--40.404,-40.267,-40.046,-39.766,-39.460,-39.149,-38.837,-38.518,-38.185,-37.849,-37.528,-37.244,-37.007,-36.806,-36.625,-36.445,
--36.262,-36.082,-35.913,-35.751,-35.583,-35.392,-35.177,-34.959,-34.780,-34.671,-34.635,-34.628,-34.580,-34.431,-34.166,-33.835,
--33.531,-33.342,-33.296,-33.332,-33.309,-33.067,-32.494,-31.580,-30.428,-29.208,-28.097,-27.206,-26.558,-26.092,-25.719,-25.365,
--25.007,-24.671,-24.404,-24.234,-24.150,-24.102,-24.027,-23.877,-23.640,-23.335,-22.993,-22.630,-22.235,-21.776,-21.220,-20.565,
--19.841,-19.108,-18.426,-17.822,-17.283,-16.755,-16.184,-15.545,-14.868,-14.223,-13.695,-13.336,-13.132,-13.004,-12.838,-12.528,
--12.029,-11.370,-10.648,-9.988,-9.493,-9.214,-9.131,-9.168,-9.223,-9.195,-9.013,-8.642,-8.086,-7.384,-6.598,-5.801,
--5.063,-4.434,-3.933,-3.547,-3.234,-2.939,-2.615,-2.230,-1.774,-1.249,-.664,-.028,.648,1.349,2.048,2.712,
-3.310,3.827,4.271,4.672,5.071,5.505,5.991,6.523,7.077,7.618,8.112,8.530,8.858,9.094,9.255,9.379,
-9.518,9.723,10.030,10.437,10.898,11.341,11.688,11.892,11.950,11.907,11.838,11.810,11.863,12.000,12.192,12.404,
-12.614,12.820,13.039,13.294,13.600,13.950,14.322,14.676,14.971,15.167,15.244,15.204,15.070,14.888,14.708,14.567,
-14.479,14.432,14.398,14.352,14.285,14.211,14.152,14.121,14.108,14.090,14.044,13.973,13.916,13.933,14.079,14.363,
-14.736,15.106,15.374,15.485,15.455,15.362,15.313,15.392,15.625,15.978,16.376,16.741,17.025,17.219,17.339,17.414,
-17.462,17.494,17.517,17.541,17.583,17.655,17.757,17.875,17.986,18.073,18.131,18.166,18.186,18.188,18.154,18.060,
-17.891,17.661,17.409,17.182,17.018,16.920,16.862,16.806,16.729,16.645,16.602,16.657,16.851,17.181,17.598,18.032,
-18.414,18.711,18.931,19.113,19.303,19.532,19.805,20.103,20.395,20.653,20.863,21.024,21.149,21.250,21.337,21.407,
-21.445,21.430,21.342,21.170,20.921,20.617,20.281,19.929,19.558,19.153,18.698,18.189,17.648,17.104,16.574,16.041,
-15.447,14.719,13.810,12.742,11.622,10.613,9.877,9.505,9.481,9.686,9.953,10.135,10.160,10.041,9.845,9.638,
-9.446,9.249,9.005,8.687,8.312,7.932,7.606,7.364,7.188,7.030,6.840,6.598,6.324,6.057,5.821,5.603,
-5.354,5.014,4.554,3.999,3.425,2.925,2.566,2.362,2.276,2.242,2.203,2.132,2.035,1.929,1.824,1.706,
-1.554,1.354,1.115,.878,.692,.596,.598,.671,.772,.865,.935,.991,1.054,1.142,1.252,1.367,
-1.466,1.539,1.596,1.660,1.756,1.895,2.061,2.224,2.345,2.399,2.383,2.316,2.234,2.173,2.159,2.200,
-2.286,2.395,2.501,2.579,2.612,2.591,2.521,2.421,2.329,2.302,2.408,2.716,3.278,4.109,5.171,6.377,
-7.600,8.711,9.605,10.231,10.604,10.789,10.880,10.966,11.105,11.315,11.576,11.846,12.080,12.246,12.326,12.324,
-12.261,12.171,12.093,12.065,12.113,12.243,12.439,12.669,12.896,13.096,13.261,13.398,13.526,13.656,13.788,13.914,
-14.020,14.104,14.173,14.246,14.335,14.444,14.561,14.666,14.741,14.784,14.805,14.820,14.835,14.843,14.824,14.756,
-14.632,14.471,14.315,14.215,14.212,14.321,14.532,14.810,15.116,15.414,15.675,15.878,15.998,16.001,15.849,15.509,
-14.966,14.240,13.387,12.498,11.681,11.039,10.649,10.543,10.707,11.084,11.592,12.148,12.688,13.175,13.601,13.975,
-14.306,14.589,14.798,14.891,14.817,14.540,14.045,13.352,12.514,11.608,10.717,9.919,9.267,8.784,8.457,8.254,
-8.132,8.059,8.016,8.002,8.026,8.094,8.200,8.325,8.442,8.526,8.565,8.560,8.524,8.469,8.402,8.318,
-8.202,8.041,7.829,7.573,7.292,7.011,6.750,6.520,6.315,6.120,5.911,5.668,5.376,5.035,4.655,4.258,
-3.867,3.504,3.178,2.882,2.598,2.304,1.987,1.650,1.316,1.016,.775,.589,.419,.209,-.092,-.491,
--.930,-1.295,-1.451,-1.297,-.819,-.109,.661,1.294,1.648,1.680,1.456,1.113,.791,.576,.477,.445,
-.422,.387,.375,.453,.670,1.012,1.382,1.630,1.607,1.238,.549,-.338,-1.251,-2.042,-2.626,-3.009,
--3.258,-3.462,-3.686,-3.954,-4.246,-4.522,-4.751,-4.922,-5.054,-5.179,-5.334,-5.549,-5.838,-6.201,-6.619,-7.061,
--7.486,-7.854,-8.141,-8.349,-8.514,-8.692,-8.942,-9.303,-9.778,-10.333,-10.909,-11.451,-11.921,-12.316,-12.655,-12.966,
--13.271,-13.572,-13.858,-14.112,-14.326,-14.505,-14.671,-14.853,-15.085,-15.390,-15.784,-16.263,-16.810,-17.385,-17.940,-18.422,
--18.796,-19.057,-19.238,-19.401,-19.611,-19.910,-20.297,-20.725,-21.126,-21.440,-21.640,-21.751,-21.831,-21.949,-22.151,-22.453,
--22.835,-23.258,-23.687,-24.098,-24.482,-24.832,-25.147,-25.427,-25.681,-25.936,-26.229,-26.594,-27.041,-27.545,-28.050,-28.493,
--28.829,-29.051,-29.191,-29.301,-29.416,-29.540,-29.644,-29.687,-29.649,-29.543,-29.422,-29.350,-29.378,-29.520,-29.755,-30.042,
--30.347,-30.654,-30.962,-31.276,-31.586,-31.869,-32.095,-32.250,-32.347,-32.423,-32.526,-32.693,-32.932,-33.225,-33.543,-33.862,
--34.177,-34.499,-34.843,-35.219,-35.618,-36.023,-36.416,-36.787,-37.137,-37.473,-37.798,-38.115,-38.423,-38.728,-39.045,-39.391,
--39.772,-40.178,-40.578,-40.935,-41.226,-41.456,-41.660,-41.890,-42.189,-42.570,-43.012,-43.467,-43.889,-44.250,-44.552,-44.816,
--45.067,-45.318,-45.564,-45.786,-45.970,-46.113,-46.229,-46.340,-46.464,-46.609,-46.771,-46.938,-47.105,-47.272,-47.446,-47.628,
--47.815,-47.993,-48.143,-48.253,-48.323,-48.362,-48.384,-48.400,-48.409,-48.404,-48.375,-48.321,-48.249,-48.178,-48.128,-48.106,
--48.108,-48.115,-48.102,-48.052,-47.961,-47.842,-47.717,-47.608,-47.527,-47.470,-47.417,-47.333,-47.181,-46.931,-46.569,-46.102,
--45.565,-45.011,-44.506,-44.108,-43.855,-43.744,-43.736,-43.761,-43.744,-43.622,-43.370,-43.003,-42.568,-42.124,-41.716,-41.358,
--41.033,-40.701,-40.320,-39.863,-39.336,-38.766,-38.195,-37.662,-37.185,-36.759,-36.361,-35.963,-35.540,-35.085,-34.603,-34.109,
--33.617,-33.137,-32.671,-32.214,-31.758,-31.295,-30.819,-30.334,-29.847,-29.375,-28.937,-28.551,-28.227,-27.956,-27.711,-27.450,
--27.128,-26.706,-26.165,-25.504,-24.736,-23.881,-22.956,-21.973,-20.950,-19.914,-18.903,-17.961,-17.120,-16.388,-15.737,-15.112,
--14.456,-13.734,-12.955,-12.174,-11.474,-10.932,-10.589,-10.433,-10.400,-10.400,-10.351,-10.208,-9.967,-9.655,-9.305,-8.920,
--8.462,-7.856,-7.018,-5.889,-4.466,-2.818,-1.069,.631,2.147,3.392,4.343,5.033,5.535,5.929,6.289,6.667,
-7.093,7.580,8.129,8.735,9.383,10.058,10.742,11.421,12.085,12.737,13.379,14.021,14.667,15.322,15.986,16.658,
-17.333,18.005,18.667,19.314,19.948,20.582,21.234,21.923,22.655,23.424,24.205,24.971,25.704,26.402,27.084,27.772,
-28.479,29.200,29.907,30.569,31.164,31.696,32.195,32.706,33.269,33.904,34.606,35.349,36.101,36.833,37.527,38.175,
-38.775,39.336,39.871,40.400,40.943,41.512,42.103,42.695,43.258,43.765,44.211,44.612,44.999,45.405,45.845,46.313,
-46.789,47.252,47.696,48.135,48.588,49.071,49.582,50.102,50.611,51.102,51.587,52.093,52.643,53.240,53.861,54.466,
-55.020,55.511,55.962,56.413,56.905,57.453,58.039,58.623,59.159,59.616,59.993,60.308,60.586,60.846,61.087,61.297,
-61.458,61.562,61.614,61.629,61.626,61.621,61.622,61.632,61.647,61.660,61.658,61.629,61.563,61.462,61.340,61.226,
-61.149,61.130,61.166,61.232,61.291,61.307,61.270,61.192,61.108,61.052,61.041,61.068,61.107,61.128,61.116,61.077,
-61.033,61.010,61.019,61.053,61.094,61.124,61.140,61.158,61.205,61.305,61.466,61.670,61.880,62.054,62.158,62.177,
-62.116,61.998,61.849,61.692,61.534,61.370,61.187,60.972,60.729,60.486,60.295,60.213,60.283,60.500,60.801,61.083,
-61.231,61.175,60.918,60.550,60.207,60.018,60.042,60.240,60.485,60.618,60.505,60.093,59.419,58.587,57.721,56.922,
-56.247,55.711,55.310,55.038,54.891,54.863,54.936,55.077,55.249,55.424,55.598,55.789,56.023,56.315,56.656,57.016,
-57.354,57.639,57.858,58.008,58.090,58.095,58.002,57.795,57.476,57.075,56.645,56.244,55.909,55.646,55.431,55.228,
-55.012,54.779,54.546,54.331,54.135,53.931,53.676,53.323,52.852,52.277,51.643,51.006,50.416,49.897,49.450,49.054,
-48.688,48.339,48.002,47.681,47.383,47.111,46.879,46.637,46.416,46.214,46.033,45.879,45.748,45.621,45.475,45.283,
-45.034,44.733,44.401,44.067,43.755,43.476,43.231,43.014,42.816,42.631,42.458,42.297,42.145,41.996,41.843,41.683,
-41.517,41.354,41.204,41.074,40.963,40.862,40.758,40.636,40.487,40.305,40.089,39.842,39.566,39.267,38.951,38.628,
-38.312,38.016,37.755,37.540,37.380,37.273,37.213,37.172,37.110,36.975,36.718,36.310,35.761,35.122,34.474,33.901,
-33.458,33.152,32.933,32.722,32.436,32.029,31.497,30.883,30.246,29.638,29.084,28.576,28.092,27.608,27.115,26.622,
-26.147,25.706,25.306,24.942,24.609,24.311,24.063,23.886,23.794,23.785,23.830,23.882,23.889,23.815,23.653,23.426,
-23.174,22.939,22.742,22.582,22.437,22.279,22.096,21.894,21.698,21.533,21.414,21.334,21.267,21.184,21.062,20.895,
-20.693,20.470,20.239,20.007,19.780,19.570,19.394,19.270,19.203,19.171,19.129,19.019,18.797,18.455,18.028,17.581,
-17.183,16.884,16.696,16.602,16.573,16.589,16.643,16.741,16.877,17.025,17.138,17.158,17.044,16.787,16.413,15.974,
-15.526,15.111,14.749,14.447,14.211,14.053,13.988,14.029,14.165,14.363,14.569,14.726,14.790,14.744,14.597,14.373,
-14.096,13.782,13.438,13.065,12.667,12.256,11.847,11.454,11.084,10.736,10.405,10.087,9.787,9.514,9.279,9.087,
-8.930,8.796,8.668,8.538,8.404,8.269,8.133,7.988,7.817,7.603,7.338,7.036,6.732,6.468,6.282,6.194,
-6.191,6.241,6.297,6.316,6.272,6.151,5.959,5.706,5.407,5.076,4.727,4.371,4.014,3.656,3.289,2.903,
-2.491,2.054,1.604,1.158,.728,.314,-.102,-.545,-1.041,-1.600,-2.212,-2.845,-3.458,-4.010,-4.480,-4.860,
--5.160,-5.399,-5.592,-5.746,-5.863,-5.938,-5.965,-5.948,-5.896,-5.834,-5.790,-5.796,-5.873,-6.024,-6.232,-6.461,
--6.668,-6.817,-6.897,-6.926,-6.954,-7.047,-7.274,-7.678,-8.270,-9.018,-9.857,-10.708,-11.500,-12.191,-12.780,-13.300,
--13.807,-14.350,-14.950,-15.590,-16.224,-16.792,-17.251,-17.590,-17.839,-18.052,-18.289,-18.588,-18.961,-19.387,-19.833,-20.269,
--20.676,-21.050,-21.397,-21.723,-22.031,-22.322,-22.598,-22.864,-23.130,-23.404,-23.691,-23.990,-24.295,-24.607,-24.928,-25.268,
--25.634,-26.028,-26.443,-26.867,-27.288,-27.702,-28.106,-28.500,-28.878,-29.224,-29.516,-29.737,-29.885,-29.974,-30.032,-30.091,
--30.179,-30.309,-30.485,-30.707,-30.970,-31.273,-31.606,-31.956,-32.303,-32.630,-32.925,-33.189,-33.428,-33.648,-33.844,-34.004,
--34.116,-34.177,-34.204,-34.226,-34.275,-34.365,-34.488,-34.615,-34.716,-34.778,-34.811,-34.844,-34.906,-35.006,-35.129,-35.243,
--35.324,-35.369,-35.403,-35.463,-35.582,-35.765,-35.985,-36.189,-36.325,-36.356,-36.276,-36.111,-35.912,-35.741,-35.662,-35.721,
--35.943,-36.315,-36.792,-37.306,-37.779,-38.147,-38.377,-38.470,-38.453,-38.366,-38.253,-38.152,-38.097,-38.112,-38.209,-38.376,
--38.575,-38.756,-38.871,-38.908,-38.899,-38.908,-38.999,-39.195,-39.457,-39.692,-39.799,-39.716,-39.459,-39.120,-38.825,-38.684,
--38.744,-38.980,-39.314,-39.661,-39.959,-40.187,-40.351,-40.465,-40.541,-40.582,-40.596,-40.598,-40.607,-40.635,-40.678,-40.709,
--40.695,-40.611,-40.458,-40.256,-40.028,-39.787,-39.526,-39.226,-38.881,-38.507,-38.139,-37.820,-37.569,-37.374,-37.200,-37.009,
--36.785,-36.541,-36.306,-36.098,-35.906,-35.697,-35.441,-35.136,-34.826,-34.577,-34.443,-34.423,-34.450,-34.425,-34.265,-33.960,
--33.581,-33.250,-33.072,-33.065,-33.138,-33.117,-32.824,-32.156,-31.134,-29.897,-28.645,-27.561,-26.751,-26.224,-25.915,-25.737,
--25.617,-25.522,-25.448,-25.396,-25.352,-25.285,-25.156,-24.941,-24.646,-24.300,-23.938,-23.583,-23.224,-22.831,-22.361,-21.790,
--21.127,-20.408,-19.686,-19.000,-18.360,-17.745,-17.114,-16.435,-15.708,-14.974,-14.295,-13.732,-13.308,-12.994,-12.714,-12.373,
--11.898,-11.272,-10.542,-9.805,-9.169,-8.718,-8.480,-8.420,-8.462,-8.513,-8.490,-8.342,-8.047,-7.610,-7.052,-6.399,
--5.687,-4.955,-4.246,-3.599,-3.039,-2.573,-2.184,-1.842,-1.506,-1.141,-.723,-.242,.300,.888,1.499,2.108,
-2.692,3.236,3.737,4.207,4.667,5.140,5.642,6.174,6.725,7.275,7.798,8.269,8.663,8.966,9.173,9.300,
-9.386,9.489,9.672,9.976,10.406,10.914,11.423,11.846,12.125,12.254,12.277,12.264,12.285,12.374,12.529,12.718,
-12.905,13.071,13.227,13.399,13.619,13.901,14.235,14.588,14.912,15.158,15.291,15.297,15.189,15.004,14.798,14.622,
-14.510,14.465,14.459,14.448,14.397,14.298,14.174,14.067,14.008,14.003,14.027,14.047,14.042,14.030,14.059,14.184,
-14.430,14.772,15.144,15.460,15.662,15.746,15.758,15.771,15.850,16.020,16.265,16.543,16.811,17.045,17.242,17.406,
-17.540,17.642,17.706,17.737,17.755,17.788,17.860,17.977,18.122,18.271,18.404,18.511,18.597,18.661,18.692,18.666,
-18.557,18.362,18.107,17.846,17.632,17.493,17.415,17.352,17.255,17.106,16.938,16.826,16.850,17.057,17.434,17.915,
-18.406,18.829,19.150,19.383,19.575,19.771,19.999,20.257,20.523,20.776,21.004,21.210,21.409,21.607,21.803,21.976,
-22.098,22.138,22.076,21.906,21.637,21.294,20.901,20.471,20.000,19.467,18.854,18.166,17.444,16.759,16.185,15.755,
-15.425,15.078,14.565,13.773,12.695,11.451,10.256,9.338,8.843,8.776,9.008,9.338,9.585,9.662,9.590,9.455,
-9.344,9.285,9.238,9.129,8.903,8.562,8.166,7.798,7.514,7.317,7.158,6.976,6.733,6.433,6.109,5.790,
-5.473,5.124,4.698,4.179,3.606,3.062,2.639,2.396,2.324,2.353,2.385,2.340,2.188,1.953,1.687,1.440,
-1.237,1.072,.925,.785,.657,.562,.521,.538,.597,.670,.733,.777,.814,.865,.948,1.065,
-1.201,1.335,1.449,1.539,1.617,1.702,1.811,1.949,2.105,2.254,2.373,2.442,2.458,2.436,2.397,2.366,
-2.361,2.386,2.432,2.485,2.531,2.560,2.569,2.557,2.524,2.474,2.424,2.406,2.479,2.709,3.155,3.834,
-4.712,5.693,6.653,7.477,8.098,8.523,8.826,9.112,9.471,9.947,10.518,11.113,11.647,12.051,12.298,12.401,
-12.400,12.344,12.274,12.220,12.198,12.223,12.299,12.427,12.598,12.797,13.004,13.207,13.399,13.579,13.747,13.899,
-14.028,14.125,14.190,14.233,14.272,14.321,14.388,14.465,14.539,14.595,14.628,14.645,14.653,14.656,14.647,14.612,
-14.540,14.440,14.344,14.301,14.359,14.545,14.853,15.241,15.646,16.005,16.266,16.400,16.392,16.240,15.943,15.500,
-14.916,14.210,13.418,12.597,11.816,11.148,10.660,10.400,10.393,10.631,11.077,11.669,12.329,12.976,13.540,13.966,
-14.222,14.295,14.183,13.894,13.436,12.826,12.086,11.252,10.371,9.507,8.728,8.094,7.653,7.420,7.383,7.499,
-7.709,7.952,8.179,8.362,8.496,8.588,8.653,8.704,8.745,8.777,8.797,8.802,8.793,8.769,8.726,8.658,
-8.552,8.398,8.191,7.933,7.636,7.321,7.007,6.714,6.449,6.211,5.987,5.758,5.503,5.211,4.877,4.510,
-4.129,3.752,3.394,3.061,2.746,2.433,2.106,1.755,1.386,1.020,.687,.414,.207,.039,-.139,-.388,
--.741,-1.181,-1.628,-1.957,-2.041,-1.807,-1.272,-.550,.184,.755,1.052,1.062,.861,.569,.294,.089,
--.050,-.160,-.261,-.335,-.326,-.175,.129,.523,.875,1.030,.871,.369,-.406,-1.313,-2.195,-2.940,
--3.504,-3.914,-4.228,-4.503,-4.767,-5.013,-5.219,-5.372,-5.479,-5.570,-5.683,-5.848,-6.075,-6.357,-6.678,-7.020,
--7.368,-7.713,-8.042,-8.343,-8.607,-8.835,-9.047,-9.281,-9.576,-9.962,-10.441,-10.985,-11.545,-12.069,-12.520,-12.889,
--13.192,-13.458,-13.714,-13.970,-14.222,-14.460,-14.673,-14.867,-15.063,-15.292,-15.584,-15.954,-16.400,-16.898,-17.406,-17.879,
--18.279,-18.588,-18.814,-18.992,-19.169,-19.392,-19.686,-20.044,-20.429,-20.789,-21.080,-21.287,-21.431,-21.559,-21.725,-21.969,
--22.298,-22.689,-23.102,-23.497,-23.849,-24.154,-24.425,-24.682,-24.946,-25.238,-25.574,-25.969,-26.426,-26.931,-27.451,-27.940,
--28.356,-28.676,-28.903,-29.066,-29.202,-29.330,-29.447,-29.527,-29.542,-29.484,-29.371,-29.252,-29.180,-29.192,-29.297,-29.478,
--29.708,-29.967,-30.248,-30.551,-30.871,-31.186,-31.461,-31.666,-31.790,-31.857,-31.914,-32.017,-32.200,-32.469,-32.801,-33.164,
--33.530,-33.893,-34.259,-34.637,-35.026,-35.411,-35.771,-36.092,-36.375,-36.638,-36.900,-37.177,-37.473,-37.786,-38.115,-38.463,
--38.838,-39.242,-39.659,-40.061,-40.413,-40.695,-40.917,-41.112,-41.328,-41.603,-41.946,-42.333,-42.725,-43.081,-43.385,-43.649,
--43.898,-44.159,-44.439,-44.728,-44.999,-45.232,-45.417,-45.566,-45.700,-45.840,-46.001,-46.189,-46.405,-46.645,-46.908,-47.187,
--47.468,-47.729,-47.940,-48.082,-48.147,-48.151,-48.123,-48.095,-48.088,-48.106,-48.135,-48.154,-48.151,-48.127,-48.099,-48.086,
--48.102,-48.138,-48.169,-48.164,-48.097,-47.964,-47.786,-47.602,-47.452,-47.361,-47.326,-47.318,-47.291,-47.196,-46.995,-46.675,
--46.246,-45.741,-45.209,-44.703,-44.272,-43.950,-43.744,-43.632,-43.566,-43.483,-43.330,-43.075,-42.723,-42.312,-41.897,-41.526,
--41.218,-40.958,-40.698,-40.386,-39.980,-39.474,-38.893,-38.288,-37.712,-37.198,-36.755,-36.365,-35.995,-35.613,-35.195,-34.738,
--34.248,-33.742,-33.237,-32.746,-32.276,-31.825,-31.385,-30.942,-30.481,-29.997,-29.497,-29.003,-28.547,-28.158,-27.847,-27.598,
--27.371,-27.114,-26.779,-26.335,-25.774,-25.104,-24.334,-23.469,-22.513,-21.473,-20.379,-19.283,-18.250,-17.337,-16.568,-15.923,
--15.343,-14.757,-14.113,-13.405,-12.675,-11.994,-11.436,-11.044,-10.814,-10.702,-10.642,-10.574,-10.463,-10.302,-10.105,-9.883,
--9.625,-9.295,-8.827,-8.148,-7.199,-5.957,-4.447,-2.744,-.957,.791,2.387,3.747,4.828,5.628,6.180,6.543,
-6.794,7.010,7.264,7.609,8.073,8.657,9.335,10.069,10.820,11.559,12.273,12.962,13.634,14.299,14.964,15.629,
-16.294,16.955,17.610,18.259,18.904,19.554,20.220,20.917,21.654,22.426,23.218,24.004,24.761,25.478,26.163,26.840,
-27.530,28.242,28.962,29.659,30.301,30.878,31.408,31.934,32.503,33.146,33.866,34.632,35.404,36.144,36.833,37.472,
-38.073,38.650,39.215,39.774,40.334,40.904,41.487,42.080,42.664,43.212,43.702,44.128,44.511,44.890,45.302,45.768,
-46.285,46.826,47.360,47.867,48.348,48.819,49.294,49.783,50.280,50.777,51.273,51.775,52.302,52.866,53.462,54.066,
-54.646,55.180,55.668,56.134,56.615,57.140,57.709,58.299,58.867,59.374,59.799,60.145,60.432,60.680,60.901,61.095,
-61.250,61.359,61.419,61.440,61.434,61.417,61.399,61.385,61.378,61.376,61.371,61.353,61.311,61.238,61.142,61.044,
-60.972,60.956,61.002,61.096,61.201,61.275,61.293,61.254,61.182,61.116,61.081,61.082,61.098,61.101,61.072,61.015,
-60.957,60.932,60.961,61.041,61.145,61.242,61.317,61.379,61.464,61.605,61.818,62.084,62.350,62.554,62.645,62.603,
-62.448,62.220,61.969,61.736,61.538,61.376,61.237,61.107,60.975,60.845,60.739,60.691,60.736,60.896,61.156,61.458,
-61.710,61.822,61.740,61.479,61.128,60.809,60.628,60.616,60.709,60.772,60.652,60.253,59.575,58.716,57.827,57.045,
-56.443,56.015,55.698,55.419,55.139,54.872,54.668,54.587,54.662,54.891,55.236,55.642,56.059,56.447,56.785,57.063,
-57.284,57.462,57.615,57.764,57.914,58.046,58.123,58.096,57.930,57.625,57.221,56.782,56.372,56.025,55.743,55.498,
-55.259,55.010,54.761,54.533,54.335,54.152,53.937,53.634,53.206,52.652,52.016,51.364,50.761,50.239,49.797,49.402,
-49.019,48.625,48.222,47.829,47.468,47.152,46.879,46.694,46.407,46.128,45.866,45.638,45.457,45.323,45.215,45.101,
-44.951,44.749,44.498,44.219,43.937,43.668,43.417,43.178,42.945,42.718,42.507,42.325,42.182,42.078,41.997,41.915,
-41.812,41.678,41.517,41.346,41.183,41.041,40.922,40.819,40.720,40.613,40.485,40.325,40.122,39.869,39.561,39.204,
-38.814,38.413,38.028,37.679,37.383,37.150,36.986,36.890,36.848,36.828,36.778,36.639,36.359,35.920,35.351,34.722,
-34.124,33.632,33.275,33.025,32.814,32.561,32.209,31.745,31.196,30.611,30.034,29.485,28.960,28.441,27.916,27.387,
-26.872,26.391,25.959,25.575,25.231,24.922,24.651,24.437,24.302,24.256,24.290,24.368,24.437,24.446,24.361,24.179,
-23.929,23.656,23.403,23.194,23.029,22.881,22.720,22.523,22.289,22.036,21.797,21.597,21.447,21.339,21.253,21.167,
-21.066,20.943,20.794,20.617,20.409,20.174,19.926,19.691,19.499,19.368,19.289,19.224,19.119,18.925,18.625,18.243,
-17.835,17.469,17.196,17.035,16.971,16.972,17.006,17.057,17.121,17.196,17.272,17.320,17.305,17.197,16.983,16.677,
-16.312,15.930,15.568,15.253,15.004,14.835,14.756,14.771,14.869,15.021,15.179,15.289,15.305,15.203,14.986,14.678,
-14.315,13.930,13.544,13.163,12.787,12.416,12.051,11.700,11.368,11.055,10.755,10.458,10.158,9.854,9.556,9.280,
-9.042,8.850,8.704,8.591,8.492,8.387,8.254,8.077,7.848,7.570,7.257,6.938,6.649,6.426,6.290,6.240,
-6.252,6.285,6.297,6.254,6.145,5.973,5.758,5.514,5.252,4.975,4.679,4.367,4.039,3.701,3.353,2.988,
-2.600,2.183,1.742,1.292,.853,.440,.051,-.334,-.746,-1.216,-1.756,-2.359,-2.994,-3.619,-4.193,-4.689,
--5.094,-5.412,-5.657,-5.848,-6.001,-6.129,-6.234,-6.311,-6.351,-6.348,-6.309,-6.255,-6.224,-6.251,-6.362,-6.551,
--6.786,-7.013,-7.180,-7.260,-7.266,-7.250,-7.293,-7.473,-7.842,-8.414,-9.154,-9.996,-10.859,-11.673,-12.396,-13.023,
--13.583,-14.122,-14.683,-15.285,-15.914,-16.527,-17.068,-17.498,-17.810,-18.037,-18.239,-18.480,-18.800,-19.204,-19.662,-20.128,
--20.558,-20.933,-21.257,-21.548,-21.829,-22.111,-22.395,-22.677,-22.951,-23.222,-23.497,-23.784,-24.086,-24.400,-24.720,-25.041,
--25.368,-25.706,-26.064,-26.446,-26.852,-27.279,-27.722,-28.175,-28.629,-29.068,-29.469,-29.805,-30.059,-30.226,-30.323,-30.381,
--30.437,-30.524,-30.661,-30.854,-31.101,-31.396,-31.727,-32.077,-32.422,-32.738,-33.006,-33.223,-33.401,-33.565,-33.731,-33.903,
--34.063,-34.191,-34.272,-34.314,-34.346,-34.401,-34.499,-34.633,-34.774,-34.887,-34.958,-34.997,-35.037,-35.109,-35.225,-35.363,
--35.484,-35.555,-35.574,-35.569,-35.590,-35.675,-35.833,-36.033,-36.217,-36.330,-36.337,-36.238,-36.064,-35.860,-35.680,-35.571,
--35.573,-35.710,-35.989,-36.390,-36.866,-37.352,-37.781,-38.099,-38.287,-38.353,-38.329,-38.260,-38.190,-38.154,-38.174,-38.253,
--38.371,-38.487,-38.557,-38.550,-38.474,-38.380,-38.347,-38.443,-38.690,-39.042,-39.398,-39.643,-39.703,-39.575,-39.329,-39.073,
--38.907,-38.881,-38.989,-39.188,-39.425,-39.664,-39.891,-40.106,-40.306,-40.484,-40.630,-40.742,-40.827,-40.895,-40.948,-40.973,
--40.952,-40.873,-40.744,-40.590,-40.440,-40.303,-40.158,-39.965,-39.689,-39.331,-38.932,-38.557,-38.260,-38.049,-37.884,-37.701,
--37.453,-37.141,-36.807,-36.507,-36.266,-36.063,-35.839,-35.545,-35.180,-34.800,-34.492,-34.317,-34.266,-34.255,-34.170,-33.938,
--33.573,-33.179,-32.892,-32.799,-32.873,-32.973,-32.902,-32.497,-31.714,-30.641,-29.469,-28.398,-27.570,-27.025,-26.715,-26.556,
--26.474,-26.432,-26.423,-26.440,-26.454,-26.413,-26.259,-25.963,-25.541,-25.049,-24.555,-24.105,-23.706,-23.324,-22.908,-22.418,
--21.849,-21.230,-20.604,-20.007,-19.448,-18.904,-18.331,-17.688,-16.957,-16.151,-15.313,-14.497,-13.751,-13.096,-12.526,-12.007,
--11.495,-10.961,-10.397,-9.830,-9.304,-8.870,-8.559,-8.372,-8.278,-8.226,-8.163,-8.051,-7.869,-7.614,-7.284,-6.875,
--6.376,-5.782,-5.101,-4.363,-3.620,-2.928,-2.330,-1.838,-1.436,-1.083,-.732,-.349,.081,.554,1.058,1.577,
-2.103,2.636,3.174,3.719,4.268,4.817,5.365,5.910,6.457,7.007,7.559,8.102,8.613,9.066,9.432,9.694,
-9.857,9.954,10.043,10.189,10.440,10.809,11.262,11.730,12.136,12.426,12.590,12.663,12.708,12.779,12.904,13.074,
-13.258,13.421,13.552,13.663,13.786,13.950,14.170,14.434,14.713,14.965,15.153,15.251,15.250,15.161,15.014,14.848,
-14.706,14.611,14.564,14.539,14.499,14.415,14.286,14.145,14.039,14.008,14.060,14.163,14.268,14.334,14.354,14.363,
-14.416,14.558,14.800,15.110,15.432,15.717,15.943,16.123,16.286,16.456,16.639,16.821,16.983,17.117,17.231,17.344,
-17.471,17.608,17.742,17.853,17.937,18.006,18.084,18.189,18.324,18.473,18.613,18.730,18.821,18.897,18.962,19.002,
-18.992,18.905,18.737,18.515,18.290,18.109,17.993,17.921,17.844,17.719,17.537,17.342,17.215,17.236,17.445,17.823,
-18.300,18.785,19.207,19.539,19.794,20.010,20.223,20.452,20.696,20.953,21.224,21.518,21.843,22.193,22.537,22.824,
-22.998,23.016,22.870,22.583,22.206,21.798,21.401,21.028,20.652,20.216,19.654,18.925,18.040,17.075,16.146,15.367,
-14.791,14.374,13.976,13.423,12.588,11.472,10.219,9.077,8.293,8.006,8.182,8.631,9.098,9.373,9.379,9.183,
-8.940,8.796,8.806,8.915,8.999,8.939,8.685,8.279,7.820,7.412,7.112,6.915,6.771,6.626,6.440,6.199,
-5.896,5.520,5.053,4.492,3.871,3.264,2.772,2.475,2.396,2.481,2.614,2.672,2.567,2.284,1.881,1.448,
-1.075,.811,.659,.587,.554,.529,.500,.468,.437,.408,.378,.346,.317,.306,.330,.405,
-.540,.727,.948,1.174,1.377,1.536,1.646,1.717,1.777,1.854,1.972,2.132,2.318,2.498,2.637,2.716,
-2.733,2.709,2.669,2.639,2.633,2.651,2.687,2.728,2.760,2.772,2.758,2.719,2.672,2.651,2.704,2.877,
-3.193,3.638,4.160,4.688,5.160,5.557,5.913,6.301,6.800,7.452,8.240,9.090,9.898,10.571,11.065,11.391,
-11.603,11.764,11.919,12.079,12.230,12.348,12.426,12.474,12.520,12.596,12.718,12.887,13.089,13.303,13.514,13.711,
-13.888,14.043,14.172,14.274,14.355,14.420,14.478,14.534,14.586,14.630,14.662,14.681,14.692,14.701,14.708,14.710,
-14.702,14.691,14.698,14.757,14.903,15.155,15.499,15.888,16.252,16.521,16.646,16.610,16.425,16.120,15.728,15.269,
-14.758,14.201,13.613,13.014,12.437,11.919,11.502,11.225,11.122,11.215,11.507,11.975,12.562,13.183,13.735,14.115,
-14.241,14.069,13.597,12.868,11.954,10.942,9.918,8.959,8.123,7.448,6.955,6.649,6.525,6.563,6.738,7.014,
-7.347,7.697,8.023,8.298,8.506,8.647,8.728,8.767,8.780,8.780,8.779,8.777,8.773,8.761,8.731,8.673,
-8.579,8.442,8.261,8.034,7.768,7.471,7.161,6.855,6.572,6.321,6.100,5.893,5.674,5.419,5.112,4.755,
-4.364,3.966,3.581,3.224,2.895,2.583,2.274,1.955,1.619,1.266,.906,.559,.246,-.017,-.233,-.433,
--.668,-.994,-1.439,-1.971,-2.493,-2.863,-2.941,-2.651,-2.024,-1.198,-.373,.256,.574,.573,.344,.020,
--.286,-.523,-.699,-.854,-1.010,-1.148,-1.213,-1.151,-.952,-.676,-.437,-.364,-.548,-1.003,-1.668,-2.432,
--3.185,-3.853,-4.411,-4.871,-5.255,-5.573,-5.821,-5.989,-6.078,-6.115,-6.149,-6.228,-6.384,-6.614,-6.893,-7.181,
--7.453,-7.704,-7.949,-8.208,-8.492,-8.791,-9.087,-9.364,-9.624,-9.895,-10.213,-10.610,-11.089,-11.621,-12.156,-12.640,
--13.041,-13.356,-13.610,-13.840,-14.072,-14.316,-14.566,-14.807,-15.038,-15.269,-15.523,-15.826,-16.188,-16.599,-17.031,-17.449,
--17.819,-18.127,-18.375,-18.581,-18.773,-18.978,-19.212,-19.480,-19.772,-20.067,-20.341,-20.578,-20.777,-20.954,-21.141,-21.371,
--21.666,-22.023,-22.418,-22.815,-23.176,-23.486,-23.749,-23.992,-24.251,-24.556,-24.923,-25.351,-25.827,-26.328,-26.828,-27.301,
--27.726,-28.087,-28.381,-28.615,-28.805,-28.967,-29.111,-29.230,-29.312,-29.342,-29.317,-29.253,-29.179,-29.130,-29.129,-29.187,
--29.302,-29.464,-29.668,-29.911,-30.191,-30.492,-30.788,-31.048,-31.246,-31.380,-31.472,-31.563,-31.691,-31.880,-32.132,-32.432,
--32.760,-33.107,-33.469,-33.846,-34.230,-34.598,-34.923,-35.189,-35.400,-35.586,-35.791,-36.050,-36.377,-36.759,-37.163,-37.564,
--37.945,-38.311,-38.673,-39.037,-39.394,-39.729,-40.027,-40.289,-40.534,-40.786,-41.068,-41.381,-41.709,-42.027,-42.315,-42.570,
--42.809,-43.054,-43.323,-43.618,-43.926,-44.223,-44.489,-44.718,-44.913,-45.091,-45.270,-45.468,-45.696,-45.963,-46.271,-46.614,
--46.972,-47.316,-47.608,-47.814,-47.916,-47.923,-47.864,-47.784,-47.724,-47.711,-47.745,-47.806,-47.865,-47.902,-47.911,-47.907,
--47.911,-47.940,-47.992,-48.043,-48.057,-48.003,-47.869,-47.676,-47.464,-47.282,-47.166,-47.120,-47.118,-47.111,-47.046,-46.883,
--46.607,-46.228,-45.775,-45.290,-44.817,-44.397,-44.060,-43.820,-43.667,-43.569,-43.477,-43.337,-43.115,-42.801,-42.419,-42.016,
--41.634,-41.301,-41.007,-40.718,-40.389,-39.982,-39.490,-38.933,-38.354,-37.795,-37.286,-36.831,-36.417,-36.018,-35.613,-35.188,
--34.741,-34.275,-33.793,-33.303,-32.810,-32.323,-31.848,-31.389,-30.940,-30.488,-30.017,-29.523,-29.016,-28.523,-28.080,-27.713,
--27.425,-27.191,-26.963,-26.690,-26.331,-25.863,-25.281,-24.584,-23.774,-22.850,-21.822,-20.723,-19.610,-18.552,-17.614,-16.824,
--16.170,-15.600,-15.046,-14.459,-13.825,-13.170,-12.543,-11.995,-11.553,-11.217,-10.962,-10.759,-10.585,-10.429,-10.288,-10.160,
--10.029,-9.864,-9.623,-9.255,-8.710,-7.946,-6.932,-5.661,-4.151,-2.455,-.659,1.128,2.786,4.207,5.313,6.076,
-6.522,6.724,6.794,6.853,7.009,7.330,7.839,8.510,9.288,10.110,10.926,11.710,12.460,13.187,13.906,14.619,
-15.325,16.014,16.678,17.316,17.936,18.554,19.187,19.853,20.567,21.328,22.128,22.941,23.738,24.496,25.205,25.877,
-26.539,27.217,27.921,28.639,29.342,30.002,30.611,31.187,31.771,32.403,33.102,33.856,34.627,35.371,36.061,36.696,
-37.296,37.890,38.492,39.102,39.707,40.292,40.856,41.407,41.954,42.500,43.034,43.539,44.006,44.442,44.872,45.323,
-45.818,46.355,46.913,47.465,47.989,48.482,48.953,49.419,49.895,50.386,50.890,51.408,51.942,52.495,53.065,53.644,
-54.213,54.758,55.274,55.775,56.284,56.825,57.403,58.003,58.593,59.140,59.618,60.020,60.354,60.629,60.854,61.029,
-61.152,61.226,61.261,61.272,61.277,61.281,61.283,61.273,61.246,61.200,61.143,61.084,61.027,60.969,60.908,60.846,
-60.794,60.770,60.789,60.856,60.953,61.053,61.125,61.155,61.146,61.120,61.100,61.096,61.096,61.079,61.027,60.946,
-60.864,60.826,60.865,60.987,61.165,61.352,61.509,61.628,61.741,61.896,62.131,62.445,62.781,63.054,63.175,63.097,
-62.831,62.443,62.021,61.648,61.372,61.201,61.110,61.064,61.035,61.007,60.981,60.968,60.988,61.063,61.206,61.411,
-61.647,61.860,61.989,61.994,61.874,61.675,61.468,61.311,61.210,61.109,60.911,60.523,59.912,59.130,58.297,57.552,
-56.993,56.633,56.403,56.199,55.933,55.584,55.203,54.888,54.733,54.788,55.042,55.433,55.880,56.312,56.684,56.979,
-57.206,57.380,57.526,57.666,57.814,57.969,58.108,58.187,58.157,57.985,57.673,57.263,56.821,56.410,56.069,55.797,
-55.566,55.345,55.112,54.872,54.638,54.416,54.189,53.918,53.560,53.090,52.522,51.901,51.287,50.728,50.242,49.812,
-49.404,48.989,48.557,48.121,47.706,47.330,46.996,46.694,46.676,46.313,45.936,45.571,45.252,45.002,44.822,44.688,
-44.565,44.422,44.246,44.043,43.830,43.623,43.426,43.230,43.021,42.791,42.550,42.319,42.127,41.991,41.911,41.864,
-41.818,41.744,41.628,41.477,41.312,41.160,41.037,40.944,40.872,40.804,40.724,40.619,40.477,40.286,40.036,39.720,
-39.343,38.922,38.483,38.055,37.660,37.311,37.014,36.774,36.597,36.485,36.427,36.390,36.318,36.148,35.839,35.388,
-34.841,34.273,33.764,33.358,33.053,32.800,32.537,32.214,31.814,31.352,30.860,30.364,29.869,29.364,28.835,28.280,
-27.717,27.177,26.688,26.265,25.903,25.588,25.305,25.052,24.840,24.685,24.598,24.572,24.584,24.596,24.573,24.488,
-24.335,24.129,23.893,23.657,23.441,23.249,23.073,22.894,22.697,22.477,22.246,22.023,21.834,21.691,21.595,21.533,
-21.484,21.427,21.343,21.219,21.045,20.818,20.543,20.241,19.944,19.687,19.497,19.374,19.291,19.198,19.049,18.816,
-18.506,18.161,17.834,17.574,17.406,17.325,17.308,17.327,17.359,17.392,17.420,17.434,17.422,17.366,17.250,17.070,
-16.830,16.549,16.251,15.963,15.711,15.518,15.397,15.355,15.383,15.454,15.527,15.556,15.499,15.331,15.053,14.685,
-14.267,13.837,13.430,13.061,12.731,12.431,12.143,11.857,11.565,11.266,10.964,10.658,10.350,10.037,9.720,9.403,
-9.100,8.826,8.599,8.428,8.308,8.223,8.143,8.035,7.874,7.649,7.372,7.073,6.795,6.578,6.449,6.405,
-6.420,6.448,6.438,6.356,6.191,5.955,5.677,5.385,5.094,4.808,4.520,4.220,3.908,3.589,3.267,2.944,
-2.607,2.244,1.844,1.412,.966,.535,.136,-.227,-.575,-.939,-1.351,-1.828,-2.366,-2.943,-3.529,-4.095,
--4.614,-5.071,-5.456,-5.768,-6.014,-6.208,-6.367,-6.506,-6.626,-6.718,-6.767,-6.766,-6.728,-6.691,-6.702,-6.798,
--6.984,-7.224,-7.455,-7.613,-7.663,-7.623,-7.558,-7.563,-7.724,-8.093,-8.671,-9.411,-10.240,-11.084,-11.884,-12.612,
--13.267,-13.869,-14.447,-15.023,-15.605,-16.181,-16.719,-17.187,-17.565,-17.857,-18.100,-18.346,-18.647,-19.030,-19.486,-19.974,
--20.439,-20.840,-21.161,-21.421,-21.656,-21.902,-22.179,-22.486,-22.806,-23.121,-23.422,-23.714,-24.007,-24.307,-24.616,-24.928,
--25.238,-25.546,-25.858,-26.188,-26.546,-26.938,-27.359,-27.802,-28.256,-28.708,-29.143,-29.546,-29.900,-30.192,-30.419,-30.591,
--30.729,-30.855,-30.992,-31.152,-31.346,-31.579,-31.851,-32.160,-32.492,-32.820,-33.113,-33.347,-33.516,-33.639,-33.751,-33.884,
--34.049,-34.232,-34.400,-34.523,-34.594,-34.632,-34.670,-34.736,-34.834,-34.942,-35.031,-35.083,-35.109,-35.141,-35.213,-35.337,
--35.492,-35.639,-35.739,-35.781,-35.790,-35.808,-35.872,-35.989,-36.134,-36.260,-36.327,-36.319,-36.244,-36.129,-36.000,-35.877,
--35.772,-35.703,-35.699,-35.789,-35.993,-36.306,-36.693,-37.096,-37.458,-37.739,-37.924,-38.025,-38.070,-38.089,-38.106,-38.136,
--38.184,-38.235,-38.266,-38.248,-38.164,-38.029,-37.888,-37.812,-37.862,-38.061,-38.375,-38.724,-39.019,-39.197,-39.251,-39.227,
--39.191,-39.195,-39.257,-39.355,-39.455,-39.536,-39.602,-39.676,-39.785,-39.938,-40.129,-40.339,-40.547,-40.739,-40.902,-41.018,
--41.068,-41.039,-40.937,-40.797,-40.661,-40.561,-40.492,-40.411,-40.260,-40.005,-39.661,-39.288,-38.960,-38.721,-38.551,-38.381,
--38.136,-37.781,-37.351,-36.926,-36.582,-36.343,-36.161,-35.951,-35.646,-35.249,-34.831,-34.489,-34.278,-34.171,-34.068,-33.862,
--33.510,-33.076,-32.699,-32.513,-32.559,-32.741,-32.859,-32.709,-32.185,-31.337,-30.348,-29.444,-28.789,-28.422,-28.258,-28.156,
--28.000,-27.754,-27.460,-27.184,-26.965,-26.781,-26.560,-26.232,-25.769,-25.205,-24.617,-24.080,-23.623,-23.219,-22.808,-22.332,
--21.774,-21.166,-20.571,-20.044,-19.603,-19.222,-18.838,-18.385,-17.816,-17.122,-16.320,-15.450,-14.554,-13.670,-12.831,-12.064,
--11.390,-10.820,-10.356,-9.986,-9.690,-9.446,-9.238,-9.051,-8.871,-8.686,-8.483,-8.249,-7.984,-7.694,-7.386,-7.062,
--6.706,-6.289,-5.780,-5.168,-4.470,-3.736,-3.029,-2.404,-1.881,-1.446,-1.053,-.655,-.224,.245,.733,1.220,
-1.701,2.185,2.690,3.230,3.799,4.377,4.937,5.465,5.965,6.463,6.991,7.570,8.200,8.851,9.478,10.030,
-10.469,10.785,10.997,11.148,11.295,11.483,11.734,12.037,12.351,12.629,12.834,12.959,13.029,13.088,13.175,13.310,
-13.484,13.669,13.837,13.973,14.082,14.183,14.295,14.427,14.574,14.724,14.860,14.972,15.050,15.087,15.080,15.032,
-14.953,14.861,14.774,14.698,14.627,14.543,14.433,14.302,14.179,14.108,14.125,14.235,14.408,14.588,14.724,14.791,
-14.803,14.806,14.848,14.960,15.146,15.386,15.657,15.946,16.248,16.562,16.875,17.160,17.383,17.525,17.590,17.608,
-17.620,17.660,17.737,17.844,17.961,18.078,18.195,18.322,18.466,18.617,18.757,18.865,18.934,18.975,19.007,19.044,
-19.081,19.095,19.060,18.965,18.824,18.673,18.548,18.461,18.395,18.315,18.190,18.019,17.846,17.739,17.766,17.959,
-18.303,18.739,19.197,19.615,19.962,20.236,20.453,20.638,20.817,21.020,21.280,21.632,22.091,22.637,23.203,23.689,
-23.983,24.008,23.745,23.250,22.631,22.017,21.515,21.172,20.965,20.804,20.563,20.117,19.388,18.371,17.144,15.839,
-14.594,13.496,12.542,11.649,10.701,9.627,8.466,7.380,6.602,6.332,6.642,7.417,8.388,9.233,9.704,9.720,
-9.380,8.901,8.503,8.314,8.330,8.436,8.487,8.382,8.103,7.708,7.292,6.931,6.662,6.476,6.337,6.200,
-6.019,5.754,5.373,4.864,4.252,3.607,3.030,2.621,2.437,2.463,2.609,2.749,2.768,2.607,2.278,1.854,
-1.426,1.068,.810,.639,.517,.403,.274,.123,-.039,-.194,-.328,-.430,-.496,-.526,-.522,-.485,
--.406,-.272,-.068,.213,.557,.925,1.264,1.525,1.682,1.751,1.781,1.834,1.959,2.167,2.426,2.679,
-2.868,2.961,2.962,2.907,2.843,2.811,2.827,2.886,2.967,3.046,3.105,3.138,3.153,3.164,3.193,3.258,
-3.368,3.515,3.678,3.829,3.951,4.050,4.168,4.372,4.728,5.274,5.992,6.808,7.620,8.331,8.891,9.315,
-9.670,10.042,10.490,11.020,11.579,12.088,12.474,12.703,12.796,12.810,12.816,12.863,12.973,13.136,13.325,13.514,
-13.692,13.854,14.006,14.151,14.288,14.414,14.526,14.623,14.706,14.782,14.853,14.925,15.000,15.077,15.152,15.219,
-15.273,15.319,15.379,15.483,15.663,15.934,16.279,16.639,16.934,17.081,17.028,16.768,16.344,15.829,15.299,14.807,
-14.376,14.001,13.666,13.356,13.069,12.817,12.615,12.484,12.440,12.499,12.668,12.941,13.289,13.654,13.954,14.097,
-13.996,13.600,12.904,11.954,10.837,9.664,8.550,7.591,6.852,6.363,6.121,6.093,6.230,6.478,6.784,7.109,
-7.422,7.708,7.957,8.167,8.335,8.462,8.550,8.602,8.626,8.630,8.620,8.599,8.567,8.517,8.444,8.344,
-8.218,8.069,7.903,7.719,7.509,7.266,6.988,6.685,6.381,6.107,5.885,5.720,5.587,5.445,5.248,4.968,
-4.601,4.176,3.730,3.302,2.911,2.562,2.244,1.948,1.666,1.391,1.116,.832,.532,.223,-.081,-.364,
--.624,-.892,-1.226,-1.683,-2.282,-2.962,-3.582,-3.958,-3.934,-3.454,-2.605,-1.596,-.681,-.073,.141,.011,
--.316,-.674,-.954,-1.139,-1.286,-1.468,-1.723,-2.019,-2.278,-2.418,-2.410,-2.294,-2.171,-2.156,-2.330,-2.709,
--3.247,-3.863,-4.480,-5.047,-5.544,-5.966,-6.313,-6.575,-6.743,-6.823,-6.843,-6.852,-6.902,-7.027,-7.224,-7.461,
--7.693,-7.888,-8.044,-8.190,-8.368,-8.608,-8.915,-9.261,-9.611,-9.937,-10.237,-10.538,-10.875,-11.273,-11.728,-12.208,
--12.667,-13.068,-13.396,-13.665,-13.901,-14.130,-14.366,-14.607,-14.847,-15.085,-15.335,-15.615,-15.941,-16.312,-16.707,-17.091,
--17.434,-17.719,-17.953,-18.159,-18.365,-18.588,-18.828,-19.075,-19.311,-19.523,-19.710,-19.880,-20.045,-20.223,-20.428,-20.675,
--20.974,-21.323,-21.712,-22.116,-22.504,-22.850,-23.146,-23.408,-23.670,-23.970,-24.336,-24.772,-25.255,-25.750,-26.223,-26.652,
--27.033,-27.376,-27.690,-27.983,-28.251,-28.488,-28.686,-28.842,-28.957,-29.034,-29.079,-29.097,-29.095,-29.083,-29.076,-29.087,
--29.131,-29.216,-29.346,-29.521,-29.732,-29.968,-30.211,-30.446,-30.657,-30.841,-31.005,-31.161,-31.326,-31.507,-31.706,-31.919,
--32.145,-32.391,-32.673,-32.997,-33.354,-33.716,-34.039,-34.286,-34.448,-34.557,-34.671,-34.858,-35.159,-35.576,-36.066,-36.569,
--37.031,-37.424,-37.757,-38.058,-38.359,-38.679,-39.019,-39.370,-39.719,-40.060,-40.393,-40.715,-41.022,-41.304,-41.557,-41.782,
--41.993,-42.208,-42.445,-42.713,-43.007,-43.315,-43.621,-43.912,-44.180,-44.425,-44.652,-44.871,-45.100,-45.356,-45.655,-46.002,
--46.384,-46.770,-47.116,-47.381,-47.537,-47.582,-47.543,-47.461,-47.382,-47.344,-47.359,-47.421,-47.504,-47.580,-47.626,-47.638,
--47.628,-47.619,-47.631,-47.669,-47.718,-47.745,-47.717,-47.614,-47.442,-47.231,-47.027,-46.867,-46.769,-46.719,-46.680,-46.608,
--46.467,-46.241,-45.934,-45.570,-45.182,-44.805,-44.473,-44.211,-44.033,-43.933,-43.885,-43.846,-43.767,-43.606,-43.347,-42.998,
--42.590,-42.159,-41.730,-41.308,-40.881,-40.430,-39.944,-39.428,-38.899,-38.380,-37.886,-37.416,-36.959,-36.500,-36.030,-35.555,
--35.086,-34.637,-34.209,-33.787,-33.351,-32.885,-32.384,-31.862,-31.339,-30.834,-30.350,-29.876,-29.394,-28.895,-28.389,-27.904,
--27.474,-27.120,-26.839,-26.602,-26.361,-26.068,-25.682,-25.181,-24.551,-23.789,-22.897,-21.891,-20.808,-19.709,-18.664,-17.735,
--16.955,-16.315,-15.771,-15.262,-14.742,-14.190,-13.617,-13.051,-12.521,-12.040,-11.609,-11.221,-10.872,-10.568,-10.316,-10.118,
--9.960,-9.816,-9.645,-9.411,-9.082,-8.633,-8.037,-7.263,-6.280,-5.063,-3.616,-1.980,-.241,1.480,3.051,4.354,
-5.314,5.917,6.213,6.307,6.336,6.434,6.701,7.181,7.859,8.675,9.550,10.417,11.241,12.015,12.757,13.488,
-14.218,14.943,15.649,16.326,16.970,17.592,18.213,18.854,19.536,20.273,21.063,21.892,22.735,23.559,24.336,25.053,
-25.718,26.358,27.005,27.678,28.379,29.088,29.781,30.444,31.088,31.737,32.419,33.145,33.897,34.641,35.343,35.987,
-36.589,37.181,37.794,38.436,39.091,39.725,40.307,40.832,41.317,41.794,42.290,42.814,43.357,43.896,44.418,44.921,
-45.417,45.921,46.440,46.968,47.494,48.006,48.499,48.979,49.456,49.942,50.442,50.962,51.504,52.066,52.645,53.228,
-53.801,54.351,54.875,55.387,55.906,56.456,57.042,57.651,58.254,58.815,59.312,59.738,60.099,60.405,60.660,60.855,
-60.982,61.041,61.049,61.037,61.036,61.064,61.116,61.168,61.188,61.159,61.081,60.977,60.872,60.787,60.729,60.692,
-60.668,60.654,60.653,60.674,60.719,60.783,60.852,60.910,60.951,60.978,61.000,61.023,61.043,61.045,61.013,60.948,
-60.871,60.822,60.846,60.963,61.162,61.399,61.619,61.787,61.907,62.022,62.191,62.445,62.766,63.076,63.268,63.250,
-62.989,62.530,61.981,61.470,61.099,60.913,60.891,60.974,61.092,61.191,61.246,61.257,61.241,61.219,61.215,61.253,
-61.347,61.498,61.683,61.858,61.978,62.007,61.938,61.790,61.588,61.343,61.041,60.644,60.127,59.497,58.810,58.158,
-57.624,57.247,56.999,56.803,56.572,56.257,55.876,55.506,55.242,55.151,55.246,55.480,55.780,56.080,56.347,56.585,
-56.814,57.055,57.307,57.556,57.779,57.959,58.086,58.150,58.138,58.030,57.816,57.501,57.118,56.717,56.349,56.045,
-55.809,55.618,55.438,55.246,55.036,54.813,54.581,54.333,54.047,53.697,53.267,52.761,52.204,51.628,51.062,50.516,
-49.989,49.477,48.979,48.507,48.075,47.691,47.345,47.015,46.676,46.746,46.316,45.855,45.405,45.008,44.687,44.438,
-44.239,44.059,43.876,43.686,43.500,43.329,43.179,43.041,42.894,42.720,42.515,42.294,42.083,41.913,41.800,41.738,
-41.700,41.655,41.578,41.465,41.332,41.206,41.111,41.055,41.027,41.005,40.966,40.894,40.787,40.642,40.456,40.219,
-39.920,39.558,39.143,38.701,38.261,37.845,37.463,37.114,36.794,36.509,36.271,36.093,35.968,35.865,35.735,35.527,
-35.215,34.812,34.363,33.926,33.541,33.215,32.922,32.622,32.285,31.905,31.498,31.084,30.669,30.243,29.781,29.268,
-28.709,28.133,27.583,27.095,26.683,26.341,26.045,25.774,25.517,25.278,25.066,24.894,24.762,24.664,24.587,24.516,
-24.435,24.332,24.198,24.032,23.839,23.630,23.419,23.218,23.030,22.854,22.683,22.518,22.363,22.228,22.121,22.043,
-21.983,21.924,21.846,21.733,21.574,21.368,21.117,20.832,20.529,20.231,19.964,19.746,19.581,19.455,19.337,19.195,
-19.005,18.764,18.490,18.213,17.965,17.769,17.631,17.545,17.499,17.478,17.467,17.452,17.422,17.366,17.277,17.153,
-16.994,16.807,16.599,16.379,16.160,15.958,15.789,15.667,15.595,15.563,15.545,15.507,15.414,15.243,14.984,14.647,
-14.254,13.837,13.427,13.049,12.719,12.434,12.184,11.946,11.696,11.419,11.109,10.774,10.428,10.086,9.757,9.440,
-9.132,8.830,8.541,8.276,8.052,7.881,7.760,7.673,7.593,7.490,7.347,7.164,6.960,6.765,6.608,6.508,
-6.459,6.437,6.403,6.323,6.176,5.964,5.701,5.412,5.113,4.806,4.488,4.151,3.798,3.442,3.101,2.787,
-2.495,2.205,1.888,1.525,1.118,.688,.270,-.112,-.450,-.763,-1.084,-1.443,-1.855,-2.320,-2.824,-3.348,
--3.879,-4.405,-4.910,-5.378,-5.790,-6.133,-6.409,-6.633,-6.823,-6.992,-7.134,-7.236,-7.286,-7.293,-7.291,-7.328,
--7.443,-7.638,-7.871,-8.069,-8.167,-8.137,-8.016,-7.892,-7.876,-8.056,-8.468,-9.085,-9.837,-10.642,-11.434,-12.179,
--12.874,-13.532,-14.166,-14.781,-15.372,-15.923,-16.421,-16.855,-17.225,-17.541,-17.827,-18.118,-18.452,-18.854,-19.325,-19.839,
--20.347,-20.799,-21.161,-21.433,-21.647,-21.850,-22.086,-22.375,-22.709,-23.060,-23.399,-23.711,-23.998,-24.275,-24.557,-24.851,
--25.152,-25.452,-25.749,-26.048,-26.361,-26.702,-27.074,-27.473,-27.886,-28.299,-28.703,-29.095,-29.473,-29.838,-30.185,-30.510,
--30.809,-31.078,-31.316,-31.525,-31.708,-31.878,-32.053,-32.255,-32.500,-32.788,-33.097,-33.388,-33.624,-33.788,-33.890,-33.970,
--34.071,-34.222,-34.419,-34.628,-34.809,-34.934,-35.005,-35.045,-35.081,-35.126,-35.168,-35.188,-35.172,-35.133,-35.106,-35.131,
--35.229,-35.388,-35.573,-35.741,-35.868,-35.957,-36.030,-36.106,-36.190,-36.263,-36.303,-36.301,-36.267,-36.222,-36.187,-36.158,
--36.116,-36.035,-35.911,-35.771,-35.670,-35.662,-35.781,-36.021,-36.339,-36.681,-36.997,-37.260,-37.464,-37.614,-37.721,-37.797,
--37.855,-37.906,-37.960,-38.012,-38.050,-38.052,-38.010,-37.936,-37.868,-37.848,-37.904,-38.033,-38.205,-38.380,-38.535,-38.677,
--38.837,-39.041,-39.287,-39.538,-39.735,-39.826,-39.799,-39.684,-39.540,-39.432,-39.403,-39.465,-39.612,-39.822,-40.072,-40.333,
--40.570,-40.745,-40.834,-40.838,-40.784,-40.714,-40.653,-40.594,-40.501,-40.331,-40.070,-39.752,-39.445,-39.206,-39.046,-38.912,
--38.714,-38.384,-37.921,-37.398,-36.927,-36.587,-36.378,-36.221,-36.007,-35.670,-35.233,-34.787,-34.434,-34.212,-34.065,-33.876,
--33.550,-33.090,-32.611,-32.280,-32.216,-32.401,-32.667,-32.774,-32.538,-31.934,-31.118,-30.346,-29.846,-29.697,-29.797,-29.921,
--29.846,-29.457,-28.793,-28.004,-27.259,-26.655,-26.186,-25.771,-25.324,-24.811,-24.267,-23.763,-23.346,-23.004,-22.667,-22.249,
--21.699,-21.037,-20.343,-19.716,-19.224,-18.869,-18.592,-18.305,-17.933,-17.436,-16.818,-16.105,-15.327,-14.507,-13.665,-12.831,
--12.050,-11.373,-10.846,-10.483,-10.260,-10.126,-10.018,-9.887,-9.704,-9.466,-9.179,-8.852,-8.488,-8.093,-7.679,-7.261,
--6.852,-6.450,-6.032,-5.566,-5.027,-4.418,-3.770,-3.136,-2.563,-2.064,-1.619,-1.180,-.704,-.177,.382,.936,
-1.451,1.922,2.373,2.839,3.339,3.867,4.388,4.864,5.281,5.661,6.059,6.535,7.125,7.826,8.596,9.373,
-10.093,10.715,11.221,11.617,11.925,12.170,12.378,12.566,12.744,12.907,13.044,13.147,13.215,13.261,13.311,13.392,
-13.520,13.691,13.887,14.084,14.259,14.402,14.512,14.593,14.650,14.688,14.716,14.745,14.790,14.856,14.936,15.011,
-15.056,15.053,15.004,14.923,14.832,14.744,14.659,14.572,14.478,14.391,14.338,14.348,14.437,14.593,14.780,14.954,
-15.083,15.157,15.193,15.215,15.250,15.312,15.413,15.562,15.774,16.057,16.409,16.800,17.183,17.503,17.725,17.842,
-17.881,17.885,17.893,17.925,17.984,18.061,18.149,18.252,18.374,18.514,18.662,18.793,18.890,18.944,18.967,18.982,
-19.007,19.047,19.089,19.111,19.099,19.054,18.994,18.939,18.895,18.853,18.789,18.685,18.546,18.401,18.305,18.311,
-18.453,18.734,19.122,19.564,20.000,20.380,20.670,20.864,20.985,21.085,21.239,21.522,21.986,22.623,23.357,24.051,
-24.541,24.693,24.450,23.857,23.049,22.211,21.513,21.067,20.886,20.897,20.955,20.894,20.561,19.852,18.736,17.254,
-15.507,13.625,11.735,9.923,8.234,6.687,5.315,4.191,3.445,3.221,3.618,4.619,6.062,7.661,9.086,10.066,
-10.472,10.344,9.857,9.237,8.677,8.282,8.060,7.950,7.869,7.753,7.567,7.310,7.002,6.671,6.345,6.044,
-5.770,5.502,5.201,4.826,4.361,3.831,3.305,2.872,2.605,2.518,2.563,2.646,2.672,2.580,2.368,2.082,
-1.780,1.501,1.246,.987,.689,.336,-.057,-.455,-.812,-1.094,-1.285,-1.384,-1.403,-1.359,-1.277,-1.187,
--1.110,-1.054,-1.000,-.903,-.711,-.392,.048,.553,1.040,1.430,1.682,1.809,1.870,1.937,2.063,2.261,
-2.498,2.722,2.885,2.970,2.990,2.983,2.991,3.040,3.133,3.254,3.376,3.480,3.560,3.629,3.710,3.827,
-3.988,4.180,4.368,4.508,4.567,4.541,4.467,4.417,4.472,4.693,5.091,5.620,6.191,6.714,7.131,7.447,
-7.730,8.081,8.587,9.280,10.119,11.001,11.803,12.423,12.820,13.018,13.089,13.116,13.165,13.261,13.397,13.548,
-13.692,13.819,13.935,14.049,14.170,14.293,14.411,14.517,14.610,14.699,14.802,14.937,15.116,15.336,15.582,15.830,
-16.048,16.219,16.342,16.439,16.550,16.708,16.925,17.170,17.374,17.450,17.325,16.974,16.431,15.782,15.132,14.572,
-14.148,13.860,13.675,13.552,13.463,13.401,13.376,13.400,13.476,13.596,13.741,13.885,13.997,14.040,13.969,13.739,
-13.315,12.683,11.863,10.911,9.908,8.947,8.111,7.459,7.019,6.792,6.753,6.862,7.071,7.332,7.601,7.844,
-8.044,8.194,8.299,8.372,8.422,8.458,8.481,8.491,8.486,8.466,8.433,8.385,8.320,8.230,8.108,7.952,
-7.770,7.576,7.390,7.223,7.068,6.906,6.706,6.448,6.135,5.797,5.482,5.237,5.077,4.984,4.904,4.774,
-4.549,4.221,3.816,3.380,2.955,2.562,2.203,1.870,1.560,1.277,1.028,.809,.599,.369,.098,-.212,
--.539,-.855,-1.162,-1.498,-1.934,-2.521,-3.248,-4.005,-4.606,-4.852,-4.618,-3.922,-2.932,-1.908,-1.105,-.679,
--.634,-.850,-1.153,-1.407,-1.567,-1.684,-1.850,-2.139,-2.553,-3.020,-3.436,-3.716,-3.841,-3.861,-3.871,-3.964,
--4.191,-4.550,-4.993,-5.462,-5.908,-6.308,-6.657,-6.955,-7.200,-7.382,-7.499,-7.564,-7.605,-7.659,-7.753,-7.892,
--8.056,-8.210,-8.331,-8.415,-8.491,-8.602,-8.786,-9.059,-9.405,-9.788,-10.167,-10.521,-10.848,-11.168,-11.504,-11.867,
--12.251,-12.635,-12.998,-13.327,-13.623,-13.895,-14.150,-14.395,-14.627,-14.850,-15.072,-15.315,-15.598,-15.929,-16.298,-16.674,
--17.018,-17.305,-17.532,-17.722,-17.912,-18.132,-18.393,-18.675,-18.944,-19.170,-19.338,-19.459,-19.561,-19.681,-19.846,-20.069,
--20.350,-20.683,-21.055,-21.451,-21.853,-22.237,-22.587,-22.900,-23.190,-23.488,-23.829,-24.230,-24.685,-25.160,-25.611,-26.006,
--26.337,-26.623,-26.899,-27.193,-27.511,-27.834,-28.127,-28.361,-28.524,-28.625,-28.690,-28.741,-28.792,-28.846,-28.897,-28.945,
--28.997,-29.068,-29.174,-29.321,-29.502,-29.699,-29.892,-30.066,-30.220,-30.365,-30.520,-30.701,-30.911,-31.140,-31.365,-31.566,
--31.738,-31.894,-32.066,-32.284,-32.566,-32.894,-33.227,-33.510,-33.708,-33.822,-33.899,-34.009,-34.219,-34.563,-35.024,-35.545,
--36.059,-36.510,-36.881,-37.190,-37.476,-37.779,-38.123,-38.511,-38.929,-39.359,-39.779,-40.174,-40.528,-40.833,-41.087,-41.300,
--41.491,-41.682,-41.895,-42.137,-42.406,-42.693,-42.988,-43.284,-43.574,-43.852,-44.112,-44.350,-44.571,-44.792,-45.042,-45.341,
--45.698,-46.089,-46.473,-46.794,-47.014,-47.118,-47.126,-47.080,-47.027,-47.005,-47.030,-47.097,-47.191,-47.287,-47.365,-47.412,
--47.423,-47.405,-47.371,-47.338,-47.316,-47.304,-47.285,-47.236,-47.136,-46.979,-46.779,-46.566,-46.374,-46.224,-46.117,-46.035,
--45.948,-45.827,-45.657,-45.438,-45.185,-44.922,-44.678,-44.478,-44.342,-44.278,-44.275,-44.306,-44.330,-44.303,-44.191,-43.975,
--43.659,-43.260,-42.799,-42.291,-41.746,-41.169,-40.570,-39.969,-39.390,-38.854,-38.369,-37.922,-37.483,-37.023,-36.522,-35.986,
--35.443,-34.928,-34.467,-34.064,-33.692,-33.307,-32.872,-32.369,-31.810,-31.228,-30.661,-30.132,-29.637,-29.155,-28.662,-28.147,
--27.627,-27.133,-26.701,-26.351,-26.071,-25.827,-25.568,-25.245,-24.818,-24.262,-23.565,-22.727,-21.765,-20.716,-19.641,-18.612,
--17.697,-16.937,-16.334,-15.850,-15.425,-15.002,-14.545,-14.047,-13.524,-12.997,-12.486,-11.999,-11.542,-11.121,-10.742,-10.415,
--10.137,-9.897,-9.670,-9.432,-9.159,-8.836,-8.447,-7.969,-7.369,-6.606,-5.644,-4.468,-3.099,-1.596,-.048,1.438,
-2.762,3.844,4.646,5.181,5.513,5.747,6.002,6.381,6.943,7.687,8.559,9.477,10.366,11.180,11.911,12.582,
-13.227,13.871,14.520,15.172,15.819,16.461,17.107,17.773,18.475,19.221,20.016,20.855,21.725,22.605,23.469,24.287,
-25.040,25.725,26.360,26.978,27.610,28.273,28.965,29.670,30.373,31.069,31.769,32.486,33.223,33.967,34.691,35.370,
-35.998,36.592,37.186,37.809,38.465,39.132,39.768,40.340,40.840,41.288,41.727,42.196,42.713,43.272,43.847,44.410,
-44.946,45.454,45.946,46.437,46.936,47.446,47.964,48.485,49.003,49.517,50.028,50.539,51.060,51.603,52.173,52.766,
-53.368,53.956,54.514,55.041,55.553,56.077,56.630,57.213,57.803,58.364,58.865,59.294,59.656,59.968,60.241,60.472,
-60.645,60.744,60.775,60.764,60.751,60.773,60.842,60.939,61.026,61.064,61.034,60.944,60.826,60.716,60.639,60.599,
-60.588,60.588,60.589,60.593,60.607,60.637,60.684,60.742,60.801,60.853,60.896,60.930,60.958,60.976,60.978,60.962,
-60.936,60.919,60.942,61.027,61.180,61.381,61.589,61.760,61.870,61.929,61.980,62.071,62.229,62.430,62.602,62.647,
-62.490,62.118,61.595,61.047,60.612,60.392,60.415,60.633,60.950,61.261,61.490,61.604,61.612,61.543,61.439,61.338,
-61.274,61.276,61.353,61.491,61.647,61.761,61.772,61.646,61.383,61.018,60.601,60.168,59.738,59.311,58.883,58.461,
-58.063,57.709,57.404,57.126,56.843,56.532,56.197,55.883,55.649,55.541,55.569,55.691,55.846,55.979,56.076,56.168,
-56.314,56.557,56.903,57.306,57.689,57.981,58.139,58.161,58.077,57.923,57.723,57.487,57.216,56.914,56.599,56.298,
-56.034,55.819,55.643,55.489,55.336,55.170,54.987,54.787,54.568,54.320,54.028,53.677,53.259,52.770,52.216,51.607,
-50.958,50.295,49.650,49.058,48.546,48.122,47.771,47.454,47.123,46.746,46.686,46.219,45.734,45.269,44.857,44.508,
-44.212,43.950,43.703,43.468,43.250,43.061,42.905,42.774,42.646,42.501,42.327,42.131,41.935,41.768,41.649,41.581,
-41.546,41.514,41.457,41.364,41.248,41.137,41.062,41.039,41.061,41.100,41.118,41.092,41.014,40.898,40.759,40.605,
-40.424,40.195,39.896,39.525,39.102,38.660,38.231,37.830,37.451,37.081,36.712,36.351,36.021,35.742,35.516,35.324,
-35.131,34.909,34.646,34.356,34.061,33.777,33.502,33.214,32.893,32.529,32.137,31.741,31.363,30.999,30.625,30.206,
-29.720,29.173,28.601,28.049,27.559,27.145,26.798,26.494,26.210,25.937,25.675,25.433,25.217,25.029,24.870,24.738,
-24.633,24.548,24.472,24.385,24.270,24.117,23.930,23.728,23.533,23.360,23.216,23.096,22.990,22.891,22.796,22.705,
-22.612,22.507,22.378,22.214,22.014,21.785,21.540,21.293,21.052,20.818,20.591,20.369,20.153,19.947,19.750,19.561,
-19.374,19.182,18.983,18.773,18.555,18.334,18.118,17.916,17.739,17.596,17.488,17.409,17.344,17.276,17.191,17.085,
-16.959,16.821,16.676,16.525,16.363,16.189,16.009,15.834,15.679,15.552,15.450,15.361,15.263,15.134,14.959,14.729,
-14.444,14.111,13.740,13.351,12.966,12.609,12.294,12.023,11.779,11.536,11.266,10.954,10.603,10.232,9.866,9.524,
-9.209,8.914,8.624,8.331,8.039,7.763,7.525,7.340,7.213,7.135,7.083,7.030,6.957,6.856,6.729,6.592,
-6.456,6.332,6.217,6.102,5.973,5.820,5.638,5.427,5.188,4.917,4.607,4.253,3.861,3.451,3.055,2.703,
-2.406,2.156,1.918,1.653,1.336,.966,.570,.185,-.162,-.468,-.757,-1.063,-1.414,-1.818,-2.265,-2.737,
--3.220,-3.713,-4.219,-4.738,-5.258,-5.754,-6.199,-6.580,-6.902,-7.178,-7.425,-7.642,-7.820,-7.946,-8.024,-8.081,
--8.158,-8.283,-8.452,-8.620,-8.722,-8.704,-8.563,-8.363,-8.212,-8.228,-8.485,-8.987,-9.669,-10.434,-11.191,-11.891,
--12.534,-13.152,-13.776,-14.420,-15.064,-15.671,-16.203,-16.642,-16.994,-17.288,-17.565,-17.865,-18.219,-18.644,-19.137,-19.676,
--20.222,-20.729,-21.157,-21.488,-21.735,-21.933,-22.130,-22.366,-22.654,-22.980,-23.315,-23.631,-23.917,-24.182,-24.447,-24.731,
--25.039,-25.363,-25.684,-25.992,-26.287,-26.583,-26.897,-27.239,-27.607,-27.988,-28.368,-28.739,-29.102,-29.468,-29.846,-30.240,
--30.643,-31.042,-31.417,-31.749,-32.023,-32.234,-32.391,-32.520,-32.654,-32.828,-33.058,-33.334,-33.620,-33.869,-34.047,-34.152,
--34.215,-34.285,-34.406,-34.591,-34.822,-35.054,-35.248,-35.382,-35.460,-35.498,-35.510,-35.494,-35.441,-35.349,-35.237,-35.146,
--35.120,-35.189,-35.349,-35.568,-35.801,-36.008,-36.171,-36.290,-36.369,-36.408,-36.405,-36.362,-36.297,-36.244,-36.233,-36.271,
--36.332,-36.361,-36.308,-36.154,-35.926,-35.692,-35.527,-35.483,-35.569,-35.759,-36.010,-36.284,-36.557,-36.817,-37.053,-37.254,
--37.409,-37.522,-37.617,-37.723,-37.861,-38.027,-38.190,-38.309,-38.353,-38.321,-38.237,-38.139,-38.053,-37.994,-37.966,-37.981,
--38.064,-38.246,-38.538,-38.913,-39.303,-39.621,-39.791,-39.785,-39.627,-39.383,-39.127,-38.922,-38.802,-38.785,-38.874,-39.064,
--39.338,-39.661,-39.985,-40.263,-40.466,-40.589,-40.647,-40.651,-40.599,-40.475,-40.270,-40.003,-39.723,-39.491,-39.340,-39.244,
--39.125,-38.891,-38.496,-37.972,-37.423,-36.964,-36.656,-36.465,-36.290,-36.020,-35.615,-35.130,-34.677,-34.351,-34.158,-34.009,
--33.770,-33.365,-32.839,-32.348,-32.071,-32.099,-32.355,-32.627,-32.670,-32.350,-31.727,-31.034,-30.549,-30.442,-30.677,-31.020,
--31.160,-30.862,-30.077,-28.956,-27.757,-26.715,-25.940,-25.399,-24.976,-24.559,-24.111,-23.670,-23.300,-23.027,-22.803,-22.527,
--22.099,-21.483,-20.733,-19.964,-19.294,-18.789,-18.433,-18.149,-17.843,-17.450,-16.957,-16.390,-15.782,-15.156,-14.509,-13.836,
--13.145,-12.473,-11.876,-11.401,-11.065,-10.841,-10.670,-10.493,-10.271,-9.997,-9.687,-9.356,-9.006,-8.625,-8.194,-7.714,
--7.206,-6.701,-6.226,-5.779,-5.335,-4.858,-4.329,-3.760,-3.186,-2.645,-2.152,-1.685,-1.201,-.664,-.071,.543,
-1.125,1.635,2.070,2.469,2.879,3.330,3.810,4.276,4.681,5.013,5.306,5.630,6.055,6.617,7.301,8.055,
-8.816,9.538,10.202,10.811,11.367,11.865,12.288,12.622,12.864,13.030,13.146,13.234,13.307,13.370,13.426,13.483,
-13.559,13.670,13.823,14.012,14.214,14.405,14.563,14.675,14.739,14.763,14.757,14.743,14.744,14.779,14.857,14.967,
-15.081,15.162,15.184,15.146,15.069,14.986,14.926,14.894,14.875,14.846,14.793,14.724,14.665,14.649,14.698,14.815,
-14.980,15.163,15.337,15.478,15.577,15.627,15.637,15.624,15.622,15.671,15.806,16.043,16.365,16.732,17.088,17.390,
-17.615,17.771,17.878,17.958,18.022,18.074,18.114,18.149,18.192,18.261,18.364,18.495,18.635,18.761,18.859,18.928,
-18.979,19.028,19.082,19.142,19.198,19.241,19.269,19.285,19.293,19.297,19.287,19.250,19.174,19.058,18.921,18.801,
-18.751,18.816,19.026,19.373,19.816,20.282,20.693,20.986,21.145,21.207,21.261,21.420,21.777,22.362,23.121,23.915,
-24.561,24.890,24.803,24.311,23.535,22.662,21.886,21.345,21.086,21.063,21.162,21.241,21.163,20.813,20.101,18.960,
-17.355,15.299,12.865,10.200,7.502,4.992,2.868,1.276,.295,-.055,.205,1.023,2.320,3.979,5.838,7.695,
-9.337,10.575,11.285,11.440,11.108,10.440,9.625,8.845,8.230,7.833,7.623,7.509,7.383,7.160,6.808,6.354,
-5.859,5.379,4.940,4.527,4.114,3.685,3.267,2.917,2.696,2.626,2.668,2.733,2.725,2.587,2.327,2.009,
-1.709,1.465,1.254,1.005,.644,.143,-.453,-1.044,-1.517,-1.793,-1.857,-1.748,-1.536,-1.289,-1.052,-.855,
--.719,-.666,-.707,-.830,-.985,-1.091,-1.062,-.843,-.435,.100,.661,1.152,1.511,1.734,1.859,1.950,
-2.062,2.222,2.426,2.647,2.852,3.019,3.145,3.246,3.344,3.460,3.597,3.747,3.889,4.009,4.109,4.209,
-4.343,4.536,4.789,5.069,5.322,5.491,5.550,5.516,5.448,5.422,5.498,5.692,5.974,6.283,6.560,6.783,
-6.976,7.211,7.568,8.106,8.830,9.684,10.572,11.389,12.055,12.541,12.867,13.086,13.253,13.410,13.568,13.721,
-13.853,13.961,14.053,14.145,14.248,14.364,14.480,14.576,14.643,14.684,14.723,14.798,14.946,15.189,15.529,15.939,
-16.370,16.768,17.086,17.302,17.424,17.485,17.525,17.564,17.591,17.560,17.410,17.095,16.613,16.015,15.390,14.834,
-14.414,14.147,14.004,13.931,13.881,13.834,13.798,13.797,13.847,13.938,14.038,14.096,14.059,13.885,13.549,13.044,
-12.384,11.602,10.754,9.911,9.156,8.560,8.169,7.992,8.001,8.144,8.359,8.590,8.797,8.961,9.072,9.134,
-9.149,9.128,9.077,9.007,8.926,8.839,8.750,8.656,8.556,8.451,8.341,8.231,8.120,8.002,7.868,7.705,
-7.511,7.294,7.074,6.873,6.708,6.572,6.439,6.269,6.030,5.715,5.349,4.983,4.672,4.444,4.292,4.173,
-4.030,3.824,3.546,3.219,2.881,2.557,2.251,1.947,1.628,1.295,.968,.677,.440,.242,.045,-.192,
--.491,-.836,-1.190,-1.525,-1.853,-2.230,-2.728,-3.381,-4.142,-4.869,-5.372,-5.485,-5.145,-4.425,-3.518,-2.655,
--2.022,-1.699,-1.650,-1.764,-1.927,-2.074,-2.212,-2.392,-2.669,-3.059,-3.525,-3.997,-4.404,-4.708,-4.921,-5.086,
--5.261,-5.483,-5.761,-6.078,-6.402,-6.708,-6.984,-7.230,-7.454,-7.658,-7.840,-7.994,-8.117,-8.214,-8.298,-8.382,
--8.475,-8.576,-8.677,-8.767,-8.844,-8.919,-9.013,-9.153,-9.357,-9.632,-9.965,-10.332,-10.706,-11.066,-11.400,-11.710,
--12.002,-12.290,-12.583,-12.889,-13.208,-13.537,-13.867,-14.185,-14.480,-14.744,-14.980,-15.205,-15.438,-15.698,-15.991,-16.306,
--16.614,-16.889,-17.114,-17.294,-17.457,-17.639,-17.866,-18.138,-18.433,-18.713,-18.944,-19.116,-19.244,-19.362,-19.506,-19.699,
--19.945,-20.236,-20.560,-20.905,-21.268,-21.644,-22.021,-22.389,-22.736,-23.066,-23.395,-23.745,-24.130,-24.543,-24.955,-25.329,
--25.638,-25.887,-26.106,-26.341,-26.624,-26.959,-27.315,-27.641,-27.898,-28.070,-28.173,-28.243,-28.314,-28.404,-28.509,-28.617,
--28.718,-28.815,-28.927,-29.069,-29.246,-29.447,-29.646,-29.818,-29.954,-30.065,-30.177,-30.320,-30.510,-30.740,-30.982,-31.205,
--31.382,-31.513,-31.624,-31.753,-31.935,-32.182,-32.476,-32.775,-33.034,-33.229,-33.374,-33.510,-33.695,-33.969,-34.338,-34.772,
--35.222,-35.643,-36.013,-36.345,-36.667,-37.013,-37.400,-37.828,-38.281,-38.740,-39.187,-39.610,-39.998,-40.339,-40.628,-40.867,
--41.072,-41.267,-41.477,-41.716,-41.980,-42.258,-42.533,-42.798,-43.055,-43.306,-43.551,-43.784,-43.995,-44.186,-44.377,-44.601,
--44.886,-45.240,-45.634,-46.016,-46.326,-46.527,-46.618,-46.635,-46.627,-46.640,-46.695,-46.789,-46.903,-47.019,-47.124,-47.214,
--47.282,-47.321,-47.320,-47.274,-47.185,-47.066,-46.931,-46.792,-46.649,-46.493,-46.318,-46.125,-45.927,-45.741,-45.586,-45.466,
--45.375,-45.294,-45.203,-45.089,-44.949,-44.791,-44.634,-44.502,-44.416,-44.390,-44.422,-44.494,-44.573,-44.616,-44.590,-44.472,
--44.258,-43.957,-43.580,-43.134,-42.619,-42.034,-41.389,-40.708,-40.028,-39.390,-38.819,-38.320,-37.868,-37.424,-36.952,-36.432,
--35.872,-35.304,-34.766,-34.287,-33.872,-33.498,-33.123,-32.706,-32.223,-31.679,-31.099,-30.520,-29.968,-29.447,-28.942,-28.427,
--27.888,-27.331,-26.784,-26.286,-25.863,-25.521,-25.235,-24.961,-24.653,-24.268,-23.777,-23.163,-22.417,-21.546,-20.574,-19.553,
--18.553,-17.653,-16.912,-16.350,-15.942,-15.623,-15.317,-14.963,-14.533,-14.035,-13.501,-12.969,-12.470,-12.017,-11.612,-11.245,
--10.907,-10.589,-10.285,-9.988,-9.695,-9.401,-9.089,-8.737,-8.306,-7.758,-7.058,-6.191,-5.167,-4.019,-2.791,-1.531,
--.286,.905,2.003,2.975,3.801,4.490,5.086,5.662,6.299,7.053,7.937,8.910,9.896,10.817,11.622,12.299,
-12.875,13.390,13.883,14.377,14.886,15.420,15.992,16.620,17.318,18.084,18.909,19.770,20.651,21.539,22.426,23.304,
-24.154,24.957,25.697,26.372,27.001,27.613,28.238,28.894,29.582,30.292,31.015,31.747,32.490,33.242,33.991,34.717,
-35.400,36.036,36.636,37.226,37.833,38.463,39.101,39.718,40.286,40.797,41.267,41.725,42.204,42.717,43.260,43.812,
-44.354,44.872,45.368,45.854,46.343,46.849,47.376,47.925,48.488,49.054,49.609,50.145,50.662,51.173,51.698,52.255,
-52.846,53.456,54.060,54.633,55.168,55.677,56.184,56.711,57.257,57.802,58.314,58.767,59.154,59.485,59.777,60.039,
-60.261,60.424,60.515,60.543,60.537,60.540,60.581,60.663,60.762,60.838,60.859,60.818,60.733,60.637,60.560,60.513,
-60.494,60.487,60.481,60.475,60.477,60.501,60.553,60.631,60.722,60.808,60.874,60.910,60.919,60.908,60.892,60.885,
-60.896,60.933,60.997,61.088,61.200,61.326,61.451,61.556,61.621,61.636,61.607,61.556,61.517,61.511,61.530,61.534,
-61.460,61.255,60.910,60.478,60.064,59.789,59.744,59.948,60.347,60.830,61.278,61.604,61.771,61.795,61.722,61.604,
-61.486,61.400,61.362,61.375,61.418,61.446,61.398,61.216,60.872,60.386,59.824,59.276,58.821,58.499,58.297,58.165,
-58.041,57.873,57.638,57.343,57.008,56.664,56.345,56.083,55.905,55.824,55.829,55.887,55.950,55.983,55.982,55.986,
-56.065,56.278,56.648,57.132,57.635,58.048,58.284,58.315,58.175,57.938,57.678,57.443,57.240,57.048,56.837,56.593,
-56.322,56.049,55.803,55.600,55.444,55.321,55.210,55.092,54.950,54.774,54.559,54.300,53.990,53.618,53.170,52.635,
-52.012,51.316,50.583,49.864,49.210,48.655,48.203,47.827,47.477,47.107,46.686,46.430,45.948,45.477,45.042,44.654,
-44.308,43.991,43.692,43.410,43.157,42.947,42.783,42.654,42.533,42.390,42.206,41.985,41.753,41.542,41.385,41.291,
-41.249,41.227,41.191,41.118,41.011,40.894,40.803,40.771,40.806,40.886,40.969,41.013,40.992,40.908,40.792,40.673,
-40.569,40.466,40.327,40.112,39.803,39.413,38.984,38.561,38.173,37.818,37.471,37.103,36.701,36.279,35.865,35.488,
-35.162,34.885,34.644,34.429,34.235,34.058,33.889,33.704,33.476,33.184,32.831,32.443,32.058,31.699,31.365,31.023,
-30.634,30.168,29.631,29.058,28.498,27.993,27.560,27.190,26.865,26.568,26.294,26.048,25.832,25.648,25.485,25.338,
-25.201,25.076,24.968,24.872,24.780,24.674,24.545,24.392,24.226,24.066,23.925,23.809,23.714,23.632,23.553,23.469,
-23.371,23.244,23.075,22.855,22.585,22.286,21.986,21.715,21.492,21.313,21.162,21.011,20.836,20.624,20.380,20.115,
-19.850,19.603,19.382,19.187,19.009,18.830,18.633,18.409,18.164,17.914,17.682,17.486,17.332,17.209,17.101,16.989,
-16.869,16.741,16.614,16.491,16.367,16.234,16.081,15.911,15.733,15.566,15.425,15.315,15.228,15.151,15.063,14.947,
-14.786,14.564,14.272,13.906,13.481,13.025,12.578,12.180,11.853,11.594,11.375,11.159,10.910,10.611,10.267,9.901,
-9.535,9.188,8.862,8.550,8.242,7.933,7.628,7.343,7.100,6.919,6.806,6.756,6.744,6.738,6.706,6.626,
-6.492,6.317,6.124,5.937,5.771,5.627,5.495,5.356,5.189,4.978,4.709,4.380,3.995,3.575,3.152,2.763,
-2.435,2.177,1.969,1.775,1.553,1.279,.959,.619,.295,.005,-.257,-.525,-.837,-1.219,-1.667,-2.153,
--2.645,-3.123,-3.590,-4.066,-4.570,-5.107,-5.658,-6.196,-6.694,-7.141,-7.542,-7.905,-8.230,-8.506,-8.719,-8.865,
--8.957,-9.022,-9.080,-9.130,-9.142,-9.078,-8.920,-8.698,-8.493,-8.417,-8.563,-8.969,-9.594,-10.339,-11.090,-11.765,
--12.343,-12.859,-13.380,-13.955,-14.593,-15.257,-15.885,-16.421,-16.844,-17.169,-17.444,-17.726,-18.060,-18.469,-18.951,-19.484,
--20.034,-20.561,-21.031,-21.420,-21.725,-21.962,-22.163,-22.366,-22.598,-22.867,-23.162,-23.459,-23.741,-24.006,-24.270,-24.556,
--24.881,-25.241,-25.618,-25.980,-26.307,-26.596,-26.864,-27.141,-27.447,-27.792,-28.166,-28.552,-28.936,-29.311,-29.683,-30.062,
--30.456,-30.866,-31.284,-31.694,-32.079,-32.417,-32.695,-32.907,-33.064,-33.192,-33.325,-33.492,-33.704,-33.945,-34.178,-34.367,
--34.494,-34.573,-34.641,-34.744,-34.908,-35.131,-35.378,-35.607,-35.783,-35.892,-35.937,-35.928,-35.871,-35.772,-35.642,-35.507,
--35.406,-35.383,-35.460,-35.634,-35.868,-36.116,-36.334,-36.496,-36.596,-36.636,-36.626,-36.573,-36.498,-36.434,-36.418,-36.476,
--36.602,-36.750,-36.851,-36.841,-36.695,-36.440,-36.138,-35.860,-35.658,-35.547,-35.522,-35.572,-35.699,-35.908,-36.197,-36.536,
--36.877,-37.167,-37.382,-37.534,-37.670,-37.833,-38.039,-38.259,-38.438,-38.525,-38.499,-38.377,-38.203,-38.018,-37.847,-37.701,
--37.594,-37.550,-37.604,-37.783,-38.078,-38.440,-38.788,-39.044,-39.160,-39.132,-38.994,-38.794,-38.577,-38.380,-38.230,-38.158,
--38.195,-38.358,-38.638,-39.001,-39.392,-39.759,-40.064,-40.288,-40.421,-40.456,-40.387,-40.226,-40.007,-39.786,-39.614,-39.504,
--39.419,-39.277,-39.005,-38.579,-38.051,-37.522,-37.088,-36.780,-36.549,-36.295,-35.941,-35.485,-35.007,-34.620,-34.383,-34.260,
--34.127,-33.853,-33.393,-32.832,-32.349,-32.112,-32.170,-32.407,-32.598,-32.534,-32.157,-31.595,-31.106,-30.921,-31.107,-31.510,
--31.816,-31.715,-31.050,-29.899,-28.525,-27.245,-26.281,-25.678,-25.321,-25.031,-24.680,-24.243,-23.786,-23.395,-23.101,-22.851,
--22.538,-22.069,-21.422,-20.663,-19.909,-19.265,-18.773,-18.397,-18.055,-17.670,-17.205,-16.675,-16.126,-15.596,-15.091,-14.591,
--14.066,-13.507,-12.938,-12.402,-11.937,-11.555,-11.232,-10.925,-10.599,-10.245,-9.884,-9.546,-9.243,-8.955,-8.637,-8.244,
--7.761,-7.214,-6.657,-6.138,-5.675,-5.245,-4.800,-4.302,-3.743,-3.155,-2.580,-2.045,-1.541,-1.033,-.487,.097,
-.685,1.224,1.677,2.053,2.400,2.777,3.218,3.707,4.188,4.606,4.945,5.240,5.562,5.976,6.504,7.118,
-7.758,8.375,8.958,9.529,10.125,10.757,11.400,11.997,12.491,12.854,13.100,13.268,13.402,13.524,13.636,13.728,
-13.798,13.857,13.928,14.031,14.166,14.318,14.460,14.570,14.642,14.682,14.704,14.724,14.758,14.817,14.907,15.027,
-15.163,15.288,15.371,15.392,15.354,15.285,15.225,15.203,15.227,15.272,15.297,15.267,15.176,15.047,14.929,14.869,
-14.903,15.035,15.245,15.495,15.739,15.935,16.051,16.075,16.018,15.916,15.819,15.776,15.822,15.965,16.190,16.463,
-16.751,17.031,17.288,17.517,17.710,17.861,17.961,18.015,18.037,18.055,18.098,18.185,18.317,18.482,18.657,18.819,
-18.956,19.063,19.147,19.217,19.282,19.346,19.410,19.472,19.529,19.578,19.615,19.632,19.621,19.569,19.470,19.332,
-19.184,19.081,19.084,19.242,19.561,19.999,20.466,20.859,21.109,21.210,21.234,21.308,21.558,22.056,22.780,23.610,
-24.363,24.853,24.962,24.673,24.082,23.359,22.685,22.194,21.929,21.844,21.839,21.803,21.660,21.374,20.921,20.252,
-19.262,17.807,15.758,13.084,9.916,6.551,3.391,.825,-.886,-1.686,-1.711,-1.205,-.401,.567,1.703,3.089,
-4.799,6.800,8.909,10.825,12.229,12.891,12.762,11.987,10.852,9.678,8.708,8.049,7.657,7.401,7.138,6.778,
-6.309,5.776,5.232,4.707,4.195,3.683,3.185,2.753,2.467,2.380,2.478,2.668,2.809,2.776,2.523,2.096,
-1.606,1.159,.794,.465,.082,-.423,-1.030,-1.624,-2.033,-2.113,-1.818,-1.219,-.479,.228,.775,1.120,
-1.285,1.322,1.261,1.102,.828,.439,-.019,-.458,-.769,-.862,-.704,-.326,.186,.723,1.192,1.541,
-1.770,1.922,2.060,2.238,2.480,2.770,3.066,3.323,3.516,3.654,3.770,3.900,4.065,4.251,4.429,4.569,
-4.669,4.760,4.888,5.090,5.368,5.682,5.965,6.158,6.239,6.231,6.192,6.186,6.259,6.419,6.647,6.912,
-7.193,7.488,7.817,8.202,8.659,9.187,9.764,10.360,10.943,11.492,11.995,12.454,12.869,13.236,13.547,13.789,
-13.960,14.069,14.145,14.225,14.342,14.510,14.715,14.927,15.104,15.218,15.269,15.282,15.305,15.387,15.569,15.861,
-16.248,16.685,17.115,17.483,17.747,17.894,17.937,17.904,17.820,17.694,17.512,17.246,16.875,16.411,15.897,15.403,
-14.997,14.714,14.546,14.445,14.354,14.231,14.069,13.892,13.733,13.611,13.513,13.398,13.213,12.913,12.479,11.921,
-11.275,10.592,9.932,9.358,8.926,8.682,8.646,8.808,9.123,9.521,9.923,10.265,10.507,10.636,10.666,10.621,
-10.522,10.386,10.222,10.032,9.821,9.593,9.353,9.110,8.868,8.632,8.409,8.205,8.023,7.863,7.719,7.578,
-7.425,7.246,7.039,6.815,6.591,6.384,6.199,6.024,5.835,5.603,5.317,4.984,4.633,4.298,4.005,3.756,
-3.530,3.300,3.049,2.782,2.519,2.285,2.085,1.899,1.689,1.423,1.097,.738,.394,.103,-.129,-.332,
--.556,-.839,-1.185,-1.560,-1.922,-2.252,-2.578,-2.964,-3.478,-4.135,-4.873,-5.555,-6.018,-6.132,-5.857,-5.259,
--4.484,-3.708,-3.076,-2.670,-2.499,-2.520,-2.670,-2.892,-3.151,-3.433,-3.735,-4.061,-4.407,-4.766,-5.124,-5.466,
--5.780,-6.059,-6.306,-6.531,-6.747,-6.965,-7.189,-7.413,-7.627,-7.822,-7.995,-8.148,-8.286,-8.415,-8.534,-8.641,
--8.736,-8.825,-8.918,-9.027,-9.158,-9.305,-9.457,-9.600,-9.732,-9.867,-10.029,-10.244,-10.526,-10.863,-11.225,-11.571,
--11.870,-12.115,-12.322,-12.528,-12.768,-13.066,-13.422,-13.816,-14.218,-14.601,-14.947,-15.254,-15.528,-15.778,-16.014,-16.238,
--16.447,-16.636,-16.801,-16.944,-17.077,-17.216,-17.379,-17.577,-17.805,-18.047,-18.283,-18.497,-18.689,-18.874,-19.078,-19.317,
--19.596,-19.902,-20.216,-20.525,-20.831,-21.146,-21.487,-21.858,-22.249,-22.639,-23.009,-23.356,-23.687,-24.016,-24.346,-24.667,
--24.957,-25.199,-25.396,-25.576,-25.777,-26.030,-26.337,-26.672,-26.989,-27.251,-27.443,-27.580,-27.695,-27.816,-27.955,-28.105,
--28.250,-28.382,-28.507,-28.640,-28.799,-28.985,-29.185,-29.375,-29.538,-29.675,-29.803,-29.946,-30.126,-30.345,-30.584,-30.813,
--31.005,-31.149,-31.258,-31.359,-31.486,-31.661,-31.886,-32.139,-32.392,-32.624,-32.831,-33.034,-33.264,-33.547,-33.885,-34.256,
--34.626,-34.963,-35.264,-35.551,-35.865,-36.241,-36.689,-37.191,-37.708,-38.199,-38.643,-39.037,-39.391,-39.714,-40.008,-40.270,
--40.500,-40.710,-40.921,-41.155,-41.418,-41.698,-41.974,-42.225,-42.447,-42.650,-42.852,-43.062,-43.274,-43.478,-43.668,-43.858,
--44.078,-44.357,-44.704,-45.090,-45.465,-45.771,-45.977,-46.091,-46.150,-46.203,-46.283,-46.398,-46.533,-46.666,-46.787,-46.899,
--47.011,-47.122,-47.214,-47.257,-47.221,-47.095,-46.892,-46.641,-46.377,-46.125,-45.895,-45.688,-45.500,-45.329,-45.180,-45.057,
--44.963,-44.891,-44.832,-44.773,-44.704,-44.621,-44.530,-44.443,-44.379,-44.357,-44.385,-44.458,-44.549,-44.619,-44.627,-44.545,
--44.368,-44.106,-43.782,-43.408,-42.983,-42.497,-41.939,-41.312,-40.640,-39.963,-39.322,-38.739,-38.218,-37.738,-37.267,-36.778,
--36.261,-35.718,-35.167,-34.632,-34.130,-33.668,-33.244,-32.839,-32.431,-31.997,-31.524,-31.012,-30.471,-29.915,-29.356,-28.795,
--28.225,-27.643,-27.056,-26.485,-25.957,-25.494,-25.099,-24.755,-24.428,-24.081,-23.686,-23.223,-22.681,-22.047,-21.311,-20.476,
--19.567,-18.642,-17.779,-17.057,-16.520,-16.162,-15.924,-15.716,-15.454,-15.091,-14.627,-14.105,-13.585,-13.115,-12.717,-12.381,
--12.079,-11.781,-11.466,-11.137,-10.804,-10.485,-10.181,-9.873,-9.518,-9.063,-8.463,-7.700,-6.793,-5.791,-4.754,-3.727,
--2.727,-1.739,-.739,.290,1.336,2.369,3.355,4.286,5.186,6.104,7.087,8.149,9.261,10.357,11.364,12.231,
-12.942,13.516,13.988,14.390,14.749,15.089,15.443,15.854,16.370,17.017,17.793,18.659,19.562,20.456,21.320,22.157,
-22.987,23.821,24.651,25.453,26.201,26.886,27.520,28.133,28.758,29.418,30.119,30.857,31.619,32.396,33.175,33.943,
-34.683,35.381,36.030,36.637,37.218,37.794,38.374,38.958,39.532,40.085,40.613,41.124,41.631,42.146,42.670,43.198,
-43.720,44.231,44.735,45.238,45.747,46.268,46.801,47.349,47.910,48.484,49.064,49.639,50.196,50.729,51.245,51.764,
-52.304,52.876,53.470,54.062,54.628,55.157,55.659,56.156,56.668,57.196,57.725,58.225,58.673,59.063,59.403,59.703,
-59.964,60.173,60.314,60.379,60.387,60.373,60.375,60.415,60.488,60.564,60.611,60.612,60.570,60.511,60.458,60.425,
-60.406,60.388,60.360,60.325,60.299,60.305,60.357,60.456,60.586,60.722,60.836,60.906,60.920,60.885,60.822,60.763,
-60.742,60.780,60.879,61.017,61.158,61.272,61.340,61.360,61.342,61.296,61.221,61.113,60.976,60.823,60.681,60.572,
-60.498,60.432,60.328,60.154,59.914,59.666,59.500,59.503,59.713,60.103,60.586,61.053,61.417,61.638,61.727,61.728,
-61.686,61.631,61.572,61.507,61.426,61.313,61.145,60.887,60.511,60.008,59.408,58.787,58.240,57.852,57.658,57.627,
-57.677,57.707,57.639,57.446,57.154,56.827,56.532,56.314,56.188,56.137,56.127,56.119,56.088,56.033,55.977,55.969,
-56.064,56.306,56.702,57.208,57.737,58.181,58.449,58.501,58.359,58.097,57.806,57.558,57.382,57.258,57.138,56.968,
-56.724,56.412,56.072,55.752,55.496,55.322,55.220,55.160,55.097,54.995,54.831,54.602,54.315,53.985,53.613,53.192,
-52.703,52.130,51.477,50.767,50.047,49.367,48.762,48.240,47.779,47.344,46.899,46.430,46.184,45.679,45.200,44.760,
-44.361,43.993,43.645,43.317,43.024,42.788,42.623,42.524,42.459,42.382,42.252,42.051,41.790,41.509,41.251,41.053,
-40.924,40.847,40.792,40.724,40.626,40.505,40.388,40.309,40.296,40.352,40.454,40.560,40.626,40.626,40.564,40.471,
-40.381,40.315,40.260,40.176,40.019,39.759,39.410,39.014,38.628,38.292,38.010,37.751,37.468,37.126,36.716,36.260,
-35.793,35.349,34.953,34.615,34.340,34.128,33.972,33.852,33.733,33.573,33.345,33.044,32.698,32.344,32.011,31.701,
-31.384,31.016,30.569,30.042,29.471,28.905,28.389,27.945,27.570,27.249,26.969,26.725,26.520,26.354,26.219,26.100,
-25.978,25.846,25.705,25.563,25.430,25.307,25.193,25.080,24.964,24.847,24.731,24.619,24.514,24.418,24.331,24.252,
-24.171,24.069,23.920,23.703,23.413,23.067,22.704,22.371,22.101,21.904,21.759,21.630,21.479,21.282,21.035,20.750,
-20.446,20.146,19.865,19.612,19.388,19.187,18.991,18.783,18.547,18.280,17.996,17.716,17.466,17.257,17.087,16.942,
-16.804,16.665,16.522,16.383,16.249,16.119,15.985,15.839,15.684,15.531,15.396,15.295,15.231,15.193,15.164,15.121,
-15.040,14.901,14.686,14.381,13.983,13.507,12.986,12.471,12.013,11.650,11.393,11.222,11.094,10.958,10.771,10.510,
-10.176,9.787,9.372,8.959,8.568,8.204,7.864,7.541,7.234,6.952,6.717,6.549,6.460,6.440,6.458,6.468,
-6.429,6.318,6.142,5.929,5.718,5.537,5.392,5.270,5.138,4.968,4.737,4.439,4.080,3.680,3.264,2.864,
-2.505,2.207,1.971,1.781,1.604,1.410,1.181,.921,.655,.407,.186,-.024,-.263,-.571,-.970,-1.448,
--1.967,-2.483,-2.969,-3.427,-3.888,-4.385,-4.940,-5.546,-6.179,-6.803,-7.393,-7.938,-8.432,-8.869,-9.235,-9.510,
--9.680,-9.744,-9.716,-9.617,-9.461,-9.256,-9.011,-8.754,-8.542,-8.454,-8.569,-8.928,-9.512,-10.239,-10.997,-11.683,
--12.248,-12.708,-13.130,-13.594,-14.148,-14.788,-15.462,-16.099,-16.641,-17.070,-17.410,-17.714,-18.037,-18.417,-18.864,-19.363,
--19.885,-20.397,-20.869,-21.281,-21.625,-21.904,-22.134,-22.341,-22.553,-22.790,-23.060,-23.352,-23.650,-23.938,-24.216,-24.496,
--24.799,-25.141,-25.517,-25.906,-26.277,-26.602,-26.876,-27.120,-27.369,-27.656,-28.000,-28.398,-28.826,-29.256,-29.667,-30.052,
--30.415,-30.771,-31.131,-31.508,-31.903,-32.311,-32.717,-33.096,-33.423,-33.680,-33.863,-33.993,-34.104,-34.229,-34.387,-34.571,
--34.761,-34.931,-35.071,-35.191,-35.316,-35.470,-35.659,-35.867,-36.062,-36.211,-36.295,-36.309,-36.263,-36.171,-36.050,-35.922,
--35.814,-35.760,-35.787,-35.903,-36.092,-36.315,-36.528,-36.696,-36.802,-36.850,-36.855,-36.829,-36.790,-36.757,-36.757,-36.822,
--36.967,-37.178,-37.407,-37.587,-37.657,-37.587,-37.387,-37.097,-36.759,-36.401,-36.041,-35.704,-35.433,-35.294,-35.347,-35.612,
--36.045,-36.550,-37.016,-37.364,-37.582,-37.716,-37.830,-37.966,-38.118,-38.239,-38.283,-38.230,-38.104,-37.951,-37.809,-37.688,
--37.573,-37.444,-37.307,-37.195,-37.156,-37.224,-37.396,-37.629,-37.867,-38.058,-38.177,-38.221,-38.200,-38.124,-38.001,-37.851,
--37.709,-37.622,-37.640,-37.789,-38.064,-38.432,-38.844,-39.255,-39.628,-39.933,-40.145,-40.244,-40.230,-40.127,-39.979,-39.831,
--39.700,-39.564,-39.371,-39.071,-38.653,-38.157,-37.657,-37.212,-36.836,-36.491,-36.120,-35.698,-35.260,-34.886,-34.646,-34.542,
--34.486,-34.346,-34.019,-33.509,-32.938,-32.485,-32.281,-32.324,-32.474,-32.531,-32.360,-31.980,-31.568,-31.351,-31.469,-31.869,
--32.303,-32.445,-32.055,-31.102,-29.784,-28.430,-27.340,-26.652,-26.304,-26.097,-25.822,-25.365,-24.748,-24.085,-23.495,-23.023,
--22.629,-22.218,-21.713,-21.101,-20.437,-19.807,-19.275,-18.845,-18.471,-18.084,-17.636,-17.125,-16.588,-16.069,-15.592,-15.149,
--14.707,-14.231,-13.714,-13.175,-12.649,-12.166,-11.732,-11.326,-10.920,-10.501,-10.080,-9.689,-9.359,-9.091,-8.850,-8.575,
--8.208,-7.732,-7.176,-6.603,-6.074,-5.610,-5.184,-4.741,-4.229,-3.636,-2.994,-2.360,-1.775,-1.243,-.735,-.215,
-.330,.873,1.369,1.788,2.140,2.476,2.856,3.310,3.816,4.313,4.741,5.085,5.382,5.708,6.123,6.637,
-7.207,7.765,8.268,8.727,9.198,9.745,10.391,11.103,11.801,12.405,12.871,13.208,13.459,13.669,13.857,14.016,
-14.126,14.180,14.199,14.215,14.257,14.331,14.418,14.493,14.537,14.554,14.566,14.598,14.666,14.770,14.902,15.052,
-15.210,15.367,15.506,15.609,15.661,15.662,15.632,15.603,15.605,15.644,15.701,15.737,15.715,15.623,15.478,15.328,
-15.225,15.214,15.312,15.507,15.764,16.035,16.266,16.417,16.463,16.403,16.262,16.084,15.917,15.804,15.771,15.824,
-15.957,16.154,16.398,16.669,16.945,17.203,17.421,17.587,17.706,17.794,17.877,17.977,18.109,18.274,18.460,18.654,
-18.838,18.998,19.129,19.231,19.310,19.379,19.447,19.522,19.600,19.676,19.741,19.791,19.823,19.833,19.809,19.739,
-19.623,19.484,19.373,19.361,19.502,19.804,20.214,20.626,20.932,21.076,21.087,21.081,21.212,21.601,22.274,23.142,
-24.025,24.720,25.073,25.033,24.668,24.127,23.585,23.176,22.948,22.859,22.799,22.655,22.356,21.912,21.391,20.859,
-20.307,19.598,18.485,16.703,14.103,10.769,7.055,3.505,.673,-1.076,-1.695,-1.462,-.835,-.247,.092,.272,
-.615,1.503,3.164,5.540,8.276,10.846,12.741,13.650,13.546,12.661,11.368,10.034,8.902,8.055,7.448,6.979,
-6.560,6.149,5.737,5.316,4.859,4.331,3.719,3.065,2.475,2.071,1.935,2.051,2.298,2.493,2.477,2.187,
-1.671,1.058,.474,-.026,-.469,-.922,-1.416,-1.887,-2.174,-2.091,-1.520,-.490,.814,2.117,3.162,3.802,
-4.041,4.002,3.843,3.681,3.535,3.344,3.010,2.469,1.729,.890,.107,-.459,-.694,-.568,-.148,.436,
-1.031,1.519,1.854,2.065,2.232,2.434,2.707,3.031,3.348,3.600,3.767,3.881,3.998,4.168,4.399,4.652,
-4.870,5.015,5.093,5.154,5.264,5.464,5.745,6.050,6.310,6.469,6.522,6.508,6.495,6.550,6.718,7.011,
-7.410,7.875,8.361,8.822,9.224,9.554,9.823,10.067,10.333,10.666,11.090,11.601,12.166,12.729,13.234,13.633,
-13.905,14.057,14.128,14.178,14.269,14.451,14.739,15.115,15.527,15.913,16.221,16.426,16.533,16.574,16.591,16.621,
-16.692,16.811,16.974,17.160,17.346,17.504,17.613,17.664,17.659,17.603,17.498,17.337,17.103,16.784,16.386,15.942,
-15.502,15.117,14.811,14.575,14.369,14.143,13.863,13.525,13.154,12.781,12.425,12.081,11.724,11.326,10.878,10.402,
-9.941,9.548,9.270,9.132,9.138,9.278,9.531,9.867,10.252,10.646,11.009,11.306,11.519,11.646,11.703,11.708,
-11.675,11.605,11.487,11.304,11.046,10.716,10.327,9.908,9.484,9.081,8.715,8.392,8.115,7.880,7.682,7.514,
-7.364,7.216,7.053,6.862,6.637,6.380,6.105,5.826,5.556,5.299,5.047,4.793,4.528,4.250,3.963,3.673,
-3.382,3.087,2.787,2.485,2.194,1.935,1.722,1.553,1.405,1.240,1.020,.732,.394,.045,-.271,-.534,
--.756,-.976,-1.237,-1.558,-1.924,-2.297,-2.639,-2.945,-3.251,-3.621,-4.114,-4.743,-5.457,-6.136,-6.635,-6.826,
--6.645,-6.120,-5.364,-4.546,-3.841,-3.383,-3.228,-3.346,-3.643,-4.001,-4.325,-4.575,-4.773,-4.976,-5.244,-5.595,
--6.000,-6.393,-6.712,-6.924,-7.051,-7.148,-7.276,-7.469,-7.716,-7.973,-8.191,-8.339,-8.423,-8.475,-8.533,-8.618,
--8.731,-8.859,-8.992,-9.133,-9.300,-9.507,-9.751,-10.003,-10.222,-10.376,-10.467,-10.530,-10.625,-10.800,-11.070,-11.404,
--11.742,-12.027,-12.230,-12.368,-12.492,-12.662,-12.918,-13.266,-13.682,-14.130,-14.575,-14.998,-15.389,-15.741,-16.045,-16.289,
--16.466,-16.581,-16.654,-16.712,-16.781,-16.874,-16.992,-17.129,-17.275,-17.423,-17.572,-17.727,-17.898,-18.100,-18.347,-18.649,
--19.003,-19.392,-19.785,-20.154,-20.482,-20.778,-21.071,-21.392,-21.762,-22.175,-22.602,-23.007,-23.365,-23.669,-23.933,-24.176,
--24.408,-24.625,-24.820,-24.990,-25.146,-25.313,-25.514,-25.755,-26.025,-26.298,-26.551,-26.772,-26.968,-27.151,-27.331,-27.507,
--27.670,-27.814,-27.940,-28.063,-28.199,-28.356,-28.527,-28.696,-28.848,-28.983,-29.119,-29.281,-29.489,-29.745,-30.029,-30.306,
--30.547,-30.737,-30.885,-31.014,-31.153,-31.323,-31.524,-31.746,-31.970,-32.181,-32.378,-32.576,-32.798,-33.066,-33.381,-33.726,
--34.070,-34.381,-34.649,-34.896,-35.168,-35.513,-35.957,-36.486,-37.053,-37.596,-38.065,-38.446,-38.757,-39.029,-39.291,-39.549,
--39.796,-40.023,-40.231,-40.437,-40.661,-40.909,-41.170,-41.420,-41.639,-41.824,-41.995,-42.180,-42.395,-42.640,-42.896,-43.146,
--43.388,-43.640,-43.923,-44.249,-44.601,-44.941,-45.227,-45.436,-45.577,-45.683,-45.788,-45.913,-46.053,-46.192,-46.317,-46.428,
--46.543,-46.675,-46.822,-46.957,-47.037,-47.023,-46.901,-46.681,-46.400,-46.099,-45.810,-45.552,-45.329,-45.141,-44.985,-44.858,
--44.757,-44.679,-44.617,-44.566,-44.523,-44.484,-44.447,-44.411,-44.379,-44.358,-44.361,-44.392,-44.446,-44.498,-44.510,-44.445,
--44.282,-44.025,-43.696,-43.325,-42.928,-42.506,-42.041,-41.521,-40.947,-40.339,-39.732,-39.152,-38.613,-38.106,-37.612,-37.116,
--36.608,-36.089,-35.564,-35.037,-34.506,-33.976,-33.458,-32.969,-32.525,-32.124,-31.749,-31.363,-30.932,-30.435,-29.871,-29.261,
--28.628,-27.997,-27.381,-26.789,-26.231,-25.717,-25.257,-24.846,-24.467,-24.092,-23.694,-23.261,-22.792,-22.290,-21.752,-21.162,
--20.500,-19.758,-18.963,-18.177,-17.478,-16.934,-16.563,-16.330,-16.154,-15.946,-15.649,-15.253,-14.798,-14.347,-13.951,-13.634,
--13.377,-13.142,-12.887,-12.588,-12.245,-11.878,-11.508,-11.141,-10.759,-10.321,-9.777,-9.093,-8.263,-7.324,-6.338,-5.371,
--4.465,-3.619,-2.794,-1.934,-.997,.027,1.114,2.222,3.325,4.421,5.537,6.701,7.922,9.170,10.388,11.515,
-12.506,13.346,14.043,14.610,15.054,15.378,15.602,15.774,15.977,16.304,16.823,17.546,18.422,19.363,20.279,21.123,
-21.899,22.649,23.420,24.231,25.065,25.880,26.635,27.317,27.942,28.552,29.190,29.883,30.635,31.431,32.248,33.060,
-33.849,34.600,35.303,35.958,36.569,37.147,37.701,38.241,38.770,39.291,39.807,40.326,40.858,41.406,41.965,42.523,
-43.068,43.596,44.113,44.633,45.167,45.716,46.271,46.821,47.361,47.895,48.437,48.997,49.575,50.157,50.730,51.284,
-51.821,52.356,52.896,53.444,53.988,54.517,55.028,55.532,56.048,56.589,57.150,57.708,58.232,58.701,59.105,59.449,
-59.741,59.974,60.137,60.219,60.226,60.187,60.147,60.144,60.193,60.276,60.359,60.410,60.420,60.401,60.376,60.361,
-60.357,60.347,60.317,60.269,60.221,60.202,60.238,60.333,60.473,60.632,60.777,60.882,60.931,60.917,60.850,60.754,
-60.671,60.644,60.704,60.848,61.041,61.224,61.340,61.363,61.301,61.188,61.056,60.916,60.759,60.572,60.362,60.164,
-60.030,59.995,60.052,60.145,60.196,60.152,60.015,59.852,59.763,59.825,60.062,60.427,60.830,61.186,61.446,61.608,
-61.696,61.734,61.726,61.654,61.499,61.257,60.944,60.587,60.204,59.799,59.366,58.910,58.459,58.063,57.774,57.616,
-57.566,57.560,57.517,57.384,57.153,56.869,56.604,56.419,56.336,56.329,56.345,56.328,56.252,56.134,56.031,56.012,
-56.139,56.435,56.878,57.401,57.907,58.302,58.519,58.538,58.392,58.151,57.899,57.703,57.588,57.537,57.499,57.411,
-57.227,56.935,56.557,56.147,55.766,55.464,55.264,55.155,55.094,55.028,54.906,54.703,54.424,54.093,53.743,53.391,
-53.029,52.628,52.153,51.583,50.926,50.220,49.515,48.855,48.258,47.716,47.203,46.695,46.184,46.143,45.598,45.065,
-44.563,44.101,43.673,43.274,42.910,42.598,42.364,42.223,42.167,42.160,42.147,42.077,41.924,41.691,41.412,41.130,
-40.881,40.682,40.527,40.398,40.274,40.144,40.012,39.893,39.809,39.779,39.809,39.885,39.982,40.067,40.114,40.116,
-40.085,40.042,40.003,39.962,39.891,39.756,39.534,39.234,38.895,38.568,38.293,38.078,37.894,37.693,37.433,37.092,
-36.679,36.222,35.754,35.302,34.887,34.528,34.239,34.026,33.878,33.762,33.633,33.448,33.192,32.878,32.541,32.215,
-31.909,31.604,31.263,30.852,30.366,29.832,29.297,28.806,28.388,28.047,27.769,27.537,27.337,27.163,27.011,26.873,
-26.741,26.605,26.463,26.315,26.168,26.031,25.907,25.798,25.702,25.616,25.531,25.441,25.339,25.228,25.116,25.015,
-24.930,24.852,24.751,24.590,24.343,24.011,23.630,23.257,22.941,22.707,22.537,22.384,22.198,21.950,21.642,21.300,
-20.959,20.640,20.347,20.071,19.800,19.531,19.265,19.007,18.753,18.493,18.219,17.932,17.644,17.376,17.144,16.954,
-16.795,16.649,16.501,16.344,16.181,16.020,15.866,15.720,15.582,15.453,15.339,15.246,15.179,15.135,15.100,15.056,
-14.981,14.858,14.672,14.413,14.078,13.669,13.200,12.697,12.199,11.749,11.384,11.127,10.978,10.910,10.875,10.815,
-10.674,10.419,10.047,9.585,9.083,8.592,8.148,7.762,7.423,7.111,6.818,6.554,6.345,6.218,6.176,6.197,
-6.229,6.221,6.138,5.977,5.767,5.550,5.359,5.203,5.066,4.914,4.718,4.459,4.140,3.774,3.380,2.981,
-2.593,2.235,1.921,1.658,1.443,1.260,1.088,.910,.721,.527,.341,.167,-.011,-.223,-.505,-.876,
--1.329,-1.831,-2.342,-2.832,-3.302,-3.777,-4.296,-4.886,-5.551,-6.272,-7.010,-7.727,-8.396,-8.995,-9.509,-9.917,
--10.200,-10.338,-10.324,-10.169,-9.897,-9.547,-9.166,-8.812,-8.549,-8.447,-8.559,-8.910,-9.476,-10.182,-10.928,-11.615,
--12.186,-12.644,-13.040,-13.451,-13.939,-14.523,-15.173,-15.829,-16.429,-16.937,-17.354,-17.715,-18.065,-18.446,-18.877,-19.353,
--19.853,-20.350,-20.820,-21.246,-21.617,-21.933,-22.197,-22.425,-22.641,-22.872,-23.140,-23.452,-23.797,-24.149,-24.482,-24.777,
--25.037,-25.282,-25.538,-25.823,-26.134,-26.452,-26.752,-27.022,-27.271,-27.528,-27.828,-28.194,-28.626,-29.100,-29.579,-30.029,
--30.431,-30.787,-31.114,-31.433,-31.770,-32.138,-32.545,-32.982,-33.424,-33.836,-34.180,-34.431,-34.587,-34.673,-34.738,-34.826,
--34.967,-35.161,-35.387,-35.614,-35.821,-36.001,-36.161,-36.309,-36.445,-36.558,-36.632,-36.654,-36.620,-36.540,-36.431,-36.314,
--36.214,-36.154,-36.156,-36.229,-36.367,-36.547,-36.732,-36.890,-37.000,-37.064,-37.096,-37.114,-37.132,-37.153,-37.184,-37.238,
--37.335,-37.493,-37.707,-37.952,-38.182,-38.349,-38.418,-38.375,-38.213,-37.925,-37.503,-36.954,-36.324,-35.710,-35.245,-35.050,
--35.182,-35.600,-36.177,-36.755,-37.211,-37.501,-37.662,-37.768,-37.874,-37.990,-38.081,-38.106,-38.051,-37.946,-37.842,-37.774,
--37.742,-37.704,-37.613,-37.451,-37.238,-37.031,-36.887,-36.837,-36.874,-36.965,-37.075,-37.180,-37.269,-37.335,-37.369,-37.358,
--37.299,-37.207,-37.123,-37.093,-37.158,-37.336,-37.621,-37.992,-38.423,-38.882,-39.333,-39.732,-40.031,-40.199,-40.230,-40.148,
--39.995,-39.810,-39.604,-39.365,-39.067,-38.698,-38.267,-37.801,-37.323,-36.845,-36.361,-35.874,-35.413,-35.031,-34.781,-34.673,
--34.650,-34.600,-34.410,-34.030,-33.515,-32.998,-32.623,-32.460,-32.456,-32.474,-32.371,-32.105,-31.771,-31.556,-31.632,-32.030,
--32.597,-33.046,-33.088,-32.577,-31.582,-30.352,-29.193,-28.319,-27.770,-27.414,-27.045,-26.503,-25.748,-24.863,-23.989,-23.239,
--22.645,-22.160,-21.703,-21.218,-20.698,-20.181,-19.710,-19.300,-18.926,-18.544,-18.116,-17.636,-17.131,-16.636,-16.175,-15.744,
--15.316,-14.857,-14.350,-13.802,-13.243,-12.705,-12.208,-11.751,-11.317,-10.885,-10.450,-10.023,-9.630,-9.291,-9.001,-8.727,
--8.417,-8.026,-7.540,-6.987,-6.422,-5.898,-5.434,-5.001,-4.545,-4.016,-3.402,-2.736,-2.077,-1.471,-.928,-.415,
-.108,.663,1.231,1.768,2.237,2.636,3.003,3.390,3.820,4.273,4.690,5.021,5.260,5.462,5.713,6.082,
-6.576,7.142,7.700,8.197,8.639,9.087,9.612,10.245,10.957,11.670,12.304,12.814,13.206,13.518,13.782,14.009,
-14.179,14.275,14.300,14.290,14.291,14.339,14.431,14.539,14.625,14.670,14.683,14.697,14.743,14.834,14.958,15.098,
-15.238,15.377,15.520,15.671,15.819,15.944,16.030,16.075,16.095,16.111,16.139,16.173,16.192,16.169,16.090,15.966,
-15.827,15.715,15.669,15.711,15.841,16.040,16.268,16.481,16.631,16.684,16.626,16.469,16.249,16.013,15.807,15.667,
-15.610,15.641,15.753,15.931,16.154,16.401,16.647,16.879,17.093,17.295,17.498,17.710,17.928,18.145,18.347,18.528,
-18.686,18.826,18.950,19.061,19.159,19.247,19.332,19.420,19.516,19.614,19.705,19.779,19.835,19.876,19.905,19.915,
-19.892,19.827,19.735,19.661,19.674,19.825,20.118,20.488,20.824,21.022,21.049,20.970,20.936,21.116,21.614,22.414,
-23.374,24.285,24.945,25.240,25.169,24.835,24.391,23.979,23.682,23.505,23.381,23.208,22.893,22.400,21.768,21.099,
-20.488,19.950,19.353,18.428,16.858,14.429,11.178,7.458,3.861,1.024,-.616,-.999,-.467,.388,.978,.979,
-.458,-.174,-.362,.338,2.058,4.568,7.365,9.870,11.627,12.430,12.341,11.609,10.548,9.424,8.406,7.559,
-6.887,6.369,5.977,5.670,5.387,5.045,4.571,3.938,3.198,2.474,1.913,1.618,1.592,1.727,1.849,1.803,
-1.519,1.040,.483,-.028,-.430,-.737,-1.001,-1.241,-1.391,-1.308,-.838,.091,1.403,2.872,4.202,5.135,
-5.559,5.533,5.252,4.951,4.803,4.853,5.012,5.100,4.932,4.387,3.462,2.287,1.083,.101,-.460,-.521,
--.142,.498,1.182,1.736,2.090,2.283,2.421,2.601,2.862,3.171,3.458,3.668,3.800,3.906,4.053,4.278,
-4.561,4.842,5.061,5.193,5.270,5.355,5.508,5.745,6.034,6.311,6.515,6.623,6.661,6.689,6.780,6.992,
-7.351,7.841,8.412,8.991,9.500,9.883,10.120,10.242,10.319,10.438,10.672,11.051,11.556,12.129,12.697,13.194,
-13.580,13.847,14.017,14.133,14.252,14.432,14.720,15.135,15.659,16.244,16.823,17.332,17.723,17.976,18.091,18.078,
-17.953,17.737,17.459,17.157,16.877,16.654,16.511,16.446,16.443,16.474,16.511,16.526,16.491,16.374,16.153,15.819,
-15.391,14.910,14.424,13.972,13.566,13.185,12.798,12.375,11.911,11.422,10.937,10.477,10.049,9.647,9.272,8.941,
-8.694,8.582,8.644,8.889,9.288,9.782,10.299,10.778,11.177,11.479,11.688,11.818,11.895,11.944,11.992,12.057,
-12.143,12.235,12.297,12.287,12.164,11.906,11.520,11.034,10.493,9.947,9.432,8.971,8.568,8.217,7.907,7.631,
-7.382,7.159,6.956,6.763,6.564,6.341,6.082,5.784,5.459,5.125,4.805,4.512,4.249,4.007,3.770,3.525,
-3.265,2.989,2.702,2.409,2.112,1.816,1.528,1.258,1.012,.791,.583,.367,.123,-.155,-.459,-.762,
--1.043,-1.290,-1.516,-1.748,-2.014,-2.323,-2.662,-2.999,-3.306,-3.579,-3.852,-4.185,-4.636,-5.231,-5.930,-6.625,
--7.166,-7.404,-7.254,-6.729,-5.955,-5.131,-4.470,-4.119,-4.117,-4.390,-4.790,-5.171,-5.448,-5.630,-5.792,-6.020,
--6.357,-6.769,-7.168,-7.458,-7.598,-7.619,-7.614,-7.679,-7.866,-8.151,-8.453,-8.677,-8.772,-8.747,-8.670,-8.621,
--8.657,-8.786,-8.979,-9.195,-9.413,-9.641,-9.895,-10.183,-10.480,-10.736,-10.906,-10.977,-10.988,-11.009,-11.111,-11.327,
--11.632,-11.957,-12.229,-12.406,-12.501,-12.569,-12.676,-12.868,-13.152,-13.502,-13.887,-14.283,-14.685,-15.093,-15.497,-15.867,
--16.166,-16.365,-16.464,-16.494,-16.503,-16.535,-16.609,-16.719,-16.843,-16.960,-17.064,-17.165,-17.285,-17.448,-17.669,-17.958,
--18.314,-18.726,-19.172,-19.621,-20.040,-20.410,-20.732,-21.035,-21.355,-21.723,-22.140,-22.582,-23.003,-23.366,-23.654,-23.874,
--24.055,-24.222,-24.389,-24.556,-24.717,-24.869,-25.019,-25.178,-25.357,-25.559,-25.780,-26.016,-26.260,-26.506,-26.744,-26.958,
--27.133,-27.261,-27.351,-27.427,-27.519,-27.643,-27.795,-27.951,-28.083,-28.182,-28.265,-28.372,-28.548,-28.812,-29.151,-29.522,
--29.873,-30.170,-30.404,-30.596,-30.779,-30.976,-31.199,-31.438,-31.674,-31.893,-32.088,-32.264,-32.438,-32.630,-32.853,-33.113,
--33.401,-33.701,-33.998,-34.290,-34.593,-34.935,-35.345,-35.829,-36.362,-36.895,-37.373,-37.761,-38.061,-38.303,-38.533,-38.780,
--39.045,-39.310,-39.551,-39.759,-39.945,-40.132,-40.334,-40.550,-40.762,-40.953,-41.123,-41.292,-41.492,-41.745,-42.047,-42.377,
--42.705,-43.012,-43.301,-43.586,-43.882,-44.186,-44.479,-44.737,-44.947,-45.116,-45.264,-45.408,-45.557,-45.701,-45.829,-45.939,
--46.042,-46.159,-46.299,-46.452,-46.589,-46.669,-46.664,-46.567,-46.396,-46.177,-45.940,-45.700,-45.469,-45.250,-45.051,-44.880,
--44.741,-44.630,-44.541,-44.465,-44.403,-44.359,-44.339,-44.342,-44.360,-44.380,-44.394,-44.399,-44.400,-44.395,-44.369,-44.296,
--44.148,-43.912,-43.596,-43.227,-42.834,-42.435,-42.026,-41.590,-41.112,-40.597,-40.064,-39.541,-39.046,-38.573,-38.103,-37.611,
--37.091,-36.548,-36.001,-35.461,-34.923,-34.376,-33.813,-33.247,-32.709,-32.235,-31.840,-31.505,-31.178,-30.798,-30.322,-29.747,
--29.103,-28.435,-27.784,-27.172,-26.601,-26.068,-25.575,-25.123,-24.711,-24.324,-23.934,-23.516,-23.060,-22.575,-22.087,-21.610,
--21.140,-20.645,-20.092,-19.466,-18.794,-18.136,-17.564,-17.124,-16.816,-16.594,-16.388,-16.146,-15.847,-15.510,-15.177,-14.885,
--14.644,-14.438,-14.235,-13.999,-13.707,-13.352,-12.940,-12.480,-11.975,-11.422,-10.812,-10.133,-9.382,-8.563,-7.697,-6.816,
--5.949,-5.117,-4.317,-3.525,-2.703,-1.821,-.863,.164,1.242,2.360,3.519,4.731,6.004,7.326,8.661,9.955,
-11.159,12.246,13.208,14.049,14.762,15.321,15.700,15.894,15.954,15.990,16.139,16.519,17.174,18.060,19.064,20.054,
-20.944,21.717,22.421,23.129,23.894,24.717,25.559,26.362,27.089,27.739,28.351,28.975,29.655,30.405,31.213,32.048,
-32.878,33.675,34.427,35.130,35.790,36.412,37.003,37.565,38.097,38.602,39.088,39.570,40.069,40.602,41.173,41.771,
-42.371,42.952,43.505,44.037,44.567,45.112,45.672,46.235,46.781,47.302,47.806,48.318,48.861,49.447,50.063,50.686,
-51.289,51.859,52.394,52.905,53.400,53.886,54.369,54.860,55.375,55.929,56.525,57.144,57.750,58.305,58.783,59.178,
-59.497,59.747,59.928,60.029,60.047,59.998,59.926,59.879,59.898,59.986,60.113,60.234,60.311,60.335,60.324,60.303,
-60.291,60.285,60.272,60.246,60.216,60.209,60.252,60.356,60.506,60.670,60.816,60.921,60.979,60.990,60.959,60.891,
-60.803,60.724,60.699,60.761,60.916,61.128,61.329,61.451,61.458,61.360,61.201,61.027,60.860,60.690,60.496,60.280,
-60.082,59.969,59.995,60.162,60.400,60.600,60.666,60.570,60.368,60.177,60.109,60.222,60.492,60.839,61.172,61.429,
-61.599,61.697,61.732,61.690,61.536,61.242,60.819,60.326,59.846,59.454,59.178,58.995,58.852,58.694,58.498,58.271,
-58.034,57.805,57.576,57.332,57.060,56.773,56.510,56.317,56.224,56.221,56.265,56.297,56.277,56.209,56.142,56.151,
-56.301,56.619,57.075,57.588,58.055,58.383,58.520,58.469,58.284,58.047,57.836,57.705,57.668,57.695,57.736,57.732,
-57.636,57.428,57.116,56.733,56.325,55.944,55.629,55.396,55.233,55.100,54.949,54.740,54.458,54.123,53.777,53.460,
-53.187,52.938,52.658,52.285,51.777,51.137,50.409,49.659,48.949,48.311,47.741,47.209,46.682,46.143,46.202,45.623,
-45.041,44.487,43.981,43.524,43.105,42.717,42.371,42.090,41.898,41.802,41.784,41.798,41.792,41.724,41.578,41.364,
-41.108,40.842,40.589,40.359,40.158,39.982,39.830,39.699,39.587,39.494,39.426,39.391,39.395,39.441,39.518,39.607,
-39.687,39.743,39.770,39.770,39.743,39.681,39.570,39.400,39.176,38.920,38.664,38.434,38.237,38.055,37.858,37.614,
-37.311,36.955,36.564,36.155,35.742,35.337,34.956,34.619,34.348,34.148,33.998,33.854,33.668,33.408,33.075,32.698,
-32.320,31.968,31.642,31.316,30.959,30.551,30.102,29.646,29.225,28.872,28.597,28.388,28.222,28.069,27.909,27.733,
-27.544,27.353,27.175,27.023,26.897,26.794,26.702,26.610,26.515,26.419,26.326,26.233,26.133,26.019,25.889,25.754,
-25.631,25.532,25.443,25.330,25.149,24.874,24.517,24.128,23.775,23.506,23.324,23.179,22.997,22.716,22.326,21.864,
-21.401,20.994,20.667,20.399,20.148,19.875,19.570,19.247,18.929,18.634,18.356,18.083,17.801,17.514,17.241,17.006,
-16.822,16.681,16.561,16.435,16.286,16.114,15.935,15.768,15.626,15.511,15.416,15.329,15.238,15.135,15.016,14.876,
-14.710,14.513,14.278,14.002,13.685,13.331,12.948,12.544,12.130,11.718,11.324,10.975,10.699,10.521,10.448,10.457,
-10.491,10.476,10.341,10.049,9.612,9.085,8.545,8.057,7.652,7.325,7.046,6.790,6.554,6.357,6.224,6.167,
-6.165,6.176,6.146,6.042,5.861,5.633,5.397,5.184,5.003,4.838,4.659,4.444,4.182,3.875,3.533,3.165,
-2.778,2.379,1.981,1.608,1.285,1.031,.844,.707,.590,.465,.319,.151,-.032,-.229,-.452,-.721,
--1.059,-1.472,-1.944,-2.450,-2.960,-3.465,-3.975,-4.520,-5.127,-5.814,-6.569,-7.361,-8.146,-8.879,-9.521,-10.045,
--10.430,-10.661,-10.732,-10.642,-10.403,-10.045,-9.617,-9.187,-8.838,-8.652,-8.695,-8.993,-9.519,-10.198,-10.927,-11.607,
--12.180,-12.644,-13.048,-13.465,-13.951,-14.526,-15.160,-15.798,-16.382,-16.882,-17.301,-17.674,-18.045,-18.447,-18.894,-19.380,
--19.886,-20.388,-20.871,-21.323,-21.733,-22.097,-22.410,-22.676,-22.911,-23.141,-23.400,-23.714,-24.090,-24.509,-24.928,-25.296,
--25.576,-25.761,-25.879,-25.979,-26.114,-26.310,-26.566,-26.856,-27.150,-27.435,-27.722,-28.040,-28.416,-28.859,-29.349,-29.848,
--30.320,-30.741,-31.111,-31.447,-31.772,-32.106,-32.460,-32.838,-33.236,-33.644,-34.044,-34.405,-34.699,-34.909,-35.041,-35.127,
--35.218,-35.358,-35.568,-35.839,-36.136,-36.417,-36.651,-36.826,-36.948,-37.029,-37.079,-37.101,-37.093,-37.054,-36.989,-36.911,
--36.839,-36.789,-36.776,-36.811,-36.893,-37.010,-37.142,-37.267,-37.368,-37.443,-37.503,-37.564,-37.638,-37.722,-37.800,-37.859,
--37.896,-37.928,-37.983,-38.084,-38.241,-38.442,-38.662,-38.865,-39.013,-39.056,-38.938,-38.608,-38.046,-37.294,-36.470,-35.742,
--35.274,-35.160,-35.389,-35.847,-36.376,-36.844,-37.194,-37.447,-37.662,-37.886,-38.114,-38.301,-38.397,-38.385,-38.297,-38.192,
--38.120,-38.089,-38.064,-37.995,-37.850,-37.637,-37.397,-37.180,-37.017,-36.908,-36.832,-36.769,-36.710,-36.658,-36.622,-36.601,
--36.587,-36.569,-36.549,-36.542,-36.572,-36.662,-36.829,-37.076,-37.405,-37.813,-38.288,-38.804,-39.314,-39.752,-40.061,-40.205,
--40.187,-40.043,-39.826,-39.578,-39.323,-39.056,-38.762,-38.421,-38.019,-37.550,-37.020,-36.451,-35.888,-35.387,-35.005,-34.767,
--34.648,-34.574,-34.452,-34.214,-33.859,-33.454,-33.094,-32.850,-32.715,-32.613,-32.444,-32.157,-31.803,-31.526,-31.491,-31.786,
--32.353,-32.990,-33.431,-33.465,-33.027,-32.221,-31.252,-30.322,-29.532,-28.855,-28.178,-27.389,-26.452,-25.427,-24.431,-23.574,
--22.901,-22.382,-21.945,-21.523,-21.089,-20.657,-20.253,-19.884,-19.529,-19.148,-18.715,-18.232,-17.731,-17.251,-16.813,-16.405,
--15.992,-15.535,-15.016,-14.446,-13.855,-13.280,-12.742,-12.247,-11.786,-11.343,-10.906,-10.471,-10.045,-9.637,-9.255,-8.896,
--8.544,-8.172,-7.752,-7.274,-6.752,-6.218,-5.707,-5.236,-4.787,-4.319,-3.794,-3.199,-2.557,-1.914,-1.309,-.747,
--.198,.380,1.008,1.667,2.304,2.869,3.342,3.746,4.122,4.497,4.857,5.158,5.360,5.468,5.545,5.687,
-5.972,6.418,6.971,7.546,8.076,8.548,9.008,9.516,10.108,10.765,11.425,12.023,12.522,12.926,13.260,13.545,
-13.780,13.947,14.038,14.075,14.110,14.197,14.361,14.586,14.821,15.011,15.131,15.192,15.230,15.281,15.355,15.440,
-15.518,15.582,15.647,15.738,15.874,16.047,16.231,16.393,16.510,16.584,16.631,16.669,16.704,16.724,16.709,16.642,
-16.519,16.358,16.189,16.053,15.984,16.008,16.129,16.325,16.548,16.738,16.833,16.798,16.632,16.368,16.066,15.788,
-15.580,15.469,15.458,15.532,15.671,15.849,16.047,16.253,16.468,16.703,16.968,17.267,17.588,17.901,18.174,18.384,
-18.529,18.627,18.704,18.784,18.874,18.972,19.073,19.177,19.287,19.405,19.527,19.638,19.729,19.797,19.851,19.901,
-19.947,19.974,19.969,19.936,19.912,19.960,20.129,20.423,20.775,21.075,21.225,21.203,21.091,21.049,21.245,21.767,
-22.577,23.522,24.396,25.024,25.320,25.299,25.047,24.677,24.284,23.924,23.613,23.331,23.027,22.637,22.108,21.427,
-20.628,19.772,18.894,17.935,16.725,15.029,12.669,9.665,6.306,3.116,.679,-.584,-.603,.297,1.518,2.434,
-2.640,2.097,1.122,.227,-.107,.387,1.684,3.512,5.478,7.211,8.465,9.150,9.312,9.072,8.575,7.953,
-7.308,6.713,6.211,5.814,5.502,5.223,4.905,4.486,3.942,3.302,2.652,2.096,1.715,1.524,1.461,1.418,
-1.294,1.046,.711,.383,.155,.070,.104,.195,.296,.422,.656,1.097,1.796,2.698,3.644,4.429,
-4.881,4.943,4.691,4.306,4.001,3.941,4.189,4.687,5.273,5.724,5.821,5.417,4.494,3.191,1.775,.570,
--.160,-.300,.075,.745,1.443,1.973,2.275,2.417,2.528,2.711,2.986,3.296,3.561,3.734,3.835,3.925,
-4.069,4.287,4.549,4.797,4.990,5.131,5.261,5.432,5.671,5.963,6.260,6.510,6.686,6.801,6.900,7.047,
-7.293,7.662,8.143,8.689,9.230,9.693,10.030,10.233,10.343,10.434,10.583,10.838,11.204,11.644,12.107,12.549,
-12.953,13.325,13.681,14.033,14.389,14.754,15.141,15.570,16.058,16.604,17.180,17.739,18.226,18.596,18.818,18.875,
-18.754,18.443,17.944,17.285,16.528,15.765,15.089,14.574,14.250,14.105,14.095,14.163,14.251,14.310,14.294,14.168,
-13.910,13.527,13.052,12.535,12.025,11.550,11.111,10.686,10.256,9.814,9.378,8.978,8.642,8.385,8.205,8.104,
-8.089,8.185,8.419,8.804,9.322,9.920,10.523,11.055,11.463,11.727,11.861,11.896,11.875,11.839,11.821,11.847,
-11.927,12.058,12.214,12.355,12.429,12.392,12.216,11.901,11.473,10.972,10.442,9.916,9.414,8.942,8.497,8.074,
-7.673,7.297,6.954,6.649,6.381,6.142,5.917,5.683,5.426,5.138,4.824,4.500,4.181,3.878,3.590,3.311,
-3.032,2.752,2.476,2.212,1.958,1.705,1.435,1.134,.803,.462,.139,-.143,-.378,-.588,-.803,-1.050,
--1.332,-1.631,-1.916,-2.164,-2.376,-2.577,-2.798,-3.061,-3.360,-3.668,-3.951,-4.199,-4.439,-4.731,-5.146,-5.718,
--6.414,-7.123,-7.681,-7.928,-7.776,-7.251,-6.502,-5.746,-5.194,-4.974,-5.090,-5.435,-5.857,-6.234,-6.516,-6.738,
--6.968,-7.253,-7.585,-7.898,-8.119,-8.214,-8.219,-8.221,-8.309,-8.521,-8.815,-9.092,-9.248,-9.232,-9.076,-8.879,
--8.754,-8.779,-8.960,-9.245,-9.560,-9.853,-10.114,-10.365,-10.628,-10.897,-11.135,-11.297,-11.361,-11.356,-11.349,-11.417,
--11.602,-11.888,-12.209,-12.490,-12.681,-12.786,-12.850,-12.931,-13.063,-13.245,-13.453,-13.666,-13.886,-14.141,-14.458,-14.837,
--15.241,-15.609,-15.885,-16.046,-16.115,-16.143,-16.183,-16.262,-16.379,-16.514,-16.650,-16.788,-16.940,-17.127,-17.359,-17.633,
--17.945,-18.290,-18.667,-19.074,-19.501,-19.925,-20.323,-20.681,-21.011,-21.339,-21.696,-22.093,-22.516,-22.925,-23.280,-23.558,
--23.760,-23.911,-24.045,-24.185,-24.339,-24.505,-24.673,-24.836,-24.992,-25.146,-25.304,-25.480,-25.684,-25.922,-26.184,-26.445,
--26.667,-26.817,-26.885,-26.892,-26.886,-26.917,-27.010,-27.155,-27.307,-27.424,-27.491,-27.538,-27.626,-27.815,-28.130,-28.549,
--29.009,-29.442,-29.803,-30.084,-30.311,-30.520,-30.736,-30.967,-31.203,-31.432,-31.645,-31.838,-32.012,-32.172,-32.324,-32.482,
--32.665,-32.894,-33.184,-33.536,-33.939,-34.376,-34.834,-35.303,-35.774,-36.232,-36.651,-37.010,-37.298,-37.529,-37.737,-37.962,
--38.226,-38.524,-38.827,-39.102,-39.328,-39.513,-39.678,-39.847,-40.027,-40.211,-40.389,-40.559,-40.738,-40.954,-41.225,-41.551,
--41.907,-42.263,-42.593,-42.893,-43.175,-43.452,-43.732,-44.008,-44.267,-44.502,-44.713,-44.908,-45.092,-45.264,-45.417,-45.547,
--45.661,-45.775,-45.902,-46.043,-46.179,-46.282,-46.324,-46.299,-46.219,-46.104,-45.972,-45.825,-45.658,-45.463,-45.247,-45.031,
--44.838,-44.685,-44.570,-44.479,-44.401,-44.332,-44.283,-44.268,-44.292,-44.340,-44.388,-44.412,-44.401,-44.355,-44.281,-44.178,
--44.031,-43.823,-43.546,-43.210,-42.843,-42.475,-42.120,-41.769,-41.401,-40.993,-40.546,-40.078,-39.614,-39.168,-38.730,-38.274,
--37.774,-37.225,-36.641,-36.050,-35.468,-34.896,-34.316,-33.720,-33.119,-32.551,-32.057,-31.657,-31.331,-31.019,-30.653,-30.189,
--29.626,-29.000,-28.364,-27.754,-27.181,-26.634,-26.101,-25.583,-25.097,-24.655,-24.253,-23.864,-23.450,-22.991,-22.497,-22.004,
--21.553,-21.158,-20.796,-20.418,-19.975,-19.452,-18.876,-18.305,-17.802,-17.400,-17.096,-16.856,-16.642,-16.427,-16.205,-15.980,
--15.759,-15.542,-15.320,-15.086,-14.829,-14.540,-14.200,-13.784,-13.270,-12.642,-11.913,-11.117,-10.298,-9.494,-8.720,-7.966,
--7.209,-6.425,-5.606,-4.759,-3.900,-3.037,-2.168,-1.280,-.354,.632,1.692,2.838,4.071,5.378,6.729,8.076,
-9.371,10.575,11.673,12.668,13.566,14.355,15.001,15.455,15.696,15.760,15.754,15.830,16.133,16.739,17.626,18.680,
-19.753,20.724,21.548,22.257,22.930,23.642,24.422,25.247,26.065,26.828,27.518,28.156,28.785,29.448,30.166,30.937,
-31.739,32.545,33.332,34.086,34.804,35.488,36.139,36.761,37.349,37.902,38.419,38.908,39.388,39.885,40.422,41.006,
-41.624,42.248,42.845,43.400,43.915,44.415,44.923,45.452,45.996,46.538,47.064,47.579,48.103,48.659,49.260,49.897,
-50.545,51.174,51.763,52.306,52.810,53.286,53.746,54.205,54.682,55.200,55.774,56.403,57.059,57.698,58.272,58.751,
-59.130,59.420,59.636,59.782,59.852,59.849,59.795,59.736,59.722,59.788,59.926,60.094,60.235,60.305,60.300,60.246,
-60.183,60.138,60.117,60.110,60.114,60.140,60.209,60.336,60.513,60.706,60.870,60.976,61.020,61.022,61.007,60.987,
-60.958,60.914,60.864,60.840,60.877,60.996,61.174,61.353,61.466,61.473,61.378,61.225,61.065,60.920,60.780,60.616,
-60.420,60.227,60.105,60.117,60.274,60.515,60.729,60.815,60.736,60.547,60.365,60.306,60.426,60.697,61.025,61.311,
-61.496,61.577,61.586,61.545,61.441,61.230,60.873,60.381,59.826,59.322,58.976,58.833,58.857,58.949,58.995,58.912,
-58.678,58.325,57.914,57.502,57.128,56.810,56.557,56.375,56.269,56.233,56.249,56.287,56.323,56.351,56.395,56.498,
-56.704,57.030,57.449,57.896,58.285,58.537,58.612,58.519,58.313,58.072,57.870,57.749,57.716,57.742,57.781,57.789,
-57.735,57.609,57.411,57.153,56.853,56.530,56.210,55.912,55.650,55.415,55.183,54.920,54.602,54.232,53.847,53.499,
-53.232,53.051,52.914,52.740,52.441,51.964,51.309,50.537,49.738,48.992,48.343,47.782,47.269,46.752,46.202,46.101,
-45.528,44.961,44.437,43.978,43.573,43.198,42.825,42.450,42.095,41.800,41.600,41.504,41.489,41.505,41.501,41.438,
-41.301,41.097,40.847,40.578,40.311,40.068,39.866,39.711,39.599,39.514,39.436,39.350,39.260,39.186,39.152,39.177,
-39.257,39.370,39.482,39.566,39.607,39.607,39.572,39.508,39.415,39.290,39.137,38.964,38.780,38.585,38.372,38.127,
-37.841,37.516,37.168,36.813,36.461,36.113,35.765,35.419,35.092,34.806,34.577,34.399,34.233,34.030,33.746,33.367,
-32.917,32.443,31.993,31.591,31.234,30.896,30.551,30.189,29.825,29.490,29.217,29.024,28.904,28.827,28.752,28.640,
-28.473,28.260,28.033,27.831,27.683,27.594,27.541,27.489,27.411,27.295,27.152,27.003,26.860,26.723,26.580,26.422,
-26.256,26.099,25.965,25.848,25.714,25.519,25.235,24.876,24.497,24.166,23.926,23.766,23.617,23.390,23.025,22.525,
-21.955,21.409,20.962,20.632,20.382,20.148,19.878,19.558,19.211,18.874,18.567,18.288,18.014,17.724,17.424,17.139,
-16.904,16.740,16.640,16.568,16.483,16.358,16.193,16.012,15.851,15.732,15.655,15.594,15.510,15.371,15.160,14.884,
-14.563,14.220,13.871,13.520,13.163,12.800,12.434,12.076,11.734,11.408,11.088,10.765,10.442,10.147,9.921,9.802,
-9.799,9.871,9.939,9.910,9.720,9.359,8.878,8.364,7.899,7.533,7.267,7.072,6.910,6.763,6.631,6.526,
-6.451,6.390,6.310,6.180,5.986,5.741,5.476,5.222,4.998,4.799,4.606,4.399,4.166,3.904,3.619,3.312,
-2.978,2.608,2.201,1.772,1.357,.997,.729,.559,.464,.398,.312,.173,-.024,-.265,-.528,-.806,
--1.108,-1.459,-1.879,-2.372,-2.920,-3.488,-4.047,-4.587,-5.125,-5.695,-6.330,-7.041,-7.809,-8.587,-9.314,-9.931,
--10.398,-10.700,-10.839,-10.834,-10.701,-10.461,-10.136,-9.763,-9.402,-9.131,-9.032,-9.168,-9.552,-10.139,-10.836,-11.533,
--12.150,-12.661,-13.102,-13.545,-14.055,-14.657,-15.318,-15.973,-16.550,-17.015,-17.378,-17.693,-18.022,-18.412,-18.876,-19.394,
--19.933,-20.460,-20.960,-21.427,-21.862,-22.264,-22.625,-22.938,-23.205,-23.442,-23.681,-23.959,-24.304,-24.719,-25.176,-25.619,
--25.985,-26.230,-26.345,-26.370,-26.374,-26.430,-26.584,-26.838,-27.155,-27.485,-27.792,-28.077,-28.369,-28.706,-29.109,-29.569,
--30.052,-30.516,-30.937,-31.317,-31.675,-32.030,-32.392,-32.754,-33.105,-33.441,-33.769,-34.102,-34.441,-34.773,-35.072,-35.317,
--35.506,-35.667,-35.840,-36.061,-36.341,-36.656,-36.965,-37.225,-37.414,-37.534,-37.605,-37.650,-37.684,-37.712,-37.729,-37.735,
--37.731,-37.727,-37.733,-37.754,-37.793,-37.848,-37.910,-37.973,-38.029,-38.080,-38.135,-38.207,-38.307,-38.435,-38.571,-38.685,
--38.746,-38.742,-38.686,-38.614,-38.570,-38.594,-38.701,-38.888,-39.126,-39.371,-39.556,-39.602,-39.433,-39.003,-38.327,-37.497,
--36.667,-36.003,-35.622,-35.557,-35.748,-36.087,-36.473,-36.855,-37.233,-37.633,-38.060,-38.476,-38.810,-39.001,-39.029,-38.931,
--38.780,-38.644,-38.553,-38.492,-38.422,-38.309,-38.148,-37.960,-37.776,-37.611,-37.462,-37.309,-37.133,-36.929,-36.709,-36.493,
--36.301,-36.146,-36.038,-35.988,-36.003,-36.089,-36.243,-36.458,-36.726,-37.046,-37.424,-37.868,-38.367,-38.889,-39.376,-39.764,
--40.005,-40.080,-40.005,-39.825,-39.591,-39.344,-39.104,-38.868,-38.611,-38.302,-37.913,-37.434,-36.881,-36.298,-35.741,-35.261,
--34.883,-34.596,-34.366,-34.156,-33.946,-33.746,-33.574,-33.440,-33.316,-33.146,-32.872,-32.481,-32.030,-31.641,-31.454,-31.559,
--31.945,-32.486,-32.993,-33.283,-33.254,-32.910,-32.336,-31.637,-30.880,-30.064,-29.149,-28.104,-26.953,-25.790,-24.738,-23.894,
--23.283,-22.850,-22.498,-22.141,-21.742,-21.322,-20.919,-20.558,-20.220,-19.859,-19.432,-18.935,-18.403,-17.891,-17.437,-17.036,
--16.640,-16.195,-15.669,-15.071,-14.443,-13.836,-13.280,-12.776,-12.305,-11.845,-11.383,-10.921,-10.463,-10.014,-9.576,-9.149,
--8.737,-8.342,-7.960,-7.575,-7.165,-6.718,-6.237,-5.742,-5.253,-4.775,-4.295,-3.784,-3.226,-2.625,-2.005,-1.394,
--.797,-.192,.452,1.149,1.876,2.578,3.197,3.706,4.121,4.488,4.845,5.194,5.502,5.727,5.862,5.951,
-6.079,6.324,6.715,7.219,7.763,8.278,8.743,9.183,9.647,10.168,10.736,11.307,11.831,12.280,12.655,12.974,
-13.251,13.485,13.666,13.803,13.929,14.098,14.350,14.692,15.078,15.438,15.708,15.861,15.921,15.934,15.945,15.971,
-16.004,16.028,16.040,16.059,16.113,16.222,16.380,16.561,16.733,16.873,16.982,17.073,17.160,17.243,17.305,17.316,
-17.251,17.096,16.860,16.574,16.291,16.073,15.978,16.039,16.250,16.555,16.860,17.066,17.100,16.942,16.629,16.240,
-15.865,15.576,15.408,15.365,15.423,15.549,15.711,15.890,16.077,16.282,16.520,16.803,17.128,17.470,17.788,18.044,
-18.218,18.322,18.388,18.456,18.547,18.662,18.785,18.901,19.006,19.113,19.232,19.365,19.499,19.615,19.705,19.779,
-19.851,19.927,19.998,20.046,20.067,20.087,20.163,20.349,20.653,21.021,21.349,21.540,21.565,21.495,21.473,21.652,
-22.111,22.816,23.636,24.398,24.966,25.274,25.327,25.174,24.871,24.469,24.018,23.567,23.155,22.781,22.386,21.864,
-21.101,20.030,18.664,17.071,15.321,13.423,11.322,8.956,6.356,3.722,1.411,-.168,-.731,-.254,.980,2.481,
-3.723,4.338,4.226,3.542,2.601,1.735,1.183,1.050,1.320,1.902,2.680,3.533,4.352,5.049,5.565,5.877,
-6.005,5.989,5.875,5.697,5.470,5.198,4.883,4.530,4.150,3.750,3.340,2.933,2.551,2.219,1.954,1.754,
-1.592,1.437,1.275,1.126,1.041,1.074,1.248,1.531,1.855,2.144,2.358,2.508,2.645,2.815,3.023,3.224,
-3.344,3.324,3.151,2.872,2.575,2.363,2.331,2.549,3.043,3.779,4.635,5.400,5.820,5.675,4.888,3.584,
-2.078,.767,-.019,-.149,.274,.983,1.678,2.168,2.423,2.547,2.679,2.900,3.201,3.502,3.725,3.846,
-3.905,3.973,4.101,4.294,4.514,4.718,4.890,5.048,5.234,5.476,5.773,6.090,6.384,6.626,6.818,6.994,
-7.201,7.480,7.850,8.299,8.787,9.255,9.650,9.943,10.142,10.294,10.460,10.690,10.997,11.357,11.728,12.085,
-12.438,12.830,13.309,13.896,14.564,15.252,15.894,16.449,16.917,17.325,17.697,18.033,18.307,18.477,18.511,18.391,
-18.114,17.674,17.061,16.267,15.311,14.253,13.194,12.249,11.514,11.032,10.788,10.727,10.778,10.873,10.960,11.000,
-10.963,10.828,10.597,10.293,9.957,9.632,9.343,9.090,8.854,8.617,8.377,8.158,8.000,7.935,7.977,8.116,
-8.328,8.593,8.902,9.256,9.655,10.083,10.507,10.884,11.178,11.371,11.471,11.500,11.486,11.454,11.417,11.388,
-11.375,11.393,11.449,11.540,11.647,11.737,11.774,11.727,11.584,11.345,11.025,10.638,10.200,9.722,9.215,8.694,
-8.177,7.680,7.218,6.797,6.417,6.079,5.779,5.515,5.275,5.047,4.814,4.561,4.281,3.976,3.651,3.311,
-2.961,2.606,2.258,1.930,1.635,1.373,1.128,.870,.571,.223,-.156,-.525,-.842,-1.087,-1.277,-1.455,
--1.666,-1.933,-2.245,-2.559,-2.831,-3.038,-3.196,-3.347,-3.535,-3.786,-4.085,-4.392,-4.667,-4.894,-5.108,-5.378,
--5.781,-6.357,-7.066,-7.787,-8.346,-8.579,-8.403,-7.859,-7.110,-6.383,-5.888,-5.741,-5.935,-6.358,-6.859,-7.311,
--7.656,-7.901,-8.087,-8.246,-8.390,-8.509,-8.605,-8.700,-8.837,-9.046,-9.317,-9.589,-9.771,-9.789,-9.627,-9.350,
--9.078,-8.933,-8.985,-9.229,-9.591,-9.977,-10.317,-10.590,-10.822,-11.047,-11.278,-11.492,-11.648,-11.718,-11.716,-11.701,
--11.744,-11.895,-12.152,-12.463,-12.759,-12.989,-13.144,-13.253,-13.352,-13.458,-13.557,-13.626,-13.655,-13.671,-13.731,-13.890,
--14.168,-14.532,-14.912,-15.236,-15.464,-15.602,-15.693,-15.784,-15.903,-16.053,-16.224,-16.411,-16.622,-16.872,-17.167,-17.493,
--17.824,-18.139,-18.433,-18.726,-19.045,-19.408,-19.807,-20.218,-20.611,-20.974,-21.319,-21.666,-22.032,-22.412,-22.781,-23.105,
--23.361,-23.547,-23.684,-23.800,-23.923,-24.066,-24.232,-24.414,-24.600,-24.774,-24.927,-25.060,-25.188,-25.336,-25.528,-25.769,
--26.031,-26.265,-26.417,-26.460,-26.415,-26.340,-26.306,-26.354,-26.477,-26.627,-26.751,-26.829,-26.892,-27.009,-27.246,-27.630,
--28.125,-28.656,-29.140,-29.526,-29.811,-30.026,-30.212,-30.395,-30.581,-30.764,-30.937,-31.103,-31.266,-31.425,-31.575,-31.711,
--31.844,-32.006,-32.241,-32.584,-33.043,-33.588,-34.167,-34.721,-35.216,-35.637,-35.995,-36.300,-36.561,-36.787,-36.988,-37.187,
--37.410,-37.674,-37.976,-38.292,-38.589,-38.844,-39.054,-39.235,-39.407,-39.583,-39.763,-39.943,-40.122,-40.312,-40.532,-40.796,
--41.102,-41.431,-41.758,-42.065,-42.349,-42.622,-42.899,-43.187,-43.481,-43.770,-44.046,-44.306,-44.551,-44.779,-44.987,-45.170,
--45.329,-45.473,-45.618,-45.768,-45.916,-46.036,-46.104,-46.106,-46.053,-45.971,-45.885,-45.802,-45.707,-45.577,-45.397,-45.178,
--44.955,-44.767,-44.635,-44.556,-44.505,-44.458,-44.405,-44.356,-44.331,-44.338,-44.368,-44.394,-44.387,-44.337,-44.247,-44.130,
--43.993,-43.826,-43.612,-43.337,-43.012,-42.662,-42.324,-42.015,-41.730,-41.441,-41.117,-40.743,-40.326,-39.887,-39.443,-38.991,
--38.516,-37.996,-37.429,-36.829,-36.220,-35.619,-35.026,-34.425,-33.809,-33.190,-32.605,-32.092,-31.673,-31.325,-30.996,-30.622,
--30.166,-29.632,-29.057,-28.486,-27.939,-27.410,-26.874,-26.315,-25.743,-25.193,-24.697,-24.263,-23.862,-23.447,-22.986,-22.481,
--21.977,-21.529,-21.173,-20.899,-20.654,-20.370,-20.000,-19.541,-19.033,-18.535,-18.098,-17.746,-17.475,-17.264,-17.086,-16.912,
--16.718,-16.483,-16.199,-15.873,-15.531,-15.203,-14.902,-14.608,-14.267,-13.810,-13.189,-12.407,-11.517,-10.602,-9.732,-8.932,
--8.175,-7.402,-6.564,-5.645,-4.678,-3.715,-2.802,-1.950,-1.135,-.306,.585,1.568,2.651,3.822,5.059,6.332,
-7.608,8.848,10.019,11.099,12.079,12.962,13.744,14.406,14.918,15.259,15.446,15.553,15.701,16.018,16.591,17.424,
-18.435,19.496,20.483,21.330,22.045,22.692,23.348,24.062,24.838,25.645,26.440,27.193,27.898,28.572,29.237,29.912,
-30.608,31.329,32.071,32.829,33.592,34.346,35.076,35.770,36.422,37.033,37.606,38.146,38.662,39.170,39.688,40.236,
-40.822,41.438,42.056,42.644,43.180,43.666,44.125,44.590,45.086,45.617,46.171,46.732,47.290,47.851,48.427,49.028,
-49.648,50.275,50.888,51.477,52.037,52.570,53.079,53.566,54.037,54.510,55.011,55.567,56.184,56.840,57.490,58.081,
-58.576,58.964,59.256,59.471,59.617,59.696,59.712,59.687,59.666,59.695,59.800,59.965,60.140,60.261,60.289,60.230,
-60.123,60.023,59.964,59.955,59.980,60.027,60.098,60.209,60.367,60.557,60.740,60.872,60.928,60.921,60.889,60.873,
-60.888,60.920,60.941,60.936,60.918,60.924,60.983,61.095,61.222,61.308,61.316,61.244,61.129,61.015,60.922,60.833,
-60.710,60.533,60.326,60.154,60.087,60.153,60.315,60.484,60.571,60.542,60.439,60.358,60.393,60.577,60.863,61.149,
-61.339,61.389,61.328,61.220,61.121,61.032,60.903,60.671,60.309,59.859,59.418,59.094,58.947,58.960,59.043,59.079,
-58.977,58.710,58.317,57.881,57.485,57.189,57.009,56.930,56.919,56.940,56.967,56.988,57.009,57.047,57.129,57.280,
-57.512,57.817,58.157,58.481,58.729,58.858,58.853,58.734,58.545,58.341,58.166,58.041,57.962,57.903,57.834,57.738,
-57.613,57.470,57.324,57.177,57.019,56.834,56.610,56.353,56.077,55.804,55.537,55.263,54.953,54.586,54.168,53.739,
-53.360,53.081,52.913,52.806,52.672,52.410,51.955,51.305,50.520,49.697,48.926,48.256,47.684,47.165,46.648,46.101,
-45.821,45.301,44.816,44.392,44.036,43.724,43.418,43.078,42.692,42.285,41.908,41.618,41.445,41.381,41.383,41.393,
-41.365,41.271,41.110,40.895,40.648,40.390,40.143,39.932,39.777,39.681,39.631,39.594,39.540,39.453,39.344,39.246,
-39.194,39.206,39.274,39.366,39.449,39.503,39.523,39.521,39.506,39.481,39.441,39.378,39.290,39.173,39.025,38.835,
-38.592,38.289,37.933,37.546,37.155,36.782,36.431,36.097,35.772,35.459,35.175,34.935,34.742,34.570,34.372,34.099,
-33.721,33.244,32.706,32.158,31.646,31.190,30.785,30.414,30.065,29.740,29.461,29.258,29.154,29.145,29.199,29.262,
-29.276,29.207,29.054,28.854,28.659,28.511,28.419,28.357,28.280,28.152,27.964,27.741,27.518,27.322,27.150,26.983,
-26.798,26.592,26.384,26.201,26.051,25.911,25.738,25.494,25.177,24.824,24.494,24.226,24.012,23.797,23.505,23.088,
-22.557,21.979,21.442,21.010,20.691,20.443,20.199,19.914,19.581,19.228,18.891,18.586,18.303,18.014,17.704,17.383,
-17.088,16.863,16.727,16.667,16.634,16.576,16.461,16.293,16.112,15.963,15.873,15.830,15.788,15.684,15.468,15.126,
-14.684,14.194,13.709,13.261,12.854,12.471,12.094,11.720,11.363,11.040,10.757,10.497,10.236,9.958,9.674,9.426,
-9.265,9.219,9.267,9.339,9.343,9.205,8.907,8.491,8.039,7.637,7.335,7.143,7.033,6.967,6.915,6.861,
-6.794,6.699,6.559,6.356,6.093,5.788,5.478,5.197,4.961,4.760,4.568,4.359,4.117,3.846,3.561,3.276,
-2.989,2.687,2.351,1.971,1.561,1.160,.814,.560,.407,.328,.271,.182,.022,-.213,-.505,-.824,
--1.154,-1.503,-1.901,-2.376,-2.938,-3.564,-4.206,-4.815,-5.363,-5.864,-6.361,-6.910,-7.543,-8.254,-8.991,-9.674,
--10.227,-10.602,-10.795,-10.834,-10.766,-10.632,-10.453,-10.234,-9.983,-9.729,-9.530,-9.466,-9.605,-9.974,-10.539,-11.218,
--11.909,-12.538,-13.090,-13.604,-14.147,-14.765,-15.452,-16.149,-16.775,-17.267,-17.617,-17.879,-18.135,-18.465,-18.903,-19.436,
--20.014,-20.584,-21.109,-21.581,-22.007,-22.401,-22.766,-23.094,-23.379,-23.622,-23.843,-24.073,-24.347,-24.686,-25.088,-25.520,
--25.932,-26.268,-26.493,-26.606,-26.649,-26.691,-26.798,-27.007,-27.310,-27.657,-27.989,-28.266,-28.492,-28.709,-28.970,-29.312,
--29.727,-30.178,-30.616,-31.012,-31.372,-31.723,-32.093,-32.486,-32.882,-33.253,-33.581,-33.882,-34.188,-34.529,-34.912,-35.308,
--35.672,-35.970,-36.202,-36.399,-36.608,-36.857,-37.144,-37.435,-37.688,-37.877,-38.002,-38.089,-38.169,-38.259,-38.362,-38.464,
--38.552,-38.619,-38.667,-38.702,-38.729,-38.747,-38.755,-38.755,-38.750,-38.751,-38.769,-38.815,-38.900,-39.027,-39.187,-39.357,
--39.503,-39.590,-39.599,-39.533,-39.424,-39.319,-39.260,-39.275,-39.369,-39.525,-39.705,-39.859,-39.924,-39.835,-39.540,-39.029,
--38.345,-37.586,-36.880,-36.339,-36.030,-35.963,-36.100,-36.393,-36.801,-37.302,-37.869,-38.456,-38.991,-39.391,-39.602,-39.621,
--39.502,-39.327,-39.173,-39.074,-39.019,-38.966,-38.878,-38.739,-38.560,-38.368,-38.186,-38.017,-37.850,-37.663,-37.436,-37.160,
--36.842,-36.502,-36.175,-35.900,-35.719,-35.656,-35.717,-35.883,-36.123,-36.407,-36.719,-37.059,-37.437,-37.858,-38.312,-38.769,
--39.183,-39.509,-39.712,-39.779,-39.718,-39.561,-39.349,-39.122,-38.905,-38.698,-38.475,-38.199,-37.834,-37.368,-36.815,-36.212,
--35.609,-35.050,-34.573,-34.207,-33.971,-33.871,-33.883,-33.948,-33.975,-33.870,-33.574,-33.104,-32.557,-32.079,-31.810,-31.818,
--32.071,-32.444,-32.777,-32.941,-32.877,-32.610,-32.203,-31.715,-31.154,-30.477,-29.629,-28.587,-27.403,-26.196,-25.113,-24.269,
--23.693,-23.323,-23.043,-22.737,-22.350,-21.898,-21.439,-21.030,-20.681,-20.351,-19.977,-19.520,-18.992,-18.448,-17.950,-17.522,
--17.134,-16.719,-16.219,-15.618,-14.955,-14.302,-13.717,-13.218,-12.778,-12.350,-11.898,-11.411,-10.904,-10.398,-9.907,-9.433,
--8.983,-8.567,-8.200,-7.886,-7.605,-7.316,-6.974,-6.556,-6.069,-5.548,-5.027,-4.519,-4.010,-3.477,-2.903,-2.295,
--1.669,-1.037,-.393,.282,.996,1.728,2.429,3.043,3.546,3.957,4.336,4.738,5.183,5.644,6.065,6.404,
-6.668,6.907,7.189,7.557,8.004,8.488,8.957,9.389,9.797,10.219,10.677,11.168,11.658,12.108,12.494,12.820,
-13.104,13.362,13.602,13.829,14.058,14.320,14.650,15.062,15.531,15.990,16.355,16.567,16.616,16.547,16.431,16.335,
-16.292,16.302,16.346,16.406,16.480,16.573,16.690,16.822,16.957,17.083,17.197,17.311,17.436,17.576,17.714,17.819,
-17.853,17.786,17.600,17.303,16.926,16.529,16.193,16.001,16.014,16.239,16.616,17.029,17.345,17.456,17.321,16.974,
-16.508,16.036,15.652,15.409,15.315,15.346,15.466,15.635,15.827,16.030,16.243,16.478,16.739,17.020,17.298,17.542,
-17.725,17.846,17.931,18.020,18.146,18.312,18.496,18.660,18.782,18.866,18.943,19.042,19.176,19.331,19.476,19.593,
-19.685,19.770,19.866,19.971,20.067,20.138,20.200,20.300,20.494,20.807,21.201,21.586,21.862,21.983,21.992,22.003,
-22.146,22.498,23.044,23.687,24.297,24.771,25.059,25.158,25.086,24.860,24.503,24.055,23.575,23.118,22.691,22.214,
-21.529,20.463,18.902,16.855,14.453,11.887,9.332,6.895,4.631,2.599,.919,-.225,-.653,-.288,.769,2.241,
-3.757,4.984,5.718,5.924,5.686,5.128,4.361,3.459,2.494,1.564,.794,.306,.168,.369,.826,1.432,
-2.095,2.758,3.389,3.950,4.388,4.647,4.699,4.569,4.329,4.063,3.827,3.625,3.422,3.180,2.894,2.595,
-2.335,2.150,2.042,1.984,1.955,1.957,2.019,2.173,2.421,2.719,2.996,3.183,3.245,3.192,3.060,2.887,
-2.695,2.493,2.290,2.103,1.946,1.819,1.713,1.627,1.605,1.748,2.176,2.950,3.985,5.025,5.708,5.714,
-4.928,3.522,1.910,.579,-.115,-.083,.490,1.268,1.941,2.355,2.537,2.628,2.764,2.998,3.289,3.557,
-3.746,3.864,3.962,4.091,4.270,4.471,4.654,4.799,4.922,5.066,5.270,5.543,5.859,6.175,6.458,6.700,
-6.925,7.174,7.483,7.868,8.316,8.787,9.228,9.597,9.878,10.094,10.298,10.548,10.879,11.286,11.728,12.167,
-12.593,13.042,13.577,14.246,15.037,15.871,16.630,17.208,17.563,17.721,17.753,17.725,17.655,17.516,17.251,16.821,
-16.218,15.466,14.597,13.630,12.575,11.451,10.309,9.235,8.328,7.668,7.282,7.140,7.172,7.299,7.459,7.613,
-7.743,7.836,7.888,7.900,7.889,7.885,7.913,7.983,8.082,8.182,8.258,8.309,8.359,8.450,8.615,8.863,
-9.173,9.508,9.828,10.110,10.347,10.544,10.705,10.828,10.908,10.947,10.950,10.935,10.916,10.897,10.873,10.829,
-10.758,10.663,10.566,10.494,10.467,10.488,10.542,10.602,10.638,10.631,10.566,10.433,10.222,9.922,9.530,9.058,
-8.538,8.011,7.515,7.068,6.667,6.295,5.934,5.582,5.246,4.941,4.675,4.438,4.211,3.970,3.695,3.381,
-3.032,2.655,2.260,1.858,1.466,1.099,.766,.462,.168,-.142,-.481,-.842,-1.196,-1.508,-1.760,-1.961,
--2.145,-2.354,-2.611,-2.908,-3.209,-3.475,-3.682,-3.836,-3.972,-4.135,-4.355,-4.632,-4.940,-5.234,-5.482,-5.681,
--5.877,-6.145,-6.562,-7.161,-7.892,-8.622,-9.163,-9.346,-9.092,-8.461,-7.643,-6.890,-6.429,-6.374,-6.700,-7.264,
--7.879,-8.387,-8.705,-8.838,-8.848,-8.820,-8.828,-8.919,-9.114,-9.402,-9.744,-10.075,-10.313,-10.390,-10.275,-10.000,
--9.654,-9.358,-9.219,-9.286,-9.539,-9.904,-10.288,-10.625,-10.897,-11.127,-11.350,-11.581,-11.803,-11.977,-12.072,-12.091,
--12.079,-12.102,-12.211,-12.416,-12.684,-12.958,-13.192,-13.372,-13.513,-13.637,-13.749,-13.829,-13.850,-13.804,-13.720,-13.660,
--13.685,-13.826,-14.065,-14.348,-14.617,-14.839,-15.022,-15.194,-15.387,-15.608,-15.845,-16.084,-16.322,-16.576,-16.864,-17.191,
--17.535,-17.865,-18.153,-18.403,-18.646,-18.926,-19.271,-19.678,-20.116,-20.546,-20.945,-21.310,-21.657,-22.000,-22.337,-22.649,
--22.915,-23.122,-23.272,-23.384,-23.481,-23.582,-23.700,-23.843,-24.009,-24.189,-24.365,-24.511,-24.617,-24.689,-24.763,-24.883,
--25.077,-25.335,-25.602,-25.808,-25.902,-25.885,-25.810,-25.753,-25.772,-25.874,-26.020,-26.158,-26.265,-26.371,-26.541,-26.838,
--27.277,-27.813,-28.360,-28.834,-29.191,-29.442,-29.629,-29.797,-29.966,-30.127,-30.264,-30.370,-30.458,-30.549,-30.658,-30.786,
--30.927,-31.086,-31.293,-31.591,-32.017,-32.575,-33.219,-33.876,-34.470,-34.956,-35.332,-35.628,-35.882,-36.117,-36.341,-36.551,
--36.750,-36.952,-37.175,-37.428,-37.706,-37.987,-38.250,-38.486,-38.697,-38.896,-39.093,-39.289,-39.484,-39.680,-39.888,-40.121,
--40.387,-40.682,-40.987,-41.283,-41.558,-41.817,-42.075,-42.348,-42.640,-42.946,-43.251,-43.547,-43.831,-44.103,-44.366,-44.614,
--44.843,-45.050,-45.243,-45.429,-45.612,-45.778,-45.906,-45.973,-45.973,-45.922,-45.848,-45.773,-45.702,-45.615,-45.488,-45.311,
--45.100,-44.895,-44.739,-44.652,-44.623,-44.620,-44.608,-44.572,-44.520,-44.472,-44.442,-44.423,-44.396,-44.338,-44.244,-44.128,
--44.008,-43.891,-43.765,-43.600,-43.370,-43.070,-42.725,-42.375,-42.054,-41.772,-41.509,-41.231,-40.909,-40.530,-40.104,-39.645,
--39.166,-38.664,-38.135,-37.579,-37.005,-36.425,-35.848,-35.269,-34.676,-34.064,-33.446,-32.855,-32.326,-31.876,-31.488,-31.118,
--30.714,-30.247,-29.724,-29.176,-28.638,-28.123,-27.613,-27.083,-26.518,-25.932,-25.362,-24.845,-24.391,-23.972,-23.544,-23.076,
--22.571,-22.074,-21.644,-21.318,-21.085,-20.896,-20.681,-20.391,-20.017,-19.589,-19.157,-18.767,-18.441,-18.182,-17.974,-17.790,
--17.599,-17.362,-17.050,-16.648,-16.179,-15.694,-15.258,-14.914,-14.652,-14.404,-14.071,-13.568,-12.864,-11.998,-11.048,-10.089,
--9.152,-8.216,-7.236,-6.181,-5.067,-3.957,-2.925,-2.014,-1.217,-.475,.285,1.113,2.021,2.990,3.993,5.021,
-6.086,7.199,8.354,9.516,10.630,11.643,12.527,13.283,13.927,14.474,14.934,15.315,15.644,15.976,16.385,16.936,
-17.655,18.510,19.424,20.307,21.098,21.783,22.397,23.000,23.644,24.354,25.126,25.937,26.754,27.550,28.305,29.012,
-29.673,30.307,30.940,31.605,32.320,33.083,33.867,34.636,35.358,36.021,36.630,37.204,37.761,38.311,38.860,39.412,
-39.977,40.560,41.161,41.765,42.349,42.892,43.390,43.860,44.330,44.830,45.371,45.945,46.533,47.120,47.697,48.270,
-48.843,49.420,49.997,50.572,51.146,51.721,52.296,52.861,53.401,53.907,54.387,54.871,55.395,55.982,56.623,57.280,
-57.894,58.419,58.833,59.144,59.369,59.522,59.610,59.639,59.630,59.624,59.662,59.769,59.928,60.089,60.191,60.203,
-60.137,60.041,59.975,59.969,60.021,60.099,60.176,60.244,60.319,60.418,60.541,60.660,60.739,60.757,60.726,60.687,
-60.683,60.731,60.814,60.893,60.937,60.945,60.944,60.968,61.030,61.111,61.169,61.172,61.117,61.029,60.943,60.874,
-60.801,60.686,60.506,60.280,60.067,59.944,59.952,60.077,60.248,60.384,60.438,60.429,60.423,60.489,60.651,60.864,
-61.042,61.106,61.033,60.873,60.719,60.648,60.678,60.752,60.778,60.675,60.424,60.073,59.713,59.421,59.227,59.102,
-58.983,58.812,58.568,58.281,58.015,57.836,57.785,57.860,58.021,58.209,58.367,58.464,58.500,58.507,58.529,58.606,
-58.751,58.947,59.149,59.300,59.358,59.306,59.160,58.959,58.750,58.570,58.434,58.333,58.241,58.125,57.964,57.755,
-57.519,57.290,57.104,56.975,56.889,56.809,56.691,56.507,56.262,55.988,55.721,55.483,55.260,55.012,54.699,54.305,
-53.858,53.420,53.054,52.792,52.610,52.434,52.173,51.753,51.154,50.412,49.605,48.815,48.096,47.462,46.892,46.352,
-45.821,45.641,45.197,44.808,44.475,44.191,43.932,43.658,43.337,42.959,42.547,42.153,41.834,41.625,41.523,41.491,
-41.476,41.436,41.350,41.220,41.057,40.869,40.661,40.440,40.226,40.049,39.933,39.884,39.880,39.878,39.842,39.757,
-39.641,39.530,39.457,39.436,39.458,39.500,39.542,39.575,39.599,39.616,39.622,39.612,39.583,39.541,39.491,39.431,
-39.344,39.198,38.961,38.623,38.201,37.734,37.267,36.831,36.435,36.072,35.733,35.420,35.143,34.913,34.720,34.535,
-34.313,34.012,33.609,33.109,32.541,31.948,31.366,30.821,30.326,29.887,29.518,29.239,29.076,29.047,29.150,29.348,
-29.578,29.765,29.850,29.813,29.678,29.494,29.314,29.158,29.015,28.850,28.635,28.374,28.096,27.842,27.636,27.467,
-27.299,27.096,26.850,26.587,26.350,26.168,26.036,25.910,25.737,25.484,25.158,24.796,24.440,24.106,23.772,23.400,
-22.966,22.478,21.982,21.531,21.159,20.859,20.592,20.311,19.990,19.633,19.268,18.924,18.606,18.301,17.986,17.658,
-17.336,17.061,16.870,16.769,16.733,16.707,16.641,16.511,16.334,16.155,16.020,15.950,15.919,15.864,15.712,15.412,
-14.959,14.402,13.814,13.267,12.799,12.403,12.044,11.687,11.318,10.953,10.623,10.345,10.113,9.897,9.668,9.420,
-9.181,8.997,8.901,8.885,8.898,8.862,8.715,8.442,8.077,7.688,7.341,7.077,6.903,6.802,6.749,6.721,
-6.698,6.651,6.550,6.366,6.090,5.746,5.381,5.051,4.791,4.600,4.443,4.274,4.054,3.776,3.459,3.134,
-2.825,2.537,2.256,1.958,1.632,1.281,.934,.625,.383,.214,.099,-.002,-.129,-.310,-.549,-.831,
--1.136,-1.457,-1.811,-2.230,-2.744,-3.356,-4.033,-4.714,-5.340,-5.881,-6.352,-6.810,-7.321,-7.926,-8.617,-9.330,
--9.975,-10.466,-10.758,-10.862,-10.834,-10.742,-10.640,-10.543,-10.437,-10.298,-10.127,-9.966,-9.895,-9.998,-10.324,-10.863,
--11.544,-12.272,-12.965,-13.597,-14.193,-14.802,-15.460,-16.154,-16.825,-17.399,-17.833,-18.140,-18.387,-18.667,-19.049,-19.551,
--20.137,-20.743,-21.309,-21.802,-22.223,-22.590,-22.920,-23.219,-23.483,-23.708,-23.903,-24.091,-24.300,-24.555,-24.865,-25.219,
--25.590,-25.942,-26.243,-26.475,-26.645,-26.782,-26.931,-27.133,-27.404,-27.727,-28.056,-28.340,-28.554,-28.714,-28.874,-29.096,
--29.416,-29.825,-30.274,-30.703,-31.076,-31.401,-31.718,-32.072,-32.478,-32.915,-33.342,-33.728,-34.073,-34.411,-34.783,-35.204,
--35.648,-36.065,-36.407,-36.661,-36.855,-37.039,-37.254,-37.505,-37.763,-37.986,-38.150,-38.262,-38.357,-38.471,-38.621,-38.799,
--38.976,-39.125,-39.234,-39.304,-39.343,-39.356,-39.345,-39.311,-39.261,-39.211,-39.179,-39.185,-39.236,-39.334,-39.474,-39.646,
--39.831,-40.005,-40.138,-40.207,-40.204,-40.147,-40.067,-39.999,-39.966,-39.970,-39.996,-40.020,-40.015,-39.959,-39.826,-39.589,
--39.232,-38.754,-38.189,-37.600,-37.070,-36.678,-36.484,-36.517,-36.774,-37.227,-37.824,-38.490,-39.135,-39.666,-40.014,-40.157,
--40.128,-40.001,-39.862,-39.773,-39.749,-39.757,-39.742,-39.655,-39.473,-39.213,-38.915,-38.625,-38.374,-38.169,-37.987,-37.791,
--37.540,-37.211,-36.812,-36.384,-35.989,-35.692,-35.536,-35.529,-35.648,-35.849,-36.091,-36.345,-36.605,-36.876,-37.169,-37.493,
--37.848,-38.222,-38.590,-38.914,-39.153,-39.273,-39.264,-39.149,-38.971,-38.780,-38.602,-38.432,-38.236,-37.965,-37.586,-37.091,
--36.502,-35.867,-35.246,-34.707,-34.314,-34.110,-34.095,-34.212,-34.342,-34.350,-34.133,-33.683,-33.106,-32.581,-32.287,-32.312,
--32.607,-33.007,-33.304,-33.341,-33.075,-32.576,-31.973,-31.372,-30.806,-30.227,-29.550,-28.714,-27.730,-26.686,-25.708,-24.904,
--24.316,-23.906,-23.579,-23.233,-22.806,-22.300,-21.771,-21.285,-20.882,-20.545,-20.218,-19.837,-19.374,-18.852,-18.327,-17.856,
--17.449,-17.065,-16.635,-16.104,-15.474,-14.800,-14.162,-13.618,-13.175,-12.789,-12.395,-11.946,-11.430,-10.872,-10.305,-9.757,
--9.244,-8.782,-8.388,-8.083,-7.867,-7.706,-7.536,-7.287,-6.916,-6.426,-5.865,-5.290,-4.739,-4.212,-3.683,-3.125,
--2.529,-1.906,-1.269,-.620,.054,.762,1.486,2.181,2.795,3.300,3.717,4.111,4.554,5.081,5.674,6.269,
-6.800,7.237,7.602,7.949,8.326,8.753,9.209,9.663,10.095,10.510,10.932,11.377,11.840,12.293,12.705,13.057,
-13.357,13.626,13.889,14.162,14.456,14.783,15.159,15.597,16.086,16.580,17.002,17.271,17.336,17.207,16.947,16.655,
-16.423,16.306,16.317,16.429,16.601,16.792,16.975,17.132,17.255,17.350,17.431,17.516,17.625,17.763,17.918,18.065,
-18.168,18.197,18.132,17.962,17.690,17.336,16.945,16.589,16.351,16.303,16.469,16.802,17.197,17.516,17.643,17.521,
-17.173,16.684,16.166,15.721,15.413,15.265,15.263,15.375,15.559,15.780,16.012,16.241,16.468,16.693,16.913,17.116,
-17.282,17.405,17.496,17.588,17.722,17.914,18.152,18.389,18.577,18.691,18.749,18.800,18.890,19.037,19.220,19.397,
-19.535,19.633,19.719,19.823,19.953,20.091,20.211,20.311,20.428,20.620,20.925,21.328,21.751,22.099,22.308,22.391,
-22.432,22.542,22.796,23.198,23.680,24.145,24.510,24.734,24.811,24.752,24.567,24.271,23.890,23.460,23.002,22.475,
-21.761,20.686,19.088,16.900,14.199,11.195,8.158,5.333,2.894,.942,-.451,-1.204,-1.245,-.561,.736,2.392,
-4.070,5.462,6.395,6.868,7.002,6.940,6.742,6.364,5.709,4.718,3.442,2.041,.729,-.318,-1.011,-1.346,
--1.359,-1.080,-.526,.275,1.244,2.247,3.127,3.771,4.154,4.332,4.396,4.411,4.375,4.248,3.993,3.631,
-3.241,2.921,2.730,2.652,2.616,2.548,2.421,2.279,2.195,2.227,2.373,2.573,2.752,2.856,2.878,2.840,
-2.764,2.661,2.528,2.378,2.244,2.158,2.122,2.086,1.980,1.780,1.571,1.544,1.906,2.747,3.924,5.068,
-5.717,5.537,4.496,2.908,1.302,.186,-.171,.176,.918,1.680,2.205,2.438,2.492,2.535,2.675,2.922,
-3.212,3.477,3.694,3.887,4.089,4.310,4.523,4.689,4.792,4.860,4.948,5.112,5.370,5.698,6.043,6.359,
-6.629,6.872,7.129,7.443,7.832,8.288,8.773,9.237,9.640,9.973,10.267,10.578,10.968,11.467,12.065,12.715,
-13.369,14.005,14.641,15.310,16.015,16.700,17.250,17.537,17.485,17.111,16.528,15.884,15.293,14.785,14.302,13.747,
-13.044,12.170,11.161,10.079,8.976,7.888,6.840,5.875,5.056,4.456,4.125,4.063,4.221,4.520,4.879,5.246,
-5.595,5.920,6.222,6.501,6.762,7.021,7.300,7.619,7.980,8.362,8.729,9.050,9.315,9.539,9.754,9.987,
-10.243,10.505,10.740,10.919,11.030,11.075,11.069,11.026,10.958,10.871,10.774,10.676,10.586,10.507,10.433,10.348,
-10.234,10.085,9.910,9.733,9.585,9.485,9.436,9.424,9.427,9.425,9.412,9.383,9.332,9.238,9.071,8.806,
-8.441,8.004,7.547,7.120,6.749,6.425,6.114,5.783,5.418,5.033,4.662,4.335,4.057,3.812,3.569,3.300,
-2.994,2.652,2.283,1.895,1.489,1.072,.654,.249,-.130,-.484,-.820,-1.153,-1.485,-1.812,-2.120,-2.399,
--2.651,-2.892,-3.135,-3.388,-3.645,-3.892,-4.116,-4.313,-4.494,-4.675,-4.872,-5.095,-5.345,-5.613,-5.882,-6.127,
--6.333,-6.507,-6.691,-6.961,-7.393,-8.016,-8.773,-9.508,-10.012,-10.108,-9.731,-8.979,-8.082,-7.323,-6.930,-6.993,
--7.446,-8.106,-8.759,-9.242,-9.487,-9.525,-9.455,-9.396,-9.440,-9.630,-9.948,-10.328,-10.677,-10.904,-10.949,-10.806,
--10.522,-10.190,-9.912,-9.767,-9.789,-9.959,-10.222,-10.515,-10.793,-11.042,-11.273,-11.506,-11.746,-11.976,-12.164,-12.286,
--12.343,-12.367,-12.410,-12.509,-12.675,-12.880,-13.082,-13.248,-13.373,-13.478,-13.586,-13.707,-13.822,-13.899,-13.916,-13.882,
--13.830,-13.805,-13.832,-13.908,-14.013,-14.130,-14.264,-14.441,-14.689,-15.012,-15.383,-15.754,-16.085,-16.363,-16.605,-16.843,
--17.094,-17.357,-17.615,-17.858,-18.099,-18.372,-18.709,-19.122,-19.589,-20.069,-20.522,-20.930,-21.299,-21.644,-21.974,-22.278,
--22.537,-22.734,-22.871,-22.965,-23.041,-23.116,-23.198,-23.289,-23.391,-23.512,-23.650,-23.793,-23.914,-23.988,-24.014,-24.025,
--24.077,-24.220,-24.464,-24.765,-25.044,-25.232,-25.305,-25.299,-25.284,-25.323,-25.434,-25.589,-25.741,-25.869,-25.996,-26.182,
--26.480,-26.901,-27.397,-27.884,-28.291,-28.589,-28.807,-28.998,-29.205,-29.429,-29.638,-29.792,-29.875,-29.908,-29.934,-29.994,
--30.109,-30.279,-30.499,-30.782,-31.151,-31.632,-32.220,-32.874,-33.524,-34.098,-34.560,-34.915,-35.198,-35.453,-35.703,-35.946,
--36.168,-36.363,-36.537,-36.713,-36.909,-37.133,-37.377,-37.625,-37.866,-38.098,-38.324,-38.547,-38.765,-38.978,-39.191,-39.419,
--39.675,-39.967,-40.284,-40.604,-40.902,-41.167,-41.406,-41.640,-41.889,-42.161,-42.449,-42.739,-43.022,-43.297,-43.570,-43.848,
--44.127,-44.401,-44.661,-44.904,-45.133,-45.349,-45.545,-45.705,-45.811,-45.858,-45.851,-45.811,-45.753,-45.681,-45.586,-45.456,
--45.288,-45.102,-44.933,-44.813,-44.753,-44.740,-44.740,-44.725,-44.681,-44.617,-44.552,-44.496,-44.447,-44.389,-44.306,-44.198,
--44.081,-43.978,-43.897,-43.824,-43.721,-43.548,-43.283,-42.937,-42.548,-42.163,-41.815,-41.508,-41.217,-40.909,-40.555,-40.145,
--39.686,-39.192,-38.678,-38.153,-37.622,-37.086,-36.548,-36.005,-35.451,-34.878,-34.285,-33.685,-33.103,-32.566,-32.086,-31.651,
--31.228,-30.780,-30.286,-29.749,-29.194,-28.649,-28.126,-27.616,-27.101,-26.570,-26.031,-25.506,-25.018,-24.569,-24.139,-23.702,
--23.244,-22.780,-22.348,-21.985,-21.701,-21.469,-21.236,-20.952,-20.594,-20.183,-19.765,-19.388,-19.077,-18.833,-18.633,-18.450,
--18.258,-18.034,-17.752,-17.384,-16.922,-16.383,-15.823,-15.312,-14.906,-14.609,-14.365,-14.075,-13.644,-13.018,-12.204,-11.248,
--10.203,-9.095,-7.924,-6.681,-5.387,-4.106,-2.923,-1.906,-1.065,-.341,.360,1.119,1.958,2.837,3.690,4.478,
-5.219,5.990,6.876,7.916,9.076,10.257,11.344,12.263,13.004,13.618,14.175,14.730,15.297,15.864,16.416,16.959,
-17.519,18.126,18.794,19.504,20.221,20.907,21.542,22.135,22.714,23.315,23.968,24.686,25.470,26.301,27.149,27.977,
-28.748,29.442,30.068,30.663,31.275,31.945,32.680,33.452,34.215,34.925,35.569,36.161,36.732,37.310,37.905,38.510,
-39.113,39.707,40.299,40.899,41.509,42.118,42.708,43.265,43.794,44.311,44.838,45.388,45.957,46.532,47.101,47.657,
-48.205,48.749,49.295,49.840,50.386,50.938,51.503,52.083,52.668,53.238,53.774,54.276,54.770,55.293,55.877,56.520,
-57.186,57.816,58.357,58.783,59.098,59.325,59.480,59.574,59.609,59.600,59.582,59.597,59.673,59.803,59.948,60.058,
-60.103,60.095,60.078,60.100,60.184,60.309,60.431,60.511,60.537,60.535,60.539,60.572,60.627,60.673,60.686,60.668,
-60.644,60.653,60.713,60.814,60.924,61.007,61.054,61.079,61.109,61.159,61.218,61.258,61.250,61.188,61.088,60.978,
-60.872,60.758,60.611,60.414,60.186,59.981,59.871,59.901,60.060,60.284,60.487,60.603,60.623,60.591,60.571,60.603,
-60.674,60.731,60.719,60.620,60.478,60.374,60.388,60.542,60.785,61.012,61.111,61.012,60.718,60.293,59.829,59.407,
-59.070,58.821,58.643,58.523,58.462,58.479,58.592,58.806,59.098,59.420,59.713,59.927,60.039,60.063,60.041,60.023,
-60.040,60.090,60.135,60.123,60.009,59.785,59.478,59.143,58.839,58.601,58.435,58.321,58.220,58.099,57.933,57.718,
-57.470,57.217,56.996,56.833,56.734,56.677,56.614,56.498,56.303,56.038,55.749,55.493,55.302,55.166,55.034,54.838,
-54.533,54.119,53.645,53.182,52.788,52.475,52.209,51.920,51.535,51.013,50.354,49.596,48.803,48.033,47.326,46.696,
-46.139,45.641,45.772,45.389,45.054,44.754,44.478,44.214,43.942,43.640,43.296,42.923,42.557,42.241,42.010,41.866,
-41.781,41.716,41.641,41.547,41.445,41.342,41.233,41.101,40.927,40.718,40.504,40.332,40.235,40.214,40.234,40.244,
-40.205,40.109,39.981,39.859,39.774,39.740,39.752,39.795,39.853,39.911,39.951,39.958,39.927,39.868,39.807,39.775,
-39.781,39.803,39.785,39.663,39.393,38.975,38.455,37.899,37.368,36.890,36.464,36.070,35.696,35.342,35.023,34.756,
-34.538,34.347,34.142,33.874,33.509,33.032,32.454,31.808,31.140,30.499,29.929,29.467,29.142,28.978,28.985,29.151,
-29.439,29.779,30.090,30.295,30.354,30.268,30.079,29.841,29.592,29.345,29.090,28.817,28.535,28.271,28.054,27.893,
-27.763,27.617,27.414,27.144,26.839,26.556,26.339,26.195,26.085,25.945,25.721,25.393,24.981,24.524,24.063,23.615,
-23.180,22.753,22.336,21.940,21.579,21.255,20.953,20.649,20.325,19.976,19.617,19.264,18.927,18.602,18.278,17.949,
-17.626,17.338,17.114,16.971,16.896,16.854,16.799,16.700,16.553,16.383,16.230,16.122,16.059,16.002,15.890,15.659,
-15.277,14.755,14.151,13.544,13.002,12.557,12.193,11.868,11.536,11.181,10.818,10.481,10.198,9.968,9.766,9.560,
-9.336,9.108,8.911,8.773,8.692,8.633,8.540,8.373,8.123,7.817,7.496,7.199,6.939,6.717,6.528,6.373,
-6.258,6.182,6.119,6.026,5.862,5.607,5.283,4.940,4.637,4.409,4.247,4.110,3.946,3.716,3.418,3.075,
-2.723,2.389,2.083,1.798,1.519,1.233,.938,.643,.362,.109,-.110,-.301,-.475,-.649,-.837,-1.040,
--1.257,-1.486,-1.740,-2.044,-2.431,-2.924,-3.516,-4.169,-4.824,-5.428,-5.959,-6.442,-6.934,-7.494,-8.151,-8.879,
--9.604,-10.231,-10.682,-10.929,-10.999,-10.961,-10.891,-10.838,-10.807,-10.772,-10.696,-10.574,-10.448,-10.398,-10.515,-10.858,
--11.420,-12.133,-12.897,-13.623,-14.273,-14.862,-15.438,-16.039,-16.665,-17.272,-17.807,-18.237,-18.578,-18.891,-19.249,-19.703,
--20.253,-20.856,-21.449,-21.979,-22.423,-22.788,-23.094,-23.358,-23.583,-23.770,-23.926,-24.068,-24.223,-24.418,-24.664,-24.956,
--25.274,-25.597,-25.907,-26.193,-26.452,-26.686,-26.906,-27.124,-27.356,-27.608,-27.872,-28.128,-28.351,-28.534,-28.694,-28.879,
--29.138,-29.500,-29.950,-30.435,-30.889,-31.271,-31.586,-31.879,-32.205,-32.597,-33.044,-33.507,-33.944,-34.340,-34.715,-35.103,
--35.520,-35.951,-36.351,-36.678,-36.922,-37.112,-37.296,-37.511,-37.756,-37.997,-38.190,-38.317,-38.398,-38.480,-38.606,-38.792,
--39.017,-39.239,-39.422,-39.552,-39.636,-39.687,-39.710,-39.702,-39.660,-39.593,-39.523,-39.478,-39.479,-39.533,-39.630,-39.760,
--39.912,-40.081,-40.255,-40.415,-40.536,-40.599,-40.602,-40.563,-40.506,-40.451,-40.394,-40.320,-40.207,-40.046,-39.848,-39.630,
--39.405,-39.169,-38.899,-38.577,-38.205,-37.819,-37.489,-37.298,-37.315,-37.573,-38.054,-38.685,-39.360,-39.963,-40.402,-40.635,
--40.677,-40.596,-40.477,-40.393,-40.379,-40.420,-40.467,-40.458,-40.346,-40.116,-39.789,-39.411,-39.040,-38.720,-38.467,-38.264,
--38.067,-37.822,-37.497,-37.094,-36.656,-36.251,-35.941,-35.762,-35.711,-35.754,-35.850,-35.967,-36.089,-36.211,-36.338,-36.475,
--36.637,-36.840,-37.104,-37.435,-37.809,-38.177,-38.476,-38.658,-38.712,-38.666,-38.565,-38.445,-38.314,-38.148,-37.913,-37.584,
--37.162,-36.669,-36.143,-35.629,-35.176,-34.832,-34.630,-34.569,-34.588,-34.579,-34.430,-34.082,-33.579,-33.069,-32.741,-32.729,
--33.033,-33.504,-33.904,-34.018,-33.745,-33.135,-32.340,-31.525,-30.789,-30.131,-29.482,-28.772,-27.983,-27.161,-26.384,-25.721,
--25.186,-24.744,-24.326,-23.875,-23.361,-22.798,-22.227,-21.691,-21.220,-20.815,-20.448,-20.077,-19.666,-19.204,-18.710,-18.223,
--17.777,-17.375,-16.984,-16.550,-16.032,-15.431,-14.792,-14.183,-13.654,-13.212,-12.817,-12.406,-11.931,-11.377,-10.768,-10.144,
--9.544,-8.997,-8.524,-8.147,-7.879,-7.710,-7.597,-7.468,-7.244,-6.877,-6.369,-5.770,-5.149,-4.556,-4.003,-3.470,
--2.931,-2.369,-1.786,-1.187,-.565,.095,.803,1.543,2.266,2.913,3.445,3.873,4.255,4.668,5.161,5.730,
-6.325,6.883,7.364,7.778,8.165,8.570,9.014,9.486,9.961,10.418,10.860,11.303,11.762,12.231,12.689,13.109,
-13.479,13.807,14.119,14.440,14.782,15.149,15.541,15.961,16.412,16.881,17.330,17.690,17.889,17.878,17.660,17.299,
-16.900,16.573,16.396,16.393,16.539,16.774,17.032,17.260,17.431,17.546,17.626,17.700,17.791,17.910,18.049,18.186,
-18.297,18.361,18.370,18.323,18.217,18.049,17.819,17.542,17.257,17.028,16.916,16.955,17.131,17.374,17.579,17.651,
-17.531,17.219,16.771,16.273,15.816,15.469,15.273,15.234,15.330,15.521,15.759,16.005,16.236,16.449,16.651,16.847,
-17.032,17.193,17.322,17.427,17.536,17.683,17.881,18.111,18.330,18.492,18.583,18.628,18.684,18.798,18.984,19.207,
-19.416,19.570,19.671,19.756,19.866,20.017,20.190,20.348,20.477,20.602,20.781,21.065,21.454,21.891,22.282,22.555,
-22.699,22.771,22.864,23.052,23.352,23.720,24.078,24.353,24.500,24.506,24.378,24.138,23.814,23.437,23.027,22.555,
-21.920,20.952,19.464,17.335,14.583,11.389,8.051,4.887,2.148,-.018,-1.538,-2.365,-2.442,-1.733,-.293,1.673,
-3.813,5.723,7.089,7.803,7.982,7.876,7.725,7.627,7.513,7.211,6.571,5.553,4.249,2.826,1.441,.193,
--.869,-1.703,-2.236,-2.372,-2.048,-1.285,-.211,.985,2.123,3.095,3.872,4.469,4.890,5.105,5.078,4.816,
-4.400,3.966,3.641,3.470,3.394,3.290,3.059,2.686,2.261,1.914,1.740,1.746,1.861,1.998,2.113,2.221,
-2.361,2.539,2.703,2.775,2.708,2.535,2.352,2.248,2.233,2.223,2.109,1.866,1.622,1.621,2.082,3.029,
-4.207,5.160,5.441,4.844,3.530,1.965,.696,.103,.244,.876,1.624,2.181,2.437,2.475,2.468,2.549,
-2.752,3.023,3.287,3.507,3.695,3.885,4.090,4.288,4.444,4.543,4.616,4.725,4.928,5.246,5.646,6.067,
-6.450,6.766,7.034,7.296,7.603,7.984,8.441,8.947,9.464,9.957,10.416,10.865,11.350,11.918,12.594,13.358,
-14.155,14.923,15.614,16.213,16.711,17.074,17.227,17.059,16.481,15.484,14.174,12.748,11.421,10.340,9.534,8.918,
-8.357,7.735,7.006,6.196,5.365,4.569,3.842,3.205,2.685,2.323,2.167,2.246,2.548,3.022,3.599,4.214,
-4.827,5.420,5.985,6.512,6.991,7.420,7.811,8.190,8.582,8.998,9.425,9.834,10.195,10.495,10.738,10.940,
-11.116,11.268,11.387,11.459,11.477,11.446,11.376,11.283,11.174,11.055,10.924,10.784,10.636,10.483,10.326,10.160,
-9.981,9.783,9.570,9.356,9.159,8.995,8.867,8.765,8.667,8.554,8.425,8.293,8.180,8.101,8.041,7.963,
-7.821,7.585,7.264,6.897,6.538,6.224,5.952,5.690,5.400,5.061,4.686,4.313,3.977,3.689,3.432,3.172,
-2.882,2.552,2.193,1.821,1.444,1.059,.659,.244,-.176,-.584,-.968,-1.325,-1.662,-1.987,-2.309,-2.631,
--2.951,-3.271,-3.585,-3.884,-4.155,-4.387,-4.581,-4.756,-4.940,-5.154,-5.401,-5.663,-5.916,-6.149,-6.367,-6.586,
--6.811,-7.028,-7.214,-7.364,-7.522,-7.776,-8.215,-8.866,-9.649,-10.378,-10.823,-10.815,-10.324,-9.488,-8.566,-7.838,
--7.503,-7.618,-8.095,-8.756,-9.403,-9.891,-10.159,-10.237,-10.213,-10.195,-10.271,-10.473,-10.775,-11.102,-11.364,-11.492,
--11.461,-11.296,-11.061,-10.829,-10.656,-10.574,-10.582,-10.665,-10.800,-10.966,-11.152,-11.352,-11.558,-11.761,-11.948,-12.104,
--12.228,-12.329,-12.431,-12.558,-12.719,-12.901,-13.074,-13.202,-13.271,-13.295,-13.315,-13.370,-13.480,-13.633,-13.793,-13.924,
--14.007,-14.045,-14.050,-14.034,-13.998,-13.951,-13.913,-13.930,-14.051,-14.310,-14.694,-15.150,-15.603,-15.991,-16.291,-16.518,
--16.707,-16.888,-17.074,-17.269,-17.486,-17.749,-18.090,-18.523,-19.028,-19.557,-20.054,-20.487,-20.855,-21.188,-21.513,-21.832,
--22.122,-22.349,-22.496,-22.573,-22.616,-22.660,-22.725,-22.806,-22.886,-22.959,-23.031,-23.112,-23.203,-23.286,-23.335,-23.340,
--23.327,-23.348,-23.460,-23.684,-23.988,-24.301,-24.549,-24.697,-24.768,-24.820,-24.913,-25.065,-25.251,-25.428,-25.568,-25.689,
--25.840,-26.074,-26.404,-26.795,-27.182,-27.511,-27.767,-27.984,-28.212,-28.478,-28.771,-29.040,-29.235,-29.336,-29.373,-29.403,
--29.487,-29.655,-29.906,-30.220,-30.584,-31.001,-31.484,-32.031,-32.619,-33.199,-33.719,-34.150,-34.491,-34.770,-35.016,-35.246,
--35.464,-35.660,-35.835,-36.000,-36.172,-36.367,-36.585,-36.819,-37.058,-37.297,-37.539,-37.785,-38.032,-38.272,-38.498,-38.715,
--38.942,-39.200,-39.503,-39.840,-40.183,-40.498,-40.768,-40.997,-41.211,-41.437,-41.688,-41.962,-42.243,-42.519,-42.786,-43.056,
--43.337,-43.632,-43.934,-44.230,-44.511,-44.774,-45.020,-45.247,-45.448,-45.611,-45.723,-45.780,-45.784,-45.744,-45.667,-45.556,
--45.418,-45.264,-45.112,-44.985,-44.897,-44.848,-44.823,-44.799,-44.759,-44.697,-44.624,-44.555,-44.502,-44.462,-44.420,-44.361,
--44.279,-44.182,-44.088,-44.008,-43.938,-43.851,-43.708,-43.477,-43.149,-42.744,-42.309,-41.890,-41.513,-41.178,-40.857,-40.512,
--40.116,-39.662,-39.163,-38.639,-38.108,-37.579,-37.052,-36.518,-35.974,-35.416,-34.846,-34.270,-33.697,-33.140,-32.609,-32.111,
--31.637,-31.173,-30.698,-30.198,-29.674,-29.136,-28.600,-28.077,-27.568,-27.067,-26.568,-26.073,-25.588,-25.120,-24.667,-24.223,
--23.787,-23.369,-22.992,-22.675,-22.417,-22.185,-21.922,-21.569,-21.105,-20.554,-19.985,-19.478,-19.090,-18.829,-18.657,-18.519,
--18.363,-18.164,-17.915,-17.617,-17.265,-16.857,-16.395,-15.906,-15.426,-14.990,-14.603,-14.233,-13.815,-13.288,-12.612,-11.783,
--10.820,-9.744,-8.564,-7.286,-5.932,-4.563,-3.271,-2.148,-1.235,-.496,.175,.895,1.736,2.675,3.616,4.445,
-5.105,5.641,6.179,6.862,7.770,8.874,10.049,11.142,12.045,12.741,13.304,13.843,14.445,15.135,15.880,16.619,
-17.306,17.926,18.496,19.047,19.605,20.176,20.759,21.345,21.934,22.528,23.135,23.764,24.430,25.145,25.915,26.732,
-27.567,28.379,29.131,29.811,30.439,31.055,31.701,32.393,33.112,33.821,34.485,35.097,35.677,36.262,36.879,37.532,
-38.201,38.859,39.495,40.114,40.735,41.370,42.014,42.650,43.258,43.829,44.370,44.897,45.422,45.948,46.472,46.990,
-47.508,48.034,48.577,49.132,49.686,50.229,50.756,51.279,51.810,52.354,52.904,53.447,53.979,54.515,55.082,55.699,
-56.362,57.032,57.653,58.177,58.588,58.899,59.141,59.335,59.483,59.575,59.609,59.605,59.604,59.642,59.733,59.856,
-59.972,60.052,60.099,60.145,60.224,60.351,60.502,60.629,60.692,60.684,60.633,60.586,60.578,60.615,60.672,60.719,
-60.744,60.757,60.786,60.852,60.954,61.070,61.173,61.249,61.301,61.348,61.400,61.450,61.475,61.451,61.366,61.233,
-61.075,60.912,60.748,60.573,60.380,60.185,60.028,59.962,60.022,60.199,60.436,60.647,60.761,60.752,60.651,60.524,
-60.433,60.403,60.412,60.417,60.389,60.336,60.308,60.361,60.522,60.761,60.994,61.119,61.055,60.781,60.338,59.816,
-59.313,58.915,58.667,58.583,58.649,58.840,59.129,59.482,59.867,60.243,60.566,60.798,60.919,60.934,60.879,60.803,
-60.748,60.726,60.712,60.651,60.492,60.211,59.829,59.403,59.000,58.665,58.410,58.215,58.046,57.880,57.708,57.531,
-57.355,57.177,56.999,56.827,56.676,56.559,56.474,56.396,56.283,56.102,55.852,55.568,55.311,55.128,55.030,54.973,
-54.883,54.691,54.364,53.921,53.423,52.936,52.506,52.137,51.794,51.420,50.961,50.386,49.700,48.939,48.161,47.425,
-46.775,46.227,45.772,46.098,45.737,45.407,45.092,44.794,44.519,44.265,44.013,43.737,43.426,43.091,42.769,42.497,
-42.294,42.150,42.037,41.933,41.832,41.746,41.684,41.636,41.571,41.453,41.270,41.046,40.833,40.684,40.622,40.628,
-40.652,40.645,40.583,40.473,40.349,40.246,40.191,40.191,40.239,40.318,40.404,40.464,40.472,40.413,40.305,40.189,
-40.116,40.113,40.163,40.205,40.155,39.949,39.570,39.059,38.487,37.927,37.420,36.966,36.541,36.118,35.690,35.270,
-34.889,34.574,34.336,34.153,33.980,33.757,33.428,32.962,32.364,31.678,30.972,30.320,29.788,29.419,29.232,29.228,
-29.387,29.668,30.009,30.332,30.561,30.644,30.567,30.357,30.062,29.735,29.409,29.102,28.818,28.569,28.366,28.220,
-28.119,28.032,27.911,27.719,27.451,27.138,26.833,26.580,26.391,26.236,26.059,25.808,25.453,25.003,24.491,23.963,
-23.454,22.987,22.566,22.184,21.827,21.483,21.138,20.787,20.434,20.091,19.773,19.487,19.226,18.971,18.700,18.405,
-18.099,17.809,17.569,17.395,17.280,17.195,17.104,16.987,16.841,16.686,16.548,16.440,16.359,16.275,16.145,15.926,
-15.591,15.138,14.596,14.016,13.457,12.966,12.558,12.216,11.904,11.585,11.244,10.893,10.560,10.267,10.018,9.795,
-9.575,9.344,9.112,8.903,8.736,8.608,8.494,8.362,8.191,7.981,7.750,7.518,7.285,7.038,6.761,6.456,
-6.149,5.881,5.682,5.548,5.444,5.319,5.138,4.899,4.631,4.377,4.166,3.995,3.837,3.654,3.418,3.127,
-2.793,2.439,2.087,1.748,1.428,1.128,.845,.574,.306,.034,-.244,-.521,-.788,-1.032,-1.249,-1.439,
--1.607,-1.765,-1.928,-2.118,-2.364,-2.691,-3.115,-3.626,-4.191,-4.766,-5.317,-5.839,-6.359,-6.927,-7.580,-8.321,
--9.104,-9.849,-10.470,-10.907,-11.151,-11.239,-11.237,-11.207,-11.184,-11.168,-11.135,-11.067,-10.973,-10.907,-10.947,-11.169,
--11.610,-12.245,-12.994,-13.754,-14.444,-15.032,-15.542,-16.029,-16.540,-17.084,-17.634,-18.149,-18.599,-18.998,-19.388,-19.820,
--20.325,-20.892,-21.479,-22.031,-22.507,-22.894,-23.201,-23.444,-23.637,-23.785,-23.896,-23.988,-24.088,-24.229,-24.431,-24.693,
--24.998,-25.320,-25.641,-25.953,-26.258,-26.556,-26.841,-27.099,-27.320,-27.506,-27.670,-27.834,-28.012,-28.208,-28.421,-28.653,
--28.923,-29.254,-29.664,-30.142,-30.650,-31.133,-31.548,-31.889,-32.188,-32.499,-32.861,-33.281,-33.731,-34.173,-34.585,-34.974,
--35.361,-35.761,-36.165,-36.539,-36.851,-37.096,-37.303,-37.514,-37.757,-38.023,-38.272,-38.461,-38.574,-38.640,-38.710,-38.830,
--39.012,-39.228,-39.435,-39.603,-39.730,-39.831,-39.923,-40.005,-40.058,-40.063,-40.023,-39.961,-39.914,-39.908,-39.946,-40.015,
--40.102,-40.203,-40.329,-40.485,-40.661,-40.828,-40.948,-40.999,-40.981,-40.916,-40.826,-40.718,-40.575,-40.380,-40.128,-39.846,
--39.577,-39.362,-39.215,-39.110,-39.000,-38.843,-38.635,-38.422,-38.284,-38.307,-38.541,-38.976,-39.538,-40.112,-40.585,-40.879,
--40.982,-40.938,-40.826,-40.722,-40.669,-40.670,-40.691,-40.689,-40.626,-40.484,-40.271,-40.008,-39.725,-39.455,-39.219,-39.021,
--38.843,-38.649,-38.401,-38.081,-37.703,-37.314,-36.971,-36.717,-36.555,-36.460,-36.391,-36.319,-36.242,-36.175,-36.135,-36.124,
--36.134,-36.162,-36.221,-36.343,-36.558,-36.871,-37.248,-37.626,-37.942,-38.160,-38.279,-38.321,-38.306,-38.238,-38.103,-37.893,
--37.615,-37.291,-36.952,-36.611,-36.272,-35.937,-35.618,-35.342,-35.131,-34.971,-34.814,-34.597,-34.290,-33.936,-33.643,-33.531,
--33.650,-33.938,-34.223,-34.309,-34.066,-33.495,-32.713,-31.884,-31.124,-30.456,-29.825,-29.161,-28.440,-27.706,-27.036,-26.482,
--26.035,-25.631,-25.191,-24.673,-24.091,-23.496,-22.936,-22.430,-21.957,-21.485,-20.996,-20.497,-20.007,-19.544,-19.109,-18.688,
--18.270,-17.851,-17.430,-17.003,-16.552,-16.054,-15.499,-14.901,-14.298,-13.731,-13.218,-12.742,-12.261,-11.733,-11.141,-10.502,
--9.855,-9.244,-8.701,-8.240,-7.865,-7.570,-7.336,-7.125,-6.887,-6.567,-6.133,-5.587,-4.968,-4.329,-3.716,-3.146,
--2.613,-2.098,-1.586,-1.069,-.535,.032,.653,1.336,2.062,2.779,3.424,3.953,4.367,4.713,5.057,5.452,
-5.907,6.395,6.875,7.323,7.742,8.159,8.600,9.070,9.552,10.021,10.465,10.891,11.322,11.772,12.240,12.708,
-13.153,13.567,13.964,14.365,14.785,15.222,15.658,16.076,16.472,16.859,17.248,17.633,17.971,18.194,18.241,18.087,
-17.767,17.373,17.018,16.796,16.749,16.858,17.061,17.283,17.469,17.602,17.694,17.776,17.872,17.995,18.135,18.272,
-18.386,18.466,18.511,18.528,18.521,18.489,18.420,18.303,18.137,17.939,17.745,17.595,17.522,17.532,17.597,17.666,
-17.675,17.573,17.334,16.970,16.527,16.076,15.692,15.439,15.347,15.408,15.582,15.808,16.037,16.245,16.436,16.633,
-16.850,17.084,17.312,17.506,17.657,17.776,17.893,18.027,18.175,18.311,18.408,18.463,18.505,18.584,18.737,18.963,
-19.221,19.454,19.625,19.743,19.847,19.983,20.165,20.370,20.558,20.706,20.836,21.006,21.271,21.643,22.076,22.489,
-22.805,22.998,23.103,23.189,23.327,23.545,23.827,24.120,24.359,24.481,24.441,24.217,23.823,23.308,22.751,22.206,
-21.658,20.979,19.947,18.326,15.978,12.950,9.496,5.995,2.829,.271,-1.559,-2.648,-3.019,-2.672,-1.603,.125,
-2.313,4.621,6.655,8.101,8.849,9.014,8.856,8.635,8.486,8.381,8.182,7.752,7.036,6.076,4.963,3.775,
-2.539,1.257,-.034,-1.227,-2.155,-2.652,-2.628,-2.104,-1.201,-.078,1.120,2.281,3.321,4.156,4.707,4.939,
-4.895,4.705,4.532,4.496,4.599,4.722,4.700,4.425,3.913,3.302,2.762,2.400,2.206,2.085,1.950,1.795,
-1.698,1.758,1.994,2.304,2.515,2.488,2.222,1.860,1.598,1.553,1.684,1.830,1.842,1.719,1.640,1.863,
-2.535,3.546,4.533,5.047,4.795,3.815,2.470,1.273,.630,.659,1.176,1.838,2.344,2.574,2.599,2.586,
-2.664,2.854,3.088,3.275,3.376,3.420,3.472,3.575,3.732,3.911,4.089,4.275,4.513,4.847,5.288,5.801,
-6.324,6.796,7.191,7.521,7.830,8.167,8.567,9.045,9.590,10.177,10.775,11.364,11.942,12.526,13.136,13.779,
-14.428,15.030,15.518,15.840,15.966,15.883,15.565,14.960,14.007,12.674,11.009,9.162,7.350,5.789,4.613,3.835,
-3.358,3.044,2.776,2.504,2.241,2.024,1.880,1.811,1.809,1.875,2.029,2.301,2.707,3.238,3.862,4.538,
-5.236,5.937,6.635,7.311,7.939,8.490,8.948,9.320,9.634,9.921,10.203,10.481,10.743,10.976,11.174,11.338,
-11.475,11.582,11.657,11.691,11.684,11.642,11.574,11.488,11.387,11.270,11.134,10.980,10.810,10.628,10.435,10.229,
-10.010,9.778,9.539,9.302,9.077,8.871,8.687,8.518,8.350,8.164,7.948,7.706,7.461,7.248,7.095,7.003,
-6.942,6.860,6.711,6.479,6.185,5.871,5.576,5.311,5.056,4.780,4.467,4.126,3.791,3.492,3.233,2.994,
-2.737,2.435,2.085,1.705,1.321,.947,.580,.209,-.172,-.561,-.949,-1.326,-1.689,-2.039,-2.383,-2.722,
--3.061,-3.405,-3.759,-4.119,-4.469,-4.782,-5.035,-5.226,-5.385,-5.559,-5.787,-6.074,-6.386,-6.675,-6.913,-7.109,
--7.300,-7.519,-7.763,-7.992,-8.160,-8.266,-8.377,-8.607,-9.052,-9.721,-10.499,-11.179,-11.544,-11.460,-10.935,-10.119,
--9.248,-8.560,-8.223,-8.292,-8.713,-9.343,-10.008,-10.553,-10.884,-11.000,-10.977,-10.933,-10.974,-11.150,-11.439,-11.765,
--12.036,-12.191,-12.210,-12.116,-11.949,-11.749,-11.550,-11.374,-11.244,-11.179,-11.187,-11.264,-11.386,-11.525,-11.655,-11.766,
--11.864,-11.970,-12.108,-12.294,-12.527,-12.787,-13.035,-13.228,-13.336,-13.361,-13.331,-13.300,-13.315,-13.402,-13.552,-13.733,
--13.909,-14.058,-14.170,-14.243,-14.273,-14.252,-14.182,-14.088,-14.021,-14.038,-14.179,-14.441,-14.780,-15.137,-15.466,-15.756,
--16.019,-16.278,-16.538,-16.793,-17.037,-17.283,-17.569,-17.937,-18.400,-18.929,-19.462,-19.933,-20.313,-20.619,-20.899,-21.194,
--21.506,-21.800,-22.029,-22.164,-22.218,-22.235,-22.262,-22.322,-22.405,-22.484,-22.541,-22.576,-22.606,-22.642,-22.681,-22.709,
--22.716,-22.719,-22.759,-22.880,-23.098,-23.386,-23.681,-23.920,-24.074,-24.163,-24.243,-24.366,-24.551,-24.772,-24.982,-25.148,
--25.273,-25.394,-25.562,-25.801,-26.102,-26.426,-26.732,-27.006,-27.259,-27.516,-27.790,-28.065,-28.308,-28.489,-28.610,-28.708,
--28.839,-29.051,-29.360,-29.744,-30.169,-30.605,-31.044,-31.495,-31.969,-32.461,-32.949,-33.399,-33.785,-34.098,-34.344,-34.539,
--34.698,-34.835,-34.964,-35.103,-35.272,-35.481,-35.726,-35.990,-36.252,-36.503,-36.748,-37.001,-37.271,-37.553,-37.827,-38.074,
--38.291,-38.498,-38.726,-38.999,-39.315,-39.649,-39.964,-40.236,-40.467,-40.681,-40.909,-41.172,-41.467,-41.776,-42.079,-42.368,
--42.647,-42.928,-43.220,-43.524,-43.829,-44.125,-44.405,-44.667,-44.912,-45.138,-45.336,-45.495,-45.598,-45.637,-45.609,-45.521,
--45.391,-45.240,-45.094,-44.975,-44.894,-44.851,-44.837,-44.833,-44.824,-44.798,-44.753,-44.695,-44.636,-44.590,-44.562,-44.547,
--44.532,-44.499,-44.436,-44.341,-44.225,-44.100,-43.964,-43.802,-43.583,-43.283,-42.901,-42.461,-42.010,-41.590,-41.216,-40.873,
--40.521,-40.123,-39.660,-39.141,-38.591,-38.035,-37.482,-36.927,-36.359,-35.773,-35.178,-34.591,-34.024,-33.482,-32.962,-32.454,
--31.954,-31.463,-30.983,-30.516,-30.059,-29.604,-29.144,-28.674,-28.192,-27.698,-27.195,-26.687,-26.180,-25.679,-25.188,-24.710,
--24.253,-23.830,-23.463,-23.167,-22.940,-22.748,-22.525,-22.194,-21.704,-21.054,-20.310,-19.577,-18.961,-18.522,-18.254,-18.095,
--17.958,-17.776,-17.523,-17.214,-16.883,-16.561,-16.255,-15.956,-15.642,-15.293,-14.891,-14.421,-13.868,-13.220,-12.475,-11.645,
--10.750,-9.802,-8.795,-7.713,-6.544,-5.309,-4.075,-2.935,-1.968,-1.190,-.536,.117,.887,1.826,2.884,3.935,
-4.844,5.545,6.084,6.592,7.215,8.037,9.033,10.084,11.047,11.827,12.424,12.919,13.432,14.052,14.804,15.649,
-16.513,17.326,18.048,18.673,19.220,19.718,20.195,20.681,21.198,21.759,22.364,22.996,23.639,24.280,24.929,25.606,
-26.330,27.105,27.909,28.707,29.466,30.177,30.853,31.517,32.185,32.854,33.505,34.124,34.713,35.297,35.904,36.553,
-37.238,37.933,38.612,39.263,39.897,40.531,41.179,41.835,42.475,43.079,43.635,44.152,44.644,45.127,45.604,46.076,
-46.548,47.033,47.550,48.106,48.692,49.278,49.833,50.342,50.814,51.273,51.747,52.248,52.777,53.329,53.906,54.518,
-55.169,55.841,56.496,57.085,57.574,57.963,58.286,58.582,58.872,59.146,59.371,59.517,59.587,59.614,59.644,59.708,
-59.804,59.905,59.984,60.034,60.074,60.136,60.231,60.347,60.446,60.495,60.486,60.442,60.406,60.411,60.466,60.552,
-60.642,60.718,60.783,60.853,60.945,61.060,61.181,61.290,61.375,61.435,61.483,61.527,61.563,61.572,61.534,61.438,
-61.291,61.113,60.930,60.757,60.596,60.442,60.298,60.181,60.122,60.145,60.252,60.408,60.553,60.629,60.608,60.506,
-60.377,60.280,60.250,60.281,60.332,60.360,60.349,60.316,60.299,60.330,60.408,60.493,60.518,60.427,60.194,59.840,
-59.425,59.030,58.735,58.598,58.647,58.880,59.260,59.733,60.230,60.680,61.026,61.228,61.275,61.189,61.022,60.840,
-60.708,60.659,60.682,60.718,60.689,60.531,60.230,59.825,59.388,58.990,58.661,58.393,58.151,57.911,57.674,57.462,
-57.297,57.174,57.059,56.914,56.722,56.504,56.308,56.173,56.103,56.053,55.959,55.778,55.516,55.230,54.995,54.857,
-54.809,54.788,54.711,54.508,54.159,53.694,53.172,52.656,52.185,51.763,51.359,50.926,50.418,49.812,49.120,48.388,
-47.679,47.049,46.525,46.098,46.367,46.003,45.659,45.325,45.013,44.746,44.529,44.338,44.131,43.870,43.555,43.218,
-42.913,42.675,42.510,42.392,42.290,42.191,42.103,42.042,42.007,41.975,41.909,41.785,41.611,41.430,41.291,41.227,
-41.230,41.262,41.279,41.252,41.177,41.076,40.974,40.896,40.853,40.852,40.888,40.948,41.003,41.016,40.964,40.848,
-40.701,40.571,40.495,40.473,40.459,40.384,40.189,39.853,39.402,38.892,38.383,37.912,37.483,37.076,36.664,36.230,
-35.775,35.322,34.904,34.554,34.287,34.085,33.903,33.672,33.332,32.851,32.248,31.585,30.947,30.415,30.041,29.845,
-29.817,29.927,30.134,30.387,30.627,30.792,30.833,30.727,30.485,30.147,29.766,29.390,29.055,28.781,28.574,28.432,
-28.342,28.279,28.206,28.088,27.903,27.653,27.364,27.070,26.803,26.570,26.352,26.116,25.826,25.461,25.018,24.518,
-23.990,23.468,22.976,22.524,22.102,21.692,21.272,20.836,20.400,20.000,19.677,19.457,19.331,19.258,19.178,19.045,
-18.844,18.600,18.356,18.150,17.991,17.860,17.721,17.549,17.348,17.144,16.974,16.852,16.766,16.671,16.516,16.265,
-15.905,15.455,14.950,14.430,13.928,13.468,13.061,12.704,12.385,12.081,11.775,11.455,11.127,10.803,10.498,10.219,
-9.959,9.708,9.461,9.224,9.005,8.812,8.640,8.473,8.298,8.109,7.919,7.742,7.582,7.419,7.217,6.945,
-6.594,6.195,5.801,5.464,5.210,5.030,4.888,4.744,4.575,4.381,4.175,3.972,3.778,3.585,3.380,3.149,
-2.883,2.579,2.237,1.866,1.481,1.106,.759,.450,.172,-.096,-.378,-.685,-1.011,-1.335,-1.631,-1.885,
--2.094,-2.269,-2.427,-2.586,-2.767,-2.988,-3.268,-3.614,-4.022,-4.473,-4.944,-5.421,-5.915,-6.454,-7.074,-7.790,
--8.583,-9.397,-10.152,-10.775,-11.223,-11.494,-11.623,-11.658,-11.642,-11.596,-11.526,-11.431,-11.325,-11.247,-11.260,-11.430,
--11.799,-12.364,-13.069,-13.823,-14.538,-15.156,-15.674,-16.132,-16.586,-17.074,-17.600,-18.134,-18.637,-19.093,-19.514,-19.937,
--20.403,-20.924,-21.484,-22.037,-22.538,-22.952,-23.271,-23.504,-23.666,-23.772,-23.834,-23.873,-23.915,-23.997,-24.146,-24.375,
--24.672,-25.009,-25.358,-25.703,-26.043,-26.382,-26.721,-27.042,-27.317,-27.521,-27.653,-27.742,-27.833,-27.972,-28.180,-28.453,
--28.770,-29.112,-29.479,-29.882,-30.328,-30.805,-31.279,-31.713,-32.085,-32.407,-32.717,-33.055,-33.442,-33.867,-34.303,-34.729,
--35.140,-35.548,-35.962,-36.375,-36.756,-37.079,-37.337,-37.555,-37.776,-38.029,-38.310,-38.583,-38.806,-38.960,-39.062,-39.150,
--39.259,-39.394,-39.533,-39.652,-39.742,-39.825,-39.931,-40.074,-40.239,-40.384,-40.472,-40.492,-40.469,-40.443,-40.444,-40.474,
--40.519,-40.567,-40.626,-40.723,-40.882,-41.099,-41.334,-41.527,-41.629,-41.624,-41.530,-41.380,-41.199,-40.987,-40.735,-40.442,
--40.131,-39.849,-39.643,-39.533,-39.499,-39.490,-39.450,-39.356,-39.231,-39.141,-39.161,-39.337,-39.661,-40.068,-40.458,-40.739,
--40.864,-40.848,-40.752,-40.649,-40.586,-40.569,-40.565,-40.531,-40.442,-40.302,-40.142,-39.995,-39.884,-39.811,-39.767,-39.736,
--39.702,-39.643,-39.539,-39.368,-39.127,-38.835,-38.530,-38.255,-38.027,-37.833,-37.635,-37.400,-37.126,-36.843,-36.600,-36.433,
--36.342,-36.299,-36.268,-36.240,-36.236,-36.295,-36.444,-36.679,-36.964,-37.254,-37.513,-37.726,-37.889,-37.995,-38.032,-37.986,
--37.865,-37.694,-37.511,-37.332,-37.146,-36.916,-36.613,-36.250,-35.881,-35.583,-35.403,-35.338,-35.333,-35.325,-35.281,-35.215,
--35.153,-35.095,-34.980,-34.715,-34.227,-33.523,-32.701,-31.903,-31.236,-30.715,-30.258,-29.755,-29.142,-28.447,-27.764,-27.187,
--26.737,-26.350,-25.923,-25.392,-24.772,-24.148,-23.611,-23.186,-22.815,-22.394,-21.845,-21.175,-20.468,-19.838,-19.352,-18.999,
--18.704,-18.379,-17.977,-17.506,-17.003,-16.500,-15.995,-15.464,-14.886,-14.268,-13.640,-13.038,-12.471,-11.919,-11.347,-10.735,
--10.098,-9.476,-8.915,-8.436,-8.027,-7.653,-7.272,-6.857,-6.398,-5.897,-5.359,-4.789,-4.190,-3.575,-2.958,-2.358,
--1.788,-1.252,-.750,-.272,.194,.666,1.167,1.713,2.305,2.922,3.521,4.057,4.505,4.871,5.191,5.509,
-5.862,6.256,6.681,7.117,7.556,8.000,8.457,8.928,9.399,9.847,10.258,10.636,11.005,11.390,11.809,12.256,
-12.712,13.160,13.601,14.055,14.542,15.066,15.601,16.103,16.534,16.884,17.180,17.470,17.785,18.110,18.385,18.528,
-18.480,18.244,17.892,17.537,17.283,17.188,17.239,17.380,17.538,17.670,17.769,17.856,17.958,18.085,18.227,18.363,
-18.478,18.573,18.657,18.739,18.815,18.866,18.871,18.814,18.698,18.541,18.368,18.199,18.052,17.934,17.851,17.805,
-17.787,17.772,17.716,17.572,17.307,16.926,16.481,16.056,15.738,15.585,15.602,15.743,15.938,16.130,16.299,16.462,
-16.656,16.904,17.198,17.499,17.759,17.951,18.077,18.162,18.235,18.306,18.367,18.407,18.430,18.465,18.550,18.712,
-18.940,19.196,19.431,19.618,19.769,19.920,20.105,20.331,20.570,20.783,20.953,21.102,21.282,21.543,21.898,22.308,
-22.708,23.032,23.250,23.376,23.454,23.536,23.662,23.850,24.091,24.340,24.516,24.508,24.217,23.600,22.715,21.711,
-20.759,19.952,19.217,18.313,16.923,14.803,11.929,8.538,5.061,1.968,-.393,-1.874,-2.507,-2.416,-1.717,-.493,
-1.175,3.148,5.196,7.039,8.441,9.296,9.660,9.703,9.603,9.465,9.285,8.992,8.523,7.878,7.115,6.304,
-5.468,4.566,3.523,2.300,.944,-.402,-1.548,-2.323,-2.636,-2.483,-1.936,-1.105,-.118,.891,1.793,2.489,
-2.953,3.253,3.538,3.965,4.610,5.413,6.188,6.708,6.825,6.537,5.978,5.328,4.712,4.142,3.558,2.917,
-2.265,1.744,1.499,1.572,1.843,2.083,2.085,1.794,1.344,.974,.871,1.059,1.391,1.671,1.808,1.894,
-2.143,2.718,3.582,4.455,4.946,4.773,3.937,2.742,1.649,1.034,1.015,1.427,1.955,2.327,2.448,2.410,
-2.385,2.493,2.731,2.996,3.174,3.221,3.187,3.172,3.260,3.475,3.783,4.138,4.512,4.915,5.373,5.896,
-6.463,7.031,7.555,8.016,8.421,8.802,9.197,9.641,10.150,10.723,11.338,11.954,12.526,13.017,13.413,13.718,
-13.938,14.065,14.068,13.902,13.531,12.939,12.135,11.134,9.942,8.558,7.002,5.341,3.704,2.251,1.125,.395,
-.037,-.044,.040,.210,.443,.752,1.154,1.640,2.178,2.729,3.272,3.811,4.362,4.934,5.519,6.102,
-6.671,7.229,7.788,8.354,8.912,9.431,9.874,10.221,10.478,10.667,10.814,10.937,11.042,11.130,11.207,11.284,
-11.369,11.461,11.547,11.610,11.638,11.634,11.604,11.553,11.480,11.375,11.232,11.056,10.861,10.664,10.472,10.282,
-10.085,9.872,9.643,9.406,9.171,8.942,8.718,8.494,8.267,8.034,7.793,7.539,7.270,6.996,6.736,6.514,
-6.342,6.212,6.092,5.945,5.745,5.495,5.218,4.943,4.679,4.415,4.129,3.812,3.477,3.154,2.869,2.627,
-2.404,2.164,1.881,1.553,1.197,.835,.480,.128,-.226,-.588,-.955,-1.319,-1.680,-2.044,-2.414,-2.787,
--3.152,-3.500,-3.835,-4.174,-4.532,-4.908,-5.274,-5.590,-5.832,-6.016,-6.188,-6.404,-6.684,-7.005,-7.317,-7.576,
--7.784,-7.979,-8.208,-8.483,-8.764,-8.985,-9.108,-9.161,-9.240,-9.464,-9.903,-10.533,-11.234,-11.827,-12.148,-12.102,
--11.693,-11.020,-10.250,-9.579,-9.179,-9.153,-9.494,-10.088,-10.747,-11.282,-11.581,-11.645,-11.580,-11.530,-11.606,-11.839,
--12.180,-12.537,-12.824,-12.995,-13.038,-12.964,-12.789,-12.529,-12.212,-11.884,-11.600,-11.408,-11.324,-11.333,-11.397,-11.478,
--11.557,-11.641,-11.753,-11.919,-12.149,-12.432,-12.739,-13.027,-13.256,-13.401,-13.465,-13.477,-13.478,-13.505,-13.575,-13.679,
--13.797,-13.911,-14.023,-14.142,-14.277,-14.413,-14.520,-14.564,-14.530,-14.437,-14.324,-14.235,-14.195,-14.212,-14.285,-14.425,
--14.657,-15.000,-15.447,-15.950,-16.439,-16.858,-17.195,-17.492,-17.815,-18.210,-18.673,-19.154,-19.590,-19.945,-20.230,-20.491,
--20.773,-21.082,-21.385,-21.631,-21.785,-21.853,-21.871,-21.885,-21.919,-21.969,-22.016,-22.040,-22.040,-22.028,-22.019,-22.018,
--22.022,-22.035,-22.072,-22.164,-22.334,-22.580,-22.864,-23.129,-23.324,-23.435,-23.490,-23.544,-23.649,-23.825,-24.052,-24.285,
--24.486,-24.642,-24.774,-24.924,-25.128,-25.400,-25.728,-26.080,-26.425,-26.737,-27.002,-27.218,-27.388,-27.525,-27.654,-27.811,
--28.034,-28.351,-28.763,-29.247,-29.758,-30.256,-30.717,-31.142,-31.546,-31.948,-32.351,-32.745,-33.113,-33.433,-33.696,-33.897,
--34.039,-34.132,-34.195,-34.256,-34.349,-34.500,-34.720,-34.991,-35.284,-35.568,-35.832,-36.088,-36.362,-36.670,-37.005,-37.338,
--37.637,-37.886,-38.096,-38.301,-38.532,-38.803,-39.100,-39.396,-39.667,-39.912,-40.149,-40.406,-40.700,-41.031,-41.379,-41.720,
--42.038,-42.332,-42.611,-42.888,-43.172,-43.462,-43.751,-44.029,-44.288,-44.524,-44.737,-44.926,-45.085,-45.201,-45.259,-45.246,
--45.164,-45.032,-44.881,-44.748,-44.658,-44.624,-44.639,-44.688,-44.752,-44.815,-44.863,-44.885,-44.873,-44.832,-44.778,-44.732,
--44.712,-44.717,-44.726,-44.705,-44.626,-44.487,-44.303,-44.099,-43.884,-43.643,-43.350,-42.984,-42.554,-42.097,-41.660,-41.267,
--40.910,-40.547,-40.133,-39.646,-39.095,-38.511,-37.925,-37.344,-36.758,-36.152,-35.523,-34.891,-34.288,-33.734,-33.231,-32.757,
--32.285,-31.800,-31.308,-30.828,-30.382,-29.977,-29.603,-29.234,-28.846,-28.421,-27.953,-27.451,-26.928,-26.401,-25.885,-25.389,
--24.921,-24.487,-24.095,-23.753,-23.464,-23.210,-22.953,-22.632,-22.185,-21.580,-20.833,-20.017,-19.235,-18.587,-18.120,-17.818,
--17.608,-17.397,-17.115,-16.743,-16.314,-15.891,-15.535,-15.272,-15.086,-14.921,-14.705,-14.366,-13.859,-13.174,-12.340,-11.414,
--10.465,-9.547,-8.675,-7.829,-6.961,-6.032,-5.041,-4.033,-3.084,-2.256,-1.557,-.928,-.265,.528,1.484,2.554,
-3.632,4.607,5.430,6.133,6.808,7.552,8.404,9.326,10.225,11.006,11.628,12.122,12.578,13.095,13.739,14.520,
-15.401,16.319,17.217,18.047,18.783,19.409,19.927,20.360,20.752,21.159,21.629,22.183,22.806,23.461,24.110,24.739,
-25.362,26.012,26.716,27.480,28.283,29.093,29.879,30.629,31.343,32.028,32.687,33.318,33.923,34.510,35.097,35.703,
-36.334,36.978,37.619,38.241,38.845,39.445,40.059,40.688,41.320,41.930,42.500,43.026,43.523,44.008,44.491,44.968,
-45.434,45.892,46.360,46.864,47.417,48.010,48.606,49.165,49.661,50.101,50.515,50.939,51.399,51.902,52.442,53.017,
-53.627,54.266,54.914,55.534,56.086,56.546,56.930,57.280,57.641,58.031,58.430,58.787,59.057,59.227,59.325,59.398,
-59.484,59.591,59.697,59.777,59.819,59.839,59.865,59.917,59.990,60.062,60.108,60.118,60.108,60.105,60.135,60.205,
-60.303,60.413,60.523,60.633,60.750,60.879,61.015,61.147,61.259,61.345,61.409,61.457,61.497,61.526,61.531,61.496,
-61.413,61.286,61.131,60.968,60.816,60.678,60.550,60.422,60.296,60.187,60.116,60.100,60.137,60.203,60.263,60.292,
-60.287,60.268,60.263,60.287,60.326,60.349,60.321,60.228,60.085,59.928,59.793,59.698,59.632,59.570,59.481,59.345,
-59.165,58.962,58.773,58.648,58.641,58.795,59.123,59.604,60.171,60.730,61.181,61.447,61.495,61.340,61.047,60.708,
-60.425,60.276,60.286,60.419,60.584,60.670,60.593,60.337,59.949,59.520,59.129,58.811,58.548,58.299,58.037,57.771,
-57.535,57.353,57.215,57.071,56.868,56.590,56.280,56.020,55.878,55.862,55.904,55.898,55.760,55.476,55.115,54.786,
-54.585,54.536,54.587,54.633,54.571,54.338,53.930,53.395,52.806,52.231,51.708,51.242,50.801,50.337,49.808,49.201,
-48.543,47.887,47.291,46.786,46.367,46.488,46.137,45.804,45.476,45.167,44.904,44.696,44.521,44.333,44.090,43.788,
-43.462,43.171,42.959,42.832,42.757,42.689,42.603,42.505,42.421,42.371,42.349,42.330,42.285,42.209,42.123,42.063,
-42.052,42.089,42.149,42.197,42.210,42.181,42.115,42.020,41.904,41.780,41.666,41.586,41.553,41.559,41.576,41.564,
-41.496,41.370,41.211,41.047,40.893,40.739,40.557,40.317,40.007,39.637,39.229,38.811,38.404,38.019,37.656,37.307,
-36.954,36.576,36.163,35.718,35.272,34.865,34.526,34.252,34.000,33.705,33.312,32.808,32.230,31.657,31.170,30.825,
-30.640,30.594,30.650,30.766,30.903,31.021,31.082,31.046,30.892,30.616,30.246,29.828,29.417,29.061,28.790,28.611,
-28.508,28.449,28.391,28.301,28.156,27.954,27.712,27.453,27.198,26.955,26.723,26.489,26.238,25.953,25.620,25.227,
-24.774,24.270,23.737,23.198,22.670,22.154,21.636,21.103,20.560,20.045,19.622,19.353,19.267,19.340,19.494,19.633,
-19.677,19.598,19.422,19.203,18.993,18.809,18.631,18.427,18.181,17.906,17.644,17.434,17.282,17.154,16.986,16.717,
-16.323,15.822,15.271,14.732,14.247,13.831,13.470,13.146,12.844,12.554,12.274,11.997,11.714,11.419,11.110,10.797,
-10.491,10.204,9.937,9.689,9.455,9.228,9.002,8.772,8.534,8.290,8.050,7.830,7.647,7.500,7.372,7.226,
-7.020,6.732,6.362,5.943,5.520,5.138,4.822,4.573,4.377,4.208,4.042,3.862,3.663,3.448,3.227,3.005,
-2.780,2.539,2.260,1.929,1.545,1.126,.709,.324,-.015,-.318,-.613,-.928,-1.274,-1.641,-2.001,-2.330,
--2.616,-2.862,-3.083,-3.294,-3.507,-3.728,-3.963,-4.220,-4.507,-4.824,-5.169,-5.537,-5.932,-6.374,-6.890,-7.506,
--8.228,-9.026,-9.843,-10.604,-11.244,-11.720,-12.025,-12.178,-12.209,-12.151,-12.027,-11.859,-11.677,-11.524,-11.461,-11.550,
--11.836,-12.322,-12.967,-13.689,-14.401,-15.039,-15.587,-16.075,-16.556,-17.074,-17.641,-18.229,-18.794,-19.300,-19.744,-20.156,
--20.580,-21.050,-21.570,-22.110,-22.623,-23.064,-23.408,-23.648,-23.794,-23.865,-23.882,-23.867,-23.854,-23.877,-23.969,-24.149,
--24.415,-24.744,-25.103,-25.463,-25.815,-26.162,-26.512,-26.864,-27.197,-27.478,-27.679,-27.799,-27.870,-27.949,-28.092,-28.328,
--28.646,-29.009,-29.378,-29.734,-30.091,-30.470,-30.884,-31.322,-31.748,-32.132,-32.467,-32.777,-33.102,-33.473,-33.894,-34.346,
--34.803,-35.254,-35.701,-36.150,-36.592,-37.000,-37.340,-37.602,-37.806,-37.997,-38.219,-38.488,-38.785,-39.070,-39.308,-39.489,
--39.624,-39.726,-39.800,-39.840,-39.847,-39.845,-39.874,-39.974,-40.153,-40.378,-40.593,-40.749,-40.834,-40.874,-40.912,-40.973,
--41.055,-41.138,-41.210,-41.285,-41.400,-41.588,-41.846,-42.125,-42.353,-42.465,-42.435,-42.283,-42.055,-41.792,-41.518,-41.235,
--40.944,-40.656,-40.398,-40.197,-40.064,-39.985,-39.926,-39.853,-39.753,-39.645,-39.572,-39.583,-39.703,-39.914,-40.161,-40.368,
--40.477,-40.474,-40.394,-40.306,-40.272,-40.309,-40.388,-40.447,-40.430,-40.324,-40.161,-40.002,-39.899,-39.872,-39.905,-39.969,
--40.037,-40.099,-40.151,-40.187,-40.187,-40.130,-40.002,-39.812,-39.578,-39.316,-39.023,-38.685,-38.293,-37.867,-37.455,-37.117,
--36.891,-36.774,-36.722,-36.681,-36.614,-36.520,-36.429,-36.376,-36.385,-36.460,-36.591,-36.766,-36.974,-37.193,-37.396,-37.550,
--37.637,-37.664,-37.657,-37.639,-37.602,-37.503,-37.289,-36.947,-36.529,-36.152,-35.946,-35.986,-36.254,-36.643,-37.005,-37.218,
--37.216,-36.986,-36.536,-35.875,-35.017,-34.015,-32.973,-32.031,-31.305,-30.825,-30.511,-30.216,-29.809,-29.248,-28.596,-27.968,
--27.441,-27.002,-26.560,-26.019,-25.360,-24.663,-24.060,-23.636,-23.361,-23.096,-22.676,-22.015,-21.168,-20.302,-19.595,-19.136,
--18.879,-18.683,-18.402,-17.966,-17.405,-16.801,-16.228,-15.698,-15.176,-14.613,-13.994,-13.347,-12.715,-12.118,-11.543,-10.954,
--10.332,-9.698,-9.108,-8.616,-8.230,-7.900,-7.536,-7.055,-6.420,-5.659,-4.844,-4.053,-3.333,-2.691,-2.101,-1.531,
--.961,-.393,.159,.679,1.162,1.618,2.065,2.519,2.984,3.448,3.891,4.296,4.655,4.981,5.295,5.624,
-5.981,6.370,6.783,7.209,7.646,8.098,8.566,9.045,9.516,9.955,10.347,10.695,11.020,11.355,11.723,12.127,
-12.552,12.978,13.398,13.828,14.299,14.836,15.434,16.049,16.612,17.066,17.392,17.624,17.828,18.064,18.337,18.596,
-18.751,18.727,18.511,18.164,17.801,17.534,17.423,17.462,17.594,17.753,17.902,18.038,18.179,18.334,18.489,18.618,
-18.704,18.759,18.819,18.922,19.070,19.227,19.328,19.319,19.187,18.966,18.722,18.510,18.352,18.232,18.122,18.010,
-17.906,17.835,17.807,17.793,17.730,17.553,17.235,16.812,16.372,16.023,15.839,15.831,15.950,16.120,16.281,16.417,
-16.555,16.739,16.991,17.297,17.613,17.888,18.094,18.236,18.338,18.425,18.504,18.564,18.597,18.609,18.627,18.688,
-18.813,18.998,19.211,19.418,19.605,19.784,19.980,20.212,20.472,20.731,20.961,21.157,21.343,21.559,21.835,22.169,
-22.529,22.870,23.155,23.367,23.506,23.583,23.620,23.652,23.730,23.900,24.154,24.401,24.456,24.107,23.214,21.805,
-20.098,18.414,17.026,16.003,15.152,14.099,12.479,10.128,7.198,4.106,1.375,-.570,-1.538,-1.589,-.942,.148,
-1.486,2.955,4.478,5.968,7.315,8.413,9.203,9.696,9.960,10.068,10.055,9.905,9.584,9.078,8.430,7.724,
-7.043,6.414,5.793,5.080,4.181,3.062,1.780,.466,-.719,-1.639,-2.212,-2.426,-2.331,-2.018,-1.599,-1.177,
--.813,-.491,-.113,.478,1.425,2.776,4.431,6.152,7.635,8.629,9.016,8.839,8.248,7.414,6.462,5.459,
-4.457,3.533,2.803,2.369,2.249,2.340,2.453,2.408,2.144,1.748,1.406,1.282,1.421,1.731,2.071,2.359,
-2.640,3.044,3.659,4.414,5.061,5.283,4.877,3.898,2.657,1.577,.982,.944,1.276,1.670,1.884,1.864,
-1.739,1.703,1.878,2.247,2.682,3.044,3.277,3.427,3.605,3.904,4.343,4.874,5.418,5.921,6.376,6.812,
-7.264,7.746,8.247,8.737,9.193,9.608,9.991,10.366,10.765,11.207,11.692,12.186,12.620,12.915,13.005,12.865,
-12.519,12.016,11.405,10.702,9.894,8.959,7.888,6.700,5.437,4.146,2.872,1.663,.578,-.304,-.904,-1.176,
--1.132,-.842,-.401,.107,.648,1.232,1.886,2.620,3.409,4.209,4.975,5.687,6.350,6.972,7.553,8.077,
-8.530,8.912,9.242,9.550,9.856,10.154,10.424,10.642,10.802,10.915,10.997,11.061,11.103,11.119,11.111,11.100,
-11.110,11.156,11.232,11.313,11.372,11.394,11.383,11.350,11.299,11.221,11.098,10.926,10.719,10.505,10.313,10.149,
-9.996,9.830,9.634,9.410,9.178,8.955,8.746,8.537,8.313,8.070,7.817,7.569,7.333,7.103,6.864,6.607,
-6.339,6.075,5.829,5.600,5.376,5.141,4.890,4.632,4.377,4.126,3.866,3.577,3.253,2.908,2.570,2.267,
-2.005,1.770,1.531,1.271,.985,.684,.376,.057,-.283,-.649,-1.032,-1.415,-1.783,-2.139,-2.498,-2.875,
--3.267,-3.652,-4.004,-4.319,-4.623,-4.952,-5.328,-5.732,-6.115,-6.427,-6.656,-6.837,-7.030,-7.279,-7.585,-7.904,
--8.188,-8.421,-8.628,-8.855,-9.126,-9.423,-9.689,-9.872,-9.962,-10.011,-10.102,-10.317,-10.693,-11.210,-11.797,-12.350,
--12.747,-12.882,-12.687,-12.177,-11.469,-10.764,-10.282,-10.175,-10.456,-10.994,-11.578,-12.016,-12.226,-12.248,-12.205,-12.224,
--12.366,-12.617,-12.916,-13.200,-13.428,-13.581,-13.641,-13.580,-13.374,-13.022,-12.570,-12.097,-11.689,-11.409,-11.274,-11.261,
--11.331,-11.450,-11.600,-11.776,-11.979,-12.209,-12.458,-12.717,-12.969,-13.195,-13.382,-13.521,-13.619,-13.691,-13.755,-13.814,
--13.862,-13.892,-13.909,-13.940,-14.023,-14.183,-14.410,-14.654,-14.842,-14.910,-14.832,-14.617,-14.309,-13.960,-13.627,-13.373,
--13.271,-13.386,-13.754,-14.351,-15.084,-15.825,-16.455,-16.922,-17.253,-17.530,-17.838,-18.219,-18.655,-19.093,-19.486,-19.820,
--20.113,-20.398,-20.688,-20.969,-21.209,-21.381,-21.479,-21.517,-21.518,-21.501,-21.472,-21.433,-21.388,-21.344,-21.307,-21.280,
--21.262,-21.254,-21.271,-21.340,-21.487,-21.717,-22.008,-22.307,-22.558,-22.721,-22.798,-22.823,-22.850,-22.925,-23.069,-23.270,
--23.496,-23.712,-23.898,-24.058,-24.219,-24.418,-24.686,-25.032,-25.434,-25.843,-26.200,-26.457,-26.606,-26.679,-26.746,-26.888,
--27.166,-27.599,-28.158,-28.781,-29.399,-29.956,-30.434,-30.842,-31.206,-31.554,-31.895,-32.228,-32.538,-32.818,-33.061,-33.271,
--33.445,-33.579,-33.669,-33.718,-33.747,-33.788,-33.874,-34.027,-34.240,-34.491,-34.754,-35.017,-35.290,-35.596,-35.948,-36.340,
--36.741,-37.113,-37.429,-37.687,-37.911,-38.131,-38.370,-38.633,-38.909,-39.186,-39.460,-39.737,-40.031,-40.352,-40.699,-41.057,
--41.410,-41.741,-42.044,-42.321,-42.585,-42.848,-43.118,-43.394,-43.661,-43.905,-44.110,-44.276,-44.408,-44.518,-44.605,-44.662,
--44.671,-44.624,-44.529,-44.413,-44.313,-44.258,-44.259,-44.309,-44.396,-44.506,-44.627,-44.748,-44.848,-44.901,-44.896,-44.840,
--44.767,-44.717,-44.713,-44.745,-44.770,-44.741,-44.630,-44.444,-44.211,-43.954,-43.673,-43.349,-42.961,-42.517,-42.050,-41.608,
--41.217,-40.865,-40.506,-40.086,-39.581,-39.005,-38.396,-37.788,-37.192,-36.592,-35.969,-35.324,-34.686,-34.093,-33.570,-33.113,
--32.687,-32.252,-31.788,-31.302,-30.824,-30.384,-29.995,-29.646,-29.309,-28.955,-28.564,-28.131,-27.665,-27.184,-26.706,-26.248,
--25.820,-25.422,-25.046,-24.678,-24.304,-23.915,-23.500,-23.043,-22.525,-21.926,-21.242,-20.495,-19.737,-19.037,-18.455,-18.014,
--17.690,-17.415,-17.112,-16.724,-16.242,-15.704,-15.184,-14.753,-14.449,-14.262,-14.127,-13.949,-13.634,-13.118,-12.390,-11.499,
--10.533,-9.588,-8.733,-7.987,-7.315,-6.650,-5.932,-5.137,-4.290,-3.445,-2.654,-1.932,-1.248,-.541,.242,1.117,
-2.053,2.992,3.887,4.733,5.566,6.439,7.379,8.361,9.319,10.170,10.869,11.424,11.901,12.386,12.950,13.625,
-14.405,15.261,16.160,17.074,17.972,18.813,19.550,20.148,20.600,20.945,21.252,21.600,22.040,22.585,23.204,23.855,
-24.503,25.142,25.788,26.468,27.195,27.968,28.767,29.568,30.352,31.107,31.827,32.510,33.158,33.772,34.361,34.936,
-35.503,36.062,36.610,37.142,37.661,38.184,38.726,39.299,39.896,40.499,41.085,41.645,42.188,42.731,43.286,43.850,
-44.403,44.924,45.411,45.883,46.369,46.892,47.449,48.009,48.536,49.008,49.432,49.834,50.249,50.694,51.171,51.672,
-52.195,52.743,53.319,53.911,54.489,55.014,55.468,55.861,56.230,56.618,57.038,57.470,57.867,58.190,58.427,58.606,
-58.768,58.942,59.130,59.307,59.446,59.538,59.599,59.655,59.724,59.804,59.878,59.926,59.948,59.958,59.980,60.029,
-60.110,60.214,60.327,60.443,60.563,60.686,60.812,60.936,61.052,61.155,61.248,61.334,61.412,61.479,61.526,61.545,
-61.529,61.478,61.392,61.280,61.148,61.004,60.849,60.684,60.507,60.323,60.145,59.996,59.896,59.858,59.880,59.947,
-60.038,60.139,60.237,60.323,60.375,60.368,60.277,60.095,59.841,59.553,59.278,59.048,58.878,58.761,58.686,58.642,
-58.621,58.611,58.603,58.597,58.614,58.701,58.915,59.292,59.820,60.426,60.995,61.406,61.579,61.495,61.203,60.797,
-60.392,60.096,59.978,60.052,60.268,60.522,60.686,60.666,60.434,60.042,59.595,59.193,58.886,58.661,58.464,58.248,
-58.002,57.747,57.511,57.294,57.065,56.789,56.466,56.148,55.915,55.822,55.853,55.918,55.889,55.679,55.291,54.824,
-54.423,54.205,54.202,54.350,54.518,54.574,54.425,54.052,53.494,52.833,52.157,51.533,50.993,50.527,50.089,49.625,
-49.102,48.523,47.928,47.371,46.890,46.488,46.513,46.213,45.930,45.640,45.347,45.073,44.835,44.626,44.416,44.175,
-43.901,43.623,43.389,43.233,43.153,43.111,43.063,42.983,42.883,42.794,42.748,42.748,42.776,42.804,42.818,42.826,
-42.848,42.897,42.972,43.056,43.130,43.183,43.209,43.202,43.149,43.038,42.870,42.670,42.483,42.353,42.301,42.313,
-42.343,42.338,42.259,42.096,41.861,41.578,41.271,40.960,40.656,40.363,40.073,39.772,39.447,39.095,38.735,38.397,
-38.108,37.864,37.629,37.346,36.976,36.517,36.015,35.533,35.115,34.759,34.417,34.027,33.556,33.020,32.482,32.017,
-31.678,31.481,31.400,31.393,31.417,31.443,31.448,31.411,31.308,31.116,30.826,30.449,30.020,29.592,29.218,28.938,
-28.763,28.670,28.611,28.535,28.402,28.205,27.963,27.709,27.473,27.268,27.085,26.908,26.720,26.511,26.273,25.994,
-25.656,25.243,24.750,24.191,23.593,22.982,22.372,21.761,21.145,20.541,19.999,19.597,19.407,19.460,19.716,20.075,
-20.406,20.600,20.609,20.454,20.202,19.927,19.669,19.427,19.177,18.898,18.594,18.296,18.033,17.810,17.592,17.319,
-16.936,16.428,15.833,15.221,14.662,14.197,13.824,13.513,13.226,12.945,12.669,12.406,12.158,11.911,11.647,11.354,
-11.038,10.719,10.422,10.158,9.921,9.691,9.447,9.176,8.879,8.571,8.265,7.976,7.714,7.487,7.301,7.154,
-7.032,6.905,6.736,6.488,6.146,5.722,5.256,4.802,4.406,4.092,3.849,3.644,3.438,3.205,2.944,2.672,
-2.412,2.171,1.934,1.673,1.362,.993,.587,.175,-.213,-.569,-.905,-1.248,-1.614,-2.004,-2.399,-2.776,
--3.119,-3.428,-3.715,-3.995,-4.276,-4.555,-4.829,-5.092,-5.348,-5.604,-5.865,-6.139,-6.432,-6.759,-7.146,-7.619,
--8.203,-8.899,-9.679,-10.490,-11.261,-11.922,-12.421,-12.734,-12.865,-12.838,-12.689,-12.459,-12.191,-11.936,-11.755,-11.712,
--11.860,-12.224,-12.778,-13.454,-14.156,-14.803,-15.355,-15.833,-16.298,-16.817,-17.420,-18.091,-18.771,-19.396,-19.932,-20.389,
--20.813,-21.254,-21.740,-22.259,-22.773,-23.233,-23.604,-23.871,-24.036,-24.113,-24.121,-24.082,-24.029,-24.002,-24.040,-24.168,
--24.391,-24.692,-25.035,-25.388,-25.728,-26.053,-26.372,-26.696,-27.025,-27.342,-27.616,-27.825,-27.965,-28.065,-28.176,-28.347,
--28.605,-28.939,-29.309,-29.671,-30.006,-30.327,-30.665,-31.045,-31.463,-31.886,-32.275,-32.612,-32.915,-33.224,-33.578,-33.990,
--34.441,-34.904,-35.359,-35.808,-36.260,-36.711,-37.137,-37.499,-37.773,-37.969,-38.134,-38.323,-38.575,-38.887,-39.222,-39.531,
--39.780,-39.954,-40.056,-40.093,-40.079,-40.038,-40.006,-40.029,-40.137,-40.329,-40.567,-40.797,-40.981,-41.116,-41.232,-41.368,
--41.538,-41.731,-41.917,-42.078,-42.227,-42.393,-42.599,-42.837,-43.059,-43.198,-43.208,-43.079,-42.841,-42.547,-42.244,-41.961,
--41.705,-41.474,-41.263,-41.069,-40.883,-40.693,-40.488,-40.264,-40.029,-39.807,-39.629,-39.524,-39.509,-39.580,-39.711,-39.857,
--39.969,-40.016,-40.001,-39.966,-39.970,-40.059,-40.237,-40.456,-40.645,-40.742,-40.733,-40.650,-40.547,-40.464,-40.405,-40.347,
--40.268,-40.176,-40.108,-40.110,-40.199,-40.344,-40.479,-40.531,-40.457,-40.253,-39.948,-39.576,-39.163,-38.725,-38.283,-37.869,
--37.524,-37.274,-37.118,-37.025,-36.949,-36.847,-36.702,-36.523,-36.338,-36.185,-36.097,-36.104,-36.214,-36.416,-36.672,-36.930,
--37.149,-37.314,-37.445,-37.572,-37.703,-37.801,-37.794,-37.626,-37.306,-36.933,-36.664,-36.646,-36.934,-37.455,-38.039,-38.487,
--38.650,-38.467,-37.958,-37.181,-36.205,-35.101,-33.957,-32.887,-32.003,-31.370,-30.966,-30.683,-30.378,-29.950,-29.391,-28.778,
--28.206,-27.713,-27.251,-26.721,-26.058,-25.292,-24.548,-23.970,-23.618,-23.418,-23.190,-22.757,-22.051,-21.162,-20.283,-19.598,
--19.172,-18.928,-18.700,-18.339,-17.797,-17.132,-16.453,-15.840,-15.302,-14.789,-14.244,-13.650,-13.037,-12.443,-11.882,-11.321,
--10.717,-10.055,-9.377,-8.768,-8.299,-7.971,-7.701,-7.352,-6.805,-6.017,-5.044,-4.013,-3.052,-2.241,-1.580,-1.015,
--.474,.089,.676,1.262,1.817,2.328,2.802,3.255,3.695,4.109,4.475,4.778,5.024,5.243,5.480,5.773,
-6.132,6.541,6.971,7.395,7.807,8.216,8.639,9.082,9.533,9.970,10.372,10.732,11.066,11.401,11.760,12.153,
-12.566,12.979,13.376,13.765,14.172,14.638,15.187,15.809,16.454,17.047,17.523,17.856,18.073,18.237,18.408,18.605,
-18.786,18.874,18.802,18.559,18.205,17.851,17.602,17.514,17.579,17.743,17.949,18.165,18.388,18.621,18.848,19.031,
-19.132,19.145,19.117,19.123,19.222,19.412,19.620,19.740,19.689,19.460,19.124,18.791,18.545,18.406,18.327,18.243,
-18.116,17.961,17.828,17.756,17.736,17.706,17.582,17.319,16.939,16.529,16.200,16.029,16.027,16.143,16.302,16.449,
-16.572,16.700,16.871,17.099,17.367,17.638,17.878,18.079,18.254,18.425,18.599,18.761,18.884,18.950,18.969,18.973,
-19.002,19.083,19.213,19.372,19.537,19.705,19.885,20.095,20.337,20.594,20.842,21.069,21.284,21.515,21.785,22.094,
-22.419,22.724,22.988,23.211,23.403,23.564,23.674,23.715,23.701,23.697,23.785,24.002,24.257,24.312,23.858,22.653,
-20.671,18.160,15.563,13.321,11.672,10.536,9.570,8.361,6.654,4.499,2.234,.335,-.800,-1.003,-.375,.798,
-2.193,3.565,4.796,5.868,6.807,7.628,8.324,8.883,9.303,9.600,9.796,9.893,9.871,9.696,9.352,8.858,
-8.272,7.664,7.085,6.537,5.970,5.310,4.497,3.516,2.416,1.289,.240,-.651,-1.351,-1.878,-2.287,-2.640,
--2.979,-3.301,-3.540,-3.571,-3.233,-2.373,-.920,1.069,3.379,5.676,7.593,8.843,9.306,9.056,8.319,7.376,
-6.465,5.728,5.200,4.842,4.590,4.381,4.166,3.917,3.628,3.325,3.061,2.894,2.858,2.941,3.096,3.281,
-3.498,3.801,4.248,4.821,5.377,5.679,5.494,4.738,3.549,2.258,1.241,.744,.771,1.109,1.463,1.628,
-1.586,1.486,1.528,1.834,2.382,3.043,3.674,4.207,4.675,5.162,5.734,6.383,7.034,7.593,8.005,8.281,
-8.487,8.702,8.979,9.325,9.703,10.061,10.354,10.567,10.719,10.854,11.013,11.207,11.386,11.453,11.291,10.819,
-10.027,8.991,7.834,6.675,5.586,4.574,3.609,2.658,1.713,.801,-.035,-.748,-1.290,-1.615,-1.680,-1.458,
--.959,-.243,.592,1.446,2.253,3.000,3.717,4.440,5.183,5.928,6.642,7.299,7.898,8.453,8.977,9.460,
-9.876,10.202,10.435,10.596,10.716,10.815,10.894,10.944,10.959,10.953,10.946,10.956,10.978,10.991,10.975,10.931,
-10.882,10.861,10.885,10.940,10.992,11.008,10.976,10.913,10.841,10.768,10.681,10.558,10.389,10.192,10.000,9.843,
-9.717,9.592,9.430,9.213,8.958,8.709,8.501,8.341,8.202,8.047,7.852,7.626,7.394,7.180,6.984,6.784,
-6.554,6.281,5.972,5.647,5.322,5.005,4.692,4.386,4.093,3.820,3.567,3.317,3.049,2.752,2.433,2.114,
-1.816,1.546,1.290,1.030,.758,.478,.198,-.083,-.385,-.732,-1.131,-1.564,-1.991,-2.381,-2.731,-3.067,
--3.422,-3.805,-4.196,-4.559,-4.874,-5.160,-5.462,-5.818,-6.225,-6.636,-6.991,-7.257,-7.456,-7.644,-7.879,-8.175,
--8.502,-8.809,-9.065,-9.279,-9.486,-9.720,-9.982,-10.245,-10.469,-10.634,-10.748,-10.839,-10.946,-11.110,-11.372,-11.767,
--12.296,-12.898,-13.440,-13.745,-13.676,-13.213,-12.494,-11.768,-11.290,-11.204,-11.485,-11.967,-12.444,-12.769,-12.911,-12.933,
--12.926,-12.959,-13.050,-13.186,-13.355,-13.552,-13.766,-13.958,-14.060,-13.997,-13.730,-13.281,-12.727,-12.177,-11.725,-11.428,
--11.303,-11.337,-11.496,-11.738,-12.015,-12.283,-12.515,-12.706,-12.877,-13.051,-13.242,-13.441,-13.622,-13.765,-13.862,-13.923,
--13.960,-13.978,-13.978,-13.967,-13.969,-14.024,-14.167,-14.398,-14.672,-14.912,-15.034,-14.984,-14.755,-14.376,-13.903,-13.404,
--12.956,-12.649,-12.572,-12.785,-13.290,-14.012,-14.819,-15.574,-16.186,-16.640,-16.993,-17.329,-17.711,-18.155,-18.630,-19.089,
--19.493,-19.829,-20.106,-20.339,-20.544,-20.727,-20.885,-21.010,-21.085,-21.097,-21.040,-20.927,-20.788,-20.664,-20.582,-20.550,
--20.549,-20.557,-20.566,-20.598,-20.689,-20.871,-21.141,-21.460,-21.766,-22.003,-22.148,-22.218,-22.252,-22.295,-22.377,-22.505,
--22.674,-22.866,-23.063,-23.249,-23.418,-23.580,-23.764,-24.005,-24.326,-24.715,-25.119,-25.465,-25.693,-25.798,-25.844,-25.943,
--26.209,-26.701,-27.399,-28.209,-29.007,-29.689,-30.211,-30.592,-30.890,-31.167,-31.458,-31.761,-32.054,-32.314,-32.531,-32.716,
--32.888,-33.055,-33.210,-33.333,-33.404,-33.423,-33.411,-33.405,-33.444,-33.548,-33.718,-33.942,-34.206,-34.507,-34.848,-35.231,
--35.649,-36.078,-36.489,-36.855,-37.167,-37.432,-37.669,-37.900,-38.142,-38.406,-38.693,-39.003,-39.331,-39.672,-40.021,-40.376,
--40.732,-41.083,-41.420,-41.733,-42.019,-42.280,-42.532,-42.789,-43.055,-43.319,-43.553,-43.730,-43.840,-43.893,-43.915,-43.933,
--43.954,-43.968,-43.960,-43.925,-43.877,-43.839,-43.832,-43.860,-43.913,-43.978,-44.056,-44.153,-44.273,-44.404,-44.513,-44.564,
--44.547,-44.483,-44.421,-44.406,-44.447,-44.512,-44.547,-44.506,-44.375,-44.167,-43.903,-43.592,-43.227,-42.801,-42.330,-41.855,
--41.423,-41.056,-40.734,-40.399,-39.994,-39.492,-38.909,-38.288,-37.668,-37.061,-36.455,-35.835,-35.206,-34.598,-34.047,-33.571,
--33.155,-32.758,-32.340,-31.886,-31.409,-30.941,-30.508,-30.117,-29.753,-29.397,-29.031,-28.652,-28.261,-27.866,-27.473,-27.086,
--26.709,-26.343,-25.979,-25.599,-25.179,-24.695,-24.138,-23.513,-22.840,-22.137,-21.424,-20.715,-20.029,-19.388,-18.821,-18.348,
--17.966,-17.649,-17.349,-17.012,-16.602,-16.114,-15.580,-15.056,-14.598,-14.241,-13.980,-13.768,-13.523,-13.164,-12.632,-11.920,
--11.074,-10.180,-9.326,-8.575,-7.936,-7.369,-6.804,-6.178,-5.460,-4.661,-3.820,-2.980,-2.162,-1.363,-.568,.231,
-1.022,1.780,2.490,3.167,3.865,4.655,5.582,6.639,7.757,8.833,9.775,10.548,11.178,11.739,12.306,12.928,
-13.615,14.353,15.129,15.942,16.796,17.685,18.574,19.403,20.110,20.657,21.055,21.356,21.636,21.963,22.378,22.889,
-23.479,24.123,24.800,25.494,26.202,26.921,27.653,28.397,29.151,29.911,30.668,31.406,32.114,32.781,33.404,33.986,
-34.534,35.052,35.542,36.011,36.468,36.931,37.421,37.950,38.518,39.111,39.709,40.300,40.889,41.491,42.127,42.796,
-43.480,44.143,44.755,45.306,45.812,46.303,46.799,47.303,47.795,48.255,48.677,49.075,49.478,49.905,50.360,50.827,
-51.290,51.749,52.217,52.711,53.234,53.765,54.271,54.727,55.131,55.508,55.885,56.272,56.655,57.006,57.306,57.563,
-57.806,58.066,58.354,58.652,58.929,59.163,59.354,59.522,59.688,59.854,60.002,60.107,60.159,60.175,60.186,60.225,
-60.306,60.421,60.548,60.667,60.767,60.847,60.911,60.962,61.008,61.058,61.125,61.218,61.337,61.464,61.576,61.652,
-61.685,61.683,61.662,61.627,61.574,61.489,61.355,61.170,60.942,60.695,60.455,60.249,60.090,59.986,59.932,59.923,
-59.954,60.025,60.133,60.263,60.379,60.429,60.362,60.153,59.817,59.413,59.014,58.679,58.435,58.271,58.166,58.105,
-58.089,58.123,58.199,58.294,58.388,58.485,58.633,58.900,59.330,59.908,60.539,61.087,61.426,61.493,61.312,60.969,
-60.575,60.231,60.004,59.928,60.001,60.183,60.395,60.534,60.510,60.285,59.898,59.449,59.049,58.767,58.598,58.483,
-58.346,58.143,57.877,57.581,57.282,56.991,56.703,56.428,56.195,56.045,55.991,55.992,55.956,55.785,55.431,54.937,
-54.424,54.038,53.879,53.952,54.171,54.393,54.480,54.344,53.962,53.375,52.660,51.909,51.206,50.602,50.106,49.683,
-49.275,48.831,48.334,47.809,47.306,46.870,46.513,46.461,46.210,45.981,45.739,45.472,45.198,44.941,44.711,44.502,
-44.296,44.085,43.881,43.708,43.581,43.496,43.429,43.354,43.263,43.173,43.112,43.101,43.137,43.203,43.273,43.336,
-43.397,43.465,43.544,43.628,43.709,43.784,43.859,43.939,44.014,44.056,44.031,43.921,43.742,43.542,43.383,43.303,
-43.304,43.344,43.365,43.310,43.147,42.872,42.509,42.101,41.700,41.350,41.072,40.852,40.645,40.400,40.089,39.728,
-39.374,39.087,38.893,38.757,38.600,38.346,37.960,37.472,36.951,36.463,36.029,35.621,35.185,34.683,34.123,33.556,
-33.048,32.651,32.378,32.208,32.104,32.031,31.967,31.898,31.813,31.690,31.507,31.245,30.900,30.493,30.064,29.667,
-29.346,29.118,28.967,28.847,28.706,28.509,28.258,27.984,27.733,27.538,27.400,27.299,27.202,27.084,26.934,26.746,
-26.513,26.216,25.833,25.351,24.779,24.146,23.483,22.814,22.148,21.494,20.881,20.367,20.035,19.954,20.147,20.564,
-21.086,21.557,21.843,21.876,21.668,21.299,20.870,20.465,20.118,19.818,19.534,19.241,18.936,18.629,18.325,18.004,
-17.630,17.167,16.608,15.985,15.362,14.805,14.349,13.985,13.679,13.388,13.094,12.801,12.525,12.274,12.035,11.782,
-11.497,11.183,10.862,10.564,10.304,10.069,9.828,9.551,9.229,8.878,8.528,8.204,7.914,7.648,7.397,7.163,
-6.964,6.818,6.724,6.645,6.520,6.289,5.922,5.440,4.906,4.398,3.968,3.621,3.322,3.020,2.681,2.307,
-1.929,1.583,1.289,1.035,.787,.515,.202,-.144,-.505,-.866,-1.228,-1.602,-1.996,-2.409,-2.825,-3.226,
--3.600,-3.948,-4.284,-4.621,-4.962,-5.302,-5.629,-5.936,-6.221,-6.486,-6.738,-6.983,-7.227,-7.483,-7.773,-8.127,
--8.574,-9.134,-9.806,-10.566,-11.364,-12.132,-12.796,-13.291,-13.576,-13.647,-13.530,-13.274,-12.939,-12.584,-12.269,-12.056,
--12.006,-12.171,-12.570,-13.169,-13.882,-14.598,-15.224,-15.723,-16.135,-16.544,-17.037,-17.653,-18.365,-19.101,-19.784,-20.376,
--20.892,-21.376,-21.874,-22.397,-22.921,-23.402,-23.801,-24.100,-24.303,-24.423,-24.473,-24.465,-24.417,-24.363,-24.347,-24.411,
--24.576,-24.835,-25.155,-25.494,-25.822,-26.127,-26.416,-26.703,-27.001,-27.306,-27.603,-27.870,-28.090,-28.262,-28.407,-28.563,
--28.765,-29.033,-29.357,-29.704,-30.040,-30.352,-30.659,-30.993,-31.383,-31.822,-32.272,-32.686,-33.034,-33.328,-33.608,-33.919,
--34.279,-34.677,-35.083,-35.482,-35.877,-36.290,-36.727,-37.170,-37.573,-37.898,-38.138,-38.325,-38.518,-38.765,-39.073,-39.414,
--39.736,-39.996,-40.175,-40.276,-40.317,-40.320,-40.310,-40.316,-40.368,-40.481,-40.652,-40.854,-41.057,-41.242,-41.419,-41.612,
--41.840,-42.102,-42.376,-42.636,-42.871,-43.087,-43.298,-43.502,-43.672,-43.762,-43.737,-43.589,-43.346,-43.055,-42.761,-42.491,
--42.258,-42.063,-41.905,-41.773,-41.643,-41.472,-41.223,-40.879,-40.462,-40.027,-39.641,-39.352,-39.182,-39.120,-39.144,-39.225,
--39.339,-39.464,-39.583,-39.693,-39.811,-39.966,-40.183,-40.462,-40.770,-41.055,-41.274,-41.416,-41.497,-41.540,-41.542,-41.469,
--41.278,-40.960,-40.567,-40.204,-39.981,-39.953,-40.090,-40.289,-40.425,-40.412,-40.232,-39.928,-39.568,-39.203,-38.853,-38.517,
--38.187,-37.866,-37.574,-37.326,-37.129,-36.972,-36.831,-36.679,-36.505,-36.320,-36.161,-36.082,-36.128,-36.315,-36.609,-36.934,
--37.210,-37.389,-37.486,-37.569,-37.708,-37.929,-38.183,-38.373,-38.416,-38.306,-38.129,-38.025,-38.101,-38.368,-38.724,-39.002,
--39.054,-38.809,-38.291,-37.581,-36.762,-35.885,-34.980,-34.079,-33.232,-32.503,-31.924,-31.473,-31.073,-30.635,-30.111,-29.521,
--28.932,-28.400,-27.921,-27.428,-26.835,-26.112,-25.317,-24.580,-24.024,-23.680,-23.463,-23.209,-22.777,-22.128,-21.349,-20.594,
--19.988,-19.554,-19.207,-18.817,-18.294,-17.637,-16.921,-16.241,-15.643,-15.109,-14.583,-14.023,-13.432,-12.847,-12.297,-11.770,
--11.211,-10.567,-9.831,-9.072,-8.395,-7.885,-7.542,-7.269,-6.910,-6.334,-5.496,-4.465,-3.380,-2.381,-1.547,-.873,
--.292,.276,.875,1.501,2.120,2.694,3.211,3.686,4.136,4.567,4.957,5.278,5.514,5.684,5.840,6.042,
-6.330,6.703,7.126,7.549,7.942,8.302,8.650,9.013,9.400,9.804,10.204,10.586,10.950,11.310,11.683,12.076,
-12.486,12.900,13.305,13.700,14.097,14.518,14.986,15.512,16.086,16.671,17.219,17.682,18.035,18.288,18.478,18.643,
-18.796,18.912,18.940,18.837,18.603,18.292,17.994,17.792,17.731,17.801,17.961,18.172,18.416,18.692,18.991,19.275,
-19.485,19.574,19.545,19.462,19.421,19.493,19.673,19.874,19.973,19.880,19.597,19.215,18.862,18.630,18.531,18.498,
-18.440,18.306,18.111,17.918,17.786,17.720,17.667,17.546,17.307,16.964,16.596,16.304,16.156,16.161,16.271,16.420,
-16.562,16.690,16.824,16.990,17.192,17.413,17.629,17.832,18.031,18.248,18.493,18.752,18.988,19.160,19.249,19.274,
-19.276,19.299,19.369,19.480,19.612,19.749,19.891,20.053,20.247,20.468,20.696,20.913,21.121,21.344,21.614,21.940,
-22.298,22.637,22.914,23.123,23.292,23.462,23.645,23.812,23.916,23.942,23.941,24.006,24.185,24.389,24.362,23.745,
-22.243,19.792,16.638,13.266,10.205,7.804,6.104,4.872,3.767,2.556,1.240,.049,-.697,-.760,-.107,1.082,
-2.515,3.908,5.089,6.020,6.752,7.358,7.883,8.333,8.688,8.941,9.105,9.211,9.287,9.338,9.341,9.255,
-9.043,8.695,8.232,7.697,7.132,6.558,5.962,5.312,4.582,3.771,2.911,2.053,1.239,.479,-.252,-.996,
--1.788,-2.632,-3.494,-4.303,-4.953,-5.307,-5.210,-4.519,-3.166,-1.229,1.040,3.256,5.012,6.036,6.306,6.058,
-5.673,5.502,5.702,6.183,6.675,6.890,6.677,6.087,5.336,4.683,4.309,4.247,4.400,4.613,4.761,4.801,
-4.781,4.796,4.926,5.183,5.481,5.658,5.537,5.009,4.107,3.016,2.013,1.355,1.165,1.386,1.817,2.230,
-2.486,2.595,2.689,2.923,3.379,4.024,4.746,5.432,6.032,6.571,7.108,7.673,8.230,8.691,8.972,9.043,
-8.953,8.810,8.730,8.782,8.963,9.201,9.388,9.437,9.309,9.039,8.712,8.415,8.188,7.987,7.695,7.172,
-6.329,5.179,3.841,2.496,1.312,.384,-.279,-.731,-1.040,-1.254,-1.388,-1.434,-1.381,-1.211,-.899,-.417,
-.258,1.116,2.101,3.124,4.092,4.946,5.679,6.325,6.926,7.501,8.045,8.541,8.981,9.379,9.757,10.125,
-10.470,10.764,10.981,11.119,11.196,11.238,11.259,11.253,11.210,11.132,11.038,10.957,10.907,10.878,10.845,10.782,
-10.690,10.597,10.536,10.521,10.532,10.530,10.482,10.387,10.272,10.171,10.094,10.024,9.927,9.785,9.611,9.440,
-9.299,9.183,9.054,8.867,8.608,8.307,8.027,7.821,7.700,7.626,7.541,7.399,7.197,6.966,6.744,6.547,
-6.365,6.169,5.936,5.660,5.348,5.011,4.656,4.285,3.910,3.549,3.224,2.942,2.693,2.453,2.205,1.946,
-1.687,1.439,1.197,.944,.662,.350,.027,-.288,-.593,-.912,-1.278,-1.708,-2.179,-2.641,-3.047,-3.385,
--3.688,-4.004,-4.364,-4.757,-5.141,-5.481,-5.777,-6.064,-6.385,-6.753,-7.138,-7.489,-7.770,-7.993,-8.204,-8.454,
--8.759,-9.094,-9.413,-9.688,-9.917,-10.127,-10.341,-10.564,-10.786,-10.992,-11.182,-11.357,-11.516,-11.644,-11.738,-11.830,
--11.997,-12.326,-12.849,-13.490,-14.065,-14.363,-14.253,-13.767,-13.097,-12.508,-12.206,-12.255,-12.565,-12.969,-13.312,-13.520,
--13.600,-13.601,-13.571,-13.543,-13.536,-13.577,-13.688,-13.871,-14.087,-14.256,-14.294,-14.146,-13.810,-13.337,-12.804,-12.290,
--11.868,-11.594,-11.508,-11.618,-11.889,-12.244,-12.591,-12.860,-13.038,-13.164,-13.296,-13.469,-13.673,-13.860,-13.984,-14.033,
--14.034,-14.033,-14.061,-14.117,-14.182,-14.240,-14.302,-14.395,-14.538,-14.720,-14.895,-14.998,-14.983,-14.832,-14.559,-14.192,
--13.763,-13.306,-12.874,-12.542,-12.399,-12.511,-12.893,-13.496,-14.222,-14.968,-15.658,-16.266,-16.807,-17.315,-17.818,-18.318,
--18.798,-19.225,-19.568,-19.814,-19.971,-20.074,-20.165,-20.277,-20.410,-20.529,-20.582,-20.533,-20.387,-20.196,-20.033,-19.953,
--19.963,-20.028,-20.097,-20.148,-20.200,-20.304,-20.498,-20.781,-21.103,-21.395,-21.605,-21.727,-21.794,-21.851,-21.934,-22.048,
--22.182,-22.325,-22.471,-22.623,-22.782,-22.943,-23.104,-23.277,-23.488,-23.759,-24.085,-24.420,-24.697,-24.864,-24.932,-24.986,
--25.160,-25.573,-26.270,-27.189,-28.185,-29.096,-29.802,-30.275,-30.566,-30.772,-30.978,-31.229,-31.520,-31.815,-32.079,-32.297,
--32.478,-32.640,-32.796,-32.941,-33.055,-33.116,-33.114,-33.062,-32.996,-32.960,-32.992,-33.112,-33.319,-33.598,-33.929,-34.291,
--34.672,-35.059,-35.446,-35.822,-36.178,-36.505,-36.798,-37.057,-37.292,-37.521,-37.769,-38.056,-38.388,-38.760,-39.154,-39.551,
--39.941,-40.321,-40.693,-41.053,-41.389,-41.689,-41.950,-42.188,-42.425,-42.677,-42.937,-43.171,-43.338,-43.411,-43.396,-43.330,
--43.258,-43.213,-43.199,-43.205,-43.220,-43.246,-43.292,-43.362,-43.443,-43.511,-43.547,-43.555,-43.566,-43.613,-43.707,-43.824,
--43.919,-43.955,-43.932,-43.888,-43.875,-43.920,-44.008,-44.092,-44.116,-44.048,-43.885,-43.639,-43.323,-42.941,-42.502,-42.033,
--41.578,-41.179,-40.849,-40.561,-40.253,-39.869,-39.382,-38.810,-38.195,-37.575,-36.965,-36.361,-35.760,-35.173,-34.625,-34.139,
--33.712,-33.314,-32.906,-32.465,-31.998,-31.535,-31.107,-30.723,-30.369,-30.020,-29.658,-29.283,-28.911,-28.554,-28.212,-27.870,
--27.508,-27.112,-26.676,-26.196,-25.666,-25.075,-24.418,-23.700,-22.944,-22.180,-21.438,-20.741,-20.100,-19.519,-19.003,-18.556,
--18.177,-17.854,-17.565,-17.278,-16.966,-16.614,-16.221,-15.799,-15.374,-14.967,-14.595,-14.257,-13.930,-13.572,-13.135,-12.583,
--11.908,-11.141,-10.343,-9.581,-8.901,-8.310,-7.772,-7.227,-6.619,-5.917,-5.121,-4.259,-3.362,-2.453,-1.541,-.639,
-.227,1.016,1.689,2.239,2.715,3.213,3.847,4.693,5.750,6.939,8.137,9.228,10.153,10.925,11.600,12.243,
-12.891,13.552,14.218,14.891,15.589,16.340,17.158,18.023,18.888,19.689,20.374,20.920,21.335,21.657,21.936,22.225,
-22.573,23.016,23.568,24.218,24.934,25.674,26.404,27.111,27.803,28.500,29.217,29.951,30.687,31.401,32.073,32.697,
-33.274,33.812,34.318,34.801,35.271,35.748,36.251,36.798,37.391,38.015,38.647,39.269,39.877,40.490,41.133,41.825,
-42.562,43.319,44.057,44.744,45.370,45.941,46.476,46.983,47.460,47.896,48.286,48.649,49.015,49.417,49.867,50.350,
-50.835,51.293,51.720,52.134,52.562,53.018,53.494,53.965,54.408,54.818,55.203,55.578,55.943,56.288,56.597,56.874,
-57.140,57.428,57.756,58.115,58.472,58.799,59.087,59.357,59.640,59.945,60.249,60.502,60.665,60.730,60.736,60.744,
-60.801,60.922,61.081,61.236,61.352,61.412,61.422,61.394,61.343,61.289,61.256,61.270,61.345,61.476,61.627,61.755,
-61.827,61.842,61.826,61.817,61.834,61.865,61.872,61.810,61.659,61.434,61.181,60.951,60.783,60.680,60.619,60.563,
-60.492,60.411,60.355,60.361,60.437,60.544,60.598,60.514,60.243,59.809,59.299,58.820,58.448,58.199,58.041,57.924,
-57.829,57.769,57.768,57.834,57.943,58.065,58.199,58.394,58.723,59.232,59.887,60.563,61.096,61.362,61.333,61.087,
-60.754,60.452,60.236,60.107,60.041,60.023,60.049,60.104,60.143,60.099,59.918,59.597,59.204,58.838,58.581,58.449,
-58.386,58.305,58.136,57.866,57.529,57.184,56.874,56.618,56.416,56.261,56.144,56.045,55.923,55.727,55.418,55.002,
-54.542,54.138,53.884,53.825,53.930,54.108,54.245,54.242,54.039,53.625,53.027,52.303,51.528,50.784,50.135,49.612,
-49.196,48.835,48.465,48.053,47.604,47.161,46.773,46.461,46.300,46.052,45.834,45.612,45.371,45.121,44.887,44.692,
-44.538,44.412,44.297,44.180,44.059,43.940,43.825,43.713,43.604,43.508,43.437,43.406,43.418,43.464,43.530,43.607,
-43.694,43.798,43.915,44.035,44.141,44.225,44.298,44.385,44.503,44.649,44.785,44.864,44.853,44.755,44.611,44.477,
-44.395,44.373,44.382,44.377,44.308,44.141,43.865,43.492,43.060,42.629,42.258,41.987,41.808,41.667,41.487,41.215,
-40.854,40.462,40.119,39.879,39.731,39.609,39.431,39.147,38.764,38.330,37.898,37.485,37.069,36.609,36.077,35.483,
-34.870,34.295,33.801,33.404,33.099,32.872,32.706,32.591,32.511,32.445,32.364,32.234,32.028,31.732,31.353,30.918,
-30.466,30.042,29.673,29.362,29.090,28.826,28.552,28.275,28.027,27.841,27.732,27.688,27.672,27.644,27.580,27.476,
-27.334,27.151,26.907,26.577,26.140,25.596,24.964,24.274,23.557,22.837,22.147,21.535,21.069,20.828,20.869,21.199,
-21.752,22.396,22.965,23.304,23.322,23.017,22.471,21.818,21.188,20.665,20.267,19.956,19.671,19.366,19.020,18.636,
-18.218,17.760,17.250,16.682,16.079,15.486,14.955,14.520,14.175,13.886,13.606,13.310,13.000,12.695,12.413,12.151,
-11.891,11.611,11.306,10.991,10.693,10.423,10.168,9.899,9.587,9.227,8.847,8.487,8.175,7.911,7.667,7.415,
-7.148,6.894,6.694,6.573,6.509,6.435,6.271,5.960,5.506,4.967,4.423,3.934,3.504,3.097,2.659,2.163,
-1.625,1.095,.627,.249,-.047,-.297,-.538,-.796,-1.080,-1.392,-1.735,-2.112,-2.524,-2.959,-3.392,-3.803,
--4.185,-4.551,-4.922,-5.314,-5.724,-6.134,-6.519,-6.866,-7.175,-7.459,-7.730,-7.989,-8.235,-8.470,-8.707,-8.978,
--9.317,-9.754,-10.300,-10.951,-11.680,-12.443,-13.179,-13.815,-14.282,-14.531,-14.551,-14.368,-14.039,-13.630,-13.200,-12.805,
--12.503,-12.366,-12.463,-12.833,-13.454,-14.234,-15.034,-15.727,-16.251,-16.639,-16.988,-17.410,-17.969,-18.652,-19.390,-20.103,
--20.747,-21.326,-21.878,-22.433,-22.988,-23.511,-23.961,-24.312,-24.566,-24.743,-24.860,-24.922,-24.927,-24.885,-24.831,-24.817,
--24.892,-25.076,-25.353,-25.679,-26.004,-26.301,-26.569,-26.829,-27.101,-27.396,-27.705,-28.009,-28.287,-28.527,-28.731,-28.916,
--29.108,-29.329,-29.590,-29.883,-30.187,-30.479,-30.759,-31.050,-31.389,-31.801,-32.277,-32.771,-33.224,-33.593,-33.881,-34.127,
--34.380,-34.672,-34.999,-35.342,-35.686,-36.038,-36.422,-36.854,-37.316,-37.762,-38.143,-38.436,-38.662,-38.869,-39.104,-39.384,
--39.688,-39.976,-40.212,-40.385,-40.504,-40.585,-40.642,-40.685,-40.720,-40.762,-40.823,-40.914,-41.037,-41.193,-41.381,-41.604,
--41.857,-42.126,-42.390,-42.627,-42.836,-43.034,-43.242,-43.463,-43.667,-43.798,-43.809,-43.690,-43.476,-43.224,-42.985,-42.776,
--42.585,-42.396,-42.210,-42.045,-41.911,-41.788,-41.615,-41.330,-40.903,-40.367,-39.809,-39.328,-38.987,-38.799,-38.736,-38.762,
--38.854,-39.012,-39.234,-39.508,-39.808,-40.108,-40.395,-40.673,-40.947,-41.219,-41.481,-41.729,-41.972,-42.219,-42.462,-42.650,
--42.699,-42.532,-42.128,-41.556,-40.960,-40.494,-40.253,-40.226,-40.312,-40.379,-40.332,-40.149,-39.879,-39.592,-39.337,-39.115,
--38.895,-38.637,-38.324,-37.974,-37.628,-37.330,-37.102,-36.940,-36.815,-36.696,-36.579,-36.499,-36.520,-36.698,-37.039,-37.477,
--37.888,-38.150,-38.208,-38.117,-38.010,-38.035,-38.268,-38.679,-39.147,-39.545,-39.799,-39.920,-39.964,-39.969,-39.913,-39.721,
--39.319,-38.700,-37.937,-37.154,-36.454,-35.869,-35.358,-34.843,-34.272,-33.650,-33.021,-32.430,-31.887,-31.361,-30.809,-30.215,
--29.605,-29.021,-28.487,-27.981,-27.446,-26.829,-26.127,-25.402,-24.747,-24.236,-23.868,-23.570,-23.237,-22.791,-22.227,-21.605,
--21.005,-20.472,-19.991,-19.500,-18.941,-18.298,-17.612,-16.942,-16.329,-15.765,-15.206,-14.610,-13.970,-13.321,-12.708,-12.147,
--11.603,-11.009,-10.314,-9.525,-8.716,-7.994,-7.430,-7.016,-6.660,-6.224,-5.600,-4.759,-3.762,-2.724,-1.757,-.919,
--.202,.448,1.086,1.738,2.388,3.001,3.550,4.035,4.479,4.903,5.312,5.680,5.975,6.179,6.315,6.436,
-6.605,6.862,7.204,7.596,7.989,8.353,8.686,9.008,9.342,9.699,10.074,10.455,10.833,11.208,11.584,11.963,
-12.346,12.734,13.132,13.550,13.997,14.469,14.952,15.428,15.884,16.322,16.749,17.172,17.584,17.970,18.310,18.593,
-18.817,18.979,19.069,19.071,18.974,18.790,18.559,18.339,18.183,18.120,18.145,18.242,18.396,18.606,18.875,19.185,
-19.489,19.721,19.830,19.817,19.742,19.695,19.741,19.876,20.022,20.070,19.944,19.653,19.283,18.956,18.754,18.684,
-18.678,18.647,18.536,18.353,18.152,17.987,17.872,17.766,17.606,17.353,17.020,16.673,16.397,16.249,16.238,16.327,
-16.462,16.604,16.744,16.890,17.054,17.239,17.433,17.628,17.826,18.042,18.288,18.562,18.834,19.064,19.217,19.290,
-19.310,19.325,19.374,19.470,19.600,19.738,19.870,20.001,20.151,20.332,20.540,20.754,20.960,21.165,21.399,21.695,
-22.057,22.447,22.800,23.064,23.233,23.349,23.473,23.641,23.835,24.011,24.143,24.257,24.414,24.633,24.804,24.663,
-23.858,22.111,19.369,15.880,12.117,8.597,5.687,3.495,1.903,.709,-.214,-.847,-1.056,-.715,.182,1.479,
-2.916,4.238,5.293,6.065,6.642,7.131,7.602,8.053,8.441,8.713,8.852,8.878,8.843,8.804,8.796,8.821,
-8.846,8.818,8.687,8.424,8.034,7.550,7.011,6.446,5.861,5.251,4.611,3.955,3.305,2.679,2.074,1.459,
-.796,.057,-.762,-1.651,-2.592,-3.562,-4.508,-5.311,-5.787,-5.737,-5.046,-3.781,-2.213,-.725,.359,.945,
-1.225,1.574,2.327,3.573,5.067,6.345,6.965,6.745,5.864,4.768,3.940,3.674,3.967,4.579,5.192,5.588,
-5.723,5.696,5.638,5.617,5.600,5.484,5.175,4.648,3.969,3.275,2.718,2.416,2.409,2.658,3.058,3.490,
-3.862,4.152,4.402,4.688,5.068,5.543,6.054,6.519,6.880,7.129,7.311,7.473,7.631,7.748,7.751,7.585,
-7.249,6.817,6.407,6.133,6.050,6.126,6.246,6.262,6.053,5.577,4.894,4.137,3.450,2.914,2.508,2.115,
-1.591,.844,-.106,-1.132,-2.052,-2.708,-3.024,-3.015,-2.751,-2.312,-1.756,-1.117,-.422,.298,1.016,1.723,
-2.441,3.204,4.032,4.908,5.775,6.563,7.226,7.764,8.211,8.611,8.992,9.354,9.685,9.980,10.249,10.506,
-10.756,10.984,11.166,11.283,11.341,11.364,11.376,11.383,11.373,11.325,11.234,11.113,10.988,10.877,10.774,10.660,
-10.519,10.356,10.200,10.081,10.010,9.964,9.907,9.813,9.689,9.565,9.476,9.427,9.389,9.318,9.188,9.009,
-8.819,8.651,8.509,8.360,8.160,7.891,7.579,7.284,7.059,6.920,6.833,6.738,6.590,6.380,6.137,5.900,
-5.694,5.516,5.345,5.160,4.946,4.702,4.423,4.103,3.743,3.356,2.973,2.625,2.331,2.083,1.857,1.628,
-1.392,1.158,.935,.716,.476,.191,-.143,-.503,-.858,-1.195,-1.529,-1.899,-2.326,-2.797,-3.260,-3.665,
--3.992,-4.273,-4.567,-4.916,-5.319,-5.732,-6.106,-6.422,-6.701,-6.985,-7.298,-7.631,-7.951,-8.233,-8.482,-8.730,
--9.008,-9.321,-9.647,-9.954,-10.230,-10.486,-10.741,-10.999,-11.238,-11.434,-11.584,-11.717,-11.873,-12.064,-12.259,-12.407,
--12.481,-12.527,-12.649,-12.943,-13.423,-13.979,-14.426,-14.596,-14.436,-14.043,-13.608,-13.318,-13.264,-13.420,-13.680,-13.934,
--14.113,-14.207,-14.235,-14.222,-14.187,-14.150,-14.130,-14.148,-14.202,-14.267,-14.299,-14.261,-14.134,-13.921,-13.631,-13.268,
--12.842,-12.390,-11.989,-11.736,-11.708,-11.909,-12.262,-12.642,-12.942,-13.131,-13.257,-13.398,-13.603,-13.848,-14.061,-14.173,
--14.172,-14.115,-14.088,-14.152,-14.303,-14.486,-14.636,-14.721,-14.758,-14.790,-14.846,-14.923,-14.992,-15.018,-14.983,-14.887,
--14.728,-14.488,-14.139,-13.669,-13.114,-12.567,-12.162,-12.028,-12.240,-12.793,-13.606,-14.552,-15.499,-16.351,-17.064,-17.645,
--18.130,-18.554,-18.929,-19.239,-19.459,-19.576,-19.615,-19.631,-19.682,-19.789,-19.921,-20.011,-20.001,-19.882,-19.711,-19.578,
--19.551,-19.639,-19.788,-19.926,-20.016,-20.077,-20.174,-20.363,-20.646,-20.971,-21.258,-21.451,-21.550,-21.601,-21.659,-21.754,
--21.880,-22.006,-22.112,-22.202,-22.298,-22.419,-22.570,-22.745,-22.939,-23.158,-23.412,-23.694,-23.963,-24.166,-24.267,-24.292,
--24.340,-24.548,-25.030,-25.812,-26.815,-27.878,-28.830,-29.554,-30.026,-30.304,-30.488,-30.670,-30.901,-31.188,-31.506,-31.819,
--32.100,-32.334,-32.516,-32.647,-32.731,-32.772,-32.773,-32.742,-32.691,-32.642,-32.622,-32.659,-32.776,-32.980,-33.261,-33.594,
--33.948,-34.296,-34.624,-34.933,-35.237,-35.547,-35.864,-36.177,-36.467,-36.723,-36.951,-37.176,-37.433,-37.748,-38.125,-38.548,
--38.989,-39.428,-39.852,-40.261,-40.649,-41.004,-41.310,-41.561,-41.772,-41.972,-42.188,-42.422,-42.642,-42.800,-42.856,-42.806,
--42.687,-42.554,-42.455,-42.411,-42.420,-42.472,-42.564,-42.699,-42.867,-43.042,-43.179,-43.242,-43.230,-43.177,-43.137,-43.149,
--43.210,-43.283,-43.325,-43.320,-43.292,-43.287,-43.338,-43.438,-43.546,-43.604,-43.570,-43.433,-43.200,-42.891,-42.521,-42.110,
--41.683,-41.278,-40.924,-40.623,-40.346,-40.040,-39.659,-39.187,-38.641,-38.058,-37.468,-36.883,-36.308,-35.751,-35.228,-34.759,
--34.345,-33.958,-33.556,-33.109,-32.621,-32.132,-31.694,-31.334,-31.039,-30.763,-30.460,-30.108,-29.721,-29.329,-28.952,-28.586,
--28.200,-27.759,-27.238,-26.628,-25.939,-25.186,-24.388,-23.569,-22.760,-21.994,-21.297,-20.681,-20.139,-19.658,-19.226,-18.839,
--18.496,-18.191,-17.911,-17.635,-17.349,-17.048,-16.740,-16.432,-16.125,-15.811,-15.475,-15.109,-14.713,-14.291,-13.844,-13.359,
--12.814,-12.193,-11.501,-10.768,-10.046,-9.382,-8.796,-8.271,-7.756,-7.191,-6.534,-5.770,-4.917,-4.005,-3.060,-2.101,
--1.147,-.231,.597,1.288,1.828,2.262,2.696,3.263,4.064,5.121,6.361,7.652,8.859,9.898,10.757,11.483,
-12.135,12.757,13.366,13.964,14.559,15.174,15.842,16.583,17.394,18.248,19.103,19.912,20.634,21.235,21.697,22.022,
-22.247,22.440,22.683,23.047,23.558,24.195,24.901,25.618,26.311,26.983,27.657,28.355,29.082,29.817,30.534,31.213,
-31.850,32.453,33.032,33.595,34.146,34.693,35.254,35.847,36.484,37.162,37.857,38.538,39.185,39.799,40.400,41.022,
-41.686,42.395,43.132,43.869,44.583,45.262,45.903,46.505,47.059,47.552,47.977,48.343,48.685,49.047,49.466,49.949,
-50.473,50.994,51.478,51.911,52.309,52.699,53.101,53.516,53.935,54.345,54.746,55.146,55.547,55.943,56.313,56.647,
-56.952,57.254,57.581,57.938,58.304,58.645,58.942,59.212,59.504,59.859,60.279,60.713,61.078,61.314,61.412,61.428,
-61.442,61.514,61.654,61.821,61.960,62.031,62.030,61.975,61.893,61.802,61.716,61.654,61.638,61.684,61.785,61.907,
-61.999,62.025,61.990,61.934,61.916,61.968,62.081,62.202,62.264,62.227,62.097,61.923,61.772,61.686,61.659,61.644,
-61.579,61.426,61.206,60.988,60.856,60.851,60.938,61.008,60.935,60.640,60.143,59.550,58.997,58.578,58.303,58.112,
-57.938,57.753,57.587,57.492,57.492,57.567,57.678,57.814,58.028,58.404,58.993,59.746,60.508,61.081,61.329,61.249,
-60.964,60.646,60.419,60.304,60.239,60.149,60.012,59.863,59.760,59.720,59.697,59.612,59.412,59.111,58.783,58.520,
-58.362,58.281,58.196,58.030,57.754,57.400,57.034,56.718,56.475,56.291,56.130,55.952,55.733,55.466,55.158,54.830,
-54.518,54.261,54.093,54.025,54.035,54.075,54.088,54.024,53.850,53.549,53.113,52.546,51.868,51.122,50.379,49.709,
-49.163,48.745,48.411,48.099,47.757,47.373,46.975,46.607,46.300,46.063,45.793,45.557,45.332,45.102,44.876,44.676,
-44.526,44.434,44.389,44.364,44.332,44.277,44.198,44.105,44.012,43.932,43.871,43.827,43.796,43.775,43.766,43.781,
-43.842,43.962,44.145,44.368,44.596,44.793,44.947,45.072,45.198,45.348,45.516,45.667,45.756,45.755,45.673,45.547,
-45.425,45.334,45.276,45.231,45.170,45.067,44.901,44.657,44.330,43.935,43.516,43.136,42.848,42.666,42.546,42.411,
-42.187,41.853,41.447,41.047,40.721,40.489,40.318,40.149,39.937,39.670,39.366,39.047,38.712,38.341,37.908,37.402,
-36.837,36.245,35.659,35.104,34.600,34.164,33.819,33.582,33.454,33.412,33.407,33.387,33.302,33.125,32.843,32.461,
-31.993,31.463,30.902,30.344,29.816,29.338,28.922,28.578,28.320,28.160,28.096,28.107,28.152,28.190,28.191,28.153,
-28.090,28.016,27.924,27.785,27.555,27.201,26.707,26.084,25.362,24.580,23.785,23.035,22.402,21.963,21.785,21.905,
-22.308,22.919,23.610,24.218,24.585,24.599,24.231,23.546,22.689,21.829,21.101,20.560,20.175,19.862,19.532,19.136,
-18.670,18.160,17.634,17.098,16.549,15.989,15.441,14.947,14.540,14.227,13.978,13.742,13.480,13.179,12.858,12.545,
-12.259,11.994,11.730,11.450,11.152,10.850,10.556,10.269,9.971,9.643,9.281,8.904,8.547,8.233,7.963,7.709,
-7.440,7.148,6.856,6.609,6.437,6.330,6.231,6.064,5.773,5.354,4.854,4.339,3.852,3.387,2.900,2.343,
-1.701,1.009,.332,-.264,-.749,-1.129,-1.436,-1.710,-1.979,-2.264,-2.581,-2.946,-3.363,-3.819,-4.282,-4.715,
--5.102,-5.458,-5.822,-6.231,-6.694,-7.184,-7.654,-8.062,-8.401,-8.689,-8.960,-9.230,-9.495,-9.740,-9.959,-10.171,
--10.413,-10.729,-11.145,-11.664,-12.271,-12.937,-13.628,-14.297,-14.883,-15.322,-15.561,-15.584,-15.411,-15.089,-14.670,-14.195,
--13.705,-13.259,-12.946,-12.876,-13.129,-13.712,-14.535,-15.434,-16.240,-16.855,-17.287,-17.634,-18.023,-18.537,-19.180,-19.892,
--20.595,-21.241,-21.830,-22.391,-22.949,-23.499,-24.010,-24.445,-24.788,-25.048,-25.246,-25.391,-25.477,-25.493,-25.444,-25.373,
--25.344,-25.417,-25.613,-25.908,-26.242,-26.555,-26.818,-27.041,-27.257,-27.501,-27.787,-28.104,-28.426,-28.729,-28.997,-29.231,
--29.443,-29.652,-29.872,-30.114,-30.373,-30.639,-30.902,-31.166,-31.454,-31.800,-32.224,-32.714,-33.221,-33.682,-34.050,-34.323,
--34.541,-34.762,-35.028,-35.347,-35.702,-36.070,-36.449,-36.852,-37.287,-37.741,-38.174,-38.541,-38.821,-39.029,-39.208,-39.402,
--39.631,-39.885,-40.138,-40.371,-40.578,-40.763,-40.926,-41.058,-41.141,-41.166,-41.141,-41.094,-41.064,-41.087,-41.186,-41.367,
--41.611,-41.881,-42.123,-42.298,-42.393,-42.441,-42.498,-42.615,-42.795,-42.990,-43.125,-43.146,-43.054,-42.902,-42.756,-42.646,
--42.547,-42.406,-42.188,-41.915,-41.647,-41.440,-41.294,-41.142,-40.891,-40.490,-39.965,-39.419,-38.969,-38.695,-38.604,-38.656,
--38.800,-39.013,-39.301,-39.669,-40.097,-40.538,-40.936,-41.256,-41.492,-41.666,-41.811,-41.958,-42.137,-42.379,-42.697,-43.073,
--43.435,-43.671,-43.676,-43.405,-42.907,-42.312,-41.771,-41.386,-41.171,-41.060,-40.959,-40.804,-40.585,-40.338,-40.107,-39.911,
--39.732,-39.533,-39.279,-38.959,-38.597,-38.238,-37.927,-37.694,-37.535,-37.421,-37.317,-37.210,-37.136,-37.164,-37.363,-37.744,
--38.226,-38.659,-38.887,-38.841,-38.583,-38.289,-38.162,-38.334,-38.806,-39.463,-40.144,-40.714,-41.097,-41.256,-41.162,-40.774,
--40.072,-39.103,-38.002,-36.965,-36.160,-35.653,-35.377,-35.177,-34.893,-34.446,-33.853,-33.196,-32.557,-31.967,-31.408,-30.843,
--30.252,-29.647,-29.054,-28.482,-27.917,-27.332,-26.715,-26.084,-25.484,-24.958,-24.514,-24.120,-23.723,-23.280,-22.780,-22.248,
--21.719,-21.210,-20.704,-20.169,-19.580,-18.940,-18.288,-17.665,-17.091,-16.546,-15.981,-15.352,-14.651,-13.910,-13.185,-12.518,
--11.906,-11.304,-10.655,-9.931,-9.152,-8.383,-7.689,-7.103,-6.597,-6.095,-5.510,-4.784,-3.914,-2.948,-1.961,-1.016,
--.150,.638,1.369,2.062,2.722,3.339,3.896,4.391,4.836,5.255,5.666,6.061,6.415,6.692,6.875,6.983,
-7.064,7.179,7.370,7.646,7.986,8.352,8.715,9.064,9.403,9.742,10.088,10.444,10.808,11.178,11.551,11.917,
-12.272,12.620,12.980,13.387,13.868,14.421,15.006,15.555,16.008,16.342,16.590,16.823,17.113,17.495,17.950,18.418,
-18.830,19.135,19.313,19.371,19.330,19.216,19.054,18.869,18.693,18.551,18.461,18.432,18.468,18.573,18.754,19.007,
-19.306,19.605,19.847,19.990,20.034,20.020,20.011,20.050,20.134,20.205,20.186,20.026,19.732,19.375,19.052,18.838,
-18.749,18.743,18.746,18.700,18.589,18.435,18.270,18.110,17.938,17.724,17.447,17.119,16.790,16.523,16.367,16.334,
-16.403,16.531,16.679,16.826,16.969,17.116,17.275,17.453,17.650,17.867,18.102,18.348,18.588,18.799,18.957,19.053,
-19.098,19.124,19.167,19.253,19.382,19.535,19.689,19.832,19.973,20.133,20.327,20.554,20.796,21.036,21.276,21.538,
-21.845,22.197,22.559,22.870,23.083,23.191,23.238,23.293,23.405,23.583,23.806,24.056,24.338,24.665,24.993,25.161,
-24.888,23.859,21.860,18.908,15.289,11.463,7.899,4.915,2.614,.935,-.219,-.882,-1.004,-.526,.521,1.957,
-3.492,4.837,5.816,6.424,6.787,7.076,7.404,7.795,8.193,8.522,8.732,8.818,8.805,8.726,8.609,8.480,
-8.359,8.264,8.199,8.143,8.056,7.894,7.631,7.265,6.818,6.315,5.779,5.223,4.660,4.106,3.573,3.068,
-2.585,2.111,1.634,1.142,.607,-.025,-.828,-1.852,-3.067,-4.322,-5.380,-6.005,-6.094,-5.735,-5.171,-4.653,
--4.273,-3.895,-3.232,-2.052,-.374,1.461,2.921,3.554,3.235,2.250,1.161,.522,.620,1.380,2.467,3.507,
-4.279,4.771,5.094,5.336,5.473,5.384,4.969,4.253,3.421,2.740,2.433,2.571,3.050,3.658,4.185,4.514,
-4.650,4.684,4.732,4.870,5.107,5.395,5.649,5.790,5.772,5.594,5.294,4.929,4.547,4.168,3.777,3.342,
-2.844,2.299,1.766,1.330,1.063,.989,1.056,1.140,1.091,.790,.203,-.594,-1.445,-2.179,-2.686,-2.967,
--3.114,-3.258,-3.481,-3.775,-4.040,-4.145,-3.996,-3.570,-2.915,-2.104,-1.196,-.218,.814,1.874,2.909,3.860,
-4.692,5.413,6.065,6.692,7.310,7.893,8.399,8.798,9.098,9.338,9.562,9.800,10.051,10.300,10.532,10.745,
-10.943,11.124,11.275,11.378,11.422,11.418,11.391,11.365,11.344,11.318,11.262,11.165,11.029,10.870,10.703,10.529,
-10.341,10.133,9.917,9.714,9.547,9.420,9.319,9.217,9.100,8.978,8.875,8.813,8.786,8.759,8.689,8.547,
-8.342,8.112,7.898,7.716,7.549,7.361,7.129,6.860,6.586,6.343,6.146,5.977,5.805,5.606,5.379,5.145,
-4.928,4.738,4.565,4.392,4.209,4.012,3.802,3.574,3.316,3.019,2.692,2.363,2.061,1.803,1.575,1.346,
-1.090,.804,.509,.232,-.020,-.266,-.536,-.846,-1.186,-1.530,-1.860,-2.185,-2.537,-2.938,-3.379,-3.819,
--4.209,-4.529,-4.807,-5.100,-5.452,-5.864,-6.292,-6.685,-7.014,-7.293,-7.560,-7.845,-8.149,-8.453,-8.739,-9.012,
--9.291,-9.590,-9.902,-10.201,-10.469,-10.718,-10.983,-11.291,-11.628,-11.939,-12.163,-12.278,-12.329,-12.397,-12.545,-12.767,
--12.993,-13.146,-13.205,-13.230,-13.328,-13.573,-13.951,-14.356,-14.653,-14.759,-14.689,-14.538,-14.418,-14.398,-14.474,-14.598,
--14.715,-14.795,-14.839,-14.861,-14.876,-14.889,-14.897,-14.896,-14.868,-14.790,-14.641,-14.425,-14.173,-13.940,-13.762,-13.625,
--13.464,-13.203,-12.820,-12.376,-12.003,-11.830,-11.904,-12.161,-12.469,-12.706,-12.839,-12.928,-13.073,-13.327,-13.657,-13.962,
--14.145,-14.184,-14.144,-14.136,-14.237,-14.450,-14.701,-14.901,-15.000,-15.012,-14.992,-14.996,-15.041,-15.110,-15.172,-15.211,
--15.224,-15.206,-15.124,-14.914,-14.512,-13.900,-13.143,-12.387,-11.824,-11.632,-11.905,-12.626,-13.669,-14.842,-15.949,-16.855,
--17.513,-17.964,-18.291,-18.568,-18.824,-19.041,-19.184,-19.242,-19.247,-19.254,-19.305,-19.393,-19.467,-19.474,-19.399,-19.292,
--19.237,-19.300,-19.482,-19.717,-19.917,-20.033,-20.087,-20.157,-20.319,-20.594,-20.930,-21.237,-21.448,-21.550,-21.588,-21.623,
--21.690,-21.781,-21.865,-21.917,-21.945,-21.980,-22.056,-22.188,-22.371,-22.593,-22.845,-23.122,-23.406,-23.660,-23.836,-23.913,
--23.924,-23.966,-24.169,-24.632,-25.377,-26.327,-27.340,-28.265,-29.000,-29.519,-29.859,-30.093,-30.296,-30.520,-30.792,-31.116,
--31.471,-31.821,-32.123,-32.339,-32.451,-32.472,-32.437,-32.388,-32.359,-32.361,-32.393,-32.448,-32.528,-32.648,-32.826,-33.070,
--33.370,-33.698,-34.020,-34.316,-34.585,-34.850,-35.136,-35.456,-35.800,-36.137,-36.434,-36.678,-36.884,-37.094,-37.352,-37.682,
--38.079,-38.516,-38.961,-39.392,-39.801,-40.183,-40.532,-40.833,-41.077,-41.273,-41.442,-41.612,-41.793,-41.965,-42.086,-42.120,
--42.059,-41.936,-41.803,-41.711,-41.685,-41.728,-41.828,-41.979,-42.182,-42.427,-42.685,-42.905,-43.038,-43.066,-43.010,-42.921,
--42.851,-42.818,-42.810,-42.798,-42.771,-42.746,-42.757,-42.828,-42.948,-43.071,-43.139,-43.107,-42.966,-42.728,-42.422,-42.072,
--41.701,-41.328,-40.976,-40.656,-40.362,-40.066,-39.732,-39.332,-38.866,-38.356,-37.828,-37.300,-36.777,-36.263,-35.769,-35.318,
--34.922,-34.568,-34.213,-33.813,-33.348,-32.847,-32.372,-31.982,-31.694,-31.469,-31.234,-30.926,-30.523,-30.050,-29.551,-29.061,
--28.582,-28.089,-27.545,-26.926,-26.220,-25.431,-24.576,-23.685,-22.804,-21.986,-21.282,-20.713,-20.269,-19.915,-19.609,-19.328,
--19.062,-18.812,-18.567,-18.308,-18.012,-17.675,-17.316,-16.973,-16.673,-16.413,-16.160,-15.866,-15.503,-15.072,-14.604,-14.133,
--13.669,-13.187,-12.647,-12.018,-11.310,-10.574,-9.881,-9.285,-8.790,-8.348,-7.879,-7.308,-6.601,-5.774,-4.873,-3.948,
--3.032,-2.140,-1.281,-.478,.239,.858,1.410,1.984,2.696,3.636,4.822,6.175,7.555,8.817,9.871,10.709,
-11.383,11.969,12.525,13.077,13.631,14.194,14.785,15.428,16.142,16.927,17.771,18.653,19.546,20.415,21.207,21.859,
-22.321,22.586,22.707,22.784,22.928,23.216,23.664,24.233,24.863,25.509,26.163,26.837,27.549,28.295,29.052,29.792,
-30.499,31.177,31.844,32.512,33.182,33.845,34.494,35.135,35.784,36.458,37.158,37.870,38.563,39.214,39.817,40.386,
-40.948,41.530,42.149,42.804,43.486,44.181,44.877,45.558,46.209,46.809,47.342,47.803,48.209,48.596,49.008,49.475,
-49.999,50.557,51.106,51.611,52.060,52.462,52.840,53.212,53.588,53.965,54.343,54.731,55.137,55.563,55.998,56.419,
-56.810,57.176,57.534,57.902,58.276,58.628,58.927,59.172,59.399,59.677,60.057,60.536,61.046,61.489,61.788,61.936,
-61.992,62.039,62.135,62.276,62.413,62.487,62.476,62.403,62.314,62.245,62.207,62.187,62.174,62.170,62.188,62.235,
-62.292,62.326,62.306,62.234,62.151,62.115,62.167,62.307,62.487,62.636,62.704,62.682,62.609,62.544,62.530,62.561,
-62.580,62.514,62.317,62.009,61.679,61.437,61.351,61.396,61.454,61.373,61.053,60.509,59.859,59.260,58.814,58.523,
-58.306,58.073,57.794,57.516,57.315,57.235,57.257,57.324,57.419,57.595,57.961,58.590,59.440,60.332,61.025,61.345,
-61.274,60.951,60.584,60.324,60.198,60.127,60.014,59.826,59.617,59.477,59.453,59.510,59.548,59.470,59.249,58.938,
-58.632,58.400,58.244,58.105,57.910,57.621,57.259,56.882,56.548,56.278,56.053,55.825,55.556,55.235,54.888,54.567,
-54.323,54.188,54.160,54.198,54.244,54.239,54.146,53.958,53.692,53.371,53.003,52.575,52.063,51.453,50.766,50.054,
-49.389,48.828,48.390,48.049,47.751,47.443,47.102,46.737,46.380,46.063,45.818,45.575,45.358,45.149,44.936,44.722,
-44.528,44.383,44.306,44.293,44.321,44.356,44.374,44.374,44.366,44.367,44.382,44.397,44.388,44.339,44.251,44.156,
-44.104,44.147,44.310,44.586,44.933,45.296,45.629,45.914,46.160,46.381,46.579,46.733,46.809,46.784,46.664,46.488,
-46.306,46.156,46.045,45.953,45.855,45.738,45.599,45.437,45.237,44.976,44.641,44.252,43.863,43.539,43.318,43.181,
-43.061,42.882,42.599,42.230,41.833,41.475,41.193,40.980,40.801,40.619,40.414,40.180,39.915,39.612,39.262,38.865,
-38.432,37.977,37.507,37.015,36.491,35.946,35.421,34.981,34.683,34.545,34.530,34.562,34.558,34.457,34.241,33.916,
-33.501,33.006,32.434,31.790,31.097,30.393,29.735,29.181,28.780,28.552,28.488,28.540,28.641,28.728,28.760,28.742,
-28.707,28.695,28.723,28.765,28.764,28.650,28.375,27.919,27.296,26.543,25.711,24.863,24.072,23.420,22.978,22.797,
-22.888,23.223,23.736,24.327,24.869,25.222,25.263,24.926,24.237,23.316,22.339,21.475,20.812,20.340,19.967,19.581,
-19.113,18.561,17.972,17.402,16.874,16.378,15.888,15.399,14.930,14.522,14.199,13.949,13.731,13.492,13.206,12.881,
-12.553,12.257,12.004,11.777,11.543,11.278,10.979,10.660,10.340,10.026,9.713,9.389,9.051,8.706,8.367,8.041,
-7.724,7.406,7.086,6.781,6.518,6.313,6.156,6.002,5.793,5.489,5.091,4.636,4.168,3.710,3.239,2.707,
-2.073,1.333,.531,-.260,-.979,-1.593,-2.107,-2.547,-2.939,-3.305,-3.665,-4.044,-4.466,-4.940,-5.445,-5.938,
--6.376,-6.747,-7.080,-7.433,-7.851,-8.338,-8.849,-9.322,-9.717,-10.033,-10.309,-10.585,-10.874,-11.158,-11.409,-11.616,
--11.802,-12.014,-12.299,-12.676,-13.140,-13.666,-14.231,-14.814,-15.387,-15.906,-16.315,-16.566,-16.638,-16.541,-16.303,-15.948,
--15.485,-14.934,-14.351,-13.848,-13.574,-13.656,-14.130,-14.915,-15.837,-16.707,-17.401,-17.910,-18.321,-18.751,-19.281,-19.916,
--20.598,-21.255,-21.845,-22.374,-22.877,-23.383,-23.895,-24.389,-24.832,-25.206,-25.512,-25.757,-25.940,-26.045,-26.059,-25.998,
--25.913,-25.880,-25.965,-26.189,-26.516,-26.872,-27.183,-27.412,-27.573,-27.715,-27.888,-28.123,-28.417,-28.742,-29.066,-29.367,
--29.633,-29.868,-30.083,-30.295,-30.518,-30.760,-31.024,-31.306,-31.606,-31.933,-32.304,-32.726,-33.185,-33.642,-34.048,-34.369,
--34.611,-34.820,-35.056,-35.364,-35.751,-36.189,-36.643,-37.087,-37.518,-37.937,-38.337,-38.692,-38.977,-39.183,-39.328,-39.452,
--39.592,-39.765,-39.972,-40.203,-40.453,-40.723,-41.010,-41.292,-41.529,-41.682,-41.726,-41.673,-41.562,-41.449,-41.388,-41.411,
--41.526,-41.708,-41.908,-42.062,-42.123,-42.080,-41.979,-41.892,-41.883,-41.968,-42.099,-42.204,-42.231,-42.186,-42.122,-42.087,
--42.080,-42.038,-41.882,-41.581,-41.188,-40.815,-40.563,-40.450,-40.400,-40.286,-40.023,-39.620,-39.179,-38.834,-38.680,-38.736,
--38.959,-39.291,-39.692,-40.149,-40.649,-41.157,-41.618,-41.979,-42.216,-42.344,-42.403,-42.440,-42.491,-42.588,-42.760,-43.023,
--43.368,-43.740,-44.046,-44.191,-44.125,-43.867,-43.496,-43.108,-42.767,-42.487,-42.241,-42.000,-41.752,-41.506,-41.277,-41.060,
--40.836,-40.579,-40.283,-39.960,-39.634,-39.331,-39.063,-38.837,-38.650,-38.495,-38.354,-38.204,-38.036,-37.869,-37.763,-37.793,
--37.993,-38.320,-38.650,-38.831,-38.772,-38.501,-38.162,-37.948,-38.001,-38.356,-38.934,-39.603,-40.229,-40.709,-40.963,-40.914,
--40.502,-39.728,-38.693,-37.595,-36.662,-36.044,-35.745,-35.622,-35.466,-35.119,-34.543,-33.821,-33.081,-32.419,-31.852,-31.334,
--30.809,-30.247,-29.656,-29.058,-28.462,-27.861,-27.250,-26.641,-26.071,-25.570,-25.143,-24.754,-24.346,-23.877,-23.344,-22.780,
--22.231,-21.717,-21.217,-20.692,-20.110,-19.476,-18.827,-18.214,-17.659,-17.141,-16.604,-15.996,-15.297,-14.534,-13.761,-13.027,
--12.347,-11.697,-11.036,-10.337,-9.608,-8.883,-8.201,-7.576,-6.986,-6.384,-5.719,-4.963,-4.113,-3.193,-2.235,-1.269,
--.322,.585,1.430,2.197,2.879,3.478,4.007,4.485,4.934,5.373,5.813,6.250,6.669,7.040,7.333,7.536,
-7.659,7.742,7.833,7.976,8.193,8.478,8.809,9.158,9.502,9.830,10.144,10.453,10.772,11.113,11.476,11.849,
-12.213,12.556,12.892,13.264,13.722,14.293,14.950,15.610,16.167,16.544,16.740,16.831,16.945,17.191,17.613,18.169,
-18.758,19.265,19.610,19.769,19.769,19.661,19.495,19.308,19.119,18.941,18.785,18.670,18.615,18.639,18.752,18.951,
-19.215,19.511,19.797,20.038,20.213,20.324,20.392,20.443,20.493,20.531,20.525,20.430,20.218,19.893,19.509,19.146,
-18.880,18.753,18.754,18.824,18.887,18.882,18.785,18.606,18.374,18.115,17.839,17.549,17.253,16.972,16.742,16.601,
-16.568,16.632,16.758,16.904,17.036,17.144,17.243,17.356,17.508,17.703,17.928,18.158,18.367,18.537,18.664,18.754,
-18.820,18.879,18.945,19.031,19.144,19.281,19.435,19.595,19.758,19.929,20.122,20.348,20.610,20.898,21.197,21.498,
-21.801,22.105,22.400,22.660,22.853,22.958,22.990,22.996,23.033,23.145,23.343,23.618,23.956,24.352,24.776,25.128,
-25.199,24.696,23.339,20.993,17.770,14.020,10.226,6.833,4.110,2.119,.787,.025,-.197,.143,1.033,2.352,
-3.849,5.224,6.248,6.857,7.152,7.317,7.506,7.771,8.065,8.306,8.447,8.505,8.528,8.544,8.533,8.441,
-8.230,7.924,7.608,7.382,7.302,7.341,7.408,7.394,7.234,6.925,6.516,6.065,5.610,5.154,4.682,4.189,
-3.684,3.202,2.776,2.434,2.173,1.950,1.679,1.244,.539,-.476,-1.736,-3.074,-4.284,-5.215,-5.840,-6.246,
--6.548,-6.774,-6.811,-6.464,-5.613,-4.350,-3.019,-2.081,-1.879,-2.439,-3.428,-4.311,-4.623,-4.181,-3.137,-1.835,
--.588,.476,1.406,2.297,3.133,3.735,3.866,3.409,2.499,1.504,.857,.841,1.442,2.374,3.232,3.703,
-3.690,3.323,2.844,2.469,2.287,2.252,2.240,2.130,1.853,1.406,.830,.175,-.517,-1.215,-1.897,-2.543,
--3.137,-3.665,-4.113,-4.461,-4.688,-4.774,-4.718,-4.562,-4.391,-4.312,-4.418,-4.735,-5.206,-5.697,-6.061,-6.194,
--6.081,-5.786,-5.404,-5.001,-4.574,-4.066,-3.411,-2.585,-1.623,-.597,.427,1.423,2.403,3.387,4.372,5.315,
-6.159,6.866,7.440,7.920,8.352,8.759,9.129,9.436,9.661,9.816,9.938,10.068,10.228,10.413,10.604,10.781,
-10.936,11.072,11.190,11.284,11.343,11.359,11.335,11.283,11.220,11.153,11.079,10.986,10.865,10.712,10.531,10.331,
-10.118,9.894,9.666,9.439,9.227,9.036,8.868,8.717,8.576,8.444,8.328,8.238,8.179,8.135,8.081,7.985,
-7.829,7.619,7.378,7.139,6.921,6.727,6.542,6.349,6.140,5.915,5.684,5.449,5.211,4.969,4.730,4.505,
-4.308,4.139,3.983,3.817,3.622,3.400,3.164,2.932,2.708,2.482,2.240,1.980,1.718,1.477,1.265,1.063,
-.834,.546,.197,-.184,-.549,-.867,-1.136,-1.382,-1.634,-1.905,-2.194,-2.492,-2.806,-3.155,-3.550,-3.978,
--4.400,-4.775,-5.087,-5.361,-5.650,-5.993,-6.389,-6.802,-7.182,-7.509,-7.796,-8.080,-8.386,-8.711,-9.032,-9.333,
--9.619,-9.911,-10.221,-10.535,-10.820,-11.059,-11.272,-11.512,-11.823,-12.198,-12.571,-12.852,-12.989,-13.010,-13.008,-13.081,
--13.264,-13.509,-13.727,-13.851,-13.888,-13.910,-14.004,-14.209,-14.494,-14.785,-15.016,-15.166,-15.260,-15.340,-15.429,-15.521,
--15.591,-15.619,-15.602,-15.553,-15.493,-15.441,-15.413,-15.413,-15.429,-15.420,-15.332,-15.122,-14.796,-14.417,-14.085,-13.874,
--13.780,-13.720,-13.580,-13.295,-12.900,-12.515,-12.273,-12.230,-12.335,-12.468,-12.527,-12.501,-12.475,-12.566,-12.836,-13.243,
--13.667,-13.986,-14.150,-14.206,-14.254,-14.374,-14.579,-14.813,-15.002,-15.109,-15.149,-15.174,-15.227,-15.312,-15.403,-15.464,
--15.486,-15.483,-15.474,-15.449,-15.353,-15.109,-14.655,-13.993,-13.215,-12.486,-12.005,-11.936,-12.353,-13.207,-14.334,-15.512,
--16.532,-17.272,-17.724,-17.978,-18.155,-18.343,-18.562,-18.772,-18.924,-18.997,-19.014,-19.017,-19.031,-19.046,-19.033,-18.986,
--18.941,-18.963,-19.103,-19.357,-19.655,-19.902,-20.042,-20.092,-20.133,-20.255,-20.498,-20.825,-21.151,-21.393,-21.523,-21.568,
--21.582,-21.606,-21.643,-21.672,-21.673,-21.654,-21.643,-21.674,-21.768,-21.925,-22.136,-22.391,-22.681,-22.984,-23.259,-23.461,
--23.569,-23.613,-23.680,-23.882,-24.302,-24.956,-25.782,-26.669,-27.507,-28.218,-28.780,-29.208,-29.535,-29.802,-30.048,-30.308,
--30.609,-30.956,-31.320,-31.648,-31.886,-32.004,-32.018,-31.980,-31.951,-31.974,-32.055,-32.170,-32.287,-32.392,-32.497,-32.634,
--32.832,-33.098,-33.414,-33.744,-34.058,-34.345,-34.620,-34.912,-35.241,-35.603,-35.967,-36.293,-36.556,-36.760,-36.943,-37.153,
--37.426,-37.765,-38.145,-38.531,-38.896,-39.237,-39.562,-39.879,-40.183,-40.460,-40.694,-40.883,-41.036,-41.163,-41.262,-41.318,
--41.312,-41.247,-41.149,-41.065,-41.037,-41.084,-41.202,-41.372,-41.576,-41.810,-42.067,-42.331,-42.565,-42.726,-42.786,-42.750,
--42.651,-42.534,-42.432,-42.355,-42.299,-42.266,-42.269,-42.326,-42.443,-42.596,-42.735,-42.802,-42.760,-42.603,-42.352,-42.042,
--41.702,-41.355,-41.014,-40.690,-40.384,-40.080,-39.754,-39.381,-38.951,-38.478,-37.989,-37.510,-37.048,-36.597,-36.153,-35.722,
--35.323,-34.969,-34.647,-34.321,-33.954,-33.537,-33.102,-32.706,-32.391,-32.150,-31.926,-31.637,-31.222,-30.672,-30.025,-29.341,
--28.668,-28.028,-27.419,-26.825,-26.229,-25.607,-24.934,-24.192,-23.391,-22.575,-21.817,-21.183,-20.705,-20.366,-20.115,-19.900,
--19.691,-19.485,-19.284,-19.070,-18.810,-18.473,-18.062,-17.621,-17.217,-16.899,-16.661,-16.449,-16.187,-15.831,-15.391,-14.923,
--14.488,-14.106,-13.736,-13.302,-12.736,-12.032,-11.251,-10.497,-9.863,-9.377,-8.986,-8.587,-8.075,-7.400,-6.584,-5.700,
--4.830,-4.022,-3.277,-2.568,-1.871,-1.173,-.472,.259,1.080,2.071,3.285,4.705,6.226,7.692,8.958,9.950,
-10.687,11.256,11.754,12.250,12.766,13.303,13.859,14.453,15.108,15.839,16.642,17.503,18.408,19.349,20.310,21.247,
-22.086,22.740,23.150,23.326,23.349,23.341,23.415,23.631,23.988,24.450,24.981,25.570,26.224,26.950,27.733,28.538,
-29.326,30.080,30.808,31.536,32.285,33.053,33.817,34.550,35.238,35.891,36.530,37.176,37.836,38.495,39.130,39.723,
-40.271,40.788,41.301,41.835,42.410,43.031,43.692,44.374,45.054,45.709,46.322,46.884,47.399,47.883,48.360,48.854,
-49.381,49.936,50.502,51.047,51.548,51.995,52.397,52.776,53.148,53.522,53.900,54.278,54.663,55.061,55.480,55.913,
-56.347,56.770,57.180,57.584,57.987,58.379,58.734,59.026,59.261,59.480,59.752,60.128,60.603,61.114,61.567,61.895,
-62.093,62.216,62.339,62.498,62.674,62.803,62.833,62.758,62.630,62.521,62.483,62.517,62.584,62.638,62.659,62.655,
-62.647,62.648,62.646,62.621,62.568,62.504,62.469,62.496,62.595,62.739,62.879,62.969,62.993,62.973,62.951,62.965,
-63.016,63.058,63.019,62.843,62.532,62.162,61.845,61.668,61.631,61.632,61.523,61.195,60.650,60.003,59.414,58.987,
-58.718,58.510,58.259,57.929,57.578,57.299,57.151,57.110,57.108,57.114,57.191,57.475,58.081,58.989,60.013,60.870,
-61.321,61.299,60.926,60.430,60.016,59.761,59.622,59.510,59.377,59.255,59.215,59.297,59.463,59.608,59.627,59.473,
-59.186,58.856,58.562,58.329,58.123,57.887,57.582,57.213,56.822,56.455,56.133,55.844,55.556,55.243,54.905,54.578,
-54.317,54.167,54.142,54.206,54.290,54.317,54.232,54.021,53.714,53.355,52.978,52.589,52.165,51.674,51.099,50.455,
-49.784,49.140,48.569,48.092,47.698,47.359,47.041,46.723,46.404,46.096,45.818,45.569,45.409,45.267,45.122,44.956,
-44.766,44.573,44.415,44.326,44.317,44.367,44.441,44.510,44.569,44.634,44.722,44.831,44.929,44.975,44.941,44.837,
-44.715,44.647,44.695,44.882,45.190,45.571,45.978,46.380,46.769,47.141,47.480,47.747,47.890,47.876,47.709,47.443,
-47.156,46.913,46.741,46.620,46.508,46.371,46.209,46.040,45.880,45.718,45.517,45.241,44.888,44.501,44.149,43.881,
-43.700,43.557,43.386,43.144,42.835,42.507,42.213,41.984,41.815,41.672,41.519,41.326,41.077,40.765,40.395,39.988,
-39.580,39.206,38.882,38.585,38.259,37.849,37.341,36.785,36.277,35.909,35.720,35.672,35.670,35.612,35.435,35.135,
-34.746,34.309,33.836,33.308,32.693,31.981,31.199,30.424,29.751,29.271,29.025,28.992,29.094,29.226,29.303,29.297,
-29.241,29.205,29.246,29.371,29.527,29.622,29.572,29.326,28.884,28.277,27.551,26.757,25.951,25.199,24.570,24.119,
-23.873,23.827,23.949,24.199,24.530,24.873,25.133,25.195,24.963,24.407,23.594,22.673,21.809,21.110,20.585,20.150,
-19.693,19.142,18.504,17.849,17.255,16.761,16.347,15.955,15.537,15.086,14.638,14.238,13.909,13.633,13.365,13.068,
-12.735,12.398,12.099,11.866,11.686,11.516,11.307,11.036,10.714,10.378,10.062,9.779,9.513,9.233,8.915,8.553,
-8.163,7.767,7.388,7.042,6.737,6.479,6.263,6.067,5.858,5.600,5.271,4.877,4.446,4.005,3.557,3.071,
-2.497,1.800,.983,.094,-.799,-1.635,-2.385,-3.049,-3.642,-4.176,-4.661,-5.112,-5.558,-6.033,-6.554,-7.104,
--7.637,-8.103,-8.483,-8.804,-9.121,-9.484,-9.901,-10.339,-10.748,-11.101,-11.411,-11.712,-12.036,-12.378,-12.704,-12.980,
--13.199,-13.394,-13.613,-13.895,-14.245,-14.644,-15.070,-15.513,-15.970,-16.433,-16.869,-17.231,-17.477,-17.588,-17.569,-17.431,
--17.167,-16.753,-16.185,-15.519,-14.888,-14.470,-14.416,-14.775,-15.470,-16.326,-17.160,-17.856,-18.406,-18.885,-19.388,-19.967,
--20.610,-21.260,-21.855,-22.371,-22.826,-23.260,-23.709,-24.181,-24.661,-25.119,-25.535,-25.894,-26.187,-26.401,-26.519,-26.537,
--26.481,-26.409,-26.398,-26.511,-26.766,-27.121,-27.496,-27.808,-28.012,-28.120,-28.187,-28.281,-28.449,-28.706,-29.029,-29.382,
--29.728,-30.041,-30.311,-30.541,-30.749,-30.959,-31.196,-31.474,-31.794,-32.146,-32.520,-32.905,-33.296,-33.682,-34.045,-34.362,
--34.628,-34.858,-35.095,-35.389,-35.770,-36.231,-36.735,-37.237,-37.705,-38.127,-38.507,-38.845,-39.136,-39.367,-39.541,-39.673,
--39.787,-39.907,-40.043,-40.198,-40.380,-40.607,-40.897,-41.248,-41.629,-41.985,-42.254,-42.405,-42.438,-42.386,-42.292,-42.196,
--42.125,-42.095,-42.106,-42.141,-42.164,-42.135,-42.033,-41.874,-41.707,-41.584,-41.530,-41.524,-41.525,-41.505,-41.473,-41.468,
--41.511,-41.566,-41.550,-41.376,-41.025,-40.577,-40.175,-39.942,-39.909,-39.991,-40.046,-39.959,-39.716,-39.398,-39.138,-39.041,
--39.147,-39.435,-39.856,-40.362,-40.912,-41.463,-41.959,-42.350,-42.607,-42.742,-42.800,-42.831,-42.868,-42.922,-42.994,-43.091,
--43.225,-43.402,-43.602,-43.784,-43.903,-43.938,-43.901,-43.820,-43.711,-43.569,-43.375,-43.129,-42.858,-42.612,-42.421,-42.267,
--42.087,-41.815,-41.426,-40.964,-40.515,-40.158,-39.918,-39.761,-39.629,-39.485,-39.325,-39.166,-39.016,-38.858,-38.670,-38.458,
--38.270,-38.173,-38.196,-38.304,-38.402,-38.394,-38.247,-38.014,-37.807,-37.730,-37.830,-38.085,-38.441,-38.837,-39.221,-39.528,
--39.667,-39.547,-39.131,-38.477,-37.743,-37.109,-36.683,-36.437,-36.225,-35.878,-35.304,-34.540,-33.712,-32.955,-32.329,-31.804,
--31.305,-30.771,-30.193,-29.603,-29.030,-28.473,-27.908,-27.319,-26.722,-26.163,-25.681,-25.274,-24.895,-24.478,-23.984,-23.422,
--22.838,-22.278,-21.751,-21.228,-20.666,-20.043,-19.381,-18.726,-18.122,-17.570,-17.033,-16.455,-15.803,-15.084,-14.343,-13.626,
--12.955,-12.313,-11.659,-10.966,-10.238,-9.511,-8.825,-8.197,-7.599,-6.977,-6.279,-5.484,-4.604,-3.677,-2.734,-1.788,
--.839,.109,1.031,1.885,2.630,3.249,3.756,4.196,4.618,5.056,5.520,6.002,6.480,6.933,7.342,7.692,
-7.976,8.198,8.376,8.534,8.704,8.906,9.146,9.416,9.696,9.968,10.221,10.460,10.707,10.989,11.322,11.701,
-12.101,12.488,12.848,13.204,13.611,14.122,14.748,15.435,16.077,16.566,16.848,16.960,17.015,17.151,17.463,17.966,
-18.585,19.202,19.704,20.021,20.144,20.113,19.984,19.811,19.627,19.444,19.267,19.102,18.969,18.896,18.914,19.035,
-19.246,19.517,19.805,20.080,20.325,20.539,20.725,20.881,20.996,21.057,21.051,20.963,20.779,20.490,20.104,19.664,
-19.247,18.944,18.823,18.894,19.093,19.307,19.419,19.359,19.127,18.782,18.400,18.042,17.734,17.474,17.255,17.085,
-16.983,16.964,17.022,17.129,17.240,17.322,17.371,17.412,17.483,17.611,17.793,18.000,18.192,18.337,18.435,18.504,
-18.577,18.673,18.793,18.923,19.048,19.165,19.283,19.417,19.578,19.770,19.985,20.221,20.479,20.765,21.083,21.427,
-21.779,22.112,22.398,22.610,22.736,22.783,22.781,22.786,22.854,23.024,23.298,23.645,24.021,24.392,24.739,25.020,
-25.128,24.854,23.928,22.118,19.357,15.825,11.931,8.186,5.036,2.733,1.303,.626,.544,.942,1.746,2.869,
-4.153,5.384,6.357,6.973,7.280,7.433,7.594,7.835,8.107,8.301,8.335,8.228,8.083,8.013,8.051,8.119,
-8.081,7.836,7.404,6.922,6.577,6.485,6.626,6.857,6.995,6.922,6.637,6.239,5.850,5.535,5.277,5.001,
-4.640,4.181,3.675,3.204,2.835,2.585,2.416,2.248,1.990,1.567,.945,.140,-.784,-1.742,-2.667,-3.537,
--4.370,-5.179,-5.921,-6.481,-6.721,-6.583,-6.170,-5.750,-5.645,-6.055,-6.932,-7.973,-8.767,-9.002,-8.612,-7.771,
--6.750,-5.735,-4.738,-3.655,-2.428,-1.179,-.208,.163,-.195,-1.095,-2.089,-2.684,-2.598,-1.896,-.945,-.202,
-.018,-.325,-1.026,-1.784,-2.376,-2.743,-2.977,-3.223,-3.585,-4.083,-4.671,-5.291,-5.912,-6.533,-7.159,-7.773,
--8.330,-8.774,-9.067,-9.210,-9.227,-9.152,-9.003,-8.778,-8.477,-8.120,-7.756,-7.447,-7.230,-7.093,-6.968,-6.762,
--6.402,-5.867,-5.189,-4.426,-3.617,-2.766,-1.844,-.832,.255,1.361,2.413,3.362,4.201,4.960,5.674,6.358,
-6.994,7.552,8.015,8.393,8.720,9.027,9.323,9.593,9.813,9.972,10.083,10.174,10.272,10.391,10.523,10.649,
-10.753,10.828,10.881,10.921,10.953,10.976,10.983,10.965,10.919,10.843,10.745,10.632,10.510,10.378,10.231,10.061,
-9.864,9.646,9.419,9.197,8.985,8.782,8.580,8.377,8.181,8.004,7.857,7.745,7.656,7.575,7.485,7.375,
-7.242,7.084,6.902,6.695,6.466,6.227,5.991,5.773,5.578,5.399,5.221,5.025,4.798,4.544,4.279,4.026,
-3.807,3.632,3.488,3.350,3.187,2.981,2.738,2.478,2.225,1.990,1.766,1.537,1.294,1.044,.805,.589,
-.387,.164,-.114,-.463,-.860,-1.258,-1.611,-1.895,-2.121,-2.319,-2.524,-2.757,-3.032,-3.356,-3.735,-4.162,
--4.611,-5.040,-5.412,-5.718,-5.984,-6.259,-6.578,-6.940,-7.315,-7.665,-7.979,-8.276,-8.593,-8.945,-9.316,-9.670,
--9.982,-10.263,-10.545,-10.853,-11.183,-11.495,-11.755,-11.966,-12.174,-12.435,-12.768,-13.130,-13.439,-13.627,-13.690,-13.692,
--13.724,-13.843,-14.038,-14.245,-14.399,-14.480,-14.521,-14.580,-14.699,-14.881,-15.100,-15.323,-15.537,-15.744,-15.951,-16.151,
--16.325,-16.449,-16.505,-16.484,-16.385,-16.217,-16.003,-15.788,-15.623,-15.539,-15.525,-15.521,-15.453,-15.279,-15.021,-14.751,
--14.547,-14.432,-14.362,-14.253,-14.050,-13.766,-13.478,-13.269,-13.169,-13.129,-13.062,-12.913,-12.709,-12.552,-12.560,-12.789,
--13.195,-13.659,-14.058,-14.324,-14.472,-14.569,-14.677,-14.823,-14.990,-15.147,-15.281,-15.403,-15.532,-15.672,-15.802,-15.883,
--15.892,-15.835,-15.746,-15.668,-15.617,-15.575,-15.483,-15.271,-14.889,-14.337,-13.685,-13.073,-12.674,-12.647,-13.069,-13.891,
--14.943,-15.990,-16.825,-17.350,-17.601,-17.711,-17.824,-18.023,-18.295,-18.568,-18.766,-18.861,-18.875,-18.854,-18.828,-18.806,
--18.787,-18.788,-18.846,-18.997,-19.241,-19.527,-19.776,-19.930,-19.992,-20.025,-20.113,-20.307,-20.594,-20.905,-21.162,-21.321,
--21.388,-21.400,-21.394,-21.386,-21.371,-21.342,-21.306,-21.283,-21.296,-21.355,-21.463,-21.623,-21.839,-22.111,-22.421,-22.728,
--22.978,-23.143,-23.242,-23.348,-23.555,-23.931,-24.486,-25.167,-25.893,-26.588,-27.213,-27.764,-28.251,-28.679,-29.051,-29.371,
--29.659,-29.943,-30.246,-30.562,-30.860,-31.098,-31.251,-31.327,-31.368,-31.421,-31.516,-31.649,-31.794,-31.923,-32.028,-32.129,
--32.261,-32.457,-32.726,-33.051,-33.399,-33.737,-34.048,-34.336,-34.624,-34.928,-35.254,-35.584,-35.892,-36.157,-36.380,-36.585,
--36.806,-37.067,-37.366,-37.677,-37.970,-38.228,-38.466,-38.716,-39.007,-39.344,-39.698,-40.026,-40.288,-40.467,-40.568,-40.610,
--40.607,-40.570,-40.510,-40.451,-40.426,-40.469,-40.595,-40.792,-41.031,-41.278,-41.513,-41.729,-41.924,-42.086,-42.196,-42.234,
--42.195,-42.095,-41.969,-41.852,-41.770,-41.736,-41.756,-41.834,-41.968,-42.144,-42.330,-42.479,-42.546,-42.503,-42.349,-42.105,
--41.801,-41.466,-41.123,-40.786,-40.465,-40.156,-39.841,-39.491,-39.084,-38.618,-38.116,-37.616,-37.149,-36.724,-36.326,-35.938,
--35.551,-35.178,-34.831,-34.513,-34.210,-33.900,-33.578,-33.259,-32.971,-32.720,-32.480,-32.190,-31.784,-31.227,-30.526,-29.726,
--28.885,-28.052,-27.266,-26.557,-25.944,-25.426,-24.968,-24.509,-23.986,-23.374,-22.705,-22.058,-21.514,-21.109,-20.819,-20.583,
--20.348,-20.098,-19.847,-19.613,-19.382,-19.110,-18.756,-18.322,-17.866,-17.471,-17.193,-17.018,-16.869,-16.646,-16.300,-15.854,
--15.393,-15.003,-14.710,-14.457,-14.134,-13.643,-12.958,-12.144,-11.326,-10.617,-10.066,-9.626,-9.191,-8.652,-7.963,-7.154,
--6.313,-5.527,-4.838,-4.224,-3.628,-2.993,-2.286,-1.497,-.610,.415,1.631,3.061,4.656,6.287,7.784,9.010,
-9.915,10.557,11.054,11.521,12.019,12.553,13.101,13.654,14.237,14.887,15.630,16.457,17.344,18.265,19.216,20.202,
-21.207,22.169,22.992,23.583,23.902,23.990,23.953,23.911,23.955,24.117,24.391,24.765,25.240,25.834,26.556,27.382,
-28.257,29.117,29.921,30.671,31.403,32.156,32.946,33.753,34.536,35.257,35.906,36.502,37.080,37.670,38.281,38.899,
-39.495,40.048,40.556,41.038,41.529,42.059,42.646,43.280,43.939,44.592,45.217,45.810,46.377,46.934,47.491,48.051,
-48.617,49.184,49.747,50.297,50.818,51.297,51.727,52.117,52.488,52.864,53.257,53.663,54.071,54.470,54.860,55.250,
-55.651,56.066,56.490,56.915,57.336,57.749,58.142,58.502,58.815,59.087,59.348,59.646,60.018,60.459,60.923,61.341,
-61.668,61.908,62.110,62.332,62.594,62.857,63.051,63.117,63.051,62.910,62.779,62.722,62.749,62.821,62.885,62.906,
-62.886,62.849,62.822,62.813,62.814,62.812,62.802,62.792,62.801,62.840,62.906,62.981,63.040,63.065,63.058,63.041,
-63.045,63.084,63.134,63.135,63.021,62.763,62.401,62.035,61.766,61.634,61.577,61.469,61.192,60.720,60.139,59.590,
-59.183,58.924,58.726,58.485,58.158,57.797,57.494,57.308,57.214,57.137,57.037,56.983,57.132,57.635,58.507,59.574,
-60.530,61.089,61.123,60.719,60.108,59.532,59.133,58.920,58.828,58.794,58.811,58.906,59.098,59.348,59.571,59.674,
-59.611,59.402,59.112,58.811,58.534,58.273,57.998,57.678,57.307,56.902,56.493,56.104,55.744,55.412,55.104,54.822,
-54.583,54.411,54.321,54.303,54.321,54.320,54.252,54.091,53.846,53.544,53.210,52.850,52.447,51.978,51.434,50.824,
-50.178,49.530,48.907,48.325,47.795,47.322,46.909,46.554,46.249,45.987,45.761,45.569,45.301,45.193,45.112,45.036,
-44.938,44.803,44.647,44.512,44.441,44.451,44.523,44.615,44.694,44.758,44.834,44.951,45.111,45.281,45.408,45.459,
-45.442,45.407,45.416,45.512,45.700,45.952,46.235,46.537,46.870,47.249,47.665,48.071,48.385,48.532,48.477,48.252,
-47.941,47.638,47.408,47.255,47.138,47.006,46.835,46.641,46.464,46.325,46.210,46.067,45.847,45.534,45.164,44.799,
-44.492,44.252,44.047,43.829,43.576,43.303,43.053,42.868,42.758,42.700,42.646,42.550,42.374,42.097,41.716,41.250,
-40.745,40.269,39.888,39.629,39.458,39.290,39.027,38.623,38.109,37.581,37.150,36.874,36.729,36.628,36.471,36.200,
-35.823,35.394,34.967,34.559,34.133,33.622,32.974,32.189,31.339,30.549,29.944,29.605,29.524,29.613,29.747,29.823,
-29.809,29.751,29.729,29.804,29.968,30.146,30.235,30.155,29.884,29.453,28.913,28.306,27.660,26.999,26.360,25.793,
-25.338,25.012,24.798,24.668,24.603,24.601,24.658,24.735,24.750,24.597,24.206,23.586,22.831,22.077,21.427,20.901,
-20.435,19.927,19.312,18.602,17.879,17.240,16.742,16.366,16.039,15.680,15.250,14.767,14.288,13.863,13.507,13.192,
-12.876,12.536,12.191,11.884,11.656,11.510,11.404,11.275,11.073,10.794,10.475,10.168,9.907,9.683,9.452,9.167,
-8.804,8.379,7.932,7.506,7.130,6.810,6.536,6.287,6.041,5.775,5.467,5.108,4.705,4.274,3.827,3.356,
-2.822,2.178,1.390,.469,-.533,-1.537,-2.479,-3.325,-4.074,-4.741,-5.339,-5.877,-6.367,-6.839,-7.329,-7.863,
--8.435,-9.002,-9.509,-9.922,-10.247,-10.528,-10.813,-11.126,-11.463,-11.804,-12.140,-12.482,-12.846,-13.231,-13.612,-13.955,
--14.239,-14.479,-14.718,-14.995,-15.323,-15.680,-16.036,-16.374,-16.707,-17.056,-17.424,-17.786,-18.095,-18.314,-18.431,-18.454,
--18.376,-18.162,-17.761,-17.160,-16.428,-15.726,-15.258,-15.174,-15.505,-16.146,-16.917,-17.652,-18.272,-18.795,-19.297,-19.847,
--20.463,-21.107,-21.723,-22.269,-22.740,-23.162,-23.574,-24.001,-24.452,-24.920,-25.388,-25.834,-26.237,-26.571,-26.813,-26.948,
--26.983,-26.950,-26.909,-26.925,-27.052,-27.303,-27.644,-28.004,-28.305,-28.501,-28.596,-28.640,-28.706,-28.855,-29.112,-29.463,
--29.865,-30.270,-30.638,-30.949,-31.199,-31.405,-31.598,-31.809,-32.063,-32.365,-32.701,-33.047,-33.383,-33.698,-33.993,-34.273,
--34.543,-34.810,-35.090,-35.404,-35.772,-36.202,-36.678,-37.168,-37.636,-38.064,-38.451,-38.805,-39.136,-39.440,-39.713,-39.951,
--40.157,-40.338,-40.495,-40.625,-40.733,-40.840,-40.988,-41.220,-41.551,-41.955,-42.375,-42.743,-43.018,-43.189,-43.267,-43.263,
--43.185,-43.040,-42.852,-42.659,-42.498,-42.379,-42.277,-42.149,-41.964,-41.725,-41.470,-41.245,-41.078,-40.975,-40.935,-40.961,
--41.060,-41.218,-41.377,-41.446,-41.344,-41.057,-40.658,-40.281,-40.050,-40.008,-40.101,-40.211,-40.233,-40.126,-39.930,-39.731,
--39.613,-39.632,-39.804,-40.121,-40.554,-41.056,-41.565,-42.014,-42.360,-42.598,-42.765,-42.907,-43.057,-43.211,-43.342,-43.428,
--43.464,-43.468,-43.457,-43.436,-43.402,-43.363,-43.343,-43.372,-43.456,-43.551,-43.586,-43.504,-43.311,-43.083,-42.921,-42.873,
--42.890,-42.842,-42.603,-42.135,-41.523,-40.926,-40.482,-40.228,-40.099,-39.992,-39.847,-39.683,-39.569,-39.545,-39.579,-39.578,
--39.456,-39.197,-38.876,-38.601,-38.447,-38.410,-38.420,-38.398,-38.307,-38.165,-38.013,-37.889,-37.811,-37.795,-37.865,-38.042,
--38.313,-38.606,-38.807,-38.817,-38.607,-38.241,-37.826,-37.436,-37.061,-36.620,-36.032,-35.284,-34.455,-33.663,-32.989,-32.428,
--31.908,-31.347,-30.722,-30.076,-29.477,-28.959,-28.495,-28.019,-27.485,-26.901,-26.319,-25.798,-25.353,-24.946,-24.517,-24.026,
--23.478,-22.914,-22.367,-21.842,-21.306,-20.721,-20.075,-19.393,-18.721,-18.092,-17.504,-16.922,-16.307,-15.640,-14.940,-14.245,
--13.585,-12.962,-12.348,-11.705,-11.018,-10.299,-9.586,-8.908,-8.267,-7.625,-6.931,-6.150,-5.281,-4.355,-3.414,-2.480,
--1.552,-.618,.320,1.227,2.052,2.747,3.301,3.747,4.145,4.554,5.004,5.491,5.990,6.475,6.934,7.366,
-7.777,8.169,8.537,8.871,9.166,9.423,9.650,9.857,10.050,10.230,10.396,10.553,10.721,10.928,11.205,11.560,
-11.978,12.415,12.831,13.213,13.592,14.024,14.553,15.171,15.810,16.368,16.766,16.995,17.128,17.277,17.543,17.962,
-18.499,19.067,19.578,19.969,20.219,20.340,20.360,20.313,20.227,20.119,19.994,19.851,19.692,19.534,19.411,19.363,
-19.417,19.572,19.800,20.065,20.341,20.620,20.902,21.178,21.420,21.589,21.651,21.592,21.417,21.137,20.761,20.306,
-19.814,19.366,19.071,19.015,19.210,19.575,19.951,20.177,20.149,19.867,19.413,18.908,18.447,18.078,17.803,17.604,
-17.471,17.403,17.397,17.438,17.495,17.536,17.550,17.551,17.572,17.646,17.782,17.956,18.127,18.259,18.340,18.391,
-18.450,18.551,18.702,18.881,19.053,19.189,19.288,19.375,19.485,19.644,19.855,20.104,20.374,20.655,20.955,21.282,
-21.637,21.997,22.322,22.563,22.687,22.697,22.641,22.602,22.672,22.921,23.358,23.923,24.505,24.988,25.290,25.374,
-25.220,24.765,23.874,22.357,20.060,16.975,13.311,9.482,5.983,3.240,1.480,.703,.739,1.353,2.325,3.483,
-4.680,5.769,6.620,7.157,7.407,7.491,7.569,7.746,8.014,8.262,8.357,8.237,7.965,7.689,7.542,7.555,
-7.621,7.571,7.284,6.783,6.234,5.860,5.800,6.024,6.347,6.533,6.433,6.063,5.582,5.183,4.977,4.939,
-4.935,4.826,4.547,4.137,3.698,3.322,3.036,2.799,2.537,2.200,1.781,1.313,.843,.396,-.034,-.484,
--1.006,-1.637,-2.375,-3.162,-3.899,-4.483,-4.872,-5.131,-5.422,-5.930,-6.754,-7.834,-8.959,-9.865,-10.370,-10.461,
--10.263,-9.938,-9.558,-9.067,-8.360,-7.415,-6.388,-5.582,-5.295,-5.630,-6.407,-7.230,-7.689,-7.578,-6.994,-6.269,
--5.778,-5.741,-6.130,-6.729,-7.282,-7.642,-7.821,-7.944,-8.140,-8.463,-8.874,-9.289,-9.649,-9.949,-10.228,-10.519,
--10.810,-11.043,-11.149,-11.089,-10.883,-10.590,-10.272,-9.954,-9.613,-9.196,-8.666,-8.025,-7.320,-6.612,-5.943,-5.312,
--4.679,-3.998,-3.240,-2.410,-1.535,-.640,.265,1.185,2.120,3.055,3.952,4.772,5.491,6.109,6.646,7.124,
-7.551,7.927,8.249,8.523,8.771,9.012,9.257,9.495,9.708,9.876,9.997,10.083,10.151,10.219,10.291,10.365,
-10.431,10.477,10.498,10.491,10.464,10.428,10.397,10.374,10.350,10.308,10.234,10.128,10.006,9.888,9.781,9.677,
-9.551,9.388,9.186,8.966,8.750,8.549,8.351,8.138,7.904,7.664,7.453,7.293,7.186,7.102,7.003,6.866,
-6.698,6.521,6.358,6.207,6.047,5.851,5.613,5.349,5.093,4.872,4.690,4.524,4.346,4.131,3.881,3.612,
-3.352,3.120,2.925,2.760,2.606,2.443,2.256,2.043,1.813,1.582,1.358,1.137,.904,.647,.368,.083,
--.183,-.422,-.647,-.890,-1.180,-1.519,-1.881,-2.224,-2.512,-2.736,-2.917,-3.092,-3.298,-3.560,-3.891,-4.289,
--4.737,-5.201,-5.640,-6.020,-6.336,-6.611,-6.889,-7.202,-7.549,-7.905,-8.237,-8.540,-8.839,-9.170,-9.548,-9.947,
--10.323,-10.640,-10.904,-11.159,-11.449,-11.788,-12.145,-12.466,-12.725,-12.935,-13.146,-13.397,-13.686,-13.966,-14.181,-14.307,
--14.368,-14.416,-14.499,-14.627,-14.774,-14.906,-15.008,-15.090,-15.175,-15.282,-15.410,-15.553,-15.709,-15.882,-16.083,-16.313,
--16.562,-16.811,-17.040,-17.226,-17.337,-17.334,-17.180,-16.871,-16.453,-16.020,-15.677,-15.487,-15.445,-15.488,-15.531,-15.518,
--15.445,-15.342,-15.242,-15.154,-15.066,-14.966,-14.855,-14.752,-14.666,-14.580,-14.452,-14.247,-13.969,-13.680,-13.473,-13.430,
--13.577,-13.871,-14.225,-14.552,-14.798,-14.956,-15.051,-15.119,-15.192,-15.291,-15.431,-15.616,-15.836,-16.061,-16.251,-16.367,
--16.390,-16.328,-16.214,-16.082,-15.961,-15.864,-15.793,-15.733,-15.653,-15.499,-15.210,-14.750,-14.152,-13.541,-13.112,-13.056,
--13.466,-14.276,-15.275,-16.199,-16.846,-17.169,-17.273,-17.336,-17.504,-17.811,-18.185,-18.512,-18.714,-18.787,-18.787,-18.780,
--18.799,-18.844,-18.899,-18.962,-19.052,-19.183,-19.346,-19.505,-19.620,-19.682,-19.724,-19.805,-19.969,-20.219,-20.510,-20.777,
--20.971,-21.076,-21.107,-21.089,-21.045,-20.990,-20.937,-20.901,-20.893,-20.918,-20.969,-21.044,-21.153,-21.320,-21.567,-21.885,
--22.232,-22.542,-22.770,-22.917,-23.045,-23.237,-23.556,-24.008,-24.544,-25.095,-25.615,-26.097,-26.567,-27.049,-27.542,-28.020,
--28.447,-28.807,-29.109,-29.382,-29.648,-29.911,-30.156,-30.369,-30.547,-30.699,-30.841,-30.981,-31.114,-31.233,-31.338,-31.444,
--31.575,-31.755,-31.995,-32.286,-32.609,-32.938,-33.257,-33.555,-33.834,-34.100,-34.360,-34.620,-34.881,-35.139,-35.394,-35.648,
--35.909,-36.181,-36.463,-36.740,-36.989,-37.193,-37.362,-37.529,-37.746,-38.052,-38.448,-38.892,-39.315,-39.650,-39.864,-39.966,
--39.989,-39.975,-39.950,-39.927,-39.920,-39.948,-40.036,-40.203,-40.440,-40.716,-40.986,-41.213,-41.382,-41.497,-41.572,-41.608,
--41.601,-41.542,-41.435,-41.305,-41.188,-41.122,-41.128,-41.211,-41.360,-41.555,-41.769,-41.973,-42.133,-42.220,-42.214,-42.111,
--41.918,-41.654,-41.343,-41.009,-40.673,-40.349,-40.037,-39.714,-39.348,-38.912,-38.405,-37.855,-37.314,-36.824,-36.402,-36.032,
--35.682,-35.329,-34.969,-34.617,-34.293,-34.002,-33.739,-33.492,-33.254,-33.016,-32.761,-32.456,-32.064,-31.555,-30.923,-30.184,
--29.365,-28.498,-27.612,-26.750,-25.969,-25.323,-24.836,-24.474,-24.157,-23.794,-23.339,-22.823,-22.325,-21.925,-21.643,-21.430,
--21.204,-20.908,-20.550,-20.185,-19.865,-19.597,-19.335,-19.026,-18.655,-18.273,-17.962,-17.773,-17.678,-17.584,-17.380,-17.017,
--16.537,-16.047,-15.655,-15.396,-15.208,-14.965,-14.552,-13.926,-13.137,-12.299,-11.522,-10.857,-10.279,-9.709,-9.076,-8.354,
--7.582,-6.826,-6.139,-5.522,-4.925,-4.278,-3.536,-2.694,-1.769,-.768,.339,1.603,3.050,4.633,6.225,7.662,
-8.817,9.664,10.282,10.801,11.332,11.914,12.520,13.102,13.646,14.192,14.803,15.526,16.362,17.270,18.205,19.148,
-20.108,21.091,22.064,22.943,23.632,24.064,24.250,24.267,24.226,24.218,24.287,24.444,24.693,25.059,25.585,26.294,
-27.164,28.120,29.060,29.909,30.649,31.320,31.993,32.718,33.501,34.298,35.054,35.729,36.326,36.881,37.437,38.022,
-38.631,39.236,39.803,40.317,40.794,41.272,41.788,42.364,42.989,43.630,44.255,44.845,45.410,45.973,46.554,47.158,
-47.770,48.371,48.950,49.504,50.036,50.541,51.007,51.423,51.791,52.135,52.489,52.876,53.298,53.730,54.146,54.535,
-54.908,55.291,55.701,56.135,56.573,56.991,57.377,57.731,58.064,58.384,58.702,59.031,59.386,59.780,60.208,60.641,
-61.040,61.377,61.659,61.922,62.212,62.545,62.888,63.176,63.343,63.365,63.275,63.139,63.023,62.963,62.951,62.960,
-62.959,62.938,62.905,62.874,62.861,62.866,62.884,62.903,62.916,62.920,62.923,62.935,62.965,63.008,63.047,63.064,
-63.056,63.041,63.045,63.075,63.097,63.044,62.861,62.547,62.174,61.850,61.656,61.580,61.522,61.352,61.001,60.501,
-59.969,59.523,59.207,58.974,58.738,58.450,58.135,57.862,57.676,57.553,57.423,57.243,57.073,57.068,57.388,58.077,
-58.999,59.876,60.426,60.499,60.145,59.563,58.989,58.576,58.363,58.298,58.321,58.403,58.554,58.786,59.074,59.356,
-59.554,59.613,59.523,59.313,59.033,58.725,58.416,58.107,57.783,57.428,57.028,56.590,56.137,55.703,55.324,55.021,
-54.802,54.656,54.566,54.511,54.465,54.401,54.299,54.150,53.962,53.751,53.523,53.263,52.937,52.507,51.962,51.325,
-50.644,49.968,49.321,48.704,48.106,47.528,46.991,46.523,46.144,45.851,45.625,45.444,45.301,45.083,44.934,44.841,
-44.792,44.750,44.684,44.592,44.507,44.474,44.509,44.593,44.685,44.752,44.803,44.877,45.012,45.215,45.453,45.674,
-45.844,45.968,46.087,46.235,46.423,46.624,46.802,46.945,47.079,47.258,47.523,47.867,48.227,48.507,48.632,48.580,
-48.397,48.164,47.957,47.805,47.685,47.553,47.377,47.169,46.974,46.837,46.770,46.734,46.659,46.489,46.207,45.852,
-45.483,45.147,44.852,44.573,44.285,43.984,43.704,43.487,43.365,43.331,43.345,43.357,43.318,43.195,42.962,42.608,
-42.141,41.602,41.068,40.626,40.332,40.178,40.089,39.956,39.698,39.303,38.830,38.373,38.001,37.718,37.472,37.189,
-36.825,36.390,35.937,35.523,35.167,34.825,34.414,33.849,33.099,32.218,31.336,30.609,30.153,29.994,30.056,30.207,
-30.328,30.369,30.360,30.373,30.456,30.590,30.698,30.693,30.525,30.213,29.816,29.392,28.960,28.506,28.010,27.483,
-26.966,26.507,26.125,25.803,25.503,25.205,24.924,24.695,24.533,24.403,24.225,23.918,23.449,22.859,22.238,21.672,
-21.186,20.735,20.234,19.617,18.883,18.100,17.367,16.760,16.291,15.910,15.540,15.122,14.652,14.168,13.725,13.350,
-13.031,12.724,12.395,12.045,11.718,11.468,11.325,11.264,11.220,11.119,10.928,10.665,10.383,10.130,9.916,9.706,
-9.448,9.106,8.685,8.222,7.764,7.345,6.970,6.629,6.304,5.980,5.643,5.282,4.891,4.470,4.024,3.554,
-3.039,2.436,1.691,.775,-.293,-1.440,-2.563,-3.573,-4.430,-5.143,-5.751,-6.293,-6.793,-7.265,-7.725,-8.200,
--8.712,-9.263,-9.824,-10.347,-10.791,-11.145,-11.435,-11.702,-11.985,-12.301,-12.654,-13.040,-13.450,-13.867,-14.262,-14.602,
--14.871,-15.088,-15.303,-15.571,-15.912,-16.302,-16.686,-17.020,-17.302,-17.570,-17.867,-18.204,-18.548,-18.848,-19.069,-19.207,
--19.266,-19.223,-19.011,-18.556,-17.850,-17.002,-16.225,-15.752,-15.726,-16.128,-16.797,-17.523,-18.157,-18.668,-19.122,-19.614,
--20.191,-20.835,-21.483,-22.077,-22.595,-23.055,-23.487,-23.914,-24.346,-24.787,-25.243,-25.715,-26.192,-26.644,-27.027,-27.305,
--27.463,-27.515,-27.503,-27.482,-27.506,-27.615,-27.824,-28.112,-28.429,-28.712,-28.916,-29.036,-29.112,-29.211,-29.397,-29.698,
--30.098,-30.548,-30.992,-31.385,-31.706,-31.955,-32.148,-32.311,-32.472,-32.655,-32.868,-33.102,-33.341,-33.570,-33.789,-34.014,
--34.264,-34.556,-34.891,-35.261,-35.658,-36.074,-36.503,-36.936,-37.360,-37.767,-38.154,-38.528,-38.899,-39.269,-39.631,-39.978,
--40.301,-40.600,-40.870,-41.099,-41.273,-41.389,-41.471,-41.571,-41.744,-42.021,-42.385,-42.783,-43.155,-43.463,-43.695,-43.855,
--43.932,-43.907,-43.761,-43.511,-43.211,-42.930,-42.704,-42.518,-42.311,-42.020,-41.630,-41.188,-40.781,-40.493,-40.367,-40.400,
--40.562,-40.812,-41.103,-41.380,-41.577,-41.630,-41.514,-41.258,-40.939,-40.650,-40.457,-40.375,-40.373,-40.394,-40.391,-40.338,
--40.239,-40.123,-40.036,-40.035,-40.162,-40.429,-40.807,-41.238,-41.664,-42.059,-42.435,-42.822,-43.229,-43.626,-43.952,-44.154,
--44.219,-44.179,-44.086,-43.972,-43.837,-43.673,-43.490,-43.338,-43.271,-43.304,-43.382,-43.405,-43.295,-43.064,-42.822,-42.709,
--42.793,-43.002,-43.151,-43.051,-42.629,-41.976,-41.291,-40.756,-40.435,-40.259,-40.110,-39.924,-39.748,-39.690,-39.824,-40.106,
--40.383,-40.484,-40.324,-39.956,-39.528,-39.194,-39.021,-38.978,-38.982,-38.955,-38.869,-38.729,-38.554,-38.361,-38.175,-38.046,
--38.034,-38.174,-38.436,-38.720,-38.900,-38.889,-38.670,-38.291,-37.810,-37.252,-36.611,-35.881,-35.098,-34.339,-33.673,-33.113,
--32.599,-32.041,-31.385,-30.659,-29.953,-29.357,-28.895,-28.508,-28.099,-27.604,-27.026,-26.429,-25.884,-25.413,-24.984,-24.540,
--24.043,-23.498,-22.942,-22.404,-21.885,-21.352,-20.772,-20.134,-19.458,-18.785,-18.144,-17.537,-16.939,-16.317,-15.654,-14.956,
--14.249,-13.560,-12.902,-12.268,-11.640,-10.999,-10.339,-9.666,-8.986,-8.295,-7.575,-6.805,-5.972,-5.083,-4.159,-3.222,
--2.285,-1.346,-.403,.526,1.406,2.186,2.834,3.353,3.783,4.184,4.605,5.066,5.555,6.046,6.517,6.966,
-7.406,7.857,8.326,8.804,9.266,9.680,10.022,10.281,10.463,10.586,10.677,10.759,10.855,10.992,11.197,11.488,
-11.866,12.303,12.754,13.181,13.578,13.976,14.425,14.955,15.543,16.117,16.598,16.949,17.199,17.433,17.735,18.139,
-18.618,19.101,19.523,19.858,20.115,20.320,20.486,20.609,20.679,20.695,20.667,20.603,20.502,20.357,20.173,19.979,
-19.826,19.767,19.825,19.993,20.242,20.543,20.882,21.244,21.601,21.905,22.098,22.141,22.029,21.785,21.438,21.009,
-20.514,19.999,19.551,19.285,19.295,19.588,20.066,20.549,20.857,20.878,20.608,20.132,19.571,19.027,18.560,18.197,
-17.943,17.796,17.744,17.752,17.777,17.782,17.754,17.716,17.710,17.771,17.902,18.075,18.242,18.366,18.440,18.483,
-18.534,18.627,18.771,18.953,19.140,19.300,19.418,19.501,19.573,19.665,19.801,19.989,20.221,20.488,20.781,21.095,
-21.429,21.769,22.089,22.347,22.504,22.541,22.481,22.398,22.400,22.597,23.050,23.734,24.528,25.246,25.701,25.764,
-25.390,24.593,23.394,21.765,19.640,16.970,13.808,10.370,7.018,4.162,2.135,1.094,.988,1.609,2.682,3.945,
-5.190,6.270,7.090,7.608,7.844,7.885,7.855,7.868,7.971,8.126,8.233,8.196,7.990,7.678,7.384,7.206,
-7.153,7.131,6.994,6.646,6.116,5.562,5.194,5.152,5.409,5.780,6.013,5.929,5.527,4.974,4.504,4.286,
-4.331,4.508,4.637,4.600,4.394,4.107,3.833,3.606,3.381,3.079,2.649,2.114,1.560,1.085,.752,.560,
-.450,.335,.142,-.171,-.597,-1.093,-1.602,-2.087,-2.558,-3.077,-3.728,-4.565,-5.568,-6.639,-7.644,-8.478,
--9.114,-9.599,-9.994,-10.315,-10.518,-10.541,-10.378,-10.134,-9.990,-10.114,-10.545,-11.153,-11.691,-11.932,-11.793,-11.381,
--10.929,-10.656,-10.650,-10.835,-11.036,-11.101,-10.983,-10.760,-10.562,-10.485,-10.537,-10.646,-10.719,-10.707,-10.620,-10.507,
--10.401,-10.290,-10.122,-9.841,-9.435,-8.947,-8.456,-8.025,-7.660,-7.308,-6.879,-6.300,-5.554,-4.687,-3.781,-2.915,
--2.125,-1.403,-.705,.009,.757,1.531,2.306,3.057,3.766,4.425,5.034,5.591,6.099,6.564,6.994,7.391,
-7.750,8.065,8.333,8.563,8.773,8.981,9.193,9.401,9.583,9.727,9.827,9.891,9.932,9.956,9.968,9.974,
-9.982,9.999,10.023,10.037,10.021,9.966,9.879,9.786,9.709,9.652,9.597,9.521,9.416,9.299,9.198,9.128,
-9.077,9.009,8.891,8.715,8.505,8.295,8.102,7.910,7.694,7.439,7.165,6.919,6.740,6.631,6.553,6.451,
-6.291,6.081,5.860,5.668,5.513,5.369,5.200,4.984,4.735,4.484,4.259,4.064,3.876,3.669,3.429,3.162,
-2.887,2.624,2.382,2.163,1.965,1.787,1.623,1.464,1.295,1.107,.902,.686,.467,.239,-.009,-.287,
--.590,-.896,-1.179,-1.430,-1.665,-1.914,-2.199,-2.518,-2.844,-3.141,-3.389,-3.593,-3.782,-3.987,-4.235,-4.538,
--4.896,-5.297,-5.718,-6.131,-6.511,-6.848,-7.157,-7.470,-7.810,-8.180,-8.554,-8.901,-9.210,-9.502,-9.815,-10.172,
--10.562,-10.942,-11.269,-11.535,-11.773,-12.034,-12.352,-12.715,-13.079,-13.397,-13.651,-13.860,-14.061,-14.274,-14.494,-14.694,
--14.855,-14.975,-15.071,-15.165,-15.264,-15.364,-15.460,-15.553,-15.649,-15.755,-15.867,-15.979,-16.084,-16.191,-16.312,-16.461,
--16.641,-16.850,-17.089,-17.363,-17.671,-17.982,-18.226,-18.307,-18.148,-17.737,-17.145,-16.507,-15.962,-15.606,-15.453,-15.449,
--15.508,-15.559,-15.565,-15.534,-15.501,-15.510,-15.587,-15.724,-15.878,-15.983,-15.976,-15.829,-15.565,-15.255,-14.983,-14.813,
--14.765,-14.819,-14.935,-15.077,-15.220,-15.349,-15.446,-15.498,-15.509,-15.509,-15.550,-15.679,-15.907,-16.193,-16.459,-16.631,
--16.678,-16.623,-16.528,-16.441,-16.376,-16.307,-16.201,-16.054,-15.896,-15.768,-15.669,-15.537,-15.270,-14.798,-14.159,-13.523,
--13.131,-13.183,-13.723,-14.604,-15.554,-16.308,-16.742,-16.909,-16.985,-17.147,-17.467,-17.887,-18.279,-18.539,-18.646,-18.666,
--18.692,-18.777,-18.910,-19.042,-19.124,-19.147,-19.134,-19.117,-19.110,-19.113,-19.122,-19.154,-19.242,-19.414,-19.674,-19.989,
--20.304,-20.566,-20.739,-20.814,-20.803,-20.729,-20.628,-20.536,-20.486,-20.491,-20.537,-20.599,-20.659,-20.730,-20.853,-21.073,
--21.400,-21.794,-22.177,-22.479,-22.681,-22.829,-23.005,-23.272,-23.638,-24.057,-24.463,-24.820,-25.145,-25.488,-25.898,-26.381,
--26.900,-27.395,-27.819,-28.164,-28.454,-28.727,-29.011,-29.308,-29.605,-29.882,-30.123,-30.316,-30.462,-30.565,-30.645,-30.728,
--30.845,-31.017,-31.248,-31.522,-31.813,-32.100,-32.378,-32.652,-32.928,-33.209,-33.485,-33.746,-33.988,-34.218,-34.452,-34.704,
--34.981,-35.272,-35.559,-35.820,-36.037,-36.205,-36.340,-36.473,-36.650,-36.914,-37.287,-37.751,-38.251,-38.712,-39.069,-39.293,
--39.402,-39.442,-39.464,-39.496,-39.545,-39.605,-39.684,-39.798,-39.971,-40.204,-40.473,-40.731,-40.933,-41.062,-41.127,-41.153,
--41.156,-41.132,-41.065,-40.945,-40.787,-40.632,-40.528,-40.511,-40.586,-40.735,-40.929,-41.140,-41.350,-41.540,-41.689,-41.774,
--41.773,-41.677,-41.492,-41.238,-40.945,-40.641,-40.342,-40.044,-39.725,-39.350,-38.891,-38.350,-37.759,-37.175,-36.652,-36.214,
--35.849,-35.519,-35.188,-34.843,-34.497,-34.173,-33.889,-33.642,-33.410,-33.166,-32.880,-32.533,-32.111,-31.613,-31.046,-30.423,
--29.751,-29.027,-28.244,-27.407,-26.556,-25.762,-25.104,-24.623,-24.289,-24.015,-23.708,-23.326,-22.908,-22.545,-22.305,-22.182,
--22.087,-21.909,-21.586,-21.151,-20.701,-20.334,-20.078,-19.886,-19.679,-19.416,-19.124,-18.873,-18.714,-18.626,-18.519,-18.289,
--17.892,-17.372,-16.843,-16.413,-16.122,-15.917,-15.684,-15.312,-14.755,-14.041,-13.249,-12.460,-11.712,-10.999,-10.290,-9.561,
--8.822,-8.104,-7.435,-6.805,-6.161,-5.432,-4.565,-3.566,-2.487,-1.397,-.329,.748,1.904,3.196,4.608,6.044,
-7.364,8.457,9.303,9.977,10.594,11.240,11.925,12.598,13.199,13.717,14.213,14.780,15.493,16.359,17.327,18.325,
-19.303,20.250,21.170,22.051,22.841,23.465,23.871,24.065,24.114,24.111,24.134,24.216,24.362,24.578,24.901,25.391,
-26.091,26.990,28.002,29.002,29.884,30.608,31.217,31.802,32.446,33.179,33.969,34.750,35.465,36.096,36.670,37.233,
-37.819,38.428,39.033,39.599,40.111,40.585,41.060,41.578,42.155,42.778,43.410,44.016,44.585,45.136,45.702,46.304,
-46.939,47.579,48.194,48.769,49.313,49.837,50.345,50.817,51.231,51.580,51.889,52.203,52.560,52.967,53.397,53.813,
-54.197,54.563,54.950,55.382,55.851,56.316,56.732,57.079,57.373,57.655,57.964,58.317,58.710,59.128,59.563,60.007,
-60.452,60.878,61.262,61.592,61.884,62.167,62.473,62.802,63.124,63.384,63.537,63.567,63.495,63.368,63.237,63.136,
-63.078,63.055,63.049,63.039,63.016,62.982,62.948,62.927,62.920,62.918,62.907,62.885,62.867,62.875,62.922,62.994,
-63.055,63.075,63.051,63.013,62.997,63.006,62.996,62.898,62.672,62.350,62.028,61.808,61.725,61.712,61.643,61.405,
-60.981,60.451,59.939,59.530,59.229,58.982,58.733,58.474,58.239,58.060,57.922,57.770,57.563,57.335,57.202,57.298,
-57.677,58.258,58.847,59.234,59.304,59.088,58.724,58.375,58.140,58.029,57.998,58.006,58.053,58.172,58.392,58.702,
-59.048,59.345,59.516,59.521,59.360,59.076,58.729,58.377,58.051,57.747,57.435,57.074,56.645,56.167,55.690,55.276,
-54.966,54.770,54.664,54.606,54.551,54.469,54.342,54.171,53.974,53.778,53.600,53.430,53.226,52.930,52.494,51.916,
-51.239,50.531,49.844,49.196,48.570,47.951,47.347,46.793,46.330,45.975,45.704,45.480,45.272,45.083,44.994,44.775,
-44.647,44.608,44.611,44.604,44.562,44.503,44.465,44.471,44.514,44.570,44.627,44.700,44.827,45.033,45.309,45.611,
-45.892,46.132,46.353,46.593,46.871,47.166,47.422,47.593,47.674,47.711,47.772,47.905,48.104,48.311,48.455,48.493,
-48.435,48.331,48.234,48.162,48.093,47.979,47.793,47.550,47.310,47.146,47.095,47.138,47.199,47.189,47.052,46.786,
-46.443,46.083,45.747,45.437,45.131,44.810,44.485,44.190,43.961,43.817,43.742,43.706,43.678,43.637,43.570,43.454,
-43.255,42.941,42.510,42.009,41.525,41.145,40.916,40.811,40.746,40.622,40.375,40.002,39.552,39.084,38.636,38.205,
-37.762,37.285,36.780,36.286,35.847,35.484,35.164,34.804,34.312,33.633,32.794,31.910,31.142,30.631,30.430,30.484,
-30.669,30.854,30.971,31.030,31.080,31.157,31.240,31.264,31.165,30.931,30.609,30.274,29.975,29.699,29.391,29.000,
-28.524,28.012,27.533,27.121,26.760,26.396,25.987,25.534,25.083,24.687,24.359,24.066,23.741,23.336,22.847,22.322,
-21.821,21.377,20.968,20.532,19.995,19.323,18.537,17.707,16.921,16.240,15.677,15.202,14.765,14.335,13.911,13.518,
-13.177,12.880,12.593,12.279,11.928,11.579,11.297,11.133,11.090,11.111,11.110,11.022,10.836,10.591,10.342,10.120,
-9.912,9.676,9.370,8.981,8.530,8.051,7.576,7.118,6.680,6.257,5.846,5.442,5.034,4.612,4.166,3.695,
-3.188,2.620,1.936,1.079,.022,-1.202,-2.487,-3.696,-4.713,-5.494,-6.070,-6.526,-6.943,-7.367,-7.809,-8.258,
--8.713,-9.181,-9.670,-10.172,-10.661,-11.107,-11.497,-11.843,-12.176,-12.529,-12.922,-13.360,-13.826,-14.290,-14.709,-15.040,
--15.257,-15.377,-15.461,-15.591,-15.830,-16.182,-16.589,-16.974,-17.290,-17.552,-17.820,-18.149,-18.544,-18.958,-19.327,-19.618,
--19.834,-19.977,-20.000,-19.798,-19.275,-18.431,-17.425,-16.537,-16.045,-16.084,-16.582,-17.310,-18.018,-18.567,-18.980,-19.379,
--19.881,-20.516,-21.222,-21.900,-22.487,-22.981,-23.424,-23.857,-24.293,-24.728,-25.162,-25.614,-26.103,-26.626,-27.141,-27.584,
--27.899,-28.070,-28.123,-28.110,-28.089,-28.108,-28.197,-28.370,-28.618,-28.910,-29.192,-29.420,-29.577,-29.693,-29.833,-30.058,
--30.395,-30.822,-31.280,-31.708,-32.066,-32.346,-32.559,-32.724,-32.859,-32.979,-33.099,-33.227,-33.365,-33.508,-33.655,-33.815,
--34.010,-34.265,-34.591,-34.977,-35.395,-35.813,-36.216,-36.601,-36.978,-37.356,-37.741,-38.132,-38.529,-38.928,-39.321,-39.701,
--40.062,-40.406,-40.740,-41.066,-41.375,-41.645,-41.861,-42.033,-42.197,-42.401,-42.670,-42.994,-43.329,-43.629,-43.872,-44.065,
--44.224,-44.343,-44.391,-44.327,-44.145,-43.880,-43.592,-43.321,-43.048,-42.713,-42.257,-41.681,-41.067,-40.547,-40.232,-40.164,
--40.296,-40.537,-40.798,-41.036,-41.246,-41.433,-41.585,-41.663,-41.621,-41.438,-41.140,-40.800,-40.508,-40.336,-40.306,-40.376,
--40.468,-40.506,-40.463,-40.373,-40.315,-40.362,-40.544,-40.836,-41.187,-41.571,-42.007,-42.541,-43.196,-43.921,-44.596,-45.086,
--45.313,-45.305,-45.170,-45.024,-44.926,-44.854,-44.748,-44.572,-44.352,-44.151,-44.012,-43.904,-43.742,-43.455,-43.061,-42.684,
--42.483,-42.545,-42.808,-43.075,-43.126,-42.850,-42.309,-41.689,-41.177,-40.852,-40.658,-40.480,-40.256,-40.037,-39.948,-40.082,
--40.415,-40.792,-41.021,-40.985,-40.707,-40.323,-39.983,-39.769,-39.668,-39.611,-39.544,-39.455,-39.364,-39.280,-39.192,-39.079,
--38.948,-38.844,-38.822,-38.897,-39.024,-39.105,-39.046,-38.800,-38.376,-37.814,-37.154,-36.426,-35.662,-34.913,-34.237,-33.664,
--33.168,-32.669,-32.084,-31.388,-30.636,-29.930,-29.352,-28.906,-28.518,-28.095,-27.584,-27.007,-26.431,-25.916,-25.470,-25.045,
--24.584,-24.057,-23.481,-22.900,-22.348,-21.825,-21.302,-20.744,-20.135,-19.491,-18.841,-18.214,-17.615,-17.025,-16.413,-15.750,
--15.026,-14.258,-13.485,-12.749,-12.078,-11.469,-10.892,-10.304,-9.669,-8.974,-8.226,-7.439,-6.624,-5.781,-4.904,-3.988,
--3.038,-2.064,-1.083,-.116,.808,1.653,2.391,3.006,3.510,3.942,4.349,4.773,5.232,5.721,6.220,6.712,
-7.188,7.654,8.127,8.619,9.130,9.639,10.109,10.498,10.777,10.942,11.019,11.051,11.084,11.154,11.284,11.489,
-11.775,12.138,12.555,12.994,13.426,13.846,14.278,14.755,15.291,15.855,16.388,16.836,17.193,17.508,17.853,18.273,
-18.749,19.214,19.600,19.882,20.092,20.285,20.497,20.713,20.887,20.981,20.993,20.953,20.892,20.816,20.701,20.531,
-20.320,20.125,20.014,20.036,20.193,20.459,20.795,21.175,21.572,21.949,22.252,22.426,22.439,22.300,22.041,21.693,
-21.272,20.788,20.286,19.853,19.610,19.643,19.952,20.433,20.915,21.236,21.306,21.121,20.742,20.243,19.693,19.148,
-18.668,18.310,18.109,18.052,18.076,18.100,18.072,18.001,17.945,17.968,18.094,18.291,18.490,18.632,18.703,18.738,
-18.788,18.891,19.045,19.222,19.388,19.526,19.639,19.742,19.845,19.946,20.041,20.134,20.242,20.392,20.604,20.881,
-21.203,21.533,21.833,22.069,22.223,22.286,22.270,22.213,22.187,22.285,22.597,23.158,23.909,24.688,25.269,25.432,
-25.038,24.059,22.559,20.634,18.364,15.795,12.981,10.038,7.177,4.678,2.818,1.777,1.578,2.092,3.087,4.303,
-5.515,6.563,7.361,7.887,8.174,8.285,8.300,8.285,8.272,8.258,8.211,8.095,7.894,7.626,7.335,7.073,
-6.873,6.726,6.574,6.336,5.956,5.451,4.927,4.549,4.456,4.671,5.071,5.425,5.517,5.255,4.726,4.148,
-3.746,3.634,3.768,3.996,4.159,4.178,4.078,3.933,3.798,3.660,3.455,3.118,2.635,2.061,1.493,1.028,
-.725,.588,.581,.636,.684,.664,.542,.317,.010,-.347,-.745,-1.201,-1.751,-2.426,-3.223,-4.103,
--5.006,-5.881,-6.704,-7.474,-8.199,-8.878,-9.503,-10.069,-10.590,-11.097,-11.608,-12.105,-12.527,-12.793,-12.857,-12.736,
--12.517,-12.310,-12.189,-12.147,-12.105,-11.965,-11.667,-11.235,-10.755,-10.325,-10.000,-9.765,-9.556,-9.308,-8.989,-8.612,
--8.208,-7.792,-7.351,-6.848,-6.267,-5.628,-4.999,-4.455,-4.042,-3.741,-3.474,-3.136,-2.644,-1.982,-1.197,-.381,
-.379,1.033,1.588,2.090,2.592,3.129,3.706,4.295,4.860,5.367,5.799,6.160,6.468,6.751,7.034,7.331,
-7.637,7.935,8.206,8.442,8.651,8.847,9.039,9.221,9.375,9.487,9.555,9.593,9.616,9.631,9.630,9.600,
-9.547,9.492,9.462,9.465,9.484,9.478,9.418,9.304,9.169,9.051,8.968,8.906,8.832,8.730,8.612,8.513,
-8.458,8.438,8.412,8.337,8.194,8.007,7.814,7.639,7.468,7.268,7.015,6.725,6.448,6.237,6.106,6.020,
-5.919,5.758,5.535,5.284,5.050,4.853,4.680,4.503,4.306,4.093,3.882,3.682,3.482,3.259,2.998,2.708,
-2.415,2.146,1.911,1.699,1.495,1.295,1.107,.939,.785,.624,.434,.206,-.041,-.283,-.505,-.717,
--.946,-1.212,-1.511,-1.820,-2.115,-2.387,-2.653,-2.934,-3.240,-3.559,-3.867,-4.145,-4.392,-4.626,-4.863,-5.113,
--5.377,-5.658,-5.960,-6.288,-6.639,-6.998,-7.350,-7.690,-8.031,-8.394,-8.787,-9.191,-9.571,-9.902,-10.187,-10.461,
--10.764,-11.112,-11.484,-11.837,-12.140,-12.397,-12.642,-12.917,-13.237,-13.585,-13.924,-14.222,-14.469,-14.677,-14.863,-15.039,
--15.206,-15.366,-15.516,-15.660,-15.795,-15.915,-16.013,-16.092,-16.161,-16.235,-16.324,-16.424,-16.529,-16.635,-16.744,-16.859,
--16.978,-17.092,-17.200,-17.325,-17.512,-17.810,-18.231,-18.718,-19.148,-19.372,-19.273,-18.824,-18.101,-17.256,-16.462,-15.848,
--15.465,-15.282,-15.220,-15.200,-15.191,-15.220,-15.350,-15.625,-16.028,-16.465,-16.801,-16.929,-16.825,-16.561,-16.258,-16.022,
--15.891,-15.838,-15.807,-15.766,-15.727,-15.720,-15.753,-15.799,-15.806,-15.751,-15.667,-15.634,-15.726,-15.956,-16.254,-16.505,
--16.618,-16.580,-16.466,-16.378,-16.379,-16.450,-16.503,-16.447,-16.257,-15.990,-15.747,-15.597,-15.515,-15.387,-15.085,-14.566,
--13.932,-13.407,-13.229,-13.521,-14.216,-15.089,-15.875,-16.405,-16.676,-16.822,-17.007,-17.317,-17.712,-18.076,-18.304,-18.376,
--18.361,-18.367,-18.462,-18.638,-18.828,-18.955,-18.976,-18.902,-18.772,-18.630,-18.505,-18.421,-18.403,-18.480,-18.674,-18.978,
--19.357,-19.752,-20.102,-20.359,-20.498,-20.517,-20.438,-20.307,-20.180,-20.108,-20.112,-20.171,-20.241,-20.287,-20.315,-20.377,
--20.542,-20.845,-21.257,-21.697,-22.075,-22.351,-22.554,-22.757,-23.024,-23.365,-23.733,-24.064,-24.322,-24.530,-24.753,-25.056,
--25.460,-25.931,-26.410,-26.844,-27.221,-27.564,-27.909,-28.278,-28.668,-29.049,-29.388,-29.663,-29.865,-30.002,-30.093,-30.167,
--30.254,-30.382,-30.567,-30.803,-31.069,-31.340,-31.601,-31.856,-32.121,-32.413,-32.733,-33.065,-33.386,-33.680,-33.948,-34.205,
--34.468,-34.739,-34.997,-35.217,-35.376,-35.478,-35.550,-35.642,-35.802,-36.062,-36.433,-36.895,-37.405,-37.905,-38.341,-38.673,
--38.892,-39.022,-39.104,-39.182,-39.276,-39.387,-39.505,-39.626,-39.761,-39.928,-40.134,-40.358,-40.559,-40.701,-40.769,-40.783,
--40.777,-40.770,-40.753,-40.692,-40.561,-40.364,-40.145,-39.964,-39.868,-39.872,-39.959,-40.104,-40.288,-40.503,-40.741,-40.977,
--41.172,-41.284,-41.288,-41.190,-41.018,-40.808,-40.585,-40.357,-40.111,-39.818,-39.452,-38.994,-38.452,-37.857,-37.261,-36.715,
--36.248,-35.856,-35.512,-35.181,-34.847,-34.517,-34.209,-33.934,-33.683,-33.423,-33.119,-32.740,-32.280,-31.752,-31.179,-30.589,
--29.993,-29.386,-28.743,-28.040,-27.276,-26.493,-25.767,-25.178,-24.761,-24.475,-24.228,-23.929,-23.553,-23.159,-22.849,-22.694,
--22.669,-22.664,-22.545,-22.249,-21.823,-21.395,-21.085,-20.932,-20.871,-20.792,-20.614,-20.338,-20.032,-19.766,-19.556,-19.351,
--19.073,-18.677,-18.192,-17.695,-17.268,-16.938,-16.663,-16.360,-15.954,-15.413,-14.758,-14.033,-13.280,-12.518,-11.748,-10.970,
--10.200,-9.463,-8.774,-8.115,-7.428,-6.630,-5.658,-4.503,-3.229,-1.943,-.746,.325,1.312,2.309,3.402,4.613,
-5.878,7.088,8.150,9.037,9.798,10.510,11.226,11.939,12.598,13.156,13.626,14.086,14.652,15.409,16.374,17.485,
-18.642,19.753,20.767,21.663,22.430,23.044,23.472,23.701,23.763,23.733,23.702,23.735,23.855,24.050,24.314,24.671,
-25.174,25.872,26.758,27.760,28.759,29.646,30.377,30.988,31.567,32.200,32.922,33.706,34.491,35.221,35.878,36.482,
-37.072,37.673,38.283,38.878,39.431,39.932,40.403,40.882,41.405,41.985,42.603,43.223,43.816,44.377,44.931,45.511,
-46.137,46.797,47.457,48.080,48.654,49.191,49.713,50.225,50.707,51.130,51.480,51.780,52.078,52.420,52.815,53.233,
-53.631,53.989,54.330,54.703,55.142,55.636,56.128,56.556,56.893,57.165,57.433,57.755,58.147,58.587,59.039,59.483,
-59.924,60.378,60.843,61.291,61.681,61.989,62.225,62.431,62.654,62.917,63.206,63.470,63.657,63.731,63.696,63.589,
-63.463,63.365,63.318,63.311,63.315,63.296,63.243,63.167,63.091,63.034,62.991,62.945,62.882,62.814,62.776,62.796,
-62.873,62.966,63.019,63.002,62.934,62.868,62.847,62.861,62.848,62.736,62.507,62.218,61.968,61.828,61.785,61.744,
-61.589,61.261,60.793,60.286,59.836,59.484,59.205,58.950,58.693,58.448,58.241,58.076,57.921,57.737,57.523,57.331,
-57.238,57.289,57.458,57.654,57.782,57.800,57.738,57.671,57.654,57.688,57.730,57.734,57.701,57.686,57.769,57.999,
-58.363,58.783,59.150,59.367,59.384,59.210,58.900,58.533,58.180,57.878,57.617,57.353,57.036,56.642,56.190,55.733,
-55.334,55.031,54.826,54.689,54.579,54.459,54.306,54.112,53.884,53.645,53.424,53.237,53.075,52.891,52.624,52.227,
-51.695,51.072,50.416,49.770,49.138,48.505,47.868,47.254,46.718,46.301,45.998,45.759,45.524,45.261,44.994,44.996,
-44.781,44.683,44.693,44.754,44.797,44.779,44.707,44.612,44.529,44.477,44.464,44.508,44.631,44.852,45.160,45.509,
-45.840,46.117,46.349,46.586,46.875,47.226,47.596,47.918,48.139,48.256,48.311,48.356,48.418,48.479,48.499,48.454,
-48.359,48.264,48.221,48.243,48.288,48.279,48.152,47.903,47.595,47.329,47.193,47.208,47.324,47.441,47.464,47.351,
-47.118,46.823,46.525,46.250,45.991,45.723,45.434,45.133,44.847,44.598,44.389,44.209,44.045,43.898,43.789,43.733,
-43.719,43.698,43.601,43.370,43.003,42.556,42.126,41.800,41.614,41.530,41.460,41.309,41.015,40.571,40.017,39.407,
-38.784,38.168,37.562,36.970,36.412,35.916,35.500,35.143,34.781,34.329,33.726,32.979,32.178,31.471,30.995,30.815,
-30.892,31.109,31.341,31.512,31.617,31.696,31.777,31.844,31.843,31.728,31.502,31.223,30.962,30.753,30.564,30.323,
-29.968,29.494,28.960,28.447,28.002,27.610,27.209,26.741,26.190,25.597,25.030,24.537,24.122,23.746,23.355,22.919,
-22.443,21.965,21.524,21.131,20.754,20.328,19.781,19.075,18.228,17.315,16.434,15.669,15.054,14.567,14.159,13.785,
-13.424,13.081,12.758,12.444,12.114,11.759,11.406,11.112,10.936,10.897,10.954,11.023,11.019,10.905,10.698,10.453,
-10.216,10.000,9.778,9.509,9.163,8.736,8.248,7.723,7.186,6.659,6.154,5.678,5.227,4.784,4.327,3.839,
-3.314,2.740,2.088,1.304,.332,-.849,-2.182,-3.539,-4.755,-5.703,-6.346,-6.751,-7.042,-7.337,-7.699,-8.125,
--8.577,-9.021,-9.450,-9.874,-10.305,-10.741,-11.171,-11.586,-11.992,-12.404,-12.839,-13.302,-13.784,-14.261,-14.699,-15.056,
--15.293,-15.398,-15.401,-15.375,-15.412,-15.574,-15.859,-16.208,-16.547,-16.843,-17.128,-17.471,-17.921,-18.459,-19.012,-19.501,
--19.896,-20.214,-20.463,-20.583,-20.440,-19.907,-18.981,-17.854,-16.859,-16.317,-16.369,-16.908,-17.656,-18.335,-18.818,-19.174,
--19.573,-20.146,-20.896,-21.706,-22.435,-23.010,-23.454,-23.844,-24.245,-24.674,-25.117,-25.565,-26.035,-26.555,-27.121,-27.684,
--28.162,-28.490,-28.651,-28.685,-28.659,-28.636,-28.659,-28.751,-28.925,-29.181,-29.491,-29.806,-30.068,-30.252,-30.380,-30.520,
--30.740,-31.069,-31.481,-31.908,-32.286,-32.582,-32.802,-32.972,-33.114,-33.238,-33.350,-33.455,-33.564,-33.686,-33.819,-33.962,
--34.118,-34.303,-34.540,-34.840,-35.192,-35.568,-35.936,-36.283,-36.619,-36.964,-37.333,-37.725,-38.127,-38.522,-38.901,-39.260,
--39.600,-39.924,-40.244,-40.575,-40.930,-41.310,-41.696,-42.063,-42.395,-42.698,-42.994,-43.299,-43.606,-43.888,-44.118,-44.296,
--44.447,-44.600,-44.759,-44.887,-44.930,-44.854,-44.670,-44.419,-44.135,-43.810,-43.399,-42.870,-42.250,-41.647,-41.198,-40.997,
--41.036,-41.199,-41.334,-41.337,-41.209,-41.045,-40.967,-41.037,-41.218,-41.387,-41.416,-41.242,-40.913,-40.560,-40.322,-40.272,
--40.380,-40.543,-40.655,-40.682,-40.674,-40.724,-40.893,-41.163,-41.458,-41.705,-41.915,-42.189,-42.659,-43.383,-44.279,-45.146,
--45.767,-46.026,-45.974,-45.784,-45.642,-45.641,-45.744,-45.839,-45.826,-45.685,-45.464,-45.224,-44.973,-44.665,-44.245,-43.721,
--43.194,-42.807,-42.664,-42.744,-42.910,-42.980,-42.840,-42.505,-42.099,-41.762,-41.559,-41.444,-41.315,-41.107,-40.850,-40.648,
--40.601,-40.722,-40.920,-41.060,-41.049,-40.893,-40.674,-40.481,-40.348,-40.243,-40.116,-39.954,-39.796,-39.702,-39.695,-39.741,
--39.769,-39.727,-39.618,-39.489,-39.385,-39.309,-39.217,-39.044,-38.743,-38.306,-37.749,-37.094,-36.367,-35.604,-34.861,-34.197,
--33.636,-33.148,-32.657,-32.089,-31.425,-30.713,-30.038,-29.458,-28.967,-28.503,-28.002,-27.444,-26.868,-26.336,-25.877,-25.469,
--25.049,-24.561,-23.991,-23.376,-22.769,-22.206,-21.684,-21.175,-20.643,-20.070,-19.462,-18.843,-18.234,-17.644,-17.062,-16.459,
--15.801,-15.069,-14.275,-13.464,-12.695,-12.012,-11.415,-10.858,-10.276,-9.615,-8.867,-8.059,-7.232,-6.408,-5.579,-4.719,
--3.803,-2.830,-1.824,-.820,.147,1.047,1.861,2.573,3.177,3.681,4.110,4.505,4.910,5.357,5.857,6.399,
-6.954,7.495,8.003,8.484,8.958,9.447,9.954,10.447,10.874,11.184,11.357,11.414,11.413,11.418,11.472,11.596,
-11.790,12.052,12.380,12.766,13.195,13.646,14.105,14.575,15.070,15.592,16.120,16.617,17.055,17.441,17.817,18.232,
-18.695,19.165,19.575,19.880,20.094,20.276,20.482,20.716,20.925,21.039,21.026,20.919,20.792,20.704,20.660,20.616,
-20.530,20.402,20.284,20.251,20.347,20.569,20.876,21.222,21.578,21.926,22.240,22.480,22.604,22.596,22.468,22.247,
-21.949,21.571,21.115,20.629,20.214,19.991,20.037,20.332,20.758,21.160,21.421,21.496,21.404,21.180,20.839,20.386,
-19.846,19.297,18.845,18.570,18.476,18.485,18.493,18.437,18.337,18.273,18.319,18.485,18.708,18.898,19.003,19.040,
-19.077,19.178,19.355,19.564,19.740,19.851,19.916,19.989,20.114,20.288,20.467,20.595,20.653,20.670,20.713,20.838,
-21.058,21.334,21.602,21.808,21.937,22.008,22.055,22.106,22.185,22.321,22.557,22.939,23.468,24.061,24.542,24.680,
-24.271,23.210,21.526,19.352,16.858,14.193,11.476,8.820,6.371,4.316,2.848,2.093,2.058,2.625,3.589,4.722,
-5.830,6.777,7.492,7.962,8.224,8.348,8.413,8.470,8.521,8.526,8.434,8.223,7.921,7.588,7.278,7.010,
-6.766,6.519,6.250,5.959,5.639,5.270,4.837,4.366,3.953,3.740,3.831,4.212,4.713,5.071,5.063,4.632,
-3.922,3.208,2.746,2.649,2.851,3.168,3.417,3.506,3.452,3.332,3.214,3.108,2.971,2.742,2.389,1.933,
-1.439,.996,.685,.547,.575,.711,.870,.971,.968,.861,.688,.492,.291,.065,-.237,-.661,
--1.226,-1.907,-2.652,-3.409,-4.148,-4.874,-5.611,-6.377,-7.167,-7.943,-8.648,-9.226,-9.647,-9.908,-10.039,-10.080,
--10.073,-10.048,-10.013,-9.961,-9.865,-9.698,-9.438,-9.087,-8.671,-8.234,-7.811,-7.421,-7.052,-6.678,-6.272,-5.823,
--5.336,-4.819,-4.271,-3.681,-3.042,-2.367,-1.701,-1.112,-.660,-.364,-.186,-.040,.176,.533,1.043,1.658,
-2.289,2.854,3.306,3.652,3.935,4.213,4.530,4.897,5.300,5.706,6.083,6.407,6.675,6.897,7.097,7.296,
-7.511,7.741,7.973,8.189,8.381,8.552,8.708,8.851,8.973,9.058,9.103,9.118,9.129,9.153,9.186,9.203,
-9.177,9.102,9.005,8.925,8.886,8.874,8.850,8.777,8.649,8.500,8.376,8.299,8.252,8.196,8.103,7.980,
-7.867,7.800,7.781,7.775,7.733,7.628,7.473,7.306,7.151,7.003,6.827,6.596,6.316,6.029,5.790,5.624,
-5.513,5.405,5.253,5.044,4.795,4.539,4.297,4.072,3.854,3.640,3.436,3.247,3.064,2.862,2.616,2.321,
-2.006,1.712,1.472,1.285,1.123,.955,.767,.571,.385,.211,.025,-.199,-.471,-.766,-1.045,-1.277,
--1.468,-1.653,-1.874,-2.149,-2.467,-2.796,-3.113,-3.415,-3.711,-4.010,-4.312,-4.606,-4.889,-5.170,-5.460,-5.759,
--6.053,-6.321,-6.560,-6.790,-7.043,-7.342,-7.683,-8.038,-8.381,-8.710,-9.047,-9.414,-9.813,-10.211,-10.564,-10.853,
--11.096,-11.342,-11.634,-11.980,-12.350,-12.700,-13.002,-13.262,-13.511,-13.779,-14.078,-14.394,-14.701,-14.976,-15.211,-15.407,
--15.575,-15.727,-15.877,-16.037,-16.210,-16.384,-16.541,-16.664,-16.745,-16.797,-16.840,-16.892,-16.964,-17.059,-17.176,-17.310,
--17.451,-17.574,-17.652,-17.670,-17.652,-17.664,-17.798,-18.125,-18.650,-19.289,-19.879,-20.234,-20.209,-19.758,-18.955,-17.967,
--16.996,-16.196,-15.633,-15.277,-15.052,-14.903,-14.845,-14.949,-15.280,-15.827,-16.471,-17.029,-17.346,-17.371,-17.178,-16.909,
--16.683,-16.540,-16.441,-16.334,-16.208,-16.102,-16.065,-16.099,-16.143,-16.114,-15.976,-15.780,-15.640,-15.659,-15.851,-16.125,
--16.340,-16.395,-16.293,-16.135,-16.049,-16.106,-16.272,-16.430,-16.460,-16.316,-16.049,-15.774,-15.592,-15.512,-15.451,-15.277,
--14.911,-14.395,-13.891,-13.612,-13.711,-14.189,-14.903,-15.633,-16.204,-16.563,-16.781,-16.977,-17.234,-17.541,-17.817,-17.978,
--17.999,-17.933,-17.870,-17.884,-17.987,-18.137,-18.269,-18.334,-18.314,-18.218,-18.069,-17.900,-17.755,-17.685,-17.739,-17.940,
--18.274,-18.692,-19.128,-19.519,-19.821,-20.009,-20.074,-20.032,-19.920,-19.800,-19.732,-19.744,-19.817,-19.899,-19.936,-19.925,
--19.919,-20.001,-20.230,-20.599,-21.035,-21.449,-21.788,-22.063,-22.336,-22.659,-23.037,-23.421,-23.743,-23.968,-24.121,-24.272,
--24.491,-24.805,-25.193,-25.607,-26.010,-26.399,-26.799,-27.235,-27.704,-28.176,-28.604,-28.951,-29.208,-29.393,-29.533,-29.654,
--29.773,-29.901,-30.047,-30.224,-30.439,-30.690,-30.968,-31.260,-31.559,-31.867,-32.194,-32.546,-32.916,-33.288,-33.644,-33.972,
--34.271,-34.542,-34.779,-34.965,-35.083,-35.128,-35.131,-35.148,-35.246,-35.472,-35.833,-36.296,-36.805,-37.302,-37.748,-38.125,
--38.430,-38.668,-38.852,-38.996,-39.121,-39.242,-39.366,-39.493,-39.624,-39.764,-39.918,-40.086,-40.248,-40.371,-40.427,-40.411,
--40.351,-40.288,-40.244,-40.207,-40.139,-40.002,-39.793,-39.554,-39.346,-39.219,-39.187,-39.235,-39.342,-39.501,-39.715,-39.982,
--40.270,-40.526,-40.694,-40.749,-40.708,-40.613,-40.505,-40.397,-40.275,-40.107,-39.866,-39.536,-39.118,-38.624,-38.076,-37.506,
--36.951,-36.444,-35.998,-35.608,-35.258,-34.931,-34.624,-34.340,-34.076,-33.815,-33.524,-33.171,-32.738,-32.232,-31.674,-31.091,
--30.501,-29.907,-29.296,-28.649,-27.958,-27.238,-26.537,-25.921,-25.447,-25.123,-24.895,-24.667,-24.359,-23.961,-23.545,-23.224,
--23.071,-23.065,-23.091,-23.017,-22.778,-22.424,-22.087,-21.894,-21.879,-21.959,-21.991,-21.857,-21.532,-21.081,-20.609,-20.189,
--19.831,-19.498,-19.151,-18.782,-18.413,-18.070,-17.749,-17.414,-17.017,-16.527,-15.942,-15.288,-14.593,-13.873,-13.129,-12.363,
--11.589,-10.831,-10.105,-9.397,-8.655,-7.796,-6.750,-5.496,-4.083,-2.623,-1.244,-.039,.979,1.872,2.749,3.702,
-4.764,5.895,7.016,8.047,8.957,9.757,10.488,11.174,11.811,12.375,12.857,13.293,13.773,14.404,15.268,16.378,
-17.669,19.029,20.334,21.487,22.428,23.130,23.582,23.790,23.785,23.634,23.431,23.275,23.236,23.338,23.567,23.901,
-24.336,24.892,25.592,26.427,27.347,28.269,29.118,29.866,30.543,31.210,31.918,32.682,33.473,34.243,34.961,35.623,
-36.252,36.876,37.503,38.121,38.708,39.248,39.745,40.224,40.717,41.249,41.823,42.424,43.024,43.603,44.164,44.729,
-45.326,45.968,46.640,47.308,47.936,48.510,49.043,49.558,50.065,50.551,50.988,51.363,51.695,52.026,52.397,52.810,
-53.229,53.607,53.923,54.210,54.528,54.924,55.396,55.889,56.337,56.709,57.030,57.360,57.749,58.199,58.669,59.110,
-59.507,59.888,60.300,60.768,61.266,61.728,62.090,62.327,62.471,62.593,62.762,63.008,63.310,63.609,63.838,63.952,
-63.947,63.858,63.741,63.646,63.593,63.571,63.549,63.502,63.426,63.341,63.263,63.196,63.120,63.015,62.888,62.774,
-62.721,62.750,62.832,62.903,62.908,62.840,62.747,62.695,62.713,62.761,62.755,62.629,62.381,62.084,61.833,61.677,
-61.588,61.483,61.282,60.960,60.558,60.146,59.770,59.432,59.110,58.789,58.481,58.217,58.014,57.857,57.709,57.542,
-57.352,57.162,56.995,56.857,56.736,56.633,56.574,56.603,56.747,56.979,57.222,57.385,57.425,57.380,57.356,57.465,
-57.760,58.201,58.675,59.046,59.219,59.170,58.943,58.624,58.296,58.012,57.778,57.559,57.307,56.988,56.602,56.184,
-55.785,55.444,55.169,54.942,54.735,54.524,54.301,54.065,53.815,53.555,53.296,53.056,52.850,52.669,52.478,52.223,
-51.864,51.396,50.855,50.284,49.708,49.122,48.510,47.878,47.269,46.745,46.345,46.057,45.819,45.567,45.281,44.996,
-45.038,44.892,44.869,44.942,45.048,45.117,45.111,45.027,44.892,44.741,44.611,44.540,44.569,44.724,45.001,45.354,
-45.712,46.018,46.257,46.467,46.709,47.020,47.391,47.766,48.087,48.324,48.490,48.620,48.733,48.809,48.807,48.697,
-48.497,48.280,48.139,48.130,48.236,48.370,48.417,48.302,48.029,47.683,47.380,47.209,47.189,47.265,47.350,47.371,
-47.303,47.166,47.005,46.848,46.695,46.525,46.315,46.061,45.781,45.504,45.248,45.016,44.796,44.580,44.378,44.218,
-44.127,44.108,44.128,44.124,44.025,43.795,43.446,43.043,42.673,42.398,42.229,42.116,41.969,41.704,41.277,40.696,
-40.009,39.280,38.556,37.862,37.209,36.606,36.064,35.589,35.166,34.744,34.257,33.653,32.941,32.202,31.566,31.158,
-31.034,31.159,31.423,31.703,31.923,32.071,32.183,32.288,32.377,32.411,32.350,32.195,31.988,31.786,31.614,31.442,
-31.206,30.852,30.376,29.829,29.283,28.781,28.315,27.838,27.298,26.682,26.020,25.374,24.798,24.315,23.906,23.527,
-23.131,22.692,22.219,21.744,21.303,20.908,20.521,20.070,19.478,18.709,17.802,16.857,15.996,15.298,14.771,14.360,
-13.989,13.603,13.194,12.779,12.378,11.994,11.624,11.278,10.993,10.816,10.774,10.840,10.943,10.996,10.939,10.769,
-10.526,10.265,10.019,9.783,9.525,9.207,8.804,8.314,7.756,7.163,6.570,6.005,5.482,4.991,4.506,3.995,
-3.434,2.812,2.120,1.337,.420,-.668,-1.927,-3.286,-4.604,-5.720,-6.523,-7.000,-7.245,-7.404,-7.607,-7.915,
--8.315,-8.757,-9.196,-9.619,-10.037,-10.466,-10.907,-11.355,-11.801,-12.244,-12.689,-13.132,-13.562,-13.962,-14.320,-14.627,
--14.870,-15.036,-15.109,-15.101,-15.055,-15.038,-15.107,-15.277,-15.518,-15.788,-16.082,-16.442,-16.929,-17.566,-18.298,-19.015,
--19.619,-20.081,-20.440,-20.732,-20.910,-20.834,-20.352,-19.439,-18.282,-17.231,-16.632,-16.644,-17.158,-17.883,-18.533,-18.994,
--19.360,-19.821,-20.507,-21.386,-22.293,-23.053,-23.589,-23.958,-24.280,-24.654,-25.105,-25.600,-26.105,-26.617,-27.156,-27.720,
--28.266,-28.717,-29.015,-29.152,-29.175,-29.153,-29.145,-29.183,-29.287,-29.472,-29.745,-30.085,-30.437,-30.730,-30.922,-31.032,
--31.133,-31.309,-31.600,-31.981,-32.380,-32.730,-33.002,-33.207,-33.374,-33.521,-33.653,-33.768,-33.878,-34.004,-34.161,-34.342,
--34.528,-34.699,-34.859,-35.034,-35.251,-35.521,-35.829,-36.150,-36.471,-36.793,-37.131,-37.485,-37.843,-38.182,-38.492,-38.779,
--39.059,-39.348,-39.651,-39.967,-40.304,-40.675,-41.094,-41.556,-42.036,-42.500,-42.919,-43.287,-43.609,-43.889,-44.129,-44.330,
--44.506,-44.686,-44.893,-45.120,-45.320,-45.426,-45.395,-45.228,-44.968,-44.665,-44.338,-43.974,-43.563,-43.141,-42.795,-42.621,
--42.656,-42.824,-42.958,-42.879,-42.506,-41.907,-41.274,-40.824,-40.678,-40.801,-41.030,-41.169,-41.105,-40.864,-40.583,-40.411,
--40.418,-40.555,-40.706,-40.786,-40.808,-40.883,-41.124,-41.553,-42.053,-42.436,-42.567,-42.476,-42.360,-42.472,-42.963,-43.779,
--44.688,-45.407,-45.767,-45.788,-45.649,-45.558,-45.633,-45.850,-46.093,-46.242,-46.244,-46.126,-45.950,-45.750,-45.512,-45.192,
--44.768,-44.271,-43.784,-43.395,-43.147,-43.014,-42.923,-42.806,-42.644,-42.472,-42.348,-42.298,-42.289,-42.253,-42.130,-41.917,
--41.668,-41.455,-41.320,-41.247,-41.191,-41.114,-41.022,-40.944,-40.899,-40.865,-40.785,-40.620,-40.380,-40.138,-39.975,-39.932,
--39.978,-40.036,-40.034,-39.950,-39.806,-39.641,-39.471,-39.279,-39.034,-38.710,-38.297,-37.790,-37.186,-36.487,-35.723,-34.957,
--34.263,-33.683,-33.196,-32.726,-32.193,-31.562,-30.866,-30.173,-29.537,-28.961,-28.407,-27.841,-27.261,-26.706,-26.214,-25.786,
--25.376,-24.923,-24.388,-23.782,-23.151,-22.549,-22.001,-21.497,-21.006,-20.498,-19.959,-19.390,-18.803,-18.213,-17.627,-17.047,
--16.455,-15.825,-15.138,-14.395,-13.628,-12.887,-12.205,-11.576,-10.953,-10.279,-9.522,-8.693,-7.840,-7.001,-6.186,-5.367,
--4.504,-3.575,-2.595,-1.600,-.629,.293,1.159,1.959,2.681,3.304,3.821,4.248,4.627,5.013,5.455,5.973,
-6.554,7.157,7.734,8.252,8.714,9.154,9.620,10.133,10.669,11.161,11.532,11.741,11.805,11.791,11.782,11.833,
-11.962,12.161,12.417,12.730,13.106,13.541,14.012,14.492,14.964,15.428,15.892,16.359,16.818,17.258,17.683,18.111,
-18.555,19.004,19.415,19.746,19.985,20.170,20.357,20.575,20.791,20.928,20.919,20.769,20.553,20.378,20.309,20.336,
-20.394,20.426,20.432,20.464,20.588,20.825,21.145,21.487,21.807,22.090,22.341,22.557,22.715,22.789,22.769,22.666,
-22.490,22.231,21.861,21.385,20.872,20.455,20.273,20.388,20.734,21.154,21.483,21.639,21.642,21.564,21.450,21.280,
-20.994,20.566,20.050,19.564,19.219,19.045,18.979,18.921,18.812,18.674,18.588,18.623,18.778,18.983,19.154,19.252,
-19.313,19.404,19.572,19.797,20.009,20.143,20.189,20.206,20.277,20.452,20.707,20.961,21.130,21.183,21.162,21.146,
-21.200,21.326,21.474,21.581,21.627,21.649,21.723,21.908,22.214,22.598,23.007,23.409,23.801,24.164,24.412,24.377,
-23.850,22.669,20.802,18.371,15.605,12.752,10.008,7.506,5.351,3.656,2.544,2.101,2.317,3.059,4.111,5.240,
-6.275,7.124,7.760,8.186,8.420,8.500,8.491,8.472,8.490,8.534,8.532,8.404,8.125,7.747,7.369,7.062,
-6.824,6.590,6.286,5.896,5.469,5.066,4.702,4.332,3.900,3.429,3.048,2.933,3.185,3.716,4.255,4.473,
-4.164,3.375,2.391,1.583,1.223,1.355,1.806,2.300,2.614,2.670,2.535,2.347,2.218,2.177,2.170,2.109,
-1.926,1.617,1.242,.893,.657,.572,.621,.744,.869,.944,.955,.917,.863,.812,.761,.682,
-.536,.292,-.056,-.487,-.964,-1.456,-1.950,-2.456,-2.989,-3.547,-4.099,-4.592,-4.982,-5.255,-5.437,-5.575,
--5.705,-5.826,-5.905,-5.903,-5.800,-5.614,-5.381,-5.139,-4.903,-4.667,-4.412,-4.128,-3.818,-3.490,-3.150,-2.796,
--2.420,-2.010,-1.560,-1.068,-.537,.020,.572,1.078,1.488,1.768,1.918,1.983,2.041,2.174,2.440,2.842,
-3.335,3.839,4.280,4.613,4.840,4.997,5.134,5.293,5.494,5.735,6.003,6.281,6.550,6.797,7.014,7.204,
-7.376,7.542,7.711,7.880,8.040,8.182,8.302,8.405,8.493,8.561,8.601,8.613,8.610,8.614,8.643,8.690,
-8.728,8.720,8.654,8.545,8.430,8.339,8.272,8.202,8.099,7.962,7.818,7.706,7.644,7.615,7.574,7.491,
-7.369,7.244,7.159,7.127,7.123,7.102,7.029,6.904,6.753,6.601,6.452,6.286,6.079,5.830,5.567,5.330,
-5.144,5.004,4.878,4.730,4.543,4.319,4.074,3.821,3.566,3.309,3.058,2.824,2.613,2.414,2.202,1.955,
-1.671,1.376,1.109,.895,.727,.574,.400,.192,-.035,-.256,-.462,-.670,-.905,-1.182,-1.484,-1.773,
--2.018,-2.220,-2.410,-2.629,-2.900,-3.216,-3.550,-3.874,-4.178,-4.465,-4.740,-5.005,-5.263,-5.527,-5.818,-6.149,
--6.512,-6.871,-7.187,-7.446,-7.674,-7.918,-8.219,-8.572,-8.939,-9.275,-9.565,-9.838,-10.138,-10.489,-10.871,-11.234,
--11.536,-11.776,-11.993,-12.240,-12.546,-12.899,-13.259,-13.587,-13.872,-14.130,-14.385,-14.654,-14.935,-15.214,-15.475,-15.709,
--15.914,-16.094,-16.255,-16.412,-16.576,-16.753,-16.937,-17.109,-17.248,-17.342,-17.398,-17.435,-17.475,-17.534,-17.619,-17.732,
--17.865,-18.008,-18.133,-18.207,-18.203,-18.122,-18.009,-17.949,-18.042,-18.358,-18.901,-19.581,-20.232,-20.660,-20.708,-20.325,
--19.588,-18.667,-17.755,-16.976,-16.358,-15.851,-15.410,-15.058,-14.891,-15.017,-15.464,-16.134,-16.830,-17.353,-17.604,-17.609,
--17.479,-17.318,-17.169,-17.015,-16.838,-16.662,-16.550,-16.545,-16.618,-16.666,-16.580,-16.327,-15.990,-15.723,-15.653,-15.795,
--16.043,-16.236,-16.263,-16.126,-15.932,-15.814,-15.845,-16.001,-16.183,-16.280,-16.238,-16.081,-15.886,-15.729,-15.636,-15.565,
--15.436,-15.183,-14.813,-14.418,-14.147,-14.132,-14.419,-14.943,-15.554,-16.097,-16.484,-16.719,-16.874,-17.027,-17.209,-17.396,
--17.534,-17.584,-17.544,-17.450,-17.352,-17.287,-17.273,-17.308,-17.374,-17.437,-17.462,-17.422,-17.322,-17.205,-17.144,-17.204,
--17.412,-17.743,-18.134,-18.518,-18.851,-19.113,-19.299,-19.404,-19.427,-19.385,-19.322,-19.293,-19.333,-19.435,-19.545,-19.606,
--19.600,-19.567,-19.591,-19.739,-20.026,-20.399,-20.783,-21.130,-21.447,-21.778,-22.160,-22.583,-22.991,-23.317,-23.532,-23.665,
--23.789,-23.972,-24.243,-24.583,-24.956,-25.339,-25.739,-26.181,-26.678,-27.206,-27.712,-28.138,-28.456,-28.678,-28.848,-29.012,
--29.196,-29.397,-29.600,-29.796,-29.994,-30.220,-30.494,-30.820,-31.177,-31.535,-31.874,-32.194,-32.515,-32.856,-33.224,-33.603,
--33.968,-34.291,-34.555,-34.755,-34.886,-34.952,-34.966,-34.966,-35.009,-35.157,-35.442,-35.850,-36.326,-36.798,-37.218,-37.576,
--37.890,-38.187,-38.470,-38.724,-38.928,-39.074,-39.178,-39.266,-39.358,-39.465,-39.584,-39.710,-39.832,-39.937,-40.002,-40.004,
--39.938,-39.822,-39.690,-39.574,-39.474,-39.368,-39.228,-39.054,-38.876,-38.744,-38.691,-38.718,-38.800,-38.916,-39.063,-39.257,
--39.502,-39.770,-40.003,-40.148,-40.189,-40.160,-40.115,-40.092,-40.086,-40.056,-39.955,-39.761,-39.478,-39.125,-38.714,-38.247,
--37.730,-37.183,-36.645,-36.155,-35.735,-35.381,-35.077,-34.802,-34.540,-34.279,-34.005,-33.697,-33.335,-32.915,-32.442,-31.930,
--31.388,-30.813,-30.199,-29.541,-28.849,-28.144,-27.458,-26.829,-26.294,-25.873,-25.553,-25.286,-25.004,-24.656,-24.249,-23.854,
--23.567,-23.450,-23.476,-23.536,-23.501,-23.305,-22.989,-22.683,-22.518,-22.541,-22.677,-22.773,-22.686,-22.351,-21.814,-21.186,
--20.580,-20.065,-19.653,-19.322,-19.043,-18.791,-18.540,-18.256,-17.905,-17.462,-16.925,-16.316,-15.661,-14.975,-14.262,-13.519,
--12.755,-11.993,-11.256,-10.540,-9.796,-8.939,-7.883,-6.586,-5.082,-3.478,-1.917,-.523,.644,1.608,2.452,3.277,
-4.160,5.122,6.135,7.142,8.089,8.942,9.694,10.356,10.944,11.471,11.953,12.415,12.907,13.496,14.255,15.240,
-16.458,17.862,19.354,20.803,22.083,23.092,23.774,24.119,24.159,23.963,23.627,23.261,22.967,22.823,22.866,23.092,
-23.476,23.988,24.606,25.315,26.092,26.903,27.711,28.490,29.242,29.989,30.759,31.561,32.376,33.169,33.915,34.609,
-35.272,35.929,36.593,37.253,37.886,38.476,39.018,39.529,40.031,40.544,41.079,41.636,42.206,42.780,43.352,43.923,
-44.505,45.111,45.748,46.404,47.054,47.671,48.239,48.768,49.277,49.777,50.264,50.721,51.136,51.523,51.912,52.331,
-52.775,53.204,53.571,53.858,54.096,54.350,54.678,55.092,55.553,56.009,56.429,56.830,57.255,57.731,58.240,58.727,
-59.141,59.477,59.783,60.132,60.574,61.097,61.633,62.096,62.429,62.633,62.758,62.878,63.052,63.302,63.603,63.900,
-64.125,64.229,64.202,64.080,63.924,63.792,63.714,63.680,63.659,63.625,63.571,63.508,63.445,63.372,63.269,63.127,
-62.968,62.842,62.792,62.820,62.881,62.907,62.862,62.766,62.686,62.678,62.741,62.803,62.770,62.586,62.277,61.934,
-61.655,61.483,61.386,61.285,61.107,60.828,60.467,60.065,59.654,59.250,58.864,58.512,58.217,57.990,57.819,57.671,
-57.512,57.323,57.103,56.861,56.608,56.359,56.150,56.035,56.070,56.271,56.588,56.918,57.154,57.251,57.258,57.293,
-57.471,57.834,58.317,58.783,59.089,59.156,58.999,58.707,58.389,58.124,57.928,57.762,57.563,57.284,56.917,56.500,
-56.090,55.731,55.433,55.174,54.917,54.643,54.355,54.075,53.820,53.589,53.371,53.154,52.943,52.743,52.550,52.334,
-52.053,51.677,51.214,50.702,50.182,49.674,49.162,48.622,48.049,47.475,46.953,46.520,46.171,45.867,45.572,45.282,
-45.038,45.242,45.122,45.103,45.148,45.206,45.233,45.211,45.139,45.028,44.895,44.771,44.701,44.731,44.883,45.137,
-45.439,45.729,45.978,46.205,46.456,46.764,47.121,47.476,47.772,47.989,48.155,48.324,48.530,48.750,48.911,48.932,
-48.782,48.511,48.232,48.067,48.078,48.237,48.438,48.553,48.493,48.252,47.899,47.538,47.257,47.090,47.021,47.005,
-47.008,47.017,47.036,47.067,47.093,47.080,46.987,46.797,46.523,46.205,45.897,45.642,45.457,45.336,45.250,45.165,
-45.059,44.924,44.772,44.617,44.463,44.298,44.096,43.835,43.521,43.187,42.879,42.630,42.438,42.256,42.017,41.664,
-41.176,40.571,39.891,39.187,38.496,37.840,37.234,36.683,36.181,35.699,35.187,34.589,33.876,33.076,32.280,31.617,
-31.206,31.098,31.256,31.576,31.935,32.243,32.471,32.639,32.776,32.889,32.958,32.955,32.872,32.729,32.559,32.378,
-32.169,31.895,31.523,31.051,30.509,29.940,29.375,28.815,28.241,27.632,26.986,26.322,25.672,25.074,24.551,24.109,
-23.731,23.377,23.004,22.579,22.101,21.600,21.116,20.660,20.200,19.666,19.000,18.197,17.327,16.499,15.808,15.282,
-14.875,14.503,14.094,13.628,13.128,12.636,12.179,11.761,11.386,11.070,10.850,10.753,10.777,10.871,10.953,10.950,
-10.828,10.602,10.319,10.028,9.749,9.469,9.154,8.764,8.282,7.711,7.084,6.441,5.819,5.236,4.684,4.133,
-3.542,2.883,2.140,1.306,.370,-.682,-1.858,-3.129,-4.414,-5.585,-6.514,-7.127,-7.444,-7.567,-7.639,-7.772,
--8.018,-8.367,-8.781,-9.230,-9.706,-10.212,-10.742,-11.280,-11.804,-12.304,-12.778,-13.225,-13.629,-13.964,-14.212,-14.381,
--14.505,-14.620,-14.736,-14.830,-14.872,-14.853,-14.805,-14.785,-14.838,-14.982,-15.214,-15.548,-16.021,-16.676,-17.506,-18.421,
--19.279,-19.955,-20.416,-20.722,-20.949,-21.094,-21.037,-20.618,-19.779,-18.668,-17.613,-16.969,-16.922,-17.391,-18.102,-18.772,
--19.282,-19.716,-20.259,-21.027,-21.970,-22.905,-23.646,-24.129,-24.440,-24.737,-25.144,-25.679,-26.281,-26.874,-27.425,-27.942,
--28.437,-28.893,-29.264,-29.512,-29.638,-29.684,-29.701,-29.728,-29.781,-29.876,-30.039,-30.290,-30.618,-30.969,-31.260,-31.437,
--31.514,-31.568,-31.696,-31.949,-32.308,-32.706,-33.073,-33.380,-33.635,-33.855,-34.046,-34.197,-34.308,-34.404,-34.528,-34.706,
--34.929,-35.151,-35.331,-35.459,-35.573,-35.726,-35.955,-36.258,-36.603,-36.957,-37.299,-37.621,-37.914,-38.165,-38.362,-38.520,
--38.674,-38.866,-39.116,-39.412,-39.728,-40.045,-40.379,-40.763,-41.221,-41.744,-42.284,-42.781,-43.197,-43.522,-43.774,-43.982,
--44.175,-44.379,-44.617,-44.895,-45.188,-45.435,-45.563,-45.526,-45.331,-45.038,-44.723,-44.442,-44.216,-44.045,-43.944,-43.948,
--44.087,-44.331,-44.570,-44.637,-44.391,-43.798,-42.976,-42.144,-41.521,-41.210,-41.159,-41.197,-41.148,-40.937,-40.628,-40.376,
--40.311,-40.447,-40.676,-40.847,-40.889,-40.880,-40.999,-41.404,-42.088,-42.850,-43.393,-43.502,-43.190,-42.708,-42.402,-42.523,
--43.089,-43.898,-44.659,-45.159,-45.355,-45.356,-45.319,-45.356,-45.477,-45.625,-45.731,-45.760,-45.729,-45.680,-45.650,-45.639,
--45.612,-45.511,-45.284,-44.916,-44.444,-43.947,-43.513,-43.199,-43.011,-42.915,-42.865,-42.831,-42.807,-42.797,-42.792,-42.766,
--42.693,-42.561,-42.380,-42.178,-41.980,-41.800,-41.649,-41.537,-41.467,-41.428,-41.384,-41.289,-41.114,-40.871,-40.611,-40.394,
--40.253,-40.180,-40.136,-40.083,-40.004,-39.901,-39.773,-39.608,-39.386,-39.096,-38.742,-38.332,-37.858,-37.295,-36.625,-35.870,
--35.100,-34.404,-33.834,-33.368,-32.919,-32.387,-31.729,-30.975,-30.204,-29.484,-28.838,-28.246,-27.679,-27.131,-26.618,-26.154,
--25.719,-25.268,-24.756,-24.172,-23.545,-22.925,-22.350,-21.827,-21.335,-20.849,-20.352,-19.839,-19.309,-18.761,-18.196,-17.621,
--17.045,-16.468,-15.876,-15.251,-14.583,-13.883,-13.173,-12.469,-11.760,-11.019,-10.219,-9.365,-8.491,-7.639,-6.823,-6.018,
--5.181,-4.279,-3.320,-2.344,-1.394,-.489,.377,1.220,2.033,2.783,3.428,3.950,4.371,4.748,5.146,5.611,
-6.150,6.737,7.325,7.870,8.350,8.780,9.205,9.679,10.229,10.826,11.390,11.827,12.081,12.168,12.163,12.164,
-12.239,12.403,12.638,12.919,13.243,13.615,14.037,14.486,14.931,15.348,15.742,16.138,16.561,17.020,17.504,17.993,
-18.472,18.923,19.323,19.642,19.868,20.020,20.148,20.298,20.479,20.637,20.697,20.615,20.424,20.220,20.105,20.119,
-20.229,20.361,20.471,20.577,20.740,21.008,21.371,21.766,22.121,22.403,22.622,22.803,22.955,23.058,23.091,23.050,
-22.946,22.777,22.506,22.089,21.534,20.947,20.509,20.389,20.633,21.118,21.614,21.916,21.953,21.806,21.624,21.509,
-21.446,21.338,21.097,20.717,20.282,19.902,19.632,19.451,19.296,19.124,18.952,18.838,18.833,18.935,19.096,19.262,
-19.408,19.553,19.726,19.935,20.143,20.299,20.376,20.400,20.436,20.551,20.763,21.030,21.273,21.430,21.491,21.497,
-21.505,21.537,21.568,21.545,21.444,21.316,21.277,21.454,21.907,22.588,23.360,24.061,24.579,24.869,24.909,24.637,
-23.920,22.594,20.563,17.889,14.804,11.642,8.723,6.262,4.353,3.022,2.283,2.150,2.597,3.510,4.679,5.858,
-6.857,7.600,8.120,8.485,8.740,8.879,8.886,8.780,8.631,8.512,8.443,8.372,8.214,7.926,7.549,7.182,
-6.902,6.703,6.493,6.173,5.715,5.190,4.703,4.302,3.936,3.501,2.952,2.383,1.999,1.982,2.347,2.878,
-3.229,3.105,2.445,1.461,.533,.007,.028,.492,1.126,1.645,1.882,1.839,1.642,1.446,1.348,1.350,
-1.387,1.376,1.272,1.088,.880,.708,.610,.587,.620,.682,.755,.826,.881,.908,.901,.868,
-.826,.787,.747,.681,.564,.385,.158,-.090,-.336,-.573,-.807,-1.041,-1.267,-1.474,-1.659,-1.835,
--2.014,-2.189,-2.321,-2.356,-2.256,-2.037,-1.758,-1.495,-1.296,-1.158,-1.038,-.894,-.708,-.499,-.298,-.121,
-.045,.230,.467,.766,1.117,1.497,1.878,2.236,2.543,2.777,2.921,2.982,2.996,3.026,3.135,3.368,
-3.723,4.157,4.599,4.980,5.261,5.439,5.546,5.625,5.709,5.818,5.956,6.121,6.307,6.509,6.712,6.902,
-7.067,7.208,7.337,7.468,7.605,7.741,7.861,7.958,8.033,8.096,8.150,8.191,8.213,8.215,8.208,8.207,
-8.218,8.228,8.214,8.155,8.054,7.932,7.811,7.700,7.592,7.469,7.333,7.199,7.095,7.029,6.989,6.942,
-6.861,6.748,6.628,6.536,6.487,6.469,6.447,6.389,6.282,6.138,5.974,5.802,5.622,5.427,5.217,5.001,
-4.798,4.618,4.459,4.309,4.150,3.969,3.766,3.545,3.312,3.067,2.812,2.551,2.293,2.048,1.816,1.588,
-1.352,1.102,.848,.604,.384,.181,-.024,-.251,-.507,-.777,-1.038,-1.277,-1.501,-1.728,-1.973,-2.235,
--2.496,-2.738,-2.961,-3.186,-3.433,-3.715,-4.021,-4.330,-4.623,-4.898,-5.158,-5.407,-5.648,-5.883,-6.131,-6.418,
--6.761,-7.149,-7.543,-7.896,-8.193,-8.455,-8.736,-9.074,-9.463,-9.856,-10.198,-10.469,-10.698,-10.941,-11.238,-11.584,
--11.938,-12.252,-12.513,-12.745,-12.989,-13.270,-13.585,-13.907,-14.215,-14.502,-14.778,-15.053,-15.327,-15.587,-15.823,-16.036,
--16.236,-16.432,-16.626,-16.812,-16.985,-17.150,-17.310,-17.469,-17.621,-17.754,-17.859,-17.938,-18.005,-18.073,-18.151,-18.239,
--18.330,-18.423,-18.515,-18.603,-18.673,-18.704,-18.676,-18.587,-18.466,-18.381,-18.422,-18.667,-19.138,-19.767,-20.403,-20.860,
--20.992,-20.757,-20.230,-19.552,-18.842,-18.150,-17.455,-16.732,-16.025,-15.461,-15.197,-15.321,-15.789,-16.439,-17.077,-17.566,
--17.876,-18.045,-18.116,-18.094,-17.965,-17.742,-17.497,-17.327,-17.287,-17.327,-17.318,-17.134,-16.748,-16.270,-15.882,-15.729,
--15.827,-16.057,-16.247,-16.278,-16.144,-15.940,-15.786,-15.756,-15.842,-15.979,-16.090,-16.125,-16.079,-15.974,-15.847,-15.722,
--15.602,-15.470,-15.301,-15.083,-14.844,-14.652,-14.593,-14.730,-15.059,-15.506,-15.952,-16.295,-16.490,-16.565,-16.595,-16.652,
--16.770,-16.932,-17.085,-17.168,-17.143,-17.010,-16.815,-16.630,-16.520,-16.519,-16.605,-16.716,-16.787,-16.790,-16.760,-16.769,
--16.882,-17.117,-17.431,-17.752,-18.022,-18.226,-18.384,-18.522,-18.641,-18.727,-18.766,-18.777,-18.801,-18.879,-19.014,-19.164,
--19.274,-19.316,-19.315,-19.339,-19.452,-19.674,-19.975,-20.302,-20.621,-20.939,-21.290,-21.690,-22.114,-22.500,-22.789,-22.965,
--23.069,-23.179,-23.360,-23.635,-23.983,-24.366,-24.765,-25.188,-25.655,-26.171,-26.706,-27.206,-27.617,-27.919,-28.136,-28.320,
--28.523,-28.771,-29.055,-29.349,-29.631,-29.904,-30.188,-30.509,-30.868,-31.244,-31.599,-31.908,-32.176,-32.437,-32.733,-33.083,
--33.470,-33.849,-34.174,-34.421,-34.595,-34.718,-34.808,-34.882,-34.959,-35.072,-35.259,-35.548,-35.927,-36.346,-36.741,-37.075,
--37.355,-37.619,-37.903,-38.205,-38.485,-38.699,-38.827,-38.891,-38.938,-39.004,-39.095,-39.194,-39.284,-39.358,-39.421,-39.470,
--39.488,-39.448,-39.338,-39.174,-38.988,-38.813,-38.661,-38.532,-38.425,-38.356,-38.350,-38.416,-38.539,-38.686,-38.831,-38.975,
--39.141,-39.339,-39.548,-39.718,-39.806,-39.805,-39.761,-39.731,-39.744,-39.779,-39.777,-39.688,-39.502,-39.245,-38.948,-38.620,
--38.239,-37.787,-37.273,-36.745,-36.264,-35.868,-35.557,-35.299,-35.056,-34.805,-34.540,-34.262,-33.965,-33.639,-33.273,-32.864,
--32.404,-31.886,-31.298,-30.639,-29.925,-29.197,-28.497,-27.859,-27.292,-26.788,-26.332,-25.910,-25.509,-25.118,-24.737,-24.386,
--24.114,-23.974,-23.986,-24.102,-24.210,-24.182,-23.946,-23.539,-23.089,-22.751,-22.616,-22.660,-22.758,-22.758,-22.552,-22.126,
--21.546,-20.917,-20.329,-19.834,-19.441,-19.129,-18.864,-18.603,-18.307,-17.949,-17.518,-17.026,-16.488,-15.910,-15.283,-14.590,
--13.829,-13.027,-12.232,-11.477,-10.748,-9.970,-9.031,-7.837,-6.366,-4.691,-2.961,-1.340,.060,1.209,2.159,3.002,
-3.823,4.669,5.544,6.423,7.275,8.073,8.799,9.443,10.008,10.512,10.988,11.481,12.033,12.677,13.438,14.336,
-15.394,16.630,18.031,19.538,21.038,22.383,23.431,24.093,24.350,24.261,23.934,23.493,23.059,22.724,22.554,22.583,
-22.815,23.230,23.792,24.454,25.172,25.908,26.636,27.352,28.067,28.805,29.587,30.415,31.263,32.092,32.868,33.581,
-34.253,34.918,35.596,36.287,36.967,37.610,38.206,38.763,39.301,39.833,40.364,40.894,41.422,41.958,42.511,43.084,
-43.672,44.269,44.871,45.478,46.089,46.695,47.281,47.835,48.357,48.860,49.359,49.855,50.338,50.799,51.240,51.676,
-52.123,52.575,53.004,53.371,53.662,53.901,54.141,54.436,54.803,55.222,55.658,56.090,56.530,57.002,57.516,58.046,
-58.537,58.948,59.279,59.577,59.916,60.346,60.870,61.443,61.994,62.461,62.813,63.054,63.218,63.355,63.518,63.733,
-63.994,64.250,64.429,64.473,64.375,64.186,63.990,63.858,63.808,63.810,63.812,63.782,63.723,63.662,63.613,63.561,
-63.476,63.344,63.189,63.065,63.010,63.020,63.042,63.018,62.929,62.817,62.752,62.774,62.850,62.891,62.805,62.563,
-62.220,61.881,61.634,61.495,61.405,61.277,61.043,60.693,60.264,59.811,59.380,58.997,58.671,58.402,58.178,57.979,
-57.778,57.559,57.321,57.076,56.836,56.602,56.374,56.168,56.029,56.016,56.167,56.462,56.819,57.136,57.348,57.472,
-57.596,57.819,58.181,58.629,59.031,59.252,59.222,58.970,58.599,58.233,57.951,57.758,57.597,57.394,57.100,56.723,
-56.309,55.916,55.574,55.276,54.986,54.678,54.352,54.041,53.781,53.587,53.442,53.309,53.160,52.989,52.802,52.598,
-52.355,52.039,51.631,51.147,50.635,50.143,49.694,49.273,48.844,48.386,47.902,47.419,46.962,46.540,46.147,45.783,
-45.471,45.242,45.770,45.575,45.438,45.327,45.221,45.120,45.031,44.956,44.887,44.817,44.758,44.743,44.805,44.950,
-45.150,45.358,45.551,45.749,46.002,46.345,46.756,47.158,47.461,47.626,47.692,47.762,47.928,48.213,48.545,48.800,
-48.871,48.734,48.464,48.191,48.040,48.071,48.253,48.487,48.652,48.658,48.476,48.143,47.734,47.331,46.998,46.767,
-46.644,46.623,46.692,46.833,47.013,47.180,47.276,47.250,47.080,46.782,46.412,46.055,45.792,45.681,45.723,45.860,
-45.989,46.000,45.825,45.469,45.006,44.541,44.155,43.873,43.661,43.462,43.237,42.984,42.734,42.517,42.339,42.169,
-41.958,41.660,41.252,40.738,40.144,39.508,38.875,38.282,37.746,37.257,36.769,36.216,35.538,34.715,33.787,32.858,
-32.060,31.516,31.291,31.371,31.673,32.080,32.484,32.818,33.063,33.232,33.344,33.410,33.427,33.389,33.291,33.137,
-32.928,32.657,32.317,31.904,31.422,30.886,30.312,29.712,29.094,28.466,27.836,27.210,26.586,25.961,25.339,24.745,
-24.218,23.792,23.466,23.194,22.902,22.527,22.050,21.507,20.948,20.402,19.850,19.246,18.558,17.810,17.074,16.434,
-15.937,15.558,15.225,14.858,14.415,13.903,13.360,12.823,12.308,11.822,11.378,11.010,10.758,10.646,10.652,10.714,
-10.747,10.685,10.508,10.240,9.931,9.623,9.325,9.015,8.652,8.199,7.645,7.010,6.330,5.648,4.987,4.349,
-3.708,3.029,2.278,1.433,.488,-.553,-1.678,-2.860,-4.049,-5.168,-6.125,-6.841,-7.288,-7.503,-7.580,-7.630,
--7.741,-7.957,-8.282,-8.705,-9.215,-9.804,-10.452,-11.123,-11.771,-12.365,-12.903,-13.398,-13.856,-14.255,-14.550,-14.714,
--14.765,-14.766,-14.789,-14.865,-14.963,-15.020,-14.994,-14.900,-14.809,-14.800,-14.922,-15.189,-15.602,-16.180,-16.945,-17.878,
--18.881,-19.798,-20.485,-20.896,-21.098,-21.206,-21.265,-21.192,-20.829,-20.081,-19.044,-18.011,-17.337,-17.240,-17.688,-18.434,
--19.187,-19.796,-20.309,-20.885,-21.641,-22.541,-23.424,-24.120,-24.579,-24.898,-25.243,-25.736,-26.382,-27.089,-27.749,-28.305,
--28.763,-29.158,-29.505,-29.793,-30.003,-30.138,-30.223,-30.288,-30.349,-30.412,-30.488,-30.610,-30.812,-31.092,-31.399,-31.652,
--31.795,-31.838,-31.864,-31.970,-32.211,-32.570,-32.980,-33.376,-33.732,-34.054,-34.349,-34.603,-34.791,-34.908,-34.991,-35.104,
--35.290,-35.541,-35.798,-35.999,-36.130,-36.235,-36.388,-36.639,-36.987,-37.382,-37.767,-38.101,-38.369,-38.568,-38.695,-38.759,
--38.788,-38.834,-38.945,-39.135,-39.373,-39.609,-39.816,-40.021,-40.288,-40.676,-41.193,-41.784,-42.363,-42.859,-43.244,-43.534,
--43.766,-43.976,-44.194,-44.441,-44.720,-45.012,-45.265,-45.412,-45.404,-45.243,-44.988,-44.728,-44.543,-44.475,-44.529,-44.687,
--44.925,-45.206,-45.460,-45.590,-45.494,-45.123,-44.517,-43.809,-43.166,-42.704,-42.424,-42.217,-41.929,-41.468,-40.870,-40.295,
--39.946,-39.939,-40.231,-40.637,-40.947,-41.064,-41.077,-41.206,-41.646,-42.415,-43.311,-44.008,-44.250,-44.006,-43.493,-43.050,
--42.951,-43.274,-43.896,-44.593,-45.172,-45.538,-45.698,-45.706,-45.617,-45.471,-45.304,-45.150,-45.036,-44.977,-44.980,-45.051,
--45.194,-45.395,-45.596,-45.696,-45.594,-45.254,-44.741,-44.200,-43.776,-43.538,-43.445,-43.395,-43.298,-43.141,-42.980,-42.887,
--42.891,-42.958,-43.018,-43.012,-42.921,-42.769,-42.590,-42.411,-42.239,-42.072,-41.908,-41.744,-41.578,-41.408,-41.231,-41.048,
--40.859,-40.667,-40.478,-40.304,-40.163,-40.064,-39.994,-39.913,-39.769,-39.524,-39.182,-38.772,-38.325,-37.838,-37.279,-36.618,
--35.876,-35.125,-34.458,-33.923,-33.481,-33.032,-32.470,-31.759,-30.946,-30.128,-29.384,-28.741,-28.173,-27.643,-27.135,-26.650,
--26.189,-25.733,-25.244,-24.696,-24.096,-23.480,-22.886,-22.334,-21.814,-21.304,-20.792,-20.277,-19.765,-19.254,-18.730,-18.182,
--17.613,-17.035,-16.458,-15.879,-15.279,-14.643,-13.967,-13.256,-12.515,-11.735,-10.906,-10.034,-9.148,-8.289,-7.480,-6.700,
--5.895,-5.014,-4.051,-3.049,-2.073,-1.160,-.302,.537,1.377,2.196,2.934,3.541,4.012,4.401,4.789,5.236,
-5.757,6.325,6.894,7.429,7.917,8.367,8.804,9.264,9.783,10.370,10.994,11.581,12.045,12.333,12.460,12.503,
-12.558,12.693,12.919,13.208,13.523,13.849,14.191,14.551,14.913,15.259,15.580,15.900,16.264,16.705,17.226,17.793,
-18.354,18.863,19.288,19.610,19.820,19.931,19.982,20.028,20.114,20.242,20.364,20.418,20.374,20.268,20.180,20.180,
-20.279,20.429,20.573,20.700,20.854,21.101,21.463,21.897,22.316,22.654,22.900,23.089,23.253,23.388,23.461,23.447,
-23.355,23.213,23.018,22.721,22.260,21.644,21.003,20.561,20.510,20.882,21.505,22.083,22.363,22.274,21.942,21.587,
-21.378,21.337,21.361,21.312,21.119,20.801,20.440,20.109,19.837,19.611,19.415,19.249,19.131,19.081,19.108,19.205,
-19.362,19.565,19.795,20.021,20.211,20.342,20.420,20.478,20.560,20.694,20.876,21.072,21.240,21.355,21.420,21.466,
-21.522,21.593,21.645,21.625,21.496,21.284,21.100,21.107,21.448,22.165,23.154,24.196,25.043,25.508,25.504,25.012,
-24.014,22.450,20.254,17.432,14.149,10.733,7.581,5.030,3.256,2.260,1.941,2.179,2.873,3.919,5.164,6.399,
-7.419,8.108,8.488,8.684,8.831,8.984,9.102,9.105,8.958,8.712,8.461,8.271,8.121,7.934,7.646,7.271,
-6.896,6.605,6.407,6.219,5.929,5.489,4.951,4.426,3.982,3.584,3.119,2.503,1.779,1.133,.787,.853,
-1.238,1.673,1.856,1.617,1.004,.257,-.330,-.548,-.363,.096,.621,1.025,1.216,1.208,1.085,.939,
-.826,.751,.691,.625,.554,.494,.458,.443,.436,.430,.442,.496,.598,.717,.797,.795,
-.715,.616,.571,.615,.725,.831,.872,.830,.738,.642,.569,.510,.433,.319,.168,.000,
--.164,-.305,-.399,-.417,-.329,-.132,.138,.413,.632,.776,.876,.985,1.135,1.311,1.464,1.548,
-1.563,1.551,1.578,1.689,1.888,2.148,2.428,2.698,2.944,3.156,3.324,3.435,3.492,3.521,3.568,3.687,
-3.912,4.241,4.630,5.017,5.339,5.563,5.695,5.766,5.818,5.882,5.968,6.072,6.187,6.309,6.436,6.564,
-6.684,6.790,6.885,6.982,7.094,7.224,7.359,7.475,7.561,7.620,7.669,7.723,7.781,7.825,7.837,7.814,
-7.770,7.724,7.684,7.643,7.584,7.494,7.377,7.247,7.119,6.997,6.880,6.762,6.649,6.547,6.463,6.392,
-6.321,6.239,6.143,6.043,5.953,5.881,5.825,5.771,5.702,5.604,5.469,5.302,5.115,4.919,4.727,4.543,
-4.368,4.199,4.032,3.865,3.695,3.519,3.332,3.133,2.924,2.712,2.499,2.283,2.057,1.816,1.563,1.307,
-1.060,.826,.599,.369,.128,-.125,-.386,-.651,-.920,-1.197,-1.479,-1.760,-2.033,-2.291,-2.538,-2.777,
--3.014,-3.249,-3.482,-3.718,-3.966,-4.234,-4.520,-4.811,-5.091,-5.354,-5.603,-5.846,-6.088,-6.329,-6.571,-6.826,
--7.112,-7.445,-7.817,-8.195,-8.546,-8.856,-9.146,-9.457,-9.819,-10.223,-10.623,-10.972,-11.252,-11.487,-11.725,-12.002,
--12.317,-12.641,-12.948,-13.230,-13.505,-13.792,-14.093,-14.394,-14.677,-14.940,-15.199,-15.473,-15.761,-16.042,-16.287,-16.486,
--16.653,-16.818,-17.004,-17.212,-17.422,-17.610,-17.766,-17.897,-18.017,-18.133,-18.245,-18.350,-18.447,-18.545,-18.649,-18.758,
--18.859,-18.937,-18.985,-19.009,-19.029,-19.066,-19.125,-19.191,-19.231,-19.216,-19.145,-19.069,-19.078,-19.259,-19.646,-20.185,
--20.738,-21.148,-21.304,-21.188,-20.855,-20.381,-19.801,-19.108,-18.294,-17.408,-16.581,-15.975,-15.710,-15.800,-16.157,-16.657,
--17.206,-17.760,-18.294,-18.755,-19.053,-19.109,-18.926,-18.605,-18.297,-18.103,-18.002,-17.867,-17.568,-17.074,-16.495,-16.021,
--15.803,-15.857,-16.066,-16.258,-16.312,-16.214,-16.045,-15.904,-15.853,-15.891,-15.973,-16.049,-16.080,-16.051,-15.959,-15.817,
--15.652,-15.499,-15.384,-15.305,-15.238,-15.154,-15.053,-14.973,-14.974,-15.098,-15.333,-15.616,-15.856,-15.990,-16.008,-15.964,
--15.935,-15.990,-16.145,-16.361,-16.559,-16.662,-16.629,-16.481,-16.291,-16.149,-16.112,-16.177,-16.289,-16.382,-16.427,-16.453,
--16.522,-16.686,-16.939,-17.225,-17.469,-17.627,-17.713,-17.774,-17.857,-17.970,-18.088,-18.183,-18.253,-18.329,-18.448,-18.617,
--18.803,-18.953,-19.039,-19.077,-19.122,-19.229,-19.423,-19.686,-19.984,-20.295,-20.624,-20.987,-21.380,-21.763,-22.076,-22.277,
--22.374,-22.427,-22.516,-22.705,-23.007,-23.393,-23.820,-24.260,-24.714,-25.193,-25.701,-26.216,-26.701,-27.117,-27.449,-27.711,
--27.941,-28.180,-28.460,-28.787,-29.147,-29.517,-29.879,-30.227,-30.565,-30.897,-31.216,-31.510,-31.775,-32.023,-32.286,-32.598,
--32.967,-33.367,-33.744,-34.053,-34.280,-34.448,-34.597,-34.750,-34.907,-35.056,-35.201,-35.373,-35.611,-35.927,-36.293,-36.654,
--36.963,-37.215,-37.443,-37.681,-37.932,-38.156,-38.311,-38.386,-38.417,-38.463,-38.557,-38.685,-38.804,-38.878,-38.913,-38.944,
--38.998,-39.062,-39.086,-39.019,-38.850,-38.622,-38.401,-38.240,-38.155,-38.138,-38.174,-38.256,-38.383,-38.541,-38.708,-38.864,
--39.012,-39.169,-39.344,-39.520,-39.653,-39.703,-39.673,-39.605,-39.556,-39.548,-39.552,-39.508,-39.374,-39.155,-38.894,-38.628,
--38.357,-38.045,-37.658,-37.202,-36.731,-36.314,-35.987,-35.736,-35.514,-35.279,-35.021,-34.760,-34.516,-34.290,-34.055,-33.776,
--33.422,-32.973,-32.419,-31.759,-31.009,-30.212,-29.427,-28.713,-28.100,-27.573,-27.093,-26.622,-26.150,-25.696,-25.295,-24.974,
--24.755,-24.648,-24.653,-24.749,-24.871,-24.914,-24.763,-24.356,-23.724,-22.996,-22.348,-21.922,-21.762,-21.802,-21.906,-21.936,
--21.810,-21.514,-21.094,-20.615,-20.136,-19.691,-19.288,-18.912,-18.541,-18.153,-17.745,-17.326,-16.912,-16.504,-16.074,-15.568,
--14.939,-14.176,-13.322,-12.450,-11.621,-10.831,-9.996,-8.990,-7.709,-6.141,-4.379,-2.595,-.957,.430,1.561,2.505,
-3.353,4.171,4.982,5.771,6.518,7.212,7.857,8.457,9.013,9.531,10.028,10.542,11.122,11.804,12.594,13.476,
-14.436,15.483,16.658,17.997,19.482,21.014,22.419,23.507,24.143,24.304,24.078,23.629,23.128,22.710,22.449,22.372,
-22.481,22.768,23.219,23.804,24.482,25.201,25.915,26.605,27.277,27.963,28.699,29.501,30.355,31.219,32.040,32.789,
-33.468,34.110,34.751,35.413,36.088,36.751,37.383,37.978,38.551,39.114,39.669,40.208,40.725,41.229,41.740,42.279,
-42.851,43.442,44.028,44.598,45.155,45.710,46.266,46.817,47.350,47.859,48.353,48.849,49.358,49.875,50.386,50.878,
-51.348,51.802,52.240,52.654,53.025,53.347,53.637,53.928,54.249,54.612,55.005,55.405,55.806,56.219,56.665,57.147,
-57.647,58.130,58.569,58.966,59.348,59.752,60.203,60.704,61.239,61.786,62.316,62.797,63.195,63.485,63.675,63.807,
-63.947,64.141,64.381,64.602,64.716,64.675,64.502,64.285,64.119,64.050,64.054,64.062,64.022,63.934,63.845,63.801,
-63.805,63.806,63.746,63.607,63.429,63.283,63.212,63.199,63.180,63.101,62.962,62.828,62.768,62.804,62.876,62.884,
-62.754,62.489,62.166,61.877,61.672,61.523,61.356,61.103,60.748,60.326,59.896,59.508,59.181,58.908,58.672,58.450,
-58.219,57.962,57.678,57.381,57.102,56.861,56.657,56.468,56.278,56.107,56.017,56.080,56.327,56.719,57.156,57.532,
-57.800,57.994,58.197,58.476,58.825,59.156,59.345,59.304,59.025,58.589,58.115,57.701,57.385,57.142,56.913,56.655,
-56.355,56.035,55.721,55.417,55.105,54.762,54.389,54.019,53.704,53.479,53.342,53.248,53.141,52.986,52.785,52.561,
-52.331,52.085,51.795,51.439,51.024,50.584,50.161,49.777,49.428,49.090,48.744,48.382,48.003,47.611,47.204,46.791,
-46.394,46.044,45.770,46.496,46.190,45.895,45.600,45.315,45.069,44.883,44.758,44.675,44.620,44.599,44.639,44.756,
-44.929,45.111,45.260,45.386,45.553,45.830,46.235,46.696,47.087,47.308,47.355,47.333,47.386,47.609,47.981,48.378,
-48.652,48.715,48.580,48.347,48.144,48.061,48.123,48.293,48.495,48.643,48.668,48.531,48.239,47.834,47.389,46.979,
-46.662,46.468,46.398,46.437,46.565,46.751,46.956,47.128,47.207,47.148,46.939,46.619,46.274,46.016,45.936,46.057,
-46.307,46.538,46.581,46.328,45.781,45.062,44.345,43.784,43.441,43.279,43.202,43.120,42.990,42.828,42.673,42.558,
-42.480,42.405,42.280,42.053,41.693,41.198,40.601,39.963,39.356,38.825,38.373,37.948,37.468,36.853,36.069,35.140,
-34.148,33.209,32.445,31.946,31.754,31.848,32.152,32.555,32.950,33.264,33.470,33.585,33.643,33.667,33.662,33.609,
-33.481,33.259,32.941,32.542,32.084,31.586,31.057,30.497,29.905,29.288,28.667,28.064,27.484,26.904,26.288,25.613,
-24.903,24.235,23.702,23.357,23.174,23.051,22.861,22.519,22.020,21.428,20.821,20.238,19.664,19.061,18.414,17.759,
-17.165,16.694,16.352,16.083,15.802,15.436,14.959,14.391,13.772,13.135,12.499,11.879,11.305,10.826,10.488,10.307,
-10.252,10.247,10.210,10.085,9.865,9.586,9.296,9.021,8.751,8.444,8.055,7.556,6.950,6.266,5.542,4.813,
-4.089,3.361,2.601,1.777,.867,-.131,-1.197,-2.292,-3.366,-4.370,-5.254,-5.980,-6.524,-6.891,-7.115,-7.258,
--7.393,-7.581,-7.865,-8.265,-8.788,-9.425,-10.148,-10.907,-11.638,-12.288,-12.844,-13.333,-13.799,-14.265,-14.703,-15.053,
--15.264,-15.343,-15.354,-15.374,-15.439,-15.515,-15.534,-15.457,-15.317,-15.210,-15.236,-15.443,-15.816,-16.321,-16.941,-17.693,
--18.572,-19.507,-20.355,-20.971,-21.297,-21.401,-21.415,-21.420,-21.357,-21.066,-20.418,-19.459,-18.454,-17.762,-17.642,-18.105,
--18.922,-19.785,-20.492,-21.041,-21.576,-22.234,-23.026,-23.834,-24.514,-25.011,-25.399,-25.825,-26.392,-27.095,-27.836,-28.499,
--29.024,-29.425,-29.749,-30.033,-30.275,-30.462,-30.588,-30.670,-30.733,-30.795,-30.860,-30.940,-31.062,-31.250,-31.501,-31.766,
--31.975,-32.085,-32.116,-32.153,-32.288,-32.564,-32.952,-33.380,-33.788,-34.159,-34.509,-34.851,-35.162,-35.404,-35.562,-35.674,
--35.810,-36.029,-36.324,-36.635,-36.891,-37.068,-37.210,-37.392,-37.663,-38.015,-38.387,-38.718,-38.973,-39.153,-39.274,-39.344,
--39.368,-39.363,-39.365,-39.409,-39.500,-39.607,-39.686,-39.722,-39.758,-39.881,-40.166,-40.627,-41.211,-41.827,-42.398,-42.893,
--43.312,-43.672,-43.976,-44.230,-44.444,-44.645,-44.850,-45.052,-45.212,-45.280,-45.239,-45.120,-44.999,-44.957,-45.045,-45.264,
--45.571,-45.887,-46.123,-46.191,-46.032,-45.641,-45.089,-44.501,-44.017,-43.719,-43.586,-43.493,-43.265,-42.773,-42.006,-41.102,
--40.300,-39.831,-39.812,-40.181,-40.727,-41.206,-41.474,-41.567,-41.665,-41.967,-42.547,-43.296,-43.980,-44.388,-44.453,-44.287,
--44.101,-44.082,-44.303,-44.726,-45.254,-45.787,-46.243,-46.551,-46.644,-46.490,-46.128,-45.670,-45.256,-44.984,-44.866,-44.850,
--44.885,-44.968,-45.123,-45.351,-45.576,-45.673,-45.544,-45.199,-44.764,-44.401,-44.197,-44.113,-44.025,-43.824,-43.504,-43.166,
--42.942,-42.902,-43.014,-43.174,-43.279,-43.285,-43.204,-43.073,-42.914,-42.721,-42.482,-42.204,-41.920,-41.675,-41.499,-41.385,
--41.295,-41.182,-41.014,-40.794,-40.560,-40.365,-40.239,-40.166,-40.089,-39.937,-39.666,-39.281,-38.818,-38.310,-37.756,-37.128,
--36.409,-35.634,-34.884,-34.244,-33.740,-33.313,-32.857,-32.284,-31.583,-30.821,-30.091,-29.451,-28.893,-28.370,-27.842,-27.303,
--26.774,-26.270,-25.780,-25.275,-24.735,-24.165,-23.593,-23.042,-22.512,-21.983,-21.438,-20.878,-20.318,-19.772,-19.236,-18.692,
--18.121,-17.527,-16.922,-16.319,-15.716,-15.096,-14.444,-13.760,-13.046,-12.302,-11.513,-10.672,-9.790,-8.906,-8.065,-7.278,
--6.505,-5.682,-4.762,-3.756,-2.729,-1.749,-.845,.008,.849,1.684,2.463,3.112,3.595,3.951,4.281,4.680,
-5.187,5.769,6.356,6.897,7.388,7.858,8.344,8.861,9.407,9.975,10.558,11.139,11.682,12.135,12.463,12.675,
-12.828,12.997,13.233,13.541,13.887,14.232,14.552,14.845,15.111,15.346,15.550,15.747,15.991,16.341,16.826,17.418,
-18.045,18.626,19.101,19.449,19.673,19.791,19.827,19.821,19.825,19.882,20.000,20.145,20.266,20.331,20.359,20.396,
-20.483,20.617,20.765,20.903,21.051,21.267,21.597,22.029,22.486,22.878,23.160,23.352,23.511,23.664,23.784,23.819,
-23.741,23.578,23.379,23.157,22.857,22.407,21.809,21.201,20.815,20.839,21.289,21.960,22.532,22.742,22.530,22.046,
-21.547,21.233,21.159,21.234,21.310,21.272,21.086,20.789,20.454,20.145,19.902,19.735,19.625,19.545,19.476,19.430,
-19.444,19.554,19.758,20.005,20.214,20.331,20.364,20.384,20.471,20.656,20.899,21.114,21.230,21.237,21.186,21.149,
-21.176,21.263,21.365,21.428,21.415,21.332,21.233,21.222,21.424,21.942,22.793,23.863,24.918,25.668,25.862,25.355,
-24.116,22.190,19.650,16.595,13.187,9.695,6.479,3.905,2.224,1.488,1.561,2.203,3.182,4.334,5.549,6.723,
-7.728,8.443,8.819,8.919,8.888,8.869,8.917,8.981,8.960,8.794,8.514,8.212,7.966,7.778,7.576,7.287,
-6.899,6.481,6.121,5.858,5.644,5.384,5.014,4.550,4.069,3.630,3.216,2.734,2.095,1.307,.508,-.084,
--.289,-.068,.444,.996,1.335,1.307,.915,.304,-.304,-.701,-.772,-.528,-.094,.358,.685,.822,
-.787,.645,.462,.283,.134,.034,-.002,.021,.074,.115,.124,.119,.149,.243,.382,.492,
-.504,.406,.269,.196,.255,.429,.631,.766,.797,.759,.712,.693,.688,.654,.563,.428,
-.294,.204,.181,.225,.328,.483,.678,.884,1.061,1.186,1.267,1.351,1.481,1.663,1.852,1.980,
-2.006,1.949,1.879,1.874,1.977,2.174,2.423,2.681,2.926,3.155,3.368,3.554,3.697,3.792,3.860,3.941,
-4.081,4.305,4.603,4.938,5.254,5.503,5.661,5.737,5.767,5.792,5.842,5.925,6.026,6.127,6.215,6.290,
-6.354,6.413,6.472,6.537,6.620,6.727,6.852,6.976,7.074,7.132,7.159,7.178,7.209,7.253,7.291,7.299,
-7.268,7.210,7.147,7.095,7.050,6.994,6.908,6.790,6.652,6.515,6.393,6.290,6.201,6.116,6.028,5.936,
-5.844,5.757,5.676,5.599,5.519,5.427,5.321,5.207,5.095,4.989,4.884,4.763,4.614,4.437,4.245,4.056,
-3.880,3.716,3.550,3.378,3.202,3.027,2.856,2.680,2.490,2.284,2.075,1.877,1.695,1.514,1.310,1.070,
-.803,.535,.288,.063,-.161,-.409,-.688,-.984,-1.272,-1.536,-1.785,-2.038,-2.313,-2.610,-2.917,-3.214,
--3.491,-3.749,-3.995,-4.239,-4.487,-4.746,-5.018,-5.303,-5.592,-5.872,-6.136,-6.381,-6.616,-6.849,-7.088,-7.338,
--7.606,-7.901,-8.227,-8.576,-8.928,-9.264,-9.579,-9.887,-10.211,-10.565,-10.936,-11.296,-11.620,-11.904,-12.172,-12.448,
--12.743,-13.045,-13.335,-13.610,-13.888,-14.192,-14.531,-14.881,-15.207,-15.485,-15.724,-15.956,-16.209,-16.483,-16.748,-16.971,
--17.143,-17.290,-17.448,-17.643,-17.866,-18.087,-18.272,-18.410,-18.515,-18.608,-18.701,-18.796,-18.887,-18.972,-19.060,-19.160,
--19.276,-19.390,-19.482,-19.529,-19.531,-19.509,-19.498,-19.534,-19.631,-19.767,-19.896,-19.972,-19.980,-19.960,-19.988,-20.138,
--20.432,-20.819,-21.196,-21.460,-21.551,-21.462,-21.216,-20.828,-20.293,-19.615,-18.832,-18.035,-17.333,-16.807,-16.484,-16.355,
--16.414,-16.691,-17.219,-17.972,-18.818,-19.544,-19.947,-19.949,-19.633,-19.191,-18.793,-18.487,-18.192,-17.790,-17.238,-16.623,
--16.116,-15.860,-15.877,-16.061,-16.249,-16.326,-16.274,-16.160,-16.068,-16.044,-16.079,-16.127,-16.143,-16.106,-16.010,-15.866,
--15.692,-15.519,-15.384,-15.314,-15.308,-15.333,-15.340,-15.291,-15.191,-15.079,-15.006,-15.004,-15.069,-15.161,-15.234,-15.258,
--15.237,-15.203,-15.203,-15.273,-15.419,-15.615,-15.810,-15.955,-16.032,-16.058,-16.074,-16.114,-16.184,-16.258,-16.305,-16.323,
--16.344,-16.417,-16.571,-16.789,-17.012,-17.181,-17.267,-17.294,-17.313,-17.364,-17.456,-17.568,-17.677,-17.784,-17.916,-18.093,
--18.311,-18.530,-18.700,-18.795,-18.833,-18.866,-18.947,-19.109,-19.348,-19.647,-19.990,-20.372,-20.782,-21.185,-21.527,-21.754,
--21.850,-21.855,-21.852,-21.930,-22.144,-22.494,-22.938,-23.422,-23.911,-24.397,-24.884,-25.377,-25.869,-26.342,-26.776,-27.155,
--27.474,-27.744,-27.991,-28.252,-28.558,-28.923,-29.330,-29.741,-30.114,-30.431,-30.702,-30.955,-31.220,-31.512,-31.833,-32.179,
--32.548,-32.930,-33.304,-33.641,-33.919,-34.141,-34.336,-34.536,-34.752,-34.962,-35.135,-35.267,-35.395,-35.580,-35.863,-36.228,
--36.610,-36.936,-37.176,-37.353,-37.510,-37.668,-37.808,-37.901,-37.942,-37.976,-38.061,-38.224,-38.426,-38.596,-38.683,-38.697,
--38.699,-38.744,-38.824,-38.872,-38.812,-38.623,-38.363,-38.135,-38.020,-38.034,-38.132,-38.254,-38.365,-38.464,-38.568,-38.687,
--38.822,-38.972,-39.140,-39.324,-39.501,-39.628,-39.670,-39.623,-39.529,-39.438,-39.374,-39.313,-39.204,-39.016,-38.761,-38.487,
--38.231,-37.988,-37.716,-37.382,-36.992,-36.599,-36.263,-36.001,-35.782,-35.551,-35.282,-34.999,-34.755,-34.590,-34.490,-34.395,
--34.227,-33.931,-33.482,-32.882,-32.147,-31.303,-30.398,-29.501,-28.688,-28.010,-27.475,-27.048,-26.688,-26.368,-26.092,-25.874,
--25.724,-25.634,-25.580,-25.535,-25.469,-25.338,-25.081,-24.633,-23.960,-23.095,-22.148,-21.276,-20.626,-20.279,-20.224,-20.370,
--20.594,-20.780,-20.852,-20.783,-20.584,-20.286,-19.924,-19.524,-19.096,-18.639,-18.156,-17.668,-17.210,-16.814,-16.480,-16.160,
--15.768,-15.222,-14.491,-13.612,-12.672,-11.747,-10.844,-9.891,-8.766,-7.381,-5.739,-3.952,-2.197,-.635,.656,1.696,
-2.575,3.384,4.175,4.947,5.669,6.320,6.905,7.454,7.995,8.545,9.106,9.681,10.285,10.947,11.683,12.488,
-13.341,14.230,15.182,16.268,17.561,19.072,20.698,22.233,23.426,24.095,24.200,23.861,23.299,22.745,22.355,22.189,
-22.232,22.446,22.801,23.287,23.894,24.588,25.320,26.039,26.721,27.382,28.069,28.829,29.676,30.582,31.486,32.323,
-33.058,33.697,34.279,34.849,35.437,36.043,36.654,37.254,37.842,38.422,38.995,39.554,40.088,40.595,41.090,41.597,
-42.129,42.681,43.231,43.758,44.258,44.749,45.252,45.776,46.309,46.830,47.326,47.809,48.302,48.825,49.379,49.942,
-50.488,50.997,51.464,51.893,52.291,52.661,53.012,53.358,53.716,54.093,54.484,54.871,55.244,55.606,55.977,56.377,
-56.813,57.275,57.747,58.222,58.704,59.196,59.695,60.182,60.643,61.082,61.527,62.007,62.525,63.040,63.484,63.806,
-64.011,64.159,64.324,64.543,64.778,64.943,64.964,64.832,64.620,64.432,64.334,64.320,64.319,64.265,64.146,64.017,
-63.945,63.956,64.001,63.997,63.887,63.687,63.477,63.337,63.285,63.267,63.205,63.064,62.882,62.743,62.705,62.752,
-62.798,62.750,62.570,62.299,62.012,61.768,61.564,61.352,61.086,60.754,60.385,60.024,59.695,59.398,59.120,58.853,
-58.595,58.347,58.095,57.826,57.537,57.247,56.982,56.751,56.535,56.307,56.071,55.884,55.842,56.023,56.425,56.954,
-57.465,57.843,58.063,58.195,58.345,58.574,58.853,59.075,59.119,58.920,58.502,57.963,57.420,56.958,56.601,56.326,
-56.096,55.881,55.668,55.448,55.203,54.910,54.554,54.156,53.766,53.444,53.219,53.072,52.944,52.770,52.522,52.222,
-51.917,51.652,51.435,51.245,51.048,50.819,50.554,50.259,49.942,49.612,49.281,48.968,48.685,48.426,48.168,47.881,
-47.550,47.189,46.830,46.496,47.048,46.678,46.299,45.916,45.552,45.238,44.989,44.796,44.643,44.530,44.484,44.544,
-44.714,44.947,45.164,45.315,45.423,45.573,45.846,46.243,46.672,46.997,47.141,47.146,47.150,47.293,47.616,48.036,
-48.396,48.571,48.540,48.387,48.233,48.166,48.202,48.303,48.414,48.496,48.525,48.483,48.345,48.098,47.756,47.368,
-46.995,46.685,46.457,46.302,46.210,46.184,46.240,46.389,46.606,46.828,46.972,46.977,46.836,46.611,46.411,46.334,
-46.411,46.579,46.692,46.596,46.198,45.530,44.731,43.989,43.452,43.172,43.097,43.125,43.159,43.154,43.113,43.065,
-43.032,43.015,42.994,42.929,42.772,42.478,42.026,41.436,40.773,40.128,39.579,39.154,38.812,38.469,38.037,37.454,
-36.707,35.825,34.870,33.931,33.114,32.523,32.228,32.232,32.465,32.807,33.140,33.389,33.543,33.633,33.695,33.736,
-33.731,33.641,33.435,33.113,32.703,32.240,31.753,31.251,30.726,30.170,29.587,29.001,28.436,27.894,27.341,26.718,
-25.988,25.169,24.358,23.689,23.263,23.087,23.060,23.021,22.832,22.447,21.914,21.331,20.769,20.241,19.709,19.139,
-18.545,17.987,17.537,17.224,17.004,16.785,16.467,16.002,15.402,14.721,14.014,13.306,12.603,11.910,11.255,10.692,
-10.270,10.000,9.841,9.719,9.566,9.350,9.089,8.822,8.577,8.352,8.108,7.793,7.370,6.827,6.180,5.460,
-4.702,3.926,3.132,2.302,1.410,.440,-.592,-1.642,-2.642,-3.535,-4.291,-4.915,-5.434,-5.879,-6.269,-6.617,
--6.938,-7.262,-7.629,-8.081,-8.645,-9.324,-10.093,-10.894,-11.655,-12.311,-12.830,-13.235,-13.591,-13.970,-14.405,-14.866,
--15.283,-15.593,-15.787,-15.909,-16.019,-16.134,-16.217,-16.211,-16.107,-15.973,-15.929,-16.075,-16.429,-16.930,-17.493,-18.078,
--18.706,-19.405,-20.144,-20.813,-21.280,-21.492,-21.517,-21.493,-21.508,-21.505,-21.308,-20.759,-19.875,-18.904,-18.219,-18.108,
--18.612,-19.508,-20.462,-21.230,-21.778,-22.247,-22.805,-23.513,-24.293,-25.007,-25.576,-26.039,-26.508,-27.077,-27.748,-28.442,
--29.059,-29.550,-29.930,-30.245,-30.523,-30.754,-30.907,-30.973,-30.976,-30.961,-30.970,-31.028,-31.142,-31.318,-31.551,-31.820,
--32.077,-32.267,-32.370,-32.425,-32.516,-32.726,-33.080,-33.530,-33.993,-34.409,-34.771,-35.113,-35.462,-35.806,-36.103,-36.328,
--36.505,-36.701,-36.971,-37.318,-37.682,-37.992,-38.218,-38.392,-38.577,-38.816,-39.094,-39.360,-39.567,-39.708,-39.811,-39.906,
--39.997,-40.067,-40.098,-40.098,-40.086,-40.074,-40.051,-39.996,-39.911,-39.843,-39.865,-40.033,-40.356,-40.790,-41.279,-41.791,
--42.327,-42.889,-43.450,-43.949,-44.326,-44.563,-44.697,-44.795,-44.907,-45.038,-45.154,-45.225,-45.260,-45.309,-45.439,-45.692,
--46.057,-46.467,-46.808,-46.959,-46.825,-46.386,-45.715,-44.978,-44.366,-44.018,-43.951,-44.049,-44.111,-43.947,-43.467,-42.711,
--41.840,-41.064,-40.572,-40.458,-40.696,-41.149,-41.631,-41.990,-42.176,-42.252,-42.342,-42.548,-42.891,-43.311,-43.724,-44.077,
--44.376,-44.651,-44.928,-45.213,-45.512,-45.854,-46.269,-46.744,-47.181,-47.427,-47.362,-46.989,-46.456,-45.973,-45.685,-45.596,
--45.589,-45.544,-45.428,-45.312,-45.287,-45.371,-45.477,-45.484,-45.336,-45.085,-44.845,-44.696,-44.613,-44.495,-44.251,-43.887,
--43.507,-43.247,-43.172,-43.246,-43.362,-43.422,-43.392,-43.303,-43.198,-43.092,-42.958,-42.758,-42.482,-42.165,-41.867,-41.642,
--41.501,-41.417,-41.335,-41.212,-41.037,-40.836,-40.651,-40.509,-40.403,-40.289,-40.111,-39.831,-39.438,-38.944,-38.354,-37.663,
--36.869,-36.001,-35.136,-34.372,-33.769,-33.315,-32.920,-32.481,-31.944,-31.339,-30.744,-30.224,-29.776,-29.337,-28.834,-28.239,
--27.586,-26.937,-26.337,-25.787,-25.259,-24.731,-24.205,-23.694,-23.205,-22.716,-22.197,-21.633,-21.033,-20.425,-19.828,-19.238,
--18.634,-18.005,-17.357,-16.707,-16.064,-15.421,-14.763,-14.086,-13.399,-12.713,-12.016,-11.276,-10.460,-9.571,-8.651,-7.758,
--6.922,-6.116,-5.276,-4.356,-3.361,-2.346,-1.372,-.460,.408,1.254,2.057,2.750,3.268,3.611,3.861,4.147,
-4.560,5.101,5.697,6.258,6.752,7.216,7.718,8.294,8.927,9.561,10.149,10.682,11.179,11.656,12.107,12.514,
-12.867,13.190,13.520,13.886,14.285,14.690,15.068,15.397,15.666,15.864,15.985,16.045,16.102,16.243,16.545,17.027,
-17.627,18.236,18.748,19.115,19.346,19.482,19.561,19.603,19.625,19.657,19.735,19.876,20.066,20.260,20.423,20.548,
-20.660,20.784,20.930,21.091,21.272,21.508,21.843,22.287,22.789,23.253,23.592,23.792,23.904,24.000,24.105,24.179,
-24.157,24.012,23.781,23.526,23.262,22.943,22.503,21.958,21.446,21.179,21.306,21.799,22.433,22.905,22.997,22.687,
-22.142,21.600,21.244,21.123,21.172,21.269,21.307,21.224,21.010,20.710,20.397,20.151,20.014,19.970,19.957,19.916,
-19.841,19.787,19.824,19.968,20.159,20.300,20.332,20.291,20.278,20.384,20.607,20.853,21.001,20.996,20.886,20.778,
-20.756,20.825,20.923,20.985,21.001,21.021,21.116,21.333,21.689,22.191,22.859,23.699,24.642,25.500,25.974,25.748,
-24.598,22.478,19.526,16.008,12.253,8.608,5.408,2.954,1.457,.976,1.387,2.412,3.723,5.042,6.215,7.198,
-7.995,8.604,9.005,9.183,9.176,9.067,8.950,8.869,8.798,8.674,8.453,8.150,7.830,7.554,7.329,7.106,
-6.818,6.439,6.007,5.592,5.244,4.958,4.683,4.369,4.005,3.618,3.229,2.821,2.333,1.707,.944,.142,
--.522,-.862,-.755,-.214,.596,1.395,1.870,1.802,1.164,.151,-.885,-1.586,-1.751,-1.409,-.782,-.153,
-.277,.450,.422,.283,.102,-.087,-.257,-.371,-.402,-.357,-.285,-.240,-.236,-.237,-.191,-.087,
-.026,.072,.019,-.088,-.152,-.101,.056,.233,.337,.335,.272,.223,.228,.266,.283,.246,
-.176,.127,.144,.230,.356,.490,.621,.753,.885,1.004,1.094,1.165,1.249,1.376,1.546,1.714,
-1.822,1.843,1.807,1.785,1.840,1.993,2.214,2.458,2.694,2.918,3.140,3.360,3.560,3.721,3.840,3.942,
-4.062,4.233,4.460,4.726,4.999,5.242,5.429,5.544,5.592,5.599,5.600,5.623,5.682,5.764,5.848,5.917,
-5.965,6.002,6.042,6.095,6.167,6.259,6.366,6.477,6.573,6.638,6.666,6.669,6.663,6.664,6.671,6.669,
-6.646,6.605,6.560,6.528,6.511,6.493,6.448,6.361,6.234,6.087,5.944,5.823,5.730,5.657,5.593,5.525,
-5.446,5.356,5.264,5.180,5.104,5.022,4.917,4.776,4.606,4.431,4.275,4.145,4.025,3.894,3.737,3.560,
-3.380,3.203,3.025,2.837,2.638,2.445,2.277,2.138,2.007,1.854,1.662,1.445,1.234,1.048,.878,.691,
-.459,.186,-.096,-.353,-.576,-.789,-1.028,-1.306,-1.604,-1.889,-2.137,-2.359,-2.586,-2.849,-3.152,-3.478,
--3.800,-4.103,-4.389,-4.667,-4.943,-5.219,-5.493,-5.773,-6.066,-6.373,-6.682,-6.973,-7.231,-7.453,-7.658,-7.868,
--8.105,-8.379,-8.688,-9.022,-9.368,-9.715,-10.056,-10.392,-10.730,-11.070,-11.407,-11.727,-12.018,-12.286,-12.551,-12.837,
--13.154,-13.484,-13.795,-14.067,-14.310,-14.562,-14.858,-15.208,-15.580,-15.930,-16.227,-16.476,-16.708,-16.949,-17.197,-17.431,
--17.627,-17.787,-17.940,-18.118,-18.332,-18.561,-18.769,-18.930,-19.045,-19.137,-19.229,-19.324,-19.411,-19.477,-19.520,-19.558,
--19.615,-19.705,-19.822,-19.942,-20.035,-20.081,-20.079,-20.054,-20.044,-20.089,-20.205,-20.374,-20.551,-20.689,-20.765,-20.798,
--20.839,-20.937,-21.108,-21.325,-21.535,-21.679,-21.719,-21.634,-21.418,-21.075,-20.625,-20.107,-19.565,-19.023,-18.473,-17.893,
--17.300,-16.791,-16.539,-16.717,-17.378,-18.389,-19.455,-20.249,-20.566,-20.407,-19.944,-19.390,-18.875,-18.398,-17.886,-17.302,
--16.704,-16.225,-15.984,-15.996,-16.168,-16.351,-16.436,-16.403,-16.313,-16.244,-16.233,-16.263,-16.279,-16.237,-16.126,-15.966,
--15.794,-15.638,-15.516,-15.431,-15.383,-15.362,-15.357,-15.348,-15.312,-15.228,-15.088,-14.902,-14.701,-14.529,-14.427,-14.414,
--14.471,-14.549,-14.596,-14.589,-14.551,-14.544,-14.627,-14.829,-15.125,-15.456,-15.760,-15.997,-16.155,-16.247,-16.289,-16.303,
--16.312,-16.341,-16.410,-16.525,-16.665,-16.798,-16.895,-16.949,-16.977,-17.004,-17.046,-17.104,-17.176,-17.264,-17.388,-17.569,
--17.811,-18.085,-18.339,-18.524,-18.618,-18.639,-18.635,-18.659,-18.751,-18.931,-19.207,-19.577,-20.026,-20.512,-20.967,-21.312,
--21.493,-21.517,-21.457,-21.425,-21.522,-21.794,-22.222,-22.743,-23.290,-23.821,-24.328,-24.819,-25.304,-25.783,-26.247,-26.681,
--27.070,-27.397,-27.655,-27.862,-28.057,-28.295,-28.610,-28.994,-29.399,-29.762,-30.054,-30.299,-30.555,-30.878,-31.277,-31.718,
--32.144,-32.517,-32.833,-33.111,-33.375,-33.634,-33.891,-34.150,-34.415,-34.678,-34.916,-35.106,-35.250,-35.390,-35.589,-35.886,
--36.255,-36.618,-36.890,-37.040,-37.110,-37.174,-37.282,-37.424,-37.558,-37.659,-37.748,-37.880,-38.081,-38.318,-38.514,-38.609,
--38.614,-38.594,-38.615,-38.673,-38.693,-38.590,-38.351,-38.060,-37.850,-37.818,-37.960,-38.186,-38.385,-38.497,-38.533,-38.549,
--38.592,-38.683,-38.813,-38.969,-39.139,-39.298,-39.411,-39.445,-39.390,-39.277,-39.152,-39.043,-38.937,-38.795,-38.589,-38.329,
--38.051,-37.789,-37.540,-37.271,-36.958,-36.613,-36.284,-36.011,-35.790,-35.573,-35.307,-34.989,-34.675,-34.448,-34.351,-34.355,
--34.368,-34.292,-34.062,-33.664,-33.111,-32.414,-31.578,-30.626,-29.618,-28.653,-27.836,-27.241,-26.881,-26.720,-26.691,-26.729,
--26.774,-26.776,-26.694,-26.498,-26.173,-25.719,-25.145,-24.457,-23.657,-22.762,-21.812,-20.875,-20.041,-19.395,-18.992,-18.845,
--18.923,-19.161,-19.472,-19.767,-19.973,-20.049,-19.988,-19.812,-19.545,-19.206,-18.795,-18.316,-17.795,-17.281,-16.831,-16.466,
--16.150,-15.795,-15.304,-14.620,-13.761,-12.796,-11.792,-10.760,-9.638,-8.338,-6.811,-5.100,-3.343,-1.711,-.334,.754,
-1.619,2.373,3.110,3.866,4.614,5.306,5.914,6.452,6.972,7.524,8.135,8.799,9.488,10.176,10.855,11.534,
-12.220,12.923,13.662,14.491,15.496,16.763,18.312,20.044,21.733,23.096,23.907,24.099,23.794,23.237,22.690,22.328,
-22.200,22.272,22.491,22.837,23.321,23.953,24.704,25.501,26.266,26.964,27.620,28.310,29.104,30.022,31.016,31.993,
-32.864,33.580,34.151,34.632,35.086,35.559,36.069,36.613,37.177,37.751,38.323,38.884,39.425,39.943,40.449,40.959,
-41.483,42.014,42.528,43.002,43.430,43.834,44.255,44.721,45.235,45.773,46.303,46.809,47.304,47.816,48.366,48.953,
-49.555,50.140,50.684,51.174,51.613,52.007,52.370,52.725,53.092,53.484,53.899,54.315,54.709,55.074,55.425,55.790,
-56.190,56.629,57.094,57.574,58.070,58.595,59.150,59.710,60.228,60.666,61.024,61.356,61.735,62.209,62.761,63.316,
-63.782,64.113,64.334,64.514,64.714,64.935,65.117,65.181,65.092,64.893,64.679,64.537,64.486,64.477,64.437,64.329,
-64.182,64.064,64.021,64.032,64.026,63.935,63.752,63.539,63.378,63.307,63.293,63.256,63.140,62.960,62.788,62.693,
-62.688,62.714,62.688,62.559,62.344,62.098,61.868,61.659,61.441,61.185,60.893,60.589,60.294,60.001,59.686,59.337,
-58.977,58.655,58.402,58.207,58.023,57.800,57.524,57.221,56.926,56.646,56.363,56.064,55.786,55.623,55.675,55.982,
-56.474,57.001,57.406,57.616,57.675,57.702,57.806,58.014,58.253,58.398,58.346,58.072,57.635,57.139,56.672,56.278,
-55.954,55.676,55.425,55.196,54.983,54.770,54.526,54.228,53.880,53.524,53.213,52.978,52.801,52.628,52.399,52.090,
-51.730,51.380,51.099,50.915,50.816,50.765,50.714,50.619,50.445,50.175,49.822,49.432,49.067,48.779,48.576,48.421,
-48.255,48.032,47.743,47.406,47.048,47.239,46.871,46.494,46.124,45.784,45.490,45.242,45.021,44.812,44.638,44.553,
-44.610,44.811,45.089,45.345,45.521,45.639,45.788,46.047,46.411,46.785,47.051,47.168,47.207,47.306,47.561,47.948,
-48.334,48.567,48.585,48.456,48.324,48.306,48.417,48.575,48.673,48.652,48.525,48.348,48.164,47.973,47.751,47.483,
-47.185,46.893,46.630,46.390,46.151,45.911,45.704,45.597,45.647,45.858,46.164,46.460,46.653,46.708,46.662,46.599,
-46.588,46.636,46.674,46.586,46.274,45.720,45.003,44.274,43.683,43.318,43.175,43.181,43.251,43.327,43.390,43.444,
-43.492,43.521,43.515,43.463,43.355,43.173,42.886,42.460,41.894,41.237,40.580,40.015,39.586,39.277,39.021,38.741,
-38.377,37.890,37.257,36.469,35.549,34.574,33.673,32.984,32.600,32.526,32.678,32.932,33.186,33.390,33.546,33.668,
-33.754,33.778,33.704,33.514,33.218,32.844,32.429,31.994,31.541,31.060,30.546,30.005,29.462,28.939,28.433,27.907,
-27.294,26.546,25.676,24.775,23.990,23.448,23.185,23.124,23.110,22.993,22.701,22.261,21.761,21.275,20.821,20.365,
-19.867,19.332,18.817,18.399,18.111,17.910,17.696,17.362,16.860,16.221,15.526,14.849,14.218,13.605,12.966,12.290,
-11.612,10.997,10.494,10.107,9.790,9.485,9.157,8.813,8.486,8.201,7.957,7.718,7.434,7.064,6.586,6.001,
-5.328,4.589,3.803,2.974,2.085,1.118,.070,-1.021,-2.076,-3.001,-3.732,-4.268,-4.676,-5.051,-5.469,-5.958,
--6.500,-7.060,-7.623,-8.205,-8.837,-9.541,-10.311,-11.103,-11.850,-12.489,-12.980,-13.329,-13.589,-13.838,-14.144,-14.531,
--14.967,-15.385,-15.737,-16.014,-16.251,-16.479,-16.691,-16.838,-16.874,-16.815,-16.756,-16.823,-17.101,-17.572,-18.136,-18.685,
--19.177,-19.649,-20.154,-20.687,-21.160,-21.463,-21.556,-21.519,-21.488,-21.540,-21.603,-21.482,-21.005,-20.186,-19.275,-18.649,
--18.600,-19.167,-20.124,-21.124,-21.914,-22.459,-22.905,-23.440,-24.145,-24.951,-25.711,-26.325,-26.805,-27.250,-27.760,-28.358,
--28.988,-29.568,-30.050,-30.443,-30.780,-31.074,-31.297,-31.406,-31.388,-31.280,-31.157,-31.094,-31.132,-31.278,-31.511,-31.798,
--32.099,-32.366,-32.564,-32.690,-32.789,-32.942,-33.222,-33.642,-34.150,-34.658,-35.104,-35.481,-35.829,-36.186,-36.551,-36.892,
--37.179,-37.423,-37.673,-37.978,-38.338,-38.704,-39.014,-39.238,-39.404,-39.564,-39.751,-39.952,-40.127,-40.248,-40.326,-40.404,
--40.511,-40.642,-40.756,-40.815,-40.810,-40.758,-40.684,-40.598,-40.496,-40.387,-40.302,-40.279,-40.341,-40.474,-40.650,-40.866,
--41.164,-41.604,-42.212,-42.936,-43.650,-44.224,-44.587,-44.762,-44.834,-44.888,-44.966,-45.068,-45.187,-45.335,-45.553,-45.877,
--46.314,-46.818,-47.302,-47.650,-47.753,-47.539,-47.019,-46.304,-45.582,-45.047,-44.806,-44.822,-44.938,-44.957,-44.752,-44.311,
--43.719,-43.094,-42.527,-42.071,-41.757,-41.617,-41.669,-41.886,-42.187,-42.461,-42.617,-42.635,-42.568,-42.517,-42.584,-42.837,
--43.289,-43.895,-44.558,-45.161,-45.617,-45.926,-46.178,-46.497,-46.942,-47.441,-47.813,-47.886,-47.620,-47.156,-46.728,-46.508,
--46.498,-46.545,-46.467,-46.193,-45.809,-45.482,-45.327,-45.333,-45.387,-45.376,-45.261,-45.087,-44.917,-44.764,-44.594,-44.365,
--44.090,-43.835,-43.677,-43.636,-43.664,-43.675,-43.613,-43.484,-43.346,-43.250,-43.206,-43.169,-43.076,-42.887,-42.608,-42.283,
--41.974,-41.725,-41.549,-41.429,-41.334,-41.234,-41.112,-40.972,-40.820,-40.662,-40.488,-40.278,-40.000,-39.621,-39.101,-38.408,
--37.536,-36.528,-35.487,-34.548,-33.817,-33.316,-32.967,-32.639,-32.234,-31.742,-31.237,-30.809,-30.485,-30.200,-29.840,-29.318,
--28.634,-27.864,-27.104,-26.412,-25.790,-25.213,-24.665,-24.154,-23.690,-23.261,-22.822,-22.326,-21.756,-21.132,-20.491,-19.855,
--19.221,-18.568,-17.888,-17.195,-16.507,-15.831,-15.154,-14.465,-13.767,-13.086,-12.436,-11.793,-11.099,-10.291,-9.359,-8.354,
--7.363,-6.448,-5.604,-4.772,-3.890,-2.941,-1.959,-.996,-.081,.785,1.600,2.335,2.934,3.361,3.645,3.885,
-4.195,4.633,5.166,5.706,6.184,6.609,7.055,7.601,8.264,8.981,9.657,10.230,10.707,11.146,11.602,12.094,
-12.605,13.110,13.599,14.081,14.561,15.034,15.482,15.889,16.243,16.527,16.714,16.784,16.753,16.697,16.734,16.960,
-17.388,17.933,18.454,18.839,19.059,19.168,19.245,19.340,19.453,19.560,19.657,19.764,19.914,20.113,20.335,20.543,
-20.718,20.869,21.024,21.202,21.418,21.689,22.042,22.501,23.045,23.603,24.073,24.382,24.530,24.584,24.619,24.660,
-24.668,24.584,24.386,24.103,23.781,23.426,23.002,22.482,21.928,21.500,21.382,21.654,22.209,22.794,23.138,23.101,
-22.731,22.207,21.724,21.398,21.246,21.224,21.272,21.327,21.323,21.203,20.953,20.625,20.326,20.151,20.120,20.169,
-20.201,20.172,20.113,20.101,20.171,20.285,20.357,20.339,20.266,20.229,20.290,20.422,20.525,20.517,20.409,20.304,
-20.314,20.457,20.643,20.744,20.715,20.641,20.693,20.999,21.566,22.289,23.048,23.792,24.543,25.296,25.904,26.047,
-25.334,23.480,20.463,16.566,12.291,8.205,4.788,2.355,1.038,.802,1.474,2.770,4.351,5.895,7.168,8.074,
-8.644,8.986,9.204,9.355,9.446,9.456,9.376,9.222,9.018,8.780,8.507,8.190,7.834,7.463,7.108,6.788,
-6.494,6.197,5.870,5.506,5.121,4.741,4.385,4.058,3.754,3.460,3.158,2.820,2.411,1.897,1.270,.556,
--.169,-.790,-1.165,-1.158,-.703,.131,1.101,1.834,1.970,1.339,.087,-1.360,-2.487,-2.937,-2.672,-1.952,
--1.153,-.558,-.251,-.159,-.171,-.235,-.360,-.547,-.745,-.868,-.865,-.766,-.656,-.610,-.628,-.649,
--.616,-.532,-.454,-.434,-.466,-.486,-.434,-.315,-.201,-.172,-.244,-.357,-.425,-.403,-.318,-.235,
--.197,-.186,-.153,-.065,.064,.192,.293,.379,.489,.641,.819,.982,1.105,1.200,1.299,1.422,
-1.548,1.642,1.685,1.700,1.741,1.846,2.015,2.215,2.408,2.585,2.761,2.951,3.150,3.333,3.482,3.605,
-3.733,3.899,4.110,4.346,4.576,4.778,4.948,5.085,5.187,5.248,5.268,5.264,5.262,5.284,5.332,5.392,
-5.444,5.482,5.515,5.559,5.627,5.718,5.821,5.922,6.008,6.071,6.110,6.133,6.150,6.165,6.173,6.159,
-6.112,6.041,5.971,5.929,5.928,5.950,5.959,5.922,5.831,5.703,5.566,5.439,5.330,5.238,5.160,5.094,
-5.037,4.976,4.900,4.807,4.701,4.593,4.480,4.347,4.182,3.983,3.772,3.577,3.414,3.275,3.137,2.984,
-2.815,2.640,2.465,2.278,2.070,1.845,1.632,1.464,1.352,1.267,1.160,.996,.779,.546,.331,.139,
--.061,-.297,-.572,-.851,-1.097,-1.298,-1.481,-1.687,-1.940,-2.225,-2.509,-2.767,-3.006,-3.252,-3.524,-3.822,
--4.123,-4.411,-4.688,-4.969,-5.270,-5.584,-5.896,-6.191,-6.476,-6.772,-7.093,-7.428,-7.747,-8.018,-8.233,-8.414,
--8.602,-8.831,-9.115,-9.442,-9.790,-10.141,-10.490,-10.841,-11.201,-11.568,-11.930,-12.265,-12.557,-12.804,-13.028,-13.266,
--13.548,-13.878,-14.229,-14.560,-14.843,-15.087,-15.327,-15.598,-15.914,-16.254,-16.585,-16.883,-17.148,-17.398,-17.643,-17.878,
--18.088,-18.265,-18.426,-18.599,-18.801,-19.025,-19.241,-19.416,-19.542,-19.639,-19.733,-19.838,-19.944,-20.023,-20.059,-20.058,
--20.048,-20.064,-20.125,-20.230,-20.359,-20.486,-20.586,-20.642,-20.653,-20.636,-20.624,-20.652,-20.743,-20.886,-21.046,-21.176,
--21.250,-21.276,-21.292,-21.346,-21.465,-21.644,-21.839,-21.989,-22.034,-21.941,-21.722,-21.428,-21.126,-20.854,-20.586,-20.228,
--19.676,-18.900,-18.011,-17.258,-16.928,-17.196,-18.023,-19.144,-20.187,-20.837,-20.966,-20.644,-20.055,-19.373,-18.690,-18.025,
--17.387,-16.824,-16.423,-16.253,-16.308,-16.491,-16.670,-16.745,-16.697,-16.585,-16.484,-16.436,-16.423,-16.392,-16.301,-16.151,
--15.984,-15.855,-15.787,-15.759,-15.721,-15.630,-15.485,-15.329,-15.221,-15.188,-15.193,-15.153,-14.986,-14.674,-14.289,-13.959,
--13.801,-13.844,-14.013,-14.177,-14.227,-14.151,-14.035,-14.011,-14.173,-14.526,-14.982,-15.416,-15.729,-15.891,-15.940,-15.948,
--15.981,-16.068,-16.201,-16.348,-16.477,-16.571,-16.634,-16.683,-16.736,-16.797,-16.857,-16.903,-16.932,-16.960,-17.019,-17.143,
--17.347,-17.613,-17.901,-18.160,-18.353,-18.462,-18.498,-18.484,-18.457,-18.458,-18.532,-18.723,-19.059,-19.533,-20.090,-20.630,
--21.046,-21.268,-21.303,-21.244,-21.226,-21.367,-21.714,-22.227,-22.817,-23.398,-23.930,-24.420,-24.901,-25.392,-25.888,-26.362,
--26.783,-27.130,-27.391,-27.573,-27.700,-27.819,-27.986,-28.242,-28.582,-28.956,-29.303,-29.594,-29.861,-30.175,-30.587,-31.086,
--31.596,-32.026,-32.330,-32.536,-32.717,-32.940,-33.223,-33.538,-33.846,-34.128,-34.390,-34.646,-34.901,-35.159,-35.429,-35.728,
--36.051,-36.359,-36.581,-36.663,-36.619,-36.540,-36.542,-36.693,-36.970,-37.281,-37.540,-37.722,-37.870,-38.033,-38.212,-38.361,
--38.430,-38.422,-38.395,-38.404,-38.442,-38.433,-38.296,-38.027,-37.727,-37.550,-37.595,-37.842,-38.163,-38.416,-38.528,-38.524,
--38.485,-38.478,-38.522,-38.599,-38.686,-38.775,-38.864,-38.935,-38.962,-38.924,-38.829,-38.709,-38.594,-38.481,-38.342,-38.148,
--37.894,-37.605,-37.309,-37.012,-36.700,-36.366,-36.029,-35.729,-35.491,-35.298,-35.093,-34.826,-34.501,-34.182,-33.952,-33.850,
--33.844,-33.847,-33.776,-33.589,-33.291,-32.891,-32.373,-31.696,-30.834,-29.824,-28.784,-27.873,-27.234,-26.931,-26.931,-27.121,
--27.356,-27.506,-27.481,-27.242,-26.792,-26.156,-25.368,-24.467,-23.495,-22.506,-21.558,-20.705,-19.981,-19.396,-18.943,-18.613,
--18.409,-18.347,-18.434,-18.642,-18.909,-19.152,-19.304,-19.340,-19.275,-19.138,-18.942,-18.672,-18.304,-17.840,-17.323,-16.825,
--16.399,-16.040,-15.677,-15.212,-14.571,-13.745,-12.774,-11.707,-10.551,-9.268,-7.810,-6.183,-4.473,-2.832,-1.411,-.289,
-.560,1.242,1.888,2.582,3.335,4.097,4.804,5.421,5.968,6.503,7.094,7.772,8.519,9.276,9.984,10.613,
-11.177,11.721,12.294,12.942,13.713,14.668,15.875,17.361,19.061,20.788,22.280,23.303,23.756,23.722,23.414,23.069,
-22.839,22.757,22.784,22.893,23.116,23.524,24.160,24.984,25.881,26.722,27.443,28.088,28.767,29.584,30.564,31.632,
-32.657,33.518,34.163,34.619,34.966,35.290,35.649,36.068,36.543,37.058,37.594,38.132,38.656,39.162,39.662,40.177,
-40.718,41.277,41.821,42.307,42.715,43.059,43.389,43.761,44.204,44.715,45.261,45.812,46.358,46.910,47.486,48.090,
-48.706,49.313,49.891,50.433,50.933,51.388,51.794,52.157,52.500,52.856,53.246,53.667,54.095,54.499,54.874,55.240,
-55.635,56.081,56.571,57.079,57.582,58.080,58.594,59.142,59.709,60.246,60.702,61.058,61.354,61.670,62.080,62.601,
-63.181,63.727,64.159,64.458,64.665,64.847,65.039,65.215,65.311,65.272,65.103,64.870,64.670,64.559,64.529,64.514,
-64.451,64.322,64.164,64.031,63.945,63.881,63.788,63.643,63.473,63.334,63.263,63.246,63.224,63.146,63.009,62.862,
-62.762,62.728,62.725,62.691,62.589,62.427,62.242,62.061,61.875,61.659,61.402,61.123,60.857,60.614,60.361,60.048,
-59.655,59.227,58.845,58.572,58.403,58.266,58.074,57.790,57.446,57.104,56.802,56.523,56.224,55.899,55.611,55.468,
-55.554,55.857,56.264,56.619,56.811,56.834,56.776,56.749,56.818,56.965,57.108,57.161,57.083,56.895,56.646,56.377,
-56.098,55.790,55.444,55.075,54.728,54.443,54.225,54.038,53.831,53.571,53.272,52.985,52.752,52.580,52.429,52.243,
-51.992,51.687,51.377,51.116,50.936,50.838,50.796,50.771,50.714,50.579,50.333,49.977,49.556,49.147,48.819,48.597,
-48.453,48.321,48.144,47.896,47.587,47.239,47.254,46.918,46.573,46.237,45.932,45.674,45.456,45.256,45.064,44.903,
-44.828,44.891,45.088,45.354,45.595,45.762,45.884,46.046,46.312,46.667,47.018,47.270,47.403,47.498,47.673,47.981,
-48.359,48.663,48.780,48.713,48.584,48.551,48.685,48.922,49.106,49.098,48.866,48.487,48.087,47.755,47.500,47.279,
-47.048,46.799,46.551,46.317,46.082,45.817,45.517,45.227,45.027,44.990,45.129,45.385,45.660,45.876,46.014,46.115,
-46.240,46.411,46.582,46.648,46.498,46.085,45.454,44.738,44.094,43.639,43.398,43.321,43.328,43.362,43.410,43.489,
-43.599,43.710,43.770,43.740,43.617,43.427,43.192,42.899,42.514,42.015,41.425,40.817,40.275,39.844,39.518,39.250,
-38.995,38.729,38.433,38.071,37.583,36.917,36.072,35.135,34.250,33.560,33.147,32.999,33.045,33.196,33.386,33.574,
-33.733,33.830,33.834,33.728,33.518,33.231,32.899,32.542,32.162,31.752,31.307,30.832,30.346,29.872,29.424,28.989,
-28.519,27.948,27.223,26.354,25.427,24.580,23.944,23.570,23.405,23.317,23.175,22.910,22.538,22.127,21.735,21.366,
-20.984,20.550,20.071,19.606,19.225,18.956,18.749,18.502,18.119,17.569,16.909,16.244,15.662,15.178,14.736,14.252,
-13.674,13.014,12.335,11.700,11.134,10.616,10.109,9.590,9.074,8.594,8.177,7.820,7.495,7.159,6.777,6.323,
-5.787,5.166,4.466,3.695,2.854,1.931,.911,-.200,-1.348,-2.432,-3.336,-3.991,-4.417,-4.722,-5.047,-5.506,
--6.128,-6.872,-7.666,-8.450,-9.208,-9.947,-10.675,-11.380,-12.029,-12.583,-13.022,-13.348,-13.598,-13.824,-14.081,-14.403,
--14.784,-15.185,-15.558,-15.878,-16.162,-16.447,-16.754,-17.056,-17.292,-17.419,-17.459,-17.507,-17.675,-18.021,-18.506,-19.023,
--19.480,-19.858,-20.211,-20.600,-21.015,-21.369,-21.563,-21.578,-21.504,-21.472,-21.541,-21.618,-21.510,-21.066,-20.324,-19.540,
--19.068,-19.161,-19.818,-20.800,-21.781,-22.546,-23.086,-23.562,-24.147,-24.901,-25.735,-26.497,-27.086,-27.523,-27.916,-28.377,
--28.939,-29.553,-30.132,-30.624,-31.029,-31.373,-31.665,-31.874,-31.956,-31.893,-31.728,-31.546,-31.440,-31.461,-31.612,-31.859,
--32.157,-32.461,-32.735,-32.953,-33.114,-33.252,-33.432,-33.717,-34.129,-34.634,-35.165,-35.658,-36.097,-36.502,-36.902,-37.303,
--37.681,-38.014,-38.306,-38.588,-38.890,-39.212,-39.514,-39.750,-39.912,-40.034,-40.170,-40.348,-40.553,-40.740,-40.881,-40.984,
--41.085,-41.210,-41.347,-41.457,-41.508,-41.493,-41.434,-41.356,-41.266,-41.160,-41.046,-40.951,-40.901,-40.900,-40.916,-40.918,
--40.924,-41.014,-41.294,-41.825,-42.562,-43.367,-44.077,-44.591,-44.897,-45.055,-45.140,-45.208,-45.299,-45.456,-45.728,-46.154,
--46.722,-47.362,-47.972,-48.451,-48.731,-48.776,-48.583,-48.194,-47.711,-47.275,-47.014,-46.966,-47.037,-47.049,-46.847,-46.399,
--45.809,-45.231,-44.752,-44.336,-43.872,-43.293,-42.658,-42.135,-41.887,-41.963,-42.251,-42.554,-42.704,-42.659,-42.511,-42.429,
--42.570,-43.013,-43.724,-44.578,-45.407,-46.068,-46.515,-46.814,-47.097,-47.459,-47.878,-48.214,-48.300,-48.073,-47.637,-47.210,
--46.977,-46.963,-47.027,-46.965,-46.667,-46.189,-45.711,-45.403,-45.321,-45.382,-45.443,-45.394,-45.214,-44.948,-44.663,-44.404,
--44.194,-44.045,-43.966,-43.953,-43.970,-43.964,-43.891,-43.748,-43.576,-43.438,-43.375,-43.383,-43.413,-43.400,-43.290,-43.065,
--42.747,-42.389,-42.053,-41.792,-41.629,-41.545,-41.495,-41.427,-41.304,-41.120,-40.893,-40.648,-40.393,-40.106,-39.729,-39.184,
--38.408,-37.403,-36.260,-35.143,-34.226,-33.606,-33.251,-33.019,-32.743,-32.335,-31.830,-31.344,-30.972,-30.715,-30.468,-30.100,
--29.540,-28.817,-28.029,-27.266,-26.565,-25.908,-25.277,-24.678,-24.144,-23.691,-23.287,-22.864,-22.361,-21.763,-21.107,-20.444,
--19.797,-19.156,-18.495,-17.804,-17.100,-16.403,-15.715,-15.020,-14.305,-13.585,-12.891,-12.241,-11.605,-10.907,-10.072,-9.088,
--8.019,-6.973,-6.028,-5.184,-4.374,-3.518,-2.585,-1.605,-.641,.254,1.062,1.782,2.409,2.926,3.332,3.666,
-4.000,4.395,4.863,5.354,5.803,6.189,6.562,7.012,7.599,8.305,9.039,9.705,10.256,10.723,11.175,11.671,
-12.223,12.807,13.396,13.975,14.541,15.087,15.594,16.048,16.449,16.806,17.111,17.332,17.427,17.398,17.319,17.316,
-17.497,17.874,18.346,18.761,19.007,19.085,19.087,19.126,19.255,19.448,19.641,19.792,19.916,20.054,20.240,20.464,
-20.695,20.906,21.100,21.302,21.535,21.817,22.160,22.580,23.085,23.652,24.213,24.683,25.000,25.168,25.238,25.270,
-25.278,25.231,25.086,24.833,24.492,24.085,23.601,23.016,22.353,21.737,21.363,21.395,21.835,22.489,23.058,23.297,
-23.147,22.731,22.251,21.856,21.590,21.424,21.335,21.324,21.388,21.467,21.450,21.247,20.871,20.448,20.140,20.039,
-20.108,20.230,20.301,20.301,20.282,20.296,20.341,20.370,20.345,20.280,20.228,20.213,20.205,20.143,20.015,19.896,
-19.908,20.110,20.432,20.703,20.782,20.677,20.570,20.695,21.178,21.960,22.848,23.668,24.371,25.010,25.597,25.955,
-25.705,24.408,21.802,17.988,13.454,8.913,5.070,2.407,1.092,1.006,1.852,3.272,4.925,6.530,7.881,8.856,
-9.427,9.657,9.673,9.618,9.590,9.608,9.627,9.574,9.403,9.117,8.760,8.377,7.986,7.580,7.141,6.677,
-6.221,5.817,5.486,5.213,4.952,4.655,4.302,3.914,3.539,3.218,2.956,2.711,2.412,1.998,1.450,.799,
-.103,-.577,-1.179,-1.624,-1.792,-1.563,-.903,.029,.870,1.180,.672,-.591,-2.178,-3.487,-4.058,-3.801,
--3.001,-2.106,-1.452,-1.123,-1.004,-.947,-.910,-.948,-1.112,-1.353,-1.538,-1.552,-1.395,-1.183,-1.049,-1.046,
--1.113,-1.154,-1.119,-1.039,-.979,-.962,-.949,-.890,-.781,-.684,-.672,-.762,-.890,-.964,-.935,-.832,
--.725,-.660,-.621,-.560,-.451,-.315,-.197,-.114,-.030,.112,.337,.606,.846,1.004,1.088,1.149,
-1.233,1.342,1.446,1.515,1.560,1.616,1.715,1.853,2.002,2.138,2.267,2.411,2.584,2.771,2.940,3.075,
-3.198,3.350,3.559,3.808,4.052,4.244,4.374,4.469,4.559,4.657,4.744,4.798,4.814,4.810,4.815,4.842,
-4.887,4.931,4.965,4.995,5.038,5.106,5.195,5.291,5.376,5.436,5.473,5.497,5.527,5.574,5.631,5.672,
-5.665,5.596,5.486,5.380,5.323,5.329,5.365,5.381,5.341,5.247,5.132,5.028,4.942,4.861,4.769,4.670,
-4.582,4.519,4.474,4.419,4.327,4.193,4.036,3.873,3.709,3.532,3.333,3.121,2.916,2.734,2.573,2.414,
-2.241,2.055,1.871,1.695,1.516,1.316,1.091,.867,.682,.558,.474,.381,.235,.028,-.211,-.445,
--.662,-.880,-1.124,-1.391,-1.652,-1.872,-2.044,-2.196,-2.370,-2.592,-2.854,-3.132,-3.405,-3.679,-3.966,-4.269,
--4.568,-4.841,-5.083,-5.320,-5.586,-5.898,-6.240,-6.573,-6.870,-7.138,-7.409,-7.710,-8.038,-8.362,-8.643,-8.871,
--9.070,-9.282,-9.542,-9.855,-10.201,-10.555,-10.900,-11.240,-11.584,-11.942,-12.310,-12.671,-13.006,-13.298,-13.549,-13.777,
--14.014,-14.286,-14.599,-14.938,-15.273,-15.583,-15.863,-16.129,-16.398,-16.678,-16.963,-17.241,-17.508,-17.767,-18.023,-18.272,
--18.500,-18.696,-18.869,-19.039,-19.230,-19.445,-19.664,-19.853,-19.996,-20.101,-20.196,-20.303,-20.420,-20.521,-20.578,-20.584,
--20.558,-20.537,-20.549,-20.602,-20.685,-20.781,-20.880,-20.974,-21.057,-21.117,-21.142,-21.135,-21.116,-21.114,-21.152,-21.229,
--21.319,-21.387,-21.414,-21.418,-21.444,-21.546,-21.746,-22.018,-22.286,-22.455,-22.459,-22.300,-22.052,-21.822,-21.688,-21.639,
--21.556,-21.277,-20.686,-19.810,-18.846,-18.095,-17.827,-18.155,-18.968,-19.979,-20.848,-21.317,-21.288,-20.822,-20.071,-19.202,
--18.351,-17.617,-17.071,-16.757,-16.682,-16.796,-16.997,-17.169,-17.230,-17.167,-17.029,-16.887,-16.782,-16.706,-16.618,-16.483,
--16.314,-16.166,-16.100,-16.125,-16.181,-16.165,-16.001,-15.700,-15.369,-15.150,-15.124,-15.247,-15.361,-15.286,-14.937,-14.391,
--13.844,-13.504,-13.463,-13.656,-13.907,-14.049,-14.024,-13.913,-13.865,-14.002,-14.332,-14.755,-15.121,-15.320,-15.341,-15.265,
--15.218,-15.295,-15.516,-15.822,-16.122,-16.337,-16.450,-16.495,-16.531,-16.598,-16.697,-16.794,-16.859,-16.887,-16.910,-16.971,
--17.099,-17.291,-17.518,-17.745,-17.950,-18.122,-18.254,-18.334,-18.352,-18.309,-18.240,-18.205,-18.281,-18.531,-18.970,-19.553,
--20.176,-20.713,-21.067,-21.219,-21.247,-21.291,-21.482,-21.878,-22.433,-23.035,-23.580,-24.036,-24.447,-24.887,-25.399,-25.960,
--26.495,-26.927,-27.216,-27.373,-27.443,-27.486,-27.556,-27.698,-27.931,-28.244,-28.592,-28.923,-29.217,-29.504,-29.845,-30.282,
--30.791,-31.288,-31.681,-31.939,-32.109,-32.285,-32.527,-32.826,-33.116,-33.343,-33.513,-33.696,-33.969,-34.365,-34.848,-35.344,
--35.779,-36.102,-36.279,-36.294,-36.159,-35.944,-35.776,-35.789,-36.048,-36.503,-37.015,-37.437,-37.700,-37.833,-37.911,-37.984,
--38.048,-38.074,-38.056,-38.033,-38.045,-38.083,-38.077,-37.953,-37.711,-37.451,-37.321,-37.414,-37.699,-38.044,-38.302,-38.408,
--38.400,-38.362,-38.355,-38.379,-38.399,-38.392,-38.371,-38.371,-38.406,-38.451,-38.467,-38.430,-38.348,-38.244,-38.127,-37.978,
--37.769,-37.489,-37.152,-36.787,-36.413,-36.034,-35.657,-35.302,-35.001,-34.774,-34.599,-34.427,-34.210,-33.942,-33.662,-33.427,
--33.262,-33.145,-33.026,-32.865,-32.659,-32.425,-32.162,-31.823,-31.335,-30.641,-29.767,-28.831,-28.005,-27.448,-27.229,-27.299,
--27.511,-27.686,-27.680,-27.426,-26.940,-26.285,-25.524,-24.693,-23.804,-22.877,-21.959,-21.125,-20.448,-19.956,-19.617,-19.362,
--19.129,-18.903,-18.720,-18.631,-18.650,-18.739,-18.821,-18.832,-18.756,-18.626,-18.486,-18.351,-18.186,-17.934,-17.563,-17.101,
--16.625,-16.208,-15.869,-15.547,-15.135,-14.539,-13.723,-12.709,-11.547,-10.266,-8.867,-7.351,-5.760,-4.195,-2.786,-1.636,
--.762,-.093,.494,1.117,1.832,2.626,3.438,4.202,4.882,5.492,6.085,6.719,7.423,8.172,8.898,9.534,
-10.058,10.510,10.978,11.540,12.234,13.060,14.010,15.109,16.393,17.862,19.425,20.898,22.079,22.853,23.251,23.422,
-23.530,23.663,23.802,23.891,23.930,24.015,24.294,24.862,25.686,26.614,27.476,28.188,28.804,29.468,30.301,31.315,
-32.401,33.391,34.157,34.666,34.980,35.207,35.436,35.717,36.056,36.443,36.865,37.311,37.770,38.233,38.701,39.188,
-39.717,40.292,40.890,41.462,41.958,42.361,42.696,43.022,43.392,43.831,44.329,44.863,45.422,46.011,46.642,47.309,
-47.980,48.617,49.195,49.720,50.217,50.703,51.172,51.603,51.983,52.325,52.667,53.044,53.463,53.902,54.328,54.727,
-55.122,55.550,56.036,56.568,57.109,57.626,58.111,58.590,59.094,59.631,60.171,60.666,61.080,61.422,61.745,62.117,
-62.580,63.119,63.669,64.148,64.506,64.749,64.927,65.093,65.261,65.390,65.416,65.304,65.080,64.830,64.643,64.557,
-64.539,64.513,64.414,64.236,64.020,63.822,63.666,63.539,63.414,63.284,63.170,63.098,63.067,63.048,63.004,62.925,
-62.834,62.766,62.735,62.717,62.675,62.588,62.467,62.333,62.193,62.023,61.796,61.516,61.225,60.976,60.786,60.609,
-60.370,60.024,59.603,59.191,58.868,58.643,58.451,58.208,57.880,57.509,57.174,56.919,56.712,56.474,56.147,55.757,
-55.411,55.233,55.277,55.494,55.752,55.923,55.942,55.835,55.684,55.567,55.517,55.519,55.540,55.559,55.575,55.591,
-55.591,55.535,55.376,55.101,54.749,54.398,54.124,53.949,53.831,53.693,53.478,53.187,52.880,52.625,52.456,52.347,
-52.238,52.083,51.874,51.639,51.417,51.226,51.065,50.919,50.777,50.624,50.445,50.213,49.915,49.565,49.206,48.889,
-48.644,48.458,48.291,48.098,47.858,47.572,47.254,47.312,47.017,46.701,46.376,46.068,45.806,45.601,45.447,45.333,
-45.263,45.262,45.349,45.514,45.708,45.874,45.992,46.104,46.279,46.558,46.908,47.241,47.481,47.625,47.750,47.951,
-48.258,48.604,48.867,48.972,48.947,48.911,48.979,49.168,49.369,49.417,49.202,48.742,48.169,47.643,47.258,47.004,
-46.808,46.597,46.353,46.101,45.868,45.653,45.428,45.176,44.920,44.720,44.635,44.682,44.817,44.971,45.100,45.217,
-45.382,45.652,46.023,46.404,46.652,46.634,46.300,45.714,45.022,44.389,43.923,43.642,43.499,43.428,43.398,43.418,
-43.505,43.645,43.778,43.826,43.742,43.537,43.263,42.971,42.667,42.319,41.894,41.400,40.890,40.426,40.039,39.708,
-39.395,39.081,38.791,38.560,38.386,38.205,37.909,37.413,36.713,35.891,35.079,34.398,33.916,33.645,33.559,33.609,
-33.735,33.864,33.925,33.873,33.700,33.438,33.131,32.810,32.477,32.119,31.721,31.290,30.849,30.428,30.052,29.717,
-29.390,29.006,28.494,27.809,26.967,26.057,25.215,24.557,24.128,23.878,23.696,23.477,23.179,22.828,22.481,22.173,
-21.887,21.572,21.189,20.751,20.316,19.953,19.679,19.446,19.158,18.736,18.168,17.521,16.902,16.392,15.996,15.649,
-15.261,14.775,14.194,13.568,12.944,12.339,11.733,11.102,10.443,9.785,9.165,8.605,8.101,7.630,7.167,6.697,
-6.203,5.666,5.063,4.379,3.612,2.764,1.835,.817,-.282,-1.413,-2.481,-3.373,-4.022,-4.451,-4.775,-5.148,
--5.690,-6.437,-7.342,-8.312,-9.262,-10.133,-10.901,-11.555,-12.090,-12.511,-12.836,-13.096,-13.328,-13.569,-13.851,-14.190,
--14.583,-15.002,-15.404,-15.750,-16.035,-16.292,-16.571,-16.896,-17.241,-17.546,-17.765,-17.911,-18.056,-18.287,-18.635,-19.056,
--19.462,-19.796,-20.075,-20.365,-20.715,-21.095,-21.407,-21.562,-21.555,-21.478,-21.449,-21.498,-21.528,-21.377,-20.951,-20.335,
--19.785,-19.591,-19.910,-20.670,-21.625,-22.504,-23.171,-23.677,-24.183,-24.823,-25.607,-26.421,-27.122,-27.642,-28.029,-28.408,
--28.881,-29.469,-30.106,-30.699,-31.190,-31.581,-31.905,-32.182,-32.389,-32.480,-32.436,-32.288,-32.117,-32.013,-32.030,-32.172,
--32.404,-32.683,-32.975,-33.254,-33.500,-33.703,-33.872,-34.047,-34.282,-34.619,-35.062,-35.575,-36.108,-36.625,-37.115,-37.581,
--38.023,-38.430,-38.792,-39.112,-39.409,-39.691,-39.947,-40.145,-40.267,-40.331,-40.398,-40.531,-40.754,-41.038,-41.320,-41.551,
--41.726,-41.867,-42.001,-42.124,-42.218,-42.268,-42.279,-42.266,-42.234,-42.164,-42.039,-41.873,-41.717,-41.630,-41.629,-41.677,
--41.715,-41.724,-41.761,-41.928,-42.305,-42.886,-43.575,-44.244,-44.795,-45.196,-45.460,-45.622,-45.725,-45.838,-46.064,-46.500,
--47.177,-48.016,-48.853,-49.521,-49.932,-50.097,-50.094,-49.996,-49.854,-49.709,-49.622,-49.651,-49.791,-49.928,-49.882,-49.509,
--48.825,-48.005,-47.276,-46.749,-46.340,-45.836,-45.070,-44.064,-43.042,-42.287,-41.965,-42.033,-42.292,-42.525,-42.627,-42.638,
--42.689,-42.916,-43.396,-44.125,-45.028,-45.980,-46.842,-47.514,-47.971,-48.271,-48.502,-48.706,-48.840,-48.804,-48.535,-48.082,
--47.603,-47.270,-47.150,-47.162,-47.130,-46.911,-46.498,-46.015,-45.634,-45.455,-45.450,-45.492,-45.443,-45.234,-44.888,-44.497,
--44.166,-43.963,-43.896,-43.924,-43.978,-43.991,-43.931,-43.807,-43.663,-43.550,-43.504,-43.526,-43.588,-43.647,-43.656,-43.583,
--43.411,-43.147,-42.831,-42.519,-42.269,-42.106,-42.015,-41.945,-41.837,-41.655,-41.398,-41.096,-40.783,-40.478,-40.157,-39.758,
--39.199,-38.418,-37.424,-36.321,-35.285,-34.479,-33.973,-33.696,-33.477,-33.154,-32.670,-32.096,-31.560,-31.150,-30.837,-30.511,
--30.060,-29.456,-28.760,-28.063,-27.414,-26.796,-26.162,-25.497,-24.843,-24.261,-23.775,-23.342,-22.876,-22.316,-21.661,-20.967,
--20.293,-19.658,-19.037,-18.395,-17.721,-17.033,-16.351,-15.674,-14.979,-14.250,-13.503,-12.773,-12.079,-11.390,-10.634,-9.752,
--8.745,-7.689,-6.685,-5.789,-4.975,-4.158,-3.256,-2.255,-1.219,-.245,.594,1.280,1.844,2.328,2.768,3.188,
-3.611,4.057,4.531,5.009,5.450,5.833,6.183,6.569,7.062,7.684,8.389,9.091,9.722,10.273,10.785,11.308,
-11.865,12.444,13.024,13.602,14.189,14.788,15.372,15.898,16.336,16.697,17.018,17.320,17.581,17.750,17.802,17.787,
-17.817,17.993,18.330,18.728,19.041,19.173,19.146,19.077,19.094,19.245,19.485,19.727,19.914,20.057,20.212,20.420,
-20.678,20.951,21.206,21.445,21.694,21.980,22.317,22.704,23.142,23.629,24.147,24.649,25.078,25.394,25.597,25.722,
-25.794,25.805,25.714,25.492,25.144,24.710,24.213,23.640,22.972,22.253,21.636,21.335,21.495,22.070,22.809,23.381,
-23.556,23.324,22.864,22.397,22.045,21.804,21.618,21.473,21.420,21.499,21.651,21.719,21.544,21.095,20.512,20.022,
-19.795,19.841,20.030,20.203,20.276,20.262,20.226,20.206,20.199,20.182,20.150,20.117,20.087,20.041,19.964,19.883,
-19.878,20.024,20.313,20.631,20.828,20.838,20.753,20.780,21.101,21.744,22.568,23.372,24.041,24.593,25.089,25.468,
-25.444,24.577,22.484,19.086,14.727,10.097,6.000,3.078,1.630,1.572,2.538,4.056,5.702,7.193,8.396,9.283,
-9.864,10.162,10.215,10.092,9.895,9.722,9.617,9.556,9.459,9.257,8.934,8.532,8.112,7.701,7.281,6.814,
-6.290,5.748,5.260,4.883,4.612,4.389,4.134,3.803,3.410,3.018,2.690,2.443,2.232,1.971,1.585,1.056,
-.423,-.259,-.949,-1.634,-2.269,-2.733,-2.833,-2.421,-1.545,-.540,.080,-.120,-1.218,-2.833,-4.302,-5.041,
--4.860,-4.017,-3.015,-2.266,-1.897,-1.778,-1.720,-1.659,-1.665,-1.822,-2.095,-2.324,-2.348,-2.136,-1.819,-1.578,
--1.510,-1.571,-1.640,-1.636,-1.574,-1.523,-1.518,-1.528,-1.488,-1.378,-1.253,-1.197,-1.243,-1.340,-1.398,-1.363,
--1.263,-1.168,-1.121,-1.101,-1.050,-.935,-.779,-.637,-.532,-.427,-.265,-.021,.255,.481,.604,.648,
-.684,.771,.910,1.049,1.142,1.187,1.224,1.295,1.406,1.534,1.655,1.776,1.921,2.101,2.295,2.465,
-2.595,2.716,2.877,3.106,3.376,3.623,3.789,3.871,3.913,3.970,4.065,4.177,4.266,4.313,4.327,4.335,
-4.358,4.395,4.433,4.463,4.490,4.525,4.578,4.647,4.722,4.791,4.842,4.872,4.890,4.913,4.954,5.011,
-5.058,5.057,4.987,4.866,4.746,4.681,4.688,4.731,4.750,4.707,4.611,4.507,4.433,4.386,4.334,4.245,
-4.123,4.008,3.934,3.901,3.871,3.794,3.652,3.463,3.265,3.078,2.898,2.708,2.507,2.308,2.128,1.963,
-1.792,1.596,1.376,1.156,.959,.785,.613,.419,.208,.007,-.159,-.289,-.412,-.566,-.763,-.990,
--1.222,-1.447,-1.676,-1.921,-2.177,-2.418,-2.621,-2.784,-2.933,-3.103,-3.310,-3.545,-3.792,-4.044,-4.317,-4.621,
--4.947,-5.265,-5.545,-5.786,-6.022,-6.294,-6.616,-6.963,-7.288,-7.562,-7.794,-8.024,-8.287,-8.585,-8.892,-9.177,
--9.432,-9.679,-9.950,-10.261,-10.606,-10.960,-11.306,-11.640,-11.972,-12.310,-12.654,-12.996,-13.325,-13.636,-13.928,-14.206,
--14.476,-14.745,-15.020,-15.308,-15.610,-15.922,-16.240,-16.556,-16.866,-17.161,-17.435,-17.685,-17.919,-18.147,-18.381,-18.620,
--18.854,-19.065,-19.250,-19.422,-19.603,-19.805,-20.022,-20.227,-20.398,-20.529,-20.639,-20.753,-20.876,-20.993,-21.072,-21.097,
--21.076,-21.044,-21.038,-21.071,-21.132,-21.194,-21.238,-21.264,-21.292,-21.339,-21.406,-21.472,-21.512,-21.513,-21.485,-21.459,
--21.459,-21.491,-21.534,-21.563,-21.569,-21.582,-21.657,-21.838,-22.125,-22.452,-22.712,-22.811,-22.721,-22.502,-22.274,-22.154,
--22.185,-22.298,-22.335,-22.125,-21.573,-20.727,-19.787,-19.036,-18.729,-18.976,-19.691,-20.609,-21.391,-21.753,-21.565,-20.884,
--19.910,-18.890,-18.034,-17.460,-17.193,-17.178,-17.325,-17.529,-17.696,-17.768,-17.730,-17.611,-17.463,-17.322,-17.192,-17.047,
--16.866,-16.662,-16.494,-16.423,-16.458,-16.529,-16.513,-16.316,-15.946,-15.534,-15.260,-15.235,-15.412,-15.596,-15.559,-15.179,
--14.530,-13.839,-13.362,-13.234,-13.409,-13.704,-13.932,-14.004,-13.970,-13.960,-14.082,-14.347,-14.661,-14.891,-14.944,-14.828,
--14.650,-14.557,-14.655,-14.959,-15.384,-15.797,-16.094,-16.244,-16.297,-16.334,-16.413,-16.534,-16.659,-16.753,-16.815,-16.879,
--16.980,-17.127,-17.294,-17.449,-17.580,-17.702,-17.837,-17.982,-18.102,-18.154,-18.118,-18.022,-17.938,-17.952,-18.132,-18.508,
--19.056,-19.704,-20.341,-20.857,-21.192,-21.375,-21.518,-21.756,-22.160,-22.696,-23.246,-23.695,-24.019,-24.303,-24.675,-25.210,
--25.865,-26.505,-26.986,-27.241,-27.307,-27.286,-27.281,-27.354,-27.523,-27.771,-28.071,-28.386,-28.684,-28.952,-29.212,-29.511,
--29.888,-30.336,-30.795,-31.194,-31.496,-31.728,-31.941,-32.155,-32.332,-32.409,-32.378,-32.327,-32.409,-32.753,-33.367,-34.128,
--34.846,-35.368,-35.636,-35.680,-35.573,-35.390,-35.211,-35.129,-35.235,-35.573,-36.096,-36.671,-37.148,-37.442,-37.568,-37.606,
--37.630,-37.661,-37.681,-37.675,-37.662,-37.671,-37.698,-37.694,-37.601,-37.421,-37.234,-37.161,-37.275,-37.541,-37.838,-38.046,
--38.124,-38.120,-38.118,-38.157,-38.209,-38.220,-38.168,-38.088,-38.048,-38.083,-38.171,-38.250,-38.265,-38.202,-38.078,-37.914,
--37.705,-37.431,-37.080,-36.667,-36.225,-35.788,-35.373,-34.984,-34.630,-34.326,-34.084,-33.896,-33.734,-33.564,-33.373,-33.165,
--32.955,-32.746,-32.522,-32.268,-31.983,-31.685,-31.392,-31.092,-30.740,-30.282,-29.693,-29.015,-28.350,-27.828,-27.538,-27.491,
--27.598,-27.706,-27.660,-27.366,-26.829,-26.138,-25.408,-24.717,-24.077,-23.442,-22.772,-22.077,-21.421,-20.888,-20.518,-20.280,
--20.098,-19.899,-19.667,-19.439,-19.268,-19.171,-19.106,-19.003,-18.811,-18.539,-18.247,-17.998,-17.811,-17.642,-17.416,-17.087,
--16.675,-16.261,-15.931,-15.706,-15.515,-15.223,-14.697,-13.873,-12.772,-11.470,-10.054,-8.589,-7.123,-5.709,-4.416,-3.311,
--2.424,-1.722,-1.117,-.509,.175,.954,1.802,2.670,3.508,4.287,5.006,5.691,6.375,7.075,7.768,8.399,
-8.915,9.317,9.680,10.124,10.744,11.556,12.495,13.476,14.466,15.505,16.656,17.924,19.218,20.399,21.367,22.136,
-22.811,23.496,24.197,24.818,25.240,25.437,25.528,25.710,26.137,26.811,27.602,28.344,28.966,29.537,30.202,31.061,
-32.089,33.138,34.027,34.648,35.015,35.230,35.407,35.615,35.861,36.119,36.376,36.640,36.934,37.274,37.661,38.092,
-38.573,39.113,39.712,40.342,40.953,41.499,41.963,42.370,42.767,43.191,43.652,44.139,44.644,45.183,45.784,46.461,
-47.186,47.899,48.538,49.078,49.546,49.995,50.463,50.945,51.406,51.813,52.168,52.508,52.879,53.300,53.758,54.218,
-54.662,55.097,55.552,56.045,56.570,57.099,57.602,58.073,58.532,59.006,59.511,60.036,60.547,61.012,61.418,61.782,
-62.148,62.561,63.038,63.556,64.057,64.476,64.780,64.986,65.145,65.299,65.444,65.530,65.493,65.319,65.060,64.812,
-64.652,64.589,64.561,64.483,64.307,64.051,63.774,63.531,63.339,63.183,63.044,62.924,62.838,62.796,62.786,62.779,
-62.754,62.713,62.673,62.642,62.608,62.548,62.454,62.338,62.217,62.089,61.928,61.704,61.423,61.136,60.907,60.759,
-60.650,60.495,60.229,59.857,59.446,59.074,58.767,58.489,58.184,57.831,57.477,57.189,56.998,56.856,56.664,56.340,
-55.888,55.409,55.037,54.867,54.894,55.024,55.131,55.119,54.969,54.722,54.448,54.203,54.015,53.888,53.823,53.826,
-53.897,54.018,54.145,54.221,54.212,54.133,54.036,53.977,53.968,53.959,53.870,53.651,53.317,52.949,52.639,52.431,
-52.300,52.181,52.022,51.816,51.597,51.396,51.216,51.029,50.807,50.548,50.278,50.026,49.801,49.586,49.364,49.130,
-48.896,48.680,48.481,48.286,48.076,47.842,47.586,47.312,47.370,47.122,46.850,46.549,46.237,45.956,45.748,45.636,
-45.615,45.663,45.757,45.876,46.000,46.108,46.193,46.271,46.384,46.570,46.831,47.123,47.377,47.552,47.668,47.799,
-48.018,48.336,48.690,48.979,49.141,49.190,49.203,49.244,49.306,49.298,49.108,48.687,48.101,47.498,47.027,46.754,
-46.634,46.558,46.427,46.214,45.956,45.715,45.520,45.355,45.186,45.002,44.835,44.738,44.741,44.826,44.944,45.053,
-45.159,45.316,45.590,45.991,46.447,46.817,46.952,46.771,46.296,45.647,44.976,44.408,44.001,43.746,43.609,43.562,
-43.596,43.698,43.828,43.915,43.887,43.713,43.419,43.071,42.729,42.406,42.077,41.709,41.302,40.896,40.533,40.223,
-39.929,39.603,39.238,38.890,38.639,38.535,38.540,38.544,38.413,38.060,37.478,36.735,35.937,35.190,34.584,34.171,
-33.961,33.908,33.923,33.908,33.795,33.571,33.274,32.951,32.628,32.296,31.931,31.519,31.076,30.643,30.262,29.958,
-29.717,29.487,29.189,28.746,28.115,27.326,26.478,25.700,25.093,24.676,24.384,24.115,23.794,23.419,23.044,22.730,
-22.490,22.277,22.022,21.679,21.264,20.839,20.468,20.168,19.895,19.571,19.134,18.582,17.974,17.393,16.897,16.486,
-16.107,15.697,15.224,14.699,14.155,13.612,13.063,12.478,11.844,11.173,10.501,9.857,9.246,8.647,8.043,7.433,
-6.835,6.255,5.675,5.053,4.350,3.556,2.684,1.756,.784,-.223,-1.239,-2.203,-3.035,-3.683,-4.164,-4.570,
--5.029,-5.649,-6.467,-7.448,-8.507,-9.546,-10.478,-11.246,-11.823,-12.222,-12.492,-12.703,-12.915,-13.166,-13.464,-13.806,
--14.187,-14.603,-15.036,-15.452,-15.811,-16.100,-16.347,-16.605,-16.913,-17.261,-17.600,-17.883,-18.108,-18.325,-18.593,-18.929,
--19.294,-19.623,-19.887,-20.120,-20.389,-20.724,-21.081,-21.366,-21.503,-21.504,-21.451,-21.430,-21.441,-21.397,-21.190,-20.807,
--20.388,-20.162,-20.323,-20.899,-21.737,-22.597,-23.296,-23.806,-24.239,-24.747,-25.405,-26.165,-26.904,-27.511,-27.970,-28.357,
--28.782,-29.316,-29.943,-30.586,-31.160,-31.625,-31.997,-32.315,-32.600,-32.829,-32.954,-32.949,-32.839,-32.697,-32.610,-32.636,
--32.781,-33.013,-33.291,-33.585,-33.878,-34.155,-34.402,-34.612,-34.799,-35.008,-35.287,-35.669,-36.149,-36.691,-37.249,-37.788,
--38.290,-38.748,-39.160,-39.527,-39.856,-40.152,-40.407,-40.596,-40.696,-40.709,-40.687,-40.712,-40.858,-41.143,-41.516,-41.893,
--42.206,-42.440,-42.616,-42.765,-42.898,-43.009,-43.094,-43.163,-43.227,-43.266,-43.239,-43.113,-42.905,-42.696,-42.580,-42.610,
--42.750,-42.918,-43.044,-43.132,-43.253,-43.483,-43.848,-44.307,-44.784,-45.217,-45.572,-45.832,-45.989,-46.069,-46.159,-46.401,
--46.924,-47.747,-48.731,-49.644,-50.292,-50.629,-50.766,-50.865,-51.014,-51.189,-51.313,-51.363,-51.400,-51.498,-51.640,-51.689,
--51.473,-50.931,-50.184,-49.455,-48.907,-48.505,-48.046,-47.313,-46.253,-45.024,-43.898,-43.089,-42.643,-42.460,-42.406,-42.411,
--42.488,-42.690,-43.057,-43.598,-44.317,-45.211,-46.245,-47.321,-48.283,-48.984,-49.364,-49.477,-49.441,-49.348,-49.208,-48.973,
--48.618,-48.196,-47.828,-47.614,-47.558,-47.550,-47.440,-47.143,-46.693,-46.218,-45.847,-45.630,-45.511,-45.375,-45.130,-44.765,
--44.357,-44.018,-43.828,-43.789,-43.831,-43.855,-43.798,-43.662,-43.509,-43.417,-43.431,-43.543,-43.703,-43.853,-43.952,-43.978,
--43.926,-43.799,-43.611,-43.394,-43.188,-43.020,-42.889,-42.760,-42.590,-42.350,-42.046,-41.704,-41.351,-41.000,-40.644,-40.259,
--39.806,-39.240,-38.527,-37.678,-36.766,-35.913,-35.228,-34.745,-34.393,-34.035,-33.564,-32.970,-32.338,-31.779,-31.331,-30.937,
--30.491,-29.929,-29.278,-28.630,-28.056,-27.548,-27.031,-26.430,-25.740,-25.032,-24.387,-23.834,-23.324,-22.777,-22.144,-21.447,
--20.748,-20.096,-19.488,-18.887,-18.256,-17.597,-16.932,-16.280,-15.627,-14.941,-14.206,-13.436,-12.666,-11.908,-11.136,-10.296,
--9.360,-8.361,-7.378,-6.483,-5.680,-4.894,-4.021,-3.001,-1.872,-.751,.225,.978,1.515,1.911,2.261,2.632,
-3.054,3.523,4.016,4.503,4.955,5.359,5.729,6.112,6.565,7.120,7.762,8.439,9.092,9.698,10.274,10.852,
-11.444,12.030,12.582,13.099,13.621,14.193,14.827,15.473,16.049,16.500,16.837,17.121,17.406,17.691,17.925,18.061,
-18.116,18.175,18.328,18.597,18.905,19.135,19.211,19.161,19.097,19.128,19.289,19.530,19.772,19.974,20.159,20.384,
-20.679,21.020,21.356,21.648,21.909,22.183,22.515,22.921,23.388,23.889,24.397,24.881,25.300,25.621,25.837,25.975,
-26.075,26.147,26.150,26.012,25.690,25.209,24.648,24.074,23.504,22.913,22.317,21.828,21.629,21.854,22.463,23.217,
-23.795,23.971,23.737,23.269,22.783,22.397,22.102,21.842,21.620,21.510,21.569,21.739,21.833,21.654,21.140,20.433,
-19.800,19.465,19.478,19.708,19.957,20.085,20.075,19.991,19.911,19.868,19.858,19.865,19.886,19.924,19.979,20.057,
-20.172,20.340,20.548,20.739,20.839,20.823,20.768,20.836,21.171,21.797,22.581,23.326,23.905,24.332,24.694,24.988,
-24.990,24.281,22.451,19.352,15.253,10.799,6.783,3.872,2.410,2.361,3.387,4.995,6.704,8.164,9.217,9.878,
-10.261,10.478,10.579,10.559,10.403,10.141,9.845,9.589,9.389,9.204,8.964,8.632,8.226,7.793,7.364,6.930,
-6.461,5.945,5.412,4.918,4.508,4.182,3.895,3.590,3.239,2.854,2.482,2.166,1.918,1.704,1.463,1.140,
-.710,.185,-.418,-1.107,-1.907,-2.790,-3.605,-4.073,-3.910,-3.040,-1.746,-.624,-.303,-1.074,-2.681,-4.429,
--5.569,-5.711,-4.997,-3.933,-3.030,-2.520,-2.323,-2.239,-2.168,-2.164,-2.325,-2.637,-2.934,-3.025,-2.843,-2.502,
--2.200,-2.063,-2.067,-2.095,-2.062,-1.983,-1.938,-1.969,-2.033,-2.043,-1.956,-1.822,-1.736,-1.752,-1.828,-1.873,
--1.827,-1.714,-1.612,-1.572,-1.567,-1.527,-1.404,-1.221,-1.045,-.918,-.817,-.685,-.492,-.275,-.107,-.028,
--.003,.046,.174,.362,.539,.645,.682,.709,.780,.906,1.051,1.181,1.296,1.427,1.594,1.782,
-1.950,2.077,2.189,2.337,2.555,2.816,3.054,3.207,3.273,3.300,3.352,3.458,3.596,3.723,3.805,3.840,
-3.849,3.852,3.860,3.877,3.903,3.942,3.991,4.045,4.099,4.152,4.208,4.266,4.314,4.343,4.350,4.350,
-4.357,4.366,4.353,4.292,4.186,4.077,4.021,4.038,4.096,4.133,4.100,4.004,3.897,3.824,3.790,3.754,
-3.672,3.544,3.412,3.325,3.291,3.273,3.214,3.084,2.900,2.701,2.513,2.332,2.141,1.935,1.734,1.559,
-1.407,1.248,1.046,.796,.527,.285,.093,-.062,-.217,-.394,-.592,-.788,-.968,-1.137,-1.314,-1.510,
--1.725,-1.948,-2.176,-2.411,-2.657,-2.903,-3.131,-3.328,-3.503,-3.678,-3.874,-4.091,-4.311,-4.522,-4.733,-4.974,
--5.265,-5.598,-5.937,-6.245,-6.516,-6.776,-7.059,-7.374,-7.696,-7.988,-8.233,-8.447,-8.669,-8.924,-9.209,-9.500,
--9.780,-10.051,-10.335,-10.648,-10.988,-11.335,-11.673,-12.000,-12.332,-12.681,-13.043,-13.395,-13.717,-14.003,-14.270,-14.543,
--14.836,-15.148,-15.461,-15.759,-16.039,-16.310,-16.589,-16.888,-17.208,-17.533,-17.844,-18.124,-18.367,-18.585,-18.794,-19.007,
--19.223,-19.431,-19.620,-19.794,-19.966,-20.155,-20.363,-20.577,-20.775,-20.940,-21.080,-21.210,-21.343,-21.474,-21.579,-21.635,
--21.638,-21.608,-21.578,-21.578,-21.613,-21.668,-21.714,-21.729,-21.713,-21.686,-21.675,-21.698,-21.752,-21.811,-21.845,-21.842,
--21.818,-21.806,-21.828,-21.881,-21.932,-21.952,-21.942,-21.945,-22.026,-22.218,-22.495,-22.775,-22.958,-22.982,-22.862,-22.681,
--22.549,-22.547,-22.686,-22.880,-22.974,-22.795,-22.237,-21.336,-20.301,-19.459,-19.122,-19.430,-20.262,-21.263,-21.994,-22.134,
--21.612,-20.614,-19.470,-18.490,-17.851,-17.573,-17.568,-17.718,-17.923,-18.111,-18.232,-18.257,-18.185,-18.042,-17.868,-17.688,
--17.497,-17.278,-17.032,-16.797,-16.633,-16.568,-16.565,-16.524,-16.352,-16.040,-15.684,-15.439,-15.403,-15.532,-15.649,-15.540,
--15.096,-14.392,-13.655,-13.137,-12.981,-13.156,-13.495,-13.807,-13.982,-14.029,-14.040,-14.108,-14.267,-14.470,-14.627,-14.661,
--14.565,-14.411,-14.318,-14.393,-14.663,-15.064,-15.471,-15.773,-15.929,-15.983,-16.019,-16.101,-16.236,-16.387,-16.517,-16.623,
--16.733,-16.869,-17.022,-17.154,-17.242,-17.301,-17.377,-17.505,-17.670,-17.813,-17.875,-17.843,-17.766,-17.725,-17.787,-17.986,
--18.327,-18.800,-19.383,-20.025,-20.637,-21.132,-21.475,-21.726,-21.999,-22.386,-22.879,-23.368,-23.735,-23.954,-24.131,-24.435,
--24.970,-25.687,-26.407,-26.933,-27.178,-27.202,-27.152,-27.163,-27.290,-27.509,-27.769,-28.032,-28.285,-28.524,-28.746,-28.961,
--29.200,-29.507,-29.900,-30.352,-30.797,-31.166,-31.425,-31.562,-31.572,-31.440,-31.173,-30.852,-30.647,-30.754,-31.278,-32.148,
--33.131,-33.950,-34.432,-34.585,-34.551,-34.499,-34.522,-34.631,-34.803,-35.036,-35.355,-35.762,-36.212,-36.616,-36.906,-37.075,
--37.171,-37.252,-37.340,-37.416,-37.453,-37.454,-37.440,-37.423,-37.385,-37.296,-37.161,-37.040,-37.016,-37.132,-37.348,-37.561,
--37.684,-37.704,-37.687,-37.713,-37.805,-37.918,-37.981,-37.966,-37.916,-37.903,-37.971,-38.093,-38.194,-38.207,-38.110,-37.925,
--37.684,-37.396,-37.049,-36.635,-36.169,-35.694,-35.254,-34.869,-34.535,-34.235,-33.954,-33.689,-33.445,-33.229,-33.044,-32.884,
--32.739,-32.584,-32.388,-32.127,-31.792,-31.395,-30.952,-30.468,-29.937,-29.352,-28.732,-28.135,-27.643,-27.331,-27.234,-27.322,
--27.507,-27.663,-27.664,-27.421,-26.919,-26.226,-25.467,-24.765,-24.187,-23.717,-23.282,-22.812,-22.297,-21.786,-21.350,-21.027,
--20.796,-20.599,-20.387,-20.159,-19.950,-19.793,-19.680,-19.554,-19.348,-19.031,-18.633,-18.226,-17.878,-17.607,-17.370,-17.097,
--16.749,-16.351,-15.986,-15.742,-15.639,-15.594,-15.444,-15.017,-14.214,-13.049,-11.634,-10.121,-8.642,-7.285,-6.094,-5.081,
--4.234,-3.515,-2.862,-2.208,-1.501,-.721,.123,1.009,1.911,2.808,3.675,4.491,5.254,5.977,6.675,7.339,
-7.926,8.391,8.739,9.051,9.465,10.093,10.950,11.945,12.947,13.879,14.762,15.675,16.672,17.723,18.742,19.678,
-20.574,21.546,22.682,23.943,25.154,26.110,26.708,27.017,27.226,27.515,27.948,28.464,28.971,29.449,29.977,30.670,
-31.575,32.609,33.597,34.377,34.888,35.190,35.403,35.621,35.863,36.087,36.247,36.342,36.419,36.542,36.753,37.061,
-37.454,37.923,38.466,39.078,39.735,40.392,41.007,41.562,42.073,42.570,43.075,43.584,44.086,44.581,45.096,45.671,
-46.325,47.031,47.725,48.344,48.865,49.318,49.760,50.230,50.724,51.205,51.634,52.006,52.354,52.723,53.142,53.607,
-54.097,54.589,55.075,55.559,56.047,56.535,57.017,57.490,57.962,58.441,58.933,59.436,59.940,60.433,60.902,61.336,
-61.732,62.104,62.482,62.904,63.386,63.902,64.391,64.784,65.054,65.227,65.361,65.491,65.604,65.641,65.552,65.346,
-65.093,64.881,64.756,64.692,64.617,64.465,64.226,63.937,63.650,63.394,63.167,62.960,62.780,62.652,62.594,62.596,
-62.624,62.643,62.634,62.605,62.563,62.503,62.413,62.286,62.136,61.984,61.842,61.693,61.507,61.278,61.033,60.819,
-60.661,60.536,60.380,60.136,59.799,59.415,59.047,58.725,58.432,58.133,57.817,57.512,57.263,57.084,56.930,56.717,
-56.382,55.925,55.423,54.986,54.695,54.561,54.523,54.485,54.366,54.137,53.823,53.476,53.143,52.842,52.572,52.328,
-52.129,52.013,52.020,52.157,52.391,52.666,52.937,53.189,53.423,53.628,53.757,53.751,53.577,53.270,52.920,52.618,
-52.400,52.230,52.035,51.773,51.463,51.170,50.948,50.794,50.653,50.460,50.194,49.885,49.590,49.349,49.168,49.023,
-48.888,48.751,48.608,48.453,48.277,48.073,47.846,47.608,47.370,47.321,47.115,46.915,46.687,46.423,46.161,45.962,
-45.880,45.927,46.066,46.233,46.371,46.458,46.506,46.557,46.651,46.806,47.009,47.220,47.391,47.498,47.560,47.635,
-47.792,48.067,48.437,48.821,49.124,49.282,49.292,49.199,49.053,48.867,48.609,48.235,47.740,47.197,46.735,46.473,
-46.452,46.598,46.769,46.827,46.721,46.495,46.247,46.052,45.919,45.803,45.661,45.505,45.397,45.405,45.544,45.763,
-45.977,46.130,46.234,46.356,46.556,46.835,47.108,47.246,47.139,46.759,46.171,45.503,44.891,44.428,44.144,44.019,
-44.007,44.060,44.130,44.168,44.125,43.965,43.686,43.326,42.945,42.593,42.281,41.987,41.680,41.353,41.030,40.738,
-40.476,40.209,39.895,39.527,39.158,38.874,38.744,38.769,38.879,38.958,38.893,38.611,38.093,37.371,36.524,35.669,
-34.924,34.376,34.039,33.854,33.722,33.559,33.333,33.060,32.772,32.478,32.159,31.786,31.349,30.869,30.396,29.983,
-29.664,29.433,29.243,29.010,28.649,28.111,27.421,26.677,26.001,25.475,25.091,24.769,24.412,23.981,23.513,23.096,
-22.793,22.596,22.434,22.215,21.896,21.497,21.082,20.711,20.396,20.097,19.752,19.316,18.789,18.214,17.648,17.129,
-16.656,16.198,15.723,15.220,14.704,14.194,13.688,13.167,12.605,12.002,11.387,10.794,10.232,9.672,9.071,8.406,
-7.702,7.009,6.364,5.752,5.117,4.398,3.575,2.674,1.743,.820,-.082,-.959,-1.790,-2.536,-3.166,-3.688,
--4.161,-4.677,-5.316,-6.119,-7.071,-8.113,-9.153,-10.095,-10.860,-11.417,-11.796,-12.081,-12.365,-12.705,-13.099,-13.505,
--13.885,-14.240,-14.598,-14.983,-15.384,-15.757,-16.064,-16.313,-16.553,-16.834,-17.167,-17.516,-17.833,-18.102,-18.357,-18.648,
--18.993,-19.361,-19.701,-19.987,-20.245,-20.521,-20.833,-21.141,-21.373,-21.485,-21.500,-21.485,-21.485,-21.474,-21.376,-21.149,
--20.855,-20.668,-20.775,-21.256,-22.022,-22.860,-23.566,-24.059,-24.414,-24.787,-25.294,-25.943,-26.640,-27.275,-27.792,-28.226,
--28.660,-29.164,-29.751,-30.375,-30.966,-31.479,-31.912,-32.293,-32.652,-32.986,-33.256,-33.413,-33.431,-33.337,-33.208,-33.132,
--33.173,-33.340,-33.599,-33.901,-34.210,-34.512,-34.802,-35.078,-35.334,-35.576,-35.827,-36.122,-36.491,-36.937,-37.439,-37.962,
--38.475,-38.958,-39.403,-39.807,-40.170,-40.495,-40.777,-41.004,-41.148,-41.193,-41.153,-41.095,-41.111,-41.275,-41.597,-42.014,
--42.430,-42.775,-43.034,-43.238,-43.422,-43.595,-43.746,-43.866,-43.971,-44.077,-44.177,-44.227,-44.183,-44.045,-43.879,-43.782,
--43.816,-43.964,-44.153,-44.312,-44.428,-44.549,-44.730,-44.989,-45.290,-45.580,-45.823,-46.004,-46.111,-46.129,-46.074,-46.031,
--46.147,-46.549,-47.239,-48.058,-48.770,-49.218,-49.444,-49.647,-50.017,-50.563,-51.096,-51.366,-51.276,-50.969,-50.729,-50.765,
--51.059,-51.391,-51.522,-51.371,-51.047,-50.727,-50.481,-50.212,-49.736,-48.937,-47.857,-46.658,-45.511,-44.511,-43.677,-43.012,
--42.551,-42.338,-42.384,-42.649,-43.080,-43.682,-44.513,-45.620,-46.930,-48.228,-49.236,-49.769,-49.841,-49.646,-49.421,-49.297,
--49.249,-49.164,-48.965,-48.685,-48.436,-48.311,-48.296,-48.269,-48.087,-47.687,-47.123,-46.531,-46.034,-45.668,-45.378,-45.076,
--44.717,-44.336,-44.020,-43.839,-43.793,-43.804,-43.773,-43.646,-43.455,-43.294,-43.256,-43.378,-43.627,-43.921,-44.182,-44.358,
--44.430,-44.404,-44.297,-44.145,-43.992,-43.872,-43.784,-43.685,-43.513,-43.232,-42.859,-42.452,-42.067,-41.715,-41.361,-40.956,
--40.473,-39.917,-39.310,-38.665,-37.986,-37.291,-36.616,-36.003,-35.462,-34.950,-34.401,-33.780,-33.120,-32.503,-31.987,-31.553,
--31.110,-30.567,-29.910,-29.217,-28.598,-28.098,-27.665,-27.185,-26.578,-25.852,-25.092,-24.382,-23.747,-23.142,-22.510,-21.834,
--21.148,-20.500,-19.901,-19.320,-18.716,-18.076,-17.423,-16.788,-16.171,-15.536,-14.844,-14.084,-13.287,-12.487,-11.684,-10.843,
--9.923,-8.934,-7.944,-7.041,-6.263,-5.552,-4.784,-3.843,-2.707,-1.470,-.301,.646,1.309,1.734,2.031,2.318,
-2.662,3.074,3.528,3.986,4.419,4.819,5.201,5.593,6.035,6.551,7.142,7.779,8.422,9.047,9.655,10.267,
-10.890,11.504,12.068,12.562,13.013,13.492,14.068,14.749,15.470,16.126,16.640,17.015,17.313,17.602,17.893,18.144,
-18.303,18.366,18.399,18.484,18.659,18.886,19.084,19.194,19.229,19.257,19.343,19.501,19.697,19.888,20.078,20.313,
-20.641,21.059,21.508,21.907,22.219,22.474,22.750,23.121,23.617,24.215,24.862,25.486,26.016,26.387,26.567,26.580,
-26.505,26.431,26.391,26.332,26.144,25.744,25.151,24.478,23.855,23.347,22.926,22.547,22.235,22.107,22.296,22.820,
-23.523,24.132,24.414,24.302,23.905,23.400,22.911,22.467,22.055,21.702,21.488,21.472,21.591,21.658,21.465,20.937,
-20.205,19.536,19.172,19.185,19.454,19.764,19.947,19.961,19.871,19.771,19.721,19.726,19.768,19.835,19.938,20.099,
-20.332,20.619,20.900,21.090,21.116,20.987,20.820,20.811,21.132,21.805,22.671,23.478,24.041,24.359,24.566,24.746,
-24.743,24.139,22.452,19.456,15.397,10.969,7.040,4.309,3.070,3.200,4.306,5.916,7.610,9.079,10.143,10.756,
-10.998,11.025,10.984,10.939,10.863,10.688,10.388,10.009,9.633,9.319,9.057,8.789,8.458,8.045,7.573,7.073,
-6.565,6.055,5.550,5.067,4.621,4.210,3.819,3.430,3.043,2.670,2.325,2.010,1.719,1.440,1.170,.901,
-.619,.302,-.075,-.549,-1.172,-2.000,-3.027,-4.101,-4.895,-5.010,-4.213,-2.673,-1.001,.001,-.228,-1.659,
--3.654,-5.325,-6.034,-5.706,-4.769,-3.797,-3.147,-2.831,-2.670,-2.534,-2.458,-2.559,-2.862,-3.231,-3.453,-3.413,
--3.175,-2.914,-2.761,-2.712,-2.667,-2.554,-2.405,-2.314,-2.336,-2.424,-2.471,-2.417,-2.303,-2.234,-2.270,-2.371,
--2.431,-2.376,-2.231,-2.091,-2.024,-2.014,-1.981,-1.863,-1.676,-1.496,-1.380,-1.314,-1.232,-1.088,-.901,-.735,
--.634,-.574,-.484,-.320,-.106,.083,.192,.235,.278,.381,.541,.704,.822,.896,.976,1.102,
-1.271,1.439,1.572,1.679,1.806,1.989,2.209,2.410,2.536,2.586,2.610,2.672,2.801,2.976,3.146,3.268,
-3.323,3.319,3.278,3.231,3.209,3.238,3.318,3.425,3.518,3.572,3.594,3.616,3.665,3.734,3.790,3.803,
-3.775,3.733,3.703,3.679,3.635,3.556,3.464,3.410,3.427,3.497,3.558,3.550,3.465,3.349,3.260,3.219,
-3.192,3.133,3.022,2.890,2.782,2.717,2.672,2.599,2.474,2.307,2.132,1.963,1.790,1.592,1.367,1.147,
-.964,.823,.687,.506,.256,-.036,-.316,-.540,-.706,-.847,-1.000,-1.182,-1.382,-1.586,-1.784,-1.983,
--2.190,-2.409,-2.636,-2.872,-3.116,-3.364,-3.602,-3.817,-4.008,-4.191,-4.390,-4.614,-4.852,-5.080,-5.287,-5.490,
--5.723,-6.011,-6.346,-6.690,-7.007,-7.286,-7.545,-7.809,-8.086,-8.361,-8.616,-8.851,-9.089,-9.352,-9.645,-9.948,
--10.238,-10.508,-10.778,-11.072,-11.397,-11.734,-12.059,-12.364,-12.668,-13.002,-13.377,-13.772,-14.147,-14.467,-14.730,-14.967,
--15.218,-15.509,-15.837,-16.175,-16.497,-16.791,-17.062,-17.328,-17.605,-17.898,-18.199,-18.489,-18.756,-18.994,-19.211,-19.421,
--19.632,-19.839,-20.035,-20.215,-20.385,-20.562,-20.757,-20.971,-21.186,-21.386,-21.561,-21.714,-21.855,-21.985,-22.097,-22.179,
--22.222,-22.231,-22.215,-22.190,-22.168,-22.160,-22.170,-22.196,-22.223,-22.233,-22.214,-22.176,-22.145,-22.143,-22.171,-22.207,
--22.226,-22.224,-22.225,-22.261,-22.340,-22.431,-22.483,-22.472,-22.420,-22.393,-22.453,-22.618,-22.846,-23.059,-23.191,-23.215,
--23.149,-23.052,-22.996,-23.039,-23.192,-23.375,-23.421,-23.134,-22.405,-21.327,-20.213,-19.482,-19.445,-20.116,-21.171,-22.093,
--22.432,-22.016,-21.012,-19.792,-18.733,-18.052,-17.768,-17.775,-17.942,-18.175,-18.412,-18.597,-18.675,-18.615,-18.434,-18.191,
--17.949,-17.733,-17.518,-17.270,-16.984,-16.703,-16.481,-16.337,-16.227,-16.084,-15.876,-15.643,-15.475,-15.432,-15.477,-15.472,
--15.253,-14.747,-14.030,-13.305,-12.800,-12.651,-12.842,-13.230,-13.630,-13.903,-14.004,-13.981,-13.927,-13.929,-14.020,-14.170,
--14.308,-14.368,-14.342,-14.289,-14.308,-14.466,-14.754,-15.085,-15.352,-15.498,-15.549,-15.587,-15.682,-15.848,-16.045,-16.228,
--16.379,-16.513,-16.644,-16.760,-16.831,-16.853,-16.867,-16.935,-17.092,-17.298,-17.469,-17.537,-17.513,-17.483,-17.547,-17.750,
--18.066,-18.443,-18.858,-19.335,-19.893,-20.497,-21.059,-21.498,-21.814,-22.097,-22.453,-22.910,-23.384,-23.754,-23.971,-24.126,
--24.390,-24.884,-25.570,-26.268,-26.777,-27.010,-27.042,-27.037,-27.125,-27.329,-27.587,-27.824,-28.015,-28.188,-28.374,-28.578,
--28.793,-29.026,-29.314,-29.693,-30.148,-30.601,-30.940,-31.075,-30.976,-30.668,-30.217,-29.727,-29.339,-29.230,-29.542,-30.293,
--31.320,-32.333,-33.051,-33.364,-33.383,-33.357,-33.504,-33.880,-34.378,-34.834,-35.154,-35.361,-35.547,-35.784,-36.073,-36.364,
--36.616,-36.821,-37.004,-37.173,-37.314,-37.399,-37.415,-37.378,-37.309,-37.218,-37.105,-36.985,-36.899,-36.897,-36.994,-37.144,
--37.267,-37.301,-37.256,-37.203,-37.219,-37.325,-37.474,-37.593,-37.651,-37.675,-37.724,-37.828,-37.954,-38.031,-37.999,-37.847,
--37.609,-37.325,-37.010,-36.654,-36.244,-35.797,-35.356,-34.969,-34.660,-34.418,-34.200,-33.964,-33.686,-33.377,-33.072,-32.813,
--32.625,-32.495,-32.373,-32.198,-31.921,-31.528,-31.026,-30.426,-29.728,-28.939,-28.101,-27.312,-26.703,-26.389,-26.404,-26.679,
--27.070,-27.409,-27.565,-27.469,-27.118,-26.565,-25.898,-25.217,-24.599,-24.071,-23.606,-23.153,-22.679,-22.198,-21.758,-21.406,
--21.148,-20.948,-20.756,-20.552,-20.353,-20.192,-20.078,-19.977,-19.828,-19.578,-19.220,-18.795,-18.366,-17.989,-17.674,-17.392,
--17.093,-16.747,-16.371,-16.029,-15.798,-15.708,-15.697,-15.615,-15.276,-14.554,-13.437,-12.040,-10.545,-9.128,-7.896,-6.876,
--6.030,-5.293,-4.594,-3.878,-3.113,-2.293,-1.431,-.540,.371,1.298,2.228,3.129,3.968,4.733,5.449,6.155,
-6.866,7.542,8.111,8.534,8.860,9.219,9.751,10.514,11.450,12.433,13.361,14.214,15.039,15.879,16.721,17.523,
-18.281,19.084,20.080,21.374,22.923,24.529,25.937,26.972,27.620,28.002,28.273,28.534,28.813,29.119,29.501,30.042,
-30.807,31.768,32.798,33.728,34.441,34.929,35.272,35.565,35.852,36.105,36.263,36.298,36.242,36.176,36.181,36.303,
-36.545,36.891,37.330,37.862,38.485,39.176,39.887,40.572,41.206,41.795,42.365,42.935,43.502,44.052,44.575,45.089,
-45.624,46.203,46.822,47.446,48.033,48.566,49.058,49.539,50.031,50.530,51.013,51.457,51.859,52.235,52.616,53.023,
-53.469,53.951,54.460,54.981,55.494,55.980,56.435,56.871,57.320,57.806,58.335,58.884,59.419,59.921,60.389,60.836,
-61.269,61.675,62.047,62.396,62.764,63.199,63.713,64.257,64.744,65.103,65.320,65.448,65.556,65.671,65.764,65.773,
-65.663,65.463,65.244,65.072,64.963,64.879,64.763,64.587,64.355,64.093,63.813,63.518,63.213,62.925,62.699,62.569,
-62.536,62.560,62.595,62.608,62.596,62.564,62.507,62.406,62.250,62.053,61.850,61.673,61.526,61.386,61.221,61.020,
-60.797,60.575,60.357,60.122,59.849,59.536,59.210,58.904,58.633,58.382,58.128,57.857,57.584,57.331,57.105,56.884,
-56.626,56.299,55.902,55.475,55.069,54.723,54.446,54.209,53.966,53.678,53.337,52.967,52.607,52.285,51.992,51.689,
-51.344,50.969,50.633,50.432,50.435,50.638,50.974,51.354,51.717,52.041,52.321,52.539,52.654,52.641,52.519,52.354,
-52.217,52.127,52.034,51.859,51.561,51.175,50.794,50.507,50.337,50.231,50.111,49.920,49.662,49.378,49.115,48.899,
-48.732,48.608,48.518,48.447,48.367,48.243,48.054,47.812,47.555,47.321,47.260,47.090,46.973,46.851,46.682,46.480,
-46.313,46.255,46.338,46.521,46.716,46.846,46.892,46.902,46.953,47.097,47.320,47.548,47.701,47.740,47.701,47.674,
-47.755,47.992,48.362,48.780,49.138,49.346,49.359,49.191,48.897,48.544,48.180,47.812,47.423,47.008,46.613,46.342,
-46.310,46.558,47.011,47.486,47.791,47.828,47.643,47.377,47.169,47.059,46.989,46.879,46.710,46.559,46.537,46.704,
-47.008,47.314,47.497,47.515,47.430,47.351,47.343,47.387,47.387,47.236,46.883,46.360,45.773,45.243,44.863,44.661,
-44.603,44.614,44.620,44.565,44.426,44.203,43.911,43.571,43.213,42.872,42.571,42.318,42.096,41.875,41.635,41.374,
-41.106,40.840,40.569,40.279,39.964,39.642,39.357,39.152,39.054,39.059,39.131,39.205,39.190,38.985,38.512,37.758,
-36.802,35.795,34.900,34.222,33.771,33.483,33.273,33.081,32.885,32.680,32.451,32.165,31.792,31.324,30.786,30.232,
-29.724,29.311,29.013,28.804,28.609,28.334,27.910,27.342,26.710,26.125,25.658,25.291,24.940,24.520,24.017,23.498,
-23.064,22.771,22.591,22.433,22.209,21.885,21.496,21.108,20.766,20.470,20.177,19.831,19.397,18.876,18.301,17.716,
-17.155,16.629,16.125,15.625,15.115,14.596,14.071,13.533,12.966,12.363,11.743,11.148,10.611,10.127,9.643,9.097,
-8.459,7.761,7.071,6.440,5.859,5.263,4.579,3.780,2.894,1.985,1.100,.255,-.556,-1.333,-2.054,-2.694,
--3.249,-3.751,-4.263,-4.851,-5.559,-6.396,-7.330,-8.290,-9.186,-9.936,-10.513,-10.960,-11.375,-11.850,-12.415,-13.017,
--13.568,-14.005,-14.338,-14.635,-14.962,-15.329,-15.692,-15.998,-16.239,-16.459,-16.717,-17.036,-17.385,-17.712,-17.995,-18.261,
--18.562,-18.928,-19.335,-19.733,-20.084,-20.392,-20.683,-20.968,-21.222,-21.406,-21.506,-21.552,-21.590,-21.633,-21.639,-21.550,
--21.371,-21.212,-21.248,-21.610,-22.284,-23.104,-23.847,-24.372,-24.697,-24.968,-25.342,-25.878,-26.516,-27.138,-27.663,-28.101,
--28.527,-29.014,-29.580,-30.179,-30.749,-31.251,-31.693,-32.109,-32.531,-32.957,-33.350,-33.658,-33.835,-33.874,-33.809,-33.713,
--33.670,-33.737,-33.925,-34.203,-34.518,-34.828,-35.118,-35.394,-35.669,-35.955,-36.256,-36.578,-36.925,-37.297,-37.690,-38.094,
--38.505,-38.925,-39.357,-39.796,-40.223,-40.614,-40.953,-41.234,-41.451,-41.594,-41.653,-41.642,-41.614,-41.650,-41.816,-42.123,
--42.515,-42.907,-43.237,-43.498,-43.726,-43.952,-44.172,-44.357,-44.488,-44.585,-44.691,-44.830,-44.982,-45.093,-45.127,-45.095,
--45.055,-45.058,-45.117,-45.206,-45.303,-45.424,-45.609,-45.878,-46.198,-46.491,-46.686,-46.761,-46.739,-46.649,-46.501,-46.308,
--46.125,-46.057,-46.196,-46.527,-46.905,-47.147,-47.183,-47.153,-47.327,-47.888,-48.744,-49.529,-49.829,-49.481,-48.722,-48.057,
--47.946,-48.520,-49.535,-50.568,-51.297,-51.655,-51.773,-51.808,-51.792,-51.635,-51.218,-50.500,-49.532,-48.405,-47.197,-45.969,
--44.798,-43.793,-43.047,-42.594,-42.398,-42.424,-42.707,-43.356,-44.455,-45.928,-47.495,-48.771,-49.475,-49.586,-49.349,-49.108,
--49.092,-49.294,-49.527,-49.590,-49.422,-49.128,-48.880,-48.776,-48.766,-48.697,-48.428,-47.928,-47.289,-46.659,-46.135,-45.723,
--45.359,-44.983,-44.600,-44.273,-44.069,-43.994,-43.980,-43.931,-43.790,-43.586,-43.408,-43.352,-43.462,-43.710,-44.026,-44.331,
--44.566,-44.694,-44.696,-44.588,-44.419,-44.260,-44.162,-44.119,-44.056,-43.888,-43.578,-43.169,-42.754,-42.401,-42.097,-41.761,
--41.309,-40.717,-40.038,-39.354,-38.719,-38.134,-37.567,-36.995,-36.413,-35.822,-35.209,-34.559,-33.883,-33.233,-32.669,-32.209,
--31.794,-31.321,-30.720,-30.011,-29.296,-28.680,-28.184,-27.733,-27.214,-26.563,-25.805,-25.021,-24.276,-23.578,-22.893,-22.196,
--21.507,-20.862,-20.276,-19.716,-19.129,-18.489,-17.825,-17.188,-16.598,-16.020,-15.383,-14.649,-13.837,-13.010,-12.207,-11.408,
--10.545,-9.575,-8.531,-7.523,-6.654,-5.942,-5.289,-4.536,-3.568,-2.395,-1.152,-.026,.845,1.434,1.820,2.126,
-2.450,2.830,3.247,3.663,4.048,4.402,4.748,5.117,5.534,6.012,6.551,7.139,7.757,8.389,9.026,9.667,
-10.309,10.937,11.522,12.035,12.479,12.898,13.363,13.938,14.630,15.380,16.093,16.693,17.162,17.534,17.854,18.135,
-18.354,18.479,18.515,18.517,18.561,18.692,18.899,19.131,19.337,19.498,19.632,19.758,19.882,19.998,20.119,20.293,
-20.582,21.014,21.551,22.097,22.557,22.892,23.148,23.421,23.804,24.343,25.022,25.781,26.528,27.151,27.545,27.646,
-27.475,27.145,26.806,26.555,26.371,26.134,25.722,25.112,24.414,23.790,23.346,23.066,22.858,22.665,22.543,22.628,
-23.012,23.643,24.312,24.768,24.854,24.575,24.051,23.421,22.776,22.170,21.662,21.333,21.225,21.277,21.316,21.148,
-20.691,20.046,19.454,19.142,19.191,19.500,19.863,20.107,20.177,20.130,20.066,20.052,20.092,20.155,20.220,20.301,
-20.442,20.673,20.973,21.257,21.417,21.394,21.253,21.175,21.373,21.952,22.807,23.672,24.279,24.535,24.560,24.535,
-24.454,23.986,22.592,19.872,15.913,11.382,7.281,4.496,3.415,3.838,5.190,6.857,8.425,9.715,10.687,11.333,
-11.651,11.685,11.543,11.355,11.196,11.047,10.837,10.512,10.095,9.660,9.278,8.958,8.657,8.311,7.880,7.360,
-6.775,6.161,5.562,5.018,4.549,4.139,3.744,3.325,2.883,2.463,2.114,1.843,1.604,1.338,1.019,.675,
-.353,.072,-.196,-.508,-.912,-1.456,-2.191,-3.153,-4.272,-5.282,-5.742,-5.256,-3.770,-1.762,-.098,.402,
--.546,-2.502,-4.551,-5.842,-6.043,-5.427,-4.566,-3.908,-3.555,-3.347,-3.127,-2.909,-2.842,-3.022,-3.375,-3.698,
--3.828,-3.763,-3.627,-3.538,-3.498,-3.424,-3.253,-3.028,-2.861,-2.827,-2.887,-2.931,-2.883,-2.776,-2.715,-2.768,
--2.892,-2.970,-2.914,-2.745,-2.568,-2.472,-2.454,-2.430,-2.327,-2.155,-1.990,-1.899,-1.870,-1.826,-1.698,-1.493,
--1.279,-1.119,-1.013,-.903,-.743,-.541,-.358,-.239,-.171,-.095,.037,.209,.361,.444,.473,.512,
-.618,.792,.982,1.137,1.251,1.360,1.498,1.656,1.789,1.856,1.864,1.869,1.934,2.084,2.293,2.505,
-2.666,2.744,2.732,2.653,2.554,2.498,2.537,2.678,2.868,3.024,3.087,3.063,3.016,3.013,3.071,3.148,
-3.187,3.167,3.116,3.077,3.063,3.048,2.999,2.917,2.848,2.843,2.905,2.983,3.008,2.950,2.841,2.744,
-2.697,2.684,2.657,2.580,2.457,2.321,2.200,2.089,1.966,1.816,1.652,1.494,1.349,1.193,1.000,.769,
-.532,.333,.187,.065,-.083,-.293,-.555,-.826,-1.064,-1.257,-1.423,-1.590,-1.776,-1.977,-2.185,-2.398,
--2.618,-2.847,-3.085,-3.327,-3.572,-3.819,-4.063,-4.293,-4.499,-4.685,-4.868,-5.071,-5.302,-5.548,-5.790,-6.020,
--6.255,-6.522,-6.833,-7.174,-7.506,-7.800,-8.051,-8.281,-8.510,-8.746,-8.984,-9.221,-9.469,-9.747,-10.062,-10.398,
--10.720,-11.009,-11.271,-11.539,-11.839,-12.170,-12.505,-12.816,-13.101,-13.388,-13.712,-14.081,-14.472,-14.843,-15.161,-15.430,
--15.676,-15.935,-16.225,-16.542,-16.869,-17.190,-17.495,-17.785,-18.064,-18.335,-18.602,-18.864,-19.116,-19.355,-19.581,-19.799,
--20.017,-20.237,-20.454,-20.657,-20.845,-21.022,-21.206,-21.406,-21.624,-21.848,-22.062,-22.256,-22.424,-22.562,-22.666,-22.737,
--22.784,-22.820,-22.851,-22.868,-22.851,-22.793,-22.713,-22.651,-22.642,-22.686,-22.744,-22.765,-22.728,-22.659,-22.605,-22.600,
--22.632,-22.663,-22.667,-22.658,-22.676,-22.748,-22.856,-22.947,-22.973,-22.935,-22.883,-22.879,-22.957,-23.104,-23.281,-23.443,
--23.561,-23.615,-23.600,-23.538,-23.491,-23.525,-23.647,-23.749,-23.624,-23.084,-22.119,-20.980,-20.093,-19.839,-20.308,-21.223,
--22.064,-22.354,-21.900,-20.871,-19.661,-18.657,-18.065,-17.880,-17.969,-18.196,-18.474,-18.750,-18.962,-19.039,-18.935,-18.674,
--18.344,-18.049,-17.835,-17.668,-17.471,-17.188,-16.833,-16.473,-16.174,-15.952,-15.776,-15.609,-15.449,-15.334,-15.291,-15.286,
--15.216,-14.959,-14.459,-13.778,-13.085,-12.578,-12.393,-12.544,-12.923,-13.358,-13.680,-13.792,-13.695,-13.485,-13.305,-13.271,
--13.410,-13.651,-13.868,-13.969,-13.958,-13.932,-14.007,-14.228,-14.537,-14.816,-14.983,-15.044,-15.086,-15.199,-15.412,-15.682,
--15.942,-16.152,-16.313,-16.436,-16.513,-16.524,-16.474,-16.423,-16.454,-16.610,-16.847,-17.060,-17.166,-17.177,-17.203,-17.367,
--17.712,-18.177,-18.657,-19.095,-19.519,-19.994,-20.534,-21.074,-21.518,-21.832,-22.083,-22.389,-22.816,-23.314,-23.761,-24.077,
--24.301,-24.566,-24.985,-25.546,-26.115,-26.532,-26.738,-26.809,-26.888,-27.065,-27.326,-27.583,-27.770,-27.897,-28.029,-28.221,
--28.473,-28.746,-29.019,-29.317,-29.679,-30.093,-30.467,-30.667,-30.597,-30.261,-29.767,-29.267,-28.906,-28.795,-29.005,-29.551,
--30.363,-31.265,-32.025,-32.466,-32.580,-32.548,-32.639,-33.040,-33.733,-34.514,-35.136,-35.466,-35.551,-35.559,-35.645,-35.865,
--36.170,-36.478,-36.740,-36.956,-37.142,-37.299,-37.403,-37.433,-37.391,-37.297,-37.177,-37.050,-36.935,-36.858,-36.844,-36.896,
--36.976,-37.028,-37.008,-36.929,-36.847,-36.826,-36.886,-36.995,-37.104,-37.190,-37.268,-37.373,-37.506,-37.627,-37.674,-37.605,
--37.428,-37.187,-36.927,-36.660,-36.372,-36.045,-35.683,-35.322,-35.004,-34.755,-34.567,-34.397,-34.193,-33.919,-33.578,-33.214,
--32.889,-32.645,-32.475,-32.321,-32.105,-31.766,-31.292,-30.700,-30.012,-29.233,-28.377,-27.503,-26.733,-26.222,-26.076,-26.287,
--26.721,-27.174,-27.460,-27.481,-27.240,-26.810,-26.282,-25.733,-25.204,-24.698,-24.190,-23.647,-23.057,-22.451,-21.897,-21.464,
--21.177,-21.003,-20.873,-20.734,-20.580,-20.436,-20.327,-20.240,-20.126,-19.934,-19.641,-19.267,-18.857,-18.454,-18.088,-17.771,
--17.497,-17.243,-16.974,-16.668,-16.334,-16.023,-15.790,-15.641,-15.494,-15.198,-14.609,-13.673,-12.461,-11.139,-9.876,-8.778,
--7.853,-7.043,-6.270,-5.478,-4.647,-3.782,-2.896,-1.997,-1.081,-.139,.825,1.781,2.679,3.476,4.177,4.843,
-5.558,6.361,7.204,7.965,8.540,8.920,9.219,9.608,10.209,11.032,11.981,12.939,13.835,14.658,15.425,16.135,
-16.781,17.394,18.072,18.955,20.140,21.607,23.207,24.731,26.005,26.956,27.606,28.031,28.316,28.549,28.828,29.259,
-29.917,30.803,31.826,32.842,33.728,34.431,34.975,35.417,35.788,36.070,36.224,36.230,36.121,35.975,35.874,35.872,
-35.978,36.180,36.471,36.861,37.372,38.006,38.734,39.500,40.242,40.926,41.555,42.154,42.752,43.357,43.954,44.522,
-45.052,45.554,46.051,46.566,47.110,47.676,48.247,48.807,49.346,49.862,50.357,50.839,51.310,51.770,52.211,52.630,
-53.033,53.438,53.873,54.353,54.868,55.385,55.867,56.299,56.708,57.142,57.644,58.216,58.818,59.394,59.913,60.377,
-60.815,61.244,61.653,62.017,62.336,62.651,63.029,63.511,64.075,64.632,65.084,65.380,65.547,65.658,65.774,65.895,
-65.969,65.943,65.811,65.618,65.432,65.294,65.200,65.119,65.015,64.873,64.685,64.441,64.127,63.746,63.336,62.961,
-62.681,62.523,62.466,62.468,62.491,62.518,62.538,62.529,62.461,62.311,62.089,61.841,61.619,61.449,61.315,61.171,
-60.981,60.732,60.445,60.147,59.855,59.576,59.308,59.053,58.810,58.574,58.333,58.075,57.798,57.512,57.230,56.960,
-56.700,56.442,56.174,55.887,55.570,55.219,54.834,54.423,53.997,53.557,53.105,52.647,52.208,51.826,51.525,51.290,
-51.064,50.787,50.442,50.086,49.817,49.714,49.775,49.928,50.081,50.189,50.273,50.386,50.553,50.745,50.908,51.014,
-51.091,51.191,51.333,51.471,51.515,51.392,51.104,50.731,50.382,50.127,49.968,49.857,49.737,49.572,49.359,49.112,
-48.853,48.615,48.432,48.327,48.293,48.279,48.214,48.050,47.794,47.506,47.260,47.354,47.226,47.180,47.151,47.076,
-46.949,46.829,46.797,46.896,47.088,47.278,47.377,47.374,47.339,47.377,47.545,47.802,48.034,48.136,48.089,47.983,
-47.961,48.130,48.493,48.948,49.349,49.572,49.567,49.353,49.001,48.597,48.215,47.896,47.630,47.372,47.087,46.801,
-46.626,46.704,47.113,47.775,48.471,48.943,49.054,48.861,48.568,48.374,48.342,48.382,48.344,48.166,47.921,47.767,
-47.811,48.023,48.262,48.372,48.292,48.080,47.851,47.683,47.566,47.421,47.165,46.771,46.287,45.809,45.432,45.207,
-45.124,45.119,45.102,44.998,44.777,44.460,44.100,43.746,43.424,43.136,42.875,42.642,42.444,42.281,42.132,41.967,
-41.764,41.522,41.268,41.031,40.826,40.641,40.440,40.190,39.883,39.553,39.276,39.134,39.160,39.296,39.387,39.240,
-38.719,37.822,36.689,35.537,34.557,33.843,33.384,33.108,32.937,32.813,32.691,32.525,32.270,31.894,31.397,30.808,
-30.184,29.587,29.079,28.701,28.446,28.255,28.027,27.674,27.179,26.604,26.054,25.601,25.231,24.867,24.436,23.934,
-23.432,23.023,22.742,22.549,22.355,22.089,21.743,21.364,21.009,20.704,20.429,20.140,19.789,19.349,18.818,18.217,
-17.588,16.976,16.411,15.899,15.417,14.937,14.437,13.909,13.348,12.749,12.116,11.467,10.843,10.280,9.783,9.312,
-8.810,8.245,7.637,7.041,6.498,5.998,5.480,4.877,4.167,3.374,2.550,1.725,.901,.065,-.775,-1.578,
--2.297,-2.904,-3.417,-3.888,-4.383,-4.959,-5.641,-6.421,-7.252,-8.063,-8.786,-9.399,-9.942,-10.499,-11.145,-11.884,
--12.644,-13.317,-13.836,-14.216,-14.532,-14.862,-15.223,-15.578,-15.877,-16.112,-16.326,-16.578,-16.890,-17.232,-17.557,-17.844,
--18.122,-18.442,-18.831,-19.266,-19.693,-20.066,-20.380,-20.658,-20.917,-21.150,-21.337,-21.474,-21.584,-21.696,-21.805,-21.872,
--21.860,-21.803,-21.816,-22.044,-22.559,-23.290,-24.049,-24.649,-25.021,-25.253,-25.517,-25.939,-26.517,-27.139,-27.682,-28.106,
--28.474,-28.885,-29.394,-29.974,-30.545,-31.044,-31.467,-31.865,-32.288,-32.752,-33.222,-33.640,-33.957,-34.154,-34.246,-34.268,
--34.272,-34.307,-34.412,-34.601,-34.857,-35.149,-35.443,-35.720,-35.983,-36.247,-36.534,-36.856,-37.211,-37.582,-37.938,-38.252,
--38.520,-38.772,-39.060,-39.428,-39.877,-40.366,-40.831,-41.222,-41.528,-41.764,-41.948,-42.081,-42.160,-42.202,-42.258,-42.388,
--42.621,-42.933,-43.264,-43.561,-43.816,-44.055,-44.305,-44.557,-44.777,-44.941,-45.070,-45.218,-45.429,-45.695,-45.957,-46.147,
--46.236,-46.250,-46.237,-46.240,-46.280,-46.376,-46.561,-46.858,-47.251,-47.657,-47.965,-48.094,-48.047,-47.894,-47.714,-47.543,
--47.376,-47.215,-47.095,-47.055,-47.071,-47.033,-46.819,-46.426,-46.046,-45.978,-46.406,-47.205,-47.952,-48.171,-47.659,-46.672,
--45.797,-45.613,-46.349,-47.783,-49.422,-50.808,-51.742,-52.285,-52.600,-52.786,-52.825,-52.646,-52.213,-51.550,-50.710,-49.722,
--48.599,-47.371,-46.115,-44.934,-43.912,-43.098,-42.544,-42.350,-42.653,-43.537,-44.911,-46.469,-47.797,-48.580,-48.772,-48.618,
--48.485,-48.635,-49.072,-49.571,-49.856,-49.786,-49.436,-49.021,-48.739,-48.644,-48.632,-48.539,-48.259,-47.807,-47.286,-46.797,
--46.374,-45.981,-45.569,-45.143,-44.767,-44.519,-44.422,-44.419,-44.406,-44.303,-44.102,-43.867,-43.685,-43.614,-43.666,-43.816,
--44.021,-44.231,-44.386,-44.434,-44.355,-44.190,-44.020,-43.920,-43.894,-43.871,-43.755,-43.504,-43.163,-42.823,-42.546,-42.302,
--41.990,-41.516,-40.872,-40.134,-39.408,-38.760,-38.183,-37.634,-37.077,-36.504,-35.920,-35.319,-34.692,-34.047,-33.427,-32.883,
--32.422,-31.986,-31.484,-30.864,-30.152,-29.441,-28.810,-28.261,-27.725,-27.120,-26.419,-25.663,-24.912,-24.189,-23.475,-22.742,
--22.001,-21.299,-20.671,-20.098,-19.514,-18.864,-18.158,-17.469,-16.863,-16.333,-15.790,-15.139,-14.353,-13.502,-12.686,-11.946,
--11.219,-10.391,-9.396,-8.286,-7.204,-6.282,-5.539,-4.867,-4.104,-3.150,-2.038,-.908,.076,.822,1.347,1.747,
-2.131,2.555,3.013,3.459,3.848,4.172,4.464,4.769,5.128,5.555,6.043,6.577,7.152,7.766,8.418,9.095,
-9.773,10.422,11.019,11.550,12.019,12.447,12.870,13.334,13.877,14.515,15.226,15.954,16.633,17.213,17.675,18.022,
-18.268,18.426,18.511,18.554,18.602,18.705,18.889,19.144,19.428,19.692,19.903,20.051,20.147,20.209,20.270,20.376,
-20.587,20.947,21.458,22.064,22.666,23.179,23.571,23.877,24.174,24.538,25.016,25.617,26.315,27.050,27.720,28.190,
-28.342,28.141,27.673,27.109,26.616,26.250,25.942,25.564,25.047,24.444,23.896,23.520,23.323,23.213,23.098,22.990,
-23.009,23.287,23.839,24.513,25.057,25.254,25.034,24.473,23.723,22.926,22.186,21.584,21.187,21.026,21.044,21.095,
-21.007,20.692,20.217,19.772,19.555,19.648,19.971,20.347,20.615,20.717,20.707,20.680,20.698,20.759,20.816,20.837,
-20.836,20.872,21.000,21.222,21.471,21.656,21.740,21.793,21.974,22.425,23.153,23.975,24.614,24.864,24.728,24.380,
-23.960,23.358,22.170,19.924,16.459,12.185,8.020,4.988,3.723,4.184,5.755,7.630,9.216,10.316,11.031,11.527,
-11.876,12.043,11.995,11.775,11.490,11.230,11.001,10.746,10.410,9.991,9.541,9.111,8.719,8.343,7.943,7.490,
-6.966,6.367,5.711,5.046,4.436,3.927,3.509,3.124,2.715,2.284,1.887,1.585,1.374,1.179,.920,.580,
-.218,-.094,-.353,-.629,-1.001,-1.482,-2.030,-2.634,-3.372,-4.328,-5.417,-6.267,-6.340,-5.293,-3.329,-1.237,
--.018,-.295,-1.916,-4.052,-5.714,-6.339,-6.025,-5.311,-4.718,-4.421,-4.268,-4.043,-3.714,-3.441,-3.402,-3.612,
--3.914,-4.125,-4.185,-4.170,-4.177,-4.209,-4.181,-4.024,-3.776,-3.561,-3.478,-3.510,-3.546,-3.493,-3.363,-3.258,
--3.258,-3.344,-3.404,-3.347,-3.178,-2.997,-2.895,-2.874,-2.852,-2.750,-2.574,-2.407,-2.322,-2.314,-2.297,-2.188,
--1.983,-1.751,-1.573,-1.465,-1.377,-1.248,-1.066,-.877,-.727,-.620,-.518,-.386,-.238,-.121,-.065,-.045,
-.007,.139,.344,.560,.729,.841,.930,1.028,1.129,1.196,1.200,1.164,1.150,1.217,1.382,1.609,
-1.837,2.015,2.110,2.111,2.033,1.923,1.853,1.897,2.072,2.319,2.526,2.605,2.547,2.433,2.362,2.381,
-2.457,2.516,2.515,2.472,2.436,2.435,2.447,2.428,2.361,2.284,2.256,2.303,2.389,2.446,2.426,2.343,
-2.253,2.206,2.202,2.196,2.141,2.023,1.861,1.687,1.514,1.338,1.155,.975,.814,.673,.531,.359,
-.148,-.079,-.284,-.446,-.574,-.703,-.862,-1.057,-1.275,-1.495,-1.710,-1.923,-2.139,-2.356,-2.571,-2.788,
--3.014,-3.256,-3.513,-3.773,-4.024,-4.263,-4.496,-4.726,-4.951,-5.164,-5.366,-5.566,-5.779,-6.006,-6.242,-6.478,
--6.717,-6.976,-7.272,-7.603,-7.942,-8.253,-8.517,-8.743,-8.957,-9.178,-9.411,-9.649,-9.891,-10.152,-10.446,-10.774,
--11.110,-11.422,-11.698,-11.956,-12.231,-12.545,-12.890,-13.235,-13.553,-13.844,-14.131,-14.438,-14.771,-15.112,-15.438,-15.740,
--16.029,-16.320,-16.621,-16.926,-17.225,-17.517,-17.807,-18.103,-18.403,-18.695,-18.970,-19.224,-19.464,-19.695,-19.921,-20.143,
--20.364,-20.589,-20.819,-21.048,-21.268,-21.469,-21.655,-21.840,-22.037,-22.254,-22.485,-22.715,-22.929,-23.111,-23.245,-23.326,
--23.362,-23.381,-23.411,-23.461,-23.506,-23.501,-23.421,-23.288,-23.166,-23.115,-23.147,-23.209,-23.228,-23.169,-23.066,-22.989,
--22.985,-23.041,-23.097,-23.103,-23.066,-23.038,-23.070,-23.164,-23.273,-23.342,-23.358,-23.352,-23.370,-23.432,-23.530,-23.645,
--23.771,-23.902,-24.019,-24.082,-24.067,-24.002,-23.965,-24.010,-24.084,-24.005,-23.568,-22.713,-21.633,-20.715,-20.326,-20.572,
--21.203,-21.752,-21.799,-21.212,-20.198,-19.146,-18.397,-18.086,-18.138,-18.384,-18.684,-18.971,-19.220,-19.391,-19.423,-19.273,
--18.969,-18.609,-18.304,-18.104,-17.970,-17.807,-17.536,-17.152,-16.717,-16.313,-15.986,-15.730,-15.517,-15.334,-15.198,-15.126,
--15.094,-15.022,-14.810,-14.399,-13.818,-13.191,-12.680,-12.415,-12.439,-12.691,-13.028,-13.282,-13.324,-13.127,-12.779,-12.447,
--12.296,-12.391,-12.661,-12.949,-13.116,-13.141,-13.130,-13.228,-13.507,-13.905,-14.276,-14.502,-14.579,-14.611,-14.722,-14.965,
--15.296,-15.626,-15.897,-16.104,-16.265,-16.373,-16.393,-16.310,-16.177,-16.098,-16.161,-16.365,-16.615,-16.802,-16.900,-16.990,
--17.203,-17.608,-18.163,-18.755,-19.293,-19.768,-20.232,-20.719,-21.196,-21.587,-21.857,-22.060,-22.314,-22.705,-23.216,-23.743,
--24.181,-24.514,-24.812,-25.160,-25.573,-25.980,-26.288,-26.469,-26.584,-26.725,-26.935,-27.179,-27.386,-27.528,-27.648,-27.825,
--28.097,-28.431,-28.758,-29.042,-29.309,-29.606,-29.925,-30.174,-30.226,-30.022,-29.635,-29.247,-29.048,-29.141,-29.505,-30.041,
--30.636,-31.199,-31.658,-31.955,-32.080,-32.102,-32.180,-32.490,-33.112,-33.961,-34.815,-35.446,-35.750,-35.799,-35.775,-35.842,
--36.049,-36.339,-36.616,-36.828,-36.985,-37.123,-37.257,-37.366,-37.415,-37.389,-37.305,-37.193,-37.079,-36.977,-36.896,-36.848,
--36.840,-36.858,-36.875,-36.862,-36.814,-36.748,-36.695,-36.671,-36.674,-36.698,-36.749,-36.845,-36.991,-37.160,-37.294,-37.334,
--37.254,-37.079,-36.861,-36.643,-36.438,-36.232,-36.002,-35.744,-35.471,-35.211,-34.981,-34.783,-34.597,-34.390,-34.130,-33.810,
--33.454,-33.111,-32.819,-32.577,-32.336,-32.027,-31.604,-31.071,-30.467,-29.830,-29.170,-28.490,-27.820,-27.249,-26.893,-26.829,
--27.029,-27.355,-27.618,-27.670,-27.462,-27.045,-26.526,-26.004,-25.538,-25.129,-24.731,-24.279,-23.722,-23.064,-22.372,-21.756,
--21.303,-21.034,-20.897,-20.805,-20.702,-20.586,-20.485,-20.407,-20.320,-20.166,-19.911,-19.568,-19.183,-18.798,-18.431,-18.087,
--17.780,-17.531,-17.342,-17.167,-16.926,-16.561,-16.093,-15.614,-15.221,-14.929,-14.645,-14.219,-13.543,-12.627,-11.586,-10.556,
--9.620,-8.769,-7.940,-7.076,-6.163,-5.230,-4.311,-3.417,-2.530,-1.614,-.647,.359,1.350,2.254,3.027,3.689,
-4.329,5.056,5.919,6.860,7.732,8.389,8.792,9.044,9.338,9.841,10.610,11.571,12.584,13.529,14.353,15.064,
-15.697,16.296,16.905,17.579,18.379,19.344,20.474,21.726,23.027,24.292,25.431,26.368,27.060,27.534,27.899,28.318,
-28.933,29.795,30.838,31.921,32.915,33.764,34.480,35.100,35.619,35.987,36.146,36.090,35.891,35.670,35.532,35.524,
-35.623,35.783,35.976,36.221,36.566,37.054,37.692,38.440,39.232,40.004,40.716,41.366,41.977,42.578,43.186,43.795,
-44.381,44.917,45.394,45.832,46.274,46.766,47.327,47.944,48.570,49.160,49.695,50.190,50.682,51.197,51.730,52.249,
-52.718,53.126,53.500,53.888,54.326,54.810,55.305,55.767,56.182,56.580,57.014,57.525,58.112,58.731,59.325,59.860,
-60.342,60.793,61.229,61.638,61.994,62.293,62.575,62.911,63.357,63.910,64.499,65.020,65.402,65.640,65.787,65.904,
-66.012,66.086,66.084,65.992,65.837,65.674,65.542,65.452,65.383,65.313,65.223,65.099,64.917,64.643,64.260,63.787,
-63.287,62.842,62.511,62.315,62.235,62.240,62.297,62.373,62.425,62.407,62.287,62.072,61.809,61.559,61.361,61.207,
-61.054,60.856,60.594,60.285,59.967,59.674,59.419,59.194,58.978,58.750,58.496,58.215,57.917,57.615,57.319,57.033,
-56.761,56.509,56.288,56.098,55.917,55.698,55.394,54.979,54.468,53.898,53.309,52.722,52.147,51.609,51.148,50.808,
-50.595,50.466,50.352,50.210,50.052,49.932,49.880,49.867,49.808,49.631,49.345,49.046,48.856,48.840,48.965,49.140,
-49.295,49.437,49.631,49.933,50.324,50.699,50.930,50.937,50.735,50.414,50.084,49.823,49.655,49.554,49.474,49.362,
-49.184,48.937,48.658,48.412,48.255,48.202,48.206,48.183,48.066,47.844,47.579,47.354,47.587,47.504,47.495,47.516,
-47.510,47.457,47.398,47.402,47.513,47.699,47.870,47.943,47.902,47.826,47.829,47.968,48.196,48.388,48.443,48.367,
-48.285,48.360,48.671,49.155,49.635,49.926,49.935,49.690,49.310,48.926,48.634,48.464,48.389,48.337,48.221,47.995,
-47.703,47.493,47.551,47.972,48.668,49.382,49.828,49.871,49.611,49.313,49.209,49.341,49.545,49.596,49.385,48.996,
-48.629,48.440,48.437,48.495,48.473,48.324,48.106,47.909,47.768,47.631,47.410,47.055,46.594,46.115,45.719,45.465,
-45.356,45.341,45.344,45.284,45.104,44.801,44.422,44.041,43.717,43.462,43.247,43.035,42.814,42.603,42.427,42.288,
-42.160,42.013,41.843,41.684,41.583,41.560,41.573,41.528,41.317,40.880,40.260,39.603,39.103,38.907,39.019,39.273,
-39.401,39.161,38.458,37.384,36.162,35.024,34.123,33.497,33.107,32.884,32.761,32.670,32.543,32.315,31.950,31.455,
-30.868,30.241,29.630,29.090,28.662,28.354,28.119,27.866,27.505,27.005,26.419,25.849,25.371,24.982,24.612,24.193,
-23.718,23.247,22.852,22.556,22.318,22.070,21.770,21.426,21.078,20.754,20.449,20.137,19.790,19.390,18.927,18.393,
-17.790,17.145,16.508,15.927,15.420,14.963,14.515,14.045,13.552,13.046,12.528,11.980,11.390,10.768,10.148,9.564,
-9.024,8.508,7.993,7.480,6.992,6.541,6.112,5.656,5.130,4.527,3.870,3.185,2.467,1.682,.809,-.129,
--1.057,-1.886,-2.558,-3.081,-3.511,-3.922,-4.379,-4.915,-5.539,-6.232,-6.952,-7.657,-8.324,-8.969,-9.636,-10.364,
--11.148,-11.931,-12.638,-13.219,-13.687,-14.094,-14.492,-14.892,-15.269,-15.592,-15.860,-16.110,-16.382,-16.688,-17.010,-17.320,
--17.617,-17.932,-18.301,-18.728,-19.173,-19.577,-19.904,-20.164,-20.398,-20.643,-20.903,-21.159,-21.392,-21.604,-21.804,-21.988,
--22.137,-22.240,-22.340,-22.530,-22.907,-23.495,-24.201,-24.863,-25.346,-25.637,-25.850,-26.144,-26.605,-27.189,-27.771,-28.243,
--28.595,-28.913,-29.297,-29.785,-30.329,-30.844,-31.284,-31.669,-32.063,-32.510,-33.001,-33.478,-33.883,-34.188,-34.409,-34.578,
--34.726,-34.864,-34.999,-35.140,-35.306,-35.511,-35.761,-36.042,-36.333,-36.612,-36.877,-37.145,-37.444,-37.790,-38.164,-38.514,
--38.778,-38.934,-39.027,-39.155,-39.414,-39.836,-40.367,-40.901,-41.348,-41.682,-41.938,-42.164,-42.375,-42.548,-42.660,-42.725,
--42.797,-42.936,-43.162,-43.444,-43.729,-43.986,-44.222,-44.463,-44.721,-44.987,-45.251,-45.522,-45.832,-46.201,-46.601,-46.965,
--47.223,-47.353,-47.394,-47.418,-47.485,-47.621,-47.828,-48.107,-48.448,-48.821,-49.151,-49.354,-49.385,-49.278,-49.132,-49.043,
--49.042,-49.089,-49.128,-49.133,-49.111,-49.050,-48.883,-48.529,-47.988,-47.413,-47.058,-47.105,-47.500,-47.929,-48.006,-47.542,
--46.718,-46.006,-45.899,-46.615,-47.996,-49.634,-51.126,-52.262,-53.042,-53.557,-53.857,-53.923,-53.722,-53.287,-52.712,-52.091,
--51.441,-50.697,-49.770,-48.628,-47.324,-45.977,-44.728,-43.716,-43.082,-42.949,-43.372,-44.267,-45.396,-46.436,-47.129,-47.419,
--47.476,-47.587,-47.969,-48.632,-49.375,-49.911,-50.046,-49.784,-49.307,-48.849,-48.558,-48.436,-48.373,-48.247,-48.007,-47.681,
--47.326,-46.968,-46.586,-46.156,-45.696,-45.286,-45.018,-44.932,-44.976,-45.031,-44.986,-44.792,-44.478,-44.119,-43.788,-43.537,
--43.397,-43.383,-43.478,-43.630,-43.756,-43.791,-43.726,-43.615,-43.530,-43.497,-43.474,-43.388,-43.199,-42.938,-42.675,-42.453,
--42.238,-41.942,-41.496,-40.901,-40.230,-39.566,-38.945,-38.353,-37.758,-37.156,-36.571,-36.016,-35.472,-34.900,-34.282,-33.652,
--33.068,-32.561,-32.096,-31.597,-31.007,-30.337,-29.643,-28.977,-28.338,-27.684,-26.981,-26.243,-25.517,-24.831,-24.164,-23.464,
--22.708,-21.933,-21.204,-20.552,-19.934,-19.272,-18.526,-17.748,-17.040,-16.465,-15.979,-15.457,-14.796,-14.002,-13.188,-12.475,
--11.877,-11.275,-10.507,-9.490,-8.291,-7.082,-6.019,-5.137,-4.346,-3.516,-2.581,-1.583,-.638,.148,.747,1.214,
-1.643,2.109,2.627,3.156,3.634,4.020,4.319,4.577,4.855,5.200,5.623,6.112,6.650,7.234,7.868,8.549,
-9.253,9.935,10.556,11.101,11.586,12.039,12.486,12.935,13.398,13.897,14.465,15.126,15.861,16.608,17.275,17.788,
-18.120,18.300,18.393,18.466,18.573,18.740,18.972,19.255,19.562,19.850,20.080,20.226,20.297,20.325,20.364,20.464,
-20.662,20.977,21.408,21.931,22.506,23.083,23.622,24.099,24.519,24.899,25.263,25.636,26.049,26.536,27.105,27.709,
-28.228,28.505,28.423,27.981,27.309,26.606,26.023,25.589,25.229,24.848,24.426,24.034,23.766,23.656,23.651,23.667,
-23.677,23.748,23.979,24.402,24.913,25.312,25.410,25.128,24.531,23.761,22.960,22.231,21.640,21.240,21.057,21.058,
-21.134,21.145,20.998,20.723,20.454,20.347,20.472,20.766,21.082,21.288,21.341,21.297,21.244,21.235,21.256,21.260,
-21.219,21.165,21.172,21.300,21.549,21.852,22.122,22.328,22.533,22.859,23.389,24.072,24.712,25.066,24.980,24.469,
-23.648,22.577,21.125,19.017,16.063,12.425,8.712,5.784,4.343,4.572,6.048,7.993,9.694,10.807,11.394,11.717,
-11.979,12.199,12.280,12.145,11.827,11.440,11.084,10.778,10.480,10.138,9.738,9.297,8.835,8.356,7.865,7.374,
-6.896,6.417,5.896,5.299,4.641,3.991,3.428,2.973,2.584,2.197,1.798,1.429,1.141,.922,.700,.408,
-.065,-.242,-.447,-.605,-.864,-1.337,-1.983,-2.632,-3.166,-3.670,-4.389,-5.460,-6.641,-7.318,-6.879,-5.224,
--2.995,-1.291,-1.013,-2.283,-4.377,-6.213,-7.033,-6.797,-6.042,-5.389,-5.113,-5.068,-4.957,-4.647,-4.262,-4.029,
--4.049,-4.231,-4.403,-4.479,-4.505,-4.568,-4.671,-4.720,-4.624,-4.401,-4.177,-4.078,-4.115,-4.182,-4.158,-4.019,
--3.849,-3.752,-3.748,-3.760,-3.702,-3.561,-3.408,-3.319,-3.295,-3.259,-3.138,-2.940,-2.748,-2.647,-2.642,-2.649,
--2.580,-2.414,-2.214,-2.061,-1.977,-1.913,-1.802,-1.620,-1.408,-1.221,-1.084,-.976,-.867,-.757,-.672,-.625,
--.587,-.505,-.346,-.133,.073,.223,.315,.388,.468,.545,.582,.561,.516,.513,.602,.782,
-1.003,1.207,1.359,1.451,1.480,1.448,1.375,1.316,1.341,1.488,1.722,1.938,2.038,1.993,1.869,1.771,
-1.764,1.829,1.892,1.898,1.851,1.800,1.786,1.802,1.805,1.767,1.710,1.686,1.729,1.819,1.895,1.908,
-1.855,1.781,1.733,1.719,1.703,1.640,1.510,1.328,1.128,.931,.738,.546,.355,.175,.014,-.137,
--.294,-.469,-.659,-.849,-1.021,-1.172,-1.310,-1.446,-1.593,-1.759,-1.953,-2.180,-2.433,-2.695,-2.946,-3.177,
--3.401,-3.637,-3.897,-4.174,-4.445,-4.691,-4.911,-5.118,-5.330,-5.555,-5.790,-6.030,-6.273,-6.518,-6.759,-6.988,
--7.206,-7.425,-7.670,-7.955,-8.273,-8.592,-8.883,-9.133,-9.361,-9.591,-9.839,-10.098,-10.354,-10.604,-10.860,-11.138,
--11.437,-11.739,-12.024,-12.286,-12.546,-12.832,-13.153,-13.498,-13.839,-14.159,-14.463,-14.765,-15.073,-15.379,-15.670,-15.947,
--16.228,-16.535,-16.874,-17.222,-17.551,-17.842,-18.108,-18.374,-18.659,-18.957,-19.248,-19.514,-19.755,-19.985,-20.218,-20.457,
--20.694,-20.926,-21.156,-21.391,-21.630,-21.862,-22.074,-22.264,-22.443,-22.630,-22.835,-23.057,-23.282,-23.493,-23.673,-23.806,
--23.885,-23.919,-23.936,-23.969,-24.027,-24.086,-24.095,-24.023,-23.888,-23.754,-23.681,-23.678,-23.690,-23.646,-23.524,-23.372,
--23.276,-23.285,-23.371,-23.454,-23.469,-23.422,-23.374,-23.389,-23.473,-23.580,-23.658,-23.693,-23.718,-23.773,-23.865,-23.971,
--24.071,-24.173,-24.294,-24.426,-24.525,-24.548,-24.503,-24.460,-24.478,-24.515,-24.401,-23.940,-23.070,-21.973,-21.009,-20.506,
--20.539,-20.868,-21.080,-20.857,-20.166,-19.263,-18.511,-18.163,-18.239,-18.577,-18.972,-19.294,-19.521,-19.679,-19.775,-19.777,
--19.650,-19.405,-19.103,-18.819,-18.592,-18.397,-18.169,-17.858,-17.465,-17.035,-16.627,-16.275,-15.973,-15.702,-15.454,-15.243,
--15.090,-14.987,-14.883,-14.704,-14.396,-13.962,-13.468,-13.021,-12.718,-12.603,-12.652,-12.769,-12.827,-12.718,-12.407,-11.963,
--11.543,-11.311,-11.344,-11.585,-11.879,-12.084,-12.171,-12.244,-12.451,-12.862,-13.399,-13.887,-14.184,-14.280,-14.300,-14.398,
--14.644,-14.991,-15.336,-15.614,-15.835,-16.040,-16.231,-16.346,-16.314,-16.140,-15.930,-15.833,-15.929,-16.181,-16.471,-16.706,
--16.895,-17.135,-17.524,-18.080,-18.729,-19.369,-19.940,-20.442,-20.899,-21.310,-21.646,-21.892,-22.090,-22.329,-22.689,-23.174,
--23.716,-24.220,-24.637,-24.981,-25.302,-25.624,-25.930,-26.186,-26.380,-26.536,-26.687,-26.843,-26.984,-27.099,-27.212,-27.384,
--27.658,-28.016,-28.382,-28.678,-28.889,-29.067,-29.272,-29.495,-29.641,-29.605,-29.376,-29.092,-28.979,-29.215,-29.808,-30.586,
--31.297,-31.751,-31.901,-31.835,-31.699,-31.627,-31.712,-32.008,-32.536,-33.259,-34.071,-34.817,-35.366,-35.677,-35.817,-35.912,
--36.057,-36.266,-36.483,-36.649,-36.753,-36.835,-36.945,-37.092,-37.239,-37.334,-37.351,-37.306,-37.232,-37.154,-37.075,-36.989,
--36.903,-36.835,-36.806,-36.819,-36.853,-36.875,-36.859,-36.795,-36.696,-36.590,-36.520,-36.530,-36.641,-36.836,-37.052,-37.209,
--37.246,-37.151,-36.962,-36.735,-36.514,-36.313,-36.123,-35.931,-35.732,-35.524,-35.308,-35.086,-34.863,-34.644,-34.427,-34.198,
--33.938,-33.641,-33.320,-32.998,-32.685,-32.361,-31.992,-31.555,-31.065,-30.564,-30.086,-29.636,-29.195,-28.757,-28.361,-28.073,
--27.942,-27.946,-27.990,-27.953,-27.748,-27.362,-26.848,-26.289,-25.762,-25.309,-24.934,-24.596,-24.224,-23.754,-23.168,-22.525,
--21.932,-21.485,-21.210,-21.054,-20.934,-20.799,-20.655,-20.533,-20.432,-20.306,-20.095,-19.781,-19.402,-19.023,-18.681,-18.367,
--18.059,-17.764,-17.519,-17.340,-17.173,-16.902,-16.429,-15.764,-15.041,-14.435,-14.037,-13.791,-13.535,-13.121,-12.507,-11.765,
--11.001,-10.266,-9.528,-8.720,-7.803,-6.804,-5.793,-4.830,-3.928,-3.051,-2.144,-1.178,-.165,.839,1.768,2.582,
-3.299,3.991,4.743,5.589,6.475,7.276,7.876,8.248,8.498,8.810,9.347,10.168,11.194,12.269,13.246,14.051,
-14.709,15.306,15.934,16.642,17.416,18.205,18.967,19.714,20.523,21.487,22.635,23.884,25.060,26.003,26.676,27.204,
-27.799,28.626,29.697,30.875,31.982,32.915,33.689,34.379,35.015,35.532,35.812,35.791,35.528,35.193,34.974,34.968,
-35.147,35.405,35.649,35.859,36.091,36.426,36.916,37.552,38.285,39.055,39.814,40.535,41.208,41.836,42.435,43.022,
-43.604,44.171,44.696,45.161,45.575,45.987,46.457,47.020,47.662,48.327,48.950,49.505,50.016,50.534,51.090,51.672,
-52.229,52.713,53.119,53.485,53.868,54.302,54.775,55.247,55.682,56.084,56.489,56.945,57.475,58.064,58.671,59.255,
-59.797,60.300,60.774,61.221,61.625,61.973,62.271,62.559,62.896,63.330,63.862,64.442,64.984,65.418,65.717,65.901,
-66.012,66.076,66.098,66.068,65.986,65.876,65.769,65.681,65.606,65.522,65.416,65.293,65.160,65.007,64.795,64.481,
-64.049,63.533,63.007,62.554,62.228,62.046,61.990,62.025,62.106,62.177,62.185,62.095,61.910,61.673,61.446,61.269,
-61.141,61.020,60.853,60.609,60.298,59.959,59.635,59.354,59.111,58.885,58.647,58.384,58.102,57.819,57.548,57.288,
-57.026,56.753,56.482,56.247,56.074,55.950,55.817,55.594,55.219,54.685,54.032,53.315,52.579,51.852,51.170,50.589,
-50.165,49.922,49.832,49.830,49.863,49.917,50.000,50.098,50.142,50.032,49.710,49.218,48.695,48.295,48.092,48.044,
-48.037,47.995,47.940,47.984,48.238,48.726,49.346,49.923,50.297,50.398,50.263,49.999,49.724,49.520,49.409,49.360,
-49.315,49.214,49.029,48.778,48.517,48.310,48.193,48.150,48.125,48.057,47.920,47.743,47.587,47.823,47.763,47.753,
-47.787,47.833,47.863,47.884,47.937,48.054,48.222,48.373,48.434,48.392,48.311,48.294,48.393,48.563,48.693,48.700,
-48.619,48.591,48.767,49.183,49.713,50.132,50.263,50.075,49.698,49.332,49.133,49.142,49.296,49.473,49.547,49.438,
-49.147,48.776,48.508,48.526,48.893,49.484,50.029,50.272,50.140,49.804,49.556,49.598,49.892,50.190,50.217,49.872,
-49.290,48.728,48.376,48.247,48.212,48.139,47.994,47.836,47.733,47.672,47.564,47.314,46.907,46.417,45.957,45.614,
-45.410,45.315,45.279,45.250,45.180,45.033,44.800,44.512,44.222,43.974,43.770,43.575,43.346,43.078,42.803,42.567,
-42.392,42.264,42.157,42.072,42.041,42.107,42.268,42.452,42.519,42.323,41.781,40.936,39.970,39.137,38.654,38.593,
-38.823,39.072,39.054,38.606,37.751,36.655,35.528,34.525,33.721,33.132,32.744,32.526,32.415,32.322,32.152,31.852,
-31.424,30.908,30.355,29.802,29.279,28.818,28.437,28.117,27.793,27.386,26.861,26.255,25.657,25.141,24.713,24.315,
-23.881,23.399,22.912,22.477,22.116,21.802,21.500,21.195,20.898,20.615,20.323,19.982,19.564,19.084,18.578,18.069,
-17.548,16.992,16.400,15.807,15.264,14.788,14.351,13.907,13.438,12.972,12.550,12.181,11.818,11.389,10.854,10.229,
-9.573,8.945,8.371,7.848,7.368,6.928,6.522,6.124,5.697,5.215,4.687,4.138,3.582,2.985,2.287,1.448,
-.492,-.484,-1.365,-2.075,-2.612,-3.032,-3.413,-3.811,-4.257,-4.764,-5.339,-5.978,-6.671,-7.396,-8.135,-8.878,
--9.622,-10.358,-11.067,-11.727,-12.326,-12.867,-13.368,-13.844,-14.295,-14.715,-15.098,-15.449,-15.780,-16.096,-16.394,-16.673,
--16.946,-17.244,-17.603,-18.034,-18.508,-18.961,-19.336,-19.614,-19.830,-20.045,-20.314,-20.646,-21.017,-21.386,-21.725,-22.027,
--22.291,-22.523,-22.736,-22.970,-23.287,-23.740,-24.325,-24.966,-25.545,-25.977,-26.270,-26.520,-26.845,-27.301,-27.842,-28.365,
--28.787,-29.110,-29.406,-29.755,-30.182,-30.650,-31.098,-31.500,-31.887,-32.309,-32.791,-33.304,-33.784,-34.180,-34.483,-34.729,
--34.960,-35.199,-35.436,-35.645,-35.814,-35.962,-36.126,-36.344,-36.622,-36.934,-37.234,-37.490,-37.719,-37.973,-38.306,-38.719,
--39.138,-39.453,-39.585,-39.561,-39.508,-39.586,-39.886,-40.373,-40.918,-41.387,-41.724,-41.969,-42.193,-42.436,-42.668,-42.836,
--42.920,-42.966,-43.057,-43.248,-43.529,-43.842,-44.124,-44.357,-44.570,-44.810,-45.113,-45.492,-45.951,-46.481,-47.050,-47.595,
--48.036,-48.319,-48.454,-48.516,-48.604,-48.778,-49.036,-49.325,-49.594,-49.818,-49.994,-50.115,-50.166,-50.146,-50.098,-50.098,
--50.213,-50.449,-50.741,-51.001,-51.171,-51.251,-51.259,-51.182,-50.975,-50.607,-50.132,-49.692,-49.435,-49.402,-49.481,-49.482,
--49.284,-48.953,-48.722,-48.849,-49.454,-50.450,-51.621,-52.752,-53.728,-54.526,-55.132,-55.484,-55.494,-55.135,-54.498,-53.767,
--53.116,-52.598,-52.117,-51.499,-50.612,-49.448,-48.130,-46.837,-45.736,-44.930,-44.463,-44.336,-44.507,-44.890,-45.363,-45.807,
--46.163,-46.471,-46.851,-47.429,-48.237,-49.167,-50.001,-50.517,-50.599,-50.295,-49.778,-49.248,-48.829,-48.537,-48.316,-48.104,
--47.873,-47.620,-47.341,-47.010,-46.611,-46.172,-45.776,-45.523,-45.458,-45.533,-45.627,-45.612,-45.419,-45.056,-44.583,-44.069,
--43.580,-43.180,-42.932,-42.877,-42.997,-43.211,-43.410,-43.517,-43.524,-43.473,-43.405,-43.324,-43.198,-43.008,-42.769,-42.522,
--42.290,-42.049,-41.745,-41.343,-40.854,-40.325,-39.789,-39.240,-38.648,-38.008,-37.356,-36.748,-36.203,-35.679,-35.111,-34.465,
--33.784,-33.150,-32.618,-32.168,-31.720,-31.199,-30.582,-29.899,-29.187,-28.456,-27.697,-26.918,-26.156,-25.451,-24.803,-24.158,
--23.452,-22.669,-21.861,-21.100,-20.407,-19.731,-18.995,-18.182,-17.365,-16.651,-16.084,-15.595,-15.056,-14.389,-13.638,-12.939,
--12.390,-11.956,-11.466,-10.733,-9.684,-8.407,-7.086,-5.875,-4.818,-3.858,-2.921,-1.988,-1.107,-.347,.263,.751,
-1.192,1.654,2.172,2.731,3.285,3.778,4.176,4.482,4.735,4.996,5.318,5.726,6.217,6.776,7.392,8.056,
-8.751,9.444,10.091,10.664,11.167,11.636,12.105,12.584,13.062,13.528,14.005,14.546,15.200,15.959,16.745,17.438,
-17.937,18.217,18.338,18.403,18.510,18.704,18.981,19.308,19.645,19.955,20.204,20.365,20.434,20.443,20.459,20.556,
-20.778,21.119,21.535,21.973,22.410,22.854,23.334,23.863,24.427,24.990,25.505,25.940,26.291,26.589,26.889,27.251,
-27.686,28.131,28.442,28.461,28.104,27.422,26.589,25.815,25.231,24.845,24.577,24.348,24.147,24.027,24.040,24.183,
-24.393,24.608,24.808,25.014,25.237,25.431,25.498,25.349,24.960,24.390,23.738,23.085,22.480,21.955,21.556,21.330,
-21.285,21.358,21.438,21.434,21.342,21.246,21.250,21.397,21.627,21.823,21.894,21.832,21.708,21.598,21.527,21.465,
-21.372,21.261,21.214,21.333,21.662,22.143,22.636,23.007,23.212,23.325,23.482,23.777,24.173,24.507,24.563,24.178,
-23.291,21.910,20.038,17.650,14.760,11.553,8.462,6.077,4.911,5.131,6.448,8.245,9.883,10.993,11.572,11.857,
-12.089,12.339,12.513,12.480,12.201,11.758,11.279,10.852,10.482,10.132,9.771,9.393,8.987,8.530,7.998,7.411,
-6.831,6.325,5.895,5.472,4.968,4.355,3.698,3.098,2.615,2.221,1.850,1.467,1.099,.785,.515,.226,
--.123,-.482,-.737,-.829,-.857,-1.038,-1.533,-2.280,-3.028,-3.565,-3.952,-4.518,-5.543,-6.894,-7.937,-7.905,
--6.501,-4.257,-2.332,-1.803,-2.967,-5.148,-7.161,-8.082,-7.768,-6.789,-5.904,-5.520,-5.533,-5.574,-5.393,-5.036,
--4.727,-4.627,-4.700,-4.797,-4.820,-4.808,-4.854,-4.978,-5.084,-5.053,-4.867,-4.642,-4.527,-4.568,-4.675,-4.705,
--4.591,-4.390,-4.216,-4.132,-4.107,-4.066,-3.974,-3.867,-3.797,-3.769,-3.721,-3.593,-3.388,-3.185,-3.068,-3.049,
--3.058,-3.008,-2.871,-2.693,-2.547,-2.456,-2.381,-2.261,-2.075,-1.857,-1.666,-1.528,-1.428,-1.336,-1.246,-1.173,
--1.129,-1.091,-1.018,-.884,-.708,-.539,-.412,-.323,-.239,-.144,-.060,-.022,-.040,-.070,-.044,.076,
-.268,.467,.620,.719,.788,.845,.881,.877,.847,.841,.914,1.073,1.256,1.374,1.380,1.305,
-1.230,1.221,1.276,1.337,1.346,1.294,1.223,1.179,1.173,1.181,1.174,1.155,1.157,1.205,1.291,1.369,
-1.399,1.371,1.315,1.267,1.233,1.187,1.094,.940,.741,.532,.337,.159,-.018,-.204,-.398,-.590,
--.769,-.933,-1.087,-1.240,-1.400,-1.566,-1.733,-1.894,-2.042,-2.183,-2.336,-2.525,-2.762,-3.035,-3.314,-3.573,
--3.804,-4.024,-4.260,-4.523,-4.802,-5.069,-5.306,-5.514,-5.711,-5.917,-6.145,-6.393,-6.657,-6.933,-7.211,-7.477,
--7.719,-7.934,-8.139,-8.362,-8.621,-8.913,-9.209,-9.485,-9.735,-9.975,-10.226,-10.494,-10.766,-11.024,-11.264,-11.499,
--11.748,-12.015,-12.291,-12.561,-12.826,-13.098,-13.392,-13.707,-14.026,-14.334,-14.632,-14.934,-15.252,-15.578,-15.889,-16.171,
--16.431,-16.702,-17.013,-17.367,-17.732,-18.071,-18.369,-18.643,-18.926,-19.230,-19.538,-19.823,-20.066,-20.282,-20.500,-20.740,
--20.999,-21.258,-21.504,-21.738,-21.974,-22.218,-22.459,-22.680,-22.873,-23.049,-23.228,-23.418,-23.616,-23.805,-23.974,-24.117,
--24.231,-24.316,-24.375,-24.419,-24.468,-24.531,-24.590,-24.611,-24.568,-24.472,-24.369,-24.303,-24.273,-24.232,-24.121,-23.935,
--23.733,-23.602,-23.586,-23.652,-23.722,-23.739,-23.711,-23.702,-23.758,-23.868,-23.973,-24.021,-24.017,-24.014,-24.063,-24.173,
--24.315,-24.460,-24.604,-24.757,-24.905,-25.000,-25.009,-24.955,-24.916,-24.942,-24.963,-24.785,-24.209,-23.202,-21.983,-20.924,
--20.327,-20.221,-20.344,-20.323,-19.929,-19.223,-18.496,-18.069,-18.087,-18.467,-18.984,-19.428,-19.710,-19.856,-19.937,-19.997,
--20.026,-19.986,-19.851,-19.622,-19.324,-18.983,-18.618,-18.239,-17.857,-17.486,-17.140,-16.826,-16.539,-16.268,-15.996,-15.721,
--15.450,-15.197,-14.964,-14.740,-14.498,-14.219,-13.900,-13.567,-13.257,-13.006,-12.829,-12.714,-12.618,-12.475,-12.223,-11.835,
--11.357,-10.907,-10.623,-10.592,-10.785,-11.081,-11.345,-11.530,-11.711,-12.015,-12.504,-13.110,-13.664,-14.021,-14.165,-14.218,
--14.339,-14.602,-14.951,-15.271,-15.490,-15.639,-15.800,-16.012,-16.210,-16.275,-16.139,-15.869,-15.632,-15.590,-15.789,-16.146,
--16.528,-16.861,-17.175,-17.561,-18.082,-18.720,-19.392,-20.007,-20.521,-20.943,-21.301,-21.615,-21.894,-22.157,-22.441,-22.788,
--23.215,-23.699,-24.189,-24.636,-25.021,-25.355,-25.662,-25.957,-26.242,-26.501,-26.710,-26.847,-26.906,-26.911,-26.923,-27.015,
--27.234,-27.560,-27.912,-28.194,-28.362,-28.455,-28.556,-28.717,-28.896,-28.979,-28.875,-28.624,-28.413,-28.490,-29.004,-29.891,
--30.885,-31.658,-31.995,-31.895,-31.555,-31.238,-31.148,-31.354,-31.810,-32.414,-33.066,-33.692,-34.247,-34.710,-35.088,-35.405,
--35.686,-35.937,-36.135,-36.256,-36.303,-36.325,-36.388,-36.535,-36.753,-36.984,-37.165,-37.268,-37.308,-37.317,-37.308,-37.271,
--37.190,-37.074,-36.958,-36.891,-36.897,-36.957,-37.022,-37.035,-36.965,-36.824,-36.663,-36.558,-36.570,-36.721,-36.966,-37.218,
--37.377,-37.386,-37.250,-37.020,-36.758,-36.500,-36.251,-36.007,-35.767,-35.543,-35.338,-35.143,-34.940,-34.725,-34.511,-34.316,
--34.141,-33.961,-33.739,-33.456,-33.125,-32.778,-32.436,-32.102,-31.763,-31.412,-31.054,-30.698,-30.338,-29.963,-29.571,-29.184,
--28.841,-28.565,-28.339,-28.112,-27.829,-27.465,-27.029,-26.551,-26.059,-25.580,-25.139,-24.758,-24.435,-24.128,-23.773,-23.328,
--22.816,-22.320,-21.926,-21.662,-21.480,-21.302,-21.085,-20.848,-20.633,-20.450,-20.255,-19.989,-19.637,-19.248,-18.892,-18.602,
--18.350,-18.093,-17.819,-17.558,-17.326,-17.067,-16.665,-16.029,-15.191,-14.320,-13.626,-13.224,-13.058,-12.948,-12.726,-12.333,
--11.828,-11.300,-10.774,-10.193,-9.471,-8.570,-7.532,-6.451,-5.406,-4.425,-3.489,-2.558,-1.610,-.647,.310,1.231,
-2.099,2.915,3.699,4.476,5.249,5.983,6.620,7.117,7.491,7.836,8.286,8.949,9.851,10.917,12.007,12.986,
-13.787,14.443,15.061,15.753,16.562,17.424,18.212,18.827,19.300,19.800,20.537,21.615,22.938,24.253,25.320,26.074,
-26.673,27.374,28.343,29.539,30.755,31.782,32.551,33.152,33.712,34.264,34.703,34.881,34.751,34.432,34.154,34.108,
-34.340,34.739,35.144,35.456,35.696,35.961,36.344,36.876,37.520,38.221,38.937,39.654,40.363,41.048,41.688,42.274,
-42.825,43.366,43.909,44.437,44.920,45.351,45.766,46.224,46.772,47.407,48.074,48.711,49.288,49.831,50.384,50.969,
-51.558,52.097,52.550,52.933,53.307,53.727,54.205,54.702,55.165,55.577,55.966,56.389,56.886,57.454,58.056,58.649,
-59.215,59.753,60.273,60.770,61.226,61.624,61.967,62.279,62.602,62.977,63.425,63.939,64.481,64.996,65.432,65.755,
-65.959,66.061,66.085,66.056,65.995,65.923,65.862,65.825,65.797,65.745,65.634,65.457,65.240,65.025,64.834,64.647,
-64.412,64.082,63.650,63.161,62.684,62.287,62.006,61.848,61.793,61.810,61.848,61.855,61.791,61.652,61.475,61.321,
-61.238,61.221,61.217,61.144,60.943,60.603,60.171,59.723,59.328,59.017,58.782,58.585,58.392,58.190,57.983,57.774,
-57.549,57.278,56.943,56.568,56.220,55.972,55.853,55.813,55.741,55.516,55.068,54.396,53.557,52.632,51.705,50.858,
-50.167,49.680,49.403,49.289,49.270,49.303,49.383,49.521,49.692,49.816,49.786,49.540,49.119,48.652,48.271,48.027,
-47.863,47.667,47.376,47.043,46.813,46.842,47.197,47.812,48.525,49.151,49.568,49.747,49.739,49.630,49.499,49.388,
-49.306,49.235,49.148,49.023,48.853,48.651,48.446,48.272,48.151,48.082,48.038,47.985,47.909,47.823,48.017,47.956,
-47.929,47.975,48.084,48.217,48.338,48.449,48.572,48.711,48.831,48.881,48.850,48.789,48.781,48.868,49.002,49.082,
-49.042,48.932,48.896,49.069,49.456,49.906,50.202,50.210,49.976,49.694,49.582,49.737,50.093,50.471,50.683,50.621,
-50.293,49.813,49.357,49.109,49.183,49.552,50.035,50.375,50.392,50.106,49.737,49.553,49.672,49.962,50.125,49.911,
-49.305,48.530,47.895,47.586,47.570,47.669,47.718,47.671,47.587,47.525,47.471,47.344,47.078,46.687,46.258,45.883,
-45.602,45.397,45.237,45.108,45.018,44.965,44.918,44.839,44.708,44.539,44.357,44.165,43.943,43.668,43.350,43.035,
-42.770,42.575,42.436,42.330,42.265,42.274,42.390,42.597,42.812,42.900,42.722,42.204,41.378,40.389,39.462,38.809,
-38.536,38.583,38.748,38.787,38.521,37.909,37.023,35.985,34.911,33.895,33.028,32.391,32.024,31.888,31.863,31.807,
-31.628,31.313,30.905,30.451,29.969,29.461,28.950,28.471,28.049,27.658,27.234,26.725,26.137,25.534,24.985,24.512,
-24.076,23.625,23.137,22.635,22.155,21.715,21.310,20.939,20.619,20.363,20.145,19.889,19.512,18.983,18.353,17.715,
-17.133,16.610,16.105,15.593,15.094,14.644,14.248,13.858,13.417,12.917,12.420,12.011,11.724,11.499,11.227,10.819,
-10.264,9.624,8.976,8.369,7.815,7.314,6.866,6.464,6.085,5.685,5.236,4.742,4.236,3.737,3.222,2.625,
-1.895,1.041,.141,-.696,-1.396,-1.953,-2.416,-2.843,-3.273,-3.718,-4.182,-4.683,-5.248,-5.896,-6.619,-7.385,
--8.149,-8.874,-9.548,-10.181,-10.792,-11.392,-11.979,-12.537,-13.054,-13.532,-13.989,-14.445,-14.901,-15.335,-15.711,-16.009,
--16.246,-16.472,-16.750,-17.120,-17.575,-18.066,-18.530,-18.917,-19.224,-19.485,-19.762,-20.106,-20.533,-21.022,-21.527,-22.003,
--22.422,-22.783,-23.101,-23.402,-23.717,-24.081,-24.517,-25.021,-25.556,-26.060,-26.487,-26.834,-27.152,-27.506,-27.930,-28.403,
--28.865,-29.260,-29.580,-29.863,-30.163,-30.506,-30.887,-31.281,-31.680,-32.100,-32.565,-33.076,-33.604,-34.096,-34.512,-34.846,
--35.124,-35.386,-35.656,-35.931,-36.183,-36.390,-36.558,-36.722,-36.927,-37.193,-37.492,-37.767,-37.974,-38.134,-38.331,-38.663,
--39.159,-39.728,-40.196,-40.409,-40.343,-40.134,-40.001,-40.110,-40.476,-40.971,-41.428,-41.750,-41.961,-42.147,-42.375,-42.633,
--42.856,-42.995,-43.075,-43.172,-43.361,-43.655,-44.001,-44.324,-44.589,-44.814,-45.060,-45.385,-45.824,-46.381,-47.031,-47.719,
--48.364,-48.882,-49.222,-49.404,-49.508,-49.632,-49.825,-50.064,-50.279,-50.409,-50.452,-50.454,-50.468,-50.515,-50.591,-50.689,
--50.833,-51.064,-51.397,-51.794,-52.171,-52.446,-52.585,-52.607,-52.550,-52.435,-52.253,-51.999,-51.701,-51.428,-51.258,-51.236,
--51.357,-51.587,-51.900,-52.293,-52.775,-53.340,-53.959,-54.598,-55.241,-55.891,-56.530,-57.080,-57.409,-57.380,-56.944,-56.191,
--55.318,-54.531,-53.923,-53.435,-52.903,-52.179,-51.234,-50.177,-49.179,-48.362,-47.736,-47.221,-46.735,-46.274,-45.921,-45.778,
--45.884,-46.182,-46.572,-46.997,-47.496,-48.164,-49.047,-50.053,-50.958,-51.505,-51.549,-51.127,-50.432,-49.695,-49.081,-48.641,
--48.347,-48.143,-47.980,-47.814,-47.599,-47.306,-46.954,-46.615,-46.380,-46.296,-46.327,-46.363,-46.293,-46.056,-45.665,-45.167,
--44.612,-44.039,-43.506,-43.095,-42.894,-42.938,-43.173,-43.477,-43.717,-43.825,-43.804,-43.701,-43.555,-43.374,-43.152,-42.892,
--42.609,-42.313,-41.995,-41.639,-41.238,-40.811,-40.377,-39.930,-39.437,-38.864,-38.222,-37.567,-36.960,-36.413,-35.871,-35.264,
--34.570,-33.849,-33.201,-32.686,-32.274,-31.872,-31.385,-30.780,-30.081,-29.330,-28.552,-27.756,-26.959,-26.194,-25.486,-24.817,
--24.129,-23.369,-22.538,-21.694,-20.904,-20.178,-19.463,-18.697,-17.880,-17.084,-16.393,-15.819,-15.283,-14.680,-13.979,-13.264,
--12.661,-12.226,-11.870,-11.403,-10.657,-9.597,-8.327,-7.009,-5.759,-4.603,-3.518,-2.494,-1.563,-.774,-.144,.366,
-.826,1.296,1.802,2.335,2.874,3.394,3.872,4.286,4.624,4.901,5.160,5.459,5.844,6.333,6.917,7.570,
-8.263,8.959,9.624,10.229,10.768,11.263,11.751,12.251,12.757,13.248,13.720,14.207,14.769,15.444,16.209,16.970,
-17.611,18.055,18.307,18.449,18.584,18.781,19.053,19.372,19.697,20.003,20.275,20.497,20.647,20.723,20.761,20.830,
-21.006,21.317,21.722,22.139,22.505,22.817,23.139,23.549,24.087,24.727,25.400,26.033,26.581,27.029,27.381,27.655,
-27.880,28.089,28.282,28.402,28.339,27.990,27.337,26.491,25.649,24.994,24.603,24.427,24.362,24.339,24.366,24.498,
-24.763,25.126,25.496,25.785,25.943,25.965,25.860,25.636,25.306,24.896,24.447,23.986,23.516,23.025,22.528,22.087,
-21.784,21.669,21.712,21.820,21.901,21.927,21.946,22.021,22.164,22.311,22.372,22.305,22.153,22.004,21.913,21.858,
-21.765,21.596,21.417,21.387,21.657,22.255,23.039,23.758,24.194,24.272,24.090,23.830,23.628,23.488,23.278,22.808,
-21.910,20.484,18.498,15.987,13.083,10.068,7.378,5.508,4.822,5.372,6.828,8.615,10.166,11.169,11.649,11.860,
-12.055,12.325,12.571,12.633,12.424,11.996,11.481,10.988,10.545,10.125,9.704,9.296,8.919,8.555,8.139,7.614,
-6.997,6.381,5.863,5.459,5.085,4.625,4.034,3.377,2.770,2.284,1.895,1.526,1.135,.747,.411,.123,
--.181,-.551,-.940,-1.222,-1.316,-1.303,-1.405,-1.812,-2.501,-3.240,-3.801,-4.213,-4.776,-5.777,-7.109,-8.155,
--8.136,-6.718,-4.412,-2.401,-1.836,-3.089,-5.493,-7.786,-8.918,-8.647,-7.542,-6.453,-5.910,-5.881,-5.987,-5.907,
--5.621,-5.331,-5.215,-5.266,-5.336,-5.315,-5.236,-5.215,-5.311,-5.448,-5.485,-5.359,-5.147,-4.998,-4.997,-5.090,
--5.139,-5.050,-4.845,-4.634,-4.506,-4.468,-4.460,-4.428,-4.373,-4.329,-4.304,-4.262,-4.155,-3.980,-3.794,-3.667,
--3.615,-3.588,-3.515,-3.365,-3.173,-2.999,-2.870,-2.762,-2.631,-2.460,-2.278,-2.124,-2.013,-1.921,-1.824,-1.720,
--1.640,-1.603,-1.597,-1.575,-1.499,-1.368,-1.214,-1.069,-.939,-.811,-.686,-.590,-.556,-.580,-.611,-.580,
--.452,-.263,-.084,.033,.093,.142,.217,.307,.369,.377,.357,.368,.452,.591,.718,.774,
-.750,.698,.676,.704,.751,.768,.736,.673,.617,.591,.591,.599,.609,.633,.684,.756,
-.823,.858,.852,.819,.778,.733,.664,.547,.375,.164,-.053,-.251,-.426,-.590,-.764,-.959,
--1.168,-1.376,-1.564,-1.726,-1.868,-2.006,-2.155,-2.316,-2.483,-2.645,-2.802,-2.970,-3.171,-3.414,-3.686,-3.958,
--4.205,-4.426,-4.640,-4.869,-5.121,-5.384,-5.639,-5.874,-6.095,-6.316,-6.544,-6.779,-7.020,-7.268,-7.530,-7.807,
--8.085,-8.347,-8.584,-8.807,-9.040,-9.301,-9.586,-9.872,-10.141,-10.388,-10.629,-10.880,-11.141,-11.399,-11.637,-11.854,
--12.069,-12.298,-12.548,-12.814,-13.084,-13.360,-13.647,-13.950,-14.258,-14.555,-14.833,-15.103,-15.389,-15.706,-16.044,-16.373,
--16.672,-16.945,-17.220,-17.524,-17.861,-18.205,-18.532,-18.837,-19.140,-19.465,-19.810,-20.143,-20.428,-20.656,-20.851,-21.058,
--21.301,-21.572,-21.844,-22.096,-22.331,-22.568,-22.814,-23.060,-23.284,-23.480,-23.659,-23.840,-24.028,-24.208,-24.356,-24.464,
--24.544,-24.617,-24.693,-24.770,-24.840,-24.905,-24.967,-25.021,-25.051,-25.037,-24.982,-24.912,-24.858,-24.818,-24.756,-24.629,
--24.432,-24.214,-24.044,-23.963,-23.952,-23.960,-23.956,-23.959,-24.015,-24.138,-24.290,-24.396,-24.415,-24.369,-24.326,-24.343,
--24.435,-24.579,-24.755,-24.959,-25.180,-25.370,-25.463,-25.432,-25.334,-25.278,-25.312,-25.328,-25.085,-24.370,-23.190,-21.829,
--20.702,-20.096,-19.986,-20.062,-19.959,-19.511,-18.848,-18.279,-18.066,-18.269,-18.737,-19.241,-19.622,-19.846,-19.973,-20.073,
--20.177,-20.264,-20.285,-20.187,-19.934,-19.521,-18.990,-18.419,-17.901,-17.497,-17.211,-17.001,-16.809,-16.601,-16.371,-16.130,
--15.880,-15.610,-15.304,-14.958,-14.587,-14.216,-13.874,-13.575,-13.324,-13.115,-12.935,-12.768,-12.604,-12.433,-12.233,-11.973,
--11.627,-11.203,-10.773,-10.456,-10.357,-10.503,-10.817,-11.170,-11.468,-11.723,-12.025,-12.453,-12.991,-13.522,-13.919,-14.142,
--14.276,-14.455,-14.755,-15.129,-15.452,-15.634,-15.692,-15.732,-15.842,-16.009,-16.125,-16.074,-15.849,-15.569,-15.412,-15.499,
--15.824,-16.285,-16.767,-17.224,-17.688,-18.212,-18.809,-19.432,-20.006,-20.482,-20.862,-21.193,-21.520,-21.864,-22.216,-22.562,
--22.907,-23.271,-23.674,-24.111,-24.553,-24.958,-25.310,-25.625,-25.942,-26.283,-26.625,-26.902,-27.047,-27.043,-26.955,-26.895,
--26.961,-27.167,-27.441,-27.669,-27.785,-27.813,-27.847,-27.968,-28.173,-28.354,-28.371,-28.164,-27.828,-27.590,-27.698,-28.268,
--29.208,-30.242,-31.052,-31.437,-31.402,-31.140,-30.911,-30.907,-31.172,-31.626,-32.136,-32.608,-33.022,-33.415,-33.834,-34.296,
--34.770,-35.199,-35.521,-35.705,-35.762,-35.749,-35.746,-35.823,-36.010,-36.281,-36.582,-36.860,-37.094,-37.286,-37.443,-37.551,
--37.584,-37.527,-37.401,-37.260,-37.167,-37.149,-37.189,-37.233,-37.225,-37.136,-36.983,-36.824,-36.732,-36.764,-36.928,-37.173,
--37.400,-37.516,-37.475,-37.299,-37.055,-36.800,-36.552,-36.290,-35.991,-35.662,-35.339,-35.057,-34.822,-34.615,-34.418,-34.233,
--34.080,-33.963,-33.853,-33.697,-33.461,-33.156,-32.837,-32.558,-32.337,-32.142,-31.916,-31.609,-31.203,-30.714,-30.182,-29.657,
--29.187,-28.794,-28.464,-28.147,-27.793,-27.381,-26.935,-26.501,-26.105,-25.740,-25.383,-25.026,-24.692,-24.405,-24.156,-23.894,
--23.567,-23.171,-22.765,-22.422,-22.168,-21.959,-21.718,-21.406,-21.053,-20.722,-20.446,-20.197,-19.918,-19.580,-19.218,-18.892,
--18.633,-18.416,-18.192,-17.935,-17.658,-17.364,-17.000,-16.472,-15.722,-14.811,-13.921,-13.255,-12.908,-12.803,-12.756,-12.607,
--12.310,-11.930,-11.545,-11.164,-10.712,-10.090,-9.255,-8.239,-7.126,-5.994,-4.890,-3.832,-2.827,-1.880,-.986,-.126,
-.726,1.583,2.440,3.270,4.044,4.741,5.356,5.901,6.401,6.899,7.448,8.096,8.873,9.773,10.756,11.753,
-12.690,13.523,14.266,14.988,15.771,16.639,17.520,18.277,18.813,19.179,19.580,20.262,21.333,22.668,23.977,25.005,
-25.713,26.300,27.040,28.066,29.266,30.374,31.177,31.661,31.987,32.335,32.743,33.094,33.242,33.161,32.997,32.972,
-33.227,33.726,34.305,34.795,35.142,35.421,35.756,36.228,36.829,37.496,38.172,38.841,39.518,40.205,40.877,41.493,
-42.039,42.542,43.050,43.595,44.160,44.700,45.181,45.618,46.068,46.588,47.191,47.837,48.469,49.061,49.633,50.221,
-50.832,51.427,51.946,52.366,52.727,53.109,53.568,54.094,54.620,55.082,55.471,55.843,56.277,56.808,57.412,58.030,
-58.613,59.157,59.685,60.214,60.729,61.198,61.601,61.951,62.286,62.650,63.068,63.537,64.037,64.539,65.012,65.420,
-65.734,65.937,66.033,66.043,66.003,65.944,65.897,65.882,65.897,65.917,65.895,65.788,65.579,65.297,64.999,64.733,
-64.507,64.287,64.025,63.691,63.293,62.866,62.454,62.093,61.808,61.616,61.518,61.491,61.486,61.448,61.355,61.239,
-61.165,61.191,61.318,61.465,61.510,61.349,60.952,60.390,59.794,59.296,58.968,58.799,58.714,58.629,58.492,58.300,
-58.066,57.793,57.454,57.025,56.527,56.040,55.678,55.515,55.535,55.614,55.580,55.284,54.666,53.765,52.698,51.615,
-50.657,49.922,49.437,49.159,48.999,48.880,48.773,48.708,48.724,48.819,48.924,48.941,48.812,48.563,48.289,48.080,
-47.954,47.842,47.639,47.290,46.840,46.423,46.195,46.255,46.605,47.162,47.799,48.398,48.885,49.228,49.426,49.491,
-49.445,49.319,49.156,49.001,48.877,48.778,48.670,48.527,48.354,48.193,48.089,48.058,48.065,48.061,48.017,48.167,
-48.129,48.124,48.216,48.413,48.659,48.892,49.082,49.241,49.377,49.473,49.495,49.441,49.368,49.357,49.441,49.562,
-49.609,49.510,49.309,49.149,49.162,49.366,49.641,49.825,49.852,49.814,49.896,50.233,50.792,51.368,51.701,51.612,
-51.099,50.327,49.545,48.994,48.822,49.039,49.512,50.009,50.295,50.258,49.966,49.627,49.439,49.433,49.444,49.219,
-48.618,47.740,46.883,46.354,46.283,46.563,46.952,47.243,47.369,47.373,47.319,47.217,47.035,46.761,46.438,46.139,
-45.903,45.709,45.507,45.276,45.053,44.899,44.844,44.856,44.869,44.835,44.742,44.602,44.420,44.180,43.879,43.544,
-43.228,42.977,42.795,42.651,42.516,42.397,42.333,42.359,42.464,42.585,42.632,42.518,42.196,41.667,40.992,40.282,
-39.668,39.246,39.028,38.930,38.810,38.539,38.040,37.292,36.313,35.155,33.923,32.782,31.913,31.434,31.317,31.403,
-31.485,31.425,31.204,30.878,30.500,30.071,29.566,28.995,28.415,27.897,27.455,27.035,26.559,25.996,25.388,24.812,
-24.317,23.894,23.500,23.095,22.668,22.221,21.752,21.264,20.787,20.379,20.077,19.852,19.600,19.201,18.605,17.870,
-17.115,16.436,15.854,15.334,14.852,14.424,14.082,13.811,13.536,13.167,12.682,12.155,11.699,11.378,11.157,10.926,
-10.589,10.123,9.574,9.005,8.450,7.915,7.406,6.940,6.535,6.173,5.805,5.380,4.889,4.363,3.846,3.344,
-2.814,2.203,1.496,.734,-.010,-.681,-1.270,-1.807,-2.331,-2.855,-3.371,-3.868,-4.351,-4.851,-5.402,-6.022,
--6.697,-7.391,-8.066,-8.703,-9.313,-9.918,-10.530,-11.137,-11.708,-12.226,-12.705,-13.187,-13.707,-14.259,-14.792,-15.242,
--15.577,-15.821,-16.043,-16.313,-16.666,-17.092,-17.557,-18.023,-18.469,-18.887,-19.286,-19.687,-20.120,-20.613,-21.169,-21.763,
--22.349,-22.885,-23.352,-23.762,-24.139,-24.504,-24.867,-25.236,-25.619,-26.021,-26.440,-26.860,-27.263,-27.648,-28.027,-28.419,
--28.828,-29.232,-29.599,-29.906,-30.159,-30.396,-30.660,-30.984,-31.374,-31.819,-32.300,-32.801,-33.310,-33.815,-34.297,-34.734,
--35.112,-35.435,-35.723,-36.006,-36.297,-36.586,-36.848,-37.069,-37.264,-37.469,-37.711,-37.972,-38.197,-38.341,-38.425,-38.557,
--38.873,-39.433,-40.145,-40.797,-41.165,-41.163,-40.903,-40.627,-40.559,-40.772,-41.171,-41.581,-41.877,-42.057,-42.208,-42.414,
--42.688,-42.967,-43.179,-43.308,-43.406,-43.550,-43.787,-44.108,-44.467,-44.823,-45.167,-45.519,-45.910,-46.365,-46.897,-47.504,
--48.160,-48.809,-49.380,-49.812,-50.091,-50.255,-50.367,-50.468,-50.556,-50.604,-50.600,-50.582,-50.613,-50.734,-50.924,-51.111,
--51.227,-51.277,-51.339,-51.518,-51.859,-52.297,-52.688,-52.887,-52.839,-52.598,-52.290,-52.025,-51.854,-51.764,-51.737,-51.801,
--52.032,-52.515,-53.269,-54.217,-55.208,-56.085,-56.759,-57.234,-57.588,-57.914,-58.270,-58.649,-58.983,-59.169,-59.108,-58.747,
--58.113,-57.309,-56.474,-55.713,-55.042,-54.391,-53.675,-52.880,-52.098,-51.467,-51.060,-50.808,-50.524,-50.038,-49.333,-48.576,
--48.011,-47.788,-47.859,-48.035,-48.150,-48.209,-48.396,-48.917,-49.815,-50.881,-51.750,-52.106,-51.856,-51.155,-50.297,-49.545,
--49.033,-48.761,-48.658,-48.643,-48.647,-48.606,-48.478,-48.265,-48.019,-47.818,-47.704,-47.647,-47.558,-47.355,-47.013,-46.566,
--46.068,-45.543,-44.990,-44.429,-43.928,-43.597,-43.512,-43.658,-43.923,-44.164,-44.281,-44.261,-44.148,-43.993,-43.811,-43.589,
--43.310,-42.974,-42.593,-42.181,-41.746,-41.298,-40.852,-40.414,-39.970,-39.487,-38.943,-38.349,-37.751,-37.185,-36.646,-36.083,
--35.445,-34.737,-34.030,-33.410,-32.913,-32.489,-32.038,-31.481,-30.804,-30.050,-29.274,-28.504,-27.740,-26.982,-26.240,-25.519,
--24.799,-24.041,-23.215,-22.339,-21.470,-20.655,-19.896,-19.149,-18.380,-17.606,-16.887,-16.263,-15.704,-15.118,-14.430,-13.653,
--12.898,-12.277,-11.809,-11.385,-10.839,-10.058,-9.047,-7.905,-6.733,-5.577,-4.433,-3.304,-2.242,-1.325,-.598,-.034,
-.451,.941,1.464,1.997,2.504,2.973,3.419,3.860,4.288,4.675,5.003,5.291,5.591,5.964,6.448,7.047,
-7.730,8.447,9.148,9.797,10.379,10.912,11.425,11.944,12.470,12.985,13.476,13.958,14.477,15.076,15.762,16.484,
-17.158,17.711,18.126,18.441,18.725,19.027,19.352,19.672,19.957,20.202,20.427,20.652,20.873,21.064,21.200,21.294,
-21.395,21.566,21.831,22.157,22.484,22.772,23.051,23.397,23.879,24.505,25.214,25.926,26.592,27.209,27.780,28.276,
-28.629,28.781,28.730,28.537,28.267,27.931,27.482,26.874,26.140,25.409,24.845,24.547,24.496,24.587,24.723,24.874,
-25.078,25.374,25.744,26.106,26.361,26.447,26.362,26.150,25.866,25.557,25.250,24.951,24.635,24.260,23.800,23.278,
-22.783,22.423,22.264,22.283,22.383,22.467,22.503,22.525,22.579,22.666,22.722,22.684,22.550,22.404,22.348,22.411,
-22.516,22.532,22.400,22.211,22.178,22.497,23.200,24.093,24.856,25.211,25.066,24.523,23.777,22.960,22.068,20.988,
-19.587,17.797,15.633,13.177,10.567,8.027,5.885,4.527,4.254,5.107,6.786,8.739,10.398,11.436,11.868,11.967,
-12.036,12.215,12.433,12.516,12.348,11.954,11.463,10.995,10.581,10.168,9.705,9.202,8.724,8.322,7.970,7.581,
-7.082,6.489,5.899,5.407,5.021,4.650,4.181,3.583,2.934,2.350,1.890,1.511,1.126,.696,.272,-.071,
--.321,-.554,-.863,-1.249,-1.606,-1.819,-1.893,-1.979,-2.257,-2.772,-3.393,-3.959,-4.474,-5.135,-6.126,-7.307,
--8.128,-7.913,-6.396,-4.072,-2.059,-1.466,-2.689,-5.140,-7.614,-9.040,-9.079,-8.185,-7.153,-6.545,-6.407,-6.431,
--6.319,-6.039,-5.774,-5.700,-5.802,-5.915,-5.898,-5.764,-5.654,-5.681,-5.821,-5.938,-5.919,-5.774,-5.619,-5.557,
--5.582,-5.594,-5.496,-5.285,-5.047,-4.882,-4.825,-4.836,-4.854,-4.854,-4.846,-4.839,-4.813,-4.735,-4.596,-4.429,
--4.286,-4.190,-4.113,-4.004,-3.840,-3.643,-3.456,-3.304,-3.175,-3.042,-2.897,-2.758,-2.648,-2.564,-2.478,-2.368,
--2.246,-2.154,-2.125,-2.149,-2.173,-2.138,-2.024,-1.852,-1.663,-1.483,-1.321,-1.184,-1.095,-1.073,-1.109,-1.154,
--1.142,-1.037,-.865,-.691,-.568,-.501,-.450,-.375,-.277,-.193,-.158,-.163,-.161,-.102,.017,.149,
-.230,.230,.171,.108,.079,.089,.108,.109,.085,.051,.025,.017,.024,.042,.073,.120,
-.178,.234,.272,.283,.269,.237,.186,.107,-.015,-.184,-.390,-.611,-.823,-1.014,-1.189,-1.361,
--1.547,-1.754,-1.972,-2.184,-2.374,-2.537,-2.682,-2.824,-2.971,-3.124,-3.279,-3.438,-3.614,-3.820,-4.058,-4.313,
--4.564,-4.797,-5.014,-5.231,-5.458,-5.695,-5.932,-6.167,-6.404,-6.656,-6.923,-7.194,-7.449,-7.679,-7.896,-8.121,
--8.370,-8.638,-8.911,-9.174,-9.433,-9.702,-9.988,-10.284,-10.568,-10.824,-11.058,-11.288,-11.528,-11.779,-12.024,-12.248,
--12.452,-12.652,-12.865,-13.099,-13.350,-13.612,-13.886,-14.177,-14.486,-14.801,-15.103,-15.381,-15.644,-15.918,-16.219,-16.545,
--16.876,-17.191,-17.486,-17.776,-18.079,-18.396,-18.715,-19.021,-19.322,-19.635,-19.977,-20.337,-20.679,-20.968,-21.200,-21.402,
--21.619,-21.872,-22.151,-22.426,-22.678,-22.913,-23.148,-23.393,-23.633,-23.848,-24.033,-24.209,-24.397,-24.598,-24.786,-24.926,
--25.004,-25.041,-25.075,-25.128,-25.197,-25.264,-25.319,-25.365,-25.409,-25.443,-25.449,-25.415,-25.353,-25.288,-25.232,-25.169,
--25.066,-24.909,-24.716,-24.533,-24.394,-24.302,-24.244,-24.218,-24.244,-24.341,-24.494,-24.647,-24.740,-24.753,-24.721,-24.701,
--24.721,-24.777,-24.858,-24.982,-25.178,-25.440,-25.689,-25.815,-25.775,-25.644,-25.560,-25.578,-25.560,-25.230,-24.371,-23.043,
--21.605,-20.519,-20.051,-20.096,-20.274,-20.209,-19.780,-19.170,-18.695,-18.566,-18.773,-19.142,-19.493,-19.749,-19.942,-20.129,
--20.328,-20.505,-20.606,-20.578,-20.381,-19.983,-19.388,-18.663,-17.942,-17.367,-17.017,-16.859,-16.777,-16.658,-16.457,-16.206,
--15.958,-15.734,-15.505,-15.219,-14.851,-14.418,-13.970,-13.554,-13.199,-12.910,-12.678,-12.489,-12.330,-12.196,-12.085,-11.985,
--11.867,-11.681,-11.396,-11.039,-10.713,-10.555,-10.657,-10.996,-11.443,-11.846,-12.135,-12.358,-12.624,-13.001,-13.455,-13.876,
--14.178,-14.373,-14.557,-14.827,-15.188,-15.550,-15.797,-15.883,-15.865,-15.848,-15.894,-15.973,-15.993,-15.883,-15.669,-15.468,
--15.423,-15.617,-16.036,-16.598,-17.208,-17.808,-18.386,-18.946,-19.483,-19.975,-20.402,-20.771,-21.112,-21.464,-21.841,-22.226,
--22.593,-22.931,-23.264,-23.631,-24.047,-24.486,-24.892,-25.230,-25.517,-25.811,-26.159,-26.542,-26.870,-27.045,-27.042,-26.935,
--26.853,-26.888,-27.031,-27.189,-27.268,-27.262,-27.258,-27.364,-27.607,-27.892,-28.052,-27.964,-27.642,-27.252,-27.036,-27.186,
--27.751,-28.615,-29.552,-30.327,-30.795,-30.955,-30.927,-30.887,-30.975,-31.230,-31.601,-31.994,-32.347,-32.666,-33.007,-33.425,
--33.923,-34.445,-34.906,-35.232,-35.400,-35.441,-35.419,-35.407,-35.456,-35.592,-35.813,-36.103,-36.443,-36.814,-37.189,-37.526,
--37.772,-37.885,-37.865,-37.756,-37.630,-37.548,-37.528,-37.542,-37.543,-37.492,-37.381,-37.232,-37.084,-36.984,-36.967,-37.041,
--37.171,-37.287,-37.317,-37.231,-37.059,-36.867,-36.703,-36.560,-36.378,-36.102,-35.724,-35.298,-34.896,-34.564,-34.298,-34.075,
--33.884,-33.734,-33.630,-33.544,-33.427,-33.243,-33.003,-32.768,-32.594,-32.484,-32.370,-32.149,-31.744,-31.145,-30.420,-29.680,
--29.037,-28.557,-28.239,-28.011,-27.767,-27.423,-26.962,-26.445,-25.966,-25.589,-25.315,-25.094,-24.886,-24.681,-24.499,-24.339,
--24.162,-23.916,-23.584,-23.207,-22.851,-22.548,-22.265,-21.934,-21.523,-21.069,-20.652,-20.327,-20.081,-19.853,-19.592,-19.297,
--19.005,-18.745,-18.507,-18.261,-17.989,-17.694,-17.372,-16.976,-16.433,-15.709,-14.869,-14.074,-13.487,-13.167,-13.034,-12.930,
--12.729,-12.409,-12.032,-11.662,-11.299,-10.875,-10.311,-9.566,-8.655,-7.620,-6.506,-5.353,-4.207,-3.122,-2.142,-1.273,
--.479,.298,1.095,1.914,2.718,3.465,4.136,4.744,5.334,5.958,6.650,7.410,8.208,9.006,9.790,10.576,
-11.395,12.258,13.150,14.043,14.930,15.826,16.734,17.602,18.339,18.885,19.299,19.763,20.482,21.526,22.754,23.901,
-24.767,25.371,25.937,26.706,27.735,28.838,29.725,30.220,30.383,30.443,30.610,30.925,31.265,31.493,31.596,31.709,
-32.002,32.537,33.222,33.882,34.393,34.761,35.097,35.519,36.073,36.719,37.387,38.038,38.680,39.339,40.010,40.656,
-41.229,41.724,42.184,42.677,43.244,43.863,44.473,45.018,45.492,45.949,46.451,47.027,47.649,48.268,48.859,49.439,
-50.046,50.685,51.310,51.855,52.289,52.654,53.038,53.506,54.047,54.587,55.051,55.430,55.790,56.219,56.756,57.367,
-57.981,58.548,59.067,59.574,60.095,60.617,61.102,61.524,61.896,62.258,62.654,63.099,63.582,64.079,64.564,65.010,
-65.388,65.669,65.841,65.914,65.919,65.894,65.868,65.859,65.875,65.914,65.960,65.976,65.920,65.761,65.505,65.192,
-64.870,64.570,64.292,64.019,63.732,63.420,63.080,62.708,62.313,61.920,61.582,61.345,61.223,61.177,61.138,61.062,
-60.963,60.915,60.988,61.187,61.417,61.525,61.376,60.939,60.313,59.677,59.206,58.977,58.942,58.967,58.913,58.711,
-58.383,57.999,57.612,57.218,56.776,56.264,55.730,55.278,55.015,54.969,55.052,55.093,54.914,54.408,53.584,52.557,
-51.504,50.592,49.926,49.511,49.267,49.080,48.866,48.617,48.386,48.238,48.188,48.183,48.146,48.030,47.859,47.702,
-47.623,47.622,47.636,47.575,47.376,47.041,46.637,46.270,46.045,46.032,46.256,46.687,47.260,47.893,48.500,49.004,
-49.338,49.463,49.388,49.177,48.928,48.727,48.605,48.525,48.426,48.285,48.135,48.043,48.044,48.109,48.166,48.167,
-48.169,48.221,48.308,48.495,48.786,49.129,49.465,49.764,50.028,50.248,50.383,50.393,50.290,50.157,50.099,50.153,
-50.246,50.239,50.039,49.682,49.311,49.081,49.047,49.158,49.330,49.553,49.910,50.494,51.283,52.083,52.589,52.537,
-51.853,50.693,49.378,48.255,47.574,47.428,47.744,48.332,48.953,49.398,49.567,49.490,49.278,49.030,48.741,48.310,
-47.630,46.717,45.756,45.030,44.762,44.987,45.541,46.170,46.672,46.974,47.099,47.092,46.977,46.765,46.495,46.235,
-46.046,45.926,45.818,45.657,45.433,45.201,45.028,44.943,44.912,44.882,44.824,44.744,44.650,44.521,44.318,44.022,
-43.669,43.333,43.073,42.891,42.745,42.594,42.440,42.320,42.269,42.279,42.310,42.317,42.273,42.168,41.987,41.710,
-41.328,40.866,40.379,39.915,39.493,39.085,38.637,38.079,37.340,36.360,35.133,33.764,32.466,31.494,31.009,30.977,
-31.186,31.371,31.369,31.173,30.877,30.551,30.184,29.716,29.128,28.485,27.885,27.378,26.920,26.424,25.841,25.210,
-24.625,24.159,23.818,23.552,23.296,23.007,22.652,22.206,21.664,21.069,20.507,20.053,19.705,19.366,18.901,18.240,
-17.423,16.570,15.789,15.117,14.532,14.023,13.619,13.358,13.224,13.123,12.933,12.597,12.159,11.727,11.375,11.094,
-10.809,10.455,10.026,9.566,9.115,8.677,8.231,7.771,7.320,6.908,6.531,6.142,5.686,5.146,4.558,3.978,
-3.435,2.908,2.350,1.732,1.063,.382,-.271,-.888,-1.481,-2.069,-2.659,-3.238,-3.783,-4.283,-4.744,-5.192,
--5.663,-6.183,-6.758,-7.371,-7.998,-8.623,-9.240,-9.846,-10.426,-10.962,-11.454,-11.929,-12.435,-13.005,-13.624,-14.230,
--14.755,-15.168,-15.494,-15.795,-16.119,-16.485,-16.887,-17.320,-17.794,-18.313,-18.862,-19.403,-19.909,-20.385,-20.874,-21.419,
--22.027,-22.661,-23.266,-23.810,-24.293,-24.737,-25.152,-25.532,-25.865,-26.164,-26.461,-26.797,-27.184,-27.602,-28.016,-28.404,
--28.767,-29.121,-29.469,-29.792,-30.064,-30.275,-30.460,-30.684,-31.004,-31.444,-31.970,-32.521,-33.041,-33.510,-33.945,-34.369,
--34.793,-35.201,-35.575,-35.909,-36.224,-36.539,-36.856,-37.153,-37.407,-37.623,-37.836,-38.079,-38.345,-38.574,-38.708,-38.755,
--38.825,-39.076,-39.609,-40.369,-41.152,-41.707,-41.888,-41.739,-41.463,-41.290,-41.339,-41.574,-41.864,-42.094,-42.245,-42.383,
--42.586,-42.875,-43.194,-43.454,-43.603,-43.657,-43.693,-43.800,-44.037,-44.416,-44.905,-45.453,-46.005,-46.527,-47.011,-47.477,
--47.964,-48.500,-49.077,-49.648,-50.145,-50.514,-50.738,-50.835,-50.839,-50.787,-50.717,-50.673,-50.705,-50.841,-51.051,-51.237,
--51.273,-51.089,-50.741,-50.411,-50.321,-50.597,-51.175,-51.806,-52.189,-52.136,-51.678,-51.043,-50.515,-50.284,-50.380,-50.730,
--51.266,-52.002,-53.006,-54.299,-55.777,-57.226,-58.427,-59.273,-59.804,-60.145,-60.404,-60.615,-60.752,-60.786,-60.719,-60.562,
--60.295,-59.864,-59.228,-58.412,-57.507,-56.617,-55.788,-55.009,-54.264,-53.602,-53.132,-52.928,-52.931,-52.939,-52.722,-52.190,
--51.465,-50.793,-50.355,-50.130,-49.932,-49.588,-49.125,-48.785,-48.866,-49.479,-50.437,-51.339,-51.803,-51.681,-51.105,-50.367,
--49.740,-49.357,-49.211,-49.224,-49.317,-49.428,-49.504,-49.508,-49.435,-49.324,-49.233,-49.188,-49.145,-49.020,-48.747,-48.331,
--47.841,-47.344,-46.858,-46.352,-45.806,-45.264,-44.830,-44.598,-44.577,-44.683,-44.787,-44.803,-44.723,-44.595,-44.458,-44.308,
--44.101,-43.802,-43.409,-42.952,-42.469,-41.982,-41.497,-41.015,-40.537,-40.059,-39.575,-39.074,-38.559,-38.038,-37.516,-36.974,
--36.388,-35.744,-35.073,-34.429,-33.858,-33.351,-32.841,-32.249,-31.536,-30.731,-29.899,-29.097,-28.342,-27.616,-26.897,-26.174,
--25.440,-24.683,-23.882,-23.030,-22.150,-21.280,-20.444,-19.637,-18.838,-18.053,-17.324,-16.701,-16.181,-15.685,-15.097,-14.350,
--13.483,-12.615,-11.857,-11.225,-10.635,-9.972,-9.178,-8.274,-7.318,-6.336,-5.308,-4.210,-3.076,-2.004,-1.104,-.416,
-.116,.595,1.097,1.627,2.135,2.581,2.971,3.350,3.757,4.195,4.627,5.020,5.369,5.713,6.109,6.605,
-7.215,7.914,8.648,9.357,9.999,10.571,11.101,11.626,12.162,12.697,13.209,13.702,14.209,14.775,15.416,16.100,
-16.762,17.350,17.858,18.326,18.797,19.285,19.758,20.162,20.460,20.661,20.808,20.956,21.139,21.347,21.545,21.695,
-21.786,21.848,21.926,22.057,22.248,22.489,22.784,23.167,23.684,24.346,25.106,25.874,26.580,27.222,27.846,28.477,
-29.054,29.430,29.465,29.129,28.526,27.835,27.193,26.627,26.092,25.556,25.065,24.726,24.621,24.742,24.998,25.283,
-25.545,25.789,26.040,26.292,26.500,26.613,26.617,26.537,26.411,26.268,26.112,25.933,25.718,25.445,25.087,24.635,
-24.122,23.635,23.275,23.100,23.080,23.123,23.136,23.087,23.014,22.973,22.973,22.969,22.913,22.822,22.784,22.897,
-23.174,23.511,23.747,23.789,23.699,23.672,23.896,24.400,25.003,25.403,25.348,24.764,23.752,22.470,20.992,19.265,
-17.184,14.723,12.009,9.295,6.863,4.940,3.686,3.212,3.587,4.771,6.547,8.521,10.242,11.398,11.945,12.090,
-12.119,12.207,12.335,12.358,12.158,11.749,11.258,10.823,10.482,10.164,9.768,9.259,8.696,8.176,7.746,7.365,
-6.945,6.434,5.863,5.325,4.887,4.528,4.153,3.674,3.087,2.477,1.946,1.525,1.149,.730,.242,-.242,
--.617,-.845,-1.000,-1.203,-1.520,-1.896,-2.213,-2.405,-2.527,-2.712,-3.054,-3.539,-4.096,-4.708,-5.455,-6.397,
--7.389,-8.013,-7.774,-6.470,-4.472,-2.652,-1.932,-2.733,-4.702,-6.929,-8.492,-8.971,-8.580,-7.877,-7.333,-7.065,
--6.906,-6.664,-6.337,-6.088,-6.066,-6.247,-6.448,-6.488,-6.341,-6.141,-6.053,-6.128,-6.279,-6.371,-6.345,-6.248,
--6.167,-6.134,-6.096,-5.977,-5.755,-5.490,-5.276,-5.173,-5.170,-5.219,-5.272,-5.313,-5.335,-5.322,-5.252,-5.118,
--4.947,-4.780,-4.648,-4.540,-4.427,-4.285,-4.121,-3.959,-3.814,-3.680,-3.544,-3.404,-3.278,-3.181,-3.109,-3.034,
--2.934,-2.821,-2.732,-2.701,-2.722,-2.745,-2.712,-2.597,-2.417,-2.219,-2.040,-1.894,-1.781,-1.705,-1.675,-1.687,
--1.714,-1.707,-1.629,-1.484,-1.309,-1.155,-1.046,-.975,-.917,-.858,-.806,-.772,-.752,-.719,-.644,-.525,
--.394,-.303,-.288,-.344,-.434,-.510,-.545,-.543,-.525,-.513,-.516,-.529,-.541,-.544,-.534,-.508,
--.469,-.421,-.371,-.332,-.315,-.327,-.368,-.435,-.529,-.650,-.800,-.979,-1.179,-1.387,-1.589,-1.779,
--1.960,-2.144,-2.343,-2.558,-2.779,-2.994,-3.190,-3.368,-3.530,-3.682,-3.828,-3.972,-4.122,-4.292,-4.488,-4.705,
--4.932,-5.155,-5.372,-5.589,-5.813,-6.042,-6.266,-6.480,-6.693,-6.927,-7.197,-7.497,-7.800,-8.076,-8.312,-8.523,
--8.739,-8.978,-9.240,-9.513,-9.788,-10.070,-10.364,-10.670,-10.969,-11.240,-11.475,-11.687,-11.904,-12.143,-12.399,-12.652,
--12.881,-13.082,-13.268,-13.458,-13.665,-13.891,-14.134,-14.397,-14.682,-14.990,-15.309,-15.620,-15.910,-16.182,-16.451,-16.735,
--17.041,-17.362,-17.685,-18.001,-18.314,-18.630,-18.949,-19.264,-19.565,-19.855,-20.148,-20.458,-20.781,-21.098,-21.386,-21.640,
--21.879,-22.130,-22.405,-22.693,-22.969,-23.222,-23.459,-23.696,-23.937,-24.164,-24.359,-24.520,-24.676,-24.858,-25.070,-25.281,
--25.446,-25.544,-25.589,-25.619,-25.660,-25.711,-25.752,-25.774,-25.789,-25.814,-25.847,-25.865,-25.841,-25.772,-25.682,-25.597,
--25.522,-25.435,-25.312,-25.153,-24.980,-24.822,-24.699,-24.620,-24.595,-24.635,-24.732,-24.854,-24.951,-24.998,-25.013,-25.044,
--25.114,-25.194,-25.233,-25.220,-25.221,-25.331,-25.579,-25.874,-26.064,-26.066,-25.940,-25.831,-25.796,-25.683,-25.206,-24.177,
--22.724,-21.285,-20.354,-20.146,-20.457,-20.819,-20.835,-20.433,-19.855,-19.431,-19.325,-19.470,-19.683,-19.844,-19.968,-20.136,
--20.384,-20.650,-20.828,-20.838,-20.659,-20.294,-19.745,-19.021,-18.197,-17.418,-16.849,-16.565,-16.499,-16.490,-16.389,-16.152,
--15.843,-15.556,-15.329,-15.127,-14.887,-14.571,-14.192,-13.783,-13.375,-12.981,-12.610,-12.282,-12.018,-11.831,-11.720,-11.671,
--11.668,-11.676,-11.640,-11.501,-11.244,-10.940,-10.739,-10.787,-11.122,-11.640,-12.147,-12.496,-12.677,-12.815,-13.055,-13.447,
--13.909,-14.297,-14.527,-14.635,-14.745,-14.960,-15.286,-15.625,-15.858,-15.934,-15.899,-15.849,-15.852,-15.896,-15.914,-15.846,
--15.706,-15.594,-15.643,-15.942,-16.486,-17.179,-17.891,-18.530,-19.065,-19.525,-19.951,-20.366,-20.769,-21.151,-21.509,-21.851,
--22.183,-22.512,-22.846,-23.208,-23.617,-24.070,-24.524,-24.915,-25.206,-25.423,-25.644,-25.935,-26.288,-26.615,-26.811,-26.838,
--26.759,-26.688,-26.702,-26.785,-26.861,-26.885,-26.902,-27.014,-27.286,-27.658,-27.960,-28.025,-27.812,-27.455,-27.185,-27.200,
--27.562,-28.191,-28.926,-29.614,-30.159,-30.533,-30.758,-30.891,-31.013,-31.195,-31.475,-31.841,-32.245,-32.644,-33.030,-33.428,
--33.865,-34.335,-34.792,-35.173,-35.433,-35.567,-35.598,-35.565,-35.502,-35.446,-35.435,-35.513,-35.717,-36.062,-36.522,-37.031,
--37.496,-37.832,-37.994,-38.003,-37.931,-37.862,-37.845,-37.875,-37.907,-37.896,-37.825,-37.705,-37.555,-37.389,-37.215,-37.053,
--36.926,-36.847,-36.797,-36.735,-36.632,-36.505,-36.401,-36.359,-36.356,-36.310,-36.133,-35.795,-35.345,-34.878,-34.467,-34.131,
--33.849,-33.603,-33.394,-33.231,-33.102,-32.974,-32.821,-32.653,-32.514,-32.428,-32.362,-32.213,-31.870,-31.281,-30.492,-29.628,
--28.841,-28.242,-27.870,-27.685,-27.580,-27.426,-27.127,-26.663,-26.106,-25.576,-25.175,-24.930,-24.801,-24.724,-24.659,-24.602,
--24.547,-24.461,-24.293,-24.011,-23.634,-23.218,-22.806,-22.393,-21.945,-21.446,-20.934,-20.488,-20.162,-19.949,-19.785,-19.603,
--19.373,-19.105,-18.821,-18.525,-18.210,-17.879,-17.548,-17.222,-16.869,-16.429,-15.868,-15.221,-14.592,-14.086,-13.739,-13.493,
--13.244,-12.916,-12.504,-12.053,-11.602,-11.150,-10.666,-10.114,-9.475,-8.743,-7.904,-6.946,-5.876,-4.744,-3.627,-2.597,
--1.681,-.856,-.077,.693,1.467,2.236,2.984,3.703,4.400,5.101,5.838,6.629,7.456,8.266,9.001,9.647,
-10.261,10.939,11.757,12.716,13.752,14.785,15.773,16.707,17.574,18.342,18.985,19.543,20.133,20.883,21.821,22.828,
-23.713,24.369,24.874,25.439,26.235,27.229,28.189,28.843,29.085,29.049,29.001,29.142,29.490,29.915,30.289,30.604,
-30.962,31.472,32.138,32.853,33.487,33.984,34.392,34.815,35.322,35.911,36.533,37.142,37.736,38.346,38.991,39.656,
-40.294,40.860,41.354,41.821,42.328,42.913,43.562,44.216,44.815,45.341,45.830,46.341,46.909,47.520,48.129,48.711,
-49.280,49.877,50.519,51.167,51.753,52.230,52.622,53.010,53.469,54.007,54.560,55.052,55.461,55.838,56.264,56.785,
-57.377,57.973,58.522,59.021,59.505,60.004,60.511,60.996,61.434,61.830,62.217,62.631,63.087,63.579,64.086,64.578,
-65.018,65.366,65.591,65.694,65.709,65.690,65.680,65.695,65.730,65.774,65.825,65.881,65.928,65.932,65.856,65.681,
-65.414,65.088,64.736,64.388,64.066,63.786,63.546,63.318,63.051,62.704,62.280,61.841,61.468,61.218,61.075,60.974,
-60.855,60.720,60.631,60.660,60.815,61.004,61.076,60.906,60.480,59.912,59.388,59.066,58.985,59.049,59.084,58.942,
-58.577,58.063,57.530,57.077,56.714,56.371,55.969,55.491,55.001,54.603,54.364,54.262,54.190,54.007,53.611,52.984,
-52.202,51.405,50.733,50.267,49.996,49.830,49.655,49.396,49.060,48.715,48.436,48.248,48.116,47.983,47.814,47.622,
-47.452,47.343,47.306,47.318,47.336,47.310,47.196,46.976,46.670,46.350,46.114,46.053,46.214,46.589,47.130,47.768,
-48.421,48.992,49.378,49.509,49.390,49.109,48.792,48.531,48.342,48.183,48.022,47.877,47.805,47.841,47.959,48.086,
-48.169,47.929,48.119,48.351,48.654,49.018,49.409,49.807,50.217,50.640,51.030,51.296,51.368,51.266,51.102,51.007,
-51.018,51.042,50.923,50.568,50.028,49.468,49.061,48.898,48.973,49.258,49.759,50.498,51.432,52.374,53.013,53.041,
-52.308,50.913,49.168,47.468,46.141,45.359,45.135,45.368,45.905,46.580,47.246,47.784,48.118,48.206,48.025,47.565,
-46.842,45.931,44.985,44.211,43.799,43.833,44.252,44.888,45.548,46.101,46.498,46.740,46.835,46.784,46.607,46.361,
-46.130,45.974,45.892,45.833,45.745,45.618,45.481,45.360,45.249,45.117,44.955,44.796,44.691,44.650,44.611,44.479,
-44.198,43.804,43.394,43.063,42.838,42.688,42.572,42.485,42.449,42.475,42.531,42.560,42.528,42.444,42.338,42.223,
-42.067,41.816,41.434,40.929,40.341,39.716,39.082,38.442,37.761,36.968,35.978,34.760,33.403,32.133,31.226,30.846,
-30.939,31.251,31.484,31.472,31.247,30.948,30.674,30.402,30.032,29.505,28.864,28.213,27.625,27.082,26.513,25.887,
-25.255,24.715,24.330,24.084,23.904,23.718,23.484,23.178,22.771,22.237,21.590,20.903,20.265,19.703,19.155,18.506,
-17.692,16.753,15.807,14.966,14.265,13.675,13.174,12.785,12.559,12.499,12.529,12.529,12.415,12.192,11.925,11.668,
-11.412,11.111,10.731,10.297,9.867,9.485,9.144,8.805,8.437,8.038,7.620,7.177,6.681,6.104,5.451,4.768,
-4.107,3.491,2.900,2.298,1.661,.996,.325,-.327,-.952,-1.550,-2.128,-2.694,-3.250,-3.788,-4.291,-4.743,
--5.147,-5.537,-5.967,-6.478,-7.076,-7.725,-8.374,-8.980,-9.530,-10.026,-10.488,-10.937,-11.409,-11.936,-12.531,-13.170,
--13.799,-14.364,-14.853,-15.291,-15.717,-16.153,-16.593,-17.031,-17.485,-17.992,-18.571,-19.197,-19.803,-20.332,-20.787,-21.224,
--21.715,-22.285,-22.902,-23.505,-24.055,-24.556,-25.036,-25.506,-25.944,-26.318,-26.623,-26.893,-27.180,-27.519,-27.902,-28.293,
--28.656,-28.985,-29.293,-29.592,-29.874,-30.117,-30.314,-30.497,-30.730,-31.079,-31.566,-32.148,-32.742,-33.271,-33.706,-34.077,
--34.437,-34.824,-35.237,-35.650,-36.037,-36.392,-36.725,-37.032,-37.303,-37.527,-37.729,-37.955,-38.247,-38.589,-38.904,-39.102,
--39.163,-39.179,-39.320,-39.728,-40.417,-41.238,-41.960,-42.395,-42.496,-42.367,-42.180,-42.072,-42.085,-42.177,-42.290,-42.403,
--42.544,-42.756,-43.049,-43.376,-43.652,-43.806,-43.831,-43.791,-43.802,-43.978,-44.375,-44.971,-45.674,-46.372,-46.981,-47.477,
--47.897,-48.306,-48.755,-49.258,-49.786,-50.283,-50.690,-50.964,-51.089,-51.079,-50.975,-50.841,-50.734,-50.686,-50.672,-50.613,
--50.400,-49.957,-49.299,-48.571,-48.023,-47.906,-48.343,-49.227,-50.229,-50.941,-51.076,-50.629,-49.875,-49.219,-48.980,-49.259,
--49.968,-50.966,-52.191,-53.657,-55.363,-57.184,-58.886,-60.246,-61.182,-61.783,-62.208,-62.545,-62.761,-62.773,-62.564,-62.227,
--61.886,-61.578,-61.206,-60.621,-59.762,-58.722,-57.681,-56.774,-56.002,-55.288,-54.594,-53.998,-53.636,-53.568,-53.683,-53.755,
--53.598,-53.194,-52.679,-52.201,-51.783,-51.322,-50.723,-50.044,-49.516,-49.399,-49.778,-50.479,-51.151,-51.484,-51.374,-50.949,
--50.441,-50.031,-49.779,-49.644,-49.571,-49.530,-49.516,-49.517,-49.513,-49.504,-49.524,-49.613,-49.772,-49.930,-49.977,-49.838,
--49.524,-49.119,-48.705,-48.301,-47.864,-47.358,-46.811,-46.317,-45.969,-45.790,-45.710,-45.628,-45.483,-45.286,-45.089,-44.920,
--44.748,-44.510,-44.159,-43.705,-43.199,-42.694,-42.211,-41.741,-41.264,-40.777,-40.294,-39.830,-39.384,-38.939,-38.466,-37.943,
--37.360,-36.728,-36.079,-35.457,-34.889,-34.366,-33.839,-33.236,-32.511,-31.672,-30.774,-29.888,-29.057,-28.284,-27.543,-26.809,
--26.068,-25.312,-24.535,-23.727,-22.889,-22.035,-21.180,-20.322,-19.453,-18.577,-17.742,-17.021,-16.463,-16.038,-15.628,-15.089,
--14.340,-13.415,-12.432,-11.510,-10.692,-9.942,-9.199,-8.427,-7.627,-6.804,-5.929,-4.957,-3.875,-2.747,-1.693,-.821,
--.161,.347,.796,1.252,1.717,2.159,2.556,2.921,3.291,3.692,4.124,4.565,4.996,5.413,5.837,6.300,
-6.837,7.466,8.173,8.911,9.618,10.249,10.805,11.324,11.847,12.387,12.925,13.440,13.950,14.497,15.118,15.797,
-16.473,17.087,17.635,18.173,18.765,19.421,20.071,20.612,20.976,21.172,21.274,21.364,21.487,21.642,21.800,21.930,
-22.017,22.060,22.075,22.089,22.141,22.269,22.506,22.876,23.396,24.065,24.850,25.684,26.488,27.219,27.889,28.540,
-29.170,29.681,29.905,29.698,29.053,28.130,27.170,26.369,25.788,25.375,25.060,24.832,24.742,24.842,25.124,25.511,
-25.912,26.264,26.545,26.749,26.862,26.879,26.823,26.751,26.721,26.742,26.768,26.732,26.595,26.368,26.087,25.772,
-25.420,25.026,24.621,24.267,24.021,23.888,23.814,23.728,23.597,23.449,23.338,23.294,23.301,23.331,23.388,23.524,
-23.802,24.227,24.714,25.125,25.353,25.400,25.360,25.338,25.333,25.212,24.766,23.846,22.447,20.693,18.720,16.571,
-14.177,11.466,8.512,5.596,3.140,1.530,.969,1.426,2.692,4.478,6.479,8.401,9.989,11.082,11.674,11.915,
-12.021,12.137,12.258,12.265,12.047,11.608,11.080,10.621,10.297,10.046,9.743,9.307,8.762,8.203,7.711,7.287,
-6.862,6.370,5.807,5.237,4.742,4.347,4.006,3.635,3.177,2.648,2.118,1.650,1.248,.855,.400,-.128,
--.663,-1.107,-1.400,-1.574,-1.728,-1.946,-2.236,-2.532,-2.760,-2.912,-3.062,-3.310,-3.712,-4.260,-4.915,-5.660,
--6.480,-7.294,-7.892,-7.983,-7.372,-6.154,-4.770,-3.835,-3.812,-4.747,-6.236,-7.662,-8.543,-8.752,-8.483,-8.044,
--7.631,-7.270,-6.915,-6.581,-6.376,-6.404,-6.648,-6.946,-7.099,-7.013,-6.767,-6.534,-6.448,-6.517,-6.641,-6.717,
--6.713,-6.664,-6.611,-6.546,-6.421,-6.206,-5.934,-5.683,-5.530,-5.501,-5.565,-5.667,-5.758,-5.807,-5.795,-5.710,
--5.561,-5.377,-5.200,-5.060,-4.956,-4.863,-4.754,-4.623,-4.482,-4.344,-4.209,-4.071,-3.930,-3.800,-3.700,-3.629,
--3.571,-3.501,-3.418,-3.340,-3.290,-3.270,-3.252,-3.198,-3.086,-2.932,-2.773,-2.640,-2.542,-2.465,-2.395,-2.331,
--2.282,-2.249,-2.217,-2.156,-2.046,-1.890,-1.722,-1.579,-1.488,-1.447,-1.436,-1.428,-1.407,-1.363,-1.297,-1.209,
--1.107,-1.003,-.921,-.880,-.892,-.943,-1.008,-1.058,-1.077,-1.068,-1.049,-1.039,-1.046,-1.066,-1.087,-1.097,
--1.090,-1.066,-1.030,-.990,-.959,-.950,-.973,-1.034,-1.127,-1.243,-1.371,-1.507,-1.653,-1.810,-1.979,-2.156,
--2.339,-2.526,-2.719,-2.922,-3.134,-3.352,-3.570,-3.784,-3.990,-4.187,-4.369,-4.533,-4.686,-4.840,-5.008,-5.196,
--5.396,-5.596,-5.790,-5.985,-6.192,-6.414,-6.643,-6.863,-7.068,-7.272,-7.498,-7.761,-8.053,-8.348,-8.621,-8.868,
--9.104,-9.350,-9.614,-9.889,-10.163,-10.437,-10.720,-11.019,-11.326,-11.617,-11.871,-12.085,-12.283,-12.494,-12.736,-13.000,
--13.260,-13.492,-13.686,-13.855,-14.022,-14.206,-14.418,-14.660,-14.927,-15.214,-15.511,-15.811,-16.101,-16.378,-16.643,-16.907,
--17.185,-17.485,-17.805,-18.136,-18.466,-18.792,-19.118,-19.447,-19.774,-20.087,-20.375,-20.643,-20.904,-21.174,-21.456,-21.744,
--22.029,-22.310,-22.594,-22.886,-23.177,-23.454,-23.711,-23.956,-24.200,-24.443,-24.666,-24.849,-24.993,-25.125,-25.285,-25.486,
--25.703,-25.892,-26.024,-26.104,-26.163,-26.222,-26.276,-26.306,-26.305,-26.292,-26.292,-26.313,-26.334,-26.320,-26.258,-26.162,
--26.059,-25.960,-25.852,-25.717,-25.555,-25.384,-25.234,-25.123,-25.061,-25.055,-25.102,-25.184,-25.259,-25.289,-25.278,-25.278,
--25.349,-25.497,-25.648,-25.701,-25.631,-25.532,-25.550,-25.759,-26.077,-26.327,-26.385,-26.284,-26.155,-26.045,-25.798,-25.138,
--23.924,-22.359,-20.953,-20.210,-20.281,-20.852,-21.366,-21.417,-20.989,-20.400,-20.000,-19.918,-20.025,-20.120,-20.125,-20.120,
--20.223,-20.441,-20.650,-20.697,-20.517,-20.153,-19.674,-19.101,-18.418,-17.649,-16.907,-16.350,-16.071,-16.017,-16.029,-15.953,
--15.740,-15.448,-15.164,-14.927,-14.712,-14.478,-14.209,-13.920,-13.619,-13.293,-12.923,-12.519,-12.134,-11.824,-11.608,-11.464,
--11.355,-11.267,-11.208,-11.165,-11.084,-10.906,-10.637,-10.391,-10.339,-10.602,-11.141,-11.771,-12.280,-12.569,-12.717,-12.904,
--13.267,-13.788,-14.313,-14.665,-14.781,-14.748,-14.737,-14.874,-15.160,-15.477,-15.689,-15.740,-15.683,-15.633,-15.670,-15.782,
--15.885,-15.907,-15.862,-15.866,-16.064,-16.530,-17.211,-17.962,-18.633,-19.163,-19.589,-19.994,-20.431,-20.885,-21.300,-21.634,
--21.894,-22.131,-22.407,-22.757,-23.187,-23.673,-24.168,-24.618,-24.970,-25.208,-25.368,-25.528,-25.754,-26.050,-26.342,-26.538,
--26.598,-26.561,-26.517,-26.526,-26.588,-26.663,-26.748,-26.898,-27.183,-27.590,-27.993,-28.208,-28.139,-27.867,-27.627,-27.662,
--28.065,-28.728,-29.427,-29.965,-30.282,-30.442,-30.560,-30.715,-30.932,-31.209,-31.546,-31.953,-32.428,-32.944,-33.464,-33.964,
--34.438,-34.889,-35.308,-35.668,-35.939,-36.107,-36.178,-36.160,-36.061,-35.891,-35.684,-35.504,-35.436,-35.549,-35.865,-36.342,
--36.882,-37.369,-37.710,-37.872,-37.893,-37.860,-37.858,-37.923,-38.026,-38.105,-38.112,-38.040,-37.913,-37.750,-37.543,-37.275,
--36.956,-36.630,-36.360,-36.174,-36.054,-35.962,-35.881,-35.834,-35.851,-35.916,-35.955,-35.875,-35.630,-35.256,-34.839,-34.455,
--34.123,-33.822,-33.526,-33.235,-32.968,-32.735,-32.528,-32.345,-32.201,-32.118,-32.078,-31.995,-31.746,-31.243,-30.501,-29.643,
--28.834,-28.197,-27.769,-27.509,-27.344,-27.197,-27.003,-26.712,-26.310,-25.837,-25.377,-25.016,-24.799,-24.704,-24.675,-24.664,
--24.655,-24.648,-24.622,-24.528,-24.318,-23.977,-23.535,-23.037,-22.516,-21.981,-21.446,-20.945,-20.528,-20.227,-20.024,-19.861,
--19.677,-19.443,-19.160,-18.839,-18.484,-18.096,-17.694,-17.314,-16.985,-16.696,-16.403,-16.054,-15.637,-15.187,-14.754,-14.358,
--13.978,-13.572,-13.113,-12.606,-12.073,-11.532,-10.990,-10.449,-9.918,-9.390,-8.833,-8.185,-7.390,-6.435,-5.366,-4.263,
--3.198,-2.207,-1.293,-.444,.356,1.130,1.911,2.724,3.564,4.397,5.182,5.913,6.613,7.312,8.010,8.675,
-9.292,9.904,10.602,11.464,12.491,13.599,14.680,15.673,16.583,17.443,18.262,19.024,19.724,20.406,21.131,21.908,
-22.666,23.300,23.783,24.218,24.778,25.562,26.483,27.309,27.824,27.989,27.971,28.017,28.281,28.741,29.271,29.763,
-30.214,30.698,31.270,31.908,32.532,33.082,33.564,34.038,34.560,35.133,35.717,36.272,36.794,37.315,37.873,38.483,
-39.128,39.775,40.393,40.970,41.517,42.068,42.654,43.288,43.947,44.588,45.176,45.714,46.241,46.797,47.394,48.007,
-48.601,49.171,49.741,50.336,50.944,51.518,52.015,52.440,52.856,53.330,53.883,54.470,55.018,55.490,55.915,56.358,
-56.869,57.440,58.023,58.571,59.072,59.548,60.023,60.500,60.960,61.389,61.792,62.192,62.615,63.078,63.579,64.099,
-64.602,65.035,65.342,65.494,65.510,65.452,65.397,65.394,65.446,65.528,65.608,65.678,65.740,65.790,65.807,65.762,
-65.635,65.423,65.138,64.798,64.433,64.084,63.799,63.604,63.476,63.340,63.113,62.755,62.306,61.855,61.485,61.214,
-61.004,60.801,60.600,60.442,60.382,60.420,60.481,60.452,60.253,59.893,59.478,59.144,58.984,58.982,59.027,58.971,
-58.713,58.257,57.701,57.174,56.763,56.461,56.192,55.869,55.456,54.984,54.526,54.140,53.835,53.569,53.278,52.909,
-52.455,51.959,51.502,51.165,50.987,50.935,50.908,50.789,50.509,50.080,49.586,49.124,48.754,48.482,48.275,48.096,
-47.915,47.716,47.496,47.276,47.100,47.012,47.019,47.070,47.081,46.987,46.794,46.573,46.417,46.387,46.500,46.759,
-47.174,47.744,48.409,49.035,49.455,49.558,49.359,48.983,48.578,48.232,47.955,47.723,47.538,47.437,47.453,47.573,
-47.747,47.929,47.549,47.866,48.242,48.652,49.060,49.451,49.854,50.321,50.866,51.417,51.846,52.058,52.070,51.998,
-51.959,51.960,51.886,51.598,51.058,50.380,49.764,49.379,49.291,49.483,49.930,50.616,51.492,52.388,53.006,53.015,
-52.217,50.673,48.685,46.668,44.969,43.758,43.030,42.685,42.632,42.831,43.279,43.952,44.762,45.543,46.102,46.281,
-46.031,45.431,44.672,43.981,43.550,43.467,43.704,44.150,44.671,45.172,45.609,45.980,46.278,46.481,46.556,46.499,
-46.348,46.169,46.022,45.926,45.870,45.834,45.808,45.785,45.741,45.631,45.429,45.160,44.910,44.765,44.736,44.743,
-44.654,44.386,43.960,43.485,43.077,42.796,42.642,42.591,42.635,42.771,42.966,43.140,43.195,43.074,42.792,42.412,
-42.001,41.585,41.156,40.697,40.194,39.642,39.039,38.386,37.690,36.952,36.142,35.205,34.111,32.931,31.863,31.153,
-30.945,31.165,31.548,31.793,31.749,31.479,31.157,30.909,30.716,30.460,30.043,29.475,28.842,28.218,27.612,26.994,
-26.369,25.801,25.365,25.076,24.871,24.659,24.396,24.098,23.792,23.457,23.025,22.442,21.721,20.929,20.123,19.289,
-18.367,17.332,16.249,15.251,14.447,13.850,13.386,12.978,12.615,12.344,12.208,12.183,12.195,12.174,12.106,12.024,
-11.948,11.851,11.675,11.384,10.999,10.588,10.213,9.894,9.609,9.318,8.983,8.572,8.056,7.418,6.673,5.872,
-5.077,4.323,3.606,2.897,2.174,1.446,.734,.054,-.594,-1.219,-1.814,-2.368,-2.875,-3.349,-3.812,-4.275,
--4.728,-5.160,-5.587,-6.054,-6.608,-7.257,-7.952,-8.618,-9.195,-9.672,-10.080,-10.468,-10.879,-11.338,-11.855,-12.423,
--13.018,-13.604,-14.155,-14.672,-15.178,-15.697,-16.229,-16.758,-17.273,-17.793,-18.350,-18.957,-19.580,-20.158,-20.645,-21.057,
--21.458,-21.917,-22.451,-23.021,-23.567,-24.062,-24.528,-25.005,-25.511,-26.021,-26.486,-26.872,-27.191,-27.480,-27.780,-28.105,
--28.440,-28.761,-29.058,-29.336,-29.606,-29.871,-30.125,-30.363,-30.602,-30.880,-31.244,-31.716,-32.275,-32.859,-33.398,-33.853,
--34.233,-34.582,-34.947,-35.343,-35.761,-36.171,-36.550,-36.881,-37.153,-37.362,-37.526,-37.695,-37.932,-38.275,-38.693,-39.092,
--39.363,-39.462,-39.458,-39.506,-39.765,-40.302,-41.048,-41.835,-42.475,-42.850,-42.951,-42.857,-42.687,-42.539,-42.466,-42.476,
--42.558,-42.702,-42.911,-43.179,-43.479,-43.756,-43.945,-44.023,-44.031,-44.077,-44.281,-44.707,-45.324,-46.018,-46.664,-47.192,
--47.614,-47.996,-48.401,-48.851,-49.328,-49.796,-50.228,-50.603,-50.892,-51.054,-51.058,-50.903,-50.624,-50.264,-49.831,-49.289,
--48.588,-47.721,-46.759,-45.859,-45.218,-45.027,-45.407,-46.359,-47.715,-49.156,-50.293,-50.835,-50.735,-50.233,-49.739,-49.620,
--50.034,-50.919,-52.118,-53.530,-55.143,-56.949,-58.828,-60.546,-61.883,-62.777,-63.352,-63.797,-64.196,-64.469,-64.468,-64.146,
--63.621,-63.082,-62.615,-62.131,-61.451,-60.495,-59.379,-58.337,-57.532,-56.927,-56.334,-55.604,-54.780,-54.076,-53.707,-53.712,
--53.921,-54.085,-54.038,-53.775,-53.385,-52.937,-52.442,-51.902,-51.387,-51.038,-50.977,-51.197,-51.537,-51.778,-51.783,-51.569,
--51.264,-50.985,-50.756,-50.514,-50.197,-49.806,-49.408,-49.077,-48.843,-48.698,-48.636,-48.688,-48.892,-49.237,-49.632,-49.941,
--50.070,-50.012,-49.840,-49.625,-49.377,-49.049,-48.606,-48.077,-47.560,-47.154,-46.884,-46.695,-46.498,-46.243,-45.950,-45.665,
--45.411,-45.153,-44.830,-44.406,-43.902,-43.379,-42.887,-42.435,-41.997,-41.541,-41.065,-40.592,-40.150,-39.740,-39.325,-38.857,
--38.299,-37.651,-36.957,-36.279,-35.668,-35.133,-34.633,-34.098,-33.465,-32.710,-31.863,-30.976,-30.101,-29.262,-28.454,-27.664,
--26.880,-26.098,-25.312,-24.513,-23.695,-22.860,-22.015,-21.156,-20.265,-19.330,-18.373,-17.466,-16.702,-16.139,-15.739,-15.372,
--14.880,-14.167,-13.242,-12.209,-11.189,-10.260,-9.428,-8.659,-7.912,-7.153,-6.350,-5.468,-4.487,-3.433,-2.377,-1.414,
--.614,.011,.503,.919,1.305,1.689,2.081,2.491,2.920,3.353,3.774,4.173,4.566,4.981,5.438,5.943,
-6.491,7.087,7.742,8.454,9.190,9.891,10.514,11.063,11.583,12.122,12.685,13.247,13.789,14.333,14.927,15.589,
-16.273,16.899,17.432,17.928,18.501,19.220,20.033,20.780,21.307,21.570,21.659,21.718,21.837,22.007,22.158,22.238,
-22.252,22.243,22.251,22.282,22.334,22.422,22.585,22.869,23.296,23.859,24.533,25.288,26.098,26.933,27.766,28.570,
-29.301,29.880,30.181,30.078,29.517,28.586,27.498,26.503,25.769,25.323,25.088,24.976,24.957,25.056,25.297,25.663,
-26.096,26.531,26.924,27.239,27.433,27.469,27.354,27.171,27.043,27.052,27.178,27.299,27.288,27.101,26.809,26.528,
-26.323,26.162,25.954,25.634,25.224,24.810,24.482,24.269,24.139,24.038,23.942,23.869,23.856,23.931,24.101,24.357,
-24.692,25.099,25.554,26.002,26.364,26.559,26.535,26.274,25.767,24.975,23.822,22.223,20.156,17.704,15.035,12.328,
-9.680,7.102,4.590,2.243,.317,-.842,-.961,.006,1.840,4.136,6.455,8.457,9.952,10.909,11.414,11.637,
-11.756,11.887,12.028,12.074,11.910,11.509,10.974,10.466,10.089,9.821,9.546,9.161,8.659,8.123,7.643,7.239,
-6.847,6.387,5.834,5.241,4.690,4.230,3.848,3.492,3.113,2.699,2.264,1.828,1.400,.969,.522,.045,
--.463,-.983,-1.473,-1.885,-2.189,-2.394,-2.550,-2.709,-2.889,-3.072,-3.232,-3.388,-3.608,-3.972,-4.502,-5.148,
--5.825,-6.488,-7.151,-7.822,-8.403,-8.667,-8.370,-7.465,-6.233,-5.212,-4.917,-5.529,-6.772,-8.078,-8.918,-9.080,
--8.709,-8.122,-7.580,-7.179,-6.909,-6.767,-6.797,-7.027,-7.379,-7.674,-7.742,-7.542,-7.202,-6.914,-6.805,-6.863,
--6.981,-7.055,-7.049,-6.986,-6.891,-6.757,-6.564,-6.318,-6.076,-5.915,-5.878,-5.954,-6.084,-6.199,-6.251,-6.221,
--6.115,-5.958,-5.784,-5.633,-5.522,-5.445,-5.369,-5.266,-5.126,-4.967,-4.816,-4.687,-4.576,-4.473,-4.374,-4.286,
--4.214,-4.155,-4.095,-4.023,-3.940,-3.858,-3.786,-3.719,-3.642,-3.539,-3.415,-3.288,-3.183,-3.108,-3.052,-2.993,
--2.918,-2.833,-2.755,-2.692,-2.637,-2.563,-2.452,-2.309,-2.167,-2.067,-2.025,-2.024,-2.022,-1.987,-1.913,-1.824,
--1.747,-1.696,-1.658,-1.616,-1.564,-1.515,-1.487,-1.489,-1.510,-1.530,-1.536,-1.531,-1.531,-1.551,-1.591,-1.641,
--1.683,-1.706,-1.707,-1.694,-1.674,-1.659,-1.662,-1.693,-1.759,-1.859,-1.984,-2.122,-2.260,-2.390,-2.510,-2.627,
--2.752,-2.899,-3.074,-3.276,-3.493,-3.710,-3.918,-4.118,-4.320,-4.531,-4.747,-4.957,-5.149,-5.325,-5.497,-5.680,
--5.877,-6.079,-6.273,-6.454,-6.634,-6.826,-7.040,-7.266,-7.489,-7.702,-7.914,-8.139,-8.385,-8.643,-8.897,-9.141,
--9.383,-9.640,-9.921,-10.216,-10.507,-10.783,-11.051,-11.329,-11.625,-11.928,-12.214,-12.464,-12.680,-12.886,-13.104,-13.345,
--13.599,-13.842,-14.057,-14.240,-14.400,-14.561,-14.743,-14.963,-15.223,-15.511,-15.806,-16.091,-16.354,-16.598,-16.835,-17.077,
--17.335,-17.618,-17.927,-18.255,-18.589,-18.914,-19.228,-19.539,-19.859,-20.188,-20.512,-20.809,-21.071,-21.313,-21.561,-21.837,
--22.139,-22.450,-22.752,-23.041,-23.323,-23.603,-23.877,-24.140,-24.393,-24.644,-24.894,-25.126,-25.320,-25.470,-25.597,-25.738,
--25.913,-26.111,-26.294,-26.435,-26.536,-26.622,-26.714,-26.802,-26.863,-26.880,-26.864,-26.844,-26.840,-26.843,-26.832,-26.792,
--26.727,-26.643,-26.537,-26.393,-26.205,-25.992,-25.794,-25.640,-25.542,-25.494,-25.493,-25.539,-25.617,-25.687,-25.705,-25.668,
--25.633,-25.676,-25.818,-25.984,-26.060,-25.999,-25.885,-25.877,-26.071,-26.398,-26.678,-26.769,-26.685,-26.537,-26.362,-26.002,
--25.198,-23.848,-22.213,-20.844,-20.244,-20.499,-21.207,-21.751,-21.732,-21.204,-20.553,-20.156,-20.104,-20.209,-20.238,-20.127,
--20.000,-19.992,-20.093,-20.139,-19.967,-19.559,-19.036,-18.535,-18.084,-17.606,-17.035,-16.413,-15.878,-15.556,-15.454,-15.464,
--15.453,-15.355,-15.181,-14.974,-14.749,-14.498,-14.223,-13.953,-13.714,-13.491,-13.228,-12.883,-12.479,-12.095,-11.798,-11.578,
--11.359,-11.071,-10.728,-10.418,-10.219,-10.113,-9.992,-9.760,-9.450,-9.244,-9.353,-9.864,-10.648,-11.439,-12.003,-12.287,
--12.440,-12.683,-13.147,-13.778,-14.385,-14.779,-14.897,-14.837,-14.773,-14.832,-15.014,-15.216,-15.326,-15.316,-15.266,-15.289,
--15.445,-15.687,-15.909,-16.047,-16.140,-16.318,-16.699,-17.298,-18.014,-18.698,-19.262,-19.721,-20.154,-20.616,-21.090,-21.501,
--21.792,-21.980,-22.152,-22.404,-22.781,-23.258,-23.766,-24.233,-24.614,-24.894,-25.088,-25.238,-25.398,-25.611,-25.879,-26.153,
--26.366,-26.481,-26.513,-26.517,-26.543,-26.612,-26.724,-26.894,-27.154,-27.516,-27.916,-28.222,-28.314,-28.192,-28.023,-28.054,
--28.450,-29.173,-29.990,-30.617,-30.897,-30.874,-30.739,-30.697,-30.856,-31.210,-31.693,-32.238,-32.810,-33.388,-33.954,-34.491,
--34.991,-35.459,-35.893,-36.278,-36.585,-36.792,-36.892,-36.891,-36.786,-36.575,-36.266,-35.911,-35.605,-35.450,-35.515,-35.800,
--36.241,-36.734,-37.170,-37.476,-37.627,-37.661,-37.656,-37.687,-37.787,-37.926,-38.033,-38.053,-37.979,-37.839,-37.659,-37.432,
--37.135,-36.766,-36.374,-36.036,-35.803,-35.670,-35.590,-35.522,-35.467,-35.446,-35.463,-35.470,-35.402,-35.223,-34.958,-34.672,
--34.412,-34.177,-33.929,-33.632,-33.285,-32.910,-32.532,-32.177,-31.876,-31.674,-31.591,-31.574,-31.490,-31.186,-30.599,-29.811,
--29.013,-28.382,-27.975,-27.713,-27.467,-27.158,-26.800,-26.456,-26.163,-25.909,-25.658,-25.399,-25.164,-24.994,-24.894,-24.836,
--24.780,-24.713,-24.647,-24.590,-24.517,-24.373,-24.111,-23.722,-23.236,-22.702,-22.170,-21.680,-21.263,-20.934,-20.684,-20.475,
--20.258,-19.997,-19.690,-19.350,-18.987,-18.595,-18.169,-17.727,-17.316,-16.985,-16.747,-16.566,-16.379,-16.135,-15.814,-15.428,
--14.991,-14.513,-13.994,-13.443,-12.871,-12.290,-11.710,-11.144,-10.613,-10.128,-9.671,-9.178,-8.567,-7.782,-6.834,-5.788,
--4.721,-3.684,-2.694,-1.759,-.891,-.087,.691,1.518,2.449,3.464,4.458,5.306,5.958,6.468,6.958,7.523,
-8.186,8.919,9.708,10.578,11.563,12.646,13.742,14.757,15.655,16.478,17.296,18.132,18.951,19.700,20.368,20.992,
-21.601,22.177,22.675,23.091,23.509,24.054,24.783,25.614,26.362,26.872,27.136,27.297,27.532,27.933,28.458,29.008,
-29.522,30.013,30.529,31.084,31.644,32.165,32.646,33.129,33.664,34.255,34.862,35.441,35.977,36.490,37.007,37.540,
-38.093,38.672,39.295,39.964,40.649,41.304,41.904,42.470,43.060,43.707,44.391,45.048,45.628,46.139,46.643,47.202,
-47.827,48.474,49.090,49.649,50.166,50.668,51.164,51.648,52.122,52.612,53.151,53.746,54.360,54.939,55.453,55.922,
-56.396,56.918,57.486,58.068,58.624,59.141,59.625,60.091,60.541,60.969,61.373,61.766,62.170,62.605,63.081,63.592,
-64.115,64.606,65.004,65.255,65.338,65.288,65.184,65.110,65.113,65.190,65.304,65.417,65.509,65.573,65.598,65.573,
-65.490,65.354,65.179,64.965,64.704,64.389,64.049,63.742,63.528,63.415,63.344,63.218,62.968,62.595,62.167,61.761,
-61.415,61.116,60.837,60.574,60.353,60.204,60.118,60.044,59.917,59.711,59.455,59.222,59.074,59.025,59.023,58.985,
-58.841,58.569,58.205,57.812,57.437,57.091,56.744,56.367,55.957,55.545,55.172,54.856,54.574,54.277,53.927,53.513,
-53.062,52.619,52.241,51.985,51.893,51.963,52.125,52.249,52.188,51.854,51.258,50.508,49.747,49.101,48.635,48.354,
-48.211,48.120,47.985,47.734,47.373,46.995,46.726,46.645,46.728,46.864,46.939,46.909,46.808,46.691,46.585,46.490,
-46.436,46.513,46.830,47.412,48.139,48.782,49.129,49.112,48.825,48.439,48.083,47.794,47.548,47.328,47.160,47.091,
-47.142,47.302,47.549,47.245,47.624,48.091,48.580,49.028,49.418,49.799,50.251,50.806,51.406,51.929,52.291,52.503,
-52.643,52.757,52.788,52.604,52.127,51.431,50.723,50.231,50.066,50.208,50.575,51.114,51.796,52.526,53.063,53.062,
-52.246,50.587,48.371,46.078,44.155,42.821,42.020,41.529,41.122,40.710,40.372,40.283,40.590,41.313,42.300,43.279,
-43.980,44.251,44.121,43.775,43.449,43.319,43.438,43.748,44.137,44.510,44.826,45.099,45.363,45.640,45.917,46.155,
-46.311,46.367,46.337,46.256,46.164,46.090,46.049,46.042,46.051,46.036,45.947,45.758,45.492,45.219,45.014,44.902,
-44.829,44.699,44.438,44.046,43.595,43.183,42.883,42.726,42.717,42.843,43.070,43.323,43.490,43.462,43.179,42.654,
-41.956,41.175,40.391,39.671,39.056,38.555,38.126,37.692,37.181,36.566,35.869,35.119,34.318,33.461,32.594,31.851,
-31.416,31.394,31.710,32.121,32.356,32.279,31.956,31.570,31.268,31.062,30.856,30.551,30.119,29.601,29.038,28.445,
-27.831,27.235,26.733,26.371,26.118,25.881,25.586,25.244,24.936,24.720,24.551,24.287,23.793,23.030,22.074,21.028,
-19.948,18.832,17.686,16.590,15.673,15.026,14.624,14.340,14.034,13.653,13.242,12.879,12.603,12.397,12.229,12.102,
-12.048,12.085,12.175,12.234,12.179,11.981,11.670,11.313,10.967,10.658,10.372,10.060,9.648,9.072,8.315,7.422,
-6.481,5.570,4.712,3.875,3.022,2.157,1.327,.577,-.092,-.725,-1.367,-2.016,-2.623,-3.142,-3.569,-3.952,
--4.351,-4.797,-5.287,-5.815,-6.389,-7.028,-7.726,-8.437,-9.095,-9.649,-10.100,-10.488,-10.863,-11.258,-11.681,-12.129,
--12.600,-13.090,-13.593,-14.101,-14.614,-15.138,-15.677,-16.229,-16.785,-17.339,-17.901,-18.482,-19.072,-19.641,-20.149,-20.586,
--20.986,-21.404,-21.878,-22.400,-22.921,-23.399,-23.827,-24.245,-24.703,-25.223,-25.783,-26.334,-26.824,-27.232,-27.568,-27.860,
--28.141,-28.429,-28.721,-29.008,-29.281,-29.544,-29.813,-30.103,-30.416,-30.744,-31.078,-31.431,-31.831,-32.300,-32.832,-33.385,
--33.906,-34.358,-34.743,-35.094,-35.448,-35.827,-36.223,-36.609,-36.950,-37.218,-37.412,-37.557,-37.709,-37.929,-38.246,-38.634,
--39.016,-39.308,-39.471,-39.542,-39.618,-39.810,-40.188,-40.747,-41.412,-42.064,-42.587,-42.906,-43.013,-42.965,-42.861,-42.790,
--42.799,-42.883,-43.015,-43.177,-43.375,-43.614,-43.877,-44.118,-44.299,-44.433,-44.599,-44.892,-45.355,-45.934,-46.507,-46.970,
--47.308,-47.598,-47.942,-48.383,-48.876,-49.337,-49.712,-50.009,-50.262,-50.470,-50.571,-50.477,-50.137,-49.564,-48.796,-47.849,
--46.708,-45.391,-44.026,-42.857,-42.159,-42.122,-42.776,-44.013,-45.663,-47.536,-49.418,-51.049,-52.181,-52.694,-52.702,-52.527,
--52.540,-52.965,-53.800,-54.906,-56.159,-57.541,-59.071,-60.689,-62.206,-63.406,-64.202,-64.693,-65.069,-65.430,-65.699,-65.710,
--65.380,-64.799,-64.154,-63.556,-62.942,-62.162,-61.157,-60.063,-59.132,-58.523,-58.153,-57.763,-57.124,-56.240,-55.356,-54.774,
--54.641,-54.855,-55.161,-55.323,-55.245,-54.965,-54.579,-54.176,-53.823,-53.574,-53.455,-53.430,-53.392,-53.216,-52.856,-52.394,
--51.997,-51.789,-51.750,-51.720,-51.511,-51.040,-50.378,-49.688,-49.111,-48.690,-48.400,-48.214,-48.156,-48.275,-48.576,-48.983,
--49.368,-49.633,-49.759,-49.791,-49.771,-49.682,-49.467,-49.091,-48.592,-48.079,-47.661,-47.379,-47.190,-47.016,-46.801,-46.541,
--46.257,-45.959,-45.624,-45.219,-44.736,-44.207,-43.684,-43.201,-42.754,-42.310,-41.841,-41.348,-40.857,-40.397,-39.968,-39.536,
--39.046,-38.458,-37.771,-37.028,-36.301,-35.643,-35.070,-34.545,-34.007,-33.404,-32.715,-31.956,-31.154,-30.334,-29.509,-28.684,
--27.868,-27.064,-26.269,-25.469,-24.646,-23.797,-22.929,-22.052,-21.159,-20.225,-19.235,-18.214,-17.236,-16.396,-15.753,-15.279,
--14.862,-14.361,-13.675,-12.791,-11.783,-10.760,-9.810,-8.962,-8.188,-7.430,-6.631,-5.761,-4.825,-3.859,-2.919,-2.052,
--1.283,-.611,-.027,.473,.891,1.248,1.590,1.980,2.454,2.989,3.513,3.958,4.314,4.637,5.010,5.480,
-6.038,6.646,7.283,7.955,8.674,9.414,10.122,10.757,11.326,11.884,12.475,13.096,13.710,14.300,14.897,15.545,
-16.234,16.875,17.369,17.716,18.054,18.573,19.361,20.308,21.169,21.738,21.990,22.083,22.209,22.442,22.702,22.854,
-22.836,22.709,22.593,22.570,22.640,22.760,22.910,23.118,23.427,23.850,24.370,24.962,25.632,26.409,27.303,28.270,
-29.203,29.955,30.379,30.360,29.866,28.973,27.871,26.805,25.981,25.487,25.278,25.245,25.301,25.427,25.644,25.960,
-26.343,26.749,27.149,27.532,27.867,28.083,28.105,27.933,27.678,27.512,27.548,27.744,27.924,27.911,27.662,27.297,
-27.000,26.872,26.856,26.783,26.508,26.019,25.439,24.943,24.650,24.564,24.603,24.669,24.716,24.770,24.901,25.171,
-25.587,26.087,26.573,26.945,27.139,27.117,26.848,26.283,25.356,24.006,22.202,19.950,17.288,14.293,11.092,7.873,
-4.856,2.245,.174,-1.291,-2.110,-2.228,-1.585,-.182,1.840,4.194,6.516,8.489,9.936,10.846,11.327,11.541,
-11.638,11.714,11.785,11.796,11.662,11.339,10.866,10.353,9.906,9.549,9.219,8.825,8.340,7.823,7.365,7.002,
-6.679,6.299,5.810,5.246,4.697,4.222,3.815,3.425,3.020,2.613,2.242,1.906,1.556,1.134,.631,.099,
--.394,-.830,-1.255,-1.720,-2.216,-2.660,-2.966,-3.115,-3.182,-3.266,-3.414,-3.598,-3.777,-3.975,-4.279,-4.759,
--5.378,-6.013,-6.579,-7.133,-7.831,-8.725,-9.570,-9.872,-9.203,-7.597,-5.688,-4.413,-4.452,-5.782,-7.692,-9.245,
--9.847,-9.525,-8.758,-8.053,-7.635,-7.432,-7.303,-7.232,-7.321,-7.629,-8.036,-8.299,-8.237,-7.879,-7.441,-7.160,
--7.129,-7.260,-7.392,-7.417,-7.329,-7.181,-7.013,-6.832,-6.634,-6.449,-6.330,-6.317,-6.400,-6.520,-6.610,-6.623,
--6.554,-6.428,-6.278,-6.140,-6.038,-5.975,-5.933,-5.872,-5.760,-5.594,-5.405,-5.239,-5.131,-5.078,-5.053,-5.021,
--4.963,-4.880,-4.785,-4.687,-4.587,-4.483,-4.375,-4.272,-4.178,-4.087,-3.988,-3.870,-3.738,-3.615,-3.525,-3.476,
--3.454,-3.428,-3.376,-3.302,-3.224,-3.159,-3.100,-3.028,-2.930,-2.818,-2.722,-2.663,-2.631,-2.592,-2.515,-2.402,
--2.292,-2.227,-2.221,-2.250,-2.264,-2.234,-2.162,-2.080,-2.023,-2.000,-2.003,-2.014,-2.028,-2.053,-2.102,-2.174,
--2.256,-2.331,-2.383,-2.410,-2.419,-2.420,-2.423,-2.436,-2.464,-2.514,-2.591,-2.699,-2.832,-2.976,-3.112,-3.223,
--3.310,-3.390,-3.492,-3.640,-3.835,-4.057,-4.275,-4.472,-4.649,-4.827,-5.021,-5.234,-5.450,-5.655,-5.845,-6.034,
--6.236,-6.455,-6.680,-6.893,-7.088,-7.274,-7.466,-7.673,-7.891,-8.112,-8.330,-8.550,-8.779,-9.016,-9.251,-9.476,
--9.695,-9.925,-10.184,-10.473,-10.775,-11.068,-11.342,-11.608,-11.883,-12.175,-12.474,-12.759,-13.019,-13.260,-13.494,-13.732,
--13.969,-14.197,-14.408,-14.602,-14.785,-14.962,-15.142,-15.336,-15.560,-15.820,-16.108,-16.400,-16.669,-16.904,-17.113,-17.321,
--17.550,-17.811,-18.103,-18.419,-18.746,-19.068,-19.372,-19.657,-19.938,-20.233,-20.549,-20.871,-21.175,-21.447,-21.702,-21.968,
--22.268,-22.593,-22.914,-23.204,-23.465,-23.715,-23.973,-24.242,-24.508,-24.763,-25.011,-25.257,-25.498,-25.712,-25.885,-26.026,
--26.163,-26.323,-26.502,-26.670,-26.801,-26.898,-26.989,-27.102,-27.231,-27.346,-27.414,-27.428,-27.405,-27.370,-27.338,-27.311,
--27.290,-27.274,-27.246,-27.171,-27.014,-26.774,-26.494,-26.241,-26.059,-25.949,-25.888,-25.866,-25.893,-25.977,-26.085,-26.152,
--26.140,-26.078,-26.051,-26.115,-26.235,-26.314,-26.290,-26.218,-26.240,-26.449,-26.789,-27.086,-27.193,-27.106,-26.924,-26.687,
--26.250,-25.375,-23.986,-22.360,-21.051,-20.531,-20.845,-21.541,-21.994,-21.833,-21.174,-20.456,-20.062,-20.043,-20.158,-20.142,
--19.939,-19.701,-19.582,-19.560,-19.450,-19.086,-18.489,-17.847,-17.358,-17.061,-16.833,-16.521,-16.086,-15.628,-15.287,-15.129,
--15.111,-15.139,-15.138,-15.076,-14.942,-14.730,-14.447,-14.136,-13.857,-13.635,-13.427,-13.147,-12.751,-12.292,-11.880,-11.588,
--11.365,-11.076,-10.621,-10.039,-9.502,-9.172,-9.062,-9.016,-8.838,-8.477,-8.114,-8.054,-8.523,-9.483,-10.631,-11.571,
--12.048,-12.094,-11.983,-12.052,-12.495,-13.256,-14.089,-14.721,-15.010,-15.006,-14.881,-14.799,-14.813,-14.871,-14.899,-14.889,
--14.916,-15.069,-15.372,-15.750,-16.097,-16.363,-16.600,-16.922,-17.410,-18.047,-18.736,-19.377,-19.932,-20.427,-20.899,-21.341,
--21.706,-21.959,-22.127,-22.297,-22.560,-22.945,-23.405,-23.852,-24.216,-24.480,-24.669,-24.825,-24.984,-25.170,-25.397,-25.666,
--25.957,-26.233,-26.454,-26.604,-26.697,-26.768,-26.853,-26.982,-27.170,-27.416,-27.690,-27.929,-28.067,-28.092,-28.087,-28.208,
--28.597,-29.269,-30.078,-30.779,-31.175,-31.230,-31.086,-30.967,-31.051,-31.398,-31.958,-32.633,-33.330,-33.984,-34.554,-35.027,
--35.418,-35.767,-36.118,-36.482,-36.829,-37.110,-37.287,-37.349,-37.294,-37.115,-36.800,-36.371,-35.901,-35.513,-35.319,-35.369,
--35.634,-36.031,-36.464,-36.856,-37.153,-37.330,-37.398,-37.406,-37.423,-37.498,-37.624,-37.744,-37.788,-37.730,-37.591,-37.409,
--37.204,-36.965,-36.679,-36.370,-36.087,-35.875,-35.737,-35.639,-35.543,-35.441,-35.342,-35.252,-35.149,-35.007,-34.821,-34.624,
--34.458,-34.332,-34.207,-34.025,-33.744,-33.360,-32.888,-32.357,-31.808,-31.317,-30.981,-30.851,-30.865,-30.847,-30.606,-30.069,
--29.353,-28.685,-28.241,-28.016,-27.846,-27.546,-27.064,-26.513,-26.070,-25.837,-25.774,-25.755,-25.680,-25.536,-25.376,-25.244,
--25.136,-25.010,-24.839,-24.643,-24.462,-24.315,-24.175,-23.986,-23.701,-23.315,-22.867,-22.419,-22.028,-21.730,-21.522,-21.362,
--21.192,-20.959,-20.648,-20.280,-19.892,-19.501,-19.098,-18.668,-18.225,-17.815,-17.495,-17.287,-17.158,-17.038,-16.857,-16.576,
--16.194,-15.727,-15.197,-14.623,-14.023,-13.410,-12.799,-12.201,-11.633,-11.108,-10.619,-10.121,-9.535,-8.792,-7.880,-6.860,
--5.831,-4.865,-3.981,-3.157,-2.375,-1.636,-.930,-.193,.681,1.756,2.979,4.170,5.129,5.768,6.173,6.546,
-7.066,7.800,8.706,9.711,10.772,11.874,12.977,14.007,14.903,15.674,16.403,17.176,18.003,18.803,19.478,20.002,
-20.439,20.880,21.365,21.865,22.346,22.830,23.388,24.073,24.843,25.581,26.176,26.609,26.959,27.327,27.761,28.235,
-28.707,29.168,29.651,30.179,30.735,31.272,31.767,32.242,32.747,33.306,33.900,34.499,35.096,35.713,36.363,37.016,
-37.612,38.121,38.590,39.110,39.746,40.468,41.177,41.793,42.329,42.880,43.529,44.267,44.989,45.587,46.047,46.463,
-46.963,47.602,48.327,49.021,49.594,50.041,50.427,50.835,51.313,51.868,52.476,53.107,53.728,54.310,54.841,55.333,
-55.820,56.338,56.899,57.485,58.061,58.607,59.121,59.614,60.088,60.535,60.947,61.332,61.715,62.128,62.587,63.090,
-63.614,64.124,64.570,64.903,65.083,65.112,65.034,64.927,64.859,64.866,64.939,65.049,65.165,65.264,65.326,65.325,
-65.250,65.114,64.956,64.810,64.677,64.518,64.288,63.981,63.651,63.371,63.184,63.065,62.938,62.737,62.448,62.111,
-61.774,61.458,61.151,60.836,60.520,60.232,59.995,59.803,59.624,59.432,59.235,59.074,58.993,58.997,59.044,59.069,
-59.022,58.897,58.727,58.548,58.359,58.114,57.745,57.224,56.603,56.009,55.583,55.397,55.402,55.457,55.401,55.139,
-54.680,54.110,53.541,53.074,52.782,52.702,52.815,53.023,53.160,53.051,52.591,51.800,50.811,49.803,48.929,48.282,
-47.886,47.705,47.648,47.587,47.410,47.084,46.686,46.352,46.184,46.179,46.244,46.277,46.246,46.186,46.128,46.051,
-45.900,45.682,45.517,45.586,45.997,46.679,47.402,47.921,48.125,48.075,47.921,47.776,47.655,47.510,47.314,47.098,
-46.935,46.890,46.993,47.245,47.140,47.491,47.958,48.476,48.970,49.399,49.788,50.203,50.685,51.216,51.733,52.190,
-52.593,52.954,53.222,53.265,52.964,52.334,51.572,50.966,50.720,50.848,51.214,51.675,52.180,52.728,53.232,53.429,
-52.963,51.609,49.464,46.961,44.668,43.015,42.105,41.723,41.503,41.136,40.507,39.726,39.049,38.750,38.988,39.725,
-40.733,41.699,42.371,42.665,42.678,42.607,42.633,42.838,43.195,43.608,43.979,44.255,44.444,44.609,44.826,45.141,
-45.537,45.940,46.257,46.433,46.475,46.438,46.383,46.341,46.312,46.284,46.242,46.175,46.065,45.894,45.656,45.372,
-45.082,44.813,44.564,44.306,44.007,43.666,43.322,43.040,42.885,42.883,43.003,43.163,43.254,43.181,42.898,42.412,
-41.763,40.993,40.139,39.251,38.406,37.697,37.177,36.818,36.509,36.124,35.603,34.974,34.317,33.695,33.129,32.636,
-32.271,32.126,32.257,32.601,32.970,33.150,33.024,32.636,32.149,31.718,31.408,31.185,30.976,30.719,30.378,29.933,
-29.374,28.730,28.077,27.505,27.059,26.708,26.387,26.074,25.829,25.736,25.796,25.860,25.691,25.115,24.131,22.906,
-21.651,20.494,19.452,18.498,17.655,16.994,16.564,16.313,16.098,15.775,15.294,14.717,14.151,13.660,13.247,12.892,
-12.611,12.460,12.485,12.670,12.924,13.122,13.171,13.040,12.761,12.403,12.028,11.663,11.277,10.790,10.120,9.241,
-8.209,7.135,6.108,5.146,4.202,3.232,2.254,1.345,.569,-.087,-.710,-1.390,-2.133,-2.862,-3.473,-3.927,
--4.279,-4.634,-5.075,-5.624,-6.251,-6.914,-7.587,-8.257,-8.902,-9.501,-10.038,-10.521,-10.968,-11.391,-11.787,-12.146,
--12.476,-12.803,-13.167,-13.591,-14.077,-14.602,-15.138,-15.665,-16.175,-16.674,-17.178,-17.700,-18.239,-18.777,-19.284,-19.746,
--20.177,-20.611,-21.082,-21.590,-22.106,-22.588,-23.019,-23.414,-23.817,-24.270,-24.793,-25.375,-25.982,-26.562,-27.067,-27.472,
--27.790,-28.063,-28.339,-28.638,-28.946,-29.234,-29.497,-29.764,-30.078,-30.455,-30.863,-31.252,-31.597,-31.929,-32.311,-32.790,
--33.351,-33.923,-34.428,-34.827,-35.144,-35.437,-35.760,-36.131,-36.529,-36.911,-37.240,-37.495,-37.686,-37.841,-37.997,-38.181,
--38.404,-38.658,-38.930,-39.209,-39.489,-39.765,-40.038,-40.321,-40.640,-41.021,-41.467,-41.940,-42.372,-42.702,-42.915,-43.046,
--43.149,-43.260,-43.372,-43.466,-43.542,-43.634,-43.786,-44.009,-44.265,-44.507,-44.727,-44.984,-45.354,-45.860,-46.428,-46.929,
--47.276,-47.494,-47.703,-48.021,-48.466,-48.937,-49.307,-49.515,-49.605,-49.653,-49.671,-49.569,-49.227,-48.591,-47.704,-46.650,
--45.465,-44.131,-42.672,-41.269,-40.262,-39.996,-40.626,-42.027,-43.903,-45.980,-48.127,-50.296,-52.379,-54.138,-55.318,-55.846,
--55.944,-56.018,-56.405,-57.189,-58.216,-59.288,-60.330,-61.408,-62.579,-63.775,-64.815,-65.556,-66.003,-66.292,-66.539,-66.730,
--66.743,-66.484,-65.990,-65.391,-64.781,-64.125,-63.315,-62.319,-61.271,-60.403,-59.860,-59.573,-59.302,-58.829,-58.130,-57.400,
--56.896,-56.758,-56.927,-57.207,-57.402,-57.410,-57.241,-56.969,-56.688,-56.477,-56.366,-56.301,-56.141,-55.712,-54.934,-53.915,
--52.932,-52.288,-52.123,-52.316,-52.558,-52.552,-52.180,-51.542,-50.850,-50.270,-49.839,-49.503,-49.210,-48.972,-48.846,-48.863,
--48.987,-49.137,-49.244,-49.302,-49.338,-49.367,-49.348,-49.208,-48.903,-48.466,-47.996,-47.600,-47.337,-47.197,-47.127,-47.067,
--46.974,-46.817,-46.572,-46.221,-45.765,-45.235,-44.681,-44.144,-43.640,-43.157,-42.671,-42.165,-41.639,-41.109,-40.591,-40.090,
--39.591,-39.060,-38.460,-37.771,-37.015,-36.242,-35.514,-34.867,-34.296,-33.761,-33.210,-32.607,-31.935,-31.195,-30.399,-29.569,
--28.734,-27.922,-27.142,-26.377,-25.595,-24.769,-23.897,-22.998,-22.088,-21.163,-20.199,-19.179,-18.123,-17.095,-16.174,-15.410,
--14.792,-14.245,-13.664,-12.967,-12.127,-11.182,-10.211,-9.286,-8.439,-7.641,-6.830,-5.950,-4.999,-4.034,-3.142,-2.387,
--1.770,-1.232,-.703,-.157,.371,.829,1.200,1.540,1.939,2.450,3.043,3.619,4.087,4.440,4.756,5.135,
-5.624,6.202,6.820,7.456,8.129,8.857,9.615,10.344,11.002,11.609,12.220,12.875,13.553,14.212,14.845,15.503,
-16.226,16.961,17.557,17.878,17.957,18.032,18.400,19.201,20.292,21.346,22.086,22.475,22.695,22.957,23.317,23.643,
-23.763,23.627,23.348,23.108,23.018,23.069,23.190,23.338,23.532,23.814,24.197,24.665,25.212,25.871,26.688,27.658,
-28.680,29.576,30.155,30.284,29.927,29.154,28.132,27.081,26.219,25.679,25.468,25.487,25.613,25.778,25.988,26.275,
-26.637,27.031,27.414,27.784,28.156,28.511,28.760,28.796,28.599,28.297,28.099,28.153,28.418,28.684,28.727,28.471,
-28.042,27.659,27.468,27.434,27.386,27.153,26.691,26.112,25.606,25.328,25.314,25.485,25.708,25.885,26.012,26.170,
-26.460,26.912,27.440,27.857,27.966,27.642,26.860,25.648,24.029,21.991,19.529,16.689,13.590,10.377,7.182,4.105,
-1.264,-1.165,-2.961,-3.923,-3.962,-3.129,-1.594,.415,2.664,4.922,6.978,8.665,9.904,10.717,11.202,11.478,
-11.631,11.701,11.692,11.596,11.402,11.107,10.725,10.289,9.843,9.409,8.973,8.502,7.985,7.463,7.010,6.667,
-6.394,6.094,5.687,5.179,4.658,4.214,3.856,3.512,3.106,2.637,2.186,1.834,1.570,1.288,.872,.312,
--.288,-.793,-1.166,-1.491,-1.891,-2.398,-2.909,-3.274,-3.432,-3.469,-3.539,-3.721,-3.964,-4.164,-4.302,-4.491,
--4.877,-5.477,-6.150,-6.738,-7.250,-7.882,-8.780,-9.744,-10.188,-9.495,-7.563,-5.088,-3.284,-3.151,-4.808,-7.400,
--9.655,-10.684,-10.436,-9.535,-8.699,-8.252,-8.069,-7.888,-7.643,-7.515,-7.696,-8.142,-8.566,-8.662,-8.360,-7.868,
--7.491,-7.402,-7.540,-7.712,-7.760,-7.654,-7.463,-7.266,-7.094,-6.948,-6.835,-6.779,-6.801,-6.879,-6.959,-6.984,
--6.931,-6.816,-6.673,-6.537,-6.432,-6.367,-6.336,-6.318,-6.278,-6.182,-6.027,-5.846,-5.691,-5.606,-5.595,-5.624,
--5.638,-5.598,-5.494,-5.349,-5.195,-5.056,-4.934,-4.823,-4.718,-4.617,-4.522,-4.423,-4.308,-4.175,-4.041,-3.941,
--3.904,-3.924,-3.962,-3.969,-3.920,-3.830,-3.735,-3.659,-3.601,-3.540,-3.462,-3.376,-3.296,-3.224,-3.144,-3.038,
--2.906,-2.781,-2.705,-2.697,-2.735,-2.774,-2.772,-2.721,-2.641,-2.567,-2.518,-2.501,-2.510,-2.545,-2.605,-2.692,
--2.798,-2.906,-3.000,-3.068,-3.107,-3.126,-3.137,-3.150,-3.171,-3.199,-3.237,-3.289,-3.367,-3.477,-3.613,-3.756,
--3.878,-3.967,-4.034,-4.112,-4.233,-4.405,-4.611,-4.817,-5.001,-5.164,-5.326,-5.507,-5.710,-5.921,-6.125,-6.320,
--6.518,-6.734,-6.970,-7.216,-7.454,-7.676,-7.884,-8.087,-8.292,-8.494,-8.691,-8.887,-9.091,-9.314,-9.552,-9.794,
--10.026,-10.252,-10.486,-10.744,-11.027,-11.320,-11.606,-11.881,-12.150,-12.427,-12.713,-12.998,-13.273,-13.538,-13.801,-14.065,
--14.323,-14.557,-14.762,-14.946,-15.134,-15.337,-15.553,-15.766,-15.969,-16.174,-16.398,-16.649,-16.914,-17.165,-17.388,-17.592,
--17.801,-18.037,-18.310,-18.609,-18.920,-19.230,-19.529,-19.812,-20.080,-20.347,-20.630,-20.934,-21.247,-21.547,-21.827,-22.102,
--22.398,-22.727,-23.067,-23.379,-23.638,-23.854,-24.067,-24.307,-24.572,-24.839,-25.085,-25.316,-25.545,-25.780,-26.001,-26.186,
--26.336,-26.478,-26.641,-26.827,-27.006,-27.144,-27.239,-27.324,-27.436,-27.581,-27.730,-27.842,-27.892,-27.886,-27.843,-27.785,
--27.734,-27.715,-27.735,-27.770,-27.759,-27.636,-27.384,-27.058,-26.749,-26.525,-26.389,-26.304,-26.248,-26.239,-26.306,-26.434,
--26.550,-26.579,-26.519,-26.446,-26.442,-26.510,-26.574,-26.566,-26.519,-26.561,-26.789,-27.161,-27.498,-27.631,-27.522,-27.260,
--26.905,-26.361,-25.442,-24.089,-22.561,-21.364,-20.915,-21.223,-21.835,-22.155,-21.863,-21.122,-20.387,-20.025,-20.044,-20.162,
--20.094,-19.799,-19.459,-19.253,-19.165,-18.995,-18.562,-17.885,-17.179,-16.681,-16.460,-16.397,-16.304,-16.082,-15.770,-15.476,
--15.281,-15.185,-15.143,-15.103,-15.024,-14.876,-14.640,-14.332,-14.016,-13.755,-13.557,-13.343,-13.005,-12.506,-11.931,-11.427,
--11.080,-10.832,-10.524,-10.038,-9.422,-8.866,-8.557,-8.514,-8.557,-8.444,-8.082,-7.641,-7.482,-7.927,-9.030,-10.500,
--11.822,-12.535,-12.472,-11.860,-11.195,-10.977,-11.451,-12.491,-13.699,-14.641,-15.080,-15.065,-14.833,-14.630,-14.560,-14.584,
--14.621,-14.655,-14.759,-15.021,-15.451,-15.961,-16.435,-16.817,-17.159,-17.568,-18.120,-18.800,-19.522,-20.192,-20.760,-21.225,
--21.604,-21.906,-22.138,-22.331,-22.541,-22.822,-23.187,-23.590,-23.958,-24.234,-24.415,-24.537,-24.647,-24.778,-24.940,-25.141,
--25.391,-25.700,-26.050,-26.399,-26.696,-26.912,-27.058,-27.175,-27.304,-27.456,-27.602,-27.695,-27.710,-27.683,-27.715,-27.932,
--28.414,-29.132,-29.937,-30.627,-31.051,-31.193,-31.175,-31.185,-31.370,-31.779,-32.368,-33.061,-33.788,-34.492,-35.116,-35.603,
--35.926,-36.118,-36.261,-36.434,-36.664,-36.911,-37.111,-37.222,-37.238,-37.158,-36.957,-36.607,-36.119,-35.583,-35.144,-34.929,
--34.980,-35.243,-35.620,-36.023,-36.402,-36.723,-36.950,-37.060,-37.071,-37.054,-37.090,-37.212,-37.379,-37.501,-37.513,-37.410,
--37.244,-37.071,-36.913,-36.757,-36.589,-36.407,-36.227,-36.060,-35.908,-35.763,-35.622,-35.476,-35.312,-35.115,-34.888,-34.664,
--34.489,-34.387,-34.325,-34.233,-34.044,-33.728,-33.288,-32.735,-32.075,-31.349,-30.664,-30.170,-29.968,-30.009,-30.094,-29.987,
--29.588,-29.007,-28.479,-28.170,-28.049,-27.921,-27.599,-27.070,-26.505,-26.126,-26.024,-26.109,-26.190,-26.135,-25.944,-25.716,
--25.536,-25.402,-25.245,-25.001,-24.677,-24.341,-24.063,-23.865,-23.708,-23.530,-23.286,-22.978,-22.650,-22.362,-22.160,-22.050,
--21.990,-21.910,-21.748,-21.483,-21.141,-20.764,-20.378,-19.979,-19.552,-19.113,-18.710,-18.398,-18.198,-18.072,-17.943,-17.741,
--17.432,-17.021,-16.533,-15.987,-15.398,-14.773,-14.126,-13.468,-12.812,-12.169,-11.542,-10.914,-10.243,-9.476,-8.584,-7.600,
--6.615,-5.733,-5.007,-4.419,-3.908,-3.420,-2.924,-2.378,-1.695,-.762,.471,1.909,3.321,4.463,5.230,5.721,
-6.164,6.766,7.603,8.626,9.743,10.886,12.018,13.093,14.045,14.846,15.543,16.250,17.046,17.896,18.654,19.182,
-19.469,19.648,19.901,20.331,20.909,21.539,22.158,22.788,23.481,24.245,25.016,25.702,26.258,26.706,27.099,27.478,
-27.854,28.236,28.652,29.135,29.688,30.274,30.848,31.391,31.925,32.473,33.030,33.578,34.126,34.734,35.469,36.325,
-37.195,37.927,38.444,38.812,39.194,39.720,40.386,41.076,41.680,42.201,42.748,43.421,44.206,44.969,45.568,45.983,
-46.337,46.801,47.458,48.241,48.990,49.570,49.966,50.276,50.640,51.145,51.792,52.508,53.197,53.790,54.275,54.697,
-55.129,55.633,56.222,56.859,57.479,58.042,58.550,59.035,59.525,60.016,60.479,60.893,61.268,61.646,62.072,62.563,
-63.099,63.636,64.123,64.511,64.766,64.878,64.866,64.781,64.687,64.631,64.632,64.681,64.758,64.848,64.933,64.985,
-64.969,64.871,64.712,64.544,64.413,64.320,64.221,64.058,63.814,63.525,63.252,63.027,62.830,62.613,62.348,62.052,
-61.769,61.529,61.312,61.068,60.760,60.396,60.019,59.676,59.381,59.119,58.876,58.668,58.540,58.529,58.635,58.804,
-58.957,59.032,59.016,58.935,58.817,58.647,58.362,57.891,57.225,56.467,55.812,55.451,55.462,55.755,56.108,56.290,
-56.170,55.753,55.147,54.484,53.879,53.413,53.132,53.025,52.998,52.893,52.553,51.913,51.037,50.077,49.178,48.415,
-47.793,47.294,46.913,46.648,46.464,46.293,46.076,45.812,45.555,45.355,45.213,45.080,44.927,44.789,44.733,44.781,
-44.856,44.833,44.661,44.444,44.392,44.670,45.263,45.987,46.617,47.033,47.268,47.424,47.560,47.647,47.618,47.454,
-47.214,46.999,46.893,46.937,47.140,47.293,47.536,47.901,48.367,48.876,49.363,49.801,50.208,50.620,51.056,51.518,
-52.005,52.509,52.976,53.278,53.257,52.839,52.137,51.430,51.015,51.021,51.352,51.793,52.202,52.585,53.012,53.433,
-53.587,53.112,51.790,49.739,47.398,45.310,43.857,43.106,42.845,42.735,42.477,41.917,41.075,40.131,39.347,38.960,
-39.075,39.596,40.277,40.851,41.159,41.221,41.189,41.245,41.502,41.964,42.534,43.074,43.471,43.697,43.824,43.991,
-44.314,44.809,45.375,45.861,46.170,46.312,46.375,46.441,46.522,46.575,46.564,46.504,46.442,46.397,46.317,46.116,
-45.752,45.272,44.794,44.422,44.169,43.965,43.727,43.437,43.167,43.021,43.035,43.137,43.167,42.979,42.527,41.890,
-41.210,40.591,40.042,39.490,38.865,38.171,37.498,36.946,36.540,36.205,35.820,35.310,34.704,34.105,33.618,33.291,
-33.114,33.064,33.136,33.329,33.595,33.824,33.882,33.684,33.249,32.694,32.166,31.773,31.542,31.424,31.320,31.114,
-30.713,30.087,29.286,28.419,27.600,26.895,26.315,25.866,25.600,25.593,25.855,26.239,26.447,26.165,25.258,23.862,
-22.315,20.959,19.965,19.297,18.820,18.426,18.088,17.807,17.538,17.193,16.701,16.085,15.454,14.926,14.545,14.268,
-14.035,13.833,13.718,13.755,13.956,14.252,14.528,14.679,14.653,14.449,14.111,13.690,13.221,12.693,12.047,11.210,
-10.159,8.954,7.717,6.559,5.506,4.503,3.485,2.451,1.473,.630,-.078,-.739,-1.457,-2.261,-3.074,-3.769,
--4.280,-4.651,-5.007,-5.468,-6.071,-6.771,-7.481,-8.134,-8.710,-9.230,-9.729,-10.234,-10.752,-11.264,-11.731,-12.114,
--12.400,-12.614,-12.818,-13.080,-13.448,-13.926,-14.477,-15.046,-15.579,-16.050,-16.466,-16.860,-17.270,-17.713,-18.180,-18.651,
--19.116,-19.588,-20.085,-20.614,-21.154,-21.671,-22.143,-22.573,-22.988,-23.418,-23.888,-24.413,-25.001,-25.638,-26.282,-26.866,
--27.338,-27.695,-27.987,-28.284,-28.618,-28.962,-29.271,-29.530,-29.783,-30.099,-30.509,-30.970,-31.403,-31.761,-32.071,-32.419,
--32.871,-33.420,-33.985,-34.474,-34.842,-35.120,-35.379,-35.683,-36.053,-36.469,-36.892,-37.286,-37.621,-37.875,-38.034,-38.099,
--38.100,-38.097,-38.171,-38.393,-38.785,-39.302,-39.841,-40.290,-40.587,-40.754,-40.882,-41.074,-41.385,-41.798,-42.248,-42.675,
--43.045,-43.352,-43.593,-43.751,-43.821,-43.829,-43.837,-43.908,-44.066,-44.281,-44.509,-44.742,-45.033,-45.450,-46.004,-46.611,
--47.136,-47.490,-47.699,-47.881,-48.144,-48.490,-48.809,-48.980,-48.969,-48.852,-48.715,-48.552,-48.247,-47.678,-46.838,-45.862,
--44.905,-44.010,-43.085,-42.055,-41.038,-40.371,-40.420,-41.322,-42.881,-44.723,-46.580,-48.445,-50.464,-52.653,-54.748,-56.327,
--57.139,-57.343,-57.434,-57.901,-58.900,-60.202,-61.436,-62.402,-63.177,-63.970,-64.886,-65.827,-66.598,-67.090,-67.355,-67.527,
--67.676,-67.754,-67.664,-67.367,-66.904,-66.333,-65.654,-64.828,-63.854,-62.836,-61.940,-61.279,-60.832,-60.467,-60.060,-59.596,
--59.169,-58.894,-58.814,-58.883,-59.016,-59.142,-59.227,-59.252,-59.211,-59.124,-59.038,-58.984,-58.904,-58.625,-57.945,-56.784,
--55.309,-53.900,-52.958,-52.673,-52.919,-53.342,-53.582,-53.468,-53.064,-52.558,-52.106,-51.743,-51.417,-51.071,-50.703,-50.356,
--50.068,-49.833,-49.622,-49.419,-49.245,-49.133,-49.087,-49.058,-48.973,-48.775,-48.463,-48.088,-47.724,-47.439,-47.269,-47.222,
--47.265,-47.329,-47.325,-47.169,-46.828,-46.329,-45.742,-45.137,-44.557,-44.008,-43.478,-42.958,-42.441,-41.915,-41.368,-40.795,
--40.203,-39.607,-39.010,-38.388,-37.711,-36.968,-36.188,-35.434,-34.763,-34.190,-33.684,-33.185,-32.629,-31.977,-31.218,-30.373,
--29.484,-28.608,-27.786,-27.025,-26.295,-25.547,-24.746,-23.893,-23.011,-22.116,-21.202,-20.240,-19.216,-18.147,-17.086,-16.093,
--15.209,-14.433,-13.728,-13.035,-12.297,-11.480,-10.589,-9.663,-8.754,-7.888,-7.048,-6.183,-5.253,-4.279,-3.342,-2.548,
--1.952,-1.517,-1.136,-.703,-.185,.364,.858,1.256,1.598,1.975,2.451,3.009,3.574,4.074,4.503,4.918,
-5.384,5.918,6.492,7.078,7.690,8.366,9.120,9.909,10.659,11.333,11.964,12.613,13.306,14.002,14.656,15.288,
-15.983,16.791,17.612,18.219,18.424,18.279,18.110,18.327,19.130,20.361,21.622,22.563,23.112,23.451,23.801,24.208,
-24.528,24.582,24.338,23.946,23.613,23.457,23.460,23.538,23.645,23.794,24.021,24.338,24.744,25.260,25.940,26.810,
-27.805,28.747,29.422,29.678,29.485,28.922,28.130,27.268,26.497,25.946,25.682,25.675,25.822,26.012,26.204,26.428,
-26.736,27.131,27.562,27.979,28.374,28.771,29.155,29.435,29.491,29.292,28.966,28.745,28.805,29.125,29.491,29.641,
-29.448,28.996,28.496,28.133,27.949,27.847,27.692,27.410,27.038,26.687,26.476,26.474,26.664,26.961,27.265,27.519,
-27.743,28.003,28.322,28.600,28.613,28.104,26.908,25.018,22.551,19.655,16.447,13.026,9.532,6.169,3.154,.626,
--1.383,-2.900,-3.908,-4.307,-3.960,-2.813,-.976,1.288,3.655,5.843,7.675,9.079,10.068,10.717,11.131,11.406,
-11.594,11.690,11.658,11.483,11.193,10.850,10.509,10.183,9.846,9.456,8.987,8.441,7.850,7.275,6.782,6.410,
-6.138,5.886,5.565,5.137,4.654,4.212,3.872,3.598,3.284,2.851,2.326,1.823,1.449,1.199,.952,.577,
-.045,-.539,-1.033,-1.388,-1.686,-2.057,-2.544,-3.044,-3.402,-3.554,-3.596,-3.700,-3.945,-4.248,-4.453,-4.511,
--4.565,-4.840,-5.423,-6.173,-6.854,-7.379,-7.911,-8.656,-9.512,-9.938,-9.266,-7.295,-4.682,-2.713,-2.534,-4.365,
--7.319,-9.971,-11.272,-11.108,-10.161,-9.257,-8.785,-8.594,-8.361,-7.991,-7.708,-7.783,-8.228,-8.745,-8.968,-8.757,
--8.291,-7.885,-7.742,-7.833,-7.978,-8.019,-7.922,-7.749,-7.577,-7.438,-7.332,-7.266,-7.254,-7.297,-7.363,-7.395,
--7.355,-7.244,-7.098,-6.955,-6.837,-6.749,-6.690,-6.655,-6.632,-6.602,-6.543,-6.445,-6.324,-6.213,-6.142,-6.122,
--6.133,-6.133,-6.084,-5.969,-5.805,-5.628,-5.471,-5.347,-5.242,-5.137,-5.026,-4.916,-4.818,-4.731,-4.645,-4.559,
--4.491,-4.465,-4.487,-4.528,-4.541,-4.494,-4.392,-4.277,-4.189,-4.138,-4.099,-4.042,-3.955,-3.849,-3.744,-3.644,
--3.541,-3.428,-3.315,-3.225,-3.177,-3.170,-3.183,-3.189,-3.169,-3.122,-3.061,-3.005,-2.974,-2.983,-3.038,-3.134,
--3.254,-3.380,-3.496,-3.594,-3.669,-3.719,-3.747,-3.762,-3.777,-3.802,-3.840,-3.886,-3.937,-3.998,-4.080,-4.190,
--4.319,-4.445,-4.552,-4.639,-4.727,-4.841,-4.995,-5.177,-5.362,-5.532,-5.688,-5.848,-6.026,-6.224,-6.432,-6.637,
--6.839,-7.044,-7.266,-7.504,-7.752,-7.995,-8.228,-8.450,-8.663,-8.864,-9.048,-9.215,-9.376,-9.552,-9.760,-10.001,
--10.259,-10.518,-10.768,-11.016,-11.276,-11.551,-11.838,-12.125,-12.407,-12.687,-12.968,-13.247,-13.517,-13.777,-14.036,-14.305,
--14.583,-14.851,-15.084,-15.277,-15.450,-15.639,-15.865,-16.115,-16.357,-16.567,-16.751,-16.937,-17.150,-17.386,-17.622,-17.840,
--18.045,-18.259,-18.504,-18.784,-19.083,-19.382,-19.670,-19.947,-20.216,-20.483,-20.755,-21.040,-21.339,-21.641,-21.935,-22.219,
--22.511,-22.832,-23.182,-23.528,-23.824,-24.050,-24.232,-24.418,-24.646,-24.908,-25.169,-25.404,-25.614,-25.824,-26.045,-26.259,
--26.439,-26.582,-26.720,-26.890,-27.098,-27.309,-27.480,-27.597,-27.687,-27.789,-27.920,-28.058,-28.171,-28.238,-28.258,-28.240,
--28.191,-28.131,-28.094,-28.116,-28.189,-28.247,-28.199,-27.992,-27.665,-27.324,-27.064,-26.907,-26.811,-26.734,-26.683,-26.694,
--26.773,-26.866,-26.898,-26.852,-26.787,-26.782,-26.845,-26.902,-26.880,-26.810,-26.830,-27.062,-27.478,-27.889,-28.071,-27.932,
--27.537,-26.984,-26.262,-25.266,-23.972,-22.600,-21.571,-21.223,-21.530,-22.063,-22.280,-21.918,-21.162,-20.458,-20.138,-20.177,
--20.270,-20.133,-19.736,-19.288,-19.002,-18.883,-18.741,-18.373,-17.762,-17.090,-16.589,-16.365,-16.347,-16.377,-16.335,-16.196,
--16.000,-15.787,-15.577,-15.372,-15.174,-14.970,-14.729,-14.427,-14.075,-13.737,-13.475,-13.283,-13.066,-12.706,-12.165,-11.531,
--10.962,-10.561,-10.296,-10.035,-9.670,-9.223,-8.833,-8.635,-8.633,-8.677,-8.570,-8.236,-7.822,-7.653,-8.057,-9.160,
--10.756,-12.352,-13.369,-13.421,-12.539,-11.192,-10.086,-9.816,-10.562,-12.010,-13.553,-14.634,-15.029,-14.896,-14.588,-14.388,
--14.360,-14.400,-14.403,-14.388,-14.494,-14.846,-15.444,-16.149,-16.796,-17.313,-17.762,-18.274,-18.927,-19.689,-20.446,-21.082,
--21.553,-21.889,-22.150,-22.384,-22.616,-22.859,-23.134,-23.453,-23.806,-24.148,-24.426,-24.611,-24.713,-24.770,-24.824,-24.904,
--25.031,-25.227,-25.513,-25.886,-26.309,-26.714,-27.042,-27.277,-27.451,-27.608,-27.750,-27.832,-27.799,-27.658,-27.519,-27.564,
--27.941,-28.656,-29.543,-30.343,-30.850,-31.035,-31.052,-31.134,-31.448,-32.009,-32.707,-33.417,-34.079,-34.707,-35.319,-35.881,
--36.310,-36.543,-36.598,-36.574,-36.573,-36.633,-36.715,-36.762,-36.750,-36.695,-36.602,-36.427,-36.105,-35.621,-35.068,-34.614,
--34.408,-34.493,-34.793,-35.186,-35.580,-35.940,-36.252,-36.486,-36.607,-36.618,-36.590,-36.628,-36.792,-37.048,-37.284,-37.391,
--37.336,-37.174,-37.003,-36.886,-36.828,-36.783,-36.700,-36.557,-36.364,-36.160,-35.978,-35.828,-35.688,-35.518,-35.293,-35.036,
--34.803,-34.648,-34.566,-34.489,-34.327,-34.030,-33.604,-33.081,-32.465,-31.739,-30.923,-30.127,-29.534,-29.278,-29.326,-29.467,
--29.449,-29.154,-28.684,-28.262,-28.039,-27.975,-27.880,-27.602,-27.161,-26.739,-26.524,-26.549,-26.672,-26.692,-26.511,-26.190,
--25.876,-25.664,-25.531,-25.368,-25.085,-24.681,-24.239,-23.863,-23.609,-23.464,-23.370,-23.263,-23.107,-22.909,-22.709,-22.559,
--22.488,-22.481,-22.478,-22.412,-22.246,-21.987,-21.669,-21.314,-20.922,-20.484,-20.023,-19.595,-19.261,-19.041,-18.892,-18.734,
--18.495,-18.147,-17.704,-17.191,-16.625,-16.011,-15.356,-14.669,-13.962,-13.232,-12.473,-11.676,-10.842,-9.978,-9.092,-8.206,
--7.362,-6.624,-6.047,-5.648,-5.386,-5.186,-4.973,-4.685,-4.249,-3.570,-2.554,-1.188,.402,1.978,3.307,4.294,
-5.030,5.712,6.506,7.462,8.529,9.636,10.739,11.815,12.824,13.712,14.470,15.175,15.949,16.846,17.770,18.508,
-18.888,18.923,18.830,18.887,19.256,19.901,20.667,21.422,22.139,22.872,23.659,24.463,25.201,25.803,26.268,26.641,
-26.977,27.318,27.690,28.120,28.624,29.192,29.793,30.398,31.004,31.619,32.234,32.809,33.318,33.801,34.369,35.131,
-36.086,37.090,37.938,38.509,38.862,39.179,39.625,40.228,40.889,41.501,42.056,42.644,43.348,44.143,44.901,45.494,
-45.917,46.294,46.790,47.472,48.263,48.998,49.551,49.919,50.214,50.587,51.126,51.819,52.564,53.235,53.755,54.134,
-54.465,54.868,55.420,56.104,56.829,57.492,58.042,58.511,58.968,59.456,59.964,60.439,60.848,61.205,61.570,62.000,
-62.512,63.068,63.607,64.066,64.406,64.607,64.675,64.639,64.550,64.460,64.407,64.403,64.437,64.495,64.563,64.624,
-64.650,64.613,64.500,64.331,64.150,63.993,63.863,63.736,63.590,63.432,63.291,63.182,63.072,62.893,62.592,62.187,
-61.765,61.428,61.217,61.086,60.927,60.652,60.247,59.773,59.315,58.925,58.605,58.329,58.094,57.934,57.908,58.050,
-58.329,58.647,58.875,58.921,58.764,58.450,58.043,57.576,57.042,56.445,55.846,55.376,55.172,55.280,55.606,55.952,
-56.124,56.019,55.657,55.119,54.495,53.847,53.230,52.690,52.237,51.815,51.317,50.664,49.886,49.133,48.570,48.252,
-48.064,47.807,47.342,46.692,46.006,45.441,45.060,44.817,44.624,44.419,44.184,43.922,43.655,43.436,43.353,43.478,
-43.780,44.111,44.282,44.206,43.991,43.877,44.075,44.621,45.367,46.106,46.711,47.177,47.551,47.841,47.992,47.955,
-47.751,47.479,47.256,47.148,47.164,47.293,47.742,47.866,48.081,48.423,48.872,49.364,49.833,50.252,50.638,51.024,
-51.446,51.914,52.397,52.800,52.978,52.812,52.303,51.630,51.074,50.860,51.015,51.375,51.730,51.998,52.265,52.654,
-53.139,53.471,53.301,52.406,50.855,48.980,47.198,45.814,44.928,44.467,44.268,44.134,43.884,43.391,42.645,41.774,
-40.996,40.499,40.325,40.356,40.404,40.333,40.146,39.965,39.951,40.208,40.741,41.445,42.151,42.697,43.014,43.165,
-43.315,43.618,44.113,44.689,45.178,45.486,45.665,45.854,46.146,46.505,46.801,46.930,46.904,46.826,46.773,46.711,
-46.519,46.112,45.537,44.960,44.535,44.293,44.128,43.905,43.591,43.288,43.145,43.205,43.337,43.301,42.905,42.146,
-41.218,40.395,39.857,39.598,39.455,39.235,38.841,38.315,37.767,37.279,36.841,36.379,35.830,35.214,34.626,34.185,
-33.955,33.919,34.008,34.142,34.266,34.348,34.356,34.245,33.977,33.553,33.035,32.537,32.171,31.991,31.947,31.897,
-31.668,31.137,30.291,29.228,28.088,26.990,25.999,25.158,24.543,24.268,24.405,24.874,25.383,25.520,24.960,23.666,
-21.934,20.248,19.016,18.381,18.212,18.240,18.239,18.101,17.806,17.355,16.748,16.029,15.317,14.774,14.520,14.556,
-14.777,15.054,15.321,15.585,15.876,16.183,16.447,16.596,16.596,16.458,16.211,15.876,15.459,14.953,14.333,13.554,
-12.560,11.332,9.929,8.487,7.149,5.982,4.942,3.931,2.888,1.839,.862,.005,-.764,-1.528,-2.338,-3.157,
--3.890,-4.462,-4.894,-5.295,-5.785,-6.417,-7.144,-7.859,-8.473,-8.961,-9.373,-9.783,-10.244,-10.755,-11.268,-11.716,
--12.057,-12.289,-12.454,-12.613,-12.826,-13.138,-13.566,-14.096,-14.681,-15.252,-15.744,-16.134,-16.448,-16.744,-17.078,-17.473,
--17.923,-18.410,-18.929,-19.479,-20.053,-20.630,-21.185,-21.707,-22.203,-22.688,-23.176,-23.675,-24.207,-24.795,-25.443,-26.114,
--26.734,-27.237,-27.619,-27.939,-28.270,-28.642,-29.016,-29.334,-29.587,-29.836,-30.165,-30.605,-31.101,-31.561,-31.930,-32.243,
--32.588,-33.028,-33.550,-34.071,-34.514,-34.859,-35.151,-35.455,-35.808,-36.204,-36.615,-37.021,-37.412,-37.773,-38.068,-38.241,
--38.256,-38.128,-37.944,-37.834,-37.921,-38.261,-38.809,-39.440,-40.007,-40.412,-40.645,-40.782,-40.925,-41.153,-41.487,-41.902,
--42.353,-42.802,-43.216,-43.561,-43.807,-43.942,-43.987,-43.993,-44.019,-44.097,-44.227,-44.398,-44.624,-44.945,-45.399,-45.971,
--46.570,-47.072,-47.398,-47.570,-47.687,-47.834,-48.011,-48.131,-48.112,-47.961,-47.767,-47.610,-47.451,-47.152,-46.605,-45.863,
--45.143,-44.655,-44.419,-44.243,-43.910,-43.423,-43.070,-43.218,-44.010,-45.235,-46.506,-47.603,-48.647,-49.954,-51.664,-53.511,
--54.969,-55.671,-55.748,-55.779,-56.370,-57.715,-59.488,-61.137,-62.312,-63.075,-63.744,-64.574,-65.552,-66.461,-67.112,-67.505,
--67.788,-68.087,-68.387,-68.546,-68.424,-67.981,-67.286,-66.447,-65.553,-64.661,-63.816,-63.051,-62.371,-61.757,-61.192,-60.689,
--60.287,-60.010,-59.827,-59.678,-59.534,-59.439,-59.476,-59.686,-60.003,-60.299,-60.477,-60.548,-60.587,-60.612,-60.496,-60.017,
--59.023,-57.600,-56.080,-54.882,-54.272,-54.230,-54.490,-54.727,-54.738,-54.505,-54.137,-53.747,-53.383,-53.028,-52.653,-52.251,
--51.838,-51.426,-51.013,-50.598,-50.202,-49.865,-49.628,-49.498,-49.443,-49.408,-49.333,-49.174,-48.910,-48.551,-48.148,-47.791,
--47.570,-47.518,-47.577,-47.615,-47.495,-47.153,-46.620,-45.990,-45.350,-44.738,-44.154,-43.592,-43.058,-42.555,-42.063,-41.540,
--40.951,-40.299,-39.623,-38.957,-38.304,-37.633,-36.921,-36.187,-35.488,-34.877,-34.365,-33.907,-33.427,-32.856,-32.157,-31.329,
--30.404,-29.438,-28.497,-27.634,-26.859,-26.138,-25.416,-24.654,-23.848,-23.018,-22.176,-21.303,-20.366,-19.347,-18.265,-17.168,
--16.108,-15.119,-14.211,-13.372,-12.580,-11.795,-10.979,-10.105,-9.181,-8.244,-7.333,-6.457,-5.592,-4.710,-3.822,-2.988,
--2.288,-1.762,-1.371,-1.020,-.612,-.116,.426,.935,1.359,1.714,2.064,2.469,2.946,3.473,4.015,4.561,
-5.119,5.691,6.260,6.814,7.369,7.981,8.697,9.508,10.338,11.104,11.784,12.432,13.115,13.835,14.524,15.131,
-15.710,16.393,17.250,18.157,18.826,19.017,18.783,18.504,18.656,19.477,20.795,22.160,23.181,23.766,24.103,24.422,
-24.776,25.023,25.002,24.702,24.288,23.964,23.826,23.839,23.919,24.018,24.146,24.316,24.529,24.797,25.182,25.773,
-26.591,27.512,28.300,28.731,28.722,28.362,27.821,27.252,26.737,26.320,26.046,25.952,26.029,26.202,26.385,26.545,
-26.728,27.006,27.405,27.877,28.352,28.798,29.223,29.620,29.920,30.020,29.884,29.617,29.433,29.507,29.844,30.259,
-30.501,30.413,30.020,29.488,29.001,28.662,28.473,28.374,28.293,28.185,28.046,27.918,27.880,28.006,28.314,28.738,
-29.162,29.481,29.642,29.602,29.261,28.421,26.862,24.463,21.299,17.619,13.722,9.850,6.165,2.815,-.017,-2.136,
--3.426,-3.926,-3.793,-3.194,-2.215,-.861,.859,2.842,4.889,6.775,8.338,9.526,10.370,10.942,11.315,11.554,
-11.697,11.748,11.678,11.461,11.109,10.691,10.298,9.985,9.732,9.461,9.089,8.587,7.989,7.374,6.815,6.355,
-5.993,5.692,5.396,5.060,4.677,4.280,3.921,3.619,3.333,2.988,2.531,1.987,1.450,1.016,.704,.443,
-.129,-.283,-.750,-1.188,-1.555,-1.894,-2.286,-2.751,-3.207,-3.533,-3.685,-3.750,-3.882,-4.150,-4.463,-4.656,
--4.668,-4.644,-4.838,-5.385,-6.164,-6.902,-7.444,-7.911,-8.549,-9.372,-9.942,-9.592,-8.003,-5.656,-3.722,-3.361,
--4.916,-7.642,-10.192,-11.500,-11.386,-10.474,-9.572,-9.081,-8.875,-8.634,-8.261,-7.968,-8.032,-8.486,-9.053,-9.379,
--9.299,-8.938,-8.556,-8.334,-8.274,-8.270,-8.231,-8.148,-8.053,-7.964,-7.876,-7.787,-7.724,-7.718,-7.766,-7.821,
--7.820,-7.735,-7.591,-7.437,-7.311,-7.221,-7.152,-7.092,-7.034,-6.980,-6.929,-6.882,-6.840,-6.801,-6.761,-6.716,
--6.666,-6.614,-6.560,-6.492,-6.391,-6.252,-6.089,-5.933,-5.802,-5.688,-5.568,-5.431,-5.291,-5.183,-5.127,-5.113,
--5.110,-5.095,-5.067,-5.038,-5.012,-4.976,-4.912,-4.824,-4.736,-4.677,-4.649,-4.626,-4.569,-4.464,-4.322,-4.178,
--4.057,-3.962,-3.882,-3.803,-3.723,-3.654,-3.609,-3.594,-3.601,-3.609,-3.598,-3.557,-3.499,-3.457,-3.461,-3.526,
--3.637,-3.763,-3.879,-3.979,-4.071,-4.162,-4.245,-4.308,-4.343,-4.361,-4.384,-4.427,-4.487,-4.552,-4.612,-4.672,
--4.746,-4.843,-4.958,-5.078,-5.195,-5.315,-5.449,-5.607,-5.780,-5.954,-6.118,-6.273,-6.430,-6.601,-6.789,-6.988,
--7.191,-7.396,-7.604,-7.821,-8.044,-8.271,-8.498,-8.723,-8.946,-9.164,-9.369,-9.555,-9.721,-9.883,-10.059,-10.267,
--10.508,-10.769,-11.029,-11.276,-11.516,-11.762,-12.026,-12.306,-12.594,-12.881,-13.165,-13.448,-13.726,-13.998,-14.261,-14.524,
--14.795,-15.075,-15.345,-15.583,-15.782,-15.962,-16.156,-16.387,-16.646,-16.897,-17.114,-17.300,-17.485,-17.694,-17.926,-18.157,
--18.366,-18.556,-18.755,-18.990,-19.265,-19.559,-19.846,-20.115,-20.369,-20.618,-20.873,-21.136,-21.409,-21.693,-21.982,-22.272,
--22.567,-22.881,-23.227,-23.593,-23.943,-24.233,-24.448,-24.618,-24.798,-25.020,-25.277,-25.530,-25.751,-25.948,-26.147,-26.359,
--26.565,-26.737,-26.871,-27.003,-27.174,-27.393,-27.626,-27.824,-27.969,-28.080,-28.188,-28.303,-28.407,-28.483,-28.533,-28.569,
--28.591,-28.580,-28.527,-28.463,-28.446,-28.511,-28.614,-28.652,-28.532,-28.257,-27.923,-27.648,-27.484,-27.397,-27.326,-27.248,
--27.186,-27.167,-27.169,-27.147,-27.091,-27.048,-27.076,-27.168,-27.235,-27.200,-27.096,-27.076,-27.295,-27.746,-28.228,-28.471,
--28.319,-27.805,-27.057,-26.150,-25.070,-23.829,-22.612,-21.748,-21.495,-21.795,-22.256,-22.400,-22.005,-21.257,-20.569,-20.241,
--20.240,-20.272,-20.062,-19.582,-19.040,-18.664,-18.500,-18.399,-18.167,-17.738,-17.221,-16.790,-16.557,-16.512,-16.568,-16.631,
--16.636,-16.547,-16.346,-16.045,-15.691,-15.338,-15.009,-14.675,-14.290,-13.850,-13.411,-13.049,-12.782,-12.541,-12.221,-11.769,
--11.239,-10.749,-10.390,-10.162,-9.990,-9.798,-9.570,-9.354,-9.196,-9.088,-8.961,-8.739,-8.410,-8.073,-7.928,-8.211,
--9.079,-10.490,-12.128,-13.461,-13.949,-13.334,-11.845,-10.167,-9.124,-9.250,-10.500,-12.296,-13.881,-14.747,-14.863,-14.575,
--14.291,-14.193,-14.197,-14.120,-13.918,-13.758,-13.897,-14.473,-15.391,-16.392,-17.242,-17.885,-18.440,-19.067,-19.826,-20.634,
--21.352,-21.889,-22.262,-22.551,-22.821,-23.085,-23.328,-23.553,-23.797,-24.097,-24.442,-24.769,-25.000,-25.105,-25.115,-25.100,
--25.119,-25.199,-25.345,-25.567,-25.875,-26.260,-26.675,-27.057,-27.365,-27.606,-27.819,-28.013,-28.143,-28.141,-28.002,-27.841,
--27.861,-28.223,-28.921,-29.756,-30.443,-30.806,-30.890,-30.934,-31.195,-31.783,-32.598,-33.433,-34.131,-34.686,-35.195,-35.736,
--36.279,-36.699,-36.894,-36.867,-36.728,-36.596,-36.519,-36.461,-36.372,-36.249,-36.128,-36.020,-35.866,-35.571,-35.101,-34.551,
--34.116,-33.965,-34.137,-34.529,-34.979,-35.368,-35.665,-35.886,-36.043,-36.125,-36.140,-36.150,-36.244,-36.472,-36.793,-37.087,
--37.229,-37.177,-36.994,-36.804,-36.707,-36.722,-36.793,-36.827,-36.762,-36.600,-36.395,-36.213,-36.081,-35.970,-35.825,-35.613,
--35.366,-35.152,-35.015,-34.925,-34.780,-34.489,-34.030,-33.458,-32.837,-32.175,-31.436,-30.620,-29.837,-29.269,-29.045,-29.114,
--29.252,-29.213,-28.906,-28.455,-28.081,-27.912,-27.888,-27.832,-27.622,-27.303,-27.036,-26.945,-26.999,-27.038,-26.907,-26.587,
--26.193,-25.871,-25.676,-25.539,-25.341,-25.011,-24.574,-24.122,-23.748,-23.497,-23.361,-23.303,-23.278,-23.241,-23.166,-23.057,
--22.949,-22.884,-22.875,-22.892,-22.873,-22.771,-22.576,-22.306,-21.977,-21.585,-21.122,-20.615,-20.130,-19.741,-19.479,-19.303,
--19.128,-18.872,-18.498,-18.010,-17.430,-16.776,-16.068,-15.337,-14.616,-13.922,-13.229,-12.492,-11.677,-10.796,-9.912,-9.098,
--8.405,-7.850,-7.426,-7.124,-6.930,-6.815,-6.732,-6.615,-6.387,-5.960,-5.248,-4.194,-2.819,-1.247,.330,1.745,
-2.940,3.982,4.996,6.062,7.177,8.289,9.357,10.382,11.372,12.306,13.146,13.898,14.651,15.521,16.527,17.518,
-18.236,18.497,18.346,18.062,17.984,18.303,18.973,19.799,20.610,21.360,22.107,22.904,23.725,24.482,25.098,25.569,
-25.950,26.311,26.699,27.131,27.612,28.140,28.703,29.288,29.892,30.526,31.200,31.888,32.524,33.057,33.513,34.004,
-34.657,35.509,36.453,37.309,37.948,38.393,38.782,39.259,39.868,40.546,41.213,41.853,42.515,43.240,44.001,44.709,
-45.293,45.772,46.250,46.831,47.537,48.287,48.960,49.480,49.867,50.218,50.642,51.194,51.851,52.527,53.119,53.568,
-53.900,54.218,54.649,55.258,56.008,56.781,57.459,58.002,58.460,58.919,59.421,59.939,60.407,60.791,61.121,61.472,
-61.902,62.415,62.961,63.471,63.894,64.203,64.389,64.455,64.420,64.327,64.228,64.171,64.174,64.227,64.303,64.372,
-64.408,64.390,64.307,64.164,63.982,63.786,63.588,63.384,63.179,63.004,62.913,62.944,63.063,63.158,63.087,62.768,
-62.243,61.665,61.205,60.948,60.842,60.741,60.502,60.076,59.528,58.982,58.539,58.222,57.985,57.781,57.614,57.553,
-57.675,57.982,58.361,58.612,58.556,58.136,57.457,56.713,56.080,55.628,55.328,55.123,54.995,54.962,55.030,55.139,
-55.182,55.071,54.785,54.368,53.870,53.306,52.670,51.975,51.265,50.581,49.904,49.174,48.380,47.643,47.193,47.216,
-47.680,48.284,48.617,48.399,47.645,46.631,45.687,45.004,44.573,44.260,43.944,43.591,43.249,43.013,42.982,43.225,
-43.729,44.360,44.884,45.083,44.903,44.513,44.223,44.297,44.795,45.576,46.418,47.161,47.757,48.212,48.507,48.594,
-48.461,48.177,47.880,47.685,47.627,47.663,47.742,48.332,48.410,48.521,48.729,49.055,49.464,49.894,50.304,50.689,
-51.075,51.482,51.899,52.264,52.479,52.441,52.116,51.581,51.025,50.653,50.575,50.742,50.999,51.214,51.382,51.610,
-51.994,52.486,52.874,52.892,52.380,51.366,50.034,48.617,47.313,46.262,45.560,45.240,45.231,45.345,45.336,45.032,
-44.424,43.663,42.936,42.349,41.874,41.418,40.920,40.411,39.998,39.801,39.894,40.277,40.872,41.537,42.111,42.493,
-42.697,42.853,43.110,43.520,43.997,44.396,44.652,44.850,45.156,45.662,46.290,46.838,47.138,47.181,47.098,47.020,
-46.956,46.798,46.446,45.929,45.399,45.008,44.780,44.595,44.314,43.920,43.546,43.366,43.428,43.574,43.530,43.086,
-42.248,41.245,40.385,39.879,39.733,39.778,39.792,39.632,39.281,38.816,38.325,37.844,37.354,36.821,36.250,35.702,
-35.270,35.022,34.955,34.995,35.034,34.992,34.846,34.619,34.340,34.012,33.626,33.198,32.799,32.520,32.403,32.374,
-32.253,31.846,31.056,29.936,28.647,27.352,26.134,25.008,23.996,23.201,22.773,22.792,23.137,23.471,23.377,22.593,
-21.176,19.499,18.053,17.191,16.968,17.167,17.464,17.604,17.471,17.059,16.409,15.582,14.692,13.915,13.449,13.413,
-13.795,14.471,15.298,16.179,17.067,17.905,18.586,18.989,19.054,18.831,18.453,18.043,17.654,17.261,16.803,16.219,
-15.449,14.428,13.115,11.542,9.847,8.225,6.824,5.660,4.628,3.591,2.493,1.382,.343,-.579,-1.421,-2.248,
--3.082,-3.877,-4.561,-5.109,-5.579,-6.068,-6.646,-7.298,-7.941,-8.489,-8.916,-9.272,-9.639,-10.068,-10.546,-11.007,
--11.390,-11.680,-11.904,-12.105,-12.306,-12.518,-12.757,-13.066,-13.492,-14.044,-14.666,-15.255,-15.723,-16.056,-16.311,-16.574,
--16.906,-17.316,-17.786,-18.297,-18.844,-19.430,-20.047,-20.677,-21.304,-21.914,-22.501,-23.064,-23.610,-24.165,-24.759,-25.400,
--26.051,-26.643,-27.125,-27.507,-27.854,-28.226,-28.627,-29.005,-29.307,-29.552,-29.823,-30.206,-30.711,-31.254,-31.727,-32.086,
--32.382,-32.712,-33.135,-33.627,-34.115,-34.546,-34.926,-35.303,-35.712,-36.144,-36.557,-36.922,-37.251,-37.578,-37.922,-38.247,
--38.479,-38.543,-38.421,-38.169,-37.903,-37.747,-37.785,-38.031,-38.442,-38.940,-39.455,-39.939,-40.372,-40.747,-41.076,-41.378,
--41.683,-42.020,-42.402,-42.820,-43.239,-43.616,-43.912,-44.107,-44.201,-44.218,-44.202,-44.210,-44.298,-44.504,-44.839,-45.277,
--45.752,-46.177,-46.478,-46.632,-46.688,-46.736,-46.838,-46.981,-47.086,-47.088,-47.000,-46.913,-46.901,-46.927,-46.861,-46.609,
--46.243,-45.990,-46.058,-46.438,-46.874,-47.068,-46.953,-46.781,-46.920,-47.526,-48.389,-49.110,-49.469,-49.642,-50.040,-50.912,
--52.064,-52.976,-53.244,-52.968,-52.724,-53.144,-54.436,-56.256,-58.000,-59.271,-60.116,-60.875,-61.840,-63.017,-64.188,-65.152,
--65.903,-66.589,-67.319,-68.008,-68.402,-68.261,-67.530,-66.390,-65.156,-64.122,-63.435,-63.055,-62.814,-62.517,-62.054,-61.457,
--60.861,-60.396,-60.082,-59.818,-59.486,-59.079,-58.745,-58.683,-58.974,-59.500,-60.014,-60.329,-60.449,-60.538,-60.751,-61.058,
--61.234,-61.006,-60.260,-59.134,-57.940,-56.981,-56.397,-56.125,-55.995,-55.846,-55.601,-55.265,-54.874,-54.463,-54.051,-53.648,
--53.264,-52.901,-52.546,-52.180,-51.797,-51.412,-51.057,-50.762,-50.548,-50.415,-50.350,-50.314,-50.237,-50.030,-49.633,-49.063,
--48.437,-47.913,-47.600,-47.481,-47.425,-47.270,-46.929,-46.425,-45.846,-45.266,-44.700,-44.132,-43.556,-42.999,-42.490,-42.019,
--41.532,-40.974,-40.334,-39.651,-38.974,-38.317,-37.664,-36.996,-36.335,-35.726,-35.199,-34.735,-34.266,-33.721,-33.060,-32.279,
--31.395,-30.438,-29.445,-28.475,-27.583,-26.793,-26.079,-25.383,-24.654,-23.882,-23.083,-22.269,-21.421,-20.501,-19.483,-18.380,
--17.239,-16.111,-15.034,-14.028,-13.098,-12.239,-11.417,-10.581,-9.682,-8.709,-7.703,-6.731,-5.845,-5.052,-4.325,-3.633,
--2.974,-2.375,-1.858,-1.416,-1.007,-.579,-.101,.415,.929,1.399,1.810,2.185,2.568,3.001,3.508,4.086,
-4.712,5.346,5.950,6.507,7.035,7.597,8.263,9.062,9.946,10.814,11.590,12.284,12.974,13.724,14.506,15.220,
-15.805,16.335,16.983,17.843,18.788,19.502,19.722,19.493,19.211,19.369,20.205,21.528,22.874,23.847,24.367,24.631,
-24.866,25.118,25.254,25.141,24.807,24.430,24.192,24.145,24.220,24.324,24.426,24.538,24.662,24.773,24.875,25.061,
-25.460,26.117,26.901,27.556,27.859,27.773,27.445,27.076,26.785,26.572,26.396,26.262,26.225,26.319,26.506,26.696,
-26.840,26.978,27.202,27.568,28.048,28.554,29.019,29.431,29.800,30.103,30.279,30.294,30.206,30.160,30.290,30.611,
-30.995,31.253,31.253,30.992,30.570,30.113,29.719,29.441,29.300,29.282,29.334,29.381,29.382,29.374,29.458,29.720,
-30.135,30.552,30.761,30.579,29.890,28.605,26.612,23.809,20.204,16.007,11.602,7.414,3.748,.739,-1.583,-3.183,
--3.988,-3.952,-3.146,-1.778,-.109,1.654,3.402,5.091,6.672,8.071,9.221,10.108,10.772,11.270,11.636,11.874,
-11.979,11.958,11.823,11.581,11.234,10.806,10.357,9.955,9.635,9.364,9.061,8.659,8.152,7.587,7.033,6.525,
-6.063,5.633,5.231,4.868,4.551,4.262,3.972,3.654,3.302,2.920,2.509,2.058,1.562,1.044,.552,.139,
--.185,-.456,-.734,-1.058,-1.425,-1.809,-2.194,-2.591,-3.003,-3.397,-3.710,-3.904,-4.020,-4.157,-4.378,-4.636,
--4.815,-4.854,-4.852,-5.021,-5.503,-6.221,-6.935,-7.478,-7.934,-8.560,-9.454,-10.292,-10.447,-9.482,-7.640,-5.867,
--5.243,-6.235,-8.346,-10.455,-11.586,-11.495,-10.662,-9.788,-9.257,-8.998,-8.757,-8.445,-8.230,-8.337,-8.791,-9.373,
--9.790,-9.893,-9.733,-9.457,-9.172,-8.908,-8.668,-8.485,-8.393,-8.383,-8.387,-8.340,-8.238,-8.148,-8.131,-8.185,
--8.239,-8.219,-8.103,-7.936,-7.781,-7.674,-7.614,-7.578,-7.543,-7.489,-7.410,-7.314,-7.234,-7.202,-7.225,-7.269,
--7.281,-7.228,-7.126,-7.019,-6.932,-6.853,-6.748,-6.602,-6.434,-6.279,-6.147,-6.018,-5.868,-5.707,-5.577,-5.521,
--5.538,-5.585,-5.603,-5.564,-5.482,-5.390,-5.312,-5.254,-5.212,-5.184,-5.171,-5.165,-5.141,-5.072,-4.945,-4.776,
--4.598,-4.445,-4.332,-4.254,-4.196,-4.142,-4.094,-4.060,-4.057,-4.086,-4.127,-4.149,-4.129,-4.076,-4.025,-4.019,
--4.074,-4.169,-4.268,-4.344,-4.407,-4.487,-4.602,-4.740,-4.865,-4.948,-4.989,-5.014,-5.052,-5.110,-5.175,-5.228,
--5.269,-5.313,-5.380,-5.478,-5.600,-5.737,-5.883,-6.043,-6.218,-6.403,-6.587,-6.760,-6.919,-7.072,-7.228,-7.391,
--7.565,-7.746,-7.934,-8.126,-8.321,-8.519,-8.724,-8.939,-9.164,-9.396,-9.628,-9.854,-10.070,-10.279,-10.488,-10.706,
--10.936,-11.174,-11.408,-11.626,-11.827,-12.024,-12.236,-12.477,-12.747,-13.029,-13.307,-13.578,-13.849,-14.130,-14.420,-14.710,
--14.994,-15.272,-15.549,-15.822,-16.078,-16.309,-16.519,-16.730,-16.959,-17.203,-17.444,-17.661,-17.860,-18.061,-18.285,-18.525,
--18.755,-18.951,-19.122,-19.301,-19.520,-19.785,-20.071,-20.345,-20.591,-20.816,-21.034,-21.256,-21.487,-21.727,-21.979,-22.248,
--22.536,-22.846,-23.182,-23.544,-23.917,-24.267,-24.561,-24.789,-24.979,-25.177,-25.410,-25.669,-25.916,-26.128,-26.313,-26.497,
--26.697,-26.896,-27.068,-27.211,-27.354,-27.532,-27.750,-27.976,-28.171,-28.326,-28.460,-28.594,-28.718,-28.805,-28.843,-28.856,
--28.884,-28.931,-28.958,-28.921,-28.829,-28.755,-28.771,-28.876,-28.973,-28.946,-28.755,-28.470,-28.214,-28.063,-28.000,-27.952,
--27.873,-27.769,-27.672,-27.588,-27.497,-27.398,-27.332,-27.348,-27.436,-27.510,-27.486,-27.384,-27.349,-27.542,-27.982,-28.488,
--28.781,-28.669,-28.146,-27.332,-26.342,-25.220,-24.013,-22.881,-22.089,-21.836,-22.059,-22.412,-22.478,-22.059,-21.311,-20.598,
--20.195,-20.089,-20.037,-19.791,-19.307,-18.745,-18.309,-18.081,-17.978,-17.859,-17.642,-17.349,-17.064,-16.859,-16.764,-16.775,
--16.855,-16.941,-16.943,-16.790,-16.472,-16.053,-15.623,-15.224,-14.823,-14.353,-13.792,-13.196,-12.666,-12.262,-11.969,-11.714,
--11.439,-11.141,-10.865,-10.655,-10.518,-10.428,-10.346,-10.240,-10.079,-9.838,-9.508,-9.111,-8.704,-8.344,-8.070,-7.930,
--8.020,-8.497,-9.484,-10.917,-12.434,-13.463,-13.503,-12.467,-10.831,-9.436,-9.040,-9.882,-11.561,-13.300,-14.434,-14.763,
--14.563,-14.285,-14.186,-14.197,-14.072,-13.691,-13.227,-13.052,-13.467,-14.469,-15.759,-16.957,-17.855,-18.507,-19.122,-19.860,
--20.713,-21.546,-22.232,-22.748,-23.154,-23.511,-23.822,-24.051,-24.200,-24.334,-24.538,-24.833,-25.151,-25.383,-25.471,-25.456,
--25.434,-25.478,-25.587,-25.719,-25.853,-26.022,-26.275,-26.617,-26.993,-27.330,-27.602,-27.845,-28.100,-28.349,-28.515,-28.538,
--28.464,-28.455,-28.677,-29.172,-29.797,-30.321,-30.599,-30.691,-30.827,-31.233,-31.967,-32.881,-33.744,-34.416,-34.927,-35.408,
--35.943,-36.480,-36.870,-36.999,-36.884,-36.660,-36.465,-36.348,-36.264,-36.150,-35.999,-35.851,-35.719,-35.539,-35.213,-34.713,
--34.149,-33.733,-33.651,-33.934,-34.446,-34.979,-35.374,-35.592,-35.681,-35.708,-35.721,-35.751,-35.836,-36.014,-36.288,-36.597,
--36.837,-36.916,-36.818,-36.621,-36.452,-36.413,-36.527,-36.727,-36.899,-36.955,-36.879,-36.728,-36.584,-36.485,-36.403,-36.273,
--36.064,-35.811,-35.589,-35.435,-35.297,-35.062,-34.642,-34.044,-33.350,-32.636,-31.909,-31.134,-30.328,-29.621,-29.190,-29.118,
--29.287,-29.429,-29.309,-28.899,-28.385,-28.008,-27.874,-27.890,-27.873,-27.720,-27.485,-27.297,-27.222,-27.188,-27.061,-26.771,
--26.381,-26.028,-25.800,-25.662,-25.497,-25.213,-24.815,-24.387,-24.019,-23.745,-23.545,-23.397,-23.299,-23.262,-23.273,-23.292,
--23.280,-23.235,-23.190,-23.174,-23.179,-23.157,-23.060,-22.870,-22.599,-22.263,-21.856,-21.370,-20.827,-20.291,-19.847,-19.535,
--19.324,-19.125,-18.843,-18.420,-17.843,-17.129,-16.311,-15.446,-14.617,-13.907,-13.351,-12.903,-12.463,-11.940,-11.320,-10.676,
--10.103,-9.657,-9.318,-9.026,-8.736,-8.448,-8.184,-7.955,-7.726,-7.422,-6.956,-6.262,-5.312,-4.137,-2.812,-1.433,
--.073,1.253,2.574,3.924,5.290,6.611,7.826,8.915,9.909,10.844,11.722,12.531,13.295,14.097,15.029,16.072,
-17.050,17.704,17.877,17.649,17.323,17.240,17.573,18.251,19.063,19.837,20.540,21.247,22.023,22.842,23.612,24.253,
-24.757,25.184,25.599,26.043,26.522,27.035,27.580,28.154,28.746,29.352,29.989,30.674,31.399,32.108,32.731,33.243,
-33.701,34.212,34.852,35.601,36.363,37.044,37.623,38.160,38.737,39.392,40.104,40.835,41.567,42.306,43.050,43.768,
-44.420,44.995,45.537,46.112,46.760,47.458,48.144,48.761,49.295,49.777,50.252,50.757,51.303,51.875,52.438,52.944,
-53.365,53.723,54.093,54.568,55.196,55.935,56.679,57.329,57.863,58.336,58.822,59.345,59.862,60.311,60.676,61.006,
-61.375,61.824,62.330,62.834,63.279,63.643,63.922,64.112,64.200,64.182,64.089,63.980,63.916,63.931,64.012,64.116,
-64.190,64.199,64.129,63.994,63.824,63.648,63.476,63.294,63.081,62.848,62.649,62.566,62.647,62.850,63.034,63.030,
-62.736,62.193,61.561,61.034,60.721,60.588,60.486,60.252,59.815,59.235,58.661,58.236,58.007,57.917,57.868,57.807,
-57.774,57.855,58.080,58.340,58.419,58.112,57.379,56.392,55.454,54.824,54.587,54.646,54.823,54.979,55.053,55.032,
-54.891,54.591,54.123,53.536,52.908,52.284,51.648,50.953,50.199,49.445,48.762,48.155,47.569,46.989,46.537,46.458,
-46.948,47.954,49.119,49.951,50.106,49.577,48.655,47.707,46.952,46.384,45.880,45.349,44.818,44.415,44.285,44.514,
-45.087,45.870,46.620,47.057,46.990,46.443,45.680,45.076,44.923,45.281,45.989,46.804,47.547,48.151,48.607,48.892,
-48.965,48.822,48.547,48.282,48.142,48.150,48.240,48.332,48.706,48.815,48.903,49.018,49.203,49.470,49.803,50.175,
-50.571,50.984,51.394,51.751,51.977,51.995,51.778,51.377,50.915,50.534,50.327,50.297,50.381,50.504,50.643,50.826,
-51.084,51.392,51.654,51.745,51.578,51.137,50.458,49.587,48.571,47.493,46.508,45.812,45.549,45.705,46.079,46.386,
-46.414,46.127,45.642,45.108,44.595,44.076,43.490,42.823,42.135,41.521,41.061,40.805,40.782,40.989,41.371,41.816,
-42.194,42.440,42.597,42.774,43.049,43.397,43.727,43.984,44.225,44.578,45.118,45.769,46.350,46.702,46.813,46.809,
-46.822,46.875,46.872,46.706,46.377,45.997,45.690,45.478,45.268,44.947,44.506,44.068,43.787,43.714,43.736,43.638,
-43.254,42.576,41.757,41.012,40.494,40.229,40.133,40.077,39.958,39.727,39.390,38.986,38.556,38.127,37.707,37.292,
-36.894,36.545,36.287,36.133,36.039,35.922,35.707,35.377,34.973,34.550,34.128,33.694,33.248,32.843,32.565,32.438,
-32.364,32.134,31.552,30.567,29.301,27.969,26.726,25.594,24.510,23.449,22.502,21.831,21.533,21.517,21.505,21.184,
-20.391,19.229,18.015,17.104,16.699,16.761,17.068,17.354,17.437,17.250,16.801,16.120,15.254,14.304,13.442,12.865,
-12.709,12.998,13.664,14.626,15.834,17.235,18.703,20.007,20.900,21.242,21.090,20.650,20.146,19.702,19.316,18.917,
-18.426,17.765,16.835,15.534,13.829,11.833,9.791,7.969,6.502,5.332,4.280,3.190,2.029,.872,-.194,-1.156,
--2.073,-3.004,-3.937,-4.795,-5.499,-6.039,-6.483,-6.920,-7.392,-7.870,-8.296,-8.645,-8.958,-9.303,-9.717,-10.167,
--10.584,-10.919,-11.187,-11.442,-11.722,-12.009,-12.250,-12.427,-12.605,-12.899,-13.392,-14.061,-14.779,-15.400,-15.851,-16.162,
--16.424,-16.716,-17.063,-17.455,-17.881,-18.355,-18.900,-19.524,-20.210,-20.925,-21.635,-22.319,-22.967,-23.587,-24.199,-24.821,
--25.445,-26.036,-26.549,-26.971,-27.341,-27.719,-28.136,-28.555,-28.908,-29.167,-29.392,-29.697,-30.163,-30.762,-31.372,-31.867,
--32.212,-32.479,-32.777,-33.170,-33.639,-34.124,-34.589,-35.043,-35.516,-36.008,-36.478,-36.875,-37.186,-37.450,-37.731,-38.065,
--38.430,-38.753,-38.947,-38.957,-38.778,-38.460,-38.084,-37.741,-37.526,-37.520,-37.772,-38.279,-38.966,-39.707,-40.368,-40.867,
--41.208,-41.464,-41.726,-42.052,-42.449,-42.895,-43.357,-43.792,-44.147,-44.362,-44.410,-44.328,-44.219,-44.196,-44.321,-44.565,
--44.839,-45.043,-45.127,-45.108,-45.057,-45.068,-45.221,-45.537,-45.960,-46.369,-46.653,-46.789,-46.852,-46.946,-47.107,-47.272,
--47.365,-47.413,-47.568,-47.980,-48.622,-49.256,-49.601,-49.579,-49.422,-49.492,-49.969,-50.673,-51.217,-51.350,-51.191,-51.123,
--51.426,-51.987,-52.369,-52.198,-51.518,-50.808,-50.626,-51.193,-52.265,-53.386,-54.268,-54.978,-55.799,-56.935,-58.340,-59.802,
--61.163,-62.446,-63.769,-65.133,-66.301,-66.884,-66.578,-65.384,-63.653,-61.934,-60.724,-60.251,-60.411,-60.850,-61.174,-61.151,
--60.805,-60.342,-59.967,-59.728,-59.501,-59.134,-58.623,-58.148,-57.950,-58.127,-58.535,-58.891,-58.992,-58.877,-58.808,-59.068,
--59.746,-60.656,-61.441,-61.776,-61.526,-60.780,-59.768,-58.729,-57.832,-57.141,-56.642,-56.275,-55.964,-55.645,-55.281,-54.875,
--54.463,-54.090,-53.784,-53.539,-53.319,-53.077,-52.779,-52.414,-52.005,-51.596,-51.245,-50.995,-50.846,-50.726,-50.513,-50.093,
--49.440,-48.653,-47.906,-47.345,-47.001,-46.778,-46.544,-46.217,-45.812,-45.390,-44.979,-44.551,-44.058,-43.493,-42.907,-42.365,
--41.886,-41.426,-40.924,-40.359,-39.754,-39.147,-38.548,-37.940,-37.316,-36.700,-36.130,-35.611,-35.093,-34.504,-33.800,-32.993,
--32.127,-31.234,-30.314,-29.368,-28.427,-27.553,-26.787,-26.114,-25.465,-24.767,-23.995,-23.172,-22.330,-21.468,-20.547,-19.532,
--18.422,-17.253,-16.077,-14.937,-13.863,-12.871,-11.959,-11.096,-10.218,-9.263,-8.217,-7.131,-6.106,-5.237,-4.556,-4.024,
--3.561,-3.096,-2.596,-2.075,-1.565,-1.086,-.633,-.176,.312,.835,1.366,1.868,2.325,2.760,3.223,3.753,
-4.352,4.983,5.592,6.145,6.656,7.179,7.791,8.539,9.415,10.341,11.223,12.011,12.740,13.500,14.343,15.219,
-16.011,16.651,17.218,17.885,18.755,19.700,20.408,20.618,20.379,20.085,20.223,21.022,22.291,23.578,24.509,25.013,
-25.271,25.475,25.639,25.636,25.381,24.964,24.596,24.430,24.454,24.536,24.573,24.571,24.603,24.694,24.803,24.888,
-25.004,25.276,25.775,26.409,26.952,27.205,27.138,26.897,26.666,26.529,26.447,26.357,26.269,26.267,26.414,26.677,
-26.945,27.132,27.259,27.432,27.744,28.195,28.698,29.162,29.552,29.891,30.195,30.449,30.624,30.735,30.853,31.053,
-31.342,31.640,31.832,31.846,31.694,31.440,31.142,30.832,30.541,30.325,30.252,30.341,30.534,30.728,30.852,30.916,
-30.973,31.026,30.959,30.562,29.627,28.021,25.695,22.644,18.909,14.633,10.126,5.840,2.230,-.419,-2.070,-2.859,
--2.953,-2.444,-1.372,.181,2.040,3.970,5.765,7.314,8.598,9.632,10.433,11.026,11.454,11.774,12.021,12.185,
-12.233,12.150,11.959,11.704,11.414,11.083,10.699,10.274,9.848,9.450,9.074,8.678,8.227,7.727,7.216,6.729,
-6.261,5.782,5.284,4.801,4.397,4.105,3.887,3.651,3.316,2.873,2.384,1.924,1.516,1.116,.664,.159,
--.331,-.722,-.989,-1.198,-1.452,-1.802,-2.215,-2.612,-2.951,-3.253,-3.560,-3.873,-4.145,-4.334,-4.461,-4.591,
--4.763,-4.939,-5.060,-5.144,-5.315,-5.702,-6.303,-6.964,-7.532,-8.035,-8.671,-9.568,-10.514,-10.984,-10.514,-9.170,
--7.658,-6.922,-7.485,-9.062,-10.766,-11.736,-11.680,-10.934,-10.076,-9.470,-9.115,-8.841,-8.576,-8.428,-8.547,-8.945,
--9.472,-9.937,-10.227,-10.324,-10.240,-9.976,-9.565,-9.117,-8.786,-8.663,-8.705,-8.767,-8.735,-8.616,-8.512,-8.504,
--8.579,-8.638,-8.599,-8.455,-8.270,-8.114,-8.018,-7.977,-7.974,-7.985,-7.976,-7.911,-7.787,-7.651,-7.583,-7.621,
--7.725,-7.800,-7.770,-7.644,-7.494,-7.383,-7.308,-7.216,-7.067,-6.876,-6.697,-6.567,-6.467,-6.353,-6.205,-6.058,
--5.967,-5.955,-5.989,-6.007,-5.967,-5.877,-5.777,-5.708,-5.681,-5.682,-5.689,-5.686,-5.663,-5.614,-5.530,-5.410,
--5.258,-5.089,-4.924,-4.781,-4.673,-4.602,-4.562,-4.543,-4.545,-4.572,-4.627,-4.693,-4.742,-4.745,-4.706,-4.658,
--4.645,-4.683,-4.753,-4.815,-4.850,-4.876,-4.936,-5.061,-5.238,-5.420,-5.562,-5.650,-5.702,-5.746,-5.795,-5.840,
--5.871,-5.889,-5.914,-5.966,-6.055,-6.172,-6.308,-6.456,-6.620,-6.804,-7.001,-7.201,-7.390,-7.559,-7.711,-7.852,
--7.990,-8.132,-8.282,-8.438,-8.599,-8.766,-8.946,-9.148,-9.378,-9.632,-9.895,-10.154,-10.404,-10.650,-10.901,-11.158,
--11.415,-11.658,-11.875,-12.060,-12.216,-12.357,-12.506,-12.690,-12.920,-13.189,-13.470,-13.737,-13.987,-14.235,-14.507,-14.807,
--15.122,-15.425,-15.707,-15.977,-16.249,-16.528,-16.803,-17.063,-17.306,-17.542,-17.775,-17.999,-18.205,-18.396,-18.591,-18.805,
--19.034,-19.256,-19.450,-19.623,-19.804,-20.024,-20.283,-20.553,-20.801,-21.015,-21.210,-21.406,-21.612,-21.826,-22.043,-22.270,
--22.520,-22.802,-23.114,-23.447,-23.794,-24.142,-24.474,-24.770,-25.024,-25.255,-25.493,-25.758,-26.037,-26.298,-26.513,-26.687,
--26.846,-27.014,-27.189,-27.360,-27.525,-27.699,-27.901,-28.123,-28.333,-28.506,-28.649,-28.790,-28.948,-29.099,-29.197,-29.223,
--29.209,-29.213,-29.258,-29.305,-29.291,-29.199,-29.089,-29.052,-29.118,-29.223,-29.250,-29.138,-28.927,-28.724,-28.606,-28.568,
--28.542,-28.477,-28.377,-28.274,-28.177,-28.065,-27.923,-27.786,-27.715,-27.733,-27.786,-27.791,-27.734,-27.712,-27.865,-28.239,
--28.710,-29.041,-29.030,-28.622,-27.883,-26.911,-25.775,-24.551,-23.402,-22.562,-22.202,-22.269,-22.472,-22.451,-22.023,-21.297,
--20.567,-20.075,-19.848,-19.720,-19.494,-19.105,-18.636,-18.225,-17.952,-17.807,-17.727,-17.652,-17.550,-17.409,-17.240,-17.083,
--16.998,-17.020,-17.112,-17.170,-17.081,-16.806,-16.397,-15.944,-15.495,-15.022,-14.466,-13.811,-13.119,-12.494,-12.015,-11.693,
--11.491,-11.362,-11.278,-11.224,-11.183,-11.141,-11.086,-11.012,-10.896,-10.688,-10.336,-9.835,-9.262,-8.735,-8.342,-8.081,
--7.904,-7.820,-7.977,-8.592,-9.767,-11.293,-12.650,-13.253,-12.816,-11.596,-10.305,-9.715,-10.207,-11.558,-13.114,-14.227,
--14.641,-14.564,-14.412,-14.442,-14.572,-14.510,-14.068,-13.399,-12.935,-13.097,-13.992,-15.345,-16.704,-17.748,-18.460,-19.059,
--19.772,-20.662,-21.615,-22.478,-23.184,-23.761,-24.256,-24.657,-24.917,-25.028,-25.066,-25.149,-25.330,-25.558,-25.726,-25.775,
--25.754,-25.769,-25.877,-26.038,-26.159,-26.200,-26.222,-26.336,-26.595,-26.944,-27.271,-27.516,-27.722,-27.980,-28.324,-28.678,
--28.918,-28.997,-29.003,-29.096,-29.376,-29.787,-30.168,-30.401,-30.527,-30.733,-31.204,-31.976,-32.905,-33.778,-34.472,-35.017,
--35.521,-36.045,-36.520,-36.809,-36.827,-36.628,-36.369,-36.192,-36.129,-36.112,-36.056,-35.939,-35.792,-35.628,-35.394,-35.007,
--34.454,-33.856,-33.434,-33.374,-33.708,-34.292,-34.894,-35.324,-35.515,-35.521,-35.448,-35.400,-35.443,-35.600,-35.852,-36.145,
--36.395,-36.529,-36.516,-36.388,-36.235,-36.159,-36.232,-36.455,-36.758,-37.029,-37.178,-37.182,-37.098,-37.007,-36.949,-36.894,
--36.772,-36.549,-36.264,-35.996,-35.783,-35.571,-35.253,-34.756,-34.098,-33.354,-32.576,-31.754,-30.870,-29.998,-29.326,-29.046,
--29.181,-29.513,-29.701,-29.511,-28.984,-28.385,-27.992,-27.890,-27.949,-27.968,-27.852,-27.660,-27.494,-27.375,-27.212,-26.916,
--26.505,-26.110,-25.859,-25.759,-25.678,-25.468,-25.089,-24.640,-24.262,-24.025,-23.880,-23.731,-23.539,-23.351,-23.247,-23.260,
--23.342,-23.412,-23.426,-23.400,-23.373,-23.354,-23.305,-23.174,-22.941,-22.624,-22.248,-21.821,-21.334,-20.796,-20.257,-19.789,
--19.435,-19.168,-18.905,-18.549,-18.036,-17.348,-16.507,-15.565,-14.615,-13.781,-13.188,-12.889,-12.825,-12.845,-12.795,-12.603,
--12.301,-11.965,-11.634,-11.276,-10.826,-10.262,-9.635,-9.035,-8.525,-8.096,-7.681,-7.205,-6.622,-5.921,-5.104,-4.166,
--3.094,-1.874,-.501,1.007,2.603,4.204,5.718,7.075,8.258,9.299,10.244,11.120,11.945,12.752,13.608,14.561,
-15.565,16.451,17.007,17.133,16.939,16.712,16.741,17.145,17.827,18.581,19.261,19.868,20.494,21.214,22.004,22.772,
-23.436,23.985,24.461,24.914,25.370,25.844,26.352,26.921,27.553,28.218,28.877,29.519,30.173,30.874,31.617,32.345,
-32.986,33.521,33.996,34.494,35.070,35.719,36.394,37.054,37.692,38.330,38.994,39.699,40.445,41.225,42.020,42.795,
-43.511,44.150,44.732,45.304,45.905,46.539,47.180,47.801,48.403,49.007,49.627,50.248,50.838,51.378,51.875,52.349,
-52.806,53.241,53.655,54.084,54.584,55.187,55.865,56.542,57.150,57.676,58.168,58.677,59.206,59.713,60.156,60.540,
-60.922,61.355,61.846,62.343,62.784,63.140,63.423,63.655,63.833,63.928,63.920,63.828,63.715,63.651,63.668,63.754,
-63.855,63.915,63.895,63.793,63.635,63.466,63.323,63.214,63.118,62.998,62.841,62.677,62.567,62.552,62.614,62.664,
-62.591,62.321,61.873,61.352,60.887,60.560,60.357,60.176,59.893,59.449,58.896,58.378,58.045,57.964,58.074,58.241,
-58.353,58.395,58.426,58.483,58.497,58.294,57.725,56.803,55.745,54.869,54.411,54.397,54.662,54.982,55.210,55.298,
-55.243,55.017,54.571,53.897,53.070,52.212,51.405,50.642,49.869,49.078,48.345,47.778,47.417,47.207,47.080,47.070,
-47.332,48.021,49.111,50.338,51.317,51.775,51.699,51.298,50.813,50.358,49.890,49.322,48.652,48.005,47.564,47.473,
-47.762,48.338,49.002,49.491,49.560,49.089,48.168,47.092,46.230,45.835,45.938,46.376,46.928,47.452,47.914,48.325,
-48.663,48.864,48.879,48.740,48.555,48.443,48.459,48.571,48.706,48.805,48.942,49.027,49.061,49.094,49.193,49.401,
-49.719,50.118,50.552,50.964,51.279,51.421,51.347,51.090,50.752,50.457,50.273,50.186,50.139,50.106,50.126,50.263,
-50.520,50.789,50.898,50.727,50.288,49.718,49.158,48.650,48.118,47.468,46.712,46.018,45.617,45.648,46.046,46.572,
-46.958,47.066,46.939,46.722,46.527,46.350,46.102,45.697,45.129,44.460,43.766,43.097,42.492,42.010,41.735,41.719,
-41.919,42.204,42.434,42.556,42.626,42.742,42.957,43.244,43.541,43.824,44.125,44.477,44.860,45.202,45.448,45.618,
-45.797,46.054,46.369,46.633,46.737,46.657,46.469,46.275,46.112,45.933,45.661,45.269,44.814,44.393,44.068,43.825,
-43.590,43.291,42.896,42.423,41.908,41.392,40.912,40.506,40.195,39.970,39.775,39.540,39.230,38.864,38.509,38.220,
-38.004,37.824,37.640,37.441,37.235,37.023,36.773,36.442,36.013,35.506,34.951,34.354,33.708,33.036,32.428,31.999,
-31.785,31.673,31.433,30.865,29.930,28.778,27.620,26.579,25.624,24.647,23.599,22.563,21.695,21.092,20.706,20.367,
-19.902,19.253,18.515,17.870,17.479,17.388,17.520,17.731,17.887,17.915,17.794,17.509,17.031,16.331,15.441,14.485,
-13.642,13.075,12.867,13.043,13.622,14.646,16.129,17.956,19.845,21.430,22.439,22.821,22.738,22.434,22.083,21.738,
-21.368,20.922,20.334,19.487,18.223,16.429,14.164,11.694,9.383,7.506,6.100,4.989,3.931,2.785,1.562,.356,
--.771,-1.839,-2.903,-3.976,-4.987,-5.833,-6.453,-6.880,-7.206,-7.515,-7.825,-8.114,-8.363,-8.604,-8.896,-9.272,
--9.697,-10.100,-10.431,-10.711,-11.004,-11.348,-11.706,-11.996,-12.175,-12.307,-12.537,-12.990,-13.675,-14.476,-15.229,-15.827,
--16.265,-16.604,-16.910,-17.208,-17.504,-17.816,-18.184,-18.650,-19.230,-19.901,-20.623,-21.362,-22.097,-22.823,-23.537,-24.234,
--24.901,-25.511,-26.035,-26.462,-26.824,-27.181,-27.587,-28.034,-28.454,-28.771,-28.982,-29.183,-29.510,-30.036,-30.706,-31.374,
--31.905,-32.264,-32.526,-32.802,-33.162,-33.607,-34.099,-34.610,-35.131,-35.659,-36.170,-36.629,-37.009,-37.323,-37.611,-37.918,
--38.265,-38.643,-39.013,-39.322,-39.513,-39.532,-39.351,-38.980,-38.486,-37.994,-37.663,-37.629,-37.943,-38.540,-39.256,-39.916,
--40.421,-40.789,-41.113,-41.473,-41.886,-42.312,-42.719,-43.114,-43.519,-43.916,-44.229,-44.378,-44.354,-44.243,-44.166,-44.181,
--44.233,-44.209,-44.035,-43.742,-43.452,-43.311,-43.429,-43.845,-44.525,-45.354,-46.156,-46.749,-47.043,-47.094,-47.071,-47.134,
--47.334,-47.617,-47.929,-48.292,-48.773,-49.360,-49.899,-50.179,-50.124,-49.905,-49.835,-50.125,-50.703,-51.287,-51.642,-51.789,
--51.960,-52.332,-52.806,-53.036,-52.720,-51.869,-50.831,-50.029,-49.666,-49.641,-49.729,-49.836,-50.086,-50.687,-51.727,-53.101,
--54.626,-56.214,-57.918,-59.795,-61.722,-63.337,-64.179,-63.947,-62.692,-60.838,-59.006,-57.750,-57.334,-57.656,-58.339,-58.953,
--59.241,-59.227,-59.125,-59.142,-59.306,-59.453,-59.385,-59.049,-58.588,-58.225,-58.069,-58.025,-57.875,-57.481,-56.923,-56.492,
--56.524,-57.196,-58.424,-59.893,-61.191,-61.968,-62.041,-61.436,-60.354,-59.091,-57.933,-57.069,-56.544,-56.274,-56.105,-55.897,
--55.584,-55.192,-54.809,-54.525,-54.369,-54.288,-54.168,-53.896,-53.421,-52.774,-52.057,-51.398,-50.893,-50.567,-50.355,-50.130,
--49.764,-49.199,-48.482,-47.738,-47.092,-46.592,-46.197,-45.838,-45.480,-45.145,-44.866,-44.624,-44.346,-43.957,-43.444,-42.875,
--42.332,-41.854,-41.410,-40.950,-40.455,-39.944,-39.438,-38.927,-38.374,-37.766,-37.130,-36.506,-35.895,-35.243,-34.486,-33.614,
--32.686,-31.776,-30.911,-30.057,-29.174,-28.277,-27.437,-26.719,-26.112,-25.525,-24.857,-24.068,-23.196,-22.300,-21.406,-20.483,
--19.485,-18.394,-17.234,-16.052,-14.889,-13.772,-12.720,-11.738,-10.802,-9.856,-8.840,-7.739,-6.613,-5.578,-4.747,-4.162,
--3.772,-3.462,-3.118,-2.678,-2.153,-1.603,-1.088,-.630,-.195,.270,.794,1.363,1.931,2.465,2.978,3.510,
-4.090,4.706,5.307,5.854,6.349,6.840,7.397,8.067,8.863,9.752,10.670,11.555,12.377,13.167,13.992,14.891,
-15.826,16.700,17.453,18.142,18.908,19.825,20.768,21.443,21.607,21.314,20.948,20.993,21.689,22.875,24.130,25.092,
-25.674,26.014,26.246,26.351,26.211,25.800,25.280,24.900,24.784,24.840,24.857,24.715,24.484,24.345,24.411,24.641,
-24.919,25.183,25.478,25.869,26.320,26.686,26.823,26.712,26.474,26.267,26.163,26.127,26.101,26.098,26.197,26.458,
-26.839,27.213,27.468,27.604,27.730,27.970,28.368,28.870,29.382,29.840,30.237,30.584,30.872,31.083,31.228,31.360,
-31.543,31.783,32.008,32.119,32.069,31.907,31.727,31.592,31.487,31.364,31.225,31.148,31.228,31.475,31.775,31.942,
-31.833,31.400,30.658,29.599,28.140,26.169,23.612,20.483,16.876,12.939,8.890,5.040,1.777,-.546,-1.751,-1.907,
--1.271,-.138,1.287,2.903,4.639,6.383,7.980,9.309,10.330,11.083,11.635,12.033,12.302,12.464,12.542,12.546,
-12.465,12.285,12.025,11.737,11.473,11.239,10.989,10.662,10.241,9.765,9.289,8.835,8.385,7.905,7.392,6.876,
-6.386,5.918,5.446,4.955,4.477,4.072,3.774,3.543,3.284,2.912,2.422,1.894,1.428,1.055,.716,.319,
--.166,-.670,-1.083,-1.361,-1.578,-1.859,-2.263,-2.727,-3.120,-3.373,-3.544,-3.754,-4.059,-4.393,-4.633,-4.735,
--4.777,-4.877,-5.070,-5.283,-5.443,-5.588,-5.851,-6.328,-6.966,-7.621,-8.223,-8.851,-9.606,-10.383,-10.807,-10.496,
--9.449,-8.209,-7.573,-8.035,-9.410,-10.952,-11.884,-11.890,-11.218,-10.366,-9.693,-9.256,-8.951,-8.717,-8.610,-8.710,
--9.011,-9.425,-9.859,-10.258,-10.569,-10.694,-10.533,-10.092,-9.534,-9.099,-8.927,-8.968,-9.045,-9.026,-8.928,-8.860,
--8.896,-8.993,-9.040,-8.967,-8.803,-8.630,-8.505,-8.432,-8.395,-8.393,-8.428,-8.468,-8.449,-8.332,-8.159,-8.037,
--8.045,-8.155,-8.253,-8.233,-8.089,-7.905,-7.769,-7.688,-7.601,-7.452,-7.258,-7.088,-6.991,-6.947,-6.890,-6.776,
--6.622,-6.492,-6.428,-6.418,-6.412,-6.370,-6.292,-6.214,-6.170,-6.166,-6.179,-6.181,-6.153,-6.095,-6.017,-5.932,
--5.847,-5.756,-5.647,-5.515,-5.371,-5.240,-5.148,-5.102,-5.094,-5.110,-5.143,-5.193,-5.254,-5.305,-5.322,-5.300,
--5.265,-5.253,-5.286,-5.348,-5.403,-5.431,-5.444,-5.487,-5.592,-5.759,-5.954,-6.133,-6.274,-6.378,-6.454,-6.508,
--6.535,-6.538,-6.533,-6.545,-6.595,-6.682,-6.793,-6.914,-7.044,-7.193,-7.366,-7.561,-7.763,-7.954,-8.125,-8.275,
--8.410,-8.537,-8.662,-8.792,-8.929,-9.073,-9.230,-9.412,-9.631,-9.893,-10.184,-10.478,-10.752,-11.002,-11.240,-11.484,
--11.737,-11.985,-12.204,-12.381,-12.519,-12.633,-12.746,-12.883,-13.068,-13.310,-13.598,-13.898,-14.176,-14.420,-14.650,-14.901,
--15.192,-15.507,-15.813,-16.091,-16.349,-16.614,-16.901,-17.202,-17.494,-17.764,-18.014,-18.251,-18.474,-18.672,-18.847,-19.013,
--19.193,-19.397,-19.611,-19.817,-20.015,-20.220,-20.450,-20.698,-20.938,-21.145,-21.322,-21.498,-21.701,-21.934,-22.176,-22.410,
--22.637,-22.878,-23.148,-23.442,-23.744,-24.043,-24.336,-24.626,-24.910,-25.185,-25.454,-25.732,-26.032,-26.343,-26.636,-26.876,
--27.057,-27.198,-27.331,-27.475,-27.634,-27.811,-28.011,-28.236,-28.469,-28.676,-28.836,-28.960,-29.085,-29.235,-29.392,-29.506,
--29.545,-29.529,-29.515,-29.544,-29.597,-29.616,-29.566,-29.477,-29.422,-29.443,-29.505,-29.527,-29.453,-29.308,-29.169,-29.093,
--29.067,-29.039,-28.975,-28.894,-28.835,-28.798,-28.733,-28.593,-28.394,-28.219,-28.141,-28.155,-28.188,-28.182,-28.173,-28.272,
--28.556,-28.974,-29.346,-29.465,-29.204,-28.553,-27.576,-26.371,-25.070,-23.861,-22.959,-22.497,-22.416,-22.471,-22.370,-21.954,
--21.294,-20.604,-20.079,-19.768,-19.581,-19.391,-19.133,-18.822,-18.512,-18.248,-18.055,-17.943,-17.897,-17.872,-17.798,-17.633,
--17.407,-17.209,-17.123,-17.151,-17.199,-17.146,-16.929,-16.570,-16.129,-15.644,-15.103,-14.489,-13.826,-13.184,-12.639,-12.226,
--11.937,-11.749,-11.652,-11.642,-11.694,-11.753,-11.763,-11.695,-11.555,-11.350,-11.063,-10.665,-10.163,-9.620,-9.126,-8.730,
--8.411,-8.130,-7.928,-7.985,-8.530,-9.659,-11.172,-12.586,-13.362,-13.223,-12.353,-11.323,-10.777,-11.057,-12.032,-13.218,
--14.118,-14.525,-14.596,-14.649,-14.869,-15.149,-15.201,-14.832,-14.163,-13.606,-13.594,-14.288,-15.473,-16.724,-17.707,-18.372,
--18.919,-19.589,-20.470,-21.468,-22.426,-23.257,-23.973,-24.609,-25.147,-25.521,-25.700,-25.747,-25.782,-25.886,-26.036,-26.144,
--26.161,-26.128,-26.143,-26.250,-26.394,-26.471,-26.447,-26.401,-26.466,-26.705,-27.045,-27.351,-27.548,-27.693,-27.916,-28.283,
--28.720,-29.074,-29.244,-29.280,-29.334,-29.528,-29.844,-30.155,-30.356,-30.479,-30.691,-31.161,-31.926,-32.853,-33.742,-34.466,
--35.028,-35.508,-35.949,-36.297,-36.457,-36.390,-36.176,-35.965,-35.869,-35.888,-35.933,-35.913,-35.806,-35.646,-35.456,-35.198,
--34.803,-34.260,-33.676,-33.242,-33.134,-33.397,-33.926,-34.519,-34.989,-35.237,-35.275,-35.200,-35.133,-35.173,-35.353,-35.634,
--35.926,-36.134,-36.211,-36.174,-36.091,-36.045,-36.096,-36.270,-36.547,-36.866,-37.140,-37.299,-37.327,-37.275,-37.218,-37.191,
--37.160,-37.054,-36.836,-36.545,-36.253,-35.997,-35.729,-35.363,-34.849,-34.214,-33.512,-32.747,-31.872,-30.881,-29.908,-29.212,
--29.009,-29.277,-29.711,-29.905,-29.633,-28.996,-28.331,-27.940,-27.880,-27.979,-28.017,-27.909,-27.726,-27.559,-27.404,-27.165,
--26.783,-26.334,-25.981,-25.831,-25.823,-25.772,-25.525,-25.099,-24.652,-24.348,-24.215,-24.142,-23.997,-23.753,-23.511,-23.399,
--23.456,-23.604,-23.715,-23.719,-23.633,-23.523,-23.421,-23.299,-23.102,-22.802,-22.424,-22.010,-21.585,-21.141,-20.668,-20.187,
--19.742,-19.366,-19.042,-18.702,-18.267,-17.689,-16.967,-16.138,-15.268,-14.453,-13.812,-13.459,-13.440,-13.688,-14.040,-14.312,
--14.391,-14.263,-13.971,-13.539,-12.949,-12.174,-11.247,-10.273,-9.384,-8.662,-8.099,-7.629,-7.191,-6.758,-6.321,-5.844,
--5.247,-4.436,-3.351,-1.998,-.437,1.236,2.923,4.537,6.013,7.323,8.480,9.521,10.485,11.405,12.315,13.249,
-14.216,15.161,15.954,16.453,16.613,16.545,16.482,16.640,17.089,17.726,18.380,18.943,19.436,19.959,20.583,21.292,
-22.007,22.659,23.232,23.749,24.234,24.698,25.160,25.667,26.273,26.988,27.759,28.499,29.159,29.769,30.409,31.137,
-31.931,32.708,33.387,33.951,34.455,34.976,35.557,36.191,36.845,37.488,38.118,38.753,39.419,40.136,40.910,41.721,
-42.530,43.290,43.974,44.586,45.153,45.706,46.260,46.819,47.396,48.018,48.699,49.424,50.135,50.772,51.311,51.775,
-52.214,52.660,53.112,53.563,54.024,54.534,55.118,55.760,56.404,56.998,57.530,58.033,58.543,59.062,59.563,60.025,
-60.465,60.925,61.427,61.943,62.411,62.781,63.051,63.258,63.430,63.565,63.630,63.607,63.520,63.426,63.381,63.403,
-63.470,63.538,63.565,63.530,63.433,63.294,63.144,63.019,62.940,62.904,62.885,62.854,62.793,62.697,62.571,62.415,
-62.224,61.994,61.726,61.428,61.109,60.783,60.461,60.143,59.815,59.448,59.030,58.598,58.245,58.074,58.137,58.377,
-58.659,58.852,58.902,58.840,58.705,58.469,58.037,57.339,56.436,55.537,54.888,54.621,54.676,54.866,55.019,55.079,
-55.081,55.045,54.905,54.546,53.918,53.105,52.274,51.547,50.916,50.283,49.583,48.878,48.319,48.038,48.052,48.290,
-48.679,49.217,49.935,50.808,51.713,52.485,53.024,53.352,53.556,53.680,53.676,53.450,52.973,52.341,51.739,51.339,
-51.217,51.341,51.598,51.833,51.874,51.575,50.881,49.884,48.813,47.930,47.399,47.214,47.246,47.353,47.486,47.681,
-47.985,48.374,48.743,48.970,48.997,48.873,48.714,48.634,48.677,48.805,49.200,49.316,49.359,49.283,49.142,49.049,
-49.095,49.301,49.622,49.990,50.336,50.594,50.706,50.654,50.485,50.306,50.205,50.185,50.160,50.056,49.899,49.821,
-49.936,50.194,50.368,50.200,49.605,48.748,47.932,47.367,47.036,46.749,46.342,45.848,45.488,45.494,45.924,46.600,
-47.226,47.580,47.635,47.534,47.457,47.481,47.549,47.531,47.331,46.940,46.414,45.805,45.130,44.394,43.647,43.001,
-42.581,42.434,42.494,42.617,42.682,42.671,42.654,42.728,42.929,43.213,43.495,43.706,43.823,43.868,43.893,43.965,
-44.150,44.488,44.966,45.504,45.985,46.316,46.473,46.500,46.470,46.426,46.355,46.201,45.913,45.480,44.945,44.392,
-43.911,43.566,43.364,43.246,43.100,42.816,42.345,41.732,41.106,40.601,40.275,40.078,39.892,39.623,39.269,38.915,
-38.658,38.529,38.471,38.391,38.227,37.977,37.668,37.320,36.921,36.447,35.872,35.177,34.343,33.383,32.377,31.484,
-30.868,30.583,30.507,30.396,30.037,29.378,28.537,27.676,26.865,26.045,25.126,24.094,23.049,22.124,21.381,20.779,
-20.226,19.674,19.151,18.730,18.462,18.343,18.328,18.362,18.411,18.470,18.538,18.601,18.603,18.448,18.036,17.324,
-16.373,15.335,14.386,13.656,13.230,13.191,13.658,14.737,16.409,18.455,20.500,22.173,23.281,23.855,24.059,24.048,
-23.895,23.614,23.199,22.634,21.837,20.652,18.927,16.655,14.059,11.523,9.399,7.811,6.619,5.541,4.350,2.994,
-1.572,.212,-1.033,-2.197,-3.328,-4.420,-5.402,-6.194,-6.771,-7.181,-7.496,-7.764,-7.990,-8.175,-8.347,-8.561,
--8.858,-9.226,-9.604,-9.941,-10.238,-10.547,-10.906,-11.296,-11.649,-11.916,-12.132,-12.409,-12.856,-13.503,-14.278,-15.062,
--15.762,-16.348,-16.830,-17.221,-17.530,-17.777,-18.012,-18.305,-18.705,-19.220,-19.820,-20.474,-21.168,-21.902,-22.673,-23.460,
--24.223,-24.923,-25.523,-26.007,-26.389,-26.717,-27.058,-27.454,-27.883,-28.277,-28.570,-28.773,-28.983,-29.325,-29.857,-30.525,
--31.196,-31.749,-32.147,-32.438,-32.707,-33.025,-33.421,-33.897,-34.436,-35.008,-35.572,-36.093,-36.558,-36.983,-37.395,-37.802,
--38.192,-38.550,-38.881,-39.211,-39.559,-39.901,-40.170,-40.280,-40.180,-39.883,-39.480,-39.110,-38.904,-38.926,-39.137,-39.425,
--39.688,-39.912,-40.181,-40.598,-41.180,-41.818,-42.351,-42.694,-42.898,-43.096,-43.377,-43.714,-44.003,-44.176,-44.253,-44.301,
--44.333,-44.274,-44.022,-43.564,-43.024,-42.598,-42.448,-42.636,-43.138,-43.882,-44.757,-45.592,-46.186,-46.399,-46.265,-45.995,
--45.852,-45.984,-46.354,-46.819,-47.277,-47.730,-48.211,-48.678,-48.996,-49.055,-48.897,-48.721,-48.739,-49.029,-49.506,-50.053,
--50.640,-51.318,-52.089,-52.791,-53.153,-52.982,-52.326,-51.437,-50.587,-49.886,-49.265,-48.638,-48.048,-47.684,-47.741,-48.277,
--49.206,-50.403,-51.828,-53.519,-55.473,-57.534,-59.377,-60.640,-61.090,-60.737,-59.830,-58.754,-57.883,-57.439,-57.429,-57.671,
--57.935,-58.094,-58.204,-58.437,-58.917,-59.591,-60.233,-60.595,-60.562,-60.211,-59.715,-59.196,-58.651,-57.990,-57.163,-56.249,
--55.458,-55.054,-55.243,-56.090,-57.476,-59.102,-60.562,-61.465,-61.577,-60.912,-59.726,-58.404,-57.299,-56.603,-56.301,-56.220,
--56.146,-55.933,-55.573,-55.180,-54.901,-54.806,-54.822,-54.769,-54.464,-53.834,-52.956,-52.010,-51.176,-50.557,-50.156,-49.895,
--49.669,-49.385,-48.993,-48.498,-47.945,-47.384,-46.838,-46.302,-45.774,-45.281,-44.872,-44.578,-44.364,-44.141,-43.825,-43.402,
--42.922,-42.454,-42.016,-41.578,-41.106,-40.607,-40.121,-39.669,-39.214,-38.687,-38.052,-37.335,-36.596,-35.858,-35.089,-34.238,
--33.309,-32.365,-31.480,-30.663,-29.855,-29.000,-28.111,-27.277,-26.578,-26.005,-25.451,-24.797,-23.997,-23.097,-22.175,-21.266,
--20.343,-19.357,-18.287,-17.155,-16.000,-14.843,-13.696,-12.572,-11.490,-10.453,-9.431,-8.377,-7.274,-6.172,-5.178,-4.394,
--3.856,-3.507,-3.228,-2.902,-2.470,-1.948,-1.403,-.898,-.451,-.028,.429,.948,1.516,2.089,2.644,3.193,
-3.772,4.388,5.010,5.588,6.106,6.599,7.128,7.738,8.437,9.214,10.060,10.962,11.894,12.812,13.693,14.554,
-15.437,16.353,17.260,18.106,18.902,19.731,20.643,21.539,22.173,22.325,22.026,21.624,21.584,22.170,23.264,24.476,
-25.446,26.059,26.414,26.628,26.683,26.486,26.044,25.551,25.261,25.269,25.412,25.416,25.136,24.696,24.384,24.411,
-24.768,25.266,25.713,26.042,26.288,26.478,26.572,26.504,26.277,25.993,25.787,25.731,25.799,25.925,26.088,26.327,
-26.683,27.128,27.555,27.852,27.993,28.066,28.215,28.545,29.065,29.703,30.360,30.953,31.416,31.696,31.774,31.697,
-31.591,31.594,31.760,31.996,32.123,32.017,31.716,31.406,31.271,31.358,31.555,31.713,31.778,31.814,31.893,31.961,
-31.816,31.223,30.054,28.335,26.179,23.672,20.835,17.677,14.269,10.770,7.398,4.379,1.938,.280,-.445,-.222,
-.793,2.312,4.038,5.763,7.397,8.898,10.211,11.259,11.998,12.459,12.732,12.908,13.030,13.092,13.076,12.974,
-12.791,12.533,12.217,11.882,11.578,11.334,11.122,10.868,10.504,10.030,9.510,9.020,8.584,8.157,7.679,7.126,
-6.538,5.977,5.482,5.042,4.625,4.211,3.815,3.462,3.146,2.829,2.458,2.020,1.549,1.106,.714,.340,
--.074,-.545,-1.019,-1.412,-1.698,-1.951,-2.287,-2.749,-3.249,-3.638,-3.843,-3.940,-4.089,-4.368,-4.702,-4.935,
--4.998,-4.986,-5.065,-5.296,-5.580,-5.771,-5.854,-5.988,-6.356,-6.987,-7.733,-8.433,-9.056,-9.666,-10.219,-10.465,
--10.103,-9.130,-8.014,-7.473,-7.970,-9.347,-10.905,-11.891,-11.976,-11.371,-10.543,-9.853,-9.389,-9.079,-8.876,-8.810,
--8.916,-9.164,-9.486,-9.851,-10.261,-10.678,-10.959,-10.932,-10.550,-9.971,-9.461,-9.205,-9.183,-9.238,-9.247,-9.218,
--9.235,-9.329,-9.425,-9.421,-9.294,-9.123,-9.004,-8.961,-8.944,-8.909,-8.874,-8.882,-8.928,-8.942,-8.851,-8.673,
--8.515,-8.477,-8.551,-8.629,-8.599,-8.449,-8.262,-8.130,-8.060,-7.992,-7.872,-7.716,-7.592,-7.543,-7.537,-7.502,
--7.392,-7.229,-7.077,-6.980,-6.927,-6.874,-6.790,-6.682,-6.587,-6.534,-6.523,-6.534,-6.538,-6.516,-6.465,-6.396,
--6.330,-6.279,-6.239,-6.189,-6.109,-5.998,-5.881,-5.793,-5.750,-5.744,-5.755,-5.769,-5.788,-5.817,-5.846,-5.857,
--5.841,-5.813,-5.807,-5.845,-5.919,-6.000,-6.058,-6.092,-6.131,-6.207,-6.333,-6.498,-6.675,-6.843,-6.987,-7.098,
--7.164,-7.184,-7.171,-7.152,-7.161,-7.211,-7.297,-7.399,-7.505,-7.619,-7.754,-7.918,-8.104,-8.294,-8.473,-8.632,
--8.774,-8.905,-9.029,-9.153,-9.282,-9.422,-9.574,-9.742,-9.935,-10.163,-10.431,-10.725,-11.015,-11.272,-11.489,-11.682,
--11.876,-12.081,-12.285,-12.468,-12.618,-12.746,-12.869,-13.006,-13.171,-13.377,-13.634,-13.937,-14.261,-14.567,-14.832,-15.067,
--15.305,-15.577,-15.879,-16.183,-16.463,-16.721,-16.979,-17.256,-17.546,-17.830,-18.095,-18.347,-18.595,-18.836,-19.051,-19.231,
--19.389,-19.555,-19.751,-19.972,-20.197,-20.415,-20.631,-20.856,-21.083,-21.288,-21.455,-21.603,-21.773,-21.999,-22.274,-22.561,
--22.826,-23.065,-23.306,-23.567,-23.845,-24.116,-24.365,-24.602,-24.848,-25.114,-25.393,-25.673,-25.958,-26.260,-26.583,-26.904,
--27.185,-27.400,-27.558,-27.689,-27.826,-27.982,-28.158,-28.355,-28.573,-28.801,-29.013,-29.181,-29.300,-29.397,-29.501,-29.621,
--29.726,-29.784,-29.791,-29.782,-29.796,-29.842,-29.887,-29.897,-29.873,-29.846,-29.844,-29.854,-29.833,-29.756,-29.646,-29.552,
--29.501,-29.469,-29.410,-29.316,-29.231,-29.208,-29.240,-29.249,-29.154,-28.950,-28.727,-28.594,-28.582,-28.626,-28.638,-28.611,
--28.645,-28.855,-29.252,-29.687,-29.918,-29.736,-29.062,-27.964,-26.612,-25.227,-24.033,-23.198,-22.770,-22.641,-22.590,-22.398,
--21.972,-21.381,-20.780,-20.295,-19.957,-19.720,-19.524,-19.336,-19.146,-18.946,-18.730,-18.514,-18.338,-18.230,-18.165,-18.071,
--17.887,-17.618,-17.343,-17.149,-17.055,-17.006,-16.918,-16.740,-16.470,-16.122,-15.693,-15.171,-14.583,-14.002,-13.510,-13.143,
--12.868,-12.627,-12.399,-12.223,-12.148,-12.175,-12.236,-12.239,-12.125,-11.896,-11.584,-11.223,-10.835,-10.446,-10.083,-9.750,
--9.405,-8.992,-8.529,-8.182,-8.231,-8.911,-10.220,-11.836,-13.230,-13.932,-13.791,-13.053,-12.223,-11.782,-11.943,-12.586,
--13.383,-14.032,-14.425,-14.661,-14.907,-15.228,-15.514,-15.570,-15.296,-14.820,-14.454,-14.511,-15.095,-16.032,-17.003,-17.762,
--18.285,-18.743,-19.336,-20.135,-21.055,-21.960,-22.778,-23.528,-24.250,-24.921,-25.462,-25.814,-26.006,-26.140,-26.298,-26.475,
--26.597,-26.609,-26.540,-26.475,-26.475,-26.521,-26.549,-26.538,-26.553,-26.685,-26.964,-27.313,-27.614,-27.819,-27.987,-28.226,
--28.567,-28.926,-29.175,-29.265,-29.286,-29.396,-29.674,-30.050,-30.362,-30.507,-30.549,-30.687,-31.108,-31.847,-32.764,-33.646,
--34.351,-34.868,-35.265,-35.587,-35.814,-35.891,-35.815,-35.666,-35.563,-35.569,-35.648,-35.702,-35.652,-35.497,-35.294,-35.088,
--34.858,-34.548,-34.130,-33.664,-33.277,-33.103,-33.201,-33.533,-33.990,-34.438,-34.773,-34.945,-34.982,-34.967,-35.003,-35.154,
--35.404,-35.672,-35.871,-35.967,-35.990,-36.008,-36.076,-36.215,-36.416,-36.658,-36.905,-37.107,-37.216,-37.216,-37.145,-37.067,
--37.018,-36.978,-36.889,-36.720,-36.494,-36.259,-36.025,-35.742,-35.349,-34.838,-34.265,-33.676,-33.037,-32.255,-31.308,-30.349,
--29.668,-29.487,-29.753,-30.122,-30.179,-29.736,-28.964,-28.243,-27.870,-27.861,-27.991,-28.020,-27.876,-27.653,-27.456,-27.284,
--27.048,-26.702,-26.326,-26.069,-26.001,-26.031,-25.977,-25.720,-25.314,-24.926,-24.685,-24.576,-24.469,-24.261,-23.984,-23.780,
--23.773,-23.953,-24.175,-24.268,-24.159,-23.902,-23.607,-23.343,-23.097,-22.811,-22.452,-22.046,-21.644,-21.278,-20.935,-20.580,
--20.203,-19.826,-19.477,-19.155,-18.817,-18.406,-17.892,-17.290,-16.654,-16.052,-15.555,-15.233,-15.141,-15.290,-15.612,-15.970,
--16.210,-16.227,-15.993,-15.529,-14.857,-13.980,-12.916,-11.741,-10.587,-9.591,-8.818,-8.244,-7.793,-7.410,-7.081,-6.793,
--6.491,-6.059,-5.379,-4.390,-3.116,-1.641,-.056,1.568,3.176,4.717,6.152,7.466,8.678,9.817,10.908,11.959,
-12.974,13.946,14.849,15.617,16.172,16.481,16.609,16.707,16.925,17.321,17.832,18.341,18.774,19.151,19.555,20.048,
-20.629,21.245,21.849,22.429,22.990,23.533,24.050,24.554,25.100,25.749,26.519,27.350,28.137,28.814,29.405,30.006,
-30.704,31.511,32.353,33.133,33.803,34.383,34.932,35.498,36.092,36.704,37.325,37.954,38.599,39.266,39.963,40.700,
-41.482,42.296,43.101,43.843,44.487,45.032,45.515,45.988,46.498,47.074,47.726,48.441,49.180,49.888,50.518,51.057,
-51.528,51.974,52.421,52.874,53.332,53.812,54.342,54.944,55.600,56.258,56.868,57.415,57.921,58.423,58.933,59.445,
-59.949,60.453,60.967,61.487,61.975,62.382,62.685,62.897,63.053,63.170,63.241,63.247,63.196,63.124,63.078,63.082,
-63.123,63.171,63.200,63.201,63.173,63.111,63.011,62.877,62.728,62.598,62.518,62.505,62.547,62.600,62.600,62.484,
-62.229,61.873,61.504,61.208,61.008,60.847,60.626,60.279,59.821,59.331,58.899,58.574,58.368,58.279,58.312,58.462,
-58.680,58.875,58.954,58.880,58.679,58.393,58.024,57.533,56.898,56.182,55.531,55.083,54.862,54.757,54.619,54.384,
-54.120,53.949,53.906,53.890,53.736,53.373,52.898,52.500,52.297,52.219,52.056,51.632,50.951,50.215,49.692,49.565,
-49.854,50.448,51.189,51.934,52.588,53.114,53.544,53.961,54.445,54.987,55.467,55.717,55.635,55.270,54.794,54.388,
-54.140,54.022,53.956,53.872,53.732,53.492,53.096,52.505,51.748,50.939,50.215,49.654,49.237,48.896,48.586,48.342,
-48.255,48.391,48.733,49.160,49.509,49.653,49.575,49.369,49.182,49.124,49.200,50.441,50.553,50.559,50.389,50.096,
-49.815,49.661,49.654,49.744,49.868,49.990,50.092,50.142,50.120,50.048,49.994,50.009,50.055,50.021,49.829,49.539,
-49.328,49.318,49.433,49.408,48.999,48.203,47.291,46.604,46.290,46.207,46.085,45.790,45.459,45.382,45.754,46.507,
-47.348,47.971,48.241,48.244,48.171,48.172,48.267,48.374,48.389,48.260,48.002,47.664,47.272,46.803,46.202,45.444,
-44.587,43.775,43.166,42.846,42.771,42.809,42.828,42.787,42.744,42.792,42.968,43.213,43.407,43.457,43.356,43.193,
-43.103,43.186,43.467,43.897,44.391,44.870,45.286,45.625,45.891,46.096,46.243,46.314,46.266,46.045,45.626,45.049,
-44.431,43.923,43.639,43.590,43.672,43.717,43.573,43.186,42.619,42.014,41.515,41.188,40.988,40.805,40.536,40.163,
-39.756,39.416,39.190,39.041,38.879,38.631,38.286,37.882,37.457,37.009,36.493,35.841,34.995,33.933,32.711,31.477,
-30.440,29.780,29.534,29.555,29.591,29.437,29.043,28.492,27.882,27.223,26.450,25.521,24.496,23.511,22.672,21.976,
-21.344,20.716,20.126,19.665,19.394,19.279,19.219,19.132,19.010,18.909,18.894,18.994,19.182,19.386,19.494,19.377,
-18.943,18.188,17.211,16.170,15.205,14.414,13.881,13.737,14.143,15.196,16.813,18.719,20.559,22.069,23.161,23.891,
-24.342,24.551,24.515,24.247,23.780,23.120,22.190,20.863,19.073,16.935,14.732,12.780,11.240,10.025,8.878,7.550,
-5.967,4.252,2.609,1.173,-.074,-1.253,-2.469,-3.722,-4.905,-5.893,-6.622,-7.121,-7.465,-7.723,-7.935,-8.124,
--8.322,-8.561,-8.853,-9.172,-9.481,-9.769,-10.061,-10.394,-10.779,-11.187,-11.583,-11.960,-12.356,-12.823,-13.391,-14.049,
--14.766,-15.503,-16.224,-16.879,-17.414,-17.801,-18.069,-18.299,-18.581,-18.962,-19.435,-19.963,-20.531,-21.151,-21.845,-22.607,
--23.395,-24.152,-24.833,-25.417,-25.897,-26.287,-26.614,-26.920,-27.242,-27.585,-27.918,-28.211,-28.469,-28.752,-29.132,-29.642,
--30.247,-30.863,-31.409,-31.843,-32.169,-32.425,-32.671,-32.973,-33.384,-33.916,-34.525,-35.141,-35.711,-36.244,-36.781,-37.350,
--37.919,-38.417,-38.797,-39.086,-39.369,-39.724,-40.163,-40.621,-41.003,-41.237,-41.301,-41.225,-41.069,-40.890,-40.714,-40.522,
--40.273,-39.970,-39.717,-39.691,-40.033,-40.722,-41.542,-42.204,-42.535,-42.578,-42.533,-42.594,-42.816,-43.134,-43.469,-43.798,
--44.123,-44.393,-44.483,-44.287,-43.827,-43.278,-42.852,-42.666,-42.701,-42.877,-43.144,-43.486,-43.850,-44.103,-44.105,-43.843,
--43.495,-43.330,-43.515,-44.007,-44.615,-45.173,-45.663,-46.167,-46.730,-47.274,-47.643,-47.747,-47.638,-47.478,-47.425,-47.572,
--47.953,-48.574,-49.404,-50.320,-51.104,-51.544,-51.570,-51.309,-50.987,-50.746,-50.536,-50.173,-49.526,-48.655,-47.797,-47.226,
--47.104,-47.448,-48.182,-49.220,-50.502,-51.974,-53.577,-55.243,-56.898,-58.451,-59.772,-60.720,-61.201,-61.237,-60.962,-60.549,
--60.134,-59.789,-59.569,-59.559,-59.854,-60.472,-61.293,-62.083,-62.602,-62.727,-62.481,-61.971,-61.304,-60.537,-59.686,-58.759,
--57.780,-56.802,-55.935,-55.357,-55.280,-55.855,-57.037,-58.532,-59.879,-60.641,-60.600,-59.849,-58.714,-57.596,-56.789,-56.382,
--56.265,-56.221,-56.063,-55.741,-55.356,-55.076,-54.992,-55.027,-54.971,-54.620,-53.918,-52.998,-52.087,-51.365,-50.874,-50.539,
--50.254,-49.956,-49.639,-49.321,-49.005,-48.666,-48.266,-47.771,-47.171,-46.492,-45.805,-45.193,-44.711,-44.350,-44.047,-43.736,
--43.393,-43.035,-42.679,-42.303,-41.861,-41.336,-40.771,-40.240,-39.771,-39.310,-38.758,-38.055,-37.230,-36.370,-35.538,-34.728,
--33.897,-33.029,-32.164,-31.350,-30.583,-29.799,-28.945,-28.040,-27.179,-26.446,-25.835,-25.245,-24.564,-23.755,-22.866,-21.964,
--21.067,-20.137,-19.130,-18.044,-16.917,-15.781,-14.634,-13.460,-12.264,-11.085,-9.962,-8.894,-7.842,-6.779,-5.732,-4.786,
--4.026,-3.483,-3.102,-2.783,-2.434,-2.013,-1.535,-1.045,-.577,-.135,.313,.799,1.333,1.890,2.437,2.964,
-3.495,4.058,4.652,5.240,5.790,6.308,6.840,7.431,8.084,8.777,9.511,10.329,11.277,12.339,13.418,14.408,
-15.285,16.118,16.991,17.907,18.789,19.569,20.269,20.969,21.668,22.223,22.440,22.290,22.020,22.030,22.581,23.591,
-24.695,25.528,25.964,26.126,26.186,26.192,26.078,25.824,25.569,25.514,25.729,26.043,26.167,25.943,25.491,25.128,
-25.115,25.471,25.988,26.412,26.615,26.623,26.524,26.366,26.147,25.878,25.631,25.511,25.583,25.817,26.123,26.428,
-26.729,27.070,27.473,27.886,28.204,28.362,28.403,28.475,28.742,29.291,30.083,30.982,31.817,32.428,32.692,32.560,
-32.115,31.583,31.252,31.296,31.629,31.935,31.887,31.405,30.738,30.285,30.298,30.701,31.180,31.430,31.346,31.000,
-30.457,29.638,28.357,26.482,24.050,21.238,18.234,15.142,12.012,8.936,6.107,3.772,2.137,1.307,1.281,1.985,
-3.275,4.940,6.732,8.432,9.917,11.163,12.184,12.975,13.508,13.776,13.831,13.774,13.690,13.609,13.508,13.358,
-13.146,12.882,12.580,12.253,11.923,11.614,11.331,11.034,10.664,10.188,9.639,9.101,8.642,8.257,7.869,7.394,
-6.806,6.160,5.550,5.042,4.637,4.279,3.906,3.491,3.055,2.642,2.279,1.956,1.632,1.268,.854,.405,
--.057,-.526,-.994,-1.434,-1.813,-2.123,-2.416,-2.769,-3.213,-3.681,-4.054,-4.269,-4.383,-4.527,-4.771,-5.048,
--5.225,-5.251,-5.233,-5.336,-5.614,-5.940,-6.141,-6.186,-6.246,-6.539,-7.123,-7.859,-8.565,-9.194,-9.809,-10.381,
--10.650,-10.287,-9.251,-8.006,-7.310,-7.696,-9.053,-10.683,-11.793,-12.004,-11.496,-10.726,-10.054,-9.576,-9.237,-9.015,
--8.957,-9.093,-9.364,-9.673,-9.993,-10.368,-10.808,-11.190,-11.309,-11.049,-10.510,-9.945,-9.569,-9.428,-9.420,-9.448,
--9.497,-9.601,-9.736,-9.809,-9.738,-9.556,-9.387,-9.332,-9.379,-9.427,-9.403,-9.331,-9.288,-9.301,-9.310,-9.233,
--9.069,-8.909,-8.851,-8.898,-8.956,-8.931,-8.813,-8.675,-8.586,-8.546,-8.499,-8.411,-8.311,-8.255,-8.255,-8.260,
--8.199,-8.051,-7.865,-7.707,-7.601,-7.510,-7.384,-7.206,-7.009,-6.845,-6.748,-6.719,-6.738,-6.777,-6.812,-6.824,
--6.806,-6.767,-6.725,-6.692,-6.659,-6.610,-6.537,-6.457,-6.397,-6.372,-6.375,-6.385,-6.389,-6.388,-6.391,-6.394,
--6.386,-6.360,-6.330,-6.327,-6.373,-6.464,-6.571,-6.663,-6.727,-6.779,-6.846,-6.947,-7.081,-7.236,-7.391,-7.528,
--7.629,-7.686,-7.701,-7.690,-7.683,-7.703,-7.759,-7.839,-7.929,-8.021,-8.128,-8.264,-8.433,-8.624,-8.813,-8.985,
--9.138,-9.277,-9.408,-9.532,-9.653,-9.779,-9.920,-10.079,-10.254,-10.440,-10.643,-10.868,-11.112,-11.356,-11.573,-11.748,
--11.896,-12.043,-12.207,-12.385,-12.564,-12.734,-12.906,-13.091,-13.291,-13.503,-13.725,-13.971,-14.257,-14.578,-14.903,-15.200,
--15.458,-15.704,-15.970,-16.267,-16.576,-16.871,-17.144,-17.404,-17.665,-17.926,-18.176,-18.414,-18.653,-18.908,-19.169,-19.412,
--19.619,-19.801,-19.991,-20.211,-20.453,-20.688,-20.900,-21.097,-21.297,-21.501,-21.691,-21.849,-21.993,-22.164,-22.396,-22.683,
--22.980,-23.249,-23.490,-23.734,-24.004,-24.288,-24.555,-24.784,-24.992,-25.213,-25.465,-25.736,-25.999,-26.249,-26.509,-26.801,
--27.120,-27.426,-27.681,-27.878,-28.045,-28.214,-28.396,-28.581,-28.760,-28.941,-29.137,-29.344,-29.533,-29.672,-29.754,-29.807,
--29.864,-29.936,-30.005,-30.048,-30.062,-30.070,-30.091,-30.128,-30.166,-30.194,-30.211,-30.219,-30.208,-30.161,-30.074,-29.974,
--29.894,-29.843,-29.788,-29.694,-29.562,-29.452,-29.422,-29.471,-29.515,-29.461,-29.289,-29.081,-28.949,-28.933,-28.964,-28.943,
--28.855,-28.813,-28.975,-29.385,-29.894,-30.203,-30.028,-29.252,-27.982,-26.489,-25.089,-24.025,-23.393,-23.125,-23.033,-22.899,
--22.586,-22.094,-21.532,-21.023,-20.625,-20.315,-20.041,-19.786,-19.567,-19.399,-19.259,-19.098,-18.892,-18.665,-18.460,-18.294,
--18.137,-17.943,-17.697,-17.426,-17.167,-16.934,-16.718,-16.515,-16.337,-16.190,-16.038,-15.808,-15.449,-14.989,-14.529,-14.163,
--13.907,-13.691,-13.435,-13.132,-12.853,-12.680,-12.627,-12.619,-12.553,-12.370,-12.070,-11.694,-11.289,-10.908,-10.610,-10.425,
--10.305,-10.111,-9.702,-9.087,-8.517,-8.395,-9.037,-10.416,-12.116,-13.527,-14.188,-14.030,-13.373,-12.700,-12.371,-12.473,
--12.867,-13.351,-13.802,-14.212,-14.614,-15.004,-15.309,-15.432,-15.339,-15.106,-14.908,-14.934,-15.288,-15.925,-16.675,-17.344,
--17.830,-18.180,-18.536,-19.033,-19.700,-20.460,-21.214,-21.922,-22.615,-23.334,-24.063,-24.727,-25.256,-25.652,-25.979,-26.297,
--26.595,-26.798,-26.841,-26.737,-26.571,-26.439,-26.387,-26.408,-26.489,-26.639,-26.880,-27.201,-27.553,-27.888,-28.202,-28.528,
--28.869,-29.159,-29.296,-29.246,-29.116,-29.109,-29.380,-29.900,-30.455,-30.797,-30.835,-30.710,-30.701,-31.028,-31.713,-32.582,
--33.405,-34.041,-34.487,-34.814,-35.072,-35.247,-35.305,-35.259,-35.191,-35.192,-35.291,-35.424,-35.479,-35.391,-35.178,-34.920,
--34.687,-34.489,-34.291,-34.060,-33.803,-33.565,-33.399,-33.344,-33.420,-33.627,-33.939,-34.296,-34.614,-34.831,-34.947,-35.027,
--35.144,-35.328,-35.545,-35.737,-35.875,-35.979,-36.086,-36.218,-36.370,-36.526,-36.681,-36.831,-36.951,-36.998,-36.941,-36.797,
--36.622,-36.473,-36.365,-36.276,-36.182,-36.081,-35.967,-35.801,-35.520,-35.090,-34.560,-34.036,-33.581,-33.141,-32.589,-31.869,
--31.110,-30.576,-30.453,-30.658,-30.847,-30.654,-29.967,-29.028,-28.244,-27.887,-27.917,-28.065,-28.074,-27.876,-27.583,-27.325,
--27.129,-26.933,-26.696,-26.465,-26.332,-26.322,-26.343,-26.259,-26.013,-25.675,-25.375,-25.172,-25.011,-24.789,-24.480,-24.190,
--24.076,-24.209,-24.494,-24.725,-24.719,-24.436,-23.983,-23.512,-23.114,-22.783,-22.459,-22.106,-21.745,-21.427,-21.178,-20.971,
--20.753,-20.494,-20.214,-19.956,-19.745,-19.555,-19.329,-19.023,-18.645,-18.252,-17.914,-17.686,-17.590,-17.620,-17.747,-17.908,
--18.014,-17.972,-17.718,-17.236,-16.542,-15.654,-14.589,-13.383,-12.123,-10.941,-9.957,-9.222,-8.695,-8.294,-7.955,-7.658,
--7.389,-7.097,-6.682,-6.047,-5.149,-4.016,-2.710,-1.286,.222,1.785,3.356,4.888,6.353,7.752,9.091,10.352,
-11.502,12.520,13.432,14.281,15.083,15.797,16.351,16.719,16.959,17.183,17.479,17.848,18.227,18.554,18.831,19.118,
-19.483,19.947,20.487,21.066,21.663,22.269,22.874,23.467,24.051,24.664,25.354,26.132,26.950,27.724,28.402,29.006,
-29.618,30.311,31.095,31.913,32.688,33.381,34.002,34.588,35.167,35.755,36.364,37.014,37.715,38.453,39.191,39.902,
-40.598,41.319,42.095,42.904,43.672,44.325,44.842,45.277,45.717,46.233,46.841,47.513,48.205,48.883,49.529,50.129,
-50.677,51.177,51.642,52.093,52.548,53.025,53.541,54.114,54.747,55.417,56.083,56.700,57.254,57.764,58.264,58.779,
-59.317,59.869,60.420,60.955,61.450,61.876,62.214,62.465,62.643,62.763,62.825,62.823,62.769,62.697,62.655,62.667,
-62.720,62.776,62.806,62.804,62.789,62.772,62.744,62.679,62.558,62.387,62.194,62.031,61.948,61.974,62.088,62.203,
-62.201,61.997,61.609,61.156,60.789,60.575,60.446,60.248,59.860,59.295,58.701,58.259,58.072,58.119,58.297,58.497,
-58.650,58.720,58.687,58.536,58.282,57.964,57.626,57.280,56.902,56.470,56.006,55.567,55.194,54.851,54.439,53.887,
-53.238,52.647,52.277,52.169,52.218,52.269,52.266,52.312,52.570,53.094,53.716,54.118,54.027,53.397,52.458,51.590,
-51.133,51.239,51.833,52.676,53.485,54.061,54.372,54.549,54.791,55.218,55.777,56.265,56.480,56.372,56.070,55.782,
-55.631,55.585,55.523,55.356,55.100,54.832,54.596,54.352,54.018,53.551,52.983,52.387,51.814,51.267,50.727,50.203,
-49.758,49.478,49.425,49.601,49.933,50.292,50.542,50.608,50.519,50.396,50.359,50.441,52.108,52.286,52.329,52.167,
-51.846,51.489,51.191,50.955,50.728,50.481,50.247,50.072,49.958,49.866,49.771,49.699,49.680,49.677,49.576,49.298,
-48.893,48.525,48.318,48.206,47.975,47.462,46.747,46.117,45.828,45.877,46.010,45.966,45.739,45.598,45.850,46.559,
-47.476,48.230,48.599,48.630,48.546,48.535,48.640,48.778,48.848,48.815,48.702,48.557,48.411,48.268,48.078,47.737,
-47.124,46.188,45.037,43.930,43.147,42.823,42.865,43.024,43.084,43.000,42.894,42.921,43.123,43.388,43.546,43.495,
-43.273,43.008,42.829,42.786,42.868,43.045,43.313,43.680,44.137,44.636,45.104,45.473,45.690,45.710,45.504,45.083,
-44.537,44.024,43.707,43.661,43.828,44.051,44.164,44.080,43.810,43.429,43.021,42.646,42.330,42.064,41.809,41.515,
-41.153,40.735,40.308,39.918,39.567,39.217,38.830,38.397,37.944,37.494,37.025,36.464,35.717,34.722,33.496,32.155,
-30.903,29.956,29.447,29.339,29.434,29.483,29.328,28.967,28.491,27.963,27.345,26.558,25.597,24.586,23.701,23.029,
-22.512,22.018,21.483,20.972,20.609,20.447,20.405,20.337,20.152,19.877,19.617,19.468,19.461,19.576,19.766,19.959,
-20.051,19.924,19.507,18.824,17.979,17.093,16.247,15.498,14.943,14.741,15.042,15.881,17.115,18.489,19.775,20.868,
-21.772,22.509,23.049,23.327,23.316,23.074,22.693,22.218,21.591,20.709,19.531,18.155,16.774,15.537,14.437,13.298,
-11.916,10.218,8.335,6.515,4.940,3.585,2.250,.719,-1.051,-2.884,-4.494,-5.670,-6.393,-6.813,-7.120,-7.432,
--7.770,-8.103,-8.408,-8.692,-8.968,-9.236,-9.492,-9.744,-10.022,-10.360,-10.771,-11.243,-11.745,-12.250,-12.745,-13.244,
--13.780,-14.401,-15.132,-15.944,-16.748,-17.435,-17.942,-18.296,-18.592,-18.928,-19.344,-19.819,-20.314,-20.827,-21.386,-22.019,
--22.711,-23.413,-24.074,-24.676,-25.224,-25.719,-26.144,-26.479,-26.728,-26.932,-27.141,-27.390,-27.690,-28.036,-28.433,-28.887,
--29.399,-29.954,-30.519,-31.053,-31.513,-31.861,-32.091,-32.246,-32.424,-32.726,-33.198,-33.798,-34.437,-35.050,-35.649,-36.289,
--36.990,-37.701,-38.324,-38.804,-39.174,-39.531,-39.954,-40.449,-40.963,-41.434,-41.835,-42.161,-42.406,-42.550,-42.564,-42.420,
--42.090,-41.552,-40.846,-40.121,-39.620,-39.558,-39.977,-40.680,-41.338,-41.695,-41.711,-41.541,-41.383,-41.351,-41.462,-41.709,
--42.109,-42.653,-43.235,-43.662,-43.775,-43.580,-43.243,-42.952,-42.764,-42.590,-42.319,-41.956,-41.620,-41.423,-41.355,-41.306,
--41.200,-41.101,-41.167,-41.504,-42.067,-42.699,-43.280,-43.817,-44.404,-45.089,-45.794,-46.361,-46.672,-46.722,-46.605,-46.442,
--46.340,-46.395,-46.689,-47.236,-47.930,-48.563,-48.954,-49.092,-49.158,-49.386,-49.859,-50.401,-50.684,-50.442,-49.667,-48.620,
--47.700,-47.241,-47.384,-48.042,-48.976,-49.924,-50.756,-51.568,-52.649,-54.306,-56.632,-59.369,-61.991,-63.958,-64.984,-65.136,
--64.730,-64.123,-63.565,-63.180,-63.018,-63.100,-63.401,-63.831,-64.248,-64.522,-64.583,-64.427,-64.079,-63.574,-62.953,-62.262,
--61.527,-60.713,-59.738,-58.571,-57.334,-56.329,-55.906,-56.251,-57.243,-58.479,-59.467,-59.863,-59.599,-58.862,-57.971,-57.219,
--56.760,-56.578,-56.519,-56.407,-56.153,-55.810,-55.517,-55.370,-55.314,-55.173,-54.781,-54.127,-53.369,-52.724,-52.303,-52.046,
--51.793,-51.420,-50.928,-50.418,-49.998,-49.701,-49.472,-49.207,-48.813,-48.245,-47.516,-46.697,-45.887,-45.174,-44.597,-44.144,
--43.775,-43.458,-43.175,-42.897,-42.571,-42.139,-41.593,-40.990,-40.413,-39.895,-39.375,-38.746,-37.948,-37.022,-36.077,-35.200,
--34.398,-33.620,-32.829,-32.037,-31.277,-30.544,-29.785,-28.948,-28.047,-27.159,-26.359,-25.648,-24.955,-24.203,-23.376,-22.516,
--21.659,-20.785,-19.839,-18.788,-17.660,-16.513,-15.376,-14.227,-13.028,-11.787,-10.562,-9.417,-8.360,-7.344,-6.318,-5.292,
--4.342,-3.555,-2.967,-2.537,-2.189,-1.852,-1.494,-1.110,-.702,-.265,.208,.726,1.283,1.858,2.421,2.952,
-3.452,3.943,4.444,4.956,5.458,5.947,6.451,7.013,7.647,8.326,9.019,9.754,10.619,11.687,12.917,14.149,
-15.223,16.109,16.930,17.831,18.812,19.714,20.360,20.736,21.006,21.344,21.759,22.093,22.224,22.246,22.446,23.050,
-23.995,24.935,25.507,25.600,25.405,25.210,25.166,25.223,25.279,25.336,25.505,25.852,26.275,26.553,26.535,26.284,
-26.041,26.025,26.266,26.596,26.798,26.764,26.550,26.282,26.052,25.875,25.734,25.651,25.688,25.891,26.233,26.613,
-26.932,27.174,27.410,27.718,28.098,28.448,28.660,28.729,28.799,29.076,29.687,30.594,31.627,32.570,33.230,33.451,
-33.140,32.345,31.335,30.543,30.337,30.732,31.313,31.482,30.896,29.747,28.630,28.105,28.293,28.819,29.134,28.890,
-28.077,26.870,25.379,23.567,21.354,18.772,15.991,13.206,10.537,8.033,5.777,3.952,2.790,2.445,2.913,4.043,
-5.614,7.401,9.194,10.811,12.132,13.122,13.831,14.331,14.661,14.816,14.793,14.631,14.407,14.182,13.971,13.752,
-13.504,13.229,12.943,12.650,12.341,12.008,11.652,11.273,10.850,10.358,9.795,9.211,8.674,8.222,7.827,7.412,
-6.917,6.340,5.738,5.184,4.715,4.319,3.949,3.548,3.090,2.596,2.126,1.741,1.453,1.207,.916,.524,
-.047,-.454,-.925,-1.359,-1.774,-2.180,-2.561,-2.909,-3.243,-3.597,-3.968,-4.305,-4.561,-4.743,-4.916,-5.122,
--5.326,-5.451,-5.474,-5.487,-5.622,-5.912,-6.241,-6.456,-6.534,-6.625,-6.907,-7.413,-8.017,-8.603,-9.213,-9.970,
--10.813,-11.361,-11.122,-9.956,-8.361,-7.250,-7.341,-8.627,-10.389,-11.728,-12.158,-11.801,-11.110,-10.454,-9.931,-9.498,
--9.167,-9.036,-9.163,-9.471,-9.809,-10.109,-10.432,-10.852,-11.304,-11.583,-11.510,-11.095,-10.537,-10.068,-9.796,-9.688,
--9.679,-9.743,-9.876,-10.026,-10.091,-10.006,-9.819,-9.661,-9.629,-9.702,-9.770,-9.759,-9.689,-9.634,-9.625,-9.611,
--9.525,-9.375,-9.243,-9.208,-9.264,-9.330,-9.333,-9.275,-9.212,-9.180,-9.154,-9.094,-9.002,-8.935,-8.940,-8.994,
--9.011,-8.922,-8.737,-8.532,-8.375,-8.261,-8.127,-7.916,-7.637,-7.353,-7.134,-7.009,-6.968,-6.988,-7.046,-7.120,
--7.184,-7.211,-7.195,-7.153,-7.109,-7.073,-7.037,-6.993,-6.945,-6.909,-6.894,-6.898,-6.906,-6.910,-6.907,-6.901,
--6.886,-6.856,-6.817,-6.790,-6.802,-6.868,-6.975,-7.092,-7.189,-7.260,-7.321,-7.401,-7.512,-7.652,-7.796,-7.920,
--8.008,-8.056,-8.075,-8.080,-8.090,-8.118,-8.169,-8.240,-8.318,-8.395,-8.473,-8.571,-8.706,-8.883,-9.085,-9.288,
--9.476,-9.645,-9.803,-9.951,-10.083,-10.198,-10.305,-10.423,-10.563,-10.717,-10.871,-11.021,-11.176,-11.350,-11.540,-11.722,
--11.877,-12.006,-12.135,-12.290,-12.478,-12.689,-12.915,-13.157,-13.418,-13.689,-13.945,-14.174,-14.392,-14.633,-14.920,-15.240,
--15.556,-15.844,-16.111,-16.385,-16.684,-16.997,-17.301,-17.579,-17.836,-18.085,-18.327,-18.559,-18.785,-19.020,-19.276,-19.544,
--19.797,-20.019,-20.222,-20.439,-20.685,-20.944,-21.177,-21.367,-21.532,-21.707,-21.909,-22.119,-22.309,-22.478,-22.657,-22.878,
--23.139,-23.408,-23.657,-23.892,-24.144,-24.434,-24.740,-25.020,-25.249,-25.449,-25.664,-25.913,-26.177,-26.418,-26.624,-26.826,
--27.066,-27.353,-27.651,-27.915,-28.130,-28.325,-28.533,-28.759,-28.975,-29.154,-29.302,-29.457,-29.646,-29.853,-30.026,-30.127,
--30.162,-30.176,-30.215,-30.286,-30.360,-30.403,-30.410,-30.399,-30.395,-30.410,-30.439,-30.475,-30.505,-30.514,-30.483,-30.410,
--30.315,-30.228,-30.160,-30.090,-29.987,-29.849,-29.722,-29.661,-29.670,-29.686,-29.626,-29.472,-29.290,-29.177,-29.158,-29.157,
--29.073,-28.899,-28.771,-28.876,-29.285,-29.840,-30.205,-30.049,-29.236,-27.903,-26.381,-25.035,-24.110,-23.645,-23.495,-23.421,
--23.214,-22.794,-22.231,-21.676,-21.243,-20.942,-20.690,-20.403,-20.071,-19.758,-19.531,-19.390,-19.272,-19.105,-18.866,-18.590,
--18.329,-18.110,-17.926,-17.748,-17.543,-17.278,-16.938,-16.554,-16.205,-15.989,-15.944,-16.001,-16.022,-15.893,-15.604,-15.246,
--14.916,-14.636,-14.354,-14.022,-13.664,-13.362,-13.174,-13.074,-12.971,-12.789,-12.521,-12.205,-11.866,-11.499,-11.121,-10.811,
--10.674,-10.721,-10.792,-10.631,-10.103,-9.379,-8.902,-9.116,-10.136,-11.619,-12.956,-13.647,-13.595,-13.102,-12.611,-12.407,
--12.496,-12.723,-12.966,-13.240,-13.632,-14.152,-14.669,-14.987,-15.003,-14.807,-14.633,-14.712,-15.136,-15.815,-16.557,-17.180,
--17.603,-17.859,-18.061,-18.329,-18.734,-19.271,-19.883,-20.506,-21.115,-21.731,-22.380,-23.057,-23.714,-24.306,-24.827,-25.308,
--25.776,-26.203,-26.510,-26.629,-26.558,-26.377,-26.201,-26.117,-26.161,-26.321,-26.567,-26.869,-27.205,-27.574,-27.996,-28.488,
--29.010,-29.435,-29.601,-29.429,-29.039,-28.729,-28.809,-29.384,-30.253,-31.025,-31.375,-31.260,-30.935,-30.767,-30.995,-31.599,
--32.370,-33.076,-33.609,-33.994,-34.306,-34.572,-34.756,-34.822,-34.796,-34.773,-34.846,-35.025,-35.226,-35.325,-35.248,-35.015,
--34.713,-34.429,-34.209,-34.056,-33.963,-33.918,-33.899,-33.866,-33.787,-33.682,-33.627,-33.711,-33.969,-34.339,-34.710,-34.990,
--35.169,-35.297,-35.431,-35.590,-35.757,-35.914,-36.063,-36.210,-36.349,-36.465,-36.553,-36.627,-36.699,-36.750,-36.726,-36.578,
--36.311,-35.988,-35.695,-35.492,-35.393,-35.378,-35.406,-35.414,-35.316,-35.037,-34.577,-34.035,-33.550,-33.196,-32.911,-32.559,
--32.079,-31.581,-31.282,-31.305,-31.517,-31.580,-31.185,-30.306,-29.240,-28.402,-28.037,-28.072,-28.223,-28.229,-28.015,-27.687,
--27.380,-27.152,-26.981,-26.835,-26.730,-26.691,-26.696,-26.667,-26.533,-26.297,-26.034,-25.813,-25.625,-25.392,-25.062,-24.688,
--24.416,-24.373,-24.554,-24.801,-24.900,-24.722,-24.294,-23.765,-23.290,-22.938,-22.679,-22.443,-22.192,-21.946,-21.751,-21.626,
--21.537,-21.425,-21.264,-21.086,-20.962,-20.936,-20.984,-21.018,-20.950,-20.755,-20.481,-20.216,-20.026,-19.924,-19.880,-19.840,
--19.752,-19.563,-19.231,-18.727,-18.050,-17.217,-16.243,-15.139,-13.933,-12.692,-11.528,-10.554,-9.824,-9.310,-8.931,-8.608,
--8.298,-7.982,-7.634,-7.198,-6.617,-5.853,-4.901,-3.772,-2.479,-1.040,.503,2.093,3.678,5.238,6.768,8.238,
-9.570,10.680,11.552,12.280,13.012,13.844,14.737,15.551,16.154,16.531,16.790,17.066,17.415,17.790,18.109,18.344,
-18.555,18.840,19.264,19.820,20.451,21.101,21.737,22.357,22.972,23.603,24.274,25.001,25.774,26.551,27.280,27.940,
-28.560,29.201,29.905,30.663,31.422,32.135,32.787,33.401,34.003,34.609,35.231,35.890,36.619,37.429,38.280,39.100,
-39.837,40.504,41.173,41.908,42.698,43.459,44.097,44.589,45.005,45.454,46.002,46.635,47.290,47.918,48.513,49.099,
-49.688,50.260,50.789,51.271,51.736,52.226,52.766,53.355,53.975,54.610,55.248,55.878,56.482,57.046,57.571,58.078,
-58.598,59.150,59.732,60.317,60.869,61.352,61.745,62.043,62.257,62.396,62.461,62.452,62.382,62.289,62.222,62.216,
-62.265,62.328,62.362,62.353,62.320,62.288,62.265,62.234,62.174,62.073,61.934,61.770,61.605,61.482,61.455,61.545,
-61.697,61.780,61.661,61.300,60.799,60.337,60.036,59.861,59.654,59.265,58.689,58.090,57.687,57.606,57.803,58.108,
-58.340,58.399,58.281,58.035,57.715,57.367,57.032,56.743,56.511,56.313,56.108,55.864,55.561,55.177,54.665,53.982,
-53.139,52.243,51.473,50.980,50.804,50.865,51.057,51.350,51.824,52.571,53.558,54.564,55.259,55.373,54.861,53.934,
-52.968,52.340,52.269,52.748,53.558,54.383,54.963,55.230,55.319,55.455,55.772,56.205,56.552,56.644,56.498,56.296,
-56.227,56.319,56.426,56.369,56.099,55.734,55.443,55.294,55.206,55.032,54.685,54.184,53.615,53.045,52.493,51.952,
-51.426,50.947,50.559,50.306,50.233,50.362,50.665,51.048,51.390,51.620,51.767,51.915,52.108,53.005,53.232,53.345,
-53.294,53.110,52.874,52.630,52.337,51.930,51.410,50.871,50.421,50.090,49.823,49.563,49.323,49.148,49.030,48.871,
-48.568,48.125,47.663,47.293,46.995,46.642,46.171,45.700,45.458,45.557,45.848,46.038,45.981,45.860,46.052,46.781,
-47.869,48.835,49.261,49.098,48.669,48.371,48.386,48.610,48.826,48.910,48.886,48.845,48.836,48.858,48.891,48.903,
-48.800,48.406,47.563,46.288,44.863,43.707,43.127,43.112,43.368,43.543,43.488,43.316,43.253,43.420,43.722,43.936,
-43.880,43.534,43.017,42.480,42.020,41.677,41.483,41.489,41.742,42.234,42.883,43.564,44.156,44.566,44.727,44.607,
-44.248,43.787,43.432,43.348,43.560,43.931,44.260,44.411,44.379,44.243,44.063,43.828,43.493,43.052,42.569,42.128,
-41.767,41.449,41.109,40.711,40.272,39.827,39.397,38.983,38.583,38.198,37.817,37.387,36.809,35.983,34.871,33.546,
-32.187,31.028,30.261,29.940,29.939,30.012,29.922,29.572,29.034,28.442,27.858,27.219,26.423,25.471,24.511,23.747,
-23.272,23.009,22.792,22.527,22.256,22.088,22.057,22.064,21.960,21.665,21.232,20.789,20.438,20.211,20.098,20.090,
-20.174,20.299,20.359,20.245,19.910,19.387,18.749,18.053,17.335,16.660,16.149,15.939,16.097,16.558,17.174,17.809,
-18.423,19.047,19.698,20.308,20.751,20.939,20.907,20.800,20.759,20.809,20.826,20.634,20.138,19.389,18.525,17.638,
-16.679,15.511,14.048,12.370,10.689,9.175,7.784,6.262,4.336,1.958,-.597,-2.875,-4.517,-5.465,-5.949,-6.299,
--6.738,-7.299,-7.886,-8.400,-8.809,-9.136,-9.412,-9.650,-9.856,-10.055,-10.291,-10.608,-11.025,-11.518,-12.040,-12.542,
--13.013,-13.489,-14.043,-14.733,-15.550,-16.411,-17.197,-17.831,-18.326,-18.762,-19.222,-19.731,-20.262,-20.782,-21.294,-21.829,
--22.406,-23.002,-23.572,-24.093,-24.586,-25.083,-25.583,-26.032,-26.364,-26.554,-26.647,-26.736,-26.902,-27.186,-27.581,-28.060,
--28.594,-29.160,-29.741,-30.321,-30.874,-31.358,-31.722,-31.939,-32.045,-32.141,-32.344,-32.714,-33.221,-33.779,-34.332,-34.898,
--35.540,-36.287,-37.088,-37.855,-38.526,-39.117,-39.677,-40.230,-40.749,-41.202,-41.597,-41.988,-42.413,-42.851,-43.224,-43.451,
--43.477,-43.263,-42.762,-41.956,-40.932,-39.913,-39.189,-38.942,-39.131,-39.515,-39.824,-39.908,-39.781,-39.540,-39.275,-39.065,
--39.009,-39.219,-39.733,-40.434,-41.080,-41.461,-41.545,-41.477,-41.420,-41.400,-41.294,-40.974,-40.463,-39.948,-39.640,-39.623,
--39.825,-40.116,-40.420,-40.728,-41.046,-41.358,-41.652,-41.977,-42.418,-43.011,-43.670,-44.226,-44.551,-44.663,-44.693,-44.760,
--44.878,-44.990,-45.085,-45.251,-45.608,-46.167,-46.779,-47.249,-47.510,-47.711,-48.097,-48.789,-49.641,-50.296,-50.412,-49.900,
--49.002,-48.189,-47.924,-48.434,-49.586,-50.954,-52.049,-52.614,-52.823,-53.210,-54.363,-56.537,-59.457,-62.455,-64.843,-66.263,
--66.795,-66.789,-66.597,-66.400,-66.220,-66.023,-65.804,-65.592,-65.413,-65.277,-65.188,-65.147,-65.131,-65.083,-64.934,-64.654,
--64.270,-63.809,-63.225,-62.397,-61.230,-59.802,-58.404,-57.419,-57.107,-57.444,-58.144,-58.819,-59.176,-59.115,-58.710,-58.138,
--57.585,-57.191,-56.997,-56.937,-56.880,-56.724,-56.463,-56.178,-55.950,-55.765,-55.520,-55.118,-54.583,-54.058,-53.695,-53.518,
--53.393,-53.126,-52.614,-51.918,-51.207,-50.635,-50.252,-49.998,-49.757,-49.421,-48.924,-48.248,-47.430,-46.550,-45.709,-44.986,
--44.410,-43.967,-43.619,-43.329,-43.057,-42.749,-42.354,-41.856,-41.287,-40.703,-40.120,-39.492,-38.744,-37.849,-36.863,-35.893,
--35.014,-34.219,-33.449,-32.662,-31.872,-31.117,-30.403,-29.679,-28.886,-28.014,-27.113,-26.246,-25.425,-24.614,-23.777,-22.917,
--22.069,-21.238,-20.380,-19.428,-18.361,-17.222,-16.077,-14.949,-13.801,-12.594,-11.347,-10.138,-9.038,-8.039,-7.067,-6.051,
--5.000,-4.005,-3.167,-2.530,-2.066,-1.711,-1.410,-1.129,-.835,-.482,-.037,.506,1.113,1.736,2.338,2.905,
-3.438,3.940,4.414,4.862,5.284,5.690,6.109,6.585,7.151,7.803,8.506,9.238,10.044,11.016,12.209,13.545,
-14.838,15.926,16.819,17.691,18.705,19.818,20.767,21.282,21.331,21.177,21.161,21.436,21.880,22.280,22.587,22.971,
-23.621,24.491,25.264,25.586,25.360,24.834,24.395,24.281,24.454,24.719,24.941,25.138,25.397,25.731,26.038,26.200,
-26.205,26.163,26.200,26.339,26.478,26.487,26.322,26.063,25.842,25.748,25.777,25.871,25.995,26.167,26.423,26.754,
-27.086,27.336,27.494,27.645,27.892,28.251,28.624,28.886,29.030,29.211,29.636,30.394,31.380,32.369,33.164,33.648,
-33.724,33.264,32.198,30.715,29.323,28.621,28.853,29.631,30.123,29.628,28.106,26.215,24.813,24.332,24.522,24.724,
-24.380,23.350,21.836,20.089,18.205,16.157,13.957,11.724,9.627,7.778,6.225,5.027,4.313,4.236,4.856,6.073,
-7.665,9.394,11.070,12.558,13.759,14.618,15.147,15.430,15.562,15.598,15.538,15.369,15.112,14.817,14.525,14.237,
-13.931,13.597,13.253,12.922,12.601,12.264,11.887,11.465,11.004,10.503,9.956,9.376,8.800,8.267,7.781,7.307,
-6.806,6.277,5.760,5.295,4.882,4.485,4.070,3.627,3.164,2.687,2.205,1.742,1.340,1.022,.755,.463,
-.084,-.365,-.814,-1.207,-1.564,-1.953,-2.408,-2.885,-3.300,-3.618,-3.881,-4.156,-4.463,-4.761,-5.003,-5.191,
--5.360,-5.521,-5.647,-5.718,-5.780,-5.916,-6.155,-6.430,-6.648,-6.800,-6.993,-7.332,-7.793,-8.260,-8.697,-9.256,
--10.134,-11.246,-12.076,-11.955,-10.634,-8.648,-7.094,-6.899,-8.169,-10.149,-11.793,-12.477,-12.264,-11.628,-10.973,-10.413,
--9.897,-9.448,-9.204,-9.269,-9.566,-9.903,-10.161,-10.397,-10.742,-11.207,-11.623,-11.769,-11.565,-11.134,-10.680,-10.339,
--10.128,-10.014,-9.989,-10.058,-10.187,-10.284,-10.272,-10.163,-10.042,-9.988,-10.003,-10.031,-10.030,-10.015,-10.022,-10.040,
--10.016,-9.913,-9.772,-9.680,-9.693,-9.777,-9.849,-9.860,-9.834,-9.817,-9.813,-9.777,-9.674,-9.542,-9.469,-9.504,
--9.598,-9.638,-9.549,-9.359,-9.158,-9.007,-8.878,-8.697,-8.423,-8.094,-7.796,-7.593,-7.486,-7.442,-7.429,-7.441,
--7.477,-7.523,-7.553,-7.549,-7.520,-7.487,-7.465,-7.451,-7.434,-7.409,-7.381,-7.357,-7.337,-7.321,-7.307,-7.293,
--7.273,-7.238,-7.190,-7.147,-7.141,-7.195,-7.306,-7.441,-7.559,-7.637,-7.683,-7.730,-7.813,-7.945,-8.108,-8.265,
--8.375,-8.423,-8.425,-8.415,-8.424,-8.466,-8.537,-8.624,-8.714,-8.798,-8.872,-8.941,-9.021,-9.135,-9.292,-9.484,
--9.690,-9.890,-10.081,-10.267,-10.444,-10.598,-10.716,-10.804,-10.889,-10.993,-11.116,-11.239,-11.349,-11.457,-11.587,-11.747,
--11.920,-12.077,-12.210,-12.340,-12.500,-12.705,-12.949,-13.218,-13.507,-13.813,-14.124,-14.407,-14.641,-14.837,-15.038,-15.286,
--15.586,-15.906,-16.213,-16.500,-16.785,-17.084,-17.389,-17.676,-17.933,-18.169,-18.405,-18.649,-18.898,-19.148,-19.403,-19.668,
--19.935,-20.181,-20.395,-20.592,-20.806,-21.053,-21.311,-21.539,-21.717,-21.870,-22.044,-22.263,-22.509,-22.745,-22.952,-23.147,
--23.360,-23.600,-23.847,-24.084,-24.318,-24.579,-24.876,-25.186,-25.463,-25.686,-25.881,-26.094,-26.347,-26.614,-26.850,-27.037,
--27.211,-27.418,-27.677,-27.952,-28.194,-28.386,-28.562,-28.771,-29.021,-29.272,-29.475,-29.620,-29.748,-29.911,-30.115,-30.316,
--30.455,-30.516,-30.534,-30.563,-30.629,-30.713,-30.773,-30.787,-30.762,-30.726,-30.699,-30.695,-30.713,-30.749,-30.783,-30.786,
--30.737,-30.645,-30.542,-30.458,-30.392,-30.317,-30.212,-30.096,-30.007,-29.962,-29.923,-29.831,-29.671,-29.494,-29.379,-29.343,
--29.310,-29.181,-28.946,-28.743,-28.768,-29.113,-29.644,-30.041,-29.969,-29.277,-28.073,-26.658,-25.374,-24.454,-23.947,-23.734,
--23.602,-23.362,-22.937,-22.393,-21.874,-21.492,-21.244,-21.026,-20.730,-20.336,-19.926,-19.612,-19.434,-19.338,-19.221,-19.018,
--18.733,-18.431,-18.176,-17.994,-17.858,-17.701,-17.451,-17.071,-16.604,-16.173,-15.914,-15.888,-16.028,-16.173,-16.181,-16.010,
--15.717,-15.381,-15.031,-14.655,-14.265,-13.926,-13.711,-13.616,-13.540,-13.363,-13.061,-12.725,-12.464,-12.283,-12.070,-11.727,
--11.313,-11.041,-11.096,-11.425,-11.712,-11.604,-11.024,-10.292,-9.926,-10.265,-11.202,-12.251,-12.901,-12.960,-12.634,-12.302,
--12.205,-12.308,-12.422,-12.442,-12.461,-12.671,-13.153,-13.766,-14.253,-14.453,-14.447,-14.495,-14.836,-15.506,-16.332,-17.067,
--17.553,-17.792,-17.898,-18.007,-18.207,-18.529,-18.969,-19.497,-20.075,-20.665,-21.243,-21.804,-22.350,-22.879,-23.392,-23.896,
--24.407,-24.928,-25.422,-25.820,-26.056,-26.115,-26.045,-25.933,-25.869,-25.906,-26.058,-26.312,-26.644,-27.040,-27.510,-28.070,
--28.693,-29.259,-29.572,-29.473,-28.989,-28.404,-28.143,-28.518,-29.498,-30.697,-31.599,-31.883,-31.612,-31.156,-30.926,-31.123,
--31.662,-32.307,-32.856,-33.259,-33.577,-33.878,-34.156,-34.349,-34.417,-34.405,-34.418,-34.547,-34.789,-35.046,-35.190,-35.145,
--34.931,-34.624,-34.307,-34.035,-33.847,-33.780,-33.851,-34.022,-34.192,-34.244,-34.134,-33.939,-33.815,-33.893,-34.187,-34.593,
--34.974,-35.248,-35.417,-35.534,-35.651,-35.787,-35.938,-36.094,-36.240,-36.357,-36.430,-36.464,-36.481,-36.489,-36.459,-36.331,
--36.059,-35.654,-35.199,-34.800,-34.540,-34.446,-34.493,-34.613,-34.708,-34.671,-34.438,-34.030,-33.557,-33.142,-32.828,-32.545,
--32.191,-31.763,-31.407,-31.316,-31.538,-31.870,-31.952,-31.515,-30.593,-29.510,-28.669,-28.289,-28.296,-28.429,-28.451,-28.282,
--27.992,-27.690,-27.443,-27.263,-27.146,-27.093,-27.083,-27.065,-26.975,-26.791,-26.553,-26.325,-26.130,-25.921,-25.637,-25.280,
--24.942,-24.747,-24.746,-24.858,-24.918,-24.785,-24.439,-23.985,-23.577,-23.313,-23.195,-23.145,-23.083,-22.976,-22.853,-22.758,
--22.710,-22.681,-22.626,-22.530,-22.440,-22.436,-22.567,-22.791,-22.991,-23.039,-22.883,-22.569,-22.208,-21.892,-21.650,-21.448,
--21.229,-20.943,-20.556,-20.044,-19.397,-18.623,-17.745,-16.784,-15.744,-14.627,-13.460,-12.321,-11.318,-10.528,-9.958,-9.544,
--9.194,-8.842,-8.464,-8.062,-7.630,-7.138,-6.537,-5.769,-4.785,-3.569,-2.153,-.610,.978,2.568,4.155,5.726,
-7.209,8.463,9.376,9.966,10.418,10.986,11.814,12.839,13.838,14.602,15.094,15.448,15.846,16.360,16.911,17.362,
-17.652,17.858,18.134,18.595,19.245,19.990,20.717,21.366,21.948,22.519,23.135,23.826,24.583,25.367,26.126,26.821,
-27.452,28.062,28.703,29.404,30.145,30.877,31.562,32.199,32.814,33.435,34.074,34.741,35.457,36.251,37.123,38.023,
-38.874,39.622,40.292,40.963,41.703,42.496,43.249,43.871,44.350,44.771,45.238,45.800,46.416,47.014,47.562,48.092,
-48.655,49.259,49.860,50.405,50.896,51.389,51.947,52.584,53.255,53.902,54.500,55.074,55.660,56.266,56.865,57.425,
-57.939,58.441,58.973,59.554,60.161,60.745,61.256,61.663,61.957,62.143,62.225,62.213,62.129,62.015,61.924,61.894,
-61.924,61.975,61.997,61.966,61.901,61.837,61.789,61.743,61.671,61.571,61.468,61.387,61.322,61.248,61.159,61.092,
-61.100,61.182,61.244,61.145,60.808,60.298,59.785,59.420,59.212,59.024,58.703,58.217,57.702,57.362,57.309,57.488,
-57.713,57.805,57.692,57.418,57.076,56.742,56.443,56.186,55.983,55.845,55.763,55.697,55.581,55.347,54.942,54.339,
-53.551,52.647,51.750,51.009,50.532,50.345,50.399,50.633,51.036,51.643,52.471,53.437,54.349,54.972,55.140,54.839,
-54.214,53.514,53.006,52.890,53.222,53.888,54.642,55.236,55.554,55.677,55.791,56.025,56.342,56.588,56.655,56.604,
-56.614,56.810,57.112,57.286,57.132,56.665,56.103,55.689,55.498,55.408,55.231,54.872,54.380,53.867,53.405,52.989,
-52.580,52.150,51.690,51.207,50.739,50.373,50.236,50.414,50.872,51.459,52.002,52.417,52.732,53.005,52.476,52.613,
-52.716,52.769,52.789,52.815,52.828,52.734,52.434,51.925,51.320,50.753,50.267,49.807,49.321,48.846,48.479,48.258,
-48.101,47.873,47.511,47.074,46.658,46.285,45.908,45.534,45.288,45.320,45.615,45.940,46.037,45.916,45.935,46.528,
-47.779,49.241,50.210,50.243,49.485,48.528,47.949,47.923,48.221,48.508,48.634,48.668,48.736,48.863,48.992,49.091,
-49.185,49.256,49.153,48.641,47.612,46.248,44.969,44.165,43.942,44.079,44.242,44.246,44.154,44.142,44.290,44.483,
-44.492,44.157,43.489,42.638,41.778,41.013,40.389,39.943,39.734,39.821,40.214,40.857,41.648,42.476,43.217,43.738,
-43.932,43.794,43.468,43.202,43.206,43.516,43.978,44.372,44.575,44.613,44.580,44.502,44.295,43.855,43.180,42.411,
-41.739,41.270,40.970,40.721,40.432,40.091,39.743,39.428,39.153,38.909,38.679,38.436,38.104,37.571,36.737,35.583,
-34.218,32.850,31.716,30.978,30.650,30.578,30.514,30.244,29.706,29.002,28.295,27.666,27.055,26.347,25.520,24.704,
-24.105,23.844,23.866,24.000,24.104,24.150,24.182,24.211,24.161,23.925,23.471,22.879,22.281,21.767,21.351,21.007,
-20.729,20.542,20.458,20.439,20.409,20.296,20.066,19.720,19.266,18.727,18.160,17.657,17.313,17.158,17.144,17.178,
-17.207,17.265,17.437,17.776,18.224,18.637,18.878,18.931,18.924,19.041,19.372,19.818,20.137,20.107,19.675,18.979,
-18.213,17.467,16.673,15.710,14.560,13.339,12.167,10.994,9.552,7.539,4.885,1.890,-.911,-3.052,-4.396,-5.153,
--5.691,-6.290,-7.024,-7.814,-8.544,-9.154,-9.637,-10.004,-10.262,-10.420,-10.513,-10.599,-10.737,-10.967,-11.296,-11.703,
--12.152,-12.614,-13.090,-13.611,-14.223,-14.940,-15.726,-16.510,-17.234,-17.892,-18.523,-19.165,-19.821,-20.463,-21.070,-21.649,
--22.224,-22.797,-23.338,-23.814,-24.233,-24.644,-25.098,-25.586,-26.035,-26.357,-26.520,-26.572,-26.612,-26.728,-26.965,-27.327,
--27.802,-28.372,-29.009,-29.673,-30.318,-30.903,-31.393,-31.764,-32.010,-32.163,-32.297,-32.492,-32.787,-33.156,-33.542,-33.922,
--34.341,-34.881,-35.584,-36.418,-37.299,-38.158,-38.965,-39.707,-40.350,-40.855,-41.226,-41.544,-41.918,-42.399,-42.928,-43.382,
--43.666,-43.758,-43.657,-43.310,-42.617,-41.537,-40.195,-38.882,-37.899,-37.398,-37.313,-37.447,-37.604,-37.662,-37.570,-37.325,
--36.985,-36.693,-36.629,-36.886,-37.382,-37.895,-38.222,-38.334,-38.372,-38.499,-38.741,-38.977,-39.066,-38.994,-38.898,-38.963,
--39.287,-39.835,-40.476,-41.044,-41.384,-41.397,-41.113,-40.727,-40.536,-40.750,-41.312,-41.894,-42.124,-41.884,-41.425,-41.183,
--41.451,-42.179,-43.069,-43.857,-44.520,-45.223,-46.096,-47.059,-47.872,-48.351,-48.546,-48.706,-49.073,-49.668,-50.261,-50.543,
--50.355,-49.849,-49.440,-49.606,-50.613,-52.334,-54.273,-55.814,-56.582,-56.681,-56.649,-57.114,-58.396,-60.316,-62.350,-63.986,
--65.025,-65.607,-65.998,-66.354,-66.635,-66.705,-66.487,-66.029,-65.461,-64.917,-64.498,-64.270,-64.260,-64.432,-64.677,-64.860,
--64.892,-64.774,-64.541,-64.181,-63.610,-62.746,-61.634,-60.480,-59.556,-59.036,-58.889,-58.929,-58.949,-58.836,-58.586,-58.250,
--57.879,-57.518,-57.219,-57.028,-56.944,-56.904,-56.826,-56.669,-56.458,-56.244,-56.034,-55.784,-55.449,-55.060,-54.711,-54.484,
--54.355,-54.190,-53.844,-53.266,-52.544,-51.826,-51.227,-50.765,-50.386,-50.021,-49.616,-49.132,-48.538,-47.822,-47.016,-46.198,
--45.455,-44.840,-44.348,-43.945,-43.590,-43.251,-42.901,-42.507,-42.041,-41.493,-40.871,-40.176,-39.397,-38.519,-37.563,-36.588,
--35.664,-34.817,-34.016,-33.205,-32.370,-31.547,-30.788,-30.095,-29.408,-28.652,-27.798,-26.884,-25.967,-25.076,-24.193,-23.299,
--22.403,-21.531,-20.686,-19.822,-18.883,-17.853,-16.773,-15.691,-14.607,-13.479,-12.280,-11.053,-9.893,-8.864,-7.938,-7.016,
--6.024,-4.985,-4.001,-3.173,-2.531,-2.034,-1.631,-1.294,-1.006,-.721,-.362,.129,.744,1.409,2.044,2.620,
-3.158,3.690,4.219,4.718,5.156,5.536,5.895,6.287,6.758,7.328,7.991,8.726,9.531,10.444,11.522,12.777,
-14.114,15.371,16.433,17.344,18.283,19.388,20.580,21.557,22.027,21.960,21.653,21.514,21.755,22.275,22.821,23.262,
-23.696,24.290,25.026,25.632,25.781,25.378,24.669,24.062,23.833,23.959,24.211,24.383,24.441,24.486,24.616,24.827,
-25.038,25.190,25.291,25.391,25.511,25.610,25.627,25.552,25.451,25.426,25.544,25.789,26.085,26.360,26.601,26.843,
-27.110,27.380,27.601,27.762,27.923,28.161,28.485,28.813,29.062,29.276,29.639,30.327,31.327,32.396,33.232,33.686,
-33.796,33.601,32.973,31.684,29.742,27.635,26.166,25.894,26.619,27.410,27.235,25.705,23.347,21.167,19.895,19.527,
-19.469,19.084,18.118,16.729,15.203,13.687,12.176,10.648,9.180,7.917,6.973,6.396,6.219,6.491,7.247,8.426,
-9.854,11.316,12.654,13.805,14.750,15.467,15.933,16.161,16.222,16.197,16.124,15.985,15.753,15.439,15.088,14.735,
-14.373,13.980,13.552,13.120,12.714,12.335,11.953,11.539,11.085,10.594,10.067,9.500,8.910,8.335,7.801,7.290,
-6.759,6.193,5.641,5.181,4.839,4.550,4.208,3.760,3.245,2.747,2.307,1.900,1.484,1.060,.666,.320,
--.011,-.377,-.775,-1.151,-1.465,-1.754,-2.114,-2.592,-3.121,-3.576,-3.886,-4.106,-4.345,-4.656,-4.985,-5.246,
--5.415,-5.551,-5.713,-5.898,-6.054,-6.165,-6.277,-6.439,-6.641,-6.837,-7.023,-7.277,-7.668,-8.152,-8.609,-9.012,
--9.536,-10.408,-11.561,-12.456,-12.359,-10.952,-8.772,-7.000,-6.691,-8.025,-10.207,-12.075,-12.894,-12.702,-12.030,-11.360,
--10.826,-10.341,-9.882,-9.582,-9.580,-9.834,-10.140,-10.340,-10.465,-10.676,-11.057,-11.502,-11.802,-11.825,-11.612,-11.305,
--11.009,-10.747,-10.511,-10.329,-10.260,-10.319,-10.443,-10.536,-10.542,-10.481,-10.403,-10.346,-10.322,-10.339,-10.410,-10.515,
--10.596,-10.585,-10.477,-10.349,-10.297,-10.349,-10.441,-10.481,-10.442,-10.376,-10.343,-10.334,-10.287,-10.162,-10.007,-9.918,
--9.944,-10.028,-10.058,-9.970,-9.796,-9.622,-9.486,-9.348,-9.139,-8.846,-8.535,-8.293,-8.156,-8.091,-8.040,-7.974,
--7.910,-7.876,-7.874,-7.884,-7.883,-7.868,-7.852,-7.846,-7.848,-7.852,-7.849,-7.836,-7.808,-7.765,-7.713,-7.661,
--7.613,-7.561,-7.499,-7.435,-7.399,-7.426,-7.530,-7.689,-7.853,-7.974,-8.034,-8.050,-8.067,-8.127,-8.251,-8.422,
--8.595,-8.723,-8.783,-8.797,-8.805,-8.845,-8.922,-9.021,-9.121,-9.217,-9.309,-9.392,-9.463,-9.525,-9.599,-9.708,
--9.859,-10.034,-10.214,-10.391,-10.575,-10.766,-10.944,-11.084,-11.178,-11.251,-11.336,-11.448,-11.571,-11.686,-11.793,-11.917,
--12.075,-12.252,-12.419,-12.559,-12.692,-12.854,-13.067,-13.322,-13.601,-13.892,-14.195,-14.502,-14.786,-15.018,-15.203,-15.383,
--15.604,-15.881,-16.190,-16.496,-16.787,-17.076,-17.375,-17.671,-17.940,-18.174,-18.392,-18.624,-18.887,-19.171,-19.461,-19.748,
--20.034,-20.312,-20.562,-20.773,-20.958,-21.152,-21.375,-21.618,-21.847,-22.040,-22.214,-22.407,-22.643,-22.908,-23.167,-23.398,
--23.613,-23.837,-24.081,-24.332,-24.574,-24.811,-25.061,-25.332,-25.608,-25.854,-26.060,-26.250,-26.465,-26.720,-26.991,-27.234,
--27.432,-27.616,-27.830,-28.090,-28.358,-28.582,-28.743,-28.876,-29.043,-29.270,-29.525,-29.750,-29.911,-30.032,-30.165,-30.340,
--30.536,-30.703,-30.811,-30.869,-30.915,-30.975,-31.044,-31.099,-31.122,-31.114,-31.087,-31.053,-31.023,-31.010,-31.023,-31.049,
--31.055,-31.005,-30.898,-30.775,-30.683,-30.636,-30.602,-30.538,-30.435,-30.328,-30.251,-30.192,-30.102,-29.952,-29.774,-29.639,
--29.577,-29.535,-29.419,-29.198,-28.973,-28.920,-29.147,-29.575,-29.952,-29.988,-29.515,-28.566,-27.340,-26.096,-25.052,-24.325,
--23.905,-23.673,-23.464,-23.155,-22.729,-22.273,-21.890,-21.609,-21.357,-21.032,-20.598,-20.129,-19.746,-19.518,-19.413,-19.329,
--19.177,-18.942,-18.668,-18.414,-18.208,-18.030,-17.832,-17.562,-17.200,-16.783,-16.397,-16.141,-16.058,-16.099,-16.151,-16.112,
--15.950,-15.699,-15.397,-15.055,-14.675,-14.305,-14.041,-13.950,-13.981,-13.977,-13.793,-13.442,-13.095,-12.933,-12.957,-12.956,
--12.696,-12.163,-11.640,-11.502,-11.892,-12.551,-12.985,-12.838,-12.194,-11.515,-11.293,-11.666,-12.341,-12.847,-12.914,-12.646,
--12.370,-12.319,-12.441,-12.493,-12.307,-11.979,-11.799,-12.007,-12.592,-13.325,-13.962,-14.446,-14.905,-15.497,-16.240,-16.992,
--17.569,-17.890,-18.008,-18.048,-18.114,-18.257,-18.498,-18.859,-19.350,-19.943,-20.566,-21.142,-21.631,-22.043,-22.418,-22.796,
--23.203,-23.650,-24.131,-24.620,-25.066,-25.412,-25.623,-25.703,-25.692,-25.652,-25.656,-25.768,-26.038,-26.479,-27.066,-27.743,
--28.428,-29.010,-29.345,-29.301,-28.854,-28.190,-27.688,-27.749,-28.542,-29.853,-31.173,-31.995,-32.118,-31.743,-31.305,-31.170,
--31.437,-31.948,-32.467,-32.853,-33.118,-33.347,-33.588,-33.815,-33.968,-34.028,-34.052,-34.129,-34.315,-34.579,-34.822,-34.945,
--34.907,-34.740,-34.504,-34.245,-33.985,-33.758,-33.630,-33.674,-33.901,-34.216,-34.458,-34.505,-34.367,-34.183,-34.125,-34.278,
--34.599,-34.959,-35.248,-35.427,-35.528,-35.609,-35.707,-35.832,-35.967,-36.087,-36.167,-36.199,-36.195,-36.166,-36.107,-35.977,
--35.725,-35.330,-34.832,-34.324,-33.907,-33.651,-33.575,-33.650,-33.814,-33.973,-34.032,-33.934,-33.693,-33.379,-33.054,-32.706,
--32.271,-31.725,-31.177,-30.845,-30.908,-31.326,-31.808,-31.967,-31.572,-30.709,-29.716,-28.961,-28.620,-28.614,-28.727,-28.765,
--28.655,-28.432,-28.165,-27.909,-27.702,-27.570,-27.516,-27.507,-27.472,-27.356,-27.151,-26.900,-26.647,-26.396,-26.117,-25.800,
--25.492,-25.277,-25.202,-25.221,-25.211,-25.058,-24.741,-24.358,-24.050,-23.917,-23.959,-24.092,-24.213,-24.260,-24.231,-24.170,
--24.122,-24.104,-24.097,-24.073,-24.027,-24.003,-24.063,-24.236,-24.468,-24.640,-24.627,-24.389,-23.986,-23.536,-23.135,-22.808,
--22.515,-22.194,-21.801,-21.306,-20.693,-19.956,-19.114,-18.208,-17.277,-16.329,-15.337,-14.283,-13.198,-12.174,-11.309,-10.646,
--10.147,-9.726,-9.303,-8.855,-8.403,-7.972,-7.553,-7.080,-6.456,-5.593,-4.462,-3.106,-1.619,-.082,1.472,3.041,
-4.588,5.986,7.057,7.694,7.982,8.199,8.660,9.509,10.622,11.706,12.522,13.057,13.501,14.075,14.838,15.658,
-16.334,16.772,17.059,17.390,17.916,18.652,19.484,20.268,20.927,21.481,22.012,22.601,23.285,24.050,24.842,25.601,
-26.287,26.901,27.488,28.102,28.780,29.514,30.264,30.989,31.674,32.330,32.980,33.642,34.333,35.073,35.881,36.750,
-37.635,38.475,39.236,39.946,40.673,41.459,42.273,43.026,43.642,44.127,44.567,45.051,45.603,46.173,46.702,47.190,
-47.694,48.269,48.901,49.520,50.067,50.562,51.085,51.708,52.420,53.137,53.776,54.329,54.860,55.443,56.092,56.751,
-57.347,57.857,58.323,58.815,59.373,59.984,60.591,61.130,61.557,61.854,62.017,62.056,61.992,61.873,61.760,61.705,
-61.723,61.778,61.808,61.770,61.668,61.551,61.465,61.411,61.345,61.227,61.064,60.914,60.833,60.821,60.823,60.783,
-60.700,60.625,60.593,60.562,60.430,60.116,59.654,59.177,58.822,58.619,58.468,58.238,57.887,57.506,57.240,57.158,
-57.195,57.200,57.051,56.747,56.379,56.056,55.820,55.645,55.484,55.328,55.200,55.122,55.069,54.970,54.743,54.333,
-53.737,53.007,52.230,51.513,50.952,50.599,50.455,50.484,50.650,50.952,51.402,51.990,52.643,53.242,53.672,53.872,
-53.850,53.658,53.377,53.122,53.033,53.228,53.728,54.408,55.053,55.496,55.721,55.852,56.020,56.246,56.452,56.581,
-56.696,56.935,57.350,57.790,57.977,57.711,57.050,56.272,55.664,55.316,55.109,54.859,54.499,54.100,53.775,53.556,
-53.380,53.156,52.827,52.378,51.808,51.152,50.521,50.098,50.052,50.405,51.000,51.600,52.040,52.306,52.476,51.114,
-51.064,51.071,51.144,51.297,51.542,51.828,52.027,52.005,51.726,51.276,50.770,50.245,49.657,48.979,48.298,47.770,
-47.485,47.376,47.276,47.065,46.746,46.392,46.046,45.705,45.404,45.260,45.376,45.687,45.943,45.937,45.777,45.907,
-46.763,48.326,49.989,50.929,50.705,49.581,48.306,47.547,47.472,47.778,48.072,48.200,48.264,48.403,48.613,48.790,
-48.889,48.995,49.193,49.405,49.380,48.891,47.947,46.829,45.899,45.363,45.184,45.196,45.274,45.402,45.590,45.757,
-45.721,45.308,44.481,43.373,42.195,41.114,40.193,39.427,38.812,38.386,38.214,38.349,38.821,39.627,40.710,41.922,
-43.021,43.754,43.995,43.846,43.590,43.516,43.738,44.147,44.533,44.757,44.822,44.801,44.705,44.446,43.922,43.148,
-42.280,41.517,40.968,40.605,40.326,40.062,39.814,39.616,39.478,39.374,39.278,39.180,39.060,38.848,38.424,37.678,
-36.591,35.262,33.880,32.649,31.715,31.114,30.762,30.485,30.103,29.535,28.838,28.151,27.579,27.105,26.633,26.101,
-25.574,25.222,25.182,25.453,25.892,26.313,26.592,26.692,26.609,26.333,25.859,25.229,24.540,23.899,23.355,22.874,
-22.389,21.864,21.328,20.852,20.499,20.290,20.187,20.115,19.992,19.766,19.435,19.058,18.715,18.460,18.285,18.135,
-17.948,17.718,17.514,17.443,17.585,17.924,18.338,18.662,18.794,18.781,18.781,18.940,19.242,19.480,19.393,18.860,
-17.996,17.065,16.269,15.622,14.997,14.295,13.549,12.849,12.166,11.253,9.765,7.519,4.670,1.662,-1.019,-3.089,
--4.555,-5.613,-6.477,-7.287,-8.092,-8.894,-9.662,-10.335,-10.838,-11.124,-11.208,-11.163,-11.075,-11.010,-11.002,-11.081,
--11.275,-11.600,-12.036,-12.537,-13.058,-13.588,-14.146,-14.757,-15.430,-16.154,-16.915,-17.707,-18.517,-19.321,-20.091,-20.819,
--21.518,-22.203,-22.860,-23.451,-23.946,-24.363,-24.768,-25.214,-25.697,-26.146,-26.483,-26.682,-26.786,-26.871,-26.994,-27.185,
--27.464,-27.859,-28.396,-29.057,-29.773,-30.449,-31.016,-31.462,-31.816,-32.122,-32.412,-32.708,-33.015,-33.323,-33.601,-33.827,
--34.025,-34.277,-34.683,-35.299,-36.100,-37.003,-37.918,-38.779,-39.541,-40.163,-40.630,-40.988,-41.347,-41.810,-42.381,-42.944,
--43.342,-43.499,-43.461,-43.308,-43.030,-42.496,-41.560,-40.225,-38.704,-37.324,-36.355,-35.892,-35.863,-36.104,-36.434,-36.686,
--36.740,-36.571,-36.279,-36.035,-35.962,-36.039,-36.128,-36.105,-35.980,-35.896,-35.999,-36.326,-36.784,-37.251,-37.671,-38.072,
--38.519,-39.057,-39.687,-40.350,-40.902,-41.122,-40.822,-40.028,-39.078,-38.489,-38.608,-39.314,-40.046,-40.197,-39.596,-38.682,
--38.207,-38.707,-40.157,-42.072,-43.922,-45.488,-46.887,-48.302,-49.714,-50.879,-51.543,-51.681,-51.541,-51.470,-51.671,-52.090,
--52.494,-52.675,-52.627,-52.599,-52.969,-54.013,-55.705,-57.669,-59.358,-60.360,-60.646,-60.558,-60.564,-60.940,-61.633,-62.383,
--62.976,-63.410,-63.835,-64.356,-64.901,-65.259,-65.254,-64.874,-64.274,-63.652,-63.151,-62.834,-62.724,-62.830,-63.119,-63.495,
--63.824,-64.015,-64.058,-63.999,-63.861,-63.600,-63.161,-62.555,-61.890,-61.302,-60.842,-60.441,-59.978,-59.392,-58.740,-58.136,
--57.662,-57.313,-57.032,-56.785,-56.579,-56.441,-56.365,-56.312,-56.245,-56.159,-56.069,-55.974,-55.844,-55.647,-55.395,-55.136,
--54.907,-54.688,-54.410,-54.014,-53.509,-52.963,-52.441,-51.955,-51.464,-50.928,-50.355,-49.784,-49.244,-48.710,-48.128,-47.469,
--46.764,-46.085,-45.491,-44.989,-44.540,-44.094,-43.623,-43.121,-42.584,-41.993,-41.326,-40.565,-39.715,-38.798,-37.850,-36.911,
--36.014,-35.168,-34.347,-33.510,-32.639,-31.761,-30.937,-30.208,-29.550,-28.881,-28.121,-27.248,-26.310,-25.373,-24.469,-23.578,
--22.675,-21.760,-20.856,-19.977,-19.099,-18.187,-17.227,-16.241,-15.246,-14.221,-13.121,-11.937,-10.734,-9.620,-8.657,-7.808,
--6.974,-6.093,-5.194,-4.368,-3.669,-3.072,-2.509,-1.951,-1.434,-1.003,-.632,-.225,.303,.949,1.618,2.215,
-2.723,3.204,3.724,4.279,4.809,5.261,5.643,6.015,6.440,6.950,7.545,8.225,8.998,9.888,10.911,12.071,
-13.336,14.629,15.844,16.915,17.872,18.828,19.872,20.940,21.817,22.289,22.340,22.207,22.220,22.558,23.137,23.734,
-24.213,24.627,25.105,25.642,26.028,26.000,25.481,24.681,23.962,23.577,23.527,23.620,23.667,23.619,23.560,23.588,
-23.726,23.913,24.081,24.212,24.338,24.494,24.678,24.854,24.994,25.116,25.278,25.535,25.890,26.279,26.622,26.885,
-27.101,27.325,27.581,27.842,28.077,28.296,28.534,28.795,29.035,29.235,29.497,30.027,30.960,32.184,33.333,34.031,
-34.164,33.904,33.432,32.647,31.195,28.884,26.098,23.749,22.684,22.999,23.863,24.079,22.939,20.691,18.256,16.486,
-15.596,15.176,14.668,13.808,12.707,11.616,10.665,9.830,9.063,8.407,7.976,7.864,8.100,8.676,9.572,10.732,
-12.024,13.257,14.274,15.034,15.598,16.037,16.367,16.559,16.608,16.561,16.482,16.383,16.220,15.952,15.587,15.176,
-14.754,14.315,13.833,13.314,12.803,12.342,11.931,11.533,11.114,10.661,10.170,9.628,9.025,8.388,7.781,7.247,
-6.765,6.263,5.707,5.150,4.694,4.380,4.128,3.803,3.341,2.806,2.320,1.938,1.600,1.216,.762,.304,
--.089,-.423,-.757,-1.124,-1.487,-1.798,-2.079,-2.416,-2.864,-3.368,-3.802,-4.099,-4.316,-4.572,-4.910,-5.251,
--5.488,-5.613,-5.724,-5.918,-6.184,-6.422,-6.572,-6.675,-6.813,-7.003,-7.188,-7.337,-7.526,-7.877,-8.402,-8.979,
--9.496,-10.029,-10.775,-11.747,-12.528,-12.450,-11.162,-9.104,-7.395,-7.100,-8.453,-10.682,-12.584,-13.366,-13.062,-12.269,
--11.555,-11.083,-10.714,-10.338,-10.044,-9.991,-10.197,-10.490,-10.685,-10.759,-10.848,-11.077,-11.418,-11.728,-11.886,-11.884,
--11.785,-11.631,-11.411,-11.119,-10.815,-10.606,-10.556,-10.636,-10.750,-10.811,-10.794,-10.729,-10.665,-10.645,-10.701,-10.839,
--11.014,-11.143,-11.157,-11.067,-10.963,-10.939,-11.000,-11.064,-11.039,-10.916,-10.770,-10.679,-10.646,-10.606,-10.512,-10.391,
--10.313,-10.309,-10.332,-10.301,-10.185,-10.028,-9.894,-9.792,-9.667,-9.466,-9.201,-8.947,-8.774,-8.687,-8.632,-8.555,
--8.451,-8.357,-8.309,-8.304,-8.313,-8.308,-8.284,-8.250,-8.221,-8.206,-8.208,-8.224,-8.242,-8.240,-8.205,-8.138,
--8.055,-7.972,-7.889,-7.804,-7.732,-7.704,-7.750,-7.872,-8.036,-8.195,-8.309,-8.366,-8.382,-8.389,-8.426,-8.520,
--8.673,-8.853,-9.014,-9.127,-9.201,-9.269,-9.357,-9.461,-9.559,-9.639,-9.711,-9.792,-9.881,-9.956,-10.004,-10.043,
--10.105,-10.210,-10.345,-10.480,-10.607,-10.748,-10.922,-11.118,-11.295,-11.424,-11.516,-11.612,-11.742,-11.895,-12.044,-12.175,
--12.306,-12.461,-12.636,-12.806,-12.953,-13.091,-13.256,-13.470,-13.727,-14.001,-14.277,-14.556,-14.838,-15.101,-15.319,-15.492,
--15.657,-15.859,-16.113,-16.397,-16.679,-16.951,-17.230,-17.530,-17.838,-18.124,-18.374,-18.610,-18.865,-19.157,-19.473,-19.790,
--20.097,-20.399,-20.697,-20.975,-21.210,-21.402,-21.578,-21.772,-21.994,-22.227,-22.451,-22.666,-22.889,-23.133,-23.392,-23.646,
--23.883,-24.113,-24.352,-24.607,-24.862,-25.102,-25.322,-25.536,-25.756,-25.979,-26.194,-26.394,-26.593,-26.815,-27.067,-27.328,
--27.572,-27.788,-27.997,-28.232,-28.502,-28.778,-29.010,-29.172,-29.289,-29.415,-29.590,-29.808,-30.024,-30.195,-30.318,-30.426,
--30.556,-30.714,-30.879,-31.022,-31.131,-31.212,-31.275,-31.324,-31.358,-31.381,-31.399,-31.411,-31.407,-31.383,-31.352,-31.332,
--31.321,-31.290,-31.205,-31.066,-30.923,-30.833,-30.809,-30.805,-30.756,-30.644,-30.517,-30.436,-30.410,-30.380,-30.283,-30.119,
--29.959,-29.867,-29.834,-29.782,-29.649,-29.477,-29.391,-29.499,-29.780,-30.070,-30.147,-29.851,-29.150,-28.132,-26.958,-25.817,
--24.881,-24.254,-23.920,-23.744,-23.553,-23.241,-22.824,-22.398,-22.035,-21.716,-21.361,-20.924,-20.448,-20.034,-19.758,-19.606,
--19.502,-19.373,-19.200,-19.002,-18.793,-18.562,-18.287,-17.965,-17.622,-17.294,-17.002,-16.756,-16.554,-16.386,-16.227,-16.049,
--15.837,-15.605,-15.382,-15.170,-14.941,-14.671,-14.394,-14.203,-14.173,-14.267,-14.336,-14.233,-13.960,-13.685,-13.606,-13.744,
--13.881,-13.722,-13.176,-12.490,-12.110,-12.333,-13.043,-13.768,-14.019,-13.673,-13.048,-12.642,-12.731,-13.171,-13.556,-13.579,
--13.276,-12.954,-12.876,-13.010,-13.066,-12.773,-12.154,-11.543,-11.343,-11.740,-12.616,-13.682,-14.705,-15.610,-16.420,-17.143,
--17.723,-18.101,-18.284,-18.349,-18.380,-18.427,-18.510,-18.665,-18.954,-19.416,-20.019,-20.656,-21.216,-21.650,-21.981,-22.272,
--22.573,-22.909,-23.285,-23.702,-24.143,-24.573,-24.941,-25.207,-25.356,-25.405,-25.403,-25.435,-25.606,-26.012,-26.680,-27.530,
--28.393,-29.071,-29.405,-29.325,-28.874,-28.225,-27.670,-27.545,-28.068,-29.188,-30.551,-31.667,-32.187,-32.103,-31.724,-31.449,
--31.511,-31.876,-32.342,-32.723,-32.965,-33.127,-33.280,-33.437,-33.565,-33.637,-33.678,-33.747,-33.891,-34.105,-34.327,-34.484,
--34.536,-34.499,-34.423,-34.344,-34.251,-34.106,-33.897,-33.690,-33.600,-33.716,-34.019,-34.378,-34.634,-34.709,-34.658,-34.613,
--34.686,-34.890,-35.151,-35.373,-35.502,-35.549,-35.562,-35.589,-35.649,-35.726,-35.789,-35.814,-35.796,-35.749,-35.677,-35.555,
--35.337,-34.989,-34.523,-34.008,-33.532,-33.165,-32.940,-32.863,-32.929,-33.110,-33.342,-33.538,-33.622,-33.569,-33.391,-33.093,
--32.644,-32.023,-31.303,-30.694,-30.450,-30.687,-31.256,-31.784,-31.899,-31.459,-30.637,-29.791,-29.228,-29.040,-29.109,-29.237,
--29.279,-29.188,-28.987,-28.721,-28.440,-28.197,-28.039,-27.979,-27.978,-27.962,-27.868,-27.680,-27.418,-27.108,-26.762,-26.398,
--26.064,-25.828,-25.730,-25.728,-25.709,-25.566,-25.282,-24.955,-24.738,-24.733,-24.924,-25.196,-25.420,-25.521,-25.506,-25.434,
--25.366,-25.336,-25.341,-25.358,-25.365,-25.364,-25.378,-25.441,-25.552,-25.657,-25.663,-25.496,-25.156,-24.719,-24.290,-23.929,
--23.627,-23.323,-22.960,-22.504,-21.943,-21.266,-20.471,-19.582,-18.656,-17.750,-16.881,-16.007,-15.073,-14.070,-13.061,-12.148,
--11.397,-10.799,-10.283,-9.777,-9.254,-8.740,-8.275,-7.857,-7.427,-6.885,-6.139,-5.154,-3.961,-2.628,-1.211,.269,
-1.792,3.271,4.537,5.406,5.819,5.941,6.107,6.630,7.595,8.798,9.904,10.687,11.184,11.639,12.297,13.209,
-14.218,15.097,15.731,16.188,16.644,17.241,17.996,18.817,19.589,20.254,20.837,21.404,22.016,22.698,23.439,24.201,
-24.944,25.635,26.268,26.867,27.479,28.145,28.878,29.657,30.439,31.190,31.897,32.572,33.238,33.925,34.659,35.456,
-36.306,37.172,38.013,38.808,39.576,40.360,41.175,41.987,42.725,43.337,43.843,44.312,44.812,45.349,45.883,46.378,
-46.854,47.375,47.979,48.633,49.259,49.806,50.307,50.853,51.503,52.231,52.941,53.558,54.096,54.639,55.262,55.962,
-56.657,57.263,57.759,58.202,58.675,59.220,59.818,60.408,60.927,61.338,61.626,61.788,61.831,61.780,61.681,61.597,
-61.572,61.608,61.661,61.667,61.590,61.446,61.291,61.178,61.108,61.034,60.902,60.708,60.503,60.357,60.296,60.283,
-60.253,60.173,60.058,59.940,59.815,59.634,59.350,58.976,58.593,58.290,58.094,57.948,57.772,57.535,57.282,57.078,
-56.937,56.790,56.545,56.169,55.729,55.345,55.098,54.977,54.901,54.792,54.632,54.464,54.325,54.207,54.049,53.781,
-53.370,52.840,52.254,51.688,51.209,50.864,50.662,50.575,50.559,50.583,50.658,50.819,51.090,51.445,51.822,52.165,
-52.447,52.665,52.805,52.836,52.770,52.705,52.811,53.218,53.904,54.679,55.312,55.685,55.857,55.972,56.127,56.313,
-56.493,56.694,57.001,57.441,57.875,58.047,57.770,57.089,56.258,55.551,55.071,54.736,54.415,54.080,53.822,53.730,
-53.783,53.851,53.802,53.570,53.156,52.570,51.840,51.057,50.407,50.086,50.166,50.520,50.907,51.136,51.174,51.114,
-49.985,49.831,49.782,49.838,50.005,50.290,50.655,50.987,51.152,51.083,50.820,50.435,49.946,49.313,48.536,47.736,
-47.110,46.782,46.700,46.687,46.589,46.382,46.126,45.867,45.603,45.355,45.221,45.300,45.549,45.761,45.758,45.641,
-45.813,46.671,48.179,49.755,50.617,50.354,49.233,47.976,47.223,47.125,47.384,47.626,47.718,47.776,47.936,48.182,
-48.386,48.496,48.613,48.881,49.299,49.661,49.696,49.276,48.498,47.612,46.859,46.381,46.227,46.382,46.764,47.188,
-47.390,47.129,46.316,45.066,43.624,42.228,41.005,39.960,39.050,38.245,37.562,37.064,36.853,37.060,37.805,39.103,
-40.781,42.479,43.784,44.446,44.511,44.282,44.116,44.201,44.481,44.766,44.903,44.875,44.752,44.575,44.313,43.904,
-43.346,42.717,42.113,41.574,41.084,40.625,40.224,39.937,39.782,39.713,39.662,39.598,39.535,39.483,39.375,39.078,
-38.473,37.532,36.333,35.014,33.713,32.549,31.608,30.926,30.448,30.042,29.571,28.993,28.393,27.909,27.614,27.459,
-27.341,27.215,27.154,27.287,27.678,28.247,28.797,29.128,29.121,28.778,28.185,27.464,26.731,26.072,25.519,25.045,
-24.576,24.024,23.339,22.541,21.725,21.018,20.517,20.240,20.114,20.023,19.880,19.669,19.437,19.235,19.077,18.933,
-18.764,18.560,18.351,18.199,18.191,18.408,18.881,19.534,20.179,20.601,20.697,20.549,20.348,20.215,20.067,19.668,
-18.835,17.609,16.246,15.023,14.051,13.260,12.548,11.928,11.506,11.313,11.156,10.650,9.426,7.350,4.597,1.548,
--1.376,-3.860,-5.751,-7.068,-7.977,-8.723,-9.508,-10.384,-11.229,-11.848,-12.112,-12.052,-11.810,-11.531,-11.282,-11.074,
--10.923,-10.897,-11.070,-11.460,-11.991,-12.545,-13.038,-13.467,-13.893,-14.390,-15.003,-15.733,-16.555,-17.428,-18.305,-19.157,
--19.980,-20.795,-21.615,-22.422,-23.163,-23.793,-24.318,-24.794,-25.279,-25.784,-26.265,-26.662,-26.956,-27.177,-27.368,-27.555,
--27.746,-27.965,-28.272,-28.726,-29.330,-29.999,-30.615,-31.100,-31.466,-31.793,-32.165,-32.607,-33.087,-33.544,-33.920,-34.183,
--34.343,-34.453,-34.614,-34.931,-35.459,-36.176,-36.995,-37.816,-38.570,-39.224,-39.771,-40.228,-40.653,-41.125,-41.694,-42.319,
--42.861,-43.173,-43.209,-43.047,-42.807,-42.515,-42.058,-41.277,-40.121,-38.735,-37.408,-36.427,-35.959,-36.009,-36.453,-37.089,
--37.686,-38.048,-38.084,-37.843,-37.469,-37.090,-36.742,-36.385,-35.984,-35.586,-35.296,-35.204,-35.323,-35.614,-36.027,-36.523,
--37.045,-37.516,-37.880,-38.165,-38.447,-38.728,-38.845,-38.566,-37.837,-36.973,-36.544,-36.970,-38.134,-39.376,-39.949,-39.602,
--38.815,-38.481,-39.289,-41.281,-43.919,-46.534,-48.757,-50.613,-52.277,-53.789,-54.976,-55.629,-55.724,-55.488,-55.274,-55.345,
--55.741,-56.300,-56.793,-57.085,-57.231,-57.451,-58.000,-58.979,-60.244,-61.456,-62.285,-62.609,-62.559,-62.396,-62.314,-62.350,
--62.445,-62.574,-62.793,-63.159,-63.612,-63.954,-63.978,-63.622,-63.023,-62.419,-61.992,-61.785,-61.742,-61.806,-61.965,-62.216,
--62.519,-62.791,-62.972,-63.063,-63.117,-63.161,-63.157,-63.036,-62.763,-62.378,-61.948,-61.492,-60.955,-60.264,-59.418,-58.517,
--57.710,-57.102,-56.698,-56.434,-56.238,-56.078,-55.959,-55.884,-55.846,-55.833,-55.842,-55.868,-55.895,-55.884,-55.802,-55.640,
--55.417,-55.153,-54.852,-54.504,-54.121,-53.739,-53.390,-53.063,-52.691,-52.194,-51.553,-50.832,-50.144,-49.565,-49.082,-48.615,
--48.087,-47.486,-46.868,-46.303,-45.806,-45.326,-44.782,-44.123,-43.350,-42.502,-41.619,-40.715,-39.789,-38.847,-37.913,-37.019,
--36.179,-35.373,-34.552,-33.672,-32.727,-31.760,-30.844,-30.039,-29.346,-28.698,-28.002,-27.197,-26.288,-25.340,-24.415,-23.532,
--22.666,-21.783,-20.883,-19.991,-19.127,-18.276,-17.408,-16.509,-15.585,-14.640,-13.644,-12.557,-11.383,-10.203,-9.133,-8.240,
--7.496,-6.815,-6.143,-5.501,-4.932,-4.421,-3.869,-3.181,-2.370,-1.566,-.905,-.408,.036,.558,1.183,1.820,
-2.366,2.812,3.241,3.733,4.280,4.799,5.231,5.605,6.005,6.496,7.076,7.718,8.425,9.247,10.232,11.377,
-12.627,13.917,15.198,16.431,17.574,18.593,19.491,20.301,21.037,21.661,22.105,22.363,22.542,22.811,23.277,23.909,
-24.573,25.162,25.662,26.100,26.435,26.519,26.203,25.487,24.571,23.747,23.220,23.001,22.961,22.964,22.964,22.998,
-23.109,23.291,23.488,23.649,23.774,23.911,24.114,24.397,24.724,25.032,25.294,25.536,25.819,26.178,26.577,26.934,
-27.197,27.388,27.583,27.832,28.120,28.392,28.622,28.833,29.052,29.277,29.513,29.850,30.465,31.470,32.737,33.890,
-34.537,34.557,34.153,33.565,32.730,31.250,28.792,25.585,22.499,20.528,20.061,20.548,20.894,20.248,18.555,16.442,
-14.635,13.427,12.616,11.850,10.981,10.131,9.492,9.134,8.986,8.973,9.101,9.432,9.999,10.771,11.696,12.725,
-13.798,14.805,15.615,16.155,16.468,16.667,16.836,16.964,16.992,16.898,16.733,16.564,16.401,16.192,15.887,15.492,
-15.053,14.597,14.107,13.560,12.977,12.422,11.941,11.523,11.112,10.670,10.196,9.696,9.149,8.530,7.861,7.227,
-6.704,6.280,5.858,5.357,4.802,4.306,3.947,3.677,3.366,2.935,2.433,1.975,1.610,1.271,.860,.369,
--.109,-.483,-.766,-1.054,-1.415,-1.815,-2.174,-2.476,-2.788,-3.180,-3.621,-4.011,-4.291,-4.517,-4.794,-5.146,
--5.474,-5.668,-5.748,-5.849,-6.083,-6.410,-6.692,-6.856,-6.974,-7.170,-7.449,-7.682,-7.773,-7.812,-8.028,-8.548,
--9.257,-9.919,-10.453,-11.011,-11.726,-12.382,-12.427,-11.442,-9.678,-8.095,-7.739,-8.956,-11.089,-12.969,-13.748,-13.400,
--12.529,-11.762,-11.314,-11.024,-10.707,-10.396,-10.268,-10.408,-10.708,-10.971,-11.106,-11.172,-11.281,-11.465,-11.670,-11.832,
--11.941,-12.009,-12.017,-11.912,-11.673,-11.364,-11.097,-10.954,-10.924,-10.938,-10.935,-10.909,-10.885,-10.891,-10.941,-11.042,
--11.195,-11.368,-11.502,-11.543,-11.496,-11.427,-11.404,-11.431,-11.440,-11.359,-11.186,-10.992,-10.853,-10.786,-10.750,-10.703,
--10.648,-10.610,-10.590,-10.550,-10.454,-10.313,-10.181,-10.097,-10.039,-9.946,-9.780,-9.570,-9.383,-9.256,-9.170,-9.075,
--8.952,-8.831,-8.761,-8.759,-8.793,-8.817,-8.802,-8.752,-8.684,-8.617,-8.566,-8.548,-8.568,-8.612,-8.644,-8.635,
--8.577,-8.489,-8.391,-8.292,-8.199,-8.126,-8.099,-8.137,-8.228,-8.343,-8.451,-8.541,-8.613,-8.671,-8.717,-8.766,
--8.845,-8.977,-9.156,-9.342,-9.501,-9.627,-9.743,-9.865,-9.981,-10.063,-10.104,-10.130,-10.175,-10.245,-10.308,-10.341,
--10.356,-10.397,-10.490,-10.612,-10.721,-10.803,-10.896,-11.047,-11.258,-11.482,-11.662,-11.791,-11.909,-12.059,-12.241,-12.418,
--12.564,-12.689,-12.826,-12.986,-13.155,-13.309,-13.455,-13.622,-13.837,-14.092,-14.365,-14.638,-14.910,-15.180,-15.429,-15.632,
--15.792,-15.943,-16.128,-16.361,-16.615,-16.861,-17.098,-17.355,-17.656,-17.988,-18.317,-18.618,-18.903,-19.201,-19.526,-19.861,
--20.183,-20.486,-20.786,-21.093,-21.393,-21.654,-21.860,-22.028,-22.194,-22.393,-22.628,-22.883,-23.141,-23.397,-23.651,-23.903,
--24.149,-24.390,-24.628,-24.869,-25.111,-25.344,-25.557,-25.748,-25.926,-26.107,-26.301,-26.510,-26.730,-26.956,-27.187,-27.422,
--27.660,-27.894,-28.123,-28.352,-28.590,-28.845,-29.106,-29.344,-29.537,-29.681,-29.804,-29.941,-30.108,-30.291,-30.457,-30.586,
--30.685,-30.780,-30.893,-31.031,-31.181,-31.325,-31.446,-31.530,-31.575,-31.594,-31.610,-31.638,-31.676,-31.702,-31.698,-31.669,
--31.632,-31.592,-31.525,-31.406,-31.243,-31.091,-31.011,-31.010,-31.023,-30.972,-30.840,-30.696,-30.626,-30.652,-30.697,-30.661,
--30.512,-30.320,-30.189,-30.158,-30.172,-30.149,-30.070,-30.006,-30.044,-30.198,-30.367,-30.396,-30.161,-29.615,-28.787,-27.759,
--26.661,-25.652,-24.877,-24.393,-24.125,-23.914,-23.624,-23.230,-22.807,-22.432,-22.109,-21.773,-21.369,-20.918,-20.500,-20.181,
--19.960,-19.790,-19.635,-19.494,-19.376,-19.247,-19.037,-18.699,-18.263,-17.833,-17.505,-17.302,-17.163,-16.997,-16.748,-16.417,
--16.044,-15.684,-15.382,-15.169,-15.040,-14.950,-14.844,-14.702,-14.571,-14.524,-14.589,-14.699,-14.739,-14.656,-14.517,-14.456,
--14.530,-14.632,-14.549,-14.161,-13.594,-13.178,-13.205,-13.680,-14.279,-14.583,-14.398,-13.916,-13.550,-13.592,-13.973,-14.336,
--14.352,-14.000,-13.567,-13.368,-13.445,-13.525,-13.270,-12.598,-11.795,-11.329,-11.533,-12.411,-13.697,-15.054,-16.254,-17.208,
--17.907,-18.370,-18.634,-18.765,-18.833,-18.875,-18.898,-18.920,-19.005,-19.246,-19.683,-20.261,-20.851,-21.343,-21.712,-22.008,
--22.296,-22.610,-22.949,-23.310,-23.694,-24.090,-24.458,-24.752,-24.947,-25.059,-25.132,-25.221,-25.399,-25.756,-26.367,-27.228,
--28.201,-29.043,-29.515,-29.507,-29.094,-28.502,-28.019,-27.906,-28.311,-29.210,-30.379,-31.464,-32.139,-32.289,-32.074,-31.812,
--31.769,-32.002,-32.373,-32.700,-32.904,-33.025,-33.143,-33.280,-33.394,-33.442,-33.440,-33.450,-33.530,-33.681,-33.854,-33.989,
--34.058,-34.081,-34.104,-34.164,-34.260,-34.340,-34.328,-34.178,-33.927,-33.695,-33.623,-33.782,-34.126,-34.525,-34.849,-35.050,
--35.168,-35.277,-35.423,-35.590,-35.723,-35.772,-35.731,-35.637,-35.544,-35.489,-35.469,-35.453,-35.412,-35.340,-35.248,-35.138,
--34.976,-34.712,-34.324,-33.849,-33.373,-32.972,-32.678,-32.490,-32.410,-32.465,-32.667,-32.975,-33.282,-33.471,-33.471,-33.275,
--32.894,-32.344,-31.668,-31.005,-30.580,-30.588,-31.026,-31.632,-32.012,-31.881,-31.254,-30.422,-29.756,-29.472,-29.539,-29.766,
--29.952,-29.989,-29.870,-29.633,-29.321,-28.989,-28.702,-28.519,-28.453,-28.462,-28.472,-28.417,-28.266,-28.017,-27.681,-27.286,
--26.892,-26.576,-26.394,-26.327,-26.276,-26.130,-25.859,-25.558,-25.396,-25.498,-25.849,-26.297,-26.644,-26.770,-26.680,-26.480,
--26.292,-26.188,-26.173,-26.209,-26.253,-26.282,-26.298,-26.315,-26.344,-26.364,-26.328,-26.178,-25.892,-25.506,-25.100,-24.744,
--24.451,-24.174,-23.847,-23.428,-22.915,-22.318,-21.636,-20.863,-20.011,-19.133,-18.285,-17.484,-16.691,-15.841,-14.907,-13.929,
--12.998,-12.185,-11.501,-10.897,-10.316,-9.731,-9.157,-8.625,-8.144,-7.678,-7.161,-6.523,-5.723,-4.757,-3.642,-2.395,
--1.032,.393,1.753,2.867,3.589,3.931,4.111,4.455,5.205,6.353,7.640,8.737,9.463,9.901,10.307,10.916,
-11.785,12.788,13.746,14.558,15.248,15.911,16.613,17.355,18.091,18.785,19.438,20.081,20.741,21.425,22.123,22.825,
-23.528,24.233,24.934,25.619,26.287,26.951,27.641,28.378,29.160,29.962,30.743,31.478,32.166,32.832,33.511,34.237,
-35.028,35.875,36.750,37.616,38.450,39.255,40.051,40.845,41.618,42.327,42.943,43.478,43.978,44.487,45.014,45.536,
-46.041,46.552,47.113,47.742,48.402,49.026,49.579,50.096,50.653,51.297,52.000,52.689,53.313,53.893,54.495,55.163,
-55.873,56.547,57.124,57.610,58.067,58.563,59.116,59.692,60.233,60.699,61.073,61.355,61.541,61.626,61.618,61.550,
-61.472,61.427,61.431,61.459,61.460,61.389,61.240,61.052,60.878,60.752,60.658,60.549,60.387,60.181,59.979,59.831,
-59.750,59.704,59.642,59.531,59.365,59.158,58.917,58.648,58.362,58.084,57.839,57.638,57.464,57.294,57.116,56.930,
-56.727,56.473,56.124,55.666,55.149,54.678,54.353,54.197,54.150,54.108,54.001,53.830,53.639,53.461,53.281,53.052,
-52.735,52.339,51.907,51.491,51.132,50.853,50.670,50.575,50.530,50.477,50.374,50.241,50.154,50.191,50.373,50.658,
-50.978,51.295,51.597,51.862,52.036,52.084,52.071,52.174,52.578,53.327,54.256,55.089,55.626,55.873,55.987,56.122,
-56.313,56.507,56.672,56.852,57.102,57.374,57.502,57.320,56.810,56.124,55.464,54.929,54.489,54.084,53.740,53.562,
-53.621,53.855,54.091,54.169,54.027,53.683,53.168,52.493,51.708,50.955,50.418,50.204,50.245,50.348,50.342,50.191,
-49.985,49.537,49.438,49.444,49.519,49.637,49.807,50.032,50.258,50.391,50.362,50.175,49.863,49.427,48.826,48.065,
-47.263,46.620,46.267,46.168,46.153,46.067,45.888,45.687,45.522,45.374,45.215,45.091,45.099,45.264,45.465,45.552,
-45.549,45.727,46.396,47.575,48.848,49.601,49.473,48.630,47.624,46.977,46.836,46.991,47.154,47.221,47.284,47.453,
-47.713,47.955,48.122,48.283,48.561,48.984,49.430,49.695,49.630,49.216,48.562,47.851,47.292,47.066,47.249,47.735,
-48.240,48.414,48.021,47.049,45.683,44.176,42.710,41.360,40.134,39.025,38.027,37.138,36.382,35.867,35.800,36.410,
-37.786,39.740,41.825,43.526,44.521,44.829,44.751,44.640,44.685,44.844,44.951,44.883,44.651,44.357,44.099,43.906,
-43.747,43.577,43.353,43.033,42.576,41.986,41.342,40.779,40.398,40.195,40.076,39.951,39.812,39.713,39.680,39.630,
-39.411,38.905,38.111,37.120,36.028,34.891,33.754,32.709,31.876,31.312,30.935,30.563,30.066,29.483,29.002,28.801,
-28.902,29.160,29.398,29.558,29.729,30.039,30.502,30.961,31.170,30.957,30.326,29.456,28.582,27.869,27.346,26.933,
-26.518,26.018,25.402,24.672,23.857,23.010,22.212,21.540,21.029,20.654,20.358,20.104,19.896,19.751,19.648,19.529,
-19.344,19.105,18.879,18.736,18.716,18.854,19.224,19.913,20.916,22.035,22.932,23.324,23.175,22.709,22.197,21.714,
-21.086,20.065,18.575,16.798,15.030,13.470,12.142,10.998,10.072,9.511,9.429,9.736,10.084,9.987,9.032,7.046,
-4.169,.810,-2.486,-5.227,-7.175,-8.435,-9.357,-10.299,-11.378,-12.422,-13.129,-13.310,-13.026,-12.509,-11.985,-11.548,
--11.182,-10.879,-10.707,-10.771,-11.113,-11.655,-12.239,-12.734,-13.102,-13.401,-13.728,-14.165,-14.748,-15.472,-16.301,-17.179,
--18.060,-18.929,-19.806,-20.720,-21.663,-22.579,-23.394,-24.078,-24.662,-25.209,-25.757,-26.292,-26.769,-27.164,-27.492,-27.785,
--28.057,-28.307,-28.545,-28.821,-29.197,-29.688,-30.234,-30.737,-31.136,-31.459,-31.798,-32.229,-32.759,-33.319,-33.821,-34.209,
--34.471,-34.638,-34.768,-34.941,-35.237,-35.701,-36.315,-37.005,-37.688,-38.316,-38.886,-39.422,-39.943,-40.461,-40.993,-41.542,
--42.085,-42.554,-42.874,-43.012,-42.987,-42.833,-42.530,-41.996,-41.156,-40.042,-38.836,-37.812,-37.225,-37.198,-37.696,-38.540,
--39.467,-40.208,-40.569,-40.494,-40.074,-39.467,-38.808,-38.150,-37.499,-36.873,-36.326,-35.908,-35.621,-35.438,-35.361,-35.440,
--35.702,-36.058,-36.306,-36.271,-35.970,-35.618,-35.446,-35.481,-35.542,-35.476,-35.415,-35.772,-36.905,-38.731,-40.664,-41.998,
--42.440,-42.369,-42.572,-43.690,-45.802,-48.456,-51.055,-53.236,-54.977,-56.413,-57.611,-58.501,-58.990,-59.107,-59.033,-59.013,
--59.218,-59.680,-60.293,-60.883,-61.289,-61.445,-61.427,-61.410,-61.558,-61.907,-62.330,-62.627,-62.667,-62.474,-62.184,-61.947,
--61.849,-61.916,-62.148,-62.527,-62.971,-63.315,-63.372,-63.060,-62.482,-61.883,-61.498,-61.411,-61.537,-61.724,-61.876,-61.989,
--62.102,-62.223,-62.320,-62.367,-62.391,-62.450,-62.571,-62.695,-62.710,-62.523,-62.125,-61.584,-60.974,-60.325,-59.620,-58.843,
--58.026,-57.253,-56.619,-56.179,-55.933,-55.839,-55.839,-55.878,-55.916,-55.937,-55.944,-55.956,-55.980,-56.004,-55.998,-55.934,
--55.801,-55.605,-55.355,-55.061,-54.732,-54.390,-54.065,-53.768,-53.464,-53.087,-52.576,-51.929,-51.221,-50.561,-50.023,-49.593,
--49.185,-48.708,-48.139,-47.533,-46.968,-46.465,-45.952,-45.304,-44.434,-43.355,-42.175,-41.020,-39.970,-39.037,-38.196,-37.421,
--36.691,-35.971,-35.192,-34.287,-33.233,-32.088,-30.963,-29.960,-29.112,-28.372,-27.648,-26.863,-25.997,-25.084,-24.174,-23.293,
--22.430,-21.563,-20.688,-19.830,-19.019,-18.255,-17.499,-16.701,-15.839,-14.928,-13.979,-12.979,-11.897,-10.741,-9.596,-8.587,
--7.793,-7.195,-6.710,-6.269,-5.862,-5.490,-5.086,-4.514,-3.673,-2.613,-1.539,-.667,-.059,.404,.893,1.477,
-2.078,2.588,2.993,3.379,3.830,4.330,4.791,5.160,5.494,5.905,6.456,7.112,7.811,8.560,9.443,10.536,
-11.817,13.179,14.524,15.823,17.091,18.300,19.352,20.147,20.680,21.059,21.421,21.829,22.264,22.689,23.122,23.634,
-24.283,25.054,25.859,26.581,27.092,27.273,27.029,26.349,25.354,24.280,23.377,22.793,22.527,22.479,22.543,22.669,
-22.857,23.106,23.386,23.651,23.869,24.049,24.238,24.487,24.814,25.183,25.530,25.810,26.042,26.297,26.627,27.011,
-27.366,27.624,27.798,27.966,28.187,28.441,28.663,28.825,28.986,29.228,29.576,29.992,30.463,31.072,31.930,33.005,
-34.047,34.723,34.870,34.595,34.095,33.343,31.992,29.667,26.427,22.938,20.145,18.633,18.234,18.196,17.756,16.641,
-15.104,13.571,12.276,11.191,10.219,9.395,8.872,8.765,9.036,9.545,10.184,10.932,11.803,12.760,13.715,14.588,
-15.356,16.022,16.564,16.940,17.143,17.238,17.320,17.419,17.474,17.396,17.165,16.849,16.539,16.260,15.968,15.621,
-15.220,14.799,14.358,13.861,13.282,12.666,12.096,11.613,11.178,10.710,10.178,9.622,9.093,8.582,8.030,7.417,
-6.806,6.291,5.890,5.512,5.052,4.505,3.981,3.585,3.307,3.031,2.657,2.200,1.748,1.348,.951,.485,
--.034,-.504,-.841,-1.083,-1.352,-1.724,-2.149,-2.519,-2.801,-3.070,-3.416,-3.829,-4.209,-4.488,-4.714,-4.989,
--5.329,-5.632,-5.795,-5.854,-5.964,-6.233,-6.593,-6.879,-7.024,-7.147,-7.414,-7.812,-8.138,-8.218,-8.145,-8.235,
--8.713,-9.472,-10.181,-10.642,-10.995,-11.496,-12.089,-12.276,-11.519,-9.869,-8.164,-7.521,-8.484,-10.577,-12.655,-13.740,
--13.636,-12.866,-12.094,-11.619,-11.328,-11.011,-10.654,-10.426,-10.469,-10.741,-11.069,-11.310,-11.446,-11.535,-11.621,-11.709,
--11.799,-11.908,-12.040,-12.148,-12.157,-12.030,-11.813,-11.595,-11.432,-11.309,-11.188,-11.066,-10.985,-10.992,-11.082,-11.207,
--11.325,-11.432,-11.541,-11.648,-11.724,-11.743,-11.714,-11.669,-11.627,-11.570,-11.468,-11.319,-11.154,-11.015,-10.918,-10.856,
--10.817,-10.799,-10.794,-10.778,-10.716,-10.605,-10.483,-10.399,-10.364,-10.336,-10.259,-10.122,-9.968,-9.845,-9.756,-9.658,
--9.515,-9.346,-9.211,-9.159,-9.182,-9.227,-9.243,-9.216,-9.162,-9.102,-9.041,-8.988,-8.956,-8.962,-8.999,-9.035,
--9.037,-8.993,-8.915,-8.820,-8.718,-8.617,-8.535,-8.498,-8.512,-8.560,-8.616,-8.670,-8.741,-8.844,-8.967,-9.082,
--9.173,-9.263,-9.390,-9.566,-9.759,-9.924,-10.049,-10.157,-10.271,-10.379,-10.447,-10.460,-10.445,-10.449,-10.483,-10.522,
--10.538,-10.546,-10.593,-10.704,-10.846,-10.960,-11.028,-11.099,-11.244,-11.482,-11.754,-11.983,-12.141,-12.269,-12.420,-12.604,
--12.786,-12.930,-13.043,-13.164,-13.316,-13.486,-13.647,-13.795,-13.955,-14.155,-14.399,-14.668,-14.946,-15.229,-15.509,-15.763,
--15.968,-16.124,-16.270,-16.449,-16.671,-16.908,-17.130,-17.340,-17.578,-17.873,-18.220,-18.579,-18.917,-19.239,-19.566,-19.908,
--20.251,-20.569,-20.859,-21.141,-21.432,-21.723,-21.985,-22.194,-22.359,-22.516,-22.705,-22.942,-23.218,-23.508,-23.791,-24.060,
--24.318,-24.570,-24.821,-25.064,-25.292,-25.501,-25.691,-25.872,-26.049,-26.229,-26.418,-26.625,-26.856,-27.107,-27.356,-27.588,
--27.799,-28.008,-28.234,-28.477,-28.720,-28.945,-29.151,-29.354,-29.567,-29.779,-29.969,-30.124,-30.257,-30.392,-30.543,-30.699,
--30.838,-30.946,-31.032,-31.118,-31.227,-31.365,-31.519,-31.666,-31.779,-31.843,-31.868,-31.878,-31.897,-31.928,-31.955,-31.957,
--31.935,-31.902,-31.860,-31.791,-31.669,-31.506,-31.358,-31.286,-31.296,-31.322,-31.283,-31.159,-31.022,-30.966,-31.017,-31.092,
--31.074,-30.916,-30.689,-30.520,-30.480,-30.531,-30.580,-30.577,-30.558,-30.593,-30.700,-30.800,-30.774,-30.530,-30.052,-29.367,
--28.513,-27.537,-26.522,-25.590,-24.848,-24.323,-23.951,-23.636,-23.328,-23.038,-22.787,-22.552,-22.268,-21.889,-21.444,-21.013,
--20.660,-20.389,-20.164,-19.972,-19.836,-19.770,-19.722,-19.583,-19.271,-18.815,-18.340,-17.975,-17.752,-17.589,-17.375,-17.056,
--16.658,-16.249,-15.877,-15.569,-15.343,-15.222,-15.203,-15.236,-15.247,-15.199,-15.132,-15.127,-15.232,-15.401,-15.526,-15.531,
--15.431,-15.307,-15.210,-15.113,-14.945,-14.700,-14.488,-14.457,-14.647,-14.903,-14.973,-14.715,-14.254,-13.910,-13.943,-14.316,
--14.704,-14.746,-14.345,-13.740,-13.287,-13.146,-13.155,-12.997,-12.513,-11.879,-11.497,-11.715,-12.598,-13.925,-15.361,-16.636,
--17.626,-18.321,-18.770,-19.044,-19.214,-19.327,-19.389,-19.399,-19.392,-19.462,-19.704,-20.138,-20.672,-21.166,-21.540,-21.816,
--22.076,-22.382,-22.738,-23.115,-23.503,-23.902,-24.292,-24.619,-24.833,-24.938,-25.006,-25.127,-25.357,-25.720,-26.237,-26.927,
--27.753,-28.572,-29.161,-29.340,-29.111,-28.676,-28.343,-28.363,-28.828,-29.657,-30.653,-31.573,-32.204,-32.449,-32.380,-32.206,
--32.151,-32.310,-32.600,-32.855,-32.969,-32.978,-33.000,-33.108,-33.271,-33.395,-33.425,-33.395,-33.380,-33.423,-33.505,-33.579,
--33.627,-33.676,-33.768,-33.918,-34.107,-34.291,-34.423,-34.454,-34.349,-34.117,-33.835,-33.631,-33.629,-33.877,-34.319,-34.825,
--35.271,-35.591,-35.795,-35.928,-36.024,-36.075,-36.046,-35.915,-35.704,-35.475,-35.292,-35.179,-35.107,-35.034,-34.938,-34.826,
--34.700,-34.528,-34.257,-33.872,-33.422,-33.003,-32.686,-32.484,-32.371,-32.343,-32.435,-32.674,-33.009,-33.304,-33.416,-33.277,
--32.924,-32.442,-31.912,-31.414,-31.060,-30.990,-31.271,-31.786,-32.232,-32.280,-31.804,-30.981,-30.189,-29.755,-29.772,-30.086,
--30.445,-30.663,-30.684,-30.532,-30.257,-29.900,-29.518,-29.189,-28.978,-28.898,-28.907,-28.930,-28.906,-28.798,-28.589,-28.281,
--27.912,-27.550,-27.270,-27.098,-26.973,-26.796,-26.515,-26.196,-26.007,-26.108,-26.532,-27.138,-27.683,-27.960,-27.903,-27.606,
--27.241,-26.956,-26.815,-26.795,-26.832,-26.870,-26.883,-26.876,-26.865,-26.850,-26.811,-26.703,-26.492,-26.179,-25.807,-25.440,
--25.114,-24.813,-24.483,-24.074,-23.578,-23.019,-22.425,-21.799,-21.123,-20.393,-19.635,-18.884,-18.151,-17.406,-16.598,-15.705,
--14.760,-13.833,-12.987,-12.240,-11.566,-10.924,-10.289,-9.662,-9.060,-8.497,-7.967,-7.441,-6.875,-6.224,-5.449,-4.526,
--3.449,-2.245,-.990,.188,1.148,1.817,2.263,2.694,3.351,4.357,5.627,6.908,7.944,8.635,9.076,9.473,
-9.998,10.701,11.532,12.418,13.319,14.228,15.132,15.992,16.765,17.441,18.061,18.689,19.369,20.099,20.842,21.559,
-22.240,22.903,23.582,24.293,25.033,25.780,26.520,27.253,27.995,28.758,29.536,30.310,31.054,31.762,32.446,33.138,
-33.867,34.654,35.497,36.374,37.252,38.100,38.908,39.682,40.438,41.175,41.875,42.515,43.087,43.611,44.119,44.633,
-45.158,45.692,46.248,46.841,47.475,48.122,48.739,49.306,49.846,50.411,51.038,51.720,52.418,53.100,53.767,54.441,
-55.131,55.807,56.428,56.972,57.464,57.957,58.484,59.040,59.588,60.089,60.522,60.887,61.181,61.389,61.495,61.496,
-61.415,61.299,61.202,61.160,61.171,61.195,61.167,61.041,60.824,60.570,60.355,60.216,60.129,60.030,59.871,59.662,
-59.461,59.326,59.263,59.216,59.107,58.894,58.599,58.289,58.022,57.818,57.652,57.489,57.310,57.124,56.944,56.764,
-56.546,56.236,55.797,55.240,54.634,54.084,53.684,53.467,53.389,53.359,53.294,53.168,53.006,52.845,52.688,52.498,
-52.237,51.908,51.555,51.231,50.961,50.739,50.558,50.427,50.359,50.330,50.275,50.138,49.927,49.733,49.660,49.745,
-49.936,50.149,50.346,50.551,50.788,51.023,51.193,51.300,51.475,51.913,52.710,53.745,54.737,55.437,55.798,55.966,
-56.126,56.336,56.526,56.611,56.610,56.618,56.696,56.777,56.717,56.423,55.929,55.353,54.788,54.261,53.782,53.419,
-53.282,53.420,53.746,54.063,54.198,54.095,53.796,53.356,52.784,52.087,51.346,50.712,50.305,50.122,50.035,49.912,
-49.722,49.537,49.558,49.536,49.616,49.722,49.785,49.800,49.807,49.819,49.799,49.693,49.486,49.190,48.803,48.293,
-47.651,46.963,46.391,46.057,45.940,45.886,45.751,45.520,45.298,45.178,45.146,45.115,45.044,44.991,45.040,45.190,
-45.356,45.494,45.710,46.191,47.002,47.932,48.583,48.656,48.173,47.460,46.891,46.639,46.631,46.702,46.764,46.847,
-47.007,47.244,47.502,47.743,47.981,48.251,48.553,48.836,49.029,49.075,48.941,48.629,48.201,47.797,47.599,47.711,
-48.060,48.398,48.440,48.024,47.176,46.031,44.714,43.286,41.798,40.342,39.032,37.924,36.971,36.110,35.399,35.086,
-35.492,36.773,38.746,40.925,42.770,43.962,44.524,44.720,44.822,44.939,45.005,44.905,44.600,44.172,43.760,43.474,
-43.346,43.344,43.392,43.393,43.242,42.870,42.303,41.669,41.132,40.776,40.560,40.366,40.124,39.874,39.713,39.660,
-39.603,39.368,38.870,38.174,37.429,36.721,36.020,35.256,34.449,33.726,33.208,32.874,32.551,32.076,31.462,30.927,
-30.727,30.938,31.394,31.813,32.022,32.063,32.116,32.291,32.501,32.500,32.080,31.242,30.216,29.309,28.697,28.333,
-28.016,27.561,26.922,26.189,25.488,24.878,24.330,23.775,23.167,22.507,21.843,21.253,20.824,20.611,20.579,20.600,
-20.521,20.276,19.942,19.666,19.545,19.569,19.708,20.027,20.691,21.801,23.195,24.454,25.137,25.090,24.527,23.827,
-23.204,22.554,21.594,20.142,18.279,16.263,14.325,12.547,10.921,9.494,8.427,7.907,7.990,8.491,9.003,9.021,
-8.111,6.090,3.130,-.274,-3.503,-6.115,-8.045,-9.566,-11.015,-12.504,-13.831,-14.653,-14.769,-14.267,-13.445,-12.604,
--11.899,-11.346,-10.933,-10.708,-10.743,-11.057,-11.564,-12.113,-12.575,-12.903,-13.134,-13.345,-13.620,-14.030,-14.619,-15.382,
--16.266,-17.191,-18.104,-19.010,-19.954,-20.958,-21.985,-22.945,-23.766,-24.448,-25.048,-25.629,-26.199,-26.721,-27.160,-27.525,
--27.858,-28.193,-28.534,-28.865,-29.192,-29.544,-29.945,-30.378,-30.797,-31.172,-31.529,-31.927,-32.403,-32.929,-33.424,-33.821,
--34.106,-34.319,-34.511,-34.723,-34.979,-35.307,-35.728,-36.242,-36.816,-37.405,-37.992,-38.588,-39.212,-39.846,-40.442,-40.953,
--41.374,-41.751,-42.145,-42.581,-43.015,-43.340,-43.411,-43.101,-42.352,-41.238,-39.979,-38.888,-38.275,-38.331,-39.058,-40.262,
--41.613,-42.741,-43.359,-43.354,-42.817,-41.967,-41.026,-40.108,-39.223,-38.354,-37.535,-36.845,-36.325,-35.931,-35.592,-35.305,
--35.168,-35.259,-35.489,-35.581,-35.259,-34.490,-33.570,-32.928,-32.830,-33.246,-33.987,-34.975,-36.345,-38.274,-40.693,-43.188,
--45.240,-46.598,-47.471,-48.360,-49.682,-51.492,-53.514,-55.398,-56.960,-58.209,-59.226,-60.042,-60.630,-60.995,-61.214,-61.412,
--61.683,-62.052,-62.497,-62.976,-63.428,-63.766,-63.902,-63.807,-63.555,-63.278,-63.076,-62.935,-62.755,-62.437,-61.978,-61.475,
--61.073,-60.884,-60.954,-61.258,-61.701,-62.129,-62.368,-62.310,-61.990,-61.586,-61.327,-61.347,-61.617,-61.979,-62.269,-62.415,
--62.442,-62.411,-62.349,-62.250,-62.116,-61.997,-61.966,-62.053,-62.192,-62.242,-62.063,-61.607,-60.939,-60.192,-59.478,-58.834,
--58.224,-57.597,-56.949,-56.344,-55.881,-55.638,-55.626,-55.781,-55.995,-56.171,-56.257,-56.255,-56.199,-56.127,-56.056,-55.984,
--55.896,-55.780,-55.630,-55.443,-55.221,-54.963,-54.671,-54.345,-53.978,-53.561,-53.080,-52.533,-51.937,-51.335,-50.783,-50.309,
--49.894,-49.468,-48.964,-48.369,-47.741,-47.159,-46.634,-46.070,-45.312,-44.265,-42.982,-41.652,-40.477,-39.565,-38.883,-38.326,
--37.790,-37.212,-36.538,-35.701,-34.648,-33.388,-32.026,-30.712,-29.552,-28.554,-27.645,-26.743,-25.825,-24.919,-24.064,-23.254,
--22.442,-21.579,-20.661,-19.745,-18.905,-18.181,-17.537,-16.887,-16.155,-15.319,-14.413,-13.474,-12.499,-11.454,-10.343,-9.254,
--8.325,-7.653,-7.221,-6.916,-6.625,-6.301,-5.935,-5.479,-4.823,-3.878,-2.699,-1.493,-.496,.206,.715,1.210,
-1.773,2.344,2.819,3.186,3.536,3.957,4.429,4.855,5.184,5.490,5.906,6.499,7.215,7.969,8.760,9.693,
-10.861,12.231,13.659,15.013,16.278,17.507,18.694,19.717,20.427,20.808,21.025,21.313,21.790,22.392,22.971,23.456,
-23.924,24.524,25.333,26.272,27.132,27.676,27.729,27.237,26.291,25.101,23.939,23.038,22.512,22.329,22.374,22.531,
-22.737,22.981,23.270,23.596,23.930,24.244,24.525,24.785,25.056,25.358,25.677,25.972,26.213,26.419,26.656,26.976,
-27.360,27.726,28.004,28.200,28.384,28.604,28.826,28.975,29.048,29.155,29.444,29.957,30.588,31.191,31.738,32.346,
-33.127,34.017,34.778,35.176,35.164,34.839,34.219,33.084,31.102,28.167,24.653,21.289,18.737,17.198,16.356,15.689,
-14.828,13.707,12.456,11.221,10.110,9.241,8.777,8.845,9.427,10.349,11.396,12.439,13.465,14.482,15.439,16.238,
-16.813,17.188,17.434,17.605,17.707,17.745,17.761,17.797,17.843,17.817,17.635,17.293,16.872,16.463,16.092,15.723,
-15.326,14.913,14.506,14.086,13.594,13.005,12.380,11.814,11.341,10.888,10.347,9.699,9.038,8.477,8.031,7.607,
-7.112,6.554,6.027,5.587,5.190,4.742,4.222,3.715,3.326,3.057,2.802,2.454,2.006,1.536,1.097,.665,
-.189,-.316,-.767,-1.105,-1.378,-1.693,-2.096,-2.511,-2.829,-3.039,-3.255,-3.587,-4.020,-4.425,-4.710,-4.919,
--5.168,-5.492,-5.793,-5.964,-6.036,-6.168,-6.464,-6.844,-7.126,-7.242,-7.336,-7.603,-8.044,-8.431,-8.553,-8.486,
--8.561,-9.023,-9.762,-10.413,-10.758,-10.959,-11.337,-11.875,-12.027,-11.146,-9.191,-7.035,-5.966,-6.750,-9.035,-11.613,
--13.297,-13.667,-13.131,-12.392,-11.873,-11.560,-11.264,-10.922,-10.660,-10.622,-10.816,-11.121,-11.406,-11.617,-11.760,-11.848,
--11.889,-11.911,-11.963,-12.068,-12.187,-12.244,-12.196,-12.074,-11.942,-11.827,-11.698,-11.521,-11.325,-11.193,-11.193,-11.308,
--11.448,-11.536,-11.564,-11.591,-11.666,-11.781,-11.879,-11.905,-11.852,-11.752,-11.645,-11.549,-11.464,-11.377,-11.283,-11.182,
--11.088,-11.021,-10.988,-10.975,-10.949,-10.886,-10.800,-10.729,-10.701,-10.697,-10.665,-10.571,-10.434,-10.312,-10.240,-10.193,
--10.112,-9.966,-9.785,-9.640,-9.572,-9.562,-9.561,-9.536,-9.499,-9.475,-9.468,-9.461,-9.436,-9.402,-9.381,-9.387,
--9.402,-9.402,-9.374,-9.319,-9.241,-9.138,-9.019,-8.911,-8.847,-8.839,-8.867,-8.903,-8.948,-9.030,-9.171,-9.349,
--9.513,-9.635,-9.735,-9.863,-10.037,-10.224,-10.366,-10.447,-10.499,-10.564,-10.643,-10.697,-10.700,-10.671,-10.655,-10.676,
--10.713,-10.739,-10.766,-10.835,-10.967,-11.123,-11.238,-11.297,-11.357,-11.504,-11.762,-12.067,-12.326,-12.497,-12.619,-12.756,
--12.926,-13.101,-13.243,-13.361,-13.491,-13.655,-13.837,-14.003,-14.146,-14.292,-14.473,-14.699,-14.956,-15.228,-15.509,-15.791,
--16.050,-16.259,-16.420,-16.568,-16.748,-16.969,-17.205,-17.427,-17.638,-17.875,-18.168,-18.512,-18.868,-19.207,-19.529,-19.854,
--20.193,-20.532,-20.847,-21.131,-21.398,-21.663,-21.927,-22.172,-22.386,-22.574,-22.759,-22.969,-23.219,-23.504,-23.805,-24.097,
--24.372,-24.633,-24.893,-25.154,-25.402,-25.615,-25.789,-25.944,-26.111,-26.308,-26.533,-26.772,-27.020,-27.280,-27.550,-27.808,
--28.031,-28.218,-28.403,-28.620,-28.874,-29.126,-29.334,-29.489,-29.628,-29.796,-30.003,-30.221,-30.411,-30.561,-30.691,-30.827,
--30.975,-31.118,-31.238,-31.335,-31.426,-31.529,-31.655,-31.800,-31.947,-32.072,-32.156,-32.197,-32.208,-32.213,-32.223,-32.230,
--32.221,-32.197,-32.167,-32.133,-32.074,-31.968,-31.816,-31.668,-31.583,-31.577,-31.603,-31.587,-31.505,-31.405,-31.363,-31.399,
--31.445,-31.397,-31.219,-30.983,-30.815,-30.785,-30.854,-30.927,-30.951,-30.965,-31.045,-31.205,-31.355,-31.360,-31.135,-30.690,
--30.076,-29.321,-28.407,-27.337,-26.195,-25.142,-24.330,-23.813,-23.541,-23.409,-23.325,-23.223,-23.051,-22.762,-22.345,-21.858,
--21.396,-21.032,-20.769,-20.565,-20.391,-20.265,-20.210,-20.191,-20.108,-19.872,-19.481,-19.032,-18.635,-18.324,-18.044,-17.724,
--17.357,-16.997,-16.691,-16.432,-16.178,-15.924,-15.733,-15.684,-15.783,-15.932,-16.008,-15.976,-15.922,-15.975,-16.170,-16.401,
--16.495,-16.354,-16.031,-15.680,-15.427,-15.288,-15.201,-15.120,-15.068,-15.078,-15.104,-15.019,-14.729,-14.310,-14.006,-14.046,
--14.420,-14.831,-14.889,-14.414,-13.581,-12.772,-12.269,-12.064,-11.929,-11.688,-11.413,-11.384,-11.859,-12.871,-14.214,-15.588,
--16.771,-17.681,-18.345,-18.821,-19.169,-19.430,-19.622,-19.742,-19.796,-19.836,-19.961,-20.253,-20.699,-21.187,-21.583,-21.839,
--22.017,-22.223,-22.514,-22.873,-23.258,-23.659,-24.081,-24.498,-24.846,-25.070,-25.196,-25.323,-25.546,-25.891,-26.319,-26.797,
--27.329,-27.904,-28.436,-28.772,-28.817,-28.645,-28.495,-28.629,-29.159,-29.990,-30.900,-31.675,-32.197,-32.450,-32.500,-32.462,
--32.472,-32.613,-32.866,-33.110,-33.220,-33.167,-33.051,-33.006,-33.091,-33.251,-33.380,-33.424,-33.409,-33.388,-33.379,-33.363,
--33.332,-33.332,-33.430,-33.649,-33.934,-34.191,-34.354,-34.415,-34.402,-34.325,-34.171,-33.948,-33.724,-33.627,-33.773,-34.189,
--34.782,-35.383,-35.841,-36.094,-36.178,-36.169,-36.113,-35.998,-35.788,-35.487,-35.161,-34.902,-34.762,-34.715,-34.692,-34.643,
--34.561,-34.453,-34.296,-34.045,-33.684,-33.267,-32.900,-32.667,-32.579,-32.596,-32.688,-32.864,-33.122,-33.389,-33.525,-33.413,
--33.054,-32.572,-32.127,-31.821,-31.679,-31.706,-31.907,-32.247,-32.579,-32.668,-32.333,-31.607,-30.761,-30.154,-30.000,-30.252,
--30.676,-31.030,-31.197,-31.182,-31.030,-30.767,-30.409,-30.007,-29.652,-29.424,-29.345,-29.370,-29.423,-29.441,-29.382,-29.217,
--28.942,-28.589,-28.226,-27.920,-27.684,-27.468,-27.216,-26.943,-26.765,-26.830,-27.210,-27.827,-28.471,-28.915,-29.029,-28.830,
--28.447,-28.039,-27.721,-27.531,-27.447,-27.420,-27.403,-27.374,-27.333,-27.288,-27.240,-27.167,-27.036,-26.823,-26.528,-26.184,
--25.827,-25.474,-25.109,-24.697,-24.218,-23.682,-23.117,-22.547,-21.974,-21.380,-20.755,-20.105,-19.446,-18.776,-18.072,-17.301,
--16.452,-15.553,-14.652,-13.799,-13.011,-12.280,-11.581,-10.894,-10.213,-9.546,-8.912,-8.324,-7.776,-7.236,-6.651,-5.967,
--5.150,-4.202,-3.167,-2.119,-1.145,-.306,.402,1.064,1.816,2.765,3.911,5.136,6.265,7.176,7.858,8.396,
-8.893,9.413,9.974,10.594,11.316,12.185,13.193,14.261,15.269,16.131,16.844,17.474,18.107,18.790,19.518,20.256,
-20.973,21.660,22.336,23.027,23.751,24.512,25.294,26.074,26.836,27.580,28.320,29.067,29.823,30.578,31.322,32.053,
-32.780,33.522,34.296,35.109,35.953,36.808,37.643,38.443,39.205,39.946,40.677,41.390,42.061,42.668,43.213,43.725,
-44.238,44.773,45.335,45.917,46.520,47.141,47.772,48.392,48.984,49.552,50.129,50.750,51.434,52.168,52.922,53.667,
-54.388,55.074,55.717,56.309,56.854,57.370,57.878,58.393,58.915,59.429,59.920,60.372,60.767,61.078,61.278,61.353,
-61.311,61.189,61.040,60.922,60.872,60.892,60.940,60.944,60.840,60.616,60.323,60.052,59.870,59.772,59.692,59.557,
-59.348,59.119,58.946,58.856,58.791,58.654,58.385,58.021,57.666,57.421,57.308,57.266,57.212,57.098,56.930,56.730,
-56.487,56.148,55.659,55.023,54.319,53.675,53.197,52.925,52.813,52.768,52.703,52.586,52.438,52.304,52.205,52.110,
-51.962,51.728,51.430,51.126,50.864,50.645,50.437,50.225,50.038,49.918,49.866,49.826,49.730,49.570,49.415,49.349,
-49.387,49.459,49.487,49.469,49.493,49.639,49.896,50.165,50.383,50.632,51.106,51.944,53.075,54.226,55.109,55.614,
-55.853,56.016,56.197,56.345,56.371,56.278,56.177,56.176,56.260,56.295,56.138,55.750,55.206,54.612,54.047,53.571,
-53.261,53.205,53.419,53.791,54.119,54.230,54.088,53.769,53.358,52.871,52.282,51.613,50.972,50.485,50.191,50.017,
-49.860,49.688,49.558,49.824,49.745,49.785,49.860,49.859,49.748,49.576,49.404,49.243,49.051,48.800,48.497,48.159,
-47.771,47.307,46.796,46.344,46.061,45.954,45.900,45.751,45.476,45.190,45.040,45.056,45.126,45.119,45.016,44.924,
-44.964,45.160,45.454,45.805,46.247,46.832,47.499,48.050,48.260,48.045,47.533,46.970,46.562,46.371,46.341,46.387,
-46.460,46.554,46.690,46.887,47.151,47.459,47.754,47.972,48.088,48.138,48.179,48.226,48.237,48.165,48.029,47.924,
-47.929,48.018,48.063,47.930,47.569,47.008,46.257,45.253,43.926,42.324,40.659,39.184,38.012,37.050,36.140,35.290,
-34.768,34.954,36.043,37.851,39.895,41.673,42.926,43.702,44.197,44.553,44.761,44.740,44.459,44.005,43.539,43.187,
-42.984,42.891,42.842,42.788,42.683,42.481,42.159,41.750,41.350,41.053,40.871,40.715,40.476,40.135,39.789,39.556,
-39.445,39.322,39.016,38.485,37.870,37.372,37.077,36.885,36.615,36.183,35.673,35.241,34.942,34.675,34.293,33.781,
-33.319,33.150,33.369,33.822,34.208,34.306,34.128,33.866,33.698,33.607,33.387,32.827,31.914,30.878,30.033,29.540,
-29.283,28.977,28.394,27.541,26.642,25.954,25.580,25.412,25.222,24.819,24.160,23.358,22.627,22.170,22.069,22.225,
-22.406,22.391,22.132,21.774,21.525,21.464,21.495,21.497,21.519,21.813,22.610,23.846,25.104,25.867,25.883,25.319,
-24.577,23.941,23.376,22.620,21.458,19.889,18.093,16.245,14.409,12.569,10.748,9.080,7.772,7.002,6.822,7.091,
-7.462,7.450,6.597,4.695,1.916,-1.264,-4.334,-7.019,-9.347,-11.483,-13.469,-15.116,-16.126,-16.313,-15.749,-14.717,
--13.546,-12.477,-11.633,-11.073,-10.829,-10.898,-11.213,-11.654,-12.095,-12.461,-12.732,-12.927,-13.079,-13.245,-13.510,-13.972,
--14.680,-15.598,-16.615,-17.623,-18.583,-19.535,-20.534,-21.577,-22.591,-23.486,-24.231,-24.865,-25.454,-26.020,-26.532,-26.953,
--27.293,-27.615,-27.980,-28.403,-28.849,-29.277,-29.679,-30.073,-30.475,-30.879,-31.276,-31.681,-32.121,-32.598,-33.062,-33.434,
--33.674,-33.823,-33.974,-34.205,-34.526,-34.893,-35.261,-35.626,-36.019,-36.469,-36.988,-37.574,-38.227,-38.938,-39.663,-40.326,
--40.852,-41.235,-41.560,-41.962,-42.523,-43.192,-43.767,-43.976,-43.620,-42.689,-41.404,-40.156,-39.367,-39.344,-40.170,-41.683,
--43.512,-45.190,-46.285,-46.552,-46.013,-44.928,-43.645,-42.408,-41.265,-40.125,-38.920,-37.717,-36.682,-35.935,-35.458,-35.137,
--34.901,-34.792,-34.880,-35.096,-35.182,-34.846,-34.012,-32.950,-32.140,-31.985,-32.601,-33.855,-35.561,-37.637,-40.071,-42.777,
--45.514,-47.990,-50.040,-51.719,-53.209,-54.640,-56.000,-57.195,-58.184,-59.024,-59.805,-60.551,-61.199,-61.690,-62.052,-62.383,
--62.767,-63.201,-63.615,-63.959,-64.248,-64.526,-64.784,-64.944,-64.924,-64.718,-64.407,-64.088,-63.789,-63.454,-63.006,-62.429,
--61.795,-61.228,-60.839,-60.685,-60.749,-60.949,-61.165,-61.289,-61.287,-61.221,-61.225,-61.408,-61.782,-62.248,-62.657,-62.899,
--62.952,-62.861,-62.683,-62.453,-62.188,-61.914,-61.683,-61.556,-61.555,-61.628,-61.660,-61.523,-61.149,-60.570,-59.898,-59.250,
--58.686,-58.180,-57.665,-57.104,-56.536,-56.060,-55.775,-55.721,-55.852,-56.064,-56.245,-56.323,-56.281,-56.149,-55.985,-55.844,
--55.751,-55.696,-55.645,-55.559,-55.424,-55.249,-55.045,-54.801,-54.486,-54.068,-53.544,-52.950,-52.337,-51.746,-51.194,-50.681,
--50.200,-49.731,-49.235,-48.677,-48.058,-47.426,-46.839,-46.288,-45.662,-44.814,-43.686,-42.395,-41.190,-40.294,-39.761,-39.457,
--39.174,-38.765,-38.186,-37.442,-36.515,-35.367,-34.009,-32.536,-31.093,-29.778,-28.589,-27.463,-26.362,-25.323,-24.417,-23.663,
--22.982,-22.244,-21.360,-20.351,-19.333,-18.431,-17.692,-17.060,-16.425,-15.705,-14.895,-14.046,-13.199,-12.334,-11.392,-10.362,
--9.339,-8.488,-7.929,-7.639,-7.457,-7.206,-6.804,-6.273,-5.648,-4.899,-3.960,-2.837,-1.662,-.622,.182,.805,
-1.372,1.948,2.486,2.911,3.239,3.582,4.033,4.568,5.069,5.463,5.811,6.253,6.872,7.623,8.414,9.233,
-10.172,11.321,12.641,13.982,15.213,16.334,17.427,18.511,19.474,20.166,20.576,20.886,21.339,22.036,22.860,23.595,
-24.136,24.564,25.064,25.740,26.524,27.208,27.570,27.467,26.880,25.911,24.760,23.677,22.883,22.482,22.432,22.591,
-22.814,23.025,23.231,23.472,23.775,24.126,24.481,24.799,25.069,25.309,25.552,25.809,26.064,26.296,26.516,26.769,
-27.098,27.489,27.876,28.201,28.466,28.723,29.002,29.251,29.394,29.434,29.508,29.797,30.361,31.067,31.702,32.176,
-32.609,33.209,34.041,34.923,35.561,35.773,35.582,35.071,34.171,32.618,30.174,26.915,23.320,20.041,17.543,15.874,
-14.736,13.743,12.653,11.447,10.279,9.373,8.953,9.161,9.986,11.243,12.648,13.956,15.065,15.999,16.804,17.467,
-17.932,18.176,18.253,18.263,18.269,18.274,18.254,18.205,18.138,18.039,17.861,17.565,17.168,16.739,16.332,15.942,
-15.525,15.066,14.599,14.159,13.725,13.232,12.648,12.033,11.486,11.038,10.598,10.044,9.352,8.642,8.065,7.662,
-7.323,6.910,6.386,5.831,5.337,4.909,4.478,4.008,3.548,3.174,2.887,2.596,2.210,1.730,1.238,.799,
-.401,-.011,-.452,-.874,-1.243,-1.593,-1.991,-2.438,-2.840,-3.106,-3.262,-3.454,-3.798,-4.256,-4.668,-4.929,
--5.096,-5.316,-5.644,-5.983,-6.203,-6.311,-6.459,-6.764,-7.157,-7.455,-7.571,-7.632,-7.838,-8.222,-8.595,-8.768,
--8.797,-8.960,-9.454,-10.154,-10.731,-11.018,-11.206,-11.573,-12.011,-11.888,-10.545,-8.035,-5.401,-4.103,-4.990,-7.670,
--10.790,-12.982,-13.691,-13.285,-12.523,-11.936,-11.606,-11.373,-11.136,-10.948,-10.908,-11.032,-11.252,-11.496,-11.733,-11.947,
--12.102,-12.164,-12.153,-12.141,-12.187,-12.274,-12.330,-12.301,-12.207,-12.112,-12.044,-11.968,-11.832,-11.645,-11.487,-11.440,
--11.506,-11.605,-11.647,-11.620,-11.589,-11.633,-11.766,-11.925,-12.023,-12.018,-11.932,-11.824,-11.743,-11.696,-11.662,-11.612,
--11.537,-11.451,-11.374,-11.315,-11.261,-11.193,-11.110,-11.036,-11.001,-11.005,-11.009,-10.960,-10.841,-10.693,-10.578,-10.526,
--10.505,-10.456,-10.347,-10.201,-10.072,-9.986,-9.929,-9.874,-9.817,-9.780,-9.784,-9.814,-9.830,-9.805,-9.752,-9.705,
--9.689,-9.700,-9.718,-9.725,-9.710,-9.661,-9.565,-9.427,-9.284,-9.186,-9.156,-9.182,-9.234,-9.305,-9.417,-9.585,
--9.782,-9.954,-10.072,-10.162,-10.282,-10.455,-10.639,-10.765,-10.809,-10.807,-10.816,-10.851,-10.881,-10.877,-10.852,-10.850,
--10.897,-10.977,-11.056,-11.132,-11.232,-11.367,-11.504,-11.587,-11.612,-11.645,-11.776,-12.027,-12.334,-12.597,-12.771,-12.891,
--13.019,-13.179,-13.350,-13.503,-13.645,-13.806,-13.998,-14.195,-14.365,-14.506,-14.651,-14.836,-15.065,-15.314,-15.566,-15.814,
--16.060,-16.288,-16.478,-16.631,-16.777,-16.954,-17.174,-17.414,-17.646,-17.873,-18.122,-18.416,-18.748,-19.086,-19.408,-19.717,
--20.030,-20.354,-20.678,-20.986,-21.270,-21.535,-21.789,-22.036,-22.279,-22.519,-22.762,-23.012,-23.271,-23.543,-23.826,-24.115,
--24.396,-24.661,-24.916,-25.175,-25.443,-25.697,-25.909,-26.069,-26.211,-26.384,-26.619,-26.903,-27.202,-27.489,-27.767,-28.040,
--28.295,-28.511,-28.684,-28.848,-29.044,-29.280,-29.517,-29.706,-29.839,-29.954,-30.104,-30.304,-30.524,-30.723,-30.884,-31.024,
--31.163,-31.309,-31.449,-31.575,-31.692,-31.811,-31.940,-32.076,-32.209,-32.334,-32.441,-32.518,-32.559,-32.571,-32.569,-32.567,
--32.566,-32.554,-32.526,-32.486,-32.439,-32.374,-32.272,-32.128,-31.972,-31.852,-31.798,-31.788,-31.774,-31.727,-31.666,-31.634,
--31.640,-31.637,-31.555,-31.381,-31.185,-31.071,-31.087,-31.179,-31.251,-31.265,-31.284,-31.412,-31.670,-31.949,-32.069,-31.913,
--31.489,-30.876,-30.118,-29.178,-28.018,-26.712,-25.476,-24.553,-24.063,-23.932,-23.958,-23.948,-23.804,-23.514,-23.104,-22.612,
--22.097,-21.639,-21.308,-21.112,-21.001,-20.910,-20.816,-20.729,-20.650,-20.540,-20.339,-20.030,-19.657,-19.281,-18.925,-18.563,
--18.180,-17.810,-17.518,-17.328,-17.182,-16.982,-16.701,-16.427,-16.305,-16.398,-16.627,-16.821,-16.867,-16.802,-16.766,-16.859,
--17.033,-17.121,-16.975,-16.581,-16.057,-15.549,-15.123,-14.759,-14.438,-14.204,-14.122,-14.185,-14.274,-14.248,-14.102,-14.012,
--14.186,-14.637,-15.090,-15.142,-14.568,-13.517,-12.396,-11.575,-11.143,-10.946,-10.822,-10.806,-11.111,-11.907,-13.148,-14.569,
--15.871,-16.889,-17.629,-18.187,-18.646,-19.042,-19.381,-19.663,-19.885,-20.057,-20.220,-20.447,-20.793,-21.238,-21.683,-22.019,
--22.219,-22.355,-22.527,-22.784,-23.104,-23.449,-23.812,-24.209,-24.627,-25.014,-25.330,-25.598,-25.886,-26.227,-26.582,-26.880,
--27.112,-27.360,-27.704,-28.124,-28.497,-28.721,-28.843,-29.046,-29.499,-30.201,-30.976,-31.606,-31.990,-32.179,-32.291,-32.414,
--32.577,-32.773,-32.995,-33.213,-33.372,-33.414,-33.340,-33.222,-33.156,-33.185,-33.271,-33.346,-33.373,-33.362,-33.332,-33.275,
--33.184,-33.095,-33.096,-33.267,-33.595,-33.969,-34.249,-34.371,-34.375,-34.347,-34.327,-34.280,-34.153,-33.955,-33.803,-33.855,
--34.204,-34.800,-35.457,-35.962,-36.194,-36.172,-36.009,-35.805,-35.581,-35.301,-34.950,-34.594,-34.343,-34.267,-34.336,-34.448,
--34.515,-34.507,-34.441,-34.314,-34.095,-33.765,-33.378,-33.048,-32.876,-32.886,-33.029,-33.241,-33.481,-33.709,-33.843,-33.780,
--33.475,-33.014,-32.586,-32.362,-32.388,-32.582,-32.825,-33.036,-33.163,-33.130,-32.835,-32.243,-31.479,-30.811,-30.491,-30.588,
--30.951,-31.332,-31.563,-31.625,-31.580,-31.466,-31.258,-30.930,-30.529,-30.167,-29.953,-29.916,-30.003,-30.123,-30.198,-30.177,
--30.021,-29.718,-29.298,-28.833,-28.403,-28.048,-27.768,-27.565,-27.490,-27.628,-28.025,-28.622,-29.255,-29.735,-29.946,-29.887,
--29.643,-29.316,-28.979,-28.668,-28.404,-28.200,-28.058,-27.968,-27.908,-27.857,-27.798,-27.718,-27.602,-27.432,-27.196,-26.900,
--26.559,-26.191,-25.804,-25.392,-24.949,-24.472,-23.965,-23.436,-22.886,-22.316,-21.725,-21.121,-20.512,-19.904,-19.286,-18.632,
--17.918,-17.134,-16.294,-15.432,-14.585,-13.776,-13.006,-12.262,-11.525,-10.785,-10.054,-9.357,-8.718,-8.137,-7.583,-6.998,
--6.328,-5.550,-4.683,-3.779,-2.894,-2.061,-1.269,-.466,.416,1.420,2.530,3.664,4.716,5.623,6.394,7.093,
-7.775,8.441,9.044,9.562,10.050,10.622,11.383,12.344,13.416,14.465,15.402,16.214,16.944,17.641,18.330,19.013,
-19.694,20.381,21.084,21.805,22.537,23.278,24.033,24.803,25.580,26.344,27.084,27.807,28.530,29.274,30.044,30.831,
-31.618,32.394,33.157,33.917,34.690,35.487,36.306,37.128,37.933,38.706,39.449,40.171,40.871,41.538,42.156,42.726,
-43.270,43.818,44.386,44.971,45.562,46.159,46.772,47.408,48.056,48.691,49.299,49.896,50.526,51.223,51.986,52.777,
-53.548,54.269,54.940,55.578,56.189,56.766,57.296,57.780,58.239,58.703,59.190,59.694,60.179,60.597,60.902,61.069,
-61.100,61.027,60.901,60.779,60.701,60.681,60.701,60.717,60.682,60.561,60.355,60.102,59.861,59.674,59.539,59.410,
-59.232,58.990,58.729,58.513,58.371,58.257,58.084,57.797,57.431,57.095,56.891,56.841,56.875,56.891,56.822,56.657,
-56.407,56.056,55.569,54.930,54.198,53.490,52.933,52.592,52.438,52.382,52.323,52.209,52.049,51.892,51.786,51.739,
-51.710,51.633,51.468,51.222,50.937,50.648,50.360,50.057,49.746,49.470,49.275,49.166,49.098,49.017,48.918,48.851,
-48.858,48.912,48.927,48.837,48.680,48.576,48.626,48.816,49.046,49.255,49.532,50.078,51.039,52.341,53.697,54.782,
-55.442,55.747,55.886,55.988,56.056,56.041,55.956,55.892,55.938,56.074,56.166,56.065,55.721,55.200,54.623,54.093,
-53.682,53.452,53.454,53.678,54.006,54.252,54.278,54.077,53.752,53.401,53.030,52.575,52.009,51.409,50.911,50.588,
-50.392,50.217,50.010,49.824,50.314,50.054,49.943,49.916,49.832,49.609,49.286,48.958,48.677,48.415,48.128,47.822,
-47.538,47.285,47.014,46.679,46.319,46.044,45.922,45.894,45.808,45.573,45.262,45.047,45.025,45.115,45.135,44.988,
-44.773,44.705,44.930,45.417,46.017,46.603,47.141,47.642,48.052,48.241,48.098,47.636,47.020,46.471,46.133,46.015,
-46.020,46.039,46.023,46.006,46.068,46.264,46.577,46.909,47.154,47.272,47.321,47.403,47.572,47.794,47.990,48.107,
-48.151,48.140,48.061,47.878,47.591,47.257,46.915,46.493,45.798,44.660,43.101,41.374,39.786,38.482,37.372,36.301,
-35.293,34.635,34.690,35.606,37.167,38.918,40.457,41.637,42.536,43.269,43.826,44.094,43.995,43.611,43.158,42.843,
-42.733,42.736,42.701,42.529,42.225,41.858,41.499,41.193,40.967,40.837,40.791,40.762,40.649,40.386,40.003,39.620,
-39.347,39.175,38.979,38.626,38.116,37.615,37.323,37.308,37.431,37.458,37.248,36.853,36.454,36.190,36.055,35.940,
-35.772,35.610,35.590,35.784,36.097,36.308,36.237,35.871,35.371,34.917,34.551,34.143,33.528,32.680,31.778,31.075,
-30.682,30.450,30.078,29.349,28.318,27.284,26.573,26.312,26.351,26.383,26.148,25.586,24.856,24.234,23.955,24.074,
-24.428,24.725,24.743,24.492,24.190,24.071,24.163,24.259,24.136,23.814,23.602,23.852,24.623,25.577,26.210,26.220,
-25.697,24.979,24.344,23.810,23.199,22.342,21.214,19.900,18.466,16.902,15.158,13.226,11.180,9.170,7.398,6.094,
-5.424,5.359,5.575,5.520,4.660,2.764,.007,-3.165,-6.319,-9.224,-11.832,-14.126,-15.991,-17.225,-17.661,-17.286,
--16.263,-14.876,-13.441,-12.234,-11.441,-11.123,-11.205,-11.525,-11.910,-12.255,-12.535,-12.766,-12.953,-13.086,-13.179,-13.317,
--13.630,-14.228,-15.117,-16.192,-17.307,-18.364,-19.359,-20.342,-21.345,-22.334,-23.238,-24.013,-24.671,-25.258,-25.802,-26.285,
--26.684,-27.014,-27.341,-27.732,-28.207,-28.729,-29.245,-29.732,-30.199,-30.654,-31.088,-31.488,-31.865,-32.256,-32.674,-33.078,
--33.389,-33.570,-33.679,-33.838,-34.145,-34.584,-35.046,-35.418,-35.673,-35.883,-36.155,-36.550,-37.067,-37.673,-38.343,-39.058,
--39.786,-40.470,-41.070,-41.606,-42.159,-42.798,-43.486,-44.046,-44.226,-43.863,-43.014,-41.983,-41.211,-41.093,-41.819,-43.314,
--45.270,-47.237,-48.750,-49.451,-49.216,-48.198,-46.750,-45.238,-43.840,-42.493,-41.016,-39.327,-37.570,-36.041,-34.980,-34.418,
--34.197,-34.129,-34.139,-34.244,-34.429,-34.556,-34.432,-33.984,-33.377,-32.953,-33.047,-33.813,-35.203,-37.069,-39.280,-41.745,
--44.374,-47.042,-49.619,-52.015,-54.184,-56.070,-57.584,-58.644,-59.281,-59.667,-60.043,-60.565,-61.212,-61.846,-62.352,-62.736,
--63.093,-63.492,-63.909,-64.272,-64.547,-64.787,-65.063,-65.373,-65.623,-65.701,-65.572,-65.306,-65.011,-64.741,-64.468,-64.128,
--63.690,-63.181,-62.669,-62.227,-61.901,-61.704,-61.616,-61.599,-61.622,-61.688,-61.836,-62.106,-62.497,-62.942,-63.336,-63.585,
--63.645,-63.526,-63.264,-62.909,-62.515,-62.139,-61.826,-61.597,-61.444,-61.343,-61.261,-61.166,-61.021,-60.797,-60.482,-60.093,
--59.665,-59.221,-58.765,-58.283,-57.777,-57.277,-56.836,-56.504,-56.310,-56.247,-56.275,-56.329,-56.336,-56.243,-56.051,-55.822,
--55.645,-55.581,-55.612,-55.656,-55.625,-55.487,-55.275,-55.045,-54.810,-54.522,-54.112,-53.553,-52.883,-52.182,-51.513,-50.893,
--50.310,-49.745,-49.185,-48.619,-48.031,-47.420,-46.811,-46.234,-45.663,-45.001,-44.140,-43.078,-41.977,-41.090,-40.586,-40.418,
--40.348,-40.115,-39.601,-38.851,-37.970,-36.994,-35.880,-34.590,-33.170,-31.734,-30.370,-29.086,-27.841,-26.635,-25.545,-24.661,
--23.983,-23.381,-22.670,-21.738,-20.619,-19.462,-18.415,-17.537,-16.777,-16.044,-15.283,-14.512,-13.779,-13.097,-12.401,-11.599,
--10.665,-9.706,-8.916,-8.438,-8.243,-8.128,-7.855,-7.317,-6.575,-5.762,-4.946,-4.086,-3.120,-2.066,-1.030,-.116,
-.653,1.322,1.922,2.424,2.802,3.113,3.492,4.043,4.734,5.421,5.989,6.458,6.959,7.596,8.362,9.179,
-10.018,10.926,11.957,13.074,14.160,15.138,16.046,16.983,17.975,18.911,19.650,20.190,20.708,21.421,22.386,23.447,
-24.367,25.024,25.478,25.874,26.288,26.670,26.906,26.902,26.623,26.075,25.298,24.391,23.528,22.903,22.630,22.680,
-22.907,23.158,23.359,23.535,23.745,24.019,24.330,24.628,24.878,25.085,25.284,25.517,25.795,26.099,26.396,26.677,
-26.966,27.294,27.664,28.037,28.375,28.679,28.987,29.317,29.624,29.836,29.939,30.036,30.282,30.746,31.335,31.878,
-32.305,32.732,33.367,34.284,35.303,36.093,36.425,36.315,35.918,35.273,34.154,32.215,29.321,25.769,22.193,19.198,
-17.019,15.452,14.093,12.668,11.211,10.011,9.403,9.576,10.494,11.926,13.549,15.065,16.296,17.211,17.872,18.354,
-18.685,18.858,18.884,18.820,18.743,18.697,18.665,18.599,18.468,18.265,17.997,17.663,17.274,16.864,16.473,16.109,
-15.728,15.275,14.746,14.198,13.696,13.236,12.754,12.203,11.617,11.084,10.644,10.230,9.727,9.099,8.437,7.877,
-7.467,7.118,6.702,6.177,5.614,5.113,4.694,4.301,3.884,3.460,3.077,2.738,2.376,1.927,1.410,.912,
-.502,.163,-.172,-.543,-.931,-1.312,-1.705,-2.145,-2.615,-3.025,-3.299,-3.478,-3.702,-4.067,-4.515,-4.888,
--5.093,-5.213,-5.413,-5.761,-6.154,-6.436,-6.588,-6.743,-7.031,-7.414,-7.731,-7.882,-7.954,-8.117,-8.422,-8.742,
--8.942,-9.070,-9.332,-9.853,-10.505,-11.039,-11.371,-11.681,-12.122,-12.432,-11.938,-10.112,-7.250,-4.578,-3.561,-4.881,
--7.932,-11.234,-13.422,-14.024,-13.489,-12.613,-11.935,-11.552,-11.323,-11.149,-11.051,-11.069,-11.188,-11.356,-11.552,-11.792,
--12.062,-12.287,-12.388,-12.364,-12.306,-12.313,-12.393,-12.465,-12.449,-12.346,-12.230,-12.160,-12.117,-12.037,-11.885,-11.709,
--11.597,-11.590,-11.652,-11.700,-11.692,-11.656,-11.663,-11.753,-11.905,-12.051,-12.134,-12.141,-12.097,-12.036,-11.978,-11.926,
--11.875,-11.828,-11.787,-11.745,-11.689,-11.604,-11.492,-11.375,-11.288,-11.253,-11.255,-11.253,-11.204,-11.100,-10.970,-10.861,
--10.795,-10.758,-10.714,-10.640,-10.544,-10.447,-10.365,-10.293,-10.227,-10.174,-10.150,-10.154,-10.157,-10.124,-10.047,-9.955,
--9.893,-9.885,-9.923,-9.979,-10.027,-10.050,-10.030,-9.951,-9.816,-9.661,-9.541,-9.492,-9.510,-9.570,-9.657,-9.781,
--9.948,-10.132,-10.286,-10.388,-10.466,-10.578,-10.749,-10.938,-11.076,-11.127,-11.116,-11.099,-11.100,-11.103,-11.088,-11.071,
--11.095,-11.186,-11.322,-11.465,-11.593,-11.717,-11.840,-11.938,-11.974,-11.959,-11.962,-12.064,-12.286,-12.567,-12.818,-12.997,
--13.131,-13.269,-13.433,-13.605,-13.770,-13.938,-14.131,-14.346,-14.549,-14.715,-14.857,-15.019,-15.233,-15.487,-15.744,-15.973,
--16.173,-16.357,-16.524,-16.670,-16.800,-16.941,-17.122,-17.346,-17.589,-17.826,-18.058,-18.306,-18.587,-18.894,-19.208,-19.514,
--19.816,-20.119,-20.421,-20.716,-20.999,-21.276,-21.549,-21.815,-22.073,-22.332,-22.608,-22.910,-23.224,-23.529,-23.814,-24.088,
--24.361,-24.633,-24.896,-25.152,-25.415,-25.691,-25.960,-26.187,-26.359,-26.510,-26.701,-26.969,-27.297,-27.633,-27.938,-28.213,
--28.473,-28.721,-28.939,-29.114,-29.266,-29.428,-29.614,-29.804,-29.967,-30.103,-30.242,-30.417,-30.626,-30.837,-31.022,-31.183,
--31.340,-31.504,-31.667,-31.813,-31.946,-32.084,-32.243,-32.413,-32.570,-32.696,-32.789,-32.858,-32.907,-32.934,-32.942,-32.945,
--32.956,-32.976,-32.988,-32.973,-32.928,-32.862,-32.780,-32.680,-32.556,-32.413,-32.278,-32.174,-32.102,-32.047,-31.994,-31.948,
--31.923,-31.916,-31.890,-31.806,-31.664,-31.527,-31.478,-31.540,-31.652,-31.716,-31.701,-31.690,-31.811,-32.105,-32.456,-32.650,
--32.531,-32.096,-31.447,-30.658,-29.710,-28.559,-27.282,-26.120,-25.342,-25.045,-25.066,-25.091,-24.879,-24.397,-23.784,-23.192,
--22.688,-22.263,-21.912,-21.662,-21.539,-21.513,-21.502,-21.432,-21.285,-21.092,-20.880,-20.651,-20.394,-20.109,-19.812,-19.505,
--19.176,-18.823,-18.483,-18.210,-18.023,-17.871,-17.668,-17.384,-17.096,-16.943,-17.009,-17.245,-17.492,-17.606,-17.555,-17.430,
--17.349,-17.344,-17.344,-17.228,-16.912,-16.386,-15.682,-14.851,-13.973,-13.189,-12.686,-12.597,-12.887,-13.344,-13.721,-13.934,
--14.122,-14.491,-15.062,-15.555,-15.563,-14.877,-13.685,-12.444,-11.549,-11.079,-10.851,-10.700,-10.703,-11.116,-12.115,-13.577,
--15.133,-16.413,-17.273,-17.809,-18.207,-18.587,-18.966,-19.323,-19.650,-19.963,-20.272,-20.581,-20.907,-21.277,-21.690,-22.097,
--22.431,-22.666,-22.845,-23.040,-23.289,-23.579,-23.876,-24.172,-24.484,-24.826,-25.193,-25.582,-26.006,-26.457,-26.867,-27.125,
--27.177,-27.119,-27.170,-27.509,-28.132,-28.849,-29.452,-29.887,-30.262,-30.703,-31.201,-31.619,-31.840,-31.893,-31.934,-32.106,
--32.421,-32.774,-33.054,-33.232,-33.349,-33.442,-33.504,-33.512,-33.469,-33.413,-33.377,-33.360,-33.341,-33.300,-33.236,-33.148,
--33.030,-32.896,-32.807,-32.853,-33.088,-33.473,-33.883,-34.191,-34.353,-34.426,-34.493,-34.580,-34.626,-34.550,-34.342,-34.113,
--34.044,-34.273,-34.784,-35.405,-35.896,-36.095,-35.997,-35.721,-35.400,-35.086,-34.754,-34.389,-34.055,-33.870,-33.911,-34.134,
--34.406,-34.598,-34.667,-34.635,-34.525,-34.323,-34.012,-33.639,-33.319,-33.166,-33.218,-33.421,-33.684,-33.930,-34.104,-34.149,
--34.015,-33.721,-33.389,-33.192,-33.240,-33.491,-33.784,-33.960,-33.950,-33.767,-33.430,-32.936,-32.312,-31.685,-31.256,-31.172,
--31.406,-31.769,-32.050,-32.160,-32.153,-32.113,-32.049,-31.889,-31.583,-31.184,-30.835,-30.661,-30.688,-30.841,-31.006,-31.095,
--31.055,-30.853,-30.482,-29.974,-29.408,-28.878,-28.459,-28.195,-28.126,-28.300,-28.735,-29.368,-30.041,-30.560,-30.809,-30.798,
--30.636,-30.429,-30.215,-29.970,-29.664,-29.318,-28.993,-28.749,-28.603,-28.527,-28.472,-28.395,-28.269,-28.082,-27.837,-27.546,
--27.223,-26.876,-26.503,-26.102,-25.678,-25.241,-24.798,-24.340,-23.848,-23.307,-22.720,-22.107,-21.494,-20.896,-20.315,-19.735,
--19.133,-18.479,-17.756,-16.963,-16.126,-15.285,-14.471,-13.695,-12.938,-12.174,-11.392,-10.605,-9.847,-9.149,-8.516,-7.921,
--7.311,-6.639,-5.886,-5.068,-4.227,-3.398,-2.587,-1.758,-.858,.152,1.256,2.379,3.419,4.312,5.073,5.784,
-6.530,7.328,8.112,8.790,9.329,9.796,10.320,11.004,11.862,12.820,13.786,14.708,15.579,16.409,17.191,17.910,
-18.567,19.197,19.850,20.556,21.309,22.078,22.841,23.598,24.360,25.127,25.885,26.617,27.323,28.028,28.761,29.541,
-30.362,31.200,32.026,32.820,33.583,34.333,35.095,35.889,36.708,37.526,38.311,39.040,39.716,40.352,40.966,41.569,
-42.171,42.779,43.396,44.012,44.616,45.202,45.789,46.405,47.068,47.763,48.453,49.108,49.739,50.390,51.104,51.881,
-52.676,53.436,54.139,54.802,55.452,56.089,56.680,57.194,57.634,58.045,58.484,58.972,59.482,59.956,60.338,60.601,
-60.741,60.775,60.734,60.662,60.604,60.584,60.586,60.566,60.487,60.342,60.159,59.974,59.806,59.651,59.492,59.315,
-59.109,58.868,58.593,58.306,58.047,57.841,57.678,57.507,57.279,56.997,56.720,56.523,56.437,56.422,56.402,56.306,
-56.102,55.775,55.318,54.733,54.055,53.369,52.779,52.362,52.127,52.023,51.971,51.907,51.802,51.663,51.524,51.424,
-51.382,51.380,51.366,51.279,51.086,50.791,50.425,50.026,49.629,49.268,48.973,48.750,48.571,48.395,48.211,48.061,
-48.003,48.051,48.143,48.177,48.103,47.968,47.867,47.858,47.912,47.974,48.078,48.389,49.108,50.309,51.830,53.344,
-54.540,55.292,55.675,55.856,55.951,55.986,55.953,55.889,55.873,55.961,56.118,56.225,56.167,55.905,55.489,55.009,
-54.537,54.126,53.828,53.692,53.721,53.837,53.910,53.852,53.679,53.487,53.340,53.197,52.940,52.512,51.987,51.531,
-51.249,51.095,50.926,50.649,50.314,50.910,50.469,50.205,50.077,49.908,49.562,49.065,48.557,48.146,47.825,47.535,
-47.263,47.065,46.967,46.893,46.713,46.382,46.008,45.756,45.676,45.654,45.531,45.283,45.044,44.956,44.999,44.995,
-44.806,44.510,44.378,44.653,45.348,46.246,47.079,47.704,48.122,48.366,48.393,48.126,47.562,46.840,46.184,45.762,
-45.594,45.565,45.537,45.443,45.317,45.253,45.328,45.550,45.856,46.160,46.410,46.616,46.828,47.087,47.390,47.705,
-47.994,48.218,48.321,48.233,47.917,47.428,46.906,46.472,46.107,45.635,44.845,43.664,42.209,40.682,39.204,37.778,
-36.402,35.229,34.552,34.624,35.440,36.709,38.040,39.198,40.190,41.132,42.044,42.772,43.113,43.007,42.630,42.282,
-42.183,42.336,42.557,42.622,42.416,41.981,41.459,40.998,40.687,40.541,40.514,40.525,40.487,40.337,40.068,39.741,
-39.443,39.223,39.048,38.824,38.480,38.054,37.685,37.514,37.568,37.716,37.755,37.559,37.176,36.791,36.595,36.655,
-36.896,37.174,37.395,37.551,37.678,37.771,37.758,37.543,37.095,36.492,35.858,35.275,34.720,34.115,33.440,32.781,
-32.272,31.945,31.659,31.176,30.353,29.282,28.257,27.575,27.333,27.373,27.408,27.210,26.749,26.193,25.800,25.757,
-26.067,26.525,26.839,26.833,26.576,26.337,26.348,26.585,26.765,26.591,26.052,25.470,25.261,25.578,26.183,26.635,
-26.626,26.166,25.488,24.810,24.187,23.545,22.818,22.002,21.112,20.114,18.931,17.493,15.775,13.778,11.530,9.141,
-6.868,5.081,4.058,3.746,3.693,3.244,1.897,-.438,-3.445,-6.642,-9.645,-12.288,-14.558,-16.446,-17.861,-18.641,
--18.649,-17.880,-16.514,-14.885,-13.384,-12.316,-11.803,-11.765,-12.008,-12.340,-12.655,-12.928,-13.168,-13.363,-13.481,-13.522,
--13.556,-13.716,-14.135,-14.873,-15.877,-17.016,-18.157,-19.229,-20.232,-21.195,-22.127,-23.001,-23.784,-24.462,-25.053,-25.578,
--26.048,-26.466,-26.854,-27.253,-27.701,-28.203,-28.735,-29.272,-29.814,-30.365,-30.906,-31.383,-31.755,-32.039,-32.312,-32.644,
--33.025,-33.377,-33.634,-33.826,-34.075,-34.479,-35.012,-35.521,-35.845,-35.947,-35.943,-36.004,-36.226,-36.586,-37.013,-37.486,
--38.062,-38.810,-39.725,-40.704,-41.626,-42.434,-43.143,-43.767,-44.235,-44.412,-44.218,-43.752,-43.314,-43.274,-43.882,-45.148,
--46.842,-48.600,-50.044,-50.871,-50.919,-50.204,-48.935,-47.425,-45.931,-44.507,-43.001,-41.211,-39.111,-36.943,-35.100,-33.889,
--33.348,-33.273,-33.387,-33.524,-33.662,-33.846,-34.082,-34.319,-34.521,-34.731,-35.070,-35.671,-36.612,-37.903,-39.517,-41.415,
--43.551,-45.863,-48.277,-50.726,-53.148,-55.445,-57.460,-59.010,-59.988,-60.459,-60.660,-60.874,-61.264,-61.808,-62.364,-62.817,
--63.158,-63.458,-63.770,-64.086,-64.378,-64.659,-64.995,-65.428,-65.903,-66.283,-66.438,-66.345,-66.092,-65.805,-65.559,-65.353,
--65.152,-64.933,-64.700,-64.470,-64.250,-64.048,-63.870,-63.724,-63.619,-63.568,-63.597,-63.732,-63.973,-64.274,-64.550,-64.719,
--64.738,-64.601,-64.318,-63.909,-63.416,-62.919,-62.515,-62.259,-62.118,-61.994,-61.794,-61.499,-61.170,-60.895,-60.722,-60.624,
--60.519,-60.325,-60.000,-59.560,-59.068,-58.592,-58.174,-57.809,-57.478,-57.181,-56.956,-56.843,-56.828,-56.826,-56.723,-56.472,
--56.136,-55.857,-55.746,-55.797,-55.888,-55.876,-55.698,-55.403,-55.085,-54.792,-54.483,-54.071,-53.500,-52.791,-52.021,-51.263,
--50.549,-49.872,-49.220,-48.591,-47.982,-47.380,-46.775,-46.173,-45.586,-45.002,-44.363,-43.612,-42.775,-41.991,-41.440,-41.192,
--41.121,-40.970,-40.522,-39.745,-38.781,-37.796,-36.839,-35.836,-34.700,-33.437,-32.137,-30.883,-29.685,-28.502,-27.337,-26.269,
--25.386,-24.687,-24.038,-23.251,-22.218,-20.981,-19.692,-18.504,-17.478,-16.584,-15.761,-14.982,-14.270,-13.652,-13.101,-12.528,
--11.831,-10.985,-10.102,-9.377,-8.956,-8.810,-8.723,-8.433,-7.807,-6.922,-5.969,-5.090,-4.280,-3.440,-2.499,-1.492,
--.514,.358,1.102,1.722,2.211,2.581,2.912,3.346,3.991,4.824,5.700,6.472,7.109,7.704,8.369,9.139,
-9.977,10.838,11.717,12.611,13.479,14.263,14.969,15.696,16.551,17.530,18.495,19.301,19.953,20.626,21.513,22.640,
-23.833,24.859,25.597,26.079,26.389,26.560,26.559,26.372,26.044,25.641,25.184,24.644,24.019,23.407,22.967,22.812,
-22.920,23.162,23.409,23.619,23.825,24.068,24.339,24.591,24.792,24.957,25.143,25.401,25.745,26.151,26.573,26.968,
-27.320,27.637,27.944,28.248,28.540,28.803,29.044,29.299,29.598,29.924,30.226,30.460,30.651,30.875,31.190,31.581,
-31.991,32.416,32.961,33.762,34.825,35.942,36.797,37.190,37.177,36.960,36.609,35.879,34.340,31.741,28.314,24.710,
-21.603,19.256,17.424,15.654,13.723,11.851,10.539,10.206,10.910,12.344,14.048,15.641,16.931,17.884,18.545,18.978,
-19.238,19.365,19.385,19.323,19.208,19.079,18.959,18.843,18.700,18.496,18.214,17.857,17.444,17.005,16.576,16.181,
-15.804,15.393,14.895,14.311,13.706,13.161,12.693,12.250,11.761,11.216,10.672,10.186,9.747,9.288,8.766,8.212,
-7.703,7.270,6.865,6.410,5.888,5.359,4.896,4.509,4.143,3.749,3.333,2.932,2.554,2.151,1.680,1.162,
-.677,.283,-.037,-.350,-.698,-1.068,-1.433,-1.802,-2.211,-2.656,-3.075,-3.403,-3.663,-3.948,-4.324,-4.735,
--5.054,-5.221,-5.325,-5.523,-5.878,-6.294,-6.624,-6.828,-7.010,-7.278,-7.621,-7.918,-8.093,-8.208,-8.387,-8.664,
--8.951,-9.162,-9.346,-9.652,-10.143,-10.711,-11.199,-11.600,-12.054,-12.563,-12.740,-11.964,-9.951,-7.259,-5.173,-4.922,
--6.802,-9.929,-12.838,-14.428,-14.533,-13.745,-12.806,-12.106,-11.646,-11.299,-11.037,-10.923,-10.981,-11.146,-11.333,-11.530,
--11.780,-12.081,-12.345,-12.468,-12.437,-12.357,-12.354,-12.460,-12.588,-12.627,-12.547,-12.417,-12.318,-12.261,-12.186,-12.037,
--11.834,-11.668,-11.623,-11.702,-11.831,-11.922,-11.936,-11.906,-11.896,-11.947,-12.054,-12.179,-12.279,-12.324,-12.305,-12.234,
--12.140,-12.057,-12.012,-12.001,-11.995,-11.957,-11.872,-11.754,-11.637,-11.550,-11.498,-11.471,-11.449,-11.416,-11.362,-11.289,
--11.202,-11.114,-11.037,-10.972,-10.912,-10.846,-10.769,-10.683,-10.603,-10.543,-10.512,-10.502,-10.489,-10.442,-10.347,-10.219,
--10.104,-10.044,-10.056,-10.120,-10.198,-10.259,-10.288,-10.275,-10.216,-10.113,-9.989,-9.884,-9.831,-9.837,-9.887,-9.965,
--10.072,-10.209,-10.360,-10.494,-10.595,-10.682,-10.799,-10.966,-11.155,-11.312,-11.398,-11.423,-11.424,-11.423,-11.418,-11.405,
--11.404,-11.451,-11.562,-11.720,-11.882,-12.025,-12.147,-12.249,-12.314,-12.324,-12.297,-12.295,-12.386,-12.583,-12.836,-13.076,
--13.267,-13.426,-13.585,-13.753,-13.921,-14.089,-14.273,-14.485,-14.708,-14.906,-15.060,-15.198,-15.370,-15.602,-15.873,-16.134,
--16.351,-16.523,-16.664,-16.786,-16.895,-17.012,-17.168,-17.380,-17.635,-17.897,-18.137,-18.360,-18.588,-18.838,-19.106,-19.382,
--19.661,-19.941,-20.217,-20.474,-20.713,-20.952,-21.215,-21.507,-21.808,-22.097,-22.377,-22.672,-22.997,-23.336,-23.656,-23.943,
--24.211,-24.486,-24.774,-25.063,-25.341,-25.617,-25.902,-26.183,-26.429,-26.625,-26.801,-27.018,-27.311,-27.657,-27.997,-28.287,
--28.533,-28.763,-28.996,-29.217,-29.409,-29.572,-29.721,-29.869,-30.010,-30.143,-30.283,-30.457,-30.672,-30.901,-31.108,-31.283,
--31.451,-31.641,-31.853,-32.057,-32.229,-32.378,-32.536,-32.719,-32.910,-33.070,-33.177,-33.238,-33.278,-33.314,-33.346,-33.373,
--33.403,-33.447,-33.505,-33.559,-33.581,-33.558,-33.500,-33.428,-33.360,-33.296,-33.225,-33.135,-33.027,-32.909,-32.799,-32.716,
--32.672,-32.667,-32.681,-32.672,-32.608,-32.492,-32.380,-32.340,-32.396,-32.493,-32.535,-32.483,-32.405,-32.430,-32.618,-32.871,
--32.981,-32.785,-32.280,-31.591,-30.826,-29.978,-28.999,-27.946,-27.044,-26.539,-26.466,-26.561,-26.423,-25.819,-24.848,-23.843,
--23.100,-22.690,-22.483,-22.328,-22.178,-22.078,-22.051,-22.045,-21.968,-21.777,-21.505,-21.221,-20.966,-20.737,-20.517,-20.297,
--20.073,-19.829,-19.549,-19.232,-18.907,-18.610,-18.347,-18.097,-17.848,-17.635,-17.529,-17.584,-17.775,-18.001,-18.136,-18.107,
--17.934,-17.705,-17.511,-17.393,-17.306,-17.135,-16.744,-16.038,-15.033,-13.896,-12.921,-12.403,-12.480,-13.026,-13.711,-14.220,
--14.473,-14.660,-15.023,-15.578,-16.013,-15.909,-15.101,-13.856,-12.693,-11.983,-11.700,-11.545,-11.319,-11.177,-11.511,-12.572,
--14.201,-15.904,-17.205,-17.948,-18.310,-18.567,-18.870,-19.208,-19.525,-19.824,-20.158,-20.553,-20.974,-21.375,-21.745,-22.113,
--22.493,-22.860,-23.179,-23.445,-23.694,-23.964,-24.259,-24.547,-24.801,-25.019,-25.238,-25.512,-25.890,-26.381,-26.906,-27.308,
--27.439,-27.292,-27.077,-27.121,-27.645,-28.596,-29.676,-30.565,-31.129,-31.453,-31.686,-31.880,-31.978,-31.942,-31.856,-31.887,
--32.138,-32.551,-32.958,-33.222,-33.338,-33.396,-33.475,-33.577,-33.648,-33.654,-33.607,-33.543,-33.481,-33.403,-33.287,-33.124,
--32.926,-32.725,-32.567,-32.514,-32.622,-32.903,-33.301,-33.716,-34.065,-34.331,-34.551,-34.766,-34.961,-35.062,-34.993,-34.748,
--34.432,-34.221,-34.264,-34.588,-35.069,-35.495,-35.698,-35.638,-35.400,-35.097,-34.785,-34.455,-34.107,-33.816,-33.705,-33.842,
--34.173,-34.542,-34.802,-34.898,-34.860,-34.728,-34.500,-34.168,-33.782,-33.459,-33.320,-33.401,-33.636,-33.914,-34.148,-34.302,
--34.364,-34.337,-34.257,-34.203,-34.265,-34.457,-34.685,-34.798,-34.701,-34.413,-34.026,-33.606,-33.157,-32.679,-32.245,-31.992,
--32.016,-32.273,-32.594,-32.809,-32.871,-32.851,-32.824,-32.778,-32.631,-32.334,-31.957,-31.648,-31.524,-31.584,-31.728,-31.837,
--31.837,-31.708,-31.447,-31.063,-30.590,-30.094,-29.656,-29.343,-29.196,-29.252,-29.538,-30.041,-30.664,-31.239,-31.602,-31.698,
--31.597,-31.428,-31.272,-31.116,-30.892,-30.564,-30.168,-29.791,-29.503,-29.319,-29.204,-29.102,-28.967,-28.772,-28.511,-28.200,
--27.868,-27.536,-27.202,-26.844,-26.444,-26.006,-25.552,-25.098,-24.637,-24.146,-23.609,-23.035,-22.449,-21.871,-21.308,-20.755,
--20.200,-19.628,-19.014,-18.330,-17.563,-16.736,-15.898,-15.091,-14.328,-13.581,-12.815,-12.014,-11.194,-10.391,-9.637,-8.940,
--8.286,-7.647,-6.984,-6.269,-5.486,-4.644,-3.769,-2.880,-1.971,-1.018,-.002,1.056,2.096,3.047,3.883,4.645,
-5.408,6.220,7.058,7.840,8.500,9.042,9.551,10.134,10.846,11.663,12.520,13.365,14.193,15.024,15.861,16.672,
-17.421,18.098,18.738,19.393,20.099,20.851,21.628,22.409,23.190,23.975,24.757,25.516,26.238,26.929,27.621,28.350,
-29.140,29.987,30.863,31.730,32.557,33.333,34.074,34.812,35.580,36.385,37.202,37.985,38.694,39.321,39.893,40.456,
-41.048,41.685,42.356,43.033,43.683,44.289,44.859,45.431,46.049,46.734,47.467,48.202,48.901,49.572,50.257,50.998,
-51.795,52.604,53.375,54.088,54.759,55.408,56.024,56.574,57.042,57.457,57.883,58.363,58.879,59.367,59.761,60.044,
-60.240,60.375,60.457,60.479,60.457,60.431,60.429,60.432,60.380,60.226,59.990,59.746,59.567,59.458,59.360,59.210,
-58.992,58.736,58.476,58.212,57.930,57.633,57.363,57.162,57.028,56.907,56.737,56.502,56.243,56.023,55.869,55.751,
-55.600,55.350,54.963,54.449,53.853,53.242,52.683,52.220,51.869,51.627,51.488,51.442,51.457,51.478,51.446,51.341,
-51.199,51.087,51.043,51.039,50.995,50.836,50.534,50.127,49.687,49.288,48.973,48.735,48.518,48.253,47.909,47.535,
-47.237,47.099,47.117,47.199,47.244,47.227,47.199,47.207,47.228,47.196,47.126,47.183,47.627,48.630,50.115,51.775,
-53.251,54.332,55.032,55.493,55.837,56.086,56.202,56.180,56.087,56.025,56.051,56.144,56.228,56.233,56.126,55.901,
-55.555,55.091,54.537,53.968,53.484,53.151,52.966,52.868,52.806,52.792,52.871,53.037,53.185,53.162,52.897,52.483,
-52.114,51.921,51.851,51.719,51.389,50.910,51.323,50.774,50.425,50.243,50.014,49.556,48.892,48.225,47.735,47.442,
-47.248,47.094,47.022,47.083,47.193,47.153,46.823,46.279,45.767,45.484,45.410,45.366,45.224,45.030,44.914,44.898,
-44.843,44.609,44.259,44.082,44.376,45.194,46.297,47.337,48.088,48.515,48.661,48.525,48.068,47.320,46.455,45.713,
-45.259,45.087,45.059,45.030,44.940,44.816,44.720,44.700,44.779,44.965,45.250,45.604,45.977,46.324,46.630,46.918,
-47.233,47.597,47.966,48.210,48.160,47.701,46.867,45.852,44.919,44.246,43.828,43.502,43.049,42.300,41.180,39.708,
-38.009,36.336,35.041,34.433,34.600,35.337,36.273,37.121,37.849,38.622,39.583,40.655,41.564,42.044,42.049,41.792,
-41.583,41.618,41.875,42.172,42.306,42.177,41.815,41.341,40.898,40.581,40.410,40.328,40.243,40.089,39.866,39.631,
-39.449,39.344,39.274,39.158,38.936,38.610,38.249,37.957,37.807,37.793,37.826,37.782,37.582,37.263,36.969,36.875,
-37.082,37.540,38.077,38.496,38.688,38.664,38.512,38.295,38.003,37.578,36.992,36.293,35.578,34.929,34.375,33.905,
-33.514,33.193,32.899,32.522,31.940,31.119,30.179,29.342,28.792,28.555,28.491,28.398,28.145,27.746,27.343,27.123,
-27.208,27.572,28.023,28.305,28.273,28.011,27.784,27.810,28.053,28.222,28.014,27.399,26.680,26.262,26.328,26.702,
-27.009,26.961,26.523,25.843,25.079,24.303,23.523,22.760,22.051,21.390,20.704,19.892,18.890,17.654,16.105,14.129,
-11.686,8.967,6.400,4.441,3.263,2.595,1.846,.463,-1.759,-4.599,-7.607,-10.387,-12.772,-14.808,-16.590,-18.108,
--19.197,-19.631,-19.277,-18.205,-16.701,-15.149,-13.884,-13.078,-12.732,-12.736,-12.953,-13.259,-13.562,-13.798,-13.934,-13.976,
--13.967,-13.981,-14.101,-14.413,-14.977,-15.805,-16.840,-17.976,-19.097,-20.135,-21.082,-21.965,-22.803,-23.588,-24.289,-24.890,
--25.402,-25.861,-26.309,-26.781,-27.286,-27.813,-28.333,-28.832,-29.329,-29.864,-30.455,-31.060,-31.587,-31.958,-32.187,-32.380,
--32.654,-33.040,-33.464,-33.834,-34.141,-34.479,-34.941,-35.500,-35.997,-36.259,-36.250,-36.111,-36.040,-36.139,-36.355,-36.580,
--36.805,-37.165,-37.829,-38.838,-40.047,-41.220,-42.201,-42.981,-43.631,-44.167,-44.521,-44.631,-44.578,-44.609,-44.999,-45.863,
--47.071,-48.324,-49.318,-49.857,-49.874,-49.389,-48.489,-47.324,-46.066,-44.822,-43.541,-42.046,-40.190,-38.035,-35.889,-34.165,
--33.137,-32.807,-32.947,-33.280,-33.640,-34.007,-34.444,-35.004,-35.695,-36.493,-37.368,-38.290,-39.242,-40.224,-41.281,-42.489,
--43.927,-45.627,-47.564,-49.671,-51.873,-54.088,-56.207,-58.075,-59.538,-60.514,-61.057,-61.342,-61.571,-61.863,-62.220,-62.577,
--62.886,-63.154,-63.417,-63.686,-63.947,-64.202,-64.507,-64.932,-65.488,-66.078,-66.543,-66.768,-66.755,-66.599,-66.406,-66.228,
--66.065,-65.913,-65.795,-65.737,-65.744,-65.785,-65.819,-65.817,-65.770,-65.682,-65.578,-65.502,-65.504,-65.599,-65.745,-65.862,
--65.879,-65.771,-65.546,-65.216,-64.788,-64.294,-63.819,-63.466,-63.281,-63.204,-63.092,-62.824,-62.388,-61.890,-61.473,-61.224,
--61.117,-61.040,-60.858,-60.496,-59.975,-59.397,-58.879,-58.475,-58.161,-57.879,-57.617,-57.438,-57.417,-57.547,-57.692,-57.669,
--57.379,-56.898,-56.423,-56.131,-56.052,-56.069,-56.018,-55.814,-55.485,-55.115,-54.755,-54.379,-53.920,-53.330,-52.622,-51.854,
--51.084,-50.340,-49.621,-48.926,-48.260,-47.622,-46.998,-46.368,-45.727,-45.095,-44.493,-43.923,-43.371,-42.844,-42.383,-42.035,
--41.777,-41.485,-40.997,-40.227,-39.234,-38.177,-37.186,-36.267,-35.330,-34.294,-33.175,-32.063,-31.023,-30.037,-29.038,-28.000,
--26.977,-26.053,-25.235,-24.420,-23.457,-22.268,-20.913,-19.547,-18.318,-17.283,-16.408,-15.629,-14.909,-14.248,-13.653,-13.099,
--12.521,-11.857,-11.104,-10.350,-9.743,-9.392,-9.265,-9.178,-8.893,-8.270,-7.354,-6.330,-5.368,-4.516,-3.697,-2.818,
--1.862,-.895,.005,.794,1.462,2.005,2.434,2.812,3.259,3.892,4.734,5.688,6.613,7.427,8.150,8.864,
-9.628,10.453,11.313,12.173,12.985,13.693,14.283,14.833,15.485,16.342,17.361,18.367,19.211,19.909,20.639,21.573,
-22.710,23.866,24.823,25.483,25.885,26.101,26.144,25.990,25.656,25.230,24.808,24.418,24.020,23.593,23.205,22.971,
-22.958,23.121,23.352,23.577,23.801,24.063,24.360,24.636,24.840,24.991,25.181,25.497,25.957,26.499,27.042,27.532,
-27.960,28.338,28.673,28.964,29.204,29.389,29.528,29.644,29.784,29.996,30.296,30.652,31.001,31.293,31.531,31.759,
-32.026,32.368,32.835,33.503,34.431,35.569,36.712,37.592,38.060,38.201,38.218,38.161,37.739,36.456,34.008,30.622,
-27.003,23.872,21.481,19.500,17.415,15.059,12.838,11.450,11.355,12.449,14.172,15.897,17.267,18.243,18.937,19.430,
-19.740,19.875,19.881,19.821,19.724,19.583,19.387,19.155,18.916,18.684,18.437,18.140,17.773,17.344,16.881,16.410,
-15.950,15.495,15.016,14.481,13.883,13.266,12.700,12.224,11.806,11.373,10.870,10.310,9.751,9.240,8.771,8.315,
-7.854,7.400,6.964,6.531,6.071,5.584,5.105,4.672,4.284,3.902,3.495,3.076,2.676,2.301,1.909,1.463,
-.977,.512,.115,-.226,-.565,-.933,-1.311,-1.663,-1.993,-2.343,-2.737,-3.145,-3.516,-3.841,-4.166,-4.529,
--4.899,-5.195,-5.381,-5.522,-5.731,-6.060,-6.449,-6.800,-7.079,-7.337,-7.626,-7.922,-8.153,-8.300,-8.435,-8.645,
--8.931,-9.211,-9.432,-9.647,-9.960,-10.391,-10.848,-11.253,-11.659,-12.166,-12.666,-12.724,-11.846,-10.003,-7.926,-6.783,
--7.401,-9.629,-12.399,-14.456,-15.149,-14.696,-13.790,-12.992,-12.433,-11.960,-11.467,-11.037,-10.822,-10.867,-11.064,-11.287,
--11.500,-11.749,-12.044,-12.310,-12.444,-12.428,-12.358,-12.359,-12.474,-12.635,-12.731,-12.717,-12.630,-12.539,-12.464,-12.365,
--12.196,-11.976,-11.795,-11.751,-11.875,-12.096,-12.298,-12.388,-12.356,-12.259,-12.175,-12.156,-12.208,-12.301,-12.386,-12.426,
--12.402,-12.332,-12.254,-12.202,-12.180,-12.160,-12.113,-12.035,-11.948,-11.876,-11.820,-11.763,-11.695,-11.631,-11.593,-11.577,
--11.556,-11.496,-11.399,-11.297,-11.225,-11.183,-11.138,-11.056,-10.940,-10.824,-10.745,-10.714,-10.705,-10.682,-10.620,-10.518,
--10.397,-10.296,-10.247,-10.261,-10.321,-10.392,-10.440,-10.451,-10.430,-10.389,-10.333,-10.270,-10.214,-10.185,-10.197,-10.247,
--10.321,-10.406,-10.499,-10.600,-10.705,-10.811,-10.920,-11.049,-11.204,-11.373,-11.526,-11.636,-11.700,-11.736,-11.759,-11.776,
--11.794,-11.826,-11.894,-12.003,-12.138,-12.273,-12.392,-12.491,-12.567,-12.608,-12.607,-12.589,-12.605,-12.705,-12.896,-13.137,
--13.374,-13.579,-13.757,-13.922,-14.080,-14.235,-14.397,-14.588,-14.810,-15.036,-15.227,-15.375,-15.511,-15.681,-15.906,-16.162,
--16.411,-16.631,-16.818,-16.974,-17.100,-17.210,-17.340,-17.533,-17.804,-18.117,-18.418,-18.673,-18.894,-19.112,-19.346,-19.589,
--19.829,-20.065,-20.295,-20.510,-20.696,-20.863,-21.051,-21.306,-21.632,-21.989,-22.323,-22.621,-22.908,-23.218,-23.547,-23.866,
--24.157,-24.437,-24.734,-25.054,-25.377,-25.679,-25.961,-26.235,-26.504,-26.749,-26.964,-27.175,-27.428,-27.742,-28.084,-28.393,
--28.637,-28.831,-29.021,-29.231,-29.456,-29.674,-29.876,-30.059,-30.219,-30.351,-30.466,-30.598,-30.782,-31.016,-31.263,-31.481,
--31.671,-31.868,-32.102,-32.360,-32.600,-32.793,-32.951,-33.111,-33.289,-33.462,-33.593,-33.667,-33.705,-33.745,-33.808,-33.893,
--33.983,-34.070,-34.154,-34.238,-34.314,-34.368,-34.387,-34.375,-34.352,-34.348,-34.373,-34.409,-34.415,-34.358,-34.241,-34.107,
--34.012,-33.989,-34.029,-34.087,-34.110,-34.062,-33.944,-33.804,-33.709,-33.697,-33.735,-33.737,-33.642,-33.477,-33.345,-33.317,
--33.337,-33.235,-32.874,-32.266,-31.551,-30.853,-30.167,-29.413,-28.608,-27.938,-27.625,-27.675,-27.773,-27.476,-26.560,-25.217,
--23.921,-23.079,-22.768,-22.768,-22.798,-22.732,-22.613,-22.520,-22.456,-22.359,-22.180,-21.940,-21.694,-21.472,-21.266,-21.055,
--20.835,-20.618,-20.395,-20.135,-19.809,-19.428,-19.041,-18.703,-18.443,-18.259,-18.141,-18.094,-18.132,-18.252,-18.410,-18.524,
--18.509,-18.330,-18.036,-17.736,-17.533,-17.442,-17.355,-17.095,-16.530,-15.688,-14.790,-14.156,-14.040,-14.460,-15.160,-15.751,
--15.958,-15.812,-15.617,-15.677,-16.002,-16.248,-15.983,-15.076,-13.854,-12.863,-12.423,-12.388,-12.340,-12.052,-11.759,-11.988,
--13.074,-14.827,-16.643,-17.955,-18.604,-18.847,-19.035,-19.333,-19.678,-19.966,-20.210,-20.512,-20.936,-21.429,-21.885,-22.258,
--22.593,-22.954,-23.347,-23.719,-24.029,-24.293,-24.565,-24.875,-25.192,-25.456,-25.636,-25.769,-25.948,-26.260,-26.715,-27.206,
--27.550,-27.610,-27.431,-27.265,-27.442,-28.139,-29.242,-30.409,-31.303,-31.802,-32.013,-32.116,-32.198,-32.233,-32.186,-32.111,
--32.130,-32.318,-32.628,-32.937,-33.153,-33.281,-33.385,-33.503,-33.611,-33.662,-33.646,-33.602,-33.570,-33.549,-33.490,-33.344,
--33.105,-32.818,-32.555,-32.386,-32.365,-32.508,-32.797,-33.174,-33.574,-33.948,-34.283,-34.594,-34.882,-35.119,-35.243,-35.197,
--34.971,-34.637,-34.325,-34.173,-34.244,-34.492,-34.786,-34.995,-35.059,-35.001,-34.870,-34.685,-34.438,-34.150,-33.910,-33.841,
--34.001,-34.329,-34.675,-34.901,-34.961,-34.882,-34.695,-34.402,-34.012,-33.598,-33.302,-33.246,-33.445,-33.792,-34.136,-34.384,
--34.533,-34.634,-34.737,-34.868,-35.035,-35.228,-35.391,-35.432,-35.273,-34.918,-34.466,-34.042,-33.706,-33.425,-33.152,-32.908,
--32.791,-32.881,-33.141,-33.430,-33.606,-33.633,-33.580,-33.522,-33.455,-33.314,-33.065,-32.767,-32.539,-32.456,-32.491,-32.540,
--32.509,-32.375,-32.164,-31.910,-31.634,-31.353,-31.102,-30.923,-30.839,-30.849,-30.951,-31.159,-31.477,-31.862,-32.219,-32.449,
--32.513,-32.449,-32.328,-32.179,-31.982,-31.700,-31.338,-30.950,-30.600,-30.316,-30.085,-29.879,-29.673,-29.452,-29.199,-28.902,
--28.570,-28.233,-27.915,-27.607,-27.272,-26.872,-26.407,-25.906,-25.397,-24.888,-24.367,-23.829,-23.289,-22.763,-22.250,-21.733,
--21.198,-20.647,-20.085,-19.495,-18.845,-18.110,-17.304,-16.478,-15.681,-14.921,-14.167,-13.385,-12.568,-11.740,-10.932,-10.156,
--9.413,-8.705,-8.031,-7.373,-6.688,-5.923,-5.052,-4.097,-3.112,-2.142,-1.194,-.253,.692,1.624,2.516,3.365,
-4.202,5.058,5.923,6.739,7.440,8.011,8.519,9.074,9.754,10.560,11.425,12.271,13.058,13.802,14.537,15.285,
-16.039,16.783,17.507,18.219,18.933,19.658,20.399,21.158,21.941,22.746,23.561,24.361,25.123,25.842,26.535,27.237,
-27.981,28.786,29.649,30.545,31.437,32.287,33.077,33.810,34.519,35.244,36.010,36.802,37.580,38.295,38.930,39.507,
-40.077,40.685,41.348,42.047,42.741,43.392,43.987,44.543,45.104,45.716,46.403,47.147,47.906,48.642,49.352,50.073,
-50.844,51.673,52.523,53.342,54.095,54.775,55.388,55.933,56.407,56.833,57.265,57.758,58.310,58.852,59.289,59.576,
-59.750,59.885,60.023,60.136,60.175,60.137,60.082,60.074,60.106,60.098,59.973,59.736,59.476,59.284,59.168,59.055,
-58.871,58.614,58.347,58.115,57.896,57.628,57.290,56.949,56.704,56.593,56.546,56.434,56.183,55.828,55.481,55.232,
-55.076,54.922,54.660,54.246,53.720,53.175,52.685,52.260,51.866,51.479,51.139,50.938,50.946,51.133,51.358,51.459,
-51.358,51.118,50.873,50.724,50.661,50.591,50.421,50.121,49.736,49.345,49.011,48.754,48.536,48.276,47.900,47.400,
-46.875,46.477,46.300,46.305,46.360,46.360,46.323,46.341,46.451,46.567,46.576,46.517,46.656,47.320,48.632,50.359,
-52.049,53.330,54.135,54.669,55.169,55.701,56.150,56.373,56.343,56.170,55.996,55.904,55.896,55.942,56.012,56.065,
-56.023,55.785,55.285,54.550,53.703,52.910,52.307,51.944,51.803,51.839,52.024,52.338,52.723,53.057,53.195,53.077,
-52.793,52.530,52.415,52.392,52.268,51.894,51.323,51.365,50.781,50.400,50.192,49.930,49.414,48.685,48.000,47.601,
-47.509,47.557,47.591,47.623,47.746,47.936,47.983,47.666,46.987,46.204,45.626,45.360,45.277,45.193,45.063,44.961,
-44.914,44.820,44.554,44.173,43.955,44.202,44.986,46.087,47.160,47.969,48.457,48.635,48.472,47.920,47.037,46.050,
-45.247,44.795,44.650,44.641,44.627,44.574,44.518,44.481,44.447,44.419,44.452,44.622,44.948,45.361,45.747,46.039,
-46.269,46.533,46.899,47.324,47.635,47.590,46.991,45.802,44.209,42.578,41.310,40.666,40.633,40.920,41.071,40.671,
-39.542,37.853,36.062,34.710,34.137,34.316,34.906,35.508,35.947,36.349,36.975,37.951,39.124,40.163,40.803,41.017,
-40.991,40.960,41.054,41.254,41.462,41.585,41.565,41.391,41.098,40.766,40.489,40.315,40.208,40.080,39.871,39.619,
-39.430,39.385,39.460,39.536,39.481,39.245,38.883,38.502,38.199,38.018,37.947,37.942,37.934,37.867,37.727,37.577,
-37.536,37.707,38.085,38.532,38.847,38.893,38.682,38.347,38.023,37.739,37.413,36.936,36.290,35.567,34.911,34.424,
-34.114,33.914,33.724,33.450,33.027,32.438,31.739,31.043,30.464,30.052,29.770,29.526,29.248,28.917,28.571,28.287,
-28.158,28.259,28.579,28.986,29.262,29.254,29.002,28.726,28.639,28.741,28.797,28.540,27.936,27.245,26.817,26.803,
-27.037,27.182,26.986,26.425,25.637,24.769,23.893,23.038,22.243,21.559,20.999,20.521,20.057,19.544,18.892,17.925,
-16.413,14.227,11.508,8.683,6.247,4.450,3.125,1.795,-.006,-2.442,-5.301,-8.174,-10.726,-12.866,-14.712,-16.422,
--18.016,-19.331,-20.117,-20.207,-19.618,-18.543,-17.249,-15.981,-14.921,-14.191,-13.858,-13.897,-14.171,-14.467,-14.606,-14.539,
--14.368,-14.261,-14.329,-14.586,-14.984,-15.502,-16.166,-17.012,-18.014,-19.078,-20.095,-21.011,-21.847,-22.655,-23.448,-24.191,
--24.830,-25.348,-25.786,-26.221,-26.713,-27.268,-27.843,-28.383,-28.865,-29.323,-29.823,-30.405,-31.037,-31.620,-32.059,-32.341,
--32.554,-32.816,-33.188,-33.625,-34.040,-34.401,-34.762,-35.198,-35.700,-36.144,-36.383,-36.387,-36.280,-36.238,-36.339,-36.514,
--36.644,-36.725,-36.912,-37.398,-38.236,-39.275,-40.281,-41.120,-41.832,-42.522,-43.199,-43.739,-44.015,-44.065,-44.113,-44.401,
--44.987,-45.683,-46.206,-46.371,-46.182,-45.754,-45.187,-44.520,-43.773,-42.983,-42.164,-41.239,-40.058,-38.524,-36.746,-35.044,
--33.793,-33.207,-33.241,-33.686,-34.328,-35.068,-35.907,-36.864,-37.916,-39.010,-40.087,-41.107,-42.036,-42.857,-43.584,-44.292,
--45.100,-46.128,-47.439,-49.026,-50.820,-52.725,-54.628,-56.416,-57.980,-59.246,-60.194,-60.864,-61.334,-61.676,-61.932,-62.127,
--62.290,-62.469,-62.712,-63.025,-63.366,-63.683,-63.972,-64.292,-64.713,-65.238,-65.776,-66.205,-66.461,-66.578,-66.637,-66.682,
--66.693,-66.630,-66.497,-66.358,-66.284,-66.301,-66.381,-66.474,-66.540,-66.556,-66.510,-66.415,-66.315,-66.276,-66.328,-66.439,
--66.523,-66.503,-66.361,-66.119,-65.807,-65.436,-65.026,-64.633,-64.326,-64.131,-63.993,-63.812,-63.515,-63.110,-62.669,-62.262,
--61.908,-61.565,-61.169,-60.662,-60.027,-59.305,-58.587,-57.977,-57.530,-57.232,-57.034,-56.930,-56.978,-57.234,-57.652,-58.052,
--58.206,-57.999,-57.503,-56.924,-56.455,-56.161,-55.977,-55.797,-55.560,-55.272,-54.957,-54.621,-54.235,-53.766,-53.203,-52.561,
--51.870,-51.150,-50.414,-49.676,-48.953,-48.263,-47.610,-46.975,-46.326,-45.650,-44.969,-44.340,-43.822,-43.435,-43.146,-42.878,
--42.539,-42.050,-41.367,-40.498,-39.509,-38.495,-37.528,-36.613,-35.695,-34.708,-33.653,-32.599,-31.634,-30.784,-29.984,-29.139,
--28.205,-27.220,-26.252,-25.309,-24.312,-23.154,-21.801,-20.350,-18.977,-17.828,-16.938,-16.231,-15.592,-14.941,-14.258,-13.562,
--12.877,-12.209,-11.562,-10.950,-10.415,-10.009,-9.764,-9.646,-9.535,-9.266,-8.714,-7.872,-6.854,-5.817,-4.858,-3.972,
--3.101,-2.202,-1.282,-.378,.478,1.263,1.947,2.499,2.932,3.336,3.846,4.559,5.466,6.465,7.432,8.300,
-9.077,9.815,10.568,11.362,12.178,12.957,13.634,14.202,14.748,15.418,16.293,17.311,18.299,19.129,19.836,20.590,
-21.526,22.604,23.623,24.385,24.832,25.049,25.142,25.147,25.034,24.789,24.454,24.094,23.744,23.416,23.138,22.976,
-22.983,23.142,23.366,23.574,23.767,24.000,24.305,24.630,24.891,25.068,25.257,25.600,26.163,26.872,27.566,28.124,
-28.537,28.882,29.233,29.596,29.923,30.157,30.284,30.332,30.357,30.423,30.581,30.851,31.202,31.565,31.875,32.120,
-32.351,32.640,33.038,33.572,34.275,35.179,36.258,37.368,38.293,38.893,39.219,39.444,39.604,39.397,38.289,35.919,
-32.485,28.728,25.442,22.922,20.824,18.591,16.069,13.746,12.412,12.524,13.861,15.704,17.359,18.529,19.302,19.868,
-20.290,20.515,20.519,20.380,20.216,20.071,19.900,19.647,19.321,18.987,18.691,18.416,18.109,17.731,17.288,16.803,
-16.295,15.774,15.248,14.721,14.183,13.613,13.013,12.418,11.881,11.419,10.989,10.522,9.985,9.409,8.856,8.361,
-7.914,7.482,7.049,6.618,6.193,5.767,5.330,4.884,4.442,4.011,3.585,3.160,2.748,2.366,2.004,1.628,
-1.204,.742,.291,-.107,-.461,-.813,-1.193,-1.583,-1.947,-2.274,-2.596,-2.946,-3.323,-3.692,-4.031,-4.353,
--4.683,-5.016,-5.314,-5.555,-5.764,-5.996,-6.286,-6.622,-6.976,-7.335,-7.702,-8.051,-8.323,-8.482,-8.569,-8.681,
--8.889,-9.166,-9.432,-9.660,-9.907,-10.239,-10.634,-11.005,-11.326,-11.694,-12.186,-12.644,-12.651,-11.856,-10.412,-9.081,
--8.796,-9.970,-12.126,-14.200,-15.281,-15.179,-14.388,-13.569,-13.040,-12.691,-12.273,-11.723,-11.210,-10.935,-10.945,-11.120,
--11.323,-11.516,-11.732,-11.988,-12.228,-12.377,-12.416,-12.402,-12.416,-12.493,-12.602,-12.689,-12.726,-12.722,-12.699,-12.654,
--12.560,-12.401,-12.205,-12.048,-12.010,-12.123,-12.341,-12.567,-12.710,-12.734,-12.656,-12.528,-12.400,-12.311,-12.282,-12.313,
--12.379,-12.444,-12.477,-12.474,-12.450,-12.412,-12.354,-12.273,-12.184,-12.120,-12.092,-12.076,-12.028,-11.934,-11.827,-11.756,
--11.735,-11.721,-11.665,-11.561,-11.458,-11.405,-11.397,-11.379,-11.296,-11.151,-10.998,-10.892,-10.842,-10.820,-10.792,-10.742,
--10.674,-10.595,-10.518,-10.462,-10.453,-10.496,-10.567,-10.624,-10.639,-10.620,-10.596,-10.582,-10.576,-10.572,-10.577,-10.613,
--10.689,-10.784,-10.866,-10.919,-10.955,-11.006,-11.090,-11.207,-11.343,-11.484,-11.624,-11.752,-11.859,-11.938,-11.994,-12.040,
--12.089,-12.149,-12.222,-12.310,-12.412,-12.525,-12.639,-12.745,-12.831,-12.882,-12.888,-12.858,-12.829,-12.850,-12.959,-13.154,
--13.399,-13.643,-13.857,-14.033,-14.180,-14.311,-14.445,-14.606,-14.806,-15.035,-15.258,-15.445,-15.601,-15.758,-15.945,-16.167,
--16.403,-16.640,-16.876,-17.111,-17.327,-17.502,-17.644,-17.805,-18.042,-18.368,-18.733,-19.066,-19.334,-19.566,-19.808,-20.074,
--20.343,-20.586,-20.797,-20.982,-21.140,-21.267,-21.379,-21.535,-21.791,-22.155,-22.567,-22.945,-23.255,-23.526,-23.808,-24.121,
--24.447,-24.764,-25.074,-25.397,-25.737,-26.071,-26.373,-26.640,-26.886,-27.122,-27.350,-27.579,-27.831,-28.131,-28.468,-28.792,
--29.048,-29.228,-29.373,-29.535,-29.740,-29.975,-30.221,-30.468,-30.705,-30.914,-31.074,-31.192,-31.311,-31.481,-31.710,-31.963,
--32.202,-32.423,-32.651,-32.905,-33.163,-33.385,-33.552,-33.688,-33.828,-33.983,-34.126,-34.227,-34.281,-34.320,-34.387,-34.504,
--34.664,-34.839,-34.994,-35.108,-35.181,-35.233,-35.282,-35.332,-35.375,-35.410,-35.458,-35.541,-35.650,-35.736,-35.741,-35.655,
--35.534,-35.457,-35.471,-35.555,-35.647,-35.682,-35.631,-35.499,-35.325,-35.167,-35.070,-35.030,-34.980,-34.843,-34.604,-34.332,
--34.106,-33.914,-33.637,-33.160,-32.491,-31.762,-31.099,-30.493,-29.846,-29.135,-28.519,-28.221,-28.270,-28.373,-28.079,-27.134,
--25.713,-24.304,-23.361,-23.010,-23.043,-23.147,-23.144,-23.037,-22.911,-22.809,-22.718,-22.612,-22.492,-22.360,-22.202,-21.988,
--21.713,-21.404,-21.096,-20.793,-20.471,-20.110,-19.731,-19.388,-19.125,-18.949,-18.831,-18.740,-18.670,-18.644,-18.683,-18.774,
--18.853,-18.831,-18.658,-18.364,-18.050,-17.821,-17.691,-17.560,-17.288,-16.818,-16.256,-15.840,-15.803,-16.221,-16.933,-17.601,
--17.881,-17.636,-17.028,-16.430,-16.152,-16.194,-16.218,-15.823,-14.906,-13.790,-12.979,-12.724,-12.813,-12.795,-12.457,-12.095,
--12.300,-13.430,-15.255,-17.104,-18.368,-18.917,-19.079,-19.266,-19.635,-20.067,-20.402,-20.648,-20.945,-21.391,-21.933,-22.431,
--22.813,-23.127,-23.462,-23.839,-24.194,-24.468,-24.678,-24.905,-25.203,-25.543,-25.842,-26.044,-26.175,-26.329,-26.588,-26.954,
--27.336,-27.600,-27.679,-27.646,-27.703,-28.066,-28.810,-29.795,-30.748,-31.443,-31.833,-32.039,-32.210,-32.402,-32.561,-32.620,
--32.583,-32.523,-32.518,-32.592,-32.723,-32.887,-33.075,-33.271,-33.435,-33.519,-33.511,-33.459,-33.431,-33.456,-33.498,-33.480,
--33.352,-33.122,-32.850,-32.610,-32.459,-32.429,-32.534,-32.769,-33.103,-33.484,-33.855,-34.181,-34.457,-34.694,-34.895,-35.034,
--35.064,-34.947,-34.697,-34.387,-34.121,-33.980,-33.984,-34.088,-34.236,-34.388,-34.529,-34.635,-34.659,-34.568,-34.387,-34.210,
--34.150,-34.251,-34.459,-34.658,-34.761,-34.743,-34.618,-34.383,-34.026,-33.577,-33.160,-32.956,-33.088,-33.523,-34.077,-34.532,
--34.774,-34.838,-34.842,-34.896,-35.032,-35.218,-35.384,-35.452,-35.362,-35.092,-34.693,-34.269,-33.926,-33.704,-33.572,-33.485,
--33.450,-33.522,-33.736,-34.036,-34.290,-34.386,-34.319,-34.184,-34.078,-34.020,-33.955,-33.834,-33.674,-33.541,-33.476,-33.451,
--33.393,-33.263,-33.081,-32.906,-32.773,-32.679,-32.611,-32.576,-32.591,-32.655,-32.736,-32.795,-32.829,-32.869,-32.947,-33.064,
--33.183,-33.262,-33.272,-33.200,-33.034,-32.769,-32.426,-32.057,-31.713,-31.406,-31.108,-30.790,-30.453,-30.132,-29.848,-29.585,
--29.301,-28.977,-28.634,-28.306,-27.994,-27.660,-27.258,-26.781,-26.258,-25.723,-25.188,-24.648,-24.106,-23.581,-23.085,-22.603,
--22.102,-21.566,-21.009,-20.451,-19.887,-19.277,-18.586,-17.820,-17.024,-16.239,-15.465,-14.670,-13.837,-12.988,-12.164,-11.387,
--10.640,-9.899,-9.163,-8.454,-7.779,-7.094,-6.327,-5.433,-4.437,-3.417,-2.447,-1.546,-.688,.162,1.015,1.864,
-2.713,3.581,4.473,5.348,6.130,6.768,7.282,7.774,8.360,9.102,9.977,10.902,11.796,12.613,13.352,14.032,
-14.684,15.345,16.047,16.802,17.595,18.390,19.160,19.906,20.654,21.430,22.239,23.055,23.849,24.605,25.334,26.059,
-26.803,27.580,28.398,29.257,30.149,31.048,31.918,32.727,33.463,34.150,34.830,35.543,36.299,37.071,37.817,38.511,
-39.155,39.781,40.423,41.093,41.779,42.455,43.096,43.694,44.262,44.832,45.443,46.122,46.866,47.641,48.408,49.153,
-49.901,50.691,51.543,52.428,53.283,54.049,54.701,55.248,55.718,56.147,56.579,57.061,57.612,58.194,58.719,59.102,
-59.324,59.448,59.556,59.677,59.763,59.756,59.668,59.588,59.606,59.713,59.802,59.756,59.557,59.294,59.072,58.913,
-58.753,58.528,58.250,57.990,57.790,57.602,57.336,56.966,56.577,56.295,56.167,56.103,55.948,55.624,55.196,54.819,
-54.598,54.502,54.387,54.115,53.660,53.125,52.651,52.302,52.020,51.694,51.279,50.871,50.657,50.761,51.118,51.495,
-51.645,51.478,51.108,50.733,50.477,50.320,50.160,49.921,49.611,49.281,48.971,48.687,48.413,48.123,47.770,47.312,
-46.759,46.223,45.867,45.778,45.876,45.963,45.902,45.740,45.650,45.737,45.914,46.022,46.063,46.313,47.132,48.633,
-50.509,52.221,53.385,54.017,54.438,54.939,55.542,56.041,56.237,56.119,55.846,55.592,55.434,55.366,55.375,55.461,
-55.585,55.635,55.458,54.969,54.210,53.336,52.534,51.945,51.627,51.564,51.699,51.962,52.292,52.634,52.920,53.073,
-53.052,52.899,52.728,52.628,52.565,52.387,51.971,51.365,51.091,50.534,50.136,49.891,49.616,49.134,48.495,47.976,
-47.837,48.074,48.425,48.625,48.638,48.622,48.677,48.678,48.376,47.674,46.759,45.962,45.486,45.282,45.177,45.073,
-44.986,44.931,44.827,44.575,44.224,44.014,44.211,44.874,45.807,46.723,47.449,47.953,48.223,48.162,47.658,46.758,
-45.726,44.903,44.471,44.357,44.352,44.313,44.245,44.219,44.248,44.265,44.217,44.150,44.180,44.378,44.698,45.018,
-45.255,45.433,45.649,45.973,46.366,46.674,46.669,46.128,44.921,43.112,41.006,39.099,37.884,37.607,38.094,38.800,
-39.073,38.505,37.154,35.502,34.161,33.512,33.525,33.865,34.187,34.397,34.671,35.250,36.194,37.318,38.336,39.070,
-39.531,39.844,40.103,40.319,40.470,40.568,40.653,40.733,40.758,40.673,40.498,40.335,40.268,40.280,40.260,40.118,
-39.887,39.707,39.697,39.836,39.971,39.934,39.663,39.231,38.778,38.426,38.232,38.199,38.296,38.454,38.581,38.601,
-38.505,38.374,38.319,38.387,38.510,38.544,38.389,38.062,37.691,37.401,37.212,37.027,36.716,36.228,35.631,35.065,
-34.646,34.399,34.259,34.118,33.882,33.517,33.056,32.574,32.134,31.742,31.342,30.875,30.346,29.830,29.418,29.149,
-29.007,28.980,29.100,29.395,29.789,30.093,30.119,29.848,29.469,29.216,29.148,29.093,28.816,28.271,27.671,27.307,
-27.274,27.379,27.292,26.807,25.964,24.971,24.016,23.168,22.407,21.709,21.091,20.597,20.256,20.067,19.960,19.762,
-19.194,17.966,15.964,13.377,10.657,8.264,6.387,4.825,3.137,.951,-1.789,-4.807,-7.695,-10.180,-12.253,-14.099,
--15.891,-17.628,-19.129,-20.161,-20.601,-20.484,-19.937,-19.085,-18.034,-16.926,-15.980,-15.431,-15.373,-15.656,-15.950,-15.955,
--15.610,-15.124,-14.813,-14.876,-15.284,-15.859,-16.445,-17.018,-17.660,-18.434,-19.313,-20.197,-21.009,-21.758,-22.507,-23.300,
--24.103,-24.830,-25.414,-25.868,-26.270,-26.708,-27.220,-27.779,-28.329,-28.833,-29.304,-29.796,-30.356,-30.981,-31.606,-32.143,
--32.541,-32.827,-33.087,-33.400,-33.778,-34.172,-34.535,-34.871,-35.224,-35.612,-35.985,-36.257,-36.392,-36.450,-36.540,-36.715,
--36.927,-37.092,-37.199,-37.344,-37.644,-38.108,-38.620,-39.050,-39.394,-39.777,-40.305,-40.904,-41.347,-41.448,-41.257,-41.048,
--41.082,-41.383,-41.718,-41.811,-41.576,-41.154,-40.747,-40.439,-40.162,-39.829,-39.435,-39.021,-38.559,-37.916,-36.981,-35.823,
--34.735,-34.068,-34.022,-34.552,-35.460,-36.570,-37.810,-39.167,-40.597,-41.986,-43.206,-44.177,-44.895,-45.405,-45.770,-46.067,
--46.389,-46.838,-47.503,-48.435,-49.639,-51.074,-52.649,-54.239,-55.718,-57.001,-58.074,-58.978,-59.764,-60.439,-60.970,-61.321,
--61.506,-61.606,-61.742,-62.004,-62.403,-62.867,-63.308,-63.688,-64.040,-64.417,-64.831,-65.227,-65.545,-65.780,-65.994,-66.244,
--66.515,-66.720,-66.776,-66.681,-66.517,-66.377,-66.302,-66.283,-66.297,-66.332,-66.384,-66.432,-66.456,-66.464,-66.492,-66.563,
--66.646,-66.663,-66.551,-66.305,-65.968,-65.587,-65.183,-64.772,-64.378,-64.025,-63.701,-63.366,-62.995,-62.623,-62.312,-62.078,
--61.834,-61.438,-60.797,-59.927,-58.938,-57.954,-57.052,-56.277,-55.661,-55.227,-54.976,-54.893,-54.977,-55.256,-55.745,-56.378,
--56.990,-57.394,-57.488,-57.305,-56.961,-56.559,-56.142,-55.722,-55.322,-54.981,-54.722,-54.514,-54.294,-54.011,-53.652,-53.226,
--52.731,-52.150,-51.470,-50.710,-49.922,-49.162,-48.465,-47.832,-47.233,-46.624,-45.972,-45.284,-44.625,-44.082,-43.707,-43.453,
--43.169,-42.682,-41.898,-40.871,-39.767,-38.753,-37.895,-37.122,-36.301,-35.336,-34.236,-33.105,-32.062,-31.165,-30.380,-29.617,
--28.800,-27.908,-26.977,-26.036,-25.060,-23.963,-22.670,-21.203,-19.705,-18.379,-17.362,-16.645,-16.085,-15.511,-14.822,-14.020,
--13.175,-12.369,-11.664,-11.100,-10.692,-10.426,-10.262,-10.150,-10.045,-9.897,-9.636,-9.178,-8.466,-7.523,-6.453,-5.382,
--4.390,-3.477,-2.594,-1.693,-.752,.216,1.164,2.022,2.711,3.204,3.568,3.957,4.529,5.351,6.364,7.426,
-8.405,9.241,9.959,10.632,11.325,12.063,12.812,13.513,14.146,14.765,15.463,16.296,17.210,18.089,18.860,19.579,
-20.383,21.344,22.376,23.274,23.868,24.140,24.205,24.196,24.167,24.091,23.932,23.690,23.407,23.137,22.937,22.868,
-22.967,23.207,23.493,23.725,23.884,24.042,24.287,24.618,24.943,25.177,25.356,25.639,26.177,26.968,27.834,28.545,
-28.989,29.236,29.457,29.778,30.194,30.597,30.874,30.988,30.990,30.975,31.027,31.191,31.452,31.757,32.042,32.281,
-32.518,32.832,33.276,33.826,34.420,35.042,35.767,36.677,37.738,38.760,39.538,40.030,40.368,40.626,40.560,39.626,
-37.377,33.910,29.941,26.351,23.564,21.326,19.094,16.672,14.508,13.358,13.641,15.079,16.913,18.460,19.494,20.171,
-20.693,21.080,21.223,21.091,20.805,20.533,20.326,20.109,19.799,19.406,19.017,18.688,18.389,18.045,17.620,17.140,
-16.643,16.137,15.610,15.066,14.530,14.014,13.488,12.910,12.275,11.639,11.069,10.580,10.125,9.649,9.138,8.623,
-8.137,7.679,7.225,6.765,6.318,5.902,5.509,5.106,4.669,4.204,3.737,3.292,2.876,2.482,2.102,1.723,
-1.323,.890,.433,-.008,-.403,-.752,-1.090,-1.451,-1.835,-2.212,-2.556,-2.874,-3.189,-3.518,-3.852,-4.175,
--4.480,-4.777,-5.071,-5.359,-5.637,-5.906,-6.179,-6.465,-6.774,-7.123,-7.524,-7.953,-8.340,-8.607,-8.731,-8.786,
--8.879,-9.064,-9.305,-9.538,-9.763,-10.037,-10.395,-10.784,-11.119,-11.414,-11.787,-12.303,-12.787,-12.870,-12.317,-11.362,
--10.680,-10.931,-12.215,-13.938,-15.222,-15.531,-14.987,-14.142,-13.483,-13.108,-12.808,-12.384,-11.853,-11.397,-11.161,-11.142,
--11.237,-11.364,-11.511,-11.696,-11.909,-12.108,-12.260,-12.365,-12.440,-12.492,-12.519,-12.528,-12.543,-12.585,-12.652,-12.716,
--12.738,-12.698,-12.602,-12.478,-12.366,-12.306,-12.319,-12.400,-12.520,-12.647,-12.752,-12.810,-12.795,-12.693,-12.528,-12.364,
--12.274,-12.290,-12.386,-12.501,-12.583,-12.619,-12.613,-12.567,-12.484,-12.384,-12.308,-12.279,-12.276,-12.248,-12.165,-12.052,
--11.958,-11.907,-11.865,-11.785,-11.668,-11.562,-11.519,-11.528,-11.523,-11.449,-11.312,-11.172,-11.078,-11.030,-10.995,-10.949,
--10.896,-10.843,-10.780,-10.697,-10.612,-10.573,-10.617,-10.723,-10.830,-10.885,-10.887,-10.880,-10.894,-10.926,-10.951,-10.972,
--11.017,-11.111,-11.232,-11.324,-11.350,-11.326,-11.309,-11.350,-11.453,-11.590,-11.730,-11.860,-11.978,-12.082,-12.164,-12.224,
--12.278,-12.343,-12.425,-12.517,-12.610,-12.708,-12.825,-12.962,-13.099,-13.200,-13.230,-13.185,-13.097,-13.026,-13.029,-13.139,
--13.346,-13.607,-13.867,-14.085,-14.244,-14.357,-14.457,-14.581,-14.756,-14.975,-15.204,-15.405,-15.573,-15.737,-15.934,-16.175,
--16.433,-16.679,-16.915,-17.164,-17.439,-17.712,-17.944,-18.132,-18.331,-18.607,-18.969,-19.353,-19.683,-19.941,-20.176,-20.451,
--20.774,-21.102,-21.384,-21.609,-21.795,-21.953,-22.083,-22.195,-22.345,-22.594,-22.960,-23.384,-23.775,-24.083,-24.335,-24.594,
--24.901,-25.247,-25.602,-25.949,-26.290,-26.628,-26.952,-27.246,-27.510,-27.750,-27.981,-28.216,-28.476,-28.785,-29.143,-29.509,
--29.816,-30.022,-30.152,-30.273,-30.446,-30.676,-30.936,-31.200,-31.466,-31.731,-31.972,-32.157,-32.286,-32.402,-32.558,-32.774,
--33.022,-33.266,-33.495,-33.719,-33.940,-34.134,-34.276,-34.371,-34.458,-34.573,-34.718,-34.862,-34.975,-35.054,-35.126,-35.223,
--35.369,-35.567,-35.790,-35.986,-36.107,-36.143,-36.137,-36.149,-36.207,-36.289,-36.355,-36.403,-36.467,-36.565,-36.663,-36.695,
--36.635,-36.532,-36.471,-36.498,-36.583,-36.655,-36.662,-36.599,-36.480,-36.321,-36.148,-35.995,-35.881,-35.776,-35.608,-35.337,
--35.004,-34.695,-34.441,-34.161,-33.730,-33.107,-32.378,-31.658,-30.970,-30.244,-29.461,-28.762,-28.372,-28.363,-28.503,-28.369,
--27.657,-26.425,-25.061,-23.993,-23.423,-23.267,-23.301,-23.342,-23.328,-23.275,-23.216,-23.175,-23.160,-23.155,-23.109,-22.960,
--22.678,-22.298,-21.888,-21.490,-21.096,-20.686,-20.278,-19.937,-19.722,-19.627,-19.580,-19.498,-19.352,-19.183,-19.068,-19.054,
--19.121,-19.185,-19.150,-18.972,-18.692,-18.406,-18.181,-17.989,-17.721,-17.298,-16.778,-16.362,-16.281,-16.632,-17.301,-18.003,
--18.435,-18.412,-17.954,-17.273,-16.662,-16.321,-16.216,-16.085,-15.633,-14.803,-13.861,-13.204,-13.011,-13.072,-12.997,-12.628,
--12.278,-12.511,-13.649,-15.438,-17.207,-18.370,-18.836,-18.967,-19.194,-19.662,-20.219,-20.673,-21.011,-21.377,-21.874,-22.448,
--22.958,-23.330,-23.618,-23.918,-24.249,-24.545,-24.746,-24.884,-25.052,-25.314,-25.640,-25.945,-26.179,-26.364,-26.562,-26.807,
--27.075,-27.312,-27.491,-27.646,-27.863,-28.232,-28.794,-29.504,-30.247,-30.897,-31.393,-31.759,-32.077,-32.401,-32.722,-32.970,
--33.085,-33.052,-32.915,-32.747,-32.621,-32.593,-32.688,-32.881,-33.100,-33.257,-33.307,-33.276,-33.235,-33.239,-33.284,-33.311,
--33.271,-33.160,-33.019,-32.889,-32.778,-32.678,-32.600,-32.594,-32.724,-33.009,-33.390,-33.762,-34.039,-34.210,-34.336,-34.483,
--34.658,-34.798,-34.822,-34.697,-34.467,-34.212,-33.995,-33.840,-33.753,-33.753,-33.875,-34.119,-34.417,-34.657,-34.751,-34.703,
--34.598,-34.530,-34.529,-34.554,-34.545,-34.479,-34.367,-34.204,-33.945,-33.558,-33.096,-32.736,-32.690,-33.063,-33.749,-34.478,
--34.968,-35.095,-34.934,-34.680,-34.505,-34.472,-34.543,-34.632,-34.671,-34.624,-34.484,-34.274,-34.040,-33.839,-33.713,-33.685,
--33.760,-33.941,-34.225,-34.567,-34.871,-35.029,-34.995,-34.833,-34.677,-34.637,-34.719,-34.838,-34.895,-34.862,-34.776,-34.684,
--34.597,-34.496,-34.380,-34.289,-34.265,-34.305,-34.361,-34.382,-34.364,-34.344,-34.351,-34.366,-34.336,-34.228,-34.064,-33.906,
--33.813,-33.803,-33.847,-33.888,-33.864,-33.729,-33.477,-33.147,-32.802,-32.475,-32.148,-31.771,-31.325,-30.857,-30.448,-30.138,
--29.890,-29.620,-29.279,-28.889,-28.505,-28.154,-27.806,-27.412,-26.955,-26.460,-25.959,-25.458,-24.943,-24.411,-23.883,-23.379,
--22.890,-22.387,-21.854,-21.305,-20.761,-20.213,-19.622,-18.952,-18.212,-17.445,-16.680,-15.904,-15.080,-14.203,-13.322,-12.499,
--11.757,-11.059,-10.352,-9.620,-8.891,-8.186,-7.474,-6.691,-5.796,-4.816,-3.833,-2.916,-2.073,-1.265,-.453,.367,
-1.179,1.983,2.800,3.644,4.479,5.240,5.881,6.426,6.963,7.588,8.348,9.220,10.150,11.079,11.966,12.776,
-13.491,14.124,14.730,15.380,16.119,16.933,17.768,18.576,19.352,20.124,20.918,21.727,22.523,23.288,24.033,24.786,
-25.564,26.363,27.170,27.983,28.817,29.690,30.594,31.493,32.340,33.105,33.797,34.457,35.134,35.854,36.609,37.370,
-38.105,38.806,39.482,40.149,40.819,41.490,42.155,42.805,43.432,44.037,44.635,45.255,45.934,46.680,47.471,48.262,
-49.030,49.790,50.589,51.450,52.340,53.180,53.895,54.467,54.938,55.377,55.838,56.337,56.869,57.415,57.943,58.404,
-58.756,58.990,59.140,59.249,59.329,59.354,59.305,59.223,59.197,59.289,59.458,59.573,59.515,59.280,58.973,58.717,
-58.541,58.380,58.164,57.895,57.636,57.426,57.227,56.962,56.617,56.265,56.006,55.850,55.695,55.413,54.979,54.509,
-54.169,54.029,53.994,53.875,53.536,53.006,52.456,52.063,51.872,51.768,51.579,51.244,50.885,50.728,50.906,51.320,
-51.690,51.757,51.470,50.998,50.562,50.259,50.026,49.758,49.433,49.114,48.856,48.638,48.392,48.088,47.751,47.407,
-47.031,46.599,46.173,45.913,45.930,46.144,46.300,46.187,45.837,45.508,45.430,45.596,45.815,45.985,46.295,47.092,
-48.540,50.387,52.115,53.324,54.009,54.468,54.969,55.511,55.882,55.919,55.673,55.344,55.093,54.946,54.854,54.801,
-54.816,54.897,54.948,54.830,54.471,53.923,53.316,52.780,52.391,52.181,52.146,52.241,52.386,52.511,52.593,52.659,
-52.723,52.755,52.715,52.601,52.456,52.295,52.053,51.647,51.091,50.656,50.156,49.734,49.447,49.201,48.854,48.429,
-48.158,48.278,48.766,49.307,49.553,49.415,49.098,48.839,48.651,48.330,47.706,46.856,46.047,45.500,45.224,45.081,
-44.964,44.863,44.790,44.688,44.483,44.223,44.106,44.339,44.940,45.715,46.426,46.971,47.385,47.670,47.694,47.281,
-46.433,45.416,44.600,44.187,44.093,44.076,43.979,43.834,43.761,43.799,43.864,43.852,43.765,43.708,43.778,43.973,
-44.204,44.396,44.552,44.727,44.966,45.255,45.528,45.667,45.492,44.777,43.356,41.287,38.952,36.953,35.816,35.681,
-36.189,36.682,36.595,35.772,34.511,33.316,32.562,32.299,32.324,32.420,32.547,32.835,33.412,34.256,35.201,36.079,
-36.847,37.571,38.296,38.961,39.440,39.682,39.775,39.868,40.033,40.207,40.287,40.261,40.233,40.311,40.480,40.602,
-40.554,40.355,40.162,40.126,40.250,40.384,40.346,40.060,39.597,39.107,38.739,38.579,38.646,38.887,39.190,39.407,
-39.426,39.233,38.919,38.614,38.389,38.213,38.001,37.706,37.366,37.077,36.911,36.848,36.794,36.644,36.354,35.957,
-35.534,35.164,34.887,34.692,34.529,34.343,34.107,33.844,33.594,33.358,33.055,32.568,31.846,30.990,30.214,29.704,
-29.500,29.505,29.613,29.811,30.137,30.549,30.864,30.871,30.529,30.031,29.647,29.481,29.383,29.121,28.632,28.103,
-27.789,27.744,27.735,27.425,26.644,25.516,24.338,23.358,22.636,22.074,21.549,21.020,20.546,20.237,20.155,20.232,
-20.221,19.760,18.547,16.537,14.032,11.540,9.486,7.947,6.608,4.978,2.711,-.175,-3.327,-6.309,-8.867,-11.043,
--13.055,-15.068,-17.030,-18.711,-19.886,-20.492,-20.633,-20.447,-19.995,-19.286,-18.400,-17.575,-17.111,-17.163,-17.581,-17.980,
--17.990,-17.516,-16.798,-16.235,-16.113,-16.445,-17.026,-17.621,-18.129,-18.607,-19.156,-19.805,-20.494,-21.143,-21.744,-22.369,
--23.094,-23.915,-24.741,-25.459,-26.019,-26.461,-26.872,-27.323,-27.830,-28.365,-28.894,-29.404,-29.914,-30.457,-31.053,-31.681,
--32.274,-32.753,-33.085,-33.317,-33.549,-33.857,-34.239,-34.626,-34.953,-35.223,-35.490,-35.798,-36.129,-36.430,-36.667,-36.861,
--37.061,-37.287,-37.519,-37.728,-37.901,-38.025,-38.062,-37.958,-37.729,-37.501,-37.447,-37.626,-37.888,-37.964,-37.706,-37.256,
--36.955,-37.059,-37.509,-37.973,-38.132,-37.934,-37.586,-37.318,-37.172,-37.014,-36.733,-36.378,-36.095,-35.935,-35.764,-35.396,
--34.818,-34.280,-34.155,-34.690,-35.870,-37.482,-39.285,-41.118,-42.886,-44.495,-45.835,-46.820,-47.441,-47.762,-47.882,-47.896,
--47.882,-47.909,-48.038,-48.320,-48.803,-49.530,-50.519,-51.725,-53.029,-54.280,-55.379,-56.326,-57.200,-58.071,-58.932,-59.694,
--60.254,-60.584,-60.758,-60.919,-61.193,-61.622,-62.149,-62.673,-63.128,-63.510,-63.861,-64.205,-64.526,-64.801,-65.043,-65.302,
--65.610,-65.924,-66.146,-66.204,-66.118,-65.983,-65.886,-65.855,-65.870,-65.916,-66.006,-66.149,-66.314,-66.443,-66.494,-66.467,
--66.381,-66.228,-65.980,-65.621,-65.172,-64.671,-64.147,-63.611,-63.085,-62.600,-62.153,-61.682,-61.109,-60.445,-59.832,-59.443,
--59.307,-59.229,-58.902,-58.138,-56.996,-55.730,-54.594,-53.701,-53.032,-52.531,-52.184,-52.007,-52.014,-52.196,-52.543,-53.040,
--53.654,-54.318,-54.955,-55.509,-55.937,-56.190,-56.197,-55.919,-55.417,-54.844,-54.368,-54.062,-53.881,-53.735,-53.570,-53.388,
--53.184,-52.902,-52.457,-51.808,-51.009,-50.174,-49.405,-48.738,-48.153,-47.604,-47.048,-46.450,-45.791,-45.102,-44.459,-43.934,
--43.512,-43.055,-42.382,-41.409,-40.238,-39.103,-38.196,-37.525,-36.911,-36.139,-35.124,-33.957,-32.808,-31.794,-30.907,-30.068,
--29.211,-28.334,-27.477,-26.656,-25.831,-24.903,-23.772,-22.404,-20.881,-19.394,-18.149,-17.245,-16.608,-16.043,-15.364,-14.516,
--13.579,-12.685,-11.928,-11.341,-10.933,-10.706,-10.636,-10.649,-10.644,-10.552,-10.359,-10.076,-9.672,-9.071,-8.217,-7.147,
--5.988,-4.879,-3.882,-2.960,-2.031,-1.037,.019,1.073,2.030,2.800,3.355,3.762,4.170,4.738,5.545,6.547,
-7.614,8.618,9.496,10.253,10.941,11.609,12.286,12.972,13.651,14.311,14.967,15.646,16.363,17.096,17.807,18.501,
-19.245,20.117,21.113,22.115,22.948,23.495,23.762,23.842,23.821,23.730,23.558,23.314,23.045,22.825,22.721,22.775,
-22.997,23.342,23.710,23.990,24.137,24.216,24.349,24.610,24.952,25.259,25.478,25.696,26.092,26.775,27.670,28.549,
-29.189,29.525,29.682,29.860,30.190,30.645,31.087,31.373,31.456,31.403,31.345,31.394,31.583,31.863,32.141,32.359,
-32.548,32.818,33.279,33.929,34.637,35.237,35.692,36.161,36.872,37.894,39.033,39.977,40.570,40.913,41.158,41.162,
-40.404,38.340,34.923,30.792,26.881,23.770,21.358,19.163,16.952,15.072,14.175,14.610,16.075,17.830,19.244,20.147,
-20.732,21.201,21.546,21.640,21.456,21.129,20.825,20.577,20.291,19.886,19.404,18.958,18.602,18.282,17.902,17.432,
-16.922,16.428,15.949,15.445,14.902,14.356,13.844,13.346,12.797,12.155,11.458,10.794,10.224,9.743,9.302,8.861,
-8.413,7.963,7.503,7.020,6.524,6.053,5.632,5.249,4.857,4.422,3.954,3.496,3.077,2.689,2.301,1.893,
-1.466,1.030,.591,.153,-.275,-.675,-1.041,-1.387,-1.738,-2.103,-2.465,-2.798,-3.090,-3.359,-3.632,-3.927,
--4.235,-4.539,-4.820,-5.078,-5.331,-5.605,-5.914,-6.249,-6.590,-6.924,-7.267,-7.640,-8.032,-8.385,-8.633,-8.765,
--8.844,-8.958,-9.139,-9.353,-9.561,-9.778,-10.055,-10.405,-10.770,-11.096,-11.424,-11.873,-12.478,-13.058,-13.307,-13.083,
--12.629,-12.462,-12.967,-14.048,-15.167,-15.749,-15.605,-14.996,-14.332,-13.828,-13.416,-12.944,-12.385,-11.870,-11.528,-11.369,
--11.307,-11.284,-11.319,-11.448,-11.651,-11.850,-11.993,-12.101,-12.223,-12.367,-12.478,-12.504,-12.459,-12.418,-12.448,-12.547,
--12.660,-12.736,-12.762,-12.754,-12.722,-12.662,-12.570,-12.456,-12.354,-12.303,-12.338,-12.469,-12.659,-12.824,-12.876,-12.778,
--12.586,-12.406,-12.324,-12.349,-12.431,-12.517,-12.591,-12.655,-12.694,-12.681,-12.606,-12.506,-12.434,-12.410,-12.402,-12.362,
--12.282,-12.190,-12.113,-12.043,-11.949,-11.830,-11.722,-11.660,-11.635,-11.598,-11.515,-11.405,-11.318,-11.280,-11.266,-11.231,
--11.163,-11.083,-11.010,-10.931,-10.825,-10.713,-10.661,-10.719,-10.869,-11.025,-11.114,-11.133,-11.138,-11.176,-11.237,-11.281,
--11.295,-11.315,-11.383,-11.492,-11.582,-11.599,-11.550,-11.499,-11.508,-11.593,-11.728,-11.877,-12.025,-12.168,-12.298,-12.400,
--12.472,-12.532,-12.599,-12.677,-12.753,-12.825,-12.912,-13.043,-13.220,-13.400,-13.518,-13.524,-13.426,-13.286,-13.186,-13.189,
--13.316,-13.547,-13.830,-14.104,-14.319,-14.456,-14.539,-14.623,-14.763,-14.975,-15.224,-15.448,-15.609,-15.728,-15.872,-16.096,
--16.395,-16.711,-16.988,-17.225,-17.461,-17.727,-18.011,-18.274,-18.510,-18.762,-19.085,-19.473,-19.857,-20.164,-20.391,-20.607,
--20.883,-21.223,-21.569,-21.862,-22.100,-22.318,-22.533,-22.731,-22.894,-23.052,-23.268,-23.579,-23.953,-24.311,-24.599,-24.833,
--25.077,-25.379,-25.740,-26.122,-26.492,-26.840,-27.172,-27.494,-27.811,-28.122,-28.423,-28.714,-29.007,-29.329,-29.706,-30.126,
--30.529,-30.837,-31.022,-31.134,-31.263,-31.467,-31.734,-32.016,-32.282,-32.537,-32.789,-33.024,-33.212,-33.350,-33.475,-33.635,
--33.841,-34.065,-34.275,-34.461,-34.634,-34.788,-34.900,-34.960,-34.994,-35.050,-35.162,-35.319,-35.490,-35.645,-35.777,-35.889,
--35.994,-36.115,-36.277,-36.481,-36.678,-36.796,-36.803,-36.750,-36.732,-36.797,-36.904,-36.975,-36.981,-36.968,-36.993,-37.052,
--37.079,-37.030,-36.932,-36.861,-36.854,-36.876,-36.870,-36.820,-36.755,-36.692,-36.611,-36.477,-36.303,-36.132,-35.980,-35.802,
--35.542,-35.218,-34.925,-34.736,-34.599,-34.360,-33.888,-33.183,-32.343,-31.455,-30.543,-29.639,-28.867,-28.416,-28.362,-28.536,
--28.580,-28.175,-27.260,-26.051,-24.882,-24.008,-23.513,-23.339,-23.369,-23.480,-23.581,-23.639,-23.677,-23.727,-23.767,-23.715,
--23.491,-23.101,-22.640,-22.209,-21.828,-21.439,-20.998,-20.553,-20.219,-20.073,-20.071,-20.081,-19.984,-19.770,-19.533,-19.387,
--19.385,-19.479,-19.562,-19.532,-19.357,-19.087,-18.812,-18.569,-18.298,-17.889,-17.309,-16.691,-16.290,-16.304,-16.718,-17.295,
--17.732,-17.847,-17.648,-17.279,-16.900,-16.615,-16.446,-16.318,-16.087,-15.614,-14.898,-14.128,-13.573,-13.354,-13.320,-13.182,
--12.833,-12.535,-12.760,-13.778,-15.372,-16.962,-18.037,-18.516,-18.721,-19.033,-19.586,-20.241,-20.819,-21.293,-21.772,-22.330,
--22.910,-23.393,-23.734,-23.998,-24.273,-24.566,-24.813,-24.970,-25.080,-25.231,-25.465,-25.743,-26.006,-26.236,-26.469,-26.731,
--26.986,-27.172,-27.277,-27.385,-27.629,-28.096,-28.758,-29.493,-30.169,-30.720,-31.165,-31.569,-31.983,-32.405,-32.792,-33.096,
--33.288,-33.365,-33.333,-33.210,-33.026,-32.846,-32.741,-32.757,-32.870,-33.004,-33.086,-33.100,-33.085,-33.090,-33.113,-33.103,
--33.017,-32.873,-32.754,-32.732,-32.802,-32.877,-32.856,-32.728,-32.600,-32.622,-32.869,-33.270,-33.653,-33.885,-33.966,-34.018,
--34.168,-34.426,-34.683,-34.807,-34.759,-34.606,-34.433,-34.264,-34.066,-33.835,-33.652,-33.650,-33.891,-34.299,-34.697,-34.939,
--34.999,-34.952,-34.878,-34.794,-34.666,-34.476,-34.256,-34.041,-33.819,-33.527,-33.131,-32.718,-32.491,-32.650,-33.236,-34.062,
--34.797,-35.151,-35.038,-34.598,-34.091,-33.732,-33.596,-33.630,-33.737,-33.852,-33.952,-34.032,-34.079,-34.080,-34.049,-34.038,
--34.114,-34.316,-34.629,-34.986,-35.294,-35.467,-35.474,-35.363,-35.252,-35.275,-35.490,-35.836,-36.166,-36.348,-36.342,-36.212,
--36.050,-35.919,-35.830,-35.786,-35.805,-35.901,-36.038,-36.136,-36.123,-35.995,-35.823,-35.683,-35.592,-35.501,-35.339,-35.088,
--34.789,-34.520,-34.345,-34.283,-34.303,-34.334,-34.295,-34.135,-33.856,-33.506,-33.126,-32.714,-32.240,-31.699,-31.153,-30.687,
--30.338,-30.049,-29.721,-29.299,-28.821,-28.374,-28.004,-27.678,-27.327,-26.916,-26.466,-26.015,-25.570,-25.107,-24.611,-24.096,
--23.591,-23.106,-22.622,-22.120,-21.601,-21.071,-20.518,-19.905,-19.211,-18.458,-17.697,-16.957,-16.214,-15.419,-14.559,-13.681,
--12.859,-12.123,-11.441,-10.756,-10.038,-9.304,-8.571,-7.823,-7.015,-6.124,-5.183,-4.258,-3.398,-2.593,-1.801,-.994,
--.185,.595,1.340,2.078,2.836,3.606,4.343,5.011,5.622,6.231,6.901,7.658,8.493,9.385,10.316,11.257,
-12.158,12.963,13.650,14.261,14.874,15.554,16.310,17.108,17.915,18.728,19.562,20.413,21.249,22.037,22.781,23.520,
-24.298,25.122,25.961,26.779,27.577,28.387,29.249,30.166,31.096,31.980,32.778,33.492,34.162,34.833,35.534,36.262,
-36.999,37.725,38.433,39.129,39.820,40.511,41.203,41.894,42.579,43.246,43.887,44.508,45.141,45.824,46.572,47.362,
-48.148,48.909,49.670,50.482,51.362,52.252,53.049,53.677,54.151,54.567,55.030,55.576,56.161,56.712,57.190,57.609,
-57.992,58.343,58.630,58.826,58.927,58.954,58.940,58.923,58.946,59.043,59.202,59.343,59.352,59.163,58.819,58.457,
-58.200,58.066,57.971,57.817,57.574,57.285,57.006,56.745,56.481,56.216,55.987,55.815,55.651,55.389,54.961,54.419,
-53.917,53.597,53.468,53.391,53.183,52.759,52.200,51.700,51.421,51.381,51.435,51.398,51.200,50.954,50.865,51.043,
-51.382,51.620,51.547,51.166,50.669,50.255,49.965,49.696,49.361,49.002,48.733,48.602,48.520,48.366,48.127,47.910,
-47.804,47.752,47.614,47.345,47.092,47.051,47.226,47.366,47.181,46.643,46.058,45.802,45.993,46.428,46.855,47.274,
-47.949,49.106,50.645,52.174,53.329,54.050,54.548,55.027,55.474,55.719,55.658,55.385,55.098,54.910,54.785,54.640,
-54.472,54.360,54.350,54.386,54.362,54.226,54.010,53.773,53.530,53.273,53.021,52.831,52.726,52.655,52.539,52.368,
-52.229,52.207,52.279,52.318,52.216,51.985,51.712,51.434,51.100,50.656,50.215,49.730,49.268,48.971,48.833,48.716,
-48.550,48.455,48.627,49.084,49.562,49.708,49.394,48.810,48.258,47.865,47.506,47.002,46.347,45.715,45.281,45.058,
-44.927,44.793,44.654,44.538,44.415,44.237,44.052,44.037,44.362,45.013,45.772,46.395,46.800,47.061,47.232,47.208,
-46.807,45.996,45.010,44.207,43.804,43.723,43.714,43.599,43.404,43.270,43.269,43.336,43.351,43.276,43.192,43.199,
-43.328,43.522,43.709,43.856,43.972,44.078,44.208,44.416,44.723,45.024,45.016,44.302,42.641,40.185,37.500,35.298,
-34.051,33.738,33.915,34.021,33.716,33.013,32.165,31.433,30.934,30.642,30.514,30.573,30.884,31.460,32.213,33.016,
-33.817,34.679,35.689,36.820,37.890,38.680,39.110,39.293,39.431,39.636,39.865,40.017,40.070,40.115,40.249,40.451,
-40.596,40.573,40.413,40.264,40.260,40.390,40.514,40.474,40.211,39.792,39.359,39.050,38.959,39.108,39.428,39.763,
-39.937,39.844,39.517,39.092,38.705,38.395,38.105,37.769,37.391,37.050,36.831,36.752,36.752,36.747,36.680,36.536,
-36.319,36.036,35.705,35.370,35.086,34.879,34.729,34.603,34.490,34.398,34.300,34.078,33.574,32.724,31.662,30.677,
-30.029,29.788,29.830,30.001,30.244,30.585,30.982,31.257,31.204,30.795,30.241,29.823,29.637,29.520,29.233,28.723,
-28.191,27.890,27.847,27.804,27.418,26.546,25.356,24.182,23.279,22.685,22.254,21.812,21.285,20.739,20.318,20.133,
-20.138,20.075,19.565,18.312,16.320,13.948,11.734,10.076,8.984,8.062,6.753,4.677,1.851,-1.353,-4.463,-7.199,
--9.587,-11.837,-14.092,-16.257,-18.062,-19.272,-19.863,-20.007,-19.911,-19.672,-19.286,-18.788,-18.349,-18.212,-18.510,-19.122,
--19.713,-19.936,-19.648,-18.996,-18.309,-17.900,-17.892,-18.193,-18.614,-19.017,-19.391,-19.810,-20.324,-20.894,-21.438,-21.917,
--22.387,-22.957,-23.683,-24.516,-25.340,-26.057,-26.645,-27.151,-27.631,-28.121,-28.625,-29.134,-29.642,-30.150,-30.671,-31.227,
--31.820,-32.404,-32.892,-33.219,-33.408,-33.580,-33.860,-34.272,-34.720,-35.074,-35.302,-35.491,-35.766,-36.159,-36.585,-36.921,
--37.128,-37.271,-37.443,-37.669,-37.878,-37.955,-37.813,-37.437,-36.889,-36.296,-35.818,-35.568,-35.523,-35.504,-35.306,-34.891,
--34.478,-34.405,-34.847,-35.642,-36.379,-36.713,-36.598,-36.254,-35.914,-35.611,-35.217,-34.651,-34.027,-33.566,-33.378,-33.345,
--33.255,-33.042,-32.918,-33.255,-34.337,-36.182,-38.565,-41.154,-43.637,-45.781,-47.437,-48.554,-49.187,-49.477,-49.580,-49.597,
--49.565,-49.489,-49.377,-49.253,-49.166,-49.189,-49.421,-49.943,-50.761,-51.769,-52.802,-53.735,-54.565,-55.386,-56.290,-57.277,
--58.238,-59.027,-59.563,-59.876,-60.092,-60.356,-60.747,-61.243,-61.755,-62.199,-62.558,-62.875,-63.202,-63.549,-63.895,-64.218,
--64.520,-64.797,-65.006,-65.089,-65.036,-64.918,-64.854,-64.920,-65.100,-65.322,-65.527,-65.700,-65.834,-65.896,-65.828,-65.598,
--65.223,-64.746,-64.203,-63.620,-63.031,-62.477,-61.963,-61.452,-60.911,-60.366,-59.885,-59.476,-59.017,-58.338,-57.403,-56.422,
--55.715,-55.440,-55.422,-55.268,-54.678,-53.667,-52.514,-51.518,-50.793,-50.274,-49.859,-49.529,-49.333,-49.305,-49.422,-49.631,
--49.910,-50.281,-50.799,-51.507,-52.403,-53.392,-54.290,-54.878,-55.026,-54.779,-54.331,-53.890,-53.548,-53.282,-53.045,-52.855,
--52.767,-52.769,-52.731,-52.482,-51.942,-51.192,-50.399,-49.688,-49.076,-48.506,-47.932,-47.344,-46.739,-46.089,-45.368,-44.601,
--43.862,-43.199,-42.555,-41.798,-40.841,-39.752,-38.728,-37.932,-37.340,-36.753,-35.963,-34.930,-33.792,-32.725,-31.790,-30.910,
--29.986,-29.017,-28.100,-27.320,-26.649,-25.944,-25.038,-23.837,-22.382,-20.833,-19.408,-18.276,-17.462,-16.824,-16.142,-15.277,
--14.278,-13.326,-12.584,-12.081,-11.735,-11.469,-11.287,-11.224,-11.256,-11.274,-11.165,-10.904,-10.537,-10.090,-9.505,-8.689,
--7.619,-6.401,-5.197,-4.113,-3.140,-2.194,-1.202,-.162,.863,1.789,2.560,3.181,3.733,4.338,5.093,6.010,
-7.015,8.010,8.941,9.817,10.665,11.484,12.239,12.904,13.498,14.071,14.668,15.296,15.926,16.526,17.088,17.648,
-18.278,19.049,19.972,20.974,21.924,22.706,23.279,23.669,23.906,23.974,23.832,23.489,23.047,22.674,22.517,22.637,
-22.994,23.475,23.940,24.268,24.413,24.431,24.452,24.593,24.868,25.192,25.465,25.690,25.985,26.486,27.226,28.089,
-28.879,29.451,29.792,30.011,30.250,30.592,31.011,31.395,31.624,31.651,31.547,31.456,31.511,31.744,32.080,32.399,
-32.646,32.886,33.262,33.875,34.668,35.432,35.959,36.236,36.504,37.078,38.076,39.277,40.290,40.887,41.157,41.313,
-41.297,40.631,38.727,35.434,31.295,27.227,23.883,21.281,19.041,16.955,15.315,14.676,15.295,16.824,18.535,19.840,
-20.614,21.077,21.444,21.721,21.797,21.646,21.382,21.123,20.864,20.501,19.981,19.388,18.863,18.465,18.123,17.727,
-17.243,16.729,16.242,15.772,15.265,14.698,14.114,13.574,13.079,12.566,11.972,11.302,10.622,10.002,9.466,8.992,
-8.550,8.120,7.687,7.233,6.749,6.254,5.786,5.368,4.982,4.586,4.155,3.708,3.283,2.896,2.517,2.107,
-1.653,1.187,.747,.343,-.045,-.446,-.863,-1.280,-1.678,-2.052,-2.403,-2.729,-3.017,-3.263,-3.483,-3.713,
--3.978,-4.279,-4.585,-4.862,-5.097,-5.319,-5.580,-5.915,-6.316,-6.733,-7.116,-7.452,-7.760,-8.059,-8.334,-8.553,
--8.707,-8.833,-8.982,-9.172,-9.381,-9.588,-9.804,-10.062,-10.363,-10.674,-10.989,-11.369,-11.902,-12.572,-13.203,-13.579,
--13.658,-13.661,-13.907,-14.508,-15.232,-15.688,-15.658,-15.270,-14.835,-14.531,-14.266,-13.833,-13.180,-12.483,-11.977,-11.728,
--11.607,-11.470,-11.319,-11.279,-11.426,-11.680,-11.885,-11.961,-11.978,-12.050,-12.204,-12.360,-12.429,-12.411,-12.388,-12.428,
--12.527,-12.634,-12.717,-12.784,-12.851,-12.900,-12.889,-12.791,-12.620,-12.423,-12.257,-12.177,-12.225,-12.401,-12.638,-12.825,
--12.875,-12.785,-12.636,-12.515,-12.456,-12.439,-12.445,-12.489,-12.591,-12.722,-12.808,-12.792,-12.690,-12.579,-12.525,-12.524,
--12.518,-12.462,-12.365,-12.264,-12.183,-12.111,-12.034,-11.951,-11.871,-11.788,-11.684,-11.562,-11.456,-11.408,-11.417,-11.436,
--11.411,-11.336,-11.244,-11.160,-11.073,-10.963,-10.849,-10.797,-10.860,-11.014,-11.173,-11.259,-11.277,-11.294,-11.361,-11.458,
--11.524,-11.527,-11.501,-11.506,-11.561,-11.624,-11.646,-11.619,-11.589,-11.604,-11.681,-11.804,-11.955,-12.125,-12.308,-12.483,
--12.622,-12.718,-12.790,-12.860,-12.929,-12.987,-13.035,-13.106,-13.238,-13.426,-13.608,-13.703,-13.670,-13.542,-13.404,-13.344,
--13.406,-13.586,-13.846,-14.136,-14.399,-14.592,-14.702,-14.766,-14.854,-15.029,-15.293,-15.581,-15.807,-15.928,-15.988,-16.086,
--16.299,-16.620,-16.973,-17.274,-17.502,-17.698,-17.912,-18.160,-18.424,-18.699,-19.009,-19.383,-19.797,-20.181,-20.472,-20.679,
--20.871,-21.114,-21.405,-21.686,-21.915,-22.113,-22.339,-22.612,-22.893,-23.124,-23.297,-23.468,-23.699,-23.997,-24.309,-24.585,
--24.823,-25.070,-25.371,-25.728,-26.104,-26.466,-26.801,-27.127,-27.467,-27.837,-28.234,-28.636,-29.024,-29.395,-29.779,-30.206,
--30.667,-31.098,-31.423,-31.620,-31.745,-31.890,-32.108,-32.381,-32.658,-32.912,-33.152,-33.389,-33.610,-33.791,-33.935,-34.079,
--34.254,-34.452,-34.635,-34.777,-34.891,-34.999,-35.103,-35.182,-35.226,-35.263,-35.339,-35.473,-35.643,-35.820,-35.988,-36.140,
--36.265,-36.348,-36.408,-36.496,-36.649,-36.835,-36.967,-36.988,-36.938,-36.924,-37.008,-37.139,-37.213,-37.180,-37.099,-37.059,
--37.082,-37.106,-37.068,-36.973,-36.880,-36.818,-36.754,-36.657,-36.551,-36.501,-36.524,-36.548,-36.480,-36.308,-36.105,-35.937,
--35.783,-35.565,-35.267,-34.991,-34.861,-34.872,-34.854,-34.584,-33.954,-33.020,-31.933,-30.835,-29.843,-29.076,-28.648,-28.582,
--28.745,-28.873,-28.702,-28.104,-27.130,-25.960,-24.826,-23.943,-23.447,-23.345,-23.509,-23.756,-23.957,-24.085,-24.168,-24.187,
--24.064,-23.738,-23.259,-22.773,-22.396,-22.118,-21.827,-21.446,-21.023,-20.687,-20.515,-20.460,-20.394,-20.232,-19.999,-19.795,
--19.707,-19.748,-19.861,-19.956,-19.955,-19.824,-19.581,-19.285,-18.965,-18.590,-18.090,-17.463,-16.853,-16.499,-16.558,-16.959,
--17.424,-17.668,-17.595,-17.332,-17.074,-16.927,-16.859,-16.775,-16.603,-16.298,-15.832,-15.217,-14.554,-14.013,-13.707,-13.573,
--13.422,-13.148,-12.906,-13.042,-13.802,-15.076,-16.450,-17.510,-18.139,-18.540,-18.994,-19.612,-20.310,-20.961,-21.541,-22.110,
--22.700,-23.256,-23.696,-24.015,-24.283,-24.563,-24.846,-25.076,-25.235,-25.372,-25.553,-25.780,-26.005,-26.193,-26.378,-26.622,
--26.925,-27.201,-27.356,-27.407,-27.504,-27.833,-28.467,-29.297,-30.113,-30.752,-31.196,-31.551,-31.932,-32.369,-32.795,-33.117,
--33.298,-33.373,-33.400,-33.402,-33.363,-33.266,-33.137,-33.036,-33.002,-33.023,-33.045,-33.032,-33.000,-32.988,-33.005,-32.998,
--32.893,-32.677,-32.434,-32.304,-32.374,-32.600,-32.824,-32.886,-32.755,-32.567,-32.527,-32.746,-33.148,-33.527,-33.724,-33.763,
--33.817,-34.045,-34.428,-34.792,-34.962,-34.920,-34.788,-34.687,-34.601,-34.424,-34.106,-33.771,-33.636,-33.831,-34.275,-34.745,
--35.047,-35.144,-35.119,-35.056,-34.955,-34.772,-34.494,-34.167,-33.842,-33.511,-33.133,-32.720,-32.401,-32.371,-32.758,-33.495,
--34.314,-34.882,-34.976,-34.604,-33.985,-33.415,-33.109,-33.107,-33.310,-33.578,-33.827,-34.045,-34.249,-34.440,-34.598,-34.721,
--34.847,-35.028,-35.279,-35.551,-35.762,-35.852,-35.824,-35.752,-35.743,-35.897,-36.260,-36.788,-37.343,-37.755,-37.907,-37.805,
--37.567,-37.336,-37.190,-37.123,-37.100,-37.110,-37.160,-37.236,-37.277,-37.216,-37.044,-36.829,-36.655,-36.552,-36.468,-36.315,
--36.040,-35.663,-35.263,-34.938,-34.757,-34.729,-34.784,-34.800,-34.663,-34.338,-33.886,-33.402,-32.939,-32.481,-31.993,-31.481,
--30.995,-30.563,-30.146,-29.669,-29.102,-28.516,-28.022,-27.680,-27.437,-27.183,-26.846,-26.435,-26.004,-25.585,-25.163,-24.711,
--24.232,-23.752,-23.289,-22.835,-22.368,-21.875,-21.353,-20.787,-20.153,-19.437,-18.665,-17.893,-17.159,-16.450,-15.716,-14.926,
--14.099,-13.288,-12.529,-11.817,-11.115,-10.395,-9.655,-8.897,-8.110,-7.271,-6.376,-5.456,-4.558,-3.714,-2.914,-2.127,
--1.334,-.548,.204,.918,1.612,2.313,3.022,3.718,4.381,5.017,5.659,6.339,7.075,7.870,8.727,9.646,
-10.608,11.559,12.430,13.180,13.826,14.427,15.045,15.711,16.430,17.204,18.043,18.942,19.863,20.744,21.551,22.300,
-23.049,23.846,24.688,25.533,26.347,27.137,27.948,28.819,29.744,30.675,31.553,32.346,33.068,33.758,34.452,35.164,
-35.884,36.596,37.293,37.986,38.691,39.415,40.157,40.910,41.662,42.400,43.105,43.770,44.407,45.054,45.749,46.498,
-47.268,48.015,48.735,49.477,50.302,51.208,52.108,52.873,53.436,53.852,54.257,54.769,55.391,56.020,56.546,56.942,
-57.269,57.606,57.964,58.277,58.469,58.526,58.513,58.522,58.610,58.776,58.970,59.125,59.166,59.038,58.740,58.350,
-57.996,57.779,57.705,57.682,57.591,57.365,57.024,56.634,56.264,55.957,55.739,55.605,55.502,55.326,54.983,54.466,
-53.878,53.368,53.025,52.812,52.605,52.295,51.874,51.439,51.124,51.006,51.053,51.137,51.122,50.966,50.762,50.672,
-50.778,50.994,51.112,50.975,50.607,50.176,49.831,49.574,49.302,48.968,48.667,48.537,48.591,48.684,48.661,48.554,
-48.558,48.814,49.213,49.464,49.375,49.052,48.788,48.733,48.715,48.420,47.757,47.033,46.728,47.076,47.884,48.752,
-49.455,50.095,50.896,51.905,52.908,53.654,54.100,54.420,54.784,55.177,55.440,55.470,55.332,55.170,55.048,54.904,
-54.669,54.384,54.172,54.114,54.173,54.255,54.315,54.362,54.382,54.290,54.009,53.575,53.140,52.833,52.639,52.447,
-52.203,51.992,51.939,52.032,52.101,51.969,51.630,51.231,50.896,50.596,50.215,49.936,49.394,48.891,48.638,48.678,
-48.830,48.884,48.815,48.782,48.899,49.054,48.993,48.574,47.915,47.277,46.809,46.452,46.065,45.616,45.217,44.976,
-44.875,44.795,44.655,44.478,44.317,44.163,43.972,43.782,43.767,44.108,44.807,45.639,46.315,46.694,46.830,46.818,
-46.639,46.175,45.393,44.474,43.726,43.353,43.304,43.353,43.308,43.160,43.026,42.992,43.021,43.015,42.933,42.837,
-42.821,42.928,43.116,43.305,43.434,43.481,43.466,43.470,43.618,44.005,44.552,44.925,44.630,43.281,40.881,37.895,
-35.034,32.901,31.722,31.322,31.311,31.318,31.139,30.734,30.168,29.545,28.988,28.630,28.582,28.880,29.465,30.216,
-31.043,31.954,33.038,34.347,35.791,37.145,38.172,38.789,39.099,39.289,39.476,39.655,39.770,39.816,39.859,39.956,
-40.080,40.146,40.108,40.024,40.007,40.106,40.257,40.327,40.229,39.979,39.666,39.392,39.233,39.245,39.441,39.761,
-40.055,40.156,39.987,39.624,39.236,38.940,38.717,38.454,38.074,37.621,37.224,36.979,36.873,36.818,36.743,36.642,
-36.545,36.445,36.290,36.038,35.717,35.417,35.208,35.090,35.015,34.955,34.927,34.924,34.835,34.466,33.694,32.607,
-31.494,30.663,30.239,30.136,30.199,30.348,30.584,30.864,31.029,30.909,30.499,29.999,29.643,29.473,29.298,28.907,
-28.305,27.734,27.446,27.446,27.467,27.193,26.514,25.587,24.681,23.965,23.432,22.955,22.409,21.753,21.047,20.414,
-19.969,19.713,19.465,18.914,17.790,16.076,14.073,12.252,10.967,10.217,9.616,8.607,6.775,4.078,.841,-2.456,
--5.472,-8.149,-10.628,-13.019,-15.238,-17.037,-18.201,-18.719,-18.785,-18.645,-18.454,-18.266,-18.111,-18.075,-18.273,-18.761,
--19.464,-20.188,-20.698,-20.828,-20.551,-20.005,-19.428,-19.043,-18.944,-19.074,-19.314,-19.601,-19.967,-20.466,-21.078,-21.698,
--22.225,-22.658,-23.100,-23.660,-24.368,-25.160,-25.953,-26.695,-27.374,-27.988,-28.534,-29.019,-29.473,-29.929,-30.404,-30.899,
--31.417,-31.960,-32.499,-32.959,-33.267,-33.437,-33.589,-33.865,-34.302,-34.790,-35.174,-35.405,-35.590,-35.882,-36.327,-36.806,
--37.160,-37.333,-37.418,-37.528,-37.664,-37.683,-37.425,-36.858,-36.116,-35.414,-34.919,-34.686,-34.662,-34.727,-34.748,-34.645,
--34.456,-34.351,-34.530,-35.055,-35.760,-36.326,-36.498,-36.248,-35.752,-35.205,-34.656,-34.029,-33.267,-32.450,-31.753,-31.292,
--31.041,-30.897,-30.841,-31.024,-31.706,-33.092,-35.221,-37.941,-40.962,-43.931,-46.501,-48.418,-49.614,-50.220,-50.485,-50.634,
--50.771,-50.876,-50.885,-50.760,-50.513,-50.203,-49.928,-49.815,-49.974,-50.433,-51.106,-51.839,-52.522,-53.164,-53.870,-54.741,
--55.773,-56.849,-57.801,-58.509,-58.962,-59.250,-59.515,-59.857,-60.291,-60.744,-61.133,-61.434,-61.697,-61.994,-62.354,-62.749,
--63.126,-63.451,-63.699,-63.841,-63.854,-63.768,-63.686,-63.729,-63.948,-64.278,-64.581,-64.734,-64.677,-64.398,-63.909,-63.239,
--62.458,-61.651,-60.884,-60.175,-59.531,-58.991,-58.604,-58.360,-58.165,-57.923,-57.637,-57.408,-57.273,-57.078,-56.551,-55.565,
--54.329,-53.287,-52.765,-52.704,-52.719,-52.430,-51.756,-50.912,-50.158,-49.583,-49.107,-48.638,-48.189,-47.850,-47.670,-47.606,
--47.578,-47.552,-47.588,-47.802,-48.305,-49.137,-50.226,-51.384,-52.380,-53.048,-53.370,-53.445,-53.375,-53.181,-52.842,-52.405,
--52.027,-51.882,-51.995,-52.190,-52.206,-51.897,-51.322,-50.658,-50.034,-49.449,-48.830,-48.145,-47.434,-46.745,-46.055,-45.289,
--44.416,-43.503,-42.667,-41.952,-41.276,-40.518,-39.647,-38.763,-37.990,-37.331,-36.646,-35.791,-34.762,-33.701,-32.750,-31.910,
--31.057,-30.098,-29.090,-28.193,-27.503,-26.929,-26.244,-25.242,-23.884,-22.306,-20.746,-19.420,-18.431,-17.717,-17.081,-16.312,
--15.349,-14.343,-13.549,-13.117,-12.961,-12.855,-12.638,-12.343,-12.111,-12.012,-11.952,-11.769,-11.389,-10.861,-10.265,-9.589,
--8.742,-7.669,-6.438,-5.204,-4.092,-3.119,-2.212,-1.298,-.363,.552,1.393,2.142,2.843,3.588,4.472,5.516,
-6.634,7.690,8.597,9.392,10.194,11.084,12.019,12.865,13.519,14.001,14.434,14.940,15.543,16.172,16.738,17.223,
-17.702,18.296,19.079,20.023,21.000,21.871,22.572,23.136,23.623,24.021,24.219,24.099,23.665,23.094,22.661,22.581,
-22.894,23.458,24.043,24.453,24.611,24.584,24.527,24.584,24.796,25.094,25.369,25.587,25.823,26.198,26.770,27.486,
-28.227,28.885,29.417,29.831,30.161,30.449,30.736,31.038,31.317,31.498,31.533,31.471,31.446,31.587,31.917,32.340,
-32.735,33.062,33.406,33.898,34.590,35.377,36.054,36.466,36.664,36.911,37.492,38.476,39.620,40.547,41.046,41.215,
-41.259,41.135,40.410,38.551,35.414,31.473,27.531,24.166,21.416,19.012,16.872,15.341,14.923,15.766,17.432,19.170,
-20.420,21.097,21.446,21.696,21.876,21.901,21.753,21.521,21.285,21.012,20.602,20.023,19.370,18.787,18.330,17.939,
-17.516,17.030,16.521,16.028,15.535,14.995,14.394,13.783,13.223,12.726,12.244,11.716,11.120,10.489,9.868,9.289,
-8.756,8.263,7.799,7.348,6.895,6.431,5.971,5.538,5.137,4.747,4.341,3.911,3.481,3.074,2.687,2.284,
-1.835,1.349,.875,.458,.100,-.239,-.610,-1.033,-1.485,-1.926,-2.324,-2.667,-2.959,-3.207,-3.423,-3.627,
--3.843,-4.088,-4.362,-4.641,-4.901,-5.133,-5.366,-5.645,-6.007,-6.441,-6.893,-7.298,-7.627,-7.896,-8.141,-8.376,
--8.589,-8.764,-8.912,-9.060,-9.230,-9.422,-9.629,-9.849,-10.086,-10.338,-10.606,-10.920,-11.344,-11.908,-12.547,-13.117,
--13.512,-13.794,-14.143,-14.669,-15.231,-15.510,-15.291,-14.706,-14.161,-13.991,-14.154,-14.281,-14.032,-13.405,-12.710,-12.250,
--12.054,-11.927,-11.710,-11.464,-11.374,-11.524,-11.789,-11.967,-11.978,-11.920,-11.938,-12.067,-12.224,-12.320,-12.354,-12.391,
--12.467,-12.558,-12.630,-12.688,-12.773,-12.891,-12.993,-13.014,-12.938,-12.800,-12.643,-12.485,-12.338,-12.243,-12.253,-12.380,
--12.561,-12.702,-12.755,-12.743,-12.717,-12.692,-12.649,-12.586,-12.551,-12.603,-12.738,-12.872,-12.913,-12.842,-12.730,-12.659,
--12.648,-12.640,-12.575,-12.452,-12.325,-12.246,-12.218,-12.207,-12.174,-12.098,-11.977,-11.825,-11.670,-11.553,-11.506,-11.516,
--11.535,-11.519,-11.461,-11.390,-11.326,-11.257,-11.163,-11.059,-11.004,-11.043,-11.162,-11.287,-11.359,-11.384,-11.420,-11.508,
--11.622,-11.694,-11.684,-11.621,-11.566,-11.558,-11.586,-11.617,-11.638,-11.664,-11.713,-11.790,-11.894,-12.031,-12.209,-12.419,
--12.625,-12.786,-12.892,-12.967,-13.039,-13.115,-13.181,-13.239,-13.317,-13.444,-13.607,-13.740,-13.777,-13.706,-13.590,-13.526,
--13.576,-13.747,-13.997,-14.274,-14.534,-14.744,-14.881,-14.951,-15.000,-15.103,-15.313,-15.619,-15.939,-16.174,-16.279,-16.306,
--16.362,-16.539,-16.843,-17.199,-17.512,-17.741,-17.911,-18.077,-18.278,-18.524,-18.812,-19.152,-19.546,-19.961,-20.338,-20.627,
--20.839,-21.027,-21.237,-21.455,-21.634,-21.758,-21.878,-22.072,-22.367,-22.705,-22.993,-23.194,-23.349,-23.536,-23.793,-24.093,
--24.392,-24.675,-24.962,-25.279,-25.620,-25.955,-26.264,-26.553,-26.858,-27.212,-27.629,-28.093,-28.566,-29.011,-29.419,-29.815,
--30.237,-30.685,-31.111,-31.447,-31.672,-31.827,-31.984,-32.186,-32.424,-32.666,-32.905,-33.151,-33.402,-33.633,-33.816,-33.964,
--34.120,-34.307,-34.497,-34.643,-34.727,-34.786,-34.864,-34.970,-35.076,-35.165,-35.257,-35.384,-35.546,-35.710,-35.850,-35.970,
--36.086,-36.186,-36.242,-36.259,-36.298,-36.423,-36.622,-36.800,-36.876,-36.868,-36.881,-36.984,-37.134,-37.221,-37.190,-37.100,
--37.049,-37.069,-37.098,-37.070,-36.984,-36.889,-36.803,-36.693,-36.542,-36.408,-36.384,-36.483,-36.596,-36.589,-36.436,-36.239,
--36.102,-36.008,-35.844,-35.552,-35.232,-35.064,-35.117,-35.248,-35.182,-34.703,-33.788,-32.593,-31.351,-30.273,-29.505,-29.106,
--29.032,-29.148,-29.275,-29.242,-28.922,-28.241,-27.200,-25.931,-24.703,-23.816,-23.443,-23.528,-23.845,-24.167,-24.383,-24.485,
--24.462,-24.268,-23.882,-23.377,-22.903,-22.564,-22.338,-22.120,-21.847,-21.554,-21.321,-21.163,-21.017,-20.809,-20.549,-20.318,
--20.189,-20.162,-20.189,-20.231,-20.278,-20.309,-20.267,-20.085,-19.748,-19.300,-18.794,-18.247,-17.684,-17.206,-16.993,-17.177,
--17.695,-18.284,-18.643,-18.641,-18.367,-18.009,-17.692,-17.421,-17.154,-16.873,-16.572,-16.210,-15.722,-15.113,-14.506,-14.060,
--13.825,-13.687,-13.506,-13.309,-13.325,-13.802,-14.768,-15.974,-17.088,-17.933,-18.573,-19.177,-19.841,-20.540,-21.206,-21.819,
--22.404,-22.968,-23.470,-23.874,-24.199,-24.500,-24.808,-25.097,-25.329,-25.514,-25.703,-25.930,-26.158,-26.329,-26.436,-26.557,
--26.776,-27.090,-27.397,-27.600,-27.721,-27.910,-28.330,-29.015,-29.835,-30.585,-31.141,-31.519,-31.839,-32.196,-32.590,-32.939,
--33.166,-33.269,-33.311,-33.356,-33.412,-33.437,-33.399,-33.318,-33.246,-33.214,-33.202,-33.165,-33.085,-32.993,-32.927,-32.884,
--32.805,-32.630,-32.368,-32.113,-31.998,-32.095,-32.356,-32.625,-32.742,-32.663,-32.501,-32.455,-32.646,-33.017,-33.375,-33.565,
--33.621,-33.730,-34.048,-34.529,-34.954,-35.129,-35.061,-34.926,-34.870,-34.854,-34.708,-34.352,-33.926,-33.699,-33.836,-34.255,
--34.703,-34.977,-35.054,-35.039,-35.013,-34.955,-34.791,-34.492,-34.099,-33.663,-33.196,-32.709,-32.282,-32.084,-32.272,-32.865,
--33.677,-34.392,-34.727,-34.577,-34.057,-33.441,-33.015,-32.951,-33.239,-33.724,-34.218,-34.604,-34.874,-35.080,-35.272,-35.470,
--35.674,-35.891,-36.118,-36.319,-36.432,-36.419,-36.317,-36.238,-36.308,-36.598,-37.098,-37.729,-38.372,-38.888,-39.157,-39.132,
--38.877,-38.547,-38.290,-38.162,-38.108,-38.045,-37.940,-37.828,-37.751,-37.706,-37.650,-37.557,-37.455,-37.387,-37.359,-37.311,
--37.164,-36.873,-36.464,-36.016,-35.629,-35.382,-35.292,-35.279,-35.191,-34.889,-34.351,-33.701,-33.123,-32.721,-32.450,-32.180,
--31.818,-31.365,-30.867,-30.325,-29.698,-28.976,-28.251,-27.675,-27.340,-27.193,-27.080,-26.864,-26.517,-26.100,-25.679,-25.269,
--24.844,-24.393,-23.929,-23.471,-23.019,-22.552,-22.057,-21.534,-20.982,-20.382,-19.710,-18.967,-18.190,-17.427,-16.699,-15.988,
--15.262,-14.501,-13.719,-12.940,-12.181,-11.439,-10.697,-9.936,-9.145,-8.317,-7.450,-6.554,-5.647,-4.754,-3.895,-3.078,
--2.297,-1.539,-.795,-.062,.656,1.360,2.051,2.730,3.394,4.038,4.665,5.288,5.929,6.610,7.355,8.177,
-9.073,10.014,10.947,11.815,12.585,13.261,13.877,14.476,15.094,15.765,16.519,17.371,18.303,19.257,20.165,20.998,
-21.779,22.560,23.374,24.210,25.036,25.836,26.631,27.461,28.343,29.253,30.139,30.959,31.709,32.420,33.132,33.870,
-34.626,35.375,36.095,36.788,37.474,38.179,38.921,39.702,40.513,41.333,42.134,42.885,43.578,44.237,44.916,45.651,
-46.432,47.207,47.926,48.601,49.303,50.104,50.995,51.872,52.608,53.153,53.579,54.024,54.580,55.216,55.818,56.291,
-56.637,56.942,57.279,57.629,57.903,58.031,58.041,58.044,58.143,58.353,58.599,58.786,58.860,58.815,58.663,58.417,
-58.110,57.811,57.598,57.502,57.470,57.398,57.191,56.826,56.354,55.871,55.469,55.200,55.044,54.913,54.691,54.308,
-53.791,53.248,52.785,52.423,52.106,51.773,51.424,51.129,50.957,50.925,50.975,51.019,50.972,50.793,50.505,50.207,
-50.024,50.026,50.153,50.249,50.178,49.937,49.637,49.383,49.171,48.931,48.660,48.476,48.506,48.728,48.948,49.000,
-48.948,49.064,49.558,50.313,50.936,51.082,50.759,50.281,49.926,49.668,49.256,48.574,47.879,47.646,48.163,49.276,
-50.536,51.571,52.325,52.948,53.529,53.977,54.169,54.152,54.144,54.337,54.713,55.085,55.289,55.316,55.259,55.162,
-54.987,54.702,54.382,54.164,54.123,54.208,54.323,54.435,54.559,54.662,54.611,54.291,53.753,53.221,52.897,52.784,
-52.712,52.542,52.323,52.207,52.242,52.274,52.100,51.681,51.172,50.736,50.368,49.936,49.913,49.325,48.813,48.621,
-48.806,49.145,49.310,49.156,48.802,48.457,48.187,47.881,47.426,46.860,46.334,45.946,45.654,45.361,45.052,44.814,
-44.710,44.689,44.630,44.475,44.277,44.113,43.976,43.792,43.562,43.443,43.651,44.255,45.074,45.796,46.196,46.260,
-46.097,45.782,45.297,44.632,43.900,43.317,43.044,43.058,43.186,43.251,43.209,43.128,43.082,43.065,43.018,42.910,
-42.787,42.728,42.773,42.895,43.028,43.115,43.139,43.133,43.180,43.380,43.769,44.212,44.374,43.838,42.342,39.957,
-37.090,34.286,31.992,30.412,29.527,29.183,29.155,29.191,29.055,28.619,27.933,27.215,26.731,26.650,26.977,27.595,
-28.379,29.293,30.388,31.731,33.303,34.956,36.471,37.663,38.473,38.969,39.269,39.452,39.545,39.563,39.552,39.574,
-39.648,39.728,39.762,39.756,39.785,39.903,40.065,40.145,40.044,39.787,39.503,39.321,39.284,39.359,39.513,39.743,
-40.028,40.276,40.355,40.200,39.885,39.570,39.358,39.208,38.985,38.606,38.126,37.686,37.378,37.174,36.978,36.745,
-36.522,36.389,36.353,36.332,36.234,36.048,35.850,35.717,35.653,35.609,35.566,35.570,35.648,35.704,35.517,34.892,
-33.849,32.649,31.624,30.958,30.616,30.454,30.377,30.369,30.397,30.352,30.122,29.722,29.310,29.033,28.862,28.606,
-28.121,27.490,26.978,26.793,26.890,27.015,26.930,26.591,26.122,25.647,25.177,24.642,23.986,23.221,22.387,21.522,
-20.675,19.923,19.328,18.845,18.292,17.452,16.247,14.837,13.538,12.607,12.043,11.539,10.623,8.906,6.288,3.011,
--.492,-3.827,-6.812,-9.470,-11.868,-13.974,-15.650,-16.764,-17.313,-17.430,-17.300,-17.085,-16.910,-16.873,-17.042,-17.432,
--17.996,-18.672,-19.396,-20.087,-20.606,-20.792,-20.577,-20.078,-19.542,-19.188,-19.072,-19.112,-19.237,-19.483,-19.949,-20.658,
--21.494,-22.283,-22.925,-23.452,-23.967,-24.548,-25.210,-25.937,-26.711,-27.498,-28.235,-28.857,-29.351,-29.771,-30.196,-30.662,
--31.153,-31.648,-32.140,-32.624,-33.055,-33.370,-33.562,-33.724,-33.985,-34.391,-34.858,-35.251,-35.524,-35.770,-36.115,-36.576,
--37.030,-37.341,-37.492,-37.589,-37.701,-37.730,-37.462,-36.771,-35.789,-34.868,-34.345,-34.326,-34.652,-35.069,-35.410,-35.663,
--35.885,-36.101,-36.277,-36.372,-36.376,-36.299,-36.125,-35.816,-35.348,-34.761,-34.139,-33.553,-33.004,-32.433,-31.776,-31.025,
--30.255,-29.602,-29.217,-29.219,-29.660,-30.540,-31.845,-33.595,-35.826,-38.506,-41.450,-44.322,-46.759,-48.547,-49.707,-50.431,
--50.931,-51.321,-51.603,-51.737,-51.701,-51.510,-51.213,-50.894,-50.660,-50.611,-50.777,-51.095,-51.457,-51.810,-52.204,-52.756,
--53.548,-54.554,-55.645,-56.656,-57.462,-58.026,-58.403,-58.701,-59.025,-59.413,-59.825,-60.191,-60.476,-60.709,-60.948,-61.222,
--61.516,-61.805,-62.080,-62.341,-62.565,-62.714,-62.786,-62.842,-62.960,-63.148,-63.301,-63.247,-62.850,-62.067,-60.955,-59.642,
--58.306,-57.146,-56.304,-55.787,-55.482,-55.262,-55.107,-55.095,-55.267,-55.544,-55.786,-55.944,-56.105,-56.342,-56.526,-56.356,
--55.623,-54.472,-53.352,-52.673,-52.480,-52.454,-52.224,-51.668,-50.947,-50.277,-49.728,-49.223,-48.687,-48.156,-47.722,-47.426,
--47.213,-46.997,-46.749,-46.521,-46.408,-46.501,-46.860,-47.496,-48.352,-49.319,-50.283,-51.162,-51.897,-52.404,-52.567,-52.326,
--51.792,-51.249,-50.999,-51.150,-51.532,-51.829,-51.807,-51.449,-50.900,-50.299,-49.676,-48.989,-48.222,-47.430,-46.671,-45.923,
--45.095,-44.140,-43.137,-42.257,-41.606,-41.123,-40.621,-39.956,-39.137,-38.286,-37.477,-36.664,-35.749,-34.726,-33.708,-32.815,
--32.032,-31.228,-30.307,-29.331,-28.467,-27.796,-27.193,-26.399,-25.220,-23.679,-21.996,-20.451,-19.237,-18.390,-17.781,-17.191,
--16.443,-15.535,-14.676,-14.136,-14.017,-14.138,-14.176,-13.931,-13.474,-13.037,-12.759,-12.561,-12.244,-11.694,-10.965,-10.176,
--9.364,-8.461,-7.397,-6.209,-5.026,-3.964,-3.043,-2.204,-1.374,-.522,.333,1.159,1.948,2.745,3.643,4.730,
-5.995,7.296,8.433,9.297,9.966,10.633,11.440,12.340,13.156,13.743,14.125,14.474,14.957,15.608,16.320,16.955,
-17.468,17.939,18.513,19.282,20.209,21.148,21.943,22.544,23.026,23.496,23.960,24.283,24.291,23.943,23.412,23.007,
-22.982,23.370,23.979,24.515,24.776,24.753,24.620,24.593,24.783,25.129,25.470,25.695,25.842,26.055,26.453,27.027,
-27.670,28.280,28.830,29.331,29.770,30.099,30.305,30.452,30.632,30.871,31.105,31.258,31.354,31.510,31.831,32.300,
-32.791,33.201,33.548,33.952,34.509,35.192,35.859,36.370,36.699,36.980,37.419,38.152,39.119,40.079,40.774,41.114,
-41.209,41.178,40.902,39.989,38.049,35.059,31.468,27.901,24.724,21.904,19.283,16.979,15.470,15.234,16.287,18.071,
-19.808,20.990,21.588,21.863,22.030,22.109,22.029,21.787,21.475,21.170,20.851,20.435,19.890,19.277,18.690,18.170,
-17.685,17.189,16.674,16.159,15.650,15.124,14.557,13.960,13.378,12.849,12.372,11.909,11.420,10.885,10.312,9.722,
-9.140,8.583,8.059,7.564,7.086,6.615,6.157,5.724,5.321,4.932,4.535,4.116,3.684,3.258,2.845,2.431,
-1.993,1.524,1.043,.587,.182,-.177,-.519,-.880,-1.279,-1.706,-2.131,-2.519,-2.848,-3.116,-3.340,-3.548,
--3.759,-3.978,-4.197,-4.410,-4.622,-4.844,-5.091,-5.380,-5.722,-6.120,-6.553,-6.985,-7.373,-7.700,-7.983,-8.250,
--8.512,-8.755,-8.951,-9.094,-9.205,-9.318,-9.458,-9.633,-9.836,-10.058,-10.294,-10.560,-10.897,-11.344,-11.888,-12.447,
--12.920,-13.295,-13.672,-14.164,-14.709,-15.024,-14.805,-14.036,-13.111,-12.593,-12.772,-13.419,-13.974,-14.011,-13.550,-12.952,
--12.544,-12.353,-12.194,-11.938,-11.668,-11.562,-11.668,-11.850,-11.935,-11.891,-11.832,-11.870,-11.997,-12.121,-12.189,-12.236,
--12.321,-12.443,-12.541,-12.588,-12.630,-12.729,-12.882,-13.006,-13.030,-12.965,-12.880,-12.819,-12.747,-12.614,-12.429,-12.275,
--12.229,-12.293,-12.406,-12.520,-12.636,-12.774,-12.906,-12.966,-12.915,-12.804,-12.736,-12.773,-12.877,-12.952,-12.937,-12.860,
--12.790,-12.756,-12.727,-12.653,-12.532,-12.415,-12.355,-12.359,-12.380,-12.363,-12.281,-12.145,-11.986,-11.839,-11.733,-11.679,
--11.667,-11.667,-11.654,-11.625,-11.590,-11.553,-11.499,-11.413,-11.311,-11.239,-11.240,-11.312,-11.409,-11.488,-11.542,-11.599,
--11.676,-11.753,-11.785,-11.750,-11.671,-11.595,-11.559,-11.567,-11.606,-11.667,-11.741,-11.823,-11.906,-11.998,-12.124,-12.304,
--12.524,-12.735,-12.887,-12.973,-13.027,-13.094,-13.186,-13.292,-13.399,-13.515,-13.648,-13.775,-13.849,-13.835,-13.760,-13.702,
--13.748,-13.926,-14.199,-14.498,-14.762,-14.964,-15.094,-15.157,-15.181,-15.217,-15.333,-15.567,-15.891,-16.221,-16.460,-16.568,
--16.591,-16.629,-16.771,-17.041,-17.384,-17.716,-17.979,-18.171,-18.331,-18.507,-18.723,-18.988,-19.306,-19.670,-20.050,-20.402,
--20.691,-20.921,-21.126,-21.326,-21.503,-21.620,-21.678,-21.744,-21.906,-22.198,-22.560,-22.893,-23.139,-23.324,-23.522,-23.783,
--24.104,-24.450,-24.800,-25.154,-25.506,-25.833,-26.106,-26.330,-26.547,-26.816,-27.173,-27.615,-28.098,-28.572,-28.998,-29.372,
--29.722,-30.086,-30.476,-30.861,-31.191,-31.443,-31.636,-31.814,-32.002,-32.199,-32.405,-32.633,-32.898,-33.182,-33.436,-33.629,
--33.777,-33.934,-34.123,-34.310,-34.443,-34.511,-34.565,-34.660,-34.802,-34.953,-35.086,-35.219,-35.379,-35.557,-35.707,-35.800,
--35.858,-35.923,-35.999,-36.054,-36.076,-36.118,-36.251,-36.478,-36.708,-36.844,-36.882,-36.913,-37.015,-37.165,-37.274,-37.287,
--37.248,-37.234,-37.262,-37.279,-37.237,-37.156,-37.088,-37.034,-36.944,-36.795,-36.660,-36.649,-36.780,-36.936,-36.965,-36.843,
--36.682,-36.598,-36.567,-36.446,-36.142,-35.747,-35.476,-35.474,-35.663,-35.771,-35.514,-34.760,-33.591,-32.248,-31.019,-30.130,
--29.662,-29.542,-29.612,-29.726,-29.786,-29.695,-29.312,-28.491,-27.231,-25.771,-24.515,-23.793,-23.671,-23.948,-24.332,-24.622,
--24.748,-24.704,-24.489,-24.120,-23.667,-23.228,-22.863,-22.562,-22.301,-22.099,-22.005,-22.014,-22.018,-21.885,-21.581,-21.218,
--20.946,-20.818,-20.756,-20.665,-20.550,-20.499,-20.554,-20.613,-20.497,-20.107,-19.508,-18.861,-18.290,-17.835,-17.529,-17.473,
--17.789,-18.472,-19.311,-19.970,-20.195,-19.942,-19.350,-18.620,-17.917,-17.354,-16.991,-16.797,-16.628,-16.298,-15.725,-15.030,
--14.447,-14.121,-13.990,-13.878,-13.719,-13.669,-13.990,-14.803,-15.962,-17.162,-18.170,-18.957,-19.635,-20.307,-20.987,-21.629,
--22.202,-22.713,-23.176,-23.591,-23.959,-24.297,-24.630,-24.954,-25.242,-25.485,-25.711,-25.961,-26.227,-26.444,-26.555,-26.587,
--26.643,-26.822,-27.127,-27.477,-27.794,-28.087,-28.447,-28.952,-29.588,-30.251,-30.823,-31.260,-31.601,-31.920,-32.254,-32.581,
--32.851,-33.039,-33.168,-33.285,-33.407,-33.506,-33.538,-33.493,-33.411,-33.350,-33.331,-33.316,-33.254,-33.128,-32.965,-32.808,
--32.665,-32.512,-32.323,-32.109,-31.925,-31.839,-31.892,-32.064,-32.271,-32.403,-32.402,-32.324,-32.310,-32.481,-32.825,-33.198,
--33.458,-33.604,-33.783,-34.122,-34.578,-34.954,-35.087,-35.011,-34.915,-34.934,-34.995,-34.895,-34.537,-34.066,-33.770,-33.823,
--34.148,-34.509,-34.726,-34.799,-34.827,-34.859,-34.834,-34.661,-34.314,-33.846,-33.320,-32.773,-32.254,-31.887,-31.841,-32.215,
--32.926,-33.713,-34.269,-34.404,-34.129,-33.627,-33.162,-32.964,-33.146,-33.664,-34.350,-35.006,-35.499,-35.810,-36.004,-36.161,
--36.329,-36.521,-36.726,-36.911,-37.024,-37.027,-36.953,-36.919,-37.071,-37.485,-38.110,-38.802,-39.413,-39.849,-40.069,-40.060,
--39.839,-39.483,-39.123,-38.880,-38.779,-38.737,-38.645,-38.466,-38.252,-38.087,-38.004,-37.979,-37.976,-37.984,-38.005,-38.014,
--37.951,-37.763,-37.446,-37.047,-36.638,-36.285,-36.029,-35.862,-35.697,-35.386,-34.811,-34.001,-33.157,-32.531,-32.236,-32.169,
--32.105,-31.883,-31.499,-31.035,-30.515,-29.875,-29.066,-28.177,-27.424,-26.992,-26.884,-26.922,-26.889,-26.677,-26.321,-25.910,
--25.494,-25.067,-24.612,-24.135,-23.653,-23.174,-22.684,-22.173,-21.652,-21.132,-20.602,-20.022,-19.353,-18.594,-17.789,-16.999,
--16.257,-15.551,-14.840,-14.092,-13.310,-12.519,-11.740,-10.968,-10.176,-9.345,-8.479,-7.603,-6.733,-5.869,-5.003,-4.145,
--3.320,-2.549,-1.823,-1.108,-.374,.375,1.114,1.819,2.495,3.161,3.826,4.479,5.100,5.696,6.306,6.978,
-7.742,8.583,9.457,10.314,11.124,11.875,12.573,13.229,13.863,14.505,15.196,15.973,16.843,17.774,18.710,19.606,
-20.456,21.285,22.120,22.962,23.789,24.588,25.369,26.169,27.013,27.893,28.770,29.601,30.367,31.088,31.801,32.542,
-33.324,34.127,34.920,35.674,36.381,37.058,37.731,38.432,39.186,40.002,40.862,41.719,42.519,43.241,43.923,44.642,
-45.448,46.319,47.172,47.933,48.604,49.262,49.986,50.781,51.568,52.254,52.815,53.311,53.832,54.412,55.000,55.517,
-55.925,56.264,56.601,56.956,57.268,57.460,57.523,57.549,57.658,57.896,58.188,58.405,58.478,58.443,58.384,58.334,
-58.244,58.043,57.730,57.397,57.150,57.019,56.930,56.764,56.443,55.981,55.465,55.002,54.659,54.425,54.218,53.942,
-53.552,53.090,52.644,52.263,51.920,51.552,51.155,50.819,50.667,50.738,50.939,51.100,51.082,50.840,50.424,49.931,
-49.476,49.173,49.081,49.162,49.286,49.320,49.223,49.062,48.918,48.794,48.644,48.472,48.385,48.497,48.772,49.015,
-49.050,48.943,49.005,49.515,50.421,51.313,51.730,51.520,50.916,50.271,49.736,49.217,48.614,48.065,47.904,48.375,
-49.395,50.626,51.745,52.646,53.380,53.965,54.302,54.314,54.109,53.962,54.092,54.484,54.919,55.186,55.244,55.184,
-55.081,54.925,54.695,54.448,54.292,54.271,54.317,54.339,54.330,54.351,54.407,54.380,54.138,53.714,53.329,53.197,
-53.306,53.418,53.311,52.993,52.668,52.490,52.400,52.207,51.817,51.316,50.843,50.410,49.913,50.032,49.484,48.995,
-48.796,48.957,49.275,49.408,49.157,48.593,47.946,47.381,46.907,46.460,46.033,45.677,45.417,45.201,44.964,44.717,
-44.538,44.467,44.439,44.344,44.148,43.935,43.803,43.741,43.636,43.425,43.210,43.209,43.561,44.179,44.793,45.151,
-45.178,44.968,44.652,44.289,43.886,43.480,43.170,43.052,43.127,43.291,43.411,43.431,43.382,43.325,43.281,43.226,
-43.130,42.999,42.868,42.770,42.718,42.707,42.734,42.810,42.959,43.215,43.578,43.948,44.084,43.659,42.428,40.410,
-37.917,35.393,33.175,31.373,29.938,28.832,28.085,27.698,27.523,27.280,26.757,25.993,25.270,24.910,25.032,25.515,
-26.145,26.826,27.645,28.765,30.260,32.028,33.846,35.493,36.849,37.897,38.674,39.206,39.499,39.576,39.515,39.437,
-39.437,39.531,39.656,39.756,39.839,39.958,40.120,40.227,40.134,39.794,39.337,38.992,38.924,39.117,39.424,39.710,
-39.950,40.178,40.386,40.489,40.401,40.140,39.824,39.567,39.377,39.168,38.865,38.488,38.120,37.815,37.533,37.202,
-36.809,36.446,36.234,36.209,36.295,36.372,36.379,36.343,36.316,36.310,36.300,36.297,36.360,36.521,36.676,36.582,
-36.022,34.988,33.730,32.589,31.771,31.254,30.889,30.561,30.247,29.944,29.603,29.175,28.691,28.261,27.963,27.728,
-27.405,26.934,26.452,26.187,26.241,26.483,26.683,26.719,26.652,26.588,26.503,26.244,25.684,24.858,23.916,22.977,
-22.041,21.066,20.081,19.204,18.520,17.973,17.405,16.695,15.871,15.083,14.454,13.952,13.354,12.332,10.599,8.044,
-4.804,1.212,-2.345,-5.583,-8.383,-10.743,-12.685,-14.212,-15.320,-16.019,-16.335,-16.309,-16.037,-15.699,-15.525,-15.670,
--16.128,-16.763,-17.447,-18.148,-18.879,-19.573,-20.053,-20.157,-19.904,-19.496,-19.153,-18.944,-18.795,-18.654,-18.618,-18.874,
--19.531,-20.508,-21.595,-22.610,-23.481,-24.226,-24.890,-25.516,-26.159,-26.865,-27.627,-28.366,-28.988,-29.476,-29.905,-30.370,
--30.896,-31.429,-31.914,-32.352,-32.778,-33.191,-33.541,-33.793,-33.990,-34.233,-34.583,-35.001,-35.399,-35.741,-36.075,-36.463,
--36.883,-37.238,-37.460,-37.593,-37.734,-37.875,-37.828,-37.360,-36.445,-35.393,-34.695,-34.686,-35.303,-36.160,-36.868,-37.315,
--37.669,-38.112,-38.587,-38.796,-38.454,-37.549,-36.378,-35.319,-34.559,-34.021,-33.518,-32.978,-32.497,-32.193,-32.016,-31.725,
--31.080,-30.084,-29.051,-28.428,-28.489,-29.172,-30.156,-31.149,-32.111,-33.279,-34.955,-37.256,-40.010,-42.850,-45.422,-47.528,
--49.138,-50.314,-51.136,-51.672,-51.988,-52.138,-52.151,-52.047,-51.860,-51.661,-51.525,-51.483,-51.498,-51.525,-51.577,-51.752,
--52.166,-52.863,-53.781,-54.786,-55.742,-56.559,-57.196,-57.667,-58.023,-58.341,-58.676,-59.034,-59.379,-59.673,-59.903,-60.080,
--60.217,-60.331,-60.465,-60.676,-60.990,-61.359,-61.680,-61.873,-61.939,-61.911,-61.767,-61.385,-60.602,-59.338,-57.657,-55.750,
--53.883,-52.349,-51.400,-51.145,-51.462,-52.044,-52.590,-53.001,-53.401,-53.942,-54.622,-55.286,-55.814,-56.246,-56.687,-57.103,
--57.262,-56.937,-56.161,-55.254,-54.556,-54.133,-53.756,-53.153,-52.276,-51.313,-50.489,-49.873,-49.389,-48.949,-48.542,-48.206,
--47.938,-47.685,-47.403,-47.094,-46.790,-46.509,-46.257,-46.069,-46.037,-46.260,-46.795,-47.618,-48.639,-49.710,-50.624,-51.164,
--51.206,-50.838,-50.362,-50.133,-50.335,-50.862,-51.398,-51.640,-51.467,-50.961,-50.292,-49.580,-48.864,-48.143,-47.418,-46.684,
--45.902,-45.010,-44.003,-42.999,-42.185,-41.672,-41.368,-41.026,-40.428,-39.557,-38.573,-37.637,-36.762,-35.849,-34.839,-33.812,
--32.899,-32.130,-31.393,-30.565,-29.656,-28.791,-28.045,-27.309,-26.351,-25.012,-23.353,-21.631,-20.127,-19.005,-18.250,-17.709,
--17.174,-16.507,-15.740,-15.081,-14.766,-14.842,-15.090,-15.168,-14.886,-14.343,-13.792,-13.384,-13.037,-12.553,-11.827,-10.930,
--9.999,-9.089,-8.142,-7.095,-5.975,-4.880,-3.893,-3.020,-2.207,-1.391,-.535,.362,1.275,2.172,3.059,4.009,
-5.120,6.413,7.760,8.943,9.817,10.433,10.992,11.657,12.411,13.100,13.599,13.950,14.326,14.880,15.625,16.438,
-17.170,17.761,18.272,18.837,19.558,20.425,21.310,22.052,22.577,22.960,23.348,23.816,24.266,24.497,24.378,23.998,
-23.635,23.569,23.885,24.416,24.870,25.040,24.948,24.817,24.888,25.238,25.728,26.128,26.319,26.380,26.504,26.823,
-27.323,27.899,28.470,29.018,29.520,29.895,30.065,30.059,30.039,30.172,30.479,30.839,31.133,31.390,31.743,32.267,
-32.865,33.359,33.678,33.945,34.347,34.946,35.615,36.165,36.535,36.849,37.316,38.047,38.974,39.892,40.593,40.998,
-41.175,41.241,41.180,40.750,39.590,37.491,34.604,31.378,28.240,25.318,22.482,19.690,17.273,15.831,15.786,16.994,
-18.782,20.389,21.410,21.903,22.132,22.260,22.269,22.089,21.735,21.311,20.901,20.508,20.084,19.602,19.076,18.525,
-17.949,17.348,16.742,16.164,15.626,15.102,14.556,13.987,13.429,12.917,12.458,12.023,11.583,11.120,10.628,10.101,
-9.546,8.982,8.436,7.919,7.418,6.917,6.414,5.933,5.495,5.094,4.701,4.291,3.862,3.430,3.003,2.575,
-2.132,1.675,1.220,.781,.360,-.052,-.457,-.848,-1.221,-1.584,-1.955,-2.336,-2.703,-3.017,-3.259,-3.446,
--3.620,-3.808,-4.004,-4.181,-4.326,-4.462,-4.643,-4.911,-5.270,-5.693,-6.138,-6.574,-6.985,-7.362,-7.708,-8.031,
--8.344,-8.645,-8.915,-9.129,-9.274,-9.362,-9.426,-9.501,-9.611,-9.767,-9.967,-10.207,-10.492,-10.842,-11.274,-11.775,
--12.289,-12.751,-13.144,-13.501,-13.822,-13.981,-13.761,-13.055,-12.069,-11.305,-11.245,-11.972,-13.064,-13.891,-14.069,-13.689,
--13.137,-12.724,-12.482,-12.269,-12.012,-11.791,-11.713,-11.761,-11.801,-11.743,-11.643,-11.631,-11.749,-11.910,-12.001,-12.012,
--12.039,-12.156,-12.326,-12.456,-12.512,-12.560,-12.678,-12.852,-12.982,-12.991,-12.910,-12.836,-12.817,-12.807,-12.727,-12.565,
--12.391,-12.285,-12.261,-12.283,-12.339,-12.464,-12.691,-12.966,-13.162,-13.175,-13.024,-12.841,-12.759,-12.808,-12.909,-12.962,
--12.933,-12.859,-12.791,-12.745,-12.704,-12.657,-12.619,-12.609,-12.620,-12.614,-12.551,-12.424,-12.263,-12.113,-11.999,-11.925,
--11.882,-11.858,-11.844,-11.838,-11.835,-11.828,-11.804,-11.750,-11.662,-11.559,-11.476,-11.446,-11.478,-11.555,-11.646,-11.732,
--11.799,-11.840,-11.845,-11.809,-11.741,-11.667,-11.613,-11.591,-11.605,-11.650,-11.722,-11.810,-11.900,-11.983,-12.074,-12.204,
--12.389,-12.610,-12.810,-12.943,-13.006,-13.043,-13.107,-13.223,-13.378,-13.543,-13.700,-13.837,-13.937,-13.977,-13.959,-13.925,
--13.946,-14.079,-14.327,-14.638,-14.936,-15.169,-15.315,-15.380,-15.387,-15.377,-15.412,-15.548,-15.805,-16.138,-16.462,-16.692,
--16.800,-16.824,-16.851,-16.963,-17.195,-17.521,-17.874,-18.190,-18.436,-18.625,-18.790,-18.968,-19.184,-19.449,-19.764,-20.106,
--20.442,-20.739,-20.992,-21.219,-21.431,-21.611,-21.727,-21.785,-21.846,-21.998,-22.281,-22.650,-23.013,-23.302,-23.528,-23.750,
--24.020,-24.349,-24.720,-25.119,-25.529,-25.917,-26.234,-26.450,-26.596,-26.754,-27.009,-27.391,-27.860,-28.343,-28.777,-29.140,
--29.446,-29.732,-30.034,-30.365,-30.706,-31.025,-31.302,-31.542,-31.759,-31.963,-32.153,-32.344,-32.565,-32.838,-33.139,-33.411,
--33.614,-33.766,-33.921,-34.109,-34.299,-34.441,-34.528,-34.610,-34.740,-34.916,-35.088,-35.226,-35.354,-35.508,-35.685,-35.834,
--35.917,-35.960,-36.016,-36.105,-36.193,-36.253,-36.319,-36.459,-36.688,-36.935,-37.103,-37.167,-37.200,-37.280,-37.413,-37.539,
--37.612,-37.647,-37.680,-37.704,-37.677,-37.594,-37.511,-37.486,-37.502,-37.476,-37.365,-37.239,-37.215,-37.327,-37.470,-37.506,
--37.407,-37.277,-37.220,-37.206,-37.091,-36.780,-36.348,-36.008,-35.932,-36.108,-36.328,-36.305,-35.816,-34.812,-33.451,-32.046,
--30.928,-30.280,-30.066,-30.106,-30.229,-30.349,-30.402,-30.238,-29.640,-28.491,-26.951,-25.429,-24.357,-23.927,-24.028,-24.376,
--24.710,-24.894,-24.898,-24.740,-24.467,-24.133,-23.778,-23.403,-23.005,-22.640,-22.431,-22.472,-22.704,-22.914,-22.886,-22.576,
--22.142,-21.782,-21.556,-21.369,-21.127,-20.872,-20.748,-20.813,-20.922,-20.817,-20.347,-19.605,-18.842,-18.264,-17.923,-17.782,
--17.855,-18.233,-18.953,-19.868,-20.661,-21.015,-20.795,-20.096,-19.157,-18.241,-17.552,-17.180,-17.062,-16.990,-16.721,-16.156,
--15.427,-14.806,-14.473,-14.372,-14.307,-14.177,-14.129,-14.447,-15.288,-16.517,-17.805,-18.874,-19.669,-20.316,-20.952,-21.603,
--22.203,-22.689,-23.063,-23.377,-23.684,-24.009,-24.348,-24.681,-24.988,-25.259,-25.516,-25.798,-26.109,-26.399,-26.587,-26.638,
--26.612,-26.628,-26.782,-27.084,-27.479,-27.917,-28.389,-28.904,-29.447,-29.970,-30.428,-30.818,-31.173,-31.530,-31.891,-32.228,
--32.512,-32.738,-32.930,-33.117,-33.309,-33.485,-33.602,-33.631,-33.581,-33.500,-33.434,-33.387,-33.323,-33.198,-33.005,-32.773,
--32.540,-32.326,-32.133,-31.964,-31.824,-31.717,-31.643,-31.615,-31.653,-31.757,-31.883,-31.966,-31.992,-32.034,-32.209,-32.562,
--33.010,-33.413,-33.707,-33.949,-34.225,-34.530,-34.752,-34.808,-34.761,-34.769,-34.911,-35.070,-35.025,-34.682,-34.186,-33.816,
--33.750,-33.937,-34.194,-34.389,-34.519,-34.630,-34.699,-34.628,-34.338,-33.856,-33.291,-32.737,-32.242,-31.853,-31.673,-31.819,
--32.316,-33.020,-33.671,-34.034,-34.030,-33.751,-33.389,-33.144,-33.162,-33.495,-34.091,-34.815,-35.504,-36.047,-36.414,-36.647,
--36.801,-36.921,-37.034,-37.153,-37.274,-37.377,-37.461,-37.588,-37.871,-38.398,-39.134,-39.907,-40.507,-40.817,-40.859,-40.731,
--40.504,-40.202,-39.852,-39.522,-39.295,-39.196,-39.158,-39.090,-38.954,-38.797,-38.686,-38.640,-38.633,-38.629,-38.619,-38.602,
--38.545,-38.396,-38.130,-37.776,-37.398,-37.047,-36.742,-36.476,-36.225,-35.919,-35.442,-34.710,-33.780,-32.867,-32.221,-31.930,
--31.854,-31.751,-31.489,-31.128,-30.792,-30.474,-30.007,-29.231,-28.209,-27.236,-26.636,-26.511,-26.687,-26.864,-26.837,-26.585,
--26.203,-25.775,-25.326,-24.845,-24.338,-23.830,-23.337,-22.847,-22.343,-21.826,-21.314,-20.811,-20.281,-19.672,-18.952,-18.148,
--17.332,-16.568,-15.863,-15.174,-14.443,-13.652,-12.833,-12.023,-11.224,-10.407,-9.548,-8.663,-7.797,-6.976,-6.183,-5.381,
--4.559,-3.750,-2.990,-2.274,-1.554,-.791,.000,.766,1.472,2.139,2.821,3.543,4.271,4.949,5.557,6.135,
-6.751,7.446,8.202,8.975,9.733,10.474,11.208,11.937,12.649,13.342,14.042,14.793,15.624,16.524,17.449,18.351,
-19.221,20.081,20.960,21.854,22.730,23.557,24.337,25.108,25.914,26.770,27.651,28.516,29.338,30.114,30.862,31.607,
-32.372,33.165,33.978,34.788,35.564,36.283,36.940,37.554,38.166,38.830,39.588,40.434,41.303,42.113,42.826,43.494,
-44.226,45.099,46.084,47.065,47.925,48.638,49.268,49.901,50.569,51.242,51.880,52.479,53.071,53.671,54.249,54.752,
-55.158,55.502,55.845,56.210,56.554,56.799,56.917,56.978,57.109,57.385,57.751,58.049,58.151,58.069,57.946,57.918,
-57.980,57.987,57.783,57.354,56.844,56.438,56.217,56.111,55.974,55.706,55.307,54.859,54.456,54.148,53.919,53.698,
-53.411,53.032,52.612,52.227,51.909,51.610,51.260,50.862,50.534,50.419,50.553,50.810,50.974,50.883,50.510,49.953,
-49.351,48.834,48.498,48.378,48.426,48.524,48.554,48.488,48.397,48.361,48.380,48.380,48.322,48.275,48.352,48.560,
-48.753,48.767,48.636,48.644,49.096,50.013,51.026,51.611,51.469,50.720,49.755,48.911,48.284,47.803,47.437,47.282,
-47.464,47.996,48.767,49.657,50.622,51.643,52.615,53.349,53.720,53.816,53.896,54.171,54.622,55.037,55.230,55.198,
-55.082,54.999,54.944,54.856,54.728,54.620,54.561,54.490,54.333,54.110,53.929,53.858,53.827,53.706,53.487,53.338,
-53.440,53.754,53.996,53.877,53.367,52.716,52.210,51.931,51.747,51.505,51.184,50.841,50.480,50.032,50.039,49.562,
-49.064,48.736,48.675,48.767,48.765,48.484,47.944,47.308,46.735,46.278,45.913,45.615,45.381,45.190,44.991,44.752,
-44.510,44.334,44.247,44.174,44.019,43.766,43.515,43.380,43.367,43.357,43.233,43.012,42.851,42.911,43.206,43.583,
-43.843,43.893,43.785,43.636,43.520,43.437,43.361,43.301,43.298,43.375,43.496,43.587,43.594,43.531,43.453,43.413,
-43.415,43.413,43.345,43.172,42.911,42.635,42.446,42.417,42.566,42.859,43.238,43.617,43.831,43.602,42.634,40.808,
-38.354,35.797,33.655,32.131,31.035,30.030,28.952,27.907,27.071,26.438,25.800,24.988,24.118,23.546,23.565,24.122,
-24.853,25.405,25.749,26.192,27.107,28.627,30.559,32.554,34.342,35.840,37.097,38.153,38.974,39.485,39.664,39.599,
-39.456,39.388,39.448,39.590,39.741,39.873,40.003,40.120,40.127,39.902,39.422,38.849,38.446,38.397,38.666,39.049,
-39.348,39.517,39.643,39.803,39.959,39.992,39.827,39.514,39.184,38.937,38.774,38.634,38.463,38.251,38.003,37.699,
-37.312,36.858,36.424,36.129,36.038,36.124,36.288,36.439,36.534,36.571,36.563,36.536,36.547,36.666,36.895,37.096,
-37.021,36.469,35.455,34.229,33.111,32.279,31.690,31.187,30.658,30.096,29.529,28.947,28.323,27.682,27.106,26.649,
-26.264,25.870,25.479,25.240,25.299,25.625,26.001,26.221,26.275,26.327,26.480,26.618,26.481,25.920,25.035,24.061,
-23.138,22.225,21.223,20.159,19.191,18.463,17.964,17.554,17.111,16.621,16.138,15.675,15.145,14.389,13.226,11.500,
-9.113,6.082,2.591,-1.039,-4.457,-7.404,-9.774,-11.602,-13.000,-14.082,-14.896,-15.389,-15.471,-15.145,-14.613,-14.214,
--14.229,-14.701,-15.446,-16.237,-16.979,-17.697,-18.388,-18.944,-19.231,-19.235,-19.084,-18.916,-18.738,-18.462,-18.061,-17.689,
--17.605,-17.994,-18.845,-20.002,-21.278,-22.539,-23.697,-24.700,-25.548,-26.302,-27.039,-27.770,-28.431,-28.955,-29.371,-29.797,
--30.329,-30.944,-31.534,-32.015,-32.406,-32.789,-33.205,-33.612,-33.948,-34.214,-34.481,-34.814,-35.216,-35.637,-36.045,-36.445,
--36.839,-37.185,-37.424,-37.552,-37.644,-37.769,-37.866,-37.753,-37.283,-36.557,-35.958,-35.922,-36.613,-37.767,-38.870,-39.552,
--39.847,-40.089,-40.532,-41.023,-41.061,-40.208,-38.497,-36.473,-34.804,-33.808,-33.303,-32.888,-32.354,-31.842,-31.601,-31.629,
--31.570,-31.012,-29.897,-28.656,-27.927,-28.078,-28.947,-30.002,-30.762,-31.131,-31.419,-32.092,-33.476,-35.625,-38.356,-41.364,
--44.321,-46.928,-48.980,-50.415,-51.327,-51.897,-52.281,-52.545,-52.678,-52.672,-52.571,-52.440,-52.311,-52.170,-52.011,-51.896,
--51.948,-52.271,-52.865,-53.632,-54.449,-55.232,-55.951,-56.588,-57.120,-57.529,-57.834,-58.080,-58.312,-58.540,-58.748,-58.909,
--59.005,-59.044,-59.068,-59.161,-59.391,-59.746,-60.096,-60.266,-60.156,-59.795,-59.268,-58.580,-57.605,-56.193,-54.326,-52.185,
--50.090,-48.376,-47.318,-47.091,-47.701,-48.926,-50.362,-51.628,-52.587,-53.386,-54.251,-55.238,-56.189,-56.917,-57.408,-57.799,
--58.180,-58.455,-58.436,-58.059,-57.454,-56.800,-56.120,-55.262,-54.094,-52.687,-51.298,-50.184,-49.437,-48.987,-48.713,-48.528,
--48.370,-48.181,-47.928,-47.639,-47.381,-47.177,-46.963,-46.643,-46.199,-45.735,-45.429,-45.424,-45.768,-46.423,-47.275,-48.152,
--48.843,-49.184,-49.168,-48.989,-48.947,-49.258,-49.907,-50.647,-51.143,-51.173,-50.730,-49.997,-49.205,-48.503,-47.905,-47.333,
--46.687,-45.904,-44.981,-43.992,-43.079,-42.398,-42.000,-41.751,-41.388,-40.702,-39.706,-38.613,-37.636,-36.799,-35.956,-34.982,
--33.932,-32.976,-32.212,-31.558,-30.853,-30.028,-29.156,-28.313,-27.435,-26.339,-24.899,-23.193,-21.478,-20.025,-18.966,-18.253,
--17.722,-17.193,-16.571,-15.911,-15.400,-15.222,-15.379,-15.643,-15.706,-15.417,-14.880,-14.314,-13.830,-13.342,-12.693,-11.834,
--10.860,-9.891,-8.950,-7.975,-6.926,-5.845,-4.815,-3.875,-3.001,-2.145,-1.275,-.369,.589,1.589,2.583,3.527,
-4.450,5.449,6.595,7.826,8.958,9.842,10.486,11.044,11.651,12.309,12.912,13.392,13.808,14.296,14.947,15.737,
-16.564,17.326,17.984,18.565,19.146,19.807,20.576,21.384,22.091,22.594,22.934,23.276,23.764,24.364,24.859,25.016,
-24.795,24.409,24.179,24.297,24.696,25.120,25.340,25.336,25.305,25.483,25.940,26.514,26.949,27.107,27.069,27.047,
-27.215,27.611,28.178,28.843,29.523,30.082,30.360,30.299,30.053,29.911,30.072,30.484,30.931,31.275,31.607,32.116,
-32.833,33.548,34.005,34.177,34.311,34.687,35.339,36.037,36.535,36.832,37.170,37.804,38.758,39.802,40.632,41.093,
-41.255,41.300,41.325,41.197,40.589,39.185,36.928,34.099,31.129,28.284,25.520,22.676,19.831,17.473,16.243,16.443,
-17.759,19.448,20.824,21.630,22.007,22.197,22.295,22.249,22.009,21.618,21.169,20.714,20.250,19.769,19.286,18.805,
-18.290,17.686,16.992,16.277,15.622,15.048,14.511,13.963,13.409,12.892,12.438,12.032,11.636,11.233,10.821,10.390,
-9.917,9.387,8.826,8.276,7.759,7.256,6.739,6.209,5.704,5.253,4.846,4.442,4.016,3.577,3.142,2.713,
-2.269,1.805,1.344,.920,.536,.160,-.246,-.680,-1.103,-1.481,-1.822,-2.168,-2.542,-2.917,-3.229,-3.437,
--3.557,-3.651,-3.769,-3.911,-4.043,-4.141,-4.238,-4.398,-4.676,-5.075,-5.547,-6.036,-6.507,-6.951,-7.370,-7.762,
--8.121,-8.445,-8.737,-8.996,-9.214,-9.379,-9.487,-9.547,-9.583,-9.632,-9.735,-9.910,-10.152,-10.436,-10.750,-11.114,
--11.559,-12.085,-12.623,-13.054,-13.237,-13.052,-12.437,-11.451,-10.344,-9.545,-9.493,-10.349,-11.825,-13.296,-14.175,-14.266,
--13.819,-13.250,-12.814,-12.507,-12.226,-11.962,-11.801,-11.782,-11.808,-11.737,-11.548,-11.381,-11.381,-11.545,-11.724,-11.789,
--11.767,-11.792,-11.944,-12.166,-12.339,-12.423,-12.490,-12.623,-12.805,-12.936,-12.944,-12.857,-12.766,-12.721,-12.696,-12.639,
--12.552,-12.485,-12.466,-12.464,-12.432,-12.388,-12.420,-12.599,-12.886,-13.133,-13.193,-13.048,-12.820,-12.676,-12.694,-12.819,
--12.930,-12.938,-12.852,-12.744,-12.686,-12.698,-12.757,-12.826,-12.878,-12.890,-12.845,-12.731,-12.562,-12.375,-12.218,-12.115,
--12.058,-12.025,-11.999,-11.982,-11.982,-11.996,-12.005,-11.988,-11.938,-11.864,-11.786,-11.722,-11.685,-11.684,-11.725,-11.801,
--11.890,-11.959,-11.980,-11.947,-11.877,-11.800,-11.744,-11.720,-11.726,-11.753,-11.797,-11.855,-11.917,-11.979,-12.041,-12.123,
--12.250,-12.430,-12.638,-12.827,-12.959,-13.034,-13.091,-13.181,-13.329,-13.520,-13.719,-13.890,-14.016,-14.095,-14.137,-14.159,
--14.192,-14.275,-14.433,-14.662,-14.927,-15.179,-15.377,-15.497,-15.540,-15.528,-15.514,-15.563,-15.730,-16.020,-16.375,-16.703,
--16.926,-17.022,-17.033,-17.040,-17.119,-17.313,-17.614,-17.973,-18.324,-18.615,-18.829,-18.983,-19.120,-19.281,-19.501,-19.790,
--20.132,-20.487,-20.814,-21.098,-21.350,-21.584,-21.790,-21.936,-22.016,-22.082,-22.217,-22.476,-22.833,-23.202,-23.510,-23.747,
--23.963,-24.213,-24.522,-24.889,-25.302,-25.738,-26.143,-26.449,-26.630,-26.738,-26.889,-27.181,-27.625,-28.146,-28.638,-29.038,
--29.346,-29.601,-29.851,-30.125,-30.431,-30.757,-31.081,-31.387,-31.670,-31.933,-32.171,-32.379,-32.571,-32.781,-33.040,-33.337,
--33.621,-33.847,-34.020,-34.184,-34.370,-34.561,-34.712,-34.818,-34.921,-35.069,-35.257,-35.434,-35.566,-35.674,-35.806,-35.970,
--36.125,-36.231,-36.304,-36.396,-36.525,-36.660,-36.759,-36.839,-36.959,-37.153,-37.374,-37.540,-37.617,-37.649,-37.706,-37.813,
--37.939,-38.051,-38.140,-38.202,-38.210,-38.141,-38.026,-37.950,-37.975,-38.060,-38.099,-38.031,-37.914,-37.866,-37.930,-38.027,
--38.042,-37.951,-37.831,-37.755,-37.697,-37.548,-37.246,-36.854,-36.531,-36.411,-36.519,-36.745,-36.879,-36.672,-35.945,-34.713,
--33.240,-31.924,-31.075,-30.742,-30.745,-30.863,-30.980,-31.051,-30.969,-30.521,-29.529,-28.047,-26.408,-25.043,-24.241,-24.019,
--24.191,-24.516,-24.803,-24.953,-24.944,-24.816,-24.632,-24.418,-24.148,-23.797,-23.425,-23.181,-23.190,-23.422,-23.669,-23.701,
--23.443,-23.012,-22.588,-22.247,-21.941,-21.618,-21.329,-21.190,-21.223,-21.266,-21.065,-20.487,-19.648,-18.830,-18.274,-18.049,
--18.086,-18.322,-18.753,-19.373,-20.067,-20.612,-20.799,-20.563,-20.003,-19.299,-18.615,-18.059,-17.674,-17.418,-17.164,-16.759,
--16.156,-15.493,-15.003,-14.819,-14.841,-14.845,-14.731,-14.673,-14.998,-15.889,-17.203,-18.562,-19.645,-20.394,-20.971,-21.554,
--22.174,-22.729,-23.125,-23.371,-23.563,-23.799,-24.110,-24.455,-24.775,-25.043,-25.280,-25.540,-25.854,-26.196,-26.480,-26.626,
--26.634,-26.594,-26.628,-26.810,-27.139,-27.571,-28.072,-28.618,-29.170,-29.667,-30.065,-30.381,-30.689,-31.052,-31.468,-31.877,
--32.217,-32.473,-32.678,-32.867,-33.055,-33.229,-33.371,-33.467,-33.512,-33.509,-33.470,-33.403,-33.299,-33.139,-32.911,-32.634,
--32.346,-32.079,-31.847,-31.653,-31.504,-31.404,-31.333,-31.261,-31.178,-31.127,-31.164,-31.295,-31.461,-31.599,-31.721,-31.922,
--32.287,-32.791,-33.313,-33.737,-34.036,-34.253,-34.416,-34.506,-34.521,-34.532,-34.646,-34.874,-35.072,-35.039,-34.703,-34.205,
--33.794,-33.630,-33.697,-33.876,-34.073,-34.264,-34.421,-34.455,-34.258,-33.801,-33.186,-32.580,-32.102,-31.792,-31.662,-31.746,
--32.080,-32.620,-33.214,-33.664,-33.841,-33.758,-33.540,-33.350,-33.320,-33.521,-33.957,-34.565,-35.238,-35.870,-36.391,-36.782,
--37.047,-37.193,-37.241,-37.249,-37.294,-37.438,-37.696,-38.056,-38.530,-39.154,-39.927,-40.736,-41.378,-41.681,-41.623,-41.344,
--41.023,-40.750,-40.504,-40.240,-39.969,-39.756,-39.641,-39.594,-39.556,-39.505,-39.469,-39.473,-39.498,-39.493,-39.431,-39.331,
--39.211,-39.052,-38.808,-38.465,-38.063,-37.668,-37.311,-36.978,-36.649,-36.315,-35.952,-35.487,-34.842,-34.036,-33.218,-32.572,
--32.151,-31.827,-31.431,-30.938,-30.505,-30.286,-30.212,-29.988,-29.342,-28.296,-27.203,-26.490,-26.347,-26.610,-26.932,-27.039,
--26.867,-26.509,-26.070,-25.595,-25.082,-24.544,-24.016,-23.524,-23.061,-22.590,-22.085,-21.547,-20.994,-20.430,-19.829,-19.162,
--18.432,-17.680,-16.956,-16.270,-15.581,-14.833,-14.007,-13.140,-12.286,-11.461,-10.636,-9.779,-8.903,-8.057,-7.275,-6.535,
--5.788,-5.010,-4.229,-3.481,-2.760,-2.017,-1.220,-.399,.375,1.063,1.704,2.378,3.127,3.913,4.661,5.330,
-5.948,6.573,7.236,7.919,8.598,9.272,9.972,10.718,11.493,12.258,12.997,13.739,14.536,15.413,16.346,17.276,
-18.167,19.028,19.903,20.817,21.748,22.645,23.475,24.257,25.044,25.878,26.765,27.674,28.572,29.443,30.282,31.091,
-31.871,32.631,33.391,34.167,34.956,35.730,36.455,37.106,37.685,38.232,38.814,39.492,40.273,41.090,41.845,42.495,
-43.107,43.814,44.712,45.764,46.826,47.751,48.494,49.115,49.706,50.313,50.935,51.564,52.210,52.871,53.509,54.053,
-54.464,54.774,55.065,55.395,55.747,56.041,56.218,56.311,56.436,56.700,57.097,57.488,57.694,57.644,57.440,57.279,
-57.278,57.366,57.343,57.061,56.560,56.039,55.682,55.517,55.416,55.225,54.893,54.486,54.113,53.843,53.672,53.541,
-53.369,53.094,52.708,52.274,51.888,51.599,51.365,51.096,50.756,50.425,50.237,50.253,50.381,50.431,50.254,49.836,
-49.288,48.765,48.388,48.201,48.173,48.208,48.189,48.054,47.850,47.711,47.739,47.907,48.081,48.147,48.124,48.127,
-48.228,48.364,48.416,48.389,48.486,48.959,49.833,50.782,51.291,51.016,50.030,48.756,47.659,46.958,46.582,46.346,
-46.148,46.031,46.104,46.457,47.135,48.135,49.385,50.711,51.879,52.732,53.297,53.755,54.257,54.779,55.160,55.283,
-55.206,55.111,55.127,55.224,55.284,55.238,55.113,54.950,54.723,54.381,53.949,53.552,53.302,53.181,53.077,52.947,
-52.906,53.106,53.511,53.836,53.748,53.155,52.296,51.539,51.094,50.919,50.843,50.746,50.598,50.380,50.039,49.754,
-49.265,48.699,48.199,47.874,47.706,47.566,47.324,46.953,46.532,46.158,45.873,45.664,45.492,45.319,45.111,44.848,
-44.552,44.286,44.112,44.023,43.936,43.752,43.454,43.134,42.915,42.845,42.852,42.811,42.658,42.446,42.302,42.317,
-42.480,42.701,42.893,43.033,43.152,43.277,43.394,43.465,43.474,43.455,43.459,43.503,43.551,43.551,43.489,43.414,
-43.403,43.491,43.622,43.666,43.504,43.131,42.686,42.382,42.354,42.563,42.832,42.982,42.919,42.599,41.908,40.653,
-38.733,36.357,34.040,32.306,31.319,30.777,30.194,29.298,28.183,27.084,26.080,25.050,23.934,22.975,22.609,23.064,
-24.063,24.983,25.347,25.233,25.207,25.869,27.403,29.505,31.667,33.535,35.054,36.346,37.508,38.506,39.222,39.575,
-39.599,39.438,39.265,39.189,39.217,39.288,39.356,39.415,39.462,39.441,39.246,38.822,38.263,37.789,37.593,37.688,
-37.899,38.023,38.005,37.963,38.050,38.284,38.524,38.598,38.458,38.216,38.036,37.995,38.038,38.044,37.929,37.693,
-37.386,37.046,36.683,36.309,35.974,35.760,35.728,35.870,36.095,36.278,36.325,36.224,36.056,35.957,36.033,36.268,
-36.491,36.451,35.972,35.080,33.999,32.988,32.171,31.494,30.838,30.152,29.479,28.863,28.274,27.641,26.942,26.235,
-25.590,25.021,24.518,24.138,24.009,24.207,24.621,25.006,25.190,25.232,25.336,25.593,25.835,25.776,25.281,24.481,
-23.611,22.780,21.916,20.941,19.937,19.098,18.539,18.179,17.835,17.404,16.917,16.440,15.950,15.336,14.488,13.340,
-11.814,9.773,7.090,3.794,.155,-3.402,-6.482,-8.884,-10.627,-11.881,-12.839,-13.600,-14.122,-14.280,-14.025,-13.512,
--13.073,-13.024,-13.453,-14.202,-15.030,-15.800,-16.510,-17.178,-17.750,-18.134,-18.307,-18.332,-18.270,-18.096,-17.737,-17.202,
--16.651,-16.320,-16.388,-16.902,-17.812,-19.028,-20.440,-21.911,-23.313,-24.582,-25.732,-26.787,-27.704,-28.395,-28.836,-29.142,
--29.507,-30.040,-30.685,-31.289,-31.760,-32.139,-32.532,-32.990,-33.466,-33.891,-34.250,-34.597,-34.984,-35.416,-35.863,-36.299,
--36.716,-37.093,-37.392,-37.582,-37.680,-37.736,-37.767,-37.726,-37.545,-37.259,-37.071,-37.276,-38.057,-39.308,-40.645,-41.631,
--42.082,-42.189,-42.338,-42.727,-43.114,-42.929,-41.721,-39.576,-37.134,-35.155,-33.983,-33.380,-32.850,-32.140,-31.419,-31.007,
--30.943,-30.850,-30.276,-29.153,-27.939,-27.280,-27.509,-28.414,-29.453,-30.176,-30.491,-30.622,-30.898,-31.604,-32.945,-35.052,
--37.903,-41.236,-44.569,-47.398,-49.443,-50.748,-51.570,-52.166,-52.644,-52.987,-53.165,-53.211,-53.187,-53.125,-53.012,-52.851,
--52.715,-52.731,-52.980,-53.439,-53.993,-54.537,-55.040,-55.533,-56.040,-56.535,-56.954,-57.254,-57.434,-57.526,-57.563,-57.567,
--57.546,-57.510,-57.485,-57.518,-57.661,-57.906,-58.130,-58.110,-57.655,-56.753,-55.597,-54.423,-53.311,-52.120,-50.655,-48.896,
--47.077,-45.559,-44.635,-44.433,-44.950,-46.096,-47.677,-49.402,-50.987,-52.314,-53.492,-54.702,-55.985,-57.175,-58.058,-58.585,
--58.899,-59.165,-59.403,-59.497,-59.343,-58.944,-58.352,-57.543,-56.421,-54.937,-53.218,-51.531,-50.134,-49.153,-48.569,-48.280,
--48.157,-48.057,-47.867,-47.567,-47.248,-47.030,-46.943,-46.884,-46.697,-46.316,-45.813,-45.332,-44.995,-44.860,-44.947,-45.254,
--45.731,-46.260,-46.687,-46.924,-47.027,-47.183,-47.595,-48.331,-49.242,-50.020,-50.357,-50.132,-49.482,-48.696,-48.021,-47.515,
--47.056,-46.484,-45.732,-44.858,-43.989,-43.245,-42.695,-42.311,-41.955,-41.426,-40.591,-39.510,-38.402,-37.466,-36.703,-35.933,
--35.003,-33.956,-32.991,-32.250,-31.676,-31.086,-30.362,-29.529,-28.655,-27.695,-26.500,-24.977,-23.232,-21.539,-20.158,-19.182,
--18.512,-17.957,-17.353,-16.658,-15.981,-15.518,-15.416,-15.628,-15.908,-15.969,-15.694,-15.185,-14.622,-14.070,-13.448,-12.659,
--11.723,-10.752,-9.819,-8.888,-7.883,-6.800,-5.724,-4.730,-3.809,-2.897,-1.960,-1.016,-.083,.864,1.854,2.864,
-3.830,4.729,5.625,6.599,7.641,8.633,9.468,10.150,10.787,11.460,12.146,12.769,13.309,13.838,14.446,15.147,
-15.890,16.619,17.325,18.015,18.679,19.305,19.924,20.592,21.317,22.006,22.541,22.914,23.276,23.815,24.558,25.295,
-25.712,25.645,25.227,24.797,24.660,24.882,25.281,25.613,25.785,25.910,26.181,26.667,27.230,27.635,27.744,27.627,
-27.493,27.545,27.876,28.482,29.283,30.112,30.725,30.911,30.667,30.266,30.081,30.292,30.756,31.198,31.525,31.925,
-32.627,33.581,34.438,34.864,34.884,34.866,35.171,35.819,36.514,36.985,37.266,37.650,38.383,39.423,40.468,41.209,
-41.541,41.581,41.512,41.385,41.039,40.176,38.567,36.238,33.478,30.641,27.889,25.135,22.280,19.521,17.413,16.526,
-17.000,18.383,19.931,21.086,21.732,22.051,22.221,22.259,22.111,21.796,21.412,21.027,20.612,20.108,19.532,18.970,
-18.473,17.982,17.386,16.650,15.854,15.118,14.494,13.944,13.413,12.897,12.425,12.006,11.615,11.228,10.852,10.500,
-10.146,9.734,9.226,8.650,8.073,7.537,7.026,6.507,5.978,5.478,5.036,4.632,4.220,3.776,3.316,2.866,
-2.425,1.969,1.497,1.044,.649,.309,-.024,-.395,-.800,-1.195,-1.549,-1.883,-2.244,-2.649,-3.047,-3.356,
--3.528,-3.592,-3.623,-3.686,-3.786,-3.891,-3.979,-4.075,-4.236,-4.508,-4.894,-5.359,-5.861,-6.376,-6.890,-7.386,
--7.836,-8.218,-8.527,-8.782,-9.006,-9.212,-9.392,-9.528,-9.608,-9.644,-9.675,-9.759,-9.930,-10.174,-10.437,-10.687,
--10.960,-11.346,-11.891,-12.502,-12.921,-12.829,-12.027,-10.586,-8.895,-7.559,-7.162,-7.982,-9.796,-11.940,-13.637,-14.416,
--14.328,-13.798,-13.261,-12.879,-12.571,-12.236,-11.923,-11.759,-11.768,-11.806,-11.709,-11.467,-11.244,-11.195,-11.311,-11.444,
--11.484,-11.470,-11.531,-11.724,-11.975,-12.169,-12.277,-12.368,-12.511,-12.686,-12.814,-12.841,-12.791,-12.721,-12.656,-12.580,
--12.493,-12.438,-12.463,-12.554,-12.632,-12.627,-12.554,-12.512,-12.592,-12.789,-12.991,-13.067,-12.972,-12.779,-12.627,-12.609,
--12.711,-12.832,-12.867,-12.793,-12.677,-12.615,-12.653,-12.766,-12.889,-12.969,-12.989,-12.953,-12.861,-12.716,-12.540,-12.372,
--12.247,-12.174,-12.133,-12.104,-12.083,-12.081,-12.097,-12.110,-12.102,-12.070,-12.030,-12.000,-11.980,-11.961,-11.942,-11.940,
--11.974,-12.040,-12.110,-12.151,-12.144,-12.099,-12.041,-11.993,-11.969,-11.970,-11.993,-12.028,-12.061,-12.084,-12.101,-12.127,
--12.187,-12.296,-12.451,-12.633,-12.811,-12.962,-13.081,-13.189,-13.318,-13.488,-13.691,-13.891,-14.050,-14.157,-14.231,-14.301,
--14.384,-14.483,-14.593,-14.721,-14.875,-15.057,-15.251,-15.422,-15.542,-15.596,-15.601,-15.605,-15.677,-15.871,-16.189,-16.570,
--16.915,-17.141,-17.227,-17.221,-17.207,-17.265,-17.435,-17.717,-18.068,-18.427,-18.737,-18.963,-19.108,-19.212,-19.333,-19.524,
--19.807,-20.167,-20.551,-20.907,-21.215,-21.493,-21.760,-22.004,-22.181,-22.266,-22.303,-22.388,-22.598,-22.926,-23.285,-23.586,
--23.810,-24.005,-24.236,-24.539,-24.913,-25.338,-25.778,-26.173,-26.458,-26.618,-26.725,-26.907,-27.258,-27.769,-28.333,-28.833,
--29.214,-29.499,-29.743,-29.991,-30.266,-30.572,-30.903,-31.246,-31.581,-31.894,-32.182,-32.439,-32.659,-32.850,-33.045,-33.282,
--33.571,-33.877,-34.145,-34.354,-34.532,-34.711,-34.889,-35.037,-35.142,-35.239,-35.373,-35.554,-35.741,-35.895,-36.016,-36.141,
--36.287,-36.432,-36.551,-36.654,-36.778,-36.939,-37.104,-37.231,-37.322,-37.426,-37.583,-37.770,-37.926,-38.012,-38.052,-38.097,
--38.176,-38.279,-38.388,-38.487,-38.554,-38.556,-38.483,-38.382,-38.341,-38.409,-38.533,-38.604,-38.567,-38.472,-38.417,-38.442,
--38.486,-38.470,-38.383,-38.272,-38.175,-38.058,-37.864,-37.583,-37.279,-37.034,-36.899,-36.894,-37.007,-37.159,-37.152,-36.734,
--35.774,-34.418,-33.054,-32.068,-31.600,-31.509,-31.558,-31.599,-31.599,-31.500,-31.141,-30.334,-29.044,-27.467,-25.947,-24.791,
--24.144,-23.986,-24.182,-24.546,-24.891,-25.090,-25.125,-25.063,-24.981,-24.888,-24.742,-24.525,-24.298,-24.166,-24.168,-24.232,
--24.219,-24.037,-23.702,-23.299,-22.905,-22.549,-22.239,-21.999,-21.853,-21.760,-21.594,-21.205,-20.539,-19.707,-18.936,-18.443,
--18.323,-18.543,-18.996,-19.550,-20.059,-20.374,-20.395,-20.151,-19.791,-19.479,-19.267,-19.064,-18.743,-18.258,-17.665,-17.037,
--16.401,-15.780,-15.275,-15.034,-15.114,-15.363,-15.509,-15.420,-15.273,-15.453,-16.226,-17.501,-18.889,-20.015,-20.773,-21.321,
--21.861,-22.441,-22.961,-23.314,-23.518,-23.695,-23.958,-24.321,-24.711,-25.040,-25.282,-25.481,-25.707,-25.991,-26.291,-26.520,
--26.623,-26.628,-26.639,-26.762,-27.033,-27.420,-27.866,-28.337,-28.813,-29.260,-29.641,-29.950,-30.245,-30.600,-31.036,-31.493,
--31.883,-32.167,-32.377,-32.565,-32.744,-32.886,-32.967,-33.003,-33.031,-33.069,-33.103,-33.103,-33.046,-32.920,-32.716,-32.438,
--32.115,-31.792,-31.509,-31.277,-31.091,-30.948,-30.852,-30.792,-30.736,-30.663,-30.604,-30.627,-30.773,-31.009,-31.255,-31.471,
--31.701,-32.029,-32.480,-32.990,-33.456,-33.817,-34.076,-34.259,-34.380,-34.456,-34.534,-34.660,-34.818,-34.901,-34.788,-34.460,
--34.036,-33.694,-33.539,-33.558,-33.676,-33.828,-33.973,-34.050,-33.965,-33.651,-33.140,-32.567,-32.091,-31.809,-31.735,-31.848,
--32.126,-32.536,-33.005,-33.418,-33.671,-33.728,-33.637,-33.504,-33.450,-33.575,-33.923,-34.469,-35.121,-35.767,-36.331,-36.792,
--37.151,-37.384,-37.458,-37.392,-37.297,-37.340,-37.640,-38.197,-38.917,-39.697,-40.483,-41.231,-41.846,-42.197,-42.204,-41.927,
--41.545,-41.227,-41.024,-40.875,-40.704,-40.509,-40.342,-40.242,-40.186,-40.138,-40.098,-40.101,-40.158,-40.220,-40.217,-40.122,
--39.968,-39.792,-39.581,-39.287,-38.892,-38.434,-37.975,-37.537,-37.101,-36.660,-36.247,-35.886,-35.538,-35.109,-34.551,-33.923,
--33.327,-32.793,-32.233,-31.562,-30.847,-30.304,-30.094,-30.119,-30.036,-29.530,-28.595,-27.566,-26.869,-26.702,-26.924,-27.215,
--27.313,-27.154,-26.814,-26.386,-25.905,-25.370,-24.794,-24.223,-23.703,-23.241,-22.796,-22.313,-21.763,-21.160,-20.540,-19.926,
--19.318,-18.696,-18.055,-17.402,-16.738,-16.034,-15.252,-14.380,-13.458,-12.549,-11.691,-10.865,-10.035,-9.192,-8.370,-7.599,
--6.868,-6.136,-5.380,-4.620,-3.884,-3.163,-2.415,-1.612,-.788,-.016,.668,1.299,1.956,2.683,3.456,4.217,
-4.936,5.627,6.317,7.005,7.666,8.296,8.932,9.627,10.400,11.217,12.019,12.784,13.545,14.357,15.249,16.192,
-17.131,18.033,18.913,19.810,20.739,21.673,22.567,23.402,24.210,25.043,25.932,26.867,27.814,28.748,29.660,30.542,
-31.381,32.164,32.900,33.621,34.358,35.117,35.880,36.612,37.286,37.892,38.453,39.018,39.646,40.352,41.086,41.767,
-42.361,42.938,43.629,44.514,45.542,46.560,47.436,48.148,48.773,49.396,50.041,50.690,51.335,51.987,52.643,53.251,
-53.737,54.081,54.339,54.602,54.908,55.216,55.456,55.608,55.741,55.955,56.288,56.661,56.919,56.946,56.762,56.520,
-56.388,56.405,56.447,56.338,56.027,55.647,55.401,55.375,55.447,55.392,55.072,54.544,53.997,53.601,53.396,53.308,
-53.220,53.034,52.704,52.250,51.763,51.364,51.123,50.998,50.870,50.645,50.346,50.083,49.932,49.848,49.697,49.377,
-48.916,48.455,48.154,48.091,48.222,48.402,48.464,48.294,47.915,47.488,47.228,47.256,47.519,47.831,48.023,48.068,
-48.063,48.104,48.200,48.302,48.422,48.683,49.216,49.973,50.650,50.831,50.274,49.102,47.740,46.630,45.954,45.594,
-45.319,45.019,44.791,44.831,45.272,46.108,47.234,48.516,49.820,51.023,52.034,52.845,53.522,54.134,54.666,55.030,
-55.180,55.190,55.218,55.362,55.569,55.694,55.640,55.418,55.089,54.671,54.143,53.535,52.965,52.557,52.321,52.157,
-51.998,51.921,52.075,52.478,52.902,53.008,52.622,51.887,51.141,50.655,50.467,50.437,50.410,50.307,50.099,49.754,
-49.156,48.590,47.986,47.434,47.015,46.740,46.540,46.329,46.072,45.800,45.574,45.428,45.338,45.243,45.076,44.802,
-44.446,44.083,43.801,43.644,43.578,43.508,43.340,43.043,42.678,42.358,42.174,42.129,42.135,42.083,41.927,41.730,
-41.625,41.719,42.023,42.449,42.876,43.216,43.433,43.525,43.499,43.386,43.248,43.161,43.169,43.247,43.324,43.342,
-43.318,43.332,43.446,43.621,43.700,43.519,43.064,42.539,42.250,42.358,42.697,42.862,42.496,41.556,40.286,38.942,
-37.560,36.003,34.243,32.542,31.298,30.681,30.449,30.143,29.470,28.486,27.406,26.315,25.130,23.870,22.873,22.625,
-23.303,24.485,25.396,25.526,25.067,24.769,25.349,26.970,29.204,31.428,33.249,34.645,35.799,36.861,37.839,38.633,
-39.142,39.336,39.275,39.083,38.886,38.750,38.664,38.594,38.538,38.524,38.535,38.471,38.207,37.717,37.139,36.677,
-36.429,36.305,36.128,35.832,35.551,35.503,35.782,36.259,36.680,36.883,36.905,36.919,37.041,37.228,37.323,37.212,
-36.927,36.609,36.366,36.187,35.977,35.686,35.393,35.255,35.371,35.671,35.939,35.968,35.700,35.274,34.929,34.841,
-35.006,35.237,35.273,34.939,34.238,33.324,32.376,31.477,30.609,29.749,28.948,28.303,27.850,27.495,27.080,26.514,
-25.829,25.119,24.449,23.847,23.366,23.105,23.113,23.299,23.479,23.551,23.601,23.801,24.181,24.536,24.593,24.252,
-23.647,22.967,22.254,21.429,20.481,19.585,18.963,18.657,18.466,18.137,17.578,16.892,16.204,15.525,14.788,13.961,
-13.048,11.950,10.394,8.076,4.931,1.274,-2.336,-5.401,-7.703,-9.307,-10.423,-11.250,-11.902,-12.387,-12.652,-12.662,
--12.491,-12.327,-12.366,-12.690,-13.231,-13.869,-14.541,-15.250,-15.984,-16.655,-17.140,-17.369,-17.355,-17.146,-16.773,-16.263,
--15.688,-15.169,-14.828,-14.742,-14.951,-15.498,-16.413,-17.668,-19.156,-20.760,-22.414,-24.096,-25.725,-27.120,-28.096,-28.627,
--28.906,-29.203,-29.667,-30.246,-30.796,-31.250,-31.665,-32.129,-32.656,-33.187,-33.672,-34.121,-34.579,-35.063,-35.550,-36.010,
--36.438,-36.840,-37.203,-37.501,-37.720,-37.868,-37.937,-37.893,-37.727,-37.538,-37.552,-38.011,-39.003,-40.366,-41.753,-42.818,
--43.407,-43.623,-43.744,-44.017,-44.447,-44.707,-44.300,-42.888,-40.601,-38.021,-35.831,-34.361,-33.433,-32.631,-31.730,-30.866,
--30.305,-30.057,-29.790,-29.136,-28.089,-27.072,-26.601,-26.867,-27.635,-28.507,-29.248,-29.857,-30.406,-30.904,-31.383,-32.071,
--33.390,-35.683,-38.884,-42.457,-45.687,-48.104,-49.681,-50.709,-51.503,-52.197,-52.770,-53.178,-53.443,-53.627,-53.756,-53.808,
--53.771,-53.697,-53.692,-53.826,-54.080,-54.364,-54.600,-54.783,-54.972,-55.230,-55.565,-55.924,-56.236,-56.438,-56.496,-56.413,
--56.227,-55.999,-55.790,-55.649,-55.598,-55.619,-55.617,-55.397,-54.727,-53.487,-51.809,-50.050,-48.575,-47.499,-46.635,-45.709,
--44.649,-43.676,-43.122,-43.167,-43.740,-44.645,-45.737,-46.968,-48.307,-49.691,-51.063,-52.439,-53.877,-55.362,-56.752,-57.869,
--58.643,-59.159,-59.546,-59.846,-59.999,-59.933,-59.640,-59.140,-58.415,-57.393,-56.032,-54.405,-52.694,-51.109,-49.814,-48.899,
--48.364,-48.111,-47.960,-47.742,-47.404,-47.032,-46.758,-46.625,-46.550,-46.408,-46.141,-45.785,-45.401,-45.025,-44.675,-44.393,
--44.247,-44.276,-44.438,-44.636,-44.789,-44.903,-45.085,-45.486,-46.203,-47.180,-48.175,-48.856,-48.993,-48.612,-47.974,-47.371,
--46.919,-46.522,-46.018,-45.354,-44.619,-43.940,-43.372,-42.879,-42.385,-41.807,-41.074,-40.159,-39.124,-38.113,-37.242,-36.490,
--35.713,-34.798,-33.795,-32.883,-32.186,-31.659,-31.140,-30.518,-29.788,-28.968,-27.979,-26.682,-25.047,-23.253,-21.616,-20.381,
--19.565,-18.979,-18.374,-17.602,-16.696,-15.856,-15.342,-15.295,-15.615,-15.994,-16.117,-15.869,-15.363,-14.770,-14.141,-13.406,
--12.513,-11.533,-10.582,-9.690,-8.768,-7.729,-6.611,-5.540,-4.587,-3.689,-2.738,-1.711,-.687,.259,1.147,2.054,
-3.011,3.975,4.898,5.792,6.695,7.598,8.430,9.147,9.802,10.494,11.255,12.017,12.697,13.302,13.917,14.598,
-15.309,15.973,16.583,17.208,17.900,18.618,19.278,19.864,20.456,21.126,21.831,22.440,22.890,23.294,23.859,24.674,
-25.576,26.235,26.398,26.087,25.586,25.236,25.217,25.470,25.810,26.106,26.379,26.731,27.198,27.676,27.994,28.064,
-27.961,27.865,27.946,28.292,28.904,29.706,30.514,31.066,31.162,30.850,30.444,30.308,30.558,31.006,31.411,31.776,
-32.362,33.359,34.585,35.562,35.931,35.787,35.590,35.740,36.248,36.832,37.265,37.613,38.126,38.953,39.983,40.945,
-41.619,41.947,41.983,41.788,41.355,40.603,39.402,37.650,35.366,32.714,29.912,27.085,24.233,21.398,18.869,17.157,
-16.680,17.401,18.791,20.178,21.160,21.736,22.081,22.272,22.238,21.940,21.490,21.072,20.746,20.400,19.902,19.260,
-18.620,18.088,17.611,17.039,16.293,15.446,14.641,13.963,13.400,12.904,12.455,12.054,11.682,11.300,10.897,10.507,
-10.165,9.845,9.468,8.979,8.406,7.827,7.295,6.798,6.299,5.793,5.313,4.884,4.480,4.054,3.585,3.098,
-2.623,2.165,1.710,1.258,.842,.490,.189,-.109,-.436,-.783,-1.116,-1.429,-1.756,-2.135,-2.552,-2.937,
--3.215,-3.366,-3.438,-3.499,-3.589,-3.701,-3.806,-3.898,-4.006,-4.175,-4.432,-4.779,-5.200,-5.681,-6.210,-6.764,
--7.305,-7.787,-8.184,-8.496,-8.745,-8.954,-9.137,-9.295,-9.421,-9.511,-9.572,-9.636,-9.749,-9.939,-10.186,-10.433,
--10.644,-10.866,-11.212,-11.751,-12.366,-12.736,-12.471,-11.359,-9.567,-7.650,-6.353,-6.278,-7.565,-9.782,-12.110,-13.760,
--14.378,-14.163,-13.626,-13.181,-12.913,-12.664,-12.313,-11.932,-11.690,-11.648,-11.677,-11.607,-11.402,-11.183,-11.080,-11.098,
--11.142,-11.152,-11.171,-11.284,-11.499,-11.734,-11.908,-12.026,-12.151,-12.315,-12.480,-12.585,-12.621,-12.625,-12.625,-12.599,
--12.516,-12.394,-12.307,-12.320,-12.426,-12.550,-12.620,-12.627,-12.620,-12.659,-12.763,-12.896,-12.988,-12.982,-12.867,-12.703,
--12.582,-12.563,-12.626,-12.691,-12.696,-12.649,-12.617,-12.651,-12.744,-12.841,-12.903,-12.931,-12.945,-12.937,-12.878,-12.752,
--12.589,-12.446,-12.357,-12.317,-12.294,-12.272,-12.256,-12.254,-12.256,-12.250,-12.232,-12.218,-12.222,-12.237,-12.241,-12.225,
--12.203,-12.202,-12.237,-12.297,-12.355,-12.386,-12.378,-12.333,-12.264,-12.196,-12.153,-12.150,-12.175,-12.204,-12.218,-12.223,
--12.245,-12.306,-12.411,-12.551,-12.714,-12.889,-13.063,-13.221,-13.358,-13.490,-13.642,-13.818,-13.994,-14.137,-14.240,-14.329,
--14.440,-14.578,-14.716,-14.826,-14.914,-15.011,-15.146,-15.311,-15.474,-15.598,-15.670,-15.709,-15.751,-15.849,-16.048,-16.359,
--16.735,-17.081,-17.308,-17.391,-17.379,-17.365,-17.432,-17.613,-17.898,-18.245,-18.604,-18.924,-19.165,-19.317,-19.409,-19.504,
--19.667,-19.931,-20.275,-20.643,-20.980,-21.276,-21.563,-21.867,-22.160,-22.371,-22.450,-22.439,-22.458,-22.616,-22.920,-23.280,
--23.590,-23.818,-24.020,-24.276,-24.623,-25.044,-25.496,-25.927,-26.285,-26.528,-26.664,-26.777,-26.988,-27.370,-27.894,-28.445,
--28.920,-29.286,-29.580,-29.852,-30.124,-30.403,-30.699,-31.024,-31.375,-31.727,-32.054,-32.344,-32.600,-32.821,-33.012,-33.200,
--33.427,-33.720,-34.052,-34.359,-34.595,-34.769,-34.924,-35.084,-35.231,-35.339,-35.421,-35.522,-35.677,-35.873,-36.066,-36.229,
--36.367,-36.495,-36.615,-36.722,-36.825,-36.949,-37.106,-37.274,-37.422,-37.547,-37.678,-37.843,-38.025,-38.178,-38.273,-38.321,
--38.358,-38.410,-38.478,-38.555,-38.633,-38.694,-38.709,-38.673,-38.624,-38.630,-38.716,-38.835,-38.902,-38.887,-38.832,-38.804,
--38.812,-38.811,-38.765,-38.688,-38.616,-38.542,-38.412,-38.198,-37.943,-37.723,-37.561,-37.427,-37.303,-37.240,-37.280,-37.327,
--37.135,-36.475,-35.359,-34.083,-33.025,-32.387,-32.109,-32.003,-31.936,-31.874,-31.785,-31.547,-30.994,-30.035,-28.736,-27.293,
--25.939,-24.878,-24.253,-24.108,-24.360,-24.803,-25.202,-25.417,-25.461,-25.445,-25.457,-25.489,-25.462,-25.319,-25.083,-24.844,
--24.683,-24.601,-24.515,-24.327,-24.007,-23.618,-23.266,-23.013,-22.832,-22.632,-22.321,-21.862,-21.271,-20.597,-19.914,-19.325,
--18.959,-18.928,-19.266,-19.880,-20.545,-20.975,-20.954,-20.476,-19.780,-19.231,-19.072,-19.235,-19.390,-19.194,-18.552,-17.652,
--16.768,-16.055,-15.524,-15.183,-15.116,-15.382,-15.847,-16.199,-16.198,-15.940,-15.838,-16.296,-17.370,-18.727,-19.930,-20.766,
--21.326,-21.817,-22.338,-22.832,-23.212,-23.491,-23.772,-24.149,-24.613,-25.075,-25.444,-25.695,-25.876,-26.052,-26.254,-26.455,
--26.605,-26.684,-26.734,-26.845,-27.084,-27.450,-27.880,-28.299,-28.668,-28.985,-29.259,-29.514,-29.796,-30.159,-30.622,-31.121,
--31.547,-31.828,-31.991,-32.131,-32.308,-32.492,-32.605,-32.607,-32.537,-32.467,-32.428,-32.405,-32.371,-32.322,-32.259,-32.155,
--31.970,-31.690,-31.360,-31.048,-30.795,-30.597,-30.441,-30.327,-30.262,-30.231,-30.203,-30.176,-30.201,-30.343,-30.609,-30.934,
--31.235,-31.487,-31.740,-32.054,-32.447,-32.878,-33.300,-33.690,-34.039,-34.331,-34.542,-34.653,-34.667,-34.591,-34.428,-34.191,
--33.923,-33.691,-33.553,-33.516,-33.544,-33.590,-33.615,-33.587,-33.471,-33.240,-32.912,-32.555,-32.258,-32.088,-32.066,-32.180,
--32.406,-32.702,-33.008,-33.262,-33.429,-33.511,-33.533,-33.519,-33.502,-33.552,-33.766,-34.211,-34.855,-35.575,-36.235,-36.777,
--37.211,-37.544,-37.724,-37.691,-37.491,-37.321,-37.435,-37.972,-38.857,-39.869,-40.795,-41.529,-42.060,-42.383,-42.472,-42.326,
--42.026,-41.713,-41.491,-41.368,-41.276,-41.165,-41.048,-40.968,-40.926,-40.878,-40.791,-40.691,-40.643,-40.669,-40.718,-40.710,
--40.611,-40.452,-40.269,-40.048,-39.737,-39.312,-38.810,-38.288,-37.766,-37.232,-36.695,-36.211,-35.835,-35.544,-35.245,-34.858,
--34.389,-33.903,-33.421,-32.873,-32.200,-31.467,-30.870,-30.565,-30.488,-30.375,-29.965,-29.233,-28.407,-27.787,-27.513,-27.502,
--27.554,-27.514,-27.341,-27.060,-26.697,-26.248,-25.704,-25.087,-24.452,-23.859,-23.343,-22.887,-22.436,-21.934,-21.360,-20.749,
--20.152,-19.592,-19.048,-18.476,-17.852,-17.177,-16.450,-15.652,-14.768,-13.819,-12.865,-11.962,-11.122,-10.315,-9.517,-8.726,
--7.959,-7.216,-6.477,-5.730,-4.985,-4.259,-3.544,-2.809,-2.034,-1.240,-.475,.233,.906,1.587,2.298,3.028,
-3.754,4.479,5.218,5.969,6.702,7.387,8.030,8.682,9.396,10.183,11.007,11.820,12.607,13.396,14.225,15.113,
-16.039,16.970,17.887,18.800,19.725,20.660,21.582,22.464,23.311,24.160,25.051,25.992,26.951,27.892,28.795,29.662,
-30.501,31.304,32.069,32.806,33.541,34.292,35.052,35.805,36.535,37.235,37.899,38.526,39.135,39.760,40.429,41.122,
-41.791,42.413,43.038,43.756,44.611,45.537,46.410,47.153,47.801,48.450,49.152,49.874,50.549,51.158,51.733,52.302,
-52.835,53.271,53.589,53.837,54.083,54.350,54.606,54.819,55.008,55.232,55.521,55.828,56.041,56.066,55.904,55.664,
-55.495,55.471,55.532,55.525,55.354,55.086,54.933,55.070,55.458,55.829,55.877,55.480,54.788,54.085,53.583,53.311,
-53.150,52.950,52.614,52.126,51.548,51.007,50.640,50.509,50.543,50.583,50.499,50.285,50.028,49.790,49.530,49.152,
-48.626,48.065,47.675,47.618,47.906,48.374,48.767,48.859,48.571,48.015,47.444,47.112,47.128,47.407,47.759,48.023,
-48.163,48.234,48.301,48.391,48.519,48.734,49.106,49.627,50.144,50.381,50.101,49.273,48.123,46.998,46.143,45.560,
-45.075,44.554,44.083,43.932,44.342,45.314,46.598,47.884,49.007,49.992,50.936,51.870,52.736,53.466,54.037,54.470,
-54.779,54.975,55.097,55.217,55.377,55.530,55.561,55.376,54.971,54.402,53.723,52.969,52.206,51.556,51.129,50.929,
-50.838,50.749,50.692,50.814,51.202,51.730,52.111,52.112,51.740,51.216,50.785,50.538,50.401,50.248,49.997,49.631,
-49.156,48.326,47.754,47.229,46.803,46.496,46.275,46.074,45.833,45.537,45.224,44.957,44.771,44.646,44.515,44.302,
-43.979,43.590,43.222,42.953,42.803,42.734,42.672,42.548,42.325,42.017,41.697,41.467,41.391,41.441,41.505,41.476,
-41.361,41.299,41.457,41.893,42.500,43.076,43.453,43.574,43.481,43.259,42.993,42.764,42.645,42.678,42.837,43.035,
-43.173,43.217,43.214,43.235,43.273,43.201,42.868,42.282,41.714,41.551,41.960,42.624,42.859,42.076,40.239,37.907,
-35.795,34.258,33.159,32.183,31.233,30.496,30.142,30.053,29.885,29.391,28.608,27.720,26.784,25.708,24.504,23.511,
-23.213,23.779,24.780,25.467,25.401,24.854,24.605,25.314,27.033,29.257,31.365,33.030,34.282,35.306,36.233,37.082,
-37.819,38.402,38.788,38.952,38.917,38.762,38.576,38.396,38.218,38.055,37.957,37.947,37.940,37.766,37.308,36.630,
-35.935,35.383,34.950,34.480,33.891,33.323,33.056,33.271,33.878,34.575,35.086,35.361,35.549,35.806,36.125,36.345,
-36.319,36.067,35.761,35.563,35.487,35.407,35.223,34.996,34.913,35.107,35.494,35.791,35.720,35.223,34.511,33.918,
-33.674,33.778,34.017,34.121,33.905,33.337,32.506,31.530,30.489,29.431,28.430,27.606,27.068,26.815,26.699,26.515,
-26.135,25.583,24.961,24.347,23.752,23.186,22.694,22.325,22.068,21.872,21.741,21.784,22.103,22.635,23.131,23.335,
-23.187,22.821,22.375,21.831,21.094,20.200,19.381,18.878,18.690,18.559,18.202,17.539,16.686,15.775,14.853,13.954,
-13.177,12.590,12.006,10.946,8.934,5.901,2.319,-1.087,-3.800,-5.744,-7.154,-8.287,-9.247,-10.026,-10.610,-11.034,
--11.354,-11.615,-11.846,-12.072,-12.309,-12.582,-12.940,-13.454,-14.165,-15.011,-15.817,-16.376,-16.549,-16.316,-15.759,-15.016,
--14.252,-13.620,-13.206,-13.008,-12.973,-13.090,-13.430,-14.080,-15.062,-16.327,-17.839,-19.621,-21.676,-23.845,-25.802,-27.236,
--28.075,-28.526,-28.888,-29.328,-29.822,-30.289,-30.724,-31.197,-31.745,-32.323,-32.861,-33.357,-33.870,-34.441,-35.037,-35.590,
--36.074,-36.509,-36.916,-37.278,-37.570,-37.805,-38.004,-38.134,-38.120,-37.973,-37.901,-38.247,-39.232,-40.725,-42.274,-43.406,
--43.945,-44.089,-44.205,-44.542,-45.079,-45.558,-45.617,-44.934,-43.370,-41.077,-38.488,-36.124,-34.302,-32.992,-31.952,-31.012,
--30.215,-29.674,-29.326,-28.898,-28.156,-27.185,-26.376,-26.095,-26.382,-26.983,-27.645,-28.349,-29.204,-30.178,-31.016,-31.499,
--31.793,-32.469,-34.110,-36.832,-40.147,-43.298,-45.756,-47.464,-48.703,-49.772,-50.785,-51.694,-52.434,-53.017,-53.496,-53.895,
--54.189,-54.345,-54.375,-54.339,-54.300,-54.284,-54.273,-54.242,-54.191,-54.159,-54.201,-54.355,-54.612,-54.910,-55.147,-55.221,
--55.082,-54.763,-54.354,-53.946,-53.575,-53.212,-52.787,-52.204,-51.349,-50.123,-48.529,-46.763,-45.171,-44.058,-43.474,-43.190,
--42.913,-42.569,-42.372,-42.612,-43.363,-44.395,-45.366,-46.102,-46.687,-47.332,-48.176,-49.221,-50.409,-51.704,-53.093,-54.524,
--55.903,-57.139,-58.186,-59.028,-59.635,-59.969,-60.021,-59.837,-59.476,-58.953,-58.220,-57.215,-55.922,-54.400,-52.784,-51.265,
--50.049,-49.269,-48.902,-48.765,-48.627,-48.353,-47.959,-47.537,-47.148,-46.788,-46.441,-46.118,-45.840,-45.588,-45.308,-44.974,
--44.626,-44.325,-44.086,-43.869,-43.638,-43.417,-43.284,-43.318,-43.585,-44.129,-44.945,-45.905,-46.749,-47.203,-47.171,-46.805,
--46.374,-46.038,-45.750,-45.372,-44.855,-44.285,-43.767,-43.297,-42.772,-42.104,-41.298,-40.425,-39.543,-38.672,-37.817,-36.979,
--36.139,-35.259,-34.332,-33.421,-32.628,-32.000,-31.487,-30.994,-30.463,-29.871,-29.145,-28.131,-26.711,-24.953,-23.151,-21.656,
--20.648,-20.028,-19.509,-18.808,-17.808,-16.623,-15.553,-14.935,-14.935,-15.408,-15.963,-16.210,-16.006,-15.482,-14.840,-14.149,
--13.348,-12.397,-11.381,-10.424,-9.536,-8.605,-7.544,-6.415,-5.367,-4.460,-3.592,-2.613,-1.502,-.381,.622,1.500,
-2.348,3.242,4.180,5.123,6.055,6.969,7.817,8.535,9.128,9.703,10.381,11.173,11.973,12.679,13.307,13.953,
-14.669,15.391,16.031,16.597,17.184,17.855,18.558,19.183,19.713,20.252,20.911,21.665,22.363,22.895,23.328,23.864,
-24.650,25.613,26.484,26.980,26.990,26.644,26.205,25.909,25.854,26.004,26.278,26.628,27.040,27.479,27.861,28.102,
-28.198,28.245,28.368,28.633,29.042,29.565,30.155,30.708,31.056,31.074,30.824,30.565,30.558,30.846,31.259,31.660,
-32.156,33.004,34.276,35.644,36.582,36.801,36.502,36.177,36.179,36.501,36.936,37.380,37.928,38.703,39.662,40.613,
-41.393,41.963,42.323,42.398,42.051,41.213,39.954,38.387,36.535,34.332,31.737,28.834,25.795,22.803,20.076,17.938,
-16.768,16.766,17.728,19.094,20.297,21.097,21.600,21.976,22.213,22.157,21.756,21.181,20.688,20.364,20.066,19.611,
-18.982,18.329,17.778,17.288,16.709,15.955,15.092,14.265,13.567,12.997,12.521,12.123,11.790,11.479,11.127,10.714,
-10.283,9.887,9.522,9.125,8.650,8.117,7.592,7.113,6.658,6.188,5.696,5.213,4.765,4.334,3.881,3.394,
-2.893,2.405,1.941,1.502,1.100,.762,.491,.253,.000,-.288,-.589,-.881,-1.173,-1.503,-1.885,-2.279,
--2.613,-2.848,-3.009,-3.156,-3.329,-3.517,-3.681,-3.799,-3.893,-4.008,-4.185,-4.434,-4.754,-5.139,-5.590,-6.098,
--6.632,-7.149,-7.613,-8.012,-8.350,-8.632,-8.849,-9.001,-9.102,-9.184,-9.275,-9.385,-9.514,-9.670,-9.866,-10.095,
--10.325,-10.537,-10.769,-11.113,-11.619,-12.187,-12.545,-12.375,-11.521,-10.131,-8.659,-7.688,-7.682,-8.749,-10.558,-12.458,
--13.804,-14.285,-14.052,-13.540,-13.119,-12.873,-12.654,-12.326,-11.928,-11.613,-11.470,-11.432,-11.373,-11.238,-11.083,-10.978,
--10.928,-10.894,-10.875,-10.924,-11.075,-11.287,-11.475,-11.605,-11.724,-11.893,-12.098,-12.261,-12.331,-12.341,-12.365,-12.428,
--12.475,-12.442,-12.329,-12.208,-12.156,-12.197,-12.305,-12.441,-12.573,-12.674,-12.737,-12.787,-12.869,-12.990,-13.086,-13.052,
--12.853,-12.573,-12.369,-12.336,-12.443,-12.577,-12.658,-12.690,-12.720,-12.770,-12.821,-12.855,-12.889,-12.942,-12.999,-13.006,
--12.926,-12.786,-12.657,-12.592,-12.585,-12.591,-12.574,-12.539,-12.506,-12.488,-12.477,-12.465,-12.457,-12.460,-12.472,-12.480,
--12.472,-12.454,-12.442,-12.446,-12.465,-12.490,-12.507,-12.497,-12.443,-12.345,-12.228,-12.136,-12.104,-12.132,-12.190,-12.251,
--12.312,-12.392,-12.507,-12.650,-12.809,-12.980,-13.164,-13.352,-13.517,-13.638,-13.725,-13.816,-13.939,-14.082,-14.215,-14.325,
--14.434,-14.571,-14.728,-14.865,-14.957,-15.026,-15.124,-15.280,-15.468,-15.635,-15.752,-15.834,-15.911,-16.009,-16.143,-16.335,
--16.602,-16.926,-17.235,-17.445,-17.525,-17.521,-17.531,-17.633,-17.849,-18.151,-18.500,-18.856,-19.185,-19.445,-19.614,-19.708,
--19.785,-19.916,-20.138,-20.430,-20.732,-21.002,-21.249,-21.521,-21.848,-22.185,-22.432,-22.519,-22.485,-22.468,-22.601,-22.910,
--23.301,-23.655,-23.931,-24.185,-24.500,-24.907,-25.371,-25.830,-26.226,-26.525,-26.715,-26.827,-26.945,-27.170,-27.546,-28.029,
--28.515,-28.933,-29.283,-29.609,-29.937,-30.251,-30.534,-30.800,-31.090,-31.421,-31.770,-32.098,-32.388,-32.646,-32.882,-33.099,
--33.310,-33.550,-33.847,-34.185,-34.497,-34.725,-34.873,-35.001,-35.157,-35.332,-35.477,-35.570,-35.648,-35.768,-35.950,-36.160,
--36.349,-36.496,-36.610,-36.710,-36.802,-36.893,-36.995,-37.120,-37.267,-37.429,-37.605,-37.801,-38.016,-38.221,-38.378,-38.469,
--38.509,-38.534,-38.564,-38.606,-38.658,-38.722,-38.787,-38.830,-38.841,-38.842,-38.872,-38.945,-39.028,-39.076,-39.083,-39.081,
--39.094,-39.100,-39.060,-38.979,-38.911,-38.891,-38.878,-38.787,-38.590,-38.360,-38.190,-38.090,-37.975,-37.785,-37.574,-37.452,
--37.421,-37.298,-36.841,-35.966,-34.837,-33.747,-32.912,-32.367,-32.039,-31.863,-31.808,-31.821,-31.784,-31.553,-31.024,-30.179,
--29.060,-27.755,-26.420,-25.279,-24.567,-24.402,-24.702,-25.217,-25.673,-25.919,-25.980,-25.974,-25.990,-26.005,-25.925,-25.700,
--25.399,-25.163,-25.077,-25.077,-25.000,-24.743,-24.365,-24.032,-23.835,-23.693,-23.419,-22.896,-22.186,-21.461,-20.862,-20.421,
--20.114,-19.961,-20.041,-20.409,-20.997,-21.579,-21.859,-21.627,-20.915,-20.027,-19.379,-19.229,-19.461,-19.655,-19.408,-18.652,
--17.682,-16.869,-16.350,-16.005,-15.705,-15.532,-15.678,-16.160,-16.677,-16.843,-16.574,-16.235,-16.352,-17.165,-18.438,-19.692,
--20.590,-21.138,-21.551,-21.999,-22.495,-22.967,-23.397,-23.839,-24.346,-24.899,-25.420,-25.836,-26.132,-26.337,-26.494,-26.630,
--26.750,-26.852,-26.948,-27.074,-27.277,-27.582,-27.965,-28.360,-28.698,-28.946,-29.118,-29.262,-29.446,-29.736,-30.159,-30.672,
--31.156,-31.488,-31.636,-31.687,-31.768,-31.933,-32.120,-32.225,-32.199,-32.081,-31.933,-31.779,-31.619,-31.480,-31.426,-31.487,
--31.598,-31.629,-31.489,-31.205,-30.880,-30.600,-30.374,-30.176,-30.003,-29.883,-29.830,-29.816,-29.809,-29.831,-29.949,-30.206,
--30.559,-30.907,-31.178,-31.385,-31.606,-31.905,-32.293,-32.738,-33.210,-33.686,-34.122,-34.434,-34.531,-34.376,-34.030,-33.635,
--33.337,-33.214,-33.246,-33.346,-33.431,-33.460,-33.426,-33.321,-33.124,-32.838,-32.522,-32.277,-32.181,-32.236,-32.387,-32.578,
--32.795,-33.033,-33.242,-33.343,-33.300,-33.177,-33.095,-33.130,-33.255,-33.405,-33.582,-33.881,-34.392,-35.089,-35.839,-36.509,
--37.068,-37.546,-37.925,-38.099,-37.989,-37.692,-37.503,-37.739,-38.506,-39.623,-40.753,-41.632,-42.181,-42.460,-42.552,-42.495,
--42.318,-42.085,-41.885,-41.764,-41.703,-41.647,-41.577,-41.522,-41.508,-41.509,-41.466,-41.353,-41.214,-41.128,-41.122,-41.143,
--41.109,-40.987,-40.804,-40.594,-40.346,-40.015,-39.577,-39.067,-38.534,-37.996,-37.443,-36.879,-36.355,-35.923,-35.573,-35.235,
--34.851,-34.440,-34.066,-33.744,-33.401,-32.941,-32.365,-31.795,-31.368,-31.100,-30.871,-30.530,-30.024,-29.424,-28.843,-28.356,
--27.977,-27.700,-27.512,-27.376,-27.220,-26.959,-26.546,-25.996,-25.358,-24.691,-24.046,-23.466,-22.974,-22.548,-22.123,-21.642,
--21.103,-20.550,-20.018,-19.493,-18.923,-18.276,-17.563,-16.815,-16.031,-15.182,-14.252,-13.277,-12.327,-11.452,-10.650,-9.888,
--9.133,-8.380,-7.632,-6.891,-6.153,-5.421,-4.699,-3.979,-3.249,-2.503,-1.753,-1.016,-.294,.430,1.167,1.907,
-2.635,3.349,4.072,4.824,5.595,6.352,7.075,7.775,8.487,9.235,10.014,10.804,11.599,12.413,13.259,14.137,
-15.033,15.937,16.847,17.771,18.714,19.668,20.614,21.530,22.411,23.278,24.167,25.099,26.058,26.995,27.865,28.657,
-29.397,30.119,30.852,31.607,32.393,33.204,34.022,34.814,35.560,36.273,36.974,37.673,38.356,39.015,39.670,40.358,
-41.088,41.833,42.560,43.281,44.037,44.839,45.635,46.354,46.988,47.616,48.322,49.101,49.853,50.477,50.967,51.402,
-51.857,52.322,52.731,53.041,53.268,53.460,53.645,53.826,54.021,54.270,54.590,54.928,55.166,55.204,55.040,54.790,
-54.613,54.610,54.754,54.899,54.891,54.690,54.441,54.392,54.704,55.294,55.854,56.048,55.743,55.078,54.336,53.736,
-53.328,53.014,52.655,52.158,51.517,50.830,50.261,49.967,49.981,50.178,50.354,50.375,50.249,50.063,49.843,49.506,
-48.957,48.236,47.557,47.195,47.304,47.810,48.450,48.906,48.965,48.616,48.045,47.531,47.285,47.343,47.583,47.844,
-48.044,48.200,48.358,48.531,48.718,48.952,49.293,49.753,50.202,50.402,50.143,49.399,48.364,47.336,46.524,45.926,
-45.366,44.686,43.934,43.416,43.511,44.384,45.828,47.369,48.598,49.433,50.111,50.917,51.919,52.934,53.722,54.192,
-54.436,54.600,54.751,54.868,54.917,54.888,54.775,54.535,54.105,53.457,52.623,51.683,50.737,49.908,49.326,49.079,
-49.140,49.361,49.586,49.771,50.016,50.431,50.990,51.497,51.731,51.606,51.226,50.778,50.392,50.076,49.757,49.366,
-48.881,48.326,47.433,46.964,46.578,46.312,46.137,45.974,45.757,45.459,45.102,44.731,44.384,44.085,43.831,43.597,
-43.349,43.071,42.774,42.491,42.243,42.042,41.890,41.790,41.731,41.664,41.537,41.344,41.159,41.086,41.157,41.295,
-41.386,41.404,41.459,41.705,42.190,42.786,43.276,43.495,43.427,43.172,42.858,42.577,42.377,42.294,42.350,42.529,
-42.765,42.953,43.016,42.947,42.794,42.575,42.222,41.637,40.877,40.267,40.257,41.029,42.161,42.731,41.904,39.570,
-36.479,33.714,31.943,31.093,30.651,30.235,29.838,29.622,29.577,29.471,29.106,28.515,27.862,27.186,26.354,25.314,
-24.325,23.825,24.011,24.564,24.895,24.693,24.257,24.260,25.175,26.909,28.946,30.790,32.272,33.486,34.556,35.498,
-36.282,36.930,37.508,38.034,38.442,38.657,38.683,38.587,38.430,38.223,37.979,37.751,37.595,37.471,37.230,36.734,
-36.002,35.204,34.498,33.878,33.204,32.397,31.607,31.148,31.252,31.853,32.622,33.218,33.530,33.714,34.003,34.477,
-34.997,35.335,35.376,35.189,34.943,34.755,34.624,34.519,34.473,34.588,34.896,35.249,35.360,35.005,34.223,33.319,
-32.666,32.465,32.645,32.945,33.088,32.909,32.381,31.567,30.563,29.474,28.404,27.462,26.749,26.313,26.108,25.992,
-25.802,25.456,24.989,24.496,24.034,23.575,23.060,22.466,21.819,21.172,20.600,20.224,20.187,20.542,21.145,21.707,
-21.989,21.971,21.809,21.618,21.337,20.828,20.095,19.344,18.806,18.509,18.265,17.866,17.244,16.443,15.492,14.404,
-13.310,12.483,12.086,11.868,11.178,9.427,6.610,3.383,.583,-1.384,-2.730,-3.961,-5.376,-6.886,-8.196,-9.122,
--9.717,-10.161,-10.592,-11.025,-11.400,-11.675,-11.885,-12.144,-12.586,-13.265,-14.095,-14.871,-15.360,-15.411,-14.998,-14.217,
--13.259,-12.358,-11.707,-11.379,-11.314,-11.402,-11.600,-11.957,-12.535,-13.328,-14.305,-15.512,-17.089,-19.117,-21.440,-23.681,
--25.473,-26.707,-27.541,-28.205,-28.808,-29.331,-29.770,-30.205,-30.726,-31.323,-31.899,-32.394,-32.869,-33.426,-34.090,-34.777,
--35.393,-35.931,-36.438,-36.915,-37.298,-37.545,-37.714,-37.899,-38.105,-38.233,-38.256,-38.381,-38.971,-40.213,-41.856,-43.321,
--44.130,-44.284,-44.224,-44.430,-45.022,-45.711,-46.058,-45.760,-44.735,-43.050,-40.856,-38.408,-36.042,-34.049,-32.532,-31.396,
--30.508,-29.826,-29.350,-28.981,-28.492,-27.727,-26.809,-26.102,-25.920,-26.261,-26.858,-27.481,-28.145,-28.981,-29.948,-30.744,
--31.084,-31.073,-31.257,-32.243,-34.228,-36.847,-39.478,-41.678,-43.402,-44.868,-46.286,-47.705,-49.053,-50.254,-51.295,-52.198,
--52.970,-53.590,-54.020,-54.238,-54.252,-54.106,-53.878,-53.648,-53.474,-53.374,-53.341,-53.373,-53.482,-53.663,-53.861,-53.965,
--53.856,-53.481,-52.896,-52.222,-51.552,-50.879,-50.107,-49.143,-47.976,-46.685,-45.386,-44.189,-43.200,-42.528,-42.223,-42.208,
--42.287,-42.288,-42.239,-42.380,-42.966,-44.005,-45.200,-46.148,-46.649,-46.817,-46.944,-47.252,-47.777,-48.451,-49.249,-50.238,
--51.502,-53.034,-54.706,-56.322,-57.700,-58.723,-59.359,-59.647,-59.668,-59.498,-59.172,-58.682,-57.987,-57.040,-55.822,-54.391,
--52.921,-51.665,-50.839,-50.486,-50.444,-50.447,-50.287,-49.889,-49.286,-48.558,-47.798,-47.121,-46.619,-46.303,-46.079,-45.831,
--45.528,-45.218,-44.936,-44.613,-44.148,-43.541,-42.949,-42.566,-42.467,-42.589,-42.856,-43.276,-43.876,-44.565,-45.121,-45.355,
--45.284,-45.099,-44.962,-44.856,-44.645,-44.258,-43.767,-43.287,-42.819,-42.244,-41.468,-40.542,-39.621,-38.822,-38.124,-37.410,
--36.576,-35.618,-34.621,-33.696,-32.916,-32.285,-31.746,-31.242,-30.763,-30.323,-29.869,-29.225,-28.168,-26.627,-24.800,-23.077,
--21.788,-20.990,-20.465,-19.892,-19.035,-17.847,-16.487,-15.282,-14.597,-14.627,-15.223,-15.936,-16.299,-16.129,-15.572,-14.878,
--14.156,-13.342,-12.379,-11.340,-10.351,-9.435,-8.484,-7.412,-6.281,-5.240,-4.346,-3.484,-2.489,-1.329,-.131,.957,
-1.900,2.768,3.635,4.515,5.402,6.297,7.184,8.000,8.672,9.215,9.756,10.423,11.222,12.034,12.750,13.385,
-14.040,14.764,15.501,16.167,16.766,17.372,18.021,18.653,19.185,19.637,20.141,20.809,21.606,22.369,22.968,23.432,
-23.933,24.635,25.557,26.544,27.354,27.777,27.746,27.363,26.848,26.438,26.281,26.403,26.735,27.167,27.589,27.922,
-28.155,28.357,28.636,29.045,29.535,30.000,30.374,30.661,30.878,30.997,30.980,30.878,30.843,31.002,31.336,31.724,
-32.141,32.753,33.752,35.068,36.299,36.994,37.036,36.733,36.517,36.592,36.881,37.271,37.817,38.645,39.713,40.751,
-41.500,41.953,42.298,42.612,42.675,42.141,40.889,39.141,37.226,35.244,33.006,30.290,27.120,23.800,20.739,18.297,
-16.754,16.291,16.875,18.149,19.539,20.569,21.136,21.458,21.753,21.994,21.978,21.601,21.014,20.483,20.125,19.833,
-19.427,18.865,18.252,17.686,17.140,16.504,15.736,14.914,14.154,13.507,12.948,12.448,12.016,11.669,11.372,11.050,
-10.653,10.200,9.742,9.300,8.851,8.377,7.893,7.437,7.017,6.598,6.141,5.643,5.135,4.645,4.169,3.692,
-3.208,2.725,2.253,1.796,1.371,1.018,.766,.602,.464,.289,.055,-.213,-.496,-.806,-1.168,-1.572,
--1.961,-2.276,-2.512,-2.720,-2.960,-3.241,-3.515,-3.730,-3.874,-3.986,-4.118,-4.303,-4.549,-4.857,-5.230,-5.668,
--6.150,-6.636,-7.090,-7.501,-7.879,-8.229,-8.529,-8.739,-8.845,-8.888,-8.941,-9.058,-9.235,-9.426,-9.597,-9.754,
--9.923,-10.117,-10.337,-10.602,-10.955,-11.418,-11.927,-12.327,-12.453,-12.228,-11.714,-11.082,-10.565,-10.400,-10.755,-11.623,
--12.755,-13.739,-14.219,-14.117,-13.652,-13.141,-12.761,-12.486,-12.206,-11.887,-11.593,-11.389,-11.263,-11.159,-11.050,-10.952,
--10.879,-10.813,-10.738,-10.692,-10.743,-10.905,-11.106,-11.257,-11.352,-11.468,-11.667,-11.907,-12.085,-12.142,-12.132,-12.150,
--12.228,-12.308,-12.317,-12.243,-12.137,-12.059,-12.046,-12.117,-12.277,-12.490,-12.677,-12.768,-12.783,-12.822,-12.957,-13.124,
--13.154,-12.937,-12.551,-12.221,-12.132,-12.285,-12.526,-12.702,-12.774,-12.796,-12.823,-12.864,-12.902,-12.942,-12.996,-13.050,
--13.059,-12.993,-12.882,-12.794,-12.777,-12.814,-12.846,-12.831,-12.776,-12.717,-12.685,-12.680,-12.687,-12.690,-12.686,-12.675,
--12.658,-12.642,-12.629,-12.618,-12.600,-12.571,-12.536,-12.506,-12.477,-12.428,-12.340,-12.220,-12.113,-12.065,-12.096,-12.189,
--12.313,-12.455,-12.617,-12.798,-12.986,-13.168,-13.347,-13.534,-13.723,-13.880,-13.976,-14.023,-14.067,-14.150,-14.271,-14.395,
--14.503,-14.609,-14.735,-14.866,-14.966,-15.024,-15.087,-15.218,-15.427,-15.652,-15.819,-15.913,-15.987,-16.099,-16.260,-16.441,
--16.632,-16.850,-17.107,-17.365,-17.552,-17.631,-17.646,-17.687,-17.826,-18.068,-18.376,-18.711,-19.053,-19.378,-19.647,-19.825,
--19.916,-19.977,-20.083,-20.270,-20.515,-20.762,-20.978,-21.185,-21.440,-21.770,-22.123,-22.392,-22.500,-22.481,-22.474,-22.617,
--22.948,-23.380,-23.794,-24.140,-24.456,-24.811,-25.226,-25.664,-26.067,-26.393,-26.631,-26.789,-26.906,-27.054,-27.305,-27.680,
--28.123,-28.548,-28.913,-29.249,-29.606,-29.990,-30.349,-30.641,-30.881,-31.127,-31.419,-31.744,-32.060,-32.350,-32.629,-32.911,
--33.192,-33.460,-33.727,-34.017,-34.324,-34.599,-34.795,-34.921,-35.045,-35.229,-35.463,-35.678,-35.822,-35.913,-36.015,-36.170,
--36.361,-36.536,-36.667,-36.766,-36.855,-36.947,-37.035,-37.118,-37.209,-37.330,-37.494,-37.707,-37.957,-38.216,-38.439,-38.589,
--38.659,-38.676,-38.680,-38.697,-38.734,-38.792,-38.872,-38.964,-39.043,-39.090,-39.111,-39.135,-39.179,-39.231,-39.272,-39.303,
--39.342,-39.383,-39.383,-39.311,-39.196,-39.119,-39.125,-39.158,-39.114,-38.952,-38.746,-38.602,-38.540,-38.466,-38.285,-38.018,
--37.773,-37.610,-37.437,-37.072,-36.397,-35.460,-34.422,-33.451,-32.651,-32.077,-31.764,-31.706,-31.822,-31.972,-32.019,-31.877,
--31.496,-30.814,-29.771,-28.391,-26.865,-25.529,-24.726,-24.622,-25.103,-25.834,-26.445,-26.728,-26.714,-26.574,-26.447,-26.341,
--26.187,-25.973,-25.788,-25.721,-25.732,-25.669,-25.423,-25.060,-24.755,-24.597,-24.467,-24.141,-23.509,-22.694,-21.939,-21.425,
--21.174,-21.126,-21.237,-21.498,-21.874,-22.258,-22.501,-22.470,-22.108,-21.471,-20.750,-20.215,-20.042,-20.141,-20.174,-19.820,
--19.072,-18.265,-17.754,-17.563,-17.389,-16.962,-16.390,-16.074,-16.273,-16.782,-17.104,-16.952,-16.564,-16.498,-17.120,-18.282,
--19.491,-20.349,-20.824,-21.160,-21.587,-22.150,-22.764,-23.358,-23.940,-24.539,-25.142,-25.697,-26.157,-26.511,-26.771,-26.954,
--27.081,-27.182,-27.295,-27.447,-27.646,-27.890,-28.166,-28.455,-28.722,-28.933,-29.080,-29.186,-29.304,-29.487,-29.774,-30.162,
--30.590,-30.961,-31.193,-31.283,-31.314,-31.381,-31.511,-31.646,-31.707,-31.668,-31.556,-31.393,-31.172,-30.901,-30.666,-30.599,
--30.763,-31.070,-31.323,-31.371,-31.212,-30.960,-30.709,-30.468,-30.199,-29.906,-29.655,-29.503,-29.445,-29.438,-29.471,-29.587,
--29.830,-30.170,-30.517,-30.799,-31.025,-31.264,-31.570,-31.932,-32.314,-32.709,-33.136,-33.574,-33.906,-33.972,-33.694,-33.177,
--32.675,-32.424,-32.490,-32.741,-32.975,-33.077,-33.062,-32.993,-32.880,-32.674,-32.368,-32.060,-31.906,-31.985,-32.239,-32.540,
--32.816,-33.084,-33.354,-33.540,-33.509,-33.230,-32.858,-32.633,-32.688,-32.961,-33.304,-33.656,-34.088,-34.682,-35.406,-36.134,
--36.779,-37.360,-37.916,-38.374,-38.563,-38.398,-38.055,-37.920,-38.322,-39.277,-40.482,-41.544,-42.231,-42.553,-42.645,-42.615,
--42.499,-42.318,-42.129,-42.004,-41.971,-41.990,-42.000,-41.981,-41.951,-41.931,-41.903,-41.832,-41.718,-41.609,-41.557,-41.563,
--41.562,-41.482,-41.300,-41.052,-40.778,-40.478,-40.120,-39.689,-39.209,-38.717,-38.225,-37.718,-37.192,-36.674,-36.196,-35.754,
--35.312,-34.853,-34.422,-34.088,-33.861,-33.660,-33.370,-32.940,-32.425,-31.932,-31.532,-31.221,-30.940,-30.615,-30.180,-29.599,
--28.903,-28.218,-27.708,-27.467,-27.428,-27.394,-27.183,-26.746,-26.162,-25.537,-24.920,-24.314,-23.732,-23.216,-22.787,-22.404,
--21.994,-21.515,-20.991,-20.465,-19.934,-19.353,-18.686,-17.951,-17.194,-16.431,-15.624,-14.732,-13.764,-12.792,-11.893,-11.092,
--10.355,-9.629,-8.883,-8.121,-7.358,-6.611,-5.881,-5.156,-4.421,-3.671,-2.922,-2.197,-1.503,-.818,-.108,.640,
-1.409,2.176,2.933,3.692,4.460,5.227,5.983,6.733,7.500,8.291,9.083,9.847,10.589,11.355,12.192,13.104,
-14.048,14.977,15.879,16.779,17.706,18.666,19.633,20.581,21.495,22.383,23.268,24.179,25.123,26.070,26.964,27.754,
-28.434,29.052,29.678,30.367,31.139,31.984,32.865,33.735,34.548,35.292,35.992,36.687,37.393,38.093,38.775,39.463,
-40.204,41.016,41.864,42.689,43.464,44.205,44.928,45.618,46.256,46.874,47.547,48.318,49.125,49.829,50.337,50.683,
-50.998,51.375,51.799,52.175,52.433,52.574,52.648,52.703,52.779,52.928,53.195,53.561,53.916,54.116,54.087,53.895,
-53.706,53.677,53.851,54.141,54.377,54.410,54.214,53.926,53.783,53.966,54.457,55.018,55.339,55.233,54.730,54.027,
-53.343,52.801,52.394,52.018,51.546,50.922,50.230,49.675,49.450,49.584,49.896,50.137,50.178,50.074,49.942,49.784,
-49.462,48.859,48.054,47.326,46.978,47.129,47.636,48.196,48.521,48.478,48.137,47.715,47.445,47.436,47.616,47.812,
-47.899,47.903,47.950,48.143,48.489,48.941,49.480,50.103,50.724,51.122,51.038,50.364,49.253,48.034,46.996,46.218,
-45.579,44.918,44.218,43.668,43.573,44.144,45.317,46.734,47.944,48.706,49.158,49.692,50.611,51.868,53.099,53.931,
-54.262,54.282,54.255,54.288,54.299,54.156,53.815,53.323,52.729,52.029,51.197,50.248,49.265,48.375,47.705,47.360,
-47.391,47.761,48.339,48.959,49.514,50.005,50.489,50.970,51.345,51.464,51.238,50.719,50.073,49.473,49.006,48.646,
-48.303,47.900,47.433,46.694,46.338,46.028,45.806,45.625,45.411,45.140,44.852,44.600,44.388,44.173,43.915,43.628,
-43.370,43.188,43.080,42.984,42.823,42.551,42.202,41.883,41.715,41.740,41.880,41.979,41.937,41.783,41.645,41.624,
-41.707,41.808,41.890,42.010,42.261,42.646,43.041,43.281,43.279,43.083,42.813,42.573,42.402,42.294,42.240,42.247,
-42.327,42.459,42.574,42.586,42.440,42.140,41.711,41.138,40.383,39.532,38.918,39.008,40.009,41.486,42.416,41.801,
-39.420,36.052,32.954,30.989,30.164,29.893,29.641,29.304,29.056,28.974,28.908,28.679,28.298,27.893,27.474,26.870,
-25.956,24.903,24.103,23.793,23.798,23.714,23.361,23.033,23.258,24.312,25.978,27.767,29.339,30.691,31.982,33.263,
-34.415,35.312,35.988,36.588,37.199,37.762,38.156,38.330,38.336,38.237,38.041,37.736,37.354,36.963,36.585,36.141,
-35.529,34.738,33.873,33.049,32.277,31.476,30.626,29.882,29.510,29.671,30.259,30.933,31.354,31.431,31.372,31.523,
-32.097,33.019,33.970,34.600,34.744,34.488,34.072,33.727,33.583,33.656,33.881,34.117,34.156,33.805,33.022,32.011,
-31.139,30.722,30.825,31.244,31.661,31.832,31.663,31.173,30.426,29.512,28.547,27.662,26.945,26.415,26.023,25.689,
-25.339,24.926,24.451,23.963,23.526,23.170,22.852,22.480,21.969,21.285,20.477,19.684,19.109,18.936,19.206,19.739,
-20.233,20.473,20.481,20.446,20.493,20.539,20.388,19.945,19.316,18.693,18.175,17.734,17.313,16.879,16.358,15.595,
-14.494,13.230,12.222,11.762,11.622,11.104,9.604,7.194,4.628,2.731,1.714,1.051,-.004,-1.782,-3.991,-6.034,
--7.484,-8.311,-8.762,-9.117,-9.518,-9.966,-10.398,-10.779,-11.138,-11.544,-12.035,-12.570,-13.028,-13.279,-13.242,-12.911,
--12.350,-11.683,-11.069,-10.652,-10.487,-10.528,-10.704,-10.997,-11.443,-12.046,-12.737,-13.454,-14.272,-15.393,-16.967,-18.914,
--20.942,-22.766,-24.298,-25.616,-26.789,-27.777,-28.515,-29.050,-29.543,-30.112,-30.723,-31.263,-31.706,-32.158,-32.738,-33.433,
--34.128,-34.745,-35.327,-35.945,-36.555,-37.013,-37.241,-37.345,-37.517,-37.822,-38.145,-38.381,-38.655,-39.284,-40.453,-41.935,
--43.205,-43.872,-44.024,-44.133,-44.591,-45.340,-45.928,-45.899,-45.116,-43.745,-42.010,-40.038,-37.918,-35.822,-33.986,-32.548,
--31.460,-30.596,-29.899,-29.400,-29.061,-28.695,-28.099,-27.306,-26.638,-26.467,-26.890,-27.667,-28.459,-29.106,-29.645,-30.104,
--30.353,-30.233,-29.820,-29.503,-29.748,-30.756,-32.347,-34.144,-35.867,-37.464,-39.035,-40.670,-42.382,-44.130,-45.860,-47.510,
--49.007,-50.287,-51.318,-52.101,-52.637,-52.915,-52.942,-52.786,-52.568,-52.409,-52.371,-52.449,-52.604,-52.786,-52.933,-52.946,
--52.705,-52.126,-51.226,-50.143,-49.061,-48.091,-47.194,-46.219,-45.049,-43.734,-42.507,-41.642,-41.288,-41.389,-41.745,-42.133,
--42.395,-42.465,-42.385,-42.316,-42.493,-43.099,-44.106,-45.245,-46.166,-46.664,-46.799,-46.795,-46.837,-46.967,-47.159,-47.456,
--48.023,-49.036,-50.533,-52.348,-54.198,-55.824,-57.093,-57.999,-58.597,-58.938,-59.047,-58.938,-58.638,-58.172,-57.538,-56.703,
--55.666,-54.526,-53.490,-52.771,-52.448,-52.410,-52.426,-52.277,-51.838,-51.090,-50.108,-49.047,-48.114,-47.459,-47.073,-46.801,
--46.486,-46.106,-45.757,-45.474,-45.140,-44.590,-43.831,-43.102,-42.673,-42.594,-42.666,-42.679,-42.641,-42.736,-43.078,-43.543,
--43.893,-44.016,-44.013,-44.029,-44.056,-43.934,-43.553,-42.985,-42.404,-41.888,-41.339,-40.618,-39.724,-38.817,-38.061,-37.457,
--36.844,-36.054,-35.068,-34.036,-33.147,-32.486,-31.986,-31.518,-31.028,-30.575,-30.222,-29.877,-29.278,-28.169,-26.554,-24.748,
--23.178,-22.073,-21.341,-20.702,-19.914,-18.892,-17.676,-16.394,-15.278,-14.634,-14.672,-15.288,-16.041,-16.432,-16.238,-15.615,
--14.858,-14.112,-13.314,-12.369,-11.320,-10.292,-9.331,-8.348,-7.253,-6.092,-5.006,-4.064,-3.175,-2.191,-1.068,.104,
-1.207,2.206,3.138,4.030,4.871,5.659,6.426,7.198,7.945,8.612,9.207,9.823,10.552,11.384,12.209,12.940,
-13.593,14.251,14.952,15.661,16.334,16.981,17.640,18.297,18.875,19.334,19.741,20.241,20.916,21.706,22.469,23.107,
-23.639,24.172,24.816,25.626,26.569,27.505,28.216,28.489,28.258,27.671,27.028,26.613,26.552,26.795,27.192,27.600,
-27.939,28.226,28.553,29.013,29.615,30.248,30.755,31.049,31.164,31.189,31.184,31.174,31.205,31.351,31.644,32.017,
-32.383,32.777,33.380,34.311,35.421,36.333,36.762,36.788,36.771,36.997,37.440,37.904,38.350,38.981,39.966,41.138,
-42.066,42.472,42.508,42.550,42.715,42.655,41.870,40.213,38.027,35.769,33.553,31.091,28.084,24.611,21.155,18.293,
-16.419,15.676,16.021,17.227,18.845,20.308,21.208,21.530,21.581,21.664,21.810,21.824,21.551,21.059,20.552,20.156,
-19.820,19.419,18.908,18.337,17.753,17.130,16.423,15.658,14.930,14.313,13.786,13.268,12.719,12.182,11.724,11.356,
-11.018,10.643,10.210,9.739,9.254,8.766,8.280,7.813,7.378,6.965,6.541,6.082,5.590,5.084,4.578,4.077,
-3.588,3.122,2.679,2.242,1.800,1.379,1.043,.842,.764,.733,.664,.515,.291,.005,-.348,-.771,
--1.235,-1.679,-2.054,-2.361,-2.647,-2.952,-3.273,-3.574,-3.823,-4.023,-4.199,-4.377,-4.573,-4.801,-5.084,-5.443,
--5.875,-6.343,-6.794,-7.196,-7.556,-7.895,-8.215,-8.480,-8.644,-8.703,-8.723,-8.793,-8.963,-9.195,-9.408,-9.551,
--9.643,-9.745,-9.896,-10.103,-10.365,-10.700,-11.118,-11.586,-12.036,-12.420,-12.734,-12.973,-13.062,-12.902,-12.505,-12.099,
--12.015,-12.429,-13.170,-13.820,-14.020,-13.721,-13.164,-12.638,-12.274,-12.033,-11.834,-11.643,-11.466,-11.301,-11.136,-10.981,
--10.867,-10.799,-10.741,-10.662,-10.596,-10.615,-10.746,-10.927,-11.068,-11.156,-11.259,-11.442,-11.677,-11.872,-11.972,-12.013,
--12.062,-12.137,-12.189,-12.176,-12.112,-12.043,-11.999,-11.988,-12.033,-12.168,-12.385,-12.600,-12.714,-12.720,-12.726,-12.832,
--12.999,-13.056,-12.875,-12.523,-12.227,-12.181,-12.379,-12.649,-12.823,-12.865,-12.855,-12.870,-12.923,-12.982,-13.026,-13.055,
--13.069,-13.049,-12.986,-12.908,-12.861,-12.872,-12.915,-12.940,-12.915,-12.850,-12.786,-12.758,-12.772,-12.813,-12.853,-12.867,
--12.849,-12.812,-12.779,-12.769,-12.774,-12.770,-12.738,-12.687,-12.646,-12.631,-12.627,-12.598,-12.526,-12.435,-12.373,-12.379,
--12.458,-12.590,-12.752,-12.932,-13.118,-13.296,-13.455,-13.605,-13.766,-13.937,-14.091,-14.198,-14.260,-14.318,-14.410,-14.531,
--14.645,-14.733,-14.810,-14.901,-14.993,-15.055,-15.085,-15.137,-15.278,-15.503,-15.730,-15.874,-15.932,-15.988,-16.116,-16.319,
--16.537,-16.733,-16.925,-17.145,-17.377,-17.560,-17.655,-17.697,-17.771,-17.934,-18.179,-18.468,-18.774,-19.093,-19.410,-19.682,
--19.862,-19.951,-20.005,-20.100,-20.271,-20.498,-20.732,-20.948,-21.168,-21.435,-21.760,-22.094,-22.350,-22.469,-22.487,-22.523,
--22.697,-23.041,-23.487,-23.932,-24.322,-24.671,-25.018,-25.374,-25.715,-26.013,-26.259,-26.463,-26.637,-26.806,-27.020,-27.327,
--27.734,-28.183,-28.596,-28.943,-29.267,-29.627,-30.026,-30.406,-30.709,-30.940,-31.160,-31.416,-31.706,-31.997,-32.281,-32.582,
--32.920,-33.277,-33.613,-33.905,-34.166,-34.409,-34.626,-34.797,-34.938,-35.104,-35.343,-35.638,-35.920,-36.129,-36.268,-36.391,
--36.540,-36.703,-36.842,-36.938,-37.010,-37.087,-37.177,-37.268,-37.349,-37.435,-37.551,-37.719,-37.941,-38.196,-38.449,-38.655,
--38.780,-38.822,-38.813,-38.796,-38.804,-38.849,-38.933,-39.052,-39.187,-39.304,-39.375,-39.400,-39.410,-39.437,-39.482,-39.531,
--39.577,-39.623,-39.658,-39.648,-39.566,-39.443,-39.352,-39.342,-39.370,-39.343,-39.216,-39.043,-38.920,-38.877,-38.839,-38.708,
--38.464,-38.178,-37.920,-37.679,-37.366,-36.892,-36.227,-35.400,-34.477,-33.554,-32.765,-32.238,-32.029,-32.078,-32.248,-32.407,
--32.476,-32.398,-32.077,-31.374,-30.191,-28.592,-26.869,-25.475,-24.823,-25.053,-25.917,-26.903,-27.536,-27.654,-27.431,-27.155,
--26.980,-26.863,-26.712,-26.527,-26.384,-26.307,-26.213,-26.013,-25.733,-25.483,-25.311,-25.108,-24.709,-24.062,-23.294,-22.601,
--22.117,-21.886,-21.928,-22.240,-22.722,-23.147,-23.280,-23.056,-22.613,-22.149,-21.756,-21.420,-21.145,-20.996,-20.970,-20.902,
--20.579,-19.998,-19.441,-19.204,-19.242,-19.141,-18.532,-17.521,-16.650,-16.392,-16.689,-17.034,-17.010,-16.717,-16.650,-17.184,
--18.207,-19.256,-19.962,-20.340,-20.675,-21.204,-21.931,-22.708,-23.426,-24.084,-24.733,-25.379,-25.976,-26.482,-26.883,-27.183,
--27.393,-27.534,-27.653,-27.807,-28.018,-28.264,-28.498,-28.689,-28.826,-28.921,-28.990,-29.060,-29.165,-29.326,-29.543,-29.792,
--30.046,-30.286,-30.500,-30.677,-30.816,-30.927,-31.017,-31.080,-31.096,-31.059,-30.990,-30.909,-30.797,-30.607,-30.340,-30.093,
--30.018,-30.196,-30.553,-30.906,-31.104,-31.124,-31.037,-30.896,-30.679,-30.347,-29.929,-29.529,-29.250,-29.121,-29.103,-29.168,
--29.322,-29.577,-29.895,-30.206,-30.477,-30.741,-31.049,-31.394,-31.709,-31.947,-32.151,-32.426,-32.795,-33.122,-33.178,-32.847,
--32.268,-31.766,-31.618,-31.840,-32.202,-32.442,-32.476,-32.416,-32.395,-32.411,-32.349,-32.148,-31.904,-31.796,-31.909,-32.166,
--32.437,-32.688,-32.984,-33.337,-33.599,-33.565,-33.196,-32.709,-32.429,-32.526,-32.916,-33.410,-33.919,-34.493,-35.184,-35.935,
--36.631,-37.241,-37.836,-38.444,-38.923,-39.053,-38.790,-38.417,-38.394,-39.000,-40.113,-41.309,-42.194,-42.642,-42.780,-42.785,
--42.731,-42.605,-42.412,-42.229,-42.145,-42.186,-42.291,-42.376,-42.396,-42.358,-42.286,-42.191,-42.082,-41.980,-41.919,-41.911,
--41.923,-41.890,-41.757,-41.520,-41.216,-40.884,-40.536,-40.160,-39.749,-39.312,-38.867,-38.419,-37.958,-37.482,-37.004,-36.534,
--36.068,-35.589,-35.106,-34.662,-34.303,-34.030,-33.782,-33.480,-33.085,-32.624,-32.157,-31.737,-31.396,-31.127,-30.871,-30.520,
--29.970,-29.231,-28.468,-27.916,-27.696,-27.702,-27.669,-27.385,-26.845,-26.207,-25.625,-25.127,-24.643,-24.130,-23.620,-23.170,
--22.777,-22.374,-21.903,-21.374,-20.835,-20.302,-19.737,-19.094,-18.373,-17.616,-16.849,-16.054,-15.191,-14.263,-13.324,-12.449,
--11.670,-10.957,-10.249,-9.497,-8.694,-7.871,-7.070,-6.312,-5.581,-4.838,-4.064,-3.277,-2.527,-1.843,-1.207,-.568,
-.120,.865,1.651,2.460,3.276,4.082,4.860,5.614,6.377,7.183,8.027,8.858,9.629,10.355,11.109,11.959,
-12.907,13.892,14.851,15.771,16.682,17.613,18.563,19.508,20.432,21.335,22.225,23.117,24.025,24.954,25.880,26.750,
-27.514,28.167,28.765,29.395,30.113,30.923,31.789,32.661,33.502,34.293,35.037,35.758,36.474,37.189,37.887,38.571,
-39.281,40.068,40.941,41.844,42.693,43.448,44.131,44.787,45.436,46.079,46.738,47.454,48.230,48.984,49.590,49.991,
-50.256,50.521,50.861,51.230,51.518,51.658,51.672,51.626,51.577,51.567,51.648,51.861,52.186,52.518,52.728,52.765,
-52.697,52.661,52.761,53.008,53.326,53.588,53.676,53.540,53.250,52.987,52.951,53.220,53.669,54.031,54.053,53.643,
-52.907,52.080,51.400,50.980,50.752,50.518,50.109,49.544,49.046,48.870,49.067,49.430,49.666,49.643,49.467,49.304,
-49.172,48.909,48.372,47.630,46.960,46.634,46.719,47.048,47.360,47.466,47.335,47.084,46.899,46.935,47.204,47.554,
-47.768,47.740,47.572,47.502,47.729,48.300,49.129,50.095,51.062,51.838,52.171,51.875,50.973,49.720,48.429,47.279,
-46.270,45.361,44.634,44.298,44.541,45.361,46.526,47.669,48.466,48.791,48.796,48.848,49.317,50.330,51.652,52.827,
-53.493,53.616,53.456,53.308,53.261,53.179,52.873,52.282,51.493,50.635,49.785,48.967,48.208,47.564,47.096,46.841,
-46.813,47.025,47.483,48.150,48.932,49.710,50.390,50.921,51.273,51.392,51.205,50.677,49.873,48.970,48.182,47.652,
-47.371,47.206,47.001,46.694,46.235,45.959,45.697,45.475,45.242,44.950,44.647,44.456,44.456,44.590,44.703,44.671,
-44.511,44.357,44.335,44.443,44.542,44.451,44.087,43.542,43.043,42.813,42.919,43.220,43.467,43.478,43.261,42.968,
-42.751,42.655,42.631,42.640,42.697,42.827,43.000,43.121,43.112,42.974,42.779,42.603,42.474,42.372,42.274,42.171,
-42.077,42.015,41.994,41.986,41.920,41.723,41.368,40.879,40.279,39.567,38.813,38.286,38.398,39.368,40.834,41.840,
-41.384,39.169,35.900,32.818,30.834,30.000,29.720,29.414,28.950,28.543,28.358,28.319,28.259,28.128,27.973,27.743,
-27.235,26.297,25.070,23.923,23.124,22.597,22.065,21.443,21.025,21.254,22.292,23.860,25.490,26.931,28.268,29.702,
-31.255,32.734,33.938,34.856,35.626,36.355,36.999,37.444,37.645,37.663,37.572,37.373,37.017,36.493,35.859,35.184,
-34.466,33.646,32.680,31.596,30.479,29.419,28.504,27.841,27.555,27.719,28.254,28.916,29.386,29.444,29.107,28.656,
-28.515,29.022,30.217,31.770,33.139,33.877,33.884,33.422,32.900,32.602,32.546,32.546,32.362,31.830,30.939,29.855,
-28.885,28.347,28.395,28.912,29.579,30.079,30.258,30.129,29.763,29.209,28.512,27.767,27.104,26.594,26.191,25.777,
-25.272,24.685,24.081,23.513,22.996,22.539,22.157,21.848,21.553,21.161,20.570,19.773,18.907,18.213,17.909,18.042,
-18.438,18.812,18.978,18.985,19.033,19.258,19.577,19.758,19.625,19.179,18.554,17.896,17.319,16.908,16.676,16.470,
-15.984,15.005,13.679,12.484,11.809,11.523,11.017,9.762,7.863,6.037,4.981,4.738,4.637,3.855,2.056,-.427,
--2.919,-4.877,-6.137,-6.862,-7.336,-7.796,-8.342,-8.939,-9.472,-9.842,-10.038,-10.117,-10.146,-10.159,-10.162,-10.165,
--10.183,-10.221,-10.277,-10.358,-10.482,-10.658,-10.874,-11.128,-11.459,-11.913,-12.474,-13.041,-13.530,-13.989,-14.597,-15.511,
--16.742,-18.176,-19.717,-21.359,-23.099,-24.812,-26.276,-27.350,-28.105,-28.740,-29.387,-30.010,-30.517,-30.923,-31.359,-31.916,
--32.541,-33.114,-33.618,-34.170,-34.865,-35.615,-36.211,-36.543,-36.736,-37.022,-37.488,-38.000,-38.386,-38.686,-39.154,-39.981,
--41.053,-42.022,-42.647,-43.038,-43.533,-44.303,-45.098,-45.414,-44.904,-43.638,-41.975,-40.236,-38.518,-36.803,-35.158,-33.747,
--32.662,-31.805,-31.015,-30.273,-29.737,-29.518,-29.467,-29.262,-28.750,-28.170,-27.990,-28.481,-29.454,-30.415,-30.953,-30.981,
--30.646,-30.091,-29.354,-28.469,-27.607,-27.038,-26.978,-27.463,-28.377,-29.562,-30.898,-32.326,-33.845,-35.512,-37.405,-39.538,
--41.784,-43.908,-45.700,-47.098,-48.186,-49.084,-49.836,-50.399,-50.722,-50.815,-50.758,-50.662,-50.618,-50.669,-50.778,-50.827,
--50.645,-50.079,-49.076,-47.730,-46.258,-44.899,-43.799,-42.934,-42.145,-41.280,-40.354,-39.591,-39.287,-39.580,-40.321,-41.157,
--41.753,-41.980,-41.932,-41.815,-41.822,-42.084,-42.651,-43.473,-44.393,-45.200,-45.747,-46.026,-46.144,-46.204,-46.243,-46.273,
--46.380,-46.749,-47.558,-48.840,-50.425,-52.045,-53.488,-54.688,-55.690,-56.549,-57.252,-57.737,-57.961,-57.951,-57.777,-57.489,
--57.078,-56.510,-55.808,-55.088,-54.504,-54.145,-53.970,-53.844,-53.604,-53.121,-52.330,-51.257,-50.054,-48.963,-48.178,-47.709,
--47.384,-47.015,-46.571,-46.162,-45.848,-45.513,-44.977,-44.239,-43.554,-43.210,-43.227,-43.322,-43.201,-42.870,-42.615,-42.690,
--43.047,-43.410,-43.571,-43.569,-43.552,-43.535,-43.344,-42.830,-42.068,-41.309,-40.737,-40.286,-39.744,-38.991,-38.129,-37.367,
--36.792,-36.282,-35.629,-34.751,-33.777,-32.922,-32.296,-31.827,-31.371,-30.882,-30.451,-30.149,-29.851,-29.249,-28.104,-26.494,
--24.801,-23.409,-22.409,-21.585,-20.671,-19.597,-18.469,-17.395,-16.406,-15.557,-15.039,-15.063,-15.599,-16.270,-16.588,-16.314,
--15.600,-14.769,-13.990,-13.195,-12.261,-11.196,-10.117,-9.084,-8.034,-6.880,-5.658,-4.495,-3.478,-2.556,-1.621,-.625,
-.390,1.376,2.340,3.316,4.283,5.173,5.939,6.609,7.249,7.896,8.557,9.243,9.991,10.814,11.664,12.459,
-13.164,13.814,14.461,15.115,15.757,16.394,17.071,17.796,18.500,19.088,19.549,19.990,20.538,21.221,21.955,22.649,
-23.290,23.918,24.559,25.211,25.893,26.657,27.501,28.276,28.724,28.660,28.143,27.454,26.918,26.715,26.832,27.147,
-27.524,27.886,28.231,28.621,29.132,29.779,30.473,31.067,31.457,31.643,31.688,31.666,31.643,31.699,31.909,32.265,
-32.656,32.983,33.298,33.781,34.538,35.419,36.124,36.509,36.770,37.243,38.041,38.923,39.586,40.031,40.567,41.410,
-42.368,42.984,43.028,42.752,42.581,42.577,42.279,41.128,39.027,36.411,33.788,31.241,28.451,25.167,21.613,18.414,
-16.178,15.173,15.320,16.374,18.006,19.786,21.229,22.009,22.151,21.987,21.854,21.847,21.822,21.615,21.221,20.759,
-20.322,19.901,19.440,18.924,18.371,17.783,17.124,16.391,15.654,15.023,14.539,14.128,13.672,13.112,12.498,11.926,
-11.448,11.047,10.667,10.262,9.817,9.336,8.835,8.332,7.842,7.369,6.905,6.444,5.991,5.546,5.101,4.634,
-4.140,3.646,3.186,2.770,2.369,1.954,1.545,1.214,1.026,.986,1.028,1.054,.996,.826,.537,.136,
--.357,-.895,-1.420,-1.891,-2.303,-2.672,-3.015,-3.333,-3.629,-3.912,-4.193,-4.464,-4.707,-4.912,-5.108,-5.349,
--5.678,-6.090,-6.538,-6.962,-7.332,-7.656,-7.954,-8.220,-8.423,-8.536,-8.577,-8.620,-8.739,-8.949,-9.185,-9.363,
--9.455,-9.506,-9.588,-9.725,-9.897,-10.100,-10.371,-10.748,-11.210,-11.692,-12.163,-12.660,-13.192,-13.611,-13.650,-13.148,
--12.299,-11.605,-11.523,-12.101,-12.932,-13.484,-13.495,-13.092,-12.582,-12.184,-11.932,-11.769,-11.648,-11.545,-11.422,-11.239,
--11.013,-10.816,-10.708,-10.671,-10.638,-10.582,-10.552,-10.604,-10.727,-10.857,-10.951,-11.034,-11.158,-11.334,-11.524,-11.697,
--11.856,-12.005,-12.108,-12.119,-12.042,-11.944,-11.894,-11.896,-11.909,-11.927,-12.000,-12.172,-12.397,-12.571,-12.638,-12.651,
--12.699,-12.783,-12.802,-12.676,-12.464,-12.334,-12.408,-12.645,-12.887,-13.004,-12.997,-12.956,-12.960,-13.010,-13.063,-13.089,
--13.088,-13.070,-13.035,-12.988,-12.942,-12.920,-12.925,-12.939,-12.939,-12.913,-12.871,-12.835,-12.824,-12.851,-12.909,-12.976,
--13.021,-13.027,-13.005,-12.987,-13.003,-13.051,-13.100,-13.123,-13.117,-13.111,-13.130,-13.167,-13.190,-13.165,-13.092,-13.009,
--12.961,-12.968,-13.024,-13.113,-13.222,-13.343,-13.460,-13.565,-13.661,-13.772,-13.910,-14.063,-14.204,-14.321,-14.432,-14.557,
--14.687,-14.792,-14.858,-14.908,-14.975,-15.058,-15.123,-15.157,-15.201,-15.313,-15.495,-15.675,-15.778,-15.811,-15.853,-15.979,
--16.184,-16.402,-16.593,-16.779,-16.996,-17.234,-17.434,-17.556,-17.634,-17.740,-17.921,-18.161,-18.428,-18.710,-19.020,-19.348,
--19.643,-19.849,-19.960,-20.030,-20.129,-20.288,-20.495,-20.723,-20.963,-21.227,-21.524,-21.840,-22.126,-22.332,-22.444,-22.507,
--22.610,-22.829,-23.176,-23.597,-24.018,-24.398,-24.737,-25.049,-25.334,-25.580,-25.790,-25.987,-26.193,-26.413,-26.654,-26.939,
--27.305,-27.757,-28.246,-28.694,-29.064,-29.387,-29.721,-30.088,-30.447,-30.748,-30.985,-31.201,-31.438,-31.699,-31.964,-32.233,
--32.539,-32.905,-33.310,-33.688,-33.987,-34.202,-34.371,-34.530,-34.701,-34.899,-35.143,-35.443,-35.772,-36.078,-36.322,-36.513,
--36.683,-36.853,-37.008,-37.118,-37.181,-37.226,-37.285,-37.365,-37.457,-37.558,-37.680,-37.838,-38.033,-38.250,-38.467,-38.663,
--38.814,-38.900,-38.918,-38.895,-38.870,-38.878,-38.934,-39.040,-39.191,-39.362,-39.513,-39.606,-39.639,-39.648,-39.674,-39.726,
--39.781,-39.814,-39.828,-39.831,-39.816,-39.762,-39.676,-39.594,-39.554,-39.543,-39.508,-39.415,-39.289,-39.191,-39.145,-39.108,
--39.006,-38.806,-38.537,-38.252,-37.982,-37.725,-37.450,-37.106,-36.625,-35.948,-35.090,-34.165,-33.354,-32.806,-32.565,-32.566,
--32.691,-32.827,-32.881,-32.762,-32.350,-31.512,-30.179,-28.473,-26.771,-25.605,-25.369,-26.036,-27.129,-28.030,-28.387,-28.283,
--28.038,-27.868,-27.738,-27.508,-27.154,-26.810,-26.617,-26.576,-26.574,-26.509,-26.345,-26.067,-25.644,-25.064,-24.397,-23.754,
--23.192,-22.712,-22.361,-22.295,-22.638,-23.257,-23.734,-23.670,-23.044,-22.241,-21.702,-21.541,-21.541,-21.471,-21.337,-21.279,
--21.308,-21.249,-20.985,-20.654,-20.511,-20.559,-20.438,-19.761,-18.577,-17.413,-16.810,-16.825,-17.033,-17.019,-16.810,-16.802,
--17.291,-18.146,-18.958,-19.462,-19.775,-20.217,-20.967,-21.918,-22.837,-23.602,-24.266,-24.935,-25.634,-26.297,-26.851,-27.270,
--27.567,-27.768,-27.907,-28.036,-28.210,-28.445,-28.699,-28.903,-29.011,-29.025,-28.981,-28.934,-28.944,-29.054,-29.258,-29.494,
--29.679,-29.778,-29.833,-29.930,-30.117,-30.361,-30.573,-30.674,-30.645,-30.530,-30.402,-30.316,-30.280,-30.248,-30.162,-30.006,
--29.843,-29.781,-29.888,-30.136,-30.422,-30.655,-30.807,-30.885,-30.873,-30.719,-30.394,-29.950,-29.507,-29.173,-28.989,-28.940,
--29.006,-29.184,-29.451,-29.752,-30.028,-30.278,-30.549,-30.872,-31.190,-31.404,-31.485,-31.541,-31.731,-32.090,-32.431,-32.476,
--32.102,-31.494,-31.031,-30.991,-31.330,-31.753,-31.983,-31.988,-31.948,-32.019,-32.165,-32.221,-32.104,-31.926,-31.877,-32.030,
--32.285,-32.511,-32.709,-32.978,-33.327,-33.582,-33.524,-33.139,-32.687,-32.503,-32.722,-33.214,-33.776,-34.340,-34.969,-35.701,
--36.455,-37.130,-37.738,-38.370,-39.009,-39.438,-39.420,-39.000,-38.591,-38.698,-39.511,-40.746,-41.888,-42.589,-42.855,-42.909,
--42.930,-42.926,-42.834,-42.659,-42.502,-42.463,-42.548,-42.674,-42.753,-42.750,-42.684,-42.584,-42.471,-42.363,-42.278,-42.227,
--42.198,-42.157,-42.064,-41.895,-41.646,-41.334,-40.981,-40.603,-40.214,-39.815,-39.406,-38.982,-38.541,-38.089,-37.638,-37.201,
--36.781,-36.366,-35.946,-35.524,-35.117,-34.736,-34.368,-33.988,-33.586,-33.177,-32.781,-32.400,-32.017,-31.635,-31.279,-30.958,
--30.620,-30.177,-29.596,-28.978,-28.497,-28.247,-28.134,-27.938,-27.504,-26.873,-26.231,-25.727,-25.353,-24.993,-24.561,-24.077,
--23.613,-23.195,-22.775,-22.292,-21.748,-21.188,-20.643,-20.090,-19.480,-18.786,-18.030,-17.243,-16.437,-15.606,-14.750,-13.896,
--13.083,-12.334,-11.638,-10.949,-10.211,-9.392,-8.512,-7.633,-6.815,-6.063,-5.325,-4.540,-3.706,-2.882,-2.137,-1.487,
--.882,-.252,.443,1.204,2.016,2.856,3.698,4.511,5.288,6.058,6.861,7.703,8.545,9.344,10.106,10.888,
-11.747,12.684,13.654,14.608,15.538,16.459,17.379,18.289,19.182,20.068,20.963,21.864,22.761,23.651,24.544,25.439,
-26.302,27.087,27.791,28.468,29.197,30.010,30.873,31.721,32.518,33.272,34.011,34.761,35.521,36.281,37.020,37.728,
-38.422,39.150,39.956,40.835,41.722,42.534,43.243,43.892,44.543,45.221,45.907,46.587,47.267,47.947,48.577,49.081,
-49.432,49.690,49.950,50.242,50.505,50.653,50.669,50.611,50.550,50.513,50.499,50.526,50.636,50.845,51.105,51.337,
-51.495,51.598,51.700,51.837,52.014,52.217,52.409,52.525,52.492,52.301,52.062,51.954,52.101,52.446,52.760,52.770,
-52.320,51.468,50.469,49.641,49.196,49.103,49.115,48.959,48.569,48.153,48.001,48.204,48.556,48.737,48.606,48.292,
-48.016,47.841,47.624,47.209,46.624,46.080,45.778,45.746,45.844,45.908,45.863,45.743,45.647,45.693,45.964,46.439,
-46.954,47.288,47.328,47.192,47.169,47.527,48.343,49.494,50.747,51.846,52.546,52.667,52.187,51.280,50.219,49.177,
-48.142,47.054,46.044,45.496,45.799,46.995,48.638,50.028,50.640,50.407,49.695,49.036,48.848,49.264,50.132,51.110,
-51.849,52.165,52.120,51.936,51.801,51.731,51.579,51.183,50.500,49.626,48.717,47.914,47.313,46.974,46.901,47.029,
-47.245,47.458,47.667,47.952,48.400,49.019,49.720,50.367,50.842,51.073,51.015,50.641,49.950,49.024,48.041,47.224,
-46.726,46.539,46.504,46.432,46.235,46.031,45.912,45.831,45.768,45.633,45.387,45.126,45.030,45.203,45.566,45.907,
-46.056,46.024,45.972,46.050,46.250,46.397,46.283,45.832,45.181,44.610,44.362,44.483,44.792,45.008,44.952,44.645,
-44.249,43.916,43.687,43.520,43.381,43.274,43.205,43.144,43.041,42.887,42.724,42.593,42.481,42.337,42.138,41.911,
-41.706,41.551,41.440,41.357,41.281,41.165,40.946,40.594,40.139,39.639,39.113,38.589,38.218,38.298,39.029,40.171,
-40.954,40.497,38.485,35.498,32.650,30.801,30.023,29.755,29.413,28.849,28.296,27.998,27.964,28.047,28.130,28.149,
-27.973,27.389,26.281,24.811,23.350,22.158,21.183,20.204,19.182,18.426,18.370,19.172,20.568,22.119,23.584,25.042,
-26.685,28.533,30.384,32.004,33.318,34.402,35.328,36.061,36.521,36.698,36.679,36.555,36.327,35.922,35.289,34.464,
-33.533,32.547,31.464,30.190,28.674,27.006,25.446,24.350,24.014,24.486,25.502,26.594,27.320,27.457,27.045,26.306,
-25.559,25.178,25.515,26.733,28.626,30.634,32.117,32.734,32.608,32.142,31.673,31.250,30.703,29.871,28.768,27.584,
-26.586,26.017,26.012,26.526,27.323,28.076,28.548,28.702,28.645,28.474,28.188,27.751,27.203,26.665,26.221,25.826,
-25.359,24.765,24.115,23.524,23.029,22.569,22.080,21.582,21.150,20.796,20.416,19.856,19.057,18.140,17.359,16.945,
-16.956,17.241,17.549,17.719,17.788,17.919,18.226,18.641,18.963,19.018,18.763,18.278,17.689,17.139,16.763,16.613,
-16.542,16.225,15.401,14.158,12.920,12.085,11.625,11.093,10.071,8.635,7.334,6.689,6.703,6.835,6.430,5.173,
-3.210,.944,-1.234,-3.076,-4.498,-5.558,-6.399,-7.152,-7.821,-8.279,-8.402,-8.200,-7.832,-7.492,-7.301,-7.295,
--7.482,-7.872,-8.452,-9.159,-9.901,-10.592,-11.181,-11.652,-12.029,-12.378,-12.760,-13.185,-13.592,-13.917,-14.168,-14.436,
--14.821,-15.388,-16.198,-17.351,-18.933,-20.879,-22.916,-24.708,-26.072,-27.081,-27.918,-28.678,-29.320,-29.794,-30.166,-30.572,
--31.057,-31.534,-31.910,-32.241,-32.701,-33.391,-34.207,-34.936,-35.473,-35.919,-36.447,-37.094,-37.717,-38.159,-38.430,-38.703,
--39.116,-39.638,-40.130,-40.562,-41.096,-41.918,-42.955,-43.785,-43.887,-43.026,-41.417,-39.535,-37.750,-36.167,-34.750,-33.536,
--32.646,-32.104,-31.720,-31.245,-30.657,-30.210,-30.158,-30.423,-30.616,-30.431,-30.012,-29.871,-30.394,-31.432,-32.375,-32.642,
--32.094,-31.027,-29.820,-28.631,-27.404,-26.092,-24.832,-23.905,-23.562,-23.872,-24.701,-25.796,-26.936,-28.068,-29.340,-30.993,
--33.145,-35.638,-38.092,-40.144,-41.677,-42.860,-43.974,-45.180,-46.407,-47.420,-47.979,-47.994,-47.577,-46.983,-46.469,-46.151,
--45.949,-45.654,-45.072,-44.140,-42.954,-41.706,-40.600,-39.775,-39.250,-38.921,-38.634,-38.317,-38.063,-38.074,-38.472,-39.153,
--39.830,-40.250,-40.375,-40.387,-40.510,-40.839,-41.332,-41.904,-42.511,-43.137,-43.740,-44.248,-44.620,-44.873,-45.060,-45.212,
--45.350,-45.533,-45.887,-46.533,-47.481,-48.607,-49.725,-50.723,-51.622,-52.513,-53.451,-54.393,-55.228,-55.862,-56.268,-56.485,
--56.558,-56.495,-56.282,-55.925,-55.483,-55.050,-54.700,-54.447,-54.245,-54.005,-53.607,-52.933,-51.928,-50.681,-49.430,-48.435,
--47.804,-47.434,-47.138,-46.824,-46.529,-46.285,-45.989,-45.484,-44.770,-44.090,-43.732,-43.736,-43.829,-43.704,-43.346,-43.047,
--43.086,-43.431,-43.773,-43.853,-43.685,-43.457,-43.241,-42.887,-42.215,-41.272,-40.344,-39.694,-39.308,-38.931,-38.338,-37.559,
--36.821,-36.296,-35.916,-35.450,-34.734,-33.833,-32.965,-32.286,-31.771,-31.291,-30.794,-30.354,-30.029,-29.690,-29.049,-27.915,
--26.413,-24.913,-23.705,-22.752,-21.779,-20.595,-19.292,-18.123,-17.220,-16.509,-15.902,-15.495,-15.496,-15.930,-16.483,-16.700,
--16.349,-15.575,-14.692,-13.872,-13.047,-12.085,-10.976,-9.822,-8.688,-7.532,-6.292,-5.006,-3.793,-2.735,-1.806,-.929,
--.073,.749,1.548,2.396,3.358,4.408,5.428,6.303,7.004,7.589,8.151,8.773,9.504,10.334,11.193,11.984,
-12.659,13.259,13.862,14.498,15.132,15.737,16.355,17.059,17.842,18.596,19.217,19.726,20.256,20.901,21.618,22.296,
-22.900,23.512,24.214,24.970,25.661,26.244,26.818,27.494,28.212,28.722,28.783,28.376,27.730,27.153,26.846,26.841,
-27.062,27.407,27.784,28.148,28.522,28.992,29.624,30.388,31.155,31.777,32.165,32.311,32.273,32.171,32.159,32.353,
-32.726,33.116,33.385,33.591,33.957,34.632,35.502,36.298,36.900,37.490,38.342,39.467,40.542,41.232,41.547,41.816,
-42.275,42.787,43.002,42.802,42.456,42.276,42.154,41.534,39.910,37.319,34.294,31.330,28.469,25.418,22.066,18.793,
-16.276,15.001,14.992,15.920,17.391,19.077,20.672,21.865,22.462,22.523,22.323,22.136,22.042,21.943,21.725,21.370,
-20.939,20.473,19.969,19.422,18.861,18.310,17.748,17.121,16.424,15.729,15.138,14.685,14.303,13.883,13.363,12.768,
-12.168,11.623,11.153,10.737,10.336,9.913,9.447,8.944,8.423,7.896,7.366,6.838,6.339,5.900,5.524,5.167,
-4.768,4.302,3.806,3.337,2.924,2.545,2.167,1.799,1.495,1.319,1.286,1.350,1.425,1.426,1.292,.994,
-.545,-.009,-.601,-1.178,-1.713,-2.202,-2.643,-3.028,-3.361,-3.669,-3.987,-4.328,-4.662,-4.945,-5.162,-5.351,
--5.576,-5.881,-6.257,-6.657,-7.034,-7.367,-7.663,-7.927,-8.150,-8.315,-8.419,-8.494,-8.596,-8.763,-8.974,-9.165,
--9.280,-9.329,-9.381,-9.486,-9.625,-9.746,-9.849,-10.023,-10.359,-10.842,-11.354,-11.809,-12.249,-12.756,-13.256,-13.462,
--13.098,-12.221,-11.303,-10.912,-11.267,-12.076,-12.806,-13.097,-12.957,-12.612,-12.252,-11.938,-11.680,-11.514,-11.452,-11.419,
--11.290,-11.029,-10.740,-10.577,-10.580,-10.651,-10.669,-10.611,-10.554,-10.567,-10.645,-10.732,-10.798,-10.860,-10.955,-11.104,
--11.313,-11.570,-11.821,-11.982,-11.994,-11.886,-11.766,-11.722,-11.747,-11.763,-11.738,-11.738,-11.856,-12.103,-12.376,-12.562,
--12.627,-12.616,-12.573,-12.499,-12.394,-12.314,-12.345,-12.523,-12.777,-12.989,-13.089,-13.103,-13.097,-13.113,-13.141,-13.156,
--13.148,-13.124,-13.092,-13.055,-13.021,-12.998,-12.991,-12.993,-12.994,-12.997,-13.006,-13.024,-13.041,-13.053,-13.071,-13.105,
--13.155,-13.204,-13.236,-13.260,-13.298,-13.370,-13.469,-13.569,-13.642,-13.679,-13.693,-13.702,-13.714,-13.718,-13.690,-13.623,
--13.532,-13.443,-13.378,-13.339,-13.327,-13.347,-13.405,-13.489,-13.574,-13.646,-13.718,-13.820,-13.962,-14.123,-14.274,-14.410,
--14.540,-14.665,-14.766,-14.828,-14.872,-14.939,-15.039,-15.142,-15.216,-15.269,-15.342,-15.455,-15.572,-15.648,-15.684,-15.738,
--15.858,-16.036,-16.222,-16.394,-16.577,-16.800,-17.045,-17.252,-17.392,-17.500,-17.641,-17.845,-18.090,-18.348,-18.625,-18.946,
--19.302,-19.638,-19.893,-20.056,-20.170,-20.288,-20.432,-20.601,-20.794,-21.025,-21.305,-21.611,-21.896,-22.116,-22.259,-22.357,
--22.473,-22.663,-22.950,-23.308,-23.685,-24.038,-24.356,-24.653,-24.937,-25.194,-25.412,-25.598,-25.784,-26.000,-26.253,-26.538,
--26.866,-27.264,-27.741,-28.262,-28.755,-29.170,-29.515,-29.835,-30.162,-30.486,-30.773,-31.012,-31.230,-31.460,-31.710,-31.968,
--32.232,-32.528,-32.883,-33.282,-33.658,-33.942,-34.116,-34.226,-34.348,-34.536,-34.804,-35.129,-35.472,-35.796,-36.078,-36.316,
--36.530,-36.737,-36.931,-37.088,-37.188,-37.243,-37.285,-37.340,-37.419,-37.523,-37.663,-37.852,-38.086,-38.330,-38.545,-38.708,
--38.825,-38.904,-38.946,-38.949,-38.931,-38.921,-38.947,-39.021,-39.142,-39.304,-39.487,-39.653,-39.765,-39.813,-39.829,-39.857,
--39.905,-39.946,-39.951,-39.923,-39.897,-39.892,-39.894,-39.873,-39.825,-39.771,-39.728,-39.687,-39.631,-39.557,-39.484,-39.418,
--39.342,-39.220,-39.034,-38.787,-38.504,-38.224,-37.990,-37.832,-37.727,-37.570,-37.211,-36.541,-35.585,-34.510,-33.560,-32.937,
--32.712,-32.799,-33.010,-33.160,-33.143,-32.914,-32.403,-31.480,-30.073,-28.371,-26.863,-26.101,-26.303,-27.168,-28.098,-28.651,
--28.792,-28.758,-28.702,-28.540,-28.120,-27.484,-26.905,-26.666,-26.817,-27.155,-27.391,-27.317,-26.872,-26.132,-25.282,-24.540,
--24.013,-23.617,-23.186,-22.722,-22.474,-22.698,-23.289,-23.739,-23.539,-22.678,-21.677,-21.101,-21.052,-21.169,-21.098,-20.877,
--20.814,-21.057,-21.399,-21.526,-21.386,-21.194,-21.088,-20.887,-20.287,-19.269,-18.218,-17.577,-17.419,-17.424,-17.283,-17.053,
--17.062,-17.507,-18.202,-18.787,-19.117,-19.412,-20.005,-20.987,-22.132,-23.133,-23.884,-24.506,-25.166,-25.899,-26.607,-27.183,
--27.595,-27.875,-28.067,-28.206,-28.336,-28.500,-28.705,-28.913,-29.056,-29.093,-29.028,-28.909,-28.804,-28.786,-28.898,-29.114,
--29.338,-29.460,-29.453,-29.411,-29.479,-29.719,-30.049,-30.302,-30.357,-30.226,-30.022,-29.863,-29.799,-29.810,-29.844,-29.862,
--29.849,-29.820,-29.804,-29.827,-29.900,-30.017,-30.166,-30.326,-30.463,-30.520,-30.443,-30.222,-29.908,-29.583,-29.310,-29.114,
--29.004,-29.001,-29.127,-29.361,-29.640,-29.906,-30.151,-30.407,-30.676,-30.893,-30.985,-30.978,-31.018,-31.249,-31.643,-31.961,
--31.926,-31.478,-30.873,-30.508,-30.612,-31.082,-31.591,-31.886,-31.965,-32.003,-32.119,-32.247,-32.246,-32.106,-31.997,-32.113,
--32.465,-32.876,-33.167,-33.325,-33.450,-33.569,-33.559,-33.294,-32.857,-32.539,-32.607,-33.068,-33.698,-34.283,-34.803,-35.369,
--36.034,-36.726,-37.371,-38.015,-38.733,-39.432,-39.818,-39.661,-39.108,-38.683,-38.904,-39.855,-41.132,-42.186,-42.748,-42.933,
--43.006,-43.100,-43.166,-43.126,-43.010,-42.934,-42.964,-43.055,-43.108,-43.071,-42.971,-42.863,-42.777,-42.709,-42.646,-42.579,
--42.502,-42.405,-42.281,-42.131,-41.953,-41.731,-41.446,-41.094,-40.698,-40.296,-39.904,-39.509,-39.087,-38.632,-38.164,-37.719,
--37.317,-36.957,-36.619,-36.286,-35.950,-35.605,-35.237,-34.827,-34.374,-33.917,-33.509,-33.171,-32.860,-32.495,-32.034,-31.525,
--31.065,-30.704,-30.400,-30.066,-29.662,-29.230,-28.832,-28.460,-28.035,-27.505,-26.915,-26.383,-25.989,-25.696,-25.391,-24.998,
--24.533,-24.065,-23.633,-23.208,-22.735,-22.198,-21.621,-21.037,-20.450,-19.829,-19.148,-18.401,-17.610,-16.812,-16.030,-15.268,
--14.508,-13.737,-12.969,-12.236,-11.551,-10.871,-10.124,-9.270,-8.352,-7.462,-6.653,-5.890,-5.092,-4.222,-3.330,-2.508,
--1.798,-1.162,-.529,.150,.880,1.654,2.471,3.325,4.188,5.024,5.821,6.602,7.397,8.213,9.037,9.861,
-10.699,11.569,12.468,13.378,14.286,15.192,16.095,16.981,17.840,18.689,19.564,20.484,21.426,22.343,23.216,24.064,
-24.913,25.750,26.544,27.296,28.061,28.898,29.808,30.720,31.554,32.293,32.989,33.704,34.465,35.252,36.034,36.795,
-37.538,38.278,39.044,39.856,40.704,41.536,42.298,42.981,43.636,44.322,45.044,45.752,46.399,46.978,47.512,48.004,
-48.428,48.762,49.030,49.266,49.475,49.614,49.653,49.628,49.615,49.659,49.733,49.778,49.777,49.778,49.846,50.003,
-50.221,50.457,50.675,50.846,50.951,51.004,51.050,51.132,51.229,51.265,51.191,51.064,51.024,51.176,51.476,51.728,
-51.693,51.229,50.374,49.344,48.444,47.912,47.772,47.814,47.752,47.463,47.097,46.924,47.060,47.328,47.424,47.195,
-46.763,46.364,46.103,45.882,45.558,45.121,44.703,44.430,44.309,44.252,44.193,44.134,44.121,44.196,44.407,44.804,
-45.382,46.023,46.529,46.783,46.879,47.088,47.669,48.679,49.941,51.151,52.010,52.323,52.063,51.405,50.652,50.049,
-49.594,49.076,48.360,47.668,47.527,48.345,49.962,51.622,52.444,52.036,50.731,49.303,48.427,48.319,48.759,49.367,
-49.864,50.161,50.297,50.343,50.339,50.271,50.093,49.755,49.237,48.562,47.795,47.034,46.415,46.077,46.106,46.464,
-46.982,47.451,47.745,47.891,48.024,48.273,48.664,49.124,49.544,49.836,49.956,49.868,49.540,48.961,48.189,47.373,
-46.701,46.300,46.161,46.153,46.128,46.031,46.090,46.243,46.477,46.710,46.816,46.740,46.572,46.487,46.598,46.858,
-47.097,47.178,47.105,47.001,46.978,47.027,47.023,46.824,46.395,45.854,45.405,45.205,45.253,45.390,45.416,45.241,
-44.931,44.624,44.402,44.236,44.050,43.817,43.567,43.335,43.115,42.891,42.678,42.510,42.377,42.198,41.897,41.494,
-41.105,40.848,40.740,40.711,40.685,40.623,40.498,40.270,39.916,39.477,39.041,38.658,38.325,38.087,38.113,38.572,
-39.341,39.861,39.410,37.660,35.029,32.450,30.712,29.948,29.697,29.409,28.896,28.344,28.011,27.970,28.112,28.274,
-28.305,28.026,27.252,25.938,24.286,22.641,21.214,19.935,18.594,17.170,15.968,15.419,15.729,16.732,18.080,19.561,
-21.207,23.138,25.323,27.546,29.555,31.234,32.612,33.735,34.584,35.105,35.305,35.276,35.118,34.843,34.382,33.667,
-32.718,31.629,30.470,29.189,27.616,25.610,23.277,21.074,19.672,19.578,20.757,22.561,24.087,24.705,24.371,23.497,
-22.572,21.895,21.622,21.937,23.051,24.971,27.308,29.406,30.733,31.178,30.995,30.474,29.708,28.650,27.332,25.980,
-24.902,24.314,24.265,24.678,25.404,26.236,26.942,27.372,27.539,27.573,27.572,27.502,27.268,26.852,26.356,25.887,
-25.440,24.933,24.342,23.762,23.305,22.961,22.592,22.087,21.482,20.914,20.450,19.990,19.353,18.460,17.440,16.555,
-16.031,15.921,16.095,16.354,16.559,16.707,16.886,17.157,17.477,17.731,17.825,17.743,17.526,17.226,16.902,16.633,
-16.471,16.335,16.003,15.275,14.194,13.073,12.238,11.718,11.219,10.429,9.338,8.258,7.527,7.222,7.139,6.987,
-6.537,5.646,4.230,2.324,.153,-1.931,-3.650,-4.943,-5.893,-6.542,-6.820,-6.670,-6.213,-5.737,-5.506,-5.598,
--5.923,-6.376,-6.940,-7.655,-8.531,-9.502,-10.460,-11.305,-11.984,-12.488,-12.857,-13.159,-13.448,-13.742,-14.031,-14.298,
--14.532,-14.741,-14.992,-15.442,-16.305,-17.708,-19.550,-21.523,-23.305,-24.760,-25.956,-26.997,-27.882,-28.540,-28.972,-29.305,
--29.673,-30.081,-30.426,-30.656,-30.874,-31.249,-31.850,-32.583,-33.308,-33.979,-34.650,-35.362,-36.060,-36.638,-37.053,-37.353,
--37.588,-37.735,-37.737,-37.639,-37.667,-38.114,-39.095,-40.351,-41.322,-41.454,-40.542,-38.837,-36.834,-34.945,-33.338,-32.043,
--31.127,-30.706,-30.760,-31.013,-31.097,-30.885,-30.606,-30.598,-30.911,-31.229,-31.224,-30.969,-30.923,-31.468,-32.450,-33.226,
--33.188,-32.250,-30.830,-29.417,-28.154,-26.848,-25.303,-23.630,-22.227,-21.508,-21.623,-22.385,-23.409,-24.353,-25.116,-25.885,
--26.993,-28.665,-30.815,-33.071,-35.011,-36.445,-37.529,-38.615,-39.969,-41.555,-43.027,-43.926,-43.957,-43.166,-41.923,-40.705,
--39.834,-39.348,-39.072,-38.805,-38.454,-38.045,-37.643,-37.308,-37.092,-37.038,-37.138,-37.307,-37.435,-37.492,-37.562,-37.753,
--38.067,-38.382,-38.583,-38.705,-38.913,-39.346,-39.972,-40.627,-41.171,-41.602,-42.007,-42.442,-42.876,-43.243,-43.533,-43.789,
--44.052,-44.322,-44.602,-44.937,-45.399,-46.005,-46.688,-47.341,-47.915,-48.462,-49.083,-49.848,-50.749,-51.707,-52.618,-53.389,
--53.952,-54.276,-54.374,-54.291,-54.091,-53.838,-53.590,-53.392,-53.269,-53.219,-53.190,-53.063,-52.670,-51.872,-50.675,-49.287,
--48.036,-47.176,-46.755,-46.636,-46.649,-46.693,-46.697,-46.537,-46.078,-45.326,-44.516,-43.959,-43.777,-43.794,-43.739,-43.545,
--43.412,-43.560,-43.942,-44.250,-44.210,-43.832,-43.347,-42.911,-42.431,-41.709,-40.717,-39.694,-38.927,-38.479,-38.143,-37.676,
--37.046,-36.439,-36.032,-35.777,-35.434,-34.804,-33.918,-33.004,-32.267,-31.723,-31.250,-30.756,-30.270,-29.843,-29.393,-28.716,
--27.683,-26.407,-25.167,-24.135,-23.204,-22.121,-20.783,-19.372,-18.175,-17.306,-16.654,-16.102,-15.730,-15.728,-16.113,-16.587,
--16.732,-16.349,-15.574,-14.687,-13.833,-12.949,-11.926,-10.764,-9.544,-8.316,-7.050,-5.725,-4.405,-3.202,-2.166,-1.255,
--.404,.394,1.116,1.789,2.519,3.409,4.464,5.572,6.583,7.398,8.022,8.551,9.119,9.823,10.649,11.473,
-12.161,12.690,13.167,13.722,14.377,15.057,15.704,16.359,17.098,17.905,18.662,19.281,19.824,20.441,21.196,21.979,
-22.645,23.194,23.774,24.501,25.307,26.011,26.540,27.021,27.620,28.317,28.860,28.976,28.608,27.958,27.326,26.933,
-26.852,27.046,27.411,27.819,28.180,28.509,28.928,29.569,30.438,31.387,32.199,32.707,32.865,32.754,32.556,32.490,
-32.688,33.086,33.465,33.664,33.779,34.107,34.864,35.950,37.040,37.921,38.685,39.566,40.604,41.553,42.132,42.324,
-42.362,42.423,42.435,42.236,41.866,41.580,41.495,41.282,40.321,38.232,35.231,31.925,28.768,25.750,22.641,19.481,
-16.761,15.106,14.803,15.627,17.065,18.655,20.115,21.286,22.055,22.396,22.425,22.338,22.267,22.205,22.067,21.809,
-21.462,21.067,20.618,20.088,19.492,18.893,18.337,17.804,17.233,16.598,15.943,15.339,14.821,14.363,13.909,13.419,
-12.884,12.321,11.768,11.262,10.819,10.415,10.003,9.542,9.033,8.495,7.942,7.373,6.801,6.271,5.834,5.496,
-5.198,4.858,4.441,3.975,3.519,3.107,2.731,2.375,2.049,1.792,1.641,1.604,1.650,1.719,1.730,1.605,
-1.295,.809,.210,-.416,-1.012,-1.567,-2.088,-2.579,-3.022,-3.409,-3.754,-4.087,-4.422,-4.743,-5.025,-5.265,
--5.497,-5.760,-6.068,-6.401,-6.729,-7.040,-7.333,-7.608,-7.855,-8.061,-8.228,-8.374,-8.523,-8.698,-8.896,-9.089,
--9.234,-9.313,-9.353,-9.412,-9.518,-9.627,-9.678,-9.681,-9.759,-10.037,-10.512,-11.037,-11.477,-11.862,-12.327,-12.886,
--13.288,-13.185,-12.498,-11.592,-11.040,-11.163,-11.794,-12.472,-12.835,-12.835,-12.623,-12.320,-11.956,-11.576,-11.301,-11.225,
--11.271,-11.238,-11.001,-10.663,-10.452,-10.492,-10.683,-10.817,-10.783,-10.644,-10.532,-10.514,-10.560,-10.609,-10.641,-10.683,
--10.779,-10.958,-11.212,-11.482,-11.678,-11.735,-11.674,-11.594,-11.575,-11.606,-11.606,-11.542,-11.488,-11.565,-11.815,-12.148,
--12.419,-12.532,-12.494,-12.367,-12.216,-12.101,-12.072,-12.164,-12.356,-12.584,-12.784,-12.934,-13.050,-13.145,-13.209,-13.230,
--13.216,-13.192,-13.168,-13.137,-13.095,-13.057,-13.046,-13.067,-13.101,-13.136,-13.176,-13.233,-13.301,-13.358,-13.387,-13.394,
--13.395,-13.401,-13.415,-13.445,-13.506,-13.605,-13.726,-13.844,-13.938,-13.999,-14.024,-14.009,-13.955,-13.877,-13.796,-13.723,
--13.657,-13.589,-13.516,-13.441,-13.371,-13.320,-13.316,-13.378,-13.494,-13.617,-13.707,-13.770,-13.850,-13.978,-14.139,-14.287,
--14.399,-14.494,-14.596,-14.701,-14.783,-14.840,-14.904,-15.005,-15.132,-15.245,-15.319,-15.371,-15.434,-15.511,-15.584,-15.650,
--15.730,-15.849,-15.999,-16.155,-16.312,-16.491,-16.708,-16.936,-17.125,-17.260,-17.386,-17.557,-17.790,-18.051,-18.315,-18.596,
--18.922,-19.290,-19.644,-19.931,-20.137,-20.297,-20.444,-20.589,-20.731,-20.885,-21.083,-21.333,-21.603,-21.834,-21.989,-22.084,
--22.183,-22.354,-22.633,-22.995,-23.377,-23.714,-23.985,-24.219,-24.460,-24.729,-25.006,-25.255,-25.463,-25.650,-25.855,-26.101,
--26.396,-26.748,-27.166,-27.651,-28.175,-28.684,-29.131,-29.507,-29.840,-30.160,-30.470,-30.748,-30.983,-31.194,-31.415,-31.666,
--31.941,-32.222,-32.513,-32.833,-33.183,-33.522,-33.787,-33.949,-34.048,-34.169,-34.382,-34.696,-35.060,-35.408,-35.700,-35.939,
--36.152,-36.365,-36.583,-36.785,-36.946,-37.056,-37.132,-37.201,-37.284,-37.386,-37.519,-37.706,-37.962,-38.263,-38.551,-38.764,
--38.882,-38.930,-38.947,-38.952,-38.949,-38.949,-38.973,-39.040,-39.149,-39.289,-39.448,-39.618,-39.775,-39.889,-39.945,-39.963,
--39.980,-40.011,-40.034,-40.024,-39.988,-39.967,-39.990,-40.040,-40.072,-40.057,-40.007,-39.956,-39.924,-39.902,-39.870,-39.813,
--39.726,-39.602,-39.436,-39.226,-38.971,-38.675,-38.362,-38.085,-37.913,-37.869,-37.875,-37.749,-37.290,-36.407,-35.207,-33.976,
--33.057,-32.664,-32.764,-33.103,-33.386,-33.462,-33.339,-33.033,-32.421,-31.321,-29.753,-28.114,-27.000,-26.787,-27.336,-28.142,
--28.760,-29.093,-29.271,-29.343,-29.150,-28.543,-27.660,-26.922,-26.718,-27.093,-27.729,-28.184,-28.150,-27.566,-26.595,-25.546,
--24.725,-24.251,-23.974,-23.632,-23.161,-22.812,-22.895,-23.358,-23.708,-23.430,-22.505,-21.463,-20.869,-20.793,-20.823,-20.593,
--20.207,-20.093,-20.485,-21.141,-21.597,-21.630,-21.388,-21.105,-20.793,-20.294,-19.580,-18.876,-18.437,-18.254,-18.079,-17.750,
--17.424,-17.420,-17.850,-18.467,-18.929,-19.165,-19.459,-20.140,-21.241,-22.472,-23.504,-24.246,-24.851,-25.498,-26.214,-26.892,
--27.430,-27.819,-28.110,-28.345,-28.536,-28.692,-28.834,-28.967,-29.065,-29.082,-29.000,-28.845,-28.678,-28.569,-28.580,-28.728,
--28.965,-29.175,-29.254,-29.202,-29.148,-29.254,-29.559,-29.928,-30.154,-30.121,-29.891,-29.630,-29.468,-29.424,-29.449,-29.498,
--29.568,-29.662,-29.752,-29.796,-29.778,-29.728,-29.699,-29.727,-29.806,-29.895,-29.950,-29.944,-29.878,-29.769,-29.636,-29.483,
--29.317,-29.167,-29.085,-29.116,-29.268,-29.499,-29.759,-30.019,-30.265,-30.467,-30.578,-30.592,-30.590,-30.702,-30.992,-31.346,
--31.525,-31.348,-30.878,-30.415,-30.289,-30.612,-31.208,-31.774,-32.125,-32.286,-32.381,-32.455,-32.439,-32.281,-32.094,-32.113,
--32.487,-33.125,-33.751,-34.128,-34.210,-34.085,-33.813,-33.378,-32.813,-32.330,-32.227,-32.644,-33.422,-34.231,-34.848,-35.305,
--35.757,-36.284,-36.850,-37.436,-38.121,-38.948,-39.740,-40.138,-39.931,-39.348,-38.966,-39.271,-40.257,-41.466,-42.396,-42.874,
--43.072,-43.220,-43.379,-43.465,-43.435,-43.371,-43.389,-43.494,-43.574,-43.522,-43.340,-43.122,-42.962,-42.879,-42.841,-42.806,
--42.752,-42.661,-42.528,-42.360,-42.182,-42.006,-41.808,-41.546,-41.204,-40.813,-40.422,-40.050,-39.670,-39.247,-38.776,-38.297,
--37.860,-37.495,-37.193,-36.925,-36.661,-36.381,-36.076,-35.731,-35.334,-34.890,-34.434,-34.019,-33.671,-33.347,-32.955,-32.431,
--31.815,-31.245,-30.849,-30.634,-30.478,-30.221,-29.787,-29.218,-28.615,-28.055,-27.563,-27.137,-26.779,-26.478,-26.199,-25.886,
--25.500,-25.046,-24.566,-24.099,-23.649,-23.188,-22.680,-22.107,-21.482,-20.830,-20.168,-19.486,-18.764,-18.002,-17.237,-16.516,
--15.843,-15.154,-14.375,-13.506,-12.638,-11.880,-11.243,-10.621,-9.889,-9.016,-8.083,-7.189,-6.352,-5.511,-4.623,-3.729,
--2.914,-2.216,-1.587,-.943,-.243,.497,1.257,2.052,2.912,3.831,4.752,5.613,6.401,7.155,7.929,8.752,
-9.615,10.498,11.377,12.240,13.089,13.937,14.796,15.660,16.511,17.345,18.196,19.106,20.084,21.079,22.022,22.886,
-23.699,24.501,25.297,26.068,26.821,27.608,28.480,29.419,30.344,31.181,31.930,32.655,33.410,34.193,34.973,35.736,
-36.504,37.300,38.125,38.958,39.785,40.598,41.378,42.103,42.772,43.424,44.103,44.810,45.493,46.090,46.586,47.015,
-47.410,47.766,48.064,48.295,48.472,48.601,48.681,48.721,48.765,48.865,49.027,49.188,49.272,49.254,49.189,49.161,
-49.224,49.385,49.608,49.839,50.016,50.095,50.091,50.069,50.091,50.146,50.165,50.100,50.002,49.993,50.152,50.428,
-50.657,50.666,50.356,49.739,48.929,48.118,47.500,47.165,47.019,46.858,46.546,46.154,45.886,45.861,45.972,45.973,
-45.715,45.269,44.824,44.487,44.211,43.898,43.535,43.206,42.985,42.865,42.796,42.763,42.795,42.919,43.135,43.453,
-43.914,44.539,45.245,45.869,46.311,46.650,47.113,47.885,48.945,50.063,50.926,51.294,51.091,50.442,49.650,49.075,
-48.912,49.050,49.166,49.058,48.901,49.140,50.039,51.293,52.122,51.837,50.393,48.461,46.939,46.346,46.569,47.121,
-47.579,47.854,48.100,48.454,48.856,49.091,48.967,48.469,47.753,47.017,46.372,45.812,45.306,44.903,44.728,44.878,
-45.304,45.820,46.238,46.505,46.721,47.015,47.419,47.844,48.171,48.357,48.439,48.468,48.434,48.268,47.913,47.393,
-46.823,46.349,46.063,45.961,45.966,46.011,46.090,46.557,46.899,47.299,47.668,47.906,47.967,47.894,47.779,47.693,
-47.631,47.535,47.357,47.100,46.808,46.516,46.231,45.941,45.641,45.344,45.086,44.908,44.821,44.788,44.726,44.570,
-44.336,44.124,44.025,44.036,44.051,43.960,43.746,43.475,43.212,42.966,42.713,42.452,42.198,41.929,41.572,41.087,
-40.548,40.121,39.930,39.948,40.042,40.092,40.061,39.952,39.739,39.385,38.921,38.450,38.064,37.774,37.574,37.543,
-37.815,38.355,38.780,38.495,37.131,34.903,32.534,30.751,29.813,29.445,29.200,28.842,28.447,28.205,28.193,28.324,
-28.429,28.327,27.851,26.889,25.467,23.792,22.134,20.633,19.203,17.670,16.017,14.486,13.435,13.083,13.402,14.239,
-15.508,17.237,19.437,21.958,24.502,26.782,28.674,30.206,31.444,32.388,32.997,33.261,33.247,33.044,32.683,32.121,
-31.305,30.263,29.099,27.897,26.577,24.885,22.573,19.724,16.936,15.137,15.030,16.543,18.746,20.400,20.749,19.944,
-18.766,17.954,17.746,17.992,18.582,19.673,21.461,23.808,26.175,27.955,28.863,29.007,28.624,27.851,26.745,25.462,
-24.313,23.587,23.366,23.534,23.946,24.538,25.268,26.013,26.597,26.929,27.065,27.111,27.087,26.921,26.572,26.107,
-25.629,25.163,24.664,24.119,23.616,23.240,22.950,22.590,22.048,21.386,20.766,20.254,19.730,19.002,18.008,16.899,
-15.935,15.301,15.021,14.993,15.080,15.189,15.288,15.390,15.511,15.643,15.760,15.854,15.947,16.057,16.165,16.222,
-16.201,16.100,15.888,15.473,14.772,13.836,12.881,12.136,11.644,11.227,10.651,9.818,8.809,7.782,6.885,6.249,
-5.976,6.011,6.042,5.598,4.376,2.499,.440,-1.336,-2.653,-3.584,-4.210,-4.497,-4.429,-4.182,-4.093,-4.413,
--5.106,-5.918,-6.618,-7.175,-7.724,-8.403,-9.242,-10.157,-11.028,-11.753,-12.282,-12.626,-12.852,-13.059,-13.329,-13.697,
--14.129,-14.545,-14.876,-15.153,-15.542,-16.258,-17.406,-18.881,-20.441,-21.902,-23.242,-24.528,-25.744,-26.756,-27.450,-27.876,
--28.212,-28.587,-28.971,-29.261,-29.443,-29.627,-29.923,-30.334,-30.794,-31.285,-31.859,-32.526,-33.181,-33.686,-34.035,-34.364,
--34.776,-35.165,-35.268,-34.935,-34.360,-34.018,-34.352,-35.444,-36.918,-38.133,-38.515,-37.838,-36.294,-34.329,-32.383,-30.725,
--29.485,-28.784,-28.735,-29.295,-30.132,-30.765,-30.912,-30.701,-30.509,-30.558,-30.716,-30.730,-30.607,-30.679,-31.233,-32.103,
--32.700,-32.505,-31.518,-30.209,-29.032,-28.019,-26.846,-25.263,-23.431,-21.859,-21.043,-21.138,-21.913,-22.943,-23.853,-24.480,
--24.920,-25.443,-26.327,-27.668,-29.305,-30.910,-32.220,-33.220,-34.139,-35.252,-36.628,-38.016,-38.957,-39.066,-38.286,-36.946,
--35.565,-34.553,-34.042,-33.924,-34.039,-34.301,-34.684,-35.139,-35.569,-35.911,-36.186,-36.463,-36.767,-37.041,-37.222,-37.324,
--37.421,-37.564,-37.728,-37.876,-38.049,-38.356,-38.860,-39.483,-40.063,-40.498,-40.831,-41.172,-41.570,-41.968,-42.293,-42.545,
--42.792,-43.080,-43.382,-43.652,-43.899,-44.189,-44.566,-44.995,-45.393,-45.709,-45.973,-46.271,-46.690,-47.284,-48.062,-48.963,
--49.850,-50.550,-50.941,-51.021,-50.896,-50.700,-50.525,-50.411,-50.378,-50.450,-50.638,-50.896,-51.095,-51.045,-50.562,-49.586,
--48.265,-46.926,-45.925,-45.459,-45.491,-45.829,-46.260,-46.600,-46.677,-46.345,-45.596,-44.643,-43.830,-43.393,-43.293,-43.311,
--43.308,-43.353,-43.583,-43.960,-44.218,-44.096,-43.586,-42.929,-42.353,-41.846,-41.213,-40.332,-39.320,-38.432,-37.816,-37.400,
--37.015,-36.593,-36.218,-35.976,-35.795,-35.460,-34.807,-33.890,-32.950,-32.209,-31.694,-31.262,-30.771,-30.205,-29.631,-29.058,
--28.399,-27.574,-26.622,-25.667,-24.761,-23.799,-22.626,-21.236,-19.819,-18.594,-17.623,-16.832,-16.187,-15.809,-15.844,-16.229,
--16.640,-16.710,-16.301,-15.553,-14.688,-13.802,-12.850,-11.777,-10.607,-9.391,-8.130,-6.792,-5.401,-4.073,-2.916,-1.940,
--1.057,-.193,.642,1.396,2.067,2.739,3.515,4.438,5.461,6.478,7.377,8.099,8.677,9.233,9.893,10.674,
-11.456,12.095,12.569,13.011,13.573,14.280,15.036,15.758,16.468,17.229,18.021,18.739,19.329,19.886,20.563,21.391,
-22.226,22.910,23.462,24.049,24.786,25.586,26.268,26.778,27.267,27.908,28.655,29.226,29.329,28.910,28.184,27.479,
-27.047,26.988,27.267,27.741,28.227,28.598,28.887,29.269,29.915,30.829,31.821,32.629,33.077,33.150,32.974,32.768,
-32.753,33.024,33.465,33.827,33.963,34.025,34.376,35.264,36.566,37.883,38.900,39.629,40.300,41.052,41.784,42.301,
-42.528,42.520,42.313,41.863,41.198,40.549,40.195,40.099,39.762,38.535,36.157,32.974,29.615,26.467,23.492,20.545,
-17.784,15.724,14.860,15.275,16.591,18.249,19.804,21.023,21.819,22.199,22.273,22.230,22.223,22.268,22.259,22.105,
-21.820,21.486,21.145,20.759,20.275,19.702,19.108,18.546,18.005,17.443,16.842,16.221,15.613,15.028,14.466,13.924,
-13.400,12.875,12.331,11.781,11.271,10.836,10.458,10.071,9.622,9.108,8.560,7.996,7.411,6.813,6.253,5.793,
-5.449,5.168,4.876,4.533,4.152,3.761,3.371,2.980,2.603,2.278,2.043,1.907,1.851,1.845,1.856,1.830,
-1.695,1.389,.901,.286,-.362,-.973,-1.531,-2.053,-2.559,-3.043,-3.482,-3.861,-4.186,-4.475,-4.746,-5.014,
--5.294,-5.594,-5.907,-6.213,-6.493,-6.755,-7.024,-7.313,-7.604,-7.862,-8.074,-8.262,-8.462,-8.688,-8.921,-9.134,
--9.312,-9.450,-9.547,-9.608,-9.650,-9.689,-9.715,-9.702,-9.665,-9.694,-9.895,-10.282,-10.749,-11.179,-11.588,-12.088,
--12.686,-13.137,-13.092,-12.449,-11.556,-10.997,-11.121,-11.765,-12.441,-12.771,-12.723,-12.490,-12.205,-11.864,-11.463,-11.125,
--11.000,-11.069,-11.122,-10.969,-10.652,-10.412,-10.437,-10.674,-10.897,-10.928,-10.779,-10.589,-10.470,-10.438,-10.450,-10.477,
--10.523,-10.604,-10.732,-10.905,-11.103,-11.278,-11.385,-11.419,-11.425,-11.448,-11.477,-11.464,-11.393,-11.333,-11.383,-11.581,
--11.860,-12.101,-12.221,-12.208,-12.107,-11.975,-11.867,-11.833,-11.894,-12.038,-12.224,-12.428,-12.642,-12.858,-13.040,-13.150,
--13.184,-13.184,-13.188,-13.197,-13.183,-13.140,-13.101,-13.110,-13.173,-13.261,-13.340,-13.407,-13.467,-13.523,-13.565,-13.590,
--13.605,-13.610,-13.599,-13.577,-13.578,-13.639,-13.760,-13.893,-13.984,-14.020,-14.024,-14.011,-13.962,-13.852,-13.690,-13.523,
--13.402,-13.339,-13.311,-13.292,-13.269,-13.246,-13.239,-13.279,-13.386,-13.548,-13.708,-13.815,-13.875,-13.945,-14.075,-14.244,
--14.387,-14.468,-14.519,-14.599,-14.718,-14.835,-14.910,-14.957,-15.026,-15.137,-15.260,-15.350,-15.403,-15.449,-15.515,-15.600,
--15.690,-15.785,-15.897,-16.028,-16.172,-16.329,-16.509,-16.710,-16.904,-17.059,-17.180,-17.313,-17.508,-17.765,-18.047,-18.324,
--18.607,-18.923,-19.266,-19.594,-19.864,-20.071,-20.246,-20.415,-20.584,-20.746,-20.909,-21.094,-21.306,-21.521,-21.698,-21.817,
--21.904,-22.023,-22.239,-22.570,-22.974,-23.366,-23.674,-23.885,-24.053,-24.251,-24.514,-24.819,-25.107,-25.338,-25.517,-25.689,
--25.908,-26.209,-26.599,-27.061,-27.564,-28.071,-28.546,-28.970,-29.343,-29.685,-30.015,-30.333,-30.620,-30.856,-31.056,-31.262,
--31.513,-31.808,-32.118,-32.414,-32.699,-32.991,-33.284,-33.540,-33.729,-33.870,-34.030,-34.269,-34.588,-34.932,-35.240,-35.487,
--35.693,-35.894,-36.110,-36.334,-36.544,-36.721,-36.861,-36.977,-37.087,-37.206,-37.342,-37.511,-37.737,-38.032,-38.365,-38.668,
--38.876,-38.969,-38.981,-38.965,-38.954,-38.957,-38.985,-39.053,-39.172,-39.327,-39.490,-39.643,-39.782,-39.905,-39.996,-40.042,
--40.051,-40.053,-40.068,-40.089,-40.098,-40.098,-40.117,-40.174,-40.247,-40.293,-40.288,-40.248,-40.212,-40.199,-40.198,-40.184,
--40.135,-40.041,-39.894,-39.693,-39.446,-39.158,-38.834,-38.481,-38.140,-37.885,-37.779,-37.796,-37.781,-37.503,-36.788,-35.656,
--34.367,-33.309,-32.786,-32.829,-33.196,-33.560,-33.736,-33.732,-33.578,-33.147,-32.212,-30.739,-29.090,-27.879,-27.525,-27.938,
--28.649,-29.229,-29.583,-29.816,-29.930,-29.718,-29.028,-28.048,-27.268,-27.106,-27.566,-28.259,-28.700,-28.606,-27.972,-26.993,
--25.957,-25.132,-24.633,-24.342,-24.025,-23.597,-23.253,-23.270,-23.632,-23.925,-23.680,-22.846,-21.860,-21.219,-21.001,-20.859,
--20.487,-20.000,-19.816,-20.179,-20.882,-21.464,-21.634,-21.444,-21.101,-20.707,-20.247,-19.751,-19.349,-19.120,-18.943,-18.613,
--18.112,-17.710,-17.736,-18.232,-18.892,-19.365,-19.603,-19.891,-20.545,-21.594,-22.781,-23.817,-24.619,-25.299,-25.974,-26.643,
--27.219,-27.655,-27.993,-28.303,-28.611,-28.886,-29.097,-29.233,-29.293,-29.260,-29.111,-28.859,-28.569,-28.333,-28.231,-28.302,
--28.527,-28.815,-29.042,-29.117,-29.070,-29.049,-29.209,-29.562,-29.944,-30.134,-30.036,-29.742,-29.435,-29.237,-29.150,-29.122,
--29.134,-29.209,-29.347,-29.490,-29.559,-29.526,-29.436,-29.358,-29.328,-29.337,-29.365,-29.403,-29.451,-29.497,-29.515,-29.487,
--29.415,-29.318,-29.227,-29.166,-29.159,-29.225,-29.370,-29.583,-29.829,-30.052,-30.197,-30.248,-30.255,-30.317,-30.504,-30.776,
--30.979,-30.960,-30.705,-30.390,-30.276,-30.513,-31.032,-31.608,-32.039,-32.274,-32.394,-32.472,-32.491,-32.392,-32.210,-32.125,
--32.348,-32.930,-33.687,-34.317,-34.606,-34.527,-34.162,-33.591,-32.887,-32.215,-31.857,-32.062,-32.829,-33.868,-34.806,-35.454,
--35.880,-36.251,-36.652,-37.085,-37.600,-38.303,-39.200,-40.043,-40.449,-40.250,-39.731,-39.459,-39.838,-40.787,-41.864,-42.667,
--43.121,-43.398,-43.648,-43.845,-43.898,-43.824,-43.764,-43.826,-43.964,-44.022,-43.899,-43.633,-43.349,-43.139,-43.010,-42.931,
--42.876,-42.831,-42.772,-42.665,-42.504,-42.310,-42.109,-41.893,-41.632,-41.314,-40.965,-40.619,-40.276,-39.901,-39.463,-38.975,
--38.492,-38.071,-37.741,-37.488,-37.276,-37.060,-36.810,-36.517,-36.186,-35.822,-35.421,-34.982,-34.526,-34.090,-33.677,-33.243,
--32.721,-32.111,-31.513,-31.067,-30.830,-30.705,-30.503,-30.090,-29.489,-28.848,-28.318,-27.945,-27.667,-27.397,-27.095,-26.772,
--26.443,-26.090,-25.671,-25.169,-24.618,-24.078,-23.580,-23.090,-22.546,-21.915,-21.229,-20.543,-19.873,-19.186,-18.453,-17.708,
--17.022,-16.415,-15.790,-15.007,-14.019,-12.950,-12.002,-11.284,-10.717,-10.117,-9.363,-8.480,-7.565,-6.672,-5.785,-4.890,
--4.041,-3.321,-2.744,-2.219,-1.622,-.899,-.093,.730,1.561,2.443,3.398,4.383,5.316,6.150,6.911,7.667,
-8.470,9.328,10.214,11.090,11.937,12.759,13.574,14.401,15.245,16.096,16.959,17.860,18.823,19.839,20.847,21.785,
-22.635,23.433,24.222,25.006,25.767,26.508,27.278,28.117,29.011,29.896,30.726,31.520,32.325,33.152,33.960,34.711,
-35.432,36.195,37.043,37.948,38.840,39.678,40.467,41.223,41.938,42.592,43.198,43.801,44.430,45.062,45.639,46.119,
-46.510,46.839,47.116,47.331,47.483,47.596,47.703,47.822,47.958,48.116,48.298,48.486,48.635,48.706,48.699,48.657,
-48.633,48.658,48.740,48.870,49.024,49.160,49.241,49.265,49.274,49.305,49.331,49.283,49.130,48.940,48.847,48.930,
-49.147,49.368,49.471,49.390,49.106,48.631,48.026,47.416,46.924,46.576,46.267,45.880,45.412,44.995,44.753,44.668,
-44.587,44.376,44.029,43.640,43.278,42.936,42.584,42.246,41.990,41.859,41.833,41.870,41.960,42.123,42.367,42.682,
-43.080,43.599,44.252,44.960,45.590,46.085,46.541,47.135,47.952,48.874,49.641,50.006,49.855,49.244,48.372,47.548,
-47.077,47.099,47.481,47.913,48.184,48.371,48.730,49.334,49.849,49.705,48.582,46.758,44.983,43.958,43.873,44.381,
-44.966,45.368,45.694,46.185,46.899,47.587,47.858,47.478,46.545,45.426,44.501,43.928,43.618,43.397,43.201,43.112,
-43.224,43.505,43.808,44.039,44.274,44.700,45.410,46.273,47.018,47.442,47.564,47.559,47.579,47.628,47.595,47.384,
-47.017,46.610,46.289,46.115,46.082,46.153,46.309,46.557,47.460,47.686,47.872,48.008,48.107,48.174,48.189,48.105,
-47.887,47.543,47.127,46.697,46.268,45.802,45.255,44.644,44.068,43.648,43.440,43.402,43.444,43.487,43.490,43.439,
-43.335,43.213,43.142,43.176,43.291,43.384,43.362,43.219,43.029,42.853,42.676,42.433,42.088,41.658,41.165,40.616,
-40.039,39.531,39.228,39.188,39.322,39.467,39.520,39.488,39.411,39.263,38.966,38.502,37.965,37.486,37.124,36.878,
-36.779,36.930,37.350,37.790,37.763,36.859,35.089,32.940,31.055,29.814,29.179,28.860,28.620,28.420,28.334,28.392,
-28.503,28.502,28.227,27.573,26.515,25.130,23.579,22.023,20.530,19.044,17.473,15.814,14.199,12.827,11.851,11.360,
-11.431,12.182,13.709,15.956,18.650,21.396,23.861,25.904,27.551,28.876,29.894,30.566,30.870,30.843,30.555,30.042,
-29.289,28.281,27.081,25.827,24.622,23.377,21.774,19.471,16.483,13.425,11.329,11.014,12.443,14.606,16.137,16.240,
-15.178,13.939,13.399,13.741,14.589,15.597,16.829,18.579,20.881,23.305,25.241,26.348,26.707,26.586,26.167,25.512,
-24.730,24.030,23.581,23.364,23.257,23.250,23.514,24.208,25.229,26.223,26.857,27.057,26.980,26.795,26.542,26.191,
-25.755,25.304,24.876,24.442,23.978,23.527,23.138,22.770,22.302,21.673,20.976,20.362,19.864,19.331,18.577,17.574,
-16.489,15.537,14.827,14.337,13.996,13.754,13.581,13.448,13.335,13.250,13.224,13.284,13.440,13.704,14.078,14.534,
-14.988,15.333,15.477,15.364,14.971,14.314,13.489,12.664,11.993,11.513,11.123,10.666,10.020,9.123,7.972,6.674,
-5.497,4.777,4.661,4.901,4.962,4.423,3.303,1.997,.894,.080,-.603,-1.271,-1.862,-2.279,-2.609,-3.114,
--3.983,-5.126,-6.242,-7.073,-7.606,-8.032,-8.560,-9.269,-10.088,-10.877,-11.512,-11.934,-12.170,-12.312,-12.482,-12.776,
--13.229,-13.795,-14.368,-14.858,-15.265,-15.708,-16.340,-17.217,-18.251,-19.315,-20.387,-21.560,-22.887,-24.239,-25.374,-26.152,
--26.659,-27.097,-27.561,-27.979,-28.253,-28.399,-28.517,-28.647,-28.733,-28.756,-28.833,-29.111,-29.555,-29.939,-30.089,-30.117,
--30.333,-30.871,-31.461,-31.635,-31.195,-30.466,-30.092,-30.551,-31.830,-33.468,-34.844,-35.461,-35.111,-33.898,-32.165,-30.337,
--28.764,-27.671,-27.212,-27.480,-28.397,-29.596,-30.525,-30.793,-30.462,-29.959,-29.676,-29.655,-29.691,-29.691,-29.835,-30.327,
--31.038,-31.496,-31.295,-30.489,-29.518,-28.742,-28.082,-27.136,-25.646,-23.818,-22.198,-21.270,-21.173,-21.711,-22.557,-23.422,
--24.098,-24.487,-24.653,-24.826,-25.302,-26.231,-27.501,-28.806,-29.875,-30.656,-31.323,-32.080,-32.950,-33.718,-34.082,-33.892,
--33.279,-32.575,-32.089,-31.943,-32.083,-32.413,-32.900,-33.546,-34.294,-35.011,-35.564,-35.925,-36.170,-36.390,-36.615,-36.832,
--37.038,-37.262,-37.518,-37.772,-37.987,-38.180,-38.426,-38.773,-39.180,-39.564,-39.890,-40.210,-40.588,-41.008,-41.382,-41.650,
--41.855,-42.087,-42.375,-42.657,-42.868,-43.031,-43.236,-43.541,-43.899,-44.204,-44.393,-44.483,-44.546,-44.661,-44.909,-45.354,
--46.000,-46.726,-47.327,-47.632,-47.623,-47.424,-47.191,-47.008,-46.890,-46.856,-46.953,-47.215,-47.599,-47.974,-48.161,-47.998,
--47.401,-46.435,-45.332,-44.416,-43.953,-44.014,-44.476,-45.116,-45.708,-46.040,-45.930,-45.316,-44.352,-43.384,-42.742,-42.518,
--42.555,-42.659,-42.786,-43.012,-43.336,-43.564,-43.454,-42.951,-42.258,-41.640,-41.175,-40.705,-40.034,-39.140,-38.195,-37.404,
--36.851,-36.492,-36.262,-36.130,-36.057,-35.924,-35.559,-34.868,-33.942,-33.015,-32.288,-31.783,-31.353,-30.833,-30.181,-29.481,
--28.832,-28.252,-27.684,-27.058,-26.324,-25.431,-24.329,-23.025,-21.623,-20.282,-19.097,-18.060,-17.143,-16.427,-16.074,-16.157,
--16.510,-16.788,-16.707,-16.221,-15.473,-14.615,-13.689,-12.677,-11.595,-10.488,-9.357,-8.128,-6.754,-5.313,-3.975,-2.860,
--1.937,-1.078,-.191,.709,1.553,2.302,2.976,3.626,4.307,5.066,5.920,6.823,7.676,8.407,9.048,9.709,
-10.452,11.218,11.888,12.429,12.944,13.565,14.319,15.119,15.883,16.621,17.380,18.145,18.838,19.431,20.019,20.725,
-21.553,22.365,23.044,23.636,24.296,25.093,25.911,26.579,27.087,27.606,28.291,29.056,29.600,29.645,29.168,28.411,
-27.716,27.347,27.408,27.840,28.457,29.031,29.418,29.674,30.003,30.585,31.407,32.264,32.916,33.238,33.266,33.145,
-33.064,33.181,33.535,33.991,34.320,34.416,34.452,34.788,35.649,36.908,38.177,39.151,39.826,40.410,41.061,41.746,
-42.320,42.666,42.695,42.302,41.430,40.242,39.141,38.481,38.186,37.689,36.336,33.916,30.788,27.528,24.471,21.625,
-18.972,16.759,15.427,15.265,16.163,17.684,19.348,20.821,21.916,22.543,22.715,22.588,22.400,22.310,22.298,22.232,
-22.024,21.717,21.404,21.115,20.797,20.391,19.899,19.363,18.808,18.223,17.604,16.980,16.385,15.812,15.227,14.615,
-13.999,13.410,12.843,12.272,11.705,11.193,10.779,10.438,10.088,9.664,9.164,8.625,8.067,7.480,6.869,6.286,
-5.801,5.439,5.163,4.911,4.649,4.372,4.069,3.715,3.303,2.878,2.514,2.262,2.109,2.007,1.913,1.814,
-1.698,1.527,1.240,.798,.221,-.417,-1.033,-1.582,-2.074,-2.541,-3.003,-3.446,-3.837,-4.163,-4.439,-4.705,
--4.997,-5.324,-5.664,-5.980,-6.247,-6.473,-6.705,-6.992,-7.340,-7.696,-7.995,-8.219,-8.417,-8.650,-8.923,-9.185,
--9.391,-9.546,-9.688,-9.823,-9.910,-9.915,-9.854,-9.788,-9.760,-9.774,-9.834,-9.970,-10.215,-10.555,-10.955,-11.411,
--11.933,-12.420,-12.595,-12.162,-11.138,-10.017,-9.494,-9.933,-11.053,-12.159,-12.702,-12.640,-12.298,-11.964,-11.671,-11.336,
--10.991,-10.790,-10.809,-10.915,-10.891,-10.684,-10.458,-10.415,-10.584,-10.803,-10.888,-10.793,-10.599,-10.413,-10.288,-10.238,
--10.263,-10.354,-10.477,-10.594,-10.693,-10.797,-10.922,-11.056,-11.171,-11.251,-11.300,-11.318,-11.297,-11.251,-11.223,-11.259,
--11.366,-11.504,-11.627,-11.716,-11.772,-11.788,-11.753,-11.683,-11.631,-11.658,-11.783,-11.985,-12.229,-12.486,-12.728,-12.917,
--13.027,-13.075,-13.110,-13.160,-13.209,-13.219,-13.192,-13.176,-13.218,-13.316,-13.427,-13.511,-13.560,-13.582,-13.581,-13.567,
--13.566,-13.594,-13.637,-13.650,-13.619,-13.589,-13.623,-13.732,-13.850,-13.902,-13.883,-13.845,-13.821,-13.783,-13.673,-13.487,
--13.286,-13.144,-13.084,-13.080,-13.099,-13.131,-13.176,-13.241,-13.332,-13.462,-13.619,-13.761,-13.846,-13.887,-13.951,-14.093,
--14.287,-14.447,-14.521,-14.549,-14.615,-14.747,-14.892,-14.983,-15.019,-15.060,-15.148,-15.268,-15.369,-15.433,-15.488,-15.564,
--15.660,-15.754,-15.839,-15.930,-16.044,-16.185,-16.345,-16.519,-16.697,-16.859,-16.990,-17.103,-17.242,-17.444,-17.708,-17.999,
--18.290,-18.581,-18.885,-19.197,-19.486,-19.723,-19.910,-20.075,-20.248,-20.441,-20.651,-20.867,-21.079,-21.277,-21.453,-21.601,
--21.724,-21.843,-21.997,-22.228,-22.553,-22.937,-23.305,-23.589,-23.782,-23.940,-24.137,-24.407,-24.721,-25.017,-25.249,-25.415,
--25.566,-25.772,-26.091,-26.533,-27.055,-27.586,-28.065,-28.470,-28.814,-29.125,-29.433,-29.752,-30.076,-30.380,-30.634,-30.842,
--31.042,-31.286,-31.587,-31.911,-32.213,-32.479,-32.732,-32.991,-33.245,-33.472,-33.674,-33.890,-34.151,-34.448,-34.736,-34.981,
--35.186,-35.384,-35.597,-35.829,-36.067,-36.299,-36.516,-36.707,-36.868,-37.007,-37.143,-37.299,-37.497,-37.751,-38.061,-38.395,
--38.694,-38.897,-38.986,-38.994,-38.979,-38.981,-39.013,-39.080,-39.194,-39.357,-39.547,-39.725,-39.865,-39.966,-40.038,-40.086,
--40.105,-40.101,-40.096,-40.111,-40.146,-40.188,-40.235,-40.296,-40.375,-40.448,-40.485,-40.480,-40.458,-40.449,-40.457,-40.464,
--40.449,-40.402,-40.315,-40.171,-39.959,-39.685,-39.373,-39.039,-38.686,-38.333,-38.036,-37.872,-37.859,-37.897,-37.777,-37.289,
--36.380,-35.221,-34.145,-33.458,-33.256,-33.399,-33.658,-33.893,-34.083,-34.175,-33.949,-33.128,-31.684,-30.030,-28.822,-28.491,
--28.918,-29.592,-30.074,-30.299,-30.432,-30.510,-30.329,-29.706,-28.793,-28.052,-27.872,-28.232,-28.741,-28.970,-28.738,-28.122,
--27.302,-26.451,-25.705,-25.136,-24.706,-24.290,-23.840,-23.498,-23.479,-23.797,-24.138,-24.084,-23.496,-22.642,-21.926,-21.502,
--21.204,-20.823,-20.402,-20.194,-20.373,-20.831,-21.276,-21.487,-21.433,-21.195,-20.841,-20.428,-20.048,-19.791,-19.618,-19.353,
--18.862,-18.259,-17.888,-18.039,-18.673,-19.443,-20.005,-20.310,-20.602,-21.150,-22.012,-23.030,-24.016,-24.902,-25.714,-26.465,
--27.098,-27.554,-27.852,-28.089,-28.356,-28.670,-28.983,-29.237,-29.397,-29.445,-29.354,-29.110,-28.748,-28.359,-28.060,-27.939,
--28.024,-28.274,-28.587,-28.843,-28.966,-28.988,-29.042,-29.258,-29.635,-30.019,-30.213,-30.134,-29.862,-29.550,-29.298,-29.120,
--29.003,-28.965,-29.031,-29.167,-29.279,-29.289,-29.200,-29.087,-29.018,-28.996,-28.993,-29.002,-29.044,-29.119,-29.184,-29.181,
--29.111,-29.041,-29.038,-29.108,-29.190,-29.230,-29.238,-29.275,-29.388,-29.557,-29.708,-29.782,-29.797,-29.837,-29.983,-30.223,
--30.442,-30.510,-30.401,-30.254,-30.276,-30.585,-31.102,-31.604,-31.896,-31.948,-31.886,-31.858,-31.908,-31.977,-32.014,-32.072,
--32.282,-32.720,-33.311,-33.852,-34.152,-34.141,-33.868,-33.407,-32.823,-32.212,-31.777,-31.772,-32.332,-33.334,-34.450,-35.371,
--35.995,-36.418,-36.770,-37.107,-37.463,-37.934,-38.634,-39.517,-40.296,-40.621,-40.416,-40.010,-39.912,-40.397,-41.313,-42.267,
--42.979,-43.455,-43.844,-44.204,-44.446,-44.486,-44.385,-44.307,-44.346,-44.436,-44.433,-44.264,-43.984,-43.695,-43.453,-43.260,
--43.114,-43.033,-43.021,-43.025,-42.972,-42.819,-42.587,-42.324,-42.056,-41.778,-41.487,-41.187,-40.878,-40.537,-40.130,-39.656,
--39.151,-38.673,-38.269,-37.951,-37.712,-37.520,-37.332,-37.103,-36.823,-36.510,-36.189,-35.849,-35.448,-34.966,-34.441,-33.938,
--33.477,-33.010,-32.478,-31.899,-31.382,-31.026,-30.816,-30.618,-30.299,-29.843,-29.358,-28.966,-28.682,-28.417,-28.079,-27.670,
--27.275,-26.963,-26.698,-26.361,-25.859,-25.214,-24.547,-23.959,-23.449,-22.928,-22.324,-21.654,-20.984,-20.343,-19.682,-18.949,
--18.176,-17.472,-16.900,-16.362,-15.655,-14.648,-13.428,-12.245,-11.314,-10.651,-10.101,-9.497,-8.784,-7.999,-7.177,-6.314,
--5.421,-4.580,-3.897,-3.391,-2.944,-2.384,-1.621,-.706,.245,1.159,2.053,2.974,3.928,4.870,5.750,6.565,
-7.351,8.149,8.979,9.834,10.692,11.538,12.365,13.186,14.022,14.890,15.793,16.728,17.691,18.679,19.669,20.624,
-21.511,22.336,23.135,23.942,24.754,25.546,26.318,27.099,27.918,28.761,29.593,30.399,31.211,32.062,32.927,33.739,
-34.466,35.158,35.914,36.777,37.694,38.576,39.383,40.150,40.912,41.651,42.310,42.873,43.396,43.953,44.555,45.139,
-45.627,45.988,46.242,46.421,46.545,46.634,46.723,46.853,47.043,47.273,47.501,47.695,47.837,47.930,47.995,48.057,
-48.132,48.208,48.258,48.272,48.277,48.311,48.380,48.453,48.502,48.528,48.549,48.544,48.453,48.245,47.976,47.774,
-47.737,47.854,48.025,48.146,48.161,48.044,47.774,47.355,46.854,46.378,45.988,45.640,45.233,44.727,44.200,43.780,
-43.523,43.370,43.214,42.992,42.705,42.378,42.029,41.687,41.409,41.255,41.244,41.345,41.516,41.742,42.026,42.364,
-42.751,43.211,43.776,44.436,45.105,45.682,46.162,46.655,47.277,48.000,48.631,48.932,48.779,48.212,47.383,46.493,
-45.761,45.377,45.409,45.730,46.101,46.359,46.534,46.743,46.962,46.923,46.321,45.137,43.760,42.746,42.426,42.696,
-43.175,43.554,43.815,44.162,44.757,45.506,46.075,46.091,45.405,44.217,42.963,42.057,41.645,41.584,41.622,41.633,
-41.669,41.820,42.061,42.271,42.412,42.651,43.242,44.274,45.523,46.596,47.230,47.463,47.540,47.653,47.794,47.826,
-47.663,47.360,47.063,46.882,46.838,46.900,47.036,47.231,47.460,48.470,48.356,48.111,47.837,47.673,47.681,47.774,
-47.766,47.514,47.014,46.399,45.814,45.302,44.780,44.142,43.385,42.635,42.056,41.726,41.601,41.593,41.660,41.813,
-42.046,42.296,42.479,42.566,42.599,42.621,42.627,42.584,42.488,42.380,42.282,42.145,41.878,41.427,40.824,40.157,
-39.513,38.970,38.607,38.482,38.569,38.740,38.849,38.844,38.791,38.762,38.721,38.542,38.146,37.593,37.034,36.579,
-36.255,36.072,36.093,36.362,36.745,36.891,36.407,35.156,33.384,31.577,30.151,29.245,28.750,28.490,28.371,28.377,
-28.478,28.565,28.476,28.081,27.339,26.301,25.060,23.704,22.283,20.812,19.293,17.737,16.176,14.644,13.168,11.798,
-10.658,9.980,10.044,11.042,12.943,15.474,18.235,20.868,23.166,25.063,26.562,27.661,28.356,28.657,28.600,28.218,
-27.514,26.479,25.150,23.660,22.206,20.924,19.733,18.308,16.279,13.591,10.759,8.713,8.240,9.361,11.195,12.496,
-12.518,11.506,10.402,10.051,10.623,11.729,13.001,14.496,16.515,19.096,21.783,23.918,25.147,25.612,25.688,25.625,
-25.446,25.117,24.676,24.179,23.609,22.971,22.471,22.501,23.324,24.755,26.201,27.083,27.239,26.924,26.489,26.093,
-25.702,25.269,24.831,24.444,24.100,23.749,23.365,22.946,22.459,21.845,21.109,20.367,19.748,19.247,18.700,17.953,
-17.016,16.045,15.180,14.436,13.746,13.087,12.494,12.001,11.585,11.224,10.954,10.854,10.960,11.229,11.602,12.074,
-12.675,13.384,14.076,14.571,14.733,14.525,14.018,13.344,12.650,12.034,11.513,11.036,10.537,9.963,9.238,8.265,
-7.014,5.646,4.487,3.806,3.568,3.454,3.156,2.649,2.156,1.846,1.611,1.181,.415,-.558,-1.502,-2.338,
--3.191,-4.203,-5.336,-6.390,-7.190,-7.746,-8.226,-8.810,-9.553,-10.364,-11.087,-11.594,-11.862,-11.975,-12.074,-12.273,
--12.623,-13.105,-13.662,-14.217,-14.709,-15.132,-15.555,-16.073,-16.719,-17.448,-18.225,-19.112,-20.226,-21.575,-22.970,-24.145,
--24.987,-25.611,-26.198,-26.780,-27.238,-27.473,-27.524,-27.481,-27.338,-27.023,-26.587,-26.262,-26.247,-26.455,-26.570,-26.413,
--26.198,-26.328,-26.920,-27.589,-27.793,-27.394,-26.844,-26.816,-27.644,-29.120,-30.723,-31.973,-32.596,-32.489,-31.686,-30.376,
--28.893,-27.605,-26.797,-26.643,-27.206,-28.362,-29.710,-30.673,-30.841,-30.296,-29.547,-29.100,-29.058,-29.171,-29.228,-29.312,
--29.630,-30.144,-30.486,-30.303,-29.631,-28.868,-28.342,-27.954,-27.287,-26.053,-24.399,-22.791,-21.652,-21.120,-21.113,-21.499,
--22.146,-22.854,-23.354,-23.466,-23.296,-23.218,-23.624,-24.618,-25.923,-27.090,-27.814,-28.123,-28.300,-28.640,-29.233,-29.950,
--30.589,-31.049,-31.382,-31.707,-32.085,-32.492,-32.885,-33.278,-33.732,-34.276,-34.852,-35.352,-35.701,-35.909,-36.048,-36.194,
--36.397,-36.677,-37.031,-37.420,-37.778,-38.054,-38.254,-38.439,-38.660,-38.920,-39.195,-39.485,-39.823,-40.217,-40.606,-40.911,
--41.122,-41.319,-41.585,-41.901,-42.170,-42.333,-42.453,-42.649,-42.964,-43.307,-43.553,-43.658,-43.681,-43.699,-43.742,-43.829,
--44.010,-44.329,-44.741,-45.090,-45.227,-45.137,-44.931,-44.725,-44.544,-44.361,-44.198,-44.146,-44.282,-44.574,-44.893,-45.101,
--45.106,-44.861,-44.366,-43.703,-43.061,-42.665,-42.661,-43.034,-43.644,-44.296,-44.775,-44.869,-44.448,-43.586,-42.591,-41.831,
--41.493,-41.489,-41.611,-41.751,-41.948,-42.236,-42.490,-42.488,-42.123,-41.527,-40.962,-40.574,-40.271,-39.835,-39.134,-38.233,
--37.334,-36.630,-36.210,-36.055,-36.079,-36.146,-36.090,-35.765,-35.121,-34.250,-33.345,-32.582,-32.005,-31.517,-30.976,-30.317,
--29.598,-28.945,-28.438,-28.036,-27.588,-26.908,-25.885,-24.553,-23.088,-21.712,-20.545,-19.553,-18.631,-17.766,-17.098,-16.799,
--16.873,-17.085,-17.121,-16.808,-16.192,-15.407,-14.527,-13.549,-12.487,-11.420,-10.403,-9.371,-8.184,-6.788,-5.311,-3.967,
--2.874,-1.972,-1.115,-.212,.723,1.627,2.450,3.149,3.700,4.134,4.582,5.207,6.073,7.075,8.030,8.839,
-9.549,10.262,11.004,11.717,12.363,12.989,13.680,14.457,15.264,16.043,16.798,17.560,18.318,19.020,19.655,20.288,
-20.991,21.745,22.458,23.092,23.737,24.519,25.438,26.330,27.027,27.537,28.035,28.653,29.305,29.730,29.715,29.278,
-28.655,28.143,27.954,28.163,28.697,29.368,29.957,30.337,30.572,30.855,31.343,32.015,32.703,33.231,33.536,33.667,
-33.723,33.815,34.030,34.386,34.782,35.049,35.109,35.103,35.300,35.873,36.742,37.674,38.514,39.301,40.146,41.053,
-41.894,42.523,42.854,42.799,42.213,41.018,39.411,37.868,36.812,36.214,35.540,34.162,31.838,28.834,25.626,22.550,
-19.759,17.429,15.872,15.381,15.964,17.288,18.889,20.424,21.729,22.711,23.276,23.394,23.183,22.861,22.591,22.381,
-22.148,21.848,21.529,21.249,21.002,20.725,20.381,19.977,19.524,18.995,18.365,17.668,16.994,16.408,15.883,15.337,
-14.729,14.090,13.472,12.883,12.292,11.699,11.158,10.723,10.376,10.036,9.634,9.166,8.664,8.138,7.570,6.963,
-6.376,5.887,5.528,5.265,5.041,4.824,4.600,4.342,4.011,3.597,3.151,2.761,2.479,2.283,2.108,1.900,
-1.657,1.405,1.153,.867,.494,.008,-.558,-1.129,-1.633,-2.054,-2.429,-2.807,-3.202,-3.589,-3.945,-4.277,
--4.615,-4.980,-5.353,-5.695,-5.976,-6.198,-6.407,-6.667,-7.021,-7.454,-7.883,-8.220,-8.444,-8.625,-8.853,-9.137,
--9.403,-9.580,-9.686,-9.794,-9.930,-10.027,-10.003,-9.875,-9.763,-9.771,-9.888,-10.026,-10.140,-10.276,-10.519,-10.907,
--11.400,-11.886,-12.138,-11.829,-10.715,-8.954,-7.252,-6.534,-7.300,-9.189,-11.207,-12.450,-12.686,-12.318,-11.863,-11.523,
--11.208,-10.844,-10.545,-10.463,-10.577,-10.695,-10.661,-10.513,-10.415,-10.464,-10.600,-10.686,-10.639,-10.474,-10.261,-10.071,
--9.969,-9.993,-10.132,-10.315,-10.458,-10.533,-10.585,-10.673,-10.810,-10.957,-11.065,-11.113,-11.113,-11.089,-11.071,-11.077,
--11.105,-11.131,-11.137,-11.144,-11.194,-11.303,-11.416,-11.460,-11.417,-11.367,-11.419,-11.625,-11.939,-12.273,-12.557,-12.763,
--12.894,-12.967,-13.018,-13.077,-13.150,-13.205,-13.221,-13.215,-13.237,-13.310,-13.407,-13.483,-13.523,-13.543,-13.553,-13.538,
--13.496,-13.463,-13.482,-13.543,-13.583,-13.561,-13.514,-13.524,-13.613,-13.717,-13.753,-13.716,-13.674,-13.669,-13.665,-13.589,
--13.429,-13.250,-13.129,-13.083,-13.082,-13.099,-13.140,-13.216,-13.317,-13.423,-13.531,-13.642,-13.738,-13.791,-13.814,-13.869,
--14.011,-14.215,-14.388,-14.469,-14.491,-14.544,-14.668,-14.816,-14.917,-14.964,-15.015,-15.114,-15.245,-15.359,-15.438,-15.512,
--15.609,-15.721,-15.818,-15.890,-15.961,-16.059,-16.188,-16.334,-16.483,-16.629,-16.768,-16.894,-17.013,-17.151,-17.337,-17.578,
--17.859,-18.157,-18.459,-18.763,-19.059,-19.334,-19.573,-19.773,-19.946,-20.120,-20.319,-20.558,-20.819,-21.068,-21.274,-21.439,
--21.585,-21.735,-21.897,-22.077,-22.296,-22.574,-22.896,-23.213,-23.476,-23.684,-23.885,-24.130,-24.425,-24.732,-25.004,-25.220,
--25.390,-25.556,-25.778,-26.113,-26.577,-27.122,-27.655,-28.096,-28.426,-28.681,-28.915,-29.168,-29.454,-29.767,-30.084,-30.373,
--30.617,-30.838,-31.080,-31.368,-31.683,-31.983,-32.247,-32.490,-32.733,-32.977,-33.213,-33.445,-33.695,-33.972,-34.250,-34.495,
--34.700,-34.894,-35.108,-35.342,-35.581,-35.821,-36.074,-36.340,-36.592,-36.797,-36.952,-37.091,-37.261,-37.486,-37.765,-38.082,
--38.406,-38.692,-38.889,-38.980,-38.996,-39.000,-39.038,-39.123,-39.247,-39.405,-39.592,-39.789,-39.960,-40.076,-40.136,-40.157,
--40.157,-40.146,-40.136,-40.142,-40.176,-40.231,-40.293,-40.356,-40.427,-40.504,-40.571,-40.607,-40.615,-40.621,-40.643,-40.671,
--40.679,-40.657,-40.608,-40.528,-40.395,-40.185,-39.909,-39.606,-39.307,-39.011,-38.708,-38.433,-38.261,-38.245,-38.331,-38.344,
--38.078,-37.428,-36.473,-35.445,-34.587,-34.033,-33.777,-33.756,-33.940,-34.307,-34.702,-34.775,-34.159,-32.803,-31.152,-29.912,
--29.543,-29.923,-30.512,-30.851,-30.898,-30.886,-30.934,-30.857,-30.415,-29.658,-28.963,-28.700,-28.879,-29.165,-29.196,-28.858,
--28.274,-27.606,-26.931,-26.273,-25.656,-25.091,-24.545,-24.001,-23.562,-23.414,-23.639,-24.049,-24.277,-24.061,-23.446,-22.715,
--22.122,-21.725,-21.441,-21.199,-21.017,-20.944,-20.981,-21.079,-21.178,-21.226,-21.176,-21.008,-20.768,-20.540,-20.351,-20.104,
--19.658,-19.019,-18.429,-18.229,-18.588,-19.355,-20.187,-20.810,-21.204,-21.537,-21.986,-22.605,-23.353,-24.174,-25.041,-25.916,
--26.712,-27.321,-27.691,-27.868,-27.970,-28.103,-28.309,-28.565,-28.820,-29.023,-29.124,-29.085,-28.896,-28.597,-28.273,-28.014,
--27.879,-27.886,-28.018,-28.231,-28.463,-28.664,-28.837,-29.043,-29.350,-29.748,-30.130,-30.364,-30.390,-30.252,-30.035,-29.798,
--29.567,-29.385,-29.313,-29.364,-29.459,-29.469,-29.332,-29.111,-28.927,-28.842,-28.820,-28.805,-28.797,-28.834,-28.908,-28.938,
--28.853,-28.697,-28.609,-28.697,-28.925,-29.144,-29.230,-29.193,-29.142,-29.161,-29.235,-29.282,-29.264,-29.240,-29.317,-29.540,
--29.834,-30.055,-30.125,-30.122,-30.233,-30.594,-31.144,-31.641,-31.835,-31.661,-31.286,-30.970,-30.876,-31.001,-31.257,-31.596,
--32.035,-32.575,-33.117,-33.493,-33.581,-33.398,-33.066,-32.701,-32.340,-31.988,-31.723,-31.716,-32.129,-32.959,-34.005,-34.996,
--35.768,-36.331,-36.778,-37.166,-37.504,-37.843,-38.306,-38.982,-39.764,-40.361,-40.526,-40.311,-40.082,-40.239,-40.896,-41.824,
--42.691,-43.335,-43.830,-44.299,-44.742,-45.042,-45.127,-45.064,-44.989,-44.968,-44.948,-44.840,-44.623,-44.352,-44.083,-43.833,
--43.607,-43.441,-43.381,-43.420,-43.477,-43.447,-43.280,-43.008,-42.693,-42.380,-42.079,-41.784,-41.485,-41.158,-40.772,-40.312,
--39.806,-39.306,-38.855,-38.462,-38.124,-37.844,-37.619,-37.423,-37.207,-36.944,-36.655,-36.377,-36.101,-35.765,-35.314,-34.775,
--34.238,-33.772,-33.352,-32.889,-32.339,-31.767,-31.291,-30.972,-30.758,-30.547,-30.286,-30.003,-29.741,-29.478,-29.137,-28.673,
--28.148,-27.698,-27.409,-27.223,-26.970,-26.508,-25.840,-25.104,-24.443,-23.886,-23.354,-22.766,-22.124,-21.487,-20.877,-20.230,
--19.475,-18.644,-17.880,-17.300,-16.844,-16.285,-15.407,-14.203,-12.895,-11.757,-10.923,-10.328,-9.827,-9.312,-8.747,-8.108,
--7.354,-6.482,-5.575,-4.765,-4.118,-3.552,-2.898,-2.039,-1.006,.059,1.028,1.873,2.659,3.464,4.320,5.209,
-6.096,6.957,7.792,8.612,9.435,10.270,11.111,11.950,12.792,13.659,14.576,15.545,16.541,17.533,18.496,19.422,
-20.305,21.145,21.955,22.762,23.584,24.418,25.248,26.073,26.908,27.763,28.621,29.451,30.249,31.047,31.875,32.712,
-33.505,34.233,34.939,35.698,36.527,37.367,38.152,38.878,39.610,40.385,41.159,41.843,42.406,42.912,43.455,44.055,
-44.631,45.082,45.369,45.534,45.645,45.745,45.845,45.959,46.109,46.308,46.539,46.758,46.926,47.033,47.109,47.203,
-47.358,47.567,47.767,47.876,47.862,47.780,47.725,47.747,47.806,47.825,47.771,47.676,47.583,47.479,47.316,47.083,
-46.852,46.717,46.715,46.785,46.825,46.765,46.593,46.326,45.992,45.632,45.297,45.010,44.736,44.399,43.956,43.451,
-42.981,42.627,42.390,42.217,42.044,41.840,41.603,41.358,41.149,41.025,41.017,41.118,41.299,41.545,41.854,42.226,
-42.641,43.090,43.593,44.177,44.824,45.459,46.018,46.524,47.065,47.669,48.217,48.489,48.327,47.750,46.922,46.043,
-45.277,44.754,44.569,44.713,45.033,45.308,45.413,45.396,45.362,45.299,45.044,44.469,43.682,43.005,42.720,42.838,
-43.112,43.283,43.293,43.290,43.442,43.768,44.107,44.216,43.904,43.136,42.083,41.061,40.378,40.150,40.250,40.453,
-40.640,40.864,41.221,41.673,42.066,42.325,42.607,43.199,44.240,45.539,46.706,47.465,47.837,48.043,48.248,48.430,
-48.470,48.334,48.129,48.003,48.014,48.118,48.245,48.363,48.453,48.470,49.156,48.802,48.305,47.819,47.531,47.503,
-47.596,47.564,47.227,46.597,45.847,45.169,44.629,44.145,43.583,42.885,42.108,41.359,40.706,40.167,39.781,39.647,
-39.859,40.392,41.048,41.574,41.831,41.859,41.797,41.745,41.710,41.657,41.567,41.435,41.224,40.872,40.350,39.706,
-39.050,38.484,38.078,37.862,37.835,37.938,38.061,38.102,38.053,37.999,38.015,38.061,37.993,37.694,37.184,36.602,
-36.088,35.695,35.423,35.295,35.353,35.563,35.731,35.567,34.861,33.650,32.201,30.848,29.807,29.116,28.703,28.494,
-28.445,28.494,28.517,28.360,27.917,27.189,26.263,25.222,24.083,22.813,21.391,19.859,18.304,16.792,15.322,13.841,
-12.331,10.886,9.735,9.173,9.441,10.622,12.605,15.128,17.857,20.467,22.698,24.400,25.549,26.219,26.513,26.476,
-26.065,25.197,23.849,22.133,20.292,18.591,17.176,15.971,14.695,13.047,10.966,8.808,7.239,6.839,7.645,9.026,
-10.052,10.125,9.381,8.511,8.180,8.583,9.515,10.807,12.611,15.190,18.463,21.823,24.482,26.015,26.581,26.643,
-26.543,26.324,25.894,25.220,24.349,23.342,22.334,21.650,21.734,22.809,24.559,26.232,27.150,27.164,26.652,26.089,
-25.670,25.303,24.867,24.389,23.976,23.666,23.392,23.061,22.622,22.048,21.335,20.532,19.756,19.106,18.549,17.939,
-17.167,16.277,15.402,14.605,13.822,12.975,12.095,11.290,10.613,10.021,9.480,9.073,8.937,9.109,9.469,9.870,
-10.301,10.876,11.671,12.580,13.360,13.801,13.846,13.584,13.155,12.668,12.162,11.619,11.017,10.373,9.743,9.135,
-8.448,7.530,6.333,5.011,3.818,2.903,2.225,1.671,1.235,1.002,.971,.924,.554,-.281,-1.425,-2.579,
--3.552,-4.365,-5.144,-5.945,-6.713,-7.370,-7.921,-8.464,-9.109,-9.881,-10.684,-11.350,-11.757,-11.922,-12.001,-12.174,
--12.520,-12.993,-13.495,-13.970,-14.406,-14.795,-15.125,-15.417,-15.745,-16.192,-16.801,-17.583,-18.560,-19.744,-21.055,-22.303,
--23.304,-24.036,-24.647,-25.272,-25.879,-26.318,-26.501,-26.474,-26.300,-25.940,-25.340,-24.626,-24.106,-23.986,-24.122,-24.145,
--23.886,-23.601,-23.702,-24.252,-24.828,-24.953,-24.633,-24.406,-24.842,-26.025,-27.532,-28.850,-29.739,-30.218,-30.331,-30.045,
--29.362,-28.456,-27.630,-27.186,-27.324,-28.108,-29.397,-30.775,-31.669,-31.706,-31.026,-30.197,-29.738,-29.706,-29.765,-29.648,
--29.467,-29.525,-29.873,-30.150,-29.928,-29.173,-28.292,-27.714,-27.455,-27.127,-26.341,-25.062,-23.589,-22.274,-21.309,-20.749,
--20.625,-20.934,-21.524,-22.076,-22.291,-22.141,-21.938,-22.105,-22.849,-23.990,-25.093,-25.782,-25.987,-25.963,-26.092,-26.626,
--27.563,-28.705,-29.820,-30.783,-31.590,-32.280,-32.860,-33.310,-33.635,-33.904,-34.211,-34.602,-35.037,-35.427,-35.707,-35.884,
--36.021,-36.196,-36.453,-36.786,-37.151,-37.491,-37.778,-38.024,-38.262,-38.516,-38.782,-39.052,-39.338,-39.657,-39.995,-40.297,
--40.526,-40.717,-40.960,-41.294,-41.644,-41.887,-41.990,-42.064,-42.247,-42.553,-42.852,-43.017,-43.060,-43.106,-43.239,-43.414,
--43.540,-43.602,-43.664,-43.765,-43.839,-43.798,-43.646,-43.483,-43.380,-43.295,-43.136,-42.908,-42.729,-42.711,-42.832,-42.966,
--43.011,-42.963,-42.851,-42.663,-42.364,-41.989,-41.679,-41.595,-41.808,-42.260,-42.806,-43.257,-43.402,-43.088,-42.335,-41.391,
--40.610,-40.215,-40.172,-40.292,-40.438,-40.623,-40.898,-41.194,-41.327,-41.166,-40.773,-40.361,-40.096,-39.952,-39.739,-39.271,
--38.506,-37.585,-36.738,-36.163,-35.935,-35.983,-36.131,-36.174,-35.957,-35.430,-34.655,-33.777,-32.960,-32.306,-31.805,-31.351,
--30.834,-30.228,-29.609,-29.076,-28.621,-28.089,-27.259,-26.017,-24.474,-22.931,-21.674,-20.782,-20.106,-19.445,-18.760,-18.199,
--17.919,-17.884,-17.858,-17.600,-17.044,-16.292,-15.451,-14.527,-13.488,-12.380,-11.319,-10.350,-9.362,-8.186,-6.788,-5.325,
--4.015,-2.942,-2.021,-1.120,-.188,.753,1.665,2.517,3.241,3.752,4.048,4.299,4.767,5.606,6.723,7.863,
-8.822,9.584,10.263,10.959,11.679,12.393,13.105,13.853,14.653,15.477,16.290,17.086,17.867,18.620,19.319,19.969,
-20.615,21.284,21.951,22.572,23.176,23.878,24.768,25.789,26.751,27.484,27.993,28.419,28.874,29.311,29.568,29.537,
-29.271,28.948,28.753,28.798,29.099,29.598,30.169,30.669,31.023,31.288,31.606,32.083,32.697,33.330,33.874,34.288,
-34.590,34.811,34.996,35.202,35.461,35.724,35.888,35.894,35.815,35.805,35.961,36.279,36.742,37.422,38.425,39.716,
-41.037,42.059,42.607,42.710,42.428,41.696,40.421,38.719,36.992,35.645,34.716,33.789,32.313,30.012,27.019,23.707,
-20.466,17.661,15.678,14.862,15.297,16.676,18.434,20.073,21.382,22.382,23.124,23.576,23.691,23.517,23.187,22.817,
-22.441,22.057,21.692,21.396,21.177,20.972,20.711,20.382,20.014,19.605,19.095,18.444,17.710,17.018,16.449,15.959,
-15.443,14.845,14.212,13.610,13.045,12.467,11.854,11.255,10.740,10.321,9.942,9.544,9.115,8.669,8.197,7.671,
-7.090,6.519,6.043,5.698,5.450,5.235,5.013,4.772,4.499,4.172,3.787,3.378,3.002,2.691,2.428,2.161,
-1.847,1.480,1.097,.737,.411,.083,-.296,-.743,-1.213,-1.632,-1.963,-2.238,-2.521,-2.853,-3.228,-3.624,
--4.041,-4.482,-4.934,-5.350,-5.693,-5.965,-6.209,-6.478,-6.813,-7.230,-7.701,-8.147,-8.482,-8.680,-8.819,-9.006,
--9.270,-9.526,-9.676,-9.723,-9.763,-9.857,-9.943,-9.919,-9.787,-9.679,-9.725,-9.907,-10.097,-10.220,-10.344,-10.600,
--11.033,-11.556,-11.986,-12.058,-11.427,-9.822,-7.386,-4.917,-3.601,-4.264,-6.696,-9.716,-11.977,-12.844,-12.614,-11.999,
--11.471,-11.070,-10.675,-10.314,-10.144,-10.225,-10.418,-10.525,-10.487,-10.404,-10.392,-10.450,-10.487,-10.421,-10.247,-10.022,
--9.825,-9.726,-9.768,-9.931,-10.133,-10.286,-10.363,-10.412,-10.492,-10.617,-10.746,-10.835,-10.870,-10.869,-10.857,-10.853,
--10.864,-10.878,-10.867,-10.817,-10.762,-10.761,-10.837,-10.935,-10.976,-10.953,-10.963,-11.130,-11.489,-11.949,-12.369,-12.655,
--12.803,-12.868,-12.908,-12.960,-13.032,-13.100,-13.134,-13.135,-13.140,-13.192,-13.281,-13.352,-13.367,-13.354,-13.372,-13.435,
--13.490,-13.484,-13.438,-13.416,-13.447,-13.481,-13.464,-13.416,-13.412,-13.486,-13.581,-13.619,-13.589,-13.556,-13.562,-13.573,
--13.521,-13.398,-13.274,-13.211,-13.206,-13.210,-13.203,-13.214,-13.271,-13.360,-13.446,-13.520,-13.598,-13.679,-13.738,-13.769,
--13.817,-13.933,-14.111,-14.273,-14.359,-14.386,-14.429,-14.531,-14.656,-14.752,-14.818,-14.902,-15.033,-15.184,-15.306,-15.393,
--15.483,-15.604,-15.740,-15.852,-15.932,-16.004,-16.096,-16.209,-16.322,-16.429,-16.539,-16.665,-16.800,-16.933,-17.067,-17.221,
--17.419,-17.670,-17.963,-18.271,-18.570,-18.853,-19.124,-19.390,-19.643,-19.867,-20.062,-20.258,-20.491,-20.762,-21.031,-21.256,
--21.434,-21.598,-21.774,-21.959,-22.144,-22.340,-22.572,-22.839,-23.104,-23.337,-23.555,-23.805,-24.112,-24.442,-24.739,-24.978,
--25.180,-25.378,-25.594,-25.851,-26.183,-26.614,-27.113,-27.597,-27.987,-28.264,-28.475,-28.680,-28.914,-29.184,-29.486,-29.809,
--30.130,-30.425,-30.687,-30.942,-31.215,-31.507,-31.796,-32.068,-32.322,-32.563,-32.786,-32.991,-33.202,-33.449,-33.731,-34.012,
--34.257,-34.472,-34.693,-34.938,-35.183,-35.404,-35.618,-35.869,-36.169,-36.475,-36.723,-36.902,-37.064,-37.269,-37.537,-37.844,
--38.158,-38.459,-38.718,-38.899,-38.984,-39.004,-39.027,-39.107,-39.251,-39.433,-39.626,-39.816,-39.993,-40.134,-40.216,-40.240,
--40.226,-40.198,-40.177,-40.177,-40.212,-40.280,-40.362,-40.432,-40.486,-40.536,-40.596,-40.659,-40.708,-40.741,-40.773,-40.813,
--40.848,-40.855,-40.829,-40.780,-40.704,-40.575,-40.372,-40.116,-39.858,-39.630,-39.413,-39.170,-38.922,-38.750,-38.736,-38.854,
--38.952,-38.829,-38.361,-37.574,-36.620,-35.684,-34.896,-34.319,-33.993,-33.976,-34.280,-34.750,-35.015,-34.666,-33.581,-32.118,
--30.927,-30.479,-30.715,-31.150,-31.339,-31.240,-31.121,-31.164,-31.218,-30.978,-30.369,-29.680,-29.294,-29.323,-29.521,-29.545,
--29.239,-28.687,-28.047,-27.401,-26.766,-26.157,-25.586,-25.022,-24.419,-23.828,-23.432,-23.415,-23.759,-24.190,-24.358,-24.095,
--23.520,-22.917,-22.508,-22.320,-22.219,-22.041,-21.723,-21.336,-21.023,-20.880,-20.891,-20.967,-21.038,-21.092,-21.117,-21.020,
--20.665,-20.024,-19.302,-18.849,-18.925,-19.505,-20.324,-21.095,-21.694,-22.159,-22.576,-22.981,-23.387,-23.835,-24.395,-25.096,
--25.880,-26.616,-27.181,-27.517,-27.649,-27.659,-27.648,-27.703,-27.857,-28.082,-28.300,-28.431,-28.438,-28.347,-28.224,-28.125,
--28.058,-27.990,-27.900,-27.813,-27.798,-27.913,-28.168,-28.528,-28.956,-29.423,-29.891,-30.306,-30.611,-30.790,-30.858,-30.829,
--30.699,-30.486,-30.267,-30.138,-30.119,-30.109,-29.965,-29.648,-29.269,-28.984,-28.843,-28.775,-28.702,-28.631,-28.623,-28.676,
--28.695,-28.603,-28.454,-28.405,-28.552,-28.822,-29.034,-29.075,-28.989,-28.909,-28.908,-28.936,-28.909,-28.827,-28.792,-28.914,
--29.201,-29.541,-29.807,-29.981,-30.174,-30.522,-31.027,-31.501,-31.682,-31.436,-30.887,-30.338,-30.060,-30.131,-30.462,-30.941,
--31.534,-32.227,-32.911,-33.370,-33.423,-33.081,-32.559,-32.105,-31.829,-31.687,-31.625,-31.701,-32.053,-32.743,-33.660,-34.585,
--35.357,-35.973,-36.520,-37.043,-37.504,-37.868,-38.205,-38.650,-39.248,-39.850,-40.214,-40.239,-40.113,-40.187,-40.696,-41.573,
--42.527,-43.301,-43.854,-44.314,-44.783,-45.234,-45.556,-45.690,-45.683,-45.619,-45.534,-45.406,-45.216,-44.981,-44.738,-44.498,
--44.257,-44.038,-43.896,-43.869,-43.927,-43.972,-43.917,-43.739,-43.477,-43.178,-42.859,-42.524,-42.178,-41.824,-41.444,-41.013,
--40.527,-40.025,-39.556,-39.137,-38.747,-38.370,-38.024,-37.739,-37.510,-37.288,-37.031,-36.745,-36.470,-36.210,-35.912,-35.513,
--35.014,-34.490,-34.020,-33.601,-33.165,-32.657,-32.107,-31.611,-31.243,-31.001,-30.824,-30.655,-30.476,-30.275,-30.017,-29.651,
--29.165,-28.632,-28.169,-27.847,-27.623,-27.363,-26.944,-26.352,-25.677,-25.029,-24.444,-23.875,-23.272,-22.639,-22.022,-21.428,
--20.791,-20.030,-19.166,-18.339,-17.702,-17.256,-16.813,-16.131,-15.113,-13.892,-12.719,-11.782,-11.099,-10.571,-10.094,-9.606,
--9.064,-8.408,-7.588,-6.631,-5.645,-4.731,-3.897,-3.044,-2.073,-.987,.095,1.032,1.772,2.388,3.017,3.762,
-4.641,5.597,6.550,7.449,8.290,9.104,9.919,10.746,11.581,12.432,13.319,14.262,15.251,16.245,17.204,18.117,
-18.998,19.865,20.720,21.560,22.385,23.206,24.030,24.861,25.704,26.575,27.481,28.400,29.290,30.125,30.914,31.689,
-32.470,33.251,34.023,34.795,35.579,36.357,37.085,37.747,38.385,39.070,39.822,40.578,41.250,41.813,42.333,42.888,
-43.472,43.989,44.345,44.534,44.643,44.769,44.944,45.138,45.310,45.452,45.588,45.737,45.897,46.043,46.151,46.229,
-46.321,46.485,46.735,47.008,47.191,47.219,47.143,47.089,47.136,47.227,47.225,47.049,46.762,46.505,46.355,46.263,
-46.125,45.913,45.699,45.572,45.533,45.490,45.347,45.087,44.769,44.465,44.212,44.003,43.815,43.617,43.381,43.085,
-42.731,42.351,41.986,41.670,41.415,41.217,41.068,40.962,40.905,40.914,40.993,41.131,41.302,41.499,41.747,42.076,
-42.493,42.970,43.484,44.046,44.674,45.348,46.005,46.596,47.141,47.680,48.173,48.466,48.389,47.898,47.121,46.265,
-45.500,44.938,44.677,44.793,45.238,45.795,46.183,46.264,46.123,45.922,45.706,45.370,44.843,44.249,43.836,43.743,
-43.851,43.906,43.764,43.489,43.240,43.083,42.953,42.754,42.448,42.038,41.516,40.892,40.266,39.813,39.660,39.766,
-39.984,40.238,40.607,41.202,41.979,42.725,43.270,43.688,44.248,45.144,46.277,47.334,48.062,48.455,48.678,48.854,
-48.969,48.960,48.862,48.810,48.902,49.106,49.302,49.405,49.412,49.340,49.156,49.439,49.113,48.695,48.301,48.064,
-47.991,47.933,47.686,47.144,46.369,45.536,44.813,44.265,43.834,43.397,42.846,42.133,41.262,40.269,39.237,38.332,
-37.778,37.748,38.217,38.933,39.568,39.930,40.058,40.121,40.235,40.375,40.440,40.359,40.134,39.796,39.369,38.880,
-38.382,37.950,37.629,37.420,37.301,37.255,37.262,37.281,37.269,37.223,37.192,37.222,37.283,37.259,37.034,36.598,
-36.048,35.519,35.086,34.754,34.522,34.416,34.461,34.599,34.655,34.420,33.776,32.786,31.650,30.589,29.737,29.129,
-28.744,28.546,28.467,28.387,28.169,27.730,27.088,26.327,25.502,24.583,23.496,22.201,20.739,19.201,17.664,16.148,
-14.640,13.137,11.685,10.390,9.414,8.966,9.255,10.416,12.411,14.974,17.664,20.015,21.733,22.797,23.391,23.706,
-23.762,23.395,22.412,20.792,18.764,16.694,14.890,13.450,12.252,11.080,9.774,8.356,7.052,6.208,6.087,6.670,
-7.592,8.316,8.463,8.056,7.469,7.131,7.265,7.909,9.138,11.197,14.288,18.215,22.266,25.550,27.525,28.248,
-28.159,27.658,26.897,25.880,24.652,23.341,22.097,21.104,20.653,21.077,22.453,24.362,26.025,26.815,26.697,26.149,
-25.680,25.424,25.181,24.755,24.182,23.640,23.231,22.897,22.516,22.017,21.389,20.654,19.864,19.104,18.429,17.799,
-17.097,16.265,15.371,14.522,13.722,12.869,11.902,10.906,10.030,9.306,8.635,7.963,7.418,7.208,7.393,7.804,
-8.230,8.648,9.219,10.064,11.071,11.963,12.522,12.726,12.694,12.549,12.328,12.003,11.534,10.917,10.207,9.509,
-8.901,8.344,7.672,6.719,5.469,4.076,2.743,1.585,.631,-.095,-.557,-.801,-1.023,-1.479,-2.295,-3.356,
--4.409,-5.260,-5.890,-6.412,-6.931,-7.472,-7.991,-8.461,-8.918,-9.447,-10.094,-10.791,-11.374,-11.714,-11.851,-11.992,
--12.336,-12.907,-13.551,-14.104,-14.538,-14.927,-15.305,-15.608,-15.773,-15.868,-16.089,-16.626,-17.536,-18.722,-20.000,-21.169,
--22.072,-22.668,-23.066,-23.441,-23.889,-24.345,-24.678,-24.835,-24.853,-24.740,-24.404,-23.799,-23.098,-22.639,-22.609,-22.828,
--22.919,-22.732,-22.517,-22.627,-23.070,-23.460,-23.459,-23.205,-23.233,-23.942,-25.203,-26.506,-27.457,-28.062,-28.561,-29.079,
--29.502,-29.662,-29.551,-29.348,-29.309,-29.659,-30.518,-31.800,-33.130,-33.974,-33.995,-33.353,-32.586,-32.126,-31.931,-31.630,
--31.029,-30.391,-30.160,-30.412,-30.679,-30.364,-29.332,-28.050,-27.148,-26.850,-26.829,-26.559,-25.759,-24.537,-23.207,-22.049,
--21.227,-20.819,-20.831,-21.150,-21.545,-21.789,-21.827,-21.825,-22.047,-22.637,-23.507,-24.389,-25.020,-25.321,-25.440,-25.655,
--26.187,-27.072,-28.165,-29.253,-30.196,-30.982,-31.670,-32.299,-32.844,-33.265,-33.577,-33.863,-34.210,-34.640,-35.088,-35.469,
--35.747,-35.957,-36.161,-36.396,-36.658,-36.928,-37.198,-37.481,-37.790,-38.118,-38.438,-38.727,-38.984,-39.235,-39.502,-39.773,
--40.013,-40.216,-40.434,-40.736,-41.115,-41.462,-41.653,-41.684,-41.694,-41.829,-42.089,-42.334,-42.450,-42.487,-42.601,-42.865,
--43.175,-43.363,-43.374,-43.293,-43.212,-43.125,-42.975,-42.782,-42.651,-42.646,-42.690,-42.646,-42.477,-42.296,-42.222,-42.236,
--42.211,-42.065,-41.849,-41.663,-41.518,-41.329,-41.046,-40.746,-40.584,-40.662,-40.956,-41.340,-41.646,-41.705,-41.395,-40.733,
--39.916,-39.239,-38.901,-38.888,-39.029,-39.183,-39.338,-39.551,-39.811,-40.009,-40.036,-39.895,-39.715,-39.629,-39.653,-39.656,
--39.442,-38.883,-38.025,-37.082,-36.332,-35.955,-35.937,-36.091,-36.183,-36.046,-35.629,-34.975,-34.193,-33.431,-32.821,-32.414,
--32.129,-31.805,-31.322,-30.685,-29.983,-29.262,-28.433,-27.336,-25.909,-24.315,-22.879,-21.863,-21.275,-20.884,-20.441,-19.891,
--19.377,-19.041,-18.840,-18.572,-18.067,-17.324,-16.462,-15.553,-14.569,-13.474,-12.332,-11.261,-10.286,-9.285,-8.112,-6.764,
--5.399,-4.180,-3.130,-2.155,-1.173,-.188,.757,1.655,2.510,3.266,3.817,4.140,4.395,4.856,5.691,6.820,
-7.988,8.976,9.744,10.404,11.075,11.797,12.553,13.325,14.121,14.952,15.810,16.671,17.506,18.289,18.996,19.629,
-20.226,20.834,21.472,22.116,22.742,23.390,24.147,25.060,26.062,26.993,27.716,28.218,28.585,28.898,29.153,29.299,
-29.322,29.286,29.293,29.406,29.631,29.941,30.308,30.697,31.073,31.423,31.785,32.226,32.787,33.439,34.101,34.694,
-35.178,35.539,35.787,35.958,36.102,36.248,36.371,36.416,36.370,36.283,36.204,36.134,36.077,36.159,36.634,37.691,
-39.201,40.710,41.731,42.076,41.905,41.458,40.784,39.760,38.346,36.741,35.234,33.910,32.528,30.701,28.181,25.018,
-21.518,18.147,15.459,13.979,13.990,15.325,17.394,19.475,21.085,22.135,22.791,23.226,23.495,23.585,23.496,23.268,
-22.934,22.521,22.081,21.703,21.449,21.288,21.113,20.841,20.475,20.064,19.618,19.083,18.429,17.720,17.079,16.570,
-16.133,15.648,15.065,14.442,13.856,13.312,12.743,12.105,11.439,10.829,10.320,9.885,9.473,9.064,8.655,8.230,
-7.756,7.224,6.686,6.222,5.875,5.623,5.405,5.167,4.891,4.586,4.263,3.932,3.594,3.248,2.892,2.529,
-2.163,1.783,1.373,.932,.493,.101,-.228,-.535,-.868,-1.226,-1.560,-1.825,-2.041,-2.270,-2.564,-2.929,
--3.349,-3.821,-4.335,-4.852,-5.309,-5.681,-6.003,-6.340,-6.724,-7.144,-7.577,-8.007,-8.399,-8.692,-8.853,-8.938,
--9.061,-9.275,-9.512,-9.655,-9.677,-9.670,-9.719,-9.794,-9.793,-9.697,-9.617,-9.670,-9.842,-10.020,-10.157,-10.343,
--10.690,-11.183,-11.683,-12.039,-12.090,-11.549,-10.033,-7.438,-4.407,-2.277,-2.300,-4.671,-8.262,-11.375,-12.894,-12.859,
--12.078,-11.314,-10.814,-10.461,-10.163,-9.989,-10.012,-10.161,-10.282,-10.309,-10.303,-10.343,-10.405,-10.393,-10.244,-9.997,
--9.748,-9.584,-9.545,-9.625,-9.780,-9.945,-10.069,-10.149,-10.219,-10.309,-10.406,-10.476,-10.512,-10.534,-10.562,-10.588,
--10.594,-10.583,-10.569,-10.554,-10.516,-10.446,-10.366,-10.311,-10.293,-10.306,-10.374,-10.562,-10.922,-11.421,-11.936,-12.336,
--12.565,-12.657,-12.688,-12.720,-12.779,-12.859,-12.931,-12.963,-12.961,-12.971,-13.034,-13.130,-13.192,-13.180,-13.144,-13.174,
--13.297,-13.433,-13.484,-13.439,-13.375,-13.359,-13.372,-13.359,-13.318,-13.304,-13.355,-13.431,-13.463,-13.436,-13.404,-13.406,
--13.414,-13.373,-13.286,-13.218,-13.218,-13.257,-13.273,-13.246,-13.221,-13.240,-13.297,-13.357,-13.417,-13.499,-13.606,-13.703,
--13.759,-13.801,-13.885,-14.026,-14.173,-14.269,-14.317,-14.370,-14.459,-14.562,-14.646,-14.719,-14.823,-14.970,-15.123,-15.239,
--15.321,-15.416,-15.548,-15.698,-15.826,-15.924,-16.016,-16.118,-16.219,-16.298,-16.363,-16.444,-16.562,-16.711,-16.862,-16.998,
--17.130,-17.290,-17.509,-17.787,-18.092,-18.380,-18.634,-18.878,-19.147,-19.443,-19.727,-19.963,-20.163,-20.378,-20.634,-20.909,
--21.161,-21.377,-21.576,-21.777,-21.970,-22.146,-22.326,-22.541,-22.784,-23.011,-23.196,-23.381,-23.636,-23.978,-24.339,-24.638,
--24.860,-25.062,-25.299,-25.576,-25.872,-26.192,-26.563,-26.980,-27.387,-27.718,-27.963,-28.173,-28.405,-28.675,-28.969,-29.276,
--29.600,-29.934,-30.259,-30.556,-30.829,-31.097,-31.371,-31.651,-31.930,-32.201,-32.449,-32.653,-32.818,-32.986,-33.206,-33.483,
--33.775,-34.039,-34.280,-34.532,-34.796,-35.038,-35.233,-35.418,-35.661,-35.982,-36.322,-36.606,-36.827,-37.045,-37.321,-37.651,
--37.983,-38.280,-38.537,-38.754,-38.909,-38.987,-39.014,-39.060,-39.177,-39.364,-39.580,-39.784,-39.961,-40.107,-40.210,-40.259,
--40.260,-40.238,-40.217,-40.215,-40.243,-40.312,-40.416,-40.529,-40.616,-40.665,-40.699,-40.744,-40.804,-40.862,-40.906,-40.941,
--40.974,-40.998,-40.998,-40.974,-40.932,-40.863,-40.742,-40.552,-40.326,-40.123,-39.966,-39.814,-39.610,-39.363,-39.169,-39.130,
--39.243,-39.365,-39.296,-38.906,-38.206,-37.326,-36.430,-35.632,-34.975,-34.468,-34.142,-34.040,-34.132,-34.227,-34.034,-33.377,
--32.405,-31.546,-31.187,-31.345,-31.662,-31.755,-31.567,-31.357,-31.358,-31.480,-31.398,-30.925,-30.242,-29.745,-29.668,-29.879,
--30.034,-29.873,-29.375,-28.682,-27.943,-27.257,-26.673,-26.192,-25.735,-25.184,-24.513,-23.873,-23.523,-23.609,-24.012,-24.409,
--24.511,-24.267,-23.865,-23.545,-23.394,-23.292,-23.034,-22.525,-21.859,-21.244,-20.848,-20.711,-20.789,-21.032,-21.373,-21.661,
--21.657,-21.199,-20.404,-19.668,-19.412,-19.767,-20.511,-21.294,-21.928,-22.448,-22.955,-23.448,-23.840,-24.101,-24.333,-24.679,
--25.193,-25.806,-26.399,-26.891,-27.242,-27.437,-27.482,-27.443,-27.431,-27.530,-27.721,-27.888,-27.920,-27.804,-27.647,-27.586,
--27.675,-27.840,-27.932,-27.846,-27.609,-27.378,-27.330,-27.560,-28.043,-28.681,-29.366,-30.016,-30.577,-31.026,-31.368,-31.613,
--31.739,-31.704,-31.500,-31.206,-30.938,-30.745,-30.547,-30.225,-29.763,-29.289,-28.955,-28.791,-28.692,-28.561,-28.417,-28.348,
--28.381,-28.437,-28.434,-28.397,-28.433,-28.590,-28.779,-28.860,-28.794,-28.678,-28.629,-28.658,-28.676,-28.622,-28.552,-28.596,
--28.823,-29.174,-29.518,-29.782,-30.015,-30.327,-30.758,-31.189,-31.395,-31.205,-30.669,-30.058,-29.699,-29.757,-30.157,-30.708,
--31.289,-31.903,-32.558,-33.122,-33.363,-33.147,-32.597,-32.020,-31.674,-31.597,-31.670,-31.815,-32.099,-32.642,-33.431,-34.294,
--35.040,-35.632,-36.181,-36.789,-37.418,-37.940,-38.301,-38.595,-38.961,-39.407,-39.786,-39.959,-39.987,-40.132,-40.647,-41.549,
--42.602,-43.505,-44.127,-44.550,-44.934,-45.352,-45.752,-46.035,-46.158,-46.150,-46.057,-45.912,-45.736,-45.554,-45.387,-45.226,
--45.042,-44.827,-44.623,-44.487,-44.436,-44.423,-44.379,-44.270,-44.111,-43.921,-43.688,-43.383,-43.003,-42.587,-42.176,-41.774,
--41.348,-40.882,-40.399,-39.938,-39.513,-39.104,-38.696,-38.315,-37.997,-37.742,-37.506,-37.237,-36.929,-36.614,-36.308,-35.985,
--35.598,-35.134,-34.629,-34.136,-33.675,-33.229,-32.779,-32.333,-31.925,-31.581,-31.301,-31.070,-30.868,-30.682,-30.492,-30.269,
--29.984,-29.628,-29.214,-28.777,-28.350,-27.945,-27.545,-27.121,-26.651,-26.136,-25.590,-25.022,-24.425,-23.800,-23.166,-22.551,
--21.954,-21.319,-20.581,-19.739,-18.891,-18.175,-17.644,-17.199,-16.649,-15.864,-14.879,-13.859,-12.956,-12.200,-11.513,-10.815,
--10.095,-9.387,-8.690,-7.939,-7.067,-6.077,-5.043,-4.037,-3.064,-2.075,-1.052,-.061,.793,1.458,2.000,2.566,
-3.283,4.181,5.191,6.205,7.150,8.016,8.834,9.640,10.452,11.277,12.127,13.017,13.948,14.895,15.820,16.705,
-17.571,18.451,19.360,20.279,21.177,22.039,22.874,23.696,24.513,25.334,26.183,27.083,28.032,28.983,29.878,30.691,
-31.448,32.206,33.009,33.858,34.722,35.549,36.296,36.950,37.542,38.132,38.767,39.437,40.080,40.643,41.138,41.626,
-42.148,42.664,43.079,43.331,43.460,43.578,43.780,44.070,44.376,44.613,44.753,44.830,44.907,45.024,45.167,45.282,
-45.327,45.326,45.369,45.539,45.819,46.091,46.236,46.257,46.278,46.403,46.581,46.628,46.404,45.968,45.532,45.268,
-45.158,45.042,44.805,44.490,44.232,44.106,44.048,43.937,43.719,43.446,43.200,43.010,42.843,42.663,42.472,42.297,
-42.144,41.977,41.751,41.451,41.117,40.820,40.618,40.536,40.565,40.681,40.861,41.079,41.305,41.515,41.720,41.961,
-42.284,42.702,43.202,43.781,44.453,45.223,46.033,46.781,47.390,47.857,48.209,48.417,48.383,48.039,47.441,46.756,
-46.134,45.638,45.305,45.233,45.546,46.223,47.012,47.569,47.724,47.583,47.353,47.092,46.671,45.993,45.181,44.516,
-44.174,44.068,43.962,43.713,43.353,42.966,42.558,42.089,41.591,41.193,40.974,40.851,40.654,40.319,39.969,39.776,
-39.783,39.900,40.078,40.424,41.089,42.055,43.092,43.964,44.662,45.393,46.329,47.397,48.335,48.937,49.218,49.333,
-49.394,49.402,49.340,49.284,49.354,49.581,49.851,50.003,49.978,49.840,49.663,49.439,49.580,49.369,49.111,48.861,
-48.666,48.477,48.168,47.642,46.912,46.086,45.290,44.611,44.076,43.655,43.263,42.784,42.108,41.174,39.997,38.678,
-37.402,36.402,35.863,35.811,36.085,36.445,36.742,36.999,37.322,37.749,38.178,38.448,38.465,38.253,37.912,37.540,
-37.213,36.982,36.870,36.848,36.839,36.779,36.662,36.534,36.441,36.393,36.370,36.363,36.376,36.394,36.357,36.185,
-35.842,35.373,34.878,34.444,34.107,33.867,33.735,33.742,33.889,34.079,34.118,33.821,33.128,32.150,31.095,30.148,
-29.407,28.890,28.568,28.378,28.211,27.956,27.550,27.015,26.413,25.767,25.033,24.137,23.041,21.763,20.340,18.813,
-17.233,15.678,14.224,12.892,11.647,10.473,9.487,8.969,9.244,10.468,12.468,14.764,16.803,18.240,19.087,19.592,
-19.955,20.112,19.772,18.677,16.864,14.698,12.646,10.995,9.732,8.654,7.589,6.540,5.655,5.102,4.959,5.188,
-5.671,6.242,6.708,6.913,6.814,6.537,6.318,6.400,6.975,8.221,10.338,13.434,17.308,21.359,24.791,27.012,
-27.906,27.758,26.952,25.749,24.295,22.743,21.287,20.125,19.447,19.477,20.399,22.138,24.190,25.807,26.477,26.288,
-25.788,25.473,25.393,25.246,24.782,24.055,23.304,22.685,22.167,21.637,21.042,20.395,19.715,19.011,18.306,17.621,
-16.922,16.138,15.253,14.345,13.497,12.674,11.756,10.701,9.633,8.710,7.936,7.164,6.326,5.597,5.260,5.416,
-5.885,6.423,6.987,7.721,8.703,9.762,10.602,11.066,11.241,11.318,11.383,11.385,11.243,10.930,10.475,9.916,
-9.295,8.662,8.035,7.347,6.475,5.349,4.018,2.621,1.294,.122,-.832,-1.528,-1.998,-2.388,-2.900,-3.650,
--4.580,-5.511,-6.284,-6.866,-7.340,-7.803,-8.287,-8.744,-9.115,-9.417,-9.751,-10.214,-10.778,-11.280,-11.577,-11.717,
--11.933,-12.425,-13.156,-13.890,-14.442,-14.857,-15.312,-15.864,-16.341,-16.534,-16.464,-16.439,-16.827,-17.768,-19.074,-20.375,
--21.349,-21.873,-22.040,-22.057,-22.110,-22.252,-22.426,-22.567,-22.689,-22.827,-22.919,-22.810,-22.433,-21.960,-21.705,-21.820,
--22.129,-22.305,-22.237,-22.134,-22.262,-22.592,-22.828,-22.766,-22.593,-22.736,-23.423,-24.456,-25.435,-26.164,-26.805,-27.640,
--28.757,-29.985,-31.070,-31.880,-32.439,-32.885,-33.426,-34.262,-35.427,-36.656,-37.484,-37.604,-37.133,-36.495,-35.981,-35.466,
--34.622,-33.409,-32.267,-31.735,-31.863,-32.060,-31.583,-30.207,-28.435,-27.061,-26.508,-26.560,-26.622,-26.219,-25.284,-24.092,
--22.993,-22.206,-21.762,-21.578,-21.543,-21.588,-21.700,-21.913,-22.266,-22.774,-23.410,-24.107,-24.771,-25.318,-25.716,-26.019,
--26.351,-26.832,-27.499,-28.280,-29.056,-29.744,-30.352,-30.940,-31.544,-32.138,-32.657,-33.068,-33.409,-33.753,-34.141,-34.554,
--34.941,-35.277,-35.581,-35.881,-36.180,-36.460,-36.714,-36.969,-37.262,-37.595,-37.934,-38.235,-38.484,-38.707,-38.943,-39.203,
--39.462,-39.690,-39.889,-40.111,-40.410,-40.771,-41.089,-41.259,-41.277,-41.268,-41.366,-41.585,-41.811,-41.952,-42.048,-42.220,
--42.509,-42.799,-42.936,-42.886,-42.762,-42.671,-42.601,-42.475,-42.296,-42.168,-42.174,-42.251,-42.259,-42.144,-41.998,-41.930,
--41.921,-41.840,-41.607,-41.289,-41.005,-40.779,-40.518,-40.147,-39.731,-39.435,-39.376,-39.535,-39.783,-39.963,-39.946,-39.661,
--39.138,-38.530,-38.055,-37.861,-37.924,-38.093,-38.225,-38.294,-38.362,-38.487,-38.653,-38.799,-38.886,-38.946,-39.053,-39.249,
--39.465,-39.516,-39.205,-38.482,-37.533,-36.690,-36.216,-36.134,-36.246,-36.304,-36.172,-35.844,-35.380,-34.843,-34.303,-33.841,
--33.502,-33.228,-32.874,-32.311,-31.517,-30.570,-29.542,-28.414,-27.118,-25.670,-24.244,-23.099,-22.385,-22.015,-21.728,-21.306,
--20.737,-20.175,-19.751,-19.415,-18.991,-18.345,-17.493,-16.544,-15.558,-14.514,-13.394,-12.257,-11.191,-10.197,-9.173,-8.026,
--6.782,-5.559,-4.440,-3.396,-2.354,-1.298,-.280,.663,1.554,2.428,3.241,3.902,4.387,4.827,5.420,6.270,
-7.297,8.315,9.189,9.919,10.593,11.298,12.060,12.863,13.685,14.520,15.373,16.244,17.113,17.938,18.673,19.294,
-19.827,20.341,20.905,21.544,22.238,22.958,23.699,24.483,25.322,26.180,26.979,27.643,28.147,28.515,28.792,29.005,
-29.167,29.304,29.459,29.671,29.942,30.232,30.504,30.755,31.020,31.337,31.726,32.187,32.720,33.316,33.946,34.555,
-35.077,35.469,35.731,35.911,36.063,36.213,36.332,36.376,36.355,36.355,36.459,36.633,36.730,36.654,36.539,36.728,
-37.492,38.731,39.980,40.748,40.882,40.610,40.251,39.894,39.367,38.461,37.142,35.533,33.735,31.693,29.238,26.238,
-22.738,19.043,15.707,13.412,12.689,13.625,15.757,18.279,20.461,21.960,22.831,23.308,23.573,23.698,23.702,23.606,
-23.421,23.136,22.748,22.315,21.937,21.676,21.495,21.285,20.964,20.535,20.051,19.534,18.957,18.308,17.650,17.085,
-16.658,16.299,15.891,15.371,14.782,14.195,13.628,13.029,12.357,11.645,10.978,10.413,9.939,9.502,9.071,8.647,
-8.229,7.799,7.338,6.857,6.403,6.026,5.738,5.503,5.265,4.988,4.677,4.370,4.093,3.822,3.500,3.089,
-2.623,2.175,1.787,1.422,1.015,.557,.114,-.247,-.529,-.793,-1.080,-1.366,-1.611,-1.819,-2.046,-2.343,
--2.716,-3.152,-3.647,-4.193,-4.747,-5.242,-5.658,-6.047,-6.479,-6.960,-7.431,-7.842,-8.195,-8.508,-8.757,-8.898,
--8.950,-9.012,-9.161,-9.362,-9.506,-9.543,-9.538,-9.577,-9.650,-9.672,-9.617,-9.571,-9.626,-9.764,-9.905,-10.051,
--10.310,-10.744,-11.244,-11.632,-11.863,-11.987,-11.854,-10.956,-8.826,-5.756,-3.038,-2.255,-4.060,-7.563,-10.932,-12.717,
--12.719,-11.772,-10.834,-10.315,-10.101,-9.975,-9.884,-9.870,-9.917,-9.953,-9.974,-10.050,-10.209,-10.357,-10.342,-10.114,
--9.776,-9.492,-9.361,-9.380,-9.482,-9.604,-9.709,-9.791,-9.872,-9.971,-10.074,-10.140,-10.142,-10.117,-10.130,-10.205,
--10.287,-10.304,-10.249,-10.185,-10.168,-10.173,-10.120,-9.964,-9.755,-9.614,-9.657,-9.934,-10.410,-10.984,-11.524,-11.925,
--12.160,-12.277,-12.345,-12.404,-12.462,-12.525,-12.606,-12.699,-12.770,-12.796,-12.806,-12.853,-12.947,-13.034,-13.056,-13.037,
--13.062,-13.174,-13.313,-13.376,-13.334,-13.257,-13.225,-13.241,-13.247,-13.217,-13.190,-13.205,-13.244,-13.253,-13.217,-13.179,
--13.177,-13.191,-13.173,-13.121,-13.084,-13.100,-13.143,-13.154,-13.120,-13.081,-13.082,-13.121,-13.176,-13.247,-13.355,-13.493,
--13.612,-13.676,-13.713,-13.787,-13.923,-14.077,-14.194,-14.268,-14.339,-14.434,-14.536,-14.622,-14.704,-14.815,-14.958,-15.097,
--15.197,-15.271,-15.361,-15.485,-15.623,-15.747,-15.856,-15.968,-16.083,-16.177,-16.233,-16.270,-16.329,-16.438,-16.591,-16.757,
--16.909,-17.044,-17.188,-17.380,-17.640,-17.941,-18.228,-18.464,-18.672,-18.912,-19.207,-19.520,-19.788,-20.000,-20.201,-20.439,
--20.714,-20.993,-21.254,-21.501,-21.737,-21.945,-22.123,-22.301,-22.517,-22.754,-22.952,-23.083,-23.206,-23.423,-23.763,-24.145,
--24.463,-24.697,-24.916,-25.186,-25.504,-25.826,-26.139,-26.469,-26.827,-27.170,-27.449,-27.666,-27.882,-28.150,-28.471,-28.808,
--29.137,-29.460,-29.784,-30.100,-30.397,-30.676,-30.950,-31.226,-31.504,-31.785,-32.065,-32.322,-32.526,-32.676,-32.820,-33.016,
--33.276,-33.556,-33.810,-34.040,-34.280,-34.533,-34.764,-34.958,-35.154,-35.419,-35.761,-36.113,-36.410,-36.665,-36.950,-37.310,
--37.707,-38.064,-38.341,-38.557,-38.738,-38.878,-38.965,-39.022,-39.107,-39.260,-39.466,-39.680,-39.869,-40.030,-40.158,-40.242,
--40.272,-40.266,-40.259,-40.276,-40.316,-40.375,-40.460,-40.576,-40.704,-40.809,-40.873,-40.911,-40.952,-41.006,-41.056,-41.088,
--41.102,-41.109,-41.111,-41.100,-41.078,-41.049,-41.002,-40.905,-40.740,-40.540,-40.366,-40.248,-40.140,-39.973,-39.741,-39.531,
--39.455,-39.528,-39.631,-39.575,-39.227,-38.587,-37.775,-36.960,-36.262,-35.690,-35.159,-34.577,-33.954,-33.402,-33.020,-32.771,
--32.509,-32.153,-31.815,-31.708,-31.893,-32.163,-32.218,-31.973,-31.647,-31.524,-31.630,-31.689,-31.427,-30.877,-30.367,-30.199,
--30.368,-30.586,-30.539,-30.117,-29.419,-28.624,-27.882,-27.280,-26.831,-26.455,-26.009,-25.392,-24.669,-24.062,-23.801,-23.934,
--24.286,-24.594,-24.695,-24.609,-24.452,-24.294,-24.078,-23.689,-23.080,-22.338,-21.633,-21.111,-20.846,-20.869,-21.181,-21.684,
--22.109,-22.116,-21.551,-20.650,-19.937,-19.842,-20.382,-21.205,-21.938,-22.476,-22.950,-23.461,-23.942,-24.261,-24.421,-24.583,
--24.900,-25.372,-25.881,-26.339,-26.757,-27.161,-27.512,-27.734,-27.821,-27.876,-28.001,-28.175,-28.250,-28.088,-27.702,-27.270,
--27.015,-27.041,-27.265,-27.479,-27.501,-27.299,-27.013,-26.858,-26.993,-27.463,-28.205,-29.109,-30.050,-30.907,-31.590,-32.068,
--32.353,-32.457,-32.363,-32.069,-31.634,-31.173,-30.754,-30.348,-29.878,-29.349,-28.878,-28.591,-28.485,-28.435,-28.329,-28.184,
--28.099,-28.127,-28.216,-28.292,-28.349,-28.438,-28.562,-28.646,-28.619,-28.511,-28.423,-28.410,-28.418,-28.365,-28.275,-28.289,
--28.526,-28.953,-29.399,-29.711,-29.890,-30.067,-30.360,-30.740,-31.025,-31.014,-30.656,-30.126,-29.739,-29.752,-30.188,-30.841,
--31.460,-31.939,-32.337,-32.721,-33.018,-33.053,-32.747,-32.246,-31.829,-31.682,-31.775,-31.973,-32.229,-32.635,-33.279,-34.089,
--34.867,-35.481,-35.988,-36.549,-37.226,-37.902,-38.406,-38.699,-38.902,-39.143,-39.412,-39.614,-39.744,-39.983,-40.573,-41.575,
--42.778,-43.843,-44.554,-44.951,-45.232,-45.559,-45.945,-46.300,-46.532,-46.609,-46.550,-46.396,-46.201,-46.028,-45.926,-45.886,
--45.846,-45.744,-45.571,-45.374,-45.200,-45.054,-44.905,-44.742,-44.585,-44.459,-44.338,-44.150,-43.838,-43.419,-42.970,-42.558,
--42.181,-41.788,-41.337,-40.837,-40.329,-39.849,-39.403,-38.992,-38.623,-38.308,-38.037,-37.774,-37.488,-37.170,-36.837,-36.497,
--36.140,-35.744,-35.296,-34.801,-34.277,-33.756,-33.278,-32.871,-32.535,-32.236,-31.932,-31.613,-31.304,-31.037,-30.816,-30.620,
--30.433,-30.251,-30.060,-29.811,-29.435,-28.910,-28.297,-27.712,-27.237,-26.865,-26.507,-26.078,-25.545,-24.939,-24.307,-23.679,
--23.057,-22.431,-21.776,-21.062,-20.281,-19.469,-18.708,-18.063,-17.518,-16.973,-16.321,-15.543,-14.718,-13.926,-13.156,-12.302,
--11.287,-10.165,-9.098,-8.220,-7.512,-6.836,-6.057,-5.157,-4.212,-3.295,-2.413,-1.532,-.658,.152,.854,1.483,
-2.147,2.945,3.893,4.919,5.926,6.859,7.718,8.537,9.343,10.154,10.985,11.849,12.749,13.661,14.552,15.403,
-16.231,17.077,17.972,18.908,19.850,20.768,21.661,22.544,23.419,24.269,25.083,25.885,26.727,27.640,28.600,29.541,
-30.407,31.204,31.995,32.842,33.752,34.671,35.521,36.257,36.892,37.477,38.058,38.638,39.180,39.647,40.044,40.418,
-40.821,41.258,41.670,41.986,42.184,42.316,42.477,42.732,43.071,43.422,43.704,43.877,43.970,44.053,44.186,44.363,
-44.507,44.530,44.429,44.317,44.351,44.586,44.924,45.199,45.341,45.435,45.602,45.831,45.944,45.763,45.298,44.760,
-44.363,44.138,43.932,43.601,43.168,42.790,42.586,42.532,42.503,42.413,42.271,42.129,42.000,41.843,41.636,41.415,
-41.249,41.163,41.109,41.007,40.816,40.568,40.346,40.226,40.238,40.361,40.553,40.782,41.028,41.282,41.542,41.807,
-42.091,42.406,42.772,43.225,43.823,44.621,45.594,46.607,47.459,48.009,48.250,48.261,48.104,47.786,47.326,46.822,
-46.412,46.146,45.961,45.799,45.747,45.981,46.552,47.251,47.748,47.881,47.764,47.599,47.396,46.949,46.107,45.019,
-44.058,43.504,43.317,43.232,43.020,42.638,42.145,41.596,41.038,40.587,40.390,40.470,40.652,40.688,40.496,40.213,
-40.030,39.985,39.980,39.975,40.116,40.604,41.476,42.552,43.626,44.675,45.821,47.111,48.364,49.294,49.765,49.895,
-49.912,49.942,49.963,49.942,49.938,50.046,50.259,50.436,50.431,50.239,49.980,49.761,49.580,49.698,49.437,49.133,
-48.836,48.563,48.242,47.771,47.130,46.398,45.681,45.029,44.442,43.914,43.437,42.970,42.413,41.658,40.660,39.455,
-38.130,36.788,35.542,34.516,33.799,33.403,33.268,33.332,33.587,34.043,34.647,35.258,35.712,35.923,35.921,35.802,
-35.668,35.595,35.628,35.770,35.960,36.093,36.083,35.931,35.722,35.557,35.484,35.477,35.485,35.479,35.452,35.393,
-35.267,35.029,34.673,34.254,33.861,33.563,33.382,33.321,33.385,33.565,33.781,33.865,33.637,33.019,32.102,31.084,
-30.148,29.394,28.843,28.477,28.242,28.050,27.797,27.427,26.958,26.439,25.887,25.268,24.537,23.673,22.662,21.475,
-20.091,18.562,17.025,15.626,14.397,13.228,11.987,10.699,9.622,9.131,9.477,10.587,12.077,13.468,14.469,15.106,
-15.582,15.998,16.176,15.761,14.529,12.622,10.504,8.661,7.304,6.309,5.419,4.507,3.691,3.209,3.202,3.591,
-4.149,4.676,5.107,5.464,5.740,5.878,5.873,5.873,6.135,6.882,8.207,10.105,12.550,15.453,18.541,21.339,
-23.347,24.310,24.317,23.665,22.646,21.450,20.207,19.075,18.257,18.001,18.552,20.025,22.213,24.513,26.170,26.754,
-26.454,25.880,25.523,25.392,25.143,24.517,23.589,22.635,21.835,21.167,20.533,19.905,19.309,18.738,18.139,17.477,
-16.757,15.978,15.122,14.204,13.301,12.473,11.661,10.727,9.624,8.484,7.468,6.570,5.632,4.598,3.684,3.225,
-3.357,3.907,4.621,5.433,6.437,7.615,8.702,9.383,9.599,9.590,9.637,9.798,9.931,9.910,9.755,9.550,
-9.302,8.930,8.375,7.663,6.862,5.988,4.998,3.857,2.587,1.278,.053,-.954,-1.659,-2.095,-2.433,-2.895,
--3.612,-4.544,-5.525,-6.392,-7.082,-7.640,-8.146,-8.633,-9.070,-9.404,-9.650,-9.911,-10.299,-10.797,-11.251,-11.523,
--11.669,-11.924,-12.463,-13.196,-13.841,-14.235,-14.530,-15.026,-15.812,-16.617,-17.054,-17.030,-16.879,-17.095,-17.923,-19.176,
--20.407,-21.236,-21.562,-21.536,-21.388,-21.257,-21.156,-21.045,-20.949,-20.958,-21.121,-21.343,-21.441,-21.324,-21.119,-21.060,
--21.247,-21.539,-21.720,-21.737,-21.750,-21.914,-22.181,-22.354,-22.338,-22.289,-22.462,-22.958,-23.648,-24.357,-25.082,-25.991,
--27.242,-28.833,-30.616,-32.405,-34.035,-35.374,-36.386,-37.207,-38.095,-39.208,-40.400,-41.282,-41.556,-41.274,-40.739,-40.132,
--39.317,-38.058,-36.433,-34.933,-34.081,-33.904,-33.824,-33.109,-31.492,-29.391,-27.567,-26.549,-26.299,-26.336,-26.141,-25.504,
--24.580,-23.687,-23.042,-22.629,-22.288,-21.916,-21.595,-21.527,-21.857,-22.539,-23.374,-24.164,-24.819,-25.347,-25.781,-26.133,
--26.424,-26.715,-27.089,-27.595,-28.211,-28.870,-29.512,-30.117,-30.697,-31.261,-31.793,-32.259,-32.641,-32.956,-33.249,-33.553,
--33.872,-34.192,-34.510,-34.843,-35.202,-35.573,-35.923,-36.241,-36.546,-36.859,-37.175,-37.463,-37.710,-37.943,-38.206,-38.518,
--38.845,-39.130,-39.336,-39.481,-39.630,-39.846,-40.139,-40.445,-40.675,-40.795,-40.862,-40.973,-41.163,-41.385,-41.576,-41.738,
--41.923,-42.134,-42.287,-42.298,-42.191,-42.090,-42.087,-42.137,-42.131,-42.034,-41.923,-41.878,-41.865,-41.785,-41.612,-41.440,
--41.366,-41.356,-41.279,-41.057,-40.755,-40.480,-40.237,-39.914,-39.429,-38.852,-38.368,-38.123,-38.124,-38.259,-38.387,-38.401,
--38.240,-37.917,-37.533,-37.243,-37.158,-37.262,-37.424,-37.508,-37.472,-37.386,-37.363,-37.469,-37.679,-37.920,-38.144,-38.386,
--38.717,-39.122,-39.420,-39.349,-38.789,-37.912,-37.092,-36.630,-36.544,-36.608,-36.592,-36.437,-36.233,-36.057,-35.887,-35.642,
--35.272,-34.775,-34.155,-33.390,-32.463,-31.406,-30.279,-29.114,-27.894,-26.610,-25.338,-24.239,-23.459,-22.998,-22.690,-22.307,
--21.732,-21.037,-20.399,-19.919,-19.528,-19.051,-18.364,-17.475,-16.476,-15.434,-14.362,-13.264,-12.182,-11.152,-10.153,-9.118,
--8.007,-6.858,-5.736,-4.655,-3.581,-2.493,-1.432,-.450,.463,1.367,2.292,3.184,3.970,4.656,5.343,6.127,
-7.005,7.883,8.677,9.383,10.065,10.783,11.555,12.371,13.215,14.074,14.937,15.798,16.655,17.493,18.273,18.948,
-19.502,19.976,20.452,21.000,21.650,22.389,23.178,23.973,24.741,25.471,26.173,26.845,27.459,27.973,28.373,28.691,
-28.978,29.261,29.534,29.791,30.043,30.303,30.565,30.810,31.043,31.307,31.650,32.074,32.535,32.993,33.441,33.892,
-34.327,34.691,34.945,35.121,35.305,35.547,35.801,35.963,35.997,36.023,36.249,36.770,37.427,37.894,37.947,37.699,
-37.532,37.775,38.410,39.094,39.473,39.475,39.327,39.285,39.377,39.376,38.977,37.983,36.365,34.193,31.532,28.398,
-24.782,20.789,16.794,13.493,11.679,11.814,13.695,16.508,19.283,21.400,22.771,23.631,24.206,24.553,24.641,24.492,
-24.206,23.878,23.532,23.150,22.738,22.339,21.993,21.682,21.348,20.948,20.485,19.990,19.471,18.909,18.290,17.660,
-17.105,16.683,16.366,16.051,15.646,15.135,14.559,13.956,13.316,12.623,11.901,11.217,10.628,10.125,9.651,9.165,
-8.675,8.222,7.821,7.443,7.044,6.615,6.192,5.831,5.546,5.300,5.034,4.733,4.440,4.196,3.977,3.692,
-3.278,2.779,2.318,1.970,1.688,1.354,.919,.456,.074,-.202,-.441,-.711,-1.002,-1.264,-1.491,-1.745,
--2.081,-2.503,-2.979,-3.497,-4.056,-4.628,-5.155,-5.608,-6.033,-6.501,-7.015,-7.501,-7.890,-8.190,-8.449,-8.674,
--8.824,-8.887,-8.930,-9.032,-9.186,-9.314,-9.368,-9.392,-9.447,-9.520,-9.544,-9.510,-9.499,-9.578,-9.715,-9.839,
--9.986,-10.283,-10.760,-11.237,-11.511,-11.627,-11.829,-12.120,-11.947,-10.573,-7.946,-5.174,-3.922,-5.101,-8.053,-11.028,
--12.528,-12.298,-11.175,-10.159,-9.674,-9.565,-9.552,-9.538,-9.549,-9.576,-9.580,-9.593,-9.713,-9.961,-10.195,-10.220,
--9.980,-9.613,-9.320,-9.199,-9.217,-9.286,-9.349,-9.398,-9.450,-9.526,-9.637,-9.756,-9.830,-9.829,-9.799,-9.828,
--9.945,-10.066,-10.071,-9.940,-9.787,-9.741,-9.799,-9.820,-9.672,-9.390,-9.186,-9.294,-9.792,-10.533,-11.247,-11.708,
--11.871,-11.867,-11.880,-11.998,-12.172,-12.307,-12.376,-12.436,-12.539,-12.656,-12.720,-12.715,-12.710,-12.771,-12.883,-12.970,
--12.996,-13.006,-13.055,-13.132,-13.166,-13.126,-13.065,-13.053,-13.094,-13.128,-13.111,-13.068,-13.045,-13.043,-13.021,-12.963,
--12.907,-12.898,-12.927,-12.945,-12.924,-12.885,-12.864,-12.862,-12.853,-12.828,-12.813,-12.830,-12.878,-12.946,-13.043,-13.181,
--13.332,-13.445,-13.496,-13.531,-13.621,-13.782,-13.960,-14.089,-14.165,-14.235,-14.333,-14.448,-14.558,-14.668,-14.799,-14.947,
--15.078,-15.170,-15.241,-15.323,-15.428,-15.539,-15.643,-15.752,-15.877,-16.002,-16.092,-16.137,-16.162,-16.207,-16.298,-16.433,
--16.596,-16.766,-16.923,-17.067,-17.229,-17.453,-17.744,-18.051,-18.313,-18.527,-18.749,-19.027,-19.339,-19.621,-19.843,-20.040,
--20.264,-20.529,-20.811,-21.092,-21.373,-21.648,-21.892,-22.090,-22.273,-22.483,-22.710,-22.892,-22.995,-23.081,-23.264,-23.586,
--23.973,-24.314,-24.577,-24.820,-25.106,-25.431,-25.752,-26.056,-26.372,-26.706,-27.020,-27.271,-27.470,-27.687,-27.974,-28.324,
--28.690,-29.039,-29.362,-29.663,-29.939,-30.199,-30.463,-30.747,-31.042,-31.330,-31.608,-31.881,-32.140,-32.358,-32.524,-32.676,
--32.864,-33.102,-33.350,-33.562,-33.746,-33.938,-34.157,-34.385,-34.610,-34.863,-35.178,-35.536,-35.869,-36.140,-36.396,-36.722,
--37.145,-37.595,-37.978,-38.258,-38.469,-38.648,-38.797,-38.913,-39.020,-39.162,-39.354,-39.563,-39.753,-39.918,-40.076,-40.220,
--40.319,-40.355,-40.355,-40.371,-40.428,-40.509,-40.588,-40.663,-40.754,-40.863,-40.966,-41.039,-41.088,-41.131,-41.175,-41.208,
--41.218,-41.212,-41.203,-41.193,-41.174,-41.150,-41.132,-41.113,-41.058,-40.933,-40.752,-40.579,-40.462,-40.381,-40.270,-40.094,
--39.903,-39.788,-39.787,-39.833,-39.789,-39.532,-39.021,-38.320,-37.567,-36.910,-36.397,-35.923,-35.304,-34.450,-33.496,-32.722,
--32.317,-32.225,-32.231,-32.200,-32.188,-32.297,-32.463,-32.464,-32.168,-31.724,-31.451,-31.511,-31.738,-31.812,-31.588,-31.229,
--31.008,-31.024,-31.116,-31.044,-30.692,-30.111,-29.420,-28.718,-28.069,-27.523,-27.084,-26.680,-26.195,-25.577,-24.906,-24.366,
--24.112,-24.164,-24.404,-24.661,-24.804,-24.786,-24.608,-24.279,-23.807,-23.216,-22.570,-21.957,-21.464,-21.177,-21.178,-21.498,
--22.014,-22.412,-22.337,-21.680,-20.742,-20.073,-20.062,-20.666,-21.509,-22.252,-22.820,-23.317,-23.781,-24.111,-24.236,-24.277,
--24.466,-24.914,-25.498,-26.018,-26.411,-26.790,-27.268,-27.805,-28.256,-28.541,-28.726,-28.913,-29.093,-29.120,-28.849,-28.285,
--27.602,-27.040,-26.759,-26.755,-26.886,-26.970,-26.907,-26.729,-26.575,-26.612,-26.964,-27.681,-28.725,-29.955,-31.142,-32.058,
--32.577,-32.722,-32.594,-32.282,-31.830,-31.280,-30.702,-30.157,-29.643,-29.122,-28.609,-28.203,-28.001,-27.988,-28.041,-28.044,
--27.994,-27.965,-28.000,-28.068,-28.118,-28.155,-28.216,-28.298,-28.354,-28.354,-28.331,-28.328,-28.310,-28.189,-27.961,-27.792,
--27.913,-28.404,-29.088,-29.662,-29.946,-30.011,-30.072,-30.275,-30.573,-30.778,-30.737,-30.464,-30.151,-30.055,-30.329,-30.908,
--31.554,-32.030,-32.262,-32.353,-32.432,-32.509,-32.482,-32.289,-32.020,-31.846,-31.865,-32.032,-32.268,-32.584,-33.079,-33.790,
--34.599,-35.319,-35.882,-36.392,-36.995,-37.689,-38.311,-38.711,-38.896,-39.001,-39.130,-39.280,-39.441,-39.732,-40.374,-41.479,
--42.873,-44.172,-45.046,-45.450,-45.605,-45.778,-46.087,-46.471,-46.808,-47.017,-47.076,-46.998,-46.816,-46.604,-46.452,-46.411,
--46.453,-46.489,-46.447,-46.315,-46.124,-45.901,-45.652,-45.386,-45.142,-44.963,-44.846,-44.724,-44.510,-44.175,-43.763,-43.353,
--42.985,-42.630,-42.226,-41.740,-41.189,-40.625,-40.100,-39.638,-39.242,-38.894,-38.571,-38.254,-37.937,-37.630,-37.340,-37.056,
--36.753,-36.410,-36.025,-35.602,-35.130,-34.602,-34.048,-33.540,-33.147,-32.865,-32.616,-32.320,-31.969,-31.624,-31.345,-31.123,
--30.911,-30.692,-30.503,-30.369,-30.229,-29.948,-29.438,-28.757,-28.083,-27.575,-27.246,-26.969,-26.596,-26.072,-25.451,-24.812,
--24.186,-23.551,-22.882,-22.183,-21.471,-20.749,-20.008,-19.263,-18.554,-17.902,-17.274,-16.605,-15.871,-15.121,-14.409,-13.693,
--12.826,-11.689,-10.336,-9.004,-7.943,-7.218,-6.679,-6.108,-5.399,-4.600,-3.805,-3.046,-2.277,-1.461,-.617,.206,
-1.003,1.825,2.727,3.703,4.694,5.636,6.509,7.336,8.146,8.959,9.785,10.642,11.541,12.467,13.383,14.256,
-15.092,15.927,16.795,17.694,18.592,19.464,20.324,21.208,22.139,23.092,24.014,24.867,25.667,26.470,27.335,28.269,
-29.230,30.160,31.038,31.891,32.762,33.662,34.553,35.374,36.094,36.730,37.319,37.877,38.378,38.788,39.106,39.381,
-39.674,40.011,40.370,40.699,40.965,41.173,41.355,41.553,41.791,42.074,42.377,42.656,42.872,43.024,43.163,43.353,
-43.612,43.865,43.989,43.924,43.753,43.654,43.762,44.049,44.365,44.582,44.708,44.836,44.997,45.085,44.950,44.559,
-44.047,43.590,43.238,42.897,42.460,41.945,41.488,41.206,41.101,41.082,41.071,41.049,41.027,40.984,40.876,40.690,
-40.471,40.293,40.191,40.141,40.091,40.011,39.918,39.855,39.865,39.964,40.132,40.333,40.549,40.786,41.069,41.405,
-41.771,42.119,42.416,42.683,43.015,43.548,44.377,45.457,46.573,47.439,47.869,47.877,47.625,47.270,46.878,46.477,
-46.139,45.953,45.919,45.911,45.803,45.636,45.593,45.788,46.108,46.308,46.274,46.126,46.027,45.924,45.556,44.749,
-43.677,42.757,42.292,42.210,42.173,41.900,41.363,40.719,40.142,39.747,39.609,39.758,40.106,40.446,40.595,40.552,
-40.470,40.472,40.501,40.414,40.201,40.061,40.232,40.787,41.624,42.657,43.935,45.526,47.286,48.836,49.817,50.183,
-50.214,50.248,50.409,50.598,50.705,50.752,50.831,50.944,50.977,50.824,50.517,50.188,49.924,49.698,49.592,49.117,
-48.588,48.114,47.743,47.401,46.981,46.453,45.876,45.310,44.752,44.178,43.593,43.018,42.423,41.709,40.791,39.683,
-38.487,37.288,36.089,34.858,33.626,32.514,31.661,31.140,30.945,31.030,31.344,31.816,32.344,32.829,33.214,33.504,
-33.730,33.928,34.129,34.365,34.644,34.927,35.131,35.181,35.072,34.882,34.716,34.637,34.633,34.649,34.637,34.588,
-34.517,34.421,34.264,34.014,33.687,33.356,33.105,32.976,32.969,33.060,33.211,33.341,33.317,33.012,32.398,31.580,
-30.718,29.934,29.270,28.737,28.353,28.114,27.945,27.726,27.370,26.888,26.354,25.823,25.297,24.744,24.133,23.417,
-22.521,21.381,20.027,18.603,17.271,16.085,14.941,13.689,12.295,10.925,9.874,9.391,9.518,10.067,10.748,11.360,
-11.883,12.376,12.790,12.872,12.307,10.978,9.119,7.192,5.601,4.465,3.633,2.895,2.194,1.680,1.574,1.968,
-2.721,3.552,4.236,4.738,5.149,5.526,5.818,5.989,6.173,6.647,7.599,8.956,10.464,11.961,13.495,15.171,
-16.892,18.327,19.166,19.374,19.182,18.849,18.473,18.018,17.507,17.152,17.325,18.377,20.399,23.043,25.574,27.210,
-27.597,27.027,26.178,25.555,25.153,24.633,23.760,22.651,21.604,20.790,20.155,19.580,19.033,18.537,18.063,17.520,
-16.845,16.053,15.187,14.265,13.314,12.403,11.582,10.781,9.849,8.722,7.515,6.394,5.367,4.298,3.142,2.131,
-1.611,1.731,2.326,3.153,4.143,5.347,6.663,7.738,8.233,8.167,7.922,7.871,8.063,8.277,8.335,8.285,
-8.272,8.305,8.222,7.863,7.236,6.490,5.749,5.003,4.134,3.042,1.754,.446,-.636,-1.321,-1.642,-1.837,
--2.204,-2.915,-3.922,-5.027,-6.027,-6.822,-7.425,-7.910,-8.348,-8.763,-9.140,-9.477,-9.826,-10.248,-10.726,-11.144,
--11.403,-11.572,-11.859,-12.388,-13.025,-13.473,-13.604,-13.656,-14.034,-14.905,-15.986,-16.789,-17.075,-17.076,-17.274,-17.968,
--19.053,-20.147,-20.912,-21.265,-21.332,-21.276,-21.155,-20.943,-20.639,-20.338,-20.185,-20.239,-20.413,-20.552,-20.586,-20.584,
--20.659,-20.835,-21.026,-21.152,-21.247,-21.408,-21.664,-21.925,-22.079,-22.125,-22.174,-22.340,-22.651,-23.094,-23.702,-24.552,
--25.691,-27.088,-28.698,-30.521,-32.554,-34.664,-36.584,-38.101,-39.269,-40.383,-41.679,-43.069,-44.179,-44.682,-44.563,-44.049,
--43.317,-42.318,-40.932,-39.244,-37.618,-36.431,-35.729,-35.153,-34.199,-32.606,-30.543,-28.492,-26.930,-26.061,-25.729,-25.570,
--25.268,-24.750,-24.159,-23.651,-23.216,-22.723,-22.125,-21.606,-21.475,-21.897,-22.742,-23.693,-24.490,-25.071,-25.502,-25.833,
--26.059,-26.193,-26.332,-26.612,-27.111,-27.802,-28.584,-29.359,-30.064,-30.673,-31.179,-31.592,-31.932,-32.222,-32.489,-32.760,
--33.051,-33.359,-33.662,-33.946,-34.220,-34.515,-34.848,-35.210,-35.579,-35.939,-36.276,-36.577,-36.839,-37.091,-37.386,-37.758,
--38.175,-38.557,-38.828,-38.972,-39.036,-39.099,-39.228,-39.457,-39.767,-40.096,-40.373,-40.573,-40.728,-40.889,-41.073,-41.262,
--41.434,-41.584,-41.695,-41.729,-41.667,-41.558,-41.502,-41.554,-41.671,-41.757,-41.768,-41.733,-41.682,-41.577,-41.368,-41.086,
--40.848,-40.734,-40.688,-40.577,-40.347,-40.077,-39.871,-39.709,-39.449,-38.980,-38.354,-37.752,-37.334,-37.148,-37.139,-37.215,
--37.284,-37.265,-37.113,-36.872,-36.660,-36.590,-36.678,-36.820,-36.877,-36.787,-36.618,-36.520,-36.607,-36.868,-37.191,-37.479,
--37.761,-38.155,-38.688,-39.168,-39.279,-38.854,-38.071,-37.329,-36.930,-36.852,-36.848,-36.733,-36.555,-36.488,-36.599,-36.752,
--36.703,-36.275,-35.442,-34.290,-32.961,-31.605,-30.338,-29.196,-28.123,-27.042,-25.949,-24.950,-24.182,-23.687,-23.355,-22.987,
--22.433,-21.695,-20.915,-20.257,-19.773,-19.368,-18.881,-18.203,-17.337,-16.352,-15.315,-14.261,-13.215,-12.198,-11.208,-10.208,
--9.157,-8.053,-6.935,-5.827,-4.719,-3.600,-2.514,-1.524,-.634,.237,1.175,2.169,3.125,3.983,4.792,5.651,
-6.577,7.475,8.239,8.869,9.473,10.152,10.925,11.747,12.584,13.438,14.314,15.199,16.074,16.931,17.758,18.525,
-19.190,19.749,20.250,20.757,21.317,21.946,22.644,23.393,24.152,24.872,25.538,26.177,26.813,27.417,27.925,28.320,
-28.661,29.035,29.452,29.844,30.140,30.348,30.538,30.765,31.030,31.319,31.643,32.011,32.388,32.700,32.916,33.096,
-33.331,33.645,33.982,34.287,34.585,34.945,35.354,35.684,35.817,35.828,36.000,36.604,37.616,38.653,39.229,39.135,
-38.601,38.091,37.929,38.082,38.289,38.358,38.338,38.427,38.750,39.220,39.589,39.572,38.938,37.557,35.404,32.530,
-28.999,24.856,20.260,15.710,12.113,10.445,11.150,13.759,17.113,20.070,22.118,23.427,24.408,25.247,25.823,25.950,
-25.630,25.067,24.494,24.027,23.644,23.269,22.851,22.383,21.888,21.395,20.923,20.480,20.058,19.630,19.153,18.591,
-17.952,17.315,16.787,16.416,16.144,15.845,15.426,14.886,14.278,13.640,12.969,12.266,11.576,10.953,10.410,9.894,
-9.352,8.794,8.287,7.889,7.577,7.262,6.870,6.409,5.956,5.582,5.284,5.001,4.696,4.399,4.164,3.986,
-3.773,3.445,3.027,2.637,2.359,2.140,1.855,1.447,1.001,.637,.381,.144,-.158,-.503,-.815,-1.079,
--1.371,-1.772,-2.280,-2.828,-3.374,-3.928,-4.497,-5.046,-5.535,-5.982,-6.446,-6.947,-7.427,-7.815,-8.098,-8.323,
--8.524,-8.687,-8.798,-8.885,-8.991,-9.112,-9.206,-9.257,-9.306,-9.385,-9.458,-9.466,-9.424,-9.429,-9.537,-9.688,
--9.799,-9.919,-10.202,-10.689,-11.190,-11.480,-11.617,-11.900,-12.414,-12.652,-11.833,-9.769,-7.387,-6.200,-7.070,-9.414,
--11.666,-12.542,-11.932,-10.688,-9.694,-9.225,-9.054,-8.941,-8.881,-8.951,-9.106,-9.226,-9.291,-9.413,-9.652,-9.897,
--9.959,-9.779,-9.481,-9.242,-9.127,-9.089,-9.065,-9.045,-9.044,-9.062,-9.104,-9.191,-9.338,-9.507,-9.638,-9.722,
--9.817,-9.958,-10.069,-10.018,-9.774,-9.492,-9.384,-9.507,-9.686,-9.681,-9.444,-9.204,-9.284,-9.825,-10.649,-11.382,
--11.728,-11.678,-11.487,-11.450,-11.668,-12.006,-12.258,-12.350,-12.375,-12.451,-12.583,-12.669,-12.649,-12.581,-12.579,-12.677,
--12.802,-12.874,-12.893,-12.913,-12.953,-12.973,-12.942,-12.894,-12.893,-12.943,-12.987,-12.973,-12.916,-12.865,-12.833,-12.785,
--12.696,-12.601,-12.559,-12.586,-12.632,-12.640,-12.598,-12.538,-12.494,-12.480,-12.495,-12.535,-12.590,-12.653,-12.731,-12.846,
--13.003,-13.162,-13.266,-13.307,-13.347,-13.456,-13.638,-13.822,-13.942,-14.000,-14.054,-14.146,-14.269,-14.404,-14.550,-14.714,
--14.880,-15.015,-15.104,-15.170,-15.242,-15.327,-15.413,-15.503,-15.616,-15.755,-15.889,-15.981,-16.027,-16.057,-16.103,-16.173,
--16.269,-16.404,-16.575,-16.754,-16.903,-17.030,-17.196,-17.452,-17.773,-18.086,-18.351,-18.599,-18.881,-19.193,-19.481,-19.713,
--19.915,-20.135,-20.388,-20.651,-20.913,-21.192,-21.490,-21.774,-22.008,-22.200,-22.395,-22.605,-22.793,-22.923,-23.036,-23.219,
--23.515,-23.875,-24.209,-24.488,-24.751,-25.041,-25.348,-25.645,-25.930,-26.234,-26.558,-26.862,-27.111,-27.324,-27.564,-27.869,
--28.226,-28.593,-28.943,-29.262,-29.538,-29.768,-29.978,-30.216,-30.507,-30.824,-31.123,-31.389,-31.641,-31.894,-32.127,-32.321,
--32.495,-32.691,-32.921,-33.151,-33.343,-33.504,-33.675,-33.883,-34.124,-34.392,-34.698,-35.045,-35.389,-35.669,-35.882,-36.109,
--36.441,-36.885,-37.353,-37.754,-38.062,-38.308,-38.519,-38.693,-38.836,-38.987,-39.184,-39.414,-39.625,-39.789,-39.934,-40.102,
--40.286,-40.429,-40.493,-40.506,-40.532,-40.606,-40.703,-40.786,-40.847,-40.908,-40.982,-41.058,-41.121,-41.169,-41.212,-41.249,
--41.269,-41.268,-41.263,-41.266,-41.271,-41.259,-41.232,-41.214,-41.216,-41.206,-41.131,-40.981,-40.810,-40.684,-40.619,-40.561,
--40.448,-40.281,-40.113,-39.996,-39.935,-39.880,-39.752,-39.468,-38.979,-38.318,-37.622,-37.039,-36.594,-36.141,-35.511,-34.712,
--33.970,-33.521,-33.376,-33.313,-33.124,-32.827,-32.595,-32.492,-32.363,-32.022,-31.521,-31.159,-31.195,-31.576,-31.983,-32.141,
--32.036,-31.846,-31.707,-31.589,-31.389,-31.067,-30.662,-30.205,-29.670,-29.039,-28.375,-27.794,-27.354,-26.986,-26.553,-25.972,
--25.305,-24.719,-24.376,-24.322,-24.452,-24.582,-24.558,-24.336,-23.968,-23.535,-23.083,-22.623,-22.166,-21.769,-21.530,-21.551,
--21.849,-22.283,-22.559,-22.387,-21.716,-20.842,-20.244,-20.251,-20.827,-21.668,-22.484,-23.165,-23.707,-24.059,-24.141,-24.004,
--23.904,-24.118,-24.690,-25.391,-25.958,-26.348,-26.739,-27.289,-27.961,-28.571,-28.997,-29.275,-29.503,-29.703,-29.777,-29.608,
--29.164,-28.524,-27.835,-27.245,-26.854,-26.677,-26.641,-26.632,-26.577,-26.492,-26.485,-26.716,-27.329,-28.371,-29.710,-31.041,
--32.017,-32.432,-32.327,-31.908,-31.382,-30.848,-30.324,-29.812,-29.329,-28.870,-28.416,-27.981,-27.643,-27.485,-27.513,-27.636,
--27.754,-27.834,-27.892,-27.934,-27.931,-27.879,-27.825,-27.833,-27.918,-28.039,-28.163,-28.284,-28.366,-28.309,-28.033,-27.633,
--27.397,-27.614,-28.310,-29.189,-29.854,-30.116,-30.096,-30.063,-30.186,-30.430,-30.641,-30.705,-30.637,-30.561,-30.625,-30.901,
--31.328,-31.733,-31.951,-31.944,-31.823,-31.742,-31.762,-31.833,-31.882,-31.908,-31.969,-32.100,-32.289,-32.530,-32.880,-33.413,
--34.116,-34.864,-35.527,-36.100,-36.691,-37.375,-38.076,-38.624,-38.921,-39.021,-39.057,-39.109,-39.212,-39.459,-40.055,-41.166,
--42.707,-44.296,-45.482,-46.059,-46.180,-46.184,-46.321,-46.621,-46.969,-47.257,-47.444,-47.526,-47.497,-47.368,-47.198,-47.068,
--47.024,-47.036,-47.041,-46.991,-46.874,-46.690,-46.440,-46.135,-45.822,-45.560,-45.371,-45.212,-45.011,-44.729,-44.392,-44.053,
--43.735,-43.411,-43.028,-42.559,-42.021,-41.456,-40.905,-40.397,-39.945,-39.546,-39.175,-38.796,-38.400,-38.018,-37.697,-37.452,
--37.236,-36.979,-36.649,-36.267,-35.868,-35.449,-34.981,-34.471,-33.991,-33.617,-33.350,-33.102,-32.793,-32.433,-32.108,-31.873,
--31.677,-31.424,-31.085,-30.746,-30.512,-30.373,-30.189,-29.816,-29.253,-28.649,-28.172,-27.857,-27.587,-27.209,-26.666,-26.018,
--25.357,-24.717,-24.063,-23.362,-22.628,-21.905,-21.212,-20.529,-19.829,-19.119,-18.413,-17.699,-16.933,-16.108,-15.290,-14.565,
--13.920,-13.200,-12.228,-10.987,-9.677,-8.565,-7.773,-7.193,-6.615,-5.918,-5.136,-4.367,-3.638,-2.892,-2.067,-1.168,
--.250,.654,1.560,2.495,3.450,4.381,5.255,6.079,6.887,7.701,8.527,9.370,10.250,11.173,12.116,13.040,
-13.927,14.800,15.697,16.617,17.517,18.352,19.129,19.910,20.763,21.699,22.676,23.631,24.532,25.385,26.224,27.086,
-27.999,28.962,29.946,30.905,31.807,32.653,33.468,34.263,35.023,35.725,36.354,36.915,37.403,37.804,38.114,38.367,
-38.622,38.921,39.256,39.587,39.885,40.154,40.415,40.669,40.900,41.101,41.296,41.511,41.743,41.952,42.115,42.267,
-42.490,42.835,43.253,43.593,43.712,43.594,43.374,43.246,43.318,43.546,43.799,43.974,44.057,44.076,44.029,43.876,
-43.596,43.224,42.825,42.417,41.968,41.453,40.911,40.432,40.090,39.893,39.806,39.795,39.841,39.913,39.955,39.915,
-39.784,39.602,39.421,39.273,39.174,39.129,39.138,39.188,39.268,39.380,39.535,39.739,39.976,40.234,40.522,40.870,
-41.281,41.710,42.078,42.334,42.510,42.727,43.139,43.844,44.794,45.777,46.518,46.847,46.804,46.574,46.326,46.099,
-45.859,45.619,45.458,45.405,45.363,45.193,44.883,44.578,44.421,44.381,44.304,44.109,43.896,43.788,43.719,43.447,
-42.830,42.036,41.424,41.192,41.170,40.986,40.423,39.598,38.837,38.412,38.414,38.781,39.369,39.994,40.486,40.786,
-40.985,41.219,41.492,41.643,41.521,41.180,40.870,40.819,41.071,41.572,42.371,43.641,45.433,47.448,49.133,50.075,
-50.328,50.312,50.427,50.746,51.075,51.241,51.265,51.269,51.285,51.223,51.001,50.658,50.300,49.966,49.592,49.078,
-48.441,47.757,47.192,46.826,46.582,46.321,45.963,45.508,44.973,44.355,43.669,42.974,42.316,41.648,40.837,39.797,
-38.587,37.368,36.249,35.193,34.096,32.935,31.820,30.911,30.294,29.951,29.812,29.825,29.967,30.221,30.564,30.970,
-31.418,31.883,32.338,32.768,33.177,33.566,33.913,34.171,34.296,34.287,34.192,34.082,34.013,33.993,33.990,33.962,
-33.894,33.803,33.706,33.586,33.406,33.157,32.887,32.667,32.544,32.513,32.538,32.572,32.547,32.377,32.004,31.457,
-30.847,30.270,29.736,29.202,28.674,28.243,27.991,27.865,27.695,27.334,26.788,26.196,25.699,25.333,25.035,24.704,
-24.246,23.577,22.651,21.500,20.240,19.003,17.843,16.706,15.486,14.121,12.659,11.258,10.121,9.402,9.128,9.205,
-9.495,9.891,10.305,10.583,10.482,9.791,8.500,6.854,5.212,3.831,2.768,1.952,1.316,.881,.750,1.021,
-1.703,2.662,3.667,4.520,5.174,5.707,6.183,6.571,6.844,7.139,7.729,8.765,10.060,11.218,11.996,12.536,
-13.168,14.016,14.860,15.398,15.593,15.703,15.969,16.357,16.631,16.689,16.783,17.413,18.985,21.488,24.399,26.880,
-28.209,28.189,27.252,26.120,25.266,24.640,23.898,22.846,21.659,20.661,19.997,19.551,19.138,18.693,18.242,17.770,
-17.194,16.463,15.611,14.699,13.744,12.755,11.785,10.893,10.030,9.052,7.880,6.614,5.425,4.349,3.267,2.129,
-1.135,.607,.685,1.226,2.013,3.000,4.240,5.595,6.653,7.035,6.783,6.352,6.198,6.396,6.684,6.824,
-6.842,6.908,7.079,7.203,7.094,6.727,6.252,5.816,5.414,4.875,4.007,2.766,1.342,.069,-.776,-1.168,
--1.353,-1.670,-2.325,-3.286,-4.363,-5.355,-6.144,-6.716,-7.138,-7.517,-7.942,-8.431,-8.943,-9.437,-9.905,-10.346,
--10.718,-10.989,-11.218,-11.553,-12.067,-12.617,-12.932,-12.895,-12.737,-12.891,-13.609,-14.722,-15.792,-16.507,-16.921,-17.347,
--18.032,-18.950,-19.877,-20.599,-21.059,-21.310,-21.397,-21.303,-21.010,-20.592,-20.205,-19.989,-19.963,-20.035,-20.113,-20.190,
--20.312,-20.482,-20.641,-20.747,-20.859,-21.088,-21.465,-21.870,-22.137,-22.210,-22.183,-22.182,-22.268,-22.463,-22.845,-23.531,
--24.548,-25.756,-26.981,-28.226,-29.707,-31.613,-33.837,-35.994,-37.757,-39.164,-40.556,-42.213,-44.036,-45.597,-46.486,-46.595,
--46.104,-45.254,-44.158,-42.829,-41.297,-39.686,-38.154,-36.808,-35.637,-34.506,-33.203,-31.555,-29.588,-27.598,-26.016,-25.123,
--24.846,-24.840,-24.775,-24.539,-24.180,-23.726,-23.139,-22.468,-21.953,-21.897,-22.394,-23.210,-23.990,-24.545,-24.945,-25.324,
--25.685,-25.916,-25.973,-25.999,-26.222,-26.760,-27.545,-28.407,-29.204,-29.874,-30.413,-30.842,-31.190,-31.495,-31.788,-32.089,
--32.417,-32.787,-33.183,-33.554,-33.842,-34.043,-34.218,-34.447,-34.765,-35.143,-35.527,-35.874,-36.175,-36.451,-36.745,-37.097,
--37.510,-37.925,-38.256,-38.460,-38.560,-38.623,-38.702,-38.824,-39.011,-39.284,-39.633,-39.998,-40.304,-40.516,-40.665,-40.802,
--40.948,-41.085,-41.183,-41.231,-41.226,-41.182,-41.128,-41.100,-41.121,-41.180,-41.257,-41.346,-41.438,-41.485,-41.404,-41.157,
--40.821,-40.534,-40.361,-40.227,-40.006,-39.677,-39.356,-39.160,-39.067,-38.923,-38.600,-38.108,-37.572,-37.114,-36.787,-36.594,
--36.522,-36.529,-36.531,-36.440,-36.249,-36.059,-36.001,-36.112,-36.293,-36.378,-36.277,-36.064,-35.929,-36.029,-36.352,-36.735,
--37.041,-37.304,-37.691,-38.273,-38.855,-39.084,-38.766,-38.074,-37.400,-37.014,-36.856,-36.689,-36.399,-36.122,-36.065,-36.259,
--36.483,-36.428,-35.889,-34.844,-33.423,-31.840,-30.328,-29.054,-28.035,-27.153,-26.273,-25.381,-24.586,-24.004,-23.620,-23.284,
--22.826,-22.185,-21.435,-20.718,-20.131,-19.664,-19.220,-18.689,-18.013,-17.199,-16.286,-15.307,-14.293,-13.276,-12.283,-11.302,
--10.287,-9.208,-8.079,-6.941,-5.809,-4.671,-3.544,-2.497,-1.585,-.762,.101,1.085,2.129,3.101,3.949,4.764,
-5.658,6.614,7.495,8.201,8.789,9.409,10.153,10.987,11.832,12.662,13.507,14.390,15.292,16.182,17.056,17.907,
-18.709,19.425,20.059,20.655,21.252,21.852,22.444,23.043,23.677,24.344,25.010,25.657,26.301,26.950,27.548,28.014,
-28.349,28.663,29.075,29.581,30.052,30.375,30.571,30.757,31.017,31.341,31.678,31.999,32.288,32.489,32.545,32.491,
-32.484,32.684,33.121,33.689,34.281,34.881,35.492,36.006,36.239,36.151,36.032,36.350,37.343,38.715,39.775,39.956,
-39.264,38.248,37.530,37.340,37.459,37.558,37.547,37.606,37.934,38.526,39.191,39.714,39.942,39.732,38.898,37.264,
-34.739,31.293,26.923,21.788,16.488,12.161,10.047,10.718,13.598,17.278,20.422,22.511,23.843,24.937,25.964,26.698,
-26.861,26.448,25.732,25.038,24.533,24.188,23.863,23.433,22.863,22.220,21.609,21.097,20.679,20.307,19.928,19.498,
-18.967,18.316,17.605,16.971,16.527,16.256,16.011,15.649,15.142,14.562,13.975,13.370,12.709,12.008,11.338,10.746,
-10.202,9.636,9.039,8.483,8.053,7.750,7.478,7.123,6.652,6.133,5.666,5.288,4.962,4.642,4.338,4.102,
-3.947,3.811,3.608,3.333,3.059,2.847,2.657,2.386,2.005,1.604,1.295,1.072,.819,.446,.000,-.400,
--.722,-1.062,-1.532,-2.128,-2.746,-3.305,-3.823,-4.360,-4.926,-5.471,-5.964,-6.429,-6.902,-7.360,-7.742,-8.012,
--8.198,-8.352,-8.508,-8.671,-8.836,-8.990,-9.110,-9.180,-9.228,-9.304,-9.417,-9.502,-9.494,-9.429,-9.418,-9.516,
--9.648,-9.719,-9.780,-10.007,-10.478,-11.040,-11.472,-11.771,-12.157,-12.677,-12.896,-12.185,-10.451,-8.550,-7.753,-8.664,
--10.625,-12.243,-12.549,-11.675,-10.477,-9.639,-9.203,-8.858,-8.473,-8.226,-8.301,-8.608,-8.895,-9.037,-9.125,-9.279,
--9.461,-9.532,-9.438,-9.274,-9.146,-9.059,-8.954,-8.818,-8.707,-8.656,-8.634,-8.616,-8.662,-8.861,-9.211,-9.591,
--9.877,-10.057,-10.185,-10.245,-10.129,-9.794,-9.404,-9.238,-9.434,-9.815,-10.035,-9.902,-9.577,-9.444,-9.768,-10.464,
--11.161,-11.505,-11.435,-11.204,-11.145,-11.397,-11.818,-12.154,-12.280,-12.280,-12.310,-12.419,-12.517,-12.514,-12.437,-12.394,
--12.449,-12.559,-12.648,-12.697,-12.746,-12.810,-12.848,-12.823,-12.763,-12.734,-12.758,-12.784,-12.755,-12.680,-12.611,-12.569,
--12.513,-12.404,-12.266,-12.176,-12.177,-12.238,-12.282,-12.267,-12.212,-12.172,-12.187,-12.260,-12.362,-12.454,-12.521,-12.582,
--12.681,-12.829,-12.986,-13.095,-13.148,-13.199,-13.310,-13.479,-13.641,-13.746,-13.807,-13.873,-13.974,-14.101,-14.240,-14.398,
--14.578,-14.754,-14.886,-14.964,-15.018,-15.078,-15.150,-15.224,-15.309,-15.430,-15.583,-15.728,-15.828,-15.888,-15.944,-16.010,
--16.071,-16.125,-16.209,-16.356,-16.542,-16.704,-16.815,-16.932,-17.136,-17.437,-17.772,-18.078,-18.360,-18.659,-18.977,-19.271,
--19.512,-19.726,-19.960,-20.218,-20.470,-20.707,-20.962,-21.264,-21.582,-21.859,-22.075,-22.266,-22.473,-22.691,-22.887,-23.064,
--23.264,-23.520,-23.811,-24.097,-24.366,-24.641,-24.934,-25.226,-25.500,-25.768,-26.057,-26.364,-26.658,-26.919,-27.176,-27.470,
--27.807,-28.159,-28.497,-28.816,-29.112,-29.365,-29.562,-29.739,-29.962,-30.258,-30.587,-30.882,-31.126,-31.356,-31.600,-31.845,
--32.061,-32.255,-32.465,-32.708,-32.958,-33.183,-33.386,-33.601,-33.848,-34.121,-34.414,-34.732,-35.060,-35.352,-35.565,-35.724,
--35.924,-36.243,-36.665,-37.104,-37.489,-37.816,-38.110,-38.366,-38.567,-38.727,-38.906,-39.143,-39.406,-39.622,-39.766,-39.892,
--40.061,-40.271,-40.454,-40.553,-40.585,-40.610,-40.667,-40.748,-40.826,-40.893,-40.958,-41.024,-41.080,-41.123,-41.163,-41.207,
--41.245,-41.262,-41.262,-41.272,-41.306,-41.347,-41.361,-41.341,-41.320,-41.328,-41.348,-41.325,-41.229,-41.095,-40.986,-40.930,
--40.887,-40.792,-40.619,-40.392,-40.158,-39.959,-39.829,-39.770,-39.712,-39.511,-39.049,-38.358,-37.646,-37.123,-36.825,-36.605,
--36.316,-35.972,-35.681,-35.450,-35.120,-34.547,-33.800,-33.123,-32.672,-32.352,-31.953,-31.452,-31.086,-31.121,-31.551,-32.090,
--32.437,-32.505,-32.404,-32.242,-32.021,-31.713,-31.364,-31.058,-30.797,-30.474,-29.979,-29.344,-28.725,-28.268,-27.968,-27.673,
--27.216,-26.551,-25.801,-25.164,-24.771,-24.590,-24.463,-24.242,-23.904,-23.541,-23.244,-23.005,-22.745,-22.419,-22.091,-21.895,
--21.929,-22.181,-22.499,-22.655,-22.455,-21.875,-21.134,-20.595,-20.548,-21.034,-21.858,-22.756,-23.530,-24.057,-24.250,-24.100,
--23.773,-23.581,-23.777,-24.348,-25.041,-25.611,-26.038,-26.486,-27.082,-27.771,-28.386,-28.829,-29.134,-29.389,-29.627,-29.806,
--29.866,-29.757,-29.446,-28.926,-28.259,-27.589,-27.071,-26.776,-26.655,-26.604,-26.562,-26.564,-26.737,-27.230,-28.115,-29.282,
--30.434,-31.217,-31.425,-31.125,-30.578,-30.035,-29.603,-29.255,-28.936,-28.626,-28.316,-27.991,-27.656,-27.365,-27.198,-27.194,
--27.318,-27.496,-27.669,-27.789,-27.817,-27.735,-27.591,-27.492,-27.525,-27.690,-27.918,-28.145,-28.340,-28.447,-28.366,-28.048,
--27.631,-27.431,-27.723,-28.484,-29.377,-30.003,-30.203,-30.123,-30.037,-30.112,-30.328,-30.575,-30.763,-30.872,-30.929,-30.982,
--31.070,-31.194,-31.298,-31.309,-31.212,-31.088,-31.056,-31.179,-31.420,-31.697,-31.952,-32.178,-32.387,-32.599,-32.854,-33.216,
--33.720,-34.325,-34.944,-35.534,-36.151,-36.877,-37.696,-38.463,-39.014,-39.293,-39.375,-39.367,-39.348,-39.422,-39.791,-40.691,
--42.169,-43.939,-45.498,-46.455,-46.788,-46.798,-46.826,-47.015,-47.296,-47.546,-47.725,-47.859,-47.960,-48.005,-47.975,-47.894,
--47.804,-47.723,-47.638,-47.534,-47.415,-47.275,-47.089,-46.830,-46.516,-46.209,-45.956,-45.740,-45.496,-45.186,-44.843,-44.536,
--44.291,-44.053,-43.739,-43.311,-42.801,-42.275,-41.769,-41.281,-40.798,-40.322,-39.865,-39.421,-38.974,-38.530,-38.134,-37.837,
--37.629,-37.426,-37.129,-36.719,-36.267,-35.860,-35.517,-35.181,-34.811,-34.434,-34.115,-33.864,-33.618,-33.318,-32.990,-32.720,
--32.541,-32.364,-32.050,-31.560,-31.012,-30.581,-30.336,-30.183,-29.960,-29.595,-29.155,-28.762,-28.460,-28.177,-27.794,-27.257,
--26.612,-25.939,-25.281,-24.618,-23.916,-23.180,-22.450,-21.754,-21.078,-20.397,-19.702,-18.995,-18.253,-17.430,-16.517,-15.594,
--14.787,-14.142,-13.549,-12.818,-11.853,-10.753,-9.718,-8.863,-8.130,-7.377,-6.529,-5.638,-4.795,-4.017,-3.241,-2.399,
--1.492,-.572,.326,1.216,2.123,3.041,3.938,4.795,5.625,6.456,7.297,8.143,8.997,9.877,10.789,11.710,
-12.612,13.493,14.392,15.338,16.302,17.215,18.036,18.798,19.583,20.443,21.359,22.283,23.193,24.105,25.031,25.952,
-26.848,27.738,28.674,29.671,30.670,31.580,32.360,33.057,33.751,34.470,35.173,35.793,36.296,36.689,36.999,37.263,
-37.525,37.825,38.173,38.536,38.868,39.163,39.454,39.771,40.096,40.380,40.596,40.764,40.929,41.099,41.245,41.342,
-41.433,41.612,41.961,42.458,42.959,43.262,43.242,42.948,42.590,42.409,42.514,42.818,43.115,43.233,43.141,42.929,
-42.713,42.535,42.356,42.096,41.705,41.191,40.620,40.073,39.609,39.245,38.985,38.838,38.813,38.887,38.990,39.040,
-38.997,38.877,38.719,38.551,38.390,38.270,38.236,38.306,38.446,38.606,38.770,38.970,39.239,39.574,39.947,40.347,
-40.780,41.236,41.665,42.003,42.233,42.406,42.610,42.925,43.396,44.004,44.655,45.205,45.547,45.693,45.749,45.795,
-45.805,45.694,45.453,45.176,44.952,44.739,44.418,43.952,43.466,43.123,42.944,42.804,42.597,42.360,42.184,42.045,
-41.795,41.357,40.866,40.542,40.419,40.243,39.703,38.761,37.735,37.071,37.039,37.618,38.589,39.678,40.649,41.370,
-41.866,42.282,42.737,43.176,43.409,43.323,43.044,42.835,42.859,43.075,43.415,44.001,45.081,46.715,48.544,49.981,
-50.662,50.734,50.664,50.800,51.118,51.364,51.389,51.272,51.171,51.113,50.992,50.724,50.351,49.966,49.571,49.078,
-48.293,47.665,47.017,46.509,46.206,46.022,45.808,45.472,44.998,44.392,43.667,42.876,42.115,41.439,40.782,39.984,
-38.945,37.728,36.501,35.384,34.360,33.350,32.342,31.423,30.694,30.175,29.805,29.517,29.298,29.180,29.190,29.336,
-29.607,29.983,30.444,30.967,31.529,32.105,32.653,33.119,33.460,33.666,33.757,33.765,33.722,33.657,33.590,33.523,
-33.438,33.326,33.203,33.091,32.984,32.848,32.656,32.432,32.230,32.083,31.985,31.900,31.795,31.631,31.361,30.972,
-30.528,30.133,29.827,29.524,29.100,28.561,28.073,27.805,27.733,27.630,27.282,26.696,26.096,25.710,25.585,25.575,
-25.473,25.139,24.539,23.712,22.736,21.689,20.630,19.577,18.511,17.386,16.136,14.716,13.159,11.618,10.321,9.446,
-9.019,8.927,9.014,9.133,9.130,8.829,8.106,6.987,5.654,4.323,3.121,2.095,1.286,.774,.629,.852,
-1.395,2.199,3.185,4.223,5.161,5.918,6.532,7.070,7.537,7.921,8.327,8.974,9.980,11.150,12.092,12.587,
-12.808,13.111,13.623,14.109,14.292,14.225,14.268,14.685,15.355,15.937,16.306,16.787,17.920,20.003,22.798,25.610,
-27.636,28.377,27.885,26.712,25.538,24.715,24.105,23.342,22.277,21.132,20.257,19.774,19.504,19.196,18.755,18.225,
-17.642,16.970,16.186,15.328,14.439,13.499,12.477,11.411,10.380,9.379,8.290,7.034,5.698,4.463,3.391,2.374,
-1.331,.404,-.132,-.143,.251,.871,1.710,2.853,4.182,5.271,5.696,5.440,4.943,4.700,4.852,5.171,
-5.392,5.481,5.593,5.824,6.095,6.246,6.210,6.057,5.902,5.760,5.503,4.928,3.915,2.565,1.184,.099,
--.558,-.930,-1.292,-1.840,-2.591,-3.438,-4.252,-4.945,-5.479,-5.892,-6.297,-6.815,-7.474,-8.179,-8.803,-9.297,
--9.706,-10.076,-10.412,-10.725,-11.080,-11.533,-12.014,-12.332,-12.358,-12.212,-12.215,-12.642,-13.500,-14.550,-15.541,-16.395,
--17.196,-18.036,-18.902,-19.705,-20.375,-20.889,-21.222,-21.314,-21.111,-20.668,-20.174,-19.845,-19.763,-19.831,-19.891,-19.896,
--19.935,-20.094,-20.328,-20.519,-20.648,-20.860,-21.308,-21.940,-22.493,-22.719,-22.601,-22.329,-22.108,-22.032,-22.162,-22.617,
--23.493,-24.690,-25.901,-26.891,-27.769,-28.931,-30.671,-32.847,-34.988,-36.733,-38.163,-39.690,-41.624,-43.852,-45.903,-47.282,
--47.769,-47.462,-46.629,-45.530,-44.306,-42.947,-41.359,-39.509,-37.554,-35.809,-34.497,-33.490,-32.337,-30.639,-28.455,-26.330,
--24.886,-24.337,-24.390,-24.570,-24.580,-24.373,-23.986,-23.434,-22.814,-22.387,-22.430,-22.960,-23.665,-24.185,-24.449,-24.696,
--25.153,-25.756,-26.226,-26.396,-26.402,-26.545,-27.005,-27.708,-28.447,-29.070,-29.556,-29.959,-30.333,-30.711,-31.102,-31.497,
--31.880,-32.260,-32.665,-33.104,-33.522,-33.837,-34.030,-34.175,-34.381,-34.695,-35.071,-35.436,-35.753,-36.038,-36.323,-36.626,
--36.951,-37.279,-37.572,-37.797,-37.959,-38.106,-38.285,-38.486,-38.661,-38.794,-38.937,-39.161,-39.473,-39.803,-40.073,-40.265,
--40.421,-40.574,-40.712,-40.804,-40.838,-40.836,-40.825,-40.816,-40.796,-40.759,-40.722,-40.736,-40.849,-41.051,-41.238,-41.273,
--41.096,-40.784,-40.478,-40.242,-40.007,-39.666,-39.223,-38.802,-38.524,-38.377,-38.244,-38.027,-37.724,-37.391,-37.053,-36.705,
--36.364,-36.087,-35.910,-35.795,-35.663,-35.495,-35.382,-35.447,-35.706,-36.011,-36.144,-35.992,-35.664,-35.433,-35.522,-35.925,
--36.421,-36.797,-37.061,-37.412,-37.978,-38.600,-38.927,-38.740,-38.168,-37.548,-37.097,-36.748,-36.315,-35.760,-35.258,-34.994,
--34.954,-34.930,-34.686,-34.105,-33.186,-32.002,-30.678,-29.391,-28.295,-27.420,-26.656,-25.879,-25.074,-24.339,-23.765,-23.323,
--22.897,-22.390,-21.803,-21.212,-20.682,-20.216,-19.753,-19.226,-18.601,-17.889,-17.113,-16.276,-15.363,-14.373,-13.342,-12.321,
--11.316,-10.284,-9.184,-8.030,-6.873,-5.741,-4.628,-3.540,-2.527,-1.625,-.781,.120,1.133,2.178,3.118,3.920,
-4.690,5.534,6.428,7.248,7.928,8.555,9.267,10.108,11.002,11.868,12.706,13.566,14.462,15.357,16.221,17.068,
-17.916,18.743,19.520,20.258,20.994,21.735,22.431,23.036,23.575,24.116,24.698,25.300,25.895,26.494,27.097,27.644,
-28.060,28.358,28.667,29.109,29.661,30.173,30.537,30.794,31.069,31.423,31.799,32.110,32.313,32.394,32.325,32.116,
-31.903,31.925,32.349,33.117,34.017,34.892,35.719,36.470,36.959,36.958,36.525,36.167,36.515,37.735,39.236,40.048,
-39.600,38.196,36.751,36.037,36.136,36.563,36.840,36.931,37.136,37.671,38.431,39.145,39.672,40.048,40.275,40.141,
-39.302,37.469,34.478,30.242,24.859,18.932,13.726,10.736,10.793,13.436,17.181,20.515,22.765,24.168,25.252,26.228,
-26.909,27.059,26.693,26.076,25.496,25.085,24.792,24.473,24.005,23.369,22.660,22.009,21.476,21.016,20.548,20.038,
-19.496,18.918,18.282,17.612,17.018,16.611,16.376,16.161,15.809,15.305,14.751,14.231,13.714,13.118,12.433,11.740,
-11.120,10.561,9.990,9.376,8.780,8.294,7.948,7.668,7.339,6.895,6.369,5.848,5.401,5.036,4.717,4.430,
-4.199,4.045,3.940,3.823,3.661,3.480,3.312,3.130,2.870,2.526,2.180,1.915,1.699,1.399,.931,.367,
--.140,-.532,-.914,-1.425,-2.072,-2.727,-3.280,-3.752,-4.252,-4.835,-5.448,-6.004,-6.478,-6.906,-7.308,-7.652,
--7.896,-8.047,-8.162,-8.305,-8.498,-8.714,-8.905,-9.033,-9.104,-9.175,-9.297,-9.453,-9.560,-9.551,-9.470,-9.429,
--9.481,-9.561,-9.587,-9.607,-9.785,-10.212,-10.781,-11.309,-11.753,-12.208,-12.623,-12.606,-11.711,-10.031,-8.428,-7.975,
--9.027,-10.826,-12.114,-12.175,-11.313,-10.352,-9.788,-9.473,-9.032,-8.417,-7.954,-7.918,-8.218,-8.536,-8.682,-8.725,
--8.806,-8.928,-8.992,-8.968,-8.928,-8.921,-8.885,-8.737,-8.510,-8.324,-8.242,-8.204,-8.158,-8.190,-8.463,-9.001,
--9.612,-10.056,-10.261,-10.329,-10.343,-10.240,-9.942,-9.559,-9.387,-9.632,-10.159,-10.557,-10.498,-10.039,-9.583,-9.538,
--9.993,-10.676,-11.195,-11.350,-11.248,-11.168,-11.303,-11.618,-11.920,-12.065,-12.073,-12.071,-12.137,-12.234,-12.283,-12.270,
--12.254,-12.288,-12.357,-12.422,-12.478,-12.554,-12.646,-12.700,-12.671,-12.588,-12.525,-12.512,-12.507,-12.453,-12.355,-12.273,
--12.235,-12.199,-12.105,-11.961,-11.845,-11.823,-11.889,-11.969,-11.999,-11.982,-11.967,-12.008,-12.115,-12.254,-12.374,-12.444,
--12.482,-12.535,-12.634,-12.759,-12.867,-12.941,-13.009,-13.111,-13.244,-13.374,-13.478,-13.576,-13.693,-13.830,-13.964,-14.092,
--14.235,-14.405,-14.571,-14.690,-14.755,-14.805,-14.870,-14.947,-15.020,-15.100,-15.220,-15.379,-15.533,-15.643,-15.721,-15.805,
--15.899,-15.967,-15.990,-16.016,-16.114,-16.286,-16.464,-16.593,-16.706,-16.881,-17.147,-17.459,-17.758,-18.040,-18.336,-18.648,
--18.936,-19.176,-19.397,-19.647,-19.927,-20.196,-20.438,-20.691,-20.997,-21.343,-21.667,-21.927,-22.148,-22.378,-22.631,-22.882,
--23.107,-23.311,-23.516,-23.735,-23.970,-24.228,-24.516,-24.816,-25.102,-25.366,-25.631,-25.918,-26.216,-26.498,-26.769,-27.063,
--27.405,-27.765,-28.096,-28.381,-28.643,-28.898,-29.125,-29.310,-29.488,-29.719,-30.023,-30.343,-30.614,-30.832,-31.048,-31.296,
--31.555,-31.785,-31.990,-32.213,-32.477,-32.762,-33.038,-33.309,-33.596,-33.902,-34.210,-34.509,-34.802,-35.085,-35.322,-35.492,
--35.636,-35.839,-36.146,-36.521,-36.888,-37.215,-37.529,-37.852,-38.152,-38.389,-38.578,-38.787,-39.055,-39.339,-39.559,-39.691,
--39.797,-39.946,-40.144,-40.333,-40.460,-40.523,-40.556,-40.587,-40.629,-40.691,-40.779,-40.883,-40.975,-41.033,-41.068,-41.107,
--41.160,-41.208,-41.228,-41.229,-41.249,-41.306,-41.380,-41.427,-41.432,-41.421,-41.432,-41.463,-41.475,-41.438,-41.370,-41.308,
--41.263,-41.197,-41.069,-40.873,-40.632,-40.363,-40.079,-39.834,-39.712,-39.738,-39.778,-39.594,-39.053,-38.286,-37.607,-37.259,
--37.231,-37.333,-37.397,-37.359,-37.176,-36.749,-36.011,-35.065,-34.158,-33.461,-32.922,-32.388,-31.850,-31.512,-31.573,-31.975,
--32.429,-32.679,-32.710,-32.658,-32.594,-32.446,-32.134,-31.717,-31.351,-31.115,-30.922,-30.629,-30.193,-29.719,-29.340,-29.082,
--28.836,-28.449,-27.852,-27.113,-26.387,-25.791,-25.316,-24.851,-24.322,-23.787,-23.396,-23.221,-23.169,-23.061,-22.815,-22.519,
--22.340,-22.368,-22.556,-22.772,-22.867,-22.721,-22.282,-21.643,-21.062,-20.853,-21.189,-21.982,-22.942,-23.750,-24.193,-24.224,
--23.945,-23.583,-23.402,-23.562,-24.025,-24.607,-25.153,-25.650,-26.177,-26.762,-27.334,-27.804,-28.169,-28.497,-28.835,-29.166,
--29.451,-29.678,-29.835,-29.852,-29.624,-29.117,-28.435,-27.768,-27.266,-26.959,-26.793,-26.712,-26.717,-26.866,-27.237,-27.858,
--28.649,-29.396,-29.851,-29.886,-29.585,-29.177,-28.855,-28.662,-28.527,-28.375,-28.194,-27.999,-27.786,-27.542,-27.292,-27.104,
--27.046,-27.133,-27.322,-27.532,-27.668,-27.659,-27.513,-27.337,-27.286,-27.441,-27.748,-28.073,-28.320,-28.473,-28.538,-28.476,
--28.266,-28.014,-27.958,-28.290,-28.961,-29.677,-30.124,-30.203,-30.067,-29.955,-30.007,-30.213,-30.489,-30.754,-30.943,-31.013,
--30.955,-30.815,-30.669,-30.568,-30.516,-30.510,-30.574,-30.753,-31.056,-31.438,-31.826,-32.168,-32.450,-32.686,-32.912,-33.185,
--33.553,-34.021,-34.533,-35.041,-35.575,-36.233,-37.075,-38.020,-38.881,-39.494,-39.821,-39.923,-39.885,-39.807,-39.876,-40.370,
--41.492,-43.144,-44.897,-46.248,-46.960,-47.189,-47.283,-47.481,-47.775,-48.033,-48.182,-48.267,-48.357,-48.463,-48.546,-48.583,
--48.581,-48.540,-48.440,-48.265,-48.050,-47.844,-47.659,-47.455,-47.192,-46.891,-46.607,-46.357,-46.091,-45.754,-45.358,-44.984,
--44.701,-44.486,-44.247,-43.911,-43.486,-43.035,-42.599,-42.162,-41.678,-41.135,-40.564,-40.015,-39.510,-39.043,-38.623,-38.283,
--38.046,-37.866,-37.626,-37.226,-36.677,-36.111,-35.675,-35.412,-35.238,-35.043,-34.789,-34.520,-34.274,-34.037,-33.779,-33.521,
--33.319,-33.176,-32.995,-32.633,-32.046,-31.347,-30.730,-30.319,-30.090,-29.919,-29.700,-29.417,-29.118,-28.839,-28.555,-28.200,
--27.727,-27.147,-26.511,-25.863,-25.209,-24.529,-23.815,-23.085,-22.361,-21.648,-20.942,-20.242,-19.551,-18.840,-18.051,-17.153,
--16.199,-15.312,-14.575,-13.943,-13.274,-12.461,-11.528,-10.587,-9.715,-8.880,-8.000,-7.048,-6.086,-5.187,-4.362,-3.553,
--2.708,-1.831,-.957,-.103,.755,1.640,2.549,3.453,4.336,5.209,6.088,6.973,7.850,8.715,9.585,10.465,
-11.341,12.194,13.036,13.910,14.842,15.802,16.725,17.587,18.430,19.312,20.238,21.151,22.014,22.864,23.777,24.769,
-25.762,26.670,27.506,28.370,29.324,30.304,31.171,31.862,32.453,33.079,33.788,34.503,35.103,35.538,35.853,36.123,
-36.400,36.706,37.049,37.421,37.790,38.121,38.413,38.709,39.046,39.412,39.754,40.031,40.243,40.416,40.555,40.643,
-40.677,40.700,40.791,41.025,41.410,41.864,42.222,42.319,42.110,41.743,41.493,41.568,41.940,42.353,42.522,42.359,
-42.015,41.733,41.631,41.621,41.513,41.180,40.647,40.046,39.503,39.064,38.715,38.448,38.287,38.250,38.295,38.328,
-38.269,38.115,37.928,37.762,37.623,37.500,37.414,37.416,37.528,37.712,37.913,38.122,38.384,38.738,39.174,39.656,
-40.163,40.691,41.206,41.650,41.987,42.256,42.527,42.821,43.092,43.309,43.520,43.821,44.249,44.745,45.212,45.590,
-45.854,45.963,45.869,45.591,45.228,44.864,44.463,43.919,43.224,42.546,42.101,41.944,41.925,41.859,41.689,41.473,
-41.245,40.967,40.627,40.312,40.098,39.886,39.417,38.534,37.413,36.516,36.274,36.825,37.994,39.471,40.958,42.226,
-43.148,43.755,44.213,44.678,45.137,45.447,45.534,45.531,45.669,46.037,46.520,46.996,47.548,48.388,49.557,50.752,
-51.533,51.715,51.532,51.381,51.448,51.586,51.556,51.314,51.025,50.842,50.728,50.522,50.145,49.676,49.227,48.798,
-48.293,47.509,46.945,46.389,45.947,45.630,45.342,44.980,44.515,43.972,43.362,42.680,41.949,41.238,40.590,39.949,
-39.186,38.220,37.096,35.935,34.826,33.778,32.780,31.871,31.122,30.563,30.143,29.787,29.462,29.199,29.037,28.985,
-29.026,29.144,29.341,29.639,30.066,30.636,31.314,32.012,32.613,33.044,33.308,33.455,33.525,33.525,33.456,33.333,
-33.183,33.020,32.850,32.693,32.572,32.481,32.376,32.217,32.015,31.812,31.637,31.478,31.311,31.124,30.904,30.616,
-30.242,29.842,29.527,29.332,29.145,28.799,28.280,27.785,27.533,27.522,27.498,27.212,26.679,26.174,25.967,26.071,
-26.237,26.177,25.764,25.080,24.299,23.549,22.848,22.134,21.344,20.458,19.480,18.371,17.049,15.478,13.768,12.160,
-10.875,9.983,9.397,8.991,8.674,8.359,7.925,7.259,6.350,5.302,4.240,3.234,2.332,1.641,1.303,1.377,
-1.781,2.380,3.110,3.976,4.942,5.879,6.666,7.299,7.861,8.402,8.922,9.470,10.180,11.124,12.142,12.937,
-13.375,13.645,14.032,14.551,14.898,14.822,14.477,14.309,14.592,15.174,15.723,16.206,17.019,18.619,21.048,23.805,
-26.141,27.473,27.637,26.899,25.793,24.826,24.198,23.721,23.062,22.106,21.083,20.325,19.933,19.704,19.371,18.837,
-18.176,17.466,16.710,15.897,15.055,14.202,13.284,12.238,11.087,9.928,8.792,7.592,6.247,4.834,3.538,2.444,
-1.462,.486,-.400,-.967,-1.092,-.876,-.475,.130,1.071,2.300,3.440,4.037,3.967,3.552,3.257,3.299,
-3.560,3.821,4.012,4.231,4.578,5.031,5.462,5.741,5.828,5.777,5.675,5.536,5.250,4.650,3.675,2.473,
-1.318,.419,-.218,-.727,-1.238,-1.799,-2.395,-3.003,-3.584,-4.097,-4.551,-5.046,-5.707,-6.541,-7.403,-8.115,
--8.635,-9.071,-9.529,-9.998,-10.396,-10.708,-11.015,-11.385,-11.758,-12.008,-12.091,-12.126,-12.309,-12.768,-13.501,-14.437,
--15.501,-16.628,-17.730,-18.716,-19.532,-20.190,-20.704,-21.020,-21.023,-20.661,-20.072,-19.557,-19.375,-19.533,-19.787,-19.881,
--19.785,-19.691,-19.780,-20.034,-20.315,-20.592,-21.013,-21.706,-22.537,-23.148,-23.257,-22.900,-22.363,-21.924,-21.725,-21.856,
--22.434,-23.496,-24.832,-26.054,-26.939,-27.689,-28.786,-30.526,-32.714,-34.842,-36.557,-37.965,-39.481,-41.417,-43.699,-45.922,
--47.614,-48.488,-48.525,-47.933,-47.006,-45.950,-44.751,-43.213,-41.194,-38.863,-36.690,-35.107,-34.094,-33.132,-31.630,-29.470,
--27.150,-25.369,-24.465,-24.234,-24.227,-24.153,-23.967,-23.689,-23.287,-22.794,-22.441,-22.512,-23.039,-23.704,-24.139,-24.316,
--24.562,-25.176,-26.069,-26.845,-27.204,-27.229,-27.253,-27.521,-28.010,-28.537,-28.974,-29.324,-29.654,-30.021,-30.445,-30.916,
--31.392,-31.817,-32.170,-32.489,-32.824,-33.172,-33.480,-33.727,-33.964,-34.265,-34.636,-35.007,-35.314,-35.566,-35.819,-36.103,
--36.392,-36.652,-36.873,-37.071,-37.265,-37.479,-37.741,-38.055,-38.361,-38.561,-38.608,-38.570,-38.583,-38.737,-39.008,-39.304,
--39.567,-39.805,-40.045,-40.273,-40.441,-40.519,-40.524,-40.503,-40.486,-40.468,-40.427,-40.370,-40.353,-40.447,-40.666,-40.918,
--41.053,-40.978,-40.737,-40.448,-40.182,-39.900,-39.523,-39.051,-38.575,-38.180,-37.864,-37.574,-37.290,-37.048,-36.867,-36.689,
--36.428,-36.065,-35.674,-35.342,-35.086,-34.879,-34.734,-34.747,-35.010,-35.475,-35.916,-36.051,-35.758,-35.213,-34.799,-34.841,
--35.358,-36.061,-36.627,-36.983,-37.326,-37.848,-38.473,-38.893,-38.869,-38.451,-37.889,-37.355,-36.810,-36.139,-35.359,-34.623,
--34.050,-33.604,-33.157,-32.642,-32.075,-31.468,-30.769,-29.937,-29.019,-28.129,-27.331,-26.586,-25.819,-25.029,-24.281,-23.631,
--23.061,-22.523,-22.003,-21.532,-21.134,-20.778,-20.392,-19.909,-19.300,-18.585,-17.818,-17.038,-16.239,-15.372,-14.399,-13.347,
--12.286,-11.254,-10.214,-9.111,-7.948,-6.788,-5.684,-4.630,-3.593,-2.578,-1.613,-.689,.253,1.247,2.239,3.137,
-3.924,4.681,5.482,6.300,7.049,7.715,8.394,9.190,10.097,11.025,11.913,12.790,13.698,14.615,15.475,16.256,
-17.008,17.783,18.585,19.396,20.233,21.126,22.044,22.884,23.569,24.125,24.643,25.174,25.690,26.159,26.606,27.072,
-27.544,27.965,28.333,28.735,29.246,29.829,30.358,30.764,31.110,31.493,31.919,32.290,32.507,32.538,32.383,32.053,
-31.647,31.416,31.646,32.417,33.498,34.546,35.406,36.160,36.853,37.274,37.120,36.445,35.847,36.052,37.212,38.615,
-39.189,38.399,36.719,35.227,34.713,35.125,35.810,36.237,36.434,36.787,37.503,38.389,39.118,39.624,40.114,40.711,
-41.175,41.013,39.799,37.314,33.445,28.204,22.059,16.220,12.318,11.487,13.557,17.152,20.640,23.113,24.606,25.577,
-26.312,26.778,26.875,26.656,26.306,25.975,25.692,25.396,25.005,24.470,23.809,23.113,22.480,21.920,21.347,20.674,
-19.914,19.164,18.490,17.887,17.337,16.889,16.604,16.446,16.256,15.894,15.373,14.832,14.367,13.936,13.431,12.816,
-12.158,11.537,10.957,10.361,9.728,9.109,8.586,8.192,7.885,7.575,7.184,6.694,6.158,5.660,5.259,4.951,
-4.700,4.485,4.318,4.204,4.115,4.011,3.879,3.732,3.561,3.331,3.031,2.710,2.422,2.139,1.753,1.196,
-.547,-.036,-.480,-.880,-1.388,-2.033,-2.697,-3.256,-3.721,-4.215,-4.816,-5.469,-6.057,-6.518,-6.884,-7.208,
--7.498,-7.724,-7.879,-8.006,-8.160,-8.360,-8.571,-8.745,-8.860,-8.944,-9.053,-9.215,-9.392,-9.504,-9.501,-9.424,
--9.366,-9.373,-9.411,-9.436,-9.488,-9.679,-10.057,-10.537,-10.997,-11.419,-11.848,-12.163,-11.987,-10.973,-9.296,-7.790,
--7.406,-8.409,-10.081,-11.299,-11.454,-10.839,-10.178,-9.866,-9.708,-9.329,-8.692,-8.123,-7.917,-8.029,-8.196,-8.260,
--8.283,-8.372,-8.500,-8.571,-8.576,-8.601,-8.674,-8.686,-8.524,-8.242,-8.014,-7.935,-7.935,-7.927,-7.991,-8.314,
--8.931,-9.612,-10.057,-10.184,-10.168,-10.191,-10.226,-10.127,-9.894,-9.768,-9.994,-10.514,-10.953,-10.931,-10.408,-9.733,
--9.370,-9.559,-10.182,-10.888,-11.360,-11.499,-11.437,-11.386,-11.460,-11.620,-11.756,-11.808,-11.815,-11.842,-11.908,-11.984,
--12.043,-12.091,-12.142,-12.186,-12.214,-12.240,-12.293,-12.366,-12.411,-12.389,-12.320,-12.263,-12.242,-12.215,-12.134,-12.016,
--11.927,-11.905,-11.906,-11.859,-11.751,-11.646,-11.616,-11.674,-11.761,-11.815,-11.821,-11.812,-11.837,-11.920,-12.050,-12.184,
--12.280,-12.325,-12.346,-12.381,-12.448,-12.533,-12.622,-12.716,-12.824,-12.939,-13.050,-13.159,-13.289,-13.448,-13.610,-13.748,
--13.864,-13.993,-14.149,-14.302,-14.412,-14.482,-14.555,-14.659,-14.771,-14.860,-14.938,-15.048,-15.205,-15.368,-15.488,-15.571,
--15.658,-15.759,-15.831,-15.840,-15.825,-15.865,-15.994,-16.166,-16.320,-16.460,-16.642,-16.893,-17.178,-17.448,-17.702,-17.972,
--18.262,-18.537,-18.767,-18.979,-19.223,-19.511,-19.809,-20.091,-20.376,-20.704,-21.072,-21.431,-21.743,-22.017,-22.286,-22.565,
--22.833,-23.067,-23.264,-23.446,-23.643,-23.875,-24.153,-24.460,-24.760,-25.027,-25.274,-25.539,-25.839,-26.146,-26.430,-26.703,
--27.007,-27.355,-27.704,-27.997,-28.230,-28.441,-28.655,-28.860,-29.044,-29.241,-29.496,-29.804,-30.100,-30.332,-30.525,-30.742,
--31.009,-31.283,-31.520,-31.730,-31.965,-32.243,-32.542,-32.835,-33.132,-33.454,-33.793,-34.117,-34.409,-34.681,-34.939,-35.162,
--35.340,-35.512,-35.743,-36.047,-36.372,-36.657,-36.910,-37.190,-37.522,-37.862,-38.152,-38.394,-38.644,-38.931,-39.213,-39.426,
--39.561,-39.669,-39.802,-39.963,-40.125,-40.265,-40.376,-40.449,-40.482,-40.495,-40.533,-40.629,-40.761,-40.878,-40.948,-40.990,
--41.043,-41.113,-41.173,-41.197,-41.197,-41.213,-41.270,-41.350,-41.418,-41.455,-41.477,-41.506,-41.539,-41.557,-41.550,-41.532,
--41.516,-41.482,-41.385,-41.212,-41.004,-40.812,-40.624,-40.378,-40.066,-39.807,-39.747,-39.866,-39.918,-39.623,-38.943,-38.144,
--37.581,-37.412,-37.535,-37.741,-37.877,-37.852,-37.587,-37.038,-36.276,-35.455,-34.679,-33.917,-33.126,-32.429,-32.087,-32.237,
--32.692,-33.066,-33.126,-32.973,-32.862,-32.884,-32.873,-32.627,-32.148,-31.641,-31.295,-31.117,-30.979,-30.777,-30.516,-30.258,
--30.027,-29.771,-29.405,-28.889,-28.260,-27.611,-27.004,-26.405,-25.726,-24.953,-24.227,-23.749,-23.586,-23.586,-23.514,-23.278,
--22.993,-22.836,-22.863,-22.997,-23.139,-23.225,-23.173,-22.854,-22.217,-21.452,-20.966,-21.107,-21.878,-22.917,-23.755,-24.119,
--24.030,-23.705,-23.393,-23.265,-23.387,-23.726,-24.204,-24.755,-25.342,-25.927,-26.441,-26.825,-27.104,-27.398,-27.812,-28.336,
--28.849,-29.242,-29.509,-29.696,-29.801,-29.743,-29.451,-28.956,-28.382,-27.853,-27.429,-27.116,-26.919,-26.850,-26.922,-27.138,
--27.478,-27.887,-28.258,-28.471,-28.479,-28.355,-28.240,-28.215,-28.247,-28.240,-28.143,-27.990,-27.836,-27.692,-27.526,-27.325,
--27.134,-27.031,-27.072,-27.243,-27.456,-27.589,-27.555,-27.383,-27.224,-27.259,-27.552,-27.991,-28.384,-28.610,-28.689,-28.701,
--28.687,-28.644,-28.611,-28.705,-29.022,-29.509,-29.962,-30.183,-30.138,-29.970,-29.865,-29.925,-30.135,-30.417,-30.681,-30.839,
--30.823,-30.626,-30.322,-30.036,-29.874,-29.884,-30.063,-30.385,-30.809,-31.279,-31.733,-32.128,-32.450,-32.706,-32.912,-33.112,
--33.381,-33.775,-34.276,-34.802,-35.293,-35.800,-36.450,-37.309,-38.286,-39.177,-39.815,-40.157,-40.258,-40.210,-40.158,-40.343,
--41.040,-42.345,-44.021,-45.588,-46.648,-47.159,-47.395,-47.661,-48.036,-48.400,-48.632,-48.746,-48.843,-48.970,-49.093,-49.164,
--49.193,-49.210,-49.195,-49.086,-48.858,-48.565,-48.290,-48.057,-47.825,-47.562,-47.286,-47.029,-46.772,-46.456,-46.057,-45.631,
--45.259,-44.960,-44.675,-44.345,-43.973,-43.613,-43.285,-42.938,-42.490,-41.913,-41.259,-40.616,-40.043,-39.545,-39.101,-38.713,
--38.408,-38.194,-38.013,-37.750,-37.308,-36.709,-36.103,-35.667,-35.464,-35.400,-35.315,-35.119,-34.839,-34.554,-34.312,-34.109,
--33.935,-33.790,-33.654,-33.450,-33.075,-32.488,-31.764,-31.053,-30.491,-30.124,-29.903,-29.740,-29.563,-29.344,-29.087,-28.800,
--28.472,-28.075,-27.590,-27.031,-26.428,-25.802,-25.148,-24.454,-23.722,-22.968,-22.210,-21.462,-20.738,-20.048,-19.371,-18.650,
--17.835,-16.936,-16.031,-15.193,-14.423,-13.648,-12.804,-11.900,-11.002,-10.150,-9.320,-8.458,-7.551,-6.633,-5.747,-4.894,
--4.045,-3.181,-2.309,-1.448,-.593,.280,1.182,2.100,3.013,3.915,4.821,5.744,6.673,7.588,8.480,9.355,
-10.221,11.071,11.894,12.701,13.531,14.411,15.325,16.235,17.131,18.048,19.015,20.000,20.934,21.796,22.661,23.623,
-24.681,25.711,26.597,27.359,28.135,29.015,29.927,30.710,31.299,31.800,32.377,33.069,33.758,34.298,34.659,34.932,
-35.219,35.551,35.905,36.265,36.630,36.991,37.322,37.615,37.901,38.221,38.582,38.944,39.261,39.517,39.719,39.872,
-39.973,40.030,40.063,40.100,40.173,40.323,40.572,40.879,41.126,41.202,41.121,41.057,41.200,41.560,41.918,41.997,
-41.716,41.263,40.931,40.866,40.961,40.973,40.737,40.272,39.725,39.234,38.842,38.529,38.279,38.103,38.004,37.928,
-37.790,37.547,37.247,36.981,36.805,36.704,36.637,36.605,36.645,36.778,36.978,37.209,37.477,37.817,38.245,38.739,
-39.281,39.883,40.547,41.210,41.773,42.202,42.571,42.966,43.352,43.590,43.608,43.544,43.660,44.113,44.808,45.492,
-45.961,46.160,46.134,45.944,45.647,45.296,44.894,44.357,43.591,42.650,41.785,41.278,41.203,41.371,41.508,41.477,
-41.300,41.050,40.760,40.454,40.176,39.909,39.506,38.786,37.784,36.853,36.477,36.924,38.093,39.658,41.315,42.873,
-44.188,45.140,45.724,46.104,46.495,46.973,47.442,47.809,48.147,48.634,49.339,50.141,50.875,51.507,52.107,52.662,
-52.996,52.939,52.563,52.160,51.973,51.965,51.887,51.576,51.128,50.769,50.590,50.448,50.140,49.618,49.015,48.475,
-48.005,47.509,46.802,46.170,45.578,45.081,44.638,44.156,43.600,43.029,42.516,42.064,41.606,41.083,40.496,39.864,
-39.169,38.364,37.431,36.410,35.363,34.321,33.296,32.326,31.487,30.836,30.353,29.961,29.607,29.312,29.127,29.066,
-29.093,29.159,29.242,29.356,29.537,29.840,30.317,30.969,31.699,32.356,32.828,33.109,33.265,33.351,33.369,33.305,
-33.171,32.996,32.802,32.599,32.412,32.273,32.178,32.077,31.916,31.697,31.463,31.243,31.025,30.800,30.584,30.384,
-30.149,29.814,29.400,29.027,28.786,28.609,28.331,27.900,27.473,27.268,27.302,27.342,27.152,26.760,26.443,26.437,
-26.679,26.848,26.643,26.035,25.260,24.621,24.259,24.088,23.891,23.490,22.836,21.974,20.926,19.640,18.073,16.295,
-14.503,12.894,11.545,10.433,9.528,8.837,8.329,7.874,7.308,6.569,5.729,4.899,4.136,3.468,2.976,2.776,
-2.900,3.254,3.715,4.266,4.974,5.843,6.746,7.529,8.163,8.735,9.322,9.936,10.591,11.358,12.260,13.148,
-13.793,14.137,14.396,14.810,15.320,15.595,15.423,15.005,14.783,14.980,15.424,15.872,16.429,17.516,19.405,21.847,
-24.185,25.819,26.532,26.459,25.885,25.106,24.373,23.805,23.319,22.717,21.914,21.062,20.402,20.009,19.712,19.289,
-18.673,17.951,17.204,16.428,15.596,14.729,13.847,12.905,11.832,10.641,9.424,8.228,6.983,5.604,4.147,2.790,
-1.639,.628,-.348,-1.240,-1.863,-2.112,-2.085,-1.937,-1.647,-1.038,-.056,1.035,1.804,2.019,1.823,1.567,
-1.502,1.651,1.910,2.223,2.625,3.176,3.866,4.588,5.166,5.452,5.434,5.250,5.071,4.931,4.686,4.163,
-3.339,2.372,1.453,.668,-.004,-.609,-1.168,-1.703,-2.237,-2.767,-3.261,-3.727,-4.269,-5.007,-5.923,-6.836,
--7.556,-8.082,-8.578,-9.173,-9.803,-10.288,-10.551,-10.710,-10.947,-11.328,-11.752,-12.079,-12.260,-12.356,-12.495,-12.812,
--13.431,-14.409,-15.681,-17.052,-18.291,-19.265,-19.980,-20.494,-20.794,-20.782,-20.415,-19.854,-19.427,-19.396,-19.714,-20.052,
--20.100,-19.851,-19.584,-19.571,-19.842,-20.253,-20.734,-21.371,-22.218,-23.079,-23.585,-23.509,-22.977,-22.345,-21.909,-21.790,
--22.042,-22.741,-23.878,-25.216,-26.388,-27.233,-28.000,-29.163,-30.985,-33.273,-35.556,-37.497,-39.116,-40.681,-42.421,-44.337,
--46.212,-47.747,-48.706,-49.009,-48.761,-48.178,-47.427,-46.486,-45.165,-43.314,-41.057,-38.810,-36.995,-35.686,-34.517,-32.998,
--30.977,-28.795,-26.983,-25.797,-25.072,-24.489,-23.917,-23.447,-23.141,-22.887,-22.566,-22.289,-22.347,-22.868,-23.609,-24.185,
--24.484,-24.779,-25.399,-26.322,-27.182,-27.641,-27.713,-27.691,-27.838,-28.182,-28.600,-28.992,-29.347,-29.687,-30.032,-30.404,
--30.830,-31.292,-31.716,-32.028,-32.231,-32.400,-32.601,-32.848,-33.136,-33.477,-33.878,-34.292,-34.641,-34.895,-35.111,-35.371,
--35.683,-35.982,-36.217,-36.412,-36.629,-36.904,-37.224,-37.565,-37.908,-38.202,-38.366,-38.344,-38.192,-38.052,-38.055,-38.218,
--38.470,-38.739,-39.017,-39.327,-39.659,-39.948,-40.127,-40.177,-40.147,-40.111,-40.109,-40.131,-40.144,-40.150,-40.199,-40.338,
--40.537,-40.691,-40.702,-40.560,-40.342,-40.108,-39.847,-39.503,-39.061,-38.570,-38.078,-37.593,-37.108,-36.664,-36.332,-36.138,
--36.011,-35.838,-35.568,-35.236,-34.904,-34.598,-34.332,-34.174,-34.247,-34.621,-35.192,-35.671,-35.736,-35.272,-34.505,-33.912,
--33.911,-34.561,-35.534,-36.394,-36.951,-37.358,-37.851,-38.451,-38.920,-39.009,-38.700,-38.172,-37.585,-36.953,-36.224,-35.419,
--34.626,-33.885,-33.149,-32.384,-31.652,-31.064,-30.625,-30.205,-29.654,-28.944,-28.162,-27.396,-26.658,-25.921,-25.183,-24.463,
--23.771,-23.102,-22.475,-21.939,-21.523,-21.186,-20.839,-20.413,-19.880,-19.241,-18.507,-17.712,-16.907,-16.113,-15.285,-14.358,
--13.324,-12.250,-11.198,-10.153,-9.052,-7.883,-6.718,-5.631,-4.617,-3.609,-2.575,-1.547,-.570,.367,1.299,2.223,
-3.101,3.918,4.711,5.512,6.297,7.018,7.693,8.410,9.237,10.146,11.062,11.956,12.871,13.826,14.758,15.580,
-16.278,16.932,17.624,18.378,19.195,20.102,21.114,22.165,23.115,23.868,24.461,24.994,25.508,25.954,26.291,26.574,
-26.911,27.352,27.860,28.389,28.945,29.541,30.135,30.654,31.082,31.481,31.902,32.308,32.606,32.731,32.660,32.372,
-31.882,31.367,31.184,31.642,32.694,33.904,34.813,35.333,35.741,36.248,36.668,36.594,35.940,35.214,35.136,35.937,
-37.042,37.522,36.911,35.621,34.565,34.366,34.897,35.556,35.924,36.128,36.577,37.430,38.423,39.206,39.765,40.395,
-41.259,42.060,42.214,41.275,39.098,35.640,30.832,24.900,18.827,14.245,12.554,13.949,17.273,20.846,23.529,25.124,
-25.997,26.503,26.767,26.821,26.745,26.629,26.484,26.248,25.880,25.390,24.817,24.194,23.561,22.949,22.339,21.655,
-20.845,19.964,19.137,18.440,17.855,17.340,16.923,16.656,16.501,16.303,15.930,15.405,14.876,14.450,14.090,13.682,
-13.169,12.587,11.986,11.372,10.727,10.072,9.464,8.953,8.549,8.224,7.925,7.581,7.136,6.597,6.049,5.598,
-5.281,5.048,4.840,4.654,4.523,4.447,4.383,4.287,4.160,4.013,3.829,3.568,3.227,2.836,2.407,1.900,
-1.283,.613,.012,-.453,-.856,-1.336,-1.949,-2.610,-3.204,-3.720,-4.247,-4.850,-5.487,-6.047,-6.471,-6.788,
--7.066,-7.332,-7.569,-7.766,-7.945,-8.135,-8.333,-8.507,-8.634,-8.727,-8.824,-8.958,-9.118,-9.260,-9.335,-9.328,
--9.274,-9.224,-9.209,-9.228,-9.284,-9.419,-9.675,-10.029,-10.389,-10.687,-10.962,-11.282,-11.549,-11.421,-10.562,-9.062,
--7.587,-6.991,-7.631,-9.038,-10.286,-10.744,-10.498,-10.075,-9.848,-9.740,-9.476,-8.981,-8.469,-8.165,-8.081,-8.072,
--8.068,-8.127,-8.288,-8.465,-8.544,-8.540,-8.569,-8.668,-8.708,-8.556,-8.260,-8.024,-7.972,-8.034,-8.089,-8.176,
--8.463,-8.996,-9.561,-9.875,-9.883,-9.813,-9.900,-10.126,-10.278,-10.239,-10.157,-10.276,-10.637,-10.996,-11.040,-10.665,
--10.068,-9.591,-9.500,-9.845,-10.461,-11.074,-11.449,-11.517,-11.396,-11.279,-11.286,-11.397,-11.515,-11.578,-11.594,-11.610,
--11.651,-11.715,-11.789,-11.859,-11.907,-11.922,-11.919,-11.925,-11.955,-11.990,-12.006,-12.003,-11.999,-11.994,-11.952,-11.854,
--11.732,-11.656,-11.654,-11.684,-11.677,-11.611,-11.531,-11.498,-11.525,-11.581,-11.621,-11.627,-11.609,-11.591,-11.606,-11.675,
--11.793,-11.918,-12.005,-12.039,-12.045,-12.065,-12.122,-12.218,-12.344,-12.484,-12.624,-12.749,-12.865,-12.991,-13.134,-13.277,
--13.401,-13.515,-13.647,-13.804,-13.953,-14.063,-14.150,-14.262,-14.421,-14.589,-14.715,-14.805,-14.915,-15.077,-15.254,-15.385,
--15.457,-15.514,-15.586,-15.646,-15.656,-15.629,-15.631,-15.706,-15.834,-15.972,-16.115,-16.304,-16.558,-16.840,-17.102,-17.338,
--17.583,-17.853,-18.123,-18.356,-18.561,-18.782,-19.050,-19.358,-19.684,-20.025,-20.387,-20.763,-21.130,-21.472,-21.792,-22.104,
--22.403,-22.673,-22.905,-23.111,-23.318,-23.552,-23.830,-24.148,-24.471,-24.753,-24.978,-25.182,-25.427,-25.731,-26.059,-26.364,
--26.648,-26.945,-27.269,-27.583,-27.843,-28.053,-28.247,-28.445,-28.632,-28.811,-29.017,-29.283,-29.582,-29.844,-30.038,-30.213,
--30.439,-30.722,-31.003,-31.239,-31.456,-31.708,-32.000,-32.296,-32.569,-32.846,-33.155,-33.485,-33.797,-34.075,-34.342,-34.614,
--34.871,-35.096,-35.317,-35.578,-35.882,-36.172,-36.405,-36.610,-36.863,-37.194,-37.557,-37.892,-38.186,-38.464,-38.734,-38.969,
--39.155,-39.313,-39.475,-39.639,-39.779,-39.896,-40.024,-40.178,-40.323,-40.408,-40.436,-40.468,-40.557,-40.688,-40.806,-40.883,
--40.941,-41.015,-41.101,-41.165,-41.189,-41.192,-41.209,-41.251,-41.308,-41.366,-41.425,-41.488,-41.550,-41.593,-41.602,-41.586,
--41.570,-41.563,-41.532,-41.423,-41.229,-41.019,-40.882,-40.810,-40.687,-40.422,-40.091,-39.897,-39.949,-40.090,-39.998,-39.489,
--38.698,-37.964,-37.542,-37.453,-37.555,-37.701,-37.788,-37.732,-37.478,-37.032,-36.441,-35.703,-34.762,-33.667,-32.711,-32.295,
--32.573,-33.241,-33.753,-33.791,-33.501,-33.256,-33.233,-33.264,-33.067,-32.579,-31.998,-31.569,-31.366,-31.287,-31.197,-31.040,
--30.833,-30.599,-30.327,-29.980,-29.534,-29.013,-28.477,-27.962,-27.416,-26.745,-25.942,-25.160,-24.611,-24.360,-24.245,-24.044,
--23.709,-23.395,-23.263,-23.305,-23.401,-23.487,-23.579,-23.619,-23.387,-22.693,-21.688,-20.893,-20.833,-21.593,-22.737,-23.657,
--24.011,-23.864,-23.504,-23.187,-23.035,-23.083,-23.337,-23.789,-24.390,-25.047,-25.642,-26.078,-26.344,-26.549,-26.875,-27.441,
--28.191,-28.922,-29.444,-29.706,-29.788,-29.785,-29.717,-29.549,-29.264,-28.886,-28.460,-28.020,-27.601,-27.247,-27.002,-26.884,
--26.888,-26.996,-27.182,-27.397,-27.577,-27.690,-27.768,-27.871,-28.012,-28.128,-28.138,-28.029,-27.867,-27.734,-27.646,-27.554,
--27.409,-27.227,-27.083,-27.060,-27.181,-27.381,-27.534,-27.540,-27.417,-27.310,-27.396,-27.737,-28.221,-28.648,-28.891,-28.974,
--29.003,-29.052,-29.129,-29.228,-29.383,-29.622,-29.908,-30.127,-30.183,-30.087,-29.950,-29.900,-29.991,-30.190,-30.413,-30.567,
--30.575,-30.403,-30.087,-29.729,-29.453,-29.357,-29.485,-29.828,-30.332,-30.910,-31.467,-31.943,-32.326,-32.633,-32.869,-33.039,
--33.195,-33.450,-33.897,-34.504,-35.126,-35.645,-36.102,-36.663,-37.449,-38.386,-39.254,-39.852,-40.127,-40.166,-40.128,-40.219,
--40.681,-41.689,-43.185,-44.821,-46.152,-46.948,-47.337,-47.638,-48.045,-48.503,-48.854,-49.050,-49.198,-49.399,-49.626,-49.774,
--49.801,-49.773,-49.759,-49.731,-49.602,-49.340,-49.010,-48.698,-48.426,-48.163,-47.894,-47.640,-47.406,-47.139,-46.787,-46.369,
--45.967,-45.622,-45.287,-44.889,-44.441,-44.035,-43.738,-43.486,-43.139,-42.613,-41.961,-41.311,-40.747,-40.259,-39.795,-39.331,
--38.894,-38.529,-38.251,-38.024,-37.768,-37.404,-36.921,-36.411,-36.017,-35.816,-35.746,-35.657,-35.437,-35.104,-34.766,-34.516,
--34.362,-34.256,-34.142,-33.985,-33.749,-33.391,-32.885,-32.251,-31.564,-30.932,-30.445,-30.139,-29.977,-29.863,-29.706,-29.461,
--29.146,-28.794,-28.411,-27.980,-27.484,-26.934,-26.346,-25.720,-25.046,-24.321,-23.559,-22.780,-22.005,-21.250,-20.528,-19.831,
--19.121,-18.355,-17.524,-16.664,-15.819,-14.991,-14.143,-13.250,-12.334,-11.443,-10.604,-9.802,-9.000,-8.178,-7.333,-6.465,
--5.571,-4.657,-3.740,-2.837,-1.945,-1.048,-.134,.788,1.700,2.596,3.493,4.411,5.360,6.324,7.278,8.206,
-9.108,9.989,10.847,11.679,12.493,13.313,14.161,15.037,15.921,16.806,17.712,18.657,19.625,20.572,21.498,22.460,
-23.518,24.632,25.671,26.531,27.252,27.980,28.795,29.617,30.292,30.776,31.200,31.724,32.359,32.964,33.404,33.692,
-33.954,34.284,34.672,35.055,35.413,35.773,36.149,36.510,36.826,37.113,37.418,37.757,38.098,38.398,38.646,38.858,
-39.049,39.220,39.365,39.471,39.519,39.506,39.486,39.561,39.809,40.192,40.579,40.860,41.049,41.234,41.434,41.524,
-41.350,40.899,40.368,40.013,39.952,40.080,40.177,40.089,39.809,39.440,39.081,38.774,38.511,38.273,38.049,37.820,
-37.548,37.206,36.812,36.435,36.155,35.995,35.921,35.889,35.893,35.957,36.091,36.282,36.522,36.833,37.240,37.733,
-38.281,38.896,39.627,40.484,41.365,42.121,42.695,43.170,43.642,44.064,44.280,44.243,44.161,44.351,44.936,45.701,
-46.272,46.427,46.222,45.860,45.496,45.172,44.849,44.443,43.848,43.004,42.019,41.181,40.775,40.856,41.200,41.502,
-41.594,41.493,41.279,41.000,40.681,40.338,39.926,39.325,38.481,37.601,37.142,37.506,38.708,40.367,42.030,43.480,
-44.731,45.811,46.648,47.195,47.571,47.997,48.580,49.227,49.799,50.305,50.899,51.685,52.591,53.435,54.067,54.406,
-54.392,53.989,53.296,52.590,52.158,52.050,52.025,51.793,51.304,50.781,50.462,50.348,50.212,49.844,49.246,48.577,
-47.965,47.398,46.802,46.023,45.163,44.394,43.757,43.183,42.590,41.989,41.475,41.118,40.884,40.655,40.321,39.835,
-39.196,38.415,37.513,36.536,35.548,34.584,33.638,32.708,31.842,31.115,30.558,30.122,29.736,29.387,29.129,29.015,
-29.032,29.126,29.259,29.428,29.631,29.857,30.125,30.499,31.032,31.678,32.299,32.762,33.033,33.167,33.226,33.229,
-33.181,33.101,33.006,32.886,32.715,32.512,32.326,32.184,32.046,31.848,31.581,31.282,30.981,30.674,30.365,30.105,
-29.924,29.759,29.486,29.067,28.618,28.291,28.100,27.906,27.609,27.296,27.140,27.175,27.228,27.118,26.889,26.785,
-26.968,27.301,27.434,27.120,26.445,25.769,25.452,25.598,26.006,26.327,26.280,25.783,24.911,23.763,22.364,20.700,
-18.807,16.814,14.873,13.090,11.533,10.278,9.387,8.815,8.383,7.892,7.277,6.631,6.073,5.630,5.260,4.960,
-4.793,4.803,4.959,5.218,5.609,6.200,6.977,7.810,8.561,9.202,9.803,10.412,11.034,11.697,12.476,13.368,
-14.192,14.709,14.885,14.963,15.200,15.556,15.745,15.596,15.297,15.196,15.413,15.778,16.176,16.830,18.111,20.050,
-22.164,23.820,24.742,25.113,25.223,25.141,24.772,24.117,23.355,22.661,22.040,21.407,20.761,20.205,19.787,19.407,
-18.920,18.294,17.605,16.904,16.152,15.294,14.349,13.371,12.359,11.261,10.073,8.862,7.673,6.447,5.103,3.672,
-2.307,1.116,.061,-.949,-1.887,-2.606,-3.024,-3.240,-3.406,-3.504,-3.331,-2.739,-1.859,-1.042,-.582,-.510,
--.638,-.740,-.688,-.448,-.027,.568,1.334,2.256,3.253,4.152,4.740,4.914,4.767,4.517,4.306,4.096,
-3.755,3.221,2.562,1.879,1.209,.535,-.149,-.826,-1.487,-2.135,-2.740,-3.248,-3.674,-4.146,-4.809,-5.653,
--6.489,-7.142,-7.642,-8.181,-8.878,-9.621,-10.188,-10.484,-10.633,-10.834,-11.178,-11.602,-11.987,-12.260,-12.398,-12.431,
--12.477,-12.755,-13.488,-14.728,-16.270,-17.760,-18.924,-19.708,-20.216,-20.534,-20.634,-20.474,-20.156,-19.931,-20.006,-20.323,
--20.580,-20.513,-20.168,-19.862,-19.882,-20.250,-20.795,-21.404,-22.105,-22.899,-23.580,-23.840,-23.561,-22.970,-22.451,-22.256,
--22.418,-22.893,-23.682,-24.755,-25.922,-26.922,-27.676,-28.437,-29.615,-31.444,-33.806,-36.351,-38.746,-40.829,-42.604,-44.140,
--45.503,-46.695,-47.653,-48.284,-48.553,-48.522,-48.303,-47.949,-47.394,-46.502,-45.190,-43.524,-41.720,-40.011,-38.487,-37.020,
--35.386,-33.511,-31.588,-29.910,-28.576,-27.392,-26.115,-24.773,-23.663,-23.019,-22.756,-22.600,-22.456,-22.525,-23.020,-23.836,
--24.593,-25.031,-25.266,-25.613,-26.203,-26.851,-27.296,-27.494,-27.627,-27.883,-28.290,-28.762,-29.222,-29.636,-29.975,-30.225,
--30.434,-30.703,-31.082,-31.503,-31.830,-32.003,-32.081,-32.177,-32.360,-32.638,-32.992,-33.391,-33.781,-34.107,-34.371,-34.638,
--34.963,-35.322,-35.637,-35.879,-36.106,-36.401,-36.771,-37.147,-37.466,-37.719,-37.915,-38.027,-38.013,-37.888,-37.748,-37.702,
--37.782,-37.940,-38.118,-38.312,-38.560,-38.879,-39.224,-39.512,-39.678,-39.730,-39.740,-39.785,-39.885,-39.992,-40.054,-40.077,
--40.121,-40.223,-40.347,-40.412,-40.374,-40.249,-40.071,-39.825,-39.467,-38.990,-38.443,-37.886,-37.343,-36.813,-36.316,-35.899,
--35.593,-35.374,-35.189,-35.006,-34.815,-34.602,-34.344,-34.060,-33.856,-33.877,-34.191,-34.678,-35.053,-35.012,-34.451,-33.593,
--32.924,-32.902,-33.646,-34.846,-36.008,-36.838,-37.400,-37.926,-38.496,-38.935,-39.011,-38.678,-38.101,-37.470,-36.854,-36.231,
--35.586,-34.936,-34.270,-33.540,-32.745,-31.970,-31.322,-30.799,-30.290,-29.681,-28.963,-28.209,-27.484,-26.796,-26.138,-25.501,
--24.867,-24.202,-23.501,-22.824,-22.251,-21.781,-21.325,-20.795,-20.192,-19.573,-18.952,-18.275,-17.505,-16.687,-15.892,-15.112,
--14.263,-13.284,-12.218,-11.146,-10.084,-8.978,-7.805,-6.629,-5.535,-4.528,-3.536,-2.511,-1.490,-.532,.359,1.233,
-2.122,3.005,3.855,4.681,5.506,6.318,7.083,7.808,8.552,9.365,10.233,11.113,12.000,12.925,13.887,14.810,
-15.611,16.287,16.918,17.585,18.316,19.125,20.041,21.069,22.123,23.059,23.796,24.386,24.938,25.477,25.931,26.246,
-26.493,26.819,27.312,27.944,28.625,29.290,29.912,30.468,30.946,31.367,31.764,32.135,32.439,32.642,32.740,32.697,
-32.413,31.858,31.257,31.070,31.640,32.822,34.023,34.705,34.850,34.899,35.216,35.667,35.785,35.328,34.606,34.229,
-34.511,35.173,35.613,35.479,34.971,34.617,34.756,35.260,35.730,35.955,36.133,36.626,37.535,38.584,39.449,40.136,
-40.928,41.939,42.809,42.938,41.963,39.901,36.818,32.561,27.074,21.044,16.030,13.648,14.438,17.465,21.042,23.860,
-25.555,26.429,26.873,27.081,27.134,27.114,27.069,26.947,26.660,26.200,25.658,25.120,24.593,24.030,23.400,22.703,
-21.953,21.183,20.459,19.829,19.260,18.661,17.998,17.367,16.907,16.628,16.382,16.009,15.501,14.991,14.584,14.256,
-13.908,13.479,12.976,12.415,11.794,11.129,10.481,9.914,9.445,9.048,8.701,8.389,8.068,7.659,7.129,6.551,
-6.058,5.712,5.461,5.223,4.995,4.837,4.778,4.759,4.706,4.606,4.493,4.361,4.139,3.761,3.241,2.641,
-2.008,1.353,.703,.119,-.357,-.775,-1.243,-1.826,-2.478,-3.111,-3.691,-4.254,-4.838,-5.410,-5.906,-6.295,
--6.613,-6.909,-7.199,-7.466,-7.700,-7.919,-8.133,-8.326,-8.476,-8.584,-8.687,-8.813,-8.954,-9.071,-9.134,-9.146,
--9.132,-9.111,-9.089,-9.069,-9.073,-9.143,-9.319,-9.599,-9.926,-10.210,-10.403,-10.553,-10.754,-10.990,-11.026,-10.533,
--9.406,-8.013,-7.056,-7.073,-8.001,-9.216,-10.040,-10.237,-10.044,-9.809,-9.641,-9.432,-9.099,-8.726,-8.454,-8.324,
--8.284,-8.312,-8.439,-8.655,-8.849,-8.913,-8.881,-8.886,-8.976,-9.032,-8.913,-8.652,-8.442,-8.415,-8.504,-8.571,
--8.614,-8.772,-9.114,-9.488,-9.668,-9.621,-9.559,-9.704,-10.033,-10.319,-10.391,-10.313,-10.288,-10.429,-10.663,-10.826,
--10.803,-10.583,-10.229,-9.878,-9.712,-9.868,-10.311,-10.814,-11.120,-11.141,-11.010,-10.932,-11.003,-11.158,-11.285,-11.333,
--11.331,-11.326,-11.343,-11.385,-11.441,-11.495,-11.525,-11.523,-11.509,-11.515,-11.556,-11.622,-11.690,-11.736,-11.739,-11.685,
--11.589,-11.495,-11.452,-11.466,-11.497,-11.493,-11.447,-11.390,-11.354,-11.344,-11.344,-11.347,-11.350,-11.339,-11.302,-11.252,
--11.231,-11.278,-11.385,-11.499,-11.572,-11.603,-11.626,-11.681,-11.782,-11.926,-12.103,-12.290,-12.463,-12.605,-12.721,-12.826,
--12.928,-13.031,-13.145,-13.285,-13.445,-13.593,-13.705,-13.801,-13.935,-14.128,-14.338,-14.508,-14.629,-14.756,-14.930,-15.123,
--15.267,-15.329,-15.347,-15.368,-15.400,-15.414,-15.404,-15.404,-15.446,-15.522,-15.608,-15.709,-15.868,-16.109,-16.397,-16.672,
--16.909,-17.136,-17.389,-17.664,-17.924,-18.149,-18.360,-18.601,-18.903,-19.264,-19.661,-20.059,-20.434,-20.783,-21.122,-21.469,
--21.820,-22.151,-22.442,-22.698,-22.940,-23.192,-23.469,-23.778,-24.111,-24.433,-24.695,-24.886,-25.052,-25.267,-25.563,-25.904,
--26.236,-26.541,-26.838,-27.135,-27.414,-27.654,-27.865,-28.071,-28.268,-28.441,-28.600,-28.795,-29.053,-29.334,-29.566,-29.736,
--29.907,-30.143,-30.431,-30.705,-30.937,-31.169,-31.450,-31.766,-32.061,-32.316,-32.570,-32.858,-33.163,-33.441,-33.693,-33.960,
--34.263,-34.573,-34.851,-35.111,-35.390,-35.692,-35.970,-36.194,-36.399,-36.651,-36.975,-37.332,-37.672,-37.978,-38.243,-38.449,
--38.593,-38.725,-38.916,-39.174,-39.424,-39.578,-39.648,-39.730,-39.892,-40.100,-40.269,-40.366,-40.439,-40.541,-40.669,-40.782,
--40.868,-40.948,-41.038,-41.120,-41.167,-41.188,-41.210,-41.247,-41.284,-41.312,-41.343,-41.403,-41.492,-41.583,-41.640,-41.645,
--41.610,-41.565,-41.530,-41.490,-41.396,-41.223,-41.019,-40.881,-40.845,-40.823,-40.684,-40.421,-40.191,-40.146,-40.234,-40.205,
--39.841,-39.173,-38.442,-37.890,-37.602,-37.525,-37.567,-37.640,-37.656,-37.544,-37.289,-36.889,-36.263,-35.286,-34.001,-32.786,
--32.194,-32.494,-33.381,-34.191,-34.447,-34.201,-33.849,-33.668,-33.587,-33.366,-32.919,-32.397,-32.008,-31.814,-31.716,-31.586,
--31.374,-31.110,-30.845,-30.586,-30.292,-29.908,-29.432,-28.929,-28.469,-28.034,-27.527,-26.903,-26.258,-25.752,-25.420,-25.108,
--24.659,-24.117,-23.704,-23.570,-23.628,-23.695,-23.721,-23.798,-23.905,-23.760,-23.063,-21.912,-20.892,-20.653,-21.357,-22.548,
--23.548,-23.959,-23.825,-23.427,-23.013,-22.722,-22.645,-22.851,-23.338,-23.998,-24.673,-25.246,-25.682,-26.022,-26.370,-26.853,
--27.550,-28.412,-29.255,-29.870,-30.160,-30.188,-30.093,-29.979,-29.861,-29.704,-29.468,-29.141,-28.728,-28.252,-27.752,-27.279,
--26.890,-26.644,-26.584,-26.716,-26.980,-27.275,-27.517,-27.685,-27.811,-27.916,-27.975,-27.946,-27.831,-27.691,-27.595,-27.559,
--27.531,-27.448,-27.294,-27.125,-27.034,-27.084,-27.257,-27.457,-27.575,-27.581,-27.558,-27.643,-27.914,-28.323,-28.738,-29.050,
--29.249,-29.388,-29.517,-29.647,-29.769,-29.885,-30.004,-30.110,-30.165,-30.147,-30.087,-30.051,-30.088,-30.195,-30.315,-30.369,
--30.297,-30.075,-29.741,-29.381,-29.099,-28.973,-29.037,-29.293,-29.721,-30.272,-30.867,-31.420,-31.893,-32.299,-32.653,-32.932,
--33.113,-33.263,-33.538,-34.061,-34.774,-35.457,-35.931,-36.254,-36.677,-37.402,-38.361,-39.262,-39.828,-39.996,-39.929,-39.899,
--40.174,-40.946,-42.243,-43.861,-45.406,-46.528,-47.160,-47.534,-47.936,-48.447,-48.926,-49.238,-49.424,-49.638,-49.941,-50.228,
--50.359,-50.327,-50.249,-50.206,-50.154,-49.997,-49.718,-49.395,-49.094,-48.809,-48.509,-48.209,-47.951,-47.719,-47.433,-47.051,
--46.630,-46.264,-45.956,-45.602,-45.131,-44.612,-44.185,-43.886,-43.590,-43.153,-42.578,-42.003,-41.534,-41.124,-40.650,-40.070,
--39.469,-38.965,-38.589,-38.297,-38.038,-37.794,-37.543,-37.248,-36.898,-36.549,-36.282,-36.104,-35.930,-35.665,-35.310,-34.967,
--34.736,-34.626,-34.561,-34.454,-34.269,-34.013,-33.697,-33.306,-32.817,-32.235,-31.619,-31.075,-30.695,-30.498,-30.400,-30.274,
--30.033,-29.676,-29.256,-28.817,-28.365,-27.882,-27.363,-26.810,-26.219,-25.580,-24.888,-24.150,-23.381,-22.596,-21.813,-21.043,
--20.284,-19.517,-18.725,-17.916,-17.122,-16.359,-15.603,-14.808,-13.956,-13.070,-12.187,-11.330,-10.496,-9.677,-8.859,-8.019,
--7.130,-6.183,-5.208,-4.249,-3.324,-2.414,-1.493,-.563,.354,1.245,2.128,3.033,3.974,4.944,5.925,6.900,
-7.857,8.787,9.686,10.559,11.414,12.259,13.107,13.970,14.848,15.725,16.582,17.427,18.288,19.191,20.145,21.151,
-22.220,23.345,24.466,25.479,26.323,27.051,27.773,28.536,29.257,29.821,30.224,30.600,31.077,31.639,32.145,32.500,
-32.752,33.030,33.395,33.799,34.171,34.513,34.881,35.291,35.695,36.048,36.364,36.693,37.044,37.371,37.628,37.828,
-38.025,38.248,38.481,38.688,38.844,38.934,38.957,38.950,39.004,39.218,39.609,40.081,40.494,40.761,40.873,40.841,
-40.643,40.260,39.748,39.254,38.932,38.840,38.914,39.032,39.095,39.060,38.933,38.746,38.535,38.321,38.092,37.811,
-37.446,37.000,36.519,36.075,35.726,35.495,35.363,35.297,35.279,35.315,35.408,35.545,35.712,35.928,36.242,36.689,
-37.255,37.909,38.662,39.559,40.585,41.617,42.492,43.158,43.703,44.221,44.673,44.953,45.081,45.285,45.789,46.532,
-47.135,47.208,46.685,45.857,45.087,44.542,44.157,43.793,43.350,42.780,42.090,41.394,40.913,40.834,41.141,41.599,
-41.943,42.063,42.004,41.841,41.592,41.248,40.801,40.222,39.468,38.612,37.983,38.056,39.099,40.875,42.780,44.290,
-45.312,46.091,46.847,47.582,48.197,48.709,49.252,49.890,50.532,51.056,51.490,51.999,52.699,53.524,54.273,54.745,
-54.812,54.429,53.673,52.789,52.115,51.851,51.874,51.833,51.471,50.863,50.314,50.036,49.951,49.805,49.430,48.862,
-48.229,47.577,46.852,46.023,45.020,43.928,42.990,42.254,41.651,41.113,40.653,40.326,40.139,40.015,39.843,39.546,
-39.096,38.479,37.682,36.727,35.690,34.669,33.722,32.851,32.045,31.330,30.751,30.307,29.939,29.592,29.273,29.042,
-28.934,28.927,28.991,29.141,29.407,29.764,30.134,30.465,30.806,31.250,31.811,32.384,32.830,33.082,33.170,33.153,
-33.083,33.014,33.003,33.057,33.102,33.045,32.870,32.654,32.466,32.290,32.057,31.735,31.357,30.959,30.544,30.127,
-29.779,29.560,29.416,29.190,28.794,28.319,27.952,27.765,27.655,27.489,27.283,27.158,27.158,27.173,27.087,26.968,
-27.023,27.362,27.816,28.060,27.904,27.487,27.171,27.268,27.817,28.566,29.132,29.212,28.706,27.703,26.360,24.777,
-22.974,20.956,18.776,16.555,14.446,12.611,11.182,10.194,9.542,9.022,8.480,7.922,7.480,7.245,7.165,7.104,
-6.977,6.812,6.684,6.652,6.757,7.049,7.549,8.198,8.888,9.552,10.204,10.873,11.527,12.129,12.739,13.485,
-14.373,15.177,15.609,15.623,15.483,15.488,15.659,15.776,15.698,15.550,15.547,15.723,15.961,16.303,17.059,18.475,
-20.325,21.972,22.926,23.289,23.566,24.053,24.508,24.461,23.767,22.749,21.851,21.235,20.772,20.310,19.843,19.421,
-19.007,18.507,17.899,17.244,16.578,15.839,14.953,13.931,12.856,11.776,10.664,9.497,8.310,7.139,5.949,4.673,
-3.323,2.009,.824,-.256,-1.306,-2.321,-3.192,-3.855,-4.387,-4.901,-5.370,-5.592,-5.385,-4.794,-4.085,-3.547,
--3.315,-3.336,-3.451,-3.486,-3.308,-2.857,-2.148,-1.221,-.104,1.161,2.437,3.490,4.108,4.242,4.020,3.616,
-3.136,2.624,2.131,1.714,1.378,1.044,.622,.072,-.601,-1.383,-2.235,-3.037,-3.641,-4.015,-4.320,-4.772,
--5.431,-6.148,-6.758,-7.282,-7.875,-8.613,-9.372,-9.964,-10.346,-10.638,-10.964,-11.323,-11.640,-11.892,-12.116,-12.308,
--12.404,-12.405,-12.505,-13.022,-14.135,-15.692,-17.285,-18.539,-19.341,-19.827,-20.172,-20.427,-20.548,-20.547,-20.557,-20.704,
--20.944,-21.077,-20.962,-20.711,-20.618,-20.880,-21.426,-22.029,-22.565,-23.074,-23.590,-23.967,-23.979,-23.589,-23.053,-22.733,
--22.814,-23.248,-23.905,-24.717,-25.638,-26.559,-27.352,-28.027,-28.802,-29.984,-31.767,-34.129,-36.855,-39.622,-42.094,-44.029,
--45.377,-46.262,-46.848,-47.215,-47.382,-47.403,-47.389,-47.407,-47.395,-47.217,-46.796,-46.156,-45.340,-44.353,-43.186,-41.867,
--40.425,-38.839,-37.096,-35.304,-33.652,-32.188,-30.688,-28.856,-26.721,-24.745,-23.453,-22.958,-22.914,-22.945,-23.029,-23.393,
--24.100,-24.870,-25.344,-25.459,-25.472,-25.647,-26.010,-26.421,-26.804,-27.219,-27.748,-28.367,-28.987,-29.532,-29.968,-30.261,
--30.403,-30.467,-30.597,-30.889,-31.287,-31.635,-31.832,-31.920,-32.015,-32.189,-32.440,-32.731,-33.042,-33.364,-33.689,-34.019,
--34.369,-34.739,-35.092,-35.385,-35.634,-35.916,-36.281,-36.691,-37.045,-37.279,-37.418,-37.520,-37.603,-37.640,-37.624,-37.597,
--37.614,-37.688,-37.780,-37.851,-37.903,-37.986,-38.155,-38.425,-38.754,-39.056,-39.267,-39.392,-39.494,-39.631,-39.796,-39.931,
--40.004,-40.049,-40.120,-40.224,-40.309,-40.318,-40.231,-40.045,-39.733,-39.266,-38.664,-38.018,-37.431,-36.948,-36.540,-36.156,
--35.768,-35.384,-35.030,-34.739,-34.535,-34.403,-34.279,-34.094,-33.852,-33.649,-33.608,-33.774,-34.049,-34.225,-34.086,-33.548,
--32.769,-32.144,-32.108,-32.849,-34.149,-35.537,-36.646,-37.432,-38.067,-38.639,-39.013,-38.985,-38.524,-37.820,-37.111,-36.505,
--35.979,-35.479,-34.991,-34.504,-33.981,-33.392,-32.747,-32.078,-31.388,-30.658,-29.891,-29.128,-28.410,-27.735,-27.087,-26.473,
--25.906,-25.352,-24.742,-24.058,-23.373,-22.761,-22.189,-21.534,-20.737,-19.894,-19.155,-18.544,-17.938,-17.216,-16.404,-15.610,
--14.870,-14.088,-13.162,-12.107,-11.015,-9.935,-8.827,-7.660,-6.483,-5.381,-4.373,-3.403,-2.429,-1.476,-.583,.264,
-1.124,2.019,2.908,3.755,4.587,5.452,6.348,7.213,8.004,8.749,9.515,10.336,11.201,12.093,13.012,13.943,
-14.828,15.617,16.317,16.985,17.676,18.407,19.189,20.048,20.984,21.920,22.740,23.398,23.965,24.543,25.148,25.694,
-26.118,26.479,26.911,27.507,28.235,28.990,29.672,30.241,30.708,31.118,31.508,31.872,32.165,32.361,32.502,32.634,
-32.673,32.414,31.765,31.002,30.691,31.230,32.442,33.665,34.322,34.396,34.341,34.538,34.908,35.052,34.718,34.072,
-33.537,33.406,33.641,33.995,34.273,34.480,34.755,35.181,35.670,36.046,36.256,36.483,36.997,37.873,38.902,39.827,
-40.636,41.523,42.517,43.241,43.158,42.038,40.049,37.329,33.620,28.604,22.712,17.436,14.570,14.919,17.712,21.244,
-24.106,25.864,26.814,27.347,27.625,27.690,27.625,27.506,27.310,26.952,26.437,25.886,25.410,24.982,24.473,23.795,
-22.985,22.183,21.536,21.109,20.817,20.451,19.817,18.911,17.959,17.237,16.824,16.554,16.208,15.727,15.219,14.795,
-14.445,14.091,13.686,13.239,12.752,12.205,11.605,11.015,10.497,10.050,9.634,9.240,8.889,8.564,8.185,7.693,
-7.141,6.655,6.299,6.014,5.713,5.408,5.194,5.125,5.133,5.112,5.037,4.950,4.858,4.671,4.278,3.671,
-2.947,2.217,1.532,.900,.332,-.163,-.618,-1.104,-1.672,-2.304,-2.942,-3.547,-4.125,-4.680,-5.189,-5.625,
--5.996,-6.340,-6.686,-7.020,-7.312,-7.560,-7.781,-7.990,-8.173,-8.323,-8.460,-8.617,-8.795,-8.944,-9.014,-9.006,
--8.972,-8.964,-8.983,-8.996,-8.990,-8.992,-9.046,-9.174,-9.365,-9.593,-9.821,-10.003,-10.128,-10.246,-10.418,-10.581,
--10.476,-9.814,-8.601,-7.299,-6.580,-6.814,-7.772,-8.832,-9.489,-9.670,-9.608,-9.503,-9.368,-9.145,-8.871,-8.668,
--8.608,-8.665,-8.787,-8.959,-9.157,-9.308,-9.343,-9.294,-9.276,-9.344,-9.407,-9.343,-9.158,-9.000,-8.979,-9.041,
--9.056,-9.009,-9.022,-9.187,-9.421,-9.556,-9.550,-9.539,-9.678,-9.948,-10.186,-10.259,-10.187,-10.089,-10.068,-10.169,
--10.405,-10.723,-10.956,-10.878,-10.413,-9.778,-9.380,-9.482,-9.984,-10.519,-10.787,-10.775,-10.681,-10.679,-10.787,-10.914,
--10.991,-11.020,-11.030,-11.037,-11.046,-11.065,-11.102,-11.141,-11.160,-11.157,-11.160,-11.200,-11.280,-11.367,-11.419,-11.416,
--11.366,-11.302,-11.260,-11.256,-11.273,-11.275,-11.249,-11.210,-11.182,-11.163,-11.128,-11.073,-11.025,-11.013,-11.023,-11.003,
--10.927,-10.828,-10.777,-10.806,-10.891,-10.982,-11.054,-11.123,-11.209,-11.323,-11.470,-11.654,-11.871,-12.092,-12.281,-12.422,
--12.526,-12.617,-12.713,-12.824,-12.959,-13.114,-13.266,-13.392,-13.502,-13.636,-13.823,-14.041,-14.239,-14.397,-14.544,-14.720,
--14.911,-15.061,-15.129,-15.132,-15.119,-15.117,-15.121,-15.123,-15.138,-15.179,-15.235,-15.286,-15.342,-15.452,-15.656,-15.932,
--16.213,-16.452,-16.661,-16.887,-17.156,-17.444,-17.708,-17.938,-18.174,-18.472,-18.857,-19.297,-19.730,-20.109,-20.440,-20.769,
--21.129,-21.512,-21.884,-22.218,-22.519,-22.805,-23.085,-23.364,-23.653,-23.961,-24.268,-24.533,-24.738,-24.917,-25.135,-25.427,
--25.769,-26.112,-26.428,-26.721,-26.994,-27.237,-27.449,-27.651,-27.855,-28.045,-28.202,-28.346,-28.531,-28.784,-29.059,-29.290,
--29.469,-29.658,-29.906,-30.193,-30.458,-30.694,-30.951,-31.263,-31.595,-31.886,-32.130,-32.378,-32.659,-32.942,-33.183,-33.401,
--33.661,-33.988,-34.336,-34.651,-34.931,-35.217,-35.520,-35.807,-36.057,-36.298,-36.575,-36.891,-37.215,-37.521,-37.802,-38.032,
--38.169,-38.219,-38.286,-38.492,-38.840,-39.186,-39.379,-39.415,-39.434,-39.560,-39.785,-40.016,-40.194,-40.340,-40.491,-40.641,
--40.767,-40.870,-40.966,-41.050,-41.097,-41.108,-41.127,-41.188,-41.274,-41.333,-41.353,-41.371,-41.427,-41.519,-41.607,-41.659,
--41.668,-41.637,-41.574,-41.502,-41.443,-41.384,-41.280,-41.117,-40.955,-40.870,-40.858,-40.828,-40.710,-40.553,-40.461,-40.444,
--40.366,-40.077,-39.562,-38.958,-38.420,-38.029,-37.795,-37.704,-37.702,-37.693,-37.592,-37.395,-37.119,-36.672,-35.845,-34.571,
--33.181,-32.298,-32.363,-33.226,-34.244,-34.809,-34.787,-34.459,-34.136,-33.880,-33.579,-33.179,-32.773,-32.475,-32.296,-32.134,
--31.894,-31.564,-31.214,-30.925,-30.714,-30.505,-30.183,-29.700,-29.135,-28.628,-28.238,-27.896,-27.515,-27.114,-26.766,-26.447,
--26.000,-25.324,-24.563,-24.020,-23.853,-23.916,-23.956,-23.917,-23.945,-24.079,-24.031,-23.436,-22.316,-21.224,-20.835,-21.370,
--22.441,-23.418,-23.903,-23.878,-23.523,-23.025,-22.562,-22.334,-22.494,-23.022,-23.721,-24.380,-24.935,-25.456,-26.023,-26.647,
--27.310,-28.018,-28.775,-29.514,-30.097,-30.421,-30.503,-30.459,-30.402,-30.353,-30.261,-30.073,-29.778,-29.388,-28.905,-28.326,
--27.674,-27.043,-26.575,-26.395,-26.530,-26.885,-27.289,-27.593,-27.744,-27.777,-27.757,-27.716,-27.648,-27.548,-27.440,-27.368,
--27.349,-27.356,-27.335,-27.252,-27.128,-27.033,-27.044,-27.186,-27.414,-27.635,-27.778,-27.843,-27.904,-28.047,-28.311,-28.666,
--29.043,-29.383,-29.659,-29.870,-30.020,-30.115,-30.156,-30.150,-30.106,-30.048,-30.013,-30.037,-30.125,-30.239,-30.308,-30.261,
--30.063,-29.723,-29.303,-28.899,-28.620,-28.534,-28.647,-28.913,-29.284,-29.731,-30.234,-30.757,-31.255,-31.716,-32.158,-32.577,
--32.923,-33.158,-33.360,-33.705,-34.311,-35.074,-35.713,-36.041,-36.184,-36.503,-37.261,-38.352,-39.374,-39.957,-40.043,-39.894,
--39.885,-40.303,-41.253,-42.639,-44.186,-45.550,-46.504,-47.090,-47.554,-48.100,-48.716,-49.240,-49.582,-49.830,-50.124,-50.464,
--50.710,-50.759,-50.670,-50.584,-50.552,-50.489,-50.309,-50.037,-49.768,-49.531,-49.266,-48.932,-48.581,-48.288,-48.038,-47.730,
--47.319,-46.884,-46.528,-46.231,-45.872,-45.390,-44.873,-44.440,-44.076,-43.651,-43.112,-42.582,-42.202,-41.901,-41.416,-40.580,
--39.560,-38.738,-38.357,-38.317,-38.323,-38.188,-37.952,-37.734,-37.549,-37.316,-36.992,-36.636,-36.328,-36.068,-35.790,-35.471,
--35.175,-34.985,-34.907,-34.862,-34.764,-34.586,-34.356,-34.105,-33.823,-33.468,-33.004,-32.453,-31.904,-31.468,-31.200,-31.053,
--30.907,-30.655,-30.269,-29.792,-29.284,-28.775,-28.266,-27.747,-27.211,-26.648,-26.049,-25.404,-24.709,-23.967,-23.189,-22.394,
--21.602,-20.809,-19.998,-19.168,-18.355,-17.605,-16.918,-16.241,-15.509,-14.702,-13.846,-12.973,-12.089,-11.191,-10.296,-9.417,
--8.541,-7.627,-6.659,-5.673,-4.720,-3.814,-2.922,-2.013,-1.095,-.193,.696,1.607,2.565,3.555,4.541,5.512,
-6.479,7.444,8.390,9.297,10.168,11.027,11.894,12.776,13.671,14.572,15.461,16.317,17.139,17.967,18.858,19.847,
-20.921,22.037,23.144,24.190,25.129,25.945,26.673,27.370,28.048,28.653,29.128,29.505,29.889,30.357,30.870,31.318,
-31.653,31.937,32.263,32.645,33.020,33.343,33.656,34.023,34.447,34.862,35.227,35.577,35.963,36.369,36.710,36.936,
-37.091,37.270,37.512,37.770,37.978,38.128,38.255,38.386,38.520,38.656,38.826,39.065,39.354,39.613,39.750,39.720,
-39.539,39.264,38.958,38.666,38.406,38.177,37.982,37.860,37.853,37.958,38.096,38.162,38.103,37.950,37.758,37.531,
-37.217,36.778,36.255,35.749,35.349,35.080,34.909,34.799,34.742,34.757,34.851,35.000,35.162,35.320,35.510,35.807,
-36.270,36.902,37.677,38.578,39.592,40.659,41.658,42.481,43.128,43.696,44.252,44.763,45.191,45.634,46.291,47.205,
-48.065,48.353,47.766,46.505,45.124,44.088,43.475,43.070,42.653,42.175,41.698,41.300,41.054,41.049,41.331,41.806,
-42.261,42.523,42.582,42.542,42.467,42.312,41.994,41.477,40.777,39.955,39.199,38.881,39.407,40.877,42.887,44.742,
-45.962,46.586,47.012,47.568,48.280,48.990,49.599,50.126,50.596,50.976,51.273,51.614,52.161,52.934,53.754,54.368,
-54.610,54.440,53.908,53.150,52.410,51.946,51.836,51.865,51.696,51.174,50.472,49.904,49.614,49.470,49.242,48.834,
-48.303,47.710,47.003,46.099,45.020,43.803,42.644,41.689,40.974,40.442,40.049,39.789,39.644,39.533,39.356,39.063,
-38.675,38.221,37.671,36.952,36.028,34.967,33.904,32.949,32.133,31.440,30.858,30.394,30.037,29.738,29.455,29.193,
-28.989,28.862,28.796,28.795,28.916,29.212,29.650,30.116,30.523,30.904,31.356,31.913,32.483,32.925,33.154,33.178,
-33.052,32.856,32.703,32.703,32.874,33.097,33.207,33.146,32.992,32.842,32.690,32.454,32.088,31.635,31.158,30.676,
-30.197,29.779,29.491,29.298,29.056,28.659,28.174,27.785,27.594,27.526,27.441,27.304,27.192,27.149,27.109,27.010,
-26.931,27.061,27.491,28.086,28.585,28.837,28.927,29.087,29.489,30.114,30.761,31.152,31.065,30.420,29.296,27.859,
-26.244,24.487,22.550,20.416,18.171,16.005,14.132,12.675,11.595,10.729,9.914,9.124,8.482,8.136,8.109,8.271,
-8.436,8.489,8.419,8.286,8.179,8.199,8.419,8.825,9.327,9.847,10.406,11.078,11.854,12.612,13.251,13.840,
-14.542,15.376,16.096,16.403,16.260,15.953,15.799,15.856,15.951,15.948,15.890,15.869,15.870,15.889,16.139,16.988,
-18.536,20.318,21.603,22.057,22.070,22.324,23.050,23.785,23.879,23.169,22.094,21.206,20.681,20.326,19.931,19.488,
-19.084,18.701,18.224,17.604,16.909,16.206,15.454,14.561,13.510,12.384,11.260,10.139,8.989,7.815,6.647,5.476,
-4.260,2.993,1.743,.574,-.526,-1.619,-2.714,-3.748,-4.673,-5.522,-6.337,-7.052,-7.488,-7.508,-7.161,-6.668,
--6.274,-6.116,-6.192,-6.403,-6.585,-6.564,-6.221,-5.531,-4.527,-3.235,-1.683,.014,1.606,2.787,3.357,3.312,
-2.804,2.058,1.304,.727,.410,.302,.270,.188,-.024,-.444,-1.150,-2.118,-3.130,-3.878,-4.222,-4.335,
--4.542,-5.020,-5.683,-6.361,-7.012,-7.709,-8.463,-9.153,-9.673,-10.081,-10.530,-11.063,-11.542,-11.821,-11.930,-12.028,
--12.196,-12.353,-12.416,-12.509,-12.936,-13.917,-15.351,-16.860,-18.072,-18.868,-19.381,-19.794,-20.179,-20.498,-20.729,-20.926,
--21.150,-21.364,-21.460,-21.420,-21.410,-21.663,-22.236,-22.921,-23.433,-23.677,-23.790,-23.926,-24.050,-23.994,-23.701,-23.344,
--23.191,-23.383,-23.872,-24.530,-25.265,-26.022,-26.755,-27.454,-28.198,-29.149,-30.480,-32.304,-34.645,-37.384,-40.205,-42.665,
--44.421,-45.439,-45.959,-46.235,-46.349,-46.288,-46.135,-46.075,-46.197,-46.379,-46.432,-46.320,-46.163,-46.028,-45.806,-45.340,
--44.600,-43.645,-42.457,-40.941,-39.133,-37.281,-35.579,-33.847,-31.658,-28.891,-26.076,-24.053,-23.229,-23.255,-23.449,-23.482,
--23.534,-23.878,-24.440,-24.882,-25.005,-24.951,-25.004,-25.282,-25.709,-26.196,-26.768,-27.475,-28.268,-29.014,-29.605,-30.011,
--30.255,-30.375,-30.447,-30.577,-30.830,-31.161,-31.454,-31.642,-31.771,-31.931,-32.151,-32.393,-32.615,-32.833,-33.097,-33.427,
--33.795,-34.149,-34.455,-34.715,-34.969,-35.277,-35.678,-36.143,-36.580,-36.897,-37.073,-37.157,-37.208,-37.252,-37.291,-37.338,
--37.415,-37.529,-37.648,-37.736,-37.770,-37.758,-37.733,-37.755,-37.890,-38.167,-38.527,-38.852,-39.056,-39.161,-39.261,-39.423,
--39.631,-39.828,-39.989,-40.127,-40.251,-40.331,-40.321,-40.188,-39.914,-39.483,-38.896,-38.210,-37.537,-36.984,-36.581,-36.277,
--35.991,-35.665,-35.289,-34.887,-34.512,-34.213,-34.001,-33.837,-33.677,-33.523,-33.422,-33.414,-33.475,-33.534,-33.502,-33.295,
--32.862,-32.266,-31.758,-31.713,-32.391,-33.701,-35.239,-36.589,-37.601,-38.368,-38.972,-39.309,-39.201,-38.634,-37.817,-37.015,
--36.350,-35.785,-35.258,-34.769,-34.350,-33.981,-33.578,-33.060,-32.396,-31.620,-30.807,-30.038,-29.351,-28.712,-28.059,-27.378,
--26.730,-26.171,-25.668,-25.123,-24.493,-23.838,-23.220,-22.580,-21.782,-20.788,-19.754,-18.888,-18.231,-17.632,-16.928,-16.118,
--15.317,-14.574,-13.803,-12.898,-11.863,-10.785,-9.713,-8.614,-7.459,-6.291,-5.194,-4.192,-3.247,-2.323,-1.434,-.593,
-.239,1.111,2.012,2.883,3.702,4.539,5.476,6.490,7.457,8.276,8.969,9.658,10.437,11.310,12.229,13.148,
-14.042,14.887,15.662,16.376,17.068,17.771,18.495,19.243,20.026,20.838,21.630,22.338,22.948,23.523,24.142,24.809,
-25.457,26.024,26.541,27.103,27.781,28.554,29.320,29.970,30.454,30.813,31.138,31.489,31.832,32.091,32.248,32.382,
-32.537,32.564,32.179,31.286,30.249,29.737,30.199,31.449,32.822,33.737,34.115,34.258,34.415,34.535,34.417,34.004,
-33.461,33.015,32.800,32.840,33.122,33.605,34.208,34.833,35.419,35.941,36.375,36.716,37.059,37.579,38.374,39.346,
-40.293,41.142,41.971,42.762,43.192,42.842,41.597,39.709,37.326,34.089,29.485,23.755,18.354,15.211,15.318,17.994,
-21.498,24.354,26.123,27.138,27.780,28.137,28.183,28.016,27.798,27.560,27.204,26.684,26.116,25.646,25.267,24.807,
-24.115,23.224,22.353,21.746,21.488,21.408,21.169,20.503,19.437,18.304,17.473,17.046,16.818,16.511,16.036,15.506,
-15.039,14.633,14.215,13.770,13.343,12.953,12.551,12.093,11.600,11.124,10.674,10.229,9.790,9.394,9.046,8.681,
-8.238,7.748,7.313,6.976,6.669,6.310,5.927,5.644,5.533,5.532,5.519,5.450,5.362,5.267,5.079,4.680,
-4.049,3.282,2.508,1.799,1.166,.602,.094,-.388,-.895,-1.456,-2.057,-2.663,-3.254,-3.831,-4.380,-4.869,
--5.276,-5.627,-5.972,-6.334,-6.691,-7.008,-7.274,-7.501,-7.700,-7.870,-8.023,-8.196,-8.415,-8.647,-8.817,-8.869,
--8.833,-8.791,-8.803,-8.855,-8.902,-8.931,-8.967,-9.020,-9.061,-9.077,-9.116,-9.240,-9.428,-9.583,-9.659,-9.750,
--9.960,-10.160,-9.960,-9.043,-7.567,-6.191,-5.598,-5.968,-6.908,-7.864,-8.551,-9.003,-9.307,-9.430,-9.313,-9.039,
--8.817,-8.792,-8.931,-9.116,-9.276,-9.407,-9.500,-9.522,-9.479,-9.444,-9.476,-9.533,-9.522,-9.421,-9.315,-9.280,
--9.286,-9.243,-9.144,-9.089,-9.171,-9.352,-9.510,-9.584,-9.623,-9.699,-9.812,-9.902,-9.937,-9.931,-9.895,-9.830,
--9.799,-9.943,-10.340,-10.824,-11.029,-10.696,-9.964,-9.312,-9.168,-9.563,-10.153,-10.560,-10.664,-10.599,-10.536,-10.535,
--10.562,-10.593,-10.644,-10.718,-10.783,-10.807,-10.801,-10.802,-10.830,-10.865,-10.883,-10.888,-10.906,-10.950,-11.004,-11.038,
--11.041,-11.026,-11.016,-11.025,-11.041,-11.042,-11.012,-10.965,-10.937,-10.942,-10.950,-10.912,-10.816,-10.710,-10.657,-10.661,
--10.660,-10.594,-10.470,-10.354,-10.304,-10.321,-10.376,-10.451,-10.550,-10.679,-10.829,-10.989,-11.168,-11.377,-11.607,-11.825,
--12.004,-12.144,-12.261,-12.368,-12.474,-12.596,-12.750,-12.931,-13.109,-13.262,-13.404,-13.568,-13.768,-13.977,-14.161,-14.321,
--14.479,-14.642,-14.783,-14.868,-14.890,-14.876,-14.851,-14.827,-14.811,-14.820,-14.864,-14.928,-14.986,-15.035,-15.117,-15.280,
--15.524,-15.795,-16.033,-16.231,-16.434,-16.685,-16.978,-17.267,-17.521,-17.766,-18.064,-18.454,-18.912,-19.368,-19.765,-20.107,
--20.444,-20.815,-21.216,-21.611,-21.979,-22.317,-22.633,-22.924,-23.193,-23.456,-23.738,-24.039,-24.326,-24.576,-24.806,-25.062,
--25.367,-25.702,-26.028,-26.325,-26.592,-26.830,-27.032,-27.206,-27.374,-27.552,-27.726,-27.879,-28.031,-28.234,-28.506,-28.805,
--29.069,-29.291,-29.519,-29.788,-30.075,-30.339,-30.588,-30.866,-31.185,-31.497,-31.752,-31.966,-32.201,-32.476,-32.743,-32.960,
--33.162,-33.422,-33.763,-34.126,-34.449,-34.736,-35.031,-35.348,-35.661,-35.950,-36.239,-36.549,-36.862,-37.148,-37.409,-37.666,
--37.889,-38.011,-38.023,-38.046,-38.239,-38.622,-39.028,-39.265,-39.308,-39.296,-39.378,-39.571,-39.800,-40.008,-40.202,-40.395,
--40.573,-40.716,-40.827,-40.916,-40.964,-40.958,-40.936,-40.971,-41.091,-41.239,-41.336,-41.374,-41.413,-41.490,-41.575,-41.622,
--41.629,-41.631,-41.626,-41.582,-41.493,-41.414,-41.388,-41.383,-41.324,-41.196,-41.070,-41.017,-41.013,-40.983,-40.893,-40.784,
--40.686,-40.557,-40.320,-39.953,-39.499,-39.017,-38.557,-38.183,-37.967,-37.909,-37.902,-37.825,-37.667,-37.486,-37.225,-36.638,
--35.524,-34.061,-32.836,-32.432,-32.945,-33.912,-34.708,-35.007,-34.882,-34.568,-34.215,-33.847,-33.470,-33.127,-32.852,-32.621,
--32.367,-32.039,-31.650,-31.269,-30.983,-30.820,-30.690,-30.427,-29.933,-29.284,-28.679,-28.253,-27.979,-27.756,-27.543,-27.353,
--27.117,-26.664,-25.914,-25.055,-24.440,-24.245,-24.300,-24.314,-24.212,-24.168,-24.275,-24.295,-23.853,-22.900,-21.880,-21.391,
--21.673,-22.466,-23.301,-23.864,-24.067,-23.919,-23.467,-22.886,-22.490,-22.551,-23.069,-23.783,-24.432,-24.980,-25.571,-26.301,
--27.095,-27.805,-28.376,-28.873,-29.358,-29.797,-30.113,-30.290,-30.395,-30.488,-30.551,-30.510,-30.327,-30.038,-29.690,-29.271,
--28.717,-28.014,-27.267,-26.678,-26.418,-26.526,-26.880,-27.284,-27.574,-27.689,-27.664,-27.572,-27.473,-27.382,-27.290,-27.194,
--27.110,-27.061,-27.056,-27.077,-27.095,-27.101,-27.112,-27.167,-27.293,-27.486,-27.703,-27.885,-27.991,-28.037,-28.090,-28.236,
--28.515,-28.898,-29.299,-29.640,-29.883,-30.032,-30.099,-30.083,-29.984,-29.834,-29.705,-29.676,-29.776,-29.951,-30.082,-30.053,
--29.812,-29.390,-28.883,-28.414,-28.097,-28.008,-28.162,-28.499,-28.926,-29.365,-29.794,-30.226,-30.673,-31.128,-31.587,-32.050,
--32.496,-32.871,-33.154,-33.427,-33.856,-34.518,-35.268,-35.816,-36.013,-36.059,-36.376,-37.224,-38.429,-39.510,-40.075,-40.125,
--40.005,-40.114,-40.666,-41.646,-42.886,-44.158,-45.253,-46.079,-46.716,-47.341,-48.053,-48.782,-49.387,-49.825,-50.188,-50.560,
--50.888,-51.043,-50.997,-50.878,-50.823,-50.820,-50.747,-50.539,-50.281,-50.086,-49.940,-49.723,-49.377,-48.984,-48.660,-48.394,
--48.075,-47.650,-47.199,-46.824,-46.504,-46.128,-45.660,-45.182,-44.758,-44.323,-43.778,-43.192,-42.766,-42.534,-42.160,-41.185,
--39.553,-37.836,-36.833,-36.888,-37.611,-38.281,-38.461,-38.242,-37.950,-37.750,-37.560,-37.256,-36.859,-36.482,-36.182,-35.920,
--35.651,-35.404,-35.243,-35.178,-35.148,-35.083,-34.961,-34.802,-34.624,-34.416,-34.140,-33.767,-33.300,-32.794,-32.336,-31.989,
--31.745,-31.524,-31.232,-30.824,-30.320,-29.772,-29.221,-28.682,-28.147,-27.603,-27.039,-26.453,-25.838,-25.182,-24.472,-23.716,
--22.944,-22.182,-21.425,-20.641,-19.827,-19.029,-18.297,-17.621,-16.925,-16.141,-15.277,-14.390,-13.517,-12.634,-11.714,-10.773,
--9.855,-8.964,-8.062,-7.117,-6.157,-5.234,-4.358,-3.490,-2.597,-1.689,-.787,.126,1.092,2.119,3.154,4.139,
-5.076,6.012,6.976,7.939,8.855,9.721,10.577,11.457,12.363,13.275,14.178,15.069,15.941,16.803,17.690,18.656,
-19.720,20.838,21.932,22.947,23.870,24.707,25.461,26.134,26.737,27.279,27.763,28.197,28.614,29.060,29.552,30.044,
-30.480,30.854,31.218,31.608,31.998,32.332,32.608,32.896,33.251,33.649,34.022,34.355,34.710,35.139,35.591,35.946,
-36.150,36.277,36.451,36.712,36.988,37.198,37.349,37.519,37.753,38.005,38.192,38.291,38.346,38.405,38.450,38.410,
-38.255,38.051,37.934,37.997,38.186,38.311,38.182,37.776,37.277,36.946,36.910,37.079,37.240,37.252,37.120,36.919,
-36.671,36.334,35.884,35.383,34.941,34.629,34.431,34.298,34.214,34.203,34.293,34.468,34.679,34.879,35.065,35.278,
-35.585,36.043,36.680,37.491,38.442,39.462,40.442,41.275,41.926,42.464,42.986,43.517,44.021,44.518,45.173,46.148,
-47.323,48.204,48.217,47.188,45.547,44.004,43.022,42.558,42.272,41.915,41.494,41.157,41.006,41.065,41.330,41.762,
-42.242,42.596,42.737,42.744,42.772,42.867,42.901,42.693,42.168,41.408,40.616,40.084,40.154,41.057,42.701,44.603,
-46.156,47.050,47.444,47.753,48.250,48.906,49.530,49.992,50.285,50.453,50.567,50.777,51.286,52.182,53.294,54.260,
-54.782,54.797,54.433,53.857,53.207,52.625,52.238,52.041,51.849,51.437,50.777,50.075,49.569,49.287,49.046,48.663,
-48.121,47.510,46.848,46.039,45.001,43.803,42.566,41.540,40.725,40.120,39.683,39.401,39.262,39.193,39.058,38.755,
-38.300,37.795,37.314,36.815,36.170,35.295,34.240,33.166,32.228,31.479,30.880,30.379,29.961,29.632,29.374,29.156,
-28.959,28.794,28.676,28.609,28.614,28.740,29.028,29.444,29.893,30.314,30.740,31.248,31.847,32.433,32.869,33.077,
-33.063,32.870,32.580,32.331,32.274,32.460,32.773,33.029,33.134,33.143,33.131,33.068,32.849,32.434,31.907,31.383,
-30.905,30.458,30.053,29.727,29.462,29.149,28.699,28.169,27.730,27.493,27.407,27.341,27.233,27.119,27.038,26.958,
-26.857,26.809,26.970,27.424,28.095,28.811,29.451,30.003,30.509,30.975,31.344,31.533,31.455,31.037,30.251,29.150,
-27.858,26.499,25.096,23.569,21.837,19.942,18.069,16.428,15.095,13.954,12.821,11.623,10.481,9.603,9.118,8.983,
-9.062,9.225,9.392,9.495,9.484,9.391,9.351,9.501,9.855,10.305,10.770,11.308,12.030,12.923,13.817,14.566,
-15.207,15.878,16.579,17.083,17.150,16.808,16.359,16.099,16.082,16.165,16.220,16.222,16.152,15.972,15.788,15.967,
-16.904,18.565,20.327,21.426,21.640,21.481,21.644,22.288,22.917,22.943,22.292,21.412,20.753,20.366,20.016,19.558,
-19.086,18.730,18.432,17.999,17.342,16.559,15.789,15.031,14.169,13.135,11.989,10.831,9.695,8.553,7.388,6.219,
-5.057,3.883,2.679,1.472,.301,-.832,-1.959,-3.095,-4.217,-5.307,-6.368,-7.373,-8.205,-8.708,-8.820,-8.658,
--8.447,-8.376,-8.508,-8.811,-9.207,-9.581,-9.782,-9.660,-9.126,-8.153,-6.748,-4.948,-2.887,-.842,.825,1.824,
-2.070,1.701,1.002,.279,-.260,-.561,-.687,-.709,-.648,-.544,-.571,-.974,-1.839,-2.913,-3.750,-4.096,
--4.113,-4.202,-4.620,-5.306,-6.064,-6.806,-7.564,-8.322,-8.958,-9.402,-9.776,-10.279,-10.948,-11.583,-11.966,-12.081,
--12.101,-12.166,-12.259,-12.332,-12.483,-12.941,-13.850,-15.102,-16.406,-17.505,-18.338,-18.991,-19.558,-20.058,-20.470,-20.810,
--21.136,-21.470,-21.748,-21.899,-21.971,-22.161,-22.651,-23.387,-24.065,-24.367,-24.250,-23.965,-23.807,-23.855,-23.964,-23.978,
--23.901,-23.866,-23.997,-24.324,-24.808,-25.387,-26.008,-26.665,-27.421,-28.390,-29.658,-31.259,-33.217,-35.564,-38.225,-40.872,
--42.998,-44.259,-44.747,-44.884,-45.011,-45.144,-45.138,-45.005,-44.951,-45.111,-45.366,-45.513,-45.533,-45.589,-45.767,-45.944,
--45.968,-45.844,-45.626,-45.154,-44.106,-42.385,-40.327,-38.351,-36.402,-33.967,-30.773,-27.370,-24.837,-23.817,-23.932,-24.224,
--24.087,-23.681,-23.501,-23.726,-24.105,-24.363,-24.519,-24.774,-25.202,-25.685,-26.128,-26.604,-27.247,-28.042,-28.803,-29.350,
--29.655,-29.828,-29.990,-30.203,-30.469,-30.758,-31.023,-31.225,-31.374,-31.531,-31.744,-31.998,-32.231,-32.414,-32.594,-32.844,
--33.180,-33.531,-33.808,-33.987,-34.147,-34.416,-34.872,-35.475,-36.089,-36.579,-36.891,-37.062,-37.146,-37.164,-37.124,-37.071,
--37.076,-37.179,-37.337,-37.476,-37.562,-37.616,-37.660,-37.691,-37.713,-37.785,-37.979,-38.287,-38.588,-38.755,-38.779,-38.780,
--38.888,-39.131,-39.433,-39.712,-39.934,-40.100,-40.195,-40.178,-40.003,-39.649,-39.129,-38.503,-37.864,-37.301,-36.846,-36.461,
--36.090,-35.714,-35.353,-35.023,-34.704,-34.371,-34.023,-33.687,-33.399,-33.194,-33.103,-33.126,-33.203,-33.233,-33.155,-32.983,
--32.752,-32.443,-32.037,-31.667,-31.661,-32.338,-33.711,-35.413,-36.967,-38.130,-38.954,-39.551,-39.871,-39.762,-39.196,-38.363,
--37.519,-36.777,-36.091,-35.404,-34.753,-34.210,-33.760,-33.284,-32.662,-31.886,-31.059,-30.311,-29.700,-29.174,-28.616,-27.945,
--27.201,-26.511,-25.972,-25.548,-25.118,-24.605,-24.039,-23.461,-22.813,-21.972,-20.920,-19.813,-18.857,-18.106,-17.435,-16.694,
--15.865,-15.026,-14.214,-13.378,-12.458,-11.470,-10.468,-9.454,-8.380,-7.234,-6.081,-5.003,-4.014,-3.074,-2.156,-1.276,
--.441,.391,1.259,2.136,2.966,3.761,4.630,5.653,6.765,7.782,8.575,9.192,9.804,10.543,11.414,12.337,
-13.247,14.125,14.962,15.739,16.450,17.121,17.798,18.507,19.242,19.983,20.715,21.423,22.093,22.728,23.355,24.007,
-24.690,25.373,26.020,26.636,27.269,27.975,28.746,29.495,30.098,30.494,30.745,30.992,31.322,31.693,31.994,32.193,
-32.349,32.455,32.293,31.570,30.285,28.944,28.301,28.783,30.155,31.746,32.998,33.778,34.213,34.372,34.206,33.741,
-33.192,32.813,32.682,32.718,32.866,33.195,33.766,34.489,35.185,35.764,36.272,36.764,37.219,37.635,38.129,38.853,
-39.792,40.748,41.555,42.204,42.691,42.798,42.205,40.851,39.010,36.842,33.953,29.708,24.198,18.813,15.552,15.547,
-18.188,21.704,24.557,26.309,27.334,28.024,28.410,28.418,28.173,27.922,27.738,27.467,26.974,26.351,25.809,25.419,
-25.022,24.399,23.520,22.597,21.919,21.613,21.518,21.284,20.632,19.594,18.506,17.730,17.346,17.127,16.801,16.305,
-15.767,15.298,14.859,14.363,13.826,13.361,13.029,12.764,12.456,12.067,11.639,11.214,10.788,10.357,9.941,9.555,
-9.167,8.738,8.288,7.886,7.555,7.234,6.856,6.456,6.149,6.005,5.975,5.949,5.871,5.754,5.601,5.347,
-4.911,4.284,3.542,2.781,2.065,1.418,.852,.355,-.118,-.620,-1.169,-1.738,-2.300,-2.859,-3.431,-3.999,
--4.507,-4.915,-5.243,-5.553,-5.887,-6.240,-6.582,-6.889,-7.153,-7.367,-7.532,-7.683,-7.873,-8.127,-8.399,-8.597,
--8.665,-8.643,-8.620,-8.650,-8.717,-8.782,-8.848,-8.936,-9.012,-8.995,-8.854,-8.695,-8.675,-8.826,-9.007,-9.089,
--9.147,-9.381,-9.789,-9.981,-9.450,-8.078,-6.354,-5.040,-4.610,-5.008,-5.890,-6.963,-8.065,-9.014,-9.563,-9.588,
--9.262,-8.942,-8.872,-9.017,-9.200,-9.314,-9.385,-9.449,-9.479,-9.442,-9.376,-9.356,-9.391,-9.412,-9.367,-9.282,
--9.218,-9.179,-9.127,-9.055,-9.027,-9.104,-9.268,-9.443,-9.570,-9.642,-9.664,-9.636,-9.586,-9.586,-9.673,-9.773,
--9.762,-9.631,-9.561,-9.759,-10.194,-10.559,-10.534,-10.112,-9.623,-9.430,-9.622,-9.993,-10.288,-10.418,-10.446,-10.439,
--10.394,-10.300,-10.212,-10.212,-10.317,-10.448,-10.517,-10.510,-10.487,-10.502,-10.551,-10.595,-10.609,-10.604,-10.604,-10.620,
--10.650,-10.686,-10.723,-10.758,-10.785,-10.797,-10.784,-10.745,-10.697,-10.670,-10.678,-10.692,-10.660,-10.559,-10.428,-10.335,
--10.303,-10.290,-10.235,-10.130,-10.017,-9.941,-9.902,-9.881,-9.882,-9.940,-10.076,-10.273,-10.488,-10.695,-10.897,-11.100,
--11.299,-11.481,-11.643,-11.785,-11.908,-12.016,-12.139,-12.312,-12.544,-12.799,-13.022,-13.195,-13.351,-13.533,-13.744,-13.948,
--14.118,-14.256,-14.382,-14.501,-14.595,-14.645,-14.650,-14.623,-14.577,-14.531,-14.510,-14.532,-14.593,-14.664,-14.729,-14.807,
--14.939,-15.143,-15.390,-15.632,-15.849,-16.063,-16.311,-16.595,-16.883,-17.145,-17.396,-17.686,-18.055,-18.492,-18.944,-19.363,
--19.744,-20.113,-20.497,-20.892,-21.278,-21.643,-21.988,-22.318,-22.630,-22.926,-23.221,-23.529,-23.842,-24.138,-24.402,-24.656,
--24.935,-25.249,-25.571,-25.867,-26.126,-26.358,-26.570,-26.756,-26.918,-27.076,-27.244,-27.420,-27.592,-27.777,-28.011,-28.305,
--28.626,-28.924,-29.190,-29.456,-29.740,-30.023,-30.284,-30.538,-30.818,-31.114,-31.374,-31.568,-31.736,-31.945,-32.208,-32.471,
--32.699,-32.926,-33.215,-33.568,-33.921,-34.226,-34.508,-34.821,-35.169,-35.511,-35.830,-36.149,-36.479,-36.788,-37.042,-37.266,
--37.514,-37.771,-37.949,-38.003,-38.034,-38.206,-38.567,-38.981,-39.263,-39.365,-39.395,-39.474,-39.622,-39.790,-39.953,-40.125,
--40.314,-40.489,-40.626,-40.725,-40.788,-40.796,-40.753,-40.728,-40.806,-40.989,-41.182,-41.296,-41.351,-41.431,-41.557,-41.652,
--41.648,-41.586,-41.557,-41.580,-41.582,-41.510,-41.421,-41.412,-41.486,-41.547,-41.516,-41.421,-41.343,-41.303,-41.245,-41.129,
--40.979,-40.845,-40.729,-40.588,-40.377,-40.070,-39.651,-39.142,-38.646,-38.309,-38.193,-38.202,-38.174,-38.060,-37.931,-37.783,
--37.392,-36.476,-35.046,-33.561,-32.647,-32.631,-33.321,-34.202,-34.828,-35.038,-34.913,-34.606,-34.239,-33.875,-33.530,-33.189,
--32.840,-32.483,-32.122,-31.754,-31.398,-31.112,-30.943,-30.831,-30.606,-30.130,-29.454,-28.791,-28.323,-28.051,-27.862,-27.691,
--27.538,-27.346,-26.964,-26.303,-25.526,-24.954,-24.757,-24.785,-24.757,-24.598,-24.478,-24.518,-24.542,-24.224,-23.478,-22.624,
--22.122,-22.183,-22.677,-23.348,-24.012,-24.534,-24.727,-24.443,-23.793,-23.185,-23.041,-23.456,-24.160,-24.824,-25.355,-25.889,
--26.533,-27.213,-27.764,-28.124,-28.382,-28.653,-28.959,-29.250,-29.501,-29.740,-29.971,-30.128,-30.126,-29.964,-29.728,-29.488,
--29.202,-28.756,-28.106,-27.373,-26.783,-26.513,-26.578,-26.852,-27.169,-27.407,-27.518,-27.509,-27.418,-27.296,-27.183,-27.091,
--27.010,-26.925,-26.845,-26.794,-26.800,-26.878,-27.019,-27.189,-27.352,-27.483,-27.588,-27.686,-27.786,-27.867,-27.917,-27.966,
--28.081,-28.317,-28.655,-29.016,-29.316,-29.523,-29.646,-29.695,-29.655,-29.518,-29.328,-29.178,-29.157,-29.272,-29.433,-29.495,
--29.349,-28.984,-28.494,-28.020,-27.688,-27.573,-27.690,-28.008,-28.452,-28.927,-29.364,-29.753,-30.135,-30.556,-31.023,-31.516,
--32.002,-32.448,-32.820,-33.124,-33.445,-33.911,-34.569,-35.273,-35.781,-35.992,-36.116,-36.528,-37.407,-38.532,-39.448,-39.869,
--39.919,-39.985,-40.380,-41.138,-42.090,-43.056,-43.942,-44.733,-45.465,-46.208,-47.030,-47.915,-48.755,-49.436,-49.954,-50.398,
--50.814,-51.126,-51.231,-51.155,-51.051,-51.030,-51.035,-50.928,-50.684,-50.434,-50.298,-50.226,-50.058,-49.726,-49.330,-49.001,
--48.730,-48.404,-47.975,-47.523,-47.135,-46.786,-46.384,-45.920,-45.474,-45.071,-44.607,-44.018,-43.446,-43.102,-42.880,-42.228,
--40.602,-38.149,-35.853,-34.841,-35.459,-36.995,-38.326,-38.807,-38.583,-38.178,-37.907,-37.718,-37.444,-37.062,-36.686,-36.392,
--36.148,-35.908,-35.689,-35.546,-35.493,-35.484,-35.462,-35.403,-35.305,-35.166,-34.975,-34.726,-34.419,-34.057,-33.650,-33.233,
--32.849,-32.514,-32.193,-31.826,-31.372,-30.838,-30.264,-29.692,-29.137,-28.590,-28.028,-27.439,-26.832,-26.216,-25.583,-24.908,
--24.191,-23.461,-22.753,-22.059,-21.337,-20.572,-19.807,-19.086,-18.385,-17.613,-16.713,-15.736,-14.787,-13.914,-13.064,-12.167,
--11.227,-10.303,-9.423,-8.548,-7.633,-6.694,-5.783,-4.916,-4.052,-3.158,-2.243,-1.329,-.397,.598,1.653,2.697,
-3.663,4.568,5.486,6.459,7.448,8.387,9.267,10.138,11.044,11.974,12.888,13.770,14.637,15.517,16.433,17.410,
-18.469,19.591,20.708,21.739,22.649,23.462,24.211,24.890,25.469,25.941,26.346,26.751,27.198,27.695,28.216,28.726,
-29.198,29.628,30.045,30.476,30.911,31.303,31.621,31.895,32.195,32.547,32.907,33.219,33.501,33.831,34.253,34.693,
-35.026,35.206,35.321,35.500,35.781,36.089,36.348,36.563,36.803,37.086,37.343,37.490,37.520,37.508,37.510,37.485,
-37.347,37.099,36.908,37.014,37.513,38.210,38.688,38.587,37.880,36.912,36.154,35.871,35.982,36.201,36.294,36.206,
-35.996,35.709,35.342,34.910,34.485,34.151,33.929,33.782,33.681,33.650,33.731,33.918,34.157,34.393,34.618,34.862,
-35.154,35.509,35.944,36.500,37.223,38.105,39.054,39.922,40.595,41.076,41.463,41.847,42.229,42.572,42.932,43.505,
-44.427,45.524,46.280,46.184,45.170,43.722,42.509,41.884,41.715,41.645,41.464,41.218,41.056,41.052,41.198,41.475,
-41.854,42.241,42.496,42.570,42.584,42.725,43.027,43.294,43.247,42.763,41.996,41.303,41.074,41.570,42.791,44.435,
-46.015,47.135,47.729,48.045,48.382,48.836,49.281,49.574,49.699,49.748,49.823,50.035,50.543,51.491,52.825,54.203,
-55.171,55.478,55.212,54.654,54.030,53.420,52.840,52.312,51.824,51.292,50.645,49.953,49.397,49.080,48.886,48.576,
-48.014,47.265,46.471,45.662,44.755,43.694,42.566,41.602,40.793,40.153,39.652,39.262,38.996,38.855,38.757,38.564,
-38.186,37.651,37.070,36.522,35.971,35.300,34.423,33.384,32.342,31.461,30.791,30.268,29.806,29.388,29.053,28.824,
-28.666,28.530,28.403,28.317,28.309,28.403,28.604,28.904,29.264,29.635,30.007,30.430,30.957,31.566,32.144,32.570,
-32.794,32.828,32.697,32.447,32.185,32.060,32.160,32.423,32.708,32.926,33.093,33.225,33.243,33.027,32.558,31.971,
-31.434,31.005,30.640,30.295,29.971,29.656,29.277,28.773,28.196,27.700,27.400,27.271,27.197,27.094,26.964,26.841,
-26.737,26.667,26.696,26.916,27.369,28.010,28.751,29.518,30.245,30.835,31.173,31.182,30.880,30.349,29.659,28.836,
-27.904,26.926,25.974,25.053,24.066,22.905,21.572,20.211,18.990,17.926,16.861,15.627,14.233,12.884,11.797,11.035,
-10.515,10.174,10.036,10.116,10.286,10.346,10.227,10.091,10.175,10.557,11.110,11.696,12.336,13.141,14.118,15.115,
-15.984,16.715,17.373,17.910,18.140,17.934,17.407,16.854,16.504,16.383,16.397,16.466,16.527,16.471,16.228,15.972,
-16.146,17.122,18.770,20.416,21.368,21.498,21.293,21.317,21.647,21.893,21.693,21.117,20.533,20.173,19.920,19.541,
-19.017,18.550,18.279,18.078,17.682,16.989,16.146,15.350,14.622,13.816,12.816,11.658,10.470,9.323,8.198,7.054,
-5.893,4.742,3.606,2.464,1.305,.136,-1.027,-2.175,-3.303,-4.413,-5.526,-6.660,-7.759,-8.673,-9.251,-9.477,
--9.527,-9.642,-9.962,-10.459,-11.025,-11.573,-12.049,-12.379,-12.448,-12.127,-11.320,-9.981,-8.126,-5.894,-3.583,-1.587,
--.242,.338,.301,-.042,-.407,-.682,-.925,-1.214,-1.490,-1.569,-1.360,-1.063,-1.074,-1.627,-2.531,-3.326,
--3.719,-3.851,-4.093,-4.637,-5.348,-6.000,-6.560,-7.174,-7.911,-8.648,-9.229,-9.684,-10.187,-10.832,-11.502,-11.997,
--12.233,-12.278,-12.236,-12.172,-12.164,-12.362,-12.915,-13.823,-14.920,-16.003,-16.982,-17.881,-18.728,-19.480,-20.073,-20.517,
--20.908,-21.340,-21.800,-22.178,-22.393,-22.523,-22.776,-23.302,-24.005,-24.559,-24.668,-24.332,-23.861,-23.621,-23.751,-24.111,
--24.452,-24.628,-24.663,-24.680,-24.800,-25.080,-25.504,-26.037,-26.701,-27.597,-28.822,-30.369,-32.160,-34.175,-36.498,-39.105,
--41.641,-43.514,-44.344,-44.315,-44.019,-43.919,-44.021,-44.075,-43.993,-43.943,-44.079,-44.325,-44.508,-44.617,-44.793,-45.082,
--45.366,-45.578,-45.851,-46.285,-46.607,-46.263,-44.969,-43.038,-40.991,-38.885,-36.239,-32.781,-29.119,-26.440,-25.429,-25.607,
--25.825,-25.363,-24.450,-23.767,-23.653,-23.900,-24.184,-24.468,-24.906,-25.505,-26.063,-26.438,-26.750,-27.231,-27.921,-28.595,
--29.002,-29.120,-29.150,-29.305,-29.638,-30.049,-30.414,-30.675,-30.853,-31.002,-31.171,-31.374,-31.586,-31.780,-31.961,-32.179,
--32.483,-32.860,-33.225,-33.486,-33.643,-33.815,-34.166,-34.766,-35.520,-36.231,-36.751,-37.064,-37.241,-37.324,-37.292,-37.138,
--36.952,-36.869,-36.942,-37.092,-37.204,-37.255,-37.319,-37.453,-37.624,-37.762,-37.870,-38.018,-38.233,-38.435,-38.509,-38.448,
--38.377,-38.435,-38.654,-38.946,-39.212,-39.422,-39.599,-39.746,-39.810,-39.701,-39.362,-38.819,-38.192,-37.628,-37.201,-36.851,
--36.448,-35.923,-35.348,-34.870,-34.567,-34.381,-34.183,-33.892,-33.521,-33.150,-32.868,-32.735,-32.750,-32.826,-32.840,-32.725,
--32.528,-32.324,-32.107,-31.833,-31.594,-31.718,-32.564,-34.171,-36.135,-37.885,-39.102,-39.854,-40.340,-40.599,-40.507,-40.006,
--39.244,-38.444,-37.695,-36.933,-36.101,-35.250,-34.465,-33.722,-32.889,-31.887,-30.804,-29.842,-29.141,-28.668,-28.246,-27.703,
--26.997,-26.232,-25.577,-25.131,-24.852,-24.613,-24.310,-23.915,-23.425,-22.794,-21.961,-20.945,-19.877,-18.904,-18.069,-17.295,
--16.487,-15.615,-14.698,-13.747,-12.766,-11.787,-10.858,-9.981,-9.077,-8.066,-6.959,-5.853,-4.825,-3.862,-2.908,-1.951,
--1.035,-.179,.653,1.498,2.337,3.136,3.933,4.837,5.904,7.037,8.043,8.814,9.420,10.031,10.757,11.583,
-12.441,13.300,14.168,15.034,15.844,16.556,17.195,17.837,18.536,19.279,20.016,20.718,21.400,22.090,22.791,23.480,
-24.144,24.796,25.456,26.119,26.772,27.426,28.119,28.851,29.540,30.051,30.329,30.475,30.681,31.047,31.500,31.889,
-32.151,32.309,32.288,31.823,30.667,28.979,27.436,26.838,27.511,29.074,30.804,32.183,33.106,33.650,33.804,33.526,
-32.970,32.503,32.419,32.696,33.101,33.498,33.963,34.591,35.300,35.907,36.357,36.760,37.209,37.654,38.037,38.468,
-39.144,40.085,41.053,41.796,42.274,42.532,42.434,41.684,40.201,38.270,36.135,33.470,29.587,24.400,19.144,15.815,
-15.677,18.244,21.758,24.620,26.352,27.355,28.055,28.473,28.499,28.261,28.041,27.936,27.746,27.268,26.574,25.933,
-25.502,25.152,24.633,23.842,22.937,22.192,21.765,21.566,21.315,20.768,19.915,18.991,18.263,17.790,17.412,16.961,
-16.444,15.985,15.624,15.235,14.686,14.023,13.439,13.064,12.843,12.618,12.309,11.953,11.609,11.272,10.900,10.483,
-10.050,9.616,9.175,8.731,8.317,7.949,7.602,7.246,6.904,6.640,6.490,6.418,6.353,6.252,6.102,5.875,
-5.526,5.027,4.408,3.725,3.019,2.315,1.652,1.076,.594,.149,-.331,-.863,-1.405,-1.924,-2.440,-2.987,
--3.555,-4.077,-4.496,-4.821,-5.113,-5.425,-5.765,-6.113,-6.441,-6.733,-6.971,-7.158,-7.332,-7.549,-7.832,-8.132,
--8.360,-8.462,-8.475,-8.480,-8.528,-8.604,-8.674,-8.747,-8.840,-8.913,-8.868,-8.662,-8.408,-8.294,-8.396,-8.594,
--8.731,-8.835,-9.099,-9.587,-10.002,-9.843,-8.847,-7.262,-5.677,-4.616,-4.307,-4.746,-5.822,-7.286,-8.696,-9.567,
--9.703,-9.357,-9.001,-8.924,-9.069,-9.222,-9.287,-9.321,-9.378,-9.409,-9.352,-9.237,-9.168,-9.184,-9.222,-9.198,
--9.109,-9.020,-8.972,-8.955,-8.953,-8.981,-9.062,-9.191,-9.339,-9.478,-9.579,-9.596,-9.502,-9.353,-9.284,-9.380,
--9.557,-9.626,-9.490,-9.280,-9.240,-9.475,-9.841,-10.088,-10.100,-9.959,-9.816,-9.730,-9.680,-9.663,-9.734,-9.917,
--10.117,-10.186,-10.072,-9.886,-9.794,-9.859,-9.997,-10.087,-10.091,-10.072,-10.096,-10.169,-10.241,-10.273,-10.266,-10.251,
--10.257,-10.295,-10.356,-10.418,-10.459,-10.476,-10.481,-10.486,-10.482,-10.455,-10.409,-10.366,-10.341,-10.315,-10.263,-10.185,
--10.109,-10.056,-10.008,-9.935,-9.841,-9.757,-9.702,-9.647,-9.554,-9.439,-9.377,-9.446,-9.652,-9.931,-10.207,-10.439,
--10.632,-10.803,-10.963,-11.117,-11.265,-11.402,-11.530,-11.677,-11.880,-12.152,-12.456,-12.729,-12.939,-13.110,-13.292,-13.506,
--13.726,-13.912,-14.050,-14.158,-14.253,-14.334,-14.387,-14.405,-14.392,-14.357,-14.311,-14.274,-14.263,-14.288,-14.339,-14.401,
--14.478,-14.588,-14.751,-14.963,-15.202,-15.450,-15.707,-15.982,-16.268,-16.549,-16.811,-17.068,-17.351,-17.688,-18.078,-18.501,
--18.930,-19.351,-19.759,-20.154,-20.531,-20.887,-21.224,-21.549,-21.872,-22.205,-22.559,-22.933,-23.309,-23.651,-23.932,-24.161,
--24.386,-24.649,-24.955,-25.267,-25.548,-25.791,-26.017,-26.243,-26.467,-26.683,-26.892,-27.101,-27.310,-27.513,-27.722,-27.958,
--28.232,-28.525,-28.810,-29.079,-29.345,-29.615,-29.874,-30.115,-30.358,-30.621,-30.887,-31.109,-31.274,-31.426,-31.631,-31.898,
--32.184,-32.462,-32.755,-33.094,-33.453,-33.773,-34.043,-34.317,-34.650,-35.026,-35.384,-35.699,-36.006,-36.323,-36.613,-36.839,
--37.034,-37.275,-37.569,-37.828,-37.975,-38.065,-38.239,-38.563,-38.951,-39.262,-39.450,-39.575,-39.702,-39.828,-39.926,-40.011,
--40.122,-40.268,-40.412,-40.527,-40.613,-40.667,-40.673,-40.642,-40.652,-40.779,-40.998,-41.190,-41.277,-41.318,-41.424,-41.602,
--41.728,-41.706,-41.592,-41.528,-41.564,-41.614,-41.587,-41.518,-41.514,-41.608,-41.720,-41.755,-41.712,-41.645,-41.568,-41.442,
--41.249,-41.044,-40.902,-40.842,-40.815,-40.754,-40.595,-40.284,-39.809,-39.265,-38.819,-38.583,-38.509,-38.450,-38.332,-38.206,
--38.094,-37.824,-37.106,-35.827,-34.267,-32.987,-32.454,-32.751,-33.568,-34.438,-35.007,-35.159,-34.991,-34.682,-34.350,-34.001,
--33.592,-33.131,-32.688,-32.317,-31.988,-31.649,-31.317,-31.067,-30.900,-30.677,-30.239,-29.600,-28.956,-28.495,-28.226,-28.016,
--27.779,-27.531,-27.284,-26.951,-26.454,-25.878,-25.443,-25.268,-25.236,-25.138,-24.927,-24.755,-24.728,-24.715,-24.463,-23.897,
--23.242,-22.814,-22.767,-23.060,-23.618,-24.389,-25.216,-25.751,-25.659,-24.956,-24.100,-23.661,-23.878,-24.528,-25.211,-25.709,
--26.071,-26.422,-26.777,-27.065,-27.257,-27.418,-27.627,-27.893,-28.179,-28.467,-28.764,-29.045,-29.228,-29.252,-29.162,-29.067,
--29.012,-28.892,-28.549,-27.949,-27.261,-26.743,-26.547,-26.638,-26.868,-27.107,-27.296,-27.410,-27.426,-27.335,-27.179,-27.031,
--26.945,-26.910,-26.875,-26.800,-26.698,-26.635,-26.680,-26.862,-27.131,-27.382,-27.523,-27.540,-27.498,-27.474,-27.498,-27.557,
--27.641,-27.781,-28.007,-28.299,-28.591,-28.824,-28.987,-29.096,-29.149,-29.118,-28.993,-28.819,-28.677,-28.628,-28.658,-28.684,
--28.609,-28.381,-28.033,-27.671,-27.410,-27.321,-27.410,-27.642,-27.976,-28.372,-28.780,-29.162,-29.518,-29.896,-30.349,-30.882,
--31.447,-31.978,-32.436,-32.811,-33.131,-33.468,-33.918,-34.517,-35.173,-35.713,-36.069,-36.387,-36.908,-37.706,-38.556,-39.134,
--39.346,-39.453,-39.827,-40.608,-41.603,-42.500,-43.147,-43.625,-44.116,-44.760,-45.605,-46.621,-47.699,-48.681,-49.450,-50.013,
--50.469,-50.881,-51.195,-51.329,-51.305,-51.247,-51.236,-51.211,-51.066,-50.810,-50.584,-50.486,-50.446,-50.302,-49.997,-49.630,
--49.313,-49.024,-48.663,-48.209,-47.756,-47.379,-47.029,-46.614,-46.144,-45.713,-45.333,-44.891,-44.325,-43.787,-43.461,-43.171,
--42.313,-40.388,-37.684,-35.334,-34.506,-35.442,-37.266,-38.741,-39.222,-38.930,-38.457,-38.151,-37.955,-37.691,-37.331,-36.980,
--36.704,-36.474,-36.252,-36.065,-35.964,-35.948,-35.964,-35.956,-35.904,-35.801,-35.639,-35.421,-35.176,-34.932,-34.685,-34.404,
--34.073,-33.707,-33.325,-32.925,-32.476,-31.952,-31.364,-30.751,-30.157,-29.597,-29.052,-28.486,-27.879,-27.247,-26.617,-25.994,
--25.352,-24.674,-23.977,-23.294,-22.623,-21.925,-21.181,-20.432,-19.717,-19.005,-18.197,-17.243,-16.216,-15.246,-14.383,-13.555,
--12.667,-11.717,-10.780,-9.898,-9.034,-8.131,-7.199,-6.290,-5.424,-4.561,-3.659,-2.730,-1.807,-.879,.097,1.125,
-2.146,3.100,4.005,4.936,5.931,6.945,7.910,8.815,9.715,10.647,11.594,12.507,13.374,14.230,15.123,16.080,
-17.110,18.199,19.308,20.367,21.315,22.144,22.890,23.581,24.196,24.693,25.077,25.422,25.821,26.319,26.882,27.438,
-27.933,28.367,28.777,29.201,29.646,30.080,30.465,30.798,31.121,31.474,31.847,32.189,32.467,32.719,33.022,33.398,
-33.778,34.064,34.232,34.361,34.551,34.829,35.145,35.450,35.747,36.054,36.339,36.531,36.598,36.604,36.645,36.729,
-36.743,36.572,36.274,36.116,36.399,37.178,38.131,38.704,38.478,37.473,36.146,35.083,34.623,34.703,35.003,35.219,
-35.225,35.040,34.727,34.344,33.955,33.634,33.417,33.279,33.180,33.128,33.178,33.361,33.630,33.897,34.126,34.363,
-34.669,35.050,35.453,35.849,36.289,36.872,37.636,38.495,39.280,39.855,40.212,40.447,40.653,40.840,40.978,41.119,
-41.417,41.985,42.698,43.193,43.129,42.497,41.656,41.046,40.845,40.905,40.976,40.957,40.924,40.973,41.119,41.329,
-41.600,41.935,42.268,42.473,42.507,42.505,42.681,43.099,43.547,43.685,43.333,42.663,42.123,42.166,42.973,44.352,
-45.851,47.035,47.736,48.101,48.407,48.788,49.147,49.312,49.254,49.147,49.218,49.600,50.320,51.377,52.727,54.167,
-55.321,55.837,55.642,54.988,54.225,53.548,52.941,52.316,51.637,50.909,50.142,49.379,48.747,48.381,48.263,48.164,
-47.809,47.107,46.195,45.267,44.385,43.488,42.537,41.602,41.083,40.420,39.866,39.388,38.970,38.638,38.408,38.233,
-38.013,37.662,37.158,36.542,35.868,35.150,34.354,33.440,32.442,31.476,30.676,30.081,29.614,29.177,28.761,28.434,
-28.247,28.154,28.069,27.962,27.890,27.931,28.110,28.392,28.717,29.040,29.345,29.656,30.031,30.512,31.073,31.620,
-32.060,32.363,32.543,32.604,32.540,32.387,32.249,32.222,32.318,32.480,32.662,32.854,33.021,33.048,32.817,32.340,
-31.772,31.281,30.913,30.597,30.270,29.929,29.581,29.185,28.693,28.142,27.653,27.335,27.188,27.115,27.022,26.878,
-26.711,26.575,26.537,26.656,26.957,27.413,27.964,28.567,29.200,29.810,30.274,30.443,30.234,29.695,28.970,28.198,
-27.446,26.721,26.023,25.366,24.742,24.092,23.339,22.477,21.601,20.815,20.096,19.281,18.231,16.996,15.784,14.750,
-13.858,12.991,12.171,11.581,11.348,11.337,11.254,10.966,10.659,10.646,11.048,11.717,12.453,13.215,14.086,15.087,
-16.110,17.032,17.820,18.464,18.877,18.923,18.585,18.032,17.496,17.105,16.860,16.747,16.770,16.863,16.857,16.653,
-16.446,16.664,17.586,19.000,20.302,20.995,21.078,20.942,20.915,20.952,20.790,20.329,19.778,19.418,19.286,19.159,
-18.837,18.376,18.001,17.811,17.641,17.237,16.528,15.688,14.922,14.243,13.485,12.510,11.351,10.158,9.028,7.942,
-6.831,5.678,4.531,3.433,2.373,1.299,.173,-.997,-2.168,-3.290,-4.361,-5.431,-6.555,-7.699,-8.720,-9.461,
--9.907,-10.234,-10.678,-11.343,-12.139,-12.884,-13.460,-13.854,-14.092,-14.160,-13.978,-13.431,-12.388,-10.766,-8.615,-6.205,
--3.974,-2.339,-1.462,-1.177,-1.135,-1.072,-.981,-1.053,-1.414,-1.921,-2.228,-2.106,-1.699,-1.429,-1.612,-2.173,
--2.778,-3.230,-3.657,-4.292,-5.111,-5.807,-6.135,-6.225,-6.482,-7.179,-8.211,-9.243,-10.044,-10.633,-11.143,-11.638,
--12.075,-12.375,-12.486,-12.406,-12.219,-12.121,-12.341,-12.980,-13.916,-14.916,-15.844,-16.735,-17.674,-18.631,-19.462,-20.069,
--20.511,-20.949,-21.476,-22.025,-22.447,-22.677,-22.822,-23.084,-23.572,-24.171,-24.601,-24.640,-24.324,-23.942,-23.817,-24.067,
--24.547,-24.992,-25.221,-25.233,-25.167,-25.186,-25.377,-25.734,-26.242,-26.962,-28.009,-29.425,-31.090,-32.847,-34.718,-36.915,
--39.525,-42.180,-44.167,-44.976,-44.747,-44.136,-43.716,-43.578,-43.488,-43.311,-43.159,-43.170,-43.307,-43.463,-43.654,-43.977,
--44.405,-44.783,-45.082,-45.534,-46.328,-47.210,-47.565,-46.975,-45.595,-43.832,-41.734,-38.943,-35.361,-31.711,-29.140,-28.178,
--28.191,-28.005,-27.017,-25.620,-24.592,-24.248,-24.294,-24.354,-24.422,-24.726,-25.309,-25.929,-26.369,-26.704,-27.167,-27.815,
--28.419,-28.713,-28.685,-28.586,-28.678,-29.010,-29.446,-29.830,-30.117,-30.340,-30.531,-30.688,-30.807,-30.917,-31.064,-31.286,
--31.594,-31.982,-32.429,-32.887,-33.294,-33.627,-33.946,-34.370,-34.970,-35.681,-36.342,-36.825,-37.120,-37.288,-37.345,-37.252,
--37.009,-36.734,-36.592,-36.644,-36.794,-36.906,-36.955,-37.028,-37.196,-37.422,-37.616,-37.754,-37.888,-38.056,-38.209,-38.269,
--38.237,-38.212,-38.287,-38.459,-38.640,-38.763,-38.844,-38.957,-39.136,-39.320,-39.366,-39.140,-38.622,-37.948,-37.332,-36.901,
--36.590,-36.214,-35.660,-35.011,-34.462,-34.138,-33.990,-33.874,-33.683,-33.405,-33.077,-32.747,-32.469,-32.294,-32.224,-32.190,
--32.114,-31.981,-31.822,-31.642,-31.435,-31.342,-31.709,-32.890,-34.876,-37.171,-39.107,-40.318,-40.917,-41.212,-41.341,-41.214,
--40.755,-40.077,-39.372,-38.697,-37.951,-37.049,-36.040,-35.010,-33.932,-32.685,-31.243,-29.796,-28.623,-27.853,-27.358,-26.881,
--26.251,-25.488,-24.745,-24.174,-23.843,-23.715,-23.695,-23.664,-23.509,-23.142,-22.524,-21.685,-20.720,-19.742,-18.819,-17.950,
--17.101,-16.235,-15.317,-14.301,-13.170,-11.991,-10.900,-9.998,-9.240,-8.473,-7.580,-6.587,-5.602,-4.675,-3.758,-2.789,
--1.791,-.840,.029,.856,1.690,2.525,3.337,4.159,5.071,6.105,7.176,8.150,8.968,9.690,10.415,11.176,
-11.940,12.685,13.451,14.287,15.173,16.014,16.735,17.355,17.973,18.661,19.406,20.138,20.825,21.506,22.231,22.992,
-23.724,24.386,25.005,25.641,26.314,26.994,27.661,28.332,28.998,29.568,29.920,30.046,30.116,30.355,30.824,31.372,
-31.804,32.057,32.154,31.982,31.243,29.745,27.801,26.223,25.814,26.750,28.471,30.168,31.368,32.080,32.481,32.628,
-32.508,32.266,32.208,32.539,33.159,33.808,34.360,34.905,35.537,36.169,36.643,36.952,37.244,37.614,37.984,38.276,
-38.618,39.244,40.179,41.147,41.856,42.268,42.479,42.366,41.582,39.975,37.863,35.645,33.148,29.662,24.884,19.799,
-16.345,15.937,18.296,21.740,24.602,26.316,27.286,27.998,28.507,28.658,28.506,28.310,28.187,27.971,27.463,26.727,
-26.036,25.564,25.209,24.733,24.022,23.192,22.467,21.992,21.732,21.512,21.140,20.536,19.775,18.997,18.276,17.602,
-16.977,16.489,16.213,16.062,15.796,15.229,14.433,13.675,13.163,12.875,12.652,12.390,12.113,11.867,11.617,11.286,
-10.854,10.380,9.932,9.516,9.101,8.673,8.255,7.878,7.561,7.306,7.106,6.940,6.785,6.631,6.478,6.302,
-6.042,5.647,5.120,4.524,3.908,3.270,2.598,1.930,1.337,.848,.407,-.065,-.585,-1.104,-1.584,-2.044,
--2.533,-3.050,-3.542,-3.961,-4.313,-4.644,-4.982,-5.319,-5.631,-5.912,-6.169,-6.410,-6.646,-6.898,-7.192,-7.528,
--7.857,-8.106,-8.238,-8.285,-8.323,-8.400,-8.503,-8.591,-8.646,-8.679,-8.682,-8.606,-8.427,-8.218,-8.120,-8.209,
--8.419,-8.624,-8.806,-9.069,-9.471,-9.859,-9.918,-9.427,-8.429,-7.185,-6.024,-5.257,-5.157,-5.856,-7.152,-8.502,
--9.329,-9.443,-9.151,-8.921,-8.964,-9.140,-9.236,-9.222,-9.214,-9.270,-9.305,-9.232,-9.093,-9.012,-9.038,-9.094,
--9.083,-9.000,-8.920,-8.902,-8.935,-8.983,-9.026,-9.069,-9.128,-9.216,-9.343,-9.472,-9.521,-9.420,-9.210,-9.038,
--9.031,-9.160,-9.262,-9.213,-9.055,-8.956,-9.045,-9.311,-9.641,-9.911,-10.035,-9.948,-9.635,-9.202,-8.871,-8.852,
--9.160,-9.579,-9.831,-9.801,-9.610,-9.463,-9.461,-9.545,-9.610,-9.622,-9.630,-9.685,-9.777,-9.860,-9.900,-9.904,
--9.898,-9.906,-9.936,-9.980,-10.020,-10.037,-10.039,-10.057,-10.111,-10.174,-10.188,-10.122,-10.013,-9.926,-9.902,-9.922,
--9.946,-9.945,-9.912,-9.839,-9.728,-9.610,-9.530,-9.501,-9.470,-9.363,-9.172,-8.988,-8.932,-9.064,-9.337,-9.653,
--9.935,-10.164,-10.352,-10.517,-10.672,-10.823,-10.975,-11.137,-11.323,-11.549,-11.819,-12.112,-12.390,-12.629,-12.836,-13.041,
--13.260,-13.483,-13.683,-13.839,-13.953,-14.033,-14.085,-14.115,-14.127,-14.130,-14.128,-14.116,-14.095,-14.070,-14.055,-14.064,
--14.102,-14.174,-14.278,-14.417,-14.591,-14.802,-15.053,-15.338,-15.640,-15.936,-16.216,-16.485,-16.761,-17.055,-17.374,-17.722,
--18.105,-18.527,-18.969,-19.402,-19.801,-20.163,-20.497,-20.810,-21.105,-21.396,-21.715,-22.092,-22.522,-22.958,-23.336,-23.623,
--23.841,-24.050,-24.302,-24.607,-24.929,-25.230,-25.499,-25.756,-26.026,-26.314,-26.608,-26.892,-27.157,-27.399,-27.616,-27.814,
--28.007,-28.211,-28.427,-28.648,-28.868,-29.089,-29.312,-29.532,-29.750,-29.981,-30.237,-30.501,-30.738,-30.938,-31.134,-31.372,
--31.666,-31.993,-32.336,-32.696,-33.070,-33.417,-33.699,-33.939,-34.210,-34.555,-34.932,-35.266,-35.536,-35.792,-36.070,-36.340,
--36.555,-36.740,-36.968,-37.266,-37.570,-37.803,-37.982,-38.199,-38.507,-38.856,-39.162,-39.401,-39.606,-39.793,-39.930,-40.001,
--40.045,-40.120,-40.235,-40.356,-40.459,-40.554,-40.642,-40.700,-40.728,-40.784,-40.930,-41.132,-41.279,-41.314,-41.322,-41.427,
--41.628,-41.786,-41.786,-41.675,-41.600,-41.632,-41.704,-41.727,-41.708,-41.722,-41.793,-41.858,-41.856,-41.805,-41.750,-41.683,
--41.551,-41.344,-41.131,-40.998,-40.965,-40.985,-40.996,-40.948,-40.781,-40.446,-39.968,-39.462,-39.057,-38.787,-38.591,-38.421,
--38.296,-38.218,-38.052,-37.539,-36.502,-35.050,-33.596,-32.643,-32.501,-33.108,-34.075,-34.919,-35.331,-35.314,-35.072,-34.788,
--34.478,-34.069,-33.558,-33.052,-32.646,-32.307,-31.937,-31.524,-31.158,-30.898,-30.647,-30.244,-29.662,-29.064,-28.632,-28.376,
--28.153,-27.850,-27.485,-27.131,-26.793,-26.431,-26.065,-25.789,-25.647,-25.548,-25.371,-25.120,-24.928,-24.867,-24.823,-24.607,
--24.176,-23.693,-23.366,-23.285,-23.456,-23.919,-24.716,-25.699,-26.447,-26.511,-25.812,-24.788,-24.084,-24.066,-24.599,-25.262,
--25.723,-25.927,-26.001,-26.064,-26.156,-26.282,-26.457,-26.690,-26.960,-27.238,-27.517,-27.798,-28.051,-28.219,-28.294,-28.354,
--28.489,-28.662,-28.682,-28.363,-27.723,-27.022,-26.575,-26.512,-26.727,-27.019,-27.259,-27.427,-27.529,-27.538,-27.428,-27.234,
--27.055,-26.965,-26.959,-26.961,-26.897,-26.765,-26.634,-26.606,-26.739,-26.992,-27.242,-27.368,-27.337,-27.225,-27.137,-27.122,
--27.164,-27.242,-27.372,-27.578,-27.842,-28.112,-28.345,-28.538,-28.696,-28.795,-28.799,-28.702,-28.548,-28.392,-28.255,-28.119,
--27.953,-27.749,-27.526,-27.326,-27.206,-27.208,-27.331,-27.528,-27.744,-27.964,-28.209,-28.495,-28.818,-29.176,-29.599,-30.124,
--30.738,-31.368,-31.935,-32.402,-32.787,-33.129,-33.486,-33.919,-34.468,-35.087,-35.669,-36.151,-36.607,-37.166,-37.831,-38.421,
--38.748,-38.876,-39.135,-39.827,-40.914,-42.026,-42.779,-43.094,-43.204,-43.428,-43.959,-44.832,-45.971,-47.231,-48.411,-49.343,
--49.992,-50.460,-50.857,-51.192,-51.401,-51.467,-51.453,-51.424,-51.360,-51.208,-50.998,-50.832,-50.766,-50.722,-50.573,-50.292,
--49.966,-49.665,-49.342,-48.915,-48.404,-47.929,-47.557,-47.217,-46.804,-46.330,-45.901,-45.544,-45.149,-44.639,-44.124,-43.758,
--43.412,-42.611,-40.978,-38.788,-36.970,-36.413,-37.207,-38.568,-39.526,-39.671,-39.278,-38.838,-38.564,-38.353,-38.061,-37.698,
--37.366,-37.106,-36.882,-36.678,-36.537,-36.498,-36.530,-36.556,-36.520,-36.418,-36.257,-36.042,-35.792,-35.555,-35.362,-35.194,
--34.993,-34.719,-34.377,-33.990,-33.563,-33.073,-32.504,-31.876,-31.231,-30.614,-30.047,-29.509,-28.955,-28.353,-27.713,-27.072,
--26.452,-25.831,-25.176,-24.487,-23.791,-23.098,-22.383,-21.632,-20.876,-20.154,-19.440,-18.646,-17.722,-16.729,-15.783,-14.922,
--14.074,-13.150,-12.159,-11.190,-10.294,-9.430,-8.539,-7.622,-6.732,-5.884,-5.030,-4.124,-3.179,-2.245,-1.329,-.392,
-.591,1.584,2.544,3.477,4.435,5.443,6.462,7.439,8.366,9.282,10.214,11.145,12.048,12.930,13.829,14.777,
-15.778,16.816,17.869,18.902,19.869,20.736,21.503,22.199,22.836,23.393,23.846,24.223,24.601,25.056,25.600,26.178,
-26.713,27.169,27.565,27.949,28.350,28.763,29.162,29.533,29.897,30.282,30.694,31.094,31.437,31.715,31.973,32.264,
-32.594,32.913,33.167,33.356,33.531,33.738,33.981,34.242,34.520,34.830,35.154,35.426,35.583,35.635,35.670,35.759,
-35.863,35.859,35.694,35.501,35.551,36.043,36.887,37.685,37.948,37.405,36.197,34.796,33.730,33.285,33.395,33.760,
-34.069,34.155,34.007,33.706,33.357,33.051,32.844,32.731,32.666,32.625,32.642,32.776,33.036,33.351,33.637,33.882,
-34.150,34.501,34.917,35.324,35.682,36.052,36.539,37.192,37.935,38.609,39.083,39.343,39.478,39.587,39.702,39.796,
-39.865,39.964,40.157,40.417,40.612,40.612,40.433,40.227,40.152,40.227,40.347,40.423,40.479,40.612,40.881,41.251,
-41.659,42.072,42.472,42.790,42.922,42.846,42.711,42.762,43.123,43.646,43.996,43.934,43.550,43.244,43.447,44.305,
-45.571,46.791,47.624,48.048,48.298,48.608,48.998,49.298,49.358,49.247,49.231,49.583,50.408,51.625,53.046,54.432,
-55.495,55.958,55.698,54.870,53.836,52.926,52.245,51.696,51.136,50.491,49.754,48.954,48.180,47.588,47.293,47.223,
-47.114,46.702,45.944,45.019,44.136,43.354,42.606,41.835,41.083,40.854,40.210,39.628,39.095,38.598,38.160,37.810,
-37.553,37.343,37.086,36.672,36.037,35.208,34.281,33.344,32.423,31.515,30.663,29.952,29.419,28.999,28.601,28.217,
-27.929,27.798,27.770,27.729,27.631,27.548,27.588,27.780,28.071,28.385,28.680,28.952,29.222,29.531,29.923,30.400,
-30.911,31.389,31.806,32.163,32.447,32.616,32.643,32.564,32.452,32.365,32.323,32.336,32.401,32.467,32.429,32.200,
-31.809,31.383,31.028,30.733,30.415,30.035,29.630,29.247,28.876,28.470,28.034,27.644,27.378,27.250,27.196,27.130,
-26.999,26.812,26.636,26.569,26.688,26.991,27.409,27.856,28.288,28.701,29.076,29.340,29.392,29.163,28.668,28.006,
-27.305,26.656,26.070,25.507,24.928,24.328,23.717,23.098,22.487,21.933,21.480,21.082,20.594,19.908,19.079,18.274,
-17.576,16.866,15.983,14.963,14.057,13.467,13.105,12.702,12.137,11.604,11.411,11.672,12.241,12.924,13.670,14.525,
-15.479,16.432,17.290,18.027,18.614,18.957,18.973,18.712,18.333,17.965,17.625,17.311,17.096,17.063,17.145,17.149,
-16.992,16.881,17.165,17.961,18.975,19.754,20.094,20.166,20.240,20.355,20.297,19.887,19.230,18.642,18.353,18.313,
-18.289,18.114,17.827,17.569,17.384,17.145,16.693,16.007,15.230,14.513,13.854,13.106,12.145,11.005,9.835,8.745,
-7.710,6.639,5.497,4.350,3.285,2.313,1.350,.302,-.855,-2.058,-3.219,-4.303,-5.360,-6.464,-7.623,-8.731,
--9.649,-10.345,-10.950,-11.658,-12.553,-13.527,-14.365,-14.908,-15.135,-15.130,-15.001,-14.805,-14.489,-13.865,-12.677,-10.790,
--8.381,-5.946,-4.041,-2.939,-2.476,-2.238,-1.919,-1.549,-1.393,-1.632,-2.134,-2.538,-2.569,-2.285,-1.994,-1.951,
--2.151,-2.456,-2.854,-3.513,-4.514,-5.597,-6.273,-6.284,-5.911,-5.802,-6.438,-7.773,-9.339,-10.642,-11.473,-11.916,
--12.176,-12.405,-12.628,-12.756,-12.698,-12.495,-12.369,-12.586,-13.233,-14.150,-15.096,-15.971,-16.852,-17.806,-18.746,-19.505,
--20.027,-20.446,-20.939,-21.532,-22.082,-22.443,-22.622,-22.788,-23.114,-23.626,-24.170,-24.530,-24.595,-24.449,-24.314,-24.390,
--24.702,-25.097,-25.366,-25.405,-25.280,-25.167,-25.215,-25.464,-25.870,-26.426,-27.232,-28.407,-29.917,-31.538,-33.082,-34.668,
--36.677,-39.326,-42.260,-44.657,-45.841,-45.815,-45.171,-44.530,-44.097,-43.744,-43.367,-43.036,-42.844,-42.768,-42.767,-42.911,
--43.303,-43.881,-44.441,-44.904,-45.459,-46.322,-47.364,-48.115,-48.180,-47.532,-46.307,-44.424,-41.649,-38.127,-34.677,-32.282,
--31.204,-30.708,-29.781,-28.109,-26.277,-25.051,-24.601,-24.487,-24.279,-24.008,-23.995,-24.384,-24.983,-25.545,-26.051,-26.645,
--27.359,-28.005,-28.367,-28.438,-28.422,-28.525,-28.782,-29.096,-29.386,-29.650,-29.904,-30.111,-30.212,-30.220,-30.240,-30.382,
--30.667,-31.029,-31.413,-31.844,-32.371,-32.976,-33.565,-34.060,-34.487,-34.939,-35.463,-35.998,-36.444,-36.748,-36.918,-36.956,
--36.842,-36.594,-36.323,-36.182,-36.235,-36.418,-36.612,-36.767,-36.907,-37.059,-37.200,-37.297,-37.368,-37.474,-37.636,-37.811,
--37.944,-38.037,-38.145,-38.295,-38.449,-38.537,-38.535,-38.493,-38.503,-38.626,-38.834,-38.990,-38.908,-38.473,-37.757,-36.995,
--36.415,-36.055,-35.760,-35.359,-34.833,-34.306,-33.896,-33.621,-33.429,-33.283,-33.153,-32.972,-32.661,-32.227,-31.801,-31.532,
--31.442,-31.419,-31.340,-31.181,-30.994,-30.884,-31.045,-31.790,-33.377,-35.708,-38.232,-40.253,-41.410,-41.857,-41.974,-41.963,
--41.766,-41.306,-40.681,-40.066,-39.483,-38.782,-37.840,-36.711,-35.515,-34.248,-32.795,-31.137,-29.486,-28.138,-27.208,-26.532,
--25.847,-25.035,-24.181,-23.444,-22.927,-22.648,-22.594,-22.723,-22.918,-22.986,-22.738,-22.122,-21.252,-20.307,-19.403,-18.540,
--17.673,-16.790,-15.901,-14.965,-13.885,-12.613,-11.259,-10.044,-9.114,-8.411,-7.745,-6.987,-6.158,-5.339,-4.534,-3.666,
--2.691,-1.678,-.733,.117,.934,1.780,2.649,3.508,4.361,5.258,6.220,7.210,8.171,9.088,9.983,10.863,
-11.689,12.427,13.100,13.795,14.575,15.422,16.243,16.958,17.576,18.178,18.836,19.547,20.258,20.944,21.647,22.408,
-23.202,23.950,24.607,25.217,25.860,26.560,27.273,27.959,28.611,29.203,29.637,29.826,29.841,29.920,30.273,30.863,
-31.438,31.786,31.906,31.877,31.580,30.692,29.057,27.073,25.611,25.411,26.509,28.226,29.731,30.620,31.018,31.237,
-31.449,31.676,31.972,32.458,33.172,33.969,34.656,35.191,35.691,36.233,36.735,37.080,37.305,37.568,37.924,38.256,
-38.477,38.739,39.300,40.196,41.145,41.847,42.281,42.561,42.550,41.829,40.176,37.934,35.650,33.311,30.204,25.810,
-20.850,17.177,16.375,18.421,21.753,24.624,26.335,27.259,27.968,28.581,28.898,28.852,28.626,28.372,28.026,27.465,
-26.750,26.093,25.617,25.219,24.712,24.031,23.282,22.622,22.135,21.814,21.584,21.332,20.936,20.322,19.508,18.585,
-17.686,16.967,16.559,16.472,16.510,16.353,15.793,14.913,14.016,13.358,12.965,12.705,12.468,12.246,12.045,11.803,
-11.441,10.965,10.479,10.078,9.752,9.416,9.017,8.585,8.201,7.920,7.727,7.555,7.336,7.055,6.760,6.508,
-6.295,6.046,5.681,5.195,4.648,4.091,3.517,2.901,2.267,1.678,1.167,.694,.198,-.325,-.827,-1.274,
--1.691,-2.120,-2.568,-3.001,-3.399,-3.779,-4.167,-4.555,-4.897,-5.160,-5.359,-5.544,-5.767,-6.059,-6.419,-6.822,
--7.224,-7.570,-7.818,-7.959,-8.029,-8.095,-8.204,-8.348,-8.469,-8.516,-8.480,-8.395,-8.290,-8.183,-8.098,-8.082,
--8.176,-8.368,-8.599,-8.825,-9.044,-9.260,-9.442,-9.529,-9.459,-9.181,-8.648,-7.887,-7.107,-6.682,-6.899,-7.665,
--8.512,-8.964,-8.940,-8.757,-8.750,-8.935,-9.069,-8.995,-8.823,-8.765,-8.868,-8.985,-8.982,-8.894,-8.856,-8.916,
--8.996,-9.006,-8.955,-8.921,-8.951,-9.021,-9.073,-9.076,-9.038,-9.000,-9.016,-9.117,-9.265,-9.352,-9.284,-9.078,
--8.861,-8.757,-8.779,-8.843,-8.867,-8.847,-8.837,-8.888,-9.026,-9.262,-9.562,-9.803,-9.808,-9.478,-8.933,-8.477,
--8.388,-8.691,-9.146,-9.453,-9.485,-9.341,-9.199,-9.149,-9.161,-9.173,-9.181,-9.220,-9.304,-9.399,-9.464,-9.493,
--9.505,-9.516,-9.521,-9.520,-9.521,-9.525,-9.527,-9.531,-9.566,-9.653,-9.764,-9.821,-9.771,-9.639,-9.519,-9.485,
--9.536,-9.618,-9.673,-9.675,-9.616,-9.502,-9.370,-9.278,-9.256,-9.263,-9.213,-9.056,-8.843,-8.691,-8.696,-8.864,
--9.128,-9.417,-9.688,-9.930,-10.140,-10.318,-10.477,-10.642,-10.831,-11.048,-11.283,-11.526,-11.779,-12.042,-12.309,-12.568,
--12.808,-13.029,-13.238,-13.435,-13.607,-13.734,-13.810,-13.843,-13.856,-13.868,-13.884,-13.902,-13.914,-13.910,-13.890,-13.859,
--13.839,-13.858,-13.935,-14.062,-14.214,-14.373,-14.549,-14.767,-15.034,-15.331,-15.622,-15.893,-16.163,-16.455,-16.767,-17.082,
--17.399,-17.743,-18.139,-18.575,-19.010,-19.408,-19.767,-20.102,-20.415,-20.694,-20.948,-21.221,-21.567,-21.994,-22.455,-22.881,
--23.236,-23.531,-23.808,-24.104,-24.434,-24.781,-25.120,-25.429,-25.717,-26.004,-26.307,-26.619,-26.919,-27.188,-27.421,-27.620,
--27.789,-27.936,-28.077,-28.229,-28.391,-28.558,-28.725,-28.901,-29.095,-29.315,-29.565,-29.843,-30.137,-30.425,-30.694,-30.953,
--31.228,-31.540,-31.890,-32.266,-32.652,-33.019,-33.336,-33.594,-33.834,-34.116,-34.455,-34.797,-35.074,-35.284,-35.491,-35.743,
--36.021,-36.270,-36.483,-36.709,-36.983,-37.281,-37.562,-37.827,-38.116,-38.436,-38.745,-39.007,-39.234,-39.463,-39.684,-39.851,
--39.945,-40.012,-40.108,-40.234,-40.355,-40.459,-40.574,-40.714,-40.846,-40.940,-41.022,-41.141,-41.285,-41.381,-41.396,-41.402,
--41.496,-41.679,-41.835,-41.866,-41.803,-41.754,-41.777,-41.833,-41.873,-41.903,-41.953,-42.001,-41.986,-41.892,-41.780,-41.717,
--41.692,-41.634,-41.510,-41.361,-41.246,-41.182,-41.146,-41.119,-41.097,-41.040,-40.871,-40.531,-40.048,-39.526,-39.068,-38.728,
--38.517,-38.421,-38.394,-38.308,-37.967,-37.190,-35.951,-34.479,-33.220,-32.633,-32.909,-33.810,-34.807,-35.431,-35.556,-35.382,
--35.149,-34.909,-34.562,-34.061,-33.505,-33.019,-32.608,-32.179,-31.696,-31.241,-30.894,-30.599,-30.213,-29.678,-29.108,-28.666,
--28.387,-28.157,-27.854,-27.465,-27.057,-26.689,-26.376,-26.129,-25.966,-25.861,-25.731,-25.514,-25.254,-25.064,-24.986,-24.920,
--24.728,-24.390,-24.023,-23.756,-23.636,-23.685,-23.989,-24.644,-25.554,-26.338,-26.539,-26.002,-25.049,-24.265,-24.062,-24.418,
--24.982,-25.401,-25.549,-25.523,-25.479,-25.508,-25.624,-25.805,-26.026,-26.262,-26.494,-26.721,-26.942,-27.146,-27.325,-27.518,
--27.803,-28.205,-28.587,-28.689,-28.326,-27.588,-26.833,-26.432,-26.503,-26.876,-27.282,-27.569,-27.739,-27.836,-27.860,-27.783,
--27.621,-27.443,-27.310,-27.227,-27.149,-27.041,-26.905,-26.787,-26.751,-26.835,-27.009,-27.179,-27.250,-27.203,-27.106,-27.041,
--27.030,-27.039,-27.055,-27.113,-27.261,-27.499,-27.784,-28.074,-28.356,-28.606,-28.773,-28.806,-28.706,-28.526,-28.311,-28.066,
--27.787,-27.504,-27.280,-27.161,-27.154,-27.242,-27.406,-27.611,-27.798,-27.917,-27.980,-28.057,-28.223,-28.502,-28.885,-29.366,
--29.946,-30.591,-31.220,-31.760,-32.195,-32.572,-32.946,-33.359,-33.840,-34.402,-35.005,-35.564,-36.031,-36.470,-36.993,-37.605,
--38.160,-38.524,-38.796,-39.277,-40.183,-41.365,-42.392,-42.912,-42.945,-42.817,-42.876,-43.291,-44.073,-45.174,-46.494,-47.846,
--49.000,-49.827,-50.381,-50.803,-51.168,-51.444,-51.583,-51.603,-51.560,-51.482,-51.365,-51.234,-51.138,-51.091,-51.023,-50.859,
--50.600,-50.317,-50.040,-49.702,-49.235,-48.682,-48.170,-47.766,-47.403,-46.979,-46.502,-46.074,-45.733,-45.387,-44.943,-44.449,
--44.030,-43.655,-43.065,-42.038,-40.732,-39.673,-39.324,-39.650,-40.150,-40.322,-40.067,-39.644,-39.314,-39.096,-38.853,-38.519,
--38.164,-37.871,-37.634,-37.404,-37.196,-37.077,-37.073,-37.122,-37.129,-37.051,-36.902,-36.701,-36.458,-36.196,-35.961,-35.776,
--35.608,-35.393,-35.101,-34.754,-34.380,-33.975,-33.505,-32.955,-32.342,-31.707,-31.089,-30.511,-29.967,-29.420,-28.829,-28.190,
--27.540,-26.913,-26.299,-25.657,-24.967,-24.253,-23.540,-22.823,-22.083,-21.331,-20.593,-19.857,-19.065,-18.174,-17.221,-16.287,
--15.401,-14.506,-13.542,-12.532,-11.555,-10.656,-9.795,-8.917,-8.023,-7.155,-6.317,-5.459,-4.538,-3.576,-2.628,-1.713,
--.796,.155,1.129,2.094,3.045,4.008,4.999,6.000,6.981,7.933,8.861,9.767,10.652,11.536,12.457,13.441,
-14.475,15.518,16.538,17.526,18.472,19.356,20.156,20.868,21.502,22.064,22.555,22.991,23.411,23.869,24.387,24.944,
-25.488,25.977,26.401,26.781,27.148,27.520,27.892,28.258,28.625,29.015,29.439,29.876,30.279,30.618,30.904,31.180,
-31.475,31.780,32.066,32.318,32.551,32.784,33.014,33.223,33.410,33.611,33.859,34.145,34.412,34.611,34.741,34.832,
-34.876,34.832,34.702,34.611,34.776,35.324,36.140,36.876,37.144,36.747,35.773,34.525,33.372,32.596,32.310,32.438,
-32.764,33.040,33.113,32.968,32.701,32.431,32.232,32.115,32.058,32.040,32.069,32.177,32.386,32.683,33.017,33.344,
-33.660,33.994,34.362,34.742,35.102,35.444,35.815,36.270,36.813,37.379,37.867,38.212,38.421,38.565,38.723,38.921,
-39.125,39.278,39.346,39.346,39.320,39.309,39.340,39.430,39.588,39.792,39.991,40.143,40.254,40.396,40.662,41.107,
-41.701,42.352,42.949,43.397,43.625,43.599,43.359,43.056,42.917,43.104,43.580,44.101,44.405,44.441,44.434,44.707,
-45.407,46.384,47.321,47.985,48.371,48.643,48.953,49.327,49.682,49.950,50.169,50.485,51.062,51.980,53.174,54.430,
-55.441,55.908,55.670,54.798,53.585,52.394,51.466,50.835,50.382,49.968,49.491,48.892,48.165,47.399,46.763,46.382,
-46.196,45.976,45.512,44.797,44.009,43.316,42.735,42.163,41.528,40.854,40.537,39.854,39.217,38.621,38.051,37.516,
-37.053,36.710,36.490,36.297,35.952,35.303,34.360,33.292,32.289,31.418,30.636,29.910,29.284,28.806,28.439,28.099,
-27.772,27.538,27.459,27.477,27.471,27.387,27.300,27.319,27.475,27.715,27.979,28.242,28.500,28.744,28.983,29.263,
-29.631,30.088,30.590,31.091,31.571,32.006,32.347,32.541,32.574,32.480,32.312,32.121,31.958,31.847,31.764,31.644,
-31.444,31.196,30.970,30.782,30.563,30.234,29.796,29.336,28.935,28.603,28.304,28.022,27.780,27.609,27.514,27.468,
-27.426,27.340,27.183,26.983,26.824,26.795,26.931,27.195,27.516,27.829,28.089,28.269,28.351,28.317,28.137,27.779,
-27.253,26.642,26.054,25.531,25.018,24.438,23.784,23.127,22.547,22.077,21.724,21.488,21.319,21.105,20.752,20.301,
-19.887,19.569,19.212,18.617,17.763,16.850,16.079,15.431,14.739,13.944,13.217,12.789,12.730,12.935,13.305,13.845,
-14.566,15.381,16.149,16.799,17.349,17.800,18.086,18.162,18.090,17.975,17.838,17.628,17.363,17.178,17.170,17.242,
-17.202,17.043,17.021,17.383,18.045,18.638,18.899,18.951,19.127,19.552,19.963,19.973,19.462,18.680,18.004,17.640,
-17.535,17.517,17.451,17.296,17.072,16.797,16.453,15.996,15.406,14.726,14.030,13.333,12.558,11.615,10.509,9.366,
-8.307,7.328,6.329,5.246,4.137,3.115,2.213,1.340,.368,-.752,-1.959,-3.152,-4.281,-5.374,-6.487,-7.637,
--8.764,-9.779,-10.652,-11.460,-12.331,-13.324,-14.357,-15.245,-15.809,-15.973,-15.797,-15.456,-15.153,-14.964,-14.707,-13.977,
--12.431,-10.120,-7.569,-5.464,-4.186,-3.593,-3.235,-2.782,-2.268,-1.956,-2.020,-2.360,-2.703,-2.854,-2.833,-2.780,
--2.770,-2.762,-2.752,-2.910,-3.487,-4.521,-5.659,-6.351,-6.316,-5.830,-5.554,-6.044,-7.365,-9.116,-10.756,-11.929,
--12.578,-12.863,-12.998,-13.107,-13.174,-13.118,-12.950,-12.842,-13.024,-13.580,-14.398,-15.300,-16.220,-17.190,-18.190,-19.071,
--19.695,-20.106,-20.510,-21.055,-21.666,-22.131,-22.341,-22.420,-22.611,-23.044,-23.631,-24.160,-24.475,-24.578,-24.604,-24.706,
--24.945,-25.253,-25.472,-25.470,-25.246,-24.952,-24.803,-24.928,-25.301,-25.826,-26.485,-27.389,-28.633,-30.115,-31.557,-32.806,
--34.107,-35.985,-38.732,-41.981,-44.840,-46.529,-46.923,-46.505,-45.862,-45.273,-44.729,-44.193,-43.719,-43.350,-43.048,-42.798,
--42.717,-42.960,-43.521,-44.212,-44.874,-45.538,-46.326,-47.212,-47.976,-48.387,-48.318,-47.638,-46.104,-43.566,-40.345,-37.249,
--35.017,-33.672,-32.506,-30.787,-28.481,-26.252,-24.779,-24.155,-23.952,-23.749,-23.508,-23.442,-23.678,-24.122,-24.629,-25.176,
--25.825,-26.571,-27.293,-27.866,-28.272,-28.577,-28.833,-29.035,-29.181,-29.323,-29.527,-29.775,-29.961,-30.002,-29.947,-29.954,
--30.134,-30.439,-30.729,-30.944,-31.194,-31.641,-32.307,-33.024,-33.591,-33.962,-34.265,-34.648,-35.130,-35.607,-35.970,-36.179,
--36.252,-36.209,-36.076,-35.915,-35.821,-35.868,-36.060,-36.344,-36.645,-36.894,-37.039,-37.066,-37.022,-36.993,-37.043,-37.169,
--37.322,-37.474,-37.636,-37.826,-38.027,-38.196,-38.305,-38.353,-38.354,-38.333,-38.333,-38.401,-38.513,-38.527,-38.253,-37.631,
--36.826,-36.118,-35.675,-35.434,-35.196,-34.821,-34.315,-33.772,-33.284,-32.925,-32.743,-32.708,-32.663,-32.414,-31.920,-31.369,
--31.009,-30.906,-30.893,-30.776,-30.551,-30.408,-30.576,-31.227,-32.490,-34.421,-36.845,-39.277,-41.136,-42.134,-42.441,-42.440,
--42.348,-42.119,-41.669,-41.082,-40.515,-39.973,-39.276,-38.290,-37.088,-35.845,-34.602,-33.229,-31.647,-30.001,-28.554,-27.427,
--26.492,-25.545,-24.532,-23.576,-22.828,-22.335,-22.067,-22.013,-22.166,-22.429,-22.577,-22.374,-21.751,-20.855,-19.905,-19.018,
--18.165,-17.286,-16.389,-15.512,-14.609,-13.550,-12.259,-10.852,-9.572,-8.586,-7.847,-7.184,-6.484,-5.765,-5.064,-4.335,
--3.484,-2.503,-1.499,-.585,.230,1.031,1.882,2.769,3.649,4.512,5.389,6.304,7.252,8.220,9.205,10.195,
-11.154,12.033,12.816,13.529,14.225,14.945,15.698,16.452,17.161,17.800,18.394,18.999,19.649,20.344,21.066,21.821,
-22.610,23.396,24.119,24.762,25.384,26.059,26.793,27.527,28.209,28.826,29.347,29.686,29.806,29.836,30.028,30.519,
-31.156,31.629,31.775,31.700,31.536,31.156,30.221,28.619,26.795,25.573,25.549,26.629,28.138,29.365,30.037,30.342,
-30.609,31.025,31.609,32.330,33.165,34.044,34.835,35.437,35.884,36.289,36.700,37.049,37.278,37.466,37.750,38.137,
-38.478,38.684,38.915,39.440,40.306,41.237,41.935,42.375,42.683,42.745,42.133,40.575,38.374,36.120,33.900,31.033,
-26.873,21.936,17.984,16.745,18.455,21.697,24.646,26.426,27.326,27.984,28.619,29.025,29.035,28.755,28.366,27.908,
-27.334,26.691,26.118,25.673,25.254,24.723,24.068,23.386,22.760,22.204,21.718,21.326,21.023,20.709,20.234,19.518,
-18.628,17.745,17.069,16.727,16.691,16.750,16.607,16.073,15.218,14.314,13.609,13.163,12.880,12.655,12.442,12.212,
-11.899,11.459,10.949,10.495,10.175,9.942,9.676,9.316,8.909,8.551,8.297,8.118,7.927,7.646,7.261,6.836,
-6.459,6.168,5.911,5.597,5.182,4.694,4.184,3.670,3.143,2.603,2.072,1.556,1.035,.494,-.045,-.538,
--.974,-1.386,-1.806,-2.228,-2.624,-2.990,-3.355,-3.744,-4.137,-4.480,-4.736,-4.914,-5.073,-5.288,-5.613,-6.045,
--6.524,-6.965,-7.305,-7.531,-7.668,-7.758,-7.846,-7.967,-8.118,-8.252,-8.303,-8.249,-8.136,-8.042,-8.011,-8.032,
--8.076,-8.144,-8.263,-8.447,-8.666,-8.848,-8.939,-8.954,-8.989,-9.124,-9.313,-9.362,-9.100,-8.590,-8.147,-8.066,
--8.329,-8.625,-8.681,-8.546,-8.492,-8.646,-8.814,-8.712,-8.319,-7.935,-7.867,-8.120,-8.442,-8.616,-8.646,-8.671,
--8.759,-8.857,-8.892,-8.878,-8.881,-8.938,-9.018,-9.053,-8.998,-8.861,-8.710,-8.646,-8.726,-8.898,-9.029,-9.018,
--8.886,-8.740,-8.659,-8.633,-8.619,-8.614,-8.639,-8.690,-8.728,-8.755,-8.849,-9.071,-9.351,-9.488,-9.329,-8.939,
--8.574,-8.474,-8.665,-8.957,-9.132,-9.118,-8.997,-8.885,-8.819,-8.771,-8.727,-8.716,-8.770,-8.867,-8.952,-8.993,
--9.012,-9.040,-9.072,-9.078,-9.050,-9.019,-9.017,-9.038,-9.060,-9.087,-9.147,-9.243,-9.320,-9.316,-9.226,-9.120,
--9.069,-9.088,-9.138,-9.181,-9.203,-9.200,-9.160,-9.083,-9.003,-8.966,-8.982,-8.999,-8.955,-8.835,-8.693,-8.613,
--8.647,-8.796,-9.029,-9.303,-9.577,-9.819,-10.015,-10.180,-10.347,-10.546,-10.773,-11.006,-11.230,-11.457,-11.715,-12.007,
--12.304,-12.564,-12.776,-12.963,-13.149,-13.326,-13.462,-13.539,-13.578,-13.613,-13.660,-13.704,-13.725,-13.720,-13.705,-13.687,
--13.664,-13.643,-13.657,-13.741,-13.896,-14.085,-14.264,-14.428,-14.612,-14.847,-15.118,-15.386,-15.629,-15.871,-16.143,-16.444,
--16.744,-17.030,-17.330,-17.687,-18.102,-18.529,-18.928,-19.295,-19.649,-19.986,-20.280,-20.531,-20.787,-21.111,-21.525,-21.995,
--22.470,-22.918,-23.333,-23.716,-24.073,-24.421,-24.772,-25.119,-25.438,-25.715,-25.964,-26.211,-26.461,-26.700,-26.914,-27.104,
--27.281,-27.444,-27.592,-27.736,-27.893,-28.062,-28.226,-28.379,-28.540,-28.742,-28.999,-29.295,-29.611,-29.936,-30.262,-30.574,
--30.861,-31.135,-31.428,-31.763,-32.129,-32.491,-32.817,-33.099,-33.357,-33.624,-33.923,-34.241,-34.531,-34.761,-34.949,-35.155,
--35.427,-35.749,-36.065,-36.341,-36.587,-36.834,-37.102,-37.397,-37.728,-38.086,-38.430,-38.708,-38.915,-39.101,-39.316,-39.548,
--39.742,-39.879,-40.000,-40.146,-40.308,-40.443,-40.546,-40.663,-40.824,-40.996,-41.127,-41.209,-41.283,-41.371,-41.454,-41.512,
--41.572,-41.672,-41.803,-41.906,-41.940,-41.933,-41.936,-41.962,-41.985,-42.000,-42.035,-42.100,-42.141,-42.091,-41.954,-41.811,
--41.742,-41.748,-41.767,-41.744,-41.673,-41.571,-41.448,-41.316,-41.209,-41.155,-41.135,-41.066,-40.856,-40.467,-39.953,-39.435,
--39.033,-38.805,-38.718,-38.680,-38.582,-38.315,-37.747,-36.764,-35.402,-33.969,-32.984,-32.853,-33.549,-34.589,-35.394,-35.694,
--35.625,-35.455,-35.289,-35.028,-34.578,-33.997,-33.425,-32.923,-32.442,-31.931,-31.428,-31.003,-30.646,-30.260,-29.771,-29.222,
--28.730,-28.367,-28.103,-27.851,-27.545,-27.179,-26.787,-26.431,-26.167,-26.019,-25.936,-25.828,-25.641,-25.416,-25.234,-25.122,
--25.010,-24.814,-24.528,-24.230,-23.990,-23.823,-23.735,-23.806,-24.154,-24.774,-25.435,-25.777,-25.588,-24.990,-24.370,-24.092,
--24.246,-24.636,-24.986,-25.149,-25.159,-25.129,-25.138,-25.199,-25.304,-25.448,-25.623,-25.807,-25.979,-26.137,-26.311,-26.550,
--26.914,-27.435,-28.051,-28.559,-28.689,-28.295,-27.529,-26.791,-26.460,-26.631,-27.094,-27.551,-27.845,-28.006,-28.123,-28.226,
--28.281,-28.247,-28.114,-27.899,-27.632,-27.367,-27.163,-27.057,-27.045,-27.099,-27.193,-27.298,-27.370,-27.375,-27.323,-27.277,
--27.284,-27.325,-27.346,-27.331,-27.336,-27.429,-27.626,-27.892,-28.193,-28.509,-28.798,-28.980,-28.987,-28.829,-28.577,-28.296,
--28.004,-27.716,-27.487,-27.384,-27.424,-27.553,-27.708,-27.862,-28.009,-28.116,-28.141,-28.093,-28.058,-28.137,-28.376,-28.750,
--29.222,-29.764,-30.335,-30.873,-31.326,-31.706,-32.078,-32.506,-33.017,-33.605,-34.233,-34.827,-35.302,-35.651,-36.000,-36.520,
--37.241,-38.001,-38.622,-39.141,-39.804,-40.769,-41.868,-42.703,-43.010,-42.898,-42.725,-42.777,-43.121,-43.722,-44.591,-45.756,
--47.121,-48.438,-49.477,-50.188,-50.683,-51.077,-51.384,-51.568,-51.629,-51.615,-51.571,-51.508,-51.433,-51.368,-51.313,-51.227,
--51.064,-50.836,-50.589,-50.335,-50.016,-49.577,-49.046,-48.522,-48.064,-47.635,-47.175,-46.693,-46.265,-45.925,-45.608,-45.228,
--44.788,-44.360,-43.969,-43.534,-42.970,-42.336,-41.817,-41.534,-41.400,-41.210,-40.855,-40.425,-40.077,-39.843,-39.621,-39.318,
--38.972,-38.681,-38.469,-38.268,-38.028,-37.797,-37.665,-37.649,-37.669,-37.638,-37.536,-37.387,-37.199,-36.961,-36.684,-36.415,
--36.178,-35.942,-35.656,-35.314,-34.954,-34.603,-34.238,-33.812,-33.313,-32.759,-32.178,-31.587,-31.002,-30.433,-29.869,-29.276,
--28.637,-27.980,-27.346,-26.739,-26.115,-25.437,-24.721,-24.007,-23.310,-22.610,-21.883,-21.133,-20.357,-19.531,-18.632,-17.682,
--16.731,-15.806,-14.882,-13.928,-12.957,-12.014,-11.119,-10.244,-9.357,-8.463,-7.585,-6.714,-5.813,-4.864,-3.897,-2.954,
--2.039,-1.119,-.169,.797,1.753,2.689,3.621,4.569,5.541,6.534,7.528,8.487,9.384,10.236,11.112,12.077,
-13.134,14.216,15.251,16.218,17.134,18.011,18.837,19.582,20.235,20.797,21.284,21.722,22.154,22.625,23.147,23.696,
-24.233,24.733,25.190,25.609,25.993,26.351,26.700,27.055,27.423,27.808,28.216,28.639,29.055,29.430,29.749,30.033,
-30.317,30.619,30.922,31.204,31.466,31.728,31.998,32.256,32.474,32.651,32.821,33.022,33.260,33.519,33.777,34.006,
-34.141,34.087,33.828,33.544,33.582,34.214,35.342,36.458,36.951,36.542,35.449,34.175,33.137,32.465,32.101,31.966,
-32.020,32.188,32.325,32.304,32.121,31.878,31.683,31.556,31.465,31.397,31.396,31.507,31.726,32.007,32.316,32.653,
-33.033,33.446,33.850,34.206,34.517,34.822,35.168,35.569,35.999,36.415,36.784,37.098,37.369,37.621,37.873,38.137,
-38.403,38.644,38.817,38.893,38.874,38.809,38.769,38.809,38.943,39.151,39.405,39.693,40.011,40.348,40.707,41.133,
-41.694,42.412,43.188,43.831,44.183,44.215,44.019,43.714,43.406,43.202,43.219,43.512,43.992,44.465,44.795,45.031,
-45.362,45.940,46.750,47.639,48.437,49.042,49.447,49.732,50.043,50.512,51.159,51.861,52.468,52.949,53.422,54.008,
-54.655,55.113,55.108,54.532,53.525,52.363,51.306,50.484,49.906,49.506,49.187,48.834,48.336,47.652,46.866,46.154,
-45.648,45.314,44.985,44.517,43.920,43.321,42.810,42.353,41.843,41.225,40.537,39.911,39.243,38.621,38.024,37.432,
-36.840,36.282,35.818,35.490,35.233,34.870,34.220,33.275,32.216,31.262,30.491,29.830,29.210,28.655,28.224,27.904,
-27.620,27.351,27.163,27.116,27.154,27.162,27.090,27.012,27.030,27.166,27.373,27.607,27.862,28.123,28.348,28.515,
-28.670,28.905,29.271,29.749,30.280,30.810,31.303,31.719,32.019,32.184,32.210,32.113,31.924,31.702,31.505,31.348,
-31.201,31.039,30.882,30.756,30.632,30.428,30.089,29.652,29.213,28.844,28.558,28.340,28.186,28.088,28.019,27.953,
-27.886,27.836,27.789,27.696,27.512,27.255,27.003,26.850,26.853,27.009,27.245,27.446,27.521,27.460,27.317,27.116,
-26.809,26.341,25.756,25.180,24.697,24.259,23.762,23.182,22.610,22.149,21.827,21.618,21.502,21.454,21.391,21.224,
-20.960,20.722,20.595,20.491,20.216,19.680,18.977,18.253,17.531,16.746,15.899,15.117,14.528,14.148,13.934,13.909,
-14.146,14.626,15.184,15.645,15.974,16.249,16.514,16.727,16.861,16.960,17.067,17.130,17.084,16.992,17.007,17.161,
-17.271,17.162,16.955,16.988,17.413,17.957,18.197,18.076,18.010,18.430,19.265,19.971,20.043,19.448,18.561,17.776,
-17.251,16.951,16.786,16.665,16.485,16.184,15.799,15.423,15.073,14.650,14.055,13.315,12.527,11.721,10.817,9.761,
-8.636,7.596,6.695,5.838,4.912,3.926,2.985,2.140,1.320,.409,-.633,-1.754,-2.887,-4.013,-5.155,-6.320,
--7.481,-8.597,-9.642,-10.623,-11.573,-12.535,-13.524,-14.505,-15.381,-16.013,-16.279,-16.152,-15.779,-15.430,-15.305,-15.286,
--14.926,-13.756,-11.715,-9.282,-7.150,-5.713,-4.846,-4.165,-3.450,-2.809,-2.472,-2.501,-2.731,-2.958,-3.130,-3.325,
--3.585,-3.805,-3.833,-3.664,-3.528,-3.741,-4.422,-5.341,-6.064,-6.289,-6.094,-5.886,-6.107,-6.956,-8.322,-9.905,
--11.389,-12.551,-13.306,-13.693,-13.819,-13.777,-13.628,-13.442,-13.345,-13.476,-13.901,-14.582,-15.447,-16.459,-17.573,-18.653,
--19.501,-20.026,-20.367,-20.770,-21.338,-21.915,-22.254,-22.302,-22.281,-22.476,-22.970,-23.588,-24.084,-24.356,-24.489,-24.635,
--24.880,-25.195,-25.471,-25.580,-25.444,-25.098,-24.715,-24.516,-24.641,-25.067,-25.690,-26.472,-27.481,-28.739,-30.075,-31.220,
--32.130,-33.208,-35.074,-38.011,-41.583,-44.838,-46.958,-47.761,-47.644,-47.134,-46.531,-45.907,-45.293,-44.752,-44.303,-43.888,
--43.471,-43.153,-43.115,-43.447,-44.070,-44.816,-45.566,-46.275,-46.933,-47.517,-47.986,-48.207,-47.905,-46.746,-44.636,-41.938,
--39.320,-37.260,-35.668,-33.999,-31.793,-29.103,-26.441,-24.368,-23.142,-22.687,-22.765,-23.122,-23.542,-23.878,-24.111,-24.345,
--24.709,-25.241,-25.877,-26.545,-27.228,-27.919,-28.548,-28.996,-29.204,-29.259,-29.331,-29.523,-29.784,-29.978,-30.038,-30.045,
--30.140,-30.366,-30.607,-30.719,-30.701,-30.735,-31.022,-31.578,-32.210,-32.701,-33.007,-33.274,-33.659,-34.174,-34.696,-35.095,
--35.347,-35.504,-35.617,-35.686,-35.697,-35.674,-35.689,-35.820,-36.087,-36.425,-36.715,-36.866,-36.875,-36.822,-36.790,-36.799,
--36.815,-36.821,-36.850,-36.950,-37.121,-37.318,-37.516,-37.736,-37.991,-38.213,-38.293,-38.202,-38.048,-37.974,-37.978,-37.878,
--37.491,-36.838,-36.152,-35.665,-35.397,-35.171,-34.802,-34.245,-33.594,-32.982,-32.522,-32.278,-32.217,-32.182,-31.977,-31.555,
--31.095,-30.828,-30.781,-30.746,-30.543,-30.298,-30.382,-31.101,-32.471,-34.301,-36.382,-38.522,-40.451,-41.841,-42.527,-42.661,
--42.571,-42.453,-42.254,-41.862,-41.310,-40.734,-40.153,-39.421,-38.418,-37.231,-36.056,-34.954,-33.778,-32.371,-30.787,-29.251,
--27.923,-26.758,-25.622,-24.493,-23.501,-22.784,-22.363,-22.167,-22.132,-22.226,-22.374,-22.404,-22.129,-21.490,-20.603,-19.649,
--18.727,-17.826,-16.910,-16.008,-15.160,-14.318,-13.343,-12.147,-10.820,-9.572,-8.547,-7.714,-6.946,-6.180,-5.442,-4.747,
--4.015,-3.149,-2.154,-1.148,-.238,.577,1.373,2.197,3.036,3.862,4.682,5.531,6.426,7.364,8.333,9.317,
-10.291,11.233,12.144,13.027,13.861,14.606,15.266,15.912,16.615,17.362,18.063,18.657,19.192,19.779,20.481,21.269,
-22.074,22.847,23.564,24.220,24.842,25.493,26.221,26.996,27.735,28.377,28.915,29.349,29.641,29.800,29.959,30.301,
-30.852,31.395,31.662,31.610,31.422,31.202,30.755,29.766,28.240,26.698,25.847,26.036,27.012,28.190,29.123,29.743,
-30.244,30.819,31.522,32.315,33.148,33.984,34.767,35.428,35.940,36.346,36.709,37.035,37.276,37.427,37.583,37.857,
-38.234,38.578,38.817,39.099,39.666,40.551,41.485,42.156,42.519,42.730,42.769,42.289,40.981,39.012,36.872,34.690,
-31.889,27.822,22.860,18.637,16.953,18.294,21.443,24.550,26.532,27.508,28.109,28.654,29.010,28.998,28.688,28.267,
-27.813,27.291,26.714,26.184,25.750,25.339,24.842,24.250,23.629,23.008,22.353,21.664,21.032,20.544,20.169,19.766,
-19.220,18.545,17.865,17.315,16.966,16.799,16.690,16.458,15.972,15.263,14.509,13.896,13.482,13.203,12.964,12.706,
-12.388,11.976,11.479,10.987,10.605,10.358,10.153,9.880,9.519,9.142,8.826,8.587,8.377,8.138,7.823,7.413,
-6.936,6.462,6.059,5.734,5.424,5.059,4.621,4.155,3.709,3.297,2.893,2.456,1.957,1.395,.807,.250,
--.240,-.680,-1.118,-1.577,-2.030,-2.434,-2.776,-3.082,-3.389,-3.712,-4.035,-4.333,-4.584,-4.800,-5.032,-5.349,
--5.779,-6.269,-6.713,-7.038,-7.248,-7.396,-7.527,-7.653,-7.772,-7.882,-7.967,-7.997,-7.959,-7.889,-7.852,-7.879,
--7.942,-7.987,-8.000,-8.026,-8.120,-8.288,-8.466,-8.577,-8.608,-8.645,-8.789,-9.036,-9.237,-9.223,-8.985,-8.710,
--8.586,-8.607,-8.609,-8.501,-8.401,-8.473,-8.648,-8.619,-8.160,-7.437,-6.908,-6.913,-7.380,-7.938,-8.287,-8.407,
--8.453,-8.540,-8.648,-8.710,-8.712,-8.707,-8.749,-8.832,-8.886,-8.816,-8.598,-8.332,-8.194,-8.282,-8.513,-8.696,
--8.718,-8.638,-8.588,-8.607,-8.618,-8.556,-8.462,-8.421,-8.440,-8.447,-8.411,-8.415,-8.561,-8.814,-9.000,-8.970,
--8.759,-8.556,-8.518,-8.632,-8.754,-8.761,-8.659,-8.537,-8.457,-8.403,-8.333,-8.248,-8.205,-8.242,-8.330,-8.405,
--8.441,-8.470,-8.524,-8.583,-8.596,-8.558,-8.520,-8.536,-8.593,-8.634,-8.634,-8.629,-8.667,-8.733,-8.768,-8.736,
--8.665,-8.607,-8.584,-8.578,-8.581,-8.610,-8.675,-8.749,-8.779,-8.742,-8.674,-8.638,-8.662,-8.715,-8.736,-8.692,
--8.612,-8.569,-8.626,-8.800,-9.049,-9.314,-9.547,-9.741,-9.914,-10.094,-10.295,-10.515,-10.736,-10.951,-11.173,-11.426,
--11.711,-11.995,-12.236,-12.426,-12.599,-12.787,-12.974,-13.118,-13.201,-13.257,-13.338,-13.450,-13.546,-13.579,-13.555,-13.519,
--13.504,-13.504,-13.503,-13.515,-13.584,-13.734,-13.934,-14.127,-14.293,-14.463,-14.679,-14.935,-15.185,-15.395,-15.588,-15.810,
--16.072,-16.343,-16.599,-16.865,-17.191,-17.590,-18.020,-18.432,-18.817,-19.193,-19.560,-19.894,-20.191,-20.492,-20.852,-21.288,
--21.769,-22.259,-22.739,-23.196,-23.607,-23.957,-24.263,-24.562,-24.867,-25.151,-25.388,-25.583,-25.769,-25.959,-26.141,-26.309,
--26.480,-26.669,-26.872,-27.072,-27.272,-27.492,-27.727,-27.946,-28.132,-28.314,-28.546,-28.846,-29.181,-29.511,-29.831,-30.150,
--30.460,-30.738,-30.986,-31.247,-31.556,-31.900,-32.230,-32.513,-32.767,-33.031,-33.324,-33.629,-33.921,-34.184,-34.421,-34.655,
--34.917,-35.231,-35.590,-35.955,-36.281,-36.551,-36.788,-37.037,-37.341,-37.711,-38.107,-38.459,-38.717,-38.898,-39.070,-39.285,
--39.525,-39.737,-39.902,-40.059,-40.244,-40.440,-40.597,-40.703,-40.803,-40.940,-41.098,-41.228,-41.305,-41.357,-41.427,-41.536,
--41.670,-41.808,-41.922,-41.991,-42.013,-42.018,-42.048,-42.108,-42.160,-42.171,-42.153,-42.152,-42.181,-42.198,-42.158,-42.066,
--41.975,-41.933,-41.944,-41.976,-41.986,-41.941,-41.824,-41.650,-41.468,-41.333,-41.269,-41.246,-41.204,-41.072,-40.802,-40.397,
--39.933,-39.534,-39.276,-39.127,-38.985,-38.783,-38.507,-38.099,-37.392,-36.237,-34.761,-33.453,-32.883,-33.254,-34.222,-35.175,
--35.696,-35.788,-35.695,-35.579,-35.397,-35.040,-34.505,-33.903,-33.341,-32.828,-32.316,-31.790,-31.290,-30.852,-30.449,-30.013,
--29.506,-28.968,-28.497,-28.167,-27.961,-27.774,-27.492,-27.080,-26.617,-26.231,-25.998,-25.894,-25.827,-25.722,-25.572,-25.410,
--25.247,-25.058,-24.817,-24.545,-24.294,-24.098,-23.936,-23.766,-23.609,-23.571,-23.766,-24.179,-24.624,-24.855,-24.762,-24.466,
--24.222,-24.211,-24.416,-24.681,-24.862,-24.919,-24.886,-24.809,-24.725,-24.684,-24.734,-24.880,-25.062,-25.210,-25.324,-25.486,
--25.803,-26.325,-27.016,-27.738,-28.275,-28.411,-28.074,-27.438,-26.868,-26.680,-26.923,-27.378,-27.774,-27.994,-28.111,-28.246,
--28.444,-28.647,-28.752,-28.673,-28.385,-27.957,-27.540,-27.288,-27.254,-27.372,-27.524,-27.638,-27.702,-27.721,-27.697,-27.653,
--27.645,-27.714,-27.837,-27.948,-28.017,-28.079,-28.183,-28.339,-28.524,-28.725,-28.944,-29.144,-29.237,-29.150,-28.897,-28.576,
--28.277,-28.040,-27.879,-27.830,-27.913,-28.087,-28.251,-28.340,-28.368,-28.390,-28.411,-28.391,-28.319,-28.261,-28.314,-28.514,
--28.822,-29.180,-29.562,-29.957,-30.343,-30.705,-31.063,-31.473,-31.982,-32.596,-33.279,-33.957,-34.533,-34.936,-35.219,-35.584,
--36.238,-37.191,-38.211,-39.049,-39.702,-40.402,-41.323,-42.318,-43.026,-43.241,-43.123,-43.024,-43.151,-43.461,-43.855,-44.391,
--45.236,-46.428,-47.768,-48.959,-49.840,-50.444,-50.877,-51.198,-51.411,-51.530,-51.595,-51.628,-51.621,-51.570,-51.496,-51.424,
--51.343,-51.219,-51.034,-50.804,-50.544,-50.235,-49.851,-49.395,-48.906,-48.413,-47.918,-47.418,-46.933,-46.501,-46.133,-45.798,
--45.458,-45.104,-44.747,-44.385,-43.998,-43.586,-43.187,-42.834,-42.506,-42.136,-41.697,-41.247,-40.883,-40.623,-40.382,-40.068,
--39.697,-39.377,-39.179,-39.052,-38.884,-38.645,-38.417,-38.290,-38.261,-38.243,-38.173,-38.060,-37.930,-37.765,-37.520,-37.199,
--36.856,-36.536,-36.225,-35.889,-35.530,-35.186,-34.864,-34.522,-34.113,-33.640,-33.140,-32.625,-32.078,-31.492,-30.889,-30.291,
--29.687,-29.056,-28.409,-27.786,-27.199,-26.607,-25.955,-25.240,-24.513,-23.811,-23.123,-22.409,-21.647,-20.837,-19.980,-19.072,
--18.120,-17.156,-16.211,-15.293,-14.391,-13.492,-12.590,-11.681,-10.760,-9.837,-8.922,-8.009,-7.076,-6.111,-5.139,-4.200,
--3.299,-2.397,-1.456,-.477,.503,1.452,2.368,3.266,4.171,5.111,6.106,7.137,8.142,9.066,9.932,10.831,
-11.833,12.909,13.960,14.918,15.793,16.636,17.461,18.233,18.913,19.495,19.998,20.446,20.876,21.331,21.839,22.388,
-22.933,23.439,23.909,24.363,24.796,25.189,25.538,25.877,26.245,26.649,27.068,27.480,27.873,28.245,28.583,28.881,
-29.156,29.439,29.743,30.053,30.345,30.613,30.878,31.155,31.437,31.704,31.946,32.176,32.404,32.632,32.864,33.113,
-33.361,33.509,33.407,33.033,32.655,32.746,33.604,34.979,36.115,36.285,35.370,33.943,32.773,32.230,32.137,32.124,
-32.025,31.922,31.909,31.918,31.817,31.588,31.343,31.177,31.062,30.933,30.812,30.810,30.999,31.323,31.664,31.975,
-32.311,32.733,33.210,33.645,33.977,34.244,34.534,34.893,35.287,35.645,35.937,36.190,36.458,36.772,37.124,37.469,
-37.752,37.939,38.034,38.074,38.109,38.163,38.238,38.321,38.405,38.495,38.620,38.840,39.216,39.757,40.388,41.012,
-41.610,42.259,43.018,43.789,44.345,44.520,44.370,44.116,43.933,43.829,43.730,43.631,43.618,43.751,43.983,44.237,
-44.523,44.954,45.648,46.627,47.797,48.975,49.935,50.511,50.753,50.963,51.493,52.425,53.448,54.115,54.245,54.057,
-53.903,53.915,53.914,53.643,53.023,52.188,51.322,50.533,49.852,49.302,48.899,48.596,48.266,47.771,47.070,46.266,
-45.527,44.960,44.542,44.164,43.744,43.283,42.826,42.378,41.884,41.292,40.613,39.911,39.102,38.542,38.014,37.473,
-36.899,36.289,35.646,35.014,34.456,33.988,33.512,32.887,32.069,31.176,30.376,29.727,29.163,28.617,28.111,27.710,
-27.412,27.158,26.929,26.780,26.753,26.790,26.783,26.698,26.617,26.641,26.792,27.022,27.292,27.586,27.872,28.082,
-28.181,28.225,28.331,28.593,29.019,29.547,30.096,30.599,31.021,31.360,31.629,31.817,31.888,31.827,31.688,31.556,
-31.472,31.400,31.281,31.104,30.891,30.645,30.334,29.954,29.556,29.206,28.923,28.693,28.521,28.438,28.443,28.467,
-28.431,28.332,28.234,28.182,28.132,27.987,27.689,27.276,26.870,26.615,26.593,26.754,26.931,26.957,26.787,26.505,
-26.192,25.825,25.338,24.751,24.197,23.781,23.465,23.132,22.740,22.361,22.076,21.883,21.741,21.649,21.620,21.603,
-21.498,21.280,21.055,20.939,20.898,20.772,20.442,19.934,19.342,18.703,18.003,17.273,16.598,16.027,15.528,15.092,
-14.804,14.767,14.944,15.156,15.258,15.270,15.303,15.403,15.533,15.678,15.876,16.122,16.326,16.444,16.590,16.904,
-17.302,17.485,17.301,17.013,17.056,17.509,17.939,17.906,17.542,17.487,18.182,19.341,20.190,20.198,19.474,18.506,
-17.657,16.989,16.446,16.019,15.689,15.353,14.934,14.505,14.214,14.048,13.782,13.203,12.351,11.451,10.632,9.797,
-8.806,7.709,6.712,5.937,5.287,4.587,3.783,2.958,2.179,1.405,.561,-.360,-1.309,-2.279,-3.334,-4.520,
--5.786,-7.023,-8.167,-9.249,-10.325,-11.408,-12.449,-13.399,-14.250,-15.016,-15.660,-16.069,-16.147,-15.947,-15.707,-15.669,
--15.800,-15.714,-14.945,-13.369,-11.346,-9.422,-7.870,-6.568,-5.293,-4.079,-3.214,-2.907,-3.041,-3.281,-3.403,-3.467,
--3.668,-4.072,-4.518,-4.762,-4.698,-4.458,-4.317,-4.502,-5.040,-5.733,-6.303,-6.567,-6.561,-6.507,-6.696,-7.353,
--8.552,-10.170,-11.908,-13.386,-14.314,-14.628,-14.490,-14.164,-13.880,-13.768,-13.870,-14.198,-14.771,-15.616,-16.717,-17.954,
--19.094,-19.917,-20.386,-20.691,-21.080,-21.613,-22.104,-22.326,-22.276,-22.209,-22.396,-22.873,-23.435,-23.861,-24.106,-24.293,
--24.546,-24.875,-25.209,-25.467,-25.586,-25.515,-25.243,-24.864,-24.571,-24.552,-24.876,-25.505,-26.396,-27.533,-28.816,-29.989,
--30.810,-31.378,-32.263,-34.169,-37.340,-41.237,-44.833,-47.283,-48.384,-48.494,-48.103,-47.519,-46.857,-46.189,-45.605,-45.145,
--44.757,-44.371,-44.000,-43.767,-43.813,-44.196,-44.843,-45.586,-46.259,-46.794,-47.246,-47.681,-48.005,-47.924,-47.128,-45.561,
--43.521,-41.442,-39.577,-37.843,-35.948,-33.618,-30.759,-27.530,-24.372,-21.937,-20.805,-21.092,-22.274,-23.495,-24.157,-24.264,
--24.246,-24.458,-24.909,-25.405,-25.863,-26.389,-27.078,-27.823,-28.396,-28.679,-28.775,-28.888,-29.115,-29.397,-29.638,-29.832,
--30.055,-30.348,-30.634,-30.784,-30.749,-30.635,-30.633,-30.857,-31.252,-31.659,-31.976,-32.241,-32.575,-33.039,-33.569,-34.040,
--34.387,-34.647,-34.897,-35.163,-35.397,-35.531,-35.557,-35.548,-35.605,-35.774,-36.009,-36.214,-36.338,-36.408,-36.483,-36.560,
--36.569,-36.456,-36.275,-36.158,-36.197,-36.368,-36.587,-36.824,-37.136,-37.553,-37.971,-38.186,-38.083,-37.770,-37.490,-37.384,
--37.353,-37.172,-36.739,-36.184,-35.716,-35.394,-35.080,-34.614,-33.985,-33.325,-32.764,-32.349,-32.061,-31.869,-31.713,-31.510,
--31.241,-31.005,-30.928,-30.981,-30.976,-30.825,-30.785,-31.339,-32.766,-34.859,-37.089,-39.028,-40.560,-41.718,-42.475,-42.775,
--42.709,-42.515,-42.368,-42.215,-41.894,-41.355,-40.703,-40.020,-39.249,-38.301,-37.219,-36.144,-35.125,-34.021,-32.660,-31.054,
--29.411,-27.934,-26.656,-25.486,-24.386,-23.451,-22.820,-22.539,-22.513,-22.586,-22.636,-22.587,-22.382,-21.965,-21.314,-20.470,
--19.524,-18.554,-17.594,-16.660,-15.776,-14.953,-14.137,-13.215,-12.119,-10.911,-9.743,-8.713,-7.792,-6.894,-5.997,-5.153,
--4.381,-3.603,-2.714,-1.700,-.654,.322,1.204,2.022,2.799,3.538,4.251,4.979,5.760,6.609,7.520,8.475,
-9.442,10.389,11.317,12.269,13.253,14.185,14.948,15.539,16.112,16.828,17.669,18.451,19.035,19.497,20.036,20.762,
-21.600,22.400,23.086,23.688,24.271,24.891,25.592,26.387,27.216,27.965,28.549,28.971,29.285,29.537,29.773,30.074,
-30.499,30.971,31.298,31.358,31.243,31.123,30.950,30.410,29.264,27.744,26.507,26.124,26.630,27.567,28.453,29.146,
-29.804,30.593,31.503,32.406,33.208,33.907,34.539,35.120,35.644,36.109,36.526,36.898,37.208,37.429,37.572,37.708,
-37.920,38.218,38.534,38.834,39.227,39.883,40.810,41.747,42.374,42.617,42.668,42.639,42.313,41.345,39.698,37.688,
-35.484,32.697,28.767,23.908,19.519,17.367,18.196,21.111,24.353,26.649,27.846,28.458,28.874,29.087,28.996,28.680,
-28.313,27.946,27.495,26.931,26.356,25.869,25.446,24.986,24.448,23.865,23.257,22.588,21.845,21.103,20.467,19.958,
-19.504,19.032,18.540,18.066,17.630,17.227,16.857,16.515,16.162,15.736,15.225,14.700,14.256,13.920,13.639,13.339,
-12.976,12.537,12.034,11.519,11.083,10.789,10.590,10.366,10.036,9.641,9.281,9.003,8.763,8.497,8.190,7.851,
-7.469,7.013,6.501,6.007,5.594,5.248,4.898,4.502,4.091,3.727,3.427,3.138,2.775,2.291,1.704,1.091,
-.527,.038,-.409,-.869,-1.359,-1.845,-2.272,-2.606,-2.854,-3.057,-3.275,-3.551,-3.886,-4.228,-4.522,-4.772,
--5.058,-5.447,-5.916,-6.357,-6.681,-6.896,-7.078,-7.279,-7.481,-7.630,-7.697,-7.696,-7.658,-7.616,-7.601,-7.631,
--7.693,-7.752,-7.774,-7.759,-7.740,-7.760,-7.845,-7.994,-8.171,-8.324,-8.429,-8.499,-8.566,-8.620,-8.622,-8.555,
--8.464,-8.401,-8.356,-8.289,-8.224,-8.266,-8.443,-8.567,-8.337,-7.657,-6.819,-6.322,-6.452,-7.051,-7.694,-8.061,
--8.144,-8.134,-8.191,-8.315,-8.411,-8.413,-8.363,-8.372,-8.501,-8.665,-8.686,-8.464,-8.125,-7.938,-8.060,-8.365,
--8.576,-8.551,-8.406,-8.345,-8.414,-8.483,-8.434,-8.305,-8.213,-8.194,-8.184,-8.143,-8.131,-8.220,-8.363,-8.419,
--8.304,-8.105,-7.997,-8.066,-8.228,-8.325,-8.275,-8.134,-8.015,-7.970,-7.960,-7.915,-7.825,-7.750,-7.744,-7.798,
--7.858,-7.896,-7.936,-8.005,-8.078,-8.100,-8.058,-8.016,-8.036,-8.109,-8.164,-8.156,-8.121,-8.122,-8.168,-8.206,
--8.190,-8.135,-8.086,-8.067,-8.060,-8.058,-8.087,-8.180,-8.320,-8.432,-8.443,-8.356,-8.256,-8.241,-8.331,-8.450,
--8.498,-8.446,-8.373,-8.394,-8.556,-8.807,-9.062,-9.276,-9.469,-9.672,-9.892,-10.111,-10.315,-10.510,-10.712,-10.929,
--11.165,-11.407,-11.634,-11.826,-11.992,-12.168,-12.375,-12.587,-12.749,-12.842,-12.910,-13.017,-13.173,-13.318,-13.389,-13.383,
--13.359,-13.367,-13.401,-13.431,-13.450,-13.496,-13.604,-13.760,-13.918,-14.054,-14.200,-14.399,-14.648,-14.895,-15.093,-15.258,
--15.446,-15.687,-15.954,-16.213,-16.480,-16.806,-17.213,-17.660,-18.089,-18.484,-18.866,-19.248,-19.614,-19.959,-20.313,-20.717,
--21.174,-21.645,-22.094,-22.511,-22.894,-23.225,-23.488,-23.708,-23.930,-24.174,-24.416,-24.627,-24.816,-25.014,-25.226,-25.432,
--25.625,-25.832,-26.076,-26.344,-26.603,-26.857,-27.133,-27.435,-27.721,-27.957,-28.173,-28.431,-28.753,-29.093,-29.399,-29.675,
--29.957,-30.248,-30.518,-30.757,-31.010,-31.320,-31.671,-31.998,-32.264,-32.501,-32.757,-33.045,-33.336,-33.616,-33.899,-34.205,
--34.528,-34.853,-35.179,-35.520,-35.872,-36.202,-36.485,-36.732,-36.994,-37.317,-37.700,-38.091,-38.423,-38.668,-38.862,-39.067,
--39.314,-39.574,-39.795,-39.969,-40.136,-40.337,-40.558,-40.750,-40.885,-40.984,-41.085,-41.201,-41.307,-41.386,-41.451,-41.538,
--41.678,-41.860,-42.039,-42.155,-42.179,-42.144,-42.124,-42.170,-42.268,-42.356,-42.392,-42.381,-42.352,-42.316,-42.273,-42.231,
--42.211,-42.218,-42.235,-42.245,-42.244,-42.226,-42.154,-42.002,-41.795,-41.613,-41.515,-41.488,-41.472,-41.427,-41.335,-41.167,
--40.885,-40.500,-40.104,-39.789,-39.550,-39.305,-39.022,-38.752,-38.494,-38.050,-37.131,-35.694,-34.144,-33.135,-33.084,-33.849,
--34.869,-35.606,-35.882,-35.848,-35.721,-35.572,-35.329,-34.922,-34.382,-33.805,-33.262,-32.747,-32.218,-31.675,-31.170,-30.742,
--30.344,-29.881,-29.325,-28.774,-28.380,-28.190,-28.078,-27.848,-27.405,-26.832,-26.304,-25.950,-25.780,-25.724,-25.699,-25.645,
--25.529,-25.336,-25.074,-24.773,-24.484,-24.266,-24.140,-24.058,-23.908,-23.606,-23.215,-22.953,-23.034,-23.466,-24.010,-24.359,
--24.397,-24.259,-24.182,-24.282,-24.501,-24.697,-24.769,-24.689,-24.482,-24.218,-24.014,-23.972,-24.099,-24.285,-24.411,-24.479,
--24.625,-24.998,-25.634,-26.424,-27.181,-27.711,-27.880,-27.685,-27.298,-27.003,-27.011,-27.314,-27.709,-27.987,-28.101,-28.155,
--28.275,-28.492,-28.734,-28.880,-28.822,-28.529,-28.092,-27.698,-27.520,-27.587,-27.774,-27.931,-28.003,-28.029,-28.049,-28.054,
--28.031,-28.023,-28.096,-28.267,-28.492,-28.715,-28.919,-29.105,-29.256,-29.353,-29.408,-29.454,-29.481,-29.420,-29.212,-28.884,
--28.545,-28.294,-28.169,-28.167,-28.284,-28.497,-28.725,-28.858,-28.849,-28.754,-28.671,-28.635,-28.609,-28.573,-28.569,-28.662,
--28.857,-29.088,-29.291,-29.463,-29.648,-29.881,-30.178,-30.549,-31.017,-31.592,-32.256,-32.960,-33.632,-34.193,-34.614,-34.995,
--35.548,-36.440,-37.602,-38.736,-39.579,-40.166,-40.797,-41.685,-42.693,-43.445,-43.716,-43.652,-43.594,-43.726,-43.960,-44.166,
--44.410,-44.930,-45.866,-47.096,-48.331,-49.344,-50.082,-50.601,-50.963,-51.209,-51.385,-51.532,-51.653,-51.713,-51.693,-51.622,
--51.554,-51.503,-51.434,-51.297,-51.071,-50.773,-50.433,-50.070,-49.681,-49.249,-48.764,-48.242,-47.719,-47.232,-46.783,-46.360,
--45.960,-45.611,-45.332,-45.092,-44.824,-44.483,-44.085,-43.678,-43.287,-42.892,-42.478,-42.073,-41.733,-41.469,-41.212,-40.880,
--40.468,-40.075,-39.805,-39.666,-39.558,-39.387,-39.168,-38.996,-38.930,-38.926,-38.890,-38.785,-38.646,-38.503,-38.320,-38.039,
--37.660,-37.251,-36.873,-36.527,-36.183,-35.843,-35.527,-35.225,-34.880,-34.454,-33.978,-33.506,-33.046,-32.548,-31.970,-31.336,
--30.700,-30.085,-29.474,-28.859,-28.267,-27.710,-27.151,-26.522,-25.804,-25.040,-24.290,-23.563,-22.825,-22.042,-21.211,-20.345,
--19.450,-18.522,-17.573,-16.632,-15.731,-14.873,-14.024,-13.139,-12.196,-11.225,-10.273,-9.355,-8.432,-7.458,-6.447,-5.471,
--4.579,-3.735,-2.851,-1.875,-.843,.174,1.139,2.061,2.957,3.844,4.752,5.720,6.747,7.770,8.725,9.626,
-10.561,11.583,12.638,13.617,14.476,15.268,16.061,16.844,17.551,18.139,18.634,19.093,19.552,20.024,20.524,21.061,
-21.613,22.137,22.617,23.075,23.534,23.978,24.373,24.717,25.062,25.460,25.906,26.349,26.747,27.101,27.432,27.748,
-28.041,28.316,28.597,28.899,29.210,29.504,29.773,30.037,30.320,30.622,30.927,31.230,31.537,31.840,32.106,32.309,
-32.474,32.645,32.780,32.734,32.419,32.023,31.992,32.653,33.784,34.643,34.548,33.505,32.237,31.541,31.620,32.026,
-32.216,32.059,31.810,31.698,31.672,31.553,31.299,31.035,30.860,30.725,30.548,30.381,30.377,30.609,30.980,31.335,
-31.642,31.989,32.439,32.932,33.351,33.664,33.944,34.272,34.636,34.959,35.205,35.419,35.678,36.014,36.394,36.764,
-37.072,37.274,37.342,37.303,37.246,37.274,37.430,37.668,37.905,38.091,38.240,38.409,38.674,39.098,39.691,40.388,
-41.097,41.785,42.503,43.282,44.012,44.477,44.560,44.387,44.226,44.241,44.348,44.347,44.135,43.773,43.389,43.081,
-42.935,43.078,43.636,44.640,46.000,47.552,49.078,50.315,51.050,51.328,51.523,52.086,53.102,54.152,54.670,54.466,
-53.869,53.346,53.055,52.797,52.336,51.667,50.958,50.317,49.718,49.116,48.567,48.155,47.860,47.528,47.010,46.295,
-45.506,44.789,44.209,43.744,43.343,42.975,42.621,42.238,41.763,41.156,40.451,39.741,39.102,38.326,37.899,37.462,
-36.960,36.397,35.773,35.062,34.261,33.444,32.719,32.114,31.548,30.933,30.278,29.663,29.128,28.637,28.149,27.684,
-27.299,27.006,26.768,26.575,26.467,26.459,26.485,26.449,26.336,26.234,26.250,26.413,26.684,27.015,27.364,27.668,
-27.855,27.900,27.877,27.912,28.109,28.492,29.010,29.566,30.062,30.455,30.781,31.100,31.411,31.638,31.725,31.726,
-31.758,31.868,31.963,31.909,31.652,31.250,30.783,30.301,29.846,29.475,29.218,29.038,28.874,28.726,28.660,28.702,
-28.778,28.774,28.658,28.505,28.399,28.331,28.203,27.920,27.475,26.971,26.572,26.412,26.481,26.610,26.586,26.324,
-25.906,25.456,25.004,24.507,23.976,23.509,23.189,22.980,22.780,22.549,22.335,22.177,22.041,21.885,21.742,21.666,
-21.626,21.523,21.320,21.107,20.992,20.944,20.813,20.495,20.024,19.493,18.942,18.369,17.807,17.318,16.908,16.514,
-16.104,15.746,15.526,15.420,15.315,15.153,14.997,14.924,14.922,14.951,15.045,15.274,15.600,15.890,16.112,16.435,
-16.997,17.608,17.858,17.602,17.222,17.244,17.699,18.052,17.856,17.374,17.363,18.220,19.483,20.265,20.098,19.256,
-18.301,17.509,16.806,16.084,15.396,14.815,14.299,13.791,13.384,13.212,13.192,12.992,12.353,11.376,10.395,9.590,
-8.826,7.900,6.854,5.942,5.318,4.867,4.357,3.700,2.979,2.275,1.567,.802,.008,-.764,-1.564,-2.538,
--3.766,-5.150,-6.497,-7.703,-8.829,-9.986,-11.183,-12.310,-13.248,-13.984,-14.601,-15.164,-15.632,-15.901,-15.950,-15.926,
--16.031,-16.277,-16.385,-15.987,-14.951,-13.500,-11.951,-10.400,-8.714,-6.847,-5.097,-3.930,-3.564,-3.752,-4.019,-4.073,
--3.991,-4.024,-4.319,-4.795,-5.233,-5.438,-5.348,-5.079,-4.889,-5.032,-5.568,-6.296,-6.881,-7.097,-6.977,-6.791,
--6.912,-7.660,-9.149,-11.169,-13.213,-14.701,-15.312,-15.163,-14.684,-14.288,-14.150,-14.237,-14.495,-14.982,-15.805,-16.968,
--18.282,-19.450,-20.250,-20.691,-20.983,-21.346,-21.805,-22.191,-22.329,-22.253,-22.197,-22.379,-22.798,-23.263,-23.608,-23.847,
--24.112,-24.483,-24.902,-25.269,-25.543,-25.730,-25.794,-25.659,-25.320,-24.929,-24.727,-24.892,-25.473,-26.435,-27.686,-29.017,
--30.098,-30.695,-31.002,-31.713,-33.610,-36.927,-41.056,-44.903,-47.579,-48.861,-49.094,-48.772,-48.214,-47.550,-46.852,-46.225,
--45.754,-45.438,-45.192,-44.932,-44.664,-44.508,-44.619,-45.051,-45.687,-46.324,-46.843,-47.286,-47.736,-48.131,-48.230,-47.809,
--46.849,-45.521,-44.005,-42.360,-40.563,-38.567,-36.225,-33.237,-29.391,-25.021,-21.180,-19.100,-19.265,-20.945,-22.732,-23.631,
--23.678,-23.583,-23.870,-24.447,-24.919,-25.143,-25.361,-25.842,-26.554,-27.220,-27.643,-27.860,-28.024,-28.207,-28.399,-28.626,
--28.984,-29.514,-30.096,-30.511,-30.646,-30.599,-30.585,-30.736,-30.999,-31.234,-31.373,-31.501,-31.761,-32.209,-32.755,-33.247,
--33.605,-33.870,-34.140,-34.464,-34.797,-35.047,-35.164,-35.186,-35.205,-35.295,-35.444,-35.576,-35.635,-35.658,-35.738,-35.909,
--36.085,-36.119,-35.959,-35.726,-35.616,-35.738,-36.039,-36.382,-36.694,-37.007,-37.369,-37.726,-37.918,-37.817,-37.473,-37.095,
--36.871,-36.789,-36.668,-36.361,-35.919,-35.506,-35.187,-34.844,-34.336,-33.692,-33.093,-32.664,-32.356,-32.049,-31.712,-31.420,
--31.223,-31.098,-31.029,-31.056,-31.192,-31.370,-31.584,-32.074,-33.243,-35.255,-37.740,-39.995,-41.519,-42.327,-42.734,-42.952,
--42.966,-42.756,-42.457,-42.238,-42.079,-41.784,-41.221,-40.460,-39.661,-38.876,-38.032,-37.068,-36.012,-34.891,-33.642,-32.170,
--30.500,-28.815,-27.318,-26.075,-25.005,-24.024,-23.179,-22.621,-22.457,-22.615,-22.859,-22.945,-22.766,-22.369,-21.835,-21.186,
--20.391,-19.450,-18.440,-17.459,-16.557,-15.718,-14.894,-14.028,-13.065,-11.985,-10.838,-9.725,-8.710,-7.759,-6.800,-5.817,
--4.872,-4.011,-3.182,-2.274,-1.236,-.123,.959,1.932,2.775,3.503,4.152,4.771,5.408,6.092,6.840,7.677,
-8.612,9.608,10.604,11.586,12.592,13.625,14.573,15.301,15.835,16.397,17.180,18.120,18.948,19.502,19.909,20.438,
-21.193,22.028,22.744,23.299,23.803,24.367,25.027,25.780,26.620,27.488,28.253,28.793,29.104,29.295,29.496,29.780,
-30.153,30.551,30.849,30.949,30.898,30.868,30.922,30.805,30.098,28.700,27.113,26.136,26.208,27.068,28.081,28.845,
-29.449,30.186,31.162,32.205,33.090,33.752,34.273,34.752,35.229,35.699,36.145,36.555,36.919,37.235,37.500,37.705,
-37.858,38.003,38.199,38.471,38.823,39.304,40.007,40.925,41.839,42.442,42.624,42.574,42.509,42.326,41.644,40.231,
-38.265,36.012,33.339,29.787,25.327,20.968,18.339,18.463,20.904,24.140,26.752,28.258,28.966,29.293,29.374,29.210,
-28.894,28.578,28.276,27.870,27.298,26.662,26.103,25.635,25.155,24.595,23.988,23.395,22.815,22.207,21.565,20.925,
-20.311,19.725,19.183,18.719,18.333,17.959,17.524,17.025,16.526,16.084,15.692,15.322,14.979,14.679,14.402,14.086,
-13.683,13.193,12.646,12.081,11.560,11.160,10.914,10.748,10.519,10.158,9.736,9.377,9.114,8.869,8.558,8.185,
-7.804,7.422,6.991,6.488,5.971,5.521,5.150,4.803,4.439,4.086,3.797,3.570,3.332,2.990,2.510,1.932,
-1.334,.780,.287,-.173,-.638,-1.119,-1.591,-2.011,-2.342,-2.572,-2.732,-2.886,-3.111,-3.428,-3.784,-4.097,
--4.352,-4.625,-5.000,-5.465,-5.911,-6.240,-6.463,-6.676,-6.945,-7.235,-7.450,-7.523,-7.466,-7.356,-7.284,-7.296,
--7.372,-7.453,-7.495,-7.504,-7.514,-7.532,-7.542,-7.545,-7.594,-7.736,-7.932,-8.073,-8.083,-8.007,-7.953,-7.980,
--8.041,-8.046,-7.955,-7.807,-7.690,-7.695,-7.862,-8.104,-8.207,-7.961,-7.368,-6.721,-6.410,-6.609,-7.138,-7.630,
--7.832,-7.770,-7.658,-7.673,-7.814,-7.937,-7.918,-7.800,-7.773,-7.985,-8.353,-8.595,-8.511,-8.211,-8.027,-8.165,
--8.484,-8.655,-8.526,-8.259,-8.114,-8.159,-8.243,-8.227,-8.131,-8.064,-8.057,-8.053,-8.024,-8.019,-8.066,-8.085,
--7.951,-7.660,-7.378,-7.298,-7.458,-7.711,-7.860,-7.822,-7.666,-7.531,-7.494,-7.524,-7.533,-7.473,-7.381,-7.325,
--7.329,-7.361,-7.383,-7.408,-7.465,-7.539,-7.575,-7.545,-7.493,-7.488,-7.545,-7.607,-7.628,-7.623,-7.635,-7.669,
--7.681,-7.641,-7.574,-7.538,-7.551,-7.583,-7.601,-7.618,-7.678,-7.796,-7.925,-7.981,-7.934,-7.847,-7.833,-7.945,
--8.107,-8.181,-8.109,-7.988,-7.979,-8.159,-8.452,-8.728,-8.941,-9.141,-9.384,-9.657,-9.898,-10.083,-10.244,-10.428,
--10.646,-10.872,-11.081,-11.263,-11.426,-11.588,-11.774,-11.995,-12.226,-12.415,-12.535,-12.616,-12.715,-12.859,-13.011,-13.116,
--13.160,-13.180,-13.218,-13.278,-13.339,-13.386,-13.439,-13.517,-13.614,-13.703,-13.775,-13.867,-14.027,-14.258,-14.507,-14.718,
--14.899,-15.105,-15.374,-15.683,-15.988,-16.291,-16.639,-17.056,-17.504,-17.919,-18.285,-18.635,-18.998,-19.362,-19.705,-20.042,
--20.412,-20.823,-21.237,-21.612,-21.940,-22.228,-22.475,-22.675,-22.852,-23.045,-23.271,-23.508,-23.736,-23.973,-24.248,-24.550,
--24.837,-25.097,-25.365,-25.670,-25.992,-26.287,-26.558,-26.850,-27.180,-27.505,-27.777,-28.016,-28.291,-28.621,-28.952,-29.226,
--29.460,-29.709,-29.993,-30.272,-30.526,-30.794,-31.128,-31.508,-31.860,-32.139,-32.369,-32.603,-32.860,-33.131,-33.422,-33.762,
--34.152,-34.543,-34.881,-35.168,-35.449,-35.755,-36.068,-36.357,-36.630,-36.927,-37.274,-37.649,-38.000,-38.291,-38.530,-38.762,
--39.023,-39.311,-39.591,-39.825,-40.013,-40.192,-40.401,-40.638,-40.867,-41.050,-41.179,-41.274,-41.357,-41.439,-41.523,-41.613,
--41.725,-41.871,-42.046,-42.211,-42.312,-42.329,-42.301,-42.299,-42.359,-42.459,-42.554,-42.620,-42.655,-42.647,-42.577,-42.465,
--42.381,-42.388,-42.467,-42.543,-42.565,-42.542,-42.494,-42.397,-42.220,-41.999,-41.831,-41.770,-41.775,-41.765,-41.713,-41.646,
--41.547,-41.345,-41.003,-40.593,-40.234,-39.955,-39.700,-39.442,-39.245,-39.125,-38.881,-38.166,-36.820,-35.138,-33.768,-33.264,
--33.703,-34.662,-35.548,-35.990,-35.989,-35.780,-35.577,-35.408,-35.157,-34.726,-34.154,-33.559,-33.018,-32.510,-31.994,-31.492,
--31.054,-30.659,-30.204,-29.639,-29.062,-28.648,-28.460,-28.356,-28.108,-27.614,-26.969,-26.360,-25.919,-25.678,-25.599,-25.615,
--25.637,-25.578,-25.393,-25.101,-24.764,-24.453,-24.236,-24.158,-24.170,-24.106,-23.770,-23.149,-22.509,-22.237,-22.516,-23.152,
--23.739,-24.012,-24.018,-23.998,-24.122,-24.366,-24.594,-24.686,-24.588,-24.309,-23.929,-23.592,-23.438,-23.481,-23.594,-23.640,
--23.635,-23.755,-24.173,-24.900,-25.777,-26.582,-27.141,-27.383,-27.356,-27.221,-27.186,-27.371,-27.717,-28.047,-28.225,-28.262,
--28.273,-28.351,-28.499,-28.653,-28.735,-28.677,-28.462,-28.166,-27.941,-27.911,-28.055,-28.226,-28.294,-28.270,-28.251,-28.291,
--28.338,-28.325,-28.271,-28.274,-28.408,-28.662,-28.974,-29.289,-29.566,-29.761,-29.843,-29.825,-29.750,-29.634,-29.447,-29.162,
--28.823,-28.530,-28.363,-28.336,-28.426,-28.610,-28.850,-29.062,-29.152,-29.091,-28.946,-28.821,-28.759,-28.738,-28.745,-28.813,
--28.976,-29.200,-29.395,-29.496,-29.526,-29.566,-29.690,-29.928,-30.282,-30.746,-31.310,-31.947,-32.617,-33.269,-33.863,-34.407,
--35.001,-35.800,-36.878,-38.091,-39.140,-39.827,-40.274,-40.843,-41.776,-42.928,-43.887,-44.358,-44.413,-44.351,-44.376,-44.457,
--44.497,-44.557,-44.852,-45.542,-46.568,-47.712,-48.766,-49.630,-50.288,-50.750,-51.053,-51.265,-51.456,-51.640,-51.776,-51.825,
--51.802,-51.755,-51.716,-51.670,-51.565,-51.360,-51.054,-50.688,-50.314,-49.949,-49.562,-49.109,-48.590,-48.053,-47.546,-47.067,
--46.590,-46.126,-45.739,-45.478,-45.314,-45.149,-44.903,-44.566,-44.178,-43.768,-43.348,-42.938,-42.576,-42.277,-41.998,-41.673,
--41.281,-40.879,-40.556,-40.349,-40.205,-40.042,-39.835,-39.642,-39.542,-39.544,-39.569,-39.527,-39.394,-39.215,-39.023,-38.791,
--38.474,-38.077,-37.662,-37.280,-36.928,-36.580,-36.237,-35.917,-35.605,-35.247,-34.810,-34.334,-33.885,-33.471,-33.017,-32.457,
--31.803,-31.133,-30.501,-29.906,-29.326,-28.763,-28.223,-27.676,-27.061,-26.344,-25.559,-24.769,-24.001,-23.233,-22.427,-21.575,
--20.695,-19.805,-18.901,-17.977,-17.048,-16.149,-15.297,-14.459,-13.572,-12.610,-11.616,-10.667,-9.778,-8.882,-7.911,-6.887,
--5.910,-5.042,-4.225,-3.338,-2.330,-1.258,-.212,.775,1.725,2.651,3.548,4.433,5.358,6.347,7.351,8.304,
-9.215,10.159,11.176,12.201,13.127,13.931,14.691,15.466,16.217,16.850,17.336,17.748,18.182,18.673,19.203,19.747,
-20.299,20.844,21.354,21.823,22.274,22.728,23.168,23.561,23.913,24.277,24.699,25.159,25.595,25.968,26.292,26.605,
-26.920,27.223,27.509,27.792,28.088,28.384,28.663,28.928,29.209,29.525,29.856,30.166,30.456,30.769,31.122,31.451,
-31.664,31.751,31.814,31.929,32.002,31.856,31.509,31.297,31.591,32.335,32.946,32.817,31.948,31.013,30.730,31.183,
-31.821,32.073,31.879,31.590,31.480,31.476,31.361,31.091,30.813,30.635,30.496,30.311,30.139,30.136,30.355,30.683,
-30.991,31.287,31.666,32.147,32.624,33.000,33.303,33.637,34.026,34.377,34.604,34.750,34.949,35.270,35.652,35.980,
-36.210,36.381,36.529,36.639,36.692,36.733,36.839,37.045,37.311,37.591,37.902,38.292,38.761,39.246,39.688,40.102,
-40.554,41.095,41.737,42.458,43.199,43.843,44.261,44.423,44.450,44.516,44.671,44.784,44.673,44.265,43.607,42.805,
-42.004,41.442,41.411,42.082,43.364,44.979,46.654,48.217,49.521,50.425,50.946,51.369,52.049,53.021,53.880,54.154,
-53.784,53.171,52.728,52.473,52.115,51.468,50.663,49.943,49.369,48.810,48.180,47.579,47.150,46.872,46.560,46.052,
-45.358,44.606,43.911,43.303,42.773,42.330,41.985,41.697,41.362,40.874,40.218,39.495,38.842,38.326,37.563,37.181,
-36.744,36.207,35.605,34.956,34.217,33.342,32.399,31.549,30.909,30.444,30.021,29.555,29.067,28.604,28.169,27.738,
-27.322,26.967,26.699,26.505,26.370,26.304,26.301,26.308,26.259,26.149,26.053,26.058,26.198,26.456,26.790,27.134,
-27.406,27.542,27.552,27.529,27.581,27.778,28.134,28.616,29.142,29.609,29.965,30.260,30.586,30.950,31.252,31.416,
-31.514,31.702,32.018,32.299,32.324,32.015,31.482,30.882,30.313,29.822,29.463,29.263,29.167,29.073,28.948,28.853,
-28.850,28.901,28.897,28.784,28.608,28.449,28.321,28.161,27.895,27.500,27.032,26.615,26.377,26.341,26.375,26.273,
-25.927,25.403,24.850,24.353,23.906,23.499,23.168,22.941,22.777,22.618,22.462,22.349,22.274,22.167,21.989,21.794,
-21.653,21.549,21.401,21.199,21.041,20.996,20.972,20.789,20.371,19.810,19.242,18.717,18.222,17.778,17.442,17.210,
-16.997,16.727,16.418,16.124,15.856,15.597,15.375,15.246,15.190,15.114,15.003,14.994,15.215,15.583,15.877,16.057,
-16.367,17.003,17.736,18.058,17.777,17.318,17.276,17.708,18.064,17.895,17.478,17.543,18.401,19.522,20.061,19.693,
-18.815,17.989,17.370,16.750,15.972,15.130,14.375,13.726,13.157,12.755,12.617,12.611,12.378,11.680,10.665,9.694,
-8.933,8.213,7.324,6.334,5.520,5.023,4.685,4.251,3.640,2.963,2.317,1.671,.973,.260,-.414,-1.122,
--2.051,-3.298,-4.740,-6.136,-7.360,-8.484,-9.649,-10.881,-12.057,-13.027,-13.750,-14.306,-14.798,-15.253,-15.623,-15.877,
--16.083,-16.354,-16.696,-16.927,-16.800,-16.215,-15.280,-14.127,-12.718,-10.920,-8.792,-6.740,-5.289,-4.676,-4.689,-4.891,
--4.977,-4.920,-4.857,-4.932,-5.203,-5.620,-6.003,-6.122,-5.888,-5.494,-5.306,-5.553,-6.135,-6.729,-7.077,-7.145,
--7.079,-7.114,-7.549,-8.675,-10.552,-12.801,-14.707,-15.682,-15.683,-15.188,-14.748,-14.592,-14.629,-14.756,-15.079,-15.804,
--16.972,-18.347,-19.566,-20.397,-20.876,-21.215,-21.596,-22.024,-22.350,-22.450,-22.374,-22.326,-22.490,-22.861,-23.277,-23.603,
--23.873,-24.220,-24.703,-25.234,-25.677,-25.980,-26.170,-26.248,-26.155,-25.881,-25.559,-25.425,-25.658,-26.297,-27.279,-28.490,
--29.721,-30.661,-31.103,-31.266,-31.867,-33.702,-37.009,-41.171,-45.072,-47.805,-49.134,-49.417,-49.164,-48.701,-48.130,-47.485,
--46.853,-46.357,-46.055,-45.882,-45.702,-45.438,-45.168,-45.082,-45.312,-45.806,-46.377,-46.891,-47.366,-47.870,-48.359,-48.658,
--48.627,-48.273,-47.656,-46.745,-45.429,-43.693,-41.641,-39.255,-36.191,-32.067,-27.130,-22.561,-19.866,-19.703,-21.276,-22.966,
--23.648,-23.431,-23.189,-23.500,-24.152,-24.583,-24.604,-24.555,-24.853,-25.534,-26.299,-26.873,-27.202,-27.358,-27.385,-27.345,
--27.419,-27.825,-28.588,-29.441,-30.037,-30.264,-30.314,-30.445,-30.710,-30.935,-30.960,-30.849,-30.848,-31.152,-31.724,-32.351,
--32.839,-33.162,-33.434,-33.763,-34.140,-34.459,-34.626,-34.652,-34.655,-34.763,-35.005,-35.273,-35.412,-35.362,-35.224,-35.168,
--35.268,-35.431,-35.503,-35.437,-35.345,-35.396,-35.675,-36.137,-36.656,-37.110,-37.431,-37.611,-37.672,-37.621,-37.434,-37.115,
--36.756,-36.486,-36.342,-36.208,-35.942,-35.550,-35.179,-34.914,-34.647,-34.206,-33.597,-33.022,-32.635,-32.362,-32.034,-31.635,
--31.320,-31.185,-31.133,-31.036,-30.963,-31.137,-31.696,-32.613,-33.875,-35.599,-37.819,-40.195,-42.099,-43.097,-43.305,-43.199,
--43.114,-43.026,-42.782,-42.411,-42.085,-41.848,-41.526,-40.933,-40.107,-39.249,-38.478,-37.712,-36.779,-35.602,-34.229,-32.732,
--31.147,-29.518,-27.954,-26.586,-25.467,-24.526,-23.657,-22.863,-22.303,-22.153,-22.401,-22.785,-22.965,-22.780,-22.317,-21.744,
--21.108,-20.328,-19.364,-18.315,-17.337,-16.483,-15.672,-14.801,-13.833,-12.784,-11.678,-10.548,-9.457,-8.462,-7.539,-6.607,
--5.615,-4.611,-3.670,-2.782,-1.849,-.785,.379,1.519,2.515,3.329,4.005,4.619,5.228,5.844,6.461,7.108,
-7.859,8.773,9.816,10.887,11.924,12.948,13.968,14.891,15.605,16.156,16.772,17.622,18.601,19.421,19.949,20.364,
-20.938,21.716,22.488,23.067,23.501,23.980,24.608,25.341,26.118,26.940,27.792,28.552,29.066,29.308,29.419,29.584,
-29.879,30.246,30.554,30.695,30.673,30.627,30.705,30.828,30.606,29.641,28.012,26.414,25.675,26.080,27.185,28.310,
-29.148,29.884,30.787,31.841,32.796,33.479,33.948,34.373,34.849,35.356,35.842,36.272,36.640,36.960,37.270,37.589,
-37.877,38.074,38.185,38.303,38.527,38.881,39.363,40.010,40.842,41.717,42.352,42.584,42.548,42.493,42.380,41.803,
-40.407,38.310,35.956,33.501,30.559,26.778,22.666,19.623,18.952,20.756,23.845,26.702,28.510,29.347,29.649,29.688,
-29.535,29.251,28.946,28.646,28.259,27.723,27.109,26.539,26.032,25.494,24.861,24.192,23.590,23.090,22.631,22.135,
-21.563,20.923,20.252,19.621,19.102,18.701,18.333,17.898,17.374,16.830,16.341,15.931,15.591,15.307,15.057,14.778,
-14.402,13.914,13.366,12.810,12.259,11.734,11.298,11.012,10.834,10.628,10.288,9.857,9.464,9.171,8.916,8.602,
-8.211,7.788,7.362,6.915,6.436,5.963,5.544,5.176,4.817,4.456,4.136,3.894,3.695,3.452,3.099,2.636,
-2.111,1.572,1.044,.535,.046,-.425,-.876,-1.298,-1.675,-1.992,-2.241,-2.434,-2.609,-2.815,-3.073,-3.357,
--3.627,-3.886,-4.197,-4.609,-5.089,-5.528,-5.846,-6.067,-6.290,-6.579,-6.902,-7.157,-7.261,-7.212,-7.090,-7.012,
--7.042,-7.152,-7.249,-7.276,-7.269,-7.302,-7.386,-7.444,-7.420,-7.364,-7.378,-7.480,-7.568,-7.557,-7.498,-7.529,
--7.693,-7.852,-7.820,-7.556,-7.213,-7.005,-7.038,-7.261,-7.520,-7.650,-7.556,-7.275,-6.977,-6.862,-7.008,-7.300,
--7.517,-7.515,-7.333,-7.155,-7.141,-7.277,-7.383,-7.290,-7.040,-6.902,-7.129,-7.677,-8.212,-8.424,-8.335,-8.240,
--8.359,-8.591,-8.666,-8.479,-8.203,-8.066,-8.095,-8.143,-8.103,-8.022,-7.986,-7.988,-7.959,-7.895,-7.867,-7.896,
--7.885,-7.715,-7.409,-7.139,-7.074,-7.227,-7.450,-7.570,-7.506,-7.313,-7.116,-7.019,-7.029,-7.062,-7.032,-6.936,
--6.841,-6.801,-6.799,-6.793,-6.787,-6.820,-6.902,-6.975,-6.984,-6.940,-6.911,-6.940,-7.006,-7.062,-7.095,-7.118,
--7.131,-7.114,-7.057,-6.995,-6.971,-6.997,-7.038,-7.057,-7.053,-7.067,-7.137,-7.256,-7.366,-7.413,-7.414,-7.459,
--7.605,-7.791,-7.867,-7.757,-7.569,-7.511,-7.691,-8.022,-8.330,-8.547,-8.741,-8.993,-9.285,-9.529,-9.690,-9.824,
--10.006,-10.244,-10.490,-10.706,-10.897,-11.082,-11.271,-11.466,-11.672,-11.892,-12.103,-12.273,-12.393,-12.488,-12.589,-12.704,
--12.813,-12.897,-12.952,-12.997,-13.049,-13.119,-13.204,-13.301,-13.397,-13.478,-13.529,-13.560,-13.614,-13.738,-13.946,-14.193,
--14.430,-14.649,-14.898,-15.211,-15.564,-15.908,-16.232,-16.577,-16.969,-17.367,-17.707,-17.985,-18.258,-18.574,-18.910,-19.215,
--19.478,-19.742,-20.046,-20.376,-20.696,-20.993,-21.274,-21.542,-21.789,-22.024,-22.273,-22.544,-22.821,-23.093,-23.386,-23.725,
--24.093,-24.437,-24.737,-25.034,-25.366,-25.714,-26.029,-26.307,-26.598,-26.930,-27.265,-27.550,-27.806,-28.096,-28.443,-28.787,
--29.065,-29.295,-29.542,-29.831,-30.120,-30.383,-30.658,-30.998,-31.392,-31.766,-32.064,-32.301,-32.522,-32.757,-33.020,-33.339,
--33.732,-34.166,-34.559,-34.855,-35.085,-35.329,-35.623,-35.940,-36.244,-36.540,-36.861,-37.215,-37.564,-37.867,-38.126,-38.379,
--38.657,-38.963,-39.274,-39.564,-39.821,-40.050,-40.267,-40.490,-40.726,-40.961,-41.175,-41.346,-41.468,-41.554,-41.630,-41.718,
--41.824,-41.944,-42.074,-42.211,-42.337,-42.428,-42.477,-42.513,-42.573,-42.659,-42.737,-42.791,-42.845,-42.916,-42.961,-42.913,
--42.773,-42.642,-42.624,-42.715,-42.819,-42.855,-42.829,-42.773,-42.678,-42.515,-42.314,-42.159,-42.097,-42.080,-42.035,-41.962,
--41.901,-41.837,-41.675,-41.357,-40.953,-40.595,-40.336,-40.125,-39.931,-39.804,-39.764,-39.639,-39.098,-37.932,-36.308,-34.754,
--33.853,-33.874,-34.617,-35.551,-36.154,-36.225,-35.940,-35.626,-35.444,-35.285,-34.945,-34.369,-33.698,-33.098,-32.607,-32.164,
--31.733,-31.327,-30.926,-30.453,-29.883,-29.325,-28.945,-28.770,-28.626,-28.295,-27.713,-27.007,-26.359,-25.883,-25.606,-25.512,
--25.545,-25.600,-25.563,-25.386,-25.107,-24.790,-24.482,-24.239,-24.138,-24.184,-24.209,-23.942,-23.270,-22.430,-21.881,-21.922,
--22.440,-23.042,-23.422,-23.580,-23.709,-23.942,-24.244,-24.495,-24.607,-24.541,-24.289,-23.898,-23.497,-23.232,-23.140,-23.119,
--23.053,-22.984,-23.105,-23.586,-24.411,-25.379,-26.246,-26.850,-27.161,-27.258,-27.298,-27.438,-27.732,-28.088,-28.354,-28.456,
--28.450,-28.442,-28.481,-28.542,-28.585,-28.595,-28.558,-28.461,-28.331,-28.256,-28.308,-28.450,-28.551,-28.526,-28.423,-28.366,
--28.399,-28.442,-28.399,-28.278,-28.186,-28.220,-28.393,-28.663,-28.979,-29.297,-29.554,-29.695,-29.704,-29.612,-29.451,-29.229,
--28.953,-28.673,-28.463,-28.369,-28.391,-28.507,-28.698,-28.924,-29.106,-29.162,-29.080,-28.933,-28.814,-28.761,-28.759,-28.800,
--28.910,-29.105,-29.336,-29.514,-29.587,-29.585,-29.592,-29.674,-29.853,-30.126,-30.493,-30.965,-31.537,-32.185,-32.871,-33.564,
--34.274,-35.060,-36.000,-37.093,-38.191,-39.067,-39.613,-39.990,-40.546,-41.522,-42.814,-44.044,-44.864,-45.206,-45.249,-45.190,
--45.102,-44.999,-44.954,-45.115,-45.582,-46.328,-47.235,-48.186,-49.097,-49.890,-50.496,-50.897,-51.156,-51.371,-51.591,-51.793,
--51.929,-51.973,-51.944,-51.875,-51.790,-51.684,-51.528,-51.287,-50.963,-50.596,-50.229,-49.853,-49.422,-48.909,-48.349,-47.801,
--47.287,-46.794,-46.324,-45.924,-45.642,-45.464,-45.321,-45.146,-44.914,-44.627,-44.283,-43.887,-43.468,-43.070,-42.703,-42.340,
--41.964,-41.606,-41.321,-41.125,-40.972,-40.796,-40.574,-40.346,-40.179,-40.109,-40.112,-40.119,-40.064,-39.924,-39.723,-39.488,
--39.218,-38.896,-38.531,-38.155,-37.794,-37.436,-37.059,-36.673,-36.308,-35.966,-35.602,-35.179,-34.722,-34.293,-33.902,-33.480,
--32.946,-32.297,-31.607,-30.952,-30.353,-29.784,-29.229,-28.681,-28.121,-27.504,-26.802,-26.036,-25.257,-24.495,-23.729,-22.918,
--22.041,-21.125,-20.208,-19.305,-18.401,-17.488,-16.584,-15.712,-14.860,-13.973,-13.017,-12.028,-11.087,-10.219,-9.356,-8.413,
--7.400,-6.414,-5.522,-4.677,-3.766,-2.746,-1.680,-.648,.334,1.300,2.254,3.170,4.053,4.960,5.929,6.919,
-7.858,8.744,9.656,10.640,11.635,12.537,13.325,14.070,14.823,15.531,16.099,16.518,16.890,17.328,17.855,18.421,
-18.979,19.522,20.052,20.560,21.033,21.485,21.929,22.360,22.757,23.129,23.514,23.936,24.375,24.781,25.132,25.450,
-25.768,26.091,26.406,26.706,27.003,27.300,27.582,27.841,28.101,28.410,28.783,29.163,29.473,29.710,29.961,30.305,
-30.685,30.948,31.020,31.016,31.105,31.267,31.287,31.056,30.827,31.028,31.747,32.493,32.602,31.925,31.023,30.618,
-30.897,31.420,31.666,31.548,31.353,31.293,31.281,31.134,30.852,30.597,30.453,30.342,30.180,30.034,30.036,30.205,
-30.438,30.665,30.948,31.367,31.871,32.315,32.640,32.939,33.324,33.755,34.081,34.240,34.349,34.572,34.920,35.242,
-35.408,35.459,35.546,35.760,36.047,36.306,36.505,36.674,36.834,36.988,37.196,37.597,38.282,39.144,39.907,40.358,
-40.533,40.673,40.999,41.539,42.157,42.710,43.146,43.514,43.897,44.333,44.760,45.015,44.943,44.509,43.804,42.935,
-41.957,40.975,40.271,40.219,40.988,42.362,43.910,45.340,46.629,47.847,48.959,49.890,50.702,51.542,52.385,52.939,
-52.945,52.510,52.048,51.831,51.708,51.333,50.605,49.773,49.105,48.586,47.998,47.260,46.537,46.031,45.727,45.414,
-44.924,44.266,43.552,42.860,42.205,41.606,41.117,40.772,40.516,40.224,39.785,39.195,38.556,37.997,37.563,36.608,
-36.130,35.584,34.947,34.269,33.596,32.896,32.108,31.268,30.528,30.014,29.690,29.397,29.016,28.567,28.131,27.740,
-27.367,27.005,26.703,26.507,26.407,26.354,26.315,26.282,26.251,26.213,26.170,26.143,26.158,26.238,26.397,26.630,
-26.878,27.055,27.118,27.118,27.160,27.307,27.556,27.881,28.276,28.713,29.125,29.457,29.746,30.075,30.446,30.749,
-30.913,31.034,31.299,31.736,32.127,32.202,31.894,31.369,30.825,30.338,29.911,29.580,29.401,29.352,29.323,29.229,
-29.092,28.988,28.936,28.879,28.768,28.616,28.454,28.281,28.063,27.775,27.413,27.007,26.621,26.341,26.202,26.119,
-25.927,25.519,24.943,24.348,23.849,23.470,23.184,22.969,22.795,22.627,22.463,22.352,22.331,22.350,22.301,22.142,
-21.934,21.745,21.555,21.313,21.064,20.929,20.939,20.927,20.673,20.129,19.453,18.829,18.309,17.861,17.487,17.241,
-17.119,17.034,16.894,16.682,16.432,16.175,15.948,15.817,15.793,15.763,15.591,15.329,15.233,15.470,15.866,16.073,
-16.031,16.102,16.632,17.438,17.917,17.727,17.204,16.980,17.250,17.614,17.669,17.575,17.847,18.646,19.477,19.687,
-19.147,18.311,17.655,17.214,16.710,15.981,15.133,14.333,13.618,12.975,12.488,12.241,12.113,11.800,11.120,10.214,
-9.376,8.698,8.001,7.126,6.186,5.453,5.026,4.717,4.276,3.653,2.977,2.341,1.710,1.027,.329,-.331,
--1.024,-1.927,-3.127,-4.502,-5.827,-6.990,-8.059,-9.164,-10.336,-11.483,-12.488,-13.295,-13.931,-14.459,-14.931,-15.368,
--15.779,-16.188,-16.622,-17.053,-17.367,-17.421,-17.149,-16.585,-15.755,-14.579,-12.952,-10.944,-8.887,-7.210,-6.174,-5.766,
--5.798,-6.040,-6.283,-6.378,-6.320,-6.282,-6.445,-6.758,-6.926,-6.707,-6.202,-5.778,-5.708,-5.937,-6.241,-6.509,
--6.778,-7.060,-7.294,-7.568,-8.265,-9.781,-12.018,-14.259,-15.675,-15.998,-15.660,-15.290,-15.155,-15.112,-15.014,-15.027,
--15.490,-16.542,-17.938,-19.251,-20.201,-20.804,-21.261,-21.731,-22.208,-22.560,-22.676,-22.597,-22.516,-22.637,-23.013,-23.522,
--24.010,-24.446,-24.926,-25.519,-26.152,-26.658,-26.920,-26.942,-26.805,-26.611,-26.486,-26.587,-27.035,-27.809,-28.756,-29.713,
--30.595,-31.339,-31.821,-31.969,-32.021,-32.615,-34.442,-37.674,-41.691,-45.416,-47.990,-49.224,-49.503,-49.348,-49.050,-48.649,
--48.122,-47.536,-47.032,-46.696,-46.480,-46.246,-45.914,-45.563,-45.383,-45.510,-45.902,-46.394,-46.865,-47.331,-47.860,-48.423,
--48.896,-49.188,-49.321,-49.316,-49.041,-48.265,-46.877,-44.992,-42.718,-39.902,-36.264,-31.959,-27.919,-25.399,-24.973,-25.943,
--26.875,-26.791,-25.868,-24.993,-24.746,-24.920,-24.961,-24.683,-24.426,-24.592,-25.200,-25.949,-26.567,-26.980,-27.192,-27.174,
--26.977,-26.857,-27.136,-27.884,-28.807,-29.512,-29.857,-30.017,-30.201,-30.399,-30.437,-30.241,-29.991,-29.986,-30.371,-31.033,
--31.726,-32.280,-32.691,-33.055,-33.439,-33.819,-34.116,-34.269,-34.308,-34.356,-34.550,-34.912,-35.296,-35.484,-35.369,-35.061,
--34.786,-34.692,-34.758,-34.879,-34.995,-35.125,-35.318,-35.623,-36.092,-36.739,-37.457,-38.016,-38.217,-38.056,-37.706,-37.323,
--36.947,-36.575,-36.269,-36.096,-35.990,-35.787,-35.430,-35.058,-34.817,-34.637,-34.299,-33.727,-33.099,-32.613,-32.252,-31.877,
--31.494,-31.273,-31.251,-31.199,-30.914,-30.609,-30.831,-31.931,-33.733,-35.782,-37.815,-39.825,-41.721,-43.135,-43.727,-43.594,
--43.217,-42.982,-42.874,-42.654,-42.248,-41.810,-41.461,-41.098,-40.534,-39.752,-38.918,-38.152,-37.361,-36.331,-34.957,-33.340,
--31.684,-30.130,-28.708,-27.408,-26.244,-25.240,-24.368,-23.550,-22.771,-22.170,-21.953,-22.173,-22.593,-22.838,-22.697,-22.245,
--21.674,-21.040,-20.241,-19.227,-18.130,-17.133,-16.272,-15.416,-14.448,-13.385,-12.307,-11.243,-10.173,-9.119,-8.150,-7.274,
--6.395,-5.421,-4.371,-3.347,-2.389,-1.418,-.340,.821,1.923,2.838,3.558,4.179,4.807,5.478,6.151,6.785,
-7.410,8.131,9.027,10.063,11.119,12.119,13.092,14.078,15.019,15.809,16.464,17.158,18.025,18.968,19.756,20.311,
-20.813,21.469,22.243,22.906,23.344,23.710,24.237,24.974,25.781,26.549,27.308,28.095,28.810,29.286,29.490,29.579,
-29.745,30.037,30.354,30.570,30.640,30.624,30.629,30.677,30.585,30.005,28.732,27.041,25.648,25.218,25.839,27.022,
-28.210,29.239,30.283,31.446,32.554,33.350,33.798,34.108,34.495,35.002,35.537,36.021,36.432,36.776,37.079,37.389,
-37.738,38.076,38.310,38.418,38.502,38.686,38.999,39.410,39.944,40.667,41.506,42.205,42.540,42.573,42.534,42.409,
-41.774,40.208,37.837,35.303,33.046,30.752,27.747,24.012,20.677,19.274,20.438,23.343,26.408,28.494,29.461,29.780,
-29.871,29.839,29.665,29.383,29.054,28.675,28.208,27.671,27.127,26.588,25.998,25.328,24.641,24.033,23.528,23.066,
-22.569,22.010,21.404,20.780,20.182,19.656,19.211,18.796,18.342,17.829,17.295,16.789,16.335,15.943,15.614,15.315,
-14.975,14.543,14.054,13.593,13.187,12.760,12.242,11.691,11.252,10.986,10.785,10.489,10.056,9.590,9.205,8.905,
-8.610,8.257,7.844,7.395,6.932,6.481,6.071,5.699,5.324,4.917,4.517,4.196,3.975,3.782,3.525,3.170,
-2.751,2.307,1.840,1.337,.811,.298,-.174,-.599,-.977,-1.309,-1.600,-1.866,-2.122,-2.371,-2.605,-2.820,
--3.023,-3.245,-3.529,-3.910,-4.374,-4.848,-5.246,-5.539,-5.772,-6.015,-6.289,-6.557,-6.758,-6.855,-6.850,-6.795,
--6.772,-6.842,-6.986,-7.107,-7.127,-7.082,-7.078,-7.164,-7.267,-7.286,-7.216,-7.145,-7.132,-7.140,-7.137,-7.185,
--7.375,-7.654,-7.796,-7.605,-7.131,-6.656,-6.447,-6.544,-6.791,-7.012,-7.142,-7.201,-7.216,-7.201,-7.182,-7.198,
--7.247,-7.269,-7.192,-7.022,-6.872,-6.861,-6.971,-7.013,-6.785,-6.315,-5.919,-5.958,-6.504,-7.261,-7.844,-8.114,
--8.221,-8.338,-8.455,-8.455,-8.329,-8.211,-8.205,-8.247,-8.207,-8.069,-7.944,-7.906,-7.891,-7.801,-7.652,-7.558,
--7.578,-7.634,-7.610,-7.480,-7.321,-7.218,-7.191,-7.203,-7.202,-7.130,-6.960,-6.728,-6.532,-6.443,-6.428,-6.395,
--6.298,-6.182,-6.113,-6.089,-6.064,-6.033,-6.051,-6.144,-6.261,-6.318,-6.301,-6.273,-6.300,-6.377,-6.450,-6.479,
--6.464,-6.426,-6.385,-6.354,-6.345,-6.357,-6.375,-6.385,-6.386,-6.388,-6.412,-6.487,-6.622,-6.782,-6.902,-6.957,
--7.008,-7.141,-7.337,-7.461,-7.399,-7.219,-7.135,-7.292,-7.624,-7.944,-8.156,-8.325,-8.546,-8.813,-9.036,-9.178,
--9.305,-9.500,-9.764,-10.036,-10.274,-10.494,-10.726,-10.961,-11.169,-11.351,-11.539,-11.753,-11.976,-12.162,-12.287,-12.368,
--12.444,-12.537,-12.634,-12.704,-12.736,-12.759,-12.814,-12.924,-13.068,-13.207,-13.315,-13.391,-13.453,-13.534,-13.667,-13.868,
--14.113,-14.360,-14.600,-14.860,-15.170,-15.509,-15.829,-16.116,-16.407,-16.725,-17.030,-17.261,-17.423,-17.603,-17.866,-18.186,
--18.476,-18.695,-18.886,-19.111,-19.386,-19.690,-20.013,-20.362,-20.732,-21.098,-21.444,-21.784,-22.127,-22.462,-22.775,-23.087,
--23.430,-23.796,-24.137,-24.432,-24.717,-25.041,-25.396,-25.735,-26.041,-26.350,-26.688,-27.024,-27.317,-27.586,-27.895,-28.265,
--28.640,-28.954,-29.219,-29.490,-29.788,-30.078,-30.336,-30.597,-30.914,-31.284,-31.645,-31.953,-32.211,-32.452,-32.698,-32.975,
--33.315,-33.722,-34.137,-34.476,-34.716,-34.928,-35.199,-35.539,-35.889,-36.200,-36.492,-36.804,-37.136,-37.449,-37.724,-37.991,
--38.287,-38.615,-38.946,-39.255,-39.545,-39.829,-40.111,-40.379,-40.622,-40.843,-41.054,-41.263,-41.459,-41.624,-41.750,-41.851,
--41.949,-42.054,-42.160,-42.262,-42.363,-42.468,-42.570,-42.668,-42.775,-42.902,-43.022,-43.087,-43.094,-43.100,-43.158,-43.232,
--43.230,-43.114,-42.972,-42.923,-42.993,-43.090,-43.122,-43.078,-43.002,-42.911,-42.789,-42.647,-42.527,-42.446,-42.364,-42.247,
--42.124,-42.045,-41.984,-41.845,-41.570,-41.225,-40.919,-40.687,-40.481,-40.279,-40.139,-40.094,-40.022,-39.659,-38.787,-37.432,
--35.912,-34.716,-34.257,-34.619,-35.464,-36.225,-36.486,-36.261,-35.885,-35.635,-35.474,-35.167,-34.590,-33.861,-33.192,-32.672,
--32.259,-31.894,-31.551,-31.190,-30.737,-30.190,-29.675,-29.341,-29.173,-28.967,-28.514,-27.793,-26.968,-26.238,-25.715,-25.434,
--25.375,-25.449,-25.510,-25.437,-25.234,-24.992,-24.763,-24.519,-24.255,-24.071,-24.068,-24.151,-24.030,-23.493,-22.675,-22.001,
--21.814,-22.098,-22.553,-22.924,-23.194,-23.476,-23.816,-24.139,-24.356,-24.439,-24.394,-24.203,-23.874,-23.497,-23.205,-23.052,
--22.965,-22.865,-22.816,-23.010,-23.587,-24.489,-25.485,-26.331,-26.899,-27.202,-27.350,-27.493,-27.739,-28.084,-28.412,-28.597,
--28.618,-28.569,-28.546,-28.563,-28.578,-28.571,-28.565,-28.569,-28.548,-28.481,-28.412,-28.406,-28.457,-28.484,-28.424,-28.313,
--28.239,-28.227,-28.210,-28.118,-27.966,-27.837,-27.796,-27.857,-28.009,-28.243,-28.533,-28.811,-28.994,-29.042,-28.981,-28.855,
--28.693,-28.513,-28.339,-28.210,-28.151,-28.179,-28.305,-28.523,-28.775,-28.958,-28.991,-28.884,-28.734,-28.645,-28.646,-28.704,
--28.792,-28.913,-29.077,-29.250,-29.380,-29.443,-29.473,-29.531,-29.644,-29.800,-29.986,-30.228,-30.586,-31.103,-31.772,-32.537,
--33.345,-34.172,-35.039,-35.972,-36.953,-37.888,-38.647,-39.165,-39.549,-40.058,-40.935,-42.213,-43.657,-44.911,-45.723,-46.053,
--46.029,-45.829,-45.614,-45.512,-45.603,-45.899,-46.361,-46.954,-47.672,-48.493,-49.334,-50.067,-50.610,-50.983,-51.269,-51.534,
--51.780,-51.972,-52.071,-52.064,-51.966,-51.827,-51.695,-51.579,-51.429,-51.189,-50.857,-50.479,-50.085,-49.652,-49.141,-48.564,
--47.980,-47.444,-46.970,-46.551,-46.190,-45.897,-45.662,-45.461,-45.274,-45.093,-44.892,-44.630,-44.282,-43.876,-43.456,-43.046,
--42.646,-42.276,-41.986,-41.803,-41.686,-41.551,-41.359,-41.139,-40.949,-40.814,-40.723,-40.657,-40.604,-40.538,-40.423,-40.235,
--39.985,-39.697,-39.384,-39.050,-38.700,-38.340,-37.964,-37.560,-37.140,-36.736,-36.365,-35.999,-35.597,-35.158,-34.722,-34.313,
--33.892,-33.386,-32.771,-32.093,-31.428,-30.811,-30.234,-29.670,-29.101,-28.514,-27.885,-27.197,-26.462,-25.712,-24.970,-24.220,
--23.416,-22.532,-21.588,-20.643,-19.740,-18.868,-17.991,-17.093,-16.195,-15.313,-14.422,-13.482,-12.502,-11.546,-10.658,-9.800,
--8.893,-7.913,-6.921,-5.980,-5.074,-4.132,-3.126,-2.102,-1.112,-.154,.804,1.760,2.680,3.575,4.507,5.511,
-6.532,7.477,8.337,9.198,10.127,11.077,11.944,12.689,13.371,14.046,14.682,15.209,15.628,16.033,16.514,17.074,
-17.646,18.182,18.690,19.195,19.700,20.187,20.649,21.095,21.526,21.937,22.333,22.728,23.133,23.534,23.912,24.264,
-24.603,24.941,25.274,25.596,25.914,26.236,26.558,26.859,27.128,27.399,27.731,28.143,28.572,28.912,29.137,29.338,
-29.634,30.009,30.306,30.408,30.394,30.452,30.621,30.724,30.645,30.634,31.144,32.290,33.512,33.962,33.288,31.990,
-30.943,30.621,30.819,31.064,31.129,31.102,31.083,31.014,30.814,30.552,30.370,30.292,30.212,30.069,29.948,29.961,
-30.094,30.251,30.418,30.692,31.126,31.616,32.010,32.292,32.596,33.008,33.439,33.734,33.875,34.010,34.258,34.564,
-34.768,34.815,34.834,34.990,35.306,35.662,35.944,36.144,36.311,36.453,36.568,36.753,37.198,38.002,38.990,39.795,
-40.165,40.195,40.223,40.504,40.990,41.441,41.711,41.900,42.261,42.956,43.887,44.715,45.069,44.778,43.976,42.961,
-41.955,41.010,40.173,39.667,39.813,40.699,42.017,43.302,44.345,45.311,46.436,47.712,48.925,49.914,50.679,51.215,
-51.399,51.159,50.686,50.326,50.219,50.146,49.811,49.208,48.609,48.196,47.830,47.247,46.412,45.574,44.973,44.594,
-44.230,43.725,43.089,42.405,41.719,41.044,40.423,39.920,39.559,39.286,39.007,38.641,38.166,37.626,37.094,36.608,
-35.389,34.718,34.019,33.275,32.533,31.864,31.270,30.696,30.134,29.674,29.394,29.232,29.022,28.667,28.225,27.812,
-27.461,27.130,26.808,26.562,26.463,26.481,26.513,26.476,26.381,26.297,26.280,26.333,26.407,26.449,26.452,26.461,
-26.524,26.620,26.682,26.689,26.717,26.867,27.147,27.466,27.749,28.018,28.328,28.674,29.004,29.314,29.651,30.009,
-30.290,30.437,30.559,30.837,31.289,31.684,31.759,31.483,31.063,30.694,30.395,30.097,29.809,29.623,29.579,29.586,
-29.526,29.372,29.182,29.012,28.869,28.745,28.638,28.527,28.358,28.092,27.740,27.344,26.941,26.560,26.242,26.015,
-25.833,25.579,25.164,24.614,24.049,23.575,23.231,22.995,22.826,22.674,22.512,22.370,22.319,22.381,22.467,22.445,
-22.278,22.045,21.811,21.550,21.221,20.898,20.715,20.675,20.579,20.204,19.542,18.796,18.165,17.688,17.306,17.007,
-16.834,16.780,16.770,16.731,16.653,16.547,16.416,16.285,16.214,16.200,16.113,15.837,15.500,15.428,15.768,16.221,
-16.305,15.946,15.654,15.988,16.883,17.655,17.707,17.130,16.521,16.331,16.522,16.861,17.320,18.015,18.845,19.389,
-19.290,18.640,17.879,17.336,16.960,16.506,15.863,15.125,14.395,13.667,12.931,12.282,11.824,11.498,11.098,10.499,
-9.797,9.162,8.601,7.951,7.119,6.247,5.576,5.172,4.860,4.427,3.826,3.157,2.491,1.808,1.085,.362,
--.320,-1.028,-1.897,-2.982,-4.183,-5.347,-6.413,-7.439,-8.492,-9.576,-10.638,-11.633,-12.531,-13.310,-13.964,-14.528,
--15.071,-15.643,-16.243,-16.833,-17.356,-17.753,-17.964,-17.946,-17.681,-17.133,-16.230,-14.906,-13.200,-11.286,-9.432,-7.915,
--6.978,-6.755,-7.149,-7.779,-8.173,-8.122,-7.840,-7.697,-7.788,-7.836,-7.548,-6.979,-6.458,-6.190,-6.072,-5.938,
--5.862,-6.049,-6.477,-6.849,-7.028,-7.409,-8.635,-10.860,-13.407,-15.277,-16.009,-15.967,-15.810,-15.812,-15.759,-15.439,
--15.055,-15.096,-15.853,-17.153,-18.535,-19.639,-20.402,-20.979,-21.522,-22.050,-22.459,-22.634,-22.579,-22.470,-22.569,-23.038,
--23.818,-24.701,-25.521,-26.264,-26.990,-27.672,-28.147,-28.235,-27.914,-27.395,-27.039,-27.203,-28.073,-29.548,-31.251,-32.709,
--33.607,-33.914,-33.799,-33.449,-33.051,-32.932,-33.617,-35.579,-38.805,-42.622,-46.029,-48.293,-49.334,-49.578,-49.513,-49.357,
--49.078,-48.628,-48.088,-47.613,-47.274,-46.998,-46.659,-46.226,-45.822,-45.626,-45.729,-46.064,-46.482,-46.892,-47.320,-47.831,
--48.413,-48.972,-49.432,-49.823,-50.196,-50.463,-50.368,-49.668,-48.350,-46.589,-44.515,-42.098,-39.381,-36.785,-34.999,-34.392,
--34.529,-34.414,-33.315,-31.371,-29.347,-27.855,-26.892,-26.106,-25.351,-24.826,-24.749,-25.064,-25.539,-26.040,-26.570,-27.071,
--27.358,-27.327,-27.171,-27.255,-27.751,-28.477,-29.111,-29.507,-29.748,-29.928,-30.001,-29.876,-29.613,-29.441,-29.569,-30.026,
--30.672,-31.348,-31.966,-32.492,-32.911,-33.235,-33.517,-33.804,-34.079,-34.288,-34.436,-34.619,-34.914,-35.246,-35.404,-35.238,
--34.820,-34.381,-34.119,-34.078,-34.209,-34.447,-34.715,-34.924,-35.086,-35.406,-36.142,-37.296,-38.469,-39.147,-39.128,-38.633,
--38.006,-37.406,-36.835,-36.352,-36.075,-35.986,-35.870,-35.558,-35.142,-34.836,-34.661,-34.398,-33.885,-33.227,-32.627,-32.127,
--31.653,-31.259,-31.119,-31.197,-31.127,-30.662,-30.184,-30.539,-32.222,-34.826,-37.433,-39.465,-41.015,-42.364,-43.440,-43.909,
--43.693,-43.165,-42.767,-42.572,-42.342,-41.916,-41.397,-40.956,-40.583,-40.113,-39.454,-38.666,-37.827,-36.876,-35.667,-34.149,
--32.462,-30.851,-29.480,-28.342,-27.322,-26.337,-25.387,-24.506,-23.688,-22.923,-22.306,-22.020,-22.146,-22.496,-22.712,-22.564,
--22.107,-21.529,-20.884,-20.065,-19.020,-17.885,-16.843,-15.905,-14.930,-13.835,-12.712,-11.688,-10.758,-9.819,-8.844,-7.912,
--7.067,-6.218,-5.239,-4.141,-3.048,-2.037,-1.040,.035,1.158,2.180,2.990,3.620,4.206,4.854,5.575,6.313,
-7.023,7.728,8.502,9.391,10.356,11.300,12.187,13.083,14.063,15.078,15.997,16.768,17.497,18.311,19.180,19.960,
-20.599,21.217,21.928,22.653,23.207,23.565,23.937,24.540,25.363,26.213,26.969,27.677,28.390,29.016,29.411,29.574,
-29.680,29.886,30.180,30.433,30.562,30.602,30.617,30.592,30.395,29.821,28.730,27.219,25.716,24.795,24.802,25.611,
-26.786,27.995,29.226,30.586,31.990,33.145,33.839,34.163,34.399,34.739,35.172,35.608,36.017,36.418,36.806,37.160,
-37.491,37.835,38.170,38.423,38.564,38.671,38.849,39.123,39.470,39.926,40.576,41.380,42.094,42.474,42.540,42.498,
-42.338,41.622,39.883,37.257,34.539,32.412,30.661,28.367,25.043,21.512,19.458,20.002,22.705,25.972,28.364,29.499,
-29.865,30.030,30.167,30.165,29.962,29.630,29.242,28.797,28.272,27.683,27.064,26.427,25.778,25.150,24.574,24.028,
-23.454,22.834,22.217,21.662,21.181,20.734,20.284,19.817,19.332,18.826,18.308,17.794,17.296,16.816,16.363,15.947,
-15.546,15.116,14.656,14.253,13.995,13.836,13.576,13.052,12.329,11.657,11.230,10.999,10.753,10.350,9.831,9.328,
-8.923,8.592,8.274,7.925,7.535,7.121,6.720,6.349,5.975,5.543,5.053,4.591,4.257,4.052,3.873,3.621,
-3.289,2.928,2.554,2.132,1.641,1.118,.628,.195,-.194,-.551,-.867,-1.141,-1.407,-1.701,-2.016,-2.302,
--2.523,-2.707,-2.928,-3.254,-3.688,-4.161,-4.582,-4.911,-5.182,-5.463,-5.769,-6.043,-6.222,-6.307,-6.350,-6.395,
--6.449,-6.522,-6.638,-6.803,-6.948,-6.989,-6.920,-6.840,-6.843,-6.922,-6.989,-6.990,-6.951,-6.916,-6.904,-6.936,
--7.074,-7.331,-7.570,-7.552,-7.168,-6.601,-6.198,-6.161,-6.389,-6.625,-6.730,-6.767,-6.857,-7.007,-7.116,-7.113,
--7.040,-6.985,-6.981,-6.973,-6.917,-6.856,-6.880,-6.979,-6.973,-6.638,-5.958,-5.241,-4.933,-5.258,-6.041,-6.888,
--7.504,-7.852,-8.034,-8.123,-8.148,-8.160,-8.222,-8.312,-8.315,-8.160,-7.933,-7.788,-7.771,-7.761,-7.636,-7.418,
--7.250,-7.232,-7.339,-7.463,-7.500,-7.377,-7.081,-6.701,-6.412,-6.341,-6.427,-6.467,-6.323,-6.055,-5.832,-5.727,
--5.673,-5.582,-5.463,-5.382,-5.348,-5.315,-5.268,-5.261,-5.337,-5.452,-5.519,-5.516,-5.507,-5.560,-5.667,-5.756,
--5.767,-5.699,-5.600,-5.532,-5.534,-5.596,-5.666,-5.697,-5.694,-5.702,-5.752,-5.845,-5.973,-6.141,-6.326,-6.454,
--6.464,-6.407,-6.425,-6.593,-6.811,-6.911,-6.857,-6.809,-6.938,-7.238,-7.554,-7.772,-7.932,-8.126,-8.363,-8.567,
--8.706,-8.840,-9.047,-9.318,-9.586,-9.815,-10.037,-10.293,-10.566,-10.805,-10.992,-11.164,-11.371,-11.615,-11.847,-12.017,
--12.115,-12.183,-12.266,-12.369,-12.456,-12.500,-12.523,-12.581,-12.706,-12.875,-13.041,-13.180,-13.306,-13.439,-13.586,-13.755,
--13.954,-14.181,-14.410,-14.627,-14.846,-15.095,-15.366,-15.620,-15.841,-16.059,-16.298,-16.522,-16.674,-16.762,-16.879,-17.109,
--17.432,-17.750,-18.003,-18.220,-18.459,-18.738,-19.041,-19.375,-19.765,-20.206,-20.653,-21.069,-21.460,-21.849,-22.229,-22.571,
--22.878,-23.188,-23.518,-23.843,-24.134,-24.411,-24.722,-25.079,-25.449,-25.800,-26.143,-26.493,-26.833,-27.136,-27.421,-27.741,
--28.113,-28.494,-28.833,-29.132,-29.432,-29.745,-30.041,-30.303,-30.560,-30.850,-31.171,-31.491,-31.793,-32.085,-32.376,-32.663,
--32.960,-33.295,-33.672,-34.032,-34.312,-34.530,-34.777,-35.119,-35.520,-35.888,-36.181,-36.440,-36.717,-37.014,-37.301,-37.584,
--37.897,-38.258,-38.633,-38.976,-39.275,-39.561,-39.860,-40.170,-40.465,-40.724,-40.943,-41.141,-41.341,-41.552,-41.759,-41.938,
--42.081,-42.194,-42.287,-42.361,-42.427,-42.508,-42.619,-42.755,-42.895,-43.036,-43.188,-43.330,-43.416,-43.423,-43.397,-43.409,
--43.462,-43.478,-43.405,-43.290,-43.240,-43.292,-43.371,-43.379,-43.296,-43.174,-43.065,-42.978,-42.906,-42.835,-42.741,-42.595,
--42.404,-42.229,-42.117,-42.036,-41.901,-41.683,-41.438,-41.227,-41.034,-40.804,-40.544,-40.334,-40.227,-40.151,-39.928,-39.374,
--38.398,-37.079,-35.719,-34.780,-34.618,-35.187,-36.004,-36.515,-36.520,-36.235,-35.963,-35.755,-35.438,-34.885,-34.177,-33.490,
--32.916,-32.447,-32.068,-31.772,-31.498,-31.133,-30.646,-30.159,-29.825,-29.626,-29.350,-28.786,-27.914,-26.911,-26.004,-25.361,
--25.061,-25.069,-25.219,-25.283,-25.147,-24.902,-24.721,-24.646,-24.540,-24.296,-24.017,-23.912,-24.008,-24.050,-23.751,-23.120,
--22.479,-22.155,-22.201,-22.435,-22.693,-22.966,-23.304,-23.675,-23.968,-24.117,-24.146,-24.093,-23.947,-23.697,-23.414,-23.213,
--23.141,-23.134,-23.132,-23.211,-23.544,-24.222,-25.135,-26.036,-26.719,-27.130,-27.350,-27.511,-27.726,-28.035,-28.380,-28.640,
--28.729,-28.671,-28.579,-28.539,-28.543,-28.540,-28.518,-28.505,-28.501,-28.455,-28.329,-28.158,-28.025,-27.964,-27.936,-27.889,
--27.818,-27.751,-27.692,-27.614,-27.507,-27.396,-27.316,-27.271,-27.256,-27.293,-27.421,-27.628,-27.842,-27.975,-28.004,-27.971,
--27.934,-27.910,-27.887,-27.845,-27.782,-27.722,-27.720,-27.843,-28.102,-28.416,-28.641,-28.683,-28.572,-28.441,-28.406,-28.490,
--28.637,-28.786,-28.913,-29.023,-29.114,-29.175,-29.220,-29.289,-29.424,-29.615,-29.810,-29.968,-30.124,-30.390,-30.864,-31.559,
--32.390,-33.255,-34.104,-34.946,-35.801,-36.668,-37.506,-38.242,-38.804,-39.198,-39.584,-40.241,-41.382,-42.948,-44.586,-45.846,
--46.466,-46.497,-46.216,-45.928,-45.821,-45.924,-46.166,-46.469,-46.822,-47.285,-47.913,-48.673,-49.453,-50.142,-50.696,-51.134,
--51.485,-51.757,-51.956,-52.084,-52.131,-52.081,-51.954,-51.805,-51.679,-51.555,-51.361,-51.055,-50.664,-50.240,-49.794,-49.297,
--48.738,-48.160,-47.624,-47.168,-46.792,-46.479,-46.207,-45.952,-45.704,-45.472,-45.271,-45.078,-44.846,-44.546,-44.198,-43.842,
--43.489,-43.131,-42.789,-42.518,-42.338,-42.206,-42.054,-41.872,-41.707,-41.588,-41.484,-41.354,-41.213,-41.108,-41.046,-40.963,
--40.795,-40.537,-40.236,-39.920,-39.582,-39.211,-38.821,-38.433,-38.043,-37.639,-37.230,-36.837,-36.460,-36.068,-35.636,-35.176,
--34.719,-34.263,-33.766,-33.194,-32.558,-31.909,-31.288,-30.701,-30.126,-29.537,-28.924,-28.277,-27.592,-26.867,-26.114,-25.352,
--24.581,-23.775,-22.903,-21.973,-21.042,-20.165,-19.342,-18.516,-17.633,-16.705,-15.779,-14.871,-13.944,-12.972,-11.989,-11.057,
--10.187,-9.317,-8.391,-7.414,-6.433,-5.470,-4.503,-3.515,-2.524,-1.555,-.602,.346,1.281,2.185,3.092,4.067,
-5.132,6.206,7.179,8.031,8.848,9.710,10.586,11.374,12.025,12.591,13.148,13.706,14.226,14.701,15.184,15.722,
-16.299,16.854,17.354,17.820,18.289,18.776,19.264,19.739,20.196,20.640,21.069,21.483,21.882,22.270,22.649,23.026,
-23.403,23.780,24.146,24.494,24.831,25.172,25.526,25.888,26.240,26.567,26.882,27.223,27.620,28.051,28.437,28.718,
-28.932,29.175,29.478,29.748,29.877,29.898,29.949,30.083,30.194,30.240,30.495,31.388,32.966,34.565,35.197,34.397,
-32.657,31.001,30.145,30.077,30.350,30.593,30.708,30.709,30.592,30.383,30.192,30.112,30.096,30.024,29.880,29.779,
-29.816,29.946,30.080,30.232,30.501,30.910,31.340,31.677,31.952,32.287,32.710,33.103,33.359,33.515,33.694,33.936,
-34.150,34.261,34.333,34.500,34.798,35.110,35.303,35.388,35.500,35.731,36.040,36.342,36.659,37.117,37.768,38.458,
-38.927,39.064,39.039,39.145,39.500,39.952,40.265,40.406,40.616,41.198,42.240,43.487,44.465,44.761,44.266,43.224,
-42.043,41.026,40.259,39.762,39.657,40.122,41.130,42.353,43.405,44.206,45.014,46.071,47.290,48.335,48.969,49.224,
-49.234,49.049,48.684,48.268,47.999,47.918,47.843,47.605,47.269,47.042,46.955,46.774,46.259,45.457,44.658,44.073,
-43.658,43.226,42.674,42.034,41.367,40.697,40.046,39.459,38.972,38.568,38.208,37.871,37.537,37.153,36.657,36.050,
-35.389,34.076,33.230,32.420,31.622,30.866,30.239,29.781,29.443,29.174,28.997,28.937,28.913,28.777,28.466,28.069,
-27.710,27.405,27.093,26.778,26.565,26.542,26.656,26.751,26.712,26.570,26.444,26.437,26.549,26.692,26.757,26.704,
-26.587,26.494,26.458,26.447,26.450,26.542,26.804,27.196,27.564,27.795,27.938,28.121,28.401,28.726,29.043,29.360,
-29.682,29.952,30.126,30.284,30.567,30.978,31.320,31.378,31.158,30.864,30.662,30.524,30.339,30.093,29.893,29.814,
-29.805,29.755,29.612,29.398,29.162,28.946,28.791,28.714,28.660,28.520,28.220,27.785,27.304,26.845,26.430,26.070,
-25.776,25.527,25.250,24.883,24.430,23.955,23.524,23.175,22.922,22.762,22.659,22.572,22.508,22.511,22.576,22.604,
-22.477,22.195,21.868,21.578,21.289,20.942,20.585,20.328,20.162,19.905,19.384,18.638,17.886,17.302,16.897,16.603,
-16.406,16.332,16.362,16.428,16.494,16.568,16.631,16.618,16.502,16.345,16.192,15.983,15.662,15.384,15.459,15.968,
-16.506,16.510,15.892,15.262,15.374,16.337,17.451,17.854,17.265,16.140,15.207,14.959,15.492,16.609,17.919,18.939,
-19.303,18.985,18.304,17.644,17.147,16.707,16.188,15.593,14.993,14.382,13.676,12.861,12.058,11.397,10.880,10.394,
-9.866,9.340,8.879,8.429,7.863,7.134,6.368,5.748,5.332,5.007,4.619,4.095,3.458,2.746,1.983,1.207,
-.466,-.233,-.963,-1.805,-2.766,-3.772,-4.760,-5.746,-6.771,-7.829,-8.865,-9.848,-10.799,-11.732,-12.611,-13.386,
--14.076,-14.764,-15.513,-16.295,-17.018,-17.618,-18.089,-18.446,-18.677,-18.723,-18.495,-17.909,-16.913,-15.507,-13.751,-11.792,
--9.909,-8.510,-7.959,-8.283,-9.046,-9.608,-9.626,-9.284,-9.000,-8.925,-8.821,-8.430,-7.835,-7.337,-7.036,-6.710,
--6.172,-5.614,-5.415,-5.643,-5.947,-6.064,-6.321,-7.413,-9.605,-12.289,-14.451,-15.560,-15.919,-16.147,-16.457,-16.548,
--16.128,-15.403,-14.972,-15.304,-16.365,-17.729,-18.959,-19.870,-20.520,-21.047,-21.530,-21.938,-22.179,-22.218,-22.182,-22.346,
--22.963,-24.061,-25.407,-26.693,-27.755,-28.606,-29.267,-29.619,-29.467,-28.790,-27.927,-27.499,-28.075,-29.822,-32.366,-34.965,
--36.872,-37.673,-37.406,-36.431,-35.215,-34.225,-33.932,-34.775,-36.966,-40.242,-43.847,-46.882,-48.797,-49.633,-49.834,-49.813,
--49.698,-49.415,-48.938,-48.405,-47.984,-47.702,-47.432,-47.048,-46.576,-46.174,-45.991,-46.061,-46.311,-46.645,-47.014,-47.429,
--47.921,-48.486,-49.057,-49.561,-50.005,-50.485,-51.044,-51.524,-51.617,-51.139,-50.218,-49.166,-48.153,-47.096,-45.905,-44.738,
--43.854,-43.185,-42.194,-40.310,-37.496,-34.328,-31.495,-29.300,-27.646,-26.380,-25.489,-24.988,-24.796,-24.831,-25.143,-25.809,
--26.695,-27.439,-27.769,-27.771,-27.786,-28.050,-28.508,-28.970,-29.341,-29.639,-29.852,-29.903,-29.786,-29.658,-29.718,-30.027,
--30.488,-31.001,-31.567,-32.197,-32.792,-33.191,-33.356,-33.455,-33.696,-34.091,-34.457,-34.635,-34.677,-34.752,-34.903,-34.967,
--34.773,-34.348,-33.888,-33.562,-33.408,-33.414,-33.575,-33.822,-33.995,-34.041,-34.255,-35.137,-36.862,-38.929,-40.463,-40.921,
--40.451,-39.567,-38.630,-37.730,-36.934,-36.404,-36.184,-36.050,-35.732,-35.231,-34.784,-34.520,-34.291,-33.901,-33.355,-32.773,
--32.181,-31.554,-31.031,-30.851,-30.960,-30.908,-30.401,-29.914,-30.463,-32.587,-35.669,-38.462,-40.250,-41.317,-42.305,-43.336,
--43.964,-43.855,-43.244,-42.644,-42.287,-42.001,-41.566,-41.011,-40.520,-40.152,-39.768,-39.193,-38.369,-37.335,-36.129,-34.759,
--33.258,-31.738,-30.358,-29.223,-28.310,-27.481,-26.605,-25.664,-24.732,-23.873,-23.110,-22.499,-22.168,-22.188,-22.413,-22.530,
--22.317,-21.823,-21.227,-20.582,-19.778,-18.752,-17.621,-16.547,-15.527,-14.427,-13.216,-12.051,-11.092,-10.297,-9.493,-8.606,
--7.716,-6.889,-6.041,-5.048,-3.926,-2.816,-1.801,-.806,.267,1.376,2.369,3.150,3.774,4.365,5.003,5.695,
-6.429,7.204,8.026,8.894,9.786,10.666,11.500,12.309,13.180,14.180,15.255,16.251,17.070,17.775,18.508,19.313,
-20.111,20.832,21.514,22.209,22.865,23.380,23.775,24.230,24.898,25.738,26.584,27.337,28.023,28.659,29.155,29.428,
-29.552,29.710,29.995,30.305,30.486,30.508,30.461,30.384,30.148,29.532,28.415,26.917,25.399,24.327,24.032,24.527,
-25.531,26.717,27.961,29.337,30.864,32.345,33.485,34.164,34.526,34.792,35.063,35.317,35.557,35.857,36.271,36.742,
-37.166,37.509,37.815,38.118,38.390,38.601,38.781,38.991,39.259,39.591,40.040,40.668,41.416,42.057,42.381,42.421,
-42.373,42.214,41.499,39.731,37.028,34.259,32.289,31.027,29.407,26.533,22.864,20.126,19.886,22.177,25.525,28.237,
-29.622,30.076,30.286,30.532,30.689,30.611,30.328,29.937,29.454,28.848,28.141,27.409,26.714,26.076,25.491,24.942,
-24.379,23.747,23.056,22.400,21.883,21.518,21.211,20.854,20.402,19.883,19.349,18.834,18.343,17.860,17.373,16.881,
-16.391,15.895,15.391,14.936,14.648,14.581,14.602,14.419,13.826,12.915,12.021,11.431,11.154,10.968,10.658,10.177,
-9.612,9.073,8.622,8.271,7.992,7.731,7.445,7.118,6.750,6.313,5.779,5.189,4.669,4.327,4.141,3.983,
-3.753,3.458,3.152,2.829,2.434,1.958,1.474,1.059,.713,.378,.028,-.306,-.596,-.870,-1.178,-1.521,
--1.848,-2.119,-2.358,-2.636,-3.001,-3.431,-3.848,-4.181,-4.434,-4.687,-5.015,-5.394,-5.704,-5.850,-5.863,-5.872,
--5.967,-6.127,-6.282,-6.413,-6.555,-6.707,-6.802,-6.782,-6.681,-6.599,-6.595,-6.648,-6.705,-6.737,-6.754,-6.780,
--6.863,-7.039,-7.262,-7.362,-7.160,-6.680,-6.194,-6.015,-6.196,-6.490,-6.614,-6.522,-6.402,-6.433,-6.596,-6.734,
--6.748,-6.689,-6.671,-6.734,-6.816,-6.852,-6.857,-6.911,-7.023,-7.046,-6.752,-6.062,-5.211,-4.641,-4.677,-5.282,
--6.110,-6.807,-7.237,-7.470,-7.623,-7.761,-7.901,-8.030,-8.098,-8.045,-7.877,-7.698,-7.621,-7.641,-7.638,-7.509,
--7.276,-7.061,-6.975,-7.043,-7.191,-7.252,-7.020,-6.418,-5.647,-5.114,-5.104,-5.496,-5.862,-5.869,-5.557,-5.214,
--5.040,-4.993,-4.937,-4.838,-4.756,-4.718,-4.679,-4.610,-4.557,-4.570,-4.625,-4.654,-4.640,-4.644,-4.723,-4.860,
--4.977,-5.011,-4.950,-4.836,-4.739,-4.723,-4.798,-4.904,-4.976,-5.010,-5.061,-5.167,-5.311,-5.467,-5.644,-5.836,
--5.965,-5.930,-5.760,-5.643,-5.750,-6.044,-6.308,-6.399,-6.396,-6.487,-6.742,-7.057,-7.312,-7.506,-7.710,-7.941,
--8.147,-8.299,-8.446,-8.653,-8.912,-9.161,-9.369,-9.573,-9.821,-10.107,-10.383,-10.612,-10.807,-11.007,-11.231,-11.459,
--11.649,-11.776,-11.860,-11.948,-12.065,-12.189,-12.287,-12.363,-12.463,-12.615,-12.799,-12.971,-13.120,-13.271,-13.442,-13.620,
--13.787,-13.951,-14.129,-14.313,-14.483,-14.646,-14.831,-15.050,-15.272,-15.472,-15.663,-15.869,-16.069,-16.215,-16.307,-16.422,
--16.641,-16.957,-17.293,-17.600,-17.896,-18.208,-18.521,-18.810,-19.101,-19.453,-19.881,-20.328,-20.736,-21.116,-21.511,-21.918,
--22.288,-22.598,-22.888,-23.205,-23.545,-23.870,-24.174,-24.495,-24.864,-25.260,-25.645,-26.005,-26.352,-26.687,-27.004,-27.309,
--27.628,-27.970,-28.315,-28.639,-28.950,-29.270,-29.598,-29.914,-30.206,-30.488,-30.772,-31.050,-31.322,-31.612,-31.942,-32.292,
--32.621,-32.921,-33.227,-33.555,-33.868,-34.129,-34.373,-34.683,-35.085,-35.506,-35.852,-36.106,-36.334,-36.590,-36.870,-37.157,
--37.472,-37.845,-38.262,-38.663,-39.008,-39.309,-39.604,-39.904,-40.197,-40.473,-40.733,-40.982,-41.217,-41.447,-41.681,-41.916,
--42.129,-42.295,-42.412,-42.485,-42.527,-42.562,-42.634,-42.773,-42.959,-43.136,-43.275,-43.395,-43.525,-43.642,-43.697,-43.688,
--43.666,-43.669,-43.670,-43.623,-43.549,-43.518,-43.563,-43.626,-43.618,-43.512,-43.361,-43.237,-43.164,-43.123,-43.066,-42.946,
--42.752,-42.523,-42.332,-42.204,-42.088,-41.925,-41.726,-41.565,-41.470,-41.375,-41.201,-40.957,-40.722,-40.545,-40.389,-40.179,
--39.821,-39.188,-38.166,-36.829,-35.558,-34.855,-34.945,-35.561,-36.174,-36.445,-36.406,-36.249,-36.043,-35.702,-35.182,-34.564,
--33.956,-33.384,-32.842,-32.382,-32.069,-31.855,-31.581,-31.152,-30.658,-30.264,-29.993,-29.663,-29.055,-28.108,-26.958,-25.850,
--25.029,-24.648,-24.678,-24.873,-24.928,-24.732,-24.466,-24.381,-24.499,-24.577,-24.401,-24.060,-23.844,-23.894,-24.020,-23.918,
--23.502,-22.990,-22.650,-22.549,-22.578,-22.644,-22.772,-23.010,-23.314,-23.572,-23.720,-23.778,-23.771,-23.686,-23.517,-23.341,
--23.269,-23.334,-23.467,-23.617,-23.858,-24.330,-25.067,-25.915,-26.639,-27.106,-27.354,-27.521,-27.722,-27.992,-28.296,-28.559,
--28.703,-28.701,-28.605,-28.507,-28.457,-28.436,-28.396,-28.325,-28.237,-28.130,-27.970,-27.745,-27.501,-27.307,-27.195,-27.140,
--27.106,-27.073,-27.031,-26.968,-26.882,-26.806,-26.769,-26.756,-26.718,-26.641,-26.581,-26.603,-26.702,-26.806,-26.857,-26.874,
--26.925,-27.047,-27.215,-27.368,-27.452,-27.443,-27.367,-27.305,-27.362,-27.584,-27.901,-28.164,-28.272,-28.251,-28.215,-28.264,
--28.412,-28.604,-28.780,-28.908,-28.991,-29.042,-29.080,-29.133,-29.242,-29.438,-29.701,-29.952,-30.114,-30.214,-30.397,-30.822,
--31.525,-32.388,-33.256,-34.059,-34.826,-35.604,-36.405,-37.202,-37.938,-38.526,-38.916,-39.222,-39.763,-40.866,-42.556,-44.425,
--45.877,-46.538,-46.483,-46.101,-45.785,-45.728,-45.911,-46.210,-46.514,-46.787,-47.086,-47.507,-48.100,-48.828,-49.598,-50.322,
--50.937,-51.402,-51.704,-51.884,-52.015,-52.132,-52.199,-52.165,-52.035,-51.867,-51.695,-51.489,-51.195,-50.807,-50.370,-49.917,
--49.443,-48.935,-48.407,-47.897,-47.441,-47.059,-46.751,-46.503,-46.278,-46.047,-45.808,-45.576,-45.349,-45.104,-44.831,-44.553,
--44.295,-44.038,-43.747,-43.424,-43.128,-42.904,-42.737,-42.581,-42.430,-42.314,-42.233,-42.135,-41.979,-41.801,-41.675,-41.607,
--41.519,-41.334,-41.060,-40.755,-40.441,-40.088,-39.680,-39.259,-38.876,-38.527,-38.163,-37.756,-37.330,-36.925,-36.537,-36.128,
--35.672,-35.183,-34.680,-34.161,-33.606,-33.011,-32.397,-31.793,-31.205,-30.613,-29.998,-29.352,-28.686,-28.000,-27.282,-26.515,
--25.706,-24.878,-24.044,-23.191,-22.306,-21.417,-20.573,-19.784,-18.989,-18.115,-17.160,-16.193,-15.264,-14.353,-13.403,-12.413,
--11.448,-10.558,-9.711,-8.830,-7.875,-6.876,-5.881,-4.902,-3.924,-2.936,-1.946,-.970,-.022,.888,1.776,2.696,
-3.707,4.806,5.900,6.883,7.731,8.517,9.310,10.089,10.771,11.319,11.788,12.265,12.786,13.328,13.866,14.406,
-14.962,15.521,16.046,16.521,16.961,17.396,17.846,18.310,18.779,19.244,19.700,20.144,20.572,20.979,21.368,21.754,
-22.155,22.573,22.990,23.386,23.761,24.130,24.503,24.879,25.258,25.649,26.045,26.423,26.767,27.104,27.474,27.871,
-28.229,28.501,28.714,28.922,29.126,29.279,29.376,29.478,29.611,29.722,29.825,30.173,31.112,32.634,34.106,34.629,
-33.788,32.045,30.371,29.465,29.358,29.644,29.942,30.108,30.134,30.043,29.898,29.800,29.792,29.797,29.721,29.587,
-29.520,29.585,29.720,29.853,30.013,30.280,30.644,31.003,31.303,31.613,32.005,32.432,32.770,32.984,33.159,33.367,
-33.561,33.669,33.741,33.923,34.270,34.639,34.839,34.852,34.867,35.082,35.509,36.003,36.443,36.837,37.244,37.633,
-37.882,37.917,37.827,37.811,37.994,38.317,38.634,38.909,39.303,40.037,41.167,42.484,43.611,44.201,44.093,43.366,
-42.296,41.227,40.413,39.950,39.847,40.134,40.842,41.872,42.962,43.872,44.609,45.380,46.287,47.126,47.550,47.423,
-46.941,46.415,46.006,45.716,45.528,45.460,45.471,45.445,45.331,45.231,45.265,45.359,45.277,44.877,44.281,43.735,
-43.335,42.969,42.489,41.879,41.211,40.542,39.888,39.283,38.764,38.304,37.827,37.315,36.845,36.479,36.132,35.636,
-34.920,34.076,32.875,31.976,31.159,30.382,29.662,29.100,28.761,28.590,28.506,28.493,28.557,28.623,28.561,28.327,
-28.018,27.741,27.487,27.186,26.862,26.652,26.659,26.813,26.938,26.916,26.779,26.651,26.633,26.738,26.895,26.991,
-26.949,26.790,26.618,26.520,26.507,26.571,26.747,27.076,27.499,27.851,28.012,28.043,28.115,28.323,28.609,28.880,
-29.124,29.384,29.658,29.909,30.151,30.450,30.806,31.090,31.159,31.026,30.848,30.746,30.691,30.585,30.409,30.233,
-30.115,30.035,29.935,29.784,29.582,29.335,29.077,28.880,28.793,28.757,28.623,28.282,27.764,27.192,26.669,26.219,
-25.829,25.491,25.190,24.895,24.575,24.224,23.850,23.461,23.090,22.810,22.682,22.694,22.761,22.811,22.829,22.799,
-22.652,22.326,21.869,21.424,21.085,20.803,20.484,20.126,19.804,19.512,19.118,18.513,17.765,17.067,16.549,16.203,
-15.977,15.873,15.908,16.038,16.192,16.356,16.548,16.720,16.742,16.547,16.218,15.889,15.595,15.323,15.191,15.424,
-16.038,16.621,16.611,15.888,15.033,14.878,15.724,17.012,17.741,17.255,15.736,14.074,13.301,13.947,15.727,17.742,
-19.074,19.359,18.898,18.246,17.715,17.248,16.676,16.001,15.367,14.845,14.324,13.653,12.818,11.954,11.194,10.561,
-10.009,9.507,9.068,8.683,8.285,7.790,7.181,6.528,5.937,5.466,5.087,4.714,4.249,3.634,2.881,2.063,
-1.275,.557,-.137,-.889,-1.732,-2.617,-3.485,-4.344,-5.267,-6.293,-7.365,-8.391,-9.342,-10.264,-11.195,-12.106,
--12.949,-13.744,-14.572,-15.479,-16.401,-17.216,-17.856,-18.357,-18.801,-19.223,-19.564,-19.696,-19.482,-18.826,-17.690,-16.100,
--14.165,-12.147,-10.467,-9.544,-9.502,-10.008,-10.496,-10.608,-10.429,-10.250,-10.159,-9.951,-9.455,-8.820,-8.336,-8.033,
--7.600,-6.802,-5.850,-5.218,-5.114,-5.282,-5.434,-5.749,-6.765,-8.728,-11.184,-13.322,-14.704,-15.549,-16.299,-17.020,
--17.337,-16.933,-16.011,-15.216,-15.139,-15.899,-17.169,-18.489,-19.559,-20.316,-20.843,-21.258,-21.622,-21.919,-22.115,-22.264,
--22.568,-23.277,-24.486,-26.014,-27.511,-28.715,-29.584,-30.171,-30.412,-30.125,-29.288,-28.322,-28.018,-29.061,-31.532,-34.798,
--37.861,-39.890,-40.534,-39.930,-38.513,-36.859,-35.589,-35.281,-36.310,-38.665,-41.876,-45.161,-47.776,-49.359,-50.035,-50.198,
--50.163,-49.994,-49.625,-49.084,-48.552,-48.197,-47.993,-47.765,-47.401,-46.963,-46.611,-46.433,-46.412,-46.517,-46.750,-47.114,
--47.567,-48.062,-48.594,-49.160,-49.698,-50.157,-50.606,-51.198,-51.951,-52.618,-52.908,-52.823,-52.675,-52.680,-52.647,-52.184,
--51.185,-49.958,-48.769,-47.386,-45.250,-42.122,-38.433,-34.951,-32.171,-30.087,-28.462,-27.151,-26.147,-25.479,-25.193,-25.362,
--25.988,-26.847,-27.570,-27.930,-28.039,-28.178,-28.488,-28.880,-29.233,-29.550,-29.877,-30.155,-30.264,-30.221,-30.219,-30.427,
--30.809,-31.208,-31.575,-32.033,-32.662,-33.311,-33.713,-33.788,-33.756,-33.904,-34.257,-34.570,-34.625,-34.482,-34.370,-34.386,
--34.387,-34.194,-33.830,-33.457,-33.157,-32.875,-32.604,-32.477,-32.577,-32.757,-32.858,-33.134,-34.236,-36.555,-39.573,-42.073,
--43.095,-42.645,-41.454,-40.197,-39.086,-38.102,-37.315,-36.812,-36.468,-36.026,-35.403,-34.781,-34.350,-34.081,-33.821,-33.489,
--33.058,-32.456,-31.668,-30.941,-30.625,-30.710,-30.709,-30.269,-29.862,-30.533,-32.798,-35.927,-38.557,-39.993,-40.716,-41.589,
--42.794,-43.737,-43.865,-43.299,-42.608,-42.149,-41.823,-41.390,-40.821,-40.282,-39.864,-39.448,-38.817,-37.841,-36.558,-35.124,
--33.706,-32.398,-31.211,-30.137,-29.196,-28.390,-27.641,-26.824,-25.884,-24.890,-23.955,-23.147,-22.513,-22.131,-22.049,-22.150,
--22.169,-21.906,-21.396,-20.805,-20.184,-19.423,-18.445,-17.350,-16.283,-15.230,-14.065,-12.782,-11.577,-10.634,-9.904,-9.180,
--8.354,-7.494,-6.671,-5.816,-4.823,-3.722,-2.654,-1.677,-.694,.396,1.538,2.574,3.417,4.113,4.745,5.351,
-5.958,6.630,7.431,8.339,9.263,10.130,10.939,11.732,12.555,13.456,14.460,15.520,16.508,17.330,18.020,18.714,
-19.490,20.294,21.034,21.694,22.325,22.944,23.519,24.053,24.633,25.337,26.143,26.953,27.692,28.340,28.864,29.204,
-29.371,29.504,29.757,30.129,30.446,30.549,30.442,30.225,29.895,29.282,28.208,26.717,25.141,23.942,23.468,23.776,
-24.648,25.779,26.990,28.285,29.720,31.220,32.580,33.625,34.352,34.866,35.231,35.438,35.508,35.577,35.811,36.249,
-36.766,37.210,37.532,37.799,38.080,38.381,38.670,38.927,39.166,39.426,39.762,40.238,40.870,41.550,42.080,42.321,
-42.341,42.312,42.184,41.527,39.859,37.273,34.642,32.947,32.242,31.397,29.132,25.444,21.938,20.570,21.981,25.043,
-27.948,29.643,30.278,30.535,30.814,31.059,31.098,30.908,30.554,30.052,29.394,28.636,27.876,27.161,26.470,25.794,
-25.163,24.586,24.012,23.393,22.772,22.254,21.893,21.620,21.310,20.899,20.415,19.917,19.438,18.963,18.470,17.956,
-17.431,16.901,16.362,15.836,15.406,15.183,15.172,15.185,14.919,14.205,13.180,12.192,11.526,11.207,11.047,10.835,
-10.465,9.940,9.331,8.755,8.328,8.090,7.963,7.817,7.562,7.176,6.654,6.012,5.329,4.753,4.392,4.211,
-4.067,3.860,3.605,3.358,3.100,2.767,2.352,1.939,1.607,1.335,1.040,.686,.314,-.028,-.345,-.673,
--1.022,-1.372,-1.711,-2.055,-2.424,-2.809,-3.177,-3.492,-3.739,-3.942,-4.169,-4.486,-4.875,-5.225,-5.422,-5.476,
--5.519,-5.663,-5.889,-6.088,-6.204,-6.290,-6.412,-6.554,-6.635,-6.617,-6.546,-6.498,-6.506,-6.550,-6.597,-6.635,
--6.686,-6.794,-6.972,-7.144,-7.152,-6.895,-6.479,-6.181,-6.200,-6.451,-6.630,-6.531,-6.237,-6.010,-6.009,-6.161,
--6.295,-6.332,-6.332,-6.377,-6.475,-6.564,-6.600,-6.603,-6.644,-6.755,-6.852,-6.754,-6.335,-5.700,-5.173,-5.058,
--5.379,-5.870,-6.237,-6.403,-6.497,-6.655,-6.875,-7.075,-7.216,-7.329,-7.446,-7.552,-7.608,-7.595,-7.518,-7.387,
--7.210,-7.002,-6.800,-6.667,-6.669,-6.784,-6.819,-6.485,-5.673,-4.674,-4.048,-4.146,-4.763,-5.306,-5.343,-4.948,
--4.522,-4.336,-4.333,-4.326,-4.248,-4.170,-4.138,-4.102,-4.017,-3.916,-3.861,-3.852,-3.843,-3.821,-3.828,-3.902,
--4.023,-4.144,-4.226,-4.245,-4.188,-4.084,-4.005,-4.014,-4.102,-4.207,-4.297,-4.393,-4.520,-4.655,-4.777,-4.921,
--5.120,-5.307,-5.346,-5.212,-5.074,-5.146,-5.438,-5.741,-5.860,-5.833,-5.863,-6.074,-6.403,-6.713,-6.959,-7.188,
--7.428,-7.648,-7.824,-7.989,-8.195,-8.446,-8.698,-8.923,-9.138,-9.377,-9.649,-9.932,-10.197,-10.431,-10.637,-10.832,
--11.028,-11.215,-11.369,-11.483,-11.590,-11.726,-11.891,-12.050,-12.187,-12.328,-12.502,-12.695,-12.869,-13.014,-13.154,-13.308,
--13.454,-13.569,-13.669,-13.787,-13.931,-14.076,-14.216,-14.387,-14.616,-14.881,-15.135,-15.366,-15.589,-15.806,-15.991,-16.140,
--16.298,-16.520,-16.800,-17.097,-17.396,-17.724,-18.084,-18.422,-18.687,-18.918,-19.205,-19.585,-19.996,-20.366,-20.709,-21.088,
--21.512,-21.918,-22.255,-22.553,-22.883,-23.257,-23.633,-23.983,-24.334,-24.725,-25.142,-25.538,-25.885,-26.205,-26.525,-26.852,
--27.176,-27.492,-27.797,-28.096,-28.396,-28.710,-29.044,-29.386,-29.719,-30.042,-30.356,-30.648,-30.902,-31.144,-31.431,-31.793,
--32.183,-32.528,-32.811,-33.079,-33.374,-33.678,-33.965,-34.263,-34.625,-35.045,-35.439,-35.736,-35.960,-36.191,-36.465,-36.763,
--37.072,-37.423,-37.836,-38.272,-38.665,-39.003,-39.324,-39.654,-39.962,-40.218,-40.444,-40.694,-40.986,-41.293,-41.582,-41.849,
--42.096,-42.303,-42.452,-42.545,-42.602,-42.637,-42.675,-42.761,-42.938,-43.180,-43.399,-43.528,-43.592,-43.670,-43.785,-43.884,
--43.912,-43.886,-43.854,-43.836,-43.808,-43.768,-43.754,-43.787,-43.830,-43.821,-43.738,-43.622,-43.523,-43.454,-43.387,-43.280,
--43.104,-42.873,-42.648,-42.487,-42.376,-42.235,-42.009,-41.759,-41.605,-41.594,-41.641,-41.628,-41.517,-41.338,-41.111,-40.830,
--40.514,-40.191,-39.782,-39.089,-37.991,-36.685,-35.622,-35.158,-35.275,-35.661,-36.030,-36.283,-36.404,-36.326,-35.984,-35.448,
--34.889,-34.401,-33.928,-33.400,-32.876,-32.482,-32.223,-31.950,-31.533,-31.021,-30.568,-30.228,-29.867,-29.282,-28.371,-27.202,
--25.992,-25.022,-24.510,-24.453,-24.585,-24.571,-24.319,-24.058,-24.077,-24.372,-24.626,-24.553,-24.209,-23.905,-23.846,-23.917,
--23.853,-23.559,-23.189,-22.937,-22.826,-22.737,-22.597,-22.478,-22.493,-22.666,-22.925,-23.191,-23.420,-23.575,-23.611,-23.533,
--23.430,-23.422,-23.546,-23.753,-24.003,-24.354,-24.900,-25.623,-26.361,-26.926,-27.270,-27.498,-27.740,-28.036,-28.325,-28.531,
--28.623,-28.615,-28.545,-28.455,-28.375,-28.307,-28.226,-28.110,-27.949,-27.745,-27.499,-27.220,-26.948,-26.732,-26.592,-26.502,
--26.430,-26.377,-26.356,-26.350,-26.323,-26.268,-26.220,-26.207,-26.190,-26.104,-25.946,-25.797,-25.737,-25.767,-25.836,-25.931,
--26.102,-26.392,-26.764,-27.120,-27.382,-27.521,-27.534,-27.437,-27.290,-27.195,-27.238,-27.417,-27.651,-27.855,-28.005,-28.129,
--28.260,-28.409,-28.567,-28.716,-28.833,-28.914,-28.978,-29.052,-29.156,-29.309,-29.529,-29.802,-30.055,-30.193,-30.227,-30.327,
--30.710,-31.438,-32.356,-33.243,-34.001,-34.687,-35.387,-36.122,-36.856,-37.538,-38.105,-38.526,-38.925,-39.624,-40.939,-42.830,
--44.785,-46.140,-46.577,-46.313,-45.851,-45.578,-45.601,-45.840,-46.180,-46.529,-46.821,-47.063,-47.342,-47.770,-48.389,-49.144,
--49.934,-50.658,-51.228,-51.593,-51.784,-51.905,-52.046,-52.192,-52.250,-52.165,-51.978,-51.768,-51.555,-51.294,-50.948,-50.530,
--50.079,-49.617,-49.148,-48.675,-48.209,-47.767,-47.370,-47.042,-46.791,-46.592,-46.396,-46.176,-45.935,-45.686,-45.430,-45.170,
--44.930,-44.725,-44.524,-44.276,-43.975,-43.681,-43.462,-43.319,-43.207,-43.097,-42.996,-42.904,-42.788,-42.624,-42.445,-42.303,
--42.191,-42.040,-41.805,-41.517,-41.231,-40.944,-40.602,-40.186,-39.756,-39.382,-39.055,-38.701,-38.270,-37.795,-37.351,-36.963,
--36.594,-36.184,-35.707,-35.176,-34.618,-34.047,-33.471,-32.895,-32.318,-31.730,-31.112,-30.449,-29.753,-29.058,-28.380,-27.697,
--26.957,-26.137,-25.270,-24.408,-23.564,-22.717,-21.858,-21.015,-20.211,-19.406,-18.533,-17.573,-16.591,-15.660,-14.771,-13.855,
--12.881,-11.899,-10.978,-10.115,-9.235,-8.282,-7.274,-6.271,-5.299,-4.331,-3.335,-2.321,-1.330,-.392,.503,1.400,
-2.356,3.396,4.483,5.536,6.485,7.320,8.085,8.817,9.497,10.084,10.574,11.022,11.499,12.032,12.598,13.159,
-13.696,14.214,14.719,15.211,15.682,16.125,16.543,16.953,17.373,17.813,18.269,18.730,19.186,19.631,20.057,20.466,
-20.876,21.310,21.766,22.214,22.633,23.035,23.442,23.851,24.235,24.594,24.970,25.390,25.813,26.167,26.449,26.739,
-27.105,27.506,27.839,28.057,28.214,28.385,28.581,28.779,28.968,29.146,29.286,29.401,29.648,30.246,31.189,32.060,
-32.273,31.590,30.374,29.299,28.794,28.809,29.036,29.251,29.401,29.489,29.501,29.455,29.415,29.411,29.397,29.325,
-29.241,29.232,29.315,29.426,29.533,29.697,29.973,30.311,30.624,30.915,31.270,31.708,32.122,32.405,32.592,32.792,
-33.012,33.150,33.182,33.259,33.538,33.956,34.288,34.442,34.601,35.003,35.623,36.175,36.434,36.483,36.581,36.833,
-37.087,37.145,37.020,36.916,36.982,37.152,37.277,37.389,37.784,38.781,40.379,42.155,43.515,44.077,43.855,43.137,
-42.243,41.386,40.695,40.263,40.147,40.352,40.841,41.556,42.400,43.244,44.001,44.688,45.360,45.943,46.197,45.902,
-45.111,44.156,43.407,43.019,42.935,43.032,43.209,43.372,43.442,43.426,43.428,43.516,43.604,43.534,43.279,42.982,
-42.776,42.609,42.311,41.797,41.139,40.452,39.780,39.146,38.603,38.174,37.759,37.213,36.531,35.890,35.433,35.072,
-34.567,33.798,32.875,31.852,31.042,30.324,29.631,28.972,28.467,28.192,28.093,28.075,28.121,28.242,28.369,28.374,
-28.218,27.993,27.797,27.604,27.334,27.016,26.798,26.784,26.914,27.031,27.034,26.945,26.841,26.795,26.852,27.005,
-27.170,27.221,27.109,26.925,26.821,26.871,27.046,27.305,27.633,27.982,28.232,28.293,28.226,28.203,28.329,28.544,
-28.735,28.883,29.071,29.352,29.688,30.018,30.327,30.618,30.845,30.943,30.911,30.832,30.786,30.780,30.774,30.740,
-30.673,30.557,30.379,30.159,29.936,29.717,29.467,29.187,28.953,28.833,28.771,28.602,28.202,27.607,26.967,26.409,
-25.958,25.575,25.222,24.880,24.540,24.209,23.889,23.561,23.192,22.807,22.522,22.454,22.604,22.830,22.978,22.978,
-22.831,22.526,22.060,21.509,21.016,20.660,20.375,20.041,19.633,19.220,18.831,18.387,17.814,17.160,16.561,16.102,
-15.775,15.565,15.503,15.604,15.807,16.026,16.245,16.484,16.681,16.687,16.424,15.994,15.589,15.304,15.137,15.129,
-15.403,15.956,16.469,16.475,15.802,14.850,14.354,14.780,15.871,16.735,16.471,14.907,12.894,11.831,12.653,15.080,
-17.797,19.478,19.726,19.127,18.472,18.037,17.582,16.868,16.002,15.260,14.734,14.255,13.634,12.856,12.047,11.307,
-10.651,10.073,9.582,9.171,8.787,8.364,7.872,7.323,6.738,6.144,5.584,5.097,4.658,4.168,3.532,2.750,
-1.928,1.183,.526,-.130,-.876,-1.715,-2.570,-3.385,-4.192,-5.072,-6.057,-7.093,-8.100,-9.053,-9.985,-10.920,
--11.837,-12.714,-13.585,-14.518,-15.530,-16.534,-17.402,-18.071,-18.585,-19.055,-19.566,-20.108,-20.558,-20.722,-20.414,-19.546,
--18.151,-16.368,-14.430,-12.662,-11.409,-10.863,-10.918,-11.232,-11.498,-11.635,-11.703,-11.675,-11.398,-10.807,-10.089,-9.510,
--9.089,-8.542,-7.636,-6.525,-5.654,-5.321,-5.440,-5.771,-6.294,-7.244,-8.758,-10.619,-12.415,-13.924,-15.238,-16.492,
--17.539,-17.994,-17.623,-16.659,-15.717,-15.387,-15.882,-16.997,-18.342,-19.596,-20.608,-21.362,-21.916,-22.345,-22.715,-23.058,
--23.399,-23.816,-24.460,-25.437,-26.677,-27.928,-28.949,-29.682,-30.186,-30.419,-30.184,-29.429,-28.600,-28.568,-30.055,-33.017,
--36.594,-39.656,-41.461,-41.880,-41.198,-39.847,-38.328,-37.233,-37.133,-38.322,-40.638,-43.524,-46.295,-48.426,-49.719,-50.293,
--50.423,-50.326,-50.061,-49.615,-49.059,-48.575,-48.291,-48.141,-47.944,-47.613,-47.238,-46.951,-46.771,-46.646,-46.607,-46.769,
--47.173,-47.696,-48.193,-48.668,-49.220,-49.845,-50.411,-50.874,-51.401,-52.167,-53.080,-53.851,-54.361,-54.798,-55.318,-55.680,
--55.429,-54.452,-53.157,-51.961,-50.711,-48.807,-45.938,-42.526,-39.355,-36.841,-34.808,-32.904,-31.076,-29.583,-28.668,-28.342,
--28.417,-28.621,-28.695,-28.516,-28.215,-28.100,-28.363,-28.879,-29.346,-29.625,-29.842,-30.150,-30.485,-30.651,-30.606,-30.545,
--30.674,-30.984,-31.328,-31.656,-32.090,-32.715,-33.396,-33.875,-34.039,-34.041,-34.104,-34.260,-34.337,-34.208,-33.969,-33.824,
--33.814,-33.767,-33.539,-33.211,-32.956,-32.760,-32.422,-31.880,-31.396,-31.265,-31.425,-31.616,-31.985,-33.287,-36.145,-40.086,
--43.555,-45.106,-44.570,-42.981,-41.482,-40.447,-39.630,-38.796,-37.995,-37.311,-36.661,-35.930,-35.166,-34.525,-34.091,-33.826,
--33.628,-33.337,-32.760,-31.873,-30.999,-30.575,-30.631,-30.668,-30.297,-29.935,-30.573,-32.675,-35.502,-37.753,-38.853,-39.403,
--40.318,-41.744,-42.997,-43.430,-43.099,-42.548,-42.147,-41.831,-41.383,-40.767,-40.122,-39.538,-38.926,-38.100,-36.942,-35.506,
--34.009,-32.696,-31.667,-30.823,-30.010,-29.180,-28.391,-27.657,-26.875,-25.947,-24.909,-23.900,-23.032,-22.351,-21.900,-21.709,
--21.699,-21.653,-21.387,-20.910,-20.358,-19.770,-19.040,-18.094,-17.026,-15.972,-14.916,-13.730,-12.417,-11.191,-10.256,-9.568,
--8.900,-8.113,-7.255,-6.407,-5.530,-4.547,-3.496,-2.495,-1.565,-.589,.527,1.710,2.805,3.733,4.524,5.216,
-5.813,6.367,7.009,7.834,8.780,9.685,10.465,11.190,11.972,12.845,13.778,14.745,15.734,16.698,17.563,18.319,
-19.044,19.806,20.575,21.269,21.870,22.451,23.078,23.747,24.416,25.088,25.807,26.588,27.378,28.091,28.653,29.027,
-29.234,29.376,29.591,29.937,30.319,30.561,30.565,30.362,29.996,29.392,28.390,26.961,25.355,24.029,23.388,23.552,
-24.322,25.376,26.499,27.676,28.975,30.366,31.691,32.804,33.705,34.487,35.163,35.623,35.779,35.732,35.732,35.963,
-36.402,36.891,37.302,37.622,37.909,38.213,38.542,38.869,39.155,39.381,39.595,39.903,40.389,41.022,41.653,42.110,
-42.332,42.403,42.431,42.329,41.720,40.192,37.825,35.447,34.106,34.028,34.113,32.728,29.296,25.088,22.321,22.327,
-24.573,27.367,29.350,30.292,30.701,31.014,31.276,31.366,31.246,30.947,30.481,29.870,29.208,28.574,27.927,27.164,
-26.292,25.472,24.847,24.374,23.893,23.325,22.760,22.317,21.999,21.698,21.330,20.905,20.474,20.045,19.578,19.046,
-18.476,17.916,17.383,16.858,16.345,15.913,15.648,15.528,15.364,14.922,14.123,13.137,12.252,11.645,11.293,11.065,
-10.841,10.546,10.122,9.562,8.968,8.513,8.293,8.236,8.164,7.943,7.538,6.963,6.254,5.500,4.861,4.457,
-4.259,4.122,3.936,3.719,3.535,3.374,3.164,2.875,2.558,2.271,2.000,1.686,1.308,.900,.502,.120,
--.252,-.611,-.973,-1.375,-1.833,-2.292,-2.670,-2.936,-3.140,-3.340,-3.549,-3.765,-4.019,-4.343,-4.700,-4.988,
--5.155,-5.268,-5.433,-5.670,-5.891,-6.019,-6.076,-6.147,-6.271,-6.407,-6.499,-6.542,-6.565,-6.591,-6.612,-6.617,
--6.611,-6.625,-6.703,-6.851,-6.995,-7.007,-6.829,-6.573,-6.446,-6.535,-6.684,-6.646,-6.347,-5.976,-5.782,-5.825,
--5.962,-6.039,-6.035,-6.026,-6.058,-6.106,-6.130,-6.121,-6.098,-6.096,-6.160,-6.295,-6.418,-6.398,-6.202,-5.972,
--5.889,-5.953,-5.958,-5.729,-5.342,-5.050,-5.002,-5.117,-5.257,-5.451,-5.861,-6.524,-7.206,-7.570,-7.470,-7.070,
--6.667,-6.431,-6.323,-6.228,-6.135,-6.144,-6.288,-6.376,-6.086,-5.302,-4.343,-3.778,-3.917,-4.492,-4.902,-4.773,
--4.265,-3.814,-3.661,-3.690,-3.680,-3.578,-3.488,-3.469,-3.460,-3.387,-3.270,-3.179,-3.137,-3.116,-3.103,-3.115,
--3.157,-3.210,-3.270,-3.354,-3.447,-3.485,-3.422,-3.309,-3.252,-3.303,-3.421,-3.544,-3.662,-3.785,-3.895,-3.976,
--4.074,-4.258,-4.503,-4.678,-4.704,-4.677,-4.768,-5.003,-5.215,-5.243,-5.138,-5.113,-5.307,-5.656,-6.006,-6.284,
--6.522,-6.767,-7.007,-7.218,-7.412,-7.626,-7.874,-8.143,-8.415,-8.681,-8.937,-9.184,-9.431,-9.688,-9.941,-10.166,
--10.358,-10.544,-10.741,-10.932,-11.090,-11.228,-11.388,-11.582,-11.771,-11.921,-12.050,-12.200,-12.376,-12.543,-12.677,-12.794,
--12.913,-13.019,-13.094,-13.157,-13.254,-13.402,-13.570,-13.740,-13.943,-14.218,-14.552,-14.884,-15.172,-15.421,-15.651,-15.865,
--16.064,-16.272,-16.504,-16.745,-16.971,-17.201,-17.486,-17.831,-18.164,-18.418,-18.625,-18.888,-19.250,-19.647,-19.999,-20.318,
--20.683,-21.117,-21.553,-21.922,-22.244,-22.586,-22.976,-23.375,-23.752,-24.133,-24.549,-24.983,-25.377,-25.702,-25.991,-26.295,
--26.626,-26.962,-27.275,-27.565,-27.852,-28.161,-28.501,-28.859,-29.211,-29.546,-29.873,-30.193,-30.485,-30.733,-30.973,-31.273,
--31.656,-32.058,-32.392,-32.648,-32.893,-33.184,-33.510,-33.839,-34.182,-34.570,-34.975,-35.322,-35.574,-35.791,-36.053,-36.374,
--36.709,-37.045,-37.419,-37.841,-38.258,-38.617,-38.940,-39.293,-39.679,-40.021,-40.264,-40.458,-40.698,-41.021,-41.376,-41.708,
--41.999,-42.249,-42.433,-42.535,-42.586,-42.638,-42.711,-42.804,-42.936,-43.147,-43.423,-43.672,-43.800,-43.823,-43.839,-43.912,
--44.008,-44.054,-44.039,-44.009,-43.999,-43.998,-43.991,-43.987,-44.000,-44.014,-44.004,-43.970,-43.931,-43.890,-43.825,-43.706,
--43.526,-43.294,-43.048,-42.846,-42.729,-42.658,-42.522,-42.248,-41.910,-41.681,-41.662,-41.792,-41.919,-41.941,-41.832,-41.601,
--41.262,-40.881,-40.541,-40.225,-39.762,-38.977,-37.901,-36.799,-35.952,-35.478,-35.356,-35.542,-35.969,-36.432,-36.621,-36.353,
--35.755,-35.139,-34.692,-34.344,-33.931,-33.427,-32.941,-32.539,-32.158,-31.717,-31.234,-30.797,-30.427,-30.022,-29.438,-28.590,
--27.507,-26.340,-25.331,-24.703,-24.487,-24.456,-24.318,-24.004,-23.752,-23.837,-24.237,-24.619,-24.665,-24.379,-24.029,-23.825,
--23.723,-23.549,-23.258,-22.988,-22.870,-22.853,-22.754,-22.478,-22.127,-21.907,-21.951,-22.243,-22.676,-23.124,-23.480,-23.668,
--23.689,-23.633,-23.622,-23.725,-23.932,-24.223,-24.627,-25.176,-25.822,-26.435,-26.911,-27.270,-27.621,-28.024,-28.416,-28.672,
--28.727,-28.632,-28.493,-28.377,-28.288,-28.187,-28.047,-27.869,-27.671,-27.453,-27.199,-26.896,-26.583,-26.330,-26.184,-26.112,
--26.038,-25.930,-25.833,-25.800,-25.818,-25.820,-25.770,-25.696,-25.631,-25.548,-25.391,-25.176,-24.993,-24.932,-25.010,-25.215,
--25.573,-26.120,-26.806,-27.465,-27.928,-28.149,-28.191,-28.129,-27.973,-27.721,-27.431,-27.209,-27.149,-27.271,-27.521,-27.807,
--28.042,-28.189,-28.283,-28.388,-28.527,-28.658,-28.748,-28.820,-28.927,-29.085,-29.271,-29.471,-29.690,-29.889,-29.983,-29.966,
--30.015,-30.390,-31.185,-32.212,-33.173,-33.923,-34.536,-35.141,-35.775,-36.403,-36.991,-37.526,-38.026,-38.630,-39.628,-41.253,
--43.345,-45.291,-46.434,-46.596,-46.181,-45.760,-45.627,-45.732,-45.940,-46.209,-46.531,-46.845,-47.093,-47.323,-47.666,-48.200,
--48.884,-49.622,-50.340,-50.972,-51.445,-51.720,-51.856,-51.958,-52.071,-52.137,-52.087,-51.935,-51.754,-51.580,-51.374,-51.084,
--50.704,-50.265,-49.799,-49.329,-48.874,-48.452,-48.064,-47.705,-47.385,-47.121,-46.904,-46.698,-46.474,-46.233,-45.991,-45.752,
--45.511,-45.282,-45.082,-44.895,-44.681,-44.429,-44.190,-44.026,-43.943,-43.885,-43.805,-43.702,-43.595,-43.479,-43.337,-43.171,
--42.998,-42.808,-42.574,-42.293,-42.005,-41.745,-41.484,-41.161,-40.761,-40.344,-39.970,-39.627,-39.245,-38.781,-38.273,-37.795,
--37.386,-37.020,-36.637,-36.186,-35.658,-35.079,-34.493,-33.927,-33.381,-32.827,-32.236,-31.585,-30.872,-30.126,-29.396,-28.720,
--28.081,-27.406,-26.635,-25.783,-24.914,-24.073,-23.241,-22.385,-21.512,-20.655,-19.813,-18.936,-17.998,-17.038,-16.119,-15.247,
--14.359,-13.410,-12.425,-11.471,-10.559,-9.639,-8.662,-7.648,-6.652,-5.693,-4.735,-3.743,-2.736,-1.767,-.859,.029,
-.967,1.986,3.051,4.094,5.061,5.945,6.760,7.516,8.202,8.803,9.326,9.805,10.287,10.804,11.354,11.913,
-12.452,12.951,13.415,13.870,14.340,14.822,15.286,15.706,16.087,16.466,16.871,17.308,17.764,18.230,18.696,19.151,
-19.588,20.022,20.476,20.950,21.413,21.838,22.245,22.669,23.104,23.503,23.844,24.179,24.567,24.991,25.362,25.642,
-25.902,26.241,26.651,27.023,27.279,27.459,27.661,27.919,28.190,28.431,28.636,28.803,28.920,29.018,29.185,29.442,
-29.640,29.558,29.145,28.625,28.298,28.263,28.384,28.498,28.590,28.728,28.909,29.044,29.078,29.044,29.000,28.955,
-28.907,28.892,28.940,29.019,29.078,29.144,29.311,29.610,29.953,30.249,30.532,30.896,31.328,31.699,31.941,32.136,
-32.381,32.621,32.735,32.761,32.898,33.243,33.637,33.910,34.212,34.913,36.088,37.233,37.664,37.223,36.452,36.043,
-36.168,36.451,36.500,36.337,36.244,36.341,36.452,36.438,36.540,37.283,38.959,41.234,43.267,44.287,44.110,43.173,
-42.121,41.353,40.904,40.652,40.545,40.631,40.933,41.384,41.878,42.364,42.859,43.390,43.933,44.377,44.541,44.263,
-43.536,42.568,41.683,41.120,40.919,40.979,41.185,41.446,41.672,41.791,41.811,41.817,41.861,41.894,41.847,41.750,
-41.707,41.731,41.674,41.375,40.829,40.172,39.513,38.874,38.281,37.816,37.494,37.156,36.592,35.795,35.003,34.427,
-34.002,33.478,32.723,31.852,30.965,30.323,29.768,29.192,28.600,28.121,27.847,27.740,27.728,27.810,28.001,28.209,
-28.285,28.185,28.016,27.889,27.771,27.565,27.276,27.040,26.968,27.027,27.101,27.117,27.069,26.980,26.895,26.904,
-27.080,27.359,27.548,27.507,27.320,27.216,27.339,27.637,27.964,28.238,28.443,28.545,28.505,28.371,28.281,28.333,
-28.480,28.605,28.683,28.811,29.077,29.452,29.827,30.127,30.354,30.527,30.639,30.681,30.674,30.674,30.728,30.855,
-31.016,31.115,31.045,30.779,30.410,30.065,29.789,29.529,29.249,29.001,28.850,28.743,28.517,28.053,27.397,26.715,
-26.146,25.718,25.377,25.055,24.702,24.312,23.914,23.548,23.202,22.832,22.451,22.175,22.143,22.354,22.641,22.812,
-22.784,22.582,22.237,21.770,21.249,20.787,20.435,20.107,19.677,19.133,18.587,18.124,17.707,17.251,16.743,16.252,
-15.835,15.501,15.269,15.191,15.292,15.511,15.755,15.989,16.219,16.397,16.401,16.164,15.773,15.405,15.174,15.083,
-15.124,15.329,15.690,16.028,16.041,15.524,14.612,13.788,13.579,14.104,14.805,14.757,13.477,11.603,10.638,11.779,
-14.796,18.121,20.124,20.354,19.593,18.830,18.357,17.833,16.975,15.950,15.115,14.578,14.142,13.603,12.943,12.256,
-11.590,10.949,10.368,9.895,9.510,9.114,8.631,8.080,7.513,6.938,6.326,5.690,5.089,4.539,3.968,3.282,
-2.486,1.689,.998,.408,-.181,-.861,-1.641,-2.469,-3.301,-4.144,-5.024,-5.955,-6.915,-7.880,-8.840,-9.797,
--10.742,-11.661,-12.565,-13.502,-14.510,-15.573,-16.604,-17.508,-18.237,-18.820,-19.344,-19.912,-20.572,-21.244,-21.707,-21.698,
--21.075,-19.889,-18.322,-16.581,-14.869,-13.421,-12.480,-12.164,-12.366,-12.809,-13.229,-13.474,-13.467,-13.158,-12.564,-11.828,
--11.135,-10.535,-9.883,-9.014,-7.978,-7.068,-6.600,-6.691,-7.234,-8.045,-8.995,-10.034,-11.159,-12.407,-13.824,-15.386,
--16.904,-18.039,-18.472,-18.128,-17.279,-16.430,-16.051,-16.347,-17.226,-18.448,-19.805,-21.168,-22.419,-23.438,-24.163,-24.662,
--25.073,-25.486,-25.910,-26.363,-26.919,-27.614,-28.365,-29.027,-29.554,-29.987,-30.263,-30.150,-29.549,-28.897,-29.119,-30.951,
--34.236,-37.921,-40.787,-42.229,-42.389,-41.742,-40.708,-39.645,-38.997,-39.212,-40.469,-42.517,-44.844,-46.971,-48.622,-49.700,
--50.233,-50.337,-50.160,-49.809,-49.338,-48.828,-48.414,-48.187,-48.075,-47.913,-47.630,-47.316,-47.080,-46.904,-46.732,-46.639,
--46.812,-47.300,-47.902,-48.386,-48.775,-49.286,-50.002,-50.744,-51.328,-51.852,-52.571,-53.541,-54.544,-55.397,-56.165,-56.929,
--57.470,-57.424,-56.763,-55.910,-55.211,-54.425,-52.956,-50.620,-47.955,-45.655,-43.813,-41.921,-39.585,-37.085,-35.125,-34.150,
--33.954,-33.904,-33.416,-32.296,-30.808,-29.501,-28.851,-28.911,-29.278,-29.480,-29.415,-29.363,-29.585,-29.987,-30.256,-30.237,
--30.098,-30.108,-30.356,-30.732,-31.128,-31.559,-32.091,-32.693,-33.225,-33.561,-33.686,-33.673,-33.586,-33.430,-33.218,-33.032,
--32.946,-32.909,-32.757,-32.424,-32.080,-31.941,-31.945,-31.756,-31.179,-30.468,-30.048,-29.993,-30.052,-30.344,-31.732,-35.071,
--39.941,-44.439,-46.578,-45.955,-43.934,-42.218,-41.416,-40.999,-40.303,-39.270,-38.249,-37.441,-36.733,-35.969,-35.169,-34.487,
--34.035,-33.766,-33.465,-32.877,-31.976,-31.100,-30.679,-30.727,-30.762,-30.415,-30.066,-30.599,-32.393,-34.755,-36.550,-37.367,
--37.849,-38.833,-40.389,-41.835,-42.559,-42.590,-42.355,-42.122,-41.823,-41.307,-40.585,-39.773,-38.931,-38.018,-36.957,-35.706,
--34.321,-32.970,-31.860,-31.064,-30.438,-29.765,-28.977,-28.173,-27.431,-26.669,-25.766,-24.736,-23.731,-22.875,-22.191,-21.679,
--21.369,-21.233,-21.120,-20.862,-20.434,-19.925,-19.358,-18.636,-17.689,-16.611,-15.535,-14.446,-13.229,-11.903,-10.702,-9.841,
--9.258,-8.685,-7.935,-7.048,-6.137,-5.218,-4.247,-3.251,-2.310,-1.415,-.446,.675,1.871,2.999,3.992,4.872,
-5.641,6.283,6.862,7.538,8.408,9.366,10.210,10.877,11.505,12.257,13.147,14.074,14.985,15.919,16.898,17.861,
-18.731,19.510,20.248,20.956,21.599,22.176,22.754,23.397,24.097,24.800,25.498,26.241,27.057,27.874,28.555,29.004,
-29.244,29.400,29.614,29.934,30.280,30.510,30.547,30.427,30.209,29.835,29.112,27.892,26.293,24.743,23.768,23.671,
-24.359,25.449,26.576,27.630,28.726,29.954,31.205,32.269,33.080,33.788,34.549,35.294,35.787,35.917,35.853,35.881,
-36.130,36.516,36.917,37.304,37.703,38.103,38.468,38.799,39.118,39.400,39.598,39.748,39.997,40.458,41.075,41.669,
-42.101,42.368,42.547,42.663,42.589,42.023,40.655,38.547,36.436,35.406,35.907,36.978,36.724,33.929,29.328,25.190,
-23.492,24.461,26.768,28.901,30.224,30.917,31.320,31.547,31.585,31.448,31.166,30.734,30.191,29.656,29.192,28.670,
-27.900,26.899,25.940,25.278,24.873,24.464,23.887,23.235,22.705,22.351,22.055,21.704,21.304,20.920,20.550,20.116,
-19.571,18.962,18.379,17.856,17.353,16.831,16.331,15.927,15.607,15.227,14.635,13.834,13.008,12.353,11.901,11.542,
-11.180,10.822,10.495,10.152,9.716,9.220,8.809,8.592,8.517,8.421,8.183,7.779,7.217,6.508,5.726,5.034,
-4.582,4.367,4.244,4.085,3.896,3.751,3.672,3.593,3.450,3.235,2.966,2.641,2.258,1.838,1.414,.991,
-.561,.142,-.239,-.614,-1.058,-1.588,-2.094,-2.433,-2.591,-2.705,-2.905,-3.181,-3.436,-3.647,-3.891,-4.222,
--4.578,-4.845,-5.004,-5.147,-5.352,-5.599,-5.803,-5.918,-5.973,-6.022,-6.103,-6.228,-6.392,-6.565,-6.698,-6.751,
--6.727,-6.666,-6.623,-6.644,-6.736,-6.846,-6.880,-6.794,-6.663,-6.618,-6.681,-6.709,-6.546,-6.220,-5.943,-5.881,
--5.983,-6.060,-6.005,-5.872,-5.762,-5.694,-5.637,-5.584,-5.558,-5.552,-5.539,-5.551,-5.672,-5.920,-6.186,-6.345,
--6.394,-6.401,-6.319,-5.967,-5.251,-4.364,-3.635,-3.208,-2.969,-2.836,-3.011,-3.786,-5.086,-6.330,-6.864,-6.535,
--5.795,-5.248,-5.136,-5.269,-5.372,-5.406,-5.528,-5.800,-6.017,-5.866,-5.266,-4.529,-4.117,-4.211,-4.529,-4.607,
--4.252,-3.698,-3.310,-3.205,-3.202,-3.100,-2.910,-2.776,-2.764,-2.789,-2.750,-2.644,-2.532,-2.449,-2.393,-2.366,
--2.379,-2.402,-2.394,-2.365,-2.383,-2.478,-2.579,-2.593,-2.528,-2.488,-2.547,-2.674,-2.802,-2.918,-3.048,-3.182,
--3.281,-3.358,-3.482,-3.684,-3.896,-4.042,-4.141,-4.283,-4.470,-4.583,-4.528,-4.388,-4.362,-4.565,-4.922,-5.276,
--5.553,-5.789,-6.038,-6.304,-6.560,-6.797,-7.024,-7.257,-7.513,-7.802,-8.113,-8.403,-8.644,-8.853,-9.076,-9.328,
--9.577,-9.799,-10.011,-10.240,-10.472,-10.672,-10.841,-11.023,-11.233,-11.429,-11.561,-11.644,-11.737,-11.870,-12.012,-12.128,
--12.226,-12.333,-12.447,-12.545,-12.637,-12.768,-12.961,-13.188,-13.418,-13.664,-13.965,-14.320,-14.675,-14.979,-15.229,-15.449,
--15.661,-15.878,-16.110,-16.357,-16.588,-16.777,-16.951,-17.174,-17.467,-17.775,-18.032,-18.259,-18.544,-18.922,-19.332,-19.693,
--20.015,-20.375,-20.804,-21.245,-21.633,-21.972,-22.320,-22.702,-23.091,-23.470,-23.864,-24.296,-24.734,-25.119,-25.432,-25.716,
--26.023,-26.359,-26.692,-27.000,-27.295,-27.608,-27.961,-28.348,-28.739,-29.103,-29.433,-29.743,-30.045,-30.326,-30.578,-30.837,
--31.161,-31.556,-31.951,-32.268,-32.513,-32.764,-33.073,-33.422,-33.772,-34.128,-34.511,-34.889,-35.196,-35.421,-35.640,-35.933,
--36.295,-36.663,-37.018,-37.397,-37.806,-38.191,-38.515,-38.831,-39.216,-39.657,-40.044,-40.312,-40.518,-40.772,-41.105,-41.461,
--41.789,-42.086,-42.345,-42.521,-42.590,-42.608,-42.668,-42.806,-42.984,-43.171,-43.388,-43.644,-43.876,-43.998,-44.010,-43.996,
--44.028,-44.093,-44.134,-44.139,-44.140,-44.162,-44.193,-44.215,-44.228,-44.234,-44.226,-44.209,-44.206,-44.227,-44.233,-44.166,
--44.011,-43.798,-43.566,-43.339,-43.151,-43.045,-43.001,-42.910,-42.662,-42.290,-41.969,-41.855,-41.933,-42.049,-42.068,-41.965,
--41.788,-41.575,-41.335,-41.057,-40.697,-40.182,-39.481,-38.653,-37.795,-36.955,-36.154,-35.515,-35.285,-35.602,-36.254,-36.738,
--36.666,-36.082,-35.368,-34.850,-34.543,-34.252,-33.835,-33.307,-32.755,-32.237,-31.777,-31.389,-31.051,-30.680,-30.171,-29.469,
--28.589,-27.582,-26.535,-25.592,-24.921,-24.565,-24.376,-24.135,-23.793,-23.551,-23.647,-24.068,-24.518,-24.680,-24.487,-24.122,
--23.777,-23.479,-23.156,-22.819,-22.595,-22.574,-22.654,-22.607,-22.299,-21.835,-21.484,-21.461,-21.789,-22.327,-22.893,-23.353,
--23.639,-23.757,-23.774,-23.795,-23.903,-24.130,-24.470,-24.911,-25.430,-25.973,-26.474,-26.912,-27.338,-27.813,-28.312,-28.711,
--28.885,-28.820,-28.625,-28.427,-28.275,-28.133,-27.942,-27.693,-27.429,-27.199,-27.010,-26.819,-26.588,-26.332,-26.113,-25.969,
--25.863,-25.728,-25.553,-25.407,-25.353,-25.362,-25.342,-25.242,-25.099,-24.969,-24.849,-24.700,-24.535,-24.438,-24.494,-24.743,
--25.215,-25.953,-26.946,-28.027,-28.908,-29.371,-29.417,-29.223,-28.955,-28.649,-28.263,-27.803,-27.368,-27.100,-27.083,-27.284,
--27.559,-27.747,-27.797,-27.807,-27.915,-28.138,-28.359,-28.477,-28.530,-28.634,-28.823,-29.030,-29.201,-29.364,-29.536,-29.647,
--29.652,-29.699,-30.074,-30.920,-32.042,-33.082,-33.840,-34.390,-34.896,-35.426,-35.961,-36.490,-37.026,-37.601,-38.331,-39.473,
--41.224,-43.379,-45.281,-46.288,-46.324,-45.912,-45.646,-45.703,-45.885,-46.023,-46.168,-46.427,-46.761,-47.056,-47.316,-47.669,
--48.193,-48.824,-49.459,-50.082,-50.711,-51.291,-51.707,-51.914,-51.982,-52.009,-52.018,-51.977,-51.881,-51.763,-51.630,-51.445,
--51.175,-50.825,-50.420,-49.970,-49.485,-49.011,-48.604,-48.277,-47.996,-47.723,-47.455,-47.202,-46.960,-46.721,-46.490,-46.278,
--46.078,-45.868,-45.649,-45.449,-45.280,-45.123,-44.953,-44.787,-44.666,-44.595,-44.537,-44.454,-44.355,-44.269,-44.196,-44.102,
--43.955,-43.748,-43.492,-43.204,-42.905,-42.620,-42.351,-42.066,-41.732,-41.350,-40.959,-40.585,-40.208,-39.793,-39.328,-38.837,
--38.351,-37.889,-37.450,-37.018,-36.561,-36.051,-35.490,-34.915,-34.362,-33.827,-33.274,-32.669,-32.003,-31.281,-30.528,-29.784,
--29.093,-28.460,-27.824,-27.109,-26.299,-25.447,-24.608,-23.779,-22.920,-22.021,-21.116,-20.229,-19.342,-18.427,-17.495,-16.589,
--15.720,-14.850,-13.933,-12.973,-12.010,-11.059,-10.095,-9.095,-8.078,-7.086,-6.126,-5.163,-4.177,-3.197,-2.270,-1.393,
--.493,.503,1.583,2.658,3.637,4.508,5.320,6.112,6.859,7.511,8.053,8.534,9.017,9.534,10.071,10.604,
-11.125,11.628,12.105,12.555,12.997,13.461,13.950,14.429,14.855,15.228,15.587,15.972,16.392,16.837,17.303,17.785,
-18.269,18.732,19.176,19.628,20.100,20.564,20.983,21.368,21.771,22.212,22.648,23.025,23.354,23.700,24.089,24.472,
-24.799,25.101,25.452,25.863,26.258,26.566,26.814,27.079,27.382,27.670,27.895,28.068,28.215,28.316,28.330,28.255,
-28.123,27.953,27.748,27.559,27.494,27.603,27.798,27.927,27.954,27.992,28.155,28.408,28.609,28.673,28.636,28.573,
-28.522,28.498,28.521,28.589,28.649,28.670,28.717,28.900,29.227,29.579,29.861,30.118,30.444,30.820,31.135,31.360,
-31.596,31.900,32.173,32.310,32.408,32.667,33.088,33.449,33.706,34.266,35.598,37.520,39.078,39.376,38.490,37.417,
-37.064,37.406,37.702,37.406,36.692,36.097,35.878,35.889,36.019,36.535,37.849,39.963,42.236,43.763,44.026,43.241,
-42.125,41.328,41.032,41.010,40.986,40.914,40.931,41.124,41.404,41.627,41.764,41.929,42.223,42.582,42.788,42.634,
-42.086,41.315,40.594,40.117,39.907,39.860,39.876,39.935,40.048,40.178,40.256,40.263,40.253,40.281,40.332,40.375,
-40.426,40.516,40.585,40.486,40.126,39.574,38.975,38.394,37.812,37.259,36.848,36.607,36.354,35.841,35.039,34.189,
-33.521,33.005,32.435,31.715,30.965,30.177,29.707,29.323,28.880,28.361,27.890,27.571,27.405,27.371,27.501,27.796,
-28.122,28.288,28.245,28.123,28.057,28.018,27.881,27.618,27.349,27.201,27.184,27.219,27.238,27.204,27.100,26.970,
-26.956,27.185,27.592,27.907,27.915,27.696,27.556,27.707,28.072,28.420,28.614,28.674,28.657,28.569,28.428,28.321,
-28.332,28.435,28.528,28.572,28.650,28.863,29.205,29.567,29.853,30.051,30.199,30.318,30.396,30.434,30.471,30.581,
-30.811,31.115,31.341,31.319,31.007,30.537,30.101,29.788,29.546,29.301,29.065,28.885,28.721,28.440,27.938,27.256,
-26.550,25.963,25.542,25.244,24.980,24.663,24.257,23.800,23.365,22.981,22.615,22.257,21.991,21.930,22.077,22.289,
-22.400,22.348,22.162,21.866,21.462,20.994,20.557,20.185,19.785,19.235,18.548,17.886,17.390,17.045,16.728,16.359,
-15.957,15.575,15.242,14.986,14.863,14.913,15.106,15.356,15.597,15.805,15.950,15.969,15.818,15.533,15.224,15.002,
-14.919,14.968,15.107,15.283,15.425,15.418,15.104,14.387,13.421,12.647,12.467,12.744,12.747,11.846,10.404,9.794,
-11.265,14.655,18.340,20.566,20.832,19.976,19.069,18.441,17.758,16.765,15.669,14.839,14.357,14.002,13.567,13.033,
-12.461,11.854,11.210,10.609,10.145,9.791,9.404,8.886,8.276,7.668,7.080,6.460,5.790,5.120,4.488,3.849,
-3.132,2.338,1.557,.878,.308,-.222,-.796,-1.468,-2.255,-3.138,-4.069,-4.994,-5.895,-6.796,-7.729,-8.699,
--9.670,-10.609,-11.520,-12.450,-13.446,-14.509,-15.584,-16.601,-17.518,-18.326,-19.046,-19.722,-20.424,-21.212,-22.034,-22.681,
--22.875,-22.455,-21.485,-20.166,-18.676,-17.122,-15.653,-14.536,-14.029,-14.158,-14.647,-15.108,-15.302,-15.216,-14.938,-14.520,
--13.976,-13.354,-12.732,-12.132,-11.474,-10.673,-9.805,-9.157,-9.063,-9.636,-10.638,-11.635,-12.338,-12.835,-13.480,-14.554,
--15.992,-17.417,-18.409,-18.751,-18.502,-17.922,-17.349,-17.079,-17.253,-17.848,-18.788,-20.054,-21.643,-23.410,-25.030,-26.202,
--26.890,-27.306,-27.667,-28.015,-28.301,-28.550,-28.863,-29.265,-29.676,-30.035,-30.358,-30.584,-30.484,-29.939,-29.375,-29.734,
--31.765,-35.244,-38.983,-41.687,-42.833,-42.765,-42.133,-41.381,-40.759,-40.542,-41.010,-42.205,-43.841,-45.531,-47.046,-48.319,
--49.282,-49.824,-49.918,-49.690,-49.313,-48.881,-48.436,-48.061,-47.848,-47.775,-47.694,-47.497,-47.231,-47.000,-46.820,-46.664,
--46.621,-46.871,-47.445,-48.107,-48.591,-48.929,-49.406,-50.177,-51.064,-51.809,-52.430,-53.176,-54.172,-55.264,-56.271,-57.204,
--58.119,-58.862,-59.185,-59.122,-59.006,-58.995,-58.718,-57.658,-55.851,-53.956,-52.493,-51.171,-49.206,-46.306,-43.160,-40.856,
--39.887,-39.770,-39.536,-38.498,-36.632,-34.456,-32.615,-31.459,-30.841,-30.295,-29.491,-28.564,-27.955,-27.939,-28.348,-28.774,
--28.977,-29.047,-29.213,-29.577,-30.047,-30.474,-30.804,-31.115,-31.521,-32.022,-32.451,-32.603,-32.432,-32.105,-31.838,-31.708,
--31.654,-31.595,-31.471,-31.227,-30.860,-30.533,-30.484,-30.726,-30.915,-30.678,-30.049,-29.404,-28.968,-28.675,-28.740,-30.107,
--33.773,-39.376,-44.778,-47.537,-46.968,-44.619,-42.658,-41.951,-41.782,-41.143,-39.894,-38.637,-37.837,-37.363,-36.813,-36.020,
--35.151,-34.447,-33.953,-33.488,-32.827,-31.968,-31.206,-30.868,-30.908,-30.901,-30.577,-30.300,-30.800,-32.319,-34.206,-35.541,
--36.097,-36.519,-37.511,-39.060,-40.547,-41.465,-41.827,-41.906,-41.819,-41.486,-40.862,-40.028,-39.071,-38.001,-36.821,-35.591,
--34.376,-33.202,-32.110,-31.198,-30.512,-29.941,-29.296,-28.514,-27.699,-26.944,-26.189,-25.324,-24.371,-23.477,-22.736,-22.118,
--21.578,-21.154,-20.881,-20.677,-20.397,-19.990,-19.505,-18.949,-18.225,-17.269,-16.164,-15.036,-13.883,-12.616,-11.288,-10.156,
--9.428,-8.999,-8.537,-7.813,-6.874,-5.893,-4.944,-3.999,-3.053,-2.148,-1.265,-.301,.807,1.996,3.146,4.202,
-5.172,6.030,6.740,7.363,8.064,8.943,9.891,10.705,11.327,11.913,12.636,13.504,14.402,15.277,16.190,17.191,
-18.217,19.154,19.957,20.673,21.350,21.992,22.599,23.204,23.842,24.507,25.183,25.897,26.705,27.593,28.432,29.053,
-29.396,29.571,29.769,30.089,30.450,30.669,30.634,30.411,30.171,29.983,29.691,29.007,27.776,26.186,24.740,23.987,
-24.195,25.197,26.534,27.800,28.897,29.974,31.125,32.205,32.990,33.474,33.907,34.502,35.175,35.657,35.834,35.876,
-36.006,36.259,36.533,36.815,37.206,37.740,38.282,38.690,38.988,39.289,39.601,39.823,39.946,40.136,40.549,41.129,
-41.677,42.081,42.389,42.670,42.875,42.850,42.373,41.220,39.409,37.543,36.720,37.651,39.627,40.606,38.760,34.172,
-28.953,25.575,25.042,26.548,28.600,30.220,31.205,31.705,31.861,31.789,31.607,31.348,30.954,30.427,29.904,29.484,
-29.045,28.364,27.427,26.513,25.887,25.493,25.039,24.359,23.600,23.007,22.638,22.338,21.967,21.555,21.207,20.928,
-20.595,20.105,19.496,18.886,18.338,17.810,17.240,16.651,16.125,15.676,15.188,14.536,13.753,13.034,12.538,12.221,
-11.896,11.453,10.965,10.555,10.231,9.897,9.510,9.148,8.899,8.739,8.560,8.290,7.915,7.421,6.775,6.018,
-5.314,4.839,4.616,4.507,4.371,4.194,4.050,3.982,3.951,3.889,3.750,3.508,3.149,2.706,2.246,1.818,
-1.404,.969,.527,.119,-.271,-.724,-1.255,-1.738,-2.019,-2.103,-2.177,-2.408,-2.767,-3.094,-3.312,-3.510,
--3.801,-4.164,-4.473,-4.656,-4.774,-4.943,-5.203,-5.496,-5.730,-5.850,-5.868,-5.863,-5.938,-6.146,-6.434,-6.682,
--6.798,-6.790,-6.730,-6.686,-6.686,-6.730,-6.784,-6.790,-6.715,-6.608,-6.558,-6.586,-6.593,-6.478,-6.281,-6.159,
--6.193,-6.279,-6.245,-6.046,-5.786,-5.566,-5.385,-5.214,-5.089,-5.066,-5.116,-5.156,-5.183,-5.302,-5.579,-5.918,
--6.165,-6.280,-6.312,-6.212,-5.803,-5.001,-4.000,-3.091,-2.349,-1.642,-1.004,-.855,-1.615,-3.100,-4.471,-4.928,
--4.438,-3.704,-3.421,-3.676,-4.070,-4.292,-4.437,-4.765,-5.290,-5.702,-5.692,-5.277,-4.785,-4.536,-4.549,-4.562,
--4.317,-3.824,-3.332,-3.064,-2.993,-2.913,-2.693,-2.407,-2.219,-2.186,-2.215,-2.196,-2.102,-1.959,-1.795,-1.636,
--1.535,-1.525,-1.563,-1.558,-1.487,-1.431,-1.468,-1.571,-1.650,-1.678,-1.720,-1.830,-1.974,-2.090,-2.186,-2.322,
--2.505,-2.668,-2.762,-2.822,-2.912,-3.047,-3.193,-3.349,-3.538,-3.734,-3.842,-3.810,-3.722,-3.739,-3.941,-4.259,
--4.572,-4.828,-5.064,-5.319,-5.597,-5.883,-6.160,-6.414,-6.637,-6.852,-7.106,-7.419,-7.742,-8.013,-8.227,-8.443,
--8.699,-8.975,-9.234,-9.480,-9.734,-9.986,-10.199,-10.372,-10.552,-10.766,-10.973,-11.111,-11.184,-11.256,-11.369,-11.495,
--11.596,-11.685,-11.803,-11.960,-12.122,-12.275,-12.450,-12.685,-12.966,-13.253,-13.532,-13.825,-14.139,-14.447,-14.715,-14.940,
--15.146,-15.350,-15.562,-15.793,-16.045,-16.291,-16.500,-16.680,-16.879,-17.132,-17.411,-17.674,-17.932,-18.246,-18.641,-19.064,
--19.448,-19.793,-20.157,-20.567,-20.984,-21.365,-21.715,-22.074,-22.452,-22.830,-23.205,-23.602,-24.030,-24.449,-24.812,-25.122,
--25.430,-25.769,-26.120,-26.447,-26.748,-27.057,-27.406,-27.800,-28.217,-28.628,-29.005,-29.340,-29.643,-29.928,-30.198,-30.460,
--30.742,-31.084,-31.480,-31.869,-32.191,-32.458,-32.739,-33.070,-33.423,-33.760,-34.095,-34.452,-34.803,-35.087,-35.297,-35.518,
--35.827,-36.210,-36.596,-36.957,-37.325,-37.712,-38.075,-38.392,-38.724,-39.139,-39.609,-40.022,-40.319,-40.566,-40.858,-41.204,
--41.540,-41.838,-42.124,-42.401,-42.600,-42.676,-42.691,-42.770,-42.958,-43.196,-43.409,-43.596,-43.781,-43.945,-44.039,-44.057,
--44.057,-44.088,-44.141,-44.186,-44.222,-44.268,-44.324,-44.370,-44.405,-44.440,-44.468,-44.469,-44.449,-44.450,-44.485,-44.500,
--44.423,-44.258,-44.069,-43.895,-43.713,-43.516,-43.365,-43.311,-43.290,-43.155,-42.854,-42.507,-42.286,-42.224,-42.192,-42.076,
--41.910,-41.829,-41.895,-41.992,-41.879,-41.362,-40.461,-39.437,-38.609,-38.085,-37.655,-37.019,-36.160,-35.449,-35.312,-35.773,
--36.375,-36.582,-36.228,-35.577,-34.998,-34.634,-34.372,-34.030,-33.523,-32.903,-32.301,-31.842,-31.557,-31.328,-30.956,-30.305,
--29.405,-28.391,-27.379,-26.420,-25.561,-24.891,-24.459,-24.190,-23.937,-23.644,-23.442,-23.520,-23.903,-24.369,-24.620,-24.513,
--24.140,-23.686,-23.256,-22.856,-22.501,-22.277,-22.254,-22.345,-22.333,-22.060,-21.607,-21.251,-21.238,-21.596,-22.153,-22.701,
--23.131,-23.434,-23.642,-23.792,-23.938,-24.145,-24.456,-24.866,-25.333,-25.811,-26.267,-26.697,-27.125,-27.586,-28.077,-28.524,
--28.814,-28.882,-28.767,-28.567,-28.361,-28.155,-27.920,-27.643,-27.353,-27.100,-26.919,-26.804,-26.711,-26.586,-26.403,-26.180,
--25.950,-25.718,-25.477,-25.247,-25.080,-25.004,-24.968,-24.884,-24.719,-24.531,-24.400,-24.338,-24.310,-24.310,-24.393,-24.634,
--25.085,-25.795,-26.804,-28.064,-29.348,-30.322,-30.749,-30.646,-30.230,-29.717,-29.195,-28.649,-28.076,-27.546,-27.177,-27.049,
--27.126,-27.247,-27.240,-27.093,-26.984,-27.111,-27.462,-27.817,-27.998,-28.059,-28.181,-28.426,-28.688,-28.882,-29.065,-29.307,
--29.534,-29.629,-29.679,-29.995,-30.792,-31.918,-32.983,-33.735,-34.228,-34.650,-35.105,-35.598,-36.133,-36.713,-37.318,-38.007,
--39.031,-40.658,-42.755,-44.676,-45.730,-45.812,-45.473,-45.332,-45.522,-45.768,-45.873,-45.955,-46.200,-46.585,-46.956,-47.281,
--47.690,-48.260,-48.890,-49.451,-49.957,-50.512,-51.120,-51.642,-51.951,-52.055,-52.059,-52.035,-51.992,-51.925,-51.835,-51.700,
--51.484,-51.190,-50.861,-50.520,-50.133,-49.666,-49.166,-48.733,-48.420,-48.181,-47.940,-47.673,-47.407,-47.171,-46.964,-46.780,
--46.617,-46.457,-46.275,-46.072,-45.885,-45.753,-45.665,-45.582,-45.482,-45.376,-45.274,-45.169,-45.057,-44.960,-44.908,-44.886,
--44.837,-44.706,-44.485,-44.206,-43.910,-43.616,-43.319,-43.004,-42.657,-42.291,-41.926,-41.568,-41.197,-40.789,-40.350,-39.910,
--39.473,-39.010,-38.498,-37.958,-37.436,-36.943,-36.446,-35.914,-35.357,-34.801,-34.243,-33.655,-33.023,-32.362,-31.687,-30.994,
--30.281,-29.575,-28.901,-28.241,-27.538,-26.758,-25.925,-25.087,-24.256,-23.402,-22.502,-21.575,-20.650,-19.736,-18.818,-17.899,
--16.999,-16.131,-15.278,-14.404,-13.494,-12.554,-11.593,-10.611,-9.607,-8.599,-7.602,-6.617,-5.629,-4.641,-3.685,-2.782,
--1.898,-.955,.095,1.203,2.255,3.169,3.963,4.716,5.470,6.181,6.783,7.274,7.727,8.215,8.744,9.273,
-9.772,10.253,10.740,11.228,11.698,12.149,12.607,13.084,13.556,13.985,14.367,14.738,15.130,15.547,15.976,16.421,
-16.898,17.397,17.884,18.334,18.768,19.219,19.679,20.103,20.475,20.842,21.266,21.741,22.194,22.573,22.905,23.247,
-23.618,23.994,24.364,24.752,25.170,25.580,25.939,26.256,26.569,26.886,27.162,27.357,27.485,27.579,27.633,27.608,
-27.493,27.322,27.139,26.984,26.903,26.950,27.117,27.306,27.412,27.442,27.510,27.693,27.934,28.107,28.160,28.144,
-28.119,28.098,28.081,28.090,28.135,28.179,28.201,28.267,28.469,28.797,29.130,29.385,29.612,29.895,30.216,30.490,
-30.722,31.009,31.367,31.676,31.866,32.077,32.481,32.988,33.345,33.614,34.348,36.017,38.274,40.046,40.579,40.266,
-40.228,41.049,42.107,42.256,41.031,39.050,37.315,36.363,36.162,36.603,37.764,39.638,41.751,43.290,43.664,42.954,
-41.829,41.025,40.848,41.079,41.272,41.167,40.866,40.654,40.685,40.846,40.928,40.874,40.829,40.941,41.161,41.254,
-41.024,40.498,39.911,39.507,39.357,39.343,39.294,39.145,38.968,38.859,38.836,38.834,38.810,38.793,38.837,38.951,
-39.107,39.273,39.409,39.435,39.254,38.853,38.335,37.813,37.293,36.728,36.154,35.712,35.461,35.243,34.820,34.131,
-33.356,32.687,32.111,31.494,30.806,30.177,29.491,29.162,28.923,28.614,28.191,27.746,27.380,27.132,27.040,27.175,
-27.539,27.969,28.242,28.286,28.232,28.226,28.243,28.147,27.887,27.580,27.382,27.339,27.387,27.431,27.396,27.254,
-27.074,27.042,27.317,27.821,28.239,28.302,28.072,27.881,27.978,28.298,28.584,28.684,28.646,28.576,28.503,28.411,
-28.333,28.334,28.410,28.486,28.515,28.551,28.687,28.943,29.246,29.514,29.721,29.887,30.025,30.130,30.197,30.261,
-30.387,30.626,30.946,31.200,31.214,30.926,30.463,30.038,29.769,29.606,29.435,29.211,28.968,28.717,28.386,27.893,
-27.240,26.535,25.911,25.451,25.149,24.921,24.651,24.268,23.797,23.330,22.927,22.574,22.243,21.973,21.839,21.850,
-21.919,21.941,21.879,21.736,21.489,21.103,20.617,20.133,19.700,19.230,18.605,17.850,17.153,16.686,16.435,16.244,
-15.987,15.664,15.336,15.042,14.793,14.628,14.611,14.759,15.012,15.265,15.448,15.543,15.549,15.454,15.241,14.943,
-14.670,14.552,14.625,14.783,14.878,14.871,14.818,14.688,14.283,13.459,12.440,11.711,11.480,11.336,10.703,9.721,
-9.475,11.063,14.377,17.962,20.196,20.587,19.869,19.002,18.289,17.476,16.411,15.349,14.617,14.227,13.932,13.549,
-13.082,12.578,12.010,11.364,10.742,10.270,9.931,9.568,9.061,8.446,7.824,7.228,6.606,5.927,5.229,4.558,
-3.894,3.181,2.405,1.620,.900,.285,-.242,-.749,-1.340,-2.096,-3.016,-4.006,-4.960,-5.849,-6.732,-7.676,
--8.672,-9.655,-10.582,-11.484,-12.435,-13.474,-14.566,-15.631,-16.612,-17.507,-18.360,-19.212,-20.086,-21.005,-21.972,-22.920,
--23.665,-23.984,-23.757,-23.055,-22.051,-20.863,-19.536,-18.173,-17.041,-16.439,-16.428,-16.730,-16.945,-16.879,-16.640,-16.434,
--16.303,-16.124,-15.807,-15.430,-15.119,-14.834,-14.366,-13.594,-12.746,-12.310,-12.616,-13.495,-14.390,-14.857,-14.952,-15.129,
--15.765,-16.810,-17.881,-18.615,-18.901,-18.836,-18.589,-18.332,-18.230,-18.379,-18.786,-19.450,-20.481,-22.018,-23.984,-25.976,
--27.514,-28.416,-28.884,-29.213,-29.514,-29.752,-29.950,-30.223,-30.600,-30.951,-31.160,-31.252,-31.260,-31.061,-30.558,-30.110,
--30.579,-32.671,-36.155,-39.833,-42.404,-43.375,-43.174,-42.531,-41.931,-41.578,-41.627,-42.205,-43.234,-44.432,-45.564,-46.619,
--47.656,-48.573,-49.130,-49.219,-48.991,-48.677,-48.355,-47.992,-47.627,-47.400,-47.368,-47.393,-47.290,-47.037,-46.757,-46.551,
--46.439,-46.478,-46.786,-47.374,-48.043,-48.560,-48.953,-49.486,-50.317,-51.296,-52.177,-52.937,-53.773,-54.789,-55.862,-56.854,
--57.798,-58.773,-59.678,-60.333,-60.778,-61.247,-61.749,-61.859,-61.159,-59.826,-58.520,-57.564,-56.438,-54.320,-51.123,-47.802,
--45.521,-44.621,-44.427,-43.980,-42.820,-41.149,-39.437,-37.958,-36.609,-35.057,-33.069,-30.786,-28.694,-27.284,-26.705,-26.737,
--27.063,-27.514,-28.060,-28.674,-29.269,-29.734,-29.992,-30.070,-30.128,-30.380,-30.866,-31.320,-31.375,-30.977,-30.476,-30.256,
--30.326,-30.392,-30.280,-30.094,-29.954,-29.784,-29.530,-29.419,-29.756,-30.452,-30.991,-30.967,-30.474,-29.863,-29.375,-29.354,
--30.658,-34.228,-39.821,-45.405,-48.431,-47.978,-45.502,-43.299,-42.399,-42.087,-41.263,-39.802,-38.470,-37.847,-37.722,-37.485,
--36.825,-35.907,-35.034,-34.313,-33.636,-32.880,-32.091,-31.483,-31.223,-31.203,-31.107,-30.811,-30.672,-31.230,-32.554,-34.031,
--34.948,-35.253,-35.573,-36.481,-37.900,-39.289,-40.250,-40.785,-41.031,-40.984,-40.573,-39.861,-38.995,-38.026,-36.897,-35.621,
--34.358,-33.256,-32.309,-31.441,-30.647,-29.969,-29.361,-28.692,-27.905,-27.082,-26.313,-25.564,-24.756,-23.915,-23.165,-22.556,
--22.012,-21.468,-20.974,-20.608,-20.333,-20.024,-19.618,-19.143,-18.591,-17.866,-16.905,-15.784,-14.628,-13.447,-12.175,-10.884,
--9.830,-9.198,-8.848,-8.416,-7.667,-6.681,-5.673,-4.743,-3.841,-2.920,-1.996,-1.073,-.087,1.016,2.193,3.356,
-4.465,5.514,6.458,7.227,7.849,8.482,9.265,10.158,11.001,11.708,12.364,13.097,13.929,14.790,15.642,16.531,
-17.494,18.481,19.401,20.218,20.962,21.673,22.355,23.001,23.627,24.260,24.919,25.632,26.434,27.330,28.237,28.996,
-29.490,29.751,29.944,30.225,30.595,30.895,30.945,30.712,30.341,30.017,29.770,29.427,28.734,27.576,26.127,24.818,
-24.154,24.440,25.586,27.164,28.706,30.020,31.195,32.323,33.278,33.846,34.035,34.139,34.443,34.938,35.406,35.731,
-35.996,36.286,36.533,36.670,36.824,37.211,37.835,38.440,38.820,39.063,39.380,39.786,40.093,40.226,40.370,40.730,
-41.264,41.760,42.125,42.448,42.789,43.051,43.071,42.710,41.809,40.311,38.662,37.961,39.180,41.910,44.058,43.270,
-38.973,33.006,28.176,26.168,26.724,28.467,30.172,31.305,31.834,31.926,31.826,31.736,31.655,31.407,30.899,30.276,
-29.743,29.291,28.734,27.997,27.252,26.687,26.233,25.648,24.833,23.972,23.308,22.875,22.510,22.089,21.674,21.390,
-21.226,21.013,20.598,19.987,19.311,18.675,18.075,17.471,16.893,16.425,16.066,15.667,15.050,14.223,13.411,12.844,
-12.522,12.238,11.827,11.323,10.870,10.522,10.204,9.845,9.473,9.157,8.903,8.654,8.371,8.041,7.626,7.066,
-6.381,5.714,5.236,4.983,4.845,4.699,4.522,4.362,4.245,4.153,4.060,3.942,3.749,3.426,2.977,2.490,
-2.050,1.655,1.249,.815,.389,-.017,-.443,-.901,-1.303,-1.537,-1.628,-1.740,-2.010,-2.400,-2.751,-2.984,
--3.167,-3.409,-3.723,-4.025,-4.247,-4.405,-4.564,-4.780,-5.065,-5.374,-5.624,-5.747,-5.767,-5.812,-5.993,-6.293,
--6.578,-6.734,-6.774,-6.781,-6.808,-6.845,-6.866,-6.858,-6.808,-6.701,-6.566,-6.484,-6.502,-6.565,-6.574,-6.511,
--6.455,-6.453,-6.433,-6.292,-6.029,-5.743,-5.496,-5.258,-5.003,-4.801,-4.746,-4.821,-4.923,-5.016,-5.176,-5.445,
--5.722,-5.870,-5.892,-5.891,-5.860,-5.629,-5.091,-4.375,-3.660,-2.894,-1.874,-.697,.069,-.124,-1.124,-2.100,
--2.347,-1.982,-1.716,-1.994,-2.547,-2.846,-2.810,-2.899,-3.511,-4.476,-5.236,-5.427,-5.185,-4.898,-4.775,-4.703,
--4.460,-3.987,-3.440,-3.030,-2.834,-2.751,-2.615,-2.359,-2.058,-1.832,-1.732,-1.709,-1.684,-1.605,-1.449,-1.215,
--.948,-.748,-.687,-.727,-.750,-.690,-.604,-.590,-.667,-.770,-.858,-.959,-1.103,-1.254,-1.357,-1.426,
--1.537,-1.719,-1.913,-2.043,-2.105,-2.156,-2.237,-2.355,-2.516,-2.732,-2.972,-3.152,-3.218,-3.216,-3.261,-3.413,
--3.639,-3.877,-4.104,-4.338,-4.584,-4.838,-5.107,-5.403,-5.705,-5.965,-6.177,-6.400,-6.692,-7.030,-7.344,-7.602,
--7.845,-8.122,-8.422,-8.708,-8.971,-9.230,-9.479,-9.682,-9.834,-9.985,-10.183,-10.405,-10.588,-10.716,-10.834,-10.979,
--11.126,-11.238,-11.331,-11.461,-11.649,-11.855,-12.043,-12.233,-12.473,-12.772,-13.092,-13.394,-13.675,-13.940,-14.184,-14.398,
--14.593,-14.791,-15.000,-15.214,-15.433,-15.670,-15.924,-16.171,-16.398,-16.621,-16.864,-17.128,-17.397,-17.679,-18.007,-18.397,
--18.815,-19.217,-19.593,-19.970,-20.356,-20.735,-21.095,-21.453,-21.833,-22.225,-22.609,-22.990,-23.389,-23.804,-24.191,-24.523,
--24.832,-25.173,-25.555,-25.933,-26.268,-26.578,-26.912,-27.290,-27.695,-28.100,-28.497,-28.877,-29.227,-29.540,-29.824,-30.095,
--30.366,-30.659,-30.998,-31.382,-31.773,-32.125,-32.441,-32.761,-33.104,-33.444,-33.756,-34.061,-34.389,-34.718,-34.993,-35.209,
--35.441,-35.761,-36.153,-36.544,-36.898,-37.243,-37.601,-37.955,-38.297,-38.672,-39.119,-39.593,-39.993,-40.289,-40.563,-40.896,
--41.269,-41.604,-41.882,-42.153,-42.435,-42.664,-42.781,-42.837,-42.943,-43.147,-43.387,-43.583,-43.722,-43.835,-43.928,-43.985,
--44.012,-44.047,-44.108,-44.180,-44.250,-44.329,-44.421,-44.497,-44.534,-44.559,-44.611,-44.678,-44.708,-44.693,-44.682,-44.707,
--44.713,-44.627,-44.467,-44.319,-44.211,-44.071,-43.850,-43.630,-43.541,-43.578,-43.578,-43.405,-43.105,-42.834,-42.656,-42.479,
--42.222,-41.978,-41.967,-42.289,-42.729,-42.820,-42.167,-40.790,-39.202,-38.078,-37.730,-37.841,-37.756,-37.087,-36.068,-35.304,
--35.193,-35.587,-36.001,-36.059,-35.741,-35.269,-34.847,-34.510,-34.162,-33.692,-33.087,-32.467,-31.997,-31.738,-31.550,-31.176,
--30.452,-29.431,-28.307,-27.243,-26.287,-25.437,-24.728,-24.224,-23.918,-23.720,-23.543,-23.421,-23.483,-23.792,-24.222,-24.508,
--24.453,-24.077,-23.570,-23.103,-22.716,-22.382,-22.125,-22.012,-22.022,-21.994,-21.763,-21.366,-21.058,-21.089,-21.482,-22.037,
--22.533,-22.894,-23.179,-23.457,-23.751,-24.062,-24.413,-24.826,-25.282,-25.737,-26.161,-26.562,-26.972,-27.415,-27.877,-28.303,
--28.615,-28.756,-28.729,-28.591,-28.396,-28.160,-27.882,-27.589,-27.340,-27.172,-27.068,-26.986,-26.901,-26.810,-26.697,-26.520,
--26.255,-25.930,-25.603,-25.323,-25.113,-24.973,-24.881,-24.789,-24.649,-24.462,-24.299,-24.237,-24.291,-24.421,-24.599,-24.852,
--25.238,-25.805,-26.593,-27.624,-28.847,-30.074,-31.026,-31.488,-31.434,-31.009,-30.398,-29.730,-29.062,-28.422,-27.849,-27.404,
--27.139,-27.031,-26.942,-26.713,-26.349,-26.073,-26.125,-26.496,-26.925,-27.189,-27.336,-27.563,-27.932,-28.310,-28.600,-28.888,
--29.277,-29.662,-29.840,-29.848,-30.035,-30.710,-31.779,-32.835,-33.571,-34.014,-34.363,-34.757,-35.234,-35.813,-36.463,-37.075,
--37.630,-38.406,-39.818,-41.887,-43.981,-45.271,-45.502,-45.195,-45.046,-45.257,-45.543,-45.663,-45.732,-45.979,-46.409,-46.850,
--47.237,-47.694,-48.305,-48.964,-49.509,-49.942,-50.398,-50.936,-51.456,-51.824,-52.014,-52.086,-52.091,-52.044,-51.962,-51.859,
--51.710,-51.474,-51.166,-50.858,-50.581,-50.270,-49.847,-49.342,-48.875,-48.530,-48.269,-48.009,-47.729,-47.481,-47.304,-47.183,
--47.080,-46.969,-46.841,-46.685,-46.506,-46.342,-46.234,-46.185,-46.158,-46.115,-46.043,-45.943,-45.819,-45.686,-45.581,-45.528,
--45.509,-45.466,-45.343,-45.135,-44.877,-44.603,-44.321,-44.012,-43.658,-43.272,-42.892,-42.546,-42.212,-41.838,-41.397,-40.929,
--40.493,-40.091,-39.658,-39.139,-38.559,-37.992,-37.474,-36.972,-36.438,-35.867,-35.278,-34.672,-34.032,-33.367,-32.716,-32.101,
--31.493,-30.842,-30.139,-29.417,-28.700,-27.970,-27.195,-26.374,-25.533,-24.694,-23.842,-22.956,-22.028,-21.079,-20.130,-19.195,
--18.281,-17.393,-16.536,-15.698,-14.856,-13.980,-13.056,-12.092,-11.110,-10.128,-9.143,-8.144,-7.128,-6.116,-5.136,-4.204,
--3.296,-2.357,-1.340,-.249,.845,1.848,2.715,3.474,4.190,4.881,5.506,6.026,6.469,6.912,7.412,7.950,
-8.474,8.958,9.430,9.920,10.421,10.898,11.340,11.772,12.220,12.673,13.104,13.507,13.910,14.333,14.766,15.184,
-15.594,16.039,16.536,17.046,17.512,17.929,18.347,18.802,19.257,19.659,20.020,20.416,20.892,21.395,21.828,22.164,
-22.464,22.802,23.191,23.602,24.015,24.437,24.864,25.272,25.641,25.978,26.289,26.564,26.780,26.926,26.998,26.992,
-26.918,26.818,26.741,26.697,26.656,26.612,26.610,26.693,26.834,26.969,27.075,27.191,27.343,27.489,27.570,27.591,
-27.609,27.646,27.666,27.646,27.620,27.631,27.669,27.714,27.803,27.998,28.284,28.570,28.800,29.024,29.305,29.612,
-29.877,30.123,30.443,30.836,31.185,31.448,31.769,32.279,32.842,33.216,33.515,34.285,35.909,38.016,39.759,40.806,
-41.813,43.648,46.176,48.073,47.991,45.816,42.702,40.001,38.378,37.862,38.372,39.832,41.827,43.488,43.982,43.171,
-41.723,40.565,40.210,40.521,40.972,41.092,40.771,40.254,39.898,39.868,40.029,40.121,40.031,39.885,39.866,39.989,
-40.084,39.973,39.652,39.281,39.022,38.905,38.825,38.659,38.383,38.081,37.858,37.745,37.691,37.639,37.600,37.628,
-37.761,37.973,38.199,38.356,38.360,38.163,37.791,37.333,36.855,36.331,35.715,35.052,34.491,34.123,33.859,33.508,
-32.986,32.379,31.801,31.243,30.636,30.007,29.491,28.894,28.682,28.555,28.365,28.051,27.665,27.285,26.966,26.778,
-26.825,27.142,27.597,27.965,28.136,28.189,28.246,28.298,28.225,27.978,27.677,27.496,27.503,27.622,27.714,27.674,
-27.481,27.241,27.167,27.427,27.960,28.463,28.648,28.512,28.320,28.312,28.477,28.627,28.638,28.554,28.470,28.413,
-28.357,28.309,28.309,28.366,28.427,28.455,28.481,28.570,28.742,28.959,29.171,29.362,29.535,29.688,29.812,29.903,
-29.982,30.089,30.269,30.522,30.758,30.829,30.652,30.312,30.003,29.855,29.820,29.737,29.503,29.154,28.775,28.389,
-27.934,27.354,26.681,26.022,25.492,25.129,24.870,24.597,24.230,23.782,23.331,22.933,22.580,22.245,21.945,21.731,
-21.621,21.576,21.543,21.490,21.378,21.135,20.709,20.151,19.584,19.073,18.540,17.876,17.116,16.450,16.046,15.885,
-15.794,15.633,15.401,15.169,14.965,14.768,14.589,14.508,14.597,14.830,15.082,15.235,15.264,15.215,15.110,14.909,
-14.592,14.265,14.118,14.231,14.460,14.564,14.483,14.380,14.372,14.281,13.791,12.874,11.916,11.292,10.915,10.413,
-9.803,9.799,11.186,13.888,16.817,18.758,19.341,19.085,18.622,18.095,17.320,16.296,15.333,14.696,14.324,13.968,
-13.510,13.014,12.542,12.040,11.459,10.876,10.417,10.082,9.738,9.266,8.684,8.076,7.472,6.836,6.143,5.429,
-4.737,4.064,3.366,2.613,1.823,1.050,.354,-.238,-.776,-1.372,-2.126,-3.036,-3.997,-4.910,-5.775,-6.674,
--7.663,-8.704,-9.714,-10.656,-11.578,-12.551,-13.600,-14.682,-15.725,-16.682,-17.564,-18.428,-19.350,-20.375,-21.491,-22.630,
--23.670,-24.458,-24.867,-24.859,-24.500,-23.881,-23.031,-21.948,-20.727,-19.630,-18.938,-18.707,-18.687,-18.548,-18.187,-17.799,
--17.627,-17.700,-17.835,-17.884,-17.893,-17.985,-18.111,-18.007,-17.468,-16.635,-15.964,-15.833,-16.193,-16.627,-16.781,-16.700,
--16.736,-17.144,-17.839,-18.527,-19.000,-19.251,-19.353,-19.347,-19.286,-19.289,-19.478,-19.871,-20.442,-21.274,-22.549,-24.300,
--26.228,-27.872,-28.977,-29.643,-30.101,-30.461,-30.734,-30.997,-31.379,-31.843,-32.155,-32.133,-31.876,-31.612,-31.398,-31.158,
--31.077,-31.776,-33.829,-37.062,-40.444,-42.815,-43.713,-43.511,-42.897,-42.354,-42.097,-42.238,-42.800,-43.628,-44.465,-45.208,
--45.981,-46.890,-47.773,-48.306,-48.366,-48.151,-47.929,-47.748,-47.500,-47.189,-46.992,-47.017,-47.125,-47.075,-46.804,-46.476,
--46.266,-46.215,-46.307,-46.582,-47.061,-47.647,-48.199,-48.735,-49.429,-50.377,-51.446,-52.433,-53.315,-54.227,-55.218,-56.183,
--57.046,-57.904,-58.863,-59.833,-60.634,-61.283,-61.972,-62.700,-63.092,-62.796,-61.968,-61.120,-60.426,-59.381,-57.373,-54.526,
--51.777,-50.018,-49.299,-48.923,-48.252,-47.261,-46.340,-45.703,-45.045,-43.762,-41.458,-38.291,-34.899,-31.949,-29.736,-28.168,
--27.118,-26.669,-26.956,-27.836,-28.847,-29.530,-29.728,-29.563,-29.268,-29.105,-29.303,-29.851,-30.370,-30.414,-29.989,-29.616,
--29.723,-30.113,-30.249,-30.002,-29.794,-29.916,-30.041,-29.711,-29.181,-29.326,-30.605,-32.423,-33.739,-34.127,-33.979,-33.872,
--34.203,-35.480,-38.363,-42.817,-47.381,-49.906,-49.394,-46.929,-44.530,-43.229,-42.491,-41.390,-39.881,-38.698,-38.318,-38.406,
--38.290,-37.674,-36.754,-35.817,-34.952,-34.111,-33.296,-32.607,-32.147,-31.911,-31.750,-31.487,-31.154,-31.094,-31.676,-32.838,
--34.013,-34.646,-34.771,-34.961,-35.685,-36.854,-38.014,-38.855,-39.369,-39.608,-39.509,-39.029,-38.304,-37.525,-36.715,-35.753,
--34.617,-33.477,-32.506,-31.698,-30.938,-30.185,-29.487,-28.834,-28.132,-27.325,-26.488,-25.714,-24.992,-24.253,-23.504,-22.828,
--22.255,-21.723,-21.185,-20.697,-20.332,-20.054,-19.746,-19.351,-18.887,-18.336,-17.601,-16.629,-15.510,-14.381,-13.258,-12.074,
--10.874,-9.873,-9.224,-8.794,-8.259,-7.435,-6.427,-5.451,-4.573,-3.697,-2.736,-1.712,-.678,.375,1.479,2.612,
-3.727,4.819,5.905,6.939,7.798,8.425,8.933,9.522,10.294,11.183,12.058,12.862,13.629,14.404,15.198,16.007,
-16.840,17.706,18.594,19.478,20.341,21.168,21.942,22.649,23.302,23.938,24.605,25.345,26.189,27.123,28.063,28.868,
-29.430,29.766,30.005,30.285,30.637,30.964,31.133,31.082,30.850,30.512,30.106,29.591,28.899,27.986,26.872,25.666,
-24.613,24.085,24.422,25.674,27.490,29.339,30.888,32.149,33.245,34.121,34.583,34.603,34.451,34.466,34.760,35.217,
-35.717,36.228,36.683,36.941,36.983,37.045,37.400,38.018,38.581,38.890,39.102,39.478,39.992,40.372,40.503,40.598,
-40.912,41.412,41.883,42.244,42.598,42.981,43.252,43.268,42.983,42.298,41.066,39.577,38.919,40.308,43.629,46.780,
-46.972,43.045,36.561,30.571,27.318,27.012,28.389,30.038,31.185,31.699,31.805,31.847,32.044,32.302,32.298,31.837,
-31.082,30.367,29.839,29.369,28.809,28.182,27.586,26.997,26.286,25.414,24.519,23.766,23.179,22.669,22.192,21.812,
-21.595,21.481,21.293,20.888,20.258,19.516,18.785,18.119,17.540,17.102,16.870,16.791,16.631,16.122,15.218,14.184,
-13.372,12.910,12.625,12.286,11.832,11.368,10.974,10.611,10.212,9.787,9.402,9.085,8.805,8.526,8.225,7.859,
-7.374,6.782,6.189,5.716,5.392,5.153,4.939,4.747,4.579,4.406,4.207,4.013,3.869,3.733,3.495,3.090,
-2.590,2.121,1.733,1.370,.976,.556,.153,-.219,-.563,-.860,-1.088,-1.275,-1.500,-1.804,-2.142,-2.434,
--2.655,-2.844,-3.049,-3.285,-3.551,-3.835,-4.099,-4.283,-4.392,-4.525,-4.791,-5.168,-5.509,-5.702,-5.799,-5.942,
--6.185,-6.441,-6.616,-6.718,-6.820,-6.937,-7.014,-7.011,-6.954,-6.880,-6.783,-6.665,-6.582,-6.604,-6.711,-6.798,
--6.780,-6.678,-6.551,-6.405,-6.207,-5.965,-5.737,-5.536,-5.309,-5.030,-4.776,-4.657,-4.685,-4.777,-4.889,-5.056,
--5.284,-5.469,-5.507,-5.450,-5.443,-5.506,-5.481,-5.260,-4.936,-4.611,-4.117,-3.139,-1.708,-.397,.163,-.051,
--.459,-.595,-.629,-1.008,-1.699,-2.079,-1.692,-.937,-.756,-1.655,-3.189,-4.458,-4.979,-4.968,-4.873,-4.837,
--4.684,-4.261,-3.659,-3.093,-2.699,-2.468,-2.320,-2.179,-1.992,-1.744,-1.475,-1.259,-1.143,-1.106,-1.068,-.948,
--.718,-.430,-.187,-.063,-.038,-.020,.052,.138,.157,.087,-.019,-.113,-.205,-.328,-.467,-.575,
--.644,-.724,-.852,-1.010,-1.158,-1.285,-1.410,-1.540,-1.669,-1.818,-2.023,-2.281,-2.518,-2.659,-2.708,-2.739,
--2.818,-2.954,-3.130,-3.338,-3.570,-3.798,-4.006,-4.231,-4.522,-4.874,-5.215,-5.493,-5.741,-6.029,-6.366,-6.698,
--6.986,-7.256,-7.553,-7.871,-8.170,-8.437,-8.696,-8.949,-9.160,-9.311,-9.445,-9.626,-9.859,-10.092,-10.287,-10.464,
--10.652,-10.836,-10.982,-11.095,-11.229,-11.414,-11.624,-11.819,-12.007,-12.234,-12.522,-12.842,-13.151,-13.430,-13.682,-13.903,
--14.091,-14.265,-14.457,-14.677,-14.904,-15.122,-15.340,-15.581,-15.847,-16.117,-16.380,-16.641,-16.912,-17.196,-17.498,-17.828,
--18.192,-18.579,-18.972,-19.362,-19.745,-20.116,-20.468,-20.817,-21.189,-21.592,-22.001,-22.392,-22.778,-23.182,-23.591,-23.961,
--24.277,-24.591,-24.958,-25.374,-25.780,-26.140,-26.484,-26.858,-27.262,-27.657,-28.023,-28.382,-28.749,-29.107,-29.432,-29.724,
--30.004,-30.285,-30.575,-30.891,-31.249,-31.640,-32.026,-32.387,-32.731,-33.073,-33.402,-33.706,-34.001,-34.313,-34.631,-34.916,
--35.166,-35.434,-35.776,-36.173,-36.559,-36.898,-37.215,-37.545,-37.893,-38.263,-38.680,-39.153,-39.616,-39.985,-40.256,-40.526,
--40.877,-41.278,-41.635,-41.914,-42.166,-42.429,-42.669,-42.842,-42.973,-43.128,-43.329,-43.527,-43.677,-43.784,-43.872,-43.942,
--43.985,-44.024,-44.089,-44.180,-44.273,-44.367,-44.484,-44.613,-44.701,-44.723,-44.732,-44.791,-44.882,-44.927,-44.900,-44.866,
--44.876,-44.884,-44.807,-44.658,-44.530,-44.453,-44.337,-44.112,-43.858,-43.739,-43.790,-43.856,-43.767,-43.523,-43.259,-43.052,
--42.836,-42.538,-42.256,-42.230,-42.609,-43.201,-43.476,-42.890,-41.336,-39.347,-37.805,-37.300,-37.656,-38.088,-37.868,-36.906,
--35.737,-35.003,-34.945,-35.330,-35.733,-35.867,-35.687,-35.315,-34.889,-34.458,-33.978,-33.403,-32.784,-32.258,-31.917,-31.681,
--31.327,-30.671,-29.711,-28.599,-27.499,-26.480,-25.546,-24.724,-24.094,-23.718,-23.557,-23.503,-23.482,-23.532,-23.735,-24.058,
--24.310,-24.281,-23.938,-23.450,-23.009,-22.662,-22.344,-22.040,-21.830,-21.751,-21.685,-21.461,-21.083,-20.792,-20.850,-21.287,
--21.886,-22.401,-22.754,-23.024,-23.316,-23.671,-24.084,-24.548,-25.040,-25.516,-25.936,-26.307,-26.683,-27.105,-27.565,-28.006,
--28.356,-28.558,-28.596,-28.500,-28.319,-28.082,-27.796,-27.495,-27.267,-27.199,-27.282,-27.392,-27.393,-27.255,-27.046,-26.822,
--26.570,-26.252,-25.896,-25.587,-25.387,-25.276,-25.195,-25.099,-24.978,-24.834,-24.688,-24.591,-24.599,-24.728,-24.940,-25.199,
--25.515,-25.932,-26.490,-27.198,-28.052,-29.023,-30.024,-30.897,-31.480,-31.680,-31.512,-31.071,-30.480,-29.839,-29.188,-28.531,
--27.892,-27.351,-26.963,-26.659,-26.284,-25.786,-25.342,-25.210,-25.445,-25.843,-26.183,-26.468,-26.847,-27.346,-27.832,-28.225,
--28.637,-29.165,-29.665,-29.882,-29.834,-29.918,-30.510,-31.552,-32.612,-33.339,-33.735,-34.018,-34.363,-34.852,-35.516,-36.278,
--36.919,-37.332,-37.837,-39.030,-41.116,-43.474,-45.092,-45.510,-45.196,-44.966,-45.151,-45.477,-45.621,-45.643,-45.813,-46.217,
--46.704,-47.164,-47.667,-48.289,-48.952,-49.510,-49.943,-50.358,-50.816,-51.262,-51.615,-51.860,-52.015,-52.069,-52.013,-51.894,
--51.777,-51.657,-51.470,-51.197,-50.902,-50.632,-50.339,-49.941,-49.453,-48.988,-48.626,-48.336,-48.046,-47.755,-47.531,-47.413,
--47.362,-47.311,-47.231,-47.133,-47.024,-46.903,-46.781,-46.682,-46.624,-46.602,-46.596,-46.586,-46.549,-46.466,-46.347,-46.227,
--46.139,-46.077,-46.002,-45.880,-45.705,-45.493,-45.254,-44.986,-44.679,-44.331,-43.958,-43.590,-43.243,-42.896,-42.501,-42.034,
--41.536,-41.070,-40.648,-40.217,-39.724,-39.180,-38.638,-38.119,-37.591,-37.019,-36.408,-35.781,-35.143,-34.479,-33.800,-33.148,
--32.551,-31.978,-31.367,-30.681,-29.939,-29.179,-28.414,-27.630,-26.814,-25.971,-25.117,-24.258,-23.380,-22.465,-21.515,-20.553,
--19.616,-18.720,-17.859,-17.014,-16.173,-15.319,-14.427,-13.482,-12.501,-11.529,-10.584,-9.638,-8.646,-7.612,-6.599,-5.656,
--4.761,-3.835,-2.813,-1.709,-.596,.451,1.393,2.237,3.001,3.692,4.294,4.795,5.222,5.637,6.103,6.635,
-7.190,7.721,8.217,8.705,9.201,9.687,10.134,10.540,10.938,11.359,11.801,12.239,12.664,13.096,13.553,14.014,
-14.437,14.822,15.227,15.708,16.238,16.733,17.146,17.528,17.963,18.454,18.924,19.323,19.699,20.131,20.613,21.053,
-21.386,21.658,21.965,22.347,22.768,23.185,23.605,24.050,24.502,24.915,25.262,25.563,25.848,26.121,26.340,26.448,
-26.420,26.300,26.187,26.160,26.208,26.252,26.242,26.228,26.295,26.465,26.675,26.854,26.983,27.073,27.119,27.118,
-27.104,27.129,27.189,27.226,27.209,27.172,27.168,27.201,27.249,27.329,27.485,27.714,27.958,28.188,28.446,28.766,
-29.100,29.379,29.635,29.964,30.377,30.779,31.131,31.542,32.097,32.669,33.085,33.478,34.280,35.708,37.401,38.832,
-40.092,41.962,44.947,48.326,50.475,50.258,48.009,45.092,42.670,41.089,40.287,40.338,41.311,42.751,43.697,43.420,
-42.085,40.585,39.750,39.749,40.168,40.479,40.409,40.007,39.520,39.215,39.210,39.394,39.531,39.477,39.302,39.181,
-39.203,39.295,39.322,39.219,39.009,38.753,38.483,38.203,37.904,37.591,37.296,37.067,36.929,36.850,36.778,36.700,
-36.667,36.739,36.914,37.122,37.263,37.270,37.122,36.842,36.470,36.024,35.482,34.816,34.074,33.382,32.854,32.477,
-32.136,31.735,31.276,30.802,30.312,29.788,29.279,28.894,28.325,28.221,28.176,28.072,27.841,27.513,27.151,26.803,
-26.527,26.428,26.595,26.981,27.412,27.731,27.923,28.061,28.160,28.147,27.986,27.778,27.687,27.785,27.982,28.108,
-28.047,27.805,27.511,27.365,27.527,27.985,28.525,28.884,28.955,28.849,28.748,28.729,28.740,28.709,28.627,28.522,
-28.412,28.310,28.245,28.243,28.291,28.348,28.396,28.463,28.573,28.707,28.823,28.910,28.994,29.099,29.217,29.328,
-29.421,29.502,29.593,29.734,29.953,30.212,30.396,30.399,30.246,30.102,30.102,30.204,30.212,29.972,29.514,28.997,
-28.533,28.088,27.563,26.927,26.261,25.683,25.240,24.885,24.534,24.143,23.729,23.329,22.952,22.575,22.190,21.829,
-21.544,21.360,21.263,21.218,21.178,21.067,20.792,20.316,19.708,19.092,18.519,17.918,17.209,16.446,15.813,15.460,
-15.352,15.323,15.241,15.111,15.000,14.918,14.808,14.647,14.514,14.522,14.692,14.914,15.046,15.037,14.935,14.785,
-14.561,14.234,13.895,13.736,13.856,14.114,14.253,14.184,14.083,14.142,14.261,14.100,13.473,12.579,11.784,11.225,
-10.781,10.451,10.583,11.569,13.322,15.222,16.640,17.433,17.860,18.094,18.006,17.438,16.536,15.666,15.046,14.567,
-14.024,13.390,12.808,12.356,11.957,11.513,11.044,10.644,10.327,9.996,9.554,8.999,8.390,7.764,7.109,6.416,
-5.705,5.002,4.309,3.602,2.860,2.078,1.281,.517,-.178,-.822,-1.489,-2.249,-3.094,-3.955,-4.790,-5.640,
--6.578,-7.618,-8.696,-9.739,-10.734,-11.720,-12.727,-13.754,-14.782,-15.792,-16.769,-17.704,-18.624,-19.600,-20.702,-21.920,
--23.139,-24.199,-24.980,-25.453,-25.661,-25.650,-25.412,-24.879,-24.016,-22.927,-21.869,-21.091,-20.640,-20.330,-19.931,-19.408,
--18.940,-18.732,-18.812,-19.059,-19.361,-19.719,-20.154,-20.577,-20.790,-20.650,-20.208,-19.656,-19.159,-18.735,-18.331,-17.983,
--17.860,-18.106,-18.661,-19.274,-19.725,-19.991,-20.186,-20.365,-20.464,-20.445,-20.422,-20.580,-20.992,-21.595,-22.354,-23.358,
--24.686,-26.229,-27.721,-28.962,-29.928,-30.659,-31.153,-31.439,-31.677,-32.033,-32.432,-32.567,-32.248,-31.686,-31.309,-31.332,
--31.644,-32.175,-33.209,-35.142,-37.913,-40.808,-42.936,-43.866,-43.812,-43.286,-42.730,-42.416,-42.497,-42.968,-43.634,-44.255,
--44.794,-45.427,-46.257,-47.083,-47.560,-47.566,-47.317,-47.093,-46.960,-46.818,-46.658,-46.620,-46.767,-46.939,-46.910,-46.656,
--46.379,-46.258,-46.287,-46.375,-46.520,-46.797,-47.232,-47.782,-48.456,-49.332,-50.423,-51.587,-52.653,-53.599,-54.519,-55.439,
--56.283,-57.042,-57.854,-58.829,-59.848,-60.699,-61.368,-62.057,-62.844,-63.478,-63.646,-63.372,-62.951,-62.478,-61.639,-60.133,
--58.198,-56.518,-55.551,-55.078,-54.532,-53.670,-52.823,-52.449,-52.512,-52.351,-51.156,-48.625,-45.210,-41.725,-38.666,-35.912,
--33.135,-30.475,-28.632,-28.195,-28.944,-29.960,-30.410,-30.115,-29.405,-28.676,-28.210,-28.205,-28.662,-29.236,-29.517,-29.556,
--29.868,-30.718,-31.592,-31.751,-31.230,-30.844,-31.046,-31.188,-30.404,-29.078,-28.831,-30.812,-34.348,-37.638,-39.584,-40.533,
--41.369,-42.472,-43.840,-45.690,-48.239,-50.887,-52.252,-51.418,-48.956,-46.362,-44.581,-43.390,-42.191,-40.962,-40.172,-39.985,
--39.965,-39.585,-38.763,-37.769,-36.802,-35.852,-34.903,-34.078,-33.506,-33.168,-32.903,-32.550,-32.064,-31.597,-31.469,-31.951,
--32.953,-33.980,-34.542,-34.620,-34.666,-35.093,-35.877,-36.683,-37.263,-37.597,-37.707,-37.528,-37.037,-36.387,-35.779,-35.232,
--34.598,-33.789,-32.900,-32.071,-31.318,-30.576,-29.832,-29.127,-28.445,-27.697,-26.850,-25.997,-25.245,-24.586,-23.922,-23.213,
--22.510,-21.868,-21.288,-20.765,-20.340,-20.035,-19.786,-19.494,-19.120,-18.679,-18.135,-17.387,-16.404,-15.303,-14.235,-13.220,
--12.169,-11.077,-10.092,-9.339,-8.730,-8.032,-7.131,-6.135,-5.210,-4.362,-3.455,-2.392,-1.217,-.034,1.103,2.191,
-3.218,4.189,5.176,6.271,7.445,8.501,9.239,9.669,10.040,10.628,11.508,12.524,13.465,14.247,14.931,15.622,
-16.360,17.128,17.908,18.724,19.604,20.528,21.420,22.215,22.912,23.566,24.242,24.986,25.831,26.783,27.775,28.657,
-29.283,29.644,29.890,30.200,30.613,31.008,31.239,31.282,31.217,31.093,30.821,30.240,29.278,28.063,26.836,25.771,
-24.898,24.242,24.003,24.510,25.904,27.894,29.900,31.495,32.661,33.599,34.367,34.812,34.839,34.625,34.497,34.647,
-35.058,35.632,36.274,36.833,37.139,37.193,37.253,37.585,38.145,38.640,38.922,39.175,39.628,40.195,40.574,40.667,
-40.724,41.008,41.483,41.949,42.356,42.792,43.229,43.473,43.431,43.179,42.666,41.634,40.203,39.454,40.843,44.545,
-48.476,49.483,45.907,39.073,32.239,28.120,27.285,28.509,30.191,31.379,31.922,32.131,32.397,32.885,33.387,33.492,
-32.985,32.078,31.201,30.599,30.172,29.691,29.057,28.333,27.598,26.862,26.097,25.296,24.483,23.701,23.020,22.508,
-22.181,21.968,21.750,21.435,20.988,20.415,19.749,19.042,18.360,17.791,17.436,17.360,17.478,17.509,17.121,16.217,
-15.066,14.092,13.514,13.202,12.883,12.432,11.927,11.468,11.049,10.608,10.141,9.705,9.342,9.034,8.740,8.431,
-8.075,7.645,7.153,6.657,6.214,5.825,5.465,5.144,4.894,4.694,4.469,4.182,3.906,3.738,3.653,3.500,
-3.153,2.654,2.156,1.761,1.442,1.113,.746,.386,.086,-.151,-.370,-.625,-.946,-1.302,-1.625,-1.868,
--2.063,-2.277,-2.522,-2.743,-2.920,-3.126,-3.443,-3.811,-4.042,-4.049,-3.992,-4.144,-4.591,-5.138,-5.530,-5.713,
--5.833,-6.020,-6.255,-6.462,-6.633,-6.809,-6.971,-7.038,-6.987,-6.896,-6.850,-6.841,-6.810,-6.765,-6.781,-6.880,
--6.973,-6.946,-6.787,-6.568,-6.353,-6.142,-5.933,-5.744,-5.580,-5.398,-5.166,-4.932,-4.779,-4.727,-4.727,-4.748,
--4.816,-4.934,-5.023,-5.015,-4.971,-5.017,-5.153,-5.233,-5.170,-5.076,-5.058,-4.926,-4.288,-3.036,-1.610,-.631,
--.311,-.378,-.581,-1.018,-1.781,-2.437,-2.221,-.921,.612,1.101,.034,-1.902,-3.566,-4.392,-4.619,-4.689,
--4.704,-4.494,-4.004,-3.408,-2.896,-2.502,-2.185,-1.953,-1.821,-1.706,-1.473,-1.104,-.747,-.558,-.539,-.551,
--.464,-.262,-.018,.199,.366,.503,.636,.763,.845,.844,.764,.660,.583,.528,.455,.345,
-.220,.105,.002,-.104,-.223,-.362,-.534,-.736,-.926,-1.066,-1.172,-1.314,-1.526,-1.753,-1.905,-1.955,
--1.964,-2.009,-2.121,-2.290,-2.505,-2.747,-2.983,-3.191,-3.404,-3.686,-4.054,-4.449,-4.803,-5.112,-5.427,-5.764,
--6.090,-6.376,-6.649,-6.954,-7.283,-7.589,-7.857,-8.115,-8.386,-8.639,-8.839,-9.008,-9.206,-9.460,-9.724,-9.948,
--10.136,-10.324,-10.519,-10.693,-10.833,-10.970,-11.141,-11.344,-11.552,-11.762,-11.997,-12.269,-12.557,-12.836,-13.105,-13.370,
--13.619,-13.829,-14.006,-14.191,-14.414,-14.663,-14.902,-15.123,-15.355,-15.619,-15.909,-16.199,-16.481,-16.770,-17.078,-17.401,
--17.725,-18.047,-18.375,-18.720,-19.082,-19.453,-19.816,-20.172,-20.540,-20.940,-21.362,-21.774,-22.158,-22.535,-22.937,-23.350,
--23.731,-24.066,-24.401,-24.789,-25.223,-25.647,-26.035,-26.419,-26.834,-27.259,-27.645,-27.983,-28.314,-28.667,-29.023,-29.348,
--29.644,-29.937,-30.234,-30.523,-30.810,-31.132,-31.508,-31.906,-32.282,-32.622,-32.949,-33.277,-33.599,-33.912,-34.225,-34.545,
--34.861,-35.170,-35.499,-35.869,-36.265,-36.639,-36.967,-37.272,-37.587,-37.923,-38.291,-38.712,-39.179,-39.628,-39.979,-40.238,
--40.498,-40.842,-41.246,-41.617,-41.904,-42.139,-42.370,-42.606,-42.833,-43.053,-43.274,-43.477,-43.629,-43.735,-43.834,-43.943,
--44.039,-44.105,-44.167,-44.257,-44.364,-44.462,-44.557,-44.683,-44.827,-44.926,-44.951,-44.960,-45.024,-45.117,-45.143,-45.075,
--44.997,-44.986,-45.003,-44.952,-44.823,-44.698,-44.621,-44.523,-44.334,-44.112,-43.989,-44.003,-44.030,-43.932,-43.707,-43.470,
--43.291,-43.122,-42.884,-42.618,-42.506,-42.728,-43.232,-43.629,-43.366,-42.131,-40.200,-38.365,-37.387,-37.416,-37.893,-38.042,
--37.482,-36.446,-35.483,-35.016,-35.111,-35.532,-35.941,-36.091,-35.914,-35.504,-34.996,-34.455,-33.864,-33.221,-32.606,-32.125,
--31.789,-31.463,-30.957,-30.167,-29.142,-28.020,-26.918,-25.885,-24.948,-24.180,-23.687,-23.503,-23.528,-23.602,-23.646,-23.714,
--23.857,-24.002,-23.983,-23.722,-23.314,-22.907,-22.554,-22.214,-21.887,-21.658,-21.561,-21.469,-21.209,-20.792,-20.473,-20.534,
--21.017,-21.699,-22.304,-22.710,-22.965,-23.186,-23.471,-23.876,-24.404,-24.986,-25.516,-25.940,-26.300,-26.678,-27.109,-27.551,
--27.929,-28.190,-28.312,-28.291,-28.144,-27.912,-27.647,-27.402,-27.242,-27.244,-27.446,-27.766,-28.021,-28.050,-27.841,-27.506,
--27.152,-26.798,-26.426,-26.081,-25.850,-25.762,-25.749,-25.717,-25.637,-25.544,-25.464,-25.391,-25.329,-25.321,-25.405,-25.570,
--25.779,-26.029,-26.360,-26.808,-27.360,-27.984,-28.670,-29.421,-30.195,-30.887,-31.371,-31.568,-31.493,-31.225,-30.827,-30.286,
--29.546,-28.622,-27.672,-26.898,-26.354,-25.899,-25.386,-24.872,-24.584,-24.658,-24.993,-25.396,-25.798,-26.256,-26.770,-27.249,
--27.664,-28.133,-28.729,-29.283,-29.539,-29.521,-29.626,-30.232,-31.274,-32.319,-33.009,-33.347,-33.574,-33.913,-34.501,-35.372,
--36.365,-37.115,-37.408,-37.605,-38.493,-40.479,-42.985,-44.851,-45.423,-45.110,-44.825,-45.018,-45.416,-45.593,-45.538,-45.574,
--45.907,-46.450,-47.035,-47.625,-48.249,-48.869,-49.410,-49.878,-50.339,-50.804,-51.211,-51.519,-51.755,-51.937,-52.017,-51.958,
--51.822,-51.716,-51.654,-51.548,-51.325,-51.018,-50.693,-50.349,-49.941,-49.483,-49.060,-48.731,-48.462,-48.192,-47.926,-47.728,
--47.625,-47.569,-47.501,-47.413,-47.342,-47.304,-47.277,-47.233,-47.165,-47.094,-47.052,-47.053,-47.085,-47.105,-47.071,-46.979,
--46.861,-46.750,-46.646,-46.533,-46.402,-46.257,-46.092,-45.886,-45.631,-45.337,-45.020,-44.680,-44.315,-43.930,-43.532,-43.112,
--42.654,-42.167,-41.677,-41.204,-40.736,-40.255,-39.759,-39.254,-38.730,-38.163,-37.549,-36.913,-36.282,-35.654,-35.008,-34.340,
--33.678,-33.046,-32.436,-31.811,-31.137,-30.405,-29.627,-28.827,-28.021,-27.204,-26.366,-25.507,-24.638,-23.765,-22.873,-21.947,
--21.004,-20.084,-19.213,-18.373,-17.529,-16.660,-15.762,-14.825,-13.845,-12.852,-11.899,-10.997,-10.086,-9.101,-8.060,-7.065,
--6.173,-5.319,-4.369,-3.264,-2.087,-.977,-.001,.873,1.698,2.466,3.118,3.612,3.990,4.352,4.789,5.320,
-5.901,6.469,6.999,7.505,8.007,8.499,8.956,9.365,9.742,10.124,10.539,10.984,11.434,11.872,12.311,12.775,
-13.253,13.699,14.090,14.474,14.928,15.461,15.983,16.410,16.766,17.163,17.655,18.174,18.620,18.994,19.373,19.796,
-20.204,20.527,20.793,21.098,21.489,21.924,22.346,22.763,23.213,23.690,24.131,24.488,24.779,25.062,25.362,25.636,
-25.803,25.815,25.709,25.590,25.558,25.618,25.698,25.746,25.797,25.934,26.172,26.436,26.638,26.754,26.813,26.833,
-26.818,26.786,26.775,26.796,26.812,26.797,26.771,26.766,26.781,26.800,26.844,26.959,27.156,27.395,27.654,27.964,
-28.337,28.714,29.025,29.296,29.625,30.045,30.495,30.933,31.414,31.978,32.539,33.017,33.567,34.488,35.807,37.119,
-38.058,38.895,40.382,42.817,45.418,46.901,46.701,45.457,44.216,43.374,42.598,41.648,40.889,40.824,41.328,41.654,
-41.228,40.257,39.443,39.236,39.493,39.787,39.854,39.707,39.458,39.200,39.023,39.008,39.137,39.276,39.286,39.157,
-38.996,38.906,38.905,38.941,38.945,38.844,38.590,38.197,37.753,37.346,37.005,36.709,36.454,36.268,36.155,36.070,
-35.968,35.874,35.852,35.922,36.021,36.070,36.040,35.945,35.790,35.550,35.196,34.707,34.081,33.350,32.599,31.939,
-31.431,31.034,30.654,30.233,29.782,29.335,28.917,28.563,28.325,27.704,27.699,27.726,27.670,27.459,27.131,26.780,
-26.460,26.179,25.990,26.004,26.286,26.740,27.184,27.508,27.736,27.918,28.037,28.053,28.013,28.049,28.227,28.457,
-28.571,28.476,28.217,27.922,27.728,27.744,28.016,28.479,28.951,29.238,29.268,29.131,28.985,28.925,28.925,28.891,
-28.753,28.531,28.314,28.195,28.190,28.245,28.304,28.371,28.486,28.643,28.763,28.773,28.687,28.595,28.570,28.613,
-28.682,28.748,28.818,28.923,29.097,29.370,29.717,30.038,30.219,30.252,30.265,30.397,30.619,30.728,30.534,30.043,
-29.434,28.863,28.338,27.772,27.131,26.487,25.922,25.439,24.979,24.511,24.063,23.678,23.344,23.000,22.598,22.154,
-21.728,21.381,21.142,21.009,20.953,20.904,20.761,20.437,19.928,19.320,18.707,18.101,17.436,16.674,15.902,15.297,
-14.972,14.882,14.875,14.841,14.788,14.772,14.792,14.768,14.644,14.475,14.386,14.454,14.626,14.768,14.788,14.682,
-14.487,14.218,13.884,13.564,13.394,13.450,13.644,13.794,13.819,13.825,13.951,14.154,14.197,13.876,13.224,12.466,
-11.812,11.363,11.190,11.389,11.988,12.845,13.753,14.643,15.615,16.686,17.592,17.941,17.593,16.815,16.014,15.361,
-14.737,14.003,13.221,12.579,12.156,11.852,11.531,11.175,10.845,10.562,10.255,9.835,9.282,8.644,7.983,7.329,
-6.681,6.022,5.335,4.612,3.864,3.104,2.331,1.538,.733,-.057,-.815,-1.551,-2.287,-3.029,-3.782,-4.574,
--5.460,-6.461,-7.539,-8.623,-9.684,-10.744,-11.821,-12.886,-13.896,-14.861,-15.835,-16.856,-17.906,-18.956,-20.031,-21.188,
--22.422,-23.619,-24.624,-25.356,-25.855,-26.212,-26.457,-26.516,-26.259,-25.626,-24.715,-23.745,-22.926,-22.307,-21.786,-21.241,
--20.675,-20.201,-19.932,-19.912,-20.139,-20.603,-21.250,-21.948,-22.540,-22.966,-23.261,-23.414,-23.251,-22.545,-21.296,-19.883,
--18.887,-18.702,-19.269,-20.154,-20.882,-21.260,-21.416,-21.582,-21.826,-22.020,-22.032,-21.919,-21.900,-22.154,-22.695,-23.427,
--24.287,-25.273,-26.388,-27.592,-28.826,-30.002,-30.969,-31.576,-31.822,-31.913,-32.064,-32.225,-32.121,-31.620,-31.011,-30.802,
--31.245,-32.162,-33.266,-34.566,-36.314,-38.583,-40.999,-42.950,-44.019,-44.197,-43.775,-43.138,-42.655,-42.581,-42.942,-43.527,
--44.084,-44.564,-45.120,-45.845,-46.569,-46.990,-46.965,-46.637,-46.259,-45.986,-45.860,-45.914,-46.171,-46.538,-46.807,-46.832,
--46.695,-46.605,-46.654,-46.740,-46.741,-46.700,-46.782,-47.101,-47.654,-48.420,-49.413,-50.593,-51.804,-52.879,-53.795,-54.645,
--55.485,-56.289,-57.072,-57.955,-59.008,-60.100,-61.007,-61.694,-62.361,-63.160,-63.971,-64.531,-64.745,-64.724,-64.534,-64.065,
--63.254,-62.323,-61.637,-61.301,-61.017,-60.424,-59.535,-58.750,-58.427,-58.446,-58.200,-57.054,-54.865,-52.107,-49.390,-46.818,
--43.881,-40.159,-36.112,-32.967,-31.649,-31.885,-32.487,-32.461,-31.687,-30.585,-29.488,-28.530,-27.899,-27.804,-28.188,-28.804,
--29.658,-31.044,-32.876,-34.292,-34.404,-33.440,-32.588,-32.474,-32.254,-30.810,-28.692,-28.152,-30.878,-36.080,-41.272,-44.750,
--46.815,-48.620,-50.538,-52.095,-53.065,-53.845,-54.634,-54.818,-53.617,-51.118,-48.297,-46.048,-44.525,-43.471,-42.790,-42.514,
--42.412,-42.022,-41.126,-39.963,-38.867,-37.883,-36.858,-35.807,-34.967,-34.485,-34.223,-33.910,-33.400,-32.748,-32.152,-31.885,
--32.189,-33.042,-34.052,-34.705,-34.818,-34.681,-34.704,-35.003,-35.376,-35.615,-35.685,-35.618,-35.386,-34.965,-34.459,-34.038,
--33.748,-33.459,-33.030,-32.441,-31.760,-31.038,-30.297,-29.565,-28.861,-28.139,-27.327,-26.439,-25.602,-24.920,-24.350,-23.749,
--23.036,-22.258,-21.521,-20.895,-20.400,-20.032,-19.750,-19.480,-19.163,-18.798,-18.388,-17.867,-17.130,-16.165,-15.102,-14.089,
--13.142,-12.168,-11.136,-10.145,-9.295,-8.543,-7.740,-6.819,-5.859,-4.959,-4.088,-3.111,-1.948,-.654,.641,1.837,
-2.889,3.786,4.595,5.478,6.610,7.979,9.306,10.234,10.653,10.834,11.209,12.004,13.073,14.092,14.868,15.465,
-16.057,16.732,17.462,18.213,19.012,19.899,20.832,21.708,22.473,23.171,23.890,24.667,25.495,26.376,27.313,28.241,
-29.004,29.485,29.748,30.005,30.421,30.938,31.350,31.523,31.513,31.452,31.327,30.924,30.017,28.618,27.044,25.702,
-24.803,24.289,24.040,24.146,24.891,26.420,28.450,30.399,31.829,32.744,33.425,34.040,34.490,34.637,34.547,34.458,
-34.557,34.878,35.379,35.990,36.577,36.977,37.159,37.312,37.646,38.144,38.605,38.941,39.296,39.807,40.350,40.674,
-40.753,40.830,41.108,41.530,41.957,42.404,42.939,43.430,43.634,43.536,43.347,43.036,42.181,40.702,39.675,40.808,
-44.590,49.012,50.641,47.400,40.404,33.086,28.543,27.606,29.016,30.948,32.297,32.929,33.242,33.629,34.166,34.578,
-34.492,33.791,32.748,31.804,31.190,30.793,30.335,29.661,28.838,28.052,27.421,26.886,26.266,25.439,24.494,23.679,
-23.165,22.879,22.586,22.146,21.630,21.186,20.840,20.475,19.968,19.314,18.629,18.083,17.800,17.756,17.723,17.385,
-16.608,15.595,14.728,14.216,13.933,13.603,13.102,12.522,11.996,11.538,11.076,10.583,10.101,9.677,9.308,8.963,
-8.619,8.258,7.867,7.460,7.067,6.700,6.328,5.923,5.513,5.152,4.841,4.522,4.177,3.879,3.721,3.670,
-3.561,3.257,2.778,2.274,1.870,1.571,1.307,1.031,.758,.530,.346,.145,-.154,-.566,-.996,-1.309,
--1.469,-1.598,-1.841,-2.191,-2.495,-2.664,-2.808,-3.095,-3.498,-3.780,-3.778,-3.651,-3.742,-4.202,-4.826,-5.294,
--5.503,-5.606,-5.778,-6.032,-6.282,-6.495,-6.689,-6.841,-6.877,-6.793,-6.703,-6.716,-6.809,-6.872,-6.861,-6.846,
--6.895,-6.959,-6.931,-6.772,-6.549,-6.332,-6.130,-5.921,-5.719,-5.551,-5.411,-5.264,-5.104,-4.961,-4.847,-4.736,
--4.619,-4.531,-4.500,-4.493,-4.471,-4.471,-4.570,-4.748,-4.868,-4.854,-4.822,-4.912,-5.008,-4.753,-3.939,-2.817,
--1.899,-1.482,-1.487,-1.755,-2.263,-2.905,-3.181,-2.469,-.779,.931,1.455,.409,-1.465,-3.077,-3.931,-4.250,
--4.393,-4.409,-4.174,-3.728,-3.271,-2.907,-2.565,-2.199,-1.904,-1.757,-1.630,-1.316,-.809,-.353,-.169,-.205,
--.220,-.064,.204,.447,.627,.803,1.013,1.219,1.361,1.417,1.404,1.351,1.285,1.230,1.193,1.157,
-1.093,.986,.839,.670,.505,.359,.219,.054,-.145,-.331,-.446,-.493,-.550,-.682,-.858,-.987,
--1.027,-1.030,-1.085,-1.222,-1.417,-1.643,-1.898,-2.173,-2.449,-2.717,-3.005,-3.341,-3.711,-4.080,-4.436,-4.793,
--5.153,-5.485,-5.771,-6.046,-6.356,-6.696,-7.013,-7.280,-7.529,-7.803,-8.093,-8.360,-8.596,-8.844,-9.132,-9.421,
--9.656,-9.827,-9.984,-10.163,-10.352,-10.520,-10.672,-10.844,-11.055,-11.296,-11.550,-11.812,-12.074,-12.318,-12.542,-12.773,
--13.043,-13.338,-13.606,-13.819,-14.010,-14.234,-14.501,-14.776,-15.029,-15.275,-15.542,-15.831,-16.120,-16.401,-16.693,-17.011,
--17.342,-17.653,-17.931,-18.194,-18.474,-18.786,-19.127,-19.488,-19.870,-20.278,-20.713,-21.150,-21.558,-21.930,-22.292,-22.680,
--23.090,-23.489,-23.860,-24.232,-24.643,-25.087,-25.521,-25.927,-26.331,-26.759,-27.187,-27.574,-27.916,-28.254,-28.614,-28.969,
--29.287,-29.582,-29.889,-30.208,-30.508,-30.782,-31.073,-31.422,-31.807,-32.170,-32.488,-32.794,-33.123,-33.469,-33.804,-34.126,
--34.459,-34.819,-35.199,-35.589,-35.983,-36.370,-36.733,-37.067,-37.387,-37.706,-38.030,-38.367,-38.744,-39.168,-39.592,-39.951,
--40.233,-40.507,-40.839,-41.218,-41.572,-41.851,-42.076,-42.295,-42.541,-42.815,-43.106,-43.379,-43.589,-43.717,-43.802,-43.905,
--44.041,-44.176,-44.284,-44.387,-44.510,-44.632,-44.722,-44.797,-44.902,-45.037,-45.141,-45.182,-45.211,-45.287,-45.375,-45.378,
--45.270,-45.145,-45.097,-45.106,-45.076,-44.973,-44.857,-44.774,-44.693,-44.565,-44.414,-44.308,-44.257,-44.185,-44.027,-43.806,
--43.598,-43.449,-43.325,-43.164,-42.947,-42.751,-42.733,-43.000,-43.416,-43.560,-42.967,-41.539,-39.730,-38.248,-37.530,-37.466,
--37.585,-37.470,-37.012,-36.366,-35.787,-35.489,-35.556,-35.886,-36.230,-36.337,-36.112,-35.637,-35.044,-34.402,-33.718,-33.027,
--32.422,-31.977,-31.641,-31.233,-30.568,-29.597,-28.443,-27.288,-26.230,-25.272,-24.435,-23.827,-23.558,-23.591,-23.731,-23.786,
--23.733,-23.670,-23.652,-23.608,-23.435,-23.116,-22.718,-22.308,-21.927,-21.631,-21.479,-21.428,-21.310,-20.980,-20.509,-20.179,
--20.256,-20.767,-21.496,-22.173,-22.633,-22.862,-22.960,-23.093,-23.423,-23.998,-24.702,-25.348,-25.839,-26.235,-26.642,-27.081,
--27.471,-27.731,-27.850,-27.858,-27.764,-27.574,-27.339,-27.162,-27.144,-27.325,-27.680,-28.135,-28.570,-28.847,-28.876,-28.672,
--28.329,-27.932,-27.508,-27.082,-26.726,-26.520,-26.461,-26.461,-26.441,-26.409,-26.412,-26.437,-26.413,-26.302,-26.163,-26.084,
--26.093,-26.153,-26.246,-26.411,-26.686,-27.053,-27.469,-27.932,-28.487,-29.148,-29.845,-30.456,-30.900,-31.178,-31.326,-31.331,
--31.079,-30.432,-29.372,-28.103,-26.948,-26.110,-25.541,-25.061,-24.611,-24.328,-24.365,-24.695,-25.145,-25.579,-25.977,-26.355,
--26.700,-27.042,-27.480,-28.059,-28.630,-28.982,-29.128,-29.378,-30.025,-31.002,-31.934,-32.511,-32.743,-32.881,-33.221,-33.986,
--35.217,-36.619,-37.627,-37.893,-37.813,-38.343,-40.079,-42.516,-44.435,-45.060,-44.737,-44.412,-44.607,-45.062,-45.291,-45.227,
--45.211,-45.532,-46.159,-46.892,-47.598,-48.238,-48.793,-49.270,-49.739,-50.266,-50.807,-51.248,-51.537,-51.733,-51.896,-51.992,
--51.969,-51.867,-51.786,-51.752,-51.675,-51.466,-51.140,-50.769,-50.384,-49.971,-49.545,-49.168,-48.882,-48.657,-48.447,-48.249,
--48.095,-47.987,-47.886,-47.765,-47.651,-47.592,-47.602,-47.649,-47.687,-47.690,-47.664,-47.637,-47.640,-47.671,-47.689,-47.656,
--47.575,-47.480,-47.389,-47.280,-47.135,-46.970,-46.816,-46.666,-46.479,-46.231,-45.942,-45.637,-45.312,-44.936,-44.509,-44.066,
--43.640,-43.227,-42.792,-42.316,-41.810,-41.301,-40.806,-40.320,-39.814,-39.262,-38.659,-38.031,-37.407,-36.798,-36.186,-35.551,
--34.890,-34.215,-33.535,-32.861,-32.199,-31.532,-30.822,-30.040,-29.206,-28.366,-27.545,-26.724,-25.875,-25.005,-24.138,-23.271,
--22.382,-21.467,-20.561,-19.694,-18.850,-17.987,-17.084,-16.149,-15.188,-14.205,-13.227,-12.300,-11.423,-10.523,-9.535,-8.498,
--7.530,-6.680,-5.843,-4.856,-3.684,-2.471,-1.393,-.494,.313,1.103,1.839,2.418,2.804,3.095,3.450,3.958,
-4.580,5.210,5.776,6.285,6.780,7.276,7.752,8.187,8.584,8.968,9.362,9.782,10.232,10.694,11.142,11.571,
-12.008,12.472,12.941,13.368,13.760,14.185,14.687,15.213,15.664,16.025,16.390,16.843,17.350,17.807,18.179,18.528,
-18.909,19.293,19.619,19.904,20.235,20.659,21.129,21.576,21.994,22.425,22.882,23.318,23.681,23.977,24.252,24.537,
-24.811,25.018,25.106,25.080,25.008,24.979,25.034,25.142,25.261,25.401,25.607,25.876,26.142,26.333,26.449,26.534,
-26.603,26.631,26.605,26.553,26.511,26.479,26.443,26.407,26.382,26.365,26.350,26.366,26.467,26.668,26.933,27.237,
-27.594,28.016,28.446,28.814,29.125,29.461,29.873,30.333,30.814,31.339,31.913,32.471,32.992,33.640,34.633,35.894,
-36.975,37.500,37.656,38.022,38.864,39.756,40.107,39.961,39.998,40.662,41.492,41.579,40.609,39.242,38.376,38.247,
-38.389,38.363,38.253,38.393,38.835,39.277,39.456,39.421,39.369,39.358,39.304,39.177,39.085,39.130,39.268,39.369,
-39.348,39.219,39.042,38.882,38.794,38.783,38.761,38.590,38.207,37.696,37.193,36.754,36.350,35.969,35.664,35.481,
-35.380,35.281,35.167,35.083,35.043,34.998,34.899,34.779,34.704,34.672,34.593,34.381,34.014,33.508,32.873,32.144,
-31.418,30.805,30.325,29.890,29.410,28.892,28.417,28.052,27.815,27.704,27.012,27.085,27.183,27.154,26.900,26.497,
-26.125,25.884,25.720,25.582,25.548,25.756,26.197,26.693,27.081,27.364,27.640,27.928,28.159,28.311,28.472,28.709,
-28.946,29.032,28.915,28.693,28.482,28.318,28.210,28.236,28.491,28.930,29.333,29.481,29.360,29.165,29.094,29.155,
-29.186,29.039,28.730,28.418,28.254,28.250,28.309,28.350,28.387,28.478,28.611,28.676,28.571,28.323,28.075,27.951,
-27.956,28.006,28.046,28.102,28.238,28.495,28.865,29.296,29.702,30.001,30.179,30.328,30.559,30.863,31.070,30.992,
-30.583,29.965,29.282,28.589,27.879,27.183,26.579,26.090,25.637,25.127,24.567,24.063,23.685,23.388,23.062,22.652,
-22.191,21.746,21.363,21.059,20.854,20.739,20.639,20.437,20.057,19.525,18.937,18.351,17.741,17.044,16.266,15.523,
-14.969,14.684,14.609,14.613,14.601,14.575,14.584,14.634,14.651,14.561,14.375,14.204,14.161,14.267,14.427,14.514,
-14.446,14.225,13.906,13.566,13.279,13.099,13.046,13.097,13.210,13.360,13.548,13.774,13.999,14.133,14.069,13.733,
-13.140,12.439,11.877,11.671,11.844,12.200,12.518,12.817,13.377,14.438,15.851,17.079,17.615,17.378,16.716,16.018,
-15.393,14.717,13.911,13.101,12.481,12.104,11.852,11.583,11.270,10.973,10.722,10.454,10.067,9.516,8.845,8.155,
-7.523,6.950,6.374,5.719,4.966,4.158,3.356,2.577,1.789,.956,.088,-.757,-1.522,-2.193,-2.821,-3.493,
--4.293,-5.252,-6.328,-7.433,-8.510,-9.574,-10.682,-11.841,-12.987,-14.041,-15.007,-15.972,-17.021,-18.161,-19.342,-20.535,
--21.748,-22.963,-24.090,-25.014,-25.692,-26.187,-26.602,-26.973,-27.231,-27.246,-26.933,-26.328,-25.569,-24.798,-24.072,-23.374,
--22.695,-22.090,-21.627,-21.338,-21.258,-21.484,-22.108,-23.048,-24.018,-24.757,-25.287,-25.821,-26.362,-26.469,-25.580,-23.641,
--21.355,-19.736,-19.369,-20.055,-21.103,-21.905,-22.293,-22.468,-22.702,-23.078,-23.456,-23.626,-23.524,-23.315,-23.281,-23.611,
--24.282,-25.125,-25.977,-26.807,-27.701,-28.746,-29.887,-30.902,-31.545,-31.757,-31.718,-31.649,-31.578,-31.359,-30.955,-30.637,
--30.809,-31.633,-32.889,-34.247,-35.619,-37.188,-39.101,-41.201,-43.064,-44.269,-44.631,-44.268,-43.540,-42.899,-42.688,-42.976,
--43.551,-44.139,-44.623,-45.080,-45.600,-46.131,-46.483,-46.484,-46.117,-45.537,-45.012,-44.809,-45.060,-45.653,-46.287,-46.689,
--46.829,-46.896,-47.053,-47.245,-47.283,-47.101,-46.880,-46.886,-47.241,-47.891,-48.754,-49.801,-50.981,-52.142,-53.124,-53.914,
--54.643,-55.432,-56.291,-57.202,-58.195,-59.289,-60.380,-61.303,-62.025,-62.696,-63.472,-64.320,-65.061,-65.569,-65.856,-65.968,
--65.909,-65.708,-65.484,-65.353,-65.275,-65.068,-64.599,-63.944,-63.320,-62.879,-62.552,-62.055,-61.089,-59.591,-57.812,-56.005,
--53.991,-51.167,-47.203,-42.737,-39.129,-37.314,-36.966,-36.929,-36.383,-35.368,-34.244,-33.034,-31.573,-30.058,-29.045,-28.909,
--29.606,-31.030,-33.177,-35.644,-37.345,-37.326,-35.929,-34.572,-34.057,-33.549,-31.850,-29.531,-29.033,-32.212,-38.197,-44.197,
--48.265,-50.734,-52.938,-55.249,-56.896,-57.338,-57.040,-56.691,-56.200,-54.885,-52.484,-49.582,-47.047,-45.353,-44.520,-44.350,
--44.468,-44.331,-43.540,-42.213,-40.852,-39.777,-38.832,-37.743,-36.580,-35.692,-35.243,-35.009,-34.667,-34.117,-33.474,-32.897,
--32.565,-32.702,-33.399,-34.380,-35.097,-35.193,-34.817,-34.414,-34.246,-34.221,-34.133,-33.934,-33.702,-33.467,-33.184,-32.862,
--32.604,-32.483,-32.432,-32.287,-31.934,-31.376,-30.693,-29.977,-29.277,-28.575,-27.805,-26.938,-26.051,-25.287,-24.710,-24.225,
--23.657,-22.917,-22.076,-21.284,-20.652,-20.190,-19.836,-19.504,-19.141,-18.753,-18.371,-17.979,-17.478,-16.767,-15.849,-14.841,
--13.855,-12.895,-11.900,-10.862,-9.865,-8.984,-8.190,-7.383,-6.504,-5.587,-4.680,-3.757,-2.727,-1.530,-.209,1.121,
-2.333,3.350,4.174,4.920,5.806,7.024,8.543,10.031,11.059,11.456,11.501,11.711,12.407,13.471,14.524,15.306,
-15.866,16.409,17.056,17.781,18.539,19.347,20.223,21.112,21.929,22.672,23.429,24.270,25.164,26.042,26.893,27.754,
-28.589,29.267,29.688,29.930,30.199,30.629,31.144,31.561,31.777,31.825,31.732,31.385,30.588,29.270,27.636,26.084,
-24.954,24.334,24.093,24.119,24.502,25.459,27.048,28.971,30.714,31.928,32.653,33.174,33.678,34.120,34.376,34.456,
-34.493,34.604,34.829,35.185,35.688,36.277,36.806,37.174,37.446,37.763,38.171,38.596,38.998,39.444,39.964,40.439,
-40.732,40.883,41.066,41.358,41.679,41.995,42.428,43.024,43.545,43.708,43.594,43.536,43.481,42.809,41.225,39.780,
-40.415,43.941,48.502,50.525,47.621,40.706,33.282,28.696,27.946,29.702,31.944,33.451,34.132,34.457,34.797,35.142,
-35.228,34.832,33.996,33.011,32.195,31.659,31.270,30.798,30.122,29.323,28.617,28.151,27.823,27.336,26.488,25.424,
-24.529,24.033,23.774,23.391,22.751,22.085,21.704,21.650,21.659,21.422,20.814,19.930,18.981,18.191,17.675,17.345,
-16.965,16.372,15.661,15.086,14.780,14.603,14.305,13.793,13.183,12.620,12.127,11.633,11.104,10.576,10.094,9.663,
-9.267,8.892,8.522,8.147,7.779,7.455,7.181,6.907,6.561,6.128,5.649,5.170,4.713,4.310,4.023,3.885,
-3.826,3.704,3.416,2.984,2.513,2.097,1.771,1.523,1.327,1.151,.971,.767,.511,.168,-.257,-.671,
--.948,-1.065,-1.169,-1.434,-1.859,-2.253,-2.471,-2.594,-2.821,-3.190,-3.505,-3.597,-3.572,-3.712,-4.146,-4.693,
--5.080,-5.242,-5.345,-5.551,-5.841,-6.102,-6.289,-6.442,-6.569,-6.621,-6.585,-6.552,-6.616,-6.752,-6.840,-6.819,
--6.755,-6.741,-6.766,-6.737,-6.605,-6.411,-6.221,-6.042,-5.846,-5.645,-5.486,-5.381,-5.289,-5.166,-5.012,-4.845,
--4.666,-4.472,-4.293,-4.170,-4.107,-4.073,-4.077,-4.170,-4.354,-4.531,-4.604,-4.616,-4.692,-4.821,-4.781,-4.365,
--3.664,-3.028,-2.722,-2.718,-2.834,-2.967,-3.052,-2.875,-2.157,-.969,.067,.212,-.699,-2.098,-3.239,-3.833,
--4.075,-4.192,-4.168,-3.923,-3.551,-3.231,-2.987,-2.692,-2.310,-1.985,-1.809,-1.632,-1.235,-.659,-.205,-.079,
--.138,-.062,.270,.685,.979,1.144,1.308,1.521,1.697,1.760,1.745,1.745,1.789,1.827,1.816,1.770,
-1.733,1.718,1.690,1.598,1.420,1.192,.974,.799,.643,.466,.281,.154,.114,.105,.038,-.098,
--.227,-.281,-.289,-.339,-.472,-.657,-.857,-1.087,-1.378,-1.718,-2.058,-2.366,-2.658,-2.966,-3.305,-3.675,
--4.066,-4.460,-4.822,-5.135,-5.428,-5.749,-6.103,-6.440,-6.721,-6.964,-7.225,-7.521,-7.823,-8.107,-8.390,-8.701,
--9.013,-9.273,-9.461,-9.620,-9.802,-10.007,-10.206,-10.388,-10.584,-10.821,-11.092,-11.373,-11.647,-11.902,-12.122,-12.308,
--12.501,-12.757,-13.078,-13.403,-13.672,-13.893,-14.126,-14.404,-14.705,-14.994,-15.270,-15.552,-15.837,-16.102,-16.347,-16.605,
--16.901,-17.217,-17.509,-17.761,-17.996,-18.246,-18.527,-18.844,-19.201,-19.601,-20.038,-20.488,-20.926,-21.334,-21.708,-22.068,
--22.438,-22.828,-23.228,-23.626,-24.031,-24.463,-24.916,-25.358,-25.770,-26.169,-26.577,-26.989,-27.379,-27.749,-28.123,-28.508,
--28.873,-29.190,-29.483,-29.800,-30.144,-30.471,-30.756,-31.039,-31.368,-31.735,-32.084,-32.388,-32.682,-33.008,-33.359,-33.701,
--34.031,-34.384,-34.785,-35.220,-35.650,-36.054,-36.432,-36.792,-37.142,-37.487,-37.823,-38.143,-38.453,-38.782,-39.153,-39.547,
--39.917,-40.241,-40.551,-40.884,-41.230,-41.542,-41.797,-42.024,-42.269,-42.553,-42.866,-43.182,-43.462,-43.669,-43.796,-43.887,
--44.001,-44.152,-44.313,-44.464,-44.617,-44.778,-44.913,-44.992,-45.038,-45.112,-45.224,-45.326,-45.384,-45.435,-45.522,-45.613,
--45.623,-45.522,-45.386,-45.303,-45.276,-45.240,-45.160,-45.061,-44.975,-44.895,-44.807,-44.716,-44.628,-44.519,-44.362,-44.167,
--43.975,-43.809,-43.661,-43.522,-43.381,-43.207,-42.981,-42.786,-42.800,-43.107,-43.489,-43.486,-42.752,-41.360,-39.749,-38.388,
--37.523,-37.150,-37.124,-37.209,-37.137,-36.754,-36.175,-35.735,-35.698,-36.017,-36.369,-36.439,-36.139,-35.584,-34.921,-34.218,
--33.501,-32.831,-32.290,-31.883,-31.464,-30.824,-29.868,-28.710,-27.570,-26.577,-25.695,-24.861,-24.145,-23.719,-23.649,-23.782,
--23.861,-23.755,-23.539,-23.352,-23.230,-23.090,-22.833,-22.439,-21.985,-21.594,-21.372,-21.318,-21.295,-21.115,-20.714,-20.248,
--19.990,-20.118,-20.599,-21.256,-21.891,-22.351,-22.557,-22.559,-22.562,-22.823,-23.448,-24.281,-25.053,-25.620,-26.056,-26.499,
--26.958,-27.310,-27.448,-27.392,-27.236,-27.041,-26.835,-26.687,-26.730,-27.068,-27.671,-28.380,-29.014,-29.465,-29.709,-29.763,
--29.655,-29.406,-29.037,-28.584,-28.117,-27.733,-27.492,-27.376,-27.322,-27.303,-27.352,-27.476,-27.585,-27.542,-27.303,-26.970,
--26.686,-26.505,-26.387,-26.301,-26.274,-26.344,-26.496,-26.700,-26.976,-27.380,-27.918,-28.508,-29.053,-29.526,-29.974,-30.428,
--30.820,-30.979,-30.703,-29.893,-28.659,-27.305,-26.156,-25.359,-24.851,-24.529,-24.394,-24.517,-24.879,-25.325,-25.693,-25.939,
--26.119,-26.304,-26.546,-26.901,-27.390,-27.937,-28.410,-28.783,-29.209,-29.852,-30.677,-31.429,-31.855,-31.920,-31.855,-32.062,
--32.918,-34.502,-36.375,-37.755,-38.182,-38.075,-38.483,-40.076,-42.389,-44.221,-44.791,-44.416,-44.012,-44.113,-44.511,-44.765,
--44.793,-44.885,-45.292,-45.983,-46.779,-47.544,-48.213,-48.747,-49.171,-49.597,-50.126,-50.713,-51.201,-51.502,-51.674,-51.818,
--51.944,-51.997,-51.971,-51.917,-51.857,-51.741,-51.517,-51.205,-50.860,-50.505,-50.124,-49.728,-49.365,-49.076,-48.858,-48.689,
--48.560,-48.464,-48.374,-48.261,-48.130,-48.021,-47.965,-47.964,-48.005,-48.072,-48.151,-48.220,-48.272,-48.314,-48.343,-48.335,
--48.275,-48.192,-48.127,-48.077,-47.984,-47.807,-47.576,-47.362,-47.185,-46.997,-46.749,-46.448,-46.128,-45.795,-45.421,-44.997,
--44.558,-44.146,-43.761,-43.360,-42.906,-42.402,-41.886,-41.387,-40.895,-40.373,-39.794,-39.174,-38.554,-37.951,-37.343,-36.700,
--36.023,-35.336,-34.648,-33.949,-33.245,-32.562,-31.904,-31.217,-30.443,-29.589,-28.727,-27.910,-27.113,-26.285,-25.419,-24.552,
--23.704,-22.843,-21.947,-21.037,-20.150,-19.281,-18.393,-17.466,-16.516,-15.561,-14.605,-13.657,-12.741,-11.852,-10.936,-9.952,
--8.950,-8.028,-7.200,-6.338,-5.299,-4.093,-2.895,-1.872,-1.035,-.273,.477,1.151,1.641,1.948,2.215,2.616,
-3.209,3.905,4.562,5.116,5.602,6.077,6.554,7.005,7.420,7.819,8.225,8.634,9.047,9.486,9.959,10.432,
-10.863,11.261,11.681,12.147,12.617,13.043,13.449,13.899,14.395,14.867,15.267,15.638,16.054,16.509,16.930,17.281,
-17.612,17.981,18.368,18.717,19.036,19.398,19.853,20.359,20.838,21.262,21.662,22.064,22.455,22.812,23.130,23.424,
-23.703,23.968,24.198,24.360,24.427,24.424,24.428,24.508,24.670,24.870,25.084,25.321,25.584,25.830,26.018,26.155,
-26.281,26.400,26.476,26.478,26.425,26.352,26.271,26.179,26.086,26.014,25.966,25.939,25.956,26.065,26.282,26.578,
-26.922,27.323,27.791,28.282,28.725,29.102,29.463,29.858,30.288,30.759,31.298,31.899,32.480,32.995,33.569,34.392,
-35.427,36.306,36.647,36.450,36.054,35.701,35.320,34.857,34.668,35.276,36.667,38.013,38.337,37.460,36.154,35.355,
-35.352,35.806,36.356,36.972,37.732,38.494,38.993,39.161,39.200,39.300,39.414,39.392,39.234,39.117,39.181,39.380,
-39.566,39.629,39.540,39.311,39.007,38.763,38.689,38.736,38.704,38.427,37.922,37.330,36.745,36.164,35.596,35.127,
-34.838,34.699,34.605,34.501,34.409,34.330,34.206,34.007,33.812,33.734,33.771,33.792,33.670,33.390,32.990,32.471,
-31.815,31.087,30.417,29.868,29.367,28.809,28.199,27.651,27.265,27.060,27.012,26.343,26.442,26.591,26.580,26.267,
-25.767,25.365,25.227,25.258,25.289,25.323,25.518,25.925,26.391,26.750,27.025,27.360,27.795,28.215,28.537,28.819,
-29.140,29.429,29.534,29.432,29.269,29.168,29.081,28.909,28.718,28.723,29.023,29.433,29.653,29.574,29.372,29.285,
-29.357,29.417,29.293,28.989,28.669,28.488,28.464,28.495,28.484,28.432,28.403,28.406,28.346,28.121,27.762,27.439,
-27.306,27.354,27.448,27.494,27.536,27.692,28.013,28.443,28.889,29.297,29.649,29.950,30.225,30.519,30.839,31.100,
-31.156,30.908,30.364,29.610,28.747,27.881,27.132,26.588,26.209,25.843,25.363,24.793,24.264,23.854,23.510,23.135,
-22.708,22.282,21.894,21.524,21.156,20.829,20.583,20.371,20.078,19.633,19.079,18.509,17.959,17.375,16.701,15.967,
-15.296,14.819,14.587,14.547,14.581,14.591,14.559,14.527,14.527,14.526,14.452,14.278,14.068,13.934,13.945,14.064,
-14.168,14.136,13.930,13.622,13.328,13.115,12.959,12.810,12.692,12.705,12.917,13.262,13.598,13.845,14.032,14.176,
-14.151,13.775,13.052,12.290,11.873,11.910,12.151,12.306,12.419,12.847,13.843,15.192,16.324,16.795,16.618,16.145,
-15.669,15.197,14.590,13.825,13.070,12.521,12.210,12.005,11.763,11.459,11.166,10.933,10.706,10.365,9.836,9.158,
-8.459,7.845,7.319,6.785,6.141,5.358,4.502,3.659,2.863,2.067,1.203,.268,-.647,-1.424,-2.027,-2.549,
--3.153,-3.960,-4.976,-6.112,-7.258,-8.360,-9.440,-10.562,-11.755,-12.977,-14.146,-15.222,-16.247,-17.308,-18.458,-19.687,
--20.949,-22.202,-23.394,-24.458,-25.325,-25.976,-26.461,-26.869,-27.266,-27.647,-27.931,-28.008,-27.817,-27.383,-26.782,-26.068,
--25.279,-24.491,-23.826,-23.372,-23.120,-23.065,-23.326,-24.072,-25.251,-26.484,-27.370,-27.876,-28.292,-28.712,-28.666,-27.488,
--25.095,-22.315,-20.318,-19.726,-20.261,-21.176,-21.907,-22.336,-22.635,-22.991,-23.470,-23.994,-24.377,-24.464,-24.292,-24.135,
--24.312,-24.929,-25.803,-26.651,-27.344,-27.978,-28.729,-29.636,-30.530,-31.165,-31.415,-31.359,-31.182,-31.010,-30.876,-30.831,
--31.028,-31.629,-32.642,-33.884,-35.160,-36.454,-37.920,-39.674,-41.600,-43.352,-44.533,-44.914,-44.565,-43.839,-43.195,-42.973,
--43.237,-43.811,-44.432,-44.919,-45.232,-45.450,-45.667,-45.877,-45.928,-45.629,-44.984,-44.304,-44.045,-44.436,-45.271,-46.095,
--46.608,-46.879,-47.151,-47.494,-47.709,-47.583,-47.190,-46.879,-46.978,-47.543,-48.408,-49.404,-50.475,-51.578,-52.596,-53.408,
--54.035,-54.657,-55.439,-56.396,-57.432,-58.467,-59.477,-60.434,-61.282,-62.009,-62.685,-63.400,-64.158,-64.875,-65.471,-65.925,
--66.261,-66.514,-66.711,-66.865,-66.947,-66.907,-66.737,-66.493,-66.223,-65.910,-65.519,-65.069,-64.591,-64.026,-63.256,-62.234,
--60.967,-59.282,-56.797,-53.363,-49.549,-46.418,-44.622,-43.813,-43.127,-42.147,-41.125,-40.279,-39.265,-37.617,-35.518,-33.781,
--33.065,-33.425,-34.653,-36.596,-38.819,-40.304,-40.142,-38.645,-37.209,-36.732,-36.535,-35.432,-33.760,-33.598,-36.596,-41.976,
--47.227,-50.650,-52.679,-54.621,-56.747,-58.135,-58.110,-57.150,-56.180,-55.418,-54.296,-52.351,-49.832,-47.447,-45.794,-45.078,
--45.098,-45.301,-45.020,-43.960,-42.471,-41.166,-40.262,-39.425,-38.319,-37.094,-36.189,-35.763,-35.543,-35.212,-34.738,-34.262,
--33.857,-33.566,-33.566,-34.039,-34.834,-35.429,-35.387,-34.780,-34.069,-33.593,-33.300,-32.972,-32.561,-32.209,-32.009,-31.890,
--31.750,-31.610,-31.559,-31.591,-31.562,-31.309,-30.803,-30.152,-29.487,-28.850,-28.176,-27.391,-26.517,-25.681,-25.018,-24.539,
--24.105,-23.539,-22.770,-21.890,-21.075,-20.454,-20.027,-19.684,-19.305,-18.858,-18.397,-17.976,-17.556,-17.027,-16.307,-15.421,
--14.457,-13.473,-12.460,-11.404,-10.345,-9.358,-8.486,-7.700,-6.924,-6.103,-5.223,-4.299,-3.330,-2.282,-1.113,.167,
-1.468,2.654,3.640,4.459,5.268,6.262,7.554,9.051,10.443,11.369,11.707,11.728,11.922,12.601,13.656,14.713,
-15.505,16.071,16.613,17.258,17.985,18.752,19.566,20.435,21.303,22.110,22.886,23.716,24.630,25.556,26.427,27.261,
-28.108,28.924,29.568,29.951,30.159,30.376,30.718,31.155,31.588,31.934,32.104,31.935,31.235,29.950,28.293,26.660,
-25.397,24.619,24.238,24.145,24.358,25.012,26.195,27.794,29.489,30.934,31.975,32.694,33.270,33.789,34.211,34.482,
-34.638,34.758,34.887,35.040,35.277,35.691,36.294,36.949,37.482,37.834,38.091,38.363,38.701,39.108,39.575,40.056,
-40.471,40.792,41.089,41.420,41.725,41.919,42.093,42.472,43.082,43.602,43.730,43.632,43.717,43.888,43.363,41.675,
-39.823,39.877,42.896,47.247,49.413,46.868,40.326,33.191,28.838,28.312,30.255,32.574,34.043,34.650,34.917,35.157,
-35.286,35.094,34.554,33.858,33.226,32.735,32.309,31.830,31.234,30.533,29.827,29.267,28.936,28.695,28.230,27.345,
-26.224,25.306,24.835,24.609,24.219,23.527,22.811,22.436,22.464,22.613,22.519,21.982,21.018,19.804,18.610,17.679,
-17.068,16.629,16.179,15.712,15.367,15.210,15.111,14.869,14.418,13.858,13.300,12.758,12.196,11.620,11.079,10.602,
-10.173,9.767,9.375,8.986,8.593,8.216,7.906,7.685,7.494,7.229,6.824,6.292,5.702,5.138,4.683,4.386,
-4.227,4.110,3.931,3.652,3.296,2.895,2.469,2.062,1.748,1.559,1.436,1.270,1.003,.659,.285,-.091,
--.431,-.672,-.795,-.897,-1.130,-1.524,-1.940,-2.228,-2.402,-2.605,-2.909,-3.220,-3.428,-3.576,-3.815,-4.193,
--4.574,-4.809,-4.920,-5.069,-5.344,-5.663,-5.889,-6.000,-6.086,-6.209,-6.334,-6.413,-6.467,-6.548,-6.648,-6.692,
--6.641,-6.550,-6.497,-6.484,-6.436,-6.307,-6.126,-5.956,-5.813,-5.679,-5.552,-5.456,-5.387,-5.291,-5.118,-4.883,
--4.646,-4.440,-4.257,-4.097,-3.985,-3.933,-3.909,-3.889,-3.918,-4.061,-4.294,-4.503,-4.609,-4.655,-4.709,-4.710,
--4.517,-4.114,-3.692,-3.453,-3.354,-3.156,-2.704,-2.095,-1.536,-1.127,-.890,-.910,-1.330,-2.120,-2.988,-3.605,
--3.893,-4.007,-4.067,-4.021,-3.800,-3.483,-3.203,-2.961,-2.643,-2.237,-1.890,-1.695,-1.520,-1.174,-.689,-.310,
--.173,-.107,.158,.645,1.116,1.380,1.506,1.671,1.899,2.048,2.032,1.956,1.984,2.145,2.314,2.367,
-2.305,2.230,2.221,2.269,2.291,2.209,2.016,1.781,1.575,1.397,1.190,.935,.708,.597,.586,.559,
-.434,.258,.142,.118,.111,.045,-.082,-.230,-.403,-.646,-.971,-1.324,-1.642,-1.922,-2.206,-2.530,
--2.894,-3.283,-3.680,-4.061,-4.405,-4.721,-5.047,-5.406,-5.770,-6.093,-6.368,-6.639,-6.941,-7.259,-7.560,-7.847,
--8.146,-8.460,-8.754,-8.997,-9.209,-9.427,-9.658,-9.884,-10.102,-10.338,-10.611,-10.899,-11.174,-11.430,-11.679,-11.912,
--12.116,-12.310,-12.551,-12.868,-13.217,-13.530,-13.791,-14.043,-14.324,-14.627,-14.930,-15.231,-15.536,-15.825,-16.064,-16.258,
--16.460,-16.712,-16.997,-17.273,-17.526,-17.780,-18.056,-18.349,-18.657,-18.998,-19.387,-19.812,-20.241,-20.655,-21.055,-21.444,
--21.816,-22.176,-22.544,-22.935,-23.348,-23.776,-24.216,-24.666,-25.107,-25.518,-25.902,-26.284,-26.677,-27.076,-27.473,-27.876,
--28.279,-28.654,-28.979,-29.281,-29.610,-29.980,-30.346,-30.670,-30.971,-31.297,-31.657,-32.012,-32.331,-32.635,-32.957,-33.298,
--33.635,-33.973,-34.345,-34.770,-35.223,-35.659,-36.059,-36.434,-36.799,-37.158,-37.510,-37.853,-38.181,-38.499,-38.824,-39.175,
--39.547,-39.914,-40.261,-40.602,-40.948,-41.278,-41.557,-41.790,-42.028,-42.318,-42.653,-42.990,-43.287,-43.531,-43.720,-43.862,
--43.983,-44.117,-44.279,-44.461,-44.652,-44.849,-45.031,-45.159,-45.213,-45.231,-45.280,-45.378,-45.485,-45.563,-45.628,-45.713,
--45.804,-45.840,-45.789,-45.689,-45.595,-45.527,-45.468,-45.403,-45.326,-45.232,-45.125,-45.028,-44.957,-44.882,-44.750,-44.558,
--44.367,-44.227,-44.106,-43.944,-43.744,-43.561,-43.398,-43.188,-42.926,-42.764,-42.873,-43.209,-43.468,-43.308,-42.592,-41.415,
--39.986,-38.577,-37.523,-37.097,-37.253,-37.552,-37.470,-36.852,-36.051,-35.586,-35.672,-36.076,-36.380,-36.325,-35.928,-35.340,
--34.682,-33.995,-33.315,-32.700,-32.183,-31.686,-31.046,-30.156,-29.092,-28.049,-27.151,-26.344,-25.508,-24.659,-23.989,-23.672,
--23.666,-23.733,-23.654,-23.401,-23.102,-22.875,-22.708,-22.497,-22.165,-21.759,-21.422,-21.259,-21.225,-21.142,-20.865,-20.440,
--20.077,-19.966,-20.134,-20.480,-20.910,-21.365,-21.755,-21.953,-21.932,-21.886,-22.125,-22.799,-23.738,-24.614,-25.242,-25.701,
--26.160,-26.636,-26.975,-27.030,-26.826,-26.515,-26.237,-26.069,-26.083,-26.388,-27.050,-27.979,-28.940,-29.704,-30.191,-30.456,
--30.574,-30.548,-30.338,-29.945,-29.452,-28.984,-28.630,-28.402,-28.265,-28.196,-28.218,-28.353,-28.542,-28.634,-28.490,-28.110,
--27.635,-27.217,-26.906,-26.659,-26.442,-26.266,-26.146,-26.066,-26.035,-26.118,-26.382,-26.791,-27.225,-27.598,-27.945,-28.365,
--28.897,-29.483,-29.990,-30.242,-30.034,-29.242,-27.971,-26.580,-25.471,-24.840,-24.623,-24.671,-24.896,-25.244,-25.604,-25.847,
--25.934,-25.960,-26.042,-26.222,-26.489,-26.842,-27.291,-27.804,-28.328,-28.861,-29.473,-30.186,-30.860,-31.235,-31.148,-30.775,
--30.652,-31.363,-33.046,-35.142,-36.747,-37.410,-37.615,-38.376,-40.209,-42.555,-44.281,-44.757,-44.351,-43.899,-43.859,-44.081,
--44.265,-44.398,-44.688,-45.234,-45.933,-46.657,-47.376,-48.072,-48.671,-49.130,-49.533,-50.010,-50.566,-51.065,-51.393,-51.579,
--51.726,-51.879,-51.995,-52.036,-52.002,-51.907,-51.746,-51.520,-51.258,-50.984,-50.687,-50.344,-49.964,-49.591,-49.266,-49.009,
--48.828,-48.722,-48.666,-48.614,-48.543,-48.472,-48.427,-48.400,-48.371,-48.354,-48.393,-48.506,-48.659,-48.801,-48.907,-48.971,
--48.977,-48.922,-48.842,-48.788,-48.755,-48.667,-48.463,-48.172,-47.889,-47.666,-47.464,-47.217,-46.904,-46.558,-46.205,-45.843,
--45.461,-45.062,-44.660,-44.252,-43.823,-43.362,-42.876,-42.388,-41.912,-41.435,-40.920,-40.344,-39.726,-39.105,-38.490,-37.847,
--37.141,-36.397,-35.668,-34.975,-34.291,-33.595,-32.910,-32.253,-31.579,-30.822,-29.981,-29.132,-28.336,-27.566,-26.753,-25.883,
--25.009,-24.165,-23.322,-22.440,-21.528,-20.626,-19.740,-18.834,-17.885,-16.916,-15.959,-15.020,-14.087,-13.160,-12.236,-11.299,
--10.348,-9.423,-8.563,-7.725,-6.792,-5.690,-4.494,-3.373,-2.434,-1.637,-.888,-.168,.440,.865,1.157,1.473,
-1.950,2.599,3.310,3.957,4.498,4.979,5.451,5.909,6.326,6.707,7.094,7.505,7.911,8.299,8.708,9.183,
-9.694,10.156,10.535,10.901,11.336,11.829,12.302,12.717,13.123,13.572,14.044,14.488,14.898,15.309,15.723,16.096,
-16.410,16.715,17.069,17.464,17.848,18.208,18.596,19.054,19.560,20.050,20.485,20.870,21.225,21.564,21.899,22.235,
-22.569,22.886,23.182,23.454,23.674,23.803,23.848,23.888,24.018,24.258,24.549,24.833,25.102,25.368,25.617,25.815,
-25.960,26.083,26.197,26.285,26.324,26.314,26.262,26.156,25.999,25.832,25.709,25.650,25.639,25.676,25.794,26.018,
-26.334,26.715,27.160,27.673,28.214,28.716,29.153,29.554,29.954,30.363,30.804,31.336,31.970,32.604,33.114,33.516,
-33.969,34.552,35.100,35.347,35.200,34.790,34.260,33.639,33.005,32.663,32.933,33.712,34.398,34.418,33.818,33.230,
-33.246,33.917,34.874,35.808,36.672,37.493,38.179,38.617,38.852,39.042,39.233,39.311,39.202,39.037,39.034,39.256,
-39.561,39.775,39.831,39.731,39.468,39.081,38.729,38.594,38.680,38.761,38.589,38.114,37.464,36.761,36.031,35.302,
-34.682,34.275,34.066,33.945,33.846,33.781,33.750,33.677,33.509,33.321,33.234,33.256,33.250,33.094,32.800,32.443,
-32.020,31.464,30.785,30.102,29.505,28.953,28.347,27.689,27.090,26.654,26.406,26.343,25.845,25.888,26.027,26.020,
-25.691,25.161,24.771,24.734,24.934,25.129,25.267,25.495,25.887,26.304,26.597,26.830,27.193,27.731,28.289,28.740,
-29.146,29.604,30.035,30.245,30.188,30.039,29.960,29.891,29.679,29.365,29.206,29.381,29.754,30.007,29.976,29.782,
-29.649,29.650,29.673,29.578,29.343,29.066,28.856,28.753,28.704,28.628,28.490,28.325,28.163,27.960,27.643,27.234,
-26.897,26.798,26.921,27.086,27.149,27.165,27.300,27.623,28.042,28.438,28.799,29.190,29.622,30.029,30.355,30.623,
-30.860,31.004,30.912,30.476,29.715,28.774,27.848,27.113,26.641,26.357,26.089,25.707,25.218,24.716,24.247,23.771,
-23.260,22.773,22.397,22.117,21.819,21.419,20.956,20.517,20.116,19.676,19.147,18.572,18.028,17.524,16.996,16.391,
-15.743,15.153,14.731,14.528,14.514,14.584,14.621,14.572,14.474,14.394,14.347,14.283,14.148,13.951,13.760,13.646,
-13.626,13.647,13.623,13.503,13.325,13.178,13.098,13.009,12.814,12.553,12.421,12.581,12.975,13.384,13.673,13.919,
-14.219,14.443,14.280,13.594,12.667,11.994,11.826,11.987,12.159,12.290,12.633,13.386,14.383,15.207,15.577,15.558,
-15.406,15.253,15.003,14.509,13.797,13.081,12.579,12.337,12.219,12.063,11.814,11.541,11.317,11.111,10.803,10.303,
-9.645,8.957,8.345,7.803,7.239,6.565,5.763,4.889,4.027,3.213,2.403,1.515,.529,-.450,-1.256,-1.823,
--2.264,-2.796,-3.574,-4.604,-5.785,-7.002,-8.183,-9.310,-10.420,-11.579,-12.824,-14.113,-15.359,-16.512,-17.613,-18.747,
--19.967,-21.250,-22.522,-23.703,-24.735,-25.581,-26.230,-26.708,-27.083,-27.451,-27.885,-28.360,-28.749,-28.915,-28.810,-28.482,
--27.982,-27.336,-26.619,-25.990,-25.591,-25.425,-25.433,-25.688,-26.400,-27.597,-28.903,-29.787,-30.069,-30.025,-29.882,-29.345,
--27.843,-25.293,-22.471,-20.459,-19.779,-20.110,-20.789,-21.402,-21.905,-22.364,-22.789,-23.195,-23.630,-24.078,-24.412,-24.547,
--24.611,-24.881,-25.513,-26.378,-27.200,-27.815,-28.288,-28.802,-29.462,-30.198,-30.816,-31.144,-31.147,-30.958,-30.804,-30.885,
--31.304,-32.047,-33.019,-34.086,-35.150,-36.209,-37.370,-38.763,-40.412,-42.155,-43.676,-44.646,-44.913,-44.594,-44.026,-43.573,
--43.454,-43.695,-44.194,-44.782,-45.257,-45.457,-45.389,-45.246,-45.221,-45.263,-45.106,-44.607,-44.019,-43.837,-44.320,-45.229,
--46.081,-46.625,-46.992,-47.401,-47.804,-47.925,-47.619,-47.121,-46.888,-47.223,-48.076,-49.175,-50.292,-51.344,-52.308,-53.125,
--53.750,-54.259,-54.842,-55.649,-56.664,-57.734,-58.718,-59.581,-60.367,-61.120,-61.843,-62.530,-63.189,-63.828,-64.441,-65.007,
--65.501,-65.929,-66.328,-66.731,-67.101,-67.338,-67.385,-67.318,-67.279,-67.300,-67.251,-67.021,-66.691,-66.445,-66.304,-66.050,
--65.446,-64.428,-62.997,-61.068,-58.612,-55.962,-53.715,-52.187,-51.090,-49.934,-48.675,-47.690,-47.085,-46.336,-44.867,-42.829,
--41.015,-40.030,-39.844,-40.198,-41.045,-42.248,-43.139,-42.956,-41.830,-40.876,-40.935,-41.533,-41.576,-41.020,-41.257,-43.525,
--47.324,-50.878,-53.068,-54.383,-55.841,-57.453,-58.221,-57.477,-55.732,-54.060,-52.974,-52.141,-51.005,-49.418,-47.689,-46.287,
--45.540,-45.408,-45.408,-44.911,-43.708,-42.225,-41.061,-40.321,-39.586,-38.534,-37.380,-36.581,-36.248,-36.074,-35.776,-35.395,
--35.095,-34.870,-34.638,-34.499,-34.668,-35.110,-35.414,-35.180,-34.453,-33.646,-33.064,-32.642,-32.166,-31.622,-31.210,-31.061,
--31.076,-31.070,-30.991,-30.930,-30.926,-30.866,-30.587,-30.063,-29.427,-28.830,-28.286,-27.688,-26.945,-26.104,-25.320,-24.719,
--24.286,-23.874,-23.310,-22.526,-21.607,-20.747,-20.117,-19.740,-19.476,-19.150,-18.701,-18.197,-17.710,-17.209,-16.594,-15.812,
--14.906,-13.941,-12.940,-11.895,-10.829,-9.796,-8.840,-7.964,-7.149,-6.369,-5.578,-4.720,-3.774,-2.761,-1.700,-.564,
-.662,1.904,3.023,3.951,4.777,5.684,6.794,8.078,9.379,10.479,11.204,11.540,11.711,12.071,12.829,13.873,
-14.887,15.657,16.232,16.793,17.443,18.164,18.924,19.743,20.629,21.533,22.396,23.228,24.076,24.943,25.791,26.619,
-27.475,28.360,29.157,29.716,30.014,30.187,30.403,30.733,31.154,31.621,32.060,32.278,31.978,30.960,29.340,27.544,
-26.041,25.048,24.489,24.217,24.248,24.753,25.838,27.361,28.972,30.350,31.395,32.219,32.971,33.683,34.269,34.650,
-34.852,34.977,35.103,35.228,35.340,35.509,35.866,36.463,37.185,37.820,38.227,38.438,38.598,38.838,39.200,39.639,
-40.076,40.470,40.857,41.290,41.728,42.027,42.122,42.195,42.522,43.106,43.598,43.715,43.658,43.833,44.102,43.625,
-41.868,39.751,39.306,41.704,45.581,47.690,45.575,39.760,33.341,29.466,29.105,30.945,33.008,34.217,34.679,34.921,
-35.144,35.162,34.816,34.253,33.784,33.538,33.343,32.939,32.244,31.395,30.582,29.927,29.478,29.213,28.980,28.523,
-27.698,26.675,25.839,25.413,25.232,24.933,24.354,23.672,23.168,22.941,22.855,22.686,22.249,21.453,20.350,19.154,
-18.146,17.462,17.008,16.610,16.216,15.906,15.725,15.578,15.327,14.927,14.432,13.886,13.285,12.646,12.040,11.541,
-11.141,10.774,10.388,9.976,9.553,9.135,8.754,8.453,8.235,8.037,7.767,7.375,6.872,6.307,5.745,5.261,
-4.913,4.684,4.495,4.280,4.035,3.776,3.463,3.038,2.531,2.079,1.800,1.650,1.471,1.164,.775,.411,
-.111,-.150,-.381,-.558,-.696,-.880,-1.177,-1.547,-1.886,-2.143,-2.363,-2.607,-2.877,-3.150,-3.431,-3.740,
--4.042,-4.258,-4.372,-4.482,-4.707,-5.048,-5.371,-5.555,-5.613,-5.666,-5.799,-5.988,-6.156,-6.262,-6.321,-6.353,
--6.351,-6.308,-6.248,-6.207,-6.180,-6.120,-5.997,-5.831,-5.677,-5.567,-5.499,-5.461,-5.442,-5.404,-5.278,-5.026,
--4.697,-4.397,-4.189,-4.054,-3.951,-3.884,-3.873,-3.885,-3.864,-3.828,-3.883,-4.093,-4.365,-4.538,-4.565,-4.539,
--4.521,-4.431,-4.178,-3.842,-3.588,-3.400,-3.004,-2.183,-1.111,-.280,-.074,-.477,-1.196,-1.965,-2.658,-3.189,
--3.475,-3.519,-3.454,-3.406,-3.368,-3.267,-3.098,-2.930,-2.762,-2.506,-2.123,-1.730,-1.468,-1.324,-1.161,-.903,
--.605,-.312,.043,.527,1.034,1.358,1.448,1.493,1.695,2.022,2.259,2.292,2.239,2.298,2.515,2.753,
-2.862,2.818,2.714,2.657,2.688,2.768,2.808,2.741,2.581,2.395,2.209,1.972,1.650,1.322,1.128,1.103,
-1.110,.990,.746,.531,.463,.496,.501,.416,.278,.127,-.057,-.307,-.608,-.912,-1.203,-1.506,
--1.835,-2.176,-2.515,-2.862,-3.227,-3.591,-3.928,-4.251,-4.598,-4.976,-5.350,-5.688,-6.006,-6.340,-6.691,-7.026,
--7.324,-7.608,-7.906,-8.211,-8.500,-8.767,-9.026,-9.279,-9.521,-9.764,-10.038,-10.348,-10.657,-10.922,-11.155,-11.399,
--11.667,-11.927,-12.164,-12.412,-12.712,-13.051,-13.377,-13.664,-13.936,-14.218,-14.510,-14.802,-15.110,-15.438,-15.746,-15.979,
--16.142,-16.305,-16.524,-16.788,-17.054,-17.317,-17.610,-17.936,-18.261,-18.564,-18.872,-19.224,-19.611,-19.994,-20.361,-20.731,
--21.116,-21.496,-21.855,-22.219,-22.622,-23.061,-23.507,-23.939,-24.363,-24.782,-25.184,-25.561,-25.934,-26.327,-26.739,-27.149,
--27.548,-27.938,-28.309,-28.652,-28.981,-29.340,-29.745,-30.162,-30.540,-30.874,-31.207,-31.567,-31.938,-32.292,-32.624,-32.953,
--33.289,-33.628,-33.979,-34.362,-34.781,-35.208,-35.618,-36.009,-36.390,-36.762,-37.116,-37.451,-37.784,-38.129,-38.486,-38.850,
--39.223,-39.594,-39.950,-40.291,-40.637,-40.993,-41.330,-41.609,-41.842,-42.095,-42.416,-42.781,-43.118,-43.381,-43.582,-43.756,
--43.922,-44.081,-44.242,-44.424,-44.635,-44.863,-45.081,-45.248,-45.334,-45.348,-45.343,-45.384,-45.489,-45.620,-45.729,-45.810,
--45.880,-45.942,-45.976,-45.963,-45.907,-45.825,-45.740,-45.676,-45.639,-45.595,-45.499,-45.351,-45.214,-45.133,-45.072,-44.952,
--44.765,-44.588,-44.477,-44.379,-44.206,-43.962,-43.732,-43.553,-43.359,-43.103,-42.867,-42.789,-42.894,-43.061,-43.141,-43.025,
--42.586,-41.668,-40.278,-38.781,-37.749,-37.485,-37.719,-37.823,-37.388,-36.555,-35.819,-35.550,-35.725,-36.034,-36.172,-36.020,
--35.627,-35.092,-34.479,-33.819,-33.150,-32.520,-31.933,-31.317,-30.578,-29.707,-28.802,-27.958,-27.151,-26.269,-25.282,-24.338,
--23.668,-23.375,-23.337,-23.310,-23.130,-22.822,-22.521,-22.314,-22.164,-21.979,-21.732,-21.499,-21.350,-21.233,-21.018,-20.652,
--20.262,-20.038,-20.038,-20.150,-20.255,-20.371,-20.585,-20.874,-21.072,-21.076,-21.039,-21.279,-21.983,-23.006,-24.007,-24.755,
--25.285,-25.753,-26.202,-26.496,-26.483,-26.174,-25.751,-25.426,-25.323,-25.503,-26.015,-26.876,-27.982,-29.107,-30.029,-30.663,
--31.050,-31.229,-31.160,-30.804,-30.235,-29.645,-29.209,-28.976,-28.880,-28.849,-28.878,-28.996,-29.177,-29.312,-29.266,-28.985,
--28.540,-28.069,-27.668,-27.342,-27.054,-26.786,-26.537,-26.285,-26.010,-25.766,-25.675,-25.811,-26.092,-26.360,-26.545,-26.729,
--27.023,-27.448,-27.971,-28.594,-29.268,-29.740,-29.603,-28.648,-27.163,-25.783,-25.000,-24.849,-25.039,-25.310,-25.575,-25.804,
--25.922,-25.896,-25.819,-25.837,-25.994,-26.215,-26.450,-26.745,-27.155,-27.649,-28.176,-28.778,-29.534,-30.349,-30.872,-30.777,
--30.186,-29.750,-30.189,-31.635,-33.446,-34.785,-35.447,-36.088,-37.559,-39.973,-42.498,-44.101,-44.466,-44.127,-43.805,-43.760,
--43.823,-43.866,-44.030,-44.490,-45.183,-45.889,-46.510,-47.135,-47.837,-48.532,-49.095,-49.538,-49.984,-50.493,-50.987,-51.360,
--51.600,-51.773,-51.925,-52.044,-52.099,-52.078,-51.982,-51.822,-51.619,-51.399,-51.157,-50.867,-50.518,-50.139,-49.771,-49.432,
--49.136,-48.910,-48.779,-48.725,-48.700,-48.680,-48.687,-48.728,-48.765,-48.754,-48.721,-48.743,-48.863,-49.042,-49.214,-49.355,
--49.465,-49.529,-49.521,-49.454,-49.377,-49.310,-49.202,-48.996,-48.701,-48.396,-48.142,-47.925,-47.684,-47.377,-47.011,-46.622,
--46.242,-45.878,-45.510,-45.108,-44.660,-44.183,-43.708,-43.244,-42.784,-42.322,-41.857,-41.368,-40.821,-40.207,-39.557,-38.898,
--38.216,-37.484,-36.719,-35.977,-35.289,-34.625,-33.944,-33.251,-32.572,-31.888,-31.146,-30.337,-29.525,-28.760,-28.012,-27.209,
--26.335,-25.448,-24.597,-23.762,-22.898,-22.006,-21.120,-20.243,-19.331,-18.354,-17.343,-16.354,-15.407,-14.477,-13.538,-12.586,
--11.646,-10.748,-9.907,-9.083,-8.187,-7.141,-5.978,-4.836,-3.844,-3.012,-2.252,-1.506,-.821,-.280,.111,.453,
-.875,1.437,2.099,2.767,3.367,3.891,4.381,4.863,5.314,5.701,6.044,6.402,6.802,7.202,7.570,7.948,
-8.409,8.942,9.442,9.832,10.166,10.560,11.050,11.559,12.007,12.407,12.821,13.268,13.716,14.145,14.561,14.960,
-15.309,15.595,15.866,16.191,16.584,17.006,17.419,17.833,18.269,18.728,19.186,19.625,20.028,20.388,20.709,21.020,
-21.354,21.716,22.086,22.448,22.784,23.056,23.221,23.293,23.367,23.550,23.863,24.236,24.594,24.920,25.225,25.492,
-25.686,25.802,25.874,25.940,26.009,26.073,26.116,26.108,26.011,25.829,25.628,25.491,25.444,25.458,25.513,25.640,
-25.873,26.212,26.629,27.113,27.652,28.207,28.722,29.185,29.630,30.082,30.529,30.974,31.485,32.120,32.807,33.371,
-33.704,33.871,34.007,34.143,34.192,34.098,33.899,33.636,33.272,32.780,32.268,31.918,31.773,31.676,31.501,31.400,
-31.707,32.587,33.840,35.083,36.074,36.813,37.397,37.871,38.258,38.604,38.922,39.121,39.099,38.920,38.824,39.001,
-39.396,39.777,39.977,39.993,39.872,39.595,39.166,38.728,38.499,38.528,38.607,38.465,38.009,37.348,36.603,35.812,
-35.005,34.294,33.798,33.513,33.336,33.205,33.154,33.202,33.261,33.229,33.117,33.025,32.977,32.872,32.625,32.279,
-31.933,31.585,31.131,30.520,29.836,29.189,28.586,27.968,27.335,26.759,26.305,25.992,25.845,25.591,25.501,25.555,
-25.543,25.277,24.844,24.552,24.593,24.850,25.093,25.282,25.567,26.006,26.438,26.717,26.943,27.341,27.957,28.604,
-29.134,29.629,30.223,30.834,31.206,31.219,31.030,30.844,30.673,30.402,30.062,29.877,30.006,30.334,30.574,30.565,
-30.387,30.214,30.127,30.079,29.991,29.812,29.543,29.238,28.981,28.815,28.696,28.538,28.310,28.049,27.766,27.419,
-27.009,26.669,26.567,26.706,26.890,26.940,26.901,26.968,27.235,27.598,27.929,28.256,28.705,29.280,29.816,30.162,
-30.352,30.519,30.678,30.665,30.296,29.562,28.645,27.782,27.131,26.717,26.465,26.247,25.970,25.608,25.175,24.661,
-24.045,23.380,22.812,22.463,22.288,22.099,21.732,21.178,20.542,19.902,19.265,18.633,18.045,17.535,17.081,16.618,
-16.105,15.561,15.047,14.641,14.410,14.362,14.417,14.445,14.368,14.220,14.089,14.019,13.971,13.882,13.727,13.518,
-13.293,13.103,12.993,12.968,12.989,13.019,13.061,13.110,13.090,12.901,12.571,12.314,12.349,12.681,13.099,13.435,
-13.743,14.140,14.522,14.551,13.997,13.055,12.222,11.853,11.893,12.054,12.180,12.374,12.788,13.382,13.955,14.360,
-14.622,14.828,14.963,14.882,14.468,13.781,13.061,12.559,12.364,12.355,12.330,12.182,11.955,11.739,11.532,11.227,
-10.741,10.111,9.453,8.840,8.250,7.618,6.904,6.107,5.254,4.390,3.554,2.729,1.836,.833,-.188,-1.033,
--1.594,-1.982,-2.448,-3.184,-4.212,-5.435,-6.734,-8.010,-9.198,-10.299,-11.402,-12.615,-13.954,-15.319,-16.600,-17.789,
--18.969,-20.217,-21.530,-22.830,-24.028,-25.062,-25.905,-26.553,-27.020,-27.366,-27.700,-28.128,-28.660,-29.167,-29.492,-29.593,
--29.549,-29.418,-29.161,-28.758,-28.330,-28.070,-28.027,-28.109,-28.314,-28.841,-29.796,-30.861,-31.448,-31.267,-30.586,-29.790,
--28.798,-27.154,-24.738,-22.182,-20.416,-19.846,-20.132,-20.695,-21.262,-21.852,-22.441,-22.880,-23.108,-23.284,-23.600,-24.063,
--24.546,-24.999,-25.522,-26.200,-26.967,-27.665,-28.201,-28.618,-29.037,-29.546,-30.141,-30.701,-31.052,-31.098,-30.949,-30.901,
--31.247,-32.085,-33.264,-34.525,-35.668,-36.649,-37.562,-38.558,-39.753,-41.143,-42.571,-43.769,-44.493,-44.676,-44.481,-44.192,
--44.020,-44.026,-44.192,-44.521,-44.992,-45.446,-45.624,-45.416,-45.015,-44.741,-44.691,-44.649,-44.410,-44.110,-44.134,-44.676,
--45.514,-46.261,-46.768,-47.185,-47.634,-47.968,-47.936,-47.539,-47.136,-47.169,-47.817,-48.917,-50.158,-51.312,-52.287,-53.070,
--53.671,-54.141,-54.602,-55.202,-56.015,-56.986,-57.971,-58.848,-59.601,-60.300,-61.014,-61.745,-62.440,-63.056,-63.607,-64.130,
--64.637,-65.103,-65.516,-65.926,-66.396,-66.910,-67.351,-67.614,-67.735,-67.835,-67.952,-67.979,-67.823,-67.579,-67.451,-67.478,
--67.443,-67.089,-66.361,-65.358,-64.124,-62.637,-60.995,-59.462,-58.191,-57.030,-55.752,-54.438,-53.405,-52.712,-51.951,-50.712,
--49.134,-47.760,-46.874,-46.258,-45.674,-45.299,-45.392,-45.708,-45.660,-45.145,-44.844,-45.413,-46.587,-47.495,-47.843,-48.368,
--49.885,-52.186,-54.268,-55.554,-56.463,-57.598,-58.705,-58.794,-57.264,-54.632,-52.088,-50.483,-49.828,-49.555,-49.075,-48.165,
--47.053,-46.180,-45.753,-45.469,-44.777,-43.486,-42.002,-40.865,-40.142,-39.442,-38.507,-37.563,-36.995,-36.827,-36.722,-36.441,
--36.083,-35.840,-35.684,-35.464,-35.193,-35.056,-35.095,-35.061,-34.678,-33.976,-33.247,-32.684,-32.203,-31.645,-31.055,-30.655,
--30.567,-30.667,-30.727,-30.655,-30.527,-30.411,-30.238,-29.879,-29.319,-28.702,-28.177,-27.741,-27.247,-26.574,-25.763,-24.982,
--24.371,-23.934,-23.536,-22.996,-22.205,-21.220,-20.266,-19.598,-19.296,-19.193,-19.015,-18.621,-18.073,-17.490,-16.890,-16.194,
--15.350,-14.389,-13.371,-12.328,-11.284,-10.282,-9.344,-8.440,-7.535,-6.647,-5.821,-5.029,-4.171,-3.183,-2.104,-1.005,
-.114,1.287,2.460,3.497,4.352,5.162,6.124,7.277,8.473,9.525,10.350,10.961,11.425,11.868,12.462,13.306,
-14.306,15.236,15.960,16.541,17.128,17.793,18.504,19.244,20.051,20.948,21.886,22.798,23.661,24.488,25.281,26.053,
-26.848,27.694,28.508,29.128,29.476,29.671,29.926,30.342,30.853,31.352,31.802,32.159,32.235,31.747,30.560,28.880,
-27.166,25.815,24.938,24.433,24.250,24.544,25.528,27.168,29.061,30.668,31.704,32.300,32.806,33.439,34.129,34.669,
-34.955,35.065,35.149,35.274,35.406,35.508,35.637,35.924,36.450,37.146,37.821,38.302,38.557,38.705,38.900,39.221,
-39.636,40.069,40.492,40.942,41.440,41.902,42.184,42.253,42.300,42.577,43.081,43.518,43.664,43.690,43.911,44.147,
-43.616,41.824,39.582,38.741,40.468,43.708,45.660,44.093,39.343,34.046,30.925,30.784,32.412,34.079,34.962,35.304,
-35.598,35.892,35.862,35.339,34.585,34.016,33.760,33.549,33.033,32.139,31.093,30.170,29.494,29.042,28.740,28.477,
-28.100,27.514,26.803,26.195,25.849,25.694,25.507,25.124,24.548,23.892,23.281,22.796,22.440,22.097,21.583,20.804,
-19.876,19.034,18.412,17.942,17.496,17.048,16.668,16.382,16.112,15.769,15.337,14.844,14.285,13.642,12.963,12.364,
-11.920,11.591,11.271,10.891,10.454,10.008,9.601,9.273,9.032,8.821,8.551,8.179,7.742,7.295,6.841,6.352,
-5.854,5.429,5.131,4.929,4.755,4.584,4.406,4.160,3.747,3.170,2.578,2.144,1.889,1.676,1.387,1.042,
-.743,.524,.323,.085,-.169,-.396,-.608,-.861,-1.180,-1.518,-1.808,-2.035,-2.236,-2.469,-2.770,-3.124,
--3.465,-3.710,-3.831,-3.899,-4.035,-4.300,-4.634,-4.919,-5.086,-5.169,-5.255,-5.398,-5.581,-5.746,-5.845,-5.876,
--5.875,-5.874,-5.884,-5.894,-5.895,-5.881,-5.847,-5.778,-5.672,-5.549,-5.444,-5.380,-5.360,-5.362,-5.334,-5.204,
--4.939,-4.594,-4.289,-4.101,-4.003,-3.926,-3.861,-3.853,-3.897,-3.914,-3.860,-3.821,-3.915,-4.116,-4.261,-4.251,
--4.170,-4.134,-4.099,-3.924,-3.612,-3.338,-3.164,-2.853,-2.116,-1.042,-.148,.083,-.369,-1.129,-1.838,-2.365,
--2.673,-2.677,-2.347,-1.855,-1.482,-1.371,-1.461,-1.659,-1.940,-2.250,-2.395,-2.184,-1.677,-1.182,-.960,-.980,
--.993,-.785,-.324,.272,.835,1.204,1.313,1.273,1.313,1.581,1.991,2.326,2.472,2.516,2.609,2.796,
-3.002,3.140,3.183,3.147,3.076,3.037,3.080,3.171,3.212,3.144,3.002,2.846,2.659,2.385,2.060,1.829,
-1.777,1.798,1.698,1.429,1.147,1.028,1.061,1.084,.983,.788,.589,.409,.208,-.039,-.312,-.593,
--.890,-1.201,-1.498,-1.769,-2.053,-2.397,-2.788,-3.167,-3.502,-3.832,-4.200,-4.596,-4.974,-5.324,-5.685,-6.077,
--6.472,-6.828,-7.140,-7.439,-7.742,-8.043,-8.333,-8.615,-8.887,-9.142,-9.397,-9.686,-10.018,-10.351,-10.634,-10.872,
--11.121,-11.410,-11.714,-11.999,-12.276,-12.575,-12.896,-13.208,-13.497,-13.783,-14.077,-14.362,-14.637,-14.934,-15.272,-15.602,
--15.853,-16.019,-16.181,-16.405,-16.674,-16.941,-17.210,-17.525,-17.885,-18.230,-18.520,-18.793,-19.110,-19.468,-19.817,-20.136,
--20.455,-20.803,-21.163,-21.519,-21.896,-22.330,-22.808,-23.268,-23.678,-24.059,-24.444,-24.834,-25.214,-25.599,-26.010,-26.440,
--26.852,-27.223,-27.574,-27.930,-28.298,-28.677,-29.086,-29.537,-30.001,-30.426,-30.788,-31.124,-31.479,-31.861,-32.243,-32.604,
--32.949,-33.294,-33.649,-34.016,-34.397,-34.784,-35.166,-35.543,-35.930,-36.326,-36.707,-37.049,-37.367,-37.697,-38.063,-38.456,
--38.859,-39.259,-39.647,-40.008,-40.342,-40.673,-41.022,-41.368,-41.671,-41.930,-42.197,-42.518,-42.869,-43.181,-43.418,-43.607,
--43.796,-43.994,-44.184,-44.366,-44.567,-44.807,-45.059,-45.269,-45.393,-45.426,-45.407,-45.396,-45.447,-45.569,-45.731,-45.881,
--45.983,-46.030,-46.034,-46.013,-45.979,-45.931,-45.867,-45.802,-45.773,-45.790,-45.799,-45.727,-45.566,-45.398,-45.300,-45.250,
--45.157,-44.989,-44.810,-44.678,-44.564,-44.396,-44.167,-43.940,-43.745,-43.540,-43.294,-43.053,-42.878,-42.760,-42.662,-42.628,
--42.723,-42.824,-42.570,-41.658,-40.218,-38.812,-37.983,-37.803,-37.867,-37.703,-37.152,-36.413,-35.812,-35.549,-35.605,-35.796,
--35.900,-35.780,-35.431,-34.918,-34.296,-33.596,-32.868,-32.186,-31.576,-30.979,-30.299,-29.512,-28.669,-27.807,-26.882,-25.828,
--24.695,-23.689,-23.035,-22.782,-22.754,-22.695,-22.477,-22.176,-21.947,-21.852,-21.822,-21.763,-21.651,-21.504,-21.298,-20.982,
--20.582,-20.231,-20.044,-19.981,-19.898,-19.737,-19.615,-19.685,-19.924,-20.136,-20.176,-20.154,-20.367,-21.030,-22.080,-23.234,
--24.217,-24.941,-25.467,-25.850,-26.034,-25.921,-25.522,-25.007,-24.617,-24.525,-24.796,-25.438,-26.426,-27.667,-28.970,-30.125,
--31.003,-31.563,-31.762,-31.535,-30.902,-30.063,-29.328,-28.913,-28.812,-28.883,-29.015,-29.190,-29.401,-29.566,-29.564,-29.347,
--28.986,-28.609,-28.291,-28.022,-27.756,-27.479,-27.208,-26.932,-26.600,-26.199,-25.824,-25.634,-25.683,-25.844,-25.947,-25.966,
--26.027,-26.215,-26.480,-26.787,-27.278,-28.105,-29.063,-29.541,-29.015,-27.619,-26.115,-25.236,-25.122,-25.389,-25.645,-25.796,
--25.904,-25.946,-25.853,-25.684,-25.622,-25.768,-26.027,-26.258,-26.441,-26.658,-26.962,-27.376,-27.989,-28.896,-29.966,-30.754,
--30.842,-30.338,-29.927,-30.269,-31.333,-32.432,-33.000,-33.310,-34.281,-36.514,-39.553,-42.197,-43.547,-43.704,-43.455,-43.410,
--43.558,-43.615,-43.561,-43.698,-44.243,-45.054,-45.827,-46.441,-47.021,-47.690,-48.396,-49.010,-49.507,-49.977,-50.483,-50.987,
--51.414,-51.732,-51.954,-52.102,-52.189,-52.229,-52.224,-52.160,-52.028,-51.843,-51.623,-51.359,-51.030,-50.653,-50.278,-49.939,
--49.623,-49.313,-49.047,-48.880,-48.819,-48.812,-48.822,-48.861,-48.939,-49.018,-49.055,-49.070,-49.132,-49.272,-49.447,-49.599,
--49.725,-49.854,-49.971,-50.018,-49.964,-49.840,-49.699,-49.547,-49.355,-49.107,-48.832,-48.568,-48.330,-48.093,-47.810,-47.449,
--47.022,-46.584,-46.185,-45.816,-45.422,-44.971,-44.495,-44.041,-43.607,-43.149,-42.657,-42.163,-41.684,-41.171,-40.566,-39.878,
--39.169,-38.478,-37.782,-37.061,-36.338,-35.647,-34.979,-34.296,-33.587,-32.875,-32.164,-31.423,-30.640,-29.853,-29.105,-28.372,
--27.586,-26.724,-25.836,-24.973,-24.133,-23.284,-22.423,-21.573,-20.721,-19.811,-18.810,-17.757,-16.734,-15.778,-14.862,-13.934,
--12.984,-12.055,-11.194,-10.389,-9.545,-8.551,-7.391,-6.194,-5.134,-4.279,-3.543,-2.814,-2.089,-1.469,-1.011,-.643,
--.225,.315,.949,1.596,2.200,2.745,3.247,3.734,4.214,4.661,5.041,5.366,5.703,6.094,6.509,6.898,
-7.275,7.711,8.224,8.732,9.147,9.491,9.869,10.340,10.855,11.332,11.754,12.159,12.572,12.978,13.368,13.754,
-14.136,14.481,14.765,15.022,15.324,15.714,16.174,16.650,17.100,17.510,17.895,18.284,18.700,19.134,19.543,19.900,
-20.221,20.552,20.923,21.329,21.747,22.141,22.457,22.657,22.767,22.887,23.114,23.463,23.872,24.279,24.664,25.013,
-25.287,25.451,25.520,25.550,25.587,25.640,25.700,25.756,25.774,25.713,25.571,25.411,25.311,25.292,25.325,25.399,
-25.550,25.816,26.188,26.630,27.124,27.659,28.196,28.690,29.147,29.630,30.170,30.717,31.216,31.704,32.281,32.961,
-33.603,34.031,34.186,34.143,33.996,33.778,33.507,33.219,32.932,32.587,32.105,31.501,30.914,30.502,30.341,30.458,
-30.913,31.775,32.989,34.320,35.478,36.306,36.850,37.261,37.667,38.112,38.559,38.910,39.055,38.981,38.840,38.857,
-39.136,39.568,39.942,40.147,40.200,40.120,39.851,39.368,38.806,38.398,38.239,38.177,37.970,37.514,36.884,36.176,
-35.418,34.632,33.923,33.402,33.070,32.827,32.626,32.535,32.613,32.785,32.893,32.870,32.775,32.665,32.499,32.225,
-31.883,31.560,31.257,30.859,30.284,29.583,28.877,28.230,27.637,27.097,26.627,26.219,25.859,25.591,25.518,25.283,
-25.236,25.233,25.103,24.874,24.748,24.845,25.057,25.231,25.407,25.763,26.318,26.861,27.218,27.501,27.960,28.641,
-29.335,29.873,30.359,30.980,31.689,32.203,32.315,32.107,31.794,31.476,31.141,30.838,30.718,30.854,31.109,31.257,
-31.199,31.017,30.833,30.702,30.608,30.508,30.331,30.007,29.556,29.117,28.831,28.696,28.573,28.361,28.081,27.788,
-27.464,27.078,26.719,26.555,26.625,26.754,26.750,26.637,26.618,26.808,27.113,27.405,27.734,28.246,28.932,29.564,
-29.937,30.086,30.200,30.329,30.297,29.906,29.176,28.333,27.599,27.051,26.652,26.343,26.085,25.839,25.555,25.176,
-24.656,23.990,23.269,22.666,22.321,22.208,22.127,21.860,21.316,20.559,19.715,18.898,18.184,17.606,17.139,16.722,
-16.304,15.875,15.441,15.008,14.606,14.302,14.149,14.105,14.056,13.927,13.756,13.629,13.576,13.546,13.480,13.355,
-13.164,12.910,12.645,12.476,12.485,12.640,12.824,12.957,13.027,13.020,12.876,12.590,12.305,12.234,12.443,12.798,
-13.143,13.488,13.930,14.401,14.601,14.260,13.454,12.588,12.049,11.907,11.955,11.994,12.015,12.141,12.457,12.929,
-13.458,13.961,14.375,14.620,14.594,14.232,13.598,12.904,12.410,12.246,12.311,12.378,12.297,12.103,11.899,11.695,
-11.391,10.916,10.323,9.716,9.125,8.502,7.812,7.074,6.310,5.502,4.643,3.776,2.931,2.055,1.075,.050,
--.818,-1.381,-1.732,-2.151,-2.866,-3.907,-5.163,-6.502,-7.825,-9.062,-10.199,-11.313,-12.512,-13.834,-15.208,-16.546,
--17.835,-19.129,-20.468,-21.838,-23.179,-24.417,-25.483,-26.333,-26.963,-27.413,-27.753,-28.085,-28.503,-29.012,-29.497,-29.820,
--29.982,-30.118,-30.312,-30.466,-30.440,-30.279,-30.191,-30.281,-30.457,-30.653,-31.012,-31.649,-32.283,-32.337,-31.536,-30.243,
--29.012,-27.894,-26.418,-24.325,-22.105,-20.608,-20.221,-20.598,-21.175,-21.729,-22.338,-22.994,-23.486,-23.679,-23.723,-23.901,
--24.348,-24.991,-25.706,-26.426,-27.112,-27.719,-28.226,-28.661,-29.063,-29.455,-29.854,-30.279,-30.690,-30.972,-31.043,-31.012,
--31.176,-31.800,-32.917,-34.327,-35.768,-37.070,-38.175,-39.095,-39.900,-40.710,-41.621,-42.607,-43.496,-44.093,-44.343,-44.381,
--44.399,-44.477,-44.565,-44.630,-44.762,-45.065,-45.449,-45.637,-45.433,-44.963,-44.560,-44.415,-44.426,-44.419,-44.434,-44.683,
--45.254,-45.963,-46.569,-47.027,-47.442,-47.815,-47.961,-47.757,-47.384,-47.257,-47.683,-48.650,-49.902,-51.167,-52.274,-53.142,
--53.755,-54.174,-54.534,-54.978,-55.583,-56.332,-57.155,-57.969,-58.726,-59.424,-60.106,-60.804,-61.503,-62.143,-62.686,-63.153,
--63.601,-64.050,-64.471,-64.842,-65.211,-65.664,-66.225,-66.806,-67.280,-67.603,-67.821,-67.968,-67.993,-67.839,-67.567,-67.342,
--67.252,-67.212,-67.064,-66.741,-66.272,-65.651,-64.807,-63.738,-62.591,-61.525,-60.530,-59.479,-58.339,-57.216,-56.160,-55.061,
--53.834,-52.635,-51.700,-50.993,-50.191,-49.135,-48.132,-47.627,-47.634,-47.732,-47.664,-47.715,-48.301,-49.340,-50.315,-50.969,
--51.664,-52.879,-54.526,-56.029,-57.045,-57.822,-58.692,-59.377,-59.059,-57.196,-54.179,-51.148,-49.184,-48.612,-48.897,-49.123,
--48.682,-47.658,-46.617,-45.962,-45.501,-44.713,-43.392,-41.896,-40.717,-39.931,-39.233,-38.438,-37.740,-37.410,-37.386,-37.329,
--37.039,-36.646,-36.362,-36.192,-35.973,-35.633,-35.267,-34.949,-34.603,-34.116,-33.510,-32.919,-32.401,-31.885,-31.305,-30.762,
--30.448,-30.444,-30.609,-30.707,-30.617,-30.385,-30.108,-29.788,-29.353,-28.792,-28.215,-27.752,-27.395,-26.986,-26.374,-25.576,
--24.764,-24.112,-23.657,-23.272,-22.745,-21.924,-20.849,-19.788,-19.078,-18.852,-18.903,-18.854,-18.479,-17.844,-17.150,-16.488,
--15.784,-14.935,-13.923,-12.810,-11.690,-10.655,-9.760,-8.961,-8.138,-7.217,-6.263,-5.388,-4.579,-3.692,-2.629,-1.462,
--.322,.771,1.880,2.994,3.995,4.836,5.654,6.625,7.738,8.800,9.658,10.345,10.981,11.627,12.293,13.023,
-13.874,14.802,15.667,16.378,16.990,17.617,18.298,18.994,19.702,20.477,21.353,22.283,23.194,24.064,24.907,25.725,
-26.517,27.287,28.001,28.555,28.854,28.978,29.174,29.642,30.333,31.005,31.478,31.748,31.848,31.677,31.041,29.873,
-28.371,26.883,25.688,24.889,24.498,24.591,25.330,26.802,28.803,30.826,32.337,33.135,33.461,33.726,34.147,34.627,
-34.960,35.086,35.123,35.210,35.371,35.535,35.646,35.743,35.943,36.348,36.956,37.636,38.205,38.562,38.758,38.939,
-39.224,39.629,40.102,40.591,41.085,41.575,42.004,42.288,42.411,42.497,42.711,43.081,43.443,43.656,43.811,44.066,
-44.210,43.586,41.779,39.457,38.223,39.216,41.736,43.496,42.527,38.974,34.983,32.819,33.088,34.656,36.031,36.634,
-36.848,37.164,37.525,37.481,36.785,35.683,34.651,33.932,33.392,32.758,31.922,30.998,30.145,29.426,28.818,28.299,
-27.871,27.522,27.206,26.886,26.575,26.318,26.135,25.984,25.760,25.341,24.683,23.895,23.195,22.726,22.415,22.036,
-21.448,20.721,20.029,19.441,18.887,18.310,17.762,17.330,16.996,16.649,16.207,15.688,15.135,14.545,13.898,13.243,
-12.678,12.252,11.914,11.575,11.187,10.763,10.345,9.987,9.733,9.568,9.383,9.057,8.578,8.068,7.638,7.263,
-6.828,6.307,5.819,5.503,5.365,5.296,5.199,5.043,4.799,4.400,3.818,3.154,2.580,2.187,1.918,1.672,
-1.420,1.204,1.038,.869,.636,.335,.006,-.315,-.626,-.928,-1.204,-1.437,-1.630,-1.826,-2.078,-2.420,
--2.817,-3.176,-3.411,-3.526,-3.613,-3.766,-3.990,-4.224,-4.418,-4.584,-4.749,-4.917,-5.069,-5.197,-5.304,-5.383,
--5.422,-5.437,-5.468,-5.527,-5.586,-5.611,-5.610,-5.614,-5.625,-5.601,-5.518,-5.401,-5.298,-5.239,-5.213,-5.179,
--5.080,-4.878,-4.599,-4.341,-4.186,-4.115,-4.044,-3.947,-3.893,-3.932,-3.995,-3.975,-3.887,-3.852,-3.919,-3.979,
--3.917,-3.782,-3.703,-3.674,-3.543,-3.256,-2.977,-2.860,-2.770,-2.406,-1.713,-1.035,-.778,-.999,-1.434,-1.829,
--2.089,-2.112,-1.686,-.720,.509,1.496,1.902,1.718,1.072,.061,-1.099,-1.933,-1.970,-1.232,-.308,.158,
-.062,-.172,-.103,.309,.780,1.061,1.145,1.184,1.319,1.585,1.920,2.220,2.419,2.540,2.651,2.779,
-2.894,2.979,3.080,3.228,3.372,3.428,3.408,3.416,3.503,3.585,3.547,3.401,3.257,3.155,3.015,2.777,
-2.523,2.387,2.360,2.292,2.088,1.841,1.712,1.721,1.722,1.589,1.347,1.102,.897,.694,.459,.210,
--.027,-.267,-.527,-.786,-1.025,-1.281,-1.622,-2.051,-2.489,-2.865,-3.197,-3.547,-3.931,-4.307,-4.648,-4.994,
--5.390,-5.827,-6.252,-6.631,-6.970,-7.289,-7.592,-7.890,-8.194,-8.504,-8.798,-9.071,-9.352,-9.671,-10.011,-10.326,
--10.601,-10.870,-11.164,-11.477,-11.786,-12.096,-12.417,-12.734,-13.024,-13.297,-13.587,-13.900,-14.199,-14.465,-14.740,-15.064,
--15.401,-15.670,-15.858,-16.042,-16.294,-16.591,-16.875,-17.149,-17.470,-17.843,-18.194,-18.474,-18.727,-19.032,-19.392,-19.737,
--20.028,-20.300,-20.599,-20.928,-21.272,-21.655,-22.105,-22.593,-23.042,-23.417,-23.756,-24.115,-24.502,-24.895,-25.301,-25.740,
--26.198,-26.618,-26.969,-27.288,-27.633,-28.027,-28.458,-28.915,-29.396,-29.880,-30.320,-30.692,-31.028,-31.379,-31.764,-32.158,
--32.533,-32.892,-33.254,-33.629,-34.010,-34.383,-34.741,-35.094,-35.465,-35.868,-36.283,-36.669,-37.006,-37.325,-37.675,-38.069,
--38.480,-38.882,-39.282,-39.685,-40.074,-40.423,-40.739,-41.057,-41.389,-41.710,-42.004,-42.289,-42.591,-42.896,-43.166,-43.390,
--43.603,-43.836,-44.075,-44.289,-44.481,-44.694,-44.946,-45.196,-45.379,-45.462,-45.468,-45.452,-45.465,-45.536,-45.671,-45.848,
--46.021,-46.138,-46.165,-46.110,-46.014,-45.923,-45.857,-45.812,-45.791,-45.814,-45.885,-45.950,-45.926,-45.795,-45.628,-45.513,
--45.454,-45.378,-45.233,-45.046,-44.873,-44.721,-44.563,-44.388,-44.207,-44.008,-43.765,-43.496,-43.262,-43.079,-42.865,-42.558,
--42.259,-42.170,-42.328,-42.449,-42.113,-41.149,-39.818,-38.611,-37.894,-37.683,-37.694,-37.562,-37.077,-36.322,-35.618,-35.282,
--35.370,-35.644,-35.787,-35.644,-35.250,-34.687,-33.992,-33.203,-32.422,-31.755,-31.194,-30.613,-29.895,-29.045,-28.147,-27.225,
--26.199,-25.016,-23.796,-22.813,-22.282,-22.164,-22.196,-22.123,-21.900,-21.661,-21.541,-21.539,-21.567,-21.553,-21.470,-21.298,
--21.018,-20.657,-20.292,-19.969,-19.651,-19.295,-18.962,-18.809,-18.925,-19.216,-19.472,-19.564,-19.571,-19.721,-20.233,-21.163,
--22.371,-23.593,-24.588,-25.246,-25.586,-25.649,-25.438,-24.972,-24.374,-23.876,-23.701,-23.967,-24.692,-25.830,-27.269,-28.813,
--30.232,-31.343,-32.038,-32.229,-31.862,-31.018,-29.988,-29.146,-28.710,-28.637,-28.748,-28.927,-29.146,-29.362,-29.457,-29.339,
--29.053,-28.753,-28.551,-28.423,-28.268,-28.031,-27.749,-27.467,-27.165,-26.777,-26.308,-25.891,-25.682,-25.691,-25.752,-25.712,
--25.609,-25.612,-25.770,-25.939,-26.036,-26.287,-27.030,-28.194,-29.105,-29.018,-27.870,-26.407,-25.495,-25.371,-25.630,-25.810,
--25.828,-25.831,-25.838,-25.721,-25.472,-25.313,-25.451,-25.833,-26.210,-26.411,-26.475,-26.559,-26.832,-27.451,-28.474,-29.696,
--30.652,-30.977,-30.829,-30.813,-31.345,-32.143,-32.531,-32.329,-32.308,-33.577,-36.425,-39.862,-42.407,-43.337,-43.145,-42.845,
--42.971,-43.315,-43.480,-43.464,-43.615,-44.172,-45.008,-45.834,-46.515,-47.119,-47.728,-48.324,-48.865,-49.368,-49.885,-50.420,
--50.930,-51.378,-51.753,-52.042,-52.228,-52.327,-52.378,-52.403,-52.372,-52.251,-52.055,-51.817,-51.542,-51.211,-50.841,-50.489,
--50.182,-49.888,-49.576,-49.290,-49.115,-49.075,-49.110,-49.147,-49.175,-49.212,-49.257,-49.292,-49.340,-49.448,-49.625,-49.814,
--49.960,-50.075,-50.202,-50.338,-50.415,-50.373,-50.215,-50.003,-49.791,-49.590,-49.379,-49.136,-48.863,-48.591,-48.343,-48.091,
--47.766,-47.337,-46.857,-46.417,-46.040,-45.664,-45.238,-44.791,-44.374,-43.969,-43.503,-42.959,-42.414,-41.927,-41.448,-40.870,
--40.170,-39.437,-38.757,-38.115,-37.444,-36.726,-36.002,-35.301,-34.604,-33.886,-33.156,-32.428,-31.685,-30.910,-30.126,-29.373,
--28.646,-27.891,-27.067,-26.195,-25.322,-24.468,-23.623,-22.784,-21.959,-21.123,-20.220,-19.219,-18.162,-17.135,-16.186,-15.290,
--14.386,-13.457,-12.541,-11.683,-10.857,-9.955,-8.886,-7.685,-6.520,-5.551,-4.782,-4.081,-3.355,-2.661,-2.124,-1.752,
--1.403,-.924,-.299,.371,.995,1.557,2.073,2.557,3.015,3.464,3.898,4.289,4.627,4.959,5.345,5.788,
-6.236,6.657,7.082,7.543,8.016,8.450,8.841,9.248,9.709,10.201,10.671,11.104,11.516,11.909,12.268,12.594,
-12.919,13.260,13.594,13.889,14.156,14.461,14.859,15.352,15.882,16.370,16.769,17.092,17.404,17.772,18.207,18.663,
-19.084,19.462,19.832,20.229,20.663,21.111,21.529,21.865,22.097,22.263,22.446,22.707,23.043,23.420,23.816,24.216,
-24.578,24.838,24.976,25.040,25.097,25.164,25.216,25.241,25.256,25.266,25.246,25.184,25.116,25.090,25.116,25.175,
-25.280,25.479,25.796,26.197,26.633,27.099,27.607,28.125,28.604,29.056,29.565,30.183,30.844,31.430,31.918,32.413,
-33.011,33.665,34.205,34.494,34.507,34.302,33.933,33.436,32.852,32.225,31.576,30.927,30.358,30.013,30.014,30.370,
-30.987,31.770,32.688,33.718,34.758,35.646,36.284,36.735,37.166,37.688,38.254,38.718,38.969,39.020,38.987,39.004,
-39.149,39.412,39.725,40.014,40.242,40.382,40.362,40.081,39.516,38.807,38.182,37.769,37.490,37.165,36.697,36.121,
-35.501,34.850,34.176,33.552,33.071,32.726,32.427,32.143,31.974,32.026,32.246,32.444,32.479,32.374,32.222,32.054,
-31.835,31.560,31.270,30.961,30.550,29.963,29.235,28.491,27.838,27.319,26.923,26.603,26.278,25.895,25.518,25.527,
-25.229,25.145,25.186,25.205,25.182,25.219,25.359,25.507,25.599,25.766,26.209,26.916,27.624,28.121,28.506,29.035,
-29.762,30.464,30.948,31.314,31.800,32.441,32.997,33.219,33.091,32.770,32.399,32.050,31.809,31.769,31.915,32.076,
-32.076,31.887,31.624,31.393,31.227,31.107,30.994,30.797,30.411,29.844,29.273,28.897,28.742,28.642,28.450,28.170,
-27.877,27.567,27.194,26.808,26.564,26.532,26.576,26.512,26.345,26.259,26.382,26.645,26.933,27.285,27.832,28.552,
-29.212,29.608,29.777,29.895,29.991,29.881,29.404,28.652,27.887,27.286,26.824,26.395,25.966,25.574,25.232,24.888,
-24.478,23.972,23.379,22.755,22.214,21.879,21.775,21.768,21.631,21.188,20.426,19.488,18.581,17.860,17.345,16.946,
-16.558,16.153,15.766,15.409,15.039,14.635,14.254,13.976,13.802,13.647,13.457,13.277,13.178,13.153,13.127,13.049,
-12.932,12.790,12.613,12.429,12.343,12.441,12.667,12.860,12.915,12.873,12.821,12.754,12.615,12.426,12.319,12.395,
-12.614,12.883,13.200,13.639,14.157,14.502,14.394,13.792,12.970,12.291,11.929,11.801,11.730,11.647,11.632,11.811,
-12.224,12.776,13.312,13.705,13.898,13.862,13.573,13.056,12.464,12.037,11.924,12.038,12.137,12.063,11.865,11.673,
-11.499,11.232,10.802,10.278,9.756,9.222,8.595,7.860,7.103,6.372,5.615,4.774,3.889,3.036,2.191,1.257,
-.254,-.620,-1.188,-1.521,-1.915,-2.628,-3.688,-4.950,-6.268,-7.571,-8.838,-10.072,-11.305,-12.572,-13.877,-15.196,
--16.525,-17.890,-19.301,-20.726,-22.127,-23.485,-24.766,-25.886,-26.757,-27.368,-27.796,-28.146,-28.504,-28.931,-29.425,-29.887,
--30.200,-30.371,-30.556,-30.867,-31.210,-31.396,-31.415,-31.458,-31.655,-31.932,-32.196,-32.529,-32.988,-33.253,-32.761,-31.345,
--29.564,-28.162,-27.230,-26.156,-24.472,-22.538,-21.214,-20.947,-21.404,-21.987,-22.461,-22.970,-23.602,-24.193,-24.556,-24.729,
--24.929,-25.330,-25.963,-26.752,-27.562,-28.239,-28.703,-29.015,-29.309,-29.646,-29.971,-30.231,-30.454,-30.683,-30.888,-31.038,
--31.239,-31.705,-32.574,-33.781,-35.161,-36.601,-38.049,-39.388,-40.432,-41.083,-41.467,-41.846,-42.386,-43.029,-43.607,-44.025,
--44.334,-44.616,-44.864,-44.999,-45.011,-45.018,-45.150,-45.371,-45.472,-45.290,-44.902,-44.563,-44.448,-44.523,-44.679,-44.915,
--45.318,-45.887,-46.487,-46.993,-47.398,-47.729,-47.897,-47.772,-47.419,-47.178,-47.426,-48.267,-49.491,-50.799,-51.998,-53.006,
--53.766,-54.255,-54.553,-54.832,-55.232,-55.777,-56.404,-57.057,-57.724,-58.400,-59.071,-59.726,-60.357,-60.948,-61.467,-61.900,
--62.275,-62.644,-63.027,-63.403,-63.753,-64.101,-64.511,-65.018,-65.586,-66.128,-66.575,-66.913,-67.146,-67.248,-67.165,-66.901,
--66.561,-66.291,-66.167,-66.144,-66.117,-65.986,-65.672,-65.115,-64.320,-63.405,-62.537,-61.785,-61.047,-60.145,-58.981,-57.606,
--56.171,-54.854,-53.794,-53.001,-52.303,-51.462,-50.430,-49.456,-48.863,-48.710,-48.753,-48.764,-48.791,-49.014,-49.445,-49.918,
--50.406,-51.181,-52.503,-54.214,-55.772,-56.768,-57.282,-57.640,-57.863,-57.481,-55.990,-53.491,-50.828,-49.044,-48.592,-48.995,
--49.267,-48.740,-47.551,-46.355,-45.583,-45.040,-44.230,-42.980,-41.614,-40.537,-39.794,-39.144,-38.467,-37.930,-37.718,-37.734,
--37.678,-37.385,-36.976,-36.662,-36.489,-36.311,-35.975,-35.459,-34.840,-34.207,-33.615,-33.084,-32.602,-32.121,-31.600,-31.065,
--30.637,-30.451,-30.548,-30.801,-30.978,-30.904,-30.573,-30.117,-29.648,-29.171,-28.648,-28.114,-27.665,-27.316,-26.937,-26.368,
--25.595,-24.782,-24.123,-23.660,-23.253,-22.681,-21.795,-20.655,-19.548,-18.822,-18.610,-18.681,-18.619,-18.171,-17.426,-16.650,
--15.980,-15.325,-14.505,-13.444,-12.221,-11.011,-9.987,-9.208,-8.564,-7.847,-6.948,-5.961,-5.045,-4.197,-3.250,-2.096,
--.844,.322,1.369,2.415,3.512,4.565,5.491,6.367,7.322,8.330,9.229,9.940,10.570,11.258,12.011,12.751,
-13.479,14.280,15.167,16.035,16.786,17.446,18.102,18.776,19.438,20.106,20.861,21.738,22.672,23.581,24.458,25.341,
-26.220,27.030,27.698,28.175,28.434,28.529,28.639,28.977,29.581,30.237,30.668,30.793,30.741,30.622,30.355,29.765,
-28.795,27.587,26.380,25.399,24.827,24.809,25.426,26.653,28.344,30.229,31.965,33.260,34.036,34.469,34.813,35.170,
-35.455,35.566,35.542,35.527,35.610,35.760,35.891,35.963,36.014,36.143,36.459,37.006,37.697,38.337,38.760,38.957,
-39.075,39.288,39.674,40.196,40.758,41.276,41.720,42.098,42.412,42.646,42.809,42.973,43.216,43.524,43.822,44.092,
-44.350,44.402,43.738,41.979,39.591,37.926,38.148,39.939,41.468,40.955,38.364,35.474,34.225,35.050,36.787,38.027,
-38.336,38.254,38.387,38.721,38.771,38.162,36.971,35.592,34.396,33.529,32.942,32.493,32.039,31.476,30.758,29.905,
-29.011,28.217,27.652,27.352,27.220,27.095,26.883,26.626,26.415,26.238,25.952,25.439,24.769,24.153,23.714,23.355,
-22.885,22.245,21.558,20.941,20.361,19.704,18.971,18.305,17.825,17.479,17.106,16.607,16.009,15.385,14.762,14.142,
-13.554,13.042,12.608,12.212,11.828,11.463,11.121,10.790,10.476,10.224,10.042,9.844,9.498,8.986,8.438,7.989,
-7.621,7.199,6.678,6.189,5.904,5.841,5.847,5.766,5.562,5.266,4.874,4.349,3.716,3.088,2.587,2.244,
-2.007,1.810,1.629,1.456,1.273,1.048,.753,.383,-.030,-.415,-.703,-.885,-1.019,-1.188,-1.440,-1.772,
--2.159,-2.555,-2.900,-3.150,-3.317,-3.463,-3.625,-3.775,-3.879,-3.974,-4.135,-4.382,-4.632,-4.800,-4.888,-4.962,
--5.054,-5.132,-5.175,-5.214,-5.281,-5.351,-5.380,-5.377,-5.391,-5.435,-5.454,-5.397,-5.287,-5.186,-5.127,-5.096,
--5.064,-5.000,-4.871,-4.667,-4.449,-4.305,-4.248,-4.197,-4.092,-3.990,-3.987,-4.065,-4.095,-4.015,-3.906,-3.869,
--3.858,-3.757,-3.562,-3.398,-3.320,-3.218,-2.991,-2.729,-2.605,-2.614,-2.551,-2.290,-1.975,-1.835,-1.911,-2.059,
--2.159,-2.154,-1.867,-.995,.578,2.496,4.119,4.978,4.956,4.107,2.556,.718,-.594,-.660,.446,1.815,
-2.521,2.438,2.153,2.165,2.354,2.290,1.870,1.482,1.561,2.132,2.816,3.214,3.225,3.053,2.965,3.055,
-3.190,3.184,3.021,2.893,2.989,3.277,3.557,3.697,3.762,3.861,3.960,3.929,3.747,3.557,3.475,3.435,
-3.285,3.009,2.754,2.631,2.585,2.499,2.361,2.262,2.237,2.204,2.075,1.869,1.668,1.494,1.294,1.048,
-.803,.605,.423,.201,-.060,-.317,-.573,-.897,-1.323,-1.789,-2.204,-2.556,-2.904,-3.284,-3.661,-4.000,
--4.327,-4.702,-5.136,-5.586,-6.009,-6.396,-6.754,-7.084,-7.402,-7.739,-8.105,-8.468,-8.786,-9.064,-9.350,-9.670,
--10.003,-10.322,-10.628,-10.935,-11.246,-11.562,-11.892,-12.234,-12.554,-12.824,-13.073,-13.358,-13.692,-14.016,-14.288,-14.544,
--14.844,-15.171,-15.446,-15.647,-15.846,-16.116,-16.436,-16.741,-17.027,-17.354,-17.731,-18.089,-18.373,-18.629,-18.943,-19.318,
--19.673,-19.956,-20.208,-20.492,-20.819,-21.166,-21.538,-21.955,-22.394,-22.790,-23.119,-23.430,-23.783,-24.181,-24.596,-25.029,
--25.499,-25.990,-26.437,-26.799,-27.116,-27.463,-27.875,-28.332,-28.801,-29.272,-29.729,-30.147,-30.515,-30.864,-31.234,-31.633,
--32.034,-32.413,-32.781,-33.157,-33.545,-33.932,-34.303,-34.663,-35.031,-35.431,-35.863,-36.293,-36.677,-37.012,-37.346,-37.728,
--38.153,-38.568,-38.947,-39.318,-39.718,-40.131,-40.505,-40.815,-41.094,-41.387,-41.703,-42.022,-42.328,-42.615,-42.874,-43.101,
--43.319,-43.567,-43.852,-44.133,-44.369,-44.574,-44.794,-45.043,-45.273,-45.426,-45.492,-45.513,-45.537,-45.592,-45.690,-45.832,
--46.008,-46.178,-46.290,-46.304,-46.225,-46.097,-45.982,-45.917,-45.903,-45.923,-45.972,-46.048,-46.123,-46.139,-46.057,-45.910,
--45.770,-45.675,-45.594,-45.476,-45.304,-45.110,-44.928,-44.772,-44.634,-44.485,-44.279,-43.998,-43.692,-43.443,-43.269,-43.070,
--42.731,-42.280,-41.908,-41.795,-41.898,-41.929,-41.547,-40.609,-39.313,-38.120,-37.461,-37.417,-37.612,-37.500,-36.833,-35.884,
--35.186,-35.047,-35.322,-35.620,-35.663,-35.414,-34.946,-34.299,-33.502,-32.655,-31.901,-31.287,-30.716,-30.048,-29.242,-28.365,
--27.467,-26.488,-25.326,-24.021,-22.819,-22.018,-21.726,-21.764,-21.829,-21.730,-21.492,-21.247,-21.092,-21.041,-21.065,-21.113,
--21.118,-21.009,-20.751,-20.347,-19.817,-19.207,-18.632,-18.267,-18.235,-18.491,-18.853,-19.148,-19.324,-19.436,-19.586,-19.916,
--20.577,-21.624,-22.897,-24.070,-24.869,-25.230,-25.246,-25.005,-24.536,-23.910,-23.325,-23.046,-23.272,-24.069,-25.383,-27.052,
--28.825,-30.429,-31.660,-32.406,-32.604,-32.231,-31.395,-30.387,-29.557,-29.088,-28.920,-28.891,-28.916,-28.988,-29.072,-29.064,
--28.915,-28.710,-28.583,-28.558,-28.520,-28.351,-28.055,-27.728,-27.431,-27.116,-26.709,-26.237,-25.844,-25.658,-25.647,-25.636,
--25.504,-25.336,-25.319,-25.481,-25.624,-25.608,-25.658,-26.210,-27.347,-28.477,-28.767,-27.957,-26.650,-25.722,-25.514,-25.677,
--25.736,-25.605,-25.488,-25.462,-25.362,-25.097,-24.873,-24.996,-25.494,-26.069,-26.402,-26.445,-26.425,-26.646,-27.298,-28.352,
--29.524,-30.410,-30.807,-30.955,-31.332,-32.102,-32.836,-32.981,-32.655,-32.831,-34.515,-37.678,-41.087,-43.298,-43.823,-43.343,
--42.881,-42.902,-43.195,-43.420,-43.564,-43.853,-44.412,-45.140,-45.881,-46.576,-47.223,-47.797,-48.271,-48.699,-49.181,-49.742,
--50.304,-50.787,-51.199,-51.586,-51.941,-52.210,-52.374,-52.477,-52.539,-52.523,-52.388,-52.166,-51.924,-51.685,-51.414,-51.099,
--50.778,-50.485,-50.199,-49.895,-49.618,-49.461,-49.460,-49.548,-49.626,-49.650,-49.633,-49.598,-49.563,-49.568,-49.663,-49.849,
--50.067,-50.253,-50.397,-50.529,-50.656,-50.733,-50.707,-50.560,-50.324,-50.056,-49.806,-49.578,-49.334,-49.046,-48.739,-48.465,
--48.226,-47.947,-47.563,-47.108,-46.681,-46.318,-45.952,-45.517,-45.048,-44.619,-44.219,-43.758,-43.198,-42.625,-42.134,-41.686,
--41.154,-40.484,-39.763,-39.097,-38.475,-37.808,-37.059,-36.283,-35.542,-34.832,-34.116,-33.387,-32.662,-31.933,-31.174,-30.391,
--29.624,-28.895,-28.165,-27.380,-26.534,-25.665,-24.807,-23.966,-23.136,-22.311,-21.471,-20.579,-19.609,-18.590,-17.584,-16.637,
--15.736,-14.841,-13.933,-13.031,-12.155,-11.277,-10.322,-9.250,-8.120,-7.070,-6.194,-5.446,-4.713,-3.966,-3.305,-2.835,
--2.507,-2.143,-1.615,-.956,-.290,.312,.865,1.388,1.863,2.281,2.678,3.089,3.497,3.861,4.194,4.565,
-5.021,5.526,6.012,6.450,6.863,7.281,7.714,8.163,8.631,9.108,9.568,9.995,10.403,10.809,11.201,11.547,
-11.844,12.127,12.427,12.736,13.030,13.315,13.640,14.055,14.569,15.125,15.638,16.046,16.350,16.619,16.937,17.337,
-17.793,18.258,18.710,19.157,19.616,20.091,20.555,20.969,21.296,21.544,21.763,22.011,22.298,22.598,22.900,23.226,
-23.581,23.913,24.153,24.304,24.433,24.585,24.720,24.773,24.742,24.692,24.673,24.679,24.690,24.717,24.782,24.880,
-24.995,25.154,25.409,25.766,26.171,26.574,26.993,27.469,27.985,28.476,28.938,29.457,30.109,30.843,31.519,32.061,
-32.538,33.065,33.656,34.186,34.507,34.562,34.380,34.004,33.444,32.704,31.836,30.955,30.229,29.835,29.894,30.398,
-31.184,32.022,32.770,33.452,34.167,34.924,35.616,36.157,36.626,37.189,37.890,38.547,38.924,38.988,38.943,39.022,
-39.270,39.558,39.769,39.917,40.078,40.267,40.391,40.316,39.953,39.317,38.530,37.768,37.153,36.673,36.227,35.735,
-35.203,34.676,34.160,33.641,33.146,32.729,32.390,32.064,31.740,31.527,31.557,31.801,32.053,32.115,31.969,31.744,
-31.543,31.360,31.149,30.888,30.564,30.125,29.520,28.786,28.049,27.447,27.041,26.797,26.607,26.345,25.956,25.527,
-25.617,25.373,25.343,25.440,25.538,25.613,25.727,25.892,26.031,26.125,26.342,26.889,27.742,28.617,29.276,29.780,
-30.368,31.108,31.791,32.207,32.418,32.679,33.116,33.594,33.889,33.913,33.730,33.444,33.149,32.956,32.958,33.114,
-33.239,33.149,32.821,32.382,31.979,31.681,31.490,31.349,31.143,30.751,30.168,29.560,29.130,28.917,28.779,28.567,
-28.266,27.938,27.595,27.198,26.785,26.487,26.377,26.354,26.257,26.070,25.945,26.011,26.239,26.540,26.927,27.477,
-28.153,28.763,29.157,29.374,29.539,29.627,29.450,28.906,28.154,27.470,26.977,26.568,26.094,25.535,24.964,24.421,
-23.884,23.346,22.843,22.394,21.972,21.572,21.266,21.142,21.164,21.131,20.808,20.107,19.169,18.265,17.605,17.203,
-16.913,16.581,16.181,15.777,15.404,15.018,14.582,14.148,13.805,13.566,13.359,13.134,12.938,12.836,12.809,12.776,
-12.697,12.605,12.535,12.484,12.463,12.537,12.741,12.980,13.077,12.965,12.767,12.660,12.683,12.727,12.698,12.626,
-12.594,12.633,12.733,12.932,13.301,13.810,14.247,14.331,13.941,13.217,12.457,11.894,11.576,11.414,11.315,11.277,
-11.368,11.627,12.001,12.371,12.641,12.779,12.770,12.571,12.170,11.689,11.367,11.355,11.558,11.710,11.647,11.440,
-11.251,11.109,10.901,10.559,10.150,9.750,9.300,8.680,7.898,7.097,6.376,5.670,4.877,4.020,3.193,2.391,
-1.506,.527,-.359,-.951,-1.297,-1.694,-2.413,-3.479,-4.729,-6.010,-7.283,-8.581,-9.926,-11.307,-12.680,-14.007,
--15.298,-16.626,-18.051,-19.538,-20.990,-22.363,-23.696,-25.005,-26.188,-27.101,-27.713,-28.130,-28.480,-28.837,-29.243,-29.716,
--30.199,-30.576,-30.800,-30.981,-31.243,-31.549,-31.758,-31.849,-31.976,-32.244,-32.584,-32.919,-33.318,-33.768,-33.849,-32.959,
--31.034,-28.861,-27.389,-26.745,-26.165,-24.962,-23.363,-22.215,-22.012,-22.459,-22.967,-23.313,-23.677,-24.218,-24.829,-25.317,
--25.641,-25.927,-26.331,-26.952,-27.786,-28.679,-29.386,-29.762,-29.902,-30.028,-30.245,-30.475,-30.625,-30.728,-30.877,-31.106,
--31.420,-31.899,-32.656,-33.681,-34.822,-35.980,-37.233,-38.671,-40.145,-41.297,-41.879,-42.008,-42.045,-42.270,-42.712,-43.253,
--43.799,-44.326,-44.800,-45.149,-45.315,-45.336,-45.314,-45.316,-45.309,-45.200,-44.968,-44.718,-44.602,-44.689,-44.921,-45.219,
--45.578,-46.036,-46.576,-47.109,-47.551,-47.865,-47.999,-47.875,-47.504,-47.132,-47.145,-47.787,-48.953,-50.307,-51.563,-52.621,
--53.479,-54.109,-54.491,-54.703,-54.903,-55.212,-55.642,-56.157,-56.740,-57.392,-58.083,-58.751,-59.354,-59.887,-60.361,-60.777,
--61.135,-61.457,-61.767,-62.078,-62.389,-62.708,-63.051,-63.434,-63.860,-64.325,-64.810,-65.280,-65.692,-66.018,-66.231,-66.282,
--66.131,-65.819,-65.496,-65.313,-65.285,-65.278,-65.143,-64.832,-64.377,-63.809,-63.149,-62.459,-61.812,-61.170,-60.354,-59.203,
--57.767,-56.310,-55.086,-54.144,-53.348,-52.551,-51.711,-50.884,-50.152,-49.574,-49.168,-48.904,-48.734,-48.619,-48.531,-48.453,
--48.416,-48.602,-49.308,-50.699,-52.523,-54.143,-54.992,-55.027,-54.711,-54.467,-54.218,-53.505,-52.108,-50.449,-49.299,-49.034,
--49.250,-49.134,-48.238,-46.840,-45.554,-44.681,-43.993,-43.127,-42.043,-41.024,-40.291,-39.762,-39.217,-38.613,-38.126,-37.906,
--37.869,-37.781,-37.506,-37.126,-36.823,-36.669,-36.541,-36.223,-35.594,-34.736,-33.874,-33.192,-32.704,-32.286,-31.829,-31.332,
--30.882,-30.577,-30.497,-30.678,-31.042,-31.362,-31.381,-31.017,-30.438,-29.873,-29.395,-28.915,-28.376,-27.851,-27.420,-27.016,
--26.480,-25.763,-25.006,-24.382,-23.910,-23.432,-22.760,-21.821,-20.716,-19.682,-18.965,-18.643,-18.524,-18.273,-17.691,-16.876,
--16.081,-15.429,-14.800,-13.974,-12.855,-11.551,-10.300,-9.319,-8.657,-8.148,-7.526,-6.654,-5.637,-4.662,-3.746,-2.724,
--1.489,-.172,1.017,2.045,3.069,4.194,5.337,6.367,7.289,8.191,9.058,9.786,10.356,10.914,11.594,12.361,
-13.099,13.805,14.585,15.478,16.376,17.162,17.844,18.496,19.136,19.743,20.369,21.133,22.074,23.088,24.042,24.912,
-25.744,26.534,27.193,27.647,27.917,28.101,28.322,28.670,29.129,29.520,29.611,29.336,28.907,28.621,28.555,28.492,
-28.159,27.477,26.580,25.692,25.055,24.927,25.492,26.700,28.254,29.809,31.177,32.348,33.368,34.262,35.038,35.693,
-36.186,36.460,36.526,36.492,36.475,36.492,36.484,36.413,36.313,36.263,36.353,36.673,37.262,38.023,38.727,39.159,
-39.293,39.302,39.420,39.775,40.333,40.946,41.468,41.856,42.183,42.532,42.876,43.126,43.285,43.478,43.800,44.179,
-44.488,44.682,44.673,44.104,42.552,40.204,38.174,37.705,38.836,40.068,39.695,37.550,35.251,34.628,35.987,38.012,
-39.188,39.122,38.526,38.223,38.387,38.606,38.401,37.598,36.369,35.092,34.168,33.793,33.829,33.903,33.672,33.026,
-32.055,30.916,29.775,28.816,28.186,27.869,27.681,27.440,27.125,26.843,26.631,26.385,26.002,25.531,25.103,24.739,
-24.300,23.673,22.941,22.298,21.805,21.311,20.641,19.814,19.027,18.432,17.990,17.543,16.988,16.338,15.658,14.999,
-14.395,13.874,13.431,13.022,12.612,12.226,11.916,11.679,11.440,11.142,10.807,10.493,10.190,9.813,9.321,8.787,
-8.323,7.944,7.565,7.138,6.743,6.507,6.440,6.410,6.273,6.003,5.657,5.274,4.824,4.284,3.698,3.161,
-2.745,2.450,2.228,2.017,1.787,1.540,1.286,1.007,.667,.270,-.100,-.340,-.444,-.533,-.742,-1.098,
--1.510,-1.883,-2.194,-2.468,-2.721,-2.956,-3.171,-3.351,-3.464,-3.509,-3.564,-3.733,-4.025,-4.325,-4.517,-4.609,
--4.692,-4.810,-4.911,-4.946,-4.957,-5.009,-5.095,-5.152,-5.157,-5.154,-5.172,-5.178,-5.135,-5.069,-5.039,-5.050,
--5.059,-5.038,-4.992,-4.912,-4.762,-4.557,-4.386,-4.310,-4.279,-4.197,-4.072,-4.012,-4.062,-4.117,-4.060,-3.919,
--3.811,-3.754,-3.639,-3.408,-3.160,-3.020,-2.956,-2.840,-2.639,-2.463,-2.396,-2.383,-2.336,-2.273,-2.266,-2.306,
--2.315,-2.254,-2.097,-1.668,-.666,1.022,3.077,4.921,6.091,6.379,5.715,4.210,2.433,1.374,1.751,3.269,
-4.801,5.454,5.378,5.351,5.704,5.914,5.327,4.072,3.034,2.972,3.807,4.797,5.272,5.135,4.763,4.560,
-4.606,4.641,4.348,3.698,3.026,2.745,2.955,3.387,3.716,3.871,3.985,4.119,4.162,4.024,3.803,3.672,
-3.646,3.572,3.348,3.064,2.883,2.837,2.824,2.762,2.673,2.603,2.532,2.421,2.292,2.190,2.099,1.945,
-1.704,1.449,1.252,1.084,.862,.575,.295,.059,-.197,-.550,-.984,-1.406,-1.774,-2.132,-2.525,-2.936,
--3.321,-3.686,-4.072,-4.495,-4.927,-5.345,-5.755,-6.160,-6.541,-6.897,-7.262,-7.668,-8.093,-8.473,-8.785,-9.067,
--9.368,-9.699,-10.042,-10.386,-10.726,-11.056,-11.378,-11.705,-12.040,-12.351,-12.609,-12.843,-13.123,-13.469,-13.818,-14.108,
--14.363,-14.649,-14.970,-15.253,-15.462,-15.657,-15.915,-16.231,-16.542,-16.837,-17.165,-17.540,-17.901,-18.197,-18.468,-18.791,
--19.166,-19.514,-19.793,-20.056,-20.376,-20.753,-21.135,-21.496,-21.852,-22.206,-22.532,-22.823,-23.125,-23.484,-23.897,-24.336,
--24.796,-25.296,-25.815,-26.288,-26.676,-27.015,-27.379,-27.799,-28.251,-28.697,-29.123,-29.528,-29.910,-30.278,-30.659,-31.073,
--31.506,-31.926,-32.318,-32.696,-33.079,-33.465,-33.847,-34.225,-34.611,-35.019,-35.454,-35.903,-36.336,-36.720,-37.058,-37.401,
--37.796,-38.234,-38.654,-39.020,-39.365,-39.740,-40.147,-40.529,-40.842,-41.101,-41.364,-41.662,-41.987,-42.307,-42.590,-42.823,
--43.022,-43.235,-43.502,-43.818,-44.127,-44.386,-44.611,-44.844,-45.090,-45.303,-45.444,-45.521,-45.576,-45.644,-45.735,-45.857,
--46.014,-46.194,-46.354,-46.449,-46.461,-46.402,-46.312,-46.240,-46.221,-46.251,-46.293,-46.317,-46.329,-46.349,-46.362,-46.318,
--46.189,-46.014,-45.864,-45.764,-45.674,-45.543,-45.364,-45.177,-45.014,-44.866,-44.695,-44.467,-44.184,-43.883,-43.618,-43.412,
--43.222,-42.964,-42.581,-42.122,-41.754,-41.637,-41.742,-41.760,-41.269,-40.113,-38.643,-37.522,-37.186,-37.434,-37.607,-37.192,
--36.266,-35.356,-34.925,-35.009,-35.306,-35.497,-35.436,-35.107,-34.535,-33.768,-32.911,-32.102,-31.417,-30.822,-30.215,-29.517,
--28.713,-27.822,-26.826,-25.674,-24.374,-23.088,-22.084,-21.559,-21.477,-21.590,-21.617,-21.420,-21.049,-20.669,-20.439,-20.427,
--20.582,-20.765,-20.830,-20.684,-20.293,-19.674,-18.932,-18.278,-17.936,-17.971,-18.233,-18.513,-18.739,-18.986,-19.308,-19.651,
--19.984,-20.437,-21.203,-22.291,-23.432,-24.290,-24.714,-24.768,-24.558,-24.130,-23.543,-22.975,-22.696,-22.941,-23.809,-25.245,
--27.050,-28.929,-30.584,-31.823,-32.572,-32.819,-32.571,-31.926,-31.118,-30.417,-29.956,-29.671,-29.432,-29.197,-29.000,-28.851,
--28.711,-28.572,-28.495,-28.518,-28.561,-28.472,-28.186,-27.795,-27.437,-27.160,-26.893,-26.565,-26.206,-25.925,-25.794,-25.764,
--25.700,-25.522,-25.310,-25.224,-25.305,-25.389,-25.328,-25.273,-25.631,-26.592,-27.744,-28.310,-27.861,-26.760,-25.796,-25.424,
--25.442,-25.404,-25.172,-24.953,-24.893,-24.854,-24.663,-24.434,-24.490,-24.972,-25.640,-26.111,-26.254,-26.303,-26.621,-27.382,
--28.446,-29.458,-30.093,-30.309,-30.412,-30.794,-31.550,-32.361,-32.881,-33.264,-34.180,-36.187,-39.057,-41.820,-43.527,-43.969,
--43.671,-43.285,-43.101,-43.085,-43.199,-43.510,-44.042,-44.670,-45.257,-45.810,-46.424,-47.099,-47.701,-48.151,-48.542,-49.031,
--49.634,-50.213,-50.666,-51.037,-51.425,-51.834,-52.177,-52.404,-52.543,-52.624,-52.613,-52.472,-52.244,-52.016,-51.816,-51.597,
--51.321,-51.017,-50.735,-50.478,-50.222,-49.989,-49.851,-49.848,-49.940,-50.042,-50.096,-50.087,-50.025,-49.935,-49.876,-49.910,
--50.060,-50.282,-50.508,-50.698,-50.845,-50.949,-51.000,-50.982,-50.874,-50.666,-50.381,-50.074,-49.790,-49.520,-49.227,-48.907,
--48.606,-48.348,-48.083,-47.748,-47.359,-46.992,-46.664,-46.296,-45.815,-45.269,-44.768,-44.340,-43.894,-43.358,-42.790,-42.287,
--41.843,-41.348,-40.736,-40.064,-39.419,-38.790,-38.096,-37.312,-36.508,-35.756,-35.045,-34.328,-33.596,-32.880,-32.182,-31.465,
--30.706,-29.934,-29.183,-28.439,-27.658,-26.826,-25.978,-25.146,-24.327,-23.500,-22.658,-21.801,-20.921,-19.999,-19.033,-18.050,
--17.083,-16.148,-15.241,-14.351,-13.466,-12.565,-11.619,-10.612,-9.574,-8.575,-7.682,-6.895,-6.148,-5.391,-4.665,-4.070,
--3.643,-3.287,-2.846,-2.257,-1.591,-.952,-.369,.189,.724,1.192,1.578,1.934,2.325,2.744,3.134,3.479,
-3.841,4.286,4.809,5.334,5.792,6.182,6.555,6.969,7.447,7.965,8.468,8.912,9.295,9.658,10.035,10.419,
-10.776,11.094,11.389,11.681,11.971,12.256,12.551,12.897,13.331,13.851,14.409,14.930,15.357,15.686,15.967,16.267,
-16.625,17.045,17.511,18.008,18.522,19.044,19.558,20.036,20.440,20.751,21.000,21.253,21.550,21.865,22.144,22.382,
-22.625,22.898,23.166,23.385,23.578,23.801,24.050,24.230,24.263,24.180,24.087,24.054,24.074,24.125,24.223,24.384,
-24.585,24.791,25.017,25.312,25.683,26.075,26.448,26.834,27.288,27.802,28.306,28.780,29.296,29.937,30.684,31.421,
-32.061,32.628,33.192,33.752,34.198,34.410,34.361,34.114,33.727,33.192,32.477,31.627,30.811,30.263,30.164,30.539,
-31.244,32.034,32.696,33.180,33.609,34.138,34.783,35.424,35.979,36.543,37.272,38.126,38.815,39.073,38.972,38.877,
-39.081,39.525,39.927,40.112,40.152,40.195,40.250,40.193,39.918,39.428,38.784,38.045,37.278,36.562,35.942,35.388,
-34.847,34.315,33.832,33.414,33.029,32.648,32.290,31.973,31.677,31.398,31.226,31.282,31.556,31.844,31.909,31.687,
-31.322,30.990,30.753,30.561,30.349,30.072,29.673,29.108,28.410,27.716,27.188,26.894,26.763,26.641,26.396,26.014,
-25.617,25.857,25.747,25.816,25.942,26.018,26.055,26.139,26.300,26.475,26.647,26.959,27.599,28.557,29.577,30.401,
-31.028,31.649,32.355,32.996,33.370,33.493,33.580,33.810,34.150,34.450,34.603,34.595,34.453,34.230,34.042,34.026,
-34.206,34.416,34.406,34.044,33.413,32.724,32.167,31.814,31.602,31.387,31.032,30.514,29.947,29.479,29.166,28.934,
-28.679,28.363,28.001,27.600,27.156,26.720,26.395,26.234,26.164,26.052,25.866,25.711,25.710,25.890,26.208,26.643,
-27.192,27.790,28.305,28.664,28.919,29.137,29.240,29.049,28.509,27.805,27.195,26.760,26.365,25.855,25.209,24.491,
-23.742,22.985,22.296,21.787,21.475,21.246,20.984,20.715,20.568,20.579,20.586,20.330,19.685,18.778,17.902,17.302,
-17.003,16.838,16.607,16.241,15.790,15.318,14.832,14.337,13.892,13.572,13.369,13.190,12.972,12.749,12.596,12.533,
-12.515,12.504,12.504,12.520,12.548,12.612,12.771,13.025,13.243,13.254,13.033,12.752,12.623,12.701,12.865,12.972,
-12.972,12.894,12.778,12.679,12.697,12.926,13.351,13.793,14.007,13.835,13.299,12.574,11.879,11.376,11.108,11.012,
-10.983,10.962,10.967,11.042,11.209,11.436,11.648,11.739,11.607,11.242,10.806,10.562,10.664,10.994,11.261,11.271,
-11.086,10.883,10.729,10.553,10.301,10.025,9.759,9.395,8.789,7.963,7.112,6.385,5.728,5.012,4.224,3.449,
-2.693,1.849,.891,-.008,-.646,-1.051,-1.495,-2.234,-3.296,-4.533,-5.808,-7.099,-8.439,-9.842,-11.279,-12.696,
--14.058,-15.395,-16.793,-18.293,-19.823,-21.260,-22.582,-23.879,-25.197,-26.422,-27.382,-28.032,-28.473,-28.818,-29.118,-29.423,
--29.809,-30.286,-30.741,-31.061,-31.275,-31.491,-31.726,-31.907,-32.040,-32.236,-32.545,-32.880,-33.208,-33.639,-34.123,-34.131,
--32.973,-30.640,-28.117,-26.561,-26.182,-26.127,-25.531,-24.446,-23.601,-23.467,-23.823,-24.208,-24.487,-24.832,-25.329,-25.831,
--26.181,-26.398,-26.633,-27.031,-27.688,-28.598,-29.576,-30.313,-30.625,-30.637,-30.645,-30.801,-31.018,-31.176,-31.310,-31.534,
--31.894,-32.388,-33.070,-34.000,-35.095,-36.157,-37.110,-38.120,-39.364,-40.716,-41.792,-42.320,-42.400,-42.365,-42.464,-42.744,
--43.173,-43.738,-44.390,-44.988,-45.382,-45.545,-45.577,-45.568,-45.500,-45.302,-44.982,-44.675,-44.555,-44.708,-45.080,-45.537,
--45.976,-46.387,-46.817,-47.290,-47.764,-48.138,-48.297,-48.165,-47.774,-47.330,-47.167,-47.564,-48.539,-49.836,-51.122,-52.209,
--53.073,-53.740,-54.201,-54.457,-54.585,-54.707,-54.912,-55.235,-55.703,-56.336,-57.099,-57.881,-58.570,-59.133,-59.610,-60.039,
--60.426,-60.774,-61.094,-61.388,-61.640,-61.854,-62.081,-62.374,-62.733,-63.115,-63.504,-63.920,-64.362,-64.781,-65.119,-65.352,
--65.466,-65.424,-65.226,-64.963,-64.766,-64.655,-64.505,-64.202,-63.797,-63.425,-63.110,-62.723,-62.157,-61.450,-60.672,-59.770,
--58.634,-57.325,-56.108,-55.195,-54.523,-53.856,-53.082,-52.298,-51.614,-50.977,-50.271,-49.524,-48.909,-48.545,-48.362,-48.186,
--47.920,-47.639,-47.573,-48.004,-49.086,-50.611,-51.990,-52.605,-52.325,-51.640,-51.183,-51.123,-51.085,-50.680,-50.002,-49.492,
--49.360,-49.286,-48.758,-47.622,-46.206,-44.920,-43.866,-42.883,-41.882,-41.007,-40.436,-40.130,-39.846,-39.400,-38.843,-38.372,
--38.112,-38.000,-37.863,-37.589,-37.216,-36.888,-36.696,-36.547,-36.202,-35.493,-34.516,-33.572,-32.895,-32.456,-32.060,-31.593,
--31.114,-30.740,-30.524,-30.495,-30.712,-31.164,-31.638,-31.801,-31.498,-30.914,-30.356,-29.920,-29.456,-28.837,-28.154,-27.580,
--27.120,-26.609,-25.955,-25.258,-24.666,-24.167,-23.600,-22.845,-21.931,-20.979,-20.105,-19.382,-18.823,-18.348,-17.805,-17.096,
--16.284,-15.525,-14.876,-14.208,-13.329,-12.175,-10.880,-9.690,-8.802,-8.233,-7.788,-7.191,-6.302,-5.228,-4.174,-3.184,
--2.108,-.833,.528,1.763,2.830,3.882,5.035,6.203,7.237,8.121,8.944,9.712,10.332,10.793,11.257,11.886,
-12.660,13.444,14.190,14.979,15.855,16.730,17.502,18.182,18.830,19.446,19.999,20.563,21.302,22.284,23.377,24.380,
-25.206,25.889,26.454,26.870,27.144,27.392,27.761,28.286,28.830,29.131,28.942,28.217,27.233,26.470,26.253,26.482,
-26.734,26.654,26.215,25.636,25.178,25.069,25.526,26.647,28.236,29.843,31.078,31.904,32.578,33.349,34.252,35.157,
-35.922,36.478,36.840,37.075,37.253,37.370,37.343,37.111,36.735,36.371,36.169,36.226,36.604,37.306,38.191,38.982,
-39.442,39.551,39.516,39.597,39.938,40.505,41.133,41.645,41.993,42.288,42.656,43.065,43.369,43.541,43.754,44.144,
-44.591,44.870,44.956,44.947,44.639,43.501,41.390,39.183,38.206,38.794,39.654,39.088,36.870,34.646,34.295,36.045,
-38.360,39.535,39.155,38.067,37.281,37.149,37.384,37.511,37.194,36.382,35.356,34.602,34.448,34.759,35.058,34.962,
-34.448,33.694,32.789,31.702,30.497,29.404,28.627,28.151,27.811,27.502,27.234,27.013,26.762,26.419,26.031,25.674,
-25.310,24.813,24.154,23.489,22.996,22.657,22.262,21.634,20.805,19.959,19.234,18.624,18.039,17.410,16.725,16.008,
-15.306,14.684,14.189,13.812,13.484,13.149,12.815,12.533,12.316,12.102,11.811,11.423,10.985,10.542,10.085,9.587,
-9.070,8.604,8.240,7.961,7.716,7.487,7.297,7.151,6.999,6.781,6.484,6.136,5.760,5.347,4.883,4.374,
-3.855,3.375,2.972,2.656,2.392,2.120,1.811,1.490,1.188,.900,.606,.339,.163,.073,-.054,-.345,
--.781,-1.203,-1.486,-1.658,-1.839,-2.095,-2.389,-2.650,-2.842,-2.963,-3.041,-3.142,-3.342,-3.647,-3.960,-4.175,
--4.292,-4.392,-4.509,-4.589,-4.589,-4.568,-4.621,-4.750,-4.863,-4.895,-4.877,-4.869,-4.871,-4.860,-4.855,-4.897,
--4.967,-4.999,-4.971,-4.929,-4.901,-4.831,-4.671,-4.474,-4.344,-4.291,-4.220,-4.084,-3.969,-3.962,-4.002,-3.949,
--3.773,-3.587,-3.473,-3.360,-3.146,-2.874,-2.694,-2.656,-2.643,-2.533,-2.342,-2.178,-2.091,-2.055,-2.037,-2.026,
--1.997,-1.912,-1.775,-1.586,-1.231,-.494,.734,2.277,3.766,4.854,5.296,4.953,3.967,2.980,2.894,4.086,
-5.883,7.108,7.284,7.127,7.646,8.857,9.670,9.097,7.372,5.724,5.167,5.693,6.564,7.148,7.349,7.411,
-7.521,7.600,7.357,6.521,5.133,3.661,2.728,2.620,3.054,3.500,3.690,3.757,3.901,4.086,4.122,3.966,
-3.785,3.722,3.727,3.661,3.503,3.357,3.293,3.264,3.198,3.094,2.995,2.902,2.791,2.680,2.611,2.567,
-2.463,2.251,1.994,1.779,1.601,1.384,1.108,.847,.656,.477,.206,-.174,-.581,-.949,-1.301,-1.690,
--2.118,-2.551,-2.976,-3.412,-3.856,-4.281,-4.687,-5.109,-5.565,-6.019,-6.431,-6.818,-7.230,-7.676,-8.108,-8.485,
--8.815,-9.136,-9.465,-9.804,-10.159,-10.528,-10.889,-11.218,-11.523,-11.824,-12.116,-12.378,-12.623,-12.907,-13.255,-13.615,
--13.924,-14.193,-14.488,-14.822,-15.131,-15.364,-15.559,-15.792,-16.079,-16.378,-16.671,-16.989,-17.345,-17.693,-17.994,-18.276,
--18.596,-18.946,-19.262,-19.527,-19.813,-20.191,-20.641,-21.074,-21.434,-21.742,-22.037,-22.329,-22.622,-22.940,-23.308,-23.726,
--24.178,-24.660,-25.173,-25.690,-26.156,-26.553,-26.920,-27.315,-27.751,-28.195,-28.616,-29.006,-29.377,-29.744,-30.125,-30.542,
--30.996,-31.463,-31.910,-32.329,-32.726,-33.108,-33.472,-33.831,-34.207,-34.614,-35.043,-35.478,-35.912,-36.339,-36.740,-37.104,
--37.451,-37.824,-38.234,-38.646,-39.021,-39.364,-39.716,-40.093,-40.465,-40.792,-41.072,-41.339,-41.627,-41.938,-42.247,-42.523,
--42.748,-42.941,-43.153,-43.423,-43.742,-44.056,-44.328,-44.573,-44.822,-45.072,-45.287,-45.440,-45.545,-45.632,-45.718,-45.819,
--45.956,-46.141,-46.343,-46.503,-46.586,-46.604,-46.593,-46.580,-46.584,-46.625,-46.692,-46.735,-46.705,-46.620,-46.551,-46.532,
--46.502,-46.381,-46.174,-45.977,-45.861,-45.797,-45.702,-45.550,-45.377,-45.213,-45.036,-44.812,-44.558,-44.319,-44.099,-43.854,
--43.566,-43.290,-43.073,-42.860,-42.538,-42.118,-41.798,-41.768,-41.904,-41.743,-40.886,-39.447,-38.056,-37.325,-37.316,-37.518,
--37.350,-36.653,-35.734,-35.035,-34.791,-34.941,-35.241,-35.416,-35.279,-34.791,-34.051,-33.206,-32.377,-31.628,-30.985,-30.422,
--29.848,-29.148,-28.263,-27.221,-26.076,-24.862,-23.629,-22.516,-21.727,-21.383,-21.388,-21.469,-21.361,-20.988,-20.500,-20.137,
--20.046,-20.185,-20.378,-20.460,-20.353,-20.035,-19.504,-18.832,-18.200,-17.815,-17.720,-17.753,-17.744,-17.738,-17.950,-18.487,
--19.200,-19.857,-20.411,-21.030,-21.855,-22.802,-23.628,-24.138,-24.285,-24.111,-23.687,-23.139,-22.674,-22.532,-22.896,-23.831,
--25.282,-27.067,-28.912,-30.538,-31.766,-32.543,-32.873,-32.782,-32.351,-31.762,-31.220,-30.814,-30.482,-30.117,-29.688,-29.250,
--28.866,-28.570,-28.388,-28.339,-28.372,-28.352,-28.155,-27.788,-27.377,-27.046,-26.820,-26.654,-26.518,-26.426,-26.389,-26.383,
--26.352,-26.236,-26.007,-25.700,-25.418,-25.244,-25.149,-25.040,-24.958,-25.161,-25.876,-26.920,-27.678,-27.595,-26.725,-25.684,
--25.053,-24.881,-24.815,-24.622,-24.412,-24.371,-24.434,-24.380,-24.182,-24.108,-24.407,-24.992,-25.525,-25.818,-26.045,-26.552,
--27.473,-28.579,-29.460,-29.836,-29.752,-29.528,-29.555,-30.061,-31.030,-32.306,-33.773,-35.412,-37.190,-38.949,-40.474,-41.654,
--42.522,-43.117,-43.371,-43.238,-42.901,-42.755,-43.087,-43.813,-44.580,-45.150,-45.603,-46.148,-46.825,-47.470,-47.960,-48.377,
--48.883,-49.500,-50.092,-50.559,-50.955,-51.380,-51.832,-52.208,-52.446,-52.579,-52.656,-52.661,-52.557,-52.365,-52.150,-51.943,
--51.710,-51.426,-51.129,-50.879,-50.687,-50.517,-50.350,-50.216,-50.157,-50.179,-50.256,-50.347,-50.409,-50.407,-50.344,-50.278,
--50.281,-50.388,-50.577,-50.797,-51.005,-51.165,-51.254,-51.269,-51.227,-51.135,-50.969,-50.707,-50.376,-50.041,-49.739,-49.449,
--49.144,-48.833,-48.537,-48.243,-47.920,-47.579,-47.264,-46.972,-46.616,-46.124,-45.538,-44.981,-44.510,-44.057,-43.538,-42.969,
--42.430,-41.946,-41.456,-40.901,-40.301,-39.692,-39.056,-38.339,-37.551,-36.771,-36.054,-35.366,-34.650,-33.907,-33.192,-32.525,
--31.856,-31.133,-30.356,-29.558,-28.752,-27.926,-27.088,-26.271,-25.484,-24.695,-23.863,-22.990,-22.111,-21.244,-20.366,-19.446,
--18.482,-17.503,-16.546,-15.632,-14.758,-13.884,-12.948,-11.921,-10.840,-9.805,-8.902,-8.130,-7.416,-6.697,-5.993,-5.383,
--4.912,-4.520,-4.082,-3.518,-2.856,-2.188,-1.574,-1.003,-.450,.068,.511,.879,1.230,1.616,2.033,2.440,
-2.822,3.216,3.666,4.171,4.680,5.137,5.528,5.888,6.280,6.741,7.254,7.759,8.199,8.569,8.908,9.252,
-9.608,9.963,10.308,10.642,10.963,11.265,11.556,11.865,12.232,12.681,13.200,13.745,14.257,14.698,15.067,15.395,
-15.720,16.070,16.465,16.917,17.425,17.965,18.509,19.032,19.511,19.911,20.216,20.464,20.727,21.048,21.389,21.682,
-21.907,22.103,22.302,22.495,22.678,22.890,23.164,23.440,23.600,23.592,23.490,23.414,23.413,23.457,23.534,23.687,
-23.941,24.251,24.551,24.833,25.147,25.513,25.896,26.265,26.650,27.093,27.588,28.079,28.551,29.060,29.676,30.394,
-31.143,31.865,32.563,33.248,33.865,34.287,34.411,34.245,33.885,33.413,32.831,32.121,31.361,30.763,30.553,30.803,
-31.385,32.055,32.602,32.953,33.183,33.455,33.891,34.486,35.134,35.786,36.524,37.428,38.371,39.031,39.198,39.035,
-38.957,39.221,39.704,40.091,40.235,40.235,40.214,40.130,39.859,39.387,38.821,38.240,37.616,36.908,36.159,35.455,
-34.821,34.215,33.631,33.122,32.726,32.404,32.090,31.777,31.508,31.298,31.135,31.058,31.152,31.424,31.703,31.744,
-31.441,30.925,30.426,30.082,29.886,29.753,29.592,29.312,28.845,28.218,27.584,27.128,26.918,26.851,26.746,26.497,
-26.150,25.857,26.271,26.309,26.465,26.594,26.610,26.561,26.568,26.691,26.886,27.123,27.500,28.184,29.195,30.320,
-31.285,32.005,32.610,33.221,33.783,34.149,34.290,34.349,34.487,34.727,34.983,35.175,35.266,35.229,35.054,34.829,
-34.742,34.927,35.282,35.488,35.243,34.521,33.582,32.756,32.210,31.887,31.621,31.283,30.839,30.330,29.825,29.385,
-29.033,28.741,28.448,28.095,27.664,27.185,26.732,26.381,26.164,26.037,25.909,25.731,25.548,25.471,25.590,25.920,
-26.409,26.969,27.500,27.925,28.243,28.514,28.757,28.867,28.685,28.186,27.538,26.959,26.514,26.097,25.579,24.924,
-24.157,23.303,22.421,21.652,21.145,20.904,20.764,20.560,20.297,20.115,20.080,20.057,19.809,19.205,18.347,17.500,
-16.911,16.639,16.548,16.424,16.134,15.678,15.134,14.575,14.059,13.649,13.386,13.236,13.104,12.916,12.686,12.490,
-12.396,12.424,12.545,12.693,12.788,12.796,12.781,12.855,13.046,13.224,13.223,13.019,12.766,12.644,12.708,12.876,
-13.032,13.101,13.040,12.850,12.609,12.464,12.538,12.830,13.209,13.501,13.560,13.308,12.746,12.007,11.323,10.897,
-10.746,10.695,10.555,10.312,10.134,10.192,10.488,10.848,11.048,10.958,10.619,10.232,10.041,10.174,10.528,10.845,
-10.929,10.794,10.583,10.393,10.212,10.020,9.846,9.676,9.375,8.794,7.968,7.113,6.399,5.788,5.138,4.410,
-3.671,2.933,2.112,1.179,.281,-.409,-.912,-1.456,-2.246,-3.294,-4.486,-5.744,-7.059,-8.431,-9.826,-11.214,
--12.596,-13.995,-15.445,-16.972,-18.557,-20.110,-21.536,-22.841,-24.120,-25.413,-26.619,-27.596,-28.310,-28.832,-29.209,-29.452,
--29.630,-29.889,-30.300,-30.766,-31.148,-31.433,-31.696,-31.950,-32.144,-32.301,-32.523,-32.824,-33.096,-33.337,-33.712,-34.168,
--34.088,-32.705,-30.043,-27.248,-25.665,-25.587,-26.114,-26.228,-25.779,-25.313,-25.234,-25.434,-25.681,-26.001,-26.521,-27.133,
--27.548,-27.638,-27.571,-27.614,-27.924,-28.542,-29.413,-30.336,-31.005,-31.256,-31.252,-31.311,-31.562,-31.874,-32.112,-32.334,
--32.688,-33.207,-33.843,-34.614,-35.591,-36.720,-37.800,-38.707,-39.550,-40.491,-41.473,-42.235,-42.608,-42.699,-42.738,-42.848,
--43.038,-43.353,-43.876,-44.572,-45.227,-45.626,-45.755,-45.769,-45.762,-45.666,-45.384,-44.975,-44.665,-44.665,-45.023,-45.612,
--46.240,-46.766,-47.158,-47.487,-47.847,-48.238,-48.520,-48.502,-48.135,-47.624,-47.345,-47.604,-48.427,-49.577,-50.744,-51.752,
--52.585,-53.272,-53.794,-54.114,-54.258,-54.324,-54.407,-54.561,-54.836,-55.312,-56.028,-56.895,-57.736,-58.426,-58.972,-59.447,
--59.880,-60.248,-60.558,-60.851,-61.134,-61.353,-61.474,-61.568,-61.746,-62.046,-62.406,-62.770,-63.154,-63.575,-63.983,-64.293,
--64.476,-64.556,-64.539,-64.413,-64.211,-64.016,-63.847,-63.609,-63.232,-62.813,-62.522,-62.370,-62.146,-61.648,-60.888,-60.005,
--59.043,-57.946,-56.778,-55.791,-55.175,-54.824,-54.447,-53.900,-53.275,-52.667,-51.998,-51.164,-50.265,-49.557,-49.172,-48.980,
--48.763,-48.441,-48.095,-47.869,-47.924,-48.398,-49.254,-50.143,-50.579,-50.373,-49.856,-49.561,-49.687,-49.964,-50.043,-49.889,
--49.696,-49.524,-49.170,-48.425,-47.337,-46.117,-44.880,-43.590,-42.277,-41.164,-40.500,-40.281,-40.227,-40.033,-39.621,-39.128,
--38.724,-38.467,-38.294,-38.088,-37.754,-37.303,-36.858,-36.537,-36.284,-35.873,-35.138,-34.191,-33.343,-32.785,-32.412,-31.993,
--31.466,-30.975,-30.662,-30.527,-30.537,-30.754,-31.225,-31.769,-32.032,-31.828,-31.331,-30.856,-30.479,-29.999,-29.270,-28.429,
--27.732,-27.230,-26.737,-26.112,-25.427,-24.823,-24.286,-23.669,-22.900,-22.070,-21.288,-20.543,-19.759,-18.918,-18.077,-17.269,
--16.479,-15.706,-14.984,-14.306,-13.571,-12.655,-11.544,-10.372,-9.330,-8.543,-7.986,-7.483,-6.808,-5.855,-4.733,-3.637,
--2.618,-1.537,-.268,1.105,2.381,3.497,4.579,5.720,6.828,7.765,8.559,9.348,10.144,10.795,11.229,11.621,
-12.210,13.028,13.892,14.665,15.392,16.173,16.995,17.773,18.478,19.139,19.743,20.251,20.727,21.344,22.212,23.232,
-24.200,24.989,25.607,26.097,26.478,26.810,27.215,27.765,28.349,28.688,28.501,27.700,26.500,25.360,24.747,24.805,
-25.239,25.562,25.515,25.237,25.056,25.208,25.781,26.804,28.236,29.847,31.256,32.211,32.792,33.292,33.898,34.553,
-35.090,35.447,35.712,36.030,36.484,37.018,37.443,37.550,37.269,36.744,36.225,35.912,35.914,36.289,37.028,37.975,
-38.838,39.381,39.592,39.663,39.816,40.171,40.710,41.311,41.820,42.182,42.497,42.889,43.315,43.610,43.755,43.971,
-44.417,44.914,45.162,45.181,45.252,45.304,44.691,42.963,40.764,39.463,39.600,40.030,39.060,36.470,34.000,33.637,
-35.581,38.146,39.485,39.143,37.973,36.989,36.569,36.529,36.523,36.268,35.645,34.842,34.287,34.258,34.557,34.698,
-34.447,34.033,33.761,33.548,32.993,31.879,30.461,29.207,28.376,27.909,27.634,27.447,27.293,27.098,26.806,26.437,
-26.037,25.601,25.102,24.573,24.114,23.760,23.407,22.904,22.207,21.408,20.624,19.900,19.219,18.555,17.893,17.210,
-16.493,15.771,15.118,14.606,14.253,14.008,13.785,13.518,13.201,12.880,12.599,12.337,12.020,11.595,11.073,10.510,
-9.948,9.411,8.937,8.581,8.372,8.267,8.180,8.047,7.850,7.607,7.337,7.044,6.716,6.337,5.908,5.451,
-4.980,4.481,3.941,3.406,2.965,2.654,2.401,2.102,1.744,1.407,1.155,.970,.802,.644,.495,.295,
--.030,-.446,-.799,-.981,-1.062,-1.209,-1.496,-1.835,-2.104,-2.274,-2.402,-2.541,-2.717,-2.949,-3.240,-3.539,
--3.769,-3.910,-4.009,-4.100,-4.154,-4.145,-4.133,-4.205,-4.361,-4.493,-4.525,-4.502,-4.515,-4.583,-4.653,-4.700,
--4.745,-4.787,-4.782,-4.724,-4.687,-4.727,-4.782,-4.729,-4.554,-4.369,-4.256,-4.168,-4.027,-3.872,-3.799,-3.797,
--3.731,-3.522,-3.260,-3.078,-2.967,-2.813,-2.581,-2.377,-2.295,-2.276,-2.195,-2.027,-1.860,-1.768,-1.726,-1.669,
--1.569,-1.433,-1.269,-1.091,-.914,-.701,-.347,.244,1.052,1.922,2.618,2.903,2.677,2.204,2.166,3.193,
-5.138,6.931,7.505,6.962,6.619,7.660,9.808,11.527,11.551,10.034,8.186,7.042,6.791,7.131,7.846,8.872,
-10.011,10.866,11.066,10.429,8.947,6.819,4.573,2.948,2.407,2.737,3.263,3.494,3.493,3.589,3.871,4.103,
-4.076,3.878,3.749,3.781,3.859,3.860,3.789,3.712,3.644,3.565,3.482,3.418,3.352,3.238,3.083,2.955,
-2.883,2.802,2.634,2.400,2.183,2.016,1.846,1.637,1.428,1.265,1.109,.868,.519,.131,-.225,-.558,
--.916,-1.309,-1.719,-2.146,-2.607,-3.086,-3.542,-3.972,-4.429,-4.949,-5.492,-5.986,-6.417,-6.836,-7.280,-7.734,
--8.165,-8.563,-8.936,-9.282,-9.606,-9.939,-10.306,-10.680,-11.014,-11.297,-11.565,-11.849,-12.139,-12.422,-12.722,-13.061,
--13.412,-13.728,-14.013,-14.321,-14.674,-15.019,-15.296,-15.516,-15.742,-16.007,-16.292,-16.582,-16.889,-17.221,-17.548,-17.846,
--18.135,-18.445,-18.758,-19.032,-19.279,-19.580,-19.995,-20.482,-20.935,-21.290,-21.579,-21.868,-22.191,-22.539,-22.902,-23.285,
--23.699,-24.153,-24.641,-25.141,-25.612,-26.027,-26.406,-26.800,-27.243,-27.716,-28.174,-28.593,-28.984,-29.365,-29.750,-30.153,
--30.584,-31.042,-31.512,-31.974,-32.420,-32.838,-33.212,-33.541,-33.859,-34.215,-34.616,-35.029,-35.424,-35.818,-36.241,-36.684,
--37.101,-37.460,-37.787,-38.130,-38.507,-38.892,-39.263,-39.623,-39.989,-40.358,-40.708,-41.027,-41.319,-41.599,-41.880,-42.155,
--42.413,-42.640,-42.849,-43.075,-43.347,-43.654,-43.957,-44.229,-44.483,-44.742,-44.998,-45.224,-45.401,-45.539,-45.650,-45.743,
--45.843,-45.990,-46.201,-46.424,-46.586,-46.660,-46.691,-46.728,-46.782,-46.841,-46.911,-46.986,-47.014,-46.936,-46.776,-46.640,
--46.593,-46.573,-46.462,-46.244,-46.029,-45.914,-45.865,-45.781,-45.632,-45.469,-45.321,-45.134,-44.871,-44.602,-44.425,-44.316,
--44.117,-43.735,-43.293,-43.001,-42.897,-42.778,-42.460,-42.039,-41.798,-41.833,-41.840,-41.361,-40.266,-38.919,-37.875,-37.410,
--37.352,-37.287,-36.900,-36.158,-35.307,-34.708,-34.609,-34.948,-35.366,-35.464,-35.088,-34.375,-33.542,-32.704,-31.891,-31.160,
--30.570,-30.063,-29.458,-28.618,-27.586,-26.511,-25.457,-24.372,-23.235,-22.200,-21.505,-21.244,-21.252,-21.228,-20.982,-20.571,
--20.209,-20.049,-20.057,-20.081,-20.008,-19.830,-19.565,-19.176,-18.631,-18.016,-17.501,-17.164,-16.897,-16.569,-16.266,-16.285,
--16.857,-17.888,-19.028,-19.974,-20.685,-21.324,-22.040,-22.814,-23.474,-23.805,-23.698,-23.233,-22.668,-22.310,-22.368,-22.911,
--23.913,-25.310,-26.982,-28.730,-30.323,-31.584,-32.431,-32.846,-32.854,-32.543,-32.076,-31.625,-31.267,-30.949,-30.573,-30.090,
--29.535,-28.993,-28.549,-28.258,-28.112,-28.031,-27.903,-27.668,-27.355,-27.041,-26.773,-26.577,-26.498,-26.598,-26.865,-27.169,
--27.345,-27.322,-27.132,-26.815,-26.366,-25.815,-25.291,-24.929,-24.741,-24.663,-24.754,-25.218,-26.105,-27.024,-27.340,-26.748,
--25.603,-24.594,-24.111,-24.008,-23.966,-23.910,-23.974,-24.161,-24.255,-24.109,-23.898,-23.947,-24.350,-24.877,-25.304,-25.714,
--26.392,-27.444,-28.606,-29.440,-29.678,-29.377,-28.845,-28.510,-28.795,-29.970,-31.941,-34.183,-35.981,-36.894,-37.102,-37.299,
--38.166,-39.823,-41.705,-43.004,-43.309,-42.912,-42.526,-42.682,-43.370,-44.209,-44.894,-45.434,-45.999,-46.645,-47.259,-47.749,
--48.172,-48.658,-49.236,-49.820,-50.334,-50.806,-51.291,-51.766,-52.142,-52.374,-52.501,-52.585,-52.629,-52.594,-52.464,-52.264,
--52.024,-51.752,-51.462,-51.193,-50.988,-50.846,-50.733,-50.614,-50.485,-50.374,-50.321,-50.356,-50.468,-50.597,-50.670,-50.667,
--50.642,-50.670,-50.773,-50.926,-51.104,-51.295,-51.474,-51.582,-51.580,-51.490,-51.361,-51.202,-50.975,-50.658,-50.296,-49.954,
--49.655,-49.370,-49.069,-48.751,-48.425,-48.094,-47.771,-47.477,-47.203,-46.884,-46.457,-45.933,-45.390,-44.882,-44.384,-43.844,
--43.261,-42.687,-42.154,-41.645,-41.127,-40.588,-40.015,-39.373,-38.640,-37.865,-37.134,-36.478,-35.838,-35.146,-34.409,-33.696,
--33.037,-32.385,-31.671,-30.876,-30.024,-29.144,-28.263,-27.416,-26.629,-25.881,-25.099,-24.238,-23.322,-22.421,-21.562,-20.710,
--19.819,-18.885,-17.936,-17.003,-16.100,-15.221,-14.330,-13.363,-12.284,-11.151,-10.096,-9.218,-8.490,-7.808,-7.129,-6.523,
--6.070,-5.734,-5.361,-4.827,-4.149,-3.440,-2.789,-2.195,-1.626,-1.090,-.622,-.227,.139,.519,.917,1.312,
-1.709,2.136,2.607,3.102,3.587,4.046,4.477,4.882,5.268,5.656,6.076,6.532,6.991,7.417,7.800,8.155,
-8.498,8.833,9.167,9.512,9.872,10.230,10.571,10.899,11.244,11.636,12.092,12.597,13.115,13.603,14.040,14.435,
-14.810,15.184,15.569,15.982,16.447,16.967,17.511,18.044,18.546,19.005,19.395,19.696,19.934,20.184,20.495,20.844,
-21.164,21.423,21.630,21.801,21.939,22.072,22.254,22.497,22.720,22.815,22.773,22.698,22.695,22.768,22.864,22.986,
-23.198,23.528,23.912,24.269,24.584,24.906,25.263,25.638,26.015,26.414,26.859,27.331,27.795,28.255,28.761,29.358,
-30.036,30.757,31.501,32.269,33.038,33.719,34.180,34.333,34.188,33.827,33.313,32.651,31.873,31.145,30.737,30.843,
-31.398,32.117,32.699,33.027,33.170,33.277,33.471,33.820,34.336,35.005,35.820,36.779,37.813,38.720,39.250,39.332,
-39.192,39.170,39.406,39.741,39.943,39.966,39.930,39.895,39.761,39.418,38.909,38.377,37.878,37.330,36.658,35.910,
-35.195,34.543,33.903,33.261,32.687,32.248,31.916,31.616,31.333,31.114,30.991,30.934,30.927,31.013,31.212,31.410,
-31.396,31.052,30.472,29.888,29.479,29.276,29.202,29.141,28.972,28.609,28.076,27.531,27.164,27.030,27.008,26.918,
-26.691,26.423,26.271,26.795,26.956,27.177,27.322,27.333,27.265,27.234,27.304,27.459,27.681,28.051,28.717,29.722,
-30.884,31.911,32.646,33.168,33.644,34.120,34.512,34.753,34.903,35.069,35.281,35.488,35.640,35.732,35.735,35.596,
-35.341,35.156,35.266,35.672,36.053,35.992,35.341,34.349,33.418,32.769,32.347,31.990,31.606,31.182,30.701,30.149,
-29.578,29.100,28.769,28.511,28.195,27.766,27.277,26.811,26.422,26.128,25.926,25.778,25.619,25.432,25.303,25.368,
-25.696,26.216,26.777,27.259,27.630,27.930,28.200,28.416,28.474,28.258,27.765,27.130,26.533,26.049,25.624,25.156,
-24.582,23.874,23.041,22.162,21.402,20.903,20.654,20.482,20.234,19.918,19.658,19.520,19.405,19.133,18.596,17.851,
-17.083,16.492,16.175,16.067,15.992,15.792,15.424,14.954,14.475,14.045,13.688,13.414,13.217,13.065,12.919,12.761,
-12.615,12.542,12.608,12.819,13.075,13.213,13.146,12.960,12.841,12.883,13.000,13.031,12.920,12.754,12.649,12.649,
-12.729,12.845,12.929,12.892,12.686,12.386,12.161,12.145,12.337,12.651,12.994,13.268,13.317,12.979,12.265,11.431,
-10.815,10.537,10.413,10.176,9.795,9.504,9.539,9.883,10.287,10.512,10.505,10.365,10.217,10.138,10.162,10.269,
-10.382,10.407,10.317,10.160,9.996,9.841,9.698,9.577,9.441,9.165,8.629,7.873,7.091,6.429,5.850,5.219,
-4.494,3.737,2.971,2.133,1.205,.304,-.438,-1.059,-1.742,-2.607,-3.609,-4.663,-5.780,-7.022,-8.378,-9.755,
--11.099,-12.465,-13.937,-15.535,-17.202,-18.850,-20.405,-21.833,-23.158,-24.429,-25.647,-26.752,-27.691,-28.475,-29.120,-29.584,
--29.834,-29.969,-30.176,-30.536,-30.952,-31.310,-31.627,-31.969,-32.292,-32.499,-32.615,-32.772,-32.992,-33.157,-33.271,-33.525,
--33.871,-33.649,-32.056,-29.176,-26.293,-24.874,-25.234,-26.384,-27.164,-27.265,-27.102,-27.043,-27.093,-27.228,-27.620,-28.362,
--29.183,-29.664,-29.681,-29.491,-29.414,-29.583,-29.994,-30.599,-31.265,-31.776,-32.028,-32.180,-32.476,-32.934,-33.348,-33.595,
--33.831,-34.284,-34.976,-35.764,-36.592,-37.548,-38.655,-39.748,-40.635,-41.310,-41.892,-42.411,-42.769,-42.916,-42.960,-43.043,
--43.194,-43.384,-43.670,-44.162,-44.834,-45.471,-45.859,-45.994,-46.019,-46.009,-45.888,-45.587,-45.208,-44.990,-45.113,-45.576,
--46.233,-46.891,-47.395,-47.694,-47.877,-48.098,-48.396,-48.598,-48.463,-47.990,-47.538,-47.583,-48.309,-49.457,-50.573,-51.398,
--52.003,-52.578,-53.176,-53.676,-53.965,-54.077,-54.144,-54.257,-54.441,-54.737,-55.230,-55.958,-56.812,-57.612,-58.258,-58.792,
--59.275,-59.682,-59.949,-60.107,-60.274,-60.505,-60.714,-60.798,-60.795,-60.857,-61.075,-61.393,-61.727,-62.075,-62.476,-62.891,
--63.213,-63.383,-63.431,-63.400,-63.289,-63.103,-62.900,-62.720,-62.514,-62.214,-61.865,-61.590,-61.409,-61.162,-60.685,-59.994,
--59.216,-58.385,-57.435,-56.410,-55.552,-55.073,-54.912,-54.798,-54.537,-54.127,-53.613,-52.976,-52.238,-51.568,-51.151,-50.959,
--50.775,-50.452,-50.063,-49.743,-49.508,-49.309,-49.197,-49.283,-49.524,-49.693,-49.635,-49.480,-49.489,-49.740,-50.048,-50.206,
--50.170,-49.986,-49.627,-49.034,-48.247,-47.376,-46.413,-45.213,-43.734,-42.250,-41.184,-40.720,-40.633,-40.539,-40.246,-39.832,
--39.448,-39.149,-38.908,-38.676,-38.387,-37.961,-37.390,-36.797,-36.332,-35.971,-35.503,-34.783,-33.941,-33.259,-32.848,-32.523,
--32.053,-31.453,-30.955,-30.721,-30.701,-30.789,-31.010,-31.423,-31.902,-32.146,-31.981,-31.555,-31.139,-30.781,-30.281,-29.505,
--28.616,-27.894,-27.397,-26.922,-26.297,-25.579,-24.930,-24.363,-23.746,-23.003,-22.215,-21.466,-20.703,-19.809,-18.777,-17.734,
--16.794,-15.963,-15.191,-14.452,-13.725,-12.949,-12.060,-11.072,-10.084,-9.200,-8.452,-7.786,-7.097,-6.271,-5.269,-4.178,
--3.134,-2.150,-1.092,.150,1.491,2.739,3.840,4.913,6.032,7.085,7.946,8.702,9.552,10.493,11.277,11.745,
-12.098,12.676,13.536,14.409,15.071,15.629,16.338,17.248,18.166,18.903,19.457,19.924,20.359,20.791,21.298,21.964,
-22.772,23.619,24.425,25.186,25.909,26.569,27.151,27.666,28.083,28.263,28.036,27.352,26.363,25.367,24.672,24.445,
-24.603,24.853,24.910,24.767,24.711,25.064,25.920,27.142,28.542,29.978,31.309,32.392,33.191,33.836,34.470,35.049,
-35.362,35.274,34.907,34.586,34.617,35.104,35.891,36.649,37.067,37.042,36.716,36.327,36.053,35.989,36.221,36.792,
-37.602,38.415,39.030,39.430,39.731,40.042,40.421,40.892,41.436,41.965,42.405,42.803,43.246,43.681,43.940,44.015,
-44.168,44.599,45.122,45.394,45.442,45.644,46.023,45.873,44.535,42.450,40.951,40.697,40.675,39.248,36.205,33.329,
-32.682,34.540,37.253,38.970,39.155,38.484,37.755,37.238,36.822,36.368,35.772,35.000,34.217,33.770,33.802,33.980,
-33.803,33.224,32.764,32.878,33.335,33.379,32.512,30.977,29.455,28.427,27.901,27.642,27.473,27.348,27.238,27.076,
-26.797,26.391,25.917,25.480,25.162,24.924,24.593,23.998,23.146,22.231,21.446,20.823,20.263,19.679,19.065,18.444,
-17.808,17.139,16.455,15.811,15.266,14.866,14.621,14.459,14.240,13.870,13.411,13.029,12.804,12.629,12.317,11.797,
-11.154,10.517,9.950,9.463,9.076,8.818,8.687,8.630,8.572,8.453,8.245,7.959,7.633,7.288,6.906,6.464,
-5.979,5.485,4.969,4.381,3.738,3.169,2.796,2.581,2.366,2.062,1.745,1.530,1.404,1.257,1.035,.782,
-.540,.277,-.024,-.291,-.446,-.542,-.724,-1.049,-1.408,-1.661,-1.796,-1.913,-2.083,-2.295,-2.520,-2.766,
--3.031,-3.262,-3.414,-3.503,-3.579,-3.652,-3.700,-3.741,-3.827,-3.951,-4.033,-4.023,-3.991,-4.056,-4.230,-4.403,
--4.482,-4.479,-4.450,-4.406,-4.345,-4.324,-4.409,-4.554,-4.610,-4.494,-4.289,-4.125,-4.020,-3.893,-3.725,-3.594,
--3.539,-3.465,-3.263,-2.973,-2.738,-2.616,-2.516,-2.343,-2.121,-1.936,-1.795,-1.639,-1.466,-1.351,-1.336,-1.354,
--1.303,-1.164,-.992,-.824,-.654,-.481,-.330,-.199,-.012,.313,.745,1.087,1.095,.751,.476,.974,
-2.607,4.812,6.321,6.267,5.171,4.621,5.779,8.229,10.404,11.077,10.278,8.853,7.525,6.605,6.380,7.233,
-9.179,11.505,13.163,13.524,12.627,10.806,8.356,5.687,3.490,2.417,2.499,3.088,3.486,3.542,3.577,3.817,
-4.108,4.176,4.003,3.819,3.791,3.864,3.900,3.859,3.799,3.757,3.721,3.689,3.674,3.651,3.561,3.394,
-3.227,3.128,3.070,2.960,2.774,2.579,2.436,2.326,2.194,2.032,1.869,1.696,1.464,1.154,.809,.474,
-.145,-.201,-.558,-.909,-1.277,-1.708,-2.199,-2.704,-3.194,-3.710,-4.291,-4.907,-5.485,-5.992,-6.459,-6.920,
--7.376,-7.816,-8.246,-8.664,-9.045,-9.372,-9.682,-10.024,-10.393,-10.734,-11.018,-11.283,-11.581,-11.911,-12.239,-12.555,
--12.880,-13.212,-13.528,-13.824,-14.135,-14.486,-14.847,-15.164,-15.425,-15.667,-15.928,-16.213,-16.512,-16.825,-17.150,-17.470,
--17.774,-18.073,-18.374,-18.658,-18.903,-19.141,-19.447,-19.861,-20.330,-20.752,-21.081,-21.365,-21.683,-22.071,-22.499,-22.924,
--23.331,-23.746,-24.196,-24.675,-25.138,-25.541,-25.889,-26.243,-26.666,-27.163,-27.679,-28.157,-28.587,-28.995,-29.406,-29.824,
--30.243,-30.665,-31.093,-31.533,-31.986,-32.444,-32.873,-33.237,-33.536,-33.822,-34.155,-34.539,-34.926,-35.287,-35.652,-36.078,
--36.560,-37.023,-37.395,-37.682,-37.956,-38.283,-38.668,-39.081,-39.492,-39.892,-40.278,-40.638,-40.963,-41.254,-41.518,-41.769,
--42.016,-42.262,-42.504,-42.747,-43.003,-43.284,-43.581,-43.868,-44.133,-44.387,-44.647,-44.903,-45.134,-45.326,-45.487,-45.622,
--45.737,-45.857,-46.026,-46.251,-46.474,-46.621,-46.683,-46.723,-46.795,-46.888,-46.968,-47.036,-47.095,-47.102,-46.996,-46.800,
--46.632,-46.577,-46.574,-46.490,-46.296,-46.101,-46.004,-45.962,-45.862,-45.684,-45.507,-45.368,-45.195,-44.931,-44.658,-44.508,
--44.450,-44.267,-43.810,-43.222,-42.820,-42.734,-42.755,-42.570,-42.136,-41.716,-41.557,-41.578,-41.425,-40.812,-39.772,-38.613,
--37.692,-37.193,-37.030,-36.889,-36.431,-35.596,-34.729,-34.328,-34.577,-35.142,-35.469,-35.264,-34.644,-33.870,-33.064,-32.224,
--31.403,-30.723,-30.187,-29.617,-28.841,-27.890,-26.934,-26.042,-25.093,-23.963,-22.749,-21.743,-21.175,-21.010,-20.993,-20.883,
--20.629,-20.342,-20.134,-19.991,-19.820,-19.573,-19.293,-19.018,-18.682,-18.182,-17.535,-16.900,-16.411,-16.022,-15.580,-15.088,
--14.824,-15.156,-16.190,-17.624,-18.950,-19.837,-20.357,-20.853,-21.592,-22.482,-23.145,-23.249,-22.828,-22.260,-21.986,-22.228,
--22.956,-24.046,-25.409,-26.973,-28.621,-30.175,-31.460,-32.353,-32.806,-32.842,-32.565,-32.132,-31.692,-31.321,-30.993,-30.628,
--30.157,-29.580,-28.976,-28.454,-28.078,-27.833,-27.649,-27.473,-27.300,-27.139,-26.968,-26.759,-26.563,-26.542,-26.839,-27.406,
--27.972,-28.243,-28.143,-27.815,-27.398,-26.878,-26.199,-25.460,-24.896,-24.621,-24.524,-24.507,-24.729,-25.436,-26.488,-27.228,
--27.005,-25.831,-24.409,-23.473,-23.191,-23.254,-23.388,-23.587,-23.879,-24.091,-24.017,-23.741,-23.605,-23.840,-24.330,-24.847,
--25.387,-26.172,-27.297,-28.501,-29.345,-29.558,-29.195,-28.559,-28.101,-28.343,-29.658,-31.899,-34.250,-35.653,-35.616,-34.710,
--34.206,-35.116,-37.442,-40.234,-42.356,-43.256,-43.190,-42.847,-42.801,-43.212,-43.913,-44.665,-45.352,-45.972,-46.546,-47.063,
--47.520,-47.951,-48.414,-48.937,-49.491,-50.039,-50.561,-51.056,-51.504,-51.869,-52.131,-52.309,-52.437,-52.522,-52.541,-52.464,
--52.286,-52.039,-51.772,-51.527,-51.321,-51.146,-50.991,-50.852,-50.733,-50.626,-50.528,-50.469,-50.498,-50.625,-50.783,-50.877,
--50.886,-50.882,-50.946,-51.078,-51.225,-51.361,-51.520,-51.713,-51.870,-51.896,-51.774,-51.583,-51.391,-51.181,-50.893,-50.523,
--50.141,-49.813,-49.534,-49.254,-48.940,-48.609,-48.289,-47.990,-47.709,-47.433,-47.141,-46.800,-46.385,-45.898,-45.363,-44.804,
--44.237,-43.673,-43.119,-42.577,-42.049,-41.533,-41.015,-40.450,-39.790,-39.037,-38.266,-37.567,-36.955,-36.360,-35.710,-35.008,
--34.309,-33.637,-32.956,-32.212,-31.390,-30.512,-29.610,-28.720,-27.885,-27.126,-26.392,-25.592,-24.686,-23.730,-22.810,-21.948,
--21.093,-20.205,-19.304,-18.418,-17.537,-16.629,-15.692,-14.744,-13.773,-12.742,-11.666,-10.646,-9.776,-9.036,-8.335,-7.655,
--7.092,-6.717,-6.434,-6.041,-5.434,-4.707,-4.023,-3.434,-2.874,-2.305,-1.780,-1.362,-1.011,-.634,-.203,.215,
-.573,.924,1.363,1.904,2.459,2.944,3.362,3.770,4.196,4.621,5.024,5.412,5.803,6.199,6.595,6.989,
-7.383,7.763,8.115,8.447,8.786,9.149,9.530,9.913,10.296,10.694,11.117,11.570,12.042,12.517,12.972,13.395,
-13.798,14.203,14.622,15.058,15.521,16.031,16.583,17.139,17.659,18.132,18.558,18.920,19.198,19.411,19.628,19.902,
-20.229,20.561,20.861,21.115,21.309,21.436,21.533,21.661,21.833,21.976,22.015,21.973,21.958,22.042,22.195,22.360,
-22.550,22.827,23.202,23.605,23.971,24.302,24.636,24.985,25.334,25.691,26.092,26.546,27.017,27.472,27.926,28.427,
-29.003,29.639,30.320,31.046,31.811,32.567,33.224,33.686,33.904,33.886,33.665,33.243,32.608,31.832,31.159,30.908,
-31.241,31.984,32.749,33.230,33.402,33.443,33.527,33.719,34.042,34.547,35.302,36.302,37.421,38.441,39.142,39.427,
-39.399,39.309,39.354,39.520,39.633,39.582,39.428,39.309,39.243,39.120,38.846,38.453,38.023,37.564,37.012,36.349,
-35.656,35.022,34.438,33.829,33.174,32.550,32.045,31.662,31.344,31.065,30.858,30.749,30.712,30.711,30.748,30.832,
-30.897,30.805,30.466,29.941,29.401,28.999,28.779,28.687,28.627,28.492,28.205,27.791,27.391,27.159,27.126,27.160,
-27.109,26.949,26.800,26.795,27.348,27.606,27.883,28.077,28.159,28.168,28.167,28.201,28.279,28.426,28.736,29.344,
-30.289,31.395,32.367,33.020,33.426,33.802,34.264,34.746,35.128,35.391,35.605,35.806,35.964,36.053,36.099,36.111,
-36.022,35.784,35.511,35.451,35.717,36.089,36.153,35.691,34.874,34.066,33.470,33.021,32.577,32.106,31.634,31.122,
-30.499,29.807,29.214,28.828,28.569,28.264,27.835,27.344,26.872,26.444,26.071,25.796,25.632,25.508,25.351,25.216,
-25.256,25.565,26.064,26.582,27.011,27.359,27.663,27.914,28.047,27.980,27.665,27.127,26.481,25.876,25.406,25.048,
-24.702,24.261,23.662,22.907,22.090,21.368,20.861,20.550,20.291,19.955,19.546,19.158,18.853,18.590,18.272,17.826,
-17.256,16.639,16.099,15.735,15.552,15.451,15.317,15.111,14.870,14.628,14.361,14.025,13.629,13.261,13.019,12.935,
-12.950,12.970,12.967,13.008,13.166,13.394,13.521,13.413,13.127,12.863,12.769,12.813,12.857,12.820,12.729,12.639,
-12.576,12.554,12.576,12.601,12.528,12.294,11.973,11.739,11.712,11.882,12.184,12.580,13.007,13.276,13.134,12.497,
-11.606,10.845,10.406,10.146,9.821,9.405,9.120,9.146,9.396,9.633,9.766,9.925,10.236,10.595,10.748,10.564,
-10.170,9.805,9.599,9.529,9.510,9.488,9.439,9.365,9.272,9.135,8.871,8.400,7.760,7.093,6.501,5.933,
-5.274,4.504,3.694,2.868,1.970,.987,.032,-.785,-1.520,-2.331,-3.258,-4.175,-4.993,-5.826,-6.870,-8.168,
--9.579,-10.984,-12.424,-14.011,-15.755,-17.533,-19.213,-20.752,-22.180,-23.525,-24.771,-25.879,-26.843,-27.717,-28.553,-29.309,
--29.863,-30.173,-30.379,-30.668,-31.067,-31.437,-31.700,-31.958,-32.310,-32.663,-32.848,-32.882,-32.932,-33.042,-33.081,-33.040,
--33.122,-33.295,-32.901,-31.157,-28.215,-25.456,-24.383,-25.246,-26.930,-28.170,-28.608,-28.654,-28.699,-28.790,-28.952,-29.386,
--30.183,-31.074,-31.661,-31.835,-31.810,-31.811,-31.884,-32.019,-32.266,-32.638,-33.037,-33.397,-33.813,-34.395,-35.032,-35.469,
--35.657,-35.883,-36.464,-37.390,-38.392,-39.298,-40.178,-41.116,-41.995,-42.608,-42.909,-43.048,-43.167,-43.264,-43.287,-43.270,
--43.307,-43.444,-43.677,-44.020,-44.504,-45.090,-45.642,-46.036,-46.268,-46.390,-46.396,-46.220,-45.884,-45.565,-45.484,-45.736,
--46.248,-46.865,-47.431,-47.823,-47.997,-48.052,-48.168,-48.410,-48.591,-48.456,-48.033,-47.754,-48.107,-49.152,-50.426,-51.370,
--51.821,-52.062,-52.441,-53.013,-53.563,-53.901,-54.050,-54.163,-54.341,-54.594,-54.933,-55.419,-56.079,-56.828,-57.529,-58.121,
--58.643,-59.112,-59.448,-59.565,-59.528,-59.527,-59.675,-59.881,-59.982,-59.962,-59.969,-60.126,-60.398,-60.683,-60.967,-61.309,
--61.706,-62.047,-62.236,-62.286,-62.252,-62.147,-61.956,-61.721,-61.513,-61.340,-61.135,-60.859,-60.552,-60.241,-59.870,-59.378,
--58.801,-58.228,-57.657,-56.997,-56.245,-55.573,-55.174,-55.054,-55.034,-54.936,-54.691,-54.300,-53.810,-53.363,-53.150,-53.212,
--53.327,-53.214,-52.854,-52.498,-52.344,-52.290,-52.076,-51.606,-51.022,-50.500,-50.107,-49.856,-49.795,-49.948,-50.219,-50.449,
--50.540,-50.464,-50.164,-49.592,-48.838,-48.108,-47.473,-46.698,-45.496,-43.938,-42.508,-41.646,-41.328,-41.158,-40.832,-40.389,
--40.017,-39.762,-39.523,-39.236,-38.927,-38.585,-38.112,-37.472,-36.807,-36.294,-35.908,-35.428,-34.720,-33.937,-33.345,-33.002,
--32.686,-32.185,-31.568,-31.105,-30.965,-31.067,-31.253,-31.484,-31.800,-32.129,-32.257,-32.043,-31.595,-31.134,-30.726,-30.228,
--29.523,-28.730,-28.075,-27.610,-27.152,-26.529,-25.784,-25.091,-24.505,-23.904,-23.167,-22.308,-21.409,-20.486,-19.495,-18.445,
--17.422,-16.488,-15.624,-14.787,-13.976,-13.201,-12.426,-11.605,-10.748,-9.916,-9.129,-8.334,-7.472,-6.537,-5.559,-4.573,
--3.614,-2.698,-1.769,-.709,.524,1.799,2.944,3.962,5.016,6.169,7.258,8.137,8.932,9.891,10.984,11.871,
-12.350,12.683,13.287,14.179,14.959,15.394,15.798,16.653,17.954,19.150,19.744,19.800,19.787,20.064,20.631,21.306,
-21.980,22.668,23.417,24.259,25.200,26.188,27.098,27.785,28.146,28.135,27.757,27.102,26.365,25.765,25.406,25.230,
-25.108,24.946,24.724,24.510,24.479,24.861,25.795,27.188,28.762,30.239,31.468,32.434,33.203,33.913,34.705,35.571,
-36.269,36.461,36.009,35.131,34.286,33.896,34.127,34.834,35.683,36.350,36.704,36.811,36.792,36.709,36.614,36.622,
-36.865,37.350,37.949,38.543,39.113,39.669,40.169,40.580,40.976,41.461,42.026,42.569,43.065,43.565,44.027,44.289,
-44.327,44.399,44.756,45.272,45.608,45.753,46.078,46.654,46.811,45.806,43.911,42.331,41.764,41.345,39.540,36.100,
-32.709,31.448,32.811,35.443,37.631,38.671,38.864,38.683,38.298,37.728,37.020,36.192,35.254,34.389,33.938,33.989,
-34.104,33.723,32.866,32.213,32.339,32.976,33.218,32.451,30.936,29.465,28.579,28.216,28.007,27.727,27.425,27.222,
-27.108,26.943,26.622,26.208,25.891,25.769,25.688,25.320,24.480,23.337,22.280,21.564,21.127,20.742,20.265,19.702,
-19.111,18.512,17.909,17.316,16.735,16.169,15.669,15.317,15.106,14.886,14.497,13.976,13.535,13.319,13.221,12.996,
-12.511,11.847,11.176,10.601,10.128,9.723,9.365,9.082,8.931,8.933,8.990,8.923,8.628,8.189,7.772,7.425,
-7.050,6.564,6.006,5.443,4.854,4.196,3.547,3.077,2.838,2.697,2.503,2.270,2.096,1.973,1.770,1.434,
-1.081,.841,.694,.523,.293,.078,-.094,-.303,-.613,-.954,-1.200,-1.334,-1.452,-1.625,-1.824,-2.006,
--2.189,-2.406,-2.619,-2.761,-2.837,-2.920,-3.052,-3.192,-3.296,-3.373,-3.444,-3.477,-3.446,-3.418,-3.511,-3.738,
--3.962,-4.049,-4.010,-3.961,-3.959,-3.973,-3.988,-4.055,-4.186,-4.279,-4.220,-4.034,-3.856,-3.756,-3.665,-3.513,
--3.343,-3.235,-3.159,-3.004,-2.742,-2.480,-2.317,-2.219,-2.078,-1.858,-1.603,-1.352,-1.107,-.903,-.815,-.858,
--.930,-.910,-.796,-.671,-.571,-.443,-.260,-.092,-.014,.038,.214,.542,.807,.720,.286,-.014,
-.489,2.006,3.877,4.959,4.631,3.487,2.888,3.705,5.554,7.288,8.109,8.044,7.464,6.568,5.576,5.153,
-6.138,8.643,11.647,13.749,14.278,13.534,12.056,10.011,7.444,4.842,3.067,2.602,3.079,3.677,3.908,3.888,
-3.933,4.097,4.196,4.124,3.983,3.901,3.876,3.840,3.791,3.785,3.822,3.836,3.786,3.714,3.662,3.609,
-3.516,3.409,3.345,3.324,3.271,3.140,2.975,2.849,2.769,2.683,2.558,2.411,2.258,2.080,1.856,1.587,
-1.286,.948,.575,.202,-.141,-.479,-.879,-1.369,-1.914,-2.470,-3.046,-3.664,-4.304,-4.918,-5.485,-6.020,
--6.529,-6.993,-7.414,-7.829,-8.264,-8.689,-9.056,-9.376,-9.705,-10.065,-10.419,-10.731,-11.023,-11.345,-11.703,-12.056,
--12.382,-12.698,-13.026,-13.354,-13.667,-13.975,-14.301,-14.643,-14.967,-15.252,-15.512,-15.778,-16.068,-16.382,-16.712,-17.046,
--17.375,-17.696,-18.013,-18.319,-18.593,-18.831,-19.076,-19.389,-19.786,-20.210,-20.580,-20.878,-21.161,-21.507,-21.944,-22.430,
--22.902,-23.335,-23.757,-24.205,-24.668,-25.094,-25.442,-25.747,-26.093,-26.541,-27.068,-27.596,-28.068,-28.488,-28.895,-29.320,
--29.757,-30.188,-30.600,-30.998,-31.403,-31.834,-32.283,-32.708,-33.071,-33.372,-33.664,-34.002,-34.386,-34.775,-35.145,-35.524,
--35.956,-36.433,-36.887,-37.249,-37.520,-37.771,-38.075,-38.462,-38.912,-39.385,-39.838,-40.238,-40.569,-40.843,-41.089,-41.334,
--41.586,-41.843,-42.107,-42.381,-42.662,-42.948,-43.235,-43.518,-43.791,-44.051,-44.307,-44.567,-44.819,-45.041,-45.227,-45.389,
--45.544,-45.702,-45.877,-46.087,-46.322,-46.528,-46.649,-46.698,-46.743,-46.834,-46.950,-47.044,-47.112,-47.163,-47.159,-47.041,
--46.826,-46.637,-46.575,-46.592,-46.555,-46.417,-46.270,-46.201,-46.160,-46.037,-45.817,-45.597,-45.436,-45.269,-45.024,-44.758,
--44.586,-44.485,-44.255,-43.758,-43.134,-42.698,-42.608,-42.677,-42.576,-42.179,-41.674,-41.341,-41.265,-41.259,-41.030,-40.375,
--39.311,-38.108,-37.162,-36.722,-36.638,-36.439,-35.775,-34.819,-34.142,-34.145,-34.650,-35.102,-35.104,-34.686,-34.081,-33.403,
--32.632,-31.800,-31.038,-30.406,-29.789,-29.040,-28.169,-27.300,-26.463,-25.520,-24.345,-23.030,-21.864,-21.102,-20.774,-20.695,
--20.632,-20.462,-20.202,-19.924,-19.664,-19.401,-19.118,-18.830,-18.539,-18.180,-17.662,-16.997,-16.343,-15.869,-15.565,-15.239,
--14.750,-14.258,-14.193,-14.895,-16.250,-17.701,-18.680,-19.093,-19.374,-20.033,-21.123,-22.175,-22.659,-22.481,-22.051,-21.899,
--22.297,-23.194,-24.408,-25.804,-27.310,-28.845,-30.287,-31.490,-32.330,-32.749,-32.777,-32.519,-32.107,-31.646,-31.201,-30.787,
--30.364,-29.874,-29.300,-28.715,-28.232,-27.904,-27.691,-27.521,-27.377,-27.285,-27.237,-27.159,-27.006,-26.865,-26.937,-27.355,
--28.003,-28.531,-28.619,-28.246,-27.685,-27.206,-26.812,-26.324,-25.695,-25.116,-24.777,-24.617,-24.481,-24.475,-24.957,-26.023,
--27.109,-27.338,-26.358,-24.716,-23.348,-22.747,-22.744,-22.953,-23.219,-23.544,-23.814,-23.821,-23.572,-23.366,-23.491,-23.929,
--24.480,-25.096,-25.939,-27.092,-28.308,-29.159,-29.376,-29.024,-28.416,-27.998,-28.261,-29.513,-31.537,-33.490,-34.401,-33.984,
--32.988,-32.673,-33.825,-36.231,-38.978,-41.201,-42.548,-43.138,-43.279,-43.278,-43.399,-43.798,-44.446,-45.165,-45.783,-46.275,
--46.734,-47.234,-47.763,-48.280,-48.790,-49.328,-49.885,-50.404,-50.842,-51.214,-51.558,-51.881,-52.148,-52.330,-52.432,-52.467,
--52.419,-52.273,-52.052,-51.828,-51.653,-51.510,-51.347,-51.143,-50.944,-50.802,-50.720,-50.664,-50.637,-50.686,-50.834,-51.011,
--51.108,-51.101,-51.080,-51.152,-51.316,-51.480,-51.595,-51.705,-51.871,-52.049,-52.117,-52.011,-51.793,-51.568,-51.355,-51.088,
--50.726,-50.328,-49.984,-49.711,-49.447,-49.136,-48.802,-48.499,-48.238,-47.979,-47.691,-47.387,-47.079,-46.734,-46.291,-45.741,
--45.147,-44.592,-44.101,-43.625,-43.113,-42.564,-42.012,-41.466,-40.880,-40.202,-39.442,-38.677,-37.986,-37.374,-36.784,-36.159,
--35.496,-34.823,-34.139,-33.414,-32.627,-31.795,-30.946,-30.094,-29.254,-28.459,-27.718,-26.983,-26.168,-25.244,-24.279,-23.356,
--22.480,-21.591,-20.672,-19.775,-18.932,-18.076,-17.114,-16.056,-15.014,-14.066,-13.176,-12.272,-11.367,-10.531,-9.778,-9.046,
--8.325,-7.712,-7.283,-6.949,-6.513,-5.891,-5.204,-4.613,-4.127,-3.626,-3.064,-2.536,-2.132,-1.796,-1.397,-.917,
--.470,-.135,.165,.575,1.126,1.705,2.201,2.617,3.027,3.467,3.907,4.312,4.687,5.055,5.425,5.800,
-6.194,6.611,7.035,7.434,7.802,8.159,8.528,8.916,9.325,9.758,10.211,10.669,11.115,11.552,11.985,12.415,
-12.833,13.246,13.667,14.112,14.587,15.100,15.657,16.240,16.805,17.314,17.762,18.154,18.479,18.722,18.907,19.096,
-19.339,19.632,19.944,20.254,20.544,20.781,20.935,21.030,21.126,21.245,21.343,21.373,21.372,21.425,21.570,21.771,
-21.990,22.249,22.583,22.969,23.348,23.696,24.042,24.399,24.736,25.034,25.337,25.714,26.172,26.655,27.116,27.572,
-28.063,28.604,29.187,29.823,30.526,31.274,31.985,32.569,32.979,33.217,33.304,33.234,32.962,32.458,31.815,31.302,
-31.238,31.734,32.552,33.269,33.608,33.624,33.578,33.678,33.970,34.436,35.105,36.021,37.128,38.222,39.043,39.435,
-39.455,39.332,39.293,39.396,39.508,39.466,39.244,38.956,38.726,38.566,38.411,38.207,37.939,37.588,37.122,36.537,
-35.906,35.323,34.821,34.343,33.805,33.190,32.558,31.999,31.560,31.223,30.946,30.711,30.530,30.422,30.383,30.383,
-30.376,30.305,30.117,29.792,29.373,28.944,28.586,28.330,28.160,28.030,27.877,27.654,27.385,27.172,27.114,27.198,
-27.299,27.304,27.234,27.217,27.348,27.890,28.222,28.543,28.790,28.964,29.084,29.159,29.196,29.219,29.295,29.538,
-30.072,30.909,31.876,32.695,33.210,33.528,33.902,34.465,35.109,35.630,35.944,36.127,36.271,36.386,36.445,36.468,
-36.481,36.430,36.220,35.882,35.622,35.631,35.836,35.931,35.679,35.146,34.585,34.138,33.733,33.257,32.709,32.145,
-31.536,30.812,30.026,29.359,28.922,28.622,28.277,27.823,27.334,26.875,26.434,26.016,25.696,25.523,25.430,25.316,
-25.208,25.254,25.537,25.970,26.400,26.765,27.097,27.403,27.611,27.630,27.422,27.004,26.433,25.810,25.270,24.904,
-24.681,24.470,24.131,23.595,22.887,22.103,21.384,20.836,20.455,20.131,19.745,19.264,18.745,18.258,17.830,17.439,
-17.044,16.614,16.154,15.718,15.370,15.133,14.976,14.873,14.836,14.870,14.898,14.776,14.406,13.844,13.289,12.961,
-12.950,13.155,13.368,13.440,13.396,13.377,13.451,13.524,13.450,13.213,12.950,12.803,12.780,12.787,12.756,12.689,
-12.607,12.517,12.431,12.365,12.295,12.141,11.852,11.504,11.261,11.233,11.414,11.747,12.199,12.707,13.079,13.064,
-12.562,11.759,10.979,10.397,9.943,9.486,9.062,8.828,8.819,8.859,8.793,8.763,9.111,9.948,10.891,11.329,
-10.965,10.068,9.190,8.711,8.644,8.791,8.953,9.035,9.025,8.955,8.831,8.604,8.209,7.669,7.092,6.548,
-5.976,5.277,4.461,3.616,2.758,1.802,.722,-.344,-1.256,-2.065,-2.935,-3.880,-4.708,-5.304,-5.857,-6.705,
--7.976,-9.492,-11.032,-12.579,-14.257,-16.093,-17.946,-19.652,-21.179,-22.591,-23.923,-25.126,-26.140,-27.005,-27.837,-28.700,
--29.502,-30.088,-30.444,-30.754,-31.191,-31.690,-32.046,-32.202,-32.343,-32.623,-32.942,-33.103,-33.111,-33.137,-33.204,-33.144,
--32.932,-32.801,-32.769,-32.230,-30.443,-27.595,-25.064,-24.304,-25.480,-27.417,-28.849,-29.471,-29.761,-30.135,-30.592,-31.037,
--31.554,-32.235,-32.945,-33.465,-33.760,-33.957,-34.116,-34.184,-34.174,-34.237,-34.496,-34.914,-35.418,-36.035,-36.780,-37.494,
--37.952,-38.186,-38.549,-39.352,-40.514,-41.670,-42.578,-43.290,-43.909,-44.341,-44.395,-44.091,-43.715,-43.547,-43.608,-43.712,
--43.719,-43.679,-43.740,-43.990,-44.398,-44.877,-45.355,-45.801,-46.216,-46.586,-46.838,-46.861,-46.615,-46.228,-45.957,-46.004,
--46.380,-46.934,-47.492,-47.938,-48.207,-48.292,-48.293,-48.383,-48.625,-48.851,-48.819,-48.557,-48.466,-48.977,-50.084,-51.291,
--52.059,-52.297,-52.357,-52.616,-53.123,-53.647,-53.989,-54.161,-54.305,-54.519,-54.806,-55.159,-55.606,-56.167,-56.799,-57.417,
--57.973,-58.474,-58.903,-59.175,-59.221,-59.109,-59.035,-59.129,-59.322,-59.441,-59.430,-59.414,-59.535,-59.783,-60.051,-60.295,
--60.565,-60.882,-61.158,-61.294,-61.296,-61.237,-61.132,-60.934,-60.640,-60.330,-60.080,-59.875,-59.651,-59.374,-59.035,-58.615,
--58.106,-57.567,-57.104,-56.754,-56.456,-56.138,-55.821,-55.579,-55.441,-55.365,-55.278,-55.114,-54.836,-54.504,-54.307,-54.428,
--54.813,-55.154,-55.184,-54.976,-54.847,-54.974,-55.164,-55.047,-54.418,-53.364,-52.148,-51.069,-50.374,-50.160,-50.302,-50.533,
--50.663,-50.654,-50.487,-50.060,-49.342,-48.544,-47.950,-47.524,-46.852,-45.622,-44.077,-42.820,-42.176,-41.886,-41.506,-40.940,
--40.446,-40.197,-40.041,-39.754,-39.340,-38.957,-38.624,-38.179,-37.550,-36.910,-36.462,-36.148,-35.699,-34.981,-34.174,-33.559,
--33.188,-32.854,-32.373,-31.814,-31.416,-31.325,-31.471,-31.694,-31.916,-32.144,-32.339,-32.358,-32.081,-31.558,-30.980,-30.479,
--30.007,-29.446,-28.804,-28.211,-27.738,-27.278,-26.677,-25.939,-25.216,-24.603,-24.005,-23.243,-22.255,-21.139,-20.036,-19.018,
--18.084,-17.202,-16.321,-15.409,-14.484,-13.609,-12.818,-12.066,-11.295,-10.514,-9.762,-8.999,-8.115,-7.055,-5.909,-4.837,
--3.921,-3.122,-2.326,-1.410,-.302,.939,2.140,3.176,4.134,5.219,6.453,7.610,8.528,9.376,10.426,11.602,
-12.493,12.919,13.250,13.948,14.909,15.579,15.806,16.221,17.521,19.461,20.908,20.993,20.016,19.109,19.127,20.037,
-21.256,22.329,23.189,23.974,24.797,25.681,26.564,27.309,27.748,27.782,27.449,26.922,26.438,26.193,26.219,26.317,
-26.191,25.702,25.019,24.492,24.411,24.872,25.827,27.157,28.689,30.202,31.502,32.497,33.216,33.785,34.389,35.183,
-36.147,37.014,37.399,37.087,36.217,35.208,34.505,34.341,34.666,35.248,35.856,36.385,36.828,37.163,37.317,37.269,
-37.140,37.113,37.275,37.606,38.087,38.736,39.487,40.159,40.627,40.986,41.437,42.032,42.646,43.188,43.702,44.195,
-44.527,44.621,44.674,44.953,45.424,45.806,46.041,46.430,47.073,47.408,46.715,45.101,43.567,42.788,42.092,40.101,
-36.448,32.541,30.385,30.820,33.033,35.564,37.469,38.538,38.895,38.731,38.287,37.752,37.109,36.253,35.333,34.764,
-34.729,34.824,34.440,33.517,32.691,32.552,32.899,32.911,32.052,30.646,29.505,29.098,29.186,29.193,28.795,28.128,
-27.523,27.149,26.917,26.664,26.378,26.192,26.166,26.106,25.690,24.807,23.724,22.857,22.389,22.138,21.805,21.262,
-20.586,19.904,19.280,18.726,18.222,17.713,17.146,16.561,16.078,15.743,15.439,15.016,14.489,14.038,13.793,13.675,
-13.480,13.074,12.474,11.798,11.184,10.720,10.383,10.058,9.684,9.382,9.333,9.497,9.557,9.249,8.673,8.174,
-7.905,7.670,7.220,6.578,5.955,5.430,4.884,4.254,3.686,3.349,3.208,3.094,2.928,2.756,2.581,2.301,
-1.885,1.487,1.280,1.228,1.129,.880,.575,.341,.155,-.083,-.380,-.638,-.804,-.937,-1.103,-1.283,
--1.434,-1.575,-1.744,-1.915,-2.024,-2.079,-2.178,-2.369,-2.579,-2.705,-2.752,-2.797,-2.864,-2.905,-2.915,-2.979,
--3.147,-3.334,-3.409,-3.376,-3.368,-3.467,-3.597,-3.660,-3.677,-3.733,-3.819,-3.824,-3.700,-3.539,-3.442,-3.380,
--3.260,-3.081,-2.934,-2.849,-2.739,-2.521,-2.244,-2.019,-1.869,-1.723,-1.522,-1.281,-1.031,-.788,-.593,-.511,
--.553,-.616,-.591,-.488,-.402,-.349,-.238,-.023,.183,.254,.250,.388,.755,1.134,1.195,.886,
-.597,.859,1.825,3.023,3.695,3.485,2.794,2.413,2.771,3.599,4.350,4.807,5.110,5.291,5.117,4.591,
-4.402,5.483,7.986,10.907,12.942,13.625,13.457,12.972,12.015,10.130,7.486,5.068,3.844,3.881,4.404,4.642,
-4.452,4.177,4.094,4.168,4.226,4.201,4.134,4.061,3.992,3.961,4.006,4.085,4.083,3.941,3.739,3.610,
-3.588,3.599,3.578,3.536,3.504,3.465,3.381,3.263,3.164,3.104,3.054,2.985,2.903,2.820,2.717,2.564,
-2.350,2.082,1.762,1.395,1.005,.627,.252,-.166,-.665,-1.233,-1.837,-2.464,-3.104,-3.735,-4.333,-4.907,
--5.482,-6.044,-6.546,-6.975,-7.383,-7.827,-8.292,-8.715,-9.072,-9.406,-9.759,-10.122,-10.466,-10.791,-11.130,-11.489,
--11.844,-12.175,-12.502,-12.849,-13.208,-13.552,-13.867,-14.166,-14.466,-14.764,-15.047,-15.314,-15.584,-15.876,-16.198,-16.536,
--16.874,-17.205,-17.540,-17.883,-18.212,-18.501,-18.754,-19.018,-19.342,-19.725,-20.113,-20.452,-20.740,-21.031,-21.390,-21.838,
--22.336,-22.819,-23.260,-23.684,-24.125,-24.574,-24.981,-25.316,-25.623,-25.984,-26.439,-26.951,-27.445,-27.879,-28.267,-28.652,
--29.066,-29.508,-29.954,-30.378,-30.774,-31.163,-31.571,-31.997,-32.410,-32.783,-33.125,-33.469,-33.845,-34.250,-34.667,-35.084,
--35.507,-35.939,-36.358,-36.734,-37.053,-37.334,-37.622,-37.958,-38.362,-38.830,-39.329,-39.799,-40.179,-40.450,-40.650,-40.853,
--41.105,-41.401,-41.709,-42.012,-42.316,-42.622,-42.916,-43.191,-43.451,-43.708,-43.970,-44.236,-44.501,-44.749,-44.960,-45.127,
--45.276,-45.442,-45.642,-45.876,-46.130,-46.377,-46.573,-46.684,-46.730,-46.776,-46.870,-46.998,-47.116,-47.208,-47.274,-47.276,
--47.158,-46.936,-46.729,-46.648,-46.672,-46.684,-46.618,-46.528,-46.479,-46.432,-46.293,-46.046,-45.782,-45.567,-45.372,-45.140,
--44.894,-44.700,-44.527,-44.236,-43.750,-43.196,-42.818,-42.718,-42.741,-42.625,-42.263,-41.774,-41.370,-41.171,-41.128,-41.055,
--40.699,-39.874,-38.646,-37.398,-36.583,-36.319,-36.234,-35.829,-35.005,-34.183,-33.851,-34.064,-34.442,-34.596,-34.439,-34.091,
--33.624,-33.007,-32.252,-31.469,-30.742,-30.034,-29.267,-28.439,-27.591,-26.680,-25.591,-24.282,-22.904,-21.721,-20.923,-20.520,
--20.373,-20.291,-20.122,-19.812,-19.416,-19.040,-18.756,-18.551,-18.361,-18.117,-17.763,-17.271,-16.674,-16.093,-15.681,-15.469,
--15.293,-14.933,-14.388,-14.013,-14.280,-15.316,-16.686,-17.723,-18.134,-18.274,-18.765,-19.840,-21.108,-21.965,-22.174,-22.042,
--22.087,-22.627,-23.658,-24.998,-26.462,-27.928,-29.317,-30.562,-31.581,-32.287,-32.631,-32.643,-32.416,-32.036,-31.554,-31.013,
--30.464,-29.930,-29.391,-28.842,-28.356,-28.032,-27.887,-27.832,-27.767,-27.676,-27.602,-27.554,-27.496,-27.429,-27.445,-27.658,
--28.067,-28.478,-28.583,-28.178,-27.372,-26.552,-26.089,-25.998,-25.966,-25.712,-25.288,-24.938,-24.742,-24.577,-24.455,-24.707,
--25.602,-26.803,-27.438,-26.878,-25.376,-23.824,-22.928,-22.725,-22.860,-23.083,-23.358,-23.617,-23.691,-23.531,-23.352,-23.431,
--23.813,-24.351,-24.979,-25.809,-26.901,-28.039,-28.828,-29.014,-28.661,-28.082,-27.690,-27.886,-28.876,-30.441,-31.920,-32.644,
--32.529,-32.215,-32.530,-33.797,-35.681,-37.633,-39.380,-40.923,-42.221,-43.084,-43.420,-43.468,-43.632,-44.110,-44.751,-45.315,
--45.766,-46.258,-46.889,-47.575,-48.189,-48.724,-49.267,-49.840,-50.357,-50.748,-51.057,-51.382,-51.742,-52.059,-52.262,-52.364,
--52.416,-52.418,-52.331,-52.156,-51.961,-51.810,-51.690,-51.537,-51.330,-51.123,-50.981,-50.902,-50.841,-50.798,-50.834,-50.991,
--51.204,-51.348,-51.368,-51.348,-51.411,-51.584,-51.773,-51.885,-51.938,-52.015,-52.135,-52.210,-52.152,-51.970,-51.747,-51.524,
--51.260,-50.916,-50.538,-50.214,-49.964,-49.708,-49.378,-49.007,-48.684,-48.435,-48.194,-47.895,-47.559,-47.236,-46.911,-46.499,
--45.962,-45.378,-44.864,-44.448,-44.041,-43.548,-42.966,-42.359,-41.765,-41.152,-40.473,-39.736,-39.002,-38.319,-37.682,-37.053,
--36.414,-35.774,-35.135,-34.465,-33.725,-32.921,-32.103,-31.311,-30.542,-29.773,-29.010,-28.271,-27.533,-26.736,-25.851,-24.927,
--24.025,-23.136,-22.204,-21.230,-20.299,-19.447,-18.569,-17.527,-16.338,-15.192,-14.254,-13.488,-12.740,-11.939,-11.146,-10.419,
--9.715,-8.990,-8.305,-7.760,-7.332,-6.876,-6.309,-5.718,-5.232,-4.834,-4.393,-3.854,-3.319,-2.899,-2.550,-2.139,
--1.639,-1.164,-.807,-.506,-.121,.389,.935,1.428,1.869,2.308,2.751,3.161,3.529,3.894,4.285,4.689,
-5.084,5.477,5.895,6.336,6.773,7.184,7.572,7.957,8.354,8.782,9.252,9.751,10.244,10.699,11.122,11.541,
-11.972,12.408,12.839,13.272,13.727,14.224,14.772,15.359,15.946,16.488,16.964,17.382,17.751,18.053,18.277,18.456,
-18.651,18.893,19.163,19.435,19.710,19.991,20.247,20.434,20.554,20.656,20.769,20.871,20.939,21.002,21.118,21.299,
-21.520,21.770,22.076,22.440,22.815,23.155,23.480,23.836,24.209,24.531,24.782,25.034,25.375,25.808,26.265,26.712,
-27.170,27.662,28.172,28.687,29.250,29.912,30.649,31.353,31.920,32.319,32.581,32.729,32.737,32.552,32.166,31.699,
-31.411,31.561,32.188,33.019,33.647,33.846,33.729,33.614,33.766,34.253,35.008,35.945,36.983,38.011,38.859,39.362,
-39.477,39.339,39.187,39.187,39.308,39.382,39.281,39.025,38.717,38.425,38.150,37.893,37.661,37.420,37.082,36.592,
-36.002,35.430,34.949,34.536,34.125,33.661,33.120,32.511,31.910,31.425,31.103,30.875,30.633,30.358,30.139,30.049,
-30.037,29.976,29.786,29.489,29.151,28.814,28.482,28.160,27.867,27.630,27.448,27.297,27.151,27.030,26.999,27.103,
-27.299,27.467,27.534,27.553,27.650,27.890,28.399,28.773,29.116,29.391,29.624,29.836,30.001,30.090,30.119,30.167,
-30.360,30.805,31.499,32.278,32.909,33.288,33.562,33.992,34.684,35.473,36.079,36.375,36.468,36.537,36.651,36.763,
-36.821,36.813,36.712,36.456,36.052,35.652,35.458,35.500,35.585,35.492,35.188,34.815,34.476,34.126,33.674,33.106,
-32.460,31.733,30.913,30.088,29.419,28.966,28.609,28.195,27.707,27.236,26.822,26.417,26.011,25.691,25.521,25.441,
-25.353,25.282,25.354,25.620,25.982,26.320,26.623,26.934,27.222,27.370,27.295,27.009,26.569,26.035,25.493,25.067,
-24.832,24.722,24.567,24.224,23.663,22.940,22.145,21.386,20.765,20.316,19.965,19.582,19.084,18.492,17.889,17.347,
-16.882,16.463,16.056,15.666,15.327,15.059,14.840,14.658,14.568,14.650,14.884,15.092,15.038,14.626,13.982,13.371,
-13.033,13.051,13.318,13.600,13.698,13.582,13.401,13.310,13.318,13.306,13.194,13.023,12.884,12.803,12.736,12.652,
-12.561,12.475,12.385,12.282,12.178,12.060,11.866,11.557,11.188,10.895,10.800,10.937,11.279,11.770,12.301,12.687,
-12.743,12.418,11.835,11.171,10.511,9.850,9.220,8.754,8.548,8.488,8.325,7.994,7.817,8.255,9.383,10.653,
-11.276,10.877,9.780,8.677,8.071,8.017,8.262,8.521,8.646,8.638,8.574,8.493,8.330,7.984,7.464,6.897,
-6.366,5.803,5.096,4.271,3.450,2.645,1.717,.597,-.555,-1.532,-2.348,-3.195,-4.119,-4.914,-5.436,-5.899,
--6.717,-8.068,-9.730,-11.385,-12.970,-14.648,-16.504,-18.407,-20.156,-21.682,-23.056,-24.335,-25.487,-26.464,-27.312,-28.144,
--29.001,-29.776,-30.331,-30.696,-31.076,-31.612,-32.180,-32.535,-32.627,-32.672,-32.854,-33.101,-33.241,-33.293,-33.396,-33.512,
--33.420,-33.083,-32.774,-32.589,-32.007,-30.334,-27.711,-25.380,-24.665,-25.722,-27.497,-28.879,-29.643,-30.258,-31.093,-32.073,
--32.978,-33.747,-34.408,-34.917,-35.231,-35.431,-35.638,-35.854,-35.990,-36.065,-36.231,-36.590,-37.095,-37.669,-38.328,-39.092,
--39.844,-40.428,-40.901,-41.535,-42.515,-43.690,-44.720,-45.433,-45.918,-46.257,-46.309,-45.874,-45.031,-44.204,-43.818,-43.920,
--44.193,-44.313,-44.254,-44.241,-44.457,-44.873,-45.332,-45.737,-46.121,-46.550,-46.985,-47.280,-47.293,-47.029,-46.670,-46.478,
--46.621,-47.071,-47.652,-48.179,-48.554,-48.757,-48.827,-48.859,-48.984,-49.249,-49.528,-49.634,-49.569,-49.623,-50.120,-51.057,
--52.055,-52.706,-52.940,-53.021,-53.219,-53.568,-53.917,-54.147,-54.283,-54.424,-54.634,-54.914,-55.250,-55.646,-56.112,-56.635,
--57.172,-57.677,-58.123,-58.491,-58.743,-58.845,-58.828,-58.816,-58.912,-59.087,-59.201,-59.176,-59.105,-59.148,-59.354,-59.639,
--59.912,-60.160,-60.383,-60.521,-60.509,-60.382,-60.235,-60.093,-59.876,-59.517,-59.074,-58.681,-58.413,-58.247,-58.107,-57.914,
--57.591,-57.110,-56.551,-56.091,-55.878,-55.908,-56.035,-56.095,-56.015,-55.838,-55.662,-55.544,-55.438,-55.254,-55.008,-54.871,
--55.014,-55.383,-55.720,-55.847,-55.861,-56.002,-56.324,-56.590,-56.462,-55.749,-54.492,-52.940,-51.502,-50.593,-50.363,-50.568,
--50.793,-50.810,-50.647,-50.339,-49.798,-49.028,-48.303,-47.895,-47.639,-47.010,-45.750,-44.256,-43.165,-42.639,-42.257,-41.639,
--40.924,-40.494,-40.395,-40.271,-39.858,-39.303,-38.888,-38.605,-38.205,-37.600,-37.017,-36.675,-36.463,-36.059,-35.332,-34.488,
--33.816,-33.377,-33.010,-32.568,-32.094,-31.747,-31.631,-31.712,-31.883,-32.061,-32.229,-32.360,-32.355,-32.084,-31.535,-30.870,
--30.292,-29.845,-29.397,-28.835,-28.215,-27.661,-27.170,-26.603,-25.888,-25.132,-24.472,-23.860,-23.087,-22.023,-20.778,-19.592,
--18.616,-17.810,-17.029,-16.159,-15.199,-14.240,-13.373,-12.607,-11.871,-11.108,-10.342,-9.604,-8.825,-7.863,-6.676,-5.417,
--4.313,-3.456,-2.739,-1.968,-1.009,.139,1.353,2.473,3.456,4.444,5.597,6.853,7.961,8.835,9.730,10.902,
-12.157,13.009,13.353,13.709,14.562,15.642,16.255,16.378,16.972,18.855,21.412,22.886,22.124,19.813,17.829,17.515,
-18.761,20.578,22.175,23.379,24.327,25.105,25.715,26.161,26.445,26.540,26.454,26.303,26.265,26.453,26.821,27.145,
-27.126,26.577,25.633,24.757,24.454,24.933,26.013,27.356,28.721,30.024,31.233,32.300,33.169,33.823,34.311,34.763,
-35.357,36.185,37.105,37.768,37.861,37.359,36.555,35.839,35.452,35.396,35.548,35.808,36.167,36.623,37.083,37.392,
-37.474,37.411,37.353,37.388,37.547,37.903,38.536,39.375,40.163,40.702,41.068,41.503,42.102,42.732,43.267,43.752,
-44.252,44.672,44.887,44.991,45.220,45.619,45.989,46.249,46.625,47.244,47.689,47.307,46.030,44.595,43.641,42.766,
-40.821,37.276,33.076,30.002,29.251,30.687,33.247,35.779,37.546,38.330,38.370,38.141,37.956,37.706,37.111,36.220,
-35.492,35.264,35.291,35.004,34.223,33.394,33.022,33.005,32.722,31.786,30.556,29.802,29.922,30.562,30.971,30.659,
-29.707,28.569,27.658,27.102,26.806,26.642,26.544,26.439,26.174,25.607,24.799,24.045,23.639,23.573,23.533,23.181,
-22.449,21.532,20.680,20.015,19.513,19.066,18.570,17.998,17.427,16.951,16.556,16.122,15.566,14.963,14.469,14.167,
-14.010,13.896,13.698,13.280,12.585,11.784,11.202,10.984,10.905,10.637,10.187,9.892,9.931,10.014,9.733,9.107,
-8.559,8.340,8.208,7.781,7.063,6.392,5.957,5.578,5.037,4.416,3.977,3.796,3.701,3.526,3.277,3.007,
-2.683,2.285,1.932,1.774,1.765,1.686,1.412,1.053,.784,.615,.421,.150,-.113,-.284,-.398,-.539,
--.721,-.894,-1.040,-1.179,-1.298,-1.366,-1.413,-1.537,-1.767,-1.991,-2.084,-2.073,-2.112,-2.265,-2.429,-2.487,
--2.477,-2.521,-2.636,-2.719,-2.727,-2.755,-2.894,-3.077,-3.168,-3.159,-3.181,-3.302,-3.419,-3.406,-3.284,-3.172,
--3.109,-3.023,-2.873,-2.720,-2.622,-2.522,-2.330,-2.054,-1.794,-1.600,-1.430,-1.233,-1.020,-.821,-.642,-.496,
--.431,-.460,-.497,-.445,-.321,-.218,-.147,.000,.273,.532,.609,.552,.611,.936,1.370,1.610,
-1.558,1.431,1.545,1.989,2.550,2.921,2.978,2.877,2.856,2.972,3.079,3.079,3.117,3.406,3.874,4.174,
-4.183,4.373,5.437,7.475,9.733,11.304,12.031,12.501,13.138,13.534,12.866,10.944,8.600,6.959,6.413,6.416,
-6.217,5.615,4.972,4.652,4.628,4.631,4.510,4.336,4.226,4.198,4.206,4.231,4.258,4.230,4.102,3.929,
-3.827,3.840,3.881,3.841,3.714,3.582,3.500,3.455,3.414,3.381,3.368,3.371,3.375,3.372,3.349,3.269,
-3.099,2.858,2.597,2.343,2.072,1.751,1.377,.965,.516,.018,-.541,-1.157,-1.819,-2.495,-3.140,-3.733,
--4.299,-4.885,-5.491,-6.063,-6.563,-7.021,-7.492,-7.981,-8.439,-8.825,-9.163,-9.500,-9.853,-10.208,-10.551,-10.891,
--11.237,-11.583,-11.926,-12.278,-12.652,-13.040,-13.413,-13.745,-14.033,-14.300,-14.567,-14.843,-15.123,-15.409,-15.714,-16.042,
--16.378,-16.702,-17.019,-17.357,-17.728,-18.100,-18.429,-18.713,-18.997,-19.324,-19.694,-20.062,-20.392,-20.686,-20.988,-21.346,
--21.777,-22.248,-22.706,-23.127,-23.533,-23.959,-24.400,-24.814,-25.178,-25.526,-25.915,-26.360,-26.828,-27.272,-27.675,-28.047,
--28.419,-28.819,-29.262,-29.728,-30.177,-30.585,-30.969,-31.358,-31.761,-32.164,-32.558,-32.957,-33.374,-33.802,-34.230,-34.665,
--35.116,-35.569,-35.980,-36.318,-36.593,-36.857,-37.158,-37.511,-37.910,-38.344,-38.806,-39.277,-39.710,-40.046,-40.271,-40.443,
--40.655,-40.954,-41.311,-41.667,-41.995,-42.305,-42.608,-42.888,-43.136,-43.370,-43.619,-43.889,-44.166,-44.433,-44.678,-44.885,
--45.052,-45.203,-45.381,-45.609,-45.874,-46.145,-46.394,-46.592,-46.718,-46.780,-46.825,-46.903,-47.023,-47.154,-47.268,-47.348,
--47.360,-47.263,-47.069,-46.876,-46.786,-46.804,-46.843,-46.832,-46.783,-46.736,-46.669,-46.521,-46.277,-45.994,-45.726,-45.478,
--45.237,-45.021,-44.848,-44.665,-44.379,-43.962,-43.523,-43.208,-43.048,-42.922,-42.687,-42.315,-41.898,-41.541,-41.289,-41.135,
--41.028,-40.820,-40.273,-39.246,-37.925,-36.776,-36.164,-35.997,-35.822,-35.293,-34.518,-33.894,-33.674,-33.772,-33.935,-34.000,
--33.926,-33.680,-33.216,-32.549,-31.779,-30.999,-30.227,-29.450,-28.663,-27.827,-26.829,-25.567,-24.102,-22.666,-21.501,-20.711,
--20.257,-20.040,-19.935,-19.785,-19.460,-18.966,-18.456,-18.101,-17.929,-17.822,-17.646,-17.350,-16.953,-16.488,-15.997,-15.570,
--15.297,-15.148,-14.938,-14.524,-14.064,-14.001,-14.678,-15.923,-17.127,-17.794,-18.014,-18.331,-19.145,-20.314,-21.345,-21.912,
--22.133,-22.400,-23.040,-24.128,-25.526,-27.017,-28.419,-29.646,-30.689,-31.535,-32.127,-32.412,-32.406,-32.184,-31.804,-31.283,
--30.655,-30.000,-29.393,-28.859,-28.411,-28.106,-28.004,-28.069,-28.170,-28.192,-28.128,-28.028,-27.932,-27.867,-27.891,-28.053,
--28.302,-28.460,-28.319,-27.748,-26.774,-25.627,-24.709,-24.371,-24.614,-25.031,-25.168,-24.949,-24.675,-24.600,-24.653,-24.683,
--24.840,-25.449,-26.467,-27.264,-27.133,-26.016,-24.574,-23.549,-23.167,-23.186,-23.332,-23.527,-23.743,-23.869,-23.838,-23.772,
--23.880,-24.231,-24.718,-25.261,-25.921,-26.761,-27.647,-28.275,-28.417,-28.092,-27.548,-27.134,-27.180,-27.858,-29.032,-30.275,
--31.161,-31.626,-32.022,-32.745,-33.849,-35.089,-36.295,-37.591,-39.146,-40.809,-42.135,-42.819,-43.032,-43.227,-43.674,-44.272,
--44.804,-45.256,-45.798,-46.511,-47.269,-47.915,-48.453,-49.002,-49.600,-50.153,-50.571,-50.896,-51.227,-51.582,-51.879,-52.065,
--52.184,-52.303,-52.413,-52.437,-52.335,-52.161,-51.991,-51.851,-51.710,-51.553,-51.405,-51.290,-51.190,-51.078,-50.980,-50.973,
--51.112,-51.345,-51.549,-51.639,-51.655,-51.711,-51.870,-52.071,-52.206,-52.234,-52.217,-52.226,-52.254,-52.232,-52.117,-51.930,
--51.704,-51.431,-51.101,-50.752,-50.456,-50.223,-49.972,-49.624,-49.210,-48.838,-48.556,-48.302,-47.993,-47.638,-47.303,-46.993,
--46.620,-46.126,-45.576,-45.087,-44.687,-44.283,-43.774,-43.163,-42.526,-41.906,-41.276,-40.598,-39.889,-39.193,-38.530,-37.877,
--37.216,-36.561,-35.940,-35.343,-34.712,-33.994,-33.199,-32.397,-31.645,-30.928,-30.198,-29.437,-28.677,-27.937,-27.186,-26.381,
--25.528,-24.663,-23.777,-22.825,-21.817,-20.843,-19.953,-19.050,-17.979,-16.741,-15.541,-14.577,-13.821,-13.088,-12.284,-11.496,
--10.835,-10.256,-9.631,-8.937,-8.288,-7.765,-7.311,-6.828,-6.326,-5.882,-5.501,-5.086,-4.581,-4.059,-3.622,-3.258,
--2.863,-2.392,-1.914,-1.503,-1.136,-.730,-.263,.218,.682,1.144,1.619,2.061,2.426,2.741,3.090,3.513,
-3.972,4.408,4.816,5.234,5.677,6.126,6.553,6.958,7.360,7.781,8.241,8.747,9.282,9.803,10.277,10.714,
-11.151,11.611,12.081,12.539,12.984,13.445,13.959,14.537,15.142,15.712,16.204,16.623,17.006,17.364,17.667,17.899,
-18.094,18.314,18.574,18.835,19.064,19.279,19.512,19.751,19.951,20.101,20.232,20.371,20.509,20.635,20.773,20.954,
-21.178,21.422,21.695,22.021,22.389,22.741,23.046,23.345,23.686,24.043,24.343,24.578,24.825,25.145,25.515,25.884,
-26.267,26.723,27.251,27.767,28.221,28.676,29.239,29.924,30.626,31.231,31.699,32.048,32.273,32.331,32.185,31.888,
-31.606,31.573,31.951,32.684,33.482,34.006,34.110,33.954,33.876,34.165,34.897,35.941,37.063,38.054,38.800,39.266,
-39.452,39.394,39.206,39.058,39.049,39.124,39.133,39.002,38.787,38.563,38.321,38.011,37.654,37.318,37.003,36.618,
-36.105,35.526,34.989,34.531,34.121,33.736,33.358,32.918,32.344,31.694,31.169,30.903,30.796,30.619,30.293,29.967,
-29.801,29.748,29.621,29.321,28.927,28.569,28.282,28.007,27.701,27.393,27.137,26.958,26.844,26.781,26.786,26.897,
-27.127,27.417,27.663,27.807,27.911,28.090,28.399,28.834,29.217,29.566,29.859,30.133,30.414,30.669,30.842,30.927,
-30.995,31.161,31.517,32.052,32.632,33.082,33.353,33.591,34.025,34.728,35.524,36.130,36.411,36.483,36.565,36.764,
-37.000,37.118,37.031,36.748,36.320,35.825,35.386,35.144,35.131,35.213,35.187,34.963,34.614,34.249,33.892,33.483,
-32.966,32.319,31.552,30.721,29.949,29.346,28.896,28.468,27.971,27.458,27.031,26.691,26.356,26.014,25.752,25.627,
-25.571,25.506,25.470,25.576,25.837,26.144,26.414,26.675,26.966,27.218,27.308,27.191,26.921,26.555,26.116,25.666,
-25.326,25.156,25.059,24.847,24.414,23.787,23.044,22.238,21.426,20.708,20.164,19.763,19.373,18.878,18.273,17.646,
-17.079,16.582,16.111,15.649,15.245,14.961,14.788,14.642,14.483,14.403,14.535,14.856,15.131,15.099,14.710,14.149,
-13.664,13.397,13.359,13.478,13.633,13.684,13.571,13.368,13.216,13.173,13.174,13.128,13.014,12.870,12.722,12.566,
-12.409,12.278,12.180,12.093,12.003,11.918,11.834,11.694,11.441,11.088,10.734,10.516,10.534,10.817,11.295,11.805,
-12.158,12.242,12.079,11.744,11.262,10.604,9.799,9.020,8.489,8.265,8.149,7.878,7.443,7.195,7.562,8.577,
-9.737,10.350,10.085,9.203,8.285,7.780,7.763,8.016,8.252,8.312,8.229,8.140,8.096,7.968,7.588,6.970,
-6.322,5.787,5.276,4.623,3.843,3.104,2.443,1.675,.659,-.458,-1.420,-2.202,-3.011,-3.936,-4.787,-5.401,
--5.979,-6.945,-8.461,-10.252,-11.949,-13.496,-15.122,-16.978,-18.933,-20.733,-22.260,-23.575,-24.774,-25.877,-26.858,-27.736,
--28.569,-29.373,-30.072,-30.583,-30.958,-31.369,-31.911,-32.459,-32.797,-32.888,-32.912,-33.024,-33.175,-33.253,-33.307,-33.453,
--33.607,-33.527,-33.177,-32.838,-32.652,-32.191,-30.818,-28.564,-26.401,-25.442,-25.919,-27.120,-28.245,-29.104,-29.976,-31.072,
--32.323,-33.588,-34.786,-35.808,-36.487,-36.759,-36.786,-36.814,-36.963,-37.207,-37.527,-37.954,-38.483,-39.053,-39.635,-40.291,
--41.063,-41.876,-42.624,-43.321,-44.087,-44.958,-45.793,-46.426,-46.857,-47.217,-47.514,-47.520,-46.985,-45.971,-44.925,-44.343,
--44.361,-44.684,-44.924,-44.958,-44.961,-45.133,-45.482,-45.882,-46.262,-46.655,-47.082,-47.466,-47.682,-47.679,-47.521,-47.343,
--47.292,-47.475,-47.903,-48.463,-48.988,-49.362,-49.578,-49.699,-49.811,-49.985,-50.245,-50.530,-50.731,-50.832,-50.979,-51.362,
--52.005,-52.715,-53.262,-53.585,-53.785,-53.962,-54.119,-54.221,-54.277,-54.346,-54.476,-54.687,-54.977,-55.327,-55.705,-56.088,
--56.481,-56.896,-57.311,-57.690,-58.014,-58.281,-58.471,-58.571,-58.629,-58.737,-58.921,-59.073,-59.067,-58.923,-58.814,-58.888,
--59.134,-59.437,-59.695,-59.852,-59.860,-59.696,-59.425,-59.161,-58.948,-58.701,-58.321,-57.834,-57.384,-57.101,-57.007,-57.018,
--56.998,-56.810,-56.397,-55.861,-55.446,-55.373,-55.651,-56.052,-56.285,-56.216,-55.948,-55.702,-55.608,-55.595,-55.503,-55.286,
--55.084,-55.053,-55.179,-55.309,-55.373,-55.473,-55.708,-55.989,-56.074,-55.760,-54.978,-53.776,-52.344,-51.074,-50.405,-50.457,
--50.870,-51.128,-51.018,-50.672,-50.223,-49.627,-48.903,-48.311,-48.053,-47.865,-47.202,-45.906,-44.483,-43.534,-43.058,-42.551,
--41.743,-40.951,-40.591,-40.567,-40.402,-39.873,-39.250,-38.855,-38.612,-38.212,-37.598,-37.051,-36.781,-36.623,-36.239,-35.529,
--34.711,-34.036,-33.542,-33.113,-32.667,-32.241,-31.919,-31.750,-31.731,-31.809,-31.925,-32.044,-32.150,-32.173,-31.977,-31.492,
--30.836,-30.238,-29.797,-29.373,-28.793,-28.087,-27.437,-26.913,-26.365,-25.652,-24.845,-24.123,-23.492,-22.736,-21.686,-20.445,
--19.290,-18.380,-17.628,-16.842,-15.935,-14.973,-14.068,-13.270,-12.532,-11.777,-10.985,-10.196,-9.434,-8.614,-7.603,-6.382,
--5.118,-4.023,-3.155,-2.376,-1.508,-.481,.636,1.728,2.735,3.708,4.767,5.935,7.051,7.942,8.719,9.751,
-11.186,12.615,13.455,13.719,14.101,15.099,16.289,16.888,17.012,17.853,20.209,23.087,24.297,22.626,19.172,16.333,
-15.666,16.906,18.820,20.529,21.889,23.002,23.824,24.269,24.417,24.463,24.564,24.820,25.315,26.056,26.875,27.459,
-27.534,27.020,26.097,25.173,24.734,25.088,26.157,27.546,28.860,29.962,30.941,31.903,32.843,33.688,34.357,34.810,
-35.103,35.415,35.954,36.733,37.485,37.858,37.726,37.291,36.868,36.617,36.482,36.354,36.239,36.250,36.460,36.806,
-37.140,37.366,37.505,37.614,37.719,37.853,38.139,38.715,39.543,40.367,40.954,41.335,41.743,42.305,42.918,43.447,
-43.913,44.400,44.860,45.167,45.339,45.547,45.868,46.175,46.391,46.687,47.225,47.736,47.634,46.668,45.275,44.068,
-42.984,41.214,38.091,33.999,30.300,28.388,28.780,30.930,33.686,35.949,37.171,37.504,37.497,37.544,37.561,37.232,
-36.511,35.777,35.405,35.323,35.107,34.529,33.839,33.419,33.249,32.894,32.045,30.982,30.380,30.663,31.577,32.378,
-32.407,31.519,30.086,28.683,27.736,27.333,27.257,27.178,26.846,26.199,25.361,24.578,24.104,24.047,24.258,24.375,
-24.055,23.229,22.158,21.218,20.609,20.230,19.827,19.262,18.650,18.207,17.979,17.751,17.269,16.515,15.710,15.074,
-14.673,14.499,14.556,14.710,14.587,13.861,12.712,11.806,11.614,11.860,11.836,11.258,10.560,10.265,10.299,10.162,
-9.646,9.073,8.769,8.582,8.141,7.416,6.757,6.379,6.086,5.593,4.953,4.473,4.281,4.183,3.950,3.582,
-3.211,2.892,2.597,2.360,2.257,2.255,2.184,1.932,1.577,1.270,1.039,.795,.507,.269,.158,.115,
-.010,-.195,-.426,-.607,-.727,-.805,-.862,-.940,-1.105,-1.346,-1.536,-1.560,-1.481,-1.496,-1.690,-1.917,
--1.984,-1.899,-1.856,-1.966,-2.131,-2.214,-2.233,-2.300,-2.423,-2.495,-2.489,-2.530,-2.721,-2.973,-3.099,-3.044,
--2.926,-2.851,-2.798,-2.706,-2.588,-2.490,-2.386,-2.210,-1.971,-1.747,-1.572,-1.394,-1.166,-.920,-.712,-.547,
--.413,-.342,-.356,-.387,-.333,-.191,-.050,.063,.250,.572,.899,1.041,.996,.981,1.167,1.487,
-1.754,1.900,2.018,2.197,2.419,2.623,2.809,3.018,3.253,3.453,3.543,3.495,3.372,3.316,3.453,3.755,
-4.061,4.305,4.698,5.559,6.893,8.260,9.195,9.749,10.461,11.699,13.113,13.888,13.556,12.453,11.307,10.488,
-9.767,8.810,7.709,6.887,6.543,6.383,5.977,5.267,4.602,4.287,4.266,4.268,4.170,4.079,4.116,4.243,
-4.346,4.379,4.360,4.283,4.109,3.857,3.630,3.515,3.505,3.536,3.565,3.595,3.633,3.677,3.713,3.712,
-3.621,3.413,3.129,2.865,2.677,2.523,2.311,1.996,1.601,1.170,.715,.213,-.365,-1.023,-1.730,-2.429,
--3.082,-3.694,-4.311,-4.956,-5.604,-6.212,-6.765,-7.283,-7.778,-8.232,-8.622,-8.958,-9.276,-9.607,-9.954,-10.299,
--10.632,-10.960,-11.297,-11.654,-12.030,-12.419,-12.810,-13.189,-13.534,-13.832,-14.097,-14.362,-14.653,-14.967,-15.293,-15.628,
--15.971,-16.307,-16.620,-16.924,-17.266,-17.666,-18.086,-18.465,-18.784,-19.082,-19.405,-19.757,-20.107,-20.425,-20.715,-21.009,
--21.347,-21.745,-22.175,-22.590,-22.970,-23.343,-23.749,-24.187,-24.623,-25.035,-25.438,-25.859,-26.297,-26.733,-27.157,-27.570,
--27.968,-28.351,-28.748,-29.190,-29.666,-30.125,-30.529,-30.896,-31.271,-31.670,-32.081,-32.503,-32.950,-33.424,-33.893,-34.331,
--34.756,-35.192,-35.620,-35.984,-36.252,-36.461,-36.692,-37.001,-37.393,-37.835,-38.292,-38.740,-39.165,-39.546,-39.855,-40.093,
--40.311,-40.582,-40.933,-41.321,-41.682,-41.994,-42.284,-42.568,-42.829,-43.058,-43.284,-43.539,-43.822,-44.099,-44.350,-44.581,
--44.798,-44.997,-45.188,-45.402,-45.653,-45.922,-46.173,-46.396,-46.589,-46.742,-46.836,-46.887,-46.943,-47.034,-47.148,-47.247,
--47.306,-47.310,-47.249,-47.133,-47.015,-46.956,-46.964,-46.992,-46.991,-46.953,-46.892,-46.796,-46.639,-46.415,-46.146,-45.859,
--45.568,-45.303,-45.104,-44.974,-44.849,-44.642,-44.332,-43.986,-43.678,-43.404,-43.092,-42.700,-42.283,-41.935,-41.681,-41.463,
--41.233,-41.015,-40.815,-40.482,-39.769,-38.609,-37.304,-36.337,-35.928,-35.829,-35.589,-34.990,-34.203,-33.559,-33.255,-33.273,
--33.467,-33.645,-33.614,-33.264,-32.633,-31.864,-31.074,-30.303,-29.556,-28.829,-28.051,-27.064,-25.768,-24.262,-22.811,-21.631,
--20.758,-20.139,-19.755,-19.589,-19.511,-19.297,-18.831,-18.232,-17.740,-17.468,-17.324,-17.148,-16.881,-16.562,-16.207,-15.777,
--15.286,-14.872,-14.662,-14.581,-14.384,-13.983,-13.683,-13.979,-15.043,-16.467,-17.606,-18.178,-18.471,-18.971,-19.853,-20.870,
--21.686,-22.213,-22.662,-23.330,-24.373,-25.722,-27.155,-28.460,-29.555,-30.473,-31.242,-31.804,-32.073,-32.037,-31.762,-31.314,
--30.723,-30.038,-29.360,-28.789,-28.366,-28.101,-28.016,-28.109,-28.297,-28.448,-28.488,-28.440,-28.349,-28.240,-28.152,-28.157,
--28.242,-28.221,-27.833,-26.968,-25.761,-24.474,-23.365,-22.676,-22.591,-23.059,-23.695,-24.041,-23.996,-23.908,-24.131,-24.617,
--25.042,-25.305,-25.670,-26.334,-26.999,-27.076,-26.325,-25.144,-24.184,-23.771,-23.771,-23.914,-24.084,-24.278,-24.465,-24.593,
--24.697,-24.889,-25.214,-25.585,-25.908,-26.213,-26.603,-27.087,-27.517,-27.689,-27.517,-27.102,-26.690,-26.573,-26.973,-27.908,
--29.151,-30.355,-31.289,-31.983,-32.635,-33.400,-34.306,-35.349,-36.583,-38.028,-39.526,-40.782,-41.617,-42.150,-42.659,-43.287,
--43.939,-44.476,-44.925,-45.443,-46.100,-46.800,-47.419,-47.960,-48.514,-49.111,-49.683,-50.163,-50.568,-50.943,-51.279,-51.528,
--51.696,-51.855,-52.066,-52.290,-52.436,-52.447,-52.345,-52.193,-52.036,-51.892,-51.770,-51.665,-51.564,-51.446,-51.320,-51.229,
--51.230,-51.345,-51.538,-51.728,-51.849,-51.899,-51.949,-52.070,-52.259,-52.429,-52.496,-52.456,-52.383,-52.340,-52.314,-52.244,
--52.097,-51.881,-51.612,-51.295,-50.956,-50.647,-50.386,-50.125,-49.793,-49.392,-49.001,-48.675,-48.379,-48.047,-47.683,-47.348,
--47.050,-46.710,-46.260,-45.740,-45.251,-44.821,-44.377,-43.843,-43.235,-42.616,-42.007,-41.367,-40.673,-39.957,-39.269,-38.618,
--37.977,-37.333,-36.709,-36.127,-35.568,-34.969,-34.276,-33.495,-32.695,-31.941,-31.227,-30.498,-29.722,-28.937,-28.194,-27.483,
--26.745,-25.948,-25.111,-24.244,-23.319,-22.328,-21.343,-20.434,-19.551,-18.557,-17.412,-16.260,-15.276,-14.447,-13.616,-12.717,
--11.893,-11.303,-10.892,-10.430,-9.779,-9.041,-8.400,-7.908,-7.470,-7.006,-6.535,-6.095,-5.665,-5.200,-4.719,-4.285,
--3.911,-3.542,-3.129,-2.682,-2.234,-1.788,-1.333,-.883,-.459,-.043,.412,.899,1.347,1.700,1.999,2.340,
-2.769,3.238,3.686,4.112,4.555,5.027,5.493,5.920,6.322,6.741,7.207,7.726,8.279,8.836,9.363,9.844,
-10.298,10.764,11.262,11.774,12.269,12.740,13.219,13.752,14.351,14.968,15.522,15.971,16.344,16.699,17.053,17.365,
-17.605,17.808,18.035,18.298,18.546,18.740,18.906,19.091,19.302,19.502,19.676,19.842,20.019,20.203,20.390,20.602,
-20.856,21.138,21.422,21.716,22.047,22.403,22.731,23.011,23.280,23.577,23.881,24.148,24.393,24.674,24.996,25.297,
-25.550,25.845,26.295,26.873,27.425,27.843,28.192,28.624,29.199,29.839,30.436,30.951,31.383,31.699,31.834,31.778,
-31.645,31.639,31.944,32.591,33.407,34.101,34.452,34.464,34.369,34.482,35.027,36.013,37.221,38.325,39.082,39.457,
-39.568,39.531,39.383,39.158,38.957,38.869,38.850,38.771,38.591,38.408,38.305,38.210,37.979,37.584,37.128,36.686,
-36.220,35.675,35.082,34.515,34.007,33.567,33.230,32.977,32.662,32.119,31.413,30.850,30.656,30.698,30.628,30.292,
-29.866,29.577,29.410,29.173,28.777,28.340,28.004,27.768,27.530,27.239,26.938,26.693,26.529,26.449,26.455,26.561,
-26.779,27.098,27.467,27.804,28.056,28.256,28.498,28.834,29.163,29.536,29.896,30.229,30.563,30.907,31.223,31.456,
-31.603,31.727,31.915,32.222,32.620,33.009,33.293,33.470,33.658,34.007,34.567,35.224,35.793,36.165,36.397,36.638,
-36.965,37.281,37.383,37.133,36.582,35.917,35.328,34.930,34.752,34.749,34.795,34.724,34.439,33.980,33.479,33.039,
-32.656,32.244,31.719,31.063,30.358,29.719,29.198,28.721,28.185,27.593,27.067,26.697,26.433,26.174,25.926,25.784,
-25.774,25.800,25.785,25.790,25.918,26.157,26.403,26.614,26.850,27.131,27.354,27.402,27.281,27.077,26.818,26.473,
-26.077,25.754,25.565,25.398,25.083,24.562,23.910,23.195,22.411,21.560,20.737,20.062,19.548,19.089,18.567,17.959,
-17.340,16.783,16.290,15.813,15.334,14.923,14.668,14.561,14.486,14.368,14.298,14.433,14.763,15.051,15.056,14.773,
-14.414,14.155,13.993,13.843,13.690,13.583,13.528,13.471,13.379,13.283,13.219,13.169,13.082,12.935,12.736,12.501,
-12.255,12.035,11.876,11.770,11.684,11.609,11.567,11.552,11.500,11.329,11.025,10.657,10.353,10.248,10.423,10.831,
-11.289,11.595,11.674,11.595,11.416,11.075,10.463,9.621,8.790,8.224,7.958,7.788,7.500,7.108,6.870,7.052,
-7.658,8.384,8.833,8.800,8.391,7.909,7.640,7.682,7.916,8.105,8.088,7.922,7.785,7.729,7.556,7.034,
-6.216,5.421,4.872,4.452,3.911,3.229,2.610,2.132,1.592,.791,-.175,-1.058,-1.827,-2.682,-3.703,-4.681,
--5.438,-6.173,-7.297,-8.937,-10.780,-12.459,-13.970,-15.597,-17.502,-19.522,-21.364,-22.885,-24.150,-25.285,-26.347,-27.330,
--28.219,-29.018,-29.727,-30.325,-30.803,-31.206,-31.630,-32.113,-32.567,-32.864,-32.986,-33.048,-33.131,-33.188,-33.159,-33.118,
--33.170,-33.248,-33.161,-32.893,-32.679,-32.636,-32.421,-31.496,-29.779,-27.883,-26.603,-26.260,-26.614,-27.294,-28.109,-28.998,
--29.918,-30.930,-32.224,-33.888,-35.644,-36.980,-37.586,-37.613,-37.495,-37.573,-37.932,-38.490,-39.131,-39.773,-40.401,-41.073,
--41.852,-42.721,-43.574,-44.319,-44.948,-45.489,-45.942,-46.299,-46.617,-47.004,-47.494,-47.948,-48.091,-47.710,-46.845,-45.829,
--45.091,-44.865,-45.050,-45.362,-45.599,-45.764,-45.944,-46.182,-46.474,-46.834,-47.265,-47.685,-47.965,-48.070,-48.099,-48.162,
--48.264,-48.372,-48.534,-48.860,-49.365,-49.914,-50.347,-50.626,-50.827,-51.025,-51.243,-51.480,-51.727,-51.954,-52.141,-52.321,
--52.574,-52.935,-53.356,-53.760,-54.114,-54.404,-54.588,-54.620,-54.535,-54.441,-54.434,-54.544,-54.774,-55.127,-55.567,-55.997,
--56.334,-56.595,-56.876,-57.228,-57.613,-57.964,-58.239,-58.407,-58.451,-58.430,-58.494,-58.735,-59.045,-59.190,-59.066,-58.818,
--58.692,-58.788,-59.011,-59.205,-59.265,-59.150,-58.864,-58.481,-58.115,-57.827,-57.565,-57.244,-56.866,-56.534,-56.353,-56.335,
--56.403,-56.426,-56.280,-55.925,-55.490,-55.235,-55.361,-55.812,-56.283,-56.450,-56.234,-55.843,-55.577,-55.556,-55.645,-55.623,
--55.421,-55.165,-54.989,-54.880,-54.755,-54.636,-54.643,-54.789,-54.879,-54.681,-54.126,-53.294,-52.276,-51.205,-50.377,-50.141,
--50.532,-51.117,-51.364,-51.130,-50.659,-50.166,-49.626,-49.026,-48.554,-48.325,-48.042,-47.231,-45.874,-44.544,-43.757,-43.367,
--42.816,-41.912,-41.066,-40.684,-40.611,-40.365,-39.790,-39.194,-38.851,-38.617,-38.187,-37.562,-37.042,-36.788,-36.602,-36.191,
--35.525,-34.813,-34.212,-33.693,-33.170,-32.649,-32.205,-31.885,-31.687,-31.600,-31.603,-31.651,-31.709,-31.770,-31.794,-31.664,
--31.280,-30.711,-30.156,-29.716,-29.273,-28.662,-27.922,-27.248,-26.711,-26.146,-25.388,-24.517,-23.742,-23.090,-22.349,-21.344,
--20.179,-19.113,-18.260,-17.494,-16.648,-15.714,-14.808,-14.003,-13.258,-12.490,-11.664,-10.813,-9.984,-9.167,-8.281,-7.244,
--6.069,-4.885,-3.818,-2.866,-1.912,-.868,.222,1.242,2.145,3.008,3.962,5.042,6.108,6.957,7.595,8.376,
-9.712,11.533,13.166,13.978,14.150,14.532,15.601,16.828,17.438,17.682,18.806,21.428,24.261,25.003,22.649,18.616,
-15.414,14.429,15.183,16.460,17.619,18.728,19.877,20.850,21.432,21.719,22.007,22.526,23.365,24.514,25.795,26.828,
-27.221,26.874,26.082,25.337,25.055,25.435,26.412,27.696,28.926,29.906,30.706,31.516,32.413,33.318,34.118,34.740,
-35.144,35.335,35.449,35.721,36.256,36.877,37.270,37.316,37.200,37.180,37.297,37.370,37.244,36.967,36.729,36.679,
-36.824,37.082,37.375,37.660,37.911,38.108,38.290,38.587,39.137,39.920,40.725,41.330,41.722,42.085,42.573,43.155,
-43.715,44.214,44.690,45.126,45.447,45.657,45.863,46.124,46.357,46.499,46.695,47.135,47.685,47.828,47.136,45.743,
-44.197,42.782,41.107,38.503,34.846,30.965,28.187,27.455,28.743,31.166,33.593,35.279,36.126,36.478,36.686,36.818,
-36.730,36.363,35.898,35.583,35.440,35.244,34.818,34.280,33.908,33.757,33.524,32.875,31.894,31.110,31.049,31.741,
-32.656,33.073,32.564,31.250,29.701,28.559,28.104,28.087,27.976,27.424,26.508,25.571,24.881,24.491,24.334,24.326,
-24.308,24.024,23.308,22.316,21.467,21.046,20.887,20.563,19.893,19.184,18.889,19.049,19.196,18.844,17.973,16.960,
-16.134,15.576,15.321,15.476,15.933,16.121,15.427,13.962,12.652,12.316,12.738,12.918,12.250,11.178,10.551,10.585,
-10.729,10.458,9.853,9.293,8.880,8.412,7.811,7.267,6.903,6.554,6.008,5.355,4.888,4.711,4.607,4.323,
-3.868,3.435,3.143,2.960,2.834,2.769,2.751,2.688,2.493,2.184,1.842,1.506,1.167,.855,.658,.610,
-.612,.516,.282,.009,-.185,-.283,-.345,-.434,-.577,-.770,-.969,-1.081,-1.047,-.942,-.937,-1.101,
--1.292,-1.324,-1.216,-1.190,-1.388,-1.691,-1.870,-1.870,-1.827,-1.845,-1.876,-1.863,-1.893,-2.084,-2.391,-2.620,
--2.659,-2.586,-2.530,-2.515,-2.487,-2.427,-2.359,-2.271,-2.130,-1.958,-1.820,-1.714,-1.554,-1.290,-.983,-.721,
--.509,-.315,-.165,-.109,-.108,-.045,.119,.302,.444,.622,.923,1.276,1.504,1.553,1.547,1.623,
-1.778,1.959,2.184,2.504,2.856,3.104,3.216,3.320,3.522,3.772,3.945,4.026,4.110,4.249,4.380,4.436,
-4.451,4.525,4.723,5.065,5.560,6.162,6.715,7.067,7.289,7.739,8.786,10.432,12.246,13.698,14.498,14.613,
-14.056,12.868,11.342,10.081,9.571,9.638,9.503,8.534,6.925,5.497,4.836,4.768,4.725,4.466,4.265,4.430,
-4.865,5.185,5.147,4.835,4.462,4.144,3.893,3.719,3.643,3.648,3.676,3.691,3.695,3.703,3.720,3.744,
-3.761,3.728,3.597,3.381,3.157,2.990,2.856,2.674,2.397,2.052,1.686,1.306,.876,.360,-.250,-.939,
--1.675,-2.417,-3.132,-3.823,-4.510,-5.207,-5.894,-6.530,-7.092,-7.585,-8.024,-8.415,-8.762,-9.079,-9.398,-9.736,
--10.080,-10.406,-10.714,-11.036,-11.397,-11.787,-12.175,-12.548,-12.914,-13.269,-13.595,-13.891,-14.188,-14.520,-14.883,-15.253,
--15.614,-15.967,-16.309,-16.629,-16.947,-17.307,-17.732,-18.184,-18.593,-18.935,-19.245,-19.567,-19.908,-20.241,-20.539,-20.805,
--21.068,-21.371,-21.731,-22.123,-22.500,-22.842,-23.183,-23.570,-24.007,-24.460,-24.907,-25.353,-25.804,-26.248,-26.680,-27.119,
--27.573,-28.015,-28.420,-28.813,-29.244,-29.711,-30.152,-30.524,-30.863,-31.236,-31.663,-32.115,-32.571,-33.044,-33.538,-34.022,
--34.462,-34.863,-35.247,-35.602,-35.894,-36.117,-36.316,-36.549,-36.854,-37.233,-37.672,-38.135,-38.584,-38.993,-39.359,-39.690,
--39.994,-40.293,-40.617,-40.978,-41.341,-41.664,-41.942,-42.208,-42.477,-42.732,-42.964,-43.203,-43.479,-43.773,-44.036,-44.254,
--44.462,-44.690,-44.936,-45.190,-45.458,-45.739,-46.002,-46.216,-46.390,-46.560,-46.730,-46.865,-46.946,-47.001,-47.069,-47.149,
--47.205,-47.215,-47.191,-47.161,-47.140,-47.133,-47.137,-47.139,-47.124,-47.085,-47.029,-46.952,-46.837,-46.669,-46.459,-46.222,
--45.956,-45.665,-45.386,-45.178,-45.061,-44.982,-44.856,-44.635,-44.336,-43.996,-43.623,-43.199,-42.729,-42.287,-41.965,-41.773,
--41.608,-41.357,-41.035,-40.754,-40.513,-40.091,-39.243,-38.030,-36.864,-36.156,-35.924,-35.791,-35.354,-34.530,-33.573,-32.852,
--32.610,-32.832,-33.242,-33.459,-33.243,-32.637,-31.866,-31.106,-30.387,-29.683,-28.991,-28.270,-27.386,-26.228,-24.870,-23.531,
--22.359,-21.331,-20.404,-19.679,-19.306,-19.240,-19.189,-18.873,-18.293,-17.694,-17.277,-17.018,-16.768,-16.457,-16.130,-15.812,
--15.427,-14.929,-14.447,-14.199,-14.209,-14.194,-13.857,-13.323,-13.160,-13.865,-15.327,-16.879,-17.905,-18.366,-18.718,-19.384,
--20.374,-21.382,-22.159,-22.745,-23.399,-24.341,-25.572,-26.898,-28.108,-29.127,-30.003,-30.765,-31.337,-31.605,-31.527,-31.164,
--30.608,-29.940,-29.250,-28.646,-28.209,-27.960,-27.887,-27.973,-28.171,-28.382,-28.511,-28.548,-28.536,-28.480,-28.340,-28.113,
--27.855,-27.534,-26.946,-25.882,-24.407,-22.889,-21.719,-21.060,-20.883,-21.121,-21.672,-22.289,-22.682,-22.812,-22.983,-23.510,
--24.328,-25.061,-25.477,-25.746,-26.143,-26.600,-26.715,-26.228,-25.362,-24.630,-24.360,-24.477,-24.716,-24.928,-25.133,-25.380,
--25.644,-25.884,-26.105,-26.315,-26.459,-26.459,-26.339,-26.255,-26.369,-26.683,-27.005,-27.112,-26.916,-26.540,-26.251,-26.351,
--27.047,-28.305,-29.794,-31.039,-31.758,-32.085,-32.464,-33.258,-34.474,-35.835,-37.080,-38.151,-39.141,-40.138,-41.153,-42.137,
--43.020,-43.737,-44.272,-44.697,-45.134,-45.667,-46.288,-46.933,-47.559,-48.153,-48.710,-49.231,-49.726,-50.202,-50.634,-50.971,
--51.199,-51.373,-51.565,-51.798,-52.034,-52.223,-52.343,-52.385,-52.340,-52.219,-52.066,-51.927,-51.809,-51.692,-51.572,-51.493,
--51.497,-51.579,-51.695,-51.807,-51.908,-51.996,-52.061,-52.112,-52.190,-52.333,-52.512,-52.640,-52.651,-52.569,-52.473,-52.401,
--52.322,-52.189,-51.996,-51.757,-51.476,-51.145,-50.791,-50.460,-50.164,-49.865,-49.531,-49.176,-48.833,-48.494,-48.128,-47.745,
--47.389,-47.067,-46.719,-46.286,-45.797,-45.322,-44.879,-44.410,-43.866,-43.276,-42.690,-42.102,-41.460,-40.745,-40.003,-39.292,
--38.631,-38.010,-37.420,-36.864,-36.330,-35.781,-35.175,-34.485,-33.720,-32.925,-32.157,-31.427,-30.697,-29.931,-29.150,-28.405,
--27.700,-26.977,-26.190,-25.357,-24.512,-23.639,-22.704,-21.744,-20.846,-20.022,-19.174,-18.214,-17.198,-16.249,-15.375,-14.467,
--13.490,-12.613,-12.035,-11.719,-11.376,-10.767,-9.944,-9.158,-8.570,-8.122,-7.671,-7.168,-6.667,-6.211,-5.783,-5.356,
--4.935,-4.537,-4.158,-3.772,-3.360,-2.916,-2.441,-1.957,-1.506,-1.109,-.733,-.316,.147,.597,.978,1.313,
-1.672,2.081,2.506,2.916,3.341,3.826,4.360,4.874,5.320,5.727,6.171,6.697,7.291,7.895,8.462,8.971,
-9.438,9.897,10.384,10.915,11.472,12.022,12.547,13.062,13.608,14.201,14.801,15.339,15.774,16.137,16.485,16.832,
-17.135,17.364,17.550,17.755,17.992,18.216,18.390,18.536,18.703,18.901,19.106,19.303,19.505,19.724,19.954,20.197,
-20.471,20.784,21.111,21.423,21.727,22.052,22.393,22.710,22.980,23.227,23.479,23.724,23.952,24.198,24.504,24.834,
-25.095,25.279,25.516,25.943,26.525,27.077,27.467,27.759,28.108,28.583,29.116,29.619,30.075,30.494,30.842,31.060,
-31.167,31.311,31.698,32.426,33.373,34.244,34.759,34.857,34.747,34.765,35.179,36.055,37.243,38.439,39.325,39.751,
-39.815,39.742,39.648,39.482,39.193,38.875,38.668,38.560,38.410,38.170,37.979,37.960,38.007,37.880,37.476,36.919,
-36.367,35.836,35.257,34.617,33.976,33.405,32.968,32.717,32.595,32.380,31.860,31.125,30.554,30.417,30.555,30.549,
-30.195,29.669,29.228,28.898,28.534,28.090,27.687,27.425,27.249,27.047,26.787,26.521,26.297,26.133,26.059,26.116,
-26.311,26.606,26.967,27.375,27.796,28.180,28.507,28.819,29.163,29.402,29.763,30.144,30.545,30.955,31.339,31.649,
-31.865,32.032,32.229,32.505,32.835,33.144,33.362,33.485,33.576,33.721,33.974,34.351,34.846,35.432,36.042,36.599,
-37.062,37.421,37.623,37.537,37.066,36.289,35.465,34.851,34.535,34.431,34.399,34.320,34.102,33.686,33.094,32.452,
-31.911,31.535,31.252,30.930,30.497,29.992,29.494,29.006,28.450,27.783,27.104,26.580,26.266,26.057,25.855,25.709,
-25.725,25.884,26.039,26.103,26.150,26.279,26.462,26.611,26.741,26.947,27.231,27.450,27.483,27.372,27.222,27.037,
-26.748,26.372,26.032,25.789,25.541,25.150,24.602,23.980,23.316,22.555,21.678,20.780,19.993,19.356,18.797,18.224,
-17.601,16.962,16.370,15.864,15.425,15.022,14.672,14.446,14.357,14.316,14.241,14.191,14.316,14.632,14.936,15.009,
-14.859,14.685,14.608,14.529,14.294,13.911,13.552,13.363,13.340,13.380,13.391,13.341,13.227,13.059,12.841,12.570,
-12.246,11.912,11.638,11.462,11.352,11.258,11.184,11.165,11.186,11.163,11.022,10.766,10.459,10.184,10.038,10.119,
-10.438,10.846,11.132,11.200,11.115,10.950,10.640,10.066,9.266,8.478,7.933,7.643,7.438,7.175,6.879,6.679,
-6.657,6.802,7.045,7.305,7.495,7.547,7.479,7.423,7.525,7.776,7.982,7.963,7.762,7.578,7.464,7.183,
-6.481,5.451,4.501,3.913,3.560,3.141,2.594,2.112,1.775,1.386,.747,-.067,-.862,-1.658,-2.656,-3.863,
--4.984,-5.816,-6.584,-7.725,-9.352,-11.144,-12.776,-14.302,-16.014,-18.017,-20.091,-21.942,-23.463,-24.735,-25.865,-26.907,
--27.865,-28.729,-29.474,-30.087,-30.588,-31.023,-31.438,-31.855,-32.262,-32.612,-32.854,-32.993,-33.083,-33.148,-33.147,-33.052,
--32.923,-32.834,-32.760,-32.616,-32.432,-32.366,-32.463,-32.466,-32.001,-30.941,-29.520,-28.118,-27.043,-26.504,-26.602,-27.185,
--27.841,-28.263,-28.673,-29.695,-31.678,-34.206,-36.375,-37.558,-37.839,-37.779,-37.884,-38.314,-38.955,-39.643,-40.323,-41.069,
--41.973,-43.006,-44.005,-44.801,-45.335,-45.634,-45.740,-45.738,-45.825,-46.229,-46.979,-47.813,-48.363,-48.428,-48.037,-47.335,
--46.490,-45.717,-45.251,-45.225,-45.562,-46.048,-46.476,-46.757,-46.924,-47.102,-47.417,-47.862,-48.271,-48.479,-48.531,-48.639,
--48.923,-49.259,-49.471,-49.589,-49.832,-50.318,-50.922,-51.428,-51.768,-52.026,-52.287,-52.555,-52.808,-53.048,-53.272,-53.454,
--53.588,-53.719,-53.889,-54.100,-54.342,-54.623,-54.915,-55.122,-55.147,-55.006,-54.828,-54.736,-54.783,-54.997,-55.411,-55.974,
--56.514,-56.868,-57.059,-57.274,-57.651,-58.134,-58.550,-58.764,-58.737,-58.523,-58.281,-58.250,-58.570,-59.106,-59.514,-59.555,
--59.313,-59.069,-58.999,-59.052,-59.065,-58.931,-58.628,-58.189,-57.691,-57.236,-56.886,-56.625,-56.400,-56.210,-56.099,-56.095,
--56.160,-56.218,-56.190,-56.013,-55.701,-55.398,-55.338,-55.651,-56.200,-56.633,-56.658,-56.287,-55.815,-55.559,-55.594,-55.727,
--55.723,-55.531,-55.281,-55.071,-54.853,-54.552,-54.250,-54.112,-54.137,-54.081,-53.695,-52.975,-52.108,-51.249,-50.497,-50.036,
--50.091,-50.624,-51.209,-51.379,-51.067,-50.570,-50.125,-49.700,-49.229,-48.809,-48.479,-47.962,-46.920,-45.482,-44.255,-43.654,
--43.412,-42.931,-42.047,-41.179,-40.717,-40.526,-40.199,-39.633,-39.104,-38.806,-38.572,-38.143,-37.555,-37.065,-36.771,-36.490,
--36.027,-35.427,-34.861,-34.379,-33.868,-33.258,-32.630,-32.115,-31.762,-31.538,-31.403,-31.335,-31.304,-31.286,-31.274,-31.245,
--31.111,-30.789,-30.320,-29.846,-29.439,-29.007,-28.437,-27.771,-27.152,-26.604,-25.968,-25.136,-24.220,-23.422,-22.748,-21.992,
--21.014,-19.933,-18.964,-18.152,-17.350,-16.450,-15.523,-14.690,-13.953,-13.193,-12.331,-11.401,-10.482,-9.599,-8.707,-7.750,
--6.716,-5.641,-4.581,-3.550,-2.497,-1.358,-.158,.973,1.904,2.659,3.418,4.339,5.373,6.277,6.896,7.439,
-8.415,10.137,12.252,13.913,14.587,14.664,15.054,16.122,17.294,17.942,18.461,19.971,22.741,25.281,25.492,22.781,
-18.747,15.644,14.427,14.440,14.704,14.987,15.606,16.632,17.709,18.531,19.165,19.872,20.813,22.010,23.412,24.807,
-25.798,26.063,25.711,25.256,25.220,25.781,26.785,27.950,29.031,29.891,30.565,31.228,32.025,32.919,33.745,34.396,
-34.886,35.233,35.412,35.477,35.609,35.945,36.382,36.679,36.760,36.816,37.061,37.460,37.768,37.804,37.614,37.376,
-37.236,37.252,37.417,37.675,37.937,38.133,38.276,38.467,38.829,39.420,40.182,40.957,41.584,42.020,42.372,42.791,
-43.333,43.932,44.494,44.975,45.366,45.664,45.890,46.099,46.317,46.491,46.587,46.725,47.101,47.689,48.064,47.682,
-46.394,44.604,42.817,41.048,38.786,35.636,31.958,28.799,27.161,27.323,28.792,30.766,32.607,34.003,34.906,35.425,
-35.729,35.920,36.001,35.962,35.860,35.760,35.617,35.326,34.916,34.589,34.478,34.388,33.938,32.997,31.922,31.305,
-31.459,32.133,32.689,32.541,31.567,30.208,29.147,28.746,28.749,28.576,27.955,27.173,26.664,26.440,26.106,25.408,
-24.560,23.927,23.517,23.013,22.288,21.659,21.470,21.553,21.351,20.612,19.776,19.512,19.919,20.381,20.231,19.408,
-18.355,17.440,16.715,16.222,16.182,16.619,16.960,16.426,14.952,13.457,12.924,13.284,13.503,12.815,11.595,10.836,
-10.961,11.419,11.424,10.792,9.926,9.224,8.736,8.341,7.978,7.612,7.150,6.541,5.914,5.482,5.283,5.126,
-4.810,4.344,3.900,3.609,3.462,3.383,3.322,3.263,3.177,3.017,2.759,2.421,2.045,1.682,1.391,1.216,
-1.143,1.085,.944,.702,.449,.285,.215,.147,.003,-.198,-.375,-.465,-.466,-.414,-.372,-.404,
--.517,-.626,-.638,-.597,-.675,-.970,-1.345,-1.564,-1.554,-1.463,-1.438,-1.452,-1.416,-1.368,-1.447,-1.684,
--1.939,-2.076,-2.108,-2.125,-2.158,-2.177,-2.168,-2.151,-2.115,-2.031,-1.924,-1.850,-1.797,-1.663,-1.399,-1.085,
--.821,-.592,-.329,-.054,.138,.237,.361,.585,.835,1.010,1.142,1.347,1.630,1.876,2.007,2.078,
-2.163,2.269,2.404,2.647,3.048,3.494,3.799,3.927,4.030,4.221,4.418,4.500,4.528,4.690,5.021,5.321,
-5.389,5.279,5.218,5.325,5.503,5.606,5.619,5.617,5.615,5.578,5.597,5.985,7.090,8.994,11.348,13.494,
-14.748,14.717,13.566,12.075,11.251,11.569,12.455,12.676,11.459,9.269,7.357,6.532,6.512,6.497,6.180,5.952,
-6.196,6.672,6.762,6.173,5.218,4.417,4.006,3.877,3.840,3.807,3.768,3.722,3.666,3.611,3.565,3.530,
-3.520,3.558,3.626,3.658,3.600,3.466,3.302,3.121,2.899,2.630,2.342,2.053,1.732,1.331,.839,.274,
--.356,-1.065,-1.847,-2.655,-3.430,-4.157,-4.866,-5.570,-6.241,-6.831,-7.332,-7.776,-8.188,-8.565,-8.904,-9.228,
--9.568,-9.916,-10.236,-10.523,-10.821,-11.174,-11.569,-11.956,-12.316,-12.673,-13.043,-13.409,-13.755,-14.102,-14.481,-14.887,
--15.281,-15.641,-15.981,-16.319,-16.660,-17.016,-17.410,-17.849,-18.294,-18.695,-19.040,-19.364,-19.700,-20.044,-20.368,-20.651,
--20.898,-21.135,-21.406,-21.737,-22.106,-22.464,-22.791,-23.119,-23.498,-23.929,-24.380,-24.834,-25.297,-25.765,-26.217,-26.652,
--27.103,-27.584,-28.051,-28.463,-28.843,-29.254,-29.699,-30.112,-30.452,-30.773,-31.166,-31.647,-32.157,-32.647,-33.120,-33.596,
--34.063,-34.494,-34.881,-35.221,-35.501,-35.722,-35.920,-36.143,-36.410,-36.713,-37.057,-37.466,-37.931,-38.401,-38.833,-39.228,
--39.613,-39.992,-40.348,-40.677,-40.994,-41.300,-41.581,-41.838,-42.094,-42.360,-42.622,-42.874,-43.142,-43.443,-43.745,-43.994,
--44.188,-44.381,-44.618,-44.893,-45.182,-45.478,-45.774,-46.031,-46.211,-46.336,-46.470,-46.646,-46.826,-46.962,-47.050,-47.119,
--47.179,-47.206,-47.188,-47.150,-47.137,-47.173,-47.241,-47.298,-47.298,-47.232,-47.135,-47.046,-46.964,-46.850,-46.679,-46.471,
--46.254,-46.030,-45.786,-45.534,-45.319,-45.172,-45.073,-44.957,-44.766,-44.478,-44.113,-43.710,-43.291,-42.860,-42.442,-42.101,
--41.879,-41.710,-41.459,-41.081,-40.697,-40.431,-40.181,-39.664,-38.732,-37.599,-36.680,-36.192,-35.956,-35.575,-34.782,-33.656,
--32.584,-32.015,-32.142,-32.718,-33.204,-33.183,-32.658,-31.933,-31.247,-30.606,-29.925,-29.201,-28.468,-27.668,-26.706,-25.606,
--24.508,-23.462,-22.358,-21.134,-19.986,-19.248,-19.013,-18.995,-18.797,-18.291,-17.674,-17.184,-16.850,-16.538,-16.167,-15.788,
--15.459,-15.119,-14.684,-14.227,-13.971,-14.009,-14.087,-13.805,-13.112,-12.532,-12.757,-13.970,-15.622,-16.939,-17.615,-17.999,
--18.623,-19.666,-20.856,-21.842,-22.547,-23.199,-24.058,-25.182,-26.420,-27.583,-28.593,-29.470,-30.221,-30.770,-31.011,-30.894,
--30.460,-29.815,-29.098,-28.453,-27.990,-27.734,-27.650,-27.697,-27.853,-28.074,-28.282,-28.419,-28.490,-28.501,-28.379,-28.020,
--27.409,-26.630,-25.709,-24.527,-23.000,-21.323,-19.941,-19.215,-19.151,-19.489,-19.976,-20.499,-21.001,-21.419,-21.769,-22.192,
--22.811,-23.548,-24.177,-24.591,-24.920,-25.345,-25.813,-26.045,-25.845,-25.354,-24.951,-24.901,-25.159,-25.487,-25.730,-25.923,
--26.168,-26.466,-26.717,-26.837,-26.819,-26.674,-26.382,-25.972,-25.620,-25.567,-25.899,-26.419,-26.789,-26.787,-26.439,-25.973,
--25.729,-26.066,-27.166,-28.792,-30.302,-31.106,-31.205,-31.218,-31.780,-32.950,-34.260,-35.309,-36.182,-37.261,-38.723,-40.343,
--41.752,-42.775,-43.486,-44.024,-44.469,-44.870,-45.313,-45.891,-46.610,-47.364,-48.020,-48.538,-48.988,-49.465,-49.979,-50.449,
--50.800,-51.041,-51.242,-51.438,-51.604,-51.726,-51.847,-52.015,-52.202,-52.312,-52.286,-52.163,-52.023,-51.899,-51.775,-51.658,
--51.607,-51.669,-51.809,-51.939,-52.008,-52.047,-52.108,-52.198,-52.278,-52.341,-52.424,-52.557,-52.697,-52.760,-52.711,-52.591,
--52.461,-52.330,-52.174,-51.989,-51.786,-51.558,-51.266,-50.903,-50.522,-50.186,-49.898,-49.612,-49.296,-48.954,-48.594,-48.210,
--47.809,-47.416,-47.039,-46.649,-46.220,-45.776,-45.355,-44.941,-44.471,-43.913,-43.312,-42.720,-42.133,-41.499,-40.798,-40.064,
--39.344,-38.662,-38.035,-37.477,-36.970,-36.457,-35.882,-35.237,-34.544,-33.816,-33.059,-32.296,-31.560,-30.851,-30.138,-29.407,
--28.676,-27.954,-27.203,-26.393,-25.548,-24.713,-23.878,-22.993,-22.064,-21.181,-20.402,-19.664,-18.856,-17.967,-17.085,-16.245,
--15.363,-14.388,-13.459,-12.794,-12.424,-12.095,-11.522,-10.680,-9.812,-9.149,-8.693,-8.285,-7.815,-7.311,-6.853,-6.454,
--6.068,-5.653,-5.212,-4.770,-4.343,-3.926,-3.502,-3.050,-2.580,-2.125,-1.719,-1.347,-.965,-.547,-.116,.293,
-.682,1.077,1.477,1.860,2.228,2.640,3.150,3.734,4.300,4.785,5.223,5.707,6.293,6.950,7.593,8.162,
-8.655,9.112,9.581,10.089,10.646,11.241,11.849,12.440,13.000,13.545,14.092,14.636,15.140,15.577,15.957,16.309,
-16.639,16.917,17.124,17.290,17.467,17.669,17.864,18.027,18.175,18.344,18.546,18.764,18.988,19.227,19.485,19.759,
-20.050,20.367,20.707,21.040,21.344,21.635,21.948,22.282,22.599,22.874,23.120,23.356,23.575,23.774,23.997,24.282,
-24.596,24.853,25.041,25.270,25.651,26.149,26.615,26.956,27.240,27.588,28.029,28.481,28.876,29.227,29.569,29.892,
-30.166,30.445,30.889,31.658,32.750,33.924,34.808,35.156,35.049,34.871,35.043,35.758,36.892,38.121,39.103,39.629,
-39.727,39.635,39.596,39.633,39.564,39.268,38.864,38.565,38.398,38.203,37.907,37.664,37.630,37.696,37.572,37.129,
-36.522,35.959,35.454,34.885,34.201,33.490,32.884,32.473,32.277,32.196,31.999,31.499,30.807,30.286,30.177,30.305,
-30.265,29.862,29.257,28.692,28.221,27.766,27.332,27.012,26.835,26.706,26.538,26.340,26.155,25.984,25.832,25.771,
-25.881,26.143,26.459,26.781,27.153,27.622,28.145,28.631,29.039,29.402,29.588,29.950,30.354,30.816,31.285,31.668,
-31.903,32.027,32.161,32.417,32.800,33.196,33.462,33.543,33.521,33.538,33.669,33.882,34.154,34.566,35.238,36.141,
-37.029,37.622,37.810,37.659,37.244,36.584,35.757,34.973,34.457,34.249,34.187,34.070,33.806,33.399,32.857,32.193,
-31.492,30.904,30.545,30.382,30.256,30.027,29.666,29.224,28.705,28.062,27.309,26.596,26.096,25.824,25.649,25.492,
-25.437,25.590,25.885,26.134,26.256,26.343,26.483,26.618,26.668,26.699,26.857,27.142,27.379,27.430,27.346,27.236,
-27.093,26.831,26.464,26.107,25.817,25.508,25.082,24.545,23.947,23.274,22.473,21.564,20.656,19.846,19.148,18.522,
-17.924,17.305,16.639,15.970,15.405,15.001,14.709,14.455,14.247,14.137,14.108,14.089,14.090,14.226,14.535,14.867,
-15.014,14.954,14.853,14.825,14.772,14.517,14.044,13.546,13.240,13.193,13.299,13.394,13.373,13.225,13.008,12.755,
-12.446,12.057,11.639,11.303,11.100,10.973,10.853,10.754,10.726,10.735,10.679,10.508,10.287,10.098,9.952,9.861,
-9.909,10.182,10.599,10.928,11.001,10.849,10.586,10.210,9.637,8.891,8.173,7.673,7.388,7.176,6.943,6.717,
-6.528,6.347,6.161,6.072,6.205,6.537,6.869,7.035,7.090,7.229,7.518,7.779,7.798,7.593,7.367,7.185,
-6.823,6.036,4.925,3.899,3.246,2.867,2.502,2.084,1.731,1.443,1.021,.349,-.429,-1.160,-1.968,-3.093,
--4.465,-5.679,-6.494,-7.184,-8.233,-9.762,-11.455,-13.035,-14.604,-16.418,-18.488,-20.546,-22.351,-23.881,-25.224,-26.419,
--27.460,-28.374,-29.199,-29.918,-30.487,-30.919,-31.290,-31.670,-32.063,-32.428,-32.725,-32.934,-33.057,-33.117,-33.131,-33.104,
--33.034,-32.933,-32.804,-32.629,-32.416,-32.250,-32.229,-32.330,-32.392,-32.253,-31.826,-31.044,-29.844,-28.378,-27.142,-26.648,
--26.869,-27.183,-27.084,-26.890,-27.527,-29.548,-32.473,-35.190,-36.899,-37.618,-37.874,-38.141,-38.567,-39.091,-39.659,-40.332,
--41.231,-42.380,-43.614,-44.665,-45.370,-45.729,-45.791,-45.592,-45.312,-45.358,-46.084,-47.346,-48.498,-48.932,-48.598,-47.919,
--47.267,-46.679,-46.076,-45.563,-45.403,-45.727,-46.379,-47.046,-47.495,-47.713,-47.873,-48.159,-48.581,-48.957,-49.130,-49.179,
--49.347,-49.730,-50.149,-50.392,-50.513,-50.774,-51.310,-51.970,-52.510,-52.858,-53.117,-53.394,-53.710,-54.046,-54.373,-54.634,
--54.761,-54.771,-54.766,-54.825,-54.932,-55.047,-55.198,-55.423,-55.659,-55.773,-55.709,-55.544,-55.397,-55.351,-55.484,-55.881,
--56.507,-57.146,-57.568,-57.770,-57.986,-58.403,-58.931,-59.300,-59.318,-58.998,-58.510,-58.099,-58.016,-58.378,-59.034,-59.626,
--59.878,-59.814,-59.660,-59.575,-59.515,-59.346,-58.989,-58.461,-57.834,-57.203,-56.665,-56.266,-55.986,-55.794,-55.703,-55.743,
--55.888,-56.049,-56.139,-56.113,-55.961,-55.725,-55.542,-55.604,-55.997,-56.549,-56.918,-56.859,-56.435,-55.960,-55.721,-55.756,
--55.865,-55.835,-55.644,-55.418,-55.225,-54.980,-54.599,-54.188,-53.955,-53.922,-53.826,-53.378,-52.577,-51.666,-50.874,-50.302,
--50.042,-50.209,-50.729,-51.237,-51.354,-51.042,-50.573,-50.160,-49.775,-49.332,-48.862,-48.350,-47.570,-46.324,-44.853,-43.743,
--43.305,-43.200,-42.834,-42.055,-41.244,-40.756,-40.484,-40.101,-39.540,-39.034,-38.740,-38.512,-38.133,-37.610,-37.118,-36.728,
--36.328,-35.828,-35.300,-34.855,-34.468,-33.993,-33.363,-32.676,-32.089,-31.674,-31.394,-31.190,-31.027,-30.900,-30.805,-30.727,
--30.623,-30.422,-30.093,-29.690,-29.307,-28.968,-28.595,-28.118,-27.564,-27.001,-26.404,-25.671,-24.782,-23.875,-23.091,-22.389,
--21.593,-20.632,-19.632,-18.741,-17.940,-17.088,-16.144,-15.221,-14.423,-13.694,-12.885,-11.940,-10.935,-9.962,-9.023,-8.064,
--7.072,-6.082,-5.121,-4.167,-3.163,-2.060,-.853,.384,1.510,2.419,3.161,3.925,4.850,5.837,6.644,7.212,
-7.885,9.163,11.145,13.255,14.671,15.124,15.191,15.663,16.678,17.686,18.358,19.261,21.252,24.135,26.296,26.031,
-23.241,19.570,16.828,15.508,14.913,14.390,14.046,14.290,15.115,16.104,16.962,17.752,18.640,19.661,20.801,22.076,
-23.388,24.438,24.982,25.170,25.459,26.168,27.215,28.295,29.213,29.959,30.597,31.200,31.860,32.626,33.412,34.062,
-34.523,34.880,35.193,35.412,35.503,35.588,35.814,36.149,36.407,36.515,36.622,36.902,37.321,37.689,37.876,37.907,
-37.867,37.823,37.844,37.984,38.202,38.349,38.334,38.261,38.357,38.753,39.392,40.133,40.868,41.533,42.080,42.515,
-42.932,43.440,44.045,44.645,45.143,45.527,45.833,46.084,46.286,46.450,46.581,46.684,46.833,47.180,47.773,48.325,
-48.291,47.313,45.578,43.616,41.692,39.535,36.760,33.504,30.494,28.459,27.612,27.714,28.483,29.748,31.262,32.645,
-33.629,34.277,34.809,35.299,35.635,35.771,35.811,35.831,35.748,35.500,35.233,35.144,35.142,34.847,34.005,32.843,
-31.913,31.612,31.863,32.193,32.080,31.337,30.266,29.434,29.137,29.101,28.824,28.260,27.953,28.324,28.945,28.822,
-27.469,25.493,23.941,23.227,22.922,22.536,22.151,22.111,22.315,22.198,21.454,20.526,20.139,20.451,20.878,20.777,
-20.093,19.227,18.431,17.626,16.801,16.270,16.287,16.512,16.217,15.134,13.882,13.304,13.466,13.571,12.934,11.816,
-11.109,11.288,11.898,12.097,11.522,10.511,9.623,9.114,8.859,8.612,8.232,7.724,7.176,6.688,6.312,6.022,
-5.741,5.403,4.995,4.575,4.233,4.023,3.921,3.847,3.733,3.573,3.379,3.145,2.857,2.541,2.255,2.029,
-1.840,1.656,1.470,1.281,1.086,.905,.784,.724,.643,.464,.233,.090,.107,.197,.225,.159,
-.066,.009,-.023,-.077,-.197,-.413,-.707,-.973,-1.087,-1.042,-.969,-.975,-1.014,-.974,-.869,-.843,
--.983,-1.219,-1.428,-1.577,-1.696,-1.787,-1.829,-1.842,-1.867,-1.893,-1.868,-1.795,-1.738,-1.700,-1.594,-1.372,
--1.110,-.905,-.718,-.441,-.082,.232,.440,.643,.937,1.258,1.470,1.564,1.659,1.829,2.022,2.185,
-2.347,2.542,2.743,2.931,3.171,3.525,3.911,4.178,4.310,4.464,4.737,5.021,5.164,5.205,5.337,5.626,
-5.906,5.997,5.942,5.930,6.028,6.080,5.926,5.620,5.368,5.268,5.200,5.024,4.871,5.164,6.296,8.226,
-10.368,11.880,12.192,11.443,10.512,10.456,11.648,13.310,14.059,13.135,11.136,9.436,8.864,9.070,9.218,9.034,
-8.938,9.223,9.470,8.976,7.598,5.944,4.745,4.212,4.060,3.961,3.821,3.694,3.612,3.554,3.499,3.445,
-3.391,3.354,3.365,3.433,3.508,3.523,3.456,3.334,3.179,2.994,2.788,2.581,2.363,2.074,1.662,1.140,
-.572,-.017,-.668,-1.424,-2.258,-3.084,-3.844,-4.551,-5.242,-5.913,-6.522,-7.050,-7.521,-7.963,-8.370,-8.731,
--9.065,-9.408,-9.760,-10.079,-10.352,-10.632,-10.976,-11.373,-11.766,-12.128,-12.489,-12.880,-13.285,-13.679,-14.072,-14.489,
--14.922,-15.323,-15.667,-15.980,-16.305,-16.667,-17.066,-17.493,-17.925,-18.330,-18.690,-19.025,-19.371,-19.732,-20.082,-20.397,
--20.673,-20.921,-21.160,-21.423,-21.741,-22.103,-22.466,-22.805,-23.145,-23.528,-23.952,-24.389,-24.831,-25.292,-25.764,-26.212,
--26.632,-27.065,-27.534,-27.995,-28.397,-28.760,-29.151,-29.578,-29.979,-30.316,-30.653,-31.081,-31.607,-32.155,-32.657,-33.109,
--33.539,-33.958,-34.364,-34.744,-35.073,-35.322,-35.506,-35.697,-35.954,-36.269,-36.592,-36.925,-37.319,-37.792,-38.290,-38.752,
--39.179,-39.606,-40.025,-40.392,-40.689,-40.950,-41.212,-41.476,-41.730,-41.983,-42.247,-42.521,-42.802,-43.106,-43.437,-43.756,
--44.016,-44.222,-44.428,-44.672,-44.939,-45.205,-45.473,-45.745,-45.981,-46.137,-46.231,-46.339,-46.515,-46.732,-46.923,-47.052,
--47.133,-47.187,-47.222,-47.234,-47.231,-47.234,-47.268,-47.335,-47.397,-47.393,-47.297,-47.155,-47.037,-46.957,-46.863,-46.704,
--46.492,-46.275,-46.080,-45.894,-45.705,-45.520,-45.349,-45.191,-45.025,-44.816,-44.531,-44.169,-43.776,-43.402,-43.043,-42.669,
--42.295,-41.987,-41.754,-41.494,-41.110,-40.664,-40.315,-40.091,-39.790,-39.180,-38.273,-37.339,-36.653,-36.234,-35.824,-35.099,
--33.953,-32.664,-31.775,-31.685,-32.263,-32.908,-33.061,-32.654,-32.021,-31.443,-30.893,-30.231,-29.454,-28.663,-27.874,-27.020,
--26.115,-25.262,-24.441,-23.437,-22.107,-20.667,-19.565,-19.028,-18.835,-18.572,-18.057,-17.442,-16.951,-16.616,-16.305,-15.928,
--15.535,-15.199,-14.888,-14.505,-14.072,-13.781,-13.776,-13.894,-13.740,-13.127,-12.417,-12.302,-13.145,-14.593,-15.903,-16.654,
--17.081,-17.723,-18.824,-20.137,-21.259,-22.055,-22.726,-23.545,-24.609,-25.808,-26.984,-28.039,-28.940,-29.656,-30.137,-30.326,
--30.185,-29.719,-29.023,-28.281,-27.703,-27.396,-27.323,-27.376,-27.485,-27.644,-27.847,-28.055,-28.225,-28.319,-28.247,-27.856,
--27.039,-25.854,-24.483,-23.052,-21.556,-20.008,-18.616,-17.712,-17.494,-17.841,-18.422,-18.961,-19.387,-19.784,-20.252,-20.813,
--21.393,-21.870,-22.183,-22.403,-22.710,-23.247,-23.983,-24.709,-25.179,-25.290,-25.151,-25.009,-25.061,-25.310,-25.594,-25.776,
--25.877,-26.021,-26.240,-26.418,-26.423,-26.244,-25.953,-25.587,-25.169,-24.835,-24.819,-25.225,-25.850,-26.324,-26.398,-26.080,
--25.541,-25.052,-25.001,-25.755,-27.278,-28.949,-29.972,-30.118,-29.945,-30.201,-31.078,-32.184,-33.181,-34.244,-35.766,-37.763,
--39.762,-41.276,-42.243,-42.947,-43.618,-44.243,-44.734,-45.149,-45.657,-46.341,-47.098,-47.762,-48.279,-48.742,-49.254,-49.802,
--50.285,-50.638,-50.899,-51.133,-51.330,-51.428,-51.434,-51.459,-51.612,-51.865,-52.082,-52.162,-52.130,-52.068,-52.013,-51.937,
--51.825,-51.726,-51.713,-51.802,-51.933,-52.043,-52.122,-52.208,-52.326,-52.447,-52.529,-52.579,-52.641,-52.731,-52.796,-52.773,
--52.654,-52.486,-52.304,-52.108,-51.896,-51.685,-51.478,-51.241,-50.940,-50.594,-50.258,-49.954,-49.655,-49.329,-48.977,-48.617,
--48.246,-47.853,-47.442,-47.027,-46.610,-46.196,-45.802,-45.435,-45.050,-44.574,-43.987,-43.346,-42.720,-42.115,-41.495,-40.840,
--40.165,-39.480,-38.791,-38.131,-37.547,-37.030,-36.501,-35.888,-35.209,-34.527,-33.860,-33.163,-32.420,-31.679,-30.993,-30.352,
--29.701,-29.008,-28.275,-27.501,-26.680,-25.836,-25.003,-24.173,-23.301,-22.385,-21.504,-20.723,-19.996,-19.217,-18.360,-17.514,
--16.732,-15.936,-15.020,-14.045,-13.227,-12.692,-12.302,-11.793,-11.062,-10.271,-9.642,-9.227,-8.893,-8.502,-8.049,-7.610,
--7.226,-6.856,-6.440,-5.959,-5.446,-4.945,-4.486,-4.066,-3.652,-3.217,-2.765,-2.325,-1.918,-1.529,-1.134,-.727,
--.315,.100,.526,.953,1.358,1.744,2.163,2.669,3.251,3.831,4.351,4.838,5.375,6.007,6.696,7.354,
-7.926,8.426,8.907,9.410,9.952,10.532,11.145,11.778,12.404,12.990,13.522,14.011,14.480,14.938,15.370,15.763,
-16.114,16.419,16.672,16.872,17.040,17.202,17.369,17.529,17.676,17.823,17.995,18.201,18.433,18.686,18.959,19.253,
-19.565,19.896,20.246,20.594,20.910,21.186,21.454,21.757,22.091,22.413,22.694,22.948,23.195,23.426,23.627,23.823,
-24.056,24.325,24.580,24.802,25.042,25.355,25.717,26.048,26.324,26.614,26.986,27.415,27.816,28.152,28.457,28.768,
-29.081,29.405,29.829,30.500,31.512,32.778,34.015,34.875,35.178,35.080,35.011,35.377,36.270,37.426,38.438,39.019,
-39.137,38.998,38.909,39.058,39.348,39.495,39.324,38.954,38.630,38.418,38.172,37.814,37.482,37.325,37.244,36.984,
-36.471,35.903,35.471,35.109,34.608,33.904,33.153,32.543,32.145,31.916,31.746,31.480,31.013,30.438,30.009,29.878,
-29.893,29.742,29.286,28.656,28.041,27.497,27.011,26.621,26.384,26.261,26.149,26.014,25.907,25.846,25.780,25.700,
-25.705,25.886,26.180,26.442,26.641,26.913,27.387,28.027,28.669,29.188,29.588,29.742,30.124,30.541,31.025,31.508,
-31.861,32.013,32.038,32.115,32.381,32.813,33.242,33.488,33.495,33.385,33.346,33.460,33.656,33.878,34.252,34.988,
-36.070,37.118,37.654,37.509,36.906,36.176,35.473,34.817,34.268,33.944,33.859,33.840,33.674,33.281,32.728,32.097,
-31.416,30.730,30.162,29.846,29.778,29.783,29.654,29.317,28.833,28.262,27.598,26.862,26.184,25.715,25.466,25.316,
-25.203,25.213,25.419,25.721,25.940,26.049,26.184,26.408,26.597,26.628,26.590,26.681,26.932,27.175,27.275,27.271,
-27.243,27.150,26.900,26.517,26.126,25.786,25.431,24.994,24.469,23.847,23.075,22.148,21.184,20.319,19.570,18.869,
-18.198,17.592,17.020,16.388,15.689,15.072,14.674,14.449,14.249,14.033,13.892,13.884,13.946,14.027,14.194,14.508,
-14.864,15.063,15.037,14.915,14.833,14.748,14.504,14.049,13.533,13.176,13.091,13.203,13.324,13.302,13.126,12.889,
-12.646,12.346,11.923,11.432,11.021,10.769,10.607,10.448,10.311,10.257,10.245,10.154,9.959,9.779,9.711,9.710,
-9.711,9.797,10.121,10.642,11.073,11.153,10.889,10.470,9.992,9.400,8.683,7.991,7.495,7.201,6.986,6.771,
-6.571,6.376,6.109,5.767,5.522,5.584,5.951,6.374,6.621,6.719,6.874,7.170,7.432,7.441,7.206,6.928,
-6.699,6.343,5.651,4.683,3.744,3.051,2.557,2.133,1.772,1.504,1.186,.586,-.292,-1.165,-1.864,-2.615,
--3.739,-5.145,-6.363,-7.132,-7.766,-8.773,-10.258,-11.901,-13.462,-15.068,-16.931,-18.979,-20.927,-22.621,-24.138,-25.563,
--26.836,-27.881,-28.748,-29.547,-30.282,-30.866,-31.266,-31.572,-31.897,-32.271,-32.647,-32.965,-33.188,-33.296,-33.294,-33.224,
--33.151,-33.117,-33.105,-33.039,-32.863,-32.616,-32.422,-32.353,-32.351,-32.340,-32.344,-32.380,-32.217,-31.451,-30.004,-28.438,
--27.514,-27.369,-27.359,-26.896,-26.295,-26.550,-28.268,-31.010,-33.744,-35.763,-37.041,-37.878,-38.471,-38.869,-39.159,-39.530,
--40.176,-41.171,-42.407,-43.646,-44.669,-45.409,-45.883,-46.027,-45.752,-45.260,-45.148,-45.931,-47.401,-48.656,-48.916,-48.250,
--47.383,-46.877,-46.682,-46.456,-46.121,-45.949,-46.202,-46.840,-47.585,-48.181,-48.564,-48.847,-49.175,-49.562,-49.875,-50.006,
--50.046,-50.207,-50.560,-50.944,-51.196,-51.386,-51.738,-52.330,-52.992,-53.505,-53.823,-54.047,-54.287,-54.604,-55.027,-55.506,
--55.874,-55.973,-55.836,-55.679,-55.660,-55.729,-55.773,-55.807,-55.944,-56.201,-56.442,-56.543,-56.506,-56.407,-56.323,-56.358,
--56.651,-57.232,-57.901,-58.381,-58.613,-58.799,-59.117,-59.465,-59.567,-59.285,-58.748,-58.208,-57.875,-57.864,-58.192,-58.739,
--59.281,-59.640,-59.812,-59.908,-59.981,-59.961,-59.743,-59.289,-58.647,-57.914,-57.209,-56.632,-56.199,-55.851,-55.558,-55.379,
--55.395,-55.589,-55.842,-56.032,-56.109,-56.074,-55.963,-55.882,-55.985,-56.339,-56.796,-57.067,-56.963,-56.559,-56.129,-55.910,
--55.920,-55.982,-55.918,-55.713,-55.484,-55.294,-55.056,-54.673,-54.236,-53.961,-53.895,-53.782,-53.310,-52.453,-51.486,-50.702,
--50.222,-50.080,-50.307,-50.818,-51.315,-51.472,-51.227,-50.781,-50.324,-49.856,-49.311,-48.692,-47.972,-46.997,-45.690,-44.322,
--43.381,-43.055,-42.986,-42.665,-41.994,-41.316,-40.907,-40.644,-40.233,-39.628,-39.061,-38.710,-38.479,-38.155,-37.666,-37.114,
--36.597,-36.106,-35.600,-35.100,-34.656,-34.257,-33.816,-33.265,-32.643,-32.062,-31.614,-31.294,-31.031,-30.775,-30.543,-30.373,
--30.248,-30.083,-29.801,-29.419,-29.036,-28.722,-28.454,-28.143,-27.735,-27.238,-26.667,-25.993,-25.193,-24.318,-23.474,-22.709,
--21.952,-21.104,-20.163,-19.229,-18.369,-17.523,-16.596,-15.601,-14.659,-13.852,-13.113,-12.303,-11.364,-10.353,-9.344,-8.351,
--7.361,-6.389,-5.466,-4.577,-3.660,-2.666,-1.596,-.478,.647,1.714,2.662,3.509,4.378,5.359,6.358,7.192,
-7.885,8.797,10.304,12.293,14.115,15.161,15.482,15.715,16.357,17.255,17.968,18.570,19.806,22.200,25.093,26.854,
-26.261,23.647,20.550,18.292,17.034,16.181,15.391,14.910,15.052,15.695,16.451,17.132,17.832,18.638,19.506,20.427,
-21.515,22.794,24.050,25.047,25.841,26.700,27.728,28.731,29.497,30.070,30.649,31.316,31.997,32.629,33.233,33.803,
-34.265,34.597,34.878,35.165,35.393,35.491,35.545,35.719,36.032,36.336,36.519,36.649,36.851,37.137,37.432,37.698,
-37.942,38.137,38.258,38.374,38.595,38.875,38.985,38.785,38.458,38.369,38.693,39.294,39.955,40.610,41.297,41.984,
-42.580,43.076,43.575,44.146,44.731,45.245,45.675,46.049,46.343,46.517,46.604,46.699,46.844,47.032,47.320,47.799,
-48.363,48.593,48.048,46.702,44.935,43.050,40.944,38.400,35.601,33.089,31.209,29.796,28.575,27.700,27.634,28.523,
-29.925,31.252,32.310,33.241,34.108,34.772,35.165,35.434,35.701,35.871,35.821,35.665,35.632,35.688,35.497,34.822,
-33.848,33.008,32.569,32.445,32.336,31.959,31.230,30.364,29.737,29.505,29.368,28.940,28.402,28.504,29.635,31.010,
-31.167,29.427,26.664,24.432,23.484,23.363,23.305,23.130,23.099,23.193,22.983,22.229,21.292,20.755,20.730,20.785,
-20.509,19.954,19.400,18.872,18.114,17.042,16.017,15.479,15.398,15.277,14.757,14.050,13.638,13.620,13.548,12.985,
-12.075,11.435,11.470,11.933,12.175,11.786,10.924,10.069,9.543,9.279,9.008,8.587,8.113,7.741,7.470,7.168,
-6.772,6.365,6.033,5.729,5.349,4.918,4.591,4.441,4.361,4.197,3.931,3.653,3.411,3.178,2.944,2.740,
-2.559,2.335,2.048,1.782,1.617,1.517,1.402,1.276,1.193,1.123,.967,.725,.557,.575,.679,.682,
-.565,.483,.520,.547,.390,.056,-.276,-.451,-.448,-.344,-.240,-.211,-.266,-.331,-.327,-.278,
--.293,-.436,-.657,-.878,-1.082,-1.273,-1.410,-1.455,-1.451,-1.477,-1.532,-1.541,-1.484,-1.435,-1.431,-1.393,
--1.243,-1.031,-.854,-.694,-.440,-.080,.264,.510,.738,1.046,1.376,1.585,1.649,1.688,1.804,1.980,
-2.181,2.438,2.772,3.114,3.381,3.597,3.838,4.099,4.296,4.431,4.634,4.993,5.412,5.722,5.883,6.008,
-6.178,6.345,6.436,6.480,6.562,6.671,6.674,6.472,6.138,5.868,5.781,5.792,5.701,5.444,5.239,5.451,
-6.258,7.425,8.400,8.720,8.422,8.126,8.610,10.104,11.930,12.956,12.589,11.355,10.375,10.271,10.710,11.037,
-11.121,11.328,11.753,11.844,10.966,9.193,7.284,5.920,5.149,4.619,4.121,3.748,3.620,3.662,3.695,3.634,
-3.519,3.411,3.330,3.271,3.225,3.176,3.112,3.044,2.999,2.972,2.930,2.845,2.722,2.554,2.300,1.911,
-1.395,.817,.226,-.395,-1.102,-1.901,-2.731,-3.518,-4.241,-4.930,-5.600,-6.229,-6.792,-7.292,-7.752,-8.169,
--8.539,-8.877,-9.219,-9.568,-9.889,-10.172,-10.462,-10.812,-11.211,-11.602,-11.959,-12.319,-12.719,-13.149,-13.576,-14.000,
--14.443,-14.893,-15.305,-15.651,-15.958,-16.282,-16.660,-17.086,-17.527,-17.935,-18.285,-18.600,-18.935,-19.315,-19.706,-20.052,
--20.341,-20.604,-20.863,-21.123,-21.396,-21.712,-22.075,-22.454,-22.817,-23.181,-23.576,-23.998,-24.425,-24.858,-25.316,-25.788,
--26.229,-26.625,-27.023,-27.458,-27.897,-28.288,-28.641,-29.016,-29.430,-29.835,-30.204,-30.587,-31.050,-31.585,-32.119,-32.596,
--33.015,-33.397,-33.759,-34.119,-34.486,-34.830,-35.097,-35.293,-35.497,-35.787,-36.148,-36.512,-36.869,-37.278,-37.766,-38.277,
--38.743,-39.168,-39.591,-40.004,-40.354,-40.624,-40.862,-41.118,-41.385,-41.636,-41.874,-42.130,-42.419,-42.738,-43.087,-43.455,
--43.809,-44.109,-44.358,-44.593,-44.838,-45.073,-45.286,-45.499,-45.725,-45.933,-46.076,-46.163,-46.266,-46.442,-46.671,-46.884,
--47.028,-47.102,-47.145,-47.199,-47.277,-47.352,-47.390,-47.394,-47.400,-47.419,-47.405,-47.313,-47.165,-47.037,-46.960,-46.885,
--46.747,-46.543,-46.318,-46.117,-45.950,-45.811,-45.679,-45.525,-45.332,-45.112,-44.881,-44.614,-44.275,-43.881,-43.495,-43.149,
--42.802,-42.422,-42.052,-41.743,-41.456,-41.092,-40.641,-40.216,-39.909,-39.649,-39.256,-38.638,-37.884,-37.184,-36.648,-36.188,
--35.549,-34.523,-33.229,-32.162,-31.818,-32.202,-32.771,-32.936,-32.584,-32.032,-31.548,-31.081,-30.466,-29.705,-28.917,-28.121,
--27.257,-26.377,-25.632,-25.002,-24.192,-22.960,-21.471,-20.190,-19.399,-18.935,-18.442,-17.778,-17.098,-16.589,-16.254,-15.957,
--15.618,-15.266,-14.952,-14.639,-14.253,-13.812,-13.482,-13.426,-13.573,-13.608,-13.286,-12.782,-12.633,-13.227,-14.375,-15.471,
--16.110,-16.473,-17.063,-18.135,-19.456,-20.609,-21.432,-22.110,-22.913,-23.945,-25.132,-26.339,-27.457,-28.392,-29.075,-29.479,
--29.608,-29.445,-28.964,-28.237,-27.484,-26.967,-26.800,-26.894,-27.077,-27.244,-27.388,-27.520,-27.633,-27.703,-27.660,-27.345,
--26.571,-25.282,-23.645,-21.930,-20.320,-18.875,-17.652,-16.793,-16.434,-16.566,-17.008,-17.523,-17.948,-18.260,-18.572,-19.035,
--19.666,-20.258,-20.550,-20.522,-20.505,-20.894,-21.777,-22.862,-23.768,-24.302,-24.487,-24.433,-24.274,-24.164,-24.196,-24.314,
--24.377,-24.344,-24.331,-24.444,-24.622,-24.718,-24.679,-24.569,-24.429,-24.254,-24.120,-24.223,-24.664,-25.262,-25.686,-25.754,
--25.519,-25.103,-24.619,-24.330,-24.654,-25.783,-27.307,-28.464,-28.875,-28.912,-29.240,-30.099,-31.219,-32.364,-33.686,-35.416,
--37.383,-39.088,-40.231,-41.015,-41.849,-42.872,-43.871,-44.613,-45.113,-45.568,-46.112,-46.719,-47.300,-47.840,-48.391,-48.983,
--49.555,-50.019,-50.352,-50.618,-50.869,-51.081,-51.185,-51.187,-51.193,-51.308,-51.525,-51.746,-51.892,-51.968,-52.022,-52.068,
--52.070,-51.992,-51.851,-51.725,-51.710,-51.834,-52.032,-52.207,-52.322,-52.414,-52.523,-52.627,-52.684,-52.703,-52.727,-52.758,
--52.743,-52.640,-52.471,-52.278,-52.065,-51.818,-51.552,-51.308,-51.094,-50.877,-50.625,-50.340,-50.034,-49.703,-49.342,-48.972,
--48.614,-48.259,-47.883,-47.481,-47.067,-46.660,-46.268,-45.897,-45.537,-45.137,-44.638,-44.035,-43.390,-42.764,-42.158,-41.544,
--40.921,-40.306,-39.684,-39.023,-38.343,-37.710,-37.148,-36.589,-35.958,-35.272,-34.608,-33.981,-33.322,-32.583,-31.822,-31.136,
--30.539,-29.954,-29.306,-28.585,-27.819,-27.026,-26.216,-25.393,-24.549,-23.667,-22.758,-21.878,-21.070,-20.289,-19.454,-18.559,
--17.700,-16.942,-16.205,-15.344,-14.349,-13.405,-12.702,-12.231,-11.801,-11.268,-10.677,-10.178,-9.826,-9.534,-9.187,-8.769,
--8.348,-7.965,-7.593,-7.174,-6.684,-6.146,-5.610,-5.121,-4.693,-4.301,-3.900,-3.463,-3.001,-2.544,-2.107,-1.683,
--1.268,-.861,-.448,-.007,.467,.951,1.421,1.890,2.395,2.946,3.510,4.057,4.603,5.197,5.861,6.553,
-7.206,7.785,8.312,8.836,9.388,9.972,10.571,11.176,11.786,12.393,12.969,13.485,13.940,14.358,14.773,15.187,
-15.574,15.908,16.190,16.431,16.644,16.826,16.974,17.097,17.208,17.324,17.457,17.621,17.823,18.066,18.343,18.645,
-18.966,19.310,19.679,20.061,20.426,20.740,21.006,21.267,21.567,21.903,22.227,22.510,22.765,23.021,23.276,23.503,
-23.700,23.898,24.119,24.352,24.576,24.799,25.037,25.280,25.508,25.740,26.027,26.380,26.745,27.070,27.364,27.675,
-28.010,28.348,28.726,29.270,30.111,31.256,32.548,33.731,34.568,34.977,35.114,35.313,35.855,36.729,37.632,38.211,
-38.330,38.135,37.924,37.962,38.325,38.844,39.218,39.256,39.029,38.745,38.493,38.189,37.775,37.349,37.017,36.701,
-36.246,35.681,35.228,35.000,34.807,34.368,33.651,32.892,32.311,31.924,31.616,31.304,30.950,30.532,30.085,29.716,
-29.493,29.329,29.047,28.572,27.984,27.394,26.848,26.375,26.033,25.846,25.741,25.634,25.537,25.518,25.575,25.631,
-25.680,25.822,26.105,26.410,26.581,26.644,26.816,27.272,27.966,28.695,29.294,29.742,29.865,30.297,30.715,31.162,
-31.596,31.906,32.018,32.005,32.046,32.271,32.655,33.048,33.284,33.301,33.190,33.116,33.168,33.292,33.438,33.739,
-34.425,35.480,36.459,36.796,36.313,35.369,34.489,33.915,33.566,33.320,33.186,33.202,33.258,33.152,32.770,32.170,
-31.482,30.780,30.110,29.569,29.286,29.275,29.349,29.256,28.892,28.354,27.773,27.175,26.539,25.930,25.478,25.226,
-25.094,25.026,25.062,25.220,25.388,25.449,25.482,25.685,26.087,26.460,26.596,26.559,26.578,26.743,26.953,27.119,
-27.267,27.395,27.376,27.100,26.639,26.172,25.775,25.394,24.964,24.457,23.796,22.893,21.806,20.767,19.944,19.261,
-18.545,17.788,17.130,16.609,16.084,15.463,14.869,14.469,14.242,14.032,13.794,13.651,13.686,13.826,13.975,14.170,
-14.487,14.852,15.074,15.061,14.914,14.775,14.638,14.385,13.969,13.508,13.192,13.121,13.221,13.300,13.211,12.971,
-12.708,12.486,12.215,11.780,11.228,10.744,10.440,10.251,10.070,9.906,9.826,9.796,9.700,9.525,9.402,9.416,
-9.495,9.563,9.742,10.218,10.923,11.472,11.524,11.112,10.530,9.967,9.370,8.663,7.943,7.381,7.015,6.749,
-6.517,6.332,6.167,5.919,5.555,5.244,5.223,5.526,5.930,6.202,6.341,6.509,6.769,6.961,6.901,6.609,
-6.278,6.017,5.723,5.242,4.580,3.884,3.240,2.624,2.052,1.630,1.361,.986,.225,-.852,-1.854,-2.566,
--3.249,-4.279,-5.596,-6.750,-7.509,-8.196,-9.288,-10.842,-12.522,-14.116,-15.764,-17.634,-19.599,-21.385,-22.924,-24.373,
--25.813,-27.115,-28.153,-28.993,-29.788,-30.550,-31.158,-31.547,-31.814,-32.106,-32.477,-32.880,-33.241,-33.505,-33.635,-33.617,
--33.491,-33.346,-33.270,-33.264,-33.236,-33.090,-32.847,-32.635,-32.524,-32.455,-32.381,-32.422,-32.687,-32.933,-32.612,-31.462,
--29.953,-28.881,-28.488,-28.229,-27.549,-26.710,-26.588,-27.713,-29.770,-32.054,-34.160,-36.047,-37.645,-38.718,-39.174,-39.292,
--39.531,-40.166,-41.160,-42.304,-43.417,-44.438,-45.380,-46.157,-46.487,-46.117,-45.257,-44.670,-45.061,-46.314,-47.504,-47.807,
--47.295,-46.730,-46.674,-46.994,-47.217,-47.155,-47.038,-47.177,-47.641,-48.277,-48.906,-49.440,-49.893,-50.309,-50.677,-50.916,
--50.987,-50.993,-51.113,-51.406,-51.755,-52.041,-52.319,-52.732,-53.305,-53.899,-54.372,-54.698,-54.922,-55.104,-55.347,-55.775,
--56.367,-56.868,-57.001,-56.782,-56.508,-56.423,-56.482,-56.509,-56.489,-56.574,-56.837,-57.169,-57.424,-57.561,-57.603,-57.570,
--57.544,-57.703,-58.157,-58.768,-59.244,-59.448,-59.503,-59.552,-59.526,-59.253,-58.734,-58.207,-57.911,-57.889,-58.035,-58.263,
--58.549,-58.876,-59.216,-59.554,-59.873,-60.118,-60.197,-60.050,-59.676,-59.117,-58.452,-57.799,-57.256,-56.808,-56.358,-55.873,
--55.479,-55.347,-55.506,-55.813,-56.099,-56.284,-56.368,-56.377,-56.384,-56.497,-56.758,-57.046,-57.152,-56.963,-56.575,-56.212,
--56.040,-56.046,-56.071,-55.961,-55.710,-55.442,-55.248,-55.063,-54.766,-54.383,-54.090,-53.957,-53.780,-53.266,-52.374,-51.378,
--50.594,-50.157,-50.070,-50.327,-50.849,-51.381,-51.614,-51.442,-51.015,-50.511,-49.952,-49.272,-48.460,-47.530,-46.451,-45.243,
--44.133,-43.425,-43.158,-42.999,-42.592,-41.952,-41.399,-41.115,-40.911,-40.484,-39.801,-39.119,-38.670,-38.408,-38.106,-37.618,
--37.002,-36.403,-35.879,-35.365,-34.785,-34.169,-33.617,-33.179,-32.788,-32.356,-31.895,-31.501,-31.217,-30.971,-30.677,-30.357,
--30.102,-29.924,-29.714,-29.373,-28.941,-28.547,-28.262,-28.028,-27.746,-27.359,-26.858,-26.240,-25.512,-24.716,-23.918,-23.144,
--22.356,-21.507,-20.593,-19.662,-18.751,-17.848,-16.909,-15.907,-14.882,-13.923,-13.094,-12.366,-11.631,-10.784,-9.808,-8.759,
--7.715,-6.728,-5.810,-4.938,-4.052,-3.107,-2.116,-1.137,-.191,.763,1.760,2.768,3.744,4.726,5.772,6.830,
-7.775,8.648,9.741,11.289,13.076,14.535,15.326,15.725,16.274,17.101,17.816,18.163,18.608,19.986,22.487,25.136,
-26.463,25.751,23.598,21.274,19.619,18.603,17.815,17.126,16.777,16.941,17.456,18.028,18.564,19.164,19.880,20.661,
-21.516,22.565,23.844,25.167,26.308,27.257,28.164,29.056,29.781,30.270,30.711,31.335,32.117,32.829,33.334,33.715,
-34.086,34.433,34.700,34.912,35.124,35.303,35.388,35.437,35.597,35.914,36.270,36.540,36.728,36.909,37.119,37.358,
-37.653,38.005,38.330,38.552,38.757,39.100,39.532,39.745,39.523,39.053,38.781,38.955,39.437,39.983,40.548,41.224,
-42.002,42.733,43.321,43.825,44.336,44.859,45.363,45.856,46.324,46.668,46.807,46.822,46.894,47.079,47.268,47.413,
-47.646,48.053,48.392,48.243,47.436,46.166,44.623,42.724,40.385,37.940,35.939,34.465,32.943,30.851,28.502,26.856,
-26.550,27.350,28.594,29.893,31.228,32.554,33.661,34.439,35.019,35.528,35.886,35.994,35.983,36.063,36.176,36.027,
-35.485,34.782,34.230,33.873,33.524,33.035,32.390,31.643,30.912,30.384,30.113,29.834,29.256,28.631,28.741,29.961,
-31.460,31.719,30.036,27.296,25.091,24.227,24.279,24.444,24.408,24.281,24.058,23.521,22.647,21.772,21.217,20.919,
-20.575,20.082,19.636,19.369,19.070,18.387,17.273,16.102,15.306,14.975,14.845,14.652,14.386,14.189,14.079,13.872,
-13.382,12.673,12.043,11.769,11.841,11.955,11.779,11.246,10.593,10.089,9.760,9.425,8.980,8.549,8.298,8.161,
-7.906,7.455,6.999,6.720,6.522,6.175,5.671,5.252,5.077,5.003,4.795,4.428,4.070,3.821,3.623,3.408,
-3.193,2.986,2.727,2.412,2.165,2.079,2.057,1.937,1.732,1.603,1.589,1.522,1.288,1.027,.943,1.013,
-1.043,.983,.980,1.095,1.118,.826,.320,-.036,-.010,.281,.542,.611,.532,.429,.373,.342,
-.265,.097,-.125,-.319,-.461,-.609,-.793,-.940,-.967,-.913,-.890,-.925,-.938,-.893,-.879,-.961,
--1.053,-1.014,-.835,-.626,-.436,-.205,.098,.392,.614,.820,1.084,1.348,1.492,1.515,1.551,1.703,
-1.946,2.233,2.586,3.025,3.460,3.772,3.955,4.116,4.316,4.520,4.698,4.913,5.236,5.636,6.009,6.289,
-6.489,6.646,6.771,6.877,6.980,7.081,7.146,7.136,7.040,6.879,6.703,6.583,6.557,6.565,6.488,6.284,
-6.073,6.051,6.275,6.589,6.764,6.752,6.806,7.308,8.382,9.658,10.481,10.500,10.019,9.697,9.865,10.296,
-10.649,10.967,11.511,12.179,12.384,11.659,10.210,8.684,7.473,6.453,5.420,4.528,4.126,4.267,4.567,4.588,
-4.229,3.721,3.317,3.094,2.983,2.897,2.798,2.693,2.624,2.622,2.673,2.713,2.682,2.570,2.404,2.195,
-1.913,1.519,1.012,.432,-.188,-.856,-1.594,-2.388,-3.185,-3.939,-4.644,-5.320,-5.963,-6.553,-7.075,-7.540,
--7.960,-8.340,-8.689,-9.028,-9.367,-9.696,-10.014,-10.349,-10.724,-11.117,-11.479,-11.801,-12.132,-12.518,-12.953,-13.402,
--13.850,-14.308,-14.767,-15.194,-15.565,-15.901,-16.247,-16.638,-17.069,-17.499,-17.874,-18.180,-18.471,-18.825,-19.253,-19.677,
--20.019,-20.280,-20.524,-20.793,-21.075,-21.363,-21.681,-22.045,-22.431,-22.809,-23.185,-23.587,-24.012,-24.438,-24.868,-25.325,
--25.798,-26.239,-26.630,-27.009,-27.419,-27.837,-28.219,-28.565,-28.927,-29.328,-29.742,-30.154,-30.595,-31.089,-31.604,-32.082,
--32.504,-32.889,-33.247,-33.575,-33.895,-34.240,-34.597,-34.902,-35.136,-35.370,-35.687,-36.081,-36.485,-36.877,-37.307,-37.802,
--38.305,-38.750,-39.139,-39.519,-39.893,-40.223,-40.498,-40.759,-41.036,-41.307,-41.541,-41.755,-42.003,-42.312,-42.671,-43.060,
--43.464,-43.854,-44.195,-44.478,-44.722,-44.944,-45.146,-45.337,-45.538,-45.755,-45.954,-46.099,-46.201,-46.319,-46.492,-46.703,
--46.898,-47.029,-47.088,-47.113,-47.171,-47.294,-47.439,-47.523,-47.511,-47.454,-47.413,-47.382,-47.312,-47.198,-47.088,-47.014,
--46.942,-46.822,-46.643,-46.427,-46.199,-45.991,-45.835,-45.732,-45.620,-45.435,-45.189,-44.942,-44.697,-44.388,-43.978,-43.532,
--43.139,-42.807,-42.470,-42.105,-41.746,-41.411,-41.051,-40.624,-40.164,-39.744,-39.388,-39.048,-38.650,-38.156,-37.594,-37.039,
--36.529,-35.960,-35.146,-34.074,-33.071,-32.571,-32.659,-32.934,-32.913,-32.503,-31.975,-31.537,-31.116,-30.568,-29.914,-29.239,
--28.493,-27.580,-26.605,-25.818,-25.251,-24.584,-23.504,-22.118,-20.852,-19.963,-19.294,-18.553,-17.688,-16.891,-16.317,-15.924,
--15.591,-15.267,-14.970,-14.685,-14.352,-13.942,-13.525,-13.242,-13.203,-13.357,-13.493,-13.420,-13.217,-13.238,-13.779,-14.717,
--15.582,-16.048,-16.287,-16.772,-17.751,-18.999,-20.099,-20.888,-21.552,-22.355,-23.389,-24.572,-25.783,-26.917,-27.856,-28.501,
--28.832,-28.887,-28.676,-28.171,-27.441,-26.720,-26.288,-26.249,-26.470,-26.743,-26.935,-27.005,-26.939,-26.740,-26.441,-26.032,
--25.388,-24.350,-22.909,-21.268,-19.682,-18.285,-17.119,-16.262,-15.823,-15.800,-16.038,-16.357,-16.673,-16.966,-17.216,-17.452,
--17.786,-18.275,-18.763,-19.018,-19.072,-19.317,-20.116,-21.358,-22.528,-23.202,-23.358,-23.206,-22.877,-22.414,-21.956,-21.705,
--21.691,-21.718,-21.622,-21.499,-21.570,-21.892,-22.317,-22.696,-23.001,-23.234,-23.368,-23.453,-23.667,-24.125,-24.683,-25.059,
--25.137,-25.033,-24.846,-24.553,-24.223,-24.190,-24.767,-25.819,-26.836,-27.508,-28.080,-29.002,-30.369,-31.881,-33.291,-34.643,
--36.005,-37.197,-37.978,-38.450,-39.063,-40.153,-41.604,-43.021,-44.131,-44.949,-45.608,-46.186,-46.704,-47.206,-47.749,-48.339,
--48.922,-49.428,-49.823,-50.125,-50.376,-50.606,-50.806,-50.947,-51.026,-51.079,-51.153,-51.264,-51.406,-51.564,-51.716,-51.839,
--51.920,-51.964,-51.962,-51.894,-51.783,-51.735,-51.852,-52.107,-52.343,-52.446,-52.458,-52.495,-52.585,-52.655,-52.657,-52.632,
--52.626,-52.607,-52.517,-52.362,-52.189,-52.004,-51.767,-51.472,-51.183,-50.956,-50.779,-50.591,-50.355,-50.071,-49.747,-49.391,
--49.020,-48.652,-48.282,-47.895,-47.494,-47.097,-46.715,-46.339,-45.958,-45.561,-45.119,-44.603,-44.025,-43.437,-42.872,-42.298,
--41.681,-41.048,-40.455,-39.899,-39.314,-38.671,-38.022,-37.427,-36.855,-36.235,-35.558,-34.887,-34.246,-33.579,-32.835,-32.060,
--31.353,-30.745,-30.166,-29.529,-28.820,-28.078,-27.329,-26.564,-25.763,-24.915,-24.031,-23.140,-22.280,-21.459,-20.638,-19.767,
--18.862,-18.003,-17.237,-16.495,-15.650,-14.672,-13.696,-12.903,-12.354,-11.950,-11.563,-11.166,-10.803,-10.490,-10.171,-9.788,
--9.356,-8.936,-8.554,-8.177,-7.756,-7.279,-6.769,-6.261,-5.781,-5.349,-4.958,-4.576,-4.167,-3.717,-3.238,-2.749,
--2.268,-1.809,-1.382,-.968,-.524,-.019,.535,1.097,1.643,2.184,2.739,3.309,3.894,4.504,5.156,5.841,
-6.525,7.169,7.759,8.315,8.870,9.453,10.065,10.683,11.280,11.850,12.405,12.947,13.455,13.905,14.307,14.693,
-15.080,15.445,15.757,16.019,16.259,16.486,16.674,16.797,16.867,16.926,17.008,17.122,17.269,17.456,17.695,17.981,
-18.295,18.630,18.991,19.386,19.796,20.185,20.522,20.809,21.085,21.391,21.729,22.066,22.365,22.628,22.882,23.141,
-23.389,23.612,23.816,24.019,24.219,24.405,24.576,24.743,24.912,25.092,25.309,25.581,25.877,26.140,26.356,26.584,
-26.875,27.202,27.525,27.913,28.549,29.552,30.835,32.158,33.299,34.154,34.742,35.176,35.634,36.242,36.926,37.437,
-37.562,37.340,37.037,36.932,37.154,37.652,38.256,38.744,38.961,38.906,38.703,38.443,38.115,37.693,37.224,36.757,
-36.254,35.668,35.104,34.761,34.657,34.521,34.069,33.330,32.602,32.094,31.746,31.394,30.988,30.588,30.215,29.835,
-29.442,29.072,28.726,28.345,27.886,27.372,26.850,26.351,25.918,25.610,25.436,25.329,25.230,25.164,25.188,25.292,
-25.428,25.621,25.942,26.358,26.694,26.816,26.822,26.960,27.388,28.040,28.740,29.358,29.865,29.976,30.486,30.890,
-31.232,31.546,31.784,31.890,31.902,31.948,32.123,32.416,32.734,32.966,33.044,32.986,32.888,32.839,32.841,32.882,
-33.083,33.637,34.515,35.288,35.406,34.719,33.650,32.799,32.428,32.362,32.340,32.308,32.363,32.498,32.529,32.272,
-31.717,31.001,30.257,29.559,28.990,28.675,28.655,28.767,28.730,28.400,27.878,27.346,26.847,26.318,25.765,25.308,
-25.035,24.910,24.867,24.891,24.950,24.941,24.823,24.775,25.049,25.643,26.241,26.547,26.580,26.566,26.641,26.796,
-27.028,27.357,27.668,27.710,27.357,26.776,26.234,25.817,25.431,24.997,24.482,23.789,22.800,21.595,20.479,19.655,
-18.994,18.237,17.367,16.611,16.092,15.673,15.189,14.684,14.297,14.033,13.785,13.550,13.450,13.541,13.717,13.883,
-14.090,14.418,14.787,15.006,15.000,14.873,14.739,14.572,14.279,13.870,13.487,13.278,13.268,13.338,13.316,13.112,
-12.793,12.506,12.300,12.051,11.614,11.027,10.496,10.162,9.975,9.812,9.649,9.539,9.468,9.362,9.226,9.163,
-9.211,9.290,9.377,9.657,10.319,11.211,11.845,11.848,11.310,10.624,10.027,9.444,8.748,7.998,7.354,6.867,
-6.473,6.158,5.976,5.901,5.765,5.451,5.085,4.932,5.107,5.454,5.749,5.940,6.128,6.353,6.486,6.383,
-6.067,5.708,5.421,5.166,4.849,4.454,4.013,3.490,2.825,2.093,1.497,1.106,.678,-.093,-1.181,-2.228,
--3.009,-3.725,-4.704,-5.916,-7.001,-7.802,-8.623,-9.860,-11.508,-13.246,-14.900,-16.606,-18.481,-20.361,-21.997,-23.385,
--24.722,-26.089,-27.346,-28.365,-29.213,-30.026,-30.795,-31.393,-31.771,-32.036,-32.328,-32.687,-33.070,-33.419,-33.699,-33.876,
--33.919,-33.828,-33.658,-33.502,-33.409,-33.334,-33.188,-32.963,-32.763,-32.671,-32.644,-32.618,-32.689,-32.988,-33.350,-33.281,
--32.472,-31.252,-30.291,-29.825,-29.424,-28.639,-27.687,-27.244,-27.695,-28.858,-30.438,-32.411,-34.755,-37.042,-38.628,-39.289,
--39.451,-39.733,-40.395,-41.301,-42.271,-43.290,-44.421,-45.592,-46.498,-46.706,-45.986,-44.672,-43.621,-43.589,-44.540,-45.684,
--46.285,-46.358,-46.485,-47.048,-47.836,-48.386,-48.527,-48.473,-48.524,-48.799,-49.250,-49.781,-50.321,-50.833,-51.292,-51.653,
--51.847,-51.864,-51.825,-51.912,-52.193,-52.568,-52.916,-53.246,-53.646,-54.139,-54.659,-55.139,-55.549,-55.846,-56.010,-56.162,
--56.514,-57.110,-57.677,-57.871,-57.658,-57.352,-57.243,-57.311,-57.378,-57.401,-57.510,-57.775,-58.109,-58.396,-58.610,-58.748,
--58.770,-58.705,-58.733,-59.021,-59.493,-59.873,-59.976,-59.854,-59.625,-59.283,-58.786,-58.263,-57.979,-58.059,-58.350,-58.601,
--58.718,-58.802,-58.986,-59.304,-59.697,-60.068,-60.323,-60.410,-60.331,-60.108,-59.742,-59.255,-58.729,-58.253,-57.806,-57.273,
--56.627,-56.043,-55.763,-55.854,-56.159,-56.472,-56.695,-56.836,-56.926,-57.008,-57.130,-57.290,-57.381,-57.274,-56.954,-56.565,
--56.289,-56.203,-56.231,-56.213,-56.024,-55.687,-55.360,-55.176,-55.093,-54.947,-54.669,-54.367,-54.132,-53.845,-53.282,-52.407,
--51.451,-50.690,-50.240,-50.112,-50.320,-50.813,-51.347,-51.598,-51.443,-51.038,-50.573,-50.042,-49.311,-48.336,-47.215,-46.080,
--45.043,-44.235,-43.746,-43.477,-43.148,-42.575,-41.889,-41.392,-41.176,-40.997,-40.550,-39.811,-39.046,-38.511,-38.203,-37.906,
--37.446,-36.852,-36.271,-35.758,-35.194,-34.443,-33.564,-32.809,-32.361,-32.147,-31.937,-31.626,-31.309,-31.094,-30.923,-30.662,
--30.299,-29.959,-29.711,-29.465,-29.107,-28.656,-28.239,-27.928,-27.677,-27.392,-27.011,-26.504,-25.863,-25.125,-24.373,-23.647,
--22.898,-22.047,-21.102,-20.143,-19.217,-18.284,-17.297,-16.271,-15.250,-14.252,-13.292,-12.429,-11.706,-11.055,-10.306,-9.352,
--8.255,-7.179,-6.223,-5.356,-4.489,-3.561,-2.586,-1.626,-.744,.078,.937,1.913,2.974,4.030,5.066,6.144,
-7.266,8.339,9.353,10.493,11.912,13.419,14.606,15.341,15.962,16.821,17.756,18.282,18.355,18.674,20.005,22.248,
-24.352,25.214,24.592,23.152,21.760,20.819,20.210,19.683,19.204,18.952,19.072,19.506,20.069,20.642,21.241,21.933,
-22.749,23.695,24.778,25.938,27.016,27.875,28.545,29.165,29.792,30.351,30.824,31.350,32.059,32.852,33.482,33.850,
-34.090,34.357,34.633,34.814,34.903,34.991,35.116,35.237,35.356,35.552,35.863,36.214,36.519,36.778,37.036,37.299,
-37.560,37.852,38.193,38.512,38.738,38.961,39.350,39.879,40.233,40.132,39.698,39.362,39.424,39.821,40.334,40.894,
-41.565,42.339,43.079,43.678,44.161,44.602,45.038,45.499,46.020,46.554,46.937,47.061,47.049,47.125,47.323,47.449,
-47.407,47.396,47.647,48.043,48.181,47.826,47.074,46.024,44.522,42.480,40.294,38.580,37.384,35.946,33.525,30.350,
-27.515,25.946,25.709,26.329,27.464,29.023,30.821,32.484,33.767,34.712,35.434,35.917,36.155,36.313,36.541,36.708,
-36.546,36.048,35.521,35.184,34.907,34.448,33.798,33.130,32.521,31.937,31.410,31.001,30.579,29.923,29.181,28.951,
-29.580,30.487,30.542,29.235,27.250,25.743,25.221,25.320,25.477,25.460,25.233,24.677,23.731,22.658,21.871,21.464,
-21.127,20.597,20.013,19.677,19.571,19.310,18.603,17.610,16.748,16.234,15.932,15.620,15.262,14.979,14.825,14.708,
-14.499,14.143,13.661,13.113,12.605,12.257,12.081,11.921,11.596,11.115,10.663,10.354,10.087,9.728,9.327,9.035,
-8.842,8.560,8.111,7.671,7.419,7.246,6.906,6.392,5.979,5.839,5.785,5.537,5.096,4.702,4.481,4.317,
-4.075,3.779,3.495,3.209,2.913,2.708,2.660,2.631,2.430,2.113,1.942,1.999,2.041,1.835,1.504,1.350,
-1.448,1.586,1.614,1.611,1.635,1.518,1.107,.596,.408,.702,1.167,1.365,1.179,.853,.656,.629,
-.622,.492,.247,.019,-.075,-.062,-.079,-.197,-.321,-.319,-.207,-.121,-.120,-.127,-.092,-.106,
--.265,-.484,-.575,-.464,-.254,-.055,.140,.370,.605,.807,1.005,1.232,1.427,1.499,1.485,1.535,
-1.742,2.060,2.419,2.830,3.313,3.784,4.121,4.314,4.477,4.700,4.960,5.194,5.392,5.599,5.847,6.136,
-6.445,6.737,6.972,7.146,7.295,7.428,7.504,7.499,7.478,7.515,7.572,7.527,7.349,7.165,7.115,7.170,
-7.180,7.057,6.869,6.744,6.734,6.796,6.876,6.983,7.201,7.590,8.077,8.449,8.545,8.444,8.380,8.478,
-8.659,8.868,9.249,9.937,10.711,11.075,10.758,9.989,9.161,8.345,7.361,6.278,5.590,5.713,6.409,6.901,
-6.566,5.450,4.110,3.074,2.521,2.338,2.345,2.407,2.447,2.436,2.393,2.348,2.304,2.225,2.084,1.901,
-1.728,1.571,1.360,1.008,.500,-.100,-.732,-1.398,-2.129,-2.907,-3.672,-4.384,-5.054,-5.700,-6.308,-6.849,
--7.325,-7.758,-8.165,-8.540,-8.883,-9.213,-9.553,-9.919,-10.314,-10.716,-11.085,-11.387,-11.644,-11.923,-12.279,-12.711,
--13.181,-13.656,-14.125,-14.579,-15.006,-15.403,-15.782,-16.164,-16.564,-16.981,-17.384,-17.731,-18.018,-18.313,-18.697,-19.168,
--19.627,-19.980,-20.239,-20.487,-20.773,-21.081,-21.392,-21.723,-22.091,-22.473,-22.841,-23.206,-23.600,-24.022,-24.446,-24.866,
--25.305,-25.765,-26.209,-26.615,-27.006,-27.411,-27.815,-28.183,-28.524,-28.879,-29.273,-29.697,-30.147,-30.641,-31.166,-31.661,
--32.080,-32.444,-32.801,-33.156,-33.485,-33.795,-34.127,-34.484,-34.809,-35.074,-35.334,-35.669,-36.079,-36.500,-36.906,-37.336,
--37.818,-38.303,-38.723,-39.075,-39.403,-39.735,-40.056,-40.363,-40.669,-40.974,-41.241,-41.453,-41.652,-41.904,-42.231,-42.609,
--43.011,-43.424,-43.829,-44.186,-44.465,-44.674,-44.849,-45.031,-45.252,-45.515,-45.783,-46.004,-46.161,-46.289,-46.434,-46.606,
--46.780,-46.932,-47.048,-47.119,-47.156,-47.210,-47.329,-47.488,-47.598,-47.597,-47.517,-47.435,-47.381,-47.329,-47.263,-47.197,
--47.133,-47.047,-46.926,-46.779,-46.601,-46.366,-46.090,-45.859,-45.732,-45.650,-45.496,-45.241,-44.963,-44.712,-44.421,-44.012,
--43.530,-43.104,-42.791,-42.519,-42.197,-41.815,-41.421,-41.035,-40.629,-40.173,-39.678,-39.195,-38.790,-38.480,-38.186,-37.792,
--37.269,-36.701,-36.147,-35.538,-34.796,-34.042,-33.533,-33.352,-33.262,-32.968,-32.449,-31.918,-31.495,-31.083,-30.583,-30.051,
--29.528,-28.874,-27.940,-26.869,-26.003,-25.434,-24.834,-23.849,-22.554,-21.345,-20.440,-19.665,-18.767,-17.765,-16.884,-16.245,
--15.767,-15.349,-14.993,-14.716,-14.442,-14.077,-13.653,-13.312,-13.166,-13.204,-13.314,-13.370,-13.325,-13.283,-13.478,-14.071,
--14.931,-15.674,-16.043,-16.209,-16.617,-17.508,-18.669,-19.695,-20.434,-21.090,-21.933,-23.025,-24.235,-25.419,-26.490,-27.360,
--27.933,-28.177,-28.136,-27.846,-27.318,-26.641,-26.046,-25.775,-25.862,-26.120,-26.322,-26.351,-26.170,-25.743,-25.075,-24.266,
--23.430,-22.552,-21.532,-20.355,-19.164,-18.098,-17.165,-16.338,-15.704,-15.401,-15.413,-15.555,-15.689,-15.846,-16.089,-16.347,
--16.515,-16.638,-16.867,-17.236,-17.653,-18.158,-18.997,-20.280,-21.654,-22.513,-22.571,-22.077,-21.427,-20.744,-19.974,-19.234,
--18.820,-18.823,-18.968,-18.952,-18.833,-18.940,-19.446,-20.199,-20.945,-21.565,-22.041,-22.366,-22.594,-22.904,-23.429,-24.058,
--24.519,-24.691,-24.692,-24.643,-24.505,-24.257,-24.110,-24.340,-24.948,-25.675,-26.409,-27.386,-28.881,-30.797,-32.736,-34.389,
--35.674,-36.533,-36.848,-36.716,-36.630,-37.154,-38.423,-40.071,-41.678,-43.114,-44.438,-45.621,-46.543,-47.196,-47.733,-48.287,
--48.835,-49.288,-49.629,-49.914,-50.177,-50.397,-50.556,-50.683,-50.814,-50.945,-51.037,-51.060,-51.047,-51.081,-51.216,-51.410,
--51.560,-51.620,-51.654,-51.731,-51.820,-51.849,-51.847,-51.939,-52.167,-52.405,-52.506,-52.486,-52.477,-52.531,-52.570,-52.528,
--52.451,-52.410,-52.379,-52.283,-52.118,-51.950,-51.802,-51.620,-51.372,-51.107,-50.889,-50.710,-50.513,-50.271,-50.003,-49.724,
--49.420,-49.073,-48.689,-48.279,-47.856,-47.441,-47.054,-46.689,-46.320,-45.928,-45.509,-45.053,-44.543,-43.997,-43.463,-42.959,
--42.431,-41.826,-41.181,-40.595,-40.100,-39.621,-39.070,-38.461,-37.864,-37.296,-36.699,-36.036,-35.338,-34.649,-33.964,-33.248,
--32.510,-31.797,-31.131,-30.480,-29.794,-29.066,-28.324,-27.586,-26.838,-26.049,-25.212,-24.347,-23.488,-22.654,-21.838,-21.015,
--20.174,-19.336,-18.532,-17.759,-16.965,-16.091,-15.147,-14.219,-13.420,-12.801,-12.340,-11.980,-11.681,-11.409,-11.115,-10.744,
--10.293,-9.823,-9.401,-9.029,-8.654,-8.234,-7.775,-7.310,-6.850,-6.396,-5.953,-5.539,-5.152,-4.763,-4.340,-3.870,
--3.364,-2.848,-2.350,-1.888,-1.451,-.999,-.491,.076,.679,1.291,1.903,2.516,3.136,3.773,4.440,5.135,
-5.834,6.511,7.156,7.772,8.361,8.936,9.525,10.147,10.787,11.398,11.955,12.477,12.994,13.499,13.956,14.352,
-14.717,15.077,15.421,15.718,15.970,16.205,16.431,16.612,16.712,16.750,16.782,16.847,16.944,17.066,17.224,17.435,
-17.697,17.993,18.314,18.670,19.061,19.467,19.861,20.220,20.545,20.851,21.169,21.517,21.886,22.237,22.541,22.803,
-23.049,23.293,23.531,23.755,23.960,24.137,24.282,24.402,24.513,24.631,24.770,24.955,25.192,25.438,25.635,25.784,
-25.954,26.193,26.452,26.692,27.033,27.720,28.878,30.334,31.756,32.922,33.828,34.565,35.201,35.776,36.312,36.744,
-36.919,36.753,36.397,36.152,36.220,36.582,37.099,37.646,38.129,38.445,38.528,38.414,38.192,37.905,37.541,37.098,
-36.595,36.035,35.436,34.909,34.589,34.442,34.218,33.701,32.972,32.322,31.910,31.622,31.271,30.840,30.432,30.075,
-29.688,29.220,28.724,28.264,27.838,27.403,26.948,26.495,26.065,25.685,25.392,25.200,25.074,24.979,24.922,24.924,
-24.992,25.147,25.457,25.948,26.498,26.894,27.049,27.107,27.289,27.679,28.207,28.787,29.388,29.976,30.111,30.694,
-31.057,31.250,31.395,31.531,31.622,31.673,31.757,31.928,32.172,32.431,32.641,32.737,32.693,32.554,32.413,32.325,
-32.314,32.464,32.900,33.574,34.121,34.084,33.351,32.327,31.579,31.346,31.420,31.486,31.466,31.503,31.674,31.827,
-31.719,31.264,30.580,29.832,29.106,28.464,28.039,27.937,28.056,28.112,27.894,27.453,26.974,26.530,26.054,25.529,
-25.067,24.774,24.631,24.565,24.544,24.528,24.429,24.242,24.177,24.494,25.176,25.889,26.326,26.484,26.550,26.641,
-26.791,27.072,27.521,27.938,27.985,27.558,26.935,26.444,26.095,25.678,25.097,24.415,23.620,22.585,21.337,20.163,
-19.301,18.644,17.904,17.019,16.214,15.657,15.260,14.859,14.442,14.088,13.800,13.534,13.339,13.319,13.457,13.623,
-13.768,14.003,14.392,14.791,14.992,14.967,14.864,14.766,14.585,14.231,13.795,13.474,13.369,13.397,13.390,13.235,
-12.936,12.595,12.324,12.130,11.887,11.465,10.902,10.381,10.046,9.872,9.743,9.601,9.457,9.312,9.160,9.046,
-9.032,9.091,9.130,9.190,9.515,10.272,11.240,11.893,11.885,11.355,10.699,10.128,9.557,8.877,8.158,7.520,
-6.953,6.391,5.903,5.656,5.652,5.641,5.384,4.951,4.656,4.707,5.009,5.324,5.551,5.762,6.003,6.169,
-6.116,5.843,5.498,5.202,4.939,4.636,4.285,3.912,3.460,2.817,1.991,1.181,.561,.050,-.605,-1.500,
--2.469,-3.344,-4.208,-5.239,-6.397,-7.448,-8.324,-9.290,-10.629,-12.302,-14.044,-15.738,-17.495,-19.365,-21.164,-22.686,
--23.965,-25.195,-26.446,-27.607,-28.594,-29.470,-30.310,-31.062,-31.620,-31.989,-32.284,-32.596,-32.922,-33.231,-33.511,-33.764,
--33.967,-34.081,-34.081,-33.976,-33.817,-33.671,-33.552,-33.410,-33.218,-33.051,-33.010,-33.082,-33.182,-33.308,-33.536,-33.776,
--33.700,-33.083,-32.161,-31.417,-31.006,-30.582,-29.831,-28.945,-28.398,-28.388,-28.798,-29.657,-31.268,-33.684,-36.289,-38.222,
--39.185,-39.619,-40.088,-40.733,-41.419,-42.168,-43.200,-44.557,-45.870,-46.565,-46.265,-45.068,-43.564,-42.560,-42.584,-43.507,
--44.691,-45.603,-46.255,-47.011,-48.031,-49.054,-49.712,-49.922,-49.917,-49.967,-50.183,-50.526,-50.916,-51.302,-51.686,-52.077,
--52.423,-52.614,-52.599,-52.503,-52.544,-52.821,-53.233,-53.627,-53.979,-54.364,-54.827,-55.338,-55.858,-56.349,-56.734,-56.955,
--57.109,-57.409,-57.933,-58.456,-58.659,-58.494,-58.232,-58.141,-58.233,-58.368,-58.503,-58.708,-58.993,-59.259,-59.438,-59.558,
--59.639,-59.622,-59.492,-59.389,-59.483,-59.742,-59.944,-59.926,-59.715,-59.404,-59.015,-58.583,-58.283,-58.317,-58.666,-59.068,
--59.286,-59.342,-59.437,-59.697,-60.073,-60.432,-60.676,-60.776,-60.762,-60.686,-60.565,-60.353,-60.007,-59.568,-59.126,-58.683,
--58.135,-57.450,-56.799,-56.434,-56.442,-56.681,-56.958,-57.188,-57.380,-57.552,-57.701,-57.823,-57.882,-57.792,-57.493,-57.061,
--56.681,-56.492,-56.485,-56.525,-56.452,-56.182,-55.773,-55.403,-55.229,-55.224,-55.200,-55.011,-54.693,-54.338,-53.912,-53.290,
--52.467,-51.611,-50.901,-50.405,-50.174,-50.308,-50.795,-51.350,-51.581,-51.365,-50.934,-50.538,-50.115,-49.411,-48.327,-47.057,
--45.891,-44.995,-44.386,-43.986,-43.634,-43.140,-42.451,-41.741,-41.250,-41.002,-40.760,-40.273,-39.542,-38.796,-38.248,-37.910,
--37.626,-37.254,-36.781,-36.284,-35.769,-35.118,-34.227,-33.204,-32.365,-31.943,-31.843,-31.749,-31.471,-31.114,-30.868,-30.738,
--30.555,-30.230,-29.856,-29.547,-29.278,-28.939,-28.499,-28.042,-27.646,-27.308,-26.974,-26.582,-26.080,-25.440,-24.709,-23.976,
--23.265,-22.500,-21.614,-20.662,-19.743,-18.860,-17.914,-16.872,-15.826,-14.855,-13.911,-12.930,-11.982,-11.201,-10.561,-9.839,
--8.875,-7.759,-6.711,-5.817,-4.975,-4.071,-3.109,-2.162,-1.277,-.450,.366,1.249,2.256,3.353,4.441,5.490,
-6.580,7.759,8.943,10.048,11.147,12.357,13.586,14.598,15.369,16.183,17.208,18.141,18.548,18.546,18.862,20.050,
-21.802,23.217,23.680,23.319,22.684,22.186,21.914,21.763,21.596,21.345,21.107,21.122,21.548,22.254,22.951,23.510,
-24.079,24.861,25.861,26.900,27.801,28.494,28.998,29.396,29.803,30.294,30.851,31.426,32.029,32.694,33.360,33.890,
-34.224,34.451,34.667,34.843,34.895,34.852,34.849,34.971,35.178,35.409,35.662,35.949,36.241,36.515,36.806,37.150,
-37.510,37.823,38.096,38.376,38.647,38.856,39.044,39.355,39.812,40.198,40.254,40.001,39.755,39.818,40.227,40.832,
-41.510,42.222,42.924,43.545,44.055,44.485,44.869,45.232,45.633,46.138,46.686,47.082,47.215,47.223,47.321,47.499,
-47.532,47.351,47.239,47.500,48.021,48.360,48.245,47.791,47.129,46.090,44.489,42.609,41.032,39.875,38.478,36.089,
-32.784,29.465,27.006,25.647,25.229,25.689,27.038,29.014,31.078,32.807,34.128,35.124,35.821,36.270,36.629,36.988,
-37.186,37.009,36.539,36.102,35.841,35.550,35.029,34.397,33.898,33.531,33.090,32.517,31.956,31.446,30.820,30.048,
-29.445,29.285,29.322,28.979,28.059,26.999,26.333,26.117,26.045,25.937,25.813,25.561,24.883,23.736,22.579,21.921,
-21.719,21.462,20.871,20.234,19.932,19.844,19.476,18.658,17.830,17.513,17.653,17.667,17.131,16.231,15.488,15.168,
-15.117,15.068,14.938,14.754,14.467,13.989,13.379,12.815,12.373,11.948,11.460,11.027,10.805,10.736,10.592,10.261,
-9.862,9.519,9.179,8.751,8.297,7.939,7.646,7.270,6.829,6.541,6.504,6.495,6.236,5.763,5.367,5.194,
-5.086,4.850,4.502,4.160,3.854,3.563,3.343,3.240,3.131,2.850,2.470,2.270,2.340,2.416,2.233,1.918,
-1.831,2.064,2.333,2.365,2.178,1.909,1.562,1.138,.869,1.060,1.651,2.141,2.069,1.477,.825,.492,
-.483,.556,.522,.395,.315,.376,.520,.588,.505,.380,.378,.506,.619,.629,.608,.634,
-.641,.509,.273,.102,.098,.200,.312,.433,.603,.809,1.011,1.215,1.435,1.612,1.680,1.679,
-1.748,1.963,2.276,2.627,3.029,3.505,3.984,4.360,4.617,4.837,5.081,5.334,5.558,5.751,5.931,6.117,
-6.337,6.620,6.935,7.210,7.411,7.579,7.737,7.830,7.820,7.795,7.882,8.058,8.142,8.018,7.788,7.651,
-7.676,7.763,7.797,7.755,7.679,7.619,7.614,7.668,7.733,7.749,7.725,7.724,7.771,7.808,7.773,7.681,
-7.582,7.514,7.552,7.824,8.353,8.910,9.162,9.020,8.711,8.442,8.142,7.698,7.360,7.650,8.725,9.961,
-10.353,9.368,7.353,5.159,3.465,2.470,2.040,1.969,2.075,2.182,2.147,1.946,1.691,1.520,1.460,1.422,
-1.325,1.190,1.078,.971,.759,.363,-.170,-.747,-1.343,-2.000,-2.730,-3.470,-4.160,-4.806,-5.444,-6.066,
--6.631,-7.125,-7.578,-8.012,-8.415,-8.770,-9.100,-9.455,-9.861,-10.295,-10.699,-11.018,-11.248,-11.440,-11.675,-12.008,
--12.442,-12.935,-13.439,-13.919,-14.360,-14.772,-15.180,-15.596,-16.015,-16.423,-16.816,-17.187,-17.518,-17.815,-18.134,-18.543,
--19.034,-19.511,-19.888,-20.177,-20.457,-20.775,-21.118,-21.467,-21.832,-22.217,-22.592,-22.935,-23.272,-23.647,-24.059,-24.471,
--24.867,-25.268,-25.694,-26.128,-26.552,-26.970,-27.386,-27.781,-28.138,-28.479,-28.847,-29.257,-29.701,-30.182,-30.710,-31.254,
--31.741,-32.126,-32.447,-32.776,-33.129,-33.476,-33.807,-34.148,-34.502,-34.825,-35.096,-35.363,-35.700,-36.107,-36.522,-36.914,
--37.319,-37.770,-38.232,-38.641,-38.977,-39.280,-39.593,-39.928,-40.279,-40.634,-40.958,-41.216,-41.415,-41.617,-41.882,-42.216,
--42.583,-42.961,-43.352,-43.746,-44.095,-44.353,-44.518,-44.647,-44.824,-45.096,-45.439,-45.768,-46.009,-46.171,-46.322,-46.502,
--46.681,-46.818,-46.921,-47.029,-47.146,-47.241,-47.310,-47.393,-47.507,-47.604,-47.625,-47.569,-47.486,-47.412,-47.359,-47.328,
--47.307,-47.257,-47.146,-47.000,-46.875,-46.754,-46.555,-46.248,-45.942,-45.763,-45.686,-45.563,-45.307,-44.987,-44.689,-44.388,
--44.002,-43.546,-43.134,-42.837,-42.593,-42.293,-41.902,-41.471,-41.053,-40.646,-40.207,-39.695,-39.141,-38.653,-38.321,-38.100,
--37.813,-37.335,-36.728,-36.149,-35.651,-35.160,-34.645,-34.184,-33.819,-33.445,-32.942,-32.362,-31.861,-31.469,-31.063,-30.581,
--30.108,-29.668,-29.064,-28.117,-26.999,-26.112,-25.587,-25.083,-24.189,-22.934,-21.703,-20.732,-19.874,-18.899,-17.847,-16.941,
--16.272,-15.734,-15.237,-14.825,-14.526,-14.229,-13.819,-13.363,-13.065,-13.023,-13.118,-13.156,-13.066,-12.935,-12.932,-13.223,
--13.863,-14.702,-15.420,-15.794,-15.962,-16.326,-17.136,-18.222,-19.201,-19.915,-20.578,-21.480,-22.666,-23.939,-25.099,-26.068,
--26.816,-27.286,-27.440,-27.309,-26.954,-26.432,-25.868,-25.476,-25.417,-25.606,-25.753,-25.613,-25.161,-24.485,-23.628,-22.603,
--21.509,-20.506,-19.653,-18.883,-18.149,-17.508,-17.003,-16.550,-16.050,-15.556,-15.224,-15.090,-15.041,-15.009,-15.087,-15.336,
--15.608,-15.688,-15.598,-15.616,-15.979,-16.716,-17.771,-19.121,-20.598,-21.730,-22.024,-21.457,-20.516,-19.670,-18.944,-18.140,
--17.330,-16.877,-16.948,-17.250,-17.395,-17.385,-17.567,-18.157,-18.997,-19.797,-20.428,-20.916,-21.285,-21.578,-21.945,-22.537,
--23.288,-23.927,-24.257,-24.316,-24.246,-24.120,-24.006,-24.073,-24.466,-25.098,-25.747,-26.398,-27.329,-28.775,-30.624,-32.548,
--34.298,-35.707,-36.535,-36.594,-36.132,-35.850,-36.333,-37.543,-39.015,-40.464,-41.983,-43.653,-45.242,-46.433,-47.227,-47.900,
--48.618,-49.272,-49.708,-49.960,-50.173,-50.396,-50.556,-50.616,-50.646,-50.731,-50.867,-50.966,-50.954,-50.852,-50.780,-50.855,
--51.066,-51.274,-51.373,-51.413,-51.519,-51.699,-51.837,-51.873,-51.907,-52.049,-52.264,-52.423,-52.483,-52.511,-52.539,-52.505,
--52.379,-52.237,-52.161,-52.114,-51.997,-51.797,-51.596,-51.442,-51.293,-51.113,-50.931,-50.781,-50.623,-50.397,-50.116,-49.847,
--49.613,-49.363,-49.038,-48.636,-48.196,-47.755,-47.339,-46.957,-46.594,-46.226,-45.842,-45.448,-45.028,-44.546,-44.000,-43.450,
--42.944,-42.450,-41.901,-41.303,-40.750,-40.305,-39.907,-39.451,-38.904,-38.328,-37.768,-37.194,-36.550,-35.837,-35.119,-34.445,
--33.811,-33.172,-32.493,-31.767,-31.012,-30.246,-29.478,-28.706,-27.929,-27.143,-26.341,-25.517,-24.681,-23.850,-23.028,-22.205,
--21.380,-20.579,-19.824,-19.092,-18.320,-17.460,-16.534,-15.611,-14.754,-13.994,-13.339,-12.805,-12.407,-12.130,-11.906,-11.634,
--11.249,-10.769,-10.284,-9.865,-9.503,-9.135,-8.725,-8.292,-7.865,-7.439,-6.988,-6.516,-6.058,-5.638,-5.236,-4.814,
--4.350,-3.853,-3.345,-2.846,-2.363,-1.893,-1.417,-.916,-.373,.220,.863,1.538,2.219,2.891,3.567,4.266,
-4.981,5.682,6.356,7.018,7.681,8.330,8.946,9.549,10.180,10.843,11.486,12.065,12.593,13.113,13.625,14.086,
-14.474,14.821,15.167,15.509,15.811,16.060,16.283,16.491,16.658,16.756,16.801,16.842,16.906,16.987,17.080,17.203,
-17.373,17.587,17.833,18.112,18.433,18.788,19.153,19.518,19.884,20.245,20.587,20.918,21.275,21.678,22.095,22.465,
-22.761,23.003,23.231,23.456,23.673,23.866,24.027,24.153,24.249,24.327,24.396,24.468,24.573,24.741,24.949,25.142,
-25.303,25.477,25.695,25.907,26.089,26.405,27.147,28.437,30.037,31.541,32.727,33.663,34.487,35.216,35.789,36.186,
-36.402,36.387,36.126,35.779,35.612,35.759,36.129,36.565,37.013,37.463,37.834,38.001,37.952,37.788,37.586,37.319,
-36.940,36.466,35.942,35.401,34.894,34.493,34.191,33.844,33.320,32.685,32.149,31.810,31.547,31.200,30.769,30.356,
-29.984,29.568,29.064,28.539,28.066,27.638,27.208,26.775,26.374,26.014,25.683,25.392,25.167,25.017,24.913,24.832,
-24.772,24.774,24.924,25.307,25.905,26.535,26.987,27.222,27.393,27.651,28.002,28.389,28.842,29.433,30.111,30.278,
-30.877,31.171,31.225,31.227,31.273,31.341,31.420,31.557,31.782,32.053,32.287,32.419,32.413,32.272,32.056,31.868,
-31.773,31.792,31.958,32.323,32.819,33.164,33.024,32.335,31.429,30.765,30.546,30.604,30.657,30.621,30.632,30.800,
-31.013,31.027,30.714,30.157,29.506,28.821,28.132,27.580,27.347,27.426,27.547,27.434,27.061,26.593,26.135,25.654,
-25.139,24.688,24.384,24.191,24.042,23.942,23.899,23.844,23.745,23.751,24.074,24.698,25.356,25.836,26.176,26.497,
-26.799,27.051,27.349,27.777,28.155,28.161,27.767,27.328,27.113,26.919,26.347,25.333,24.180,23.102,21.998,20.758,
-19.558,18.653,18.029,17.433,16.724,16.011,15.424,14.946,14.511,14.130,13.829,13.568,13.326,13.192,13.249,13.415,
-13.550,13.684,14.002,14.536,15.034,15.234,15.160,15.030,14.921,14.694,14.258,13.768,13.467,13.401,13.395,13.266,
-12.991,12.667,12.383,12.163,11.964,11.711,11.346,10.897,10.465,10.146,9.951,9.825,9.705,9.547,9.338,9.127,
-9.011,9.032,9.101,9.106,9.117,9.386,10.056,10.902,11.476,11.525,11.178,10.708,10.212,9.625,8.962,8.367,
-7.889,7.372,6.676,5.953,5.519,5.462,5.483,5.241,4.756,4.381,4.388,4.692,5.022,5.255,5.490,5.814,
-6.110,6.175,5.965,5.641,5.361,5.096,4.709,4.168,3.589,3.045,2.435,1.626,.676,-.193,-.856,-1.425,
--2.099,-2.937,-3.878,-4.891,-5.985,-7.103,-8.134,-9.096,-10.187,-11.578,-13.219,-14.930,-16.644,-18.419,-20.233,-21.911,
--23.325,-24.546,-25.720,-26.873,-27.923,-28.856,-29.742,-30.592,-31.307,-31.820,-32.197,-32.546,-32.887,-33.177,-33.417,-33.652,
--33.888,-34.074,-34.178,-34.212,-34.194,-34.132,-34.050,-33.975,-33.896,-33.784,-33.680,-33.687,-33.835,-34.039,-34.207,-34.323,
--34.337,-34.089,-33.492,-32.740,-32.162,-31.820,-31.453,-30.877,-30.278,-29.938,-29.851,-29.869,-30.187,-31.312,-33.406,-35.879,
--37.891,-39.137,-39.921,-40.544,-40.974,-41.207,-41.642,-42.756,-44.437,-45.887,-46.282,-45.465,-44.019,-42.792,-42.384,-42.905,
--44.017,-45.230,-46.267,-47.203,-48.248,-49.407,-50.417,-51.014,-51.200,-51.222,-51.343,-51.647,-52.033,-52.342,-52.512,-52.635,
--52.847,-53.144,-53.348,-53.316,-53.144,-53.090,-53.297,-53.673,-54.058,-54.433,-54.884,-55.434,-56.003,-56.517,-56.971,-57.370,
--57.700,-57.997,-58.361,-58.823,-59.229,-59.376,-59.250,-59.056,-58.989,-59.071,-59.226,-59.438,-59.734,-60.050,-60.256,-60.302,
--60.261,-60.198,-60.076,-59.862,-59.639,-59.531,-59.538,-59.543,-59.470,-59.347,-59.201,-59.008,-58.810,-58.774,-59.027,-59.450,
--59.775,-59.894,-59.979,-60.254,-60.714,-61.153,-61.396,-61.435,-61.359,-61.252,-61.157,-61.061,-60.891,-60.573,-60.130,-59.662,
--59.213,-58.713,-58.106,-57.503,-57.106,-57.009,-57.130,-57.346,-57.605,-57.901,-58.189,-58.403,-58.505,-58.466,-58.243,-57.832,
--57.349,-56.979,-56.823,-56.823,-56.831,-56.726,-56.461,-56.086,-55.738,-55.551,-55.526,-55.509,-55.344,-55.003,-54.532,-53.938,
--53.207,-52.406,-51.659,-51.018,-50.481,-50.163,-50.302,-50.935,-51.660,-51.930,-51.594,-51.014,-50.564,-50.168,-49.454,-48.273,
--46.901,-45.736,-44.935,-44.389,-43.928,-43.437,-42.854,-42.195,-41.572,-41.099,-40.748,-40.352,-39.794,-39.126,-38.502,-38.023,
--37.680,-37.405,-37.130,-36.796,-36.359,-35.791,-35.067,-34.198,-33.296,-32.584,-32.223,-32.120,-31.967,-31.556,-31.001,-30.584,
--30.418,-30.346,-30.160,-29.841,-29.509,-29.224,-28.916,-28.501,-27.990,-27.454,-26.943,-26.455,-25.955,-25.391,-24.728,-23.993,
--23.251,-22.526,-21.769,-20.950,-20.126,-19.350,-18.563,-17.650,-16.619,-15.613,-14.704,-13.779,-12.731,-11.660,-10.766,-10.043,
--9.259,-8.261,-7.183,-6.239,-5.436,-4.595,-3.639,-2.678,-1.818,-1.019,-.181,.723,1.679,2.706,3.810,4.927,
-6.012,7.127,8.345,9.605,10.767,11.805,12.804,13.776,14.635,15.412,16.302,17.340,18.195,18.543,18.600,18.994,
-20.029,21.290,22.140,22.420,22.455,22.532,22.655,22.770,22.928,23.101,23.105,22.922,22.909,23.431,24.346,25.121,
-25.493,25.770,26.382,27.329,28.242,28.876,29.308,29.711,30.129,30.548,31.011,31.558,32.135,32.664,33.153,33.655,
-34.150,34.548,34.803,34.944,34.994,34.958,34.886,34.890,35.042,35.299,35.580,35.847,36.103,36.342,36.571,36.845,
-37.208,37.611,37.956,38.222,38.476,38.756,39.008,39.189,39.365,39.623,39.914,40.078,40.051,39.978,40.099,40.545,
-41.261,42.088,42.860,43.481,43.952,44.349,44.735,45.104,45.442,45.805,46.274,46.791,47.171,47.314,47.352,47.466,
-47.613,47.582,47.358,47.274,47.641,48.304,48.761,48.717,48.335,47.858,47.205,46.133,44.720,43.358,42.189,40.780,
-38.580,35.592,32.391,29.555,27.303,25.744,25.160,25.790,27.430,29.484,31.432,33.101,34.491,35.566,36.316,36.852,
-37.262,37.457,37.319,36.955,36.618,36.372,36.026,35.474,34.902,34.531,34.276,33.871,33.268,32.671,32.189,31.660,
-30.941,30.164,29.529,28.976,28.298,27.531,26.972,26.753,26.621,26.297,25.865,25.569,25.323,24.747,23.743,22.774,
-22.333,22.288,22.039,21.300,20.459,20.012,19.860,19.458,18.627,17.927,18.004,18.706,19.113,18.498,17.104,15.832,
-15.294,15.342,15.495,15.543,15.582,15.599,15.348,14.675,13.772,12.953,12.312,11.752,11.281,11.051,11.082,11.121,
-10.917,10.507,10.102,9.763,9.361,8.817,8.234,7.730,7.317,7.002,6.872,6.939,6.993,6.780,6.332,5.939,
-5.786,5.739,5.572,5.252,4.899,4.576,4.268,3.995,3.801,3.621,3.333,2.980,2.766,2.758,2.745,2.533,
-2.276,2.303,2.648,2.952,2.875,2.444,1.915,1.475,1.241,1.379,1.976,2.747,3.119,2.750,1.874,1.060,
-.677,.676,.814,.934,1.030,1.151,1.311,1.447,1.455,1.298,1.087,.993,1.053,1.135,1.127,1.071,
-1.071,1.116,1.097,.973,.823,.719,.658,.629,.672,.817,1.010,1.187,1.352,1.544,1.737,1.869,
-1.948,2.056,2.245,2.493,2.782,3.146,3.597,4.064,4.465,4.791,5.072,5.301,5.459,5.597,5.805,6.098,
-6.401,6.662,6.912,7.173,7.400,7.555,7.688,7.863,8.037,8.119,8.121,8.162,8.300,8.451,8.504,8.462,
-8.402,8.366,8.347,8.340,8.345,8.331,8.270,8.205,8.209,8.271,8.290,8.215,8.113,8.065,8.047,7.974,
-7.822,7.644,7.503,7.451,7.539,7.744,7.904,7.838,7.571,7.346,7.361,7.606,8.058,8.909,10.373,12.186,
-13.500,13.455,11.902,9.506,7.171,5.411,4.227,3.407,2.807,2.370,2.004,1.576,1.044,.550,.312,.394,
-.623,.756,.711,.590,.488,.354,.080,-.347,-.847,-1.377,-1.968,-2.639,-3.331,-3.981,-4.594,-5.218,
--5.850,-6.435,-6.943,-7.403,-7.844,-8.259,-8.627,-8.970,-9.340,-9.759,-10.188,-10.554,-10.813,-10.988,-11.151,-11.381,
--11.722,-12.168,-12.677,-13.196,-13.680,-14.111,-14.515,-14.935,-15.386,-15.838,-16.252,-16.623,-16.968,-17.298,-17.622,-17.976,
--18.400,-18.884,-19.355,-19.746,-20.068,-20.381,-20.723,-21.093,-21.481,-21.889,-22.299,-22.670,-22.992,-23.307,-23.665,-24.063,
--24.460,-24.834,-25.206,-25.600,-26.017,-26.447,-26.888,-27.325,-27.729,-28.090,-28.443,-28.836,-29.282,-29.762,-30.266,-30.797,
--31.328,-31.795,-32.161,-32.461,-32.765,-33.104,-33.462,-33.825,-34.198,-34.565,-34.888,-35.153,-35.413,-35.736,-36.123,-36.517,
--36.883,-37.252,-37.660,-38.093,-38.498,-38.847,-39.167,-39.501,-39.874,-40.275,-40.665,-40.997,-41.249,-41.450,-41.668,-41.947,
--42.275,-42.615,-42.956,-43.313,-43.685,-44.028,-44.286,-44.451,-44.578,-44.761,-45.053,-45.417,-45.745,-45.966,-46.113,-46.280,
--46.499,-46.705,-46.828,-46.892,-46.984,-47.134,-47.287,-47.386,-47.440,-47.491,-47.551,-47.588,-47.579,-47.526,-47.449,-47.383,
--47.356,-47.357,-47.312,-47.174,-46.990,-46.860,-46.787,-46.653,-46.377,-46.048,-45.823,-45.729,-45.623,-45.384,-45.042,-44.696,
--44.367,-44.003,-43.600,-43.224,-42.916,-42.636,-42.313,-41.925,-41.501,-41.071,-40.640,-40.190,-39.693,-39.147,-38.624,-38.229,
--37.970,-37.704,-37.274,-36.688,-36.099,-35.616,-35.203,-34.775,-34.320,-33.852,-33.339,-32.762,-32.201,-31.768,-31.435,-31.059,
--30.587,-30.115,-29.666,-29.042,-28.056,-26.891,-25.994,-25.556,-25.237,-24.536,-23.359,-22.057,-20.947,-19.985,-18.974,-17.913,
--16.989,-16.291,-15.722,-15.189,-14.728,-14.377,-14.032,-13.567,-13.048,-12.697,-12.627,-12.701,-12.706,-12.586,-12.473,-12.537,
--12.871,-13.479,-14.249,-14.948,-15.366,-15.558,-15.856,-16.551,-17.568,-18.554,-19.295,-19.957,-20.853,-22.067,-23.386,-24.549,
--25.452,-26.100,-26.484,-26.577,-26.409,-26.052,-25.589,-25.152,-24.933,-25.028,-25.238,-25.137,-24.438,-23.249,-21.927,-20.734,
--19.705,-18.810,-18.072,-17.506,-17.047,-16.631,-16.288,-16.073,-15.925,-15.716,-15.408,-15.078,-14.793,-14.552,-14.398,-14.446,
--14.696,-14.914,-14.840,-14.553,-14.479,-15.010,-16.174,-17.713,-19.304,-20.618,-21.282,-21.080,-20.244,-19.342,-18.755,-18.336,
--17.738,-16.970,-16.440,-16.428,-16.742,-17.003,-17.142,-17.414,-17.981,-18.694,-19.323,-19.824,-20.275,-20.676,-20.977,-21.267,
--21.740,-22.445,-23.170,-23.648,-23.790,-23.701,-23.566,-23.618,-24.086,-25.021,-26.162,-27.142,-27.860,-28.550,-29.469,-30.661,
--32.068,-33.665,-35.290,-36.489,-36.855,-36.565,-36.354,-36.801,-37.816,-38.963,-40.107,-41.441,-42.962,-44.277,-45.094,-45.654,
--46.454,-47.617,-48.790,-49.610,-50.067,-50.355,-50.558,-50.636,-50.602,-50.573,-50.632,-50.752,-50.851,-50.855,-50.744,-50.586,
--50.533,-50.689,-50.982,-51.232,-51.358,-51.444,-51.581,-51.720,-51.774,-51.776,-51.844,-52.017,-52.217,-52.363,-52.443,-52.452,
--52.356,-52.171,-51.996,-51.905,-51.846,-51.715,-51.502,-51.282,-51.094,-50.911,-50.725,-50.588,-50.512,-50.416,-50.214,-49.937,
--49.683,-49.480,-49.250,-48.918,-48.494,-48.045,-47.615,-47.209,-46.819,-46.434,-46.047,-45.670,-45.317,-44.961,-44.529,-43.984,
--43.389,-42.846,-42.381,-41.928,-41.435,-40.939,-40.503,-40.116,-39.700,-39.205,-38.656,-38.102,-37.538,-36.917,-36.222,-35.508,
--34.861,-34.310,-33.785,-33.178,-32.447,-31.642,-30.842,-30.065,-29.276,-28.447,-27.596,-26.755,-25.933,-25.122,-24.309,-23.484,
--22.637,-21.784,-20.972,-20.232,-19.518,-18.734,-17.833,-16.876,-15.968,-15.167,-14.460,-13.826,-13.283,-12.872,-12.591,-12.369,
--12.106,-11.738,-11.282,-10.813,-10.393,-10.018,-9.643,-9.248,-8.852,-8.466,-8.060,-7.600,-7.096,-6.600,-6.143,-5.706,
--5.249,-4.764,-4.269,-3.782,-3.302,-2.815,-2.319,-1.815,-1.307,-.780,-.203,.441,1.137,1.840,2.523,3.204,
-3.910,4.633,5.338,6.015,6.700,7.421,8.152,8.844,9.497,10.155,10.836,11.501,12.108,12.665,13.211,13.745,
-14.221,14.614,14.961,15.316,15.678,16.003,16.261,16.470,16.650,16.797,16.897,16.962,17.018,17.081,17.148,17.228,
-17.342,17.494,17.668,17.858,18.085,18.363,18.672,18.988,19.314,19.676,20.064,20.433,20.766,21.108,21.508,21.948,
-22.358,22.691,22.958,23.193,23.406,23.592,23.749,23.883,23.992,24.076,24.135,24.167,24.176,24.196,24.278,24.434,
-24.625,24.818,25.031,25.279,25.518,25.747,26.151,27.023,28.447,30.118,31.592,32.695,33.592,34.469,35.279,35.848,
-36.124,36.181,36.079,35.836,35.554,35.415,35.505,35.748,36.047,36.413,36.860,37.266,37.460,37.429,37.321,37.226,
-37.068,36.745,36.284,35.778,35.258,34.709,34.178,33.733,33.353,32.939,32.469,32.041,31.722,31.440,31.083,30.655,
-30.237,29.849,29.434,28.969,28.507,28.084,27.667,27.225,26.798,26.442,26.145,25.856,25.572,25.343,25.190,25.073,
-24.946,24.821,24.782,24.938,25.353,25.966,26.596,27.072,27.385,27.656,27.969,28.286,28.582,28.964,29.555,30.278,
-30.432,30.962,31.182,31.167,31.117,31.135,31.205,31.311,31.502,31.801,32.127,32.336,32.335,32.134,31.822,31.524,
-31.334,31.280,31.347,31.528,31.820,32.138,32.277,32.035,31.410,30.643,30.043,29.759,29.701,29.689,29.650,29.669,
-29.836,30.083,30.214,30.089,29.742,29.273,28.703,28.034,27.404,27.047,27.029,27.117,27.014,26.653,26.176,25.695,
-25.195,24.678,24.238,23.927,23.673,23.410,23.202,23.137,23.179,23.246,23.379,23.698,24.184,24.685,25.153,25.720,
-26.439,27.123,27.575,27.855,28.132,28.354,28.328,28.130,28.108,28.340,28.313,27.426,25.715,23.832,22.299,21.070,
-19.863,18.675,17.751,17.189,16.810,16.398,15.887,15.302,14.688,14.130,13.741,13.518,13.343,13.163,13.082,13.183,
-13.357,13.468,13.620,14.062,14.794,15.458,15.715,15.602,15.399,15.209,14.885,14.347,13.787,13.458,13.364,13.277,
-13.033,12.691,12.395,12.184,11.988,11.747,11.476,11.210,10.947,10.659,10.359,10.102,9.938,9.839,9.709,9.489,
-9.243,9.107,9.129,9.203,9.205,9.183,9.335,9.763,10.308,10.699,10.818,10.737,10.523,10.115,9.494,8.853,
-8.445,8.245,7.908,7.173,6.226,5.528,5.284,5.222,4.951,4.455,4.093,4.144,4.498,4.843,5.067,5.338,
-5.790,6.265,6.454,6.257,5.899,5.628,5.402,4.952,4.151,3.208,2.416,1.795,1.105,.183,-.829,-1.679,
--2.317,-2.931,-3.713,-4.680,-5.739,-6.807,-7.845,-8.848,-9.883,-11.078,-12.517,-14.152,-15.872,-17.624,-19.389,-21.084,
--22.583,-23.869,-25.056,-26.226,-27.327,-28.283,-29.146,-30.007,-30.836,-31.501,-31.971,-32.364,-32.774,-33.150,-33.420,-33.636,
--33.895,-34.170,-34.334,-34.350,-34.316,-34.325,-34.370,-34.404,-34.430,-34.460,-34.473,-34.471,-34.530,-34.702,-34.925,-35.067,
--35.050,-34.849,-34.431,-33.808,-33.136,-32.618,-32.280,-31.970,-31.639,-31.455,-31.519,-31.636,-31.600,-31.659,-32.395,-34.045,
--36.154,-38.045,-39.453,-40.469,-41.055,-41.032,-40.636,-40.705,-41.935,-44.003,-45.703,-46.038,-45.088,-43.802,-43.123,-43.380,
--44.330,-45.546,-46.721,-47.780,-48.811,-49.897,-50.972,-51.825,-52.291,-52.410,-52.431,-52.624,-53.072,-53.598,-53.917,-53.905,
--53.737,-53.702,-53.884,-54.070,-54.026,-53.796,-53.640,-53.730,-53.999,-54.323,-54.721,-55.285,-55.971,-56.593,-57.026,-57.341,
--57.688,-58.133,-58.635,-59.134,-59.575,-59.879,-59.974,-59.892,-59.764,-59.700,-59.711,-59.784,-59.951,-60.235,-60.552,-60.751,
--60.767,-60.664,-60.523,-60.340,-60.087,-59.795,-59.537,-59.350,-59.243,-59.244,-59.358,-59.496,-59.538,-59.511,-59.604,-59.925,
--60.325,-60.566,-60.645,-60.818,-61.259,-61.820,-62.197,-62.262,-62.138,-61.997,-61.892,-61.793,-61.658,-61.434,-61.067,-60.567,
--60.037,-59.560,-59.108,-58.618,-58.122,-57.743,-57.563,-57.563,-57.708,-57.998,-58.399,-58.797,-59.061,-59.136,-59.027,-58.732,
--58.274,-57.764,-57.365,-57.155,-57.080,-57.032,-56.949,-56.805,-56.594,-56.349,-56.141,-56.012,-55.908,-55.726,-55.383,-54.831,
--54.064,-53.170,-52.336,-51.677,-51.111,-50.537,-50.142,-50.345,-51.250,-52.298,-52.701,-52.226,-51.373,-50.699,-50.173,-49.345,
--48.031,-46.578,-45.446,-44.732,-44.201,-43.641,-43.037,-42.462,-41.951,-41.498,-41.068,-40.591,-40.005,-39.349,-38.750,-38.282,
--37.901,-37.545,-37.235,-37.005,-36.761,-36.342,-35.700,-34.961,-34.274,-33.690,-33.218,-32.889,-32.666,-32.357,-31.779,-31.012,
--30.396,-30.175,-30.232,-30.237,-30.018,-29.679,-29.376,-29.102,-28.726,-28.173,-27.484,-26.733,-25.965,-25.201,-24.456,-23.731,
--23.015,-22.302,-21.600,-20.908,-20.234,-19.598,-18.975,-18.270,-17.398,-16.407,-15.442,-14.544,-13.591,-12.492,-11.362,-10.385,
--9.540,-8.623,-7.564,-6.549,-5.743,-5.032,-4.185,-3.194,-2.269,-1.505,-.745,.174,1.199,2.204,3.201,4.293,
-5.472,6.637,7.777,8.980,10.243,11.417,12.393,13.214,13.961,14.667,15.406,16.298,17.282,18.024,18.300,18.396,
-18.852,19.784,20.740,21.326,21.698,22.218,22.854,23.269,23.402,23.567,23.903,24.127,24.078,24.154,24.843,25.958,
-26.768,26.934,26.938,27.400,28.288,29.085,29.536,29.884,30.392,30.985,31.473,31.874,32.325,32.815,33.216,33.536,
-33.921,34.416,34.857,35.082,35.110,35.078,35.070,35.092,35.165,35.319,35.543,35.782,36.014,36.250,36.490,36.722,
-36.972,37.289,37.663,38.010,38.288,38.560,38.892,39.236,39.471,39.576,39.662,39.833,40.052,40.208,40.286,40.437,
-40.848,41.570,42.453,43.256,43.831,44.215,44.554,44.934,45.325,45.678,46.035,46.469,46.939,47.284,47.425,47.476,
-47.593,47.732,47.711,47.526,47.473,47.830,48.468,48.932,48.928,48.592,48.205,47.799,47.185,46.302,45.309,44.267,
-42.930,41.001,38.507,35.747,32.953,30.207,27.744,26.098,25.733,26.611,28.242,30.136,32.055,33.854,35.325,36.324,
-36.921,37.286,37.478,37.458,37.272,37.039,36.783,36.401,35.874,35.349,34.942,34.554,34.043,33.467,33.011,32.670,
-32.218,31.533,30.782,30.159,29.583,28.842,27.986,27.329,27.028,26.854,26.502,25.979,25.505,25.109,24.576,23.847,
-23.242,23.068,23.121,22.814,21.873,20.724,20.010,19.820,19.622,19.026,18.391,18.421,19.187,19.831,19.418,17.992,
-16.527,15.867,15.931,16.088,16.032,15.984,16.095,16.047,15.458,14.446,13.512,12.925,12.500,12.020,11.588,11.406,
-11.391,11.266,10.946,10.604,10.332,9.965,9.344,8.593,7.981,7.614,7.413,7.324,7.354,7.408,7.282,6.920,
-6.534,6.353,6.340,6.266,6.009,5.650,5.302,4.986,4.699,4.459,4.250,4.007,3.732,3.522,3.407,3.259,
-2.986,2.739,2.758,3.016,3.176,2.965,2.474,2.014,1.814,1.947,2.429,3.159,3.795,3.911,3.400,2.611,
-2.015,1.790,1.810,1.923,2.098,2.328,2.540,2.652,2.636,2.483,2.191,1.833,1.559,1.463,1.473,1.454,
-1.378,1.325,1.349,1.403,1.412,1.344,1.207,1.035,.910,.923,1.071,1.245,1.352,1.427,1.561,1.765,
-1.972,2.145,2.312,2.495,2.697,2.948,3.298,3.732,4.161,4.531,4.873,5.202,5.439,5.526,5.578,5.790,
-6.194,6.618,6.909,7.097,7.284,7.473,7.606,7.711,7.889,8.149,8.369,8.446,8.422,8.423,8.524,8.712,
-8.918,9.052,9.045,8.924,8.804,8.760,8.744,8.676,8.581,8.563,8.640,8.705,8.676,8.593,8.523,8.454,
-8.335,8.182,8.054,7.963,7.876,7.799,7.749,7.653,7.397,7.017,6.766,6.925,7.611,8.816,10.506,12.500,
-14.262,15.047,14.444,12.771,10.866,9.428,8.562,7.884,6.970,5.700,4.249,2.858,1.632,.574,-.260,-.714,
--.706,-.398,-.105,-.016,-.073,-.126,-.162,-.290,-.577,-.979,-1.442,-1.972,-2.581,-3.222,-3.834,-4.419,
--5.020,-5.640,-6.225,-6.738,-7.195,-7.630,-8.045,-8.427,-8.789,-9.165,-9.564,-9.948,-10.259,-10.479,-10.646,-10.835,
--11.113,-11.498,-11.966,-12.472,-12.973,-13.437,-13.859,-14.270,-14.712,-15.194,-15.672,-16.093,-16.452,-16.784,-17.120,-17.476,
--17.866,-18.301,-18.766,-19.213,-19.600,-19.934,-20.254,-20.592,-20.960,-21.365,-21.798,-22.224,-22.596,-22.914,-23.225,-23.572,
--23.948,-24.326,-24.697,-25.079,-25.481,-25.897,-26.330,-26.785,-27.250,-27.684,-28.067,-28.435,-28.843,-29.315,-29.828,-30.350,
--30.860,-31.338,-31.753,-32.097,-32.395,-32.694,-33.021,-33.381,-33.774,-34.188,-34.586,-34.926,-35.201,-35.462,-35.766,-36.123,
--36.489,-36.833,-37.168,-37.531,-37.927,-38.327,-38.708,-39.078,-39.466,-39.888,-40.325,-40.732,-41.064,-41.317,-41.535,-41.775,
--42.064,-42.384,-42.704,-43.018,-43.346,-43.694,-44.034,-44.322,-44.539,-44.715,-44.915,-45.182,-45.486,-45.746,-45.913,-46.039,
--46.223,-46.486,-46.739,-46.886,-46.940,-47.000,-47.130,-47.289,-47.402,-47.449,-47.468,-47.497,-47.538,-47.564,-47.547,-47.483,
--47.406,-47.364,-47.356,-47.305,-47.147,-46.931,-46.775,-46.713,-46.633,-46.423,-46.121,-45.870,-45.728,-45.603,-45.384,-45.067,
--44.719,-44.375,-44.020,-43.653,-43.302,-42.971,-42.629,-42.261,-41.883,-41.496,-41.070,-40.595,-40.099,-39.611,-39.118,-38.619,
--38.166,-37.806,-37.485,-37.086,-36.568,-36.015,-35.517,-35.069,-34.610,-34.123,-33.623,-33.102,-32.555,-32.048,-31.663,-31.371,
--31.033,-30.585,-30.114,-29.657,-29.030,-28.024,-26.778,-25.772,-25.320,-25.168,-24.731,-23.722,-22.394,-21.159,-20.128,-19.132,
--18.080,-17.099,-16.326,-15.731,-15.201,-14.710,-14.288,-13.881,-13.383,-12.820,-12.372,-12.178,-12.173,-12.194,-12.188,-12.237,
--12.421,-12.746,-13.209,-13.807,-14.440,-14.904,-15.123,-15.328,-15.871,-16.822,-17.875,-18.703,-19.342,-20.113,-21.210,-22.496,
--23.682,-24.599,-25.223,-25.564,-25.630,-25.477,-25.190,-24.833,-24.493,-24.331,-24.437,-24.572,-24.203,-22.955,-21.042,-19.130,
--17.773,-17.045,-16.688,-16.462,-16.267,-16.049,-15.766,-15.463,-15.260,-15.203,-15.196,-15.091,-14.823,-14.435,-14.046,-13.824,
--13.890,-14.145,-14.258,-13.976,-13.494,-13.409,-14.209,-15.836,-17.772,-19.442,-20.490,-20.785,-20.411,-19.724,-19.195,-19.029,
--18.958,-18.567,-17.819,-17.124,-16.867,-17.020,-17.299,-17.572,-17.940,-18.466,-19.036,-19.542,-20.041,-20.604,-21.105,-21.345,
--21.350,-21.408,-21.755,-22.323,-22.847,-23.147,-23.237,-23.282,-23.553,-24.323,-25.663,-27.293,-28.776,-29.874,-30.657,-31.293,
--31.906,-32.685,-33.870,-35.415,-36.796,-37.443,-37.404,-37.338,-37.785,-38.667,-39.638,-40.631,-41.748,-42.754,-43.165,-42.952,
--42.849,-43.667,-45.428,-47.408,-48.933,-49.878,-50.433,-50.709,-50.740,-50.651,-50.610,-50.651,-50.708,-50.753,-50.793,-50.760,
--50.577,-50.353,-50.342,-50.642,-51.049,-51.299,-51.366,-51.414,-51.537,-51.670,-51.740,-51.786,-51.870,-51.984,-52.076,-52.118,
--52.095,-51.992,-51.834,-51.695,-51.615,-51.545,-51.420,-51.249,-51.085,-50.914,-50.684,-50.419,-50.228,-50.155,-50.105,-49.965,
--49.747,-49.541,-49.362,-49.122,-48.756,-48.303,-47.844,-47.411,-46.986,-46.559,-46.130,-45.711,-45.322,-44.988,-44.688,-44.335,
--43.859,-43.296,-42.765,-42.339,-41.975,-41.579,-41.121,-40.648,-40.204,-39.773,-39.311,-38.794,-38.237,-37.661,-37.050,-36.383,
--35.683,-35.033,-34.496,-34.029,-33.506,-32.847,-32.096,-31.351,-30.634,-29.881,-29.043,-28.152,-27.278,-26.449,-25.647,-24.845,
--24.024,-23.168,-22.288,-21.429,-20.631,-19.866,-19.053,-18.154,-17.224,-16.357,-15.599,-14.937,-14.359,-13.875,-13.496,-13.197,
--12.920,-12.613,-12.248,-11.833,-11.398,-10.969,-10.552,-10.141,-9.744,-9.376,-9.025,-8.638,-8.180,-7.673,-7.174,-6.709,
--6.250,-5.764,-5.253,-4.748,-4.261,-3.779,-3.284,-2.772,-2.252,-1.729,-1.189,-.609,.030,.708,1.387,2.048,
-2.719,3.431,4.170,4.890,5.581,6.287,7.051,7.851,8.625,9.349,10.049,10.746,11.419,12.042,12.629,13.212,
-13.783,14.294,14.722,15.102,15.486,15.878,16.232,16.510,16.715,16.869,16.984,17.063,17.120,17.167,17.215,17.277,
-17.375,17.523,17.699,17.870,18.034,18.231,18.486,18.776,19.068,19.373,19.725,20.112,20.477,20.788,21.091,21.444,
-21.842,22.226,22.563,22.862,23.137,23.370,23.544,23.671,23.775,23.857,23.909,23.936,23.943,23.932,23.919,23.944,
-24.037,24.187,24.370,24.593,24.860,25.146,25.476,26.051,27.131,28.716,30.413,31.756,32.665,33.453,34.377,35.316,
-35.952,36.163,36.097,35.942,35.765,35.597,35.503,35.512,35.589,35.732,36.015,36.440,36.827,36.975,36.918,36.864,
-36.896,36.850,36.552,36.037,35.458,34.869,34.233,33.598,33.103,32.792,32.540,32.221,31.854,31.523,31.221,30.875,
-30.468,30.057,29.677,29.301,28.915,28.536,28.158,27.742,27.294,26.897,26.606,26.375,26.130,25.887,25.712,25.606,
-25.485,25.299,25.116,25.066,25.237,25.637,26.197,26.787,27.284,27.658,27.972,28.275,28.555,28.824,29.192,29.758,
-30.432,30.509,30.929,31.107,31.105,31.079,31.119,31.213,31.352,31.582,31.918,32.254,32.405,32.264,31.886,31.448,
-31.114,30.946,30.911,30.966,31.103,31.296,31.433,31.358,30.998,30.430,29.821,29.308,28.949,28.732,28.616,28.572,
-28.623,28.814,29.114,29.383,29.478,29.367,29.087,28.643,28.037,27.400,26.959,26.800,26.742,26.542,26.162,25.724,
-25.288,24.800,24.267,23.815,23.506,23.234,22.896,22.576,22.439,22.511,22.693,22.938,23.266,23.635,23.984,24.428,
-25.207,26.331,27.427,28.113,28.387,28.504,28.577,28.571,28.639,29.063,29.691,29.732,28.451,26.023,23.419,21.433,
-20.067,18.901,17.768,16.868,16.364,16.152,15.983,15.665,15.114,14.393,13.717,13.309,13.172,13.107,12.998,12.951,
-13.068,13.243,13.350,13.526,14.061,14.952,15.780,16.137,16.033,15.765,15.477,15.056,14.439,13.817,13.433,13.278,
-13.128,12.837,12.487,12.214,12.017,11.786,11.482,11.199,11.028,10.926,10.757,10.464,10.149,9.953,9.889,9.822,
-9.638,9.385,9.213,9.192,9.241,9.255,9.248,9.313,9.484,9.683,9.840,9.975,10.099,10.082,9.741,9.105,
-8.510,8.288,8.354,8.229,7.544,6.473,5.554,5.101,4.911,4.603,4.131,3.820,3.933,4.333,4.690,4.910,
-5.221,5.798,6.442,6.734,6.513,6.060,5.742,5.549,5.103,4.149,2.905,1.838,1.148,.588,-.172,-1.156,
--2.129,-2.942,-3.693,-4.550,-5.540,-6.566,-7.553,-8.513,-9.501,-10.586,-11.846,-13.329,-15.005,-16.790,-18.599,-20.335,
--21.883,-23.187,-24.334,-25.479,-26.650,-27.724,-28.621,-29.433,-30.270,-31.069,-31.677,-32.097,-32.497,-32.962,-33.379,-33.644,
--33.848,-34.141,-34.476,-34.652,-34.605,-34.495,-34.493,-34.594,-34.704,-34.800,-34.918,-35.047,-35.149,-35.250,-35.399,-35.556,
--35.592,-35.424,-35.078,-34.606,-34.046,-33.461,-32.940,-32.531,-32.242,-32.150,-32.365,-32.803,-33.139,-33.178,-33.220,-33.836,
--35.236,-37.041,-38.742,-40.140,-41.165,-41.539,-41.040,-40.156,-40.036,-41.442,-43.836,-45.772,-46.246,-45.516,-44.640,-44.441,
--45.013,-46.017,-47.159,-48.335,-49.520,-50.667,-51.715,-52.591,-53.206,-53.502,-53.538,-53.538,-53.772,-54.333,-54.994,-55.364,
--55.250,-54.853,-54.570,-54.571,-54.670,-54.603,-54.368,-54.188,-54.217,-54.401,-54.662,-55.058,-55.673,-56.408,-57.016,-57.366,
--57.594,-57.932,-58.466,-59.087,-59.646,-60.072,-60.349,-60.477,-60.482,-60.424,-60.357,-60.295,-60.255,-60.292,-60.455,-60.700,
--60.909,-60.996,-60.967,-60.867,-60.708,-60.481,-60.197,-59.903,-59.677,-59.616,-59.798,-60.171,-60.524,-60.663,-60.639,-60.705,
--61.009,-61.404,-61.655,-61.772,-61.995,-62.435,-62.885,-63.068,-62.965,-62.795,-62.716,-62.675,-62.552,-62.317,-61.995,-61.575,
--61.042,-60.459,-59.924,-59.466,-59.048,-58.664,-58.364,-58.187,-58.135,-58.225,-58.498,-58.926,-59.367,-59.658,-59.733,-59.597,
--59.260,-58.742,-58.157,-57.670,-57.369,-57.216,-57.136,-57.104,-57.110,-57.093,-56.984,-56.779,-56.547,-56.344,-56.148,-55.840,
--55.265,-54.365,-53.316,-52.437,-51.866,-51.389,-50.771,-50.250,-50.438,-51.556,-52.920,-53.484,-52.888,-51.741,-50.798,-50.098,
--49.134,-47.680,-46.139,-45.024,-44.388,-43.893,-43.298,-42.667,-42.164,-41.811,-41.501,-41.100,-40.522,-39.782,-39.036,-38.471,
--38.108,-37.780,-37.367,-36.970,-36.732,-36.558,-36.182,-35.524,-34.824,-34.341,-34.050,-33.749,-33.369,-32.985,-32.573,-31.964,
--31.149,-30.447,-30.194,-30.330,-30.449,-30.270,-29.897,-29.579,-29.350,-29.031,-28.472,-27.679,-26.715,-25.635,-24.537,-23.569,
--22.812,-22.192,-21.581,-20.936,-20.308,-19.743,-19.208,-18.619,-17.897,-17.019,-16.047,-15.076,-14.131,-13.150,-12.104,-11.069,
--10.120,-9.177,-8.103,-6.952,-5.971,-5.263,-4.615,-3.772,-2.791,-1.930,-1.231,-.442,.606,1.758,2.792,3.756,
-4.859,6.126,7.371,8.498,9.613,10.792,11.914,12.821,13.512,14.101,14.692,15.388,16.261,17.178,17.795,17.954,
-18.012,18.489,19.404,20.271,20.829,21.432,22.443,23.556,24.129,24.086,24.000,24.247,24.553,24.624,24.805,25.619,
-26.870,27.743,27.871,27.817,28.270,29.151,29.868,30.204,30.523,31.111,31.773,32.218,32.507,32.889,33.370,33.753,
-34.006,34.319,34.767,35.155,35.283,35.222,35.191,35.277,35.401,35.506,35.633,35.811,36.011,36.210,36.441,36.718,
-36.993,37.235,37.487,37.793,38.119,38.405,38.678,39.015,39.407,39.721,39.862,39.910,40.031,40.278,40.538,40.705,
-40.854,41.188,41.830,42.670,43.459,44.027,44.407,44.745,45.131,45.532,45.899,46.257,46.664,47.087,47.405,47.552,
-47.617,47.731,47.888,47.947,47.852,47.770,47.926,48.316,48.685,48.794,48.650,48.404,48.123,47.747,47.233,46.605,
-45.819,44.706,43.140,41.182,38.954,36.445,33.603,30.672,28.262,26.960,26.907,27.828,29.380,31.316,33.347,35.074,
-36.212,36.810,37.136,37.370,37.497,37.445,37.225,36.898,36.506,36.077,35.626,35.117,34.505,33.861,33.382,33.152,
-32.961,32.507,31.793,31.169,30.886,30.723,30.206,29.200,28.110,27.453,27.317,27.321,27.046,26.386,25.521,24.677,
-24.022,23.691,23.703,23.807,23.536,22.620,21.370,20.483,20.319,20.481,20.277,19.610,19.138,19.410,20.050,20.103,
-19.188,17.953,17.247,17.122,16.972,16.490,16.046,15.993,16.034,15.622,14.780,14.108,13.951,13.944,13.559,12.816,
-12.170,11.854,11.666,11.391,11.091,10.855,10.534,9.960,9.279,8.812,8.630,8.496,8.250,8.012,7.917,7.848,
-7.611,7.263,7.051,7.048,7.038,6.809,6.403,6.008,5.713,5.472,5.232,4.992,4.759,4.535,4.341,4.173,
-3.966,3.678,3.398,3.260,3.241,3.149,2.882,2.590,2.527,2.792,3.288,3.852,4.314,4.488,4.273,3.825,
-3.475,3.409,3.503,3.552,3.548,3.632,3.818,3.943,3.885,3.690,3.439,3.107,2.659,2.200,1.904,1.815,
-1.806,1.746,1.638,1.569,1.582,1.631,1.625,1.504,1.305,1.154,1.161,1.297,1.424,1.468,1.501,1.629,
-1.849,2.082,2.292,2.499,2.712,2.923,3.175,3.532,3.961,4.346,4.646,4.950,5.310,5.611,5.733,5.771,
-5.954,6.337,6.715,6.909,6.994,7.153,7.414,7.641,7.780,7.942,8.221,8.537,8.718,8.705,8.608,8.594,
-8.753,9.033,9.273,9.337,9.244,9.142,9.133,9.160,9.121,9.035,9.004,9.049,9.073,9.006,8.891,8.781,
-8.660,8.506,8.372,8.306,8.251,8.118,7.931,7.792,7.694,7.505,7.196,6.993,7.225,8.059,9.421,11.078,
-12.663,13.681,13.715,12.782,11.463,10.557,10.514,11.124,11.679,11.442,10.116,7.998,5.716,3.748,2.169,.839,
--.263,-.982,-1.244,-1.202,-1.092,-1.003,-.891,-.760,-.719,-.856,-1.149,-1.531,-1.987,-2.524,-3.113,-3.698,
--4.261,-4.825,-5.400,-5.957,-6.466,-6.931,-7.371,-7.793,-8.192,-8.572,-8.941,-9.299,-9.629,-9.909,-10.140,-10.354,
--10.610,-10.961,-11.407,-11.902,-12.389,-12.841,-13.258,-13.660,-14.076,-14.532,-15.021,-15.501,-15.927,-16.293,-16.634,-16.986,
--17.366,-17.776,-18.213,-18.657,-19.078,-19.451,-19.783,-20.095,-20.414,-20.765,-21.165,-21.603,-22.030,-22.407,-22.740,-23.063,
--23.395,-23.732,-24.074,-24.450,-24.874,-25.323,-25.766,-26.206,-26.673,-27.164,-27.634,-28.047,-28.422,-28.820,-29.285,-29.810,
--30.345,-30.836,-31.256,-31.611,-31.933,-32.247,-32.566,-32.899,-33.264,-33.675,-34.115,-34.540,-34.907,-35.214,-35.498,-35.800,
--36.133,-36.476,-36.803,-37.115,-37.436,-37.794,-38.192,-38.613,-39.045,-39.488,-39.940,-40.383,-40.783,-41.114,-41.385,-41.633,
--41.898,-42.193,-42.504,-42.811,-43.110,-43.413,-43.730,-44.054,-44.365,-44.642,-44.886,-45.113,-45.341,-45.560,-45.737,-45.865,
--45.994,-46.198,-46.489,-46.785,-46.984,-47.071,-47.117,-47.195,-47.307,-47.407,-47.465,-47.496,-47.523,-47.555,-47.580,-47.571,
--47.516,-47.441,-47.389,-47.365,-47.307,-47.150,-46.926,-46.740,-46.646,-46.576,-46.424,-46.178,-45.918,-45.703,-45.507,-45.275,
--44.999,-44.694,-44.364,-44.010,-43.654,-43.320,-42.985,-42.614,-42.220,-41.845,-41.482,-41.061,-40.546,-40.001,-39.510,-39.070,
--38.618,-38.132,-37.665,-37.245,-36.829,-36.363,-35.860,-35.367,-34.888,-34.397,-33.899,-33.420,-32.952,-32.466,-31.990,-31.597,
--31.286,-30.953,-30.532,-30.101,-29.730,-29.250,-28.373,-27.094,-25.868,-25.181,-24.986,-24.707,-23.865,-22.564,-21.280,-20.269,
--19.375,-18.370,-17.307,-16.413,-15.773,-15.262,-14.753,-14.247,-13.770,-13.276,-12.735,-12.241,-11.933,-11.835,-11.866,-11.971,
--12.163,-12.420,-12.665,-12.907,-13.274,-13.821,-14.360,-14.662,-14.810,-15.193,-16.055,-17.173,-18.108,-18.728,-19.322,-20.216,
--21.408,-22.625,-23.619,-24.291,-24.629,-24.674,-24.536,-24.338,-24.112,-23.850,-23.659,-23.666,-23.696,-23.181,-21.642,-19.295,
--17.015,-15.608,-15.191,-15.297,-15.447,-15.475,-15.401,-15.226,-14.966,-14.731,-14.648,-14.686,-14.656,-14.389,-13.904,-13.416,
--13.189,-13.323,-13.611,-13.641,-13.189,-12.575,-12.532,-13.593,-15.596,-17.807,-19.499,-20.384,-20.575,-20.353,-20.027,-19.867,
--19.941,-20.007,-19.724,-19.037,-18.280,-17.850,-17.850,-18.113,-18.484,-18.938,-19.453,-19.959,-20.463,-21.081,-21.816,-22.390,
--22.466,-22.052,-21.544,-21.344,-21.524,-21.909,-22.347,-22.805,-23.298,-23.890,-24.740,-25.993,-27.596,-29.299,-30.860,-32.159,
--33.118,-33.718,-34.169,-34.872,-35.990,-37.165,-37.874,-38.067,-38.212,-38.694,-39.452,-40.315,-41.330,-42.455,-43.145,-42.767,
--41.553,-40.716,-41.357,-43.409,-45.879,-47.919,-49.358,-50.330,-50.856,-50.966,-50.896,-50.887,-50.918,-50.852,-50.739,-50.745,
--50.819,-50.714,-50.394,-50.181,-50.358,-50.786,-51.098,-51.164,-51.186,-51.359,-51.628,-51.818,-51.865,-51.832,-51.779,-51.720,
--51.657,-51.592,-51.517,-51.431,-51.354,-51.289,-51.203,-51.083,-50.980,-50.925,-50.845,-50.632,-50.310,-50.031,-49.892,-49.824,
--49.711,-49.538,-49.364,-49.182,-48.909,-48.506,-48.028,-47.548,-47.074,-46.588,-46.103,-45.648,-45.232,-44.857,-44.538,-44.277,
--44.016,-43.676,-43.244,-42.796,-42.408,-42.071,-41.706,-41.256,-40.740,-40.230,-39.768,-39.326,-38.836,-38.269,-37.657,-37.033,
--36.385,-35.695,-35.004,-34.404,-33.916,-33.448,-32.894,-32.254,-31.605,-30.976,-30.303,-29.521,-28.656,-27.782,-26.945,-26.140,
--25.345,-24.542,-23.709,-22.839,-21.957,-21.099,-20.261,-19.410,-18.536,-17.678,-16.882,-16.162,-15.521,-14.982,-14.562,-14.224,
--13.897,-13.538,-13.154,-12.772,-12.391,-11.992,-11.564,-11.110,-10.653,-10.225,-9.847,-9.495,-9.114,-8.668,-8.183,-7.709,
--7.260,-6.805,-6.322,-5.820,-5.320,-4.822,-4.312,-3.791,-3.270,-2.749,-2.215,-1.652,-1.054,-.421,.234,.889,
-1.543,2.219,2.943,3.700,4.444,5.159,5.886,6.669,7.498,8.321,9.102,9.845,10.563,11.248,11.893,12.517,
-13.140,13.752,14.311,14.796,15.231,15.651,16.064,16.438,16.741,16.959,17.100,17.178,17.216,17.235,17.250,17.276,
-17.339,17.470,17.667,17.887,18.082,18.258,18.466,18.736,19.041,19.341,19.639,19.964,20.311,20.632,20.909,21.181,
-21.493,21.830,22.150,22.446,22.747,23.053,23.319,23.510,23.642,23.742,23.803,23.812,23.786,23.762,23.754,23.753,
-23.769,23.826,23.934,24.086,24.287,24.534,24.820,25.210,25.929,27.200,28.931,30.628,31.808,32.488,33.138,34.101,
-35.194,35.952,36.161,36.019,35.840,35.765,35.773,35.802,35.805,35.763,35.758,35.922,36.254,36.534,36.569,36.452,
-36.444,36.595,36.640,36.324,35.697,34.987,34.303,33.617,32.974,32.519,32.294,32.138,31.879,31.528,31.197,30.913,
-30.601,30.224,29.834,29.483,29.166,28.853,28.530,28.170,27.752,27.329,27.003,26.807,26.655,26.472,26.307,26.235,
-26.205,26.082,25.832,25.595,25.535,25.696,26.037,26.519,27.093,27.653,28.084,28.369,28.582,28.802,29.078,29.456,
-29.960,30.509,30.482,30.828,31.027,31.088,31.099,31.142,31.241,31.403,31.647,31.961,32.233,32.293,32.054,31.603,
-31.145,30.830,30.664,30.574,30.540,30.595,30.703,30.708,30.463,29.999,29.486,29.042,28.640,28.227,27.845,27.592,
-27.511,27.588,27.814,28.177,28.582,28.880,28.970,28.837,28.492,27.964,27.374,26.897,26.587,26.317,25.957,25.556,
-25.226,24.918,24.479,23.912,23.423,23.138,22.926,22.602,22.208,21.951,21.946,22.134,22.430,22.775,23.084,23.337,
-23.751,24.648,26.025,27.410,28.307,28.671,28.793,28.864,28.921,29.139,29.747,30.474,30.412,28.803,25.924,22.901,
-20.641,19.177,18.043,16.997,16.169,15.707,15.536,15.447,15.237,14.766,14.059,13.363,12.962,12.880,12.886,12.825,
-12.797,12.929,13.131,13.264,13.457,14.005,14.929,15.819,16.238,16.154,15.852,15.514,15.071,14.457,13.820,13.376,
-13.154,12.983,12.726,12.411,12.127,11.877,11.591,11.261,10.984,10.836,10.757,10.596,10.300,9.989,9.821,9.807,
-9.795,9.661,9.440,9.261,9.185,9.169,9.166,9.180,9.216,9.228,9.189,9.168,9.274,9.471,9.531,9.230,
-8.638,8.132,8.035,8.235,8.232,7.630,6.561,5.552,4.969,4.689,4.365,3.914,3.613,3.717,4.111,4.472,
-4.696,5.016,5.638,6.373,6.764,6.583,6.086,5.690,5.459,5.025,4.063,2.723,1.496,.687,.140,-.494,
--1.358,-2.326,-3.267,-4.203,-5.200,-6.237,-7.242,-8.208,-9.189,-10.229,-11.356,-12.625,-14.106,-15.806,-17.635,-19.453,
--21.121,-22.530,-23.683,-24.718,-25.798,-26.925,-27.958,-28.825,-29.632,-30.481,-31.275,-31.840,-32.207,-32.596,-33.108,-33.585,
--33.868,-34.045,-34.309,-34.648,-34.856,-34.841,-34.756,-34.783,-34.916,-35.051,-35.171,-35.327,-35.506,-35.636,-35.714,-35.789,
--35.837,-35.739,-35.440,-35.033,-34.630,-34.229,-33.754,-33.194,-32.669,-32.383,-32.510,-33.042,-33.697,-34.095,-34.162,-34.315,
--35.078,-36.517,-38.200,-39.705,-40.921,-41.771,-41.938,-41.271,-40.396,-40.483,-42.121,-44.574,-46.415,-46.867,-46.363,-45.879,
--45.972,-46.576,-47.454,-48.548,-49.872,-51.289,-52.544,-53.462,-54.042,-54.359,-54.465,-54.430,-54.430,-54.703,-55.326,-56.061,
--56.486,-56.371,-55.902,-55.476,-55.299,-55.239,-55.086,-54.847,-54.711,-54.784,-54.995,-55.270,-55.660,-56.227,-56.874,-57.401,
--57.742,-58.041,-58.470,-59.032,-59.591,-60.054,-60.440,-60.780,-61.037,-61.157,-61.155,-61.105,-61.055,-61.008,-60.977,-61.005,
--61.119,-61.284,-61.428,-61.499,-61.481,-61.375,-61.194,-60.966,-60.751,-60.640,-60.742,-61.104,-61.611,-62.001,-62.088,-61.970,
--61.956,-62.225,-62.631,-62.918,-63.052,-63.214,-63.488,-63.707,-63.689,-63.505,-63.386,-63.407,-63.405,-63.212,-62.855,-62.452,
--62.031,-61.532,-60.945,-60.354,-59.837,-59.415,-59.093,-58.886,-58.788,-58.776,-58.869,-59.118,-59.516,-59.942,-60.244,-60.339,
--60.194,-59.781,-59.123,-58.380,-57.780,-57.440,-57.299,-57.240,-57.231,-57.290,-57.371,-57.364,-57.198,-56.918,-56.638,-56.415,
--56.141,-55.586,-54.632,-53.498,-52.613,-52.154,-51.797,-51.159,-50.468,-50.503,-51.645,-53.180,-53.867,-53.201,-51.849,-50.724,
--49.949,-48.962,-47.464,-45.858,-44.706,-44.067,-43.573,-42.978,-42.387,-41.979,-41.736,-41.486,-41.075,-40.437,-39.626,-38.829,
--38.257,-37.914,-37.571,-37.074,-36.575,-36.316,-36.230,-35.971,-35.381,-34.729,-34.343,-34.169,-33.894,-33.413,-32.920,-32.529,
--32.063,-31.382,-30.715,-30.423,-30.499,-30.543,-30.275,-29.839,-29.520,-29.331,-29.036,-28.470,-27.648,-26.605,-25.359,-24.053,
--22.977,-22.292,-21.846,-21.357,-20.729,-20.076,-19.485,-18.888,-18.175,-17.333,-16.413,-15.446,-14.440,-13.421,-12.439,-11.539,
--10.718,-9.893,-8.917,-7.735,-6.515,-5.533,-4.851,-4.217,-3.392,-2.462,-1.667,-.992,-.141,1.031,2.297,3.392,
-4.386,5.536,6.867,8.139,9.218,10.229,11.297,12.326,13.155,13.778,14.310,14.856,15.508,16.328,17.169,17.680,
-17.725,17.714,18.194,19.136,19.987,20.534,21.291,22.708,24.321,25.180,25.044,24.635,24.615,24.850,24.971,25.189,
-26.003,27.280,28.252,28.526,28.597,29.096,29.934,30.557,30.822,31.121,31.693,32.283,32.612,32.834,33.258,33.849,
-34.311,34.559,34.799,35.145,35.423,35.470,35.397,35.421,35.562,35.684,35.754,35.875,36.098,36.335,36.523,36.726,
-37.007,37.312,37.551,37.746,37.988,38.289,38.567,38.797,39.061,39.411,39.762,39.990,40.107,40.252,40.508,40.797,
-41.009,41.183,41.502,42.090,42.869,43.623,44.199,44.608,44.957,45.320,45.693,46.054,46.414,46.799,47.187,47.502,
-47.691,47.791,47.898,48.052,48.181,48.184,48.073,47.987,48.064,48.304,48.577,48.736,48.706,48.491,48.147,47.750,
-47.327,46.791,45.990,44.847,43.404,41.678,39.545,36.894,33.917,31.154,29.160,28.182,28.180,29.045,30.646,32.666,
-34.578,35.941,36.690,37.080,37.342,37.488,37.407,37.088,36.670,36.305,36.009,35.652,35.098,34.383,33.745,33.416,
-33.345,33.192,32.682,31.966,31.519,31.605,31.886,31.662,30.589,29.127,28.178,28.218,28.795,28.934,28.068,26.521,
-25.088,24.279,24.040,24.078,24.157,24.053,23.510,22.550,21.700,21.538,21.925,22.002,21.199,20.036,19.548,19.999,
-20.555,20.355,19.513,18.752,18.314,17.766,16.856,16.020,15.751,15.825,15.616,15.053,14.749,15.066,15.492,15.251,
-14.277,13.221,12.586,12.254,11.908,11.523,11.227,10.955,10.557,10.149,10.002,10.080,9.989,9.496,8.868,8.504,
-8.410,8.286,8.017,7.810,7.809,7.817,7.567,7.089,6.644,6.376,6.191,5.951,5.656,5.377,5.144,4.944,
-4.766,4.581,4.347,4.059,3.767,3.506,3.257,3.048,3.022,3.327,3.924,4.572,4.985,5.003,4.659,4.186,
-3.924,4.087,4.541,4.911,4.970,4.851,4.805,4.844,4.767,4.494,4.189,3.997,3.815,3.448,2.911,2.449,
-2.238,2.209,2.168,2.034,1.881,1.809,1.822,1.827,1.732,1.550,1.396,1.360,1.413,1.463,1.506,1.633,
-1.880,2.148,2.334,2.476,2.674,2.932,3.181,3.427,3.760,4.181,4.562,4.827,5.075,5.411,5.756,5.957,
-6.046,6.210,6.502,6.747,6.807,6.817,7.009,7.389,7.741,7.924,8.041,8.261,8.583,8.844,8.923,8.857,
-8.791,8.850,9.033,9.227,9.320,9.325,9.354,9.457,9.548,9.527,9.426,9.354,9.332,9.281,9.164,9.035,
-8.933,8.815,8.662,8.544,8.501,8.443,8.263,8.022,7.882,7.860,7.789,7.576,7.403,7.566,8.177,9.087,
-10.027,10.731,10.961,10.591,9.773,8.991,8.851,9.730,11.482,13.389,14.465,14.054,12.317,10.078,8.091,6.444,
-4.731,2.722,.718,-.774,-1.542,-1.760,-1.697,-1.509,-1.287,-1.147,-1.181,-1.377,-1.670,-2.030,-2.475,-3.002,
--3.563,-4.110,-4.631,-5.139,-5.645,-6.144,-6.630,-7.091,-7.529,-7.947,-8.342,-8.703,-9.025,-9.325,-9.620,-9.909,
--10.195,-10.515,-10.916,-11.405,-11.917,-12.382,-12.779,-13.142,-13.516,-13.922,-14.363,-14.824,-15.281,-15.709,-16.106,-16.487,
--16.870,-17.264,-17.673,-18.091,-18.502,-18.888,-19.245,-19.577,-19.896,-20.217,-20.568,-20.972,-21.411,-21.838,-22.226,-22.584,
--22.924,-23.238,-23.519,-23.809,-24.175,-24.633,-25.127,-25.602,-26.056,-26.528,-27.030,-27.522,-27.960,-28.344,-28.725,-29.164,
--29.678,-30.222,-30.717,-31.120,-31.457,-31.784,-32.129,-32.477,-32.821,-33.186,-33.597,-34.036,-34.457,-34.835,-35.177,-35.504,
--35.828,-36.157,-36.488,-36.809,-37.106,-37.397,-37.726,-38.126,-38.587,-39.071,-39.545,-39.994,-40.413,-40.792,-41.126,-41.425,
--41.708,-41.992,-42.283,-42.580,-42.873,-43.160,-43.443,-43.730,-44.026,-44.328,-44.629,-44.917,-45.177,-45.394,-45.565,-45.702,
--45.831,-45.989,-46.206,-46.485,-46.780,-47.022,-47.170,-47.245,-47.299,-47.367,-47.449,-47.526,-47.587,-47.627,-47.645,-47.634,
--47.594,-47.533,-47.471,-47.432,-47.410,-47.355,-47.221,-47.017,-46.814,-46.668,-46.563,-46.438,-46.252,-46.011,-45.737,-45.445,
--45.157,-44.888,-44.622,-44.317,-43.962,-43.600,-43.275,-42.963,-42.612,-42.221,-41.837,-41.469,-41.049,-40.532,-39.974,-39.478,
--39.060,-38.639,-38.149,-37.619,-37.118,-36.653,-36.186,-35.704,-35.226,-34.759,-34.282,-33.798,-33.337,-32.901,-32.454,-31.989,
--31.557,-31.187,-30.815,-30.394,-30.022,-29.828,-29.679,-29.172,-28.060,-26.649,-25.557,-25.025,-24.630,-23.797,-22.485,-21.182,
--20.250,-19.523,-18.627,-17.516,-16.496,-15.785,-15.269,-14.729,-14.133,-13.586,-13.110,-12.634,-12.158,-11.793,-11.616,-11.595,
--11.684,-11.869,-12.087,-12.215,-12.249,-12.411,-12.897,-13.565,-14.046,-14.234,-14.482,-15.183,-16.255,-17.236,-17.859,-18.350,
--19.105,-20.226,-21.476,-22.565,-23.329,-23.712,-23.749,-23.600,-23.449,-23.330,-23.151,-22.935,-22.843,-22.814,-22.330,-20.827,
--18.424,-16.031,-14.586,-14.258,-14.480,-14.665,-14.680,-14.668,-14.676,-14.614,-14.473,-14.359,-14.303,-14.164,-13.785,-13.209,
--12.698,-12.523,-12.721,-13.010,-12.978,-12.480,-11.916,-12.038,-13.330,-15.529,-17.797,-19.396,-20.163,-20.391,-20.413,-20.402,
--20.430,-20.521,-20.582,-20.425,-19.978,-19.433,-19.092,-19.100,-19.389,-19.830,-20.343,-20.860,-21.324,-21.791,-22.402,-23.126,
--23.616,-23.495,-22.777,-21.892,-21.261,-20.988,-21.009,-21.358,-22.110,-23.143,-24.165,-25.029,-25.886,-26.987,-28.431,-30.129,
--31.866,-33.333,-34.279,-34.775,-35.245,-36.058,-37.132,-38.095,-38.770,-39.283,-39.741,-40.125,-40.602,-41.553,-42.950,-43.942,
--43.589,-42.075,-40.779,-40.942,-42.531,-44.619,-46.530,-48.204,-49.634,-50.552,-50.845,-50.861,-50.993,-51.178,-51.125,-50.869,
--50.750,-50.862,-50.897,-50.643,-50.341,-50.356,-50.665,-50.933,-51.004,-51.061,-51.295,-51.624,-51.832,-51.843,-51.741,-51.615,
--51.491,-51.376,-51.281,-51.199,-51.121,-51.051,-50.987,-50.900,-50.791,-50.721,-50.725,-50.718,-50.566,-50.266,-49.962,-49.769,
--49.653,-49.512,-49.320,-49.109,-48.866,-48.532,-48.096,-47.613,-47.120,-46.600,-46.049,-45.527,-45.103,-44.775,-44.496,-44.241,
--44.020,-43.820,-43.593,-43.299,-42.948,-42.578,-42.210,-41.823,-41.375,-40.861,-40.327,-39.839,-39.395,-38.918,-38.342,-37.694,
--37.052,-36.426,-35.762,-35.048,-34.373,-33.821,-33.356,-32.859,-32.280,-31.669,-31.078,-30.473,-29.785,-28.999,-28.164,-27.331,
--26.522,-25.733,-24.952,-24.151,-23.316,-22.457,-21.589,-20.710,-19.818,-18.950,-18.151,-17.423,-16.736,-16.094,-15.556,-15.158,
--14.839,-14.495,-14.088,-13.663,-13.276,-12.920,-12.551,-12.141,-11.693,-11.228,-10.778,-10.365,-9.977,-9.573,-9.125,-8.650,
--8.185,-7.737,-7.286,-6.823,-6.360,-5.894,-5.401,-4.870,-4.325,-3.795,-3.271,-2.725,-2.142,-1.533,-.906,-.259,
-.410,1.093,1.792,2.518,3.267,4.018,4.759,5.514,6.311,7.146,7.985,8.796,9.572,10.318,11.034,11.727,
-12.405,13.074,13.719,14.317,14.858,15.350,15.804,16.226,16.606,16.927,17.165,17.306,17.364,17.370,17.357,17.344,
-17.350,17.408,17.549,17.765,18.003,18.222,18.432,18.682,18.992,19.328,19.643,19.930,20.212,20.495,20.765,21.025,
-21.309,21.630,21.947,22.219,22.462,22.725,23.015,23.279,23.477,23.625,23.746,23.820,23.815,23.750,23.684,23.654,
-23.655,23.679,23.740,23.848,24.002,24.200,24.436,24.716,25.136,25.929,27.287,29.054,30.682,31.693,32.176,32.703,
-33.678,34.885,35.764,36.033,35.909,35.781,35.833,36.005,36.150,36.165,36.044,35.920,35.961,36.165,36.306,36.213,
-36.026,36.026,36.226,36.286,35.906,35.163,34.357,33.659,33.043,32.502,32.123,31.916,31.733,31.447,31.101,30.809,
-30.563,30.265,29.887,29.510,29.200,28.944,28.693,28.419,28.092,27.709,27.343,27.107,27.014,26.955,26.857,26.782,
-26.803,26.830,26.699,26.404,26.137,26.060,26.172,26.416,26.827,27.433,28.093,28.566,28.759,28.820,28.956,29.243,
-29.631,30.059,30.482,30.374,30.718,30.996,31.139,31.168,31.179,31.253,31.417,31.656,31.914,32.086,32.050,31.765,
-31.330,30.911,30.601,30.359,30.126,29.947,29.916,29.988,29.948,29.626,29.110,28.643,28.322,28.008,27.554,27.031,
-26.650,26.525,26.621,26.878,27.278,27.762,28.189,28.420,28.406,28.163,27.742,27.245,26.782,26.365,25.901,25.375,
-24.940,24.708,24.533,24.148,23.541,23.003,22.746,22.633,22.389,21.977,21.617,21.499,21.628,21.919,22.270,22.561,
-22.773,23.149,24.036,25.442,26.911,27.966,28.562,28.944,29.219,29.351,29.492,29.902,30.373,30.069,28.294,25.332,
-22.263,19.945,18.421,17.286,16.321,15.591,15.152,14.917,14.767,14.594,14.266,13.732,13.162,12.818,12.751,12.757,
-12.695,12.677,12.847,13.121,13.329,13.550,14.051,14.879,15.681,16.046,15.924,15.591,15.260,14.896,14.392,13.801,
-13.303,12.999,12.824,12.640,12.380,12.068,11.748,11.441,11.150,10.892,10.676,10.467,10.211,9.919,9.688,9.601,
-9.617,9.618,9.545,9.445,9.373,9.305,9.199,9.086,9.029,9.013,8.952,8.828,8.756,8.844,9.023,9.060,
-8.789,8.308,7.931,7.892,8.077,8.069,7.526,6.530,5.529,4.891,4.568,4.249,3.802,3.450,3.461,3.795,
-4.158,4.395,4.666,5.186,5.866,6.337,6.344,6.012,5.652,5.351,4.861,3.935,2.669,1.433,.493,-.214,
--.912,-1.717,-2.596,-3.523,-4.530,-5.619,-6.713,-7.763,-8.817,-9.940,-11.116,-12.302,-13.550,-14.980,-16.634,-18.403,
--20.120,-21.652,-22.944,-24.020,-24.998,-26.005,-27.046,-28.013,-28.860,-29.686,-30.566,-31.374,-31.924,-32.257,-32.627,-33.171,
--33.728,-34.079,-34.256,-34.456,-34.734,-34.949,-35.012,-35.026,-35.120,-35.282,-35.436,-35.585,-35.768,-35.934,-35.990,-35.948,
--35.902,-35.851,-35.673,-35.324,-34.939,-34.659,-34.414,-33.997,-33.344,-32.691,-32.420,-32.750,-33.521,-34.269,-34.612,-34.662,
--34.980,-36.029,-37.673,-39.343,-40.638,-41.572,-42.201,-42.345,-41.962,-41.636,-42.259,-44.060,-46.181,-47.460,-47.544,-47.072,
--46.853,-47.156,-47.806,-48.690,-49.896,-51.411,-52.941,-54.108,-54.765,-55.032,-55.099,-55.072,-55.018,-55.069,-55.405,-56.063,
--56.818,-57.301,-57.315,-57.000,-56.653,-56.408,-56.160,-55.803,-55.441,-55.296,-55.453,-55.805,-56.221,-56.679,-57.192,-57.702,
--58.134,-58.516,-58.954,-59.468,-59.943,-60.282,-60.557,-60.919,-61.388,-61.800,-61.992,-61.994,-61.972,-62.032,-62.128,-62.166,
--62.136,-62.117,-62.170,-62.281,-62.383,-62.411,-62.340,-62.189,-62.022,-61.925,-61.981,-62.236,-62.664,-63.124,-63.408,-63.399,
--63.226,-63.175,-63.403,-63.768,-64.017,-64.082,-64.106,-64.185,-64.222,-64.104,-63.916,-63.840,-63.888,-63.862,-63.605,-63.188,
--62.774,-62.402,-61.975,-61.433,-60.834,-60.273,-59.807,-59.466,-59.278,-59.240,-59.322,-59.510,-59.815,-60.214,-60.608,-60.883,
--60.954,-60.746,-60.186,-59.317,-58.385,-57.713,-57.434,-57.403,-57.399,-57.347,-57.322,-57.367,-57.397,-57.281,-56.989,-56.632,
--56.338,-56.062,-55.560,-54.647,-53.519,-52.664,-52.315,-52.104,-51.510,-50.686,-50.498,-51.508,-53.081,-53.876,-53.229,-51.771,
--50.530,-49.752,-48.877,-47.507,-45.952,-44.749,-43.986,-43.358,-42.694,-42.140,-41.846,-41.701,-41.470,-41.018,-40.341,-39.514,
--38.700,-38.097,-37.723,-37.357,-36.818,-36.258,-35.971,-35.938,-35.788,-35.285,-34.657,-34.259,-34.067,-33.754,-33.206,-32.680,
--32.364,-32.082,-31.593,-31.009,-30.644,-30.521,-30.334,-29.900,-29.410,-29.099,-28.873,-28.465,-27.800,-26.988,-26.043,-24.880,
--23.617,-22.621,-22.106,-21.838,-21.414,-20.721,-19.950,-19.227,-18.452,-17.527,-16.533,-15.589,-14.659,-13.636,-12.549,-11.567,
--10.802,-10.173,-9.478,-8.547,-7.386,-6.196,-5.225,-4.513,-3.850,-3.039,-2.149,-1.369,-.660,.250,1.484,2.819,
-3.996,5.068,6.253,7.563,8.792,9.841,10.830,11.847,12.788,13.539,14.152,14.730,15.299,15.898,16.622,17.391,
-17.864,17.865,17.786,18.203,19.088,19.839,20.257,21.018,22.749,24.927,26.272,26.234,25.547,25.181,25.268,25.417,
-25.645,26.367,27.567,28.618,29.090,29.302,29.767,30.456,30.972,31.237,31.575,32.128,32.633,32.895,33.134,33.638,
-34.301,34.783,34.998,35.168,35.422,35.625,35.664,35.653,35.738,35.866,35.912,35.938,36.116,36.451,36.749,36.902,
-37.024,37.257,37.556,37.787,37.945,38.150,38.439,38.715,38.909,39.091,39.360,39.691,39.971,40.168,40.360,40.609,
-40.875,41.101,41.343,41.739,42.354,43.098,43.806,44.373,44.801,45.147,45.468,45.801,46.165,46.552,46.934,47.292,
-47.609,47.858,48.016,48.104,48.186,48.288,48.343,48.260,48.071,47.958,48.095,48.470,48.870,49.051,48.921,48.571,
-48.172,47.811,47.430,46.897,46.127,45.107,43.793,42.042,39.745,37.032,34.284,31.902,30.122,29.075,28.941,29.875,
-31.725,33.928,35.792,36.934,37.413,37.498,37.376,37.098,36.721,36.376,36.153,35.958,35.587,34.954,34.244,33.757,
-33.599,33.559,33.320,32.788,32.217,31.987,32.231,32.598,32.442,31.382,29.828,28.811,29.043,30.063,30.521,29.492,
-27.412,25.559,24.716,24.614,24.627,24.570,24.556,24.436,23.914,23.172,22.849,23.119,23.207,22.275,20.631,19.528,
-19.682,20.436,20.654,20.068,19.299,18.763,18.168,17.220,16.275,15.870,15.901,15.780,15.369,15.221,15.707,16.310,
-16.177,15.181,14.009,13.259,12.844,12.397,11.881,11.508,11.297,11.089,10.918,10.990,11.235,11.199,10.587,9.702,
-9.096,8.916,8.849,8.660,8.472,8.437,8.406,8.125,7.622,7.170,6.914,6.736,6.485,6.173,5.885,5.630,
-5.375,5.140,4.951,4.756,4.480,4.150,3.871,3.705,3.645,3.723,4.026,4.555,5.100,5.343,5.106,4.523,
-3.995,3.919,4.379,5.054,5.500,5.557,5.429,5.349,5.261,4.961,4.473,4.098,4.035,4.105,3.964,3.518,
-3.001,2.671,2.548,2.475,2.348,2.199,2.113,2.106,2.106,2.033,1.883,1.724,1.609,1.528,1.485,1.578,
-1.897,2.347,2.673,2.751,2.739,2.879,3.184,3.480,3.695,3.955,4.351,4.772,5.069,5.272,5.512,5.796,
-6.021,6.180,6.385,6.663,6.870,6.920,6.955,7.180,7.574,7.911,8.059,8.127,8.290,8.567,8.832,8.977,
-9.004,8.991,9.020,9.117,9.242,9.341,9.422,9.539,9.682,9.746,9.658,9.486,9.361,9.308,9.254,9.170,
-9.109,9.084,9.029,8.914,8.816,8.787,8.735,8.555,8.310,8.160,8.119,8.021,7.776,7.529,7.496,7.696,
-7.953,8.107,8.121,8.010,7.757,7.371,7.006,7.020,7.866,9.763,12.314,14.524,15.439,14.940,13.790,12.774,
-11.862,10.361,7.844,4.735,1.932,.022,-1.013,-1.486,-1.641,-1.614,-1.537,-1.538,-1.661,-1.867,-2.128,-2.468,
--2.914,-3.438,-3.971,-4.461,-4.910,-5.359,-5.839,-6.336,-6.814,-7.262,-7.695,-8.110,-8.478,-8.792,-9.093,-9.425,
--9.779,-10.121,-10.464,-10.868,-11.354,-11.861,-12.305,-12.665,-12.995,-13.350,-13.744,-14.159,-14.582,-15.010,-15.444,-15.885,
--16.323,-16.749,-17.160,-17.558,-17.942,-18.304,-18.643,-18.974,-19.309,-19.651,-20.001,-20.382,-20.809,-21.263,-21.701,-22.103,
--22.481,-22.834,-23.131,-23.367,-23.614,-23.960,-24.418,-24.922,-25.404,-25.865,-26.337,-26.830,-27.318,-27.772,-28.184,-28.577,
--28.998,-29.486,-30.023,-30.537,-30.975,-31.356,-31.734,-32.119,-32.483,-32.820,-33.174,-33.573,-33.990,-34.381,-34.745,-35.108,
--35.476,-35.830,-36.165,-36.496,-36.819,-37.113,-37.383,-37.690,-38.091,-38.580,-39.094,-39.574,-40.003,-40.390,-40.751,-41.091,
--41.412,-41.712,-41.994,-42.272,-42.556,-42.845,-43.133,-43.419,-43.706,-43.991,-44.270,-44.553,-44.848,-45.136,-45.376,-45.549,
--45.688,-45.844,-46.034,-46.248,-46.477,-46.721,-46.960,-47.155,-47.282,-47.359,-47.427,-47.509,-47.596,-47.670,-47.715,-47.719,
--47.673,-47.593,-47.518,-47.477,-47.470,-47.464,-47.418,-47.306,-47.134,-46.934,-46.746,-46.592,-46.464,-46.326,-46.130,-45.847,
--45.499,-45.149,-44.847,-44.577,-44.276,-43.913,-43.532,-43.194,-42.897,-42.581,-42.211,-41.817,-41.429,-41.018,-40.538,-40.005,
--39.499,-39.058,-38.634,-38.160,-37.638,-37.121,-36.630,-36.141,-35.642,-35.162,-34.710,-34.252,-33.762,-33.268,-32.812,-32.383,
--31.945,-31.504,-31.085,-30.659,-30.205,-29.853,-29.820,-30.066,-30.118,-29.448,-28.071,-26.590,-25.517,-24.707,-23.648,-22.207,
--20.833,-19.948,-19.392,-18.673,-17.619,-16.537,-15.740,-15.162,-14.560,-13.886,-13.288,-12.823,-12.393,-11.942,-11.558,-11.323,
--11.206,-11.158,-11.194,-11.285,-11.293,-11.175,-11.172,-11.597,-12.392,-13.112,-13.457,-13.659,-14.174,-15.078,-15.996,-16.626,
--17.126,-17.871,-18.985,-20.259,-21.419,-22.295,-22.791,-22.884,-22.723,-22.550,-22.460,-22.340,-22.138,-22.004,-21.975,-21.628,
--20.365,-18.164,-15.833,-14.331,-13.890,-13.971,-13.991,-13.871,-13.850,-14.008,-14.171,-14.190,-14.085,-13.905,-13.592,-13.087,
--12.501,-12.081,-11.995,-12.173,-12.331,-12.197,-11.778,-11.501,-11.981,-13.515,-15.729,-17.806,-19.128,-19.683,-19.865,-19.991,
--20.111,-20.188,-20.266,-20.381,-20.450,-20.367,-20.182,-20.082,-20.202,-20.534,-21.005,-21.548,-22.065,-22.460,-22.770,-23.161,
--23.664,-24.009,-23.860,-23.218,-22.421,-21.733,-21.145,-20.659,-20.575,-21.241,-22.547,-23.918,-24.862,-25.414,-25.979,-26.899,
--28.240,-29.825,-31.327,-32.433,-33.122,-33.766,-34.811,-36.339,-38.042,-39.544,-40.588,-40.996,-40.824,-40.667,-41.392,-43.165,
--44.942,-45.373,-44.272,-42.817,-42.232,-42.678,-43.637,-44.880,-46.510,-48.260,-49.437,-49.765,-49.808,-50.226,-50.924,-51.304,
--51.173,-50.946,-50.969,-51.074,-50.968,-50.736,-50.679,-50.851,-51.036,-51.127,-51.249,-51.492,-51.730,-51.800,-51.720,-51.621,
--51.558,-51.492,-51.394,-51.274,-51.133,-50.979,-50.852,-50.786,-50.745,-50.676,-50.596,-50.551,-50.510,-50.377,-50.128,-49.863,
--49.674,-49.534,-49.357,-49.111,-48.818,-48.476,-48.064,-47.598,-47.121,-46.633,-46.092,-45.513,-45.000,-44.653,-44.469,-44.357,
--44.232,-44.069,-43.874,-43.657,-43.412,-43.119,-42.766,-42.368,-41.955,-41.529,-41.059,-40.542,-40.030,-39.557,-39.076,-38.507,
--37.858,-37.215,-36.619,-36.011,-35.335,-34.649,-34.055,-33.553,-33.032,-32.415,-31.746,-31.109,-30.517,-29.900,-29.198,-28.415,
--27.601,-26.804,-26.038,-25.277,-24.490,-23.677,-22.857,-22.024,-21.143,-20.216,-19.318,-18.530,-17.844,-17.191,-16.554,-16.006,
--15.598,-15.273,-14.924,-14.518,-14.109,-13.741,-13.394,-13.029,-12.638,-12.233,-11.817,-11.394,-10.975,-10.560,-10.127,-9.656,
--9.161,-8.673,-8.200,-7.733,-7.274,-6.836,-6.400,-5.927,-5.403,-4.856,-4.316,-3.772,-3.197,-2.595,-1.991,-1.377,
--.722,-.013,.720,1.438,2.140,2.849,3.581,4.340,5.128,5.952,6.803,7.658,8.491,9.291,10.061,10.816,
-11.571,12.318,13.036,13.703,14.320,14.900,15.442,15.934,16.368,16.751,17.079,17.327,17.475,17.534,17.543,17.531,
-17.511,17.500,17.537,17.656,17.849,18.076,18.309,18.559,18.856,19.200,19.551,19.865,20.135,20.380,20.623,20.875,
-21.155,21.480,21.833,22.159,22.419,22.635,22.861,23.109,23.335,23.507,23.645,23.775,23.874,23.899,23.845,23.759,
-23.687,23.651,23.663,23.737,23.868,24.043,24.265,24.544,24.899,25.410,26.265,27.606,29.256,30.702,31.521,31.850,
-32.279,33.212,34.431,35.369,35.738,35.744,35.756,35.925,36.147,36.260,36.183,35.963,35.764,35.750,35.897,35.975,
-35.827,35.601,35.569,35.720,35.705,35.238,34.429,33.624,33.019,32.567,32.177,31.846,31.565,31.262,30.914,30.595,
-30.357,30.121,29.783,29.369,29.001,28.738,28.535,28.341,28.143,27.914,27.627,27.340,27.175,27.165,27.201,27.196,
-27.195,27.258,27.295,27.161,26.878,26.637,26.563,26.610,26.753,27.114,27.770,28.518,29.000,29.080,28.988,29.037,
-29.309,29.676,30.029,30.374,30.261,30.647,31.012,31.229,31.283,31.278,31.332,31.491,31.718,31.926,32.013,31.905,
-31.606,31.205,30.801,30.420,30.013,29.574,29.223,29.099,29.152,29.125,28.813,28.301,27.853,27.568,27.271,26.780,
-26.177,25.730,25.598,25.736,26.040,26.461,26.953,27.409,27.712,27.808,27.702,27.426,27.053,26.657,26.219,25.658,
-25.013,24.502,24.269,24.135,23.772,23.138,22.553,22.289,22.225,22.046,21.660,21.273,21.100,21.182,21.444,21.778,
-22.067,22.287,22.643,23.433,24.675,26.020,27.135,28.028,28.835,29.450,29.660,29.585,29.591,29.652,29.100,27.310,
-24.499,21.595,19.335,17.772,16.606,15.686,15.030,14.587,14.245,13.981,13.816,13.662,13.392,13.053,12.828,12.769,
-12.730,12.631,12.618,12.843,13.216,13.533,13.807,14.248,14.913,15.521,15.733,15.518,15.147,14.857,14.629,14.298,
-13.799,13.258,12.857,12.651,12.526,12.322,11.992,11.626,11.327,11.095,10.849,10.529,10.155,9.801,9.544,9.419,
-9.392,9.380,9.350,9.369,9.505,9.684,9.718,9.514,9.187,8.919,8.759,8.630,8.507,8.471,8.568,8.688,
-8.654,8.405,8.065,7.840,7.837,7.950,7.883,7.368,6.432,5.432,4.737,4.380,4.088,3.668,3.261,3.148,
-3.388,3.749,4.009,4.198,4.492,4.947,5.411,5.707,5.798,5.725,5.451,4.852,3.880,2.692,1.527,.502,
--.433,-1.348,-2.221,-3.023,-3.833,-4.781,-5.883,-7.037,-8.183,-9.381,-10.686,-12.024,-13.296,-14.541,-15.911,-17.461,
--19.076,-20.593,-21.942,-23.135,-24.198,-25.178,-26.141,-27.103,-28.013,-28.844,-29.669,-30.540,-31.342,-31.900,-32.236,-32.594,
--33.140,-33.754,-34.207,-34.458,-34.652,-34.872,-35.056,-35.154,-35.230,-35.360,-35.529,-35.707,-35.917,-36.153,-36.297,-36.238,
--36.040,-35.869,-35.758,-35.576,-35.264,-34.958,-34.777,-34.596,-34.146,-33.383,-32.653,-32.441,-32.945,-33.870,-34.651,-34.958,
--35.051,-35.574,-36.902,-38.727,-40.368,-41.456,-42.139,-42.662,-43.019,-43.212,-43.625,-44.740,-46.449,-47.930,-48.437,-48.065,
--47.575,-47.567,-48.063,-48.833,-49.835,-51.160,-52.689,-54.053,-54.943,-55.354,-55.484,-55.499,-55.463,-55.436,-55.554,-55.958,
--56.639,-57.393,-57.950,-58.197,-58.235,-58.200,-58.060,-57.669,-57.019,-56.379,-56.090,-56.285,-56.819,-57.467,-58.093,-58.642,
--59.089,-59.466,-59.866,-60.339,-60.783,-61.038,-61.114,-61.245,-61.645,-62.246,-62.741,-62.916,-62.870,-62.874,-63.068,-63.339,
--63.495,-63.470,-63.360,-63.293,-63.319,-63.400,-63.458,-63.428,-63.312,-63.192,-63.185,-63.350,-63.657,-64.020,-64.330,-64.487,
--64.448,-64.315,-64.281,-64.454,-64.719,-64.863,-64.822,-64.726,-64.695,-64.672,-64.547,-64.350,-64.220,-64.187,-64.112,-63.871,
--63.505,-63.134,-62.781,-62.370,-61.861,-61.309,-60.787,-60.321,-59.935,-59.689,-59.650,-59.831,-60.191,-60.647,-61.089,-61.412,
--61.556,-61.485,-61.122,-60.379,-59.326,-58.281,-57.624,-57.467,-57.567,-57.591,-57.437,-57.249,-57.172,-57.170,-57.069,-56.759,
--56.322,-55.944,-55.666,-55.268,-54.493,-53.453,-52.637,-52.354,-52.270,-51.778,-50.900,-50.498,-51.302,-52.855,-53.804,-53.297,
--51.803,-50.399,-49.528,-48.767,-47.658,-46.322,-45.146,-44.209,-43.326,-42.485,-41.926,-41.760,-41.746,-41.545,-41.036,-40.297,
--39.446,-38.619,-37.985,-37.595,-37.267,-36.790,-36.239,-35.884,-35.773,-35.601,-35.122,-34.506,-34.090,-33.878,-33.561,-33.005,
--32.454,-32.139,-31.937,-31.591,-31.107,-30.688,-30.360,-29.937,-29.378,-28.887,-28.561,-28.170,-27.477,-26.597,-25.800,-25.074,
--24.180,-23.134,-22.317,-21.965,-21.799,-21.367,-20.586,-19.704,-18.849,-17.882,-16.739,-15.614,-14.684,-13.830,-12.831,-11.709,
--10.715,-10.002,-9.447,-8.816,-7.977,-6.961,-5.907,-4.971,-4.205,-3.489,-2.670,-1.762,-.896,-.072,.895,2.115,
-3.444,4.668,5.781,6.918,8.107,9.249,10.324,11.399,12.443,13.313,13.987,14.623,15.311,15.956,16.523,17.169,
-17.927,18.466,18.496,18.319,18.538,19.203,19.748,19.995,20.733,22.747,25.490,27.377,27.500,26.542,25.783,25.689,
-25.901,26.205,26.861,27.951,29.019,29.626,29.904,30.262,30.783,31.244,31.592,32.015,32.560,33.015,33.279,33.565,
-34.070,34.654,35.036,35.196,35.344,35.572,35.759,35.835,35.904,36.037,36.141,36.146,36.193,36.455,36.855,37.135,
-37.205,37.248,37.443,37.732,37.952,38.094,38.284,38.572,38.858,39.059,39.223,39.443,39.721,39.989,40.223,40.460,
-40.707,40.932,41.149,41.460,41.968,42.647,43.365,44.006,44.538,44.971,45.311,45.594,45.902,46.298,46.747,47.151,
-47.468,47.750,48.029,48.246,48.324,48.300,48.286,48.315,48.294,48.157,48.016,48.079,48.431,48.909,49.238,49.253,
-48.993,48.625,48.279,47.952,47.551,46.989,46.224,45.203,43.811,41.957,39.701,37.253,34.819,32.522,30.556,29.356,
-29.460,31.043,33.580,36.064,37.633,38.059,37.712,37.128,36.670,36.470,36.508,36.617,36.493,35.901,34.956,34.104,
-33.707,33.680,33.617,33.270,32.784,32.461,32.424,32.548,32.574,32.182,31.161,29.776,28.862,29.134,30.232,30.780,
-29.737,27.589,25.843,25.382,25.702,25.840,25.581,25.347,25.238,24.843,24.044,23.387,23.286,23.229,22.362,20.740,
-19.436,19.236,19.690,19.791,19.278,18.758,18.648,18.568,18.007,17.130,16.507,16.260,15.989,15.545,15.364,15.796,
-16.409,16.404,15.583,14.530,13.812,13.376,12.889,12.342,11.993,11.882,11.780,11.614,11.589,11.761,11.773,11.271,
-10.417,9.729,9.463,9.397,9.253,9.042,8.894,8.755,8.467,8.041,7.652,7.385,7.159,6.909,6.679,6.487,
-6.247,5.909,5.571,5.323,5.091,4.760,4.410,4.253,4.344,4.482,4.488,4.452,4.593,4.911,5.118,4.946,
-4.469,4.076,4.121,4.606,5.191,5.536,5.597,5.570,5.560,5.406,4.929,4.264,3.804,3.782,4.011,4.101,
-3.866,3.443,3.058,2.803,2.642,2.532,2.473,2.467,2.487,2.484,2.424,2.311,2.170,2.005,1.819,1.699,
-1.831,2.306,2.917,3.277,3.233,3.053,3.115,3.464,3.829,4.038,4.225,4.573,5.021,5.364,5.543,5.676,
-5.857,6.068,6.293,6.576,6.903,7.166,7.311,7.442,7.669,7.941,8.117,8.181,8.268,8.466,8.709,8.883,
-8.965,9.004,9.042,9.097,9.188,9.317,9.455,9.580,9.694,9.768,9.725,9.540,9.314,9.185,9.170,9.176,
-9.156,9.150,9.173,9.161,9.080,9.001,8.981,8.948,8.804,8.584,8.407,8.281,8.088,7.778,7.469,7.286,
-7.185,7.025,6.768,6.529,6.429,6.449,6.437,6.270,6.071,6.306,7.496,9.657,12.054,13.745,14.457,14.767,
-15.271,15.720,15.192,13.101,9.833,6.363,3.431,1.220,-.362,-1.370,-1.844,-1.951,-1.941,-1.987,-2.112,-2.288,
--2.525,-2.869,-3.328,-3.839,-4.317,-4.736,-5.147,-5.601,-6.089,-6.561,-7.002,-7.441,-7.880,-8.275,-8.603,-8.914,
--9.268,-9.654,-10.016,-10.354,-10.734,-11.191,-11.669,-12.085,-12.426,-12.748,-13.104,-13.497,-13.904,-14.316,-14.739,-15.188,
--15.660,-16.139,-16.601,-17.032,-17.431,-17.794,-18.119,-18.417,-18.721,-19.055,-19.416,-19.794,-20.203,-20.657,-21.134,-21.586,
--21.995,-22.378,-22.730,-23.019,-23.244,-23.483,-23.822,-24.263,-24.737,-25.197,-25.651,-26.119,-26.592,-27.060,-27.525,-27.984,
--28.421,-28.846,-29.299,-29.801,-30.316,-30.801,-31.260,-31.716,-32.148,-32.516,-32.836,-33.177,-33.573,-33.978,-34.343,-34.688,
--35.059,-35.448,-35.812,-36.142,-36.472,-36.805,-37.104,-37.362,-37.646,-38.035,-38.528,-39.049,-39.528,-39.944,-40.319,-40.675,
--41.018,-41.338,-41.624,-41.885,-42.150,-42.440,-42.751,-43.069,-43.390,-43.715,-44.022,-44.290,-44.540,-44.815,-45.115,-45.382,
--45.575,-45.727,-45.903,-46.113,-46.317,-46.497,-46.681,-46.888,-47.087,-47.238,-47.346,-47.444,-47.541,-47.620,-47.670,-47.699,
--47.702,-47.659,-47.576,-47.503,-47.487,-47.509,-47.511,-47.451,-47.336,-47.185,-47.006,-46.809,-46.624,-46.478,-46.357,-46.199,
--45.948,-45.607,-45.236,-44.895,-44.587,-44.265,-43.891,-43.486,-43.110,-42.791,-42.487,-42.145,-41.757,-41.357,-40.953,-40.507,
--39.998,-39.470,-38.980,-38.530,-38.073,-37.591,-37.105,-36.629,-36.139,-35.624,-35.123,-34.664,-34.202,-33.680,-33.127,-32.636,
--32.234,-31.860,-31.457,-31.028,-30.571,-30.073,-29.669,-29.658,-30.165,-30.770,-30.725,-29.659,-27.966,-26.318,-24.918,-23.461,
--21.793,-20.279,-19.354,-18.912,-18.418,-17.568,-16.565,-15.724,-15.055,-14.374,-13.660,-13.056,-12.608,-12.192,-11.738,-11.334,
--11.052,-10.830,-10.599,-10.414,-10.317,-10.189,-9.933,-9.758,-10.042,-10.844,-11.748,-12.336,-12.678,-13.170,-13.958,-14.777,
--15.379,-15.904,-16.681,-17.808,-19.087,-20.283,-21.261,-21.903,-22.105,-21.950,-21.707,-21.551,-21.419,-21.220,-21.069,-21.053,
--20.846,-19.863,-17.959,-15.782,-14.238,-13.643,-13.570,-13.481,-13.279,-13.193,-13.327,-13.531,-13.624,-13.557,-13.334,-12.935,
--12.400,-11.910,-11.657,-11.654,-11.715,-11.632,-11.368,-11.129,-11.306,-12.260,-14.011,-16.093,-17.810,-18.740,-18.999,-19.004,
--19.041,-19.129,-19.234,-19.413,-19.712,-20.025,-20.198,-20.232,-20.276,-20.452,-20.764,-21.185,-21.693,-22.192,-22.529,-22.682,
--22.843,-23.168,-23.532,-23.664,-23.508,-23.236,-22.890,-22.277,-21.382,-20.698,-20.857,-21.917,-23.245,-24.171,-24.587,-24.846,
--25.276,-25.957,-26.814,-27.717,-28.532,-29.288,-30.290,-31.912,-34.213,-36.831,-39.240,-40.952,-41.624,-41.334,-40.904,-41.518,
--43.581,-46.066,-47.379,-46.928,-45.523,-44.270,-43.583,-43.438,-44.019,-45.464,-47.172,-48.111,-48.024,-47.842,-48.555,-50.002,
--51.175,-51.494,-51.310,-51.198,-51.247,-51.232,-51.126,-51.114,-51.252,-51.429,-51.604,-51.843,-52.113,-52.243,-52.153,-51.969,
--51.842,-51.767,-51.663,-51.521,-51.376,-51.216,-51.019,-50.845,-50.777,-50.788,-50.764,-50.656,-50.517,-50.384,-50.215,-49.981,
--49.740,-49.553,-49.391,-49.178,-48.882,-48.521,-48.111,-47.653,-47.174,-46.701,-46.210,-45.663,-45.092,-44.623,-44.365,-44.314,
--44.366,-44.392,-44.301,-44.076,-43.774,-43.476,-43.196,-42.882,-42.499,-42.084,-41.678,-41.255,-40.770,-40.243,-39.740,-39.259,
--38.726,-38.111,-37.477,-36.892,-36.333,-35.738,-35.120,-34.545,-34.013,-33.433,-32.739,-31.980,-31.264,-30.632,-30.023,-29.351,
--28.592,-27.798,-27.034,-26.311,-25.580,-24.801,-23.992,-23.201,-22.411,-21.550,-20.600,-19.665,-18.864,-18.202,-17.589,-16.985,
--16.451,-16.038,-15.691,-15.323,-14.920,-14.533,-14.179,-13.819,-13.427,-13.032,-12.667,-12.317,-11.951,-11.566,-11.166,-10.731,
--10.243,-9.721,-9.208,-8.722,-8.247,-7.779,-7.324,-6.875,-6.403,-5.895,-5.365,-4.818,-4.239,-3.625,-3.009,-2.419,
--1.822,-1.157,-.410,.357,1.078,1.747,2.414,3.123,3.887,4.700,5.556,6.443,7.334,8.201,9.022,9.809,
-10.593,11.399,12.207,12.968,13.652,14.278,14.883,15.466,15.998,16.458,16.854,17.189,17.444,17.601,17.680,17.718,
-17.734,17.726,17.709,17.728,17.820,17.987,18.204,18.454,18.741,19.068,19.416,19.753,20.051,20.310,20.549,20.799,
-21.077,21.391,21.731,22.071,22.376,22.628,22.851,23.080,23.320,23.536,23.694,23.806,23.905,23.997,24.053,24.046,
-23.981,23.888,23.814,23.804,23.872,23.996,24.158,24.386,24.735,25.236,25.915,26.862,28.140,29.586,30.784,31.408,
-31.615,31.942,32.750,33.843,34.733,35.178,35.359,35.550,35.801,35.959,35.896,35.628,35.292,35.075,35.105,35.312,
-35.455,35.369,35.173,35.105,35.160,35.042,34.518,33.718,32.981,32.496,32.186,31.896,31.549,31.141,30.700,30.299,
-30.011,29.798,29.520,29.108,28.666,28.335,28.125,27.954,27.801,27.702,27.624,27.480,27.281,27.160,27.197,27.309,
-27.385,27.430,27.490,27.509,27.390,27.176,27.017,26.976,26.989,27.077,27.425,28.120,28.908,29.378,29.397,29.231,
-29.214,29.414,29.687,29.952,30.261,30.267,30.698,31.094,31.332,31.415,31.440,31.505,31.654,31.861,32.035,32.066,
-31.904,31.585,31.189,30.757,30.265,29.679,29.054,28.552,28.322,28.324,28.308,28.050,27.580,27.119,26.782,26.440,
-25.933,25.329,24.881,24.775,24.988,25.388,25.866,26.343,26.752,27.050,27.226,27.258,27.125,26.860,26.541,26.161,
-25.626,24.944,24.330,23.978,23.770,23.396,22.772,22.166,21.847,21.738,21.562,21.221,20.881,20.727,20.786,20.995,
-21.286,21.583,21.859,22.239,22.915,23.886,24.942,25.953,27.026,28.192,29.120,29.423,29.195,28.915,28.713,28.041,
-26.308,23.669,20.932,18.756,17.198,16.023,15.119,14.476,13.999,13.571,13.225,13.060,13.029,12.979,12.873,12.803,
-12.785,12.712,12.577,12.568,12.845,13.302,13.709,14.021,14.392,14.878,15.279,15.346,15.075,14.710,14.477,14.371,
-14.202,13.816,13.270,12.781,12.508,12.388,12.219,11.896,11.511,11.208,10.990,10.734,10.357,9.918,9.554,9.349,
-9.277,9.230,9.134,9.061,9.191,9.591,10.048,10.205,9.907,9.346,8.833,8.500,8.292,8.166,8.155,8.235,
-8.268,8.144,7.905,7.697,7.624,7.686,7.778,7.691,7.199,6.273,5.207,4.405,4.003,3.776,3.453,3.057,
-2.835,2.937,3.239,3.514,3.656,3.732,3.877,4.194,4.705,5.301,5.721,5.666,5.006,3.896,2.659,1.525,
-.490,-.566,-1.653,-2.629,-3.407,-4.113,-4.972,-6.071,-7.309,-8.581,-9.909,-11.334,-12.779,-14.129,-15.398,-16.719,
--18.148,-19.578,-20.885,-22.065,-23.184,-24.263,-25.280,-26.243,-27.181,-28.080,-28.911,-29.702,-30.498,-31.246,-31.819,-32.208,
--32.578,-33.082,-33.675,-34.190,-34.550,-34.813,-35.027,-35.177,-35.264,-35.349,-35.476,-35.634,-35.827,-36.093,-36.385,-36.530,
--36.406,-36.114,-35.862,-35.710,-35.536,-35.274,-35.029,-34.876,-34.661,-34.150,-33.381,-32.746,-32.694,-33.328,-34.294,-35.066,
--35.417,-35.661,-36.394,-37.881,-39.734,-41.272,-42.201,-42.792,-43.422,-44.164,-44.939,-45.847,-47.041,-48.300,-49.058,-49.002,
--48.481,-48.162,-48.373,-48.970,-49.752,-50.743,-51.989,-53.297,-54.347,-55.009,-55.400,-55.663,-55.813,-55.825,-55.800,-55.942,
--56.389,-57.092,-57.852,-58.491,-58.986,-59.426,-59.805,-59.908,-59.488,-58.587,-57.634,-57.140,-57.313,-57.984,-58.833,-59.629,
--60.273,-60.760,-61.153,-61.537,-61.910,-62.140,-62.133,-62.028,-62.134,-62.608,-63.251,-63.691,-63.769,-63.680,-63.732,-64.013,
--64.349,-64.528,-64.495,-64.354,-64.232,-64.206,-64.277,-64.384,-64.435,-64.392,-64.328,-64.370,-64.562,-64.831,-65.078,-65.261,
--65.366,-65.381,-65.330,-65.315,-65.420,-65.581,-65.634,-65.517,-65.353,-65.276,-65.248,-65.125,-64.874,-64.622,-64.480,-64.404,
--64.267,-64.010,-63.650,-63.204,-62.680,-62.132,-61.648,-61.259,-60.911,-60.566,-60.300,-60.260,-60.535,-61.064,-61.655,-62.092,
--62.257,-62.165,-61.867,-61.323,-60.454,-59.341,-58.322,-57.763,-57.716,-57.869,-57.853,-57.576,-57.225,-56.994,-56.878,-56.711,
--56.356,-55.873,-55.464,-55.223,-54.959,-54.368,-53.465,-52.696,-52.437,-52.441,-52.067,-51.185,-50.577,-51.107,-52.572,-53.709,
--53.469,-52.039,-50.435,-49.327,-48.555,-47.691,-46.652,-45.596,-44.547,-43.432,-42.407,-41.813,-41.738,-41.832,-41.652,-41.070,
--40.248,-39.367,-38.545,-37.907,-37.533,-37.298,-36.963,-36.472,-36.007,-35.684,-35.354,-34.850,-34.286,-33.915,-33.728,-33.432,
--32.867,-32.233,-31.798,-31.545,-31.276,-30.918,-30.535,-30.115,-29.579,-28.997,-28.548,-28.174,-27.549,-26.527,-25.441,-24.693,
--24.214,-23.601,-22.760,-22.058,-21.754,-21.580,-21.103,-20.281,-19.374,-18.455,-17.343,-16.024,-14.800,-13.890,-13.112,-12.164,
--11.061,-10.086,-9.379,-8.794,-8.139,-7.364,-6.504,-5.585,-4.669,-3.838,-3.073,-2.239,-1.267,-.243,.746,1.770,
-2.936,4.193,5.385,6.454,7.471,8.499,9.561,10.691,11.878,12.962,13.772,14.378,15.041,15.845,16.593,17.186,
-17.834,18.666,19.341,19.437,19.139,19.079,19.449,19.794,19.958,20.750,23.011,26.181,28.472,28.695,27.456,26.283,
-25.982,26.279,26.755,27.451,28.465,29.489,30.128,30.413,30.695,31.147,31.650,32.102,32.552,33.014,33.390,33.662,
-33.974,34.410,34.843,35.114,35.272,35.468,35.714,35.897,35.997,36.116,36.281,36.393,36.436,36.560,36.871,37.228,
-37.410,37.418,37.469,37.693,37.981,38.179,38.306,38.488,38.759,39.034,39.254,39.452,39.667,39.889,40.106,40.349,
-40.636,40.905,41.103,41.303,41.674,42.287,43.027,43.712,44.273,44.756,45.186,45.523,45.767,46.041,46.462,46.979,
-47.412,47.676,47.871,48.121,48.382,48.500,48.433,48.314,48.281,48.304,48.267,48.171,48.175,48.430,48.888,49.324,
-49.513,49.395,49.085,48.738,48.401,48.008,47.475,46.786,45.940,44.868,43.464,41.708,39.688,37.473,35.055,32.566,
-30.553,29.867,31.027,33.633,36.446,38.215,38.508,37.822,37.008,36.640,36.838,37.409,37.956,37.964,37.112,35.656,
-34.345,33.755,33.739,33.691,33.298,32.821,32.610,32.599,32.459,32.033,31.363,30.448,29.355,28.541,28.596,29.386,
-29.825,28.961,27.196,25.974,26.146,27.071,27.531,27.137,26.419,25.785,25.030,23.967,22.984,22.529,22.361,21.795,
-20.667,19.580,19.066,18.898,18.573,18.163,18.246,18.963,19.619,19.447,18.487,17.411,16.650,16.081,15.581,15.434,
-15.907,16.637,16.871,16.289,15.313,14.507,13.961,13.463,13.000,12.781,12.797,12.734,12.410,12.052,11.931,11.913,
-11.628,11.005,10.387,10.079,10.001,9.877,9.606,9.285,9.002,8.737,8.461,8.179,7.885,7.586,7.356,7.250,
-7.166,6.931,6.547,6.212,6.011,5.746,5.241,4.703,4.548,4.854,5.191,5.127,4.743,4.493,4.612,4.859,
-4.869,4.615,4.415,4.547,4.958,5.363,5.563,5.612,5.659,5.684,5.485,4.937,4.222,3.713,3.620,3.816,
-4.001,3.981,3.756,3.420,3.080,2.835,2.751,2.805,2.901,2.949,2.924,2.849,2.755,2.647,2.497,2.292,
-2.134,2.237,2.717,3.355,3.723,3.626,3.352,3.346,3.712,4.160,4.440,4.622,4.908,5.301,5.631,5.816,
-5.950,6.142,6.399,6.684,6.982,7.265,7.495,7.688,7.917,8.178,8.360,8.406,8.442,8.624,8.914,9.116,
-9.126,9.044,9.006,9.028,9.064,9.126,9.256,9.434,9.588,9.674,9.677,9.575,9.377,9.184,9.111,9.157,
-9.205,9.186,9.143,9.126,9.106,9.043,8.974,8.939,8.896,8.770,8.576,8.391,8.232,8.033,7.778,7.538,
-7.361,7.196,6.967,6.689,6.460,6.357,6.376,6.407,6.284,5.954,5.695,6.011,7.158,8.790,10.297,11.499,
-12.806,14.544,16.285,17.066,16.248,13.990,10.909,7.535,4.198,1.260,-.870,-2.003,-2.347,-2.336,-2.308,-2.367,
--2.482,-2.634,-2.870,-3.236,-3.702,-4.174,-4.593,-4.989,-5.422,-5.890,-6.341,-6.764,-7.196,-7.651,-8.071,-8.417,
--8.730,-9.078,-9.460,-9.825,-10.166,-10.541,-10.976,-11.417,-11.797,-12.119,-12.442,-12.805,-13.204,-13.624,-14.059,-14.509,
--14.974,-15.453,-15.935,-16.405,-16.849,-17.261,-17.635,-17.961,-18.254,-18.555,-18.894,-19.262,-19.643,-20.053,-20.516,-21.008,
--21.472,-21.881,-22.252,-22.592,-22.877,-23.111,-23.369,-23.720,-24.147,-24.583,-25.004,-25.440,-25.902,-26.364,-26.819,-27.295,
--27.798,-28.283,-28.718,-29.133,-29.580,-30.066,-30.567,-31.081,-31.601,-32.077,-32.461,-32.785,-33.140,-33.558,-33.975,-34.337,
--34.681,-35.059,-35.451,-35.799,-36.106,-36.430,-36.780,-37.097,-37.351,-37.612,-37.975,-38.451,-38.965,-39.441,-39.860,-40.240,
--40.602,-40.943,-41.247,-41.505,-41.741,-42.006,-42.325,-42.679,-43.037,-43.395,-43.759,-44.098,-44.370,-44.593,-44.837,-45.125,
--45.399,-45.601,-45.759,-45.942,-46.161,-46.363,-46.527,-46.690,-46.880,-47.061,-47.196,-47.304,-47.421,-47.532,-47.590,-47.596,
--47.599,-47.621,-47.625,-47.585,-47.543,-47.548,-47.578,-47.560,-47.457,-47.307,-47.155,-47.000,-46.825,-46.642,-46.484,-46.347,
--46.185,-45.954,-45.650,-45.304,-44.949,-44.603,-44.254,-43.879,-43.467,-43.056,-42.691,-42.375,-42.055,-41.686,-41.279,-40.858,
--40.409,-39.898,-39.349,-38.825,-38.354,-37.898,-37.421,-36.943,-36.488,-36.026,-35.525,-35.016,-34.545,-34.081,-33.553,-32.980,
--32.482,-32.120,-31.809,-31.446,-31.030,-30.588,-30.089,-29.596,-29.434,-29.930,-30.865,-31.409,-30.812,-29.118,-27.014,-25.031,
--23.162,-21.280,-19.623,-18.583,-18.147,-17.844,-17.285,-16.505,-15.738,-15.040,-14.326,-13.619,-13.051,-12.633,-12.224,-11.750,
--11.300,-10.942,-10.593,-10.173,-9.762,-9.460,-9.189,-8.815,-8.471,-8.517,-9.115,-9.994,-10.785,-11.451,-12.216,-13.130,
--13.941,-14.475,-14.933,-15.674,-16.804,-18.116,-19.367,-20.416,-21.131,-21.381,-21.211,-20.884,-20.625,-20.417,-20.174,-19.982,
--19.951,-19.840,-19.116,-17.542,-15.590,-14.066,-13.362,-13.207,-13.126,-12.942,-12.774,-12.732,-12.780,-12.827,-12.807,-12.643,
--12.280,-11.801,-11.424,-11.286,-11.286,-11.193,-10.921,-10.652,-10.716,-11.391,-12.742,-14.550,-16.341,-17.620,-18.173,-18.182,
--18.004,-17.880,-17.884,-18.055,-18.443,-18.981,-19.446,-19.661,-19.682,-19.714,-19.863,-20.087,-20.359,-20.724,-21.144,-21.454,
--21.575,-21.684,-22.018,-22.566,-23.105,-23.525,-23.874,-24.052,-23.730,-22.804,-21.771,-21.374,-21.834,-22.664,-23.264,-23.499,
--23.595,-23.700,-23.776,-23.806,-23.883,-24.121,-24.666,-25.789,-27.759,-30.544,-33.744,-36.832,-39.342,-40.889,-41.397,-41.482,
--42.255,-44.302,-46.909,-48.646,-48.753,-47.686,-46.352,-45.285,-44.755,-45.091,-46.289,-47.508,-47.677,-46.805,-46.187,-46.988,
--48.923,-50.698,-51.483,-51.539,-51.495,-51.556,-51.592,-51.592,-51.699,-51.945,-52.245,-52.590,-53.016,-53.418,-53.590,-53.472,
--53.204,-52.899,-52.533,-52.111,-51.774,-51.628,-51.582,-51.475,-51.299,-51.167,-51.110,-51.026,-50.854,-50.651,-50.472,-50.282,
--50.030,-49.747,-49.485,-49.229,-48.921,-48.548,-48.145,-47.736,-47.313,-46.874,-46.413,-45.905,-45.345,-44.808,-44.422,-44.269,
--44.325,-44.488,-44.625,-44.598,-44.338,-43.920,-43.511,-43.198,-42.917,-42.567,-42.147,-41.730,-41.328,-40.888,-40.396,-39.910,
--39.460,-38.981,-38.410,-37.774,-37.158,-36.597,-36.064,-35.538,-35.021,-34.490,-33.879,-33.157,-32.378,-31.630,-30.948,-30.287,
--29.577,-28.800,-28.007,-27.265,-26.577,-25.882,-25.126,-24.337,-23.572,-22.809,-21.961,-21.005,-20.059,-19.261,-18.620,-18.040,
--17.477,-16.982,-16.588,-16.229,-15.826,-15.394,-14.994,-14.630,-14.245,-13.822,-13.414,-13.058,-12.729,-12.386,-12.027,-11.657,
--11.247,-10.765,-10.239,-9.734,-9.277,-8.834,-8.368,-7.877,-7.377,-6.874,-6.367,-5.850,-5.301,-4.698,-4.061,-3.443,
--2.866,-2.276,-1.601,-.842,-.077,.629,1.283,1.942,2.647,3.411,4.234,5.115,6.039,6.974,7.878,8.728,
-9.535,10.340,11.176,12.020,12.813,13.516,14.154,14.776,15.385,15.946,16.431,16.851,17.209,17.485,17.666,17.777,
-17.856,17.913,17.935,17.937,17.965,18.060,18.227,18.453,18.730,19.047,19.382,19.712,20.023,20.311,20.576,20.834,
-21.111,21.422,21.750,22.056,22.321,22.555,22.779,23.014,23.275,23.558,23.828,24.035,24.155,24.214,24.255,24.297,
-24.316,24.282,24.204,24.130,24.117,24.172,24.259,24.367,24.567,24.955,25.567,26.380,27.389,28.598,29.869,30.884,
-31.391,31.524,31.729,32.322,33.174,33.911,34.358,34.653,34.970,35.261,35.340,35.124,34.720,34.336,34.166,34.292,
-34.610,34.872,34.907,34.788,34.707,34.683,34.501,33.990,33.260,32.598,32.168,31.896,31.611,31.208,30.696,30.166,
-29.741,29.458,29.211,28.847,28.372,27.947,27.689,27.533,27.373,27.238,27.224,27.290,27.285,27.169,27.078,27.134,
-27.284,27.407,27.475,27.521,27.521,27.423,27.275,27.189,27.187,27.214,27.327,27.716,28.435,29.220,29.696,29.763,
-29.647,29.595,29.655,29.766,29.947,30.267,30.509,30.988,31.316,31.460,31.518,31.573,31.649,31.769,31.935,32.068,
-32.039,31.794,31.409,30.979,30.517,29.965,29.303,28.614,28.050,27.734,27.649,27.610,27.408,26.994,26.511,26.094,
-25.709,25.238,24.692,24.266,24.167,24.448,24.986,25.587,26.088,26.429,26.665,26.857,26.973,26.921,26.699,26.413,
-26.103,25.661,25.015,24.319,23.803,23.469,23.084,22.519,21.935,21.553,21.351,21.139,20.839,20.564,20.431,20.442,
-20.565,20.791,21.097,21.449,21.882,22.460,23.143,23.825,24.560,25.558,26.809,27.864,28.252,28.060,27.796,27.615,
-26.983,25.317,22.772,20.144,18.075,16.612,15.501,14.611,13.939,13.423,12.980,12.638,12.479,12.478,12.522,12.571,
-12.648,12.700,12.625,12.474,12.482,12.802,13.303,13.735,14.022,14.280,14.579,14.809,14.819,14.606,14.333,14.165,
-14.122,14.057,13.794,13.309,12.784,12.422,12.240,12.066,11.768,11.395,11.069,10.808,10.523,10.162,9.784,9.484,
-9.302,9.192,9.064,8.892,8.798,8.991,9.518,10.090,10.274,9.905,9.229,8.620,8.226,7.978,7.814,7.751,
-7.750,7.683,7.492,7.279,7.190,7.258,7.413,7.551,7.499,7.034,6.083,4.911,3.978,3.527,3.386,3.224,
-2.917,2.616,2.514,2.644,2.882,3.056,3.065,2.976,3.043,3.529,4.413,5.282,5.582,5.041,3.858,2.494,
-1.290,.260,-.760,-1.834,-2.836,-3.639,-4.330,-5.161,-6.283,-7.624,-9.026,-10.438,-11.888,-13.345,-14.718,-15.991,
--17.253,-18.559,-19.842,-21.013,-22.093,-23.169,-24.257,-25.306,-26.293,-27.250,-28.179,-29.029,-29.780,-30.475,-31.138,-31.723,
--32.194,-32.610,-33.063,-33.564,-34.047,-34.456,-34.782,-35.019,-35.167,-35.270,-35.397,-35.564,-35.741,-35.940,-36.209,-36.503,
--36.651,-36.538,-36.253,-35.983,-35.780,-35.557,-35.277,-35.019,-34.804,-34.492,-33.966,-33.372,-33.067,-33.314,-34.058,-34.969,
--35.699,-36.150,-36.596,-37.476,-38.947,-40.648,-42.012,-42.856,-43.531,-44.456,-45.653,-46.842,-47.837,-48.642,-49.203,-49.361,
--49.133,-48.860,-48.903,-49.299,-49.846,-50.463,-51.260,-52.269,-53.293,-54.127,-54.776,-55.357,-55.852,-56.109,-56.091,-56.002,
--56.134,-56.621,-57.365,-58.158,-58.873,-59.551,-60.293,-61.029,-61.420,-61.107,-60.118,-58.974,-58.324,-58.450,-59.161,-60.075,
--60.921,-61.616,-62.174,-62.643,-63.044,-63.317,-63.359,-63.188,-63.048,-63.230,-63.756,-64.310,-64.556,-64.487,-64.398,-64.538,
--64.861,-65.138,-65.224,-65.155,-65.040,-64.953,-64.937,-65.021,-65.179,-65.317,-65.369,-65.385,-65.470,-65.654,-65.859,-66.017,
--66.147,-66.276,-66.359,-66.351,-66.308,-66.334,-66.414,-66.408,-66.238,-66.013,-65.874,-65.794,-65.615,-65.286,-64.956,-64.799,
--64.805,-64.797,-64.607,-64.181,-63.565,-62.869,-62.250,-61.838,-61.635,-61.505,-61.329,-61.155,-61.168,-61.503,-62.092,-62.680,
--63.004,-62.976,-62.688,-62.247,-61.631,-60.759,-59.718,-58.825,-58.383,-58.377,-58.481,-58.375,-58.009,-57.554,-57.170,-56.863,
--56.533,-56.104,-55.623,-55.235,-55.014,-54.802,-54.316,-53.526,-52.813,-52.569,-52.630,-52.368,-51.513,-50.695,-50.846,-52.052,
--53.278,-53.374,-52.199,-50.568,-49.268,-48.397,-47.630,-46.762,-45.797,-44.727,-43.551,-42.480,-41.861,-41.765,-41.821,-41.577,
--40.923,-40.075,-39.246,-38.505,-37.910,-37.542,-37.354,-37.126,-36.694,-36.126,-35.585,-35.100,-34.606,-34.147,-33.846,-33.653,
--33.323,-32.709,-31.970,-31.379,-31.018,-30.773,-30.532,-30.241,-29.834,-29.291,-28.746,-28.332,-27.896,-27.097,-25.903,-24.779,
--24.157,-23.881,-23.437,-22.674,-21.959,-21.575,-21.296,-20.744,-19.905,-19.011,-18.072,-16.884,-15.480,-14.222,-13.329,-12.588,
--11.687,-10.656,-9.761,-9.076,-8.423,-7.670,-6.864,-6.046,-5.161,-4.210,-3.314,-2.522,-1.690,-.673,.466,1.566,
-2.612,3.705,4.859,5.959,6.936,7.848,8.791,9.825,10.975,12.185,13.263,14.044,14.634,15.322,16.193,17.026,
-17.695,18.413,19.335,20.126,20.303,19.963,19.726,19.889,20.114,20.275,21.127,23.494,26.838,29.335,29.643,28.250,
-26.778,26.283,26.635,27.304,28.119,29.098,30.028,30.608,30.868,31.137,31.618,32.205,32.718,33.110,33.422,33.685,
-33.944,34.262,34.637,34.976,35.227,35.453,35.713,35.958,36.119,36.234,36.387,36.563,36.684,36.778,36.966,37.268,
-37.529,37.631,37.669,37.819,38.093,38.345,38.490,38.606,38.790,39.024,39.247,39.459,39.691,39.919,40.098,40.266,
-40.517,40.849,41.139,41.319,41.526,41.978,42.706,43.504,44.150,44.627,45.057,45.479,45.803,45.995,46.206,46.609,
-47.158,47.617,47.838,47.939,48.124,48.410,48.611,48.596,48.462,48.393,48.432,48.461,48.400,48.357,48.532,48.982,
-49.517,49.841,49.798,49.488,49.120,48.782,48.380,47.805,47.087,46.326,45.498,44.439,43.033,41.321,39.353,37.061,
-34.457,32.027,30.724,31.302,33.535,36.199,37.960,38.361,37.947,37.548,37.596,38.078,38.846,39.642,39.935,39.167,
-37.397,35.504,34.437,34.283,34.311,33.927,33.278,32.805,32.554,32.214,31.656,31.032,30.380,29.557,28.688,28.269,
-28.484,28.699,28.118,26.910,26.205,26.781,28.095,28.899,28.556,27.430,26.124,24.832,23.544,22.458,21.830,21.562,
-21.266,20.725,20.063,19.421,18.770,18.195,18.122,18.925,20.283,21.222,20.973,19.689,18.188,17.085,16.399,15.980,
-15.968,16.559,17.463,17.933,17.483,16.373,15.248,14.465,13.950,13.603,13.493,13.586,13.565,13.164,12.546,12.113,
-11.973,11.831,11.433,10.924,10.611,10.534,10.440,10.125,9.665,9.273,9.049,8.909,8.707,8.388,8.052,7.850,
-7.775,7.633,7.293,6.927,6.823,6.917,6.744,6.017,5.113,4.735,5.073,5.558,5.548,5.062,4.649,4.658,
-4.878,4.928,4.776,4.719,4.968,5.394,5.718,5.817,5.786,5.741,5.649,5.384,4.905,4.354,3.940,3.769,
-3.803,3.930,4.032,4.000,3.774,3.433,3.169,3.130,3.277,3.439,3.492,3.432,3.320,3.204,3.098,2.982,
-2.821,2.655,2.657,2.976,3.501,3.871,3.847,3.606,3.557,3.876,4.368,4.765,5.022,5.258,5.525,5.779,
-6.015,6.300,6.664,7.045,7.358,7.558,7.644,7.687,7.826,8.147,8.540,8.785,8.831,8.881,9.107,9.389,
-9.468,9.301,9.114,9.082,9.136,9.130,9.079,9.107,9.238,9.375,9.439,9.429,9.361,9.238,9.120,9.090,
-9.149,9.191,9.139,9.041,8.980,8.962,8.936,8.884,8.825,8.746,8.614,8.440,8.277,8.146,8.028,7.907,
-7.796,7.690,7.569,7.436,7.301,7.137,6.911,6.668,6.490,6.346,6.100,5.745,5.537,5.741,6.329,7.099,
-8.074,9.546,11.626,13.905,15.693,16.510,16.184,14.596,11.669,7.716,3.600,.326,-1.595,-2.356,-2.508,-2.513,
--2.556,-2.639,-2.739,-2.894,-3.169,-3.573,-4.030,-4.454,-4.848,-5.266,-5.716,-6.148,-6.548,-6.960,-7.406,-7.833,
--8.188,-8.501,-8.838,-9.211,-9.582,-9.949,-10.349,-10.783,-11.192,-11.533,-11.836,-12.158,-12.520,-12.916,-13.346,-13.813,
--14.300,-14.783,-15.255,-15.721,-16.177,-16.616,-17.035,-17.430,-17.786,-18.111,-18.440,-18.800,-19.176,-19.547,-19.941,-20.397,
--20.898,-21.373,-21.780,-22.140,-22.470,-22.750,-22.986,-23.252,-23.610,-24.032,-24.443,-24.830,-25.243,-25.701,-26.171,-26.636,
--27.131,-27.660,-28.166,-28.597,-28.981,-29.384,-29.829,-30.308,-30.821,-31.361,-31.869,-32.290,-32.657,-33.062,-33.522,-33.962,
--34.332,-34.684,-35.073,-35.464,-35.793,-36.078,-36.403,-36.779,-37.124,-37.388,-37.639,-37.981,-38.434,-38.929,-39.395,-39.814,
--40.202,-40.568,-40.909,-41.207,-41.454,-41.684,-41.957,-42.303,-42.685,-43.053,-43.407,-43.768,-44.114,-44.394,-44.609,-44.829,
--45.091,-45.348,-45.547,-45.713,-45.907,-46.129,-46.328,-46.496,-46.679,-46.889,-47.070,-47.182,-47.271,-47.387,-47.500,-47.542,
--47.518,-47.510,-47.562,-47.622,-47.635,-47.625,-47.640,-47.656,-47.600,-47.447,-47.258,-47.092,-46.945,-46.788,-46.624,-46.471,
--46.314,-46.116,-45.867,-45.585,-45.279,-44.940,-44.577,-44.214,-43.852,-43.463,-43.046,-42.648,-42.309,-41.995,-41.636,-41.213,
--40.756,-40.277,-39.758,-39.212,-38.694,-38.223,-37.746,-37.225,-36.706,-36.249,-35.826,-35.367,-34.872,-34.403,-33.962,-33.473,
--32.934,-32.454,-32.105,-31.795,-31.417,-31.003,-30.625,-30.209,-29.677,-29.289,-29.530,-30.465,-31.354,-31.190,-29.648,-27.303,
--24.921,-22.778,-20.802,-19.075,-17.890,-17.317,-17.034,-16.666,-16.133,-15.550,-14.957,-14.304,-13.638,-13.089,-12.680,-12.279,
--11.789,-11.258,-10.752,-10.227,-9.640,-9.077,-8.656,-8.333,-7.962,-7.555,-7.351,-7.547,-8.100,-8.863,-9.812,-10.981,
--12.198,-13.120,-13.609,-13.961,-14.635,-15.810,-17.278,-18.701,-19.826,-20.493,-20.634,-20.366,-19.968,-19.645,-19.373,-19.063,
--18.796,-18.709,-18.649,-18.159,-16.957,-15.329,-13.922,-13.143,-12.887,-12.792,-12.632,-12.404,-12.193,-12.060,-12.024,-12.035,
--11.955,-11.682,-11.285,-10.957,-10.789,-10.665,-10.436,-10.165,-10.141,-10.651,-11.764,-13.299,-14.924,-16.274,-17.094,-17.348,
--17.215,-16.943,-16.723,-16.692,-16.973,-17.584,-18.319,-18.842,-18.993,-18.936,-18.946,-19.098,-19.258,-19.360,-19.509,-19.783,
--20.071,-20.248,-20.411,-20.772,-21.368,-22.037,-22.683,-23.343,-23.912,-24.043,-23.534,-22.716,-22.197,-22.222,-22.487,-22.619,
--22.604,-22.621,-22.657,-22.524,-22.159,-21.717,-21.421,-21.509,-22.301,-24.073,-26.780,-30.043,-33.443,-36.656,-39.303,-41.013,
--41.894,-42.717,-44.225,-46.275,-47.951,-48.565,-48.255,-47.598,-47.034,-46.861,-47.324,-48.253,-48.812,-48.219,-46.822,-45.991,
--46.695,-48.488,-50.161,-51.099,-51.597,-52.077,-52.511,-52.731,-52.859,-53.149,-53.632,-54.161,-54.696,-55.286,-55.843,-56.151,
--56.103,-55.759,-55.168,-54.345,-53.466,-52.869,-52.728,-52.834,-52.838,-52.618,-52.295,-51.974,-51.634,-51.273,-50.967,-50.753,
--50.544,-50.249,-49.877,-49.482,-49.058,-48.578,-48.072,-47.621,-47.257,-46.942,-46.610,-46.209,-45.713,-45.165,-44.699,-44.452,
--44.453,-44.619,-44.839,-45.008,-45.000,-44.717,-44.209,-43.673,-43.264,-42.946,-42.581,-42.128,-41.670,-41.273,-40.906,-40.519,
--40.124,-39.736,-39.310,-38.779,-38.144,-37.486,-36.881,-36.349,-35.866,-35.385,-34.854,-34.239,-33.552,-32.841,-32.141,-31.446,
--30.724,-29.956,-29.148,-28.341,-27.580,-26.874,-26.179,-25.455,-24.713,-23.982,-23.226,-22.369,-21.415,-20.492,-19.726,-19.100,
--18.520,-17.966,-17.505,-17.153,-16.815,-16.403,-15.941,-15.508,-15.115,-14.711,-14.284,-13.882,-13.524,-13.169,-12.786,-12.402,
--12.035,-11.646,-11.183,-10.675,-10.200,-9.789,-9.393,-8.946,-8.436,-7.895,-7.360,-6.842,-6.326,-5.779,-5.179,-4.551,
--3.943,-3.362,-2.751,-2.062,-1.319,-.592,.085,.743,1.426,2.149,2.920,3.754,4.659,5.612,6.569,7.495,
-8.373,9.213,10.046,10.896,11.751,12.561,13.288,13.953,14.595,15.213,15.775,16.267,16.706,17.099,17.418,17.642,
-17.794,17.916,18.018,18.090,18.142,18.215,18.340,18.523,18.766,19.069,19.411,19.752,20.071,20.374,20.675,20.965,
-21.243,21.531,21.845,22.156,22.412,22.600,22.765,22.956,23.190,23.470,23.795,24.139,24.433,24.608,24.661,24.655,
-24.647,24.641,24.606,24.542,24.495,24.502,24.553,24.607,24.673,24.841,25.216,25.823,26.617,27.572,28.691,29.875,
-30.863,31.406,31.554,31.651,32.005,32.591,33.158,33.557,33.865,34.187,34.458,34.517,34.305,33.943,33.636,33.553,
-33.745,34.107,34.418,34.518,34.442,34.342,34.261,34.064,33.622,33.000,32.404,31.969,31.654,31.325,30.885,30.346,
-29.814,29.401,29.102,28.783,28.333,27.825,27.446,27.260,27.145,26.993,26.874,26.908,27.044,27.112,27.054,26.996,
-27.058,27.201,27.323,27.400,27.451,27.444,27.339,27.191,27.102,27.102,27.169,27.368,27.833,28.556,29.303,29.815,
-30.035,30.074,30.021,29.923,29.892,30.082,30.509,30.971,31.497,31.662,31.594,31.542,31.581,31.640,31.704,31.811,
-31.885,31.756,31.362,30.838,30.340,29.877,29.362,28.767,28.167,27.661,27.312,27.129,27.028,26.849,26.488,26.006,
-25.556,25.192,24.818,24.359,23.933,23.791,24.095,24.765,25.522,26.095,26.404,26.572,26.734,26.863,26.823,26.586,
-26.282,26.002,25.642,25.059,24.329,23.694,23.261,22.885,22.408,21.885,21.471,21.193,20.943,20.661,20.401,20.223,
-20.134,20.150,20.311,20.615,21.009,21.459,21.945,22.391,22.737,23.126,23.828,24.859,25.795,26.206,26.175,26.140,
-26.159,25.656,24.075,21.627,19.138,17.246,15.959,14.966,14.102,13.399,12.881,12.502,12.243,12.113,12.088,12.138,
-12.271,12.462,12.579,12.508,12.357,12.396,12.756,13.272,13.678,13.883,13.987,14.085,14.167,14.177,14.098,13.970,
-13.863,13.827,13.816,13.685,13.329,12.827,12.372,12.070,11.847,11.585,11.263,10.930,10.609,10.286,9.972,9.695,
-9.457,9.243,9.042,8.852,8.676,8.594,8.750,9.169,9.605,9.690,9.305,8.704,8.212,7.909,7.670,7.433,
-7.253,7.144,7.021,6.849,6.728,6.768,6.954,7.188,7.367,7.337,6.877,5.895,4.646,3.613,3.106,3.016,
-3.003,2.828,2.499,2.181,2.048,2.163,2.396,2.499,2.361,2.202,2.425,3.193,4.189,4.815,4.646,3.704,
-2.368,1.050,-.059,-1.027,-1.988,-2.954,-3.835,-4.629,-5.505,-6.642,-8.030,-9.503,-10.940,-12.344,-13.736,-15.069,
--16.302,-17.482,-18.680,-19.880,-21.014,-22.077,-23.130,-24.204,-25.259,-26.263,-27.233,-28.177,-29.044,-29.783,-30.417,-31.015,
--31.600,-32.140,-32.615,-33.043,-33.453,-33.852,-34.225,-34.546,-34.790,-34.971,-35.154,-35.392,-35.661,-35.897,-36.103,-36.329,
--36.563,-36.688,-36.618,-36.414,-36.182,-35.939,-35.636,-35.286,-34.949,-34.601,-34.145,-33.626,-33.305,-33.448,-34.062,-34.915,
--35.756,-36.460,-37.047,-37.683,-38.613,-39.923,-41.356,-42.506,-43.301,-44.134,-45.407,-47.022,-48.452,-49.279,-49.506,-49.393,
--49.182,-49.058,-49.169,-49.539,-50.014,-50.450,-50.900,-51.524,-52.336,-53.175,-53.941,-54.685,-55.422,-55.981,-56.166,-56.035,
--55.907,-56.086,-56.648,-57.449,-58.293,-59.084,-59.882,-60.803,-61.784,-62.446,-62.344,-61.431,-60.238,-59.482,-59.518,-60.166,
--61.025,-61.826,-62.512,-63.121,-63.678,-64.150,-64.429,-64.420,-64.220,-64.142,-64.444,-65.016,-65.447,-65.461,-65.220,-65.117,
--65.332,-65.679,-65.881,-65.878,-65.802,-65.768,-65.774,-65.806,-65.897,-66.059,-66.229,-66.345,-66.437,-66.574,-66.749,-66.893,
--66.992,-67.111,-67.273,-67.388,-67.369,-67.265,-67.199,-67.181,-67.091,-66.861,-66.580,-66.361,-66.157,-65.839,-65.418,-65.095,
--65.036,-65.165,-65.228,-65.020,-64.510,-63.802,-63.058,-62.464,-62.159,-62.131,-62.212,-62.229,-62.183,-62.246,-62.559,-63.056,
--63.496,-63.666,-63.553,-63.286,-62.938,-62.426,-61.652,-60.723,-59.951,-59.573,-59.527,-59.528,-59.352,-58.985,-58.525,-58.029,
--57.500,-56.956,-56.436,-55.974,-55.596,-55.292,-54.951,-54.400,-53.630,-52.941,-52.674,-52.728,-52.542,-51.752,-50.769,-50.466,
--51.183,-52.248,-52.623,-51.923,-50.643,-49.459,-48.565,-47.733,-46.774,-45.717,-44.647,-43.603,-42.696,-42.106,-41.855,-41.680,
--41.265,-40.571,-39.818,-39.173,-38.615,-38.093,-37.670,-37.396,-37.142,-36.717,-36.100,-35.458,-34.930,-34.515,-34.159,-33.848,
--33.533,-33.087,-32.437,-31.686,-31.035,-30.589,-30.309,-30.103,-29.863,-29.487,-28.966,-28.437,-28.004,-27.504,-26.656,-25.509,
--24.528,-24.072,-23.910,-23.517,-22.752,-21.974,-21.459,-21.018,-20.331,-19.410,-18.469,-17.504,-16.331,-14.995,-13.821,-12.971,
--12.227,-11.340,-10.387,-9.592,-8.939,-8.213,-7.332,-6.415,-5.526,-4.582,-3.568,-2.622,-1.810,-.982,.025,1.146,
-2.206,3.184,4.186,5.229,6.213,7.111,8.024,9.028,10.098,11.193,12.295,13.318,14.140,14.805,15.524,16.397,
-17.274,18.036,18.829,19.772,20.594,20.875,20.663,20.464,20.554,20.697,20.837,21.679,23.974,27.246,29.791,30.260,
-28.979,27.459,26.848,27.183,27.956,28.855,29.792,30.600,31.089,31.326,31.602,32.102,32.721,33.254,33.615,33.857,
-34.069,34.316,34.617,34.945,35.253,35.535,35.813,36.075,36.279,36.435,36.610,36.822,36.994,37.083,37.172,37.365,
-37.624,37.813,37.910,38.040,38.280,38.537,38.691,38.776,38.915,39.132,39.339,39.502,39.693,39.945,40.182,40.337,
-40.488,40.752,41.093,41.353,41.503,41.750,42.318,43.161,43.988,44.571,44.957,45.329,45.730,46.039,46.198,46.360,
-46.728,47.275,47.747,47.959,48.013,48.153,48.445,48.711,48.770,48.666,48.593,48.640,48.700,48.649,48.565,48.689,
-49.150,49.764,50.156,50.105,49.745,49.379,49.121,48.800,48.232,47.479,46.745,46.053,45.168,43.871,42.187,40.244,
-38.019,35.455,32.897,31.216,31.220,32.854,35.109,36.868,37.797,38.336,38.911,39.441,39.720,39.958,40.535,41.222,
-41.110,39.638,37.460,35.898,35.529,35.668,35.329,34.342,33.283,32.601,32.236,31.991,31.803,31.529,30.868,29.786,
-28.776,28.327,28.251,27.915,27.168,26.684,27.149,28.344,29.284,29.178,28.041,26.450,24.948,23.765,22.888,22.212,
-21.661,21.230,20.917,20.597,20.090,19.446,19.105,19.562,20.784,22.040,22.412,21.572,20.034,18.652,17.876,17.534,
-17.300,17.219,17.578,18.302,18.736,18.242,16.916,15.504,14.607,14.208,13.993,13.855,13.852,13.853,13.579,13.011,
-12.483,12.248,12.146,11.872,11.427,11.089,10.976,10.870,10.532,10.023,9.612,9.426,9.326,9.119,8.798,8.519,
-8.360,8.173,7.751,7.179,6.875,7.136,7.635,7.620,6.738,5.538,4.939,5.214,5.750,5.830,5.428,5.062,
-5.042,5.151,5.077,4.884,4.906,5.288,5.810,6.154,6.199,6.030,5.765,5.451,5.116,4.809,4.567,4.370,
-4.188,4.057,4.058,4.174,4.244,4.106,3.809,3.585,3.605,3.808,4.000,4.067,4.021,3.909,3.756,3.600,
-3.479,3.368,3.216,3.091,3.165,3.491,3.862,4.006,3.915,3.855,4.056,4.488,4.951,5.300,5.519,5.674,
-5.864,6.196,6.694,7.256,7.724,7.996,8.053,7.941,7.813,7.904,8.323,8.871,9.207,9.234,9.194,9.299,
-9.430,9.347,9.092,8.977,9.145,9.379,9.405,9.240,9.104,9.104,9.150,9.154,9.131,9.106,9.049,8.957,
-8.896,8.909,8.937,8.908,8.841,8.813,8.841,8.870,8.852,8.792,8.702,8.584,8.445,8.314,8.214,8.148,
-8.104,8.050,7.951,7.827,7.748,7.725,7.635,7.352,6.938,6.599,6.427,6.280,6.002,5.641,5.368,5.279,
-5.406,5.876,6.865,8.394,10.319,12.551,14.997,17.148,17.919,16.321,12.407,7.432,2.988,-.019,-1.609,-2.286,
--2.529,-2.625,-2.700,-2.789,-2.917,-3.137,-3.486,-3.915,-4.336,-4.724,-5.126,-5.559,-5.977,-6.356,-6.738,-7.157,
--7.571,-7.931,-8.257,-8.606,-8.985,-9.365,-9.750,-10.167,-10.596,-10.977,-11.290,-11.585,-11.913,-12.274,-12.658,-13.083,
--13.563,-14.073,-14.571,-15.047,-15.510,-15.957,-16.380,-16.787,-17.185,-17.564,-17.920,-18.282,-18.672,-19.069,-19.446,-19.832,
--20.283,-20.789,-21.270,-21.679,-22.043,-22.382,-22.668,-22.894,-23.140,-23.485,-23.905,-24.311,-24.680,-25.072,-25.526,-26.015,
--26.511,-27.030,-27.567,-28.063,-28.476,-28.842,-29.226,-29.646,-30.089,-30.566,-31.087,-31.606,-32.069,-32.501,-32.972,-33.480,
--33.938,-34.307,-34.657,-35.050,-35.444,-35.770,-36.058,-36.399,-36.803,-37.176,-37.462,-37.727,-38.069,-38.502,-38.964,-39.401,
--39.807,-40.192,-40.561,-40.909,-41.221,-41.485,-41.727,-42.007,-42.354,-42.725,-43.063,-43.370,-43.688,-44.016,-44.304,-44.534,
--44.752,-44.993,-45.228,-45.425,-45.614,-45.832,-46.056,-46.236,-46.392,-46.591,-46.834,-47.040,-47.160,-47.244,-47.357,-47.468,
--47.505,-47.480,-47.485,-47.559,-47.643,-47.670,-47.663,-47.669,-47.663,-47.578,-47.404,-47.205,-47.031,-46.868,-46.693,-46.528,
--46.387,-46.232,-46.009,-45.729,-45.447,-45.176,-44.872,-44.514,-44.145,-43.799,-43.446,-43.051,-42.644,-42.282,-41.952,-41.582,
--41.138,-40.656,-40.170,-39.669,-39.151,-38.651,-38.179,-37.681,-37.120,-36.564,-36.101,-35.710,-35.288,-34.808,-34.344,-33.927,
--33.486,-32.987,-32.515,-32.131,-31.754,-31.296,-30.847,-30.542,-30.279,-29.825,-29.287,-29.198,-29.875,-30.794,-30.899,-29.603,
--27.292,-24.791,-22.564,-20.605,-18.885,-17.566,-16.749,-16.258,-15.836,-15.406,-15.017,-14.629,-14.117,-13.476,-12.861,-12.385,
--11.976,-11.487,-10.871,-10.185,-9.481,-8.794,-8.202,-7.793,-7.545,-7.316,-6.992,-6.618,-6.357,-6.379,-6.815,-7.733,
--9.042,-10.418,-11.465,-12.054,-12.480,-13.230,-14.558,-16.302,-18.031,-19.318,-19.923,-19.873,-19.441,-18.970,-18.626,-18.329,
--17.968,-17.618,-17.431,-17.343,-17.019,-16.189,-14.976,-13.807,-13.015,-12.608,-12.387,-12.173,-11.913,-11.642,-11.431,-11.333,
--11.312,-11.247,-11.050,-10.753,-10.453,-10.171,-9.852,-9.533,-9.437,-9.839,-10.837,-12.258,-13.774,-15.071,-15.950,-16.358,
--16.375,-16.158,-15.868,-15.655,-15.687,-16.101,-16.860,-17.674,-18.183,-18.280,-18.205,-18.262,-18.484,-18.667,-18.696,-18.704,
--18.860,-19.137,-19.383,-19.566,-19.794,-20.119,-20.484,-20.887,-21.420,-22.055,-22.527,-22.614,-22.442,-22.349,-22.446,-22.530,
--22.460,-22.406,-22.597,-22.970,-23.224,-23.150,-22.765,-22.229,-21.831,-22.032,-23.238,-25.463,-28.340,-31.507,-34.757,-37.747,
--39.893,-40.885,-41.192,-41.712,-42.873,-44.318,-45.469,-46.138,-46.500,-46.787,-47.214,-47.930,-48.727,-49.000,-48.382,-47.393,
--47.066,-47.824,-49.089,-50.155,-51.053,-52.243,-53.711,-54.894,-55.471,-55.785,-56.329,-57.139,-57.928,-58.574,-59.172,-59.720,
--60.034,-59.972,-59.529,-58.725,-57.615,-56.459,-55.668,-55.417,-55.448,-55.351,-54.965,-54.390,-53.728,-52.996,-52.257,-51.645,
--51.206,-50.829,-50.399,-49.910,-49.395,-48.829,-48.188,-47.554,-47.054,-46.736,-46.530,-46.330,-46.055,-45.668,-45.223,-44.884,
--44.801,-44.967,-45.231,-45.448,-45.554,-45.496,-45.192,-44.645,-44.006,-43.455,-43.016,-42.582,-42.087,-41.598,-41.208,-40.920,
--40.667,-40.392,-40.076,-39.693,-39.210,-38.622,-37.974,-37.335,-36.758,-36.242,-35.732,-35.161,-34.520,-33.866,-33.243,-32.631,
--31.970,-31.236,-30.452,-29.649,-28.836,-28.028,-27.248,-26.508,-25.796,-25.101,-24.396,-23.624,-22.740,-21.793,-20.919,-20.198,
--19.577,-18.968,-18.390,-17.941,-17.633,-17.343,-16.960,-16.502,-16.047,-15.618,-15.189,-14.770,-14.398,-14.059,-13.685,-13.254,
--12.819,-12.426,-12.033,-11.582,-11.091,-10.632,-10.236,-9.850,-9.411,-8.908,-8.375,-7.846,-7.329,-6.813,-6.274,-5.696,
--5.096,-4.493,-3.880,-3.221,-2.513,-1.802,-1.132,-.486,.184,.898,1.645,2.437,3.304,4.249,5.222,6.169,
-7.081,7.973,8.851,9.714,10.568,11.415,12.231,12.991,13.697,14.367,14.992,15.544,16.026,16.470,16.886,17.244,
-17.512,17.708,17.872,18.021,18.150,18.267,18.397,18.557,18.756,19.012,19.339,19.713,20.078,20.411,20.735,21.072,
-21.403,21.699,21.975,22.261,22.541,22.767,22.928,23.074,23.257,23.491,23.773,24.111,24.491,24.836,25.055,25.128,
-25.115,25.077,25.027,24.954,24.879,24.848,24.872,24.919,24.954,25.007,25.159,25.482,25.973,26.600,27.372,28.341,
-29.469,30.533,31.247,31.533,31.618,31.817,32.234,32.726,33.122,33.402,33.632,33.818,33.890,33.804,33.615,33.449,
-33.423,33.580,33.850,34.069,34.111,33.995,33.842,33.711,33.525,33.181,32.693,32.185,31.760,31.409,31.044,30.596,
-30.086,29.611,29.245,28.947,28.585,28.098,27.599,27.257,27.096,26.992,26.862,26.777,26.818,26.924,26.966,26.928,
-26.911,26.977,27.079,27.166,27.254,27.338,27.339,27.201,26.989,26.831,26.789,26.881,27.163,27.685,28.371,29.040,
-29.579,29.981,30.214,30.203,30.019,29.973,30.329,30.971,31.445,31.953,31.897,31.594,31.433,31.455,31.489,31.497,
-31.546,31.554,31.297,30.710,30.007,29.425,28.983,28.559,28.106,27.672,27.287,26.945,26.666,26.463,26.257,25.929,
-25.489,25.089,24.818,24.563,24.178,23.735,23.540,23.847,24.607,25.490,26.156,26.498,26.649,26.766,26.844,26.766,
-26.504,26.189,25.917,25.592,25.056,24.338,23.665,23.191,22.833,22.429,21.962,21.542,21.220,20.934,20.624,20.302,
-20.012,19.804,19.739,19.863,20.147,20.507,20.886,21.255,21.541,21.688,21.819,22.186,22.845,23.494,23.821,23.914,
-24.088,24.282,23.913,22.501,20.298,18.091,16.449,15.337,14.434,13.595,12.898,12.422,12.137,11.970,11.872,11.833,
-11.896,12.099,12.368,12.513,12.433,12.290,12.370,12.767,13.283,13.651,13.781,13.747,13.656,13.582,13.562,13.582,
-13.576,13.521,13.487,13.521,13.519,13.306,12.848,12.309,11.873,11.579,11.348,11.095,10.783,10.416,10.051,9.758,
-9.543,9.329,9.066,8.804,8.622,8.517,8.461,8.492,8.645,8.799,8.737,8.406,8.002,7.727,7.546,7.297,
-6.952,6.647,6.470,6.375,6.321,6.358,6.540,6.814,7.074,7.231,7.156,6.658,5.667,4.419,3.355,2.778,
-2.647,2.694,2.649,2.385,1.960,1.596,1.516,1.717,1.925,1.880,1.641,1.549,1.880,2.586,3.336,3.723,
-3.462,2.533,1.217,-.083,-1.151,-2.079,-3.049,-4.085,-5.087,-6.062,-7.164,-8.480,-9.909,-11.298,-12.615,-13.912,
--15.181,-16.366,-17.475,-18.598,-19.773,-20.937,-22.026,-23.066,-24.113,-25.162,-26.169,-27.118,-28.025,-28.877,-29.633,-30.287,
--30.885,-31.467,-32.021,-32.512,-32.930,-33.298,-33.642,-33.964,-34.250,-34.494,-34.728,-35.004,-35.340,-35.679,-35.957,-36.173,
--36.372,-36.550,-36.639,-36.609,-36.503,-36.361,-36.144,-35.818,-35.424,-35.001,-34.493,-33.864,-33.307,-33.180,-33.661,-34.546,
--35.484,-36.313,-37.081,-37.855,-38.660,-39.573,-40.661,-41.795,-42.720,-43.449,-44.398,-45.937,-47.845,-49.395,-50.027,-49.823,
--49.320,-49.009,-49.069,-49.432,-49.920,-50.377,-50.775,-51.231,-51.848,-52.576,-53.298,-53.998,-54.730,-55.417,-55.833,-55.862,
--55.696,-55.681,-56.020,-56.673,-57.496,-58.369,-59.237,-60.142,-61.190,-62.348,-63.258,-63.419,-62.673,-61.478,-60.576,-60.411,
--60.900,-61.693,-62.510,-63.247,-63.904,-64.510,-65.040,-65.371,-65.377,-65.165,-65.114,-65.521,-66.217,-66.679,-66.590,-66.187,
--65.973,-66.156,-66.502,-66.703,-66.722,-66.720,-66.795,-66.901,-66.988,-67.082,-67.211,-67.343,-67.450,-67.567,-67.721,-67.865,
--67.938,-67.975,-68.077,-68.255,-68.392,-68.384,-68.258,-68.101,-67.924,-67.682,-67.392,-67.134,-66.904,-66.563,-66.033,-65.473,
--65.169,-65.217,-65.406,-65.422,-65.129,-64.607,-64.006,-63.447,-63.041,-62.885,-62.972,-63.147,-63.243,-63.246,-63.305,-63.545,
--63.900,-64.181,-64.269,-64.229,-64.177,-64.083,-63.761,-63.098,-62.245,-61.522,-61.131,-60.994,-60.897,-60.714,-60.443,-60.069,
--59.527,-58.819,-58.086,-57.484,-57.037,-56.641,-56.193,-55.632,-54.920,-54.092,-53.349,-52.934,-52.811,-52.576,-51.856,-50.812,
--50.097,-50.180,-50.821,-51.309,-51.185,-50.577,-49.849,-49.095,-48.132,-46.877,-45.546,-44.430,-43.621,-43.024,-42.532,-42.078,
--41.573,-40.943,-40.249,-39.661,-39.250,-38.889,-38.432,-37.908,-37.448,-37.055,-36.582,-35.954,-35.306,-34.810,-34.472,-34.143,
--33.711,-33.180,-32.597,-31.985,-31.367,-30.791,-30.309,-29.945,-29.683,-29.438,-29.091,-28.599,-28.058,-27.553,-26.974,-26.137,
--25.120,-24.306,-23.947,-23.800,-23.408,-22.661,-21.869,-21.252,-20.635,-19.758,-18.672,-17.612,-16.623,-15.569,-14.451,-13.465,
--12.674,-11.891,-10.975,-10.056,-9.310,-8.657,-7.871,-6.901,-5.892,-4.915,-3.904,-2.853,-1.877,-1.022,-.157,.815,
-1.801,2.685,3.520,4.423,5.360,6.229,7.086,8.099,9.273,10.409,11.382,12.290,13.242,14.171,14.983,15.750,
-16.598,17.507,18.373,19.218,20.100,20.876,21.284,21.318,21.269,21.317,21.368,21.525,22.427,24.642,27.698,30.121,
-30.723,29.711,28.351,27.717,27.974,28.714,29.582,30.423,31.119,31.576,31.853,32.146,32.589,33.144,33.683,34.124,
-34.461,34.728,34.967,35.209,35.469,35.743,36.021,36.276,36.471,36.625,36.818,37.100,37.391,37.558,37.597,37.647,
-37.807,38.009,38.154,38.273,38.466,38.712,38.879,38.933,39.010,39.217,39.484,39.679,39.813,40.006,40.276,40.510,
-40.659,40.830,41.113,41.418,41.601,41.717,42.033,42.715,43.607,44.376,44.848,45.140,45.457,45.835,46.146,46.331,
-46.523,46.892,47.414,47.865,48.078,48.144,48.287,48.581,48.859,48.934,48.829,48.743,48.793,48.876,48.833,48.706,
-48.759,49.184,49.819,50.245,50.196,49.830,49.520,49.402,49.238,48.757,48.009,47.267,46.608,45.768,44.448,42.635,
-40.519,38.178,35.588,33.010,31.172,30.804,31.938,33.823,35.643,37.223,38.822,40.343,41.115,40.747,39.923,39.872,
-40.881,41.766,41.181,39.250,37.463,36.929,37.183,36.948,35.701,34.103,33.048,32.784,32.993,33.273,33.267,32.645,
-31.367,29.914,28.926,28.541,28.303,27.824,27.313,27.308,27.953,28.726,28.882,28.119,26.807,25.622,24.929,24.492,
-23.815,22.770,21.753,21.166,20.932,20.705,20.486,20.716,21.635,22.758,23.185,22.440,20.914,19.511,18.914,19.099,
-19.446,19.349,18.810,18.372,18.376,18.427,17.822,16.490,15.180,14.600,14.634,14.643,14.335,13.980,13.832,13.738,
-13.473,13.147,13.004,12.987,12.805,12.376,11.930,11.638,11.368,10.935,10.419,10.056,9.885,9.714,9.420,9.127,
-8.987,8.886,8.507,7.741,6.965,6.763,7.289,7.958,7.936,7.011,5.870,5.387,5.704,6.175,6.192,5.823,
-5.548,5.559,5.593,5.409,5.166,5.211,5.633,6.169,6.507,6.527,6.280,5.861,5.390,5.023,4.873,4.882,
-4.861,4.688,4.460,4.369,4.455,4.536,4.424,4.168,4.001,4.062,4.265,4.443,4.543,4.591,4.571,4.433,
-4.224,4.066,3.982,3.861,3.657,3.527,3.662,4.020,4.340,4.440,4.403,4.455,4.718,5.120,5.496,5.734,
-5.877,6.095,6.539,7.171,7.782,8.185,8.348,8.327,8.195,8.091,8.238,8.721,9.279,9.507,9.319,9.037,
-8.965,9.016,8.944,8.788,8.852,9.234,9.628,9.700,9.479,9.243,9.135,9.073,8.974,8.884,8.846,8.802,
-8.691,8.570,8.530,8.569,8.613,8.633,8.660,8.712,8.757,8.761,8.726,8.667,8.591,8.500,8.402,8.314,
-8.253,8.216,8.158,8.030,7.861,7.751,7.740,7.719,7.547,7.245,6.967,6.784,6.597,6.309,5.955,5.628,
-5.368,5.213,5.256,5.555,6.130,7.249,9.557,13.459,18.149,21.546,21.647,18.106,12.436,6.741,2.374,-.383,
--1.837,-2.432,-2.600,-2.670,-2.781,-2.933,-3.136,-3.441,-3.842,-4.256,-4.640,-5.027,-5.443,-5.851,-6.216,-6.576,
--6.966,-7.361,-7.722,-8.068,-8.442,-8.833,-9.206,-9.572,-9.965,-10.368,-10.723,-11.021,-11.325,-11.674,-12.050,-12.433,
--12.849,-13.322,-13.828,-14.326,-14.811,-15.291,-15.747,-16.159,-16.546,-16.934,-17.315,-17.676,-18.046,-18.457,-18.889,-19.297,
--19.698,-20.151,-20.653,-21.129,-21.536,-21.912,-22.280,-22.593,-22.822,-23.044,-23.368,-23.787,-24.202,-24.569,-24.947,-25.394,
--25.892,-26.408,-26.939,-27.470,-27.948,-28.343,-28.700,-29.082,-29.494,-29.916,-30.363,-30.860,-31.374,-31.861,-32.341,-32.870,
--33.425,-33.906,-34.277,-34.616,-34.997,-35.387,-35.723,-36.032,-36.397,-36.814,-37.199,-37.509,-37.809,-38.172,-38.586,-38.997,
--39.386,-39.770,-40.154,-40.528,-40.883,-41.211,-41.498,-41.757,-42.040,-42.376,-42.723,-43.023,-43.281,-43.552,-43.856,-44.150,
--44.405,-44.640,-44.873,-45.094,-45.298,-45.521,-45.775,-46.007,-46.167,-46.295,-46.478,-46.727,-46.954,-47.102,-47.211,-47.330,
--47.434,-47.469,-47.461,-47.489,-47.569,-47.631,-47.626,-47.592,-47.576,-47.552,-47.460,-47.302,-47.134,-46.973,-46.784,-46.559,
--46.358,-46.216,-46.078,-45.859,-45.569,-45.287,-45.042,-44.773,-44.431,-44.057,-43.711,-43.379,-43.011,-42.610,-42.230,-41.872,
--41.478,-41.023,-40.552,-40.105,-39.651,-39.155,-38.641,-38.145,-37.646,-37.106,-36.570,-36.114,-35.724,-35.306,-34.826,-34.356,
--33.938,-33.511,-33.029,-32.556,-32.142,-31.700,-31.151,-30.625,-30.325,-30.181,-29.878,-29.354,-29.049,-29.398,-30.129,-30.347,
--29.377,-27.378,-25.027,-22.821,-20.856,-19.121,-17.711,-16.678,-15.905,-15.260,-14.769,-14.496,-14.311,-13.938,-13.265,-12.478,
--11.836,-11.376,-10.912,-10.281,-9.508,-8.722,-8.018,-7.437,-7.020,-6.785,-6.644,-6.410,-5.961,-5.394,-4.991,-5.025,
--5.580,-6.535,-7.662,-8.743,-9.682,-10.569,-11.656,-13.174,-15.108,-17.100,-18.626,-19.317,-19.200,-18.646,-18.075,-17.662,
--17.323,-16.932,-16.519,-16.201,-15.978,-15.671,-15.108,-14.316,-13.493,-12.818,-12.330,-11.964,-11.654,-11.368,-11.108,-10.891,
--10.723,-10.578,-10.423,-10.256,-10.087,-9.871,-9.521,-9.062,-8.738,-8.897,-9.729,-11.102,-12.657,-14.033,-15.012,-15.532,
--15.646,-15.482,-15.190,-14.918,-14.806,-14.992,-15.538,-16.323,-17.054,-17.450,-17.484,-17.405,-17.478,-17.732,-17.973,-18.060,
--18.082,-18.228,-18.540,-18.879,-19.107,-19.203,-19.217,-19.201,-19.246,-19.473,-19.914,-20.439,-20.908,-21.342,-21.831,-22.310,
--22.599,-22.702,-22.929,-23.587,-24.633,-25.700,-26.405,-26.542,-26.136,-25.511,-25.260,-25.894,-27.440,-29.493,-31.690,-33.912,
--35.951,-37.283,-37.511,-36.971,-36.585,-37.045,-38.287,-39.791,-41.133,-42.187,-43.034,-43.868,-44.850,-45.861,-46.554,-46.836,
--47.155,-48.000,-49.222,-50.245,-51.000,-52.191,-54.341,-56.916,-58.834,-59.722,-60.227,-61.069,-62.227,-63.224,-63.855,-64.286,
--64.611,-64.691,-64.400,-63.782,-62.910,-61.827,-60.690,-59.781,-59.238,-58.896,-58.494,-57.943,-57.270,-56.431,-55.355,-54.129,
--52.976,-52.028,-51.235,-50.511,-49.849,-49.238,-48.599,-47.891,-47.213,-46.710,-46.412,-46.238,-46.111,-45.987,-45.820,-45.606,
--45.447,-45.487,-45.728,-45.999,-46.130,-46.087,-45.905,-45.562,-45.018,-44.331,-43.654,-43.081,-42.581,-42.090,-41.618,-41.240,
--40.988,-40.812,-40.622,-40.355,-40.001,-39.576,-39.086,-38.522,-37.900,-37.278,-36.701,-36.133,-35.505,-34.810,-34.133,-33.538,
--32.982,-32.371,-31.671,-30.923,-30.161,-29.366,-28.528,-27.687,-26.902,-26.191,-25.512,-24.796,-23.982,-23.070,-22.151,-21.340,
--20.668,-20.052,-19.421,-18.833,-18.396,-18.109,-17.842,-17.484,-17.043,-16.579,-16.111,-15.640,-15.206,-14.855,-14.551,-14.199,
--13.767,-13.315,-12.895,-12.480,-12.023,-11.537,-11.078,-10.659,-10.238,-9.780,-9.293,-8.804,-8.318,-7.824,-7.315,-6.788,
--6.237,-5.658,-5.045,-4.381,-3.668,-2.947,-2.270,-1.643,-1.007,-.315,.425,1.193,2.015,2.933,3.922,4.897,
-5.805,6.676,7.563,8.465,9.345,10.191,11.020,11.839,12.630,13.379,14.084,14.728,15.290,15.775,16.216,16.632,
-16.998,17.290,17.522,17.728,17.920,18.094,18.260,18.438,18.637,18.862,19.141,19.500,19.913,20.317,20.681,21.038,
-21.416,21.790,22.112,22.382,22.638,22.888,23.102,23.270,23.430,23.628,23.879,24.186,24.552,24.945,25.281,25.484,
-25.555,25.557,25.528,25.459,25.350,25.252,25.216,25.235,25.261,25.274,25.313,25.436,25.671,26.000,26.408,26.937,
-27.676,28.660,29.751,30.667,31.206,31.440,31.647,32.046,32.595,33.092,33.398,33.542,33.633,33.720,33.771,33.742,
-33.649,33.565,33.556,33.605,33.617,33.512,33.311,33.109,32.959,32.809,32.573,32.235,31.860,31.509,31.171,30.784,
-30.315,29.816,29.387,29.075,28.811,28.473,28.029,27.588,27.271,27.086,26.955,26.848,26.799,26.813,26.817,26.767,
-26.719,26.743,26.811,26.860,26.909,27.023,27.166,27.194,27.031,26.767,26.552,26.468,26.556,26.867,27.389,27.990,
-28.540,29.054,29.579,29.983,30.065,29.922,30.001,30.601,31.445,31.670,32.007,31.728,31.308,31.170,31.257,31.302,
-31.266,31.263,31.208,30.837,30.088,29.242,28.601,28.183,27.836,27.494,27.188,26.903,26.573,26.213,25.900,25.631,
-25.317,24.952,24.661,24.500,24.322,23.961,23.514,23.332,23.686,24.510,25.466,26.231,26.683,26.889,26.947,26.887,
-26.694,26.405,26.117,25.869,25.556,25.049,24.379,23.739,23.266,22.903,22.509,22.054,21.624,21.270,20.941,20.563,
-20.132,19.715,19.411,19.309,19.425,19.674,19.937,20.168,20.381,20.555,20.637,20.679,20.843,21.182,21.519,21.679,
-21.759,21.970,22.197,21.936,20.813,19.052,17.273,15.895,14.874,13.986,13.173,12.533,12.125,11.895,11.752,11.653,
-11.625,11.736,12.006,12.312,12.454,12.372,12.265,12.395,12.805,13.290,13.621,13.716,13.613,13.391,13.165,13.061,
-13.095,13.159,13.170,13.184,13.278,13.358,13.216,12.769,12.171,11.649,11.303,11.081,10.865,10.562,10.158,9.745,
-9.439,9.244,9.048,8.784,8.535,8.412,8.387,8.340,8.237,8.138,8.050,7.891,7.647,7.431,7.308,7.161,
-6.838,6.378,5.986,5.796,5.777,5.859,6.042,6.328,6.647,6.899,7.002,6.851,6.307,5.345,4.178,3.154,
-2.511,2.262,2.262,2.305,2.190,1.836,1.389,1.112,1.122,1.266,1.305,1.158,.922,.771,.908,1.490,
-2.391,3.077,2.931,1.845,.342,-.975,-1.998,-3.031,-4.251,-5.508,-6.625,-7.679,-8.855,-10.160,-11.451,-12.668,
--13.874,-15.097,-16.263,-17.344,-18.426,-19.591,-20.785,-21.905,-22.941,-23.972,-25.026,-26.038,-26.949,-27.779,-28.576,-29.347,
--30.072,-30.738,-31.344,-31.874,-32.315,-32.689,-33.035,-33.373,-33.690,-33.971,-34.238,-34.534,-34.877,-35.237,-35.559,-35.827,
--36.071,-36.306,-36.489,-36.567,-36.562,-36.546,-36.522,-36.404,-36.132,-35.739,-35.255,-34.625,-33.864,-33.245,-33.161,-33.733,
--34.683,-35.653,-36.557,-37.507,-38.516,-39.467,-40.325,-41.178,-42.017,-42.721,-43.372,-44.389,-46.087,-48.135,-49.696,-50.193,
--49.824,-49.283,-49.099,-49.336,-49.775,-50.225,-50.647,-51.115,-51.703,-52.387,-53.050,-53.624,-54.174,-54.763,-55.285,-55.545,
--55.535,-55.515,-55.752,-56.279,-56.964,-57.725,-58.569,-59.493,-60.495,-61.642,-62.934,-64.070,-64.521,-64.006,-62.844,-61.741,
--61.253,-61.490,-62.237,-63.196,-64.111,-64.853,-65.448,-65.961,-66.298,-66.272,-65.946,-65.781,-66.222,-67.138,-67.865,-67.896,
--67.407,-66.996,-67.015,-67.312,-67.572,-67.707,-67.828,-68.001,-68.182,-68.328,-68.456,-68.571,-68.645,-68.684,-68.745,-68.840,
--68.899,-68.875,-68.843,-68.922,-69.120,-69.323,-69.423,-69.379,-69.174,-68.800,-68.351,-68.011,-67.860,-67.708,-67.264,-66.510,
--65.790,-65.466,-65.526,-65.619,-65.449,-65.041,-64.609,-64.284,-64.056,-63.907,-63.885,-63.998,-64.143,-64.202,-64.199,-64.287,
--64.555,-64.900,-65.141,-65.222,-65.263,-65.366,-65.433,-65.224,-64.630,-63.825,-63.115,-62.668,-62.424,-62.257,-62.114,-61.962,
--61.683,-61.125,-60.307,-59.458,-58.812,-58.391,-58.019,-57.527,-56.877,-56.104,-55.251,-54.403,-53.695,-53.180,-52.693,-51.963,
--50.942,-49.961,-49.460,-49.573,-50.008,-50.360,-50.438,-50.228,-49.663,-48.592,-47.055,-45.449,-44.263,-43.657,-43.363,-42.999,
--42.397,-41.625,-40.830,-40.150,-39.679,-39.398,-39.135,-38.704,-38.105,-37.500,-36.978,-36.441,-35.788,-35.111,-34.599,-34.264,
--33.904,-33.339,-32.620,-31.935,-31.393,-30.942,-30.484,-29.997,-29.557,-29.235,-28.999,-28.723,-28.309,-27.780,-27.198,-26.520,
--25.657,-24.696,-23.931,-23.544,-23.339,-22.949,-22.266,-21.503,-20.809,-20.036,-18.990,-17.755,-16.601,-15.640,-14.770,-13.907,
--13.085,-12.296,-11.429,-10.459,-9.535,-8.782,-8.103,-7.303,-6.338,-5.312,-4.287,-3.242,-2.195,-1.216,-.296,.646,
-1.595,2.426,3.115,3.824,4.661,5.521,6.295,7.131,8.255,9.585,10.754,11.586,12.308,13.212,14.264,15.233,
-16.067,16.930,17.904,18.879,19.747,20.529,21.231,21.745,21.982,22.004,21.954,21.987,22.406,23.672,25.973,28.722,
-30.752,31.235,30.391,29.225,28.629,28.812,29.464,30.227,30.935,31.551,32.067,32.482,32.829,33.180,33.608,34.134,
-34.694,35.176,35.511,35.725,35.903,36.108,36.352,36.600,36.798,36.926,37.053,37.285,37.634,37.961,38.126,38.158,
-38.208,38.339,38.477,38.565,38.668,38.854,39.049,39.143,39.180,39.314,39.585,39.854,40.016,40.147,40.369,40.646,
-40.857,41.007,41.221,41.530,41.788,41.901,42.029,42.443,43.195,44.028,44.646,44.991,45.233,45.534,45.892,46.212,
-46.469,46.754,47.157,47.626,47.997,48.179,48.268,48.447,48.757,49.033,49.094,48.963,48.844,48.879,48.980,48.958,
-48.804,48.767,49.092,49.691,50.163,50.193,49.891,49.631,49.592,49.549,49.182,48.480,47.708,47.004,46.160,44.860,
-43.025,40.806,38.341,35.695,33.131,31.255,30.675,31.448,33.019,34.793,36.669,38.767,40.685,41.440,40.516,38.840,
-38.176,39.273,40.937,41.314,39.983,38.314,37.721,38.040,37.968,36.781,35.092,33.975,33.812,34.194,34.539,34.479,
-33.819,32.561,31.049,29.834,29.200,28.911,28.533,27.951,27.479,27.464,27.827,28.058,27.713,26.927,26.310,26.231,
-26.285,25.696,24.258,22.626,21.573,21.209,21.179,21.384,22.068,23.130,23.795,23.273,21.634,19.827,18.884,19.178,
-20.252,21.162,21.099,20.016,18.670,17.831,17.443,16.840,15.796,14.983,15.089,15.810,16.146,15.608,14.695,14.122,
-14.009,14.042,14.088,14.255,14.474,14.441,14.009,13.372,12.753,12.143,11.491,10.931,10.616,10.439,10.154,9.756,
-9.508,9.502,9.412,8.839,7.872,7.124,7.122,7.702,8.119,7.783,6.880,6.176,6.205,6.716,7.014,6.753,
-6.250,6.001,6.075,6.140,5.978,5.756,5.768,6.060,6.424,6.656,6.687,6.511,6.143,5.681,5.327,5.220,
-5.278,5.272,5.085,4.842,4.747,4.820,4.872,4.749,4.528,4.410,4.471,4.601,4.695,4.792,4.946,5.074,
-5.035,4.843,4.666,4.588,4.503,4.306,4.113,4.158,4.499,4.923,5.169,5.180,5.116,5.169,5.402,5.724,
-6.015,6.269,6.612,7.141,7.753,8.218,8.417,8.442,8.433,8.442,8.520,8.789,9.266,9.658,9.587,9.064,
-8.558,8.482,8.748,8.993,9.095,9.250,9.555,9.793,9.735,9.464,9.238,9.140,9.042,8.865,8.698,8.622,
-8.581,8.484,8.362,8.313,8.366,8.450,8.500,8.514,8.515,8.515,8.515,8.508,8.478,8.416,8.335,8.256,
-8.195,8.160,8.148,8.125,8.034,7.877,7.732,7.664,7.649,7.615,7.541,7.437,7.265,6.977,6.631,6.348,
-6.157,5.971,5.756,5.553,5.338,5.138,5.547,7.802,12.719,19.276,24.614,25.941,22.608,16.329,9.605,4.133,
-.458,-1.560,-2.361,-2.534,-2.595,-2.745,-2.934,-3.123,-3.389,-3.770,-4.192,-4.585,-4.973,-5.389,-5.800,-6.167,
--6.520,-6.895,-7.270,-7.614,-7.955,-8.333,-8.722,-9.070,-9.391,-9.737,-10.105,-10.441,-10.739,-11.058,-11.433,-11.835,
--12.235,-12.658,-13.125,-13.609,-14.083,-14.558,-15.044,-15.505,-15.913,-16.294,-16.684,-17.068,-17.419,-17.773,-18.192,-18.665,
--19.125,-19.558,-20.013,-20.500,-20.959,-21.356,-21.740,-22.140,-22.494,-22.748,-22.973,-23.289,-23.705,-24.124,-24.492,-24.864,
--25.299,-25.783,-26.280,-26.789,-27.305,-27.778,-28.175,-28.534,-28.916,-29.330,-29.755,-30.202,-30.693,-31.199,-31.682,-32.172,
--32.730,-33.326,-33.850,-34.248,-34.588,-34.951,-35.325,-35.665,-35.994,-36.369,-36.779,-37.156,-37.488,-37.834,-38.222,-38.613,
--38.966,-39.307,-39.678,-40.073,-40.452,-40.800,-41.118,-41.408,-41.681,-41.979,-42.321,-42.667,-42.957,-43.194,-43.436,-43.714,
--44.001,-44.266,-44.508,-44.737,-44.949,-45.165,-45.423,-45.715,-45.972,-46.139,-46.260,-46.421,-46.638,-46.848,-47.012,-47.150,
--47.283,-47.376,-47.405,-47.415,-47.463,-47.535,-47.557,-47.508,-47.445,-47.411,-47.374,-47.286,-47.159,-47.034,-46.902,-46.705,
--46.445,-46.204,-46.044,-45.912,-45.710,-45.431,-45.154,-44.918,-44.663,-44.330,-43.949,-43.591,-43.262,-42.909,-42.520,-42.131,
--41.753,-41.340,-40.881,-40.434,-40.036,-39.628,-39.132,-38.574,-38.044,-37.573,-37.110,-36.626,-36.154,-35.712,-35.263,-34.789,
--34.327,-33.897,-33.449,-32.966,-32.519,-32.143,-31.725,-31.151,-30.535,-30.125,-29.948,-29.735,-29.328,-28.988,-29.104,-29.601,
--29.863,-29.295,-27.825,-25.811,-23.631,-21.515,-19.646,-18.176,-17.085,-16.193,-15.403,-14.837,-14.612,-14.546,-14.240,-13.479,
--12.464,-11.582,-10.997,-10.548,-10.006,-9.328,-8.614,-7.915,-7.209,-6.543,-6.047,-5.749,-5.465,-4.995,-4.401,-3.966,
--3.866,-4.012,-4.287,-4.818,-5.845,-7.364,-9.063,-10.665,-12.229,-13.984,-15.900,-17.562,-18.493,-18.562,-18.050,-17.376,
--16.797,-16.341,-15.928,-15.508,-15.084,-14.665,-14.239,-13.788,-13.321,-12.863,-12.426,-12.009,-11.615,-11.254,-10.942,-10.678,
--10.436,-10.167,-9.851,-9.548,-9.356,-9.275,-9.142,-8.794,-8.323,-8.117,-8.571,-9.749,-11.336,-12.882,-14.067,-14.779,
--15.045,-14.970,-14.698,-14.388,-14.199,-14.267,-14.660,-15.304,-15.993,-16.492,-16.685,-16.635,-16.534,-16.562,-16.764,-17.029,
--17.215,-17.306,-17.441,-17.753,-18.212,-18.653,-18.930,-19.028,-19.029,-19.040,-19.144,-19.384,-19.763,-20.285,-20.962,-21.748,
--22.476,-22.980,-23.331,-23.870,-24.924,-26.484,-28.185,-29.547,-30.224,-30.169,-29.703,-29.393,-29.662,-30.448,-31.342,-32.066,
--32.656,-33.133,-33.231,-32.693,-31.761,-31.121,-31.303,-32.275,-33.617,-34.926,-36.009,-36.906,-37.848,-39.079,-40.586,-42.133,
--43.643,-45.346,-47.343,-49.253,-50.676,-51.975,-54.076,-57.269,-60.597,-62.824,-63.808,-64.501,-65.676,-67.120,-68.191,-68.693,
--68.891,-68.921,-68.623,-67.910,-66.967,-66.000,-65.027,-64.016,-63.053,-62.255,-61.633,-61.137,-60.731,-60.301,-59.586,-58.382,
--56.776,-55.085,-53.557,-52.249,-51.141,-50.236,-49.480,-48.751,-47.999,-47.327,-46.846,-46.525,-46.271,-46.091,-46.059,-46.153,
--46.251,-46.304,-46.393,-46.569,-46.728,-46.711,-46.490,-46.147,-45.727,-45.182,-44.491,-43.748,-43.093,-42.581,-42.157,-41.756,
--41.388,-41.107,-40.919,-40.745,-40.493,-40.147,-39.763,-39.366,-38.907,-38.341,-37.718,-37.121,-36.550,-35.920,-35.196,-34.462,
--33.816,-33.244,-32.653,-31.990,-31.280,-30.546,-29.768,-28.936,-28.105,-27.342,-26.649,-25.952,-25.175,-24.297,-23.377,-22.516,
--21.783,-21.153,-20.542,-19.923,-19.377,-18.983,-18.699,-18.399,-18.009,-17.558,-17.093,-16.609,-16.105,-15.643,-15.280,-14.982,
--14.654,-14.253,-13.818,-13.387,-12.944,-12.469,-11.988,-11.535,-11.099,-10.640,-10.154,-9.675,-9.222,-8.774,-8.302,-7.802,
--7.285,-6.750,-6.178,-5.543,-4.839,-4.096,-3.376,-2.720,-2.099,-1.441,-.713,.054,.841,1.693,2.645,3.647,
-4.593,5.448,6.281,7.162,8.073,8.950,9.777,10.591,11.413,12.220,12.988,13.709,14.380,14.980,15.499,15.950,
-16.348,16.693,16.989,17.256,17.511,17.744,17.945,18.136,18.352,18.603,18.883,19.208,19.601,20.047,20.485,20.882,
-21.264,21.669,22.076,22.430,22.713,22.957,23.185,23.391,23.567,23.736,23.941,24.215,24.578,25.016,25.451,25.770,
-25.921,25.956,25.961,25.953,25.891,25.771,25.659,25.609,25.606,25.600,25.586,25.599,25.666,25.790,25.966,26.195,
-26.499,26.946,27.643,28.607,29.660,30.516,31.048,31.420,31.904,32.569,33.217,33.620,33.767,33.836,33.970,34.130,
-34.173,34.028,33.758,33.479,33.238,33.003,32.739,32.478,32.284,32.175,32.090,31.953,31.747,31.512,31.270,30.980,
-30.577,30.058,29.522,29.094,28.811,28.586,28.307,27.956,27.607,27.324,27.100,26.919,26.805,26.768,26.740,26.643,
-26.507,26.443,26.481,26.527,26.523,26.554,26.716,26.926,26.991,26.841,26.599,26.414,26.341,26.418,26.706,27.180,
-27.681,28.101,28.537,29.091,29.607,29.826,29.835,30.088,30.827,31.670,31.563,31.582,31.139,30.782,30.832,31.067,
-31.142,31.055,30.982,30.857,30.406,29.575,28.677,28.025,27.624,27.303,26.994,26.735,26.495,26.180,25.792,25.422,
-25.110,24.808,24.523,24.342,24.252,24.073,23.684,23.267,23.191,23.663,24.550,25.552,26.434,27.074,27.397,27.376,
-27.080,26.668,26.296,26.025,25.796,25.484,25.010,24.425,23.864,23.400,22.980,22.515,22.014,21.563,21.194,20.835,
-20.393,19.864,19.344,18.971,18.841,18.943,19.153,19.321,19.399,19.442,19.497,19.554,19.617,19.736,19.908,20.020,
-19.997,19.952,20.045,20.181,19.996,19.221,17.987,16.671,15.517,14.520,13.617,12.855,12.316,11.980,11.753,11.571,
-11.444,11.428,11.571,11.848,12.127,12.254,12.224,12.215,12.410,12.793,13.191,13.454,13.532,13.421,13.145,12.827,
-12.645,12.662,12.780,12.886,12.994,13.133,13.196,12.997,12.500,11.884,11.365,11.019,10.779,10.533,10.194,9.754,
-9.307,8.982,8.799,8.646,8.445,8.261,8.192,8.197,8.138,7.964,7.748,7.552,7.362,7.178,7.050,6.967,
-6.783,6.386,5.866,5.449,5.267,5.283,5.416,5.641,5.941,6.254,6.499,6.596,6.433,5.897,5.001,3.948,
-3.005,2.331,1.958,1.850,1.899,1.912,1.726,1.357,.974,.712,.591,.581,.605,.475,.055,-.392,
--.223,.908,2.420,3.155,2.487,.902,-.650,-1.783,-2.831,-4.143,-5.592,-6.864,-7.939,-9.041,-10.264,-11.486,
--12.624,-13.754,-14.943,-16.115,-17.188,-18.225,-19.340,-20.522,-21.659,-22.713,-23.756,-24.825,-25.846,-26.729,-27.485,-28.201,
--28.941,-29.708,-30.462,-31.138,-31.671,-32.047,-32.339,-32.643,-32.983,-33.312,-33.601,-33.894,-34.252,-34.663,-35.052,-35.370,
--35.650,-35.949,-36.251,-36.468,-36.550,-36.567,-36.623,-36.707,-36.688,-36.465,-36.061,-35.533,-34.875,-34.130,-33.541,-33.434,
--33.912,-34.760,-35.727,-36.784,-37.990,-39.233,-40.270,-41.017,-41.603,-42.143,-42.656,-43.299,-44.449,-46.281,-48.336,-49.770,
--50.128,-49.755,-49.380,-49.420,-49.793,-50.238,-50.653,-51.105,-51.678,-52.359,-53.038,-53.601,-54.040,-54.464,-54.942,-55.378,
--55.630,-55.742,-55.946,-56.393,-56.994,-57.604,-58.237,-59.010,-59.940,-60.972,-62.133,-63.469,-64.768,-65.529,-65.363,-64.394,
--63.194,-62.371,-62.260,-62.866,-63.921,-65.010,-65.827,-66.383,-66.848,-67.184,-67.122,-66.638,-66.263,-66.638,-67.749,-68.822,
--69.113,-68.650,-68.075,-67.902,-68.112,-68.411,-68.649,-68.862,-69.091,-69.316,-69.525,-69.724,-69.876,-69.928,-69.901,-69.870,
--69.856,-69.796,-69.674,-69.589,-69.655,-69.874,-70.164,-70.436,-70.576,-70.420,-69.906,-69.252,-68.821,-68.713,-68.595,-68.076,
--67.201,-66.432,-66.105,-66.059,-65.880,-65.419,-64.919,-64.667,-64.678,-64.757,-64.790,-64.820,-64.898,-64.976,-65.005,-65.075,
--65.348,-65.845,-66.363,-66.656,-66.680,-66.605,-66.585,-66.560,-66.329,-65.791,-65.073,-64.398,-63.892,-63.549,-63.337,-63.229,
--63.132,-62.849,-62.228,-61.335,-60.442,-59.796,-59.422,-59.148,-58.793,-58.294,-57.667,-56.912,-56.013,-55.017,-54.043,-53.163,
--52.290,-51.277,-50.157,-49.249,-48.920,-49.225,-49.841,-50.322,-50.374,-49.865,-48.747,-47.142,-45.467,-44.254,-43.719,-43.563,
--43.275,-42.612,-41.717,-40.858,-40.195,-39.746,-39.448,-39.157,-38.722,-38.128,-37.512,-36.967,-36.396,-35.672,-34.878,-34.255,
--33.883,-33.548,-32.993,-32.223,-31.469,-30.906,-30.491,-30.075,-29.602,-29.151,-28.824,-28.621,-28.428,-28.116,-27.640,-27.020,
--26.252,-25.320,-24.328,-23.515,-23.038,-22.760,-22.375,-21.738,-20.965,-20.173,-19.279,-18.154,-16.889,-15.745,-14.869,-14.165,
--13.458,-12.664,-11.772,-10.788,-9.775,-8.858,-8.104,-7.431,-6.685,-5.790,-4.773,-3.690,-2.608,-1.594,-.654,.293,
-1.292,2.226,2.953,3.537,4.205,5.038,5.868,6.593,7.417,8.577,9.930,11.058,11.798,12.453,13.376,14.530,
-15.625,16.562,17.504,18.558,19.583,20.409,21.069,21.690,22.242,22.543,22.524,22.413,22.652,23.648,25.521,27.953,
-30.233,31.598,31.701,30.856,29.823,29.289,29.467,30.108,30.828,31.441,32.000,32.593,33.168,33.602,33.895,34.214,
-34.698,35.286,35.790,36.102,36.290,36.477,36.719,36.986,37.227,37.403,37.518,37.643,37.860,38.163,38.440,38.602,
-38.687,38.789,38.910,38.978,38.991,39.047,39.193,39.349,39.444,39.542,39.744,40.009,40.202,40.304,40.444,40.693,
-40.952,41.121,41.273,41.537,41.864,42.080,42.174,42.384,42.921,43.688,44.387,44.839,45.123,45.404,45.738,46.074,
-46.375,46.680,47.046,47.467,47.859,48.124,48.246,48.335,48.535,48.864,49.165,49.258,49.142,49.001,48.996,49.087,
-49.096,48.964,48.884,49.115,49.660,50.189,50.346,50.120,49.831,49.729,49.706,49.451,48.841,48.041,47.232,46.345,
-45.137,43.460,41.364,38.976,36.426,33.964,32.058,31.197,31.510,32.655,34.178,35.918,37.873,39.641,40.336,39.441,
-37.732,36.884,37.807,39.592,40.450,39.688,38.336,37.745,37.994,38.047,37.220,35.957,35.129,35.001,35.143,35.088,
-34.699,34.001,33.002,31.806,30.708,29.977,29.578,29.204,28.608,27.887,27.375,27.252,27.284,27.075,26.609,26.353,
-26.628,27.009,26.643,25.243,23.469,22.201,21.687,21.644,21.931,22.621,23.438,23.622,22.659,20.936,19.450,18.957,
-19.540,20.709,21.661,21.624,20.423,18.757,17.561,17.023,16.555,15.854,15.521,16.218,17.518,18.153,17.439,15.982,
-14.850,14.470,14.593,14.950,15.478,15.993,16.126,15.696,14.890,13.971,13.031,12.144,11.507,11.210,11.025,10.672,
-10.237,10.041,10.082,9.898,9.159,8.214,7.783,8.113,8.631,8.544,7.714,6.816,6.623,7.202,7.870,7.928,
-7.340,6.670,6.412,6.531,6.655,6.578,6.419,6.366,6.434,6.527,6.604,6.669,6.656,6.463,6.108,5.771,
-5.603,5.562,5.481,5.294,5.118,5.087,5.163,5.174,5.038,4.863,4.803,4.850,4.870,4.821,4.829,4.997,
-5.226,5.318,5.226,5.086,5.007,4.939,4.809,4.699,4.785,5.119,5.544,5.839,5.904,5.808,5.716,5.775,
-6.026,6.408,6.850,7.347,7.885,8.343,8.557,8.520,8.418,8.427,8.567,8.809,9.185,9.641,9.879,9.582,
-8.872,8.332,8.440,9.077,9.726,10.051,10.104,10.028,9.821,9.472,9.136,8.987,8.981,8.925,8.742,8.547,
-8.456,8.435,8.395,8.335,8.314,8.350,8.395,8.399,8.354,8.285,8.236,8.230,8.241,8.203,8.089,7.952,
-7.863,7.845,7.872,7.919,7.966,7.973,7.910,7.797,7.686,7.618,7.605,7.631,7.622,7.473,7.180,6.899,
-6.769,6.722,6.578,6.312,6.016,5.635,5.130,5.157,7.197,12.275,19.297,25.084,26.576,23.115,16.591,9.661,
-4.070,.364,-1.600,-2.303,-2.414,-2.491,-2.694,-2.899,-3.054,-3.280,-3.655,-4.098,-4.516,-4.926,-5.367,-5.802,
--6.185,-6.543,-6.912,-7.262,-7.564,-7.862,-8.211,-8.582,-8.906,-9.190,-9.502,-9.852,-10.186,-10.490,-10.817,-11.206,
--11.628,-12.056,-12.504,-12.979,-13.446,-13.883,-14.321,-14.782,-15.226,-15.624,-16.011,-16.424,-16.829,-17.176,-17.514,-17.938,
--18.454,-18.971,-19.437,-19.889,-20.358,-20.800,-21.192,-21.580,-21.998,-22.383,-22.672,-22.922,-23.245,-23.653,-24.055,-24.411,
--24.779,-25.205,-25.657,-26.100,-26.558,-27.053,-27.540,-27.965,-28.345,-28.740,-29.169,-29.615,-30.082,-30.579,-31.075,-31.538,
--32.007,-32.556,-33.169,-33.734,-34.180,-34.546,-34.905,-35.262,-35.596,-35.933,-36.309,-36.703,-37.071,-37.426,-37.813,-38.224,
--38.593,-38.902,-39.218,-39.595,-40.002,-40.374,-40.690,-40.974,-41.251,-41.538,-41.863,-42.233,-42.599,-42.903,-43.141,-43.365,
--43.611,-43.866,-44.109,-44.335,-44.545,-44.747,-44.973,-45.258,-45.584,-45.872,-46.076,-46.227,-46.386,-46.561,-46.723,-46.871,
--47.023,-47.165,-47.253,-47.286,-47.319,-47.389,-47.456,-47.454,-47.386,-47.315,-47.271,-47.221,-47.132,-47.022,-46.923,-46.811,
--46.633,-46.390,-46.154,-45.980,-45.834,-45.638,-45.376,-45.103,-44.851,-44.576,-44.232,-43.848,-43.488,-43.159,-42.813,-42.431,
--42.045,-41.662,-41.238,-40.764,-40.309,-39.920,-39.527,-39.028,-38.442,-37.901,-37.473,-37.079,-36.608,-36.062,-35.525,-35.051,
--34.630,-34.225,-33.793,-33.304,-32.802,-32.394,-32.108,-31.803,-31.308,-30.662,-30.090,-29.718,-29.430,-29.093,-28.813,-28.823,
--29.136,-29.427,-29.276,-28.436,-26.885,-24.779,-22.461,-20.385,-18.859,-17.827,-17.005,-16.246,-15.686,-15.463,-15.404,-15.085,
--14.250,-13.065,-11.944,-11.151,-10.639,-10.219,-9.771,-9.226,-8.476,-7.457,-6.333,-5.425,-4.871,-4.473,-4.004,-3.562,
--3.413,-3.509,-3.454,-3.103,-3.007,-3.960,-6.095,-8.648,-10.720,-12.104,-13.260,-14.614,-16.063,-17.158,-17.568,-17.311,
--16.658,-15.927,-15.335,-14.918,-14.554,-14.101,-13.542,-12.996,-12.588,-12.331,-12.138,-11.916,-11.631,-11.303,-10.961,-10.637,
--10.341,-10.043,-9.678,-9.235,-8.816,-8.561,-8.453,-8.293,-7.925,-7.519,-7.519,-8.276,-9.727,-11.446,-12.949,-13.948,
--14.388,-14.390,-14.154,-13.876,-13.697,-13.713,-13.999,-14.543,-15.174,-15.644,-15.830,-15.811,-15.748,-15.741,-15.830,-16.046,
--16.357,-16.607,-16.662,-16.609,-16.735,-17.227,-17.982,-18.731,-19.308,-19.723,-20.039,-20.291,-20.523,-20.831,-21.313,-21.984,
--22.746,-23.445,-23.982,-24.432,-25.038,-26.046,-27.475,-29.052,-30.367,-31.126,-31.320,-31.223,-31.185,-31.335,-31.480,-31.335,
--30.869,-30.320,-29.878,-29.470,-28.955,-28.418,-28.125,-28.244,-28.715,-29.383,-30.115,-30.801,-31.437,-32.246,-33.547,-35.415,
--37.600,-39.862,-42.212,-44.666,-47.007,-49.132,-51.489,-54.702,-58.612,-62.099,-64.216,-65.249,-66.285,-67.858,-69.460,-70.398,
--70.654,-70.636,-70.442,-69.794,-68.593,-67.172,-65.905,-64.856,-63.911,-63.077,-62.489,-62.231,-62.266,-62.460,-62.557,-62.207,
--61.182,-59.576,-57.723,-55.917,-54.291,-52.891,-51.735,-50.751,-49.814,-48.904,-48.142,-47.602,-47.180,-46.757,-46.412,-46.348,
--46.602,-46.959,-47.193,-47.279,-47.315,-47.314,-47.176,-46.841,-46.367,-45.836,-45.241,-44.543,-43.783,-43.101,-42.608,-42.269,
--41.958,-41.607,-41.271,-41.021,-40.824,-40.570,-40.217,-39.829,-39.461,-39.062,-38.556,-37.976,-37.426,-36.927,-36.375,-35.687,
--34.919,-34.194,-33.559,-32.951,-32.301,-31.597,-30.847,-30.053,-29.240,-28.471,-27.780,-27.115,-26.376,-25.510,-24.567,-23.663,
--22.887,-22.235,-21.630,-21.011,-20.420,-19.952,-19.631,-19.354,-18.995,-18.535,-18.055,-17.602,-17.147,-16.665,-16.199,-15.801,
--15.456,-15.098,-14.698,-14.273,-13.837,-13.372,-12.886,-12.419,-11.992,-11.565,-11.095,-10.593,-10.109,-9.660,-9.214,-8.738,
--8.232,-7.711,-7.173,-6.593,-5.945,-5.230,-4.491,-3.782,-3.126,-2.479,-1.780,-1.021,-.237,.569,1.441,2.396,
-3.365,4.258,5.074,5.901,6.794,7.707,8.570,9.379,10.185,11.005,11.803,12.550,13.254,13.933,14.571,15.135,
-15.606,15.991,16.313,16.613,16.923,17.237,17.517,17.741,17.950,18.205,18.521,18.872,19.245,19.660,20.118,20.582,
-21.014,21.426,21.845,22.264,22.636,22.935,23.177,23.395,23.603,23.799,23.988,24.195,24.469,24.859,25.354,25.844,
-26.182,26.317,26.331,26.328,26.323,26.266,26.151,26.037,25.969,25.928,25.889,25.865,25.874,25.897,25.926,25.990,
-26.107,26.241,26.399,26.737,27.462,28.559,29.719,30.616,31.239,31.843,32.583,33.314,33.789,33.984,34.116,34.363,
-34.643,34.724,34.476,33.984,33.425,32.908,32.451,32.060,31.777,31.639,31.608,31.589,31.507,31.364,31.208,31.045,
-30.808,30.414,29.875,29.318,28.884,28.607,28.395,28.151,27.870,27.603,27.361,27.119,26.890,26.743,26.688,26.633,
-26.495,26.329,26.243,26.238,26.213,26.154,26.196,26.417,26.678,26.766,26.656,26.508,26.440,26.446,26.533,26.782,
-27.193,27.612,27.936,28.285,28.802,29.370,29.740,29.945,30.321,30.990,31.563,31.243,30.932,30.432,30.264,30.550,
-30.906,30.970,30.804,30.639,30.428,29.919,29.074,28.190,27.546,27.132,26.792,26.475,26.223,26.004,25.733,25.400,
-25.072,24.774,24.486,24.249,24.132,24.064,23.850,23.436,23.088,23.163,23.763,24.693,25.724,26.735,27.596,28.073,
-27.994,27.466,26.812,26.297,25.955,25.661,25.305,24.878,24.423,23.971,23.498,22.957,22.351,21.764,21.294,20.940,
-20.587,20.121,19.538,18.953,18.518,18.331,18.384,18.553,18.679,18.680,18.592,18.510,18.502,18.581,18.718,18.833,
-18.819,18.653,18.455,18.372,18.366,18.213,17.724,16.932,16.001,15.046,14.107,13.252,12.586,12.148,11.862,11.628,
-11.425,11.298,11.285,11.387,11.566,11.749,11.872,11.957,12.105,12.374,12.699,12.969,13.129,13.173,13.068,12.801,
-12.484,12.302,12.341,12.515,12.708,12.882,13.001,12.942,12.590,12.011,11.424,10.985,10.679,10.403,10.081,9.686,
-9.231,8.794,8.480,8.313,8.208,8.084,7.969,7.922,7.909,7.831,7.657,7.450,7.252,7.054,6.865,6.731,
-6.627,6.425,6.040,5.564,5.184,5.001,4.983,5.068,5.231,5.455,5.706,5.951,6.118,6.056,5.614,4.801,
-3.829,2.946,2.274,1.831,1.610,1.562,1.561,1.475,1.259,.924,.487,.056,-.140,-.013,.096,-.303,
--1.101,-1.389,-.369,1.551,2.932,2.717,1.229,-.404,-1.551,-2.507,-3.751,-5.245,-6.636,-7.818,-8.990,-10.263,
--11.507,-12.618,-13.690,-14.838,-15.998,-17.045,-18.006,-19.023,-20.148,-21.295,-22.392,-23.466,-24.542,-25.561,-26.436,-27.157,
--27.797,-28.446,-29.164,-29.952,-30.715,-31.306,-31.665,-31.894,-32.150,-32.474,-32.781,-33.023,-33.281,-33.672,-34.198,-34.742,
--35.210,-35.602,-35.958,-36.259,-36.444,-36.513,-36.565,-36.690,-36.845,-36.862,-36.623,-36.165,-35.613,-35.044,-34.499,-34.095,
--34.014,-34.354,-35.059,-36.045,-37.298,-38.749,-40.142,-41.165,-41.732,-42.030,-42.303,-42.734,-43.548,-44.989,-46.981,-48.918,
--50.056,-50.191,-49.828,-49.629,-49.830,-50.248,-50.685,-51.145,-51.704,-52.356,-53.020,-53.622,-54.133,-54.579,-55.035,-55.541,
--56.026,-56.392,-56.670,-57.015,-57.501,-58.026,-58.500,-59.007,-59.696,-60.568,-61.525,-62.576,-63.823,-65.174,-66.222,-66.532,
--66.019,-65.009,-64.021,-63.524,-63.767,-64.629,-65.662,-66.451,-66.974,-67.461,-67.901,-67.944,-67.451,-66.951,-67.215,-68.353,
--69.592,-70.068,-69.696,-69.099,-68.848,-68.989,-69.259,-69.500,-69.722,-69.955,-70.189,-70.431,-70.685,-70.893,-70.977,-70.948,
--70.880,-70.795,-70.653,-70.473,-70.364,-70.412,-70.607,-70.916,-71.314,-71.661,-71.669,-71.172,-70.401,-69.804,-69.536,-69.281,
--68.700,-67.902,-67.298,-67.024,-66.755,-66.164,-65.391,-64.901,-64.938,-65.282,-65.566,-65.661,-65.686,-65.750,-65.837,-65.945,
--66.210,-66.771,-67.550,-68.221,-68.475,-68.284,-67.890,-67.544,-67.290,-66.999,-66.557,-65.978,-65.357,-64.794,-64.370,-64.135,
--64.043,-63.902,-63.487,-62.720,-61.761,-60.875,-60.253,-59.912,-59.738,-59.584,-59.344,-58.966,-58.408,-57.608,-56.534,-55.290,
--54.071,-52.964,-51.840,-50.575,-49.377,-48.729,-48.903,-49.606,-50.196,-50.213,-49.602,-48.507,-47.087,-45.600,-44.430,-43.818,
--43.576,-43.250,-42.569,-41.662,-40.818,-40.186,-39.736,-39.380,-39.023,-38.576,-38.036,-37.500,-37.012,-36.439,-35.625,-34.673,
--33.922,-33.559,-33.386,-33.030,-32.353,-31.539,-30.832,-30.299,-29.857,-29.433,-29.033,-28.696,-28.432,-28.188,-27.876,-27.422,
--26.792,-25.980,-25.014,-24.008,-23.167,-22.632,-22.302,-21.901,-21.244,-20.392,-19.481,-18.514,-17.408,-16.216,-15.149,-14.350,
--13.724,-13.042,-12.166,-11.129,-10.046,-9.030,-8.157,-7.451,-6.844,-6.192,-5.353,-4.285,-3.091,-1.962,-1.012,-.167,
-.737,1.729,2.638,3.326,3.907,4.611,5.475,6.319,7.064,7.895,8.995,10.222,11.254,12.016,12.784,13.822,
-15.062,16.256,17.321,18.366,19.433,20.375,21.064,21.586,22.117,22.637,22.941,22.966,23.062,23.795,25.451,27.737,
-29.976,31.560,32.225,32.018,31.210,30.263,29.719,29.891,30.616,31.437,32.066,32.587,33.191,33.842,34.337,34.631,
-34.919,35.361,35.872,36.257,36.482,36.687,36.982,37.326,37.628,37.861,38.047,38.202,38.340,38.494,38.679,38.862,
-39.017,39.159,39.303,39.404,39.416,39.385,39.412,39.525,39.662,39.786,39.947,40.171,40.374,40.479,40.550,40.717,
-40.976,41.194,41.328,41.502,41.801,42.107,42.272,42.384,42.712,43.355,44.093,44.652,45.002,45.315,45.693,46.069,
-46.362,46.611,46.916,47.303,47.711,48.050,48.264,48.363,48.437,48.609,48.915,49.239,49.407,49.365,49.233,49.171,
-49.205,49.227,49.162,49.117,49.308,49.807,50.378,50.657,50.503,50.145,49.912,49.859,49.726,49.254,48.454,47.521,
-46.539,45.376,43.850,41.939,39.781,37.539,35.350,33.428,32.119,31.735,32.302,33.543,35.116,36.777,38.213,38.915,
-38.541,37.513,36.921,37.498,38.758,39.469,39.015,38.010,37.432,37.463,37.488,37.058,36.416,36.009,35.843,35.574,
-35.024,34.341,33.684,33.009,32.230,31.428,30.779,30.332,29.924,29.344,28.572,27.823,27.323,27.025,26.665,26.172,
-25.868,26.047,26.421,26.278,25.287,23.899,22.818,22.284,22.108,22.171,22.493,22.838,22.708,21.905,20.834,20.068,
-19.816,19.986,20.459,20.987,21.048,20.274,19.024,18.081,17.693,17.353,16.759,16.500,17.284,18.723,19.488,18.757,
-17.069,15.579,14.896,14.903,15.336,16.026,16.680,16.884,16.470,15.648,14.680,13.667,12.717,12.055,11.757,11.562,
-11.204,10.810,10.674,10.694,10.383,9.576,8.839,8.863,9.555,10.007,9.479,8.234,7.269,7.275,7.988,8.551,
-8.393,7.697,7.062,6.855,6.954,7.045,6.993,6.883,6.793,6.698,6.586,6.536,6.603,6.686,6.612,6.337,
-6.001,5.758,5.623,5.511,5.389,5.319,5.346,5.395,5.350,5.211,5.106,5.128,5.199,5.162,5.000,4.876,
-4.936,5.131,5.289,5.318,5.266,5.201,5.134,5.081,5.120,5.313,5.626,5.954,6.205,6.328,6.311,6.216,
-6.205,6.438,6.928,7.540,8.116,8.554,8.781,8.753,8.546,8.349,8.317,8.466,8.761,9.201,9.692,9.944,
-9.689,9.078,8.669,8.900,9.642,10.364,10.667,10.533,10.135,9.626,9.148,8.856,8.805,8.853,8.811,8.643,
-8.468,8.376,8.346,8.327,8.309,8.301,8.289,8.260,8.216,8.157,8.084,8.029,8.027,8.045,7.983,7.800,
-7.586,7.468,7.476,7.544,7.616,7.687,7.754,7.787,7.760,7.682,7.595,7.542,7.530,7.501,7.381,7.206,
-7.125,7.187,7.210,6.996,6.629,6.334,6.061,5.620,5.475,6.996,11.214,17.151,21.861,22.604,19.001,12.998,
-7.036,2.514,-.302,-1.687,-2.123,-2.201,-2.352,-2.612,-2.806,-2.919,-3.127,-3.514,-3.972,-4.399,-4.829,-5.309,
--5.782,-6.182,-6.540,-6.902,-7.231,-7.487,-7.730,-8.040,-8.396,-8.713,-8.986,-9.285,-9.632,-9.971,-10.279,-10.609,
--10.998,-11.424,-11.864,-12.334,-12.829,-13.298,-13.715,-14.122,-14.552,-14.971,-15.352,-15.739,-16.172,-16.601,-16.959,-17.297,
--17.731,-18.280,-18.835,-19.316,-19.758,-20.208,-20.645,-21.045,-21.445,-21.872,-22.271,-22.586,-22.864,-23.199,-23.592,-23.962,
--24.294,-24.655,-25.077,-25.502,-25.891,-26.295,-26.769,-27.273,-27.736,-28.157,-28.592,-29.061,-29.539,-30.018,-30.509,-30.992,
--31.441,-31.890,-32.407,-32.992,-33.559,-34.036,-34.439,-34.814,-35.170,-35.504,-35.849,-36.230,-36.624,-36.998,-37.376,-37.789,
--38.208,-38.564,-38.862,-39.183,-39.569,-39.968,-40.306,-40.579,-40.834,-41.107,-41.412,-41.760,-42.146,-42.522,-42.833,-43.076,
--43.288,-43.502,-43.718,-43.925,-44.118,-44.297,-44.480,-44.714,-45.025,-45.371,-45.675,-45.906,-46.096,-46.272,-46.423,-46.543,
--46.663,-46.812,-46.957,-47.053,-47.116,-47.197,-47.305,-47.382,-47.384,-47.329,-47.266,-47.206,-47.130,-47.033,-46.931,-46.831,
--46.714,-46.560,-46.376,-46.190,-46.017,-45.844,-45.642,-45.402,-45.139,-44.859,-44.544,-44.184,-43.811,-43.467,-43.142,-42.788,
--42.399,-42.015,-41.640,-41.216,-40.716,-40.210,-39.776,-39.371,-38.881,-38.307,-37.780,-37.375,-36.991,-36.473,-35.827,-35.214,
--34.766,-34.453,-34.137,-33.707,-33.162,-32.612,-32.197,-31.954,-31.749,-31.396,-30.841,-30.202,-29.615,-29.119,-28.710,-28.435,
--28.369,-28.517,-28.768,-28.913,-28.647,-27.657,-25.861,-23.600,-21.480,-19.920,-18.881,-18.059,-17.289,-16.675,-16.336,-16.142,
--15.762,-14.962,-13.808,-12.588,-11.590,-10.935,-10.585,-10.363,-9.974,-9.118,-7.766,-6.306,-5.252,-4.728,-4.381,-3.911,
--3.511,-3.533,-3.817,-3.722,-3.038,-2.575,-3.487,-5.998,-9.073,-11.399,-12.529,-12.977,-13.458,-14.241,-15.134,-15.792,
--15.960,-15.603,-14.949,-14.340,-13.949,-13.651,-13.220,-12.632,-12.091,-11.782,-11.679,-11.611,-11.451,-11.193,-10.891,-10.585,
--10.288,-9.993,-9.662,-9.242,-8.749,-8.297,-7.999,-7.808,-7.539,-7.120,-6.786,-6.962,-7.912,-9.503,-11.294,-12.794,
--13.665,-13.842,-13.553,-13.190,-13.053,-13.188,-13.500,-13.923,-14.411,-14.809,-14.920,-14.750,-14.565,-14.612,-14.889,-15.265,
--15.695,-16.166,-16.501,-16.461,-16.107,-15.892,-16.251,-17.177,-18.295,-19.269,-20.014,-20.586,-21.038,-21.444,-21.920,-22.530,
--23.213,-23.857,-24.423,-24.941,-25.453,-26.006,-26.673,-27.479,-28.305,-28.933,-29.252,-29.381,-29.551,-29.839,-30.057,-29.931,
--29.390,-28.667,-28.091,-27.809,-27.744,-27.773,-27.844,-27.904,-27.868,-27.742,-27.698,-27.889,-28.246,-28.626,-29.147,-30.181,
--31.918,-34.124,-36.411,-38.626,-40.828,-43.094,-45.569,-48.585,-52.316,-56.256,-59.428,-61.371,-62.687,-64.281,-66.232,-67.770,
--68.335,-68.219,-67.992,-67.679,-66.836,-65.303,-63.478,-61.866,-60.651,-59.821,-59.461,-59.699,-60.464,-61.464,-62.384,-62.996,
--63.132,-62.686,-61.689,-60.304,-58.734,-57.148,-55.674,-54.364,-53.152,-51.933,-50.731,-49.702,-48.931,-48.308,-47.695,-47.165,
--46.952,-47.150,-47.547,-47.828,-47.867,-47.765,-47.637,-47.457,-47.123,-46.606,-45.979,-45.310,-44.600,-43.859,-43.180,-42.686,
--42.381,-42.127,-41.801,-41.432,-41.133,-40.922,-40.686,-40.340,-39.928,-39.528,-39.130,-38.664,-38.141,-37.654,-37.233,-36.773,
--36.159,-35.408,-34.646,-33.959,-33.332,-32.693,-31.993,-31.220,-30.400,-29.593,-28.862,-28.207,-27.535,-26.736,-25.794,-24.817,
--23.951,-23.258,-22.674,-22.081,-21.447,-20.868,-20.457,-20.196,-19.933,-19.541,-19.040,-18.544,-18.113,-17.711,-17.288,-16.852,
--16.430,-16.015,-15.585,-15.144,-14.706,-14.262,-13.791,-13.313,-12.867,-12.460,-12.039,-11.565,-11.056,-10.562,-10.095,-9.626,
--9.125,-8.597,-8.054,-7.496,-6.902,-6.253,-5.555,-4.838,-4.137,-3.457,-2.770,-2.044,-1.284,-.502,.317,1.204,
-2.144,3.062,3.906,4.716,5.572,6.489,7.400,8.246,9.043,9.841,10.646,11.414,12.120,12.788,13.449,14.092,
-14.675,15.159,15.543,15.865,16.186,16.543,16.915,17.244,17.505,17.748,18.045,18.414,18.814,19.215,19.633,20.095,
-20.587,21.072,21.531,21.971,22.390,22.759,23.054,23.287,23.497,23.723,23.973,24.226,24.468,24.732,25.086,25.550,
-26.034,26.398,26.577,26.629,26.642,26.630,26.564,26.452,26.340,26.245,26.152,26.073,26.052,26.087,26.114,26.101,
-26.104,26.154,26.177,26.124,26.175,26.670,27.743,29.111,30.332,31.233,31.983,32.744,33.421,33.824,33.986,34.173,
-34.556,34.991,35.157,34.880,34.259,33.516,32.802,32.178,31.689,31.397,31.313,31.349,31.368,31.283,31.118,30.945,
-30.786,30.577,30.233,29.756,29.257,28.866,28.605,28.389,28.142,27.877,27.642,27.430,27.198,26.955,26.776,26.692,
-26.629,26.507,26.347,26.214,26.103,25.973,25.880,25.964,26.239,26.511,26.589,26.513,26.474,26.553,26.672,26.794,
-27.007,27.351,27.716,28.008,28.324,28.799,29.367,29.839,30.201,30.617,31.070,31.243,30.837,30.336,29.897,29.925,
-30.341,30.688,30.673,30.426,30.179,29.885,29.334,28.508,27.653,26.988,26.513,26.134,25.827,25.607,25.427,25.223,
-24.999,24.778,24.534,24.247,24.003,23.894,23.836,23.633,23.268,23.028,23.222,23.872,24.776,25.793,26.887,27.905,
-28.501,28.434,27.837,27.097,26.481,25.982,25.498,25.029,24.652,24.365,24.043,23.547,22.852,22.071,21.383,20.899,
-20.576,20.250,19.784,19.181,18.568,18.091,17.835,17.801,17.911,18.027,18.026,17.886,17.702,17.599,17.635,17.757,
-17.831,17.740,17.477,17.162,16.926,16.779,16.601,16.267,15.752,15.104,14.374,13.615,12.916,12.366,11.976,11.689,
-11.465,11.313,11.243,11.224,11.221,11.236,11.298,11.434,11.655,11.954,12.275,12.538,12.698,12.775,12.783,12.680,
-12.449,12.195,12.081,12.165,12.362,12.563,12.712,12.739,12.525,12.031,11.407,10.880,10.535,10.271,9.959,9.570,
-9.142,8.717,8.341,8.073,7.925,7.838,7.753,7.679,7.636,7.590,7.490,7.341,7.188,7.030,6.831,6.602,
-6.409,6.257,6.063,5.764,5.411,5.114,4.934,4.866,4.885,4.965,5.074,5.214,5.429,5.689,5.800,5.516,
-4.790,3.839,2.950,2.273,1.809,1.500,1.283,1.105,.964,.871,.723,.338,-.255,-.678,-.612,-.335,
--.529,-1.333,-1.873,-1.123,.775,2.427,2.584,1.355,-.172,-1.255,-2.098,-3.213,-4.652,-6.098,-7.409,-8.732,
--10.146,-11.492,-12.640,-13.688,-14.789,-15.909,-16.908,-17.787,-18.700,-19.755,-20.902,-22.043,-23.147,-24.217,-25.222,-26.107,
--26.843,-27.447,-27.991,-28.591,-29.328,-30.127,-30.778,-31.157,-31.364,-31.597,-31.904,-32.156,-32.286,-32.435,-32.820,-33.499,
--34.320,-35.077,-35.647,-36.008,-36.191,-36.259,-36.310,-36.429,-36.632,-36.816,-36.817,-36.535,-36.035,-35.506,-35.102,-34.852,
--34.719,-34.730,-34.992,-35.624,-36.685,-38.119,-39.711,-41.112,-42.018,-42.390,-42.473,-42.633,-43.200,-44.405,-46.254,-48.352,
--49.995,-50.669,-50.505,-50.129,-50.044,-50.277,-50.621,-51.016,-51.555,-52.241,-52.931,-53.526,-54.073,-54.650,-55.254,-55.855,
--56.451,-57.026,-57.530,-57.957,-58.375,-58.820,-59.239,-59.598,-60.000,-60.577,-61.324,-62.134,-63.010,-64.081,-65.359,-66.580,
--67.359,-67.467,-66.951,-66.090,-65.318,-65.051,-65.402,-66.079,-66.701,-67.212,-67.806,-68.451,-68.752,-68.488,-68.102,-68.334,
--69.341,-70.447,-70.876,-70.564,-70.083,-69.917,-70.058,-70.258,-70.413,-70.574,-70.765,-70.953,-71.145,-71.370,-71.593,-71.734,
--71.781,-71.776,-71.721,-71.581,-71.395,-71.277,-71.287,-71.400,-71.625,-72.022,-72.500,-72.729,-72.426,-71.705,-70.965,-70.422,
--69.934,-69.346,-68.795,-68.465,-68.186,-67.544,-66.467,-65.472,-65.161,-65.582,-66.232,-66.628,-66.734,-66.795,-66.961,-67.199,
--67.497,-67.972,-68.703,-69.515,-70.040,-70.012,-69.492,-68.794,-68.212,-67.831,-67.549,-67.219,-66.755,-66.159,-65.533,-65.051,
--64.817,-64.723,-64.481,-63.868,-62.929,-61.920,-61.074,-60.475,-60.109,-59.939,-59.882,-59.808,-59.613,-59.255,-58.682,-57.799,
--56.597,-55.243,-53.910,-52.552,-51.028,-49.509,-48.557,-48.588,-49.314,-49.930,-49.853,-49.132,-48.121,-47.011,-45.835,-44.739,
--43.961,-43.504,-43.064,-42.371,-41.484,-40.668,-40.083,-39.681,-39.341,-38.964,-38.502,-37.983,-37.499,-37.059,-36.489,-35.613,
--34.562,-33.752,-33.464,-33.510,-33.413,-32.887,-32.047,-31.204,-30.570,-30.153,-29.838,-29.489,-29.038,-28.511,-27.980,-27.467,
--26.914,-26.248,-25.442,-24.532,-23.615,-22.833,-22.288,-21.907,-21.452,-20.738,-19.803,-18.814,-17.835,-16.800,-15.702,-14.689,
--13.898,-13.255,-12.532,-11.583,-10.467,-9.349,-8.357,-7.544,-6.918,-6.414,-5.851,-5.015,-3.850,-2.562,-1.447,-.609,
-.127,.984,1.956,2.845,3.546,4.191,4.961,5.858,6.744,7.575,8.456,9.460,10.496,11.448,12.355,13.371,
-14.571,15.866,17.126,18.301,19.393,20.357,21.109,21.638,22.061,22.513,22.991,23.401,23.796,24.522,25.954,28.034,
-30.166,31.709,32.490,32.738,32.601,31.997,31.022,30.228,30.213,30.987,31.987,32.732,33.263,33.843,34.490,35.001,
-35.324,35.644,36.075,36.493,36.751,36.927,37.209,37.619,38.000,38.246,38.422,38.622,38.838,39.000,39.100,39.192,
-39.314,39.454,39.590,39.700,39.758,39.760,39.754,39.793,39.879,39.982,40.106,40.285,40.493,40.653,40.742,40.849,
-41.049,41.286,41.461,41.601,41.825,42.133,42.373,42.474,42.622,43.056,43.749,44.418,44.870,45.191,45.562,45.993,
-46.353,46.590,46.804,47.100,47.473,47.857,48.200,48.461,48.606,48.673,48.776,49.005,49.307,49.524,49.560,49.459,
-49.347,49.297,49.289,49.275,49.287,49.466,49.909,50.492,50.886,50.850,50.497,50.187,50.117,50.089,49.752,48.993,
-47.996,46.936,45.726,44.157,42.227,40.205,38.338,36.584,34.772,33.020,31.864,31.845,32.978,34.708,36.375,37.603,
-38.277,38.395,38.132,37.912,38.105,38.590,38.827,38.475,37.783,37.246,37.015,36.864,36.628,36.395,36.227,35.954,
-35.401,34.667,34.010,33.516,33.054,32.513,31.958,31.494,31.105,30.668,30.074,29.327,28.554,27.902,27.380,26.837,
-26.191,25.634,25.421,25.466,25.330,24.724,23.848,23.114,22.677,22.423,22.269,22.210,22.119,21.814,21.368,21.081,
-21.019,20.879,20.487,20.149,20.185,20.352,20.131,19.512,19.013,18.832,18.526,17.815,17.275,17.680,18.821,19.535,
-18.989,17.533,16.129,15.345,15.160,15.404,15.936,16.459,16.589,16.210,15.544,14.803,14.011,13.220,12.629,12.320,
-12.076,11.696,11.332,11.234,11.254,10.961,10.322,9.947,10.366,11.240,11.579,10.803,9.369,8.274,8.048,8.372,
-8.576,8.341,7.879,7.552,7.473,7.489,7.444,7.341,7.256,7.176,7.031,6.828,6.682,6.668,6.701,6.623,
-6.376,6.062,5.812,5.669,5.592,5.543,5.526,5.531,5.504,5.406,5.289,5.269,5.387,5.532,5.546,5.393,
-5.198,5.105,5.139,5.232,5.316,5.356,5.339,5.295,5.317,5.485,5.758,6.009,6.186,6.359,6.567,6.730,
-6.776,6.819,7.080,7.627,8.277,8.774,9.001,8.983,8.792,8.516,8.276,8.177,8.262,8.539,8.994,9.511,
-9.840,9.784,9.455,9.230,9.376,9.783,10.116,10.157,9.934,9.586,9.248,9.029,8.979,9.024,9.007,8.857,
-8.656,8.507,8.413,8.321,8.232,8.179,8.141,8.072,7.984,7.935,7.926,7.906,7.864,7.848,7.856,7.790,
-7.590,7.349,7.213,7.217,7.277,7.324,7.370,7.440,7.514,7.556,7.553,7.521,7.480,7.439,7.384,7.309,
-7.276,7.378,7.563,7.583,7.269,6.812,6.540,6.417,6.118,5.820,6.571,9.270,13.203,16.075,15.864,12.546,
-7.873,3.707,.851,-.788,-1.555,-1.813,-1.947,-2.194,-2.485,-2.656,-2.759,-2.993,-3.405,-3.851,-4.249,-4.678,
--5.187,-5.684,-6.082,-6.425,-6.779,-7.103,-7.344,-7.562,-7.856,-8.211,-8.533,-8.803,-9.093,-9.430,-9.764,-10.072,
--10.403,-10.791,-11.208,-11.633,-12.098,-12.603,-13.090,-13.520,-13.933,-14.366,-14.785,-15.158,-15.533,-15.962,-16.401,-16.779,
--17.134,-17.582,-18.140,-18.697,-19.166,-19.583,-20.011,-20.444,-20.858,-21.278,-21.721,-22.133,-22.468,-22.770,-23.118,-23.501,
--23.845,-24.155,-24.509,-24.927,-25.336,-25.696,-26.072,-26.530,-27.035,-27.514,-27.974,-28.469,-28.999,-29.509,-29.978,-30.440,
--30.908,-31.367,-31.826,-32.320,-32.855,-33.378,-33.849,-34.277,-34.678,-35.047,-35.391,-35.754,-36.159,-36.574,-36.969,-37.359,
--37.771,-38.172,-38.517,-38.828,-39.169,-39.550,-39.906,-40.188,-40.429,-40.688,-40.985,-41.310,-41.657,-42.021,-42.374,-42.679,
--42.931,-43.149,-43.350,-43.543,-43.727,-43.894,-44.041,-44.203,-44.443,-44.778,-45.136,-45.431,-45.654,-45.856,-46.053,-46.212,
--46.324,-46.436,-46.576,-46.714,-46.823,-46.936,-47.088,-47.249,-47.351,-47.373,-47.346,-47.286,-47.189,-47.070,-46.967,-46.883,
--46.779,-46.636,-46.485,-46.351,-46.213,-46.035,-45.821,-45.607,-45.400,-45.168,-44.883,-44.547,-44.190,-43.846,-43.521,-43.183,
--42.795,-42.376,-41.985,-41.629,-41.228,-40.721,-40.169,-39.680,-39.250,-38.774,-38.219,-37.690,-37.262,-36.839,-36.271,-35.580,
--34.968,-34.590,-34.376,-34.118,-33.674,-33.080,-32.479,-32.006,-31.692,-31.469,-31.218,-30.845,-30.316,-29.658,-28.970,-28.386,
--27.994,-27.783,-27.705,-27.763,-27.938,-28.011,-27.585,-26.418,-24.708,-22.950,-21.488,-20.300,-19.195,-18.116,-17.180,-16.483,
--15.972,-15.488,-14.865,-14.011,-12.968,-11.933,-11.177,-10.841,-10.749,-10.431,-9.484,-7.996,-6.591,-5.874,-5.794,-5.717,
--5.209,-4.563,-4.325,-4.436,-4.246,-3.512,-3.037,-3.955,-6.469,-9.550,-11.893,-12.942,-12.995,-12.671,-12.484,-12.721,
--13.345,-13.983,-14.209,-13.952,-13.514,-13.172,-12.876,-12.437,-11.877,-11.442,-11.296,-11.327,-11.294,-11.067,-10.702,-10.326,
--10.023,-9.798,-9.583,-9.276,-8.827,-8.307,-7.868,-7.594,-7.394,-7.112,-6.742,-6.525,-6.787,-7.699,-9.163,-10.855,
--12.327,-13.150,-13.174,-12.712,-12.358,-12.502,-13.035,-13.589,-13.952,-14.125,-14.088,-13.758,-13.241,-12.912,-13.066,-13.623,
--14.300,-14.971,-15.642,-16.145,-16.173,-15.727,-15.314,-15.504,-16.362,-17.463,-18.389,-19.044,-19.553,-20.057,-20.667,-21.441,
--22.293,-23.014,-23.496,-23.870,-24.345,-24.956,-25.563,-26.063,-26.453,-26.713,-26.763,-26.629,-26.542,-26.740,-27.172,-27.512,
--27.496,-27.204,-26.953,-26.961,-27.188,-27.480,-27.756,-27.982,-28.046,-27.828,-27.425,-27.163,-27.275,-27.629,-27.946,-28.241,
--28.882,-30.160,-31.947,-33.874,-35.709,-37.481,-39.343,-41.515,-44.231,-47.486,-50.784,-53.459,-55.379,-57.102,-59.119,-61.104,
--62.241,-62.244,-61.694,-61.271,-60.947,-60.193,-58.768,-57.019,-55.453,-54.361,-53.902,-54.270,-55.498,-57.213,-58.821,-59.978,
--60.784,-61.481,-62.080,-62.340,-62.033,-61.164,-59.957,-58.658,-57.375,-56.052,-54.609,-53.098,-51.697,-50.551,-49.645,-48.882,
--48.248,-47.861,-47.802,-47.959,-48.085,-48.013,-47.791,-47.567,-47.377,-47.102,-46.625,-45.980,-45.293,-44.629,-43.967,-43.323,
--42.795,-42.442,-42.175,-41.855,-41.476,-41.158,-40.960,-40.783,-40.495,-40.090,-39.653,-39.227,-38.779,-38.301,-37.843,-37.433,
--36.998,-36.442,-35.753,-35.019,-34.331,-33.705,-33.090,-32.425,-31.682,-30.882,-30.087,-29.345,-28.639,-27.893,-27.037,-26.082,
--25.131,-24.311,-23.663,-23.111,-22.536,-21.913,-21.345,-20.939,-20.673,-20.398,-20.002,-19.511,-19.030,-18.611,-18.227,-17.837,
--17.432,-17.012,-16.567,-16.099,-15.631,-15.178,-14.725,-14.260,-13.800,-13.368,-12.947,-12.494,-11.992,-11.475,-10.979,-10.501,
--10.011,-9.490,-8.941,-8.376,-7.795,-7.189,-6.548,-5.872,-5.172,-4.462,-3.744,-3.015,-2.279,-1.538,-.773,.055,
-.958,1.883,2.762,3.585,4.413,5.300,6.226,7.121,7.950,8.740,9.525,10.298,11.030,11.711,12.362,13.002,
-13.622,14.187,14.671,15.072,15.426,15.786,16.181,16.585,16.951,17.261,17.557,17.894,18.283,18.694,19.104,19.529,
-20.001,20.521,21.058,21.575,22.053,22.482,22.847,23.132,23.349,23.542,23.771,24.065,24.396,24.712,25.003,25.316,
-25.692,26.096,26.440,26.669,26.800,26.866,26.865,26.794,26.683,26.568,26.446,26.301,26.176,26.142,26.192,26.237,
-26.228,26.212,26.225,26.186,26.035,25.953,26.310,27.306,28.729,30.154,31.332,32.288,33.071,33.586,33.752,33.742,
-33.895,34.373,34.963,35.276,35.095,34.494,33.691,32.861,32.112,31.545,31.247,31.212,31.305,31.345,31.232,30.996,
-30.734,30.506,30.281,29.990,29.617,29.229,28.916,28.693,28.494,28.256,27.993,27.758,27.559,27.355,27.137,26.952,
-26.839,26.761,26.650,26.483,26.276,26.049,25.847,25.776,25.929,26.233,26.472,26.509,26.444,26.478,26.656,26.862,
-27.022,27.204,27.482,27.819,28.157,28.531,28.998,29.507,29.965,30.370,30.755,30.986,30.837,30.358,29.841,29.533,
-29.675,30.058,30.268,30.143,29.851,29.563,29.216,28.656,27.890,27.082,26.375,25.806,25.388,25.133,24.993,24.871,
-24.721,24.581,24.453,24.257,23.958,23.675,23.545,23.512,23.394,23.168,23.059,23.299,23.893,24.703,25.667,26.758,
-27.773,28.356,28.323,27.852,27.263,26.684,26.031,25.299,24.677,24.347,24.236,24.053,23.556,22.744,21.830,21.064,
-20.567,20.259,19.937,19.454,18.839,18.238,17.773,17.480,17.342,17.331,17.377,17.369,17.238,17.032,16.878,16.854,
-16.910,16.912,16.754,16.436,16.050,15.703,15.436,15.205,14.933,14.579,14.150,13.675,13.184,12.705,12.253,11.844,
-11.513,11.306,11.236,11.233,11.192,11.075,10.953,10.944,11.110,11.423,11.791,12.113,12.332,12.458,12.531,12.543,
-12.445,12.238,12.037,11.974,12.062,12.206,12.319,12.364,12.283,11.981,11.454,10.861,10.399,10.108,9.862,9.538,
-9.130,8.706,8.326,8.027,7.827,7.703,7.607,7.514,7.442,7.388,7.303,7.160,7.007,6.900,6.807,6.648,
-6.403,6.132,5.888,5.662,5.435,5.218,5.033,4.889,4.803,4.793,4.822,4.826,4.831,4.965,5.273,5.540,
-5.428,4.797,3.844,2.908,2.201,1.725,1.357,.973,.558,.255,.203,.281,.130,-.409,-.989,-1.122,
--.869,-.854,-1.399,-1.886,-1.354,.270,1.884,2.315,1.481,.234,-.748,-1.572,-2.662,-4.081,-5.559,-6.954,
--8.382,-9.901,-11.351,-12.581,-13.659,-14.738,-15.816,-16.773,-17.602,-18.451,-19.448,-20.573,-21.726,-22.843,-23.907,-24.904,
--25.810,-26.587,-27.203,-27.688,-28.182,-28.827,-29.581,-30.219,-30.579,-30.763,-30.985,-31.284,-31.492,-31.526,-31.578,-31.955,
--32.775,-33.858,-34.883,-35.594,-35.915,-35.953,-35.921,-35.989,-36.187,-36.426,-36.584,-36.557,-36.286,-35.822,-35.361,-35.109,
--35.105,-35.218,-35.360,-35.655,-36.345,-37.541,-39.097,-40.676,-41.932,-42.660,-42.898,-42.941,-43.238,-44.189,-45.926,-48.143,
--50.160,-51.306,-51.420,-50.971,-50.614,-50.622,-50.822,-51.033,-51.349,-51.928,-52.683,-53.366,-53.901,-54.449,-55.142,-55.904,
--56.601,-57.224,-57.849,-58.491,-59.108,-59.681,-60.206,-60.638,-60.950,-61.228,-61.620,-62.173,-62.828,-63.563,-64.465,-65.584,
--66.794,-67.843,-68.489,-68.583,-68.126,-67.357,-66.693,-66.456,-66.632,-67.009,-67.508,-68.201,-68.989,-69.516,-69.584,-69.530,
--69.910,-70.786,-71.591,-71.773,-71.423,-71.085,-71.089,-71.299,-71.458,-71.534,-71.629,-71.753,-71.835,-71.881,-71.977,-72.143,
--72.317,-72.456,-72.564,-72.610,-72.536,-72.375,-72.244,-72.212,-72.249,-72.366,-72.665,-73.138,-73.515,-73.474,-72.975,-72.273,
--71.601,-71.007,-70.517,-70.219,-70.021,-69.517,-68.377,-66.887,-65.857,-65.855,-66.639,-67.474,-67.894,-68.028,-68.237,-68.656,
--69.178,-69.718,-70.312,-70.943,-71.403,-71.423,-70.930,-70.134,-69.359,-68.809,-68.479,-68.237,-67.943,-67.497,-66.882,-66.213,
--65.702,-65.461,-65.329,-64.964,-64.176,-63.111,-62.087,-61.284,-60.686,-60.245,-59.984,-59.889,-59.838,-59.712,-59.496,-59.173,
--58.602,-57.640,-56.344,-54.895,-53.311,-51.481,-49.589,-48.281,-48.109,-48.840,-49.552,-49.517,-48.791,-47.870,-46.998,-46.064,
--45.023,-44.096,-43.452,-42.930,-42.246,-41.372,-40.553,-39.995,-39.671,-39.406,-39.049,-38.556,-37.995,-37.483,-37.026,-36.444,
--35.566,-34.525,-33.742,-33.511,-33.655,-33.685,-33.270,-32.497,-31.704,-31.159,-30.888,-30.704,-30.351,-29.683,-28.768,-27.808,
--26.942,-26.159,-25.387,-24.605,-23.835,-23.102,-22.439,-21.893,-21.429,-20.895,-20.141,-19.190,-18.198,-17.255,-16.300,-15.280,
--14.287,-13.450,-12.739,-11.967,-11.002,-9.892,-8.794,-7.831,-7.067,-6.527,-6.132,-5.642,-4.801,-3.601,-2.344,-1.349,
--.625,.094,1.005,2.015,2.916,3.670,4.424,5.287,6.226,7.172,8.126,9.097,10.042,10.946,11.898,13.005,
-14.253,15.537,16.805,18.070,19.286,20.326,21.112,21.698,22.188,22.628,23.045,23.526,24.227,25.339,27.014,29.176,
-31.351,32.879,33.501,33.631,33.819,33.991,33.540,32.270,30.938,30.545,31.271,32.405,33.269,33.855,34.472,35.153,
-35.683,36.020,36.359,36.787,37.159,37.379,37.588,37.948,38.374,38.656,38.765,38.879,39.118,39.400,39.581,39.656,
-39.722,39.830,39.938,39.996,40.011,40.027,40.072,40.143,40.215,40.273,40.336,40.447,40.621,40.811,40.965,41.098,
-41.262,41.460,41.637,41.780,41.968,42.251,42.539,42.697,42.771,42.993,43.509,44.184,44.756,45.140,45.472,45.860,
-46.245,46.524,46.726,46.962,47.276,47.623,47.981,48.356,48.695,48.894,48.947,48.990,49.155,49.416,49.634,49.708,
-49.652,49.536,49.425,49.355,49.330,49.355,49.498,49.869,50.443,50.954,51.091,50.838,50.524,50.427,50.425,50.153,
-49.453,48.510,47.498,46.260,44.510,42.313,40.180,38.545,37.242,35.699,33.721,31.968,31.465,32.598,34.702,36.676,
-37.904,38.488,38.779,38.927,38.927,38.835,38.741,38.619,38.361,37.950,37.482,37.043,36.661,36.370,36.168,35.931,
-35.488,34.860,34.286,33.933,33.675,33.290,32.772,32.316,32.015,31.727,31.273,30.632,29.909,29.209,28.585,28.027,
-27.453,26.787,26.091,25.534,25.164,24.810,24.297,23.684,23.166,22.833,22.622,22.455,22.270,21.971,21.551,21.250,
-21.323,21.607,21.574,21.003,20.336,20.118,20.268,20.270,19.965,19.704,19.638,19.365,18.591,17.790,17.718,18.383,
-18.942,18.691,17.777,16.816,16.166,15.823,15.749,15.928,16.163,16.157,15.829,15.364,14.897,14.382,13.813,13.333,
-13.002,12.654,12.167,11.727,11.583,11.640,11.580,11.401,11.523,12.187,12.947,13.018,12.102,10.683,9.496,8.860,
-8.597,8.429,8.289,8.246,8.295,8.317,8.218,8.037,7.888,7.814,7.738,7.564,7.301,7.053,6.900,6.809,
-6.684,6.479,6.245,6.063,5.970,5.931,5.886,5.809,5.701,5.580,5.467,5.408,5.463,5.639,5.850,5.972,
-5.945,5.802,5.622,5.471,5.401,5.428,5.505,5.552,5.572,5.678,5.936,6.242,6.427,6.499,6.648,6.981,
-7.358,7.593,7.727,7.989,8.465,8.962,9.220,9.178,8.967,8.720,8.481,8.275,8.163,8.218,8.462,8.840,
-9.223,9.464,9.518,9.481,9.485,9.529,9.497,9.328,9.103,8.942,8.892,8.960,9.147,9.389,9.506,9.359,
-9.032,8.753,8.626,8.541,8.378,8.179,8.044,7.958,7.841,7.712,7.665,7.708,7.737,7.693,7.637,7.616,
-7.561,7.397,7.181,7.042,7.018,7.044,7.074,7.129,7.222,7.313,7.365,7.387,7.401,7.408,7.401,7.381,
-7.370,7.421,7.581,7.770,7.767,7.439,6.973,6.690,6.582,6.309,5.841,5.850,7.019,8.945,10.138,9.367,
-6.833,3.836,1.487,.028,-.814,-1.279,-1.524,-1.737,-2.030,-2.310,-2.474,-2.619,-2.916,-3.350,-3.758,-4.105,
--4.516,-5.033,-5.525,-5.893,-6.207,-6.556,-6.897,-7.156,-7.385,-7.688,-8.049,-8.371,-8.633,-8.907,-9.224,-9.540,
--9.843,-10.183,-10.577,-10.979,-11.369,-11.798,-12.294,-12.800,-13.263,-13.710,-14.179,-14.629,-15.016,-15.378,-15.785,-16.221,
--16.624,-17.015,-17.479,-18.024,-18.551,-18.989,-19.378,-19.783,-20.200,-20.613,-21.047,-21.514,-21.956,-22.322,-22.651,-23.012,
--23.393,-23.729,-24.032,-24.380,-24.786,-25.181,-25.535,-25.912,-26.365,-26.852,-27.317,-27.793,-28.338,-28.922,-29.453,-29.897,
--30.314,-30.764,-31.246,-31.741,-32.245,-32.749,-33.231,-33.682,-34.115,-34.530,-34.909,-35.266,-35.652,-36.090,-36.539,-36.955,
--37.347,-37.732,-38.096,-38.423,-38.744,-39.096,-39.453,-39.749,-39.978,-40.211,-40.504,-40.843,-41.181,-41.505,-41.825,-42.140,
--42.440,-42.715,-42.958,-43.165,-43.350,-43.530,-43.694,-43.828,-43.973,-44.211,-44.558,-44.921,-45.201,-45.406,-45.609,-45.829,
--46.014,-46.149,-46.272,-46.407,-46.528,-46.638,-46.792,-47.006,-47.210,-47.331,-47.374,-47.373,-47.312,-47.170,-47.002,-46.896,
--46.841,-46.744,-46.572,-46.400,-46.280,-46.154,-45.942,-45.673,-45.439,-45.265,-45.080,-44.823,-44.510,-44.192,-43.884,-43.559,
--43.177,-42.728,-42.267,-41.869,-41.542,-41.189,-40.720,-40.173,-39.663,-39.218,-38.742,-38.181,-37.615,-37.129,-36.668,-36.107,
--35.466,-34.922,-34.596,-34.396,-34.111,-33.638,-33.046,-32.462,-31.948,-31.507,-31.142,-30.870,-30.644,-30.320,-29.770,-29.028,
--28.290,-27.717,-27.293,-26.928,-26.652,-26.573,-26.643,-26.582,-26.136,-25.319,-24.315,-23.207,-21.923,-20.431,-18.858,-17.383,
--16.116,-15.121,-14.447,-14.026,-13.613,-12.966,-12.117,-11.385,-11.042,-10.953,-10.622,-9.668,-8.305,-7.260,-7.080,-7.502,
--7.678,-7.095,-6.102,-5.376,-5.038,-4.630,-3.992,-3.758,-4.739,-6.971,-9.647,-11.841,-13.062,-13.211,-12.456,-11.345,
--10.702,-11.026,-12.014,-12.887,-13.176,-13.016,-12.725,-12.373,-11.879,-11.336,-10.991,-10.952,-11.045,-11.000,-10.697,-10.211,
--9.721,-9.388,-9.246,-9.159,-8.916,-8.438,-7.866,-7.429,-7.210,-7.099,-6.961,-6.825,-6.855,-7.204,-7.930,-9.025,
--10.383,-11.690,-12.482,-12.510,-12.087,-11.893,-12.324,-13.119,-13.715,-13.844,-13.628,-13.213,-12.598,-11.899,-11.480,-11.622,
--12.183,-12.810,-13.390,-14.038,-14.685,-15.000,-14.846,-14.599,-14.782,-15.486,-16.331,-16.946,-17.300,-17.599,-18.048,-18.761,
--19.709,-20.650,-21.244,-21.381,-21.339,-21.502,-21.986,-22.623,-23.254,-23.845,-24.339,-24.591,-24.568,-24.494,-24.646,-25.036,
--25.424,-25.629,-25.731,-25.912,-26.197,-26.449,-26.570,-26.610,-26.647,-26.653,-26.564,-26.454,-26.518,-26.858,-27.350,-27.810,
--28.258,-28.921,-29.969,-31.346,-32.880,-34.443,-35.972,-37.430,-38.904,-40.641,-42.807,-45.209,-47.434,-49.317,-51.073,-52.826,
--54.191,-54.600,-54.033,-53.156,-52.632,-52.461,-52.163,-51.430,-50.423,-49.504,-48.971,-49.084,-50.050,-51.741,-53.548,-54.791,
--55.395,-55.993,-57.251,-59.147,-60.980,-62.044,-62.180,-61.697,-60.920,-59.931,-58.663,-57.102,-55.361,-53.619,-52.065,-50.835,
--49.952,-49.321,-48.837,-48.478,-48.255,-48.097,-47.876,-47.556,-47.238,-46.998,-46.747,-46.330,-45.742,-45.131,-44.596,-44.077,
--43.502,-42.934,-42.482,-42.133,-41.771,-41.363,-41.024,-40.845,-40.746,-40.560,-40.210,-39.764,-39.311,-38.873,-38.431,-37.981,
--37.531,-37.061,-36.528,-35.917,-35.259,-34.602,-33.977,-33.367,-32.735,-32.056,-31.335,-30.593,-29.833,-29.039,-28.199,-27.324,
--26.437,-25.577,-24.795,-24.125,-23.545,-22.993,-22.436,-21.918,-21.496,-21.155,-20.807,-20.393,-19.936,-19.488,-19.066,-18.657,
--18.252,-17.858,-17.465,-17.054,-16.623,-16.181,-15.730,-15.261,-14.787,-14.331,-13.891,-13.429,-12.919,-12.380,-11.859,-11.373,
--10.898,-10.402,-9.874,-9.321,-8.751,-8.166,-7.558,-6.919,-6.245,-5.540,-4.810,-4.055,-3.288,-2.536,-1.802,-1.042,
--.204,.706,1.617,2.469,3.283,4.124,5.015,5.917,6.784,7.608,8.401,9.167,9.903,10.610,11.298,11.967,
-12.605,13.199,13.743,14.232,14.671,15.082,15.493,15.912,16.321,16.703,17.061,17.416,17.785,18.172,18.575,18.997,
-19.443,19.923,20.441,20.990,21.544,22.066,22.528,22.912,23.210,23.431,23.614,23.820,24.095,24.433,24.793,25.141,
-25.479,25.814,26.130,26.401,26.623,26.807,26.942,26.993,26.949,26.846,26.722,26.576,26.405,26.258,26.196,26.216,
-26.247,26.251,26.251,26.255,26.191,26.030,25.943,26.242,27.110,28.437,29.933,31.354,32.550,33.369,33.678,33.545,
-33.316,33.399,33.924,34.634,35.116,35.111,34.624,33.816,32.882,32.008,31.372,31.087,31.121,31.286,31.358,31.221,
-30.914,30.556,30.235,29.960,29.685,29.386,29.087,28.837,28.653,28.498,28.317,28.100,27.881,27.692,27.523,27.352,
-27.186,27.045,26.927,26.790,26.590,26.324,26.045,25.858,25.868,26.085,26.371,26.539,26.529,26.467,26.517,26.703,
-26.924,27.101,27.267,27.503,27.850,28.297,28.797,29.269,29.644,29.948,30.265,30.571,30.657,30.358,29.813,29.369,
-29.176,29.331,29.569,29.592,29.373,29.069,28.762,28.385,27.869,27.236,26.542,25.828,25.181,24.737,24.550,24.502,
-24.427,24.291,24.173,24.082,23.916,23.625,23.334,23.193,23.185,23.169,23.098,23.104,23.334,23.825,24.553,25.498,
-26.548,27.416,27.807,27.708,27.386,27.047,26.606,25.884,24.972,24.235,23.937,23.951,23.884,23.438,22.627,21.698,
-20.924,20.427,20.113,19.768,19.251,18.621,18.055,17.649,17.357,17.107,16.898,16.763,16.668,16.544,16.385,16.257,
-16.209,16.195,16.117,15.908,15.566,15.142,14.710,14.344,14.071,13.852,13.627,13.373,13.113,12.856,12.562,12.186,
-11.758,11.394,11.204,11.180,11.192,11.112,10.935,10.782,10.786,10.987,11.319,11.668,11.953,12.159,12.323,12.459,
-12.513,12.414,12.187,11.967,11.874,11.899,11.940,11.930,11.865,11.721,11.427,10.968,10.455,10.034,9.747,9.512,
-9.228,8.864,8.459,8.092,7.833,7.692,7.604,7.492,7.355,7.240,7.143,6.999,6.789,6.601,6.523,6.520,
-6.458,6.249,5.916,5.547,5.229,5.019,4.916,4.854,4.772,4.684,4.640,4.617,4.537,4.432,4.477,4.768,
-5.105,5.106,4.567,3.646,2.696,1.970,1.486,1.089,.604,.022,-.436,-.521,-.303,-.203,-.549,-1.150,
--1.500,-1.431,-1.335,-1.568,-1.830,-1.434,-.204,1.161,1.772,1.431,.639,-.152,-1.008,-2.197,-3.701,-5.240,
--6.668,-8.088,-9.591,-11.071,-12.382,-13.537,-14.639,-15.694,-16.626,-17.444,-18.281,-19.246,-20.329,-21.449,-22.552,-23.613,
--24.610,-25.522,-26.318,-26.953,-27.431,-27.872,-28.424,-29.075,-29.619,-29.905,-30.035,-30.227,-30.515,-30.723,-30.764,-30.837,
--31.267,-32.180,-33.388,-34.531,-35.305,-35.617,-35.624,-35.604,-35.716,-35.911,-36.059,-36.114,-36.080,-35.907,-35.555,-35.164,
--34.988,-35.127,-35.427,-35.742,-36.200,-37.082,-38.465,-40.080,-41.531,-42.554,-43.094,-43.280,-43.442,-44.067,-45.540,-47.793,
--50.204,-51.929,-52.485,-52.098,-51.480,-51.208,-51.317,-51.502,-51.627,-51.881,-52.441,-53.170,-53.796,-54.283,-54.841,-55.589,
--56.386,-57.059,-57.636,-58.281,-59.064,-59.925,-60.783,-61.570,-62.180,-62.527,-62.674,-62.825,-63.149,-63.661,-64.309,-65.091,
--66.028,-67.078,-68.130,-69.038,-69.623,-69.705,-69.258,-68.526,-67.900,-67.635,-67.761,-68.206,-68.885,-69.620,-70.163,-70.463,
--70.804,-71.492,-72.386,-72.950,-72.855,-72.379,-72.087,-72.202,-72.492,-72.684,-72.776,-72.878,-72.961,-72.920,-72.784,-72.708,
--72.772,-72.918,-73.083,-73.255,-73.389,-73.394,-73.260,-73.111,-73.062,-73.101,-73.193,-73.387,-73.728,-74.082,-74.207,-73.990,
--73.533,-73.008,-72.536,-72.197,-71.978,-71.621,-70.716,-69.169,-67.545,-66.705,-66.995,-67.928,-68.726,-69.088,-69.307,-69.768,
--70.525,-71.374,-72.139,-72.742,-73.075,-72.967,-72.356,-71.433,-70.537,-69.910,-69.549,-69.295,-69.002,-68.612,-68.106,-67.488,
--66.836,-66.313,-66.002,-65.745,-65.239,-64.340,-63.225,-62.204,-61.413,-60.786,-60.266,-59.904,-59.731,-59.652,-59.557,-59.443,
--59.301,-58.971,-58.249,-57.124,-55.744,-54.128,-52.154,-49.996,-48.352,-47.913,-48.562,-49.354,-49.422,-48.729,-47.812,-46.995,
--46.148,-45.137,-44.153,-43.442,-42.919,-42.278,-41.416,-40.565,-39.991,-39.699,-39.478,-39.125,-38.591,-37.973,-37.399,-36.880,
--36.271,-35.437,-34.494,-33.780,-33.516,-33.549,-33.495,-33.124,-32.536,-32.002,-31.705,-31.606,-31.481,-31.055,-30.193,-28.994,
--27.700,-26.491,-25.408,-24.453,-23.663,-23.050,-22.528,-21.995,-21.441,-20.896,-20.306,-19.559,-18.641,-17.673,-16.758,-15.864,
--14.925,-13.980,-13.122,-12.340,-11.504,-10.516,-9.424,-8.362,-7.445,-6.751,-6.307,-6.006,-5.571,-4.763,-3.638,-2.526,
--1.668,-.948,-.084,.994,2.080,2.998,3.823,4.726,5.726,6.734,7.738,8.789,9.841,10.790,11.684,12.726,
-13.995,15.318,16.521,17.670,18.894,20.089,21.010,21.629,22.176,22.789,23.346,23.765,24.302,25.410,27.341,29.931,
-32.638,34.728,35.666,35.614,35.388,35.598,35.847,35.167,33.353,31.490,30.870,31.630,32.835,33.705,34.315,35.044,
-35.858,36.446,36.763,37.062,37.465,37.832,38.077,38.333,38.694,39.019,39.148,39.171,39.321,39.651,39.978,40.144,
-40.197,40.269,40.378,40.437,40.398,40.332,40.339,40.443,40.580,40.677,40.733,40.807,40.940,41.107,41.257,41.386,
-41.535,41.709,41.861,41.973,42.115,42.366,42.680,42.914,43.019,43.149,43.500,44.074,44.671,45.129,45.479,45.837,
-46.207,46.498,46.698,46.910,47.203,47.527,47.830,48.157,48.550,48.909,49.082,49.088,49.119,49.309,49.581,49.782,
-49.858,49.854,49.791,49.675,49.550,49.479,49.480,49.583,49.890,50.450,51.055,51.341,51.182,50.860,50.704,50.663,
-50.395,49.751,48.933,48.086,46.933,45.062,42.568,40.176,38.543,37.506,36.231,34.225,32.109,31.189,32.189,34.515,
-36.828,38.251,38.880,39.234,39.524,39.601,39.410,39.169,39.079,39.063,38.873,38.391,37.723,37.071,36.564,36.165,
-35.722,35.143,34.547,34.162,34.029,33.902,33.536,32.998,32.563,32.328,32.096,31.646,30.988,30.292,29.662,29.097,
-28.571,28.055,27.497,26.869,26.221,25.620,25.052,24.467,23.895,23.439,23.158,23.015,22.936,22.815,22.522,22.054,
-21.649,21.589,21.796,21.838,21.462,20.934,20.668,20.649,20.530,20.218,20.003,20.006,19.864,19.248,18.447,18.081,
-18.308,18.647,18.605,18.191,17.697,17.257,16.853,16.547,16.444,16.468,16.399,16.138,15.777,15.392,14.960,14.490,
-14.079,13.727,13.278,12.662,12.077,11.790,11.827,12.043,12.418,13.058,13.838,14.282,13.962,12.940,11.683,10.588,
-9.744,9.114,8.756,8.746,8.979,9.183,9.159,8.940,8.705,8.570,8.495,8.367,8.116,7.777,7.442,7.184,
-7.009,6.871,6.727,6.584,6.490,6.467,6.465,6.389,6.199,5.954,5.758,5.665,5.666,5.741,5.880,6.061,
-6.234,6.340,6.331,6.190,5.961,5.755,5.672,5.711,5.787,5.873,6.056,6.382,6.730,6.941,7.053,7.284,
-7.737,8.238,8.558,8.709,8.891,9.177,9.392,9.350,9.085,8.793,8.601,8.482,8.385,8.343,8.427,8.631,
-8.839,8.923,8.883,8.874,9.043,9.326,9.472,9.310,8.965,8.714,8.688,8.806,8.990,9.265,9.594,9.761,
-9.580,9.172,8.847,8.736,8.670,8.473,8.203,8.008,7.892,7.749,7.583,7.512,7.565,7.621,7.585,7.507,
-7.460,7.403,7.260,7.060,6.905,6.833,6.815,6.844,6.952,7.115,7.243,7.282,7.266,7.252,7.258,7.277,
-7.310,7.360,7.431,7.540,7.658,7.662,7.438,7.062,6.743,6.521,6.177,5.611,5.161,5.257,5.747,5.861,
-5.009,3.420,1.827,.688,-.064,-.634,-1.052,-1.314,-1.535,-1.811,-2.084,-2.287,-2.510,-2.869,-3.302,-3.667,
--3.980,-4.384,-4.892,-5.348,-5.667,-5.952,-6.304,-6.668,-6.954,-7.205,-7.518,-7.878,-8.191,-8.444,-8.708,-9.011,
--9.311,-9.608,-9.956,-10.360,-10.752,-11.107,-11.499,-11.979,-12.495,-12.983,-13.458,-13.957,-14.440,-14.848,-15.207,-15.594,
--16.022,-16.451,-16.882,-17.367,-17.897,-18.389,-18.801,-19.180,-19.576,-19.977,-20.372,-20.801,-21.287,-21.768,-22.178,-22.538,
--22.908,-23.284,-23.619,-23.926,-24.270,-24.660,-25.040,-25.398,-25.792,-26.250,-26.718,-27.160,-27.632,-28.195,-28.798,-29.325,
--29.742,-30.121,-30.544,-31.024,-31.539,-32.069,-32.590,-33.075,-33.525,-33.955,-34.365,-34.740,-35.105,-35.513,-35.981,-36.458,
--36.893,-37.287,-37.654,-37.989,-38.296,-38.611,-38.956,-39.283,-39.538,-39.746,-39.993,-40.321,-40.686,-41.028,-41.332,-41.619,
--41.908,-42.208,-42.507,-42.774,-42.984,-43.163,-43.350,-43.536,-43.688,-43.831,-44.057,-44.392,-44.744,-45.014,-45.223,-45.449,
--45.697,-45.902,-46.049,-46.182,-46.318,-46.428,-46.531,-46.695,-46.928,-47.136,-47.246,-47.291,-47.312,-47.264,-47.102,-46.908,
--46.800,-46.763,-46.665,-46.466,-46.270,-46.148,-46.015,-45.768,-45.452,-45.199,-45.038,-44.880,-44.655,-44.392,-44.135,-43.862,
--43.517,-43.076,-42.573,-42.087,-41.692,-41.389,-41.079,-40.663,-40.159,-39.670,-39.227,-38.746,-38.167,-37.562,-37.034,-36.565,
--36.061,-35.514,-35.040,-34.707,-34.426,-34.052,-33.551,-33.019,-32.531,-32.057,-31.539,-31.015,-30.616,-30.397,-30.214,-29.835,
--29.177,-28.388,-27.667,-27.045,-26.435,-25.840,-25.395,-25.183,-25.129,-25.106,-25.043,-24.848,-24.322,-23.279,-21.750,-19.953,
--18.093,-16.309,-14.802,-13.830,-13.437,-13.291,-12.945,-12.271,-11.549,-11.090,-10.846,-10.434,-9.588,-8.540,-7.895,-8.009,
--8.530,-8.681,-8.059,-7.002,-6.083,-5.430,-4.806,-4.259,-4.316,-5.389,-7.267,-9.385,-11.334,-12.836,-13.429,-12.735,
--11.147,-9.848,-9.808,-10.888,-12.127,-12.783,-12.837,-12.598,-12.214,-11.696,-11.175,-10.858,-10.788,-10.794,-10.668,-10.317,
--9.781,-9.221,-8.845,-8.741,-8.739,-8.545,-8.051,-7.453,-7.027,-6.846,-6.792,-6.796,-6.942,-7.323,-7.889,-8.540,
--9.293,-10.232,-11.235,-11.916,-12.000,-11.727,-11.692,-12.211,-12.967,-13.396,-13.309,-12.940,-12.510,-12.008,-11.469,-11.155,
--11.253,-11.562,-11.738,-11.784,-12.026,-12.584,-13.151,-13.419,-13.519,-13.825,-14.443,-15.114,-15.580,-15.852,-16.114,-16.533,
--17.193,-18.040,-18.803,-19.106,-18.815,-18.214,-17.758,-17.697,-18.037,-18.748,-19.809,-21.040,-22.091,-22.729,-23.047,-23.311,
--23.661,-24.047,-24.393,-24.679,-24.879,-24.924,-24.798,-24.613,-24.522,-24.606,-24.864,-25.266,-25.751,-26.213,-26.581,-26.956,
--27.592,-28.663,-30.051,-31.440,-32.640,-33.768,-35.034,-36.403,-37.594,-38.460,-39.278,-40.497,-42.237,-44.132,-45.721,-46.840,
--47.547,-47.803,-47.450,-46.563,-45.617,-45.144,-45.269,-45.668,-45.954,-46.007,-45.964,-46.079,-46.620,-47.714,-49.102,-50.133,
--50.306,-49.935,-50.095,-51.676,-54.502,-57.494,-59.687,-60.938,-61.620,-61.919,-61.646,-60.632,-59.029,-57.146,-55.190,-53.314,
--51.752,-50.696,-50.068,-49.574,-49.034,-48.513,-48.116,-47.792,-47.432,-47.054,-46.741,-46.456,-46.064,-45.544,-45.040,-44.644,
--44.262,-43.763,-43.174,-42.632,-42.178,-41.733,-41.263,-40.879,-40.690,-40.637,-40.532,-40.247,-39.813,-39.348,-38.924,-38.528,
--38.108,-37.636,-37.124,-36.595,-36.048,-35.464,-34.843,-34.201,-33.552,-32.896,-32.235,-31.582,-30.918,-30.184,-29.345,-28.453,
--27.606,-26.839,-26.102,-25.346,-24.599,-23.935,-23.387,-22.927,-22.510,-22.098,-21.665,-21.203,-20.737,-20.301,-19.893,-19.484,
--19.059,-18.640,-18.253,-17.891,-17.535,-17.169,-16.774,-16.326,-15.825,-15.316,-14.839,-14.378,-13.881,-13.335,-12.785,-12.277,
--11.804,-11.324,-10.814,-10.280,-9.733,-9.178,-8.608,-8.003,-7.348,-6.644,-5.911,-5.163,-4.393,-3.607,-2.832,-2.079,
--1.304,-.458,.444,1.328,2.152,2.953,3.786,4.650,5.513,6.359,7.194,8.004,8.762,9.473,10.175,10.887,
-11.583,12.229,12.821,13.372,13.889,14.375,14.844,15.304,15.744,16.148,16.533,16.928,17.335,17.733,18.121,18.527,
-18.972,19.436,19.895,20.365,20.879,21.438,21.996,22.497,22.913,23.246,23.510,23.730,23.942,24.174,24.439,24.744,
-25.096,25.478,25.835,26.107,26.290,26.442,26.620,26.811,26.950,26.985,26.914,26.772,26.596,26.428,26.306,26.247,
-26.225,26.217,26.230,26.273,26.298,26.237,26.107,26.072,26.348,27.065,28.214,29.684,31.264,32.624,33.417,33.509,
-33.144,32.810,32.903,33.473,34.255,34.877,35.058,34.693,33.856,32.770,31.733,31.019,30.752,30.851,31.072,31.157,
-30.993,30.639,30.234,29.875,29.575,29.309,29.059,28.822,28.613,28.450,28.331,28.223,28.088,27.920,27.752,27.611,
-27.488,27.354,27.203,27.050,26.884,26.668,26.398,26.148,26.040,26.135,26.365,26.575,26.658,26.628,26.586,26.616,
-26.731,26.893,27.066,27.251,27.498,27.888,28.441,29.035,29.460,29.637,29.714,29.888,30.117,30.138,29.813,29.319,
-28.934,28.784,28.868,28.925,28.781,28.493,28.174,27.827,27.420,26.985,26.547,26.033,25.380,24.710,24.258,24.115,
-24.116,24.057,23.913,23.786,23.700,23.563,23.334,23.107,22.993,22.984,22.999,23.009,23.073,23.272,23.690,24.415,
-25.434,26.501,27.205,27.314,27.007,26.671,26.454,26.124,25.430,24.494,23.736,23.436,23.460,23.431,23.076,22.397,
-21.592,20.890,20.417,20.106,19.755,19.222,18.580,18.028,17.657,17.362,17.004,16.591,16.238,16.005,15.856,15.747,
-15.677,15.640,15.582,15.447,15.209,14.862,14.407,13.892,13.437,13.146,13.005,12.906,12.773,12.621,12.476,12.290,
-11.995,11.616,11.286,11.120,11.094,11.082,10.994,10.861,10.792,10.869,11.092,11.392,11.691,11.944,12.162,12.375,
-12.565,12.636,12.501,12.200,11.891,11.711,11.652,11.610,11.518,11.384,11.215,10.961,10.584,10.129,9.707,9.401,
-9.201,9.017,8.749,8.373,7.984,7.716,7.603,7.538,7.400,7.191,6.994,6.825,6.613,6.344,6.124,6.067,
-6.136,6.167,6.019,5.674,5.230,4.837,4.623,4.597,4.638,4.608,4.489,4.356,4.236,4.089,3.946,3.957,
-4.199,4.485,4.465,3.950,3.085,2.194,1.518,1.076,.704,.216,-.406,-.936,-1.094,-.876,-.644,-.779,
--1.264,-1.719,-1.873,-1.850,-1.908,-1.989,-1.740,-.987,-.041,.598,.728,.507,.070,-.697,-1.944,-3.540,
--5.152,-6.589,-7.934,-9.322,-10.733,-12.067,-13.292,-14.441,-15.496,-16.413,-17.237,-18.097,-19.074,-20.134,-21.206,-22.262,
--23.290,-24.259,-25.136,-25.900,-26.522,-26.988,-27.373,-27.806,-28.306,-28.728,-28.946,-29.042,-29.209,-29.489,-29.746,-29.908,
--30.138,-30.690,-31.644,-32.828,-33.942,-34.726,-35.100,-35.199,-35.251,-35.346,-35.401,-35.354,-35.304,-35.343,-35.356,-35.157,
--34.823,-34.681,-34.924,-35.400,-35.917,-36.594,-37.712,-39.277,-40.917,-42.219,-43.027,-43.416,-43.582,-43.897,-44.877,-46.839,
--49.474,-51.896,-53.243,-53.313,-52.646,-52.024,-51.862,-52.038,-52.236,-52.373,-52.633,-53.146,-53.779,-54.322,-54.781,-55.336,
--56.056,-56.791,-57.398,-57.941,-58.600,-59.466,-60.498,-61.620,-62.722,-63.608,-64.096,-64.208,-64.197,-64.326,-64.686,-65.225,
--65.896,-66.683,-67.548,-68.444,-69.343,-70.173,-70.738,-70.804,-70.342,-69.630,-69.078,-68.951,-69.248,-69.776,-70.291,-70.674,
--71.053,-71.713,-72.750,-73.808,-74.315,-74.058,-73.435,-73.048,-73.116,-73.410,-73.664,-73.862,-74.065,-74.187,-74.092,-73.837,
--73.635,-73.600,-73.673,-73.778,-73.921,-74.083,-74.144,-74.037,-73.872,-73.827,-73.936,-74.095,-74.240,-74.406,-74.599,-74.731,
--74.710,-74.537,-74.282,-74.009,-73.730,-73.357,-72.661,-71.443,-69.861,-68.514,-68.016,-68.426,-69.208,-69.800,-70.133,-70.545,
--71.302,-72.340,-73.410,-74.290,-74.814,-74.811,-74.192,-73.112,-71.966,-71.123,-70.677,-70.426,-70.116,-69.651,-69.102,-68.546,
--67.982,-67.396,-66.841,-66.371,-65.900,-65.236,-64.287,-63.187,-62.171,-61.347,-60.675,-60.111,-59.703,-59.483,-59.394,-59.350,
--59.328,-59.285,-59.070,-58.517,-57.632,-56.523,-55.141,-53.300,-51.117,-49.278,-48.549,-48.949,-49.614,-49.637,-48.882,-47.860,
--46.964,-46.117,-45.152,-44.202,-43.502,-42.996,-42.379,-41.519,-40.634,-40.014,-39.688,-39.442,-39.066,-38.520,-37.895,-37.287,
--36.696,-36.036,-35.249,-34.432,-33.788,-33.421,-33.217,-32.974,-32.625,-32.276,-32.053,-31.968,-31.906,-31.695,-31.174,-30.273,
--29.065,-27.696,-26.283,-24.909,-23.705,-22.825,-22.287,-21.907,-21.476,-20.948,-20.401,-19.840,-19.153,-18.275,-17.294,-16.345,
--15.461,-14.598,-13.744,-12.918,-12.085,-11.151,-10.084,-8.977,-7.973,-7.174,-6.617,-6.275,-6.007,-5.565,-4.782,-3.757,
--2.761,-1.909,-1.028,.075,1.309,2.409,3.302,4.196,5.259,6.405,7.473,8.483,9.538,10.606,11.587,12.568,
-13.745,15.087,16.323,17.338,18.360,19.569,20.740,21.548,22.072,22.684,23.467,24.119,24.526,25.159,26.662,29.197,
-32.298,35.199,37.174,37.856,37.570,37.176,37.177,37.022,35.754,33.444,31.483,31.154,32.254,33.541,34.281,34.808,
-35.629,36.599,37.252,37.534,37.782,38.170,38.548,38.805,39.035,39.294,39.470,39.507,39.575,39.852,40.261,40.562,
-40.669,40.713,40.814,40.928,40.943,40.856,40.777,40.801,40.920,41.054,41.158,41.260,41.412,41.597,41.735,41.790,
-41.830,41.934,42.083,42.202,42.303,42.488,42.787,43.076,43.235,43.336,43.591,44.083,44.664,45.132,45.468,45.799,
-46.185,46.539,46.778,46.968,47.222,47.537,47.818,48.065,48.388,48.799,49.115,49.179,49.108,49.176,49.469,49.797,
-49.968,50.008,50.032,50.038,49.956,49.814,49.721,49.723,49.825,50.112,50.664,51.305,51.644,51.497,51.139,50.953,
-50.924,50.697,50.105,49.371,48.656,47.638,45.811,43.224,40.656,38.885,37.824,36.589,34.541,32.183,30.876,31.555,
-33.812,36.322,38.070,39.012,39.600,40.023,40.161,40.060,40.075,40.412,40.781,40.681,39.950,38.877,37.862,37.094,
-36.531,36.048,35.547,35.024,34.565,34.228,33.940,33.572,33.121,32.724,32.456,32.204,31.807,31.248,30.637,30.051,
-29.492,28.954,28.452,27.967,27.446,26.872,26.276,25.688,25.121,24.616,24.234,23.989,23.835,23.726,23.608,23.378,
-22.951,22.429,22.068,21.985,21.992,21.829,21.498,21.197,20.991,20.752,20.457,20.292,20.333,20.318,19.951,19.327,
-18.848,18.726,18.769,18.703,18.481,18.207,17.911,17.572,17.267,17.122,17.126,17.110,16.932,16.575,16.094,15.554,
-15.047,14.642,14.283,13.817,13.192,12.558,12.124,12.009,12.272,12.948,13.903,14.697,14.830,14.188,13.154,12.195,
-11.437,10.744,10.090,9.672,9.627,9.791,9.848,9.655,9.346,9.119,9.019,8.929,8.733,8.420,8.059,7.727,
-7.469,7.288,7.146,7.000,6.858,6.792,6.846,6.936,6.901,6.668,6.341,6.098,6.011,6.015,6.024,6.026,
-6.064,6.164,6.300,6.399,6.384,6.236,6.038,5.915,5.913,5.982,6.091,6.301,6.658,7.079,7.434,7.735,
-8.115,8.602,9.030,9.240,9.285,9.334,9.413,9.372,9.119,8.771,8.529,8.462,8.488,8.526,8.590,8.725,
-8.885,8.932,8.766,8.484,8.358,8.584,9.029,9.335,9.312,9.150,9.144,9.293,9.350,9.225,9.144,9.298,
-9.528,9.519,9.234,8.938,8.811,8.733,8.531,8.248,8.040,7.921,7.779,7.599,7.501,7.540,7.616,7.619,
-7.564,7.504,7.413,7.242,7.022,6.839,6.720,6.644,6.634,6.741,6.937,7.105,7.163,7.134,7.083,7.044,
-7.036,7.081,7.161,7.221,7.241,7.263,7.284,7.212,6.979,6.646,6.298,5.895,5.361,4.781,4.341,4.040,
-3.627,2.918,2.045,1.267,.649,.080,-.457,-.842,-1.048,-1.226,-1.499,-1.819,-2.108,-2.414,-2.801,-3.208,
--3.544,-3.860,-4.274,-4.761,-5.165,-5.439,-5.712,-6.077,-6.460,-6.763,-7.027,-7.346,-7.699,-8.003,-8.256,-8.526,
--8.827,-9.115,-9.397,-9.742,-10.149,-10.539,-10.881,-11.257,-11.729,-12.250,-12.745,-13.222,-13.720,-14.209,-14.629,-14.992,
--15.367,-15.783,-16.219,-16.677,-17.184,-17.712,-18.189,-18.597,-18.989,-19.400,-19.801,-20.179,-20.590,-21.074,-21.580,-22.030,
--22.423,-22.801,-23.164,-23.489,-23.798,-24.144,-24.527,-24.902,-25.271,-25.682,-26.145,-26.604,-27.033,-27.496,-28.041,-28.612,
--29.108,-29.507,-29.874,-30.269,-30.709,-31.200,-31.744,-32.311,-32.844,-33.320,-33.752,-34.151,-34.521,-34.896,-35.326,-35.813,
--36.301,-36.746,-37.155,-37.540,-37.885,-38.189,-38.490,-38.813,-39.122,-39.374,-39.600,-39.871,-40.209,-40.567,-40.901,-41.205,
--41.488,-41.764,-42.050,-42.348,-42.618,-42.826,-43.002,-43.209,-43.443,-43.645,-43.814,-44.028,-44.324,-44.634,-44.885,-45.110,
--45.375,-45.647,-45.843,-45.963,-46.084,-46.234,-46.365,-46.477,-46.633,-46.837,-46.998,-47.057,-47.073,-47.103,-47.088,-46.961,
--46.788,-46.688,-46.640,-46.512,-46.281,-46.072,-45.959,-45.840,-45.598,-45.284,-45.027,-44.853,-44.675,-44.450,-44.224,-44.020,
--43.774,-43.416,-42.949,-42.443,-41.973,-41.585,-41.269,-40.950,-40.550,-40.079,-39.617,-39.184,-38.708,-38.137,-37.536,-37.005,
--36.546,-36.084,-35.601,-35.159,-34.785,-34.410,-33.955,-33.441,-32.964,-32.565,-32.167,-31.669,-31.083,-30.560,-30.235,-30.052,
--29.781,-29.247,-28.493,-27.696,-26.952,-26.228,-25.493,-24.813,-24.280,-23.951,-23.866,-24.027,-24.287,-24.332,-23.884,-22.892,
--21.470,-19.725,-17.790,-15.980,-14.706,-14.094,-13.801,-13.322,-12.465,-11.455,-10.607,-9.992,-9.434,-8.790,-8.170,-7.848,
--7.916,-8.089,-7.940,-7.365,-6.655,-6.054,-5.448,-4.698,-4.121,-4.307,-5.419,-7.010,-8.639,-10.313,-12.030,-13.193,
--13.038,-11.692,-10.339,-10.106,-10.987,-12.099,-12.725,-12.816,-12.620,-12.256,-11.773,-11.318,-11.032,-10.873,-10.688,-10.383,
--9.944,-9.391,-8.820,-8.420,-8.290,-8.259,-8.033,-7.542,-7.022,-6.707,-6.576,-6.486,-6.469,-6.740,-7.405,-8.283,
--9.101,-9.782,-10.441,-11.100,-11.548,-11.604,-11.429,-11.435,-11.814,-12.308,-12.531,-12.428,-12.247,-12.145,-12.051,-11.930,
--11.938,-12.136,-12.241,-11.931,-11.341,-10.999,-11.211,-11.731,-12.147,-12.392,-12.717,-13.272,-13.942,-14.551,-15.053,-15.486,
--15.890,-16.330,-16.848,-17.320,-17.457,-17.065,-16.255,-15.360,-14.700,-14.517,-15.004,-16.201,-17.846,-19.463,-20.692,-21.492,
--22.035,-22.494,-22.965,-23.461,-23.882,-24.057,-23.942,-23.743,-23.744,-24.038,-24.535,-25.190,-26.030,-26.900,-27.403,-27.344,
--27.180,-27.777,-29.553,-31.973,-34.031,-35.211,-35.867,-36.656,-37.762,-38.800,-39.428,-39.871,-40.707,-42.173,-43.817,-44.889,
--45.041,-44.543,-43.855,-43.146,-42.354,-41.583,-41.229,-41.611,-42.586,-43.656,-44.419,-44.855,-45.219,-45.765,-46.527,-47.212,
--47.321,-46.601,-45.554,-45.308,-46.698,-49.452,-52.481,-55.016,-57.185,-59.384,-61.374,-62.370,-61.934,-60.434,-58.528,-56.537,
--54.509,-52.647,-51.293,-50.512,-49.980,-49.387,-48.754,-48.255,-47.899,-47.557,-47.186,-46.845,-46.525,-46.130,-45.651,-45.216,
--44.896,-44.582,-44.130,-43.556,-42.984,-42.463,-41.940,-41.404,-40.964,-40.726,-40.644,-40.547,-40.297,-39.894,-39.446,-39.050,
--38.705,-38.330,-37.861,-37.318,-36.769,-36.244,-35.708,-35.125,-34.489,-33.807,-33.086,-32.366,-31.699,-31.075,-30.394,-29.575,
--28.680,-27.862,-27.184,-26.549,-25.825,-25.019,-24.269,-23.701,-23.317,-23.007,-22.642,-22.161,-21.608,-21.084,-20.653,-20.285,
--19.913,-19.514,-19.117,-18.746,-18.391,-18.040,-17.687,-17.304,-16.846,-16.313,-15.769,-15.269,-14.795,-14.293,-13.755,-13.230,
--12.742,-12.264,-11.756,-11.217,-10.668,-10.122,-9.577,-9.014,-8.402,-7.712,-6.957,-6.189,-5.437,-4.685,-3.911,-3.131,
--2.361,-1.574,-.728,.157,1.015,1.819,2.608,3.423,4.254,5.082,5.918,6.768,7.595,8.358,9.075,9.796,
-10.527,11.226,11.871,12.483,13.078,13.638,14.154,14.648,15.136,15.593,15.999,16.387,16.807,17.252,17.682,18.092,
-18.523,18.988,19.440,19.848,20.255,20.734,21.297,21.883,22.419,22.867,23.226,23.523,23.800,24.080,24.345,24.561,
-24.754,25.001,25.337,25.688,25.940,26.063,26.141,26.278,26.493,26.718,26.860,26.858,26.715,26.504,26.332,26.261,
-26.253,26.239,26.217,26.245,26.333,26.395,26.356,26.275,26.309,26.589,27.188,28.176,29.580,31.196,32.548,33.181,
-33.054,32.597,32.342,32.550,33.153,33.929,34.626,34.963,34.700,33.805,32.538,31.324,30.511,30.211,30.292,30.479,
-30.515,30.306,29.939,29.569,29.272,29.037,28.838,28.674,28.539,28.402,28.256,28.132,28.049,27.974,27.859,27.713,
-27.584,27.490,27.399,27.283,27.147,26.998,26.814,26.590,26.402,26.358,26.476,26.651,26.760,26.781,26.776,26.785,
-26.802,26.829,26.915,27.088,27.323,27.612,28.021,28.579,29.129,29.416,29.388,29.296,29.396,29.612,29.627,29.319,
-28.980,28.621,28.445,28.404,28.284,28.010,27.675,27.329,26.929,26.493,26.135,25.865,25.512,24.945,24.309,23.883,
-23.756,23.751,23.682,23.548,23.438,23.359,23.248,23.106,22.998,22.946,22.905,22.855,22.839,22.903,23.080,23.470,
-24.230,25.355,26.492,27.127,27.037,26.506,26.008,25.717,25.402,24.803,23.995,23.304,22.949,22.847,22.750,22.478,
-21.997,21.386,20.796,20.362,20.076,19.763,19.258,18.602,18.005,17.581,17.234,16.805,16.294,15.832,15.516,15.331,
-15.226,15.173,15.134,15.046,14.868,14.604,14.243,13.749,13.151,12.609,12.299,12.226,12.230,12.170,12.052,11.944,
-11.837,11.655,11.388,11.131,10.981,10.938,10.937,10.941,10.974,11.068,11.228,11.439,11.688,11.950,12.194,12.412,
-12.617,12.782,12.805,12.594,12.194,11.788,11.534,11.432,11.361,11.235,11.060,10.863,10.616,10.261,9.807,9.354,
-9.032,8.884,8.817,8.664,8.344,7.956,7.673,7.549,7.460,7.265,6.973,6.691,6.456,6.205,5.920,5.697,
-5.635,5.699,5.741,5.630,5.339,4.935,4.551,4.330,4.312,4.380,4.367,4.211,3.980,3.755,3.568,3.460,
-3.506,3.689,3.809,3.604,2.987,2.136,1.347,.807,.495,.232,-.165,-.720,-1.238,-1.466,-1.348,-1.120,
--1.096,-1.383,-1.804,-2.125,-2.272,-2.328,-2.348,-2.268,-2.002,-1.577,-1.115,-.715,-.441,-.433,-.919,-2.017,
--3.549,-5.153,-6.590,-7.881,-9.151,-10.433,-11.690,-12.908,-14.086,-15.165,-16.089,-16.925,-17.825,-18.858,-19.944,-20.983,
--21.959,-22.897,-23.785,-24.592,-25.308,-25.905,-26.332,-26.600,-26.825,-27.105,-27.397,-27.599,-27.731,-27.920,-28.223,-28.570,
--28.915,-29.354,-30.034,-30.981,-32.067,-33.090,-33.859,-34.285,-34.441,-34.480,-34.465,-34.364,-34.230,-34.263,-34.543,-34.823,
--34.795,-34.544,-34.497,-34.901,-35.560,-36.223,-37.015,-38.241,-39.878,-41.498,-42.692,-43.369,-43.653,-43.770,-44.160,-45.408,
--47.753,-50.638,-52.977,-53.999,-53.802,-53.113,-52.617,-52.530,-52.691,-52.901,-53.128,-53.459,-53.931,-54.460,-54.951,-55.431,
--55.997,-56.662,-57.328,-57.917,-58.480,-59.132,-59.948,-60.960,-62.168,-63.473,-64.625,-65.362,-65.639,-65.669,-65.715,-65.902,
--66.248,-66.766,-67.450,-68.216,-68.966,-69.718,-70.558,-71.416,-71.990,-71.989,-71.455,-70.786,-70.406,-70.444,-70.711,-70.964,
--71.170,-71.568,-72.433,-73.727,-74.969,-75.556,-75.293,-74.579,-74.023,-73.902,-74.072,-74.316,-74.598,-74.929,-75.167,-75.143,
--74.901,-74.673,-74.599,-74.614,-74.634,-74.694,-74.822,-74.906,-74.827,-74.662,-74.624,-74.796,-75.037,-75.185,-75.234,-75.274,
--75.333,-75.360,-75.312,-75.188,-74.971,-74.588,-73.935,-72.957,-71.740,-70.563,-69.796,-69.641,-69.963,-70.434,-70.866,-71.353,
--72.082,-73.085,-74.212,-75.270,-76.078,-76.432,-76.139,-75.197,-73.910,-72.737,-71.978,-71.583,-71.266,-70.789,-70.149,-69.500,
--68.947,-68.448,-67.900,-67.271,-66.600,-65.894,-65.089,-64.135,-63.089,-62.084,-61.220,-60.518,-59.965,-59.562,-59.315,-59.211,
--59.214,-59.272,-59.289,-59.133,-58.736,-58.153,-57.430,-56.412,-54.845,-52.801,-50.910,-49.918,-49.931,-50.244,-50.029,-49.117,
--47.967,-46.988,-46.153,-45.278,-44.406,-43.710,-43.149,-42.470,-41.563,-40.636,-39.966,-39.583,-39.291,-38.909,-38.409,-37.844,
--37.238,-36.571,-35.828,-35.049,-34.321,-33.725,-33.260,-32.858,-32.481,-32.182,-32.024,-31.976,-31.907,-31.701,-31.314,-30.742,
--29.982,-29.014,-27.805,-26.350,-24.756,-23.286,-22.212,-21.587,-21.199,-20.808,-20.357,-19.921,-19.484,-18.899,-18.066,-17.060,
--16.043,-15.106,-14.245,-13.430,-12.626,-11.751,-10.725,-9.580,-8.483,-7.614,-7.031,-6.659,-6.365,-5.996,-5.411,-4.560,
--3.548,-2.532,-1.534,-.426,.835,2.072,3.083,3.937,4.901,6.082,7.294,8.343,9.283,10.261,11.279,12.282,
-13.368,14.661,16.008,17.113,17.980,18.963,20.210,21.383,22.140,22.669,23.386,24.258,24.882,25.249,26.016,27.817,
-30.586,33.691,36.458,38.355,39.063,38.772,38.190,37.767,37.027,35.234,32.756,31.144,31.476,33.107,34.523,35.112,
-35.516,36.370,37.422,38.095,38.355,38.611,39.034,39.422,39.628,39.742,39.846,39.898,39.925,40.092,40.453,40.822,
-41.007,41.061,41.163,41.346,41.478,41.476,41.408,41.381,41.420,41.484,41.548,41.642,41.812,42.050,42.262,42.337,
-42.281,42.226,42.283,42.422,42.555,42.701,42.945,43.257,43.485,43.582,43.725,44.113,44.692,45.210,45.526,45.750,
-46.058,46.449,46.795,47.047,47.290,47.578,47.846,48.042,48.268,48.654,49.113,49.371,49.314,49.185,49.312,49.699,
-50.042,50.134,50.085,50.088,50.132,50.090,49.968,49.899,49.941,50.076,50.372,50.920,51.560,51.887,51.714,51.347,
-51.219,51.314,51.211,50.676,49.936,49.225,48.286,46.616,44.180,41.648,39.744,38.434,36.946,34.686,32.112,30.533,
-30.938,33.054,35.651,37.691,39.007,39.909,40.511,40.750,40.858,41.322,42.223,42.930,42.708,41.497,39.902,38.538,
-37.612,37.079,36.838,36.677,36.275,35.483,34.542,33.835,33.466,33.217,32.877,32.468,32.110,31.809,31.466,31.014,
-30.479,29.925,29.394,28.889,28.384,27.857,27.317,26.797,26.316,25.884,25.538,25.302,25.122,24.902,24.621,24.353,
-24.110,23.770,23.261,22.733,22.413,22.301,22.159,21.833,21.452,21.216,21.129,21.056,20.953,20.875,20.789,20.551,
-20.105,19.596,19.194,18.905,18.618,18.294,17.993,17.761,17.584,17.457,17.419,17.477,17.535,17.440,17.098,16.544,
-15.923,15.385,14.971,14.602,14.187,13.716,13.229,12.766,12.422,12.426,12.970,13.880,14.570,14.520,13.778,12.896,
-12.334,12.047,11.709,11.187,10.674,10.379,10.252,10.083,9.778,9.441,9.209,9.087,8.968,8.770,8.505,8.237,
-8.013,7.840,7.693,7.517,7.275,7.019,6.889,6.977,7.178,7.257,7.078,6.752,6.490,6.380,6.332,6.235,
-6.085,5.956,5.908,5.951,6.046,6.120,6.115,6.055,6.030,6.094,6.209,6.331,6.506,6.813,7.252,7.750,
-8.257,8.751,9.154,9.342,9.300,9.180,9.123,9.087,8.930,8.637,8.362,8.255,8.311,8.435,8.571,8.724,
-8.895,9.031,9.041,8.868,8.588,8.411,8.507,8.791,8.994,9.012,9.070,9.395,9.811,9.866,9.421,8.890,
-8.766,9.053,9.327,9.300,9.083,8.897,8.758,8.555,8.297,8.098,7.982,7.860,7.707,7.615,7.642,7.718,
-7.741,7.696,7.607,7.462,7.246,7.013,6.836,6.712,6.597,6.511,6.525,6.649,6.800,6.895,6.924,6.902,
-6.844,6.793,6.812,6.897,6.946,6.895,6.818,6.817,6.843,6.736,6.428,6.014,5.600,5.169,4.657,4.067,
-3.458,2.866,2.304,1.795,1.324,.821,.267,-.226,-.524,-.671,-.855,-1.181,-1.578,-1.952,-2.314,-2.707,
--3.089,-3.416,-3.748,-4.163,-4.610,-4.964,-5.222,-5.514,-5.902,-6.296,-6.612,-6.895,-7.225,-7.577,-7.880,-8.142,
--8.425,-8.723,-8.989,-9.242,-9.562,-9.956,-10.345,-10.694,-11.073,-11.543,-12.059,-12.551,-13.019,-13.499,-13.972,-14.389,
--14.757,-15.129,-15.526,-15.943,-16.401,-16.921,-17.462,-17.949,-18.368,-18.780,-19.211,-19.623,-19.997,-20.390,-20.855,-21.359,
--21.834,-22.259,-22.651,-23.008,-23.319,-23.621,-23.968,-24.357,-24.745,-25.129,-25.546,-25.997,-26.438,-26.860,-27.312,-27.817,
--28.323,-28.769,-29.168,-29.562,-29.960,-30.364,-30.817,-31.364,-31.976,-32.565,-33.077,-33.522,-33.926,-34.308,-34.705,-35.152,
--35.638,-36.110,-36.545,-36.970,-37.395,-37.783,-38.106,-38.399,-38.700,-39.000,-39.274,-39.540,-39.834,-40.159,-40.485,-40.802,
--41.115,-41.409,-41.669,-41.921,-42.191,-42.456,-42.676,-42.876,-43.121,-43.415,-43.684,-43.898,-44.114,-44.369,-44.616,-44.818,
--45.033,-45.312,-45.586,-45.748,-45.819,-45.921,-46.101,-46.291,-46.442,-46.589,-46.741,-46.824,-46.805,-46.768,-46.787,-46.811,
--46.757,-46.655,-46.584,-46.515,-46.344,-46.082,-45.870,-45.771,-45.679,-45.477,-45.206,-44.966,-44.761,-44.526,-44.265,-44.044,
--43.865,-43.637,-43.293,-42.863,-42.420,-41.998,-41.604,-41.230,-40.844,-40.411,-39.943,-39.489,-39.055,-38.585,-38.045,-37.488,
--36.980,-36.514,-36.041,-35.562,-35.127,-34.739,-34.336,-33.863,-33.349,-32.871,-32.467,-32.096,-31.666,-31.137,-30.587,-30.159,
--29.890,-29.630,-29.173,-28.464,-27.634,-26.834,-26.108,-25.419,-24.737,-24.062,-23.446,-23.017,-22.910,-23.118,-23.433,-23.590,
--23.410,-22.787,-21.638,-20.035,-18.330,-16.966,-16.072,-15.327,-14.294,-12.839,-11.191,-9.678,-8.504,-7.711,-7.255,-7.057,
--7.010,-6.951,-6.696,-6.203,-5.691,-5.425,-5.318,-4.935,-4.101,-3.339,-3.406,-4.419,-5.795,-7.095,-8.540,-10.381,
--12.111,-12.834,-12.377,-11.594,-11.410,-11.894,-12.471,-12.735,-12.716,-12.524,-12.151,-11.653,-11.244,-11.037,-10.886,-10.582,
--10.093,-9.515,-8.922,-8.386,-8.023,-7.862,-7.710,-7.351,-6.843,-6.472,-6.379,-6.379,-6.263,-6.139,-6.356,-7.101,
--8.185,-9.245,-10.058,-10.616,-10.969,-11.106,-11.039,-10.913,-10.937,-11.172,-11.461,-11.631,-11.698,-11.792,-11.944,-12.084,
--12.240,-12.550,-12.969,-13.122,-12.676,-11.812,-11.119,-10.984,-11.238,-11.475,-11.566,-11.717,-12.137,-12.820,-13.621,-14.384,
--14.964,-15.277,-15.400,-15.539,-15.805,-16.077,-16.112,-15.768,-15.111,-14.386,-13.953,-14.143,-15.042,-16.406,-17.836,-19.063,
--20.030,-20.786,-21.423,-22.086,-22.868,-23.654,-24.208,-24.506,-24.847,-25.506,-26.388,-27.214,-27.965,-28.842,-29.713,-29.985,
--29.335,-28.464,-28.713,-30.737,-33.755,-36.269,-37.469,-37.789,-38.171,-39.026,-40.026,-40.749,-41.289,-42.133,-43.485,-44.855,
--45.442,-44.939,-43.853,-42.949,-42.476,-42.098,-41.585,-41.276,-41.688,-42.806,-44.023,-44.781,-45.061,-45.195,-45.404,-45.636,
--45.685,-45.314,-44.435,-43.392,-42.948,-43.675,-45.347,-47.241,-49.142,-51.659,-55.252,-59.183,-61.905,-62.507,-61.434,-59.706,
--57.849,-55.840,-53.765,-52.031,-50.897,-50.176,-49.541,-48.916,-48.410,-48.035,-47.690,-47.337,-47.013,-46.698,-46.313,-45.872,
--45.491,-45.212,-44.923,-44.510,-43.993,-43.460,-42.927,-42.359,-41.785,-41.308,-41.001,-40.823,-40.665,-40.433,-40.103,-39.726,
--39.372,-39.049,-38.682,-38.192,-37.599,-36.996,-36.443,-35.924,-35.396,-34.830,-34.192,-33.452,-32.651,-31.902,-31.254,-30.611,
--29.837,-28.949,-28.106,-27.419,-26.815,-26.145,-25.370,-24.612,-24.029,-23.666,-23.416,-23.108,-22.639,-22.061,-21.513,-21.084,
--20.738,-20.393,-20.023,-19.653,-19.288,-18.903,-18.494,-18.084,-17.666,-17.194,-16.657,-16.112,-15.613,-15.144,-14.659,-14.154,
--13.661,-13.180,-12.675,-12.130,-11.566,-11.008,-10.452,-9.886,-9.299,-8.659,-7.935,-7.144,-6.354,-5.611,-4.891,-4.151,
--3.391,-2.633,-1.855,-1.022,-.146,.712,1.524,2.319,3.123,3.926,4.726,5.545,6.383,7.200,7.968,8.716,
-9.477,10.221,10.902,11.539,12.186,12.841,13.439,13.953,14.432,14.919,15.385,15.795,16.186,16.615,17.081,17.542,
-17.992,18.458,18.924,19.338,19.697,20.083,20.575,21.169,21.805,22.428,22.976,23.379,23.628,23.829,24.098,24.427,
-24.693,24.837,24.951,25.154,25.430,25.660,25.783,25.855,25.968,26.153,26.381,26.587,26.681,26.598,26.384,26.192,
-26.140,26.193,26.239,26.250,26.296,26.402,26.482,26.479,26.472,26.599,26.920,27.469,28.367,29.707,31.254,32.433,
-32.799,32.486,32.071,32.019,32.356,32.896,33.541,34.223,34.679,34.517,33.589,32.193,30.850,29.936,29.525,29.466,
-29.518,29.463,29.224,28.895,28.628,28.474,28.380,28.314,28.298,28.326,28.315,28.203,28.037,27.912,27.839,27.750,
-27.610,27.470,27.388,27.350,27.307,27.241,27.153,27.029,26.863,26.714,26.671,26.742,26.833,26.867,26.875,26.927,
-27.013,27.059,27.062,27.124,27.316,27.592,27.883,28.219,28.631,28.990,29.090,28.935,28.812,28.954,29.221,29.265,
-28.980,28.721,28.396,28.178,28.002,27.725,27.358,26.999,26.647,26.232,25.800,25.486,25.274,24.958,24.430,23.864,
-23.519,23.423,23.396,23.319,23.232,23.179,23.108,22.989,22.897,22.897,22.916,22.834,22.673,22.572,22.613,22.790,
-23.163,23.897,25.004,26.138,26.772,26.666,26.073,25.452,25.028,24.677,24.199,23.586,22.996,22.551,22.249,22.019,
-21.789,21.483,21.053,20.563,20.159,19.902,19.649,19.197,18.528,17.833,17.281,16.842,16.397,15.926,15.514,15.218,
-15.010,14.859,14.761,14.686,14.557,14.330,14.017,13.620,13.085,12.425,11.811,11.458,11.403,11.466,11.470,11.416,
-11.397,11.422,11.388,11.227,10.998,10.818,10.761,10.839,11.036,11.312,11.592,11.812,11.984,12.169,12.388,12.599,
-12.760,12.877,12.945,12.880,12.592,12.124,11.669,11.398,11.298,11.222,11.066,10.850,10.624,10.364,9.997,9.516,
-9.035,8.708,8.591,8.584,8.507,8.266,7.944,7.688,7.533,7.365,7.084,6.727,6.407,6.150,5.896,5.625,
-5.409,5.312,5.293,5.257,5.142,4.940,4.661,4.347,4.091,3.972,3.962,3.940,3.813,3.587,3.336,3.146,
-3.090,3.176,3.282,3.183,2.710,1.910,1.029,.342,-.025,-.149,-.241,-.493,-.932,-1.398,-1.678,-1.689,
--1.534,-1.416,-1.502,-1.820,-2.244,-2.582,-2.724,-2.726,-2.729,-2.793,-2.826,-2.681,-2.306,-1.821,-1.502,-1.653,
--2.417,-3.668,-5.110,-6.513,-7.824,-9.066,-10.229,-11.323,-12.429,-13.593,-14.723,-15.696,-16.553,-17.481,-18.568,-19.698,
--20.716,-21.597,-22.411,-23.188,-23.924,-24.620,-25.234,-25.644,-25.776,-25.740,-25.750,-25.896,-26.100,-26.294,-26.526,-26.869,
--27.314,-27.825,-28.425,-29.175,-30.093,-31.115,-32.100,-32.856,-33.242,-33.289,-33.176,-33.062,-33.013,-33.126,-33.542,-34.205,
--34.749,-34.867,-34.749,-34.909,-35.554,-36.370,-37.045,-37.753,-38.873,-40.408,-41.924,-43.022,-43.613,-43.792,-43.794,-44.167,
--45.610,-48.286,-51.376,-53.630,-54.413,-54.108,-53.539,-53.208,-53.145,-53.238,-53.458,-53.806,-54.232,-54.678,-55.141,-55.650,
--56.215,-56.820,-57.442,-58.064,-58.675,-59.274,-59.880,-60.554,-61.410,-62.536,-63.876,-65.191,-66.207,-66.812,-67.089,-67.187,
--67.224,-67.329,-67.656,-68.264,-69.016,-69.704,-70.304,-71.013,-71.947,-72.878,-73.371,-73.214,-72.641,-72.096,-71.830,-71.775,
--71.777,-71.866,-72.284,-73.238,-74.614,-75.930,-76.618,-76.462,-75.775,-75.105,-74.773,-74.732,-74.834,-75.061,-75.429,-75.795,
--75.939,-75.838,-75.695,-75.667,-75.704,-75.700,-75.678,-75.713,-75.755,-75.688,-75.553,-75.543,-75.750,-76.033,-76.200,-76.228,
--76.225,-76.231,-76.184,-76.036,-75.808,-75.476,-74.920,-74.053,-72.993,-72.040,-71.463,-71.301,-71.387,-71.553,-71.807,-72.294,
--73.103,-74.139,-75.207,-76.174,-76.995,-77.572,-77.691,-77.166,-76.066,-74.748,-73.626,-72.885,-72.403,-71.927,-71.313,-70.616,
--69.971,-69.430,-68.918,-68.321,-67.592,-66.764,-65.888,-64.983,-64.040,-63.059,-62.086,-61.216,-60.528,-60.027,-59.656,-59.381,
--59.232,-59.239,-59.342,-59.402,-59.317,-59.111,-58.855,-58.487,-57.735,-56.336,-54.390,-52.485,-51.281,-50.913,-50.836,-50.366,
--49.335,-48.120,-47.105,-46.297,-45.514,-44.720,-44.011,-43.348,-42.541,-41.529,-40.527,-39.796,-39.365,-39.058,-38.719,-38.312,
--37.833,-37.235,-36.488,-35.649,-34.836,-34.134,-33.546,-33.028,-32.557,-32.178,-31.952,-31.858,-31.769,-31.538,-31.121,-30.592,
--30.048,-29.500,-28.839,-27.888,-26.530,-24.861,-23.203,-21.894,-21.039,-20.490,-20.060,-19.697,-19.407,-19.102,-18.609,-17.842,
--16.876,-15.849,-14.843,-13.881,-12.972,-12.092,-11.160,-10.103,-8.986,-8.015,-7.371,-7.036,-6.796,-6.416,-5.784,-4.920,
--3.903,-2.811,-1.686,-.522,.696,1.908,2.988,3.892,4.771,5.825,7.038,8.192,9.148,10.009,10.925,11.900,
-12.909,14.055,15.398,16.728,17.768,18.610,19.626,20.898,22.053,22.828,23.478,24.332,25.205,25.714,26.051,26.975,
-28.939,31.629,34.456,37.030,38.975,39.791,39.414,38.528,37.774,36.820,34.950,32.549,31.198,31.909,33.851,35.398,
-36.011,36.460,37.385,38.457,39.095,39.348,39.652,40.105,40.437,40.516,40.487,40.472,40.461,40.502,40.708,41.027,
-41.245,41.290,41.352,41.588,41.878,42.016,41.999,41.986,42.047,42.102,42.092,42.074,42.150,42.345,42.595,42.779,
-42.812,42.725,42.659,42.713,42.849,42.995,43.174,43.442,43.730,43.904,43.990,44.208,44.692,45.279,45.700,45.901,
-46.068,46.350,46.706,47.029,47.317,47.620,47.902,48.082,48.213,48.483,48.968,49.458,49.646,49.509,49.383,49.578,
-49.997,50.279,50.249,50.094,50.052,50.109,50.108,50.033,50.002,50.067,50.207,50.498,51.045,51.693,52.033,51.876,
-51.550,51.508,51.731,51.751,51.280,50.525,49.774,48.874,47.386,45.217,42.858,40.871,39.223,37.301,34.694,31.931,
-30.291,30.707,32.877,35.551,37.681,39.107,40.142,40.886,41.293,41.660,42.484,43.681,44.372,43.768,42.069,40.208,
-38.865,38.087,37.739,37.783,37.957,37.642,36.473,34.923,33.881,33.652,33.685,33.340,32.625,32.011,31.742,31.605,
-31.311,30.839,30.357,29.948,29.532,29.014,28.411,27.816,27.304,26.878,26.527,26.276,26.142,26.034,25.798,25.400,
-24.985,24.674,24.378,23.936,23.396,22.982,22.758,22.512,22.086,21.684,21.638,21.925,22.131,21.952,21.518,21.147,
-20.914,20.625,20.148,19.568,19.015,18.504,18.017,17.626,17.426,17.389,17.389,17.366,17.369,17.412,17.372,17.102,
-16.615,16.083,15.636,15.246,14.838,14.446,14.158,13.921,13.553,13.030,12.659,12.797,13.379,13.854,13.722,13.061,
-12.424,12.222,12.325,12.285,11.850,11.183,10.610,10.281,10.088,9.864,9.565,9.267,9.046,8.896,8.767,8.632,
-8.501,8.392,8.300,8.188,7.992,7.673,7.300,7.052,7.066,7.260,7.379,7.257,6.977,6.743,6.636,6.560,
-6.412,6.201,5.996,5.841,5.752,5.731,5.759,5.795,5.846,5.982,6.233,6.518,6.723,6.847,7.006,7.315,
-7.791,8.354,8.857,9.127,9.082,8.838,8.622,8.543,8.497,8.350,8.141,8.021,8.056,8.178,8.323,8.501,
-8.711,8.904,9.036,9.110,9.115,9.019,8.850,8.711,8.628,8.509,8.356,8.420,8.926,9.649,9.993,9.630,
-8.926,8.550,8.751,9.174,9.366,9.245,9.015,8.816,8.625,8.411,8.223,8.089,7.980,7.878,7.825,7.843,
-7.872,7.837,7.726,7.566,7.364,7.131,6.922,6.790,6.713,6.625,6.514,6.442,6.452,6.522,6.604,6.669,
-6.686,6.633,6.554,6.548,6.636,6.700,6.627,6.481,6.421,6.464,6.432,6.171,5.742,5.321,4.964,4.566,
-4.032,3.411,2.831,2.364,1.969,1.545,1.041,.513,.085,-.184,-.380,-.643,-1.016,-1.430,-1.826,-2.224,
--2.637,-3.022,-3.351,-3.679,-4.060,-4.448,-4.767,-5.042,-5.372,-5.781,-6.180,-6.512,-6.825,-7.174,-7.528,-7.832,
--8.104,-8.395,-8.686,-8.927,-9.147,-9.430,-9.792,-10.170,-10.529,-10.915,-11.372,-11.867,-12.349,-12.820,-13.293,-13.744,
--14.144,-14.512,-14.887,-15.272,-15.667,-16.109,-16.632,-17.190,-17.696,-18.132,-18.552,-18.985,-19.399,-19.776,-20.165,-20.613,
--21.097,-21.569,-22.012,-22.428,-22.794,-23.098,-23.385,-23.720,-24.107,-24.507,-24.906,-25.321,-25.746,-26.157,-26.565,-27.008,
--27.478,-27.922,-28.327,-28.745,-29.202,-29.656,-30.079,-30.532,-31.089,-31.726,-32.342,-32.875,-33.344,-33.777,-34.188,-34.602,
--35.046,-35.506,-35.938,-36.340,-36.760,-37.211,-37.637,-37.986,-38.281,-38.571,-38.870,-39.165,-39.464,-39.778,-40.087,-40.377,
--40.669,-40.980,-41.275,-41.517,-41.733,-41.983,-42.263,-42.526,-42.775,-43.064,-43.398,-43.710,-43.964,-44.199,-44.439,-44.639,
--44.780,-44.945,-45.194,-45.449,-45.588,-45.635,-45.736,-45.955,-46.207,-46.403,-46.540,-46.632,-46.640,-46.557,-46.474,-46.475,
--46.525,-46.543,-46.523,-46.500,-46.429,-46.242,-45.979,-45.773,-45.668,-45.563,-45.370,-45.125,-44.894,-44.659,-44.375,-44.085,
--43.858,-43.677,-43.448,-43.133,-42.780,-42.427,-42.054,-41.638,-41.192,-40.738,-40.275,-39.805,-39.344,-38.886,-38.399,-37.879,
--37.368,-36.885,-36.397,-35.882,-35.384,-34.960,-34.595,-34.216,-33.771,-33.273,-32.768,-32.303,-31.900,-31.519,-31.087,-30.591,
--30.127,-29.780,-29.474,-29.023,-28.325,-27.473,-26.643,-25.934,-25.329,-24.755,-24.131,-23.427,-22.733,-22.233,-22.073,-22.250,
--22.628,-22.999,-23.095,-22.677,-21.725,-20.528,-19.436,-18.491,-17.386,-15.806,-13.738,-11.453,-9.299,-7.571,-6.457,-5.980,
--5.952,-6.047,-5.952,-5.505,-4.821,-4.276,-4.162,-4.274,-4.009,-3.102,-2.113,-1.907,-2.676,-3.840,-4.948,-6.268,
--8.192,-10.383,-11.980,-12.570,-12.561,-12.528,-12.573,-12.519,-12.364,-12.226,-12.019,-11.540,-10.868,-10.359,-10.204,-10.184,
--9.973,-9.491,-8.879,-8.294,-7.845,-7.597,-7.464,-7.208,-6.694,-6.128,-5.861,-5.954,-6.105,-6.050,-5.914,-6.066,
--6.724,-7.771,-8.900,-9.816,-10.342,-10.461,-10.319,-10.150,-10.133,-10.303,-10.580,-10.875,-11.140,-11.358,-11.478,-11.444,
--11.313,-11.309,-11.637,-12.190,-12.530,-12.306,-11.643,-11.034,-10.823,-10.906,-10.969,-10.904,-10.885,-11.136,-11.720,-12.529,
--13.349,-13.932,-14.127,-14.023,-13.921,-14.104,-14.612,-15.231,-15.662,-15.735,-15.540,-15.386,-15.578,-16.174,-16.979,-17.780,
--18.531,-19.268,-19.973,-20.651,-21.450,-22.529,-23.806,-25.008,-26.041,-27.111,-28.348,-29.507,-30.281,-30.806,-31.482,-32.245,
--32.387,-31.453,-30.155,-29.962,-31.656,-34.497,-36.972,-38.228,-38.625,-39.036,-39.895,-40.980,-41.914,-42.667,-43.526,-44.628,
--45.624,-45.931,-45.379,-44.510,-44.054,-44.125,-44.190,-43.869,-43.520,-43.765,-44.624,-45.452,-45.729,-45.578,-45.387,-45.245,
--44.983,-44.549,-44.043,-43.491,-42.900,-42.491,-42.518,-42.859,-43.215,-43.924,-46.089,-50.393,-55.867,-60.366,-62.382,-62.122,
--60.752,-59.049,-57.090,-54.905,-52.855,-51.305,-50.259,-49.509,-48.932,-48.495,-48.121,-47.730,-47.342,-47.010,-46.695,-46.329,
--45.950,-45.661,-45.456,-45.213,-44.852,-44.409,-43.932,-43.400,-42.803,-42.214,-41.724,-41.351,-41.056,-40.815,-40.613,-40.403,
--40.139,-39.827,-39.485,-39.074,-38.530,-37.871,-37.199,-36.595,-36.064,-35.577,-35.100,-34.564,-33.883,-33.065,-32.250,-31.556,
--30.927,-30.201,-29.320,-28.410,-27.621,-26.969,-26.347,-25.677,-24.998,-24.430,-24.048,-23.800,-23.530,-23.111,-22.567,-22.035,
--21.610,-21.260,-20.904,-20.524,-20.147,-19.767,-19.342,-18.864,-18.381,-17.914,-17.434,-16.918,-16.398,-15.914,-15.453,-14.984,
--14.505,-14.028,-13.537,-13.003,-12.438,-11.880,-11.330,-10.756,-10.139,-9.495,-8.820,-8.084,-7.292,-6.505,-5.768,-5.060,
--4.338,-3.602,-2.870,-2.119,-1.304,-.432,.442,1.280,2.090,2.886,3.664,4.435,5.219,6.013,6.787,7.544,
-8.325,9.128,9.882,10.549,11.188,11.878,12.585,13.203,13.702,14.163,14.643,15.110,15.520,15.907,16.331,16.795,
-17.270,17.756,18.253,18.710,19.085,19.433,19.858,20.403,21.043,21.792,22.674,23.561,24.162,24.301,24.158,24.098,
-24.288,24.575,24.763,24.860,25.000,25.223,25.446,25.611,25.743,25.865,25.970,26.077,26.230,26.397,26.451,26.326,
-26.136,26.060,26.134,26.244,26.308,26.362,26.446,26.522,26.569,26.667,26.907,27.293,27.844,28.714,30.006,31.425,
-32.353,32.438,32.007,31.726,31.894,32.281,32.626,33.021,33.621,34.175,34.133,33.232,31.792,30.394,29.401,28.839,
-28.581,28.473,28.356,28.141,27.891,27.742,27.735,27.794,27.870,28.000,28.184,28.298,28.228,28.022,27.838,27.741,
-27.655,27.508,27.350,27.275,27.292,27.327,27.327,27.289,27.215,27.099,26.968,26.885,26.876,26.896,26.908,26.945,
-27.058,27.215,27.333,27.403,27.517,27.735,27.991,28.193,28.355,28.531,28.664,28.627,28.460,28.404,28.612,28.904,
-28.965,28.721,28.349,28.107,27.888,27.620,27.240,26.826,26.475,26.151,25.774,25.387,25.086,24.814,24.400,23.832,
-23.340,23.121,23.103,23.090,23.033,23.014,23.024,22.946,22.771,22.662,22.714,22.784,22.678,22.428,22.250,22.279,
-22.479,22.829,23.434,24.335,25.292,25.888,25.891,25.439,24.870,24.406,24.042,23.664,23.209,22.694,22.173,21.709,
-21.367,21.149,20.954,20.652,20.238,19.856,19.612,19.400,19.001,18.336,17.560,16.878,16.348,15.909,15.525,15.215,
-14.967,14.737,14.520,14.357,14.236,14.069,13.792,13.423,12.984,12.432,11.759,11.112,10.715,10.629,10.705,10.778,
-10.853,11.022,11.256,11.383,11.281,11.009,10.754,10.679,10.850,11.236,11.721,12.150,12.417,12.552,12.660,12.792,
-12.901,12.937,12.923,12.885,12.753,12.428,11.941,11.488,11.232,11.138,11.037,10.836,10.597,10.389,10.161,9.805,
-9.317,8.839,8.528,8.412,8.378,8.291,8.105,7.880,7.681,7.486,7.218,6.857,6.484,6.182,5.936,5.677,
-5.399,5.173,5.034,4.931,4.803,4.656,4.520,4.363,4.124,3.813,3.529,3.367,3.324,3.311,3.232,3.065,
-2.894,2.833,2.891,2.900,2.623,1.964,1.068,.219,-.350,-.569,-.553,-.519,-.658,-1.001,-1.418,-1.738,
--1.864,-1.802,-1.651,-1.596,-1.817,-2.306,-2.809,-3.049,-3.017,-2.968,-3.113,-3.378,-3.507,-3.343,-2.965,-2.625,
--2.591,-3.010,-3.857,-4.997,-6.303,-7.681,-8.996,-10.108,-11.031,-11.970,-13.083,-14.272,-15.317,-16.195,-17.110,-18.192,
--19.317,-20.299,-21.109,-21.837,-22.529,-23.190,-23.850,-24.485,-24.926,-25.006,-24.804,-24.618,-24.651,-24.845,-25.059,-25.287,
--25.627,-26.119,-26.711,-27.364,-28.114,-29.029,-30.113,-31.219,-32.053,-32.370,-32.214,-31.923,-31.845,-32.125,-32.754,-33.660,
--34.615,-35.253,-35.411,-35.434,-35.858,-36.765,-37.697,-38.311,-38.849,-39.767,-41.098,-42.431,-43.390,-43.863,-43.883,-43.704,
--44.021,-45.659,-48.682,-51.993,-54.183,-54.764,-54.385,-53.932,-53.733,-53.672,-53.706,-53.951,-54.414,-54.917,-55.348,-55.794,
--56.375,-57.053,-57.707,-58.299,-58.890,-59.514,-60.122,-60.670,-61.229,-61.953,-62.954,-64.199,-65.524,-66.733,-67.680,-68.290,
--68.547,-68.531,-68.457,-68.607,-69.118,-69.851,-70.524,-71.036,-71.592,-72.443,-73.521,-74.416,-74.748,-74.513,-74.017,-73.547,
--73.184,-72.930,-72.891,-73.266,-74.163,-75.435,-76.675,-77.414,-77.423,-76.888,-76.247,-75.810,-75.587,-75.472,-75.498,-75.765,
--76.189,-76.519,-76.622,-76.633,-76.732,-76.888,-76.946,-76.868,-76.756,-76.667,-76.573,-76.504,-76.582,-76.847,-77.157,-77.345,
--77.410,-77.434,-77.398,-77.186,-76.790,-76.335,-75.870,-75.256,-74.371,-73.395,-72.737,-72.634,-72.904,-73.178,-73.336,-73.620,
--74.307,-75.356,-76.438,-77.289,-77.910,-78.411,-78.738,-78.650,-77.974,-76.824,-75.543,-74.454,-73.655,-73.033,-72.427,-71.774,
--71.123,-70.521,-69.946,-69.326,-68.615,-67.805,-66.906,-65.944,-64.968,-64.019,-63.091,-62.177,-61.342,-60.691,-60.247,-59.915,
--59.622,-59.421,-59.392,-59.489,-59.565,-59.561,-59.557,-59.585,-59.442,-58.763,-57.332,-55.350,-53.392,-52.033,-51.402,-51.078,
--50.493,-49.452,-48.224,-47.156,-46.314,-45.560,-44.826,-44.138,-43.435,-42.549,-41.448,-40.353,-39.538,-39.057,-38.756,-38.479,
--38.162,-37.746,-37.145,-36.335,-35.423,-34.570,-33.850,-33.239,-32.705,-32.272,-31.980,-31.807,-31.642,-31.357,-30.903,-30.336,
--29.765,-29.272,-28.854,-28.391,-27.673,-26.529,-24.993,-23.333,-21.873,-20.775,-20.009,-19.491,-19.162,-18.930,-18.634,-18.133,
--17.416,-16.565,-15.639,-14.636,-13.564,-12.483,-11.442,-10.423,-9.400,-8.444,-7.714,-7.311,-7.123,-6.850,-6.235,-5.255,
--4.084,-2.893,-1.713,-.508,.708,1.848,2.847,3.724,4.590,5.572,6.703,7.867,8.906,9.800,10.679,11.635,
-12.628,13.638,14.776,16.094,17.399,18.463,19.371,20.412,21.613,22.691,23.534,24.393,25.405,26.245,26.645,27.014,
-28.089,30.065,32.510,35.083,37.705,39.921,40.827,40.164,38.922,38.165,37.584,36.064,33.652,31.978,32.349,34.166,
-35.846,36.766,37.545,38.670,39.767,40.352,40.585,40.881,41.239,41.380,41.280,41.170,41.146,41.133,41.156,41.321,
-41.550,41.646,41.633,41.761,42.109,42.425,42.491,42.423,42.464,42.628,42.736,42.713,42.670,42.723,42.863,43.020,
-43.142,43.199,43.201,43.208,43.270,43.371,43.486,43.654,43.908,44.162,44.311,44.431,44.727,45.254,45.800,46.143,
-46.310,46.489,46.762,47.061,47.345,47.655,47.982,48.218,48.323,48.452,48.803,49.339,49.763,49.833,49.656,49.595,
-49.860,50.273,50.482,50.373,50.167,50.103,50.174,50.225,50.207,50.190,50.215,50.302,50.567,51.126,51.814,52.217,
-52.133,51.857,51.825,52.039,52.082,51.681,51.007,50.321,49.511,48.203,46.277,44.065,41.971,39.956,37.569,34.604,
-31.707,30.163,30.830,33.259,36.042,38.078,39.328,40.300,41.191,41.880,42.502,43.384,44.325,44.462,43.263,41.337,
-39.815,39.138,38.890,38.706,38.690,38.777,38.329,36.917,35.184,34.301,34.547,34.939,34.461,33.227,32.142,31.720,
-31.653,31.441,31.021,30.643,30.403,30.130,29.665,29.045,28.422,27.888,27.435,27.041,26.742,26.577,26.486,26.314,
-25.979,25.575,25.233,24.917,24.488,23.961,23.517,23.213,22.864,22.385,22.086,22.345,22.991,23.330,22.900,22.012,
-21.341,21.129,21.027,20.656,20.034,19.394,18.838,18.342,17.953,17.760,17.699,17.585,17.370,17.208,17.196,17.186,
-16.969,16.568,16.190,15.915,15.602,15.151,14.713,14.496,14.421,14.160,13.575,12.960,12.741,12.955,13.175,12.981,
-12.429,11.969,11.931,12.174,12.242,11.837,11.106,10.464,10.190,10.190,10.154,9.895,9.502,9.180,9.023,8.968,
-8.919,8.847,8.766,8.687,8.595,8.442,8.180,7.826,7.506,7.357,7.366,7.360,7.205,6.967,6.804,6.759,
-6.728,6.621,6.459,6.297,6.142,5.983,5.837,5.720,5.640,5.645,5.841,6.263,6.764,7.117,7.223,7.204,
-7.268,7.536,7.969,8.387,8.584,8.486,8.242,8.080,8.064,8.059,7.959,7.847,7.859,7.987,8.123,8.246,
-8.433,8.684,8.895,9.022,9.143,9.283,9.318,9.146,8.858,8.607,8.392,8.157,8.077,8.466,9.302,10.037,
-10.095,9.512,8.901,8.772,9.056,9.325,9.326,9.140,8.944,8.785,8.619,8.435,8.267,8.143,8.071,8.052,
-8.057,8.019,7.885,7.665,7.414,7.171,6.948,6.769,6.661,6.617,6.590,6.546,6.496,6.462,6.446,6.438,
-6.430,6.395,6.307,6.204,6.183,6.277,6.375,6.337,6.185,6.083,6.108,6.119,5.921,5.514,5.078,4.735,
-4.417,4.001,3.486,2.982,2.557,2.165,1.726,1.234,.752,.337,-.016,-.351,-.694,-1.035,-1.372,-1.742,
--2.175,-2.637,-3.049,-3.380,-3.682,-4.003,-4.330,-4.628,-4.926,-5.281,-5.684,-6.071,-6.412,-6.746,-7.099,-7.438,
--7.733,-8.015,-8.318,-8.613,-8.856,-9.070,-9.326,-9.651,-10.006,-10.369,-10.760,-11.195,-11.657,-12.130,-12.615,-13.093,
--13.519,-13.883,-14.235,-14.616,-15.013,-15.411,-15.848,-16.367,-16.929,-17.450,-17.903,-18.329,-18.751,-19.151,-19.529,-19.929,
--20.374,-20.831,-21.266,-21.691,-22.112,-22.492,-22.799,-23.071,-23.376,-23.738,-24.133,-24.545,-24.971,-25.393,-25.795,-26.206,
--26.659,-27.126,-27.550,-27.944,-28.389,-28.912,-29.443,-29.927,-30.413,-30.975,-31.595,-32.188,-32.719,-33.212,-33.681,-34.112,
--34.515,-34.925,-35.346,-35.744,-36.119,-36.521,-36.968,-37.403,-37.772,-38.087,-38.391,-38.699,-39.006,-39.321,-39.647,-39.952,
--40.219,-40.479,-40.764,-41.043,-41.274,-41.489,-41.757,-42.079,-42.396,-42.688,-42.994,-43.325,-43.631,-43.890,-44.142,-44.399,
--44.598,-44.709,-44.819,-45.016,-45.248,-45.401,-45.477,-45.602,-45.840,-46.114,-46.316,-46.425,-46.460,-46.416,-46.313,-46.232,
--46.239,-46.305,-46.362,-46.394,-46.405,-46.354,-46.197,-45.981,-45.799,-45.658,-45.474,-45.212,-44.930,-44.680,-44.434,-44.160,
--43.898,-43.692,-43.498,-43.247,-42.945,-42.649,-42.356,-42.002,-41.559,-41.077,-40.611,-40.163,-39.710,-39.239,-38.739,-38.211,
--37.688,-37.206,-36.747,-36.255,-35.725,-35.229,-34.821,-34.465,-34.087,-33.658,-33.193,-32.710,-32.237,-31.813,-31.437,-31.043,
--30.586,-30.124,-29.738,-29.378,-28.883,-28.163,-27.304,-26.468,-25.743,-25.130,-24.587,-24.047,-23.429,-22.718,-22.018,-21.497,
--21.289,-21.430,-21.817,-22.201,-22.296,-22.001,-21.476,-20.913,-20.244,-19.176,-17.501,-15.305,-12.869,-10.504,-8.491,-7.046,
--6.231,-5.901,-5.787,-5.607,-5.152,-4.435,-3.765,-3.484,-3.496,-3.236,-2.351,-1.269,-.811,-1.261,-2.168,-3.134,
--4.394,-6.335,-8.709,-10.734,-11.904,-12.337,-12.346,-12.056,-11.578,-11.189,-11.044,-10.871,-10.296,-9.384,-8.623,-8.347,
--8.410,-8.454,-8.290,-7.958,-7.577,-7.278,-7.139,-7.053,-6.775,-6.220,-5.646,-5.390,-5.475,-5.610,-5.597,-5.556,
--5.746,-6.292,-7.149,-8.164,-9.090,-9.630,-9.663,-9.407,-9.250,-9.399,-9.752,-10.119,-10.440,-10.733,-10.906,-10.767,
--10.249,-9.583,-9.182,-9.297,-9.785,-10.218,-10.274,-10.002,-9.725,-9.687,-9.848,-10.006,-10.052,-10.066,-10.219,-10.631,
--11.287,-12.022,-12.592,-12.824,-12.764,-12.665,-12.818,-13.357,-14.181,-15.026,-15.657,-16.047,-16.389,-16.876,-17.490,-18.047,
--18.444,-18.773,-19.158,-19.609,-20.136,-20.897,-22.074,-23.599,-25.190,-26.673,-28.106,-29.489,-30.572,-31.170,-31.556,-32.180,
--32.956,-33.170,-32.360,-31.138,-30.786,-31.996,-34.213,-36.299,-37.636,-38.451,-39.278,-40.354,-41.542,-42.609,-43.465,-44.196,
--44.897,-45.475,-45.684,-45.465,-45.180,-45.285,-45.750,-46.045,-45.846,-45.515,-45.615,-46.114,-46.437,-46.268,-45.907,-45.684,
--45.424,-44.788,-43.894,-43.203,-42.889,-42.712,-42.472,-42.193,-41.802,-41.194,-40.920,-42.367,-46.555,-52.718,-58.542,-61.994,
--62.739,-61.749,-60.014,-57.938,-55.680,-53.498,-51.657,-50.268,-49.340,-48.839,-48.615,-48.408,-48.068,-47.652,-47.266,-46.901,
--46.519,-46.189,-45.994,-45.877,-45.683,-45.350,-44.930,-44.452,-43.880,-43.237,-42.634,-42.140,-41.714,-41.317,-41.006,-40.831,
--40.718,-40.534,-40.235,-39.859,-39.409,-38.837,-38.149,-37.440,-36.794,-36.222,-35.710,-35.242,-34.759,-34.152,-33.389,-32.584,
--31.880,-31.266,-30.592,-29.754,-28.813,-27.922,-27.175,-26.544,-25.952,-25.361,-24.820,-24.412,-24.144,-23.900,-23.539,-23.050,
--22.547,-22.128,-21.765,-21.384,-20.976,-20.581,-20.192,-19.754,-19.249,-18.726,-18.225,-17.734,-17.229,-16.723,-16.238,-15.767,
--15.296,-14.827,-14.357,-13.856,-13.307,-12.744,-12.206,-11.670,-11.072,-10.397,-9.692,-8.986,-8.256,-7.486,-6.711,-5.965,
--5.238,-4.506,-3.776,-3.060,-2.330,-1.541,-.693,.168,1.005,1.813,2.594,3.350,4.098,4.856,5.609,6.337,
-7.072,7.859,8.675,9.428,10.091,10.749,11.473,12.202,12.821,13.324,13.805,14.307,14.780,15.185,15.568,15.980,
-16.420,16.881,17.381,17.897,18.348,18.711,19.090,19.585,20.175,20.846,21.772,23.128,24.681,25.771,25.903,25.273,
-24.560,24.251,24.314,24.497,24.708,24.988,25.295,25.517,25.645,25.764,25.881,25.907,25.847,25.857,26.036,26.254,
-26.308,26.194,26.103,26.161,26.302,26.405,26.457,26.511,26.590,26.711,26.926,27.263,27.694,28.259,29.135,30.392,
-31.665,32.330,32.168,31.681,31.560,31.913,32.278,32.376,32.510,33.043,33.724,33.839,33.005,31.555,30.119,29.051,
-28.352,27.930,27.714,27.585,27.418,27.229,27.151,27.244,27.424,27.610,27.820,28.062,28.220,28.173,27.970,27.783,
-27.694,27.617,27.471,27.316,27.269,27.337,27.415,27.428,27.391,27.347,27.291,27.196,27.077,26.985,26.948,26.970,
-27.055,27.211,27.409,27.600,27.772,27.965,28.182,28.347,28.392,28.356,28.327,28.310,28.238,28.127,28.119,28.290,
-28.497,28.528,28.349,27.783,27.653,27.487,27.211,26.821,26.428,26.111,25.822,25.496,25.166,24.864,24.489,23.918,
-23.256,22.797,22.689,22.771,22.818,22.812,22.852,22.893,22.785,22.542,22.384,22.435,22.525,22.419,22.138,21.930,
-21.961,22.184,22.506,22.952,23.566,24.238,24.722,24.835,24.607,24.215,23.823,23.481,23.142,22.739,22.246,21.700,
-21.192,20.818,20.603,20.457,20.236,19.893,19.534,19.275,19.067,18.715,18.101,17.322,16.582,15.991,15.536,15.175,
-14.886,14.627,14.354,14.084,13.882,13.746,13.575,13.280,12.881,12.425,11.891,11.258,10.642,10.238,10.121,10.177,
-10.286,10.481,10.841,11.278,11.543,11.469,11.148,10.839,10.754,10.959,11.399,11.951,12.450,12.771,12.907,12.948,
-12.960,12.928,12.829,12.707,12.600,12.438,12.104,11.618,11.170,10.918,10.808,10.663,10.431,10.220,10.101,9.966,
-9.657,9.187,8.748,8.493,8.388,8.287,8.112,7.901,7.715,7.542,7.304,6.959,6.565,6.221,5.963,5.721,
-5.425,5.102,4.847,4.689,4.555,4.378,4.187,4.053,3.963,3.806,3.499,3.104,2.794,2.705,2.807,2.920,
-2.886,2.721,2.581,2.538,2.454,2.114,1.467,.700,.063,-.308,-.435,-.431,-.446,-.600,-.912,-1.297,
--1.642,-1.864,-1.905,-1.783,-1.668,-1.823,-2.332,-2.938,-3.274,-3.254,-3.146,-3.226,-3.481,-3.689,-3.700,-3.560,
--3.420,-3.412,-3.617,-4.091,-4.883,-6.022,-7.421,-8.825,-9.952,-10.779,-11.594,-12.652,-13.865,-14.950,-15.829,-16.703,
--17.719,-18.772,-19.695,-20.487,-21.223,-21.884,-22.426,-22.925,-23.460,-23.908,-24.046,-23.882,-23.708,-23.767,-24.002,-24.228,
--24.418,-24.704,-25.160,-25.720,-26.315,-27.004,-27.944,-29.207,-30.599,-31.675,-32.054,-31.805,-31.447,-31.522,-32.185,-33.237,
--34.368,-35.284,-35.758,-35.841,-35.980,-36.639,-37.757,-38.796,-39.423,-39.915,-40.731,-41.901,-43.056,-43.864,-44.191,-44.018,
--43.640,-43.916,-45.773,-49.141,-52.650,-54.765,-55.150,-54.686,-54.305,-54.196,-54.142,-54.149,-54.424,-54.963,-55.509,-55.938,
--56.408,-57.072,-57.842,-58.533,-59.116,-59.702,-60.330,-60.921,-61.435,-61.968,-62.662,-63.568,-64.647,-65.848,-67.111,-68.302,
--69.212,-69.686,-69.752,-69.647,-69.682,-70.045,-70.670,-71.318,-71.825,-72.299,-73.003,-74.029,-75.127,-75.897,-76.133,-75.921,
--75.461,-74.913,-74.421,-74.178,-74.370,-75.049,-76.075,-77.146,-77.901,-78.091,-77.774,-77.270,-76.861,-76.570,-76.300,-76.110,
--76.198,-76.590,-77.038,-77.319,-77.494,-77.749,-78.073,-78.250,-78.155,-77.892,-77.640,-77.495,-77.503,-77.712,-78.083,-78.456,
--78.690,-78.795,-78.824,-78.689,-78.249,-77.567,-76.909,-76.420,-75.925,-75.200,-74.377,-73.899,-74.038,-74.581,-75.111,-75.500,
--75.992,-76.794,-77.748,-78.500,-78.908,-79.147,-79.395,-79.558,-79.353,-78.624,-77.498,-76.267,-75.168,-74.279,-73.542,-72.871,
--72.229,-71.618,-71.022,-70.377,-69.637,-68.822,-67.961,-67.035,-66.025,-64.988,-64.024,-63.149,-62.312,-61.524,-60.889,-60.458,
--60.142,-59.844,-59.605,-59.521,-59.567,-59.631,-59.700,-59.865,-60.084,-60.031,-59.302,-57.763,-55.705,-53.691,-52.222,-51.428,
--50.987,-50.391,-49.384,-48.137,-46.980,-46.048,-45.259,-44.541,-43.893,-43.243,-42.408,-41.323,-40.188,-39.296,-38.750,-38.429,
--38.177,-37.901,-37.509,-36.896,-36.049,-35.104,-34.233,-33.499,-32.870,-32.347,-31.987,-31.794,-31.635,-31.333,-30.819,-30.181,
--29.546,-28.975,-28.467,-28.012,-27.572,-27.012,-26.151,-24.921,-23.458,-22.013,-20.781,-19.849,-19.226,-18.840,-18.520,-18.079,
--17.453,-16.726,-15.989,-15.216,-14.317,-13.255,-12.085,-10.900,-9.786,-8.824,-8.090,-7.622,-7.363,-7.120,-6.622,-5.696,
--4.419,-3.042,-1.752,-.536,.679,1.840,2.814,3.586,4.318,5.190,6.241,7.371,8.460,9.461,10.423,11.425,
-12.472,13.501,14.507,15.598,16.841,18.112,19.240,20.248,21.289,22.368,23.356,24.286,25.331,26.415,27.166,27.510,
-28.010,29.254,31.159,33.315,35.755,38.647,41.267,42.222,41.184,39.641,39.132,39.201,38.103,35.442,33.012,32.652,
-34.181,36.065,37.456,38.678,40.036,41.161,41.701,41.891,42.086,42.215,42.078,41.826,41.748,41.822,41.833,41.795,
-41.889,42.090,42.203,42.237,42.415,42.755,42.967,42.890,42.753,42.838,43.100,43.291,43.329,43.329,43.362,43.390,
-43.402,43.459,43.577,43.692,43.759,43.801,43.854,43.952,44.135,44.391,44.623,44.759,44.905,45.243,45.768,46.259,
-46.554,46.732,46.951,47.224,47.480,47.734,48.045,48.354,48.531,48.602,48.783,49.208,49.714,49.992,49.934,49.756,
-49.772,50.080,50.473,50.667,50.583,50.401,50.333,50.408,50.503,50.529,50.490,50.438,50.465,50.728,51.318,52.046,
-52.512,52.512,52.281,52.196,52.302,52.301,51.985,51.475,50.949,50.298,49.193,47.469,45.311,43.011,40.592,37.793,
-34.561,31.591,30.147,31.039,33.714,36.611,38.553,39.618,40.545,41.646,42.668,43.447,44.070,44.312,43.570,41.779,
-39.961,39.271,39.672,40.104,39.892,39.344,38.817,37.973,36.511,35.141,34.983,36.000,36.749,35.999,34.104,32.422,
-31.715,31.611,31.449,31.098,30.801,30.626,30.389,29.961,29.416,28.876,28.378,27.906,27.465,27.101,26.856,26.713,
-26.576,26.349,26.037,25.709,25.364,24.930,24.421,23.961,23.581,23.150,22.673,22.513,23.001,23.826,24.139,23.459,
-22.264,21.443,21.294,21.347,21.091,20.539,20.004,19.616,19.296,19.001,18.752,18.465,18.033,17.570,17.353,17.430,
-17.480,17.202,16.707,16.340,16.186,15.982,15.548,15.069,14.825,14.758,14.526,13.963,13.319,12.963,12.946,12.956,
-12.690,12.187,11.764,11.663,11.792,11.805,11.453,10.848,10.374,10.285,10.440,10.469,10.186,9.751,9.438,9.328,
-9.300,9.238,9.137,9.030,8.925,8.823,8.731,8.616,8.413,8.128,7.849,7.633,7.429,7.182,6.949,6.841,
-6.856,6.877,6.827,6.739,6.665,6.585,6.461,6.289,6.081,5.852,5.691,5.772,6.181,6.758,7.197,7.316,
-7.202,7.082,7.130,7.368,7.676,7.880,7.898,7.823,7.813,7.891,7.932,7.866,7.805,7.879,8.044,8.176,
-8.280,8.470,8.750,8.985,9.114,9.226,9.352,9.343,9.105,8.837,8.811,8.977,9.008,8.830,8.837,9.396,
-10.259,10.715,10.369,9.569,8.993,8.948,9.192,9.347,9.291,9.137,8.990,8.843,8.663,8.470,8.315,8.227,
-8.197,8.179,8.105,7.921,7.641,7.341,7.086,6.881,6.703,6.557,6.471,6.454,6.479,6.502,6.494,6.439,
-6.337,6.201,6.047,5.891,5.769,5.738,5.819,5.926,5.929,5.812,5.705,5.713,5.757,5.646,5.319,4.911,
-4.574,4.297,3.967,3.536,3.072,2.638,2.220,1.784,1.336,.899,.458,-.007,-.459,-.827,-1.100,-1.365,
--1.728,-2.203,-2.699,-3.118,-3.442,-3.725,-4.009,-4.293,-4.573,-4.870,-5.206,-5.565,-5.912,-6.242,-6.571,-6.897,
--7.199,-7.480,-7.775,-8.102,-8.427,-8.710,-8.960,-9.217,-9.508,-9.835,-10.201,-10.604,-11.027,-11.463,-11.928,-12.427,
--12.907,-13.300,-13.614,-13.935,-14.320,-14.745,-15.176,-15.631,-16.142,-16.683,-17.194,-17.660,-18.101,-18.518,-18.897,-19.269,
--19.683,-20.134,-20.561,-20.935,-21.302,-21.697,-22.082,-22.404,-22.681,-22.972,-23.310,-23.694,-24.122,-24.589,-25.058,-25.505,
--25.954,-26.443,-26.942,-27.389,-27.798,-28.255,-28.797,-29.359,-29.874,-30.366,-30.892,-31.441,-31.971,-32.479,-32.990,-33.481,
--33.903,-34.262,-34.625,-35.022,-35.425,-35.816,-36.224,-36.660,-37.088,-37.473,-37.831,-38.185,-38.528,-38.848,-39.166,-39.495,
--39.803,-40.059,-40.288,-40.533,-40.787,-41.025,-41.276,-41.593,-41.963,-42.313,-42.612,-42.896,-43.186,-43.450,-43.680,-43.927,
--44.205,-44.440,-44.574,-44.668,-44.824,-45.041,-45.229,-45.364,-45.517,-45.736,-45.968,-46.130,-46.197,-46.185,-46.117,-46.035,
--46.005,-46.056,-46.143,-46.209,-46.245,-46.255,-46.216,-46.108,-45.966,-45.822,-45.637,-45.346,-44.973,-44.620,-44.347,-44.129,
--43.934,-43.770,-43.624,-43.428,-43.147,-42.831,-42.541,-42.244,-41.865,-41.402,-40.933,-40.507,-40.100,-39.665,-39.179,-38.641,
--38.079,-37.549,-37.088,-36.656,-36.186,-35.678,-35.208,-34.807,-34.419,-33.987,-33.534,-33.106,-32.702,-32.297,-31.891,-31.485,
--31.044,-30.559,-30.096,-29.705,-29.307,-28.751,-27.994,-27.152,-26.348,-25.607,-24.914,-24.288,-23.742,-23.218,-22.628,-21.953,
--21.268,-20.710,-20.423,-20.471,-20.746,-21.014,-21.116,-21.086,-20.988,-20.711,-20.009,-18.751,-17.037,-15.086,-13.092,-11.220,
--9.603,-8.306,-7.320,-6.619,-6.108,-5.569,-4.828,-4.029,-3.535,-3.413,-3.211,-2.500,-1.505,-.906,-1.038,-1.624,
--2.386,-3.529,-5.333,-7.518,-9.367,-10.432,-10.801,-10.712,-10.278,-9.678,-9.257,-9.173,-9.109,-8.604,-7.630,-6.633,
--6.050,-5.965,-6.211,-6.573,-6.854,-6.921,-6.802,-6.641,-6.482,-6.207,-5.763,-5.316,-5.055,-4.951,-4.847,-4.732,
--4.770,-5.064,-5.577,-6.282,-7.191,-8.159,-8.838,-9.001,-8.842,-8.779,-8.993,-9.300,-9.488,-9.578,-9.666,-9.644,
--9.260,-8.459,-7.556,-6.990,-6.951,-7.270,-7.616,-7.773,-7.759,-7.744,-7.890,-8.226,-8.641,-8.975,-9.157,-9.279,
--9.529,-10.025,-10.710,-11.384,-11.866,-12.111,-12.218,-12.365,-12.711,-13.299,-14.026,-14.723,-15.329,-15.942,-16.676,-17.481,
--18.173,-18.631,-18.901,-19.108,-19.342,-19.709,-20.378,-21.462,-22.859,-24.330,-25.737,-27.089,-28.337,-29.302,-29.927,-30.479,
--31.240,-32.021,-32.244,-31.670,-30.883,-30.822,-31.862,-33.546,-35.182,-36.508,-37.680,-38.870,-40.071,-41.219,-42.265,-43.129,
--43.737,-44.126,-44.413,-44.636,-44.778,-44.944,-45.312,-45.819,-46.128,-46.064,-45.916,-46.045,-46.332,-46.346,-46.031,-45.803,
--45.844,-45.690,-44.851,-43.572,-42.591,-42.241,-42.210,-42.126,-41.928,-41.562,-40.893,-40.338,-41.224,-44.808,-50.796,-57.178,
--61.713,-63.443,-62.842,-60.931,-58.555,-56.195,-54.037,-52.085,-50.399,-49.224,-48.771,-48.874,-49.058,-48.979,-48.654,-48.247,
--47.820,-47.392,-47.058,-46.892,-46.794,-46.585,-46.211,-45.735,-45.182,-44.530,-43.833,-43.216,-42.716,-42.246,-41.775,-41.405,
--41.208,-41.081,-40.860,-40.511,-40.113,-39.681,-39.144,-38.481,-37.773,-37.102,-36.475,-35.878,-35.321,-34.791,-34.210,-33.524,
--32.789,-32.110,-31.505,-30.874,-30.119,-29.243,-28.340,-27.514,-26.811,-26.199,-25.629,-25.105,-24.693,-24.424,-24.206,-23.895,
--23.448,-22.965,-22.543,-22.171,-21.787,-21.382,-20.997,-20.625,-20.206,-19.710,-19.175,-18.650,-18.139,-17.626,-17.111,-16.605,
--16.107,-15.618,-15.146,-14.679,-14.177,-13.624,-13.060,-12.521,-11.973,-11.350,-10.641,-9.902,-9.175,-8.444,-7.683,-6.906,
--6.141,-5.392,-4.652,-3.927,-3.219,-2.503,-1.751,-.966,-.173,.614,1.393,2.156,2.902,3.653,4.417,5.169,
-5.884,6.601,7.366,8.149,8.873,9.531,10.208,10.942,11.651,12.251,12.776,13.316,13.868,14.356,14.766,15.159,
-15.570,15.979,16.403,16.895,17.426,17.886,18.267,18.702,19.266,19.868,20.526,21.607,23.468,25.793,27.575,27.974,
-27.108,25.831,24.882,24.438,24.403,24.735,25.337,25.888,26.066,25.909,25.734,25.708,25.701,25.588,25.506,25.657,
-25.985,26.228,26.257,26.209,26.259,26.401,26.518,26.571,26.624,26.742,26.950,27.250,27.623,28.054,28.631,29.541,
-30.780,31.904,32.313,31.930,31.406,31.423,31.920,32.265,32.188,32.171,32.741,33.629,33.960,33.212,31.711,30.160,
-28.972,28.163,27.655,27.391,27.249,27.079,26.881,26.817,26.978,27.260,27.521,27.727,27.903,28.000,27.954,27.816,
-27.715,27.686,27.639,27.515,27.403,27.413,27.525,27.602,27.575,27.510,27.500,27.535,27.515,27.389,27.221,27.125,
-27.160,27.301,27.493,27.698,27.909,28.128,28.343,28.506,28.548,28.451,28.283,28.143,28.064,28.000,27.923,27.877,
-27.897,27.930,27.892,27.783,27.104,27.042,26.939,26.727,26.426,26.127,25.871,25.615,25.330,25.049,24.755,24.304,
-23.606,22.837,22.337,22.254,22.402,22.531,22.595,22.665,22.690,22.543,22.265,22.078,22.097,22.169,22.076,21.832,
-21.650,21.681,21.884,22.161,22.493,22.905,23.354,23.715,23.873,23.806,23.581,23.293,22.985,22.628,22.181,21.660,
-21.135,20.682,20.343,20.123,19.977,19.803,19.524,19.177,18.870,18.626,18.317,17.803,17.109,16.393,15.784,15.296,
-14.891,14.542,14.220,13.900,13.607,13.405,13.286,13.143,12.873,12.485,12.039,11.541,10.981,10.451,10.108,10.005,
-10.034,10.114,10.325,10.762,11.301,11.635,11.580,11.267,10.986,10.925,11.091,11.426,11.883,12.373,12.758,12.941,
-12.948,12.863,12.732,12.566,12.399,12.253,12.056,11.698,11.193,10.727,10.456,10.321,10.156,9.934,9.791,9.785,
-9.749,9.486,9.040,8.661,8.500,8.449,8.307,8.021,7.703,7.450,7.231,6.952,6.592,6.227,5.937,5.708,
-5.453,5.112,4.742,4.454,4.283,4.142,3.939,3.696,3.523,3.470,3.429,3.233,2.844,2.436,2.259,2.382,
-2.606,2.659,2.478,2.237,2.089,1.958,1.661,1.185,.727,.462,.370,.300,.144,-.107,-.425,-.778,
--1.139,-1.483,-1.769,-1.918,-1.881,-1.785,-1.896,-2.354,-2.966,-3.387,-3.495,-3.477,-3.543,-3.687,-3.783,-3.800,
--3.819,-3.890,-3.988,-4.107,-4.340,-4.858,-5.794,-7.100,-8.488,-9.625,-10.455,-11.254,-12.281,-13.457,-14.509,-15.370,
--16.229,-17.197,-18.160,-19.008,-19.810,-20.626,-21.305,-21.690,-21.895,-22.168,-22.528,-22.759,-22.782,-22.809,-23.052,-23.442,
--23.773,-24.003,-24.271,-24.669,-25.137,-25.613,-26.192,-27.106,-28.492,-30.152,-31.538,-32.147,-32.009,-31.732,-31.945,-32.772,
--33.860,-34.802,-35.391,-35.609,-35.650,-35.920,-36.746,-37.989,-39.140,-39.906,-40.527,-41.384,-42.497,-43.570,-44.324,-44.580,
--44.266,-43.740,-44.017,-46.080,-49.706,-53.302,-55.288,-55.495,-54.978,-54.675,-54.651,-54.614,-54.604,-54.883,-55.443,-56.010,
--56.469,-56.996,-57.725,-58.536,-59.246,-59.861,-60.492,-61.143,-61.718,-62.218,-62.777,-63.488,-64.314,-65.210,-66.240,-67.472,
--68.789,-69.910,-70.605,-70.869,-70.885,-70.888,-71.069,-71.499,-72.083,-72.649,-73.145,-73.729,-74.583,-75.654,-76.647,-77.267,
--77.417,-77.160,-76.628,-76.008,-75.545,-75.455,-75.810,-76.534,-77.433,-78.208,-78.567,-78.439,-78.057,-77.713,-77.468,-77.203,
--76.942,-76.906,-77.208,-77.661,-78.019,-78.298,-78.674,-79.140,-79.440,-79.390,-79.084,-78.765,-78.600,-78.649,-78.927,-79.376,
--79.833,-80.150,-80.303,-80.294,-80.012,-79.345,-78.437,-77.657,-77.210,-76.893,-76.387,-75.739,-75.383,-75.657,-76.423,-77.274,
--77.989,-78.652,-79.337,-79.889,-80.114,-80.073,-80.030,-80.120,-80.167,-79.884,-79.154,-78.090,-76.902,-75.773,-74.806,-74.012,
--73.326,-72.677,-72.040,-71.402,-70.711,-69.921,-69.049,-68.132,-67.155,-66.096,-65.030,-64.083,-63.282,-62.527,-61.771,-61.107,
--60.626,-60.276,-59.957,-59.680,-59.531,-59.514,-59.572,-59.723,-60.017,-60.313,-60.228,-59.403,-57.811,-55.774,-53.777,-52.237,
--51.304,-50.749,-50.113,-49.108,-47.862,-46.704,-45.771,-44.951,-44.153,-43.431,-42.795,-42.078,-41.133,-40.067,-39.152,-38.536,
--38.152,-37.864,-37.576,-37.182,-36.560,-35.689,-34.722,-33.848,-33.128,-32.517,-32.024,-31.721,-31.592,-31.441,-31.050,-30.394,
--29.650,-28.976,-28.365,-27.745,-27.129,-26.592,-26.106,-25.495,-24.596,-23.413,-22.104,-20.857,-19.816,-19.049,-18.499,-17.988,
--17.360,-16.615,-15.870,-15.190,-14.519,-13.757,-12.840,-11.749,-10.533,-9.359,-8.452,-7.916,-7.635,-7.360,-6.869,-6.031,
--4.829,-3.394,-1.949,-.634,.587,1.783,2.876,3.728,4.371,5.022,5.856,6.854,7.915,9.002,10.121,11.245,
-12.329,13.359,14.354,15.356,16.425,17.596,18.823,20.011,21.133,22.214,23.246,24.221,25.224,26.305,27.255,27.799,
-28.128,28.896,30.443,32.377,34.306,36.581,39.577,42.391,43.318,42.025,40.346,40.069,40.548,39.602,36.634,33.659,
-32.912,34.416,36.566,38.300,39.762,41.195,42.287,42.778,42.920,43.002,42.925,42.596,42.304,42.345,42.544,42.561,
-42.435,42.469,42.706,42.907,43.001,43.154,43.386,43.462,43.296,43.152,43.283,43.592,43.825,43.921,43.976,44.002,
-43.939,43.843,43.856,43.995,44.127,44.165,44.164,44.227,44.399,44.670,44.968,45.182,45.280,45.410,45.753,46.267,
-46.718,46.971,47.135,47.353,47.615,47.851,48.093,48.386,48.650,48.776,48.854,49.102,49.566,50.012,50.186,50.093,
-49.966,50.019,50.284,50.622,50.845,50.854,50.725,50.631,50.670,50.776,50.818,50.746,50.641,50.666,50.981,51.606,
-52.326,52.798,52.861,52.695,52.603,52.661,52.670,52.458,52.075,51.659,51.162,50.307,48.828,46.699,44.127,41.292,
-38.184,34.852,31.902,30.480,31.384,34.102,37.057,39.016,40.059,41.009,42.227,43.365,44.069,44.295,43.881,42.495,
-40.425,38.907,38.991,40.216,41.043,40.592,39.351,38.090,36.857,35.551,34.842,35.557,37.228,38.101,36.978,34.531,
-32.430,31.536,31.418,31.346,31.134,30.928,30.719,30.378,29.924,29.490,29.096,28.665,28.197,27.785,27.473,27.223,
-26.991,26.759,26.492,26.168,25.818,25.474,25.112,24.706,24.291,23.867,23.373,22.886,22.765,23.289,24.111,24.393,
-23.676,22.452,21.607,21.434,21.474,21.251,20.815,20.484,20.342,20.228,20.009,19.636,19.053,18.325,17.794,17.803,
-18.202,18.378,17.931,17.144,16.592,16.430,16.312,15.956,15.511,15.252,15.142,14.892,14.384,13.832,13.494,13.366,
-13.225,12.896,12.420,11.981,11.725,11.631,11.520,11.239,10.853,10.593,10.584,10.658,10.539,10.185,9.827,9.666,
-9.650,9.606,9.486,9.372,9.293,9.186,9.038,8.930,8.897,8.842,8.661,8.373,8.063,7.755,7.441,7.174,
-7.038,7.018,7.007,6.946,6.885,6.871,6.873,6.837,6.750,6.596,6.347,6.067,5.948,6.141,6.552,6.908,
-7.028,6.964,6.881,6.894,7.026,7.238,7.445,7.575,7.644,7.735,7.865,7.944,7.922,7.894,7.977,8.139,
-8.268,8.368,8.548,8.830,9.095,9.270,9.399,9.468,9.331,8.981,8.764,9.069,9.772,10.251,10.102,9.681,
-9.702,10.341,10.983,10.919,10.141,9.299,8.974,9.156,9.434,9.501,9.366,9.179,9.011,8.844,8.664,8.490,
-8.348,8.249,8.183,8.103,7.944,7.690,7.404,7.168,6.987,6.807,6.608,6.445,6.368,6.360,6.364,6.343,
-6.277,6.149,5.957,5.742,5.562,5.454,5.422,5.452,5.499,5.488,5.386,5.273,5.254,5.313,5.300,5.107,
-4.796,4.504,4.256,3.961,3.560,3.097,2.644,2.216,1.802,1.399,.994,.543,.037,-.451,-.826,-1.104,
--1.406,-1.820,-2.308,-2.763,-3.132,-3.446,-3.749,-4.044,-4.316,-4.572,-4.836,-5.116,-5.406,-5.700,-6.003,-6.307,
--6.597,-6.870,-7.155,-7.476,-7.831,-8.188,-8.519,-8.817,-9.088,-9.354,-9.654,-10.020,-10.437,-10.862,-11.287,-11.749,
--12.252,-12.725,-13.089,-13.368,-13.667,-14.054,-14.505,-14.974,-15.455,-15.953,-16.444,-16.909,-17.361,-17.810,-18.225,-18.584,
--18.938,-19.354,-19.809,-20.212,-20.537,-20.854,-21.225,-21.621,-21.981,-22.306,-22.639,-23.001,-23.395,-23.842,-24.352,-24.886,
--25.395,-25.885,-26.396,-26.918,-27.393,-27.816,-28.254,-28.755,-29.274,-29.754,-30.196,-30.642,-31.099,-31.565,-32.056,-32.579,
--33.075,-33.474,-33.794,-34.129,-34.534,-34.981,-35.427,-35.870,-36.312,-36.738,-37.143,-37.554,-37.978,-38.378,-38.724,-39.043,
--39.366,-39.674,-39.928,-40.143,-40.364,-40.605,-40.860,-41.152,-41.513,-41.912,-42.264,-42.539,-42.779,-43.022,-43.245,-43.442,
--43.661,-43.937,-44.210,-44.401,-44.525,-44.669,-44.871,-45.083,-45.261,-45.421,-45.588,-45.747,-45.857,-45.898,-45.871,-45.805,
--45.758,-45.786,-45.886,-45.993,-46.056,-46.074,-46.061,-46.012,-45.929,-45.836,-45.721,-45.509,-45.151,-44.713,-44.329,-44.070,
--43.914,-43.823,-43.769,-43.690,-43.508,-43.215,-42.885,-42.563,-42.207,-41.772,-41.297,-40.861,-40.476,-40.085,-39.640,-39.136,
--38.590,-38.032,-37.515,-37.065,-36.638,-36.170,-35.677,-35.224,-34.818,-34.389,-33.906,-33.429,-33.024,-32.672,-32.312,-31.909,
--31.449,-30.930,-30.399,-29.947,-29.587,-29.180,-28.569,-27.772,-26.949,-26.199,-25.483,-24.750,-24.047,-23.445,-22.928,-22.411,
--21.824,-21.152,-20.451,-19.868,-19.572,-19.593,-19.772,-19.924,-20.007,-20.053,-19.996,-19.676,-19.008,-18.055,-16.921,-15.662,
--14.297,-12.839,-11.308,-9.796,-8.485,-7.485,-6.651,-5.743,-4.809,-4.195,-4.032,-3.925,-3.399,-2.529,-1.856,-1.695,
--1.887,-2.295,-3.152,-4.666,-6.489,-7.935,-8.648,-8.798,-8.646,-8.261,-7.724,-7.302,-7.178,-7.156,-6.840,-6.065,
--5.046,-4.163,-3.755,-4.009,-4.827,-5.782,-6.370,-6.403,-6.087,-5.701,-5.350,-5.028,-4.754,-4.511,-4.208,-3.835,
--3.591,-3.695,-4.129,-4.707,-5.384,-6.272,-7.319,-8.181,-8.567,-8.585,-8.569,-8.631,-8.584,-8.306,-7.962,-7.754,
--7.605,-7.253,-6.636,-6.008,-5.668,-5.664,-5.828,-5.987,-6.084,-6.138,-6.212,-6.411,-6.824,-7.394,-7.907,-8.180,
--8.262,-8.401,-8.814,-9.515,-10.349,-11.131,-11.731,-12.098,-12.285,-12.452,-12.767,-13.265,-13.847,-14.420,-15.014,-15.719,
--16.545,-17.374,-18.049,-18.491,-18.741,-18.957,-19.349,-20.062,-21.061,-22.172,-23.263,-24.351,-25.496,-26.622,-27.574,-28.343,
--29.100,-29.908,-30.497,-30.521,-30.074,-29.782,-30.239,-31.435,-32.862,-34.126,-35.259,-36.443,-37.650,-38.727,-39.668,-40.583,
--41.444,-42.072,-42.417,-42.662,-42.986,-43.375,-43.745,-44.105,-44.461,-44.715,-44.826,-44.953,-45.229,-45.472,-45.411,-45.173,
--45.195,-45.520,-45.541,-44.719,-43.350,-42.258,-41.843,-41.808,-41.771,-41.694,-41.588,-41.294,-40.995,-41.677,-44.529,-49.697,
--55.832,-60.959,-63.697,-63.815,-62.025,-59.446,-56.981,-54.888,-52.918,-50.966,-49.440,-48.843,-49.118,-49.644,-49.867,-49.706,
--49.355,-48.946,-48.530,-48.200,-48.015,-47.878,-47.627,-47.209,-46.678,-46.060,-45.356,-44.645,-44.039,-43.535,-43.034,-42.520,
--42.101,-41.820,-41.554,-41.174,-40.721,-40.308,-39.922,-39.438,-38.802,-38.096,-37.411,-36.751,-36.087,-35.440,-34.833,-34.239,
--33.613,-32.953,-32.295,-31.654,-31.008,-30.321,-29.568,-28.749,-27.907,-27.116,-26.427,-25.838,-25.342,-24.965,-24.716,-24.511,
--24.217,-23.791,-23.313,-22.878,-22.492,-22.111,-21.731,-21.377,-21.033,-20.632,-20.142,-19.597,-19.051,-18.525,-18.008,-17.490,
--16.967,-16.439,-15.920,-15.427,-14.950,-14.444,-13.887,-13.305,-12.730,-12.147,-11.508,-10.805,-10.073,-9.339,-8.591,-7.814,
--7.024,-6.247,-5.501,-4.784,-4.091,-3.406,-2.710,-2.003,-1.301,-.604,.113,.859,1.614,2.369,3.141,3.936,
-4.713,5.443,6.154,6.885,7.614,8.289,8.933,9.616,10.333,10.993,11.555,12.100,12.699,13.297,13.803,14.234,
-14.667,15.101,15.491,15.881,16.368,16.922,17.408,17.820,18.313,18.934,19.531,20.126,21.204,23.257,25.991,28.292,
-29.185,28.654,27.417,26.142,25.150,24.710,25.093,26.142,27.099,27.220,26.516,25.669,25.238,25.182,25.184,25.174,
-25.323,25.674,26.023,26.192,26.238,26.317,26.453,26.563,26.619,26.697,26.871,27.140,27.458,27.797,28.194,28.801,
-29.778,31.018,32.000,32.176,31.613,31.066,31.192,31.803,32.165,32.024,31.986,32.688,33.849,34.450,33.811,32.210,
-30.446,29.068,28.165,27.633,27.350,27.157,26.919,26.680,26.637,26.876,27.250,27.540,27.671,27.698,27.674,27.627,
-27.603,27.641,27.696,27.678,27.588,27.540,27.617,27.749,27.795,27.720,27.643,27.689,27.831,27.912,27.817,27.609,
-27.467,27.513,27.712,27.942,28.130,28.289,28.452,28.598,28.668,28.614,28.453,28.250,28.075,27.953,27.856,27.743,
-27.605,27.459,27.318,27.193,27.104,26.396,26.292,26.204,26.075,25.903,25.733,25.575,25.399,25.200,24.997,24.732,
-24.249,23.476,22.616,22.027,21.883,22.038,22.238,22.373,22.445,22.422,22.245,21.978,21.789,21.754,21.761,21.679,
-21.526,21.429,21.458,21.586,21.776,22.039,22.377,22.737,23.026,23.170,23.151,23.010,22.802,22.531,22.141,21.615,
-21.043,20.547,20.171,19.874,19.631,19.454,19.303,19.074,18.721,18.338,18.027,17.740,17.337,16.768,16.134,15.555,
-15.061,14.627,14.235,13.879,13.546,13.256,13.062,12.962,12.850,12.615,12.250,11.819,11.356,10.877,10.463,10.232,
-10.184,10.195,10.205,10.347,10.749,11.278,11.600,11.539,11.264,11.072,11.072,11.182,11.351,11.648,12.094,12.534,
-12.766,12.751,12.614,12.465,12.317,12.148,11.951,11.688,11.286,10.762,10.277,9.983,9.837,9.685,9.497,9.407,
-9.461,9.476,9.246,8.835,8.518,8.440,8.449,8.297,7.929,7.488,7.111,6.802,6.504,6.199,5.923,5.695,
-5.478,5.207,4.853,4.469,4.150,3.929,3.740,3.496,3.216,3.031,3.030,3.115,3.056,2.723,2.258,1.972,
-2.022,2.237,2.297,2.089,1.795,1.612,1.499,1.292,.998,.832,.916,1.090,1.074,.751,.240,-.281,
--.723,-1.094,-1.436,-1.752,-1.975,-2.043,-2.025,-2.126,-2.484,-3.000,-3.451,-3.744,-3.954,-4.131,-4.209,-4.150,
--4.071,-4.113,-4.258,-4.382,-4.444,-4.575,-4.976,-5.768,-6.896,-8.123,-9.194,-10.064,-10.929,-11.950,-13.032,-13.986,
--14.827,-15.734,-16.727,-17.632,-18.387,-19.163,-20.039,-20.761,-21.045,-20.999,-21.008,-21.247,-21.548,-21.760,-22.001,-22.437,
--23.009,-23.526,-23.928,-24.309,-24.738,-25.173,-25.576,-26.046,-26.815,-28.074,-29.710,-31.224,-32.060,-32.156,-32.047,-32.330,
--33.083,-33.920,-34.501,-34.799,-34.957,-35.149,-35.608,-36.525,-37.790,-39.016,-39.948,-40.729,-41.646,-42.754,-43.863,-44.716,
--45.040,-44.688,-44.093,-44.405,-46.618,-50.354,-53.883,-55.675,-55.737,-55.232,-55.037,-55.105,-55.096,-55.076,-55.338,-55.889,
--56.476,-56.998,-57.602,-58.371,-59.176,-59.889,-60.558,-61.267,-61.959,-62.529,-63.026,-63.608,-64.322,-65.070,-65.818,-66.713,
--67.888,-69.233,-70.449,-71.318,-71.824,-72.058,-72.117,-72.156,-72.376,-72.865,-73.489,-74.066,-74.610,-75.306,-76.230,-77.207,
--77.969,-78.359,-78.357,-78.008,-77.436,-76.863,-76.526,-76.567,-77.010,-77.761,-78.558,-79.037,-79.004,-78.635,-78.292,-78.133,
--78.038,-77.919,-77.904,-78.119,-78.467,-78.776,-79.071,-79.505,-80.048,-80.442,-80.501,-80.318,-80.113,-80.007,-80.027,-80.220,
--80.610,-81.097,-81.508,-81.722,-81.672,-81.265,-80.460,-79.453,-78.623,-78.181,-77.951,-77.618,-77.187,-77.029,-77.472,-78.425,
--79.496,-80.379,-81.013,-81.411,-81.523,-81.343,-81.042,-80.850,-80.794,-80.672,-80.267,-79.524,-78.523,-77.378,-76.231,-75.235,
--74.451,-73.787,-73.115,-72.409,-71.718,-71.026,-70.248,-69.339,-68.334,-67.274,-66.187,-65.149,-64.262,-63.525,-62.819,-62.070,
--61.359,-60.799,-60.377,-60.010,-59.692,-59.489,-59.437,-59.535,-59.802,-60.192,-60.450,-60.193,-59.205,-57.597,-55.683,-53.804,
--52.257,-51.203,-50.499,-49.756,-48.727,-47.579,-46.632,-45.903,-45.103,-44.087,-43.061,-42.262,-41.613,-40.858,-39.940,-39.054,
--38.379,-37.907,-37.548,-37.230,-36.844,-36.234,-35.346,-34.342,-33.452,-32.759,-32.194,-31.727,-31.434,-31.329,-31.221,-30.868,
--30.223,-29.463,-28.749,-28.057,-27.302,-26.525,-25.871,-25.376,-24.877,-24.177,-23.211,-22.057,-20.841,-19.690,-18.702,-17.885,
--17.151,-16.417,-15.694,-15.025,-14.391,-13.738,-13.049,-12.300,-11.388,-10.254,-9.088,-8.236,-7.830,-7.608,-7.171,-6.339,
--5.177,-3.814,-2.357,-.924,.397,1.626,2.802,3.851,4.659,5.267,5.876,6.635,7.552,8.618,9.858,11.195,
-12.410,13.362,14.163,15.037,16.072,17.195,18.342,19.520,20.742,21.969,23.148,24.246,25.292,26.333,27.303,27.967,
-28.243,28.589,29.725,31.771,34.009,35.874,37.791,40.349,42.841,43.656,42.433,40.875,40.616,40.939,39.755,36.657,
-33.787,33.332,35.144,37.475,39.242,40.647,41.992,42.998,43.418,43.505,43.541,43.435,43.120,42.901,43.036,43.287,
-43.287,43.116,43.134,43.393,43.613,43.670,43.727,43.857,43.903,43.803,43.763,43.946,44.226,44.401,44.471,44.535,
-44.567,44.496,44.398,44.409,44.509,44.551,44.496,44.472,44.599,44.878,45.228,45.544,45.721,45.768,45.875,46.234,
-46.775,47.224,47.434,47.536,47.706,47.946,48.178,48.404,48.655,48.863,48.968,49.079,49.368,49.822,50.221,50.395,
-50.388,50.349,50.373,50.500,50.730,50.974,51.079,50.998,50.872,50.868,50.969,51.014,50.923,50.814,50.888,51.265,
-51.890,52.547,52.980,53.079,52.988,52.958,53.082,53.192,53.073,52.710,52.288,51.915,51.370,50.201,48.117,45.271,
-42.086,38.836,35.616,32.830,31.427,32.199,34.778,37.700,39.704,40.760,41.606,42.591,43.406,43.750,43.657,43.057,
-41.686,39.824,38.608,38.946,40.266,40.982,40.230,38.588,37.001,35.724,34.754,34.604,35.756,37.469,38.043,36.600,
-34.070,32.084,31.293,31.173,31.107,31.003,30.927,30.732,30.318,29.867,29.568,29.315,28.903,28.389,28.000,27.790,
-27.590,27.275,26.882,26.472,26.051,25.639,25.296,25.022,24.752,24.440,24.062,23.583,23.080,22.870,23.245,23.986,
-24.374,23.910,22.891,22.041,21.682,21.531,21.262,20.932,20.756,20.732,20.671,20.429,19.942,19.191,18.383,18.009,
-18.396,19.164,19.455,18.835,17.761,16.998,16.756,16.646,16.338,15.952,15.727,15.614,15.372,14.938,14.496,14.195,
-13.978,13.704,13.324,12.896,12.501,12.187,11.948,11.728,11.469,11.203,11.025,10.935,10.785,10.466,10.094,9.902,
-9.936,9.995,9.910,9.757,9.700,9.719,9.646,9.433,9.231,9.159,9.140,9.026,8.797,8.524,8.234,7.911,
-7.594,7.365,7.227,7.107,6.983,6.918,6.946,7.003,7.031,7.036,7.015,6.891,6.639,6.393,6.326,6.441,
-6.589,6.676,6.755,6.895,7.063,7.205,7.328,7.456,7.563,7.621,7.673,7.765,7.865,7.915,7.940,8.017,
-8.149,8.264,8.352,8.493,8.734,9.016,9.275,9.489,9.579,9.395,8.974,8.717,9.079,9.978,10.717,10.686,
-10.059,9.633,9.922,10.593,10.874,10.434,9.680,9.242,9.314,9.590,9.700,9.568,9.344,9.162,9.027,8.888,
-8.714,8.508,8.309,8.164,8.069,7.955,7.760,7.519,7.314,7.164,7.008,6.815,6.627,6.490,6.374,6.238,
-6.099,5.991,5.887,5.733,5.543,5.400,5.340,5.315,5.273,5.210,5.123,4.999,4.865,4.804,4.849,4.900,
-4.832,4.636,4.405,4.185,3.919,3.555,3.127,2.698,2.288,1.881,1.477,1.073,.639,.163,-.306,-.716,
--1.094,-1.515,-1.988,-2.429,-2.773,-3.064,-3.383,-3.739,-4.075,-4.349,-4.580,-4.799,-5.017,-5.239,-5.484,-5.757,
--6.041,-6.317,-6.603,-6.925,-7.286,-7.657,-8.016,-8.361,-8.679,-8.954,-9.201,-9.479,-9.835,-10.250,-10.670,-11.090,
--11.550,-12.047,-12.505,-12.860,-13.147,-13.463,-13.859,-14.313,-14.794,-15.287,-15.767,-16.200,-16.588,-16.986,-17.411,-17.812,
--18.153,-18.490,-18.897,-19.348,-19.750,-20.076,-20.408,-20.809,-21.248,-21.666,-22.068,-22.489,-22.924,-23.352,-23.800,-24.305,
--24.845,-25.357,-25.825,-26.297,-26.791,-27.263,-27.684,-28.090,-28.528,-28.981,-29.405,-29.791,-30.172,-30.577,-31.023,-31.527,
--32.068,-32.571,-32.970,-33.295,-33.645,-34.078,-34.564,-35.052,-35.522,-35.973,-36.400,-36.820,-37.269,-37.745,-38.195,-38.574,
--38.900,-39.215,-39.517,-39.779,-40.013,-40.254,-40.511,-40.783,-41.091,-41.462,-41.862,-42.203,-42.451,-42.653,-42.860,-43.063,
--43.243,-43.437,-43.689,-43.976,-44.222,-44.399,-44.556,-44.742,-44.952,-45.142,-45.288,-45.398,-45.494,-45.584,-45.646,-45.653,
--45.616,-45.598,-45.652,-45.760,-45.860,-45.911,-45.922,-45.896,-45.828,-45.730,-45.633,-45.517,-45.301,-44.950,-44.542,-44.205,
--44.000,-43.902,-43.869,-43.858,-43.797,-43.625,-43.350,-43.028,-42.668,-42.235,-41.735,-41.248,-40.836,-40.461,-40.047,-39.575,
--39.077,-38.569,-38.061,-37.574,-37.113,-36.640,-36.123,-35.600,-35.135,-34.718,-34.281,-33.810,-33.358,-32.959,-32.573,-32.148,
--31.674,-31.154,-30.598,-30.075,-29.678,-29.380,-28.988,-28.342,-27.506,-26.681,-25.964,-25.291,-24.598,-23.920,-23.309,-22.750,
--22.199,-21.638,-21.040,-20.383,-19.742,-19.285,-19.097,-19.066,-19.015,-18.899,-18.789,-18.696,-18.540,-18.268,-17.904,-17.470,
--16.927,-16.207,-15.239,-13.980,-12.499,-11.009,-9.693,-8.506,-7.291,-6.133,-5.354,-5.055,-4.851,-4.291,-3.418,-2.651,
--2.197,-1.913,-1.787,-2.189,-3.395,-5.065,-6.486,-7.255,-7.494,-7.449,-7.181,-6.713,-6.217,-5.877,-5.665,-5.376,
--4.830,-4.004,-3.083,-2.475,-2.622,-3.596,-4.890,-5.777,-5.909,-5.494,-4.932,-4.457,-4.102,-3.822,-3.526,-3.124,
--2.700,-2.533,-2.831,-3.478,-4.194,-4.896,-5.715,-6.660,-7.463,-7.865,-7.908,-7.798,-7.578,-7.125,-6.468,-5.886,
--5.608,-5.544,-5.443,-5.226,-5.047,-5.028,-5.098,-5.128,-5.116,-5.138,-5.217,-5.331,-5.534,-5.922,-6.460,-6.935,
--7.164,-7.212,-7.335,-7.735,-8.431,-9.318,-10.256,-11.080,-11.637,-11.909,-12.079,-12.385,-12.912,-13.547,-14.137,-14.641,
--15.137,-15.725,-16.424,-17.140,-17.723,-18.116,-18.468,-19.028,-19.893,-20.897,-21.810,-22.618,-23.508,-24.581,-25.691,-26.626,
--27.374,-28.071,-28.711,-29.047,-28.916,-28.591,-28.660,-29.470,-30.778,-32.046,-33.015,-33.863,-34.816,-35.817,-36.674,-37.396,
--38.162,-39.005,-39.733,-40.224,-40.613,-41.094,-41.652,-42.125,-42.449,-42.695,-42.931,-43.188,-43.517,-43.907,-44.181,-44.187,
--44.102,-44.285,-44.723,-44.860,-44.232,-43.101,-42.191,-41.863,-41.855,-41.802,-41.679,-41.589,-41.496,-41.462,-42.041,-44.069,
--47.948,-53.177,-58.493,-62.419,-63.922,-62.983,-60.629,-58.140,-56.067,-54.112,-51.988,-50.092,-49.104,-49.129,-49.561,-49.767,
--49.615,-49.315,-49.017,-48.741,-48.512,-48.368,-48.258,-48.072,-47.756,-47.311,-46.744,-46.084,-45.431,-44.870,-44.373,-43.859,
--43.342,-42.903,-42.524,-42.074,-41.509,-40.953,-40.525,-40.155,-39.675,-39.031,-38.325,-37.650,-37.002,-36.342,-35.673,-35.028,
--34.415,-33.818,-33.207,-32.550,-31.835,-31.104,-30.412,-29.746,-29.025,-28.208,-27.369,-26.631,-26.060,-25.639,-25.332,-25.095,
--24.854,-24.528,-24.102,-23.637,-23.195,-22.780,-22.376,-21.993,-21.650,-21.315,-20.921,-20.433,-19.886,-19.337,-18.816,-18.315,
--17.810,-17.281,-16.725,-16.166,-15.633,-15.125,-14.603,-14.039,-13.439,-12.829,-12.214,-11.581,-10.916,-10.220,-9.492,-8.731,
--7.943,-7.149,-6.374,-5.641,-4.962,-4.322,-3.682,-3.020,-2.356,-1.720,-1.092,-.423,.308,1.069,1.838,2.628,
-3.438,4.225,4.960,5.666,6.374,7.062,7.700,8.329,9.006,9.697,10.308,10.836,11.388,12.016,12.635,13.160,
-13.635,14.131,14.610,15.005,15.392,15.902,16.498,17.022,17.462,17.989,18.645,19.234,19.735,20.606,22.357,24.812,
-27.090,28.404,28.644,28.112,27.049,25.764,24.981,25.468,27.109,28.678,28.888,27.616,25.897,24.796,24.524,24.650,
-24.816,25.025,25.351,25.708,25.961,26.109,26.243,26.384,26.481,26.534,26.629,26.829,27.107,27.390,27.666,28.038,
-28.697,29.750,30.980,31.830,31.835,31.187,30.680,30.910,31.606,31.999,31.859,31.849,32.669,34.050,34.900,34.396,
-32.731,30.757,29.178,28.189,27.654,27.355,27.101,26.809,26.590,26.636,26.975,27.397,27.652,27.665,27.538,27.413,
-27.383,27.472,27.623,27.718,27.694,27.618,27.621,27.733,27.848,27.853,27.766,27.719,27.822,28.039,28.208,28.192,
-28.021,27.881,27.933,28.163,28.416,28.573,28.645,28.692,28.725,28.705,28.609,28.461,28.292,28.117,27.940,27.763,
-27.576,27.362,27.107,26.828,26.575,26.396,25.653,25.412,25.283,25.198,25.116,25.046,25.011,25.005,25.003,24.951,
-24.740,24.234,23.419,22.515,21.859,21.638,21.759,21.991,22.166,22.225,22.156,21.969,21.738,21.554,21.435,21.337,
-21.245,21.203,21.232,21.287,21.331,21.412,21.607,21.916,22.247,22.490,22.585,22.544,22.426,22.272,22.042,21.637,
-21.052,20.432,19.947,19.611,19.317,19.026,18.809,18.678,18.504,18.165,17.724,17.339,17.043,16.716,16.268,15.747,
-15.244,14.792,14.379,14.007,13.679,13.372,13.094,12.898,12.796,12.694,12.468,12.100,11.672,11.247,10.855,10.555,
-10.420,10.417,10.409,10.363,10.446,10.804,11.291,11.555,11.441,11.167,11.041,11.111,11.207,11.279,11.480,11.904,
-12.369,12.593,12.517,12.330,12.196,12.089,11.908,11.633,11.296,10.885,10.399,9.939,9.635,9.474,9.328,9.156,
-9.067,9.110,9.131,8.943,8.592,8.321,8.255,8.247,8.070,7.669,7.170,6.710,6.338,6.050,5.841,5.684,
-5.528,5.322,5.042,4.694,4.316,3.964,3.666,3.393,3.106,2.842,2.717,2.788,2.932,2.904,2.573,2.078,
-1.728,1.693,1.822,1.821,1.588,1.307,1.173,1.133,1.012,.822,.784,1.019,1.326,1.381,1.060,.506,
--.089,-.643,-1.155,-1.613,-1.979,-2.217,-2.332,-2.399,-2.539,-2.819,-3.194,-3.588,-3.987,-4.399,-4.725,-4.825,
--4.716,-4.599,-4.620,-4.700,-4.692,-4.633,-4.744,-5.201,-5.998,-6.991,-8.013,-8.955,-9.830,-10.745,-11.737,-12.694,
--13.527,-14.349,-15.322,-16.369,-17.236,-17.879,-18.555,-19.405,-20.162,-20.474,-20.398,-20.346,-20.566,-20.937,-21.271,-21.604,
--22.071,-22.676,-23.309,-23.910,-24.498,-25.078,-25.620,-26.106,-26.572,-27.151,-28.037,-29.283,-30.589,-31.475,-31.780,-31.876,
--32.237,-32.897,-33.522,-33.913,-34.206,-34.585,-35.082,-35.723,-36.629,-37.812,-39.035,-40.055,-40.909,-41.824,-42.932,-44.145,
--45.184,-45.649,-45.330,-44.729,-45.090,-47.366,-51.053,-54.384,-55.952,-55.917,-55.462,-55.368,-55.506,-55.537,-55.543,-55.815,
--56.364,-56.974,-57.567,-58.244,-59.032,-59.808,-60.509,-61.219,-61.987,-62.712,-63.292,-63.806,-64.411,-65.120,-65.815,-66.484,
--67.297,-68.391,-69.660,-70.851,-71.807,-72.524,-72.999,-73.197,-73.208,-73.297,-73.681,-74.298,-74.930,-75.507,-76.162,-76.976,
--77.826,-78.514,-78.948,-79.117,-79.004,-78.626,-78.117,-77.685,-77.512,-77.709,-78.285,-79.038,-79.555,-79.532,-79.091,-78.677,
--78.585,-78.733,-78.904,-79.044,-79.216,-79.412,-79.598,-79.862,-80.324,-80.904,-81.352,-81.536,-81.574,-81.608,-81.627,-81.580,
--81.568,-81.768,-82.192,-82.638,-82.873,-82.762,-82.265,-81.430,-80.461,-79.654,-79.178,-78.931,-78.719,-78.556,-78.695,-79.335,
--80.355,-81.402,-82.181,-82.612,-82.735,-82.594,-82.264,-81.891,-81.596,-81.349,-81.001,-80.446,-79.684,-78.745,-77.663,-76.549,
--75.586,-74.857,-74.237,-73.551,-72.782,-72.039,-71.342,-70.569,-69.618,-68.535,-67.431,-66.377,-65.407,-64.552,-63.795,-63.054,
--62.284,-61.550,-60.938,-60.453,-60.045,-59.709,-59.496,-59.459,-59.641,-60.049,-60.515,-60.655,-60.106,-58.842,-57.155,-55.363,
--53.655,-52.187,-51.094,-50.284,-49.437,-48.396,-47.417,-46.807,-46.389,-45.623,-44.298,-42.830,-41.753,-41.104,-40.511,-39.729,
--38.869,-38.137,-37.584,-37.161,-36.825,-36.475,-35.917,-35.047,-34.015,-33.101,-32.425,-31.894,-31.426,-31.095,-30.976,-30.943,
--30.733,-30.222,-29.526,-28.799,-28.055,-27.235,-26.388,-25.654,-25.075,-24.525,-23.845,-22.980,-21.947,-20.772,-19.513,-18.277,
--17.162,-16.203,-15.409,-14.789,-14.281,-13.740,-13.088,-12.400,-11.739,-10.976,-9.968,-8.881,-8.098,-7.735,-7.434,-6.745,
--5.594,-4.229,-2.842,-1.444,-.040,1.293,2.519,3.654,4.659,5.455,6.076,6.699,7.481,8.492,9.772,11.292,
-12.787,13.871,14.446,14.881,15.627,16.754,17.991,19.147,20.279,21.496,22.774,24.019,25.188,26.302,27.359,28.229,
-28.701,28.814,29.170,30.582,33.147,35.927,37.962,39.395,40.999,42.703,43.420,42.662,41.460,40.931,40.525,38.794,
-35.792,33.549,33.772,35.940,38.278,39.905,41.210,42.530,43.510,43.848,43.840,43.867,43.881,43.730,43.592,43.689,
-43.874,43.881,43.791,43.879,44.125,44.251,44.179,44.125,44.216,44.333,44.394,44.506,44.737,44.949,45.011,44.990,
-45.007,45.044,45.033,45.021,45.077,45.136,45.087,44.973,44.955,45.113,45.389,45.696,45.958,46.099,46.138,46.271,
-46.686,47.285,47.751,47.919,47.953,48.079,48.317,48.553,48.747,48.932,49.099,49.225,49.383,49.671,50.057,50.397,
-50.609,50.714,50.738,50.694,50.667,50.784,51.023,51.193,51.173,51.078,51.090,51.202,51.248,51.157,51.070,51.180,
-51.559,52.132,52.723,53.133,53.256,53.196,53.204,53.408,53.628,53.563,53.164,52.731,52.526,52.307,51.382,49.244,
-46.108,42.687,39.485,36.557,34.079,32.808,33.524,35.976,38.804,40.744,41.659,42.174,42.624,42.821,42.673,42.406,
-42.034,41.192,39.872,38.895,39.049,39.933,40.260,39.338,37.721,36.289,35.298,34.692,34.741,35.642,36.693,36.674,
-35.235,33.364,32.181,31.753,31.441,30.984,30.678,30.640,30.555,30.220,29.874,29.742,29.624,29.219,28.626,28.187,
-27.983,27.769,27.382,26.924,26.529,26.174,25.794,25.405,25.044,24.710,24.410,24.142,23.810,23.351,22.987,23.119,
-23.790,24.437,24.417,23.695,22.806,22.189,21.829,21.535,21.273,21.100,20.965,20.760,20.436,19.949,19.268,18.595,
-18.412,18.983,19.841,20.107,19.414,18.291,17.501,17.213,17.033,16.678,16.285,16.069,15.962,15.759,15.423,15.088,
-14.813,14.513,14.113,13.663,13.265,12.965,12.738,12.530,12.284,11.982,11.680,11.449,11.262,11.001,10.640,10.341,
-10.277,10.387,10.435,10.317,10.185,10.200,10.278,10.203,9.937,9.662,9.523,9.453,9.316,9.096,8.858,8.606,
-8.298,7.960,7.669,7.437,7.219,7.038,6.981,7.058,7.156,7.191,7.212,7.271,7.293,7.169,6.939,6.745,
-6.655,6.625,6.658,6.837,7.167,7.492,7.659,7.684,7.682,7.688,7.657,7.599,7.596,7.678,7.786,7.864,
-7.932,8.017,8.096,8.153,8.240,8.421,8.692,8.996,9.268,9.413,9.314,8.986,8.718,8.897,9.570,10.262,
-10.384,9.868,9.286,9.271,9.848,10.436,10.499,10.075,9.632,9.515,9.642,9.731,9.651,9.487,9.356,9.272,
-9.170,8.995,8.740,8.462,8.242,8.112,8.011,7.855,7.648,7.464,7.331,7.202,7.047,6.897,6.760,6.568,
-6.283,5.990,5.802,5.704,5.587,5.424,5.302,5.269,5.247,5.145,4.979,4.818,4.677,4.547,4.468,4.484,
-4.539,4.515,4.367,4.164,3.968,3.751,3.465,3.122,2.753,2.359,1.927,1.480,1.055,.646,.223,-.218,
--.667,-1.137,-1.637,-2.112,-2.478,-2.736,-2.994,-3.341,-3.743,-4.100,-4.367,-4.574,-4.759,-4.928,-5.097,-5.297,
--5.544,-5.818,-6.108,-6.435,-6.813,-7.212,-7.583,-7.919,-8.240,-8.544,-8.811,-9.052,-9.324,-9.667,-10.058,-10.456,
--10.868,-11.325,-11.806,-12.241,-12.595,-12.917,-13.276,-13.685,-14.118,-14.571,-15.050,-15.513,-15.903,-16.224,-16.554,-16.932,
--17.316,-17.658,-18.002,-18.410,-18.863,-19.283,-19.660,-20.067,-20.543,-21.036,-21.492,-21.940,-22.425,-22.920,-23.371,-23.786,
--24.225,-24.691,-25.125,-25.508,-25.895,-26.334,-26.793,-27.218,-27.614,-28.022,-28.450,-28.864,-29.248,-29.629,-30.045,-30.521,
--31.059,-31.623,-32.147,-32.587,-32.971,-33.371,-33.825,-34.310,-34.789,-35.250,-35.689,-36.108,-36.527,-36.979,-37.466,-37.935,
--38.339,-38.684,-38.999,-39.296,-39.574,-39.852,-40.150,-40.454,-40.743,-41.040,-41.386,-41.764,-42.096,-42.335,-42.515,-42.696,
--42.889,-43.073,-43.262,-43.493,-43.771,-44.045,-44.268,-44.449,-44.630,-44.829,-45.014,-45.142,-45.214,-45.283,-45.387,-45.506,
--45.582,-45.600,-45.610,-45.659,-45.731,-45.785,-45.812,-45.825,-45.807,-45.726,-45.591,-45.451,-45.306,-45.103,-44.815,-44.505,
--44.262,-44.114,-44.030,-43.973,-43.911,-43.800,-43.613,-43.362,-43.058,-42.668,-42.167,-41.616,-41.125,-40.724,-40.335,-39.894,
--39.423,-38.971,-38.540,-38.101,-37.643,-37.158,-36.621,-36.036,-35.469,-34.980,-34.549,-34.124,-33.704,-33.315,-32.922,-32.451,
--31.895,-31.317,-30.761,-30.229,-29.769,-29.447,-29.202,-28.822,-28.158,-27.303,-26.467,-25.739,-25.068,-24.417,-23.814,-23.250,
--22.663,-22.045,-21.459,-20.922,-20.373,-19.807,-19.333,-19.021,-18.774,-18.453,-18.062,-17.719,-17.473,-17.270,-17.074,-16.918,
--16.814,-16.704,-16.503,-16.124,-15.480,-14.541,-13.404,-12.188,-10.888,-9.462,-8.065,-7.000,-6.335,-5.745,-4.900,-3.874,
--2.959,-2.187,-1.367,-.615,-.512,-1.523,-3.397,-5.348,-6.725,-7.371,-7.441,-7.139,-6.657,-6.144,-5.640,-5.096,
--4.498,-3.880,-3.234,-2.568,-2.099,-2.205,-3.008,-4.111,-4.902,-5.093,-4.842,-4.424,-3.948,-3.425,-2.898,-2.415,
--1.997,-1.742,-1.851,-2.428,-3.295,-4.142,-4.824,-5.411,-5.943,-6.303,-6.380,-6.219,-5.922,-5.485,-4.881,-4.252,
--3.868,-3.840,-3.992,-4.089,-4.099,-4.141,-4.248,-4.304,-4.238,-4.149,-4.176,-4.330,-4.541,-4.805,-5.174,-5.607,
--5.953,-6.137,-6.269,-6.520,-6.961,-7.572,-8.350,-9.272,-10.181,-10.851,-11.230,-11.530,-12.011,-12.722,-13.494,-14.147,
--14.616,-14.949,-15.266,-15.701,-16.295,-16.928,-17.466,-17.962,-18.628,-19.546,-20.528,-21.355,-22.085,-22.971,-24.094,-25.213,
--26.047,-26.586,-27.031,-27.472,-27.771,-27.811,-27.773,-28.048,-28.848,-29.974,-31.019,-31.785,-32.428,-33.164,-33.984,-34.719,
--35.340,-35.997,-36.771,-37.536,-38.160,-38.707,-39.331,-40.020,-40.605,-40.986,-41.243,-41.502,-41.821,-42.203,-42.609,-42.925,
--43.068,-43.154,-43.411,-43.821,-43.990,-43.576,-42.756,-42.083,-41.878,-41.955,-41.959,-41.776,-41.525,-41.332,-41.283,-41.576,
--42.617,-44.938,-48.882,-54.108,-59.287,-62.630,-63.147,-61.435,-59.024,-56.923,-55.044,-52.987,-50.955,-49.567,-49.031,-48.899,
--48.654,-48.227,-47.856,-47.668,-47.593,-47.546,-47.529,-47.557,-47.595,-47.569,-47.389,-47.009,-46.482,-45.933,-45.435,-44.950,
--44.439,-43.951,-43.526,-43.080,-42.500,-41.829,-41.240,-40.809,-40.411,-39.890,-39.247,-38.590,-37.976,-37.372,-36.734,-36.062,
--35.379,-34.717,-34.104,-33.520,-32.879,-32.120,-31.303,-30.549,-29.882,-29.193,-28.388,-27.535,-26.804,-26.298,-25.984,-25.749,
--25.494,-25.167,-24.769,-24.337,-23.911,-23.490,-23.053,-22.603,-22.182,-21.816,-21.475,-21.094,-20.637,-20.126,-19.604,-19.102,
--18.616,-18.115,-17.571,-16.987,-16.393,-15.821,-15.278,-14.737,-14.173,-13.576,-12.958,-12.338,-11.727,-11.107,-10.449,-9.735,
--8.982,-8.212,-7.434,-6.654,-5.906,-5.234,-4.636,-4.054,-3.441,-2.813,-2.206,-1.600,-.942,-.214,.551,1.326,
-2.118,2.919,3.685,4.395,5.085,5.783,6.459,7.085,7.705,8.370,9.040,9.627,10.146,10.704,11.341,11.969,
-12.523,13.055,13.618,14.144,14.571,14.996,15.558,16.210,16.775,17.235,17.764,18.409,18.979,19.398,19.988,21.142,
-22.804,24.503,25.865,26.788,27.110,26.553,25.341,24.573,25.424,27.795,30.090,30.591,29.018,26.597,24.773,24.067,
-24.109,24.376,24.665,24.987,25.322,25.607,25.829,26.024,26.191,26.294,26.347,26.436,26.627,26.893,27.156,27.414,
-27.802,28.514,29.595,30.757,31.462,31.364,30.743,30.356,30.693,31.436,31.852,31.741,31.749,32.566,33.979,34.944,
-34.596,33.014,30.999,29.318,28.251,27.677,27.342,27.055,26.793,26.691,26.878,27.290,27.686,27.859,27.786,27.598,
-27.453,27.452,27.590,27.754,27.802,27.714,27.616,27.631,27.735,27.807,27.786,27.731,27.737,27.854,28.056,28.255,
-28.342,28.285,28.192,28.223,28.420,28.659,28.800,28.821,28.790,28.746,28.678,28.579,28.470,28.352,28.192,27.977,
-27.735,27.496,27.238,26.905,26.481,26.030,25.653,24.875,24.495,24.313,24.229,24.162,24.126,24.194,24.399,24.659,
-24.805,24.657,24.126,23.299,22.426,21.792,21.537,21.591,21.775,21.929,21.975,21.898,21.736,21.545,21.347,21.127,
-20.903,20.770,20.804,20.952,21.069,21.091,21.106,21.237,21.487,21.749,21.917,21.955,21.894,21.794,21.676,21.470,
-21.062,20.456,19.822,19.338,18.996,18.658,18.292,18.022,17.913,17.825,17.573,17.160,16.742,16.411,16.113,15.771,
-15.388,14.995,14.595,14.204,13.863,13.581,13.314,13.048,12.844,12.734,12.621,12.370,11.968,11.533,11.161,10.863,
-10.647,10.546,10.528,10.488,10.422,10.504,10.867,11.336,11.546,11.355,11.028,10.900,11.007,11.144,11.242,11.470,
-11.919,12.372,12.517,12.326,12.059,11.907,11.794,11.555,11.191,10.820,10.483,10.125,9.746,9.430,9.216,9.036,
-8.855,8.745,8.750,8.756,8.608,8.321,8.060,7.917,7.796,7.555,7.169,6.717,6.277,5.895,5.622,5.486,
-5.433,5.356,5.173,4.877,4.505,4.108,3.733,3.399,3.088,2.797,2.591,2.559,2.680,2.780,2.658,2.274,
-1.802,1.481,1.394,1.399,1.288,1.031,.803,.750,.794,.759,.637,.620,.823,1.110,1.250,1.163,
-.900,.464,-.210,-1.076,-1.907,-2.464,-2.699,-2.763,-2.845,-3.037,-3.305,-3.584,-3.876,-4.253,-4.715,-5.113,
--5.285,-5.268,-5.249,-5.285,-5.217,-4.941,-4.665,-4.754,-5.361,-6.311,-7.330,-8.267,-9.119,-9.952,-10.823,-11.713,
--12.537,-13.275,-14.066,-15.039,-16.071,-16.883,-17.424,-17.965,-18.703,-19.445,-19.858,-19.938,-20.016,-20.334,-20.810,-21.250,
--21.609,-21.979,-22.439,-23.017,-23.703,-24.450,-25.196,-25.926,-26.641,-27.282,-27.799,-28.318,-29.045,-29.953,-30.725,-31.160,
--31.463,-31.964,-32.654,-33.259,-33.699,-34.187,-34.863,-35.607,-36.312,-37.107,-38.144,-39.307,-40.353,-41.240,-42.163,-43.299,
--44.605,-45.778,-46.366,-46.145,-45.644,-46.076,-48.301,-51.761,-54.788,-56.148,-56.083,-55.696,-55.655,-55.814,-55.890,-55.978,
--56.314,-56.884,-57.508,-58.142,-58.867,-59.666,-60.421,-61.113,-61.840,-62.629,-63.368,-63.977,-64.540,-65.186,-65.904,-66.587,
--67.233,-67.988,-68.961,-70.071,-71.149,-72.112,-72.959,-73.631,-74.014,-74.132,-74.227,-74.540,-75.078,-75.693,-76.319,-77.025,
--77.812,-78.539,-79.076,-79.434,-79.671,-79.759,-79.636,-79.336,-78.980,-78.706,-78.663,-78.979,-79.567,-80.043,-80.020,-79.537,
--79.057,-78.986,-79.312,-79.745,-80.069,-80.252,-80.339,-80.431,-80.690,-81.203,-81.821,-82.295,-82.567,-82.793,-83.057,-83.217,
--83.139,-82.963,-82.981,-83.290,-83.668,-83.802,-83.540,-82.924,-82.102,-81.258,-80.566,-80.110,-79.864,-79.777,-79.887,-80.302,
--81.047,-81.958,-82.769,-83.291,-83.505,-83.478,-83.270,-82.922,-82.501,-82.073,-81.632,-81.114,-80.475,-79.720,-78.850,-77.859,
--76.834,-75.943,-75.265,-74.671,-73.977,-73.164,-72.358,-71.606,-70.793,-69.818,-68.741,-67.696,-66.731,-65.804,-64.882,-63.980,
--63.120,-62.318,-61.597,-60.979,-60.463,-60.042,-59.732,-59.558,-59.568,-59.844,-60.391,-60.937,-60.964,-60.111,-58.514,-56.653,
--54.890,-53.316,-51.970,-50.932,-50.109,-49.211,-48.151,-47.273,-46.880,-46.652,-45.871,-44.300,-42.526,-41.285,-40.664,-40.172,
--39.437,-38.547,-37.758,-37.157,-36.699,-36.351,-36.035,-35.556,-34.762,-33.765,-32.857,-32.193,-31.677,-31.191,-30.805,-30.650,
--30.665,-30.587,-30.224,-29.624,-28.938,-28.218,-27.428,-26.595,-25.810,-25.105,-24.404,-23.635,-22.788,-21.840,-20.726,-19.432,
--18.063,-16.757,-15.595,-14.649,-13.982,-13.536,-13.099,-12.511,-11.834,-11.187,-10.492,-9.602,-8.636,-7.921,-7.514,-7.022,
--6.056,-4.687,-3.271,-1.966,-.661,.707,2.027,3.205,4.267,5.225,6.024,6.692,7.421,8.415,9.758,11.411,
-13.170,14.614,15.350,15.474,15.610,16.317,17.553,18.874,20.028,21.124,22.313,23.560,24.765,25.911,27.030,28.109,
-29.027,29.574,29.715,29.980,31.311,34.099,37.443,39.883,40.952,41.489,42.283,43.011,42.945,42.110,40.994,39.489,
-37.114,34.376,32.912,33.759,36.118,38.396,40.004,41.435,42.941,44.026,44.318,44.190,44.187,44.332,44.346,44.219,
-44.157,44.208,44.275,44.385,44.617,44.849,44.862,44.683,44.571,44.653,44.815,44.964,45.156,45.408,45.584,45.588,
-45.509,45.477,45.497,45.531,45.601,45.716,45.788,45.747,45.667,45.669,45.765,45.901,46.069,46.268,46.431,46.536,
-46.737,47.195,47.802,48.234,48.349,48.345,48.473,48.737,48.976,49.126,49.254,49.413,49.593,49.798,50.056,50.345,
-50.605,50.809,50.945,50.972,50.880,50.785,50.843,51.052,51.240,51.296,51.305,51.387,51.503,51.524,51.437,51.374,
-51.474,51.788,52.292,52.878,53.336,53.489,53.411,53.401,53.635,53.903,53.842,53.435,53.105,53.154,53.174,52.239,
-49.806,46.320,42.773,39.743,37.160,35.038,34.055,34.960,37.466,40.201,41.926,42.541,42.684,42.699,42.447,41.944,
-41.553,41.382,41.015,40.201,39.454,39.450,39.987,40.091,39.195,37.752,36.531,35.775,35.346,35.247,35.470,35.582,
-35.074,34.150,33.598,33.682,33.679,32.856,31.504,30.532,30.274,30.247,30.028,29.786,29.776,29.793,29.485,28.921,
-28.455,28.177,27.857,27.396,27.014,26.893,26.903,26.760,26.315,25.624,24.890,24.376,24.187,24.093,23.752,23.241,
-23.121,23.750,24.695,25.097,24.588,23.603,22.784,22.352,22.130,21.909,21.610,21.235,20.833,20.475,20.127,19.680,
-19.205,19.043,19.408,19.955,20.033,19.410,18.524,17.921,17.647,17.370,16.923,16.478,16.210,16.057,15.870,15.636,
-15.427,15.220,14.906,14.438,13.907,13.456,13.181,13.067,12.998,12.818,12.473,12.073,11.776,11.603,11.436,11.201,
-10.982,10.888,10.889,10.859,10.774,10.736,10.793,10.813,10.647,10.337,10.066,9.923,9.808,9.606,9.332,9.061,
-8.797,8.504,8.201,7.935,7.689,7.423,7.194,7.130,7.237,7.357,7.372,7.348,7.402,7.495,7.493,7.370,
-7.229,7.136,7.066,7.040,7.167,7.470,7.777,7.894,7.826,7.736,7.707,7.677,7.593,7.521,7.544,7.638,
-7.725,7.775,7.810,7.842,7.871,7.936,8.102,8.366,8.640,8.840,8.945,8.970,8.924,8.868,8.960,9.325,
-9.834,10.104,9.864,9.314,9.012,9.316,9.984,10.430,10.337,9.919,9.589,9.519,9.574,9.594,9.563,9.539,
-9.522,9.449,9.274,9.000,8.691,8.431,8.265,8.149,8.002,7.812,7.634,7.491,7.348,7.192,7.063,6.955,
-6.763,6.426,6.049,5.795,5.672,5.545,5.353,5.190,5.127,5.083,4.942,4.720,4.525,4.406,4.329,4.279,
-4.274,4.283,4.216,4.039,3.823,3.641,3.473,3.260,2.977,2.634,2.228,1.768,1.305,.890,.518,.136,
--.286,-.737,-1.206,-1.675,-2.101,-2.437,-2.715,-3.024,-3.406,-3.802,-4.127,-4.365,-4.553,-4.711,-4.841,-4.967,
--5.136,-5.363,-5.631,-5.932,-6.288,-6.696,-7.105,-7.465,-7.779,-8.078,-8.365,-8.629,-8.885,-9.175,-9.515,-9.878,
--10.252,-10.660,-11.117,-11.574,-11.968,-12.301,-12.640,-13.029,-13.441,-13.843,-14.253,-14.702,-15.152,-15.529,-15.828,-16.124,
--16.477,-16.862,-17.237,-17.619,-18.048,-18.506,-18.942,-19.362,-19.829,-20.351,-20.854,-21.289,-21.705,-22.165,-22.648,-23.078,
--23.448,-23.815,-24.199,-24.557,-24.876,-25.219,-25.649,-26.133,-26.595,-27.014,-27.436,-27.888,-28.345,-28.777,-29.199,-29.653,
--30.163,-30.720,-31.292,-31.842,-32.345,-32.809,-33.263,-33.722,-34.180,-34.626,-35.058,-35.476,-35.883,-36.294,-36.731,-37.196,
--37.656,-38.076,-38.446,-38.774,-39.070,-39.360,-39.679,-40.036,-40.390,-40.699,-40.978,-41.281,-41.620,-41.941,-42.187,-42.367,
--42.530,-42.710,-42.903,-43.106,-43.332,-43.592,-43.863,-44.108,-44.318,-44.513,-44.710,-44.886,-45.000,-45.059,-45.126,-45.256,
--45.425,-45.563,-45.639,-45.687,-45.735,-45.766,-45.763,-45.753,-45.760,-45.745,-45.650,-45.476,-45.287,-45.116,-44.939,-44.733,
--44.529,-44.364,-44.238,-44.123,-43.996,-43.845,-43.654,-43.430,-43.181,-42.879,-42.457,-41.910,-41.340,-40.859,-40.464,-40.063,
--39.620,-39.188,-38.808,-38.448,-38.057,-37.620,-37.129,-36.569,-35.967,-35.398,-34.909,-34.464,-34.027,-33.626,-33.275,-32.890,
--32.369,-31.736,-31.113,-30.569,-30.092,-29.693,-29.408,-29.162,-28.757,-28.081,-27.241,-26.421,-25.673,-24.952,-24.268,-23.673,
--23.130,-22.540,-21.900,-21.312,-20.816,-20.341,-19.844,-19.389,-19.009,-18.607,-18.092,-17.532,-17.062,-16.700,-16.363,-16.032,
--15.788,-15.683,-15.677,-15.703,-15.700,-15.575,-15.234,-14.658,-13.882,-12.882,-11.634,-10.267,-9.030,-8.000,-6.994,-5.852,
--4.670,-3.590,-2.498,-1.203,.051,.526,-.381,-2.521,-5.057,-7.037,-7.925,-7.773,-7.108,-6.540,-6.286,-6.046,
--5.419,-4.401,-3.367,-2.626,-2.193,-2.010,-2.128,-2.563,-3.117,-3.543,-3.797,-3.971,-4.019,-3.750,-3.114,-2.334,
--1.701,-1.348,-1.293,-1.575,-2.209,-3.060,-3.871,-4.445,-4.723,-4.730,-4.514,-4.168,-3.787,-3.392,-2.932,-2.441,
--2.110,-2.111,-2.383,-2.667,-2.785,-2.799,-2.861,-2.986,-3.054,-3.022,-2.995,-3.095,-3.327,-3.629,-3.974,-4.354,
--4.704,-4.966,-5.209,-5.572,-6.073,-6.584,-7.054,-7.635,-8.464,-9.401,-10.152,-10.633,-11.073,-11.707,-12.496,-13.239,
--13.825,-14.274,-14.613,-14.876,-15.188,-15.693,-16.365,-17.026,-17.599,-18.215,-18.996,-19.849,-20.624,-21.372,-22.296,-23.428,
--24.497,-25.214,-25.573,-25.828,-26.193,-26.660,-27.092,-27.439,-27.820,-28.397,-29.180,-30.001,-30.694,-31.270,-31.874,-32.563,
--33.251,-33.865,-34.470,-35.151,-35.869,-36.531,-37.160,-37.862,-38.638,-39.334,-39.829,-40.170,-40.479,-40.816,-41.174,-41.541,
--41.885,-42.168,-42.417,-42.725,-43.073,-43.217,-42.912,-42.251,-41.649,-41.451,-41.611,-41.799,-41.754,-41.492,-41.198,-41.003,
--40.898,-40.994,-41.904,-44.613,-49.541,-55.594,-60.480,-62.386,-61.395,-59.101,-56.937,-55.168,-53.407,-51.601,-50.122,-49.156,
--48.432,-47.643,-46.844,-46.303,-46.129,-46.175,-46.260,-46.347,-46.509,-46.788,-47.085,-47.210,-47.049,-46.669,-46.221,-45.771,
--45.288,-44.780,-44.321,-43.911,-43.428,-42.795,-42.129,-41.595,-41.181,-40.728,-40.160,-39.567,-39.036,-38.528,-37.953,-37.285,
--36.551,-35.775,-35.008,-34.334,-33.766,-33.187,-32.470,-31.640,-30.836,-30.119,-29.396,-28.573,-27.718,-27.008,-26.554,-26.304,
--26.101,-25.812,-25.406,-24.948,-24.522,-24.144,-23.759,-23.316,-22.834,-22.375,-21.978,-21.624,-21.266,-20.867,-20.418,-19.937,
--19.447,-18.954,-18.436,-17.872,-17.274,-16.673,-16.094,-15.536,-14.986,-14.429,-13.847,-13.237,-12.624,-12.034,-11.449,-10.818,
--10.122,-9.390,-8.651,-7.888,-7.079,-6.277,-5.575,-4.999,-4.478,-3.924,-3.327,-2.721,-2.104,-1.442,-.721,.032,
-.802,1.593,2.381,3.119,3.794,4.459,5.146,5.822,6.450,7.064,7.713,8.366,8.952,9.488,10.063,10.707,
-11.347,11.938,12.523,13.134,13.699,14.175,14.666,15.291,15.989,16.592,17.081,17.597,18.188,18.711,19.098,19.527,
-20.196,21.067,22.006,23.032,24.123,24.861,24.713,23.900,23.662,25.182,28.186,30.909,31.598,29.998,27.331,25.075,
-23.907,23.649,23.839,24.172,24.533,24.878,25.178,25.440,25.685,25.897,26.038,26.112,26.202,26.395,26.694,27.025,
-27.359,27.807,28.541,29.565,30.572,31.094,30.916,30.371,30.124,30.538,31.284,31.726,31.694,31.729,32.426,33.649,
-34.552,34.373,33.088,31.302,29.679,28.533,27.838,27.418,27.133,26.974,27.025,27.315,27.717,28.026,28.136,28.085,
-27.977,27.901,27.917,28.016,28.089,28.021,27.835,27.690,27.688,27.762,27.794,27.771,27.763,27.796,27.848,27.931,
-28.077,28.238,28.304,28.256,28.225,28.336,28.551,28.728,28.793,28.779,28.733,28.662,28.569,28.475,28.375,28.222,
-27.992,27.724,27.456,27.153,26.724,26.131,25.459,24.875,24.140,23.702,23.497,23.406,23.332,23.298,23.417,23.750,
-24.188,24.478,24.383,23.856,23.071,22.310,21.780,21.525,21.466,21.508,21.582,21.631,21.613,21.519,21.362,21.134,
-20.819,20.480,20.274,20.306,20.505,20.684,20.751,20.780,20.876,21.043,21.196,21.278,21.291,21.261,21.203,21.101,
-20.885,20.475,19.893,19.298,18.831,18.459,18.044,17.577,17.222,17.099,17.096,16.995,16.707,16.324,15.962,15.662,
-15.413,15.181,14.903,14.532,14.118,13.768,13.517,13.289,13.041,12.836,12.720,12.589,12.295,11.847,11.407,11.090,
-10.872,10.699,10.580,10.516,10.453,10.397,10.499,10.863,11.305,11.466,11.217,10.828,10.654,10.758,10.954,11.161,
-11.496,11.994,12.408,12.449,12.146,11.801,11.601,11.427,11.097,10.654,10.296,10.089,9.907,9.631,9.295,8.992,
-8.755,8.582,8.494,8.479,8.437,8.263,7.975,7.683,7.436,7.183,6.878,6.546,6.216,5.871,5.513,5.223,
-5.088,5.085,5.080,4.935,4.607,4.157,3.700,3.334,3.059,2.800,2.530,2.343,2.337,2.448,2.464,2.240,
-1.846,1.474,1.243,1.111,.960,.722,.453,.279,.268,.347,.400,.414,.481,.648,.860,1.083,
-1.353,1.602,1.520,.773,-.581,-2.023,-2.984,-3.310,-3.289,-3.300,-3.500,-3.803,-4.078,-4.317,-4.613,-5.000,
--5.370,-5.612,-5.763,-5.918,-5.987,-5.729,-5.117,-4.548,-4.542,-5.253,-6.391,-7.573,-8.618,-9.524,-10.331,-11.078,
--11.807,-12.523,-13.226,-13.979,-14.846,-15.744,-16.468,-16.952,-17.389,-17.970,-18.610,-19.070,-19.302,-19.518,-19.923,-20.500,
--21.086,-21.557,-21.906,-22.238,-22.699,-23.357,-24.133,-24.930,-25.776,-26.722,-27.637,-28.290,-28.683,-29.094,-29.705,-30.364,
--30.876,-31.338,-31.968,-32.722,-33.372,-33.898,-34.526,-35.345,-36.154,-36.814,-37.493,-38.411,-39.512,-40.574,-41.543,-42.566,
--43.759,-45.062,-46.238,-46.950,-47.022,-46.860,-47.439,-49.462,-52.462,-55.052,-56.230,-56.219,-55.936,-55.917,-56.056,-56.172,
--56.370,-56.801,-57.401,-58.023,-58.671,-59.424,-60.238,-61.000,-61.704,-62.441,-63.230,-63.978,-64.629,-65.252,-65.936,-66.661,
--67.349,-68.001,-68.712,-69.556,-70.499,-71.453,-72.378,-73.265,-74.046,-74.606,-74.926,-75.150,-75.460,-75.912,-76.461,-77.097,
--77.830,-78.584,-79.199,-79.606,-79.894,-80.163,-80.399,-80.519,-80.491,-80.316,-80.019,-79.742,-79.735,-80.087,-80.507,-80.561,
--80.160,-79.687,-79.578,-79.897,-80.389,-80.793,-81.012,-81.091,-81.181,-81.485,-82.063,-82.724,-83.222,-83.544,-83.879,-84.284,
--84.564,-84.551,-84.383,-84.359,-84.568,-84.777,-84.684,-84.189,-83.431,-82.628,-81.942,-81.439,-81.124,-80.992,-81.067,-81.379,
--81.912,-82.576,-83.230,-83.737,-84.028,-84.115,-84.036,-83.799,-83.393,-82.857,-82.288,-81.746,-81.195,-80.565,-79.826,-78.994,
--78.091,-77.175,-76.349,-75.670,-75.051,-74.344,-73.510,-72.639,-71.792,-70.919,-69.969,-68.995,-68.078,-67.194,-66.236,-65.169,
--64.080,-63.096,-62.270,-61.577,-60.969,-60.435,-60.015,-59.741,-59.619,-59.687,-60.056,-60.735,-61.373,-61.351,-60.283,-58.409,
--56.348,-54.519,-52.979,-51.699,-50.713,-49.910,-48.993,-47.887,-46.961,-46.532,-46.269,-45.443,-43.839,-42.090,-40.936,-40.403,
--39.928,-39.131,-38.166,-37.346,-36.752,-36.288,-35.904,-35.569,-35.141,-34.459,-33.575,-32.733,-32.094,-31.592,-31.113,-30.707,
--30.512,-30.498,-30.430,-30.115,-29.583,-28.973,-28.335,-27.622,-26.825,-26.002,-25.179,-24.329,-23.453,-22.576,-21.656,-20.585,
--19.343,-18.040,-16.761,-15.492,-14.269,-13.276,-12.639,-12.215,-11.745,-11.152,-10.519,-9.846,-9.048,-8.205,-7.537,-7.026,
--6.312,-5.130,-3.669,-2.306,-1.119,.089,1.393,2.637,3.717,4.705,5.648,6.480,7.226,8.122,9.419,11.143,
-13.080,14.860,16.045,16.412,16.279,16.369,17.156,18.448,19.750,20.871,21.964,23.140,24.317,25.428,26.515,27.615,
-28.715,29.756,30.532,30.789,30.801,31.642,34.241,38.008,41.033,42.052,41.788,41.832,42.621,43.143,42.420,40.473,
-37.840,35.011,32.712,31.974,33.232,35.657,37.962,39.726,41.375,43.066,44.278,44.626,44.490,44.488,44.715,44.833,
-44.695,44.497,44.455,44.604,44.895,45.238,45.459,45.438,45.276,45.197,45.267,45.377,45.472,45.621,45.843,46.021,
-46.067,46.033,46.005,45.999,46.015,46.090,46.230,46.355,46.409,46.422,46.434,46.428,46.421,46.508,46.727,46.972,
-47.162,47.403,47.831,48.336,48.649,48.691,48.686,48.851,49.134,49.351,49.457,49.564,49.750,49.982,50.209,50.432,
-50.658,50.869,51.036,51.125,51.111,51.024,50.965,51.022,51.165,51.302,51.404,51.513,51.634,51.693,51.650,51.567,
-51.536,51.608,51.843,52.316,52.964,53.516,53.714,53.640,53.655,53.931,54.195,54.078,53.682,53.529,53.819,53.885,
-52.657,49.759,45.951,42.382,39.536,37.202,35.392,34.829,36.164,38.893,41.515,42.900,43.177,43.142,43.140,42.916,
-42.363,41.819,41.512,41.180,40.585,40.085,40.223,40.841,41.066,40.306,38.888,37.567,36.715,36.212,35.845,35.451,
-34.886,34.270,34.175,35.044,36.304,36.578,35.119,32.736,30.915,30.240,30.124,29.911,29.643,29.614,29.702,29.564,
-29.188,28.838,28.567,28.171,27.642,27.323,27.482,27.929,28.153,27.750,26.710,25.449,24.575,24.384,24.514,24.316,
-23.705,23.382,23.970,25.099,25.701,25.188,24.026,23.086,22.724,22.653,22.470,22.048,21.505,21.028,20.730,20.551,
-20.312,19.949,19.633,19.552,19.596,19.455,19.020,18.507,18.140,17.866,17.500,17.025,16.590,16.283,16.054,15.849,
-15.694,15.599,15.486,15.242,14.822,14.272,13.724,13.346,13.220,13.229,13.125,12.786,12.348,12.051,11.968,11.955,
-11.844,11.614,11.353,11.152,11.062,11.105,11.244,11.349,11.268,10.976,10.620,10.371,10.245,10.121,9.898,9.598,
-9.291,9.001,8.726,8.483,8.276,8.045,7.741,7.448,7.321,7.384,7.482,7.479,7.428,7.456,7.558,7.618,
-7.604,7.601,7.643,7.643,7.557,7.496,7.572,7.712,7.739,7.623,7.518,7.543,7.633,7.660,7.607,7.560,
-7.574,7.619,7.649,7.657,7.657,7.679,7.783,8.022,8.344,8.589,8.648,8.609,8.676,8.920,9.211,9.426,
-9.648,10.010,10.377,10.383,9.901,9.334,9.255,9.751,10.315,10.419,10.059,9.638,9.456,9.469,9.509,9.530,
-9.576,9.638,9.636,9.504,9.252,8.942,8.656,8.447,8.295,8.140,7.961,7.787,7.627,7.448,7.249,7.086,
-6.974,6.807,6.498,6.127,5.860,5.725,5.589,5.368,5.146,5.017,4.924,4.748,4.495,4.286,4.193,4.174,
-4.165,4.146,4.089,3.948,3.726,3.501,3.334,3.191,2.988,2.688,2.308,1.878,1.436,1.029,.681,.352,
--.018,-.439,-.864,-1.262,-1.643,-2.020,-2.394,-2.771,-3.162,-3.550,-3.886,-4.144,-4.345,-4.512,-4.640,-4.732,
--4.833,-4.994,-5.222,-5.488,-5.786,-6.133,-6.519,-6.897,-7.233,-7.540,-7.840,-8.129,-8.401,-8.681,-8.996,-9.339,
--9.687,-10.049,-10.461,-10.916,-11.347,-11.696,-11.992,-12.318,-12.706,-13.116,-13.508,-13.903,-14.334,-14.776,-15.164,-15.481,
--15.789,-16.146,-16.545,-16.952,-17.367,-17.804,-18.248,-18.666,-19.074,-19.522,-20.007,-20.459,-20.831,-21.169,-21.542,-21.949,
--22.335,-22.688,-23.049,-23.431,-23.800,-24.150,-24.545,-25.040,-25.592,-26.108,-26.558,-27.001,-27.485,-27.987,-28.466,-28.922,
--29.395,-29.909,-30.454,-31.012,-31.572,-32.121,-32.641,-33.123,-33.578,-34.022,-34.465,-34.900,-35.320,-35.730,-36.143,-36.571,
--37.013,-37.456,-37.883,-38.274,-38.615,-38.913,-39.208,-39.546,-39.929,-40.305,-40.623,-40.888,-41.150,-41.440,-41.737,-41.995,
--42.195,-42.361,-42.533,-42.731,-42.953,-43.185,-43.426,-43.676,-43.928,-44.167,-44.390,-44.592,-44.753,-44.853,-44.911,-44.993,
--45.141,-45.325,-45.478,-45.581,-45.662,-45.729,-45.749,-45.716,-45.674,-45.658,-45.623,-45.503,-45.302,-45.088,-44.914,-44.771,
--44.635,-44.501,-44.367,-44.224,-44.065,-43.886,-43.680,-43.438,-43.177,-42.908,-42.582,-42.133,-41.574,-41.022,-40.565,-40.171,
--39.759,-39.329,-38.946,-38.619,-38.284,-37.895,-37.466,-36.997,-36.471,-35.908,-35.384,-34.925,-34.476,-34.007,-33.572,-33.203,
--32.815,-32.303,-31.700,-31.127,-30.638,-30.203,-29.820,-29.516,-29.218,-28.757,-28.063,-27.261,-26.494,-25.759,-24.991,-24.227,
--23.556,-22.967,-22.370,-21.760,-21.217,-20.755,-20.295,-19.805,-19.345,-18.925,-18.441,-17.843,-17.241,-16.758,-16.352,-15.899,
--15.399,-14.978,-14.719,-14.596,-14.560,-14.582,-14.594,-14.505,-14.293,-13.990,-13.561,-12.900,-11.996,-10.977,-9.944,-8.866,
--7.707,-6.530,-5.362,-4.066,-2.562,-1.185,-.621,-1.400,-3.420,-5.921,-7.851,-8.415,-7.602,-6.280,-5.554,-5.789,
--6.303,-6.143,-5.060,-3.619,-2.494,-1.889,-1.636,-1.542,-1.508,-1.506,-1.619,-2.006,-2.647,-3.183,-3.182,-2.604,
--1.857,-1.374,-1.252,-1.331,-1.492,-1.772,-2.216,-2.730,-3.105,-3.147,-2.812,-2.258,-1.735,-1.379,-1.115,-.806,
--.477,-.319,-.454,-.763,-1.011,-1.110,-1.181,-1.365,-1.643,-1.896,-2.066,-2.211,-2.394,-2.630,-2.917,-3.259,
--3.611,-3.891,-4.122,-4.484,-5.112,-5.860,-6.429,-6.761,-7.157,-7.889,-8.826,-9.616,-10.162,-10.702,-11.414,-12.161,
--12.732,-13.157,-13.610,-14.114,-14.551,-14.928,-15.427,-16.128,-16.872,-17.485,-18.013,-18.617,-19.330,-20.069,-20.833,-21.722,
--22.735,-23.667,-24.291,-24.594,-24.789,-25.125,-25.698,-26.402,-27.042,-27.525,-27.961,-28.528,-29.246,-29.951,-30.504,-30.963,
--31.468,-32.055,-32.662,-33.268,-33.913,-34.597,-35.268,-35.932,-36.669,-37.483,-38.249,-38.841,-39.281,-39.670,-40.050,-40.405,
--40.739,-41.086,-41.446,-41.798,-42.138,-42.429,-42.515,-42.223,-41.603,-40.994,-40.765,-40.984,-41.374,-41.595,-41.547,-41.368,
--41.163,-40.833,-40.387,-40.491,-42.406,-46.912,-53.116,-58.635,-61.322,-60.887,-58.753,-56.497,-54.690,-53.127,-51.653,-50.402,
--49.441,-48.574,-47.622,-46.690,-46.050,-45.821,-45.863,-45.961,-46.043,-46.212,-46.565,-47.005,-47.286,-47.245,-46.951,-46.561,
--46.129,-45.627,-45.098,-44.635,-44.210,-43.689,-43.052,-42.460,-42.021,-41.616,-41.079,-40.450,-39.910,-39.504,-39.077,-38.492,
--37.762,-36.952,-36.085,-35.219,-34.479,-33.923,-33.423,-32.798,-32.026,-31.230,-30.483,-29.729,-28.905,-28.075,-27.383,-26.918,
--26.637,-26.406,-26.098,-25.684,-25.234,-24.831,-24.472,-24.084,-23.624,-23.128,-22.657,-22.237,-21.856,-21.492,-21.119,-20.704,
--20.237,-19.740,-19.236,-18.713,-18.158,-17.581,-17.011,-16.454,-15.901,-15.349,-14.792,-14.212,-13.598,-12.981,-12.404,-11.850,
--11.252,-10.578,-9.864,-9.140,-8.370,-7.524,-6.674,-5.950,-5.400,-4.934,-4.428,-3.848,-3.228,-2.593,-1.930,-1.230,
--.501,.255,1.041,1.824,2.550,3.209,3.853,4.522,5.191,5.822,6.437,7.072,7.711,8.306,8.867,9.461,
-10.109,10.760,11.380,11.998,12.627,13.218,13.754,14.319,14.989,15.706,16.343,16.886,17.414,17.944,18.405,18.804,
-19.244,19.744,20.199,20.619,21.213,22.034,22.684,22.758,22.615,23.338,25.616,28.758,31.100,31.399,29.766,27.310,
-25.145,23.793,23.242,23.260,23.584,24.002,24.384,24.699,24.978,25.252,25.508,25.703,25.823,25.945,26.194,26.610,
-27.106,27.592,28.118,28.829,29.723,30.513,30.820,30.544,30.052,29.904,30.341,31.056,31.536,31.642,31.752,32.300,
-33.221,33.954,33.957,33.129,31.784,30.338,29.097,28.203,27.665,27.415,27.389,27.558,27.857,28.162,28.363,28.462,
-28.525,28.575,28.594,28.595,28.598,28.552,28.380,28.120,27.929,27.894,27.935,27.939,27.911,27.911,27.910,27.843,
-27.766,27.816,27.996,28.130,28.090,27.983,28.018,28.246,28.526,28.712,28.780,28.771,28.712,28.613,28.494,28.351,
-28.147,27.866,27.545,27.221,26.847,26.322,25.611,24.820,24.140,23.516,23.097,22.893,22.821,22.800,22.820,22.955,
-23.271,23.695,23.997,23.937,23.469,22.792,22.179,21.762,21.494,21.292,21.158,21.144,21.237,21.334,21.338,21.214,
-20.954,20.568,20.142,19.846,19.805,19.969,20.163,20.276,20.339,20.423,20.523,20.597,20.644,20.695,20.745,20.744,
-20.641,20.403,20.013,19.511,19.003,18.568,18.159,17.667,17.100,16.634,16.425,16.427,16.440,16.305,16.011,15.652,
-15.345,15.157,15.042,14.855,14.496,14.048,13.684,13.462,13.280,13.057,12.850,12.714,12.554,12.224,11.745,11.301,
-11.012,10.826,10.658,10.524,10.457,10.424,10.404,10.497,10.787,11.130,11.220,10.940,10.526,10.315,10.399,10.643,
-10.963,11.401,11.920,12.274,12.240,11.900,11.546,11.319,11.077,10.661,10.163,9.823,9.720,9.677,9.487,9.133,
-8.752,8.480,8.363,8.353,8.337,8.193,7.890,7.518,7.183,6.887,6.576,6.256,5.992,5.785,5.541,5.205,
-4.865,4.670,4.657,4.697,4.599,4.250,3.712,3.189,2.858,2.697,2.524,2.238,1.965,1.878,1.935,1.910,
-1.682,1.369,1.138,.990,.797,.502,.178,-.073,-.217,-.268,-.244,-.137,.064,.324,.557,.737,
-1.012,1.573,2.308,2.650,1.990,.307,-1.696,-3.163,-3.755,-3.774,-3.732,-3.905,-4.249,-4.600,-4.883,-5.140,
--5.422,-5.711,-5.989,-6.295,-6.608,-6.692,-6.246,-5.315,-4.439,-4.247,-4.913,-6.121,-7.460,-8.718,-9.810,-10.668,
--11.313,-11.902,-12.571,-13.304,-14.020,-14.710,-15.390,-15.996,-16.453,-16.815,-17.216,-17.684,-18.111,-18.424,-18.706,-19.114,
--19.722,-20.458,-21.154,-21.683,-22.087,-22.550,-23.182,-23.908,-24.638,-25.462,-26.498,-27.604,-28.447,-28.931,-29.322,-29.874,
--30.520,-31.085,-31.615,-32.268,-32.992,-33.599,-34.104,-34.723,-35.515,-36.287,-36.928,-37.606,-38.505,-39.563,-40.628,-41.701,
--42.858,-44.063,-45.221,-46.301,-47.248,-47.927,-48.410,-49.214,-50.864,-53.160,-55.182,-56.186,-56.298,-56.163,-56.175,-56.294,
--56.447,-56.742,-57.255,-57.881,-58.508,-59.175,-59.954,-60.790,-61.573,-62.300,-63.049,-63.833,-64.588,-65.277,-65.943,-66.632,
--67.339,-68.029,-68.702,-69.399,-70.163,-70.997,-71.867,-72.742,-73.606,-74.426,-75.134,-75.678,-76.086,-76.448,-76.851,-77.339,
--77.932,-78.599,-79.235,-79.725,-80.058,-80.335,-80.643,-80.976,-81.284,-81.503,-81.517,-81.228,-80.761,-80.482,-80.652,-81.085,
--81.316,-81.121,-80.738,-80.541,-80.656,-80.952,-81.262,-81.495,-81.643,-81.806,-82.153,-82.744,-83.410,-83.937,-84.325,-84.739,
--85.217,-85.586,-85.715,-85.719,-85.791,-85.926,-85.905,-85.541,-84.866,-84.077,-83.377,-82.877,-82.585,-82.473,-82.532,-82.779,
--83.185,-83.654,-84.075,-84.397,-84.615,-84.728,-84.723,-84.573,-84.246,-83.729,-83.091,-82.475,-81.962,-81.473,-80.863,-80.086,
--79.224,-78.364,-77.529,-76.730,-76.001,-75.326,-74.614,-73.792,-72.880,-71.947,-71.030,-70.135,-69.280,-68.452,-67.565,-66.520,
--65.331,-64.143,-63.113,-62.287,-61.606,-60.996,-60.450,-60.022,-59.757,-59.670,-59.816,-60.306,-61.105,-61.796,-61.717,-60.507,
--58.470,-56.276,-54.367,-52.783,-51.472,-50.456,-49.628,-48.697,-47.558,-46.525,-45.915,-45.490,-44.655,-43.240,-41.773,-40.827,
--40.329,-39.749,-38.818,-37.787,-36.995,-36.469,-36.030,-35.592,-35.175,-34.732,-34.141,-33.396,-32.652,-32.046,-31.560,-31.117,
--30.745,-30.524,-30.410,-30.217,-29.825,-29.298,-28.755,-28.201,-27.550,-26.780,-25.943,-25.066,-24.139,-23.189,-22.253,-21.277,
--20.163,-18.956,-17.815,-16.746,-15.534,-14.073,-12.637,-11.621,-11.073,-10.686,-10.203,-9.612,-8.964,-8.244,-7.496,-6.842,
--6.228,-5.369,-4.106,-2.668,-1.387,-.279,.862,2.075,3.192,4.158,5.099,6.063,6.943,7.757,8.779,10.266,
-12.144,14.064,15.618,16.513,16.745,16.729,17.071,18.028,19.307,20.509,21.589,22.721,23.913,25.043,26.125,27.253,
-28.390,29.452,30.475,31.349,31.649,31.339,31.548,33.763,37.831,41.519,42.784,42.074,41.563,42.312,43.114,42.257,
-39.549,36.181,33.349,31.689,31.574,33.056,35.485,37.843,39.648,41.160,42.618,43.759,44.279,44.391,44.555,44.876,
-45.084,45.020,44.860,44.851,45.058,45.385,45.696,45.877,45.899,45.860,45.875,45.943,45.983,45.986,46.033,46.161,
-46.310,46.422,46.501,46.553,46.558,46.540,46.574,46.698,46.865,47.004,47.081,47.075,47.007,46.980,47.121,47.417,
-47.713,47.926,48.160,48.513,48.870,49.033,49.018,49.046,49.247,49.503,49.656,49.728,49.856,50.085,50.333,50.537,
-50.726,50.950,51.184,51.343,51.373,51.307,51.248,51.264,51.333,51.390,51.433,51.524,51.665,51.754,51.717,51.614,
-51.558,51.565,51.614,51.804,52.290,53.009,53.616,53.844,53.844,53.993,54.362,54.581,54.348,53.936,53.904,54.264,
-54.140,52.505,49.254,45.350,41.870,39.115,36.872,35.335,35.297,37.170,40.097,42.485,43.442,43.433,43.428,43.717,
-43.847,43.471,42.801,42.168,41.574,40.961,40.643,41.020,41.872,42.323,41.696,40.196,38.610,37.499,36.847,36.327,
-35.668,34.889,34.431,34.953,36.591,38.341,38.612,36.746,33.787,31.450,30.464,30.243,30.006,29.674,29.546,29.605,
-29.570,29.385,29.234,29.122,28.814,28.263,27.838,27.946,28.534,29.055,28.881,27.802,26.265,25.109,24.835,25.065,
-24.973,24.343,23.923,24.455,25.582,26.124,25.429,24.069,23.077,22.830,22.896,22.744,22.281,21.741,21.342,21.132,
-21.012,20.815,20.439,19.943,19.476,19.120,18.848,18.619,18.416,18.188,17.864,17.453,17.057,16.738,16.456,16.175,
-15.947,15.825,15.764,15.669,15.492,15.211,14.781,14.223,13.711,13.432,13.354,13.237,12.927,12.544,12.313,12.289,
-12.316,12.211,11.915,11.513,11.174,11.070,11.250,11.568,11.764,11.671,11.338,10.952,10.667,10.498,10.364,10.186,
-9.939,9.647,9.350,9.085,8.867,8.666,8.415,8.085,7.755,7.556,7.525,7.554,7.536,7.494,7.516,7.600,
-7.669,7.719,7.832,8.008,8.087,7.944,7.677,7.507,7.498,7.504,7.411,7.308,7.352,7.545,7.720,7.750,
-7.670,7.600,7.599,7.634,7.649,7.639,7.663,7.822,8.169,8.609,8.918,8.942,8.798,8.792,9.084,9.498,
-9.774,9.927,10.196,10.606,10.796,10.458,9.831,9.518,9.786,10.263,10.423,10.185,9.880,9.747,9.700,9.588,
-9.452,9.441,9.570,9.697,9.684,9.497,9.192,8.859,8.578,8.373,8.203,8.032,7.865,7.707,7.524,7.303,
-7.097,6.943,6.773,6.500,6.166,5.915,5.793,5.684,5.484,5.241,5.050,4.893,4.673,4.387,4.146,4.033,
-4.017,4.012,3.965,3.852,3.664,3.434,3.233,3.090,2.945,2.711,2.363,1.945,1.520,1.137,.815,.530,
-.213,-.183,-.626,-1.033,-1.369,-1.679,-2.029,-2.442,-2.889,-3.313,-3.664,-3.924,-4.124,-4.299,-4.445,-4.540,
--4.604,-4.704,-4.886,-5.130,-5.399,-5.690,-6.018,-6.362,-6.684,-6.980,-7.279,-7.590,-7.888,-8.164,-8.447,-8.762,
--9.098,-9.437,-9.799,-10.214,-10.657,-11.059,-11.383,-11.669,-11.989,-12.375,-12.798,-13.224,-13.653,-14.096,-14.533,-14.925,
--15.263,-15.586,-15.935,-16.314,-16.699,-17.082,-17.470,-17.858,-18.227,-18.581,-18.956,-19.360,-19.753,-20.095,-20.399,-20.712,
--21.055,-21.419,-21.805,-22.233,-22.693,-23.146,-23.591,-24.082,-24.658,-25.265,-25.806,-26.261,-26.702,-27.190,-27.709,-28.209,
--28.683,-29.166,-29.679,-30.210,-30.749,-31.300,-31.856,-32.384,-32.862,-33.310,-33.769,-34.250,-34.730,-35.184,-35.616,-36.042,
--36.469,-36.897,-37.325,-37.748,-38.143,-38.486,-38.787,-39.094,-39.444,-39.822,-40.181,-40.484,-40.738,-40.973,-41.220,-41.485,
--41.748,-41.980,-42.171,-42.351,-42.556,-42.792,-43.034,-43.264,-43.497,-43.755,-44.026,-44.280,-44.483,-44.619,-44.698,-44.764,
--44.872,-45.033,-45.200,-45.322,-45.409,-45.497,-45.579,-45.608,-45.571,-45.517,-45.480,-45.424,-45.291,-45.089,-44.886,-44.730,
--44.615,-44.514,-44.402,-44.259,-44.082,-43.890,-43.696,-43.483,-43.230,-42.948,-42.653,-42.308,-41.860,-41.334,-40.829,-40.400,
--39.994,-39.559,-39.134,-38.779,-38.464,-38.105,-37.681,-37.243,-36.803,-36.319,-35.794,-35.301,-34.867,-34.433,-33.961,-33.498,
--33.087,-32.675,-32.192,-31.670,-31.191,-30.763,-30.338,-29.929,-29.579,-29.222,-28.707,-27.995,-27.224,-26.514,-25.822,-25.060,
--24.263,-23.531,-22.879,-22.259,-21.680,-21.186,-20.741,-20.254,-19.724,-19.233,-18.783,-18.267,-17.657,-17.074,-16.615,-16.196,
--15.682,-15.094,-14.566,-14.165,-13.855,-13.610,-13.435,-13.285,-13.098,-12.912,-12.840,-12.873,-12.837,-12.568,-12.071,-11.440,
--10.715,-9.885,-8.943,-7.868,-6.630,-5.329,-4.294,-3.938,-4.504,-5.894,-7.617,-8.833,-8.718,-7.173,-5.188,-4.179,
--4.704,-5.949,-6.581,-5.998,-4.617,-3.163,-1.988,-1.063,-.286,.353,.755,.728,.140,-.811,-1.577,-1.711,
--1.308,-.897,-.872,-1.139,-1.333,-1.255,-1.031,-.911,-.990,-1.111,-1.005,-.560,.043,.479,.603,.580,
-.672,.930,1.177,1.242,1.134,.958,.733,.387,-.113,-.682,-1.198,-1.607,-1.920,-2.154,-2.333,-2.519,
--2.764,-3.026,-3.231,-3.449,-3.910,-4.712,-5.599,-6.188,-6.438,-6.731,-7.388,-8.271,-9.020,-9.560,-10.141,-10.892,
--11.611,-12.097,-12.488,-13.058,-13.800,-14.453,-14.906,-15.356,-15.998,-16.754,-17.420,-17.963,-18.523,-19.191,-19.926,-20.690,
--21.502,-22.343,-23.082,-23.582,-23.836,-23.989,-24.250,-24.766,-25.513,-26.306,-26.962,-27.494,-28.077,-28.789,-29.480,-29.962,
--30.252,-30.546,-30.986,-31.558,-32.196,-32.880,-33.592,-34.298,-35.001,-35.756,-36.568,-37.338,-37.970,-38.478,-38.937,-39.369,
--39.744,-40.073,-40.418,-40.804,-41.198,-41.548,-41.789,-41.802,-41.484,-40.916,-40.404,-40.262,-40.546,-41.021,-41.403,-41.596,
--41.669,-41.624,-41.316,-40.785,-40.718,-42.330,-46.375,-52.115,-57.465,-60.436,-60.529,-58.741,-56.416,-54.285,-52.485,-51.039,
--50.021,-49.374,-48.851,-48.235,-47.554,-47.016,-46.777,-46.787,-46.861,-46.895,-46.970,-47.211,-47.560,-47.779,-47.707,-47.411,
--47.033,-46.592,-46.051,-45.474,-44.966,-44.493,-43.936,-43.322,-42.821,-42.458,-42.024,-41.369,-40.644,-40.090,-39.702,-39.257,
--38.627,-37.882,-37.100,-36.260,-35.391,-34.634,-34.078,-33.611,-33.046,-32.343,-31.600,-30.878,-30.149,-29.386,-28.637,-27.981,
--27.462,-27.073,-26.760,-26.447,-26.092,-25.716,-25.352,-24.972,-24.523,-24.010,-23.502,-23.043,-22.614,-22.188,-21.771,-21.357,
--20.913,-20.417,-19.899,-19.398,-18.906,-18.397,-17.869,-17.337,-16.800,-16.246,-15.684,-15.120,-14.527,-13.891,-13.258,-12.693,
--12.180,-11.633,-10.996,-10.299,-9.574,-8.795,-7.944,-7.104,-6.410,-5.896,-5.457,-4.959,-4.367,-3.729,-3.084,-2.429,
--1.751,-1.048,-.315,.447,1.212,1.934,2.598,3.241,3.895,4.553,5.192,5.822,6.461,7.099,7.706,8.289,
-8.892,9.531,10.178,10.808,11.433,12.062,12.674,13.269,13.896,14.582,15.287,15.951,16.569,17.150,17.658,18.077,
-18.492,18.989,19.496,19.869,20.154,20.570,21.153,21.641,21.953,22.628,24.388,27.142,29.716,30.791,30.030,28.169,
-26.177,24.564,23.435,22.814,22.713,23.007,23.453,23.863,24.194,24.485,24.774,25.059,25.300,25.475,25.660,26.006,
-26.585,27.289,27.948,28.544,29.196,29.917,30.472,30.568,30.200,29.748,29.673,30.113,30.781,31.285,31.518,31.722,
-32.165,32.827,33.408,33.592,33.232,32.348,31.090,29.741,28.643,28.015,27.843,27.961,28.202,28.451,28.635,28.747,
-28.856,29.013,29.168,29.223,29.172,29.086,28.976,28.782,28.512,28.288,28.204,28.197,28.161,28.087,28.023,27.938,
-27.780,27.623,27.629,27.809,27.957,27.903,27.752,27.766,28.045,28.439,28.740,28.870,28.870,28.791,28.654,28.470,
-28.227,27.895,27.478,27.033,26.604,26.153,25.592,24.892,24.148,23.516,22.986,22.616,22.415,22.387,22.488,22.641,
-22.806,23.015,23.283,23.494,23.457,23.091,22.538,22.027,21.656,21.353,21.047,20.808,20.767,20.927,21.136,21.227,
-21.133,20.859,20.436,19.954,19.580,19.455,19.552,19.711,19.809,19.855,19.909,19.979,20.050,20.136,20.262,20.384,
-20.411,20.297,20.062,19.746,19.371,18.961,18.542,18.091,17.556,16.950,16.403,16.061,15.948,15.947,15.898,15.707,
-15.400,15.100,14.922,14.842,14.695,14.362,13.929,13.592,13.415,13.277,13.071,12.842,12.659,12.456,12.106,11.632,
-11.197,10.903,10.695,10.509,10.382,10.365,10.407,10.438,10.497,10.659,10.842,10.826,10.525,10.132,9.929,10.016,
-10.301,10.694,11.174,11.649,11.917,11.845,11.547,11.256,11.045,10.770,10.317,9.804,9.470,9.391,9.392,9.242,
-8.884,8.465,8.186,8.131,8.198,8.168,7.895,7.432,6.970,6.633,6.369,6.084,5.790,5.575,5.437,5.249,
-4.927,4.551,4.291,4.227,4.265,4.199,3.868,3.309,2.768,2.473,2.388,2.242,1.879,1.463,1.259,1.275,
-1.276,1.117,.903,.772,.672,.459,.130,-.180,-.390,-.550,-.709,-.809,-.739,-.478,-.142,.107,
-.256,.534,1.227,2.253,2.988,2.681,1.154,-.966,-2.761,-3.731,-4.020,-4.089,-4.284,-4.673,-5.135,-5.535,
--5.823,-6.029,-6.222,-6.492,-6.895,-7.327,-7.444,-6.895,-5.754,-4.627,-4.197,-4.678,-5.785,-7.149,-8.553,-9.833,
--10.804,-11.449,-12.005,-12.700,-13.485,-14.152,-14.646,-15.098,-15.577,-15.989,-16.251,-16.455,-16.757,-17.189,-17.646,-18.054,
--18.478,-19.063,-19.865,-20.758,-21.543,-22.161,-22.740,-23.394,-24.084,-24.754,-25.515,-26.503,-27.594,-28.476,-29.044,-29.530,
--30.155,-30.844,-31.434,-31.963,-32.566,-33.200,-33.721,-34.170,-34.738,-35.468,-36.214,-36.919,-37.717,-38.680,-39.704,-40.729,
--41.853,-43.084,-44.210,-45.133,-46.114,-47.428,-48.901,-50.127,-51.098,-52.238,-53.744,-55.207,-56.090,-56.350,-56.365,-56.422,
--56.552,-56.758,-57.131,-57.697,-58.350,-59.007,-59.716,-60.525,-61.370,-62.163,-62.908,-63.660,-64.431,-65.181,-65.894,-66.586,
--67.270,-67.951,-68.640,-69.340,-70.051,-70.785,-71.563,-72.380,-73.207,-74.039,-74.893,-75.738,-76.481,-77.042,-77.454,-77.834,
--78.280,-78.806,-79.351,-79.836,-80.223,-80.537,-80.840,-81.169,-81.539,-81.951,-82.329,-82.467,-82.181,-81.601,-81.189,-81.306,
--81.823,-82.261,-82.311,-82.070,-81.804,-81.653,-81.625,-81.720,-81.913,-82.135,-82.364,-82.694,-83.201,-83.804,-84.359,-84.855,
--85.370,-85.891,-86.302,-86.570,-86.795,-87.012,-87.070,-86.795,-86.211,-85.527,-84.942,-84.527,-84.273,-84.162,-84.200,-84.408,
--84.773,-85.196,-85.522,-85.655,-85.635,-85.559,-85.456,-85.274,-84.961,-84.504,-83.934,-83.333,-82.813,-82.400,-81.956,-81.300,
--80.422,-79.486,-78.627,-77.826,-77.021,-76.233,-75.514,-74.821,-74.035,-73.110,-72.120,-71.173,-70.309,-69.494,-68.641,-67.659,
--66.523,-65.312,-64.165,-63.176,-62.353,-61.657,-61.051,-60.527,-60.102,-59.822,-59.767,-60.037,-60.687,-61.548,-62.137,-61.863,
--60.498,-58.402,-56.208,-54.299,-52.692,-51.328,-50.236,-49.351,-48.427,-47.326,-46.258,-45.492,-44.911,-44.113,-42.959,-41.783,
--40.932,-40.298,-39.505,-38.446,-37.413,-36.699,-36.267,-35.881,-35.418,-34.916,-34.411,-33.850,-33.201,-32.527,-31.920,-31.406,
--30.976,-30.644,-30.410,-30.185,-29.826,-29.303,-28.730,-28.207,-27.686,-27.062,-26.318,-25.513,-24.661,-23.734,-22.760,-21.777,
--20.717,-19.490,-18.214,-17.141,-16.275,-15.239,-13.739,-12.029,-10.678,-9.927,-9.502,-9.053,-8.499,-7.905,-7.272,-6.593,
--5.931,-5.258,-4.377,-3.178,-1.842,-.622,.473,1.593,2.731,3.744,4.632,5.547,6.514,7.404,8.238,9.287,
-10.747,12.463,14.075,15.310,16.088,16.523,16.945,17.710,18.861,20.096,21.187,22.245,23.422,24.625,25.736,26.881,
-28.174,29.401,30.328,31.094,31.819,32.072,31.552,31.309,33.191,37.454,41.728,43.369,42.489,41.578,42.176,43.069,
-42.177,39.242,35.863,33.537,32.610,32.923,34.398,36.679,38.904,40.373,41.168,41.810,42.537,43.214,43.757,44.264,
-44.754,45.089,45.207,45.258,45.408,45.659,45.903,46.077,46.187,46.264,46.334,46.412,46.488,46.538,46.552,46.547,
-46.548,46.588,46.698,46.868,47.024,47.098,47.108,47.139,47.248,47.414,47.563,47.627,47.585,47.517,47.573,47.817,
-48.140,48.383,48.553,48.789,49.121,49.382,49.446,49.420,49.507,49.724,49.907,49.972,50.027,50.204,50.474,50.706,
-50.856,51.008,51.247,51.528,51.706,51.695,51.576,51.517,51.582,51.673,51.684,51.659,51.710,51.823,51.866,51.792,
-51.709,51.700,51.710,51.716,51.892,52.418,53.160,53.732,53.948,54.050,54.350,54.757,54.864,54.527,54.143,54.152,
-54.335,53.797,51.797,48.503,44.807,41.467,38.649,36.385,35.185,35.769,38.105,41.000,42.970,43.520,43.374,43.484,
-44.011,44.400,44.204,43.531,42.730,41.962,41.299,40.997,41.332,42.097,42.542,42.016,40.611,39.029,37.882,37.225,
-36.720,36.083,35.382,35.049,35.583,36.967,38.300,38.285,36.417,33.601,31.345,30.364,30.193,30.081,29.846,29.717,
-29.723,29.662,29.506,29.463,29.558,29.480,28.995,28.345,28.066,28.418,29.062,29.281,28.577,27.172,25.899,25.423,
-25.535,25.463,24.920,24.541,25.008,25.981,26.348,25.524,24.125,23.180,23.003,23.091,22.916,22.466,22.030,21.769,
-21.618,21.441,21.144,20.681,20.067,19.400,18.825,18.462,18.314,18.251,18.099,17.810,17.506,17.294,17.113,16.833,
-16.476,16.198,16.053,15.920,15.715,15.513,15.369,15.160,14.744,14.201,13.759,13.492,13.261,12.965,12.690,12.553,
-12.524,12.469,12.301,12.012,11.639,11.296,11.162,11.338,11.695,11.965,11.969,11.727,11.368,11.016,10.751,10.590,
-10.467,10.281,9.996,9.677,9.396,9.154,8.906,8.627,8.338,8.085,7.906,7.812,7.772,7.740,7.711,7.712,
-7.744,7.785,7.856,8.022,8.252,8.360,8.178,7.794,7.498,7.458,7.542,7.526,7.394,7.346,7.507,7.754,
-7.874,7.815,7.711,7.700,7.770,7.818,7.801,7.800,7.949,8.314,8.812,9.228,9.384,9.302,9.198,9.240,
-9.365,9.415,9.429,9.637,10.090,10.469,10.429,10.072,9.853,10.016,10.320,10.418,10.320,10.280,10.345,10.276,
-9.927,9.498,9.305,9.421,9.652,9.772,9.684,9.411,9.041,8.690,8.433,8.253,8.091,7.927,7.774,7.613,
-7.411,7.190,6.996,6.805,6.550,6.243,5.995,5.867,5.775,5.609,5.372,5.143,4.935,4.681,4.368,4.078,
-3.898,3.820,3.770,3.686,3.543,3.349,3.141,2.969,2.834,2.677,2.431,2.086,1.694,1.314,.981,.689,
-.396,.039,-.400,-.864,-1.267,-1.582,-1.859,-2.175,-2.561,-2.984,-3.373,-3.671,-3.881,-4.051,-4.211,-4.339,
--4.413,-4.472,-4.589,-4.788,-5.033,-5.294,-5.586,-5.918,-6.248,-6.533,-6.793,-7.076,-7.387,-7.685,-7.953,-8.216,
--8.503,-8.815,-9.148,-9.518,-9.927,-10.341,-10.714,-11.041,-11.361,-11.714,-12.117,-12.564,-13.037,-13.512,-13.967,-14.386,
--14.760,-15.090,-15.392,-15.689,-15.992,-16.292,-16.583,-16.877,-17.189,-17.512,-17.832,-18.160,-18.519,-18.910,-19.298,-19.655,
--19.989,-20.335,-20.725,-21.176,-21.685,-22.222,-22.746,-23.257,-23.797,-24.391,-24.989,-25.511,-25.949,-26.373,-26.848,-27.362,
--27.873,-28.374,-28.894,-29.441,-29.989,-30.524,-31.056,-31.589,-32.097,-32.558,-33.002,-33.479,-34.001,-34.529,-35.023,-35.477,
--35.907,-36.325,-36.736,-37.151,-37.563,-37.943,-38.272,-38.580,-38.919,-39.298,-39.671,-39.991,-40.255,-40.493,-40.727,-40.963,
--41.213,-41.479,-41.734,-41.953,-42.152,-42.373,-42.628,-42.885,-43.118,-43.351,-43.623,-43.925,-44.200,-44.396,-44.504,-44.566,
--44.645,-44.779,-44.948,-45.088,-45.168,-45.219,-45.287,-45.358,-45.379,-45.340,-45.287,-45.255,-45.210,-45.108,-44.953,-44.793,
--44.657,-44.542,-44.433,-44.306,-44.140,-43.934,-43.720,-43.518,-43.304,-43.041,-42.740,-42.428,-42.090,-41.685,-41.228,-40.786,
--40.379,-39.954,-39.491,-39.056,-38.703,-38.376,-37.977,-37.512,-37.056,-36.625,-36.155,-35.626,-35.110,-34.662,-34.249,-33.822,
--33.389,-32.967,-32.525,-32.046,-31.580,-31.170,-30.775,-30.336,-29.886,-29.486,-29.083,-28.539,-27.826,-27.072,-26.382,-25.719,
--25.006,-24.265,-23.562,-22.898,-22.252,-21.663,-21.171,-20.710,-20.182,-19.602,-19.067,-18.586,-18.063,-17.478,-16.934,-16.490,
--16.055,-15.529,-14.954,-14.432,-13.971,-13.519,-13.085,-12.714,-12.374,-12.001,-11.664,-11.529,-11.639,-11.830,-11.908,-11.835,
--11.675,-11.445,-11.085,-10.525,-9.751,-8.861,-8.075,-7.627,-7.597,-7.913,-8.503,-9.250,-9.719,-9.208,-7.439,-5.169,
--3.760,-3.950,-5.186,-6.259,-6.407,-5.660,-4.370,-2.765,-.985,.752,2.155,2.961,2.996,2.301,1.276,.523,
-.362,.540,.529,.105,-.460,-.740,-.571,-.130,.283,.498,.599,.824,1.312,1.906,2.273,2.248,
-2.026,1.952,2.174,2.540,2.802,2.823,2.587,2.117,1.450,.675,-.082,-.731,-1.249,-1.636,-1.882,-2.014,
--2.118,-2.265,-2.430,-2.576,-2.809,-3.347,-4.233,-5.162,-5.757,-6.011,-6.302,-6.914,-7.701,-8.345,-8.818,-9.364,
--10.085,-10.791,-11.339,-11.902,-12.712,-13.670,-14.426,-14.837,-15.142,-15.635,-16.335,-17.059,-17.710,-18.341,-19.016,-19.736,
--20.492,-21.282,-22.033,-22.602,-22.909,-23.024,-23.113,-23.340,-23.811,-24.540,-25.425,-26.305,-27.093,-27.822,-28.530,-29.139,
--29.537,-29.753,-29.961,-30.318,-30.848,-31.496,-32.209,-32.949,-33.686,-34.420,-35.178,-35.952,-36.674,-37.280,-37.779,-38.216,
--38.612,-38.970,-39.326,-39.722,-40.160,-40.595,-40.969,-41.192,-41.143,-40.776,-40.259,-39.912,-39.949,-40.307,-40.757,-41.151,
--41.499,-41.815,-41.951,-41.705,-41.188,-41.112,-42.542,-46.081,-51.149,-56.129,-59.388,-60.255,-59.139,-56.913,-54.344,-51.974,
--50.190,-49.174,-48.807,-48.745,-48.657,-48.421,-48.139,-47.989,-48.025,-48.126,-48.159,-48.151,-48.225,-48.368,-48.402,-48.206,
--47.852,-47.451,-46.984,-46.395,-45.757,-45.186,-44.660,-44.087,-43.521,-43.103,-42.780,-42.298,-41.549,-40.751,-40.146,-39.679,
--39.123,-38.427,-37.730,-37.082,-36.381,-35.594,-34.857,-34.277,-33.774,-33.203,-32.544,-31.873,-31.219,-30.558,-29.892,-29.254,
--28.652,-28.077,-27.553,-27.119,-26.765,-26.450,-26.148,-25.834,-25.445,-24.941,-24.380,-23.871,-23.446,-23.037,-22.589,-22.120,
--21.651,-21.156,-20.613,-20.065,-19.563,-19.099,-18.630,-18.134,-17.615,-17.067,-16.493,-15.918,-15.350,-14.754,-14.108,-13.468,
--12.917,-12.444,-11.947,-11.354,-10.683,-9.975,-9.222,-8.424,-7.660,-7.030,-6.535,-6.069,-5.527,-4.905,-4.260,-3.625,
--2.986,-2.322,-1.633,-.928,-.210,.510,1.218,1.900,2.564,3.221,3.880,4.540,5.201,5.862,6.513,7.137,
-7.740,8.343,8.959,9.584,10.209,10.834,11.459,12.085,12.723,13.385,14.066,14.747,15.424,16.103,16.743,17.276,
-17.705,18.130,18.610,19.070,19.450,19.873,20.503,21.248,21.874,22.525,23.839,26.180,28.830,30.339,29.857,27.925,
-25.829,24.366,23.463,22.787,22.314,22.216,22.493,22.931,23.343,23.691,24.010,24.320,24.625,24.904,25.143,25.408,
-25.856,26.581,27.471,28.300,28.969,29.548,30.069,30.375,30.286,29.876,29.508,29.538,30.004,30.626,31.097,31.360,
-31.594,31.980,32.515,33.046,33.389,33.362,32.797,31.669,30.249,29.025,28.368,28.287,28.520,28.802,29.013,29.137,
-29.212,29.310,29.465,29.604,29.618,29.504,29.367,29.258,29.111,28.878,28.633,28.480,28.403,28.303,28.145,27.972,
-27.809,27.655,27.565,27.638,27.841,27.980,27.918,27.772,27.804,28.120,28.566,28.905,29.025,28.959,28.780,28.533,
-28.232,27.855,27.375,26.812,26.241,25.721,25.227,24.689,24.091,23.495,22.986,22.534,22.234,22.052,22.058,22.262,
-22.539,22.748,22.870,22.989,23.112,23.102,22.833,22.357,21.857,21.451,21.113,20.805,20.596,20.591,20.777,21.001,
-21.109,21.036,20.780,20.360,19.862,19.462,19.309,19.377,19.496,19.535,19.515,19.526,19.607,19.736,19.895,20.065,
-20.185,20.177,20.040,19.849,19.650,19.411,19.072,18.633,18.135,17.601,17.038,16.487,16.031,15.737,15.598,15.530,
-15.417,15.199,14.929,14.713,14.580,14.426,14.146,13.789,13.505,13.353,13.229,13.023,12.762,12.517,12.263,11.916,
-11.487,11.091,10.792,10.551,10.337,10.208,10.213,10.290,10.346,10.381,10.443,10.480,10.353,10.033,9.696,9.564,
-9.706,10.039,10.466,10.922,11.299,11.456,11.349,11.101,10.872,10.679,10.408,9.995,9.547,9.240,9.129,9.083,
-8.911,8.544,8.103,7.801,7.744,7.804,7.726,7.370,6.851,6.406,6.131,5.924,5.671,5.401,5.212,5.093,
-4.919,4.612,4.245,3.961,3.832,3.803,3.719,3.433,2.953,2.478,2.214,2.113,1.904,1.447,.944,.701,
-.732,.776,.656,.465,.356,.304,.186,-.016,-.222,-.414,-.645,-.910,-1.113,-1.188,-1.185,-1.208,
--1.289,-1.318,-1.059,-.297,.888,1.973,2.266,1.440,-.184,-1.909,-3.193,-3.916,-4.293,-4.615,-5.062,-5.623,
--6.153,-6.512,-6.685,-6.794,-7.020,-7.467,-8.008,-8.241,-7.753,-6.568,-5.281,-4.615,-4.852,-5.766,-7.016,-8.392,
--9.714,-10.767,-11.502,-12.148,-12.921,-13.728,-14.313,-14.640,-14.934,-15.332,-15.691,-15.840,-15.877,-16.099,-16.664,-17.429,
--18.142,-18.714,-19.290,-20.049,-20.980,-21.890,-22.634,-23.259,-23.892,-24.574,-25.289,-26.079,-26.985,-27.888,-28.594,-29.099,
--29.622,-30.295,-31.002,-31.591,-32.118,-32.704,-33.310,-33.825,-34.297,-34.876,-35.575,-36.292,-37.046,-37.952,-38.979,-39.975,
--40.955,-42.100,-43.360,-44.397,-45.137,-46.091,-47.752,-49.827,-51.491,-52.389,-53.008,-53.935,-55.108,-56.025,-56.438,-56.546,
--56.634,-56.812,-57.105,-57.556,-58.161,-58.838,-59.541,-60.298,-61.123,-61.958,-62.747,-63.505,-64.262,-65.012,-65.743,-66.468,
--67.189,-67.888,-68.566,-69.255,-69.968,-70.684,-71.397,-72.130,-72.897,-73.687,-74.521,-75.445,-76.426,-77.311,-77.958,-78.386,
--78.747,-79.157,-79.615,-80.060,-80.460,-80.825,-81.165,-81.478,-81.779,-82.129,-82.579,-83.032,-83.214,-82.914,-82.296,-81.863,
--81.992,-82.562,-83.118,-83.349,-83.278,-83.053,-82.762,-82.493,-82.381,-82.486,-82.709,-82.932,-83.177,-83.543,-84.043,-84.618,
--85.231,-85.851,-86.387,-86.780,-87.121,-87.523,-87.869,-87.858,-87.364,-86.643,-86.094,-85.887,-85.900,-85.946,-85.975,-86.062,
--86.298,-86.688,-87.096,-87.311,-87.221,-86.906,-86.520,-86.125,-85.675,-85.148,-84.596,-84.091,-83.672,-83.334,-83.002,-82.519,
--81.758,-80.779,-79.788,-78.916,-78.108,-77.276,-76.453,-75.723,-75.049,-74.279,-73.335,-72.304,-71.325,-70.443,-69.576,-68.613,
--67.507,-66.320,-65.171,-64.139,-63.220,-62.387,-61.667,-61.094,-60.639,-60.247,-59.963,-59.962,-60.395,-61.185,-61.971,-62.245,
--61.627,-60.111,-58.080,-56.022,-54.201,-52.627,-51.267,-50.155,-49.253,-48.375,-47.378,-46.354,-45.489,-44.774,-43.992,-43.020,
--41.987,-41.051,-40.163,-39.166,-38.075,-37.116,-36.474,-36.091,-35.757,-35.325,-34.796,-34.229,-33.641,-33.012,-32.338,-31.658,
--31.033,-30.527,-30.172,-29.917,-29.622,-29.162,-28.552,-27.926,-27.368,-26.821,-26.192,-25.487,-24.754,-23.965,-23.065,-22.096,
--21.124,-20.069,-18.797,-17.412,-16.244,-15.389,-14.470,-13.083,-11.369,-9.887,-8.955,-8.382,-7.855,-7.312,-6.811,-6.301,
--5.692,-5.014,-4.308,-3.475,-2.411,-1.208,-.044,1.060,2.189,3.314,4.316,5.206,6.104,7.027,7.884,8.724,
-9.758,11.065,12.446,13.663,14.671,15.548,16.378,17.292,18.421,19.700,20.886,21.898,22.931,24.112,25.288,26.369,
-27.576,29.017,30.307,31.057,31.493,31.992,32.217,31.669,31.187,32.746,36.956,41.552,43.585,42.815,41.753,42.260,
-43.329,42.829,40.423,37.747,36.233,35.923,36.368,37.553,39.439,41.285,42.173,42.011,41.564,41.557,42.096,42.905,
-43.737,44.453,44.970,45.312,45.616,45.965,46.283,46.466,46.536,46.604,46.703,46.779,46.810,46.861,46.984,47.118,
-47.152,47.066,46.980,47.022,47.193,47.389,47.531,47.626,47.722,47.841,47.972,48.074,48.098,48.044,48.024,48.169,
-48.455,48.709,48.842,48.981,49.284,49.666,49.890,49.897,49.883,50.020,50.226,50.325,50.323,50.390,50.621,50.916,
-51.131,51.244,51.361,51.578,51.856,52.038,52.010,51.850,51.759,51.839,51.975,52.016,51.974,51.964,52.015,52.050,
-52.049,52.063,52.077,52.014,51.946,52.138,52.722,53.448,53.935,54.126,54.305,54.642,54.923,54.874,54.589,54.433,
-54.491,54.274,53.111,50.779,47.661,44.310,41.026,38.000,35.740,35.050,36.326,38.930,41.488,42.941,43.285,43.279,
-43.547,44.052,44.354,44.175,43.610,42.905,42.198,41.547,41.102,41.048,41.318,41.474,41.051,40.037,38.887,38.041,
-37.528,37.082,36.525,35.952,35.605,35.682,36.132,36.493,36.070,34.527,32.378,30.640,29.903,29.890,29.981,29.935,
-29.889,29.882,29.758,29.522,29.441,29.634,29.775,29.436,28.654,27.997,28.019,28.682,29.314,29.175,28.133,26.814,
-25.970,25.716,25.551,25.164,24.917,25.285,26.011,26.242,25.533,24.381,23.596,23.397,23.361,23.100,22.678,22.370,
-22.264,22.208,22.018,21.615,21.012,20.271,19.485,18.777,18.264,17.990,17.891,17.858,17.864,17.945,18.042,17.943,
-17.521,16.946,16.508,16.263,16.013,15.662,15.377,15.296,15.270,15.037,14.576,14.080,13.672,13.321,13.019,12.845,
-12.797,12.738,12.581,12.387,12.221,12.023,11.747,11.521,11.524,11.753,12.012,12.117,12.014,11.733,11.360,11.030,
-10.840,10.723,10.513,10.157,9.767,9.454,9.194,8.923,8.674,8.518,8.441,8.365,8.269,8.203,8.186,8.168,
-8.113,8.050,8.035,8.107,8.279,8.491,8.579,8.395,8.007,7.697,7.681,7.851,7.912,7.754,7.579,7.627,
-7.867,8.053,8.046,7.956,7.958,8.063,8.137,8.103,8.041,8.089,8.317,8.690,9.102,9.419,9.532,9.425,
-9.168,8.847,8.560,8.453,8.673,9.182,9.704,9.974,10.025,10.094,10.269,10.386,10.344,10.327,10.549,10.866,
-10.880,10.426,9.794,9.399,9.372,9.543,9.694,9.705,9.535,9.213,8.849,8.568,8.390,8.239,8.070,7.900,
-7.734,7.539,7.309,7.088,6.887,6.659,6.381,6.119,5.939,5.806,5.631,5.397,5.161,4.948,4.705,4.397,
-4.072,3.812,3.646,3.531,3.412,3.260,3.073,2.876,2.695,2.532,2.356,2.131,1.851,1.536,1.212,.893,
-.572,.222,-.186,-.646,-1.104,-1.502,-1.817,-2.077,-2.338,-2.642,-2.989,-3.325,-3.588,-3.770,-3.915,-4.054,
--4.172,-4.251,-4.328,-4.459,-4.645,-4.850,-5.077,-5.369,-5.726,-6.078,-6.370,-6.626,-6.905,-7.215,-7.514,-7.778,
--8.027,-8.289,-8.579,-8.913,-9.298,-9.704,-10.084,-10.422,-10.757,-11.121,-11.513,-11.925,-12.366,-12.833,-13.294,-13.708,
--14.076,-14.413,-14.718,-14.981,-15.210,-15.433,-15.660,-15.883,-16.116,-16.389,-16.709,-17.048,-17.391,-17.766,-18.200,-18.667,
--19.112,-19.515,-19.914,-20.359,-20.869,-21.421,-21.977,-22.506,-23.012,-23.528,-24.075,-24.621,-25.116,-25.552,-25.979,-26.445,
--26.950,-27.469,-28.006,-28.581,-29.185,-29.774,-30.318,-30.833,-31.341,-31.835,-32.296,-32.745,-33.223,-33.747,-34.286,-34.796,
--35.258,-35.678,-36.071,-36.460,-36.864,-37.267,-37.629,-37.942,-38.257,-38.633,-39.054,-39.435,-39.718,-39.936,-40.159,-40.414,
--40.686,-40.962,-41.240,-41.505,-41.740,-41.962,-42.212,-42.497,-42.777,-43.024,-43.268,-43.552,-43.865,-44.140,-44.321,-44.412,
--44.471,-44.561,-44.703,-44.862,-44.980,-45.037,-45.069,-45.114,-45.155,-45.148,-45.094,-45.044,-45.032,-45.033,-45.002,-44.930,
--44.827,-44.703,-44.559,-44.409,-44.253,-44.074,-43.861,-43.636,-43.414,-43.169,-42.871,-42.536,-42.209,-41.891,-41.545,-41.165,
--40.783,-40.397,-39.966,-39.489,-39.043,-38.677,-38.327,-37.903,-37.412,-36.940,-36.505,-36.037,-35.496,-34.938,-34.441,-34.020,
--33.640,-33.271,-32.876,-32.422,-31.928,-31.471,-31.081,-30.692,-30.237,-29.749,-29.297,-28.849,-28.294,-27.605,-26.873,-26.175,
--25.497,-24.819,-24.169,-23.558,-22.933,-22.270,-21.640,-21.106,-20.610,-20.048,-19.431,-18.855,-18.345,-17.836,-17.307,-16.816,
--16.376,-15.912,-15.385,-14.865,-14.408,-13.958,-13.447,-12.921,-12.464,-12.049,-11.597,-11.143,-10.824,-10.696,-10.666,-10.641,
--10.633,-10.683,-10.744,-10.705,-10.488,-10.103,-9.670,-9.393,-9.389,-9.547,-9.658,-9.723,-9.927,-10.192,-9.960,-8.728,
--6.774,-5.073,-4.405,-4.711,-5.366,-5.837,-5.874,-5.303,-3.963,-1.917,.433,2.535,3.914,4.328,3.882,3.056,
-2.419,2.175,2.055,1.709,1.130,.621,.429,.553,.841,1.146,1.389,1.594,1.899,2.425,3.068,3.523,
-3.586,3.390,3.267,3.403,3.684,3.855,3.743,3.333,2.698,1.938,1.160,.445,-.168,-.675,-1.059,-1.301,
--1.431,-1.527,-1.641,-1.753,-1.873,-2.150,-2.774,-3.719,-4.664,-5.285,-5.613,-5.969,-6.552,-7.226,-7.764,-8.177,
--8.649,-9.241,-9.846,-10.453,-11.247,-12.322,-13.432,-14.197,-14.525,-14.706,-15.072,-15.692,-16.432,-17.165,-17.852,-18.496,
--19.143,-19.881,-20.727,-21.515,-21.992,-22.089,-22.019,-22.085,-22.425,-22.998,-23.743,-24.651,-25.686,-26.729,-27.646,-28.370,
--28.910,-29.303,-29.603,-29.892,-30.253,-30.730,-31.317,-31.978,-32.679,-33.398,-34.130,-34.872,-35.600,-36.267,-36.823,-37.241,
--37.531,-37.762,-38.047,-38.468,-38.996,-39.531,-40.008,-40.409,-40.660,-40.602,-40.186,-39.644,-39.350,-39.479,-39.881,-40.319,
--40.745,-41.249,-41.781,-42.044,-41.753,-41.055,-40.693,-41.669,-44.568,-49.030,-53.851,-57.644,-59.524,-59.344,-57.529,-54.819,
--52.056,-49.936,-48.777,-48.459,-48.609,-48.843,-48.936,-48.888,-48.845,-48.913,-49.027,-49.057,-48.998,-48.951,-48.928,-48.800,
--48.485,-48.063,-47.626,-47.126,-46.498,-45.814,-45.194,-44.632,-44.066,-43.555,-43.198,-42.894,-42.399,-41.666,-40.927,-40.360,
--39.838,-39.168,-38.406,-37.752,-37.218,-36.621,-35.886,-35.146,-34.515,-33.938,-33.327,-32.698,-32.103,-31.522,-30.917,-30.317,
--29.752,-29.179,-28.548,-27.897,-27.319,-26.850,-26.473,-26.169,-25.897,-25.563,-25.096,-24.562,-24.095,-23.730,-23.374,-22.957,
--22.500,-22.035,-21.535,-20.975,-20.401,-19.873,-19.387,-18.902,-18.393,-17.858,-17.290,-16.698,-16.119,-15.567,-14.997,-14.375,
--13.755,-13.218,-12.756,-12.272,-11.701,-11.066,-10.406,-9.720,-9.011,-8.338,-7.756,-7.240,-6.704,-6.102,-5.465,-4.844,
--4.243,-3.629,-2.973,-2.284,-1.594,-.917,-.242,.449,1.152,1.848,2.526,3.203,3.891,4.586,5.270,5.936,
-6.581,7.202,7.800,8.389,8.989,9.607,10.233,10.858,11.488,12.136,12.801,13.467,14.133,14.813,15.505,16.160,
-16.728,17.220,17.681,18.100,18.433,18.790,19.447,20.528,21.751,22.736,23.609,24.989,27.088,29.033,29.475,27.983,
-25.544,23.573,22.629,22.287,22.005,21.743,21.736,22.030,22.448,22.848,23.219,23.577,23.918,24.249,24.582,24.911,
-25.273,25.803,26.622,27.660,28.673,29.458,29.976,30.257,30.278,30.020,29.629,29.399,29.557,30.058,30.629,31.019,
-31.210,31.390,31.736,32.260,32.836,33.298,33.447,33.061,32.051,30.664,29.426,28.762,28.696,28.937,29.210,29.417,
-29.565,29.667,29.747,29.832,29.893,29.855,29.708,29.543,29.435,29.329,29.138,28.882,28.667,28.526,28.378,28.157,
-27.905,27.711,27.633,27.689,27.867,28.083,28.193,28.135,28.030,28.094,28.405,28.827,29.132,29.183,28.976,28.590,
-28.121,27.630,27.122,26.571,25.986,25.424,24.919,24.433,23.919,23.391,22.918,22.534,22.245,22.061,21.936,21.936,
-22.114,22.388,22.603,22.710,22.790,22.892,22.916,22.712,22.268,21.728,21.252,20.904,20.681,20.585,20.615,20.720,
-20.817,20.845,20.775,20.564,20.190,19.735,19.389,19.290,19.383,19.480,19.466,19.400,19.409,19.540,19.744,19.952,
-20.108,20.156,20.070,19.908,19.774,19.690,19.555,19.254,18.788,18.255,17.736,17.229,16.708,16.191,15.746,15.440,
-15.278,15.180,15.036,14.799,14.532,14.317,14.148,13.946,13.685,13.435,13.255,13.103,12.896,12.622,12.326,12.023,
-11.686,11.326,11.000,10.733,10.491,10.256,10.081,10.014,10.028,10.061,10.094,10.118,10.061,9.844,9.518,9.272,
-9.268,9.509,9.892,10.320,10.720,10.991,11.041,10.879,10.621,10.377,10.156,9.905,9.609,9.319,9.098,8.955,
-8.815,8.569,8.160,7.676,7.304,7.151,7.108,6.956,6.605,6.193,5.897,5.719,5.522,5.242,4.975,4.816,
-4.712,4.531,4.235,3.911,3.651,3.470,3.325,3.157,2.900,2.551,2.208,1.978,1.800,1.480,.965,.480,
-.291,.366,.421,.281,.055,-.067,-.049,.008,.014,-.079,-.307,-.634,-.934,-1.137,-1.397,-1.952,
--2.816,-3.665,-4.073,-3.792,-2.834,-1.431,-.001,.951,1.058,.297,-1.017,-2.430,-3.579,-4.337,-4.839,-5.330,
--5.935,-6.553,-6.995,-7.196,-7.279,-7.463,-7.910,-8.541,-8.962,-8.684,-7.602,-6.233,-5.347,-5.344,-6.066,-7.147,
--8.346,-9.523,-10.545,-11.384,-12.188,-13.064,-13.865,-14.369,-14.618,-14.894,-15.325,-15.710,-15.833,-15.825,-16.080,-16.840,
--17.942,-19.008,-19.805,-20.421,-21.102,-21.948,-22.809,-23.482,-23.966,-24.455,-25.117,-25.952,-26.846,-27.669,-28.310,-28.752,
--29.138,-29.663,-30.351,-31.040,-31.622,-32.179,-32.811,-33.461,-34.035,-34.586,-35.216,-35.889,-36.528,-37.222,-38.114,-39.138,
--40.119,-41.108,-42.309,-43.629,-44.670,-45.387,-46.390,-48.197,-50.386,-51.953,-52.526,-52.793,-53.580,-54.878,-56.026,-56.587,
--56.723,-56.818,-57.066,-57.472,-58.007,-58.644,-59.342,-60.083,-60.875,-61.700,-62.515,-63.307,-64.095,-64.874,-65.612,-66.318,
--67.039,-67.785,-68.512,-69.198,-69.878,-70.576,-71.274,-71.957,-72.649,-73.375,-74.147,-75.007,-75.999,-77.063,-78.010,-78.693,
--79.147,-79.523,-79.917,-80.319,-80.708,-81.104,-81.512,-81.880,-82.164,-82.411,-82.744,-83.226,-83.718,-83.911,-83.610,-83.002,
--82.569,-82.647,-83.130,-83.652,-83.972,-84.083,-84.026,-83.798,-83.478,-83.258,-83.253,-83.379,-83.502,-83.627,-83.862,-84.275,
--84.855,-85.549,-86.236,-86.763,-87.109,-87.466,-87.980,-88.441,-88.429,-87.833,-87.064,-86.662,-86.792,-87.189,-87.523,-87.680,
--87.762,-87.931,-88.253,-88.613,-88.767,-88.547,-88.015,-87.360,-86.696,-86.017,-85.338,-84.768,-84.402,-84.209,-84.044,-83.734,
--83.145,-82.256,-81.204,-80.188,-79.294,-78.451,-77.588,-76.756,-76.026,-75.336,-74.531,-73.544,-72.477,-71.465,-70.532,-69.584,
--68.520,-67.335,-66.140,-65.065,-64.136,-63.275,-62.439,-61.710,-61.180,-60.797,-60.446,-60.183,-60.263,-60.829,-61.636,-62.170,
--62.015,-61.095,-59.605,-57.816,-55.954,-54.174,-52.579,-51.239,-50.176,-49.318,-48.510,-47.615,-46.636,-45.678,-44.812,-43.986,
--43.097,-42.100,-41.031,-39.942,-38.873,-37.875,-37.026,-36.397,-35.976,-35.650,-35.273,-34.764,-34.152,-33.505,-32.835,-32.101,
--31.292,-30.490,-29.822,-29.359,-29.043,-28.717,-28.248,-27.637,-26.994,-26.390,-25.791,-25.149,-24.488,-23.827,-23.084,-22.181,
--21.198,-20.270,-19.337,-18.184,-16.802,-15.485,-14.436,-13.430,-12.113,-10.530,-9.098,-8.081,-7.348,-6.701,-6.159,-5.780,
--5.427,-4.906,-4.216,-3.466,-2.657,-1.704,-.631,.449,1.521,2.655,3.825,4.914,5.876,6.775,7.649,8.499,
-9.406,10.478,11.653,12.735,13.667,14.608,15.677,16.827,18.009,19.269,20.559,21.697,22.651,23.642,24.792,25.932,
-26.964,28.129,29.550,30.805,31.448,31.730,32.149,32.433,31.930,31.228,32.285,36.043,40.614,43.050,42.740,41.905,
-42.516,43.919,44.171,42.800,41.154,40.424,40.495,40.856,41.604,42.948,44.340,44.808,44.059,42.785,41.888,41.759,
-42.282,43.166,44.113,44.895,45.467,45.960,46.460,46.874,47.087,47.156,47.231,47.332,47.347,47.261,47.233,47.390,
-47.630,47.736,47.650,47.524,47.512,47.607,47.725,47.851,48.014,48.190,48.319,48.395,48.452,48.492,48.504,48.558,
-48.737,48.985,49.148,49.222,49.402,49.795,50.209,50.381,50.329,50.311,50.456,50.625,50.667,50.656,50.765,51.025,
-51.316,51.526,51.647,51.749,51.907,52.127,52.303,52.299,52.134,52.012,52.088,52.275,52.366,52.294,52.175,52.130,
-52.181,52.294,52.395,52.370,52.196,52.093,52.364,53.020,53.704,54.109,54.316,54.563,54.827,54.881,54.735,54.722,
-54.991,55.090,54.303,52.366,49.670,46.717,43.597,40.214,36.966,34.907,34.955,36.943,39.610,41.637,42.625,43.046,
-43.449,43.911,44.196,44.160,43.862,43.415,42.880,42.282,41.648,41.037,40.559,40.278,40.090,39.769,39.228,38.638,
-38.182,37.808,37.344,36.788,36.300,35.932,35.566,35.121,34.603,33.922,32.905,31.641,30.606,30.192,30.252,30.314,
-30.169,29.988,29.889,29.735,29.456,29.280,29.414,29.628,29.449,28.760,28.041,27.933,28.586,29.465,29.765,29.082,
-27.750,26.494,25.751,25.395,25.136,24.994,25.168,25.554,25.695,25.296,24.578,23.981,23.656,23.414,23.088,22.765,
-22.636,22.752,22.942,22.917,22.468,21.620,20.619,19.717,18.989,18.374,17.858,17.557,17.615,18.064,18.729,19.233,
-19.183,18.505,17.567,16.841,16.437,16.115,15.725,15.414,15.332,15.338,15.172,14.792,14.350,13.935,13.540,13.226,
-13.099,13.099,13.022,12.812,12.641,12.616,12.580,12.349,12.018,11.852,11.949,12.155,12.278,12.231,12.011,11.668,
-11.334,11.116,10.947,10.645,10.176,9.705,9.369,9.123,8.892,8.733,8.733,8.811,8.807,8.710,8.659,8.706,
-8.730,8.628,8.467,8.394,8.461,8.611,8.757,8.806,8.665,8.354,8.075,8.035,8.196,8.292,8.157,7.945,
-7.924,8.135,8.352,8.389,8.316,8.314,8.415,8.485,8.430,8.314,8.248,8.272,8.387,8.618,8.952,9.242,
-9.270,8.957,8.470,8.107,8.084,8.409,8.908,9.364,9.681,9.933,10.200,10.403,10.393,10.230,10.216,10.547,
-11.008,11.164,10.835,10.261,9.788,9.544,9.472,9.497,9.560,9.547,9.358,9.042,8.752,8.562,8.414,8.238,
-8.041,7.843,7.623,7.370,7.126,6.926,6.733,6.493,6.223,5.981,5.776,5.563,5.333,5.127,4.957,4.767,
-4.500,4.173,3.862,3.619,3.440,3.285,3.117,2.920,2.699,2.474,2.262,2.067,1.871,1.655,1.402,1.112,
-.796,.457,.082,-.340,-.794,-1.239,-1.633,-1.951,-2.193,-2.397,-2.626,-2.914,-3.222,-3.466,-3.615,-3.715,
--3.824,-3.943,-4.052,-4.160,-4.295,-4.450,-4.607,-4.797,-5.075,-5.439,-5.811,-6.132,-6.422,-6.730,-7.057,-7.367,
--7.645,-7.906,-8.164,-8.440,-8.770,-9.162,-9.567,-9.922,-10.230,-10.552,-10.918,-11.302,-11.678,-12.057,-12.446,-12.810,
--13.124,-13.414,-13.718,-14.020,-14.274,-14.482,-14.691,-14.929,-15.184,-15.449,-15.755,-16.117,-16.504,-16.889,-17.292,-17.750,
--18.247,-18.730,-19.176,-19.622,-20.114,-20.654,-21.206,-21.739,-22.239,-22.714,-23.188,-23.683,-24.195,-24.698,-25.172,-25.631,
--26.103,-26.598,-27.115,-27.666,-28.265,-28.896,-29.507,-30.060,-30.569,-31.070,-31.574,-32.064,-32.534,-33.003,-33.495,-34.005,
--34.502,-34.957,-35.363,-35.736,-36.113,-36.515,-36.918,-37.275,-37.581,-37.899,-38.290,-38.728,-39.111,-39.374,-39.563,-39.775,
--40.059,-40.390,-40.726,-41.040,-41.320,-41.570,-41.820,-42.106,-42.423,-42.723,-42.982,-43.233,-43.516,-43.813,-44.061,-44.221,
--44.311,-44.381,-44.470,-44.590,-44.720,-44.825,-44.887,-44.923,-44.955,-44.974,-44.951,-44.891,-44.844,-44.845,-44.881,-44.914,
--44.912,-44.857,-44.735,-44.559,-44.369,-44.194,-44.024,-43.833,-43.615,-43.374,-43.094,-42.757,-42.387,-42.035,-41.716,-41.400,
--41.067,-40.725,-40.365,-39.954,-39.494,-39.046,-38.654,-38.276,-37.837,-37.340,-36.859,-36.423,-35.977,-35.462,-34.894,-34.344,
--33.871,-33.484,-33.147,-32.788,-32.351,-31.855,-31.381,-30.969,-30.569,-30.115,-29.618,-29.121,-28.615,-28.045,-27.399,-26.713,
--26.013,-25.303,-24.621,-24.021,-23.479,-22.896,-22.233,-21.575,-21.005,-20.480,-19.901,-19.267,-18.663,-18.138,-17.657,-17.194,
--16.751,-16.301,-15.794,-15.251,-14.763,-14.355,-13.933,-13.424,-12.885,-12.407,-11.978,-11.529,-11.061,-10.635,-10.260,-9.900,
--9.589,-9.417,-9.398,-9.430,-9.416,-9.342,-9.234,-9.126,-9.082,-9.149,-9.243,-9.235,-9.198,-9.415,-9.966,-10.422,
--10.170,-9.049,-7.508,-6.137,-5.231,-4.819,-4.859,-5.181,-5.357,-4.868,-3.468,-1.357,.948,2.854,3.931,4.132,
-3.820,3.434,3.106,2.688,2.127,1.650,1.492,1.603,1.753,1.838,1.928,2.082,2.288,2.584,3.062,3.684,
-4.204,4.402,4.332,4.244,4.284,4.352,4.252,3.904,3.375,2.778,2.182,1.604,1.040,.493,-.002,-.384,
--.624,-.773,-.912,-1.059,-1.169,-1.282,-1.587,-2.267,-3.246,-4.196,-4.859,-5.289,-5.725,-6.268,-6.814,-7.261,
--7.663,-8.097,-8.535,-8.958,-9.534,-10.491,-11.784,-13.025,-13.830,-14.181,-14.380,-14.718,-15.269,-15.956,-16.684,-17.367,
--17.959,-18.529,-19.246,-20.153,-21.000,-21.422,-21.348,-21.140,-21.248,-21.776,-22.487,-23.189,-23.969,-25.000,-26.226,-27.368,
--28.213,-28.795,-29.274,-29.732,-30.155,-30.538,-30.940,-31.420,-31.982,-32.601,-33.266,-33.969,-34.686,-35.386,-36.036,-36.572,
--36.897,-36.990,-37.009,-37.218,-37.740,-38.424,-39.018,-39.441,-39.787,-40.062,-40.079,-39.701,-39.122,-38.746,-38.802,-39.181,
--39.674,-40.241,-40.944,-41.672,-42.056,-41.754,-40.847,-40.014,-40.270,-42.367,-46.259,-51.035,-55.380,-58.199,-58.993,-57.906,
--55.591,-52.961,-50.821,-49.559,-49.108,-49.148,-49.349,-49.491,-49.513,-49.482,-49.475,-49.465,-49.379,-49.235,-49.120,-49.031,
--48.842,-48.479,-48.018,-47.543,-47.015,-46.376,-45.692,-45.065,-44.495,-43.942,-43.468,-43.139,-42.845,-42.391,-41.788,-41.248,
--40.846,-40.379,-39.683,-38.898,-38.256,-37.735,-37.123,-36.353,-35.567,-34.875,-34.228,-33.573,-32.953,-32.399,-31.848,-31.255,
--30.662,-30.101,-29.506,-28.809,-28.057,-27.346,-26.715,-26.174,-25.770,-25.508,-25.272,-24.931,-24.503,-24.112,-23.806,-23.504,
--23.140,-22.740,-22.336,-21.889,-21.365,-20.799,-20.245,-19.708,-19.168,-18.624,-18.077,-17.511,-16.927,-16.365,-15.843,-15.317,
--14.748,-14.175,-13.657,-13.177,-12.660,-12.077,-11.468,-10.861,-10.239,-9.599,-8.979,-8.406,-7.842,-7.241,-6.610,-5.999,
--5.431,-4.877,-4.288,-3.641,-2.954,-2.266,-1.602,-.944,-.259,.456,1.170,1.866,2.564,3.279,3.997,4.694,
-5.371,6.037,6.678,7.276,7.846,8.426,9.038,9.666,10.289,10.911,11.542,12.183,12.830,13.492,14.170,14.836,
-15.454,16.028,16.593,17.129,17.537,17.794,18.150,18.997,20.440,22.043,23.240,23.997,24.834,26.026,26.990,26.788,
-25.235,23.227,21.846,21.373,21.321,21.238,21.149,21.269,21.612,22.020,22.406,22.789,23.172,23.533,23.895,24.303,
-24.752,25.229,25.821,26.681,27.826,29.030,29.972,30.449,30.472,30.186,29.784,29.459,29.379,29.617,30.096,30.599,
-30.921,31.041,31.147,31.452,31.997,32.637,33.175,33.423,33.193,32.385,31.174,30.010,29.307,29.133,29.257,29.453,
-29.658,29.868,30.029,30.095,30.109,30.117,30.086,29.961,29.775,29.616,29.493,29.325,29.084,28.848,28.684,28.544,
-28.343,28.092,27.906,27.881,28.009,28.200,28.347,28.385,28.333,28.302,28.422,28.726,29.100,29.344,29.293,28.895,
-28.228,27.460,26.745,26.145,25.640,25.200,24.815,24.448,24.020,23.493,22.949,22.520,22.245,22.243,22.187,22.129,
-22.070,22.096,22.230,22.398,22.535,22.652,22.764,22.801,22.646,22.253,21.714,21.200,20.854,20.716,20.716,20.725,
-20.662,20.547,20.445,20.355,20.186,19.880,19.527,19.311,19.317,19.441,19.511,19.471,19.425,19.491,19.685,19.928,
-20.137,20.252,20.237,20.104,19.942,19.855,19.834,19.748,19.473,19.018,18.490,17.963,17.435,16.887,16.339,15.838,
-15.434,15.155,14.983,14.828,14.596,14.298,14.043,13.898,13.797,13.630,13.386,13.145,12.950,12.751,12.483,12.153,
-11.805,11.472,11.170,10.915,10.701,10.487,10.245,10.003,9.822,9.736,9.734,9.772,9.767,9.623,9.330,9.026,
-8.907,9.055,9.391,9.793,10.194,10.544,10.753,10.735,10.509,10.182,9.854,9.569,9.347,9.199,9.098,8.984,
-8.816,8.580,8.244,7.777,7.235,6.769,6.479,6.294,6.065,5.775,5.554,5.462,5.370,5.126,4.774,4.506,
-4.403,4.332,4.136,3.831,3.547,3.341,3.148,2.905,2.623,2.341,2.081,1.856,1.659,1.407,.996,.469,
-.052,-.070,.012,.040,-.113,-.329,-.425,-.349,-.182,-.050,-.094,-.376,-.769,-1.032,-1.153,-1.539,
--2.654,-4.431,-6.152,-6.987,-6.613,-5.301,-3.561,-1.827,-.413,.407,.409,-.434,-1.837,-3.286,-4.356,-4.992,
--5.461,-6.018,-6.652,-7.181,-7.490,-7.649,-7.842,-8.253,-8.895,-9.460,-9.426,-8.524,-7.128,-6.033,-5.793,-6.347,
--7.281,-8.271,-9.214,-10.111,-11.004,-11.960,-12.947,-13.775,-14.288,-14.603,-15.005,-15.580,-16.098,-16.347,-16.461,-16.830,
--17.698,-18.931,-20.150,-21.076,-21.743,-22.394,-23.172,-23.939,-24.457,-24.723,-25.033,-25.666,-26.592,-27.521,-28.191,-28.570,
--28.833,-29.216,-29.826,-30.561,-31.243,-31.824,-32.416,-33.088,-33.754,-34.342,-34.926,-35.584,-36.240,-36.810,-37.405,-38.197,
--39.150,-40.111,-41.133,-42.394,-43.776,-44.892,-45.714,-46.795,-48.528,-50.411,-51.533,-51.758,-51.970,-53.003,-54.670,-56.100,
--56.772,-56.912,-57.021,-57.345,-57.853,-58.457,-59.120,-59.837,-60.609,-61.429,-62.259,-63.070,-63.876,-64.703,-65.517,-66.260,
--66.943,-67.640,-68.374,-69.097,-69.776,-70.438,-71.115,-71.797,-72.469,-73.149,-73.862,-74.631,-75.496,-76.481,-77.511,-78.426,
--79.132,-79.679,-80.161,-80.596,-80.969,-81.327,-81.737,-82.170,-82.520,-82.751,-82.975,-83.351,-83.901,-84.434,-84.657,-84.412,
--83.862,-83.395,-83.303,-83.563,-83.959,-84.334,-84.636,-84.793,-84.721,-84.468,-84.222,-84.111,-84.084,-84.047,-84.034,-84.160,
--84.498,-85.049,-85.755,-86.472,-87.010,-87.351,-87.720,-88.293,-88.848,-88.935,-88.418,-87.719,-87.405,-87.663,-88.232,-88.750,
--89.041,-89.146,-89.224,-89.409,-89.661,-89.746,-89.444,-88.776,-87.958,-87.158,-86.400,-85.701,-85.184,-84.961,-84.962,-84.935,
--84.619,-83.900,-82.859,-81.705,-80.632,-79.691,-78.810,-77.938,-77.113,-76.368,-75.623,-74.751,-73.725,-72.642,-71.603,-70.616,
--69.606,-68.503,-67.312,-66.133,-65.094,-64.219,-63.414,-62.617,-61.904,-61.379,-61.003,-60.673,-60.471,-60.643,-61.235,-61.866,
--62.017,-61.514,-60.581,-59.444,-58.064,-56.334,-54.389,-52.578,-51.161,-50.132,-49.317,-48.545,-47.704,-46.747,-45.713,-44.720,
--43.840,-42.995,-42.029,-40.899,-39.741,-38.720,-37.861,-37.098,-36.426,-35.914,-35.559,-35.211,-34.712,-34.058,-33.349,-32.623,
--31.814,-30.879,-29.909,-29.069,-28.456,-28.028,-27.653,-27.206,-26.656,-26.054,-25.444,-24.819,-24.173,-23.541,-22.917,-22.187,
--21.252,-20.214,-19.279,-18.457,-17.510,-16.280,-14.912,-13.621,-12.368,-10.979,-9.500,-8.199,-7.207,-6.396,-5.667,-5.123,
--4.838,-4.620,-4.196,-3.519,-2.729,-1.899,-.997,-.028,.949,1.957,3.085,4.318,5.511,6.556,7.476,8.352,
-9.271,10.313,11.472,12.584,13.501,14.323,15.309,16.520,17.768,18.937,20.117,21.344,22.457,23.388,24.345,25.484,
-26.637,27.634,28.652,29.874,31.014,31.680,32.046,32.534,32.876,32.370,31.415,31.843,34.859,39.119,41.934,42.356,
-42.047,42.861,44.552,45.538,45.205,44.466,44.262,44.527,44.833,45.267,46.130,47.158,47.588,46.943,45.448,43.749,
-42.490,42.100,42.652,43.776,44.910,45.745,46.375,46.970,47.483,47.772,47.874,47.958,48.060,48.057,47.915,47.812,
-47.913,48.131,48.252,48.218,48.158,48.158,48.164,48.137,48.171,48.340,48.548,48.649,48.656,48.699,48.821,48.956,
-49.075,49.227,49.399,49.519,49.624,49.875,50.300,50.671,50.771,50.687,50.673,50.800,50.922,50.950,50.989,51.153,
-51.406,51.649,51.846,51.994,52.092,52.185,52.347,52.541,52.600,52.464,52.317,52.369,52.567,52.655,52.502,52.249,
-52.115,52.181,52.355,52.454,52.357,52.153,52.150,52.570,53.258,53.834,54.152,54.408,54.729,54.916,54.803,54.687,
-55.016,55.613,55.562,54.095,51.420,48.395,45.485,42.382,38.831,35.570,34.048,35.034,37.702,40.321,41.822,42.474,
-43.088,43.895,44.465,44.472,44.108,43.720,43.363,42.892,42.274,41.606,40.943,40.301,39.753,39.369,39.088,38.809,
-38.539,38.302,37.982,37.456,36.852,36.420,36.120,35.613,34.751,33.832,33.205,32.847,32.550,32.322,32.284,32.273,
-31.924,31.188,30.453,30.033,29.798,29.501,29.213,29.171,29.305,29.242,28.804,28.304,28.250,28.814,29.645,30.113,
-29.752,28.606,27.192,26.089,25.501,25.239,25.067,24.948,24.937,24.973,24.891,24.591,24.119,23.604,23.163,22.858,
-22.721,22.816,23.202,23.745,24.005,23.513,22.284,20.916,20.025,19.634,19.271,18.625,17.948,17.780,18.372,19.418,
-20.237,20.245,19.381,18.146,17.156,16.617,16.305,16.006,15.765,15.667,15.590,15.357,14.991,14.632,14.299,13.929,
-13.598,13.455,13.452,13.370,13.155,13.010,13.041,13.040,12.795,12.436,12.284,12.420,12.621,12.674,12.557,12.323,
-12.005,11.671,11.401,11.160,10.802,10.287,9.768,9.386,9.122,8.925,8.859,8.969,9.116,9.110,8.988,8.962,
-9.090,9.181,9.073,8.866,8.767,8.825,8.924,8.978,8.980,8.910,8.728,8.504,8.398,8.464,8.547,8.483,
-8.327,8.291,8.452,8.647,8.694,8.619,8.583,8.640,8.681,8.619,8.505,8.418,8.347,8.266,8.260,8.452,
-8.779,8.987,8.903,8.665,8.591,8.847,9.295,9.660,9.813,9.864,9.999,10.255,10.464,10.457,10.303,10.262,
-10.494,10.851,11.043,10.946,10.658,10.305,9.926,9.579,9.395,9.429,9.527,9.469,9.207,8.892,8.654,8.480,
-8.300,8.099,7.890,7.660,7.400,7.148,6.943,6.757,6.535,6.271,6.006,5.765,5.536,5.323,5.153,5.024,
-4.880,4.659,4.365,4.051,3.772,3.541,3.337,3.128,2.889,2.623,2.355,2.119,1.923,1.744,1.544,1.301,
-1.020,.723,.412,.064,-.346,-.802,-1.258,-1.662,-1.978,-2.197,-2.361,-2.552,-2.817,-3.110,-3.327,-3.430,
--3.487,-3.582,-3.722,-3.864,-3.995,-4.132,-4.283,-4.440,-4.627,-4.884,-5.208,-5.553,-5.884,-6.218,-6.572,-6.923,
--7.246,-7.540,-7.816,-8.070,-8.316,-8.604,-8.962,-9.348,-9.692,-9.989,-10.289,-10.617,-10.946,-11.253,-11.553,-11.849,
--12.107,-12.322,-12.553,-12.850,-13.182,-13.477,-13.726,-13.991,-14.312,-14.668,-15.032,-15.415,-15.832,-16.254,-16.655,-17.053,
--17.482,-17.940,-18.391,-18.825,-19.279,-19.783,-20.321,-20.858,-21.373,-21.865,-22.339,-22.807,-23.291,-23.808,-24.345,-24.872,
--25.374,-25.861,-26.352,-26.861,-27.398,-27.972,-28.574,-29.171,-29.729,-30.249,-30.763,-31.293,-31.823,-32.324,-32.792,-33.250,
--33.717,-34.182,-34.620,-35.019,-35.396,-35.781,-36.187,-36.589,-36.950,-37.266,-37.586,-37.959,-38.367,-38.729,-38.991,-39.185,
--39.402,-39.704,-40.077,-40.468,-40.829,-41.142,-41.421,-41.706,-42.021,-42.348,-42.646,-42.905,-43.161,-43.439,-43.708,-43.919,
--44.061,-44.162,-44.246,-44.324,-44.408,-44.511,-44.622,-44.705,-44.744,-44.756,-44.764,-44.760,-44.734,-44.703,-44.696,-44.724,
--44.765,-44.781,-44.739,-44.620,-44.440,-44.246,-44.078,-43.932,-43.773,-43.577,-43.341,-43.057,-42.717,-42.335,-41.955,-41.602,
--41.269,-40.936,-40.602,-40.260,-39.886,-39.466,-39.029,-38.612,-38.202,-37.756,-37.269,-36.791,-36.362,-35.950,-35.485,-34.936,
--34.347,-33.802,-33.358,-33.006,-32.670,-32.273,-31.797,-31.295,-30.825,-30.391,-29.957,-29.492,-28.978,-28.415,-27.813,-27.199,
--26.574,-25.909,-25.199,-24.508,-23.905,-23.365,-22.790,-22.145,-21.504,-20.936,-20.399,-19.810,-19.167,-18.552,-18.020,-17.557,
--17.123,-16.685,-16.206,-15.667,-15.120,-14.643,-14.237,-13.816,-13.327,-12.807,-12.313,-11.842,-11.375,-10.933,-10.521,-10.082,
--9.589,-9.133,-8.831,-8.657,-8.487,-8.287,-8.147,-8.113,-8.099,-8.020,-7.901,-7.801,-7.747,-7.829,-8.239,-9.052,
--9.994,-10.564,-10.433,-9.619,-8.347,-6.886,-5.560,-4.730,-4.563,-4.831,-5.012,-4.611,-3.424,-1.632,.275,1.768,
-2.628,3.015,3.156,3.051,2.618,2.041,1.736,1.908,2.318,2.605,2.689,2.749,2.902,3.106,3.348,3.704,
-4.167,4.549,4.679,4.617,4.561,4.582,4.550,4.321,3.906,3.428,2.979,2.564,2.143,1.675,1.158,.646,
-.240,-.011,-.180,-.376,-.604,-.771,-.890,-1.168,-1.804,-2.721,-3.614,-4.288,-4.819,-5.358,-5.892,-6.323,
--6.678,-7.076,-7.514,-7.862,-8.151,-8.693,-9.769,-11.242,-12.627,-13.549,-14.035,-14.361,-14.745,-15.243,-15.845,-16.522,
--17.198,-17.797,-18.372,-19.086,-19.981,-20.787,-21.127,-20.954,-20.702,-20.872,-21.518,-22.258,-22.810,-23.360,-24.285,-25.622,
--26.989,-28.024,-28.729,-29.328,-29.930,-30.461,-30.866,-31.220,-31.629,-32.125,-32.689,-33.306,-33.962,-34.626,-35.281,-35.916,
--36.443,-36.702,-36.648,-36.525,-36.712,-37.334,-38.107,-38.647,-38.885,-39.055,-39.300,-39.446,-39.248,-38.755,-38.309,-38.215,
--38.513,-39.076,-39.800,-40.632,-41.445,-41.964,-41.872,-41.075,-40.001,-39.596,-40.849,-44.082,-48.630,-53.211,-56.629,-58.244,
--58.029,-56.451,-54.288,-52.327,-51.028,-50.401,-50.196,-50.155,-50.130,-50.059,-49.935,-49.760,-49.525,-49.241,-48.987,-48.844,
--48.768,-48.604,-48.261,-47.797,-47.296,-46.750,-46.135,-45.506,-44.930,-44.392,-43.863,-43.408,-43.082,-42.789,-42.390,-41.933,
--41.593,-41.364,-41.004,-40.380,-39.662,-39.065,-38.535,-37.872,-37.053,-36.235,-35.507,-34.807,-34.094,-33.428,-32.831,-32.233,
--31.601,-30.986,-30.400,-29.757,-28.997,-28.182,-27.390,-26.624,-25.906,-25.355,-25.051,-24.884,-24.667,-24.350,-24.023,-23.736,
--23.436,-23.082,-22.713,-22.356,-21.968,-21.508,-20.999,-20.477,-19.936,-19.371,-18.807,-18.263,-17.718,-17.161,-16.629,-16.140,
--15.655,-15.141,-14.624,-14.134,-13.637,-13.078,-12.468,-11.865,-11.279,-10.677,-10.050,-9.435,-8.844,-8.243,-7.616,-7.003,
--6.445,-5.929,-5.403,-4.829,-4.202,-3.536,-2.859,-2.193,-1.531,-.849,-.147,.550,1.235,1.936,2.665,3.396,
-4.104,4.800,5.495,6.165,6.776,7.344,7.920,8.526,9.145,9.761,10.375,10.987,11.593,12.210,12.864,13.540,
-14.176,14.744,15.300,15.904,16.501,16.950,17.238,17.636,18.527,19.976,21.531,22.592,23.002,23.148,23.401,23.600,
-23.278,22.337,21.272,20.644,20.518,20.564,20.563,20.615,20.862,21.255,21.654,22.018,22.390,22.769,23.131,23.515,
-23.998,24.571,25.162,25.798,26.645,27.813,29.136,30.204,30.660,30.481,29.974,29.522,29.324,29.375,29.606,29.970,
-30.380,30.690,30.829,30.922,31.189,31.707,32.343,32.899,33.231,33.202,32.690,31.749,30.706,29.954,29.638,29.618,
-29.724,29.909,30.153,30.344,30.388,30.340,30.328,30.354,30.298,30.105,29.870,29.688,29.533,29.334,29.113,28.953,
-28.859,28.743,28.558,28.385,28.328,28.386,28.458,28.455,28.389,28.344,28.411,28.631,28.968,29.305,29.462,29.271,
-28.666,27.749,26.751,25.896,25.284,24.889,24.642,24.476,24.289,23.953,23.429,22.852,22.429,22.243,22.557,22.535,
-22.470,22.317,22.183,22.182,22.312,22.480,22.605,22.666,22.657,22.545,22.270,21.827,21.330,20.969,20.846,20.862,
-20.806,20.584,20.300,20.099,19.978,19.808,19.543,19.306,19.246,19.354,19.475,19.495,19.461,19.494,19.647,19.866,
-20.078,20.240,20.328,20.315,20.209,20.089,20.030,20.002,19.890,19.620,19.223,18.755,18.215,17.588,16.938,16.368,
-15.908,15.504,15.127,14.803,14.537,14.266,13.969,13.739,13.666,13.680,13.607,13.376,13.088,12.855,12.650,12.375,
-12.011,11.632,11.306,11.038,10.814,10.617,10.415,10.169,9.891,9.657,9.544,9.548,9.569,9.473,9.198,8.834,
-8.589,8.616,8.893,9.271,9.644,10.005,10.336,10.536,10.497,10.226,9.830,9.426,9.101,8.921,8.890,8.900,
-8.810,8.578,8.257,7.873,7.387,6.813,6.276,5.880,5.580,5.285,5.039,4.965,5.034,5.011,4.735,4.335,
-4.076,4.024,3.981,3.766,3.436,3.164,3.002,2.841,2.576,2.224,1.876,1.601,1.401,1.211,.925,.489,
--.001,-.349,-.459,-.440,-.469,-.585,-.690,-.704,-.634,-.523,-.432,-.482,-.766,-1.163,-1.409,-1.493,
--1.898,-3.204,-5.365,-7.511,-8.577,-8.125,-6.545,-4.575,-2.737,-1.217,-.129,.274,-.255,-1.611,-3.244,-4.517,
--5.206,-5.576,-5.999,-6.577,-7.171,-7.640,-7.970,-8.247,-8.608,-9.148,-9.707,-9.826,-9.116,-7.769,-6.527,-6.070,
--6.476,-7.325,-8.202,-8.986,-9.769,-10.669,-11.712,-12.787,-13.695,-14.334,-14.835,-15.417,-16.124,-16.773,-17.213,-17.547,
--18.045,-18.880,-19.975,-21.072,-21.957,-22.636,-23.306,-24.083,-24.814,-25.250,-25.422,-25.692,-26.358,-27.299,-28.106,-28.532,
--28.709,-28.962,-29.496,-30.265,-31.067,-31.749,-32.332,-32.935,-33.593,-34.215,-34.757,-35.315,-35.973,-36.649,-37.241,-37.820,
--38.538,-39.395,-40.295,-41.291,-42.515,-43.857,-45.009,-45.959,-47.120,-48.698,-50.190,-50.930,-51.048,-51.469,-52.831,-54.734,
--56.252,-56.942,-57.116,-57.289,-57.684,-58.246,-58.885,-59.573,-60.315,-61.120,-61.974,-62.832,-63.658,-64.474,-65.315,-66.148,
--66.905,-67.581,-68.243,-68.927,-69.605,-70.258,-70.914,-71.599,-72.295,-72.985,-73.680,-74.401,-75.164,-75.996,-76.897,-77.800,
--78.616,-79.337,-80.024,-80.679,-81.219,-81.613,-81.962,-82.360,-82.756,-83.035,-83.219,-83.482,-83.949,-84.561,-85.113,-85.392,
--85.290,-84.872,-84.367,-84.041,-84.035,-84.329,-84.813,-85.321,-85.654,-85.678,-85.453,-85.178,-84.979,-84.817,-84.626,-84.465,
--84.456,-84.671,-85.112,-85.744,-86.446,-87.036,-87.454,-87.870,-88.449,-89.045,-89.288,-89.028,-88.560,-88.333,-88.542,-89.055,
--89.615,-90.017,-90.183,-90.188,-90.202,-90.285,-90.259,-89.886,-89.151,-88.281,-87.480,-86.770,-86.139,-85.704,-85.605,-85.772,
--85.884,-85.590,-84.754,-83.520,-82.181,-80.973,-79.960,-79.069,-78.227,-77.422,-76.643,-75.824,-74.898,-73.868,-72.798,-71.738,
--70.692,-69.638,-68.545,-67.396,-66.246,-65.209,-64.350,-63.606,-62.882,-62.189,-61.615,-61.187,-60.890,-60.809,-61.066,-61.541,
--61.806,-61.543,-60.920,-60.340,-59.830,-58.904,-57.163,-54.857,-52.676,-51.086,-50.017,-49.163,-48.336,-47.487,-46.563,-45.540,
--44.519,-43.625,-42.806,-41.861,-40.718,-39.555,-38.581,-37.790,-37.044,-36.327,-35.766,-35.400,-35.053,-34.532,-33.838,-33.097,
--32.347,-31.491,-30.484,-29.431,-28.497,-27.760,-27.187,-26.701,-26.231,-25.739,-25.214,-24.651,-24.038,-23.383,-22.732,-22.096,
--21.368,-20.434,-19.351,-18.337,-17.495,-16.664,-15.616,-14.319,-12.897,-11.428,-9.931,-8.517,-7.348,-6.430,-5.608,-4.832,
--4.253,-3.972,-3.810,-3.475,-2.869,-2.103,-1.278,-.407,.497,1.417,2.412,3.569,4.849,6.088,7.165,8.112,
-9.045,10.062,11.204,12.397,13.468,14.341,15.193,16.262,17.522,18.716,19.754,20.816,22.003,23.142,24.104,25.075,
-26.246,27.458,28.447,29.302,30.283,31.317,32.096,32.626,33.136,33.402,32.862,31.809,31.802,34.083,37.841,40.863,
-42.001,42.258,43.187,44.916,46.328,46.731,46.583,46.632,47.019,47.458,47.865,48.421,49.168,49.781,49.726,48.585,
-46.420,43.980,42.382,42.309,43.464,44.929,46.049,46.824,47.508,48.115,48.473,48.576,48.624,48.731,48.795,48.725,
-48.617,48.616,48.700,48.748,48.740,48.764,48.815,48.783,48.663,48.623,48.764,48.945,48.978,48.908,48.939,49.137,
-49.362,49.494,49.570,49.664,49.781,49.944,50.228,50.613,50.922,51.023,51.008,51.049,51.162,51.245,51.293,51.408,
-51.616,51.834,52.009,52.174,52.321,52.394,52.434,52.572,52.798,52.904,52.772,52.586,52.600,52.771,52.812,52.584,
-52.270,52.134,52.226,52.376,52.395,52.265,52.187,52.413,52.974,53.592,53.978,54.181,54.457,54.808,54.942,54.792,
-54.789,55.284,55.800,55.270,53.142,49.987,46.781,43.790,40.538,36.933,34.058,33.433,35.423,38.654,41.216,42.358,
-42.793,43.444,44.310,44.748,44.505,44.008,43.678,43.420,42.935,42.229,41.535,40.942,40.372,39.818,39.375,39.050,
-38.768,38.526,38.335,38.053,37.534,36.918,36.510,36.285,35.820,34.906,33.959,33.581,33.885,34.504,35.087,35.446,
-35.313,34.423,32.959,31.576,30.753,30.331,29.895,29.397,29.117,29.128,29.152,28.964,28.698,28.653,28.951,29.454,
-29.870,29.872,29.257,28.151,26.990,26.170,25.718,25.377,24.987,24.679,24.653,24.841,24.897,24.543,23.873,23.249,
-22.920,22.865,23.042,23.556,24.347,24.829,24.257,22.643,21.017,20.448,20.892,21.288,20.778,19.600,18.715,18.781,
-19.596,20.373,20.410,19.579,18.350,17.341,16.804,16.558,16.363,16.187,16.066,15.905,15.602,15.233,14.932,14.665,
-14.320,13.966,13.790,13.780,13.719,13.531,13.393,13.394,13.335,13.058,12.769,12.792,13.094,13.318,13.241,12.972,
-12.678,12.368,12.007,11.659,11.371,11.048,10.587,10.035,9.526,9.136,8.899,8.874,9.046,9.233,9.251,9.155,
-9.165,9.329,9.441,9.344,9.150,9.071,9.123,9.160,9.115,9.067,9.059,9.013,8.875,8.738,8.718,8.777,
-8.771,8.665,8.585,8.637,8.751,8.782,8.712,8.649,8.658,8.670,8.623,8.565,8.567,8.580,8.504,8.375,
-8.375,8.589,8.882,9.084,9.239,9.545,10.055,10.541,10.723,10.568,10.317,10.236,10.378,10.590,10.703,10.694,
-10.656,10.663,10.702,10.744,10.795,10.831,10.732,10.397,9.919,9.563,9.489,9.573,9.559,9.337,9.011,8.722,
-8.500,8.305,8.111,7.915,7.706,7.477,7.244,7.027,6.809,6.568,6.314,6.075,5.856,5.646,5.446,5.276,
-5.132,4.977,4.777,4.531,4.260,3.988,3.728,3.479,3.219,2.927,2.617,2.334,2.110,1.934,1.758,1.540,
-1.277,.996,.723,.447,.121,-.289,-.763,-1.238,-1.646,-1.948,-2.147,-2.295,-2.474,-2.724,-2.989,-3.173,
--3.254,-3.315,-3.434,-3.601,-3.755,-3.881,-4.019,-4.197,-4.401,-4.614,-4.842,-5.096,-5.372,-5.679,-6.028,-6.404,
--6.763,-7.080,-7.368,-7.637,-7.868,-8.062,-8.273,-8.554,-8.892,-9.229,-9.539,-9.841,-10.138,-10.414,-10.671,-10.935,
--11.200,-11.429,-11.623,-11.850,-12.163,-12.530,-12.875,-13.186,-13.518,-13.909,-14.338,-14.776,-15.220,-15.672,-16.105,-16.500,
--16.875,-17.262,-17.662,-18.058,-18.455,-18.886,-19.368,-19.884,-20.407,-20.925,-21.439,-21.943,-22.440,-22.948,-23.485,-24.044,
--24.597,-25.122,-25.627,-26.133,-26.650,-27.172,-27.702,-28.251,-28.816,-29.378,-29.923,-30.462,-31.015,-31.572,-32.098,-32.573,
--33.016,-33.451,-33.880,-34.290,-34.686,-35.087,-35.497,-35.903,-36.284,-36.639,-36.976,-37.310,-37.653,-38.003,-38.331,-38.610,
--38.850,-39.100,-39.410,-39.787,-40.192,-40.578,-40.924,-41.241,-41.555,-41.874,-42.177,-42.447,-42.699,-42.967,-43.253,-43.511,
--43.704,-43.842,-43.959,-44.055,-44.119,-44.177,-44.281,-44.427,-44.536,-44.554,-44.516,-44.504,-44.543,-44.583,-44.584,-44.563,
--44.553,-44.555,-44.537,-44.473,-44.360,-44.213,-44.059,-43.918,-43.790,-43.648,-43.469,-43.250,-42.994,-42.689,-42.330,-41.936,
--41.544,-41.167,-40.801,-40.441,-40.089,-39.736,-39.359,-38.951,-38.528,-38.104,-37.667,-37.207,-36.752,-36.337,-35.944,-35.502,
--34.959,-34.346,-33.755,-33.262,-32.878,-32.549,-32.194,-31.750,-31.215,-30.656,-30.156,-29.735,-29.321,-28.820,-28.212,-27.565,
--26.955,-26.379,-25.779,-25.129,-24.471,-23.858,-23.278,-22.681,-22.062,-21.466,-20.915,-20.364,-19.758,-19.112,-18.496,-17.955,
--17.473,-17.006,-16.523,-16.013,-15.493,-14.998,-14.549,-14.121,-13.669,-13.187,-12.694,-12.191,-11.664,-11.148,-10.707,-10.337,
--9.947,-9.494,-9.062,-8.739,-8.467,-8.129,-7.749,-7.484,-7.394,-7.338,-7.157,-6.876,-6.649,-6.588,-6.733,-7.131,
--7.818,-8.698,-9.549,-10.134,-10.285,-9.883,-8.899,-7.510,-6.114,-5.128,-4.734,-4.772,-4.829,-4.482,-3.570,-2.314,
--1.092,-.080,.803,1.597,2.100,2.133,1.889,1.816,2.130,2.620,2.980,3.172,3.350,3.582,3.818,4.064,
-4.381,4.716,4.881,4.791,4.605,4.542,4.620,4.669,4.560,4.316,4.002,3.631,3.202,2.755,2.323,1.881,
-1.412,.989,.699,.494,.233,-.108,-.394,-.558,-.774,-1.268,-2.008,-2.748,-3.364,-3.975,-4.674,-5.330,
--5.777,-6.083,-6.435,-6.837,-7.140,-7.407,-8.012,-9.223,-10.828,-12.300,-13.304,-13.907,-14.357,-14.807,-15.299,-15.861,
--16.511,-17.203,-17.867,-18.522,-19.262,-20.086,-20.772,-21.040,-20.891,-20.719,-20.961,-21.627,-22.314,-22.743,-23.149,-23.993,
--25.361,-26.832,-27.974,-28.772,-29.483,-30.227,-30.893,-31.382,-31.761,-32.158,-32.631,-33.167,-33.745,-34.327,-34.870,-35.386,
--35.907,-36.359,-36.560,-36.454,-36.310,-36.520,-37.167,-37.899,-38.303,-38.342,-38.330,-38.503,-38.748,-38.771,-38.462,-38.025,
--37.802,-38.014,-38.642,-39.484,-40.325,-41.066,-41.652,-41.887,-41.490,-40.521,-39.736,-40.270,-42.765,-46.804,-51.222,-54.875,
--57.094,-57.665,-56.759,-54.955,-53.075,-51.737,-51.041,-50.709,-50.471,-50.243,-50.033,-49.814,-49.528,-49.159,-48.776,-48.496,
--48.377,-48.340,-48.220,-47.918,-47.476,-46.972,-46.430,-45.860,-45.316,-44.833,-44.370,-43.895,-43.469,-43.149,-42.857,-42.490,
--42.101,-41.828,-41.643,-41.337,-40.822,-40.254,-39.781,-39.310,-38.670,-37.877,-37.091,-36.368,-35.632,-34.854,-34.098,-33.386,
--32.675,-31.968,-31.324,-30.722,-30.044,-29.245,-28.407,-27.594,-26.767,-25.939,-25.269,-24.894,-24.729,-24.564,-24.305,-24.004,
--23.695,-23.345,-22.946,-22.555,-22.193,-21.816,-21.398,-20.970,-20.544,-20.078,-19.549,-18.994,-18.447,-17.904,-17.361,-16.854,
--16.392,-15.934,-15.451,-14.972,-14.510,-14.016,-13.442,-12.820,-12.214,-11.622,-10.999,-10.349,-9.720,-9.119,-8.510,-7.889,
--7.310,-6.794,-6.299,-5.769,-5.196,-4.593,-3.966,-3.317,-2.659,-2.000,-1.335,-.672,-.024,.620,1.296,2.015,
-2.746,3.466,4.189,4.921,5.622,6.256,6.842,7.429,8.028,8.627,9.231,9.851,10.465,11.049,11.630,12.258,
-12.924,13.553,14.111,14.660,15.260,15.854,16.322,16.664,17.086,17.838,18.930,20.042,20.754,20.916,20.755,20.596,
-20.527,20.405,20.147,19.885,19.787,19.846,19.935,20.024,20.209,20.543,20.942,21.308,21.640,21.989,22.354,22.715,
-23.121,23.657,24.317,24.994,25.645,26.408,27.464,28.741,29.837,30.314,30.107,29.600,29.270,29.276,29.454,29.631,
-29.826,30.112,30.425,30.640,30.781,31.020,31.452,31.988,32.487,32.865,33.020,32.782,32.089,31.175,30.436,30.084,
-30.030,30.105,30.265,30.500,30.689,30.704,30.599,30.556,30.627,30.650,30.480,30.190,29.953,29.804,29.644,29.429,
-29.248,29.172,29.133,29.026,28.854,28.710,28.632,28.553,28.415,28.270,28.237,28.395,28.718,29.098,29.380,29.396,
-29.017,28.242,27.228,26.226,25.434,24.906,24.592,24.428,24.359,24.285,24.064,23.631,23.106,22.713,22.557,23.103,
-22.962,22.771,22.521,22.337,22.337,22.503,22.683,22.732,22.641,22.518,22.431,22.303,22.004,21.554,21.157,20.982,
-20.950,20.827,20.521,20.176,19.949,19.796,19.571,19.282,19.109,19.162,19.333,19.433,19.432,19.461,19.619,19.856,
-20.056,20.182,20.270,20.337,20.350,20.299,20.229,20.170,20.072,19.859,19.542,19.203,18.841,18.343,17.651,16.908,
-16.330,15.953,15.609,15.164,14.673,14.258,13.933,13.662,13.492,13.501,13.614,13.626,13.427,13.119,12.843,12.593,
-12.275,11.882,11.509,11.213,10.963,10.715,10.476,10.245,9.993,9.724,9.520,9.456,9.481,9.430,9.171,8.739,
-8.338,8.187,8.346,8.689,9.045,9.366,9.700,10.038,10.248,10.207,9.924,9.519,9.118,8.826,8.709,8.731,
-8.720,8.514,8.137,7.741,7.378,6.951,6.398,5.827,5.371,5.006,4.659,4.397,4.366,4.518,4.577,4.352,
-3.977,3.732,3.685,3.640,3.421,3.078,2.782,2.603,2.457,2.229,1.888,1.491,1.132,.865,.646,.368,
--.015,-.409,-.678,-.807,-.903,-1.028,-1.112,-1.083,-1.000,-.982,-1.035,-1.083,-1.144,-1.348,-1.710,-2.043,
--2.245,-2.604,-3.610,-5.349,-7.184,-8.165,-7.789,-6.351,-4.578,-3.002,-1.712,-.669,-.095,-.400,-1.683,-3.425,
--4.845,-5.557,-5.806,-6.061,-6.536,-7.142,-7.732,-8.243,-8.654,-9.003,-9.389,-9.799,-9.929,-9.391,-8.213,-7.000,
--6.459,-6.798,-7.665,-8.596,-9.405,-10.183,-11.072,-12.101,-13.167,-14.122,-14.906,-15.588,-16.274,-16.972,-17.611,-18.158,
--18.677,-19.268,-19.993,-20.835,-21.693,-22.451,-23.100,-23.767,-24.529,-25.239,-25.692,-25.959,-26.390,-27.186,-28.099,-28.707,
--28.912,-29.029,-29.412,-30.125,-30.981,-31.774,-32.431,-33.008,-33.598,-34.223,-34.823,-35.370,-35.934,-36.586,-37.282,-37.935,
--38.563,-39.257,-40.028,-40.836,-41.732,-42.812,-44.008,-45.136,-46.210,-47.469,-48.944,-50.200,-50.845,-51.156,-51.886,-53.376,
--55.143,-56.447,-57.065,-57.327,-57.621,-58.070,-58.638,-59.291,-60.014,-60.789,-61.616,-62.494,-63.384,-64.233,-65.045,-65.864,
--66.688,-67.463,-68.161,-68.812,-69.447,-70.074,-70.709,-71.384,-72.103,-72.830,-73.537,-74.240,-74.961,-75.715,-76.511,-77.332,
--78.120,-78.839,-79.549,-80.323,-81.114,-81.771,-82.238,-82.619,-83.005,-83.334,-83.530,-83.695,-84.022,-84.556,-85.151,-85.650,
--85.986,-86.101,-85.909,-85.430,-84.902,-84.662,-84.907,-85.555,-86.297,-86.775,-86.810,-86.510,-86.136,-85.849,-85.605,-85.314,
--85.009,-84.816,-84.827,-85.066,-85.522,-86.123,-86.731,-87.250,-87.736,-88.297,-88.883,-89.292,-89.403,-89.325,-89.284,-89.432,
--89.793,-90.286,-90.732,-90.937,-90.873,-90.716,-90.613,-90.462,-90.037,-89.299,-88.454,-87.700,-87.050,-86.475,-86.100,-86.099,
--86.414,-86.677,-86.452,-85.551,-84.136,-82.573,-81.185,-80.091,-79.220,-78.437,-77.651,-76.822,-75.931,-74.973,-73.962,-72.913,
--71.828,-70.720,-69.625,-68.550,-67.462,-66.359,-65.326,-64.463,-63.752,-63.080,-62.391,-61.756,-61.296,-61.097,-61.193,-61.494,
--61.702,-61.490,-60.891,-60.395,-60.396,-60.551,-59.956,-58.090,-55.422,-52.950,-51.236,-50.097,-49.106,-48.113,-47.182,-46.299,
--45.366,-44.399,-43.495,-42.627,-41.633,-40.467,-39.308,-38.333,-37.505,-36.703,-35.962,-35.432,-35.107,-34.762,-34.211,-33.504,
--32.786,-32.058,-31.201,-30.187,-29.151,-28.228,-27.436,-26.724,-26.082,-25.529,-25.047,-24.581,-24.067,-23.460,-22.758,-22.022,
--21.310,-20.580,-19.713,-18.678,-17.612,-16.664,-15.795,-14.819,-13.608,-12.192,-10.683,-9.203,-7.885,-6.804,-5.893,-5.011,
--4.148,-3.480,-3.126,-2.953,-2.698,-2.227,-1.584,-.852,-.055,.811,1.768,2.864,4.121,5.442,6.671,7.745,
-8.731,9.728,10.784,11.895,13.012,14.039,14.958,15.910,17.048,18.296,19.427,20.403,21.432,22.625,23.808,24.830,
-25.844,27.045,28.289,29.280,30.044,30.889,31.897,32.803,33.416,33.788,33.839,33.306,32.440,32.347,34.035,37.121,
-40.038,41.675,42.421,43.381,44.937,46.472,47.316,47.527,47.674,48.146,48.848,49.465,49.900,50.382,51.090,51.628,
-51.081,48.885,45.686,43.079,42.308,43.275,44.891,46.235,47.171,47.961,48.662,49.093,49.212,49.229,49.331,49.474,
-49.519,49.455,49.379,49.332,49.284,49.252,49.291,49.367,49.365,49.274,49.238,49.339,49.446,49.397,49.259,49.256,
-49.454,49.681,49.780,49.791,49.838,49.961,50.145,50.405,50.735,51.047,51.256,51.382,51.490,51.582,51.642,51.724,
-51.893,52.112,52.292,52.430,52.569,52.681,52.706,52.720,52.867,53.101,53.171,52.971,52.736,52.733,52.889,52.896,
-52.651,52.384,52.330,52.443,52.507,52.426,52.342,52.483,52.938,53.543,54.011,54.230,54.367,54.611,54.866,54.902,
-54.795,54.928,55.365,55.430,54.231,51.592,48.228,44.894,41.640,38.161,34.789,32.773,33.283,36.126,39.662,42.150,
-43.140,43.442,43.887,44.425,44.542,44.161,43.737,43.557,43.382,42.898,42.194,41.566,41.076,40.580,40.043,39.571,
-39.188,38.831,38.527,38.336,38.128,37.698,37.118,36.692,36.443,35.977,35.069,34.161,33.961,34.667,35.836,36.885,
-37.415,37.137,35.948,34.233,32.736,31.865,31.324,30.632,29.816,29.301,29.259,29.386,29.350,29.146,28.950,28.857,
-28.910,29.161,29.520,29.640,29.188,28.225,27.174,26.373,25.803,25.313,24.979,25.056,25.547,26.007,25.914,25.220,
-24.364,23.753,23.429,23.349,23.680,24.443,24.986,24.384,22.637,21.070,21.085,22.564,23.914,23.724,22.097,20.283,
-19.349,19.374,19.710,19.683,19.073,18.170,17.433,17.065,16.904,16.723,16.496,16.298,16.098,15.816,15.492,15.213,
-14.932,14.559,14.188,14.025,14.063,14.062,13.912,13.763,13.712,13.604,13.339,13.159,13.346,13.750,13.911,13.642,
-13.205,12.879,12.617,12.261,11.860,11.559,11.315,10.931,10.332,9.658,9.108,8.797,8.757,8.929,9.153,9.277,
-9.316,9.393,9.527,9.581,9.481,9.347,9.331,9.399,9.398,9.290,9.199,9.205,9.229,9.165,9.046,8.994,
-9.032,9.041,8.929,8.761,8.671,8.688,8.716,8.687,8.644,8.642,8.651,8.627,8.626,8.733,8.904,8.966,
-8.848,8.700,8.724,8.949,9.261,9.617,10.078,10.623,11.045,11.136,10.912,10.612,10.468,10.539,10.747,10.983,
-11.152,11.172,11.011,10.756,10.594,10.662,10.885,11.004,10.815,10.374,9.945,9.728,9.688,9.646,9.484,9.223,
-8.942,8.685,8.451,8.233,8.020,7.808,7.600,7.395,7.175,6.922,6.651,6.405,6.208,6.034,5.856,5.668,
-5.478,5.281,5.070,4.851,4.630,4.397,4.142,3.879,3.617,3.338,3.017,2.681,2.395,2.190,2.025,1.836,
-1.595,1.326,1.060,.799,.517,.176,-.238,-.701,-1.151,-1.532,-1.817,-2.021,-2.190,-2.383,-2.619,-2.853,
--3.026,-3.137,-3.251,-3.411,-3.584,-3.712,-3.806,-3.933,-4.126,-4.352,-4.563,-4.749,-4.935,-5.149,-5.416,-5.740,
--6.095,-6.433,-6.731,-7.003,-7.255,-7.467,-7.634,-7.796,-8.012,-8.296,-8.619,-8.953,-9.282,-9.585,-9.850,-10.104,
--10.384,-10.685,-10.966,-11.215,-11.481,-11.806,-12.170,-12.529,-12.877,-13.245,-13.647,-14.069,-14.504,-14.956,-15.418,-15.859,
--16.263,-16.645,-17.025,-17.403,-17.771,-18.141,-18.542,-18.988,-19.474,-19.984,-20.509,-21.042,-21.576,-22.113,-22.656,-23.206,
--23.756,-24.294,-24.818,-25.340,-25.872,-26.411,-26.936,-27.441,-27.948,-28.484,-29.046,-29.612,-30.172,-30.737,-31.302,-31.837,
--32.323,-32.771,-33.197,-33.600,-33.983,-34.375,-34.802,-35.238,-35.632,-35.974,-36.306,-36.661,-37.020,-37.350,-37.652,-37.953,
--38.263,-38.573,-38.885,-39.219,-39.585,-39.966,-40.337,-40.687,-41.022,-41.343,-41.641,-41.903,-42.137,-42.380,-42.662,-42.966,
--43.236,-43.437,-43.595,-43.735,-43.842,-43.895,-43.946,-44.073,-44.267,-44.400,-44.381,-44.273,-44.227,-44.294,-44.389,-44.420,
--44.394,-44.365,-44.337,-44.276,-44.175,-44.065,-43.967,-43.866,-43.749,-43.616,-43.466,-43.289,-43.082,-42.854,-42.593,-42.272,
--41.889,-41.478,-41.072,-40.673,-40.270,-39.876,-39.508,-39.155,-38.784,-38.385,-37.975,-37.561,-37.139,-36.722,-36.331,-35.942,
--35.485,-34.921,-34.303,-33.721,-33.226,-32.816,-32.466,-32.129,-31.717,-31.163,-30.523,-29.943,-29.503,-29.112,-28.618,-27.983,
--27.305,-26.689,-26.141,-25.601,-25.033,-24.445,-23.844,-23.229,-22.608,-22.009,-21.444,-20.890,-20.308,-19.686,-19.048,-18.440,
--17.881,-17.353,-16.824,-16.284,-15.766,-15.309,-14.908,-14.509,-14.060,-13.565,-13.071,-12.600,-12.114,-11.585,-11.057,-10.605,
--10.228,-9.850,-9.429,-9.021,-8.683,-8.367,-7.992,-7.588,-7.287,-7.133,-7.012,-6.797,-6.514,-6.297,-6.229,-6.287,
--6.438,-6.711,-7.162,-7.809,-8.602,-9.395,-9.941,-9.971,-9.354,-8.210,-6.880,-5.758,-5.076,-4.764,-4.536,-4.162,
--3.649,-3.107,-2.497,-1.651,-.569,.456,1.137,1.509,1.838,2.261,2.676,2.978,3.214,3.471,3.736,3.985,
-4.297,4.721,5.111,5.229,5.052,4.825,4.781,4.909,5.044,5.098,5.073,4.911,4.512,3.911,3.331,2.943,
-2.674,2.343,1.928,1.563,1.286,.961,.514,.094,-.149,-.322,-.666,-1.208,-1.758,-2.250,-2.868,-3.732,
--4.646,-5.320,-5.723,-6.031,-6.317,-6.546,-6.862,-7.612,-8.947,-10.553,-11.927,-12.846,-13.456,-13.984,-14.533,-15.112,
--15.737,-16.415,-17.122,-17.838,-18.582,-19.370,-20.142,-20.752,-21.063,-21.111,-21.163,-21.514,-22.171,-22.829,-23.271,-23.707,
--24.546,-25.864,-27.275,-28.386,-29.211,-30.018,-30.918,-31.758,-32.382,-32.818,-33.197,-33.617,-34.102,-34.621,-35.088,-35.439,
--35.718,-36.022,-36.326,-36.474,-36.407,-36.338,-36.562,-37.105,-37.657,-37.905,-37.854,-37.775,-37.888,-38.133,-38.253,-38.051,
--37.609,-37.285,-37.463,-38.220,-39.244,-40.134,-40.775,-41.299,-41.664,-41.513,-40.668,-39.712,-39.780,-41.636,-45.027,-48.990,
--52.574,-55.138,-56.246,-55.740,-54.048,-52.128,-50.817,-50.262,-50.057,-49.822,-49.511,-49.235,-49.012,-48.767,-48.468,-48.182,
--48.000,-47.940,-47.917,-47.802,-47.529,-47.127,-46.656,-46.146,-45.627,-45.155,-44.755,-44.380,-43.987,-43.618,-43.320,-43.037,
--42.686,-42.301,-41.987,-41.733,-41.412,-40.987,-40.574,-40.235,-39.846,-39.271,-38.553,-37.832,-37.137,-36.394,-35.591,-34.784,
--33.983,-33.165,-32.373,-31.683,-31.053,-30.351,-29.537,-28.703,-27.897,-27.059,-26.194,-25.473,-25.044,-24.840,-24.669,-24.429,
--24.136,-23.798,-23.391,-22.944,-22.525,-22.141,-21.738,-21.316,-20.932,-20.595,-20.226,-19.764,-19.228,-18.662,-18.086,-17.530,
--17.034,-16.592,-16.143,-15.658,-15.178,-14.724,-14.241,-13.680,-13.074,-12.479,-11.884,-11.248,-10.593,-9.972,-9.385,-8.787,
--8.183,-7.623,-7.119,-6.614,-6.061,-5.476,-4.885,-4.283,-3.656,-3.013,-2.368,-1.727,-1.100,-.497,.101,.735,
-1.416,2.120,2.834,3.571,4.321,5.033,5.676,6.279,6.879,7.470,8.042,8.630,9.264,9.905,10.495,11.054,
-11.652,12.301,12.938,13.526,14.103,14.698,15.250,15.685,16.037,16.431,16.959,17.586,18.176,18.583,18.750,18.740,
-18.694,18.717,18.810,18.918,19.015,19.122,19.258,19.424,19.635,19.917,20.261,20.612,20.929,21.231,21.561,21.923,
-22.304,22.738,23.299,23.986,24.687,25.301,25.913,26.735,27.824,28.887,29.491,29.505,29.258,29.199,29.443,29.748,
-29.897,29.951,30.087,30.330,30.560,30.740,30.963,31.297,31.692,32.077,32.424,32.642,32.525,31.964,31.169,30.545,
-30.309,30.345,30.447,30.581,30.793,31.000,31.042,30.925,30.847,30.918,30.986,30.851,30.539,30.253,30.086,29.928,
-29.684,29.436,29.314,29.293,29.228,29.052,28.839,28.670,28.525,28.354,28.199,28.181,28.377,28.740,29.110,29.291,
-29.124,28.561,27.712,26.799,26.031,25.482,25.095,24.791,24.563,24.440,24.383,24.271,24.006,23.635,23.306,23.103,
-23.751,23.424,23.050,22.726,22.591,22.700,22.943,23.104,23.025,22.752,22.493,22.393,22.361,22.171,21.762,21.336,
-21.103,21.011,20.835,20.495,20.147,19.924,19.736,19.434,19.081,18.902,18.987,19.175,19.285,19.346,19.514,19.826,
-20.143,20.327,20.386,20.410,20.431,20.414,20.348,20.272,20.178,19.983,19.637,19.234,18.923,18.687,18.320,17.683,
-16.934,16.359,16.029,15.720,15.232,14.631,14.118,13.771,13.536,13.415,13.465,13.625,13.683,13.507,13.181,12.853,
-12.541,12.179,11.786,11.456,11.205,10.952,10.651,10.351,10.096,9.858,9.618,9.442,9.383,9.351,9.160,8.729,
-8.198,7.824,7.771,7.997,8.326,8.629,8.917,9.251,9.591,9.787,9.736,9.481,9.143,8.830,8.626,8.585,
-8.626,8.526,8.129,7.558,7.084,6.787,6.473,5.979,5.393,4.896,4.502,4.121,3.808,3.736,3.905,4.055,
-3.956,3.674,3.448,3.373,3.322,3.143,2.830,2.480,2.179,1.945,1.730,1.452,1.076,.666,.326,.074,
--.176,-.469,-.738,-.911,-1.050,-1.269,-1.538,-1.680,-1.604,-1.459,-1.461,-1.625,-1.779,-1.838,-1.943,-2.263,
--2.742,-3.168,-3.492,-3.955,-4.783,-5.801,-6.458,-6.310,-5.438,-4.335,-3.372,-2.500,-1.557,-.775,-.766,-1.874,
--3.661,-5.215,-5.983,-6.162,-6.290,-6.656,-7.201,-7.796,-8.390,-8.930,-9.343,-9.637,-9.862,-9.898,-9.487,-8.593,
--7.649,-7.271,-7.719,-8.731,-9.855,-10.842,-11.719,-12.598,-13.512,-14.415,-15.263,-16.053,-16.791,-17.455,-18.019,-18.522,
--19.048,-19.641,-20.260,-20.875,-21.517,-22.202,-22.871,-23.474,-24.073,-24.732,-25.365,-25.854,-26.305,-26.986,-27.937,-28.819,
--29.289,-29.437,-29.667,-30.227,-31.011,-31.797,-32.493,-33.119,-33.698,-34.257,-34.851,-35.502,-36.175,-36.832,-37.480,-38.125,
--38.751,-39.369,-40.018,-40.713,-41.444,-42.242,-43.169,-44.226,-45.364,-46.602,-47.996,-49.426,-50.578,-51.315,-51.952,-52.949,
--54.346,-55.707,-56.635,-57.155,-57.545,-57.974,-58.457,-59.014,-59.694,-60.476,-61.285,-62.102,-62.965,-63.865,-64.733,-65.541,
--66.332,-67.138,-67.931,-68.672,-69.349,-69.974,-70.578,-71.212,-71.915,-72.667,-73.409,-74.113,-74.804,-75.514,-76.260,-77.049,
--77.860,-78.623,-79.300,-79.963,-80.715,-81.527,-82.253,-82.818,-83.279,-83.682,-83.962,-84.103,-84.267,-84.632,-85.156,-85.641,
--86.018,-86.385,-86.741,-86.851,-86.512,-85.885,-85.448,-85.608,-86.368,-87.334,-88.001,-88.086,-87.689,-87.148,-86.719,-86.393,
--86.030,-85.594,-85.204,-84.995,-85.011,-85.230,-85.615,-86.105,-86.637,-87.182,-87.757,-88.363,-88.954,-89.467,-89.855,-90.112,
--90.304,-90.563,-90.958,-91.363,-91.541,-91.402,-91.112,-90.860,-90.604,-90.155,-89.460,-88.677,-87.959,-87.308,-86.717,-86.344,
--86.384,-86.782,-87.150,-87.016,-86.147,-84.673,-82.970,-81.425,-80.241,-79.373,-78.634,-77.855,-76.977,-76.022,-75.031,-74.020,
--72.971,-71.863,-70.711,-69.579,-68.510,-67.482,-66.455,-65.459,-64.578,-63.838,-63.154,-62.455,-61.807,-61.395,-61.354,-61.610,
--61.843,-61.668,-60.986,-60.224,-60.054,-60.654,-61.273,-60.773,-58.728,-55.870,-53.351,-51.678,-50.516,-49.372,-48.170,-47.100,
--46.208,-45.342,-44.400,-43.412,-42.390,-41.290,-40.141,-39.074,-38.144,-37.254,-36.342,-35.545,-35.033,-34.739,-34.390,-33.829,
--33.153,-32.498,-31.821,-30.989,-30.011,-29.045,-28.190,-27.394,-26.585,-25.805,-25.151,-24.637,-24.179,-23.666,-23.022,-22.234,
--21.367,-20.529,-19.760,-18.977,-18.078,-17.081,-16.086,-15.122,-14.087,-12.879,-11.521,-10.133,-8.831,-7.661,-6.593,-5.545,
--4.468,-3.444,-2.665,-2.238,-2.050,-1.863,-1.526,-1.044,-.473,.191,1.012,2.051,3.311,4.703,6.068,7.295,
-8.397,9.453,10.496,11.503,12.485,13.485,14.508,15.531,16.587,17.736,18.935,20.054,21.075,22.132,23.299,24.460,
-25.511,26.558,27.742,28.951,29.938,30.714,31.557,32.595,33.586,34.217,34.417,34.255,33.769,33.173,33.090,34.183,
-36.434,39.019,41.054,42.379,43.503,44.874,46.351,47.433,47.889,48.075,48.560,49.478,50.390,50.883,51.164,51.741,
-52.478,52.331,50.365,46.997,43.900,42.591,43.222,44.795,46.293,47.402,48.288,49.047,49.570,49.798,49.873,49.972,
-50.113,50.185,50.141,50.042,49.956,49.883,49.818,49.800,49.843,49.892,49.900,49.905,49.940,49.942,49.827,49.660,
-49.611,49.738,49.915,50.011,50.048,50.120,50.252,50.413,50.621,50.921,51.288,51.617,51.830,51.930,51.976,52.034,
-52.155,52.333,52.516,52.671,52.821,52.965,53.038,53.030,53.069,53.258,53.460,53.415,53.111,52.856,52.887,53.049,
-53.022,52.766,52.542,52.533,52.610,52.568,52.434,52.450,52.784,53.344,53.881,54.235,54.450,54.653,54.837,54.861,
-54.722,54.698,55.017,55.367,54.949,53.163,50.157,46.575,42.874,39.123,35.514,32.824,32.106,33.796,37.138,40.586,
-42.883,43.831,44.072,44.217,44.324,44.187,43.855,43.601,43.485,43.260,42.775,42.195,41.723,41.292,40.742,40.126,
-39.626,39.267,38.934,38.627,38.428,38.248,37.875,37.326,36.860,36.529,36.002,35.080,34.170,33.946,34.595,35.654,
-36.494,36.733,36.232,35.102,33.810,32.936,32.583,32.230,31.406,30.342,29.683,29.664,29.887,29.890,29.611,29.227,
-28.835,28.533,28.572,29.107,29.816,30.026,29.355,28.106,26.921,26.163,25.768,25.635,25.901,26.656,27.529,27.850,
-27.293,26.186,25.076,24.218,23.665,23.600,24.090,24.548,24.053,22.544,21.332,21.852,23.954,25.865,25.943,24.160,
-21.793,20.058,19.274,19.064,18.921,18.576,18.089,17.702,17.540,17.454,17.234,16.881,16.553,16.312,16.084,15.822,
-15.532,15.175,14.728,14.343,14.234,14.362,14.437,14.301,14.105,14.000,13.891,13.697,13.622,13.874,14.228,14.207,
-13.704,13.123,12.818,12.680,12.422,12.041,11.737,11.519,11.159,10.543,9.843,9.308,9.019,8.919,8.948,9.077,
-9.262,9.454,9.612,9.697,9.678,9.600,9.574,9.656,9.761,9.765,9.659,9.554,9.523,9.512,9.435,9.307,
-9.224,9.221,9.213,9.096,8.894,8.738,8.707,8.752,8.786,8.803,8.841,8.879,8.875,8.879,9.004,9.239,
-9.391,9.302,9.062,8.920,9.004,9.243,9.533,9.867,10.241,10.549,10.671,10.614,10.513,10.489,10.574,10.763,
-11.036,11.306,11.415,11.267,10.965,10.758,10.811,11.044,11.208,11.110,10.765,10.347,10.022,9.841,9.756,9.679,
-9.540,9.320,9.049,8.772,8.505,8.235,7.968,7.735,7.538,7.331,7.072,6.789,6.545,6.364,6.214,6.068,
-5.920,5.756,5.548,5.291,5.022,4.766,4.508,4.235,3.971,3.734,3.484,3.175,2.835,2.547,2.339,2.155,
-1.931,1.675,1.432,1.208,.960,.652,.291,-.099,-.493,-.870,-1.211,-1.506,-1.762,-1.997,-2.233,-2.475,
--2.705,-2.901,-3.068,-3.234,-3.404,-3.545,-3.631,-3.696,-3.801,-3.964,-4.141,-4.292,-4.424,-4.575,-4.767,-5.002,
--5.276,-5.579,-5.885,-6.175,-6.447,-6.702,-6.935,-7.143,-7.341,-7.559,-7.815,-8.116,-8.454,-8.803,-9.127,-9.414,
--9.695,-10.009,-10.355,-10.695,-11.009,-11.310,-11.619,-11.939,-12.273,-12.633,-13.015,-13.399,-13.772,-14.157,-14.582,-15.039,
--15.498,-15.939,-16.366,-16.781,-17.174,-17.545,-17.909,-18.292,-18.711,-19.173,-19.672,-20.188,-20.712,-21.252,-21.819,-22.398,
--22.958,-23.486,-23.996,-24.513,-25.046,-25.592,-26.139,-26.667,-27.166,-27.657,-28.169,-28.715,-29.279,-29.845,-30.414,-30.978,
--31.512,-32.005,-32.469,-32.912,-33.319,-33.695,-34.086,-34.526,-34.974,-35.355,-35.663,-35.971,-36.333,-36.711,-37.041,-37.323,
--37.614,-37.952,-38.324,-38.706,-39.089,-39.465,-39.820,-40.150,-40.472,-40.796,-41.109,-41.385,-41.620,-41.837,-42.073,-42.351,
--42.653,-42.931,-43.157,-43.347,-43.517,-43.639,-43.694,-43.742,-43.882,-44.099,-44.242,-44.197,-44.045,-43.971,-44.039,-44.141,
--44.172,-44.155,-44.151,-44.142,-44.065,-43.932,-43.821,-43.760,-43.695,-43.574,-43.413,-43.244,-43.068,-42.871,-42.656,-42.417,
--42.124,-41.761,-41.356,-40.950,-40.543,-40.113,-39.676,-39.275,-38.919,-38.569,-38.199,-37.812,-37.417,-37.016,-36.627,-36.264,
--35.884,-35.408,-34.826,-34.230,-33.708,-33.249,-32.806,-32.389,-32.024,-31.641,-31.119,-30.462,-29.830,-29.341,-28.920,-28.409,
--27.771,-27.112,-26.521,-25.985,-25.459,-24.928,-24.384,-23.801,-23.176,-22.551,-21.966,-21.403,-20.820,-20.207,-19.588,-18.981,
--18.384,-17.802,-17.233,-16.667,-16.109,-15.602,-15.189,-14.839,-14.463,-14.001,-13.483,-12.978,-12.511,-12.048,-11.569,-11.095,
--10.658,-10.248,-9.825,-9.372,-8.926,-8.527,-8.177,-7.853,-7.555,-7.309,-7.115,-6.931,-6.724,-6.520,-6.366,-6.265,
--6.172,-6.059,-5.973,-6.019,-6.304,-6.877,-7.693,-8.594,-9.336,-9.656,-9.388,-8.566,-7.440,-6.330,-5.429,-4.735,
--4.189,-3.795,-3.556,-3.336,-2.915,-2.202,-1.313,-.404,.467,1.274,1.920,2.327,2.576,2.829,3.128,3.398,
-3.642,4.006,4.545,5.073,5.349,5.368,5.348,5.432,5.550,5.600,5.619,5.654,5.575,5.168,4.461,3.791,
-3.445,3.337,3.153,2.765,2.327,1.966,1.585,1.077,.571,.268,.110,-.153,-.594,-1.033,-1.393,-1.907,
--2.804,-3.944,-4.950,-5.600,-5.947,-6.122,-6.274,-6.664,-7.564,-8.931,-10.347,-11.409,-12.088,-12.634,-13.240,-13.930,
--14.670,-15.439,-16.207,-16.952,-17.714,-18.542,-19.400,-20.181,-20.811,-21.282,-21.645,-22.010,-22.513,-23.174,-23.829,-24.346,
--24.877,-25.731,-26.971,-28.286,-29.353,-30.193,-31.053,-32.030,-32.964,-33.665,-34.116,-34.439,-34.773,-35.183,-35.617,-35.943,
--36.087,-36.139,-36.254,-36.451,-36.596,-36.623,-36.659,-36.864,-37.206,-37.485,-37.557,-37.467,-37.385,-37.442,-37.607,-37.685,
--37.459,-36.954,-36.561,-36.781,-37.749,-39.060,-40.158,-40.842,-41.252,-41.409,-41.037,-40.046,-39.031,-39.002,-40.533,-43.326,
--46.629,-49.806,-52.359,-53.701,-53.415,-51.830,-50.009,-48.919,-48.688,-48.778,-48.716,-48.479,-48.250,-48.099,-47.969,-47.829,
--47.714,-47.650,-47.613,-47.549,-47.401,-47.146,-46.802,-46.399,-45.952,-45.484,-45.046,-44.682,-44.368,-44.060,-43.757,-43.483,
--43.209,-42.881,-42.514,-42.173,-41.867,-41.535,-41.172,-40.842,-40.544,-40.156,-39.588,-38.907,-38.226,-37.554,-36.834,-36.071,
--35.304,-34.511,-33.659,-32.805,-32.043,-31.351,-30.617,-29.808,-28.993,-28.191,-27.340,-26.464,-25.734,-25.283,-25.044,-24.852,
--24.621,-24.342,-23.989,-23.547,-23.085,-22.681,-22.310,-21.892,-21.433,-21.027,-20.700,-20.369,-19.952,-19.441,-18.867,-18.261,
--17.680,-17.182,-16.749,-16.295,-15.787,-15.282,-14.816,-14.341,-13.805,-13.232,-12.668,-12.099,-11.493,-10.877,-10.298,-9.745,
--9.170,-8.582,-8.031,-7.520,-6.992,-6.414,-5.810,-5.204,-4.584,-3.944,-3.300,-2.664,-2.034,-1.412,-.814,-.231,
-.371,1.007,1.663,2.340,3.053,3.781,4.465,5.084,5.678,6.277,6.854,7.399,7.966,8.604,9.269,9.886,
-10.456,11.048,11.685,12.324,12.940,13.559,14.173,14.706,15.114,15.458,15.823,16.204,16.543,16.827,17.101,17.380,
-17.619,17.787,17.922,18.073,18.238,18.394,18.552,18.757,19.028,19.336,19.646,19.947,20.242,20.530,20.817,21.127,
-21.483,21.887,22.350,22.905,23.553,24.194,24.707,25.134,25.710,26.618,27.708,28.584,29.012,29.163,29.387,29.798,
-30.199,30.386,30.395,30.402,30.491,30.623,30.774,30.976,31.241,31.523,31.795,32.049,32.188,32.023,31.485,30.810,
-30.377,30.332,30.486,30.605,30.695,30.890,31.166,31.326,31.291,31.221,31.270,31.342,31.220,30.884,30.534,30.307,
-30.115,29.831,29.508,29.303,29.236,29.162,28.977,28.739,28.554,28.433,28.316,28.208,28.207,28.389,28.713,29.012,
-29.075,28.761,28.097,27.289,26.595,26.144,25.863,25.595,25.264,24.943,24.740,24.664,24.616,24.493,24.281,24.028,
-23.751,24.374,23.938,23.443,23.075,22.980,23.146,23.394,23.489,23.304,22.920,22.576,22.440,22.420,22.269,21.892,
-21.469,21.214,21.086,20.870,20.494,20.119,19.868,19.646,19.309,18.929,18.727,18.788,18.966,19.124,19.306,19.625,
-20.052,20.426,20.636,20.710,20.718,20.667,20.538,20.363,20.204,20.043,19.774,19.350,18.899,18.614,18.494,18.291,
-17.794,17.104,16.518,16.149,15.805,15.285,14.656,14.134,13.803,13.594,13.481,13.518,13.658,13.701,13.507,13.154,
-12.800,12.474,12.121,11.757,11.459,11.215,10.931,10.585,10.271,10.054,9.872,9.655,9.429,9.246,9.041,8.685,
-8.167,7.654,7.356,7.348,7.537,7.786,8.038,8.326,8.669,8.981,9.131,9.074,8.889,8.667,8.465,8.346,
-8.372,8.453,8.317,7.785,7.045,6.482,6.225,6.014,5.581,4.987,4.465,4.068,3.686,3.330,3.183,3.307,
-3.498,3.513,3.345,3.169,3.097,3.076,2.986,2.741,2.332,1.846,1.424,1.139,.910,.612,.243,-.091,
--.341,-.568,-.811,-1.007,-1.125,-1.275,-1.589,-2.001,-2.272,-2.265,-2.116,-2.069,-2.199,-2.369,-2.450,-2.521,
--2.782,-3.287,-3.832,-4.155,-4.234,-4.297,-4.519,-4.769,-4.778,-4.501,-4.174,-3.927,-3.513,-2.646,-1.601,-1.210,
--2.070,-3.838,-5.512,-6.386,-6.587,-6.671,-6.960,-7.394,-7.874,-8.423,-9.037,-9.574,-9.902,-10.018,-9.935,-9.587,
--8.995,-8.464,-8.450,-9.162,-10.383,-11.707,-12.876,-13.867,-14.734,-15.483,-16.113,-16.690,-17.306,-17.963,-18.553,-19.003,
--19.387,-19.854,-20.432,-21.016,-21.541,-22.080,-22.708,-23.363,-23.940,-24.445,-24.957,-25.473,-25.972,-26.572,-27.437,-28.472,
--29.317,-29.758,-30.010,-30.442,-31.132,-31.875,-32.535,-33.177,-33.848,-34.458,-34.965,-35.499,-36.205,-37.034,-37.816,-38.463,
--39.018,-39.540,-40.056,-40.598,-41.206,-41.886,-42.623,-43.447,-44.435,-45.656,-47.098,-48.625,-49.996,-51.041,-51.867,-52.791,
--53.982,-55.237,-56.210,-56.820,-57.283,-57.788,-58.315,-58.814,-59.377,-60.115,-60.974,-61.815,-62.606,-63.427,-64.309,-65.188,
--66.010,-66.798,-67.591,-68.387,-69.155,-69.867,-70.515,-71.127,-71.769,-72.491,-73.262,-74.009,-74.709,-75.395,-76.099,-76.835,
--77.623,-78.455,-79.255,-79.942,-80.555,-81.215,-81.967,-82.716,-83.371,-83.922,-84.358,-84.622,-84.738,-84.896,-85.253,-85.712,
--86.059,-86.295,-86.644,-87.182,-87.608,-87.535,-86.970,-86.387,-86.341,-87.016,-88.104,-89.022,-89.314,-88.938,-88.234,-87.580,
--87.078,-86.590,-86.018,-85.469,-85.116,-85.001,-85.038,-85.166,-85.414,-85.827,-86.387,-87.037,-87.757,-88.565,-89.427,-90.207,
--90.754,-91.070,-91.321,-91.649,-91.977,-92.091,-91.905,-91.560,-91.226,-90.885,-90.403,-89.750,-89.034,-88.339,-87.647,-86.990,
--86.557,-86.541,-86.887,-87.243,-87.185,-86.467,-85.128,-83.452,-81.823,-80.529,-79.605,-78.863,-78.085,-77.177,-76.176,-75.140,
--74.091,-73.017,-71.899,-70.740,-69.584,-68.500,-67.512,-66.573,-65.637,-64.730,-63.907,-63.167,-62.472,-61.885,-61.589,-61.695,
--61.995,-62.015,-61.410,-60.390,-59.698,-59.983,-61.059,-61.835,-61.173,-58.911,-56.005,-53.603,-52.070,-50.961,-49.767,-48.454,
--47.278,-46.323,-45.422,-44.399,-43.233,-42.006,-40.829,-39.824,-39.025,-38.287,-37.398,-36.347,-35.390,-34.758,-34.378,-33.984,
--33.438,-32.830,-32.250,-31.615,-30.807,-29.871,-28.967,-28.157,-27.354,-26.486,-25.626,-24.905,-24.352,-23.866,-23.317,-22.622,
--21.764,-20.799,-19.844,-18.988,-18.217,-17.437,-16.581,-15.649,-14.637,-13.501,-12.227,-10.909,-9.688,-8.613,-7.590,-6.476,
--5.209,-3.873,-2.667,-1.803,-1.349,-1.159,-.987,-.686,-.282,.152,.657,1.390,2.463,3.822,5.278,6.656,
-7.909,9.093,10.243,11.311,12.252,13.132,14.085,15.162,16.291,17.392,18.481,19.602,20.736,21.836,22.906,23.976,
-25.038,26.081,27.154,28.300,29.444,30.445,31.302,32.185,33.202,34.201,34.891,35.107,34.904,34.435,33.887,33.572,
-33.944,35.339,37.624,40.171,42.311,43.859,45.132,46.412,47.527,48.135,48.349,48.762,49.727,50.862,51.553,51.794,
-52.104,52.566,52.348,50.553,47.406,44.325,42.756,43.069,44.562,46.268,47.638,48.621,49.360,49.936,50.341,50.573,
-50.692,50.752,50.753,50.688,50.604,50.557,50.530,50.463,50.369,50.330,50.384,50.462,50.483,50.436,50.344,50.211,
-50.063,49.977,50.021,50.164,50.329,50.480,50.627,50.763,50.878,51.031,51.312,51.713,52.085,52.281,52.312,52.318,
-52.413,52.576,52.727,52.844,52.982,53.164,53.316,53.359,53.360,53.477,53.716,53.845,53.660,53.284,53.067,53.149,
-53.283,53.168,52.834,52.562,52.494,52.488,52.392,52.299,52.441,52.874,53.409,53.843,54.171,54.506,54.818,54.897,
-54.647,54.353,54.461,55.003,55.332,54.577,52.352,48.940,44.857,40.491,36.274,32.987,31.564,32.443,35.156,38.570,
-41.548,43.472,44.349,44.557,44.480,44.322,44.155,44.020,43.894,43.655,43.210,42.667,42.236,41.924,41.504,40.846,
-40.142,39.660,39.403,39.178,38.904,38.647,38.375,37.952,37.394,36.903,36.522,35.993,35.156,34.312,33.953,34.167,
-34.556,34.681,34.379,33.706,32.860,32.224,32.145,32.470,32.537,31.884,30.848,30.185,30.176,30.392,30.333,29.972,
-29.543,29.115,28.687,28.517,28.962,29.891,30.531,30.150,28.842,27.431,26.616,26.400,26.436,26.671,27.337,28.332,
-28.989,28.687,27.512,26.086,24.892,24.059,23.675,23.796,24.044,23.697,22.620,21.796,22.396,24.315,26.058,26.204,
-24.677,22.496,20.662,19.543,19.032,18.854,18.726,18.505,18.273,18.162,18.102,17.896,17.506,17.094,16.787,16.551,
-16.300,15.984,15.558,15.040,14.623,14.529,14.702,14.808,14.649,14.378,14.205,14.104,13.992,14.003,14.265,14.521,
-14.321,13.634,12.953,12.688,12.698,12.595,12.286,11.956,11.671,11.284,10.756,10.292,10.059,9.953,9.761,9.466,
-9.265,9.306,9.522,9.723,9.795,9.775,9.786,9.903,10.085,10.224,10.253,10.194,10.114,10.035,9.927,9.757,
-9.551,9.380,9.288,9.246,9.184,9.080,8.991,8.973,9.012,9.069,9.146,9.259,9.355,9.360,9.313,9.349,
-9.502,9.603,9.480,9.195,8.990,9.001,9.139,9.265,9.370,9.520,9.719,9.899,10.034,10.160,10.305,10.467,
-10.658,10.905,11.170,11.333,11.314,11.190,11.128,11.211,11.356,11.412,11.295,11.025,10.673,10.321,10.060,9.938,
-9.908,9.844,9.657,9.374,9.075,8.788,8.487,8.175,7.909,7.714,7.531,7.294,7.013,6.752,6.540,6.368,
-6.237,6.153,6.074,5.921,5.662,5.341,5.009,4.674,4.347,4.072,3.863,3.657,3.379,3.054,2.772,2.559,
-2.344,2.080,1.819,1.623,1.461,1.242,.928,.571,.232,-.084,-.403,-.735,-1.072,-1.399,-1.710,-2.000,
--2.270,-2.521,-2.752,-2.957,-3.128,-3.263,-3.360,-3.429,-3.498,-3.595,-3.710,-3.811,-3.893,-3.993,-4.146,-4.346,
--4.560,-4.780,-5.026,-5.307,-5.603,-5.888,-6.162,-6.441,-6.733,-7.021,-7.288,-7.541,-7.811,-8.121,-8.458,-8.789,
--9.102,-9.420,-9.763,-10.123,-10.478,-10.813,-11.121,-11.402,-11.675,-11.980,-12.345,-12.744,-13.123,-13.468,-13.817,-14.215,
--14.663,-15.137,-15.618,-16.097,-16.553,-16.971,-17.357,-17.730,-18.114,-18.526,-18.980,-19.470,-19.965,-20.457,-20.977,-21.552,
--22.153,-22.720,-23.232,-23.729,-24.250,-24.793,-25.332,-25.857,-26.370,-26.873,-27.368,-27.870,-28.391,-28.928,-29.478,-30.039,
--30.596,-31.126,-31.622,-32.105,-32.581,-33.024,-33.423,-33.819,-34.252,-34.690,-35.061,-35.362,-35.669,-36.032,-36.408,-36.734,
--37.016,-37.313,-37.663,-38.056,-38.478,-38.912,-39.322,-39.672,-39.968,-40.256,-40.563,-40.870,-41.151,-41.399,-41.631,-41.863,
--42.111,-42.378,-42.646,-42.891,-43.111,-43.308,-43.453,-43.523,-43.571,-43.691,-43.882,-44.010,-43.966,-43.828,-43.762,-43.816,
--43.880,-43.877,-43.866,-43.913,-43.953,-43.888,-43.743,-43.635,-43.600,-43.544,-43.394,-43.189,-43.005,-42.846,-42.668,-42.457,
--42.216,-41.929,-41.575,-41.181,-40.790,-40.402,-39.986,-39.547,-39.128,-38.750,-38.389,-38.021,-37.642,-37.247,-36.837,-36.443,
--36.090,-35.723,-35.246,-34.666,-34.115,-33.675,-33.267,-32.784,-32.265,-31.834,-31.476,-31.036,-30.442,-29.813,-29.277,-28.795,
--28.255,-27.650,-27.068,-26.538,-26.002,-25.426,-24.846,-24.278,-23.688,-23.069,-22.467,-21.904,-21.335,-20.722,-20.099,-19.511,
--18.941,-18.347,-17.736,-17.150,-16.597,-16.062,-15.561,-15.124,-14.732,-14.322,-13.858,-13.366,-12.880,-12.401,-11.932,-11.492,
--11.087,-10.686,-10.259,-9.807,-9.349,-8.893,-8.454,-8.078,-7.800,-7.595,-7.393,-7.154,-6.909,-6.705,-6.553,-6.417,
--6.257,-6.053,-5.818,-5.596,-5.460,-5.480,-5.699,-6.120,-6.727,-7.467,-8.205,-8.726,-8.830,-8.468,-7.749,-6.829,
--5.815,-4.791,-3.878,-3.205,-2.829,-2.693,-2.645,-2.463,-1.935,-1.022,.037,.879,1.352,1.630,1.961,2.380,
-2.765,3.099,3.519,4.090,4.691,5.168,5.533,5.876,6.163,6.245,6.092,5.888,5.805,5.750,5.458,4.853,
-4.202,3.824,3.720,3.606,3.290,2.855,2.435,1.985,1.424,.882,.563,.423,.185,-.262,-.716,-1.023,
--1.390,-2.151,-3.316,-4.526,-5.414,-5.875,-6.046,-6.208,-6.701,-7.688,-8.948,-10.028,-10.694,-11.128,-11.642,-12.342,
--13.152,-14.018,-14.932,-15.847,-16.724,-17.615,-18.575,-19.532,-20.355,-21.031,-21.664,-22.313,-22.965,-23.623,-24.302,-24.943,
--25.478,-26.024,-26.842,-28.012,-29.287,-30.365,-31.218,-32.041,-32.944,-33.822,-34.512,-34.978,-35.319,-35.672,-36.086,-36.470,
--36.669,-36.656,-36.598,-36.680,-36.889,-37.070,-37.160,-37.251,-37.414,-37.570,-37.589,-37.436,-37.194,-36.992,-36.933,-37.018,
--37.064,-36.823,-36.305,-35.946,-36.287,-37.438,-38.956,-40.276,-41.134,-41.508,-41.308,-40.419,-39.132,-38.265,-38.608,-40.249,
--42.612,-45.116,-47.544,-49.684,-50.965,-50.850,-49.564,-48.108,-47.388,-47.471,-47.803,-47.940,-47.867,-47.749,-47.650,-47.556,
--47.480,-47.436,-47.390,-47.298,-47.161,-46.987,-46.764,-46.482,-46.155,-45.786,-45.374,-44.955,-44.594,-44.316,-44.079,-43.834,
--43.574,-43.299,-43.002,-42.691,-42.397,-42.119,-41.824,-41.506,-41.186,-40.838,-40.375,-39.764,-39.084,-38.418,-37.759,-37.067,
--36.353,-35.645,-34.902,-34.073,-33.202,-32.379,-31.616,-30.854,-30.073,-29.295,-28.491,-27.604,-26.701,-25.962,-25.494,-25.217,
--24.995,-24.765,-24.498,-24.140,-23.686,-23.234,-22.873,-22.548,-22.143,-21.655,-21.187,-20.792,-20.417,-20.000,-19.524,-18.988,
--18.398,-17.811,-17.304,-16.864,-16.405,-15.887,-15.370,-14.900,-14.438,-13.930,-13.396,-12.872,-12.347,-11.797,-11.244,-10.717,
--10.196,-9.645,-9.082,-8.547,-8.028,-7.474,-6.871,-6.245,-5.604,-4.938,-4.257,-3.598,-2.965,-2.329,-1.683,-1.052,
--.445,.161,.777,1.394,2.025,2.693,3.375,4.015,4.594,5.159,5.739,6.302,6.831,7.376,7.992,8.650,
-9.283,9.888,10.507,11.146,11.768,12.374,13.000,13.629,14.177,14.601,14.962,15.337,15.707,16.013,16.266,16.539,
-16.853,17.138,17.324,17.431,17.529,17.661,17.832,18.052,18.341,18.684,19.021,19.315,19.589,19.879,20.178,20.462,
-20.742,21.068,21.470,21.938,22.461,23.015,23.519,23.878,24.147,24.597,25.484,26.735,27.955,28.795,29.267,29.639,
-30.083,30.526,30.806,30.890,30.865,30.830,30.834,30.902,31.043,31.235,31.444,31.649,31.806,31.798,31.500,30.954,
-30.427,30.211,30.337,30.561,30.668,30.711,30.890,31.229,31.527,31.628,31.621,31.668,31.727,31.600,31.231,30.802,
-30.486,30.241,29.931,29.564,29.280,29.126,28.996,28.789,28.553,28.388,28.306,28.243,28.186,28.207,28.369,28.631,
-28.841,28.816,28.445,27.796,27.103,26.611,26.378,26.248,26.032,25.705,25.398,25.226,25.169,25.119,25.014,24.863,
-24.669,24.374,24.840,24.432,23.938,23.556,23.420,23.493,23.608,23.589,23.356,22.974,22.632,22.472,22.428,22.281,
-21.927,21.515,21.246,21.097,20.868,20.472,20.051,19.748,19.516,19.233,18.927,18.756,18.791,18.955,19.164,19.436,
-19.808,20.228,20.592,20.846,20.992,21.021,20.902,20.647,20.344,20.076,19.837,19.539,19.139,18.743,18.514,18.456,
-18.347,17.960,17.335,16.723,16.267,15.849,15.315,14.718,14.236,13.927,13.713,13.567,13.548,13.619,13.593,13.346,
-12.976,12.649,12.387,12.097,11.755,11.428,11.128,10.798,10.446,10.180,10.042,9.928,9.706,9.369,8.985,8.577,
-8.120,7.645,7.254,7.034,6.984,7.051,7.196,7.418,7.716,8.044,8.303,8.409,8.374,8.279,8.168,8.044,
-7.968,8.044,8.204,8.135,7.592,6.756,6.085,5.785,5.598,5.203,4.624,4.111,3.744,3.396,3.031,2.808,
-2.830,2.963,3.007,2.929,2.845,2.835,2.870,2.856,2.676,2.250,1.639,1.053,.660,.423,.189,-.095,
--.361,-.575,-.798,-1.052,-1.267,-1.415,-1.609,-1.968,-2.432,-2.789,-2.896,-2.811,-2.711,-2.728,-2.864,-3.026,
--3.150,-3.286,-3.540,-3.899,-4.184,-4.231,-4.080,-3.906,-3.781,-3.651,-3.554,-3.654,-3.915,-3.907,-3.221,-2.128,
--1.566,-2.272,-3.994,-5.730,-6.720,-7.024,-7.156,-7.413,-7.738,-8.064,-8.498,-9.117,-9.771,-10.215,-10.342,-10.203,
--9.884,-9.514,-9.348,-9.691,-10.643,-11.985,-13.367,-14.582,-15.608,-16.456,-17.079,-17.462,-17.744,-18.123,-18.662,-19.229,
--19.686,-20.069,-20.512,-21.043,-21.561,-22.023,-22.533,-23.177,-23.867,-24.450,-24.898,-25.303,-25.734,-26.239,-26.923,-27.857,
--28.880,-29.678,-30.151,-30.550,-31.142,-31.883,-32.577,-33.212,-33.935,-34.733,-35.396,-35.852,-36.318,-37.017,-37.890,-38.711,
--39.368,-39.914,-40.403,-40.833,-41.251,-41.751,-42.362,-43.027,-43.754,-44.693,-45.996,-47.594,-49.178,-50.433,-51.342,-52.209,
--53.338,-54.681,-55.865,-56.619,-57.061,-57.503,-58.067,-58.640,-59.161,-59.762,-60.563,-61.483,-62.356,-63.148,-63.948,-64.805,
--65.675,-66.513,-67.319,-68.106,-68.873,-69.621,-70.345,-71.025,-71.666,-72.330,-73.072,-73.867,-74.635,-75.352,-76.049,-76.752,
--77.464,-78.217,-79.036,-79.858,-80.571,-81.162,-81.754,-82.448,-83.207,-83.926,-84.538,-84.999,-85.263,-85.373,-85.511,-85.823,
--86.214,-86.471,-86.598,-86.864,-87.445,-88.110,-88.395,-88.090,-87.487,-87.156,-87.515,-88.508,-89.630,-90.259,-90.095,-89.342,
--88.445,-87.667,-86.964,-86.242,-85.590,-85.196,-85.082,-85.080,-85.059,-85.085,-85.325,-85.843,-86.574,-87.452,-88.460,-89.535,
--90.497,-91.175,-91.574,-91.871,-92.194,-92.478,-92.560,-92.396,-92.093,-91.746,-91.330,-90.781,-90.125,-89.449,-88.773,-88.055,
--87.338,-86.813,-86.647,-86.798,-87.015,-86.990,-86.497,-85.448,-83.956,-82.334,-80.937,-79.916,-79.135,-78.352,-77.440,-76.415,
--75.334,-74.227,-73.110,-71.988,-70.838,-69.664,-68.542,-67.556,-66.677,-65.790,-64.846,-63.932,-63.142,-62.493,-62.025,-61.871,
--62.067,-62.293,-62.014,-61.031,-59.871,-59.451,-60.215,-61.563,-62.207,-61.193,-58.677,-55.739,-53.424,-51.986,-50.971,-49.892,
--48.678,-47.523,-46.511,-45.502,-44.318,-42.936,-41.524,-40.340,-39.567,-39.124,-38.663,-37.848,-36.677,-35.485,-34.586,-33.991,
--33.508,-33.011,-32.508,-31.998,-31.381,-30.586,-29.677,-28.788,-27.953,-27.099,-26.185,-25.287,-24.530,-23.946,-23.442,-22.885,
--22.185,-21.327,-20.358,-19.363,-18.428,-17.588,-16.813,-16.032,-15.171,-14.164,-12.975,-11.657,-10.369,-9.257,-8.313,-7.359,
--6.203,-4.803,-3.309,-1.984,-1.056,-.573,-.350,-.105,.300,.767,1.155,1.531,2.145,3.162,4.483,5.868,
-7.177,8.434,9.688,10.900,11.978,12.912,13.810,14.809,15.935,17.087,18.161,19.175,20.235,21.385,22.542,23.605,
-24.577,25.560,26.622,27.743,28.869,29.965,31.006,31.961,32.845,33.733,34.654,35.473,35.945,35.920,35.452,34.724,
-34.000,33.720,34.485,36.621,39.685,42.627,44.660,45.874,46.849,47.810,48.479,48.749,49.065,49.890,51.041,51.920,
-52.281,52.390,52.360,51.712,49.888,47.066,44.256,42.598,42.624,44.053,46.081,47.884,49.062,49.754,50.300,50.836,
-51.240,51.401,51.389,51.328,51.263,51.202,51.178,51.179,51.124,50.980,50.849,50.840,50.913,50.933,50.853,50.742,
-50.647,50.542,50.434,50.414,50.552,50.798,51.042,51.220,51.326,51.394,51.507,51.764,52.159,52.528,52.701,52.703,
-52.723,52.874,53.070,53.187,53.254,53.385,53.579,53.707,53.719,53.755,53.944,54.172,54.170,53.853,53.469,53.317,
-53.399,53.429,53.193,52.785,52.459,52.322,52.277,52.232,52.269,52.526,52.978,53.442,53.796,54.113,54.473,54.733,
-54.637,54.212,53.905,54.132,54.695,54.778,53.578,50.862,46.919,42.225,37.390,33.347,31.191,31.530,33.967,37.334,
-40.475,42.798,44.240,44.936,45.057,44.845,44.599,44.516,44.536,44.406,43.946,43.259,42.656,42.318,42.086,41.654,
-40.964,40.281,39.872,39.702,39.544,39.274,38.929,38.526,38.020,37.449,36.952,36.553,36.091,35.460,34.808,34.339,
-34.024,33.663,33.189,32.699,32.234,31.769,31.446,31.541,32.013,32.335,32.031,31.282,30.716,30.625,30.684,30.496,
-30.109,29.786,29.526,29.157,28.834,29.039,29.888,30.700,30.577,29.418,28.074,27.395,27.363,27.369,27.180,27.217,
-27.791,28.452,28.431,27.551,26.352,25.370,24.684,24.212,23.989,23.924,23.619,22.876,22.219,22.428,23.520,24.570,
-24.649,23.672,22.222,20.865,19.882,19.381,19.305,19.358,19.229,18.910,18.635,18.505,18.375,18.107,17.752,17.419,
-17.126,16.836,16.510,16.087,15.557,15.092,14.922,15.027,15.098,14.919,14.611,14.389,14.263,14.167,14.200,14.452,
-14.666,14.419,13.693,12.991,12.749,12.844,12.855,12.606,12.229,11.836,11.418,11.060,10.967,11.148,11.271,10.985,
-10.333,9.719,9.480,9.590,9.784,9.881,9.922,10.038,10.265,10.505,10.654,10.699,10.687,10.643,10.544,10.364,
-10.112,9.821,9.542,9.334,9.242,9.256,9.320,9.369,9.373,9.346,9.346,9.446,9.641,9.810,9.823,9.704,
-9.610,9.612,9.590,9.408,9.138,8.993,9.056,9.183,9.212,9.161,9.165,9.288,9.481,9.691,9.921,10.181,
-10.449,10.701,10.931,11.127,11.254,11.310,11.358,11.457,11.582,11.642,11.580,11.423,11.212,10.951,10.646,10.368,
-10.208,10.150,10.071,9.867,9.565,9.263,8.992,8.713,8.415,8.161,7.985,7.833,7.626,7.353,7.067,6.804,
-6.579,6.423,6.359,6.331,6.227,5.987,5.649,5.279,4.902,4.545,4.255,4.047,3.847,3.581,3.278,3.023,
-2.823,2.598,2.319,2.067,1.915,1.807,1.619,1.318,.978,.669,.378,.061,-.290,-.652,-1.008,-1.350,
--1.670,-1.966,-2.243,-2.498,-2.710,-2.860,-2.958,-3.040,-3.132,-3.239,-3.350,-3.449,-3.529,-3.607,-3.723,-3.898,
--4.104,-4.298,-4.478,-4.684,-4.944,-5.234,-5.517,-5.792,-6.095,-6.437,-6.779,-7.073,-7.317,-7.558,-7.835,-8.144,
--8.466,-8.799,-9.156,-9.528,-9.890,-10.227,-10.548,-10.852,-11.130,-11.396,-11.698,-12.067,-12.473,-12.858,-13.208,-13.560,
--13.952,-14.390,-14.862,-15.359,-15.863,-16.342,-16.779,-17.185,-17.581,-17.981,-18.400,-18.856,-19.342,-19.822,-20.283,-20.770,
--21.325,-21.915,-22.467,-22.964,-23.459,-23.995,-24.547,-25.072,-25.568,-26.065,-26.576,-27.092,-27.605,-28.116,-28.628,-29.145,
--29.675,-30.210,-30.729,-31.226,-31.725,-32.232,-32.717,-33.150,-33.554,-33.965,-34.370,-34.728,-35.047,-35.381,-35.752,-36.113,
--36.427,-36.720,-37.037,-37.387,-37.764,-38.181,-38.634,-39.070,-39.426,-39.707,-39.977,-40.279,-40.595,-40.901,-41.193,-41.467,
--41.708,-41.922,-42.146,-42.397,-42.653,-42.888,-43.094,-43.258,-43.357,-43.414,-43.500,-43.631,-43.724,-43.703,-43.623,-43.601,
--43.648,-43.661,-43.611,-43.594,-43.670,-43.742,-43.689,-43.551,-43.471,-43.469,-43.419,-43.234,-42.988,-42.793,-42.653,-42.494,
--42.281,-42.027,-41.730,-41.377,-40.990,-40.614,-40.259,-39.890,-39.493,-39.085,-38.680,-38.277,-37.882,-37.499,-37.104,-36.674,
--36.252,-35.884,-35.516,-35.038,-34.462,-33.947,-33.580,-33.232,-32.733,-32.132,-31.631,-31.282,-30.925,-30.423,-29.833,-29.272,
--28.739,-28.183,-27.628,-27.134,-26.661,-26.105,-25.450,-24.780,-24.148,-23.532,-22.922,-22.351,-21.814,-21.247,-20.626,-20.017,
--19.464,-18.915,-18.305,-17.666,-17.079,-16.559,-16.054,-15.539,-15.038,-14.561,-14.097,-13.648,-13.221,-12.785,-12.303,-11.808,
--11.371,-10.996,-10.608,-10.168,-9.724,-9.324,-8.940,-8.536,-8.157,-7.872,-7.661,-7.434,-7.159,-6.905,-6.730,-6.595,
--6.423,-6.189,-5.928,-5.677,-5.452,-5.276,-5.175,-5.148,-5.181,-5.299,-5.586,-6.099,-6.776,-7.440,-7.897,-8.022,
--7.756,-7.075,-6.010,-4.705,-3.438,-2.551,-2.269,-2.512,-2.856,-2.792,-2.130,-1.162,-.365,.063,.317,.678,
-1.202,1.771,2.323,2.912,3.573,4.259,4.928,5.589,6.208,6.639,6.725,6.479,6.120,5.887,5.810,5.687,
-5.316,4.747,4.240,3.976,3.863,3.689,3.363,2.912,2.345,1.684,1.088,.751,.624,.415,-.037,-.554,
--.913,-1.227,-1.837,-2.859,-4.025,-4.957,-5.492,-5.755,-6.047,-6.656,-7.625,-8.655,-9.377,-9.748,-10.074,-10.630,
--11.395,-12.229,-13.121,-14.131,-15.225,-16.324,-17.437,-18.587,-19.671,-20.550,-21.257,-21.969,-22.771,-23.591,-24.356,-25.064,
--25.690,-26.191,-26.666,-27.353,-28.360,-29.492,-30.469,-31.239,-31.965,-32.771,-33.602,-34.338,-34.947,-35.509,-36.113,-36.733,
--37.202,-37.372,-37.312,-37.289,-37.471,-37.749,-37.914,-37.943,-37.987,-38.110,-38.180,-38.030,-37.621,-37.064,-36.555,-36.301,
--36.345,-36.441,-36.264,-35.846,-35.674,-36.224,-37.470,-38.964,-40.304,-41.300,-41.724,-41.248,-39.902,-38.470,-38.073,-39.212,
--41.336,-43.486,-45.227,-46.771,-48.246,-49.221,-49.163,-48.209,-47.172,-46.753,-46.966,-47.373,-47.643,-47.738,-47.704,-47.562,
--47.375,-47.237,-47.157,-47.046,-46.866,-46.676,-46.516,-46.339,-46.098,-45.815,-45.517,-45.182,-44.812,-44.476,-44.242,-44.074,
--43.886,-43.641,-43.368,-43.099,-42.844,-42.608,-42.378,-42.126,-41.831,-41.494,-41.100,-40.606,-40.007,-39.367,-38.740,-38.109,
--37.430,-36.708,-35.971,-35.207,-34.388,-33.536,-32.705,-31.912,-31.146,-30.407,-29.674,-28.866,-27.939,-26.998,-26.233,-25.724,
--25.383,-25.103,-24.849,-24.584,-24.233,-23.787,-23.357,-23.028,-22.733,-22.347,-21.853,-21.340,-20.861,-20.404,-19.956,-19.518,
--19.051,-18.514,-17.943,-17.426,-16.979,-16.531,-16.042,-15.554,-15.103,-14.657,-14.177,-13.678,-13.190,-12.699,-12.191,-11.680,
--11.179,-10.666,-10.129,-9.597,-9.088,-8.567,-7.987,-7.359,-6.713,-6.045,-5.338,-4.627,-3.961,-3.334,-2.694,-2.025,
--1.359,-.714,-.075,.559,1.173,1.777,2.409,3.063,3.683,4.248,4.797,5.363,5.924,6.459,6.995,7.574,
-8.186,8.804,9.431,10.081,10.726,11.326,11.891,12.472,13.068,13.613,14.062,14.450,14.840,15.243,15.631,15.985,
-16.305,16.578,16.767,16.862,16.910,16.984,17.131,17.357,17.645,17.973,18.311,18.628,18.922,19.225,19.556,19.888,
-20.175,20.428,20.714,21.087,21.533,22.006,22.447,22.786,22.986,23.179,23.679,24.737,26.237,27.719,28.764,29.329,
-29.681,30.066,30.509,30.886,31.105,31.178,31.172,31.150,31.139,31.152,31.216,31.361,31.551,31.650,31.504,31.088,
-30.577,30.234,30.210,30.431,30.676,30.793,30.848,31.017,31.352,31.698,31.892,31.962,32.034,32.096,31.981,31.605,
-31.116,30.710,30.399,30.066,29.676,29.322,29.062,28.845,28.614,28.406,28.278,28.209,28.139,28.083,28.118,28.280,
-28.500,28.642,28.567,28.209,27.641,27.069,26.692,26.530,26.421,26.216,25.950,25.774,25.746,25.753,25.658,25.460,
-25.260,25.087,24.840,25.073,24.754,24.345,23.986,23.768,23.657,23.564,23.417,23.178,22.863,22.576,22.428,22.386,
-22.254,21.903,21.445,21.099,20.907,20.700,20.350,19.938,19.625,19.439,19.294,19.150,19.065,19.100,19.254,19.492,
-19.783,20.095,20.399,20.688,20.956,21.146,21.170,20.990,20.672,20.318,19.988,19.684,19.377,19.060,18.780,18.603,
-18.518,18.374,18.008,17.432,16.831,16.333,15.877,15.358,14.814,14.373,14.065,13.815,13.612,13.519,13.502,13.391,
-13.091,12.725,12.463,12.291,12.055,11.695,11.291,10.919,10.573,10.259,10.039,9.925,9.805,9.542,9.106,8.577,
-8.051,7.597,7.251,7.011,6.834,6.698,6.642,6.720,6.930,7.212,7.488,7.693,7.789,7.794,7.761,7.707,
-7.626,7.583,7.701,7.937,7.967,7.490,6.626,5.838,5.403,5.143,4.750,4.218,3.764,3.457,3.162,2.813,
-2.538,2.445,2.462,2.461,2.438,2.452,2.506,2.544,2.512,2.349,1.974,1.401,.803,.356,.069,-.173,
--.422,-.643,-.834,-1.057,-1.324,-1.570,-1.779,-2.030,-2.383,-2.780,-3.109,-3.305,-3.357,-3.300,-3.256,-3.376,
--3.653,-3.856,-3.779,-3.517,-3.367,-3.477,-3.699,-3.790,-3.628,-3.235,-2.733,-2.378,-2.436,-2.852,-3.132,-2.810,
--2.085,-1.789,-2.580,-4.243,-5.920,-6.961,-7.402,-7.646,-7.917,-8.174,-8.397,-8.735,-9.303,-9.983,-10.518,-10.743,
--10.678,-10.452,-10.246,-10.296,-10.810,-11.808,-13.075,-14.329,-15.434,-16.402,-17.228,-17.811,-18.094,-18.223,-18.461,-18.940,
--19.546,-20.094,-20.545,-20.989,-21.470,-21.940,-22.397,-22.941,-23.633,-24.363,-24.960,-25.385,-25.741,-26.146,-26.682,-27.427,
--28.376,-29.349,-30.104,-30.618,-31.121,-31.790,-32.554,-33.276,-33.992,-34.807,-35.646,-36.313,-36.796,-37.316,-38.022,-38.815,
--39.537,-40.190,-40.838,-41.427,-41.861,-42.193,-42.585,-43.093,-43.640,-44.247,-45.134,-46.478,-48.127,-49.657,-50.768,-51.584,
--52.514,-53.796,-55.221,-56.350,-56.989,-57.360,-57.795,-58.380,-58.986,-59.558,-60.212,-61.039,-61.964,-62.859,-63.696,-64.523,
--65.356,-66.183,-67.009,-67.833,-68.621,-69.347,-70.046,-70.761,-71.476,-72.165,-72.869,-73.652,-74.492,-75.300,-76.034,-76.730,
--77.417,-78.098,-78.803,-79.578,-80.390,-81.120,-81.721,-82.294,-82.967,-83.733,-84.482,-85.119,-85.596,-85.878,-85.996,-86.100,
--86.344,-86.685,-86.925,-87.004,-87.147,-87.625,-88.386,-89.021,-89.128,-88.696,-88.155,-88.075,-88.726,-89.837,-90.755,-90.930,
--90.308,-89.272,-88.227,-87.306,-86.482,-85.814,-85.443,-85.384,-85.448,-85.450,-85.422,-85.556,-85.988,-86.715,-87.668,-88.765,
--89.862,-90.763,-91.361,-91.750,-92.114,-92.513,-92.833,-92.943,-92.847,-92.630,-92.314,-91.849,-91.225,-90.531,-89.855,-89.188,
--88.469,-87.733,-87.123,-86.766,-86.652,-86.658,-86.616,-86.333,-85.606,-84.375,-82.855,-81.424,-80.325,-79.484,-78.672,-77.747,
--76.707,-75.592,-74.425,-73.248,-72.093,-70.930,-69.728,-68.561,-67.549,-66.681,-65.798,-64.813,-63.838,-63.042,-62.477,-62.156,
--62.156,-62.430,-62.565,-62.020,-60.783,-59.640,-59.547,-60.653,-62.010,-62.300,-60.866,-58.133,-55.170,-52.867,-51.434,-50.515,
--49.664,-48.704,-47.693,-46.675,-45.555,-44.198,-42.619,-41.065,-39.883,-39.267,-39.050,-38.780,-38.060,-36.864,-35.507,-34.339,
--33.500,-32.933,-32.523,-32.160,-31.724,-31.117,-30.328,-29.434,-28.522,-27.615,-26.685,-25.721,-24.783,-23.973,-23.349,-22.857,
--22.355,-21.718,-20.920,-20.018,-19.077,-18.136,-17.223,-16.356,-15.516,-14.635,-13.629,-12.462,-11.195,-9.955,-8.845,-7.846,
--6.832,-5.669,-4.312,-2.847,-1.484,-.467,.105,.407,.766,1.332,1.935,2.354,2.662,3.182,4.111,5.312,
-6.534,7.703,8.901,10.149,11.348,12.427,13.431,14.449,15.511,16.597,17.670,18.706,19.726,20.797,21.961,23.144,
-24.221,25.187,26.176,27.282,28.432,29.519,30.565,31.643,32.695,33.583,34.332,35.147,36.094,36.896,37.168,36.797,
-35.996,35.121,34.633,35.153,37.135,40.278,43.485,45.716,46.857,47.565,48.330,49.027,49.410,49.675,50.235,51.138,
-52.021,52.565,52.712,52.408,51.418,49.572,47.085,44.551,42.719,42.243,43.365,45.604,47.923,49.478,50.236,50.734,
-51.312,51.820,52.028,52.006,51.972,51.976,51.936,51.849,51.786,51.724,51.583,51.396,51.297,51.317,51.349,51.319,
-51.268,51.227,51.146,51.014,50.957,51.087,51.347,51.573,51.690,51.741,51.791,51.899,52.136,52.520,52.917,53.145,
-53.195,53.244,53.406,53.594,53.698,53.771,53.926,54.117,54.202,54.193,54.263,54.458,54.566,54.368,53.950,53.609,
-53.502,53.497,53.373,53.074,52.722,52.461,52.338,52.319,52.375,52.538,52.849,53.272,53.680,53.984,54.213,54.393,
-54.415,54.155,53.747,53.534,53.637,53.638,52.831,50.762,47.432,43.131,38.361,33.999,31.230,30.943,33.052,36.492,
-39.948,42.613,44.350,45.338,45.736,45.664,45.340,45.062,44.984,44.964,44.703,44.082,43.319,42.740,42.432,42.170,
-41.718,41.103,40.560,40.244,40.080,39.892,39.594,39.209,38.761,38.255,37.725,37.234,36.795,36.369,35.934,35.490,
-34.967,34.269,33.494,32.990,32.986,33.222,33.163,32.652,32.118,31.996,32.154,32.106,31.701,31.256,31.030,30.871,
-30.548,30.156,29.929,29.802,29.502,29.098,29.095,29.752,30.524,30.541,29.638,28.604,28.243,28.417,28.315,27.577,
-26.759,26.553,26.879,27.060,26.734,26.179,25.746,25.386,24.929,24.467,24.159,23.854,23.281,22.561,22.163,22.291,
-22.600,22.622,22.223,21.551,20.770,20.066,19.698,19.755,19.945,19.856,19.419,18.937,18.658,18.534,18.395,18.177,
-17.902,17.589,17.262,16.944,16.587,16.130,15.665,15.395,15.359,15.350,15.189,14.941,14.739,14.567,14.378,14.304,
-14.469,14.658,14.471,13.855,13.236,13.013,13.103,13.129,12.897,12.493,12.043,11.627,11.397,11.518,11.891,12.090,
-11.742,10.934,10.133,9.739,9.766,9.952,10.081,10.151,10.274,10.496,10.739,10.906,10.978,10.993,10.962,10.856,
-10.658,10.395,10.096,9.782,9.503,9.349,9.380,9.543,9.692,9.700,9.577,9.476,9.554,9.805,10.040,10.070,
-9.907,9.723,9.615,9.510,9.318,9.124,9.099,9.264,9.437,9.453,9.353,9.304,9.395,9.580,9.794,10.037,
-10.340,10.686,11.012,11.254,11.381,11.418,11.431,11.489,11.605,11.715,11.740,11.665,11.535,11.387,11.197,10.945,
-10.680,10.488,10.386,10.285,10.088,9.800,9.495,9.212,8.934,8.658,8.432,8.279,8.150,7.968,7.719,7.441,
-7.167,6.911,6.707,6.582,6.500,6.370,6.140,5.837,5.514,5.184,4.856,4.561,4.315,4.072,3.793,3.511,
-3.288,3.105,2.882,2.610,2.382,2.259,2.170,1.991,1.697,1.366,1.055,.745,.409,.062,-.266,-.583,
--.905,-1.228,-1.536,-1.827,-2.099,-2.325,-2.482,-2.590,-2.696,-2.823,-2.956,-3.082,-3.205,-3.337,-3.486,-3.653,
--3.841,-4.034,-4.211,-4.379,-4.571,-4.810,-5.071,-5.324,-5.576,-5.864,-6.194,-6.515,-6.780,-7.001,-7.232,-7.502,
--7.800,-8.115,-8.460,-8.846,-9.247,-9.616,-9.941,-10.248,-10.560,-10.871,-11.179,-11.507,-11.874,-12.262,-12.637,-12.997,
--13.367,-13.768,-14.198,-14.656,-15.144,-15.648,-16.133,-16.586,-17.019,-17.448,-17.870,-18.295,-18.750,-19.239,-19.724,-20.185,
--20.652,-21.167,-21.708,-22.219,-22.690,-23.177,-23.713,-24.265,-24.784,-25.271,-25.764,-26.282,-26.818,-27.357,-27.888,-28.396,
--28.883,-29.365,-29.860,-30.362,-30.864,-31.374,-31.894,-32.397,-32.853,-33.264,-33.652,-34.018,-34.358,-34.698,-35.071,-35.461,
--35.813,-36.120,-36.431,-36.777,-37.135,-37.490,-37.877,-38.316,-38.751,-39.103,-39.377,-39.643,-39.945,-40.265,-40.589,-40.922,
--41.243,-41.508,-41.714,-41.920,-42.169,-42.433,-42.665,-42.859,-43.025,-43.150,-43.229,-43.296,-43.379,-43.442,-43.446,-43.428,
--43.457,-43.507,-43.492,-43.411,-43.377,-43.439,-43.494,-43.433,-43.317,-43.283,-43.327,-43.292,-43.092,-42.824,-42.620,-42.483,
--42.324,-42.100,-41.832,-41.530,-41.184,-40.813,-40.460,-40.137,-39.812,-39.459,-39.071,-38.645,-38.196,-37.770,-37.388,-37.010,
--36.584,-36.144,-35.755,-35.373,-34.880,-34.286,-33.771,-33.442,-33.152,-32.686,-32.068,-31.522,-31.152,-30.823,-30.374,-29.818,
--29.253,-28.701,-28.144,-27.619,-27.159,-26.690,-26.104,-25.406,-24.702,-24.050,-23.424,-22.814,-22.251,-21.721,-21.157,-20.546,
--19.957,-19.420,-18.865,-18.234,-17.585,-17.008,-16.500,-15.990,-15.451,-14.914,-14.400,-13.915,-13.482,-13.101,-12.707,-12.240,
--11.744,-11.311,-10.937,-10.528,-10.052,-9.604,-9.256,-8.955,-8.618,-8.254,-7.933,-7.659,-7.389,-7.137,-6.966,-6.872,
--6.750,-6.517,-6.205,-5.899,-5.637,-5.406,-5.199,-5.035,-4.902,-4.762,-4.603,-4.494,-4.547,-4.841,-5.367,-6.027,
--6.666,-7.102,-7.157,-6.713,-5.795,-4.630,-3.606,-3.066,-3.048,-3.211,-3.095,-2.524,-1.741,-1.139,-.866,-.753,
--.557,-.175,.375,1.074,1.909,2.839,3.803,4.749,5.616,6.307,6.744,6.912,6.848,6.625,6.378,6.245,
-6.199,6.007,5.497,4.829,4.356,4.220,4.205,4.008,3.523,2.828,2.057,1.384,.972,.797,.611,.215,
--.301,-.738,-1.129,-1.717,-2.595,-3.551,-4.302,-4.782,-5.151,-5.625,-6.323,-7.169,-7.923,-8.397,-8.679,-9.056,
--9.680,-10.451,-11.254,-12.152,-13.254,-14.512,-15.805,-17.112,-18.441,-19.679,-20.673,-21.453,-22.203,-23.020,-23.835,-24.572,
--25.240,-25.829,-26.290,-26.673,-27.145,-27.783,-28.457,-29.023,-29.549,-30.235,-31.152,-32.171,-33.132,-34.015,-34.925,-35.928,
--36.921,-37.662,-38.006,-38.102,-38.263,-38.608,-38.932,-39.012,-38.919,-38.897,-39.013,-39.061,-38.787,-38.117,-37.197,-36.345,
--35.889,-35.879,-35.964,-35.767,-35.419,-35.504,-36.381,-37.775,-39.172,-40.376,-41.361,-41.767,-41.067,-39.431,-38.082,-38.367,
--40.454,-43.199,-45.335,-46.574,-47.443,-48.288,-48.795,-48.531,-47.639,-46.778,-46.457,-46.656,-47.069,-47.454,-47.680,-47.654,
--47.385,-47.055,-46.849,-46.743,-46.585,-46.345,-46.137,-46.011,-45.867,-45.629,-45.355,-45.120,-44.892,-44.625,-44.368,-44.202,
--44.103,-43.971,-43.762,-43.516,-43.276,-43.043,-42.814,-42.584,-42.330,-42.024,-41.667,-41.277,-40.843,-40.347,-39.806,-39.250,
--38.669,-38.014,-37.258,-36.426,-35.569,-34.722,-33.906,-33.117,-32.338,-31.579,-30.857,-30.138,-29.322,-28.374,-27.416,-26.625,
--26.052,-25.619,-25.256,-24.956,-24.683,-24.348,-23.935,-23.535,-23.213,-22.904,-22.509,-22.026,-21.516,-21.003,-20.488,-20.004,
--19.580,-19.163,-18.670,-18.117,-17.596,-17.151,-16.733,-16.300,-15.862,-15.431,-14.987,-14.516,-14.042,-13.577,-13.099,-12.601,
--12.100,-11.596,-11.070,-10.528,-10.014,-9.530,-9.011,-8.415,-7.772,-7.122,-6.447,-5.729,-5.011,-4.351,-3.732,-3.093,
--2.421,-1.748,-1.086,-.418,.248,.879,1.479,2.098,2.749,3.388,3.976,4.536,5.103,5.677,6.239,6.788,
-7.339,7.900,8.481,9.100,9.752,10.391,10.975,11.512,12.034,12.553,13.047,13.495,13.894,14.266,14.648,15.062,
-15.485,15.851,16.110,16.266,16.363,16.451,16.574,16.764,17.025,17.322,17.614,17.897,18.196,18.526,18.883,19.248,
-19.590,19.886,20.143,20.415,20.751,21.152,21.567,21.918,22.132,22.230,22.437,23.110,24.437,26.169,27.746,28.748,
-29.207,29.461,29.786,30.203,30.596,30.891,31.109,31.281,31.374,31.329,31.177,31.080,31.181,31.407,31.495,31.260,
-30.804,30.412,30.276,30.373,30.578,30.786,30.957,31.110,31.308,31.591,31.894,32.110,32.227,32.321,32.396,32.312,
-31.971,31.466,30.988,30.602,30.229,29.813,29.398,29.041,28.745,28.512,28.371,28.311,28.243,28.111,27.984,27.986,
-28.141,28.339,28.432,28.328,28.007,27.537,27.067,26.739,26.565,26.422,26.222,26.034,25.993,26.092,26.154,26.021,
-25.733,25.458,25.270,25.073,25.095,24.831,24.517,24.220,23.959,23.703,23.446,23.205,22.965,22.703,22.469,22.364,
-22.366,22.267,21.885,21.305,20.802,20.523,20.351,20.103,19.779,19.529,19.445,19.468,19.493,19.491,19.528,19.673,
-19.929,20.217,20.461,20.663,20.888,21.134,21.285,21.223,20.969,20.649,20.337,20.018,19.677,19.354,19.093,18.883,
-18.694,18.496,18.233,17.840,17.326,16.799,16.339,15.904,15.424,14.933,14.523,14.203,13.911,13.650,13.485,13.391,
-13.225,12.913,12.574,12.355,12.213,11.975,11.572,11.112,10.716,10.397,10.116,9.868,9.655,9.426,9.103,8.651,
-8.111,7.581,7.170,6.922,6.766,6.597,6.410,6.317,6.400,6.604,6.823,7.015,7.183,7.297,7.319,7.272,
-7.214,7.180,7.209,7.367,7.607,7.659,7.236,6.394,5.523,4.928,4.534,4.117,3.654,3.292,3.051,2.796,
-2.469,2.187,2.042,1.986,1.947,1.949,2.010,2.051,1.989,1.839,1.641,1.361,.954,.487,.079,-.244,
--.539,-.826,-1.078,-1.301,-1.533,-1.764,-1.960,-2.157,-2.426,-2.750,-3.041,-3.284,-3.533,-3.759,-3.852,-3.855,
--4.005,-4.370,-4.600,-4.257,-3.396,-2.598,-2.382,-2.713,-3.119,-3.147,-2.665,-1.880,-1.214,-1.037,-1.348,-1.735,
--1.819,-1.740,-2.057,-3.127,-4.688,-6.133,-7.089,-7.632,-8.007,-8.320,-8.553,-8.748,-9.041,-9.515,-10.094,-10.616,
--10.961,-11.111,-11.128,-11.142,-11.331,-11.849,-12.707,-13.745,-14.769,-15.700,-16.567,-17.361,-17.970,-18.307,-18.476,-18.721,
--19.199,-19.835,-20.444,-20.940,-21.380,-21.833,-22.312,-22.835,-23.461,-24.200,-24.935,-25.513,-25.906,-26.233,-26.648,-27.257,
--28.087,-29.061,-29.989,-30.708,-31.252,-31.818,-32.541,-33.367,-34.173,-34.917,-35.602,-36.210,-36.768,-37.408,-38.219,-39.081,
--39.790,-40.349,-40.959,-41.700,-42.392,-42.849,-43.144,-43.477,-43.892,-44.313,-44.833,-45.742,-47.171,-48.832,-50.242,-51.208,
--52.000,-53.028,-54.389,-55.758,-56.743,-57.275,-57.631,-58.104,-58.735,-59.398,-60.041,-60.734,-61.532,-62.403,-63.297,-64.195,
--65.067,-65.871,-66.627,-67.414,-68.254,-69.063,-69.773,-70.440,-71.152,-71.906,-72.647,-73.398,-74.228,-75.118,-75.958,-76.684,
--77.341,-77.998,-78.669,-79.370,-80.134,-80.938,-81.679,-82.294,-82.865,-83.520,-84.275,-85.025,-85.671,-86.170,-86.492,-86.632,
--86.694,-86.843,-87.125,-87.396,-87.515,-87.595,-87.926,-88.643,-89.494,-90.003,-89.886,-89.325,-88.869,-89.021,-89.826,-90.796,
--91.263,-90.888,-89.868,-88.679,-87.666,-86.905,-86.369,-86.074,-86.029,-86.138,-86.261,-86.354,-86.507,-86.847,-87.453,-88.324,
--89.350,-90.307,-90.990,-91.399,-91.754,-92.246,-92.822,-93.258,-93.413,-93.341,-93.151,-92.847,-92.369,-91.721,-91.002,-90.297,
--89.610,-88.899,-88.176,-87.516,-86.993,-86.634,-86.434,-86.335,-86.170,-85.680,-84.700,-83.355,-81.987,-80.854,-79.933,-79.040,
--78.061,-76.995,-75.854,-74.633,-73.372,-72.134,-70.917,-69.690,-68.505,-67.475,-66.582,-65.664,-64.643,-63.657,-62.901,-62.433,
--62.259,-62.431,-62.829,-62.942,-62.231,-60.854,-59.782,-59.917,-61.107,-62.190,-61.983,-60.174,-57.366,-54.492,-52.242,-50.814,
--49.978,-49.340,-48.622,-47.764,-46.776,-45.585,-44.087,-42.348,-40.676,-39.445,-38.808,-38.562,-38.292,-37.653,-36.575,-35.246,
--33.958,-32.949,-32.320,-31.995,-31.763,-31.404,-30.822,-30.054,-29.178,-28.243,-27.278,-26.299,-25.302,-24.301,-23.387,-22.688,
--22.218,-21.813,-21.270,-20.535,-19.700,-18.850,-17.978,-17.052,-16.084,-15.113,-14.135,-13.113,-12.022,-10.877,-9.695,-8.486,
--7.265,-6.064,-4.883,-3.651,-2.300,-.918,.219,.896,1.242,1.637,2.285,2.983,3.443,3.731,4.216,5.098,
-6.204,7.286,8.329,9.451,10.641,11.779,12.854,13.958,15.101,16.174,17.143,18.117,19.191,20.330,21.475,22.633,
-23.808,24.927,25.951,26.960,28.028,29.092,30.064,31.021,32.109,33.267,34.258,35.023,35.814,36.828,37.835,38.380,
-38.280,37.793,37.327,37.226,37.842,39.478,42.008,44.696,46.697,47.786,48.420,49.084,49.791,50.297,50.575,50.865,
-51.367,52.057,52.764,53.228,53.136,52.279,50.714,48.673,46.375,44.167,42.778,43.024,44.967,47.584,49.606,50.636,
-51.194,51.795,52.361,52.615,52.625,52.670,52.781,52.760,52.563,52.371,52.290,52.209,52.036,51.863,51.812,51.853,
-51.891,51.895,51.866,51.768,51.616,51.545,51.659,51.872,52.016,52.052,52.079,52.156,52.283,52.504,52.883,53.332,
-53.643,53.733,53.746,53.840,53.988,54.111,54.244,54.448,54.642,54.711,54.718,54.817,54.956,54.884,54.507,54.055,
-53.788,53.676,53.512,53.227,52.936,52.726,52.574,52.459,52.422,52.502,52.696,52.999,53.394,53.789,54.060,54.159,
-54.110,53.925,53.621,53.295,52.992,52.457,51.198,48.923,45.781,42.116,38.201,34.456,31.760,31.108,32.776,35.988,
-39.501,42.445,44.563,45.895,46.510,46.528,46.193,45.796,45.521,45.362,45.152,44.715,44.053,43.375,42.875,42.532,
-42.164,41.686,41.204,40.852,40.626,40.421,40.159,39.831,39.453,39.036,38.606,38.179,37.737,37.268,36.825,36.472,
-36.131,35.570,34.704,33.900,33.783,34.551,35.545,35.754,34.831,33.448,32.538,32.339,32.375,32.209,31.882,31.592,
-31.304,30.895,30.463,30.186,29.980,29.605,29.142,29.040,29.503,30.046,29.968,29.226,28.548,28.546,28.935,28.853,
-27.906,26.623,25.814,25.716,25.940,26.095,26.123,26.051,25.760,25.217,24.687,24.443,24.336,23.939,23.109,22.190,
-21.597,21.407,21.414,21.405,21.254,20.913,20.492,20.241,20.289,20.438,20.366,19.995,19.520,19.128,18.836,18.599,
-18.402,18.203,17.933,17.589,17.248,16.937,16.606,16.260,15.998,15.859,15.750,15.597,15.445,15.314,15.096,14.748,
-14.456,14.419,14.507,14.375,13.930,13.472,13.296,13.333,13.298,13.059,12.689,12.288,11.916,11.690,11.726,11.925,
-11.963,11.587,10.892,10.243,9.945,10.017,10.242,10.390,10.402,10.393,10.498,10.727,10.973,11.132,11.177,11.125,
-10.988,10.784,10.551,10.318,10.075,9.821,9.621,9.577,9.706,9.873,9.899,9.743,9.573,9.598,9.845,10.115,
-10.189,10.049,9.852,9.711,9.593,9.448,9.344,9.398,9.598,9.780,9.804,9.708,9.649,9.730,9.930,10.171,
-10.420,10.698,11.020,11.345,11.591,11.703,11.698,11.649,11.619,11.630,11.663,11.691,11.692,11.645,11.537,11.358,
-11.122,10.876,10.684,10.577,10.512,10.402,10.189,9.885,9.543,9.205,8.903,8.662,8.488,8.341,8.164,7.945,
-7.712,7.487,7.270,7.060,6.870,6.695,6.505,6.280,6.038,5.795,5.540,5.257,4.954,4.654,4.359,4.075,
-3.825,3.623,3.427,3.184,2.915,2.707,2.592,2.489,2.294,2.004,1.685,1.376,1.061,.738,.441,.182,
--.080,-.381,-.702,-1.011,-1.306,-1.598,-1.869,-2.084,-2.245,-2.385,-2.518,-2.637,-2.755,-2.910,-3.118,-3.347,
--3.558,-3.741,-3.913,-4.085,-4.267,-4.469,-4.697,-4.931,-5.158,-5.391,-5.658,-5.951,-6.223,-6.447,-6.654,-6.896,
--7.184,-7.493,-7.806,-8.146,-8.532,-8.938,-9.312,-9.636,-9.944,-10.273,-10.629,-10.995,-11.361,-11.727,-12.090,-12.445,
--12.804,-13.184,-13.587,-14.009,-14.453,-14.928,-15.422,-15.909,-16.379,-16.842,-17.301,-17.743,-18.170,-18.619,-19.113,-19.627,
--20.122,-20.600,-21.083,-21.569,-22.032,-22.475,-22.938,-23.445,-23.972,-24.484,-24.979,-25.475,-25.982,-26.509,-27.059,-27.618,
--28.148,-28.625,-29.071,-29.529,-30.018,-30.530,-31.051,-31.568,-32.061,-32.518,-32.939,-33.325,-33.673,-33.998,-34.347,-34.747,
--35.158,-35.515,-35.825,-36.154,-36.527,-36.903,-37.256,-37.630,-38.054,-38.475,-38.814,-39.078,-39.336,-39.625,-39.928,-40.241,
--40.582,-40.929,-41.222,-41.445,-41.661,-41.921,-42.190,-42.410,-42.580,-42.732,-42.867,-42.967,-43.042,-43.114,-43.172,-43.197,
--43.219,-43.275,-43.335,-43.321,-43.242,-43.192,-43.211,-43.215,-43.135,-43.043,-43.050,-43.117,-43.086,-42.889,-42.629,-42.430,
--42.285,-42.112,-41.877,-41.604,-41.309,-40.986,-40.654,-40.341,-40.043,-39.729,-39.379,-38.992,-38.561,-38.101,-37.665,-37.292,
--36.935,-36.529,-36.097,-35.703,-35.314,-34.809,-34.190,-33.642,-33.299,-33.035,-32.625,-32.044,-31.485,-31.068,-30.699,-30.242,
--29.701,-29.151,-28.612,-28.064,-27.528,-27.029,-26.513,-25.912,-25.251,-24.612,-24.015,-23.411,-22.794,-22.206,-21.651,-21.081,
--20.487,-19.916,-19.377,-18.804,-18.172,-17.546,-16.987,-16.459,-15.906,-15.344,-14.823,-14.342,-13.873,-13.430,-13.030,-12.631,
--12.184,-11.723,-11.319,-10.948,-10.514,-10.005,-9.535,-9.184,-8.900,-8.591,-8.251,-7.925,-7.629,-7.369,-7.194,-7.131,
--7.101,-6.961,-6.661,-6.282,-5.929,-5.634,-5.371,-5.124,-4.899,-4.691,-4.486,-4.274,-4.056,-3.850,-3.721,-3.761,
--4.037,-4.525,-5.111,-5.630,-5.930,-5.925,-5.644,-5.226,-4.832,-4.506,-4.140,-3.588,-2.850,-2.103,-1.551,-1.266,
--1.186,-1.199,-1.180,-.966,-.414,.508,1.707,3.040,4.336,5.393,6.081,6.478,6.801,7.123,7.296,7.222,
-7.059,6.970,6.806,6.294,5.509,4.895,4.728,4.772,4.598,4.057,3.313,2.555,1.887,1.392,1.088,.833,
-.459,-.022,-.483,-.946,-1.568,-2.357,-3.087,-3.573,-3.915,-4.355,-4.996,-5.741,-6.434,-6.976,-7.373,-7.741,
--8.231,-8.883,-9.633,-10.469,-11.492,-12.750,-14.130,-15.506,-16.899,-18.359,-19.776,-20.963,-21.884,-22.663,-23.370,-23.957,
--24.407,-24.798,-25.186,-25.545,-25.857,-26.140,-26.350,-26.406,-26.388,-26.615,-27.374,-28.616,-30.007,-31.259,-32.361,-33.484,
--34.747,-36.044,-37.126,-37.852,-38.362,-38.900,-39.485,-39.885,-39.973,-39.940,-40.050,-40.268,-40.277,-39.816,-38.885,-37.714,
--36.670,-36.079,-35.920,-35.775,-35.319,-34.878,-35.180,-36.476,-38.209,-39.701,-40.817,-41.641,-41.799,-40.762,-38.914,-37.784,
--38.744,-41.608,-44.822,-47.018,-48.076,-48.660,-49.117,-49.144,-48.433,-47.262,-46.279,-45.908,-46.111,-46.624,-47.177,-47.514,
--47.447,-47.045,-46.623,-46.417,-46.342,-46.178,-45.905,-45.682,-45.561,-45.411,-45.152,-44.886,-44.724,-44.620,-44.484,-44.332,
--44.240,-44.189,-44.093,-43.926,-43.731,-43.526,-43.294,-43.040,-42.788,-42.519,-42.185,-41.791,-41.398,-41.029,-40.634,-40.170,
--39.660,-39.126,-38.533,-37.813,-36.962,-36.062,-35.213,-34.442,-33.702,-32.938,-32.159,-31.404,-30.653,-29.820,-28.884,-27.950,
--27.148,-26.505,-25.969,-25.519,-25.165,-24.859,-24.514,-24.118,-23.741,-23.411,-23.061,-22.634,-22.164,-21.699,-21.221,-20.710,
--20.216,-19.785,-19.369,-18.883,-18.334,-17.809,-17.363,-16.968,-16.577,-16.172,-15.737,-15.263,-14.778,-14.314,-13.862,-13.385,
--12.883,-12.385,-11.881,-11.343,-10.790,-10.276,-9.799,-9.283,-8.687,-8.054,-7.420,-6.758,-6.046,-5.332,-4.676,-4.055,
--3.415,-2.750,-2.094,-1.446,-.776,-.098,.543,1.145,1.761,2.417,3.073,3.688,4.265,4.839,5.428,6.019,
-6.595,7.146,7.684,8.244,8.846,9.471,10.082,10.661,11.206,11.702,12.150,12.578,13.012,13.424,13.775,14.091,
-14.448,14.855,15.236,15.527,15.743,15.932,16.108,16.279,16.481,16.736,17.007,17.251,17.499,17.811,18.191,18.579,
-18.931,19.252,19.558,19.846,20.121,20.415,20.752,21.109,21.409,21.571,21.642,21.902,22.742,24.297,26.187,27.758,
-28.622,28.935,29.126,29.435,29.796,30.075,30.298,30.592,30.966,31.232,31.198,30.927,30.740,30.875,31.187,31.289,
-31.018,30.629,30.465,30.563,30.707,30.774,30.859,31.060,31.330,31.591,31.848,32.118,32.345,32.475,32.546,32.585,
-32.508,32.204,31.716,31.202,30.759,30.347,29.913,29.470,29.065,28.732,28.519,28.459,28.481,28.424,28.212,27.969,
-27.885,27.999,28.168,28.228,28.115,27.850,27.489,27.116,26.814,26.598,26.408,26.208,26.062,26.057,26.159,26.205,
-26.068,25.787,25.506,25.295,25.095,24.988,24.727,24.482,24.260,24.018,23.719,23.397,23.109,22.852,22.597,22.394,
-22.342,22.400,22.321,21.885,21.175,20.521,20.154,19.996,19.836,19.616,19.468,19.504,19.664,19.795,19.826,19.843,
-19.976,20.251,20.563,20.810,21.012,21.240,21.457,21.509,21.309,20.966,20.657,20.416,20.147,19.804,19.462,19.192,
-18.960,18.691,18.366,18.003,17.600,17.161,16.726,16.324,15.921,15.480,15.039,14.665,14.346,14.026,13.715,13.487,
-13.342,13.174,12.908,12.613,12.384,12.186,11.898,11.482,11.033,10.650,10.328,10.004,9.643,9.267,8.910,8.574,
-8.213,7.778,7.296,6.875,6.595,6.409,6.221,6.051,6.018,6.154,6.337,6.455,6.547,6.685,6.808,6.799,
-6.675,6.585,6.620,6.746,6.904,7.036,6.996,6.598,5.843,4.988,4.294,3.784,3.344,2.958,2.684,2.484,
-2.237,1.931,1.690,1.585,1.551,1.522,1.522,1.551,1.503,1.307,1.039,.813,.616,.360,.036,-.287,
--.585,-.890,-1.215,-1.537,-1.854,-2.149,-2.361,-2.463,-2.562,-2.781,-3.082,-3.332,-3.534,-3.815,-4.162,-4.401,
--4.506,-4.716,-5.118,-5.297,-4.699,-3.366,-2.042,-1.476,-1.735,-2.262,-2.443,-2.053,-1.299,-.613,-.342,-.496,
--.815,-1.138,-1.639,-2.597,-3.972,-5.377,-6.457,-7.184,-7.734,-8.198,-8.546,-8.775,-8.978,-9.252,-9.604,-10.000,
--10.426,-10.876,-11.314,-11.693,-12.019,-12.377,-12.872,-13.541,-14.326,-15.132,-15.912,-16.676,-17.418,-18.064,-18.535,-18.864,
--19.200,-19.669,-20.256,-20.841,-21.341,-21.787,-22.255,-22.794,-23.418,-24.128,-24.888,-25.593,-26.128,-26.482,-26.788,-27.237,
--27.951,-28.895,-29.903,-30.781,-31.447,-31.997,-32.613,-33.401,-34.307,-35.163,-35.787,-36.110,-36.292,-36.689,-37.569,-38.799,
--39.923,-40.638,-41.105,-41.674,-42.411,-43.065,-43.476,-43.776,-44.134,-44.499,-44.816,-45.319,-46.380,-48.011,-49.726,-51.007,
--51.821,-52.588,-53.667,-54.984,-56.160,-56.929,-57.384,-57.821,-58.427,-59.157,-59.882,-60.568,-61.264,-62.011,-62.818,-63.697,
--64.633,-65.532,-66.304,-66.995,-67.748,-68.607,-69.452,-70.182,-70.855,-71.584,-72.371,-73.147,-73.920,-74.766,-75.676,-76.527,
--77.233,-77.849,-78.484,-79.179,-79.928,-80.726,-81.540,-82.282,-82.899,-83.461,-84.092,-84.824,-85.567,-86.220,-86.746,-87.113,
--87.285,-87.303,-87.332,-87.518,-87.820,-88.077,-88.251,-88.537,-89.145,-90.003,-90.726,-90.920,-90.522,-89.890,-89.560,-89.849,
--90.568,-91.120,-90.959,-90.046,-88.850,-87.904,-87.392,-87.152,-87.000,-86.926,-87.008,-87.243,-87.534,-87.799,-88.075,-88.497,
--89.166,-89.995,-90.728,-91.174,-91.441,-91.852,-92.575,-93.413,-93.998,-94.157,-94.004,-93.723,-93.367,-92.888,-92.266,-91.552,
--90.812,-90.082,-89.373,-88.682,-88.007,-87.368,-86.833,-86.479,-86.304,-86.155,-85.773,-84.975,-83.819,-82.561,-81.415,-80.392,
--79.383,-78.327,-77.229,-76.067,-74.798,-73.448,-72.107,-70.825,-69.591,-68.431,-67.406,-66.478,-65.511,-64.472,-63.521,-62.834,
--62.455,-62.407,-62.746,-63.285,-63.414,-62.598,-61.144,-60.143,-60.377,-61.426,-62.035,-61.270,-59.175,-56.446,-53.809,-51.730,
--50.380,-49.620,-49.094,-48.490,-47.715,-46.770,-45.561,-43.967,-42.097,-40.328,-39.021,-38.251,-37.809,-37.406,-36.825,-35.960,
--34.817,-33.558,-32.466,-31.766,-31.445,-31.262,-30.954,-30.420,-29.703,-28.861,-27.929,-26.958,-25.988,-24.990,-23.923,-22.882,
--22.078,-21.603,-21.274,-20.806,-20.109,-19.314,-18.543,-17.756,-16.852,-15.821,-14.742,-13.682,-12.655,-11.645,-10.610,-9.459,
--8.121,-6.650,-5.223,-3.957,-2.755,-1.420,.028,1.255,1.942,2.201,2.497,3.103,3.805,4.264,4.540,5.020,
-5.901,6.983,8.020,9.033,10.145,11.310,12.404,13.465,14.619,15.807,16.843,17.726,18.692,19.887,21.176,22.371,
-23.483,24.627,25.782,26.834,27.767,28.660,29.537,30.375,31.260,32.340,33.581,34.742,35.686,36.574,37.602,38.649,
-39.379,39.677,39.818,40.149,40.780,41.666,42.844,44.374,46.093,47.619,48.690,49.394,49.998,50.622,51.168,51.507,
-51.666,51.852,52.318,53.141,54.036,54.493,54.198,53.248,51.841,49.892,47.340,44.840,43.679,44.627,47.020,49.367,
-50.792,51.563,52.251,52.897,53.227,53.282,53.374,53.557,53.569,53.304,53.015,52.923,52.923,52.805,52.593,52.466,
-52.473,52.511,52.498,52.427,52.299,52.149,52.083,52.176,52.348,52.455,52.484,52.533,52.635,52.752,52.937,53.301,
-53.783,54.126,54.185,54.110,54.125,54.261,54.425,54.606,54.832,55.031,55.118,55.164,55.276,55.350,55.161,54.723,
-54.320,54.112,53.931,53.581,53.142,52.819,52.619,52.399,52.134,51.961,51.967,52.136,52.456,52.912,53.375,53.651,
-53.679,53.545,53.309,52.936,52.359,51.407,49.713,46.978,43.438,39.821,36.712,34.222,32.459,31.991,33.368,36.271,
-39.578,42.346,44.424,46.018,47.065,47.343,46.968,46.416,46.059,45.882,45.674,45.294,44.742,44.105,43.510,43.023,
-42.588,42.112,41.630,41.275,41.084,40.936,40.706,40.389,40.031,39.639,39.222,38.839,38.523,38.205,37.807,37.381,
-37.027,36.671,36.077,35.219,34.572,34.790,35.933,37.126,37.241,35.997,34.243,33.066,32.764,32.840,32.796,32.598,
-32.386,32.110,31.673,31.174,30.746,30.298,29.693,29.128,28.996,29.312,29.532,29.175,28.444,28.009,28.207,28.648,
-28.657,27.973,26.931,26.075,25.715,25.823,26.170,26.452,26.372,25.824,25.067,24.598,24.668,24.952,24.824,24.000,
-22.804,21.815,21.335,21.275,21.397,21.536,21.621,21.623,21.532,21.353,21.122,20.912,20.771,20.621,20.292,19.736,
-19.142,18.743,18.540,18.328,17.974,17.554,17.208,16.984,16.847,16.741,16.600,16.384,16.154,16.011,15.910,15.653,
-15.167,14.668,14.408,14.337,14.195,13.891,13.609,13.506,13.490,13.375,13.128,12.840,12.557,12.261,11.980,11.781,
-11.637,11.415,11.022,10.538,10.157,10.044,10.212,10.493,10.647,10.560,10.367,10.330,10.569,10.952,11.249,11.345,
-11.270,11.095,10.871,10.652,10.487,10.361,10.206,10.000,9.841,9.841,9.971,10.059,9.977,9.810,9.770,9.954,
-10.230,10.386,10.342,10.190,10.046,9.939,9.848,9.795,9.834,9.961,10.090,10.124,10.058,9.996,10.062,10.285,
-10.578,10.831,11.021,11.208,11.436,11.662,11.811,11.856,11.824,11.745,11.653,11.605,11.641,11.723,11.744,11.633,
-11.424,11.195,10.990,10.822,10.713,10.673,10.644,10.519,10.251,9.890,9.526,9.205,8.927,8.684,8.466,8.254,
-8.033,7.819,7.639,7.495,7.354,7.191,7.005,6.812,6.615,6.407,6.183,5.933,5.644,5.319,4.983,4.676,
-4.428,4.237,4.057,3.830,3.544,3.262,3.058,2.929,2.790,2.574,2.296,2.010,1.730,1.443,1.159,.914,
-.697,.449,.142,-.181,-.477,-.761,-1.073,-1.402,-1.692,-1.910,-2.066,-2.177,-2.263,-2.366,-2.539,-2.788,
--3.056,-3.282,-3.460,-3.626,-3.805,-4.004,-4.221,-4.458,-4.701,-4.937,-5.176,-5.436,-5.708,-5.962,-6.184,-6.404,
--6.660,-6.957,-7.266,-7.574,-7.896,-8.254,-8.632,-8.994,-9.319,-9.630,-9.967,-10.345,-10.748,-11.147,-11.531,-11.898,
--12.258,-12.620,-12.993,-13.380,-13.784,-14.214,-14.679,-15.168,-15.661,-16.148,-16.636,-17.119,-17.579,-18.015,-18.459,-18.951,
--19.490,-20.034,-20.547,-21.024,-21.475,-21.907,-22.333,-22.769,-23.228,-23.708,-24.202,-24.702,-25.194,-25.670,-26.155,-26.682,
--27.248,-27.802,-28.295,-28.740,-29.188,-29.677,-30.201,-30.732,-31.242,-31.719,-32.166,-32.594,-32.998,-33.357,-33.685,-34.036,
--34.441,-34.860,-35.227,-35.549,-35.890,-36.276,-36.666,-37.036,-37.425,-37.857,-38.275,-38.605,-38.857,-39.100,-39.365,-39.636,
--39.918,-40.236,-40.576,-40.876,-41.117,-41.348,-41.613,-41.879,-42.090,-42.247,-42.385,-42.513,-42.619,-42.709,-42.799,-42.878,
--42.925,-42.962,-43.026,-43.093,-43.101,-43.046,-42.992,-42.968,-42.929,-42.846,-42.780,-42.794,-42.828,-42.759,-42.559,-42.327,
--42.151,-42.011,-41.838,-41.611,-41.350,-41.067,-40.769,-40.481,-40.214,-39.932,-39.593,-39.206,-38.807,-38.400,-37.979,-37.570,
--37.201,-36.842,-36.442,-36.018,-35.629,-35.244,-34.753,-34.139,-33.563,-33.163,-32.866,-32.477,-31.944,-31.397,-30.936,-30.504,
--30.013,-29.478,-28.962,-28.461,-27.930,-27.367,-26.799,-26.227,-25.637,-25.057,-24.520,-23.995,-23.423,-22.803,-22.189,-21.604,
--21.023,-20.446,-19.893,-19.349,-18.768,-18.154,-17.570,-17.031,-16.476,-15.878,-15.303,-14.816,-14.381,-13.926,-13.451,-12.996,
--12.563,-12.123,-11.696,-11.313,-10.937,-10.496,-10.001,-9.546,-9.182,-8.865,-8.546,-8.235,-7.961,-7.722,-7.528,-7.417,
--7.374,-7.292,-7.068,-6.711,-6.312,-5.940,-5.614,-5.332,-5.079,-4.810,-4.496,-4.183,-3.942,-3.765,-3.562,-3.283,
--2.995,-2.823,-2.844,-3.063,-3.449,-3.967,-4.564,-5.147,-5.590,-5.766,-5.605,-5.131,-4.457,-3.715,-2.990,-2.316,
--1.741,-1.381,-1.333,-1.523,-1.666,-1.445,-.722,.437,1.870,3.354,4.600,5.420,5.934,6.471,7.149,7.716,
-7.915,7.836,7.714,7.494,6.936,6.111,5.465,5.264,5.235,4.945,4.331,3.650,3.070,2.561,2.095,1.688,
-1.268,.736,.154,-.324,-.724,-1.243,-1.910,-2.480,-2.794,-3.051,-3.552,-4.313,-5.078,-5.664,-6.117,-6.565,
--7.061,-7.608,-8.227,-8.981,-9.962,-11.220,-12.672,-14.147,-15.567,-17.025,-18.604,-20.185,-21.539,-22.562,-23.292,-23.742,
--23.871,-23.736,-23.537,-23.463,-23.582,-23.856,-24.160,-24.281,-24.083,-23.768,-23.838,-24.663,-26.117,-27.721,-29.093,-30.205,
--31.257,-32.415,-33.662,-34.869,-35.968,-37.024,-38.087,-39.018,-39.615,-39.929,-40.280,-40.842,-41.351,-41.363,-40.722,-39.635,
--38.432,-37.392,-36.689,-36.245,-35.722,-34.961,-34.444,-34.946,-36.622,-38.732,-40.431,-41.497,-42.011,-41.704,-40.282,-38.406,
--37.683,-39.254,-42.568,-45.912,-48.056,-49.076,-49.647,-49.965,-49.658,-48.518,-46.970,-45.742,-45.271,-45.524,-46.209,-46.959,
--47.403,-47.332,-46.886,-46.452,-46.264,-46.192,-45.999,-45.687,-45.432,-45.276,-45.086,-44.807,-44.565,-44.473,-44.466,-44.429,
--44.363,-44.323,-44.288,-44.195,-44.050,-43.898,-43.725,-43.492,-43.231,-43.003,-42.775,-42.445,-42.003,-41.554,-41.171,-40.793,
--40.332,-39.803,-39.276,-38.752,-38.143,-37.400,-36.585,-35.801,-35.079,-34.358,-33.581,-32.762,-31.955,-31.157,-30.319,-29.431,
--28.556,-27.759,-27.042,-26.402,-25.871,-25.456,-25.077,-24.651,-24.201,-23.812,-23.478,-23.103,-22.651,-22.193,-21.785,-21.384,
--20.935,-20.470,-20.035,-19.601,-19.104,-18.556,-18.026,-17.555,-17.132,-16.732,-16.325,-15.870,-15.363,-14.856,-14.394,-13.950,
--13.472,-12.970,-12.487,-12.007,-11.484,-10.931,-10.410,-9.921,-9.396,-8.805,-8.197,-7.595,-6.958,-6.260,-5.555,-4.901,
--4.276,-3.633,-2.977,-2.342,-1.715,-1.063,-.398,.236,.843,1.464,2.114,2.760,3.370,3.950,4.527,5.120,
-5.727,6.326,6.893,7.443,8.013,8.616,9.214,9.788,10.356,10.924,11.434,11.855,12.247,12.685,13.135,13.502,
-13.782,14.074,14.426,14.779,15.071,15.318,15.547,15.741,15.904,16.099,16.367,16.657,16.917,17.185,17.536,17.950,
-18.338,18.658,18.954,19.258,19.549,19.804,20.046,20.316,20.622,20.903,21.072,21.155,21.429,22.308,23.942,25.916,
-27.510,28.326,28.589,28.778,29.090,29.366,29.462,29.524,29.804,30.300,30.693,30.694,30.412,30.276,30.533,30.930,
-31.019,30.746,30.525,30.691,31.064,31.238,31.136,31.053,31.210,31.514,31.795,32.054,32.353,32.622,32.741,32.721,
-32.648,32.508,32.206,31.741,31.237,30.788,30.375,29.954,29.534,29.147,28.824,28.628,28.604,28.668,28.621,28.363,
-28.035,27.868,27.923,28.050,28.081,27.977,27.788,27.550,27.273,26.975,26.685,26.423,26.212,26.080,26.037,26.033,
-25.987,25.852,25.656,25.444,25.229,24.988,24.796,24.534,24.333,24.171,23.973,23.700,23.385,23.076,22.781,22.511,
-22.342,22.344,22.424,22.313,21.819,21.059,20.372,19.984,19.827,19.706,19.564,19.518,19.654,19.891,20.056,20.083,
-20.077,20.193,20.466,20.789,21.065,21.311,21.567,21.758,21.726,21.432,21.042,20.740,20.535,20.303,19.984,19.637,
-19.323,19.013,18.661,18.280,17.901,17.522,17.128,16.730,16.343,15.950,15.540,15.151,14.818,14.508,14.161,13.797,
-13.505,13.321,13.180,12.994,12.750,12.480,12.189,11.857,11.486,11.095,10.692,10.263,9.796,9.303,8.827,8.435,
-8.168,7.961,7.674,7.235,6.733,6.309,6.006,5.785,5.665,5.715,5.894,6.031,6.042,6.037,6.130,6.231,
-6.167,5.970,5.858,5.947,6.108,6.173,6.111,5.942,5.597,5.016,4.290,3.603,3.052,2.623,2.299,2.069,
-1.861,1.594,1.312,1.144,1.126,1.152,1.139,1.103,1.054,.927,.691,.436,.252,.095,-.130,-.413,
--.670,-.880,-1.107,-1.396,-1.756,-2.187,-2.635,-2.954,-3.055,-3.058,-3.171,-3.434,-3.711,-3.947,-4.230,-4.570,
--4.838,-5.016,-5.298,-5.708,-5.798,-5.027,-3.478,-1.933,-1.165,-1.269,-1.723,-1.943,-1.706,-1.185,-.728,-.576,
--.689,-.907,-1.274,-2.075,-3.438,-5.020,-6.276,-7.001,-7.440,-7.884,-8.345,-8.688,-8.904,-9.112,-9.360,-9.601,
--9.844,-10.204,-10.769,-11.479,-12.190,-12.807,-13.339,-13.844,-14.377,-14.967,-15.607,-16.268,-16.932,-17.599,-18.260,-18.869,
--19.381,-19.808,-20.227,-20.700,-21.216,-21.721,-22.201,-22.708,-23.302,-23.997,-24.759,-25.531,-26.232,-26.772,-27.129,-27.431,
--27.905,-28.696,-29.724,-30.744,-31.563,-32.179,-32.738,-33.390,-34.196,-35.103,-35.920,-36.397,-36.455,-36.400,-36.779,-37.863,
--39.326,-40.551,-41.274,-41.767,-42.373,-43.056,-43.572,-43.903,-44.260,-44.701,-45.036,-45.251,-45.767,-47.025,-48.882,-50.647,
--51.787,-52.434,-53.121,-54.150,-55.325,-56.272,-56.878,-57.362,-57.986,-58.794,-59.632,-60.373,-61.033,-61.701,-62.425,-63.218,
--64.098,-65.041,-65.937,-66.694,-67.368,-68.116,-68.982,-69.847,-70.605,-71.308,-72.065,-72.876,-73.661,-74.421,-75.239,-76.129,
--76.981,-77.697,-78.321,-78.964,-79.687,-80.474,-81.291,-82.097,-82.828,-83.448,-84.016,-84.648,-85.380,-86.129,-86.791,-87.325,
--87.718,-87.918,-87.910,-87.823,-87.879,-88.183,-88.623,-89.037,-89.428,-89.946,-90.649,-91.352,-91.732,-91.581,-90.992,-90.354,
--90.110,-90.387,-90.802,-90.748,-89.977,-88.871,-88.063,-87.814,-87.870,-87.876,-87.795,-87.854,-88.191,-88.674,-89.069,-89.307,
--89.543,-89.962,-90.535,-91.033,-91.317,-91.575,-92.164,-93.181,-94.277,-94.970,-95.078,-94.788,-94.368,-93.924,-93.422,-92.817,
--92.107,-91.334,-90.570,-89.873,-89.226,-88.554,-87.836,-87.178,-86.716,-86.466,-86.270,-85.896,-85.187,-84.167,-82.995,-81.829,
--80.714,-79.613,-78.505,-77.384,-76.204,-74.902,-73.498,-72.095,-70.777,-69.558,-68.437,-67.418,-66.443,-65.422,-64.381,-63.490,
--62.886,-62.588,-62.635,-63.086,-63.688,-63.764,-62.831,-61.348,-60.456,-60.760,-61.588,-61.672,-60.378,-58.069,-55.478,-53.120,
--51.262,-50.040,-49.354,-48.862,-48.265,-47.516,-46.632,-45.452,-43.800,-41.828,-39.992,-38.646,-37.776,-37.157,-36.620,-36.067,
--35.370,-34.401,-33.218,-32.094,-31.304,-30.883,-30.634,-30.326,-29.853,-29.209,-28.412,-27.502,-26.559,-25.633,-24.659,-23.558,
--22.430,-21.529,-20.992,-20.645,-20.188,-19.522,-18.782,-18.084,-17.355,-16.457,-15.385,-14.256,-13.178,-12.170,-11.200,-10.194,
--9.036,-7.639,-6.065,-4.517,-3.125,-1.784,-.299,1.261,2.488,3.047,3.120,3.265,3.791,4.452,4.875,5.115,
-5.578,6.461,7.558,8.630,9.705,10.886,12.092,13.181,14.208,15.315,16.454,17.462,18.377,19.445,20.759,22.102,
-23.263,24.317,25.441,26.607,27.620,28.417,29.137,29.918,30.779,31.722,32.800,34.003,35.193,36.253,37.238,38.260,
-39.286,40.165,40.886,41.677,42.755,44.030,45.183,46.038,46.767,47.657,48.735,49.738,50.437,50.889,51.318,51.823,
-52.270,52.511,52.643,53.013,53.877,55.052,55.993,56.303,56.042,55.373,54.023,51.532,48.225,45.560,45.002,46.585,
-48.929,50.722,51.786,52.611,53.373,53.834,53.958,54.046,54.233,54.290,54.057,53.753,53.650,53.678,53.592,53.365,
-53.184,53.135,53.118,53.043,52.929,52.804,52.673,52.595,52.647,52.801,52.943,53.029,53.097,53.154,53.193,53.323,
-53.685,54.192,54.534,54.550,54.433,54.456,54.633,54.816,54.969,55.153,55.338,55.435,55.479,55.564,55.611,55.438,
-55.058,54.697,54.448,54.147,53.667,53.127,52.665,52.211,51.655,51.099,50.747,50.662,50.803,51.192,51.816,52.444,
-52.796,52.847,52.738,52.415,51.602,50.111,47.932,45.040,41.505,37.877,35.057,33.542,33.091,33.377,34.601,37.015,
-40.089,42.759,44.523,45.768,46.899,47.662,47.630,46.989,46.394,46.186,46.139,45.921,45.480,44.929,44.335,43.729,
-43.161,42.641,42.144,41.707,41.427,41.296,41.167,40.915,40.562,40.172,39.743,39.282,38.885,38.636,38.472,38.250,
-37.924,37.553,37.119,36.499,35.742,35.261,35.528,36.446,37.177,36.851,35.469,33.947,33.156,33.119,33.265,33.242,
-33.153,33.097,32.913,32.488,31.971,31.466,30.808,29.922,29.194,29.067,29.362,29.393,28.841,28.146,27.880,28.037,
-28.176,28.041,27.727,27.346,26.889,26.467,26.372,26.710,27.113,27.027,26.295,25.357,24.855,25.026,25.486,25.566,
-24.906,23.741,22.635,21.966,21.720,21.738,21.997,22.524,23.096,23.248,22.724,21.846,21.282,21.356,21.690,21.617,
-20.900,19.936,19.255,18.974,18.803,18.468,17.985,17.562,17.363,17.384,17.460,17.380,17.075,16.703,16.459,16.306,
-16.013,15.479,14.898,14.512,14.313,14.127,13.903,13.752,13.714,13.663,13.486,13.233,13.015,12.834,12.613,12.323,
-11.997,11.655,11.279,10.875,10.494,10.223,10.152,10.315,10.590,10.730,10.578,10.277,10.166,10.434,10.924,11.326,
-11.471,11.404,11.232,11.011,10.794,10.658,10.614,10.562,10.393,10.154,10.021,10.086,10.231,10.262,10.149,10.063,
-10.178,10.465,10.727,10.799,10.682,10.507,10.384,10.329,10.292,10.253,10.248,10.305,10.377,10.388,10.354,10.404,
-10.629,10.942,11.164,11.233,11.264,11.385,11.589,11.778,11.891,11.921,11.865,11.743,11.648,11.681,11.802,11.848,
-11.719,11.492,11.302,11.170,11.024,10.855,10.728,10.662,10.568,10.365,10.091,9.827,9.587,9.322,9.020,8.728,
-8.470,8.218,7.960,7.744,7.614,7.542,7.464,7.356,7.228,7.077,6.866,6.582,6.255,5.917,5.574,5.240,
-4.960,4.773,4.653,4.513,4.284,3.987,3.703,3.491,3.326,3.140,2.902,2.640,2.386,2.138,1.876,1.614,
-1.377,1.150,.883,.569,.259,-.010,-.273,-.587,-.948,-1.286,-1.541,-1.707,-1.809,-1.887,-1.993,-2.173,
--2.423,-2.690,-2.923,-3.119,-3.303,-3.487,-3.678,-3.896,-4.156,-4.440,-4.713,-4.964,-5.212,-5.474,-5.741,-6.000,
--6.249,-6.506,-6.779,-7.066,-7.363,-7.672,-7.998,-8.338,-8.676,-8.995,-9.302,-9.628,-9.999,-10.408,-10.830,-11.247,
--11.657,-12.059,-12.442,-12.803,-13.160,-13.536,-13.949,-14.402,-14.887,-15.389,-15.895,-16.402,-16.907,-17.395,-17.852,-18.294,
--18.766,-19.299,-19.868,-20.417,-20.908,-21.351,-21.775,-22.197,-22.616,-23.033,-23.469,-23.941,-24.438,-24.922,-25.372,-25.815,
--26.301,-26.842,-27.392,-27.903,-28.374,-28.842,-29.338,-29.864,-30.399,-30.912,-31.384,-31.820,-32.243,-32.657,-33.041,-33.392,
--33.751,-34.150,-34.562,-34.937,-35.278,-35.632,-36.018,-36.409,-36.792,-37.201,-37.648,-38.071,-38.401,-38.647,-38.877,-39.126,
--39.383,-39.644,-39.929,-40.233,-40.514,-40.757,-40.995,-41.251,-41.501,-41.709,-41.874,-42.014,-42.132,-42.230,-42.327,-42.440,
--42.543,-42.610,-42.659,-42.726,-42.800,-42.831,-42.803,-42.754,-42.710,-42.661,-42.604,-42.571,-42.566,-42.523,-42.378,-42.157,
--41.949,-41.799,-41.674,-41.523,-41.331,-41.097,-40.819,-40.522,-40.254,-40.017,-39.741,-39.371,-38.943,-38.539,-38.182,-37.836,
--37.476,-37.109,-36.730,-36.314,-35.880,-35.473,-35.083,-34.624,-34.067,-33.505,-33.046,-32.664,-32.242,-31.737,-31.222,-30.750,
--30.282,-29.772,-29.250,-28.768,-28.309,-27.804,-27.230,-26.621,-26.020,-25.448,-24.918,-24.417,-23.902,-23.337,-22.737,-22.139,
--21.553,-20.970,-20.403,-19.866,-19.326,-18.746,-18.151,-17.596,-17.068,-16.502,-15.893,-15.324,-14.851,-14.420,-13.955,-13.460,
--12.984,-12.538,-12.102,-11.678,-11.272,-10.860,-10.417,-9.978,-9.594,-9.257,-8.923,-8.596,-8.327,-8.130,-7.977,-7.847,
--7.739,-7.604,-7.370,-7.033,-6.666,-6.315,-5.962,-5.607,-5.306,-5.066,-4.789,-4.396,-3.965,-3.643,-3.458,-3.289,
--3.027,-2.686,-2.350,-2.078,-1.899,-1.861,-2.041,-2.494,-3.187,-3.967,-4.610,-4.951,-4.986,-4.832,-4.568,-4.157,
--3.526,-2.740,-2.042,-1.689,-1.709,-1.842,-1.753,-1.281,-.459,.641,1.944,3.284,4.435,5.332,6.135,6.964,
-7.692,8.127,8.283,8.270,8.019,7.398,6.579,5.987,5.781,5.632,5.181,4.494,3.887,3.487,3.190,2.913,
-2.597,2.081,1.255,.348,-.251,-.498,-.740,-1.199,-1.697,-2.026,-2.340,-2.923,-3.742,-4.491,-5.018,-5.458,
--5.961,-6.499,-7.012,-7.588,-8.403,-9.555,-10.987,-12.549,-14.109,-15.651,-17.257,-18.946,-20.567,-21.911,-22.879,-23.449,
--23.549,-23.110,-22.261,-21.342,-20.695,-20.505,-20.783,-21.373,-21.947,-22.206,-22.199,-22.355,-23.062,-24.293,-25.685,-26.915,
--27.904,-28.726,-29.474,-30.240,-31.139,-32.291,-33.717,-35.232,-36.494,-37.313,-37.919,-38.744,-39.869,-40.820,-41.066,-40.570,
--39.707,-38.780,-37.848,-36.926,-36.063,-35.246,-34.535,-34.329,-35.158,-37.021,-39.182,-40.816,-41.639,-41.711,-40.970,-39.478,
--38.070,-38.115,-40.269,-43.690,-46.787,-48.662,-49.588,-50.177,-50.483,-50.078,-48.783,-47.055,-45.642,-45.034,-45.262,-46.032,
--46.906,-47.458,-47.477,-47.114,-46.723,-46.500,-46.337,-46.067,-45.724,-45.452,-45.257,-45.019,-44.720,-44.494,-44.427,-44.439,
--44.429,-44.403,-44.396,-44.365,-44.259,-44.112,-43.972,-43.804,-43.565,-43.321,-43.164,-43.036,-42.771,-42.318,-41.812,-41.380,
--40.979,-40.498,-39.931,-39.369,-38.851,-38.311,-37.681,-36.979,-36.269,-35.568,-34.832,-34.032,-33.196,-32.369,-31.554,-30.736,
--29.922,-29.129,-28.343,-27.547,-26.799,-26.193,-25.724,-25.256,-24.699,-24.139,-23.713,-23.396,-23.043,-22.594,-22.140,-21.763,
--21.419,-21.037,-20.620,-20.200,-19.764,-19.280,-18.760,-18.238,-17.722,-17.220,-16.756,-16.321,-15.859,-15.343,-14.830,-14.369,
--13.927,-13.445,-12.944,-12.475,-12.024,-11.530,-10.998,-10.478,-9.968,-9.413,-8.811,-8.220,-7.655,-7.051,-6.378,-5.695,
--5.059,-4.448,-3.818,-3.180,-2.561,-1.945,-1.309,-.667,-.044,.575,1.214,1.856,2.469,3.055,3.638,4.226,
-4.821,5.427,6.032,6.613,7.176,7.761,8.374,8.962,9.505,10.049,10.620,11.152,11.585,11.981,12.437,12.926,
-13.335,13.637,13.919,14.237,14.538,14.775,14.971,15.152,15.301,15.440,15.654,15.978,16.334,16.650,16.963,17.344,
-17.769,18.152,18.472,18.768,19.049,19.286,19.482,19.684,19.926,20.206,20.485,20.691,20.800,21.023,21.784,23.327,
-25.313,26.997,27.903,28.213,28.414,28.703,28.902,28.882,28.851,29.111,29.646,30.084,30.130,29.938,29.944,30.314,
-30.703,30.708,30.444,30.447,30.968,31.620,31.877,31.721,31.568,31.672,31.895,32.071,32.268,32.584,32.884,32.962,
-32.816,32.601,32.368,32.037,31.590,31.126,30.717,30.332,29.939,29.565,29.235,28.950,28.752,28.703,28.755,28.723,
-28.491,28.172,27.985,27.993,28.057,28.036,27.924,27.791,27.649,27.434,27.105,26.712,26.370,26.166,26.083,26.025,
-25.908,25.733,25.560,25.421,25.276,25.066,24.796,24.511,24.273,24.109,23.981,23.824,23.602,23.317,22.983,22.640,
-22.373,22.276,22.345,22.400,22.190,21.627,20.894,20.287,19.951,19.810,19.727,19.684,19.758,19.973,20.227,20.386,
-20.415,20.415,20.510,20.722,20.976,21.211,21.442,21.680,21.836,21.784,21.521,21.192,20.931,20.731,20.503,20.202,
-19.853,19.482,19.093,18.706,18.349,18.010,17.646,17.243,16.835,16.447,16.067,15.692,15.345,15.031,14.699,14.303,
-13.880,13.521,13.281,13.133,12.999,12.800,12.503,12.149,11.814,11.522,11.189,10.712,10.102,9.471,8.915,8.459,
-8.122,7.932,7.832,7.647,7.236,6.654,6.091,5.678,5.429,5.342,5.423,5.586,5.662,5.592,5.512,5.541,
-5.588,5.486,5.273,5.166,5.242,5.318,5.211,4.972,4.748,4.525,4.156,3.597,2.982,2.463,2.075,1.773,
-1.502,1.219,.920,.686,.610,.661,.705,.654,.548,.444,.336,.218,.125,.049,-.110,-.406,
--.737,-.959,-1.070,-1.185,-1.392,-1.726,-2.223,-2.843,-3.382,-3.623,-3.600,-3.581,-3.748,-4.040,-4.327,-4.579,
--4.806,-4.989,-5.186,-5.532,-5.946,-5.970,-5.170,-3.695,-2.259,-1.505,-1.491,-1.798,-1.974,-1.828,-1.480,-1.218,
--1.240,-1.468,-1.725,-2.101,-2.953,-4.416,-6.053,-7.225,-7.743,-7.957,-8.239,-8.605,-8.893,-9.086,-9.286,-9.503,
--9.680,-9.882,-10.305,-11.048,-11.980,-12.880,-13.628,-14.228,-14.730,-15.183,-15.645,-16.160,-16.718,-17.286,-17.872,-18.522,
--19.225,-19.871,-20.365,-20.740,-21.131,-21.620,-22.158,-22.673,-23.182,-23.768,-24.470,-25.250,-26.049,-26.805,-27.424,-27.832,
--28.117,-28.531,-29.275,-30.280,-31.286,-32.115,-32.800,-33.459,-34.147,-34.871,-35.630,-36.351,-36.866,-37.112,-37.350,-37.996,
--39.151,-40.420,-41.334,-41.872,-42.383,-43.059,-43.709,-44.133,-44.459,-44.917,-45.428,-45.720,-45.876,-46.446,-47.839,-49.750,
--51.399,-52.339,-52.834,-53.443,-54.381,-55.405,-56.204,-56.780,-57.386,-58.211,-59.179,-60.072,-60.775,-61.370,-62.004,-62.748,
--63.588,-64.493,-65.424,-66.302,-67.073,-67.784,-68.547,-69.393,-70.238,-71.010,-71.753,-72.546,-73.372,-74.160,-74.903,-75.680,
--76.527,-77.373,-78.134,-78.814,-79.488,-80.210,-80.977,-81.761,-82.529,-83.243,-83.884,-84.497,-85.172,-85.935,-86.702,-87.360,
--87.875,-88.263,-88.488,-88.489,-88.335,-88.277,-88.547,-89.127,-89.786,-90.342,-90.821,-91.341,-91.908,-92.350,-92.424,-92.015,
--91.294,-90.681,-90.525,-90.718,-90.745,-90.216,-89.320,-88.611,-88.393,-88.459,-88.474,-88.423,-88.571,-89.061,-89.702,-90.173,
--90.355,-90.412,-90.576,-90.887,-91.190,-91.412,-91.776,-92.601,-93.875,-95.132,-95.845,-95.881,-95.507,-95.030,-94.543,-93.995,
--93.346,-92.602,-91.808,-91.051,-90.399,-89.803,-89.130,-88.339,-87.574,-87.019,-86.696,-86.432,-86.010,-85.310,-84.340,-83.201,
--82.018,-80.861,-79.735,-78.614,-77.471,-76.263,-74.951,-73.554,-72.157,-70.844,-69.638,-68.529,-67.489,-66.452,-65.372,-64.325,
--63.487,-62.968,-62.764,-62.897,-63.382,-63.905,-63.804,-62.732,-61.298,-60.613,-61.032,-61.656,-61.263,-59.528,-57.072,-54.620,
--52.494,-50.817,-49.707,-49.084,-48.597,-47.971,-47.226,-46.398,-45.259,-43.567,-41.516,-39.646,-38.318,-37.449,-36.782,-36.190,
--35.622,-34.938,-33.996,-32.851,-31.753,-30.921,-30.373,-29.991,-29.639,-29.215,-28.636,-27.872,-26.980,-26.071,-25.184,-24.238,
--23.153,-22.021,-21.062,-20.396,-19.896,-19.351,-18.707,-18.065,-17.465,-16.778,-15.867,-14.761,-13.625,-12.572,-11.591,-10.605,
--9.551,-8.370,-7.026,-5.555,-4.061,-2.585,-1.034,.665,2.308,3.452,3.844,3.783,3.874,4.386,5.025,5.410,
-5.616,6.056,6.928,8.038,9.158,10.307,11.561,12.817,13.920,14.902,15.911,16.971,18.006,19.055,20.254,21.587,
-22.855,23.951,24.996,26.124,27.247,28.181,28.935,29.718,30.693,31.823,32.969,34.038,35.019,35.933,36.820,37.740,
-38.733,39.789,40.867,41.989,43.264,44.757,46.310,47.570,48.313,48.727,49.236,50.019,50.829,51.341,51.579,51.860,
-52.376,52.990,53.453,53.755,54.173,54.990,56.160,57.277,57.960,58.214,58.198,57.607,55.663,52.146,48.286,46.068,
-46.433,48.469,50.554,51.931,52.877,53.723,54.341,54.590,54.673,54.811,54.900,54.764,54.514,54.379,54.347,54.232,
-54.009,53.835,53.770,53.713,53.599,53.482,53.387,53.266,53.137,53.110,53.233,53.414,53.545,53.591,53.557,53.504,
-53.602,53.995,54.549,54.915,54.946,54.873,54.967,55.181,55.318,55.372,55.487,55.652,55.721,55.693,55.719,55.806,
-55.746,55.412,54.933,54.480,54.073,53.659,53.197,52.595,51.740,50.724,49.853,49.319,49.040,48.950,49.216,49.916,
-50.733,51.248,51.400,51.290,50.661,49.006,46.246,42.910,39.583,36.600,34.360,33.411,33.870,35.131,36.572,38.263,
-40.518,43.003,44.894,45.911,46.566,47.261,47.694,47.466,46.837,46.415,46.356,46.296,45.980,45.522,45.065,44.544,
-43.899,43.253,42.740,42.339,41.988,41.711,41.521,41.314,40.989,40.577,40.169,39.767,39.335,38.937,38.700,38.631,
-38.575,38.374,37.993,37.463,36.811,36.144,35.756,35.917,36.438,36.611,35.860,34.454,33.319,33.047,33.314,33.455,
-33.324,33.241,33.294,33.193,32.815,32.394,31.996,31.288,30.177,29.271,29.196,29.668,29.822,29.392,28.964,28.952,
-28.961,28.492,27.802,27.519,27.663,27.649,27.237,26.929,27.232,27.901,28.204,27.752,26.833,26.027,25.697,25.776,
-25.863,25.547,24.756,23.807,23.051,22.557,22.279,22.375,23.036,23.951,24.286,23.506,22.106,21.207,21.374,22.048,
-22.232,21.557,20.508,19.736,19.413,19.260,18.986,18.545,18.097,17.836,17.836,17.952,17.908,17.573,17.108,16.758,
-16.532,16.222,15.722,15.180,14.779,14.515,14.285,14.089,14.005,13.999,13.925,13.717,13.461,13.263,13.111,12.931,
-12.697,12.424,12.115,11.758,11.359,10.953,10.603,10.407,10.432,10.598,10.677,10.513,10.234,10.151,10.432,10.921,
-11.320,11.476,11.443,11.321,11.148,10.955,10.825,10.806,10.819,10.722,10.498,10.301,10.281,10.395,10.462,10.392,
-10.312,10.422,10.751,11.099,11.221,11.066,10.808,10.656,10.645,10.633,10.518,10.378,10.365,10.491,10.618,10.669,
-10.749,10.974,11.265,11.424,11.399,11.353,11.445,11.651,11.848,11.978,12.049,12.043,11.943,11.838,11.859,11.992,
-12.054,11.922,11.692,11.532,11.447,11.301,11.041,10.776,10.603,10.478,10.322,10.156,10.039,9.935,9.740,9.442,
-9.144,8.911,8.685,8.398,8.094,7.874,7.761,7.692,7.623,7.552,7.449,7.243,6.909,6.512,6.137,5.799,
-5.487,5.228,5.066,4.981,4.883,4.700,4.450,4.200,3.982,3.775,3.543,3.282,3.018,2.768,2.523,2.266,
-2.000,1.742,1.486,1.207,.905,.615,.363,.115,-.183,-.534,-.880,-1.159,-1.356,-1.490,-1.598,-1.721,
--1.896,-2.125,-2.380,-2.632,-2.868,-3.080,-3.258,-3.421,-3.623,-3.901,-4.224,-4.525,-4.770,-4.990,-5.234,-5.518,
--5.816,-6.093,-6.343,-6.585,-6.847,-7.136,-7.440,-7.747,-8.059,-8.373,-8.677,-8.967,-9.271,-9.623,-10.027,-10.458,
--10.903,-11.360,-11.814,-12.230,-12.594,-12.934,-13.292,-13.687,-14.122,-14.597,-15.105,-15.629,-16.155,-16.683,-17.205,-17.691,
--18.130,-18.563,-19.052,-19.610,-20.180,-20.695,-21.151,-21.583,-22.014,-22.432,-22.834,-23.247,-23.702,-24.190,-24.671,-25.119,
--25.553,-26.009,-26.501,-27.010,-27.511,-28.003,-28.495,-29.000,-29.521,-30.055,-30.575,-31.050,-31.474,-31.874,-32.277,-32.679,
--33.067,-33.450,-33.845,-34.245,-34.628,-34.994,-35.368,-35.755,-36.136,-36.516,-36.925,-37.367,-37.783,-38.110,-38.358,-38.589,
--38.844,-39.115,-39.383,-39.648,-39.910,-40.161,-40.403,-40.646,-40.890,-41.117,-41.317,-41.494,-41.648,-41.767,-41.860,-41.960,
--42.080,-42.192,-42.270,-42.333,-42.409,-42.488,-42.530,-42.520,-42.482,-42.441,-42.409,-42.392,-42.393,-42.371,-42.264,-42.058,
--41.818,-41.617,-41.470,-41.343,-41.212,-41.059,-40.851,-40.569,-40.252,-39.974,-39.740,-39.467,-39.092,-38.658,-38.265,-37.951,
--37.664,-37.348,-36.989,-36.598,-36.173,-35.721,-35.273,-34.847,-34.415,-33.944,-33.448,-32.961,-32.488,-32.002,-31.506,-31.029,
--30.578,-30.112,-29.607,-29.097,-28.625,-28.177,-27.691,-27.134,-26.535,-25.947,-25.394,-24.859,-24.309,-23.728,-23.143,-22.587,
--22.053,-21.499,-20.916,-20.343,-19.807,-19.277,-18.712,-18.130,-17.575,-17.040,-16.482,-15.904,-15.363,-14.878,-14.408,-13.918,
--13.435,-12.987,-12.560,-12.127,-11.689,-11.250,-10.798,-10.352,-9.964,-9.653,-9.363,-9.045,-8.740,-8.516,-8.374,-8.260,
--8.142,-7.987,-7.737,-7.368,-6.968,-6.645,-6.377,-6.047,-5.642,-5.282,-5.022,-4.752,-4.365,-3.923,-3.562,-3.303,
--3.048,-2.736,-2.404,-2.094,-1.796,-1.496,-1.216,-1.010,-.954,-1.122,-1.533,-2.108,-2.721,-3.297,-3.812,-4.204,
--4.348,-4.149,-3.659,-3.081,-2.641,-2.405,-2.226,-1.901,-1.397,-.830,-.220,.625,1.869,3.380,4.808,5.920,
-6.742,7.408,7.992,8.467,8.691,8.468,7.780,6.962,6.436,6.239,5.998,5.438,4.701,4.077,3.659,3.419,
-3.369,3.373,3.010,2.007,.740,-.073,-.213,-.165,-.421,-.927,-1.411,-1.892,-2.564,-3.374,-4.059,-4.536,
--4.966,-5.453,-5.928,-6.382,-6.996,-7.941,-9.185,-10.593,-12.095,-13.703,-15.411,-17.150,-18.792,-20.206,-21.325,-22.142,
--22.584,-22.441,-21.575,-20.183,-18.754,-17.740,-17.354,-17.645,-18.552,-19.804,-20.956,-21.703,-22.129,-22.549,-23.181,-24.022,
--24.958,-25.836,-26.475,-26.776,-26.881,-27.164,-27.988,-29.404,-31.061,-32.437,-33.297,-33.943,-34.897,-36.272,-37.599,-38.368,
--38.567,-38.486,-38.169,-37.379,-36.094,-34.740,-33.837,-33.639,-34.198,-35.498,-37.306,-39.072,-40.239,-40.613,-40.304,-39.490,
--38.522,-38.149,-39.190,-41.741,-44.887,-47.444,-48.934,-49.714,-50.264,-50.568,-50.238,-49.090,-47.458,-45.992,-45.230,-45.325,
--46.045,-46.945,-47.588,-47.759,-47.551,-47.220,-46.925,-46.640,-46.308,-45.983,-45.739,-45.532,-45.260,-44.939,-44.696,-44.589,
--44.547,-44.503,-44.481,-44.492,-44.466,-44.350,-44.191,-44.039,-43.854,-43.601,-43.366,-43.257,-43.210,-43.031,-42.640,-42.162,
--41.742,-41.366,-40.921,-40.369,-39.776,-39.196,-38.604,-37.959,-37.266,-36.549,-35.810,-35.034,-34.227,-33.415,-32.608,-31.796,
--30.996,-30.246,-29.534,-28.767,-27.900,-27.045,-26.373,-25.877,-25.360,-24.711,-24.067,-23.624,-23.357,-23.059,-22.627,-22.152,
--21.745,-21.388,-21.015,-20.616,-20.214,-19.799,-19.358,-18.902,-18.421,-17.882,-17.302,-16.759,-16.288,-15.827,-15.322,-14.812,
--14.349,-13.903,-13.415,-12.906,-12.431,-11.980,-11.500,-10.991,-10.485,-9.959,-9.366,-8.737,-8.155,-7.624,-7.058,-6.418,
--5.765,-5.157,-4.575,-3.979,-3.373,-2.772,-2.160,-1.532,-.913,-.307,.321,.976,1.609,2.191,2.764,3.368,
-3.986,4.585,5.179,5.781,6.365,6.921,7.490,8.092,8.678,9.206,9.719,10.266,10.803,11.266,11.691,12.160,
-12.660,13.099,13.450,13.774,14.098,14.366,14.551,14.698,14.843,14.976,15.127,15.372,15.725,16.098,16.427,16.755,
-17.139,17.552,17.938,18.294,18.619,18.866,19.020,19.160,19.372,19.645,19.931,20.220,20.485,20.653,20.824,21.403,
-22.757,24.689,26.469,27.512,27.889,28.070,28.303,28.474,28.477,28.496,28.787,29.313,29.744,29.854,29.803,29.936,
-30.304,30.560,30.442,30.224,30.457,31.255,32.098,32.462,32.413,32.375,32.503,32.592,32.539,32.550,32.777,33.031,
-33.036,32.791,32.491,32.208,31.860,31.425,30.999,30.628,30.257,29.864,29.509,29.229,28.991,28.799,28.725,28.767,
-28.782,28.643,28.414,28.257,28.218,28.187,28.068,27.897,27.755,27.630,27.414,27.037,26.571,26.201,26.056,26.075,
-26.062,25.882,25.589,25.327,25.157,25.003,24.782,24.511,24.155,23.954,23.817,23.706,23.588,23.424,23.162,22.790,
-22.407,22.190,22.228,22.390,22.397,22.051,21.405,20.703,20.171,19.869,19.746,19.753,19.886,20.130,20.415,20.652,
-20.792,20.851,20.885,20.943,21.035,21.142,21.266,21.426,21.603,21.719,21.701,21.566,21.395,21.233,21.054,20.815,
-20.507,20.129,19.688,19.234,18.843,18.526,18.207,17.816,17.383,16.984,16.638,16.301,15.956,15.615,15.266,14.866,
-14.408,13.947,13.544,13.228,13.004,12.847,12.670,12.386,12.026,11.716,11.489,11.184,10.634,9.891,9.188,8.673,
-8.302,7.998,7.775,7.640,7.459,7.070,6.482,5.881,5.436,5.184,5.094,5.130,5.211,5.216,5.107,4.988,
-4.950,4.930,4.814,4.635,4.540,4.541,4.467,4.213,3.913,3.748,3.663,3.431,2.957,2.395,1.935,1.592,
-1.255,.858,.441,.110,-.043,-.013,.082,.089,-.038,-.199,-.283,-.263,-.172,-.065,-.047,-.237,
--.617,-.993,-1.192,-1.248,-1.318,-1.486,-1.769,-2.232,-2.907,-3.606,-4.011,-4.022,-3.892,-3.928,-4.175,-4.468,
--4.673,-4.784,-4.878,-5.076,-5.454,-5.852,-5.863,-5.193,-4.028,-2.918,-2.296,-2.193,-2.352,-2.482,-2.394,-2.109,
--1.881,-1.974,-2.361,-2.796,-3.246,-4.025,-5.342,-6.862,-7.977,-8.454,-8.590,-8.754,-9.002,-9.216,-9.385,-9.573,
--9.757,-9.904,-10.150,-10.736,-11.710,-12.830,-13.801,-14.521,-15.072,-15.542,-15.968,-16.380,-16.827,-17.318,-17.825,-18.353,
--18.965,-19.673,-20.364,-20.904,-21.311,-21.745,-22.306,-22.911,-23.435,-23.892,-24.412,-25.066,-25.809,-26.586,-27.356,-28.023,
--28.455,-28.674,-28.937,-29.513,-30.413,-31.437,-32.434,-33.402,-34.328,-35.106,-35.693,-36.225,-36.869,-37.646,-38.491,-39.434,
--40.523,-41.596,-42.322,-42.582,-42.681,-43.015,-43.620,-44.219,-44.660,-45.091,-45.633,-46.126,-46.402,-46.691,-47.489,-48.957,
--50.635,-51.891,-52.547,-52.973,-53.604,-54.508,-55.444,-56.207,-56.849,-57.573,-58.490,-59.497,-60.390,-61.069,-61.630,-62.253,
--63.030,-63.925,-64.857,-65.766,-66.622,-67.420,-68.188,-68.968,-69.774,-70.578,-71.364,-72.159,-72.989,-73.827,-74.625,-75.378,
--76.135,-76.935,-77.757,-78.552,-79.290,-79.992,-80.695,-81.418,-82.157,-82.891,-83.597,-84.271,-84.945,-85.675,-86.467,-87.239,
--87.879,-88.360,-88.725,-88.966,-89.004,-88.854,-88.751,-88.988,-89.614,-90.382,-91.022,-91.490,-91.923,-92.408,-92.866,-93.090,
--92.884,-92.253,-91.502,-91.061,-91.086,-91.267,-91.150,-90.621,-89.960,-89.453,-89.124,-88.906,-88.890,-89.247,-89.946,-90.679,
--91.113,-91.162,-91.019,-90.943,-91.033,-91.212,-91.456,-91.972,-93.008,-94.459,-95.791,-96.479,-96.467,-96.100,-95.679,-95.222,
--94.624,-93.879,-93.068,-92.278,-91.575,-90.987,-90.431,-89.742,-88.876,-88.006,-87.356,-86.957,-86.623,-86.136,-85.392,-84.403,
--83.259,-82.076,-80.935,-79.830,-78.702,-77.516,-76.268,-74.963,-73.611,-72.253,-70.949,-69.733,-68.605,-67.527,-66.436,-65.310,
--64.251,-63.445,-63.005,-62.920,-63.154,-63.618,-63.950,-63.593,-62.413,-61.136,-60.738,-61.281,-61.683,-60.849,-58.761,-56.252,
--53.989,-52.093,-50.563,-49.520,-48.914,-48.398,-47.713,-46.928,-46.104,-44.967,-43.238,-41.135,-39.257,-37.971,-37.160,-36.543,
--35.970,-35.349,-34.537,-33.481,-32.348,-31.368,-30.611,-30.001,-29.490,-29.069,-28.657,-28.103,-27.343,-26.467,-25.598,-24.743,
--23.817,-22.783,-21.720,-20.747,-19.907,-19.151,-18.430,-17.776,-17.232,-16.729,-16.086,-15.178,-14.073,-12.952,-11.929,-10.958,
--9.935,-8.814,-7.619,-6.380,-5.101,-3.757,-2.283,-.612,1.192,2.822,3.868,4.200,4.184,4.370,4.938,5.577,
-5.960,6.193,6.661,7.536,8.640,9.769,10.931,12.183,13.435,14.543,15.513,16.476,17.514,18.630,19.822,21.085,
-22.342,23.514,24.624,25.742,26.834,27.789,28.617,29.514,30.672,32.092,33.592,34.942,35.967,36.629,37.069,37.536,
-38.218,39.154,40.308,41.647,43.140,44.732,46.337,47.804,48.928,49.610,50.032,50.516,51.156,51.712,51.980,52.122,
-52.480,53.156,53.942,54.610,55.139,55.670,56.387,57.366,58.447,59.326,59.893,60.293,60.343,59.137,55.862,51.212,
-47.427,46.409,47.974,50.342,52.089,53.135,53.978,54.717,55.140,55.270,55.343,55.419,55.374,55.200,55.030,54.900,
-54.732,54.536,54.417,54.381,54.318,54.192,54.081,54.000,53.869,53.686,53.583,53.650,53.810,53.937,53.972,53.917,
-53.846,53.945,54.358,54.941,55.340,55.415,55.399,55.528,55.709,55.750,55.721,55.813,55.974,55.978,55.848,55.864,
-56.081,56.134,55.677,54.825,54.030,53.618,53.537,53.419,52.845,51.684,50.265,49.055,48.140,47.252,46.374,45.967,
-46.371,47.255,48.005,48.368,48.303,47.403,45.135,41.721,38.267,35.800,34.580,34.474,35.438,37.237,39.153,40.579,
-41.714,43.149,44.864,46.201,46.808,47.037,47.264,47.357,47.108,46.750,46.620,46.608,46.347,45.815,45.325,44.985,
-44.558,43.914,43.268,42.851,42.601,42.332,42.016,41.717,41.395,40.962,40.469,40.063,39.775,39.488,39.156,38.895,
-38.818,38.832,38.715,38.343,37.766,37.088,36.428,36.013,36.089,36.523,36.654,35.887,34.486,33.411,33.233,33.507,
-33.493,33.140,32.929,32.983,32.927,32.622,32.366,32.179,31.551,30.327,29.310,29.342,30.117,30.612,30.545,30.571,
-30.952,30.919,29.851,28.404,27.742,27.991,28.201,27.785,27.292,27.535,28.505,29.441,29.651,28.984,27.759,26.563,
-25.948,26.004,26.238,26.097,25.515,24.793,24.096,23.424,22.997,23.179,23.817,24.074,23.307,21.949,21.110,21.310,
-21.942,22.085,21.519,20.730,20.193,19.935,19.751,19.509,19.180,18.782,18.420,18.238,18.226,18.161,17.858,17.406,
-17.025,16.760,16.459,16.032,15.571,15.192,14.889,14.620,14.427,14.357,14.343,14.248,14.037,13.793,13.592,13.425,
-13.253,13.072,12.886,12.669,12.380,12.006,11.567,11.134,10.808,10.661,10.641,10.597,10.446,10.284,10.299,10.565,
-10.955,11.268,11.405,11.398,11.313,11.180,11.025,10.909,10.891,10.941,10.946,10.840,10.683,10.585,10.566,10.540,
-10.461,10.431,10.604,10.982,11.337,11.404,11.142,10.798,10.651,10.719,10.767,10.612,10.356,10.249,10.377,10.594,
-10.765,10.937,11.192,11.450,11.546,11.485,11.457,11.596,11.831,12.027,12.165,12.285,12.348,12.291,12.189,12.209,
-12.370,12.477,12.357,12.082,11.845,11.695,11.506,11.211,10.910,10.712,10.578,10.419,10.254,10.161,10.111,9.977,
-9.732,9.505,9.393,9.308,9.100,8.759,8.411,8.143,7.946,7.801,7.721,7.668,7.531,7.240,6.853,6.477,
-6.146,5.837,5.560,5.362,5.249,5.156,5.021,4.838,4.634,4.421,4.191,3.938,3.664,3.381,3.105,2.849,
-2.604,2.350,2.082,1.807,1.524,1.229,.932,.654,.394,.120,-.189,-.517,-.821,-1.072,-1.262,-1.405,
--1.534,-1.686,-1.887,-2.133,-2.405,-2.672,-2.899,-3.067,-3.210,-3.401,-3.682,-4.013,-4.313,-4.545,-4.750,-4.989,
--5.282,-5.598,-5.893,-6.150,-6.391,-6.649,-6.933,-7.225,-7.512,-7.799,-8.089,-8.368,-8.632,-8.913,-9.253,-9.653,
--10.087,-10.539,-11.015,-11.497,-11.941,-12.328,-12.687,-13.058,-13.452,-13.871,-14.326,-14.830,-15.364,-15.905,-16.451,-16.996,
--17.505,-17.939,-18.332,-18.770,-19.298,-19.868,-20.405,-20.889,-21.350,-21.807,-22.246,-22.656,-23.064,-23.500,-23.966,-24.440,
--24.904,-25.356,-25.804,-26.249,-26.697,-27.158,-27.641,-28.144,-28.658,-29.181,-29.712,-30.228,-30.694,-31.096,-31.467,-31.854,
--32.274,-32.705,-33.122,-33.522,-33.914,-34.303,-34.695,-35.091,-35.479,-35.851,-36.217,-36.607,-37.020,-37.410,-37.727,-37.979,
--38.220,-38.492,-38.790,-39.084,-39.349,-39.588,-39.824,-40.074,-40.334,-40.574,-40.778,-40.957,-41.130,-41.292,-41.422,-41.529,
--41.638,-41.753,-41.853,-41.929,-42.004,-42.092,-42.168,-42.204,-42.201,-42.183,-42.164,-42.152,-42.157,-42.173,-42.147,-42.025,
--41.818,-41.592,-41.394,-41.224,-41.069,-40.931,-40.791,-40.592,-40.303,-39.972,-39.681,-39.441,-39.181,-38.837,-38.436,-38.059,
--37.746,-37.463,-37.157,-36.809,-36.429,-36.016,-35.556,-35.064,-34.585,-34.158,-33.766,-33.349,-32.868,-32.335,-31.797,-31.296,
--30.840,-30.405,-29.954,-29.467,-28.957,-28.455,-27.973,-27.486,-26.965,-26.418,-25.882,-25.368,-24.832,-24.228,-23.578,-22.969,
--22.455,-21.985,-21.467,-20.878,-20.282,-19.734,-19.214,-18.676,-18.114,-17.554,-17.004,-16.456,-15.920,-15.410,-14.909,-14.395,
--13.886,-13.422,-12.997,-12.568,-12.124,-11.689,-11.264,-10.831,-10.407,-10.049,-9.763,-9.489,-9.195,-8.932,-8.746,-8.607,
--8.458,-8.284,-8.072,-7.767,-7.363,-6.973,-6.699,-6.468,-6.128,-5.671,-5.245,-4.930,-4.646,-4.307,-3.957,-3.651,
--3.342,-2.955,-2.521,-2.131,-1.812,-1.527,-1.260,-1.010,-.733,-.399,-.084,.059,-.069,-.456,-1.026,-1.681,
--2.309,-2.816,-3.165,-3.370,-3.456,-3.450,-3.342,-3.040,-2.449,-1.677,-1.033,-.666,-.253,.732,2.401,4.251,
-5.671,6.513,7.108,7.800,8.558,9.017,8.846,8.117,7.289,6.767,6.505,6.148,5.521,4.775,4.082,3.475,
-3.070,3.097,3.435,3.426,2.554,1.194,.262,.138,.311,.154,-.379,-1.001,-1.633,-2.368,-3.134,-3.742,
--4.189,-4.619,-5.063,-5.461,-5.925,-6.695,-7.810,-9.051,-10.265,-11.573,-13.134,-14.864,-16.480,-17.757,-18.686,-19.425,
--20.105,-20.603,-20.543,-19.653,-18.161,-16.681,-15.710,-15.360,-15.614,-16.555,-18.163,-20.023,-21.502,-22.251,-22.423,-22.451,
--22.703,-23.291,-24.033,-24.557,-24.595,-24.272,-24.084,-24.529,-25.702,-27.208,-28.455,-29.140,-29.506,-30.096,-31.186,-32.563,
--33.884,-35.053,-36.041,-36.491,-35.898,-34.308,-32.575,-31.719,-32.125,-33.446,-35.109,-36.694,-37.926,-38.614,-38.717,-38.410,
--38.030,-38.017,-38.798,-40.552,-42.985,-45.445,-47.364,-48.608,-49.391,-49.930,-50.190,-49.946,-49.045,-47.653,-46.264,-45.436,
--45.443,-46.123,-47.028,-47.724,-48.004,-47.914,-47.634,-47.304,-46.971,-46.647,-46.371,-46.160,-45.952,-45.672,-45.351,-45.090,
--44.930,-44.824,-44.740,-44.705,-44.709,-44.673,-44.546,-44.371,-44.197,-43.993,-43.732,-43.488,-43.356,-43.297,-43.157,-42.864,
--42.499,-42.167,-41.860,-41.490,-41.012,-40.447,-39.825,-39.149,-38.420,-37.653,-36.863,-36.057,-35.243,-34.445,-33.666,-32.870,
--32.030,-31.196,-30.456,-29.789,-29.042,-28.123,-27.178,-26.445,-25.942,-25.432,-24.768,-24.104,-23.678,-23.461,-23.207,-22.773,
--22.247,-21.760,-21.321,-20.888,-20.464,-20.062,-19.666,-19.265,-18.871,-18.456,-17.950,-17.355,-16.774,-16.275,-15.806,-15.298,
--14.779,-14.304,-13.848,-13.357,-12.841,-12.346,-11.867,-11.371,-10.870,-10.380,-9.852,-9.239,-8.597,-8.032,-7.540,-7.010,
--6.394,-5.757,-5.164,-4.601,-4.035,-3.469,-2.897,-2.293,-1.671,-1.073,-.496,.116,.763,1.375,1.931,2.503,
-3.140,3.786,4.380,4.951,5.549,6.142,6.685,7.210,7.771,8.347,8.876,9.370,9.885,10.414,10.908,11.371,
-11.849,12.340,12.790,13.191,13.575,13.929,14.202,14.394,14.568,14.751,14.922,15.095,15.326,15.618,15.910,16.180,
-16.485,16.846,17.221,17.590,17.976,18.339,18.573,18.678,18.811,19.079,19.406,19.700,20.003,20.350,20.628,20.816,
-21.272,22.456,24.306,26.134,27.278,27.706,27.854,28.034,28.217,28.323,28.456,28.774,29.243,29.650,29.859,29.978,
-30.187,30.456,30.540,30.369,30.297,30.765,31.722,32.608,33.011,33.097,33.236,33.428,33.382,33.072,32.836,32.886,
-33.016,32.932,32.641,32.341,32.078,31.747,31.331,30.929,30.570,30.182,29.752,29.377,29.113,28.914,28.765,28.731,
-28.829,28.930,28.899,28.754,28.605,28.487,28.333,28.103,27.856,27.655,27.472,27.202,26.792,26.333,26.016,25.958,
-26.059,26.075,25.857,25.484,25.136,24.885,24.665,24.412,24.155,23.814,23.641,23.511,23.401,23.309,23.182,22.920,
-22.507,22.125,22.022,22.241,22.512,22.486,22.037,21.337,20.649,20.112,19.751,19.597,19.706,20.053,20.484,20.832,
-21.046,21.180,21.285,21.349,21.349,21.300,21.262,21.291,21.396,21.526,21.608,21.620,21.604,21.592,21.549,21.418,
-21.179,20.846,20.418,19.912,19.417,19.025,18.712,18.357,17.914,17.476,17.135,16.856,16.547,16.189,15.809,15.397,
-14.924,14.428,13.979,13.583,13.199,12.854,12.609,12.429,12.190,11.868,11.576,11.358,11.050,10.475,9.721,9.065,
-8.641,8.325,7.967,7.599,7.317,7.073,6.711,6.185,5.634,5.219,4.979,4.858,4.798,4.755,4.680,4.557,
-4.435,4.355,4.279,4.153,4.005,3.904,3.822,3.644,3.359,3.125,3.059,3.026,2.776,2.262,1.701,1.293,
-.987,.593,.047,-.507,-.868,-.947,-.828,-.700,-.719,-.879,-1.027,-1.013,-.822,-.549,-.327,-.291,
--.517,-.924,-1.292,-1.474,-1.547,-1.675,-1.893,-2.153,-2.508,-3.065,-3.725,-4.175,-4.233,-4.083,-4.046,-4.220,
--4.449,-4.579,-4.627,-4.713,-4.946,-5.323,-5.665,-5.687,-5.236,-4.465,-3.702,-3.180,-2.952,-2.982,-3.156,-3.252,
--3.119,-2.909,-2.955,-3.357,-3.888,-4.386,-5.040,-6.087,-7.355,-8.373,-8.895,-9.101,-9.271,-9.468,-9.637,-9.788,
--9.957,-10.097,-10.200,-10.465,-11.168,-12.320,-13.585,-14.596,-15.272,-15.776,-16.263,-16.751,-17.213,-17.670,-18.156,-18.660,
--19.164,-19.709,-20.330,-20.970,-21.535,-22.041,-22.618,-23.317,-24.007,-24.542,-24.967,-25.447,-26.037,-26.647,-27.219,-27.786,
--28.328,-28.709,-28.891,-29.082,-29.570,-30.443,-31.586,-32.890,-34.282,-35.578,-36.515,-37.032,-37.414,-38.056,-39.128,-40.536,
--42.066,-43.441,-44.319,-44.494,-44.146,-43.768,-43.736,-44.047,-44.506,-45.024,-45.603,-46.139,-46.506,-46.840,-47.533,-48.790,
--50.294,-51.480,-52.109,-52.454,-52.943,-53.735,-54.684,-55.589,-56.380,-57.114,-57.894,-58.779,-59.726,-60.611,-61.333,-61.934,
--62.566,-63.347,-64.259,-65.197,-66.083,-66.917,-67.733,-68.545,-69.341,-70.115,-70.893,-71.707,-72.557,-73.413,-74.244,-75.048,
--75.830,-76.597,-77.361,-78.138,-78.925,-79.687,-80.404,-81.101,-81.817,-82.556,-83.288,-83.992,-84.684,-85.398,-86.159,-86.954,
--87.707,-88.325,-88.781,-89.123,-89.362,-89.433,-89.334,-89.270,-89.515,-90.115,-90.830,-91.416,-91.870,-92.335,-92.865,-93.359,
--93.656,-93.612,-93.162,-92.458,-91.885,-91.787,-92.120,-92.451,-92.353,-91.739,-90.834,-89.969,-89.455,-89.506,-90.111,-90.976,
--91.681,-91.945,-91.774,-91.407,-91.123,-91.063,-91.193,-91.487,-92.110,-93.280,-94.872,-96.317,-97.055,-97.048,-96.701,-96.334,
--95.905,-95.257,-94.417,-93.554,-92.790,-92.148,-91.596,-91.034,-90.315,-89.395,-88.451,-87.723,-87.258,-86.869,-86.327,-85.523,
--84.479,-83.301,-82.120,-81.007,-79.921,-78.773,-77.537,-76.263,-74.978,-73.659,-72.304,-70.970,-69.721,-68.567,-67.467,-66.361,
--65.237,-64.190,-63.405,-63.026,-63.063,-63.407,-63.829,-63.933,-63.326,-62.113,-61.078,-60.984,-61.592,-61.710,-60.426,-58.038,
--55.554,-53.563,-51.967,-50.603,-49.575,-48.896,-48.275,-47.482,-46.608,-45.722,-44.545,-42.790,-40.684,-38.825,-37.566,-36.786,
--36.213,-35.669,-34.991,-34.023,-32.832,-31.732,-30.938,-30.339,-29.733,-29.122,-28.620,-28.178,-27.604,-26.833,-25.995,-25.194,
--24.377,-23.459,-22.471,-21.494,-20.535,-19.543,-18.539,-17.639,-16.947,-16.443,-15.975,-15.354,-14.484,-13.428,-12.341,-11.324,
--10.341,-9.293,-8.143,-6.949,-5.777,-4.618,-3.387,-1.985,-.372,1.337,2.852,3.861,4.310,4.510,4.866,5.482,
-6.115,6.553,6.913,7.490,8.388,9.457,10.546,11.659,12.840,14.028,15.131,16.146,17.158,18.249,19.441,20.699,
-21.942,23.129,24.323,25.594,26.827,27.779,28.421,29.112,30.270,31.940,33.798,35.505,36.888,37.834,38.272,38.344,
-38.426,38.863,39.753,41.029,42.608,44.383,46.159,47.716,48.922,49.753,50.313,50.813,51.419,52.036,52.417,52.550,
-52.771,53.376,54.263,55.141,55.906,56.618,57.277,57.892,58.647,59.670,60.726,61.499,62.049,62.431,61.849,59.013,
-53.928,48.808,46.400,47.393,50.036,52.245,53.448,54.244,55.039,55.645,55.881,55.909,55.926,55.914,55.802,55.624,
-55.436,55.251,55.098,55.024,54.990,54.902,54.756,54.629,54.530,54.393,54.219,54.110,54.118,54.193,54.283,54.374,
-54.422,54.417,54.506,54.869,55.418,55.821,55.919,55.914,56.010,56.119,56.098,56.066,56.190,56.328,56.228,56.037,
-56.164,56.585,56.651,55.817,54.364,53.167,52.834,53.205,53.558,53.201,51.975,50.297,48.634,46.962,44.961,42.781,
-41.241,40.991,41.767,42.767,43.475,43.697,43.045,41.151,38.480,36.333,35.705,36.500,38.055,39.947,41.913,43.459,
-44.220,44.562,45.229,46.356,47.324,47.630,47.454,47.212,47.015,46.821,46.734,46.797,46.735,46.281,45.613,45.124,
-44.850,44.466,43.839,43.244,42.933,42.791,42.562,42.212,41.857,41.492,41.019,40.484,40.084,39.892,39.743,39.480,
-39.187,39.051,39.058,38.977,38.651,38.133,37.510,36.815,36.252,36.252,36.925,37.566,37.211,35.800,34.368,33.804,
-33.840,33.658,33.110,32.727,32.712,32.677,32.425,32.260,32.213,31.715,30.548,29.565,29.709,30.681,31.403,31.603,
-31.990,32.736,32.819,31.452,29.441,28.304,28.383,28.647,28.277,27.666,27.702,28.622,29.863,30.626,30.338,28.967,
-27.237,26.253,26.519,27.415,27.923,27.683,27.032,26.241,25.252,24.178,23.476,23.324,23.251,22.763,22.083,21.834,
-22.103,22.291,21.944,21.316,20.918,20.819,20.706,20.422,20.098,19.817,19.476,19.039,18.674,18.509,18.406,18.153,
-17.744,17.347,17.041,16.748,16.397,16.017,15.659,15.324,15.031,14.834,14.746,14.684,14.555,14.357,14.149,13.968,
-13.803,13.639,13.463,13.258,13.007,12.709,12.367,11.986,11.597,11.255,10.987,10.770,10.574,10.429,10.403,10.522,
-10.747,11.007,11.235,11.370,11.375,11.267,11.110,10.968,10.883,10.879,10.957,11.069,11.133,11.097,10.972,10.797,
-10.612,10.473,10.479,10.702,11.066,11.336,11.290,10.951,10.598,10.506,10.654,10.757,10.601,10.286,10.094,10.166,
-10.403,10.669,10.940,11.223,11.428,11.466,11.408,11.435,11.622,11.875,12.097,12.311,12.541,12.696,12.682,12.592,
-12.642,12.881,13.081,12.991,12.621,12.195,11.867,11.601,11.335,11.119,11.006,10.921,10.743,10.489,10.290,10.185,
-10.065,9.871,9.713,9.711,9.779,9.709,9.413,8.991,8.578,8.225,7.961,7.832,7.822,7.798,7.627,7.311,
-6.949,6.603,6.271,5.960,5.710,5.538,5.408,5.273,5.114,4.930,4.724,4.506,4.276,4.016,3.715,3.411,
-3.156,2.952,2.742,2.485,2.194,1.893,1.578,1.241,.911,.622,.364,.093,-.215,-.539,-.834,-1.067,
--1.228,-1.344,-1.467,-1.642,-1.878,-2.147,-2.408,-2.626,-2.793,-2.948,-3.149,-3.421,-3.727,-4.008,-4.247,-4.482,
--4.750,-5.054,-5.367,-5.667,-5.947,-6.218,-6.491,-6.765,-7.029,-7.283,-7.544,-7.813,-8.070,-8.311,-8.577,-8.912,
--9.314,-9.746,-10.189,-10.654,-11.133,-11.591,-12.010,-12.413,-12.823,-13.236,-13.649,-14.089,-14.584,-15.118,-15.662,-16.210,
--16.760,-17.275,-17.711,-18.092,-18.505,-19.001,-19.548,-20.082,-20.589,-21.092,-21.595,-22.071,-22.502,-22.908,-23.319,-23.750,
--24.203,-24.672,-25.143,-25.597,-26.025,-26.438,-26.862,-27.316,-27.809,-28.333,-28.870,-29.395,-29.880,-30.304,-30.671,-31.023,
--31.413,-31.860,-32.330,-32.776,-33.184,-33.573,-33.970,-34.378,-34.782,-35.166,-35.528,-35.886,-36.258,-36.639,-36.998,-37.302,
--37.557,-37.804,-38.083,-38.396,-38.710,-38.992,-39.240,-39.485,-39.754,-40.031,-40.273,-40.461,-40.618,-40.774,-40.930,-41.075,
--41.208,-41.337,-41.449,-41.531,-41.599,-41.683,-41.775,-41.834,-41.849,-41.853,-41.869,-41.887,-41.887,-41.879,-41.871,-41.833,
--41.730,-41.572,-41.394,-41.211,-41.017,-40.828,-40.666,-40.510,-40.300,-40.008,-39.683,-39.398,-39.161,-38.923,-38.631,-38.282,
--37.914,-37.563,-37.238,-36.918,-36.577,-36.210,-35.808,-35.349,-34.833,-34.317,-33.876,-33.514,-33.142,-32.676,-32.130,-31.583,
--31.083,-30.616,-30.162,-29.710,-29.241,-28.729,-28.179,-27.637,-27.131,-26.648,-26.167,-25.700,-25.252,-24.766,-24.180,-23.521,
--22.901,-22.393,-21.942,-21.438,-20.849,-20.241,-19.681,-19.166,-18.657,-18.129,-17.582,-17.024,-16.476,-15.959,-15.464,-14.956,
--14.428,-13.921,-13.463,-13.018,-12.544,-12.071,-11.658,-11.302,-10.949,-10.584,-10.248,-9.955,-9.671,-9.390,-9.160,-8.992,
--8.818,-8.584,-8.320,-8.054,-7.750,-7.387,-7.035,-6.757,-6.486,-6.108,-5.646,-5.222,-4.880,-4.555,-4.222,-3.936,
--3.690,-3.377,-2.943,-2.471,-2.051,-1.667,-1.290,-.976,-.778,-.611,-.339,.043,.404,.623,.665,.553,
-.325,.022,-.370,-.911,-1.606,-2.333,-2.947,-3.354,-3.431,-3.029,-2.211,-1.397,-.968,-.727,.002,1.586,
-3.593,5.246,6.230,6.892,7.680,8.581,9.158,9.057,8.389,7.610,7.040,6.589,6.005,5.263,4.531,3.841,
-3.102,2.478,2.368,2.774,3.024,2.482,1.386,.569,.418,.518,.341,-.156,-.756,-1.413,-2.164,-2.894,
--3.461,-3.928,-4.410,-4.865,-5.258,-5.808,-6.765,-8.010,-9.171,-10.144,-11.206,-12.568,-14.030,-15.197,-15.856,-16.114,
--16.283,-16.662,-17.246,-17.605,-17.269,-16.297,-15.290,-14.748,-14.662,-14.878,-15.578,-17.053,-19.093,-20.937,-21.919,-22.012,
--21.704,-21.527,-21.718,-22.164,-22.529,-22.537,-22.261,-22.120,-22.542,-23.596,-24.920,-25.986,-26.478,-26.518,-26.571,-27.069,
--28.134,-29.652,-31.438,-33.157,-34.178,-33.890,-32.384,-30.660,-29.906,-30.543,-32.055,-33.657,-34.938,-35.878,-36.524,-36.878,
--37.068,-37.430,-38.316,-39.786,-41.565,-43.309,-44.879,-46.324,-47.641,-48.684,-49.299,-49.464,-49.191,-48.446,-47.286,-46.075,
--45.358,-45.458,-46.219,-47.165,-47.866,-48.153,-48.093,-47.848,-47.556,-47.269,-46.986,-46.715,-46.472,-46.243,-45.992,-45.722,
--45.487,-45.321,-45.207,-45.123,-45.073,-45.041,-44.971,-44.827,-44.635,-44.432,-44.209,-43.954,-43.704,-43.508,-43.351,-43.171,
--42.940,-42.686,-42.435,-42.163,-41.834,-41.427,-40.941,-40.376,-39.731,-39.016,-38.248,-37.442,-36.618,-35.806,-35.027,-34.260,
--33.439,-32.531,-31.610,-30.803,-30.109,-29.346,-28.384,-27.367,-26.576,-26.057,-25.558,-24.898,-24.224,-23.786,-23.563,-23.297,
--22.836,-22.264,-21.708,-21.186,-20.679,-20.218,-19.816,-19.425,-19.019,-18.633,-18.260,-17.822,-17.287,-16.733,-16.234,-15.751,
--15.225,-14.684,-14.185,-13.713,-13.214,-12.692,-12.181,-11.676,-11.156,-10.648,-10.166,-9.645,-9.038,-8.416,-7.891,-7.442,
--6.942,-6.341,-5.712,-5.122,-4.559,-4.004,-3.466,-2.929,-2.346,-1.729,-1.143,-.593,-.014,.602,1.185,1.716,
-2.283,2.932,3.577,4.140,4.678,5.275,5.895,6.445,6.932,7.446,8.004,8.544,9.038,9.533,10.051,10.563,
-11.053,11.539,12.024,12.487,12.932,13.365,13.753,14.058,14.305,14.551,14.795,14.996,15.161,15.337,15.530,15.713,
-15.912,16.181,16.500,16.805,17.113,17.489,17.879,18.138,18.265,18.443,18.766,19.117,19.397,19.711,20.137,20.522,
-20.762,21.178,22.277,24.070,25.911,27.125,27.623,27.791,27.957,28.161,28.345,28.538,28.809,29.161,29.535,29.882,
-30.205,30.502,30.698,30.702,30.612,30.779,31.482,32.525,33.366,33.708,33.791,33.949,34.095,33.915,33.420,32.999,
-32.882,32.875,32.709,32.406,32.141,31.926,31.641,31.271,30.907,30.559,30.148,29.678,29.265,28.982,28.799,28.711,
-28.776,28.979,29.173,29.211,29.092,28.903,28.681,28.412,28.110,27.825,27.575,27.309,26.964,26.542,26.145,25.914,
-25.906,25.994,25.958,25.689,25.282,24.903,24.604,24.329,24.053,23.814,23.579,23.420,23.274,23.136,23.025,22.879,
-22.585,22.166,21.865,21.936,22.325,22.668,22.616,22.147,21.500,20.882,20.331,19.862,19.620,19.762,20.238,20.782,
-21.163,21.371,21.524,21.672,21.747,21.692,21.553,21.438,21.422,21.498,21.594,21.641,21.644,21.664,21.718,21.741,
-21.643,21.403,21.045,20.584,20.061,19.570,19.186,18.853,18.454,17.988,17.583,17.297,17.027,16.669,16.250,15.839,
-15.410,14.918,14.420,14.007,13.641,13.217,12.761,12.414,12.211,12.015,11.732,11.431,11.171,10.828,10.263,9.569,
-8.994,8.623,8.290,7.841,7.340,6.942,6.652,6.325,5.875,5.385,4.992,4.741,4.573,4.419,4.259,4.105,
-3.975,3.877,3.794,3.690,3.546,3.392,3.260,3.125,2.935,2.713,2.569,2.526,2.419,2.052,1.460,.899,
-.542,.277,-.132,-.739,-1.356,-1.749,-1.839,-1.731,-1.609,-1.612,-1.723,-1.788,-1.662,-1.351,-.994,-.755,
--.734,-.948,-1.300,-1.622,-1.820,-1.972,-2.207,-2.517,-2.799,-3.063,-3.433,-3.905,-4.268,-4.362,-4.297,-4.295,
--4.398,-4.470,-4.439,-4.418,-4.556,-4.879,-5.277,-5.568,-5.592,-5.300,-4.794,-4.228,-3.715,-3.366,-3.334,-3.661,
--4.116,-4.366,-4.352,-4.337,-4.538,-4.891,-5.273,-5.781,-6.589,-7.604,-8.502,-9.084,-9.437,-9.721,-9.961,-10.130,
--10.271,-10.416,-10.510,-10.552,-10.764,-11.442,-12.610,-13.918,-14.968,-15.675,-16.239,-16.846,-17.483,-18.051,-18.546,-19.040,
--19.556,-20.054,-20.535,-21.054,-21.625,-22.204,-22.790,-23.458,-24.220,-24.944,-25.513,-25.998,-26.541,-27.106,-27.509,-27.696,
--27.842,-28.100,-28.426,-28.741,-29.150,-29.854,-30.923,-32.291,-33.892,-35.625,-37.213,-38.321,-38.903,-39.324,-40.038,-41.225,
--42.748,-44.313,-45.570,-46.197,-46.109,-45.580,-45.033,-44.718,-44.680,-44.949,-45.529,-46.207,-46.639,-46.817,-47.255,-48.441,
--50.145,-51.538,-52.071,-52.038,-52.174,-52.859,-53.892,-54.910,-55.796,-56.628,-57.454,-58.264,-59.083,-59.957,-60.853,-61.659,
--62.331,-62.970,-63.721,-64.611,-65.544,-66.420,-67.236,-68.054,-68.892,-69.707,-70.476,-71.250,-72.091,-72.978,-73.839,-74.643,
--75.433,-76.236,-77.022,-77.769,-78.507,-79.268,-80.029,-80.756,-81.474,-82.227,-83.004,-83.744,-84.428,-85.107,-85.834,-86.613,
--87.401,-88.129,-88.728,-89.175,-89.504,-89.728,-89.809,-89.766,-89.781,-90.068,-90.618,-91.196,-91.644,-92.066,-92.621,-93.268,
--93.815,-94.143,-94.225,-94.001,-93.456,-92.828,-92.548,-92.816,-93.320,-93.475,-92.937,-91.875,-90.822,-90.308,-90.548,-91.341,
--92.219,-92.757,-92.781,-92.384,-91.819,-91.377,-91.224,-91.327,-91.607,-92.201,-93.383,-95.108,-96.787,-97.730,-97.792,-97.396,
--96.954,-96.471,-95.780,-94.902,-94.035,-93.300,-92.668,-92.076,-91.451,-90.694,-89.768,-88.813,-88.052,-87.548,-87.137,-86.580,
--85.743,-84.640,-83.398,-82.177,-81.053,-79.962,-78.795,-77.550,-76.296,-75.039,-73.707,-72.287,-70.883,-69.596,-68.429,-67.323,
--66.238,-65.174,-64.187,-63.426,-63.070,-63.183,-63.605,-63.978,-63.875,-63.080,-61.907,-61.149,-61.339,-61.985,-61.835,-60.146,
--57.472,-54.989,-53.250,-51.963,-50.762,-49.689,-48.847,-48.065,-47.162,-46.210,-45.257,-44.035,-42.282,-40.224,-38.412,-37.152,
--36.324,-35.704,-35.138,-34.425,-33.387,-32.153,-31.123,-30.492,-30.021,-29.417,-28.722,-28.143,-27.657,-27.051,-26.280,-25.502,
--24.787,-24.007,-23.074,-22.089,-21.161,-20.222,-19.157,-18.031,-17.052,-16.339,-15.812,-15.297,-14.659,-13.840,-12.864,-11.816,
--10.780,-9.761,-8.695,-7.550,-6.369,-5.208,-4.065,-2.877,-1.586,-.177,1.285,2.640,3.697,4.394,4.886,5.403,
-6.025,6.650,7.195,7.752,8.469,9.372,10.367,11.389,12.453,13.566,14.684,15.771,16.843,17.934,19.071,20.262,
-21.479,22.676,23.893,25.261,26.774,28.097,28.849,29.170,29.755,31.162,33.210,35.251,36.874,38.094,38.965,39.388,
-39.399,39.364,39.720,40.633,42.018,43.734,45.612,47.396,48.828,49.808,50.431,50.919,51.502,52.231,52.880,53.193,
-53.288,53.605,54.374,55.352,56.238,57.070,57.968,58.755,59.263,59.788,60.747,61.962,62.867,63.399,63.890,63.822,
-61.600,56.495,50.408,46.670,46.887,49.611,52.289,53.779,54.599,55.414,56.162,56.530,56.562,56.516,56.481,56.385,
-56.209,56.017,55.863,55.753,55.667,55.565,55.420,55.258,55.123,55.007,54.890,54.796,54.748,54.709,54.661,54.694,
-54.865,55.049,55.107,55.158,55.459,55.986,56.400,56.506,56.484,56.546,56.624,56.611,56.624,56.759,56.800,56.566,
-56.385,56.733,57.354,57.249,55.811,53.656,52.070,51.770,52.398,53.031,52.922,51.867,50.114,47.958,45.394,42.307,
-39.080,36.687,35.895,36.504,37.657,38.699,39.400,39.550,38.985,38.141,38.004,39.152,41.149,43.157,44.791,46.056,
-46.841,47.022,46.945,47.221,47.943,48.536,48.503,47.985,47.425,47.033,46.787,46.680,46.663,46.521,46.098,45.555,
-45.155,44.865,44.428,43.808,43.283,43.048,42.945,42.717,42.347,41.987,41.665,41.270,40.799,40.418,40.221,40.073,
-39.807,39.492,39.326,39.307,39.214,38.927,38.546,38.102,37.445,36.706,36.552,37.444,38.678,38.831,37.398,35.480,
-34.431,34.292,34.133,33.560,33.068,32.987,32.957,32.684,32.443,32.396,32.086,31.218,30.450,30.607,31.442,32.006,
-32.122,32.528,33.373,33.571,32.233,30.094,28.721,28.635,28.952,28.765,28.180,27.883,28.262,29.140,29.947,29.972,
-28.901,27.374,26.650,27.339,28.701,29.509,29.357,28.712,27.935,26.875,25.455,24.079,23.172,22.726,22.583,22.815,
-23.408,23.821,23.418,22.323,21.400,21.239,21.516,21.550,21.169,20.711,20.384,20.048,19.592,19.178,18.971,18.863,
-18.622,18.196,17.723,17.322,16.993,16.696,16.401,16.082,15.745,15.448,15.246,15.114,14.977,14.806,14.632,14.474,
-14.325,14.180,14.029,13.824,13.514,13.129,12.763,12.468,12.215,11.954,11.668,11.344,10.983,10.664,10.512,10.567,
-10.726,10.873,11.011,11.192,11.363,11.390,11.237,11.018,10.868,10.822,10.849,10.948,11.120,11.310,11.401,11.312,
-11.063,10.763,10.554,10.538,10.715,10.964,11.095,10.987,10.701,10.451,10.416,10.553,10.641,10.523,10.279,10.132,
-10.209,10.464,10.785,11.089,11.314,11.395,11.345,11.290,11.351,11.528,11.748,11.995,12.312,12.653,12.862,12.855,
-12.787,12.913,13.280,13.615,13.592,13.163,12.582,12.114,11.813,11.598,11.438,11.354,11.291,11.124,10.839,10.565,
-10.400,10.274,10.095,9.926,9.895,9.966,9.937,9.678,9.266,8.844,8.474,8.173,7.996,7.969,7.995,7.920,
-7.682,7.344,6.987,6.645,6.330,6.066,5.857,5.680,5.508,5.327,5.131,4.930,4.745,4.566,4.339,4.034,
-3.711,3.467,3.310,3.146,2.898,2.587,2.265,1.934,1.577,1.221,.911,.644,.369,.056,-.274,-.576,
--.818,-.987,-1.100,-1.210,-1.372,-1.595,-1.840,-2.065,-2.256,-2.432,-2.620,-2.843,-3.100,-3.371,-3.634,-3.899,
--4.187,-4.501,-4.816,-5.117,-5.410,-5.709,-6.009,-6.296,-6.558,-6.795,-7.028,-7.276,-7.540,-7.795,-8.036,-8.300,
--8.631,-9.027,-9.453,-9.886,-10.334,-10.796,-11.250,-11.686,-12.121,-12.563,-12.999,-13.424,-13.871,-14.367,-14.899,-15.437,
--15.973,-16.509,-17.018,-17.465,-17.871,-18.298,-18.773,-19.269,-19.756,-20.250,-20.776,-21.319,-21.833,-22.291,-22.702,-23.096,
--23.499,-23.928,-24.386,-24.858,-25.323,-25.774,-26.210,-26.636,-27.069,-27.540,-28.064,-28.609,-29.118,-29.548,-29.903,-30.226,
--30.570,-30.975,-31.445,-31.935,-32.392,-32.803,-33.198,-33.607,-34.024,-34.424,-34.796,-35.153,-35.513,-35.880,-36.241,-36.575,
--36.868,-37.123,-37.367,-37.636,-37.942,-38.264,-38.569,-38.846,-39.116,-39.397,-39.676,-39.916,-40.103,-40.254,-40.399,-40.546,
--40.699,-40.859,-41.012,-41.129,-41.206,-41.279,-41.374,-41.463,-41.498,-41.487,-41.497,-41.554,-41.615,-41.625,-41.585,-41.527,
--41.459,-41.370,-41.259,-41.130,-40.969,-40.771,-40.568,-40.389,-40.210,-39.977,-39.684,-39.380,-39.113,-38.880,-38.654,-38.402,
--38.096,-37.729,-37.339,-36.977,-36.653,-36.325,-35.957,-35.545,-35.087,-34.579,-34.058,-33.596,-33.209,-32.822,-32.361,-31.849,
--31.354,-30.885,-30.400,-29.900,-29.430,-28.983,-28.487,-27.911,-27.320,-26.793,-26.326,-25.876,-25.439,-25.032,-24.614,-24.103,
--23.492,-22.873,-22.331,-21.848,-21.344,-20.783,-20.202,-19.648,-19.130,-18.630,-18.129,-17.606,-17.057,-16.507,-15.985,-15.487,
--14.983,-14.475,-13.995,-13.545,-13.075,-12.563,-12.078,-11.696,-11.404,-11.118,-10.804,-10.490,-10.196,-9.903,-9.623,-9.396,
--9.212,-8.989,-8.683,-8.346,-8.038,-7.740,-7.416,-7.084,-6.767,-6.423,-6.018,-5.605,-5.253,-4.933,-4.573,-4.194,
--3.878,-3.607,-3.279,-2.877,-2.491,-2.149,-1.756,-1.280,-.844,-.568,-.399,-.209,.036,.292,.551,.833,
-1.114,1.338,1.473,1.456,1.179,.606,-.147,-.941,-1.730,-2.406,-2.684,-2.380,-1.754,-1.273,-.966,-.291,
-1.182,3.163,4.923,6.076,6.854,7.653,8.502,9.067,9.077,8.621,8.015,7.437,6.778,5.916,4.987,4.230,
-3.620,2.947,2.259,1.925,2.070,2.243,1.931,1.234,.674,.473,.360,.080,-.314,-.743,-1.298,-2.011,
--2.700,-3.238,-3.741,-4.304,-4.819,-5.255,-5.886,-6.935,-8.174,-9.188,-9.930,-10.716,-11.700,-12.658,-13.276,-13.379,
--12.934,-12.154,-11.614,-11.854,-12.739,-13.526,-13.738,-13.662,-13.800,-14.176,-14.561,-15.125,-16.330,-18.176,-19.956,-20.932,
--20.998,-20.589,-20.174,-19.985,-20.042,-20.224,-20.373,-20.492,-20.822,-21.618,-22.845,-24.159,-25.136,-25.541,-25.446,-25.204,
--25.267,-25.939,-27.245,-28.968,-30.698,-31.860,-31.970,-31.064,-29.865,-29.289,-29.706,-30.752,-31.859,-32.817,-33.757,-34.757,
--35.716,-36.604,-37.633,-38.997,-40.528,-41.819,-42.732,-43.623,-44.912,-46.518,-47.884,-48.559,-48.569,-48.168,-47.471,-46.509,
--45.548,-45.074,-45.372,-46.253,-47.230,-47.905,-48.160,-48.097,-47.894,-47.676,-47.456,-47.182,-46.843,-46.512,-46.255,-46.058,
--45.873,-45.698,-45.569,-45.496,-45.447,-45.392,-45.318,-45.219,-45.082,-44.897,-44.667,-44.412,-44.157,-43.914,-43.668,-43.405,
--43.138,-42.897,-42.678,-42.438,-42.141,-41.791,-41.407,-40.992,-40.535,-40.032,-39.472,-38.842,-38.142,-37.403,-36.659,-35.922,
--35.164,-34.325,-33.370,-32.369,-31.452,-30.647,-29.802,-28.787,-27.728,-26.898,-26.351,-25.834,-25.142,-24.406,-23.881,-23.568,
--23.232,-22.739,-22.163,-21.602,-21.052,-20.513,-20.049,-19.669,-19.281,-18.831,-18.383,-17.992,-17.601,-17.146,-16.658,-16.190,
--15.713,-15.182,-14.629,-14.109,-13.604,-13.070,-12.523,-12.000,-11.489,-10.966,-10.453,-9.967,-9.451,-8.860,-8.271,-7.786,
--7.371,-6.895,-6.318,-5.720,-5.153,-4.592,-4.030,-3.502,-2.994,-2.437,-1.827,-1.240,-.699,-.144,.448,1.011,
-1.527,2.080,2.713,3.332,3.857,4.363,4.958,5.603,6.171,6.647,7.132,7.674,8.220,8.724,9.214,9.719,
-10.224,10.714,11.200,11.687,12.167,12.639,13.095,13.506,13.851,14.164,14.473,14.748,14.945,15.095,15.254,15.415,
-15.556,15.715,15.945,16.202,16.415,16.636,16.967,17.363,17.667,17.863,18.108,18.465,18.808,19.079,19.416,19.879,
-20.272,20.485,20.869,21.947,23.728,25.582,26.873,27.501,27.776,27.976,28.180,28.379,28.568,28.748,28.961,29.292,
-29.775,30.320,30.771,31.023,31.084,31.136,31.494,32.342,33.444,34.277,34.554,34.496,34.440,34.368,34.034,33.457,
-32.966,32.754,32.657,32.449,32.156,31.919,31.737,31.508,31.220,30.931,30.614,30.192,29.693,29.241,28.913,28.710,
-28.658,28.806,29.096,29.349,29.422,29.316,29.097,28.801,28.453,28.112,27.821,27.543,27.207,26.793,26.364,26.021,
-25.845,25.827,25.839,25.714,25.400,25.002,24.644,24.345,24.060,23.792,23.579,23.464,23.311,23.134,22.941,22.758,
-22.544,22.227,21.887,21.770,22.036,22.519,22.826,22.714,22.287,21.804,21.370,20.904,20.404,20.086,20.177,20.633,
-21.157,21.513,21.711,21.874,22.030,22.101,22.051,21.937,21.840,21.795,21.797,21.818,21.825,21.813,21.815,21.843,
-21.835,21.705,21.428,21.039,20.576,20.083,19.633,19.271,18.938,18.551,18.133,17.786,17.505,17.158,16.693,16.224,
-15.851,15.499,15.049,14.545,14.110,13.725,13.267,12.747,12.327,12.079,11.876,11.590,11.255,10.933,10.549,10.002,
-9.364,8.820,8.414,8.006,7.496,6.969,6.564,6.282,5.988,5.584,5.116,4.701,4.406,4.198,4.006,3.797,
-3.602,3.464,3.385,3.319,3.216,3.061,2.879,2.704,2.540,2.373,2.206,2.067,1.938,1.704,1.267,.699,
-.208,-.089,-.313,-.665,-1.191,-1.746,-2.167,-2.395,-2.462,-2.448,-2.445,-2.481,-2.474,-2.311,-1.992,-1.645,
--1.409,-1.338,-1.430,-1.650,-1.926,-2.191,-2.455,-2.775,-3.135,-3.452,-3.704,-3.973,-4.286,-4.534,-4.633,-4.657,
--4.702,-4.706,-4.530,-4.223,-4.045,-4.207,-4.663,-5.183,-5.534,-5.577,-5.292,-4.778,-4.189,-3.663,-3.333,-3.370,
--3.864,-4.651,-5.357,-5.719,-5.779,-5.742,-5.749,-5.879,-6.245,-6.925,-7.804,-8.632,-9.263,-9.737,-10.129,-10.430,
--10.628,-10.777,-10.919,-11.008,-11.040,-11.208,-11.788,-12.835,-14.060,-15.106,-15.885,-16.586,-17.364,-18.147,-18.775,-19.234,
--19.656,-20.120,-20.592,-21.055,-21.577,-22.192,-22.822,-23.400,-23.969,-24.586,-25.203,-25.764,-26.341,-27.011,-27.623,-27.888,
--27.755,-27.531,-27.562,-27.929,-28.550,-29.417,-30.581,-32.004,-33.599,-35.343,-37.187,-38.881,-40.112,-40.860,-41.464,-42.276,
--43.366,-44.572,-45.690,-46.518,-46.898,-46.854,-46.608,-46.351,-46.108,-45.929,-46.046,-46.587,-47.233,-47.519,-47.554,-48.074,
--49.515,-51.276,-52.265,-52.141,-51.676,-51.841,-52.816,-54.064,-55.114,-55.976,-56.850,-57.765,-58.622,-59.424,-60.271,-61.182,
--62.043,-62.761,-63.400,-64.115,-64.976,-65.903,-66.780,-67.588,-68.397,-69.247,-70.088,-70.872,-71.646,-72.488,-73.385,-74.245,
--75.032,-75.804,-76.605,-77.399,-78.146,-78.877,-79.634,-80.402,-81.145,-81.895,-82.693,-83.499,-84.224,-84.862,-85.508,-86.244,
--87.051,-87.845,-88.553,-89.132,-89.573,-89.901,-90.123,-90.216,-90.216,-90.289,-90.599,-91.087,-91.529,-91.849,-92.235,-92.854,
--93.581,-94.157,-94.510,-94.722,-94.750,-94.421,-93.784,-93.240,-93.142,-93.364,-93.414,-92.960,-92.169,-91.540,-91.476,-92.006,
--92.819,-93.511,-93.819,-93.683,-93.189,-92.534,-91.993,-91.757,-91.782,-91.933,-92.340,-93.387,-95.179,-97.131,-98.369,-98.545,
--98.052,-97.435,-96.842,-96.139,-95.304,-94.481,-93.750,-93.060,-92.358,-91.635,-90.852,-89.965,-89.054,-88.295,-87.774,-87.368,
--86.847,-86.036,-84.904,-83.578,-82.261,-81.069,-79.946,-78.783,-77.574,-76.374,-75.138,-73.755,-72.238,-70.763,-69.457,-68.280,
--67.152,-66.083,-65.106,-64.216,-63.478,-63.091,-63.199,-63.640,-63.956,-63.698,-62.788,-61.703,-61.215,-61.678,-62.436,-62.198,
--60.279,-57.350,-54.728,-53.043,-51.912,-50.787,-49.617,-48.590,-47.683,-46.752,-45.800,-44.815,-43.555,-41.814,-39.824,-38.074,
--36.795,-35.855,-35.092,-34.437,-33.720,-32.733,-31.570,-30.616,-30.050,-29.601,-28.961,-28.207,-27.586,-27.078,-26.461,-25.700,
--24.972,-24.315,-23.545,-22.570,-21.547,-20.615,-19.684,-18.620,-17.509,-16.570,-15.877,-15.305,-14.711,-14.040,-13.272,-12.378,
--11.368,-10.305,-9.226,-8.115,-6.958,-5.790,-4.648,-3.517,-2.372,-1.211,-.041,1.155,2.370,3.520,4.496,5.276,
-5.942,6.580,7.224,7.894,8.626,9.439,10.302,11.200,12.169,13.234,14.344,15.426,16.481,17.561,18.670,19.769,
-20.853,21.967,23.164,24.520,26.106,27.777,29.097,29.718,29.927,30.543,32.089,34.214,36.138,37.499,38.494,39.321,
-39.873,40.071,40.191,40.660,41.675,43.150,44.894,46.692,48.308,49.575,50.490,51.168,51.767,52.427,53.161,53.762,
-54.017,54.060,54.323,55.023,55.949,56.883,57.911,59.061,59.954,60.316,60.580,61.407,62.672,63.628,64.118,64.722,
-65.227,63.866,59.215,52.621,47.652,46.760,49.134,52.120,54.032,55.042,55.888,56.693,57.168,57.263,57.206,57.131,
-56.997,56.791,56.598,56.483,56.399,56.265,56.069,55.881,55.755,55.665,55.556,55.458,55.438,55.453,55.375,55.216,
-55.183,55.378,55.603,55.659,55.715,56.086,56.711,57.167,57.246,57.189,57.244,57.335,57.338,57.358,57.442,57.350,
-57.007,56.909,57.500,58.212,57.755,55.625,52.863,51.024,50.684,51.229,51.764,51.762,50.997,49.365,46.917,43.856,
-40.499,37.364,35.178,34.450,34.988,36.079,37.178,38.181,39.102,39.899,40.745,42.069,44.008,46.061,47.576,48.411,
-48.852,49.069,49.044,48.930,49.039,49.381,49.552,49.237,48.590,47.963,47.473,47.029,46.611,46.292,46.069,45.845,
-45.580,45.283,44.910,44.399,43.837,43.433,43.272,43.183,42.949,42.551,42.146,41.834,41.561,41.255,40.955,40.713,
-40.475,40.166,39.862,39.708,39.655,39.484,39.156,38.874,38.652,38.149,37.324,36.943,37.776,39.258,39.720,38.321,
-36.152,34.886,34.796,34.837,34.369,33.845,33.725,33.685,33.316,32.885,32.790,32.795,32.467,32.030,32.028,32.355,
-32.400,32.143,32.255,32.872,33.036,31.920,30.065,28.798,28.667,29.045,29.116,28.712,28.167,27.851,27.961,28.347,
-28.470,27.903,27.038,26.866,27.815,29.130,29.741,29.434,28.773,28.114,27.244,25.962,24.519,23.323,22.630,22.644,
-23.495,24.757,25.384,24.637,23.006,21.760,21.572,21.939,22.033,21.671,21.213,20.869,20.511,20.074,19.722,19.568,
-19.461,19.188,18.714,18.161,17.648,17.241,16.954,16.727,16.462,16.138,15.835,15.610,15.421,15.219,15.037,14.910,
-14.795,14.633,14.451,14.276,14.037,13.650,13.176,12.790,12.570,12.432,12.262,12.014,11.679,11.272,10.905,10.735,
-10.782,10.887,10.918,10.940,11.077,11.276,11.340,11.189,10.953,10.805,10.784,10.834,10.931,11.096,11.307,11.460,
-11.442,11.232,10.934,10.700,10.624,10.672,10.739,10.742,10.675,10.578,10.498,10.459,10.447,10.421,10.372,10.352,
-10.447,10.699,11.068,11.451,11.719,11.776,11.638,11.455,11.383,11.451,11.573,11.712,11.936,12.277,12.606,12.743,
-12.683,12.651,12.890,13.389,13.842,13.901,13.501,12.926,12.516,12.345,12.232,12.032,11.795,11.620,11.472,11.269,
-11.031,10.843,10.688,10.484,10.250,10.095,10.025,9.892,9.599,9.241,8.962,8.762,8.552,8.327,8.170,8.097,
-8.015,7.834,7.558,7.243,6.929,6.637,6.379,6.155,5.949,5.750,5.551,5.345,5.146,4.980,4.835,4.636,
-4.340,4.016,3.777,3.636,3.483,3.233,2.917,2.604,2.301,1.980,1.647,1.331,1.023,.692,.345,.022,
--.255,-.490,-.680,-.819,-.941,-1.099,-1.308,-1.528,-1.719,-1.891,-2.076,-2.291,-2.527,-2.769,-3.012,-3.265,
--3.544,-3.859,-4.190,-4.506,-4.799,-5.090,-5.395,-5.705,-5.994,-6.253,-6.494,-6.737,-6.999,-7.278,-7.555,-7.820,
--8.094,-8.412,-8.788,-9.202,-9.634,-10.077,-10.524,-10.963,-11.394,-11.829,-12.273,-12.719,-13.171,-13.651,-14.170,-14.705,
--15.231,-15.746,-16.254,-16.739,-17.194,-17.643,-18.114,-18.592,-19.037,-19.452,-19.890,-20.390,-20.932,-21.463,-21.951,-22.392,
--22.802,-23.206,-23.626,-24.069,-24.524,-24.994,-25.484,-25.981,-26.449,-26.884,-27.335,-27.844,-28.378,-28.855,-29.229,-29.528,
--29.818,-30.153,-30.558,-31.022,-31.501,-31.948,-32.359,-32.767,-33.195,-33.622,-34.021,-34.389,-34.752,-35.120,-35.485,-35.831,
--36.148,-36.431,-36.683,-36.923,-37.182,-37.476,-37.796,-38.115,-38.419,-38.708,-38.988,-39.251,-39.483,-39.677,-39.842,-39.990,
--40.134,-40.289,-40.463,-40.633,-40.766,-40.859,-40.952,-41.066,-41.157,-41.173,-41.145,-41.157,-41.241,-41.331,-41.349,-41.289,
--41.195,-41.100,-41.010,-40.918,-40.810,-40.661,-40.470,-40.272,-40.088,-39.890,-39.639,-39.349,-39.069,-38.815,-38.570,-38.326,
--38.077,-37.787,-37.420,-37.014,-36.651,-36.352,-36.049,-35.680,-35.257,-34.810,-34.339,-33.844,-33.366,-32.926,-32.489,-32.026,
--31.573,-31.170,-30.765,-30.282,-29.745,-29.258,-28.841,-28.396,-27.848,-27.256,-26.715,-26.227,-25.737,-25.243,-24.798,-24.394,
--23.945,-23.396,-22.790,-22.208,-21.679,-21.176,-20.667,-20.144,-19.613,-19.085,-18.571,-18.072,-17.569,-17.043,-16.506,-15.983,
--15.478,-14.982,-14.503,-14.058,-13.632,-13.180,-12.699,-12.253,-11.903,-11.622,-11.337,-11.023,-10.712,-10.421,-10.129,-9.834,
--9.568,-9.332,-9.069,-8.747,-8.398,-8.067,-7.748,-7.421,-7.087,-6.746,-6.373,-5.973,-5.609,-5.310,-5.010,-4.638,
--4.232,-3.868,-3.530,-3.156,-2.777,-2.475,-2.221,-1.881,-1.420,-.959,-.595,-.293,-.007,.224,.381,.563,
-.860,1.214,1.524,1.779,1.994,2.101,2.029,1.805,1.440,.818,-.106,-1.046,-1.582,-1.614,-1.387,-.992,
--.140,1.416,3.399,5.184,6.392,7.147,7.772,8.389,8.861,9.017,8.849,8.483,7.983,7.261,6.268,5.198,
-4.350,3.771,3.243,2.656,2.175,1.930,1.746,1.395,.936,.563,.261,-.126,-.562,-.879,-1.121,-1.528,
--2.134,-2.713,-3.168,-3.659,-4.264,-4.819,-5.283,-5.929,-6.933,-8.029,-8.841,-9.364,-9.824,-10.290,-10.685,-10.960,
--10.870,-9.847,-7.705,-5.437,-4.632,-5.846,-8.024,-9.804,-10.893,-11.831,-12.878,-13.827,-14.689,-15.846,-17.381,-18.757,
--19.410,-19.337,-18.929,-18.484,-18.128,-17.985,-18.132,-18.492,-18.988,-19.749,-20.950,-22.471,-23.874,-24.759,-25.034,-24.898,
--24.693,-24.775,-25.371,-26.454,-27.787,-29.079,-30.074,-30.562,-30.479,-30.051,-29.711,-29.755,-30.150,-30.721,-31.461,-32.503,
--33.848,-35.287,-36.660,-38.029,-39.454,-40.721,-41.530,-41.980,-42.652,-43.999,-45.764,-47.174,-47.712,-47.505,-46.970,-46.317,
--45.575,-44.924,-44.723,-45.168,-46.063,-46.992,-47.639,-47.918,-47.914,-47.779,-47.620,-47.430,-47.133,-46.728,-46.336,-46.074,
--45.929,-45.805,-45.668,-45.568,-45.538,-45.530,-45.479,-45.387,-45.296,-45.212,-45.081,-44.857,-44.572,-44.299,-44.057,-43.795,
--43.474,-43.135,-42.839,-42.580,-42.300,-41.965,-41.594,-41.202,-40.793,-40.379,-39.979,-39.569,-39.098,-38.545,-37.940,-37.312,
--36.655,-35.945,-35.152,-34.245,-33.243,-32.238,-31.290,-30.327,-29.265,-28.211,-27.395,-26.851,-26.323,-25.598,-24.788,-24.144,
--23.696,-23.258,-22.726,-22.167,-21.632,-21.087,-20.544,-20.097,-19.752,-19.373,-18.879,-18.358,-17.918,-17.530,-17.113,-16.668,
--16.234,-15.785,-15.278,-14.739,-14.211,-13.669,-13.076,-12.475,-11.930,-11.428,-10.921,-10.416,-9.931,-9.418,-8.838,-8.259,
--7.778,-7.358,-6.885,-6.337,-5.795,-5.280,-4.737,-4.160,-3.619,-3.123,-2.593,-1.998,-1.412,-.876,-.336,.243,
-.807,1.325,1.865,2.472,3.068,3.583,4.080,4.661,5.293,5.861,6.341,6.821,7.350,7.885,8.389,8.880,
-9.373,9.854,10.322,10.797,11.288,11.774,12.246,12.700,13.122,13.507,13.879,14.236,14.530,14.740,14.925,15.140,
-15.353,15.507,15.637,15.805,15.984,16.120,16.275,16.554,16.926,17.250,17.506,17.811,18.193,18.546,18.855,19.240,
-19.684,19.963,20.044,20.374,21.465,23.254,25.118,26.496,27.306,27.751,28.006,28.175,28.345,28.528,28.668,28.796,
-29.081,29.631,30.335,30.968,31.388,31.592,31.725,32.070,32.860,33.964,34.880,35.205,35.022,34.681,34.324,33.847,
-33.250,32.751,32.496,32.366,32.187,31.955,31.758,31.598,31.420,31.223,31.013,30.723,30.286,29.759,29.268,28.886,
-28.635,28.569,28.727,29.025,29.284,29.396,29.362,29.198,28.897,28.497,28.105,27.779,27.464,27.081,26.632,26.201,
-25.879,25.708,25.659,25.619,25.460,25.152,24.783,24.449,24.158,23.884,23.644,23.464,23.412,23.249,23.033,22.777,
-22.519,22.257,21.997,21.851,21.991,22.425,22.887,23.047,22.824,22.440,22.142,21.935,21.650,21.247,20.938,20.965,
-21.308,21.712,21.972,22.095,22.182,22.266,22.324,22.366,22.413,22.430,22.364,22.243,22.158,22.150,22.173,22.175,
-22.135,22.023,21.796,21.445,21.015,20.546,20.067,19.625,19.259,18.950,18.646,18.346,18.077,17.782,17.355,16.817,
-16.352,16.063,15.810,15.399,14.839,14.287,13.798,13.291,12.759,12.313,12.000,11.712,11.350,10.955,10.589,10.198,
-9.695,9.115,8.564,8.067,7.552,7.001,6.500,6.126,5.846,5.547,5.155,4.688,4.240,3.901,3.685,3.526,
-3.354,3.169,3.014,2.913,2.838,2.747,2.610,2.425,2.220,2.032,1.871,1.704,1.500,1.251,.945,.569,
-.161,-.188,-.436,-.649,-.924,-1.278,-1.669,-2.080,-2.499,-2.850,-3.049,-3.115,-3.146,-3.163,-3.087,-2.871,
--2.586,-2.320,-2.108,-1.982,-2.019,-2.254,-2.615,-2.994,-3.350,-3.686,-3.994,-4.279,-4.579,-4.881,-5.089,-5.146,
--5.126,-5.092,-4.932,-4.496,-3.891,-3.486,-3.586,-4.161,-4.914,-5.503,-5.662,-5.292,-4.549,-3.788,-3.316,-3.219,
--3.451,-3.989,-4.803,-5.720,-6.454,-6.808,-6.802,-6.632,-6.547,-6.752,-7.316,-8.114,-8.925,-9.591,-10.096,-10.485,
--10.783,-11.013,-11.213,-11.401,-11.547,-11.659,-11.885,-12.434,-13.356,-14.448,-15.443,-16.278,-17.102,-18.005,-18.849,-19.439,
--19.775,-20.040,-20.369,-20.764,-21.244,-21.900,-22.713,-23.471,-23.982,-24.297,-24.600,-24.974,-25.411,-25.965,-26.683,-27.376,
--27.710,-27.602,-27.375,-27.436,-27.935,-28.820,-30.048,-31.575,-33.254,-34.947,-36.674,-38.473,-40.175,-41.504,-42.423,-43.193,
--44.040,-44.940,-45.749,-46.386,-46.813,-47.019,-47.118,-47.306,-47.594,-47.755,-47.688,-47.666,-47.961,-48.381,-48.548,-48.601,
--49.178,-50.495,-51.806,-52.169,-51.612,-51.143,-51.610,-52.879,-54.230,-55.260,-56.113,-57.033,-58.008,-58.912,-59.749,-60.622,
--61.545,-62.414,-63.151,-63.808,-64.518,-65.356,-66.266,-67.137,-67.935,-68.728,-69.575,-70.433,-71.236,-72.007,-72.834,-73.728,
--74.607,-75.415,-76.188,-76.974,-77.756,-78.510,-79.266,-80.053,-80.844,-81.608,-82.382,-83.206,-84.018,-84.716,-85.310,-85.932,
--86.679,-87.511,-88.315,-89.004,-89.554,-89.980,-90.318,-90.574,-90.716,-90.763,-90.850,-91.118,-91.519,-91.866,-92.122,-92.489,
--93.106,-93.817,-94.372,-94.755,-95.110,-95.381,-95.285,-94.716,-93.965,-93.401,-93.061,-92.732,-92.344,-92.116,-92.288,-92.837,
--93.514,-94.074,-94.422,-94.563,-94.476,-94.110,-93.521,-92.944,-92.610,-92.505,-92.483,-92.662,-93.495,-95.206,-97.267,-98.712,
--99.016,-98.486,-97.742,-97.077,-96.413,-95.671,-94.906,-94.153,-93.372,-92.556,-91.756,-90.970,-90.140,-89.281,-88.521,-87.961,
--87.543,-87.078,-86.352,-85.255,-83.869,-82.431,-81.131,-79.960,-78.802,-77.627,-76.458,-75.215,-73.772,-72.183,-70.674,-69.369,
--68.168,-66.984,-65.900,-65.000,-64.208,-63.483,-63.027,-63.074,-63.484,-63.734,-63.365,-62.416,-61.458,-61.216,-61.936,-62.910,
--62.827,-60.928,-57.822,-54.912,-53.007,-51.796,-50.623,-49.339,-48.188,-47.258,-46.396,-45.489,-44.463,-43.132,-41.380,-39.450,
--37.764,-36.476,-35.426,-34.506,-33.746,-33.053,-32.190,-31.145,-30.225,-29.616,-29.105,-28.428,-27.666,-27.051,-26.548,-25.934,
--25.178,-24.456,-23.794,-23.002,-21.993,-20.935,-19.976,-19.033,-17.992,-16.942,-16.072,-15.404,-14.798,-14.156,-13.479,-12.757,
--11.924,-10.952,-9.879,-8.742,-7.548,-6.335,-5.181,-4.112,-3.074,-2.017,-.966,.045,1.067,2.191,3.414,4.611,
-5.647,6.488,7.204,7.894,8.636,9.446,10.282,11.097,11.932,12.888,13.991,15.139,16.218,17.245,18.298,19.369,
-20.371,21.311,22.340,23.614,25.159,26.859,28.461,29.641,30.259,30.647,31.446,32.977,34.878,36.509,37.635,38.492,
-39.297,39.976,40.436,40.855,41.551,42.694,44.221,45.938,47.600,49.011,50.152,51.144,52.056,52.836,53.463,53.997,
-54.411,54.577,54.539,54.615,55.089,55.954,57.099,58.482,59.888,60.812,61.030,61.118,61.835,63.063,64.007,64.520,
-65.336,66.452,66.042,62.153,55.470,49.429,47.138,48.680,51.713,54.127,55.508,56.419,57.189,57.709,57.904,57.902,
-57.813,57.633,57.377,57.158,57.051,56.975,56.804,56.549,56.355,56.296,56.271,56.169,56.054,56.045,56.081,55.986,
-55.787,55.730,55.899,56.062,56.083,56.243,56.835,57.615,58.032,57.960,57.804,57.854,57.946,57.910,57.883,57.929,
-57.794,57.447,57.465,58.217,58.869,57.979,55.280,52.232,50.489,50.282,50.683,50.929,50.860,50.310,48.862,46.409,
-43.494,40.876,39.003,38.011,37.894,38.439,39.242,40.035,40.894,41.994,43.318,44.766,46.358,48.066,49.572,50.480,
-50.752,50.723,50.667,50.592,50.458,50.340,50.269,50.098,49.687,49.116,48.558,48.032,47.426,46.736,46.143,45.802,
-45.657,45.506,45.198,44.746,44.268,43.877,43.634,43.520,43.432,43.220,42.813,42.314,41.915,41.695,41.561,41.398,
-41.176,40.908,40.606,40.338,40.185,40.069,39.797,39.389,39.119,39.034,38.702,37.899,37.306,37.834,39.162,39.707,
-38.501,36.488,35.339,35.389,35.571,35.162,34.608,34.452,34.379,33.895,33.288,33.205,33.622,33.918,33.800,33.502,
-33.149,32.584,31.937,31.705,31.965,32.024,31.248,29.944,28.999,28.840,29.128,29.311,29.109,28.537,27.818,27.311,
-27.198,27.221,27.023,26.746,26.926,27.687,28.420,28.493,27.983,27.406,26.954,26.383,25.515,24.459,23.415,22.627,
-22.543,23.496,25.007,25.853,25.223,23.635,22.343,21.969,22.088,22.070,21.822,21.567,21.329,20.976,20.556,20.266,
-20.134,19.975,19.657,19.208,18.692,18.146,17.658,17.328,17.118,16.875,16.533,16.187,15.917,15.686,15.473,15.337,
-15.283,15.178,14.925,14.608,14.348,14.093,13.723,13.280,12.943,12.781,12.673,12.498,12.248,11.948,11.601,11.269,
-11.075,11.045,11.046,10.974,10.904,10.965,11.120,11.190,11.086,10.896,10.757,10.719,10.749,10.825,10.948,11.111,
-11.260,11.310,11.209,11.002,10.810,10.700,10.629,10.531,10.448,10.475,10.604,10.686,10.598,10.385,10.219,10.241,
-10.475,10.867,11.366,11.913,12.389,12.611,12.477,12.108,11.787,11.697,11.773,11.858,11.941,12.124,12.401,12.587,
-12.554,12.414,12.435,12.777,13.343,13.827,13.915,13.557,13.063,12.845,12.973,13.104,12.909,12.458,12.069,11.885,
-11.766,11.566,11.304,11.044,10.783,10.528,10.330,10.171,9.932,9.576,9.271,9.183,9.234,9.182,8.920,8.572,
-8.298,8.120,7.962,7.771,7.538,7.271,6.986,6.705,6.448,6.219,6.018,5.833,5.644,5.446,5.266,5.107,
-4.913,4.640,4.339,4.107,3.951,3.778,3.521,3.225,2.954,2.703,2.433,2.137,1.821,1.467,1.074,.694,
-.384,.132,-.108,-.339,-.523,-.665,-.819,-1.015,-1.221,-1.402,-1.575,-1.771,-1.995,-2.225,-2.452,-2.686,
--2.933,-3.201,-3.493,-3.799,-4.105,-4.404,-4.711,-5.028,-5.340,-5.628,-5.899,-6.169,-6.446,-6.733,-7.030,-7.332,
--7.626,-7.912,-8.214,-8.563,-8.966,-9.403,-9.848,-10.285,-10.710,-11.128,-11.547,-11.976,-12.425,-12.910,-13.438,-13.988,
--14.524,-15.033,-15.518,-15.982,-16.420,-16.856,-17.333,-17.857,-18.371,-18.811,-19.188,-19.572,-20.013,-20.505,-21.021,-21.537,
--22.032,-22.492,-22.925,-23.352,-23.779,-24.207,-24.657,-25.159,-25.695,-26.203,-26.659,-27.110,-27.604,-28.110,-28.551,-28.898,
--29.188,-29.479,-29.806,-30.185,-30.613,-31.060,-31.489,-31.899,-32.318,-32.758,-33.190,-33.592,-33.974,-34.356,-34.733,-35.088,
--35.417,-35.723,-36.004,-36.257,-36.501,-36.764,-37.059,-37.372,-37.687,-37.995,-38.289,-38.562,-38.806,-39.025,-39.224,-39.403,
--39.561,-39.706,-39.858,-40.031,-40.208,-40.357,-40.475,-40.594,-40.725,-40.825,-40.848,-40.824,-40.836,-40.918,-41.005,-41.021,
--40.961,-40.871,-40.784,-40.700,-40.612,-40.504,-40.353,-40.161,-39.958,-39.761,-39.548,-39.293,-39.020,-38.765,-38.517,-38.248,
--37.963,-37.685,-37.387,-37.025,-36.627,-36.280,-36.007,-35.726,-35.367,-34.958,-34.550,-34.134,-33.679,-33.196,-32.717,-32.242,
--31.774,-31.360,-31.016,-30.659,-30.188,-29.637,-29.144,-28.762,-28.393,-27.936,-27.410,-26.884,-26.356,-25.782,-25.184,-24.645,
--24.194,-23.762,-23.265,-22.695,-22.106,-21.550,-21.044,-20.570,-20.093,-19.585,-19.052,-18.522,-18.016,-17.525,-17.030,-16.527,
--16.024,-15.524,-15.034,-14.566,-14.133,-13.725,-13.316,-12.908,-12.531,-12.207,-11.907,-11.585,-11.241,-10.909,-10.604,-10.301,
--9.980,-9.657,-9.357,-9.072,-8.780,-8.468,-8.131,-7.770,-7.401,-7.053,-6.721,-6.374,-6.002,-5.644,-5.318,-4.987,
--4.620,-4.246,-3.897,-3.540,-3.142,-2.758,-2.453,-2.185,-1.859,-1.478,-1.124,-.798,-.419,.002,.337,.546,
-.753,1.044,1.324,1.488,1.603,1.808,2.104,2.405,2.687,2.905,2.840,2.251,1.210,.117,-.660,-.971,
--.708,.307,2.076,4.192,6.036,7.223,7.806,8.103,8.398,8.759,9.045,9.094,8.875,8.448,7.811,6.925,
-5.894,4.978,4.328,3.846,3.364,2.839,2.294,1.712,1.122,.638,.266,-.181,-.803,-1.391,-1.701,-1.836,
--2.089,-2.501,-2.878,-3.196,-3.647,-4.256,-4.813,-5.277,-5.897,-6.780,-7.661,-8.264,-8.607,-8.765,-8.720,-8.650,
--8.867,-8.980,-7.675,-4.204,.010,2.212,1.052,-2.157,-5.200,-7.272,-9.013,-10.938,-12.780,-14.238,-15.469,-16.599,
--17.356,-17.498,-17.238,-16.941,-16.701,-16.488,-16.450,-16.748,-17.275,-17.868,-18.673,-19.968,-21.616,-23.002,-23.621,-23.541,
--23.257,-23.255,-23.773,-24.787,-26.063,-27.291,-28.308,-29.152,-29.860,-30.312,-30.381,-30.174,-29.996,-30.099,-30.556,-31.372,
--32.558,-34.046,-35.644,-37.170,-38.578,-39.840,-40.814,-41.390,-41.798,-42.538,-43.865,-45.405,-46.452,-46.638,-46.188,-45.549,
--44.963,-44.471,-44.175,-44.263,-44.798,-45.606,-46.418,-47.040,-47.397,-47.510,-47.464,-47.346,-47.163,-46.867,-46.468,-46.088,
--45.839,-45.705,-45.591,-45.463,-45.380,-45.379,-45.407,-45.381,-45.302,-45.235,-45.209,-45.152,-44.983,-44.711,-44.426,-44.171,
--43.903,-43.575,-43.211,-42.868,-42.547,-42.219,-41.877,-41.527,-41.139,-40.689,-40.216,-39.783,-39.383,-38.947,-38.449,-37.926,
--37.399,-36.838,-36.219,-35.540,-34.770,-33.867,-32.858,-31.825,-30.790,-29.732,-28.739,-27.985,-27.480,-26.982,-26.283,-25.465,
--24.752,-24.189,-23.636,-23.025,-22.422,-21.852,-21.265,-20.686,-20.224,-19.880,-19.497,-18.986,-18.448,-18.001,-17.607,-17.177,
--16.719,-16.286,-15.856,-15.377,-14.868,-14.361,-13.817,-13.196,-12.556,-11.988,-11.490,-11.000,-10.509,-10.035,-9.537,-8.965,
--8.370,-7.844,-7.371,-6.861,-6.313,-5.804,-5.333,-4.808,-4.212,-3.640,-3.136,-2.627,-2.063,-1.501,-.990,-.479,
-.078,.640,1.163,1.692,2.274,2.864,3.398,3.908,4.462,5.041,5.575,6.061,6.556,7.075,7.582,8.066,
-8.551,9.034,9.492,9.937,10.407,10.900,11.380,11.830,12.265,12.692,13.110,13.525,13.929,14.276,14.553,14.818,
-15.106,15.360,15.508,15.583,15.673,15.786,15.888,16.020,16.258,16.573,16.868,17.139,17.475,17.878,18.266,18.645,
-19.080,19.473,19.613,19.595,19.944,21.103,22.898,24.726,26.159,27.157,27.794,28.101,28.193,28.289,28.481,28.676,
-28.830,29.092,29.608,30.321,31.051,31.646,32.007,32.140,32.285,32.816,33.808,34.819,35.299,35.136,34.651,34.124,
-33.569,32.968,32.454,32.157,32.030,31.937,31.823,31.702,31.576,31.435,31.291,31.117,30.824,30.365,29.817,29.299,
-28.872,28.567,28.444,28.532,28.745,28.956,29.111,29.199,29.157,28.903,28.474,28.017,27.628,27.273,26.879,26.451,
-26.048,25.731,25.536,25.458,25.413,25.279,25.008,24.663,24.333,24.044,23.787,23.575,23.412,23.362,23.149,22.877,
-22.572,22.289,22.069,21.973,22.102,22.504,23.033,23.395,23.377,23.051,22.691,22.502,22.436,22.306,22.048,21.825,
-21.836,22.076,22.342,22.460,22.432,22.357,22.311,22.349,22.518,22.778,22.958,22.917,22.723,22.589,22.624,22.728,
-22.745,22.620,22.378,22.045,21.636,21.171,20.665,20.124,19.599,19.176,18.892,18.703,18.545,18.369,18.107,17.692,
-17.175,16.730,16.447,16.186,15.739,15.086,14.388,13.770,13.227,12.733,12.304,11.917,11.487,10.987,10.502,10.102,
-9.742,9.330,8.844,8.313,7.739,7.122,6.517,6.005,5.601,5.251,4.889,4.481,4.029,3.581,3.227,3.018,
-2.905,2.791,2.624,2.429,2.255,2.134,2.060,1.987,1.852,1.650,1.447,1.289,1.132,.899,.594,.289,
-.035,-.179,-.388,-.617,-.872,-1.124,-1.332,-1.533,-1.860,-2.383,-2.964,-3.380,-3.580,-3.704,-3.849,-3.944,
--3.884,-3.674,-3.372,-3.017,-2.691,-2.562,-2.746,-3.161,-3.610,-3.970,-4.243,-4.484,-4.764,-5.143,-5.566,-5.846,
--5.847,-5.643,-5.381,-5.027,-4.429,-3.646,-3.048,-3.014,-3.618,-4.596,-5.511,-5.904,-5.514,-4.546,-3.618,-3.278,
--3.541,-4.025,-4.469,-4.971,-5.711,-6.605,-7.353,-7.727,-7.743,-7.609,-7.585,-7.867,-8.484,-9.271,-9.985,-10.476,
--10.778,-11.023,-11.302,-11.605,-11.870,-12.074,-12.275,-12.611,-13.212,-14.090,-15.098,-16.061,-16.945,-17.850,-18.797,-19.620,
--20.132,-20.365,-20.518,-20.723,-21.014,-21.485,-22.279,-23.315,-24.215,-24.665,-24.752,-24.796,-24.961,-25.211,-25.578,-26.166,
--26.897,-27.477,-27.751,-27.908,-28.242,-28.868,-29.781,-31.014,-32.550,-34.215,-35.844,-37.496,-39.284,-41.068,-42.530,-43.552,
--44.332,-45.080,-45.799,-46.407,-46.875,-47.182,-47.327,-47.481,-47.916,-48.632,-49.220,-49.323,-49.082,-48.907,-48.939,-49.048,
--49.296,-49.950,-50.913,-51.543,-51.363,-50.777,-50.715,-51.615,-53.048,-54.352,-55.336,-56.228,-57.193,-58.169,-59.077,-59.965,
--60.900,-61.846,-62.718,-63.488,-64.204,-64.949,-65.772,-66.647,-67.498,-68.283,-69.054,-69.873,-70.722,-71.536,-72.315,-73.135,
--74.031,-74.941,-75.793,-76.586,-77.356,-78.117,-78.879,-79.673,-80.501,-81.316,-82.094,-82.881,-83.709,-84.515,-85.205,-85.799,
--86.424,-87.170,-87.993,-88.782,-89.453,-89.984,-90.400,-90.756,-91.072,-91.301,-91.411,-91.490,-91.673,-91.965,-92.249,-92.504,
--92.874,-93.441,-94.063,-94.558,-94.973,-95.450,-95.897,-95.997,-95.587,-94.843,-94.023,-93.224,-92.521,-92.180,-92.475,-93.295,
--94.141,-94.583,-94.628,-94.600,-94.719,-94.879,-94.810,-94.405,-93.854,-93.434,-93.220,-93.120,-93.219,-93.894,-95.379,-97.266,
--98.695,-99.106,-98.677,-97.962,-97.300,-96.682,-96.018,-95.298,-94.523,-93.679,-92.806,-91.983,-91.215,-90.429,-89.598,-88.806,
--88.158,-87.667,-87.220,-86.599,-85.598,-84.211,-82.683,-81.285,-80.062,-78.891,-77.702,-76.503,-75.222,-73.740,-72.123,-70.609,
--69.296,-68.049,-66.794,-65.683,-64.837,-64.118,-63.403,-62.900,-62.899,-63.256,-63.406,-62.937,-62.009,-61.229,-61.219,-62.138,
--63.330,-63.531,-61.844,-58.674,-55.420,-53.121,-51.654,-50.346,-48.964,-47.768,-46.893,-46.128,-45.224,-44.083,-42.630,-40.854,
--38.986,-37.372,-36.105,-35.014,-34.015,-33.208,-32.559,-31.805,-30.832,-29.872,-29.155,-28.569,-27.893,-27.167,-26.570,-26.068,
--25.453,-24.692,-23.940,-23.235,-22.419,-21.420,-20.376,-19.408,-18.445,-17.403,-16.380,-15.528,-14.848,-14.217,-13.571,-12.913,
--12.213,-11.404,-10.461,-9.408,-8.245,-6.978,-5.706,-4.576,-3.623,-2.725,-1.764,-.755,.227,1.196,2.268,3.511,
-4.841,6.082,7.111,7.929,8.639,9.359,10.148,10.977,11.801,12.651,13.623,14.741,15.901,16.987,18.022,19.093,
-20.170,21.127,21.982,22.992,24.389,26.089,27.744,29.057,29.975,30.663,31.390,32.410,33.779,35.279,36.604,37.630,
-38.465,39.237,39.968,40.668,41.431,42.385,43.616,45.124,46.795,48.392,49.724,50.836,51.905,52.937,53.719,54.151,
-54.412,54.673,54.831,54.739,54.585,54.814,55.715,57.212,58.958,60.464,61.295,61.486,61.683,62.485,63.673,64.548,
-65.092,66.097,67.638,67.960,64.870,58.427,51.611,47.880,48.281,51.120,54.034,55.900,56.921,57.609,58.131,58.431,
-58.509,58.438,58.259,58.006,57.769,57.633,57.544,57.369,57.101,56.898,56.850,56.836,56.718,56.567,56.534,56.566,
-56.491,56.344,56.345,56.510,56.606,56.620,56.925,57.703,58.479,58.647,58.284,58.006,58.077,58.171,58.077,58.032,
-58.153,58.122,57.852,57.933,58.697,59.176,57.913,54.919,52.011,50.851,51.265,51.934,52.105,51.904,51.319,49.882,
-47.529,45.110,43.608,43.214,43.450,43.874,44.326,44.729,45.062,45.500,46.257,47.292,48.382,49.456,50.592,51.694,
-52.423,52.588,52.387,52.132,51.889,51.537,51.080,50.668,50.354,50.001,49.499,48.921,48.387,47.874,47.275,46.615,
-46.054,45.661,45.318,44.900,44.470,44.165,43.988,43.821,43.634,43.486,43.338,43.027,42.524,42.045,41.796,41.724,
-41.640,41.470,41.264,41.042,40.802,40.590,40.398,40.112,39.733,39.478,39.412,39.154,38.410,37.684,37.843,38.806,
-39.318,38.467,36.928,36.063,36.145,36.244,35.756,35.140,34.924,34.782,34.202,33.499,33.469,34.226,35.008,35.118,
-34.550,33.642,32.642,31.789,31.383,31.445,31.543,31.231,30.550,29.904,29.573,29.513,29.516,29.355,28.872,28.130,
-27.442,27.070,26.960,26.920,26.962,27.206,27.491,27.420,26.881,26.233,25.829,25.604,25.287,24.802,24.214,23.510,
-22.798,22.571,23.288,24.609,25.475,25.190,24.131,23.174,22.676,22.377,22.068,21.873,21.847,21.755,21.420,21.002,
-20.728,20.551,20.292,19.947,19.619,19.266,18.780,18.241,17.851,17.625,17.364,16.968,16.552,16.240,16.007,15.827,
-15.749,15.735,15.589,15.200,14.727,14.392,14.180,13.913,13.559,13.250,13.047,12.856,12.606,12.345,12.120,11.893,
-11.643,11.439,11.330,11.258,11.158,11.060,11.034,11.065,11.068,10.991,10.849,10.689,10.566,10.529,10.580,10.680,
-10.801,10.934,11.039,11.040,10.931,10.805,10.718,10.607,10.420,10.277,10.356,10.627,10.827,10.748,10.475,10.285,
-10.362,10.685,11.155,11.719,12.343,12.884,13.104,12.882,12.402,12.022,11.941,12.047,12.157,12.270,12.475,12.703,
-12.753,12.582,12.408,12.488,12.875,13.418,13.861,13.933,13.548,13.013,12.845,13.212,13.678,13.684,13.195,12.657,
-12.382,12.246,11.991,11.583,11.165,10.837,10.622,10.517,10.435,10.222,9.858,9.571,9.581,9.798,9.884,9.644,
-9.193,8.767,8.477,8.288,8.132,7.955,7.722,7.430,7.112,6.811,6.553,6.347,6.183,6.019,5.823,5.608,
-5.401,5.193,4.953,4.701,4.489,4.315,4.114,3.856,3.585,3.344,3.112,2.852,2.565,2.256,1.900,1.502,
-1.127,.831,.580,.308,.024,-.203,-.361,-.511,-.697,-.898,-1.085,-1.274,-1.486,-1.710,-1.926,-2.142,
--2.375,-2.619,-2.864,-3.114,-3.383,-3.674,-3.985,-4.316,-4.656,-4.982,-5.280,-5.567,-5.862,-6.166,-6.470,-6.779,
--7.098,-7.413,-7.707,-7.998,-8.330,-8.726,-9.164,-9.604,-10.026,-10.439,-10.855,-11.273,-11.700,-12.160,-12.678,-13.243,
--13.809,-14.335,-14.820,-15.273,-15.687,-16.063,-16.452,-16.924,-17.484,-18.049,-18.536,-18.944,-19.328,-19.728,-20.160,-20.640,
--21.171,-21.718,-22.232,-22.699,-23.136,-23.551,-23.946,-24.351,-24.811,-25.322,-25.830,-26.308,-26.786,-27.283,-27.763,-28.176,
--28.526,-28.855,-29.184,-29.516,-29.867,-30.258,-30.676,-31.089,-31.491,-31.906,-32.334,-32.751,-33.147,-33.546,-33.952,-34.336,
--34.677,-34.995,-35.307,-35.603,-35.867,-36.121,-36.401,-36.708,-37.014,-37.308,-37.600,-37.890,-38.160,-38.394,-38.600,-38.790,
--38.969,-39.133,-39.282,-39.433,-39.597,-39.771,-39.931,-40.068,-40.198,-40.331,-40.442,-40.494,-40.500,-40.520,-40.579,-40.634,
--40.633,-40.582,-40.521,-40.468,-40.407,-40.325,-40.216,-40.064,-39.864,-39.639,-39.414,-39.185,-38.939,-38.694,-38.465,-38.226,
--37.940,-37.620,-37.312,-37.008,-36.665,-36.290,-35.951,-35.668,-35.378,-35.030,-34.657,-34.301,-33.932,-33.502,-33.024,-32.545,
--32.072,-31.598,-31.158,-30.776,-30.391,-29.911,-29.356,-28.855,-28.485,-28.183,-27.846,-27.440,-26.976,-26.443,-25.828,-25.182,
--24.593,-24.102,-23.665,-23.210,-22.696,-22.136,-21.574,-21.050,-20.567,-20.090,-19.584,-19.054,-18.529,-18.031,-17.557,-17.096,
--16.635,-16.165,-15.682,-15.196,-14.726,-14.280,-13.859,-13.462,-13.089,-12.745,-12.427,-12.117,-11.792,-11.443,-11.087,-10.747,
--10.419,-10.081,-9.730,-9.394,-9.100,-8.833,-8.547,-8.202,-7.799,-7.386,-7.013,-6.687,-6.370,-6.024,-5.649,-5.266,
--4.888,-4.530,-4.205,-3.896,-3.562,-3.193,-2.834,-2.508,-2.172,-1.795,-1.441,-1.175,-.933,-.597,-.180,.190,
-.475,.776,1.122,1.384,1.469,1.504,1.673,1.986,2.345,2.736,3.194,3.584,3.604,3.072,2.095,.988,
-.140,-.029,.798,2.589,4.852,6.886,8.182,8.668,8.680,8.694,8.965,9.349,9.512,9.302,8.832,8.230,
-7.490,6.615,5.753,5.065,4.545,4.064,3.500,2.783,1.920,1.056,.374,-.145,-.729,-1.464,-2.110,-2.417,
--2.480,-2.564,-2.725,-2.876,-3.096,-3.559,-4.194,-4.756,-5.224,-5.808,-6.525,-7.134,-7.524,-7.785,-7.832,-7.504,
--7.167,-7.463,-7.964,-6.822,-2.816,2.474,5.658,4.938,1.700,-1.578,-4.053,-6.505,-9.400,-12.122,-13.993,-15.055,
--15.625,-15.754,-15.497,-15.201,-15.151,-15.229,-15.262,-15.402,-15.846,-16.428,-16.901,-17.466,-18.552,-20.057,-21.221,-21.430,
--20.903,-20.451,-20.731,-21.864,-23.563,-25.387,-26.958,-28.137,-29.036,-29.765,-30.226,-30.264,-29.999,-29.845,-30.176,-31.055,
--32.319,-33.812,-35.442,-37.098,-38.628,-39.911,-40.879,-41.509,-41.892,-42.290,-43.001,-44.050,-45.074,-45.594,-45.429,-44.794,
--44.053,-43.462,-43.149,-43.191,-43.602,-44.279,-45.043,-45.747,-46.315,-46.709,-46.914,-46.963,-46.910,-46.770,-46.519,-46.173,
--45.819,-45.548,-45.376,-45.259,-45.172,-45.139,-45.177,-45.245,-45.274,-45.236,-45.175,-45.141,-45.110,-45.009,-44.810,-44.552,
--44.285,-44.002,-43.682,-43.336,-42.985,-42.627,-42.263,-41.922,-41.604,-41.236,-40.756,-40.209,-39.687,-39.200,-38.685,-38.128,
--37.592,-37.100,-36.602,-36.063,-35.499,-34.884,-34.132,-33.216,-32.218,-31.218,-30.234,-29.324,-28.611,-28.108,-27.625,-26.980,
--26.218,-25.506,-24.871,-24.201,-23.457,-22.713,-22.000,-21.289,-20.619,-20.091,-19.685,-19.252,-18.731,-18.239,-17.857,-17.494,
--17.038,-16.533,-16.069,-15.632,-15.162,-14.676,-14.218,-13.739,-13.171,-12.559,-12.001,-11.503,-11.010,-10.517,-10.056,-9.584,
--9.029,-8.415,-7.834,-7.292,-6.721,-6.129,-5.599,-5.130,-4.615,-4.015,-3.421,-2.902,-2.405,-1.873,-1.345,-.865,
--.391,.131,.672,1.185,1.695,2.248,2.822,3.368,3.888,4.410,4.924,5.417,5.914,6.440,6.959,7.430,
-7.879,8.348,8.820,9.259,9.689,10.158,10.649,11.102,11.512,11.922,12.348,12.775,13.204,13.646,14.072,14.448,
-14.782,15.091,15.328,15.441,15.471,15.507,15.579,15.665,15.785,15.985,16.241,16.489,16.747,17.084,17.492,17.907,
-18.327,18.767,19.100,19.194,19.255,19.797,21.100,22.867,24.570,25.975,27.117,27.943,28.310,28.311,28.289,28.470,
-28.775,29.066,29.371,29.794,30.355,31.015,31.689,32.186,32.327,32.260,32.464,33.221,34.211,34.825,34.807,34.397,
-33.895,33.362,32.777,32.242,31.906,31.777,31.751,31.737,31.700,31.626,31.518,31.388,31.205,30.897,30.440,29.907,
-29.390,28.934,28.574,28.368,28.331,28.399,28.514,28.671,28.840,28.886,28.682,28.264,27.801,27.407,27.063,26.715,
-26.357,26.011,25.700,25.466,25.340,25.269,25.131,24.862,24.524,24.211,23.956,23.738,23.544,23.362,23.296,22.984,
-22.632,22.301,22.059,21.968,22.097,22.491,23.076,23.622,23.871,23.745,23.397,23.073,22.907,22.849,22.759,22.587,
-22.446,22.476,22.664,22.832,22.833,22.692,22.538,22.467,22.529,22.752,23.079,23.323,23.329,23.168,23.082,23.188,
-23.345,23.337,23.109,22.751,22.354,21.930,21.447,20.871,20.212,19.563,19.075,18.821,18.724,18.655,18.543,18.356,
-18.050,17.618,17.148,16.730,16.319,15.777,15.062,14.294,13.619,13.087,12.659,12.265,11.814,11.245,10.602,10.012,
-9.560,9.212,8.876,8.483,7.995,7.396,6.732,6.101,5.565,5.093,4.629,4.167,3.724,3.291,2.869,2.511,
-2.272,2.129,1.995,1.803,1.555,1.311,1.156,1.131,1.169,1.129,.959,.758,.638,.561,.397,.111,
--.189,-.391,-.508,-.638,-.867,-1.188,-1.490,-1.657,-1.731,-1.926,-2.397,-3.024,-3.540,-3.854,-4.112,-4.424,
--4.696,-4.776,-4.638,-4.345,-3.953,-3.562,-3.355,-3.468,-3.832,-4.255,-4.600,-4.839,-5.009,-5.225,-5.629,-6.194,
--6.629,-6.640,-6.259,-5.752,-5.234,-4.579,-3.754,-3.049,-2.866,-3.374,-4.403,-5.517,-6.145,-5.880,-4.893,-3.949,
--3.771,-4.356,-5.081,-5.457,-5.603,-5.951,-6.691,-7.621,-8.397,-8.785,-8.742,-8.465,-8.337,-8.683,-9.469,-10.317,
--10.873,-11.133,-11.352,-11.706,-12.121,-12.433,-12.613,-12.794,-13.145,-13.754,-14.603,-15.582,-16.569,-17.525,-18.484,-19.416,
--20.174,-20.643,-20.898,-21.108,-21.333,-21.577,-21.994,-22.798,-23.893,-24.813,-25.201,-25.208,-25.232,-25.400,-25.562,-25.708,
--26.072,-26.771,-27.609,-28.349,-28.989,-29.642,-30.339,-31.119,-32.124,-33.433,-34.908,-36.406,-38.027,-39.923,-41.912,-43.546,
--44.589,-45.226,-45.762,-46.329,-46.915,-47.473,-47.893,-48.081,-48.201,-48.618,-49.430,-50.189,-50.340,-49.849,-49.199,-48.855,
--48.946,-49.417,-50.121,-50.721,-50.817,-50.436,-50.180,-50.665,-51.866,-53.237,-54.374,-55.330,-56.308,-57.312,-58.241,-59.120,
--60.057,-61.067,-62.050,-62.943,-63.773,-64.583,-65.388,-66.209,-67.056,-67.898,-68.688,-69.439,-70.208,-71.015,-71.824,-72.626,
--73.461,-74.356,-75.274,-76.151,-76.964,-77.730,-78.484,-79.263,-80.093,-80.950,-81.776,-82.555,-83.335,-84.142,-84.926,-85.626,
--86.263,-86.924,-87.655,-88.430,-89.183,-89.857,-90.410,-90.848,-91.234,-91.606,-91.917,-92.094,-92.174,-92.278,-92.463,-92.692,
--92.960,-93.346,-93.864,-94.387,-94.827,-95.273,-95.824,-96.343,-96.548,-96.326,-95.795,-95.055,-94.135,-93.266,-92.948,-93.470,
--94.445,-95.086,-94.987,-94.490,-94.234,-94.470,-94.912,-95.114,-94.897,-94.421,-93.977,-93.734,-93.708,-93.932,-94.580,-95.765,
--97.242,-98.451,-98.947,-98.745,-98.181,-97.545,-96.918,-96.280,-95.595,-94.831,-93.981,-93.112,-92.306,-91.556,-90.783,-89.951,
--89.109,-88.347,-87.728,-87.229,-86.671,-85.781,-84.450,-82.893,-81.438,-80.184,-78.996,-77.767,-76.507,-75.182,-73.694,-72.085,
--70.556,-69.195,-67.877,-66.559,-65.430,-64.611,-63.931,-63.249,-62.781,-62.802,-63.097,-63.079,-62.467,-61.592,-61.051,-61.267,
--62.285,-63.576,-64.020,-62.611,-59.483,-55.946,-53.235,-51.454,-49.975,-48.506,-47.299,-46.497,-45.796,-44.833,-43.525,-41.946,
--40.178,-38.399,-36.859,-35.625,-34.552,-33.573,-32.792,-32.181,-31.464,-30.475,-29.424,-28.601,-27.976,-27.332,-26.634,-26.018,
--25.482,-24.865,-24.114,-23.344,-22.598,-21.775,-20.823,-19.841,-18.898,-17.925,-16.870,-15.833,-14.951,-14.229,-13.579,-12.940,
--12.282,-11.556,-10.722,-9.793,-8.779,-7.636,-6.360,-5.093,-4.022,-3.174,-2.379,-1.464,-.431,.605,1.603,2.661,
-3.898,5.290,6.659,7.807,8.666,9.331,9.972,10.712,11.558,12.456,13.383,14.376,15.463,16.586,17.679,18.775,
-19.945,21.125,22.140,23.003,24.028,25.501,27.249,28.757,29.729,30.389,31.160,32.199,33.362,34.496,35.597,36.690,
-37.708,38.558,39.272,40.007,40.914,42.010,43.215,44.500,45.930,47.515,49.084,50.427,51.524,52.500,53.347,53.909,
-54.183,54.442,54.848,55.142,54.977,54.543,54.575,55.635,57.527,59.486,60.831,61.444,61.763,62.371,63.440,64.540,
-65.190,65.616,66.603,68.231,68.973,66.690,60.887,53.796,48.865,48.034,50.471,53.775,56.137,57.316,57.958,58.504,
-58.901,59.026,58.961,58.838,58.671,58.456,58.270,58.147,57.992,57.737,57.490,57.369,57.307,57.181,57.036,56.999,
-57.024,56.973,56.905,57.004,57.220,57.316,57.355,57.727,58.483,59.024,58.826,58.216,57.937,58.121,58.265,58.162,
-58.177,58.456,58.570,58.342,58.377,59.027,59.300,57.797,54.766,52.285,52.021,53.483,54.946,55.451,55.182,54.342,
-52.701,50.417,48.448,47.674,47.985,48.596,48.979,49.119,49.139,49.112,49.203,49.585,50.178,50.749,51.311,52.119,
-53.168,54.004,54.206,53.872,53.392,52.906,52.283,51.547,50.979,50.694,50.400,49.807,49.075,48.616,48.492,48.292,
-47.660,46.715,45.824,45.170,44.713,44.429,44.321,44.247,44.008,43.635,43.376,43.310,43.211,42.888,42.475,42.198,
-42.048,41.872,41.657,41.494,41.355,41.122,40.821,40.579,40.406,40.226,40.074,39.975,39.698,39.020,38.273,38.143,
-38.701,39.100,38.612,37.610,37.012,36.991,36.875,36.280,35.631,35.334,35.076,34.414,33.673,33.650,34.520,35.529,
-35.818,35.200,34.061,32.865,31.950,31.545,31.666,32.023,32.197,31.949,31.349,30.659,30.126,29.804,29.518,29.053,
-28.406,27.796,27.411,27.260,27.304,27.537,27.799,27.709,27.022,26.011,25.236,24.935,24.849,24.684,24.447,24.222,
-23.924,23.548,23.431,23.901,24.701,25.152,24.936,24.398,23.947,23.529,22.934,22.319,22.041,22.073,22.012,21.663,
-21.255,21.005,20.798,20.475,20.143,19.946,19.747,19.327,18.774,18.369,18.152,17.886,17.445,16.986,16.666,16.452,
-16.279,16.176,16.103,15.862,15.364,14.825,14.523,14.440,14.324,14.040,13.671,13.316,12.971,12.637,12.381,12.224,
-12.090,11.918,11.737,11.607,11.528,11.469,11.409,11.329,11.222,11.109,11.004,10.865,10.646,10.410,10.285,10.310,
-10.404,10.508,10.641,10.786,10.844,10.778,10.688,10.646,10.563,10.355,10.157,10.198,10.481,10.751,10.810,10.734,
-10.728,10.859,11.051,11.270,11.597,12.088,12.604,12.864,12.708,12.300,11.984,11.945,12.083,12.240,12.431,12.710,
-12.955,12.972,12.788,12.662,12.787,13.141,13.612,14.060,14.221,13.854,13.138,12.698,12.958,13.595,13.907,13.633,
-13.129,12.786,12.574,12.263,11.806,11.337,10.962,10.730,10.667,10.692,10.599,10.296,9.981,9.929,10.125,10.268,
-10.124,9.741,9.309,8.946,8.669,8.461,8.287,8.087,7.832,7.542,7.251,6.981,6.750,6.570,6.410,6.216,
-5.975,5.726,5.500,5.287,5.084,4.900,4.720,4.504,4.244,3.982,3.739,3.483,3.193,2.896,2.609,2.304,
-1.965,1.632,1.343,1.065,.748,.423,.163,-.018,-.181,-.368,-.564,-.754,-.958,-1.186,-1.412,-1.619,
--1.827,-2.058,-2.299,-2.530,-2.758,-3.007,-3.283,-3.587,-3.921,-4.279,-4.630,-4.951,-5.250,-5.550,-5.860,-6.176,
--6.502,-6.843,-7.177,-7.482,-7.775,-8.105,-8.497,-8.923,-9.338,-9.734,-10.134,-10.553,-10.987,-11.435,-11.922,-12.466,
--13.042,-13.596,-14.100,-14.566,-14.999,-15.381,-15.712,-16.058,-16.507,-17.065,-17.651,-18.185,-18.658,-19.095,-19.511,-19.923,
--20.374,-20.897,-21.459,-21.999,-22.489,-22.939,-23.354,-23.729,-24.087,-24.476,-24.913,-25.379,-25.866,-26.380,-26.897,-27.359,
--27.748,-28.111,-28.490,-28.869,-29.220,-29.567,-29.949,-30.357,-30.753,-31.134,-31.528,-31.929,-32.314,-32.688,-33.089,-33.509,
--33.895,-34.229,-34.550,-34.888,-35.215,-35.496,-35.760,-36.053,-36.370,-36.670,-36.945,-37.223,-37.513,-37.786,-38.015,-38.205,
--38.379,-38.551,-38.719,-38.879,-39.031,-39.184,-39.349,-39.517,-39.664,-39.788,-39.905,-40.020,-40.108,-40.158,-40.192,-40.231,
--40.254,-40.233,-40.183,-40.141,-40.110,-40.063,-39.984,-39.879,-39.738,-39.545,-39.309,-39.065,-38.831,-38.599,-38.372,-38.155,
--37.923,-37.639,-37.314,-36.998,-36.705,-36.399,-36.062,-35.726,-35.407,-35.079,-34.727,-34.381,-34.055,-33.698,-33.265,-32.792,
--32.341,-31.904,-31.430,-30.922,-30.430,-29.956,-29.446,-28.892,-28.368,-27.957,-27.657,-27.400,-27.111,-26.736,-26.253,-25.688,
--25.109,-24.574,-24.096,-23.658,-23.226,-22.763,-22.244,-21.687,-21.139,-20.622,-20.112,-19.588,-19.059,-18.553,-18.079,-17.630,
--17.201,-16.775,-16.332,-15.867,-15.396,-14.933,-14.479,-14.034,-13.610,-13.213,-12.841,-12.497,-12.189,-11.899,-11.580,-11.217,
--10.842,-10.492,-10.163,-9.830,-9.503,-9.205,-8.925,-8.614,-8.240,-7.821,-7.401,-7.010,-6.656,-6.322,-5.979,-5.609,
--5.219,-4.842,-4.502,-4.188,-3.867,-3.525,-3.194,-2.902,-2.618,-2.276,-1.870,-1.485,-1.185,-.929,-.639,-.316,
--.021,.260,.593,.957,1.226,1.354,1.474,1.724,2.065,2.372,2.641,2.993,3.467,3.908,4.053,3.700,
-2.842,1.769,1.051,1.273,2.658,4.868,7.169,8.826,9.508,9.473,9.344,9.570,10.063,10.390,10.258,9.717,
-8.948,8.066,7.168,6.393,5.803,5.312,4.779,4.117,3.278,2.266,1.219,.336,-.360,-1.037,-1.757,-2.319,
--2.533,-2.499,-2.442,-2.435,-2.482,-2.721,-3.263,-3.952,-4.541,-5.033,-5.553,-6.004,-6.207,-6.309,-6.564,-6.771,
--6.539,-6.195,-6.574,-7.427,-6.886,-3.534,1.322,4.573,4.545,2.388,.000,-2.300,-5.313,-9.002,-12.175,-13.939,
--14.530,-14.583,-14.360,-13.972,-13.736,-13.847,-14.075,-14.180,-14.335,-14.794,-15.387,-15.800,-16.188,-16.999,-18.175,-18.983,
--18.865,-18.172,-17.840,-18.516,-20.164,-22.338,-24.560,-26.501,-28.017,-29.111,-29.800,-30.032,-29.838,-29.540,-29.656,-30.520,
--32.054,-33.937,-35.905,-37.840,-39.644,-41.148,-42.183,-42.697,-42.814,-42.797,-42.922,-43.328,-43.922,-44.439,-44.618,-44.347,
--43.694,-42.869,-42.169,-41.873,-42.110,-42.784,-43.647,-44.469,-45.137,-45.634,-45.982,-46.217,-46.372,-46.450,-46.415,-46.231,
--45.912,-45.531,-45.188,-44.962,-44.879,-44.896,-44.953,-45.023,-45.115,-45.209,-45.242,-45.186,-45.087,-45.007,-44.938,-44.820,
--44.621,-44.357,-44.056,-43.740,-43.424,-43.101,-42.744,-42.358,-41.991,-41.660,-41.297,-40.829,-40.285,-39.748,-39.221,-38.642,
--38.014,-37.421,-36.901,-36.400,-35.878,-35.362,-34.841,-34.222,-33.446,-32.575,-31.695,-30.819,-29.961,-29.206,-28.598,-28.032,
--27.377,-26.650,-25.951,-25.273,-24.512,-23.639,-22.728,-21.832,-20.966,-20.193,-19.587,-19.086,-18.556,-17.997,-17.555,-17.265,
--16.958,-16.496,-15.952,-15.460,-15.010,-14.531,-14.054,-13.645,-13.259,-12.799,-12.271,-11.757,-11.265,-10.752,-10.236,-9.772,
--9.323,-8.791,-8.182,-7.585,-7.021,-6.422,-5.788,-5.212,-4.725,-4.232,-3.666,-3.087,-2.562,-2.065,-1.547,-1.029,
--.549,-.080,.420,.935,1.428,1.915,2.428,2.959,3.479,3.984,4.476,4.947,5.416,5.931,6.487,7.010,
-7.458,7.883,8.340,8.801,9.220,9.633,10.089,10.550,10.945,11.292,11.665,12.079,12.491,12.903,13.360,13.851,
-14.301,14.665,14.960,15.188,15.324,15.382,15.414,15.445,15.478,15.547,15.702,15.931,16.182,16.457,16.802,17.215,
-17.643,18.065,18.456,18.728,18.869,19.159,19.998,21.447,23.108,24.582,25.855,27.054,28.039,28.513,28.495,28.386,
-28.538,28.952,29.435,29.857,30.201,30.533,30.990,31.626,32.223,32.441,32.285,32.217,32.645,33.421,34.030,34.181,
-33.995,33.675,33.262,32.754,32.267,31.941,31.789,31.731,31.710,31.710,31.706,31.661,31.551,31.354,31.040,30.615,
-30.126,29.626,29.144,28.727,28.428,28.258,28.176,28.171,28.265,28.409,28.444,28.251,27.887,27.516,27.218,26.962,
-26.699,26.423,26.131,25.827,25.552,25.353,25.192,24.969,24.648,24.311,24.057,23.888,23.736,23.546,23.296,23.245,
-22.804,22.369,22.045,21.905,21.986,22.316,22.875,23.525,24.027,24.201,24.057,23.764,23.493,23.316,23.197,23.061,
-22.890,22.771,22.807,22.963,23.076,23.056,23.010,23.098,23.317,23.527,23.651,23.720,23.745,23.685,23.575,23.559,
-23.698,23.845,23.792,23.490,23.059,22.613,22.155,21.615,20.945,20.186,19.484,19.013,18.810,18.737,18.633,18.476,
-18.321,18.130,17.789,17.273,16.687,16.113,15.511,14.821,14.096,13.461,12.980,12.603,12.210,11.701,11.052,10.336,
-9.674,9.146,8.737,8.373,7.972,7.474,6.876,6.250,5.687,5.195,4.699,4.154,3.601,3.103,2.661,2.245,
-1.861,1.537,1.271,1.032,.788,.532,.300,.185,.253,.419,.483,.352,.163,.094,.123,.060,
--.194,-.531,-.784,-.910,-1.012,-1.224,-1.580,-1.958,-2.184,-2.248,-2.360,-2.712,-3.232,-3.691,-4.021,-4.371,
--4.823,-5.238,-5.428,-5.368,-5.144,-4.833,-4.514,-4.325,-4.357,-4.571,-4.867,-5.186,-5.466,-5.640,-5.780,-6.115,
--6.723,-7.298,-7.418,-7.019,-6.396,-5.753,-5.015,-4.134,-3.364,-3.072,-3.416,-4.267,-5.286,-5.980,-5.916,-5.161,
--4.406,-4.385,-5.143,-6.052,-6.540,-6.617,-6.679,-7.024,-7.670,-8.435,-9.008,-9.093,-8.713,-8.356,-8.602,-9.534,
--10.639,-11.368,-11.675,-11.910,-12.313,-12.769,-13.053,-13.138,-13.206,-13.444,-13.935,-14.672,-15.593,-16.601,-17.616,-18.591,
--19.462,-20.131,-20.585,-20.960,-21.380,-21.798,-22.136,-22.537,-23.247,-24.196,-24.945,-25.206,-25.220,-25.400,-25.762,-26.003,
--26.071,-26.307,-26.987,-27.983,-29.004,-29.929,-30.773,-31.530,-32.253,-33.132,-34.294,-35.638,-37.065,-38.725,-40.784,-42.987,
--44.758,-45.775,-46.248,-46.593,-47.039,-47.607,-48.229,-48.759,-49.042,-49.164,-49.466,-50.112,-50.755,-50.850,-50.273,-49.458,
--48.955,-49.006,-49.493,-50.084,-50.397,-50.278,-50.029,-50.200,-51.034,-52.232,-53.351,-54.300,-55.272,-56.344,-57.365,-58.246,
--59.113,-60.104,-61.168,-62.172,-63.088,-63.981,-64.878,-65.748,-66.592,-67.452,-68.322,-69.144,-69.892,-70.610,-71.356,-72.147,
--72.973,-73.830,-74.713,-75.604,-76.474,-77.301,-78.084,-78.854,-79.662,-80.523,-81.393,-82.216,-82.985,-83.739,-84.493,-85.224,
--85.924,-86.622,-87.338,-88.058,-88.774,-89.493,-90.194,-90.811,-91.310,-91.740,-92.151,-92.507,-92.731,-92.830,-92.896,-92.995,
--93.151,-93.404,-93.802,-94.299,-94.772,-95.193,-95.676,-96.264,-96.773,-96.984,-96.898,-96.633,-96.155,-95.365,-94.504,-94.149,
--94.581,-95.307,-95.506,-94.946,-94.211,-94.002,-94.409,-94.971,-95.239,-95.112,-94.750,-94.374,-94.181,-94.287,-94.700,-95.362,
--96.220,-97.200,-98.114,-98.696,-98.776,-98.398,-97.760,-97.072,-96.432,-95.803,-95.090,-94.271,-93.427,-92.641,-91.892,-91.100,
--90.240,-89.348,-88.488,-87.734,-87.132,-86.566,-85.749,-84.493,-82.955,-81.484,-80.223,-79.037,-77.787,-76.489,-75.154,-73.698,
--72.119,-70.562,-69.109,-67.692,-66.310,-65.153,-64.318,-63.641,-63.018,-62.675,-62.791,-63.019,-62.775,-61.977,-61.163,-60.877,
--61.282,-62.287,-63.527,-64.108,-62.973,-59.977,-56.273,-53.223,-51.147,-49.491,-47.932,-46.716,-45.980,-45.329,-44.298,-42.842,
--41.182,-39.470,-37.797,-36.305,-35.064,-33.999,-33.066,-32.325,-31.715,-30.960,-29.907,-28.790,-27.933,-27.329,-26.721,-26.009,
--25.320,-24.723,-24.114,-23.412,-22.661,-21.893,-21.059,-20.147,-19.229,-18.331,-17.375,-16.318,-15.259,-14.336,-13.575,-12.909,
--12.257,-11.556,-10.766,-9.896,-8.986,-8.017,-6.918,-5.698,-4.515,-3.535,-2.748,-1.972,-1.051,.012,1.104,2.161,
-3.256,4.510,5.927,7.322,8.458,9.253,9.842,10.440,11.182,12.076,13.055,14.060,15.084,16.144,17.237,18.354,
-19.532,20.818,22.119,23.234,24.140,25.144,26.555,28.204,29.549,30.329,30.904,31.791,33.033,34.245,35.191,36.027,
-36.971,37.956,38.773,39.427,40.175,41.243,42.597,44.036,45.430,46.807,48.224,49.615,50.824,51.759,52.442,52.929,
-53.303,53.751,54.462,55.288,55.682,55.265,54.490,54.455,55.844,58.157,60.180,61.182,61.505,61.996,63.055,64.318,
-65.148,65.345,65.409,66.091,67.509,68.538,67.283,62.686,55.955,50.201,48.144,49.959,53.437,56.207,57.580,58.264,
-58.897,59.397,59.523,59.419,59.350,59.301,59.127,58.883,58.718,58.592,58.363,58.062,57.856,57.768,57.689,57.597,
-57.568,57.570,57.517,57.490,57.650,57.917,58.053,58.122,58.463,59.062,59.345,58.948,58.336,58.209,58.530,58.709,
-58.609,58.679,59.044,59.198,58.948,58.920,59.460,59.571,57.953,55.030,53.008,53.527,55.930,58.236,59.231,59.003,
-57.941,56.179,54.084,52.468,51.868,51.978,52.117,51.990,51.717,51.416,51.129,51.022,51.259,51.704,52.092,52.488,
-53.215,54.260,55.072,55.174,54.709,54.135,53.580,52.864,52.043,51.467,51.218,50.870,50.110,49.327,49.163,49.567,
-49.694,48.871,47.358,45.964,45.162,44.841,44.724,44.660,44.521,44.177,43.710,43.409,43.403,43.481,43.394,43.165,
-42.929,42.661,42.283,41.899,41.678,41.562,41.340,41.005,40.772,40.745,40.788,40.761,40.636,40.336,39.771,39.132,
-38.851,39.038,39.218,38.915,38.293,37.864,37.716,37.453,36.879,36.286,35.909,35.502,34.783,34.050,33.958,34.703,
-35.714,36.200,35.810,34.750,33.491,32.504,32.124,32.410,33.048,33.478,33.256,32.383,31.296,30.473,30.021,29.660,
-29.122,28.454,27.885,27.542,27.416,27.535,27.900,28.236,28.061,27.186,26.013,25.155,24.809,24.699,24.559,24.428,
-24.435,24.559,24.751,25.073,25.491,25.691,25.383,24.753,24.294,24.144,23.914,23.305,22.590,22.217,22.164,22.026,
-21.649,21.281,21.093,20.925,20.630,20.348,20.212,20.048,19.638,19.112,18.768,18.611,18.365,17.920,17.468,17.169,
-16.945,16.697,16.467,16.259,15.924,15.392,14.887,14.688,14.755,14.779,14.539,14.081,13.564,13.094,12.725,12.482,
-12.330,12.198,12.059,11.936,11.849,11.796,11.778,11.763,11.678,11.496,11.293,11.141,10.979,10.712,10.402,10.217,
-10.204,10.256,10.312,10.429,10.598,10.681,10.614,10.521,10.505,10.463,10.269,10.031,9.987,10.187,10.467,10.717,
-10.989,11.304,11.518,11.499,11.341,11.309,11.564,11.990,12.297,12.295,12.072,11.887,11.891,12.017,12.167,12.371,
-12.664,12.915,12.959,12.856,12.828,12.973,13.231,13.619,14.181,14.665,14.575,13.798,12.939,12.722,13.165,13.639,
-13.669,13.353,13.007,12.737,12.483,12.221,11.934,11.564,11.154,10.894,10.869,10.879,10.683,10.336,10.117,10.143,
-10.241,10.196,9.961,9.606,9.210,8.844,8.571,8.392,8.241,8.068,7.878,7.675,7.439,7.180,6.948,6.760,
-6.566,6.326,6.065,5.829,5.629,5.452,5.288,5.114,4.899,4.640,4.373,4.114,3.838,3.532,3.234,2.975,
-2.727,2.450,2.152,1.855,1.544,1.202,.866,.591,.375,.174,-.031,-.223,-.409,-.620,-.857,-1.086,
--1.290,-1.496,-1.726,-1.962,-2.189,-2.420,-2.674,-2.942,-3.218,-3.525,-3.879,-4.252,-4.597,-4.905,-5.199,-5.508,
--5.842,-6.201,-6.575,-6.934,-7.256,-7.563,-7.899,-8.284,-8.688,-9.074,-9.442,-9.824,-10.237,-10.680,-11.154,-11.671,
--12.226,-12.784,-13.303,-13.782,-14.243,-14.682,-15.067,-15.396,-15.740,-16.175,-16.702,-17.251,-17.774,-18.279,-18.779,-19.257,
--19.702,-20.154,-20.653,-21.188,-21.714,-22.214,-22.690,-23.129,-23.509,-23.846,-24.184,-24.557,-24.975,-25.451,-25.981,-26.505,
--26.950,-27.318,-27.683,-28.088,-28.493,-28.863,-29.229,-29.629,-30.039,-30.413,-30.766,-31.143,-31.533,-31.896,-32.244,-32.626,
--33.038,-33.419,-33.749,-34.083,-34.451,-34.806,-35.100,-35.365,-35.659,-35.978,-36.278,-36.552,-36.835,-37.133,-37.408,-37.626,
--37.801,-37.965,-38.138,-38.318,-38.491,-38.640,-38.778,-38.934,-39.112,-39.274,-39.394,-39.493,-39.604,-39.715,-39.792,-39.834,
--39.862,-39.875,-39.851,-39.799,-39.751,-39.710,-39.648,-39.555,-39.452,-39.334,-39.171,-38.960,-38.738,-38.527,-38.311,-38.076,
--37.837,-37.599,-37.335,-37.033,-36.725,-36.446,-36.178,-35.885,-35.564,-35.223,-34.864,-34.499,-34.152,-33.820,-33.445,-32.993,
--32.519,-32.094,-31.699,-31.248,-30.707,-30.139,-29.605,-29.093,-28.558,-28.008,-27.509,-27.124,-26.848,-26.600,-26.279,-25.854,
--25.382,-24.929,-24.498,-24.059,-23.611,-23.174,-22.734,-22.247,-21.708,-21.161,-20.632,-20.102,-19.556,-19.021,-18.526,-18.073,
--17.647,-17.240,-16.836,-16.408,-15.955,-15.503,-15.066,-14.629,-14.183,-13.743,-13.318,-12.905,-12.521,-12.198,-11.924,-11.630,
--11.268,-10.876,-10.522,-10.213,-9.917,-9.618,-9.320,-9.001,-8.631,-8.225,-7.826,-7.447,-7.062,-6.661,-6.272,-5.909,
--5.558,-5.210,-4.881,-4.574,-4.248,-3.876,-3.492,-3.167,-2.917,-2.683,-2.393,-2.034,-1.649,-1.278,-.933,-.620,
--.349,-.105,.156,.457,.749,.967,1.138,1.368,1.717,2.119,2.463,2.718,2.958,3.298,3.784,4.310,
-4.589,4.310,3.443,2.416,1.948,2.613,4.445,6.858,8.951,10.068,10.251,10.133,10.346,10.991,11.686,11.975,
-11.617,10.627,9.258,7.944,7.040,6.542,6.138,5.560,4.770,3.831,2.792,1.751,.847,.110,-.554,-1.141,
--1.480,-1.491,-1.363,-1.328,-1.427,-1.634,-2.035,-2.688,-3.437,-4.092,-4.641,-5.062,-5.132,-4.783,-4.468,-4.677,
--5.173,-5.327,-5.239,-5.727,-6.821,-7.062,-5.136,-1.787,.824,1.516,.909,-.212,-2.201,-5.576,-9.547,-12.516,
--13.789,-14.019,-13.995,-13.811,-13.347,-12.865,-12.688,-12.732,-12.788,-12.970,-13.493,-14.202,-14.756,-15.179,-15.784,-16.556,
--17.003,-16.824,-16.432,-16.594,-17.694,-19.515,-21.614,-23.689,-25.602,-27.264,-28.560,-29.365,-29.635,-29.559,-29.593,-30.223,
--31.641,-33.667,-35.974,-38.312,-40.515,-42.400,-43.739,-44.375,-44.342,-43.893,-43.383,-43.082,-43.051,-43.188,-43.362,-43.460,
--43.349,-42.899,-42.150,-41.401,-41.040,-41.261,-41.955,-42.857,-43.728,-44.429,-44.910,-45.222,-45.485,-45.774,-46.036,-46.146,
--46.033,-45.726,-45.315,-44.920,-44.676,-44.653,-44.776,-44.890,-44.932,-44.976,-45.086,-45.194,-45.187,-45.065,-44.933,-44.848,
--44.761,-44.602,-44.358,-44.061,-43.750,-43.447,-43.146,-42.810,-42.419,-42.011,-41.624,-41.238,-40.803,-40.327,-39.857,-39.382,
--38.836,-38.216,-37.601,-37.038,-36.488,-35.920,-35.374,-34.861,-34.307,-33.642,-32.898,-32.135,-31.341,-30.495,-29.649,-28.871,
--28.138,-27.384,-26.618,-25.895,-25.186,-24.396,-23.483,-22.490,-21.473,-20.497,-19.660,-19.008,-18.434,-17.809,-17.191,-16.759,
--16.518,-16.241,-15.773,-15.210,-14.710,-14.259,-13.773,-13.286,-12.888,-12.546,-12.153,-11.690,-11.219,-10.740,-10.214,-9.677,
--9.203,-8.763,-8.256,-7.679,-7.123,-6.611,-6.056,-5.433,-4.843,-4.352,-3.896,-3.391,-2.853,-2.336,-1.832,-1.309,
--.776,-.264,.236,.741,1.238,1.713,2.185,2.669,3.151,3.620,4.091,4.563,5.017,5.475,5.988,6.548,
-7.069,7.514,7.948,8.422,8.886,9.292,9.687,10.121,10.537,10.857,11.128,11.457,11.852,12.241,12.624,13.074,
-13.584,14.048,14.408,14.717,15.025,15.289,15.451,15.508,15.493,15.446,15.435,15.538,15.773,16.080,16.420,16.806,
-17.251,17.722,18.158,18.498,18.710,18.907,19.399,20.446,21.923,23.393,24.593,25.669,26.825,27.904,28.539,28.660,
-28.611,28.781,29.266,29.893,30.428,30.728,30.865,31.112,31.661,32.321,32.653,32.504,32.224,32.257,32.651,33.106,
-33.384,33.473,33.413,33.192,32.854,32.528,32.299,32.125,31.957,31.837,31.832,31.914,31.971,31.909,31.699,31.362,
-30.937,30.464,29.962,29.454,28.991,28.628,28.368,28.180,28.072,28.066,28.108,28.057,27.837,27.528,27.271,27.102,
-26.957,26.778,26.558,26.297,26.004,25.713,25.455,25.194,24.864,24.482,24.163,23.988,23.912,23.814,23.597,23.245,
-23.262,22.697,22.208,21.948,21.963,22.221,22.678,23.276,23.883,24.309,24.439,24.317,24.082,23.847,23.650,23.475,
-23.284,23.082,22.949,22.965,23.077,23.150,23.205,23.491,24.169,24.996,25.477,25.367,24.881,24.393,24.075,23.912,
-23.888,24.005,24.157,24.154,23.894,23.435,22.881,22.266,21.569,20.790,20.009,19.379,19.019,18.876,18.740,18.467,
-18.132,17.894,17.735,17.459,16.953,16.328,15.735,15.181,14.584,13.955,13.404,12.979,12.599,12.146,11.574,10.915,
-10.228,9.565,8.965,8.435,7.937,7.408,6.817,6.205,5.661,5.220,4.811,4.325,3.734,3.114,2.551,2.063,
-1.623,1.207,.802,.419,.094,-.143,-.313,-.434,-.453,-.301,-.053,.080,-.009,-.181,-.235,-.183,
--.226,-.485,-.860,-1.159,-1.302,-1.378,-1.545,-1.885,-2.305,-2.624,-2.790,-2.956,-3.270,-3.664,-3.968,-4.201,
--4.551,-5.088,-5.621,-5.933,-5.989,-5.881,-5.687,-5.472,-5.324,-5.282,-5.322,-5.459,-5.758,-6.151,-6.432,-6.544,
--6.735,-7.219,-7.796,-8.041,-7.791,-7.223,-6.478,-5.524,-4.444,-3.584,-3.254,-3.455,-3.994,-4.674,-5.241,-5.372,
--5.010,-4.602,-4.722,-5.473,-6.420,-7.112,-7.431,-7.489,-7.431,-7.447,-7.703,-8.099,-8.274,-8.083,-7.950,-8.479,
--9.728,-11.086,-11.934,-12.253,-12.455,-12.804,-13.186,-13.397,-13.437,-13.466,-13.619,-13.957,-14.519,-15.310,-16.258,-17.245,
--18.174,-18.961,-19.549,-19.997,-20.486,-21.127,-21.805,-22.360,-22.862,-23.517,-24.265,-24.752,-24.822,-24.804,-25.096,-25.621,
--25.992,-26.140,-26.443,-27.205,-28.290,-29.376,-30.341,-31.230,-32.070,-32.910,-33.899,-35.131,-36.516,-37.997,-39.753,-41.930,
--44.219,-46.006,-46.979,-47.396,-47.700,-48.091,-48.550,-49.045,-49.528,-49.899,-50.140,-50.411,-50.829,-51.213,-51.239,-50.822,
--50.226,-49.807,-49.736,-49.947,-50.220,-50.329,-50.261,-50.298,-50.753,-51.613,-52.563,-53.401,-54.244,-55.263,-56.373,-57.367,
--58.224,-59.123,-60.158,-61.228,-62.220,-63.155,-64.106,-65.064,-65.982,-66.871,-67.776,-68.689,-69.546,-70.306,-71.002,-71.707,
--72.476,-73.318,-74.195,-75.068,-75.927,-76.782,-77.621,-78.426,-79.219,-80.052,-80.936,-81.810,-82.622,-83.377,-84.103,-84.798,
--85.465,-86.154,-86.906,-87.675,-88.392,-89.062,-89.756,-90.481,-91.153,-91.715,-92.200,-92.648,-93.025,-93.274,-93.408,-93.479,
--93.524,-93.595,-93.795,-94.190,-94.693,-95.163,-95.602,-96.131,-96.744,-97.219,-97.395,-97.369,-97.286,-97.022,-96.367,-95.506,
--95.019,-95.199,-95.598,-95.522,-94.895,-94.340,-94.393,-94.907,-95.356,-95.461,-95.327,-95.118,-94.909,-94.812,-94.994,-95.467,
--96.033,-96.536,-97.053,-97.712,-98.390,-98.742,-98.544,-97.918,-97.193,-96.580,-96.029,-95.378,-94.583,-93.754,-92.983,-92.229,
--91.399,-90.478,-89.525,-88.595,-87.744,-87.034,-86.408,-85.613,-84.424,-82.928,-81.449,-80.170,-78.984,-77.744,-76.453,-75.147,
--73.759,-72.239,-70.662,-69.107,-67.568,-66.099,-64.878,-63.975,-63.260,-62.696,-62.504,-62.738,-62.916,-62.474,-61.526,-60.766,
--60.660,-61.136,-62.011,-63.112,-63.776,-62.918,-60.131,-56.380,-53.093,-50.767,-48.947,-47.311,-46.101,-45.439,-44.847,-43.775,
--42.208,-40.495,-38.844,-37.265,-35.792,-34.497,-33.385,-32.445,-31.694,-31.032,-30.204,-29.110,-28.006,-27.210,-26.678,-26.104,
--25.356,-24.585,-23.931,-23.338,-22.697,-21.983,-21.202,-20.337,-19.424,-18.542,-17.696,-16.780,-15.734,-14.647,-13.673,-12.874,
--12.188,-11.506,-10.747,-9.910,-9.052,-8.198,-7.278,-6.215,-5.068,-3.999,-3.104,-2.312,-1.483,-.535,.523,1.634,
-2.760,3.932,5.229,6.637,7.962,8.974,9.647,10.194,10.843,11.660,12.597,13.604,14.662,15.751,16.860,17.990,
-19.156,20.385,21.697,23.013,24.161,25.088,26.023,27.248,28.674,29.885,30.689,31.410,32.467,33.808,35.017,35.892,
-36.634,37.462,38.314,39.034,39.686,40.515,41.686,43.171,44.822,46.448,47.870,49.009,49.922,50.689,51.300,51.708,
-52.010,52.501,53.454,54.779,55.887,56.059,55.175,54.136,54.297,56.208,58.962,61.021,61.728,61.816,62.380,63.619,
-64.799,65.220,64.928,64.532,64.685,65.659,66.928,66.959,64.066,58.234,51.998,48.735,49.711,53.115,56.182,57.773,
-58.561,59.316,59.925,60.052,59.894,59.838,59.859,59.706,59.414,59.221,59.123,58.912,58.579,58.349,58.309,58.308,
-58.246,58.186,58.164,58.131,58.137,58.300,58.552,58.695,58.783,59.099,59.622,59.872,59.575,59.146,59.133,59.425,
-59.510,59.339,59.348,59.617,59.703,59.504,59.585,60.125,60.112,58.450,55.751,54.146,55.067,57.765,60.304,61.473,
-61.322,60.335,58.857,57.274,56.076,55.428,55.025,54.538,53.968,53.417,52.838,52.240,51.897,52.042,52.490,52.894,
-53.264,53.887,54.726,55.291,55.253,54.850,54.473,54.105,53.500,52.736,52.156,51.782,51.226,50.400,49.908,50.317,
-51.174,51.252,49.882,47.723,46.013,45.314,45.241,45.197,44.975,44.652,44.294,43.955,43.754,43.751,43.826,43.836,
-43.767,43.630,43.333,42.829,42.294,41.954,41.788,41.591,41.319,41.151,41.195,41.314,41.325,41.182,40.910,40.508,
-40.061,39.754,39.651,39.551,39.242,38.798,38.446,38.218,37.929,37.485,37.003,36.558,36.027,35.319,34.658,34.463,
-34.926,35.775,36.431,36.396,35.562,34.285,33.178,32.754,33.095,33.761,34.049,33.494,32.254,30.991,30.268,30.042,
-29.821,29.260,28.493,27.860,27.518,27.429,27.569,27.908,28.204,28.084,27.425,26.540,25.860,25.494,25.232,24.907,
-24.619,24.590,24.941,25.625,26.444,27.021,26.932,26.093,24.966,24.173,23.861,23.631,23.141,22.549,22.198,22.084,
-21.913,21.584,21.290,21.146,21.015,20.787,20.565,20.421,20.202,19.783,19.335,19.094,18.987,18.743,18.311,17.898,
-17.613,17.330,16.962,16.613,16.343,16.010,15.514,15.038,14.845,14.927,14.993,14.793,14.324,13.757,13.261,12.917,
-12.684,12.470,12.249,12.089,12.035,12.026,11.997,11.969,11.962,11.904,11.729,11.506,11.327,11.146,10.870,10.556,
-10.360,10.300,10.255,10.205,10.259,10.421,10.521,10.463,10.373,10.363,10.338,10.168,9.939,9.853,9.956,10.171,
-10.509,11.031,11.606,11.917,11.793,11.436,11.216,11.331,11.679,12.006,12.127,12.064,11.979,11.986,12.054,12.128,
-12.247,12.448,12.632,12.685,12.675,12.750,12.896,13.023,13.280,13.940,14.845,15.302,14.819,13.771,13.025,13.006,
-13.388,13.636,13.546,13.229,12.890,12.716,12.760,12.797,12.491,11.834,11.239,11.056,11.141,11.085,10.756,10.397,
-10.242,10.252,10.240,10.080,9.761,9.355,8.981,8.733,8.587,8.449,8.287,8.145,8.024,7.848,7.583,7.300,
-7.066,6.861,6.632,6.381,6.153,5.962,5.798,5.648,5.491,5.293,5.041,4.770,4.507,4.239,3.952,3.671,
-3.425,3.194,2.935,2.639,2.323,1.996,1.664,1.351,1.080,.835,.595,.367,.168,-.023,-.242,-.481,
--.706,-.913,-1.133,-1.374,-1.608,-1.830,-2.070,-2.344,-2.621,-2.883,-3.161,-3.493,-3.865,-4.224,-4.540,-4.836,
--5.149,-5.500,-5.890,-6.293,-6.672,-7.013,-7.338,-7.686,-8.066,-8.453,-8.824,-9.185,-9.554,-9.949,-10.385,-10.873,
--11.405,-11.948,-12.463,-12.936,-13.394,-13.859,-14.317,-14.728,-15.096,-15.479,-15.924,-16.412,-16.890,-17.348,-17.831,-18.360,
--18.901,-19.411,-19.893,-20.373,-20.859,-21.351,-21.855,-22.366,-22.841,-23.243,-23.587,-23.922,-24.285,-24.687,-25.144,-25.651,
--26.149,-26.569,-26.924,-27.287,-27.688,-28.086,-28.456,-28.839,-29.262,-29.674,-30.028,-30.364,-30.748,-31.159,-31.530,-31.859,
--32.206,-32.586,-32.948,-33.274,-33.615,-33.996,-34.360,-34.655,-34.915,-35.204,-35.520,-35.824,-36.114,-36.416,-36.722,-36.986,
--37.190,-37.361,-37.533,-37.721,-37.916,-38.093,-38.232,-38.350,-38.497,-38.688,-38.875,-39.006,-39.102,-39.211,-39.326,-39.399,
--39.423,-39.438,-39.456,-39.448,-39.402,-39.343,-39.280,-39.193,-39.082,-38.976,-38.879,-38.756,-38.594,-38.426,-38.264,-38.066,
--37.806,-37.527,-37.278,-37.042,-36.774,-36.477,-36.193,-35.934,-35.668,-35.368,-35.036,-34.678,-34.305,-33.940,-33.583,-33.194,
--32.741,-32.267,-31.839,-31.459,-31.049,-30.559,-30.025,-29.520,-29.057,-28.573,-28.021,-27.441,-26.935,-26.562,-26.262,-25.921,
--25.504,-25.082,-24.709,-24.343,-23.916,-23.441,-22.982,-22.544,-22.078,-21.571,-21.062,-20.565,-20.050,-19.502,-18.962,-18.471,
--18.026,-17.608,-17.210,-16.815,-16.393,-15.945,-15.505,-15.089,-14.675,-14.250,-13.830,-13.422,-13.007,-12.594,-12.227,-11.919,
--11.611,-11.254,-10.875,-10.532,-10.231,-9.944,-9.659,-9.363,-9.018,-8.606,-8.185,-7.823,-7.498,-7.129,-6.695,-6.261,
--5.877,-5.531,-5.206,-4.911,-4.633,-4.316,-3.937,-3.552,-3.227,-2.957,-2.689,-2.400,-2.098,-1.775,-1.416,-1.044,
--.712,-.433,-.158,.143,.429,.645,.811,1.006,1.283,1.629,2.017,2.430,2.826,3.146,3.403,3.733,
-4.240,4.791,5.029,4.665,3.805,3.006,2.988,4.165,6.285,8.510,9.992,10.496,10.498,10.701,11.474,12.657,
-13.705,13.967,13.072,11.279,9.382,8.084,7.437,6.972,6.287,5.358,4.350,3.397,2.591,1.984,1.520,1.113,
-.841,.878,1.166,1.347,1.139,.610,-.035,-.758,-1.612,-2.539,-3.408,-4.117,-4.462,-4.150,-3.268,-2.520,
--2.569,-3.219,-3.758,-4.073,-4.783,-6.042,-6.871,-6.238,-4.390,-2.503,-1.312,-.828,-1.266,-3.252,-6.712,-10.293,
--12.556,-13.415,-13.812,-14.225,-14.191,-13.304,-12.000,-11.068,-10.821,-11.084,-11.684,-12.551,-13.484,-14.211,-14.697,-15.115,
--15.501,-15.694,-15.699,-15.871,-16.594,-17.886,-19.444,-21.002,-22.521,-24.075,-25.661,-27.127,-28.268,-29.010,-29.557,-30.311,
--31.586,-33.406,-35.578,-37.900,-40.218,-42.334,-43.976,-44.916,-45.096,-44.655,-43.883,-43.101,-42.514,-42.133,-41.892,-41.789,
--41.849,-41.960,-41.881,-41.503,-41.013,-40.735,-40.837,-41.270,-41.915,-42.670,-43.403,-43.968,-44.354,-44.704,-45.134,-45.566,
--45.819,-45.808,-45.589,-45.263,-44.928,-44.711,-44.704,-44.844,-44.943,-44.903,-44.829,-44.859,-44.976,-45.042,-44.995,-44.895,
--44.800,-44.691,-44.527,-44.308,-44.051,-43.760,-43.449,-43.135,-42.806,-42.426,-41.998,-41.566,-41.154,-40.741,-40.318,-39.904,
--39.489,-39.021,-38.477,-37.898,-37.320,-36.728,-36.109,-35.505,-34.948,-34.388,-33.761,-33.071,-32.354,-31.595,-30.757,-29.859,
--28.963,-28.091,-27.227,-26.389,-25.612,-24.878,-24.114,-23.259,-22.298,-21.257,-20.232,-19.366,-18.702,-18.104,-17.436,-16.782,
--16.334,-16.079,-15.775,-15.271,-14.683,-14.175,-13.723,-13.229,-12.718,-12.283,-11.904,-11.488,-11.022,-10.561,-10.095,-9.580,
--9.051,-8.585,-8.159,-7.680,-7.147,-6.657,-6.228,-5.759,-5.200,-4.635,-4.151,-3.713,-3.242,-2.729,-2.212,-1.698,
--1.173,-.643,-.121,.395,.903,1.382,1.838,2.305,2.785,3.245,3.683,4.134,4.600,5.047,5.484,5.968,
-6.499,7.004,7.458,7.927,8.442,8.931,9.343,9.738,10.173,10.574,10.858,11.087,11.388,11.770,12.145,12.509,
-12.934,13.406,13.813,14.136,14.489,14.935,15.365,15.636,15.738,15.745,15.713,15.686,15.747,15.961,16.294,16.671,
-17.071,17.529,18.041,18.518,18.852,19.037,19.260,19.823,20.878,22.227,23.488,24.494,25.424,26.483,27.564,28.363,
-28.759,28.949,29.229,29.735,30.376,30.923,31.180,31.208,31.335,31.821,32.506,32.917,32.780,32.309,31.937,31.898,
-32.141,32.510,32.863,33.072,33.081,32.974,32.880,32.806,32.657,32.416,32.224,32.222,32.379,32.523,32.491,32.235,
-31.810,31.303,30.776,30.250,29.736,29.272,28.898,28.607,28.368,28.188,28.090,28.032,27.905,27.653,27.355,27.132,
-27.018,26.942,26.828,26.647,26.407,26.134,25.859,25.588,25.278,24.899,24.509,24.225,24.105,24.078,23.992,23.727,
-23.262,23.396,22.732,22.226,22.072,22.270,22.687,23.203,23.749,24.243,24.572,24.665,24.559,24.350,24.116,23.891,
-23.675,23.455,23.247,23.121,23.123,23.174,23.187,23.327,23.984,25.291,26.731,27.459,27.091,26.037,25.010,24.372,
-24.058,23.944,24.029,24.274,24.466,24.363,23.888,23.140,22.266,21.369,20.523,19.807,19.315,19.073,18.949,18.706,
-18.233,17.685,17.296,17.078,16.821,16.379,15.845,15.363,14.917,14.409,13.858,13.381,12.997,12.580,12.032,11.397,
-10.769,10.162,9.531,8.874,8.226,7.588,6.923,6.230,5.596,5.098,4.703,4.281,3.733,3.077,2.407,1.797,
-1.274,.827,.425,.026,-.362,-.656,-.790,-.804,-.788,-.744,-.598,-.368,-.209,-.231,-.353,-.438,
--.488,-.637,-.941,-1.294,-1.542,-1.639,-1.672,-1.794,-2.093,-2.506,-2.890,-3.200,-3.532,-3.932,-4.267,-4.406,
--4.475,-4.744,-5.291,-5.909,-6.365,-6.599,-6.651,-6.557,-6.380,-6.220,-6.110,-6.029,-6.062,-6.362,-6.883,-7.315,
--7.460,-7.506,-7.751,-8.164,-8.444,-8.395,-7.994,-7.196,-5.976,-4.625,-3.656,-3.316,-3.393,-3.605,-3.921,-4.356,
--4.711,-4.800,-4.783,-5.007,-5.578,-6.310,-7.018,-7.591,-7.844,-7.618,-7.093,-6.732,-6.768,-6.987,-7.193,-7.638,
--8.707,-10.262,-11.641,-12.343,-12.500,-12.568,-12.777,-13.031,-13.211,-13.358,-13.548,-13.791,-14.095,-14.535,-15.173,-15.971,
--16.834,-17.678,-18.427,-19.026,-19.522,-20.093,-20.850,-21.691,-22.443,-23.114,-23.820,-24.473,-24.790,-24.720,-24.629,-24.882,
--25.378,-25.763,-26.007,-26.471,-27.385,-28.545,-29.620,-30.533,-31.406,-32.323,-33.329,-34.512,-35.913,-37.452,-39.094,-40.987,
--43.198,-45.393,-47.037,-47.944,-48.418,-48.826,-49.233,-49.547,-49.804,-50.133,-50.557,-50.982,-51.335,-51.593,-51.712,-51.647,
--51.434,-51.161,-50.887,-50.642,-50.475,-50.418,-50.448,-50.571,-50.884,-51.447,-52.149,-52.823,-53.492,-54.332,-55.377,-56.438,
--57.355,-58.204,-59.146,-60.186,-61.212,-62.189,-63.181,-64.209,-65.210,-66.152,-67.075,-68.017,-68.944,-69.805,-70.585,-71.305,
--72.016,-72.782,-73.636,-74.539,-75.422,-76.272,-77.117,-77.956,-78.760,-79.552,-80.394,-81.292,-82.167,-82.963,-83.704,-84.418,
--85.090,-85.734,-86.431,-87.221,-88.018,-88.721,-89.360,-90.034,-90.752,-91.423,-92.004,-92.538,-93.038,-93.441,-93.713,-93.894,
--94.011,-94.045,-94.051,-94.190,-94.566,-95.074,-95.553,-96.015,-96.586,-97.221,-97.681,-97.844,-97.858,-97.859,-97.657,-96.986,
--96.012,-95.321,-95.256,-95.487,-95.450,-95.100,-94.920,-95.214,-95.691,-95.890,-95.760,-95.598,-95.563,-95.569,-95.589,-95.767,
--96.134,-96.465,-96.601,-96.741,-97.207,-97.956,-98.532,-98.536,-98.020,-97.359,-96.810,-96.317,-95.689,-94.894,-94.075,-93.334,
--92.598,-91.734,-90.728,-89.684,-88.692,-87.786,-86.998,-86.299,-85.502,-84.384,-82.947,-81.445,-80.093,-78.863,-77.632,-76.378,
--75.123,-73.812,-72.364,-70.789,-69.147,-67.488,-65.923,-64.623,-63.636,-62.858,-62.311,-62.207,-62.513,-62.676,-62.166,-61.193,
--60.480,-60.398,-60.756,-61.406,-62.356,-63.108,-62.530,-59.998,-56.304,-52.883,-50.367,-48.410,-46.729,-45.561,-44.980,-44.431,
--43.302,-41.620,-39.841,-38.236,-36.750,-35.319,-33.987,-32.805,-31.799,-30.978,-30.230,-29.335,-28.235,-27.190,-26.474,-26.002,
--25.454,-24.703,-23.912,-23.241,-22.652,-22.035,-21.342,-20.556,-19.667,-18.734,-17.862,-17.053,-16.181,-15.145,-14.018,-12.975,
--12.123,-11.411,-10.704,-9.911,-9.072,-8.278,-7.514,-6.646,-5.606,-4.511,-3.528,-2.669,-1.813,-.883,.107,1.151,
-2.274,3.468,4.711,6.017,7.359,8.559,9.420,9.988,10.545,11.302,12.220,13.179,14.178,15.283,16.484,17.707,
-18.918,20.128,21.345,22.561,23.746,24.821,25.751,26.650,27.696,28.880,29.989,30.928,31.896,33.102,34.436,35.608,
-36.516,37.287,38.007,38.647,39.261,40.028,41.057,42.327,43.846,45.654,47.544,49.024,49.763,49.971,50.143,50.511,
-50.975,51.516,52.400,53.804,55.354,56.229,55.839,54.506,53.467,54.021,56.394,59.426,61.560,62.278,62.399,62.947,
-64.002,64.861,65.030,64.640,64.054,63.647,63.948,65.220,66.413,65.277,60.556,54.075,49.684,49.688,52.832,56.128,
-57.980,58.898,59.736,60.432,60.610,60.453,60.388,60.403,60.232,59.921,59.734,59.651,59.426,59.071,58.872,58.915,
-58.961,58.855,58.733,58.744,58.836,58.933,59.063,59.206,59.278,59.372,59.735,60.342,60.751,60.652,60.321,60.208,
-60.299,60.240,59.978,59.818,59.863,59.906,59.964,60.348,60.884,60.619,58.915,56.637,55.593,56.675,58.989,60.947,
-61.755,61.623,61.014,60.190,59.337,58.611,57.980,57.296,56.579,55.961,55.373,54.573,53.602,52.900,52.785,53.057,
-53.336,53.585,54.008,54.554,54.897,54.914,54.842,54.852,54.751,54.315,53.665,53.034,52.355,51.462,50.677,50.729,
-51.797,52.887,52.606,50.601,47.980,46.209,45.767,45.998,46.047,45.652,45.078,44.625,44.366,44.245,44.198,44.194,
-44.219,44.254,44.210,43.952,43.457,42.881,42.424,42.125,41.899,41.712,41.631,41.679,41.758,41.749,41.620,41.402,
-41.129,40.835,40.556,40.287,39.986,39.633,39.270,38.939,38.632,38.313,37.957,37.543,37.047,36.471,35.866,35.327,
-35.004,35.083,35.609,36.271,36.487,35.878,34.666,33.537,33.077,33.299,33.675,33.548,32.649,31.325,30.269,29.908,
-30.024,30.019,29.545,28.775,28.120,27.813,27.813,27.970,28.129,28.153,27.979,27.691,27.462,27.355,27.219,26.817,
-26.088,25.273,24.782,24.903,25.618,26.611,27.417,27.616,27.047,25.946,24.793,23.931,23.346,22.845,22.381,22.063,
-21.917,21.811,21.646,21.461,21.301,21.129,20.925,20.736,20.555,20.274,19.879,19.537,19.369,19.244,18.964,18.560,
-18.204,17.910,17.537,17.094,16.775,16.638,16.461,16.044,15.503,15.121,14.993,14.952,14.778,14.394,13.893,13.442,
-13.136,12.907,12.621,12.292,12.082,12.070,12.133,12.125,12.070,12.050,12.024,11.898,11.693,11.494,11.286,11.008,
-10.718,10.538,10.443,10.309,10.149,10.116,10.234,10.334,10.309,10.255,10.256,10.224,10.076,9.917,9.885,9.954,
-10.066,10.325,10.852,11.481,11.840,11.764,11.477,11.324,11.447,11.747,12.043,12.198,12.196,12.140,12.126,12.149,
-12.166,12.205,12.310,12.423,12.476,12.537,12.696,12.848,12.839,12.872,13.406,14.492,15.447,15.504,14.671,13.698,
-13.267,13.433,13.787,13.905,13.629,13.156,12.899,13.065,13.328,13.127,12.374,11.622,11.396,11.578,11.643,11.350,
-10.937,10.720,10.714,10.711,10.538,10.192,9.805,9.535,9.417,9.312,9.076,8.748,8.491,8.353,8.212,7.963,
-7.655,7.382,7.150,6.912,6.671,6.463,6.295,6.148,6.011,5.870,5.690,5.452,5.184,4.923,4.670,4.406,
-4.144,3.903,3.670,3.406,3.099,2.770,2.442,2.131,1.849,1.592,1.340,1.086,.847,.632,.417,.180,
--.059,-.275,-.491,-.741,-1.010,-1.252,-1.468,-1.711,-2.005,-2.314,-2.597,-2.871,-3.178,-3.523,-3.871,-4.195,
--4.504,-4.824,-5.180,-5.577,-5.987,-6.375,-6.729,-7.077,-7.443,-7.828,-8.215,-8.597,-8.973,-9.345,-9.728,-10.154,
--10.643,-11.172,-11.684,-12.144,-12.573,-13.015,-13.483,-13.948,-14.381,-14.793,-15.222,-15.683,-16.138,-16.553,-16.950,-17.392,
--17.912,-18.479,-19.038,-19.560,-20.040,-20.494,-20.956,-21.462,-22.001,-22.505,-22.924,-23.284,-23.649,-24.052,-24.479,-24.924,
--25.386,-25.834,-26.229,-26.584,-26.950,-27.335,-27.704,-28.053,-28.433,-28.860,-29.270,-29.618,-29.960,-30.368,-30.813,-31.204,
--31.522,-31.831,-32.168,-32.503,-32.824,-33.168,-33.545,-33.899,-34.186,-34.444,-34.729,-35.040,-35.345,-35.647,-35.961,-36.261,
--36.507,-36.703,-36.889,-37.088,-37.295,-37.494,-37.667,-37.797,-37.903,-38.042,-38.241,-38.444,-38.592,-38.698,-38.810,-38.918,
--38.966,-38.954,-38.944,-38.963,-38.973,-38.943,-38.888,-38.822,-38.733,-38.621,-38.518,-38.433,-38.331,-38.201,-38.077,-37.959,
--37.782,-37.510,-37.209,-36.963,-36.761,-36.525,-36.233,-35.933,-35.658,-35.386,-35.094,-34.779,-34.441,-34.075,-33.694,-33.321,
--32.943,-32.521,-32.054,-31.595,-31.187,-30.806,-30.404,-29.972,-29.546,-29.142,-28.714,-28.200,-27.608,-27.037,-26.574,-26.190,
--25.787,-25.335,-24.901,-24.533,-24.169,-23.728,-23.232,-22.756,-22.316,-21.864,-21.391,-20.932,-20.486,-20.003,-19.472,-18.944,
--18.465,-18.024,-17.600,-17.195,-16.798,-16.378,-15.932,-15.494,-15.082,-14.675,-14.262,-13.868,-13.497,-13.108,-12.682,-12.265,
--11.899,-11.563,-11.221,-10.880,-10.561,-10.256,-9.949,-9.653,-9.357,-9.009,-8.590,-8.175,-7.834,-7.524,-7.148,-6.703,
--6.270,-5.895,-5.543,-5.195,-4.884,-4.611,-4.323,-3.994,-3.671,-3.379,-3.074,-2.716,-2.355,-2.052,-1.787,-1.497,
--1.183,-.892,-.618,-.303,.043,.337,.546,.751,1.035,1.360,1.649,1.932,2.316,2.810,3.274,3.591,
-3.829,4.160,4.640,5.101,5.250,4.920,4.292,3.911,4.355,5.747,7.571,9.053,9.773,9.929,10.113,10.884,
-12.393,14.181,15.318,15.038,13.426,11.379,9.785,8.808,8.032,7.090,5.980,4.902,4.062,3.611,3.550,3.681,
-3.827,4.079,4.617,5.266,5.510,5.028,4.016,2.857,1.675,.373,-1.055,-2.427,-3.457,-3.801,-3.242,-2.069,
--1.092,-.954,-1.515,-2.208,-2.897,-3.925,-5.290,-6.288,-6.221,-5.153,-3.684,-2.366,-1.701,-2.354,-4.662,-7.908,
--10.683,-12.243,-13.108,-14.045,-14.830,-14.508,-12.744,-10.436,-8.895,-8.737,-9.677,-11.075,-12.422,-13.448,-14.096,-14.469,
--14.694,-14.833,-14.955,-15.240,-15.878,-16.865,-17.984,-19.033,-20.005,-21.043,-22.286,-23.763,-25.359,-26.879,-28.220,-29.499,
--30.963,-32.735,-34.714,-36.741,-38.747,-40.676,-42.340,-43.478,-43.958,-43.845,-43.321,-42.595,-41.861,-41.230,-40.676,-40.152,
--39.750,-39.645,-39.853,-40.166,-40.381,-40.496,-40.607,-40.731,-40.849,-41.060,-41.512,-42.176,-42.835,-43.350,-43.806,-44.331,
--44.868,-45.244,-45.391,-45.383,-45.288,-45.115,-44.916,-44.814,-44.854,-44.919,-44.873,-44.736,-44.638,-44.647,-44.714,-44.768,
--44.776,-44.720,-44.584,-44.395,-44.201,-44.007,-43.760,-43.442,-43.095,-42.755,-42.392,-41.978,-41.541,-41.124,-40.721,-40.304,
--39.876,-39.456,-39.024,-38.543,-38.012,-37.451,-36.861,-36.240,-35.615,-35.015,-34.418,-33.775,-33.075,-32.348,-31.597,-30.792,
--29.921,-29.010,-28.092,-27.184,-26.306,-25.485,-24.724,-23.987,-23.211,-22.324,-21.309,-20.273,-19.390,-18.717,-18.114,-17.446,
--16.795,-16.331,-16.030,-15.663,-15.106,-14.483,-13.948,-13.474,-12.958,-12.416,-11.926,-11.478,-11.002,-10.500,-10.023,-9.560,
--9.063,-8.563,-8.127,-7.727,-7.276,-6.782,-6.336,-5.958,-5.552,-5.057,-4.535,-4.053,-3.592,-3.097,-2.568,-2.035,
--1.510,-.996,-.507,-.034,.446,.928,1.382,1.819,2.278,2.763,3.231,3.676,4.136,4.610,5.054,5.471,
-5.924,6.425,6.913,7.367,7.853,8.393,8.904,9.329,9.742,10.206,10.647,10.967,11.221,11.538,11.923,12.292,
-12.640,13.028,13.419,13.721,13.976,14.359,14.909,15.432,15.757,15.945,16.139,16.337,16.447,16.495,16.619,16.876,
-17.184,17.477,17.804,18.222,18.671,19.026,19.268,19.558,20.121,21.036,22.156,23.249,24.221,25.155,26.142,27.140,
-28.010,28.675,29.174,29.628,30.142,30.719,31.211,31.441,31.445,31.524,31.941,32.577,32.990,32.845,32.230,31.544,
-31.169,31.255,31.711,32.285,32.728,32.958,33.073,33.182,33.251,33.184,32.998,32.858,32.896,33.075,33.218,33.151,
-32.805,32.244,31.599,30.985,30.437,29.945,29.512,29.155,28.862,28.599,28.367,28.200,28.090,27.950,27.701,27.378,
-27.100,26.952,26.901,26.847,26.715,26.503,26.251,25.991,25.715,25.392,25.024,24.675,24.434,24.340,24.329,24.252,
-23.953,23.396,23.654,22.921,22.416,22.361,22.701,23.225,23.759,24.229,24.589,24.795,24.831,24.736,24.562,24.344,
-24.102,23.859,23.634,23.460,23.377,23.372,23.341,23.256,23.393,24.202,25.761,27.409,28.180,27.676,26.404,25.182,
-24.401,23.956,23.718,23.761,24.111,24.501,24.532,24.016,23.090,22.041,21.090,20.316,19.725,19.325,19.106,18.955,
-18.665,18.134,17.503,17.010,16.701,16.398,15.969,15.486,15.063,14.660,14.181,13.668,13.244,12.893,12.449,11.830,
-11.147,10.530,9.949,9.293,8.555,7.822,7.134,6.448,5.756,5.128,4.608,4.121,3.543,2.846,2.110,1.424,
-.826,.327,-.065,-.380,-.679,-.968,-1.155,-1.160,-1.045,-.949,-.914,-.858,-.716,-.552,-.467,-.493,
--.614,-.836,-1.163,-1.532,-1.831,-1.988,-2.024,-2.032,-2.135,-2.403,-2.786,-3.188,-3.598,-4.079,-4.583,-4.904,
--4.931,-4.863,-5.019,-5.491,-6.097,-6.655,-7.098,-7.369,-7.389,-7.198,-6.959,-6.770,-6.630,-6.623,-6.924,-7.507,
--8.045,-8.265,-8.268,-8.334,-8.544,-8.767,-8.859,-8.653,-7.905,-6.567,-5.079,-4.052,-3.638,-3.483,-3.353,-3.441,
--3.941,-4.629,-5.141,-5.428,-5.683,-5.976,-6.277,-6.669,-7.212,-7.629,-7.511,-6.884,-6.271,-6.106,-6.370,-6.936,
--7.926,-9.427,-11.046,-12.128,-12.428,-12.305,-12.235,-12.348,-12.543,-12.794,-13.173,-13.657,-14.122,-14.520,-14.935,-15.451,
--16.065,-16.760,-17.536,-18.348,-19.094,-19.745,-20.407,-21.179,-22.012,-22.801,-23.561,-24.343,-25.020,-25.341,-25.295,-25.212,
--25.385,-25.730,-26.002,-26.249,-26.797,-27.791,-28.987,-30.067,-30.971,-31.845,-32.803,-33.906,-35.223,-36.779,-38.506,-40.361,
--42.387,-44.527,-46.461,-47.836,-48.642,-49.197,-49.725,-50.156,-50.364,-50.455,-50.667,-51.104,-51.649,-52.097,-52.294,-52.212,
--51.968,-51.727,-51.533,-51.295,-50.960,-50.639,-50.496,-50.596,-50.907,-51.390,-51.976,-52.546,-53.066,-53.679,-54.533,-55.550,
--56.513,-57.350,-58.197,-59.152,-60.142,-61.101,-62.100,-63.210,-64.348,-65.383,-66.318,-67.252,-68.206,-69.116,-69.956,-70.757,
--71.537,-72.296,-73.083,-73.959,-74.895,-75.805,-76.658,-77.486,-78.296,-79.066,-79.835,-80.683,-81.600,-82.476,-83.245,-83.959,
--84.672,-85.368,-86.051,-86.791,-87.608,-88.394,-89.062,-89.680,-90.351,-91.048,-91.670,-92.221,-92.780,-93.331,-93.771,-94.074,
--94.315,-94.504,-94.570,-94.550,-94.646,-94.990,-95.476,-95.943,-96.417,-97.014,-97.658,-98.114,-98.304,-98.386,-98.429,-98.184,
--97.386,-96.243,-95.370,-95.163,-95.390,-95.554,-95.525,-95.591,-95.915,-96.236,-96.234,-95.988,-95.843,-95.928,-96.078,-96.174,
--96.307,-96.508,-96.580,-96.409,-96.265,-96.553,-97.294,-98.026,-98.283,-98.024,-97.538,-97.056,-96.550,-95.895,-95.094,-94.300,
--93.606,-92.909,-92.034,-90.952,-89.809,-88.753,-87.816,-86.980,-86.221,-85.426,-84.399,-83.044,-81.508,-80.027,-78.697,-77.460,
--76.252,-75.047,-73.782,-72.373,-70.790,-69.078,-67.337,-65.726,-64.399,-63.365,-62.531,-61.946,-61.819,-62.100,-62.263,-61.824,
--60.963,-60.286,-60.076,-60.186,-60.599,-61.446,-62.264,-61.879,-59.568,-56.005,-52.569,-49.931,-47.858,-46.155,-45.051,-44.534,
--43.964,-42.719,-40.898,-39.060,-37.518,-36.170,-34.855,-33.559,-32.337,-31.252,-30.339,-29.511,-28.567,-27.459,-26.419,-25.684,
--25.176,-24.624,-23.929,-23.222,-22.600,-22.003,-21.356,-20.654,-19.888,-19.022,-18.095,-17.215,-16.406,-15.549,-14.524,-13.376,
--12.282,-11.378,-10.641,-9.924,-9.127,-8.301,-7.554,-6.854,-6.034,-5.026,-3.977,-3.040,-2.163,-1.203,-.151,.907,
-1.973,3.130,4.373,5.620,6.851,8.075,9.159,9.925,10.439,11.012,11.847,12.842,13.833,14.856,16.035,17.351,
-18.667,19.919,21.128,22.283,23.347,24.331,25.286,26.242,27.211,28.216,29.252,30.279,31.312,32.436,33.663,34.876,
-35.969,36.955,37.828,38.482,38.938,39.511,40.510,41.867,43.312,44.844,46.669,48.601,49.927,50.172,49.748,49.557,
-50.048,50.992,52.072,53.303,54.708,55.862,56.095,55.178,53.729,52.915,53.659,55.941,58.781,61.018,62.230,62.855,
-63.453,64.085,64.548,64.838,65.006,64.799,64.084,63.617,64.487,66.256,66.385,62.645,56.113,50.791,49.795,52.529,
-56.011,58.215,59.314,60.169,60.885,61.153,61.083,61.021,60.976,60.761,60.461,60.304,60.219,59.959,59.591,59.433,
-59.532,59.578,59.419,59.287,59.414,59.696,59.900,59.958,59.925,59.865,59.943,60.376,61.082,61.576,61.480,61.012,
-60.697,60.695,60.702,60.479,60.155,59.990,60.125,60.584,61.203,61.425,60.595,58.802,57.193,57.009,58.312,59.982,
-60.949,61.094,60.920,60.766,60.612,60.365,59.995,59.477,58.852,58.293,57.878,57.364,56.446,55.236,54.231,53.734,
-53.587,53.536,53.594,53.868,54.245,54.534,54.768,55.085,55.394,55.430,55.137,54.690,54.093,53.116,51.862,51.091,
-51.558,52.991,54.038,53.437,51.198,48.576,46.961,46.803,47.473,47.966,47.705,46.819,45.816,45.096,44.749,44.696,
-44.854,45.131,45.347,45.301,44.929,44.345,43.708,43.110,42.591,42.210,42.017,41.987,42.043,42.120,42.168,42.130,
-41.963,41.708,41.442,41.177,40.871,40.529,40.215,39.929,39.584,39.143,38.692,38.293,37.872,37.357,36.819,36.357,
-35.911,35.414,35.055,35.139,35.595,35.857,35.419,34.425,33.516,33.150,33.191,33.138,32.629,31.712,30.763,30.182,
-30.084,30.226,30.217,29.843,29.217,28.663,28.469,28.663,28.970,29.021,28.699,28.280,28.179,28.556,29.157,29.485,
-29.120,27.995,26.503,25.290,24.808,25.055,25.754,26.654,27.505,27.892,27.426,26.198,24.809,23.806,23.213,22.727,
-22.223,21.853,21.730,21.740,21.690,21.511,21.270,21.051,20.859,20.625,20.296,19.936,19.668,19.506,19.321,19.027,
-18.702,18.419,18.086,17.620,17.182,17.042,17.184,17.243,16.912,16.264,15.611,15.171,14.931,14.743,14.460,14.049,
-13.625,13.316,13.086,12.785,12.411,12.157,12.142,12.234,12.251,12.197,12.176,12.172,12.075,11.872,11.633,11.370,
-11.059,10.768,10.594,10.494,10.341,10.146,10.051,10.091,10.142,10.131,10.127,10.153,10.111,9.984,9.918,10.003,
-10.120,10.167,10.284,10.651,11.154,11.482,11.503,11.397,11.388,11.533,11.762,11.984,12.116,12.126,12.080,12.079,
-12.131,12.184,12.251,12.374,12.513,12.605,12.715,12.926,13.098,13.008,12.792,12.968,13.803,14.836,15.292,14.891,
-14.080,13.522,13.526,13.911,14.210,14.041,13.469,12.998,13.008,13.255,13.148,12.547,11.968,11.896,12.158,12.212,
-11.863,11.433,11.277,11.374,11.444,11.283,10.934,10.616,10.500,10.523,10.418,10.006,9.424,8.968,8.742,8.591,
-8.355,8.047,7.758,7.497,7.232,6.980,6.784,6.640,6.506,6.365,6.215,6.035,5.808,5.551,5.296,5.044,
-4.786,4.539,4.320,4.109,3.862,3.561,3.228,2.894,2.581,2.302,2.049,1.804,1.558,1.320,1.088,.846,
-.594,.360,.152,-.073,-.354,-.655,-.915,-1.133,-1.376,-1.685,-2.026,-2.348,-2.639,-2.927,-3.231,-3.552,
--3.878,-4.202,-4.529,-4.881,-5.271,-5.676,-6.063,-6.427,-6.797,-7.190,-7.593,-7.993,-8.393,-8.790,-9.175,-9.560,
--9.987,-10.478,-10.994,-11.469,-11.886,-12.291,-12.724,-13.182,-13.633,-14.068,-14.506,-14.961,-15.415,-15.836,-16.216,-16.592,
--17.017,-17.513,-18.061,-18.623,-19.163,-19.658,-20.112,-20.569,-21.077,-21.628,-22.144,-22.573,-22.948,-23.347,-23.799,-24.267,
--24.716,-25.141,-25.547,-25.926,-26.290,-26.659,-27.026,-27.364,-27.684,-28.042,-28.449,-28.849,-29.203,-29.559,-29.982,-30.440,
--30.843,-31.161,-31.447,-31.750,-32.064,-32.386,-32.738,-33.112,-33.455,-33.739,-34.002,-34.285,-34.586,-34.883,-35.185,-35.491,
--35.769,-35.992,-36.190,-36.405,-36.636,-36.854,-37.049,-37.222,-37.362,-37.477,-37.613,-37.798,-37.990,-38.135,-38.246,-38.363,
--38.465,-38.493,-38.452,-38.418,-38.428,-38.444,-38.426,-38.387,-38.342,-38.272,-38.176,-38.086,-38.005,-37.901,-37.767,-37.645,
--37.540,-37.380,-37.123,-36.841,-36.623,-36.449,-36.232,-35.945,-35.642,-35.359,-35.073,-34.767,-34.457,-34.142,-33.798,-33.421,
--33.050,-32.698,-32.317,-31.865,-31.370,-30.907,-30.514,-30.162,-29.803,-29.423,-29.036,-28.635,-28.179,-27.653,-27.108,-26.620,
--26.187,-25.743,-25.264,-24.809,-24.419,-24.040,-23.598,-23.109,-22.638,-22.193,-21.742,-21.286,-20.858,-20.443,-19.980,-19.465,
--18.961,-18.506,-18.075,-17.641,-17.219,-16.813,-16.397,-15.958,-15.527,-15.119,-14.712,-14.298,-13.905,-13.539,-13.151,-12.711,
--12.261,-11.861,-11.515,-11.197,-10.898,-10.609,-10.309,-9.992,-9.681,-9.370,-9.012,-8.597,-8.196,-7.858,-7.522,-7.113,
--6.667,-6.274,-5.941,-5.595,-5.222,-4.883,-4.599,-4.320,-4.021,-3.743,-3.490,-3.190,-2.802,-2.400,-2.074,-1.808,
--1.537,-1.256,-.999,-.745,-.445,-.124,.146,.377,.678,1.087,1.492,1.779,1.994,2.286,2.717,3.200,
-3.619,3.940,4.217,4.541,4.964,5.397,5.603,5.419,5.035,4.934,5.471,6.522,7.608,8.310,8.576,8.750,
-9.393,10.891,13.000,14.814,15.425,14.710,13.337,12.011,10.893,9.776,8.540,7.264,6.109,5.301,5.093,5.515,
-6.252,6.980,7.733,8.680,9.614,9.991,9.511,8.401,7.011,5.390,3.410,1.167,-.933,-2.372,-2.770,-2.130,
--.977,-.094,.080,-.315,-.987,-1.938,-3.247,-4.599,-5.383,-5.256,-4.367,-3.101,-1.972,-1.720,-2.994,-5.628,
--8.524,-10.648,-11.980,-13.159,-14.290,-14.563,-13.213,-10.582,-8.021,-6.836,-7.419,-9.205,-11.222,-12.712,-13.473,-13.760,
--13.910,-14.051,-14.185,-14.411,-14.917,-15.735,-16.652,-17.443,-18.108,-18.824,-19.740,-20.898,-22.299,-23.907,-25.608,-27.288,
--28.963,-30.738,-32.627,-34.492,-36.214,-37.798,-39.241,-40.404,-41.113,-41.349,-41.239,-40.898,-40.399,-39.831,-39.276,-38.707,
--38.065,-37.462,-37.165,-37.342,-37.902,-38.644,-39.434,-40.147,-40.593,-40.672,-40.585,-40.693,-41.137,-41.735,-42.273,-42.762,
--43.316,-43.909,-44.398,-44.729,-44.973,-45.143,-45.130,-44.884,-44.570,-44.427,-44.504,-44.634,-44.640,-44.512,-44.375,-44.336,
--44.400,-44.485,-44.484,-44.355,-44.156,-43.978,-43.830,-43.636,-43.345,-43.004,-42.671,-42.334,-41.952,-41.534,-41.126,-40.730,
--40.301,-39.833,-39.363,-38.906,-38.430,-37.908,-37.357,-36.800,-36.230,-35.638,-35.034,-34.417,-33.761,-33.054,-32.322,-31.587,
--30.829,-30.009,-29.124,-28.214,-27.319,-26.452,-25.615,-24.820,-24.072,-23.323,-22.481,-21.502,-20.486,-19.604,-18.910,-18.273,
--17.585,-16.922,-16.432,-16.080,-15.664,-15.086,-14.456,-13.900,-13.388,-12.838,-12.268,-11.742,-11.253,-10.748,-10.231,-9.739,
--9.257,-8.753,-8.265,-7.845,-7.457,-7.020,-6.541,-6.102,-5.721,-5.327,-4.878,-4.405,-3.937,-3.443,-2.906,-2.351,
--1.803,-1.265,-.759,-.317,.082,.500,.954,1.401,1.827,2.265,2.733,3.203,3.669,4.156,4.651,5.103,
-5.522,5.979,6.486,6.967,7.399,7.854,8.372,8.873,9.299,9.720,10.210,10.698,11.085,11.404,11.764,12.164,
-12.527,12.857,13.203,13.520,13.731,13.933,14.326,14.905,15.423,15.744,16.054,16.562,17.146,17.509,17.588,17.617,
-17.772,17.966,18.052,18.068,18.175,18.438,18.790,19.177,19.638,20.228,20.943,21.758,22.675,23.693,24.740,25.710,
-26.562,27.347,28.111,28.828,29.461,30.054,30.666,31.226,31.568,31.653,31.693,31.948,32.402,32.725,32.571,31.908,
-31.074,30.538,30.582,31.133,31.867,32.480,32.884,33.164,33.392,33.545,33.589,33.568,33.578,33.674,33.818,33.893,
-33.757,33.324,32.640,31.872,31.181,30.619,30.140,29.710,29.341,29.037,28.763,28.502,28.293,28.167,28.059,27.847,
-27.500,27.145,26.938,26.899,26.907,26.836,26.664,26.429,26.152,25.828,25.471,25.121,24.822,24.616,24.540,24.569,
-24.548,24.266,23.654,23.976,23.229,22.756,22.753,23.127,23.665,24.202,24.633,24.885,24.946,24.889,24.804,24.712,
-24.570,24.357,24.118,23.926,23.819,23.778,23.720,23.558,23.349,23.396,24.064,25.347,26.655,27.228,26.812,25.841,
-24.921,24.270,23.764,23.372,23.283,23.574,23.951,23.963,23.409,22.484,21.542,20.803,20.257,19.793,19.381,19.091,
-18.931,18.750,18.379,17.849,17.347,16.957,16.561,16.038,15.447,14.906,14.412,13.894,13.391,12.998,12.671,12.223,
-11.576,10.850,10.173,9.495,8.705,7.838,7.043,6.388,5.808,5.232,4.664,4.097,3.464,2.717,1.917,1.174,
-.541,.011,-.410,-.702,-.899,-1.085,-1.282,-1.404,-1.369,-1.229,-1.119,-1.102,-1.104,-1.023,-.844,-.655,
--.587,-.738,-1.110,-1.589,-2.019,-2.311,-2.467,-2.530,-2.569,-2.680,-2.937,-3.309,-3.708,-4.128,-4.623,-5.125,
--5.424,-5.430,-5.341,-5.428,-5.754,-6.211,-6.753,-7.368,-7.895,-8.093,-7.927,-7.610,-7.335,-7.144,-7.103,-7.352,
--7.877,-8.412,-8.720,-8.840,-8.941,-9.082,-9.243,-9.391,-9.343,-8.756,-7.549,-6.184,-5.207,-4.614,-4.030,-3.461,
--3.410,-4.132,-5.190,-5.982,-6.385,-6.600,-6.683,-6.604,-6.564,-6.813,-7.186,-7.246,-6.894,-6.528,-6.521,-6.897,
--7.616,-8.798,-10.371,-11.785,-12.447,-12.359,-12.062,-11.986,-12.132,-12.378,-12.773,-13.397,-14.137,-14.782,-15.267,-15.674,
--16.076,-16.506,-17.046,-17.795,-18.721,-19.663,-20.506,-21.276,-22.031,-22.754,-23.433,-24.147,-24.937,-25.654,-26.074,-26.192,
--26.258,-26.463,-26.723,-26.896,-27.092,-27.601,-28.531,-29.672,-30.753,-31.698,-32.603,-33.593,-34.774,-36.234,-37.979,-39.919,
--41.955,-44.014,-45.947,-47.509,-48.570,-49.274,-49.870,-50.418,-50.796,-50.951,-51.032,-51.235,-51.628,-52.139,-52.606,-52.822,
--52.651,-52.175,-51.641,-51.227,-50.935,-50.719,-50.614,-50.676,-50.893,-51.242,-51.731,-52.312,-52.856,-53.329,-53.888,-54.685,
--55.634,-56.534,-57.351,-58.209,-59.140,-60.050,-60.950,-61.998,-63.238,-64.478,-65.529,-66.446,-67.383,-68.351,-69.255,-70.085,
--70.915,-71.756,-72.570,-73.390,-74.295,-75.267,-76.200,-77.044,-77.839,-78.607,-79.343,-80.102,-80.972,-81.917,-82.787,-83.512,
--84.181,-84.886,-85.622,-86.372,-87.173,-88.006,-88.759,-89.386,-90.000,-90.695,-91.388,-91.960,-92.465,-93.025,-93.607,-94.072,
--94.404,-94.704,-94.967,-95.073,-95.047,-95.112,-95.414,-95.854,-96.294,-96.780,-97.395,-98.023,-98.456,-98.681,-98.846,-98.928,
--98.623,-97.723,-96.504,-95.575,-95.319,-95.565,-95.865,-96.000,-96.093,-96.280,-96.447,-96.418,-96.248,-96.165,-96.246,-96.353,
--96.393,-96.434,-96.491,-96.389,-96.033,-95.685,-95.769,-96.389,-97.196,-97.744,-97.855,-97.623,-97.194,-96.623,-95.922,-95.141,
--94.388,-93.718,-93.040,-92.175,-91.067,-89.867,-88.764,-87.804,-86.934,-86.125,-85.336,-84.404,-83.143,-81.576,-79.952,-78.502,
--77.252,-76.095,-74.920,-73.645,-72.204,-70.571,-68.810,-67.062,-65.501,-64.231,-63.208,-62.337,-61.681,-61.443,-61.602,-61.733,
--61.416,-60.721,-60.066,-59.685,-59.581,-59.883,-60.696,-61.466,-61.045,-58.808,-55.419,-52.102,-49.435,-47.267,-45.544,-44.504,
--44.017,-43.352,-41.939,-39.996,-38.162,-36.739,-35.567,-34.408,-33.191,-31.958,-30.804,-29.814,-28.934,-27.966,-26.830,-25.712,
--24.832,-24.170,-23.558,-22.948,-22.406,-21.905,-21.319,-20.618,-19.884,-19.152,-18.358,-17.477,-16.582,-15.723,-14.836,-13.834,
--12.733,-11.656,-10.730,-9.964,-9.240,-8.441,-7.596,-6.823,-6.124,-5.348,-4.413,-3.428,-2.506,-1.571,-.495,.676,
-1.814,2.926,4.113,5.351,6.524,7.629,8.739,9.769,10.520,11.019,11.578,12.429,13.474,14.535,15.636,16.893,
-18.263,19.587,20.807,21.970,23.064,24.018,24.859,25.734,26.748,27.860,28.951,29.954,30.914,31.935,33.054,34.176,
-35.203,36.187,37.229,38.217,38.898,39.317,39.966,41.252,42.986,44.683,46.225,47.826,49.355,50.180,49.970,49.331,
-49.293,50.268,51.810,53.308,54.539,55.484,55.949,55.659,54.670,53.506,52.870,53.241,54.669,56.817,59.188,61.330,
-62.913,63.734,63.897,63.971,64.614,65.749,66.384,65.791,64.779,65.026,66.690,67.356,64.326,57.990,52.065,50.082,
-52.185,55.728,58.372,59.772,60.638,61.301,61.644,61.697,61.655,61.537,61.273,60.988,60.851,60.754,60.491,60.155,
-60.035,60.144,60.192,60.076,60.047,60.301,60.676,60.878,60.828,60.638,60.467,60.520,60.970,61.652,62.012,61.670,
-60.951,60.568,60.778,61.117,61.044,60.613,60.378,60.749,61.531,62.003,61.450,59.818,58.003,57.255,58.068,59.674,
-60.814,60.954,60.574,60.377,60.531,60.750,60.781,60.593,60.263,59.903,59.616,59.353,58.856,57.943,56.779,55.717,
-54.912,54.298,53.890,53.824,54.066,54.372,54.626,54.979,55.477,55.841,55.848,55.676,55.543,55.182,54.158,52.730,
-51.909,52.380,53.631,54.395,53.813,52.026,49.908,48.502,48.493,49.737,51.167,51.502,50.288,48.211,46.385,45.487,
-45.565,46.314,47.250,47.802,47.593,46.739,45.687,44.750,43.925,43.162,42.575,42.287,42.245,42.317,42.460,42.654,
-42.757,42.626,42.311,41.994,41.740,41.478,41.194,40.959,40.729,40.335,39.736,39.119,38.631,38.194,37.701,37.230,
-36.859,36.423,35.742,35.027,34.733,34.930,35.108,34.785,34.096,33.567,33.411,33.319,32.919,32.240,31.621,31.277,
-31.118,30.931,30.648,30.331,29.989,29.560,29.127,28.998,29.369,29.948,30.128,29.645,28.915,28.631,29.112,30.069,
-30.831,30.747,29.580,27.739,26.032,25.022,24.692,24.849,25.565,26.848,28.068,28.270,27.235,25.812,24.926,24.559,
-24.035,23.078,22.140,21.715,21.736,21.791,21.659,21.426,21.213,20.996,20.693,20.316,19.961,19.697,19.491,19.275,
-19.050,18.856,18.620,18.198,17.630,17.238,17.299,17.667,17.870,17.585,16.903,16.134,15.517,15.123,14.887,14.648,
-14.280,13.839,13.490,13.262,13.015,12.687,12.425,12.365,12.427,12.448,12.414,12.403,12.395,12.286,12.053,11.761,
-11.438,11.083,10.767,10.576,10.475,10.353,10.196,10.088,10.044,9.998,9.954,9.977,10.034,10.003,9.902,9.908,
-10.092,10.281,10.338,10.381,10.597,10.936,11.183,11.255,11.257,11.289,11.363,11.475,11.624,11.753,11.801,11.810,
-11.877,12.007,12.144,12.299,12.519,12.752,12.911,13.047,13.270,13.478,13.413,13.086,12.909,13.232,13.879,14.334,
-14.292,13.890,13.502,13.432,13.729,14.105,14.130,13.680,13.134,12.924,12.986,12.898,12.540,12.280,12.398,12.628,
-12.509,12.009,11.551,11.476,11.691,11.856,11.762,11.483,11.263,11.255,11.336,11.196,10.680,9.986,9.453,9.183,
-9.006,8.757,8.456,8.179,7.917,7.632,7.359,7.153,7.005,6.855,6.678,6.483,6.276,6.055,5.827,5.597,
-5.352,5.096,4.864,4.680,4.509,4.292,4.005,3.673,3.325,2.986,2.679,2.411,2.165,1.923,1.681,1.437,
-1.187,.940,.718,.517,.288,.000,-.311,-.587,-.823,-1.077,-1.389,-1.740,-2.086,-2.398,-2.683,-2.963,
--3.263,-3.587,-3.917,-4.247,-4.597,-4.986,-5.392,-5.778,-6.146,-6.531,-6.947,-7.371,-7.786,-8.197,-8.604,-8.999,
--9.393,-9.829,-10.321,-10.820,-11.269,-11.673,-12.083,-12.519,-12.954,-13.371,-13.793,-14.241,-14.699,-15.125,-15.504,-15.865,
--16.251,-16.686,-17.166,-17.678,-18.206,-18.734,-19.237,-19.709,-20.179,-20.689,-21.237,-21.760,-22.206,-22.602,-23.022,-23.498,
--23.989,-24.446,-24.861,-25.256,-25.640,-26.011,-26.372,-26.717,-27.035,-27.342,-27.674,-28.045,-28.420,-28.772,-29.132,-29.543,
--29.984,-30.390,-30.728,-31.026,-31.319,-31.623,-31.949,-32.311,-32.688,-33.032,-33.326,-33.599,-33.880,-34.167,-34.453,-34.748,
--35.040,-35.289,-35.489,-35.689,-35.929,-36.179,-36.397,-36.586,-36.774,-36.949,-37.092,-37.225,-37.376,-37.528,-37.649,-37.750,
--37.864,-37.963,-37.989,-37.948,-37.911,-37.913,-37.919,-37.903,-37.879,-37.851,-37.794,-37.706,-37.624,-37.552,-37.446,-37.296,
--37.152,-37.034,-36.883,-36.662,-36.427,-36.242,-36.078,-35.856,-35.575,-35.295,-35.033,-34.747,-34.426,-34.110,-33.819,-33.516,
--33.175,-32.823,-32.484,-32.121,-31.684,-31.182,-30.686,-30.257,-29.894,-29.543,-29.163,-28.758,-28.354,-27.945,-27.501,-27.023,
--26.551,-26.104,-25.652,-25.182,-24.734,-24.337,-23.955,-23.534,-23.077,-22.622,-22.170,-21.704,-21.246,-20.827,-20.417,-19.954,
--19.443,-18.954,-18.519,-18.098,-17.662,-17.231,-16.822,-16.410,-15.985,-15.572,-15.184,-14.791,-14.378,-13.966,-13.566,-13.142,
--12.680,-12.224,-11.829,-11.495,-11.191,-10.906,-10.636,-10.359,-10.062,-9.750,-9.409,-9.013,-8.587,-8.201,-7.870,-7.515,
--7.085,-6.650,-6.299,-6.003,-5.672,-5.302,-4.969,-4.687,-4.393,-4.063,-3.753,-3.489,-3.212,-2.880,-2.537,-2.231,
--1.937,-1.618,-1.294,-1.005,-.738,-.465,-.205,.018,.262,.613,1.057,1.477,1.803,2.071,2.349,2.663,
-3.030,3.475,3.955,4.356,4.645,4.957,5.413,5.885,6.085,5.927,5.668,5.656,5.998,6.531,7.005,7.276,
-7.463,7.978,9.240,11.185,13.146,14.401,14.785,14.611,14.127,13.307,12.154,10.869,9.644,8.545,7.735,7.537,
-8.062,8.972,9.863,10.702,11.653,12.585,13.104,13.003,12.380,11.271,9.486,6.936,3.966,1.265,-.499,-.993,
--.434,.481,1.047,1.042,.637,-.095,-1.261,-2.697,-3.826,-4.183,-3.820,-3.022,-1.991,-1.122,-1.231,-2.901,
--5.665,-8.358,-10.339,-11.868,-13.139,-13.521,-12.238,-9.554,-6.826,-5.408,-5.755,-7.448,-9.668,-11.572,-12.625,-12.861,
--12.780,-12.840,-13.104,-13.428,-13.814,-14.391,-15.147,-15.887,-16.506,-17.131,-17.940,-18.949,-20.081,-21.338,-22.788,-24.415,
--26.110,-27.806,-29.513,-31.202,-32.763,-34.131,-35.345,-36.431,-37.299,-37.852,-38.122,-38.196,-38.080,-37.745,-37.270,-36.795,
--36.336,-35.810,-35.262,-34.941,-35.067,-35.651,-36.580,-37.755,-38.999,-39.976,-40.411,-40.395,-40.323,-40.484,-40.835,-41.219,
--41.633,-42.173,-42.811,-43.398,-43.867,-44.282,-44.628,-44.712,-44.382,-43.817,-43.445,-43.535,-43.939,-44.284,-44.344,-44.203,
--44.072,-44.063,-44.121,-44.129,-44.021,-43.832,-43.643,-43.489,-43.327,-43.104,-42.831,-42.552,-42.261,-41.921,-41.530,-41.129,
--40.731,-40.297,-39.811,-39.308,-38.814,-38.300,-37.741,-37.169,-36.629,-36.113,-35.577,-35.005,-34.407,-33.779,-33.108,-32.413,
--31.720,-31.005,-30.208,-29.319,-28.404,-27.531,-26.701,-25.874,-25.050,-24.261,-23.493,-22.664,-21.731,-20.777,-19.933,-19.211,
--18.493,-17.715,-16.981,-16.428,-16.021,-15.589,-15.045,-14.462,-13.918,-13.388,-12.820,-12.240,-11.703,-11.199,-10.691,-10.179,
--9.675,-9.157,-8.618,-8.109,-7.670,-7.253,-6.791,-6.300,-5.847,-5.441,-5.035,-4.617,-4.204,-3.777,-3.286,-2.739,
--2.189,-1.651,-1.108,-.591,-.161,.198,.583,1.041,1.516,1.950,2.359,2.777,3.214,3.681,4.191,4.711,
-5.184,5.628,6.118,6.654,7.137,7.530,7.926,8.394,8.873,9.296,9.714,10.196,10.690,11.104,11.466,11.862,
-12.277,12.634,12.944,13.263,13.552,13.750,13.964,14.381,14.955,15.423,15.708,16.103,16.854,17.739,18.308,18.455,
-18.505,18.711,18.933,18.890,18.581,18.288,18.264,18.563,19.109,19.775,20.398,20.872,21.295,21.925,22.894,24.014,
-24.964,25.631,26.190,26.845,27.604,28.367,29.131,29.975,30.860,31.571,31.920,31.976,32.005,32.176,32.341,32.170,
-31.512,30.632,30.054,30.132,30.776,31.606,32.311,32.823,33.205,33.497,33.707,33.871,34.035,34.200,34.344,34.456,
-34.494,34.336,33.858,33.087,32.220,31.462,30.863,30.347,29.862,29.446,29.133,28.884,28.642,28.423,28.285,28.190,
-27.996,27.631,27.222,26.974,26.945,27.000,26.990,26.876,26.671,26.361,25.958,25.541,25.195,24.927,24.732,24.666,
-24.753,24.824,24.595,23.976,24.272,23.614,23.248,23.274,23.570,24.018,24.542,24.992,25.190,25.113,24.939,24.851,
-24.851,24.808,24.655,24.467,24.359,24.342,24.299,24.107,23.769,23.458,23.426,23.817,24.508,25.152,25.431,25.314,
-25.011,24.688,24.293,23.731,23.126,22.764,22.760,22.876,22.753,22.259,21.581,21.002,20.630,20.336,19.943,19.462,
-19.103,19.021,19.078,18.971,18.578,18.059,17.587,17.112,16.488,15.724,14.966,14.299,13.704,13.187,12.796,12.472,
-12.036,11.384,10.595,9.777,8.914,7.948,6.957,6.115,5.505,5.053,4.630,4.154,3.572,2.863,2.082,1.340,
-.709,.175,-.291,-.651,-.867,-.990,-1.124,-1.303,-1.452,-1.489,-1.428,-1.345,-1.289,-1.236,-1.124,-.925,
--.711,-.639,-.843,-1.293,-1.813,-2.248,-2.580,-2.850,-3.052,-3.175,-3.311,-3.581,-3.976,-4.377,-4.736,-5.111,
--5.493,-5.753,-5.832,-5.855,-5.958,-6.133,-6.365,-6.786,-7.478,-8.218,-8.629,-8.582,-8.283,-7.968,-7.717,-7.595,
--7.715,-8.075,-8.502,-8.868,-9.198,-9.513,-9.745,-9.898,-10.065,-10.134,-9.761,-8.847,-7.793,-6.980,-6.211,-5.128,
--4.041,-3.776,-4.605,-5.832,-6.645,-6.956,-7.115,-7.207,-7.091,-6.873,-6.835,-6.975,-7.035,-6.993,-7.129,-7.566,
--8.136,-8.802,-9.795,-11.119,-12.253,-12.677,-12.501,-12.280,-12.328,-12.549,-12.856,-13.376,-14.179,-15.058,-15.754,-16.217,
--16.541,-16.797,-17.057,-17.492,-18.244,-19.241,-20.269,-21.195,-22.029,-22.785,-23.431,-24.006,-24.644,-25.392,-26.094,-26.568,
--26.842,-27.105,-27.444,-27.752,-27.947,-28.158,-28.625,-29.441,-30.473,-31.524,-32.493,-33.422,-34.465,-35.807,-37.539,-39.573,
--41.718,-43.810,-45.730,-47.334,-48.516,-49.338,-49.997,-50.596,-51.051,-51.289,-51.415,-51.591,-51.842,-52.117,-52.447,-52.854,
--53.153,-53.027,-52.388,-51.521,-50.825,-50.518,-50.588,-50.893,-51.236,-51.476,-51.672,-52.022,-52.578,-53.150,-53.589,-54.030,
--54.697,-55.583,-56.496,-57.355,-58.230,-59.130,-59.982,-60.851,-61.926,-63.225,-64.501,-65.551,-66.464,-67.425,-68.432,-69.366,
--70.220,-71.084,-71.967,-72.817,-73.666,-74.602,-75.602,-76.543,-77.371,-78.141,-78.893,-79.630,-80.411,-81.312,-82.270,-83.111,
--83.778,-84.397,-85.094,-85.862,-86.666,-87.513,-88.360,-89.092,-89.697,-90.320,-91.044,-91.745,-92.292,-92.771,-93.329,-93.918,
--94.383,-94.729,-95.071,-95.378,-95.497,-95.452,-95.484,-95.742,-96.137,-96.568,-97.088,-97.724,-98.313,-98.692,-98.928,-99.158,
--99.265,-98.940,-98.072,-96.975,-96.143,-95.847,-95.983,-96.249,-96.422,-96.501,-96.587,-96.704,-96.784,-96.800,-96.800,-96.788,
--96.695,-96.517,-96.362,-96.264,-96.065,-95.634,-95.149,-95.002,-95.402,-96.185,-96.982,-97.484,-97.548,-97.197,-96.578,-95.857,
--95.126,-94.408,-93.714,-93.002,-92.154,-91.089,-89.902,-88.781,-87.797,-86.896,-86.048,-85.255,-84.385,-83.191,-81.598,-79.858,
--78.312,-77.060,-75.948,-74.780,-73.447,-71.916,-70.211,-68.436,-66.764,-65.335,-64.167,-63.166,-62.257,-61.529,-61.158,-61.143,
--61.180,-60.939,-60.387,-59.756,-59.274,-59.124,-59.502,-60.327,-60.868,-60.111,-57.747,-54.540,-51.485,-48.918,-46.716,-44.995,
--44.019,-43.522,-42.703,-41.096,-39.079,-37.326,-36.061,-35.035,-33.975,-32.798,-31.546,-30.335,-29.294,-28.394,-27.431,-26.278,
--25.073,-24.026,-23.177,-22.463,-21.905,-21.521,-21.166,-20.629,-19.891,-19.115,-18.400,-17.680,-16.869,-15.977,-15.056,-14.117,
--13.149,-12.150,-11.153,-10.222,-9.402,-8.639,-7.822,-6.936,-6.096,-5.367,-4.650,-3.824,-2.904,-1.952,-.917,.269,
-1.524,2.711,3.835,4.991,6.156,7.232,8.251,9.318,10.354,11.133,11.645,12.199,13.060,14.160,15.302,16.458,
-17.714,19.041,20.311,21.485,22.610,23.675,24.608,25.442,26.341,27.425,28.635,29.797,30.803,31.714,32.673,33.717,
-34.719,35.584,36.431,37.422,38.453,39.243,39.828,40.700,42.261,44.293,46.212,47.707,48.832,49.563,49.683,49.273,
-48.990,49.551,51.023,52.812,54.269,55.157,55.557,55.579,55.266,54.681,53.958,53.292,52.945,53.285,54.687,57.231,
-60.356,62.951,64.092,63.920,63.685,64.595,66.484,67.879,67.663,66.530,66.271,67.411,68.014,65.504,59.719,53.634,
-50.729,51.913,55.265,58.349,60.184,61.128,61.711,62.084,62.245,62.230,62.062,61.776,61.499,61.335,61.209,60.993,
-60.753,60.666,60.739,60.817,60.858,60.998,61.287,61.560,61.640,61.525,61.312,61.126,61.167,61.594,62.181,62.331,
-61.716,60.827,60.530,61.043,61.653,61.627,61.139,61.032,61.712,62.533,62.384,60.820,58.601,57.138,57.351,58.926,
-60.622,61.372,61.111,60.581,60.429,60.663,60.907,60.943,60.847,60.771,60.746,60.689,60.456,59.932,59.148,58.258,
-57.357,56.408,55.470,54.834,54.723,54.948,55.131,55.233,55.520,55.994,56.262,56.147,56.006,56.113,56.064,55.302,
-54.071,53.292,53.451,54.089,54.482,54.306,53.506,52.119,50.707,50.462,52.070,54.507,55.623,54.184,51.018,48.059,
-46.676,47.052,48.577,50.294,51.185,50.686,49.099,47.279,45.814,44.708,43.804,43.150,42.841,42.778,42.820,42.975,
-43.238,43.401,43.253,42.880,42.550,42.352,42.161,41.919,41.693,41.440,40.978,40.287,39.605,39.112,38.709,38.255,
-37.808,37.433,36.947,36.174,35.357,34.964,35.057,35.153,34.858,34.365,34.108,34.103,33.924,33.328,32.632,32.311,
-32.379,32.345,31.819,30.984,30.330,30.018,29.751,29.333,29.078,29.401,30.125,30.527,30.132,29.236,28.568,28.631,
-29.386,30.313,30.656,29.907,28.295,26.627,25.502,24.875,24.590,24.908,26.020,27.268,27.579,26.798,25.979,25.999,
-26.386,25.989,24.520,22.860,21.928,21.761,21.823,21.768,21.615,21.434,21.178,20.814,20.411,20.052,19.752,19.496,
-19.301,19.194,19.097,18.816,18.242,17.576,17.233,17.406,17.807,17.946,17.620,17.013,16.384,15.849,15.438,15.148,
-14.890,14.536,14.094,13.724,13.509,13.337,13.098,12.864,12.755,12.747,12.731,12.692,12.675,12.642,12.500,12.230,
-11.898,11.544,11.180,10.858,10.638,10.498,10.370,10.245,10.151,10.061,9.934,9.834,9.852,9.936,9.948,9.898,
-9.948,10.155,10.367,10.459,10.518,10.677,10.904,11.069,11.135,11.149,11.135,11.107,11.134,11.266,11.435,11.553,
-11.642,11.776,11.945,12.098,12.274,12.539,12.827,13.022,13.164,13.381,13.624,13.666,13.434,13.149,13.051,13.147,
-13.314,13.480,13.589,13.562,13.443,13.442,13.650,13.839,13.743,13.432,13.186,13.066,12.894,12.652,12.574,12.739,
-12.845,12.569,12.017,11.601,11.550,11.720,11.828,11.737,11.525,11.368,11.364,11.404,11.248,10.801,10.251,9.851,
-9.630,9.422,9.131,8.828,8.585,8.357,8.084,7.803,7.579,7.401,7.211,6.982,6.733,6.487,6.266,6.077,
-5.896,5.681,5.435,5.215,5.046,4.886,4.672,4.392,4.072,3.729,3.375,3.041,2.751,2.492,2.233,1.968,
-1.708,1.461,1.230,1.019,.818,.594,.327,.037,-.240,-.503,-.780,-1.090,-1.427,-1.772,-2.106,-2.415,
--2.708,-3.012,-3.334,-3.658,-3.980,-4.329,-4.726,-5.138,-5.522,-5.882,-6.267,-6.693,-7.130,-7.555,-7.973,-8.387,
--8.790,-9.193,-9.634,-10.117,-10.595,-11.032,-11.450,-11.887,-12.328,-12.732,-13.105,-13.505,-13.955,-14.409,-14.807,-15.152,
--15.497,-15.892,-16.343,-16.827,-17.322,-17.821,-18.322,-18.816,-19.297,-19.776,-20.281,-20.816,-21.343,-21.818,-22.245,-22.676,
--23.143,-23.624,-24.081,-24.509,-24.928,-25.339,-25.721,-26.065,-26.386,-26.701,-27.017,-27.340,-27.673,-28.010,-28.344,-28.690,
--29.070,-29.481,-29.890,-30.264,-30.596,-30.898,-31.194,-31.512,-31.869,-32.241,-32.592,-32.904,-33.193,-33.473,-33.748,-34.030,
--34.330,-34.618,-34.849,-35.030,-35.225,-35.468,-35.720,-35.933,-36.123,-36.328,-36.535,-36.702,-36.829,-36.944,-37.055,-37.148,
--37.238,-37.343,-37.434,-37.465,-37.444,-37.425,-37.427,-37.422,-37.399,-37.378,-37.352,-37.286,-37.186,-37.105,-37.049,-36.965,
--36.828,-36.678,-36.547,-36.401,-36.212,-36.020,-35.859,-35.686,-35.446,-35.168,-34.917,-34.687,-34.413,-34.087,-33.770,-33.502,
--33.249,-32.964,-32.642,-32.296,-31.918,-31.495,-31.032,-30.560,-30.115,-29.718,-29.350,-28.974,-28.574,-28.171,-27.781,-27.379,
--26.935,-26.464,-25.999,-25.548,-25.100,-24.667,-24.264,-23.874,-23.466,-23.041,-22.610,-22.161,-21.686,-21.221,-20.800,-20.390,
--19.926,-19.413,-18.924,-18.490,-18.075,-17.649,-17.229,-16.825,-16.416,-15.997,-15.597,-15.225,-14.847,-14.436,-14.006,-13.568,
--13.110,-12.638,-12.202,-11.835,-11.514,-11.202,-10.901,-10.625,-10.366,-10.098,-9.796,-9.430,-8.995,-8.551,-8.175,-7.861,
--7.519,-7.109,-6.705,-6.377,-6.082,-5.747,-5.390,-5.084,-4.819,-4.517,-4.158,-3.800,-3.486,-3.196,-2.913,-2.648,
--2.387,-2.086,-1.733,-1.374,-1.046,-.742,-.459,-.214,.013,.293,.646,1.006,1.317,1.631,2.005,2.383,
-2.672,2.923,3.305,3.857,4.400,4.772,5.052,5.423,5.889,6.251,6.373,6.326,6.275,6.313,6.449,6.636,
-6.811,7.013,7.491,8.534,10.093,11.729,13.060,14.075,14.872,15.276,15.019,14.203,13.263,12.451,11.700,11.029,
-10.722,10.946,11.457,11.930,12.352,12.879,13.495,14.053,14.482,14.657,14.174,12.603,9.980,6.895,4.108,2.214,
-1.487,1.727,2.279,2.502,2.233,1.603,.593,-.828,-2.232,-2.939,-2.803,-2.308,-1.771,-1.026,-.227,-.305,
--2.013,-4.855,-7.613,-9.695,-11.214,-11.881,-10.813,-7.882,-4.599,-2.976,-3.735,-6.001,-8.479,-10.407,-11.542,-11.884,
--11.709,-11.529,-11.707,-12.182,-12.699,-13.169,-13.682,-14.276,-14.897,-15.553,-16.345,-17.306,-18.330,-19.327,-20.363,-21.584,
--23.030,-24.606,-26.199,-27.747,-29.188,-30.442,-31.500,-32.443,-33.321,-34.073,-34.626,-34.994,-35.211,-35.222,-34.973,-34.566,
--34.196,-33.927,-33.666,-33.382,-33.221,-33.342,-33.783,-34.547,-35.691,-37.153,-38.584,-39.547,-39.915,-39.947,-39.959,-40.058,
--40.224,-40.511,-41.007,-41.659,-42.286,-42.796,-43.259,-43.682,-43.846,-43.506,-42.781,-42.185,-42.178,-42.729,-43.399,-43.807,
--43.913,-43.895,-43.883,-43.885,-43.856,-43.759,-43.580,-43.352,-43.138,-42.969,-42.810,-42.621,-42.403,-42.166,-41.887,-41.546,
--41.158,-40.748,-40.305,-39.815,-39.300,-38.781,-38.231,-37.627,-37.010,-36.449,-35.946,-35.444,-34.909,-34.352,-33.776,-33.168,
--32.537,-31.906,-31.237,-30.454,-29.550,-28.627,-27.779,-26.991,-26.185,-25.346,-24.525,-23.732,-22.907,-22.025,-21.148,-20.350,
--19.591,-18.765,-17.866,-17.036,-16.404,-15.937,-15.491,-14.987,-14.455,-13.939,-13.421,-12.878,-12.329,-11.798,-11.274,-10.745,
--10.221,-9.700,-9.155,-8.593,-8.066,-7.594,-7.122,-6.605,-6.085,-5.619,-5.196,-4.773,-4.362,-3.986,-3.598,-3.132,
--2.607,-2.090,-1.588,-1.057,-.522,-.069,.302,.695,1.175,1.683,2.133,2.519,2.886,3.275,3.720,4.235,
-4.772,5.263,5.723,6.227,6.768,7.239,7.600,7.954,8.395,8.876,9.317,9.744,10.211,10.677,11.071,11.431,
-11.839,12.265,12.621,12.914,13.221,13.530,13.785,14.067,14.518,15.078,15.500,15.743,16.124,16.885,17.789,18.384,
-18.600,18.811,19.268,19.729,19.779,19.360,18.827,18.582,18.796,19.397,20.147,20.725,20.941,20.965,21.233,22.003,
-23.052,23.917,24.392,24.695,25.141,25.811,26.605,27.502,28.611,29.937,31.213,32.062,32.346,32.302,32.268,32.291,
-32.068,31.357,30.382,29.736,29.829,30.538,31.415,32.141,32.683,33.114,33.467,33.768,34.067,34.372,34.623,34.797,
-34.937,35.028,34.909,34.407,33.553,32.590,31.752,31.085,30.506,29.972,29.539,29.260,29.079,28.894,28.683,28.510,
-28.367,28.132,27.727,27.278,27.005,26.975,27.059,27.115,27.091,26.949,26.624,26.153,25.697,25.368,25.118,24.894,
-24.794,24.902,25.032,24.849,24.272,24.522,24.042,23.869,23.941,24.104,24.391,24.865,25.348,25.533,25.363,25.101,
-25.002,25.046,25.044,24.921,24.797,24.798,24.867,24.793,24.446,23.963,23.635,23.616,23.782,23.901,23.909,23.959,
-24.205,24.571,24.770,24.538,23.868,23.027,22.342,21.951,21.747,21.539,21.246,20.940,20.730,20.613,20.440,20.066,
-19.565,19.235,19.290,19.556,19.596,19.183,18.523,17.935,17.452,16.861,16.054,15.161,14.351,13.672,13.118,12.705,
-12.383,11.977,11.335,10.466,9.487,8.463,7.410,6.390,5.534,4.924,4.522,4.198,3.807,3.256,2.572,1.882,
-1.303,.820,.346,-.131,-.515,-.742,-.872,-1.013,-1.198,-1.382,-1.517,-1.588,-1.584,-1.499,-1.352,-1.171,
--.982,-.849,-.892,-1.187,-1.641,-2.069,-2.399,-2.724,-3.107,-3.459,-3.684,-3.866,-4.171,-4.601,-4.995,-5.263,
--5.481,-5.721,-5.950,-6.136,-6.315,-6.485,-6.576,-6.643,-6.937,-7.604,-8.415,-8.964,-9.096,-8.960,-8.728,-8.461,
--8.238,-8.191,-8.345,-8.611,-8.968,-9.456,-9.973,-10.319,-10.497,-10.703,-10.902,-10.747,-10.114,-9.370,-8.787,-8.016,
--6.658,-5.167,-4.564,-5.172,-6.199,-6.767,-6.870,-7.004,-7.300,-7.489,-7.461,-7.351,-7.224,-7.085,-7.167,-7.745,
--8.651,-9.396,-9.861,-10.453,-11.424,-12.408,-12.916,-12.991,-13.032,-13.208,-13.412,-13.681,-14.254,-15.174,-16.128,-16.803,
--17.170,-17.358,-17.461,-17.608,-18.017,-18.798,-19.788,-20.742,-21.592,-22.412,-23.199,-23.875,-24.470,-25.118,-25.838,-26.467,
--26.884,-27.188,-27.555,-27.999,-28.392,-28.689,-29.023,-29.563,-30.362,-31.341,-32.357,-33.303,-34.215,-35.320,-36.891,-38.973,
--41.307,-43.552,-45.524,-47.169,-48.450,-49.380,-50.104,-50.773,-51.340,-51.647,-51.733,-51.853,-52.134,-52.406,-52.515,-52.623,
--52.962,-53.367,-53.351,-52.669,-51.638,-50.832,-50.606,-50.931,-51.515,-51.988,-52.147,-52.146,-52.344,-52.866,-53.450,-53.836,
--54.141,-54.683,-55.533,-56.479,-57.368,-58.237,-59.123,-59.983,-60.861,-61.915,-63.167,-64.406,-65.455,-66.398,-67.401,-68.452,
--69.430,-70.327,-71.227,-72.138,-73.014,-73.892,-74.856,-75.872,-76.816,-77.644,-78.421,-79.192,-79.956,-80.763,-81.672,-82.604,
--83.388,-83.998,-84.595,-85.307,-86.106,-86.937,-87.804,-88.663,-89.401,-90.011,-90.644,-91.373,-92.062,-92.595,-93.077,-93.647,
--94.233,-94.682,-95.026,-95.387,-95.706,-95.809,-95.735,-95.740,-95.970,-96.342,-96.789,-97.363,-98.025,-98.566,-98.882,-99.116,
--99.381,-99.497,-99.203,-98.518,-97.729,-97.086,-96.672,-96.505,-96.573,-96.776,-96.977,-97.134,-97.292,-97.476,-97.646,-97.743,
--97.690,-97.412,-96.947,-96.480,-96.149,-95.853,-95.401,-94.837,-94.477,-94.612,-95.250,-96.141,-96.927,-97.284,-97.088,-96.495,
--95.784,-95.098,-94.404,-93.667,-92.906,-92.087,-91.114,-89.993,-88.866,-87.846,-86.916,-86.048,-85.244,-84.383,-83.202,-81.586,
--79.783,-78.192,-76.952,-75.870,-74.685,-73.274,-71.647,-69.884,-68.141,-66.595,-65.316,-64.223,-63.195,-62.221,-61.425,-60.936,
--60.736,-60.633,-60.411,-59.976,-59.404,-58.921,-58.860,-59.418,-60.252,-60.432,-59.145,-56.515,-53.471,-50.764,-48.422,-46.292,
--44.630,-43.717,-43.159,-42.121,-40.300,-38.245,-36.619,-35.504,-34.549,-33.486,-32.279,-30.994,-29.753,-28.696,-27.804,-26.861,
--25.720,-24.488,-23.363,-22.401,-21.595,-21.016,-20.689,-20.422,-19.947,-19.218,-18.415,-17.684,-16.997,-16.256,-15.413,-14.481,
--13.510,-12.567,-11.661,-10.741,-9.793,-8.884,-8.050,-7.207,-6.299,-5.418,-4.683,-4.039,-3.310,-2.408,-1.364,-.203,
-1.063,2.341,3.512,4.577,5.629,6.689,7.719,8.757,9.856,10.906,11.705,12.269,12.901,13.844,15.015,16.182,
-17.279,18.404,19.609,20.837,22.021,23.138,24.176,25.139,26.089,27.118,28.260,29.447,30.566,31.549,32.447,33.381,
-34.382,35.320,36.074,36.740,37.526,38.458,39.380,40.302,41.540,43.351,45.532,47.530,48.877,49.422,49.292,48.844,
-48.619,49.087,50.314,51.923,53.402,54.420,54.929,55.098,55.157,55.195,55.082,54.648,53.933,53.276,53.230,54.387,
-57.021,60.572,63.647,65.011,64.807,64.535,65.522,67.514,69.007,68.960,67.933,67.370,67.811,67.994,65.946,61.122,
-55.405,51.785,51.880,54.776,58.192,60.511,61.613,62.146,62.539,62.786,62.799,62.623,62.370,62.112,61.878,61.679,
-61.513,61.385,61.309,61.309,61.413,61.628,61.896,62.103,62.176,62.159,62.113,62.014,61.874,61.908,62.325,62.890,
-62.968,62.259,61.337,61.098,61.662,62.206,62.064,61.647,61.868,62.772,63.210,62.084,59.688,57.550,57.032,58.221,
-60.078,61.429,61.784,61.455,61.065,60.981,61.107,61.161,61.059,60.977,61.083,61.309,61.421,61.248,60.823,60.301,
-59.757,59.073,58.117,57.058,56.326,56.151,56.267,56.292,56.278,56.543,57.020,57.218,56.935,56.603,56.607,56.665,
-56.289,55.583,55.074,54.931,54.924,55.056,55.490,55.764,54.960,53.188,52.175,53.458,56.208,57.727,56.256,52.687,
-49.396,48.042,48.765,50.751,52.832,53.816,53.059,50.959,48.582,46.701,45.402,44.522,44.038,43.906,43.903,43.876,
-43.916,44.078,44.135,43.867,43.419,43.111,42.999,42.872,42.626,42.343,42.018,41.507,40.821,40.203,39.796,39.452,
-39.007,38.522,38.077,37.539,36.808,36.144,35.929,36.103,36.158,35.788,35.263,34.996,34.934,34.643,33.949,33.234,
-32.961,33.037,32.869,32.081,31.011,30.300,30.101,29.942,29.462,28.966,28.998,29.542,29.963,29.737,28.948,28.095,
-27.673,27.942,28.748,29.441,29.299,28.257,26.969,26.013,25.363,24.875,24.812,25.368,25.976,25.861,25.259,25.322,
-26.522,27.749,27.523,25.726,23.617,22.341,21.973,21.963,21.944,21.855,21.675,21.365,20.978,20.614,20.285,19.952,
-19.656,19.500,19.472,19.369,18.950,18.214,17.504,17.228,17.429,17.703,17.623,17.178,16.674,16.312,16.025,15.704,
-15.372,15.064,14.732,14.354,14.028,13.829,13.690,13.515,13.326,13.199,13.126,13.052,12.979,12.937,12.881,12.720,
-12.431,12.078,11.719,11.384,11.096,10.855,10.627,10.405,10.242,10.159,10.083,9.946,9.816,9.806,9.896,9.964,
-9.993,10.078,10.252,10.419,10.521,10.620,10.774,10.931,11.022,11.059,11.069,11.044,11.012,11.068,11.250,11.469,
-11.631,11.759,11.900,12.017,12.085,12.190,12.410,12.671,12.856,13.005,13.226,13.479,13.604,13.551,13.393,13.160,
-12.881,12.775,13.103,13.738,14.138,13.964,13.505,13.299,13.475,13.730,13.806,13.710,13.510,13.221,12.939,12.840,
-12.918,12.932,12.716,12.400,12.205,12.150,12.082,11.907,11.664,11.431,11.266,11.187,11.137,10.995,10.720,10.427,
-10.230,10.072,9.821,9.477,9.166,8.951,8.760,8.521,8.263,8.040,7.839,7.615,7.356,7.077,6.802,6.569,
-6.397,6.252,6.066,5.833,5.608,5.423,5.236,5.001,4.732,4.456,4.161,3.829,3.491,3.189,2.916,2.634,
-2.333,2.044,1.784,1.547,1.321,1.100,.876,.636,.378,.108,-.173,-.466,-.768,-1.085,-1.423,-1.777,
--2.124,-2.455,-2.780,-3.102,-3.413,-3.721,-4.066,-4.464,-4.875,-5.250,-5.600,-5.979,-6.401,-6.838,-7.270,-7.703,
--8.137,-8.556,-8.970,-9.407,-9.869,-10.323,-10.753,-11.191,-11.654,-12.096,-12.471,-12.806,-13.179,-13.617,-14.063,-14.453,
--14.790,-15.129,-15.517,-15.964,-16.456,-16.966,-17.471,-17.960,-18.437,-18.911,-19.386,-19.871,-20.378,-20.898,-21.401,-21.865,
--22.306,-22.752,-23.204,-23.650,-24.096,-24.556,-25.012,-25.416,-25.750,-26.054,-26.373,-26.710,-27.038,-27.345,-27.648,-27.961,
--28.290,-28.639,-29.020,-29.424,-29.818,-30.170,-30.477,-30.763,-31.063,-31.391,-31.737,-32.083,-32.415,-32.725,-33.010,-33.281,
--33.568,-33.882,-34.182,-34.415,-34.592,-34.779,-35.014,-35.261,-35.473,-35.667,-35.875,-36.083,-36.247,-36.363,-36.460,-36.553,
--36.640,-36.730,-36.826,-36.904,-36.933,-36.928,-36.927,-36.931,-36.916,-36.887,-36.868,-36.841,-36.765,-36.654,-36.572,-36.537,
--36.493,-36.395,-36.270,-36.144,-35.999,-35.823,-35.652,-35.501,-35.324,-35.079,-34.809,-34.575,-34.359,-34.095,-33.776,-33.464,
--33.206,-32.980,-32.736,-32.438,-32.077,-31.672,-31.265,-30.872,-30.469,-30.040,-29.619,-29.250,-28.914,-28.562,-28.181,-27.790,
--27.384,-26.934,-26.445,-25.961,-25.508,-25.075,-24.647,-24.221,-23.798,-23.378,-22.972,-22.577,-22.159,-21.698,-21.230,-20.801,
--20.391,-19.939,-19.438,-18.943,-18.495,-18.076,-17.664,-17.260,-16.858,-16.441,-16.013,-15.608,-15.228,-14.836,-14.411,-13.966,
--13.517,-13.058,-12.607,-12.206,-11.867,-11.551,-11.224,-10.901,-10.607,-10.338,-10.071,-9.775,-9.415,-8.985,-8.545,-8.166,
--7.849,-7.521,-7.156,-6.802,-6.490,-6.176,-5.822,-5.469,-5.169,-4.901,-4.607,-4.281,-3.950,-3.621,-3.287,-2.974,
--2.706,-2.444,-2.142,-1.809,-1.492,-1.190,-.878,-.572,-.298,-.015,.337,.715,.999,1.183,1.429,1.847,
-2.325,2.678,2.913,3.220,3.705,4.253,4.705,5.050,5.385,5.746,6.096,6.413,6.708,6.950,7.089,7.141,
-7.177,7.250,7.434,7.912,8.834,10.059,11.237,12.219,13.192,14.251,15.068,15.262,14.941,14.575,14.381,14.176,
-13.822,13.472,13.270,13.133,12.965,12.859,12.936,13.210,13.721,14.514,15.279,15.308,14.123,11.978,9.540,7.279,
-5.438,4.278,3.910,3.988,3.952,3.521,2.662,1.317,-.360,-1.662,-1.906,-1.347,-.866,-.675,-.128,.866,
-1.105,-.548,-3.608,-6.519,-8.354,-9.096,-8.582,-6.391,-3.124,-.789,-1.120,-3.859,-7.190,-9.574,-10.712,-11.027,
--10.927,-10.714,-10.687,-11.003,-11.545,-12.098,-12.570,-12.997,-13.445,-13.984,-14.687,-15.554,-16.482,-17.359,-18.193,-19.102,
--20.198,-21.500,-22.943,-24.436,-25.884,-27.180,-28.251,-29.122,-29.898,-30.644,-31.307,-31.807,-32.149,-32.379,-32.476,-32.387,
--32.174,-31.991,-31.912,-31.880,-31.849,-31.878,-32.032,-32.320,-32.812,-33.686,-35.017,-36.549,-37.837,-38.620,-38.975,-39.113,
--39.171,-39.229,-39.412,-39.824,-40.407,-40.983,-41.457,-41.903,-42.361,-42.628,-42.405,-41.702,-40.978,-40.774,-41.216,-41.978,
--42.678,-43.180,-43.521,-43.726,-43.803,-43.791,-43.718,-43.550,-43.275,-42.984,-42.779,-42.639,-42.473,-42.257,-42.042,-41.839,
--41.588,-41.249,-40.837,-40.372,-39.861,-39.322,-38.775,-38.203,-37.579,-36.930,-36.328,-35.793,-35.283,-34.762,-34.233,-33.693,
--33.125,-32.544,-31.972,-31.366,-30.636,-29.771,-28.892,-28.105,-27.374,-26.599,-25.761,-24.922,-24.111,-23.283,-22.419,-21.571,
--20.767,-19.944,-19.028,-18.065,-17.201,-16.533,-16.006,-15.499,-14.953,-14.393,-13.856,-13.351,-12.869,-12.393,-11.892,-11.345,
--10.776,-10.226,-9.696,-9.152,-8.601,-8.087,-7.606,-7.095,-6.534,-5.991,-5.522,-5.088,-4.632,-4.179,-3.774,-3.379,
--2.923,-2.421,-1.943,-1.486,-.987,-.449,.041,.458,.879,1.365,1.874,2.332,2.728,3.094,3.468,3.890,
-4.386,4.911,5.394,5.835,6.302,6.800,7.240,7.586,7.937,8.382,8.879,9.348,9.797,10.266,10.713,11.082,
-11.425,11.829,12.261,12.617,12.899,13.203,13.551,13.887,14.234,14.684,15.195,15.581,15.811,16.132,16.738,17.445,
-17.916,18.155,18.523,19.212,19.926,20.203,19.936,19.453,19.169,19.292,19.786,20.423,20.873,20.922,20.733,20.762,
-21.310,22.184,22.905,23.237,23.386,23.691,24.253,24.956,25.780,26.908,28.479,30.271,31.762,32.564,32.768,32.772,
-32.756,32.465,31.618,30.448,29.634,29.657,30.370,31.257,31.966,32.479,32.909,33.325,33.755,34.195,34.579,34.840,
-35.023,35.227,35.404,35.316,34.773,33.850,32.827,31.928,31.201,30.593,30.088,29.725,29.521,29.400,29.246,29.023,
-28.789,28.559,28.245,27.786,27.305,27.014,26.982,27.097,27.234,27.320,27.250,26.923,26.416,25.971,25.697,25.462,
-25.173,24.988,25.060,25.192,25.024,24.522,24.828,24.505,24.514,24.641,24.688,24.802,25.175,25.629,25.797,25.605,
-25.342,25.261,25.298,25.257,25.110,25.015,25.084,25.198,25.103,24.703,24.216,23.970,24.018,24.050,23.789,23.391,
-23.312,23.776,24.481,24.874,24.637,23.869,22.898,22.017,21.375,21.002,20.849,20.810,20.777,20.705,20.591,20.396,
-20.061,19.656,19.429,19.559,19.845,19.816,19.232,18.366,17.668,17.245,16.819,16.148,15.289,14.443,13.713,13.115,
-12.672,12.354,11.988,11.369,10.455,9.390,8.334,7.342,6.409,5.573,4.913,4.470,4.165,3.831,3.336,2.716,
-2.131,1.670,1.248,.742,.173,-.315,-.636,-.839,-.995,-1.124,-1.242,-1.400,-1.610,-1.781,-1.807,-1.689,
--1.518,-1.390,-1.389,-1.590,-1.980,-2.401,-2.681,-2.840,-3.063,-3.436,-3.832,-4.120,-4.367,-4.715,-5.140,-5.473,
--5.650,-5.773,-5.943,-6.157,-6.390,-6.644,-6.864,-6.963,-7.015,-7.265,-7.835,-8.528,-9.056,-9.342,-9.476,-9.473,
--9.290,-9.013,-8.827,-8.802,-8.911,-9.204,-9.730,-10.307,-10.666,-10.844,-11.126,-11.502,-11.553,-11.091,-10.505,-10.120,
--9.570,-8.340,-6.764,-5.838,-5.979,-6.535,-6.743,-6.653,-6.786,-7.281,-7.807,-8.085,-8.069,-7.796,-7.471,-7.569,
--8.392,-9.541,-10.269,-10.418,-10.601,-11.324,-12.347,-13.146,-13.602,-13.929,-14.190,-14.328,-14.526,-15.124,-16.132,-17.143,
--17.794,-18.078,-18.165,-18.193,-18.326,-18.781,-19.594,-20.523,-21.328,-22.044,-22.832,-23.681,-24.460,-25.159,-25.875,-26.576,
--27.089,-27.366,-27.593,-27.950,-28.396,-28.800,-29.174,-29.667,-30.378,-31.284,-32.296,-33.304,-34.214,-35.097,-36.264,-38.041,
--40.388,-42.868,-45.033,-46.757,-48.136,-49.245,-50.112,-50.833,-51.473,-51.936,-52.103,-52.115,-52.275,-52.625,-52.870,-52.850,
--52.849,-53.187,-53.654,-53.659,-52.946,-51.919,-51.210,-51.116,-51.513,-52.079,-52.493,-52.601,-52.561,-52.721,-53.206,-53.758,
--54.098,-54.338,-54.821,-55.638,-56.559,-57.402,-58.227,-59.125,-60.052,-60.972,-61.978,-63.124,-64.291,-65.347,-66.337,-67.372,
--68.439,-69.443,-70.382,-71.326,-72.276,-73.190,-74.102,-75.085,-76.107,-77.062,-77.915,-78.723,-79.513,-80.282,-81.085,-81.972,
--82.855,-83.582,-84.163,-84.778,-85.534,-86.367,-87.202,-88.056,-88.909,-89.660,-90.296,-90.941,-91.653,-92.311,-92.831,-93.330,
--93.921,-94.503,-94.930,-95.261,-95.623,-95.936,-96.026,-95.947,-95.955,-96.178,-96.540,-97.009,-97.631,-98.308,-98.806,-99.080,
--99.328,-99.623,-99.745,-99.521,-99.104,-98.700,-98.254,-97.643,-97.049,-96.826,-97.063,-97.491,-97.836,-98.061,-98.258,-98.480,
--98.693,-98.749,-98.449,-97.752,-96.921,-96.278,-95.846,-95.388,-94.803,-94.311,-94.207,-94.589,-95.340,-96.194,-96.788,-96.835,
--96.361,-95.666,-94.988,-94.323,-93.596,-92.838,-92.074,-91.212,-90.170,-89.029,-87.945,-86.980,-86.112,-85.299,-84.405,-83.192,
--81.561,-79.760,-78.184,-76.970,-75.901,-74.683,-73.197,-71.492,-69.700,-68.010,-66.582,-65.411,-64.334,-63.228,-62.158,-61.280,
--60.665,-60.268,-60.009,-59.798,-59.508,-59.059,-58.631,-58.656,-59.349,-60.174,-60.043,-58.296,-55.406,-52.462,-50.041,-47.936,
--45.948,-44.390,-43.509,-42.811,-41.496,-39.463,-37.409,-35.942,-34.965,-34.029,-32.902,-31.631,-30.324,-29.102,-28.082,-27.222,
--26.293,-25.146,-23.905,-22.772,-21.792,-20.938,-20.285,-19.894,-19.610,-19.176,-18.510,-17.741,-17.003,-16.307,-15.604,-14.833,
--13.951,-12.988,-12.045,-11.169,-10.282,-9.312,-8.327,-7.424,-6.565,-5.665,-4.784,-4.056,-3.452,-2.756,-1.810,-.651,
-.603,1.871,3.084,4.173,5.138,6.070,7.053,8.120,9.263,10.421,11.447,12.233,12.892,13.700,14.794,16.020,
-17.132,18.079,19.017,20.104,21.336,22.570,23.663,24.619,25.581,26.678,27.880,29.056,30.138,31.153,32.133,33.088,
-34.042,34.996,35.850,36.485,36.951,37.470,38.226,39.262,40.589,42.275,44.327,46.531,48.449,49.584,49.668,48.977,
-48.338,48.561,49.757,51.323,52.618,53.475,54.044,54.451,54.787,55.157,55.501,55.537,55.151,54.697,54.702,55.431,
-56.961,59.376,62.416,65.120,66.475,66.592,66.714,67.777,69.328,70.175,69.800,68.757,67.903,67.530,67.087,65.473,
-61.906,57.029,53.042,52.126,54.455,58.068,60.812,62.096,62.638,63.086,63.414,63.436,63.265,63.090,62.888,62.582,
-62.273,62.112,62.063,61.991,61.925,62.034,62.340,62.624,62.697,62.638,62.650,62.742,62.732,62.586,62.603,63.046,
-63.646,63.742,63.062,62.183,61.921,62.328,62.679,62.554,62.487,63.123,63.946,63.538,61.304,58.501,57.121,57.925,
-59.921,61.606,62.304,62.272,62.022,61.839,61.770,61.719,61.557,61.278,61.066,61.103,61.330,61.515,61.512,61.379,
-61.219,60.982,60.482,59.633,58.637,57.873,57.532,57.453,57.427,57.555,58.036,58.663,58.868,58.413,57.717,57.296,
-57.165,57.059,56.923,56.811,56.577,56.223,56.312,57.269,58.261,57.718,55.445,53.417,53.650,55.645,56.828,55.476,
-52.427,49.833,49.039,49.972,51.835,53.625,54.350,53.501,51.489,49.256,47.444,46.161,45.398,45.188,45.347,45.475,
-45.404,45.338,45.386,45.283,44.795,44.147,43.745,43.638,43.545,43.308,43.004,42.646,42.127,41.484,40.948,40.614,
-40.300,39.847,39.322,38.812,38.236,37.575,37.107,37.099,37.360,37.362,36.871,36.198,35.742,35.468,35.020,34.263,
-33.496,33.067,32.898,32.549,31.778,30.896,30.398,30.322,30.196,29.693,29.079,28.822,28.961,29.107,28.945,28.474,
-27.844,27.289,27.173,27.698,28.476,28.761,28.248,27.344,26.533,25.859,25.277,25.017,25.142,25.135,24.572,24.056,
-24.690,26.475,27.919,27.616,25.768,23.762,22.597,22.225,22.170,22.163,22.109,21.906,21.548,21.183,20.898,20.603,
-20.226,19.891,19.757,19.750,19.579,19.032,18.228,17.558,17.351,17.527,17.647,17.368,16.808,16.356,16.187,16.112,
-15.896,15.540,15.178,14.868,14.589,14.346,14.158,13.998,13.833,13.680,13.566,13.462,13.341,13.233,13.174,13.118,
-12.969,12.692,12.338,11.985,11.690,11.449,11.197,10.865,10.499,10.238,10.144,10.111,10.016,9.886,9.836,9.895,
-9.992,10.093,10.217,10.354,10.462,10.552,10.679,10.828,10.922,10.940,10.942,10.967,11.004,11.077,11.252,11.510,
-11.744,11.899,12.019,12.119,12.143,12.106,12.140,12.312,12.521,12.671,12.830,13.064,13.285,13.387,13.424,13.443,
-13.298,12.932,12.734,13.215,14.238,14.961,14.754,13.935,13.337,13.371,13.759,14.058,14.092,13.898,13.573,13.260,
-13.095,13.067,13.062,13.062,13.157,13.307,13.288,12.959,12.455,12.017,11.728,11.526,11.362,11.229,11.096,10.941,
-10.799,10.685,10.517,10.215,9.839,9.526,9.314,9.129,8.916,8.704,8.512,8.310,8.073,7.812,7.535,7.247,
-6.983,6.786,6.632,6.447,6.210,5.973,5.767,5.555,5.315,5.081,4.875,4.652,4.363,4.038,3.737,3.464,
-3.172,2.849,2.527,2.231,1.950,1.673,1.410,1.163,.921,.670,.403,.124,-.161,-.449,-.750,-1.079,
--1.436,-1.798,-2.150,-2.491,-2.816,-3.122,-3.427,-3.771,-4.164,-4.565,-4.935,-5.292,-5.675,-6.092,-6.520,-6.953,
--7.404,-7.864,-8.308,-8.734,-9.167,-9.608,-10.038,-10.457,-10.899,-11.367,-11.807,-12.173,-12.496,-12.853,-13.270,-13.701,
--14.098,-14.455,-14.801,-15.167,-15.580,-16.057,-16.583,-17.114,-17.617,-18.093,-18.560,-19.022,-19.476,-19.942,-20.439,-20.957,
--21.458,-21.923,-22.361,-22.790,-23.220,-23.672,-24.160,-24.654,-25.088,-25.431,-25.727,-26.043,-26.386,-26.713,-27.008,-27.295,
--27.602,-27.923,-28.252,-28.601,-28.976,-29.349,-29.686,-29.987,-30.275,-30.568,-30.868,-31.177,-31.503,-31.845,-32.177,-32.477,
--32.754,-33.047,-33.368,-33.678,-33.927,-34.120,-34.315,-34.548,-34.794,-35.015,-35.213,-35.405,-35.581,-35.722,-35.830,-35.928,
--36.027,-36.125,-36.225,-36.321,-36.388,-36.406,-36.401,-36.404,-36.408,-36.388,-36.359,-36.349,-36.336,-36.275,-36.176,-36.104,
--36.081,-36.059,-35.995,-35.899,-35.788,-35.642,-35.462,-35.289,-35.143,-34.979,-34.761,-34.518,-34.294,-34.075,-33.817,-33.521,
--33.223,-32.951,-32.700,-32.451,-32.162,-31.798,-31.381,-30.989,-30.655,-30.316,-29.911,-29.481,-29.117,-28.824,-28.524,-28.167,
--27.772,-27.355,-26.903,-26.419,-25.945,-25.510,-25.098,-24.675,-24.231,-23.774,-23.331,-22.933,-22.576,-22.205,-21.770,-21.298,
--20.849,-20.434,-20.002,-19.524,-19.031,-18.566,-18.135,-17.722,-17.313,-16.893,-16.452,-16.011,-15.597,-15.198,-14.777,-14.327,
--13.875,-13.437,-13.004,-12.587,-12.215,-11.886,-11.565,-11.236,-10.916,-10.613,-10.312,-10.008,-9.702,-9.377,-9.004,-8.598,
--8.210,-7.857,-7.519,-7.188,-6.884,-6.594,-6.278,-5.929,-5.590,-5.279,-4.970,-4.664,-4.393,-4.147,-3.859,-3.501,
--3.135,-2.811,-2.500,-2.168,-1.854,-1.595,-1.346,-1.054,-.747,-.466,-.164,.229,.650,.957,1.138,1.355,
-1.731,2.196,2.598,2.902,3.201,3.574,4.011,4.463,4.893,5.269,5.573,5.864,6.251,6.762,7.281,7.663,
-7.880,7.997,8.084,8.238,8.648,9.435,10.430,11.289,11.898,12.496,13.260,13.987,14.378,14.494,14.647,14.932,
-15.140,15.094,14.824,14.393,13.835,13.295,12.985,12.951,13.129,13.610,14.481,15.348,15.459,14.540,13.111,11.735,
-10.351,8.711,7.087,6.019,5.575,5.323,4.863,3.975,2.505,.712,-.503,-.457,.288,.578,.365,.765,
-2.066,2.720,1.144,-2.132,-5.005,-6.088,-5.546,-4.020,-1.958,-.195,-.072,-2.208,-5.597,-8.491,-9.978,-10.358,
--10.321,-10.256,-10.279,-10.438,-10.736,-11.127,-11.577,-12.050,-12.478,-12.854,-13.299,-13.924,-14.671,-15.398,-16.093,-16.885,
--17.857,-18.973,-20.169,-21.435,-22.757,-24.064,-25.243,-26.226,-27.034,-27.752,-28.421,-28.987,-29.375,-29.617,-29.834,-30.075,
--30.277,-30.383,-30.430,-30.481,-30.549,-30.635,-30.773,-30.976,-31.229,-31.588,-32.217,-33.215,-34.447,-35.637,-36.591,-37.279,
--37.733,-37.978,-38.099,-38.253,-38.570,-39.030,-39.517,-39.961,-40.403,-40.862,-41.181,-41.098,-40.557,-39.880,-39.537,-39.736,
--40.330,-41.086,-41.889,-42.665,-43.284,-43.650,-43.806,-43.823,-43.685,-43.386,-43.048,-42.812,-42.650,-42.437,-42.157,-41.924,
--41.786,-41.641,-41.382,-41.000,-40.535,-40.005,-39.427,-38.836,-38.241,-37.615,-36.958,-36.322,-35.739,-35.187,-34.642,-34.103,
--33.559,-32.990,-32.418,-31.878,-31.333,-30.685,-29.920,-29.153,-28.480,-27.845,-27.128,-26.309,-25.466,-24.637,-23.786,-22.898,
--22.009,-21.136,-20.233,-19.281,-18.354,-17.559,-16.911,-16.319,-15.685,-14.994,-14.297,-13.661,-13.127,-12.684,-12.271,-11.801,
--11.248,-10.668,-10.126,-9.614,-9.085,-8.541,-8.031,-7.551,-7.039,-6.480,-5.948,-5.488,-5.040,-4.536,-4.006,-3.528,
--3.094,-2.642,-2.171,-1.732,-1.322,-.868,-.346,.182,.666,1.134,1.620,2.111,2.581,3.034,3.472,3.887,
-4.301,4.749,5.218,5.651,6.040,6.445,6.881,7.287,7.637,8.001,8.444,8.924,9.378,9.823,10.290,10.734,
-11.098,11.433,11.823,12.242,12.591,12.871,13.190,13.596,14.017,14.409,14.811,15.231,15.585,15.860,16.199,16.707,
-17.249,17.608,17.821,18.169,18.800,19.493,19.888,19.869,19.635,19.463,19.515,19.806,20.221,20.546,20.609,20.498,
-20.541,20.974,21.660,22.230,22.503,22.659,22.976,23.492,24.041,24.591,25.428,26.895,28.931,30.973,32.399,33.066,
-33.297,33.343,33.028,32.094,30.774,29.777,29.645,30.272,31.135,31.838,32.331,32.743,33.192,33.713,34.238,34.639,
-34.868,35.047,35.293,35.491,35.366,34.785,33.892,32.933,32.048,31.283,30.675,30.258,30.016,29.878,29.752,29.558,
-29.287,28.991,28.695,28.329,27.846,27.360,27.066,27.034,27.178,27.384,27.552,27.528,27.197,26.696,26.313,26.121,
-25.898,25.531,25.262,25.306,25.441,25.276,24.828,25.307,25.002,25.061,25.206,25.193,25.193,25.440,25.791,25.912,
-25.757,25.586,25.562,25.573,25.466,25.281,25.180,25.228,25.307,25.225,24.928,24.597,24.469,24.520,24.426,23.968,
-23.399,23.230,23.642,24.258,24.521,24.198,23.451,22.561,21.724,21.079,20.738,20.709,20.817,20.829,20.658,20.398,
-20.159,19.931,19.681,19.508,19.533,19.631,19.438,18.760,17.855,17.161,16.805,16.514,16.008,15.294,14.545,13.859,
-13.249,12.747,12.358,11.951,11.329,10.436,9.420,8.467,7.621,6.812,6.010,5.298,4.783,4.448,4.133,3.687,
-3.129,2.596,2.148,1.682,1.087,.415,-.184,-.624,-.916,-1.065,-1.070,-1.029,-1.125,-1.443,-1.851,-2.143,
--2.236,-2.205,-2.181,-2.285,-2.586,-3.031,-3.438,-3.656,-3.733,-3.854,-4.100,-4.387,-4.645,-4.932,-5.296,-5.645,
--5.853,-5.950,-6.069,-6.257,-6.456,-6.644,-6.861,-7.090,-7.264,-7.421,-7.703,-8.147,-8.608,-8.983,-9.343,-9.740,
--10.018,-10.000,-9.752,-9.499,-9.357,-9.351,-9.575,-10.078,-10.629,-10.926,-11.057,-11.391,-11.925,-12.143,-11.750,-11.161,
--10.861,-10.604,-9.779,-8.444,-7.386,-7.086,-7.165,-7.075,-6.873,-6.983,-7.502,-8.115,-8.514,-8.575,-8.321,-8.032,
--8.229,-9.131,-10.197,-10.645,-10.448,-10.397,-11.091,-12.267,-13.314,-14.030,-14.570,-14.980,-15.219,-15.506,-16.188,-17.251,
--18.266,-18.876,-19.113,-19.186,-19.250,-19.448,-19.937,-20.701,-21.498,-22.162,-22.814,-23.635,-24.577,-25.459,-26.234,-26.966,
--27.589,-27.953,-28.090,-28.246,-28.576,-28.982,-29.338,-29.727,-30.335,-31.204,-32.222,-33.270,-34.265,-35.168,-36.094,-37.381,
--39.322,-41.774,-44.193,-46.133,-47.596,-48.828,-49.936,-50.852,-51.540,-52.030,-52.312,-52.392,-52.447,-52.694,-53.074,-53.293,
--53.282,-53.368,-53.784,-54.192,-54.006,-53.141,-52.163,-51.662,-51.716,-52.041,-52.396,-52.683,-52.856,-52.965,-53.182,-53.597,
--54.061,-54.384,-54.653,-55.135,-55.892,-56.718,-57.471,-58.244,-59.159,-60.157,-61.128,-62.101,-63.151,-64.246,-65.297,-66.310,
--67.349,-68.404,-69.417,-70.399,-71.398,-72.403,-73.366,-74.307,-75.292,-76.312,-77.291,-78.189,-79.023,-79.800,-80.536,-81.312,
--82.182,-83.047,-83.760,-84.353,-85.009,-85.811,-86.661,-87.473,-88.279,-89.090,-89.833,-90.493,-91.166,-91.880,-92.522,-93.038,
--93.555,-94.160,-94.730,-95.129,-95.439,-95.788,-96.091,-96.185,-96.133,-96.172,-96.398,-96.747,-97.225,-97.875,-98.549,-99.006,
--99.258,-99.535,-99.864,-99.997,-99.852,-99.685,-99.619,-99.339,-98.562,-97.596,-97.085,-97.276,-97.844,-98.359,-98.677,-98.885,
--99.126,-99.454,-99.702,-99.498,-98.653,-97.484,-96.524,-95.940,-95.465,-94.897,-94.380,-94.143,-94.243,-94.657,-95.348,-96.085,
--96.438,-96.169,-95.498,-94.800,-94.189,-93.557,-92.869,-92.173,-91.409,-90.440,-89.276,-88.102,-87.076,-86.200,-85.373,-84.426,
--83.165,-81.538,-79.787,-78.265,-77.082,-76.009,-74.752,-73.204,-71.445,-69.642,-67.992,-66.630,-65.499,-64.393,-63.199,-62.023,
--61.027,-60.243,-59.627,-59.212,-59.035,-58.942,-58.691,-58.350,-58.395,-59.120,-59.963,-59.754,-57.850,-54.835,-51.865,-49.492,
--47.468,-45.586,-44.117,-43.202,-42.293,-40.705,-38.534,-36.564,-35.293,-34.455,-33.529,-32.333,-31.001,-29.689,-28.518,-27.573,
--26.767,-25.833,-24.623,-23.306,-22.132,-21.146,-20.277,-19.554,-19.051,-18.688,-18.271,-17.713,-17.061,-16.370,-15.651,-14.920,
--14.172,-13.345,-12.409,-11.449,-10.552,-9.669,-8.708,-7.709,-6.778,-5.912,-5.022,-4.134,-3.372,-2.728,-1.992,-.990,
-.223,1.468,2.634,3.705,4.677,5.556,6.418,7.388,8.541,9.809,11.010,11.979,12.737,13.501,14.488,15.698,
-16.920,17.954,18.803,19.659,20.721,21.989,23.240,24.246,25.054,25.956,27.139,28.454,29.631,30.630,31.624,32.705,
-33.771,34.698,35.469,36.095,36.564,36.919,37.330,38.020,39.163,40.817,42.889,45.150,47.320,49.075,50.017,49.899,
-49.093,48.603,49.232,50.744,52.175,52.942,53.304,53.740,54.342,54.986,55.587,55.953,55.817,55.417,55.628,57.056,
-59.260,61.378,63.200,65.040,66.777,67.890,68.448,69.221,70.508,71.547,71.525,70.584,69.373,68.156,66.902,65.725,
-64.441,62.136,58.272,54.203,52.514,54.344,58.072,61.141,62.582,63.175,63.718,64.120,64.112,63.904,63.797,63.682,
-63.351,62.949,62.768,62.782,62.763,62.711,62.833,63.128,63.325,63.286,63.208,63.283,63.386,63.295,63.108,63.201,
-63.702,64.187,64.062,63.263,62.423,62.213,62.605,63.042,63.309,63.822,64.731,65.083,63.615,60.518,57.808,57.448,
-59.353,61.691,62.919,63.006,62.755,62.630,62.561,62.442,62.289,62.065,61.703,61.306,61.082,61.086,61.198,61.334,
-61.502,61.651,61.620,61.281,60.655,59.872,59.104,58.511,58.202,58.242,58.676,59.438,60.177,60.389,59.869,58.957,
-58.185,57.805,57.770,57.943,58.086,57.912,57.553,57.731,58.854,59.980,59.470,57.021,54.374,53.416,53.995,54.291,
-53.115,51.103,49.668,49.529,50.473,51.891,53.051,53.279,52.397,50.908,49.445,48.201,47.145,46.476,46.431,46.770,
-46.969,46.910,46.936,47.134,47.045,46.321,45.291,44.559,44.279,44.155,43.962,43.712,43.385,42.873,42.235,41.708,
-41.381,41.086,40.673,40.188,39.672,39.052,38.372,37.927,37.918,38.095,37.982,37.422,36.705,36.138,35.680,35.092,
-34.310,33.531,32.966,32.577,32.144,31.565,31.020,30.733,30.635,30.419,29.955,29.452,29.133,28.938,28.711,28.479,
-28.317,28.098,27.709,27.401,27.565,28.130,28.550,28.450,27.947,27.272,26.483,25.740,25.386,25.408,25.229,24.540,
-24.028,24.619,26.070,26.976,26.367,24.740,23.276,22.541,22.309,22.260,22.299,22.314,22.138,21.797,21.488,21.248,
-20.915,20.449,20.073,19.961,19.960,19.751,19.193,18.453,17.859,17.633,17.695,17.701,17.376,16.819,16.380,16.241,
-16.226,16.068,15.717,15.322,15.013,14.797,14.622,14.445,14.252,14.068,13.925,13.815,13.688,13.534,13.411,13.358,
-13.325,13.220,12.998,12.693,12.376,12.116,11.904,11.634,11.215,10.721,10.354,10.214,10.190,10.121,9.994,9.906,
-9.914,9.995,10.121,10.268,10.392,10.477,10.572,10.719,10.856,10.900,10.864,10.840,10.875,10.969,11.147,11.426,
-11.727,11.948,12.087,12.210,12.289,12.247,12.152,12.182,12.368,12.550,12.655,12.798,13.028,13.193,13.203,13.217,
-13.334,13.337,13.067,12.907,13.420,14.491,15.249,15.055,14.241,13.642,13.638,13.947,14.157,14.143,13.973,13.739,
-13.530,13.400,13.315,13.256,13.346,13.686,14.078,14.131,13.707,13.087,12.620,12.361,12.163,11.953,11.769,11.625,
-11.485,11.336,11.174,10.946,10.614,10.243,9.934,9.705,9.500,9.302,9.136,8.983,8.786,8.539,8.283,8.020,
-7.726,7.427,7.184,6.995,6.791,6.541,6.294,6.082,5.872,5.649,5.451,5.298,5.126,4.873,4.568,4.281,
-4.021,3.741,3.423,3.091,2.760,2.424,2.086,1.768,1.479,1.201,.920,.642,.376,.115,-.155,-.444,
--.758,-1.088,-1.423,-1.761,-2.100,-2.432,-2.751,-3.072,-3.427,-3.817,-4.212,-4.594,-4.977,-5.383,-5.800,-6.215,
--6.642,-7.099,-7.571,-8.028,-8.466,-8.903,-9.336,-9.747,-10.148,-10.571,-11.022,-11.455,-11.836,-12.185,-12.554,-12.959,
--13.377,-13.784,-14.170,-14.532,-14.876,-15.239,-15.668,-16.174,-16.713,-17.237,-17.732,-18.208,-18.660,-19.081,-19.499,-19.962,
--20.484,-21.023,-21.528,-21.986,-22.410,-22.824,-23.259,-23.738,-24.239,-24.694,-25.058,-25.360,-25.664,-25.986,-26.294,-26.577,
--26.865,-27.177,-27.499,-27.815,-28.136,-28.471,-28.800,-29.106,-29.403,-29.714,-30.031,-30.328,-30.609,-30.910,-31.249,-31.598,
--31.920,-32.213,-32.506,-32.814,-33.113,-33.372,-33.594,-33.813,-34.053,-34.300,-34.530,-34.730,-34.903,-35.046,-35.166,-35.275,
--35.385,-35.494,-35.599,-35.706,-35.810,-35.877,-35.891,-35.881,-35.883,-35.888,-35.875,-35.858,-35.864,-35.873,-35.842,-35.775,
--35.718,-35.689,-35.656,-35.594,-35.514,-35.417,-35.275,-35.089,-34.908,-34.759,-34.614,-34.437,-34.233,-34.025,-33.805,-33.561,
--33.300,-33.025,-32.729,-32.424,-32.137,-31.850,-31.508,-31.106,-30.723,-30.405,-30.087,-29.694,-29.265,-28.903,-28.621,-28.334,
--27.982,-27.587,-27.177,-26.748,-26.302,-25.872,-25.476,-25.094,-24.694,-24.263,-23.808,-23.357,-22.953,-22.606,-22.258,-21.839,
--21.361,-20.894,-20.471,-20.053,-19.596,-19.110,-18.634,-18.186,-17.755,-17.318,-16.862,-16.394,-15.950,-15.543,-15.143,-14.713,
--14.261,-13.824,-13.406,-12.993,-12.594,-12.228,-11.890,-11.556,-11.231,-10.933,-10.637,-10.306,-9.953,-9.628,-9.334,-9.021,
--8.658,-8.268,-7.888,-7.535,-7.224,-6.951,-6.680,-6.378,-6.068,-5.777,-5.478,-5.130,-4.779,-4.509,-4.301,-4.045,
--3.701,-3.342,-3.017,-2.681,-2.309,-1.964,-1.694,-1.440,-1.142,-.841,-.590,-.336,.006,.412,.778,1.069,
-1.349,1.671,2.026,2.396,2.774,3.139,3.473,3.812,4.220,4.683,5.105,5.425,5.720,6.122,6.664,7.251,
-7.775,8.206,8.554,8.807,9.003,9.303,9.872,10.648,11.350,11.792,12.081,12.429,12.881,13.352,13.825,14.328,
-14.791,15.085,15.181,15.098,14.790,14.261,13.738,13.488,13.519,13.716,14.156,14.903,15.540,15.448,14.656,13.886,
-13.504,12.957,11.634,9.830,8.356,7.526,7.042,6.557,5.798,4.471,2.746,1.571,1.649,2.263,2.093,1.241,
-1.266,2.745,3.933,2.810,-.245,-2.833,-3.260,-1.951,-.374,.371,-.227,-2.240,-5.091,-7.658,-9.120,-9.573,
--9.632,-9.717,-9.900,-10.147,-10.408,-10.614,-10.804,-11.131,-11.628,-12.120,-12.490,-12.865,-13.385,-13.969,-14.492,-15.052,
--15.856,-16.913,-18.039,-19.111,-20.162,-21.238,-22.301,-23.294,-24.195,-25.011,-25.760,-26.440,-26.997,-27.375,-27.629,-27.927,
--28.363,-28.843,-29.213,-29.431,-29.566,-29.681,-29.803,-29.967,-30.202,-30.515,-30.916,-31.440,-32.097,-32.837,-33.619,-34.443,
--35.272,-35.974,-36.438,-36.705,-36.931,-37.235,-37.635,-38.099,-38.591,-39.070,-39.471,-39.689,-39.613,-39.236,-38.752,-38.455,
--38.500,-38.850,-39.445,-40.298,-41.361,-42.407,-43.192,-43.645,-43.817,-43.738,-43.455,-43.122,-42.885,-42.706,-42.447,-42.115,
--41.866,-41.767,-41.690,-41.496,-41.171,-40.758,-40.257,-39.671,-39.046,-38.423,-37.786,-37.121,-36.458,-35.825,-35.211,-34.606,
--34.018,-33.441,-32.849,-32.257,-31.707,-31.178,-30.587,-29.922,-29.289,-28.762,-28.260,-27.643,-26.883,-26.057,-25.219,-24.351,
--23.441,-22.514,-21.580,-20.633,-19.705,-18.877,-18.188,-17.564,-16.889,-16.101,-15.236,-14.377,-13.614,-12.998,-12.511,-12.060,
--11.553,-10.986,-10.437,-9.953,-9.482,-8.945,-8.348,-7.772,-7.254,-6.755,-6.247,-5.767,-5.333,-4.878,-4.338,-3.754,
--3.227,-2.782,-2.366,-1.949,-1.558,-1.190,-.781,-.285,.268,.825,1.361,1.877,2.376,2.881,3.415,3.953,
-4.438,4.850,5.230,5.603,5.954,6.287,6.648,7.050,7.447,7.810,8.179,8.590,9.009,9.402,9.799,10.235,
-10.666,11.033,11.366,11.731,12.113,12.442,12.731,13.095,13.579,14.097,14.539,14.900,15.230,15.565,15.934,16.401,
-16.974,17.528,17.904,18.093,18.258,18.537,18.894,19.184,19.322,19.345,19.336,19.370,19.499,19.731,19.991,20.178,
-20.300,20.500,20.902,21.426,21.868,22.145,22.402,22.815,23.340,23.764,24.039,24.508,25.666,27.636,29.919,31.766,
-32.816,33.261,33.397,33.175,32.383,31.172,30.139,29.822,30.241,31.003,31.728,32.281,32.719,33.159,33.660,34.153,
-34.505,34.708,34.907,35.164,35.299,35.081,34.515,33.800,33.053,32.253,31.444,30.800,30.440,30.288,30.173,29.991,
-29.727,29.407,29.079,28.762,28.400,27.947,27.488,27.192,27.137,27.267,27.486,27.684,27.688,27.395,26.971,26.701,
-26.592,26.362,25.929,25.628,25.716,25.916,25.767,25.307,25.914,25.509,25.481,25.588,25.574,25.553,25.715,25.951,
-26.021,25.928,25.860,25.871,25.834,25.682,25.502,25.391,25.344,25.309,25.246,25.141,25.027,24.958,24.883,24.625,
-24.098,23.524,23.268,23.421,23.681,23.676,23.307,22.722,22.085,21.488,21.035,20.834,20.872,20.946,20.830,20.498,
-20.136,19.913,19.796,19.631,19.385,19.165,19.001,18.735,18.225,17.585,17.058,16.709,16.363,15.879,15.318,14.800,
-14.310,13.752,13.119,12.481,11.841,11.120,10.285,9.417,8.611,7.873,7.138,6.387,5.693,5.151,4.761,4.408,
-3.976,3.467,2.961,2.477,1.935,1.277,.567,-.076,-.587,-.937,-1.068,-.968,-.794,-.816,-1.178,-1.763,
--2.324,-2.697,-2.879,-2.977,-3.136,-3.456,-3.909,-4.352,-4.669,-4.870,-5.022,-5.134,-5.203,-5.312,-5.557,-5.882,
--6.108,-6.171,-6.214,-6.380,-6.620,-6.797,-6.908,-7.065,-7.307,-7.574,-7.849,-8.173,-8.511,-8.766,-8.980,-9.333,
--9.863,-10.327,-10.471,-10.330,-10.109,-9.927,-9.846,-10.019,-10.516,-11.071,-11.336,-11.397,-11.676,-12.224,-12.511,-12.157,
--11.531,-11.215,-11.137,-10.703,-9.737,-8.759,-8.234,-8.012,-7.740,-7.467,-7.505,-7.902,-8.381,-8.672,-8.703,-8.564,
--8.533,-8.962,-9.840,-10.581,-10.619,-10.201,-10.197,-11.070,-12.381,-13.470,-14.219,-14.903,-15.611,-16.228,-16.829,-17.659,
--18.715,-19.646,-20.176,-20.383,-20.502,-20.666,-20.932,-21.359,-21.917,-22.478,-23.016,-23.692,-24.624,-25.676,-26.621,-27.399,
--28.057,-28.545,-28.774,-28.850,-29.030,-29.408,-29.823,-30.160,-30.560,-31.232,-32.174,-33.206,-34.192,-35.121,-36.049,-37.134,
--38.655,-40.768,-43.216,-45.449,-47.127,-48.395,-49.576,-50.728,-51.651,-52.206,-52.466,-52.575,-52.654,-52.824,-53.155,-53.538,
--53.792,-53.954,-54.271,-54.754,-54.937,-54.364,-53.236,-52.290,-52.022,-52.248,-52.517,-52.679,-52.874,-53.164,-53.457,-53.714,
--54.007,-54.349,-54.675,-55.010,-55.491,-56.159,-56.890,-57.594,-58.346,-59.248,-60.251,-61.248,-62.227,-63.239,-64.276,-65.288,
--66.282,-67.305,-68.352,-69.381,-70.401,-71.449,-72.501,-73.497,-74.445,-75.416,-76.435,-77.448,-78.395,-79.243,-79.990,-80.692,
--81.463,-82.352,-83.245,-83.998,-84.643,-85.347,-86.171,-87.007,-87.775,-88.512,-89.252,-89.955,-90.622,-91.327,-92.069,-92.725,
--93.254,-93.783,-94.384,-94.929,-95.302,-95.592,-95.923,-96.209,-96.303,-96.279,-96.346,-96.572,-96.914,-97.406,-98.080,-98.744,
--99.150,-99.359,-99.634,-99.978,-100.127,-100.049,-100.047,-100.192,-100.049,-99.260,-98.156,-97.445,-97.444,-97.920,-98.512,-99.031,
--99.427,-99.766,-100.170,-100.524,-100.373,-99.406,-97.968,-96.754,-96.020,-95.467,-94.873,-94.396,-94.181,-94.114,-94.163,-94.565,
--95.360,-96.041,-96.046,-95.434,-94.720,-94.185,-93.689,-93.084,-92.422,-91.719,-90.819,-89.643,-88.371,-87.248,-86.326,-85.464,
--84.462,-83.162,-81.559,-79.867,-78.386,-77.205,-76.109,-74.816,-73.229,-71.450,-69.660,-68.038,-66.680,-65.512,-64.339,-63.061,
--61.782,-60.650,-59.681,-58.859,-58.308,-58.163,-58.276,-58.281,-58.099,-58.171,-58.885,-59.797,-59.754,-58.007,-55.004,-51.862,
--49.250,-47.091,-45.226,-43.797,-42.784,-41.642,-39.862,-37.696,-35.906,-34.840,-34.107,-33.175,-31.927,-30.554,-29.234,-28.090,
--27.193,-26.429,-25.490,-24.209,-22.776,-21.491,-20.441,-19.542,-18.779,-18.206,-17.778,-17.370,-16.916,-16.412,-15.814,-15.082,
--14.271,-13.464,-12.643,-11.735,-10.771,-9.847,-8.966,-8.048,-7.083,-6.150,-5.269,-4.369,-3.446,-2.594,-1.837,-1.029,
--.020,1.146,2.290,3.305,4.218,5.085,5.924,6.782,7.779,9.001,10.351,11.575,12.506,13.247,14.064,15.108,
-16.293,17.434,18.437,19.348,20.310,21.454,22.751,23.960,24.852,25.533,26.374,27.567,28.884,30.025,31.026,32.141,
-33.401,34.527,35.273,35.681,35.967,36.307,36.775,37.401,38.254,39.489,41.257,43.497,45.877,48.005,49.600,50.420,
-50.348,49.765,49.555,50.316,51.643,52.625,52.977,53.227,53.832,54.653,55.399,55.971,56.199,55.922,55.698,56.764,
-59.613,63.072,65.505,66.597,67.233,67.983,68.689,69.417,70.642,72.190,73.017,72.534,71.351,70.141,68.654,66.611,
-64.718,63.587,62.234,59.175,55.077,52.824,54.299,58.133,61.455,63.025,63.681,64.324,64.790,64.735,64.459,64.375,
-64.336,64.028,63.599,63.425,63.517,63.612,63.659,63.813,64.034,64.101,64.000,63.946,63.978,63.882,63.636,63.606,
-64.061,64.653,64.677,63.830,62.583,61.746,61.745,62.340,63.063,63.801,64.731,65.582,65.328,63.198,60.027,57.978,
-58.489,60.782,62.824,63.484,63.251,63.033,63.018,62.926,62.728,62.610,62.534,62.288,61.875,61.515,61.326,61.265,
-61.330,61.540,61.762,61.789,61.590,61.264,60.794,60.088,59.281,58.765,58.824,59.379,60.107,60.672,60.819,60.457,
-59.754,59.057,58.640,58.556,58.682,58.780,58.658,58.461,58.680,59.515,60.248,59.734,57.721,55.278,53.633,52.898,
-52.293,51.325,50.284,49.720,49.915,50.821,52.032,52.787,52.482,51.345,50.217,49.539,48.978,48.215,47.592,47.549,
-47.851,47.957,47.922,48.268,48.956,49.156,48.281,46.777,45.549,44.954,44.710,44.513,44.293,43.989,43.489,42.858,
-42.336,42.019,41.765,41.443,41.055,40.575,39.911,39.137,38.556,38.343,38.275,37.998,37.454,36.872,36.393,35.906,
-35.266,34.513,33.810,33.251,32.791,32.342,31.899,31.538,31.279,31.009,30.611,30.160,29.834,29.625,29.331,28.900,
-28.578,28.532,28.527,28.241,27.769,27.524,27.693,28.079,28.429,28.588,28.342,27.560,26.582,26.036,26.025,25.926,
-25.320,24.728,24.894,25.614,25.878,25.165,23.995,23.118,22.678,22.436,22.319,22.379,22.466,22.365,22.119,21.896,
-21.652,21.210,20.643,20.259,20.183,20.184,19.974,19.500,18.898,18.336,17.948,17.776,17.685,17.460,17.056,16.660,
-16.445,16.355,16.199,15.893,15.522,15.210,15.001,14.850,14.686,14.486,14.287,14.128,13.982,13.801,13.609,13.487,
-13.463,13.472,13.433,13.317,13.131,12.904,12.680,12.456,12.141,11.652,11.075,10.623,10.407,10.327,10.232,10.100,
-10.004,9.981,10.023,10.122,10.259,10.387,10.487,10.604,10.756,10.876,10.897,10.858,10.841,10.873,10.964,11.157,
-11.454,11.752,11.958,12.116,12.288,12.392,12.327,12.205,12.251,12.471,12.649,12.708,12.805,13.009,13.142,13.106,
-13.089,13.236,13.343,13.210,13.103,13.470,14.212,14.689,14.538,14.122,13.986,14.175,14.328,14.242,14.034,13.870,
-13.795,13.796,13.807,13.709,13.498,13.409,13.649,14.033,14.126,13.777,13.289,12.992,12.869,12.718,12.491,12.286,
-12.138,11.986,11.800,11.594,11.345,11.020,10.660,10.346,10.098,9.887,9.710,9.577,9.440,9.236,8.976,8.721,
-8.470,8.176,7.854,7.579,7.367,7.152,6.898,6.645,6.429,6.221,6.000,5.801,5.646,5.483,5.258,4.990,
-4.735,4.494,4.231,3.932,3.616,3.282,2.917,2.539,2.181,1.852,1.530,1.209,.910,.647,.399,.136,
--.148,-.440,-.730,-1.025,-1.339,-1.674,-2.016,-2.353,-2.696,-3.064,-3.454,-3.850,-4.248,-4.663,-5.091,-5.514,
--5.924,-6.344,-6.790,-7.249,-7.700,-8.148,-8.600,-9.039,-9.442,-9.825,-10.222,-10.641,-11.058,-11.453,-11.838,-12.236,
--12.649,-13.070,-13.490,-13.898,-14.274,-14.613,-14.947,-15.327,-15.782,-16.294,-16.823,-17.343,-17.835,-18.280,-18.667,-19.037,
--19.460,-19.972,-20.540,-21.093,-21.585,-22.018,-22.417,-22.819,-23.256,-23.727,-24.182,-24.571,-24.897,-25.200,-25.496,-25.777,
--26.046,-26.334,-26.654,-26.979,-27.291,-27.603,-27.922,-28.229,-28.518,-28.819,-29.157,-29.505,-29.816,-30.089,-30.372,-30.698,
--31.050,-31.391,-31.704,-31.997,-32.277,-32.545,-32.799,-33.042,-33.284,-33.526,-33.763,-33.984,-34.182,-34.348,-34.483,-34.600,
--34.716,-34.834,-34.944,-35.047,-35.155,-35.266,-35.345,-35.371,-35.370,-35.380,-35.402,-35.416,-35.425,-35.443,-35.458,-35.441,
--35.392,-35.342,-35.299,-35.243,-35.171,-35.101,-35.022,-34.897,-34.720,-34.538,-34.386,-34.247,-34.094,-33.920,-33.727,-33.508,
--33.274,-33.040,-32.792,-32.492,-32.155,-31.843,-31.570,-31.271,-30.906,-30.523,-30.179,-29.840,-29.454,-29.049,-28.699,-28.403,
--28.094,-27.734,-27.347,-26.956,-26.555,-26.148,-25.759,-25.393,-25.030,-24.653,-24.257,-23.835,-23.392,-22.970,-22.594,-22.229,
--21.809,-21.338,-20.876,-20.457,-20.043,-19.594,-19.116,-18.640,-18.182,-17.732,-17.270,-16.788,-16.310,-15.873,-15.479,-15.089,
--14.672,-14.249,-13.848,-13.454,-13.043,-12.637,-12.266,-11.917,-11.568,-11.238,-10.949,-10.661,-10.320,-9.943,-9.602,-9.311,
--9.011,-8.664,-8.291,-7.931,-7.602,-7.311,-7.048,-6.774,-6.475,-6.194,-5.959,-5.706,-5.367,-4.988,-4.670,-4.413,
--4.128,-3.800,-3.499,-3.238,-2.934,-2.551,-2.167,-1.843,-1.536,-1.207,-.901,-.664,-.447,-.178,.147,.504,
-.886,1.265,1.582,1.837,2.129,2.525,2.957,3.329,3.666,4.056,4.499,4.917,5.283,5.661,6.110,6.615,
-7.134,7.653,8.186,8.717,9.192,9.557,9.859,10.240,10.786,11.378,11.781,11.901,11.912,12.102,12.632,13.411,
-14.169,14.659,14.882,15.049,15.276,15.405,15.244,14.876,14.540,14.336,14.284,14.515,15.043,15.450,15.276,14.756,
-14.609,14.941,14.932,13.930,12.334,10.977,10.106,9.461,8.879,8.211,7.066,5.435,4.214,4.142,4.425,3.586,
-1.792,1.040,2.436,4.374,4.407,2.276,.016,-.637,.044,.556,-.223,-2.374,-5.145,-7.457,-8.612,-8.806,
--8.780,-8.980,-9.301,-9.581,-9.881,-10.224,-10.465,-10.600,-10.862,-11.349,-11.856,-12.232,-12.615,-13.131,-13.648,-14.028,
--14.433,-15.107,-16.032,-17.000,-17.918,-18.833,-19.749,-20.611,-21.433,-22.276,-23.143,-23.983,-24.764,-25.455,-26.003,-26.439,
--26.905,-27.487,-28.081,-28.524,-28.803,-29.020,-29.221,-29.377,-29.505,-29.703,-30.046,-30.516,-31.021,-31.457,-31.805,-32.182,
--32.742,-33.469,-34.162,-34.670,-35.046,-35.425,-35.851,-36.311,-36.836,-37.431,-37.971,-38.281,-38.300,-38.100,-37.800,-37.528,
--37.410,-37.486,-37.714,-38.113,-38.835,-39.958,-41.278,-42.427,-43.167,-43.486,-43.472,-43.243,-42.968,-42.767,-42.599,-42.351,
--42.047,-41.835,-41.761,-41.698,-41.526,-41.252,-40.917,-40.495,-39.960,-39.354,-38.727,-38.075,-37.385,-36.686,-36.000,-35.314,
--34.629,-33.978,-33.370,-32.764,-32.148,-31.554,-30.987,-30.399,-29.795,-29.268,-28.867,-28.491,-27.986,-27.308,-26.527,-25.705,
--24.853,-23.978,-23.091,-22.189,-21.276,-20.414,-19.672,-19.031,-18.378,-17.611,-16.719,-15.765,-14.832,-13.995,-13.286,-12.666,
--12.050,-11.394,-10.756,-10.223,-9.796,-9.356,-8.784,-8.090,-7.390,-6.784,-6.280,-5.837,-5.430,-5.031,-4.575,-4.024,
--3.435,-2.911,-2.488,-2.116,-1.747,-1.386,-1.034,-.648,-.182,.361,.943,1.526,2.087,2.624,3.166,3.741,
-4.324,4.843,5.252,5.575,5.860,6.137,6.435,6.790,7.199,7.612,7.994,8.361,8.734,9.098,9.443,9.801,
-10.201,10.608,10.979,11.320,11.667,12.005,12.308,12.614,13.021,13.561,14.137,14.624,14.984,15.284,15.628,16.089,
-16.681,17.350,17.982,18.444,18.666,18.682,18.613,18.590,18.677,18.843,19.012,19.133,19.216,19.313,19.472,19.698,
-19.956,20.224,20.523,20.883,21.273,21.621,21.915,22.246,22.698,23.196,23.552,23.717,23.988,24.855,26.541,28.690,
-30.599,31.804,32.377,32.634,32.665,32.313,31.557,30.728,30.264,30.353,30.873,31.568,32.219,32.733,33.145,33.528,
-33.879,34.145,34.363,34.633,34.905,34.943,34.623,34.116,33.646,33.163,32.470,31.612,30.900,30.541,30.421,30.300,
-30.078,29.781,29.450,29.112,28.789,28.451,28.052,27.634,27.328,27.214,27.272,27.444,27.642,27.710,27.546,27.286,
-27.156,27.101,26.835,26.342,26.042,26.217,26.523,26.421,25.914,26.415,25.955,25.830,25.885,25.895,25.908,26.040,
-26.202,26.243,26.189,26.149,26.103,25.973,25.795,25.664,25.558,25.396,25.218,25.152,25.211,25.253,25.152,24.891,
-24.492,23.994,23.511,23.195,23.066,22.981,22.787,22.465,22.091,21.728,21.415,21.209,21.143,21.146,21.065,20.795,
-20.389,20.028,19.831,19.732,19.549,19.200,18.790,18.470,18.261,18.075,17.846,17.545,17.115,16.523,15.891,15.437,
-15.231,15.056,14.609,13.795,12.769,11.750,10.846,10.053,9.315,8.581,7.834,7.106,6.449,5.885,5.392,4.924,
-4.449,3.960,3.473,2.990,2.474,1.880,1.218,.558,-.036,-.532,-.883,-1.007,-.898,-.722,-.730,-1.068,
--1.671,-2.349,-2.918,-3.290,-3.506,-3.705,-4.013,-4.443,-4.927,-5.417,-5.881,-6.213,-6.283,-6.140,-6.037,-6.159,
--6.399,-6.512,-6.470,-6.484,-6.682,-6.939,-7.090,-7.172,-7.339,-7.628,-7.952,-8.270,-8.597,-8.890,-9.074,-9.222,
--9.518,-10.001,-10.462,-10.696,-10.722,-10.655,-10.530,-10.411,-10.519,-10.993,-11.586,-11.898,-11.920,-12.043,-12.419,-12.654,
--12.373,-11.809,-11.482,-11.431,-11.192,-10.519,-9.724,-9.180,-8.834,-8.453,-8.097,-8.038,-8.317,-8.652,-8.778,-8.710,
--8.686,-8.969,-9.642,-10.416,-10.758,-10.463,-10.051,-10.314,-11.421,-12.755,-13.711,-14.368,-15.174,-16.250,-17.340,-18.295,
--19.239,-20.224,-21.045,-21.513,-21.713,-21.878,-22.124,-22.422,-22.720,-22.996,-23.283,-23.709,-24.443,-25.488,-26.618,-27.584,
--28.325,-28.888,-29.264,-29.442,-29.574,-29.875,-30.364,-30.851,-31.242,-31.703,-32.431,-33.385,-34.347,-35.194,-36.000,-36.946,
--38.238,-40.043,-42.325,-44.722,-46.750,-48.219,-49.361,-50.485,-51.580,-52.383,-52.753,-52.835,-52.881,-53.034,-53.307,-53.664,
--54.042,-54.411,-54.831,-55.347,-55.739,-55.550,-54.568,-53.240,-52.362,-52.299,-52.690,-52.987,-53.079,-53.232,-53.584,-53.969,
--54.223,-54.408,-54.660,-54.992,-55.359,-55.797,-56.370,-57.056,-57.783,-58.538,-59.368,-60.293,-61.282,-62.306,-63.337,-64.337,
--65.294,-66.256,-67.274,-68.330,-69.373,-70.409,-71.471,-72.535,-73.536,-74.476,-75.433,-76.457,-77.503,-78.481,-79.336,-80.078,
--80.795,-81.601,-82.523,-83.448,-84.254,-84.976,-85.740,-86.574,-87.384,-88.111,-88.797,-89.473,-90.119,-90.761,-91.470,-92.222,
--92.889,-93.437,-93.977,-94.563,-95.077,-95.430,-95.724,-96.055,-96.323,-96.395,-96.361,-96.423,-96.645,-97.003,-97.546,-98.272,
--98.938,-99.283,-99.406,-99.615,-99.934,-100.107,-100.093,-100.170,-100.394,-100.358,-99.734,-98.769,-98.000,-97.709,-97.891,-98.486,
--99.340,-100.131,-100.662,-101.053,-101.335,-101.107,-100.013,-98.400,-97.016,-96.111,-95.349,-94.581,-94.110,-94.049,-94.032,-93.879,
--94.036,-94.854,-95.836,-96.133,-95.615,-94.899,-94.430,-94.045,-93.479,-92.793,-92.103,-91.262,-90.096,-88.743,-87.509,-86.510,
--85.596,-84.551,-83.246,-81.683,-80.029,-78.536,-77.305,-76.164,-74.844,-73.252,-71.503,-69.775,-68.188,-66.783,-65.492,-64.186,
--62.801,-61.427,-60.185,-59.093,-58.153,-57.512,-57.361,-57.611,-57.885,-57.979,-58.192,-58.917,-59.872,-60.029,-58.541,-55.602,
--52.220,-49.236,-46.854,-44.979,-43.566,-42.415,-41.049,-39.169,-37.120,-35.545,-34.619,-33.899,-32.921,-31.646,-30.276,-28.956,
--27.781,-26.834,-26.037,-25.105,-23.843,-22.389,-21.028,-19.875,-18.894,-18.084,-17.483,-17.035,-16.624,-16.207,-15.782,-15.265,
--14.548,-13.671,-12.782,-11.940,-11.076,-10.151,-9.231,-8.355,-7.468,-6.529,-5.580,-4.663,-3.743,-2.783,-1.829,-.939,
--.064,.901,1.963,3.004,3.925,4.752,5.567,6.409,7.297,8.311,9.534,10.889,12.127,13.069,13.808,14.590,
-15.530,16.554,17.577,18.602,19.671,20.812,22.053,23.345,24.495,25.339,26.021,26.895,28.085,29.336,30.419,31.474,
-32.736,34.079,35.075,35.492,35.531,35.607,36.036,36.885,37.991,39.153,40.405,42.030,44.171,46.533,48.606,50.066,
-50.827,50.941,50.728,50.772,51.402,52.261,52.785,53.011,53.459,54.279,55.075,55.591,55.954,56.158,56.093,56.361,
-58.187,61.829,65.719,67.999,68.499,68.413,68.510,68.721,69.209,70.471,72.166,73.076,72.691,71.796,70.925,69.395,
-66.790,64.306,63.150,62.299,59.658,55.478,52.867,54.167,58.137,61.681,63.377,64.095,64.809,65.334,65.284,64.992,
-64.920,64.912,64.628,64.218,64.079,64.236,64.422,64.552,64.711,64.837,64.802,64.699,64.668,64.568,64.233,64.006,
-64.487,65.579,66.229,65.483,63.588,61.759,60.963,61.193,61.843,62.492,63.171,63.964,64.473,63.927,62.074,59.901,
-59.024,60.086,62.041,63.328,63.493,63.252,63.218,63.236,63.013,62.737,62.716,62.838,62.797,62.585,62.399,62.257,
-62.051,61.853,61.817,61.874,61.834,61.722,61.669,61.533,61.011,60.183,59.568,59.516,59.828,60.105,60.224,60.269,
-60.235,60.045,59.748,59.490,59.323,59.185,59.031,58.892,58.849,58.982,59.248,59.367,58.942,57.803,56.162,54.405,
-52.850,51.699,51.005,50.607,50.369,50.551,51.558,53.083,53.932,53.228,51.543,50.249,49.857,49.663,49.075,48.472,
-48.379,48.530,48.425,48.370,49.092,50.386,50.999,50.090,48.215,46.566,45.669,45.232,44.891,44.574,44.264,43.873,
-43.428,43.075,42.838,42.580,42.226,41.820,41.337,40.662,39.842,39.135,38.696,38.367,37.933,37.431,37.035,36.738,
-36.342,35.740,35.054,34.459,33.985,33.539,33.065,32.605,32.224,31.887,31.473,30.942,30.440,30.136,29.974,29.728,
-29.346,29.041,28.938,28.819,28.398,27.720,27.113,26.869,27.131,27.917,28.925,29.451,28.964,27.812,26.919,26.677,
-26.552,25.998,25.309,25.123,25.437,25.622,25.308,24.716,24.141,23.587,23.046,22.699,22.633,22.638,22.523,22.364,
-22.245,22.005,21.491,20.900,20.569,20.517,20.456,20.194,19.783,19.295,18.720,18.127,17.706,17.533,17.452,17.264,
-16.961,16.665,16.445,16.253,16.021,15.739,15.460,15.238,15.074,14.915,14.724,14.523,14.336,14.130,13.879,13.648,
-13.539,13.560,13.627,13.670,13.679,13.640,13.519,13.314,13.038,12.647,12.095,11.464,10.945,10.642,10.478,10.340,
-10.217,10.150,10.129,10.130,10.174,10.281,10.419,10.551,10.682,10.806,10.880,10.887,10.884,10.912,10.951,11.001,
-11.141,11.401,11.676,11.878,12.065,12.291,12.434,12.364,12.210,12.233,12.456,12.646,12.701,12.773,12.955,13.102,
-13.108,13.120,13.271,13.415,13.387,13.338,13.510,13.795,13.875,13.768,13.861,14.302,14.717,14.697,14.313,13.946,
-13.819,13.909,14.124,14.315,14.256,13.888,13.516,13.491,13.724,13.796,13.540,13.225,13.115,13.110,12.981,12.724,
-12.506,12.379,12.260,12.108,11.947,11.748,11.447,11.070,10.723,10.467,10.280,10.132,10.007,9.858,9.640,9.383,
-9.145,8.911,8.621,8.288,7.995,7.774,7.560,7.308,7.051,6.821,6.596,6.353,6.122,5.931,5.755,5.555,
-5.340,5.130,4.909,4.648,4.357,4.058,3.742,3.382,2.995,2.621,2.274,1.934,1.596,1.284,1.007,.744,
-.468,.183,-.095,-.364,-.645,-.960,-1.304,-1.653,-1.999,-2.351,-2.722,-3.110,-3.505,-3.912,-4.339,-4.775,
--5.200,-5.614,-6.035,-6.466,-6.898,-7.336,-7.796,-8.269,-8.720,-9.127,-9.512,-9.902,-10.298,-10.684,-11.063,-11.451,
--11.857,-12.281,-12.715,-13.151,-13.569,-13.954,-14.310,-14.661,-15.034,-15.453,-15.926,-16.442,-16.970,-17.470,-17.905,-18.266,
--18.595,-18.970,-19.449,-20.016,-20.593,-21.112,-21.554,-21.942,-22.313,-22.706,-23.133,-23.571,-23.979,-24.340,-24.664,-24.959,
--25.229,-25.493,-25.785,-26.110,-26.443,-26.768,-27.096,-27.434,-27.756,-28.052,-28.349,-28.680,-29.027,-29.343,-29.620,-29.897,
--30.206,-30.544,-30.886,-31.211,-31.506,-31.766,-32.005,-32.245,-32.495,-32.744,-32.976,-33.186,-33.381,-33.568,-33.740,-33.889,
--34.015,-34.132,-34.246,-34.356,-34.461,-34.572,-34.686,-34.779,-34.827,-34.850,-34.883,-34.936,-34.990,-35.029,-35.051,-35.045,
--35.005,-34.945,-34.892,-34.847,-34.792,-34.730,-34.678,-34.621,-34.520,-34.369,-34.207,-34.062,-33.923,-33.772,-33.608,-33.422,
--33.197,-32.948,-32.711,-32.476,-32.200,-31.882,-31.585,-31.337,-31.081,-30.754,-30.371,-29.985,-29.612,-29.238,-28.878,-28.554,
--28.244,-27.907,-27.541,-27.169,-26.795,-26.407,-26.021,-25.657,-25.303,-24.933,-24.556,-24.184,-23.795,-23.369,-22.931,-22.521,
--22.125,-21.701,-21.251,-20.818,-20.410,-19.993,-19.541,-19.074,-18.614,-18.162,-17.707,-17.243,-16.770,-16.306,-15.876,-15.477,
--15.075,-14.659,-14.261,-13.896,-13.521,-13.107,-12.691,-12.322,-11.981,-11.630,-11.286,-10.980,-10.683,-10.346,-9.983,-9.651,
--9.345,-9.013,-8.650,-8.303,-7.999,-7.718,-7.447,-7.181,-6.898,-6.587,-6.299,-6.073,-5.855,-5.564,-5.209,-4.864,
--4.544,-4.206,-3.872,-3.605,-3.383,-3.105,-2.742,-2.370,-2.036,-1.711,-1.380,-1.084,-.832,-.574,-.294,-.023,
-.265,.640,1.070,1.422,1.659,1.909,2.276,2.707,3.111,3.502,3.924,4.343,4.725,5.125,5.602,6.117,
-6.603,7.064,7.542,8.048,8.593,9.197,9.805,10.294,10.658,11.045,11.519,11.863,11.827,11.525,11.429,11.913,
-12.867,13.816,14.380,14.627,14.939,15.540,16.203,16.489,16.197,15.488,14.672,14.062,13.908,14.178,14.481,14.529,
-14.623,15.244,16.133,16.363,15.522,14.268,13.401,12.920,12.418,11.824,11.132,9.955,8.203,6.758,6.415,6.339,
-4.887,2.162,.492,1.624,4.392,6.046,5.314,3.241,1.381,.163,-.962,-2.560,-4.646,-6.664,-7.885,-8.112,
--7.949,-8.111,-8.616,-9.002,-9.152,-9.389,-9.843,-10.253,-10.481,-10.743,-11.183,-11.641,-12.011,-12.436,-12.982,-13.436,
--13.657,-13.844,-14.250,-14.851,-15.513,-16.255,-17.137,-18.064,-18.921,-19.761,-20.696,-21.696,-22.662,-23.583,-24.464,-25.240,
--25.880,-26.484,-27.121,-27.688,-28.068,-28.339,-28.646,-28.961,-29.140,-29.182,-29.268,-29.551,-30.008,-30.487,-30.839,-31.044,
--31.244,-31.603,-32.104,-32.572,-32.936,-33.331,-33.868,-34.461,-35.001,-35.549,-36.181,-36.758,-37.030,-36.944,-36.677,-36.425,
--36.287,-36.317,-36.506,-36.773,-37.106,-37.701,-38.768,-40.189,-41.533,-42.423,-42.799,-42.824,-42.681,-42.508,-42.370,-42.234,
--42.038,-41.820,-41.684,-41.639,-41.575,-41.410,-41.171,-40.890,-40.532,-40.072,-39.545,-38.977,-38.343,-37.638,-36.905,-36.174,
--35.429,-34.676,-33.978,-33.358,-32.761,-32.132,-31.488,-30.861,-30.254,-29.685,-29.224,-28.883,-28.553,-28.095,-27.470,-26.730,
--25.936,-25.125,-24.328,-23.549,-22.755,-21.936,-21.146,-20.435,-19.762,-19.033,-18.206,-17.311,-16.398,-15.507,-14.676,-13.910,
--13.153,-12.339,-11.491,-10.731,-10.155,-9.717,-9.263,-8.665,-7.917,-7.132,-6.438,-5.895,-5.479,-5.115,-4.724,-4.244,
--3.675,-3.089,-2.571,-2.144,-1.759,-1.373,-.985,-.602,-.201,.243,.733,1.255,1.802,2.363,2.916,3.450,
-3.978,4.502,4.988,5.393,5.708,5.964,6.213,6.508,6.882,7.315,7.753,8.155,8.526,8.881,9.231,9.586,
-9.962,10.361,10.760,11.145,11.517,11.872,12.187,12.471,12.788,13.202,13.709,14.231,14.687,15.056,15.393,15.791,
-16.305,16.907,17.518,18.070,18.520,18.803,18.860,18.731,18.580,18.561,18.694,18.888,19.071,19.236,19.400,19.566,
-19.743,19.953,20.206,20.488,20.787,21.092,21.395,21.693,22.012,22.376,22.752,23.050,23.241,23.494,24.140,25.404,
-27.133,28.834,30.073,30.806,31.293,31.716,31.983,31.914,31.519,31.042,30.786,30.921,31.405,32.029,32.569,32.943,
-33.201,33.404,33.598,33.858,34.212,34.494,34.442,34.033,33.568,33.277,32.996,32.419,31.589,30.887,30.550,30.442,
-30.314,30.087,29.803,29.477,29.110,28.748,28.410,28.063,27.706,27.414,27.254,27.232,27.340,27.541,27.709,27.724,
-27.647,27.619,27.563,27.235,26.683,26.360,26.555,26.923,26.894,26.415,26.590,26.243,26.135,26.170,26.186,26.211,
-26.311,26.411,26.409,26.326,26.214,26.043,25.808,25.618,25.534,25.432,25.183,24.898,24.808,24.931,25.020,24.863,
-24.490,24.054,23.644,23.266,22.927,22.653,22.443,22.261,22.069,21.856,21.653,21.519,21.478,21.470,21.381,21.147,
-20.791,20.399,20.062,19.829,19.669,19.483,19.194,18.837,18.534,18.382,18.374,18.382,18.193,17.636,16.770,15.940,
-15.528,15.570,15.668,15.330,14.386,13.072,11.775,10.737,9.945,9.223,8.422,7.566,6.820,6.296,5.920,5.498,
-4.922,4.256,3.635,3.107,2.605,2.040,1.408,.784,.234,-.242,-.658,-.971,-1.109,-1.080,-1.014,-1.070,
--1.342,-1.833,-2.469,-3.101,-3.580,-3.883,-4.129,-4.439,-4.826,-5.276,-5.841,-6.513,-7.070,-7.236,-7.029,-6.793,
--6.800,-6.947,-6.982,-6.889,-6.878,-7.045,-7.246,-7.356,-7.455,-7.677,-7.999,-8.308,-8.584,-8.886,-9.200,-9.443,
--9.626,-9.854,-10.163,-10.464,-10.701,-10.910,-11.089,-11.128,-11.025,-11.029,-11.382,-11.951,-12.343,-12.413,-12.410,-12.549,
--12.663,-12.479,-12.082,-11.806,-11.722,-11.531,-11.034,-10.420,-9.957,-9.608,-9.188,-8.770,-8.641,-8.870,-9.147,-9.165,
--9.006,-9.053,-9.560,-10.352,-10.933,-10.922,-10.471,-10.229,-10.763,-11.974,-13.224,-14.077,-14.747,-15.709,-17.044,-18.401,
--19.510,-20.449,-21.363,-22.168,-22.676,-22.900,-23.054,-23.305,-23.614,-23.845,-23.959,-24.090,-24.470,-25.239,-26.312,-27.425,
--28.356,-29.053,-29.561,-29.909,-30.147,-30.422,-30.872,-31.460,-32.022,-32.507,-33.068,-33.859,-34.816,-35.718,-36.448,-37.129,
--38.044,-39.455,-41.440,-43.797,-46.109,-47.989,-49.355,-50.426,-51.423,-52.316,-52.908,-53.133,-53.172,-53.268,-53.506,-53.820,
--54.159,-54.561,-55.084,-55.689,-56.185,-56.261,-55.662,-54.468,-53.202,-52.497,-52.556,-53.004,-53.337,-53.447,-53.588,-53.931,
--54.342,-54.632,-54.825,-55.069,-55.401,-55.746,-56.107,-56.595,-57.264,-58.023,-58.759,-59.479,-60.290,-61.258,-62.336,-63.408,
--64.395,-65.324,-66.286,-67.322,-68.385,-69.415,-70.426,-71.464,-72.512,-73.505,-74.444,-75.405,-76.439,-77.494,-78.472,-79.330,
--80.109,-80.894,-81.751,-82.670,-83.573,-84.407,-85.214,-86.056,-86.914,-87.710,-88.425,-89.100,-89.747,-90.348,-90.944,-91.611,
--92.322,-92.969,-93.526,-94.084,-94.658,-95.138,-95.483,-95.812,-96.185,-96.458,-96.495,-96.411,-96.428,-96.632,-97.020,-97.639,
--98.450,-99.153,-99.463,-99.493,-99.599,-99.871,-100.084,-100.155,-100.273,-100.484,-100.511,-100.136,-99.489,-98.824,-98.306,-98.179,
--98.754,-99.943,-101.122,-101.786,-102.043,-102.125,-101.763,-100.588,-98.897,-97.402,-96.287,-95.182,-94.074,-93.501,-93.622,-93.832,
--93.723,-93.805,-94.672,-95.889,-96.419,-95.977,-95.248,-94.805,-94.477,-93.910,-93.169,-92.456,-91.647,-90.498,-89.097,-87.779,
--86.705,-85.737,-84.673,-83.401,-81.900,-80.272,-78.735,-77.432,-76.242,-74.909,-73.334,-71.647,-70.010,-68.467,-66.976,-65.495,
--63.991,-62.469,-61.009,-59.713,-58.601,-57.656,-56.978,-56.763,-57.039,-57.542,-57.998,-58.475,-59.224,-60.078,-60.236,-58.886,
--56.024,-52.500,-49.268,-46.760,-44.920,-43.505,-42.176,-40.572,-38.615,-36.697,-35.293,-34.413,-33.620,-32.569,-31.301,-29.999,
--28.719,-27.481,-26.381,-25.445,-24.499,-23.364,-22.068,-20.774,-19.566,-18.466,-17.554,-16.903,-16.436,-15.993,-15.522,-15.065,
--14.572,-13.908,-13.046,-12.134,-11.294,-10.495,-9.652,-8.772,-7.903,-7.027,-6.094,-5.117,-4.159,-3.220,-2.240,-1.204,
--.186,.760,1.682,2.655,3.652,4.583,5.426,6.254,7.132,8.058,9.057,10.205,11.490,12.724,13.702,14.437,
-15.115,15.875,16.728,17.673,18.735,19.893,21.095,22.328,23.571,24.695,25.598,26.424,27.444,28.683,29.877,30.897,
-31.952,33.196,34.358,35.011,35.107,35.050,35.318,36.167,37.556,39.162,40.579,41.741,43.059,44.918,47.122,49.068,
-50.372,51.085,51.425,51.601,51.846,52.267,52.690,52.951,53.275,53.969,54.833,55.361,55.514,55.736,56.199,56.746,
-57.742,60.075,63.744,67.219,68.941,69.002,68.571,68.258,68.018,68.225,69.479,71.309,72.367,72.216,71.722,71.231,
-69.736,66.774,63.864,62.539,61.771,59.237,55.076,52.484,53.907,58.084,61.829,63.665,64.457,65.206,65.772,65.800,
-65.599,65.570,65.551,65.250,64.854,64.734,64.888,65.059,65.171,65.283,65.334,65.274,65.236,65.259,65.091,64.692,
-64.711,65.792,67.378,67.863,66.316,63.638,61.613,61.087,61.452,61.741,61.691,61.651,61.840,61.983,61.648,60.858,
-60.273,60.617,61.844,63.085,63.589,63.497,63.434,63.566,63.521,63.154,62.836,62.852,62.994,62.993,62.958,63.066,
-63.137,62.898,62.466,62.170,62.057,61.949,61.862,61.941,62.032,61.768,61.145,60.612,60.432,60.349,60.073,59.761,
-59.736,59.981,60.193,60.210,60.080,59.825,59.426,59.018,58.829,58.867,58.865,58.634,58.312,58.099,57.819,56.946,
-55.233,53.223,51.856,51.468,51.458,51.255,51.317,52.524,54.578,55.782,54.909,52.740,51.072,50.550,50.324,49.696,
-49.070,48.954,48.980,48.668,48.531,49.448,51.109,52.003,51.155,49.196,47.432,46.403,45.768,45.179,44.693,44.446,
-44.401,44.455,44.505,44.370,43.892,43.167,42.465,41.881,41.263,40.513,39.771,39.180,38.675,38.147,37.661,37.351,
-37.158,36.856,36.333,35.710,35.164,34.726,34.296,33.797,33.262,32.786,32.390,31.984,31.484,30.946,30.505,30.209,
-29.983,29.776,29.605,29.417,29.053,28.427,27.644,26.881,26.335,26.339,27.223,28.752,29.938,29.866,28.705,27.504,
-26.939,26.676,26.147,25.463,25.204,25.564,26.147,26.482,26.376,25.828,24.965,24.091,23.506,23.191,22.905,22.590,
-22.411,22.365,22.168,21.688,21.183,20.934,20.845,20.634,20.240,19.803,19.342,18.751,18.083,17.591,17.423,17.444,
-17.404,17.193,16.869,16.548,16.304,16.131,15.963,15.751,15.525,15.332,15.160,14.971,14.772,14.573,14.342,14.059,
-13.812,13.723,13.795,13.928,14.052,14.160,14.214,14.132,13.891,13.536,13.073,12.477,11.807,11.231,10.857,10.641,
-10.501,10.419,10.390,10.361,10.303,10.275,10.349,10.506,10.675,10.808,10.884,10.890,10.865,10.883,10.952,11.000,
-11.016,11.104,11.329,11.595,11.795,11.974,12.196,12.353,12.302,12.143,12.137,12.350,12.587,12.715,12.824,12.999,
-13.156,13.220,13.279,13.413,13.539,13.584,13.638,13.755,13.777,13.604,13.516,13.875,14.537,14.916,14.694,14.180,
-13.859,13.885,14.148,14.539,14.891,14.900,14.461,13.931,13.765,13.929,13.987,13.744,13.464,13.393,13.391,13.213,
-12.897,12.657,12.555,12.481,12.388,12.302,12.177,11.905,11.500,11.113,10.853,10.692,10.553,10.400,10.219,10.002,
-9.775,9.571,9.358,9.075,8.734,8.420,8.173,7.946,7.694,7.434,7.192,6.955,6.704,6.464,6.255,6.066,
-5.877,5.696,5.520,5.315,5.050,4.750,4.450,4.143,3.800,3.422,3.048,2.700,2.368,2.045,1.737,1.443,
-1.151,.855,.566,.290,.011,-.294,-.633,-.989,-1.340,-1.685,-2.039,-2.410,-2.792,-3.183,-3.588,-4.012,
--4.441,-4.863,-5.283,-5.707,-6.122,-6.529,-6.958,-7.429,-7.916,-8.374,-8.798,-9.216,-9.638,-10.037,-10.395,-10.736,
--11.088,-11.467,-11.876,-12.314,-12.759,-13.176,-13.560,-13.938,-14.336,-14.749,-15.173,-15.628,-16.127,-16.646,-17.136,-17.564,
--17.924,-18.237,-18.568,-18.987,-19.508,-20.070,-20.587,-21.026,-21.407,-21.771,-22.145,-22.543,-22.957,-23.364,-23.744,-24.092,
--24.407,-24.691,-24.968,-25.271,-25.610,-25.962,-26.308,-26.659,-27.020,-27.367,-27.675,-27.958,-28.249,-28.555,-28.857,-29.144,
--29.430,-29.728,-30.039,-30.358,-30.674,-30.971,-31.235,-31.472,-31.708,-31.956,-32.203,-32.425,-32.613,-32.779,-32.949,-33.127,
--33.292,-33.423,-33.526,-33.629,-33.747,-33.872,-33.994,-34.107,-34.200,-34.265,-34.312,-34.368,-34.448,-34.534,-34.599,-34.618,
--34.581,-34.501,-34.418,-34.367,-34.346,-34.324,-34.293,-34.259,-34.210,-34.122,-33.997,-33.870,-33.753,-33.624,-33.476,-33.316,
--33.136,-32.906,-32.635,-32.374,-32.142,-31.901,-31.627,-31.353,-31.114,-30.875,-30.574,-30.199,-29.791,-29.393,-29.028,-28.703,
--28.396,-28.067,-27.704,-27.335,-26.977,-26.614,-26.237,-25.877,-25.546,-25.207,-24.831,-24.443,-24.074,-23.703,-23.296,-22.869,
--22.458,-22.053,-21.627,-21.194,-20.781,-20.376,-19.943,-19.486,-19.039,-18.607,-18.168,-17.717,-17.268,-16.824,-16.386,-15.963,
--15.547,-15.116,-14.675,-14.271,-13.916,-13.553,-13.142,-12.731,-12.377,-12.058,-11.716,-11.360,-11.027,-10.710,-10.376,-10.044,
--9.744,-9.442,-9.082,-8.699,-8.373,-8.113,-7.857,-7.581,-7.310,-7.039,-6.742,-6.439,-6.177,-5.943,-5.673,-5.354,
--5.026,-4.699,-4.354,-4.019,-3.734,-3.469,-3.158,-2.812,-2.496,-2.212,-1.917,-1.623,-1.374,-1.129,-.805,-.440,
--.143,.102,.421,.831,1.208,1.492,1.776,2.131,2.512,2.891,3.319,3.795,4.224,4.588,5.001,5.512,
-6.024,6.475,6.934,7.433,7.893,8.330,8.922,9.709,10.444,10.917,11.259,11.651,11.921,11.733,11.155,10.759,
-11.041,11.930,12.913,13.564,13.909,14.327,15.106,16.061,16.627,16.367,15.354,14.084,13.100,12.676,12.701,12.884,
-13.202,14.027,15.525,17.000,17.392,16.548,15.491,15.158,15.388,15.493,15.207,14.501,13.081,10.947,9.034,8.201,
-7.695,5.865,2.702,.532,1.452,4.793,7.816,8.416,6.489,3.204,-.175,-2.821,-4.523,-5.599,-6.385,-6.873,
--7.039,-7.223,-7.750,-8.390,-8.691,-8.703,-8.889,-9.384,-9.878,-10.201,-10.543,-11.019,-11.479,-11.846,-12.240,-12.653,
--12.866,-12.847,-12.877,-13.144,-13.517,-13.882,-14.386,-15.166,-16.118,-17.112,-18.204,-19.441,-20.677,-21.772,-22.779,-23.765,
--24.638,-25.335,-25.974,-26.637,-27.190,-27.517,-27.769,-28.140,-28.541,-28.731,-28.700,-28.696,-28.911,-29.308,-29.736,-30.081,
--30.324,-30.540,-30.821,-31.133,-31.365,-31.551,-31.906,-32.517,-33.177,-33.674,-34.088,-34.600,-35.137,-35.448,-35.460,-35.329,
--35.202,-35.130,-35.180,-35.416,-35.766,-36.151,-36.724,-37.757,-39.209,-40.618,-41.524,-41.868,-41.899,-41.852,-41.807,-41.752,
--41.659,-41.519,-41.380,-41.305,-41.289,-41.249,-41.125,-40.924,-40.651,-40.294,-39.876,-39.446,-38.991,-38.437,-37.764,-37.036,
--36.300,-35.540,-34.765,-34.051,-33.435,-32.849,-32.213,-31.535,-30.872,-30.262,-29.728,-29.296,-28.933,-28.537,-28.019,-27.374,
--26.647,-25.872,-25.090,-24.353,-23.664,-22.966,-22.225,-21.478,-20.758,-20.025,-19.235,-18.406,-17.589,-16.785,-15.978,-15.181,
--14.404,-13.590,-12.682,-11.732,-10.883,-10.217,-9.682,-9.160,-8.561,-7.862,-7.100,-6.364,-5.749,-5.281,-4.883,-4.436,
--3.881,-3.254,-2.641,-2.099,-1.616,-1.151,-.689,-.240,.197,.643,1.101,1.543,1.964,2.402,2.891,3.402,
-3.875,4.294,4.696,5.110,5.511,5.856,6.140,6.409,6.728,7.125,7.575,8.031,8.455,8.833,9.176,9.521,
-9.907,10.333,10.757,11.155,11.547,11.951,12.331,12.640,12.913,13.233,13.630,14.046,14.424,14.765,15.113,15.514,
-16.001,16.555,17.074,17.453,17.707,17.951,18.234,18.466,18.559,18.561,18.589,18.692,18.841,19.022,19.244,19.477,
-19.657,19.779,19.906,20.096,20.338,20.602,20.880,21.175,21.468,21.726,21.947,22.156,22.377,22.612,22.888,23.323,
-24.095,25.265,26.646,27.909,28.882,29.679,30.494,31.328,31.951,32.141,31.904,31.502,31.261,31.354,31.704,32.105,
-32.413,32.619,32.781,32.969,33.255,33.615,33.846,33.709,33.247,32.798,32.583,32.416,31.987,31.328,30.779,30.533,
-30.447,30.311,30.087,29.812,29.462,29.028,28.590,28.234,27.950,27.698,27.488,27.350,27.298,27.361,27.556,27.793,
-27.929,27.948,27.934,27.829,27.457,26.872,26.480,26.567,26.875,26.915,26.590,26.452,26.324,26.337,26.402,26.414,
-26.406,26.425,26.409,26.290,26.091,25.858,25.587,25.313,25.135,25.065,24.943,24.652,24.322,24.183,24.251,24.291,
-24.116,23.773,23.413,23.087,22.751,22.410,22.158,22.067,22.088,22.081,21.960,21.779,21.658,21.629,21.592,21.433,
-21.146,20.797,20.433,20.079,19.781,19.601,19.536,19.495,19.378,19.169,18.948,18.809,18.722,18.477,17.846,16.867,
-15.940,15.494,15.558,15.683,15.354,14.417,13.135,11.894,10.898,10.084,9.255,8.300,7.331,6.588,6.174,5.910,
-5.490,4.780,3.921,3.137,2.501,1.906,1.248,.569,-.008,-.436,-.785,-1.121,-1.413,-1.591,-1.662,-1.709,
--1.804,-1.995,-2.343,-2.873,-3.475,-3.968,-4.296,-4.575,-4.899,-5.232,-5.561,-6.030,-6.736,-7.469,-7.863,-7.835,
--7.678,-7.666,-7.740,-7.709,-7.582,-7.532,-7.603,-7.674,-7.696,-7.783,-8.010,-8.291,-8.518,-8.729,-9.020,-9.384,
--9.722,-9.981,-10.174,-10.315,-10.420,-10.581,-10.895,-11.295,-11.547,-11.532,-11.443,-11.586,-12.013,-12.458,-12.675,-12.703,
--12.711,-12.715,-12.587,-12.324,-12.096,-11.984,-11.830,-11.474,-11.015,-10.654,-10.388,-10.055,-9.679,-9.525,-9.705,-9.937,
--9.897,-9.704,-9.815,-10.424,-11.159,-11.457,-11.167,-10.704,-10.665,-11.324,-12.461,-13.628,-14.599,-15.533,-16.700,-18.088,
--19.401,-20.435,-21.311,-22.242,-23.172,-23.822,-24.068,-24.119,-24.269,-24.572,-24.857,-25.017,-25.184,-25.595,-26.349,-27.322,
--28.298,-29.131,-29.786,-30.285,-30.677,-31.038,-31.468,-32.016,-32.630,-33.224,-33.798,-34.460,-35.301,-36.261,-37.152,-37.848,
--38.455,-39.295,-40.672,-42.633,-44.912,-47.115,-48.953,-50.358,-51.417,-52.232,-52.836,-53.210,-53.383,-53.481,-53.647,-53.921,
--54.246,-54.606,-55.077,-55.687,-56.252,-56.451,-56.076,-55.198,-54.124,-53.226,-52.787,-52.849,-53.187,-53.491,-53.648,-53.805,
--54.127,-54.569,-54.973,-55.286,-55.582,-55.901,-56.203,-56.506,-56.930,-57.548,-58.266,-58.938,-59.570,-60.312,-61.264,-62.358,
--63.437,-64.424,-65.375,-66.375,-67.432,-68.474,-69.458,-70.424,-71.430,-72.459,-73.454,-74.409,-75.388,-76.425,-77.462,-78.417,
--79.283,-80.123,-80.990,-81.878,-82.747,-83.582,-84.420,-85.307,-86.229,-87.113,-87.906,-88.630,-89.323,-89.972,-90.556,-91.124,
--91.745,-92.393,-92.992,-93.547,-94.124,-94.692,-95.144,-95.488,-95.871,-96.318,-96.624,-96.636,-96.488,-96.433,-96.586,-96.967,
--97.635,-98.532,-99.320,-99.669,-99.669,-99.702,-99.934,-100.198,-100.367,-100.520,-100.685,-100.725,-100.567,-100.280,-99.874,-99.365,
--99.121,-99.682,-101.006,-102.284,-102.849,-102.865,-102.745,-102.314,-101.147,-99.447,-97.861,-96.524,-95.064,-93.588,-92.833,-93.050,
--93.510,-93.612,-93.812,-94.797,-96.173,-96.827,-96.399,-95.620,-95.151,-94.831,-94.255,-93.471,-92.721,-91.906,-90.763,-89.349,
--87.991,-86.856,-85.827,-84.743,-83.519,-82.096,-80.508,-78.956,-77.623,-76.420,-75.082,-73.506,-71.850,-70.277,-68.757,-67.175,
--65.507,-63.812,-62.163,-60.637,-59.315,-58.220,-57.309,-56.612,-56.301,-56.525,-57.182,-57.982,-58.749,-59.492,-60.086,-60.016,
--58.671,-55.976,-52.580,-49.379,-46.887,-45.066,-43.566,-41.995,-40.125,-38.067,-36.229,-34.936,-34.069,-33.208,-32.103,-30.857,
--29.632,-28.408,-27.119,-25.845,-24.711,-23.703,-22.702,-21.644,-20.531,-19.361,-18.176,-17.131,-16.369,-15.832,-15.325,-14.762,
--14.218,-13.716,-13.127,-12.351,-11.474,-10.655,-9.918,-9.164,-8.340,-7.490,-6.642,-5.752,-4.793,-3.814,-2.852,-1.845,
--.733,.417,1.469,2.400,3.325,4.311,5.291,6.197,7.082,8.023,9.001,9.980,11.019,12.186,13.374,14.366,
-15.078,15.648,16.278,17.075,18.048,19.139,20.250,21.329,22.432,23.600,24.736,25.749,26.760,27.966,29.298,30.465,
-31.389,32.293,33.268,34.020,34.284,34.286,34.558,35.436,36.914,38.784,40.678,42.168,43.179,44.196,45.743,47.683,
-49.370,50.429,51.065,51.612,52.141,52.570,52.867,53.058,53.260,53.705,54.459,55.162,55.422,55.444,55.855,56.880,
-58.256,59.991,62.484,65.549,68.020,68.924,68.551,67.812,67.128,66.674,67.104,68.878,71.090,72.191,71.929,71.377,
-70.845,69.211,66.033,62.884,61.263,60.159,57.474,53.577,51.569,53.546,58.034,61.939,63.926,64.844,65.623,66.186,
-66.289,66.216,66.252,66.202,65.858,65.457,65.325,65.410,65.485,65.519,65.582,65.620,65.611,65.682,65.813,65.727,
-65.459,65.691,66.910,68.307,68.267,66.242,63.591,62.134,62.225,62.699,62.469,61.592,60.783,60.435,60.407,60.484,
-60.720,61.310,62.257,63.210,63.735,63.767,63.689,63.821,63.992,63.841,63.422,63.137,63.119,63.083,62.887,62.808,
-63.032,63.244,63.067,62.633,62.348,62.289,62.225,62.118,62.137,62.237,62.134,61.781,61.453,61.260,60.949,60.384,
-59.889,59.832,60.122,60.373,60.400,60.258,59.944,59.422,58.885,58.645,58.686,58.612,58.209,57.824,57.882,58.104,
-57.571,55.797,53.526,52.083,51.890,52.097,51.922,51.912,53.146,55.345,56.683,55.876,53.756,52.125,51.545,51.142,
-50.327,49.609,49.461,49.414,48.964,48.676,49.470,51.043,51.932,51.228,49.546,48.047,47.111,46.363,45.578,45.019,
-44.995,45.500,46.242,46.778,46.640,45.661,44.237,43.027,42.321,41.849,41.243,40.477,39.748,39.143,38.605,38.129,
-37.785,37.557,37.283,36.832,36.237,35.647,35.161,34.745,34.293,33.756,33.205,32.750,32.399,32.038,31.566,31.011,
-30.512,30.201,30.096,30.053,29.838,29.329,28.641,27.962,27.304,26.637,26.270,26.735,28.040,29.283,29.432,28.442,
-27.241,26.585,26.323,25.932,25.386,25.165,25.586,26.423,27.145,27.304,26.780,25.842,24.948,24.332,23.830,23.234,
-22.666,22.383,22.325,22.160,21.767,21.375,21.155,20.967,20.620,20.147,19.652,19.097,18.439,17.839,17.528,17.515,
-17.588,17.560,17.384,17.088,16.739,16.450,16.289,16.187,16.027,15.803,15.588,15.405,15.219,15.029,14.855,14.664,
-14.418,14.194,14.120,14.225,14.411,14.598,14.753,14.809,14.671,14.341,13.911,13.421,12.826,12.141,11.516,11.094,
-10.879,10.798,10.786,10.776,10.691,10.530,10.413,10.451,10.621,10.814,10.951,11.001,10.968,10.906,10.897,10.947,
-10.975,10.960,11.017,11.229,11.500,11.695,11.829,11.992,12.141,12.153,12.067,12.089,12.317,12.625,12.867,13.043,
-13.198,13.313,13.374,13.436,13.531,13.619,13.716,13.905,14.133,14.180,13.996,13.892,14.148,14.550,14.613,14.241,
-13.844,13.795,14.069,14.497,15.009,15.450,15.483,15.000,14.437,14.315,14.576,14.701,14.453,14.122,13.987,13.915,
-13.659,13.283,13.026,12.931,12.856,12.748,12.669,12.585,12.361,11.976,11.584,11.319,11.146,10.972,10.767,10.557,
-10.354,10.161,9.978,9.774,9.504,9.171,8.837,8.547,8.284,8.019,7.757,7.511,7.277,7.049,6.841,6.652,
-6.454,6.243,6.044,5.871,5.682,5.434,5.136,4.827,4.518,4.187,3.826,3.456,3.101,2.773,2.468,2.174,
-1.876,1.572,1.271,.983,.696,.386,.045,-.315,-.672,-1.020,-1.369,-1.732,-2.106,-2.482,-2.866,-3.268,
--3.688,-4.110,-4.529,-4.950,-5.368,-5.768,-6.158,-6.581,-7.051,-7.530,-7.978,-8.417,-8.884,-9.360,-9.784,-10.137,
--10.459,-10.787,-11.133,-11.509,-11.933,-12.377,-12.789,-13.162,-13.546,-13.978,-14.433,-14.885,-15.347,-15.838,-16.337,-16.808,
--17.239,-17.628,-17.968,-18.282,-18.639,-19.089,-19.597,-20.080,-20.497,-20.872,-21.247,-21.633,-22.025,-22.416,-22.795,-23.156,
--23.501,-23.828,-24.134,-24.430,-24.746,-25.099,-25.469,-25.827,-26.176,-26.530,-26.881,-27.202,-27.484,-27.746,-28.015,-28.300,
--28.600,-28.906,-29.206,-29.494,-29.780,-30.076,-30.375,-30.662,-30.928,-31.178,-31.426,-31.672,-31.902,-32.093,-32.249,-32.401,
--32.574,-32.746,-32.874,-32.959,-33.049,-33.178,-33.330,-33.467,-33.572,-33.653,-33.718,-33.773,-33.835,-33.919,-34.014,-34.090,
--34.112,-34.064,-33.967,-33.879,-33.847,-33.866,-33.890,-33.886,-33.850,-33.782,-33.682,-33.570,-33.476,-33.394,-33.290,-33.154,
--33.006,-32.845,-32.635,-32.370,-32.107,-31.882,-31.667,-31.416,-31.136,-30.870,-30.615,-30.328,-29.979,-29.583,-29.181,-28.813,
--28.483,-28.156,-27.795,-27.408,-27.034,-26.680,-26.324,-25.969,-25.654,-25.374,-25.070,-24.708,-24.327,-23.965,-23.603,-23.216,
--22.825,-22.449,-22.058,-21.627,-21.188,-20.772,-20.353,-19.899,-19.441,-19.020,-18.616,-18.182,-17.725,-17.284,-16.866,-16.449,
--16.033,-15.617,-15.180,-14.724,-14.298,-13.930,-13.572,-13.176,-12.778,-12.433,-12.121,-11.784,-11.424,-11.080,-10.750,-10.413,
--10.099,-9.832,-9.553,-9.202,-8.825,-8.515,-8.268,-8.000,-7.696,-7.418,-7.182,-6.932,-6.643,-6.353,-6.073,-5.770,
--5.442,-5.123,-4.823,-4.517,-4.205,-3.897,-3.565,-3.198,-2.858,-2.597,-2.361,-2.079,-1.800,-1.596,-1.397,-1.075,
--.665,-.318,-.056,.237,.603,.961,1.289,1.657,2.062,2.423,2.760,3.188,3.702,4.160,4.537,4.955,
-5.433,5.850,6.209,6.674,7.253,7.736,8.093,8.612,9.440,10.279,10.809,11.139,11.513,11.781,11.570,10.924,
-10.400,10.480,11.123,11.924,12.515,12.815,13.058,13.565,14.334,14.894,14.732,13.859,12.811,12.109,11.826,11.703,
-11.598,11.839,13.000,15.120,17.202,17.958,17.229,16.268,16.325,17.344,18.362,18.679,18.087,16.450,13.935,11.433,
-9.781,8.528,6.433,3.501,1.624,2.606,6.046,9.638,11.112,9.559,5.551,.726,-3.040,-4.834,-5.235,-5.401,
--5.851,-6.405,-6.922,-7.480,-7.998,-8.268,-8.357,-8.557,-8.926,-9.290,-9.644,-10.168,-10.835,-11.398,-11.753,-11.973,
--12.014,-11.790,-11.528,-11.626,-12.093,-12.519,-12.691,-12.870,-13.360,-14.184,-15.297,-16.736,-18.370,-19.850,-20.996,-21.969,
--22.910,-23.712,-24.324,-24.948,-25.697,-26.345,-26.689,-26.915,-27.300,-27.761,-28.004,-28.005,-28.034,-28.269,-28.646,-29.042,
--29.403,-29.704,-29.952,-30.194,-30.424,-30.574,-30.696,-31.005,-31.576,-32.161,-32.501,-32.684,-32.973,-33.393,-33.744,-33.943,
--34.067,-34.139,-34.120,-34.105,-34.271,-34.619,-35.034,-35.615,-36.650,-38.133,-39.585,-40.493,-40.806,-40.846,-40.882,-40.951,
--40.991,-40.972,-40.906,-40.828,-40.782,-40.778,-40.772,-40.712,-40.558,-40.280,-39.891,-39.474,-39.109,-38.761,-38.314,-37.722,
--37.055,-36.370,-35.653,-34.910,-34.212,-33.596,-33.002,-32.353,-31.659,-30.988,-30.388,-29.873,-29.428,-28.986,-28.460,-27.827,
--27.131,-26.407,-25.651,-24.884,-24.163,-23.497,-22.817,-22.087,-21.343,-20.611,-19.852,-19.047,-18.257,-17.529,-16.812,-16.044,
--15.248,-14.470,-13.679,-12.811,-11.897,-11.042,-10.296,-9.619,-8.979,-8.376,-7.776,-7.107,-6.366,-5.657,-5.069,-4.559,
--4.001,-3.336,-2.633,-1.990,-1.426,-.890,-.350,.171,.642,1.094,1.581,2.095,2.560,2.937,3.282,3.672,
-4.102,4.498,4.828,5.142,5.498,5.886,6.245,6.553,6.852,7.203,7.621,8.080,8.545,8.981,9.354,9.660,
-9.963,10.343,10.793,11.225,11.590,11.945,12.338,12.715,13.003,13.247,13.563,13.970,14.359,14.653,14.906,15.225,
-15.672,16.237,16.828,17.269,17.410,17.317,17.258,17.441,17.814,18.176,18.411,18.545,18.641,18.743,18.895,19.117,
-19.350,19.510,19.597,19.699,19.875,20.104,20.344,20.598,20.877,21.153,21.369,21.503,21.607,21.771,22.026,22.307,
-22.564,22.902,23.536,24.544,25.739,26.854,27.834,28.841,29.978,31.095,31.889,32.163,31.986,31.627,31.361,31.306,
-31.421,31.616,31.841,32.080,32.331,32.605,32.865,32.971,32.778,32.350,31.963,31.793,31.696,31.427,30.996,30.641,
-30.487,30.415,30.277,30.057,29.774,29.381,28.871,28.368,28.004,27.797,27.679,27.599,27.535,27.492,27.520,27.679,
-27.910,28.067,28.088,28.030,27.884,27.531,26.988,26.537,26.429,26.552,26.591,26.452,26.234,26.251,26.378,26.509,
-26.558,26.535,26.455,26.269,25.957,25.585,25.237,24.939,24.702,24.553,24.463,24.312,24.026,23.692,23.458,23.345,
-23.241,23.061,22.831,22.595,22.326,21.993,21.681,21.560,21.712,22.006,22.193,22.134,21.908,21.687,21.554,21.459,
-21.333,21.150,20.898,20.559,20.179,19.884,19.790,19.884,20.026,20.043,19.836,19.441,19.005,18.640,18.263,17.667,
-16.806,15.945,15.420,15.250,15.100,14.627,13.799,12.839,11.949,11.144,10.306,9.334,8.266,7.285,6.588,6.194,
-5.880,5.356,4.522,3.535,2.623,1.856,1.132,.366,-.369,-.928,-1.284,-1.566,-1.890,-2.227,-2.475,-2.609,
--2.680,-2.738,-2.831,-3.055,-3.475,-3.995,-4.423,-4.710,-4.985,-5.322,-5.618,-5.819,-6.115,-6.727,-7.552,-8.235,
--8.577,-8.703,-8.779,-8.792,-8.675,-8.510,-8.414,-8.359,-8.248,-8.119,-8.117,-8.268,-8.451,-8.597,-8.786,-9.101,
--9.501,-9.890,-10.220,-10.458,-10.559,-10.545,-10.580,-10.840,-11.292,-11.689,-11.809,-11.706,-11.660,-11.886,-12.320,-12.714,
--12.908,-12.945,-12.904,-12.760,-12.488,-12.208,-12.062,-11.992,-11.802,-11.472,-11.192,-11.055,-10.916,-10.675,-10.504,-10.574,
--10.726,-10.693,-10.580,-10.790,-11.399,-11.923,-11.877,-11.387,-11.028,-11.214,-11.920,-12.931,-14.108,-15.389,-16.724,-18.062,
--19.336,-20.445,-21.363,-22.253,-23.311,-24.440,-25.249,-25.484,-25.359,-25.322,-25.564,-25.922,-26.215,-26.502,-26.956,-27.624,
--28.403,-29.180,-29.905,-30.546,-31.084,-31.553,-32.030,-32.558,-33.118,-33.686,-34.281,-34.941,-35.695,-36.556,-37.485,-38.364,
--39.071,-39.669,-40.453,-41.725,-43.523,-45.604,-47.681,-49.567,-51.120,-52.211,-52.828,-53.140,-53.357,-53.561,-53.739,-53.921,
--54.190,-54.577,-55.051,-55.576,-56.069,-56.310,-56.054,-55.320,-54.441,-53.764,-53.378,-53.193,-53.164,-53.309,-53.562,-53.802,
--54.019,-54.330,-54.794,-55.305,-55.736,-56.072,-56.371,-56.666,-56.977,-57.367,-57.883,-58.474,-59.064,-59.677,-60.422,-61.352,
--62.387,-63.412,-64.400,-65.401,-66.445,-67.493,-68.490,-69.433,-70.376,-71.365,-72.385,-73.387,-74.362,-75.350,-76.371,-77.382,
--78.331,-79.229,-80.135,-81.059,-81.949,-82.761,-83.545,-84.396,-85.344,-86.312,-87.194,-87.973,-88.703,-89.412,-90.067,-90.659,
--91.251,-91.883,-92.503,-93.055,-93.588,-94.170,-94.740,-95.181,-95.538,-95.971,-96.475,-96.807,-96.805,-96.613,-96.487,-96.550,
--96.854,-97.504,-98.464,-99.372,-99.836,-99.887,-99.904,-100.114,-100.411,-100.651,-100.835,-100.965,-100.994,-100.968,-100.973,-100.912,
--100.675,-100.566,-101.123,-102.306,-103.329,-103.589,-103.360,-103.137,-102.733,-101.628,-99.927,-98.244,-96.745,-95.095,-93.431,-92.535,
--92.728,-93.319,-93.658,-94.103,-95.258,-96.710,-97.368,-96.897,-96.049,-95.518,-95.158,-94.559,-93.747,-92.957,-92.108,-90.960,
--89.558,-88.188,-86.986,-85.863,-84.724,-83.514,-82.146,-80.612,-79.102,-77.810,-76.638,-75.291,-73.673,-71.984,-70.410,-68.887,
--67.255,-65.490,-63.697,-61.975,-60.389,-59.007,-57.860,-56.911,-56.165,-55.779,-55.958,-56.702,-57.735,-58.706,-59.401,-59.685,
--59.321,-58.010,-55.700,-52.771,-49.846,-47.374,-45.402,-43.658,-41.808,-39.714,-37.567,-35.764,-34.539,-33.711,-32.864,-31.764,
--30.510,-29.266,-28.024,-26.696,-25.321,-24.048,-22.955,-21.991,-21.067,-20.103,-19.029,-17.854,-16.730,-15.832,-15.165,-14.566,
--13.935,-13.338,-12.834,-12.313,-11.618,-10.772,-9.954,-9.252,-8.569,-7.798,-6.978,-6.191,-5.412,-4.546,-3.583,-2.578,
--1.517,-.326,.954,2.146,3.146,4.052,4.997,5.976,6.924,7.874,8.899,9.955,10.941,11.890,12.924,14.024,
-14.986,15.670,16.190,16.805,17.674,18.755,19.874,20.874,21.764,22.708,23.807,24.960,26.055,27.196,28.532,29.923,
-31.034,31.775,32.375,32.951,33.319,33.432,33.692,34.588,36.182,38.174,40.252,42.141,43.540,44.431,45.293,46.630,
-48.284,49.612,50.336,50.834,51.525,52.334,52.936,53.233,53.399,53.649,54.096,54.666,55.120,55.355,55.718,56.746,
-58.542,60.709,62.917,65.115,67.063,68.193,68.214,67.472,66.460,65.489,65.159,66.399,69.252,72.110,73.173,72.451,
-71.314,70.221,68.235,65.034,61.921,59.903,57.964,54.710,51.153,50.182,53.098,57.983,61.977,64.110,65.232,66.093,
-66.622,66.724,66.714,66.780,66.701,66.340,65.953,65.798,65.794,65.770,65.755,65.823,65.909,65.982,66.153,66.407,
-66.501,66.405,66.555,67.196,67.650,66.878,64.905,63.119,62.784,63.615,64.232,63.785,62.665,61.714,61.287,61.253,
-61.494,62.037,62.809,63.529,63.922,63.957,63.869,63.920,64.115,64.184,63.948,63.586,63.392,63.335,63.128,62.748,
-62.534,62.663,62.843,62.757,62.543,62.532,62.707,62.766,62.616,62.446,62.345,62.197,61.977,61.821,61.709,61.406,
-60.859,60.381,60.258,60.371,60.420,60.321,60.146,59.849,59.348,58.805,58.521,58.504,58.423,58.120,57.914,58.141,
-58.455,57.965,56.241,54.026,52.586,52.337,52.511,52.363,52.298,53.210,54.889,55.897,55.287,53.793,52.766,52.429,
-51.954,50.997,50.193,49.991,49.894,49.377,48.907,49.301,50.381,51.020,50.538,49.405,48.415,47.717,46.995,46.214,
-45.774,46.040,46.998,48.237,49.059,48.766,47.205,45.085,43.456,42.757,42.521,42.061,41.215,40.322,39.663,39.187,
-38.735,38.295,37.936,37.626,37.218,36.626,35.949,35.380,35.001,34.688,34.252,33.660,33.076,32.661,32.381,32.043,
-31.521,30.914,30.462,30.289,30.243,30.022,29.508,28.898,28.416,27.978,27.360,26.696,26.500,27.011,27.710,27.816,
-27.184,26.408,26.029,25.946,25.737,25.307,25.000,25.164,25.780,26.473,26.789,26.520,25.864,25.197,24.670,24.125,
-23.453,22.840,22.504,22.361,22.155,21.813,21.464,21.171,20.874,20.563,20.246,19.785,19.018,18.115,17.533,17.500,
-17.746,17.866,17.757,17.546,17.293,16.975,16.661,16.460,16.342,16.181,15.952,15.742,15.584,15.428,15.267,15.141,
-15.028,14.869,14.700,14.642,14.750,14.956,15.171,15.329,15.335,15.105,14.683,14.214,13.751,13.207,12.539,11.880,
-11.420,11.227,11.228,11.297,11.294,11.125,10.844,10.634,10.632,10.792,10.974,11.099,11.155,11.140,11.072,11.010,
-10.985,10.952,10.902,10.932,11.123,11.391,11.585,11.685,11.794,11.939,12.037,12.072,12.165,12.414,12.757,13.066,
-13.278,13.399,13.447,13.464,13.498,13.556,13.617,13.738,14.011,14.369,14.579,14.533,14.404,14.371,14.336,14.111,
-13.802,13.728,13.999,14.431,14.896,15.419,15.854,15.826,15.252,14.652,14.600,14.998,15.250,15.075,14.765,14.618,
-14.511,14.215,13.821,13.580,13.499,13.387,13.187,13.022,12.929,12.770,12.466,12.117,11.842,11.625,11.394,11.148,
-10.932,10.747,10.561,10.360,10.144,9.898,9.606,9.287,8.972,8.673,8.388,8.113,7.847,7.594,7.370,7.190,
-7.027,6.827,6.578,6.332,6.133,5.962,5.758,5.497,5.202,4.898,4.583,4.242,3.870,3.489,3.132,2.819,
-2.535,2.254,1.965,1.678,1.393,1.085,.738,.366,-.003,-.354,-.700,-1.056,-1.424,-1.793,-2.153,-2.521,
--2.917,-3.337,-3.762,-4.182,-4.603,-5.019,-5.413,-5.801,-6.222,-6.678,-7.123,-7.535,-7.966,-8.457,-8.966,-9.410,
--9.779,-10.128,-10.484,-10.837,-11.198,-11.606,-12.048,-12.461,-12.825,-13.197,-13.626,-14.090,-14.555,-15.027,-15.516,-15.997,
--16.444,-16.878,-17.308,-17.701,-18.035,-18.362,-18.750,-19.193,-19.620,-19.999,-20.361,-20.743,-21.145,-21.540,-21.913,-22.258,
--22.580,-22.897,-23.218,-23.534,-23.839,-24.155,-24.503,-24.867,-25.209,-25.524,-25.841,-26.183,-26.529,-26.846,-27.125,-27.389,
--27.669,-27.979,-28.305,-28.619,-28.908,-29.182,-29.467,-29.772,-30.088,-30.389,-30.658,-30.903,-31.150,-31.402,-31.623,-31.792,
--31.934,-32.095,-32.268,-32.402,-32.483,-32.566,-32.699,-32.862,-33.003,-33.099,-33.167,-33.222,-33.267,-33.313,-33.375,-33.456,
--33.531,-33.568,-33.543,-33.471,-33.408,-33.409,-33.466,-33.520,-33.523,-33.467,-33.371,-33.251,-33.137,-33.056,-32.993,-32.905,
--32.780,-32.645,-32.509,-32.339,-32.120,-31.891,-31.688,-31.481,-31.217,-30.905,-30.598,-30.322,-30.048,-29.734,-29.372,-28.985,
--28.605,-28.239,-27.868,-27.476,-27.082,-26.712,-26.360,-26.009,-25.679,-25.404,-25.161,-24.880,-24.541,-24.190,-23.854,-23.505,
--23.134,-22.776,-22.435,-22.057,-21.616,-21.166,-20.746,-20.320,-19.856,-19.402,-19.002,-18.612,-18.170,-17.700,-17.263,-16.859,
--16.449,-16.038,-15.643,-15.239,-14.800,-14.364,-13.983,-13.629,-13.250,-12.862,-12.511,-12.182,-11.831,-11.470,-11.138,-10.819,
--10.483,-10.164,-9.900,-9.640,-9.315,-8.962,-8.670,-8.428,-8.149,-7.827,-7.543,-7.323,-7.102,-6.840,-6.558,-6.260,
--5.919,-5.549,-5.207,-4.910,-4.627,-4.336,-4.031,-3.685,-3.309,-2.986,-2.759,-2.540,-2.240,-1.928,-1.712,-1.541,
--1.271,-.903,-.557,-.262,.058,.405,.718,1.041,1.477,1.972,2.377,2.711,3.131,3.647,4.108,4.488,
-4.907,5.357,5.695,5.968,6.417,7.054,7.602,7.977,8.474,9.256,10.018,10.454,10.723,11.096,11.419,11.335,
-10.894,10.551,10.623,11.043,11.570,11.965,12.039,11.848,11.754,12.008,12.355,12.340,11.960,11.672,11.756,11.948,
-11.813,11.324,11.065,11.859,13.955,16.457,17.892,17.715,17.022,17.351,18.974,20.793,21.663,21.225,19.598,17.059,
-14.158,11.495,9.106,6.637,4.358,3.441,4.802,7.982,11.383,13.246,12.351,8.543,3.184,-1.432,-3.826,-4.458,
--4.780,-5.511,-6.305,-6.759,-7.014,-7.343,-7.749,-8.108,-8.371,-8.543,-8.720,-9.131,-9.890,-10.759,-11.377,-11.627,
--11.551,-11.119,-10.455,-10.083,-10.463,-11.323,-11.923,-11.967,-11.854,-12.057,-12.723,-13.891,-15.579,-17.481,-19.055,-20.101,
--20.913,-21.723,-22.416,-22.956,-23.619,-24.527,-25.330,-25.712,-25.891,-26.264,-26.798,-27.165,-27.301,-27.447,-27.757,-28.162,
--28.582,-28.983,-29.296,-29.480,-29.634,-29.850,-30.070,-30.245,-30.513,-30.975,-31.445,-31.673,-31.721,-31.856,-32.156,-32.481,
--32.764,-33.046,-33.265,-33.296,-33.222,-33.274,-33.512,-33.831,-34.324,-35.288,-36.753,-38.242,-39.220,-39.612,-39.730,-39.845,
--39.996,-40.134,-40.238,-40.300,-40.314,-40.303,-40.296,-40.291,-40.251,-40.123,-39.862,-39.479,-39.070,-38.726,-38.422,-38.043,
--37.537,-36.960,-36.361,-35.725,-35.051,-34.391,-33.773,-33.150,-32.478,-31.777,-31.105,-30.495,-29.952,-29.450,-28.915,-28.283,
--27.576,-26.868,-26.178,-25.461,-24.720,-24.008,-23.330,-22.616,-21.847,-21.086,-20.365,-19.624,-18.837,-18.078,-17.399,-16.721,
--15.951,-15.122,-14.324,-13.557,-12.758,-11.925,-11.113,-10.324,-9.525,-8.757,-8.104,-7.548,-6.945,-6.206,-5.416,-4.702,
--4.060,-3.383,-2.625,-1.879,-1.242,-.700,-.161,.403,.927,1.359,1.763,2.247,2.818,3.366,3.793,4.125,
-4.448,4.796,5.135,5.444,5.755,6.100,6.456,6.775,7.059,7.366,7.745,8.191,8.658,9.116,9.535,9.870,
-10.111,10.342,10.681,11.123,11.537,11.843,12.119,12.454,12.792,13.024,13.197,13.479,13.928,14.413,14.800,15.110,
-15.451,15.896,16.446,17.020,17.424,17.473,17.211,16.961,17.034,17.436,17.924,18.286,18.485,18.590,18.679,18.808,
-18.981,19.143,19.244,19.319,19.444,19.633,19.832,20.010,20.199,20.431,20.682,20.892,21.024,21.115,21.265,21.535,
-21.848,22.061,22.182,22.440,23.057,23.976,24.942,25.822,26.736,27.859,29.159,30.384,31.245,31.596,31.503,31.185,
-30.881,30.737,30.789,31.013,31.342,31.681,31.941,32.077,32.063,31.885,31.603,31.368,31.274,31.225,31.051,30.743,
-30.458,30.307,30.232,30.128,29.951,29.677,29.259,28.715,28.189,27.838,27.698,27.684,27.701,27.689,27.647,27.642,
-27.753,27.944,28.082,28.086,28.002,27.864,27.606,27.192,26.761,26.488,26.377,26.304,26.234,26.150,26.152,26.300,
-26.492,26.616,26.611,26.439,26.076,25.565,25.030,24.588,24.272,24.054,23.902,23.786,23.651,23.440,23.137,22.775,
-22.408,22.085,21.844,21.687,21.557,21.367,21.110,20.916,20.978,21.354,21.854,22.178,22.168,21.908,21.592,21.362,
-21.270,21.301,21.357,21.280,21.007,20.675,20.494,20.512,20.582,20.545,20.345,19.979,19.453,18.835,18.256,17.762,
-17.245,16.605,15.919,15.336,14.849,14.298,13.603,12.882,12.278,11.759,11.143,10.298,9.268,8.228,7.356,6.726,
-6.262,5.783,5.114,4.210,3.182,2.197,1.323,.502,-.334,-1.127,-1.738,-2.135,-2.458,-2.851,-3.287,-3.619,
--3.765,-3.768,-3.714,-3.688,-3.795,-4.093,-4.492,-4.825,-5.059,-5.321,-5.663,-5.953,-6.099,-6.278,-6.765,-7.582,
--8.472,-9.184,-9.649,-9.863,-9.823,-9.618,-9.424,-9.306,-9.137,-8.828,-8.514,-8.390,-8.454,-8.563,-8.676,-8.890,
--9.244,-9.653,-10.048,-10.439,-10.794,-10.991,-10.979,-10.904,-10.993,-11.320,-11.719,-11.945,-11.904,-11.768,-11.823,-12.182,
--12.664,-13.011,-13.148,-13.137,-12.970,-12.609,-12.200,-11.999,-12.022,-11.995,-11.761,-11.521,-11.489,-11.529,-11.390,-11.148,
--11.083,-11.219,-11.340,-11.436,-11.746,-12.237,-12.446,-12.084,-11.532,-11.425,-11.934,-12.767,-13.740,-14.974,-16.512,-18.097,
--19.451,-20.544,-21.497,-22.412,-23.410,-24.615,-25.898,-26.818,-27.047,-26.782,-26.555,-26.670,-27.005,-27.351,-27.704,-28.158,
--28.709,-29.288,-29.899,-30.574,-31.267,-31.892,-32.451,-33.004,-33.553,-34.058,-34.554,-35.157,-35.918,-36.765,-37.616,-38.455,
--39.254,-39.950,-40.598,-41.440,-42.701,-44.352,-46.188,-48.075,-49.958,-51.625,-52.734,-53.173,-53.260,-53.406,-53.687,-53.922,
--54.075,-54.350,-54.877,-55.502,-55.955,-56.069,-55.792,-55.157,-54.371,-53.779,-53.573,-53.583,-53.525,-53.384,-53.399,-53.681,
--54.064,-54.376,-54.674,-55.094,-55.611,-56.069,-56.406,-56.704,-57.048,-57.433,-57.824,-58.225,-58.671,-59.198,-59.838,-60.607,
--61.476,-62.392,-63.338,-64.337,-65.386,-66.438,-67.445,-68.405,-69.349,-70.308,-71.293,-72.299,-73.301,-74.284,-75.256,-76.241,
--77.235,-78.214,-79.175,-80.133,-81.078,-81.955,-82.751,-83.545,-84.436,-85.420,-86.381,-87.225,-87.975,-88.701,-89.403,-90.045,
--90.655,-91.318,-92.032,-92.681,-93.202,-93.691,-94.256,-94.837,-95.309,-95.703,-96.160,-96.655,-96.960,-96.947,-96.755,-96.595,
--96.558,-96.742,-97.332,-98.337,-99.368,-99.957,-100.076,-100.098,-100.291,-100.588,-100.849,-101.050,-101.183,-101.219,-101.247,-101.405,
--101.630,-101.749,-101.893,-102.430,-103.325,-103.976,-103.979,-103.659,-103.454,-103.107,-102.045,-100.321,-98.553,-96.996,-95.396,-93.828,
--92.941,-93.051,-93.634,-94.155,-94.862,-96.147,-97.541,-98.075,-97.532,-96.646,-96.046,-95.592,-94.921,-94.066,-93.230,-92.339,
--91.185,-89.806,-88.427,-87.143,-85.906,-84.681,-83.436,-82.068,-80.560,-79.109,-77.889,-76.753,-75.381,-73.700,-71.955,-70.353,
--68.829,-67.213,-65.465,-63.666,-61.901,-60.234,-58.733,-57.438,-56.350,-55.525,-55.128,-55.330,-56.120,-57.235,-58.276,-58.894,
--58.915,-58.331,-57.186,-55.498,-53.302,-50.761,-48.172,-45.798,-43.668,-41.597,-39.431,-37.287,-35.491,-34.263,-33.458,-32.686,
--31.659,-30.380,-29.005,-27.623,-26.227,-24.845,-23.559,-22.424,-21.408,-20.452,-19.502,-18.504,-17.424,-16.319,-15.316,-14.482,
--13.762,-13.083,-12.476,-11.977,-11.484,-10.824,-9.984,-9.158,-8.487,-7.879,-7.167,-6.370,-5.634,-4.976,-4.236,-3.309,
--2.253,-1.127,.114,1.479,2.802,3.906,4.816,5.691,6.611,7.564,8.575,9.686,10.822,11.839,12.733,13.651,
-14.643,15.554,16.242,16.805,17.498,18.470,19.630,20.746,21.656,22.422,23.267,24.314,25.466,26.605,27.807,29.173,
-30.511,31.461,31.935,32.204,32.495,32.795,33.177,33.994,35.505,37.520,39.616,41.553,43.226,44.486,45.354,46.249,
-47.565,49.052,50.060,50.427,50.708,51.410,52.369,53.107,53.489,53.759,54.102,54.470,54.774,55.070,55.600,56.698,
-58.579,61.085,63.714,65.917,67.333,67.834,67.569,66.930,66.188,65.277,64.323,64.300,66.354,70.138,73.521,74.600,
-73.556,71.827,70.014,67.642,64.699,61.989,59.598,56.392,52.025,48.534,48.630,52.580,57.852,61.868,64.130,65.509,
-66.523,67.049,67.124,67.112,67.157,67.055,66.726,66.392,66.220,66.125,66.020,65.985,66.082,66.224,66.367,66.609,
-66.963,67.224,67.226,67.053,66.759,66.068,64.758,63.301,62.683,63.341,64.569,65.241,64.975,64.295,63.810,63.620,
-63.560,63.611,63.849,64.168,64.329,64.257,64.114,64.086,64.184,64.257,64.154,63.882,63.606,63.457,63.360,63.149,
-62.845,62.658,62.678,62.746,62.733,62.776,63.034,63.372,63.485,63.283,62.940,62.610,62.314,62.087,61.993,61.944,
-61.728,61.289,60.837,60.563,60.427,60.300,60.169,60.044,59.822,59.414,58.950,58.653,58.548,58.449,58.267,58.173,
-58.311,58.443,58.022,56.771,55.101,53.797,53.227,53.039,52.792,52.641,53.041,53.852,54.272,53.851,53.105,52.747,
-52.674,52.239,51.350,50.634,50.443,50.334,49.835,49.244,49.178,49.618,49.917,49.675,49.128,48.625,48.159,47.592,
-47.052,46.873,47.281,48.243,49.429,50.158,49.661,47.778,45.365,43.658,43.131,43.146,42.800,41.895,40.921,40.290,
-39.903,39.447,38.859,38.322,37.931,37.534,36.942,36.204,35.578,35.239,35.070,34.778,34.206,33.494,32.914,32.569,
-32.301,31.889,31.308,30.754,30.416,30.242,29.992,29.537,29.017,28.627,28.317,27.840,27.140,26.499,26.207,26.206,
-26.219,26.140,26.102,26.173,26.177,25.896,25.350,24.798,24.539,24.733,25.285,25.854,26.057,25.763,25.153,24.489,
-23.899,23.416,23.059,22.802,22.553,22.253,21.920,21.544,21.102,20.730,20.652,20.763,20.508,19.502,18.168,17.384,
-17.493,17.973,18.167,17.979,17.696,17.448,17.154,16.814,16.546,16.365,16.166,15.931,15.748,15.645,15.549,15.432,
-15.345,15.297,15.228,15.143,15.131,15.246,15.439,15.630,15.747,15.693,15.400,14.939,14.476,14.068,13.598,12.978,
-12.312,11.815,11.611,11.657,11.787,11.798,11.573,11.204,10.932,10.909,11.056,11.202,11.284,11.335,11.355,11.311,
-11.212,11.111,11.022,10.951,10.957,11.104,11.340,11.535,11.646,11.748,11.899,12.056,12.176,12.314,12.542,12.845,
-13.132,13.339,13.454,13.500,13.516,13.540,13.575,13.614,13.711,13.960,14.344,14.683,14.801,14.689,14.448,14.162,
-13.936,13.932,14.219,14.630,14.954,15.232,15.630,16.007,15.940,15.327,14.691,14.614,15.019,15.343,15.299,15.125,
-15.062,14.980,14.692,14.328,14.144,14.111,13.982,13.686,13.402,13.250,13.127,12.902,12.602,12.319,12.065,11.805,
-11.557,11.359,11.188,10.988,10.752,10.518,10.301,10.069,9.797,9.496,9.192,8.896,8.599,8.284,7.963,7.681,
-7.472,7.308,7.114,6.858,6.583,6.356,6.185,6.022,5.819,5.566,5.286,4.990,4.662,4.280,3.859,3.453,
-3.110,2.826,2.567,2.307,2.043,1.761,1.436,1.064,.672,.292,-.067,-.418,-.771,-1.122,-1.460,-1.789,
--2.131,-2.511,-2.925,-3.349,-3.771,-4.198,-4.627,-5.043,-5.455,-5.887,-6.330,-6.739,-7.107,-7.503,-7.973,-8.465,
--8.902,-9.288,-9.687,-10.107,-10.507,-10.887,-11.300,-11.749,-12.170,-12.535,-12.896,-13.308,-13.753,-14.203,-14.667,-15.150,
--15.615,-16.040,-16.461,-16.910,-17.346,-17.718,-18.050,-18.406,-18.793,-19.163,-19.499,-19.838,-20.210,-20.603,-20.987,-21.346,
--21.677,-21.985,-22.292,-22.613,-22.935,-23.241,-23.541,-23.861,-24.192,-24.496,-24.769,-25.056,-25.399,-25.783,-26.152,-26.470,
--26.747,-27.022,-27.325,-27.654,-27.984,-28.298,-28.595,-28.895,-29.212,-29.542,-29.858,-30.128,-30.362,-30.603,-30.873,-31.131,
--31.328,-31.476,-31.633,-31.814,-31.972,-32.077,-32.167,-32.292,-32.442,-32.574,-32.670,-32.743,-32.796,-32.827,-32.846,-32.876,
--32.929,-32.996,-33.054,-33.074,-33.054,-33.032,-33.058,-33.133,-33.195,-33.194,-33.125,-33.016,-32.888,-32.769,-32.679,-32.608,
--32.516,-32.390,-32.259,-32.138,-31.999,-31.823,-31.634,-31.451,-31.238,-30.954,-30.622,-30.306,-30.032,-29.768,-29.477,-29.148,
--28.786,-28.397,-27.992,-27.581,-27.183,-26.814,-26.473,-26.136,-25.793,-25.478,-25.215,-24.966,-24.671,-24.338,-24.019,-23.719,
--23.388,-23.024,-22.677,-22.347,-21.968,-21.522,-21.083,-20.690,-20.285,-19.828,-19.376,-18.982,-18.592,-18.142,-17.671,-17.251,
--16.866,-16.457,-16.041,-15.662,-15.295,-14.883,-14.453,-14.067,-13.717,-13.348,-12.963,-12.602,-12.255,-11.889,-11.529,-11.219,
--10.930,-10.607,-10.274,-9.987,-9.718,-9.405,-9.071,-8.793,-8.560,-8.297,-7.995,-7.715,-7.472,-7.220,-6.948,-6.685,
--6.413,-6.079,-5.699,-5.344,-5.033,-4.729,-4.423,-4.130,-3.823,-3.488,-3.188,-2.972,-2.768,-2.481,-2.154,-1.892,
--1.676,-1.407,-1.088,-.787,-.485,-.120,.249,.535,.826,1.275,1.828,2.292,2.657,3.081,3.580,4.002,
-4.338,4.743,5.217,5.589,5.873,6.304,6.921,7.481,7.911,8.451,9.188,9.810,10.095,10.276,10.617,10.954,
-11.004,10.869,10.881,11.136,11.502,11.888,12.162,12.053,11.503,10.935,10.790,10.953,11.040,11.089,11.478,12.223,
-12.804,12.727,12.004,11.171,11.103,12.500,15.049,17.308,18.096,17.941,18.485,20.407,22.623,23.686,23.251,21.814,
-19.676,16.786,13.296,9.758,6.886,5.355,5.593,7.473,10.309,13.183,15.065,14.741,11.440,5.964,.612,-2.688,
--3.976,-4.604,-5.403,-6.103,-6.332,-6.351,-6.636,-7.241,-7.847,-8.192,-8.315,-8.511,-9.077,-9.975,-10.819,-11.267,
--11.271,-10.863,-10.039,-9.113,-8.805,-9.489,-10.583,-11.163,-11.068,-10.919,-11.216,-11.984,-13.201,-14.913,-16.803,-18.262,
--19.092,-19.689,-20.371,-21.026,-21.594,-22.350,-23.391,-24.293,-24.696,-24.862,-25.261,-25.891,-26.399,-26.675,-26.917,-27.264,
--27.694,-28.185,-28.681,-29.004,-29.072,-29.094,-29.301,-29.619,-29.855,-30.064,-30.424,-30.864,-31.147,-31.259,-31.409,-31.675,
--31.938,-32.155,-32.394,-32.608,-32.658,-32.579,-32.569,-32.685,-32.835,-33.119,-33.854,-35.125,-36.538,-37.599,-38.182,-38.494,
--38.740,-38.982,-39.235,-39.499,-39.728,-39.871,-39.931,-39.938,-39.896,-39.797,-39.640,-39.414,-39.104,-38.746,-38.403,-38.078,
--37.707,-37.254,-36.752,-36.233,-35.682,-35.094,-34.497,-33.894,-33.249,-32.550,-31.841,-31.159,-30.513,-29.901,-29.315,-28.707,
--28.035,-27.332,-26.663,-26.021,-25.347,-24.640,-23.959,-23.293,-22.562,-21.761,-20.994,-20.305,-19.606,-18.840,-18.086,-17.419,
--16.768,-16.017,-15.180,-14.352,-13.559,-12.755,-11.941,-11.151,-10.358,-9.508,-8.650,-7.909,-7.302,-6.690,-5.954,-5.140,
--4.363,-3.635,-2.874,-2.065,-1.313,-.705,-.195,.336,.913,1.436,1.831,2.171,2.603,3.171,3.771,4.272,
-4.643,4.939,5.222,5.521,5.852,6.214,6.579,6.898,7.156,7.397,7.701,8.108,8.584,9.057,9.481,9.834,
-10.093,10.263,10.438,10.743,11.174,11.578,11.848,12.069,12.361,12.670,12.850,12.927,13.122,13.574,14.188,14.776,
-15.264,15.683,16.079,16.495,16.936,17.293,17.389,17.212,17.015,17.092,17.478,17.955,18.310,18.505,18.608,18.690,
-18.783,18.877,18.941,18.977,19.048,19.194,19.372,19.510,19.612,19.746,19.951,20.193,20.412,20.570,20.680,20.824,
-21.090,21.453,21.755,21.902,22.019,22.323,22.858,23.474,24.070,24.740,25.647,26.825,28.137,29.345,30.216,30.629,
-30.642,30.450,30.254,30.187,30.318,30.640,31.033,31.319,31.411,31.358,31.255,31.157,31.095,31.078,31.041,30.870,
-30.541,30.186,29.962,29.894,29.873,29.776,29.526,29.101,28.560,28.056,27.737,27.639,27.670,27.712,27.700,27.650,
-27.642,27.735,27.894,28.007,28.007,27.932,27.836,27.695,27.457,27.143,26.825,26.543,26.303,26.150,26.215,26.115,
-26.191,26.356,26.465,26.385,26.053,25.502,24.843,24.208,23.683,23.280,22.974,22.759,22.652,22.635,22.605,22.419,
-22.016,21.480,20.976,20.622,20.434,20.351,20.297,20.246,20.280,20.542,21.061,21.643,22.000,22.000,21.751,21.449,
-21.245,21.240,21.451,21.731,21.838,21.705,21.540,21.540,21.578,21.349,20.770,20.076,19.494,18.995,18.438,17.811,
-17.211,16.674,16.154,15.616,15.041,14.371,13.571,12.744,12.081,11.649,11.285,10.751,9.958,9.020,8.125,7.384,
-6.774,6.205,5.581,4.832,3.928,2.904,1.867,.919,.055,-.803,-1.662,-2.407,-2.958,-3.404,-3.894,-4.417,
--4.801,-4.919,-4.816,-4.638,-4.509,-4.513,-4.683,-4.960,-5.233,-5.472,-5.750,-6.086,-6.367,-6.515,-6.656,-7.021,
--7.704,-8.598,-9.509,-10.237,-10.600,-10.559,-10.318,-10.142,-10.042,-9.796,-9.324,-8.861,-8.664,-8.700,-8.777,-8.862,
--9.075,-9.444,-9.860,-10.262,-10.698,-11.147,-11.452,-11.504,-11.404,-11.377,-11.555,-11.872,-12.126,-12.156,-12.019,-11.977,
--12.219,-12.648,-13.014,-13.210,-13.275,-13.162,-12.784,-12.294,-12.041,-12.113,-12.187,-12.019,-11.816,-11.853,-11.971,-11.808,
--11.428,-11.275,-11.540,-11.956,-12.284,-12.574,-12.808,-12.703,-12.198,-11.799,-12.073,-12.969,-14.009,-15.015,-16.235,-17.768,
--19.299,-20.518,-21.486,-22.421,-23.403,-24.459,-25.676,-26.980,-27.970,-28.274,-28.017,-27.714,-27.713,-27.961,-28.291,-28.675,
--29.138,-29.616,-30.068,-30.583,-31.255,-32.021,-32.740,-33.370,-33.951,-34.474,-34.913,-35.369,-36.014,-36.874,-37.780,-38.581,
--39.278,-39.939,-40.604,-41.371,-42.434,-43.875,-45.506,-47.091,-48.648,-50.310,-51.902,-52.960,-53.288,-53.266,-53.404,-53.751,
--54.012,-54.143,-54.466,-55.146,-55.839,-56.038,-55.612,-54.848,-54.104,-53.607,-53.453,-53.573,-53.707,-53.624,-53.424,-53.444,
--53.834,-54.377,-54.792,-55.074,-55.405,-55.844,-56.270,-56.608,-56.939,-57.357,-57.826,-58.238,-58.574,-58.931,-59.422,-60.071,
--60.808,-61.565,-62.355,-63.254,-64.285,-65.363,-66.383,-67.338,-68.297,-69.290,-70.282,-71.252,-72.231,-73.235,-74.227,-75.174,
--76.108,-77.082,-78.095,-79.106,-80.084,-81.016,-81.889,-82.715,-83.565,-84.504,-85.494,-86.418,-87.218,-87.949,-88.670,-89.353,
--89.964,-90.584,-91.327,-92.146,-92.852,-93.358,-93.803,-94.348,-94.961,-95.500,-95.948,-96.391,-96.805,-97.036,-97.026,-96.892,
--96.748,-96.631,-96.695,-97.231,-98.287,-99.417,-100.076,-100.209,-100.215,-100.395,-100.685,-100.938,-101.147,-101.325,-101.412,-101.450,
--101.609,-101.925,-102.251,-102.558,-103.036,-103.698,-104.185,-104.235,-104.063,-103.939,-103.593,-102.535,-100.825,-99.044,-97.525,-96.123,
--94.838,-94.093,-94.139,-94.660,-95.307,-96.197,-97.453,-98.576,-98.840,-98.213,-97.347,-96.700,-96.116,-95.329,-94.412,-93.528,
--92.588,-91.416,-90.054,-88.671,-87.333,-86.024,-84.742,-83.445,-82.024,-80.492,-79.065,-77.873,-76.719,-75.295,-73.581,-71.834,
--70.240,-68.733,-67.167,-65.480,-63.691,-61.856,-60.080,-58.458,-57.020,-55.784,-54.885,-54.523,-54.784,-55.565,-56.623,-57.613,
--58.127,-57.922,-57.153,-56.218,-55.248,-53.896,-51.761,-48.948,-46.028,-43.479,-41.300,-39.231,-37.192,-35.395,-34.075,-33.201,
--32.472,-31.553,-30.300,-28.797,-27.224,-25.722,-24.353,-23.126,-22.008,-20.945,-19.901,-18.884,-17.903,-16.913,-15.870,-14.803,
--13.808,-12.938,-12.180,-11.531,-10.993,-10.484,-9.844,-9.037,-8.245,-7.638,-7.132,-6.506,-5.736,-5.012,-4.418,-3.772,
--2.883,-1.790,-.624,.621,2.001,3.405,4.611,5.554,6.380,7.246,8.205,9.274,10.453,11.639,12.677,13.542,
-14.371,15.258,16.124,16.868,17.559,18.375,19.394,20.510,21.535,22.368,23.088,23.890,24.893,26.039,27.227,28.466,
-29.760,30.896,31.579,31.800,31.899,32.213,32.846,33.841,35.298,37.163,39.118,40.879,42.449,43.891,45.104,46.079,
-47.164,48.650,50.174,51.020,51.072,51.041,51.583,52.554,53.390,53.894,54.307,54.767,55.125,55.332,55.726,56.774,
-58.657,61.166,63.896,66.371,68.043,68.440,67.604,66.308,65.480,65.254,64.958,64.357,64.509,66.665,70.427,73.739,
-74.945,74.176,72.442,70.212,67.595,65.123,63.119,60.572,56.084,50.349,46.534,47.297,51.994,57.546,61.599,64.016,
-65.641,66.803,67.385,67.520,67.553,67.568,67.425,67.137,66.875,66.694,66.504,66.308,66.227,66.309,66.473,66.684,
-67.006,67.430,67.771,67.787,67.329,66.363,65.000,63.616,62.815,63.015,64.003,65.056,65.590,65.627,65.546,65.538,
-65.484,65.289,65.084,65.003,64.969,64.841,64.652,64.556,64.578,64.577,64.445,64.222,63.987,63.764,63.547,63.361,
-63.246,63.212,63.224,63.233,63.221,63.255,63.435,63.746,64.007,64.023,63.770,63.378,62.977,62.640,62.426,62.351,
-62.311,62.133,61.753,61.272,60.831,60.507,60.315,60.230,60.153,59.966,59.654,59.327,59.080,58.900,58.723,58.526,
-58.330,58.161,58.012,57.793,57.324,56.488,55.415,54.407,53.667,53.201,52.979,53.005,53.149,53.135,52.848,52.512,
-52.352,52.221,51.833,51.258,50.876,50.806,50.711,50.291,49.716,49.358,49.301,49.320,49.243,49.069,48.811,48.458,
-48.119,47.984,48.111,48.418,48.879,49.461,49.785,49.189,47.437,45.249,43.762,43.400,43.513,43.224,42.391,41.547,
-41.072,40.757,40.216,39.426,38.690,38.189,37.766,37.184,36.451,35.814,35.465,35.330,35.137,34.681,34.005,33.333,
-32.838,32.487,32.111,31.609,31.057,30.605,30.293,30.008,29.625,29.159,28.733,28.409,28.092,27.620,26.941,26.205,
-25.713,25.737,26.301,27.060,27.483,27.254,26.490,25.562,24.762,24.247,24.192,24.730,25.656,26.361,26.277,25.390,
-24.255,23.482,23.247,23.255,23.125,22.770,22.383,22.070,21.667,21.075,20.639,20.824,21.429,21.509,20.413,18.689,
-17.559,17.574,18.149,18.441,18.255,17.911,17.607,17.275,16.888,16.557,16.320,16.097,15.860,15.690,15.619,15.577,
-15.511,15.454,15.431,15.425,15.438,15.519,15.672,15.836,15.948,15.969,15.840,15.520,15.081,14.665,14.314,13.916,
-13.368,12.735,12.208,11.942,11.950,12.088,12.119,11.883,11.474,11.175,11.163,11.336,11.479,11.521,11.534,11.553,
-11.523,11.413,11.278,11.174,11.117,11.122,11.223,11.404,11.588,11.728,11.858,12.020,12.193,12.336,12.467,12.640,
-12.854,13.068,13.255,13.419,13.557,13.651,13.699,13.715,13.719,13.757,13.914,14.236,14.627,14.879,14.839,14.554,
-14.265,14.241,14.576,15.076,15.407,15.442,15.425,15.648,16.005,16.056,15.613,15.053,14.880,15.117,15.379,15.434,
-15.414,15.442,15.382,15.110,14.789,14.659,14.668,14.549,14.209,13.839,13.606,13.454,13.247,12.966,12.685,12.432,
-12.191,11.971,11.791,11.622,11.414,11.170,10.936,10.733,10.528,10.290,10.021,9.745,9.467,9.163,8.806,8.411,
-8.040,7.755,7.552,7.366,7.138,6.872,6.620,6.420,6.264,6.104,5.900,5.647,5.356,5.022,4.626,4.179,
-3.740,3.370,3.079,2.827,2.585,2.338,2.071,1.761,1.400,1.010,.615,.229,-.138,-.478,-.792,-1.091,
--1.392,-1.717,-2.078,-2.470,-2.874,-3.283,-3.711,-4.162,-4.618,-5.071,-5.530,-5.981,-6.384,-6.736,-7.100,-7.527,
--7.981,-8.400,-8.799,-9.232,-9.694,-10.130,-10.539,-10.970,-11.430,-11.856,-12.226,-12.594,-13.005,-13.434,-13.855,-14.292,
--14.758,-15.212,-15.620,-16.019,-16.452,-16.894,-17.291,-17.640,-17.984,-18.332,-18.657,-18.963,-19.282,-19.629,-19.983,-20.330,
--20.673,-21.015,-21.350,-21.688,-22.036,-22.379,-22.694,-22.987,-23.282,-23.577,-23.849,-24.105,-24.394,-24.754,-25.161,-25.554,
--25.885,-26.161,-26.422,-26.703,-27.015,-27.347,-27.686,-28.022,-28.352,-28.677,-28.996,-29.296,-29.553,-29.772,-30.000,-30.273,
--30.556,-30.787,-30.960,-31.131,-31.332,-31.529,-31.679,-31.793,-31.908,-32.032,-32.152,-32.264,-32.365,-32.436,-32.466,-32.469,
--32.475,-32.502,-32.555,-32.624,-32.684,-32.710,-32.719,-32.753,-32.820,-32.873,-32.866,-32.801,-32.701,-32.579,-32.451,-32.343,
--32.254,-32.154,-32.027,-31.898,-31.777,-31.639,-31.467,-31.283,-31.101,-30.884,-30.604,-30.296,-30.014,-29.762,-29.498,-29.205,
--28.891,-28.554,-28.168,-27.737,-27.304,-26.917,-26.590,-26.293,-25.983,-25.655,-25.345,-25.071,-24.795,-24.475,-24.138,-23.839,
--23.565,-23.250,-22.891,-22.541,-22.205,-21.820,-21.386,-20.983,-20.636,-20.262,-19.810,-19.351,-18.951,-18.558,-18.110,-17.658,
--17.273,-16.920,-16.521,-16.097,-15.714,-15.353,-14.952,-14.528,-14.146,-13.797,-13.425,-13.035,-12.676,-12.338,-11.979,-11.623,
--11.326,-11.061,-10.757,-10.418,-10.105,-9.818,-9.507,-9.185,-8.908,-8.675,-8.429,-8.160,-7.899,-7.628,-7.316,-6.998,
--6.733,-6.489,-6.190,-5.845,-5.523,-5.225,-4.896,-4.556,-4.264,-4.001,-3.705,-3.401,-3.167,-2.986,-2.768,-2.498,
--2.221,-1.927,-1.581,-1.240,-.965,-.682,-.296,.115,.423,.702,1.129,1.672,2.144,2.526,2.967,3.463,
-3.847,4.121,4.489,5.001,5.480,5.860,6.296,6.835,7.325,7.755,8.319,9.014,9.530,9.731,9.883,10.195,
-10.486,10.576,10.646,10.938,11.393,11.864,12.353,12.740,12.662,12.047,11.424,11.287,11.466,11.575,11.744,12.335,
-13.193,13.748,13.686,13.050,12.002,11.122,11.538,13.788,16.699,18.447,18.843,19.525,21.554,23.887,24.854,24.230,
-22.941,21.311,18.699,14.840,10.710,7.829,7.076,8.262,10.537,13.080,15.390,16.890,16.491,13.207,7.539,1.688,
--2.194,-3.802,-4.364,-4.896,-5.403,-5.612,-5.717,-6.103,-6.790,-7.465,-7.911,-8.228,-8.686,-9.415,-10.222,-10.759,
--10.864,-10.579,-9.891,-8.804,-7.787,-7.623,-8.471,-9.460,-9.721,-9.494,-9.680,-10.588,-11.791,-13.039,-14.517,-16.159,
--17.439,-18.105,-18.519,-19.056,-19.654,-20.226,-20.975,-21.969,-22.839,-23.290,-23.579,-24.110,-24.843,-25.456,-25.861,-26.211,
--26.599,-27.048,-27.619,-28.239,-28.615,-28.612,-28.533,-28.721,-29.077,-29.301,-29.434,-29.764,-30.309,-30.792,-31.090,-31.351,
--31.651,-31.872,-31.966,-32.040,-32.135,-32.164,-32.127,-32.147,-32.235,-32.286,-32.367,-32.768,-33.634,-34.739,-35.736,-36.486,
--37.050,-37.509,-37.927,-38.361,-38.808,-39.180,-39.418,-39.548,-39.593,-39.525,-39.344,-39.128,-38.930,-38.711,-38.426,-38.090,
--37.734,-37.346,-36.911,-36.450,-35.980,-35.497,-34.997,-34.487,-33.937,-33.299,-32.581,-31.854,-31.158,-30.480,-29.808,-29.153,
--28.504,-27.836,-27.168,-26.533,-25.903,-25.223,-24.522,-23.873,-23.250,-22.547,-21.759,-21.010,-20.357,-19.696,-18.946,-18.189,
--17.531,-16.924,-16.238,-15.444,-14.609,-13.767,-12.903,-12.045,-11.243,-10.467,-9.638,-8.765,-7.950,-7.248,-6.581,-5.857,
--5.084,-4.321,-3.565,-2.763,-1.929,-1.167,-.549,-.016,.551,1.172,1.738,2.157,2.482,2.855,3.347,3.901,
-4.410,4.811,5.105,5.346,5.615,5.964,6.368,6.748,7.047,7.286,7.530,7.852,8.280,8.770,9.231,9.592,
-9.844,10.014,10.138,10.292,10.573,10.983,11.386,11.675,11.916,12.230,12.566,12.749,12.769,12.860,13.239,13.878,
-14.592,15.228,15.723,16.062,16.298,16.536,16.796,16.977,17.018,17.050,17.262,17.668,18.098,18.396,18.546,18.608,
-18.630,18.635,18.631,18.620,18.631,18.712,18.865,19.019,19.117,19.205,19.367,19.610,19.871,20.095,20.268,20.394,
-20.521,20.747,21.107,21.492,21.756,21.904,22.073,22.346,22.685,23.059,23.529,24.186,25.057,26.113,27.269,28.366,
-29.220,29.740,29.959,29.970,29.895,29.905,30.136,30.538,30.884,31.007,30.966,30.919,30.928,30.953,30.952,30.886,
-30.678,30.292,29.855,29.580,29.545,29.611,29.564,29.298,28.844,28.318,27.866,27.605,27.550,27.600,27.635,27.614,
-27.592,27.631,27.732,27.832,27.868,27.831,27.765,27.711,27.661,27.570,27.402,27.146,26.819,26.478,26.215,26.233,
-26.059,26.004,25.992,25.868,25.489,24.840,24.052,23.286,22.613,22.018,21.477,21.022,20.743,20.716,20.912,21.158,
-21.226,21.007,20.575,20.080,19.641,19.336,19.221,19.294,19.482,19.756,20.187,20.790,21.375,21.677,21.643,21.465,
-21.340,21.322,21.415,21.637,21.922,22.113,22.180,22.283,22.462,22.403,21.743,20.574,19.429,18.723,18.367,17.999,
-17.419,16.705,16.016,15.425,14.908,14.373,13.722,12.950,12.186,11.572,11.112,10.675,10.140,9.483,8.755,8.015,
-7.299,6.617,5.959,5.296,4.570,3.702,2.667,1.562,.542,-.350,-1.222,-2.151,-3.047,-3.770,-4.335,-4.877,
--5.414,-5.780,-5.833,-5.635,-5.384,-5.223,-5.190,-5.281,-5.482,-5.758,-6.070,-6.391,-6.688,-6.906,-7.034,-7.153,
--7.389,-7.845,-8.568,-9.501,-10.407,-10.953,-11.017,-10.838,-10.731,-10.681,-10.413,-9.865,-9.348,-9.151,-9.186,-9.198,
--9.163,-9.278,-9.628,-10.087,-10.531,-10.961,-11.363,-11.628,-11.691,-11.650,-11.674,-11.847,-12.125,-12.372,-12.450,-12.365,
--12.306,-12.451,-12.754,-13.027,-13.206,-13.335,-13.336,-13.054,-12.595,-12.320,-12.368,-12.455,-12.346,-12.240,-12.381,-12.531,
--12.277,-11.750,-11.571,-12.021,-12.697,-13.104,-13.184,-13.087,-12.819,-12.458,-12.416,-13.060,-14.206,-15.354,-16.352,-17.451,
--18.771,-20.080,-21.189,-22.201,-23.243,-24.243,-25.167,-26.185,-27.367,-28.391,-28.847,-28.752,-28.533,-28.536,-28.781,-29.171,
--29.672,-30.229,-30.715,-31.096,-31.525,-32.144,-32.899,-33.633,-34.282,-34.860,-35.355,-35.777,-36.261,-36.970,-37.871,-38.739,
--39.420,-39.974,-40.544,-41.241,-42.202,-43.581,-45.315,-47.029,-48.389,-49.501,-50.709,-52.014,-52.975,-53.302,-53.289,-53.419,
--53.751,-54.005,-54.165,-54.574,-55.331,-55.929,-55.769,-54.874,-53.863,-53.295,-53.244,-53.457,-53.669,-53.718,-53.578,-53.422,
--53.530,-54.004,-54.628,-55.113,-55.406,-55.674,-56.033,-56.435,-56.810,-57.198,-57.663,-58.169,-58.608,-58.952,-59.302,-59.776,
--60.378,-61.014,-61.639,-62.338,-63.229,-64.290,-65.358,-66.321,-67.241,-68.233,-69.290,-70.303,-71.243,-72.198,-73.224,-74.247,
--75.184,-76.069,-77.001,-77.999,-78.997,-79.943,-80.849,-81.735,-82.612,-83.514,-84.472,-85.446,-86.341,-87.129,-87.869,-88.598,
--89.266,-89.856,-90.484,-91.277,-92.159,-92.903,-93.416,-93.855,-94.410,-95.063,-95.665,-96.148,-96.551,-96.865,-97.035,-97.073,
--97.044,-96.935,-96.733,-96.679,-97.178,-98.293,-99.497,-100.173,-100.275,-100.261,-100.457,-100.768,-101.021,-101.239,-101.477,-101.646,
--101.694,-101.768,-101.999,-102.310,-102.604,-102.991,-103.584,-104.221,-104.631,-104.764,-104.691,-104.265,-103.232,-101.679,-100.046,-98.640,
--97.433,-96.419,-95.828,-95.831,-96.289,-97.003,-97.938,-98.957,-99.604,-99.486,-98.772,-97.970,-97.307,-96.598,-95.706,-94.750,
--93.824,-92.809,-91.585,-90.227,-88.874,-87.562,-86.275,-85.000,-83.663,-82.165,-80.577,-79.128,-77.890,-76.637,-75.133,-73.433,
--71.763,-70.218,-68.720,-67.173,-65.515,-63.695,-61.763,-59.905,-58.266,-56.815,-55.526,-54.583,-54.231,-54.482,-55.142,-56.020,
--56.878,-57.263,-56.808,-55.776,-54.927,-54.576,-54.044,-52.363,-49.408,-46.033,-43.128,-40.864,-38.894,-36.987,-35.247,-33.869,
--32.883,-32.111,-31.258,-30.079,-28.538,-26.832,-25.219,-23.823,-22.613,-21.511,-20.449,-19.392,-18.348,-17.349,-16.376,-15.351,
--14.242,-13.130,-12.120,-11.232,-10.449,-9.788,-9.232,-8.653,-7.956,-7.244,-6.693,-6.271,-5.753,-5.053,-4.351,-3.783,
--3.194,-2.350,-1.253,-.071,1.156,2.511,3.940,5.219,6.215,7.039,7.894,8.883,10.014,11.240,12.446,13.485,
-14.328,15.092,15.892,16.718,17.534,18.384,19.335,20.355,21.332,22.186,22.921,23.615,24.394,25.365,26.534,27.810,
-29.075,30.196,31.004,31.396,31.518,31.740,32.390,33.575,35.222,37.142,39.016,40.545,41.756,42.971,44.361,45.733,
-46.952,48.294,50.006,51.662,52.459,52.253,51.871,52.170,53.118,54.074,54.704,55.204,55.753,56.235,56.647,57.413,
-59.001,61.330,63.825,65.982,67.592,68.406,68.035,66.563,64.983,64.430,64.924,65.394,65.236,65.282,66.703,69.339,
-71.809,73.080,73.123,72.108,70.016,67.400,65.412,64.142,61.731,56.483,49.759,45.483,46.331,51.213,56.876,61.131,
-63.867,65.717,66.930,67.566,67.875,68.063,68.072,67.846,67.552,67.355,67.194,66.947,66.671,66.519,66.546,66.723,
-67.040,67.482,67.939,68.235,68.193,67.657,66.583,65.223,64.116,63.742,64.119,64.823,65.413,65.762,65.999,66.199,
-66.260,66.082,65.758,65.505,65.414,65.372,65.271,65.160,65.122,65.093,64.940,64.681,64.471,64.353,64.182,63.873,
-63.581,63.522,63.684,63.842,63.856,63.816,63.889,64.092,64.281,64.313,64.150,63.851,63.498,63.172,62.943,62.836,
-62.805,62.751,62.586,62.270,61.822,61.330,60.927,60.697,60.576,60.419,60.172,59.925,59.753,59.601,59.384,59.110,
-58.813,58.439,57.976,57.615,57.576,57.703,57.479,56.567,55.233,54.076,53.440,53.213,53.125,53.039,52.931,52.764,
-52.483,52.089,51.672,51.365,51.272,51.351,51.399,51.211,50.775,50.264,49.844,49.575,49.454,49.424,49.340,49.068,
-48.718,48.613,48.904,49.301,49.398,49.184,48.982,48.843,48.315,47.031,45.360,44.132,43.720,43.662,43.321,42.650,
-42.087,41.834,41.568,40.920,39.961,39.072,38.455,37.973,37.418,36.775,36.188,35.767,35.499,35.277,34.970,34.502,
-33.901,33.276,32.724,32.253,31.814,31.365,30.926,30.541,30.215,29.882,29.469,29.017,28.683,28.548,28.419,27.949,
-27.077,26.300,26.333,27.367,28.700,29.275,28.628,27.230,25.888,24.987,24.458,24.310,24.806,25.939,27.016,27.109,
-25.987,24.419,23.419,23.292,23.498,23.399,22.936,22.487,22.207,21.814,21.140,20.622,20.870,21.714,22.093,21.180,
-19.402,18.021,17.779,18.272,18.657,18.579,18.237,17.852,17.436,16.991,16.614,16.350,16.127,15.887,15.684,15.585,
-15.572,15.579,15.569,15.551,15.560,15.642,15.811,16.007,16.135,16.147,16.042,15.821,15.489,15.110,14.774,14.485,
-14.148,13.683,13.119,12.585,12.225,12.125,12.217,12.269,12.066,11.648,11.312,11.289,11.506,11.711,11.774,11.758,
-11.740,11.695,11.583,11.443,11.349,11.322,11.347,11.424,11.555,11.706,11.849,11.997,12.173,12.359,12.514,12.639,
-12.764,12.898,13.032,13.188,13.402,13.654,13.858,13.956,13.967,13.946,13.938,14.015,14.265,14.665,15.003,15.041,
-14.791,14.555,14.655,15.108,15.612,15.828,15.716,15.572,15.705,16.081,16.343,16.218,15.832,15.539,15.513,15.636,
-15.754,15.848,15.906,15.821,15.549,15.250,15.113,15.089,14.954,14.619,14.232,13.950,13.752,13.528,13.254,12.988,
-12.763,12.560,12.363,12.177,11.993,11.794,11.578,11.364,11.152,10.925,10.677,10.425,10.184,9.941,9.662,9.312,
-8.900,8.478,8.118,7.850,7.643,7.432,7.182,6.910,6.671,6.497,6.359,6.192,5.952,5.646,5.293,4.894,
-4.459,4.027,3.650,3.338,3.066,2.812,2.573,2.335,2.073,1.767,1.415,1.021,.612,.226,-.106,-.396,
--.679,-.985,-1.319,-1.675,-2.043,-2.410,-2.784,-3.192,-3.646,-4.127,-4.607,-5.085,-5.558,-5.995,-6.380,-6.750,
--7.156,-7.592,-8.020,-8.442,-8.883,-9.331,-9.752,-10.161,-10.601,-11.061,-11.481,-11.853,-12.239,-12.671,-13.104,-13.503,
--13.906,-14.348,-14.794,-15.199,-15.582,-15.990,-16.415,-16.813,-17.168,-17.500,-17.817,-18.116,-18.413,-18.730,-19.056,-19.366,
--19.662,-19.978,-20.329,-20.704,-21.091,-21.481,-21.852,-22.187,-22.494,-22.792,-23.081,-23.349,-23.619,-23.933,-24.307,-24.705,
--25.072,-25.382,-25.647,-25.898,-26.161,-26.450,-26.766,-27.108,-27.466,-27.816,-28.136,-28.426,-28.696,-28.940,-29.159,-29.383,
--29.647,-29.939,-30.202,-30.415,-30.615,-30.837,-31.065,-31.261,-31.409,-31.525,-31.627,-31.736,-31.866,-32.002,-32.103,-32.149,
--32.161,-32.167,-32.182,-32.218,-32.282,-32.359,-32.410,-32.431,-32.456,-32.499,-32.528,-32.513,-32.455,-32.369,-32.252,-32.117,
--31.997,-31.904,-31.809,-31.691,-31.567,-31.441,-31.286,-31.087,-30.880,-30.687,-30.482,-30.237,-29.980,-29.746,-29.513,-29.236,
--28.926,-28.621,-28.311,-27.942,-27.507,-27.064,-26.685,-26.379,-26.105,-25.814,-25.497,-25.186,-24.901,-24.612,-24.291,-23.962,
--23.672,-23.406,-23.103,-22.755,-22.409,-22.069,-21.689,-21.279,-20.911,-20.592,-20.226,-19.764,-19.291,-18.884,-18.495,-18.063,
--17.636,-17.284,-16.961,-16.582,-16.165,-15.777,-15.406,-14.999,-14.580,-14.212,-13.867,-13.483,-13.081,-12.731,-12.422,-12.089,
--11.739,-11.436,-11.173,-10.878,-10.540,-10.218,-9.929,-9.635,-9.335,-9.060,-8.805,-8.538,-8.273,-8.032,-7.769,-7.437,
--7.089,-6.807,-6.562,-6.273,-5.955,-5.678,-5.419,-5.100,-4.750,-4.464,-4.231,-3.952,-3.623,-3.349,-3.164,-2.998,
--2.797,-2.552,-2.229,-1.816,-1.415,-1.124,-.860,-.487,-.050,.308,.614,1.023,1.519,1.950,2.317,2.772,
-3.298,3.703,3.966,4.301,4.806,5.336,5.792,6.251,6.735,7.142,7.504,7.994,8.581,9.005,9.200,9.413,
-9.757,10.032,10.135,10.295,10.698,11.255,11.894,12.655,13.300,13.350,12.821,12.402,12.541,12.863,12.939,13.033,
-13.521,14.102,14.287,14.149,13.861,13.085,11.853,11.495,13.322,16.496,18.739,19.358,20.068,22.237,24.746,25.650,
-24.808,23.507,22.120,19.686,15.839,11.919,9.737,9.910,11.718,14.087,16.307,17.983,18.577,17.200,13.224,7.316,
-1.523,-2.205,-3.582,-3.808,-4.031,-4.464,-4.857,-5.201,-5.677,-6.303,-6.938,-7.529,-8.163,-8.898,-9.631,-10.141,
--10.289,-10.124,-9.682,-8.816,-7.539,-6.472,-6.418,-7.281,-7.973,-7.820,-7.550,-8.299,-10.036,-11.737,-12.892,-13.971,
--15.348,-16.632,-17.348,-17.634,-17.883,-18.194,-18.525,-19.000,-19.690,-20.397,-20.966,-21.552,-22.322,-23.155,-23.873,-24.518,
--25.169,-25.758,-26.275,-26.886,-27.580,-28.020,-28.032,-27.952,-28.154,-28.501,-28.663,-28.748,-29.160,-29.934,-30.684,-31.167,
--31.505,-31.810,-31.980,-31.954,-31.864,-31.829,-31.826,-31.842,-31.943,-32.108,-32.213,-32.246,-32.386,-32.779,-33.378,-34.059,
--34.760,-35.455,-36.125,-36.803,-37.524,-38.201,-38.680,-38.927,-39.055,-39.118,-39.052,-38.842,-38.603,-38.428,-38.266,-38.030,
--37.716,-37.367,-36.982,-36.549,-36.093,-35.645,-35.208,-34.783,-34.364,-33.893,-33.290,-32.562,-31.807,-31.097,-30.416,-29.732,
--29.056,-28.397,-27.746,-27.100,-26.462,-25.794,-25.061,-24.323,-23.671,-23.078,-22.424,-21.684,-20.968,-20.335,-19.691,-18.957,
--18.212,-17.571,-17.004,-16.380,-15.640,-14.823,-13.962,-13.068,-12.183,-11.368,-10.608,-9.824,-8.987,-8.155,-7.387,-6.671,
--5.962,-5.243,-4.517,-3.759,-2.942,-2.093,-1.297,-.609,.007,.637,1.299,1.910,2.389,2.758,3.108,3.507,
-3.952,4.405,4.809,5.120,5.361,5.627,5.986,6.396,6.765,7.063,7.341,7.648,8.002,8.418,8.876,9.294,
-9.580,9.743,9.862,9.996,10.161,10.397,10.731,11.106,11.438,11.749,12.121,12.509,12.751,12.805,12.866,13.160,
-13.712,14.381,15.018,15.524,15.834,15.968,16.062,16.231,16.458,16.679,16.930,17.293,17.744,18.151,18.414,18.525,
-18.515,18.418,18.286,18.187,18.156,18.197,18.311,18.469,18.611,18.713,18.847,19.081,19.384,19.661,19.881,20.071,
-20.242,20.398,20.596,20.896,21.255,21.556,21.757,21.930,22.144,22.403,22.706,23.082,23.551,24.109,24.788,25.637,
-26.631,27.645,28.542,29.222,29.612,29.730,29.766,29.970,30.382,30.764,30.895,30.824,30.756,30.773,30.795,30.749,
-30.621,30.375,29.978,29.539,29.274,29.275,29.373,29.312,28.987,28.490,27.982,27.596,27.406,27.397,27.463,27.497,
-27.499,27.547,27.656,27.739,27.712,27.601,27.500,27.467,27.477,27.479,27.437,27.325,27.122,26.835,26.513,26.233,
-25.912,25.698,25.485,25.197,24.700,23.897,22.866,21.836,20.984,20.301,19.669,19.044,18.527,18.281,18.399,18.818,
-19.340,19.748,19.931,19.880,19.610,19.162,18.704,18.468,18.549,18.831,19.206,19.717,20.377,20.958,21.194,21.138,
-21.128,21.349,21.635,21.758,21.736,21.736,21.864,22.142,22.538,22.836,22.612,21.605,20.108,18.790,18.072,17.806,
-17.547,17.016,16.243,15.410,14.671,14.072,13.544,12.997,12.415,11.848,11.303,10.727,10.118,9.560,9.085,8.584,
-7.923,7.119,6.321,5.636,5.029,4.357,3.488,2.395,1.203,.094,-.867,-1.784,-2.758,-3.718,-4.511,-5.115,
--5.639,-6.116,-6.401,-6.370,-6.113,-5.863,-5.758,-5.774,-5.858,-6.028,-6.324,-6.708,-7.062,-7.288,-7.385,-7.433,
--7.504,-7.629,-7.882,-8.419,-9.317,-10.360,-11.122,-11.380,-11.345,-11.339,-11.354,-11.121,-10.600,-10.120,-9.944,-9.923,
--9.767,-9.508,-9.463,-9.797,-10.341,-10.844,-11.200,-11.402,-11.451,-11.407,-11.414,-11.579,-11.882,-12.225,-12.508,-12.658,
--12.676,-12.680,-12.800,-13.012,-13.194,-13.325,-13.463,-13.538,-13.375,-13.010,-12.732,-12.694,-12.716,-12.656,-12.703,-13.004,
--13.229,-12.945,-12.351,-12.162,-12.686,-13.414,-13.696,-13.475,-13.129,-12.925,-12.951,-13.344,-14.193,-15.299,-16.339,-17.254,
--18.227,-19.334,-20.475,-21.627,-22.869,-24.106,-25.073,-25.743,-26.443,-27.404,-28.381,-28.951,-29.050,-29.013,-29.158,-29.556,
--30.155,-30.882,-31.590,-32.098,-32.393,-32.675,-33.132,-33.756,-34.423,-35.059,-35.641,-36.148,-36.616,-37.184,-37.947,-38.792,
--39.501,-40.017,-40.507,-41.152,-42.027,-43.214,-44.821,-46.735,-48.502,-49.702,-50.422,-51.140,-52.086,-52.956,-53.377,-53.432,
--53.493,-53.704,-53.942,-54.213,-54.728,-55.433,-55.790,-55.310,-54.210,-53.258,-52.987,-53.260,-53.606,-53.744,-53.706,-53.630,
--53.640,-53.848,-54.299,-54.876,-55.374,-55.697,-55.937,-56.234,-56.624,-57.059,-57.511,-57.991,-58.489,-58.952,-59.355,-59.753,
--60.221,-60.756,-61.287,-61.813,-62.454,-63.321,-64.350,-65.356,-66.255,-67.159,-68.189,-69.286,-70.300,-71.218,-72.172,-73.231,
--74.292,-75.235,-76.093,-76.978,-77.914,-78.836,-79.717,-80.601,-81.514,-82.430,-83.344,-84.281,-85.232,-86.129,-86.941,-87.708,
--88.455,-89.137,-89.747,-90.400,-91.200,-92.067,-92.801,-93.337,-93.826,-94.425,-95.101,-95.714,-96.194,-96.560,-96.829,-97.012,
--97.153,-97.237,-97.131,-96.804,-96.603,-97.045,-98.200,-99.464,-100.164,-100.266,-100.271,-100.518,-100.881,-101.153,-101.378,-101.657,
--101.900,-101.984,-102.002,-102.124,-102.330,-102.524,-102.822,-103.457,-104.391,-105.242,-105.651,-105.545,-105.007,-104.098,-102.908,-101.628,
--100.427,-99.367,-98.501,-97.967,-97.878,-98.221,-98.887,-99.695,-100.330,-100.439,-99.956,-99.184,-98.451,-97.767,-96.963,-96.027,
--95.080,-94.117,-92.993,-91.684,-90.340,-89.078,-87.876,-86.673,-85.422,-84.033,-82.455,-80.821,-79.345,-78.021,-76.618,-75.014,
--73.350,-71.785,-70.281,-68.740,-67.148,-65.470,-63.610,-61.623,-59.782,-58.268,-56.958,-55.722,-54.751,-54.329,-54.427,-54.819,
--55.418,-56.109,-56.370,-55.650,-54.257,-53.302,-53.357,-53.545,-52.431,-49.633,-46.098,-42.926,-40.405,-38.273,-36.392,-34.853,
--33.675,-32.732,-31.881,-30.965,-29.777,-28.214,-26.446,-24.772,-23.338,-22.086,-20.932,-19.860,-18.852,-17.859,-16.859,-15.848,
--14.787,-13.650,-12.494,-11.401,-10.370,-9.381,-8.522,-7.899,-7.428,-6.901,-6.264,-5.680,-5.238,-4.796,-4.222,-3.612,
--3.097,-2.568,-1.792,-.734,.446,1.666,2.996,4.418,5.730,6.772,7.622,8.491,9.515,10.699,11.971,13.196,
-14.236,15.063,15.787,16.521,17.300,18.143,19.099,20.161,21.199,22.073,22.784,23.437,24.124,24.912,25.894,27.126,
-28.497,29.744,30.619,31.066,31.255,31.497,32.096,33.224,34.888,36.917,38.957,40.564,41.553,42.267,43.305,44.874,
-46.609,48.158,49.685,51.451,53.092,53.816,53.444,52.843,53.021,54.047,55.187,55.915,56.383,56.927,57.595,58.390,
-59.608,61.511,63.755,65.562,66.521,66.876,66.896,66.388,65.250,64.161,64.066,64.971,65.849,65.983,65.841,66.250,
-67.253,68.327,69.278,70.078,70.126,68.747,66.518,64.923,64.085,61.914,56.644,49.773,45.248,45.651,50.038,55.573,
-60.250,63.601,65.773,66.974,67.609,68.113,68.510,68.536,68.196,67.848,67.705,67.617,67.396,67.106,66.916,66.918,
-67.146,67.607,68.171,68.593,68.720,68.553,68.093,67.303,66.325,65.528,65.206,65.301,65.557,65.841,66.174,66.508,
-66.661,66.512,66.166,65.862,65.743,65.756,65.749,65.649,65.513,65.398,65.257,65.024,64.777,64.666,64.672,64.585,
-64.299,64.003,63.949,64.103,64.210,64.163,64.122,64.247,64.453,64.530,64.391,64.108,63.767,63.424,63.151,63.015,
-62.990,62.969,62.889,62.763,62.586,62.303,61.913,61.530,61.244,60.997,60.685,60.349,60.137,60.070,59.992,59.776,
-59.464,59.111,58.663,58.116,57.703,57.668,57.838,57.649,56.729,55.354,54.171,53.552,53.349,53.252,53.164,53.138,
-53.088,52.790,52.205,51.664,51.590,52.019,52.500,52.531,52.024,51.308,50.714,50.323,50.077,49.959,49.919,49.780,
-49.422,49.062,49.116,49.664,50.214,50.175,49.527,48.799,48.374,48.015,47.250,46.065,44.950,44.270,43.853,43.351,
-42.769,42.394,42.274,42.058,41.428,40.484,39.570,38.872,38.333,37.858,37.415,36.966,36.455,35.919,35.484,35.196,
-34.913,34.442,33.754,33.010,32.406,31.999,31.685,31.331,30.906,30.485,30.109,29.731,29.355,29.148,29.246,29.426,
-29.171,28.263,27.261,27.126,28.208,29.699,30.286,29.396,27.680,26.211,25.407,24.948,24.616,24.768,25.720,26.956,
-27.383,26.486,24.932,23.847,23.644,23.791,23.627,23.106,22.623,22.339,21.978,21.338,20.753,20.782,21.422,21.893,
-21.385,19.973,18.578,18.024,18.289,18.732,18.840,18.577,18.145,17.667,17.188,16.775,16.481,16.256,16.009,15.748,
-15.587,15.597,15.706,15.775,15.757,15.734,15.810,15.989,16.172,16.258,16.209,16.032,15.750,15.419,15.117,14.881,
-14.660,14.371,13.976,13.491,12.973,12.531,12.308,12.342,12.447,12.343,11.961,11.551,11.417,11.594,11.858,12.002,
-12.013,11.970,11.900,11.783,11.642,11.539,11.510,11.543,11.619,11.723,11.835,11.943,12.074,12.261,12.487,12.693,
-12.844,12.951,13.030,13.090,13.183,13.382,13.681,13.968,14.138,14.195,14.200,14.196,14.240,14.433,14.801,15.159,
-15.251,15.047,14.814,14.837,15.140,15.515,15.759,15.834,15.860,16.006,16.331,16.674,16.757,16.474,16.034,15.768,
-15.812,16.043,16.257,16.323,16.201,15.934,15.641,15.430,15.287,15.091,14.788,14.461,14.209,14.023,13.823,13.580,
-13.334,13.121,12.932,12.740,12.535,12.328,12.129,11.940,11.745,11.523,11.264,10.992,10.734,10.502,10.276,10.025,
-9.717,9.343,8.928,8.526,8.188,7.920,7.683,7.429,7.153,6.905,6.731,6.610,6.459,6.216,5.891,5.531,
-5.160,4.773,4.380,4.005,3.661,3.344,3.056,2.806,2.587,2.371,2.128,1.835,1.479,1.077,.682,.341,
-.043,-.259,-.594,-.957,-1.326,-1.686,-2.029,-2.366,-2.738,-3.170,-3.641,-4.111,-4.574,-5.049,-5.523,-5.964,
--6.375,-6.791,-7.238,-7.701,-8.162,-8.604,-9.009,-9.377,-9.755,-10.182,-10.631,-11.042,-11.418,-11.824,-12.280,-12.728,
--13.124,-13.508,-13.931,-14.369,-14.777,-15.158,-15.554,-15.965,-16.356,-16.704,-17.019,-17.313,-17.602,-17.909,-18.240,-18.565,
--18.852,-19.114,-19.399,-19.737,-20.123,-20.538,-20.952,-21.336,-21.683,-22.014,-22.341,-22.651,-22.937,-23.231,-23.566,-23.935,
--24.293,-24.614,-24.902,-25.172,-25.437,-25.705,-25.980,-26.275,-26.601,-26.956,-27.308,-27.618,-27.879,-28.123,-28.369,-28.610,
--28.847,-29.104,-29.391,-29.675,-29.926,-30.153,-30.385,-30.623,-30.844,-31.023,-31.150,-31.240,-31.331,-31.457,-31.604,-31.728,
--31.803,-31.845,-31.875,-31.899,-31.927,-31.984,-32.060,-32.119,-32.143,-32.155,-32.172,-32.172,-32.140,-32.085,-32.009,-31.897,
--31.762,-31.648,-31.570,-31.489,-31.372,-31.241,-31.108,-30.940,-30.719,-30.491,-30.297,-30.118,-29.916,-29.702,-29.494,-29.264,
--28.978,-28.667,-28.383,-28.105,-27.767,-27.351,-26.920,-26.540,-26.222,-25.934,-25.638,-25.320,-24.997,-24.696,-24.410,-24.112,
--23.801,-23.509,-23.236,-22.942,-22.613,-22.278,-21.944,-21.581,-21.198,-20.849,-20.528,-20.147,-19.673,-19.194,-18.788,-18.412,
--18.004,-17.602,-17.264,-16.951,-16.590,-16.195,-15.821,-15.450,-15.041,-14.633,-14.283,-13.951,-13.562,-13.149,-12.801,-12.511,
--12.197,-11.850,-11.535,-11.258,-10.957,-10.620,-10.302,-10.025,-9.759,-9.493,-9.234,-8.956,-8.642,-8.343,-8.108,-7.877,
--7.573,-7.237,-6.952,-6.699,-6.398,-6.068,-5.792,-5.550,-5.257,-4.932,-4.672,-4.463,-4.200,-3.874,-3.584,-3.369,
--3.169,-2.953,-2.731,-2.451,-2.057,-1.632,-1.306,-1.042,-.694,-.261,.132,.475,.882,1.343,1.735,2.080,
-2.536,3.100,3.578,3.908,4.252,4.709,5.190,5.638,6.117,6.607,6.983,7.257,7.593,8.000,8.311,8.522,
-8.830,9.261,9.602,9.786,10.021,10.443,11.015,11.793,12.807,13.631,13.686,13.151,12.897,13.274,13.676,13.673,
-13.718,14.178,14.541,14.353,14.105,14.208,13.949,12.806,12.096,13.579,16.641,18.803,19.252,19.933,22.373,25.216,
-26.218,25.308,23.986,22.590,20.064,16.321,13.127,12.178,13.390,15.521,17.629,19.322,20.135,19.353,16.442,11.560,
-5.787,.796,-2.148,-3.090,-3.132,-3.275,-3.716,-4.203,-4.634,-5.110,-5.691,-6.364,-7.139,-8.002,-8.818,-9.371,
--9.549,-9.445,-9.216,-8.793,-7.880,-6.508,-5.419,-5.410,-6.216,-6.657,-6.255,-6.062,-7.294,-9.602,-11.522,-12.438,
--13.159,-14.485,-16.067,-17.054,-17.218,-16.975,-16.701,-16.516,-16.488,-16.700,-17.170,-17.891,-18.842,-19.863,-20.774,-21.648,
--22.718,-23.924,-24.907,-25.548,-26.133,-26.801,-27.267,-27.352,-27.373,-27.661,-28.021,-28.138,-28.235,-28.815,-29.892,-30.948,
--31.621,-31.999,-32.237,-32.283,-32.110,-31.886,-31.767,-31.744,-31.783,-31.927,-32.184,-32.448,-32.627,-32.733,-32.813,-32.908,
--33.098,-33.465,-34.013,-34.721,-35.616,-36.664,-37.637,-38.257,-38.493,-38.542,-38.535,-38.437,-38.238,-38.044,-37.919,-37.786,
--37.568,-37.291,-36.990,-36.626,-36.179,-35.707,-35.271,-34.868,-34.485,-34.122,-33.717,-33.163,-32.439,-31.659,-30.935,-30.265,
--29.603,-28.945,-28.307,-27.683,-27.052,-26.399,-25.695,-24.924,-24.148,-23.461,-22.857,-22.236,-21.553,-20.871,-20.232,-19.577,
--18.855,-18.135,-17.505,-16.937,-16.320,-15.598,-14.799,-13.958,-13.094,-12.241,-11.435,-10.667,-9.894,-9.095,-8.295,-7.524,
--6.789,-6.077,-5.369,-4.645,-3.881,-3.070,-2.228,-1.398,-.627,.078,.747,1.397,1.996,2.506,2.930,3.301,
-3.651,4.013,4.409,4.814,5.163,5.448,5.752,6.132,6.530,6.866,7.161,7.496,7.872,8.236,8.586,8.956,
-9.299,9.522,9.642,9.781,9.989,10.195,10.366,10.575,10.880,11.242,11.613,12.010,12.412,12.714,12.874,13.018,
-13.310,13.766,14.289,14.797,15.237,15.545,15.702,15.800,15.960,16.206,16.497,16.836,17.254,17.710,18.099,18.350,
-18.446,18.382,18.178,17.931,17.774,17.761,17.856,18.001,18.156,18.286,18.398,18.557,18.815,19.119,19.377,19.581,
-19.799,20.055,20.310,20.551,20.810,21.083,21.315,21.490,21.666,21.890,22.151,22.435,22.756,23.115,23.499,23.937,
-24.505,25.244,26.126,27.093,28.050,28.839,29.348,29.673,30.043,30.517,30.878,30.923,30.753,30.633,30.657,30.684,
-30.580,30.352,30.038,29.644,29.246,29.010,29.009,29.088,29.004,28.666,28.179,27.709,27.363,27.189,27.163,27.198,
-27.220,27.257,27.373,27.518,27.542,27.375,27.155,27.072,27.162,27.285,27.295,27.162,26.936,26.672,26.401,26.145,
-25.912,25.029,24.738,24.378,23.884,23.140,22.093,20.872,19.737,18.850,18.161,17.537,16.959,16.558,16.478,16.753,
-17.300,17.981,18.673,19.282,19.673,19.676,19.252,18.646,18.232,18.170,18.334,18.616,19.092,19.769,20.360,20.580,
-20.591,20.854,21.502,22.113,22.217,21.844,21.448,21.430,21.846,22.435,22.740,22.336,21.163,19.653,18.404,17.691,
-17.336,17.008,16.501,15.796,14.983,14.197,13.530,12.970,12.473,12.035,11.635,11.147,10.460,9.682,9.078,8.721,
-8.358,7.713,6.831,6.000,5.387,4.867,4.194,3.235,2.036,.755,-.452,-1.525,-2.516,-3.480,-4.377,-5.113,
--5.678,-6.148,-6.530,-6.713,-6.623,-6.377,-6.198,-6.193,-6.280,-6.363,-6.482,-6.746,-7.149,-7.518,-7.687,-7.667,
--7.612,-7.628,-7.710,-7.891,-8.348,-9.221,-10.332,-11.241,-11.679,-11.799,-11.895,-11.977,-11.818,-11.390,-10.980,-10.790,
--10.642,-10.277,-9.813,-9.657,-10.005,-10.629,-11.160,-11.415,-11.402,-11.212,-11.000,-10.964,-11.199,-11.622,-12.071,-12.446,
--12.713,-12.870,-12.977,-13.120,-13.307,-13.467,-13.581,-13.692,-13.766,-13.676,-13.409,-13.145,-13.011,-12.938,-12.895,-13.056,
--13.477,-13.788,-13.577,-13.030,-12.819,-13.246,-13.835,-13.952,-13.556,-13.141,-13.128,-13.570,-14.318,-15.204,-16.084,-16.907,
--17.750,-18.688,-19.680,-20.724,-21.968,-23.474,-24.945,-25.953,-26.472,-26.927,-27.642,-28.448,-28.982,-29.178,-29.303,-29.631,
--30.248,-31.105,-32.057,-32.863,-33.329,-33.495,-33.607,-33.883,-34.364,-34.976,-35.638,-36.270,-36.824,-37.358,-38.004,-38.778,
--39.502,-40.012,-40.410,-40.988,-41.909,-43.092,-44.443,-46.009,-47.777,-49.428,-50.549,-51.116,-51.555,-52.234,-53.029,-53.547,
--53.653,-53.596,-53.662,-53.931,-54.380,-54.969,-55.482,-55.513,-54.855,-53.856,-53.174,-53.128,-53.453,-53.701,-53.740,-53.752,
--53.895,-54.142,-54.433,-54.796,-55.254,-55.709,-56.028,-56.216,-56.426,-56.786,-57.279,-57.805,-58.308,-58.798,-59.283,-59.747,
--60.196,-60.670,-61.175,-61.673,-62.168,-62.759,-63.537,-64.449,-65.351,-66.195,-67.089,-68.124,-69.219,-70.233,-71.165,-72.142,
--73.209,-74.260,-75.198,-76.059,-76.931,-77.814,-78.658,-79.483,-80.360,-81.294,-82.216,-83.102,-84.002,-84.940,-85.859,-86.704,
--87.494,-88.259,-88.982,-89.661,-90.362,-91.140,-91.928,-92.605,-93.170,-93.744,-94.398,-95.063,-95.635,-96.091,-96.459,-96.758,
--97.020,-97.281,-97.447,-97.305,-96.833,-96.472,-96.822,-97.965,-99.271,-100.042,-100.220,-100.286,-100.577,-100.977,-101.276,-101.509,
--101.799,-102.080,-102.220,-102.271,-102.382,-102.543,-102.668,-102.899,-103.564,-104.700,-105.832,-106.382,-106.206,-105.611,-104.927,-104.231,
--103.449,-102.565,-101.670,-100.888,-100.321,-100.054,-100.157,-100.588,-101.102,-101.319,-101.010,-100.309,-99.537,-98.834,-98.082,-97.186,
--96.242,-95.328,-94.322,-93.084,-91.708,-90.426,-89.311,-88.246,-87.101,-85.814,-84.335,-82.691,-81.058,-79.595,-78.204,-76.662,
--74.967,-73.330,-71.832,-70.317,-68.683,-67.003,-65.295,-63.441,-61.493,-59.769,-58.447,-57.308,-56.138,-55.128,-54.576,-54.426,
--54.463,-54.742,-55.278,-55.466,-54.542,-52.789,-51.594,-51.818,-52.568,-52.139,-49.880,-46.579,-43.233,-40.175,-37.450,-35.345,
--34.093,-33.419,-32.789,-31.927,-30.835,-29.479,-27.801,-25.973,-24.312,-22.932,-21.688,-20.461,-19.305,-18.280,-17.327,-16.352,
--15.326,-14.243,-13.106,-11.960,-10.839,-9.692,-8.490,-7.404,-6.687,-6.316,-5.961,-5.378,-4.684,-4.113,-3.675,-3.227,
--2.751,-2.320,-1.861,-1.173,-.193,.949,2.153,3.455,4.849,6.168,7.251,8.139,9.020,10.048,11.259,12.576,
-13.839,14.891,15.710,16.415,17.119,17.852,18.650,19.600,20.709,21.805,22.701,23.401,24.060,24.797,25.655,26.701,
-27.996,29.404,30.573,31.218,31.416,31.563,32.068,33.100,34.619,36.499,38.543,40.388,41.622,42.185,42.612,43.642,
-45.476,47.596,49.422,50.955,52.491,53.875,54.493,54.169,53.665,53.956,55.142,56.438,57.191,57.548,58.024,58.842,
-59.948,61.393,63.203,64.918,65.774,65.548,64.888,64.524,64.453,64.265,64.029,64.267,65.082,65.882,66.161,66.054,
-65.853,65.514,65.100,65.183,66.080,66.979,66.717,65.389,64.182,63.311,61.160,56.356,50.149,45.747,45.371,48.639,
-53.662,58.757,62.920,65.624,66.950,67.609,68.245,68.796,68.858,68.462,68.084,67.987,67.984,67.835,67.579,67.398,
-67.424,67.741,68.331,68.952,69.264,69.165,68.850,68.490,68.047,67.456,66.834,66.361,66.112,66.100,66.348,66.780,
-67.131,67.147,66.858,66.531,66.368,66.341,66.302,66.154,65.906,65.629,65.385,65.179,64.984,64.825,64.766,64.786,
-64.751,64.592,64.424,64.387,64.428,64.383,64.255,64.234,64.417,64.646,64.710,64.561,64.279,63.920,63.526,63.197,
-63.017,62.929,62.816,62.676,62.593,62.559,62.445,62.188,61.873,61.586,61.285,60.919,60.566,60.356,60.285,60.218,
-60.057,59.806,59.471,59.039,58.576,58.232,58.039,57.777,57.156,56.137,55.021,54.175,53.723,53.510,53.352,53.229,
-53.203,53.193,52.975,52.506,52.159,52.413,53.247,53.991,53.935,53.022,51.834,50.961,50.548,50.416,50.391,50.363,
-50.206,49.871,49.566,49.634,50.128,50.613,50.543,49.848,49.020,48.543,48.342,47.927,47.029,45.905,44.952,44.235,
-43.568,42.917,42.470,42.292,42.137,41.714,41.000,40.187,39.456,38.914,38.621,38.499,38.276,37.699,36.836,36.036,
-35.544,35.241,34.821,34.140,33.344,32.693,32.311,32.082,31.783,31.301,30.715,30.174,29.746,29.479,29.485,29.812,
-30.168,30.012,29.101,27.952,27.513,28.226,29.443,29.963,29.197,27.713,26.522,25.965,25.558,24.926,24.489,24.905,
-26.014,26.790,26.455,25.311,24.292,23.898,23.852,23.674,23.259,22.817,22.483,22.153,21.675,21.110,20.758,20.850,
-21.178,21.144,20.343,19.102,18.225,18.171,18.621,18.920,18.769,18.339,17.862,17.395,16.948,16.592,16.346,16.107,
-15.823,15.627,15.668,15.873,16.011,15.980,15.902,15.921,16.026,16.122,16.159,16.127,15.992,15.736,15.438,15.211,
-15.066,14.901,14.634,14.275,13.853,13.369,12.881,12.565,12.560,12.758,12.836,12.578,12.110,11.773,11.766,11.989,
-12.206,12.289,12.261,12.180,12.060,11.912,11.778,11.704,11.705,11.770,11.865,11.953,12.019,12.110,12.292,12.562,
-12.831,13.018,13.114,13.150,13.150,13.170,13.299,13.573,13.903,14.165,14.316,14.388,14.412,14.437,14.563,14.851,
-15.177,15.327,15.234,15.046,14.943,14.988,15.189,15.542,15.958,16.267,16.421,16.562,16.773,16.850,16.540,15.956,
-15.548,15.623,16.030,16.393,16.499,16.386,16.162,15.886,15.595,15.322,15.072,14.826,14.600,14.434,14.323,14.201,
-14.014,13.772,13.530,13.319,13.128,12.928,12.709,12.487,12.279,12.076,11.855,11.602,11.331,11.060,10.797,10.544,
-10.291,10.013,9.683,9.298,8.890,8.508,8.180,7.897,7.633,7.379,7.165,7.015,6.899,6.735,6.473,6.141,
-5.802,5.480,5.154,4.803,4.435,4.065,3.708,3.385,3.111,2.877,2.659,2.437,2.193,1.895,1.529,1.136,
-.768,.438,.109,-.248,-.627,-1.012,-1.386,-1.734,-2.063,-2.414,-2.822,-3.268,-3.702,-4.114,-4.545,-5.012,
--5.482,-5.923,-6.349,-6.800,-7.286,-7.779,-8.234,-8.620,-8.954,-9.300,-9.708,-10.150,-10.569,-10.962,-11.386,-11.854,
--12.314,-12.724,-13.117,-13.534,-13.960,-14.359,-14.740,-15.134,-15.543,-15.932,-16.277,-16.584,-16.871,-17.164,-17.485,-17.832,
--18.168,-18.465,-18.729,-18.997,-19.305,-19.670,-20.080,-20.493,-20.867,-21.207,-21.548,-21.901,-22.235,-22.537,-22.842,-23.178,
--23.522,-23.837,-24.123,-24.412,-24.712,-25.009,-25.293,-25.573,-25.860,-26.172,-26.516,-26.866,-27.170,-27.417,-27.649,-27.906,
--28.178,-28.440,-28.697,-28.970,-29.254,-29.521,-29.763,-29.992,-30.221,-30.444,-30.640,-30.782,-30.866,-30.927,-31.016,-31.142,
--31.273,-31.378,-31.460,-31.524,-31.567,-31.606,-31.667,-31.747,-31.809,-31.835,-31.846,-31.850,-31.830,-31.784,-31.731,-31.670,
--31.574,-31.453,-31.358,-31.299,-31.216,-31.074,-30.910,-30.760,-30.592,-30.372,-30.141,-29.954,-29.797,-29.621,-29.420,-29.212,
--28.981,-28.709,-28.427,-28.175,-27.923,-27.613,-27.235,-26.843,-26.473,-26.130,-25.809,-25.499,-25.177,-24.837,-24.514,-24.227,
--23.946,-23.641,-23.331,-23.043,-22.761,-22.452,-22.123,-21.793,-21.451,-21.096,-20.757,-20.426,-20.042,-19.582,-19.117,-18.717,
--18.352,-17.970,-17.593,-17.262,-16.945,-16.589,-16.214,-15.859,-15.498,-15.094,-14.692,-14.354,-14.036,-13.661,-13.254,-12.903,
--12.605,-12.288,-11.942,-11.626,-11.344,-11.040,-10.707,-10.396,-10.122,-9.861,-9.610,-9.371,-9.097,-8.759,-8.429,-8.184,
--7.971,-7.693,-7.372,-7.101,-6.865,-6.574,-6.230,-5.921,-5.657,-5.374,-5.080,-4.843,-4.644,-4.401,-4.118,-3.874,
--3.656,-3.383,-3.076,-2.824,-2.598,-2.276,-1.870,-1.513,-1.222,-.880,-.459,-.061,.292,.691,1.136,1.522,
-1.865,2.313,2.888,3.428,3.850,4.248,4.680,5.091,5.489,5.965,6.470,6.830,7.020,7.208,7.463,7.699,
-7.935,8.315,8.817,9.242,9.541,9.864,10.286,10.818,11.617,12.689,13.478,13.397,12.799,12.659,13.167,13.531,
-13.408,13.483,14.117,14.542,14.229,13.935,14.294,14.428,13.489,12.712,13.974,16.714,18.471,18.632,19.381,22.153,
-25.243,26.303,25.502,24.430,23.135,20.426,16.686,14.223,14.507,16.586,18.698,20.165,21.003,20.704,18.443,14.173,
-8.885,3.916,.270,-1.700,-2.371,-2.544,-2.802,-3.191,-3.538,-3.866,-4.345,-5.034,-5.868,-6.774,-7.669,-8.385,
--8.742,-8.723,-8.510,-8.276,-7.914,-7.119,-5.924,-5.013,-5.070,-5.791,-6.112,-5.701,-5.633,-7.002,-9.317,-11.064,
--11.719,-12.315,-13.839,-15.864,-17.173,-17.207,-16.419,-15.501,-14.775,-14.273,-14.054,-14.294,-15.109,-16.309,-17.470,-18.409,
--19.463,-21.008,-22.792,-24.157,-24.892,-25.414,-26.017,-26.486,-26.651,-26.807,-27.219,-27.634,-27.757,-27.897,-28.634,-29.984,
--31.361,-32.304,-32.810,-32.999,-32.876,-32.522,-32.183,-32.018,-31.973,-31.971,-32.068,-32.339,-32.747,-33.168,-33.457,-33.500,
--33.305,-33.052,-32.955,-33.124,-33.615,-34.509,-35.750,-37.000,-37.851,-38.183,-38.176,-38.011,-37.764,-37.523,-37.395,-37.355,
--37.262,-37.064,-36.835,-36.593,-36.245,-35.768,-35.279,-34.869,-34.497,-34.119,-33.755,-33.381,-32.881,-32.194,-31.417,-30.683,
--30.009,-29.352,-28.713,-28.116,-27.540,-26.936,-26.283,-25.581,-24.832,-24.068,-23.354,-22.710,-22.091,-21.453,-20.801,-20.143,
--19.455,-18.732,-18.031,-17.394,-16.787,-16.139,-15.415,-14.628,-13.810,-12.993,-12.198,-11.417,-10.627,-9.823,-9.034,-8.280,
--7.547,-6.820,-6.091,-5.351,-4.590,-3.814,-3.031,-2.232,-1.408,-.588,.178,.867,1.487,2.048,2.553,3.004,
-3.399,3.745,4.082,4.467,4.894,5.288,5.625,5.973,6.375,6.760,7.059,7.340,7.704,8.113,8.447,8.700,
-8.960,9.223,9.398,9.509,9.701,10.007,10.275,10.404,10.511,10.757,11.134,11.531,11.906,12.271,12.597,12.861,
-13.131,13.489,13.909,14.308,14.665,15.003,15.307,15.542,15.744,15.983,16.267,16.568,16.897,17.282,17.682,18.008,
-18.214,18.292,18.220,17.997,17.728,17.568,17.576,17.689,17.830,17.967,18.087,18.195,18.337,18.558,18.818,19.043,
-19.231,19.463,19.772,20.107,20.413,20.682,20.905,21.054,21.148,21.259,21.437,21.661,21.903,22.177,22.503,22.872,
-23.274,23.715,24.212,24.802,25.563,26.526,27.576,28.517,29.289,29.977,30.580,30.911,30.850,30.591,30.472,30.574,
-30.661,30.511,30.148,29.725,29.323,28.972,28.745,28.694,28.730,28.669,28.413,28.016,27.591,27.218,26.941,26.772,
-26.691,26.675,26.742,26.898,27.040,27.011,26.800,26.612,26.664,26.922,27.125,27.055,26.717,26.271,25.862,25.542,
-25.282,25.029,23.603,23.177,22.747,22.257,21.580,20.651,19.574,18.552,17.709,17.022,16.442,16.018,15.855,15.993,
-16.374,16.928,17.626,18.455,19.319,19.972,20.128,19.716,19.018,18.448,18.177,18.107,18.191,18.546,19.167,19.736,
-19.992,20.157,20.693,21.639,22.435,22.532,21.989,21.380,21.226,21.603,22.154,22.344,21.815,20.649,19.305,18.210,
-17.459,16.905,16.409,15.914,15.359,14.713,14.033,13.404,12.834,12.310,11.870,11.500,11.015,10.248,9.336,8.628,
-8.237,7.872,7.225,6.381,5.671,5.218,4.775,4.029,2.910,1.575,.208,-1.083,-2.255,-3.291,-4.190,-4.961,
--5.607,-6.136,-6.549,-6.822,-6.914,-6.836,-6.698,-6.641,-6.700,-6.777,-6.789,-6.810,-7.004,-7.403,-7.809,-7.989,
--7.920,-7.791,-7.771,-7.876,-8.100,-8.557,-9.358,-10.370,-11.237,-11.729,-11.952,-12.130,-12.269,-12.189,-11.871,-11.535,
--11.317,-11.054,-10.567,-10.038,-9.876,-10.242,-10.860,-11.344,-11.527,-11.446,-11.188,-10.893,-10.774,-10.972,-11.419,-11.927,
--12.372,-12.722,-12.967,-13.119,-13.241,-13.393,-13.556,-13.687,-13.785,-13.850,-13.827,-13.682,-13.481,-13.313,-13.196,-13.173,
--13.368,-13.784,-14.117,-14.025,-13.606,-13.358,-13.581,-13.994,-14.091,-13.768,-13.418,-13.508,-14.158,-15.114,-16.024,-16.751,
--17.443,-18.294,-19.263,-20.169,-21.049,-22.220,-23.820,-25.484,-26.678,-27.302,-27.719,-28.236,-28.780,-29.141,-29.313,-29.503,
--29.920,-30.659,-31.670,-32.738,-33.552,-33.938,-34.011,-34.055,-34.279,-34.734,-35.383,-36.131,-36.839,-37.431,-37.984,-38.636,
--39.366,-39.978,-40.382,-40.808,-41.618,-42.911,-44.406,-45.782,-47.020,-48.300,-49.619,-50.715,-51.406,-51.879,-52.456,-53.163,
--53.690,-53.812,-53.693,-53.710,-54.068,-54.654,-55.179,-55.362,-55.065,-54.399,-53.719,-53.377,-53.425,-53.606,-53.685,-53.704,
--53.868,-54.239,-54.671,-55.026,-55.338,-55.706,-56.090,-56.346,-56.443,-56.556,-56.882,-57.428,-58.037,-58.588,-59.093,-59.598,
--60.095,-60.569,-61.052,-61.578,-62.119,-62.640,-63.181,-63.827,-64.586,-65.388,-66.199,-67.076,-68.068,-69.120,-70.143,-71.129,
--72.138,-73.167,-74.146,-75.045,-75.922,-76.821,-77.701,-78.520,-79.326,-80.199,-81.123,-82.018,-82.870,-83.752,-84.695,-85.631,
--86.486,-87.272,-88.044,-88.814,-89.570,-90.322,-91.069,-91.768,-92.395,-93.006,-93.676,-94.375,-95.003,-95.518,-95.962,-96.368,
--96.726,-97.058,-97.391,-97.596,-97.425,-96.869,-96.407,-96.663,-97.742,-99.056,-99.919,-100.214,-100.336,-100.613,-100.999,-101.324,
--101.590,-101.883,-102.171,-102.365,-102.503,-102.684,-102.870,-102.973,-103.148,-103.758,-104.900,-106.101,-106.710,-106.540,-105.993,-105.544,
--105.278,-104.965,-104.447,-103.791,-103.133,-102.543,-102.083,-101.864,-101.918,-102.036,-101.890,-101.348,-100.592,-99.850,-99.108,-98.223,
--97.210,-96.235,-95.321,-94.266,-92.959,-91.591,-90.424,-89.460,-88.485,-87.325,-85.946,-84.377,-82.720,-81.154,-79.753,-78.345,
--76.727,-74.979,-73.346,-71.853,-70.285,-68.554,-66.801,-65.084,-63.286,-61.446,-59.863,-58.662,-57.569,-56.363,-55.270,-54.589,
--54.218,-53.950,-53.966,-54.400,-54.592,-53.586,-51.572,-50.077,-50.227,-51.301,-51.565,-50.141,-47.436,-44.079,-40.344,-36.695,
--34.034,-32.872,-32.673,-32.431,-31.651,-30.432,-28.911,-27.107,-25.228,-23.640,-22.446,-21.378,-20.188,-18.927,-17.765,-16.734,
--15.756,-14.765,-13.726,-12.622,-11.488,-10.345,-9.113,-7.742,-6.448,-5.593,-5.239,-5.000,-4.484,-3.730,-3.048,-2.572,
--2.186,-1.795,-1.415,-.998,-.385,.496,1.550,2.685,3.924,5.272,6.599,7.741,8.686,9.573,10.570,11.767,
-13.110,14.410,15.474,16.282,16.985,17.698,18.411,19.129,19.980,21.048,22.197,23.198,23.999,24.750,25.590,26.555,
-27.670,28.965,30.312,31.382,31.934,32.114,32.383,33.132,34.427,36.094,37.931,39.752,41.285,42.248,42.672,43.088,
-44.182,46.130,48.392,50.287,51.672,52.858,53.948,54.599,54.624,54.512,55.004,56.199,57.430,58.112,58.409,58.893,
-59.810,60.989,62.267,63.573,64.574,64.725,63.952,62.999,62.727,63.221,63.888,64.325,64.681,65.176,65.718,66.123,
-66.321,66.116,65.189,63.724,62.694,62.949,64.134,65.041,64.992,64.252,62.966,60.464,56.226,51.152,47.247,46.078,
-47.879,51.885,56.926,61.664,65.008,66.763,67.639,68.364,68.963,69.101,68.808,68.504,68.434,68.443,68.314,68.066,
-67.884,67.948,68.357,69.024,69.620,69.792,69.517,69.099,68.794,68.550,68.186,67.666,67.130,66.757,66.684,66.931,
-67.323,67.561,67.495,67.265,67.095,67.021,66.914,66.691,66.392,66.073,65.758,65.490,65.320,65.232,65.157,65.061,
-64.963,64.875,64.796,64.747,64.735,64.692,64.560,64.422,64.442,64.649,64.880,64.969,64.890,64.677,64.338,63.912,
-63.518,63.232,62.996,62.744,62.540,62.469,62.459,62.345,62.097,61.841,61.654,61.464,61.199,60.902,60.652,60.479,
-60.383,60.336,60.223,59.913,59.450,59.048,58.773,58.371,57.563,56.440,55.392,54.686,54.266,53.959,53.690,53.462,
-53.272,53.135,53.048,52.923,52.701,52.596,53.004,53.966,54.852,54.848,53.772,52.260,51.121,50.660,50.641,50.717,
-50.715,50.601,50.399,50.199,50.156,50.334,50.544,50.452,49.932,49.264,48.853,48.719,48.436,47.646,46.505,45.461,
-44.697,44.013,43.250,42.566,42.193,42.075,41.907,41.452,40.732,39.983,39.515,39.500,39.748,39.758,39.131,37.978,
-36.804,35.998,35.513,35.055,34.445,33.761,33.195,32.844,32.617,32.304,31.760,31.027,30.287,29.734,29.501,29.647,
-30.059,30.387,30.201,29.374,28.310,27.691,27.883,28.549,28.908,28.487,27.588,26.895,26.617,26.277,25.459,24.545,
-24.338,25.017,25.829,25.925,25.228,24.319,23.710,23.468,23.392,23.264,22.979,22.609,22.307,22.050,21.591,20.884,
-20.377,20.496,20.902,20.713,19.628,18.418,18.014,18.415,18.836,18.755,18.336,17.909,17.500,17.032,16.606,16.342,
-16.148,15.903,15.720,15.786,16.025,16.161,16.091,15.975,15.957,15.981,15.965,15.948,15.975,15.961,15.807,15.575,
-15.408,15.320,15.182,14.915,14.567,14.188,13.745,13.247,12.865,12.805,13.056,13.318,13.256,12.831,12.331,12.091,
-12.182,12.414,12.567,12.577,12.497,12.376,12.224,12.065,11.938,11.880,11.898,11.973,12.055,12.108,12.167,12.321,
-12.594,12.890,13.090,13.167,13.172,13.146,13.128,13.201,13.436,13.792,14.137,14.374,14.491,14.517,14.507,14.562,
-14.757,15.045,15.290,15.408,15.405,15.298,15.152,15.157,15.498,16.066,16.491,16.567,16.505,16.567,16.625,16.337,
-15.729,15.287,15.392,15.889,16.330,16.485,16.437,16.301,16.076,15.754,15.423,15.168,14.989,14.847,14.746,14.696,
-14.645,14.508,14.259,13.968,13.724,13.546,13.380,13.169,12.909,12.637,12.389,12.165,11.944,11.696,11.408,11.096,
-10.796,10.524,10.255,9.948,9.589,9.204,8.831,8.492,8.191,7.929,7.707,7.531,7.392,7.245,7.031,6.732,
-6.396,6.086,5.807,5.521,5.203,4.855,4.492,4.130,3.792,3.494,3.224,2.965,2.723,2.496,2.242,1.910,
-1.509,1.101,.730,.383,.029,-.343,-.727,-1.111,-1.478,-1.822,-2.175,-2.576,-3.007,-3.409,-3.762,-4.117,
--4.526,-4.971,-5.406,-5.818,-6.244,-6.711,-7.209,-7.690,-8.107,-8.464,-8.816,-9.219,-9.666,-10.111,-10.538,-10.978,
--11.444,-11.907,-12.340,-12.758,-13.177,-13.583,-13.962,-14.333,-14.723,-15.129,-15.519,-15.872,-16.191,-16.490,-16.794,-17.121,
--17.468,-17.812,-18.132,-18.424,-18.699,-18.985,-19.319,-19.710,-20.110,-20.465,-20.784,-21.121,-21.485,-21.829,-22.134,-22.437,
--22.764,-23.084,-23.365,-23.636,-23.937,-24.265,-24.583,-24.882,-25.177,-25.477,-25.791,-26.129,-26.473,-26.779,-27.026,-27.258,
--27.524,-27.821,-28.105,-28.364,-28.617,-28.878,-29.135,-29.378,-29.607,-29.827,-30.039,-30.237,-30.391,-30.475,-30.509,-30.553,
--30.649,-30.784,-30.921,-31.035,-31.118,-31.174,-31.229,-31.309,-31.403,-31.470,-31.500,-31.517,-31.528,-31.511,-31.465,-31.421,
--31.380,-31.307,-31.204,-31.122,-31.065,-30.963,-30.780,-30.577,-30.412,-30.254,-30.049,-29.822,-29.634,-29.477,-29.299,-29.090,
--28.873,-28.651,-28.412,-28.169,-27.938,-27.689,-27.388,-27.050,-26.709,-26.365,-26.008,-25.664,-25.353,-25.042,-24.703,-24.371,
--24.084,-23.808,-23.490,-23.152,-22.854,-22.586,-22.292,-21.957,-21.620,-21.296,-20.968,-20.637,-20.305,-19.946,-19.532,-19.101,
--18.704,-18.338,-17.972,-17.619,-17.300,-16.983,-16.628,-16.259,-15.909,-15.552,-15.151,-14.749,-14.406,-14.093,-13.741,-13.359,
--13.012,-12.697,-12.363,-12.020,-11.719,-11.449,-11.154,-10.835,-10.536,-10.257,-9.971,-9.698,-9.462,-9.212,-8.895,-8.569,
--8.318,-8.097,-7.804,-7.464,-7.190,-6.986,-6.740,-6.418,-6.094,-5.808,-5.526,-5.248,-5.014,-4.800,-4.552,-4.307,
--4.130,-3.954,-3.661,-3.289,-2.989,-2.766,-2.477,-2.085,-1.708,-1.389,-1.031,-.604,-.206,.132,.500,.924,
-1.318,1.679,2.124,2.684,3.237,3.714,4.177,4.643,5.052,5.428,5.866,6.312,6.589,6.692,6.812,7.044,
-7.309,7.600,8.017,8.531,8.980,9.336,9.709,10.116,10.553,11.196,12.071,12.660,12.489,12.013,12.131,12.811,
-13.137,12.900,12.998,13.815,14.432,14.222,13.988,14.420,14.621,13.715,12.910,13.996,16.360,17.731,17.844,18.941,
-22.049,25.110,26.007,25.418,24.936,24.037,21.232,17.374,15.364,16.488,18.991,20.652,21.072,20.724,19.242,15.896,
-11.071,6.226,2.551,.273,-.956,-1.577,-1.969,-2.318,-2.587,-2.748,-3.000,-3.580,-4.467,-5.435,-6.321,-7.088,
--7.690,-8.007,-7.959,-7.633,-7.220,-6.813,-6.322,-5.732,-5.378,-5.629,-6.257,-6.539,-6.273,-6.273,-7.352,-9.108,
--10.383,-10.878,-11.580,-13.347,-15.654,-17.149,-17.128,-16.053,-14.801,-13.830,-13.133,-12.705,-12.786,-13.566,-14.787,-15.921,
--16.839,-18.033,-19.887,-21.966,-23.461,-24.201,-24.716,-25.343,-25.846,-26.047,-26.259,-26.739,-27.216,-27.396,-27.594,-28.401,
--29.876,-31.490,-32.756,-33.528,-33.795,-33.582,-33.107,-32.711,-32.530,-32.437,-32.330,-32.300,-32.499,-32.955,-33.551,-34.063,
--34.248,-34.029,-33.581,-33.175,-32.982,-33.124,-33.747,-34.870,-36.197,-37.283,-37.866,-37.943,-37.634,-37.141,-36.745,-36.622,
--36.661,-36.623,-36.457,-36.276,-36.080,-35.741,-35.253,-34.789,-34.438,-34.104,-33.703,-33.299,-32.930,-32.490,-31.879,-31.157,
--30.437,-29.739,-29.040,-28.387,-27.833,-27.326,-26.760,-26.106,-25.413,-24.715,-24.008,-23.299,-22.619,-21.982,-21.369,-20.741,
--20.067,-19.347,-18.617,-17.918,-17.258,-16.612,-15.955,-15.261,-14.504,-13.694,-12.888,-12.131,-11.386,-10.591,-9.759,-8.963,
--8.237,-7.541,-6.829,-6.089,-5.321,-4.529,-3.747,-3.004,-2.274,-1.500,-.674,.139,.881,1.535,2.114,2.625,
-3.073,3.458,3.792,4.129,4.536,5.005,5.442,5.801,6.148,6.533,6.893,7.165,7.434,7.804,8.212,8.505,
-8.679,8.863,9.077,9.227,9.329,9.541,9.900,10.217,10.360,10.455,10.701,11.094,11.490,11.833,12.167,12.502,
-12.817,13.143,13.530,13.938,14.282,14.557,14.822,15.101,15.377,15.663,15.988,16.334,16.664,16.993,17.346,17.667,
-17.871,17.949,17.954,17.896,17.755,17.575,17.465,17.471,17.551,17.656,17.782,17.918,18.041,18.174,18.366,18.607,
-18.834,19.027,19.245,19.528,19.844,20.146,20.416,20.632,20.756,20.792,20.825,20.929,21.110,21.339,21.617,21.968,
-22.384,22.820,23.215,23.532,23.826,24.270,25.035,26.107,27.289,28.407,29.402,30.194,30.611,30.586,30.366,30.310,
-30.487,30.603,30.385,29.898,29.410,29.062,28.802,28.577,28.425,28.365,28.309,28.148,27.848,27.447,26.987,26.523,
-26.138,25.916,25.885,26.012,26.212,26.353,26.332,26.186,26.109,26.254,26.522,26.623,26.362,25.817,25.224,24.745,
-24.369,24.006,23.603,21.943,21.410,21.038,20.745,20.352,19.751,18.990,18.194,17.447,16.779,16.259,15.996,16.045,
-16.334,16.750,17.262,17.930,18.789,19.714,20.422,20.625,20.269,19.604,18.970,18.525,18.243,18.149,18.354,18.826,
-19.303,19.609,19.925,20.547,21.421,22.109,22.247,21.891,21.406,21.141,21.219,21.473,21.516,21.025,20.037,18.912,
-17.956,17.194,16.529,15.946,15.466,15.022,14.533,14.019,13.523,13.006,12.438,11.898,11.439,10.904,10.093,9.095,
-8.240,7.679,7.193,6.537,5.807,5.284,4.995,4.610,3.792,2.520,1.033,-.437,-1.789,-2.979,-3.969,-4.766,
--5.452,-6.091,-6.642,-7.005,-7.149,-7.163,-7.161,-7.192,-7.241,-7.263,-7.217,-7.112,-7.065,-7.248,-7.692,-8.185,
--8.444,-8.400,-8.244,-8.199,-8.326,-8.594,-9.018,-9.640,-10.370,-11.002,-11.409,-11.664,-11.892,-12.068,-12.065,-11.877,
--11.655,-11.471,-11.188,-10.705,-10.224,-10.096,-10.416,-10.912,-11.276,-11.436,-11.452,-11.339,-11.136,-11.027,-11.206,-11.651,
--12.156,-12.565,-12.857,-13.040,-13.103,-13.095,-13.119,-13.212,-13.322,-13.410,-13.501,-13.595,-13.627,-13.564,-13.462,-13.419,
--13.506,-13.758,-14.136,-14.459,-14.500,-14.231,-13.927,-13.905,-14.169,-14.396,-14.307,-14.026,-14.014,-14.611,-15.670,-16.723,
--17.508,-18.212,-19.103,-20.093,-20.891,-21.528,-22.441,-23.907,-25.636,-27.073,-27.985,-28.542,-28.956,-29.261,-29.430,-29.525,
--29.671,-30.014,-30.684,-31.680,-32.755,-33.551,-33.922,-34.043,-34.194,-34.532,-35.081,-35.815,-36.639,-37.388,-37.970,-38.472,
--39.044,-39.682,-40.242,-40.699,-41.310,-42.399,-43.979,-45.645,-46.922,-47.719,-48.376,-49.244,-50.302,-51.270,-52.008,-52.631,
--53.235,-53.691,-53.845,-53.809,-53.913,-54.321,-54.825,-55.057,-54.841,-54.331,-53.838,-53.574,-53.541,-53.602,-53.634,-53.643,
--53.742,-54.026,-54.460,-54.917,-55.304,-55.645,-55.996,-56.317,-56.501,-56.551,-56.651,-56.999,-57.592,-58.250,-58.831,-59.351,
--59.873,-60.391,-60.875,-61.367,-61.925,-62.528,-63.090,-63.595,-64.125,-64.763,-65.502,-66.298,-67.144,-68.060,-69.044,-70.068,
--71.111,-72.147,-73.127,-74.019,-74.869,-75.755,-76.689,-77.598,-78.433,-79.243,-80.096,-80.979,-81.838,-82.683,-83.580,-84.536,
--85.466,-86.299,-87.060,-87.821,-88.610,-89.404,-90.176,-90.901,-91.571,-92.225,-92.938,-93.713,-94.442,-95.025,-95.491,-95.937,
--96.375,-96.756,-97.092,-97.424,-97.632,-97.470,-96.926,-96.459,-96.662,-97.658,-98.942,-99.879,-100.278,-100.418,-100.623,-100.959,
--101.322,-101.656,-101.972,-102.262,-102.506,-102.733,-102.974,-103.166,-103.238,-103.346,-103.839,-104.854,-106.018,-106.713,-106.689,-106.274,
--105.957,-105.879,-105.826,-105.594,-105.192,-104.714,-104.188,-103.642,-103.186,-102.892,-102.645,-102.229,-101.578,-100.825,-100.070,-99.224,
--98.181,-97.039,-95.989,-95.023,-93.932,-92.637,-91.346,-90.283,-89.393,-88.427,-87.217,-85.775,-84.196,-82.614,-81.162,-79.837,
--78.437,-76.800,-75.040,-73.391,-71.855,-70.228,-68.454,-66.687,-64.995,-63.276,-61.557,-60.066,-58.842,-57.606,-56.216,-54.976,
--54.187,-53.689,-53.263,-53.150,-53.560,-53.823,-52.860,-50.712,-48.893,-48.725,-49.808,-50.607,-50.100,-48.227,-45.122,-40.913,
--36.386,-32.947,-31.400,-31.142,-30.946,-30.206,-29.051,-27.638,-25.943,-24.147,-22.685,-21.731,-20.965,-19.986,-18.734,-17.413,
--16.196,-15.124,-14.153,-13.184,-12.125,-10.986,-9.807,-8.521,-7.061,-5.619,-4.591,-4.121,-3.875,-3.433,-2.753,-2.099,
--1.618,-1.224,-.827,-.435,-.017,.558,1.356,2.300,3.322,4.461,5.751,7.086,8.296,9.311,10.217,11.182,
-12.342,13.680,14.991,16.054,16.849,17.553,18.290,19.009,19.667,20.401,21.368,22.505,23.582,24.493,25.347,26.284,
-27.332,28.466,29.678,30.883,31.882,32.527,32.931,33.426,34.295,35.587,37.157,38.809,40.370,41.678,42.621,43.271,
-43.969,45.142,46.916,48.924,50.632,51.865,52.890,53.940,54.859,55.392,55.682,56.178,57.044,57.934,58.505,58.907,
-59.546,60.513,61.517,62.321,62.932,63.304,63.212,62.642,62.088,62.162,62.928,63.886,64.567,64.957,65.290,65.721,
-66.253,66.754,66.851,66.062,64.369,62.622,62.007,62.949,64.662,65.814,65.517,63.660,60.599,56.850,53.048,49.958,
-48.356,48.807,51.412,55.584,60.141,63.889,66.308,67.669,68.505,69.067,69.333,69.322,69.209,69.130,69.052,68.869,
-68.587,68.380,68.479,68.978,69.689,70.218,70.274,69.920,69.471,69.149,68.913,68.609,68.200,67.796,67.535,67.482,
-67.586,67.712,67.735,67.657,67.570,67.498,67.350,67.067,66.736,66.479,66.290,66.092,65.897,65.798,65.799,65.779,
-65.640,65.421,65.224,65.102,65.043,65.006,64.942,64.840,64.771,64.829,65.006,65.183,65.256,65.199,65.016,64.707,
-64.324,63.960,63.641,63.314,62.992,62.788,62.723,62.625,62.347,61.984,61.754,61.700,61.668,61.532,61.287,60.977,
-60.687,60.562,60.632,60.648,60.327,59.763,59.321,59.032,58.437,57.241,55.853,54.939,54.614,54.433,54.089,53.723,
-53.518,53.379,53.172,52.974,52.869,52.769,52.669,52.881,53.635,54.542,54.779,53.948,52.533,51.398,50.978,51.049,
-51.167,51.129,51.006,50.898,50.790,50.645,50.513,50.426,50.271,49.894,49.375,48.991,48.817,48.517,47.741,46.630,
-45.677,45.096,44.597,43.865,43.031,42.478,42.312,42.215,41.803,41.031,40.239,39.881,40.130,40.643,40.764,40.075,
-38.761,37.395,36.397,35.759,35.255,34.739,34.232,33.811,33.498,33.225,32.860,32.289,31.513,30.679,30.025,29.754,
-29.882,30.174,30.270,29.959,29.323,28.630,28.128,27.934,27.993,28.074,27.930,27.579,27.293,27.182,26.924,26.168,
-25.129,24.485,24.602,25.112,25.352,25.017,24.276,23.506,23.044,23.006,23.146,23.070,22.725,22.450,22.350,21.975,
-21.035,20.141,20.180,20.964,21.219,20.188,18.658,17.938,18.246,18.692,18.609,18.191,17.837,17.517,17.063,16.606,
-16.356,16.232,16.052,15.893,15.953,16.157,16.227,16.097,15.973,15.968,15.961,15.861,15.789,15.852,15.940,15.897,
-15.753,15.651,15.600,15.472,15.208,14.876,14.528,14.120,13.629,13.189,13.011,13.168,13.463,13.560,13.288,12.807,
-12.460,12.442,12.644,12.830,12.873,12.800,12.673,12.519,12.355,12.206,12.094,12.044,12.070,12.149,12.223,12.279,
-12.392,12.619,12.896,13.090,13.156,13.150,13.125,13.107,13.159,13.370,13.738,14.134,14.414,14.531,14.530,14.492,
-14.511,14.654,14.923,15.263,15.599,15.830,15.830,15.607,15.421,15.568,15.991,16.298,16.266,16.141,16.253,16.494,
-16.452,16.032,15.632,15.643,15.989,16.323,16.473,16.511,16.492,16.349,16.058,15.734,15.496,15.345,15.221,15.121,
-15.074,15.043,14.931,14.692,14.391,14.138,13.974,13.837,13.639,13.347,13.010,12.699,12.449,12.234,11.995,11.694,
-11.355,11.036,10.763,10.504,10.208,9.871,9.529,9.208,8.909,8.629,8.377,8.165,7.989,7.818,7.609,7.327,
-6.986,6.642,6.339,6.069,5.795,5.503,5.197,4.876,4.537,4.198,3.882,3.587,3.300,3.037,2.809,2.566,
-2.236,1.807,1.353,.945,.587,.244,-.105,-.464,-.829,-1.189,-1.536,-1.891,-2.286,-2.707,-3.094,-3.413,
--3.710,-4.051,-4.447,-4.856,-5.249,-5.644,-6.074,-6.552,-7.051,-7.525,-7.950,-8.350,-8.771,-9.230,-9.701,-10.160,
--10.614,-11.075,-11.539,-11.991,-12.425,-12.838,-13.222,-13.584,-13.950,-14.333,-14.726,-15.110,-15.474,-15.813,-16.129,-16.439,
--16.758,-17.091,-17.429,-17.765,-18.089,-18.386,-18.669,-18.985,-19.357,-19.741,-20.076,-20.377,-20.707,-21.075,-21.422,-21.724,
--22.027,-22.357,-22.672,-22.940,-23.198,-23.500,-23.833,-24.155,-24.463,-24.779,-25.104,-25.425,-25.747,-26.072,-26.374,-26.631,
--26.875,-27.151,-27.457,-27.750,-28.006,-28.236,-28.463,-28.698,-28.943,-29.184,-29.403,-29.601,-29.788,-29.952,-30.051,-30.083,
--30.111,-30.204,-30.362,-30.530,-30.658,-30.734,-30.780,-30.839,-30.936,-31.045,-31.115,-31.143,-31.166,-31.195,-31.197,-31.162,
--31.122,-31.087,-31.024,-30.926,-30.839,-30.768,-30.650,-30.453,-30.243,-30.085,-29.944,-29.754,-29.528,-29.324,-29.147,-28.950,
--28.725,-28.505,-28.297,-28.085,-27.865,-27.635,-27.370,-27.063,-26.750,-26.453,-26.138,-25.785,-25.439,-25.142,-24.857,-24.538,
--24.223,-23.955,-23.692,-23.364,-23.006,-22.705,-22.455,-22.167,-21.818,-21.471,-21.160,-20.851,-20.519,-20.187,-19.857,-19.497,
--19.103,-18.710,-18.334,-17.970,-17.627,-17.319,-17.015,-16.674,-16.308,-15.952,-15.595,-15.204,-14.807,-14.454,-14.133,-13.795,
--13.440,-13.105,-12.783,-12.442,-12.107,-11.821,-11.562,-11.276,-10.971,-10.690,-10.414,-10.107,-9.805,-9.559,-9.329,-9.044,
--8.740,-8.490,-8.256,-7.938,-7.564,-7.264,-7.064,-6.853,-6.570,-6.271,-5.999,-5.732,-5.464,-5.225,-4.992,-4.723,
--4.467,-4.295,-4.146,-3.891,-3.542,-3.226,-2.959,-2.630,-2.227,-1.858,-1.549,-1.189,-.747,-.332,.004,.347,
-.740,1.119,1.484,1.934,2.487,3.033,3.526,4.036,4.570,5.038,5.421,5.784,6.090,6.227,6.260,6.405,
-6.724,7.081,7.422,7.844,8.339,8.773,9.132,9.519,9.905,10.215,10.585,11.120,11.513,11.458,11.360,11.886,
-12.799,13.172,12.898,12.949,13.744,14.417,14.355,14.236,14.599,14.585,13.507,12.615,13.506,15.502,16.670,17.126,
-18.932,22.481,25.416,26.084,25.747,25.885,25.336,22.366,18.316,16.575,18.183,20.671,21.480,20.529,18.828,16.371,
-12.657,8.252,4.520,2.148,.776,-.138,-.786,-1.219,-1.520,-1.722,-1.883,-2.229,-2.957,-3.956,-4.907,-5.646,
--6.261,-6.840,-7.255,-7.253,-6.741,-5.981,-5.435,-5.371,-5.695,-6.193,-6.775,-7.339,-7.637,-7.586,-7.571,-8.045,
--8.878,-9.533,-9.955,-10.818,-12.621,-14.839,-16.327,-16.447,-15.560,-14.465,-13.627,-13.029,-12.622,-12.622,-13.236,-14.252,
--15.220,-16.103,-17.390,-19.327,-21.357,-22.731,-23.447,-24.099,-24.908,-25.496,-25.662,-25.782,-26.198,-26.707,-27.016,-27.352,
--28.196,-29.631,-31.285,-32.757,-33.802,-34.247,-34.097,-33.664,-33.336,-33.188,-33.030,-32.783,-32.610,-32.703,-33.100,-33.695,
--34.271,-34.568,-34.465,-34.100,-33.706,-33.411,-33.292,-33.506,-34.194,-35.269,-36.415,-37.272,-37.570,-37.239,-36.533,-35.933,
--35.736,-35.795,-35.791,-35.649,-35.499,-35.339,-35.038,-34.615,-34.252,-34.000,-33.703,-33.275,-32.829,-32.456,-32.064,-31.544,
--30.924,-30.264,-29.544,-28.768,-28.063,-27.541,-27.115,-26.600,-25.935,-25.218,-24.540,-23.887,-23.209,-22.517,-21.861,-21.248,
--20.628,-19.951,-19.223,-18.495,-17.792,-17.104,-16.435,-15.805,-15.183,-14.482,-13.673,-12.848,-12.100,-11.391,-10.624,-9.797,
--8.999,-8.271,-7.572,-6.857,-6.124,-5.369,-4.583,-3.808,-3.098,-2.435,-1.731,-.932,-.079,.754,1.518,2.181,
-2.727,3.163,3.508,3.798,4.112,4.535,5.053,5.536,5.895,6.189,6.505,6.820,7.081,7.356,7.729,8.126,
-8.391,8.533,8.697,8.918,9.084,9.186,9.375,9.712,10.043,10.242,10.411,10.705,11.096,11.459,11.779,12.128,
-12.497,12.818,13.103,13.425,13.784,14.113,14.385,14.638,14.892,15.142,15.420,15.765,16.154,16.542,16.926,17.301,
-17.571,17.635,17.530,17.409,17.362,17.353,17.329,17.305,17.306,17.339,17.416,17.556,17.729,17.882,18.019,18.204,
-18.452,18.703,18.918,19.133,19.382,19.644,19.886,20.115,20.319,20.449,20.483,20.488,20.568,20.761,21.042,21.378,
-21.758,22.169,22.573,22.907,23.115,23.232,23.433,23.934,24.807,25.926,27.116,28.280,29.312,30.019,30.285,30.266,
-30.271,30.391,30.394,30.064,29.527,29.107,28.922,28.796,28.546,28.218,27.962,27.806,27.644,27.378,26.979,26.448,
-25.836,25.292,25.001,25.031,25.271,25.539,25.710,25.747,25.694,25.645,25.664,25.669,25.475,24.996,24.373,23.833,
-23.438,23.054,22.544,21.943,20.453,19.947,19.750,19.697,19.542,19.172,18.628,17.993,17.326,16.696,16.230,16.054,
-16.182,16.504,16.918,17.434,18.130,19.006,19.911,20.606,20.892,20.728,20.248,19.653,19.099,18.677,18.469,18.527,
-18.789,19.119,19.452,19.827,20.255,20.651,20.957,21.193,21.327,21.205,20.789,20.337,20.145,20.136,19.913,19.250,
-18.332,17.480,16.806,16.250,15.763,15.331,14.912,14.486,14.098,13.744,13.304,12.703,12.047,11.461,10.858,10.040,
-9.020,8.048,7.287,6.634,5.939,5.281,4.855,4.639,4.301,3.488,2.138,.495,-1.130,-2.539,-3.659,-4.508,
--5.191,-5.869,-6.593,-7.214,-7.529,-7.546,-7.500,-7.578,-7.728,-7.770,-7.640,-7.434,-7.288,-7.320,-7.619,-8.160,
--8.736,-9.075,-9.090,-8.948,-8.876,-8.969,-9.193,-9.506,-9.884,-10.277,-10.618,-10.884,-11.120,-11.356,-11.546,-11.628,
--11.623,-11.605,-11.554,-11.330,-10.885,-10.433,-10.282,-10.487,-10.812,-11.040,-11.190,-11.346,-11.460,-11.471,-11.514,-11.792,
--12.287,-12.757,-13.027,-13.125,-13.121,-13.005,-12.796,-12.608,-12.521,-12.497,-12.500,-12.598,-12.835,-13.092,-13.222,-13.255,
--13.371,-13.675,-14.113,-14.580,-14.984,-15.188,-15.060,-14.678,-14.392,-14.492,-14.833,-14.956,-14.688,-14.464,-14.890,-16.016,
--17.290,-18.248,-19.003,-19.894,-20.885,-21.646,-22.146,-22.822,-24.052,-25.687,-27.251,-28.420,-29.165,-29.577,-29.760,-29.825,
--29.856,-29.891,-30.030,-30.479,-31.328,-32.346,-33.161,-33.634,-33.942,-34.314,-34.828,-35.475,-36.250,-37.083,-37.821,-38.365,
--38.789,-39.235,-39.754,-40.309,-40.935,-41.806,-43.103,-44.767,-46.408,-47.542,-48.014,-48.195,-48.652,-49.616,-50.829,-51.896,
--52.663,-53.206,-53.594,-53.837,-54.008,-54.234,-54.514,-54.639,-54.406,-53.891,-53.422,-53.269,-53.397,-53.560,-53.595,-53.571,
--53.649,-53.877,-54.182,-54.498,-54.836,-55.219,-55.627,-56.001,-56.287,-56.467,-56.600,-56.826,-57.261,-57.870,-58.497,-59.044,
--59.552,-60.093,-60.645,-61.157,-61.658,-62.228,-62.859,-63.448,-63.939,-64.407,-64.971,-65.666,-66.439,-67.239,-68.073,-68.978,
--69.969,-71.021,-72.064,-73.024,-73.888,-74.727,-75.622,-76.573,-77.502,-78.354,-79.158,-79.972,-80.808,-81.654,-82.527,-83.454,
--84.405,-85.302,-86.100,-86.843,-87.594,-88.370,-89.148,-89.905,-90.636,-91.364,-92.144,-93.009,-93.885,-94.620,-95.150,-95.575,
--96.013,-96.452,-96.814,-97.117,-97.416,-97.598,-97.433,-96.921,-96.493,-96.689,-97.628,-98.876,-99.858,-100.330,-100.476,-100.621,
--100.931,-101.353,-101.763,-102.105,-102.407,-102.710,-103.018,-103.280,-103.421,-103.427,-103.462,-103.826,-104.683,-105.791,-106.628,-106.849,
--106.594,-106.275,-106.137,-106.100,-105.992,-105.758,-105.434,-105.033,-104.557,-104.062,-103.604,-103.140,-102.563,-101.845,-101.052,-100.209,
--99.234,-98.076,-96.850,-95.722,-94.691,-93.601,-92.377,-91.155,-90.096,-89.161,-88.152,-86.933,-85.521,-84.028,-82.574,-81.229,
--79.932,-78.510,-76.861,-75.104,-73.424,-71.825,-70.167,-68.424,-66.715,-65.085,-63.455,-61.844,-60.384,-59.033,-57.546,-55.898,
--54.471,-53.562,-52.992,-52.529,-52.405,-52.845,-53.214,-52.392,-50.247,-48.123,-47.449,-48.227,-49.277,-49.533,-48.520,-45.945,
--41.775,-36.869,-32.772,-30.429,-29.403,-28.656,-27.715,-26.715,-25.693,-24.434,-22.972,-21.720,-20.949,-20.425,-19.710,-18.608,
--17.239,-15.838,-14.592,-13.551,-12.602,-11.584,-10.459,-9.273,-7.989,-6.533,-5.043,-3.865,-3.173,-2.758,-2.303,-1.750,
--1.237,-.808,-.380,.074,.499,.928,1.496,2.260,3.131,4.052,5.089,6.307,7.622,8.862,9.930,10.879,
-11.861,13.015,14.336,15.632,16.684,17.474,18.178,18.918,19.636,20.269,20.930,21.794,22.852,23.919,24.878,25.798,
-26.792,27.872,28.977,30.065,31.108,32.064,32.897,33.637,34.387,35.279,36.411,37.775,39.233,40.610,41.840,42.986,
-44.130,45.309,46.565,47.948,49.404,50.767,51.967,53.143,54.423,55.648,56.494,56.886,57.107,57.458,57.962,58.514,
-59.152,59.972,60.860,61.526,61.821,61.876,61.884,61.887,61.879,61.981,62.369,63.054,63.829,64.476,64.958,65.397,
-65.904,66.486,67.042,67.349,67.058,65.924,64.280,63.187,63.696,65.669,67.513,67.446,65.074,61.548,58.234,55.596,
-53.469,51.961,51.629,52.875,55.527,58.999,62.590,65.612,67.603,68.609,69.115,69.537,69.890,70.002,69.887,69.697,
-69.478,69.195,68.985,69.135,69.736,70.483,70.933,70.901,70.540,70.104,69.718,69.358,68.990,68.656,68.434,68.343,
-68.299,68.198,68.028,67.885,67.846,67.851,67.743,67.443,67.059,66.784,66.681,66.633,66.518,66.365,66.288,66.302,
-66.290,66.159,65.936,65.704,65.510,65.362,65.266,65.219,65.206,65.226,65.302,65.424,65.527,65.538,65.423,65.185,
-64.866,64.544,64.266,63.986,63.652,63.348,63.211,63.185,63.016,62.592,62.133,61.911,61.916,61.923,61.806,61.581,
-61.276,60.958,60.810,60.896,60.936,60.589,59.967,59.473,59.093,58.307,56.920,55.556,54.925,54.880,54.700,54.127,
-53.599,53.454,53.455,53.291,53.061,52.964,52.875,52.619,52.453,52.810,53.577,54.036,53.648,52.670,51.830,51.559,
-51.676,51.753,51.595,51.341,51.181,51.115,51.017,50.845,50.659,50.435,50.050,49.520,49.064,48.784,48.412,47.635,
-46.597,45.798,45.462,45.251,44.746,43.992,43.372,43.045,42.734,42.090,41.133,40.286,40.009,40.371,40.910,40.967,
-40.224,38.940,37.655,36.705,36.058,35.539,35.063,34.652,34.329,34.056,33.756,33.345,32.768,32.033,31.245,30.602,
-30.295,30.310,30.367,30.165,29.718,29.313,29.104,28.918,28.561,28.132,27.865,27.775,27.697,27.574,27.455,27.221,
-26.634,25.725,24.920,24.628,24.848,25.226,25.345,24.947,24.114,23.311,23.007,23.134,23.176,22.909,22.658,22.583,
-22.196,21.149,20.145,20.248,21.277,21.730,20.649,18.884,17.946,18.151,18.558,18.454,18.063,17.797,17.569,17.163,
-16.729,16.516,16.437,16.276,16.106,16.135,16.292,16.303,16.129,15.995,15.997,15.976,15.839,15.731,15.782,15.899,
-15.934,15.904,15.903,15.905,15.802,15.563,15.261,14.929,14.531,14.054,13.584,13.262,13.185,13.302,13.412,13.317,
-13.030,12.771,12.734,12.890,13.061,13.123,13.072,12.949,12.785,12.616,12.470,12.340,12.233,12.198,12.265,12.373,
-12.452,12.532,12.694,12.927,13.114,13.185,13.177,13.147,13.117,13.138,13.308,13.659,14.072,14.376,14.500,14.496,
-14.465,14.493,14.628,14.887,15.261,15.697,16.055,16.146,15.927,15.633,15.572,15.753,15.882,15.796,15.736,16.015,
-16.538,16.872,16.789,16.503,16.339,16.364,16.447,16.525,16.626,16.717,16.678,16.465,16.171,15.907,15.702,15.534,
-15.408,15.335,15.282,15.177,14.983,14.739,14.520,14.356,14.208,14.003,13.705,13.349,13.001,12.709,12.461,12.206,
-11.908,11.585,11.287,11.029,10.774,10.478,10.157,9.856,9.593,9.348,9.102,8.861,8.636,8.423,8.201,7.941,
-7.623,7.266,6.913,6.596,6.306,6.023,5.751,5.489,5.211,4.887,4.533,4.197,3.893,3.611,3.352,3.118,
-2.861,2.508,2.054,1.581,1.168,.814,.482,.155,-.165,-.481,-.803,-1.131,-1.472,-1.847,-2.249,-2.629,
--2.949,-3.236,-3.553,-3.922,-4.319,-4.714,-5.105,-5.514,-5.963,-6.453,-6.960,-7.446,-7.904,-8.356,-8.825,-9.304,
--9.777,-10.242,-10.712,-11.187,-11.653,-12.085,-12.477,-12.843,-13.210,-13.592,-13.978,-14.355,-14.722,-15.085,-15.433,-15.752,
--16.053,-16.357,-16.674,-17.001,-17.341,-17.688,-18.016,-18.320,-18.636,-18.991,-19.348,-19.656,-19.939,-20.266,-20.638,-20.987,
--21.290,-21.604,-21.956,-22.289,-22.559,-22.807,-23.093,-23.414,-23.731,-24.048,-24.389,-24.736,-25.053,-25.342,-25.630,-25.919,
--26.194,-26.464,-26.754,-27.060,-27.348,-27.595,-27.806,-28.008,-28.231,-28.487,-28.750,-28.973,-29.148,-29.314,-29.483,-29.612,
--29.677,-29.733,-29.857,-30.048,-30.236,-30.358,-30.410,-30.434,-30.486,-30.587,-30.700,-30.766,-30.781,-30.797,-30.835,-30.856,
--30.828,-30.773,-30.718,-30.646,-30.545,-30.448,-30.367,-30.255,-30.084,-29.907,-29.777,-29.654,-29.473,-29.244,-29.026,-28.824,
--28.604,-28.368,-28.150,-27.951,-27.746,-27.526,-27.290,-27.019,-26.715,-26.419,-26.150,-25.863,-25.532,-25.203,-24.922,-24.649,
--24.343,-24.046,-23.806,-23.565,-23.244,-22.885,-22.592,-22.354,-22.067,-21.704,-21.354,-21.057,-20.759,-20.418,-20.073,-19.755,
--19.428,-19.062,-18.682,-18.309,-17.941,-17.589,-17.278,-16.991,-16.680,-16.330,-15.975,-15.626,-15.261,-14.888,-14.538,-14.205,
--13.862,-13.515,-13.192,-12.879,-12.549,-12.224,-11.940,-11.673,-11.378,-11.071,-10.797,-10.536,-10.242,-9.944,-9.699,-9.474,
--9.195,-8.886,-8.624,-8.384,-8.073,-7.704,-7.394,-7.175,-6.958,-6.691,-6.426,-6.191,-5.947,-5.683,-5.443,-5.223,
--4.964,-4.676,-4.430,-4.228,-3.991,-3.702,-3.407,-3.091,-2.697,-2.279,-1.954,-1.702,-1.376,-.936,-.498,-.130,
-.231,.610,.952,1.281,1.717,2.271,2.824,3.330,3.873,4.461,4.968,5.329,5.594,5.765,5.808,5.840,
-6.066,6.482,6.884,7.213,7.610,8.106,8.560,8.942,9.357,9.759,9.987,10.123,10.401,10.766,11.012,11.342,
-12.147,13.159,13.601,13.390,13.356,13.906,14.413,14.413,14.384,14.590,14.242,12.945,11.971,12.649,14.282,15.398,
-16.469,19.231,23.396,26.416,27.074,26.962,27.292,26.510,23.061,18.870,17.516,19.511,21.723,21.461,19.086,16.193,
-13.210,9.838,6.513,4.096,2.666,1.621,.681,.040,-.250,-.441,-.708,-1.055,-1.564,-2.355,-3.318,-4.170,
--4.799,-5.354,-5.961,-6.463,-6.499,-5.861,-4.855,-4.223,-4.548,-5.686,-6.956,-7.855,-8.402,-8.781,-8.984,-8.937,
--8.739,-8.593,-8.636,-9.014,-9.954,-11.522,-13.334,-14.702,-15.171,-14.866,-14.272,-13.761,-13.388,-13.120,-13.094,-13.466,
--14.123,-14.824,-15.658,-17.011,-18.916,-20.755,-21.960,-22.733,-23.649,-24.727,-25.422,-25.510,-25.442,-25.685,-26.184,-26.707,
--27.337,-28.318,-29.659,-31.150,-32.582,-33.724,-34.314,-34.320,-34.083,-33.953,-33.901,-33.693,-33.322,-33.037,-33.033,-33.294,
--33.711,-34.139,-34.402,-34.410,-34.264,-34.117,-33.985,-33.817,-33.698,-33.846,-34.416,-35.330,-36.260,-36.746,-36.499,-35.724,
--35.000,-34.721,-34.752,-34.749,-34.620,-34.490,-34.373,-34.168,-33.904,-33.717,-33.582,-33.319,-32.880,-32.417,-32.029,-31.640,
--31.179,-30.676,-30.122,-29.412,-28.554,-27.770,-27.251,-26.903,-26.463,-25.814,-25.069,-24.370,-23.733,-23.093,-22.424,-21.761,
--21.127,-20.492,-19.816,-19.106,-18.399,-17.700,-16.992,-16.305,-15.694,-15.127,-14.474,-13.675,-12.835,-12.083,-11.391,-10.651,
--9.846,-9.055,-8.310,-7.569,-6.820,-6.093,-5.378,-4.632,-3.873,-3.181,-2.567,-1.934,-1.184,-.317,.594,1.458,
-2.199,2.780,3.213,3.531,3.774,4.036,4.436,4.979,5.508,5.874,6.112,6.350,6.623,6.892,7.187,7.563,
-7.942,8.190,8.325,8.505,8.773,9.005,9.150,9.325,9.615,9.937,10.202,10.469,10.809,11.159,11.444,11.728,
-12.105,12.522,12.843,13.059,13.276,13.554,13.857,14.153,14.436,14.685,14.886,15.096,15.391,15.772,16.193,16.632,
-17.049,17.311,17.293,17.059,16.841,16.803,16.908,17.025,17.085,17.102,17.129,17.218,17.383,17.567,17.704,17.808,
-17.956,18.175,18.414,18.642,18.892,19.186,19.474,19.705,19.893,20.063,20.187,20.233,20.253,20.348,20.575,20.904,
-21.272,21.633,21.975,22.291,22.563,22.752,22.852,22.965,23.264,23.853,24.699,25.725,26.902,28.165,29.288,30.009,
-30.284,30.308,30.244,30.036,29.610,29.128,28.863,28.832,28.746,28.370,27.803,27.316,27.015,26.793,26.520,26.139,
-25.615,24.972,24.388,24.118,24.238,24.567,24.869,25.064,25.172,25.182,25.053,24.797,24.441,23.971,23.399,22.856,
-22.479,22.206,21.808,21.169,20.453,19.354,19.016,19.025,19.110,19.006,18.657,18.146,17.556,16.934,16.349,15.919,
-15.743,15.828,16.107,16.535,17.131,17.913,18.813,19.691,20.405,20.865,21.011,20.815,20.333,19.733,19.227,18.940,
-18.851,18.893,19.065,19.380,19.696,19.763,19.563,19.485,19.911,20.607,20.825,20.159,19.098,18.482,18.535,18.696,
-18.385,17.624,16.839,16.316,16.007,15.736,15.393,14.978,14.577,14.262,13.976,13.548,12.897,12.154,11.474,10.821,
-10.029,9.060,8.063,7.178,6.387,5.627,4.946,4.479,4.227,3.931,3.210,1.864,.066,-1.767,-3.260,-4.288,
--4.969,-5.551,-6.245,-7.050,-7.717,-8.003,-7.966,-7.919,-8.045,-8.178,-8.066,-7.732,-7.449,-7.435,-7.706,-8.184,
--8.774,-9.329,-9.674,-9.743,-9.649,-9.560,-9.570,-9.680,-9.851,-10.033,-10.188,-10.321,-10.474,-10.665,-10.865,-11.042,
--11.214,-11.423,-11.653,-11.768,-11.601,-11.143,-10.646,-10.418,-10.519,-10.729,-10.867,-10.990,-11.215,-11.490,-11.708,-11.944,
--12.357,-12.896,-13.299,-13.411,-13.327,-13.167,-12.911,-12.536,-12.145,-11.840,-11.600,-11.422,-11.452,-11.800,-12.301,-12.662,
--12.837,-13.072,-13.562,-14.236,-14.918,-15.507,-15.891,-15.880,-15.444,-14.950,-14.868,-15.194,-15.393,-15.114,-14.756,-15.068,
--16.224,-17.631,-18.690,-19.457,-20.332,-21.372,-22.253,-22.845,-23.477,-24.517,-25.948,-27.440,-28.691,-29.557,-30.027,-30.206,
--30.257,-30.256,-30.177,-30.104,-30.303,-30.950,-31.873,-32.728,-33.368,-33.911,-34.485,-35.105,-35.772,-36.530,-37.345,-38.074,
--38.605,-38.970,-39.294,-39.697,-40.272,-41.094,-42.205,-43.591,-45.146,-46.611,-47.621,-47.992,-47.991,-48.207,-49.038,-50.347,
--51.653,-52.600,-53.173,-53.562,-53.928,-54.289,-54.525,-54.472,-54.058,-53.426,-52.896,-52.749,-52.994,-53.353,-53.527,-53.485,
--53.463,-53.658,-53.997,-54.274,-54.442,-54.656,-55.030,-55.487,-55.878,-56.167,-56.428,-56.742,-57.153,-57.667,-58.239,-58.780,
--59.254,-59.731,-60.284,-60.881,-61.438,-61.959,-62.524,-63.152,-63.752,-64.250,-64.697,-65.209,-65.842,-66.557,-67.301,-68.070,
--68.899,-69.815,-70.806,-71.818,-72.785,-73.688,-74.567,-75.485,-76.444,-77.381,-78.235,-79.016,-79.789,-80.605,-81.474,-82.385,
--83.314,-84.223,-85.071,-85.856,-86.616,-87.381,-88.146,-88.896,-89.639,-90.407,-91.242,-92.170,-93.155,-94.068,-94.767,-95.245,
--95.642,-96.073,-96.502,-96.859,-97.166,-97.454,-97.578,-97.326,-96.763,-96.346,-96.573,-97.513,-98.753,-99.758,-100.278,-100.455,
--100.618,-100.978,-101.480,-101.937,-102.268,-102.565,-102.930,-103.320,-103.596,-103.678,-103.620,-103.594,-103.841,-104.532,-105.564,-106.525,
--106.991,-106.889,-106.525,-106.235,-106.100,-105.997,-105.820,-105.568,-105.272,-104.930,-104.532,-104.076,-103.544,-102.905,-102.143,-101.276,
--100.318,-99.251,-98.070,-96.844,-95.684,-94.621,-93.561,-92.401,-91.168,-89.993,-88.941,-87.914,-86.763,-85.443,-84.045,-82.687,
--81.387,-80.047,-78.541,-76.847,-75.083,-73.377,-71.732,-70.078,-68.411,-66.800,-65.257,-63.722,-62.191,-60.712,-59.207,-57.513,
--55.699,-54.143,-53.109,-52.448,-51.959,-51.838,-52.279,-52.733,-52.130,-50.146,-47.824,-46.583,-46.832,-47.825,-48.528,-48.187,
--46.283,-42.699,-38.138,-33.874,-30.753,-28.629,-26.937,-25.495,-24.450,-23.722,-22.961,-22.017,-21.115,-20.473,-19.986,-19.356,
--18.384,-17.076,-15.600,-14.197,-13.020,-12.020,-11.034,-9.978,-8.859,-7.639,-6.259,-4.828,-3.595,-2.689,-1.999,-1.390,
--.873,-.483,-.115,.349,.858,1.299,1.724,2.302,3.083,3.946,4.816,5.775,6.910,8.155,9.360,10.449,
-11.474,12.547,13.755,15.067,16.322,17.350,18.146,18.852,19.572,20.270,20.902,21.553,22.353,23.310,24.310,25.275,
-26.237,27.256,28.330,29.393,30.386,31.304,32.210,33.171,34.173,35.136,36.058,37.078,38.309,39.656,40.937,42.164,
-43.547,45.172,46.801,48.124,49.113,50.009,51.048,52.303,53.739,55.220,56.465,57.182,57.338,57.244,57.289,57.666,
-58.340,59.175,59.996,60.614,60.916,60.935,60.834,60.811,61.018,61.480,62.063,62.606,63.086,63.607,64.215,64.846,
-65.461,66.077,66.649,67.084,67.378,67.507,67.203,66.261,65.289,65.548,67.443,69.452,69.366,66.647,62.919,60.002,
-58.197,56.846,55.767,55.371,55.824,56.951,58.829,61.643,64.875,67.387,68.614,69.129,69.711,70.364,70.639,70.490,
-70.273,70.124,69.909,69.717,69.918,70.608,71.363,71.710,71.596,71.265,70.886,70.457,69.966,69.489,69.134,68.963,
-68.926,68.860,68.637,68.332,68.150,68.156,68.162,67.962,67.594,67.278,67.140,67.096,67.003,66.839,66.693,66.621,
-66.582,66.499,66.360,66.201,66.039,65.858,65.673,65.552,65.541,65.608,65.695,65.779,65.862,65.910,65.856,65.657,
-65.335,64.977,64.673,64.433,64.169,63.838,63.560,63.479,63.503,63.354,62.937,62.496,62.284,62.239,62.144,61.953,
-61.766,61.588,61.374,61.209,61.181,61.113,60.750,60.181,59.689,59.173,58.185,56.738,55.588,55.312,55.474,55.195,
-54.345,53.604,53.405,53.438,53.306,53.111,53.079,53.042,52.734,52.358,52.396,52.900,53.343,53.262,52.765,52.317,
-52.194,52.268,52.234,51.941,51.510,51.199,51.136,51.227,51.291,51.208,50.917,50.393,49.739,49.183,48.811,48.392,
-47.656,46.731,46.069,45.892,45.906,45.686,45.161,44.567,44.015,43.339,42.370,41.249,40.391,40.132,40.412,40.766,
-40.665,39.938,38.856,37.835,37.074,36.498,35.967,35.447,35.000,34.680,34.444,34.166,33.733,33.133,32.442,31.767,
-31.226,30.924,30.823,30.680,30.288,29.790,29.561,29.682,29.749,29.365,28.661,28.106,27.900,27.839,27.706,27.498,
-27.217,26.725,25.967,25.183,24.759,24.930,25.588,26.266,26.338,25.535,24.323,23.500,23.322,23.337,23.157,22.942,
-22.823,22.389,21.354,20.410,20.562,21.582,21.977,20.829,19.002,17.996,18.118,18.472,18.390,18.087,17.917,17.754,
-17.393,17.001,16.812,16.718,16.510,16.285,16.274,16.412,16.425,16.256,16.095,16.035,15.963,15.821,15.721,15.751,
-15.846,15.931,16.034,16.172,16.253,16.186,15.989,15.720,15.381,14.960,14.500,14.059,13.666,13.364,13.213,13.202,
-13.210,13.146,13.056,13.045,13.129,13.239,13.312,13.318,13.229,13.051,12.856,12.707,12.585,12.458,12.379,12.424,
-12.559,12.676,12.749,12.860,13.039,13.201,13.264,13.243,13.189,13.123,13.089,13.184,13.469,13.861,14.191,14.363,
-14.406,14.413,14.458,14.589,14.832,15.193,15.621,15.981,16.104,15.946,15.691,15.584,15.655,15.701,15.609,15.569,
-15.854,16.442,16.999,17.236,17.153,16.938,16.741,16.621,16.608,16.706,16.845,16.911,16.825,16.587,16.263,15.941,
-15.698,15.557,15.475,15.388,15.266,15.118,14.959,14.797,14.626,14.437,14.208,13.931,13.613,13.286,12.975,12.686,
-12.407,12.123,11.839,11.569,11.305,11.018,10.699,10.381,10.109,9.886,9.684,9.476,9.255,9.020,8.774,8.520,
-8.252,7.952,7.612,7.258,6.918,6.598,6.296,6.022,5.774,5.507,5.174,4.795,4.431,4.119,3.844,3.589,
-3.342,3.062,2.701,2.269,1.844,1.483,1.169,.859,.552,.264,-.016,-.316,-.637,-.972,-1.326,-1.703,
--2.075,-2.415,-2.734,-3.073,-3.452,-3.858,-4.271,-4.682,-5.090,-5.510,-5.959,-6.444,-6.947,-7.441,-7.917,-8.386,
--8.855,-9.323,-9.798,-10.288,-10.788,-11.270,-11.700,-12.077,-12.438,-12.826,-13.240,-13.643,-14.010,-14.360,-14.713,-15.053,
--15.357,-15.640,-15.934,-16.249,-16.577,-16.919,-17.281,-17.643,-17.983,-18.319,-18.666,-18.992,-19.265,-19.524,-19.841,-20.210,
--20.556,-20.858,-21.181,-21.555,-21.912,-22.193,-22.434,-22.702,-23.004,-23.312,-23.635,-23.992,-24.352,-24.659,-24.914,-25.167,
--25.447,-25.744,-26.047,-26.356,-26.658,-26.933,-27.172,-27.384,-27.589,-27.820,-28.096,-28.377,-28.595,-28.740,-28.876,-29.043,
--29.202,-29.316,-29.422,-29.583,-29.788,-29.962,-30.060,-30.098,-30.122,-30.174,-30.270,-30.375,-30.430,-30.425,-30.416,-30.445,
--30.471,-30.440,-30.360,-30.274,-30.190,-30.099,-30.011,-29.933,-29.837,-29.704,-29.568,-29.459,-29.341,-29.162,-28.937,-28.714,
--28.498,-28.264,-28.025,-27.814,-27.621,-27.414,-27.187,-26.952,-26.697,-26.415,-26.139,-25.890,-25.635,-25.346,-25.052,-24.782,
--24.498,-24.173,-23.867,-23.629,-23.398,-23.088,-22.742,-22.463,-22.233,-21.944,-21.577,-21.233,-20.953,-20.667,-20.324,-19.974,
--19.655,-19.335,-18.985,-18.629,-18.281,-17.921,-17.555,-17.230,-16.957,-16.675,-16.348,-16.001,-15.665,-15.330,-14.988,-14.650,
--14.313,-13.960,-13.606,-13.288,-12.994,-12.685,-12.365,-12.069,-11.787,-11.478,-11.155,-10.867,-10.609,-10.342,-10.075,-9.846,
--9.620,-9.328,-8.991,-8.697,-8.450,-8.175,-7.863,-7.590,-7.373,-7.137,-6.863,-6.612,-6.401,-6.162,-5.879,-5.627,
--5.434,-5.221,-4.930,-4.601,-4.294,-4.017,-3.754,-3.482,-3.142,-2.712,-2.296,-2.014,-1.814,-1.530,-1.117,-.680,
--.272,.148,.556,.873,1.145,1.530,2.060,2.611,3.130,3.696,4.295,4.768,5.040,5.201,5.316,5.380,
-5.489,5.799,6.256,6.638,6.915,7.289,7.821,8.340,8.773,9.232,9.680,9.910,9.977,10.226,10.775,11.381,
-11.955,12.702,13.543,13.991,13.907,13.804,14.034,14.282,14.283,14.279,14.264,13.592,12.172,11.202,11.681,12.974,
-14.128,15.883,19.560,24.317,27.582,28.420,28.360,28.250,26.600,22.553,18.587,17.964,20.330,22.047,20.678,17.185,
-13.631,10.677,8.047,5.901,4.555,3.653,2.629,1.584,.999,.859,.696,.277,-.263,-.854,-1.596,-2.467,
--3.279,-3.940,-4.543,-5.156,-5.647,-5.731,-5.212,-4.326,-3.804,-4.331,-5.809,-7.387,-8.368,-8.855,-9.309,-9.750,
--9.738,-9.089,-8.253,-7.885,-8.263,-9.212,-10.447,-11.770,-12.990,-13.858,-14.215,-14.162,-13.962,-13.801,-13.716,-13.729,
--13.875,-14.129,-14.498,-15.219,-16.580,-18.420,-20.108,-21.246,-22.153,-23.318,-24.599,-25.378,-25.436,-25.231,-25.292,-25.741,
--26.486,-27.504,-28.747,-30.044,-31.288,-32.490,-33.534,-34.154,-34.301,-34.296,-34.405,-34.487,-34.275,-33.836,-33.489,-33.405,
--33.503,-33.669,-33.850,-33.993,-34.062,-34.118,-34.227,-34.322,-34.260,-34.028,-33.811,-33.867,-34.322,-34.996,-35.425,-35.220,
--34.493,-33.788,-33.500,-33.524,-33.539,-33.452,-33.366,-33.312,-33.240,-33.186,-33.206,-33.191,-32.969,-32.554,-32.107,-31.687,
--31.233,-30.763,-30.356,-29.933,-29.280,-28.374,-27.504,-26.944,-26.629,-26.267,-25.687,-24.960,-24.240,-23.593,-22.986,-22.367,
--21.722,-21.064,-20.399,-19.722,-19.038,-18.362,-17.677,-16.962,-16.251,-15.615,-15.037,-14.394,-13.616,-12.796,-12.044,-11.337,
--10.583,-9.786,-9.016,-8.269,-7.488,-6.688,-5.947,-5.264,-4.560,-3.824,-3.140,-2.554,-1.975,-1.279,-.430,.502,
-1.395,2.152,2.741,3.195,3.537,3.774,3.979,4.307,4.818,5.363,5.749,5.973,6.183,6.455,6.755,7.072,
-7.435,7.788,8.024,8.164,8.359,8.665,8.970,9.190,9.394,9.665,9.977,10.285,10.613,10.962,11.251,11.450,
-11.680,12.047,12.469,12.785,12.969,13.125,13.331,13.586,13.876,14.186,14.455,14.640,14.798,15.033,15.366,15.755,
-16.175,16.588,16.865,16.870,16.652,16.444,16.425,16.567,16.727,16.818,16.865,16.939,17.082,17.270,17.423,17.494,
-17.534,17.630,17.799,17.992,18.202,18.489,18.865,19.240,19.521,19.707,19.844,19.942,19.987,20.021,20.129,20.355,
-20.667,21.000,21.311,21.589,21.847,22.097,22.318,22.481,22.616,22.825,23.201,23.766,24.537,25.582,26.915,28.320,
-29.411,29.939,29.985,29.781,29.460,29.070,28.732,28.578,28.517,28.253,27.635,26.873,26.294,25.980,25.773,25.526,
-25.189,24.722,24.124,23.569,23.324,23.448,23.720,23.932,24.091,24.263,24.346,24.175,23.756,23.246,22.748,22.271,
-21.851,21.537,21.235,20.743,20.029,19.354,18.604,18.479,18.614,18.695,18.524,18.124,17.604,17.030,16.440,15.897,
-15.486,15.269,15.278,15.521,15.996,16.684,17.521,18.400,19.223,19.956,20.588,21.032,21.137,20.839,20.293,19.765,
-19.405,19.173,19.024,19.042,19.259,19.422,19.192,18.679,18.540,19.240,20.293,20.582,19.591,18.047,17.132,17.212,
-17.606,17.518,16.874,16.166,15.778,15.657,15.537,15.262,14.882,14.532,14.253,13.929,13.409,12.686,11.914,11.220,
-10.570,9.845,8.998,8.083,7.176,6.309,5.487,4.750,4.192,3.870,3.612,3.006,1.697,-.234,-2.268,-3.861,
--4.838,-5.408,-5.915,-6.578,-7.357,-7.998,-8.295,-8.335,-8.394,-8.559,-8.589,-8.279,-7.811,-7.602,-7.846,-8.383,
--8.956,-9.448,-9.839,-10.098,-10.200,-10.174,-10.091,-10.023,-10.022,-10.093,-10.176,-10.221,-10.256,-10.346,-10.490,-10.630,
--10.766,-10.984,-11.335,-11.724,-11.935,-11.787,-11.311,-10.786,-10.525,-10.591,-10.764,-10.859,-10.942,-11.171,-11.525,-11.869,
--12.200,-12.618,-13.075,-13.363,-13.392,-13.282,-13.128,-12.853,-12.403,-11.899,-11.465,-11.070,-10.717,-10.635,-11.045,-11.779,
--12.398,-12.702,-12.937,-13.428,-14.201,-15.052,-15.797,-16.289,-16.355,-15.968,-15.467,-15.309,-15.529,-15.659,-15.373,-15.034,
--15.329,-16.418,-17.747,-18.764,-19.541,-20.480,-21.651,-22.729,-23.523,-24.241,-25.187,-26.403,-27.703,-28.878,-29.769,-30.292,
--30.504,-30.562,-30.540,-30.404,-30.223,-30.262,-30.731,-31.537,-32.415,-33.218,-33.956,-34.638,-35.256,-35.884,-36.631,-37.470,
--38.225,-38.752,-39.068,-39.312,-39.670,-40.322,-41.339,-42.624,-43.997,-45.335,-46.543,-47.439,-47.861,-47.945,-48.147,-48.877,
--50.124,-51.491,-52.570,-53.250,-53.710,-54.152,-54.542,-54.609,-54.148,-53.318,-52.587,-52.356,-52.650,-53.150,-53.480,-53.492,
--53.343,-53.333,-53.606,-54.005,-54.286,-54.425,-54.623,-55.013,-55.491,-55.897,-56.234,-56.614,-57.081,-57.585,-58.090,-58.594,
--59.074,-59.514,-59.967,-60.504,-61.110,-61.700,-62.248,-62.821,-63.449,-64.058,-64.571,-65.013,-65.484,-66.043,-66.678,-67.359,
--68.082,-68.853,-69.682,-70.572,-71.516,-72.477,-73.415,-74.330,-75.266,-76.238,-77.192,-78.052,-78.817,-79.573,-80.406,-81.317,
--82.244,-83.132,-83.971,-84.782,-85.585,-86.393,-87.197,-87.978,-88.736,-89.505,-90.334,-91.251,-92.236,-93.206,-94.042,-94.669,
--95.136,-95.569,-96.030,-96.477,-96.873,-97.247,-97.558,-97.594,-97.173,-96.478,-96.050,-96.352,-97.365,-98.625,-99.619,-100.140,
--100.356,-100.605,-101.082,-101.682,-102.160,-102.442,-102.697,-103.085,-103.532,-103.835,-103.909,-103.837,-103.779,-103.910,-104.408,-105.298,
--106.290,-106.926,-106.975,-106.628,-106.261,-106.059,-105.941,-105.772,-105.532,-105.274,-105.009,-104.682,-104.247,-103.704,-103.062,-102.300,
--101.396,-100.377,-99.297,-98.176,-97.021,-95.878,-94.807,-93.763,-92.605,-91.283,-89.959,-88.830,-87.867,-86.831,-85.573,-84.186,
--82.837,-81.525,-80.105,-78.482,-76.718,-74.949,-73.251,-71.608,-69.982,-68.381,-66.846,-65.374,-63.907,-62.395,-60.823,-59.167,
--57.411,-55.662,-54.167,-53.078,-52.297,-51.717,-51.506,-51.834,-52.291,-51.944,-50.283,-47.941,-46.204,-45.829,-46.504,-47.295,
--47.312,-46.013,-43.313,-39.655,-35.803,-32.340,-29.392,-26.878,-24.833,-23.364,-22.414,-21.776,-21.286,-20.866,-20.419,-19.818,
--18.997,-17.951,-16.685,-15.253,-13.816,-12.546,-11.473,-10.502,-9.541,-8.529,-7.388,-6.092,-4.769,-3.596,-2.599,-1.688,
--.874,-.286,.078,.432,.934,1.488,1.945,2.377,2.989,3.820,4.717,5.582,6.492,7.545,8.699,9.846,
-10.950,12.069,13.269,14.553,15.844,17.013,17.972,18.756,19.475,20.194,20.893,21.560,22.253,23.034,23.909,24.840,
-25.802,26.791,27.806,28.841,29.871,30.837,31.704,32.547,33.502,34.584,35.668,36.688,37.768,39.032,40.381,41.633,
-42.849,44.320,46.133,47.938,49.282,50.093,50.726,51.598,52.860,54.357,55.733,56.621,56.882,56.727,56.564,56.703,
-57.217,57.995,58.812,59.415,59.697,59.788,59.886,60.046,60.262,60.648,61.306,62.066,62.630,62.992,63.444,64.124,
-64.853,65.497,66.138,66.773,67.200,67.408,67.642,67.844,67.590,67.054,67.383,69.220,71.193,71.001,68.123,64.421,
-61.815,60.399,59.373,58.692,58.760,59.244,59.493,59.891,61.518,64.377,67.063,68.516,69.174,69.915,70.719,71.045,
-70.919,70.818,70.827,70.662,70.429,70.626,71.346,72.048,72.260,72.080,71.828,71.562,71.156,70.608,70.058,69.633,
-69.387,69.284,69.177,68.931,68.620,68.447,68.440,68.375,68.111,67.799,67.647,67.613,67.495,67.249,67.039,66.979,
-66.978,66.881,66.664,66.438,66.294,66.210,66.106,65.967,65.870,65.886,65.995,66.123,66.222,66.286,66.286,66.168,
-65.911,65.561,65.202,64.898,64.636,64.343,63.998,63.713,63.618,63.646,63.558,63.248,62.890,62.669,62.526,62.309,
-62.060,61.944,61.946,61.901,61.758,61.591,61.367,60.978,60.477,59.978,59.309,58.171,56.787,55.923,55.949,56.229,
-55.877,54.880,53.982,53.613,53.480,53.252,53.054,53.073,53.116,52.922,52.640,52.619,52.881,53.112,53.109,52.970,
-52.861,52.807,52.733,52.543,52.161,51.632,51.199,51.130,51.417,51.742,51.754,51.330,50.602,49.838,49.266,48.900,
-48.508,47.872,47.095,46.534,46.382,46.448,46.395,46.070,45.524,44.796,43.842,42.687,41.546,40.736,40.441,40.539,
-40.659,40.448,39.831,39.010,38.234,37.600,37.050,36.496,35.917,35.389,35.013,34.785,34.543,34.109,33.477,32.809,
-32.248,31.830,31.541,31.336,31.081,30.664,30.215,30.037,30.182,30.271,29.912,29.186,28.522,28.164,27.989,27.808,
-27.581,27.291,26.828,26.144,25.413,24.970,25.122,25.918,26.930,27.357,26.671,25.240,24.022,23.539,23.474,23.357,
-23.186,23.057,22.659,21.753,20.901,20.934,21.667,21.854,20.746,19.092,18.160,18.208,18.494,18.472,18.295,18.200,
-18.053,17.709,17.348,17.154,17.005,16.729,16.445,16.383,16.500,16.553,16.441,16.266,16.108,15.951,15.814,15.761,
-15.788,15.846,15.957,16.180,16.449,16.599,16.561,16.403,16.168,15.818,15.363,14.918,14.546,14.185,13.791,13.461,
-13.312,13.322,13.366,13.369,13.347,13.336,13.366,13.449,13.535,13.511,13.334,13.098,12.924,12.808,12.683,12.581,
-12.599,12.744,12.904,13.009,13.102,13.224,13.324,13.340,13.287,13.220,13.153,13.100,13.129,13.311,13.617,13.925,
-14.136,14.239,14.284,14.335,14.452,14.685,15.044,15.462,15.809,15.965,15.924,15.826,15.826,15.927,15.973,15.865,
-15.712,15.743,16.059,16.533,16.934,17.120,17.098,16.975,16.855,16.789,16.790,16.863,16.985,17.061,16.951,16.615,
-16.186,15.858,15.696,15.607,15.483,15.320,15.173,15.057,14.930,14.756,14.535,14.293,14.047,13.799,13.536,13.247,
-12.937,12.631,12.350,12.091,11.830,11.535,11.199,10.851,10.541,10.296,10.103,9.932,9.763,9.576,9.352,9.093,
-8.829,8.577,8.311,7.994,7.633,7.267,6.916,6.583,6.275,5.997,5.717,5.389,5.016,4.651,4.329,4.042,
-3.770,3.501,3.210,2.876,2.519,2.197,1.931,1.678,1.400,1.109,.825,.532,.202,-.155,-.513,-.870,
--1.234,-1.601,-1.955,-2.309,-2.685,-3.089,-3.506,-3.927,-4.347,-4.757,-5.151,-5.550,-5.986,-6.467,-6.964,-7.445,
--7.903,-8.351,-8.808,-9.287,-9.789,-10.305,-10.803,-11.250,-11.642,-12.018,-12.425,-12.861,-13.282,-13.659,-14.008,-14.353,
--14.681,-14.972,-15.247,-15.547,-15.880,-16.223,-16.572,-16.939,-17.318,-17.689,-18.053,-18.410,-18.727,-18.981,-19.220,-19.518,
--19.871,-20.205,-20.497,-20.811,-21.180,-21.540,-21.826,-22.067,-22.324,-22.607,-22.894,-23.204,-23.561,-23.927,-24.237,-24.485,
--24.729,-25.011,-25.327,-25.652,-25.970,-26.266,-26.534,-26.783,-27.021,-27.257,-27.514,-27.804,-28.087,-28.292,-28.411,-28.523,
--28.681,-28.857,-29.006,-29.150,-29.327,-29.507,-29.631,-29.694,-29.743,-29.804,-29.878,-29.967,-30.056,-30.098,-30.072,-30.030,
--30.032,-30.054,-30.026,-29.936,-29.833,-29.752,-29.685,-29.617,-29.545,-29.451,-29.327,-29.202,-29.092,-28.968,-28.791,-28.575,
--28.359,-28.141,-27.907,-27.679,-27.488,-27.312,-27.108,-26.877,-26.647,-26.412,-26.154,-25.891,-25.655,-25.430,-25.188,-24.935,
--24.679,-24.384,-24.038,-23.705,-23.443,-23.197,-22.890,-22.559,-22.293,-22.068,-21.779,-21.419,-21.087,-20.823,-20.554,-20.232,
--19.900,-19.589,-19.269,-18.925,-18.592,-18.278,-17.939,-17.572,-17.243,-16.976,-16.709,-16.391,-16.049,-15.722,-15.402,-15.071,
--14.740,-14.408,-14.056,-13.702,-13.388,-13.111,-12.818,-12.496,-12.185,-11.898,-11.596,-11.271,-10.965,-10.694,-10.431,-10.176,
--9.950,-9.724,-9.434,-9.090,-8.778,-8.525,-8.284,-8.036,-7.824,-7.635,-7.402,-7.118,-6.859,-6.643,-6.393,-6.080,
--5.790,-5.586,-5.395,-5.119,-4.757,-4.385,-4.057,-3.783,-3.518,-3.182,-2.759,-2.354,-2.072,-1.859,-1.576,-1.197,
--.801,-.398,.060,.516,.855,1.113,1.457,1.933,2.436,2.930,3.488,4.053,4.434,4.580,4.657,4.785,
-4.935,5.127,5.478,5.946,6.335,6.624,7.021,7.595,8.155,8.603,9.062,9.535,9.822,9.962,10.358,11.183,
-12.076,12.686,13.152,13.683,14.087,14.129,13.992,13.982,14.064,14.081,14.024,13.724,12.790,11.391,10.525,10.863,
-11.924,13.252,15.647,19.920,24.865,28.107,28.925,28.562,27.595,25.024,20.900,17.871,18.274,20.748,21.617,19.223,
-15.203,11.735,9.287,7.399,6.035,5.266,4.618,3.646,2.651,2.156,2.048,1.802,1.248,.610,-.007,-.717,
--1.545,-2.361,-3.092,-3.762,-4.360,-4.809,-5.011,-4.872,-4.472,-4.274,-4.844,-6.174,-7.531,-8.253,-8.501,-8.872,
--9.430,-9.563,-8.881,-7.870,-7.419,-7.876,-8.850,-9.845,-10.792,-11.854,-12.954,-13.760,-14.091,-14.128,-14.165,-14.300,
--14.440,-14.482,-14.437,-14.507,-15.055,-16.315,-18.030,-19.598,-20.723,-21.717,-22.959,-24.259,-25.075,-25.218,-25.047,-25.022,
--25.388,-26.240,-27.541,-29.011,-30.295,-31.331,-32.299,-33.201,-33.792,-34.009,-34.147,-34.410,-34.597,-34.430,-34.005,-33.658,
--33.528,-33.495,-33.455,-33.436,-33.488,-33.609,-33.800,-34.047,-34.268,-34.338,-34.202,-33.925,-33.679,-33.645,-33.813,-33.890,
--33.558,-32.879,-32.276,-32.063,-32.141,-32.237,-32.257,-32.262,-32.286,-32.340,-32.484,-32.699,-32.804,-32.649,-32.300,-31.896,
--31.433,-30.871,-30.336,-29.983,-29.685,-29.133,-28.254,-27.344,-26.709,-26.335,-25.984,-25.478,-24.816,-24.098,-23.428,-22.837,
--22.277,-21.673,-21.007,-20.319,-19.643,-18.984,-18.330,-17.660,-16.951,-16.224,-15.538,-14.902,-14.238,-13.497,-12.731,-11.998,
--11.262,-10.469,-9.669,-8.934,-8.222,-7.438,-6.603,-5.831,-5.150,-4.473,-3.759,-3.080,-2.497,-1.940,-1.282,-.466,
-.443,1.316,2.047,2.628,3.120,3.535,3.821,4.002,4.245,4.676,5.189,5.584,5.830,6.072,6.394,6.744,
-7.075,7.413,7.743,7.988,8.151,8.350,8.649,8.970,9.234,9.472,9.745,10.044,10.345,10.665,10.986,11.239,
-11.414,11.619,11.935,12.291,12.564,12.740,12.891,13.061,13.259,13.515,13.832,14.135,14.352,14.519,14.734,15.018,
-15.328,15.653,15.994,16.274,16.374,16.299,16.199,16.204,16.297,16.386,16.438,16.507,16.651,16.868,17.083,17.209,
-17.242,17.271,17.381,17.556,17.732,17.919,18.195,18.581,18.978,19.281,19.472,19.595,19.669,19.708,19.759,19.882,
-20.096,20.365,20.653,20.937,21.203,21.445,21.666,21.868,22.043,22.209,22.423,22.731,23.136,23.661,24.422,25.527,
-26.849,28.004,28.652,28.778,28.628,28.425,28.243,28.094,27.956,27.692,27.121,26.280,25.496,25.060,24.931,24.851,
-24.662,24.360,23.937,23.387,22.859,22.576,22.556,22.591,22.573,22.639,22.879,23.094,23.021,22.678,22.300,22.001,
-21.695,21.313,20.889,20.408,19.795,19.107,18.604,18.071,18.090,18.215,18.203,17.978,17.612,17.160,16.635,16.079,
-15.573,15.181,14.947,14.923,15.162,15.663,16.355,17.134,17.910,18.640,19.347,20.058,20.695,21.072,21.051,20.705,
-20.253,19.847,19.495,19.202,19.056,19.062,19.004,18.683,18.329,18.515,19.445,20.445,20.466,19.196,17.459,16.377,
-16.270,16.538,16.488,16.021,15.506,15.221,15.103,14.929,14.611,14.243,13.932,13.634,13.198,12.548,11.791,11.084,
-10.472,9.891,9.280,8.614,7.863,7.011,6.111,5.250,4.492,3.905,3.552,3.315,2.776,1.497,-.491,-2.615,
--4.249,-5.210,-5.750,-6.217,-6.789,-7.435,-7.992,-8.341,-8.558,-8.802,-9.041,-9.024,-8.646,-8.219,-8.189,-8.658,
--9.313,-9.814,-10.088,-10.247,-10.379,-10.480,-10.508,-10.448,-10.347,-10.296,-10.324,-10.365,-10.357,-10.345,-10.407,-10.525,
--10.618,-10.699,-10.882,-11.219,-11.592,-11.791,-11.672,-11.282,-10.856,-10.653,-10.716,-10.851,-10.899,-10.956,-11.204,-11.620,
--12.012,-12.300,-12.565,-12.829,-13.002,-13.060,-13.089,-13.074,-12.851,-12.375,-11.845,-11.432,-11.058,-10.658,-10.488,-10.892,
--11.786,-12.644,-13.082,-13.256,-13.591,-14.278,-15.148,-15.916,-16.382,-16.468,-16.259,-16.020,-15.991,-16.111,-16.073,-15.763,
--15.532,-15.855,-16.764,-17.825,-18.708,-19.557,-20.665,-21.981,-23.165,-24.053,-24.833,-25.749,-26.832,-27.960,-29.009,-29.858,
--30.392,-30.612,-30.644,-30.587,-30.443,-30.270,-30.273,-30.639,-31.348,-32.238,-33.168,-34.038,-34.757,-35.331,-35.928,-36.704,
--37.587,-38.331,-38.786,-39.031,-39.282,-39.766,-40.638,-41.879,-43.271,-44.558,-45.643,-46.558,-47.290,-47.778,-48.088,-48.482,
--49.210,-50.298,-51.529,-52.620,-53.419,-53.973,-54.389,-54.601,-54.367,-53.606,-52.687,-52.207,-52.419,-53.015,-53.479,-53.559,
--53.373,-53.196,-53.243,-53.546,-53.956,-54.289,-54.523,-54.802,-55.223,-55.709,-56.157,-56.586,-57.065,-57.564,-58.006,-58.412,
--58.862,-59.360,-59.835,-60.277,-60.761,-61.322,-61.910,-62.487,-63.089,-63.730,-64.347,-64.872,-65.328,-65.792,-66.308,-66.876,
--67.494,-68.174,-68.905,-69.672,-70.481,-71.352,-72.266,-73.169,-74.050,-74.957,-75.927,-76.904,-77.791,-78.572,-79.349,-80.220,
--81.163,-82.079,-82.911,-83.698,-84.500,-85.336,-86.185,-87.020,-87.834,-88.641,-89.476,-90.370,-91.307,-92.221,-93.033,-93.706,
--94.276,-94.821,-95.382,-95.929,-96.413,-96.859,-97.307,-97.645,-97.594,-97.012,-96.207,-95.803,-96.227,-97.350,-98.630,-99.565,
--100.021,-100.231,-100.552,-101.148,-101.849,-102.362,-102.614,-102.816,-103.169,-103.613,-103.941,-104.062,-104.042,-103.982,-104.001,-104.287,
--104.968,-105.876,-106.583,-106.777,-106.541,-106.209,-105.999,-105.877,-105.719,-105.488,-105.232,-104.956,-104.601,-104.124,-103.552,-102.924,
--102.205,-101.339,-100.348,-99.324,-98.299,-97.228,-96.104,-95.003,-93.924,-92.719,-91.318,-89.927,-88.825,-87.974,-87.020,-85.738,
--84.275,-82.884,-81.554,-80.073,-78.351,-76.528,-74.777,-73.134,-71.539,-69.945,-68.364,-66.842,-65.393,-63.942,-62.363,-60.609,
--58.793,-57.102,-55.647,-54.434,-53.414,-52.527,-51.795,-51.391,-51.480,-51.831,-51.715,-50.475,-48.296,-46.211,-45.208,-45.376,
--45.943,-46.015,-45.140,-43.311,-40.715,-37.595,-34.266,-31.075,-28.254,-25.826,-23.721,-22.005,-20.910,-20.535,-20.566,-20.431,
--19.768,-18.654,-17.364,-16.046,-14.701,-13.353,-12.091,-10.968,-9.974,-9.061,-8.123,-7.032,-5.779,-4.536,-3.462,-2.506,
--1.541,-.629,.034,.440,.832,1.375,1.965,2.459,2.943,3.621,4.517,5.465,6.356,7.258,8.264,9.365,
-10.493,11.633,12.825,14.093,15.394,16.620,17.660,18.491,19.210,19.934,20.694,21.458,22.210,22.976,23.772,24.601,
-25.481,26.430,27.410,28.376,29.343,30.348,31.346,32.245,33.062,33.935,34.957,36.075,37.242,38.524,39.950,41.373,
-42.627,43.800,45.162,46.790,48.424,49.742,50.691,51.483,52.378,53.504,54.742,55.735,56.138,55.983,55.713,55.753,
-56.163,56.760,57.392,57.957,58.311,58.437,58.589,59.013,59.615,60.146,60.633,61.282,62.019,62.554,62.911,63.447,
-64.249,64.978,65.485,66.074,66.885,67.540,67.780,67.911,68.164,68.209,68.021,68.565,70.500,72.507,72.287,69.381,
-65.785,63.378,62.042,60.973,60.483,61.190,62.332,62.539,61.994,62.342,64.302,66.722,68.339,69.267,70.169,70.970,
-71.259,71.240,71.383,71.556,71.342,70.967,71.096,71.794,72.400,72.477,72.284,72.168,72.041,71.665,71.076,70.488,
-70.026,69.722,69.564,69.441,69.206,68.895,68.692,68.617,68.472,68.185,67.952,67.913,67.897,67.685,67.369,67.226,
-67.316,67.411,67.291,66.985,66.673,66.486,66.410,66.356,66.275,66.204,66.219,66.335,66.492,66.617,66.664,66.594,
-66.392,66.099,65.787,65.494,65.209,64.916,64.605,64.280,63.999,63.850,63.820,63.754,63.530,63.218,62.961,62.757,
-62.517,62.280,62.193,62.265,62.328,62.259,62.064,61.751,61.297,60.756,60.175,59.402,58.279,57.100,56.492,56.621,
-56.834,56.417,55.451,54.574,54.083,53.735,53.348,53.083,53.049,53.055,52.952,52.891,53.021,53.202,53.250,53.255,
-53.389,53.567,53.550,53.291,52.920,52.483,51.960,51.520,51.472,51.849,52.242,52.164,51.503,50.569,49.767,49.293,
-49.045,48.758,48.253,47.612,47.092,46.855,46.818,46.764,46.518,46.013,45.239,44.235,43.110,42.059,41.294,40.925,
-40.859,40.835,40.613,40.137,39.506,38.833,38.179,37.572,37.005,36.445,35.904,35.472,35.196,34.941,34.504,33.872,
-33.247,32.793,32.469,32.164,31.844,31.513,31.146,30.770,30.517,30.437,30.363,30.071,29.549,28.978,28.507,28.165,
-27.944,27.807,27.626,27.236,26.605,25.880,25.312,25.195,25.715,26.623,27.164,26.693,25.413,24.216,23.688,23.601,
-23.497,23.337,23.241,22.972,22.257,21.444,21.207,21.528,21.542,20.660,19.371,18.580,18.510,18.672,18.682,18.606,
-18.546,18.385,18.054,17.716,17.501,17.301,16.999,16.696,16.571,16.619,16.685,16.661,16.531,16.315,16.081,15.935,
-15.910,15.923,15.934,16.046,16.341,16.688,16.870,16.845,16.722,16.534,16.207,15.753,15.319,14.991,14.682,14.308,
-13.947,13.734,13.681,13.683,13.654,13.579,13.500,13.484,13.581,13.729,13.771,13.618,13.362,13.154,13.019,12.887,
-12.764,12.749,12.883,13.077,13.236,13.350,13.436,13.466,13.416,13.332,13.282,13.280,13.293,13.321,13.403,13.555,
-13.741,13.910,14.035,14.119,14.192,14.315,14.556,14.933,15.372,15.746,15.973,16.077,16.158,16.289,16.433,16.479,
-16.345,16.069,15.806,15.732,15.923,16.299,16.693,16.984,17.158,17.229,17.181,17.035,16.921,16.982,17.168,17.231,
-16.992,16.543,16.139,15.909,15.775,15.616,15.420,15.241,15.101,14.962,14.782,14.559,14.323,14.107,13.921,13.731,
-13.489,13.178,12.840,12.531,12.267,12.008,11.705,11.358,11.019,10.743,10.537,10.367,10.206,10.050,9.883,9.670,
-9.406,9.133,8.882,8.623,8.301,7.919,7.524,7.144,6.774,6.417,6.099,5.821,5.546,5.247,4.933,4.627,
-4.331,4.044,3.761,3.474,3.177,2.896,2.661,2.463,2.248,1.985,1.692,1.385,1.043,.651,.241,-.150,
--.517,-.882,-1.245,-1.603,-1.972,-2.374,-2.798,-3.217,-3.624,-4.032,-4.436,-4.819,-5.193,-5.597,-6.054,-6.538,
--7.009,-7.450,-7.881,-8.328,-8.799,-9.287,-9.782,-10.277,-10.749,-11.181,-11.581,-11.988,-12.421,-12.858,-13.263,-13.633,
--13.982,-14.309,-14.608,-14.899,-15.222,-15.580,-15.944,-16.300,-16.657,-17.021,-17.390,-17.767,-18.146,-18.487,-18.756,-18.994,
--19.277,-19.612,-19.932,-20.211,-20.503,-20.841,-21.175,-21.453,-21.701,-21.964,-22.234,-22.493,-22.774,-23.117,-23.488,-23.815,
--24.083,-24.341,-24.633,-24.953,-25.278,-25.591,-25.885,-26.163,-26.438,-26.715,-26.987,-27.261,-27.547,-27.816,-28.012,-28.130,
--28.240,-28.395,-28.572,-28.733,-28.892,-29.064,-29.203,-29.266,-29.297,-29.367,-29.477,-29.578,-29.657,-29.726,-29.757,-29.718,
--29.648,-29.622,-29.643,-29.636,-29.564,-29.469,-29.396,-29.341,-29.278,-29.192,-29.076,-28.933,-28.791,-28.669,-28.543,-28.375,
--28.173,-27.966,-27.757,-27.541,-27.341,-27.181,-27.028,-26.832,-26.600,-26.370,-26.144,-25.894,-25.632,-25.393,-25.176,-24.955,
--24.724,-24.484,-24.205,-23.874,-23.545,-23.268,-23.005,-22.696,-22.374,-22.110,-21.882,-21.599,-21.255,-20.936,-20.678,-20.422,
--20.129,-19.831,-19.542,-19.228,-18.890,-18.576,-18.286,-17.968,-17.616,-17.298,-17.035,-16.761,-16.434,-16.094,-15.779,-15.462,
--15.122,-14.785,-14.465,-14.132,-13.786,-13.476,-13.209,-12.924,-12.595,-12.273,-11.994,-11.722,-11.424,-11.125,-10.849,-10.574,
--10.294,-10.036,-9.799,-9.536,-9.234,-8.949,-8.710,-8.487,-8.266,-8.071,-7.890,-7.656,-7.358,-7.071,-6.831,-6.577,
--6.266,-5.951,-5.689,-5.447,-5.152,-4.798,-4.436,-4.108,-3.826,-3.560,-3.244,-2.852,-2.457,-2.140,-1.869,-1.553,
--1.196,-.865,-.533,-.120,.341,.737,1.071,1.455,1.903,2.326,2.739,3.235,3.736,4.025,4.076,4.113,
-4.280,4.495,4.712,5.052,5.544,6.023,6.420,6.883,7.469,8.003,8.397,8.804,9.279,9.644,9.908,10.451,
-11.447,12.465,13.029,13.260,13.564,13.932,14.046,13.897,13.797,13.867,13.902,13.677,13.048,11.970,10.762,10.112,
-10.412,11.443,13.142,16.120,20.576,25.118,27.778,28.085,27.038,25.181,22.240,18.960,17.514,18.872,20.899,20.554,
-17.386,13.561,10.877,9.207,7.813,6.673,5.983,5.418,4.630,3.852,3.455,3.290,2.947,2.345,1.658,.926,
-.096,-.747,-1.478,-2.137,-2.802,-3.414,-3.891,-4.260,-4.550,-4.743,-4.991,-5.621,-6.650,-7.546,-7.799,-7.626,
--7.700,-8.207,-8.563,-8.234,-7.517,-7.234,-7.778,-8.766,-9.656,-10.392,-11.272,-12.360,-13.330,-13.890,-14.139,-14.379,
--14.728,-15.039,-15.135,-15.032,-15.001,-15.432,-16.520,-18.013,-19.400,-20.448,-21.394,-22.507,-23.646,-24.439,-24.751,-24.778,
--24.807,-25.108,-25.924,-27.268,-28.766,-29.981,-30.886,-31.747,-32.603,-33.184,-33.398,-33.524,-33.776,-33.981,-33.882,-33.556,
--33.289,-33.178,-33.088,-32.932,-32.795,-32.802,-32.986,-33.288,-33.612,-33.872,-34.034,-34.072,-33.940,-33.634,-33.262,-32.923,
--32.534,-31.945,-31.235,-30.718,-30.594,-30.749,-30.958,-31.124,-31.252,-31.356,-31.509,-31.806,-32.185,-32.410,-32.340,-32.073,
--31.719,-31.225,-30.570,-29.965,-29.619,-29.400,-28.968,-28.218,-27.377,-26.689,-26.177,-25.727,-25.229,-24.621,-23.912,-23.202,
--22.595,-22.069,-21.505,-20.852,-20.168,-19.510,-18.874,-18.233,-17.572,-16.878,-16.151,-15.429,-14.740,-14.061,-13.361,-12.658,
--11.961,-11.221,-10.417,-9.630,-8.935,-8.270,-7.515,-6.678,-5.885,-5.189,-4.518,-3.818,-3.137,-2.531,-1.962,-1.324,
--.555,.309,1.148,1.851,2.421,2.947,3.449,3.833,4.063,4.280,4.644,5.103,5.480,5.743,6.027,6.409,
-6.807,7.148,7.463,7.782,8.058,8.264,8.465,8.717,8.986,9.227,9.461,9.724,9.996,10.248,10.503,10.775,
-11.037,11.271,11.513,11.782,12.030,12.216,12.366,12.520,12.677,12.843,13.075,13.395,13.728,13.993,14.207,14.442,
-14.701,14.937,15.156,15.404,15.661,15.849,15.932,15.961,15.988,16.005,15.997,16.000,16.084,16.284,16.555,16.797,
-16.934,16.992,17.079,17.257,17.483,17.683,17.868,18.113,18.437,18.768,19.033,19.219,19.341,19.408,19.451,19.533,
-19.697,19.929,20.186,20.459,20.748,21.022,21.230,21.357,21.444,21.547,21.716,21.984,22.333,22.684,22.994,23.370,
-24.003,24.916,25.853,26.492,26.748,26.799,26.839,26.904,26.914,26.757,26.317,25.561,24.691,24.074,23.904,24.002,
-24.042,23.888,23.597,23.204,22.703,22.193,21.820,21.559,21.266,20.984,20.966,21.294,21.668,21.754,21.574,21.386,
-21.265,21.051,20.632,20.080,19.486,18.879,18.350,18.071,17.673,17.729,17.756,17.642,17.426,17.161,16.810,16.338,
-15.816,15.359,15.022,14.822,14.806,15.018,15.430,15.963,16.558,17.188,17.836,18.509,19.235,19.980,20.596,20.908,
-20.866,20.575,20.176,19.758,19.374,19.051,18.764,18.463,18.235,18.350,19.001,19.938,20.480,20.050,18.718,17.151,
-16.015,15.484,15.304,15.182,15.020,14.840,14.640,14.357,13.952,13.476,13.039,12.682,12.298,11.749,11.046,10.358,
-9.800,9.318,8.827,8.340,7.870,7.314,6.555,5.646,4.763,4.029,3.485,3.150,2.909,2.376,1.136,-.775,
--2.799,-4.348,-5.283,-5.847,-6.313,-6.797,-7.303,-7.786,-8.206,-8.596,-9.006,-9.350,-9.424,-9.195,-8.968,-9.107,
--9.624,-10.192,-10.518,-10.592,-10.578,-10.599,-10.660,-10.695,-10.656,-10.574,-10.530,-10.546,-10.546,-10.486,-10.442,-10.502,
--10.624,-10.702,-10.737,-10.836,-11.045,-11.279,-11.410,-11.367,-11.173,-10.946,-10.830,-10.848,-10.877,-10.853,-10.919,-11.241,
--11.722,-12.099,-12.269,-12.365,-12.507,-12.676,-12.855,-13.056,-13.161,-12.958,-12.444,-11.922,-11.621,-11.406,-11.090,-10.872,
--11.177,-12.066,-13.055,-13.636,-13.815,-14.017,-14.570,-15.378,-16.085,-16.436,-16.486,-16.496,-16.660,-16.907,-16.984,-16.755,
--16.406,-16.316,-16.697,-17.398,-18.133,-18.855,-19.785,-21.052,-22.428,-23.566,-24.396,-25.163,-26.079,-27.118,-28.148,-29.093,
--29.885,-30.417,-30.636,-30.621,-30.496,-30.327,-30.185,-30.219,-30.568,-31.241,-32.143,-33.146,-34.095,-34.851,-35.436,-36.055,
--36.852,-37.694,-38.303,-38.595,-38.786,-39.200,-40.040,-41.306,-42.804,-44.239,-45.391,-46.231,-46.861,-47.377,-47.854,-48.390,
--49.067,-49.871,-50.752,-51.692,-52.660,-53.532,-54.150,-54.430,-54.319,-53.770,-52.927,-52.254,-52.219,-52.786,-53.406,-53.596,
--53.388,-53.139,-53.096,-53.270,-53.588,-53.982,-54.376,-54.731,-55.091,-55.518,-56.005,-56.517,-57.047,-57.574,-58.011,-58.321,
--58.618,-59.052,-59.606,-60.134,-60.573,-61.002,-61.507,-62.075,-62.669,-63.295,-63.946,-64.563,-65.101,-65.596,-66.106,-66.635,
--67.168,-67.725,-68.349,-69.043,-69.779,-70.552,-71.372,-72.216,-73.030,-73.812,-74.636,-75.561,-76.534,-77.448,-78.275,-79.100,
--80.003,-80.950,-81.847,-82.662,-83.452,-84.277,-85.130,-85.981,-86.821,-87.666,-88.534,-89.439,-90.374,-91.279,-92.059,-92.673,
--93.199,-93.777,-94.474,-95.213,-95.854,-96.353,-96.806,-97.285,-97.639,-97.552,-96.911,-96.089,-95.742,-96.268,-97.467,-98.750,
--99.614,-99.976,-100.129,-100.454,-101.100,-101.869,-102.446,-102.735,-102.925,-103.222,-103.615,-103.954,-104.153,-104.221,-104.180,-104.106,
--104.199,-104.651,-105.390,-106.070,-106.377,-106.297,-106.055,-105.845,-105.697,-105.546,-105.349,-105.101,-104.791,-104.379,-103.852,-103.257,
--102.643,-101.979,-101.191,-100.282,-99.335,-98.381,-97.349,-96.206,-95.041,-93.904,-92.686,-91.319,-89.991,-88.963,-88.153,-87.169,
--85.797,-84.257,-82.849,-81.523,-80.008,-78.224,-76.377,-74.667,-73.093,-71.548,-69.970,-68.376,-66.832,-65.378,-63.916,-62.235,
--60.266,-58.285,-56.693,-55.603,-54.761,-53.879,-52.914,-52.018,-51.390,-51.191,-51.359,-51.393,-50.575,-48.693,-46.445,-44.885,
--44.418,-44.521,-44.429,-43.810,-42.686,-40.994,-38.583,-35.617,-32.634,-30.021,-27.615,-25.047,-22.450,-20.530,-19.811,-19.967,
--20.083,-19.504,-18.279,-16.833,-15.450,-14.155,-12.898,-11.675,-10.514,-9.456,-8.513,-7.594,-6.538,-5.312,-4.097,-3.068,
--2.178,-1.288,-.425,.250,.725,1.190,1.766,2.368,2.903,3.471,4.237,5.198,6.203,7.155,8.098,9.112,
-10.218,11.383,12.572,13.768,14.981,16.198,17.330,18.256,18.955,19.568,20.256,21.059,21.912,22.762,23.602,24.428,
-25.245,26.097,27.010,27.942,28.843,29.752,30.745,31.788,32.756,33.606,34.441,35.395,36.528,37.861,39.391,41.007,
-42.493,43.731,44.832,45.971,47.186,48.422,49.686,50.990,52.227,53.269,54.152,54.956,55.528,55.612,55.317,55.152,
-55.448,55.987,56.392,56.629,56.882,57.164,57.412,57.795,58.526,59.437,60.148,60.636,61.194,61.864,62.389,62.791,
-63.428,64.329,65.041,65.406,65.911,66.856,67.772,68.162,68.268,68.473,68.570,68.487,69.117,71.138,73.246,73.080,
-70.163,66.575,64.234,62.916,61.785,61.383,62.594,64.516,65.198,64.342,63.694,64.587,66.449,68.125,69.372,70.429,
-71.136,71.341,71.473,71.895,72.191,71.869,71.345,71.430,72.110,72.613,72.583,72.429,72.473,72.450,72.026,71.319,
-70.658,70.191,69.917,69.801,69.714,69.487,69.150,68.909,68.803,68.646,68.370,68.157,68.111,68.051,67.812,67.540,
-67.475,67.598,67.670,67.547,67.289,67.017,66.808,66.687,66.631,66.585,66.536,66.546,66.662,66.845,66.993,67.019,
-66.877,66.590,66.262,65.989,65.757,65.484,65.160,64.855,64.598,64.365,64.173,64.064,63.980,63.791,63.483,63.192,
-63.002,62.847,62.664,62.510,62.464,62.495,62.506,62.401,62.089,61.544,60.875,60.201,59.461,58.546,57.643,57.151,
-57.120,57.058,56.528,55.690,54.986,54.519,54.075,53.616,53.320,53.198,53.052,52.885,52.939,53.250,53.506,53.533,
-53.592,53.938,54.354,54.417,54.051,53.527,53.033,52.568,52.231,52.253,52.615,52.879,52.570,51.661,50.571,49.766,
-49.404,49.304,49.159,48.777,48.206,47.649,47.273,47.083,46.944,46.691,46.221,45.525,44.656,43.688,42.723,41.926,
-41.442,41.258,41.173,40.969,40.576,40.032,39.379,38.661,37.983,37.427,36.955,36.480,36.019,35.644,35.302,34.842,
-34.247,33.700,33.335,33.061,32.710,32.270,31.852,31.503,31.159,30.784,30.433,30.174,29.989,29.768,29.392,28.860,
-28.351,28.074,28.036,27.999,27.728,27.180,26.440,25.658,25.127,25.204,25.855,26.422,26.198,25.239,24.300,23.909,
-23.852,23.717,23.517,23.439,23.294,22.729,21.894,21.368,21.352,21.337,20.810,19.927,19.239,18.985,18.962,18.949,
-18.916,18.859,18.695,18.410,18.112,17.873,17.639,17.358,17.086,16.910,16.855,16.894,16.952,16.912,16.703,16.417,
-16.224,16.161,16.119,16.074,16.171,16.488,16.857,17.048,17.035,16.942,16.803,16.536,16.140,15.739,15.409,15.099,
-14.760,14.449,14.236,14.098,13.970,13.830,13.705,13.626,13.632,13.746,13.910,13.982,13.870,13.640,13.419,13.246,
-13.083,12.937,12.889,12.986,13.174,13.366,13.517,13.614,13.630,13.560,13.463,13.430,13.498,13.615,13.703,13.728,
-13.720,13.729,13.790,13.898,14.027,14.162,14.328,14.581,14.947,15.374,15.760,16.048,16.270,16.486,16.696,16.840,
-16.865,16.751,16.500,16.161,15.867,15.790,16.000,16.410,16.883,17.324,17.643,17.710,17.487,17.158,17.013,17.136,
-17.298,17.222,16.875,16.450,16.124,15.907,15.727,15.541,15.349,15.161,14.971,14.772,14.557,14.338,14.146,13.999,
-13.867,13.676,13.386,13.032,12.694,12.414,12.163,11.887,11.577,11.283,11.058,10.888,10.717,10.520,10.317,10.120,
-9.897,9.629,9.346,9.080,8.806,8.469,8.070,7.661,7.270,6.885,6.509,6.184,5.942,5.751,5.554,5.317,
-5.049,4.772,4.498,4.226,3.942,3.651,3.385,3.166,2.965,2.732,2.449,2.138,1.803,1.419,.986,.552,
-.161,-.199,-.556,-.914,-1.270,-1.647,-2.066,-2.504,-2.920,-3.309,-3.698,-4.097,-4.488,-4.871,-5.276,-5.728,
--6.204,-6.664,-7.094,-7.517,-7.961,-8.421,-8.875,-9.320,-9.779,-10.256,-10.716,-11.127,-11.513,-11.925,-12.373,-12.815,
--13.213,-13.572,-13.911,-14.237,-14.564,-14.915,-15.291,-15.672,-16.034,-16.376,-16.705,-17.037,-17.397,-17.786,-18.155,-18.457,
--18.716,-19.000,-19.325,-19.639,-19.915,-20.191,-20.495,-20.797,-21.067,-21.334,-21.623,-21.902,-22.147,-22.404,-22.729,-23.102,
--23.445,-23.733,-24.008,-24.306,-24.617,-24.925,-25.229,-25.528,-25.824,-26.124,-26.423,-26.707,-26.973,-27.234,-27.483,-27.682,
--27.826,-27.962,-28.127,-28.302,-28.462,-28.626,-28.797,-28.917,-28.951,-28.963,-29.037,-29.163,-29.267,-29.327,-29.377,-29.406,
--29.370,-29.288,-29.246,-29.268,-29.289,-29.251,-29.173,-29.098,-29.028,-28.940,-28.826,-28.683,-28.518,-28.362,-28.235,-28.117,
--27.965,-27.774,-27.576,-27.385,-27.200,-27.033,-26.895,-26.751,-26.558,-26.326,-26.099,-25.882,-25.641,-25.377,-25.125,-24.891,
--24.654,-24.411,-24.174,-23.927,-23.649,-23.363,-23.104,-22.846,-22.543,-22.221,-21.943,-21.701,-21.425,-21.101,-20.792,-20.529,
--20.272,-19.996,-19.722,-19.451,-19.155,-18.840,-18.548,-18.274,-17.968,-17.636,-17.338,-17.076,-16.784,-16.443,-16.113,-15.821,
--15.515,-15.169,-14.830,-14.525,-14.213,-13.873,-13.558,-13.292,-13.016,-12.691,-12.369,-12.099,-11.849,-11.579,-11.308,-11.058,
--10.790,-10.481,-10.177,-9.919,-9.683,-9.435,-9.196,-8.986,-8.776,-8.538,-8.296,-8.060,-7.788,-7.458,-7.128,-6.852,
--6.606,-6.341,-6.051,-5.748,-5.422,-5.071,-4.725,-4.409,-4.117,-3.842,-3.577,-3.283,-2.926,-2.545,-2.209,-1.906,
--1.574,-1.228,-.944,-.708,-.415,-.024,.412,.869,1.365,1.837,2.198,2.511,2.908,3.334,3.575,3.608,
-3.666,3.878,4.127,4.340,4.664,5.189,5.766,6.265,6.768,7.331,7.813,8.144,8.504,9.007,9.492,9.886,
-10.469,11.420,12.384,12.903,13.071,13.303,13.640,13.764,13.635,13.571,13.673,13.611,13.089,12.192,11.210,10.432,
-10.132,10.516,11.696,13.885,17.340,21.664,25.437,27.182,26.670,24.762,22.207,19.472,17.578,17.725,19.494,20.526,
-18.950,15.543,12.580,11.083,10.216,9.069,7.805,6.904,6.286,5.657,5.077,4.726,4.492,4.136,3.587,2.844,
-1.869,.784,-.091,-.624,-1.062,-1.658,-2.333,-2.893,-3.363,-3.887,-4.493,-5.177,-6.014,-6.925,-7.491,-7.353,
--6.781,-6.499,-6.855,-7.421,-7.578,-7.311,-7.204,-7.690,-8.586,-9.430,-10.089,-10.816,-11.773,-12.759,-13.486,-13.936,
--14.322,-14.765,-15.176,-15.414,-15.493,-15.629,-16.113,-17.070,-18.296,-19.429,-20.316,-21.120,-22.017,-22.926,-23.648,-24.113,
--24.387,-24.582,-24.911,-25.661,-26.886,-28.229,-29.297,-30.125,-30.992,-31.886,-32.473,-32.615,-32.593,-32.686,-32.821,-32.792,
--32.627,-32.510,-32.477,-32.388,-32.167,-31.927,-31.869,-32.094,-32.521,-32.957,-33.274,-33.489,-33.639,-33.644,-33.390,-32.900,
--32.293,-31.594,-30.783,-29.993,-29.491,-29.400,-29.589,-29.869,-30.149,-30.385,-30.566,-30.795,-31.201,-31.704,-32.025,-32.017,
--31.795,-31.471,-30.978,-30.304,-29.672,-29.297,-29.076,-28.734,-28.177,-27.519,-26.860,-26.217,-25.613,-25.061,-24.473,-23.758,
--22.990,-22.327,-21.788,-21.241,-20.610,-19.951,-19.326,-18.716,-18.087,-17.435,-16.755,-16.034,-15.295,-14.585,-13.908,-13.235,
--12.563,-11.890,-11.182,-10.423,-9.676,-9.004,-8.355,-7.627,-6.819,-6.033,-5.325,-4.646,-3.948,-3.256,-2.615,-2.019,
--1.404,-.705,.084,.875,1.550,2.100,2.637,3.217,3.737,4.100,4.385,4.742,5.157,5.495,5.737,6.022,
-6.424,6.852,7.207,7.512,7.820,8.110,8.341,8.538,8.742,8.949,9.145,9.355,9.599,9.841,10.043,10.231,
-10.461,10.748,11.063,11.366,11.611,11.770,11.870,11.975,12.115,12.267,12.437,12.674,12.993,13.325,13.608,13.860,
-14.124,14.380,14.586,14.757,14.951,15.180,15.399,15.569,15.681,15.736,15.733,15.703,15.713,15.821,16.038,16.311,
-16.555,16.712,16.808,16.928,17.113,17.325,17.519,17.718,17.970,18.269,18.560,18.807,19.002,19.134,19.196,19.238,
-19.347,19.552,19.806,20.058,20.318,20.605,20.867,21.020,21.045,21.021,21.057,21.229,21.547,21.933,22.240,22.364,
-22.389,22.560,23.037,23.705,24.295,24.657,24.860,25.028,25.177,25.221,25.060,24.621,23.947,23.268,22.889,22.902,
-23.079,23.127,22.976,22.721,22.399,21.979,21.494,21.015,20.507,19.933,19.481,19.464,19.901,20.393,20.558,20.425,
-20.252,20.118,19.883,19.468,18.966,18.483,18.062,17.767,17.673,17.362,17.392,17.329,17.170,16.997,16.808,16.501,
-16.052,15.584,15.222,14.982,14.842,14.815,14.906,15.075,15.305,15.650,16.147,16.758,17.429,18.171,18.988,19.777,
-20.353,20.585,20.479,20.149,19.733,19.301,18.822,18.266,17.786,17.724,18.289,19.222,19.896,19.832,19.075,18.007,
-16.908,15.818,14.802,14.100,13.906,14.077,14.213,14.021,13.512,12.867,12.238,11.690,11.208,10.703,10.101,9.460,
-8.922,8.516,8.117,7.653,7.218,6.876,6.474,5.812,4.924,4.046,3.354,2.873,2.567,2.304,1.764,.621,
--1.067,-2.821,-4.179,-5.067,-5.686,-6.205,-6.678,-7.141,-7.627,-8.124,-8.615,-9.101,-9.534,-9.790,-9.842,-9.863,
--10.063,-10.441,-10.798,-10.973,-10.974,-10.904,-10.847,-10.833,-10.836,-10.814,-10.767,-10.743,-10.740,-10.697,-10.602,-10.552,
--10.622,-10.746,-10.812,-10.823,-10.866,-10.962,-11.062,-11.132,-11.167,-11.151,-11.085,-11.010,-10.942,-10.839,-10.741,-10.844,
--11.253,-11.767,-12.069,-12.124,-12.184,-12.422,-12.763,-13.088,-13.353,-13.448,-13.196,-12.644,-12.139,-11.935,-11.875,-11.681,
--11.448,-11.599,-12.328,-13.299,-13.998,-14.281,-14.470,-14.944,-15.697,-16.351,-16.598,-16.578,-16.722,-17.212,-17.730,-17.835,
--17.507,-17.185,-17.279,-17.772,-18.350,-18.835,-19.392,-20.297,-21.562,-22.867,-23.891,-24.643,-25.386,-26.288,-27.278,-28.221,
--29.082,-29.850,-30.424,-30.687,-30.650,-30.439,-30.188,-30.028,-30.100,-30.495,-31.189,-32.087,-33.084,-34.058,-34.896,-35.594,
--36.283,-37.033,-37.698,-38.081,-38.236,-38.511,-39.269,-40.608,-42.312,-44.020,-45.427,-46.431,-47.094,-47.528,-47.850,-48.237,
--48.870,-49.728,-50.565,-51.213,-51.810,-52.576,-53.436,-54.032,-54.094,-53.640,-52.897,-52.210,-51.974,-52.366,-53.072,-53.502,
--53.389,-53.043,-52.912,-53.096,-53.407,-53.727,-54.099,-54.540,-54.975,-55.365,-55.764,-56.234,-56.780,-57.357,-57.881,-58.261,
--58.506,-58.772,-59.208,-59.776,-60.316,-60.762,-61.192,-61.686,-62.237,-62.817,-63.435,-64.078,-64.692,-65.255,-65.812,-66.395,
--66.968,-67.492,-68.001,-68.566,-69.211,-69.918,-70.670,-71.455,-72.236,-72.965,-73.658,-74.398,-75.247,-76.170,-77.082,-77.948,
--78.813,-79.718,-80.639,-81.528,-82.380,-83.230,-84.089,-84.935,-85.765,-86.608,-87.492,-88.411,-89.350,-90.280,-91.125,-91.794,
--92.288,-92.765,-93.412,-94.253,-95.113,-95.793,-96.273,-96.705,-97.193,-97.579,-97.541,-96.952,-96.163,-95.815,-96.319,-97.506,
--98.786,-99.634,-99.958,-100.067,-100.358,-100.983,-101.759,-102.388,-102.753,-102.984,-103.255,-103.603,-103.953,-104.227,-104.366,-104.332,
--104.183,-104.127,-104.369,-104.898,-105.470,-105.832,-105.902,-105.764,-105.551,-105.358,-105.205,-105.046,-104.821,-104.502,-104.085,-103.580,
--103.013,-102.417,-101.785,-101.063,-100.228,-99.329,-98.386,-97.336,-96.154,-94.943,-93.809,-92.695,-91.501,-90.305,-89.274,-88.337,
--87.202,-85.752,-84.225,-82.860,-81.540,-79.984,-78.167,-76.334,-74.670,-73.130,-71.589,-70.003,-68.401,-66.855,-65.411,-63.957,
--62.219,-60.104,-57.990,-56.447,-55.609,-55.037,-54.254,-53.213,-52.172,-51.363,-50.922,-50.884,-50.958,-50.482,-48.984,-46.803,
--44.851,-43.706,-43.164,-42.734,-42.221,-41.588,-40.533,-38.660,-36.094,-33.519,-31.393,-29.365,-26.792,-23.727,-21.083,-19.693,
--19.426,-19.390,-18.851,-17.752,-16.426,-15.106,-13.819,-12.543,-11.295,-10.097,-8.984,-7.989,-7.063,-6.059,-4.905,-3.712,
--2.653,-1.760,-.949,-.190,.469,1.044,1.622,2.234,2.824,3.390,4.047,4.897,5.906,6.956,7.980,8.991,
-10.040,11.175,12.394,13.615,14.751,15.813,16.882,17.941,18.842,19.496,20.026,20.640,21.420,22.299,23.192,24.069,
-24.924,25.760,26.604,27.478,28.363,29.245,30.164,31.162,32.195,33.171,34.066,34.953,35.943,37.146,38.648,40.401,
-42.154,43.633,44.803,45.818,46.751,47.560,48.376,49.544,51.174,52.851,54.050,54.718,55.160,55.461,55.435,55.167,
-55.128,55.540,56.011,56.108,55.986,56.090,56.494,56.965,57.503,58.308,59.261,59.974,60.394,60.862,61.503,62.075,
-62.541,63.230,64.188,64.954,65.319,65.756,66.638,67.575,68.086,68.374,68.762,68.966,68.851,69.350,71.279,73.411,
-73.273,70.234,66.397,63.886,62.607,61.628,61.371,62.786,65.116,66.317,65.704,64.738,64.947,66.297,67.955,69.482,
-70.703,71.328,71.436,71.656,72.258,72.628,72.268,71.738,71.882,72.559,72.939,72.793,72.667,72.837,72.873,72.371,
-71.519,70.749,70.255,70.021,69.975,69.935,69.712,69.361,69.129,69.067,68.967,68.731,68.514,68.418,68.317,68.108,
-67.900,67.814,67.782,67.692,67.563,67.448,67.305,67.104,66.931,66.868,66.870,66.873,66.910,67.045,67.239,67.384,
-67.391,67.218,66.894,66.534,66.251,66.013,65.707,65.335,65.025,64.825,64.639,64.419,64.247,64.148,63.997,63.716,
-63.429,63.287,63.234,63.101,62.853,62.621,62.531,62.560,62.536,62.244,61.626,60.870,60.215,59.650,58.989,58.242,
-57.659,57.325,56.962,56.342,55.624,55.079,54.674,54.231,53.815,53.611,53.526,53.304,53.017,53.029,53.411,53.786,
-53.900,54.002,54.393,54.893,55.050,54.723,54.167,53.647,53.258,53.079,53.197,53.478,53.524,53.003,51.974,50.838,
-50.008,49.649,49.617,49.591,49.313,48.759,48.126,47.631,47.335,47.127,46.841,46.393,45.809,45.129,44.327,43.404,
-42.510,41.878,41.577,41.419,41.172,40.778,40.290,39.715,39.042,38.366,37.823,37.410,37.000,36.531,36.057,35.603,
-35.105,34.557,34.080,33.755,33.475,33.069,32.535,32.028,31.644,31.297,30.860,30.368,30.013,29.913,29.909,29.694,
-29.162,28.566,28.238,28.202,28.194,27.984,27.523,26.811,25.913,25.183,25.139,25.825,26.512,26.381,25.469,24.567,
-24.216,24.182,24.035,23.803,23.718,23.627,23.134,22.265,21.552,21.348,21.384,21.160,20.569,19.911,19.472,19.280,
-19.222,19.195,19.130,18.986,18.775,18.536,18.279,18.009,17.749,17.523,17.332,17.211,17.219,17.322,17.351,17.167,
-16.852,16.594,16.447,16.327,16.238,16.319,16.620,16.969,17.159,17.164,17.081,16.949,16.729,16.428,16.107,15.793,
-15.466,15.145,14.883,14.677,14.459,14.195,13.940,13.775,13.726,13.780,13.907,14.047,14.111,14.048,13.883,13.679,
-13.474,13.279,13.126,13.063,13.111,13.238,13.397,13.559,13.699,13.780,13.769,13.692,13.644,13.711,13.876,14.021,
-14.039,13.943,13.840,13.822,13.908,14.063,14.248,14.453,14.703,15.019,15.380,15.720,16.005,16.273,16.558,16.814,
-16.961,16.988,16.950,16.856,16.658,16.378,16.166,16.175,16.424,16.838,17.343,17.828,18.092,17.971,17.552,17.153,
-17.023,17.110,17.160,17.001,16.665,16.297,16.008,15.810,15.651,15.473,15.254,15.016,14.782,14.556,14.343,14.171,
-14.055,13.964,13.823,13.587,13.276,12.955,12.670,12.414,12.145,11.855,11.587,11.387,11.228,11.031,10.762,10.468,
-10.203,9.957,9.695,9.418,9.151,8.880,8.562,8.191,7.808,7.444,7.090,6.747,6.461,6.264,6.129,5.982,
-5.778,5.527,5.270,5.023,4.766,4.470,4.146,3.840,3.583,3.342,3.066,2.748,2.413,2.062,1.665,1.227,
-.804,.435,.104,-.226,-.569,-.925,-1.317,-1.752,-2.197,-2.609,-2.989,-3.373,-3.776,-4.182,-4.581,-4.995,
--5.446,-5.921,-6.384,-6.818,-7.243,-7.688,-8.144,-8.579,-8.985,-9.397,-9.844,-10.291,-10.686,-11.041,-11.427,-11.875,
--12.338,-12.751,-13.115,-13.468,-13.830,-14.192,-14.556,-14.935,-15.326,-15.706,-16.051,-16.359,-16.658,-16.989,-17.361,-17.731,
--18.050,-18.330,-18.624,-18.947,-19.260,-19.540,-19.818,-20.114,-20.405,-20.680,-20.975,-21.301,-21.609,-21.863,-22.114,-22.430,
--22.797,-23.140,-23.432,-23.712,-24.009,-24.309,-24.603,-24.903,-25.212,-25.518,-25.815,-26.102,-26.368,-26.610,-26.841,-27.071,
--27.280,-27.457,-27.629,-27.815,-27.996,-28.159,-28.329,-28.511,-28.650,-28.701,-28.712,-28.765,-28.859,-28.934,-28.978,-29.026,
--29.066,-29.046,-28.971,-28.921,-28.935,-28.963,-28.943,-28.877,-28.795,-28.700,-28.582,-28.446,-28.295,-28.129,-27.969,-27.841,
--27.727,-27.583,-27.397,-27.207,-27.040,-26.887,-26.741,-26.599,-26.441,-26.242,-26.019,-25.813,-25.621,-25.402,-25.146,-24.884,
--24.630,-24.369,-24.103,-23.857,-23.631,-23.397,-23.155,-22.927,-22.693,-22.409,-22.087,-21.788,-21.527,-21.256,-20.948,-20.642,
--20.367,-20.103,-19.832,-19.563,-19.297,-19.022,-18.745,-18.488,-18.230,-17.936,-17.624,-17.345,-17.084,-16.780,-16.437,-16.125,
--15.860,-15.573,-15.236,-14.910,-14.626,-14.326,-13.981,-13.652,-13.381,-13.122,-12.825,-12.524,-12.259,-12.003,-11.730,-11.476,
--11.260,-11.024,-10.719,-10.398,-10.129,-9.901,-9.665,-9.431,-9.225,-9.015,-8.746,-8.430,-8.109,-7.782,-7.426,-7.067,
--6.752,-6.495,-6.268,-6.030,-5.743,-5.386,-4.999,-4.652,-4.365,-4.096,-3.823,-3.554,-3.274,-2.943,-2.584,-2.268,
--1.996,-1.693,-1.351,-1.066,-.878,-.694,-.401,.025,.550,1.112,1.598,1.922,2.164,2.477,2.842,3.081,
-3.164,3.282,3.543,3.838,4.096,4.451,4.989,5.564,6.050,6.530,7.077,7.550,7.862,8.211,8.784,9.438,
-9.973,10.513,11.261,12.048,12.538,12.751,12.984,13.279,13.406,13.353,13.350,13.363,13.017,12.186,11.284,10.767,
-10.659,10.793,11.308,12.668,15.260,18.983,23.025,26.083,27.086,25.893,23.239,20.173,17.776,17.021,18.052,19.506,
-19.381,17.083,14.140,12.406,12.033,11.761,10.757,9.375,8.251,7.470,6.816,6.249,5.841,5.544,5.237,4.788,
-4.004,2.804,1.498,.599,.230,-.031,-.570,-1.290,-1.885,-2.326,-2.847,-3.615,-4.620,-5.756,-6.787,-7.315,
--7.089,-6.395,-5.929,-6.141,-6.789,-7.258,-7.270,-7.153,-7.394,-8.076,-8.882,-9.579,-10.280,-11.176,-12.196,-13.069,
--13.654,-14.055,-14.426,-14.809,-15.166,-15.507,-15.941,-16.601,-17.511,-18.514,-19.398,-20.116,-20.795,-21.535,-22.275,-22.922,
--23.467,-23.927,-24.317,-24.775,-25.541,-26.653,-27.807,-28.719,-29.490,-30.374,-31.288,-31.843,-31.880,-31.679,-31.584,-31.631,
--31.679,-31.692,-31.733,-31.774,-31.686,-31.403,-31.051,-30.893,-31.112,-31.642,-32.215,-32.616,-32.848,-32.990,-33.000,-32.783,
--32.354,-31.790,-31.077,-30.202,-29.349,-28.813,-28.697,-28.857,-29.126,-29.442,-29.747,-29.997,-30.284,-30.750,-31.311,-31.668,
--31.665,-31.429,-31.100,-30.640,-30.026,-29.427,-29.008,-28.712,-28.385,-27.988,-27.537,-26.977,-26.286,-25.591,-25.006,-24.436,
--23.721,-22.904,-22.173,-21.590,-21.032,-20.414,-19.779,-19.176,-18.580,-17.963,-17.329,-16.664,-15.940,-15.186,-14.470,-13.800,
--13.128,-12.438,-11.755,-11.083,-10.395,-9.699,-9.022,-8.348,-7.630,-6.868,-6.117,-5.406,-4.708,-4.000,-3.298,-2.630,
--2.012,-1.425,-.806,-.108,.619,1.251,1.768,2.300,2.947,3.615,4.146,4.540,4.916,5.295,5.584,5.781,
-6.023,6.399,6.833,7.211,7.521,7.805,8.064,8.273,8.452,8.635,8.823,9.009,9.212,9.443,9.667,9.852,
-10.021,10.237,10.532,10.874,11.191,11.417,11.538,11.608,11.695,11.822,11.974,12.158,12.403,12.695,12.980,13.240,
-13.504,13.788,14.052,14.263,14.447,14.646,14.864,15.079,15.269,15.419,15.507,15.536,15.551,15.607,15.733,15.927,
-16.162,16.390,16.561,16.673,16.768,16.875,16.989,17.122,17.322,17.615,17.956,18.278,18.555,18.775,18.906,18.945,
-18.967,19.077,19.292,19.537,19.759,19.990,20.264,20.527,20.683,20.711,20.696,20.748,20.929,21.223,21.540,21.730,
-21.696,21.520,21.461,21.729,22.273,22.839,23.222,23.405,23.473,23.478,23.415,23.247,22.940,22.513,22.106,21.903,
-21.939,22.039,22.027,21.896,21.729,21.517,21.183,20.712,20.136,19.455,18.743,18.280,18.355,18.885,19.409,19.548,
-19.341,19.046,18.783,18.508,18.202,17.919,17.681,17.482,17.365,17.362,17.081,17.080,16.995,16.861,16.739,16.574,
-16.269,15.861,15.500,15.266,15.119,15.004,14.909,14.803,14.666,14.584,14.715,15.112,15.680,16.327,17.061,17.896,
-18.729,19.388,19.757,19.816,19.619,19.259,18.798,18.213,17.526,17.009,17.084,17.830,18.705,18.984,18.505,17.766,
-17.208,16.657,15.681,14.359,13.350,13.147,13.495,13.704,13.388,12.706,11.979,11.329,10.709,10.078,9.444,8.828,
-8.286,7.873,7.534,7.118,6.591,6.101,5.752,5.394,4.803,3.982,3.160,2.520,2.079,1.777,1.496,.991,
-.026,-1.351,-2.780,-3.939,-4.801,-5.507,-6.135,-6.692,-7.227,-7.798,-8.386,-8.935,-9.443,-9.933,-10.369,-10.690,
--10.897,-11.050,-11.193,-11.323,-11.416,-11.441,-11.376,-11.258,-11.166,-11.133,-11.117,-11.078,-11.032,-10.989,-10.920,-10.833,
--10.801,-10.859,-10.934,-10.957,-10.964,-11.013,-11.081,-11.119,-11.147,-11.197,-11.232,-11.208,-11.134,-11.008,-10.806,-10.633,
--10.741,-11.208,-11.730,-11.948,-11.933,-12.087,-12.592,-13.208,-13.642,-13.828,-13.787,-13.476,-12.955,-12.504,-12.334,-12.320,
--12.205,-12.021,-12.101,-12.667,-13.534,-14.282,-14.677,-14.891,-15.283,-15.952,-16.568,-16.772,-16.694,-16.852,-17.484,-18.185,
--18.409,-18.167,-18.000,-18.303,-18.927,-19.478,-19.838,-20.257,-21.010,-22.086,-23.213,-24.149,-24.901,-25.645,-26.476,-27.327,
--28.125,-28.903,-29.687,-30.350,-30.702,-30.682,-30.409,-30.080,-29.896,-30.020,-30.505,-31.253,-32.120,-33.041,-34.001,-34.950,
--35.811,-36.555,-37.172,-37.603,-37.831,-38.048,-38.619,-39.814,-41.574,-43.536,-45.278,-46.571,-47.447,-48.045,-48.438,-48.675,
--48.943,-49.478,-50.268,-50.992,-51.426,-51.769,-52.347,-53.092,-53.538,-53.345,-52.661,-51.942,-51.605,-51.830,-52.481,-53.117,
--53.302,-53.035,-52.752,-52.821,-53.173,-53.534,-53.834,-54.207,-54.696,-55.181,-55.576,-55.943,-56.375,-56.883,-57.412,-57.896,
--58.287,-58.601,-58.936,-59.375,-59.888,-60.389,-60.861,-61.356,-61.886,-62.419,-62.952,-63.528,-64.152,-64.774,-65.376,-65.992,
--66.633,-67.245,-67.783,-68.282,-68.813,-69.411,-70.073,-70.784,-71.521,-72.241,-72.918,-73.583,-74.296,-75.084,-75.927,-76.789,
--77.653,-78.518,-79.384,-80.256,-81.146,-82.063,-82.986,-83.870,-84.702,-85.529,-86.413,-87.361,-88.321,-89.251,-90.125,-90.898,
--91.514,-92.007,-92.541,-93.269,-94.164,-95.028,-95.684,-96.149,-96.589,-97.106,-97.560,-97.633,-97.148,-96.363,-95.890,-96.227,
--97.322,-98.615,-99.522,-99.891,-100.023,-100.320,-100.928,-101.675,-102.304,-102.713,-102.990,-103.268,-103.602,-103.965,-104.276,-104.427,
--104.353,-104.129,-103.965,-104.041,-104.362,-104.786,-105.148,-105.335,-105.307,-105.125,-104.925,-104.790,-104.670,-104.461,-104.140,-103.755,
--103.322,-102.811,-102.227,-101.598,-100.909,-100.117,-99.220,-98.238,-97.156,-95.978,-94.813,-93.788,-92.865,-91.881,-90.768,-89.600,
--88.401,-87.079,-85.632,-84.227,-82.951,-81.623,-80.027,-78.219,-76.445,-74.820,-73.255,-71.661,-70.049,-68.459,-66.932,-65.500,
--64.061,-62.334,-60.188,-58.008,-56.435,-55.658,-55.186,-54.433,-53.322,-52.169,-51.241,-50.634,-50.397,-50.393,-50.122,-49.050,
--47.188,-45.124,-43.409,-42.138,-41.189,-40.539,-40.071,-39.316,-37.801,-35.667,-33.619,-32.079,-30.625,-28.511,-25.646,-22.789,
--20.749,-19.601,-18.810,-17.918,-16.887,-15.833,-14.731,-13.483,-12.129,-10.825,-9.655,-8.595,-7.603,-6.656,-5.692,-4.639,
--3.509,-2.413,-1.457,-.662,.027,.691,1.389,2.114,2.793,3.398,4.016,4.772,5.695,6.713,7.758,8.807,
-9.854,10.917,12.063,13.317,14.558,15.627,16.536,17.461,18.478,19.439,20.168,20.710,21.266,21.964,22.777,23.634,
-24.504,25.378,26.242,27.093,27.945,28.820,29.748,30.739,31.741,32.679,33.553,34.455,35.459,36.582,37.897,39.518,
-41.385,43.168,44.569,45.642,46.619,47.497,48.119,48.665,49.678,51.377,53.227,54.512,55.120,55.444,55.649,55.556,
-55.228,55.132,55.474,55.831,55.782,55.575,55.740,56.303,56.883,57.385,58.066,58.922,59.589,59.962,60.376,61.028,
-61.689,62.229,62.909,63.857,64.719,65.229,65.677,66.379,67.121,67.642,68.176,68.888,69.304,69.191,69.510,71.216,
-73.211,72.973,69.649,65.276,62.271,60.917,60.252,60.249,61.586,63.791,65.270,65.317,64.891,65.172,66.324,67.922,
-69.631,71.049,71.708,71.744,71.908,72.498,72.897,72.648,72.304,72.580,73.209,73.401,73.090,72.918,73.125,73.208,
-72.726,71.862,71.045,70.489,70.215,70.159,70.123,69.904,69.571,69.371,69.341,69.273,69.074,68.885,68.792,68.692,
-68.518,68.348,68.212,68.027,67.807,67.686,67.671,67.585,67.353,67.140,67.101,67.174,67.244,67.329,67.484,67.658,
-67.757,67.737,67.579,67.271,66.890,66.559,66.280,65.943,65.542,65.217,65.025,64.841,64.587,64.368,64.267,64.172,
-63.957,63.703,63.572,63.541,63.439,63.185,62.891,62.714,62.682,62.633,62.320,61.674,60.942,60.421,60.056,59.507,
-58.662,57.826,57.263,56.832,56.276,55.637,55.104,54.658,54.190,53.832,53.785,53.895,53.795,53.482,53.375,53.695,
-54.141,54.362,54.438,54.652,54.992,55.159,54.971,54.538,54.090,53.808,53.784,53.962,54.096,53.894,53.245,52.270,
-51.220,50.361,49.892,49.808,49.841,49.652,49.128,48.458,47.908,47.569,47.320,46.994,46.541,46.032,45.496,44.835,
-43.961,42.998,42.228,41.780,41.495,41.154,40.731,40.320,39.910,39.406,38.817,38.273,37.838,37.430,36.960,36.438,
-35.911,35.387,34.882,34.451,34.114,33.776,33.315,32.730,32.160,31.719,31.364,30.958,30.480,30.107,29.999,30.032,
-29.888,29.435,28.902,28.577,28.454,28.322,28.066,27.669,27.041,26.188,25.560,25.788,26.822,27.667,27.360,26.066,
-24.834,24.347,24.331,24.247,24.050,23.971,23.899,23.458,22.621,21.856,21.555,21.573,21.464,21.011,20.383,19.867,
-19.599,19.519,19.486,19.404,19.271,19.120,18.939,18.691,18.396,18.128,17.914,17.734,17.607,17.604,17.700,17.730,
-17.563,17.264,16.984,16.772,16.590,16.470,16.519,16.752,17.027,17.194,17.212,17.117,16.941,16.718,16.498,16.293,
-16.064,15.784,15.496,15.251,15.024,14.749,14.417,14.097,13.877,13.803,13.859,13.981,14.091,14.139,14.114,14.020,
-13.853,13.638,13.438,13.314,13.272,13.280,13.320,13.394,13.514,13.675,13.836,13.925,13.901,13.829,13.841,13.976,
-14.121,14.142,14.051,13.971,13.989,14.086,14.212,14.352,14.522,14.740,15.014,15.322,15.607,15.839,16.067,16.347,
-16.636,16.831,16.911,16.957,17.001,16.963,16.786,16.565,16.457,16.533,16.770,17.159,17.663,18.111,18.243,17.951,
-17.431,17.015,16.883,16.939,16.957,16.800,16.507,16.207,15.980,15.801,15.608,15.373,15.114,14.847,14.583,14.352,
-14.195,14.110,14.045,13.941,13.781,13.570,13.321,13.044,12.744,12.421,12.089,11.795,11.582,11.416,11.200,10.883,
-10.524,10.209,9.953,9.710,9.455,9.208,8.974,8.719,8.422,8.104,7.795,7.500,7.221,6.983,6.806,6.659,
-6.482,6.240,5.955,5.680,5.430,5.168,4.849,4.486,4.142,3.855,3.594,3.298,2.957,2.602,2.238,1.841,
-1.410,.994,.637,.329,.032,-.284,-.635,-1.036,-1.475,-1.912,-2.314,-2.696,-3.093,-3.512,-3.927,-4.325,
--4.726,-5.160,-5.632,-6.110,-6.563,-6.993,-7.430,-7.887,-8.337,-8.747,-9.134,-9.533,-9.938,-10.305,-10.635,-10.997,
--11.426,-11.876,-12.281,-12.644,-13.014,-13.403,-13.782,-14.138,-14.503,-14.899,-15.303,-15.673,-15.995,-16.298,-16.619,-16.966,
--17.310,-17.622,-17.914,-18.221,-18.542,-18.846,-19.126,-19.415,-19.726,-20.031,-20.322,-20.636,-20.984,-21.313,-21.585,-21.844,
--22.161,-22.520,-22.853,-23.141,-23.423,-23.721,-24.017,-24.306,-24.606,-24.919,-25.215,-25.482,-25.734,-25.977,-26.206,-26.423,
--26.642,-26.854,-27.051,-27.243,-27.445,-27.640,-27.812,-27.982,-28.170,-28.337,-28.430,-28.456,-28.479,-28.526,-28.578,-28.630,
--28.700,-28.761,-28.760,-28.699,-28.643,-28.631,-28.627,-28.592,-28.531,-28.455,-28.355,-28.225,-28.083,-27.939,-27.783,-27.624,
--27.487,-27.364,-27.215,-27.032,-26.853,-26.706,-26.572,-26.425,-26.261,-26.081,-25.880,-25.678,-25.504,-25.343,-25.144,-24.893,
--24.628,-24.375,-24.119,-23.854,-23.605,-23.381,-23.156,-22.926,-22.712,-22.501,-22.246,-21.936,-21.628,-21.357,-21.090,-20.790,
--20.477,-20.186,-19.919,-19.656,-19.392,-19.131,-18.873,-18.627,-18.395,-18.154,-17.878,-17.589,-17.328,-17.075,-16.778,-16.452,
--16.158,-15.904,-15.624,-15.305,-15.006,-14.744,-14.454,-14.105,-13.766,-13.494,-13.252,-12.990,-12.722,-12.467,-12.195,-11.895,
--11.627,-11.421,-11.211,-10.934,-10.636,-10.386,-10.157,-9.889,-9.599,-9.343,-9.102,-8.806,-8.444,-8.071,-7.722,-7.381,
--7.037,-6.708,-6.415,-6.163,-5.938,-5.690,-5.371,-5.006,-4.669,-4.385,-4.112,-3.824,-3.546,-3.273,-2.959,-2.619,
--2.335,-2.118,-1.866,-1.525,-1.197,-.982,-.820,-.567,-.170,.315,.802,1.205,1.480,1.696,1.974,2.312,
-2.580,2.734,2.906,3.196,3.548,3.909,4.343,4.862,5.337,5.720,6.164,6.747,7.274,7.599,7.936,8.565,
-9.381,10.052,10.530,11.042,11.637,12.115,12.402,12.649,12.923,13.107,13.158,13.117,12.851,12.158,11.260,10.787,
-11.054,11.665,12.143,12.722,14.177,16.959,20.694,24.416,27.033,27.708,26.184,23.039,19.604,17.383,17.138,18.224,
-18.951,18.019,15.773,13.791,13.145,13.387,13.332,12.453,11.143,9.929,8.943,8.104,7.404,6.871,6.489,6.186,
-5.782,4.996,3.750,2.419,1.528,1.159,.891,.369,-.303,-.834,-1.202,-1.672,-2.491,-3.677,-5.043,-6.256,
--6.949,-6.944,-6.472,-6.079,-6.195,-6.742,-7.219,-7.239,-6.956,-6.889,-7.338,-8.130,-8.954,-9.778,-10.753,-11.855,
--12.813,-13.419,-13.736,-13.982,-14.299,-14.711,-15.218,-15.852,-16.644,-17.539,-18.402,-19.121,-19.732,-20.361,-21.055,-21.744,
--22.367,-22.945,-23.495,-24.018,-24.611,-25.442,-26.499,-27.519,-28.311,-29.019,-29.859,-30.712,-31.203,-31.184,-30.916,-30.747,
--30.783,-30.928,-31.090,-31.229,-31.283,-31.164,-30.843,-30.444,-30.228,-30.415,-30.958,-31.569,-31.990,-32.193,-32.252,-32.172,
--31.951,-31.668,-31.351,-30.854,-30.074,-29.219,-28.654,-28.502,-28.598,-28.792,-29.070,-29.403,-29.713,-30.041,-30.508,-31.043,
--31.367,-31.320,-31.032,-30.675,-30.249,-29.720,-29.180,-28.729,-28.342,-27.969,-27.629,-27.292,-26.819,-26.162,-25.485,-24.937,
--24.421,-23.746,-22.938,-22.187,-21.570,-20.993,-20.378,-19.749,-19.134,-18.519,-17.902,-17.292,-16.646,-15.914,-15.139,-14.414,
--13.748,-13.067,-12.338,-11.620,-10.956,-10.316,-9.655,-8.964,-8.257,-7.542,-6.828,-6.122,-5.413,-4.692,-3.970,-3.267,
--2.592,-1.961,-1.380,-.800,-.158,.518,1.110,1.594,2.119,2.819,3.601,4.253,4.709,5.068,5.396,5.648,
-5.819,6.023,6.357,6.779,7.177,7.500,7.759,7.966,8.134,8.296,8.481,8.684,8.886,9.090,9.300,9.503,
-9.690,9.882,10.116,10.402,10.707,10.976,11.169,11.296,11.401,11.519,11.652,11.799,11.980,12.206,12.445,12.669,
-12.900,13.175,13.468,13.722,13.927,14.127,14.348,14.579,14.802,15.014,15.194,15.303,15.343,15.367,15.425,15.531,
-15.689,15.903,16.144,16.357,16.506,16.603,16.670,16.728,16.819,17.006,17.300,17.642,17.964,18.240,18.449,18.554,
-18.560,18.566,18.679,18.898,19.137,19.349,19.581,19.876,20.186,20.419,20.549,20.633,20.739,20.892,21.071,21.218,
-21.240,21.082,20.844,20.768,21.036,21.576,22.119,22.430,22.470,22.337,22.137,21.936,21.757,21.578,21.365,21.152,
-21.023,21.002,21.007,20.962,20.881,20.792,20.638,20.332,19.859,19.252,18.551,17.891,17.549,17.724,18.252,18.699,
-18.767,18.511,18.152,17.827,17.573,17.413,17.332,17.254,17.149,17.078,17.081,16.813,16.802,16.740,16.667,16.602,
-16.461,16.191,15.885,15.663,15.524,15.388,15.227,15.035,14.766,14.429,14.189,14.233,14.556,15.004,15.512,16.143,
-16.895,17.620,18.184,18.570,18.782,18.760,18.468,17.964,17.331,16.686,16.283,16.409,17.003,17.518,17.437,16.888,
-16.465,16.403,16.215,15.359,14.053,13.110,12.988,13.289,13.303,12.798,12.090,11.485,10.943,10.286,9.496,8.706,
-8.031,7.505,7.107,6.736,6.258,5.653,5.060,4.593,4.159,3.586,2.861,2.146,1.570,1.141,.819,.534,
-.112,-.639,-1.714,-2.880,-3.914,-4.793,-5.603,-6.366,-7.062,-7.724,-8.411,-9.104,-9.736,-10.301,-10.860,-11.435,
--11.943,-12.256,-12.321,-12.227,-12.142,-12.150,-12.173,-12.092,-11.918,-11.776,-11.721,-11.679,-11.581,-11.458,-11.363,-11.292,
--11.232,-11.206,-11.210,-11.197,-11.166,-11.181,-11.262,-11.337,-11.354,-11.355,-11.369,-11.359,-11.309,-11.246,-11.115,-10.821,
--10.500,-10.524,-11.026,-11.611,-11.821,-11.784,-12.047,-12.823,-13.703,-14.195,-14.224,-13.995,-13.655,-13.264,-12.939,-12.768,
--12.686,-12.585,-12.525,-12.705,-13.237,-13.999,-14.704,-15.123,-15.304,-15.552,-16.063,-16.614,-16.826,-16.742,-16.874,-17.531,
--18.356,-18.787,-18.788,-18.846,-19.295,-19.957,-20.485,-20.818,-21.178,-21.769,-22.590,-23.501,-24.368,-25.158,-25.904,-26.621,
--27.282,-27.915,-28.619,-29.419,-30.142,-30.543,-30.539,-30.270,-29.966,-29.848,-30.081,-30.688,-31.512,-32.364,-33.212,-34.149,
--35.172,-36.119,-36.824,-37.266,-37.549,-37.844,-38.377,-39.376,-40.922,-42.834,-44.741,-46.299,-47.394,-48.149,-48.741,-49.206,
--49.492,-49.672,-49.964,-50.450,-50.945,-51.274,-51.563,-52.034,-52.573,-52.748,-52.335,-51.628,-51.169,-51.267,-51.839,-52.533,
--52.965,-52.961,-52.712,-52.610,-52.837,-53.224,-53.549,-53.838,-54.251,-54.797,-55.317,-55.725,-56.085,-56.473,-56.886,-57.300,
--57.729,-58.186,-58.653,-59.110,-59.557,-59.996,-60.448,-60.955,-61.521,-62.084,-62.590,-63.072,-63.610,-64.220,-64.853,-65.486,
--66.138,-66.805,-67.441,-68.016,-68.555,-69.100,-69.675,-70.300,-70.970,-71.647,-72.289,-72.911,-73.577,-74.311,-75.075,-75.839,
--76.618,-77.431,-78.252,-79.055,-79.870,-80.757,-81.720,-82.687,-83.583,-84.421,-85.286,-86.243,-87.262,-88.252,-89.151,-89.951,
--90.655,-91.268,-91.843,-92.491,-93.278,-94.141,-94.928,-95.546,-96.033,-96.515,-97.067,-97.583,-97.773,-97.391,-96.575,-95.916,
--96.042,-97.042,-98.367,-99.341,-99.756,-99.939,-100.312,-100.978,-101.725,-102.319,-102.710,-102.996,-103.282,-103.613,-103.971,-104.268,
--104.375,-104.228,-103.932,-103.696,-103.659,-103.822,-104.109,-104.435,-104.685,-104.747,-104.629,-104.480,-104.406,-104.337,-104.138,-103.804,
--103.429,-103.036,-102.552,-101.959,-101.319,-100.651,-99.886,-98.976,-97.961,-96.897,-95.817,-94.790,-93.899,-93.096,-92.186,-91.021,
--89.649,-88.206,-86.778,-85.416,-84.174,-82.997,-81.691,-80.126,-78.408,-76.731,-75.129,-73.500,-71.820,-70.163,-68.567,-67.020,
--65.540,-64.076,-62.392,-60.313,-58.136,-56.483,-55.626,-55.145,-54.421,-53.303,-52.096,-51.097,-50.383,-49.956,-49.758,-49.516,
--48.815,-47.459,-45.624,-43.636,-41.750,-40.177,-39.061,-38.269,-37.342,-35.930,-34.234,-32.811,-31.894,-31.056,-29.662,-27.549,
--25.114,-22.811,-20.735,-18.776,-16.993,-15.608,-14.647,-13.789,-12.693,-11.376,-10.136,-9.151,-8.305,-7.403,-6.405,-5.392,
--4.391,-3.348,-2.265,-1.256,-.434,.237,.915,1.712,2.567,3.346,4.031,4.758,5.636,6.622,7.615,8.589,
-9.580,10.593,11.636,12.779,14.054,15.322,16.375,17.203,18.020,18.981,19.991,20.851,21.512,22.095,22.728,23.449,
-24.246,25.094,25.967,26.837,27.690,28.537,29.424,30.406,31.462,32.454,33.278,34.039,34.957,36.106,37.377,38.737,
-40.308,42.076,43.729,44.999,46.027,47.102,48.169,48.927,49.451,50.289,51.749,53.419,54.668,55.381,55.837,56.075,
-55.865,55.313,54.963,55.095,55.338,55.289,55.156,55.403,56.015,56.586,57.019,57.603,58.400,59.071,59.461,59.868,
-60.532,61.265,61.859,62.486,63.341,64.237,64.918,65.482,66.123,66.752,67.286,67.955,68.822,69.385,69.402,69.722,
-71.206,72.867,72.328,68.641,63.654,59.961,58.346,58.005,58.395,59.635,61.443,62.973,63.853,64.531,65.462,66.654,
-68.091,69.814,71.427,72.255,72.287,72.291,72.714,73.118,73.095,73.033,73.412,73.906,73.872,73.391,73.117,73.262,
-73.357,72.994,72.282,71.534,70.927,70.549,70.413,70.352,70.164,69.884,69.701,69.620,69.485,69.279,69.146,69.096,
-68.991,68.804,68.651,68.552,68.403,68.223,68.136,68.109,67.952,67.654,67.444,67.458,67.572,67.651,67.736,67.886,
-68.022,68.058,68.005,67.863,67.573,67.163,66.780,66.486,66.184,65.827,65.517,65.311,65.106,64.828,64.581,64.465,
-64.396,64.240,64.020,63.848,63.747,63.644,63.491,63.301,63.123,62.996,62.853,62.502,61.860,61.183,60.793,60.562,
-59.980,58.885,57.772,57.159,56.925,56.584,55.981,55.335,54.770,54.250,53.901,53.945,54.251,54.361,54.109,53.874,
-54.047,54.507,54.849,54.917,54.887,54.919,54.965,54.885,54.633,54.322,54.155,54.238,54.412,54.356,53.902,53.162,
-52.320,51.452,50.632,50.059,49.869,49.891,49.766,49.314,48.680,48.119,47.727,47.408,47.033,46.576,46.110,45.662,
-45.122,44.354,43.416,42.561,41.967,41.555,41.156,40.740,40.392,40.102,39.745,39.261,38.729,38.246,37.806,37.339,
-36.815,36.261,35.730,35.271,34.889,34.536,34.128,33.609,33.003,32.408,31.925,31.560,31.205,30.786,30.400,30.202,
-30.159,30.045,29.741,29.381,29.115,28.886,28.582,28.248,27.910,27.378,26.587,26.063,26.517,27.792,28.665,28.083,
-26.376,24.840,24.260,24.301,24.305,24.150,24.065,23.998,23.634,22.923,22.224,21.855,21.737,21.562,21.164,20.641,
-20.193,19.939,19.849,19.798,19.693,19.542,19.401,19.264,19.071,18.809,18.536,18.303,18.119,18.003,17.983,18.023,
-18.009,17.874,17.656,17.424,17.189,16.954,16.786,16.760,16.867,17.018,17.131,17.155,17.056,16.843,16.600,16.422,
-16.313,16.193,16.008,15.770,15.509,15.232,14.944,14.649,14.346,14.064,13.880,13.858,13.951,14.046,14.085,14.083,
-14.038,13.910,13.711,13.539,13.467,13.463,13.457,13.434,13.432,13.486,13.607,13.778,13.925,13.962,13.910,13.894,
-13.979,14.070,14.062,14.009,14.058,14.233,14.408,14.481,14.488,14.529,14.666,14.906,15.205,15.472,15.647,15.782,
-15.986,16.272,16.537,16.704,16.813,16.905,16.927,16.821,16.654,16.561,16.594,16.722,16.950,17.335,17.828,18.197,
-18.191,17.791,17.256,16.893,16.811,16.871,16.871,16.734,16.512,16.273,16.030,15.778,15.525,15.269,14.980,14.664,
-14.395,14.240,14.175,14.114,14.017,13.910,13.795,13.622,13.350,12.994,12.602,12.219,11.892,11.657,11.486,11.285,
-10.989,10.642,10.334,10.089,9.862,9.624,9.399,9.206,9.017,8.793,8.535,8.273,8.023,7.787,7.565,7.362,
-7.161,6.922,6.622,6.285,5.963,5.677,5.393,5.062,4.689,4.337,4.049,3.792,3.500,3.150,2.771,2.387,
-1.985,1.560,1.144,.779,.473,.199,-.087,-.418,-.803,-1.219,-1.627,-2.017,-2.414,-2.842,-3.284,-3.706,
--4.092,-4.464,-4.866,-5.324,-5.818,-6.296,-6.726,-7.142,-7.591,-8.068,-8.514,-8.903,-9.267,-9.634,-9.987,-10.319,
--10.665,-11.059,-11.469,-11.852,-12.218,-12.606,-13.008,-13.378,-13.708,-14.052,-14.445,-14.859,-15.244,-15.591,-15.924,-16.265,
--16.608,-16.934,-17.241,-17.550,-17.874,-18.193,-18.480,-18.749,-19.044,-19.374,-19.698,-19.997,-20.302,-20.637,-20.964,-21.246,
--21.522,-21.845,-22.203,-22.533,-22.825,-23.116,-23.422,-23.718,-24.003,-24.302,-24.611,-24.887,-25.117,-25.340,-25.579,-25.820,
--26.043,-26.255,-26.464,-26.662,-26.855,-27.058,-27.263,-27.443,-27.599,-27.764,-27.932,-28.053,-28.104,-28.119,-28.149,-28.213,
--28.305,-28.409,-28.487,-28.498,-28.450,-28.390,-28.341,-28.285,-28.218,-28.159,-28.107,-28.025,-27.894,-27.743,-27.594,-27.441,
--27.281,-27.135,-27.001,-26.849,-26.673,-26.508,-26.373,-26.240,-26.078,-25.895,-25.710,-25.524,-25.345,-25.189,-25.035,-24.831,
--24.569,-24.301,-24.067,-23.847,-23.615,-23.383,-23.161,-22.932,-22.693,-22.471,-22.270,-22.042,-21.760,-21.467,-21.203,-20.941,
--20.638,-20.306,-19.997,-19.729,-19.482,-19.238,-18.996,-18.757,-18.520,-18.286,-18.047,-17.792,-17.533,-17.288,-17.043,-16.771,
--16.479,-16.206,-15.947,-15.661,-15.356,-15.081,-14.837,-14.557,-14.222,-13.895,-13.628,-13.390,-13.138,-12.885,-12.639,-12.364,
--12.052,-11.765,-11.543,-11.329,-11.073,-10.811,-10.592,-10.369,-10.067,-9.710,-9.376,-9.077,-8.756,-8.393,-8.029,-7.698,
--7.394,-7.097,-6.793,-6.477,-6.171,-5.905,-5.665,-5.392,-5.069,-4.751,-4.470,-4.193,-3.895,-3.608,-3.339,-3.043,
--2.718,-2.450,-2.259,-2.035,-1.698,-1.334,-1.067,-.854,-.562,-.165,.230,.544,.784,.988,1.205,1.489,
-1.835,2.149,2.371,2.569,2.845,3.220,3.666,4.164,4.650,5.023,5.334,5.791,6.447,7.041,7.375,7.681,
-8.318,9.222,9.975,10.397,10.732,11.198,11.698,12.071,12.356,12.656,12.920,12.995,12.752,12.132,11.299,10.777,
-11.105,12.181,13.258,13.850,14.438,15.965,18.781,22.331,25.692,28.014,28.543,26.845,23.415,19.822,17.759,17.687,
-18.504,18.647,17.540,15.933,14.918,14.795,14.972,14.759,13.978,12.856,11.638,10.460,9.433,8.626,8.015,7.542,
-7.142,6.659,5.867,4.739,3.583,2.753,2.273,1.873,1.368,.833,.398,.007,-.552,-1.460,-2.728,-4.167,
--5.471,-6.352,-6.690,-6.606,-6.426,-6.490,-6.848,-7.169,-7.077,-6.639,-6.364,-6.667,-7.464,-8.418,-9.399,-10.489,
--11.635,-12.566,-13.094,-13.334,-13.551,-13.890,-14.340,-14.875,-15.527,-16.321,-17.191,-18.001,-18.670,-19.261,-19.896,-20.605,
--21.315,-21.972,-22.586,-23.168,-23.723,-24.349,-25.177,-26.164,-27.071,-27.758,-28.374,-29.106,-29.850,-30.301,-30.344,-30.186,
--30.115,-30.240,-30.495,-30.758,-30.927,-30.947,-30.806,-30.531,-30.217,-30.049,-30.195,-30.616,-31.081,-31.395,-31.535,-31.531,
--31.372,-31.133,-30.993,-30.965,-30.769,-30.182,-29.407,-28.866,-28.699,-28.718,-28.787,-28.971,-29.304,-29.684,-30.064,-30.507,
--30.960,-31.196,-31.081,-30.737,-30.338,-29.910,-29.419,-28.912,-28.447,-28.009,-27.587,-27.220,-26.876,-26.423,-25.818,-25.211,
--24.726,-24.269,-23.677,-22.964,-22.276,-21.671,-21.085,-20.472,-19.844,-19.202,-18.542,-17.903,-17.304,-16.678,-15.951,-15.165,
--14.429,-13.759,-13.072,-12.328,-11.584,-10.898,-10.252,-9.594,-8.901,-8.187,-7.481,-6.803,-6.137,-5.445,-4.718,-3.994,
--3.303,-2.639,-1.996,-1.385,-.778,-.126,.545,1.125,1.596,2.116,2.831,3.653,4.344,4.799,5.114,5.401,
-5.654,5.852,6.059,6.358,6.742,7.128,7.448,7.690,7.876,8.042,8.219,8.417,8.621,8.818,9.005,9.182,
-9.352,9.532,9.746,10.004,10.281,10.541,10.753,10.917,11.063,11.218,11.378,11.519,11.647,11.800,11.991,12.190,
-12.391,12.628,12.916,13.194,13.398,13.546,13.712,13.928,14.178,14.448,14.726,14.955,15.066,15.061,15.018,15.014,
-15.078,15.228,15.473,15.776,16.060,16.274,16.426,16.542,16.638,16.748,16.913,17.142,17.394,17.634,17.850,18.024,
-18.113,18.127,18.160,18.306,18.557,18.834,19.099,19.386,19.723,20.064,20.342,20.535,20.675,20.789,20.882,20.952,
-20.976,20.900,20.695,20.461,20.412,20.689,21.187,21.627,21.798,21.699,21.456,21.189,20.966,20.811,20.699,20.573,
-20.420,20.288,20.218,20.187,20.152,20.097,20.001,19.808,19.486,19.061,18.575,18.063,17.629,17.459,17.640,18.001,
-18.246,18.226,18.011,17.730,17.462,17.267,17.182,17.151,17.068,16.928,16.829,16.813,16.616,16.612,16.579,16.563,
-16.553,16.459,16.268,16.082,15.951,15.800,15.575,15.325,15.076,14.771,14.429,14.237,14.330,14.592,14.841,15.109,
-15.548,16.132,16.660,17.049,17.403,17.739,17.862,17.599,17.036,16.415,15.936,15.727,15.824,16.057,16.078,15.735,
-15.328,15.258,15.441,15.319,14.569,13.581,13.020,13.042,13.161,12.891,12.286,11.722,11.343,10.919,10.202,9.234,
-8.256,7.442,6.821,6.337,5.894,5.385,4.764,4.105,3.495,2.924,2.323,1.690,1.096,.588,.159,-.189,
--.471,-.809,-1.386,-2.257,-3.274,-4.253,-5.153,-6.033,-6.918,-7.767,-8.567,-9.352,-10.131,-10.866,-11.541,-12.202,
--12.894,-13.537,-13.928,-13.925,-13.627,-13.309,-13.150,-13.076,-12.937,-12.733,-12.578,-12.489,-12.359,-12.141,-11.924,-11.795,
--11.730,-11.672,-11.613,-11.558,-11.500,-11.468,-11.504,-11.582,-11.617,-11.602,-11.600,-11.607,-11.562,-11.489,-11.447,-11.308,
--10.876,-10.321,-10.189,-10.722,-11.434,-11.707,-11.653,-11.965,-12.937,-14.046,-14.604,-14.486,-14.064,-13.694,-13.468,-13.321,
--13.163,-12.960,-12.810,-12.882,-13.252,-13.831,-14.474,-15.042,-15.407,-15.551,-15.685,-16.042,-16.509,-16.738,-16.696,-16.839,
--17.511,-18.439,-19.088,-19.357,-19.611,-20.100,-20.679,-21.124,-21.455,-21.845,-22.380,-23.034,-23.769,-24.551,-25.333,-26.062,
--26.704,-27.260,-27.807,-28.463,-29.229,-29.902,-30.243,-30.217,-30.012,-29.854,-29.912,-30.300,-31.031,-31.944,-32.837,-33.683,
--34.601,-35.597,-36.468,-37.035,-37.364,-37.709,-38.307,-39.277,-40.641,-42.316,-44.101,-45.734,-47.004,-47.866,-48.457,-48.983,
--49.509,-49.912,-50.079,-50.105,-50.201,-50.460,-50.829,-51.255,-51.695,-51.978,-51.863,-51.358,-50.847,-50.773,-51.238,-51.950,
--52.513,-52.709,-52.605,-52.468,-52.543,-52.843,-53.194,-53.487,-53.814,-54.291,-54.863,-55.380,-55.791,-56.159,-56.516,-56.836,
--57.140,-57.522,-58.039,-58.639,-59.212,-59.694,-60.110,-60.546,-61.068,-61.655,-62.217,-62.707,-63.183,-63.720,-64.322,-64.946,
--65.580,-66.241,-66.918,-67.576,-68.202,-68.802,-69.382,-69.965,-70.592,-71.267,-71.914,-72.475,-73.012,-73.643,-74.382,-75.134,
--75.838,-76.535,-77.275,-78.031,-78.772,-79.541,-80.413,-81.378,-82.346,-83.256,-84.136,-85.066,-86.080,-87.131,-88.126,-89.002,
--89.755,-90.421,-91.061,-91.744,-92.512,-93.341,-94.148,-94.863,-95.469,-95.997,-96.500,-97.030,-97.549,-97.820,-97.538,-96.721,
--95.940,-95.934,-96.898,-98.252,-99.221,-99.587,-99.765,-100.230,-101.016,-101.817,-102.387,-102.739,-103.011,-103.295,-103.614,-103.945,
--104.203,-104.263,-104.072,-103.744,-103.471,-103.371,-103.439,-103.638,-103.920,-104.174,-104.265,-104.186,-104.088,-104.079,-104.069,-103.902,
--103.570,-103.186,-102.782,-102.285,-101.675,-101.040,-100.409,-99.682,-98.786,-97.793,-96.824,-95.909,-95.019,-94.143,-93.233,-92.163,
--90.839,-89.328,-87.801,-86.382,-85.108,-83.966,-82.873,-81.671,-80.260,-78.700,-77.109,-75.492,-73.787,-72.025,-70.300,-68.629,
--66.976,-65.381,-63.867,-62.258,-60.329,-58.229,-56.503,-55.511,-54.978,-54.318,-53.278,-52.091,-51.071,-50.298,-49.705,-49.238,
--48.831,-48.315,-47.468,-46.127,-44.285,-42.152,-40.085,-38.328,-36.796,-35.216,-33.539,-32.084,-31.191,-30.800,-30.470,-29.780,
--28.612,-27.020,-24.971,-22.362,-19.321,-16.391,-14.213,-12.968,-12.209,-11.349,-10.263,-9.275,-8.616,-8.087,-7.328,-6.265,
--5.126,-4.093,-3.115,-2.087,-1.066,-.200,.497,1.193,2.027,2.952,3.826,4.631,5.488,6.475,7.511,8.474,
-9.358,10.241,11.176,12.193,13.346,14.644,15.940,17.025,17.857,18.611,19.471,20.437,21.383,22.207,22.904,23.545,
-24.221,24.988,25.823,26.667,27.503,28.349,29.216,30.119,31.103,32.156,33.141,33.959,34.751,35.779,37.080,38.425,
-39.681,40.980,42.409,43.776,44.907,45.995,47.335,48.803,49.957,50.686,51.397,52.444,53.673,54.740,55.582,56.272,
-56.617,56.331,55.580,54.965,54.819,54.859,54.713,54.505,54.624,55.118,55.696,56.235,56.886,57.666,58.326,58.756,
-59.202,59.872,60.620,61.241,61.830,62.582,63.426,64.177,64.867,65.633,66.423,67.125,67.831,68.599,69.186,69.492,
-70.052,71.308,72.348,71.278,67.323,62.015,57.795,55.867,55.833,56.846,58.356,59.998,61.556,63.119,64.789,66.310,
-67.432,68.494,70.006,71.704,72.731,72.834,72.709,72.953,73.359,73.556,73.714,74.098,74.421,74.241,73.706,73.372,
-73.398,73.417,73.122,72.567,71.925,71.315,70.869,70.670,70.606,70.486,70.298,70.138,69.979,69.741,69.509,69.415,
-69.381,69.217,68.952,68.784,68.763,68.751,68.687,68.628,68.533,68.298,68.001,67.867,67.937,68.022,68.022,68.050,
-68.177,68.296,68.310,68.247,68.104,67.795,67.339,66.915,66.630,66.394,66.114,65.838,65.625,65.416,65.164,64.932,
-64.783,64.672,64.533,64.360,64.170,63.977,63.840,63.794,63.749,63.595,63.380,63.169,62.815,62.157,61.438,61.085,
-60.985,60.465,59.238,57.942,57.337,57.309,57.139,56.511,55.745,55.131,54.636,54.280,54.288,54.632,54.866,54.678,
-54.342,54.351,54.778,55.246,55.420,55.304,55.107,54.972,54.868,54.691,54.449,54.322,54.431,54.582,54.407,53.788,
-52.971,52.214,51.520,50.829,50.270,50.014,49.976,49.861,49.486,48.921,48.330,47.803,47.343,46.922,46.514,46.116,
-45.727,45.277,44.641,43.802,42.932,42.240,41.763,41.386,41.017,40.661,40.326,39.967,39.540,39.065,38.598,38.156,
-37.703,37.184,36.608,36.067,35.652,35.338,34.998,34.532,33.957,33.348,32.771,32.283,31.900,31.543,31.121,30.681,
-30.387,30.288,30.232,30.086,29.888,29.681,29.388,28.982,28.619,28.340,27.863,27.028,26.357,26.624,27.727,28.473,
-27.852,26.225,24.849,24.416,24.526,24.524,24.310,24.130,23.989,23.664,23.112,22.556,22.164,21.872,21.552,21.180,
-20.812,20.501,20.279,20.154,20.074,19.954,19.779,19.610,19.487,19.371,19.204,18.982,18.749,18.553,18.419,18.347,
-18.304,18.250,18.170,18.060,17.888,17.626,17.321,17.078,16.959,16.939,16.973,17.032,17.065,16.997,16.810,16.591,
-16.434,16.348,16.271,16.143,15.928,15.622,15.290,15.035,14.863,14.653,14.328,14.003,13.853,13.891,13.973,14.004,
-14.009,13.995,13.910,13.753,13.629,13.606,13.628,13.613,13.566,13.536,13.538,13.580,13.678,13.806,13.884,13.892,
-13.909,13.972,13.996,13.925,13.892,14.082,14.459,14.779,14.866,14.774,14.672,14.674,14.817,15.066,15.321,15.470,
-15.526,15.624,15.853,16.148,16.396,16.567,16.685,16.728,16.671,16.575,16.557,16.652,16.788,16.922,17.126,17.487,
-17.924,18.190,18.082,17.649,17.158,16.853,16.770,16.781,16.764,16.674,16.503,16.252,15.965,15.700,15.452,15.153,
-14.795,14.480,14.305,14.231,14.150,14.033,13.933,13.856,13.718,13.452,13.088,12.702,12.342,12.029,11.785,11.606,
-11.430,11.198,10.920,10.656,10.425,10.198,9.963,9.747,9.572,9.408,9.207,8.965,8.715,8.479,8.247,8.002,
-7.747,7.487,7.210,6.895,6.546,6.200,5.886,5.589,5.267,4.910,4.562,4.262,3.992,3.694,3.335,2.934,
-2.527,2.125,1.722,1.324,.959,.645,.371,.101,-.205,-.554,-.927,-1.304,-1.694,-2.121,-2.584,-3.047,
--3.475,-3.855,-4.207,-4.578,-5.011,-5.507,-6.002,-6.436,-6.831,-7.261,-7.746,-8.220,-8.622,-8.974,-9.331,-9.701,
--10.058,-10.403,-10.760,-11.130,-11.499,-11.876,-12.275,-12.666,-13.006,-13.307,-13.636,-14.020,-14.418,-14.784,-15.125,-15.477,
--15.846,-16.208,-16.548,-16.879,-17.217,-17.561,-17.879,-18.155,-18.416,-18.710,-19.047,-19.379,-19.671,-19.946,-20.243,-20.551,
--20.847,-21.148,-21.487,-21.846,-22.177,-22.478,-22.784,-23.100,-23.396,-23.674,-23.967,-24.270,-24.533,-24.747,-24.964,-25.220,
--25.481,-25.709,-25.913,-26.118,-26.316,-26.503,-26.695,-26.898,-27.077,-27.210,-27.329,-27.460,-27.583,-27.657,-27.696,-27.753,
--27.858,-27.996,-28.125,-28.204,-28.217,-28.180,-28.122,-28.049,-27.959,-27.872,-27.823,-27.798,-27.733,-27.595,-27.415,-27.239,
--27.076,-26.922,-26.782,-26.649,-26.500,-26.334,-26.180,-26.047,-25.903,-25.727,-25.541,-25.370,-25.205,-25.038,-24.874,-24.700,
--24.475,-24.200,-23.936,-23.730,-23.551,-23.355,-23.143,-22.935,-22.718,-22.479,-22.245,-22.036,-21.824,-21.574,-21.308,-21.057,
--20.796,-20.483,-20.135,-19.812,-19.541,-19.304,-19.084,-18.878,-18.670,-18.436,-18.184,-17.938,-17.706,-17.475,-17.236,-16.991,
--16.742,-16.494,-16.247,-15.988,-15.701,-15.406,-15.141,-14.896,-14.624,-14.315,-14.017,-13.758,-13.506,-13.232,-12.959,-12.704,
--12.434,-12.135,-11.850,-11.611,-11.384,-11.134,-10.891,-10.681,-10.454,-10.143,-9.762,-9.384,-9.036,-8.700,-8.366,-8.046,
--7.738,-7.441,-7.168,-6.907,-6.617,-6.295,-5.992,-5.733,-5.466,-5.154,-4.841,-4.574,-4.320,-4.034,-3.738,-3.466,
--3.189,-2.890,-2.627,-2.427,-2.203,-1.876,-1.517,-1.237,-.989,-.647,-.228,.110,.291,.400,.550,.773,
-1.072,1.437,1.806,2.097,2.320,2.570,2.924,3.378,3.873,4.323,4.670,5.000,5.497,6.178,6.787,7.136,
-7.444,8.075,8.989,9.754,10.141,10.394,10.822,11.377,11.834,12.163,12.475,12.721,12.655,12.122,11.306,10.725,
-10.941,12.094,13.643,14.800,15.393,16.137,17.866,20.658,23.863,26.737,28.642,28.854,26.881,23.306,19.875,18.205,
-18.380,19.080,19.078,18.315,17.507,17.097,16.908,16.603,16.084,15.374,14.406,13.154,11.822,10.708,9.915,9.326,
-8.811,8.295,7.668,6.825,5.827,4.889,4.155,3.576,3.053,2.577,2.166,1.758,1.233,.485,-.545,-1.839,
--3.252,-4.548,-5.529,-6.109,-6.318,-6.328,-6.411,-6.695,-6.957,-6.844,-6.378,-6.048,-6.293,-7.066,-8.041,-9.062,
--10.162,-11.249,-12.061,-12.477,-12.689,-12.972,-13.409,-13.911,-14.430,-15.030,-15.783,-16.646,-17.488,-18.218,-18.874,-19.547,
--20.265,-20.986,-21.678,-22.337,-22.937,-23.467,-24.027,-24.753,-25.607,-26.377,-26.947,-27.453,-28.060,-28.705,-29.165,-29.354,
--29.410,-29.525,-29.779,-30.125,-30.444,-30.623,-30.633,-30.535,-30.396,-30.257,-30.187,-30.258,-30.447,-30.638,-30.772,-30.860,
--30.855,-30.674,-30.419,-30.366,-30.567,-30.666,-30.336,-29.734,-29.285,-29.123,-29.041,-28.937,-28.979,-29.297,-29.784,-30.287,
--30.764,-31.152,-31.281,-31.072,-30.656,-30.199,-29.728,-29.211,-28.685,-28.203,-27.752,-27.308,-26.888,-26.479,-26.000,-25.427,
--24.860,-24.382,-23.935,-23.425,-22.856,-22.290,-21.732,-21.151,-20.553,-19.948,-19.305,-18.615,-17.940,-17.324,-16.707,-16.005,
--15.244,-14.510,-13.822,-13.125,-12.391,-11.648,-10.928,-10.230,-9.544,-8.859,-8.164,-7.473,-6.815,-6.189,-5.547,-4.862,
--4.166,-3.499,-2.850,-2.198,-1.543,-.878,-.180,.515,1.112,1.596,2.112,2.801,3.596,4.282,4.746,5.065,
-5.364,5.664,5.928,6.167,6.433,6.747,7.071,7.353,7.578,7.776,7.985,8.211,8.424,8.607,8.776,8.950,
-9.122,9.284,9.457,9.671,9.929,10.198,10.443,10.639,10.795,10.942,11.106,11.270,11.398,11.497,11.617,11.783,
-11.978,12.194,12.450,12.730,12.955,13.076,13.140,13.243,13.433,13.704,14.037,14.388,14.657,14.752,14.692,14.587,
-14.543,14.605,14.790,15.090,15.442,15.755,15.981,16.136,16.253,16.351,16.452,16.584,16.753,16.939,17.131,17.334,
-17.530,17.674,17.765,17.868,18.058,18.341,18.666,18.997,19.331,19.658,19.940,20.149,20.293,20.402,20.492,20.573,
-20.662,20.746,20.756,20.631,20.438,20.368,20.546,20.873,21.106,21.099,20.910,20.682,20.500,20.373,20.284,20.197,
-20.063,19.875,19.692,19.579,19.537,19.514,19.453,19.311,19.079,18.799,18.540,18.328,18.142,17.996,17.954,18.020,
-18.087,18.049,17.921,17.768,17.601,17.410,17.239,17.135,17.044,16.892,16.715,16.621,16.616,16.548,16.568,16.565,
-16.593,16.618,16.556,16.419,16.290,16.153,15.909,15.571,15.269,15.046,14.818,14.596,14.544,14.711,14.899,14.951,
-14.999,15.253,15.653,15.974,16.195,16.485,16.844,16.991,16.711,16.141,15.608,15.322,15.279,15.323,15.227,14.850,
-14.341,14.058,14.151,14.305,14.081,13.481,12.962,12.860,12.978,12.866,12.382,11.813,11.459,11.257,10.871,10.081,
-8.989,7.867,6.912,6.165,5.576,5.068,4.548,3.941,3.242,2.515,1.828,1.212,.669,.187,-.262,-.687,
--1.053,-1.341,-1.650,-2.161,-2.961,-3.931,-4.882,-5.751,-6.632,-7.606,-8.627,-9.587,-10.449,-11.248,-12.015,-12.755,
--13.497,-14.287,-15.048,-15.531,-15.510,-15.056,-14.503,-14.122,-13.905,-13.718,-13.534,-13.392,-13.236,-12.965,-12.615,-12.343,
--12.216,-12.146,-12.046,-11.937,-11.871,-11.858,-11.889,-11.946,-11.966,-11.909,-11.847,-11.873,-11.922,-11.875,-11.769,-11.700,
--11.518,-10.964,-10.232,-9.980,-10.510,-11.257,-11.493,-11.358,-11.689,-12.861,-14.240,-14.935,-14.731,-14.124,-13.677,-13.564,
--13.591,-13.486,-13.195,-12.976,-13.123,-13.621,-14.191,-14.643,-15.002,-15.299,-15.496,-15.668,-15.978,-16.374,-16.579,-16.557,
--16.719,-17.406,-18.388,-19.171,-19.628,-20.041,-20.578,-21.088,-21.432,-21.719,-22.131,-22.693,-23.328,-24.003,-24.716,-25.444,
--26.151,-26.807,-27.400,-27.967,-28.589,-29.259,-29.795,-30.011,-29.942,-29.819,-29.842,-30.091,-30.617,-31.433,-32.417,-33.379,
--34.260,-35.141,-36.013,-36.714,-37.173,-37.578,-38.223,-39.237,-40.558,-42.062,-43.640,-45.180,-46.546,-47.606,-48.288,-48.684,
--49.038,-49.529,-50.032,-50.238,-50.056,-49.794,-49.850,-50.309,-50.914,-51.332,-51.383,-51.092,-50.686,-50.502,-50.766,-51.389,
--52.037,-52.407,-52.449,-52.345,-52.328,-52.506,-52.813,-53.137,-53.459,-53.862,-54.373,-54.903,-55.359,-55.746,-56.115,-56.454,
--56.725,-56.974,-57.323,-57.849,-58.496,-59.143,-59.699,-60.171,-60.636,-61.159,-61.727,-62.275,-62.783,-63.298,-63.858,-64.447,
--65.041,-65.663,-66.329,-67.016,-67.689,-68.343,-68.976,-69.575,-70.170,-70.832,-71.560,-72.235,-72.762,-73.223,-73.782,-74.473,
--75.188,-75.850,-76.500,-77.185,-77.879,-78.566,-79.301,-80.144,-81.069,-82.007,-82.936,-83.889,-84.889,-85.921,-86.945,-87.915,
--88.786,-89.537,-90.210,-90.896,-91.669,-92.527,-93.387,-94.167,-94.851,-95.465,-96.009,-96.477,-96.926,-97.399,-97.724,-97.555,
--96.808,-96.015,-95.978,-96.945,-98.294,-99.183,-99.416,-99.520,-100.026,-100.911,-101.774,-102.345,-102.682,-102.959,-103.255,-103.565,
--103.866,-104.099,-104.164,-104.005,-103.704,-103.422,-103.272,-103.283,-103.442,-103.701,-103.936,-104.010,-103.919,-103.817,-103.817,-103.841,
--103.727,-103.442,-103.075,-102.663,-102.159,-101.567,-100.972,-100.394,-99.719,-98.871,-97.949,-97.101,-96.320,-95.465,-94.428,-93.210,
--91.843,-90.370,-88.871,-87.431,-86.075,-84.805,-83.648,-82.610,-81.577,-80.379,-78.954,-77.364,-75.677,-73.917,-72.115,-70.309,
--68.497,-66.688,-64.989,-63.486,-62.027,-60.330,-58.404,-56.678,-55.555,-54.919,-54.274,-53.314,-52.185,-51.193,-50.421,-49.725,
--48.987,-48.267,-47.670,-47.125,-46.327,-44.976,-43.070,-40.901,-38.709,-36.469,-34.124,-31.928,-30.345,-29.577,-29.356,-29.239,
--28.995,-28.580,-27.827,-26.324,-23.707,-20.115,-16.324,-13.309,-11.528,-10.623,-9.908,-9.095,-8.418,-8.078,-7.821,-7.203,
--6.126,-4.899,-3.819,-2.873,-1.906,-.902,.016,.795,1.547,2.397,3.339,4.273,5.171,6.108,7.139,8.198,
-9.167,10.012,10.810,11.671,12.673,13.852,15.162,16.456,17.574,18.464,19.216,19.970,20.817,21.755,22.691,23.511,
-24.205,24.891,25.667,26.494,27.286,28.069,28.933,29.874,30.816,31.755,32.743,33.745,34.689,35.662,36.853,38.240,
-39.539,40.578,41.510,42.526,43.587,44.642,45.907,47.606,49.516,51.100,52.097,52.753,53.409,54.145,54.917,55.749,
-56.564,57.019,56.810,56.098,55.404,55.030,54.792,54.390,53.876,53.601,53.805,54.410,55.194,55.987,56.687,57.244,
-57.729,58.294,58.990,59.696,60.316,60.940,61.676,62.449,63.131,63.811,64.692,65.755,66.748,67.515,68.147,68.792,
-69.538,70.450,71.351,71.465,69.702,65.723,60.624,56.316,54.213,54.501,56.368,58.687,60.718,62.473,64.360,66.362,
-67.868,68.560,69.066,70.207,71.820,72.948,73.165,73.042,73.209,73.593,73.867,74.075,74.381,74.591,74.421,74.005,
-73.728,73.667,73.552,73.198,72.672,72.093,71.536,71.115,70.909,70.837,70.759,70.651,70.541,70.371,70.111,69.889,
-69.814,69.756,69.528,69.202,69.005,68.985,68.990,68.938,68.858,68.734,68.522,68.321,68.286,68.371,68.387,68.305,
-68.285,68.399,68.529,68.573,68.542,68.404,68.072,67.591,67.155,66.865,66.636,66.370,66.094,65.860,65.658,65.473,
-65.303,65.127,64.932,64.778,64.689,64.560,64.330,64.144,64.138,64.158,63.983,63.694,63.479,63.150,62.397,61.487,
-61.103,61.279,61.139,60.078,58.689,57.943,57.862,57.657,56.947,56.136,55.600,55.223,54.872,54.759,54.997,55.244,
-55.126,54.788,54.693,55.024,55.517,55.824,55.821,55.612,55.361,55.135,54.879,54.568,54.352,54.390,54.542,54.423,
-53.841,53.008,52.240,51.614,51.063,50.619,50.368,50.254,50.092,49.755,49.235,48.567,47.835,47.189,46.739,46.436,
-46.147,45.804,45.395,44.864,44.148,43.325,42.600,42.105,41.773,41.442,41.020,40.538,40.070,39.650,39.261,38.878,
-38.490,38.068,37.557,36.959,36.402,36.018,35.761,35.433,34.916,34.286,33.681,33.156,32.706,32.315,31.915,31.424,
-30.902,30.545,30.447,30.462,30.413,30.289,30.126,29.850,29.442,29.067,28.787,28.305,27.386,26.447,26.262,26.918,
-27.511,27.180,26.137,25.301,25.126,25.234,25.131,24.791,24.434,24.091,23.668,23.208,22.829,22.503,22.101,21.630,
-21.233,20.974,20.774,20.568,20.391,20.274,20.157,19.981,19.779,19.625,19.532,19.447,19.323,19.164,18.996,18.836,
-18.693,18.576,18.501,18.461,18.397,18.223,17.912,17.549,17.256,17.084,17.007,16.997,17.038,17.080,17.049,16.930,
-16.777,16.637,16.510,16.381,16.229,15.997,15.654,15.302,15.108,15.071,14.967,14.634,14.202,13.932,13.888,13.921,
-13.925,13.931,13.951,13.918,13.821,13.756,13.779,13.815,13.785,13.718,13.674,13.644,13.611,13.621,13.703,13.800,
-13.862,13.914,13.970,13.952,13.837,13.801,14.053,14.549,15.005,15.203,15.164,15.031,14.908,14.869,14.967,15.167,
-15.334,15.392,15.419,15.541,15.774,16.036,16.266,16.455,16.580,16.611,16.582,16.604,16.738,16.922,17.047,17.119,
-17.277,17.615,18.005,18.174,17.968,17.503,17.041,16.744,16.605,16.554,16.533,16.481,16.336,16.104,15.851,15.601,
-15.300,14.932,14.587,14.363,14.239,14.122,13.986,13.880,13.803,13.675,13.442,13.148,12.865,12.604,12.344,12.094,
-11.882,11.702,11.512,11.291,11.055,10.818,10.578,10.342,10.134,9.956,9.772,9.544,9.281,9.024,8.791,8.554,
-8.282,7.980,7.679,7.390,7.096,6.782,6.462,6.159,5.870,5.565,5.223,4.864,4.523,4.209,3.888,3.523,
-3.117,2.703,2.312,1.943,1.584,1.231,.899,.596,.309,.012,-.305,-.640,-.999,-1.403,-1.858,-2.337,
--2.799,-3.220,-3.600,-3.949,-4.300,-4.705,-5.182,-5.680,-6.125,-6.517,-6.932,-7.406,-7.883,-8.294,-8.655,-9.029,
--9.431,-9.817,-10.166,-10.500,-10.848,-11.216,-11.604,-11.995,-12.352,-12.652,-12.933,-13.260,-13.640,-14.013,-14.339,-14.649,
--14.994,-15.372,-15.753,-16.122,-16.487,-16.852,-17.201,-17.516,-17.795,-18.066,-18.368,-18.708,-19.041,-19.324,-19.570,-19.831,
--20.132,-20.456,-20.795,-21.149,-21.498,-21.817,-22.117,-22.431,-22.755,-23.053,-23.328,-23.615,-23.915,-24.180,-24.401,-24.633,
--24.906,-25.173,-25.390,-25.581,-25.786,-25.995,-26.180,-26.355,-26.541,-26.714,-26.832,-26.910,-26.997,-27.102,-27.196,-27.274,
--27.374,-27.515,-27.672,-27.797,-27.865,-27.877,-27.850,-27.802,-27.733,-27.647,-27.571,-27.536,-27.524,-27.465,-27.315,-27.106,
--26.902,-26.732,-26.591,-26.466,-26.337,-26.184,-26.015,-25.859,-25.721,-25.568,-25.387,-25.206,-25.048,-24.894,-24.720,-24.535,
--24.339,-24.109,-23.849,-23.614,-23.440,-23.288,-23.104,-22.897,-22.704,-22.513,-22.289,-22.046,-21.820,-21.611,-21.387,-21.144,
--20.894,-20.621,-20.301,-19.957,-19.641,-19.370,-19.127,-18.915,-18.742,-18.577,-18.367,-18.115,-17.874,-17.667,-17.458,-17.215,
--16.959,-16.720,-16.504,-16.283,-16.036,-15.762,-15.481,-15.213,-14.950,-14.669,-14.374,-14.096,-13.843,-13.580,-13.285,-12.981,
--12.697,-12.419,-12.131,-11.853,-11.606,-11.373,-11.133,-10.892,-10.656,-10.397,-10.086,-9.735,-9.376,-9.022,-8.690,-8.401,
--8.136,-7.843,-7.515,-7.215,-6.972,-6.730,-6.442,-6.146,-5.879,-5.597,-5.263,-4.937,-4.688,-4.475,-4.211,-3.900,
--3.609,-3.349,-3.087,-2.837,-2.621,-2.384,-2.071,-1.742,-1.490,-1.267,-.944,-.536,-.209,-.048,.042,.186,
-.410,.704,1.074,1.484,1.842,2.115,2.382,2.722,3.134,3.568,3.987,4.375,4.772,5.265,5.866,6.424,
-6.820,7.201,7.838,8.705,9.452,9.867,10.161,10.628,11.235,11.735,12.051,12.271,12.340,12.023,11.295,10.598,
-10.574,11.525,13.125,14.673,15.723,16.523,17.764,19.851,22.518,25.186,27.396,28.686,28.369,26.056,22.528,19.565,
-18.472,18.938,19.635,19.740,19.478,19.304,19.141,18.672,17.951,17.288,16.685,15.794,14.472,13.045,11.920,11.172,
-10.624,10.131,9.601,8.913,8.017,7.057,6.224,5.543,4.911,4.314,3.820,3.405,2.925,2.268,1.411,.338,
--.948,-2.328,-3.584,-4.545,-5.150,-5.424,-5.525,-5.731,-6.182,-6.629,-6.670,-6.306,-6.022,-6.254,-6.950,-7.804,
--8.698,-9.679,-10.645,-11.338,-11.669,-11.852,-12.150,-12.621,-13.163,-13.720,-14.352,-15.130,-16.035,-16.960,-17.814,-18.593,
--19.335,-20.054,-20.743,-21.420,-22.097,-22.718,-23.237,-23.732,-24.341,-25.051,-25.684,-26.149,-26.568,-27.089,-27.669,-28.147,
--28.463,-28.699,-28.966,-29.309,-29.698,-30.041,-30.243,-30.301,-30.304,-30.319,-30.327,-30.298,-30.246,-30.181,-30.111,-30.096,
--30.172,-30.209,-30.035,-29.757,-29.733,-30.079,-30.429,-30.381,-30.017,-29.708,-29.560,-29.365,-29.068,-28.942,-29.223,-29.837,
--30.550,-31.187,-31.605,-31.657,-31.328,-30.801,-30.265,-29.746,-29.198,-28.641,-28.125,-27.642,-27.155,-26.671,-26.196,-25.695,
--25.142,-24.574,-24.039,-23.539,-23.060,-22.601,-22.135,-21.618,-21.053,-20.493,-19.944,-19.341,-18.655,-17.951,-17.295,-16.666,
--16.010,-15.321,-14.622,-13.912,-13.187,-12.462,-11.740,-10.994,-10.231,-9.502,-8.825,-8.162,-7.488,-6.849,-6.274,-5.716,
--5.112,-4.465,-3.819,-3.178,-2.517,-1.831,-1.125,-.402,.306,.926,1.449,1.978,2.631,3.377,4.068,4.600,
-5.005,5.372,5.732,6.056,6.320,6.547,6.777,7.023,7.258,7.466,7.673,7.917,8.181,8.408,8.578,8.740,
-8.938,9.156,9.357,9.543,9.742,9.971,10.219,10.462,10.671,10.829,10.953,11.075,11.201,11.309,11.398,11.504,
-11.653,11.838,12.048,12.284,12.514,12.671,12.729,12.749,12.829,13.017,13.309,13.669,14.018,14.243,14.286,14.204,
-14.123,14.131,14.254,14.487,14.803,15.134,15.397,15.553,15.613,15.608,15.578,15.584,15.681,15.869,16.110,16.373,
-16.653,16.934,17.175,17.362,17.531,17.740,18.018,18.351,18.706,19.043,19.324,19.523,19.651,19.744,19.835,19.939,
-20.075,20.272,20.522,20.729,20.778,20.674,20.565,20.580,20.660,20.638,20.446,20.191,20.004,19.915,19.873,19.828,
-19.739,19.568,19.319,19.067,18.905,18.852,18.855,18.837,18.752,18.613,18.493,18.465,18.525,18.598,18.629,18.604,
-18.503,18.297,18.028,17.803,17.661,17.525,17.332,17.132,16.983,16.848,16.680,16.540,16.508,16.548,16.599,16.656,
-16.697,16.757,16.782,16.699,16.547,16.399,16.208,15.896,15.531,15.273,15.138,15.015,14.902,14.923,15.069,15.142,
-15.060,15.008,15.155,15.392,15.530,15.611,15.794,16.032,16.081,15.828,15.421,15.072,14.882,14.837,14.821,14.628,
-14.148,13.587,13.297,13.328,13.337,13.060,12.691,12.596,12.771,12.814,12.439,11.808,11.298,11.057,10.889,10.489,
-9.718,8.669,7.559,6.568,5.761,5.105,4.528,3.943,3.264,2.467,1.636,.908,.360,-.052,-.428,-.836,
--1.263,-1.647,-1.973,-2.335,-2.900,-3.740,-4.728,-5.652,-6.451,-7.284,-8.324,-9.527,-10.672,-11.602,-12.342,-13.002,
--13.661,-14.379,-15.209,-16.067,-16.655,-16.681,-16.168,-15.467,-14.918,-14.595,-14.409,-14.291,-14.182,-13.961,-13.572,-13.149,
--12.881,-12.773,-12.670,-12.502,-12.357,-12.316,-12.355,-12.415,-12.445,-12.393,-12.262,-12.173,-12.221,-12.292,-12.206,-12.002,
--11.836,-11.614,-11.090,-10.414,-10.171,-10.594,-11.101,-11.058,-10.767,-11.179,-12.633,-14.329,-15.198,-14.970,-14.232,-13.700,
--13.633,-13.787,-13.778,-13.515,-13.315,-13.520,-14.051,-14.514,-14.721,-14.850,-15.081,-15.373,-15.665,-16.007,-16.343,-16.459,
--16.364,-16.467,-17.100,-18.048,-18.855,-19.431,-20.044,-20.784,-21.401,-21.711,-21.875,-22.178,-22.726,-23.436,-24.197,-24.936,
--25.631,-26.317,-27.021,-27.698,-28.304,-28.871,-29.421,-29.838,-29.979,-29.906,-29.850,-29.991,-30.360,-30.969,-31.829,-32.842,
--33.824,-34.693,-35.500,-36.247,-36.862,-37.398,-38.102,-39.172,-40.540,-41.991,-43.401,-44.772,-46.111,-47.352,-48.357,-48.983,
--49.246,-49.422,-49.810,-50.333,-50.543,-50.182,-49.606,-49.446,-49.906,-50.579,-50.940,-50.854,-50.571,-50.410,-50.545,-50.970,
--51.533,-52.012,-52.257,-52.290,-52.268,-52.336,-52.531,-52.806,-53.124,-53.501,-53.951,-54.433,-54.874,-55.254,-55.614,-55.977,
--56.305,-56.564,-56.804,-57.128,-57.606,-58.225,-58.903,-59.552,-60.127,-60.660,-61.206,-61.776,-62.335,-62.869,-63.406,-63.962,
--64.528,-65.113,-65.750,-66.440,-67.130,-67.787,-68.425,-69.049,-69.643,-70.240,-70.926,-71.703,-72.435,-73.003,-73.467,-73.982,
--74.598,-75.250,-75.889,-76.539,-77.200,-77.836,-78.465,-79.163,-79.969,-80.834,-81.719,-82.657,-83.680,-84.744,-85.777,-86.754,
--87.685,-88.551,-89.325,-90.035,-90.771,-91.599,-92.496,-93.369,-94.143,-94.818,-95.426,-95.951,-96.371,-96.754,-97.193,-97.568,
--97.521,-96.896,-96.160,-96.112,-97.033,-98.315,-99.109,-99.244,-99.289,-99.791,-100.695,-101.563,-102.132,-102.483,-102.794,-103.123,
--103.443,-103.733,-103.968,-104.079,-104.008,-103.778,-103.496,-103.285,-103.234,-103.373,-103.639,-103.880,-103.950,-103.846,-103.709,-103.661,
--103.663,-103.584,-103.362,-103.038,-102.648,-102.182,-101.656,-101.131,-100.604,-99.968,-99.164,-98.299,-97.509,-96.750,-95.811,-94.549,
--93.033,-91.450,-89.953,-88.584,-87.286,-85.965,-84.621,-83.388,-82.381,-81.489,-80.427,-79.008,-77.313,-75.542,-73.794,-72.026,
--70.166,-68.215,-66.291,-64.584,-63.180,-61.909,-60.468,-58.788,-57.180,-55.991,-55.188,-54.407,-53.397,-52.281,-51.332,-50.608,
--49.887,-48.954,-47.885,-46.988,-46.430,-45.979,-45.178,-43.788,-41.930,-39.794,-37.387,-34.738,-32.190,-30.251,-29.127,-28.574,
--28.255,-28.058,-27.957,-27.670,-26.616,-24.296,-20.764,-16.765,-13.325,-11.051,-9.773,-8.919,-8.182,-7.686,-7.521,-7.389,
--6.858,-5.844,-4.651,-3.578,-2.646,-1.728,-.771,.172,1.063,1.930,2.833,3.783,4.742,5.680,6.627,7.639,
-8.705,9.723,10.602,11.374,12.185,13.175,14.364,15.647,16.891,18.012,18.982,19.800,20.513,21.243,22.100,23.047,
-23.927,24.671,25.395,26.206,27.035,27.784,28.540,29.472,30.549,31.568,32.460,33.366,34.383,35.461,36.577,37.806,
-39.106,40.243,41.078,41.761,42.522,43.432,44.547,46.076,48.119,50.333,52.138,53.258,53.885,54.331,54.765,55.281,
-55.952,56.682,57.163,57.146,56.701,56.129,55.644,55.199,54.599,53.782,53.023,52.782,53.276,54.217,55.091,55.671,
-56.151,56.791,57.575,58.300,58.871,59.400,60.041,60.792,61.492,62.037,62.576,63.397,64.563,65.757,66.642,67.319,
-68.215,69.493,70.712,71.132,70.217,67.807,64.071,59.614,55.626,53.541,54.136,56.855,60.200,62.975,65.078,66.970,
-68.634,69.518,69.530,69.519,70.345,71.794,72.916,73.270,73.295,73.487,73.780,73.936,74.037,74.253,74.450,74.399,
-74.174,74.028,73.973,73.779,73.335,72.765,72.224,71.773,71.443,71.235,71.091,70.961,70.859,70.784,70.660,70.460,
-70.289,70.214,70.126,69.909,69.640,69.469,69.384,69.269,69.117,69.000,68.905,68.774,68.653,68.628,68.659,68.634,
-68.568,68.576,68.677,68.785,68.850,68.857,68.733,68.410,67.973,67.586,67.287,66.993,66.667,66.355,66.084,65.865,
-65.725,65.626,65.445,65.170,64.987,64.986,64.958,64.737,64.513,64.509,64.539,64.312,63.968,63.774,63.450,62.510,
-61.307,60.892,61.515,62.026,61.341,59.861,58.770,58.374,57.986,57.207,56.428,56.006,55.729,55.365,55.129,55.252,
-55.503,55.515,55.314,55.223,55.399,55.720,56.008,56.152,56.094,55.862,55.548,55.190,54.772,54.402,54.288,54.422,
-54.463,54.086,53.337,52.522,51.858,51.370,51.031,50.808,50.622,50.383,50.036,49.520,48.769,47.860,47.058,46.585,
-46.373,46.176,45.862,45.467,45.009,44.418,43.695,42.995,42.473,42.114,41.762,41.294,40.732,40.197,39.771,39.436,
-39.130,38.811,38.446,37.977,37.406,36.870,36.509,36.267,35.919,35.345,34.667,34.064,33.582,33.176,32.800,32.379,
-31.834,31.235,30.812,30.682,30.694,30.649,30.548,30.459,30.294,29.938,29.488,29.075,28.534,27.630,26.611,26.129,
-26.427,26.942,26.971,26.499,26.053,25.936,25.946,25.796,25.446,24.959,24.346,23.701,23.244,23.044,22.864,22.438,
-21.831,21.337,21.095,20.972,20.808,20.608,20.447,20.316,20.147,19.928,19.711,19.548,19.450,19.406,19.374,19.296,
-19.145,18.959,18.810,18.732,18.685,18.583,18.367,18.052,17.714,17.434,17.248,17.160,17.159,17.209,17.242,17.210,
-17.124,17.020,16.887,16.700,16.481,16.263,16.009,15.681,15.370,15.240,15.276,15.230,14.920,14.465,14.126,13.981,
-13.914,13.859,13.859,13.910,13.920,13.872,13.872,13.964,14.043,14.010,13.908,13.819,13.745,13.666,13.637,13.707,
-13.819,13.894,13.935,13.974,13.962,13.871,13.830,14.024,14.451,14.911,15.229,15.377,15.379,15.242,15.047,14.968,
-15.098,15.327,15.466,15.471,15.455,15.528,15.701,15.934,16.196,16.438,16.593,16.640,16.662,16.771,16.968,17.132,
-17.182,17.217,17.419,17.791,18.100,18.114,17.839,17.460,17.107,16.785,16.510,16.350,16.318,16.298,16.174,15.946,
-15.678,15.387,15.055,14.711,14.421,14.204,14.032,13.894,13.805,13.744,13.652,13.501,13.330,13.177,13.018,12.805,
-12.543,12.285,12.067,11.869,11.650,11.394,11.122,10.858,10.625,10.425,10.238,10.025,9.764,9.479,9.219,8.998,
-8.777,8.509,8.192,7.865,7.560,7.279,7.007,6.738,6.471,6.196,5.896,5.556,5.184,4.807,4.452,4.115,
-3.764,3.376,2.971,2.585,2.230,1.881,1.517,1.145,.788,.456,.146,-.155,-.469,-.821,-1.231,-1.684,
--2.141,-2.570,-2.968,-3.342,-3.696,-4.044,-4.429,-4.877,-5.359,-5.809,-6.213,-6.626,-7.086,-7.558,-7.985,-8.376,
--8.779,-9.201,-9.595,-9.937,-10.257,-10.599,-10.975,-11.363,-11.730,-12.046,-12.311,-12.580,-12.909,-13.289,-13.649,-13.957,
--14.252,-14.582,-14.948,-15.324,-15.702,-16.081,-16.443,-16.773,-17.075,-17.368,-17.669,-17.993,-18.343,-18.683,-18.970,-19.205,
--19.452,-19.764,-20.129,-20.504,-20.858,-21.178,-21.468,-21.756,-22.072,-22.406,-22.713,-22.989,-23.269,-23.564,-23.838,-24.080,
--24.331,-24.610,-24.870,-25.068,-25.245,-25.453,-25.675,-25.861,-26.014,-26.176,-26.340,-26.460,-26.529,-26.594,-26.686,-26.792,
--26.902,-27.030,-27.178,-27.315,-27.412,-27.464,-27.480,-27.465,-27.427,-27.377,-27.322,-27.274,-27.248,-27.231,-27.170,-27.026,
--26.821,-26.616,-26.450,-26.318,-26.197,-26.057,-25.884,-25.694,-25.524,-25.379,-25.227,-25.049,-24.871,-24.713,-24.554,-24.367,
--24.164,-23.964,-23.754,-23.535,-23.344,-23.201,-23.062,-22.874,-22.660,-22.472,-22.300,-22.092,-21.843,-21.605,-21.400,-21.198,
--20.968,-20.707,-20.413,-20.092,-19.777,-19.499,-19.245,-18.991,-18.762,-18.596,-18.465,-18.295,-18.072,-17.855,-17.673,-17.479,
--17.235,-16.971,-16.737,-16.533,-16.320,-16.082,-15.827,-15.564,-15.294,-15.013,-14.718,-14.415,-14.127,-13.867,-13.613,-13.333,
--13.030,-12.725,-12.429,-12.134,-11.842,-11.570,-11.327,-11.100,-10.861,-10.589,-10.285,-9.973,-9.673,-9.373,-9.054,-8.747,
--8.499,-8.284,-8.016,-7.672,-7.338,-7.076,-6.843,-6.577,-6.301,-6.046,-5.767,-5.421,-5.080,-4.836,-4.646,-4.394,
--4.067,-3.756,-3.507,-3.276,-3.037,-2.806,-2.562,-2.265,-1.957,-1.724,-1.543,-1.295,-.956,-.639,-.431,-.280,
--.102,.121,.395,.748,1.160,1.546,1.873,2.202,2.576,2.957,3.320,3.712,4.159,4.615,5.054,5.517,
-6.009,6.476,6.945,7.554,8.326,9.062,9.594,10.030,10.577,11.204,11.688,11.922,11.963,11.785,11.280,10.596,
-10.269,10.792,12.103,13.638,14.918,16.016,17.397,19.376,21.766,24.108,26.098,27.615,28.304,27.517,25.045,21.829,
-19.467,18.811,19.284,19.780,19.904,19.999,20.217,20.172,19.598,18.834,18.308,17.881,17.062,15.741,14.326,13.205,
-12.401,11.787,11.307,10.865,10.248,9.360,8.377,7.524,6.813,6.135,5.477,4.891,4.337,3.712,2.985,2.152,
-1.137,-.117,-1.476,-2.671,-3.514,-3.965,-4.112,-4.199,-4.575,-5.349,-6.151,-6.477,-6.304,-6.139,-6.398,-7.005,
--7.677,-8.365,-9.180,-10.046,-10.693,-10.989,-11.092,-11.264,-11.637,-12.193,-12.870,-13.638,-14.500,-15.446,-16.429,-17.385,
--18.281,-19.111,-19.854,-20.511,-21.140,-21.794,-22.434,-22.986,-23.483,-24.037,-24.651,-25.194,-25.606,-26.001,-26.494,-27.040,
--27.511,-27.873,-28.191,-28.527,-28.897,-29.284,-29.623,-29.845,-29.958,-30.046,-30.151,-30.210,-30.152,-29.974,-29.727,-29.498,
--29.411,-29.503,-29.587,-29.437,-29.153,-29.128,-29.534,-30.036,-30.211,-30.070,-29.906,-29.790,-29.526,-29.095,-28.815,-29.005,
--29.667,-30.568,-31.438,-32.018,-32.104,-31.711,-31.084,-30.470,-29.927,-29.392,-28.844,-28.296,-27.736,-27.148,-26.565,-26.024,
--25.510,-24.978,-24.408,-23.822,-23.257,-22.751,-22.297,-21.840,-21.330,-20.795,-20.290,-19.797,-19.234,-18.567,-17.854,-17.162,
--16.516,-15.914,-15.333,-14.714,-14.010,-13.260,-12.540,-11.844,-11.097,-10.295,-9.535,-8.870,-8.243,-7.603,-6.998,-6.478,
--5.990,-5.438,-4.809,-4.155,-3.503,-2.832,-2.129,-1.410,-.692,-.001,.632,1.205,1.776,2.414,3.119,3.819,
-4.440,4.957,5.401,5.803,6.156,6.429,6.622,6.793,7.000,7.237,7.458,7.665,7.898,8.157,8.388,8.571,
-8.758,8.992,9.248,9.473,9.660,9.839,10.032,10.243,10.468,10.680,10.838,10.935,11.007,11.097,11.208,11.327,
-11.448,11.571,11.695,11.832,11.995,12.163,12.284,12.337,12.373,12.472,12.680,12.982,13.306,13.544,13.620,13.564,
-13.492,13.506,13.627,13.824,14.069,14.337,14.586,14.774,14.878,14.885,14.792,14.656,14.593,14.696,14.952,15.276,
-15.601,15.910,16.204,16.467,16.690,16.891,17.112,17.390,17.735,18.119,18.492,18.814,19.075,19.285,19.464,19.620,
-19.759,19.902,20.098,20.371,20.656,20.822,20.805,20.679,20.548,20.402,20.163,19.836,19.543,19.377,19.313,19.272,
-19.213,19.110,18.926,18.657,18.381,18.206,18.181,18.273,18.406,18.517,18.588,18.659,18.780,18.931,19.035,19.034,
-18.916,18.681,18.349,18.006,17.755,17.587,17.399,17.147,16.914,16.766,16.657,16.542,16.475,16.511,16.599,16.724,
-16.810,16.881,16.943,16.928,16.788,16.588,16.402,16.191,15.905,15.634,15.499,15.465,15.412,15.339,15.328,15.346,
-15.271,15.128,15.081,15.172,15.250,15.233,15.226,15.299,15.347,15.295,15.246,15.264,15.194,14.901,14.547,14.366,
-14.276,14.000,13.528,13.151,13.003,12.887,12.664,12.524,12.650,12.827,12.645,12.019,11.275,10.743,10.442,10.182,
-9.786,9.174,8.353,7.421,6.521,5.736,5.046,4.373,3.636,2.770,1.792,.857,.170,-.211,-.441,-.730,
--1.150,-1.622,-2.062,-2.477,-2.970,-3.663,-4.583,-5.596,-6.499,-7.250,-8.051,-9.131,-10.460,-11.742,-12.710,-13.347,
--13.811,-14.272,-14.859,-15.647,-16.544,-17.229,-17.370,-16.942,-16.255,-15.656,-15.287,-15.124,-15.091,-15.053,-14.846,-14.452,
--14.055,-13.825,-13.706,-13.534,-13.300,-13.131,-13.069,-13.027,-12.956,-12.878,-12.791,-12.675,-12.595,-12.620,-12.637,-12.459,
--12.121,-11.829,-11.600,-11.252,-10.833,-10.690,-10.895,-10.960,-10.534,-10.145,-10.734,-12.450,-14.326,-15.261,-15.041,-14.310,
--13.797,-13.765,-13.987,-14.099,-14.007,-13.988,-14.313,-14.833,-15.146,-15.126,-15.053,-15.177,-15.456,-15.781,-16.143,-16.447,
--16.465,-16.219,-16.150,-16.628,-17.477,-18.276,-18.974,-19.849,-20.929,-21.818,-22.193,-22.200,-22.264,-22.680,-23.448,-24.376,
--25.248,-25.977,-26.642,-27.338,-28.023,-28.599,-29.077,-29.528,-29.903,-30.077,-30.068,-30.070,-30.256,-30.674,-31.338,-32.240,
--33.256,-34.199,-35.005,-35.753,-36.491,-37.207,-37.998,-39.068,-40.471,-41.986,-43.365,-44.584,-45.776,-47.006,-48.207,-49.226,
--49.891,-50.159,-50.270,-50.555,-50.982,-51.072,-50.506,-49.663,-49.287,-49.644,-50.266,-50.569,-50.477,-50.335,-50.425,-50.740,
--51.150,-51.558,-51.904,-52.137,-52.258,-52.332,-52.433,-52.596,-52.828,-53.143,-53.539,-53.973,-54.383,-54.746,-55.096,-55.463,
--55.825,-56.138,-56.395,-56.643,-56.949,-57.370,-57.936,-58.621,-59.336,-59.998,-60.609,-61.224,-61.858,-62.458,-62.986,-63.470,
--63.966,-64.514,-65.135,-65.827,-66.541,-67.209,-67.818,-68.415,-69.023,-69.622,-70.226,-70.906,-71.678,-72.443,-73.099,-73.657,
--74.198,-74.762,-75.352,-75.991,-76.676,-77.335,-77.908,-78.462,-79.121,-79.898,-80.707,-81.524,-82.435,-83.486,-84.594,-85.642,
--86.599,-87.495,-88.340,-89.127,-89.886,-90.676,-91.527,-92.416,-93.273,-94.036,-94.691,-95.266,-95.770,-96.192,-96.580,-97.015,
--97.418,-97.478,-97.006,-96.366,-96.278,-97.052,-98.181,-98.902,-99.047,-99.131,-99.640,-100.506,-101.324,-101.871,-102.236,-102.579,
--102.938,-103.277,-103.573,-103.815,-103.968,-103.984,-103.843,-103.584,-103.322,-103.203,-103.307,-103.572,-103.830,-103.930,-103.857,-103.718,
--103.621,-103.569,-103.476,-103.274,-102.969,-102.603,-102.197,-101.762,-101.308,-100.802,-100.163,-99.359,-98.488,-97.661,-96.825,-95.775,
--94.390,-92.784,-91.202,-89.800,-88.556,-87.326,-85.994,-84.602,-83.343,-82.352,-81.482,-80.377,-78.832,-77.002,-75.207,-73.563,
--71.914,-70.076,-68.078,-66.150,-64.516,-63.201,-62.001,-60.682,-59.227,-57.853,-56.734,-55.777,-54.732,-53.512,-52.307,-51.360,
--50.672,-49.962,-48.933,-47.605,-46.351,-45.534,-45.101,-44.599,-43.641,-42.219,-40.516,-38.574,-36.343,-33.980,-31.858,-30.228,
--29.051,-28.199,-27.658,-27.395,-27.095,-26.179,-24.165,-21.062,-17.447,-14.126,-11.602,-9.839,-8.548,-7.621,-7.140,-7.021,
--6.879,-6.344,-5.402,-4.306,-3.264,-2.316,-1.426,-.557,.346,1.313,2.316,3.301,4.261,5.216,6.162,7.102,
-8.092,9.169,10.248,11.188,11.970,12.759,13.730,14.893,16.115,17.283,18.386,19.429,20.349,21.099,21.773,22.535,
-23.419,24.295,25.084,25.877,26.755,27.618,28.367,29.143,30.164,31.371,32.471,33.347,34.192,35.191,36.285,37.354,
-38.410,39.464,40.396,41.120,41.751,42.481,43.423,44.703,46.513,48.816,51.131,52.872,53.883,54.466,54.952,55.440,
-55.927,56.430,56.932,57.328,57.491,57.349,56.923,56.363,55.824,55.231,54.343,53.231,52.494,52.679,53.583,54.499,
-55.109,55.741,56.688,57.688,58.321,58.595,58.863,59.335,59.920,60.457,60.905,61.376,62.081,63.122,64.292,65.286,
-66.195,67.498,69.266,70.669,70.640,68.935,66.145,62.804,59.107,55.646,53.785,54.655,57.885,61.824,65.074,67.413,
-69.172,70.270,70.367,69.766,69.486,70.220,71.586,72.703,73.235,73.505,73.781,73.940,73.884,73.842,74.023,74.275,
-74.333,74.226,74.171,74.171,73.998,73.536,72.946,72.454,72.121,71.875,71.635,71.386,71.173,71.038,70.958,70.861,
-70.723,70.588,70.473,70.334,70.164,70.029,69.953,69.844,69.647,69.447,69.342,69.290,69.196,69.060,68.952,68.902,
-68.899,68.946,69.025,69.081,69.099,69.124,69.129,68.992,68.680,68.329,68.045,67.761,67.399,67.028,66.723,66.446,
-66.184,66.031,65.970,65.800,65.475,65.253,65.281,65.298,65.071,64.830,64.855,64.919,64.672,64.299,64.125,63.765,
-62.593,61.082,60.654,61.740,62.906,62.579,60.967,59.470,58.720,58.178,57.405,56.698,56.338,56.073,55.671,55.380,
-55.470,55.754,55.896,55.877,55.869,55.904,55.943,56.046,56.230,56.335,56.212,55.923,55.578,55.164,54.704,54.410,
-54.427,54.538,54.355,53.752,52.959,52.258,51.764,51.440,51.194,50.933,50.609,50.211,49.673,48.894,47.935,47.078,
-46.568,46.345,46.155,45.856,45.488,45.093,44.614,44.018,43.386,42.827,42.361,41.928,41.464,40.962,40.471,40.043,
-39.691,39.391,39.112,38.812,38.428,37.952,37.492,37.164,36.905,36.515,35.907,35.214,34.607,34.121,33.714,33.355,
-32.969,32.437,31.785,31.239,30.960,30.849,30.744,30.673,30.712,30.700,30.386,29.792,29.155,28.525,27.750,26.923,
-26.501,26.746,27.283,27.474,27.120,26.560,26.179,26.056,26.023,25.854,25.358,24.533,23.693,23.232,23.185,23.143,
-22.727,22.020,21.418,21.151,21.099,21.030,20.860,20.643,20.439,20.247,20.035,19.779,19.509,19.318,19.278,19.341,
-19.359,19.249,19.076,18.956,18.903,18.833,18.689,18.494,18.293,18.078,17.830,17.584,17.425,17.395,17.439,17.450,
-17.384,17.277,17.165,17.017,16.790,16.508,16.231,15.966,15.691,15.459,15.368,15.397,15.360,15.120,14.754,14.430,
-14.196,13.998,13.850,13.819,13.866,13.876,13.842,13.893,14.076,14.245,14.254,14.130,13.986,13.864,13.764,13.736,
-13.814,13.927,13.978,13.975,13.995,14.032,14.027,14.001,14.066,14.276,14.582,14.922,15.249,15.462,15.440,15.225,
-15.063,15.161,15.452,15.673,15.667,15.518,15.411,15.445,15.609,15.858,16.139,16.380,16.518,16.582,16.682,16.874,
-17.072,17.168,17.208,17.359,17.672,17.987,18.145,18.168,18.149,18.026,17.646,17.053,16.531,16.306,16.290,16.230,
-16.012,15.723,15.458,15.200,14.893,14.543,14.219,13.976,13.828,13.757,13.730,13.707,13.667,13.617,13.557,13.454,
-13.272,13.014,12.735,12.479,12.240,11.975,11.664,11.339,11.045,10.803,10.599,10.403,10.182,9.920,9.636,9.375,
-9.161,8.961,8.721,8.421,8.088,7.761,7.466,7.210,6.979,6.745,6.477,6.171,5.833,5.471,5.096,4.732,
-4.395,4.063,3.704,3.314,2.920,2.539,2.152,1.740,1.310,.894,.519,.190,-.111,-.416,-.759,-1.148,
--1.562,-1.970,-2.359,-2.735,-3.102,-3.464,-3.826,-4.212,-4.639,-5.088,-5.523,-5.932,-6.349,-6.804,-7.278,-7.733,
--8.166,-8.595,-9.016,-9.392,-9.713,-10.021,-10.363,-10.744,-11.128,-11.474,-11.761,-12.005,-12.261,-12.581,-12.951,-13.312,
--13.634,-13.948,-14.282,-14.628,-14.975,-15.331,-15.695,-16.034,-16.334,-16.621,-16.931,-17.265,-17.611,-17.968,-18.318,-18.616,
--18.858,-19.111,-19.445,-19.844,-20.236,-20.572,-20.858,-21.128,-21.415,-21.739,-22.082,-22.400,-22.677,-22.944,-23.227,-23.508,
--23.770,-24.034,-24.312,-24.563,-24.754,-24.927,-25.135,-25.360,-25.540,-25.671,-25.807,-25.964,-26.098,-26.186,-26.260,-26.353,
--26.464,-26.586,-26.721,-26.851,-26.948,-27.005,-27.042,-27.064,-27.060,-27.032,-27.002,-26.978,-26.950,-26.915,-26.876,-26.814,
--26.698,-26.530,-26.352,-26.195,-26.058,-25.921,-25.761,-25.569,-25.365,-25.185,-25.040,-24.896,-24.725,-24.545,-24.380,-24.215,
--24.022,-23.812,-23.614,-23.427,-23.243,-23.079,-22.950,-22.815,-22.629,-22.414,-22.225,-22.056,-21.853,-21.607,-21.373,-21.184,
--21.004,-20.785,-20.517,-20.214,-19.903,-19.622,-19.388,-19.164,-18.911,-18.660,-18.474,-18.345,-18.201,-18.013,-17.824,-17.659,
--17.476,-17.241,-16.992,-16.772,-16.568,-16.345,-16.101,-15.857,-15.615,-15.359,-15.085,-14.791,-14.476,-14.161,-13.883,-13.648,
--13.414,-13.146,-12.856,-12.564,-12.264,-11.945,-11.627,-11.348,-11.112,-10.872,-10.587,-10.268,-9.968,-9.714,-9.472,-9.200,
--8.920,-8.687,-8.491,-8.253,-7.939,-7.610,-7.324,-7.052,-6.755,-6.466,-6.221,-5.966,-5.639,-5.291,-5.019,-4.808,
--4.551,-4.228,-3.927,-3.694,-3.472,-3.216,-2.956,-2.712,-2.449,-2.165,-1.923,-1.739,-1.541,-1.278,-.994,-.747,
--.529,-.306,-.070,.197,.526,.899,1.256,1.596,1.982,2.410,2.789,3.104,3.474,3.961,4.455,4.853,
-5.226,5.692,6.216,6.710,7.223,7.874,8.618,9.298,9.884,10.484,11.098,11.547,11.700,11.580,11.247,10.751,
-10.323,10.389,11.178,12.415,13.634,14.761,16.209,18.311,20.840,23.207,25.050,26.456,27.523,27.872,26.884,24.540,
-21.818,19.977,19.424,19.532,19.591,19.590,19.866,20.308,20.402,19.980,19.465,19.206,18.957,18.262,17.101,15.846,
-14.749,13.800,13.006,12.450,12.037,11.477,10.621,9.638,8.750,7.985,7.268,6.584,5.921,5.200,4.386,3.550,
-2.710,1.732,.522,-.766,-1.841,-2.514,-2.759,-2.696,-2.663,-3.107,-4.149,-5.321,-6.005,-6.125,-6.163,-6.508,
--7.072,-7.610,-8.137,-8.819,-9.620,-10.263,-10.544,-10.538,-10.525,-10.774,-11.374,-12.219,-13.136,-14.043,-14.967,-15.930,
--16.897,-17.830,-18.714,-19.512,-20.194,-20.803,-21.431,-22.084,-22.691,-23.235,-23.783,-24.350,-24.856,-25.270,-25.688,-26.190,
--26.719,-27.171,-27.536,-27.878,-28.233,-28.602,-28.965,-29.278,-29.485,-29.598,-29.692,-29.798,-29.847,-29.758,-29.520,-29.186,
--28.873,-28.741,-28.844,-28.992,-28.928,-28.701,-28.676,-29.044,-29.547,-29.812,-29.814,-29.768,-29.711,-29.469,-29.017,-28.638,
--28.653,-29.161,-30.050,-31.077,-31.904,-32.218,-31.964,-31.375,-30.740,-30.177,-29.659,-29.137,-28.578,-27.948,-27.258,-26.575,
--25.967,-25.426,-24.899,-24.346,-23.764,-23.178,-22.612,-22.068,-21.527,-20.991,-20.494,-20.039,-19.559,-18.988,-18.329,-17.637,
--16.951,-16.307,-15.750,-15.268,-14.745,-14.088,-13.348,-12.644,-11.980,-11.260,-10.467,-9.711,-9.064,-8.478,-7.898,-7.350,
--6.862,-6.367,-5.773,-5.086,-4.383,-3.706,-3.029,-2.325,-1.608,-.911,-.252,.372,.983,1.601,2.237,2.896,
-3.572,4.232,4.825,5.331,5.773,6.157,6.440,6.606,6.739,6.949,7.243,7.533,7.767,7.980,8.207,8.429,
-8.631,8.840,9.069,9.279,9.438,9.574,9.732,9.918,10.111,10.308,10.503,10.667,10.769,10.830,10.905,11.033,
-11.199,11.350,11.443,11.480,11.517,11.607,11.741,11.861,11.927,11.966,12.051,12.241,12.518,12.774,12.881,12.814,
-12.696,12.682,12.819,13.039,13.264,13.466,13.637,13.774,13.897,14.024,14.121,14.134,14.090,14.108,14.275,14.552,
-14.832,15.059,15.249,15.438,15.636,15.843,16.072,16.349,16.700,17.125,17.596,18.079,18.563,19.039,19.475,19.823,
-20.055,20.167,20.181,20.161,20.199,20.320,20.436,20.437,20.300,20.078,19.794,19.447,19.098,18.855,18.751,18.714,
-18.664,18.595,18.508,18.368,18.158,17.945,17.836,17.893,18.103,18.403,18.704,18.934,19.084,19.182,19.230,19.184,
-19.023,18.775,18.472,18.145,17.851,17.633,17.449,17.213,16.934,16.723,16.633,16.597,16.553,16.543,16.615,16.724,
-16.895,16.964,17.009,17.024,16.948,16.761,16.537,16.343,16.158,15.966,15.841,15.834,15.867,15.845,15.782,15.719,
-15.606,15.418,15.268,15.257,15.280,15.196,15.078,15.074,15.102,15.001,14.945,15.305,15.972,16.248,15.682,14.720,
-14.148,14.124,14.149,13.864,13.439,13.133,12.926,12.739,12.674,12.778,12.789,12.399,11.653,10.878,10.283,9.830,
-9.427,9.045,8.628,8.080,7.388,6.644,5.921,5.197,4.407,3.495,2.433,1.285,.287,-.302,-.481,-.557,
--.843,-1.375,-1.978,-2.533,-3.087,-3.750,-4.576,-5.533,-6.514,-7.392,-8.157,-8.982,-10.069,-11.388,-12.655,-13.587,
--14.135,-14.453,-14.748,-15.195,-15.890,-16.752,-17.488,-17.780,-17.552,-17.011,-16.446,-16.048,-15.890,-15.934,-16.014,-15.933,
--15.666,-15.374,-15.175,-14.993,-14.730,-14.448,-14.248,-14.067,-13.774,-13.418,-13.182,-13.111,-13.083,-13.032,-12.999,-12.938,
--12.702,-12.291,-11.900,-11.640,-11.423,-11.218,-11.145,-11.158,-10.932,-10.396,-10.149,-10.920,-12.620,-14.284,-15.031,-14.829,
--14.285,-13.954,-13.984,-14.215,-14.430,-14.587,-14.847,-15.306,-15.754,-15.871,-15.645,-15.391,-15.343,-15.475,-15.737,-16.146,
--16.531,-16.542,-16.143,-15.834,-16.114,-16.896,-17.765,-18.629,-19.739,-21.102,-22.263,-22.788,-22.748,-22.616,-22.840,-23.551,
--24.565,-25.569,-26.374,-27.035,-27.679,-28.294,-28.785,-29.166,-29.548,-29.929,-30.189,-30.290,-30.366,-30.578,-31.015,-31.724,
--32.683,-33.734,-34.681,-35.491,-36.292,-37.160,-38.077,-39.099,-40.355,-41.822,-43.257,-44.480,-45.566,-46.682,-47.849,-48.967,
--49.929,-50.627,-50.997,-51.158,-51.348,-51.553,-51.396,-50.635,-49.658,-49.183,-49.454,-50.017,-50.323,-50.324,-50.333,-50.540,
--50.861,-51.176,-51.479,-51.791,-52.064,-52.244,-52.349,-52.448,-52.594,-52.821,-53.134,-53.504,-53.873,-54.210,-54.542,-54.910,
--55.300,-55.654,-55.945,-56.201,-56.472,-56.790,-57.198,-57.746,-58.428,-59.156,-59.841,-60.498,-61.198,-61.934,-62.592,-63.093,
--63.488,-63.911,-64.455,-65.122,-65.849,-66.547,-67.164,-67.726,-68.303,-68.921,-69.551,-70.183,-70.859,-71.598,-72.358,-73.083,
--73.749,-74.349,-74.893,-75.452,-76.114,-76.851,-77.514,-78.025,-78.510,-79.136,-79.898,-80.667,-81.418,-82.271,-83.298,-84.416,
--85.488,-86.455,-87.326,-88.135,-88.925,-89.741,-90.591,-91.449,-92.300,-93.124,-93.871,-94.496,-95.032,-95.541,-96.020,-96.445,
--96.847,-97.213,-97.352,-97.082,-96.608,-96.493,-97.055,-97.955,-98.589,-98.806,-99.010,-99.573,-100.405,-101.166,-101.685,-102.050,
--102.393,-102.752,-103.101,-103.409,-103.651,-103.815,-103.893,-103.853,-103.671,-103.418,-103.257,-103.307,-103.521,-103.740,-103.842,-103.820,
--103.731,-103.636,-103.541,-103.404,-103.170,-102.842,-102.474,-102.113,-101.749,-101.329,-100.793,-100.095,-99.244,-98.333,-97.451,-96.553,
--95.477,-94.141,-92.658,-91.229,-89.939,-88.714,-87.441,-86.093,-84.754,-83.561,-82.554,-81.553,-80.258,-78.551,-76.661,-74.929,
--73.433,-71.936,-70.204,-68.294,-66.477,-64.929,-63.573,-62.206,-60.768,-59.415,-58.326,-57.438,-56.460,-55.180,-53.700,-52.339,
--51.324,-50.594,-49.851,-48.787,-47.350,-45.848,-44.703,-44.016,-43.444,-42.584,-41.402,-40.135,-38.876,-37.453,-35.743,-33.877,
--32.076,-30.435,-28.985,-27.829,-27.033,-26.378,-25.375,-23.596,-21.020,-18.049,-15.176,-12.646,-10.454,-8.638,-7.408,-6.883,
--6.779,-6.565,-5.937,-4.986,-3.932,-2.876,-1.857,-.951,-.163,.657,1.644,2.738,3.779,4.727,5.653,6.597,
-7.551,8.551,9.640,10.744,11.715,12.525,13.330,14.293,15.413,16.564,17.672,18.760,19.845,20.845,21.667,22.357,
-23.070,23.891,24.755,25.603,26.490,27.453,28.379,29.178,29.999,31.063,32.311,33.440,34.325,35.163,36.137,37.161,
-38.076,38.905,39.741,40.549,41.257,41.929,42.709,43.723,45.141,47.139,49.569,51.823,53.321,54.080,54.624,55.353,
-56.205,56.906,57.331,57.581,57.832,58.106,58.173,57.794,57.086,56.438,55.926,55.138,53.885,52.778,52.628,53.425,
-54.462,55.365,56.402,57.684,58.716,59.051,58.926,58.864,58.998,59.166,59.381,59.801,60.424,61.148,61.996,62.998,
-64.072,65.295,66.980,69.016,70.406,70.049,67.953,65.094,62.148,59.096,56.269,54.944,56.185,59.479,63.167,66.099,
-68.269,69.885,70.627,70.227,69.304,68.999,69.809,71.191,72.358,73.096,73.627,74.018,74.110,73.938,73.838,74.028,
-74.322,74.421,74.335,74.285,74.306,74.167,73.719,73.125,72.654,72.373,72.145,71.865,71.584,71.393,71.291,71.201,
-71.088,70.975,70.862,70.697,70.471,70.275,70.190,70.167,70.092,69.952,69.838,69.790,69.740,69.628,69.471,69.327,
-69.250,69.293,69.439,69.558,69.541,69.456,69.434,69.418,69.235,68.893,68.592,68.389,68.123,67.731,67.381,67.164,
-66.941,66.649,66.447,66.383,66.229,65.886,65.624,65.623,65.612,65.349,65.106,65.183,65.300,65.062,64.694,64.551,
-64.155,62.778,61.009,60.551,61.957,63.567,63.465,61.743,59.971,59.005,58.391,57.653,57.008,56.682,56.415,56.018,
-55.761,55.877,56.145,56.268,56.291,56.350,56.357,56.240,56.181,56.331,56.513,56.483,56.271,56.032,55.732,55.289,
-54.858,54.673,54.674,54.537,54.078,53.428,52.805,52.305,51.907,51.558,51.197,50.783,50.306,49.729,48.990,48.124,
-47.325,46.767,46.428,46.153,45.855,45.536,45.186,44.760,44.257,43.719,43.169,42.615,42.095,41.649,41.253,40.845,
-40.413,40.005,39.666,39.391,39.129,38.818,38.444,38.070,37.765,37.476,37.061,36.473,35.819,35.220,34.695,34.244,
-33.890,33.565,33.093,32.409,31.698,31.183,30.881,30.708,30.687,30.833,30.910,30.597,29.885,29.083,28.387,27.739,
-27.180,27.033,27.491,28.164,28.349,27.739,26.711,25.915,25.686,25.840,25.883,25.430,24.541,23.693,23.317,23.349,
-23.315,22.865,22.126,21.502,21.228,21.212,21.215,21.084,20.816,20.513,20.268,20.077,19.844,19.529,19.247,19.143,
-19.200,19.248,19.180,19.073,19.033,19.033,18.971,18.854,18.784,18.775,18.694,18.426,18.039,17.724,17.592,17.587,
-17.579,17.500,17.367,17.218,17.044,16.809,16.512,16.199,15.918,15.683,15.505,15.404,15.364,15.316,15.199,15.017,
-14.793,14.520,14.211,13.960,13.859,13.855,13.826,13.780,13.856,14.100,14.348,14.419,14.320,14.177,14.061,13.974,
-13.939,13.981,14.041,14.040,13.999,14.014,14.108,14.193,14.207,14.189,14.221,14.359,14.630,15.001,15.325,15.424,
-15.291,15.156,15.250,15.540,15.764,15.734,15.525,15.348,15.321,15.412,15.557,15.740,15.959,16.171,16.349,16.527,
-16.739,16.940,17.066,17.166,17.355,17.638,17.892,18.086,18.362,18.778,19.051,18.785,17.966,17.056,16.520,16.376,
-16.306,16.092,15.802,15.573,15.392,15.140,14.782,14.403,14.105,13.917,13.817,13.785,13.807,13.852,13.881,13.863,
-13.788,13.642,13.424,13.157,12.880,12.597,12.279,11.917,11.553,11.234,10.972,10.746,10.539,10.335,10.102,9.833,
-9.560,9.325,9.118,8.892,8.614,8.292,7.959,7.649,7.390,7.174,6.956,6.692,6.383,6.058,5.727,5.378,
-5.020,4.677,4.350,4.008,3.636,3.242,2.836,2.408,1.949,1.477,1.027,.627,.281,-.030,-.343,-.680,
--1.038,-1.400,-1.764,-2.137,-2.515,-2.887,-3.257,-3.642,-4.048,-4.465,-4.880,-5.285,-5.688,-6.107,-6.559,-7.038,
--7.518,-7.979,-8.416,-8.820,-9.169,-9.470,-9.770,-10.115,-10.502,-10.889,-11.231,-11.510,-11.745,-11.987,-12.280,-12.623,
--12.979,-13.323,-13.666,-14.015,-14.350,-14.668,-14.997,-15.342,-15.669,-15.958,-16.243,-16.564,-16.911,-17.256,-17.599,-17.938,
--18.241,-18.498,-18.770,-19.123,-19.535,-19.919,-20.231,-20.506,-20.791,-21.105,-21.443,-21.790,-22.112,-22.388,-22.644,-22.917,
--23.202,-23.476,-23.743,-24.012,-24.259,-24.459,-24.640,-24.845,-25.060,-25.229,-25.347,-25.467,-25.616,-25.764,-25.881,-25.979,
--26.079,-26.187,-26.305,-26.433,-26.543,-26.603,-26.620,-26.635,-26.658,-26.666,-26.653,-26.642,-26.636,-26.611,-26.557,-26.494,
--26.431,-26.342,-26.211,-26.059,-25.906,-25.754,-25.596,-25.429,-25.250,-25.063,-24.892,-24.751,-24.611,-24.443,-24.258,-24.090,
--23.929,-23.741,-23.528,-23.327,-23.150,-22.979,-22.814,-22.669,-22.526,-22.350,-22.148,-21.958,-21.779,-21.577,-21.348,-21.140,
--20.973,-20.804,-20.590,-20.331,-20.051,-19.768,-19.509,-19.288,-19.079,-18.841,-18.588,-18.381,-18.231,-18.087,-17.919,-17.749,
--17.591,-17.411,-17.195,-16.977,-16.783,-16.582,-16.344,-16.089,-15.850,-15.627,-15.398,-15.156,-14.891,-14.584,-14.257,-13.972,
--13.753,-13.554,-13.322,-13.065,-12.809,-12.536,-12.215,-11.863,-11.538,-11.263,-11.004,-10.726,-10.440,-10.179,-9.955,-9.741,
--9.503,-9.245,-8.998,-8.771,-8.532,-8.255,-7.960,-7.666,-7.355,-7.016,-6.696,-6.440,-6.203,-5.904,-5.551,-5.228,
--4.958,-4.685,-4.391,-4.133,-3.925,-3.696,-3.399,-3.095,-2.850,-2.642,-2.417,-2.178,-1.956,-1.740,-1.501,-1.243,
--.990,-.734,-.467,-.194,.092,.405,.730,1.035,1.354,1.754,2.206,2.590,2.887,3.240,3.730,4.238,
-4.638,5.008,5.489,6.035,6.504,6.934,7.517,8.283,9.042,9.673,10.257,10.843,11.276,11.376,11.173,10.843,
-10.550,10.466,10.788,11.562,12.585,13.683,15.042,17.012,19.544,22.051,23.965,25.280,26.364,27.273,27.484,26.452,
-24.361,22.140,20.659,20.011,19.699,19.419,19.383,19.805,20.394,20.633,20.436,20.178,20.087,19.928,19.397,18.527,
-17.544,16.533,15.488,14.535,13.822,13.246,12.545,11.641,10.702,9.863,9.098,8.387,7.759,7.139,6.344,5.319,
-4.223,3.178,2.118,.971,-.146,-1.029,-1.547,-1.638,-1.367,-1.105,-1.430,-2.571,-4.061,-5.180,-5.713,-6.029,
--6.485,-7.047,-7.542,-8.009,-8.608,-9.323,-9.912,-10.150,-10.063,-9.955,-10.195,-10.919,-11.925,-12.910,-13.776,-14.626,
--15.525,-16.419,-17.272,-18.123,-18.970,-19.732,-20.387,-21.024,-21.702,-22.366,-22.961,-23.514,-24.060,-24.563,-25.005,-25.449,
--25.949,-26.459,-26.906,-27.287,-27.652,-28.019,-28.382,-28.724,-29.007,-29.178,-29.243,-29.280,-29.336,-29.366,-29.288,-29.048,
--28.659,-28.246,-28.030,-28.134,-28.391,-28.498,-28.406,-28.383,-28.634,-29.017,-29.269,-29.354,-29.402,-29.410,-29.238,-28.857,
--28.446,-28.238,-28.394,-28.992,-29.960,-30.994,-31.688,-31.829,-31.513,-30.978,-30.393,-29.825,-29.277,-28.710,-28.072,-27.370,
--26.675,-26.043,-25.467,-24.912,-24.361,-23.807,-23.230,-22.611,-21.956,-21.309,-20.733,-20.252,-19.803,-19.287,-18.676,-18.029,
--17.400,-16.776,-16.162,-15.619,-15.162,-14.682,-14.071,-13.369,-12.692,-12.056,-11.375,-10.630,-9.909,-9.283,-8.733,-8.219,
--7.738,-7.253,-6.679,-5.965,-5.174,-4.413,-3.726,-3.072,-2.403,-1.716,-1.047,-.420,.184,.803,1.438,2.057,
-2.652,3.264,3.912,4.549,5.127,5.642,6.084,6.384,6.512,6.583,6.766,7.101,7.473,7.775,8.010,8.223,
-8.428,8.631,8.843,9.040,9.163,9.209,9.269,9.429,9.665,9.892,10.080,10.259,10.445,10.597,10.684,10.740,
-10.837,10.999,11.162,11.242,11.235,11.227,11.296,11.428,11.541,11.578,11.556,11.557,11.669,11.894,12.116,12.198,
-12.141,12.110,12.246,12.519,12.792,12.984,13.097,13.142,13.140,13.160,13.280,13.478,13.664,13.808,13.971,14.187,
-14.394,14.525,14.601,14.695,14.846,15.047,15.286,15.582,15.959,16.418,16.927,17.445,17.973,18.545,19.156,19.719,
-20.126,20.336,20.360,20.218,19.963,19.717,19.594,19.581,19.558,19.435,19.212,18.926,18.622,18.382,18.285,18.312,
-18.360,18.364,18.348,18.332,18.284,18.181,18.080,18.068,18.188,18.435,18.761,19.076,19.283,19.350,19.319,19.217,
-19.028,18.751,18.431,18.116,17.827,17.583,17.392,17.216,17.001,16.782,16.655,16.646,16.676,16.686,16.713,16.796,
-16.895,17.051,17.056,17.031,16.981,16.864,16.670,16.459,16.277,16.123,16.014,16.006,16.080,16.131,16.106,16.057,
-15.994,15.847,15.641,15.529,15.534,15.466,15.251,15.112,15.190,15.224,15.014,14.994,15.785,17.104,17.739,16.930,
-15.335,14.233,14.067,14.244,14.152,13.801,13.452,13.157,12.875,12.694,12.641,12.500,12.046,11.350,10.654,10.052,
-9.487,8.958,8.533,8.185,7.789,7.286,6.709,6.061,5.294,4.389,3.361,2.212,1.020,.045,-.437,-.492,
--.543,-.959,-1.704,-2.497,-3.194,-3.896,-4.720,-5.641,-6.564,-7.431,-8.243,-9.050,-9.946,-11.011,-12.187,-13.278,
--14.099,-14.614,-14.935,-15.221,-15.621,-16.225,-16.985,-17.692,-18.096,-18.082,-17.723,-17.215,-16.789,-16.619,-16.724,-16.928,
--17.011,-16.917,-16.746,-16.551,-16.281,-15.937,-15.632,-15.392,-15.045,-14.461,-13.823,-13.451,-13.403,-13.443,-13.402,-13.322,
--13.238,-13.031,-12.632,-12.175,-11.815,-11.557,-11.370,-11.299,-11.316,-11.245,-11.080,-11.203,-11.987,-13.227,-14.244,-14.590,
--14.424,-14.182,-14.105,-14.189,-14.374,-14.645,-15.017,-15.499,-15.988,-16.242,-16.071,-15.586,-15.114,-14.861,-14.862,-15.166,
--15.789,-16.408,-16.492,-15.952,-15.409,-15.550,-16.392,-17.461,-18.517,-19.726,-21.152,-22.452,-23.208,-23.377,-23.301,-23.406,
--23.929,-24.815,-25.803,-26.660,-27.360,-27.988,-28.546,-28.968,-29.290,-29.632,-30.021,-30.356,-30.574,-30.748,-30.998,-31.430,
--32.142,-33.156,-34.320,-35.423,-36.418,-37.407,-38.438,-39.459,-40.490,-41.647,-42.929,-44.166,-45.255,-46.300,-47.407,-48.506,
--49.467,-50.268,-50.925,-51.380,-51.606,-51.679,-51.597,-51.172,-50.329,-49.438,-49.060,-49.346,-49.893,-50.249,-50.361,-50.442,
--50.612,-50.830,-51.068,-51.363,-51.693,-51.958,-52.098,-52.173,-52.282,-52.478,-52.752,-53.068,-53.386,-53.680,-53.966,-54.292,
--54.669,-55.046,-55.367,-55.638,-55.915,-56.237,-56.615,-57.072,-57.652,-58.340,-59.045,-59.699,-60.352,-61.097,-61.907,-62.626,
--63.140,-63.514,-63.919,-64.464,-65.126,-65.810,-66.438,-67.006,-67.564,-68.159,-68.792,-69.441,-70.108,-70.816,-71.560,-72.312,
--73.047,-73.744,-74.362,-74.903,-75.470,-76.174,-76.955,-77.622,-78.101,-78.550,-79.151,-79.884,-80.614,-81.323,-82.135,-83.124,
--84.219,-85.295,-86.271,-87.125,-87.904,-88.706,-89.586,-90.491,-91.340,-92.141,-92.937,-93.681,-94.295,-94.818,-95.356,-95.897,
--96.319,-96.611,-96.871,-97.072,-97.041,-96.801,-96.719,-97.098,-97.759,-98.273,-98.534,-98.856,-99.495,-100.327,-101.054,-101.554,
--101.909,-102.228,-102.559,-102.905,-103.226,-103.468,-103.629,-103.749,-103.815,-103.757,-103.581,-103.429,-103.429,-103.549,-103.661,-103.705,
--103.704,-103.679,-103.618,-103.504,-103.324,-103.054,-102.698,-102.320,-101.972,-101.620,-101.163,-100.528,-99.719,-98.809,-97.906,-97.074,
--96.252,-95.286,-94.105,-92.809,-91.535,-90.298,-89.011,-87.656,-86.319,-85.089,-83.966,-82.861,-81.625,-80.112,-78.326,-76.481,
--74.839,-73.430,-72.029,-70.436,-68.708,-67.058,-65.553,-64.035,-62.354,-60.651,-59.282,-58.437,-57.847,-57.003,-55.647,-54.009,
--52.517,-51.390,-50.522,-49.651,-48.537,-47.103,-45.525,-44.137,-43.105,-42.221,-41.180,-39.986,-38.912,-38.075,-37.254,-36.203,
--34.912,-33.476,-31.859,-30.017,-28.143,-26.575,-25.399,-24.278,-22.764,-20.721,-18.381,-16.000,-13.606,-11.182,-8.998,-7.536,
--6.969,-6.862,-6.559,-5.794,-4.759,-3.673,-2.557,-1.438,-.462,.320,1.105,2.087,3.194,4.226,5.134,6.028,
-6.972,7.949,8.964,10.043,11.123,12.092,12.949,13.820,14.807,15.885,16.979,18.060,19.146,20.232,21.256,22.150,
-22.922,23.669,24.479,25.351,26.252,27.200,28.204,29.178,30.046,30.912,31.955,33.143,34.244,35.158,36.044,37.031,
-38.014,38.859,39.631,40.455,41.295,42.046,42.746,43.539,44.568,46.008,48.012,50.377,52.449,53.672,54.210,54.776,
-55.812,57.073,58.002,58.346,58.351,58.458,58.805,59.032,58.690,57.857,57.078,56.558,55.823,54.531,53.249,52.910,
-53.676,54.934,56.282,57.793,59.288,60.137,60.096,59.721,59.560,59.478,59.198,59.016,59.399,60.227,61.018,61.684,
-62.540,63.760,65.309,67.183,69.101,70.153,69.454,67.203,64.444,61.822,59.300,57.252,56.840,58.702,61.852,64.659,
-66.565,68.125,69.577,70.289,69.842,68.932,68.715,69.564,70.900,72.061,72.914,73.603,74.107,74.283,74.191,74.122,
-74.265,74.499,74.598,74.540,74.485,74.469,74.303,73.842,73.227,72.724,72.403,72.122,71.811,71.578,71.508,71.496,
-71.401,71.252,71.165,71.125,70.994,70.731,70.461,70.296,70.210,70.147,70.118,70.129,70.105,69.995,69.866,69.792,
-69.751,69.716,69.752,69.887,69.982,69.915,69.800,69.796,69.806,69.604,69.225,68.921,68.733,68.451,68.039,67.732,
-67.617,67.466,67.163,66.911,66.823,66.672,66.325,66.040,66.007,65.965,65.687,65.455,65.553,65.667,65.412,65.071,
-64.996,64.607,63.094,61.134,60.617,62.173,64.018,64.064,62.353,60.516,59.468,58.783,58.003,57.369,57.098,56.902,
-56.580,56.389,56.508,56.656,56.574,56.440,56.491,56.604,56.587,56.555,56.688,56.860,56.842,56.670,56.505,56.299,
-55.905,55.411,55.058,54.878,54.673,54.318,53.880,53.433,52.959,52.445,51.937,51.452,50.946,50.386,49.772,49.105,
-48.400,47.720,47.131,46.644,46.248,45.934,45.654,45.305,44.845,44.353,43.900,43.439,42.905,42.359,41.912,41.558,
-41.188,40.756,40.330,39.977,39.689,39.414,39.112,38.775,38.432,38.112,37.788,37.375,36.842,36.252,35.674,35.127,
-34.651,34.304,34.029,33.610,32.904,32.047,31.313,30.845,30.638,30.665,30.837,30.889,30.547,29.835,29.040,28.345,
-27.732,27.301,27.393,28.141,29.033,29.216,28.324,26.866,25.744,25.442,25.684,25.798,25.376,24.601,23.977,23.766,
-23.748,23.518,22.943,22.250,21.727,21.466,21.376,21.315,21.168,20.892,20.550,20.268,20.089,19.910,19.630,19.315,
-19.121,19.086,19.101,19.086,19.086,19.140,19.177,19.130,19.078,19.144,19.272,19.242,18.921,18.431,18.004,17.759,
-17.660,17.612,17.543,17.419,17.249,17.057,16.843,16.577,16.264,15.969,15.744,15.572,15.406,15.258,15.178,15.177,
-15.182,15.090,14.843,14.493,14.174,13.989,13.914,13.860,13.825,13.907,14.130,14.358,14.442,14.392,14.328,14.304,
-14.280,14.230,14.177,14.126,14.053,13.986,13.999,14.107,14.234,14.306,14.334,14.378,14.485,14.678,14.943,15.192,
-15.295,15.229,15.151,15.232,15.450,15.604,15.562,15.414,15.339,15.390,15.469,15.494,15.513,15.620,15.835,16.111,
-16.397,16.654,16.835,16.943,17.076,17.323,17.608,17.782,17.899,18.224,18.853,19.406,19.334,18.527,17.471,16.741,
-16.462,16.354,16.166,15.914,15.715,15.565,15.364,15.070,14.747,14.466,14.239,14.062,13.962,13.959,14.013,14.051,
-14.039,13.987,13.889,13.718,13.470,13.181,12.874,12.534,12.157,11.790,11.475,11.205,10.958,10.740,10.550,10.346,
-10.086,9.796,9.530,9.299,9.057,8.773,8.457,8.134,7.826,7.557,7.333,7.115,6.857,6.559,6.253,5.947,
-5.616,5.257,4.901,4.563,4.228,3.875,3.505,3.116,2.692,2.232,1.758,1.302,.886,.518,.179,-.161,
--.515,-.866,-1.204,-1.551,-1.931,-2.326,-2.706,-3.078,-3.474,-3.894,-4.306,-4.696,-5.083,-5.487,-5.912,-6.360,
--6.830,-7.305,-7.756,-8.171,-8.546,-8.877,-9.173,-9.476,-9.830,-10.232,-10.633,-10.984,-11.267,-11.503,-11.734,-12.001,
--12.316,-12.655,-12.999,-13.350,-13.706,-14.042,-14.358,-14.683,-15.032,-15.372,-15.675,-15.968,-16.290,-16.626,-16.943,-17.243,
--17.547,-17.842,-18.116,-18.412,-18.775,-19.174,-19.531,-19.826,-20.118,-20.447,-20.797,-21.143,-21.481,-21.801,-22.086,-22.349,
--22.625,-22.917,-23.196,-23.454,-23.705,-23.948,-24.161,-24.354,-24.556,-24.759,-24.923,-25.042,-25.160,-25.307,-25.463,-25.601,
--25.719,-25.824,-25.922,-26.025,-26.141,-26.239,-26.275,-26.259,-26.246,-26.264,-26.288,-26.299,-26.307,-26.309,-26.281,-26.218,
--26.150,-26.087,-26.003,-25.883,-25.739,-25.588,-25.426,-25.259,-25.104,-24.962,-24.816,-24.665,-24.521,-24.375,-24.201,-24.013,
--23.844,-23.690,-23.506,-23.287,-23.082,-22.914,-22.754,-22.577,-22.401,-22.238,-22.069,-21.879,-21.683,-21.490,-21.294,-21.100,
--20.932,-20.779,-20.597,-20.368,-20.128,-19.900,-19.667,-19.418,-19.175,-18.952,-18.729,-18.500,-18.294,-18.129,-17.978,-17.821,
--17.665,-17.510,-17.334,-17.132,-16.938,-16.764,-16.570,-16.331,-16.075,-15.841,-15.628,-15.421,-15.211,-14.981,-14.707,-14.408,
--14.146,-13.944,-13.750,-13.522,-13.284,-13.068,-12.838,-12.546,-12.208,-11.875,-11.568,-11.274,-11.001,-10.765,-10.553,-10.338,
--10.116,-9.895,-9.663,-9.405,-9.130,-8.857,-8.583,-8.297,-7.996,-7.679,-7.344,-7.014,-6.728,-6.473,-6.188,-5.841,
--5.478,-5.149,-4.854,-4.583,-4.352,-4.155,-3.923,-3.608,-3.274,-3.018,-2.853,-2.700,-2.501,-2.258,-1.996,-1.734,
--1.482,-1.236,-.967,-.663,-.346,-.039,.262,.561,.853,1.167,1.551,1.982,2.365,2.676,3.020,3.472,
-3.953,4.365,4.765,5.257,5.798,6.277,6.752,7.391,8.177,8.899,9.457,9.985,10.548,10.943,10.957,10.698,
-10.494,10.546,10.834,11.317,12.028,13.037,14.453,16.417,18.881,21.395,23.349,24.541,25.340,26.157,26.829,26.747,
-25.575,23.707,21.942,20.778,20.123,19.675,19.416,19.586,20.215,20.910,21.232,21.153,20.973,20.863,20.700,20.332,
-19.772,19.067,18.189,17.178,16.203,15.352,14.484,13.470,12.430,11.562,10.841,10.121,9.427,8.891,8.408,7.643,
-6.433,4.986,3.605,2.402,1.358,.478,-.204,-.624,-.639,-.191,.347,.250,-.889,-2.671,-4.278,-5.282,
--5.872,-6.391,-6.936,-7.447,-7.936,-8.480,-9.062,-9.524,-9.694,-9.592,-9.521,-9.870,-10.743,-11.834,-12.788,-13.569,
--14.366,-15.227,-16.019,-16.710,-17.446,-18.298,-19.146,-19.881,-20.567,-21.299,-22.034,-22.679,-23.244,-23.791,-24.319,-24.793,
--25.235,-25.696,-26.171,-26.621,-27.033,-27.423,-27.796,-28.149,-28.480,-28.750,-28.906,-28.941,-28.926,-28.927,-28.937,-28.873,
--28.625,-28.149,-27.585,-27.247,-27.347,-27.735,-28.041,-28.093,-28.070,-28.197,-28.459,-28.706,-28.883,-29.010,-29.041,-28.901,
--28.599,-28.223,-27.859,-27.641,-27.796,-28.469,-29.506,-30.504,-31.118,-31.247,-30.978,-30.457,-29.834,-29.216,-28.621,-28.015,
--27.393,-26.789,-26.209,-25.622,-25.016,-24.420,-23.846,-23.256,-22.610,-21.912,-21.223,-20.611,-20.090,-19.592,-19.032,-18.414,
--17.814,-17.265,-16.717,-16.137,-15.571,-15.050,-14.518,-13.900,-13.223,-12.564,-11.934,-11.282,-10.596,-9.925,-9.310,-8.765,
--8.291,-7.859,-7.369,-6.718,-5.910,-5.062,-4.294,-3.637,-3.047,-2.462,-1.848,-1.217,-.600,.003,.620,1.248,
-1.836,2.372,2.925,3.557,4.239,4.900,5.499,5.995,6.299,6.375,6.356,6.452,6.741,7.128,7.491,7.787,
-8.019,8.200,8.376,8.591,8.807,8.925,8.934,8.970,9.169,9.495,9.797,9.998,10.165,10.377,10.597,10.720,
-10.722,10.707,10.775,10.902,10.991,11.014,11.049,11.157,11.302,11.398,11.402,11.342,11.290,11.337,11.520,11.753,
-11.910,11.991,12.143,12.456,12.829,13.092,13.192,13.182,13.096,12.953,12.842,12.874,13.048,13.263,13.456,13.639,
-13.804,13.903,13.948,14.046,14.284,14.630,14.994,15.341,15.713,16.155,16.646,17.108,17.485,17.815,18.200,18.663,
-19.093,19.368,19.476,19.471,19.359,19.127,18.853,18.678,18.646,18.667,18.642,18.550,18.418,18.289,18.225,18.273,
-18.397,18.506,18.563,18.609,18.662,18.684,18.654,18.623,18.648,18.740,18.889,19.075,19.236,19.286,19.207,19.061,
-18.891,18.680,18.412,18.120,17.840,17.577,17.340,17.150,17.006,16.880,16.784,16.762,16.808,16.857,16.880,16.920,
-16.993,17.051,17.102,17.047,16.973,16.897,16.778,16.603,16.413,16.243,16.105,16.045,16.105,16.216,16.250,16.191,
-16.136,16.104,16.015,15.886,15.836,15.834,15.683,15.397,15.282,15.422,15.422,15.076,15.000,15.965,17.615,18.498,
-17.678,15.834,14.397,13.980,14.097,14.129,13.956,13.681,13.295,12.834,12.492,12.348,12.184,11.768,11.161,10.564,
-10.023,9.454,8.856,8.317,7.864,7.451,7.047,6.616,6.047,5.242,4.247,3.170,2.050,.935,.046,-.382,
--.457,-.636,-1.264,-2.224,-3.168,-3.965,-4.769,-5.711,-6.700,-7.569,-8.293,-8.994,-9.797,-10.739,-11.762,-12.760,
--13.633,-14.333,-14.879,-15.328,-15.749,-16.207,-16.747,-17.354,-17.939,-18.364,-18.503,-18.309,-17.882,-17.465,-17.299,-17.432,
--17.687,-17.853,-17.868,-17.772,-17.567,-17.231,-16.845,-16.536,-16.263,-15.802,-15.059,-14.292,-13.848,-13.757,-13.761,-13.687,
--13.591,-13.509,-13.309,-12.894,-12.385,-11.952,-11.624,-11.383,-11.321,-11.536,-11.942,-12.378,-12.827,-13.349,-13.842,-14.095,
--14.081,-14.009,-14.041,-14.131,-14.195,-14.303,-14.591,-15.090,-15.671,-16.099,-16.120,-15.639,-14.842,-14.079,-13.631,-13.656,
--14.243,-15.254,-16.123,-16.193,-15.458,-14.743,-14.894,-15.949,-17.299,-18.508,-19.652,-20.921,-22.213,-23.248,-23.870,-24.152,
--24.318,-24.622,-25.202,-25.999,-26.839,-27.610,-28.285,-28.835,-29.237,-29.561,-29.925,-30.350,-30.754,-31.080,-31.355,-31.640,
--32.035,-32.704,-33.760,-35.107,-36.505,-37.806,-39.000,-40.072,-40.980,-41.797,-42.702,-43.754,-44.822,-45.812,-46.800,-47.846,
--48.838,-49.640,-50.278,-50.847,-51.314,-51.554,-51.514,-51.200,-50.613,-49.848,-49.216,-49.056,-49.388,-49.892,-50.256,-50.426,
--50.509,-50.587,-50.704,-50.918,-51.235,-51.546,-51.724,-51.777,-51.835,-52.011,-52.302,-52.632,-52.935,-53.189,-53.422,-53.683,
--53.998,-54.342,-54.658,-54.933,-55.212,-55.550,-55.957,-56.419,-56.951,-57.582,-58.290,-58.983,-59.608,-60.229,-60.949,-61.762,
--62.527,-63.122,-63.580,-64.035,-64.575,-65.177,-65.768,-66.325,-66.882,-67.478,-68.100,-68.712,-69.325,-69.998,-70.765,-71.572,
--72.337,-73.029,-73.661,-74.240,-74.793,-75.407,-76.151,-76.942,-77.609,-78.102,-78.560,-79.121,-79.769,-80.433,-81.140,-81.980,
--82.966,-84.021,-85.061,-86.025,-86.872,-87.649,-88.476,-89.405,-90.330,-91.144,-91.896,-92.683,-93.452,-94.085,-94.624,-95.200,
--95.771,-96.144,-96.302,-96.458,-96.703,-96.849,-96.784,-96.751,-97.043,-97.566,-97.991,-98.262,-98.663,-99.377,-100.226,-100.925,
--101.393,-101.728,-102.025,-102.331,-102.666,-102.997,-103.249,-103.415,-103.567,-103.715,-103.765,-103.675,-103.559,-103.538,-103.583,-103.597,
--103.573,-103.570,-103.582,-103.533,-103.392,-103.178,-102.896,-102.544,-102.161,-101.786,-101.370,-100.791,-99.988,-99.032,-98.079,-97.272,
--96.641,-96.054,-95.301,-94.289,-93.125,-91.944,-90.739,-89.426,-88.039,-86.723,-85.537,-84.371,-83.080,-81.607,-79.972,-78.232,
--76.498,-74.897,-73.452,-72.046,-70.558,-69.008,-67.484,-65.962,-64.280,-62.378,-60.509,-59.118,-58.399,-58.006,-57.320,-56.035,
--54.401,-52.873,-51.644,-50.586,-49.502,-48.274,-46.860,-45.318,-43.823,-42.504,-41.278,-39.998,-38.723,-37.668,-36.869,-36.130,
--35.334,-34.573,-33.823,-32.700,-30.814,-28.322,-25.907,-24.119,-22.883,-21.700,-20.204,-18.400,-16.400,-14.182,-11.755,-9.472,
--7.897,-7.230,-7.020,-6.604,-5.742,-4.645,-3.519,-2.355,-1.165,-.104,.757,1.586,2.548,3.577,4.519,5.383,
-6.289,7.262,8.252,9.258,10.313,11.367,12.346,13.269,14.225,15.243,16.287,17.345,18.429,19.518,20.569,21.574,
-22.533,23.431,24.276,25.123,26.011,26.921,27.844,28.804,29.782,30.722,31.643,32.649,33.748,34.806,35.754,36.697,
-37.717,38.722,39.621,40.502,41.467,42.431,43.256,43.992,44.822,45.887,47.299,49.148,51.248,53.028,54.027,54.491,
-55.161,56.420,57.860,58.772,58.906,58.664,58.642,59.022,59.385,59.210,58.527,57.842,57.333,56.528,55.116,53.702,
-53.267,54.055,55.550,57.332,59.255,60.874,61.538,61.304,61.013,61.124,61.142,60.643,60.158,60.405,61.191,61.820,
-62.250,63.086,64.601,66.455,68.240,69.599,69.914,68.672,66.236,63.593,61.287,59.324,58.180,58.879,61.547,64.684,
-66.658,67.465,68.238,69.403,70.198,70.030,69.436,69.374,70.108,71.172,72.107,72.843,73.482,74.027,74.389,74.521,
-74.495,74.464,74.523,74.625,74.676,74.658,74.581,74.362,73.913,73.326,72.808,72.426,72.070,71.708,71.485,71.468,
-71.483,71.350,71.154,71.098,71.178,71.191,71.032,70.791,70.571,70.395,70.300,70.333,70.409,70.352,70.157,70.033,
-70.097,70.201,70.192,70.147,70.191,70.242,70.172,70.080,70.124,70.196,70.054,69.721,69.442,69.250,68.944,68.517,
-68.225,68.140,68.001,67.677,67.387,67.263,67.087,66.722,66.421,66.373,66.333,66.080,65.867,65.934,65.973,65.675,
-65.382,65.406,65.057,63.473,61.386,60.793,62.372,64.325,64.524,62.970,61.239,60.198,59.418,58.518,57.832,57.604,
-57.492,57.223,57.023,57.068,57.061,56.751,56.409,56.409,56.675,56.899,57.025,57.164,57.272,57.221,57.068,56.928,
-56.733,56.344,55.839,55.423,55.131,54.848,54.538,54.257,53.957,53.508,52.891,52.236,51.632,51.046,50.430,49.806,
-49.206,48.631,48.060,47.481,46.910,46.415,46.054,45.764,45.387,44.870,44.345,43.936,43.581,43.149,42.648,42.195,
-41.818,41.446,41.050,40.679,40.361,40.053,39.722,39.375,39.017,38.648,38.286,37.935,37.545,37.061,36.498,35.918,
-35.379,34.932,34.616,34.361,33.958,33.244,32.307,31.430,30.852,30.639,30.718,30.894,30.892,30.539,29.923,29.256,
-28.604,27.943,27.476,27.632,28.528,29.552,29.755,28.749,27.119,25.868,25.512,25.722,25.815,25.475,24.965,24.672,
-24.598,24.390,23.824,23.076,22.478,22.135,21.900,21.643,21.379,21.148,20.908,20.622,20.346,20.148,19.988,19.759,
-19.452,19.174,19.026,19.018,19.107,19.248,19.361,19.362,19.271,19.234,19.338,19.460,19.395,19.096,18.703,18.349,
-18.050,17.800,17.631,17.537,17.434,17.263,17.068,16.890,16.686,16.417,16.144,15.939,15.760,15.519,15.249,15.093,
-15.112,15.196,15.183,15.007,14.716,14.408,14.173,14.047,14.009,14.028,14.106,14.233,14.338,14.359,14.333,14.359,
-14.452,14.520,14.482,14.357,14.209,14.078,13.993,13.988,14.067,14.187,14.314,14.461,14.638,14.813,14.949,15.051,
-15.124,15.140,15.096,15.071,15.151,15.298,15.384,15.365,15.348,15.446,15.615,15.708,15.666,15.586,15.600,15.749,
-16.000,16.296,16.565,16.733,16.817,16.953,17.229,17.523,17.641,17.631,17.799,18.308,18.856,18.932,18.364,17.498,
-16.809,16.471,16.329,16.190,16.006,15.817,15.638,15.453,15.263,15.082,14.896,14.678,14.446,14.271,14.197,14.186,
-14.166,14.121,14.074,14.005,13.856,13.613,13.328,13.036,12.715,12.358,12.017,11.733,11.482,11.233,11.001,10.806,
-10.604,10.347,10.059,9.800,9.567,9.303,8.986,8.654,8.334,8.022,7.726,7.463,7.224,6.970,6.691,6.403,
-6.108,5.784,5.431,5.080,4.746,4.414,4.072,3.726,3.369,2.982,2.555,2.105,1.653,1.219,.819,.443,
-.062,-.333,-.716,-1.070,-1.421,-1.805,-2.203,-2.579,-2.944,-3.334,-3.748,-4.146,-4.522,-4.911,-5.331,-5.766,
--6.203,-6.646,-7.086,-7.495,-7.862,-8.202,-8.521,-8.821,-9.133,-9.499,-9.920,-10.337,-10.697,-10.988,-11.234,-11.469,
--11.732,-12.035,-12.361,-12.687,-13.018,-13.364,-13.712,-14.050,-14.395,-14.764,-15.126,-15.447,-15.743,-16.052,-16.366,-16.650,
--16.907,-17.173,-17.461,-17.758,-18.074,-18.428,-18.790,-19.110,-19.398,-19.714,-20.077,-20.440,-20.771,-21.091,-21.416,-21.726,
--22.016,-22.308,-22.607,-22.883,-23.125,-23.357,-23.595,-23.818,-24.019,-24.217,-24.415,-24.583,-24.714,-24.844,-24.998,-25.162,
--25.311,-25.440,-25.547,-25.633,-25.717,-25.819,-25.909,-25.936,-25.901,-25.870,-25.886,-25.929,-25.963,-25.981,-25.982,-25.956,
--25.906,-25.853,-25.794,-25.701,-25.570,-25.429,-25.289,-25.132,-24.964,-24.821,-24.710,-24.593,-24.448,-24.292,-24.135,-23.961,
--23.774,-23.606,-23.449,-23.259,-23.029,-22.821,-22.670,-22.531,-22.354,-22.155,-21.973,-21.803,-21.613,-21.403,-21.199,-21.019,
--20.872,-20.748,-20.604,-20.394,-20.136,-19.906,-19.732,-19.557,-19.321,-19.050,-18.803,-18.592,-18.397,-18.214,-18.051,-17.902,
--17.756,-17.612,-17.465,-17.293,-17.095,-16.904,-16.732,-16.546,-16.320,-16.077,-15.847,-15.635,-15.432,-15.234,-15.023,-14.782,
--14.533,-14.324,-14.146,-13.942,-13.695,-13.458,-13.259,-13.048,-12.782,-12.492,-12.212,-11.919,-11.607,-11.331,-11.132,-10.953,
--10.725,-10.472,-10.258,-10.067,-9.833,-9.551,-9.264,-8.978,-8.664,-8.333,-8.020,-7.720,-7.395,-7.059,-6.753,-6.467,
--6.149,-5.791,-5.438,-5.118,-4.821,-4.548,-4.312,-4.084,-3.812,-3.504,-3.239,-3.063,-2.930,-2.762,-2.529,-2.252,
--1.972,-1.719,-1.483,-1.218,-.902,-.569,-.269,.011,.313,.645,.989,1.347,1.730,2.112,2.463,2.811,
-3.199,3.616,4.026,4.448,4.928,5.457,6.015,6.656,7.423,8.201,8.814,9.284,9.789,10.320,10.585,10.416,
-10.112,10.157,10.684,11.409,12.091,12.867,14.119,16.117,18.774,21.599,23.893,25.204,25.678,25.855,26.037,25.963,
-25.205,23.775,22.195,20.991,20.270,19.822,19.520,19.511,19.982,20.816,21.588,21.926,21.821,21.536,21.286,21.086,
-20.866,20.545,20.029,19.266,18.358,17.467,16.571,15.492,14.240,13.113,12.324,11.705,10.989,10.240,9.700,9.294,
-8.579,7.271,5.581,3.959,2.683,1.761,1.077,.522,.137,.157,.724,1.453,1.517,.378,-1.635,-3.642,
--5.022,-5.790,-6.291,-6.782,-7.315,-7.852,-8.361,-8.821,-9.171,-9.315,-9.268,-9.294,-9.748,-10.679,-11.737,-12.595,
--13.313,-14.118,-14.985,-15.690,-16.220,-16.830,-17.658,-18.550,-19.339,-20.081,-20.890,-21.709,-22.408,-22.989,-23.553,-24.120,
--24.626,-25.051,-25.457,-25.886,-26.328,-26.751,-27.143,-27.505,-27.844,-28.163,-28.433,-28.606,-28.662,-28.641,-28.601,-28.567,
--28.479,-28.197,-27.630,-26.930,-26.484,-26.567,-27.029,-27.447,-27.586,-27.584,-27.677,-27.923,-28.234,-28.518,-28.695,-28.685,
--28.493,-28.226,-27.940,-27.580,-27.170,-26.951,-27.205,-27.947,-28.905,-29.747,-30.271,-30.401,-30.166,-29.685,-29.100,-28.496,
--27.905,-27.352,-26.849,-26.346,-25.779,-25.139,-24.476,-23.824,-23.178,-22.533,-21.893,-21.263,-20.642,-20.044,-19.472,-18.912,
--18.356,-17.814,-17.287,-16.745,-16.170,-15.573,-14.966,-14.333,-13.668,-12.999,-12.348,-11.705,-11.060,-10.427,-9.809,-9.196,
--8.618,-8.129,-7.702,-7.207,-6.539,-5.744,-4.954,-4.256,-3.660,-3.141,-2.650,-2.118,-1.514,-.870,-.229,.408,
-1.035,1.610,2.128,2.665,3.298,4.006,4.702,5.323,5.815,6.101,6.159,6.112,6.144,6.341,6.658,7.018,
-7.358,7.615,7.766,7.897,8.125,8.431,8.662,8.744,8.812,9.045,9.437,9.800,10.014,10.160,10.376,10.645,
-10.799,10.746,10.599,10.538,10.607,10.716,10.814,10.942,11.124,11.304,11.426,11.498,11.548,11.588,11.657,11.811,
-12.027,12.211,12.348,12.550,12.878,13.209,13.367,13.328,13.188,13.013,12.831,12.720,12.765,12.938,13.123,13.257,
-13.359,13.431,13.468,13.550,13.823,14.322,14.907,15.411,15.806,16.182,16.604,17.021,17.305,17.387,17.352,17.373,
-17.522,17.703,17.803,17.852,17.945,18.069,18.128,18.107,18.109,18.206,18.358,18.500,18.615,18.706,18.774,18.839,
-18.927,19.016,19.061,19.069,19.091,19.131,19.136,19.090,19.042,19.024,19.021,19.021,19.034,19.033,18.954,18.791,
-18.610,18.451,18.288,18.093,17.888,17.688,17.478,17.263,17.094,17.007,16.984,17.000,17.045,17.089,17.095,17.072,
-17.074,17.104,17.102,17.043,16.971,16.908,16.851,16.744,16.573,16.393,16.243,16.133,16.107,16.202,16.332,16.351,
-16.244,16.147,16.128,16.122,16.099,16.102,16.072,15.866,15.557,15.439,15.539,15.452,15.004,14.802,15.569,16.990,
-17.794,17.166,15.637,14.348,13.820,13.777,13.831,13.819,13.616,13.115,12.491,12.119,12.088,12.054,11.690,11.077,
-10.496,10.032,9.556,8.976,8.333,7.709,7.176,6.769,6.408,5.888,5.065,4.018,2.924,1.853,.830,-.001,
--.473,-.699,-1.072,-1.857,-2.902,-3.880,-4.698,-5.540,-6.546,-7.599,-8.481,-9.140,-9.732,-10.447,-11.329,-12.270,
--13.135,-13.872,-14.520,-15.135,-15.738,-16.322,-16.866,-17.352,-17.783,-18.191,-18.571,-18.818,-18.793,-18.499,-18.154,-18.008,
--18.112,-18.308,-18.435,-18.461,-18.388,-18.177,-17.819,-17.428,-17.119,-16.822,-16.334,-15.614,-14.892,-14.418,-14.196,-14.060,
--13.931,-13.822,-13.653,-13.268,-12.680,-12.133,-11.802,-11.607,-11.436,-11.426,-11.816,-12.577,-13.358,-13.831,-13.939,-13.822,
--13.656,-13.589,-13.684,-13.853,-13.932,-13.897,-13.931,-14.227,-14.785,-15.415,-15.842,-15.815,-15.213,-14.180,-13.107,-12.470,
--12.622,-13.606,-14.980,-15.910,-15.761,-14.782,-14.014,-14.336,-15.670,-17.253,-18.510,-19.478,-20.477,-21.654,-22.902,-24.004,
--24.778,-25.189,-25.414,-25.729,-26.297,-27.071,-27.895,-28.623,-29.177,-29.587,-29.977,-30.453,-30.991,-31.489,-31.900,-32.245,
--32.562,-32.945,-33.605,-34.729,-36.261,-37.919,-39.431,-40.670,-41.595,-42.238,-42.786,-43.499,-44.445,-45.443,-46.324,-47.131,
--47.972,-48.808,-49.514,-50.079,-50.580,-51.009,-51.236,-51.149,-50.749,-50.150,-49.554,-49.201,-49.223,-49.531,-49.905,-50.187,
--50.349,-50.424,-50.463,-50.554,-50.769,-51.060,-51.279,-51.349,-51.361,-51.471,-51.738,-52.094,-52.430,-52.691,-52.893,-53.100,
--53.361,-53.663,-53.955,-54.210,-54.473,-54.814,-55.256,-55.759,-56.290,-56.863,-57.517,-58.239,-58.951,-59.591,-60.191,-60.847,
--61.599,-62.372,-63.059,-63.629,-64.145,-64.676,-65.230,-65.781,-66.332,-66.919,-67.548,-68.166,-68.725,-69.268,-69.914,-70.717,
--71.583,-72.357,-72.982,-73.518,-74.056,-74.652,-75.336,-76.096,-76.849,-77.502,-78.042,-78.538,-79.037,-79.547,-80.125,-80.870,
--81.797,-82.809,-83.807,-84.780,-85.717,-86.576,-87.376,-88.225,-89.161,-90.059,-90.823,-91.547,-92.351,-93.156,-93.814,-94.373,
--94.975,-95.552,-95.890,-95.998,-96.135,-96.388,-96.519,-96.405,-96.340,-96.654,-97.228,-97.695,-98.012,-98.492,-99.290,-100.160,
--100.802,-101.196,-101.496,-101.789,-102.089,-102.416,-102.751,-103.019,-103.202,-103.374,-103.555,-103.648,-103.596,-103.502,-103.484,-103.514,
--103.502,-103.465,-103.470,-103.485,-103.405,-103.209,-102.961,-102.684,-102.344,-101.942,-101.497,-100.956,-100.199,-99.193,-98.080,-97.100,
--96.430,-96.059,-95.760,-95.239,-94.373,-93.294,-92.186,-91.061,-89.820,-88.474,-87.151,-85.887,-84.562,-83.073,-81.469,-79.852,
--78.248,-76.631,-75.025,-73.486,-72.025,-70.594,-69.145,-67.647,-66.051,-64.297,-62.416,-60.639,-59.309,-58.570,-58.136,-57.472,
--56.285,-54.767,-53.297,-52.013,-50.783,-49.472,-48.079,-46.635,-45.144,-43.628,-42.128,-40.645,-39.202,-37.919,-36.872,-35.925,
--34.893,-33.919,-33.373,-33.242,-32.809,-31.249,-28.507,-25.432,-22.997,-21.506,-20.548,-19.531,-18.145,-16.373,-14.288,-12.019,
--9.877,-8.285,-7.414,-6.957,-6.412,-5.549,-4.482,-3.349,-2.159,-.942,.172,1.128,2.024,2.929,3.782,4.558,
-5.385,6.365,7.420,8.433,9.428,10.488,11.576,12.606,13.584,14.579,15.597,16.620,17.681,18.795,19.881,20.875,
-21.837,22.844,23.856,24.797,25.687,26.589,27.483,28.339,29.217,30.190,31.218,32.224,33.226,34.264,35.288,36.244,
-37.197,38.220,39.253,40.218,41.179,42.218,43.253,44.157,44.999,45.983,47.202,48.643,50.294,52.027,53.465,54.319,
-54.847,55.660,56.970,58.276,58.914,58.778,58.369,58.247,58.526,58.848,58.856,58.624,58.448,58.217,57.360,55.698,
-54.035,53.460,54.272,55.991,58.149,60.429,62.215,62.889,62.723,62.696,63.143,63.343,62.810,62.181,62.230,62.695,
-62.911,63.095,64.085,66.008,68.057,69.465,69.951,69.290,67.343,64.621,62.080,60.196,58.943,58.741,60.434,63.846,
-67.239,68.968,69.209,69.332,69.999,70.687,70.869,70.810,71.014,71.538,72.118,72.597,72.993,73.382,73.847,74.377,
-74.758,74.771,74.531,74.403,74.535,74.710,74.702,74.530,74.284,73.939,73.477,73.004,72.588,72.160,71.702,71.373,
-71.271,71.239,71.083,70.873,70.822,70.954,71.083,71.091,71.009,70.877,70.712,70.607,70.661,70.767,70.706,70.487,
-70.375,70.495,70.638,70.595,70.472,70.463,70.514,70.457,70.345,70.354,70.443,70.405,70.216,70.038,69.885,69.599,
-69.197,68.908,68.779,68.577,68.213,67.898,67.742,67.527,67.133,66.804,66.719,66.654,66.409,66.198,66.215,66.183,
-65.877,65.661,65.780,65.479,63.886,61.739,61.029,62.478,64.396,64.729,63.419,61.906,60.967,60.180,59.215,58.461,
-58.193,58.057,57.725,57.402,57.309,57.202,56.820,56.402,56.366,56.712,57.107,57.350,57.469,57.490,57.422,57.339,
-57.276,57.104,56.715,56.218,55.795,55.452,55.100,54.757,54.490,54.219,53.774,53.127,52.409,51.721,51.060,50.413,
-49.810,49.264,48.750,48.247,47.730,47.180,46.633,46.174,45.806,45.415,44.923,44.418,44.020,43.696,43.325,42.880,
-42.436,42.038,41.671,41.340,41.058,40.779,40.436,40.037,39.643,39.260,38.861,38.470,38.127,37.783,37.329,36.739,
-36.118,35.586,35.188,34.900,34.634,34.225,33.532,32.588,31.633,30.961,30.736,30.888,31.143,31.181,30.871,30.337,
-29.747,29.103,28.376,27.814,27.862,28.629,29.530,29.694,28.763,27.248,26.046,25.634,25.762,25.873,25.724,25.511,
-25.438,25.345,24.895,24.054,23.203,22.715,22.550,22.378,22.011,21.564,21.228,21.012,20.800,20.544,20.307,20.121,
-19.915,19.613,19.266,19.034,19.050,19.284,19.554,19.660,19.547,19.360,19.281,19.326,19.342,19.234,19.084,18.988,
-18.862,18.551,18.096,17.720,17.539,17.438,17.277,17.084,16.934,16.787,16.578,16.355,16.191,16.028,15.748,15.391,
-15.140,15.080,15.107,15.090,14.995,14.838,14.623,14.394,14.245,14.230,14.295,14.352,14.364,14.336,14.283,14.249,
-14.297,14.425,14.539,14.546,14.447,14.306,14.178,14.093,14.076,14.135,14.248,14.403,14.603,14.824,14.997,15.073,
-15.075,15.053,15.026,15.008,15.048,15.174,15.318,15.384,15.391,15.459,15.638,15.815,15.863,15.804,15.763,15.802,
-15.882,15.990,16.159,16.375,16.545,16.643,16.786,17.068,17.372,17.487,17.413,17.399,17.629,17.963,18.084,17.834,
-17.337,16.834,16.477,16.281,16.176,16.060,15.870,15.626,15.413,15.294,15.237,15.156,14.995,14.783,14.598,14.477,
-14.381,14.270,14.160,14.082,14.003,13.851,13.619,13.372,13.134,12.858,12.526,12.202,11.945,11.722,11.482,11.241,
-11.031,10.820,10.569,10.312,10.101,9.908,9.650,9.313,8.960,8.626,8.286,7.932,7.600,7.315,7.053,6.787,
-6.515,6.229,5.918,5.593,5.278,4.969,4.641,4.288,3.932,3.580,3.212,2.812,2.384,1.938,1.490,1.063,
-.662,.255,-.180,-.614,-1.008,-1.373,-1.744,-2.122,-2.485,-2.847,-3.236,-3.639,-4.020,-4.387,-4.783,-5.214,
--5.643,-6.052,-6.460,-6.863,-7.230,-7.552,-7.859,-8.162,-8.459,-8.772,-9.145,-9.574,-9.995,-10.353,-10.653,-10.921,
--11.181,-11.457,-11.765,-12.089,-12.400,-12.703,-13.030,-13.386,-13.747,-14.113,-14.493,-14.866,-15.194,-15.482,-15.773,-16.073,
--16.345,-16.585,-16.838,-17.136,-17.460,-17.787,-18.111,-18.425,-18.714,-19.002,-19.329,-19.687,-20.025,-20.327,-20.636,-20.974,
--21.314,-21.629,-21.930,-22.222,-22.483,-22.709,-22.934,-23.175,-23.406,-23.611,-23.809,-24.005,-24.179,-24.325,-24.475,-24.648,
--24.824,-24.977,-25.108,-25.218,-25.302,-25.375,-25.461,-25.543,-25.571,-25.542,-25.519,-25.546,-25.601,-25.640,-25.651,-25.646,
--25.626,-25.597,-25.562,-25.505,-25.400,-25.261,-25.131,-25.013,-24.870,-24.702,-24.557,-24.448,-24.330,-24.172,-24.002,-23.844,
--23.684,-23.512,-23.349,-23.189,-22.992,-22.754,-22.543,-22.401,-22.276,-22.102,-21.895,-21.706,-21.533,-21.336,-21.116,-20.911,
--20.755,-20.649,-20.561,-20.431,-20.210,-19.935,-19.703,-19.555,-19.416,-19.200,-18.929,-18.682,-18.490,-18.321,-18.155,-17.998,
--17.854,-17.713,-17.573,-17.428,-17.259,-17.062,-16.864,-16.685,-16.507,-16.304,-16.078,-15.853,-15.638,-15.435,-15.237,-15.026,
--14.798,-14.586,-14.421,-14.263,-14.049,-13.790,-13.559,-13.366,-13.146,-12.879,-12.632,-12.429,-12.197,-11.902,-11.631,-11.453,
--11.290,-11.049,-10.773,-10.564,-10.411,-10.221,-9.979,-9.734,-9.470,-9.133,-8.755,-8.425,-8.137,-7.800,-7.400,-7.031,
--6.745,-6.473,-6.152,-5.808,-5.469,-5.111,-4.732,-4.398,-4.154,-3.952,-3.727,-3.486,-3.272,-3.087,-2.892,-2.665,
--2.409,-2.143,-1.892,-1.662,-1.417,-1.123,-.809,-.529,-.269,.046,.427,.800,1.121,1.445,1.825,2.221,
-2.571,2.896,3.264,3.697,4.159,4.633,5.159,5.805,6.593,7.427,8.140,8.665,9.133,9.667,10.106,10.134,
-9.770,9.554,10.036,11.162,12.378,13.324,14.263,15.779,18.193,21.244,24.219,26.354,27.282,27.204,26.588,25.690,
-24.464,22.921,21.410,20.374,19.922,19.772,19.624,19.492,19.642,20.266,21.214,22.048,22.377,22.153,21.661,21.238,
-21.019,20.925,20.767,20.369,19.689,18.862,18.041,17.178,16.108,14.880,13.805,13.064,12.441,11.649,10.769,10.102,
-9.627,8.907,7.606,5.893,4.247,2.998,2.151,1.527,.988,.602,.630,1.196,1.905,1.957,.826,-1.215,
--3.334,-4.855,-5.684,-6.145,-6.581,-7.117,-7.681,-8.175,-8.592,-8.939,-9.149,-9.200,-9.302,-9.768,-10.629,-11.561,
--12.315,-13.012,-13.856,-14.736,-15.384,-15.830,-16.390,-17.207,-18.095,-18.884,-19.657,-20.534,-21.419,-22.146,-22.725,-23.294,
--23.887,-24.415,-24.834,-25.210,-25.614,-26.036,-26.436,-26.801,-27.142,-27.467,-27.767,-28.021,-28.205,-28.298,-28.287,-28.195,
--28.081,-27.947,-27.662,-27.093,-26.362,-25.864,-25.893,-26.305,-26.702,-26.879,-26.973,-27.180,-27.525,-27.915,-28.252,-28.422,
--28.339,-28.066,-27.794,-27.600,-27.359,-26.970,-26.580,-26.456,-26.707,-27.235,-27.882,-28.520,-29.022,-29.269,-29.215,-28.898,
--28.399,-27.828,-27.295,-26.832,-26.370,-25.824,-25.185,-24.495,-23.784,-23.086,-22.464,-21.938,-21.427,-20.835,-20.181,-19.578,
--19.078,-18.608,-18.068,-17.446,-16.811,-16.215,-15.633,-15.002,-14.314,-13.629,-12.991,-12.367,-11.717,-11.071,-10.481,-9.921,
--9.320,-8.698,-8.145,-7.669,-7.153,-6.513,-5.809,-5.149,-4.560,-4.021,-3.534,-3.080,-2.578,-1.964,-1.271,-.578,
-.082,.713,1.299,1.840,2.394,3.020,3.694,4.338,4.896,5.334,5.614,5.745,5.815,5.923,6.100,6.335,
-6.632,6.966,7.234,7.365,7.461,7.700,8.094,8.447,8.613,8.690,8.896,9.277,9.657,9.878,10.000,10.195,
-10.479,10.666,10.616,10.428,10.322,10.384,10.535,10.711,10.928,11.186,11.422,11.623,11.846,12.099,12.301,12.413,
-12.506,12.622,12.698,12.692,12.698,12.809,12.951,12.969,12.831,12.636,12.480,12.426,12.541,12.852,13.260,13.611,
-13.852,14.020,14.132,14.199,14.324,14.644,15.149,15.657,16.021,16.277,16.563,16.925,17.254,17.384,17.248,16.971,
-16.774,16.763,16.849,16.917,17.005,17.229,17.578,17.910,18.142,18.324,18.531,18.767,19.006,19.238,19.442,19.584,
-19.658,19.685,19.661,19.576,19.468,19.394,19.347,19.268,19.148,19.040,18.964,18.886,18.800,18.734,18.682,18.590,
-18.447,18.300,18.174,18.041,17.891,17.760,17.655,17.537,17.397,17.292,17.263,17.291,17.336,17.376,17.374,17.304,
-17.196,17.121,17.088,17.043,16.992,16.942,16.909,16.865,16.742,16.545,16.368,16.264,16.210,16.209,16.303,16.437,
-16.466,16.344,16.207,16.179,16.232,16.284,16.302,16.232,16.002,15.691,15.519,15.521,15.432,15.125,14.949,15.302,
-15.955,16.201,15.690,14.794,14.059,13.650,13.463,13.436,13.445,13.177,12.477,11.710,11.431,11.672,11.879,11.598,
-10.954,10.360,9.977,9.641,9.161,8.507,7.773,7.094,6.566,6.135,5.596,4.784,3.743,2.636,1.560,.546,
--.314,-.917,-1.346,-1.870,-2.665,-3.633,-4.550,-5.358,-6.206,-7.216,-8.313,-9.287,-10.020,-10.588,-11.175,-11.883,
--12.667,-13.424,-14.120,-14.796,-15.490,-16.194,-16.869,-17.450,-17.872,-18.141,-18.385,-18.721,-19.080,-19.248,-19.126,-18.875,
--18.733,-18.761,-18.843,-18.885,-18.880,-18.805,-18.590,-18.233,-17.853,-17.534,-17.202,-16.728,-16.123,-15.526,-15.039,-14.654,
--14.365,-14.195,-14.044,-13.648,-12.869,-11.967,-11.401,-11.318,-11.415,-11.398,-11.394,-11.746,-12.472,-13.158,-13.414,-13.259,
--13.023,-12.980,-13.165,-13.429,-13.583,-13.536,-13.395,-13.396,-13.704,-14.290,-14.977,-15.540,-15.725,-15.300,-14.252,-12.969,
--12.138,-12.330,-13.538,-15.039,-15.821,-15.388,-14.265,-13.595,-14.132,-15.642,-17.294,-18.503,-19.298,-20.048,-21.041,-22.311,
--23.673,-24.830,-25.572,-25.948,-26.236,-26.708,-27.431,-28.267,-29.016,-29.574,-30.017,-30.520,-31.161,-31.838,-32.408,-32.850,
--33.241,-33.645,-34.151,-34.943,-36.186,-37.803,-39.486,-40.931,-41.997,-42.676,-43.077,-43.459,-44.108,-45.062,-46.050,-46.805,
--47.352,-47.901,-48.549,-49.209,-49.776,-50.245,-50.625,-50.841,-50.778,-50.410,-49.879,-49.434,-49.266,-49.376,-49.610,-49.827,
--49.990,-50.113,-50.197,-50.264,-50.387,-50.597,-50.810,-50.915,-50.927,-50.976,-51.162,-51.466,-51.800,-52.092,-52.326,-52.529,
--52.752,-53.021,-53.304,-53.556,-53.800,-54.122,-54.580,-55.143,-55.727,-56.290,-56.861,-57.494,-58.203,-58.934,-59.610,-60.218,
--60.824,-61.505,-62.249,-62.962,-63.573,-64.106,-64.638,-65.219,-65.831,-66.443,-67.051,-67.661,-68.247,-68.779,-69.298,-69.917,
--70.696,-71.542,-72.285,-72.853,-73.337,-73.879,-74.545,-75.291,-76.030,-76.710,-77.337,-77.933,-78.475,-78.915,-79.303,-79.822,
--80.621,-81.624,-82.626,-83.536,-84.430,-85.356,-86.246,-87.074,-87.922,-88.825,-89.676,-90.415,-91.154,-91.991,-92.812,-93.465,
--94.021,-94.625,-95.204,-95.563,-95.748,-95.974,-96.192,-96.098,-95.694,-95.496,-95.916,-96.711,-97.359,-97.795,-98.394,-99.302,
--100.195,-100.748,-101.022,-101.264,-101.565,-101.885,-102.215,-102.554,-102.842,-103.046,-103.226,-103.405,-103.495,-103.443,-103.351,-103.337,
--103.375,-103.380,-103.365,-103.382,-103.379,-103.255,-103.017,-102.754,-102.479,-102.123,-101.661,-101.118,-100.444,-99.521,-98.337,-97.092,
--96.088,-95.517,-95.323,-95.219,-94.863,-94.118,-93.129,-92.111,-91.094,-89.961,-88.669,-87.301,-85.904,-84.424,-82.840,-81.249,
--79.744,-78.286,-76.771,-75.182,-73.607,-72.132,-70.746,-69.345,-67.821,-66.151,-64.414,-62.732,-61.227,-60.011,-59.124,-58.412,
--57.573,-56.411,-55.027,-53.657,-52.372,-51.043,-49.577,-48.035,-46.517,-45.029,-43.508,-41.906,-40.257,-38.709,-37.441,-36.413,
--35.312,-33.933,-32.612,-31.979,-32.145,-32.309,-31.377,-28.966,-25.725,-22.757,-20.776,-19.705,-18.904,-17.735,-16.010,-13.965,
--11.930,-10.107,-8.609,-7.499,-6.713,-6.036,-5.255,-4.291,-3.164,-1.934,-.705,.420,1.433,2.379,3.223,3.890,
-4.482,5.261,6.326,7.488,8.552,9.568,10.679,11.853,12.950,13.939,14.900,15.885,16.916,18.028,19.192,20.270,
-21.201,22.109,23.126,24.184,25.156,26.064,26.997,27.919,28.755,29.598,30.599,31.729,32.824,33.833,34.824,35.803,
-36.720,37.631,38.638,39.699,40.681,41.588,42.537,43.543,44.526,45.528,46.706,48.103,49.606,51.114,52.543,53.713,
-54.504,55.137,56.017,57.179,58.143,58.454,58.197,57.844,57.704,57.702,57.628,57.523,57.685,58.205,58.528,57.821,
-55.995,54.116,53.465,54.388,56.354,58.794,61.293,63.213,64.002,63.976,64.053,64.474,64.533,63.864,63.145,63.033,
-63.179,63.067,63.211,64.525,66.814,68.821,69.629,69.204,67.688,65.154,62.178,59.772,58.459,58.124,58.921,61.424,
-65.387,69.183,71.216,71.493,71.211,71.214,71.499,71.890,72.402,72.945,73.272,73.336,73.326,73.356,73.448,73.744,
-74.328,74.882,74.958,74.626,74.425,74.603,74.813,74.703,74.390,74.145,73.940,73.595,73.115,72.610,72.070,71.468,
-70.967,70.755,70.755,70.738,70.649,70.617,70.696,70.794,70.858,70.908,70.922,70.858,70.796,70.870,71.025,71.056,
-70.927,70.843,70.919,71.001,70.936,70.835,70.869,70.955,70.894,70.708,70.602,70.634,70.667,70.621,70.552,70.449,
-70.214,69.879,69.605,69.409,69.128,68.737,68.429,68.265,68.039,67.650,67.306,67.153,66.999,66.688,66.428,66.392,
-66.345,66.097,65.966,66.142,65.905,64.416,62.298,61.376,62.435,64.088,64.484,63.462,62.227,61.472,60.822,59.947,
-59.178,58.800,58.541,58.096,57.633,57.397,57.240,56.913,56.552,56.497,56.802,57.211,57.493,57.592,57.548,57.465,
-57.469,57.549,57.513,57.221,56.769,56.320,55.892,55.429,54.978,54.613,54.279,53.846,53.271,52.601,51.870,51.114,
-50.421,49.848,49.350,48.861,48.401,47.986,47.538,46.979,46.375,45.860,45.457,45.084,44.695,44.311,43.932,43.523,
-43.089,42.665,42.268,41.907,41.613,41.376,41.102,40.715,40.267,39.851,39.464,39.055,38.658,38.346,38.061,37.639,
-37.030,36.378,35.850,35.476,35.176,34.866,34.448,33.810,32.923,31.943,31.184,30.909,31.118,31.509,31.680,31.440,
-30.897,30.243,29.531,28.769,28.148,27.999,28.413,29.002,29.151,28.545,27.433,26.391,25.843,25.779,25.894,25.938,
-25.890,25.784,25.506,24.896,24.025,23.242,22.844,22.770,22.696,22.401,21.956,21.564,21.305,21.092,20.840,20.582,
-20.382,20.190,19.890,19.489,19.198,19.232,19.550,19.856,19.886,19.660,19.416,19.319,19.297,19.207,19.094,19.142,
-19.359,19.448,19.118,18.471,17.902,17.630,17.523,17.376,17.187,17.045,16.922,16.741,16.540,16.393,16.243,15.966,
-15.591,15.285,15.130,15.052,14.987,14.953,14.932,14.837,14.651,14.499,14.482,14.542,14.552,14.480,14.387,14.314,
-14.270,14.266,14.313,14.382,14.425,14.426,14.393,14.336,14.283,14.284,14.369,14.511,14.657,14.778,14.866,14.923,
-14.968,15.030,15.095,15.117,15.114,15.180,15.357,15.540,15.605,15.595,15.650,15.781,15.846,15.777,15.707,15.780,
-15.934,15.996,15.953,15.964,16.111,16.298,16.435,16.592,16.859,17.153,17.298,17.265,17.205,17.247,17.366,17.459,
-17.445,17.279,16.957,16.574,16.294,16.179,16.106,15.919,15.622,15.362,15.236,15.203,15.158,15.053,14.916,14.790,
-14.675,14.538,14.365,14.196,14.068,13.955,13.798,13.600,13.413,13.236,12.995,12.671,12.345,12.089,11.872,11.637,
-11.399,11.197,11.003,10.778,10.553,10.383,10.233,10.013,9.706,9.371,9.033,8.652,8.227,7.819,7.482,7.199,
-6.932,6.665,6.386,6.088,5.786,5.500,5.211,4.881,4.506,4.124,3.754,3.379,2.984,2.572,2.143,1.699,
-1.267,.863,.459,.014,-.453,-.887,-1.269,-1.626,-1.980,-2.337,-2.714,-3.126,-3.540,-3.919,-4.282,-4.676,
--5.095,-5.491,-5.859,-6.236,-6.622,-6.975,-7.279,-7.564,-7.850,-8.134,-8.440,-8.811,-9.232,-9.633,-9.976,-10.286,
--10.589,-10.879,-11.165,-11.473,-11.800,-12.111,-12.399,-12.706,-13.054,-13.417,-13.780,-14.154,-14.529,-14.863,-15.151,-15.436,
--15.736,-16.019,-16.268,-16.530,-16.847,-17.194,-17.520,-17.813,-18.092,-18.376,-18.677,-19.000,-19.324,-19.623,-19.909,-20.225,
--20.578,-20.923,-21.233,-21.516,-21.781,-22.014,-22.226,-22.455,-22.708,-22.950,-23.158,-23.356,-23.554,-23.734,-23.893,-24.064,
--24.259,-24.444,-24.591,-24.715,-24.831,-24.928,-25.003,-25.079,-25.154,-25.194,-25.193,-25.201,-25.249,-25.307,-25.331,-25.326,
--25.318,-25.308,-25.287,-25.249,-25.183,-25.073,-24.940,-24.824,-24.721,-24.589,-24.422,-24.268,-24.144,-24.008,-23.831,-23.653,
--23.507,-23.371,-23.223,-23.073,-22.925,-22.740,-22.513,-22.304,-22.152,-22.014,-21.831,-21.624,-21.439,-21.266,-21.064,-20.843,
--20.652,-20.518,-20.426,-20.343,-20.223,-20.024,-19.769,-19.543,-19.390,-19.250,-19.051,-18.811,-18.601,-18.436,-18.276,-18.104,
--17.942,-17.797,-17.654,-17.505,-17.352,-17.184,-16.993,-16.797,-16.620,-16.457,-16.275,-16.064,-15.842,-15.629,-15.434,-15.243,
--15.031,-14.801,-14.596,-14.438,-14.277,-14.052,-13.795,-13.587,-13.417,-13.199,-12.924,-12.694,-12.539,-12.363,-12.105,-11.855,
--11.693,-11.545,-11.313,-11.045,-10.851,-10.711,-10.536,-10.327,-10.141,-9.934,-9.614,-9.216,-8.863,-8.560,-8.193,-7.745,
--7.343,-7.063,-6.822,-6.530,-6.204,-5.871,-5.483,-5.016,-4.563,-4.234,-4.025,-3.859,-3.685,-3.489,-3.259,-3.002,
--2.755,-2.530,-2.295,-2.039,-1.796,-1.568,-1.312,-1.018,-.733,-.464,-.142,.247,.610,.887,1.163,1.533,
-1.944,2.279,2.563,2.939,3.455,4.007,4.513,5.045,5.724,6.530,7.306,7.930,8.454,9.004,9.537,9.776,
-9.541,9.148,9.292,10.391,12.117,13.747,14.936,16.032,17.646,20.049,22.958,25.722,27.656,28.351,27.828,26.416,
-24.490,22.391,20.536,19.378,19.095,19.388,19.721,19.775,19.666,19.764,20.345,21.316,22.215,22.537,22.159,21.437,
-20.860,20.639,20.643,20.613,20.357,19.813,19.061,18.245,17.421,16.512,15.496,14.513,13.683,12.904,12.007,11.056,
-10.283,9.687,8.923,7.689,6.100,4.559,3.359,2.494,1.808,1.212,.802,.771,1.153,1.597,1.494,.459,
--1.309,-3.182,-4.600,-5.425,-5.896,-6.327,-6.850,-7.400,-7.891,-8.342,-8.773,-9.092,-9.232,-9.369,-9.790,-10.531,
--11.327,-12.003,-12.701,-13.566,-14.435,-15.065,-15.534,-16.143,-16.977,-17.831,-18.582,-19.362,-20.275,-21.182,-21.896,-22.450,
--23.003,-23.595,-24.127,-24.553,-24.939,-25.345,-25.747,-26.107,-26.435,-26.760,-27.075,-27.343,-27.553,-27.720,-27.816,-27.773,
--27.578,-27.345,-27.172,-26.960,-26.516,-25.874,-25.374,-25.301,-25.561,-25.858,-26.087,-26.383,-26.828,-27.321,-27.738,-28.031,
--28.145,-28.013,-27.703,-27.417,-27.257,-27.101,-26.803,-26.411,-26.085,-25.912,-25.894,-26.066,-26.482,-27.096,-27.730,-28.165,
--28.256,-28.006,-27.567,-27.127,-26.740,-26.318,-25.781,-25.156,-24.501,-23.822,-23.146,-22.563,-22.110,-21.671,-21.104,-20.451,
--19.889,-19.479,-19.062,-18.458,-17.689,-16.952,-16.370,-15.865,-15.287,-14.614,-13.959,-13.388,-12.824,-12.190,-11.546,-10.995,
--10.507,-9.957,-9.321,-8.701,-8.149,-7.591,-6.972,-6.350,-5.794,-5.284,-4.776,-4.278,-3.792,-3.248,-2.587,-1.860,
--1.163,-.528,.075,.660,1.228,1.801,2.398,2.999,3.559,4.051,4.460,4.779,5.047,5.334,5.652,5.935,
-6.159,6.399,6.701,6.975,7.128,7.239,7.494,7.918,8.308,8.486,8.524,8.653,8.974,9.347,9.592,9.719,
-9.890,10.159,10.373,10.386,10.279,10.261,10.411,10.641,10.879,11.145,11.438,11.701,11.935,12.213,12.525,12.737,
-12.780,12.755,12.759,12.722,12.554,12.330,12.210,12.215,12.229,12.181,12.113,12.112,12.260,12.638,13.249,13.965,
-14.631,15.199,15.684,16.044,16.228,16.307,16.414,16.567,16.660,16.658,16.685,16.876,17.207,17.509,17.609,17.470,
-17.236,17.122,17.219,17.421,17.587,17.735,17.986,18.357,18.726,18.990,19.166,19.319,19.474,19.632,19.781,19.893,
-19.937,19.925,19.885,19.809,19.677,19.522,19.396,19.286,19.142,18.974,18.840,18.751,18.663,18.572,18.514,18.488,
-18.444,18.366,18.281,18.190,18.063,17.919,17.816,17.765,17.714,17.647,17.601,17.591,17.585,17.567,17.548,17.501,
-17.384,17.222,17.097,17.036,16.992,17.048,17.014,16.976,16.913,16.758,16.536,16.372,16.328,16.329,16.326,16.374,
-16.489,16.553,16.471,16.336,16.299,16.371,16.445,16.442,16.340,16.124,15.837,15.616,15.577,15.696,15.872,16.016,
-15.997,15.646,14.977,14.303,13.921,13.756,13.531,13.232,13.073,12.990,12.549,11.584,10.627,10.369,10.810,11.265,
-11.179,10.665,10.166,9.879,9.655,9.286,8.703,7.956,7.158,6.434,5.824,5.218,4.452,3.469,2.349,1.205,
-.126,-.813,-1.559,-2.156,-2.741,-3.439,-4.263,-5.132,-5.987,-6.856,-7.817,-8.883,-9.939,-10.828,-11.493,-12.028,
--12.563,-13.147,-13.766,-14.423,-15.142,-15.903,-16.652,-17.334,-17.887,-18.236,-18.395,-18.539,-18.864,-19.329,-19.666,-19.689,
--19.506,-19.353,-19.322,-19.342,-19.346,-19.320,-19.217,-18.970,-18.605,-18.233,-17.892,-17.507,-17.032,-16.530,-16.058,-15.578,
--15.079,-14.689,-14.489,-14.249,-13.563,-12.363,-11.151,-10.536,-10.584,-10.807,-10.808,-10.727,-10.930,-11.434,-11.873,-11.989,
--11.936,-12.043,-12.410,-12.856,-13.153,-13.205,-13.067,-12.910,-12.945,-13.290,-13.898,-14.627,-15.322,-15.778,-15.695,-14.886,
--13.613,-12.616,-12.617,-13.669,-15.002,-15.606,-15.099,-14.068,-13.545,-14.125,-15.561,-17.146,-18.355,-19.147,-19.796,-20.607,
--21.725,-23.067,-24.374,-25.389,-26.052,-26.533,-27.073,-27.797,-28.635,-29.412,-30.025,-30.560,-31.186,-31.928,-32.628,-33.148,
--33.556,-34.029,-34.663,-35.484,-36.554,-37.912,-39.435,-40.859,-41.987,-42.782,-43.288,-43.599,-43.936,-44.556,-45.495,-46.464,
--47.143,-47.516,-47.843,-48.329,-48.934,-49.500,-49.944,-50.273,-50.464,-50.419,-50.090,-49.615,-49.258,-49.189,-49.347,-49.545,
--49.676,-49.759,-49.836,-49.913,-50.011,-50.170,-50.370,-50.517,-50.565,-50.592,-50.705,-50.915,-51.164,-51.415,-51.676,-51.943,
--52.201,-52.451,-52.697,-52.930,-53.157,-53.448,-53.888,-54.480,-55.137,-55.764,-56.339,-56.900,-57.505,-58.177,-58.889,-59.572,
--60.194,-60.797,-61.452,-62.159,-62.833,-63.409,-63.923,-64.481,-65.139,-65.843,-66.503,-67.088,-67.639,-68.201,-68.774,-69.354,
--69.984,-70.700,-71.456,-72.134,-72.675,-73.162,-73.734,-74.446,-75.211,-75.911,-76.526,-77.133,-77.771,-78.351,-78.772,-79.120,
--79.643,-80.477,-81.468,-82.375,-83.172,-84.017,-84.967,-85.901,-86.743,-87.567,-88.426,-89.248,-90.000,-90.782,-91.642,-92.440,
--93.053,-93.588,-94.189,-94.774,-95.192,-95.526,-95.896,-96.073,-95.690,-94.938,-94.600,-95.158,-96.208,-97.057,-97.629,-98.365,
--99.396,-100.307,-100.750,-100.882,-101.053,-101.364,-101.719,-102.071,-102.428,-102.738,-102.957,-103.133,-103.301,-103.391,-103.352,-103.269,
--103.252,-103.280,-103.277,-103.253,-103.254,-103.229,-103.093,-102.870,-102.632,-102.352,-101.939,-101.389,-100.758,-99.995,-98.962,-97.660,
--96.341,-95.337,-94.809,-94.656,-94.581,-94.272,-93.606,-92.704,-91.754,-90.788,-89.698,-88.422,-87.013,-85.541,-84.019,-82.477,
--80.993,-79.607,-78.251,-76.824,-75.310,-73.787,-72.354,-71.029,-69.706,-68.232,-66.582,-64.921,-63.442,-62.179,-61.033,-59.925,
--58.831,-57.702,-56.477,-55.181,-53.903,-52.650,-51.308,-49.798,-48.184,-46.586,-45.045,-43.488,-41.829,-40.090,-38.467,-37.155,
--36.066,-34.820,-33.216,-31.645,-30.814,-30.957,-31.450,-31.249,-29.679,-26.878,-23.687,-21.097,-19.541,-18.572,-17.342,-15.492,
--13.414,-11.650,-10.264,-8.977,-7.682,-6.556,-5.714,-4.998,-4.148,-3.051,-1.803,-.577,.535,1.578,2.595,3.481,
-4.117,4.633,5.361,6.444,7.668,8.788,9.844,11.001,12.229,13.351,14.305,15.200,16.152,17.215,18.395,19.600,
-20.668,21.554,22.426,23.421,24.453,25.392,26.300,27.297,28.308,29.200,30.059,31.089,32.274,33.401,34.382,35.307,
-36.215,37.063,37.925,38.946,40.072,41.074,41.887,42.709,43.699,44.803,45.952,47.209,48.621,50.100,51.523,52.811,
-53.877,54.670,55.336,56.106,56.936,57.491,57.576,57.417,57.334,57.290,56.965,56.276,55.673,55.789,56.690,57.530,
-57.222,55.647,53.984,53.605,54.828,56.998,59.438,61.767,63.523,64.292,64.319,64.300,64.365,63.952,62.912,61.980,
-61.704,61.686,61.540,61.903,63.559,65.972,67.648,67.786,66.684,64.718,61.951,58.898,56.680,56.024,56.809,58.836,
-62.248,66.691,70.784,73.135,73.607,73.108,72.534,72.347,72.759,73.648,74.450,74.660,74.398,74.121,73.978,73.889,
-73.991,74.464,75.003,75.078,74.725,74.528,74.723,74.881,74.642,74.251,74.065,73.966,73.611,72.974,72.270,71.552,
-70.770,70.090,69.801,69.921,70.171,70.332,70.418,70.489,70.532,70.554,70.618,70.715,70.767,70.782,70.871,71.053,
-71.194,71.210,71.187,71.224,71.280,71.286,71.296,71.382,71.459,71.381,71.174,71.016,70.997,71.039,71.048,71.009,
-70.906,70.702,70.427,70.165,69.913,69.585,69.209,68.931,68.771,68.560,68.225,67.917,67.718,67.465,67.055,66.699,
-66.579,66.515,66.322,66.232,66.420,66.307,65.102,63.141,61.910,62.307,63.482,63.928,63.270,62.319,61.688,61.174,
-60.479,59.779,59.318,58.967,58.508,58.020,57.684,57.443,57.142,56.838,56.739,56.922,57.270,57.612,57.803,57.777,
-57.639,57.603,57.743,57.881,57.801,57.474,56.997,56.434,55.822,55.241,54.756,54.343,53.938,53.494,52.940,52.202,
-51.343,50.572,50.006,49.548,49.081,48.656,48.339,48.006,47.459,46.716,46.019,45.551,45.267,45.008,44.666,44.232,
-43.763,43.324,42.926,42.528,42.132,41.801,41.544,41.256,40.850,40.382,39.958,39.570,39.154,38.749,38.440,38.177,
-37.793,37.234,36.640,36.160,35.787,35.432,35.049,34.611,34.035,33.243,32.314,31.526,31.183,31.363,31.799,32.056,
-31.860,31.260,30.484,29.693,28.937,28.304,27.957,28.002,28.338,28.675,28.684,28.198,27.340,26.482,25.981,25.899,
-25.990,25.956,25.670,25.178,24.564,23.912,23.339,22.971,22.840,22.817,22.712,22.439,22.075,21.740,21.467,21.214,
-20.985,20.813,20.650,20.362,19.938,19.600,19.581,19.826,20.016,19.928,19.663,19.473,19.430,19.380,19.223,19.114,
-19.276,19.642,19.816,19.480,18.774,18.141,17.831,17.715,17.575,17.391,17.250,17.132,16.955,16.739,16.559,16.385,
-16.114,15.759,15.445,15.237,15.093,14.997,14.990,15.038,15.013,14.876,14.746,14.731,14.775,14.751,14.643,14.530,
-14.457,14.396,14.327,14.269,14.256,14.300,14.386,14.467,14.492,14.478,14.507,14.632,14.800,14.904,14.891,14.812,
-14.789,14.932,15.225,15.495,15.564,15.468,15.429,15.569,15.754,15.797,15.734,15.736,15.810,15.784,15.615,15.511,
-15.636,15.851,15.910,15.812,15.784,15.943,16.166,16.325,16.468,16.682,16.908,17.031,17.052,17.065,17.097,17.122,
-17.159,17.239,17.267,17.086,16.716,16.377,16.222,16.147,15.964,15.656,15.367,15.192,15.099,15.021,14.942,14.870,
-14.800,14.715,14.597,14.437,14.256,14.089,13.942,13.788,13.626,13.476,13.320,13.093,12.780,12.456,12.188,11.952,
-11.707,11.486,11.331,11.198,11.015,10.796,10.611,10.461,10.281,10.048,9.783,9.472,9.072,8.600,8.148,7.780,
-7.474,7.189,6.908,6.618,6.306,5.987,5.685,5.386,5.046,4.664,4.279,3.909,3.534,3.144,2.750,2.350,
-1.930,1.508,1.113,.729,.307,-.157,-.608,-1.007,-1.364,-1.710,-2.070,-2.470,-2.911,-3.350,-3.744,-4.116,
--4.509,-4.912,-5.279,-5.617,-5.977,-6.362,-6.718,-7.021,-7.300,-7.576,-7.854,-8.163,-8.535,-8.939,-9.302,-9.614,
--9.930,-10.268,-10.582,-10.859,-11.149,-11.476,-11.797,-12.085,-12.376,-12.706,-13.052,-13.394,-13.753,-14.134,-14.492,-14.801,
--15.095,-15.404,-15.701,-15.961,-16.229,-16.553,-16.906,-17.227,-17.506,-17.786,-18.095,-18.421,-18.737,-19.030,-19.312,-19.612,
--19.949,-20.298,-20.614,-20.886,-21.134,-21.367,-21.571,-21.768,-21.997,-22.257,-22.503,-22.712,-22.913,-23.117,-23.304,-23.474,
--23.660,-23.867,-24.045,-24.169,-24.276,-24.398,-24.514,-24.602,-24.679,-24.757,-24.815,-24.850,-24.894,-24.963,-25.015,-25.020,
--25.008,-25.012,-25.016,-24.987,-24.925,-24.845,-24.745,-24.629,-24.517,-24.407,-24.272,-24.108,-23.951,-23.814,-23.660,-23.474,
--23.297,-23.160,-23.038,-22.903,-22.770,-22.649,-22.502,-22.310,-22.114,-21.949,-21.787,-21.591,-21.387,-21.209,-21.034,-20.828,
--20.617,-20.448,-20.322,-20.205,-20.083,-19.951,-19.787,-19.587,-19.392,-19.233,-19.076,-18.884,-18.683,-18.523,-18.384,-18.217,
--18.022,-17.847,-17.705,-17.564,-17.406,-17.244,-17.081,-16.907,-16.729,-16.568,-16.417,-16.246,-16.041,-15.820,-15.612,-15.427,
--15.249,-15.046,-14.818,-14.606,-14.433,-14.254,-14.018,-13.766,-13.579,-13.442,-13.255,-13.001,-12.773,-12.617,-12.450,-12.217,
--11.991,-11.842,-11.703,-11.493,-11.261,-11.091,-10.947,-10.749,-10.530,-10.365,-10.204,-9.932,-9.567,-9.226,-8.919,-8.547,
--8.104,-7.720,-7.454,-7.215,-6.925,-6.622,-6.333,-5.986,-5.519,-4.989,-4.505,-4.132,-3.892,-3.775,-3.687,-3.504,
--3.218,-2.946,-2.745,-2.539,-2.266,-1.987,-1.761,-1.533,-1.237,-.908,-.604,-.292,.061,.394,.652,.914,
-1.272,1.662,1.967,2.245,2.679,3.304,3.954,4.513,5.068,5.738,6.472,7.138,7.729,8.347,8.983,9.397,
-9.337,8.921,8.739,9.440,11.135,13.253,15.093,16.462,17.737,19.368,21.469,23.800,25.918,27.306,27.537,26.522,
-24.583,22.279,20.178,18.751,18.264,18.619,19.338,19.874,19.976,19.809,19.785,20.259,21.210,22.148,22.452,21.937,
-21.038,20.360,20.134,20.186,20.269,20.231,19.944,19.333,18.509,17.691,16.939,16.106,15.088,13.981,12.929,11.975,
-11.125,10.419,9.796,9.013,7.852,6.389,4.942,3.758,2.839,2.069,1.410,.942,.749,.782,.808,.499,
--.352,-1.656,-3.076,-4.256,-5.056,-5.588,-6.059,-6.570,-7.088,-7.580,-8.083,-8.583,-8.953,-9.124,-9.276,-9.675,
--10.340,-11.044,-11.670,-12.359,-13.208,-14.051,-14.703,-15.266,-15.971,-16.825,-17.633,-18.348,-19.132,-20.057,-20.951,-21.644,
--22.190,-22.742,-23.321,-23.837,-24.264,-24.663,-25.071,-25.452,-25.781,-26.091,-26.412,-26.710,-26.936,-27.100,-27.239,-27.307,
--27.175,-26.823,-26.440,-26.232,-26.131,-25.873,-25.376,-24.897,-24.710,-24.802,-25.011,-25.333,-25.873,-26.571,-27.194,-27.595,
--27.806,-27.864,-27.733,-27.446,-27.161,-26.975,-26.804,-26.541,-26.206,-25.878,-25.561,-25.237,-24.993,-24.999,-25.348,-25.950,
--26.558,-26.918,-26.947,-26.795,-26.664,-26.556,-26.297,-25.794,-25.162,-24.549,-23.977,-23.411,-22.880,-22.403,-21.894,-21.272,
--20.628,-20.137,-19.803,-19.403,-18.754,-17.947,-17.239,-16.748,-16.335,-15.804,-15.149,-14.529,-14.020,-13.516,-12.910,-12.278,
--11.767,-11.365,-10.908,-10.316,-9.673,-9.067,-8.480,-7.873,-7.282,-6.754,-6.266,-5.772,-5.264,-4.728,-4.109,-3.395,
--2.666,-2.018,-1.456,-.920,-.367,.201,.778,1.351,1.907,2.441,2.950,3.404,3.783,4.153,4.609,5.133,
-5.582,5.881,6.120,6.407,6.708,6.936,7.132,7.435,7.858,8.232,8.402,8.424,8.511,8.788,9.163,9.459,
-9.633,9.799,10.030,10.234,10.299,10.298,10.410,10.681,10.995,11.263,11.519,11.782,11.993,12.131,12.259,12.380,
-12.391,12.263,12.141,12.142,12.171,12.073,11.883,11.784,11.873,12.086,12.329,12.572,12.819,13.112,13.528,14.110,
-14.809,15.563,16.367,17.182,17.839,18.170,18.186,18.038,17.825,17.561,17.320,17.258,17.448,17.782,18.069,18.191,
-18.164,18.112,18.190,18.443,18.753,18.972,19.100,19.257,19.501,19.751,19.910,19.964,19.958,19.933,19.905,19.867,
-19.794,19.683,19.582,19.529,19.494,19.427,19.338,19.261,19.178,19.052,18.910,18.814,18.763,18.704,18.629,18.578,
-18.555,18.521,18.470,18.423,18.362,18.250,18.112,18.010,17.952,17.894,17.832,17.793,17.758,17.675,17.564,17.487,
-17.434,17.334,17.189,17.087,17.059,17.048,17.154,17.103,17.032,16.955,16.811,16.604,16.460,16.448,16.477,16.460,
-16.455,16.540,16.637,16.618,16.509,16.454,16.498,16.545,16.511,16.404,16.243,16.022,15.815,15.834,16.278,17.043,
-17.617,17.383,16.207,14.697,13.711,13.518,13.612,13.424,13.011,12.763,12.642,12.121,10.986,9.804,9.338,9.684,
-10.236,10.429,10.234,9.941,9.715,9.495,9.170,8.679,7.998,7.162,6.299,5.548,4.906,4.207,3.282,2.125,
-.890,-.251,-1.217,-2.021,-2.695,-3.288,-3.896,-4.637,-5.550,-6.543,-7.493,-8.396,-9.342,-10.358,-11.338,-12.157,
--12.799,-13.328,-13.801,-14.274,-14.833,-15.536,-16.331,-17.095,-17.745,-18.240,-18.538,-18.656,-18.767,-19.076,-19.566,-19.972,
--20.079,-19.961,-19.845,-19.841,-19.893,-19.914,-19.856,-19.671,-19.340,-18.939,-18.565,-18.201,-17.762,-17.270,-16.837,-16.469,
--16.028,-15.480,-15.013,-14.735,-14.358,-13.436,-11.968,-10.546,-9.759,-9.595,-9.579,-9.437,-9.367,-9.630,-10.115,-10.504,
--10.729,-11.034,-11.582,-12.207,-12.629,-12.766,-12.725,-12.632,-12.593,-12.747,-13.196,-13.874,-14.600,-15.263,-15.802,-16.024,
--15.641,-14.648,-13.574,-13.152,-13.652,-14.573,-15.089,-14.784,-13.995,-13.475,-13.781,-14.925,-16.476,-17.926,-19.001,-19.759,
--20.479,-21.419,-22.621,-23.903,-25.040,-25.928,-26.626,-27.290,-28.046,-28.904,-29.752,-30.498,-31.178,-31.883,-32.572,-33.093,
--33.425,-33.792,-34.464,-35.496,-36.754,-38.108,-39.478,-40.740,-41.760,-42.525,-43.126,-43.612,-43.976,-44.314,-44.845,-45.668,
--46.583,-47.276,-47.662,-47.936,-48.322,-48.839,-49.357,-49.770,-50.058,-50.192,-50.094,-49.743,-49.295,-49.007,-49.013,-49.216,
--49.423,-49.536,-49.580,-49.601,-49.632,-49.720,-49.894,-50.098,-50.241,-50.312,-50.394,-50.537,-50.706,-50.865,-51.059,-51.338,
--51.673,-51.982,-52.216,-52.385,-52.537,-52.758,-53.143,-53.723,-54.414,-55.097,-55.713,-56.287,-56.865,-57.471,-58.113,-58.773,
--59.417,-60.034,-60.662,-61.341,-62.038,-62.668,-63.205,-63.727,-64.336,-65.048,-65.774,-66.412,-66.948,-67.460,-68.034,-68.682,
--69.356,-70.026,-70.703,-71.384,-72.018,-72.562,-73.063,-73.628,-74.310,-75.039,-75.710,-76.310,-76.922,-77.575,-78.167,-78.606,
--78.994,-79.559,-80.373,-81.250,-82.009,-82.724,-83.587,-84.600,-85.571,-86.406,-87.198,-88.026,-88.837,-89.606,-90.411,-91.260,
--92.008,-92.581,-93.119,-93.746,-94.354,-94.831,-95.296,-95.800,-95.977,-95.434,-94.501,-94.119,-94.773,-95.939,-96.862,-97.511,
--98.367,-99.500,-100.405,-100.734,-100.736,-100.841,-101.155,-101.541,-101.927,-102.314,-102.641,-102.851,-103.000,-103.153,-103.264,-103.269,
--103.223,-103.213,-103.222,-103.187,-103.126,-103.087,-103.041,-102.928,-102.761,-102.560,-102.252,-101.758,-101.127,-100.444,-99.630,-98.521,
--97.149,-95.830,-94.897,-94.430,-94.250,-94.082,-93.702,-93.034,-92.157,-91.201,-90.199,-89.084,-87.810,-86.418,-84.973,-83.517,
--82.085,-80.716,-79.411,-78.115,-76.768,-75.346,-73.881,-72.467,-71.190,-70.000,-68.712,-67.220,-65.664,-64.279,-63.101,-61.940,
--60.642,-59.245,-57.862,-56.540,-55.270,-54.048,-52.835,-51.530,-50.054,-48.435,-46.779,-45.149,-43.516,-41.811,-40.057,-38.422,
--37.049,-35.820,-34.407,-32.693,-31.062,-30.108,-30.065,-30.573,-30.897,-30.273,-28.283,-25.251,-22.194,-20.004,-18.582,-17.077,
--15.041,-12.965,-11.501,-10.552,-9.491,-8.053,-6.589,-5.488,-4.705,-3.916,-2.921,-1.766,-.603,.487,1.553,2.658,
-3.713,4.547,5.184,5.907,6.928,8.132,9.284,10.365,11.501,12.684,13.758,14.665,15.520,16.459,17.532,18.717,
-19.912,20.969,21.864,22.747,23.730,24.720,25.616,26.530,27.600,28.717,29.680,30.545,31.537,32.674,33.749,34.666,
-35.521,36.364,37.154,37.981,39.021,40.210,41.246,42.027,42.831,43.921,45.215,46.486,47.695,48.953,50.299,51.660,
-52.937,54.021,54.833,55.426,55.931,56.347,56.532,56.487,56.470,56.642,56.737,56.286,55.209,54.094,53.759,54.446,
-55.422,55.612,54.789,53.934,54.219,55.801,57.922,59.918,61.613,62.871,63.480,63.581,63.593,63.475,62.708,61.259,
-59.913,59.259,59.002,58.842,59.334,61.029,63.198,64.369,63.959,62.514,60.486,57.825,54.913,52.948,52.938,54.922,
-58.443,63.080,68.084,72.167,74.329,74.687,74.114,73.399,73.048,73.397,74.342,75.214,75.449,75.219,75.029,74.973,
-74.858,74.778,74.962,75.190,75.001,74.474,74.188,74.339,74.473,74.267,74.001,73.985,73.977,73.568,72.791,71.960,
-71.146,70.237,69.371,68.903,68.940,69.221,69.487,69.717,69.949,70.120,70.196,70.274,70.438,70.639,70.783,70.889,
-71.026,71.186,71.299,71.358,71.428,71.550,71.687,71.786,71.828,71.807,71.725,71.614,71.538,71.530,71.552,71.548,
-71.489,71.369,71.181,70.939,70.668,70.369,70.027,69.678,69.399,69.186,68.948,68.656,68.398,68.196,67.907,67.449,
-66.993,66.727,66.564,66.349,66.224,66.381,66.454,65.703,64.056,62.531,62.177,62.845,63.451,63.281,62.576,61.874,
-61.315,60.758,60.198,59.738,59.368,58.987,58.577,58.184,57.816,57.463,57.173,57.029,57.092,57.388,57.849,58.252,
-58.353,58.152,57.928,57.930,58.111,58.223,58.074,57.632,56.979,56.251,55.580,55.012,54.529,54.122,53.763,53.312,
-52.607,51.704,50.874,50.284,49.832,49.371,48.951,48.666,48.390,47.874,47.081,46.258,45.661,45.322,45.082,44.778,
-44.364,43.915,43.522,43.174,42.779,42.323,41.914,41.614,41.328,40.936,40.464,40.022,39.625,39.213,38.798,38.447,
-38.141,37.776,37.322,36.871,36.486,36.116,35.693,35.228,34.742,34.182,33.478,32.672,31.957,31.571,31.609,31.904,
-32.096,31.900,31.302,30.506,29.712,28.989,28.344,27.850,27.665,27.926,28.577,29.237,29.352,28.630,27.373,26.276,
-25.807,25.825,25.826,25.497,24.946,24.440,24.061,23.699,23.307,23.006,22.908,22.916,22.815,22.528,22.172,21.878,
-21.658,21.478,21.337,21.193,20.936,20.544,20.192,20.066,20.105,20.070,19.859,19.634,19.565,19.589,19.509,19.292,
-19.146,19.274,19.592,19.757,19.505,18.933,18.377,18.054,17.893,17.735,17.557,17.426,17.327,17.177,16.966,16.755,
-16.544,16.265,15.912,15.574,15.321,15.153,15.065,15.066,15.104,15.077,14.969,14.885,14.912,14.991,15.001,14.906,
-14.761,14.624,14.510,14.416,14.345,14.314,14.347,14.448,14.562,14.613,14.606,14.625,14.728,14.858,14.899,14.813,
-14.704,14.767,15.136,15.712,16.160,16.194,15.897,15.642,15.658,15.790,15.793,15.692,15.689,15.797,15.807,15.643,
-15.501,15.548,15.668,15.673,15.618,15.718,16.001,16.271,16.406,16.495,16.630,16.738,16.743,16.728,16.803,16.911,
-16.934,16.909,16.972,17.087,17.055,16.796,16.480,16.280,16.153,15.957,15.671,15.393,15.182,15.026,14.911,14.840,
-14.783,14.709,14.627,14.555,14.467,14.323,14.140,13.966,13.815,13.665,13.507,13.334,13.117,12.845,12.555,12.285,
-12.021,11.758,11.554,11.451,11.384,11.240,11.007,10.765,10.569,10.400,10.231,10.039,9.774,9.387,8.920,8.475,
-8.108,7.789,7.479,7.173,6.859,6.513,6.149,5.803,5.473,5.122,4.744,4.377,4.032,3.678,3.305,2.933,
-2.565,2.175,1.769,1.382,1.018,.632,.199,-.244,-.654,-1.023,-1.375,-1.738,-2.140,-2.584,-3.029,-3.436,
--3.823,-4.232,-4.650,-5.031,-5.378,-5.739,-6.115,-6.462,-6.758,-7.034,-7.313,-7.605,-7.938,-8.327,-8.718,-9.039,
--9.309,-9.618,-9.976,-10.301,-10.562,-10.827,-11.147,-11.477,-11.768,-12.052,-12.369,-12.704,-13.030,-13.377,-13.764,-14.148,
--14.485,-14.793,-15.109,-15.412,-15.677,-15.939,-16.249,-16.592,-16.910,-17.198,-17.501,-17.842,-18.186,-18.498,-18.785,-19.083,
--19.414,-19.765,-20.088,-20.354,-20.584,-20.811,-21.032,-21.226,-21.411,-21.628,-21.875,-22.109,-22.316,-22.523,-22.737,-22.931,
--23.105,-23.295,-23.493,-23.646,-23.737,-23.824,-23.945,-24.072,-24.170,-24.257,-24.354,-24.439,-24.501,-24.568,-24.645,-24.690,
--24.686,-24.678,-24.704,-24.722,-24.679,-24.591,-24.510,-24.439,-24.346,-24.226,-24.091,-23.945,-23.787,-23.632,-23.482,-23.317,
--23.133,-22.963,-22.825,-22.693,-22.552,-22.429,-22.335,-22.228,-22.074,-21.900,-21.737,-21.568,-21.373,-21.176,-21.001,-20.822,
--20.616,-20.421,-20.274,-20.145,-19.985,-19.801,-19.636,-19.496,-19.354,-19.210,-19.068,-18.908,-18.723,-18.552,-18.426,-18.300,
--18.118,-17.901,-17.719,-17.589,-17.461,-17.307,-17.146,-16.995,-16.844,-16.693,-16.547,-16.398,-16.222,-16.014,-15.796,-15.590,
--15.402,-15.224,-15.034,-14.824,-14.615,-14.431,-14.247,-14.021,-13.776,-13.584,-13.451,-13.299,-13.087,-12.869,-12.686,-12.495,
--12.267,-12.059,-11.910,-11.763,-11.564,-11.360,-11.209,-11.062,-10.849,-10.614,-10.440,-10.291,-10.066,-9.767,-9.477,-9.194,
--8.849,-8.459,-8.127,-7.880,-7.641,-7.368,-7.106,-6.862,-6.564,-6.154,-5.632,-5.021,-4.402,-3.958,-3.818,-3.851,
--3.776,-3.504,-3.213,-3.029,-2.850,-2.564,-2.251,-2.021,-1.812,-1.504,-1.130,-.802,-.520,-.213,.110,.395,
-.681,1.030,1.387,1.679,1.994,2.502,3.194,3.886,4.491,5.104,5.793,6.474,7.094,7.757,8.524,9.178,
-9.359,8.993,8.527,8.670,9.844,11.844,14.030,15.898,17.446,18.994,20.741,22.582,24.268,25.517,25.993,25.413,
-23.833,21.748,19.799,18.430,17.806,17.907,18.533,19.305,19.828,19.930,19.761,19.691,20.079,20.951,21.839,22.096,
-21.515,20.553,19.836,19.578,19.607,19.754,19.938,19.953,19.541,18.745,17.923,17.258,16.499,15.346,13.913,12.609,
-11.676,11.037,10.514,9.956,9.194,8.088,6.706,5.322,4.168,3.248,2.453,1.749,1.184,.765,.417,.040,
--.453,-1.136,-2.029,-3.034,-3.971,-4.715,-5.291,-5.810,-6.327,-6.831,-7.332,-7.862,-8.367,-8.704,-8.849,-9.013,
--9.429,-10.068,-10.715,-11.300,-11.963,-12.774,-13.587,-14.274,-14.932,-15.712,-16.567,-17.342,-18.049,-18.844,-19.756,-20.624,
--21.321,-21.905,-22.483,-23.048,-23.533,-23.941,-24.329,-24.716,-25.077,-25.411,-25.750,-26.088,-26.362,-26.535,-26.654,-26.772,
--26.805,-26.581,-26.084,-25.576,-25.336,-25.318,-25.207,-24.841,-24.403,-24.154,-24.149,-24.329,-24.740,-25.439,-26.273,-26.953,
--27.345,-27.528,-27.573,-27.461,-27.218,-26.968,-26.782,-26.593,-26.334,-26.051,-25.817,-25.597,-25.298,-24.910,-24.555,-24.406,
--24.551,-24.891,-25.204,-25.376,-25.536,-25.853,-26.220,-26.305,-25.932,-25.286,-24.664,-24.178,-23.753,-23.297,-22.750,-22.065,
--21.285,-20.587,-20.125,-19.822,-19.436,-18.845,-18.178,-17.641,-17.263,-16.871,-16.312,-15.635,-15.016,-14.526,-14.052,-13.477,
--12.871,-12.396,-12.065,-11.709,-11.198,-10.579,-9.965,-9.386,-8.812,-8.243,-7.704,-7.205,-6.728,-6.240,-5.687,-5.018,
--4.266,-3.543,-2.932,-2.418,-1.929,-1.421,-.879,-.312,.261,.827,1.401,1.982,2.502,2.909,3.284,3.774,
-4.391,4.966,5.368,5.662,5.977,6.327,6.651,6.961,7.334,7.769,8.144,8.357,8.449,8.573,8.843,9.223,
-9.573,9.814,9.997,10.187,10.340,10.386,10.400,10.543,10.844,11.167,11.408,11.605,11.796,11.921,11.929,11.863,
-11.765,11.606,11.406,11.311,11.430,11.666,11.840,11.926,12.045,12.296,12.684,13.175,13.721,14.229,14.623,14.920,
-15.195,15.527,16.004,16.708,17.581,18.360,18.782,18.818,18.638,18.390,18.142,17.987,18.040,18.295,18.605,18.824,
-18.926,18.964,19.008,19.127,19.335,19.551,19.667,19.688,19.730,19.867,20.047,20.164,20.166,20.070,19.931,19.790,
-19.655,19.504,19.345,19.230,19.192,19.190,19.177,19.163,19.173,19.174,19.125,19.062,19.043,19.049,19.016,18.936,
-18.855,18.780,18.690,18.593,18.521,18.453,18.349,18.226,18.128,18.042,17.935,17.831,17.771,17.712,17.584,17.425,
-17.338,17.316,17.265,17.170,17.120,17.143,17.154,17.191,17.110,17.024,16.980,16.900,16.741,16.602,16.583,16.625,
-16.626,16.615,16.680,16.782,16.796,16.699,16.602,16.575,16.562,16.500,16.406,16.304,16.162,16.022,16.131,16.774,
-17.828,18.580,18.224,16.690,14.857,13.755,13.564,13.602,13.276,12.746,12.490,12.464,12.088,11.031,9.714,8.875,
-8.815,9.225,9.615,9.731,9.590,9.309,8.985,8.656,8.269,7.721,6.978,6.154,5.426,4.824,4.165,3.224,
-1.987,.683,-.440,-1.325,-2.068,-2.740,-3.342,-3.937,-4.688,-5.703,-6.877,-7.987,-8.919,-9.746,-10.583,-11.462,
--12.349,-13.201,-13.953,-14.528,-14.952,-15.398,-16.023,-16.801,-17.559,-18.170,-18.618,-18.908,-19.054,-19.161,-19.393,-19.776,
--20.136,-20.300,-20.307,-20.323,-20.425,-20.540,-20.563,-20.431,-20.121,-19.679,-19.222,-18.829,-18.442,-17.973,-17.483,-17.115,
--16.838,-16.444,-15.861,-15.287,-14.860,-14.321,-13.264,-11.693,-10.116,-9.004,-8.365,-7.964,-7.796,-8.062,-8.742,-9.469,
--9.956,-10.344,-10.934,-11.687,-12.242,-12.386,-12.300,-12.262,-12.342,-12.502,-12.840,-13.482,-14.308,-15.026,-15.523,-15.951,
--16.366,-16.475,-15.942,-14.900,-13.966,-13.690,-14.042,-14.469,-14.413,-13.788,-13.059,-12.912,-13.776,-15.494,-17.434,-18.972,
--19.941,-20.652,-21.503,-22.617,-23.838,-24.967,-25.920,-26.724,-27.464,-28.244,-29.119,-30.043,-30.927,-31.728,-32.425,-32.929,
--33.170,-33.313,-33.750,-34.766,-36.269,-37.907,-39.389,-40.607,-41.538,-42.209,-42.741,-43.278,-43.823,-44.259,-44.584,-44.995,
--45.666,-46.510,-47.260,-47.764,-48.103,-48.445,-48.861,-49.303,-49.694,-49.964,-50.028,-49.827,-49.423,-49.021,-48.840,-48.927,
--49.146,-49.327,-49.408,-49.409,-49.370,-49.344,-49.404,-49.582,-49.810,-49.995,-50.122,-50.244,-50.377,-50.495,-50.618,-50.825,
--51.147,-51.512,-51.808,-51.982,-52.066,-52.166,-52.426,-52.936,-53.640,-54.369,-55.001,-55.555,-56.113,-56.713,-57.337,-57.964,
--58.579,-59.170,-59.761,-60.407,-61.122,-61.830,-62.449,-62.998,-63.581,-64.258,-64.979,-65.652,-66.233,-66.758,-67.296,-67.899,
--68.574,-69.283,-69.991,-70.692,-71.380,-72.022,-72.576,-73.060,-73.560,-74.147,-74.808,-75.470,-76.100,-76.733,-77.373,-77.948,
--78.409,-78.851,-79.433,-80.165,-80.891,-81.538,-82.254,-83.198,-84.276,-85.255,-86.064,-86.837,-87.652,-88.446,-89.194,-89.972,
--90.784,-91.495,-92.067,-92.654,-93.346,-94.003,-94.529,-95.065,-95.646,-95.872,-95.364,-94.491,-94.176,-94.823,-95.888,-96.711,
--97.371,-98.333,-99.544,-100.419,-100.645,-100.555,-100.616,-100.919,-101.311,-101.716,-102.125,-102.450,-102.624,-102.725,-102.858,-102.993,
--103.051,-103.056,-103.079,-103.103,-103.068,-102.992,-102.927,-102.864,-102.763,-102.619,-102.409,-102.040,-101.467,-100.785,-100.071,-99.199,
--97.997,-96.576,-95.335,-94.579,-94.256,-94.072,-93.772,-93.243,-92.481,-91.546,-90.525,-89.462,-88.333,-87.108,-85.797,-84.439,
--83.071,-81.728,-80.436,-79.191,-77.959,-76.687,-75.315,-73.828,-72.344,-71.048,-69.972,-68.897,-67.597,-66.124,-64.727,-63.512,
--62.320,-60.973,-59.487,-58.002,-56.611,-55.325,-54.124,-52.944,-51.672,-50.223,-48.613,-46.926,-45.220,-43.489,-41.721,-39.983,
--38.413,-37.057,-35.727,-34.163,-32.399,-30.841,-29.903,-29.668,-29.939,-30.360,-30.331,-29.121,-26.534,-23.358,-20.686,-18.764,
--16.949,-14.841,-12.919,-11.756,-11.082,-10.102,-8.514,-6.751,-5.316,-4.277,-3.419,-2.555,-1.599,-.545,.536,1.600,
-2.706,3.883,4.989,5.888,6.689,7.633,8.766,9.927,11.015,12.080,13.145,14.131,15.012,15.877,16.809,17.826,
-18.913,20.026,21.078,22.033,22.977,23.979,24.959,25.851,26.783,27.900,29.090,30.114,30.969,31.865,32.872,33.843,
-34.699,35.523,36.348,37.120,37.912,38.899,40.040,41.056,41.856,42.737,43.977,45.446,46.812,47.975,49.097,50.318,
-51.619,52.890,53.985,54.776,55.245,55.497,55.608,55.574,55.458,55.449,55.635,55.790,55.510,54.618,53.440,52.643,
-52.687,53.336,53.880,53.988,54.170,55.126,56.812,58.527,59.816,60.791,61.601,62.163,62.524,62.894,63.068,62.414,
-60.791,58.956,57.652,56.830,56.264,56.362,57.535,59.114,59.798,59.093,57.540,55.596,53.200,50.649,49.078,49.640,
-52.623,57.539,63.464,69.033,72.798,74.238,74.146,73.694,73.415,73.351,73.627,74.331,75.129,75.604,75.797,75.998,
-76.186,76.140,75.917,75.714,75.386,74.656,73.756,73.295,73.425,73.670,73.678,73.647,73.785,73.834,73.473,72.830,
-72.229,71.656,70.873,69.919,69.121,68.654,68.416,68.324,68.462,68.835,69.234,69.482,69.660,69.957,70.374,70.729,
-70.911,71.008,71.143,71.319,71.475,71.624,71.828,72.056,72.179,72.136,72.021,71.959,71.971,71.992,71.995,71.995,
-71.988,71.946,71.854,71.710,71.495,71.197,70.848,70.490,70.140,69.792,69.452,69.125,68.820,68.555,68.319,68.026,
-67.591,67.079,66.643,66.316,66.017,65.811,65.890,66.112,65.842,64.634,62.996,62.056,62.344,63.202,63.566,63.069,
-62.174,61.448,61.003,60.641,60.225,59.790,59.397,59.017,58.593,58.148,57.781,57.555,57.451,57.473,57.721,58.231,
-58.782,59.025,58.843,58.479,58.274,58.326,58.459,58.423,58.071,57.438,56.687,55.981,55.364,54.812,54.339,53.953,
-53.533,52.902,52.071,51.261,50.634,50.123,49.613,49.146,48.804,48.501,48.029,47.315,46.503,45.791,45.273,44.910,
-44.592,44.244,43.888,43.589,43.320,42.962,42.490,42.039,41.718,41.441,41.056,40.564,40.090,39.690,39.312,38.924,
-38.553,38.205,37.851,37.490,37.156,36.827,36.436,35.960,35.441,34.900,34.305,33.642,32.967,32.377,31.973,31.817,
-31.852,31.880,31.679,31.189,30.524,29.819,29.119,28.430,27.840,27.547,27.756,28.484,29.372,29.768,29.186,27.785,
-26.325,25.525,25.457,25.611,25.500,25.105,24.707,24.447,24.185,23.783,23.356,23.118,23.072,23.010,22.792,22.500,
-22.264,22.089,21.919,21.755,21.601,21.390,21.086,20.781,20.577,20.415,20.169,19.875,19.710,19.726,19.751,19.603,
-19.316,19.087,19.062,19.209,19.352,19.300,18.998,18.570,18.195,17.940,17.754,17.594,17.478,17.399,17.296,17.132,
-16.938,16.731,16.466,16.105,15.701,15.365,15.171,15.114,15.136,15.151,15.098,14.995,14.935,14.986,15.112,15.202,
-15.162,14.983,14.742,14.555,14.486,14.501,14.530,14.556,14.605,14.665,14.681,14.642,14.605,14.619,14.651,14.637,
-14.572,14.561,14.776,15.317,16.035,16.537,16.515,16.087,15.694,15.610,15.685,15.662,15.564,15.602,15.792,15.917,
-15.851,15.714,15.636,15.570,15.476,15.498,15.783,16.203,16.482,16.548,16.579,16.673,16.703,16.581,16.461,16.522,
-16.677,16.713,16.627,16.621,16.768,16.885,16.803,16.572,16.338,16.136,15.911,15.657,15.413,15.196,15.012,14.889,
-14.822,14.741,14.607,14.487,14.446,14.428,14.325,14.136,13.952,13.810,13.666,13.490,13.302,13.114,12.902,12.657,
-12.389,12.107,11.832,11.630,11.541,11.493,11.362,11.114,10.827,10.578,10.379,10.209,10.036,9.798,9.452,9.035,
-8.635,8.289,7.966,7.642,7.326,7.005,6.645,6.259,5.892,5.549,5.188,4.800,4.429,4.095,3.761,3.406,
-3.053,2.710,2.351,1.967,1.593,1.246,.888,.488,.065,-.345,-.728,-1.093,-1.456,-1.841,-2.257,-2.678,
--3.077,-3.473,-3.905,-4.363,-4.797,-5.189,-5.563,-5.921,-6.236,-6.511,-6.779,-7.067,-7.382,-7.747,-8.160,-8.546,
--8.832,-9.062,-9.349,-9.706,-10.033,-10.284,-10.536,-10.849,-11.177,-11.464,-11.741,-12.061,-12.405,-12.736,-13.074,-13.452,
--13.839,-14.184,-14.499,-14.817,-15.128,-15.402,-15.662,-15.958,-16.286,-16.606,-16.912,-17.235,-17.583,-17.922,-18.234,-18.537,
--18.864,-19.212,-19.546,-19.827,-20.055,-20.271,-20.508,-20.748,-20.959,-21.146,-21.348,-21.569,-21.781,-21.983,-22.197,-22.416,
--22.609,-22.778,-22.956,-23.132,-23.254,-23.321,-23.396,-23.514,-23.634,-23.730,-23.831,-23.957,-24.072,-24.150,-24.220,-24.296,
--24.341,-24.334,-24.330,-24.363,-24.382,-24.327,-24.232,-24.168,-24.133,-24.060,-23.926,-23.769,-23.618,-23.470,-23.313,-23.147,
--22.972,-22.795,-22.636,-22.494,-22.347,-22.196,-22.077,-21.997,-21.905,-21.763,-21.599,-21.447,-21.292,-21.111,-20.921,-20.745,
--20.565,-20.372,-20.199,-20.068,-19.936,-19.752,-19.539,-19.359,-19.228,-19.117,-19.008,-18.894,-18.753,-18.584,-18.430,-18.317,
--18.194,-18.007,-17.787,-17.611,-17.490,-17.370,-17.220,-17.065,-16.926,-16.797,-16.665,-16.527,-16.370,-16.180,-15.971,-15.765,
--15.565,-15.365,-15.174,-14.993,-14.806,-14.607,-14.420,-14.249,-14.062,-13.842,-13.630,-13.459,-13.305,-13.127,-12.930,-12.732,
--12.522,-12.301,-12.106,-11.951,-11.789,-11.586,-11.386,-11.231,-11.085,-10.896,-10.694,-10.529,-10.379,-10.183,-9.944,-9.699,
--9.435,-9.116,-8.780,-8.494,-8.266,-8.062,-7.867,-7.658,-7.365,-6.969,-6.542,-6.104,-5.541,-4.822,-4.205,-3.978,
--4.046,-4.026,-3.754,-3.438,-3.258,-3.099,-2.813,-2.488,-2.266,-2.076,-1.769,-1.385,-1.070,-.828,-.545,-.200,
-.134,.446,.779,1.118,1.437,1.828,2.399,3.096,3.776,4.429,5.151,5.922,6.623,7.290,8.097,8.998,
-9.583,9.498,8.929,8.539,8.952,10.305,12.248,14.280,16.127,17.865,19.696,21.627,23.412,24.728,25.292,24.875,
-23.440,21.374,19.389,18.058,17.473,17.427,17.754,18.369,19.081,19.599,19.756,19.655,19.601,19.896,20.586,21.306,
-21.503,20.968,20.065,19.339,18.996,18.927,19.055,19.346,19.538,19.260,18.509,17.711,17.118,16.432,15.258,13.721,
-12.362,11.503,10.999,10.555,10.003,9.244,8.188,6.895,5.616,4.562,3.712,2.930,2.177,1.502,.897,.293,
--.334,-.953,-1.575,-2.267,-3.036,-3.786,-4.434,-5.000,-5.550,-6.093,-6.607,-7.120,-7.661,-8.149,-8.445,-8.563,
--8.734,-9.153,-9.757,-10.354,-10.907,-11.545,-12.313,-13.091,-13.791,-14.503,-15.323,-16.184,-16.967,-17.694,-18.479,-19.333,
--20.146,-20.844,-21.461,-22.040,-22.566,-23.017,-23.419,-23.803,-24.171,-24.532,-24.926,-25.358,-25.753,-26.005,-26.101,-26.141,
--26.202,-26.192,-25.930,-25.408,-24.890,-24.656,-24.666,-24.621,-24.348,-23.986,-23.768,-23.770,-23.983,-24.445,-25.154,-25.932,
--26.547,-26.929,-27.146,-27.220,-27.117,-26.899,-26.720,-26.635,-26.543,-26.354,-26.116,-25.929,-25.804,-25.639,-25.308,-24.784,
--24.215,-23.834,-23.742,-23.817,-23.944,-24.236,-24.855,-25.645,-26.139,-26.026,-25.444,-24.781,-24.282,-23.934,-23.583,-23.053,
--22.266,-21.339,-20.542,-20.033,-19.704,-19.335,-18.860,-18.390,-18.009,-17.647,-17.171,-16.544,-15.858,-15.245,-14.748,-14.278,
--13.743,-13.180,-12.718,-12.395,-12.083,-11.638,-11.056,-10.447,-9.888,-9.367,-8.844,-8.316,-7.815,-7.357,-6.903,-6.363,
--5.687,-4.930,-4.208,-3.585,-3.044,-2.544,-2.058,-1.554,-1.008,-.432,.153,.752,1.358,1.890,2.278,2.608,
-3.060,3.675,4.292,4.766,5.131,5.504,5.912,6.311,6.697,7.111,7.547,7.935,8.217,8.410,8.596,8.866,
-9.240,9.632,9.944,10.166,10.338,10.443,10.431,10.364,10.394,10.576,10.796,10.950,11.069,11.206,11.314,11.326,
-11.273,11.221,11.180,11.154,11.214,11.438,11.788,12.150,12.453,12.691,12.890,13.134,13.544,14.158,14.845,15.408,
-15.753,15.915,16.007,16.196,16.644,17.333,18.013,18.422,18.532,18.509,18.481,18.480,18.545,18.728,18.993,19.218,
-19.339,19.398,19.441,19.464,19.463,19.461,19.452,19.398,19.315,19.292,19.399,19.594,19.767,19.832,19.779,19.663,
-19.552,19.474,19.407,19.338,19.287,19.256,19.214,19.162,19.149,19.201,19.262,19.279,19.287,19.333,19.377,19.345,
-19.238,19.114,18.986,18.830,18.662,18.518,18.391,18.255,18.132,18.047,17.961,17.833,17.708,17.643,17.593,17.477,
-17.335,17.275,17.287,17.264,17.186,17.152,17.187,17.191,17.162,17.080,17.013,17.016,16.997,16.873,16.725,16.690,
-16.757,16.815,16.832,16.873,16.942,16.955,16.863,16.726,16.617,16.535,16.444,16.346,16.254,16.150,16.075,16.223,
-16.804,17.672,18.196,17.735,16.331,14.796,13.939,13.773,13.662,13.176,12.564,12.292,12.343,12.191,11.412,10.156,
-9.000,8.441,8.536,8.928,9.154,8.991,8.556,8.124,7.836,7.602,7.245,6.701,6.074,5.502,4.969,4.279,
-3.243,1.921,.616,-.409,-1.156,-1.807,-2.470,-3.114,-3.744,-4.511,-5.568,-6.876,-8.208,-9.336,-10.180,-10.811,
--11.410,-12.171,-13.162,-14.221,-15.079,-15.631,-16.058,-16.613,-17.336,-18.055,-18.624,-19.045,-19.364,-19.573,-19.676,-19.770,
--19.952,-20.205,-20.443,-20.636,-20.823,-21.008,-21.129,-21.111,-20.906,-20.510,-19.989,-19.470,-19.028,-18.606,-18.134,-17.687,
--17.391,-17.179,-16.806,-16.175,-15.482,-14.902,-14.243,-13.139,-11.529,-9.775,-8.284,-7.226,-6.690,-6.853,-7.739,-8.930,
--9.817,-10.226,-10.549,-11.153,-11.860,-12.218,-12.136,-11.985,-12.084,-12.378,-12.726,-13.237,-14.069,-15.045,-15.766,-16.116,
--16.410,-16.912,-17.373,-17.239,-16.299,-14.996,-14.053,-13.834,-14.050,-14.047,-13.429,-12.496,-12.102,-12.962,-15.009,-17.406,
--19.258,-20.313,-20.991,-21.812,-22.920,-24.121,-25.214,-26.153,-26.981,-27.749,-28.531,-29.399,-30.343,-31.272,-32.080,-32.676,
--32.985,-33.059,-33.216,-33.912,-35.341,-37.214,-39.005,-40.377,-41.311,-41.939,-42.403,-42.848,-43.372,-43.921,-44.354,-44.656,
--45.018,-45.620,-46.412,-47.176,-47.756,-48.167,-48.507,-48.851,-49.225,-49.595,-49.849,-49.844,-49.549,-49.121,-48.817,-48.779,
--48.937,-49.118,-49.211,-49.217,-49.168,-49.090,-49.035,-49.085,-49.270,-49.521,-49.742,-49.907,-50.034,-50.141,-50.245,-50.402,
--50.660,-50.995,-51.321,-51.565,-51.707,-51.785,-51.917,-52.266,-52.893,-53.665,-54.366,-54.912,-55.396,-55.926,-56.512,-57.116,
--57.721,-58.315,-58.880,-59.445,-60.083,-60.810,-61.530,-62.160,-62.749,-63.409,-64.154,-64.885,-65.524,-66.099,-66.678,-67.282,
--67.895,-68.518,-69.180,-69.900,-70.659,-71.404,-72.070,-72.619,-73.069,-73.499,-73.999,-74.597,-75.251,-75.907,-76.548,-77.163,
--77.714,-78.182,-78.637,-79.178,-79.801,-80.422,-81.051,-81.838,-82.858,-83.951,-84.897,-85.685,-86.464,-87.282,-88.045,-88.740,
--89.475,-90.265,-90.979,-91.582,-92.225,-92.981,-93.700,-94.275,-94.834,-95.418,-95.681,-95.307,-94.642,-94.451,-95.005,-95.819,
--96.448,-97.109,-98.191,-99.477,-100.316,-100.465,-100.330,-100.374,-100.655,-101.018,-101.409,-101.811,-102.115,-102.248,-102.316,-102.444,
--102.606,-102.707,-102.757,-102.825,-102.894,-102.901,-102.847,-102.777,-102.688,-102.551,-102.362,-102.092,-101.659,-101.046,-100.351,-99.607,
--98.650,-97.347,-95.919,-94.829,-94.316,-94.171,-93.997,-93.565,-92.866,-91.970,-90.945,-89.867,-88.790,-87.709,-86.577,-85.368,
--84.087,-82.770,-81.464,-80.216,-79.038,-77.893,-76.687,-75.309,-73.734,-72.129,-70.754,-69.679,-68.665,-67.422,-65.949,-64.496,
--63.236,-62.082,-60.862,-59.514,-58.098,-56.695,-55.380,-54.181,-53.021,-51.745,-50.264,-48.629,-46.945,-45.233,-43.446,-41.595,
--39.827,-38.320,-37.048,-35.722,-34.089,-32.305,-30.843,-29.990,-29.623,-29.538,-29.672,-29.755,-29.074,-27.087,-24.177,-21.323,
--19.016,-16.980,-14.996,-13.411,-12.513,-11.873,-10.777,-9.069,-7.164,-5.436,-3.981,-2.828,-1.964,-1.166,-.182,.945,
-1.980,2.921,3.986,5.208,6.350,7.291,8.204,9.266,10.414,11.505,12.519,13.492,14.418,15.302,16.196,17.123,
-18.051,18.988,19.983,21.021,22.043,23.053,24.085,25.092,26.013,26.949,28.060,29.294,30.414,31.324,32.161,33.038,
-33.904,34.715,35.534,36.380,37.184,37.960,38.842,39.841,40.794,41.650,42.626,43.908,45.363,46.711,47.875,48.995,
-50.179,51.398,52.557,53.538,54.232,54.613,54.783,54.852,54.842,54.750,54.648,54.641,54.745,54.804,54.544,53.801,
-52.813,52.156,52.223,52.845,53.638,54.554,55.782,57.194,58.348,59.098,59.746,60.503,61.248,61.938,62.722,63.367,
-63.128,61.641,59.529,57.645,56.136,54.802,53.948,54.065,54.811,55.099,54.297,52.703,50.794,48.717,46.770,45.818,
-46.844,50.307,55.939,62.645,68.556,71.953,72.671,72.222,72.155,72.666,73.093,73.228,73.505,74.195,75.089,75.921,
-76.604,77.040,77.108,76.847,76.337,75.483,74.266,73.145,72.741,73.090,73.591,73.784,73.762,73.737,73.627,73.322,
-73.017,72.944,72.959,72.689,71.986,70.994,69.892,68.808,67.969,67.631,67.790,68.136,68.395,68.613,68.998,69.570,
-70.105,70.425,70.611,70.854,71.190,71.506,71.746,71.980,72.228,72.382,72.375,72.308,72.307,72.350,72.345,72.298,
-72.288,72.314,72.307,72.242,72.123,71.906,71.557,71.143,70.758,70.388,69.971,69.545,69.202,68.924,68.620,68.274,
-67.927,67.538,67.039,66.495,66.041,65.692,65.422,65.355,65.546,65.578,64.817,63.308,62.062,62.035,62.970,63.661,
-63.325,62.355,61.619,61.404,61.307,60.923,60.302,59.715,59.258,58.841,58.437,58.148,58.042,58.059,58.143,58.351,
-58.737,59.170,59.402,59.321,59.055,58.817,58.712,58.689,58.609,58.328,57.797,57.105,56.400,55.753,55.149,54.593,
-54.109,53.646,53.091,52.410,51.697,51.036,50.412,49.800,49.257,48.829,48.456,48.017,47.442,46.747,45.997,45.305,
-44.768,44.384,44.068,43.777,43.543,43.339,43.048,42.626,42.194,41.867,41.570,41.154,40.622,40.116,39.719,39.389,
-39.076,38.780,38.497,38.203,37.882,37.535,37.137,36.667,36.155,35.638,35.090,34.476,33.833,33.241,32.726,32.282,
-31.946,31.760,31.656,31.478,31.137,30.655,30.066,29.370,28.620,27.974,27.605,27.602,27.944,28.456,28.778,28.507,
-27.546,26.301,25.402,25.163,25.349,25.479,25.312,24.970,24.657,24.382,24.046,23.667,23.382,23.238,23.127,22.956,
-22.755,22.575,22.383,22.144,21.911,21.737,21.579,21.376,21.153,20.947,20.699,20.363,20.051,19.919,19.936,19.901,
-19.691,19.369,19.052,18.817,18.746,18.881,19.079,19.061,18.712,18.226,17.868,17.697,17.599,17.498,17.405,17.312,
-17.179,17.012,16.848,16.653,16.337,15.898,15.478,15.242,15.212,15.278,15.319,15.282,15.189,15.093,15.057,15.115,
-15.218,15.239,15.087,14.822,14.624,14.604,14.697,14.763,14.752,14.719,14.704,14.679,14.615,14.529,14.455,14.404,
-14.374,14.374,14.443,14.674,15.143,15.756,16.205,16.225,15.902,15.591,15.516,15.558,15.523,15.450,15.514,15.728,
-15.915,15.959,15.900,15.784,15.603,15.443,15.514,15.885,16.312,16.499,16.468,16.486,16.641,16.727,16.594,16.410,
-16.411,16.547,16.577,16.453,16.385,16.517,16.716,16.768,16.625,16.393,16.151,15.919,15.697,15.483,15.264,15.062,
-14.931,14.856,14.739,14.540,14.364,14.308,14.301,14.207,14.019,13.849,13.737,13.619,13.457,13.291,13.142,12.965,
-12.727,12.451,12.173,11.916,11.715,11.596,11.511,11.364,11.118,10.827,10.549,10.296,10.061,9.839,9.601,9.305,
-8.958,8.609,8.279,7.954,7.634,7.335,7.038,6.701,6.334,5.988,5.661,5.297,4.881,4.474,4.119,3.786,
-3.439,3.093,2.764,2.433,2.082,1.732,1.399,1.057,.676,.271,-.128,-.516,-.897,-1.271,-1.645,-2.031,
--2.423,-2.807,-3.199,-3.636,-4.116,-4.593,-5.030,-5.422,-5.766,-6.057,-6.313,-6.575,-6.863,-7.188,-7.566,-7.985,
--8.364,-8.631,-8.836,-9.097,-9.435,-9.754,-10.008,-10.265,-10.579,-10.899,-11.170,-11.433,-11.755,-12.118,-12.466,-12.800,
--13.154,-13.519,-13.857,-14.173,-14.495,-14.815,-15.106,-15.381,-15.677,-16.000,-16.326,-16.645,-16.969,-17.298,-17.617,-17.934,
--18.265,-18.609,-18.937,-19.224,-19.467,-19.689,-19.924,-20.189,-20.459,-20.700,-20.908,-21.107,-21.303,-21.493,-21.689,-21.907,
--22.125,-22.308,-22.465,-22.627,-22.783,-22.887,-22.949,-23.030,-23.146,-23.250,-23.331,-23.441,-23.593,-23.730,-23.810,-23.873,
--23.949,-23.999,-23.994,-23.979,-23.996,-24.001,-23.942,-23.857,-23.817,-23.802,-23.731,-23.583,-23.417,-23.275,-23.141,-22.984,
--22.804,-22.620,-22.449,-22.301,-22.163,-22.018,-21.875,-21.765,-21.686,-21.581,-21.420,-21.246,-21.099,-20.962,-20.794,-20.604,
--20.424,-20.254,-20.085,-19.933,-19.809,-19.678,-19.509,-19.326,-19.172,-19.049,-18.934,-18.824,-18.719,-18.594,-18.442,-18.298,
--18.191,-18.077,-17.910,-17.715,-17.555,-17.431,-17.297,-17.137,-16.983,-16.851,-16.728,-16.601,-16.465,-16.302,-16.107,-15.909,
--15.729,-15.549,-15.346,-15.144,-14.970,-14.802,-14.607,-14.404,-14.238,-14.093,-13.917,-13.698,-13.482,-13.298,-13.130,-12.957,
--12.770,-12.569,-12.365,-12.183,-12.028,-11.867,-11.675,-11.474,-11.297,-11.142,-10.995,-10.859,-10.732,-10.586,-10.404,-10.197,
--9.966,-9.690,-9.372,-9.060,-8.793,-8.581,-8.452,-8.387,-8.208,-7.708,-6.958,-6.312,-5.959,-5.662,-5.149,-4.570,
--4.286,-4.295,-4.233,-3.927,-3.592,-3.409,-3.250,-2.958,-2.634,-2.425,-2.248,-1.953,-1.592,-1.314,-1.097,-.807,
--.431,-.073,.238,.556,.898,1.269,1.736,2.348,3.025,3.691,4.421,5.286,6.166,6.918,7.667,8.610,
-9.560,9.986,9.663,9.045,8.863,9.491,10.817,12.536,14.391,16.240,18.081,20.009,22.030,23.904,25.201,25.487,
-24.530,22.521,20.152,18.275,17.319,17.080,17.165,17.461,18.048,18.811,19.411,19.636,19.591,19.551,19.736,20.184,
-20.685,20.860,20.480,19.720,18.982,18.503,18.292,18.328,18.562,18.718,18.432,17.712,16.978,16.490,15.966,15.009,
-13.712,12.553,11.786,11.230,10.630,9.921,9.100,8.104,6.960,5.859,4.953,4.175,3.378,2.558,1.806,1.127,
-.443,-.267,-.950,-1.598,-2.263,-2.947,-3.580,-4.134,-4.676,-5.256,-5.828,-6.347,-6.858,-7.410,-7.917,-8.229,
--8.360,-8.522,-8.891,-9.421,-9.969,-10.517,-11.155,-11.892,-12.627,-13.316,-14.050,-14.906,-15.817,-16.661,-17.414,-18.140,
--18.872,-19.580,-20.227,-20.802,-21.303,-21.748,-22.183,-22.632,-23.068,-23.461,-23.861,-24.351,-24.915,-25.402,-25.652,-25.655,
--25.554,-25.477,-25.389,-25.157,-24.762,-24.386,-24.217,-24.213,-24.158,-23.943,-23.687,-23.565,-23.655,-23.963,-24.478,-25.113,
--25.693,-26.110,-26.413,-26.662,-26.783,-26.694,-26.495,-26.391,-26.444,-26.520,-26.472,-26.290,-26.060,-25.860,-25.680,-25.395,
--24.872,-24.167,-23.550,-23.233,-23.154,-23.163,-23.343,-23.907,-24.792,-25.556,-25.775,-25.414,-24.768,-24.161,-23.753,-23.489,
--23.138,-22.493,-21.607,-20.766,-20.176,-19.767,-19.372,-18.954,-18.568,-18.185,-17.708,-17.117,-16.488,-15.890,-15.339,-14.833,
--14.357,-13.870,-13.354,-12.859,-12.448,-12.083,-11.649,-11.093,-10.476,-9.900,-9.395,-8.919,-8.434,-7.955,-7.510,-7.067,
--6.544,-5.899,-5.187,-4.500,-3.870,-3.285,-2.748,-2.263,-1.791,-1.273,-.710,-.142,.420,.971,1.455,1.824,
-2.156,2.607,3.203,3.802,4.282,4.687,5.119,5.583,6.024,6.431,6.832,7.233,7.598,7.900,8.138,8.347,
-8.608,8.983,9.426,9.818,10.096,10.283,10.382,10.345,10.195,10.068,10.061,10.127,10.181,10.237,10.351,10.508,
-10.654,10.809,11.034,11.320,11.591,11.807,12.014,12.277,12.605,12.916,13.072,13.005,12.859,12.919,13.355,14.071,
-14.834,15.478,15.945,16.255,16.515,16.885,17.409,17.930,18.261,18.403,18.499,18.627,18.763,18.893,19.047,19.209,
-19.316,19.365,19.415,19.474,19.476,19.386,19.249,19.119,19.001,18.901,18.867,18.948,19.126,19.320,19.451,19.485,
-19.457,19.431,19.447,19.493,19.540,19.563,19.535,19.442,19.331,19.290,19.339,19.404,19.426,19.446,19.500,19.533,
-19.466,19.317,19.163,19.019,18.851,18.658,18.471,18.288,18.106,17.967,17.896,17.841,17.740,17.633,17.584,17.555,
-17.469,17.357,17.316,17.335,17.305,17.212,17.157,17.172,17.162,17.193,17.148,17.108,17.112,17.089,16.973,16.842,
-16.825,16.922,17.008,17.014,16.991,17.002,17.018,16.963,16.825,16.661,16.523,16.406,16.280,16.139,16.016,15.974,
-16.102,16.441,16.840,16.931,16.418,15.434,14.510,14.062,13.981,13.814,13.318,12.696,12.292,12.176,12.054,11.543,
-10.512,9.263,8.353,8.128,8.382,8.551,8.283,7.737,7.296,7.117,7.037,6.844,6.496,6.086,5.671,5.170,
-4.404,3.281,1.950,.727,-.181,-.858,-1.529,-2.276,-3.001,-3.640,-4.324,-5.280,-6.608,-8.158,-9.609,-10.653,
--11.212,-11.531,-12.025,-12.942,-14.147,-15.270,-16.071,-16.642,-17.220,-17.897,-18.554,-19.073,-19.474,-19.820,-20.080,-20.177,
--20.142,-20.135,-20.290,-20.596,-20.935,-21.203,-21.359,-21.410,-21.360,-21.176,-20.809,-20.278,-19.694,-19.163,-18.688,-18.234,
--17.853,-17.616,-17.428,-17.051,-16.388,-15.629,-14.971,-14.280,-13.194,-11.562,-9.646,-7.898,-6.714,-6.390,-7.065,-8.453,
--9.820,-10.520,-10.602,-10.686,-11.171,-11.796,-12.097,-12.061,-12.088,-12.412,-12.885,-13.352,-13.945,-14.816,-15.776,-16.447,
--16.742,-16.967,-17.390,-17.828,-17.784,-16.974,-15.663,-14.490,-13.928,-13.868,-13.740,-13.127,-12.314,-12.157,-13.320,-15.598,
--18.049,-19.803,-20.720,-21.309,-22.102,-23.213,-24.423,-25.528,-26.488,-27.340,-28.123,-28.902,-29.752,-30.668,-31.539,-32.229,
--32.667,-32.881,-33.047,-33.514,-34.626,-36.393,-38.381,-40.036,-41.102,-41.702,-42.088,-42.443,-42.858,-43.344,-43.818,-44.185,
--44.493,-44.925,-45.586,-46.368,-47.079,-47.637,-48.083,-48.466,-48.807,-49.134,-49.445,-49.636,-49.556,-49.205,-48.806,-48.620,
--48.706,-48.897,-49.012,-49.014,-48.960,-48.886,-48.799,-48.745,-48.802,-48.989,-49.241,-49.476,-49.657,-49.780,-49.866,-49.974,
--50.170,-50.454,-50.756,-51.022,-51.252,-51.453,-51.629,-51.861,-52.295,-52.970,-53.719,-54.336,-54.805,-55.261,-55.780,-56.316,
--56.839,-57.390,-57.980,-58.555,-59.108,-59.724,-60.445,-61.181,-61.834,-62.444,-63.130,-63.910,-64.682,-65.372,-66.018,-66.678,
--67.335,-67.934,-68.489,-69.087,-69.794,-70.579,-71.340,-71.993,-72.522,-72.970,-73.406,-73.889,-74.448,-75.065,-75.695,-76.315,
--76.913,-77.462,-77.935,-78.364,-78.829,-79.370,-79.970,-80.650,-81.497,-82.517,-83.554,-84.452,-85.244,-86.058,-86.888,-87.625,
--88.285,-89.012,-89.825,-90.569,-91.190,-91.837,-92.609,-93.375,-94.008,-94.575,-95.094,-95.308,-95.027,-94.575,-94.525,-94.989,
--95.555,-96.013,-96.710,-97.932,-99.291,-100.096,-100.192,-100.045,-100.092,-100.348,-100.664,-101.014,-101.389,-101.670,-101.789,-101.863,
--102.021,-102.221,-102.358,-102.440,-102.538,-102.643,-102.684,-102.647,-102.559,-102.416,-102.207,-101.950,-101.637,-101.201,-100.616,-99.943,
--99.172,-98.151,-96.826,-95.492,-94.599,-94.277,-94.205,-93.962,-93.386,-92.554,-91.575,-90.512,-89.436,-88.401,-87.390,-86.336,
--85.191,-83.953,-82.657,-81.359,-80.135,-79.018,-77.951,-76.785,-75.372,-73.717,-72.033,-70.578,-69.392,-68.234,-66.861,-65.306,
--63.819,-62.576,-61.535,-60.537,-59.445,-58.192,-56.823,-55.482,-54.279,-53.128,-51.812,-50.240,-48.545,-46.895,-45.274,-43.532,
--41.630,-39.775,-38.235,-37.006,-35.734,-34.114,-32.330,-30.906,-30.087,-29.601,-29.165,-28.879,-28.822,-28.505,-27.209,-24.848,
--22.064,-19.482,-17.276,-15.511,-14.357,-13.698,-12.957,-11.668,-9.938,-8.087,-6.169,-4.199,-2.515,-1.416,-.637,.345,
-1.562,2.595,3.316,4.109,5.249,6.512,7.588,8.514,9.505,10.593,11.667,12.684,13.660,14.588,15.479,16.396,
-17.340,18.234,19.071,19.957,20.948,21.978,23.003,24.052,25.103,26.060,26.964,28.007,29.261,30.533,31.604,32.478,
-33.282,34.065,34.821,35.602,36.456,37.333,38.178,39.029,39.951,40.935,41.955,43.046,44.218,45.394,46.509,47.614,
-48.772,49.943,51.022,51.945,52.684,53.215,53.569,53.849,54.122,54.335,54.379,54.236,54.060,54.102,54.465,54.833,
-54.630,53.654,52.495,52.039,52.590,53.725,54.950,56.108,57.137,57.908,58.484,59.167,60.069,60.974,61.789,62.692,
-63.538,63.609,62.430,60.473,58.531,56.711,54.691,52.707,51.506,51.233,51.059,50.145,48.479,46.588,44.918,43.785,
-43.617,44.947,48.241,53.603,60.206,66.116,69.449,70.106,69.883,70.459,71.723,72.496,72.386,72.219,72.819,74.094,
-75.425,76.403,76.978,77.198,77.058,76.475,75.411,74.148,73.344,73.511,74.415,75.248,75.441,75.078,74.520,73.962,
-73.489,73.293,73.525,74.043,74.459,74.399,73.681,72.356,70.732,69.276,68.332,67.900,67.733,67.648,67.678,67.925,
-68.360,68.821,69.199,69.574,70.086,70.712,71.270,71.643,71.901,72.149,72.382,72.551,72.672,72.764,72.774,72.686,
-72.608,72.629,72.673,72.617,72.463,72.263,71.970,71.533,71.054,70.669,70.337,69.961,69.628,69.484,69.422,69.178,
-68.725,68.292,67.960,67.559,67.024,66.540,66.218,65.938,65.679,65.618,65.649,65.199,63.965,62.614,62.166,62.710,
-63.239,62.928,62.098,61.638,61.798,61.992,61.649,60.857,60.089,59.596,59.277,58.976,58.706,58.567,58.605,58.784,
-59.033,59.258,59.377,59.389,59.370,59.369,59.333,59.194,58.975,58.744,58.476,58.069,57.481,56.803,56.145,55.535,
-54.952,54.389,53.848,53.311,52.752,52.147,51.473,50.741,50.029,49.434,48.965,48.544,48.099,47.594,46.985,46.248,
-45.475,44.832,44.382,44.044,43.744,43.500,43.304,43.053,42.684,42.282,41.937,41.595,41.145,40.607,40.103,39.697,
-39.369,39.117,38.966,38.867,38.702,38.381,37.911,37.350,36.773,36.244,35.768,35.275,34.720,34.149,33.617,33.097,
-32.562,32.091,31.795,31.644,31.491,31.239,30.877,30.378,29.701,28.929,28.265,27.815,27.489,27.201,27.059,27.195,
-27.464,27.463,26.944,26.116,25.453,25.217,25.239,25.181,24.904,24.535,24.218,23.965,23.731,23.528,23.389,23.294,
-23.194,23.056,22.845,22.530,22.159,21.854,21.676,21.550,21.389,21.211,21.042,20.826,20.523,20.244,20.117,20.094,
-20.015,19.815,19.530,19.157,18.721,18.446,18.581,18.992,19.171,18.805,18.151,17.695,17.585,17.598,17.540,17.429,
-17.319,17.180,17.005,16.866,16.763,16.565,16.188,15.757,15.486,15.445,15.532,15.623,15.666,15.631,15.492,15.290,
-15.146,15.125,15.145,15.073,14.911,14.791,14.799,14.863,14.861,14.778,14.697,14.671,14.671,14.638,14.553,14.443,
-14.359,14.343,14.380,14.424,14.498,14.698,15.054,15.413,15.577,15.532,15.444,15.429,15.429,15.376,15.329,15.387,
-15.536,15.685,15.788,15.845,15.810,15.658,15.518,15.595,15.895,16.158,16.168,16.051,16.108,16.398,16.651,16.642,
-16.481,16.415,16.475,16.485,16.373,16.292,16.379,16.555,16.641,16.568,16.396,16.198,16.002,15.817,15.624,15.400,
-15.172,15.005,14.896,14.751,14.522,14.300,14.183,14.121,14.002,13.829,13.694,13.620,13.534,13.409,13.285,13.164,
-12.977,12.703,12.413,12.169,11.966,11.783,11.633,11.504,11.342,11.115,10.851,10.576,10.282,9.972,9.682,9.429,
-9.174,8.884,8.566,8.235,7.902,7.586,7.309,7.041,6.733,6.393,6.072,5.767,5.412,4.982,4.546,4.167,
-3.824,3.470,3.114,2.780,2.461,2.135,1.810,1.493,1.163,.800,.419,.042,-.338,-.732,-1.127,-1.509,
--1.885,-2.265,-2.644,-3.029,-3.447,-3.910,-4.389,-4.842,-5.249,-5.601,-5.897,-6.159,-6.420,-6.698,-7.006,-7.364,
--7.763,-8.131,-8.399,-8.604,-8.847,-9.156,-9.458,-9.721,-9.998,-10.325,-10.643,-10.897,-11.137,-11.441,-11.806,-12.167,
--12.503,-12.841,-13.190,-13.529,-13.856,-14.182,-14.500,-14.796,-15.084,-15.388,-15.713,-16.042,-16.366,-16.683,-16.991,-17.297,
--17.628,-17.984,-18.324,-18.609,-18.844,-19.069,-19.309,-19.573,-19.854,-20.140,-20.406,-20.641,-20.847,-21.031,-21.206,-21.398,
--21.614,-21.825,-21.999,-22.149,-22.306,-22.455,-22.558,-22.633,-22.731,-22.850,-22.940,-23.005,-23.110,-23.268,-23.404,-23.474,
--23.528,-23.607,-23.668,-23.665,-23.636,-23.631,-23.625,-23.576,-23.511,-23.483,-23.463,-23.377,-23.219,-23.057,-22.929,-22.808,
--22.656,-22.477,-22.291,-22.117,-21.967,-21.839,-21.716,-21.599,-21.504,-21.416,-21.288,-21.103,-20.915,-20.772,-20.649,-20.492,
--20.302,-20.121,-19.965,-19.817,-19.673,-19.538,-19.404,-19.265,-19.139,-19.032,-18.919,-18.785,-18.650,-18.533,-18.410,-18.264,
--18.127,-18.024,-17.929,-17.798,-17.647,-17.510,-17.379,-17.224,-17.052,-16.899,-16.769,-16.640,-16.504,-16.366,-16.208,-16.025,
--15.846,-15.694,-15.539,-15.348,-15.148,-14.982,-14.828,-14.632,-14.409,-14.227,-14.100,-13.959,-13.757,-13.526,-13.323,-13.159,
--13.005,-12.838,-12.656,-12.470,-12.295,-12.143,-12.003,-11.850,-11.672,-11.482,-11.313,-11.189,-11.099,-10.997,-10.849,-10.669,
--10.474,-10.239,-9.942,-9.622,-9.328,-9.065,-8.858,-8.804,-8.869,-8.693,-7.896,-6.633,-5.586,-5.207,-5.218,-5.084,
--4.732,-4.477,-4.411,-4.287,-3.984,-3.692,-3.536,-3.363,-3.047,-2.718,-2.513,-2.336,-2.051,-1.724,-1.481,-1.266,
--.952,-.562,-.211,.095,.429,.805,1.219,1.726,2.351,3.016,3.699,4.515,5.498,6.445,7.219,8.018,
-9.023,9.899,10.072,9.534,9.008,9.190,10.129,11.478,13.027,14.744,16.539,18.321,20.185,22.258,24.326,25.784,
-26.000,24.747,22.402,19.828,17.903,16.965,16.722,16.779,17.086,17.753,18.608,19.235,19.437,19.400,19.396,19.532,
-19.802,20.140,20.349,20.181,19.600,18.862,18.259,17.915,17.822,17.882,17.855,17.486,16.812,16.178,15.794,15.442,
-14.806,13.927,13.099,12.419,11.701,10.822,9.879,8.968,8.041,7.071,6.161,5.376,4.615,3.768,2.896,2.127,
-1.455,.778,.061,-.643,-1.323,-2.007,-2.674,-3.262,-3.788,-4.348,-4.966,-5.555,-6.058,-6.552,-7.116,-7.666,
--8.031,-8.192,-8.330,-8.620,-9.070,-9.591,-10.157,-10.807,-11.523,-12.231,-12.918,-13.676,-14.579,-15.566,-16.490,-17.260,
--17.896,-18.479,-19.062,-19.624,-20.104,-20.485,-20.842,-21.281,-21.809,-22.329,-22.779,-23.231,-23.799,-24.467,-25.045,-25.325,
--25.267,-25.015,-24.757,-24.565,-24.392,-24.196,-24.026,-23.938,-23.889,-23.778,-23.587,-23.417,-23.390,-23.582,-24.024,-24.649,
--25.251,-25.621,-25.776,-25.919,-26.151,-26.328,-26.300,-26.146,-26.077,-26.166,-26.308,-26.363,-26.261,-25.994,-25.631,-25.272,
--24.914,-24.438,-23.823,-23.281,-23.025,-22.987,-22.955,-22.936,-23.181,-23.803,-24.558,-25.045,-25.025,-24.529,-23.808,-23.209,
--22.929,-22.816,-22.521,-21.900,-21.144,-20.491,-19.967,-19.485,-19.027,-18.597,-18.116,-17.519,-16.898,-16.385,-15.958,-15.494,
--14.964,-14.458,-14.005,-13.521,-12.959,-12.394,-11.901,-11.434,-10.894,-10.266,-9.635,-9.082,-8.604,-8.152,-7.702,-7.259,
--6.806,-6.297,-5.714,-5.103,-4.517,-3.955,-3.396,-2.858,-2.370,-1.904,-1.403,-.864,-.332,.172,.659,1.111,
-1.508,1.910,2.416,3.015,3.574,4.018,4.418,4.873,5.367,5.827,6.231,6.606,6.961,7.279,7.547,7.763,
-7.957,8.210,8.607,9.110,9.572,9.895,10.101,10.224,10.220,10.069,9.870,9.756,9.739,9.748,9.764,9.830,
-9.971,10.175,10.461,10.866,11.347,11.772,12.034,12.162,12.299,12.550,12.838,12.948,12.752,12.410,12.261,12.520,
-13.134,13.932,14.789,15.619,16.325,16.883,17.385,17.904,18.363,18.640,18.753,18.826,18.916,18.987,19.019,19.044,
-19.073,19.082,19.087,19.133,19.214,19.256,19.223,19.156,19.106,19.077,19.054,19.049,19.084,19.167,19.279,19.387,
-19.458,19.485,19.499,19.532,19.591,19.657,19.699,19.684,19.605,19.515,19.492,19.536,19.565,19.538,19.506,19.508,
-19.480,19.348,19.148,18.972,18.840,18.708,18.556,18.397,18.227,18.045,17.906,17.846,17.819,17.756,17.678,17.641,
-17.620,17.543,17.431,17.372,17.366,17.326,17.234,17.176,17.186,17.193,17.358,17.364,17.331,17.279,17.195,17.089,
-17.029,17.073,17.172,17.207,17.128,17.014,16.975,17.012,17.017,16.902,16.708,16.536,16.409,16.265,16.082,15.936,
-15.911,15.985,16.051,15.998,15.750,15.303,14.774,14.363,14.186,14.157,14.063,13.747,13.203,12.570,12.041,11.683,
-11.283,10.512,9.362,8.312,7.870,7.989,8.129,7.898,7.427,7.071,6.938,6.860,6.681,6.413,6.119,5.780,
-5.274,4.474,3.369,2.138,1.048,.203,-.550,-1.414,-2.370,-3.207,-3.799,-4.301,-5.050,-6.291,-7.965,-9.700,
--11.030,-11.730,-11.995,-12.287,-12.958,-14.006,-15.164,-16.180,-16.998,-17.714,-18.395,-19.005,-19.485,-19.862,-20.199,-20.476,
--20.586,-20.513,-20.419,-20.508,-20.811,-21.156,-21.356,-21.383,-21.348,-21.330,-21.271,-21.028,-20.537,-19.894,-19.267,-18.745,
--18.325,-18.005,-17.793,-17.596,-17.217,-16.563,-15.787,-15.086,-14.385,-13.349,-11.766,-9.835,-8.065,-6.983,-6.910,-7.807,
--9.172,-10.250,-10.599,-10.487,-10.553,-11.071,-11.721,-12.114,-12.302,-12.609,-13.146,-13.737,-14.271,-14.851,-15.564,-16.276,
--16.792,-17.084,-17.260,-17.383,-17.380,-17.104,-16.457,-15.524,-14.613,-14.046,-13.824,-13.605,-13.163,-12.817,-13.228,-14.715,
--16.865,-18.871,-20.206,-20.942,-21.524,-22.327,-23.414,-24.626,-25.780,-26.792,-27.660,-28.437,-29.216,-30.073,-30.970,-31.749,
--32.273,-32.567,-32.823,-33.311,-34.279,-35.816,-37.718,-39.527,-40.827,-41.523,-41.836,-42.046,-42.319,-42.699,-43.144,-43.554,
--43.882,-44.237,-44.801,-45.591,-46.404,-47.040,-47.510,-47.949,-48.399,-48.798,-49.103,-49.317,-49.390,-49.230,-48.875,-48.549,
--48.467,-48.608,-48.775,-48.824,-48.779,-48.712,-48.640,-48.555,-48.510,-48.576,-48.759,-49.000,-49.239,-49.437,-49.567,-49.640,
--49.734,-49.922,-50.180,-50.432,-50.672,-50.950,-51.269,-51.578,-51.910,-52.386,-53.029,-53.676,-54.177,-54.589,-55.060,-55.593,
--56.080,-56.509,-56.997,-57.591,-58.198,-58.757,-59.351,-60.068,-60.840,-61.539,-62.153,-62.796,-63.540,-64.338,-65.112,-65.846,
--66.558,-67.235,-67.844,-68.404,-68.995,-69.680,-70.424,-71.130,-71.732,-72.255,-72.759,-73.272,-73.796,-74.329,-74.877,-75.437,
--76.015,-76.613,-77.191,-77.678,-78.070,-78.466,-78.970,-79.601,-80.332,-81.171,-82.110,-83.061,-83.937,-84.768,-85.623,-86.462,
--87.192,-87.865,-88.632,-89.491,-90.260,-90.866,-91.466,-92.205,-92.999,-93.701,-94.281,-94.701,-94.782,-94.488,-94.177,-94.269,
--94.714,-95.136,-95.509,-96.277,-97.636,-99.052,-99.815,-99.853,-99.692,-99.748,-99.991,-100.269,-100.579,-100.927,-101.200,-101.331,
--101.433,-101.626,-101.859,-102.026,-102.134,-102.251,-102.368,-102.413,-102.357,-102.218,-101.998,-101.715,-101.426,-101.139,-100.776,-100.266,
--99.622,-98.841,-97.841,-96.641,-95.518,-94.807,-94.518,-94.315,-93.877,-93.160,-92.287,-91.335,-90.325,-89.304,-88.321,-87.350,
--86.319,-85.192,-83.979,-82.703,-81.413,-80.197,-79.114,-78.090,-76.929,-75.475,-73.781,-72.087,-70.593,-69.259,-67.867,-66.295,
--64.667,-63.214,-62.050,-61.130,-60.318,-59.443,-58.345,-57.019,-55.660,-54.444,-53.282,-51.905,-50.223,-48.452,-46.841,-45.355,
--43.745,-41.883,-39.968,-38.334,-37.052,-35.795,-34.227,-32.476,-31.038,-30.138,-29.467,-28.713,-28.076,-27.902,-27.937,-27.378,
--25.699,-23.132,-20.327,-17.887,-16.231,-15.444,-15.049,-14.305,-12.926,-11.232,-9.450,-7.337,-4.816,-2.500,-1.036,-.210,
-.728,1.981,3.070,3.736,4.378,5.407,6.680,7.817,8.748,9.654,10.624,11.633,12.676,13.727,14.700,15.584,
-16.499,17.495,18.453,19.286,20.093,20.985,21.938,22.915,23.964,25.068,26.066,26.913,27.841,29.069,30.468,31.711,
-32.664,33.449,34.182,34.873,35.570,36.389,37.355,38.354,39.304,40.283,41.426,42.721,43.976,44.988,45.756,46.497,
-47.428,48.538,49.624,50.510,51.169,51.652,52.030,52.418,52.920,53.499,53.965,54.142,54.032,53.850,53.937,54.480,
-55.157,55.218,54.254,52.855,52.166,52.745,54.127,55.550,56.704,57.631,58.346,58.885,59.443,60.151,60.910,61.661,
-62.505,63.285,63.403,62.498,61.008,59.541,57.948,55.647,52.787,50.351,48.949,48.073,46.852,45.106,43.378,42.250,
-41.953,42.477,43.875,46.500,50.796,56.493,62.089,65.786,67.257,67.959,69.310,71.050,71.930,71.636,71.234,71.773,
-73.136,74.501,75.400,75.952,76.346,76.457,76.037,75.140,74.308,74.271,75.293,76.826,77.929,78.062,77.404,76.449,
-75.518,74.705,74.119,73.968,74.372,75.139,75.739,75.618,74.627,73.134,71.663,70.462,69.487,68.690,68.137,67.861,
-67.765,67.740,67.790,68.001,68.451,69.144,69.971,70.742,71.314,71.700,72.001,72.292,72.585,72.851,73.025,73.054,
-72.999,73.007,73.097,73.098,72.889,72.566,72.244,71.866,71.373,70.912,70.643,70.474,70.256,70.123,70.288,70.568,
-70.522,70.079,69.635,69.419,69.195,68.753,68.288,68.017,67.779,67.376,66.979,66.771,66.424,65.477,64.150,63.212,
-62.957,62.826,62.274,61.583,61.423,61.855,62.213,61.940,61.185,60.498,60.180,60.074,59.863,59.432,58.953,58.721,
-58.880,59.263,59.520,59.458,59.235,59.171,59.361,59.565,59.509,59.194,58.839,58.563,58.265,57.801,57.181,56.535,
-55.946,55.387,54.804,54.196,53.610,53.074,52.530,51.881,51.112,50.347,49.731,49.265,48.831,48.341,47.784,47.148,
-46.420,45.662,45.013,44.531,44.158,43.831,43.562,43.334,43.053,42.668,42.250,41.879,41.519,41.098,40.633,40.185,
-39.759,39.363,39.098,39.057,39.140,39.096,38.758,38.172,37.502,36.881,36.356,35.896,35.445,34.995,34.569,34.137,
-33.607,32.977,32.413,32.072,31.906,31.735,31.476,31.151,30.728,30.126,29.402,28.750,28.226,27.647,26.906,26.302,
-26.338,27.125,28.090,28.416,27.767,26.564,25.529,25.036,24.912,24.802,24.551,24.233,23.944,23.709,23.541,23.472,
-23.494,23.518,23.427,23.134,22.661,22.158,21.797,21.606,21.457,21.256,21.053,20.909,20.763,20.539,20.303,20.174,
-20.132,20.069,19.939,19.724,19.327,18.763,18.368,18.524,19.072,19.325,18.841,17.959,17.358,17.271,17.392,17.419,
-17.362,17.308,17.213,17.045,16.899,16.838,16.748,16.488,16.120,15.837,15.735,15.761,15.849,15.968,16.041,15.947,
-15.672,15.360,15.168,15.101,15.061,14.998,14.943,14.908,14.844,14.727,14.620,14.605,14.694,14.813,14.872,14.824,
-14.693,14.570,14.526,14.529,14.488,14.392,14.366,14.519,14.806,15.081,15.253,15.325,15.320,15.253,15.175,15.157,
-15.205,15.268,15.336,15.450,15.593,15.663,15.611,15.546,15.608,15.757,15.800,15.656,15.509,15.621,16.008,16.401,
-16.542,16.444,16.311,16.263,16.249,16.205,16.171,16.212,16.299,16.353,16.342,16.283,16.184,16.045,15.887,15.721,
-15.522,15.292,15.084,14.929,14.770,14.549,14.302,14.106,13.961,13.814,13.666,13.562,13.490,13.398,13.287,13.193,
-13.083,12.873,12.569,12.285,12.091,11.945,11.790,11.638,11.506,11.359,11.165,10.939,10.695,10.409,10.078,9.754,
-9.483,9.239,8.969,8.657,8.318,7.972,7.647,7.363,7.093,6.788,6.445,6.118,5.813,5.472,5.060,4.634,
-4.253,3.899,3.526,3.141,2.782,2.450,2.127,1.812,1.512,1.208,.882,.542,.201,-.160,-.557,-.967,
--1.358,-1.732,-2.111,-2.494,-2.876,-3.272,-3.702,-4.156,-4.602,-5.015,-5.387,-5.715,-6.002,-6.267,-6.528,-6.807,
--7.131,-7.502,-7.863,-8.151,-8.381,-8.623,-8.904,-9.187,-9.455,-9.754,-10.100,-10.428,-10.680,-10.898,-11.167,-11.507,
--11.868,-12.212,-12.553,-12.909,-13.270,-13.620,-13.942,-14.232,-14.503,-14.784,-15.092,-15.416,-15.742,-16.066,-16.382,-16.686,
--16.995,-17.337,-17.699,-18.021,-18.268,-18.476,-18.703,-18.964,-19.237,-19.510,-19.788,-20.065,-20.322,-20.542,-20.726,-20.895,
--21.079,-21.285,-21.487,-21.658,-21.814,-21.978,-22.133,-22.248,-22.343,-22.459,-22.584,-22.670,-22.725,-22.815,-22.951,-23.062,
--23.117,-23.164,-23.244,-23.308,-23.308,-23.278,-23.270,-23.272,-23.244,-23.201,-23.174,-23.135,-23.034,-22.882,-22.736,-22.617,
--22.498,-22.355,-22.192,-22.010,-21.820,-21.653,-21.530,-21.434,-21.341,-21.247,-21.144,-21.001,-20.812,-20.628,-20.496,-20.389,
--20.250,-20.074,-19.902,-19.755,-19.614,-19.462,-19.307,-19.162,-19.038,-18.941,-18.853,-18.740,-18.595,-18.450,-18.327,-18.204,
--18.060,-17.924,-17.823,-17.737,-17.634,-17.516,-17.401,-17.272,-17.113,-16.950,-16.815,-16.693,-16.556,-16.406,-16.266,-16.122,
--15.958,-15.792,-15.650,-15.506,-15.328,-15.137,-14.979,-14.836,-14.653,-14.433,-14.243,-14.107,-13.973,-13.788,-13.576,-13.387,
--13.233,-13.088,-12.930,-12.760,-12.584,-12.413,-12.262,-12.136,-12.018,-11.878,-11.706,-11.541,-11.423,-11.336,-11.220,-11.051,
--10.865,-10.677,-10.447,-10.155,-9.861,-9.602,-9.345,-9.123,-9.099,-9.250,-9.099,-8.121,-6.480,-5.049,-4.486,-4.564,
--4.630,-4.443,-4.238,-4.150,-4.038,-3.834,-3.676,-3.599,-3.433,-3.103,-2.778,-2.582,-2.404,-2.130,-1.838,-1.620,
--1.396,-1.065,-.687,-.350,-.010,.401,.846,1.290,1.809,2.445,3.119,3.818,4.675,5.694,6.637,7.384,
-8.176,9.142,9.830,9.689,8.968,8.642,9.340,10.762,12.289,13.725,15.201,16.751,18.379,20.307,22.694,25.118,
-26.666,26.615,24.941,22.267,19.496,17.419,16.362,16.118,16.322,16.820,17.583,18.384,18.879,18.993,18.988,19.094,
-19.294,19.514,19.775,20.021,20.022,19.614,18.939,18.297,17.859,17.607,17.438,17.216,16.812,16.257,15.747,15.407,
-15.112,14.682,14.137,13.593,12.997,12.176,11.126,10.049,9.094,8.221,7.371,6.574,5.833,5.048,4.170,3.305,
-2.561,1.896,1.201,.467,-.240,-.913,-1.595,-2.267,-2.877,-3.447,-4.058,-4.708,-5.299,-5.794,-6.292,-6.871,
--7.439,-7.822,-7.991,-8.110,-8.360,-8.778,-9.295,-9.867,-10.506,-11.210,-11.935,-12.662,-13.450,-14.371,-15.391,-16.357,
--17.128,-17.700,-18.194,-18.715,-19.240,-19.673,-19.990,-20.299,-20.723,-21.259,-21.798,-22.277,-22.761,-23.358,-24.055,-24.681,
--25.017,-24.968,-24.642,-24.258,-23.984,-23.850,-23.798,-23.773,-23.736,-23.645,-23.484,-23.294,-23.153,-23.148,-23.380,-23.925,
--24.678,-25.319,-25.574,-25.525,-25.507,-25.693,-25.927,-26.001,-25.931,-25.861,-25.854,-25.882,-25.923,-25.916,-25.735,-25.324,
--24.804,-24.315,-23.843,-23.344,-22.936,-22.788,-22.843,-22.867,-22.772,-22.738,-22.973,-23.470,-24.017,-24.307,-24.090,-23.395,
--22.612,-22.193,-22.181,-22.189,-21.872,-21.258,-20.575,-19.941,-19.361,-18.849,-18.392,-17.888,-17.299,-16.758,-16.393,-16.105,
--15.683,-15.106,-14.546,-14.092,-13.624,-13.018,-12.333,-11.712,-11.181,-10.640,-10.016,-9.350,-8.734,-8.210,-7.749,-7.306,
--6.859,-6.400,-5.917,-5.414,-4.920,-4.460,-4.013,-3.538,-3.039,-2.545,-2.060,-1.557,-1.037,-.531,-.047,.435,
-.910,1.366,1.840,2.396,3.004,3.552,3.979,4.358,4.780,5.238,5.673,6.066,6.434,6.771,7.055,7.279,
-7.452,7.609,7.836,8.216,8.716,9.184,9.504,9.705,9.845,9.901,9.828,9.694,9.632,9.675,9.735,9.734,
-9.695,9.687,9.756,9.934,10.235,10.616,10.966,11.190,11.318,11.495,11.828,12.245,12.536,12.584,12.517,12.584,
-12.897,13.390,13.987,14.699,15.512,16.307,16.992,17.599,18.182,18.676,18.960,19.033,19.010,18.979,18.947,18.909,
-18.884,18.874,18.854,18.832,18.852,18.928,19.031,19.132,19.230,19.325,19.408,19.475,19.529,19.560,19.568,19.577,
-19.613,19.661,19.690,19.693,19.686,19.681,19.679,19.675,19.660,19.630,19.611,19.634,19.670,19.650,19.560,19.464,
-19.396,19.299,19.112,18.882,18.699,18.578,18.477,18.372,18.269,18.156,18.024,17.915,17.868,17.849,17.804,17.742,
-17.712,17.694,17.623,17.503,17.408,17.368,17.337,17.292,17.274,17.312,17.358,17.606,17.638,17.593,17.466,17.318,
-17.241,17.277,17.379,17.441,17.385,17.226,17.065,17.006,17.047,17.063,16.944,16.729,16.546,16.431,16.306,16.142,
-16.032,16.031,16.020,15.832,15.462,15.066,14.769,14.562,14.391,14.265,14.238,14.289,14.231,13.810,12.983,12.055,
-11.397,10.980,10.383,9.366,8.285,7.716,7.781,8.054,8.117,7.936,7.684,7.420,7.102,6.748,6.428,6.139,
-5.793,5.286,4.541,3.562,2.489,1.513,.666,-.248,-1.387,-2.607,-3.565,-4.096,-4.424,-4.994,-6.126,-7.783,
--9.600,-11.123,-12.107,-12.632,-12.978,-13.415,-14.090,-15.014,-16.074,-17.105,-17.990,-18.719,-19.322,-19.803,-20.172,-20.476,
--20.742,-20.905,-20.907,-20.835,-20.873,-21.079,-21.302,-21.363,-21.270,-21.190,-21.233,-21.303,-21.185,-20.756,-20.104,-19.443,
--18.921,-18.547,-18.264,-18.041,-17.817,-17.448,-16.817,-15.991,-15.156,-14.346,-13.339,-11.911,-10.166,-8.551,-7.561,-7.428,
--7.999,-8.817,-9.413,-9.667,-9.883,-10.412,-11.219,-11.948,-12.401,-12.753,-13.255,-13.912,-14.568,-15.155,-15.696,-16.167,
--16.541,-16.875,-17.189,-17.308,-17.039,-16.473,-15.914,-15.486,-15.057,-14.572,-14.198,-14.036,-13.924,-13.768,-13.871,-14.665,
--16.145,-17.804,-19.158,-20.128,-20.916,-21.713,-22.619,-23.685,-24.883,-26.069,-27.082,-27.897,-28.629,-29.422,-30.317,-31.207,
--31.903,-32.310,-32.566,-32.996,-33.896,-35.335,-37.123,-38.905,-40.329,-41.211,-41.615,-41.768,-41.890,-42.106,-42.459,-42.907,
--43.338,-43.697,-44.113,-44.784,-45.695,-46.561,-47.135,-47.474,-47.821,-48.282,-48.740,-49.052,-49.185,-49.145,-48.937,-48.637,
--48.426,-48.426,-48.563,-48.657,-48.631,-48.550,-48.476,-48.398,-48.315,-48.291,-48.389,-48.586,-48.818,-49.049,-49.250,-49.379,
--49.436,-49.499,-49.649,-49.865,-50.085,-50.327,-50.653,-51.051,-51.444,-51.843,-52.346,-52.952,-53.505,-53.909,-54.276,-54.751,
--55.291,-55.754,-56.141,-56.607,-57.217,-57.858,-58.432,-59.012,-59.718,-60.525,-61.291,-61.936,-62.527,-63.178,-63.926,-64.715,
--65.477,-66.193,-66.883,-67.557,-68.212,-68.860,-69.527,-70.205,-70.843,-71.417,-71.965,-72.534,-73.114,-73.660,-74.159,-74.639,
--75.138,-75.687,-76.295,-76.904,-77.404,-77.765,-78.115,-78.610,-79.267,-80.000,-80.772,-81.613,-82.512,-83.409,-84.285,-85.157,
--85.988,-86.731,-87.449,-88.268,-89.156,-89.932,-90.526,-91.098,-91.812,-92.623,-93.381,-93.983,-94.320,-94.261,-93.903,-93.663,
--93.866,-94.331,-94.689,-95.041,-95.901,-97.387,-98.846,-99.546,-99.496,-99.295,-99.357,-99.609,-99.874,-100.155,-100.485,-100.765,
--100.921,-101.040,-101.233,-101.463,-101.643,-101.780,-101.929,-102.070,-102.124,-102.048,-101.849,-101.547,-101.204,-100.914,-100.690,-100.411,
--99.948,-99.293,-98.505,-97.601,-96.632,-95.764,-95.156,-94.739,-94.273,-93.614,-92.830,-92.023,-91.182,-90.261,-89.294,-88.337,
--87.370,-86.331,-85.202,-84.007,-82.760,-81.493,-80.301,-79.251,-78.253,-77.081,-75.588,-73.874,-72.191,-70.671,-69.208,-67.627,
--65.936,-64.334,-62.999,-61.949,-61.104,-60.366,-59.583,-58.562,-57.265,-55.892,-54.645,-53.436,-51.985,-50.213,-48.382,-46.779,
--45.379,-43.900,-42.160,-40.295,-38.616,-37.242,-35.945,-34.434,-32.777,-31.347,-30.303,-29.363,-28.288,-27.384,-27.159,-27.514,
--27.612,-26.616,-24.380,-21.450,-18.692,-16.883,-16.240,-16.152,-15.675,-14.431,-12.735,-10.800,-8.345,-5.318,-2.479,-.688,
-.172,.957,2.095,3.238,4.070,4.832,5.861,7.062,8.144,9.041,9.880,10.737,11.655,12.700,13.825,14.849,
-15.716,16.611,17.660,18.717,19.598,20.349,21.124,21.959,22.853,23.881,25.029,26.078,26.898,27.721,28.866,30.274,
-31.570,32.548,33.333,34.068,34.738,35.365,36.138,37.171,38.317,39.371,40.400,41.651,43.147,44.530,45.432,45.903,
-46.365,47.140,48.146,49.085,49.786,50.276,50.638,50.984,51.494,52.271,53.144,53.759,53.930,53.799,53.695,53.919,
-54.549,55.225,55.245,54.246,52.846,52.248,53.049,54.739,56.463,57.892,59.103,60.009,60.402,60.394,60.425,60.838,
-61.668,62.698,63.467,63.456,62.605,61.485,60.549,59.372,57.153,53.936,50.746,48.412,46.740,45.098,43.372,42.025,
-41.480,41.756,42.588,43.770,45.502,48.378,52.694,57.679,61.888,64.625,66.560,68.585,70.491,71.392,71.195,70.921,
-71.446,72.550,73.466,73.941,74.329,74.861,75.256,75.144,74.651,74.429,75.092,76.632,78.373,79.515,79.750,79.350,
-78.733,78.027,77.094,75.912,74.863,74.501,74.979,75.750,76.022,75.513,74.595,73.693,72.810,71.780,70.737,69.990,
-69.559,69.148,68.598,68.120,67.992,68.245,68.736,69.373,70.123,70.899,71.556,72.007,72.290,72.515,72.744,72.950,
-73.083,73.184,73.319,73.420,73.319,73.000,72.648,72.374,72.068,71.682,71.428,71.463,71.574,71.501,71.414,71.653,
-72.086,72.198,71.861,71.522,71.484,71.456,71.105,70.624,70.360,70.203,69.806,69.202,68.711,68.311,67.617,66.517,
-65.365,64.424,63.520,62.492,61.649,61.415,61.694,61.901,61.632,61.060,60.645,60.609,60.750,60.661,60.101,59.239,
-58.562,58.468,58.884,59.328,59.410,59.212,59.116,59.314,59.589,59.613,59.326,58.951,58.670,58.433,58.079,57.551,
-56.940,56.347,55.787,55.208,54.580,53.940,53.353,52.812,52.213,51.483,50.706,50.046,49.548,49.093,48.548,47.900,
-47.208,46.511,45.836,45.227,44.718,44.310,43.999,43.764,43.523,43.168,42.694,42.221,41.837,41.509,41.170,40.816,
-40.445,40.007,39.532,39.203,39.166,39.292,39.266,38.905,38.311,37.694,37.153,36.655,36.145,35.647,35.241,34.949,
-34.649,34.172,33.521,32.909,32.522,32.303,32.072,31.768,31.451,31.108,30.632,30.012,29.375,28.775,28.082,27.229,
-26.510,26.464,27.349,28.729,29.662,29.405,28.042,26.399,25.329,25.057,25.189,25.226,24.959,24.473,23.962,23.604,
-23.492,23.589,23.721,23.687,23.375,22.844,22.287,21.882,21.639,21.422,21.154,20.915,20.782,20.680,20.498,20.280,
-20.154,20.130,20.114,20.035,19.842,19.431,18.840,18.446,18.647,19.245,19.471,18.836,17.733,16.961,16.823,16.983,
-17.079,17.110,17.183,17.235,17.167,17.038,16.958,16.882,16.692,16.398,16.127,15.950,15.855,15.846,15.946,16.085,
-16.112,15.949,15.680,15.440,15.276,15.157,15.049,14.928,14.765,14.566,14.410,14.404,14.581,14.872,15.159,15.328,
-15.312,15.132,14.905,14.744,14.645,14.530,14.395,14.342,14.454,14.687,14.935,15.120,15.201,15.160,15.043,14.959,
-14.965,15.003,15.009,15.029,15.145,15.320,15.435,15.450,15.456,15.511,15.545,15.459,15.284,15.184,15.312,15.660,
-16.048,16.261,16.224,16.052,15.919,15.894,15.928,15.957,15.962,15.960,15.975,16.020,16.064,16.042,15.930,15.782,
-15.658,15.534,15.355,15.137,14.943,14.777,14.580,14.333,14.087,13.887,13.732,13.604,13.492,13.368,13.217,13.079,
-12.987,12.884,12.682,12.397,12.147,11.986,11.856,11.706,11.567,11.467,11.361,11.203,11.013,10.819,10.592,10.305,
-9.992,9.705,9.436,9.148,8.832,8.499,8.153,7.809,7.491,7.192,6.867,6.504,6.145,5.817,5.479,5.096,
-4.700,4.331,3.969,3.573,3.157,2.768,2.415,2.081,1.764,1.480,1.214,.939,.648,.342,.000,-.391,
--.799,-1.182,-1.542,-1.910,-2.292,-2.674,-3.063,-3.478,-3.913,-4.340,-4.742,-5.124,-5.482,-5.804,-6.082,-6.334,
--6.593,-6.894,-7.245,-7.608,-7.929,-8.199,-8.456,-8.725,-8.996,-9.270,-9.579,-9.929,-10.264,-10.525,-10.738,-10.981,
--11.294,-11.645,-11.995,-12.342,-12.708,-13.086,-13.443,-13.743,-13.987,-14.219,-14.489,-14.801,-15.128,-15.453,-15.778,-16.101,
--16.412,-16.723,-17.056,-17.396,-17.690,-17.923,-18.136,-18.375,-18.636,-18.890,-19.137,-19.398,-19.675,-19.946,-20.184,-20.384,
--20.558,-20.731,-20.915,-21.098,-21.266,-21.431,-21.605,-21.771,-21.904,-22.021,-22.152,-22.284,-22.374,-22.431,-22.507,-22.610,
--22.693,-22.737,-22.782,-22.851,-22.901,-22.900,-22.883,-22.893,-22.912,-22.905,-22.876,-22.842,-22.786,-22.686,-22.562,-22.445,
--22.332,-22.204,-22.066,-21.921,-21.747,-21.543,-21.359,-21.240,-21.162,-21.073,-20.959,-20.835,-20.692,-20.523,-20.358,-20.234,
--20.138,-20.021,-19.871,-19.720,-19.580,-19.435,-19.275,-19.114,-18.968,-18.841,-18.730,-18.618,-18.488,-18.346,-18.218,-18.113,
--18.001,-17.867,-17.736,-17.631,-17.537,-17.430,-17.316,-17.207,-17.088,-16.948,-16.813,-16.705,-16.599,-16.462,-16.309,-16.174,
--16.048,-15.902,-15.738,-15.582,-15.431,-15.262,-15.085,-14.928,-14.786,-14.627,-14.447,-14.279,-14.135,-13.983,-13.805,-13.621,
--13.461,-13.320,-13.173,-13.012,-12.845,-12.683,-12.529,-12.382,-12.249,-12.129,-12.006,-11.867,-11.730,-11.620,-11.518,-11.374,
--11.182,-10.990,-10.813,-10.602,-10.339,-10.087,-9.869,-9.617,-9.359,-9.300,-9.474,-9.417,-8.547,-6.940,-5.403,-4.601,
--4.396,-4.243,-3.948,-3.719,-3.660,-3.633,-3.568,-3.551,-3.560,-3.430,-3.138,-2.863,-2.699,-2.529,-2.270,-2.007,
--1.802,-1.564,-1.230,-.877,-.544,-.136,.386,.911,1.393,1.946,2.630,3.331,4.017,4.839,5.824,6.727,
-7.426,8.149,8.983,9.431,9.023,8.235,8.217,9.507,11.487,13.237,14.478,15.477,16.545,18.013,20.284,23.321,
-26.185,27.560,26.840,24.500,21.511,18.699,16.613,15.551,15.453,15.954,16.682,17.425,18.033,18.381,18.514,18.639,
-18.883,19.169,19.406,19.632,19.847,19.885,19.594,19.051,18.472,17.967,17.518,17.111,16.752,16.401,16.015,15.622,
-15.269,14.928,14.557,14.180,13.807,13.311,12.538,11.531,10.495,9.559,8.694,7.852,7.052,6.283,5.475,4.617,
-3.804,3.090,2.398,1.651,.891,.196,-.455,-1.132,-1.827,-2.484,-3.111,-3.760,-4.421,-5.020,-5.550,-6.099,
--6.704,-7.253,-7.601,-7.756,-7.890,-8.171,-8.618,-9.141,-9.681,-10.280,-10.993,-11.792,-12.601,-13.408,-14.277,-15.233,
--16.164,-16.922,-17.492,-18.006,-18.575,-19.161,-19.647,-19.993,-20.283,-20.616,-21.020,-21.464,-21.932,-22.452,-23.059,-23.731,
--24.347,-24.717,-24.711,-24.388,-23.973,-23.675,-23.551,-23.539,-23.564,-23.576,-23.527,-23.396,-23.212,-23.037,-22.962,-23.130,
--23.662,-24.452,-25.125,-25.359,-25.241,-25.148,-25.291,-25.533,-25.675,-25.699,-25.669,-25.580,-25.448,-25.399,-25.478,-25.494,
--25.221,-24.689,-24.113,-23.607,-23.140,-22.743,-22.534,-22.529,-22.584,-22.568,-22.498,-22.481,-22.631,-22.992,-23.412,-23.537,
--23.124,-22.389,-21.840,-21.709,-21.725,-21.500,-20.952,-20.257,-19.570,-18.958,-18.464,-18.072,-17.662,-17.168,-16.693,-16.357,
--16.072,-15.643,-15.046,-14.456,-13.980,-13.524,-12.952,-12.276,-11.603,-10.988,-10.398,-9.787,-9.159,-8.552,-8.002,-7.510,
--7.047,-6.590,-6.139,-5.698,-5.267,-4.849,-4.457,-4.076,-3.665,-3.201,-2.703,-2.200,-1.700,-1.203,-.713,-.221,
-.285,.790,1.272,1.755,2.302,2.917,3.511,3.994,4.376,4.718,5.057,5.395,5.739,6.094,6.422,6.681,
-6.857,6.972,7.064,7.201,7.458,7.829,8.204,8.486,8.682,8.842,8.955,8.986,8.995,9.094,9.297,9.476,
-9.501,9.378,9.215,9.113,9.115,9.219,9.401,9.617,9.835,10.082,10.439,10.947,11.540,12.084,12.533,12.971,
-13.484,14.023,14.474,14.835,15.230,15.734,16.288,16.825,17.374,17.962,18.486,18.785,18.821,18.708,18.584,18.514,
-18.510,18.561,18.638,18.702,18.744,18.798,18.898,19.059,19.257,19.437,19.552,19.613,19.680,19.781,19.874,19.906,
-19.894,19.886,19.895,19.898,19.884,19.859,19.821,19.763,19.696,19.643,19.616,19.617,19.632,19.627,19.562,19.442,
-19.321,19.219,19.091,18.904,18.697,18.532,18.415,18.310,18.205,18.114,18.029,17.940,17.867,17.832,17.811,17.766,
-17.711,17.689,17.690,17.655,17.565,17.469,17.421,17.422,17.445,17.482,17.540,17.606,17.846,17.859,17.792,17.622,
-17.446,17.396,17.485,17.588,17.591,17.487,17.343,17.221,17.157,17.137,17.082,16.925,16.712,16.547,16.449,16.344,
-16.232,16.201,16.231,16.109,15.677,15.079,14.625,14.445,14.390,14.281,14.148,14.151,14.324,14.417,14.067,13.183,
-12.113,11.317,10.841,10.270,9.303,8.213,7.576,7.641,8.141,8.641,8.868,8.727,8.246,7.595,7.010,6.589,
-6.231,5.814,5.296,4.646,3.820,2.874,1.963,1.103,.082,-1.251,-2.672,-3.736,-4.257,-4.531,-5.067,-6.153,
--7.689,-9.354,-10.865,-12.108,-13.061,-13.706,-14.085,-14.415,-14.998,-15.938,-17.033,-18.002,-18.760,-19.387,-19.921,-20.325,
--20.620,-20.883,-21.119,-21.240,-21.231,-21.213,-21.285,-21.377,-21.359,-21.236,-21.154,-21.205,-21.303,-21.248,-20.918,-20.368,
--19.783,-19.317,-18.983,-18.705,-18.437,-18.167,-17.805,-17.185,-16.259,-15.187,-14.156,-13.123,-11.885,-10.397,-8.928,-7.852,
--7.340,-7.273,-7.425,-7.710,-8.251,-9.197,-10.445,-11.611,-12.372,-12.790,-13.194,-13.779,-14.464,-15.127,-15.746,-16.263,
--16.564,-16.712,-16.956,-17.328,-17.429,-16.925,-16.085,-15.491,-15.285,-15.113,-14.791,-14.593,-14.724,-14.935,-14.974,-15.082,
--15.681,-16.741,-17.836,-18.765,-19.718,-20.839,-21.983,-23.024,-24.078,-25.265,-26.441,-27.377,-28.080,-28.777,-29.620,-30.541,
--31.366,-31.971,-32.376,-32.791,-33.533,-34.801,-36.486,-38.235,-39.688,-40.673,-41.221,-41.482,-41.620,-41.757,-41.978,-42.342,
--42.830,-43.324,-43.741,-44.200,-44.924,-45.914,-46.841,-47.368,-47.533,-47.672,-48.015,-48.471,-48.813,-48.926,-48.837,-48.632,
--48.425,-48.335,-48.397,-48.501,-48.509,-48.405,-48.270,-48.155,-48.051,-47.980,-48.018,-48.196,-48.442,-48.670,-48.858,-49.007,
--49.096,-49.126,-49.171,-49.305,-49.507,-49.719,-49.954,-50.268,-50.654,-51.061,-51.509,-52.070,-52.706,-53.254,-53.638,-53.976,
--54.413,-54.921,-55.381,-55.796,-56.289,-56.910,-57.565,-58.159,-58.733,-59.400,-60.189,-61.009,-61.738,-62.352,-62.931,-63.570,
--64.281,-65.000,-65.697,-66.407,-67.162,-67.920,-68.627,-69.291,-69.944,-70.582,-71.182,-71.756,-72.331,-72.889,-73.393,-73.850,
--74.307,-74.801,-75.355,-75.974,-76.592,-77.091,-77.435,-77.763,-78.248,-78.894,-79.586,-80.284,-81.066,-81.961,-82.890,-83.779,
--84.633,-85.455,-86.231,-87.000,-87.840,-88.721,-89.503,-90.138,-90.757,-91.484,-92.286,-93.043,-93.646,-93.950,-93.837,-93.465,
--93.275,-93.525,-93.958,-94.238,-94.580,-95.546,-97.168,-98.670,-99.292,-99.127,-98.864,-98.933,-99.216,-99.484,-99.743,-100.060,
--100.363,-100.556,-100.689,-100.858,-101.061,-101.242,-101.415,-101.619,-101.820,-101.920,-101.855,-101.618,-101.251,-100.859,-100.561,-100.360,
--100.094,-99.592,-98.858,-98.030,-97.215,-96.452,-95.773,-95.181,-94.597,-93.925,-93.181,-92.467,-91.795,-91.049,-90.152,-89.170,
--88.198,-87.225,-86.181,-85.046,-83.855,-82.637,-81.431,-80.318,-79.340,-78.373,-77.183,-75.658,-73.942,-72.270,-70.715,-69.145,
--67.460,-65.772,-64.302,-63.147,-62.219,-61.406,-60.645,-59.831,-58.800,-57.506,-56.123,-54.828,-53.537,-52.008,-50.192,-48.342,
--46.726,-45.327,-43.906,-42.294,-40.566,-38.931,-37.490,-36.122,-34.657,-33.144,-31.797,-30.647,-29.434,-28.043,-26.890,-26.562,
--27.047,-27.555,-27.141,-25.384,-22.571,-19.540,-17.323,-16.499,-16.648,-16.677,-15.826,-14.134,-11.869,-9.003,-5.632,-2.480,
--.385,.634,1.320,2.237,3.317,4.339,5.348,6.439,7.506,8.429,9.269,10.117,10.955,11.816,12.827,13.973,
-15.029,15.896,16.771,17.830,18.929,19.837,20.567,21.278,22.032,22.843,23.808,24.945,26.036,26.892,27.687,28.745,
-30.053,31.267,32.193,32.973,33.751,34.468,35.105,35.869,36.931,38.125,39.168,40.104,41.254,42.699,44.051,44.886,
-45.283,45.721,46.498,47.445,48.242,48.810,49.268,49.702,50.195,50.926,51.986,53.088,53.740,53.770,53.512,53.443,
-53.783,54.413,54.925,54.784,53.808,52.631,52.333,53.406,55.312,57.249,58.986,60.621,61.864,62.171,61.575,60.931,
-61.140,62.329,63.810,64.655,64.379,63.296,62.201,61.474,60.564,58.657,55.737,52.640,50.058,47.965,46.106,44.595,
-43.752,43.645,44.061,44.733,45.464,46.298,47.746,50.484,54.522,58.919,62.643,65.488,67.793,69.571,70.492,70.666,
-70.802,71.376,72.079,72.388,72.366,72.534,73.100,73.700,73.940,73.945,74.234,75.149,76.510,77.809,78.680,79.149,
-79.491,79.834,79.928,79.325,77.891,76.148,74.973,74.799,75.191,75.372,75.098,74.751,74.609,74.402,73.807,73.006,
-72.421,72.055,71.527,70.712,69.956,69.572,69.448,69.340,69.321,69.689,70.503,71.440,72.106,72.390,72.473,72.582,
-72.791,73.038,73.254,73.394,73.389,73.207,72.972,72.864,72.873,72.821,72.718,72.855,73.336,73.762,73.719,73.386,
-73.276,73.449,73.475,73.188,72.968,73.070,73.159,72.842,72.313,72.026,71.973,71.731,71.140,70.480,69.978,69.515,
-68.897,68.100,67.113,65.852,64.406,63.157,62.427,62.112,61.828,61.357,60.828,60.496,60.487,60.697,60.827,60.560,
-59.829,58.968,58.471,58.549,58.955,59.285,59.390,59.428,59.566,59.741,59.761,59.552,59.227,58.925,58.662,58.359,
-57.938,57.388,56.760,56.128,55.530,54.935,54.305,53.668,53.078,52.497,51.820,51.038,50.288,49.680,49.155,48.574,
-47.916,47.277,46.713,46.173,45.590,45.001,44.529,44.256,44.109,43.892,43.467,42.897,42.369,41.985,41.686,41.389,
-41.082,40.746,40.319,39.828,39.454,39.337,39.357,39.241,38.870,38.379,37.938,37.552,37.101,36.532,35.939,35.481,
-35.205,34.969,34.571,33.979,33.372,32.927,32.626,32.341,32.027,31.731,31.449,31.092,30.597,29.984,29.293,28.538,
-27.757,27.105,26.858,27.288,28.364,29.522,29.907,29.079,27.506,26.196,25.791,26.079,26.363,26.144,25.425,24.539,
-23.842,23.518,23.517,23.631,23.634,23.405,22.974,22.475,22.056,21.749,21.480,21.203,20.980,20.860,20.757,20.563,
-20.329,20.203,20.208,20.218,20.124,19.883,19.459,18.922,18.597,18.809,19.353,19.516,18.842,17.718,16.934,16.796,
-16.950,17.005,16.975,17.043,17.191,17.266,17.225,17.135,17.012,16.818,16.568,16.331,16.124,15.932,15.788,15.758,
-15.832,15.911,15.919,15.857,15.743,15.576,15.362,15.121,14.855,14.554,14.281,14.173,14.319,14.676,15.112,15.501,
-15.740,15.745,15.518,15.184,14.891,14.681,14.527,14.444,14.487,14.643,14.813,14.933,15.010,15.044,15.000,14.897,
-14.825,14.820,14.816,14.778,14.791,14.926,15.110,15.223,15.267,15.324,15.394,15.397,15.314,15.228,15.217,15.298,
-15.473,15.718,15.922,15.954,15.820,15.678,15.657,15.723,15.763,15.732,15.683,15.687,15.757,15.830,15.816,15.693,
-15.549,15.478,15.448,15.348,15.148,14.927,14.744,14.565,14.342,14.105,13.913,13.772,13.642,13.481,13.277,13.056,
-12.875,12.763,12.665,12.501,12.275,12.067,11.907,11.748,11.572,11.431,11.350,11.267,11.127,10.962,10.814,10.653,
-10.430,10.150,9.855,9.554,9.239,8.925,8.618,8.295,7.946,7.600,7.275,6.940,6.566,6.184,5.829,5.484,
-5.117,4.743,4.391,4.037,3.639,3.213,2.810,2.447,2.103,1.782,1.502,1.259,1.014,.746,.448,.112,
--.267,-.655,-1.016,-1.353,-1.702,-2.073,-2.454,-2.849,-3.270,-3.699,-4.098,-4.464,-4.831,-5.210,-5.572,-5.883,
--6.150,-6.412,-6.704,-7.037,-7.393,-7.734,-8.040,-8.324,-8.605,-8.885,-9.168,-9.470,-9.797,-10.113,-10.382,-10.613,
--10.864,-11.172,-11.520,-11.867,-12.208,-12.558,-12.915,-13.240,-13.494,-13.694,-13.907,-14.186,-14.521,-14.867,-15.203,-15.536,
--15.866,-16.182,-16.485,-16.788,-17.083,-17.346,-17.578,-17.809,-18.055,-18.296,-18.517,-18.739,-18.988,-19.259,-19.532,-19.788,
--20.016,-20.207,-20.370,-20.524,-20.679,-20.837,-21.002,-21.179,-21.353,-21.506,-21.645,-21.789,-21.923,-22.020,-22.086,-22.158,
--22.246,-22.321,-22.373,-22.421,-22.468,-22.487,-22.478,-22.478,-22.508,-22.537,-22.533,-22.504,-22.460,-22.389,-22.295,-22.204,
--22.122,-22.020,-21.886,-21.749,-21.618,-21.458,-21.258,-21.077,-20.967,-20.893,-20.789,-20.648,-20.510,-20.384,-20.244,-20.095,
--19.966,-19.858,-19.745,-19.616,-19.485,-19.355,-19.214,-19.063,-18.921,-18.794,-18.668,-18.531,-18.385,-18.237,-18.101,-17.992,
--17.904,-17.808,-17.692,-17.573,-17.468,-17.361,-17.235,-17.105,-16.988,-16.878,-16.763,-16.654,-16.560,-16.459,-16.332,-16.193,
--16.075,-15.968,-15.838,-15.676,-15.503,-15.340,-15.184,-15.030,-14.877,-14.725,-14.576,-14.435,-14.303,-14.161,-13.997,-13.825,
--13.668,-13.532,-13.399,-13.249,-13.084,-12.924,-12.786,-12.665,-12.539,-12.394,-12.244,-12.107,-11.986,-11.874,-11.768,-11.654,
--11.499,-11.306,-11.120,-10.954,-10.762,-10.526,-10.303,-10.106,-9.851,-9.548,-9.406,-9.533,-9.599,-9.086,-7.944,-6.698,
--5.803,-5.173,-4.529,-3.916,-3.595,-3.579,-3.627,-3.612,-3.608,-3.618,-3.521,-3.306,-3.112,-2.983,-2.807,-2.538,
--2.271,-2.045,-1.774,-1.433,-1.098,-.757,-.290,.305,.879,1.404,2.033,2.802,3.536,4.176,4.923,5.859,
-6.742,7.400,8.013,8.658,8.896,8.389,7.748,8.159,10.032,12.510,14.445,15.447,15.868,16.328,17.558,20.138,
-23.746,26.849,27.771,26.165,23.147,20.071,17.589,15.848,14.986,15.052,15.731,16.514,17.122,17.584,17.992,18.356,
-18.671,18.955,19.218,19.454,19.657,19.775,19.715,19.451,19.055,18.591,18.037,17.395,16.792,16.361,16.080,15.810,
-15.475,15.104,14.742,14.419,14.154,13.903,13.527,12.899,12.057,11.147,10.245,9.332,8.408,7.526,6.698,5.875,
-5.051,4.283,3.582,2.874,2.122,1.385,.711,.052,-.655,-1.382,-2.066,-2.717,-3.385,-4.061,-4.692,-5.286,
--5.905,-6.540,-7.067,-7.379,-7.530,-7.704,-8.049,-8.546,-9.076,-9.582,-10.154,-10.905,-11.809,-12.713,-13.523,-14.299,
--15.125,-15.953,-16.668,-17.265,-17.868,-18.557,-19.255,-19.826,-20.209,-20.443,-20.612,-20.818,-21.158,-21.668,-22.293,-22.947,
--23.581,-24.131,-24.453,-24.419,-24.084,-23.682,-23.415,-23.305,-23.285,-23.336,-23.459,-23.579,-23.579,-23.420,-23.174,-22.981,
--23.019,-23.420,-24.101,-24.716,-24.958,-24.881,-24.800,-24.887,-25.035,-25.127,-25.212,-25.318,-25.323,-25.171,-25.059,-25.181,
--25.388,-25.336,-24.912,-24.330,-23.806,-23.351,-22.908,-22.515,-22.262,-22.179,-22.213,-22.252,-22.190,-22.066,-22.101,-22.432,
--22.839,-22.926,-22.579,-22.093,-21.751,-21.493,-21.089,-20.478,-19.791,-19.147,-18.599,-18.180,-17.866,-17.528,-17.055,-16.503,
--16.009,-15.591,-15.143,-14.614,-14.071,-13.581,-13.130,-12.662,-12.135,-11.527,-10.855,-10.188,-9.598,-9.088,-8.601,-8.103,
--7.607,-7.126,-6.660,-6.217,-5.808,-5.417,-5.023,-4.629,-4.245,-3.850,-3.410,-2.932,-2.454,-1.993,-1.530,-1.051,
--.562,-.073,.398,.833,1.257,1.747,2.352,3.009,3.586,3.993,4.251,4.439,4.640,4.904,5.222,5.524,
-5.741,5.856,5.902,5.914,5.933,6.018,6.204,6.462,6.732,6.982,7.202,7.371,7.485,7.615,7.857,8.199,
-8.494,8.599,8.521,8.385,8.309,8.322,8.404,8.544,8.751,9.041,9.430,9.923,10.496,11.102,11.713,12.358,
-13.079,13.839,14.503,14.967,15.272,15.549,15.871,16.213,16.564,16.982,17.488,17.963,18.233,18.235,18.069,17.896,
-17.821,17.870,18.023,18.248,18.509,18.774,19.019,19.248,19.479,19.694,19.823,19.813,19.721,19.681,19.762,19.902,
-20.004,20.041,20.043,20.027,19.993,19.960,19.951,19.942,19.891,19.793,19.689,19.614,19.564,19.515,19.446,19.349,
-19.238,19.132,19.031,18.913,18.769,18.620,18.492,18.375,18.252,18.125,18.008,17.906,17.821,17.765,17.738,17.711,
-17.663,17.611,17.593,17.611,17.630,17.617,17.583,17.574,17.622,17.704,17.774,17.815,17.846,18.029,17.987,17.906,
-17.750,17.598,17.567,17.636,17.672,17.608,17.509,17.445,17.390,17.295,17.163,17.010,16.842,16.686,16.569,16.457,
-16.309,16.191,16.202,16.246,16.031,15.422,14.673,14.165,13.996,13.955,13.874,13.816,13.904,14.079,14.084,13.680,
-12.876,11.954,11.209,10.631,9.933,8.942,7.900,7.276,7.335,7.959,8.781,9.371,9.406,8.866,8.079,7.418,
-6.951,6.489,5.925,5.335,4.742,4.026,3.158,2.284,1.457,.453,-.914,-2.416,-3.557,-4.139,-4.497,-5.140,
--6.257,-7.648,-9.041,-10.367,-11.697,-12.978,-13.962,-14.471,-14.693,-15.072,-15.859,-16.879,-17.803,-18.528,-19.166,-19.771,
--20.260,-20.604,-20.896,-21.179,-21.363,-21.376,-21.307,-21.296,-21.344,-21.348,-21.271,-21.189,-21.176,-21.206,-21.178,-20.998,
--20.650,-20.220,-19.826,-19.507,-19.200,-18.863,-18.522,-18.149,-17.562,-16.602,-15.372,-14.159,-13.080,-11.950,-10.575,-9.063,
--7.743,-6.826,-6.292,-6.093,-6.355,-7.273,-8.804,-10.516,-11.857,-12.614,-13.051,-13.556,-14.222,-14.894,-15.495,-16.073,
--16.561,-16.806,-16.898,-17.154,-17.584,-17.719,-17.244,-16.535,-16.161,-16.056,-15.736,-15.234,-15.180,-15.807,-16.454,-16.454,
--16.042,-15.960,-16.466,-17.267,-18.210,-19.453,-20.953,-22.334,-23.407,-24.427,-25.613,-26.764,-27.596,-28.212,-28.942,-29.867,
--30.749,-31.405,-31.909,-32.472,-33.281,-34.451,-35.967,-37.611,-39.055,-40.087,-40.715,-41.075,-41.303,-41.491,-41.703,-41.998,
--42.421,-42.948,-43.471,-43.913,-44.387,-45.126,-46.155,-47.124,-47.619,-47.619,-47.513,-47.660,-48.048,-48.408,-48.543,-48.463,
--48.292,-48.158,-48.132,-48.194,-48.244,-48.193,-48.048,-47.875,-47.714,-47.583,-47.542,-47.672,-47.957,-48.270,-48.495,-48.617,
--48.675,-48.694,-48.698,-48.750,-48.896,-49.105,-49.319,-49.538,-49.805,-50.135,-50.522,-51.004,-51.626,-52.322,-52.933,-53.375,
--53.729,-54.119,-54.571,-55.042,-55.520,-56.044,-56.632,-57.253,-57.862,-58.454,-59.070,-59.779,-60.596,-61.435,-62.170,-62.774,
--63.340,-63.955,-64.614,-65.289,-66.003,-66.776,-67.554,-68.273,-68.952,-69.643,-70.335,-70.970,-71.529,-72.038,-72.510,-72.945,
--73.380,-73.864,-74.408,-74.997,-75.619,-76.224,-76.714,-77.062,-77.400,-77.879,-78.492,-79.126,-79.772,-80.532,-81.428,-82.352,
--83.218,-84.055,-84.901,-85.729,-86.531,-87.354,-88.204,-89.009,-89.737,-90.450,-91.195,-91.931,-92.600,-93.152,-93.462,-93.406,
--93.127,-93.019,-93.263,-93.585,-93.737,-94.059,-95.138,-96.897,-98.431,-98.967,-98.685,-98.369,-98.458,-98.781,-99.061,-99.306,
--99.623,-99.964,-100.217,-100.386,-100.556,-100.749,-100.940,-101.150,-101.414,-101.685,-101.843,-101.801,-101.549,-101.151,-100.731,-100.407,
--100.161,-99.815,-99.201,-98.344,-97.431,-96.622,-95.944,-95.340,-94.738,-94.089,-93.404,-92.767,-92.223,-91.670,-90.929,-89.954,
--88.884,-87.865,-86.884,-85.836,-84.683,-83.480,-82.300,-81.200,-80.218,-79.315,-78.325,-77.062,-75.514,-73.864,-72.280,-70.735,
--69.095,-67.368,-65.762,-64.483,-63.521,-62.699,-61.882,-61.036,-60.113,-59.009,-57.697,-56.309,-54.967,-53.589,-51.997,-50.182,
--48.366,-46.755,-45.327,-43.906,-42.377,-40.774,-39.206,-37.720,-36.267,-34.808,-33.417,-32.185,-31.005,-29.615,-28.000,-26.640,
--26.117,-26.467,-27.052,-27.039,-25.886,-23.520,-20.448,-17.740,-16.415,-16.536,-17.057,-16.784,-15.306,-12.886,-9.823,-6.363,
--3.026,-.474,1.066,1.963,2.716,3.568,4.571,5.705,6.829,7.760,8.521,9.322,10.248,11.170,12.037,12.991,
-14.087,15.146,16.045,16.929,17.952,19.007,19.903,20.657,21.402,22.160,22.911,23.765,24.807,25.889,26.813,27.659,
-28.677,29.871,30.973,31.834,32.597,33.399,34.172,34.871,35.675,36.736,37.892,38.854,39.648,40.595,41.818,42.994,
-43.762,44.220,44.798,45.684,46.615,47.289,47.756,48.254,48.878,49.621,50.584,51.825,53.022,53.644,53.550,53.202,
-53.155,53.529,54.029,54.263,53.946,53.121,52.359,52.469,53.727,55.586,57.398,59.141,61.045,62.730,63.357,62.760,
-61.954,62.179,63.624,65.277,65.927,65.214,63.799,62.618,61.958,61.267,59.895,57.859,55.692,53.721,51.897,50.271,
-49.181,48.810,48.911,49.154,49.433,49.668,49.738,49.933,51.122,53.937,57.906,61.789,64.729,66.720,68.077,68.962,
-69.543,70.122,70.794,71.257,71.243,70.988,71.003,71.462,72.083,72.587,73.039,73.659,74.457,75.216,75.763,76.191,
-76.769,77.672,78.748,79.508,79.404,78.277,76.624,75.278,74.698,74.608,74.478,74.243,74.284,74.731,75.153,75.117,
-74.746,74.428,74.189,73.744,73.063,72.479,72.136,71.711,70.916,70.041,69.725,70.232,71.179,71.960,72.298,72.359,
-72.445,72.686,72.998,73.230,73.300,73.230,73.143,73.203,73.460,73.752,73.906,74.068,74.592,75.475,76.145,76.070,
-75.419,74.808,74.494,74.226,73.865,73.664,73.770,73.844,73.532,73.014,72.746,72.780,72.712,72.254,71.564,70.976,
-70.659,70.562,70.468,70.042,69.039,67.576,66.071,64.842,63.873,63.001,62.164,61.400,60.742,60.272,60.154,60.449,
-60.889,61.004,60.553,59.779,59.176,59.053,59.331,59.719,60.001,60.139,60.173,60.121,59.968,59.710,59.374,59.017,
-58.685,58.342,57.878,57.228,56.491,55.834,55.289,54.733,54.085,53.409,52.767,52.091,51.301,50.469,49.735,49.119,
-48.530,47.956,47.495,47.159,46.780,46.196,45.484,44.912,44.650,44.570,44.376,43.907,43.281,42.724,42.318,41.979,
-41.627,41.272,40.922,40.526,40.084,39.711,39.497,39.361,39.137,38.791,38.437,38.154,37.878,37.487,36.946,36.348,
-35.828,35.446,35.131,34.743,34.224,33.660,33.175,32.808,32.517,32.250,31.986,31.717,31.427,31.056,30.502,29.732,
-28.887,28.165,27.597,27.106,26.841,27.182,28.177,29.150,29.232,28.315,27.204,26.739,26.956,27.212,26.938,26.093,
-25.029,24.136,23.609,23.416,23.392,23.365,23.234,22.966,22.594,22.206,21.882,21.626,21.405,21.226,21.101,20.961,
-20.728,20.463,20.319,20.320,20.316,20.172,19.879,19.474,19.030,18.756,18.878,19.264,19.383,18.880,18.071,17.599,
-17.666,17.858,17.754,17.412,17.166,17.160,17.269,17.336,17.308,17.185,16.981,16.749,16.540,16.344,16.122,15.893,
-15.724,15.649,15.651,15.710,15.799,15.848,15.781,15.594,15.339,15.041,14.710,14.428,14.335,14.497,14.836,15.221,
-15.564,15.797,15.831,15.636,15.311,14.997,14.755,14.589,14.533,14.618,14.773,14.870,14.883,14.891,14.927,14.936,
-14.884,14.816,14.760,14.678,14.584,14.587,14.734,14.926,15.050,15.132,15.243,15.349,15.378,15.367,15.404,15.466,
-15.467,15.439,15.504,15.662,15.765,15.727,15.640,15.618,15.639,15.622,15.565,15.533,15.559,15.611,15.632,15.577,
-15.453,15.337,15.312,15.341,15.299,15.124,14.890,14.683,14.501,14.311,14.129,13.992,13.877,13.722,13.503,13.246,
-12.990,12.777,12.628,12.519,12.391,12.225,12.049,11.878,11.690,11.491,11.327,11.214,11.100,10.946,10.784,10.649,
-10.513,10.322,10.075,9.796,9.491,9.168,8.861,8.585,8.301,7.975,7.633,7.308,6.976,6.606,6.221,5.863,
-5.525,5.174,4.823,4.503,4.187,3.821,3.409,3.002,2.629,2.274,1.938,1.641,1.381,1.120,.829,.510,
-.168,-.192,-.549,-.883,-1.204,-1.545,-1.913,-2.297,-2.702,-3.131,-3.548,-3.908,-4.222,-4.559,-4.952,-5.357,
--5.718,-6.025,-6.308,-6.593,-6.891,-7.204,-7.525,-7.841,-8.150,-8.460,-8.773,-9.078,-9.370,-9.656,-9.937,-10.204,
--10.468,-10.757,-11.089,-11.442,-11.785,-12.109,-12.428,-12.735,-12.995,-13.192,-13.366,-13.588,-13.897,-14.262,-14.634,-14.990,
--15.331,-15.662,-15.974,-16.266,-16.541,-16.795,-17.028,-17.259,-17.502,-17.746,-17.965,-18.166,-18.379,-18.619,-18.872,-19.129,
--19.388,-19.639,-19.851,-20.013,-20.146,-20.278,-20.423,-20.584,-20.758,-20.935,-21.101,-21.254,-21.399,-21.525,-21.621,-21.698,
--21.781,-21.877,-21.971,-22.051,-22.110,-22.137,-22.124,-22.105,-22.118,-22.156,-22.177,-22.161,-22.125,-22.071,-21.985,-21.883,
--21.804,-21.745,-21.660,-21.533,-21.400,-21.279,-21.135,-20.957,-20.798,-20.698,-20.615,-20.489,-20.333,-20.200,-20.099,-19.987,
--19.848,-19.704,-19.571,-19.442,-19.313,-19.191,-19.069,-18.939,-18.809,-18.697,-18.597,-18.483,-18.345,-18.195,-18.048,-17.912,
--17.797,-17.700,-17.606,-17.503,-17.398,-17.296,-17.189,-17.062,-16.928,-16.809,-16.708,-16.613,-16.516,-16.412,-16.299,-16.178,
--16.065,-15.968,-15.875,-15.760,-15.610,-15.437,-15.272,-15.133,-15.011,-14.874,-14.711,-14.548,-14.415,-14.297,-14.161,-14.004,
--13.855,-13.730,-13.610,-13.476,-13.330,-13.180,-13.035,-12.914,-12.819,-12.717,-12.574,-12.408,-12.262,-12.143,-12.026,-11.900,
--11.769,-11.623,-11.454,-11.282,-11.123,-10.944,-10.724,-10.505,-10.304,-10.050,-9.725,-9.491,-9.506,-9.617,-9.474,-8.954,
--8.260,-7.540,-6.687,-5.670,-4.800,-4.416,-4.430,-4.470,-4.354,-4.196,-4.089,-3.973,-3.811,-3.659,-3.512,-3.279,
--2.952,-2.627,-2.333,-2.004,-1.635,-1.288,-.926,-.433,.167,.735,1.284,1.980,2.810,3.546,4.132,4.814,
-5.719,6.599,7.230,7.732,8.194,8.303,7.876,7.575,8.489,10.879,13.777,15.952,16.925,17.010,16.945,17.723,
-20.128,23.765,26.781,27.254,24.967,21.480,18.483,16.526,15.355,14.817,14.958,15.575,16.219,16.686,17.161,17.818,
-18.507,18.962,19.150,19.277,19.488,19.694,19.712,19.506,19.210,18.926,18.572,18.002,17.257,16.575,16.130,15.858,
-15.581,15.230,14.871,14.579,14.377,14.245,14.113,13.848,13.350,12.644,11.825,10.931,9.955,8.942,7.981,7.102,
-6.261,5.441,4.683,3.999,3.340,2.673,2.009,1.338,.611,-.170,-.927,-1.609,-2.271,-2.980,-3.708,-4.387,
--5.021,-5.672,-6.325,-6.861,-7.186,-7.362,-7.569,-7.945,-8.466,-9.005,-9.513,-10.101,-10.904,-11.886,-12.856,-13.676,
--14.394,-15.106,-15.802,-16.420,-17.004,-17.680,-18.472,-19.242,-19.815,-20.125,-20.220,-20.229,-20.347,-20.752,-21.457,-22.278,
--23.016,-23.605,-24.034,-24.208,-24.032,-23.612,-23.223,-23.034,-22.985,-22.984,-23.082,-23.357,-23.695,-23.854,-23.720,-23.410,
--23.135,-23.074,-23.324,-23.818,-24.303,-24.536,-24.529,-24.484,-24.488,-24.455,-24.389,-24.475,-24.767,-25.018,-25.006,-24.894,
--25.003,-25.313,-25.447,-25.168,-24.647,-24.184,-23.843,-23.474,-22.980,-22.438,-22.030,-21.876,-21.899,-21.855,-21.601,-21.335,
--21.407,-21.877,-22.396,-22.583,-22.377,-21.945,-21.390,-20.726,-20.013,-19.368,-18.845,-18.423,-18.079,-17.775,-17.405,-16.856,
--16.146,-15.415,-14.792,-14.297,-13.871,-13.434,-12.960,-12.504,-12.138,-11.818,-11.389,-10.775,-10.111,-9.591,-9.240,-8.922,
--8.528,-8.075,-7.614,-7.159,-6.718,-6.310,-5.927,-5.542,-5.155,-4.783,-4.415,-4.018,-3.600,-3.194,-2.796,-2.357,
--1.869,-1.389,-.967,-.599,-.260,.084,.497,1.038,1.680,2.280,2.697,2.911,3.018,3.147,3.371,3.675,
-3.973,4.176,4.266,4.288,4.291,4.296,4.329,4.442,4.674,5.007,5.371,5.691,5.918,6.072,6.242,6.517,
-6.883,7.224,7.436,7.536,7.624,7.770,7.968,8.187,8.427,8.719,9.092,9.543,10.039,10.531,11.007,11.512,
-12.103,12.776,13.433,13.975,14.395,14.775,15.176,15.570,15.900,16.180,16.488,16.858,17.218,17.440,17.465,17.351,
-17.222,17.178,17.258,17.468,17.815,18.293,18.841,19.350,19.748,20.031,20.208,20.242,20.112,19.900,19.758,19.761,
-19.861,19.968,20.043,20.080,20.060,19.986,19.914,19.899,19.917,19.896,19.803,19.680,19.575,19.488,19.392,19.282,
-19.173,19.075,18.978,18.871,18.757,18.647,18.542,18.428,18.302,18.178,18.065,17.954,17.846,17.757,17.705,17.675,
-17.641,17.594,17.548,17.524,17.535,17.589,17.664,17.731,17.794,17.888,18.004,18.079,18.073,18.029,18.142,18.044,
-17.974,17.894,17.828,17.825,17.842,17.777,17.633,17.524,17.488,17.430,17.265,17.038,16.846,16.727,16.661,16.586,
-16.424,16.163,15.939,15.890,15.903,15.661,15.034,14.282,13.754,13.512,13.398,13.336,13.384,13.508,13.507,13.222,
-12.697,12.088,11.490,10.868,10.119,9.185,8.156,7.266,6.759,6.770,7.284,8.116,8.882,9.166,8.866,8.295,
-7.806,7.394,6.829,6.081,5.365,4.774,4.139,3.346,2.525,1.760,.839,-.463,-1.952,-3.142,-3.832,-4.349,
--5.145,-6.309,-7.576,-8.725,-9.825,-11.059,-12.398,-13.548,-14.257,-14.637,-15.074,-15.813,-16.726,-17.541,-18.187,-18.792,
--19.424,-19.999,-20.445,-20.801,-21.089,-21.239,-21.214,-21.128,-21.125,-21.208,-21.262,-21.221,-21.124,-21.041,-21.004,-21.001,
--20.968,-20.819,-20.528,-20.178,-19.847,-19.505,-19.097,-18.670,-18.279,-17.790,-16.974,-15.829,-14.633,-13.558,-12.415,-10.921,
--9.155,-7.547,-6.447,-5.880,-5.760,-6.161,-7.216,-8.801,-10.454,-11.714,-12.514,-13.165,-13.931,-14.742,-15.388,-15.867,
--16.329,-16.762,-17.008,-17.128,-17.400,-17.825,-17.988,-17.667,-17.234,-17.062,-16.865,-16.210,-15.513,-15.732,-16.942,-17.936,
--17.659,-16.508,-15.721,-15.911,-16.791,-18.025,-19.581,-21.275,-22.671,-23.655,-24.614,-25.802,-26.938,-27.708,-28.301,-29.095,
--30.051,-30.804,-31.257,-31.752,-32.653,-34.004,-35.605,-37.212,-38.602,-39.625,-40.283,-40.697,-40.978,-41.182,-41.372,-41.647,
--42.064,-42.599,-43.170,-43.686,-44.117,-44.581,-45.286,-46.268,-47.209,-47.687,-47.622,-47.385,-47.387,-47.683,-48.015,-48.158,
--48.109,-47.990,-47.897,-47.850,-47.826,-47.787,-47.705,-47.581,-47.425,-47.250,-47.107,-47.097,-47.296,-47.655,-48.015,-48.247,
--48.337,-48.346,-48.331,-48.331,-48.385,-48.518,-48.710,-48.924,-49.156,-49.418,-49.723,-50.091,-50.572,-51.189,-51.880,-52.522,
--53.040,-53.452,-53.833,-54.250,-54.739,-55.274,-55.797,-56.294,-56.823,-57.434,-58.080,-58.691,-59.318,-60.084,-60.989,-61.866,
--62.578,-63.166,-63.754,-64.389,-65.046,-65.724,-66.433,-67.148,-67.843,-68.549,-69.290,-70.010,-70.623,-71.122,-71.563,-71.982,
--72.391,-72.832,-73.353,-73.949,-74.574,-75.194,-75.777,-76.262,-76.645,-77.029,-77.524,-78.105,-78.688,-79.297,-80.033,-80.899,
--81.781,-82.622,-83.483,-84.393,-85.275,-86.078,-86.858,-87.680,-88.521,-89.333,-90.108,-90.827,-91.451,-91.989,-92.465,-92.791,
--92.844,-92.722,-92.731,-92.967,-93.168,-93.206,-93.532,-94.717,-96.560,-98.068,-98.502,-98.137,-97.807,-97.934,-98.303,-98.613,
--98.878,-99.222,-99.609,-99.915,-100.128,-100.324,-100.530,-100.735,-100.969,-101.270,-101.581,-101.766,-101.726,-101.468,-101.079,-100.671,
--100.315,-99.969,-99.487,-98.744,-97.781,-96.780,-95.908,-95.205,-94.609,-94.040,-93.466,-92.920,-92.460,-92.059,-91.549,-90.754,
--89.685,-88.543,-87.494,-86.505,-85.443,-84.261,-83.049,-81.928,-80.949,-80.066,-79.135,-77.978,-76.538,-74.970,-73.497,-72.150,
--70.737,-69.110,-67.406,-65.936,-64.863,-64.057,-63.270,-62.378,-61.397,-60.333,-59.136,-57.804,-56.426,-55.064,-53.634,-52.012,
--50.225,-48.462,-46.881,-45.460,-44.062,-42.590,-41.055,-39.509,-37.974,-36.438,-34.939,-33.580,-32.397,-31.214,-29.771,-28.100,
--26.662,-25.955,-26.015,-26.397,-26.539,-25.955,-24.266,-21.501,-18.492,-16.531,-16.246,-16.925,-17.190,-16.217,-14.101,-11.251,
--7.927,-4.400,-1.172,1.247,2.703,3.462,4.002,4.738,5.783,6.901,7.807,8.528,9.331,10.329,11.353,12.270,
-13.172,14.165,15.174,16.106,17.024,18.011,18.993,19.864,20.668,21.497,22.312,23.048,23.801,24.708,25.716,26.667,
-27.569,28.577,29.702,30.750,31.599,32.342,33.101,33.860,34.605,35.452,36.490,37.581,38.509,39.288,40.157,41.209,
-42.213,42.919,43.434,44.105,45.030,45.914,46.486,46.875,47.406,48.191,49.129,50.197,51.411,52.520,53.083,53.019,
-52.798,52.905,53.293,53.547,53.384,52.852,52.233,51.984,52.566,53.996,55.717,57.231,58.726,60.650,62.737,64.012,
-63.990,63.448,63.610,64.734,65.848,65.860,64.675,63.166,62.211,61.894,61.631,60.954,59.964,58.974,58.005,56.915,
-55.883,55.330,55.345,55.550,55.647,55.680,55.626,55.199,54.497,54.442,55.992,58.944,62.006,64.102,65.229,65.998,
-66.810,67.698,68.598,69.417,69.968,70.137,70.087,70.122,70.377,70.788,71.307,71.965,72.701,73.297,73.582,73.636,
-73.746,74.168,74.946,75.861,76.540,76.650,76.136,75.298,74.571,74.157,73.902,73.628,73.470,73.744,74.460,75.191,
-75.532,75.501,75.364,75.215,74.981,74.733,74.649,74.610,74.138,72.952,71.447,70.408,70.273,70.795,71.404,71.751,
-71.882,72.023,72.293,72.628,72.907,73.092,73.270,73.568,74.029,74.523,74.839,74.952,75.173,75.856,76.885,77.636,
-77.600,76.922,76.143,75.550,75.049,74.591,74.347,74.360,74.350,74.073,73.687,73.511,73.556,73.515,73.143,72.500,
-71.857,71.498,71.563,71.888,72.022,71.575,70.558,69.286,68.003,66.739,65.510,64.399,63.378,62.269,61.076,60.240,
-60.303,61.259,62.355,62.684,61.975,60.782,59.927,59.802,60.181,60.595,60.763,60.706,60.573,60.436,60.246,59.927,
-59.502,59.092,58.752,58.350,57.721,56.911,56.167,55.623,55.137,54.514,53.762,53.010,52.279,51.489,50.647,49.867,
-49.206,48.633,48.168,47.896,47.762,47.501,46.901,46.093,45.448,45.168,45.085,44.864,44.367,43.735,43.168,42.703,
-42.262,41.812,41.403,41.051,40.698,40.310,39.946,39.664,39.424,39.154,38.856,38.580,38.328,38.049,37.705,37.298,
-36.839,36.339,35.830,35.346,34.877,34.388,33.873,33.379,32.980,32.708,32.509,32.285,32.007,31.737,31.464,30.998,
-30.197,29.255,28.529,28.043,27.466,26.729,26.368,26.892,27.974,28.673,28.492,27.862,27.471,27.446,27.366,26.874,
-26.015,25.070,24.287,23.774,23.507,23.374,23.271,23.143,22.952,22.671,22.341,22.056,21.853,21.680,21.494,21.305,
-21.106,20.848,20.561,20.365,20.301,20.249,20.080,19.802,19.481,19.150,18.891,18.853,19.022,19.111,18.892,18.576,
-18.595,18.992,19.283,19.018,18.294,17.591,17.246,17.232,17.347,17.421,17.373,17.196,16.959,16.731,16.516,16.281,
-16.035,15.830,15.697,15.633,15.643,15.719,15.806,15.832,15.788,15.709,15.587,15.379,15.116,14.920,14.887,14.994,
-15.164,15.354,15.524,15.593,15.507,15.315,15.113,14.938,14.790,14.707,14.730,14.810,14.850,14.844,14.869,14.946,
-14.995,14.961,14.878,14.777,14.638,14.491,14.445,14.551,14.723,14.872,15.015,15.191,15.340,15.411,15.469,15.587,
-15.683,15.630,15.482,15.429,15.531,15.652,15.678,15.636,15.586,15.512,15.414,15.367,15.416,15.489,15.492,15.422,
-15.333,15.252,15.196,15.194,15.225,15.202,15.062,14.847,14.629,14.432,14.257,14.128,14.049,13.954,13.776,13.526,
-13.264,13.016,12.783,12.587,12.449,12.341,12.212,12.053,11.881,11.701,11.508,11.316,11.133,10.949,10.757,10.579,
-10.424,10.261,10.065,9.842,9.602,9.326,9.014,8.712,8.450,8.198,7.913,7.603,7.293,6.966,6.601,6.230,
-5.900,5.596,5.282,4.970,4.696,4.434,4.114,3.717,3.297,2.898,2.518,2.154,1.823,1.525,1.223,.891,
-.539,.189,-.151,-.477,-.792,-1.116,-1.471,-1.856,-2.255,-2.668,-3.093,-3.488,-3.806,-4.078,-4.388,-4.781,
--5.209,-5.605,-5.952,-6.262,-6.541,-6.789,-7.027,-7.286,-7.574,-7.888,-8.226,-8.579,-8.917,-9.215,-9.480,-9.736,
--10.006,-10.300,-10.628,-10.984,-11.341,-11.676,-11.993,-12.298,-12.571,-12.781,-12.939,-13.111,-13.358,-13.686,-14.056,-14.430,
--14.789,-15.127,-15.441,-15.738,-16.027,-16.300,-16.541,-16.760,-16.987,-17.235,-17.478,-17.692,-17.892,-18.107,-18.336,-18.559,
--18.779,-19.017,-19.266,-19.489,-19.663,-19.802,-19.936,-20.081,-20.242,-20.414,-20.588,-20.749,-20.894,-21.023,-21.132,-21.219,
--21.300,-21.396,-21.511,-21.633,-21.746,-21.824,-21.847,-21.824,-21.803,-21.820,-21.851,-21.850,-21.816,-21.776,-21.723,-21.631,
--21.515,-21.425,-21.367,-21.295,-21.182,-21.056,-20.937,-20.804,-20.649,-20.510,-20.408,-20.306,-20.167,-20.014,-19.898,-19.814,
--19.718,-19.590,-19.448,-19.306,-19.164,-19.026,-18.898,-18.774,-18.648,-18.532,-18.437,-18.350,-18.249,-18.130,-18.008,-17.885,
--17.752,-17.617,-17.496,-17.393,-17.293,-17.188,-17.085,-16.987,-16.884,-16.772,-16.663,-16.573,-16.498,-16.411,-16.294,-16.160,
--16.041,-15.947,-15.861,-15.767,-15.658,-15.532,-15.381,-15.222,-15.090,-14.990,-14.876,-14.719,-14.547,-14.404,-14.280,-14.145,
--14.005,-13.894,-13.801,-13.687,-13.548,-13.414,-13.293,-13.170,-13.049,-12.949,-12.849,-12.718,-12.567,-12.438,-12.327,-12.193,
--12.031,-11.882,-11.754,-11.614,-11.454,-11.293,-11.121,-10.911,-10.684,-10.471,-10.232,-9.925,-9.638,-9.515,-9.546,-9.565,
--9.476,-9.288,-8.920,-8.196,-7.184,-6.314,-5.948,-5.950,-5.895,-5.599,-5.230,-4.964,-4.777,-4.590,-4.390,-4.153,
--3.824,-3.413,-3.007,-2.632,-2.244,-1.839,-1.455,-1.049,-.543,.025,.557,1.100,1.797,2.603,3.299,3.852,
-4.499,5.352,6.188,6.789,7.230,7.574,7.614,7.321,7.384,8.747,11.530,14.764,17.280,18.553,18.730,18.407,
-18.614,20.380,23.604,26.531,27.034,24.614,20.814,17.607,15.779,14.971,14.715,14.886,15.366,15.874,16.306,16.881,
-17.745,18.629,19.129,19.214,19.230,19.418,19.623,19.571,19.270,18.963,18.759,18.481,17.939,17.219,16.588,16.168,
-15.846,15.484,15.100,14.793,14.606,14.514,14.478,14.425,14.226,13.788,13.135,12.346,11.452,10.456,9.419,8.440,
-7.545,6.685,5.850,5.098,4.467,3.915,3.364,2.746,2.012,1.160,.279,-.512,-1.197,-1.888,-2.659,-3.450,
--4.155,-4.784,-5.425,-6.093,-6.677,-7.066,-7.294,-7.524,-7.895,-8.408,-8.957,-9.494,-10.111,-10.925,-11.908,-12.889,
--13.741,-14.473,-15.129,-15.689,-16.156,-16.656,-17.334,-18.159,-18.905,-19.351,-19.454,-19.349,-19.281,-19.516,-20.205,-21.229,
--22.268,-23.065,-23.581,-23.858,-23.844,-23.496,-22.993,-22.647,-22.580,-22.636,-22.677,-22.806,-23.166,-23.628,-23.875,-23.764,
--23.458,-23.213,-23.164,-23.336,-23.676,-24.036,-24.250,-24.295,-24.275,-24.215,-24.042,-23.837,-23.882,-24.287,-24.741,-24.874,
--24.768,-24.821,-25.146,-25.399,-25.270,-24.892,-24.615,-24.537,-24.429,-24.034,-23.333,-22.548,-21.963,-21.688,-21.545,-21.259,
--20.823,-20.562,-20.758,-21.290,-21.749,-21.827,-21.494,-20.878,-20.125,-19.384,-18.788,-18.373,-18.073,-17.799,-17.498,-17.119,
--16.597,-15.894,-15.058,-14.235,-13.586,-13.154,-12.814,-12.418,-11.987,-11.672,-11.499,-11.281,-10.866,-10.357,-9.968,-9.736,
--9.507,-9.171,-8.769,-8.365,-7.957,-7.527,-7.105,-6.719,-6.366,-6.044,-5.754,-5.466,-5.138,-4.786,-4.451,-4.105,
--3.669,-3.147,-2.658,-2.299,-2.039,-1.788,-1.502,-1.168,-.752,-.250,.253,.642,.881,1.040,1.226,1.500,
-1.855,2.218,2.498,2.663,2.768,2.889,3.046,3.229,3.457,3.781,4.210,4.676,5.073,5.339,5.498,5.640,
-5.852,6.141,6.451,6.744,7.043,7.379,7.736,8.065,8.355,8.642,8.967,9.348,9.777,10.215,10.623,11.010,
-11.446,11.974,12.527,12.977,13.292,13.583,13.976,14.464,14.929,15.280,15.530,15.745,15.974,16.218,16.439,16.598,
-16.689,16.754,16.847,17.001,17.246,17.634,18.202,18.883,19.515,19.970,20.234,20.352,20.349,20.238,20.080,19.959,
-19.910,19.908,19.935,19.990,20.042,20.031,19.939,19.828,19.773,19.767,19.741,19.659,19.553,19.467,19.400,19.320,
-19.215,19.105,18.998,18.876,18.733,18.595,18.486,18.385,18.253,18.104,17.992,17.929,17.876,17.803,17.734,17.691,
-17.655,17.611,17.572,17.552,17.536,17.535,17.600,17.743,17.904,18.027,18.133,18.246,18.307,18.259,18.142,18.187,
-18.067,18.042,18.076,18.123,18.158,18.123,17.966,17.741,17.567,17.462,17.322,17.090,16.840,16.674,16.601,16.565,
-16.483,16.267,15.905,15.538,15.338,15.254,15.035,14.550,13.959,13.481,13.153,12.921,12.825,12.880,12.885,12.575,
-11.978,11.421,11.127,10.924,10.436,9.493,8.296,7.214,6.490,6.132,6.066,6.305,6.873,7.593,8.111,8.233,
-8.104,7.933,7.647,7.039,6.172,5.367,4.783,4.239,3.556,2.805,2.078,1.206,-.021,-1.452,-2.665,-3.485,
--4.183,-5.111,-6.283,-7.444,-8.444,-9.392,-10.458,-11.630,-12.719,-13.567,-14.227,-14.900,-15.712,-16.578,-17.327,-17.908,
--18.425,-18.981,-19.571,-20.128,-20.587,-20.884,-20.970,-20.907,-20.855,-20.923,-21.044,-21.084,-21.012,-20.904,-20.824,-20.785,
--20.791,-20.815,-20.755,-20.531,-20.196,-19.857,-19.502,-19.051,-18.551,-18.142,-17.781,-17.217,-16.338,-15.332,-14.346,-13.153,
--11.433,-9.340,-7.502,-6.432,-6.123,-6.302,-6.846,-7.791,-9.043,-10.309,-11.366,-12.280,-13.268,-14.359,-15.314,-15.918,
--16.266,-16.609,-16.990,-17.254,-17.402,-17.647,-18.007,-18.168,-17.955,-17.637,-17.430,-17.036,-16.236,-15.687,-16.340,-17.956,
--18.966,-18.260,-16.542,-15.428,-15.655,-16.777,-18.234,-19.892,-21.580,-22.913,-23.827,-24.743,-25.919,-27.057,-27.840,-28.454,
--29.225,-30.045,-30.588,-30.950,-31.655,-33.037,-34.890,-36.749,-38.274,-39.344,-40.006,-40.419,-40.733,-40.972,-41.105,-41.226,
--41.529,-42.091,-42.788,-43.440,-43.961,-44.375,-44.794,-45.376,-46.170,-46.963,-47.410,-47.404,-47.214,-47.191,-47.403,-47.650,
--47.761,-47.755,-47.726,-47.692,-47.607,-47.465,-47.318,-47.212,-47.130,-47.013,-46.844,-46.698,-46.704,-46.930,-47.305,-47.676,
--47.927,-48.051,-48.103,-48.130,-48.149,-48.171,-48.226,-48.349,-48.561,-48.847,-49.163,-49.483,-49.840,-50.294,-50.857,-51.473,
--52.076,-52.622,-53.091,-53.495,-53.905,-54.404,-54.970,-55.479,-55.881,-56.302,-56.889,-57.602,-58.284,-58.909,-59.623,-60.509,
--61.439,-62.243,-62.911,-63.545,-64.198,-64.844,-65.471,-66.100,-66.749,-67.428,-68.154,-68.901,-69.577,-70.114,-70.557,-70.997,
--71.449,-71.887,-72.331,-72.846,-73.447,-74.083,-74.701,-75.269,-75.763,-76.199,-76.652,-77.178,-77.734,-78.271,-78.843,-79.547,
--80.366,-81.205,-82.053,-82.975,-83.949,-84.850,-85.625,-86.372,-87.191,-88.056,-88.885,-89.633,-90.280,-90.819,-91.294,-91.743,
--92.089,-92.220,-92.219,-92.322,-92.562,-92.703,-92.724,-93.126,-94.399,-96.226,-97.614,-97.932,-97.543,-97.262,-97.446,-97.862,
--98.232,-98.568,-98.970,-99.381,-99.687,-99.897,-100.091,-100.293,-100.487,-100.712,-101.013,-101.329,-101.506,-101.447,-101.189,-100.838,
--100.463,-100.062,-99.578,-98.934,-98.091,-97.095,-96.070,-95.146,-94.391,-93.797,-93.307,-92.861,-92.443,-92.063,-91.679,-91.150,
--90.350,-89.315,-88.232,-87.230,-86.256,-85.175,-83.973,-82.775,-81.712,-80.796,-79.893,-78.793,-77.355,-75.686,-74.114,-72.882,
--71.864,-70.682,-69.161,-67.556,-66.260,-65.372,-64.635,-63.766,-62.707,-61.559,-60.375,-59.127,-57.809,-56.470,-55.123,-53.688,
--52.076,-50.323,-48.591,-47.030,-45.652,-44.334,-42.945,-41.450,-39.893,-38.316,-36.732,-35.185,-33.781,-32.553,-31.337,-29.910,
--28.318,-26.948,-26.162,-25.939,-25.975,-25.995,-25.727,-24.709,-22.576,-19.718,-17.326,-16.390,-16.716,-17.163,-16.750,-15.277,
--12.949,-9.873,-6.148,-2.236,1.088,3.234,4.197,4.526,4.910,5.705,6.770,7.769,8.599,9.440,10.445,11.527,
-12.528,13.432,14.313,15.200,16.091,17.022,18.001,18.952,19.816,20.648,21.520,22.386,23.167,23.909,24.728,25.635,
-26.544,27.445,28.422,29.494,30.535,31.421,32.159,32.836,33.521,34.264,35.119,36.096,37.108,38.053,38.939,39.870,
-40.869,41.785,42.466,42.993,43.625,44.457,45.269,45.824,46.214,46.748,47.554,48.508,49.515,50.569,51.520,52.072,
-52.205,52.322,52.742,53.224,53.252,52.689,51.910,51.416,51.572,52.571,54.276,56.140,57.677,59.052,60.821,62.965,
-64.631,65.110,64.764,64.571,64.879,65.042,64.333,62.906,61.655,61.251,61.530,61.825,61.735,61.411,61.124,60.847,
-60.437,60.048,60.018,60.368,60.759,60.982,61.114,61.081,60.516,59.438,58.701,59.211,60.778,62.247,62.823,62.846,
-63.145,64.041,65.239,66.394,67.408,68.282,68.974,69.441,69.691,69.788,69.884,70.177,70.732,71.367,71.818,72.007,
-72.066,72.148,72.294,72.454,72.564,72.587,72.559,72.592,72.764,72.999,73.108,72.986,72.756,72.696,73.005,73.635,
-74.325,74.813,75.011,75.006,74.941,74.960,75.181,75.586,75.880,75.602,74.522,72.937,71.501,70.722,70.629,70.878,
-71.118,71.234,71.317,71.485,71.777,72.185,72.725,73.433,74.281,75.106,75.669,75.844,75.804,75.945,76.533,77.384,
-78.009,78.098,77.775,77.331,76.878,76.392,75.965,75.760,75.745,75.697,75.507,75.309,75.225,75.165,74.953,74.535,
-73.963,73.321,72.768,72.516,72.602,72.765,72.683,72.267,71.600,70.694,69.523,68.254,67.157,66.214,65.035,63.409,
-61.822,61.166,61.823,63.129,63.897,63.468,62.215,61.061,60.606,60.763,61.078,61.217,61.138,60.971,60.826,60.694,
-60.465,60.071,59.595,59.165,58.744,58.148,57.332,56.510,55.890,55.402,54.818,54.059,53.245,52.462,51.681,50.885,
-50.144,49.511,48.986,48.607,48.436,48.371,48.120,47.489,46.655,46.002,45.703,45.557,45.266,44.752,44.157,43.602,
-43.073,42.535,42.042,41.663,41.363,41.033,40.640,40.262,39.960,39.707,39.446,39.168,38.876,38.554,38.206,37.884,
-37.615,37.321,36.899,36.338,35.732,35.176,34.678,34.193,33.703,33.270,32.976,32.806,32.637,32.395,32.144,31.911,
-31.500,30.714,29.733,28.987,28.578,28.103,27.296,26.559,26.513,27.158,27.852,28.106,28.024,27.884,27.661,27.159,
-26.388,25.564,24.859,24.326,23.989,23.829,23.736,23.589,23.368,23.110,22.826,22.534,22.298,22.132,21.952,21.689,
-21.395,21.133,20.874,20.578,20.305,20.132,20.013,19.857,19.660,19.470,19.270,19.042,18.876,18.849,18.871,18.820,
-18.822,19.132,19.690,20.014,19.686,18.821,17.925,17.391,17.256,17.346,17.469,17.482,17.329,17.063,16.780,16.511,
-16.235,15.977,15.817,15.784,15.816,15.847,15.862,15.874,15.892,15.946,16.059,16.172,16.145,15.909,15.563,15.275,
-15.133,15.115,15.174,15.272,15.349,15.351,15.288,15.208,15.127,15.027,14.928,14.879,14.881,14.896,14.918,14.978,
-15.059,15.085,15.027,14.932,14.834,14.700,14.528,14.404,14.406,14.512,14.665,14.857,15.076,15.254,15.358,15.454,
-15.593,15.690,15.639,15.499,15.429,15.478,15.546,15.554,15.511,15.417,15.257,15.105,15.100,15.242,15.353,15.301,
-15.158,15.068,15.059,15.063,15.055,15.050,15.029,14.944,14.792,14.602,14.398,14.216,14.101,14.045,13.960,13.778,
-13.532,13.292,13.061,12.813,12.579,12.418,12.316,12.201,12.042,11.876,11.722,11.552,11.338,11.092,10.846,10.621,
-10.421,10.232,10.031,9.820,9.614,9.407,9.159,8.859,8.553,8.291,8.055,7.804,7.528,7.234,6.912,6.557,
-6.213,5.923,5.663,5.388,5.108,4.864,4.634,4.340,3.953,3.522,3.099,2.692,2.303,1.949,1.630,1.308,
-.952,.578,.216,-.119,-.438,-.757,-1.102,-1.489,-1.905,-2.325,-2.742,-3.149,-3.516,-3.811,-4.067,-4.362,
--4.731,-5.132,-5.514,-5.871,-6.204,-6.489,-6.705,-6.878,-7.062,-7.293,-7.580,-7.921,-8.299,-8.668,-8.991,-9.269,
--9.534,-9.815,-10.125,-10.466,-10.819,-11.160,-11.480,-11.796,-12.113,-12.394,-12.605,-12.774,-12.975,-13.252,-13.579,-13.917,
--14.253,-14.585,-14.893,-15.170,-15.441,-15.732,-16.026,-16.286,-16.513,-16.748,-17.005,-17.257,-17.479,-17.684,-17.893,-18.101,
--18.292,-18.477,-18.680,-18.902,-19.119,-19.314,-19.486,-19.646,-19.804,-19.972,-20.147,-20.311,-20.446,-20.560,-20.664,-20.761,
--20.845,-20.927,-21.025,-21.144,-21.277,-21.407,-21.507,-21.548,-21.539,-21.527,-21.540,-21.551,-21.523,-21.470,-21.426,-21.384,
--21.307,-21.198,-21.100,-21.031,-20.958,-20.852,-20.728,-20.602,-20.468,-20.325,-20.194,-20.083,-19.966,-19.828,-19.693,-19.586,
--19.496,-19.396,-19.283,-19.165,-19.043,-18.911,-18.775,-18.642,-18.508,-18.374,-18.256,-18.160,-18.069,-17.968,-17.864,-17.771,
--17.677,-17.557,-17.416,-17.287,-17.184,-17.086,-16.974,-16.860,-16.766,-16.690,-16.605,-16.506,-16.419,-16.359,-16.294,-16.184,
--16.044,-15.925,-15.840,-15.753,-15.641,-15.526,-15.424,-15.308,-15.163,-15.025,-14.919,-14.817,-14.681,-14.530,-14.399,-14.280,
--14.147,-14.021,-13.937,-13.864,-13.748,-13.599,-13.474,-13.385,-13.287,-13.165,-13.043,-12.927,-12.796,-12.663,-12.562,-12.470,
--12.333,-12.157,-12.009,-11.903,-11.785,-11.625,-11.454,-11.285,-11.083,-10.849,-10.623,-10.403,-10.143,-9.858,-9.641,-9.532,
--9.488,-9.483,-9.509,-9.431,-9.031,-8.323,-7.658,-7.342,-7.267,-7.078,-6.648,-6.163,-5.804,-5.541,-5.269,-4.960,
--4.619,-4.220,-3.766,-3.310,-2.888,-2.475,-2.054,-1.625,-1.162,-.640,-.097,.413,.940,1.578,2.290,2.936,
-3.506,4.137,4.875,5.579,6.143,6.603,6.910,6.880,6.640,6.932,8.561,11.511,14.852,17.558,19.152,19.651,
-19.418,19.335,20.581,23.506,26.722,27.913,25.918,21.820,17.839,15.404,14.470,14.342,14.573,15.018,15.557,16.111,
-16.782,17.653,18.520,19.045,19.186,19.234,19.391,19.515,19.388,19.078,18.834,18.700,18.452,17.944,17.313,16.783,
-16.385,15.995,15.578,15.230,15.016,14.890,14.800,14.746,14.692,14.507,14.082,13.438,12.663,11.791,10.828,9.832,
-8.889,8.015,7.164,6.344,5.640,5.100,4.650,4.148,3.479,2.613,1.617,.635,-.208,-.925,-1.642,-2.427,
--3.211,-3.900,-4.520,-5.178,-5.893,-6.547,-7.018,-7.327,-7.619,-8.022,-8.540,-9.090,-9.633,-10.239,-11.000,-11.908,
--12.857,-13.743,-14.518,-15.136,-15.562,-15.863,-16.239,-16.849,-17.612,-18.241,-18.488,-18.347,-18.066,-18.011,-18.477,-19.499,
--20.798,-21.967,-22.763,-23.199,-23.355,-23.216,-22.798,-22.318,-22.076,-22.128,-22.255,-22.305,-22.405,-22.736,-23.187,-23.448,
--23.392,-23.202,-23.111,-23.172,-23.341,-23.593,-23.878,-24.092,-24.185,-24.217,-24.202,-24.072,-23.886,-23.912,-24.292,-24.747,
--24.882,-24.724,-24.682,-24.946,-25.233,-25.241,-25.098,-25.147,-25.449,-25.687,-25.514,-24.832,-23.811,-22.777,-22.034,-21.637,
--21.337,-20.883,-20.344,-20.025,-20.074,-20.301,-20.403,-20.231,-19.800,-19.184,-18.490,-17.867,-17.433,-17.178,-16.989,-16.785,
--16.570,-16.337,-15.970,-15.313,-14.391,-13.483,-12.883,-12.595,-12.377,-12.075,-11.783,-11.621,-11.511,-11.300,-10.989,-10.697,
--10.447,-10.143,-9.751,-9.354,-9.007,-8.664,-8.271,-7.859,-7.483,-7.166,-6.914,-6.717,-6.514,-6.240,-5.914,-5.601,
--5.287,-4.871,-4.343,-3.850,-3.522,-3.320,-3.114,-2.851,-2.570,-2.282,-1.955,-1.589,-1.232,-.912,-.613,-.300,
-.056,.472,.920,1.327,1.638,1.891,2.178,2.538,2.940,3.350,3.780,4.247,4.719,5.119,5.391,5.545,
-5.653,5.791,5.993,6.255,6.586,6.998,7.454,7.862,8.158,8.377,8.600,8.875,9.203,9.580,9.986,10.388,
-10.789,11.255,11.821,12.380,12.773,12.983,13.168,13.474,13.874,14.250,14.538,14.756,14.935,15.100,15.301,15.581,
-15.918,16.257,16.570,16.863,17.140,17.417,17.762,18.243,18.826,19.369,19.749,19.953,20.039,20.067,20.078,20.096,
-20.108,20.075,19.993,19.922,19.915,19.947,19.940,19.863,19.760,19.683,19.633,19.574,19.487,19.396,19.332,19.294,
-19.247,19.165,19.056,18.932,18.782,18.604,18.439,18.322,18.218,18.070,17.900,17.788,17.760,17.751,17.716,17.676,
-17.652,17.617,17.565,17.543,17.571,17.601,17.619,17.699,17.888,18.103,18.239,18.307,18.372,18.410,18.341,18.187,
-18.196,18.093,18.129,18.253,18.361,18.383,18.287,18.075,17.811,17.580,17.385,17.163,16.908,16.687,16.534,16.413,
-16.287,16.143,15.920,15.553,15.101,14.727,14.490,14.276,13.967,13.583,13.185,12.790,12.455,12.283,12.225,11.989,
-11.371,10.608,10.195,10.296,10.487,10.167,9.134,7.739,6.526,5.793,5.469,5.341,5.356,5.625,6.177,6.813,
-7.300,7.582,7.691,7.533,6.980,6.147,5.374,4.843,4.401,3.834,3.144,2.410,1.539,.388,-.944,-2.156,
--3.124,-4.034,-5.092,-6.244,-7.303,-8.221,-9.113,-10.057,-11.015,-11.928,-12.801,-13.670,-14.556,-15.456,-16.332,-17.095,
--17.660,-18.053,-18.421,-18.909,-19.525,-20.121,-20.507,-20.618,-20.584,-20.609,-20.750,-20.870,-20.833,-20.692,-20.595,-20.583,
--20.582,-20.558,-20.534,-20.472,-20.283,-19.974,-19.644,-19.295,-18.837,-18.302,-17.871,-17.574,-17.178,-16.512,-15.709,-14.869,
--13.702,-11.847,-9.535,-7.581,-6.610,-6.549,-6.949,-7.554,-8.357,-9.303,-10.239,-11.138,-12.163,-13.418,-14.725,-15.737,
--16.292,-16.569,-16.865,-17.240,-17.536,-17.703,-17.911,-18.223,-18.401,-18.230,-17.836,-17.419,-16.910,-16.327,-16.254,-17.284,
--18.877,-19.508,-18.378,-16.466,-15.433,-15.852,-17.079,-18.487,-20.029,-21.668,-23.053,-24.036,-24.951,-26.081,-27.234,-28.117,
--28.786,-29.406,-29.897,-30.192,-30.646,-31.786,-33.672,-35.809,-37.644,-38.955,-39.773,-40.233,-40.519,-40.764,-40.946,-41.005,
--41.072,-41.411,-42.107,-42.956,-43.700,-44.250,-44.657,-45.002,-45.387,-45.893,-46.446,-46.829,-46.922,-46.864,-46.883,-47.029,
--47.171,-47.231,-47.273,-47.359,-47.423,-47.353,-47.151,-46.938,-46.812,-46.743,-46.632,-46.455,-46.313,-46.343,-46.587,-46.953,
--47.305,-47.566,-47.747,-47.885,-47.989,-48.028,-47.988,-47.926,-47.961,-48.172,-48.517,-48.877,-49.195,-49.533,-49.984,-50.542,
--51.123,-51.677,-52.202,-52.689,-53.113,-53.517,-53.999,-54.566,-55.086,-55.470,-55.833,-56.373,-57.113,-57.890,-58.595,-59.303,
--60.110,-60.977,-61.791,-62.522,-63.215,-63.892,-64.537,-65.149,-65.759,-66.397,-67.077,-67.797,-68.505,-69.109,-69.588,-70.027,
--70.516,-71.034,-71.502,-71.923,-72.385,-72.941,-73.562,-74.181,-74.757,-75.277,-75.768,-76.277,-76.814,-77.334,-77.826,-78.375,
--79.058,-79.844,-80.665,-81.536,-82.503,-83.496,-84.377,-85.131,-85.890,-86.735,-87.594,-88.357,-89.003,-89.573,-90.111,-90.651,
--91.174,-91.560,-91.712,-91.739,-91.856,-92.072,-92.202,-92.305,-92.862,-94.211,-95.930,-97.118,-97.331,-96.998,-96.833,-97.087,
--97.538,-97.972,-98.401,-98.857,-99.249,-99.494,-99.646,-99.796,-99.953,-100.095,-100.271,-100.541,-100.841,-101.005,-100.935,-100.687,
--100.371,-100.009,-99.534,-98.889,-98.091,-97.198,-96.259,-95.308,-94.397,-93.605,-92.992,-92.541,-92.159,-91.763,-91.336,-90.885,
--90.359,-89.679,-88.850,-87.970,-87.100,-86.169,-85.080,-83.869,-82.682,-81.627,-80.664,-79.630,-78.327,-76.683,-74.895,-73.363,
--72.327,-71.557,-70.571,-69.180,-67.706,-66.567,-65.776,-64.988,-63.940,-62.689,-61.421,-60.204,-58.985,-57.730,-56.454,-55.144,
--53.731,-52.157,-50.447,-48.729,-47.166,-45.825,-44.606,-43.322,-41.872,-40.305,-38.714,-37.128,-35.570,-34.117,-32.816,-31.547,
--30.139,-28.646,-27.388,-26.604,-26.179,-25.845,-25.516,-25.205,-24.639,-23.315,-21.151,-18.853,-17.362,-16.946,-17.027,-16.832,
--15.937,-14.185,-11.431,-7.679,-3.401,.521,3.301,4.710,5.147,5.313,5.770,6.637,7.677,8.645,9.544,10.528,
-11.646,12.773,13.757,14.560,15.268,16.011,16.882,17.862,18.841,19.732,20.560,21.407,22.295,23.176,24.014,24.830,
-25.654,26.496,27.363,28.288,29.281,30.288,31.205,31.961,32.590,33.211,33.926,34.744,35.619,36.525,37.463,38.422,
-39.378,40.313,41.174,41.877,42.422,42.967,43.669,44.464,45.144,45.653,46.161,46.811,47.592,48.473,49.463,50.433,
-51.129,51.529,51.982,52.708,53.354,53.344,52.610,51.687,51.171,51.387,52.493,54.468,56.867,59.014,60.663,62.173,
-63.793,65.104,65.508,65.080,64.492,64.123,63.636,62.598,61.228,60.274,60.232,60.850,61.451,61.610,61.439,61.257,
-61.181,61.153,61.234,61.594,62.223,62.884,63.413,63.806,63.931,63.493,62.543,61.711,61.523,61.644,61.258,60.212,
-59.343,59.532,60.772,62.363,63.761,64.936,66.071,67.194,68.127,68.667,68.789,68.742,68.866,69.277,69.792,70.214,
-70.554,70.886,71.120,71.070,70.688,70.118,69.591,69.377,69.716,70.580,71.547,72.106,72.121,71.890,71.755,71.832,
-72.104,72.555,73.093,73.502,73.647,73.663,73.835,74.288,74.879,75.329,75.364,74.809,73.707,72.416,71.450,71.098,
-71.214,71.403,71.402,71.247,71.138,71.245,71.661,72.421,73.477,74.651,75.665,76.283,76.485,76.509,76.668,77.078,
-77.568,77.916,78.098,78.227,78.306,78.199,77.902,77.650,77.637,77.757,77.781,77.683,77.597,77.517,77.266,76.784,
-76.228,75.715,75.162,74.484,73.807,73.330,73.097,73.018,72.988,72.845,72.322,71.302,70.092,69.181,68.624,67.880,
-66.444,64.576,63.165,62.829,63.264,63.582,63.216,62.372,61.641,61.343,61.365,61.459,61.503,61.474,61.366,61.217,
-61.083,60.930,60.626,60.134,59.583,59.065,58.487,57.730,56.886,56.161,55.594,55.026,54.337,53.569,52.799,52.029,
-51.263,50.560,49.978,49.524,49.217,49.066,48.944,48.600,47.911,47.084,46.458,46.138,45.912,45.548,45.038,44.507,
-43.996,43.447,42.880,42.423,42.132,41.878,41.504,41.034,40.630,40.371,40.172,39.921,39.597,39.239,38.864,38.502,
-38.205,37.980,37.732,37.350,36.821,36.226,35.657,35.145,34.663,34.164,33.664,33.264,33.037,32.919,32.777,32.572,
-32.314,31.892,31.165,30.257,29.532,29.132,28.749,28.073,27.277,26.817,26.851,27.154,27.506,27.846,28.030,27.791,
-27.087,26.227,25.515,24.970,24.518,24.232,24.184,24.219,24.097,23.778,23.401,23.066,22.785,22.568,22.407,22.204,
-21.880,21.503,21.189,20.923,20.611,20.267,19.996,19.829,19.700,19.582,19.499,19.416,19.261,19.061,18.908,18.810,
-18.717,18.709,18.938,19.321,19.481,19.140,18.447,17.804,17.454,17.370,17.425,17.505,17.491,17.307,17.016,16.744,
-16.513,16.238,15.927,15.735,15.771,15.954,16.113,16.169,16.149,16.112,16.123,16.240,16.419,16.488,16.292,15.886,
-15.494,15.282,15.238,15.263,15.298,15.324,15.321,15.280,15.229,15.189,15.144,15.085,15.030,15.006,15.012,15.041,
-15.090,15.129,15.114,15.041,14.959,14.890,14.786,14.609,14.418,14.317,14.350,14.488,14.688,14.899,15.064,15.170,
-15.265,15.376,15.450,15.437,15.386,15.377,15.405,15.410,15.380,15.329,15.216,15.016,14.840,14.851,15.021,15.129,
-15.044,14.885,14.826,14.869,14.900,14.872,14.834,14.812,14.778,14.702,14.575,14.403,14.222,14.094,14.027,13.942,
-13.767,13.532,13.297,13.063,12.807,12.565,12.402,12.298,12.172,11.999,11.827,11.682,11.519,11.293,11.025,10.761,
-10.521,10.296,10.077,9.862,9.654,9.455,9.245,8.992,8.693,8.392,8.132,7.902,7.663,7.398,7.114,6.807,
-6.482,6.174,5.911,5.667,5.399,5.120,4.869,4.631,4.342,3.977,3.570,3.161,2.755,2.360,2.005,1.693,
-1.383,1.034,.653,.275,-.081,-.423,-.771,-1.150,-1.569,-2.011,-2.442,-2.847,-3.225,-3.564,-3.854,-4.123,
--4.417,-4.746,-5.080,-5.403,-5.737,-6.083,-6.395,-6.626,-6.785,-6.922,-7.089,-7.319,-7.629,-8.001,-8.382,-8.727,
--9.032,-9.325,-9.622,-9.930,-10.253,-10.584,-10.896,-11.189,-11.490,-11.816,-12.125,-12.378,-12.599,-12.857,-13.170,-13.493,
--13.792,-14.079,-14.366,-14.632,-14.866,-15.109,-15.399,-15.714,-16.002,-16.255,-16.512,-16.789,-17.054,-17.279,-17.473,-17.656,
--17.834,-18.004,-18.174,-18.354,-18.543,-18.744,-18.957,-19.168,-19.354,-19.520,-19.691,-19.872,-20.026,-20.131,-20.211,-20.303,
--20.408,-20.506,-20.591,-20.682,-20.786,-20.901,-21.020,-21.127,-21.195,-21.215,-21.215,-21.218,-21.208,-21.160,-21.088,-21.031,
--20.993,-20.944,-20.872,-20.792,-20.716,-20.629,-20.517,-20.386,-20.248,-20.107,-19.971,-19.848,-19.735,-19.619,-19.498,-19.380,
--19.267,-19.151,-19.035,-18.932,-18.840,-18.743,-18.633,-18.518,-18.397,-18.261,-18.120,-17.995,-17.893,-17.793,-17.682,-17.575,
--17.488,-17.406,-17.304,-17.180,-17.065,-16.974,-16.888,-16.780,-16.662,-16.568,-16.503,-16.430,-16.326,-16.226,-16.168,-16.129,
--16.047,-15.921,-15.808,-15.730,-15.639,-15.509,-15.382,-15.295,-15.216,-15.095,-14.951,-14.828,-14.720,-14.602,-14.485,-14.392,
--14.300,-14.181,-14.061,-13.983,-13.916,-13.800,-13.646,-13.523,-13.448,-13.371,-13.261,-13.141,-13.019,-12.883,-12.749,-12.651,
--12.567,-12.442,-12.286,-12.165,-12.084,-11.974,-11.806,-11.626,-11.460,-11.266,-11.027,-10.790,-10.582,-10.361,-10.110,-9.874,
--9.677,-9.491,-9.331,-9.263,-9.244,-9.093,-8.718,-8.279,-7.978,-7.777,-7.479,-7.027,-6.571,-6.220,-5.914,-5.561,
--5.169,-4.786,-4.397,-3.965,-3.510,-3.078,-2.670,-2.248,-1.781,-1.273,-.744,-.219,.297,.831,1.408,2.021,
-2.643,3.270,3.888,4.463,4.997,5.550,6.095,6.399,6.263,5.980,6.359,8.051,10.866,13.894,16.290,17.780,
-18.492,18.703,19.016,20.412,23.432,27.101,29.124,27.736,23.414,18.508,15.170,13.861,13.751,14.034,14.505,15.189,
-15.982,16.758,17.521,18.266,18.872,19.250,19.460,19.569,19.527,19.304,19.047,18.913,18.825,18.555,18.049,17.488,
-17.022,16.606,16.163,15.765,15.527,15.417,15.297,15.131,14.994,14.893,14.689,14.255,13.608,12.842,11.997,11.077,
-10.136,9.249,8.426,7.631,6.889,6.284,5.835,5.421,4.862,4.064,3.055,1.951,.894,-.016,-.782,-1.484,
--2.179,-2.856,-3.501,-4.168,-4.920,-5.720,-6.435,-6.975,-7.397,-7.834,-8.357,-8.925,-9.462,-9.967,-10.520,-11.201,
--12.022,-12.926,-13.820,-14.596,-15.147,-15.451,-15.634,-15.905,-16.386,-16.973,-17.406,-17.472,-17.194,-16.864,-16.884,-17.514,
--18.681,-20.025,-21.166,-21.927,-22.341,-22.471,-22.329,-21.983,-21.642,-21.514,-21.590,-21.679,-21.686,-21.753,-22.038,-22.446,
--22.717,-22.768,-22.766,-22.870,-23.051,-23.229,-23.428,-23.688,-23.941,-24.116,-24.259,-24.421,-24.536,-24.562,-24.646,-24.917,
--25.205,-25.205,-24.941,-24.767,-24.877,-25.064,-25.130,-25.251,-25.708,-26.409,-26.926,-26.922,-26.351,-25.332,-24.090,-22.980,
--22.296,-21.970,-21.625,-21.012,-20.269,-19.684,-19.356,-19.183,-19.035,-18.804,-18.369,-17.682,-16.894,-16.272,-15.948,-15.822,
--15.757,-15.772,-15.933,-16.082,-15.850,-15.042,-13.960,-13.162,-12.906,-12.939,-12.877,-12.629,-12.360,-12.168,-11.979,-11.709,
--11.360,-10.944,-10.460,-9.958,-9.532,-9.204,-8.900,-8.558,-8.198,-7.856,-7.543,-7.279,-7.083,-6.903,-6.647,-6.312,
--5.986,-5.698,-5.357,-4.915,-4.480,-4.181,-3.994,-3.793,-3.527,-3.253,-3.008,-2.759,-2.458,-2.100,-1.701,-1.288,
--.894,-.523,-.132,.315,.783,1.198,1.553,1.919,2.359,2.853,3.339,3.780,4.183,4.561,4.898,5.155,
-5.317,5.422,5.543,5.727,5.985,6.328,6.755,7.202,7.557,7.775,7.928,8.118,8.368,8.661,9.006,9.412,
-9.837,10.251,10.712,11.281,11.878,12.333,12.597,12.798,13.057,13.360,13.644,13.916,14.204,14.488,14.739,15.004,
-15.349,15.769,16.200,16.611,17.002,17.351,17.639,17.909,18.239,18.640,19.037,19.353,19.561,19.677,19.747,19.841,
-19.983,20.104,20.109,19.998,19.876,19.820,19.805,19.778,19.729,19.678,19.627,19.565,19.487,19.399,19.305,19.223,
-19.166,19.115,19.038,18.933,18.815,18.676,18.507,18.342,18.227,18.139,18.012,17.848,17.727,17.682,17.660,17.620,
-17.593,17.591,17.570,17.520,17.512,17.583,17.671,17.732,17.838,18.051,18.279,18.388,18.391,18.395,18.410,18.345,
-18.196,18.199,18.138,18.221,18.365,18.423,18.344,18.167,17.948,17.725,17.508,17.276,17.015,16.758,16.540,16.329,
-16.070,15.798,15.592,15.416,15.128,14.669,14.163,13.767,13.504,13.284,13.015,12.648,12.214,11.837,11.617,11.421,
-10.952,10.143,9.394,9.216,9.647,10.139,10.038,9.117,7.677,6.252,5.254,4.770,4.622,4.623,4.767,5.150,
-5.753,6.397,6.898,7.153,7.088,6.668,6.013,5.385,4.939,4.569,4.078,3.423,2.676,1.829,.798,-.390,
--1.587,-2.722,-3.878,-5.096,-6.252,-7.224,-8.075,-8.949,-9.855,-10.694,-11.464,-12.278,-13.190,-14.126,-15.025,-15.897,
--16.699,-17.275,-17.539,-17.658,-17.936,-18.513,-19.234,-19.810,-20.095,-20.194,-20.309,-20.495,-20.604,-20.516,-20.330,-20.243,
--20.281,-20.302,-20.234,-20.162,-20.122,-20.008,-19.752,-19.421,-19.062,-18.613,-18.083,-17.628,-17.296,-16.890,-16.268,-15.575,
--14.888,-13.835,-11.992,-9.645,-7.727,-6.884,-6.929,-7.326,-7.859,-8.594,-9.469,-10.308,-11.138,-12.193,-13.538,-14.895,
--15.893,-16.432,-16.725,-17.046,-17.444,-17.774,-17.961,-18.147,-18.441,-18.665,-18.537,-18.056,-17.484,-17.031,-16.848,-17.233,
--18.331,-19.520,-19.654,-18.328,-16.553,-15.729,-16.204,-17.304,-18.502,-19.891,-21.547,-23.108,-24.264,-25.195,-26.237,-27.400,
--28.455,-29.243,-29.688,-29.792,-29.860,-30.516,-32.140,-34.393,-36.538,-38.131,-39.201,-39.902,-40.310,-40.522,-40.671,-40.786,
--40.835,-40.944,-41.355,-42.125,-43.025,-43.795,-44.366,-44.783,-45.074,-45.295,-45.559,-45.900,-46.198,-46.335,-46.365,-46.429,
--46.548,-46.633,-46.661,-46.723,-46.866,-46.986,-46.950,-46.762,-46.560,-46.440,-46.361,-46.226,-46.034,-45.912,-45.985,-46.257,
--46.616,-46.938,-47.184,-47.384,-47.572,-47.720,-47.758,-47.656,-47.508,-47.492,-47.711,-48.078,-48.422,-48.686,-48.997,-49.488,
--50.126,-50.760,-51.306,-51.798,-52.275,-52.714,-53.116,-53.559,-54.094,-54.645,-55.100,-55.493,-55.990,-56.686,-57.495,-58.283,
--59.020,-59.762,-60.538,-61.322,-62.077,-62.793,-63.469,-64.116,-64.756,-65.405,-66.062,-66.731,-67.416,-68.084,-68.671,-69.161,
--69.630,-70.147,-70.682,-71.155,-71.556,-71.969,-72.471,-73.061,-73.684,-74.289,-74.855,-75.391,-75.915,-76.417,-76.879,-77.343,
--77.900,-78.590,-79.360,-80.161,-81.029,-81.989,-82.956,-83.819,-84.603,-85.423,-86.299,-87.110,-87.761,-88.293,-88.817,-89.413,
--90.084,-90.727,-91.169,-91.328,-91.344,-91.420,-91.562,-91.669,-91.890,-92.640,-94.058,-95.624,-96.586,-96.730,-96.526,-96.525,
--96.846,-97.294,-97.745,-98.214,-98.672,-99.008,-99.183,-99.284,-99.390,-99.490,-99.563,-99.672,-99.887,-100.156,-100.317,-100.264,
--100.042,-99.744,-99.367,-98.818,-98.054,-97.160,-96.276,-95.452,-94.633,-93.765,-92.902,-92.168,-91.627,-91.206,-90.787,-90.335,
--89.892,-89.471,-89.007,-88.445,-87.796,-87.061,-86.170,-85.067,-83.829,-82.612,-81.489,-80.399,-79.219,-77.840,-76.233,-74.551,
--73.120,-72.145,-71.415,-70.474,-69.151,-67.762,-66.677,-65.846,-64.914,-63.701,-62.365,-61.114,-59.964,-58.819,-57.637,-56.423,
--55.145,-53.748,-52.209,-50.561,-48.890,-47.341,-46.023,-44.867,-43.655,-42.235,-40.657,-39.056,-37.490,-35.957,-34.504,-33.175,
--31.873,-30.459,-28.999,-27.788,-27.001,-26.442,-25.788,-25.016,-24.387,-23.978,-23.428,-22.318,-20.695,-19.061,-17.866,-17.150,
--16.633,-15.939,-14.655,-12.383,-8.989,-4.840,-.698,2.667,4.824,5.806,6.053,6.190,6.674,7.544,8.549,9.516,
-10.520,11.683,12.926,14.004,14.767,15.309,15.867,16.622,17.582,18.612,19.557,20.381,21.188,22.097,23.097,24.064,
-24.908,25.676,26.476,27.342,28.232,29.125,30.038,30.935,31.720,32.363,32.965,33.640,34.386,35.153,35.965,36.871,
-37.814,38.687,39.484,40.272,41.021,41.630,42.145,42.776,43.616,44.481,45.140,45.579,45.964,46.485,47.295,48.439,
-49.694,50.676,51.286,51.867,52.700,53.487,53.667,53.131,52.321,51.712,51.587,52.318,54.301,57.327,60.403,62.571,
-63.720,64.334,64.671,64.594,64.107,63.559,63.165,62.679,61.754,60.509,59.514,59.230,59.566,60.009,60.137,59.962,
-59.792,59.840,60.082,60.449,60.989,61.731,62.544,63.240,63.701,63.834,63.560,62.985,62.388,61.801,60.785,58.996,
-56.938,55.764,56.184,57.805,59.668,61.163,62.313,63.379,64.477,65.483,66.169,66.448,66.543,66.825,67.422,68.130,
-68.758,69.350,69.942,70.315,70.203,69.636,68.906,68.303,68.079,68.488,69.534,70.729,71.417,71.402,71.024,70.653,
-70.392,70.317,70.616,71.287,71.962,72.288,72.359,72.521,72.896,73.336,73.729,74.051,74.130,73.722,72.938,72.331,
-72.353,72.848,73.247,73.193,72.802,72.399,72.211,72.329,72.801,73.599,74.573,75.503,76.226,76.725,77.098,77.443,
-77.748,77.933,78.019,78.182,78.531,78.897,79.012,78.883,78.831,79.064,79.403,79.555,79.503,79.406,79.250,78.840,
-78.162,77.477,76.982,76.563,75.992,75.250,74.523,74.000,73.775,73.801,73.808,73.375,72.338,71.090,70.250,69.969,
-69.706,68.830,67.323,65.735,64.526,63.640,62.787,61.963,61.478,61.496,61.759,61.883,61.798,61.727,61.787,61.829,
-61.711,61.495,61.289,61.028,60.580,59.980,59.377,58.796,58.130,57.350,56.577,55.911,55.311,54.693,54.037,53.348,
-52.608,51.828,51.101,50.523,50.120,49.865,49.693,49.464,48.995,48.242,47.415,46.799,46.449,46.168,45.765,45.263,
-44.774,44.304,43.788,43.268,42.882,42.642,42.357,41.872,41.301,40.896,40.718,40.579,40.295,39.885,39.483,39.162,
-38.903,38.668,38.416,38.100,37.700,37.242,36.752,36.236,35.716,35.213,34.689,34.104,33.539,33.169,33.041,32.994,
-32.842,32.536,32.088,31.486,30.789,30.170,29.713,29.262,28.632,27.887,27.259,26.889,26.808,27.048,27.522,27.868,
-27.719,27.145,26.555,26.128,25.651,25.013,24.495,24.374,24.481,24.422,24.083,23.665,23.325,23.050,22.820,22.648,
-22.466,22.168,21.778,21.414,21.095,20.738,20.346,20.037,19.865,19.763,19.677,19.626,19.599,19.513,19.337,19.123,
-18.909,18.701,18.566,18.578,18.635,18.492,18.073,17.618,17.404,17.434,17.527,17.584,17.595,17.503,17.260,16.988,
-16.875,16.885,16.767,16.405,16.005,15.844,15.953,16.162,16.331,16.424,16.427,16.354,16.298,16.336,16.378,16.244,
-15.920,15.609,15.489,15.519,15.544,15.500,15.427,15.357,15.278,15.198,15.153,15.145,15.139,15.118,15.100,15.097,
-15.098,15.099,15.103,15.096,15.061,15.005,14.936,14.827,14.647,14.437,14.301,14.309,14.438,14.610,14.757,14.855,
-14.917,14.973,15.028,15.065,15.088,15.129,15.197,15.248,15.252,15.234,15.209,15.113,14.911,14.714,14.678,14.786,
-14.859,14.794,14.688,14.665,14.708,14.723,14.688,14.651,14.626,14.592,14.546,14.488,14.397,14.269,14.147,14.063,
-13.970,13.797,13.549,13.281,13.022,12.771,12.553,12.399,12.275,12.120,11.927,11.744,11.584,11.403,11.174,10.923,
-10.677,10.426,10.164,9.920,9.714,9.529,9.325,9.080,8.798,8.500,8.221,7.978,7.748,7.500,7.223,6.936,
-6.648,6.360,6.081,5.817,5.551,5.265,4.973,4.704,4.446,4.160,3.833,3.488,3.133,2.757,2.372,2.018,
-1.713,1.417,1.082,.705,.320,-.053,-.416,-.790,-1.190,-1.623,-2.068,-2.491,-2.873,-3.215,-3.525,-3.815,
--4.107,-4.414,-4.721,-5.002,-5.274,-5.578,-5.925,-6.269,-6.554,-6.757,-6.896,-7.012,-7.170,-7.422,-7.764,-8.132,
--8.475,-8.792,-9.105,-9.412,-9.708,-10.009,-10.321,-10.620,-10.890,-11.161,-11.463,-11.777,-12.064,-12.336,-12.643,-12.987,
--13.319,-13.605,-13.870,-14.131,-14.369,-14.581,-14.811,-15.100,-15.421,-15.720,-15.991,-16.267,-16.558,-16.829,-17.051,-17.227,
--17.376,-17.518,-17.673,-17.844,-18.019,-18.187,-18.372,-18.593,-18.822,-19.011,-19.165,-19.328,-19.511,-19.664,-19.754,-19.822,
--19.924,-20.057,-20.179,-20.276,-20.363,-20.449,-20.532,-20.614,-20.703,-20.781,-20.825,-20.836,-20.833,-20.817,-20.769,-20.691,
--20.612,-20.560,-20.531,-20.503,-20.457,-20.384,-20.283,-20.158,-20.017,-19.869,-19.728,-19.605,-19.498,-19.394,-19.288,-19.181,
--19.070,-18.943,-18.806,-18.682,-18.585,-18.498,-18.402,-18.304,-18.216,-18.124,-18.006,-17.873,-17.752,-17.645,-17.534,-17.410,
--17.292,-17.195,-17.113,-17.025,-16.923,-16.819,-16.733,-16.662,-16.582,-16.487,-16.398,-16.330,-16.255,-16.144,-16.028,-15.963,
--15.939,-15.887,-15.783,-15.678,-15.609,-15.529,-15.400,-15.266,-15.183,-15.126,-15.034,-14.903,-14.776,-14.664,-14.550,-14.450,
--14.382,-14.320,-14.222,-14.109,-14.028,-13.966,-13.866,-13.728,-13.609,-13.528,-13.450,-13.356,-13.262,-13.166,-13.042,-12.901,
--12.782,-12.685,-12.570,-12.443,-12.348,-12.277,-12.163,-11.991,-11.814,-11.656,-11.471,-11.237,-11.004,-10.802,-10.597,-10.370,
--10.155,-9.949,-9.684,-9.352,-9.068,-8.916,-8.811,-8.608,-8.299,-7.979,-7.674,-7.331,-6.944,-6.587,-6.287,-5.971,
--5.588,-5.188,-4.836,-4.505,-4.122,-3.682,-3.248,-2.841,-2.409,-1.909,-1.376,-.864,-.364,.173,.740,1.287,
-1.826,2.433,3.103,3.699,4.142,4.577,5.180,5.812,6.063,5.777,5.436,5.865,7.490,9.917,12.258,13.878,
-14.824,15.576,16.548,17.975,20.161,23.336,26.880,29.001,27.904,23.630,18.372,14.631,13.201,13.162,13.449,13.870,
-14.651,15.690,16.626,17.335,17.994,18.709,19.360,19.766,19.856,19.686,19.415,19.228,19.168,19.065,18.737,18.227,
-17.725,17.297,16.857,16.388,16.030,15.871,15.801,15.658,15.444,15.272,15.139,14.894,14.414,13.724,12.923,12.061,
-11.154,10.257,9.434,8.694,8.011,7.401,6.908,6.503,6.041,5.367,4.441,3.347,2.205,1.114,.142,-.671,
--1.331,-1.891,-2.436,-3.052,-3.805,-4.678,-5.554,-6.296,-6.884,-7.429,-8.046,-8.723,-9.350,-9.866,-10.329,-10.842,
--11.474,-12.236,-13.100,-13.973,-14.704,-15.178,-15.419,-15.577,-15.786,-16.072,-16.358,-16.527,-16.491,-16.277,-16.100,-16.263,
--16.923,-17.951,-19.045,-19.978,-20.678,-21.136,-21.334,-21.286,-21.103,-20.938,-20.868,-20.852,-20.825,-20.820,-20.967,-21.324,
--21.753,-22.052,-22.190,-22.319,-22.540,-22.779,-22.952,-23.130,-23.408,-23.738,-24.025,-24.304,-24.673,-25.086,-25.405,-25.619,
--25.807,-25.911,-25.767,-25.416,-25.125,-25.030,-24.998,-24.993,-25.285,-26.073,-27.060,-27.682,-27.683,-27.188,-26.344,-25.209,
--24.012,-23.157,-22.800,-22.625,-22.196,-21.420,-20.530,-19.767,-19.224,-18.888,-18.632,-18.195,-17.384,-16.335,-15.441,-14.964,
--14.808,-14.748,-14.781,-15.072,-15.555,-15.785,-15.352,-14.404,-13.574,-13.336,-13.548,-13.708,-13.539,-13.157,-12.773,-12.421,
--12.010,-11.493,-10.905,-10.310,-9.779,-9.356,-9.018,-8.704,-8.394,-8.105,-7.811,-7.467,-7.102,-6.806,-6.587,-6.345,
--6.020,-5.685,-5.415,-5.172,-4.881,-4.572,-4.329,-4.145,-3.935,-3.657,-3.355,-3.069,-2.783,-2.463,-2.099,-1.692,
--1.269,-.887,-.576,-.288,.057,.476,.899,1.271,1.613,1.987,2.409,2.832,3.193,3.478,3.727,3.980,
-4.219,4.400,4.532,4.686,4.915,5.213,5.561,5.951,6.340,6.651,6.872,7.087,7.368,7.689,8.006,8.354,
-8.778,9.221,9.604,9.964,10.408,10.926,11.388,11.729,12.026,12.361,12.713,13.062,13.456,13.927,14.414,14.843,
-15.228,15.613,15.989,16.321,16.633,16.965,17.296,17.578,17.821,18.082,18.393,18.740,19.095,19.404,19.601,19.686,
-19.759,19.890,20.010,20.005,19.886,19.767,19.704,19.655,19.592,19.551,19.543,19.525,19.470,19.404,19.341,19.255,
-19.142,19.039,18.961,18.878,18.780,18.689,18.601,18.477,18.328,18.213,18.144,18.058,17.924,17.799,17.720,17.656,
-17.586,17.553,17.569,17.575,17.542,17.541,17.624,17.735,17.817,17.930,18.133,18.339,18.414,18.376,18.352,18.364,
-18.317,18.199,18.196,18.181,18.295,18.405,18.348,18.130,17.883,17.699,17.556,17.377,17.122,16.815,16.516,16.238,
-15.927,15.551,15.196,14.975,14.847,14.626,14.189,13.626,13.131,12.800,12.566,12.294,11.903,11.455,11.103,10.886,
-10.600,9.989,9.125,8.472,8.456,9.009,9.621,9.753,9.151,7.890,6.321,4.958,4.196,4.039,4.170,4.333,
-4.558,4.984,5.571,6.102,6.394,6.400,6.161,5.762,5.336,4.974,4.625,4.154,3.519,2.800,2.043,1.176,
-.128,-1.074,-2.374,-3.747,-5.116,-6.313,-7.242,-8.033,-8.880,-9.790,-10.618,-11.334,-12.068,-12.895,-13.738,-14.534,
--15.333,-16.118,-16.680,-16.842,-16.742,-16.769,-17.196,-17.956,-18.749,-19.321,-19.641,-19.856,-20.073,-20.216,-20.167,-19.984,
--19.862,-19.864,-19.867,-19.805,-19.783,-19.850,-19.850,-19.634,-19.266,-18.868,-18.434,-17.938,-17.471,-17.069,-16.581,-15.933,
--15.304,-14.736,-13.773,-11.971,-9.710,-8.011,-7.422,-7.531,-7.736,-8.019,-8.666,-9.609,-10.505,-11.299,-12.278,-13.563,
--14.872,-15.851,-16.431,-16.804,-17.173,-17.578,-17.917,-18.116,-18.266,-18.494,-18.706,-18.627,-18.175,-17.624,-17.316,-17.400,
--17.905,-18.753,-19.504,-19.434,-18.287,-16.784,-16.000,-16.290,-17.195,-18.294,-19.650,-21.342,-23.042,-24.360,-25.325,-26.278,
--27.425,-28.649,-29.618,-30.013,-29.871,-29.801,-30.619,-32.542,-34.912,-36.882,-38.192,-39.099,-39.796,-40.226,-40.382,-40.429,
--40.499,-40.610,-40.835,-41.319,-42.072,-42.900,-43.620,-44.202,-44.658,-44.961,-45.137,-45.311,-45.550,-45.766,-45.864,-45.906,
--46.013,-46.181,-46.299,-46.334,-46.370,-46.454,-46.507,-46.438,-46.273,-46.124,-46.042,-45.964,-45.817,-45.631,-45.534,-45.628,
--45.897,-46.233,-46.531,-46.762,-46.960,-47.151,-47.295,-47.308,-47.169,-47.000,-46.996,-47.236,-47.598,-47.899,-48.121,-48.431,
--48.970,-49.674,-50.348,-50.883,-51.337,-51.799,-52.269,-52.704,-53.125,-53.608,-54.161,-54.702,-55.183,-55.675,-56.288,-57.035,
--57.824,-58.576,-59.306,-60.069,-60.868,-61.647,-62.354,-63.002,-63.645,-64.319,-65.001,-65.653,-66.280,-66.924,-67.590,-68.221,
--68.769,-69.256,-69.745,-70.255,-70.745,-71.187,-71.610,-72.077,-72.623,-73.237,-73.872,-74.483,-75.043,-75.539,-75.971,-76.380,
--76.852,-77.452,-78.159,-78.893,-79.641,-80.465,-81.386,-82.329,-83.217,-84.079,-84.966,-85.829,-86.561,-87.127,-87.615,-88.144,
--88.784,-89.515,-90.204,-90.673,-90.871,-90.937,-91.011,-91.078,-91.138,-91.460,-92.397,-93.871,-95.270,-96.012,-96.121,-96.081,
--96.255,-96.619,-97.014,-97.403,-97.820,-98.211,-98.484,-98.633,-98.734,-98.824,-98.878,-98.895,-98.945,-99.099,-99.324,-99.490,
--99.489,-99.321,-99.047,-98.667,-98.109,-97.338,-96.453,-95.623,-94.907,-94.191,-93.321,-92.297,-91.302,-90.537,-90.035,-89.683,
--89.385,-89.135,-88.922,-88.666,-88.276,-87.738,-87.052,-86.157,-85.015,-83.720,-82.434,-81.218,-80.012,-78.767,-77.474,-76.113,
--74.700,-73.390,-72.349,-71.475,-70.443,-69.110,-67.725,-66.577,-65.606,-64.533,-63.283,-62.043,-60.941,-59.886,-58.768,-57.603,
--56.427,-55.172,-53.764,-52.224,-50.628,-49.045,-47.566,-46.279,-45.137,-43.929,-42.491,-40.880,-39.264,-37.722,-36.241,-34.837,
--33.525,-32.205,-30.749,-29.250,-28.014,-27.194,-26.537,-25.644,-24.476,-23.447,-22.965,-22.947,-22.861,-22.210,-20.911,-19.268,
--17.698,-16.470,-15.550,-14.560,-12.948,-10.326,-6.748,-2.686,1.195,4.265,6.125,6.817,6.870,6.987,7.552,8.477,
-9.511,10.583,11.759,12.987,14.046,14.773,15.246,15.715,16.390,17.319,18.375,19.365,20.203,21.001,21.938,23.022,
-24.057,24.890,25.604,26.388,27.280,28.160,28.963,29.763,30.613,31.429,32.120,32.726,33.347,34.008,34.702,35.485,
-36.397,37.327,38.127,38.822,39.561,40.353,41.040,41.590,42.210,43.062,43.992,44.689,45.035,45.215,45.569,46.406,
-47.787,49.361,50.583,51.262,51.768,52.509,53.348,53.821,53.746,53.312,52.687,52.064,52.114,53.772,57.140,60.936,
-63.484,64.177,63.693,62.996,62.540,62.362,62.428,62.592,62.494,61.795,60.557,59.247,58.362,58.045,58.047,58.043,
-57.985,58.096,58.515,59.096,59.629,60.130,60.745,61.444,61.993,62.220,62.166,61.971,61.722,61.349,60.564,59.030,
-56.850,54.849,54.055,54.799,56.465,58.163,59.433,60.305,60.978,61.621,62.279,62.828,63.141,63.380,63.938,64.970,
-66.197,67.296,68.253,69.114,69.660,69.626,69.119,68.526,68.117,68.005,68.348,69.203,70.189,70.695,70.508,69.958,
-69.429,69.055,68.980,69.469,70.506,71.586,72.220,72.449,72.607,72.790,72.919,73.109,73.532,73.966,73.954,73.540,
-73.409,74.075,75.185,75.931,75.939,75.498,75.019,74.638,74.342,74.201,74.327,74.733,75.344,76.079,76.846,77.524,
-78.013,78.278,78.357,78.368,78.480,78.769,79.085,79.206,79.157,79.227,79.592,80.050,80.283,80.239,80.091,79.886,
-79.473,78.811,78.110,77.596,77.252,76.910,76.474,75.981,75.531,75.242,75.150,75.051,74.556,73.496,72.212,71.270,
-70.849,70.584,70.036,69.126,68.006,66.662,64.935,62.956,61.353,60.779,61.236,62.012,62.369,62.219,62.015,62.083,
-62.262,62.222,61.914,61.546,61.226,60.853,60.334,59.727,59.126,58.518,57.847,57.125,56.414,55.752,55.140,54.565,
-53.976,53.297,52.514,51.736,51.110,50.696,50.433,50.204,49.873,49.324,48.559,47.754,47.139,46.771,46.475,46.058,
-45.514,44.967,44.476,44.006,43.574,43.252,43.002,42.637,42.058,41.451,41.084,40.961,40.813,40.450,39.970,39.590,
-39.384,39.261,39.100,38.838,38.475,38.072,37.689,37.306,36.851,36.320,35.778,35.224,34.578,33.879,33.342,33.116,
-33.067,32.927,32.597,32.172,31.749,31.336,30.913,30.445,29.862,29.138,28.370,27.689,27.164,26.863,26.891,27.179,
-27.388,27.257,26.971,26.870,26.862,26.476,25.600,24.756,24.450,24.542,24.540,24.266,23.917,23.638,23.371,23.094,
-22.890,22.751,22.534,22.176,21.762,21.355,20.925,20.496,20.183,20.035,19.959,19.873,19.802,19.769,19.706,19.547,
-19.304,19.033,18.798,18.666,18.634,18.530,18.162,17.612,17.229,17.235,17.475,17.671,17.742,17.739,17.622,17.351,
-17.128,17.233,17.596,17.771,17.443,16.788,16.223,15.967,15.983,16.177,16.448,16.627,16.577,16.376,16.236,16.214,
-16.161,15.984,15.805,15.770,15.825,15.799,15.649,15.476,15.360,15.285,15.225,15.192,15.187,15.181,15.162,15.148,
-15.139,15.109,15.067,15.059,15.099,15.129,15.094,14.994,14.855,14.685,14.510,14.401,14.413,14.520,14.633,14.690,
-14.698,14.691,14.691,14.696,14.711,14.754,14.841,14.950,15.038,15.087,15.115,15.119,15.043,14.861,14.653,14.540,
-14.550,14.596,14.607,14.590,14.574,14.549,14.514,14.499,14.501,14.468,14.379,14.297,14.280,14.295,14.269,14.198,
-14.122,14.025,13.847,13.571,13.257,12.972,12.740,12.559,12.406,12.246,12.057,11.857,11.675,11.494,11.283,11.050,
-10.828,10.605,10.337,10.032,9.761,9.565,9.397,9.184,8.907,8.606,8.320,8.065,7.834,7.603,7.345,7.052,
-6.748,6.454,6.173,5.893,5.606,5.313,5.022,4.744,4.483,4.222,3.941,3.646,3.354,3.053,2.714,2.343,
-1.983,1.662,1.355,1.022,.659,.292,-.061,-.408,-.768,-1.156,-1.573,-2.000,-2.404,-2.764,-3.079,-3.364,
--3.648,-3.956,-4.287,-4.609,-4.895,-5.163,-5.455,-5.793,-6.155,-6.498,-6.778,-6.958,-7.054,-7.150,-7.341,-7.641,
--7.978,-8.297,-8.603,-8.920,-9.231,-9.517,-9.802,-10.113,-10.428,-10.703,-10.947,-11.204,-11.486,-11.768,-12.048,-12.357,
--12.699,-13.036,-13.340,-13.622,-13.890,-14.130,-14.350,-14.594,-14.889,-15.202,-15.489,-15.751,-16.021,-16.302,-16.567,-16.791,
--16.970,-17.106,-17.219,-17.348,-17.510,-17.682,-17.843,-18.016,-18.228,-18.446,-18.614,-18.740,-18.885,-19.065,-19.223,-19.321,
--19.402,-19.526,-19.683,-19.823,-19.934,-20.033,-20.122,-20.183,-20.221,-20.269,-20.334,-20.387,-20.407,-20.406,-20.399,-20.375,
--20.315,-20.229,-20.158,-20.128,-20.125,-20.104,-20.037,-19.930,-19.799,-19.655,-19.505,-19.369,-19.261,-19.171,-19.075,-18.967,
--18.857,-18.740,-18.607,-18.470,-18.358,-18.268,-18.168,-18.051,-17.949,-17.876,-17.808,-17.716,-17.610,-17.504,-17.393,-17.264,
--17.130,-17.012,-16.917,-16.837,-16.761,-16.672,-16.565,-16.461,-16.393,-16.352,-16.298,-16.220,-16.140,-16.063,-15.964,-15.853,
--15.782,-15.760,-15.723,-15.633,-15.534,-15.472,-15.415,-15.310,-15.185,-15.099,-15.046,-14.969,-14.859,-14.751,-14.655,-14.549,
--14.445,-14.375,-14.323,-14.246,-14.146,-14.067,-14.011,-13.939,-13.839,-13.739,-13.649,-13.550,-13.450,-13.375,-13.313,-13.221,
--13.094,-12.968,-12.857,-12.743,-12.631,-12.542,-12.458,-12.332,-12.165,-12.005,-11.858,-11.680,-11.462,-11.252,-11.069,-10.870,
--10.641,-10.429,-10.237,-9.974,-9.589,-9.175,-8.869,-8.676,-8.484,-8.215,-7.889,-7.555,-7.231,-6.923,-6.641,-6.362,
--6.042,-5.676,-5.317,-5.004,-4.699,-4.331,-3.893,-3.450,-3.032,-2.580,-2.052,-1.506,-1.016,-.541,.012,.613,
-1.148,1.626,2.185,2.840,3.406,3.812,4.279,4.973,5.600,5.669,5.185,4.816,5.298,6.767,8.687,10.303,
-11.204,11.678,12.549,14.458,17.275,20.368,23.292,25.743,26.902,25.593,21.671,16.846,13.433,12.295,12.490,12.844,
-13.206,13.997,15.195,16.306,17.077,17.731,18.510,19.315,19.866,20.029,19.902,19.695,19.561,19.477,19.288,18.912,
-18.460,18.074,17.736,17.334,16.882,16.519,16.309,16.154,15.963,15.771,15.639,15.496,15.184,14.611,13.820,12.915,
-11.977,11.060,10.211,9.465,8.828,8.286,7.825,7.418,6.994,6.436,5.657,4.671,3.570,2.448,1.357,.344,
--.517,-1.179,-1.687,-2.180,-2.799,-3.597,-4.511,-5.398,-6.144,-6.770,-7.401,-8.119,-8.858,-9.493,-9.998,-10.472,
--11.006,-11.626,-12.338,-13.148,-13.989,-14.695,-15.156,-15.432,-15.645,-15.807,-15.839,-15.742,-15.628,-15.584,-15.626,-15.801,
--16.211,-16.861,-17.588,-18.229,-18.787,-19.331,-19.806,-20.083,-20.153,-20.144,-20.142,-20.107,-20.006,-19.938,-20.069,-20.463,
--21.009,-21.496,-21.772,-21.873,-21.973,-22.174,-22.412,-22.606,-22.820,-23.158,-23.580,-23.960,-24.312,-24.766,-25.335,-25.857,
--26.207,-26.390,-26.407,-26.214,-25.880,-25.588,-25.390,-25.184,-25.043,-25.325,-26.195,-27.228,-27.774,-27.647,-27.145,-26.492,
--25.621,-24.564,-23.677,-23.267,-23.195,-23.050,-22.598,-21.895,-21.094,-20.328,-19.697,-19.169,-18.504,-17.479,-16.208,-15.116,
--14.495,-14.214,-13.963,-13.696,-13.684,-14.077,-14.566,-14.631,-14.131,-13.490,-13.224,-13.392,-13.605,-13.519,-13.140,-12.663,
--12.184,-11.665,-11.083,-10.491,-9.962,-9.526,-9.166,-8.833,-8.500,-8.197,-7.947,-7.685,-7.313,-6.849,-6.440,-6.173,
--5.963,-5.690,-5.367,-5.089,-4.883,-4.701,-4.513,-4.334,-4.154,-3.929,-3.642,-3.320,-2.991,-2.658,-2.330,-2.011,
--1.685,-1.339,-1.008,-.741,-.524,-.276,.057,.442,.805,1.114,1.403,1.716,2.043,2.321,2.513,2.666,
-2.853,3.079,3.282,3.451,3.651,3.934,4.270,4.609,4.946,5.281,5.584,5.863,6.191,6.603,7.024,7.391,
-7.764,8.223,8.710,9.095,9.379,9.684,10.064,10.446,10.792,11.166,11.613,12.090,12.563,13.076,13.658,14.250,
-14.782,15.253,15.669,15.991,16.211,16.409,16.669,16.981,17.289,17.578,17.870,18.179,18.529,18.944,19.362,19.646,
-19.746,19.777,19.854,19.919,19.860,19.712,19.607,19.573,19.528,19.445,19.390,19.381,19.354,19.287,19.238,19.220,
-19.170,19.060,18.947,18.871,18.796,18.702,18.629,18.583,18.503,18.366,18.236,18.162,18.095,17.984,17.859,17.766,
-17.685,17.602,17.560,17.584,17.617,17.614,17.624,17.697,17.792,17.858,17.940,18.097,18.257,18.313,18.286,18.286,
-18.317,18.286,18.196,18.193,18.207,18.344,18.421,18.276,17.972,17.701,17.547,17.421,17.197,16.848,16.447,16.070,
-15.719,15.347,14.951,14.612,14.398,14.251,14.013,13.592,13.058,12.563,12.194,11.906,11.583,11.168,10.740,10.432,
-10.221,9.874,9.197,8.349,7.765,7.747,8.192,8.745,9.072,8.911,8.072,6.633,5.096,4.105,3.881,4.064,
-4.192,4.197,4.325,4.690,5.119,5.401,5.501,5.489,5.385,5.181,4.897,4.535,4.047,3.431,2.780,2.148,
-1.422,.435,-.833,-2.264,-3.741,-5.168,-6.405,-7.356,-8.127,-8.934,-9.833,-10.680,-11.384,-12.038,-12.739,-13.448,
--14.115,-14.785,-15.461,-15.954,-16.063,-15.860,-15.696,-15.910,-16.585,-17.521,-18.390,-18.975,-19.315,-19.581,-19.805,-19.855,
--19.692,-19.485,-19.384,-19.361,-19.367,-19.463,-19.645,-19.712,-19.488,-19.072,-18.656,-18.259,-17.808,-17.347,-16.922,-16.436,
--15.847,-15.312,-14.801,-13.807,-11.951,-9.807,-8.486,-8.329,-8.565,-8.481,-8.349,-8.813,-9.838,-10.842,-11.597,-12.431,
--13.574,-14.794,-15.758,-16.409,-16.885,-17.303,-17.696,-18.032,-18.245,-18.342,-18.426,-18.514,-18.441,-18.105,-17.693,-17.485,
--17.553,-17.832,-18.317,-18.875,-19.019,-18.307,-17.014,-16.043,-16.042,-16.884,-18.104,-19.501,-21.094,-22.746,-24.169,-25.256,
--26.216,-27.338,-28.646,-29.788,-30.301,-30.173,-30.098,-30.945,-32.856,-35.092,-36.847,-37.988,-38.843,-39.561,-40.006,-40.135,
--40.146,-40.227,-40.421,-40.746,-41.262,-41.944,-42.665,-43.337,-43.949,-44.464,-44.809,-45.011,-45.194,-45.398,-45.524,-45.531,
--45.554,-45.732,-46.004,-46.199,-46.256,-46.250,-46.231,-46.156,-46.000,-45.828,-45.722,-45.672,-45.600,-45.459,-45.295,-45.203,
--45.255,-45.452,-45.735,-46.027,-46.282,-46.503,-46.696,-46.818,-46.798,-46.643,-46.499,-46.544,-46.813,-47.163,-47.455,-47.715,
--48.092,-48.661,-49.329,-49.932,-50.404,-50.811,-51.254,-51.751,-52.243,-52.690,-53.133,-53.637,-54.197,-54.752,-55.285,-55.849,
--56.488,-57.182,-57.894,-58.646,-59.479,-60.357,-61.175,-61.874,-62.501,-63.144,-63.824,-64.491,-65.104,-65.694,-66.324,-67.010,
--67.688,-68.276,-68.763,-69.226,-69.741,-70.305,-70.848,-71.322,-71.762,-72.249,-72.822,-73.450,-74.070,-74.623,-75.078,-75.456,
--75.850,-76.363,-77.010,-77.701,-78.363,-79.035,-79.815,-80.718,-81.671,-82.616,-83.548,-84.446,-85.243,-85.907,-86.485,-87.050,
--87.640,-88.270,-88.927,-89.525,-89.954,-90.216,-90.416,-90.577,-90.623,-90.654,-91.068,-92.166,-93.671,-94.892,-95.425,-95.508,
--95.620,-95.936,-96.311,-96.623,-96.910,-97.222,-97.518,-97.746,-97.914,-98.040,-98.106,-98.104,-98.080,-98.105,-98.221,-98.411,
--98.596,-98.674,-98.587,-98.355,-98.008,-97.523,-96.860,-96.072,-95.305,-94.637,-93.949,-93.019,-91.785,-90.481,-89.466,-88.928,
--88.773,-88.793,-88.842,-88.833,-88.668,-88.282,-87.703,-86.971,-86.038,-84.850,-83.497,-82.159,-80.905,-79.678,-78.460,-77.308,
--76.207,-75.050,-73.831,-72.677,-71.608,-70.442,-69.062,-67.634,-66.385,-65.287,-64.168,-63.022,-61.989,-61.058,-60.042,-58.865,
--57.661,-56.510,-55.285,-53.846,-52.248,-50.645,-49.129,-47.734,-46.490,-45.338,-44.087,-42.599,-40.958,-39.359,-37.892,-36.517,
--35.200,-33.909,-32.531,-30.979,-29.402,-28.128,-27.281,-26.548,-25.484,-24.034,-22.681,-22.017,-22.188,-22.733,-22.916,-22.222,
--20.623,-18.543,-16.578,-15.135,-14.157,-13.133,-11.423,-8.667,-4.984,-.900,2.855,5.603,7.041,7.452,7.527,7.879,
-8.674,9.731,10.852,11.959,12.999,13.881,14.549,15.073,15.612,16.316,17.238,18.288,19.284,20.126,20.923,21.861,
-22.942,23.949,24.730,25.397,26.159,27.041,27.887,28.628,29.369,30.204,31.060,31.805,32.425,33.004,33.607,34.281,
-35.087,36.031,36.988,37.816,38.542,39.296,40.093,40.811,41.418,42.057,42.831,43.615,44.186,44.489,44.707,45.151,
-46.102,47.585,49.219,50.448,51.086,51.503,52.132,52.947,53.621,53.982,53.994,53.506,52.569,52.056,53.285,56.600,
-60.583,63.159,63.419,62.157,60.814,60.298,60.702,61.628,62.496,62.758,62.163,60.896,59.433,58.228,57.471,57.066,
-56.845,56.832,57.214,58.003,58.872,59.469,59.814,60.165,60.576,60.827,60.793,60.636,60.548,60.467,60.113,59.231,
-57.813,56.241,55.190,55.171,56.078,57.321,58.383,59.119,59.572,59.801,59.956,60.198,60.457,60.514,60.480,60.867,
-61.992,63.564,65.104,66.501,67.822,68.835,69.164,68.854,68.384,68.133,68.161,68.467,69.046,69.633,69.783,69.376,
-68.760,68.316,68.185,68.505,69.506,71.113,72.768,73.943,74.614,74.989,75.076,74.869,74.706,74.916,75.228,75.084,
-74.580,74.560,75.533,76.933,77.785,77.809,77.473,77.196,76.924,76.502,76.029,75.725,75.688,75.928,76.440,77.127,
-77.756,78.149,78.339,78.468,78.605,78.750,78.900,79.036,79.101,79.117,79.234,79.558,79.953,80.173,80.150,80.021,
-79.877,79.632,79.199,78.655,78.161,77.799,77.559,77.385,77.196,76.929,76.637,76.429,76.250,75.829,74.987,73.902,
-72.915,72.129,71.382,70.594,69.894,69.269,68.308,66.561,64.181,62.043,61.068,61.411,62.345,62.946,62.887,62.551,
-62.434,62.575,62.616,62.316,61.813,61.374,61.048,60.671,60.128,59.482,58.847,58.248,57.633,56.967,56.276,55.627,
-55.059,54.528,53.923,53.186,52.402,51.737,51.276,50.953,50.635,50.223,49.671,48.984,48.265,47.681,47.306,47.000,
-46.540,45.870,45.156,44.570,44.138,43.803,43.526,43.241,42.830,42.270,41.740,41.431,41.278,41.024,40.565,40.077,
-39.768,39.631,39.526,39.360,39.121,38.818,38.479,38.154,37.828,37.418,36.888,36.305,35.708,35.041,34.305,33.675,
-33.319,33.160,32.969,32.643,32.282,31.997,31.782,31.552,31.198,30.620,29.821,28.950,28.181,27.584,27.177,26.992,
-26.959,26.862,26.617,26.486,26.717,27.022,26.792,25.912,24.993,24.625,24.706,24.745,24.555,24.309,24.099,23.817,
-23.455,23.175,23.027,22.851,22.520,22.083,21.619,21.129,20.650,20.306,20.156,20.098,20.025,19.941,19.886,19.817,
-19.659,19.404,19.120,18.909,18.857,18.923,18.885,18.534,17.975,17.571,17.524,17.677,17.790,17.840,17.882,17.816,
-17.557,17.342,17.535,18.103,18.524,18.346,17.640,16.816,16.189,15.873,15.912,16.240,16.591,16.671,16.480,16.286,
-16.256,16.283,16.215,16.094,16.044,16.040,15.943,15.724,15.505,15.398,15.392,15.417,15.425,15.394,15.323,15.257,
-15.238,15.237,15.190,15.103,15.066,15.119,15.185,15.168,15.065,14.937,14.814,14.700,14.617,14.598,14.625,14.643,
-14.619,14.572,14.526,14.489,14.471,14.488,14.546,14.633,14.734,14.835,14.918,14.963,14.955,14.886,14.756,14.588,
-14.438,14.371,14.409,14.501,14.550,14.487,14.346,14.242,14.248,14.297,14.257,14.102,13.959,13.947,14.036,14.111,
-14.117,14.077,13.995,13.825,13.548,13.225,12.943,12.737,12.576,12.412,12.221,12.016,11.827,11.650,11.448,11.209,
-10.968,10.759,10.542,10.257,9.924,9.634,9.429,9.252,9.026,8.743,8.450,8.178,7.927,7.691,7.461,7.214,
-6.925,6.602,6.273,5.955,5.643,5.332,5.034,4.763,4.521,4.287,4.034,3.754,3.467,3.195,2.924,2.620,
-2.273,1.911,1.568,1.239,.905,.562,.229,-.084,-.389,-.709,-1.061,-1.445,-1.843,-2.230,-2.585,-2.894,
--3.170,-3.445,-3.758,-4.110,-4.468,-4.797,-5.095,-5.392,-5.714,-6.073,-6.456,-6.811,-7.059,-7.176,-7.247,-7.393,
--7.649,-7.951,-8.238,-8.524,-8.835,-9.145,-9.420,-9.688,-9.998,-10.335,-10.637,-10.878,-11.099,-11.335,-11.583,-11.830,
--12.094,-12.390,-12.711,-13.038,-13.359,-13.656,-13.916,-14.158,-14.424,-14.727,-15.031,-15.298,-15.537,-15.776,-16.023,-16.268,
--16.506,-16.720,-16.879,-16.983,-17.078,-17.208,-17.364,-17.519,-17.682,-17.873,-18.062,-18.201,-18.301,-18.425,-18.593,-18.752,
--18.866,-18.972,-19.113,-19.272,-19.409,-19.528,-19.651,-19.767,-19.831,-19.842,-19.850,-19.891,-19.945,-19.974,-19.977,-19.978,
--19.977,-19.948,-19.880,-19.807,-19.770,-19.766,-19.749,-19.683,-19.580,-19.460,-19.327,-19.183,-19.050,-18.949,-18.861,-18.758,
--18.637,-18.515,-18.393,-18.264,-18.143,-18.049,-17.964,-17.851,-17.719,-17.608,-17.530,-17.460,-17.383,-17.309,-17.230,-17.115,
--16.967,-16.829,-16.731,-16.656,-16.585,-16.522,-16.448,-16.337,-16.207,-16.124,-16.104,-16.081,-16.008,-15.913,-15.838,-15.768,
--15.682,-15.610,-15.577,-15.542,-15.461,-15.365,-15.307,-15.268,-15.196,-15.096,-15.017,-14.959,-14.880,-14.778,-14.691,-14.626,
--14.546,-14.447,-14.364,-14.308,-14.250,-14.175,-14.103,-14.046,-13.988,-13.923,-13.854,-13.772,-13.662,-13.546,-13.463,-13.412,
--13.348,-13.253,-13.145,-13.041,-12.935,-12.829,-12.733,-12.628,-12.491,-12.337,-12.196,-12.052,-11.869,-11.662,-11.480,-11.327,
--11.144,-10.914,-10.682,-10.474,-10.233,-9.898,-9.503,-9.142,-8.857,-8.612,-8.345,-8.041,-7.733,-7.453,-7.195,-6.927,
--6.626,-6.296,-5.960,-5.629,-5.301,-4.953,-4.556,-4.115,-3.672,-3.247,-2.790,-2.258,-1.706,-1.217,-.750,-.199,
-.406,.925,1.354,1.854,2.465,3.020,3.468,4.028,4.759,5.231,4.992,4.277,3.887,4.360,5.551,6.959,
-8.140,8.883,9.459,10.719,13.430,17.254,20.835,23.099,24.015,23.803,22.097,18.654,14.536,11.636,10.854,11.396,
-12.059,12.588,13.423,14.660,15.868,16.754,17.482,18.284,19.106,19.728,20.046,20.123,20.075,19.968,19.784,19.482,
-19.104,18.782,18.580,18.403,18.118,17.722,17.316,16.954,16.630,16.368,16.208,16.107,15.925,15.529,14.868,13.974,
-12.940,11.902,10.971,10.175,9.491,8.922,8.486,8.143,7.784,7.304,6.655,5.834,4.871,3.819,2.735,1.653,
-.614,-.313,-1.063,-1.658,-2.210,-2.837,-3.588,-4.428,-5.271,-6.031,-6.697,-7.334,-7.998,-8.652,-9.234,-9.763,
--10.324,-10.937,-11.555,-12.188,-12.914,-13.722,-14.457,-14.992,-15.364,-15.633,-15.705,-15.460,-15.017,-14.707,-14.763,-15.162,
--15.783,-16.533,-17.258,-17.737,-17.913,-18.003,-18.246,-18.604,-18.877,-19.016,-19.139,-19.278,-19.329,-19.297,-19.400,-19.842,
--20.563,-21.291,-21.771,-21.926,-21.869,-21.816,-21.917,-22.149,-22.414,-22.714,-23.122,-23.604,-24.023,-24.345,-24.707,-25.203,
--25.740,-26.156,-26.380,-26.413,-26.279,-26.085,-25.967,-25.902,-25.738,-25.534,-25.655,-26.311,-27.130,-27.500,-27.252,-26.719,
--26.163,-25.487,-24.590,-23.707,-23.166,-23.002,-22.980,-22.877,-22.583,-22.045,-21.285,-20.437,-19.592,-18.647,-17.451,-16.115,
--14.994,-14.314,-13.904,-13.412,-12.748,-12.218,-12.175,-12.581,-12.989,-12.997,-12.649,-12.320,-12.258,-12.350,-12.335,-12.108,
--11.748,-11.350,-10.941,-10.522,-10.109,-9.722,-9.380,-9.089,-8.826,-8.555,-8.272,-7.997,-7.706,-7.328,-6.865,-6.431,
--6.133,-5.935,-5.716,-5.431,-5.137,-4.900,-4.723,-4.578,-4.429,-4.241,-3.988,-3.686,-3.370,-3.057,-2.756,-2.490,
--2.272,-2.061,-1.801,-1.496,-1.205,-.960,-.724,-.436,-.085,.280,.601,.874,1.140,1.419,1.665,1.829,
-1.949,2.114,2.347,2.586,2.801,3.044,3.357,3.697,4.009,4.304,4.609,4.912,5.217,5.587,6.045,6.506,
-6.897,7.287,7.774,8.312,8.755,9.072,9.364,9.696,10.033,10.367,10.770,11.272,11.804,12.303,12.790,13.295,
-13.796,14.277,14.756,15.209,15.561,15.800,16.024,16.323,16.682,17.045,17.395,17.720,18.005,18.296,18.683,19.138,
-19.492,19.649,19.715,19.807,19.857,19.748,19.546,19.424,19.414,19.398,19.330,19.272,19.245,19.187,19.096,19.052,
-19.069,19.054,18.969,18.887,18.851,18.802,18.704,18.618,18.578,18.520,18.390,18.248,18.159,18.085,17.969,17.840,
-17.753,17.691,17.620,17.572,17.585,17.627,17.652,17.680,17.750,17.828,17.873,17.924,18.030,18.145,18.199,18.216,
-18.265,18.314,18.277,18.193,18.217,18.225,18.355,18.409,18.234,17.916,17.644,17.461,17.237,16.861,16.372,15.892,
-15.487,15.126,14.758,14.393,14.082,13.833,13.588,13.276,12.881,12.446,12.028,11.659,11.327,10.978,10.584,10.201,
-9.911,9.666,9.260,8.565,7.748,7.158,6.994,7.186,7.567,8.003,8.271,8.013,7.046,5.708,4.664,4.280,
-4.294,4.223,3.940,3.715,3.764,3.999,4.241,4.471,4.735,4.953,4.975,4.757,4.359,3.834,3.235,2.663,
-2.143,1.490,.467,-.920,-2.433,-3.885,-5.248,-6.488,-7.503,-8.305,-9.074,-9.921,-10.739,-11.397,-11.946,-12.520,
--13.130,-13.710,-14.256,-14.777,-15.168,-15.281,-15.126,-14.920,-14.966,-15.474,-16.416,-17.482,-18.309,-18.796,-19.128,-19.424,
--19.555,-19.405,-19.121,-18.944,-18.931,-19.016,-19.179,-19.370,-19.400,-19.142,-18.736,-18.382,-18.054,-17.634,-17.176,-16.790,
--16.417,-15.982,-15.563,-15.057,-13.950,-11.995,-9.978,-9.087,-9.406,-9.761,-9.327,-8.715,-8.983,-10.145,-11.332,-12.086,
--12.763,-13.730,-14.829,-15.745,-16.437,-17.012,-17.503,-17.916,-18.277,-18.540,-18.625,-18.578,-18.512,-18.415,-18.206,-17.940,
--17.751,-17.643,-17.599,-17.794,-18.337,-18.795,-18.457,-17.254,-16.080,-15.913,-16.842,-18.211,-19.503,-20.754,-22.158,-23.645,
--24.984,-26.127,-27.287,-28.610,-29.865,-30.590,-30.683,-30.714,-31.462,-33.097,-35.038,-36.634,-37.760,-38.632,-39.323,-39.734,
--39.880,-39.957,-40.111,-40.368,-40.740,-41.259,-41.892,-42.557,-43.223,-43.871,-44.407,-44.738,-44.925,-45.098,-45.249,-45.266,
--45.181,-45.209,-45.467,-45.806,-46.008,-46.043,-46.018,-45.969,-45.848,-45.662,-45.503,-45.426,-45.374,-45.273,-45.120,-44.969,
--44.867,-44.851,-44.956,-45.186,-45.486,-45.778,-46.026,-46.223,-46.327,-46.280,-46.122,-46.018,-46.116,-46.385,-46.679,-46.942,
--47.266,-47.749,-48.348,-48.934,-49.437,-49.875,-50.291,-50.723,-51.196,-51.701,-52.194,-52.649,-53.103,-53.615,-54.190,-54.782,
--55.358,-55.917,-56.486,-57.116,-57.878,-58.781,-59.723,-60.564,-61.270,-61.922,-62.588,-63.253,-63.870,-64.453,-65.060,-65.721,
--66.411,-67.075,-67.662,-68.174,-68.682,-69.266,-69.919,-70.536,-71.032,-71.442,-71.872,-72.381,-72.950,-73.526,-74.056,-74.503,
--74.888,-75.310,-75.863,-76.510,-77.136,-77.705,-78.327,-79.111,-80.037,-81.016,-81.993,-82.940,-83.794,-84.520,-85.184,-85.882,
--86.605,-87.271,-87.849,-88.369,-88.816,-89.163,-89.472,-89.814,-90.089,-90.155,-90.193,-90.713,-91.955,-93.461,-94.495,-94.831,
--94.888,-95.114,-95.519,-95.877,-96.114,-96.326,-96.563,-96.792,-97.003,-97.204,-97.339,-97.346,-97.266,-97.218,-97.267,-97.398,
--97.585,-97.794,-97.935,-97.908,-97.704,-97.397,-97.019,-96.513,-95.853,-95.137,-94.467,-93.761,-92.777,-91.405,-89.900,-88.744,
--88.249,-88.322,-88.629,-88.878,-88.920,-88.686,-88.177,-87.485,-86.689,-85.738,-84.543,-83.178,-81.844,-80.634,-79.474,-78.321,
--77.253,-76.284,-75.272,-74.116,-72.893,-71.683,-70.399,-68.955,-67.477,-66.170,-65.045,-63.985,-62.991,-62.130,-61.300,-60.275,
--59.037,-57.809,-56.697,-55.510,-54.041,-52.357,-50.688,-49.166,-47.802,-46.576,-45.407,-44.119,-42.601,-40.974,-39.465,-38.162,
--36.975,-35.782,-34.491,-32.999,-31.302,-29.634,-28.342,-27.483,-26.676,-25.462,-23.827,-22.283,-21.444,-21.522,-22.177,-22.747,
--22.610,-21.460,-19.436,-17.072,-15.032,-13.677,-12.788,-11.697,-9.765,-6.785,-3.052,.826,4.160,6.444,7.601,8.037,
-8.368,9.010,9.990,11.088,12.084,12.897,13.568,14.182,14.803,15.480,16.274,17.231,18.286,19.275,20.107,20.885,
-21.773,22.762,23.672,24.402,25.062,25.806,26.624,27.400,28.112,28.869,29.729,30.611,31.392,32.046,32.640,33.259,
-33.964,34.788,35.712,36.654,37.544,38.379,39.177,39.922,40.600,41.260,41.952,42.615,43.132,43.492,43.839,44.343,
-45.119,46.236,47.642,49.053,50.100,50.706,51.178,51.810,52.559,53.230,53.754,54.022,53.708,52.764,52.082,53.043,
-56.046,59.741,62.099,62.180,60.713,59.202,58.761,59.618,61.225,62.651,63.141,62.560,61.360,60.123,59.163,58.465,
-57.860,57.284,56.934,57.121,57.871,58.773,59.370,59.617,59.767,59.928,59.994,59.973,60.048,60.233,60.219,59.712,
-58.785,57.826,57.254,57.310,57.934,58.751,59.348,59.615,59.713,59.753,59.728,59.735,59.909,60.053,59.747,59.026,
-58.588,59.048,60.272,61.778,63.454,65.408,67.294,68.414,68.542,68.210,68.057,68.262,68.675,69.112,69.354,69.184,
-68.664,68.172,68.033,68.323,69.122,70.607,72.703,74.906,76.710,77.973,78.683,78.696,78.075,77.375,77.091,76.972,
-76.423,75.569,75.297,76.073,77.238,77.837,77.743,77.540,77.573,77.633,77.489,77.252,77.106,77.042,77.029,77.170,
-77.502,77.834,77.977,78.020,78.182,78.479,78.723,78.815,78.842,78.912,79.033,79.190,79.405,79.649,79.823,79.875,
-79.868,79.870,79.846,79.712,79.443,79.084,78.706,78.386,78.162,77.972,77.705,77.368,77.093,76.923,76.687,76.203,
-75.505,74.708,73.764,72.555,71.220,70.134,69.417,68.658,67.300,65.288,63.240,61.978,61.892,62.658,63.486,63.741,
-63.412,62.997,62.881,62.927,62.746,62.246,61.703,61.341,61.044,60.570,59.889,59.181,58.578,58.037,57.457,56.811,
-56.159,55.566,55.024,54.452,53.778,53.046,52.399,51.928,51.565,51.178,50.717,50.204,49.651,49.063,48.522,48.102,
-47.709,47.127,46.290,45.412,44.768,44.401,44.156,43.887,43.547,43.130,42.672,42.278,42.011,41.760,41.360,40.842,
-40.416,40.187,40.023,39.779,39.489,39.251,39.046,38.793,38.492,38.183,37.820,37.325,36.707,36.036,35.348,34.665,
-34.070,33.646,33.354,33.077,32.765,32.455,32.182,31.960,31.793,31.607,31.212,30.485,29.551,28.679,28.024,27.572,
-27.266,27.026,26.719,26.327,26.094,26.243,26.540,26.459,25.863,25.223,25.005,25.112,25.149,24.996,24.810,24.627,
-24.311,23.864,23.482,23.251,23.029,22.692,22.281,21.849,21.359,20.831,20.415,20.218,20.163,20.115,20.039,19.972,
-19.895,19.749,19.512,19.220,18.959,18.835,18.870,18.918,18.782,18.466,18.177,18.048,18.001,17.947,17.946,18.021,
-17.997,17.736,17.454,17.535,18.014,18.469,18.483,18.034,17.359,16.665,16.111,15.885,16.059,16.409,16.586,16.499,
-16.367,16.379,16.457,16.431,16.297,16.180,16.116,16.020,15.845,15.672,15.611,15.677,15.783,15.824,15.749,15.603,
-15.492,15.472,15.477,15.398,15.242,15.124,15.120,15.170,15.178,15.129,15.065,15.008,14.939,14.854,14.761,14.664,
-14.566,14.489,14.446,14.415,14.373,14.343,14.359,14.412,14.470,14.536,14.630,14.722,14.750,14.712,14.669,14.644,
-14.580,14.444,14.321,14.327,14.443,14.502,14.380,14.142,13.973,13.963,14.010,13.955,13.774,13.602,13.568,13.662,
-13.782,13.853,13.866,13.816,13.677,13.443,13.168,12.924,12.738,12.577,12.401,12.205,12.012,11.833,11.648,11.425,
-11.169,10.923,10.703,10.471,10.180,9.851,9.554,9.318,9.102,8.857,8.585,8.311,8.041,7.775,7.529,7.312,
-7.097,6.835,6.508,6.143,5.778,5.431,5.107,4.816,4.561,4.332,4.102,3.850,3.574,3.294,3.033,2.786,
-2.519,2.208,1.861,1.512,1.181,.861,.544,.233,-.065,-.356,-.659,-.988,-1.343,-1.716,-2.093,-2.453,
--2.776,-3.058,-3.333,-3.644,-4.005,-4.383,-4.738,-5.055,-5.351,-5.654,-5.998,-6.395,-6.800,-7.122,-7.304,-7.404,
--7.536,-7.757,-8.024,-8.288,-8.559,-8.856,-9.152,-9.405,-9.643,-9.927,-10.263,-10.584,-10.838,-11.043,-11.246,-11.459,
--11.667,-11.875,-12.111,-12.398,-12.735,-13.091,-13.421,-13.699,-13.948,-14.216,-14.516,-14.816,-15.082,-15.312,-15.525,-15.732,
--15.948,-16.191,-16.442,-16.642,-16.760,-16.835,-16.931,-17.066,-17.214,-17.369,-17.536,-17.696,-17.814,-17.903,-18.012,-18.159,
--18.307,-18.431,-18.553,-18.695,-18.840,-18.964,-19.083,-19.223,-19.362,-19.444,-19.455,-19.447,-19.475,-19.531,-19.572,-19.579,
--19.571,-19.568,-19.555,-19.514,-19.458,-19.421,-19.405,-19.373,-19.303,-19.211,-19.116,-19.008,-18.879,-18.749,-18.639,-18.537,
--18.418,-18.286,-18.166,-18.056,-17.943,-17.837,-17.750,-17.661,-17.545,-17.416,-17.304,-17.209,-17.111,-17.027,-16.981,-16.936,
--16.830,-16.676,-16.547,-16.474,-16.414,-16.341,-16.281,-16.229,-16.136,-15.997,-15.890,-15.860,-15.843,-15.767,-15.665,-15.599,
--15.559,-15.497,-15.420,-15.369,-15.329,-15.260,-15.175,-15.120,-15.090,-15.042,-14.971,-14.915,-14.868,-14.788,-14.680,-14.595,
--14.551,-14.504,-14.426,-14.343,-14.286,-14.245,-14.198,-14.140,-14.075,-14.009,-13.952,-13.908,-13.854,-13.766,-13.659,-13.570,
--13.507,-13.446,-13.372,-13.288,-13.200,-13.106,-13.011,-12.912,-12.796,-12.657,-12.518,-12.386,-12.233,-12.037,-11.829,-11.659,
--11.520,-11.363,-11.158,-10.923,-10.685,-10.440,-10.171,-9.867,-9.538,-9.215,-8.925,-8.655,-8.373,-8.086,-7.827,-7.589,
--7.312,-6.978,-6.636,-6.319,-5.987,-5.598,-5.173,-4.744,-4.311,-3.872,-3.443,-3.003,-2.503,-1.963,-1.459,-.988,
--.465,.107,.611,1.038,1.537,2.148,2.717,3.200,3.771,4.401,4.609,4.051,3.155,2.749,3.141,3.987,
-4.963,6.047,7.197,8.406,10.183,13.224,17.231,20.669,22.230,22.068,21.036,19.234,16.238,12.553,9.794,9.081,
-9.929,11.110,12.060,13.015,14.172,15.341,16.333,17.213,18.079,18.882,19.531,20.013,20.343,20.493,20.429,20.167,
-19.790,19.441,19.251,19.217,19.189,19.025,18.700,18.269,17.787,17.334,17.007,16.816,16.642,16.352,15.890,15.225,
-14.310,13.197,12.082,11.144,10.374,9.677,9.069,8.639,8.350,8.012,7.488,6.796,6.005,5.126,4.146,3.089,
-2.003,.930,-.082,-.973,-1.729,-2.392,-3.026,-3.689,-4.423,-5.223,-6.008,-6.681,-7.226,-7.713,-8.206,-8.733,
--9.328,-10.009,-10.711,-11.331,-11.888,-12.520,-13.283,-14.046,-14.652,-15.074,-15.303,-15.214,-14.737,-14.124,-13.830,-14.116,
--14.881,-15.897,-16.971,-17.862,-18.278,-18.168,-17.863,-17.747,-17.871,-18.035,-18.157,-18.322,-18.540,-18.713,-18.889,-19.314,
--20.119,-21.100,-21.890,-22.274,-22.276,-22.069,-21.887,-21.917,-22.173,-22.524,-22.891,-23.317,-23.806,-24.228,-24.485,-24.671,
--24.954,-25.349,-25.728,-25.975,-26.061,-26.039,-26.044,-26.197,-26.432,-26.518,-26.391,-26.334,-26.624,-27.098,-27.308,-27.058,
--26.553,-25.999,-25.338,-24.469,-23.525,-22.764,-22.319,-22.152,-22.151,-22.134,-21.870,-21.249,-20.369,-19.380,-18.292,-17.061,
--15.815,-14.813,-14.168,-13.695,-13.081,-12.210,-11.304,-10.759,-10.781,-11.161,-11.444,-11.354,-11.023,-10.772,-10.743,-10.812,
--10.790,-10.631,-10.416,-10.226,-10.049,-9.806,-9.453,-9.073,-8.818,-8.728,-8.660,-8.444,-8.069,-7.652,-7.277,-6.932,
--6.592,-6.283,-6.035,-5.833,-5.631,-5.404,-5.163,-4.941,-4.757,-4.583,-4.361,-4.065,-3.733,-3.424,-3.162,-2.946,
--2.782,-2.661,-2.527,-2.313,-2.009,-1.671,-1.357,-1.080,-.806,-.498,-.159,.170,.456,.714,.974,1.219,
-1.408,1.562,1.760,2.034,2.332,2.613,2.903,3.226,3.546,3.831,4.118,4.437,4.758,5.060,5.401,5.824,
-6.266,6.651,7.023,7.481,8.000,8.465,8.845,9.216,9.616,10.005,10.381,10.811,11.319,11.833,12.284,12.683,
-13.057,13.415,13.791,14.233,14.709,15.121,15.447,15.770,16.153,16.558,16.941,17.297,17.603,17.820,18.010,18.320,
-18.768,19.177,19.412,19.555,19.707,19.783,19.654,19.403,19.240,19.221,19.226,19.189,19.159,19.148,19.095,19.007,
-18.969,18.987,18.966,18.879,18.813,18.807,18.778,18.674,18.568,18.516,18.461,18.344,18.214,18.132,18.061,17.941,
-17.811,17.737,17.704,17.657,17.607,17.597,17.618,17.640,17.673,17.745,17.828,17.889,17.951,18.050,18.151,18.215,
-18.272,18.353,18.396,18.327,18.217,18.258,18.209,18.270,18.264,18.065,17.748,17.456,17.188,16.821,16.304,15.746,
-15.289,14.951,14.638,14.281,13.904,13.553,13.219,12.865,12.497,12.150,11.828,11.495,11.140,10.791,10.457,10.116,
-9.779,9.483,9.194,8.772,8.126,7.361,6.705,6.307,6.183,6.327,6.742,7.282,7.573,7.274,6.449,5.552,
-4.976,4.672,4.320,3.791,3.286,3.031,3.031,3.201,3.552,4.077,4.579,4.778,4.588,4.133,3.563,2.981,
-2.479,2.039,1.417,.340,-1.139,-2.670,-4.019,-5.252,-6.455,-7.524,-8.362,-9.087,-9.849,-10.584,-11.143,-11.560,
--12.012,-12.563,-13.124,-13.613,-14.022,-14.335,-14.502,-14.509,-14.433,-14.451,-14.802,-15.612,-16.692,-17.639,-18.242,-18.627,
--18.946,-19.108,-18.988,-18.725,-18.579,-18.617,-18.733,-18.861,-18.956,-18.899,-18.637,-18.321,-18.094,-17.843,-17.424,-16.954,
--16.627,-16.388,-16.091,-15.744,-15.237,-14.095,-12.156,-10.311,-9.757,-10.378,-10.714,-9.904,-8.882,-9.064,-10.470,-11.926,
--12.738,-13.292,-14.098,-15.060,-15.879,-16.552,-17.202,-17.800,-18.291,-18.718,-19.070,-19.222,-19.160,-19.041,-18.960,-18.853,
--18.673,-18.461,-18.222,-17.999,-18.031,-18.483,-18.958,-18.706,-17.586,-16.481,-16.413,-17.432,-18.712,-19.636,-20.381,-21.449,
--22.950,-24.560,-26.004,-27.339,-28.726,-30.057,-30.974,-31.322,-31.476,-32.049,-33.288,-34.891,-36.404,-37.621,-38.539,-39.162,
--39.507,-39.702,-39.902,-40.157,-40.463,-40.867,-41.406,-42.025,-42.657,-43.301,-43.927,-44.401,-44.640,-44.753,-44.878,-44.967,
--44.903,-44.780,-44.849,-45.157,-45.459,-45.545,-45.483,-45.446,-45.445,-45.388,-45.275,-45.199,-45.172,-45.100,-44.935,-44.741,
--44.595,-44.507,-44.477,-44.551,-44.761,-45.049,-45.314,-45.522,-45.685,-45.773,-45.724,-45.586,-45.528,-45.653,-45.852,-45.965,
--46.037,-46.284,-46.798,-47.433,-48.016,-48.558,-49.142,-49.739,-50.242,-50.652,-51.081,-51.588,-52.108,-52.586,-53.066,-53.624,
--54.254,-54.869,-55.404,-55.892,-56.454,-57.198,-58.102,-59.020,-59.833,-60.561,-61.285,-62.003,-62.642,-63.206,-63.799,-64.483,
--65.199,-65.860,-66.456,-67.031,-67.614,-68.225,-68.878,-69.543,-70.133,-70.596,-70.989,-71.400,-71.859,-72.345,-72.855,-73.384,
--73.889,-74.345,-74.814,-75.362,-75.945,-76.473,-76.972,-77.594,-78.421,-79.378,-80.355,-81.316,-82.234,-83.048,-83.764,-84.505,
--85.346,-86.181,-86.859,-87.374,-87.809,-88.177,-88.471,-88.790,-89.195,-89.521,-89.591,-89.662,-90.307,-91.677,-93.161,-94.014,
--94.184,-94.226,-94.532,-94.974,-95.294,-95.489,-95.689,-95.912,-96.113,-96.320,-96.546,-96.687,-96.648,-96.521,-96.488,-96.605,
--96.796,-96.997,-97.192,-97.309,-97.248,-97.017,-96.735,-96.466,-96.121,-95.597,-94.937,-94.260,-93.538,-92.554,-91.181,-89.663,
--88.521,-88.111,-88.319,-88.712,-88.923,-88.815,-88.397,-87.742,-86.971,-86.166,-85.256,-84.114,-82.788,-81.493,-80.347,-79.263,
--78.158,-77.107,-76.173,-75.240,-74.162,-72.947,-71.664,-70.276,-68.740,-67.206,-65.891,-64.821,-63.867,-62.982,-62.197,-61.413,
--60.427,-59.236,-58.054,-56.977,-55.803,-54.318,-52.597,-50.885,-49.325,-47.925,-46.665,-45.472,-44.179,-42.684,-41.120,-39.738,
--38.626,-37.638,-36.568,-35.266,-33.659,-31.830,-30.093,-28.783,-27.886,-26.964,-25.594,-23.837,-22.225,-21.288,-21.151,-21.535,
--21.999,-22.129,-21.572,-20.129,-17.941,-15.541,-13.553,-12.213,-11.180,-9.833,-7.719,-4.771,-1.261,2.295,5.279,7.240,
-8.196,8.628,9.119,9.936,10.944,11.868,12.588,13.189,13.801,14.464,15.177,16.002,17.003,18.113,19.146,20.008,
-20.795,21.636,22.504,23.285,23.969,24.668,25.435,26.208,26.930,27.650,28.443,29.297,30.132,30.891,31.581,32.244,
-32.937,33.704,34.535,35.383,36.241,37.144,38.070,38.904,39.571,40.176,40.886,41.667,42.275,42.573,42.755,43.167,
-43.968,45.063,46.304,47.577,48.736,49.631,50.295,50.923,51.615,52.257,52.753,53.143,53.347,53.051,52.238,51.710,
-52.615,55.214,58.386,60.527,60.846,59.779,58.463,58.007,58.944,60.896,62.752,63.487,62.951,61.838,60.923,60.437,
-60.090,59.491,58.547,57.606,57.199,57.541,58.292,58.927,59.232,59.327,59.350,59.386,59.607,60.115,60.625,60.624,
-59.967,59.115,58.658,58.814,59.424,60.181,60.743,60.851,60.535,60.082,59.744,59.618,59.797,60.280,60.643,60.228,
-58.941,57.564,56.954,57.230,58.108,59.664,62.125,65.017,67.222,68.094,68.087,68.086,68.472,69.034,69.442,69.527,
-69.304,69.000,68.945,69.294,69.979,71.013,72.602,74.782,77.189,79.343,80.946,81.754,81.515,80.380,79.094,78.304,
-77.818,77.026,75.970,75.423,75.793,76.503,76.777,76.611,76.554,76.824,77.147,77.333,77.520,77.778,77.901,77.773,
-77.618,77.667,77.806,77.789,77.666,77.714,78.004,78.298,78.406,78.417,78.519,78.734,78.960,79.145,79.322,79.508,
-79.688,79.859,80.024,80.159,80.224,80.192,80.035,79.734,79.335,78.938,78.585,78.226,77.845,77.527,77.314,77.094,
-76.745,76.293,75.775,75.012,73.756,72.081,70.417,69.095,68.020,66.864,65.470,63.984,62.773,62.260,62.646,63.585,
-64.298,64.263,63.723,63.317,63.269,63.221,62.840,62.263,61.804,61.475,61.039,60.391,59.675,59.044,58.493,57.945,
-57.369,56.775,56.178,55.586,54.983,54.333,53.657,53.064,52.637,52.300,51.902,51.413,50.922,50.474,50.006,49.483,
-48.941,48.350,47.585,46.639,45.758,45.211,44.977,44.793,44.464,44.015,43.557,43.158,42.841,42.571,42.235,41.763,
-41.266,40.933,40.755,40.516,40.096,39.650,39.366,39.197,38.973,38.661,38.352,38.045,37.607,36.960,36.190,35.450,
-34.835,34.355,33.963,33.602,33.257,32.951,32.659,32.315,31.948,31.704,31.606,31.406,30.838,29.962,29.100,28.461,
-28.017,27.688,27.433,27.147,26.718,26.252,26.001,25.998,25.973,25.753,25.519,25.492,25.577,25.536,25.352,25.177,
-25.006,24.686,24.218,23.776,23.444,23.120,22.740,22.367,22.016,21.585,21.051,20.583,20.339,20.273,20.227,20.136,
-20.033,19.936,19.814,19.626,19.346,18.979,18.620,18.414,18.415,18.519,18.592,18.579,18.488,18.340,18.207,18.185,
-18.232,18.150,17.835,17.479,17.383,17.598,17.890,18.035,17.982,17.731,17.252,16.635,16.166,16.072,16.257,16.420,
-16.416,16.364,16.408,16.495,16.476,16.323,16.156,16.075,16.054,16.016,15.960,15.964,16.072,16.217,16.269,16.172,
-16.003,15.896,15.881,15.857,15.716,15.480,15.271,15.174,15.172,15.198,15.212,15.201,15.160,15.091,14.996,14.857,
-14.664,14.466,14.350,14.335,14.347,14.318,14.273,14.262,14.272,14.269,14.284,14.364,14.465,14.493,14.462,14.488,
-14.597,14.651,14.537,14.347,14.272,14.339,14.381,14.260,14.030,13.845,13.768,13.724,13.623,13.462,13.315,13.252,
-13.290,13.393,13.506,13.573,13.556,13.442,13.257,13.050,12.860,12.690,12.522,12.350,12.180,12.014,11.837,11.630,
-11.395,11.153,10.915,10.674,10.410,10.114,9.804,9.506,9.230,8.966,8.704,8.439,8.168,7.887,7.613,7.377,
-7.185,6.997,6.756,6.441,6.072,5.692,5.328,4.998,4.705,4.437,4.178,3.916,3.652,3.391,3.140,2.908,
-2.688,2.453,2.169,1.837,1.497,1.185,.899,.610,.303,-.016,-.337,-.661,-.995,-1.338,-1.692,-2.058,
--2.422,-2.758,-3.053,-3.334,-3.644,-4.001,-4.373,-4.717,-5.017,-5.293,-5.575,-5.896,-6.274,-6.686,-7.061,-7.333,
--7.510,-7.667,-7.869,-8.117,-8.378,-8.643,-8.916,-9.175,-9.393,-9.593,-9.836,-10.144,-10.462,-10.725,-10.929,-11.116,
--11.311,-11.502,-11.680,-11.872,-12.124,-12.452,-12.822,-13.167,-13.447,-13.680,-13.922,-14.203,-14.504,-14.789,-15.040,-15.255,
--15.441,-15.626,-15.845,-16.095,-16.318,-16.464,-16.549,-16.635,-16.758,-16.906,-17.060,-17.213,-17.355,-17.471,-17.569,-17.678,
--17.808,-17.938,-18.054,-18.172,-18.303,-18.435,-18.554,-18.671,-18.804,-18.936,-19.024,-19.050,-19.051,-19.077,-19.139,-19.197,
--19.212,-19.191,-19.166,-19.147,-19.120,-19.083,-19.048,-19.017,-18.967,-18.888,-18.806,-18.738,-18.663,-18.557,-18.432,-18.311,
--18.190,-18.059,-17.931,-17.829,-17.744,-17.650,-17.552,-17.461,-17.368,-17.257,-17.140,-17.034,-16.921,-16.792,-16.694,-16.663,
--16.648,-16.563,-16.423,-16.313,-16.257,-16.188,-16.084,-16.004,-15.971,-15.913,-15.789,-15.665,-15.608,-15.578,-15.508,-15.420,
--15.372,-15.353,-15.302,-15.219,-15.153,-15.111,-15.058,-14.995,-14.953,-14.928,-14.888,-14.838,-14.809,-14.790,-14.730,-14.626,
--14.534,-14.486,-14.451,-14.391,-14.316,-14.259,-14.228,-14.204,-14.166,-14.106,-14.033,-13.971,-13.933,-13.901,-13.853,-13.786,
--13.714,-13.645,-13.574,-13.501,-13.426,-13.343,-13.254,-13.165,-13.068,-12.948,-12.813,-12.683,-12.555,-12.396,-12.197,-11.997,
--11.826,-11.675,-11.523,-11.356,-11.158,-10.917,-10.658,-10.418,-10.177,-9.887,-9.559,-9.256,-8.990,-8.707,-8.401,-8.133,
--7.906,-7.636,-7.288,-6.937,-6.629,-6.288,-5.852,-5.380,-4.946,-4.521,-4.060,-3.601,-3.178,-2.734,-2.224,-1.710,
--1.243,-.766,-.237,.277,.760,1.320,1.976,2.557,2.985,3.412,3.821,3.787,3.048,2.107,1.763,2.168,
-2.857,3.643,4.833,6.526,8.425,10.552,13.383,16.798,19.571,20.589,20.109,19.085,17.611,15.030,11.539,8.685,
-7.845,8.829,10.390,11.666,12.650,13.615,14.649,15.717,16.790,17.790,18.624,19.308,19.930,20.487,20.852,20.911,
-20.680,20.298,19.969,19.838,19.875,19.909,19.799,19.524,19.122,18.643,18.178,17.813,17.517,17.167,16.723,16.236,
-15.659,14.825,13.714,12.576,11.642,10.858,10.065,9.316,8.799,8.499,8.170,7.637,6.959,6.243,5.464,4.547,
-3.498,2.386,1.259,.156,-.867,-1.765,-2.536,-3.214,-3.859,-4.556,-5.335,-6.095,-6.671,-7.026,-7.303,-7.676,
--8.206,-8.864,-9.595,-10.319,-10.950,-11.499,-12.081,-12.764,-13.463,-14.035,-14.404,-14.507,-14.246,-13.671,-13.143,-13.127,
--13.776,-14.871,-16.127,-17.377,-18.411,-18.920,-18.793,-18.337,-17.991,-17.897,-17.914,-17.947,-18.046,-18.227,-18.446,-18.792,
--19.471,-20.498,-21.560,-22.288,-22.562,-22.492,-22.262,-22.075,-22.117,-22.416,-22.815,-23.180,-23.558,-24.024,-24.476,-24.738,
--24.817,-24.899,-25.101,-25.363,-25.563,-25.665,-25.734,-25.901,-26.268,-26.758,-27.112,-27.158,-27.042,-27.049,-27.230,-27.345,
--27.184,-26.762,-26.172,-25.410,-24.456,-23.401,-22.419,-21.668,-21.248,-21.147,-21.170,-21.017,-20.521,-19.742,-18.798,-17.720,
--16.550,-15.460,-14.640,-14.088,-13.609,-12.989,-12.137,-11.138,-10.249,-9.777,-9.802,-10.042,-10.112,-9.915,-9.698,-9.704,
--9.888,-10.011,-9.936,-9.749,-9.600,-9.482,-9.235,-8.781,-8.307,-8.126,-8.304,-8.521,-8.377,-7.824,-7.190,-6.791,
--6.628,-6.473,-6.189,-5.863,-5.659,-5.607,-5.585,-5.459,-5.222,-4.958,-4.707,-4.431,-4.090,-3.722,-3.403,-3.173,
--3.028,-2.945,-2.884,-2.777,-2.576,-2.284,-1.947,-1.610,-1.304,-1.040,-.797,-.534,-.246,.029,.269,.499,
-.738,.971,1.201,1.469,1.801,2.163,2.510,2.841,3.167,3.469,3.754,4.076,4.453,4.824,5.141,5.457,
-5.843,6.260,6.629,6.963,7.342,7.772,8.189,8.585,9.023,9.510,9.985,10.425,10.884,11.382,11.868,12.302,
-12.697,13.062,13.397,13.741,14.155,14.616,15.036,15.389,15.744,16.134,16.509,16.842,17.159,17.443,17.636,17.796,
-18.087,18.542,18.981,19.245,19.401,19.555,19.637,19.517,19.265,19.084,19.043,19.044,19.028,19.034,19.065,19.056,
-19.006,18.979,18.973,18.908,18.778,18.683,18.659,18.626,18.533,18.440,18.393,18.339,18.230,18.123,18.070,18.026,
-17.935,17.831,17.781,17.772,17.749,17.707,17.677,17.656,17.635,17.642,17.709,17.811,17.914,18.030,18.169,18.290,
-18.364,18.428,18.504,18.522,18.413,18.258,18.216,18.081,18.013,17.894,17.640,17.305,16.977,16.638,16.205,15.677,
-15.176,14.811,14.546,14.249,13.849,13.400,12.979,12.591,12.206,11.837,11.525,11.248,10.945,10.604,10.275,9.982,
-9.689,9.375,9.072,8.788,8.445,7.945,7.282,6.557,5.903,5.443,5.292,5.529,6.094,6.718,7.028,6.817,
-6.217,5.543,4.965,4.400,3.753,3.119,2.680,2.516,2.622,3.023,3.666,4.282,4.532,4.315,3.807,3.224,
-2.677,2.225,1.823,1.226,.170,-1.268,-2.703,-3.901,-4.992,-6.132,-7.208,-8.047,-8.722,-9.404,-10.057,-10.526,
--10.837,-11.205,-11.741,-12.339,-12.859,-13.258,-13.560,-13.800,-13.999,-14.153,-14.284,-14.541,-15.122,-16.000,-16.872,-17.485,
--17.884,-18.205,-18.411,-18.404,-18.287,-18.258,-18.345,-18.441,-18.501,-18.521,-18.430,-18.208,-17.998,-17.882,-17.683,-17.253,
--16.775,-16.499,-16.341,-16.083,-15.740,-15.281,-14.282,-12.541,-10.889,-10.488,-11.175,-11.414,-10.360,-9.125,-9.313,-10.921,
--12.568,-13.412,-13.873,-14.560,-15.406,-16.107,-16.711,-17.396,-18.099,-18.687,-19.184,-19.618,-19.871,-19.898,-19.853,-19.855,
--19.812,-19.620,-19.333,-19.056,-18.856,-18.842,-19.058,-19.207,-18.814,-17.902,-17.217,-17.458,-18.454,-19.407,-19.884,-20.233,
--21.036,-22.440,-24.147,-25.842,-27.456,-29.020,-30.426,-31.428,-31.912,-32.113,-32.490,-33.356,-34.670,-36.148,-37.487,-38.475,
--39.060,-39.374,-39.629,-39.932,-40.258,-40.612,-41.072,-41.650,-42.242,-42.783,-43.321,-43.848,-44.219,-44.360,-44.414,-44.525,
--44.613,-44.555,-44.473,-44.601,-44.907,-45.099,-45.025,-44.856,-44.799,-44.829,-44.831,-44.812,-44.847,-44.886,-44.803,-44.587,
--44.370,-44.246,-44.202,-44.216,-44.323,-44.535,-44.761,-44.908,-44.992,-45.088,-45.175,-45.164,-45.070,-45.042,-45.138,-45.178,
--44.981,-44.683,-44.650,-45.048,-45.689,-46.354,-47.082,-47.992,-48.961,-49.696,-50.114,-50.436,-50.896,-51.484,-52.060,-52.587,
--53.148,-53.784,-54.417,-54.960,-55.436,-55.982,-56.698,-57.536,-58.357,-59.108,-59.864,-60.674,-61.436,-62.042,-62.567,-63.197,
--63.971,-64.729,-65.341,-65.872,-66.455,-67.120,-67.801,-68.446,-69.030,-69.529,-69.953,-70.368,-70.813,-71.259,-71.687,-72.162,
--72.736,-73.346,-73.897,-74.392,-74.891,-75.384,-75.830,-76.302,-76.947,-77.801,-78.745,-79.682,-80.607,-81.508,-82.330,-83.098,
--83.927,-84.828,-85.636,-86.232,-86.701,-87.158,-87.556,-87.835,-88.116,-88.498,-88.809,-88.878,-89.013,-89.797,-91.279,-92.725,
--93.419,-93.467,-93.511,-93.869,-94.310,-94.582,-94.761,-94.990,-95.230,-95.408,-95.589,-95.824,-95.997,-95.988,-95.893,-95.916,
--96.111,-96.359,-96.551,-96.653,-96.622,-96.423,-96.131,-95.903,-95.780,-95.616,-95.239,-94.649,-93.969,-93.222,-92.255,-90.961,
--89.557,-88.523,-88.186,-88.399,-88.694,-88.705,-88.366,-87.779,-87.057,-86.297,-85.544,-84.709,-83.644,-82.369,-81.094,-79.961,
--78.902,-77.822,-76.789,-75.894,-75.046,-74.064,-72.889,-71.561,-70.072,-68.434,-66.834,-65.517,-64.518,-63.666,-62.854,-62.110,
--61.390,-60.538,-59.497,-58.392,-57.296,-56.077,-54.599,-52.944,-51.298,-49.748,-48.289,-46.945,-45.704,-44.435,-43.018,-41.544,
--40.243,-39.212,-38.301,-37.268,-35.941,-34.281,-32.427,-30.695,-29.362,-28.357,-27.263,-25.739,-23.924,-22.335,-21.383,-21.045,
--21.013,-21.044,-21.066,-20.950,-20.343,-18.895,-16.661,-14.192,-12.125,-10.684,-9.559,-8.166,-6.020,-2.994,.564,3.942,
-6.447,7.847,8.492,8.978,9.677,10.563,11.427,12.176,12.867,13.545,14.176,14.776,15.508,16.514,17.704,18.836,
-19.794,20.670,21.544,22.339,22.989,23.598,24.322,25.149,25.948,26.679,27.423,28.209,28.972,29.668,30.341,31.032,
-31.741,32.483,33.295,34.144,34.954,35.748,36.640,37.623,38.496,39.134,39.706,40.460,41.329,41.969,42.217,42.343,
-42.762,43.614,44.740,45.949,47.138,48.222,49.126,49.886,50.601,51.264,51.756,52.037,52.160,52.064,51.579,50.852,
-50.590,51.548,53.744,56.355,58.378,59.245,58.954,58.031,57.459,58.177,60.215,62.448,63.538,63.134,62.020,61.185,
-60.941,60.877,60.398,59.286,57.926,57.031,57.032,57.709,58.475,58.923,59.019,58.939,58.957,59.350,60.101,60.708,
-60.641,60.005,59.464,59.471,59.873,60.339,60.767,61.104,61.105,60.590,59.765,59.066,58.818,59.139,59.892,60.540,
-60.350,59.106,57.432,56.135,55.484,55.498,56.570,59.137,62.699,65.851,67.558,68.050,68.245,68.663,69.169,69.486,
-69.587,69.669,69.999,70.726,71.726,72.737,73.735,75.032,76.876,79.080,81.178,82.717,83.316,82.744,81.272,79.720,
-78.749,78.188,77.425,76.382,75.657,75.630,75.942,76.071,76.044,76.218,76.629,76.984,77.190,77.449,77.802,77.962,
-77.771,77.498,77.476,77.620,77.596,77.346,77.166,77.263,77.494,77.628,77.670,77.789,78.048,78.354,78.625,78.874,
-79.150,79.468,79.809,80.127,80.365,80.504,80.568,80.545,80.372,80.037,79.645,79.305,79.009,78.692,78.350,77.992,
-77.561,77.033,76.523,76.111,75.579,74.554,72.936,71.027,69.184,67.557,66.182,65.085,64.169,63.269,62.512,62.369,
-63.058,64.044,64.506,64.248,63.813,63.666,63.658,63.415,62.912,62.404,61.992,61.548,60.985,60.367,59.751,59.133,
-58.526,57.974,57.451,56.881,56.243,55.581,54.916,54.260,53.697,53.308,53.012,52.621,52.085,51.553,51.139,50.756,
-50.250,49.577,48.767,47.849,46.929,46.234,45.912,45.812,45.608,45.147,44.550,44.000,43.566,43.220,42.912,42.569,
-42.156,41.751,41.472,41.275,40.965,40.469,39.959,39.623,39.414,39.163,38.836,38.532,38.253,37.843,37.178,36.340,
-35.542,34.948,34.559,34.247,33.898,33.527,33.204,32.900,32.502,32.033,31.692,31.559,31.399,30.923,30.181,29.471,
-28.945,28.529,28.198,28.029,27.939,27.637,27.011,26.340,25.956,25.872,25.890,25.914,25.950,25.925,25.750,25.501,
-25.320,25.179,24.917,24.504,24.072,23.681,23.263,22.807,22.411,22.089,21.712,21.228,20.783,20.537,20.447,20.355,
-20.195,20.020,19.873,19.749,19.613,19.395,19.013,18.497,18.066,17.965,18.217,18.582,18.775,18.716,18.551,18.476,
-18.518,18.512,18.292,17.903,17.559,17.404,17.400,17.471,17.630,17.858,17.951,17.673,17.063,16.462,16.181,16.215,
-16.332,16.370,16.363,16.404,16.477,16.470,16.326,16.129,16.019,16.041,16.117,16.176,16.249,16.397,16.573,16.650,
-16.580,16.461,16.405,16.393,16.313,16.108,15.834,15.583,15.408,15.328,15.336,15.373,15.352,15.247,15.120,15.021,
-14.899,14.682,14.419,14.249,14.228,14.270,14.276,14.252,14.233,14.192,14.101,14.029,14.063,14.162,14.217,14.233,
-14.333,14.531,14.650,14.540,14.294,14.128,14.116,14.146,14.106,13.999,13.865,13.702,13.509,13.331,13.208,13.119,
-13.035,12.992,13.047,13.184,13.304,13.312,13.198,13.023,12.852,12.702,12.555,12.400,12.251,12.119,11.981,11.798,
-11.575,11.352,11.150,10.937,10.677,10.377,10.074,9.781,9.483,9.178,8.887,8.618,8.348,8.052,7.751,7.493,
-7.295,7.126,6.932,6.682,6.379,6.039,5.676,5.312,4.972,4.665,4.375,4.076,3.774,3.492,3.244,3.024,
-2.819,2.615,2.385,2.099,1.764,1.427,1.132,.873,.606,.301,-.034,-.382,-.730,-1.073,-1.409,-1.747,
--2.099,-2.459,-2.799,-3.101,-3.384,-3.691,-4.039,-4.397,-4.717,-4.987,-5.231,-5.485,-5.770,-6.094,-6.459,-6.842,
--7.192,-7.466,-7.678,-7.889,-8.141,-8.425,-8.700,-8.944,-9.152,-9.333,-9.511,-9.730,-10.009,-10.312,-10.580,-10.794,
--10.986,-11.185,-11.380,-11.552,-11.722,-11.940,-12.236,-12.582,-12.909,-13.168,-13.373,-13.581,-13.836,-14.134,-14.437,-14.713,
--14.948,-15.141,-15.308,-15.487,-15.696,-15.908,-16.077,-16.193,-16.292,-16.415,-16.567,-16.728,-16.881,-17.021,-17.151,-17.278,
--17.410,-17.543,-17.661,-17.758,-17.850,-17.960,-18.090,-18.223,-18.343,-18.446,-18.536,-18.607,-18.646,-18.661,-18.685,-18.743,
--18.813,-18.848,-18.831,-18.793,-18.762,-18.737,-18.704,-18.665,-18.621,-18.558,-18.474,-18.397,-18.344,-18.292,-18.211,-18.100,
--17.979,-17.851,-17.715,-17.594,-17.505,-17.432,-17.346,-17.251,-17.166,-17.083,-16.982,-16.873,-16.767,-16.646,-16.507,-16.400,
--16.367,-16.358,-16.290,-16.175,-16.088,-16.036,-15.945,-15.802,-15.691,-15.659,-15.628,-15.530,-15.405,-15.328,-15.287,-15.231,
--15.170,-15.145,-15.136,-15.092,-15.015,-14.951,-14.913,-14.876,-14.835,-14.812,-14.796,-14.763,-14.722,-14.708,-14.714,-14.688,
--14.613,-14.530,-14.472,-14.429,-14.371,-14.299,-14.238,-14.202,-14.185,-14.167,-14.130,-14.078,-14.027,-13.986,-13.951,-13.916,
--13.880,-13.837,-13.777,-13.706,-13.637,-13.568,-13.484,-13.386,-13.288,-13.187,-13.066,-12.934,-12.813,-12.689,-12.532,-12.352,
--12.185,-12.029,-11.858,-11.678,-11.521,-11.366,-11.158,-10.905,-10.667,-10.439,-10.157,-9.829,-9.535,-9.284,-8.990,-8.645,
--8.354,-8.144,-7.899,-7.551,-7.190,-6.885,-6.552,-6.111,-5.638,-5.217,-4.787,-4.273,-3.760,-3.342,-2.948,-2.468,
--1.950,-1.493,-1.050,-.532,.024,.562,1.154,1.817,2.360,2.657,2.863,3.057,2.909,2.163,1.292,1.126,
-1.833,2.862,3.917,5.337,7.342,9.579,11.758,14.081,16.546,18.389,18.908,18.426,17.705,16.642,14.484,11.352,
-8.708,7.900,8.805,10.257,11.393,12.175,12.920,13.831,14.935,16.140,17.261,18.175,18.944,19.705,20.453,21.029,
-21.282,21.187,20.863,20.535,20.389,20.415,20.441,20.329,20.082,19.750,19.360,18.949,18.553,18.125,17.596,17.030,
-16.551,16.077,15.348,14.292,13.185,12.277,11.475,10.584,9.696,9.073,8.732,8.396,7.875,7.240,6.595,5.881,
-4.988,3.923,2.767,1.572,.378,-.742,-1.736,-2.612,-3.404,-4.147,-4.888,-5.629,-6.246,-6.586,-6.677,-6.777,
--7.120,-7.695,-8.338,-8.948,-9.545,-10.156,-10.767,-11.361,-11.936,-12.471,-12.923,-13.225,-13.274,-12.996,-12.542,-12.336,
--12.770,-13.841,-15.195,-16.523,-17.746,-18.789,-19.421,-19.485,-19.159,-18.804,-18.604,-18.501,-18.431,-18.426,-18.503,-18.664,
--19.016,-19.715,-20.704,-21.654,-22.254,-22.466,-22.430,-22.290,-22.189,-22.287,-22.617,-23.016,-23.336,-23.655,-24.124,-24.668,
--25.036,-25.129,-25.104,-25.142,-25.242,-25.316,-25.359,-25.457,-25.713,-26.167,-26.741,-27.232,-27.456,-27.437,-27.373,-27.398,
--27.437,-27.322,-26.957,-26.341,-25.503,-24.485,-23.368,-22.273,-21.366,-20.808,-20.619,-20.582,-20.396,-19.926,-19.228,-18.358,
--17.308,-16.180,-15.227,-14.608,-14.191,-13.719,-13.076,-12.277,-11.338,-10.323,-9.479,-9.077,-9.097,-9.223,-9.219,-9.186,
--9.342,-9.658,-9.852,-9.718,-9.346,-8.970,-8.664,-8.297,-7.801,-7.396,-7.418,-7.870,-8.275,-8.100,-7.313,-6.430,
--5.977,-5.979,-6.041,-5.849,-5.498,-5.313,-5.435,-5.673,-5.731,-5.517,-5.158,-4.799,-4.458,-4.095,-3.721,-3.398,
--3.174,-3.060,-3.028,-3.010,-2.926,-2.740,-2.484,-2.194,-1.879,-1.560,-1.291,-1.088,-.895,-.655,-.394,-.164,
-.041,.271,.539,.831,1.149,1.512,1.904,2.285,2.635,2.959,3.264,3.583,3.965,4.405,4.823,5.160,
-5.470,5.834,6.232,6.588,6.902,7.239,7.622,8.020,8.438,8.920,9.454,9.967,10.424,10.867,11.324,11.776,
-12.215,12.661,13.103,13.504,13.880,14.288,14.718,15.104,15.431,15.754,16.090,16.396,16.668,16.960,17.264,17.511,
-17.731,18.062,18.527,18.949,19.174,19.268,19.361,19.422,19.339,19.150,19.006,18.962,18.944,18.919,18.929,18.973,
-18.990,18.964,18.940,18.907,18.806,18.643,18.510,18.444,18.396,18.335,18.298,18.285,18.233,18.122,18.022,17.985,
-17.967,17.920,17.867,17.850,17.853,17.840,17.812,17.775,17.714,17.642,17.624,17.695,17.819,17.955,18.110,18.283,
-18.417,18.479,18.512,18.550,18.538,18.408,18.216,18.003,17.801,17.609,17.374,17.063,16.715,16.375,16.033,15.647,
-15.218,14.811,14.473,14.165,13.789,13.313,12.813,12.389,12.047,11.726,11.394,11.062,10.733,10.398,10.077,9.803,
-9.560,9.287,8.973,8.678,8.450,8.247,7.949,7.448,6.722,5.882,5.129,4.665,4.607,4.967,5.623,6.276,
-6.568,6.347,5.781,5.134,4.487,3.794,3.118,2.646,2.486,2.609,2.970,3.497,3.974,4.118,3.849,3.350,
-2.828,2.349,1.912,1.476,.876,-.071,-1.287,-2.456,-3.418,-4.352,-5.419,-6.479,-7.315,-7.976,-8.635,-9.263,
--9.707,-10.002,-10.379,-10.957,-11.624,-12.221,-12.687,-13.039,-13.341,-13.672,-14.030,-14.322,-14.545,-14.862,-15.390,-16.003,
--16.503,-16.883,-17.251,-17.591,-17.801,-17.891,-17.961,-18.039,-18.098,-18.162,-18.226,-18.184,-18.000,-17.831,-17.760,-17.595,
--17.185,-16.738,-16.511,-16.375,-16.081,-15.706,-15.347,-14.608,-13.141,-11.609,-11.182,-11.848,-12.173,-11.252,-10.081,-10.229,
--11.735,-13.261,-13.980,-14.330,-14.920,-15.664,-16.257,-16.788,-17.475,-18.232,-18.866,-19.391,-19.866,-20.198,-20.327,-20.392,
--20.485,-20.449,-20.127,-19.660,-19.331,-19.253,-19.321,-19.349,-19.135,-18.591,-17.980,-17.828,-18.386,-19.290,-19.959,-20.251,
--20.542,-21.238,-22.430,-23.990,-25.772,-27.634,-29.389,-30.825,-31.790,-32.271,-32.450,-32.678,-33.290,-34.407,-35.855,-37.272,
--38.334,-38.962,-39.332,-39.660,-40.006,-40.340,-40.715,-41.227,-41.828,-42.348,-42.746,-43.143,-43.569,-43.868,-43.962,-44.004,
--44.145,-44.295,-44.321,-44.321,-44.472,-44.710,-44.788,-44.647,-44.483,-44.439,-44.446,-44.424,-44.435,-44.529,-44.595,-44.500,
--44.286,-44.105,-44.021,-43.998,-44.029,-44.159,-44.357,-44.493,-44.495,-44.452,-44.495,-44.609,-44.659,-44.601,-44.536,-44.499,
--44.311,-43.811,-43.186,-42.879,-43.118,-43.717,-44.427,-45.296,-46.489,-47.853,-48.952,-49.546,-49.848,-50.228,-50.815,-51.481,
--52.110,-52.721,-53.360,-53.988,-54.543,-55.048,-55.607,-56.288,-57.036,-57.759,-58.466,-59.252,-60.110,-60.874,-61.440,-61.948,
--62.616,-63.442,-64.205,-64.781,-65.294,-65.907,-66.606,-67.270,-67.840,-68.340,-68.794,-69.229,-69.690,-70.181,-70.643,-71.067,
--71.559,-72.196,-72.892,-73.501,-73.994,-74.445,-74.881,-75.296,-75.766,-76.409,-77.229,-78.116,-79.009,-79.929,-80.852,-81.711,
--82.524,-83.378,-84.233,-84.929,-85.437,-85.926,-86.468,-86.896,-87.099,-87.264,-87.576,-87.891,-88.033,-88.309,-89.261,-90.833,
--92.225,-92.789,-92.756,-92.807,-93.185,-93.596,-93.823,-93.999,-94.261,-94.508,-94.640,-94.761,-94.979,-95.194,-95.260,-95.239,
--95.319,-95.557,-95.824,-95.969,-95.923,-95.681,-95.321,-95.018,-94.930,-95.015,-95.036,-94.774,-94.214,-93.487,-92.666,-91.678,
--90.459,-89.191,-88.275,-87.977,-88.138,-88.308,-88.159,-87.694,-87.076,-86.414,-85.746,-85.062,-84.269,-83.238,-81.981,-80.688,
--79.524,-78.460,-77.420,-76.454,-75.635,-74.862,-73.932,-72.758,-71.381,-69.826,-68.130,-66.487,-65.161,-64.209,-63.454,-62.742,
--62.076,-61.453,-60.742,-59.829,-58.750,-57.577,-56.291,-54.858,-53.349,-51.853,-50.360,-48.842,-47.375,-46.054,-44.825,-43.538,
--42.175,-40.884,-39.775,-38.759,-37.631,-36.242,-34.598,-32.854,-31.245,-29.917,-28.759,-27.458,-25.818,-24.017,-22.495,-21.546,
--21.040,-20.617,-20.122,-19.763,-19.759,-19.873,-19.434,-17.914,-15.473,-12.886,-10.915,-9.703,-8.692,-7.081,-4.435,-1.013,
-2.428,5.168,6.969,8.086,8.928,9.723,10.486,11.193,11.910,12.699,13.480,14.093,14.560,15.152,16.104,17.323,
-18.516,19.555,20.542,21.515,22.321,22.880,23.385,24.074,24.935,25.781,26.541,27.284,28.019,28.665,29.226,29.815,
-30.479,31.164,31.864,32.649,33.513,34.349,35.151,36.045,37.055,37.978,38.666,39.281,40.076,41.003,41.739,42.122,
-42.358,42.753,43.409,44.273,45.303,46.465,47.622,48.609,49.388,50.029,50.551,50.893,51.011,50.884,50.447,49.724,
-49.077,49.116,50.187,52.050,54.156,56.064,57.426,57.859,57.328,56.640,57.043,58.972,61.425,62.874,62.719,61.654,
-60.759,60.495,60.500,60.106,58.997,57.544,56.548,56.545,57.339,58.258,58.783,58.841,58.673,58.635,58.988,59.608,
-59.984,59.783,59.353,59.320,59.748,60.105,60.112,60.112,60.402,60.630,60.249,59.301,58.379,57.975,58.163,58.724,
-59.258,59.279,58.564,57.378,56.151,55.101,54.494,55.015,57.285,60.900,64.449,66.734,67.704,68.057,68.302,68.491,
-68.609,68.835,69.429,70.543,72.085,73.689,74.939,75.788,76.668,78.049,79.933,81.859,83.258,83.717,83.136,81.889,
-80.688,79.998,79.588,78.907,77.853,76.891,76.413,76.318,76.353,76.538,76.996,77.553,77.859,77.844,77.774,77.808,
-77.777,77.516,77.182,77.048,77.086,77.006,76.682,76.329,76.205,76.307,76.463,76.607,76.821,77.155,77.554,77.945,
-78.316,78.689,79.090,79.531,79.972,80.328,80.541,80.637,80.656,80.577,80.385,80.166,80.013,79.890,79.680,79.338,
-78.885,78.311,77.633,76.991,76.492,75.960,75.043,73.616,71.856,69.934,67.902,65.989,64.639,63.986,63.580,62.960,
-62.355,62.380,63.128,63.968,64.320,64.245,64.115,64.042,63.880,63.562,63.161,62.708,62.187,61.637,61.106,60.536,
-59.865,59.180,58.616,58.141,57.598,56.933,56.229,55.549,54.891,54.313,53.903,53.593,53.169,52.550,51.922,51.483,
-51.169,50.735,50.035,49.129,48.188,47.411,46.958,46.810,46.706,46.356,45.722,45.012,44.412,43.935,43.528,43.185,
-42.900,42.622,42.320,42.019,41.713,41.334,40.861,40.390,40.028,39.758,39.487,39.193,38.907,38.601,38.160,37.504,
-36.689,35.885,35.263,34.877,34.618,34.327,33.958,33.577,33.206,32.783,32.318,31.948,31.717,31.439,30.935,30.310,
-29.792,29.396,28.989,28.638,28.572,28.728,28.646,28.015,27.101,26.429,26.206,26.246,26.323,26.339,26.230,25.962,
-25.645,25.436,25.322,25.133,24.793,24.391,23.985,23.521,22.989,22.495,22.097,21.717,21.298,20.927,20.702,20.566,
-20.392,20.155,19.923,19.735,19.581,19.454,19.310,19.036,18.582,18.139,18.030,18.346,18.783,18.932,18.728,18.488,
-18.504,18.675,18.665,18.347,17.958,17.753,17.691,17.585,17.459,17.530,17.814,17.979,17.705,17.072,16.477,16.212,
-16.246,16.375,16.454,16.478,16.509,16.568,16.587,16.476,16.258,16.081,16.057,16.142,16.238,16.349,16.542,16.773,
-16.905,16.896,16.853,16.860,16.851,16.728,16.502,16.254,16.008,15.763,15.580,15.535,15.569,15.521,15.330,15.113,
-14.985,14.881,14.673,14.371,14.132,14.056,14.094,14.166,14.251,14.321,14.290,14.119,13.921,13.842,13.888,13.950,
-14.001,14.118,14.306,14.418,14.327,14.100,13.906,13.826,13.829,13.873,13.915,13.866,13.649,13.332,13.092,13.005,
-12.971,12.871,12.747,12.735,12.870,13.033,13.077,12.969,12.781,12.603,12.468,12.353,12.235,12.118,12.007,11.873,
-11.684,11.457,11.254,11.088,10.899,10.635,10.328,10.037,9.768,9.482,9.177,8.890,8.625,8.331,7.988,7.658,
-7.416,7.257,7.097,6.875,6.601,6.308,6.002,5.664,5.300,4.950,4.639,4.349,4.046,3.726,3.422,3.162,
-2.941,2.737,2.525,2.280,1.981,1.639,1.300,1.000,.732,.461,.163,-.158,-.493,-.833,-1.168,-1.492,
--1.816,-2.157,-2.513,-2.852,-3.154,-3.433,-3.729,-4.066,-4.418,-4.735,-4.991,-5.209,-5.431,-5.669,-5.920,-6.202,
--6.544,-6.928,-7.282,-7.556,-7.793,-8.069,-8.391,-8.692,-8.919,-9.088,-9.247,-9.427,-9.646,-9.912,-10.206,-10.486,
--10.729,-10.953,-11.177,-11.387,-11.562,-11.716,-11.902,-12.147,-12.429,-12.694,-12.907,-13.084,-13.273,-13.513,-13.797,-14.090,
--14.362,-14.605,-14.816,-14.994,-15.150,-15.312,-15.494,-15.670,-15.810,-15.924,-16.047,-16.200,-16.368,-16.524,-16.667,-16.812,
--16.973,-17.146,-17.307,-17.431,-17.511,-17.573,-17.660,-17.795,-17.953,-18.080,-18.149,-18.189,-18.232,-18.275,-18.297,-18.309,
--18.348,-18.414,-18.464,-18.465,-18.433,-18.403,-18.375,-18.336,-18.288,-18.238,-18.177,-18.100,-18.026,-17.974,-17.926,-17.858,
--17.764,-17.659,-17.540,-17.407,-17.284,-17.189,-17.104,-17.006,-16.910,-16.838,-16.778,-16.692,-16.580,-16.465,-16.347,-16.220,
--16.113,-16.057,-16.023,-15.956,-15.863,-15.795,-15.746,-15.649,-15.499,-15.377,-15.332,-15.305,-15.227,-15.121,-15.044,-14.995,
--14.945,-14.899,-14.880,-14.871,-14.836,-14.784,-14.745,-14.721,-14.692,-14.662,-14.651,-14.649,-14.630,-14.601,-14.592,-14.600,
--14.596,-14.564,-14.519,-14.477,-14.434,-14.378,-14.313,-14.249,-14.201,-14.173,-14.155,-14.136,-14.116,-14.099,-14.069,-14.016,
--13.956,-13.913,-13.880,-13.830,-13.771,-13.725,-13.682,-13.606,-13.497,-13.385,-13.279,-13.162,-13.040,-12.930,-12.812,-12.657,
--12.492,-12.365,-12.250,-12.078,-11.860,-11.673,-11.525,-11.349,-11.124,-10.898,-10.669,-10.382,-10.055,-9.780,-9.549,-9.251,
--8.881,-8.575,-8.380,-8.152,-7.797,-7.420,-7.115,-6.793,-6.361,-5.897,-5.487,-5.048,-4.500,-3.958,-3.552,-3.185,
--2.707,-2.177,-1.723,-1.283,-.729,-.125,.401,.912,1.490,1.967,2.164,2.225,2.322,2.180,1.477,.653,
-.703,2.005,3.917,5.742,7.524,9.565,11.740,13.733,15.512,17.048,17.933,17.860,17.210,16.532,15.623,13.852,
-11.396,9.446,8.940,9.598,10.488,11.111,11.618,12.279,13.170,14.252,15.434,16.570,17.565,18.468,19.372,20.249,
-20.961,21.381,21.453,21.234,20.923,20.746,20.741,20.750,20.644,20.445,20.201,19.890,19.492,19.030,18.509,17.919,
-17.349,16.902,16.471,15.785,14.780,13.729,12.864,12.072,11.159,10.233,9.565,9.172,8.796,8.275,7.681,7.080,
-6.375,5.461,4.361,3.151,1.872,.578,-.632,-1.709,-2.695,-3.635,-4.514,-5.299,-5.944,-6.334,-6.374,-6.196,
--6.160,-6.513,-7.117,-7.638,-7.955,-8.258,-8.762,-9.436,-10.079,-10.561,-10.930,-11.304,-11.683,-11.926,-11.925,-11.842,
--12.080,-12.944,-14.321,-15.797,-17.066,-18.122,-19.039,-19.730,-20.039,-19.983,-19.752,-19.512,-19.317,-19.190,-19.164,-19.224,
--19.346,-19.607,-20.129,-20.867,-21.569,-22.014,-22.196,-22.227,-22.192,-22.176,-22.308,-22.628,-22.998,-23.292,-23.614,-24.144,
--24.810,-25.304,-25.444,-25.363,-25.272,-25.211,-25.122,-25.052,-25.139,-25.456,-25.956,-26.524,-27.035,-27.378,-27.515,-27.511,
--27.462,-27.384,-27.202,-26.826,-26.220,-25.407,-24.439,-23.374,-22.311,-21.425,-20.891,-20.707,-20.622,-20.352,-19.816,-19.092,
--18.193,-17.087,-15.932,-15.073,-14.655,-14.404,-13.938,-13.184,-12.321,-11.428,-10.451,-9.487,-8.829,-8.634,-8.713,-8.794,
--8.870,-9.119,-9.529,-9.797,-9.637,-9.093,-8.451,-7.922,-7.507,-7.184,-7.094,-7.407,-7.986,-8.327,-7.965,-6.965,
--5.923,-5.424,-5.515,-5.743,-5.693,-5.406,-5.257,-5.468,-5.850,-6.020,-5.809,-5.358,-4.889,-4.490,-4.133,-3.799,
--3.509,-3.301,-3.199,-3.199,-3.228,-3.183,-3.027,-2.807,-2.562,-2.269,-1.928,-1.616,-1.393,-1.208,-.973,-.690,
--.430,-.210,.024,.300,.594,.897,1.239,1.625,2.012,2.363,2.688,3.023,3.402,3.841,4.307,4.719,
-5.040,5.326,5.656,6.023,6.372,6.706,7.085,7.529,8.004,8.501,9.038,9.593,10.095,10.518,10.903,11.289,
-11.679,12.084,12.525,12.985,13.414,13.810,14.216,14.634,15.011,15.337,15.651,15.965,16.248,16.509,16.806,17.135,
-17.431,17.705,18.053,18.489,18.862,19.048,19.111,19.175,19.233,19.201,19.094,19.009,18.972,18.931,18.874,18.848,
-18.856,18.850,18.812,18.770,18.719,18.621,18.483,18.359,18.277,18.223,18.201,18.223,18.245,18.198,18.087,17.987,
-17.937,17.907,17.877,17.863,17.866,17.859,17.837,17.816,17.781,17.702,17.620,17.625,17.738,17.882,18.004,18.130,
-18.277,18.383,18.401,18.374,18.358,18.320,18.198,18.003,17.664,17.457,17.204,16.903,16.568,16.229,15.901,15.590,
-15.282,14.944,14.554,14.119,13.659,13.170,12.661,12.195,11.846,11.606,11.379,11.080,10.701,10.288,9.908,9.615,
-9.403,9.199,8.928,8.612,8.341,8.172,8.073,7.937,7.621,7.013,6.154,5.254,4.554,4.193,4.222,4.638,
-5.286,5.830,5.985,5.751,5.295,4.686,3.916,3.155,2.715,2.714,2.966,3.243,3.476,3.623,3.569,3.272,
-2.861,2.466,2.073,1.610,1.060,.398,-.414,-1.290,-2.046,-2.674,-3.416,-4.423,-5.508,-6.417,-7.157,-7.862,
--8.504,-8.964,-9.324,-9.807,-10.484,-11.210,-11.850,-12.375,-12.792,-13.137,-13.512,-13.963,-14.364,-14.582,-14.693,-14.882,
--15.184,-15.506,-15.854,-16.323,-16.878,-17.339,-17.588,-17.661,-17.661,-17.702,-17.861,-18.061,-18.094,-17.903,-17.702,-17.636,
--17.525,-17.189,-16.812,-16.630,-16.492,-16.145,-15.742,-15.489,-14.994,-13.737,-12.204,-11.637,-12.341,-13.080,-12.746,-11.901,
--11.881,-12.899,-13.958,-14.410,-14.623,-15.087,-15.696,-16.202,-16.724,-17.434,-18.184,-18.772,-19.256,-19.741,-20.128,-20.319,
--20.437,-20.556,-20.462,-19.948,-19.232,-18.788,-18.822,-19.077,-19.140,-18.802,-18.222,-17.822,-17.978,-18.682,-19.551,-20.238,
--20.729,-21.229,-21.903,-22.856,-24.208,-25.978,-27.934,-29.705,-31.048,-31.926,-32.401,-32.601,-32.783,-33.284,-34.290,-35.670,
--37.061,-38.144,-38.856,-39.350,-39.769,-40.123,-40.411,-40.754,-41.262,-41.836,-42.280,-42.580,-42.903,-43.285,-43.549,-43.607,
--43.625,-43.775,-43.989,-44.119,-44.186,-44.287,-44.378,-44.359,-44.276,-44.262,-44.307,-44.291,-44.221,-44.225,-44.310,-44.325,
--44.190,-44.017,-43.917,-43.858,-43.787,-43.769,-43.880,-44.047,-44.105,-44.010,-43.898,-43.913,-44.041,-44.132,-44.081,-43.899,
--43.612,-43.161,-42.512,-41.865,-41.576,-41.807,-42.362,-43.000,-43.800,-45.008,-46.562,-47.997,-48.907,-49.344,-49.684,-50.195,
--50.864,-51.569,-52.251,-52.912,-53.542,-54.117,-54.656,-55.219,-55.843,-56.504,-57.173,-57.885,-58.690,-59.531,-60.249,-60.790,
--61.316,-62.013,-62.831,-63.561,-64.132,-64.685,-65.336,-66.013,-66.604,-67.120,-67.627,-68.131,-68.608,-69.084,-69.582,-70.070,
--70.540,-71.077,-71.739,-72.439,-73.041,-73.525,-73.967,-74.399,-74.815,-75.278,-75.880,-76.626,-77.452,-78.340,-79.299,-80.265,
--81.139,-81.940,-82.751,-83.534,-84.177,-84.717,-85.310,-85.908,-86.235,-86.213,-86.171,-86.409,-86.799,-87.130,-87.646,-88.792,
--90.424,-91.744,-92.203,-92.125,-92.178,-92.543,-92.911,-93.106,-93.285,-93.561,-93.798,-93.884,-93.943,-94.117,-94.331,-94.435,
--94.456,-94.555,-94.796,-95.060,-95.162,-94.996,-94.599,-94.163,-93.944,-94.051,-94.320,-94.431,-94.161,-93.524,-92.685,-91.763,
--90.747,-89.602,-88.463,-87.644,-87.372,-87.507,-87.643,-87.487,-87.065,-86.554,-86.040,-85.486,-84.832,-84.001,-82.920,-81.629,
--80.315,-79.145,-78.121,-77.173,-76.313,-75.562,-74.798,-73.830,-72.597,-71.174,-69.616,-67.951,-66.335,-65.022,-64.115,-63.463,
--62.878,-62.303,-61.726,-61.038,-60.124,-59.001,-57.770,-56.485,-55.149,-53.788,-52.407,-50.941,-49.342,-47.729,-46.304,-45.115,
--43.999,-42.788,-41.502,-40.258,-39.064,-37.780,-36.295,-34.673,-33.100,-31.707,-30.451,-29.157,-27.664,-25.961,-24.234,-22.774,
--21.754,-21.043,-20.307,-19.399,-18.623,-18.455,-18.921,-19.326,-18.736,-16.816,-14.169,-11.830,-10.372,-9.446,-8.163,-5.909,
--2.837,.382,3.189,5.469,7.362,8.932,10.094,10.822,11.303,11.847,12.620,13.488,14.182,14.648,15.170,16.035,
-17.187,18.331,19.340,20.336,21.365,22.230,22.795,23.251,23.886,24.715,25.539,26.263,26.960,27.651,28.262,28.797,
-29.368,30.010,30.645,31.261,31.965,32.792,33.637,34.448,35.317,36.290,37.220,37.984,38.694,39.545,40.510,41.364,
-41.982,42.444,42.867,43.312,43.891,44.763,45.932,47.146,48.119,48.791,49.284,49.678,49.921,49.908,49.559,48.876,
-48.083,47.668,48.081,49.328,51.002,52.745,54.461,55.951,56.689,56.373,55.650,55.786,57.393,59.702,61.309,61.519,
-60.801,60.080,59.831,59.784,59.324,58.152,56.689,55.799,55.996,56.970,57.950,58.434,58.451,58.310,58.302,58.548,
-58.875,58.922,58.617,58.428,58.806,59.470,59.696,59.355,59.135,59.522,60.050,59.939,59.148,58.328,57.935,57.842,
-57.761,57.615,57.419,57.121,56.643,55.934,55.024,54.277,54.477,56.272,59.399,62.718,65.159,66.445,66.909,66.938,
-66.820,66.865,67.365,68.442,70.023,71.887,73.655,74.914,75.594,76.151,77.190,78.875,80.779,82.261,82.921,82.806,
-82.330,81.965,81.845,81.658,81.022,79.935,78.771,77.867,77.301,77.076,77.289,77.948,78.736,79.173,79.061,78.642,
-78.267,78.003,77.662,77.136,76.549,76.069,75.700,75.347,74.999,74.753,74.695,74.842,75.182,75.681,76.251,76.789,
-77.267,77.718,78.157,78.580,79.020,79.503,79.980,80.348,80.567,80.668,80.677,80.613,80.531,80.471,80.375,80.150,
-79.809,79.425,78.988,78.447,77.861,77.306,76.638,75.598,74.172,72.555,70.720,68.405,65.784,63.748,63.050,63.328,
-63.466,62.931,62.304,62.393,63.228,64.162,64.656,64.683,64.504,64.348,64.265,64.116,63.718,63.065,62.365,61.769,
-61.193,60.516,59.825,59.281,58.848,58.327,57.645,56.916,56.229,55.572,54.970,54.506,54.136,53.652,52.955,52.235,
-51.743,51.459,51.114,50.499,49.668,48.848,48.257,47.958,47.803,47.519,46.930,46.136,45.390,44.827,44.386,43.977,
-43.624,43.380,43.196,42.956,42.600,42.167,41.712,41.265,40.839,40.456,40.139,39.892,39.682,39.433,39.069,38.568,
-37.951,37.242,36.493,35.828,35.379,35.130,34.903,34.546,34.067,33.559,33.068,32.621,32.251,31.923,31.502,30.940,
-30.394,30.005,29.674,29.256,28.908,28.939,29.270,29.353,28.798,27.846,27.054,26.685,26.606,26.635,26.684,26.633,
-26.369,25.975,25.678,25.540,25.387,25.077,24.669,24.256,23.801,23.247,22.658,22.141,21.709,21.329,21.016,20.788,
-20.587,20.342,20.079,19.866,19.698,19.526,19.361,19.224,19.038,18.717,18.388,18.357,18.714,19.104,19.062,18.582,
-18.157,18.172,18.440,18.492,18.228,17.998,18.039,18.126,17.949,17.628,17.539,17.722,17.773,17.379,16.732,16.266,
-16.168,16.303,16.470,16.584,16.640,16.674,16.724,16.766,16.701,16.500,16.290,16.209,16.237,16.281,16.361,16.566,
-16.847,17.032,17.063,17.060,17.106,17.114,16.991,16.784,16.573,16.325,16.000,15.707,15.604,15.650,15.626,15.415,
-15.133,14.933,14.786,14.565,14.254,13.973,13.825,13.823,13.950,14.184,14.419,14.478,14.281,13.963,13.738,13.682,
-13.715,13.758,13.825,13.927,13.999,13.974,13.861,13.717,13.587,13.521,13.568,13.684,13.703,13.496,13.155,12.910,
-12.854,12.847,12.728,12.529,12.421,12.490,12.654,12.756,12.712,12.552,12.365,12.224,12.131,12.043,11.934,11.805,
-11.648,11.446,11.219,11.018,10.856,10.678,10.441,10.176,9.939,9.721,9.473,9.196,8.928,8.657,8.322,7.918,
-7.545,7.293,7.139,6.975,6.742,6.467,6.192,5.910,5.587,5.230,4.886,4.593,4.330,4.053,3.744,3.429,
-3.144,2.901,2.684,2.461,2.207,1.907,1.576,1.241,.920,.611,.307,.011,-.279,-.579,-.896,-1.219,
--1.536,-1.856,-2.195,-2.548,-2.885,-3.187,-3.464,-3.750,-4.075,-4.430,-4.764,-5.031,-5.238,-5.432,-5.633,-5.830,
--6.037,-6.313,-6.682,-7.068,-7.384,-7.645,-7.938,-8.287,-8.614,-8.849,-9.014,-9.175,-9.368,-9.591,-9.849,-10.137,
--10.434,-10.717,-10.988,-11.248,-11.473,-11.646,-11.791,-11.957,-12.158,-12.366,-12.546,-12.698,-12.851,-13.040,-13.278,-13.545,
--13.802,-14.032,-14.254,-14.477,-14.684,-14.851,-14.995,-15.149,-15.314,-15.461,-15.582,-15.705,-15.852,-16.010,-16.153,-16.283,
--16.428,-16.610,-16.817,-17.013,-17.159,-17.243,-17.294,-17.372,-17.514,-17.690,-17.822,-17.873,-17.882,-17.908,-17.952,-17.977,
--17.978,-17.992,-18.037,-18.079,-18.082,-18.057,-18.031,-18.003,-17.960,-17.908,-17.861,-17.817,-17.760,-17.696,-17.638,-17.580,
--17.508,-17.426,-17.339,-17.237,-17.112,-16.985,-16.880,-16.781,-16.669,-16.561,-16.489,-16.437,-16.357,-16.236,-16.109,-15.999,
--15.893,-15.788,-15.699,-15.625,-15.549,-15.473,-15.418,-15.371,-15.294,-15.185,-15.089,-15.033,-14.985,-14.915,-14.839,-14.781,
--14.729,-14.669,-14.616,-14.585,-14.563,-14.536,-14.515,-14.513,-14.512,-14.493,-14.466,-14.455,-14.455,-14.453,-14.449,-14.448,
--14.443,-14.434,-14.430,-14.436,-14.441,-14.431,-14.404,-14.363,-14.309,-14.256,-14.211,-14.169,-14.132,-14.119,-14.132,-14.130,
--14.074,-13.987,-13.922,-13.882,-13.834,-13.782,-13.761,-13.750,-13.692,-13.580,-13.464,-13.369,-13.271,-13.166,-13.070,-12.958,
--12.793,-12.615,-12.498,-12.421,-12.279,-12.050,-11.825,-11.654,-11.484,-11.281,-11.076,-10.863,-10.587,-10.269,-10.004,-9.784,
--9.495,-9.124,-8.816,-8.619,-8.385,-8.015,-7.623,-7.310,-6.983,-6.541,-6.069,-5.661,-5.231,-4.698,-4.185,-3.807,
--3.439,-2.931,-2.378,-1.929,-1.485,-.889,-.264,.184,.539,1.003,1.463,1.682,1.748,1.850,1.720,.971,
-.079,.315,2.324,5.338,8.132,10.322,12.267,14.175,15.855,17.115,17.847,17.872,17.178,16.181,15.290,14.325,
-12.875,11.165,10.014,9.837,10.194,10.493,10.709,11.166,11.955,12.898,13.875,14.896,15.957,17.012,18.053,19.065,
-19.968,20.682,21.167,21.386,21.319,21.084,20.897,20.850,20.848,20.791,20.693,20.552,20.274,19.806,19.241,18.696,
-18.205,17.778,17.410,16.974,16.266,15.279,14.266,13.418,12.639,11.775,10.918,10.267,9.807,9.345,8.797,8.237,
-7.669,6.959,6.016,4.880,3.609,2.223,.796,-.533,-1.706,-2.784,-3.813,-4.743,-5.498,-6.023,-6.228,-6.057,
--5.696,-5.557,-5.891,-6.467,-6.824,-6.816,-6.781,-7.116,-7.818,-8.532,-8.994,-9.296,-9.710,-10.333,-10.995,-11.507,
--11.938,-12.589,-13.677,-15.093,-16.489,-17.612,-18.477,-19.234,-19.917,-20.408,-20.582,-20.449,-20.145,-19.852,-19.724,-19.806,
--20.016,-20.235,-20.455,-20.768,-21.195,-21.613,-21.892,-22.028,-22.091,-22.118,-22.149,-22.273,-22.536,-22.855,-23.157,-23.553,
--24.189,-24.953,-25.494,-25.603,-25.425,-25.216,-25.040,-24.838,-24.685,-24.777,-25.196,-25.808,-26.418,-26.922,-27.286,-27.476,
--27.480,-27.343,-27.131,-26.855,-26.465,-25.909,-25.190,-24.347,-23.425,-22.501,-21.726,-21.252,-21.058,-20.908,-20.547,-19.924,
--19.115,-18.121,-16.923,-15.729,-14.934,-14.666,-14.544,-14.070,-13.172,-12.169,-11.278,-10.422,-9.543,-8.837,-8.511,-8.473,
--8.477,-8.482,-8.671,-9.091,-9.459,-9.428,-8.947,-8.278,-7.717,-7.402,-7.371,-7.649,-8.171,-8.663,-8.726,-8.135,
--7.082,-6.086,-5.606,-5.684,-5.955,-6.019,-5.832,-5.691,-5.839,-6.154,-6.287,-6.042,-5.535,-5.001,-4.564,-4.220,
--3.943,-3.720,-3.553,-3.461,-3.461,-3.504,-3.484,-3.350,-3.149,-2.925,-2.647,-2.289,-1.930,-1.658,-1.442,-1.186,
--.873,-.574,-.318,-.070,.189,.434,.674,.973,1.350,1.745,2.101,2.441,2.823,3.268,3.745,4.195,
-4.564,4.848,5.108,5.408,5.753,6.112,6.494,6.947,7.475,8.035,8.596,9.165,9.719,10.202,10.595,10.943,
-11.290,11.644,12.009,12.404,12.822,13.231,13.626,14.035,14.456,14.846,15.190,15.517,15.841,16.142,16.424,16.719,
-17.024,17.304,17.573,17.902,18.290,18.628,18.835,18.957,19.065,19.140,19.126,19.051,18.986,18.942,18.880,18.798,
-18.737,18.706,18.672,18.620,18.560,18.495,18.419,18.342,18.277,18.219,18.171,18.164,18.201,18.221,18.172,18.080,
-17.996,17.927,17.856,17.807,17.802,17.806,17.776,17.736,17.722,17.701,17.636,17.590,17.661,17.829,17.964,18.014,
-18.047,18.117,18.167,18.134,18.050,17.981,17.922,17.823,17.664,17.331,17.169,16.917,16.593,16.249,15.910,15.572,
-15.250,14.954,14.624,14.178,13.617,13.036,12.511,12.053,11.667,11.381,11.186,10.994,10.714,10.328,9.899,9.519,
-9.252,9.072,8.882,8.617,8.323,8.091,7.948,7.865,7.793,7.635,7.245,6.560,5.718,4.951,4.399,4.107,
-4.125,4.453,4.930,5.330,5.532,5.474,5.028,4.168,3.243,2.789,2.964,3.388,3.612,3.557,3.380,3.150,
-2.854,2.538,2.256,1.931,1.437,.771,.031,-.676,-1.236,-1.586,-1.877,-2.434,-3.406,-4.579,-5.649,-6.542,
--7.316,-7.941,-8.385,-8.815,-9.440,-10.225,-10.960,-11.550,-12.062,-12.522,-12.910,-13.287,-13.735,-14.168,-14.409,-14.457,
--14.482,-14.585,-14.761,-15.070,-15.625,-16.358,-16.986,-17.285,-17.284,-17.201,-17.261,-17.537,-17.857,-17.931,-17.712,-17.477,
--17.426,-17.384,-17.139,-16.833,-16.688,-16.550,-16.170,-15.744,-15.558,-15.242,-14.137,-12.557,-11.814,-12.566,-13.835,-14.276,
--13.864,-13.601,-13.959,-14.465,-14.689,-14.819,-15.125,-15.540,-15.988,-16.618,-17.443,-18.174,-18.632,-19.007,-19.483,-19.925,
--20.154,-20.248,-20.294,-20.091,-19.437,-18.584,-18.088,-18.208,-18.640,-18.859,-18.608,-18.072,-17.688,-17.813,-18.481,-19.449,
--20.438,-21.282,-21.939,-22.522,-23.335,-24.674,-26.485,-28.342,-29.855,-30.980,-31.851,-32.487,-32.844,-33.082,-33.556,-34.488,
--35.752,-37.010,-38.018,-38.768,-39.376,-39.887,-40.253,-40.490,-40.760,-41.193,-41.701,-42.106,-42.402,-42.724,-43.071,-43.267,
--43.253,-43.218,-43.352,-43.614,-43.843,-43.963,-43.977,-43.891,-43.784,-43.806,-43.980,-44.122,-44.097,-44.021,-44.051,-44.114,
--44.031,-43.832,-43.705,-43.677,-43.599,-43.437,-43.360,-43.466,-43.611,-43.610,-43.467,-43.326,-43.288,-43.352,-43.444,-43.430,
--43.163,-42.611,-41.901,-41.249,-40.865,-40.882,-41.263,-41.792,-42.288,-42.862,-43.830,-45.285,-46.873,-48.102,-48.807,-49.227,
--49.679,-50.289,-50.998,-51.717,-52.404,-53.053,-53.665,-54.244,-54.798,-55.352,-55.940,-56.592,-57.326,-58.122,-58.895,-59.550,
--60.100,-60.681,-61.390,-62.151,-62.828,-63.422,-64.052,-64.742,-65.386,-65.932,-66.465,-67.056,-67.637,-68.122,-68.552,-69.024,
--69.551,-70.093,-70.661,-71.283,-71.912,-72.475,-72.966,-73.426,-73.858,-74.259,-74.695,-75.255,-75.951,-76.752,-77.662,-78.670,
--79.665,-80.527,-81.287,-82.048,-82.811,-83.508,-84.177,-84.874,-85.422,-85.522,-85.216,-84.981,-85.183,-85.691,-86.256,-87.045,
--88.371,-90.011,-91.230,-91.615,-91.539,-91.609,-91.950,-92.279,-92.460,-92.641,-92.903,-93.115,-93.184,-93.219,-93.346,-93.508,
--93.589,-93.614,-93.722,-93.976,-94.258,-94.367,-94.174,-93.753,-93.366,-93.278,-93.517,-93.818,-93.836,-93.403,-92.603,-91.646,
--90.682,-89.716,-88.696,-87.699,-86.982,-86.758,-86.923,-87.107,-87.023,-86.693,-86.291,-85.887,-85.398,-84.717,-83.782,-82.592,
--81.246,-79.943,-78.840,-77.931,-77.123,-76.369,-75.640,-74.821,-73.769,-72.473,-71.040,-69.536,-67.973,-66.461,-65.223,-64.380,
--63.814,-63.307,-62.744,-62.089,-61.279,-60.258,-59.083,-57.879,-56.699,-55.496,-54.223,-52.857,-51.348,-49.659,-47.918,-46.392,
--45.231,-44.284,-43.255,-42.033,-40.739,-39.461,-38.089,-36.509,-34.853,-33.400,-32.227,-31.093,-29.719,-28.079,-26.359,-24.739,
--23.312,-22.124,-21.126,-20.136,-19.030,-18.037,-17.657,-18.115,-18.908,-19.041,-17.826,-15.502,-13.037,-11.281,-10.248,-9.221,
--7.509,-5.048,-2.261,.505,3.212,5.856,8.199,9.897,10.851,11.327,11.768,12.467,13.370,14.198,14.790,15.324,
-16.094,17.128,18.176,19.085,19.972,20.942,21.850,22.524,23.063,23.701,24.470,25.198,25.823,26.455,27.152,27.820,
-28.399,28.962,29.571,30.188,30.793,31.453,32.203,32.980,33.739,34.540,35.417,36.287,37.081,37.884,38.804,39.805,
-40.747,41.553,42.216,42.719,43.113,43.625,44.499,45.685,46.824,47.619,48.111,48.521,48.916,49.127,48.958,48.383,
-47.596,46.982,46.969,47.765,49.185,50.830,52.448,53.983,55.251,55.830,55.534,54.901,54.904,56.028,57.794,59.243,
-59.822,59.720,59.490,59.443,59.361,58.732,57.365,55.804,54.979,55.328,56.377,57.293,57.686,57.750,57.800,57.963,
-58.202,58.373,58.298,58.025,57.946,58.348,58.895,58.964,58.543,58.327,58.749,59.339,59.385,58.906,58.494,58.382,
-58.149,57.396,56.305,55.386,54.911,54.732,54.508,54.060,53.643,53.878,55.272,57.702,60.454,62.752,64.174,64.694,
-64.606,64.469,64.843,65.903,67.372,68.903,70.358,71.660,72.612,73.115,73.485,74.287,75.785,77.637,79.206,80.119,
-80.524,80.832,81.276,81.701,81.781,81.369,80.607,79.719,78.827,78.020,77.513,77.596,78.357,79.461,80.282,80.378,
-79.856,79.219,78.781,78.334,77.475,76.187,74.925,74.120,73.761,73.520,73.183,72.863,72.849,73.317,74.158,75.060,
-75.777,76.319,76.837,77.388,77.897,78.340,78.804,79.340,79.872,80.293,80.583,80.764,80.843,80.826,80.718,80.502,
-80.181,79.851,79.594,79.343,78.982,78.546,78.115,77.506,76.386,74.731,72.841,70.727,67.971,64.595,61.745,60.815,
-61.838,63.278,63.657,63.013,62.518,62.988,64.120,65.062,65.329,65.121,64.938,65.019,65.126,64.856,64.117,63.206,
-62.415,61.741,61.063,60.425,59.951,59.579,59.095,58.417,57.666,56.960,56.302,55.692,55.191,54.768,54.251,53.543,
-52.791,52.226,51.873,51.523,50.989,50.307,49.671,49.235,48.972,48.693,48.190,47.415,46.534,45.786,45.265,44.884,
-44.521,44.165,43.881,43.670,43.437,43.087,42.626,42.136,41.675,41.238,40.820,40.476,40.265,40.131,39.916,39.519,
-38.990,38.427,37.824,37.134,36.437,35.924,35.660,35.469,35.116,34.552,33.908,33.320,32.836,32.434,32.036,31.559,
-31.023,30.560,30.224,29.887,29.462,29.145,29.201,29.506,29.565,29.081,28.289,27.610,27.193,26.957,26.888,26.994,
-27.075,26.855,26.358,25.913,25.707,25.567,25.263,24.819,24.387,23.975,23.475,22.876,22.292,21.812,21.434,21.134,
-20.885,20.640,20.375,20.141,19.991,19.881,19.724,19.519,19.319,19.096,18.784,18.496,18.513,18.905,19.276,19.118,
-18.441,17.817,17.712,17.958,18.087,18.018,18.088,18.417,18.616,18.333,17.803,17.528,17.561,17.465,16.983,16.397,
-16.120,16.197,16.385,16.525,16.627,16.707,16.751,16.786,16.827,16.811,16.689,16.546,16.488,16.477,16.431,16.420,
-16.584,16.875,17.075,17.096,17.079,17.138,17.182,17.088,16.890,16.671,16.402,16.037,15.688,15.535,15.568,15.578,
-15.418,15.144,14.882,14.655,14.413,14.147,13.899,13.709,13.626,13.719,14.004,14.339,14.485,14.319,13.958,13.641,
-13.502,13.497,13.519,13.522,13.528,13.563,13.615,13.633,13.561,13.402,13.257,13.244,13.347,13.395,13.251,12.984,
-12.794,12.759,12.755,12.627,12.379,12.152,12.075,12.154,12.291,12.359,12.295,12.141,11.991,11.886,11.787,11.646,
-11.469,11.275,11.066,10.842,10.631,10.450,10.275,10.080,9.884,9.716,9.557,9.365,9.137,8.891,8.601,8.219,
-7.764,7.347,7.055,6.867,6.694,6.485,6.248,6.000,5.728,5.420,5.092,4.782,4.515,4.278,4.034,3.759,
-3.466,3.184,2.935,2.709,2.479,2.218,1.921,1.602,1.274,.939,.598,.272,-.018,-.280,-.552,-.857,
--1.182,-1.508,-1.837,-2.180,-2.527,-2.857,-3.163,-3.454,-3.748,-4.070,-4.429,-4.784,-5.072,-5.282,-5.465,-5.659,
--5.845,-6.019,-6.240,-6.559,-6.929,-7.253,-7.517,-7.801,-8.143,-8.480,-8.743,-8.940,-9.125,-9.324,-9.538,-9.778,
--10.055,-10.357,-10.662,-10.961,-11.240,-11.465,-11.629,-11.775,-11.951,-12.149,-12.316,-12.433,-12.533,-12.668,-12.863,-13.107,
--13.361,-13.581,-13.764,-13.947,-14.165,-14.396,-14.593,-14.744,-14.880,-15.023,-15.165,-15.296,-15.428,-15.568,-15.698,-15.804,
--15.902,-16.029,-16.206,-16.418,-16.630,-16.800,-16.909,-16.980,-17.073,-17.223,-17.401,-17.532,-17.583,-17.592,-17.617,-17.660,
--17.688,-17.688,-17.688,-17.704,-17.716,-17.701,-17.670,-17.644,-17.618,-17.577,-17.529,-17.492,-17.463,-17.425,-17.375,-17.317,
--17.248,-17.167,-17.085,-17.007,-16.912,-16.790,-16.667,-16.573,-16.492,-16.388,-16.265,-16.162,-16.081,-15.982,-15.848,-15.712,
--15.606,-15.517,-15.417,-15.304,-15.203,-15.123,-15.061,-15.008,-14.959,-14.908,-14.859,-14.810,-14.749,-14.670,-14.594,-14.545,
--14.512,-14.465,-14.403,-14.349,-14.312,-14.279,-14.253,-14.254,-14.284,-14.311,-14.314,-14.301,-14.284,-14.271,-14.273,-14.293,
--14.307,-14.289,-14.258,-14.256,-14.295,-14.348,-14.392,-14.418,-14.417,-14.383,-14.334,-14.282,-14.216,-14.137,-14.091,-14.108,
--14.133,-14.093,-14.008,-13.947,-13.919,-13.875,-13.817,-13.794,-13.795,-13.746,-13.637,-13.533,-13.466,-13.396,-13.302,-13.212,
--13.109,-12.942,-12.738,-12.596,-12.526,-12.419,-12.216,-11.988,-11.800,-11.621,-11.419,-11.222,-11.027,-10.775,-10.472,-10.203,
--9.980,-9.704,-9.354,-9.050,-8.835,-8.579,-8.201,-7.808,-7.484,-7.133,-6.667,-6.187,-5.788,-5.381,-4.884,-4.410,
--4.048,-3.655,-3.101,-2.534,-2.114,-1.701,-1.111,-.506,-.140,.110,.536,1.063,1.390,1.525,1.623,1.404,
-.502,-.470,-.005,2.670,6.575,10.057,12.465,14.269,15.926,17.319,18.136,18.230,17.578,16.350,14.992,13.882,
-12.916,11.799,10.673,10.015,9.941,10.052,10.093,10.307,10.971,11.931,12.849,13.650,14.500,15.495,16.594,17.719,
-18.773,19.639,20.280,20.764,21.109,21.233,21.127,20.940,20.825,20.795,20.809,20.850,20.829,20.572,20.018,19.352,
-18.821,18.499,18.295,18.066,17.651,16.923,15.935,14.916,14.032,13.236,12.436,11.684,11.068,10.528,9.951,9.353,
-8.820,8.299,7.620,6.695,5.555,4.223,2.704,1.111,-.364,-1.632,-2.750,-3.762,-4.622,-5.283,-5.729,-5.892,
--5.702,-5.313,-5.123,-5.395,-5.903,-6.153,-5.972,-5.747,-5.980,-6.717,-7.535,-8.073,-8.416,-8.927,-9.789,-10.841,
--11.830,-12.698,-13.595,-14.658,-15.850,-16.993,-17.935,-18.672,-19.326,-19.988,-20.573,-20.874,-20.772,-20.386,-20.011,-19.910,
--20.142,-20.557,-20.945,-21.208,-21.399,-21.597,-21.791,-21.925,-21.996,-22.052,-22.114,-22.184,-22.288,-22.466,-22.708,-23.021,
--23.509,-24.251,-25.066,-25.568,-25.557,-25.231,-24.915,-24.704,-24.510,-24.375,-24.523,-25.066,-25.832,-26.540,-27.040,-27.322,
--27.394,-27.263,-27.001,-26.718,-26.452,-26.123,-25.636,-24.983,-24.239,-23.481,-22.753,-22.115,-21.645,-21.340,-21.056,-20.613,
--19.948,-19.092,-18.047,-16.832,-15.667,-14.915,-14.670,-14.536,-14.003,-13.003,-11.915,-11.042,-10.311,-9.564,-8.892,-8.495,
--8.347,-8.234,-8.103,-8.146,-8.473,-8.873,-9.012,-8.776,-8.337,-7.940,-7.759,-7.892,-8.334,-8.892,-9.219,-9.050,
--8.403,-7.549,-6.819,-6.436,-6.424,-6.593,-6.672,-6.548,-6.372,-6.352,-6.466,-6.470,-6.190,-5.696,-5.172,-4.729,
--4.382,-4.130,-3.964,-3.849,-3.766,-3.728,-3.722,-3.674,-3.536,-3.343,-3.135,-2.883,-2.549,-2.188,-1.889,-1.644,
--1.378,-1.074,-.782,-.523,-.272,-.032,.166,.355,.628,1.009,1.419,1.788,2.151,2.580,3.068,3.547,
-3.960,4.298,4.589,4.877,5.204,5.574,5.969,6.396,6.883,7.423,7.974,8.508,9.039,9.560,10.029,10.428,
-10.792,11.166,11.556,11.950,12.353,12.774,13.201,13.626,14.050,14.460,14.827,15.144,15.437,15.733,16.030,16.317,
-16.590,16.843,17.084,17.356,17.695,18.070,18.400,18.648,18.844,18.998,19.061,19.008,18.902,18.819,18.768,18.709,
-18.638,18.582,18.554,18.535,18.502,18.441,18.355,18.276,18.237,18.227,18.203,18.160,18.136,18.135,18.111,18.045,
-17.977,17.924,17.849,17.748,17.682,17.680,17.680,17.637,17.602,17.618,17.633,17.599,17.589,17.697,17.864,17.939,
-17.893,17.839,17.850,17.865,17.810,17.703,17.600,17.516,17.434,17.331,17.082,16.964,16.719,16.373,16.006,15.640,
-15.248,14.848,14.481,14.102,13.611,13.016,12.444,11.985,11.610,11.269,10.972,10.733,10.507,10.235,9.906,9.553,
-9.231,8.982,8.797,8.604,8.357,8.106,7.917,7.784,7.671,7.589,7.532,7.371,6.964,6.347,5.702,5.141,
-4.662,4.291,4.136,4.268,4.659,5.181,5.560,5.404,4.574,3.518,2.966,3.177,3.688,3.912,3.739,3.422,
-3.122,2.821,2.519,2.257,1.963,1.496,.831,.097,-.532,-.922,-1.065,-1.182,-1.634,-2.585,-3.828,-5.033,
--6.046,-6.846,-7.409,-7.798,-8.266,-8.996,-9.840,-10.513,-10.974,-11.405,-11.887,-12.339,-12.741,-13.172,-13.607,-13.912,
--14.053,-14.138,-14.237,-14.366,-14.632,-15.184,-15.943,-16.580,-16.839,-16.784,-16.695,-16.804,-17.139,-17.488,-17.579,-17.385,
--17.177,-17.145,-17.130,-16.933,-16.686,-16.590,-16.479,-16.094,-15.636,-15.462,-15.280,-14.375,-12.863,-11.985,-12.643,-14.172,
--15.149,-15.072,-14.606,-14.438,-14.582,-14.777,-14.945,-15.106,-15.299,-15.717,-16.550,-17.594,-18.358,-18.685,-18.921,-19.359,
--19.846,-20.108,-20.141,-20.034,-19.686,-19.016,-18.294,-17.975,-18.192,-18.623,-18.840,-18.652,-18.177,-17.728,-17.676,-18.263,
--19.429,-20.789,-21.854,-22.418,-22.810,-23.657,-25.242,-27.157,-28.729,-29.767,-30.647,-31.677,-32.669,-33.290,-33.612,-34.063,
--34.923,-36.053,-37.136,-38.006,-38.716,-39.356,-39.914,-40.307,-40.535,-40.742,-41.070,-41.491,-41.880,-42.202,-42.502,-42.746,
--42.822,-42.748,-42.717,-42.884,-43.201,-43.514,-43.694,-43.671,-43.489,-43.353,-43.465,-43.737,-43.874,-43.788,-43.710,-43.792,
--43.847,-43.684,-43.442,-43.355,-43.351,-43.205,-42.964,-42.894,-43.039,-43.152,-43.079,-42.923,-42.791,-42.659,-42.565,-42.634,
--42.790,-42.670,-42.042,-41.154,-40.504,-40.355,-40.613,-41.054,-41.495,-41.851,-42.221,-42.886,-44.057,-45.577,-47.008,-48.030,
--48.678,-49.204,-49.795,-50.473,-51.174,-51.850,-52.508,-53.162,-53.794,-54.367,-54.888,-55.426,-56.057,-56.784,-57.535,-58.230,
--58.848,-59.441,-60.080,-60.771,-61.450,-62.079,-62.718,-63.429,-64.158,-64.798,-65.357,-65.950,-66.607,-67.202,-67.642,-68.018,
--68.484,-69.064,-69.665,-70.232,-70.783,-71.336,-71.876,-72.385,-72.841,-73.224,-73.570,-73.986,-74.556,-75.261,-76.063,-76.974,
--77.988,-78.987,-79.851,-80.608,-81.365,-82.142,-82.889,-83.602,-84.247,-84.615,-84.508,-84.098,-83.883,-84.154,-84.758,-85.492,
--86.492,-87.931,-89.502,-90.579,-90.920,-90.914,-91.049,-91.384,-91.691,-91.879,-92.057,-92.273,-92.437,-92.501,-92.549,-92.648,
--92.755,-92.809,-92.863,-93.032,-93.347,-93.682,-93.836,-93.694,-93.357,-93.093,-93.105,-93.336,-93.495,-93.293,-92.651,-91.714,
--90.715,-89.806,-88.966,-88.101,-87.248,-86.648,-86.517,-86.758,-86.994,-86.926,-86.575,-86.138,-85.708,-85.196,-84.458,-83.427,
--82.148,-80.779,-79.532,-78.542,-77.773,-77.095,-76.413,-75.673,-74.796,-73.703,-72.414,-71.027,-69.601,-68.156,-66.785,-65.673,
--64.912,-64.378,-63.845,-63.181,-62.366,-61.394,-60.267,-59.071,-57.935,-56.882,-55.796,-54.560,-53.158,-51.602,-49.886,-48.107,
--46.530,-45.375,-44.535,-43.659,-42.550,-41.321,-40.092,-38.729,-37.074,-35.325,-33.895,-32.871,-31.851,-30.436,-28.692,-26.983,
--25.484,-24.095,-22.718,-21.405,-20.199,-19.072,-18.119,-17.658,-17.925,-18.666,-19.122,-18.531,-16.743,-14.377,-12.328,-11.015,
--10.097,-8.919,-7.152,-4.911,-2.402,.319,3.181,5.910,8.153,9.734,10.749,11.474,12.211,13.092,13.990,14.700,
-15.251,15.914,16.838,17.853,18.738,19.525,20.377,21.284,22.097,22.796,23.497,24.224,24.869,25.424,26.036,26.773,
-27.497,28.066,28.530,29.044,29.671,30.368,31.076,31.770,32.444,33.136,33.893,34.706,35.505,36.284,37.130,38.095,
-39.110,40.067,40.927,41.665,42.241,42.723,43.357,44.327,45.478,46.415,46.946,47.278,47.707,48.208,48.444,48.147,
-47.430,46.719,46.447,46.823,47.809,49.237,50.921,52.657,54.163,55.104,55.299,54.931,54.512,54.553,55.224,56.304,
-57.404,58.217,58.673,58.919,59.090,59.026,58.326,56.882,55.303,54.521,54.884,55.827,56.563,56.875,57.066,57.367,
-57.715,58.000,58.200,58.268,58.173,58.067,58.152,58.327,58.275,57.975,57.821,58.044,58.326,58.271,58.016,58.008,
-58.242,58.096,57.016,55.157,53.251,51.976,51.510,51.570,51.785,52.068,52.671,53.915,55.849,58.161,60.295,61.673,
-62.040,61.797,61.873,62.974,64.905,66.796,68.009,68.642,69.131,69.633,70.026,70.349,70.947,72.081,73.538,74.791,
-75.537,75.989,76.565,77.367,78.099,78.486,78.599,78.661,78.676,78.450,77.950,77.509,77.625,78.548,80.015,81.322,
-81.791,81.346,80.551,79.934,79.346,78.223,76.446,74.645,73.526,73.122,72.870,72.312,71.556,71.094,71.302,72.110,
-73.089,73.869,74.454,75.093,75.897,76.714,77.394,77.984,78.590,79.202,79.740,80.193,80.578,80.855,80.964,80.901,
-80.716,80.474,80.237,80.000,79.654,79.162,78.726,78.532,78.276,77.285,75.263,72.588,69.642,66.249,62.344,58.959,
-57.753,59.243,61.962,63.791,63.938,63.333,63.277,64.104,65.161,65.725,65.715,65.584,65.687,65.875,65.713,65.016,
-64.030,63.093,62.300,61.586,60.977,60.556,60.250,59.847,59.231,58.488,57.755,57.081,56.469,55.938,55.464,54.940,
-54.287,53.571,52.931,52.412,51.925,51.375,50.793,50.294,49.935,49.638,49.248,48.657,47.882,47.043,46.291,45.721,
-45.315,44.969,44.591,44.193,43.850,43.582,43.309,42.949,42.505,42.035,41.575,41.146,40.803,40.595,40.458,40.241,
-39.858,39.369,38.856,38.292,37.618,36.915,36.376,36.074,35.844,35.459,34.867,34.204,33.609,33.116,32.687,32.268,
-31.836,31.413,31.048,30.726,30.358,29.933,29.608,29.518,29.531,29.363,28.945,28.495,28.163,27.847,27.469,27.215,
-27.258,27.374,27.154,26.556,25.977,25.711,25.600,25.334,24.878,24.423,24.046,23.634,23.110,22.546,22.047,21.646,
-21.331,21.079,20.851,20.618,20.413,20.277,20.176,20.032,19.823,19.576,19.270,18.875,18.527,18.507,18.882,19.260,
-19.129,18.452,17.752,17.500,17.622,17.772,17.906,18.264,18.802,19.039,18.661,17.995,17.584,17.476,17.264,16.770,
-16.310,16.204,16.358,16.490,16.530,16.590,16.684,16.734,16.739,16.762,16.791,16.775,16.747,16.760,16.746,16.631,
-16.530,16.631,16.895,17.074,17.055,17.006,17.080,17.177,17.112,16.882,16.617,16.368,16.092,15.806,15.599,15.497,
-15.421,15.289,15.087,14.838,14.574,14.342,14.174,14.030,13.853,13.683,13.649,13.818,14.075,14.201,14.073,13.764,
-13.459,13.298,13.276,13.291,13.261,13.208,13.204,13.273,13.339,13.299,13.146,12.985,12.933,12.986,13.025,12.947,
-12.787,12.663,12.632,12.628,12.537,12.311,12.007,11.751,11.655,11.732,11.869,11.922,11.845,11.705,11.568,11.425,
-11.240,11.025,10.817,10.621,10.418,10.208,10.011,9.828,9.649,9.479,9.330,9.196,9.052,8.886,8.680,8.393,
-7.996,7.531,7.096,6.762,6.526,6.343,6.172,5.984,5.755,5.484,5.196,4.915,4.649,4.397,4.162,3.941,
-3.719,3.483,3.238,2.995,2.758,2.507,2.225,1.913,1.588,1.264,.936,.606,.298,.036,-.195,-.445,
--.743,-1.071,-1.408,-1.749,-2.094,-2.429,-2.746,-3.056,-3.375,-3.701,-4.039,-4.401,-4.766,-5.076,-5.304,-5.497,
--5.707,-5.918,-6.099,-6.289,-6.553,-6.878,-7.183,-7.436,-7.691,-7.996,-8.321,-8.611,-8.857,-9.075,-9.273,-9.466,
--9.686,-9.949,-10.237,-10.526,-10.811,-11.073,-11.276,-11.422,-11.576,-11.788,-12.024,-12.205,-12.309,-12.391,-12.518,-12.714,
--12.960,-13.209,-13.415,-13.571,-13.723,-13.919,-14.152,-14.368,-14.532,-14.657,-14.776,-14.906,-15.051,-15.202,-15.336,-15.432,
--15.497,-15.566,-15.676,-15.834,-16.024,-16.222,-16.398,-16.534,-16.641,-16.761,-16.919,-17.088,-17.216,-17.281,-17.308,-17.334,
--17.368,-17.390,-17.393,-17.387,-17.379,-17.362,-17.335,-17.308,-17.288,-17.267,-17.234,-17.195,-17.162,-17.131,-17.092,-17.046,
--16.992,-16.925,-16.842,-16.757,-16.674,-16.572,-16.443,-16.325,-16.257,-16.219,-16.149,-16.021,-15.873,-15.735,-15.599,-15.448,
--15.302,-15.192,-15.109,-15.019,-14.909,-14.804,-14.729,-14.676,-14.622,-14.563,-14.523,-14.513,-14.501,-14.442,-14.342,-14.253,
--14.211,-14.192,-14.162,-14.126,-14.103,-14.085,-14.056,-14.034,-14.048,-14.096,-14.144,-14.175,-14.187,-14.177,-14.153,-14.148,
--14.177,-14.203,-14.183,-14.137,-14.121,-14.158,-14.225,-14.306,-14.384,-14.425,-14.407,-14.361,-14.316,-14.249,-14.143,-14.061,
--14.060,-14.091,-14.065,-13.996,-13.968,-13.982,-13.959,-13.888,-13.839,-13.828,-13.780,-13.677,-13.593,-13.558,-13.507,-13.407,
--13.305,-13.217,-13.077,-12.876,-12.707,-12.617,-12.521,-12.349,-12.147,-11.974,-11.797,-11.584,-11.372,-11.181,-10.953,-10.665,
--10.386,-10.150,-9.887,-9.565,-9.266,-9.027,-8.755,-8.387,-8.008,-7.674,-7.296,-6.823,-6.364,-5.990,-5.594,-5.095,
--4.614,-4.232,-3.806,-3.228,-2.667,-2.289,-1.931,-1.396,-.837,-.495,-.232,.248,.852,1.243,1.384,1.387,
-.980,-.085,-.995,-.133,3.139,7.517,11.124,13.370,14.959,16.506,17.856,18.585,18.480,17.502,15.828,13.998,
-12.603,11.738,11.067,10.419,9.952,9.752,9.683,9.740,10.157,10.987,11.912,12.644,13.281,14.079,15.088,16.196,
-17.316,18.372,19.237,19.860,20.352,20.794,21.087,21.114,20.943,20.771,20.720,20.804,20.969,21.058,20.851,20.279,
-19.559,19.016,18.785,18.751,18.681,18.354,17.655,16.667,15.620,14.684,13.867,13.120,12.454,11.860,11.247,10.567,
-9.915,9.387,8.904,8.284,7.428,6.323,4.951,3.320,1.592,.002,-1.334,-2.454,-3.396,-4.144,-4.709,-5.133,
--5.371,-5.323,-5.066,-4.921,-5.147,-5.591,-5.832,-5.698,-5.526,-5.808,-6.621,-7.560,-8.223,-8.655,-9.220,-10.145,
--11.312,-12.468,-13.495,-14.423,-15.316,-16.199,-17.058,-17.844,-18.525,-19.153,-19.809,-20.440,-20.819,-20.769,-20.396,-20.035,
--19.982,-20.288,-20.786,-21.248,-21.546,-21.697,-21.795,-21.884,-21.941,-21.963,-22.001,-22.092,-22.208,-22.312,-22.419,-22.583,
--22.883,-23.421,-24.215,-25.037,-25.485,-25.368,-24.927,-24.560,-24.403,-24.326,-24.294,-24.503,-25.097,-25.928,-26.682,-27.158,
--27.322,-27.207,-26.885,-26.510,-26.242,-26.088,-25.873,-25.426,-24.757,-24.036,-23.414,-22.899,-22.417,-21.936,-21.483,-21.055,
--20.565,-19.917,-19.069,-18.035,-16.889,-15.827,-15.101,-14.747,-14.438,-13.776,-12.736,-11.675,-10.867,-10.220,-9.532,-8.858,
--8.415,-8.221,-8.079,-7.892,-7.810,-7.964,-8.230,-8.373,-8.315,-8.136,-7.926,-7.769,-7.818,-8.185,-8.717,-9.048,
--8.945,-8.521,-8.050,-7.681,-7.429,-7.303,-7.296,-7.298,-7.175,-6.950,-6.777,-6.706,-6.599,-6.315,-5.886,-5.433,
--5.019,-4.658,-4.385,-4.232,-4.157,-4.090,-4.010,-3.927,-3.823,-3.669,-3.481,-3.288,-3.068,-2.785,-2.462,-2.157,
--1.880,-1.599,-1.324,-1.085,-.869,-.636,-.400,-.205,-.020,.249,.626,1.028,1.396,1.780,2.237,2.728,
-3.168,3.534,3.872,4.222,4.596,4.994,5.416,5.854,6.306,6.785,7.288,7.785,8.260,8.732,9.214,9.679,
-10.101,10.499,10.917,11.364,11.820,12.278,12.749,13.234,13.709,14.145,14.523,14.835,15.090,15.316,15.551,15.815,
-16.093,16.354,16.589,16.839,17.163,17.562,17.953,18.262,18.497,18.697,18.843,18.867,18.768,18.638,18.559,18.531,
-18.509,18.477,18.454,18.452,18.466,18.464,18.407,18.291,18.177,18.128,18.128,18.114,18.068,18.021,17.976,17.902,
-17.809,17.744,17.700,17.625,17.525,17.472,17.481,17.476,17.428,17.414,17.476,17.532,17.517,17.503,17.576,17.671,
-17.667,17.578,17.528,17.558,17.587,17.548,17.458,17.348,17.238,17.150,17.082,16.921,16.787,16.510,16.132,15.756,
-15.378,14.923,14.412,13.937,13.498,13.013,12.478,11.996,11.615,11.270,10.911,10.579,10.304,10.050,9.780,9.513,
-9.262,9.018,8.787,8.586,8.391,8.166,7.940,7.775,7.658,7.541,7.445,7.423,7.407,7.249,6.914,6.519,
-6.128,5.669,5.094,4.534,4.224,4.349,4.896,5.538,5.720,5.130,4.120,3.449,3.488,3.890,4.103,3.983,
-3.727,3.455,3.127,2.759,2.443,2.168,1.809,1.299,.710,.166,-.223,-.430,-.617,-1.078,-1.973,-3.149,
--4.321,-5.322,-6.102,-6.643,-7.047,-7.571,-8.346,-9.159,-9.712,-10.024,-10.367,-10.862,-11.388,-11.851,-12.302,-12.764,
--13.165,-13.477,-13.749,-13.983,-14.159,-14.396,-14.868,-15.517,-16.047,-16.254,-16.237,-16.236,-16.389,-16.676,-16.962,-17.084,
--17.010,-16.895,-16.857,-16.794,-16.600,-16.422,-16.416,-16.379,-16.024,-15.528,-15.305,-15.206,-14.568,-13.313,-12.429,-12.853,
--14.231,-15.309,-15.375,-14.813,-14.370,-14.367,-14.651,-14.920,-14.987,-14.994,-15.383,-16.407,-17.692,-18.577,-18.882,-19.030,
--19.396,-19.873,-20.164,-20.164,-19.903,-19.401,-18.800,-18.431,-18.500,-18.813,-18.998,-18.904,-18.617,-18.228,-17.826,-17.699,
--18.267,-19.626,-21.252,-22.372,-22.753,-23.030,-24.071,-25.964,-27.868,-28.987,-29.492,-30.210,-31.512,-32.900,-33.758,-34.132,
--34.561,-35.369,-36.395,-37.333,-38.072,-38.690,-39.271,-39.805,-40.220,-40.482,-40.672,-40.914,-41.248,-41.607,-41.916,-42.137,
--42.240,-42.223,-42.183,-42.264,-42.511,-42.845,-43.162,-43.369,-43.387,-43.256,-43.202,-43.399,-43.675,-43.707,-43.500,-43.384,
--43.480,-43.520,-43.320,-43.091,-43.048,-43.018,-42.776,-42.493,-42.474,-42.633,-42.640,-42.481,-42.407,-42.405,-42.206,-41.875,
--41.877,-42.337,-42.682,-42.335,-41.478,-40.778,-40.583,-40.713,-40.912,-41.128,-41.367,-41.628,-42.051,-42.888,-44.191,-45.669,
--46.949,-47.898,-48.635,-49.312,-49.987,-50.647,-51.281,-51.911,-52.572,-53.253,-53.891,-54.448,-54.975,-55.561,-56.232,-56.924,
--57.578,-58.206,-58.848,-59.510,-60.151,-60.754,-61.367,-62.060,-62.831,-63.585,-64.242,-64.843,-65.478,-66.129,-66.676,-67.080,
--67.463,-67.967,-68.583,-69.193,-69.733,-70.239,-70.765,-71.310,-71.818,-72.221,-72.516,-72.809,-73.251,-73.887,-74.636,-75.426,
--76.290,-77.257,-78.245,-79.147,-79.960,-80.749,-81.513,-82.185,-82.725,-83.090,-83.189,-83.025,-82.841,-82.952,-83.424,-84.089,
--84.899,-86.030,-87.502,-88.920,-89.807,-90.124,-90.251,-90.504,-90.859,-91.159,-91.372,-91.556,-91.712,-91.801,-91.843,-91.900,
--91.985,-92.065,-92.140,-92.280,-92.556,-92.950,-93.328,-93.512,-93.431,-93.209,-93.068,-93.119,-93.246,-93.208,-92.825,-92.083,
--91.129,-90.172,-89.346,-88.606,-87.834,-87.076,-86.595,-86.597,-86.935,-87.182,-87.027,-86.514,-85.896,-85.320,-84.721,-83.939,
--82.880,-81.598,-80.274,-79.116,-78.226,-77.546,-76.932,-76.275,-75.517,-74.618,-73.556,-72.352,-71.058,-69.711,-68.356,-67.108,
--66.114,-65.413,-64.859,-64.240,-63.454,-62.521,-61.468,-60.306,-59.098,-57.966,-56.942,-55.901,-54.690,-53.288,-51.764,-50.147,
--48.478,-46.950,-45.792,-44.968,-44.164,-43.153,-42.013,-40.842,-39.471,-37.728,-35.879,-34.442,-33.507,-32.550,-31.087,-29.266,
--27.585,-26.221,-24.914,-23.437,-21.897,-20.527,-19.425,-18.606,-18.157,-18.189,-18.630,-19.089,-18.972,-17.840,-15.816,-13.590,
--11.862,-10.742,-9.765,-8.469,-6.775,-4.839,-2.725,-.383,2.188,4.858,7.383,9.467,10.937,11.931,12.781,13.649,
-14.407,14.959,15.516,16.342,17.380,18.351,19.151,19.935,20.815,21.705,22.503,23.233,23.933,24.568,25.156,25.816,
-26.586,27.304,27.794,28.115,28.514,29.149,29.949,30.732,31.395,31.991,32.645,33.415,34.236,35.016,35.771,36.601,
-37.544,38.515,39.424,40.256,41.008,41.659,42.275,43.031,44.008,45.006,45.704,46.038,46.301,46.782,47.384,47.694,
-47.446,46.854,46.428,46.507,47.053,47.900,49.082,50.727,52.648,54.235,54.929,54.764,54.307,54.091,54.242,54.648,
-55.279,56.151,57.098,57.825,58.225,58.413,58.373,57.823,56.656,55.383,54.779,55.067,55.710,56.130,56.325,56.626,
-57.097,57.506,57.761,58.012,58.299,58.433,58.308,58.095,57.989,57.947,57.838,57.666,57.500,57.291,56.983,56.731,
-56.796,57.110,57.103,56.079,53.834,50.960,48.527,47.363,47.549,48.530,49.712,50.927,52.401,54.378,56.739,58.872,
-59.979,59.799,59.136,59.404,61.348,64.262,66.649,67.639,67.591,67.418,67.612,68.056,68.516,69.030,69.749,70.580,
-71.177,71.359,71.394,71.717,72.414,73.177,73.788,74.423,75.309,76.285,76.933,77.113,77.177,77.678,78.929,80.747,
-82.459,83.291,83.009,82.144,81.366,80.693,79.606,77.917,76.168,75.013,74.462,73.959,73.050,71.801,70.647,70.014,
-70.020,70.434,70.937,71.465,72.217,73.318,74.612,75.847,76.912,77.803,78.505,79.040,79.524,80.030,80.479,80.763,
-80.913,81.037,81.144,81.122,80.833,80.220,79.450,78.930,78.913,78.930,77.936,75.312,71.528,67.525,63.666,59.863,
-56.647,55.376,56.893,60.264,63.337,64.595,64.254,63.632,63.748,64.597,65.521,66.018,66.130,66.159,66.188,65.996,
-65.401,64.516,63.597,62.774,62.042,61.434,61.024,60.772,60.484,59.996,59.322,58.595,57.914,57.294,56.711,56.149,
-55.590,55.000,54.357,53.677,52.995,52.336,51.708,51.138,50.667,50.286,49.909,49.450,48.896,48.276,47.598,46.879,
-46.213,45.702,45.316,44.906,44.399,43.905,43.561,43.342,43.096,42.730,42.287,41.854,41.479,41.172,40.927,40.698,
-40.425,40.079,39.675,39.208,38.632,37.952,37.280,36.752,36.377,36.017,35.544,34.975,34.428,33.974,33.587,33.212,
-32.840,32.491,32.178,31.877,31.546,31.158,30.740,30.351,29.995,29.599,29.152,28.812,28.728,28.762,28.577,28.081,
-27.601,27.451,27.467,27.213,26.584,25.951,25.653,25.577,25.389,24.983,24.525,24.145,23.790,23.367,22.877,22.384,
-21.942,21.594,21.353,21.173,20.984,20.770,20.568,20.392,20.214,20.014,19.783,19.475,19.067,18.690,18.593,18.845,
-19.143,19.067,18.553,17.964,17.662,17.645,17.731,17.932,18.378,18.917,19.102,18.718,18.095,17.683,17.489,17.201,
-16.751,16.434,16.435,16.567,16.588,16.542,16.587,16.699,16.739,16.710,16.724,16.800,16.861,16.895,16.931,16.913,
-16.775,16.632,16.677,16.884,17.011,16.957,16.908,17.028,17.188,17.137,16.850,16.546,16.394,16.340,16.219,15.948,
-15.588,15.277,15.091,14.970,14.797,14.556,14.362,14.291,14.261,14.144,13.946,13.800,13.786,13.837,13.829,13.699,
-13.473,13.242,13.097,13.064,13.076,13.047,12.971,12.918,12.922,12.934,12.891,12.793,12.699,12.648,12.631,12.609,
-12.551,12.459,12.370,12.328,12.337,12.336,12.224,11.949,11.582,11.290,11.201,11.286,11.398,11.413,11.322,11.173,
-10.998,10.802,10.598,10.411,10.239,10.060,9.861,9.650,9.434,9.214,8.997,8.801,8.641,8.520,8.419,8.286,
-8.056,7.705,7.284,6.874,6.527,6.259,6.066,5.917,5.754,5.529,5.255,4.982,4.734,4.486,4.226,3.981,
-3.780,3.609,3.430,3.214,2.964,2.698,2.420,2.124,1.806,1.481,1.167,.865,.573,.303,.071,-.141,
--.375,-.655,-.966,-1.291,-1.628,-1.971,-2.299,-2.606,-2.920,-3.261,-3.617,-3.971,-4.331,-4.697,-5.026,-5.288,
--5.511,-5.745,-5.982,-6.186,-6.371,-6.596,-6.873,-7.148,-7.386,-7.617,-7.882,-8.179,-8.480,-8.760,-9.002,-9.197,
--9.372,-9.577,-9.828,-10.094,-10.348,-10.593,-10.818,-10.990,-11.120,-11.283,-11.531,-11.817,-12.042,-12.176,-12.273,-12.402,
--12.593,-12.831,-13.079,-13.289,-13.442,-13.574,-13.741,-13.956,-14.177,-14.353,-14.473,-14.566,-14.673,-14.815,-14.973,-15.098,
--15.169,-15.214,-15.284,-15.398,-15.543,-15.704,-15.872,-16.033,-16.175,-16.304,-16.444,-16.604,-16.762,-16.892,-16.979,-17.027,
--17.050,-17.062,-17.071,-17.073,-17.055,-17.021,-16.988,-16.976,-16.981,-16.984,-16.973,-16.950,-16.924,-16.890,-16.839,-16.776,
--16.714,-16.661,-16.603,-16.530,-16.450,-16.361,-16.249,-16.111,-15.990,-15.932,-15.920,-15.879,-15.759,-15.582,-15.399,-15.230,
--15.064,-14.906,-14.780,-14.692,-14.618,-14.531,-14.439,-14.369,-14.321,-14.270,-14.209,-14.164,-14.157,-14.156,-14.107,-14.008,
--13.914,-13.863,-13.843,-13.832,-13.837,-13.861,-13.873,-13.859,-13.849,-13.878,-13.931,-13.978,-14.016,-14.049,-14.063,-14.054,
--14.056,-14.092,-14.129,-14.123,-14.088,-14.069,-14.078,-14.112,-14.187,-14.295,-14.369,-14.360,-14.307,-14.269,-14.222,-14.128,
--14.038,-14.024,-14.045,-14.013,-13.948,-13.949,-14.010,-14.016,-13.937,-13.864,-13.841,-13.800,-13.711,-13.644,-13.629,-13.585,
--13.467,-13.345,-13.270,-13.177,-13.015,-12.848,-12.736,-12.626,-12.458,-12.274,-12.125,-11.967,-11.752,-11.525,-11.331,-11.122,
--10.850,-10.565,-10.315,-10.059,-9.757,-9.461,-9.206,-8.931,-8.585,-8.220,-7.872,-7.478,-7.021,-6.602,-6.253,-5.842,
--5.304,-4.779,-4.368,-3.937,-3.375,-2.833,-2.465,-2.130,-1.644,-1.122,-.750,-.397,.148,.739,1.069,1.135,
-1.015,.419,-.762,-1.494,-.139,3.635,8.152,11.454,13.215,14.466,15.982,17.619,18.889,19.360,18.616,16.567,
-13.945,11.933,11.088,10.958,10.837,10.489,10.076,9.797,9.829,10.281,11.012,11.690,12.204,12.799,13.685,14.751,
-15.804,16.838,17.892,18.835,19.520,20.017,20.474,20.855,21.004,20.922,20.795,20.791,20.938,21.158,21.300,21.169,
-20.681,19.986,19.388,19.100,19.097,19.136,18.914,18.261,17.273,16.216,15.285,14.498,13.805,13.182,12.586,11.929,
-11.196,10.500,9.938,9.439,8.841,8.039,6.981,5.618,3.977,2.241,.642,-.716,-1.849,-2.770,-3.466,-3.982,
--4.401,-4.715,-4.842,-4.810,-4.834,-5.101,-5.528,-5.830,-5.878,-5.911,-6.315,-7.174,-8.166,-8.927,-9.455,-10.042,
--10.886,-11.894,-12.876,-13.752,-14.541,-15.259,-15.930,-16.603,-17.292,-17.956,-18.595,-19.269,-19.944,-20.418,-20.511,-20.310,
--20.112,-20.151,-20.443,-20.858,-21.243,-21.501,-21.637,-21.724,-21.811,-21.871,-21.885,-21.909,-22.006,-22.149,-22.268,-22.355,
--22.485,-22.759,-23.271,-24.021,-24.795,-25.220,-25.106,-24.690,-24.390,-24.359,-24.430,-24.489,-24.683,-25.184,-25.909,-26.593,
--27.029,-27.149,-26.953,-26.535,-26.107,-25.866,-25.786,-25.621,-25.159,-24.444,-23.724,-23.199,-22.852,-22.510,-22.060,-21.550,
--21.075,-20.604,-19.993,-19.143,-18.100,-17.014,-16.056,-15.345,-14.843,-14.313,-13.515,-12.486,-11.521,-10.806,-10.205,-9.515,
--8.806,-8.325,-8.127,-8.012,-7.833,-7.672,-7.630,-7.639,-7.587,-7.496,-7.414,-7.270,-7.014,-6.847,-7.070,-7.673,
--8.269,-8.524,-8.477,-8.365,-8.272,-8.125,-7.929,-7.787,-7.700,-7.551,-7.299,-7.056,-6.900,-6.745,-6.474,-6.109,
--5.743,-5.396,-5.046,-4.736,-4.551,-4.488,-4.450,-4.368,-4.248,-4.109,-3.948,-3.763,-3.565,-3.350,-3.102,-2.817,
--2.506,-2.174,-1.840,-1.560,-1.361,-1.194,-.986,-.742,-.516,-.302,-.031,.314,.677,1.033,1.434,1.903,
-2.366,2.745,3.066,3.414,3.824,4.266,4.711,5.158,5.607,6.058,6.522,7.014,7.515,7.999,8.473,8.956,
-9.437,9.885,10.305,10.733,11.189,11.657,12.122,12.597,13.088,13.564,13.982,14.324,14.606,14.847,15.062,15.277,
-15.526,15.809,16.089,16.347,16.633,17.004,17.432,17.806,18.058,18.237,18.409,18.550,18.586,18.517,18.431,18.396,
-18.403,18.412,18.408,18.399,18.399,18.409,18.404,18.338,18.204,18.063,17.986,17.960,17.927,17.871,17.819,17.765,
-17.675,17.559,17.465,17.393,17.307,17.225,17.197,17.202,17.160,17.079,17.063,17.141,17.207,17.186,17.144,17.157,
-17.182,17.160,17.144,17.214,17.333,17.403,17.400,17.355,17.266,17.132,17.007,16.921,16.838,16.613,16.258,15.866,
-15.546,15.215,14.720,14.090,13.499,13.014,12.558,12.098,11.683,11.311,10.914,10.507,10.193,9.985,9.773,9.502,
-9.241,9.044,8.860,8.649,8.443,8.254,8.039,7.804,7.625,7.530,7.456,7.375,7.341,7.360,7.343,7.245,
-7.121,6.988,6.725,6.215,5.531,4.931,4.707,5.000,5.623,6.062,5.870,5.134,4.414,4.138,4.210,4.289,
-4.232,4.092,3.872,3.519,3.099,2.760,2.532,2.313,2.021,1.649,1.210,.738,.299,-.115,-.651,-1.426,
--2.369,-3.313,-4.175,-4.944,-5.602,-6.188,-6.843,-7.616,-8.310,-8.714,-8.922,-9.225,-9.731,-10.296,-10.803,-11.290,
--11.797,-12.288,-12.746,-13.184,-13.555,-13.809,-14.054,-14.463,-15.005,-15.449,-15.669,-15.775,-15.899,-16.043,-16.182,-16.339,
--16.502,-16.601,-16.611,-16.556,-16.427,-16.246,-16.163,-16.263,-16.321,-16.041,-15.543,-15.226,-15.092,-14.656,-13.753,-13.044,
--13.284,-14.324,-15.232,-15.329,-14.782,-14.223,-14.091,-14.359,-14.663,-14.700,-14.624,-14.982,-16.077,-17.505,-18.556,-18.992,
--19.163,-19.438,-19.818,-20.109,-20.154,-19.858,-19.276,-18.771,-18.771,-19.225,-19.567,-19.362,-18.800,-18.334,-18.080,-17.869,
--17.816,-18.404,-19.848,-21.588,-22.755,-23.159,-23.589,-24.896,-26.906,-28.545,-29.139,-29.245,-29.931,-31.453,-33.052,-34.004,
--34.426,-34.916,-35.747,-36.710,-37.531,-38.155,-38.669,-39.145,-39.603,-40.013,-40.316,-40.519,-40.713,-40.985,-41.311,-41.594,
--41.755,-41.788,-41.775,-41.839,-42.039,-42.306,-42.542,-42.734,-42.893,-42.967,-42.957,-43.024,-43.280,-43.531,-43.491,-43.231,
--43.094,-43.159,-43.146,-42.932,-42.761,-42.768,-42.696,-42.374,-42.082,-42.089,-42.158,-41.975,-41.775,-41.950,-42.244,-42.021,
--41.361,-41.163,-41.895,-42.870,-43.127,-42.591,-41.911,-41.491,-41.229,-41.025,-40.991,-41.142,-41.306,-41.487,-41.985,-43.017,
--44.408,-45.786,-46.942,-47.891,-48.705,-49.429,-50.086,-50.696,-51.286,-51.904,-52.591,-53.304,-53.947,-54.492,-55.021,-55.616,
--56.273,-56.948,-57.623,-58.295,-58.929,-59.504,-60.065,-60.701,-61.446,-62.236,-62.978,-63.644,-64.283,-64.930,-65.540,-66.053,
--66.487,-66.942,-67.483,-68.074,-68.638,-69.154,-69.663,-70.196,-70.731,-71.194,-71.526,-71.766,-72.066,-72.575,-73.283,-74.054,
--74.809,-75.610,-76.525,-77.507,-78.454,-79.329,-80.140,-80.844,-81.347,-81.584,-81.560,-81.386,-81.293,-81.529,-82.123,-82.859,
--83.587,-84.466,-85.716,-87.182,-88.384,-89.036,-89.333,-89.625,-90.014,-90.382,-90.667,-90.914,-91.128,-91.246,-91.268,-91.277,
--91.327,-91.395,-91.469,-91.595,-91.830,-92.186,-92.603,-92.961,-93.125,-93.069,-92.929,-92.875,-92.927,-92.950,-92.788,-92.367,
--91.684,-90.818,-89.928,-89.141,-88.421,-87.663,-86.951,-86.574,-86.704,-87.109,-87.313,-87.024,-86.333,-85.530,-84.799,-84.104,
--83.290,-82.247,-81.022,-79.791,-78.733,-77.908,-77.248,-76.636,-75.978,-75.214,-74.320,-73.308,-72.200,-71.005,-69.726,-68.425,
--67.237,-66.289,-65.589,-64.999,-64.339,-63.532,-62.606,-61.588,-60.455,-59.221,-57.999,-56.887,-55.814,-54.618,-53.254,-51.828,
--50.417,-49.010,-47.660,-46.524,-45.640,-44.815,-43.846,-42.735,-41.506,-39.997,-38.123,-36.235,-34.863,-34.015,-33.066,-31.532,
--29.658,-28.032,-26.806,-25.613,-24.154,-22.546,-21.096,-19.972,-19.172,-18.654,-18.412,-18.466,-18.756,-18.958,-18.509,-17.065,
--14.938,-12.865,-11.301,-10.093,-8.891,-7.635,-6.474,-5.374,-3.999,-1.947,.932,4.351,7.620,10.056,11.502,12.398,
-13.225,14.038,14.675,15.215,15.950,16.958,17.997,18.872,19.670,20.533,21.417,22.198,22.874,23.533,24.207,24.891,
-25.614,26.377,27.057,27.525,27.840,28.236,28.874,29.684,30.460,31.083,31.625,32.238,32.988,33.803,34.582,35.325,
-36.105,36.955,37.826,38.673,39.504,40.329,41.120,41.875,42.651,43.471,44.222,44.751,45.070,45.389,45.894,46.501,
-46.913,46.950,46.790,46.797,47.114,47.570,48.053,48.836,50.277,52.191,53.770,54.326,53.974,53.428,53.207,53.308,
-53.601,54.193,55.194,56.328,57.115,57.395,57.413,57.355,57.074,56.452,55.799,55.575,55.795,56.023,56.003,55.987,
-56.293,56.805,57.162,57.304,57.506,57.883,58.180,58.155,57.946,57.861,57.949,57.953,57.663,57.151,56.619,56.164,
-55.787,55.564,55.586,55.595,54.817,52.506,48.852,45.208,43.155,43.269,44.869,46.892,48.859,51.001,53.639,56.525,
-58.730,59.293,58.243,57.003,57.415,60.086,63.779,66.566,67.526,67.222,66.803,66.924,67.518,68.239,68.890,69.459,
-69.888,69.998,69.720,69.328,69.257,69.642,70.237,70.843,71.609,72.723,74.006,75.064,75.784,76.460,77.495,79.090,
-81.112,83.049,84.212,84.276,83.627,82.931,82.377,81.635,80.506,79.275,78.298,77.539,76.693,75.541,74.036,72.240,
-70.403,68.942,68.153,67.992,68.271,68.953,70.116,71.713,73.513,75.230,76.623,77.587,78.240,78.836,79.479,80.030,
-80.377,80.669,81.105,81.596,81.823,81.581,80.956,80.254,79.819,79.710,79.331,77.622,74.007,69.149,64.435,60.693,
-57.793,55.591,54.751,56.144,59.515,63.182,65.269,65.201,63.989,63.184,63.575,64.785,65.911,66.417,66.398,66.156,
-65.782,65.199,64.426,63.614,62.878,62.231,61.693,61.333,61.145,60.969,60.614,60.036,59.360,58.719,58.116,57.484,
-56.819,56.194,55.636,55.065,54.396,53.648,52.908,52.227,51.615,51.077,50.598,50.112,49.576,49.034,48.541,48.041,
-47.433,46.758,46.173,45.731,45.297,44.752,44.178,43.744,43.470,43.219,42.880,42.482,42.116,41.818,41.550,41.253,
-40.909,40.552,40.222,39.888,39.458,38.880,38.226,37.622,37.120,36.653,36.139,35.576,35.050,34.646,34.367,34.135,
-33.873,33.577,33.287,33.009,32.702,32.338,31.946,31.559,31.141,30.618,29.997,29.440,29.161,29.188,29.253,29.020,
-28.448,27.864,27.566,27.460,27.188,26.618,26.010,25.674,25.594,25.500,25.211,24.783,24.356,23.988,23.639,23.247,
-22.789,22.312,21.917,21.657,21.480,21.287,21.038,20.764,20.499,20.250,20.025,19.817,19.577,19.263,18.945,18.780,
-18.823,18.918,18.849,18.576,18.257,18.034,17.905,17.848,17.942,18.244,18.581,18.646,18.350,17.938,17.657,17.457,
-17.163,16.823,16.660,16.709,16.757,16.677,16.607,16.684,16.807,16.812,16.746,16.773,16.902,17.003,17.029,17.031,
-17.006,16.896,16.760,16.736,16.819,16.846,16.768,16.767,16.966,17.186,17.137,16.795,16.460,16.400,16.550,16.591,
-16.287,15.721,15.202,14.945,14.869,14.755,14.541,14.368,14.340,14.368,14.310,14.158,14.005,13.885,13.754,13.587,
-13.409,13.231,13.056,12.919,12.867,12.873,12.858,12.784,12.685,12.602,12.546,12.520,12.521,12.513,12.440,12.304,
-12.167,12.075,11.999,11.911,11.850,11.874,11.963,11.991,11.838,11.497,11.101,10.828,10.764,10.847,10.930,10.904,
-10.770,10.595,10.431,10.279,10.118,9.939,9.746,9.538,9.304,9.036,8.751,8.477,8.235,8.041,7.912,7.845,
-7.783,7.643,7.386,7.045,6.688,6.361,6.093,5.897,5.750,5.588,5.364,5.093,4.823,4.566,4.298,4.019,
-3.770,3.583,3.437,3.278,3.065,2.802,2.519,2.245,1.979,1.706,1.421,1.137,.864,.598,.338,.094,
--.136,-.380,-.654,-.944,-1.239,-1.549,-1.880,-2.212,-2.530,-2.849,-3.190,-3.540,-3.881,-4.221,-4.577,-4.928,
--5.237,-5.505,-5.762,-6.011,-6.231,-6.428,-6.640,-6.881,-7.126,-7.352,-7.574,-7.816,-8.084,-8.372,-8.658,-8.905,
--9.093,-9.255,-9.448,-9.684,-9.926,-10.151,-10.368,-10.571,-10.732,-10.863,-11.041,-11.311,-11.623,-11.883,-12.053,-12.179,
--12.320,-12.505,-12.735,-12.980,-13.192,-13.345,-13.467,-13.611,-13.805,-14.024,-14.215,-14.343,-14.416,-14.483,-14.588,-14.721,
--14.830,-14.891,-14.943,-15.033,-15.164,-15.306,-15.446,-15.588,-15.728,-15.856,-15.984,-16.126,-16.281,-16.432,-16.567,-16.676,
--16.741,-16.759,-16.755,-16.762,-16.766,-16.732,-16.663,-16.614,-16.623,-16.666,-16.693,-16.688,-16.672,-16.659,-16.629,-16.564,
--16.473,-16.389,-16.326,-16.271,-16.210,-16.142,-16.061,-15.954,-15.821,-15.696,-15.618,-15.584,-15.534,-15.416,-15.237,-15.045,
--14.871,-14.708,-14.546,-14.400,-14.297,-14.231,-14.170,-14.096,-14.028,-13.984,-13.949,-13.900,-13.846,-13.816,-13.804,-13.768,
--13.693,-13.611,-13.555,-13.529,-13.530,-13.564,-13.614,-13.640,-13.636,-13.645,-13.693,-13.747,-13.773,-13.785,-13.815,-13.856,
--13.890,-13.930,-13.993,-14.054,-14.083,-14.090,-14.092,-14.073,-14.046,-14.075,-14.182,-14.279,-14.278,-14.213,-14.171,-14.147,
--14.086,-14.017,-14.007,-14.021,-13.975,-13.900,-13.909,-13.994,-14.021,-13.941,-13.859,-13.843,-13.823,-13.749,-13.685,-13.670,
--13.628,-13.507,-13.378,-13.310,-13.245,-13.118,-12.971,-12.858,-12.735,-12.552,-12.358,-12.215,-12.075,-11.874,-11.650,-11.460,
--11.268,-11.015,-10.729,-10.467,-10.206,-9.909,-9.614,-9.356,-9.088,-8.758,-8.398,-8.036,-7.635,-7.196,-6.798,-6.445,
--6.009,-5.446,-4.907,-4.499,-4.098,-3.580,-3.052,-2.646,-2.270,-1.787,-1.282,-.869,-.436,.118,.598,.795,
-.808,.664,-.021,-1.299,-1.952,-.299,3.762,8.277,11.235,12.485,13.284,14.624,16.603,18.827,20.529,20.566,
-18.323,14.777,11.947,11.023,11.432,11.854,11.626,10.978,10.401,10.209,10.455,10.942,11.414,11.866,12.544,13.538,
-14.610,15.557,16.486,17.540,18.557,19.272,19.703,20.086,20.504,20.817,20.943,20.993,21.102,21.283,21.471,21.588,
-21.533,21.206,20.626,20.001,19.600,19.525,19.580,19.393,18.738,17.737,16.713,15.862,15.149,14.480,13.835,13.206,
-12.535,11.806,11.100,10.487,9.912,9.252,8.421,7.370,6.069,4.559,2.987,1.501,.157,-1.030,-2.010,-2.737,
--3.252,-3.647,-3.958,-4.182,-4.368,-4.631,-5.039,-5.521,-5.922,-6.171,-6.403,-6.859,-7.632,-8.536,-9.316,-9.949,
--10.613,-11.405,-12.202,-12.869,-13.434,-14.001,-14.594,-15.182,-15.777,-16.407,-17.060,-17.735,-18.469,-19.220,-19.811,-20.099,
--20.161,-20.214,-20.386,-20.649,-20.933,-21.190,-21.380,-21.495,-21.588,-21.702,-21.804,-21.844,-21.859,-21.928,-22.056,-22.183,
--22.295,-22.445,-22.702,-23.127,-23.737,-24.396,-24.810,-24.805,-24.569,-24.462,-24.598,-24.775,-24.843,-24.930,-25.237,-25.755,
--26.300,-26.709,-26.887,-26.773,-26.404,-25.981,-25.706,-25.559,-25.313,-24.802,-24.103,-23.450,-23.000,-22.710,-22.413,-22.011,
--21.562,-21.161,-20.761,-20.172,-19.274,-18.161,-17.058,-16.132,-15.417,-14.821,-14.163,-13.309,-12.337,-11.485,-10.869,-10.323,
--9.647,-8.921,-8.402,-8.161,-8.010,-7.791,-7.554,-7.368,-7.169,-6.900,-6.659,-6.512,-6.318,-5.942,-5.611,-5.769,
--6.529,-7.480,-8.128,-8.376,-8.434,-8.433,-8.340,-8.161,-8.002,-7.894,-7.740,-7.492,-7.247,-7.082,-6.919,-6.656,
--6.326,-6.033,-5.777,-5.485,-5.169,-4.939,-4.853,-4.836,-4.784,-4.675,-4.536,-4.377,-4.184,-3.957,-3.718,-3.477,
--3.219,-2.908,-2.529,-2.131,-1.805,-1.592,-1.431,-1.229,-.972,-.713,-.469,-.201,.108,.439,.796,1.217,
-1.687,2.120,2.460,2.762,3.120,3.548,3.995,4.430,4.860,5.289,5.716,6.164,6.666,7.213,7.759,8.280,
-8.790,9.299,9.785,10.237,10.677,11.124,11.567,11.991,12.404,12.826,13.238,13.603,13.915,14.205,14.491,14.762,
-15.013,15.270,15.560,15.861,16.146,16.438,16.782,17.156,17.465,17.666,17.826,18.026,18.239,18.381,18.424,18.420,
-18.416,18.409,18.387,18.361,18.339,18.319,18.296,18.261,18.187,18.067,17.940,17.848,17.780,17.705,17.629,17.577,
-17.529,17.438,17.306,17.175,17.064,16.966,16.901,16.876,16.836,16.720,16.580,16.532,16.583,16.621,16.591,16.556,
-16.570,16.608,16.665,16.806,17.037,17.243,17.343,17.379,17.396,17.344,17.189,17.003,16.838,16.795,16.439,15.991,
-15.627,15.432,15.185,14.634,13.856,13.153,12.655,12.251,11.850,11.460,11.054,10.574,10.113,9.851,9.770,9.648,
-9.372,9.073,8.879,8.733,8.540,8.328,8.140,7.931,7.678,7.473,7.394,7.378,7.332,7.273,7.263,7.295,
-7.334,7.397,7.477,7.457,7.195,6.686,6.090,5.664,5.646,6.072,6.637,6.866,6.541,5.889,5.291,4.910,
-4.693,4.552,4.420,4.197,3.842,3.460,3.191,3.043,2.926,2.788,2.593,2.254,1.714,1.060,.425,-.174,
--.797,-1.444,-2.085,-2.768,-3.565,-4.447,-5.322,-6.146,-6.882,-7.420,-7.705,-7.899,-8.239,-8.756,-9.294,-9.769,
--10.245,-10.771,-11.310,-11.834,-12.338,-12.761,-13.059,-13.349,-13.796,-14.366,-14.856,-15.183,-15.440,-15.661,-15.748,-15.699,
--15.694,-15.861,-16.094,-16.217,-16.183,-16.057,-15.937,-15.936,-16.083,-16.197,-16.036,-15.628,-15.235,-14.935,-14.503,-13.870,
--13.442,-13.674,-14.459,-15.175,-15.311,-14.873,-14.265,-13.919,-13.982,-14.222,-14.316,-14.317,-14.687,-15.728,-17.133,-18.292,
--18.924,-19.199,-19.378,-19.576,-19.802,-19.943,-19.779,-19.300,-18.950,-19.196,-19.835,-20.093,-19.555,-18.666,-18.106,-17.975,
--17.934,-17.968,-18.556,-19.959,-21.682,-22.946,-23.629,-24.436,-25.965,-27.834,-29.054,-29.276,-29.285,-30.063,-31.619,-33.118,
--33.994,-34.510,-35.195,-36.133,-37.033,-37.702,-38.190,-38.603,-38.989,-39.375,-39.755,-40.061,-40.263,-40.440,-40.694,-41.018,
--41.308,-41.482,-41.551,-41.603,-41.733,-41.943,-42.127,-42.211,-42.260,-42.359,-42.462,-42.504,-42.566,-42.757,-42.962,-42.974,
--42.832,-42.760,-42.771,-42.663,-42.431,-42.328,-42.383,-42.290,-41.950,-41.696,-41.696,-41.606,-41.239,-41.100,-41.627,-42.231,
--41.920,-40.832,-40.284,-41.098,-42.573,-43.478,-43.458,-42.992,-42.471,-41.949,-41.559,-41.497,-41.631,-41.613,-41.458,-41.622,
--42.417,-43.637,-44.888,-46.002,-47.005,-47.908,-48.700,-49.411,-50.069,-50.659,-51.219,-51.858,-52.606,-53.332,-53.911,-54.398,
--54.944,-55.616,-56.352,-57.074,-57.735,-58.314,-58.837,-59.395,-60.072,-60.843,-61.606,-62.299,-62.957,-63.626,-64.288,-64.890,
--65.425,-65.936,-66.461,-66.990,-67.504,-68.010,-68.527,-69.054,-69.567,-70.037,-70.433,-70.738,-71.011,-71.380,-71.943,-72.656,
--73.398,-74.131,-74.930,-75.850,-76.834,-77.790,-78.674,-79.463,-80.086,-80.433,-80.422,-80.102,-79.728,-79.704,-80.267,-81.229,
--82.184,-83.030,-84.074,-85.498,-86.949,-87.903,-88.310,-88.592,-89.045,-89.543,-89.887,-90.125,-90.393,-90.646,-90.761,-90.759,
--90.764,-90.817,-90.874,-90.949,-91.118,-91.405,-91.762,-92.122,-92.403,-92.513,-92.448,-92.346,-92.338,-92.386,-92.349,-92.150,
--91.786,-91.232,-90.481,-89.651,-88.887,-88.186,-87.465,-86.820,-86.532,-86.714,-87.078,-87.167,-86.764,-86.005,-85.151,-84.355,
--83.585,-82.713,-81.647,-80.447,-79.292,-78.326,-77.557,-76.901,-76.282,-75.638,-74.897,-74.019,-73.031,-71.973,-70.835,-69.596,
--68.310,-67.109,-66.115,-65.356,-64.746,-64.145,-63.447,-62.632,-61.706,-60.633,-59.392,-58.084,-56.859,-55.715,-54.494,-53.130,
--51.775,-50.592,-49.539,-48.477,-47.405,-46.414,-45.490,-44.515,-43.391,-42.027,-40.306,-38.300,-36.461,-35.240,-34.481,-33.492,
--31.871,-29.994,-28.473,-27.380,-26.277,-24.870,-23.305,-21.870,-20.688,-19.743,-18.990,-18.409,-18.068,-18.095,-18.400,-18.470,
--17.702,-16.022,-13.957,-12.047,-10.421,-9.032,-8.015,-7.533,-7.381,-6.932,-5.502,-2.743,1.106,5.206,8.521,10.542,
-11.623,12.474,13.417,14.303,15.023,15.760,16.683,17.686,18.594,19.420,20.274,21.128,21.864,22.483,23.110,23.819,
-24.565,25.296,25.998,26.648,27.210,27.707,28.237,28.873,29.579,30.254,30.839,31.365,31.916,32.554,33.270,34.017,
-34.756,35.490,36.232,36.994,37.793,38.659,39.595,40.543,41.416,42.153,42.760,43.282,43.766,44.235,44.703,45.190,
-45.696,46.175,46.585,46.962,47.371,47.765,48.013,48.168,48.612,49.709,51.290,52.656,53.210,52.983,52.445,51.979,
-51.742,51.914,52.725,54.091,55.453,56.227,56.350,56.204,56.088,55.991,55.886,55.945,56.264,56.568,56.481,56.056,
-55.779,55.969,56.398,56.650,56.664,56.732,57.014,57.334,57.479,57.512,57.626,57.796,57.746,57.311,56.679,56.167,
-55.801,55.333,54.719,54.305,54.216,53.677,51.454,47.292,42.667,39.732,39.517,41.353,43.958,46.719,49.824,53.409,
-56.841,58.881,58.691,56.868,55.396,56.198,59.466,63.520,66.373,67.335,67.122,66.809,66.973,67.624,68.518,69.406,
-70.125,70.574,70.652,70.328,69.808,69.472,69.532,69.866,70.295,70.859,71.662,72.603,73.493,74.348,75.375,76.713,
-78.371,80.280,82.198,83.657,84.301,84.279,84.058,83.863,83.563,83.043,82.394,81.679,80.830,79.855,78.818,77.507,
-75.470,72.642,69.721,67.614,66.642,66.495,66.838,67.665,69.085,70.981,72.982,74.695,75.982,77.040,78.133,79.212,
-79.955,80.264,80.497,81.028,81.724,82.125,82.043,81.721,81.428,81.104,80.375,78.679,75.480,70.748,65.369,60.746,
-57.743,56.139,55.318,55.314,56.813,60.036,63.881,66.458,66.617,64.953,63.258,62.951,64.025,65.419,66.199,66.222,
-65.839,65.301,64.631,63.853,63.103,62.492,62.016,61.657,61.446,61.371,61.284,60.996,60.470,59.853,59.292,58.760,
-58.140,57.430,56.765,56.215,55.686,55.055,54.340,53.636,52.970,52.313,51.678,51.097,50.531,49.917,49.298,48.775,
-48.338,47.863,47.301,46.743,46.265,45.805,45.278,44.720,44.228,43.829,43.470,43.114,42.770,42.459,42.179,41.894,
-41.552,41.144,40.730,40.376,40.044,39.620,39.069,38.485,37.962,37.478,36.951,36.372,35.815,35.354,35.022,34.802,
-34.629,34.423,34.157,33.863,33.557,33.204,32.800,32.410,32.072,31.715,31.257,30.756,30.360,30.117,29.904,29.559,
-29.046,28.482,28.024,27.735,27.522,27.209,26.714,26.162,25.782,25.668,25.672,25.546,25.173,24.656,24.187,23.850,
-23.557,23.180,22.721,22.298,21.983,21.734,21.473,21.190,20.909,20.621,20.315,20.025,19.791,19.590,19.366,19.117,
-18.897,18.736,18.625,18.568,18.573,18.575,18.460,18.200,17.933,17.843,17.945,18.066,18.038,17.874,17.700,17.557,
-17.373,17.133,16.966,16.970,17.032,16.966,16.793,16.720,16.823,16.927,16.878,16.778,16.819,16.987,17.112,17.128,
-17.124,17.140,17.106,16.988,16.850,16.732,16.604,16.501,16.570,16.845,17.101,17.045,16.669,16.286,16.190,16.346,
-16.431,16.179,15.659,15.178,14.946,14.870,14.739,14.514,14.342,14.307,14.314,14.249,14.128,14.013,13.879,13.668,
-13.408,13.177,12.994,12.827,12.685,12.622,12.633,12.644,12.591,12.480,12.362,12.307,12.360,12.476,12.507,12.343,
-12.050,11.801,11.674,11.597,11.495,11.411,11.427,11.533,11.623,11.589,11.385,11.043,10.685,10.472,10.466,10.555,
-10.561,10.425,10.244,10.111,10.002,9.835,9.595,9.338,9.097,8.841,8.545,8.244,7.989,7.781,7.590,7.423,
-7.315,7.260,7.186,7.022,6.767,6.469,6.182,5.940,5.753,5.604,5.442,5.232,4.978,4.701,4.410,4.110,
-3.824,3.587,3.402,3.243,3.074,2.869,2.625,2.364,2.119,1.901,1.687,1.456,1.213,.967,.714,.443,
-.167,-.107,-.389,-.691,-.993,-1.274,-1.548,-1.851,-2.189,-2.535,-2.870,-3.192,-3.500,-3.795,-4.097,-4.436,
--4.803,-5.161,-5.481,-5.764,-6.018,-6.247,-6.462,-6.679,-6.901,-7.119,-7.332,-7.552,-7.784,-8.029,-8.294,-8.567,
--8.811,-8.996,-9.148,-9.320,-9.526,-9.738,-9.943,-10.153,-10.362,-10.538,-10.695,-10.893,-11.168,-11.475,-11.738,-11.930,
--12.081,-12.237,-12.428,-12.657,-12.897,-13.102,-13.251,-13.373,-13.513,-13.697,-13.913,-14.120,-14.267,-14.334,-14.361,-14.412,
--14.504,-14.594,-14.654,-14.715,-14.814,-14.943,-15.075,-15.202,-15.331,-15.455,-15.568,-15.686,-15.821,-15.964,-16.100,-16.233,
--16.354,-16.431,-16.449,-16.452,-16.484,-16.517,-16.481,-16.380,-16.300,-16.303,-16.352,-16.376,-16.360,-16.343,-16.341,-16.325,
--16.266,-16.172,-16.076,-15.996,-15.931,-15.873,-15.815,-15.749,-15.664,-15.556,-15.438,-15.333,-15.244,-15.146,-15.009,-14.834,
--14.655,-14.502,-14.369,-14.227,-14.076,-13.954,-13.882,-13.835,-13.777,-13.714,-13.677,-13.662,-13.631,-13.569,-13.508,-13.470,
--13.441,-13.394,-13.337,-13.291,-13.270,-13.280,-13.321,-13.373,-13.398,-13.400,-13.424,-13.489,-13.546,-13.554,-13.539,-13.553,
--13.606,-13.678,-13.765,-13.866,-13.962,-14.037,-14.101,-14.140,-14.112,-14.030,-13.999,-14.078,-14.181,-14.190,-14.121,-14.074,
--14.063,-14.032,-13.991,-13.991,-14.007,-13.960,-13.884,-13.891,-13.978,-14.010,-13.936,-13.861,-13.858,-13.855,-13.787,-13.709,
--13.675,-13.636,-13.538,-13.431,-13.366,-13.295,-13.167,-13.030,-12.935,-12.824,-12.638,-12.430,-12.273,-12.135,-11.949,-11.739,
--11.560,-11.382,-11.142,-10.859,-10.587,-10.315,-10.014,-9.720,-9.467,-9.205,-8.878,-8.513,-8.150,-7.760,-7.330,-6.914,
--6.525,-6.075,-5.538,-5.038,-4.655,-4.277,-3.790,-3.269,-2.817,-2.378,-1.877,-1.387,-.963,-.500,.021,.383,
-.484,.529,.495,-.154,-1.533,-2.343,-.801,3.218,7.716,10.608,11.627,11.967,12.817,14.741,17.674,20.582,
-21.570,19.475,15.470,12.266,11.495,12.397,13.173,12.926,12.009,11.119,10.641,10.638,10.967,11.420,11.941,12.664,
-13.620,14.602,15.467,16.355,17.396,18.382,19.006,19.308,19.625,20.139,20.700,21.111,21.368,21.562,21.717,21.819,
-21.882,21.892,21.745,21.352,20.808,20.382,20.247,20.242,19.984,19.258,18.245,17.293,16.540,15.860,15.129,14.384,
-13.692,13.029,12.349,11.677,11.041,10.381,9.599,8.652,7.556,6.339,5.043,3.721,2.393,1.071,-.176,-1.221,
--1.990,-2.521,-2.890,-3.152,-3.384,-3.701,-4.173,-4.757,-5.352,-5.878,-6.300,-6.654,-7.061,-7.633,-8.345,-9.082,
--9.815,-10.620,-11.471,-12.180,-12.620,-12.911,-13.271,-13.769,-14.318,-14.860,-15.428,-16.074,-16.828,-17.684,-18.547,-19.244,
--19.685,-19.965,-20.236,-20.534,-20.798,-21.013,-21.207,-21.369,-21.471,-21.546,-21.655,-21.776,-21.843,-21.863,-21.906,-21.999,
--22.115,-22.252,-22.439,-22.690,-23.022,-23.470,-23.984,-24.367,-24.486,-24.482,-24.616,-24.913,-25.137,-25.152,-25.122,-25.272,
--25.622,-26.042,-26.420,-26.669,-26.676,-26.412,-26.021,-25.677,-25.375,-24.970,-24.409,-23.811,-23.316,-22.943,-22.615,-22.256,
--21.868,-21.516,-21.223,-20.879,-20.286,-19.343,-18.175,-17.020,-16.046,-15.278,-14.628,-13.950,-13.138,-12.263,-11.528,-11.021,
--10.563,-9.942,-9.213,-8.625,-8.269,-7.993,-7.670,-7.360,-7.124,-6.873,-6.528,-6.187,-5.945,-5.683,-5.262,-4.897,
--5.055,-5.905,-7.044,-7.896,-8.258,-8.313,-8.273,-8.190,-8.082,-8.006,-7.961,-7.852,-7.640,-7.418,-7.260,-7.104,
--6.854,-6.550,-6.307,-6.134,-5.926,-5.646,-5.393,-5.268,-5.240,-5.205,-5.108,-4.967,-4.794,-4.580,-4.328,-4.071,
--3.839,-3.609,-3.320,-2.944,-2.529,-2.165,-1.900,-1.688,-1.451,-1.173,-.890,-.626,-.357,-.057,.277,.656,
-1.087,1.540,1.951,2.298,2.631,3.005,3.415,3.826,4.234,4.652,5.070,5.472,5.885,6.366,6.920,7.490,
-8.029,8.546,9.068,9.593,10.102,10.595,11.080,11.543,11.961,12.335,12.690,13.031,13.343,13.625,13.910,14.221,
-14.530,14.800,15.046,15.314,15.614,15.910,16.189,16.473,16.766,17.025,17.229,17.435,17.711,18.033,18.307,18.468,
-18.519,18.488,18.398,18.289,18.209,18.173,18.155,18.126,18.078,18.013,17.929,17.831,17.721,17.596,17.462,17.348,
-17.271,17.196,17.080,16.929,16.784,16.669,16.584,16.532,16.486,16.385,16.211,16.050,15.996,16.024,16.045,16.047,
-16.092,16.194,16.315,16.481,16.746,17.058,17.277,17.373,17.446,17.522,17.494,17.309,17.059,16.795,16.698,16.248,
-15.733,15.430,15.376,15.177,14.491,13.517,12.732,12.297,11.999,11.667,11.307,10.899,10.379,9.868,9.605,9.585,
-9.519,9.240,8.914,8.727,8.614,8.424,8.180,7.974,7.784,7.553,7.350,7.281,7.303,7.292,7.232,7.203,
-7.241,7.319,7.437,7.602,7.741,7.735,7.525,7.161,6.791,6.646,6.922,7.538,8.092,8.163,7.666,6.862,
-6.080,5.506,5.147,4.888,4.591,4.235,3.929,3.761,3.682,3.610,3.532,3.424,3.148,2.594,1.843,1.101,
-.481,-.028,-.458,-.871,-1.417,-2.238,-3.291,-4.369,-5.288,-5.972,-6.414,-6.693,-6.987,-7.430,-7.964,-8.434,
--8.810,-9.202,-9.678,-10.204,-10.740,-11.251,-11.667,-11.978,-12.339,-12.917,-13.648,-14.298,-14.769,-15.143,-15.423,-15.478,
--15.312,-15.180,-15.290,-15.553,-15.740,-15.768,-15.715,-15.674,-15.697,-15.799,-15.907,-15.886,-15.666,-15.292,-14.802,-14.206,
--13.643,-13.410,-13.682,-14.292,-14.855,-15.059,-14.810,-14.256,-13.746,-13.593,-13.780,-14.029,-14.239,-14.685,-15.621,-16.874,
--18.008,-18.756,-19.122,-19.220,-19.211,-19.288,-19.466,-19.515,-19.339,-19.277,-19.685,-20.294,-20.389,-19.713,-18.805,-18.285,
--18.159,-18.092,-18.132,-18.728,-20.057,-21.663,-22.966,-23.952,-25.123,-26.737,-28.333,-29.233,-29.432,-29.695,-30.647,-32.048,
--33.203,-33.888,-34.516,-35.442,-36.492,-37.298,-37.775,-38.105,-38.433,-38.782,-39.145,-39.491,-39.751,-39.914,-40.083,-40.353,
--40.687,-40.981,-41.182,-41.312,-41.416,-41.541,-41.692,-41.811,-41.861,-41.915,-42.051,-42.188,-42.183,-42.075,-42.047,-42.160,
--42.294,-42.363,-42.379,-42.299,-42.062,-41.811,-41.770,-41.860,-41.765,-41.468,-41.297,-41.302,-41.107,-40.682,-40.684,-41.451,
--42.121,-41.576,-40.113,-39.290,-40.044,-41.670,-42.910,-43.320,-43.202,-42.843,-42.424,-42.261,-42.491,-42.702,-42.424,-41.886,
--41.812,-42.491,-43.510,-44.418,-45.213,-46.071,-46.971,-47.810,-48.602,-49.370,-50.030,-50.565,-51.141,-51.881,-52.658,-53.273,
--53.753,-54.303,-55.023,-55.812,-56.534,-57.146,-57.673,-58.180,-58.759,-59.460,-60.219,-60.925,-61.560,-62.203,-62.900,-63.596,
--64.229,-64.811,-65.381,-65.925,-66.409,-66.861,-67.350,-67.886,-68.401,-68.840,-69.218,-69.578,-69.933,-70.300,-70.735,-71.280,
--71.914,-72.602,-73.369,-74.259,-75.243,-76.227,-77.151,-77.998,-78.727,-79.247,-79.461,-79.314,-78.864,-78.397,-78.364,-79.013,
--80.104,-81.206,-82.258,-83.576,-85.202,-86.613,-87.323,-87.531,-87.832,-88.428,-88.991,-89.275,-89.442,-89.700,-89.967,-90.077,
--90.080,-90.125,-90.215,-90.280,-90.363,-90.564,-90.868,-91.180,-91.448,-91.649,-91.716,-91.639,-91.549,-91.563,-91.612,-91.542,
--91.320,-90.997,-90.538,-89.883,-89.125,-88.439,-87.850,-87.271,-86.758,-86.533,-86.650,-86.833,-86.732,-86.258,-85.561,-84.804,
--84.037,-83.213,-82.243,-81.082,-79.832,-78.702,-77.819,-77.129,-76.512,-75.915,-75.310,-74.623,-73.784,-72.813,-71.762,-70.620,
--69.363,-68.043,-66.787,-65.712,-64.877,-64.274,-63.793,-63.271,-62.596,-61.755,-60.749,-59.563,-58.265,-56.998,-55.793,-54.502,
--53.060,-51.687,-50.663,-49.942,-49.191,-48.200,-47.073,-46.003,-45.004,-43.912,-42.507,-40.681,-38.640,-36.895,-35.799,-35.052,
--33.954,-32.245,-30.427,-29.078,-28.127,-27.057,-25.636,-24.105,-22.733,-21.523,-20.379,-19.305,-18.371,-17.687,-17.414,-17.584,
--17.842,-17.615,-16.611,-15.015,-13.163,-11.280,-9.623,-8.597,-8.424,-8.785,-8.929,-8.103,-5.852,-2.194,2.196,6.162,
-8.813,10.216,11.157,12.249,13.469,14.551,15.482,16.425,17.403,18.304,19.108,19.910,20.732,21.488,22.149,22.802,
-23.520,24.263,24.951,25.574,26.191,26.845,27.522,28.173,28.764,29.315,29.878,30.473,31.061,31.604,32.137,32.742,
-33.449,34.195,34.909,35.589,36.292,37.068,37.930,38.869,39.843,40.750,41.464,41.958,42.370,42.879,43.513,44.123,
-44.581,44.948,45.409,46.061,46.805,47.430,47.780,47.871,47.915,48.209,48.915,49.923,50.942,51.685,51.964,51.683,
-50.956,50.257,50.253,51.256,52.851,54.228,54.889,54.958,54.815,54.663,54.569,54.725,55.339,56.239,56.852,56.767,
-56.206,55.774,55.781,56.004,56.082,55.968,55.877,55.963,56.180,56.428,56.679,56.914,57.006,56.791,56.278,55.736,
-55.424,55.235,54.780,53.979,53.315,53.118,52.649,50.466,46.067,40.912,37.377,36.751,38.518,41.457,44.926,48.901,
-53.103,56.529,57.970,57.100,55.130,54.223,55.863,59.612,63.567,66.088,66.961,66.994,66.965,67.191,67.738,68.582,
-69.555,70.416,71.009,71.268,71.148,70.719,70.248,70.022,70.105,70.399,70.829,71.363,71.932,72.528,73.287,74.321,
-75.553,76.865,78.305,79.924,81.503,82.709,83.462,83.929,84.203,84.244,84.088,83.840,83.444,82.797,82.062,81.467,
-80.697,78.944,75.875,72.278,69.398,67.787,67.108,66.907,67.168,68.070,69.516,71.099,72.479,73.708,75.137,76.928,
-78.703,79.852,80.262,80.514,81.164,82.055,82.602,82.608,82.400,82.147,81.394,79.445,76.001,71.346,66.159,61.325,
-57.705,55.698,54.995,54.987,55.549,57.233,60.472,64.570,67.756,68.521,66.974,64.762,63.577,63.820,64.693,65.297,
-65.370,65.089,64.587,63.880,63.067,62.341,61.812,61.462,61.265,61.239,61.327,61.335,61.076,60.561,59.990,59.516,
-59.079,58.524,57.842,57.180,56.624,56.093,55.493,54.863,54.277,53.697,53.041,52.343,51.707,51.129,50.501,49.804,
-49.150,48.631,48.203,47.772,47.303,46.808,46.294,45.779,45.279,44.786,44.292,43.843,43.501,43.238,42.957,42.610,
-42.236,41.861,41.464,41.045,40.643,40.244,39.785,39.261,38.751,38.292,37.819,37.290,36.770,36.332,35.967,35.642,
-35.366,35.131,34.868,34.534,34.173,33.825,33.455,33.041,32.651,32.336,32.044,31.743,31.531,31.457,31.302,30.775,
-29.915,29.113,28.665,28.467,28.226,27.825,27.344,26.853,26.365,25.980,25.854,25.959,25.997,25.674,25.028,24.381,
-23.970,23.729,23.450,23.066,22.668,22.322,21.989,21.643,21.333,21.079,20.816,20.491,20.151,19.878,19.667,19.457,
-19.220,18.958,18.684,18.479,18.489,18.742,18.992,18.908,18.456,17.961,17.741,17.787,17.875,17.878,17.841,17.794,
-17.662,17.419,17.205,17.185,17.316,17.365,17.193,16.936,16.832,16.906,16.964,16.882,16.774,16.809,16.967,17.098,
-17.153,17.218,17.329,17.384,17.274,17.008,16.676,16.385,16.251,16.363,16.660,16.899,16.842,16.486,16.063,15.811,
-15.760,15.752,15.629,15.402,15.200,15.085,14.970,14.763,14.518,14.367,14.323,14.260,14.098,13.900,13.741,13.584,
-13.363,13.095,12.850,12.645,12.461,12.321,12.273,12.309,12.354,12.337,12.251,12.159,12.164,12.320,12.517,12.530,
-12.255,11.854,11.578,11.481,11.421,11.303,11.195,11.176,11.215,11.242,11.241,11.192,11.018,10.710,10.419,10.310,
-10.342,10.317,10.134,9.905,9.757,9.649,9.448,9.130,8.798,8.527,8.280,8.014,7.769,7.605,7.488,7.327,
-7.101,6.890,6.764,6.695,6.593,6.410,6.171,5.930,5.721,5.554,5.410,5.260,5.076,4.846,4.569,4.261,
-3.959,3.698,3.483,3.289,3.099,2.918,2.743,2.543,2.305,2.056,1.827,1.615,1.398,1.179,.967,.751,
-.512,.251,-.023,-.327,-.673,-1.024,-1.326,-1.579,-1.848,-2.178,-2.552,-2.912,-3.223,-3.489,-3.737,-4.006,
--4.327,-4.700,-5.089,-5.453,-5.766,-6.030,-6.265,-6.494,-6.722,-6.937,-7.134,-7.332,-7.543,-7.764,-7.993,-8.240,
--8.506,-8.753,-8.947,-9.101,-9.254,-9.420,-9.592,-9.775,-9.982,-10.200,-10.396,-10.579,-10.793,-11.057,-11.334,-11.575,
--11.769,-11.938,-12.115,-12.322,-12.562,-12.799,-12.990,-13.136,-13.276,-13.440,-13.629,-13.835,-14.042,-14.207,-14.286,-14.300,
--14.321,-14.388,-14.471,-14.533,-14.587,-14.662,-14.761,-14.868,-14.980,-15.097,-15.206,-15.309,-15.424,-15.554,-15.675,-15.777,
--15.885,-16.002,-16.082,-16.106,-16.130,-16.209,-16.294,-16.285,-16.174,-16.063,-16.032,-16.052,-16.048,-16.013,-15.988,-15.990,
--15.985,-15.942,-15.866,-15.776,-15.687,-15.605,-15.538,-15.483,-15.429,-15.362,-15.281,-15.182,-15.066,-14.934,-14.784,-14.610,
--14.421,-14.244,-14.113,-14.019,-13.920,-13.792,-13.663,-13.577,-13.531,-13.487,-13.435,-13.405,-13.399,-13.378,-13.313,-13.230,
--13.169,-13.131,-13.093,-13.054,-13.030,-13.031,-13.052,-13.094,-13.144,-13.180,-13.199,-13.233,-13.297,-13.357,-13.377,-13.374,
--13.390,-13.441,-13.516,-13.616,-13.737,-13.857,-13.962,-14.059,-14.128,-14.112,-14.015,-13.945,-13.983,-14.068,-14.081,-14.021,
--13.978,-13.978,-13.971,-13.949,-13.956,-13.973,-13.940,-13.878,-13.885,-13.962,-13.995,-13.935,-13.874,-13.877,-13.878,-13.808,
--13.711,-13.653,-13.610,-13.541,-13.471,-13.419,-13.331,-13.182,-13.041,-12.960,-12.874,-12.709,-12.507,-12.342,-12.198,-12.018,
--11.820,-11.648,-11.470,-11.231,-10.952,-10.678,-10.401,-10.099,-9.812,-9.564,-9.297,-8.957,-8.587,-8.241,-7.884,-7.465,
--7.019,-6.589,-6.145,-5.664,-5.214,-4.829,-4.421,-3.926,-3.415,-2.960,-2.502,-2.002,-1.540,-1.139,-.683,-.181,
-.137,.216,.320,.414,-.136,-1.566,-2.645,-1.513,2.180,6.661,9.799,10.963,10.993,11.153,12.507,15.439,
-18.878,20.525,18.944,15.397,12.788,12.675,14.000,14.786,14.273,13.067,11.964,11.297,11.113,11.350,11.811,12.324,
-12.910,13.655,14.509,15.383,16.316,17.316,18.160,18.622,18.833,19.194,19.896,20.728,21.379,21.756,21.948,22.044,
-22.095,22.152,22.227,22.219,22.008,21.636,21.319,21.196,21.109,20.722,19.911,18.918,18.056,17.350,16.598,15.712,
-14.830,14.086,13.452,12.834,12.215,11.590,10.875,9.975,8.902,7.755,6.619,5.508,4.371,3.141,1.832,.588,
--.420,-1.146,-1.667,-2.047,-2.308,-2.548,-2.934,-3.537,-4.255,-4.955,-5.588,-6.136,-6.564,-6.911,-7.309,-7.857,
--8.538,-9.320,-10.215,-11.144,-11.879,-12.267,-12.446,-12.695,-13.131,-13.643,-14.127,-14.632,-15.283,-16.141,-17.139,-18.103,
--18.856,-19.363,-19.753,-20.144,-20.514,-20.790,-20.993,-21.191,-21.374,-21.483,-21.535,-21.605,-21.703,-21.776,-21.817,-21.869,
--21.950,-22.047,-22.178,-22.372,-22.618,-22.903,-23.260,-23.673,-24.013,-24.189,-24.326,-24.611,-24.993,-25.224,-25.213,-25.163,
--25.294,-25.593,-25.930,-26.237,-26.462,-26.495,-26.280,-25.925,-25.555,-25.142,-24.601,-23.998,-23.510,-23.197,-22.930,-22.574,
--22.146,-21.755,-21.460,-21.205,-20.841,-20.217,-19.292,-18.166,-17.010,-15.956,-15.070,-14.338,-13.658,-12.920,-12.157,-11.550,
--11.171,-10.822,-10.248,-9.471,-8.752,-8.245,-7.857,-7.478,-7.151,-6.928,-6.712,-6.398,-6.045,-5.759,-5.487,-5.124,
--4.824,-4.973,-5.748,-6.842,-7.730,-8.144,-8.189,-8.089,-7.977,-7.911,-7.920,-7.965,-7.943,-7.803,-7.616,-7.464,
--7.321,-7.111,-6.853,-6.640,-6.500,-6.349,-6.125,-5.890,-5.742,-5.686,-5.635,-5.525,-5.354,-5.146,-4.907,-4.649,
--4.406,-4.193,-3.981,-3.714,-3.374,-2.997,-2.641,-2.329,-2.038,-1.734,-1.414,-1.103,-.819,-.540,-.233,.121,
-.513,.923,1.332,1.729,2.121,2.517,2.909,3.286,3.662,4.067,4.506,4.936,5.325,5.704,6.143,6.668,
-7.230,7.767,8.274,8.784,9.317,9.863,10.408,10.946,11.462,11.921,12.308,12.640,12.947,13.232,13.493,13.750,
-14.028,14.311,14.557,14.765,14.993,15.281,15.601,15.901,16.175,16.448,16.717,16.965,17.219,17.530,17.898,18.240,
-18.462,18.525,18.446,18.275,18.087,17.961,17.922,17.931,17.926,17.887,17.826,17.751,17.646,17.490,17.296,17.106,
-16.959,16.843,16.715,16.559,16.408,16.297,16.228,16.182,16.139,16.065,15.928,15.763,15.664,15.675,15.735,15.787,
-15.871,16.040,16.252,16.448,16.658,16.927,17.184,17.324,17.387,17.485,17.579,17.517,17.285,17.007,16.698,16.525,
-16.062,15.521,15.281,15.331,15.105,14.213,13.027,12.213,11.920,11.769,11.494,11.157,10.799,10.325,9.797,9.471,
-9.405,9.332,9.059,8.745,8.588,8.503,8.299,8.001,7.764,7.604,7.431,7.263,7.197,7.228,7.247,7.222,
-7.215,7.252,7.305,7.384,7.535,7.732,7.877,7.901,7.808,7.673,7.661,7.976,8.646,9.371,9.690,9.357,
-8.517,7.538,6.723,6.159,5.748,5.355,4.958,4.645,4.473,4.395,4.347,4.318,4.252,3.999,3.452,2.704,
-1.962,1.349,.876,.517,.193,-.278,-1.060,-2.099,-3.158,-4.037,-4.695,-5.193,-5.628,-6.108,-6.673,-7.229,
--7.649,-7.939,-8.219,-8.582,-9.037,-9.565,-10.109,-10.575,-10.952,-11.419,-12.146,-13.036,-13.811,-14.352,-14.761,-15.086,
--15.208,-15.090,-14.939,-14.977,-15.175,-15.350,-15.414,-15.420,-15.430,-15.457,-15.515,-15.614,-15.707,-15.686,-15.421,-14.851,
--14.083,-13.414,-13.125,-13.244,-13.580,-13.939,-14.193,-14.195,-13.873,-13.438,-13.276,-13.523,-13.945,-14.339,-14.841,-15.667,
--16.737,-17.748,-18.483,-18.881,-18.952,-18.816,-18.723,-18.823,-19.019,-19.215,-19.552,-20.126,-20.616,-20.549,-19.928,-19.237,
--18.815,-18.535,-18.265,-18.286,-18.988,-20.301,-21.731,-22.940,-24.069,-25.424,-26.973,-28.297,-29.085,-29.561,-30.264,-31.394,
--32.565,-33.339,-33.827,-34.512,-35.567,-36.644,-37.349,-37.683,-37.900,-38.176,-38.527,-38.904,-39.227,-39.422,-39.529,-39.690,
--39.967,-40.267,-40.489,-40.651,-40.807,-40.960,-41.105,-41.266,-41.437,-41.592,-41.763,-41.998,-42.190,-42.144,-41.863,-41.616,
--41.633,-41.860,-42.064,-42.067,-41.829,-41.467,-41.224,-41.241,-41.334,-41.220,-40.965,-40.865,-40.891,-40.703,-40.379,-40.525,
--41.266,-41.671,-40.863,-39.385,-38.707,-39.453,-40.848,-41.903,-42.408,-42.578,-42.517,-42.425,-42.713,-43.373,-43.691,-43.167,
--42.366,-42.277,-43.023,-43.853,-44.273,-44.575,-45.171,-46.011,-46.863,-47.714,-48.600,-49.374,-49.937,-50.473,-51.193,-51.993,
--52.639,-53.142,-53.733,-54.500,-55.293,-55.959,-56.503,-57.009,-57.539,-58.142,-58.837,-59.561,-60.220,-60.816,-61.448,-62.157,
--62.874,-63.529,-64.134,-64.717,-65.251,-65.716,-66.170,-66.681,-67.219,-67.681,-68.038,-68.375,-68.768,-69.207,-69.646,-70.079,
--70.541,-71.070,-71.729,-72.581,-73.598,-74.645,-75.608,-76.493,-77.321,-77.997,-78.368,-78.385,-78.101,-77.617,-77.155,-77.093,
--77.687,-78.779,-80.013,-81.327,-82.920,-84.672,-85.992,-86.510,-86.624,-86.996,-87.709,-88.299,-88.522,-88.634,-88.874,-89.115,
--89.186,-89.187,-89.283,-89.425,-89.502,-89.588,-89.815,-90.135,-90.409,-90.608,-90.761,-90.820,-90.751,-90.672,-90.704,-90.759,
--90.658,-90.386,-90.045,-89.626,-89.048,-88.381,-87.811,-87.381,-86.985,-86.619,-86.421,-86.402,-86.343,-86.046,-85.544,-84.971,
--84.360,-83.651,-82.790,-81.736,-80.488,-79.182,-78.066,-77.270,-76.685,-76.135,-75.566,-74.988,-74.351,-73.576,-72.655,-71.611,
--70.417,-69.065,-67.660,-66.355,-65.250,-64.396,-63.824,-63.465,-63.109,-62.559,-61.780,-60.832,-59.737,-58.528,-57.302,-56.084,
--54.736,-53.197,-51.739,-50.743,-50.197,-49.647,-48.710,-47.468,-46.264,-45.261,-44.288,-43.028,-41.318,-39.372,-37.690,-36.570,
--35.688,-34.420,-32.635,-30.906,-29.756,-28.964,-27.909,-26.403,-24.821,-23.485,-22.290,-21.004,-19.641,-18.407,-17.484,-16.977,
--16.891,-17.044,-17.095,-16.760,-15.917,-14.538,-12.726,-10.889,-9.647,-9.336,-9.691,-10.059,-9.777,-8.292,-5.287,-1.076,
-3.239,6.464,8.298,9.437,10.678,12.168,13.611,14.861,16.025,17.145,18.094,18.822,19.472,20.202,21.001,21.774,
-22.491,23.198,23.907,24.574,25.174,25.756,26.390,27.073,27.717,28.240,28.683,29.181,29.808,30.494,31.121,31.685,
-32.294,33.006,33.756,34.460,35.139,35.869,36.663,37.469,38.268,39.096,39.934,40.665,41.203,41.638,42.162,42.832,
-43.487,43.941,44.243,44.652,45.345,46.186,46.836,47.110,47.161,47.285,47.583,47.938,48.329,48.974,49.986,50.941,
-51.125,50.358,49.405,49.310,50.335,51.770,52.775,53.183,53.337,53.430,53.343,53.118,53.210,54.012,55.271,56.238,
-56.439,56.098,55.751,55.640,55.608,55.461,55.219,55.016,54.938,55.014,55.238,55.524,55.703,55.633,55.299,54.825,
-54.414,54.198,54.067,53.729,53.100,52.520,52.201,51.473,49.073,44.599,39.438,35.838,35.080,36.808,39.969,43.873,
-48.160,52.176,54.882,55.546,54.523,53.321,53.706,56.360,60.303,63.773,65.745,66.492,66.806,67.100,67.413,67.838,
-68.517,69.365,70.121,70.647,70.959,71.017,70.742,70.242,69.820,69.731,70.014,70.547,71.149,71.691,72.211,72.870,
-73.711,74.561,75.305,76.124,77.261,78.659,80.042,81.246,82.243,82.932,83.217,83.244,83.260,83.257,83.068,82.786,
-82.649,82.407,81.270,78.811,75.634,72.806,70.826,69.494,68.616,68.371,68.894,69.842,70.629,71.041,71.498,72.632,
-74.583,76.723,78.230,78.973,79.624,80.774,82.150,82.967,82.881,82.198,81.125,79.235,75.952,71.388,66.440,62.123,
-58.957,56.928,55.749,55.074,54.688,54.796,56.088,59.164,63.619,67.821,69.963,69.509,67.538,65.630,64.581,64.228,
-64.137,64.085,63.948,63.568,62.907,62.153,61.523,61.054,60.700,60.520,60.607,60.872,61.033,60.869,60.432,59.951,
-59.568,59.203,58.703,58.057,57.394,56.798,56.230,55.653,55.127,54.693,54.256,53.683,52.995,52.332,51.749,51.155,
-50.470,49.743,49.095,48.592,48.199,47.809,47.322,46.753,46.210,45.744,45.278,44.755,44.280,43.987,43.809,43.539,
-43.102,42.628,42.230,41.870,41.470,41.024,40.551,40.042,39.527,39.065,38.648,38.196,37.706,37.281,36.965,36.673,
-36.341,36.012,35.709,35.346,34.883,34.418,34.045,33.710,33.336,32.963,32.636,32.310,32.007,31.920,32.093,32.139,
-31.594,30.569,29.719,29.452,29.450,29.148,28.447,27.697,27.146,26.728,26.383,26.259,26.415,26.552,26.263,25.512,
-24.687,24.141,23.861,23.611,23.279,22.925,22.597,22.250,21.877,21.549,21.290,21.018,20.680,20.346,20.094,19.891,
-19.663,19.404,19.132,18.845,18.621,18.661,19.021,19.373,19.264,18.654,18.007,17.764,17.908,18.130,18.257,18.308,
-18.266,18.032,17.654,17.376,17.373,17.520,17.541,17.331,17.052,16.902,16.894,16.899,16.842,16.783,16.805,16.901,
-17.013,17.130,17.292,17.477,17.574,17.462,17.124,16.670,16.277,16.101,16.184,16.410,16.578,16.544,16.301,15.934,
-15.551,15.249,15.094,15.090,15.173,15.238,15.192,15.001,14.731,14.513,14.422,14.383,14.247,13.965,13.627,13.338,
-13.106,12.889,12.673,12.463,12.254,12.058,11.925,11.897,11.951,12.017,12.038,11.994,11.935,11.969,12.152,12.349,
-12.314,11.982,11.589,11.399,11.396,11.370,11.238,11.113,11.066,11.017,10.920,10.866,10.910,10.914,10.728,10.428,
-10.229,10.179,10.102,9.870,9.579,9.378,9.237,9.010,8.654,8.286,8.005,7.787,7.578,7.400,7.299,7.232,
-7.081,6.805,6.500,6.285,6.180,6.105,5.983,5.803,5.604,5.424,5.278,5.153,5.024,4.865,4.658,4.402,
-4.124,3.867,3.654,3.463,3.259,3.047,2.861,2.698,2.502,2.237,1.932,1.644,1.389,1.157,.948,.775,
-.625,.469,.290,.074,-.208,-.571,-.967,-1.312,-1.576,-1.825,-2.138,-2.519,-2.902,-3.225,-3.484,-3.720,
--3.983,-4.299,-4.666,-5.056,-5.434,-5.769,-6.050,-6.296,-6.533,-6.768,-6.987,-7.185,-7.374,-7.567,-7.764,-7.973,
--8.210,-8.477,-8.734,-8.944,-9.112,-9.260,-9.402,-9.541,-9.700,-9.896,-10.110,-10.311,-10.503,-10.715,-10.953,-11.187,
--11.395,-11.580,-11.759,-11.954,-12.183,-12.437,-12.669,-12.844,-12.992,-13.168,-13.379,-13.585,-13.771,-13.952,-14.114,-14.212,
--14.247,-14.279,-14.355,-14.449,-14.512,-14.547,-14.589,-14.655,-14.741,-14.836,-14.928,-15.013,-15.104,-15.219,-15.342,-15.428,
--15.480,-15.547,-15.645,-15.720,-15.743,-15.778,-15.887,-16.016,-16.045,-15.952,-15.836,-15.783,-15.774,-15.749,-15.706,-15.679,
--15.672,-15.657,-15.617,-15.556,-15.481,-15.391,-15.298,-15.221,-15.166,-15.117,-15.060,-14.990,-14.902,-14.789,-14.643,-14.466,
--14.263,-14.049,-13.856,-13.721,-13.647,-13.587,-13.495,-13.379,-13.288,-13.240,-13.207,-13.167,-13.137,-13.127,-13.109,-13.051,
--12.971,-12.901,-12.847,-12.798,-12.762,-12.762,-12.790,-12.825,-12.867,-12.927,-12.992,-13.041,-13.075,-13.120,-13.178,-13.232,
--13.277,-13.322,-13.372,-13.429,-13.511,-13.626,-13.747,-13.849,-13.934,-13.998,-14.005,-13.942,-13.879,-13.888,-13.939,-13.945,
--13.897,-13.863,-13.874,-13.887,-13.883,-13.892,-13.908,-13.889,-13.846,-13.850,-13.910,-13.944,-13.910,-13.871,-13.871,-13.862,
--13.794,-13.700,-13.631,-13.577,-13.519,-13.473,-13.437,-13.350,-13.197,-13.049,-12.963,-12.881,-12.738,-12.563,-12.412,-12.269,
--12.092,-11.904,-11.733,-11.545,-11.296,-11.016,-10.750,-10.483,-10.192,-9.913,-9.662,-9.378,-9.018,-8.644,-8.319,-7.995,
--7.596,-7.143,-6.703,-6.276,-5.834,-5.400,-4.981,-4.515,-3.991,-3.501,-3.085,-2.655,-2.170,-1.730,-1.363,-.930,
--.420,-.069,.032,.130,.240,-.228,-1.595,-2.825,-2.115,1.148,5.565,9.057,10.594,10.555,10.145,10.767,
-13.169,16.438,18.339,17.521,15.212,13.960,14.787,16.328,16.775,15.814,14.346,13.136,12.345,11.962,12.003,12.318,
-12.671,13.036,13.581,14.377,15.324,16.306,17.213,17.879,18.217,18.440,18.917,19.775,20.757,21.517,21.939,22.128,
-22.231,22.336,22.474,22.615,22.664,22.544,22.314,22.139,22.075,21.936,21.457,20.616,19.682,18.887,18.149,17.255,
-16.205,15.233,14.489,13.891,13.307,12.708,12.082,11.328,10.361,9.240,8.115,7.065,6.046,4.952,3.729,2.451,
-1.314,.476,-.097,-.554,-.971,-1.330,-1.693,-2.214,-2.945,-3.746,-4.466,-5.092,-5.655,-6.117,-6.469,-6.828,
--7.327,-7.973,-8.722,-9.577,-10.492,-11.271,-11.740,-11.985,-12.269,-12.726,-13.256,-13.740,-14.234,-14.903,-15.816,-16.868,
--17.843,-18.580,-19.094,-19.528,-19.969,-20.363,-20.640,-20.841,-21.048,-21.251,-21.383,-21.444,-21.496,-21.559,-21.614,-21.670,
--21.755,-21.855,-21.945,-22.051,-22.222,-22.455,-22.734,-23.077,-23.463,-23.769,-23.918,-24.035,-24.293,-24.639,-24.860,-24.910,
--24.982,-25.222,-25.545,-25.817,-26.020,-26.152,-26.122,-25.885,-25.549,-25.212,-24.796,-24.204,-23.564,-23.127,-22.944,-22.805,
--22.517,-22.115,-21.747,-21.459,-21.149,-20.686,-20.009,-19.140,-18.133,-17.036,-15.920,-14.896,-14.050,-13.339,-12.649,-11.987,
--11.512,-11.272,-11.025,-10.457,-9.569,-8.674,-8.037,-7.636,-7.327,-7.060,-6.838,-6.594,-6.257,-5.883,-5.583,-5.357,
--5.123,-4.937,-5.049,-5.647,-6.601,-7.525,-8.094,-8.249,-8.143,-7.971,-7.868,-7.879,-7.964,-8.022,-7.979,-7.855,
--7.718,-7.592,-7.441,-7.247,-7.052,-6.893,-6.743,-6.562,-6.371,-6.232,-6.156,-6.085,-5.956,-5.758,-5.515,-5.252,
--4.997,-4.773,-4.571,-4.346,-4.065,-3.744,-3.419,-3.102,-2.781,-2.439,-2.077,-1.708,-1.351,-1.028,-.731,-.422,
--.070,.307,.674,1.033,1.429,1.878,2.332,2.727,3.069,3.424,3.842,4.299,4.729,5.107,5.477,5.917,
-6.458,7.060,7.644,8.171,8.664,9.166,9.691,10.224,10.752,11.262,11.723,12.103,12.410,12.694,12.982,13.259,
-13.513,13.762,14.016,14.247,14.442,14.653,14.947,15.311,15.670,15.986,16.284,16.583,16.860,17.110,17.385,17.721,
-18.062,18.292,18.350,18.256,18.075,17.875,17.727,17.668,17.671,17.664,17.606,17.510,17.397,17.247,17.038,16.801,
-16.602,16.466,16.349,16.205,16.057,15.964,15.938,15.939,15.925,15.876,15.777,15.637,15.526,15.527,15.631,15.753,
-15.865,16.036,16.295,16.560,16.763,16.938,17.119,17.239,17.261,17.285,17.383,17.430,17.273,16.999,16.774,16.525,
-16.411,15.975,15.408,15.193,15.290,15.002,13.920,12.576,11.786,11.640,11.581,11.274,10.888,10.581,10.228,9.768,
-9.411,9.280,9.181,8.931,8.648,8.512,8.432,8.208,7.869,7.602,7.457,7.330,7.189,7.118,7.142,7.185,
-7.209,7.238,7.269,7.275,7.301,7.430,7.651,7.856,7.983,8.072,8.207,8.480,8.987,9.727,10.478,10.868,
-10.655,9.920,8.972,8.113,7.473,6.994,6.545,6.060,5.594,5.249,5.081,5.084,5.173,5.184,4.935,4.382,
-3.669,2.977,2.379,1.879,1.484,1.147,.706,.021,-.850,-1.714,-2.470,-3.166,-3.867,-4.564,-5.234,-5.868,
--6.429,-6.862,-7.160,-7.387,-7.626,-7.962,-8.462,-9.100,-9.741,-10.317,-10.947,-11.769,-12.677,-13.409,-13.873,-14.224,
--14.581,-14.852,-14.926,-14.884,-14.893,-14.990,-15.077,-15.096,-15.095,-15.147,-15.270,-15.434,-15.602,-15.744,-15.801,-15.640,
--15.123,-14.297,-13.444,-12.851,-12.566,-12.492,-12.604,-12.893,-13.173,-13.209,-13.075,-13.119,-13.498,-13.986,-14.368,-14.779,
--15.470,-16.403,-17.306,-17.976,-18.367,-18.477,-18.365,-18.215,-18.226,-18.463,-18.929,-19.615,-20.346,-20.746,-20.599,-20.138,
--19.732,-19.392,-18.918,-18.464,-18.554,-19.441,-20.755,-21.980,-23.038,-24.211,-25.609,-26.985,-28.048,-28.814,-29.592,-30.639,
--31.845,-32.832,-33.401,-33.812,-34.491,-35.509,-36.516,-37.175,-37.493,-37.691,-37.935,-38.265,-38.636,-38.941,-39.099,-39.180,
--39.337,-39.590,-39.800,-39.898,-39.993,-40.188,-40.449,-40.706,-40.966,-41.228,-41.448,-41.643,-41.887,-42.119,-42.123,-41.835,
--41.520,-41.486,-41.713,-41.889,-41.763,-41.367,-40.956,-40.777,-40.838,-40.888,-40.721,-40.462,-40.360,-40.361,-40.235,-40.108,
--40.366,-40.882,-40.881,-40.006,-39.039,-39.001,-39.857,-40.733,-41.172,-41.455,-41.776,-41.965,-42.137,-42.761,-43.719,-44.090,
--43.421,-42.594,-42.734,-43.689,-44.356,-44.269,-44.062,-44.388,-45.144,-45.967,-46.831,-47.802,-48.685,-49.301,-49.829,-50.535,
--51.340,-51.999,-52.527,-53.161,-53.956,-54.714,-55.298,-55.790,-56.312,-56.886,-57.505,-58.181,-58.881,-59.529,-60.120,-60.738,
--61.426,-62.123,-62.764,-63.361,-63.940,-64.482,-64.972,-65.458,-65.977,-66.476,-66.884,-67.229,-67.615,-68.079,-68.553,-68.971,
--69.343,-69.729,-70.209,-70.888,-71.826,-72.924,-73.971,-74.880,-75.750,-76.624,-77.290,-77.487,-77.224,-76.743,-76.255,-75.895,
--75.888,-76.461,-77.566,-78.937,-80.454,-82.173,-83.893,-85.084,-85.512,-85.652,-86.126,-86.911,-87.499,-87.695,-87.806,-88.054,
--88.267,-88.288,-88.274,-88.405,-88.575,-88.638,-88.699,-88.927,-89.255,-89.503,-89.657,-89.792,-89.869,-89.823,-89.756,-89.798,
--89.854,-89.722,-89.394,-89.021,-88.632,-88.124,-87.523,-87.003,-86.640,-86.339,-86.058,-85.868,-85.750,-85.539,-85.144,-84.665,
--84.199,-83.679,-82.994,-82.124,-81.078,-79.861,-78.597,-77.545,-76.844,-76.355,-75.854,-75.273,-74.666,-74.031,-73.309,-72.465,
--71.452,-70.189,-68.693,-67.170,-65.851,-64.814,-64.033,-63.522,-63.258,-63.039,-62.607,-61.881,-60.956,-59.918,-58.800,-57.656,
--56.490,-55.163,-53.597,-52.050,-50.942,-50.334,-49.790,-48.871,-47.612,-46.383,-45.420,-44.593,-43.559,-42.085,-40.287,-38.598,
--37.328,-36.253,-34.849,-33.025,-31.345,-30.312,-29.652,-28.648,-27.070,-25.380,-24.015,-22.841,-21.479,-19.889,-18.409,-17.344,
--16.738,-16.471,-16.433,-16.544,-16.668,-16.526,-15.778,-14.311,-12.496,-10.999,-10.262,-10.220,-10.484,-10.554,-9.803,-7.624,
--3.998,.173,3.671,5.994,7.611,9.196,10.910,12.543,14.027,15.490,16.896,17.985,18.627,19.048,19.587,20.342,
-21.157,21.885,22.539,23.205,23.896,24.550,25.134,25.696,26.294,26.906,27.453,27.918,28.397,28.988,29.684,30.402,
-31.102,31.814,32.553,33.274,33.957,34.671,35.479,36.325,37.091,37.752,38.414,39.160,39.933,40.609,41.156,41.674,
-42.250,42.842,43.332,43.705,44.126,44.763,45.532,46.125,46.371,46.474,46.735,47.096,47.217,47.113,47.375,48.440,
-49.795,50.368,49.807,48.991,49.011,49.922,50.866,51.266,51.427,51.842,52.370,52.467,52.077,51.853,52.397,53.545,
-54.592,55.086,55.154,55.122,55.078,54.919,54.637,54.357,54.167,54.065,54.066,54.196,54.362,54.385,54.189,53.859,
-53.494,53.133,52.834,52.655,52.540,52.353,52.034,51.464,50.106,47.208,42.748,38.031,34.941,34.513,36.420,39.702,
-43.563,47.392,50.481,52.196,52.503,52.185,52.475,54.290,57.547,61.169,63.927,65.417,66.134,66.679,67.193,67.601,
-68.022,68.630,69.316,69.819,70.102,70.326,70.504,70.442,70.066,69.614,69.437,69.707,70.331,71.066,71.713,72.271,
-72.856,73.461,73.921,74.204,74.572,75.285,76.292,77.389,78.517,79.671,80.640,81.182,81.409,81.667,82.046,82.316,
-82.389,82.436,82.418,81.890,80.519,78.534,76.388,74.235,72.099,70.386,69.737,70.245,71.121,71.362,70.712,69.875,
-69.821,70.875,72.489,73.893,74.951,76.220,78.101,80.132,81.327,81.123,79.719,77.509,74.534,70.726,66.512,62.840,
-60.484,59.420,58.935,58.257,57.041,55.450,54.112,54.038,56.169,60.524,65.726,69.726,71.228,70.439,68.493,66.441,
-64.831,63.845,63.382,63.061,62.507,61.725,61.026,60.566,60.192,59.784,59.522,59.639,60.049,60.397,60.433,60.216,
-59.944,59.703,59.408,58.949,58.325,57.640,56.984,56.375,55.823,55.374,55.041,54.724,54.283,53.676,52.993,52.339,
-51.739,51.139,50.481,49.782,49.155,48.692,48.327,47.887,47.316,46.750,46.291,45.852,45.332,44.836,44.530,44.349,
-44.057,43.574,43.061,42.652,42.292,41.880,41.413,40.921,40.402,39.884,39.438,39.055,38.648,38.204,37.817,37.512,
-37.200,36.846,36.524,36.231,35.830,35.275,34.735,34.359,34.075,33.761,33.432,33.111,32.690,32.184,31.906,32.074,
-32.334,32.086,31.309,30.640,30.510,30.554,30.140,29.218,28.292,27.705,27.330,26.992,26.801,26.886,27.014,26.765,
-26.036,25.167,24.526,24.142,23.810,23.424,23.050,22.743,22.456,22.144,21.830,21.524,21.178,20.806,20.509,20.331,
-20.174,19.946,19.687,19.447,19.179,18.893,18.801,19.057,19.396,19.326,18.739,18.099,17.900,18.141,18.474,18.677,
-18.749,18.674,18.374,17.918,17.557,17.452,17.495,17.477,17.325,17.120,16.946,16.829,16.775,16.782,16.817,16.842,
-16.870,16.953,17.119,17.327,17.500,17.561,17.449,17.141,16.701,16.289,16.059,16.032,16.103,16.162,16.173,16.114,
-15.914,15.538,15.109,14.851,14.876,15.054,15.145,15.023,14.756,14.504,14.371,14.332,14.275,14.094,13.772,13.383,
-13.020,12.735,12.532,12.377,12.215,12.015,11.813,11.679,11.638,11.664,11.719,11.769,11.770,11.716,11.691,11.775,
-11.874,11.786,11.474,11.174,11.107,11.194,11.196,11.061,10.939,10.894,10.806,10.620,10.494,10.559,10.675,10.597,
-10.314,10.047,9.927,9.838,9.627,9.327,9.074,8.889,8.660,8.323,7.954,7.657,7.443,7.263,7.100,6.971,
-6.852,6.671,6.390,6.068,5.808,5.660,5.585,5.508,5.380,5.213,5.049,4.925,4.834,4.736,4.598,4.413,
-4.203,3.993,3.804,3.633,3.458,3.262,3.054,2.853,2.644,2.383,2.059,1.722,1.429,1.188,.971,.776,
-.625,.522,.436,.326,.158,-.096,-.444,-.841,-1.207,-1.504,-1.768,-2.072,-2.442,-2.832,-3.179,-3.465,
--3.725,-4.010,-4.339,-4.696,-5.059,-5.415,-5.750,-6.051,-6.316,-6.563,-6.808,-7.048,-7.272,-7.474,-7.654,-7.819,
--7.996,-8.215,-8.471,-8.722,-8.933,-9.109,-9.268,-9.409,-9.540,-9.690,-9.879,-10.087,-10.285,-10.473,-10.673,-10.883,
--11.082,-11.261,-11.431,-11.605,-11.804,-12.045,-12.307,-12.529,-12.682,-12.826,-13.037,-13.301,-13.534,-13.700,-13.837,-13.972,
--14.076,-14.139,-14.204,-14.306,-14.413,-14.478,-14.504,-14.536,-14.601,-14.689,-14.774,-14.837,-14.887,-14.959,-15.070,-15.180,
--15.233,-15.241,-15.274,-15.350,-15.406,-15.411,-15.431,-15.532,-15.662,-15.706,-15.640,-15.551,-15.510,-15.503,-15.484,-15.454,
--15.432,-15.410,-15.367,-15.305,-15.241,-15.172,-15.087,-14.989,-14.905,-14.852,-14.816,-14.770,-14.698,-14.599,-14.474,-14.323,
--14.144,-13.939,-13.721,-13.519,-13.368,-13.280,-13.226,-13.158,-13.067,-12.986,-12.939,-12.910,-12.873,-12.838,-12.821,-12.807,
--12.771,-12.712,-12.647,-12.583,-12.522,-12.491,-12.514,-12.568,-12.613,-12.652,-12.719,-12.813,-12.884,-12.911,-12.930,-12.980,
--13.060,-13.144,-13.216,-13.277,-13.335,-13.416,-13.530,-13.649,-13.727,-13.764,-13.792,-13.815,-13.813,-13.795,-13.799,-13.823,
--13.822,-13.783,-13.752,-13.758,-13.780,-13.793,-13.810,-13.829,-13.824,-13.798,-13.794,-13.829,-13.861,-13.859,-13.846,-13.839,
--13.814,-13.755,-13.687,-13.631,-13.573,-13.505,-13.456,-13.421,-13.345,-13.209,-13.067,-12.962,-12.858,-12.721,-12.576,-12.451,
--12.316,-12.145,-11.968,-11.802,-11.603,-11.339,-11.055,-10.802,-10.555,-10.284,-10.009,-9.745,-9.441,-9.069,-8.696,-8.377,
--8.056,-7.664,-7.231,-6.817,-6.405,-5.963,-5.516,-5.079,-4.599,-4.074,-3.602,-3.221,-2.817,-2.332,-1.882,-1.529,
--1.132,-.622,-.213,-.072,-.029,-.003,-.432,-1.649,-2.859,-2.440,.405,4.668,8.417,10.338,10.431,9.775,
-9.899,11.736,14.610,16.637,16.723,15.886,16.001,17.460,18.818,18.704,17.275,15.584,14.262,13.308,12.684,12.475,
-12.603,12.847,13.166,13.720,14.569,15.554,16.483,17.241,17.763,18.067,18.351,18.875,19.701,20.623,21.385,21.891,
-22.206,22.444,22.681,22.929,23.119,23.149,22.996,22.776,22.652,22.638,22.523,22.069,21.279,20.397,19.592,18.765,
-17.754,16.637,15.670,14.959,14.371,13.764,13.128,12.457,11.659,10.679,9.621,8.618,7.671,6.668,5.532,4.303,
-3.120,2.165,1.536,1.146,.799,.375,-.132,-.760,-1.586,-2.555,-3.437,-4.066,-4.513,-4.933,-5.359,-5.757,
--6.176,-6.703,-7.333,-8.011,-8.757,-9.591,-10.396,-11.002,-11.423,-11.859,-12.435,-13.077,-13.664,-14.230,-14.916,-15.791,
--16.756,-17.630,-18.303,-18.815,-19.283,-19.752,-20.158,-20.443,-20.649,-20.849,-21.044,-21.193,-21.296,-21.378,-21.435,-21.466,
--21.514,-21.614,-21.734,-21.831,-21.931,-22.086,-22.296,-22.551,-22.878,-23.253,-23.534,-23.617,-23.608,-23.698,-23.914,-24.135,
--24.334,-24.616,-24.994,-25.325,-25.519,-25.642,-25.725,-25.659,-25.385,-25.032,-24.724,-24.366,-23.819,-23.193,-22.772,-22.649,
--22.620,-22.454,-22.144,-21.817,-21.506,-21.111,-20.538,-19.796,-18.954,-18.029,-16.989,-15.848,-14.741,-13.817,-13.078,-12.421,
--11.843,-11.482,-11.359,-11.190,-10.619,-9.633,-8.601,-7.891,-7.548,-7.375,-7.187,-6.906,-6.511,-6.021,-5.538,-5.189,
--5.013,-4.929,-4.877,-4.963,-5.390,-6.231,-7.265,-8.098,-8.466,-8.415,-8.198,-8.031,-7.986,-8.031,-8.104,-8.141,
--8.100,-8.000,-7.890,-7.784,-7.653,-7.482,-7.294,-7.115,-6.944,-6.784,-6.658,-6.572,-6.490,-6.366,-6.178,-5.932,
--5.653,-5.381,-5.146,-4.928,-4.672,-4.358,-4.032,-3.739,-3.468,-3.176,-2.843,-2.478,-2.084,-1.676,-1.295,-.965,
--.658,-.323,.031,.369,.709,1.120,1.614,2.097,2.484,2.806,3.165,3.596,4.038,4.426,4.776,5.160,
-5.647,6.256,6.943,7.615,8.192,8.682,9.150,9.638,10.125,10.583,11.011,11.400,11.721,11.976,12.230,12.536,
-12.870,13.175,13.448,13.719,13.981,14.211,14.444,14.758,15.158,15.557,15.888,16.175,16.454,16.710,16.926,17.159,
-17.464,17.784,17.990,18.021,17.934,17.803,17.653,17.504,17.395,17.337,17.279,17.170,17.018,16.858,16.683,16.474,
-16.263,16.116,16.040,15.968,15.868,15.794,15.804,15.874,15.922,15.906,15.834,15.720,15.591,15.524,15.584,15.738,
-15.900,16.055,16.264,16.525,16.750,16.899,17.018,17.116,17.126,17.065,17.068,17.156,17.129,16.880,16.615,16.526,
-16.411,16.446,15.980,15.321,15.054,15.145,14.830,13.684,12.310,11.573,11.496,11.409,10.965,10.457,10.173,9.971,
-9.664,9.365,9.229,9.140,8.929,8.670,8.518,8.409,8.175,7.835,7.562,7.407,7.277,7.136,7.061,7.080,
-7.134,7.177,7.213,7.227,7.203,7.211,7.347,7.592,7.818,7.975,8.163,8.512,9.065,9.786,10.587,11.290,
-11.657,11.532,10.965,10.170,9.391,8.776,8.315,7.870,7.304,6.622,6.011,5.701,5.768,6.034,6.165,5.928,
-5.360,4.677,4.039,3.455,2.910,2.447,2.066,1.637,1.050,.366,-.290,-.940,-1.717,-2.648,-3.579,-4.356,
--4.973,-5.511,-6.009,-6.425,-6.707,-6.876,-7.080,-7.515,-8.246,-9.132,-10.001,-10.829,-11.664,-12.432,-12.972,-13.269,
--13.515,-13.862,-14.249,-14.521,-14.637,-14.675,-14.691,-14.671,-14.613,-14.602,-14.764,-15.131,-15.572,-15.890,-16.009,-15.994,
--15.856,-15.447,-14.654,-13.619,-12.628,-11.869,-11.421,-11.375,-11.744,-12.281,-12.654,-12.837,-13.105,-13.569,-13.993,-14.196,
--14.388,-14.902,-15.743,-16.607,-17.242,-17.605,-17.748,-17.743,-17.710,-17.782,-18.063,-18.630,-19.455,-20.259,-20.655,-20.566,
--20.314,-20.142,-19.876,-19.351,-18.933,-19.210,-20.219,-21.403,-22.372,-23.330,-24.581,-25.975,-27.112,-27.887,-28.582,-29.490,
--30.617,-31.741,-32.628,-33.233,-33.751,-34.443,-35.352,-36.262,-36.937,-37.334,-37.563,-37.757,-38.004,-38.315,-38.602,-38.775,
--38.887,-39.057,-39.273,-39.403,-39.433,-39.534,-39.822,-40.218,-40.597,-40.935,-41.221,-41.401,-41.510,-41.692,-41.956,-42.077,
--41.892,-41.574,-41.426,-41.474,-41.454,-41.175,-40.747,-40.432,-40.363,-40.430,-40.404,-40.195,-39.934,-39.769,-39.660,-39.560,
--39.639,-40.017,-40.326,-40.041,-39.359,-39.182,-39.920,-40.834,-41.057,-40.788,-40.817,-41.253,-41.586,-41.817,-42.506,-43.538,
--43.910,-43.231,-42.560,-43.020,-44.189,-44.736,-44.283,-43.725,-43.838,-44.462,-45.181,-46.001,-47.018,-47.979,-48.639,-49.174,
--49.875,-50.673,-51.319,-51.852,-52.513,-53.318,-54.035,-54.560,-55.037,-55.596,-56.208,-56.826,-57.483,-58.185,-58.857,-59.464,
--60.067,-60.713,-61.366,-61.979,-62.571,-63.164,-63.730,-64.240,-64.722,-65.201,-65.653,-66.060,-66.475,-66.949,-67.438,-67.850,
--68.175,-68.496,-68.886,-69.400,-70.123,-71.105,-72.211,-73.207,-74.046,-74.910,-75.849,-76.534,-76.592,-76.087,-75.465,-75.057,
--74.907,-75.060,-75.685,-76.818,-78.248,-79.790,-81.417,-82.968,-84.048,-84.497,-84.735,-85.280,-86.070,-86.642,-86.854,-87.014,
--87.303,-87.522,-87.532,-87.525,-87.678,-87.849,-87.872,-87.881,-88.073,-88.372,-88.577,-88.683,-88.806,-88.906,-88.880,-88.801,
--88.811,-88.833,-88.667,-88.309,-87.940,-87.602,-87.148,-86.546,-85.968,-85.541,-85.221,-84.960,-84.790,-84.676,-84.470,-84.113,
--83.705,-83.298,-82.790,-82.091,-81.246,-80.308,-79.256,-78.155,-77.226,-76.610,-76.169,-75.666,-75.032,-74.351,-73.666,-72.953,
--72.165,-71.196,-69.891,-68.270,-66.641,-65.342,-64.434,-63.789,-63.361,-63.169,-63.064,-62.743,-62.057,-61.109,-60.067,-59.011,
--57.967,-56.898,-55.659,-54.144,-52.547,-51.258,-50.415,-49.722,-48.813,-47.675,-46.576,-45.693,-44.926,-43.998,-42.673,-40.981,
--39.274,-37.903,-36.767,-35.386,-33.585,-31.860,-30.774,-30.141,-29.212,-27.634,-25.856,-24.426,-23.255,-21.852,-20.084,-18.384,
--17.221,-16.626,-16.336,-16.190,-16.249,-16.528,-16.755,-16.482,-15.472,-13.936,-12.375,-11.210,-10.597,-10.473,-10.540,-10.203,
--8.804,-6.172,-2.866,.316,3.037,5.478,7.805,9.892,11.628,13.226,14.949,16.668,17.943,18.560,18.804,19.136,
-19.732,20.434,21.052,21.593,22.176,22.848,23.530,24.136,24.686,25.285,25.979,26.690,27.298,27.787,28.272,28.875,
-29.616,30.423,31.211,31.938,32.611,33.292,34.054,34.903,35.751,36.499,37.148,37.790,38.510,39.305,40.095,40.785,
-41.334,41.794,42.260,42.768,43.274,43.777,44.359,45.023,45.583,45.892,46.114,46.513,46.965,47.023,46.647,46.530,
-47.292,48.541,49.239,49.022,48.647,48.914,49.607,49.941,49.795,49.881,50.666,51.636,51.932,51.436,50.875,50.935,
-51.597,52.378,52.960,53.373,53.700,53.864,53.788,53.575,53.412,53.365,53.371,53.397,53.443,53.444,53.299,53.028,
-52.751,52.487,52.149,51.783,51.627,51.787,51.991,51.776,50.763,48.668,45.336,41.130,37.207,34.979,35.135,37.267,
-40.412,43.704,46.533,48.513,49.632,50.372,51.445,53.334,56.043,59.135,61.954,64.010,65.281,66.104,66.757,67.273,
-67.682,68.173,68.838,69.465,69.798,69.909,70.083,70.380,70.554,70.407,70.068,69.863,70.015,70.504,71.136,71.732,
-72.260,72.769,73.207,73.452,73.557,73.795,74.322,74.985,75.621,76.357,77.365,78.456,79.253,79.718,80.167,80.751,
-81.238,81.412,81.365,81.271,81.107,80.756,80.114,78.924,76.831,73.973,71.358,70.203,70.714,71.753,71.846,70.476,
-68.385,66.771,66.289,66.744,67.622,68.762,70.420,72.692,75.024,76.452,76.327,74.713,72.140,69.146,66.151,63.611,
-62.032,61.643,62.076,62.493,62.095,60.537,57.999,55.163,53.226,53.557,56.804,62.117,67.482,71.027,72.063,71.058,
-68.991,66.836,65.233,64.216,63.301,62.102,60.824,59.949,59.554,59.265,58.851,58.546,58.652,59.083,59.490,59.689,
-59.757,59.802,59.798,59.651,59.307,58.777,58.128,57.457,56.842,56.312,55.854,55.456,55.099,54.722,54.232,53.584,
-52.861,52.219,51.717,51.230,50.605,49.896,49.305,48.893,48.494,47.978,47.439,47.010,46.620,46.130,45.591,45.165,
-44.847,44.473,43.991,43.516,43.109,42.692,42.218,41.746,41.301,40.817,40.293,39.829,39.464,39.108,38.704,38.302,
-37.925,37.521,37.110,36.796,36.554,36.199,35.668,35.151,34.807,34.547,34.245,33.952,33.680,33.224,32.498,31.875,
-31.789,32.069,32.091,31.628,31.137,31.029,31.039,30.630,29.766,28.906,28.356,27.975,27.568,27.228,27.125,27.139,
-26.937,26.374,25.652,25.041,24.580,24.131,23.627,23.162,22.834,22.612,22.402,22.136,21.785,21.356,20.942,20.666,
-20.531,20.394,20.171,19.943,19.765,19.512,19.098,18.748,18.770,19.062,19.141,18.761,18.249,18.080,18.310,18.625,
-18.795,18.823,18.740,18.498,18.129,17.785,17.572,17.455,17.367,17.289,17.188,17.006,16.778,16.651,16.700,16.818,
-16.861,16.852,16.924,17.109,17.297,17.388,17.382,17.294,17.086,16.747,16.376,16.099,15.937,15.830,15.769,15.800,
-15.884,15.840,15.545,15.126,14.852,14.830,14.885,14.790,14.522,14.253,14.116,14.081,14.032,13.902,13.701,13.452,
-13.169,12.876,12.623,12.444,12.310,12.151,11.944,11.737,11.587,11.498,11.451,11.461,11.529,11.579,11.529,11.413,
-11.339,11.307,11.185,10.935,10.724,10.711,10.814,10.826,10.709,10.610,10.585,10.507,10.307,10.144,10.189,10.341,
-10.330,10.062,9.731,9.543,9.476,9.362,9.130,8.857,8.623,8.394,8.097,7.737,7.396,7.139,6.947,6.765,
-6.561,6.345,6.123,5.880,5.612,5.354,5.164,5.063,5.005,4.912,4.761,4.601,4.497,4.448,4.389,4.272,
-4.114,3.960,3.827,3.693,3.540,3.376,3.211,3.033,2.811,2.524,2.182,1.833,1.539,1.321,1.148,.969,
-.782,.627,.536,.480,.390,.214,-.052,-.376,-.719,-1.054,-1.370,-1.675,-1.994,-2.350,-2.732,-3.098,
--3.416,-3.706,-4.019,-4.369,-4.723,-5.052,-5.365,-5.680,-5.995,-6.287,-6.557,-6.822,-7.094,-7.365,-7.606,-7.797,
--7.942,-8.085,-8.270,-8.493,-8.711,-8.897,-9.062,-9.223,-9.373,-9.516,-9.679,-9.879,-10.093,-10.290,-10.473,-10.664,
--10.863,-11.051,-11.218,-11.371,-11.524,-11.705,-11.940,-12.198,-12.403,-12.526,-12.649,-12.872,-13.175,-13.441,-13.606,-13.707,
--13.799,-13.885,-13.959,-14.046,-14.161,-14.271,-14.338,-14.374,-14.428,-14.520,-14.631,-14.720,-14.767,-14.792,-14.846,-14.948,
--15.047,-15.087,-15.087,-15.112,-15.169,-15.192,-15.162,-15.149,-15.213,-15.303,-15.324,-15.269,-15.214,-15.205,-15.216,-15.214,
--15.202,-15.188,-15.155,-15.089,-15.004,-14.924,-14.851,-14.766,-14.668,-14.579,-14.527,-14.508,-14.482,-14.408,-14.278,-14.115,
--13.941,-13.762,-13.579,-13.395,-13.223,-13.075,-12.961,-12.879,-12.810,-12.739,-12.674,-12.629,-12.595,-12.553,-12.512,-12.492,
--12.489,-12.473,-12.431,-12.371,-12.307,-12.254,-12.244,-12.293,-12.368,-12.421,-12.455,-12.519,-12.616,-12.690,-12.711,-12.722,
--12.773,-12.856,-12.934,-13.002,-13.079,-13.176,-13.296,-13.436,-13.561,-13.621,-13.613,-13.598,-13.625,-13.673,-13.702,-13.713,
--13.727,-13.734,-13.712,-13.676,-13.661,-13.673,-13.696,-13.722,-13.747,-13.759,-13.752,-13.744,-13.756,-13.784,-13.811,-13.824,
--13.812,-13.768,-13.710,-13.665,-13.633,-13.585,-13.515,-13.449,-13.392,-13.309,-13.190,-13.066,-12.953,-12.832,-12.699,-12.580,
--12.474,-12.341,-12.168,-11.997,-11.838,-11.634,-11.359,-11.074,-10.834,-10.610,-10.355,-10.079,-9.796,-9.478,-9.114,-8.757,
--8.430,-8.076,-7.667,-7.258,-6.882,-6.477,-6.008,-5.548,-5.144,-4.720,-4.226,-3.752,-3.366,-2.966,-2.470,-1.988,
--1.626,-1.270,-.796,-.354,-.151,-.116,-.146,-.538,-1.603,-2.767,-2.615,-.224,3.770,7.631,9.887,10.240,
-9.606,9.502,10.959,13.577,15.884,16.941,17.343,18.234,19.648,20.436,19.755,17.991,16.085,14.543,13.394,12.670,
-12.454,12.642,13.022,13.548,14.302,15.242,16.178,16.969,17.589,18.047,18.373,18.684,19.125,19.740,20.456,21.178,
-21.840,22.386,22.801,23.128,23.414,23.609,23.595,23.347,23.020,22.832,22.841,22.841,22.540,21.857,20.970,20.069,
-19.145,18.117,17.060,16.160,15.461,14.830,14.162,13.471,12.747,11.909,10.954,10.013,9.167,8.310,7.296,6.143,
-4.997,3.991,3.204,2.677,2.368,2.125,1.766,1.161,.233,-.994,-2.282,-3.261,-3.748,-3.929,-4.130,-4.483,
--4.920,-5.392,-5.935,-6.549,-7.192,-7.881,-8.664,-9.491,-10.226,-10.833,-11.438,-12.147,-12.918,-13.647,-14.325,-15.034,
--15.821,-16.637,-17.383,-18.010,-18.547,-19.050,-19.528,-19.938,-20.254,-20.499,-20.707,-20.879,-21.020,-21.154,-21.282,-21.363,
--21.389,-21.422,-21.509,-21.622,-21.726,-21.849,-22.020,-22.210,-22.401,-22.651,-22.975,-23.231,-23.267,-23.134,-23.045,-23.133,
--23.387,-23.771,-24.253,-24.706,-24.969,-25.061,-25.151,-25.278,-25.262,-24.981,-24.575,-24.240,-23.941,-23.524,-23.022,-22.665,
--22.565,-22.567,-22.458,-22.196,-21.877,-21.538,-21.099,-20.474,-19.679,-18.796,-17.855,-16.816,-15.675,-14.555,-13.617,-12.885,
--12.272,-11.771,-11.493,-11.433,-11.306,-10.767,-9.799,-8.765,-8.058,-7.760,-7.658,-7.485,-7.100,-6.513,-5.821,-5.176,
--4.734,-4.571,-4.613,-4.696,-4.783,-5.079,-5.831,-6.971,-8.047,-8.622,-8.663,-8.476,-8.329,-8.265,-8.236,-8.247,
--8.305,-8.341,-8.296,-8.198,-8.108,-8.023,-7.893,-7.708,-7.504,-7.312,-7.141,-6.998,-6.885,-6.789,-6.681,-6.535,
--6.325,-6.046,-5.738,-5.455,-5.201,-4.929,-4.613,-4.295,-4.023,-3.782,-3.525,-3.240,-2.923,-2.554,-2.126,-1.694,
--1.322,-.997,-.660,-.301,.043,.391,.815,1.321,1.806,2.191,2.534,2.936,3.395,3.817,4.160,4.487,
-4.890,5.413,6.056,6.779,7.489,8.090,8.583,9.053,9.551,10.035,10.447,10.794,11.109,11.383,11.615,11.866,
-12.201,12.591,12.949,13.249,13.538,13.833,14.106,14.371,14.701,15.110,15.501,15.787,15.995,16.196,16.400,16.597,
-16.830,17.135,17.431,17.573,17.535,17.436,17.367,17.300,17.178,17.033,16.922,16.830,16.700,16.535,16.380,16.243,
-16.101,15.968,15.890,15.859,15.815,15.749,15.734,15.814,15.924,15.964,15.919,15.835,15.737,15.638,15.596,15.666,
-15.827,16.005,16.179,16.374,16.560,16.681,16.753,16.840,16.913,16.887,16.807,16.826,16.919,16.858,16.591,16.404,
-16.464,16.446,16.425,15.822,15.004,14.617,14.658,14.376,13.341,12.105,11.452,11.358,11.166,10.590,10.003,9.745,
-9.669,9.508,9.296,9.189,9.129,8.968,8.733,8.548,8.394,8.159,7.858,7.612,7.448,7.299,7.159,7.099,
-7.127,7.167,7.178,7.180,7.176,7.156,7.175,7.315,7.553,7.773,7.951,8.217,8.716,9.451,10.305,11.138,
-11.808,12.175,12.144,11.736,11.086,10.387,9.808,9.392,9.004,8.434,7.628,6.822,6.384,6.479,6.872,7.103,
-6.885,6.305,5.638,5.031,4.444,3.853,3.335,2.925,2.516,2.003,1.436,.894,.292,-.539,-1.590,-2.620,
--3.409,-3.971,-4.484,-5.059,-5.633,-6.049,-6.241,-6.364,-6.709,-7.456,-8.506,-9.602,-10.560,-11.336,-11.916,-12.275,
--12.464,-12.636,-12.911,-13.270,-13.606,-13.833,-13.936,-13.940,-13.888,-13.850,-13.950,-14.326,-14.990,-15.713,-16.164,-16.231,
--16.101,-15.941,-15.615,-14.861,-13.678,-12.370,-11.275,-10.618,-10.543,-11.032,-11.783,-12.391,-12.755,-13.094,-13.528,-13.871,
--13.965,-14.011,-14.354,-15.065,-15.881,-16.501,-16.814,-16.896,-16.932,-17.083,-17.380,-17.785,-18.337,-19.096,-19.897,-20.412,
--20.536,-20.501,-20.462,-20.274,-19.903,-19.771,-20.297,-21.275,-22.150,-22.824,-23.732,-25.062,-26.375,-27.215,-27.718,-28.350,
--29.282,-30.311,-31.241,-32.066,-32.836,-33.580,-34.352,-35.195,-36.040,-36.735,-37.188,-37.426,-37.559,-37.709,-37.939,-38.204,
--38.426,-38.608,-38.809,-39.009,-39.128,-39.199,-39.381,-39.745,-40.178,-40.561,-40.902,-41.217,-41.458,-41.644,-41.913,-42.284,
--42.513,-42.362,-41.905,-41.415,-41.012,-40.614,-40.193,-39.882,-39.789,-39.839,-39.861,-39.765,-39.590,-39.400,-39.172,-38.892,
--38.739,-38.984,-39.532,-39.812,-39.469,-39.060,-39.477,-40.633,-41.379,-41.033,-40.342,-40.362,-40.977,-41.362,-41.478,-42.037,
--43.014,-43.402,-42.815,-42.322,-42.967,-44.213,-44.723,-44.213,-43.611,-43.618,-44.031,-44.521,-45.221,-46.237,-47.241,-47.932,
--48.493,-49.215,-50.003,-50.617,-51.133,-51.801,-52.604,-53.294,-53.800,-54.295,-54.889,-55.510,-56.108,-56.752,-57.466,-58.163,
--58.783,-59.376,-59.999,-60.629,-61.236,-61.844,-62.460,-63.031,-63.515,-63.946,-64.379,-64.828,-65.291,-65.787,-66.294,-66.721,
--67.016,-67.266,-67.605,-68.077,-68.665,-69.421,-70.404,-71.492,-72.448,-73.233,-74.059,-74.983,-75.633,-75.601,-75.016,-74.448,
--74.274,-74.422,-74.770,-75.437,-76.530,-77.882,-79.272,-80.666,-82.014,-83.044,-83.580,-83.902,-84.441,-85.183,-85.751,-86.014,
--86.232,-86.559,-86.811,-86.859,-86.888,-87.059,-87.224,-87.221,-87.188,-87.331,-87.574,-87.716,-87.776,-87.889,-88.008,-87.978,
--87.838,-87.750,-87.687,-87.474,-87.110,-86.771,-86.480,-86.049,-85.408,-84.744,-84.241,-83.892,-83.636,-83.488,-83.421,-83.302,
--83.056,-82.737,-82.365,-81.843,-81.132,-80.340,-79.550,-78.713,-77.818,-77.027,-76.463,-76.013,-75.467,-74.778,-74.039,-73.303,
--72.559,-71.783,-70.857,-69.578,-67.930,-66.263,-64.997,-64.212,-63.701,-63.350,-63.207,-63.169,-62.913,-62.221,-61.214,-60.154,
--59.174,-58.239,-57.245,-56.055,-54.594,-53.006,-51.599,-50.534,-49.669,-48.781,-47.835,-46.942,-46.132,-45.298,-44.271,-42.921,
--41.286,-39.662,-38.389,-37.397,-36.177,-34.435,-32.594,-31.318,-30.597,-29.705,-28.162,-26.338,-24.853,-23.693,-22.297,-20.435,
--18.585,-17.352,-16.804,-16.570,-16.393,-16.340,-16.490,-16.661,-16.525,-15.904,-14.855,-13.552,-12.213,-11.111,-10.459,-10.177,
--9.844,-9.025,-7.628,-5.812,-3.609,-.857,2.403,5.662,8.335,10.380,12.291,14.430,16.546,18.079,18.818,19.087,
-19.335,19.731,20.178,20.579,20.968,21.422,21.959,22.532,23.099,23.681,24.349,25.137,25.954,26.644,27.144,27.578,
-28.140,28.895,29.731,30.504,31.187,31.869,32.631,33.453,34.247,34.963,35.645,36.367,37.135,37.898,38.654,39.448,
-40.243,40.888,41.300,41.619,42.043,42.588,43.135,43.661,44.235,44.816,45.286,45.703,46.249,46.807,46.931,46.498,
-46.109,46.447,47.367,48.106,48.339,48.517,48.993,49.371,49.148,48.652,48.763,49.738,50.819,51.132,50.642,50.016,
-49.808,50.047,50.503,51.036,51.604,52.112,52.417,52.485,52.440,52.441,52.529,52.644,52.724,52.730,52.603,52.320,
-51.985,51.740,51.582,51.380,51.161,51.156,51.442,51.640,51.162,49.676,47.218,44.025,40.568,37.693,36.355,36.961,
-39.052,41.702,44.122,45.944,47.236,48.450,50.162,52.624,55.538,58.347,60.708,62.614,64.184,65.468,66.434,67.048,
-67.384,67.680,68.191,68.905,69.530,69.835,69.943,70.136,70.469,70.723,70.710,70.500,70.323,70.358,70.627,71.041,
-71.505,71.994,72.489,72.885,73.086,73.210,73.513,74.048,74.561,74.891,75.275,76.028,77.048,77.933,78.517,79.008,
-79.560,80.009,80.131,79.955,79.703,79.614,79.823,80.162,79.955,78.376,75.391,72.219,70.448,70.539,71.348,71.191,
-69.310,66.335,63.546,61.853,61.399,61.877,63.015,64.708,66.791,68.818,70.157,70.329,69.306,67.538,65.709,64.378,
-63.784,63.889,64.494,65.268,65.765,65.531,64.232,61.753,58.385,55.118,53.504,54.774,58.824,64.147,68.828,71.600,
-72.186,71.107,69.318,67.663,66.319,64.848,62.965,61.068,59.789,59.202,58.845,58.421,58.103,58.094,58.265,58.393,
-58.497,58.732,59.085,59.379,59.493,59.416,59.145,58.677,58.096,57.535,57.025,56.484,55.872,55.280,54.808,54.395,
-53.875,53.214,52.596,52.184,51.868,51.387,50.689,49.995,49.480,49.056,48.576,48.087,47.716,47.409,46.995,46.449,
-45.895,45.394,44.901,44.420,44.002,43.604,43.120,42.572,42.095,41.700,41.251,40.709,40.206,39.829,39.492,39.108,
-38.702,38.291,37.833,37.361,37.006,36.777,36.499,36.093,35.702,35.435,35.174,34.822,34.499,34.261,33.850,33.059,
-32.189,31.761,31.798,31.789,31.431,31.003,30.844,30.810,30.510,29.891,29.257,28.807,28.431,27.988,27.545,27.244,
-27.063,26.828,26.427,25.917,25.422,24.972,24.494,23.950,23.429,23.059,22.855,22.704,22.469,22.092,21.621,21.187,
-20.901,20.736,20.561,20.328,20.144,20.040,19.818,19.319,18.776,18.617,18.886,19.120,18.937,18.514,18.306,18.458,
-18.719,18.843,18.822,18.735,18.600,18.412,18.192,17.950,17.693,17.481,17.369,17.275,17.059,16.752,16.569,16.624,
-16.771,16.822,16.806,16.874,17.039,17.163,17.176,17.145,17.117,17.021,16.794,16.496,16.225,15.987,15.753,15.581,
-15.562,15.635,15.587,15.305,14.943,14.733,14.682,14.579,14.296,13.965,13.799,13.813,13.828,13.701,13.476,13.274,
-13.132,12.996,12.826,12.642,12.471,12.297,12.084,11.848,11.639,11.478,11.334,11.202,11.146,11.209,11.311,11.313,
-11.181,11.022,10.912,10.798,10.617,10.438,10.374,10.410,10.416,10.342,10.271,10.246,10.180,10.008,9.844,9.852,
-9.992,10.020,9.771,9.365,9.063,8.971,8.956,8.838,8.588,8.307,8.054,7.782,7.433,7.051,6.741,6.532,
-6.351,6.120,5.854,5.616,5.416,5.203,4.953,4.725,4.588,4.524,4.441,4.287,4.120,4.027,4.008,3.980,
-3.883,3.753,3.651,3.576,3.474,3.327,3.179,3.059,2.923,2.696,2.365,1.991,1.655,1.394,1.192,1.009,
-.813,.613,.459,.397,.395,.350,.175,-.110,-.411,-.672,-.924,-1.220,-1.556,-1.904,-2.260,-2.635,
--3.007,-3.339,-3.640,-3.964,-4.330,-4.692,-5.002,-5.278,-5.571,-5.892,-6.209,-6.502,-6.786,-7.086,-7.400,-7.695,
--7.928,-8.093,-8.226,-8.380,-8.564,-8.746,-8.902,-9.044,-9.191,-9.342,-9.499,-9.684,-9.902,-10.122,-10.311,-10.480,
--10.661,-10.861,-11.058,-11.232,-11.376,-11.504,-11.657,-11.870,-12.111,-12.293,-12.382,-12.472,-12.681,-13.000,-13.300,-13.486,
--13.572,-13.624,-13.677,-13.744,-13.836,-13.947,-14.047,-14.114,-14.171,-14.254,-14.373,-14.503,-14.604,-14.656,-14.679,-14.725,
--14.815,-14.907,-14.959,-14.987,-15.031,-15.072,-15.055,-14.988,-14.951,-14.983,-15.022,-14.998,-14.932,-14.890,-14.894,-14.907,
--14.905,-14.896,-14.884,-14.852,-14.788,-14.702,-14.615,-14.533,-14.448,-14.353,-14.262,-14.207,-14.196,-14.185,-14.107,-13.940,
--13.727,-13.520,-13.336,-13.175,-13.041,-12.926,-12.811,-12.689,-12.578,-12.493,-12.428,-12.371,-12.324,-12.282,-12.234,-12.188,
--12.168,-12.171,-12.164,-12.121,-12.057,-12.003,-11.979,-12.000,-12.069,-12.154,-12.211,-12.247,-12.305,-12.392,-12.458,-12.483,
--12.512,-12.584,-12.667,-12.717,-12.758,-12.847,-12.991,-13.158,-13.318,-13.443,-13.496,-13.471,-13.434,-13.458,-13.530,-13.584,
--13.599,-13.613,-13.639,-13.645,-13.614,-13.583,-13.581,-13.602,-13.622,-13.641,-13.660,-13.672,-13.671,-13.674,-13.703,-13.753,
--13.791,-13.783,-13.727,-13.660,-13.616,-13.594,-13.565,-13.513,-13.443,-13.356,-13.249,-13.133,-13.029,-12.933,-12.825,-12.711,
--12.613,-12.513,-12.365,-12.177,-12.001,-11.840,-11.636,-11.366,-11.093,-10.867,-10.656,-10.407,-10.123,-9.823,-9.500,-9.160,
--8.833,-8.502,-8.111,-7.673,-7.277,-6.933,-6.532,-6.037,-5.571,-5.219,-4.870,-4.404,-3.901,-3.484,-3.096,-2.622,
--2.125,-1.738,-1.402,-.979,-.540,-.272,-.168,-.150,-.451,-1.394,-2.597,-2.825,-1.027,2.546,6.424,9.043,
-9.801,9.356,9.131,10.275,12.745,15.444,17.401,18.629,19.661,20.531,20.660,19.649,17.769,15.629,13.725,12.398,
-11.861,12.050,12.629,13.318,14.101,15.036,16.023,16.899,17.623,18.235,18.727,19.081,19.366,19.685,20.089,20.601,
-21.258,22.017,22.710,23.185,23.465,23.676,23.835,23.805,23.501,23.060,22.768,22.779,22.920,22.820,22.256,21.337,
-20.325,19.354,18.402,17.475,16.643,15.922,15.235,14.532,13.824,13.075,12.213,11.281,10.425,9.669,8.844,7.832,
-6.755,5.808,5.021,4.316,3.715,3.322,3.113,2.856,2.257,1.154,-.347,-1.851,-2.885,-3.273,-3.294,-3.384,
--3.724,-4.197,-4.676,-5.184,-5.779,-6.447,-7.165,-7.950,-8.789,-9.599,-10.330,-11.035,-11.792,-12.599,-13.399,-14.164,
--14.914,-15.662,-16.393,-17.084,-17.727,-18.316,-18.843,-19.299,-19.689,-20.033,-20.341,-20.587,-20.752,-20.868,-20.994,-21.134,
--21.236,-21.282,-21.325,-21.401,-21.488,-21.582,-21.729,-21.936,-22.127,-22.265,-22.432,-22.695,-22.938,-22.973,-22.796,-22.618,
--22.652,-22.963,-23.490,-24.080,-24.514,-24.662,-24.648,-24.722,-24.913,-24.974,-24.714,-24.260,-23.876,-23.629,-23.395,-23.117,
--22.892,-22.786,-22.710,-22.528,-22.220,-21.870,-21.519,-21.092,-20.476,-19.646,-18.687,-17.678,-16.613,-15.475,-14.352,-13.394,
--12.660,-12.099,-11.685,-11.468,-11.411,-11.275,-10.798,-9.978,-9.103,-8.478,-8.172,-8.006,-7.742,-7.243,-6.531,-5.721,
--4.965,-4.434,-4.249,-4.365,-4.553,-4.655,-4.852,-5.517,-6.701,-7.931,-8.651,-8.784,-8.691,-8.666,-8.679,-8.621,
--8.547,-8.564,-8.635,-8.641,-8.560,-8.469,-8.402,-8.310,-8.147,-7.931,-7.703,-7.490,-7.303,-7.146,-7.015,-6.905,
--6.799,-6.648,-6.399,-6.065,-5.721,-5.424,-5.154,-4.873,-4.593,-4.339,-4.099,-3.846,-3.588,-3.325,-3.016,-2.624,
--2.193,-1.796,-1.436,-1.061,-.666,-.294,.062,.472,.952,1.420,1.822,2.221,2.695,3.205,3.645,3.997,
-4.349,4.781,5.306,5.913,6.584,7.253,7.833,8.325,8.820,9.363,9.883,10.290,10.600,10.887,11.176,11.454,
-11.755,12.127,12.538,12.892,13.162,13.409,13.678,13.951,14.229,14.568,14.974,15.343,15.574,15.703,15.831,15.998,
-16.190,16.426,16.716,16.959,17.019,16.908,16.796,16.793,16.822,16.769,16.649,16.557,16.504,16.430,16.318,16.214,
-16.141,16.069,15.991,15.932,15.882,15.798,15.695,15.654,15.708,15.776,15.770,15.705,15.647,15.610,15.575,15.572,
-15.657,15.826,16.022,16.208,16.370,16.469,16.487,16.493,16.560,16.636,16.620,16.567,16.616,16.724,16.677,16.463,
-16.368,16.487,16.425,16.020,15.249,14.309,13.810,13.760,13.524,12.723,11.770,11.251,11.107,10.822,10.234,9.704,
-9.516,9.502,9.393,9.204,9.093,9.044,8.931,8.738,8.541,8.349,8.115,7.868,7.678,7.540,7.406,7.297,
-7.273,7.308,7.311,7.261,7.217,7.210,7.221,7.261,7.374,7.554,7.742,7.951,8.301,8.894,9.694,10.571,
-11.400,12.081,12.508,12.586,12.298,11.738,11.087,10.538,10.170,9.869,9.402,8.661,7.849,7.360,7.410,7.791,
-8.025,7.802,7.210,6.531,5.902,5.275,4.629,4.067,3.648,3.278,2.837,2.339,1.836,1.254,.451,-.555,
--1.545,-2.316,-2.880,-3.411,-4.039,-4.716,-5.265,-5.564,-5.712,-6.004,-6.679,-7.702,-8.806,-9.734,-10.405,-10.869,
--11.196,-11.428,-11.597,-11.744,-11.926,-12.175,-12.448,-12.658,-12.768,-12.849,-13.022,-13.393,-14.028,-14.872,-15.682,-16.142,
--16.175,-16.014,-15.863,-15.573,-14.829,-13.585,-12.152,-10.913,-10.129,-9.983,-10.517,-11.451,-12.294,-12.772,-13.019,-13.280,
--13.582,-13.810,-13.974,-14.236,-14.712,-15.340,-15.903,-16.185,-16.173,-16.137,-16.373,-16.872,-17.399,-17.888,-18.523,-19.359,
--20.121,-20.542,-20.655,-20.612,-20.465,-20.348,-20.601,-21.359,-22.239,-22.815,-23.272,-24.132,-25.392,-26.445,-26.953,-27.311,
--28.031,-29.053,-29.983,-30.718,-31.482,-32.395,-33.333,-34.200,-35.035,-35.838,-36.494,-36.911,-37.131,-37.261,-37.391,-37.571,
--37.803,-38.052,-38.298,-38.540,-38.759,-38.923,-39.076,-39.313,-39.647,-39.979,-40.275,-40.626,-41.102,-41.636,-42.156,-42.687,
--43.201,-43.480,-43.290,-42.629,-41.697,-40.692,-39.777,-39.157,-38.973,-39.108,-39.250,-39.209,-39.074,-38.999,-38.929,-38.657,
--38.186,-37.915,-38.249,-38.990,-39.411,-39.178,-38.934,-39.487,-40.553,-40.982,-40.372,-39.713,-39.978,-40.768,-41.100,-41.021,
--41.399,-42.303,-42.740,-42.275,-41.855,-42.432,-43.563,-44.131,-43.920,-43.632,-43.682,-43.836,-43.989,-44.475,-45.414,-46.407,
--47.130,-47.762,-48.549,-49.345,-49.924,-50.411,-51.067,-51.851,-52.519,-53.031,-53.559,-54.171,-54.776,-55.354,-55.997,-56.720,
--57.415,-58.025,-58.620,-59.254,-59.897,-60.519,-61.145,-61.766,-62.309,-62.742,-63.137,-63.580,-64.079,-64.592,-65.092,-65.539,
--65.875,-66.110,-66.372,-66.786,-67.346,-67.991,-68.763,-69.743,-70.832,-71.791,-72.552,-73.298,-74.086,-74.585,-74.459,-73.914,
--73.561,-73.719,-74.173,-74.672,-75.324,-76.313,-77.524,-78.724,-79.902,-81.111,-82.149,-82.765,-83.102,-83.569,-84.255,-84.853,
--85.183,-85.431,-85.759,-86.036,-86.135,-86.194,-86.363,-86.525,-86.537,-86.513,-86.634,-86.831,-86.930,-86.971,-87.095,-87.232,
--87.179,-86.948,-86.728,-86.554,-86.286,-85.910,-85.572,-85.281,-84.841,-84.188,-83.532,-83.071,-82.769,-82.520,-82.335,-82.245,
--82.170,-82.017,-81.785,-81.461,-80.961,-80.278,-79.552,-78.886,-78.219,-77.494,-76.812,-76.272,-75.783,-75.186,-74.470,-73.727,
--72.981,-72.210,-71.420,-70.544,-69.372,-67.826,-66.216,-64.997,-64.289,-63.868,-63.571,-63.436,-63.389,-63.101,-62.335,-61.256,
--60.215,-59.348,-58.506,-57.494,-56.233,-54.770,-53.257,-51.889,-50.763,-49.814,-48.938,-48.119,-47.361,-46.568,-45.602,-44.391,
--42.954,-41.413,-40.014,-38.982,-38.168,-37.042,-35.297,-33.354,-31.932,-31.113,-30.197,-28.640,-26.768,-25.253,-24.138,-22.829,
--21.017,-19.170,-17.945,-17.431,-17.213,-16.983,-16.765,-16.616,-16.426,-16.097,-15.670,-15.144,-14.347,-13.188,-11.909,-10.873,
--10.156,-9.549,-8.980,-8.602,-8.307,-7.409,-5.188,-1.743,1.983,5.159,7.835,10.596,13.636,16.454,18.449,19.545,
-20.109,20.459,20.666,20.759,20.867,21.107,21.453,21.822,22.214,22.697,23.297,23.961,24.617,25.207,25.697,26.124,
-26.615,27.290,28.116,28.934,29.640,30.308,31.085,31.988,32.862,33.544,34.066,34.642,35.433,36.353,37.182,37.857,
-38.547,39.355,40.105,40.563,40.786,41.060,41.510,42.003,42.442,42.931,43.550,44.208,44.830,45.464,46.018,46.146,
-45.724,45.244,45.376,46.191,47.174,47.976,48.687,49.294,49.401,48.844,48.208,48.257,48.984,49.636,49.666,49.265,
-48.936,48.897,49.077,49.421,49.930,50.508,50.973,51.231,51.335,51.383,51.431,51.496,51.579,51.655,51.646,51.466,
-51.119,50.755,50.563,50.572,50.648,50.704,50.790,50.871,50.636,49.719,48.068,45.939,43.616,41.349,39.581,38.910,
-39.616,41.322,43.271,44.898,46.145,47.380,49.124,51.690,54.858,57.945,60.333,61.969,63.275,64.604,65.905,66.876,
-67.354,67.506,67.692,68.155,68.822,69.412,69.753,69.929,70.107,70.299,70.386,70.318,70.182,70.109,70.171,70.379,
-70.717,71.169,71.714,72.273,72.698,72.913,73.072,73.423,73.983,74.483,74.753,75.000,75.520,76.281,76.984,77.475,
-77.872,78.279,78.610,78.722,78.580,78.277,78.059,78.282,79.028,79.655,79.091,76.906,74.010,71.937,71.341,71.343,
-70.419,67.834,64.197,60.810,58.664,57.996,58.509,59.783,61.450,63.192,64.733,65.848,66.369,66.263,65.773,65.385,
-65.500,66.118,66.903,67.526,67.873,67.953,67.709,66.915,65.218,62.437,59.045,56.296,55.577,57.443,61.252,65.657,
-69.310,71.323,71.542,70.599,69.388,68.263,66.886,64.976,62.909,61.329,60.393,59.770,59.217,58.778,58.436,57.994,
-57.440,57.095,57.229,57.723,58.258,58.677,58.977,59.104,58.960,58.588,58.145,57.687,57.104,56.326,55.489,54.816,
-54.354,53.935,53.421,52.894,52.522,52.278,51.931,51.357,50.697,50.133,49.654,49.158,48.676,48.313,48.035,47.683,
-47.185,46.605,46.009,45.424,44.910,44.502,44.110,43.605,43.029,42.535,42.131,41.667,41.101,40.577,40.182,39.825,
-39.425,39.030,38.663,38.244,37.765,37.363,37.112,36.895,36.620,36.368,36.190,35.949,35.558,35.164,34.883,34.510,
-33.792,32.888,32.219,31.898,31.643,31.260,30.910,30.752,30.636,30.321,29.835,29.397,29.105,28.864,28.559,28.173,
-27.736,27.286,26.852,26.439,26.026,25.612,25.216,24.822,24.384,23.922,23.539,23.297,23.115,22.849,22.442,21.966,
-21.544,21.244,21.024,20.795,20.560,20.420,20.373,20.206,19.749,19.216,19.043,19.313,19.580,19.407,18.911,18.579,
-18.656,18.937,19.116,19.108,19.006,18.901,18.819,18.719,18.519,18.190,17.828,17.551,17.329,17.043,16.720,16.543,
-16.594,16.727,16.778,16.773,16.825,16.918,16.945,16.911,16.917,16.975,16.967,16.829,16.632,16.443,16.220,15.932,
-15.671,15.542,15.463,15.245,14.875,14.568,14.478,14.471,14.300,13.954,13.685,13.667,13.770,13.741,13.513,13.240,
-13.067,12.974,12.871,12.723,12.551,12.362,12.132,11.871,11.627,11.437,11.275,11.092,10.894,10.769,10.794,10.927,
-11.024,10.986,10.859,10.746,10.660,10.530,10.342,10.180,10.115,10.109,10.084,10.027,9.970,9.894,9.755,9.599,
-9.554,9.650,9.706,9.498,9.030,8.566,8.349,8.351,8.339,8.159,7.863,7.573,7.302,6.979,6.605,6.279,
-6.067,5.912,5.720,5.481,5.257,5.067,4.861,4.605,4.358,4.199,4.119,4.021,3.853,3.674,3.577,3.562,
-3.541,3.457,3.351,3.284,3.240,3.158,3.029,2.913,2.833,2.724,2.506,2.182,1.825,1.486,1.159,.835,
-.535,.282,.083,-.043,-.056,.027,.082,-.018,-.268,-.534,-.721,-.883,-1.123,-1.460,-1.832,-2.203,
--2.579,-2.950,-3.277,-3.568,-3.882,-4.250,-4.618,-4.932,-5.205,-5.494,-5.816,-6.137,-6.433,-6.719,-7.023,-7.353,
--7.684,-7.975,-8.194,-8.356,-8.507,-8.677,-8.851,-9.003,-9.136,-9.266,-9.409,-9.574,-9.774,-9.999,-10.209,-10.373,
--10.511,-10.666,-10.856,-11.058,-11.242,-11.389,-11.507,-11.639,-11.823,-12.032,-12.182,-12.243,-12.307,-12.495,-12.812,-13.134,
--13.345,-13.431,-13.457,-13.484,-13.544,-13.636,-13.737,-13.823,-13.892,-13.968,-14.070,-14.194,-14.324,-14.433,-14.498,-14.530,
--14.568,-14.639,-14.721,-14.789,-14.855,-14.924,-14.955,-14.908,-14.825,-14.790,-14.813,-14.819,-14.759,-14.673,-14.623,-14.608,
--14.590,-14.562,-14.537,-14.517,-14.488,-14.443,-14.380,-14.300,-14.211,-14.127,-14.047,-13.969,-13.914,-13.897,-13.879,-13.782,
--13.585,-13.344,-13.123,-12.938,-12.785,-12.672,-12.595,-12.517,-12.409,-12.293,-12.201,-12.131,-12.070,-12.018,-11.978,-11.935,
--11.886,-11.859,-11.859,-11.852,-11.806,-11.741,-11.705,-11.714,-11.759,-11.828,-11.901,-11.957,-11.999,-12.061,-12.144,-12.209,
--12.245,-12.299,-12.400,-12.498,-12.542,-12.573,-12.669,-12.836,-13.013,-13.155,-13.257,-13.302,-13.283,-13.251,-13.278,-13.359,
--13.424,-13.443,-13.459,-13.499,-13.527,-13.514,-13.488,-13.489,-13.504,-13.502,-13.490,-13.494,-13.512,-13.523,-13.535,-13.576,
--13.646,-13.705,-13.711,-13.663,-13.594,-13.541,-13.510,-13.490,-13.461,-13.404,-13.308,-13.185,-13.069,-12.982,-12.907,-12.821,
--12.729,-12.641,-12.533,-12.371,-12.169,-11.983,-11.815,-11.616,-11.369,-11.123,-10.912,-10.698,-10.440,-10.145,-9.835,-9.515,
--9.196,-8.893,-8.570,-8.167,-7.717,-7.328,-7.003,-6.613,-6.115,-5.650,-5.318,-4.999,-4.537,-4.001,-3.563,-3.211,
--2.804,-2.333,-1.913,-1.548,-1.140,-.717,-.419,-.249,-.142,-.300,-1.085,-2.325,-2.998,-1.952,.989,4.745,
-7.767,9.116,9.058,8.823,9.676,11.954,14.903,17.467,19.133,20.004,20.299,20.022,19.025,17.227,14.819,12.415,
-10.862,10.641,11.447,12.549,13.517,14.415,15.395,16.398,17.319,18.172,18.958,19.564,19.926,20.165,20.440,20.791,
-21.214,21.762,22.428,23.037,23.398,23.536,23.629,23.742,23.733,23.457,22.999,22.647,22.618,22.803,22.816,22.349,
-21.452,20.427,19.491,18.641,17.814,17.027,16.312,15.646,14.988,14.302,13.526,12.617,11.657,10.798,10.037,9.207,
-8.248,7.341,6.650,6.061,5.360,4.588,4.013,3.745,3.536,2.988,1.894,.405,-1.053,-2.041,-2.434,-2.519,
--2.706,-3.137,-3.657,-4.121,-4.584,-5.171,-5.887,-6.657,-7.447,-8.269,-9.100,-9.892,-10.631,-11.354,-12.098,-12.876,
--13.684,-14.499,-15.289,-16.034,-16.745,-17.432,-18.070,-18.612,-19.041,-19.398,-19.742,-20.083,-20.367,-20.553,-20.668,-20.776,
--20.894,-20.991,-21.062,-21.142,-21.235,-21.309,-21.380,-21.520,-21.740,-21.951,-22.099,-22.263,-22.523,-22.782,-22.856,-22.718,
--22.560,-22.610,-22.955,-23.511,-24.082,-24.442,-24.508,-24.445,-24.502,-24.699,-24.789,-24.565,-24.123,-23.736,-23.551,-23.499,
--23.454,-23.355,-23.188,-22.935,-22.585,-22.183,-21.801,-21.457,-21.056,-20.453,-19.598,-18.589,-17.552,-16.495,-15.358,-14.181,
--13.132,-12.346,-11.826,-11.512,-11.354,-11.267,-11.079,-10.654,-10.032,-9.392,-8.885,-8.517,-8.175,-7.734,-7.131,-6.397,
--5.610,-4.865,-4.301,-4.073,-4.188,-4.410,-4.516,-4.667,-5.305,-6.562,-7.941,-8.786,-8.978,-8.935,-9.010,-9.141,
--9.136,-9.028,-8.985,-9.035,-9.057,-8.993,-8.899,-8.822,-8.728,-8.566,-8.339,-8.083,-7.835,-7.612,-7.415,-7.242,
--7.109,-7.023,-6.929,-6.734,-6.406,-6.024,-5.686,-5.413,-5.166,-4.922,-4.677,-4.417,-4.131,-3.850,-3.601,-3.347,
--3.035,-2.667,-2.288,-1.901,-1.477,-1.034,-.629,-.265,.124,.569,1.023,1.451,1.904,2.432,2.982,3.466,
-3.881,4.303,4.781,5.302,5.859,6.464,7.082,7.642,8.134,8.636,9.187,9.702,10.083,10.352,10.614,10.927,
-11.271,11.641,12.050,12.459,12.779,12.985,13.148,13.343,13.576,13.848,14.192,14.599,14.963,15.189,15.313,15.441,
-15.613,15.799,15.996,16.218,16.396,16.422,16.321,16.258,16.334,16.454,16.482,16.426,16.395,16.415,16.417,16.362,
-16.292,16.236,16.169,16.078,15.983,15.881,15.740,15.576,15.466,15.440,15.436,15.392,15.338,15.335,15.379,15.426,
-15.485,15.603,15.782,15.978,16.153,16.283,16.335,16.308,16.277,16.314,16.374,16.374,16.353,16.411,16.501,16.456,
-16.292,16.222,16.258,16.020,15.223,14.395,13.510,12.995,12.820,12.550,11.965,11.339,10.989,10.804,10.468,9.966,
-9.593,9.490,9.469,9.327,9.111,8.968,8.908,8.830,8.690,8.510,8.301,8.070,7.872,7.750,7.670,7.586,
-7.522,7.523,7.547,7.511,7.415,7.343,7.342,7.385,7.441,7.524,7.645,7.803,8.046,8.464,9.094,9.869,
-10.681,11.459,12.143,12.629,12.795,12.597,12.124,11.564,11.099,10.805,10.597,10.288,9.760,9.128,8.689,8.651,
-8.885,9.011,8.744,8.127,7.395,6.689,5.986,5.281,4.675,4.239,3.902,3.537,3.110,2.644,2.103,1.403,
-.550,-.331,-1.109,-1.762,-2.368,-3.017,-3.706,-4.328,-4.765,-5.044,-5.368,-5.945,-6.780,-7.675,-8.425,-8.986,
--9.444,-9.874,-10.238,-10.431,-10.433,-10.388,-10.495,-10.802,-11.187,-11.547,-11.937,-12.473,-13.183,-14.007,-14.836,-15.508,
--15.855,-15.869,-15.746,-15.616,-15.325,-14.618,-13.487,-12.180,-10.940,-9.953,-9.507,-9.898,-11.023,-12.258,-12.966,-13.051,
--12.946,-13.097,-13.571,-14.106,-14.459,-14.669,-14.956,-15.381,-15.702,-15.726,-15.647,-15.840,-16.335,-16.824,-17.204,-17.776,
--18.736,-19.773,-20.407,-20.525,-20.382,-20.263,-20.391,-20.949,-21.859,-22.716,-23.246,-23.718,-24.531,-25.525,-26.162,-26.378,
--26.759,-27.697,-28.862,-29.741,-30.361,-31.107,-32.103,-33.129,-34.031,-34.857,-35.610,-36.168,-36.494,-36.711,-36.930,-37.137,
--37.302,-37.464,-37.680,-37.950,-38.236,-38.496,-38.710,-38.901,-39.119,-39.370,-39.617,-39.900,-40.348,-41.017,-41.786,-42.484,
--43.055,-43.507,-43.764,-43.676,-43.131,-42.117,-40.761,-39.402,-38.502,-38.294,-38.530,-38.720,-38.646,-38.501,-38.500,-38.504,
--38.188,-37.562,-37.152,-37.469,-38.323,-38.939,-38.901,-38.719,-39.090,-39.812,-40.018,-39.523,-39.210,-39.739,-40.542,-40.728,
--40.490,-40.739,-41.556,-42.011,-41.645,-41.219,-41.563,-42.436,-43.079,-43.341,-43.573,-43.801,-43.757,-43.580,-43.799,-44.562,
--45.459,-46.197,-46.937,-47.824,-48.641,-49.192,-49.657,-50.293,-51.039,-51.680,-52.212,-52.778,-53.394,-53.975,-54.551,-55.225,
--55.965,-56.635,-57.215,-57.812,-58.472,-59.131,-59.753,-60.371,-60.974,-61.487,-61.901,-62.323,-62.831,-63.378,-63.870,-64.284,
--64.643,-64.957,-65.245,-65.588,-66.058,-66.646,-67.322,-68.133,-69.138,-70.232,-71.194,-71.944,-72.612,-73.222,-73.506,-73.248,
--72.743,-72.591,-73.018,-73.690,-74.282,-74.913,-75.834,-76.969,-78.078,-79.154,-80.302,-81.354,-82.000,-82.306,-82.692,-83.342,
--83.983,-84.365,-84.607,-84.907,-85.192,-85.321,-85.379,-85.519,-85.685,-85.747,-85.775,-85.909,-86.095,-86.196,-86.262,-86.423,
--86.586,-86.525,-86.232,-85.918,-85.663,-85.345,-84.923,-84.521,-84.164,-83.703,-83.108,-82.584,-82.282,-82.079,-81.803,-81.489,
--81.274,-81.164,-81.064,-80.915,-80.663,-80.223,-79.595,-78.926,-78.333,-77.765,-77.147,-76.536,-76.010,-75.491,-74.860,-74.139,
--73.424,-72.707,-71.937,-71.145,-70.331,-69.312,-67.950,-66.471,-65.317,-64.660,-64.297,-64.030,-63.865,-63.735,-63.328,-62.435,
--61.285,-60.287,-59.533,-58.735,-57.625,-56.226,-54.743,-53.354,-52.139,-51.093,-50.155,-49.275,-48.453,-47.674,-46.822,-45.756,
--44.450,-43.028,-41.683,-40.581,-39.741,-38.885,-37.574,-35.695,-33.754,-32.401,-31.610,-30.645,-28.999,-27.053,-25.527,-24.489,
--23.329,-21.693,-20.006,-18.887,-18.388,-18.094,-17.729,-17.314,-16.848,-16.228,-15.544,-15.093,-14.935,-14.680,-13.956,-12.885,
--11.839,-10.918,-10.023,-9.356,-9.350,-9.896,-10.020,-8.722,-6.018,-2.792,.349,3.668,7.619,11.934,15.735,18.425,
-20.129,21.241,21.874,21.961,21.680,21.465,21.584,21.920,22.256,22.600,23.107,23.775,24.376,24.697,24.756,24.772,
-24.987,25.522,26.315,27.167,27.910,28.555,29.261,30.131,31.081,31.917,32.522,32.988,33.550,34.375,35.363,36.231,
-36.847,37.391,38.095,38.884,39.470,39.772,40.018,40.393,40.810,41.158,41.550,42.141,42.863,43.519,44.023,44.310,
-44.209,43.702,43.234,43.420,44.402,45.766,47.083,48.200,48.961,49.093,48.641,48.158,48.114,48.313,48.236,47.823,
-47.518,47.613,47.935,48.251,48.612,49.126,49.669,50.027,50.191,50.299,50.397,50.412,50.333,50.257,50.246,50.224,
-50.058,49.735,49.419,49.326,49.514,49.807,49.968,49.880,49.521,48.842,47.812,46.565,45.318,44.149,43.029,42.110,
-41.798,42.358,43.565,44.903,46.077,47.248,48.813,51.052,53.909,56.958,59.623,61.562,62.905,64.059,65.258,66.371,
-67.124,67.439,67.529,67.702,68.115,68.690,69.233,69.618,69.843,69.944,69.922,69.790,69.639,69.578,69.653,69.843,
-70.126,70.515,71.026,71.629,72.213,72.626,72.827,72.981,73.311,73.831,74.333,74.674,74.952,75.316,75.740,76.097,
-76.373,76.653,76.957,77.230,77.424,77.464,77.233,76.821,76.712,77.360,78.480,79.041,78.264,76.511,74.912,74.063,
-73.312,71.439,67.949,63.608,59.791,57.463,56.765,57.331,58.705,60.472,62.237,63.718,64.837,65.626,66.125,66.444,
-66.839,67.532,68.457,69.287,69.737,69.760,69.480,69.024,68.387,67.339,65.557,63.027,60.354,58.544,58.389,60.061,
-63.079,66.457,69.021,70.062,69.853,69.290,68.886,68.353,67.249,65.696,64.202,63.036,62.123,61.371,60.714,59.911,
-58.720,57.329,56.315,56.053,56.387,56.950,57.565,58.198,58.723,58.966,58.909,58.675,58.330,57.812,57.071,56.194,
-55.364,54.705,54.186,53.685,53.166,52.717,52.400,52.133,51.794,51.379,50.957,50.528,50.040,49.519,49.053,48.649,
-48.220,47.720,47.174,46.596,45.988,45.419,44.964,44.567,44.101,43.558,43.038,42.556,42.023,41.445,40.949,40.569,
-40.189,39.749,39.342,39.013,38.659,38.227,37.838,37.595,37.413,37.191,36.983,36.848,36.674,36.347,35.945,35.590,
-35.192,34.580,33.797,33.056,32.457,31.970,31.635,31.520,31.477,31.201,30.622,30.023,29.697,29.645,29.675,29.614,
-29.342,28.789,28.032,27.294,26.724,26.276,25.856,25.478,25.180,24.898,24.552,24.179,23.868,23.599,23.264,22.827,
-22.371,21.989,21.698,21.449,21.204,20.989,20.870,20.824,20.685,20.334,19.950,19.870,20.129,20.304,19.994,19.332,
-18.840,18.833,19.151,19.440,19.524,19.442,19.309,19.203,19.120,18.963,18.643,18.197,17.746,17.354,17.001,16.713,
-16.583,16.624,16.721,16.778,16.814,16.859,16.852,16.755,16.671,16.719,16.846,16.900,16.845,16.774,16.708,16.541,
-16.234,15.915,15.684,15.431,15.017,14.551,14.312,14.357,14.406,14.200,13.855,13.692,13.788,13.874,13.710,13.381,
-13.133,13.032,12.938,12.742,12.493,12.268,12.059,11.828,11.596,11.408,11.256,11.087,10.873,10.646,10.481,10.453,
-10.574,10.746,10.828,10.773,10.660,10.566,10.456,10.265,10.041,9.904,9.887,9.888,9.827,9.729,9.642,9.538,
-9.390,9.281,9.306,9.376,9.241,8.780,8.187,7.788,7.697,7.729,7.642,7.388,7.078,6.790,6.503,6.188,
-5.890,5.670,5.518,5.371,5.192,4.991,4.779,4.542,4.280,4.045,3.885,3.778,3.648,3.463,3.283,3.183,
-3.154,3.125,3.053,2.971,2.920,2.882,2.813,2.719,2.639,2.572,2.453,2.229,1.926,1.599,1.255,.875,
-.488,.175,-.027,-.171,-.305,-.387,-.362,-.287,-.308,-.479,-.695,-.844,-.954,-1.140,-1.449,-1.828,
--2.217,-2.602,-2.964,-3.275,-3.550,-3.851,-4.207,-4.575,-4.904,-5.208,-5.521,-5.841,-6.138,-6.409,-6.679,-6.967,
--7.277,-7.603,-7.923,-8.196,-8.404,-8.579,-8.765,-8.964,-9.147,-9.294,-9.422,-9.559,-9.728,-9.934,-10.153,-10.343,
--10.481,-10.590,-10.714,-10.875,-11.058,-11.236,-11.389,-11.515,-11.639,-11.789,-11.949,-12.063,-12.113,-12.179,-12.361,-12.663,
--12.977,-13.191,-13.278,-13.294,-13.313,-13.375,-13.469,-13.561,-13.635,-13.708,-13.801,-13.912,-14.029,-14.147,-14.253,-14.322,
--14.350,-14.370,-14.412,-14.473,-14.538,-14.616,-14.698,-14.730,-14.683,-14.614,-14.601,-14.631,-14.625,-14.553,-14.466,-14.405,
--14.353,-14.288,-14.225,-14.179,-14.139,-14.096,-14.058,-14.017,-13.948,-13.851,-13.763,-13.704,-13.659,-13.620,-13.594,-13.549,
--13.423,-13.209,-12.974,-12.776,-12.607,-12.448,-12.318,-12.234,-12.164,-12.073,-11.973,-11.889,-11.817,-11.747,-11.697,-11.675,
--11.650,-11.599,-11.554,-11.545,-11.545,-11.512,-11.463,-11.447,-11.477,-11.524,-11.574,-11.626,-11.676,-11.726,-11.795,-11.886,
--11.965,-12.016,-12.078,-12.185,-12.298,-12.369,-12.424,-12.534,-12.702,-12.863,-12.974,-13.047,-13.086,-13.081,-13.066,-13.102,
--13.190,-13.269,-13.303,-13.323,-13.357,-13.382,-13.376,-13.370,-13.388,-13.402,-13.376,-13.329,-13.307,-13.318,-13.340,-13.371,
--13.430,-13.513,-13.578,-13.593,-13.562,-13.512,-13.462,-13.424,-13.397,-13.369,-13.322,-13.240,-13.135,-13.033,-12.949,-12.872,
--12.784,-12.689,-12.592,-12.472,-12.309,-12.115,-11.931,-11.759,-11.569,-11.353,-11.137,-10.931,-10.699,-10.421,-10.122,-9.822,
--9.516,-9.207,-8.907,-8.589,-8.202,-7.769,-7.384,-7.061,-6.694,-6.228,-5.772,-5.419,-5.080,-4.622,-4.093,-3.656,
--3.328,-2.978,-2.547,-2.104,-1.676,-1.227,-.799,-.505,-.338,-.201,-.221,-.760,-1.880,-2.876,-2.629,-.551,
-2.812,6.100,8.114,8.679,8.719,9.483,11.544,14.444,17.188,19.017,19.789,19.829,19.485,18.701,17.051,14.367,
-11.386,9.448,9.343,10.606,12.133,13.298,14.222,15.187,16.228,17.299,18.413,19.477,20.244,20.619,20.829,21.146,
-21.593,22.047,22.475,22.903,23.261,23.444,23.486,23.526,23.608,23.610,23.406,23.036,22.700,22.577,22.623,22.566,
-22.146,21.372,20.480,19.641,18.840,18.028,17.268,16.646,16.129,15.593,14.922,14.061,13.031,11.968,11.029,10.228,
-9.434,8.621,7.945,7.486,7.034,6.331,5.448,4.730,4.341,4.049,3.479,2.481,1.221,.024,-.841,-1.329,
--1.643,-2.040,-2.581,-3.128,-3.585,-4.041,-4.640,-5.386,-6.177,-6.960,-7.764,-8.606,-9.437,-10.197,-10.886,-11.564,
--12.303,-13.129,-14.006,-14.864,-15.656,-16.391,-17.090,-17.739,-18.297,-18.740,-19.099,-19.428,-19.747,-20.032,-20.251,-20.412,
--20.542,-20.647,-20.726,-20.803,-20.913,-21.037,-21.126,-21.186,-21.290,-21.474,-21.686,-21.886,-22.124,-22.436,-22.729,-22.857,
--22.811,-22.750,-22.847,-23.157,-23.608,-24.055,-24.345,-24.428,-24.423,-24.497,-24.662,-24.736,-24.563,-24.200,-23.870,-23.748,
--23.825,-23.935,-23.887,-23.594,-23.111,-22.569,-22.075,-21.674,-21.327,-20.917,-20.297,-19.428,-18.431,-17.444,-16.444,-15.310,
--14.054,-12.890,-12.044,-11.562,-11.337,-11.228,-11.105,-10.861,-10.472,-10.008,-9.553,-9.113,-8.630,-8.066,-7.427,-6.751,
--6.081,-5.434,-4.812,-4.282,-3.997,-4.019,-4.171,-4.251,-4.421,-5.152,-6.599,-8.216,-9.233,-9.446,-9.321,-9.343,
--9.523,-9.622,-9.568,-9.494,-9.481,-9.474,-9.417,-9.323,-9.213,-9.071,-8.881,-8.652,-8.404,-8.152,-7.911,-7.685,
--7.481,-7.326,-7.244,-7.187,-7.042,-6.745,-6.358,-5.999,-5.715,-5.477,-5.246,-5.003,-4.727,-4.410,-4.088,-3.812,
--3.576,-3.333,-3.048,-2.717,-2.327,-1.872,-1.390,-.942,-.538,-.126,.325,.786,1.238,1.713,2.242,2.789,
-3.297,3.769,4.252,4.763,5.285,5.824,6.407,7.014,7.577,8.071,8.547,9.036,9.479,9.794,10.000,10.208,
-10.494,10.852,11.257,11.693,12.112,12.430,12.612,12.722,12.854,13.054,13.331,13.689,14.096,14.460,14.714,14.898,
-15.097,15.316,15.495,15.630,15.771,15.918,15.999,16.008,16.049,16.193,16.359,16.426,16.405,16.397,16.433,16.445,
-16.388,16.293,16.193,16.076,15.940,15.812,15.702,15.576,15.426,15.299,15.229,15.187,15.141,15.119,15.164,15.265,
-15.376,15.486,15.616,15.760,15.891,16.001,16.091,16.140,16.130,16.098,16.097,16.122,16.133,16.141,16.177,16.193,
-16.103,15.939,15.812,15.662,15.223,14.402,13.695,13.083,12.686,12.360,11.916,11.398,11.012,10.809,10.594,10.221,
-9.810,9.569,9.503,9.431,9.250,9.037,8.897,8.829,8.763,8.662,8.510,8.306,8.091,7.938,7.875,7.848,
-7.805,7.765,7.761,7.759,7.704,7.607,7.539,7.535,7.576,7.636,7.716,7.826,7.987,8.252,8.689,9.298,
-10.000,10.709,11.388,12.006,12.474,12.675,12.568,12.252,11.894,11.617,11.443,11.308,11.119,10.814,10.431,10.116,
-10.002,10.048,10.021,9.692,9.046,8.244,7.435,6.658,5.923,5.293,4.818,4.462,4.132,3.774,3.371,2.900,
-2.325,1.638,.870,.076,-.687,-1.387,-2.044,-2.698,-3.336,-3.888,-4.329,-4.749,-5.262,-5.878,-6.501,-7.051,
--7.549,-8.063,-8.600,-9.049,-9.244,-9.145,-8.946,-8.949,-9.295,-9.891,-10.591,-11.374,-12.273,-13.227,-14.103,-14.805,
--15.278,-15.479,-15.436,-15.278,-15.084,-14.765,-14.196,-13.400,-12.458,-11.337,-10.082,-9.157,-9.262,-10.585,-12.376,-13.496,
--13.448,-12.774,-12.457,-12.974,-13.941,-14.634,-14.784,-14.752,-14.944,-15.294,-15.496,-15.541,-15.697,-16.014,-16.266,-16.455,
--16.972,-18.011,-19.143,-19.763,-19.791,-19.651,-19.733,-20.151,-20.885,-21.823,-22.734,-23.473,-24.174,-24.966,-25.628,-25.874,
--25.939,-26.431,-27.513,-28.674,-29.460,-30.058,-30.896,-31.999,-33.061,-33.943,-34.733,-35.421,-35.875,-36.119,-36.361,-36.693,
--36.984,-37.120,-37.182,-37.321,-37.580,-37.895,-38.190,-38.428,-38.620,-38.820,-39.082,-39.423,-39.861,-40.424,-41.060,-41.587,
--41.848,-41.890,-41.931,-42.135,-42.433,-42.527,-42.057,-40.906,-39.425,-38.271,-37.863,-38.013,-38.194,-38.131,-37.989,-37.987,
--37.997,-37.691,-37.048,-36.552,-36.736,-37.532,-38.271,-38.457,-38.341,-38.483,-38.899,-39.093,-38.948,-39.002,-39.587,-40.201,
--40.247,-40.008,-40.225,-40.907,-41.288,-41.010,-40.647,-40.818,-41.410,-42.018,-42.604,-43.258,-43.701,-43.622,-43.288,-43.295,
--43.806,-44.498,-45.183,-46.002,-46.968,-47.798,-48.340,-48.814,-49.444,-50.151,-50.775,-51.347,-51.958,-52.561,-53.101,-53.687,
--54.424,-55.207,-55.862,-56.411,-57.003,-57.671,-58.321,-58.914,-59.502,-60.085,-60.595,-61.040,-61.525,-62.086,-62.621,-63.028,
--63.344,-63.673,-64.052,-64.447,-64.847,-65.302,-65.871,-66.596,-67.501,-68.554,-69.614,-70.517,-71.237,-71.867,-72.371,-72.504,
--72.148,-71.655,-71.592,-72.127,-72.893,-73.553,-74.224,-75.170,-76.327,-77.440,-78.484,-79.582,-80.603,-81.244,-81.533,-81.878,
--82.498,-83.137,-83.517,-83.737,-84.016,-84.308,-84.450,-84.492,-84.612,-84.799,-84.927,-85.013,-85.172,-85.376,-85.515,-85.631,
--85.840,-86.046,-86.017,-85.731,-85.400,-85.118,-84.759,-84.259,-83.743,-83.296,-82.840,-82.365,-82.030,-81.897,-81.759,-81.410,
--80.935,-80.575,-80.414,-80.355,-80.280,-80.094,-79.701,-79.101,-78.450,-77.883,-77.362,-76.796,-76.220,-75.703,-75.182,-74.548,
--73.831,-73.136,-72.450,-71.706,-70.937,-70.182,-69.295,-68.103,-66.765,-65.698,-65.104,-64.794,-64.547,-64.337,-64.098,-63.549,
--62.520,-61.298,-60.325,-59.641,-58.853,-57.669,-56.207,-54.771,-53.513,-52.419,-51.450,-50.567,-49.705,-48.814,-47.888,-46.904,
--45.791,-44.537,-43.273,-42.194,-41.351,-40.542,-39.391,-37.660,-35.572,-33.758,-32.675,-32.035,-31.036,-29.283,-27.282,-25.782,
--24.835,-23.824,-22.393,-20.922,-19.941,-19.434,-18.995,-18.432,-17.819,-17.123,-16.192,-15.186,-14.580,-14.548,-14.657,-14.392,
--13.754,-13.033,-12.256,-11.287,-10.388,-10.146,-10.642,-11.084,-10.602,-9.128,-7.137,-4.683,-1.219,3.495,8.717,13.277,
-16.632,19.057,20.898,22.037,22.256,21.834,21.450,21.539,21.976,22.460,22.970,23.681,24.545,25.188,25.283,24.906,
-24.490,24.454,24.901,25.610,26.301,26.896,27.535,28.333,29.204,29.975,30.609,31.206,31.846,32.542,33.322,34.188,
-35.004,35.592,35.995,36.475,37.166,37.905,38.491,38.953,39.405,39.813,40.104,40.390,40.840,41.398,41.816,41.946,
-41.788,41.344,40.701,40.250,40.504,41.573,43.060,44.511,45.745,46.681,47.183,47.294,47.323,47.438,47.370,46.857,
-46.192,45.962,46.308,46.813,47.145,47.423,47.854,48.341,48.678,48.893,49.149,49.421,49.514,49.367,49.150,49.029,
-48.975,48.839,48.570,48.308,48.260,48.464,48.683,48.603,48.130,47.452,46.817,46.327,45.963,45.652,45.282,44.773,
-44.259,44.091,44.510,45.389,46.407,47.469,48.820,50.729,53.171,55.827,58.321,60.434,62.149,63.581,64.832,65.886,
-66.655,67.099,67.299,67.415,67.608,67.968,68.477,69.020,69.453,69.686,69.712,69.594,69.441,69.366,69.426,69.604,
-69.855,70.162,70.545,71.023,71.561,72.051,72.384,72.565,72.745,73.079,73.556,74.041,74.454,74.816,75.116,75.285,
-75.340,75.423,75.622,75.875,76.121,76.388,76.596,76.476,75.943,75.485,75.810,76.992,78.235,78.686,78.355,77.936,
-77.747,77.089,74.861,70.767,65.772,61.375,58.532,57.316,57.379,58.429,60.202,62.268,64.142,65.564,66.538,67.168,
-67.573,67.941,68.474,69.223,70.039,70.687,70.966,70.767,70.140,69.286,68.347,67.234,65.758,63.952,62.187,61.027,
-61.009,62.350,64.606,66.730,67.829,67.972,67.985,68.400,68.886,68.813,68.037,66.904,65.752,64.733,63.899,63.137,
-62.091,60.495,58.600,57.029,56.192,56.025,56.288,56.833,57.548,58.254,58.805,59.158,59.285,59.134,58.708,58.091,
-57.342,56.482,55.590,54.789,54.105,53.462,52.850,52.383,52.143,52.058,51.995,51.871,51.636,51.249,50.719,50.115,
-49.487,48.843,48.215,47.646,47.107,46.531,45.938,45.426,45.014,44.600,44.105,43.551,42.968,42.354,41.769,41.308,
-40.957,40.581,40.129,39.699,39.348,38.997,38.607,38.283,38.096,37.939,37.696,37.438,37.283,37.185,37.001,36.694,
-36.318,35.879,35.348,34.732,34.045,33.305,32.672,32.432,32.606,32.726,32.282,31.369,30.604,30.409,30.634,30.880,
-30.897,30.579,29.867,28.879,27.936,27.266,26.791,26.342,25.924,25.636,25.426,25.145,24.769,24.398,24.066,23.701,
-23.276,22.865,22.537,22.275,22.033,21.798,21.594,21.445,21.323,21.137,20.844,20.576,20.544,20.727,20.777,20.384,
-19.677,19.112,18.992,19.222,19.522,19.709,19.743,19.648,19.486,19.323,19.147,18.871,18.451,17.953,17.483,17.108,
-16.858,16.742,16.724,16.750,16.808,16.912,16.990,16.922,16.714,16.551,16.575,16.712,16.805,16.842,16.901,16.937,
-16.796,16.469,16.125,15.851,15.504,14.985,14.499,14.347,14.477,14.490,14.169,13.783,13.712,13.900,13.932,13.595,
-13.146,12.926,12.920,12.847,12.573,12.219,11.933,11.718,11.532,11.384,11.277,11.146,10.938,10.692,10.485,10.347,
-10.301,10.381,10.558,10.684,10.641,10.478,10.331,10.225,10.073,9.864,9.710,9.675,9.672,9.597,9.481,9.407,
-9.349,9.224,9.066,9.008,9.060,9.015,8.667,8.078,7.536,7.264,7.216,7.180,7.006,6.713,6.404,6.135,
-5.885,5.628,5.381,5.186,5.044,4.907,4.725,4.485,4.215,3.957,3.746,3.584,3.438,3.266,3.075,2.917,
-2.831,2.797,2.768,2.720,2.668,2.621,2.563,2.491,2.420,2.358,2.271,2.106,1.852,1.558,1.281,1.044,
-.853,.730,.699,.699,.592,.295,-.102,-.411,-.546,-.602,-.706,-.863,-.999,-1.105,-1.261,-1.530,
--1.894,-2.295,-2.685,-3.034,-3.329,-3.602,-3.905,-4.253,-4.611,-4.955,-5.301,-5.650,-5.966,-6.222,-6.453,-6.705,
--6.980,-7.256,-7.536,-7.829,-8.112,-8.350,-8.551,-8.763,-8.998,-9.223,-9.402,-9.543,-9.684,-9.854,-10.055,-10.262,
--10.440,-10.576,-10.686,-10.801,-10.935,-11.085,-11.243,-11.397,-11.533,-11.651,-11.761,-11.865,-11.945,-12.009,-12.108,-12.299,
--12.570,-12.840,-13.027,-13.109,-13.130,-13.157,-13.224,-13.315,-13.394,-13.455,-13.532,-13.640,-13.759,-13.873,-13.983,-14.082,
--14.140,-14.147,-14.142,-14.159,-14.193,-14.232,-14.289,-14.363,-14.404,-14.383,-14.346,-14.353,-14.386,-14.378,-14.320,-14.259,
--14.205,-14.127,-14.024,-13.936,-13.874,-13.807,-13.731,-13.675,-13.639,-13.571,-13.458,-13.353,-13.300,-13.282,-13.263,-13.230,
--13.159,-13.011,-12.799,-12.592,-12.434,-12.291,-12.130,-11.976,-11.865,-11.780,-11.691,-11.607,-11.542,-11.477,-11.407,-11.364,
--11.365,-11.361,-11.306,-11.239,-11.219,-11.234,-11.229,-11.203,-11.201,-11.234,-11.271,-11.301,-11.345,-11.402,-11.459,-11.529,
--11.629,-11.735,-11.809,-11.865,-11.949,-12.058,-12.155,-12.246,-12.377,-12.555,-12.727,-12.849,-12.928,-12.974,-12.985,-12.985,
--13.025,-13.111,-13.197,-13.246,-13.271,-13.287,-13.284,-13.266,-13.267,-13.296,-13.309,-13.272,-13.212,-13.182,-13.191,-13.220,
--13.266,-13.340,-13.421,-13.470,-13.471,-13.445,-13.415,-13.388,-13.358,-13.320,-13.274,-13.218,-13.155,-13.085,-13.006,-12.914,
--12.811,-12.701,-12.589,-12.471,-12.340,-12.186,-12.016,-11.845,-11.673,-11.487,-11.289,-11.087,-10.872,-10.618,-10.326,-10.035,
--9.767,-9.496,-9.199,-8.887,-8.565,-8.207,-7.811,-7.429,-7.093,-6.747,-6.337,-5.902,-5.511,-5.141,-4.717,-4.248,
--3.821,-3.460,-3.095,-2.681,-2.237,-1.773,-1.277,-.813,-.505,-.361,-.258,-.200,-.464,-1.298,-2.393,-2.827,
--1.713,.973,4.221,6.747,8.028,8.645,9.631,11.545,14.142,16.724,18.639,19.603,19.777,19.522,18.865,17.297,
-14.450,11.026,8.613,8.292,9.649,11.401,12.727,13.701,14.666,15.735,16.918,18.246,19.574,20.556,21.032,21.263,
-21.620,22.164,22.694,23.061,23.283,23.418,23.505,23.591,23.698,23.769,23.721,23.545,23.295,23.034,22.801,22.588,
-22.314,21.877,21.271,20.582,19.852,19.041,18.181,17.444,16.967,16.658,16.262,15.584,14.594,13.399,12.188,11.146,
-10.328,9.653,9.067,8.627,8.325,7.953,7.303,6.459,5.716,5.197,4.707,3.993,3.035,2.011,1.090,.336,
--.276,-.819,-1.374,-1.945,-2.473,-2.942,-3.439,-4.062,-4.808,-5.600,-6.402,-7.237,-8.111,-8.971,-9.754,-10.453,
--11.126,-11.854,-12.678,-13.569,-14.455,-15.277,-16.020,-16.700,-17.328,-17.896,-18.390,-18.801,-19.138,-19.421,-19.676,-19.915,
--20.136,-20.321,-20.446,-20.517,-20.582,-20.686,-20.824,-20.945,-21.025,-21.102,-21.219,-21.390,-21.627,-21.944,-22.309,-22.621,
--22.799,-22.871,-22.942,-23.082,-23.296,-23.562,-23.845,-24.094,-24.268,-24.397,-24.541,-24.697,-24.766,-24.653,-24.381,-24.110,
--24.021,-24.155,-24.332,-24.274,-23.842,-23.155,-22.451,-21.879,-21.436,-21.037,-20.571,-19.928,-19.086,-18.154,-17.239,-16.286,
--15.158,-13.882,-12.709,-11.890,-11.458,-11.267,-11.147,-10.984,-10.723,-10.379,-10.007,-9.620,-9.145,-8.514,-7.761,-6.996,
--6.324,-5.786,-5.338,-4.893,-4.437,-4.089,-3.961,-3.971,-3.991,-4.200,-5.057,-6.709,-8.579,-9.799,-10.048,-9.783,
--9.623,-9.745,-9.929,-9.984,-9.929,-9.861,-9.813,-9.763,-9.673,-9.518,-9.304,-9.079,-8.878,-8.680,-8.449,-8.184,
--7.919,-7.691,-7.533,-7.457,-7.405,-7.273,-6.998,-6.637,-6.296,-6.022,-5.790,-5.561,-5.320,-5.050,-4.736,-4.400,
--4.090,-3.834,-3.609,-3.372,-3.081,-2.706,-2.249,-1.749,-1.252,-.769,-.279,.222,.711,1.179,1.648,2.143,
-2.653,3.157,3.650,4.147,4.651,5.159,5.688,6.259,6.853,7.411,7.898,8.334,8.748,9.120,9.396,9.580,
-9.752,9.994,10.324,10.721,11.157,11.591,11.945,12.165,12.285,12.414,12.639,12.975,13.379,13.786,14.130,14.396,
-14.635,14.900,15.159,15.334,15.422,15.514,15.666,15.833,15.960,16.074,16.221,16.359,16.409,16.371,16.325,16.304,
-16.262,16.161,16.021,15.877,15.725,15.572,15.457,15.400,15.365,15.308,15.233,15.171,15.129,15.100,15.101,15.165,
-15.288,15.435,15.569,15.672,15.731,15.751,15.766,15.809,15.868,15.900,15.887,15.859,15.853,15.881,15.921,15.927,
-15.855,15.707,15.526,15.314,14.971,14.402,13.846,13.370,13.145,12.948,12.478,11.764,11.146,10.851,10.732,10.501,
-10.109,9.754,9.570,9.477,9.340,9.152,8.996,8.901,8.833,8.761,8.673,8.549,8.375,8.200,8.092,8.061,
-8.049,8.016,7.978,7.960,7.943,7.900,7.843,7.800,7.783,7.793,7.839,7.929,8.058,8.230,8.487,8.886,
-9.428,10.043,10.647,11.196,11.675,12.041,12.238,12.259,12.186,12.133,12.134,12.131,12.054,11.895,11.690,11.470,
-11.266,11.119,11.027,10.880,10.515,9.863,9.008,8.109,7.285,6.579,5.987,5.490,5.063,4.692,4.357,4.020,
-3.627,3.146,2.569,1.888,1.111,.300,-.457,-1.133,-1.774,-2.415,-3.024,-3.569,-4.070,-4.563,-5.041,-5.491,
--5.945,-6.451,-7.012,-7.563,-7.996,-8.192,-8.112,-7.901,-7.850,-8.188,-8.925,-9.922,-11.035,-12.150,-13.155,-13.969,
--14.575,-14.955,-15.047,-14.847,-14.486,-14.120,-13.790,-13.467,-13.131,-12.660,-11.773,-10.392,-9.110,-8.961,-10.424,-12.716,
--14.297,-14.214,-12.933,-11.861,-12.042,-13.293,-14.570,-15.098,-15.006,-14.895,-15.057,-15.348,-15.614,-15.865,-16.034,-15.992,
--15.903,-16.217,-17.065,-17.955,-18.358,-18.385,-18.584,-19.217,-20.076,-20.924,-21.762,-22.663,-23.607,-24.528,-25.300,-25.730,
--25.804,-25.908,-26.495,-27.504,-28.429,-29.039,-29.678,-30.704,-31.966,-33.081,-33.947,-34.696,-35.322,-35.700,-35.900,-36.158,
--36.533,-36.831,-36.915,-36.899,-36.978,-37.202,-37.499,-37.788,-38.030,-38.243,-38.503,-38.899,-39.451,-40.084,-40.657,-40.967,
--40.814,-40.192,-39.420,-39.003,-39.268,-40.107,-41.003,-41.318,-40.712,-39.431,-38.165,-37.486,-37.405,-37.509,-37.478,-37.360,
--37.339,-37.384,-37.247,-36.808,-36.338,-36.306,-36.862,-37.600,-37.983,-37.950,-37.893,-38.074,-38.350,-38.563,-38.839,-39.269,
--39.607,-39.622,-39.564,-39.833,-40.324,-40.550,-40.395,-40.278,-40.508,-40.927,-41.355,-41.923,-42.680,-43.263,-43.333,-43.099,
--43.037,-43.287,-43.684,-44.210,-45.002,-45.964,-46.782,-47.355,-47.894,-48.551,-49.234,-49.860,-50.494,-51.152,-51.718,-52.190,
--52.773,-53.577,-54.420,-55.084,-55.617,-56.203,-56.867,-57.495,-58.060,-58.631,-59.214,-59.744,-60.226,-60.741,-61.288,-61.757,
--62.092,-62.384,-62.751,-63.195,-63.626,-64.008,-64.421,-65.003,-65.831,-66.858,-67.939,-68.909,-69.694,-70.353,-70.962,-71.438,
--71.550,-71.230,-70.811,-70.793,-71.328,-72.109,-72.841,-73.609,-74.623,-75.807,-76.915,-77.904,-78.904,-79.841,-80.464,-80.779,
--81.124,-81.688,-82.251,-82.581,-82.787,-83.074,-83.382,-83.533,-83.583,-83.726,-83.968,-84.157,-84.283,-84.463,-84.697,-84.882,
--85.041,-85.285,-85.535,-85.567,-85.337,-85.031,-84.745,-84.351,-83.777,-83.168,-82.674,-82.278,-81.952,-81.772,-81.726,-81.584,
--81.161,-80.593,-80.170,-80.002,-79.976,-79.940,-79.775,-79.377,-78.753,-78.077,-77.506,-77.004,-76.455,-75.878,-75.356,-74.850,
--74.244,-73.544,-72.855,-72.187,-71.475,-70.740,-70.020,-69.186,-68.078,-66.840,-65.875,-65.372,-65.128,-64.894,-64.639,-64.313,
--63.652,-62.514,-61.225,-60.257,-59.620,-58.870,-57.716,-56.335,-55.030,-53.863,-52.769,-51.783,-50.955,-50.168,-49.228,-48.106,
--46.928,-45.775,-44.646,-43.601,-42.766,-42.093,-41.230,-39.768,-37.673,-35.458,-33.820,-32.995,-32.463,-31.418,-29.620,-27.661,
--26.254,-25.399,-24.498,-23.227,-21.928,-21.042,-20.494,-19.898,-19.130,-18.335,-17.488,-16.404,-15.216,-14.431,-14.314,-14.502,
--14.487,-14.203,-13.860,-13.412,-12.640,-11.697,-11.118,-11.132,-11.323,-11.177,-10.644,-9.813,-8.282,-5.348,-.927,4.077,
-8.547,12.102,15.061,17.637,19.516,20.348,20.369,20.289,20.609,21.266,21.983,22.728,23.664,24.741,25.558,25.744,
-25.363,24.887,24.767,25.063,25.514,25.914,26.374,27.128,28.112,28.943,29.390,29.712,30.328,31.243,32.079,32.643,
-33.146,33.765,34.316,34.578,34.725,35.138,35.907,36.778,37.521,38.103,38.538,38.819,39.030,39.301,39.579,39.657,
-39.436,39.010,38.468,37.881,37.495,37.680,38.518,39.659,40.728,41.673,42.597,43.469,44.220,44.910,45.532,45.812,
-45.545,45.042,44.894,45.264,45.754,46.007,46.128,46.377,46.747,47.087,47.427,47.904,48.446,48.772,48.740,48.503,
-48.295,48.170,48.002,47.705,47.372,47.187,47.168,47.062,46.592,45.827,45.213,45.149,45.598,46.152,46.422,46.286,
-45.878,45.489,45.434,45.865,46.670,47.646,48.793,50.340,52.426,54.838,57.154,59.116,60.788,62.364,63.886,65.188,
-66.098,66.630,66.937,67.143,67.285,67.417,67.671,68.133,68.705,69.159,69.348,69.323,69.253,69.264,69.372,69.534,
-69.718,69.928,70.181,70.493,70.867,71.274,71.642,71.908,72.109,72.374,72.779,73.266,73.741,74.191,74.622,74.935,
-75.016,74.933,74.898,75.006,75.166,75.329,75.570,75.828,75.777,75.247,74.665,74.756,75.727,77.009,77.955,78.605,
-79.477,80.588,80.964,79.346,75.411,70.196,65.296,61.735,59.650,58.820,59.161,60.589,62.697,64.841,66.540,67.653,
-68.233,68.396,68.346,68.371,68.709,69.419,70.341,71.129,71.404,71.009,70.142,69.160,68.265,67.415,66.481,65.405,
-64.316,63.601,63.706,64.642,65.779,66.433,66.630,67.008,67.915,68.929,69.378,69.045,68.188,67.138,66.132,65.321,
-64.658,63.830,62.555,60.916,59.275,57.947,57.091,56.778,56.931,57.304,57.716,58.246,58.977,59.650,59.850,59.499,
-58.885,58.211,57.402,56.412,55.422,54.596,53.877,53.179,52.610,52.342,52.354,52.462,52.513,52.433,52.169,51.702,
-51.077,50.356,49.581,48.821,48.168,47.631,47.114,46.563,46.041,45.608,45.199,44.705,44.107,43.454,42.796,42.191,
-41.695,41.300,40.923,40.519,40.123,39.751,39.364,38.980,38.705,38.560,38.413,38.154,37.861,37.674,37.590,37.487,
-37.271,36.924,36.477,36.002,35.536,34.972,34.202,33.449,33.176,33.455,33.667,33.167,32.139,31.399,31.399,31.787,
-31.975,31.752,31.191,30.349,29.330,28.406,27.788,27.372,26.933,26.464,26.117,25.891,25.625,25.251,24.868,24.539,
-24.209,23.832,23.468,23.177,22.942,22.714,22.480,22.248,22.020,21.782,21.513,21.212,20.953,20.842,20.860,20.804,
-20.494,20.005,19.591,19.409,19.420,19.539,19.727,19.913,19.962,19.810,19.544,19.273,18.998,18.651,18.227,17.805,
-17.467,17.234,17.075,16.946,16.857,16.874,17.011,17.139,17.081,16.832,16.591,16.523,16.593,16.691,16.809,16.967,
-17.048,16.896,16.550,16.213,15.945,15.580,15.051,14.615,14.543,14.670,14.540,14.029,13.573,13.601,13.930,13.974,
-13.497,12.883,12.601,12.645,12.656,12.427,12.071,11.753,11.506,11.311,11.182,11.085,10.913,10.635,10.365,10.220,
-10.180,10.181,10.238,10.362,10.442,10.349,10.129,9.953,9.883,9.812,9.667,9.522,9.459,9.430,9.356,9.259,
-9.214,9.200,9.119,8.961,8.838,8.823,8.826,8.659,8.238,7.672,7.182,6.913,6.813,6.704,6.469,6.156,
-5.879,5.660,5.428,5.154,4.901,4.730,4.601,4.425,4.171,3.890,3.642,3.441,3.260,3.068,2.862,2.675,
-2.549,2.491,2.469,2.453,2.439,2.419,2.370,2.282,2.184,2.103,2.023,1.892,1.677,1.399,1.121,.947,
-.982,1.258,1.676,2.045,2.165,1.913,1.296,.484,-.254,-.715,-.901,-.968,-1.050,-1.165,-1.283,-1.425,
--1.650,-1.982,-2.379,-2.772,-3.112,-3.404,-3.694,-4.022,-4.374,-4.719,-5.064,-5.436,-5.810,-6.112,-6.325,-6.521,
--6.771,-7.058,-7.318,-7.544,-7.775,-8.021,-8.251,-8.463,-8.690,-8.948,-9.202,-9.409,-9.573,-9.726,-9.894,-10.080,
--10.268,-10.440,-10.590,-10.727,-10.859,-10.990,-11.122,-11.262,-11.413,-11.555,-11.665,-11.738,-11.793,-11.853,-11.944,-12.087,
--12.283,-12.504,-12.702,-12.846,-12.928,-12.971,-13.015,-13.081,-13.157,-13.216,-13.264,-13.338,-13.451,-13.577,-13.695,-13.806,
--13.901,-13.944,-13.932,-13.910,-13.915,-13.928,-13.931,-13.950,-14.005,-14.056,-14.061,-14.044,-14.052,-14.073,-14.066,-14.037,
--14.018,-13.993,-13.913,-13.791,-13.690,-13.622,-13.538,-13.431,-13.352,-13.309,-13.237,-13.104,-12.966,-12.889,-12.861,-12.833,
--12.781,-12.691,-12.541,-12.348,-12.171,-12.041,-11.919,-11.771,-11.625,-11.514,-11.419,-11.320,-11.238,-11.188,-11.140,-11.076,
--11.038,-11.049,-11.055,-10.996,-10.913,-10.884,-10.908,-10.923,-10.914,-10.920,-10.949,-10.976,-11.001,-11.056,-11.137,-11.207,
--11.269,-11.366,-11.496,-11.606,-11.674,-11.738,-11.827,-11.927,-12.035,-12.188,-12.401,-12.630,-12.814,-12.933,-12.999,-13.028,
--13.047,-13.087,-13.151,-13.211,-13.250,-13.271,-13.273,-13.248,-13.215,-13.211,-13.235,-13.237,-13.194,-13.143,-13.128,-13.144,
--13.172,-13.219,-13.291,-13.358,-13.381,-13.358,-13.321,-13.299,-13.293,-13.283,-13.249,-13.184,-13.110,-13.054,-13.011,-12.944,
--12.837,-12.714,-12.600,-12.489,-12.362,-12.218,-12.068,-11.915,-11.753,-11.579,-11.389,-11.185,-10.971,-10.740,-10.479,-10.191,
--9.916,-9.681,-9.456,-9.189,-8.874,-8.546,-8.220,-7.871,-7.498,-7.136,-6.798,-6.442,-6.038,-5.615,-5.217,-4.842,
--4.454,-4.036,-3.599,-3.159,-2.727,-2.302,-1.858,-1.372,-.886,-.513,-.316,-.221,-.146,-.225,-.769,-1.809,
--2.700,-2.415,-.465,2.517,5.300,7.177,8.439,9.792,11.592,13.745,16.026,18.130,19.612,20.167,19.924,19.125,
-17.561,14.848,11.420,8.733,8.040,9.179,10.919,12.305,13.280,14.177,15.169,16.320,17.717,19.255,20.544,21.281,
-21.611,21.927,22.418,22.951,23.323,23.481,23.538,23.658,23.914,24.191,24.284,24.130,23.879,23.683,23.509,23.231,
-22.811,22.318,21.812,21.302,20.758,20.114,19.312,18.437,17.726,17.341,17.155,16.840,16.157,15.087,13.778,12.450,
-11.323,10.514,9.982,9.613,9.344,9.118,8.799,8.267,7.575,6.893,6.271,5.568,4.673,3.676,2.754,1.969,
-1.254,.553,-.118,-.725,-1.270,-1.781,-2.298,-2.862,-3.503,-4.224,-5.016,-5.872,-6.773,-7.675,-8.530,-9.312,
--10.034,-10.732,-11.452,-12.229,-13.067,-13.934,-14.783,-15.567,-16.262,-16.875,-17.434,-17.957,-18.422,-18.798,-19.086,-19.330,
--19.573,-19.816,-20.024,-20.169,-20.251,-20.308,-20.388,-20.514,-20.664,-20.793,-20.875,-20.943,-21.077,-21.347,-21.740,-22.153,
--22.475,-22.689,-22.862,-23.037,-23.187,-23.282,-23.364,-23.505,-23.717,-23.953,-24.174,-24.377,-24.549,-24.637,-24.572,-24.352,
--24.097,-23.995,-24.124,-24.307,-24.228,-23.727,-22.953,-22.186,-21.563,-21.039,-20.527,-19.975,-19.331,-18.562,-17.705,-16.808,
--15.834,-14.715,-13.535,-12.525,-11.855,-11.481,-11.244,-11.037,-10.824,-10.582,-10.295,-9.958,-9.544,-8.982,-8.245,-7.422,
--6.671,-6.105,-5.737,-5.476,-5.184,-4.802,-4.423,-4.185,-4.084,-4.053,-4.255,-5.098,-6.744,-8.685,-10.059,-10.438,
--10.162,-9.874,-9.893,-10.090,-10.224,-10.217,-10.149,-10.106,-10.088,-10.010,-9.805,-9.513,-9.251,-9.082,-8.941,-8.727,
--8.420,-8.098,-7.852,-7.713,-7.649,-7.580,-7.421,-7.153,-6.837,-6.552,-6.321,-6.111,-5.889,-5.647,-5.382,-5.088,
--4.768,-4.448,-4.161,-3.917,-3.688,-3.417,-3.063,-2.626,-2.136,-1.615,-1.066,-.501,.051,.562,1.035,1.490,
-1.950,2.428,2.929,3.438,3.935,4.418,4.903,5.411,5.944,6.488,7.014,7.493,7.916,8.303,8.662,8.973,
-9.213,9.419,9.663,9.979,10.348,10.745,11.152,11.523,11.795,11.973,12.167,12.495,12.959,13.454,13.873,14.185,
-14.429,14.666,14.922,15.155,15.298,15.355,15.417,15.561,15.751,15.905,16.003,16.082,16.147,16.154,16.087,15.996,
-15.919,15.837,15.721,15.581,15.443,15.310,15.187,15.111,15.111,15.158,15.184,15.156,15.102,15.056,15.033,15.042,
-15.106,15.236,15.404,15.544,15.608,15.593,15.541,15.508,15.524,15.582,15.640,15.652,15.619,15.597,15.634,15.692,
-15.673,15.543,15.370,15.200,14.936,14.456,13.846,13.467,13.197,13.291,13.273,12.712,11.774,11.017,10.719,10.630,
-10.407,10.046,9.757,9.608,9.475,9.283,9.099,8.990,8.924,8.849,8.770,8.699,8.609,8.481,8.358,8.288,
-8.260,8.230,8.190,8.164,8.158,8.152,8.138,8.124,8.114,8.099,8.092,8.126,8.213,8.338,8.493,8.709,
-9.031,9.470,9.979,10.476,10.893,11.210,11.450,11.644,11.826,12.047,12.340,12.662,12.883,12.890,12.697,12.425,
-12.181,11.986,11.822,11.666,11.464,11.103,10.478,9.598,8.623,7.758,7.116,6.644,6.209,5.739,5.286,4.922,
-4.627,4.300,3.871,3.334,2.699,1.973,1.194,.433,-.274,-.949,-1.605,-2.220,-2.779,-3.298,-3.787,-4.230,
--4.650,-5.122,-5.672,-6.230,-6.712,-7.093,-7.356,-7.441,-7.351,-7.277,-7.523,-8.262,-9.405,-10.681,-11.828,-12.737,
--13.461,-14.065,-14.458,-14.441,-13.974,-13.313,-12.789,-12.541,-12.504,-12.549,-12.457,-11.884,-10.701,-9.469,-9.261,-10.702,
--13.148,-15.005,-15.029,-13.410,-11.625,-11.191,-12.425,-14.322,-15.605,-15.822,-15.446,-15.152,-15.241,-15.636,-16.091,-16.296,
--16.086,-15.698,-15.598,-15.922,-16.310,-16.489,-16.760,-17.609,-18.986,-20.329,-21.253,-21.919,-22.673,-23.607,-24.547,-25.260,
--25.634,-25.794,-26.078,-26.713,-27.526,-28.167,-28.644,-29.355,-30.527,-31.885,-33.035,-33.904,-34.623,-35.188,-35.515,-35.703,
--35.962,-36.309,-36.559,-36.617,-36.606,-36.673,-36.836,-37.041,-37.264,-37.506,-37.782,-38.142,-38.651,-39.305,-39.982,-40.440,
--40.367,-39.571,-38.247,-37.031,-36.622,-37.262,-38.577,-39.863,-40.495,-40.200,-39.166,-37.937,-37.060,-36.725,-36.716,-36.731,
--36.685,-36.701,-36.862,-37.016,-36.907,-36.528,-36.262,-36.512,-37.184,-37.719,-37.725,-37.419,-37.307,-37.586,-38.052,-38.451,
--38.695,-38.805,-38.869,-39.041,-39.367,-39.651,-39.706,-39.691,-39.930,-40.419,-40.833,-41.058,-41.373,-41.964,-42.584,-42.905,
--42.953,-42.954,-42.990,-43.073,-43.363,-44.010,-44.867,-45.647,-46.293,-46.954,-47.665,-48.328,-48.954,-49.645,-50.340,-50.862,
--51.265,-51.837,-52.689,-53.576,-54.253,-54.788,-55.380,-56.048,-56.679,-57.256,-57.848,-58.448,-58.988,-59.471,-59.957,-60.435,
--60.840,-61.176,-61.531,-61.944,-62.361,-62.720,-63.061,-63.513,-64.198,-65.138,-66.220,-67.260,-68.122,-68.803,-69.387,-69.929,
--70.352,-70.505,-70.358,-70.151,-70.241,-70.766,-71.540,-72.350,-73.220,-74.267,-75.412,-76.450,-77.347,-78.220,-79.045,-79.641,
--79.995,-80.343,-80.821,-81.276,-81.561,-81.792,-82.114,-82.432,-82.590,-82.677,-82.887,-83.193,-83.422,-83.566,-83.767,-84.035,
--84.249,-84.413,-84.651,-84.920,-84.996,-84.801,-84.502,-84.201,-83.792,-83.202,-82.589,-82.137,-81.844,-81.638,-81.526,-81.469,
--81.287,-80.853,-80.315,-79.931,-79.781,-79.749,-79.693,-79.504,-79.075,-78.413,-77.704,-77.127,-76.641,-76.102,-75.510,-74.975,
--74.485,-73.921,-73.256,-72.579,-71.924,-71.244,-70.540,-69.821,-68.963,-67.846,-66.657,-65.797,-65.412,-65.242,-65.016,-64.723,
--64.336,-63.597,-62.375,-61.041,-60.107,-59.562,-58.910,-57.854,-56.603,-55.434,-54.319,-53.162,-52.106,-51.315,-50.610,-49.629,
--48.305,-46.922,-45.727,-44.724,-43.861,-43.176,-42.588,-41.723,-40.188,-38.045,-35.890,-34.365,-33.561,-32.921,-31.778,-30.030,
--28.237,-26.979,-26.207,-25.386,-24.239,-23.057,-22.207,-21.599,-20.881,-19.960,-19.005,-18.037,-16.887,-15.636,-14.711,-14.377,
--14.375,-14.293,-14.073,-13.887,-13.684,-13.227,-12.540,-11.969,-11.721,-11.623,-11.456,-11.228,-10.877,-9.932,-7.826,-4.573,
--.873,2.564,5.623,8.601,11.581,14.190,16.017,17.111,17.933,18.871,19.930,20.930,21.860,22.883,24.020,24.985,
-25.456,25.438,25.283,25.327,25.577,25.814,26.000,26.448,27.434,28.695,29.570,29.787,29.877,30.519,31.626,32.465,
-32.680,32.725,33.109,33.637,33.788,33.574,33.563,34.109,34.972,35.748,36.320,36.757,37.092,37.336,37.539,37.672,
-37.620,37.380,37.107,36.883,36.647,36.447,36.531,37.003,37.603,38.043,38.400,38.953,39.775,40.742,41.821,42.993,
-43.973,44.380,44.263,44.156,44.447,44.968,45.333,45.471,45.583,45.780,46.018,46.331,46.842,47.508,48.048,48.213,
-48.037,47.739,47.448,47.094,46.581,45.978,45.481,45.158,44.808,44.212,43.530,43.288,43.859,45.005,46.067,46.548,
-46.459,46.146,45.965,46.120,46.668,47.536,48.621,49.939,51.636,53.763,56.072,58.146,59.763,61.074,62.364,63.693,
-64.862,65.703,66.277,66.736,67.090,67.245,67.255,67.371,67.776,68.337,68.742,68.841,68.777,68.781,68.932,69.139,
-69.315,69.474,69.681,69.953,70.261,70.582,70.910,71.216,71.468,71.705,72.030,72.487,73.002,73.493,73.970,74.446,
-74.811,74.935,74.859,74.766,74.742,74.740,74.769,74.926,75.138,75.087,74.621,74.124,74.191,74.934,75.879,76.667,
-77.621,79.345,81.701,83.439,83.029,79.956,75.165,70.267,66.400,63.848,62.501,62.306,63.192,64.824,66.674,68.313,
-69.514,70.140,70.136,69.641,69.002,68.599,68.681,69.269,70.125,70.836,71.064,70.754,70.094,69.333,68.673,68.199,
-67.819,67.337,66.743,66.314,66.273,66.458,66.572,66.685,67.175,68.119,69.048,69.421,69.103,68.288,67.193,66.025,
-65.039,64.406,64.044,63.694,63.088,62.044,60.621,59.230,58.345,57.957,57.605,57.120,57.014,57.776,59.025,59.823,
-59.730,59.111,58.425,57.700,56.831,55.956,55.254,54.656,54.022,53.425,53.036,52.855,52.736,52.595,52.417,52.153,
-51.757,51.267,50.735,50.135,49.456,48.802,48.272,47.824,47.354,46.862,46.408,45.957,45.412,44.760,44.080,43.433,
-42.811,42.216,41.687,41.252,40.902,40.594,40.267,39.892,39.521,39.245,39.067,38.889,38.658,38.426,38.246,38.088,
-37.903,37.666,37.339,36.901,36.447,36.083,35.684,35.013,34.192,33.732,33.854,34.030,33.615,32.753,32.216,32.353,
-32.670,32.551,31.957,31.198,30.401,29.537,28.735,28.182,27.818,27.419,26.944,26.558,26.319,26.089,25.769,25.431,
-25.146,24.859,24.507,24.135,23.825,23.583,23.354,23.103,22.818,22.501,22.172,21.854,21.556,21.279,21.042,20.854,
-20.690,20.545,20.456,20.421,20.341,20.145,19.946,19.940,20.138,20.306,20.227,19.920,19.553,19.219,18.895,18.552,
-18.220,17.943,17.724,17.524,17.311,17.117,17.033,17.101,17.213,17.193,16.990,16.733,16.571,16.533,16.585,16.721,
-16.905,16.984,16.822,16.488,16.172,15.905,15.540,15.059,14.720,14.713,14.793,14.515,13.864,13.385,13.526,14.016,
-14.143,13.600,12.814,12.376,12.383,12.484,12.389,12.113,11.781,11.441,11.118,10.862,10.660,10.418,10.110,9.856,
-9.767,9.806,9.872,9.940,10.015,10.019,9.876,9.664,9.548,9.563,9.574,9.478,9.328,9.223,9.172,9.125,
-9.079,9.059,9.057,9.023,8.922,8.777,8.652,8.607,8.597,8.445,8.000,7.348,6.784,6.508,6.413,6.261,
-5.981,5.691,5.465,5.238,4.949,4.658,4.446,4.287,4.096,3.846,3.585,3.353,3.147,2.938,2.713,2.484,
-2.292,2.176,2.132,2.123,2.123,2.133,2.137,2.091,1.984,1.860,1.747,1.620,1.438,1.199,.932,.702,
-.663,1.012,1.772,2.633,3.139,3.041,2.429,1.541,.572,-.314,-.943,-1.229,-1.273,-1.276,-1.348,-1.468,
--1.601,-1.783,-2.070,-2.449,-2.841,-3.183,-3.487,-3.807,-4.165,-4.526,-4.856,-5.185,-5.552,-5.922,-6.208,-6.393,
--6.573,-6.836,-7.152,-7.427,-7.630,-7.809,-8.006,-8.212,-8.418,-8.642,-8.893,-9.146,-9.367,-9.553,-9.723,-9.891,
--10.060,-10.223,-10.377,-10.526,-10.675,-10.824,-10.966,-11.101,-11.244,-11.404,-11.560,-11.675,-11.734,-11.763,-11.814,-11.922,
--12.085,-12.264,-12.417,-12.538,-12.643,-12.740,-12.819,-12.881,-12.937,-12.992,-13.034,-13.072,-13.136,-13.240,-13.362,-13.481,
--13.598,-13.696,-13.737,-13.722,-13.697,-13.696,-13.693,-13.667,-13.656,-13.694,-13.746,-13.756,-13.733,-13.723,-13.728,-13.720,
--13.712,-13.729,-13.736,-13.672,-13.550,-13.445,-13.374,-13.290,-13.182,-13.102,-13.060,-12.985,-12.835,-12.666,-12.548,-12.472,
--12.392,-12.295,-12.184,-12.046,-11.884,-11.734,-11.615,-11.502,-11.378,-11.272,-11.196,-11.113,-11.003,-10.907,-10.859,-10.826,
--10.772,-10.728,-10.729,-10.731,-10.675,-10.591,-10.554,-10.573,-10.590,-10.593,-10.614,-10.655,-10.682,-10.705,-10.770,-10.875,
--10.960,-11.012,-11.089,-11.222,-11.367,-11.472,-11.549,-11.628,-11.718,-11.826,-11.996,-12.252,-12.547,-12.795,-12.948,-13.026,
--13.076,-13.127,-13.178,-13.209,-13.216,-13.217,-13.227,-13.230,-13.207,-13.179,-13.178,-13.192,-13.174,-13.120,-13.076,-13.074,
--13.093,-13.111,-13.137,-13.184,-13.228,-13.239,-13.216,-13.184,-13.162,-13.159,-13.164,-13.145,-13.081,-12.998,-12.940,-12.902,
--12.830,-12.710,-12.589,-12.502,-12.419,-12.297,-12.142,-11.984,-11.833,-11.675,-11.504,-11.313,-11.095,-10.851,-10.605,-10.358,
--10.095,-9.830,-9.601,-9.405,-9.177,-8.877,-8.549,-8.249,-7.946,-7.588,-7.201,-6.855,-6.539,-6.169,-5.728,-5.302,
--4.951,-4.619,-4.213,-3.726,-3.228,-2.765,-2.337,-1.925,-1.504,-1.051,-.605,-.270,-.098,-.022,-.045,-.426,
--1.384,-2.516,-2.774,-1.374,1.349,4.259,6.559,8.329,9.961,11.577,13.230,15.200,17.563,19.659,20.580,20.165,
-19.012,17.476,15.268,12.385,9.844,8.896,9.682,11.178,12.397,13.191,13.893,14.720,15.759,17.139,18.839,20.482,
-21.599,22.095,22.292,22.544,22.924,23.278,23.471,23.573,23.808,24.282,24.786,24.963,24.715,24.312,24.051,23.918,
-23.683,23.225,22.632,22.034,21.484,20.956,20.380,19.685,18.909,18.233,17.815,17.576,17.241,16.569,15.514,14.194,
-12.825,11.661,10.869,10.429,10.175,9.968,9.757,9.497,9.117,8.595,7.982,7.297,6.480,5.503,4.471,3.536,
-2.740,2.007,1.273,.563,-.070,-.634,-1.192,-1.790,-2.422,-3.069,-3.757,-4.540,-5.430,-6.360,-7.246,-8.059,
--8.822,-9.559,-10.270,-10.963,-11.670,-12.432,-13.262,-14.136,-14.989,-15.748,-16.378,-16.912,-17.408,-17.878,-18.291,-18.631,
--18.919,-19.178,-19.401,-19.575,-19.704,-19.801,-19.874,-19.944,-20.056,-20.226,-20.404,-20.515,-20.581,-20.737,-21.109,-21.655,
--22.188,-22.559,-22.784,-22.968,-23.134,-23.217,-23.191,-23.146,-23.190,-23.336,-23.519,-23.695,-23.862,-24.016,-24.106,-24.060,
--23.861,-23.607,-23.473,-23.546,-23.678,-23.582,-23.121,-22.439,-21.766,-21.165,-20.549,-19.875,-19.198,-18.544,-17.847,-17.037,
--16.106,-15.074,-13.998,-13.012,-12.269,-11.800,-11.473,-11.159,-10.854,-10.601,-10.377,-10.106,-9.740,-9.268,-8.676,-7.973,
--7.247,-6.628,-6.202,-5.957,-5.792,-5.574,-5.245,-4.892,-4.657,-4.562,-4.540,-4.688,-5.338,-6.695,-8.439,-9.865,
--10.491,-10.445,-10.223,-10.175,-10.294,-10.406,-10.422,-10.402,-10.425,-10.469,-10.410,-10.163,-9.794,-9.471,-9.280,-9.142,
--8.917,-8.574,-8.218,-7.970,-7.861,-7.812,-7.722,-7.538,-7.288,-7.035,-6.819,-6.632,-6.443,-6.223,-5.966,-5.682,
--5.386,-5.083,-4.776,-4.483,-4.229,-4.004,-3.749,-3.415,-3.001,-2.540,-2.040,-1.494,-.920,-.361,.157,.638,
-1.091,1.532,1.995,2.511,3.056,3.584,4.081,4.577,5.085,5.592,6.093,6.600,7.099,7.553,7.958,8.347,
-8.719,9.040,9.314,9.599,9.931,10.274,10.596,10.916,11.249,11.548,11.798,12.096,12.560,13.165,13.751,14.186,
-14.473,14.690,14.885,15.059,15.190,15.261,15.283,15.314,15.408,15.542,15.642,15.672,15.670,15.668,15.642,15.566,
-15.467,15.390,15.333,15.260,15.166,15.071,14.985,14.908,14.865,14.886,14.955,15.002,14.976,14.903,14.842,14.819,
-14.834,14.899,15.033,15.206,15.334,15.361,15.316,15.273,15.269,15.294,15.339,15.399,15.441,15.432,15.402,15.413,
-15.442,15.383,15.212,15.034,14.888,14.611,14.067,13.467,13.059,12.873,13.079,13.124,12.546,11.564,10.796,10.511,
-10.429,10.224,9.930,9.737,9.648,9.516,9.303,9.115,9.006,8.928,8.846,8.789,8.763,8.714,8.623,8.536,
-8.487,8.448,8.395,8.356,8.362,8.394,8.410,8.410,8.417,8.433,8.449,8.474,8.526,8.606,8.704,8.828,
-9.002,9.241,9.546,9.909,10.281,10.588,10.787,10.933,11.138,11.481,11.975,12.585,13.215,13.690,13.829,13.596,
-13.150,12.717,12.417,12.221,12.048,11.828,11.483,10.898,10.016,8.962,8.023,7.420,7.110,6.838,6.426,5.932,
-5.528,5.250,4.973,4.572,4.035,3.413,2.731,2.007,1.269,.538,-.176,-.850,-1.450,-1.979,-2.478,-2.966,
--3.429,-3.891,-4.410,-4.973,-5.479,-5.878,-6.247,-6.645,-6.965,-7.058,-7.006,-7.157,-7.818,-8.956,-10.229,-11.298,
--12.094,-12.775,-13.418,-13.797,-13.589,-12.807,-11.910,-11.395,-11.365,-11.583,-11.811,-11.904,-11.672,-11.008,-10.250,-10.186,
--11.391,-13.504,-15.287,-15.523,-14.031,-11.929,-10.859,-11.695,-13.854,-15.855,-16.609,-16.189,-15.458,-15.192,-15.561,-16.199,
--16.573,-16.385,-15.795,-15.227,-14.931,-14.862,-15.037,-15.752,-17.204,-19.034,-20.558,-21.447,-21.973,-22.559,-23.329,-24.124,
--24.773,-25.238,-25.623,-26.101,-26.750,-27.443,-28.019,-28.570,-29.374,-30.520,-31.766,-32.838,-33.689,-34.375,-34.866,-35.144,
--35.345,-35.625,-35.952,-36.180,-36.273,-36.329,-36.404,-36.475,-36.543,-36.676,-36.921,-37.264,-37.679,-38.165,-38.726,-39.296,
--39.639,-39.361,-38.234,-36.634,-35.514,-35.673,-37.038,-38.744,-39.892,-40.129,-39.601,-38.621,-37.521,-36.631,-36.166,-36.096,
--36.194,-36.276,-36.374,-36.613,-36.926,-36.997,-36.644,-36.199,-36.261,-36.955,-37.660,-37.685,-37.097,-36.620,-36.778,-37.383,
--37.899,-38.062,-38.035,-38.111,-38.398,-38.727,-38.855,-38.786,-38.854,-39.343,-40.074,-40.592,-40.744,-40.851,-41.241,-41.854,
--42.407,-42.736,-42.829,-42.726,-42.577,-42.651,-43.091,-43.758,-44.458,-45.184,-45.987,-46.768,-47.409,-48.006,-48.704,-49.407,
--49.918,-50.317,-50.916,-51.799,-52.693,-53.366,-53.910,-54.521,-55.208,-55.870,-56.497,-57.133,-57.743,-58.266,-58.718,-59.150,
--59.558,-59.932,-60.326,-60.773,-61.203,-61.528,-61.798,-62.176,-62.785,-63.618,-64.584,-65.573,-66.486,-67.270,-67.920,-68.446,
--68.849,-69.126,-69.288,-69.367,-69.460,-69.724,-70.260,-71.019,-71.883,-72.820,-73.853,-74.916,-75.880,-76.718,-77.505,-78.230,
--78.776,-79.131,-79.456,-79.850,-80.231,-80.529,-80.829,-81.195,-81.512,-81.682,-81.829,-82.110,-82.451,-82.679,-82.826,-83.052,
--83.344,-83.548,-83.665,-83.850,-84.088,-84.150,-83.933,-83.595,-83.273,-82.891,-82.376,-81.858,-81.506,-81.299,-81.135,-80.994,
--80.876,-80.676,-80.318,-79.907,-79.614,-79.467,-79.369,-79.240,-79.010,-78.574,-77.916,-77.213,-76.652,-76.197,-75.693,-75.119,
--74.587,-74.110,-73.575,-72.945,-72.293,-71.661,-71.015,-70.340,-69.609,-68.692,-67.521,-66.349,-65.591,-65.336,-65.248,-65.038,
--64.717,-64.280,-63.464,-62.163,-60.815,-59.978,-59.594,-59.067,-58.066,-56.855,-55.754,-54.701,-53.551,-52.469,-51.661,-50.927,
--49.846,-48.360,-46.866,-45.695,-44.802,-44.028,-43.368,-42.796,-42.019,-40.679,-38.797,-36.844,-35.311,-34.261,-33.308,-32.031,
--30.412,-28.858,-27.756,-27.040,-26.286,-25.263,-24.182,-23.333,-22.660,-21.873,-20.876,-19.808,-18.726,-17.533,-16.282,-15.267,
--14.674,-14.319,-13.929,-13.509,-13.219,-13.039,-12.782,-12.424,-12.152,-12.064,-12.036,-11.920,-11.687,-11.257,-10.375,-8.842,
--6.802,-4.635,-2.567,-.475,1.904,4.638,7.494,10.128,12.361,14.272,16.023,17.649,19.057,20.237,21.336,22.465,
-23.520,24.287,24.720,25.008,25.340,25.676,25.870,26.020,26.548,27.738,29.221,30.218,30.445,30.534,31.246,32.428,
-33.203,33.189,33.013,33.362,33.992,34.152,33.713,33.316,33.469,34.001,34.525,34.975,35.471,35.974,36.355,36.610,
-36.796,36.901,36.946,37.058,37.276,37.444,37.485,37.587,37.895,38.193,38.184,37.965,37.933,38.291,38.963,39.938,
-41.267,42.664,43.513,43.561,43.313,43.472,44.143,44.859,45.255,45.405,45.518,45.652,45.824,46.156,46.716,47.312,
-47.617,47.476,47.008,46.375,45.588,44.600,43.528,42.659,42.174,41.942,41.718,41.529,41.725,42.556,43.789,44.885,
-45.506,45.757,45.936,46.227,46.677,47.337,48.280,49.522,51.040,52.844,54.925,57.095,58.995,60.386,61.367,62.241,
-63.176,64.108,64.943,65.715,66.447,66.996,67.199,67.157,67.204,67.546,68.022,68.323,68.354,68.297,68.346,68.510,
-68.685,68.842,69.062,69.405,69.818,70.194,70.492,70.748,70.995,71.224,71.451,71.750,72.174,72.684,73.207,73.726,
-74.238,74.656,74.868,74.874,74.775,74.640,74.494,74.425,74.530,74.691,74.605,74.182,73.796,73.904,74.470,75.033,
-75.442,76.290,78.335,81.438,84.229,85.013,83.077,79.178,74.844,71.299,68.997,67.870,67.704,68.243,69.214,70.414,
-71.729,72.950,73.697,73.648,72.816,71.529,70.198,69.178,68.732,68.936,69.578,70.256,70.623,70.546,70.124,69.649,
-69.428,69.505,69.590,69.386,68.921,68.431,68.043,67.762,67.709,68.065,68.742,69.342,69.513,69.174,68.361,67.083,
-65.470,63.917,62.920,62.774,63.346,64.023,63.997,62.949,61.454,60.352,59.668,58.628,56.951,55.601,55.727,57.187,
-58.690,59.269,59.042,58.553,58.015,57.415,56.858,56.435,56.006,55.413,54.728,54.106,53.530,52.923,52.338,51.864,
-51.459,51.056,50.722,50.521,50.330,49.977,49.491,49.029,48.623,48.184,47.697,47.230,46.766,46.197,45.503,44.802,
-44.179,43.579,42.935,42.291,41.756,41.376,41.096,40.827,40.526,40.215,39.928,39.659,39.404,39.198,39.063,38.913,
-38.647,38.301,37.983,37.672,37.248,36.761,36.410,36.167,35.722,34.982,34.356,34.206,34.258,33.968,33.358,32.992,
-33.087,33.163,32.744,31.983,31.301,30.738,30.053,29.253,28.605,28.203,27.854,27.435,27.062,26.835,26.661,26.424,
-26.149,25.895,25.617,25.241,24.807,24.422,24.127,23.871,23.589,23.254,22.877,22.504,22.190,21.945,21.717,21.443,
-21.117,20.844,20.797,21.055,21.440,21.594,21.311,20.785,20.418,20.389,20.513,20.502,20.273,19.927,19.566,19.216,
-18.884,18.588,18.340,18.126,17.923,17.708,17.480,17.288,17.195,17.188,17.167,17.051,16.860,16.674,16.548,16.511,
-16.576,16.693,16.730,16.582,16.291,15.979,15.671,15.307,14.935,14.754,14.831,14.889,14.564,13.915,13.474,13.646,
-14.165,14.337,13.816,12.964,12.390,12.299,12.413,12.407,12.197,11.845,11.396,10.894,10.443,10.127,9.920,9.747,
-9.589,9.475,9.426,9.444,9.515,9.574,9.523,9.354,9.202,9.195,9.294,9.336,9.235,9.058,8.916,8.858,
-8.863,8.878,8.863,8.828,8.815,8.804,8.690,8.454,8.276,8.324,8.438,8.228,7.562,6.778,6.299,6.156,
-6.065,5.843,5.562,5.320,5.079,4.782,4.472,4.214,3.994,3.764,3.526,3.310,3.105,2.887,2.655,2.416,
-2.170,1.942,1.789,1.728,1.722,1.731,1.749,1.764,1.729,1.628,1.500,1.367,1.197,.975,.738,.515,
-.341,.383,.898,1.881,2.843,3.152,2.639,1.709,.833,.122,-.542,-1.136,-1.489,-1.561,-1.525,-1.558,
--1.672,-1.802,-1.955,-2.198,-2.544,-2.926,-3.277,-3.600,-3.941,-4.309,-4.664,-4.978,-5.280,-5.617,-5.965,-6.244,
--6.437,-6.628,-6.906,-7.246,-7.549,-7.764,-7.930,-8.100,-8.286,-8.481,-8.684,-8.899,-9.116,-9.325,-9.523,-9.711,
--9.888,-10.050,-10.195,-10.322,-10.441,-10.566,-10.705,-10.848,-10.990,-11.147,-11.332,-11.526,-11.678,-11.760,-11.791,-11.833,
--11.929,-12.072,-12.205,-12.289,-12.344,-12.424,-12.541,-12.651,-12.720,-12.760,-12.795,-12.832,-12.868,-12.922,-13.008,-13.117,
--13.233,-13.354,-13.461,-13.518,-13.518,-13.499,-13.491,-13.475,-13.436,-13.412,-13.439,-13.479,-13.473,-13.430,-13.401,-13.394,
--13.381,-13.370,-13.392,-13.417,-13.379,-13.272,-13.163,-13.087,-13.014,-12.931,-12.873,-12.838,-12.758,-12.598,-12.412,-12.264,
--12.140,-11.999,-11.845,-11.705,-11.576,-11.445,-11.324,-11.219,-11.117,-11.015,-10.945,-10.907,-10.844,-10.727,-10.612,-10.553,
--10.525,-10.478,-10.426,-10.409,-10.405,-10.362,-10.292,-10.253,-10.256,-10.267,-10.283,-10.334,-10.405,-10.446,-10.463,-10.518,
--10.627,-10.725,-10.775,-10.826,-10.935,-11.087,-11.228,-11.338,-11.428,-11.513,-11.622,-11.807,-12.092,-12.419,-12.686,-12.838,
--12.911,-12.974,-13.059,-13.133,-13.151,-13.122,-13.097,-13.106,-13.122,-13.114,-13.101,-13.113,-13.129,-13.103,-13.039,-12.990,
--12.986,-12.998,-13.000,-12.997,-13.003,-13.014,-13.025,-13.037,-13.041,-13.026,-13.008,-13.005,-12.995,-12.946,-12.870,-12.814,
--12.772,-12.690,-12.565,-12.460,-12.403,-12.342,-12.219,-12.054,-11.894,-11.745,-11.595,-11.442,-11.273,-11.054,-10.785,-10.523,
--10.300,-10.074,-9.811,-9.557,-9.356,-9.154,-8.874,-8.546,-8.252,-7.977,-7.637,-7.236,-6.877,-6.583,-6.250,-5.817,
--5.373,-5.015,-4.694,-4.304,-3.837,-3.357,-2.881,-2.397,-1.950,-1.576,-1.197,-.730,-.261,.031,.129,.104,
--.200,-1.075,-2.300,-2.881,-1.858,.678,3.709,6.373,8.543,10.348,11.754,12.954,14.608,17.050,19.450,20.467,
-19.770,18.302,16.913,15.408,13.362,11.292,10.316,10.788,11.924,12.825,13.355,13.875,14.606,15.581,16.911,18.671,
-20.568,22.037,22.735,22.833,22.784,22.891,23.139,23.366,23.560,23.923,24.581,25.296,25.617,25.361,24.825,24.422,
-24.246,24.070,23.692,23.107,22.424,21.745,21.143,20.631,20.125,19.533,18.898,18.357,17.947,17.515,16.844,15.831,
-14.548,13.207,12.079,11.335,10.933,10.678,10.433,10.205,10.018,9.790,9.402,8.824,8.117,7.315,6.403,5.404,
-4.420,3.544,2.774,2.043,1.316,.618,-.035,-.675,-1.339,-2.015,-2.680,-3.364,-4.134,-4.998,-5.880,-6.708,
--7.487,-8.260,-9.027,-9.755,-10.443,-11.134,-11.873,-12.669,-13.513,-14.366,-15.153,-15.810,-16.340,-16.800,-17.237,-17.653,
--18.042,-18.401,-18.711,-18.932,-19.064,-19.159,-19.259,-19.356,-19.439,-19.553,-19.740,-19.948,-20.083,-20.169,-20.404,-20.961,
--21.769,-22.534,-23.016,-23.216,-23.277,-23.281,-23.207,-23.067,-22.955,-22.943,-22.994,-23.034,-23.055,-23.103,-23.181,-23.227,
--23.170,-22.999,-22.782,-22.637,-22.621,-22.642,-22.524,-22.188,-21.737,-21.282,-20.768,-20.066,-19.194,-18.330,-17.599,-16.931,
--16.170,-15.250,-14.243,-13.293,-12.539,-12.039,-11.715,-11.415,-11.072,-10.744,-10.491,-10.252,-9.917,-9.463,-8.955,-8.445,
--7.931,-7.415,-6.941,-6.569,-6.313,-6.120,-5.898,-5.606,-5.317,-5.148,-5.119,-5.151,-5.270,-5.714,-6.713,-8.149,
--9.543,-10.438,-10.755,-10.745,-10.685,-10.666,-10.650,-10.622,-10.633,-10.721,-10.816,-10.774,-10.515,-10.107,-9.714,-9.435,
--9.222,-8.964,-8.624,-8.284,-8.059,-7.968,-7.923,-7.824,-7.652,-7.460,-7.287,-7.121,-6.940,-6.738,-6.508,-6.231,
--5.914,-5.593,-5.296,-5.013,-4.740,-4.499,-4.290,-4.054,-3.727,-3.317,-2.878,-2.432,-1.954,-1.439,-.908,-.378,
-.139,.624,1.071,1.531,2.057,2.636,3.207,3.752,4.300,4.853,5.382,5.892,6.422,6.968,7.470,7.904,
-8.312,8.718,9.083,9.395,9.709,10.057,10.378,10.626,10.850,11.123,11.430,11.738,12.114,12.656,13.317,13.916,
-14.334,14.614,14.834,14.998,15.076,15.090,15.088,15.090,15.100,15.136,15.196,15.236,15.221,15.172,15.129,15.085,
-15.017,14.943,14.906,14.902,14.882,14.828,14.765,14.719,14.687,14.673,14.705,14.773,14.816,14.780,14.695,14.632,
-14.626,14.659,14.729,14.857,15.010,15.099,15.075,15.008,14.996,15.044,15.087,15.112,15.169,15.252,15.288,15.253,
-15.207,15.160,15.031,14.803,14.591,14.441,14.170,13.631,13.059,12.621,12.385,12.477,12.438,11.895,11.069,10.479,
-10.289,10.214,10.004,9.752,9.633,9.602,9.501,9.312,9.140,9.027,8.939,8.877,8.881,8.917,8.901,8.819,
-8.740,8.700,8.661,8.604,8.576,8.612,8.672,8.700,8.701,8.708,8.736,8.788,8.868,8.970,9.069,9.162,
-9.285,9.452,9.627,9.789,9.977,10.224,10.473,10.638,10.751,10.967,11.418,12.109,12.946,13.793,14.458,14.718,
-14.469,13.866,13.234,12.809,12.582,12.402,12.160,11.803,11.247,10.385,9.281,8.250,7.629,7.434,7.345,7.059,
-6.593,6.171,5.896,5.649,5.271,4.738,4.117,3.453,2.755,2.032,1.304,.589,-.081,-.672,-1.190,-1.683,
--2.178,-2.668,-3.160,-3.683,-4.208,-4.656,-5.024,-5.429,-5.941,-6.423,-6.672,-6.724,-6.903,-7.529,-8.589,-9.760,
--10.729,-11.466,-12.135,-12.747,-12.986,-12.521,-11.494,-10.543,-10.215,-10.481,-10.909,-11.210,-11.401,-11.524,-11.499,-11.380,
--11.532,-12.349,-13.769,-15.130,-15.537,-14.527,-12.604,-11.104,-11.247,-13.051,-15.256,-16.451,-16.272,-15.489,-15.074,-15.377,
--16.058,-16.549,-16.488,-15.895,-15.090,-14.460,-14.298,-14.780,-15.945,-17.577,-19.204,-20.396,-21.109,-21.626,-22.197,-22.850,
--23.508,-24.143,-24.755,-25.331,-25.896,-26.521,-27.242,-28.036,-28.890,-29.821,-30.797,-31.739,-32.603,-33.379,-34.006,-34.405,
--34.626,-34.851,-35.181,-35.529,-35.773,-35.916,-36.020,-36.077,-36.063,-36.038,-36.121,-36.363,-36.722,-37.120,-37.524,-37.973,
--38.492,-38.858,-38.545,-37.216,-35.398,-34.395,-35.172,-37.343,-39.470,-40.366,-39.945,-38.882,-37.790,-36.882,-36.195,-35.809,
--35.777,-35.983,-36.213,-36.367,-36.503,-36.627,-36.533,-36.078,-35.589,-35.698,-36.575,-37.527,-37.670,-36.952,-36.205,-36.179,
--36.777,-37.351,-37.508,-37.416,-37.444,-37.716,-38.022,-38.109,-38.009,-38.063,-38.550,-39.317,-39.922,-40.154,-40.254,-40.580,
--41.197,-41.871,-42.337,-42.469,-42.317,-42.097,-42.063,-42.300,-42.712,-43.254,-44.006,-44.941,-45.823,-46.476,-47.027,-47.665,
--48.334,-48.870,-49.356,-50.042,-50.950,-51.816,-52.471,-53.033,-53.667,-54.368,-55.056,-55.730,-56.394,-56.987,-57.469,-57.890,
--58.293,-58.665,-59.027,-59.467,-59.984,-60.432,-60.721,-61.002,-61.509,-62.294,-63.195,-64.048,-64.823,-65.574,-66.320,-66.997,
--67.487,-67.734,-67.836,-67.979,-68.258,-68.630,-69.055,-69.594,-70.314,-71.187,-72.141,-73.136,-74.140,-75.094,-75.961,-76.740,
--77.401,-77.880,-78.195,-78.477,-78.816,-79.181,-79.533,-79.909,-80.309,-80.632,-80.841,-81.060,-81.387,-81.716,-81.915,-82.062,
--82.307,-82.593,-82.744,-82.780,-82.883,-83.049,-83.046,-82.766,-82.381,-82.058,-81.746,-81.357,-80.972,-80.704,-80.511,-80.294,
--80.071,-79.903,-79.748,-79.532,-79.284,-79.080,-78.911,-78.719,-78.497,-78.224,-77.804,-77.199,-76.552,-76.035,-75.626,-75.181,
--74.669,-74.175,-73.705,-73.170,-72.554,-71.933,-71.338,-70.731,-70.091,-69.363,-68.406,-67.187,-66.026,-65.362,-65.235,-65.244,
--65.071,-64.739,-64.247,-63.339,-61.954,-60.612,-59.902,-59.686,-59.249,-58.221,-56.951,-55.873,-54.941,-53.922,-52.871,-51.958,
--51.040,-49.804,-48.280,-46.868,-45.818,-44.983,-44.161,-43.406,-42.806,-42.165,-41.133,-39.612,-37.870,-36.252,-34.866,-33.574,
--32.199,-30.744,-29.425,-28.452,-27.764,-27.065,-26.157,-25.158,-24.286,-23.532,-22.698,-21.681,-20.554,-19.382,-18.151,-16.929,
--15.887,-15.085,-14.370,-13.616,-12.918,-12.435,-12.130,-11.851,-11.593,-11.510,-11.677,-11.967,-12.170,-12.098,-11.587,-10.568,
--9.194,-7.773,-6.521,-5.400,-4.210,-2.739,-.834,1.535,4.191,6.830,9.261,11.503,13.608,15.506,17.112,18.496,
-19.817,21.101,22.213,23.060,23.712,24.273,24.719,24.986,25.229,25.847,27.076,28.570,29.638,30.035,30.325,31.162,
-32.375,33.168,33.250,33.274,33.879,34.752,35.082,34.690,34.185,34.075,34.272,34.567,35.051,35.809,36.576,37.032,
-37.222,37.407,37.683,37.984,38.316,38.705,39.049,39.273,39.531,39.950,40.289,40.174,39.651,39.183,39.088,39.334,
-39.890,40.844,41.972,42.619,42.405,41.835,41.800,42.564,43.575,44.262,44.618,44.924,45.251,45.506,45.755,46.182,
-46.741,47.084,46.894,46.147,44.995,43.541,41.861,40.205,38.998,38.537,38.730,39.221,39.753,40.351,41.142,42.101,
-43.079,44.001,44.921,45.862,46.731,47.474,48.240,49.272,50.663,52.309,54.095,55.988,57.902,59.583,60.785,61.530,
-62.092,62.716,63.452,64.263,65.140,66.014,66.682,66.984,67.029,67.116,67.394,67.725,67.911,67.950,67.981,68.083,
-68.216,68.355,68.573,68.958,69.487,70.016,70.404,70.616,70.734,70.853,71.008,71.196,71.446,71.807,72.286,72.834,
-73.404,73.953,74.413,74.705,74.806,74.750,74.585,74.388,74.297,74.403,74.570,74.504,74.131,73.771,73.778,74.075,
-74.270,74.344,74.996,77.041,80.387,83.729,85.391,84.546,81.713,78.205,75.228,73.390,72.718,72.870,73.383,73.977,
-74.713,75.749,76.907,77.650,77.529,76.545,74.995,73.170,71.348,69.912,69.198,69.203,69.582,69.953,70.133,70.156,
-70.181,70.380,70.752,71.055,71.024,70.644,70.104,69.566,69.107,68.840,68.883,69.178,69.505,69.664,69.526,68.894,
-67.551,65.549,63.365,61.739,61.308,62.183,63.638,64.435,63.893,62.625,61.741,61.308,60.203,57.794,55.163,54.066,
-54.990,56.827,58.286,58.979,59.138,58.985,58.669,58.374,58.113,57.662,56.889,55.966,55.083,54.200,53.254,52.380,
-51.722,51.205,50.726,50.401,50.372,50.495,50.476,50.221,49.851,49.422,48.891,48.316,47.847,47.475,47.007,46.333,
-45.582,44.921,44.351,43.770,43.146,42.549,42.047,41.654,41.349,41.101,40.870,40.601,40.269,39.929,39.694,39.581,
-39.436,39.113,38.692,38.370,38.128,37.746,37.197,36.759,36.569,36.344,35.801,35.146,34.788,34.693,34.463,34.005,
-33.665,33.596,33.455,32.950,32.321,31.921,31.616,30.997,30.048,29.200,28.721,28.437,28.099,27.729,27.466,27.292,
-27.092,26.847,26.601,26.322,25.935,25.462,25.012,24.649,24.335,24.003,23.629,23.232,22.856,22.560,22.373,22.245,
-22.055,21.733,21.396,21.325,21.695,22.298,22.634,22.358,21.627,20.919,20.563,20.506,20.511,20.429,20.238,19.956,
-19.612,19.259,18.943,18.662,18.402,18.172,17.972,17.762,17.513,17.271,17.107,17.031,16.978,16.885,16.744,16.588,
-16.463,16.401,16.386,16.351,16.221,15.971,15.632,15.258,14.924,14.740,14.781,14.965,15.027,14.747,14.211,13.807,
-13.833,14.136,14.232,13.818,13.099,12.538,12.358,12.385,12.332,12.096,11.714,11.212,10.614,10.067,9.790,9.855,
-10.062,10.097,9.832,9.438,9.193,9.186,9.241,9.153,8.948,8.826,8.887,9.008,9.017,8.881,8.694,8.551,
-8.499,8.540,8.600,8.571,8.470,8.438,8.508,8.476,8.194,7.879,7.888,8.167,8.212,7.689,6.861,6.242,
-5.996,5.888,5.705,5.464,5.231,4.976,4.668,4.349,4.057,3.773,3.492,3.259,3.079,2.889,2.651,2.398,
-2.155,1.892,1.612,1.398,1.303,1.289,1.296,1.312,1.331,1.307,1.217,1.101,.975,.800,.569,.347,
-.167,.016,.026,.476,1.399,2.280,2.453,1.819,.944,.361,.022,-.429,-1.060,-1.584,-1.788,-1.786,
--1.799,-1.894,-2.019,-2.163,-2.380,-2.689,-3.046,-3.398,-3.737,-4.082,-4.433,-4.767,-5.063,-5.344,-5.647,-5.968,
--6.259,-6.496,-6.728,-7.019,-7.361,-7.676,-7.912,-8.087,-8.252,-8.429,-8.614,-8.790,-8.955,-9.117,-9.291,-9.483,
--9.681,-9.868,-10.036,-10.178,-10.288,-10.376,-10.466,-10.575,-10.697,-10.826,-10.985,-11.195,-11.438,-11.650,-11.779,-11.832,
--11.860,-11.919,-12.013,-12.094,-12.127,-12.140,-12.198,-12.314,-12.427,-12.484,-12.500,-12.524,-12.566,-12.610,-12.659,-12.732,
--12.831,-12.945,-13.065,-13.181,-13.261,-13.288,-13.286,-13.282,-13.268,-13.235,-13.212,-13.225,-13.243,-13.215,-13.157,-13.119,
--13.105,-13.076,-13.037,-13.031,-13.053,-13.039,-12.958,-12.853,-12.767,-12.697,-12.634,-12.592,-12.553,-12.458,-12.288,-12.103,
--11.952,-11.813,-11.642,-11.454,-11.289,-11.156,-11.040,-10.943,-10.865,-10.785,-10.697,-10.635,-10.606,-10.557,-10.448,-10.323,
--10.247,-10.213,-10.171,-10.119,-10.095,-10.093,-10.071,-10.021,-9.983,-9.974,-9.979,-10.007,-10.080,-10.177,-10.237,-10.258,
--10.302,-10.403,-10.513,-10.578,-10.622,-10.700,-10.829,-10.974,-11.102,-11.205,-11.298,-11.420,-11.621,-11.912,-12.229,-12.480,
--12.617,-12.677,-12.736,-12.825,-12.909,-12.942,-12.931,-12.932,-12.967,-12.998,-12.990,-12.974,-12.991,-13.021,-13.013,-12.961,
--12.916,-12.907,-12.914,-12.911,-12.892,-12.860,-12.830,-12.830,-12.871,-12.911,-12.903,-12.858,-12.828,-12.814,-12.777,-12.715,
--12.666,-12.627,-12.551,-12.439,-12.349,-12.299,-12.225,-12.081,-11.910,-11.763,-11.628,-11.488,-11.359,-11.231,-11.037,-10.758,
--10.479,-10.272,-10.082,-9.826,-9.542,-9.315,-9.119,-8.854,-8.521,-8.214,-7.943,-7.615,-7.215,-6.846,-6.559,-6.256,
--5.856,-5.429,-5.063,-4.725,-4.340,-3.926,-3.521,-3.064,-2.508,-1.962,-1.564,-1.236,-.795,-.272,.097,.226,
-.227,.031,-.689,-1.896,-2.731,-2.133,.095,3.159,6.169,8.753,10.785,12.137,13.078,14.409,16.559,18.718,
-19.530,18.691,17.246,16.165,15.261,13.918,12.360,11.520,11.797,12.607,13.249,13.677,14.227,15.010,15.941,17.118,
-18.742,20.678,22.371,23.310,23.468,23.257,23.118,23.203,23.416,23.687,24.133,24.860,25.671,26.124,25.972,25.432,
-24.932,24.662,24.472,24.135,23.566,22.824,22.044,21.387,20.936,20.591,20.150,19.540,18.890,18.335,17.816,17.122,
-16.105,14.830,13.547,12.527,11.882,11.497,11.170,10.827,10.564,10.449,10.355,10.064,9.506,8.805,8.081,7.296,
-6.367,5.339,4.375,3.563,2.833,2.080,1.301,.568,-.105,-.772,-1.471,-2.194,-2.936,-3.719,-4.533,-5.330,
--6.093,-6.869,-7.690,-8.509,-9.271,-9.996,-10.746,-11.530,-12.303,-13.048,-13.787,-14.513,-15.174,-15.735,-16.213,-16.640,
--17.036,-17.425,-17.820,-18.185,-18.449,-18.590,-18.674,-18.769,-18.874,-18.969,-19.094,-19.297,-19.528,-19.682,-19.793,-20.102,
--20.835,-21.906,-22.928,-23.539,-23.679,-23.534,-23.293,-23.040,-22.819,-22.688,-22.645,-22.608,-22.513,-22.400,-22.341,-22.333,
--22.306,-22.213,-22.071,-21.920,-21.787,-21.686,-21.595,-21.462,-21.267,-21.042,-20.773,-20.316,-19.519,-18.445,-17.371,-16.528,
--15.885,-15.247,-14.490,-13.673,-12.943,-12.399,-12.036,-11.758,-11.469,-11.153,-10.867,-10.627,-10.347,-9.928,-9.400,-8.903,
--8.533,-8.247,-7.928,-7.518,-7.069,-6.676,-6.385,-6.153,-5.917,-5.687,-5.530,-5.486,-5.535,-5.701,-6.132,-6.988,
--8.227,-9.539,-10.560,-11.115,-11.279,-11.227,-11.086,-10.926,-10.806,-10.784,-10.858,-10.937,-10.898,-10.679,-10.321,-9.919,
--9.552,-9.241,-8.950,-8.649,-8.362,-8.156,-8.053,-7.987,-7.885,-7.751,-7.636,-7.537,-7.391,-7.171,-6.922,-6.671,
--6.391,-6.061,-5.728,-5.439,-5.182,-4.926,-4.688,-4.479,-4.243,-3.903,-3.473,-3.039,-2.645,-2.256,-1.820,-1.321,
--.763,-.177,.382,.878,1.351,1.870,2.439,3.016,3.589,4.185,4.791,5.357,5.889,6.440,7.010,7.530,
-7.968,8.380,8.799,9.183,9.505,9.820,10.165,10.477,10.697,10.884,11.135,11.449,11.777,12.156,12.664,13.253,
-13.769,14.139,14.430,14.689,14.854,14.870,14.809,14.779,14.798,14.815,14.818,14.831,14.842,14.813,14.744,14.678,
-14.634,14.597,14.570,14.570,14.586,14.573,14.521,14.472,14.461,14.479,14.511,14.569,14.649,14.698,14.667,14.588,
-14.540,14.554,14.605,14.680,14.799,14.930,14.978,14.901,14.788,14.761,14.814,14.853,14.859,14.911,15.024,15.100,
-15.068,14.971,14.848,14.648,14.353,14.080,13.896,13.645,13.163,12.621,12.247,11.893,11.759,11.555,11.066,10.492,
-10.178,10.139,10.082,9.853,9.602,9.494,9.466,9.379,9.235,9.119,9.048,8.993,8.982,9.049,9.132,9.126,
-9.037,8.961,8.938,8.919,8.878,8.865,8.911,8.975,9.009,9.022,9.041,9.076,9.136,9.245,9.395,9.540,
-9.667,9.818,9.998,10.134,10.182,10.232,10.405,10.675,10.898,11.036,11.255,11.749,12.541,13.481,14.382,15.064,
-15.340,15.101,14.476,13.805,13.363,13.149,12.964,12.668,12.257,11.703,10.891,9.814,8.752,8.085,7.894,7.867,
-7.655,7.229,6.808,6.522,6.274,5.909,5.399,4.799,4.144,3.440,2.717,2.010,1.335,.697,.109,-.426,
--.936,-1.445,-1.948,-2.443,-2.943,-3.439,-3.898,-4.330,-4.804,-5.339,-5.830,-6.159,-6.380,-6.726,-7.395,-8.357,
--9.380,-10.244,-10.917,-11.490,-11.923,-11.934,-11.290,-10.223,-9.391,-9.292,-9.800,-10.418,-10.867,-11.259,-11.736,-12.217,
--12.568,-12.856,-13.289,-13.972,-14.734,-15.113,-14.600,-13.158,-11.582,-11.057,-12.070,-13.849,-15.097,-15.247,-14.811,-14.604,
--14.920,-15.482,-15.893,-15.915,-15.503,-14.847,-14.385,-14.589,-15.597,-17.065,-18.433,-19.365,-19.945,-20.481,-21.151,-21.882,
--22.539,-23.134,-23.771,-24.455,-25.073,-25.585,-26.145,-26.965,-28.092,-29.350,-30.468,-31.301,-31.932,-32.543,-33.186,-33.714,
--34.002,-34.151,-34.376,-34.734,-35.093,-35.337,-35.481,-35.568,-35.591,-35.558,-35.552,-35.647,-35.849,-36.134,-36.479,-36.879,
--37.383,-38.026,-38.540,-38.254,-36.704,-34.506,-33.269,-34.201,-36.819,-39.309,-40.172,-39.361,-37.889,-36.691,-36.021,-35.686,
--35.520,-35.543,-35.781,-36.099,-36.272,-36.188,-35.881,-35.401,-34.829,-34.478,-34.810,-35.894,-37.061,-37.440,-36.887,-36.137,
--35.950,-36.345,-36.785,-36.902,-36.812,-36.831,-37.078,-37.394,-37.549,-37.511,-37.518,-37.840,-38.457,-39.055,-39.402,-39.618,
--39.990,-40.615,-41.293,-41.753,-41.883,-41.781,-41.652,-41.626,-41.682,-41.790,-42.090,-42.791,-43.841,-44.882,-45.635,-46.172,
--46.713,-47.298,-47.855,-48.450,-49.224,-50.128,-50.950,-51.603,-52.206,-52.865,-53.554,-54.232,-54.916,-55.578,-56.130,-56.563,
--56.966,-57.379,-57.749,-58.095,-58.536,-59.091,-59.604,-59.983,-60.381,-61.006,-61.834,-62.646,-63.308,-63.894,-64.541,-65.272,
--65.954,-66.399,-66.544,-66.564,-66.735,-67.168,-67.723,-68.247,-68.776,-69.448,-70.288,-71.208,-72.151,-73.131,-74.133,-75.084,
--75.901,-76.530,-76.952,-77.228,-77.482,-77.800,-78.172,-78.563,-78.972,-79.381,-79.727,-80.003,-80.297,-80.640,-80.934,-81.109,
--81.268,-81.518,-81.760,-81.836,-81.801,-81.839,-81.932,-81.854,-81.524,-81.130,-80.841,-80.607,-80.325,-80.031,-79.784,-79.530,
--79.214,-78.919,-78.760,-78.706,-78.645,-78.533,-78.386,-78.189,-77.922,-77.620,-77.296,-76.879,-76.333,-75.768,-75.315,-74.947,
--74.551,-74.102,-73.653,-73.182,-72.627,-72.014,-71.429,-70.880,-70.319,-69.721,-69.023,-68.067,-66.838,-65.703,-65.125,-65.116,
--65.226,-65.106,-64.770,-64.216,-63.212,-61.758,-60.428,-59.802,-59.674,-59.264,-58.204,-56.911,-55.893,-55.118,-54.259,-53.225,
--52.138,-50.983,-49.658,-48.282,-47.122,-46.203,-45.276,-44.233,-43.305,-42.701,-42.236,-41.488,-40.233,-38.612,-36.911,-35.313,
--33.842,-32.453,-31.143,-30.007,-29.142,-28.489,-27.825,-26.979,-26.010,-25.078,-24.216,-23.312,-22.276,-21.119,-19.882,-18.620,
--17.444,-16.448,-15.560,-14.610,-13.586,-12.696,-12.092,-11.671,-11.239,-10.804,-10.573,-10.699,-11.137,-11.667,-11.957,-11.687,
--10.771,-9.475,-8.200,-7.154,-6.301,-5.536,-4.743,-3.709,-2.216,-.294,1.770,3.774,5.794,7.947,10.123,12.103,
-13.864,15.573,17.293,18.864,20.101,20.989,21.640,22.138,22.539,22.999,23.774,24.975,26.333,27.378,27.968,28.515,
-29.470,30.672,31.539,31.915,32.344,33.281,34.381,34.948,34.859,34.617,34.596,34.765,35.132,35.932,37.110,38.080,
-38.348,38.131,38.015,38.228,38.564,38.868,39.199,39.590,39.999,40.479,41.070,41.514,41.433,40.856,40.270,40.032,
-40.056,40.171,40.422,40.752,40.746,40.122,39.327,39.180,39.924,41.010,41.872,42.541,43.318,44.184,44.863,45.298,
-45.715,46.198,46.461,46.129,45.083,43.440,41.366,39.073,36.961,35.559,35.219,35.861,37.050,38.301,39.348,40.202,
-41.038,42.057,43.359,44.876,46.382,47.643,48.633,49.580,50.758,52.219,53.792,55.328,56.847,58.378,59.776,60.818,
-61.471,61.947,62.470,63.103,63.827,64.641,65.492,66.206,66.638,66.843,67.001,67.190,67.341,67.417,67.494,67.635,
-67.798,67.942,68.135,68.494,69.028,69.616,70.116,70.440,70.581,70.602,70.615,70.706,70.891,71.152,71.496,71.943,
-72.485,73.079,73.664,74.167,74.519,74.688,74.684,74.550,74.370,74.284,74.395,74.616,74.688,74.463,74.087,73.813,
-73.650,73.411,73.192,73.646,75.505,78.731,82.213,84.462,84.625,82.935,80.330,77.822,76.119,75.480,75.683,76.222,
-76.771,77.423,78.361,79.361,79.863,79.557,78.638,77.423,75.984,74.336,72.753,71.586,70.865,70.329,69.864,69.670,
-69.949,70.615,71.350,71.847,71.955,71.714,71.306,70.896,70.500,70.066,69.636,69.340,69.249,69.329,69.497,69.576,
-69.233,68.138,66.261,63.985,61.994,61.040,61.496,62.833,63.765,63.419,62.336,61.772,61.935,61.530,59.433,56.308,
-54.023,53.735,55.079,56.989,58.658,59.703,60.050,59.950,59.760,59.503,58.885,57.822,56.646,55.658,54.799,53.940,
-53.187,52.656,52.204,51.670,51.203,51.052,51.159,51.225,51.082,50.755,50.244,49.527,48.778,48.285,48.075,47.837,
-47.292,46.502,45.723,45.101,44.587,44.069,43.487,42.866,42.297,41.868,41.587,41.377,41.136,40.811,40.448,40.155,
-39.979,39.815,39.529,39.170,38.914,38.753,38.442,37.880,37.333,37.057,36.884,36.478,35.869,35.405,35.182,34.934,
-34.516,34.136,33.941,33.725,33.307,32.891,32.715,32.548,31.943,30.907,29.952,29.435,29.182,28.857,28.424,28.060,
-27.823,27.613,27.375,27.134,26.873,26.525,26.088,25.643,25.248,24.872,24.475,24.067,23.685,23.347,23.075,22.910,
-22.847,22.773,22.549,22.218,22.055,22.299,22.818,23.141,22.898,22.176,21.396,20.883,20.664,20.599,20.566,20.492,
-20.316,20.031,19.697,19.369,19.035,18.679,18.343,18.076,17.852,17.596,17.303,17.052,16.911,16.858,16.813,16.718,
-16.569,16.394,16.225,16.082,15.967,15.837,15.610,15.246,14.837,14.584,14.622,14.878,15.119,15.143,14.902,14.499,
-14.101,13.857,13.780,13.709,13.456,13.026,12.628,12.418,12.311,12.111,11.760,11.328,10.840,10.279,9.801,9.747,
-10.275,11.015,11.297,10.797,9.883,9.209,9.034,9.065,8.941,8.674,8.530,8.597,8.692,8.646,8.493,8.343,
-8.236,8.185,8.218,8.281,8.233,8.066,7.983,8.091,8.164,7.939,7.573,7.496,7.784,7.978,7.655,6.941,
-6.287,5.910,5.694,5.500,5.318,5.134,4.886,4.570,4.259,3.971,3.660,3.338,3.082,2.892,2.675,2.394,
-2.115,1.873,1.611,1.311,1.064,.943,.906,.888,.891,.911,.886,.786,.667,.566,.429,.225,
-.028,-.126,-.294,-.414,-.193,.537,1.428,1.878,1.708,1.311,1.045,.765,.135,-.800,-1.612,-2.004,
--2.071,-2.070,-2.123,-2.220,-2.359,-2.567,-2.847,-3.170,-3.512,-3.860,-4.201,-4.526,-4.836,-5.126,-5.399,-5.675,
--5.972,-6.278,-6.571,-6.856,-7.162,-7.489,-7.793,-8.030,-8.208,-8.367,-8.537,-8.714,-8.875,-9.007,-9.128,-9.268,
--9.442,-9.635,-9.822,-9.992,-10.137,-10.248,-10.331,-10.409,-10.494,-10.580,-10.670,-10.801,-11.014,-11.285,-11.542,-11.714,
--11.790,-11.810,-11.830,-11.877,-11.925,-11.937,-11.931,-11.962,-12.047,-12.130,-12.157,-12.150,-12.167,-12.218,-12.272,-12.322,
--12.393,-12.497,-12.612,-12.727,-12.842,-12.939,-12.998,-13.027,-13.051,-13.067,-13.061,-13.042,-13.033,-13.024,-12.985,-12.929,
--12.890,-12.863,-12.809,-12.729,-12.680,-12.680,-12.678,-12.624,-12.533,-12.442,-12.362,-12.292,-12.237,-12.175,-12.058,-11.880,
--11.700,-11.561,-11.435,-11.276,-11.092,-10.923,-10.778,-10.652,-10.559,-10.502,-10.446,-10.364,-10.285,-10.243,-10.208,-10.127,
--10.014,-9.926,-9.882,-9.845,-9.806,-9.788,-9.794,-9.788,-9.755,-9.724,-9.717,-9.728,-9.756,-9.816,-9.902,-9.974,
--10.021,-10.080,-10.182,-10.303,-10.398,-10.465,-10.539,-10.643,-10.768,-10.890,-10.996,-11.105,-11.254,-11.473,-11.753,-12.039,
--12.265,-12.398,-12.457,-12.492,-12.542,-12.607,-12.661,-12.709,-12.775,-12.854,-12.893,-12.870,-12.830,-12.834,-12.875,-12.897,
--12.883,-12.864,-12.864,-12.874,-12.878,-12.862,-12.814,-12.747,-12.715,-12.745,-12.785,-12.764,-12.692,-12.636,-12.615,-12.586,
--12.533,-12.488,-12.457,-12.402,-12.318,-12.250,-12.195,-12.090,-11.919,-11.749,-11.622,-11.500,-11.356,-11.231,-11.134,-10.979,
--10.712,-10.421,-10.213,-10.046,-9.811,-9.518,-9.267,-9.062,-8.808,-8.481,-8.164,-7.886,-7.569,-7.185,-6.820,-6.525,
--6.227,-5.859,-5.473,-5.126,-4.772,-4.367,-3.969,-3.618,-3.205,-2.633,-2.022,-1.565,-1.224,-.798,-.283,.091,
-.227,.277,.242,-.228,-1.296,-2.349,-2.326,-.698,2.132,5.359,8.367,10.757,12.313,13.278,14.359,15.958,
-17.531,18.140,17.617,16.727,16.103,15.527,14.553,13.404,12.770,12.895,13.374,13.833,14.357,15.114,15.962,16.702,
-17.517,18.803,20.602,22.423,23.654,24.071,23.927,23.673,23.609,23.767,24.063,24.500,25.134,25.861,26.361,26.381,
-26.011,25.570,25.254,24.984,24.579,23.964,23.201,22.435,21.819,21.419,21.120,20.707,20.093,19.410,18.827,18.301,
-17.601,16.560,15.281,14.066,13.168,12.605,12.187,11.734,11.268,10.966,10.912,10.925,10.717,10.189,9.505,8.835,
-8.133,7.244,6.179,5.144,4.288,3.542,2.759,1.934,1.180,.533,-.107,-.836,-1.650,-2.490,-3.319,-4.109,
--4.840,-5.549,-6.321,-7.175,-8.023,-8.785,-9.500,-10.260,-11.065,-11.836,-12.532,-13.192,-13.848,-14.475,-15.044,-15.559,
--16.023,-16.428,-16.792,-17.161,-17.530,-17.825,-17.999,-18.097,-18.192,-18.296,-18.395,-18.524,-18.742,-19.011,-19.224,-19.394,
--19.760,-20.572,-21.770,-22.935,-23.619,-23.696,-23.381,-22.967,-22.617,-22.379,-22.250,-22.183,-22.093,-21.943,-21.792,-21.706,
--21.656,-21.558,-21.396,-21.231,-21.098,-20.971,-20.832,-20.699,-20.582,-20.458,-20.296,-20.033,-19.532,-18.663,-17.491,-16.320,
--15.451,-14.919,-14.520,-14.067,-13.552,-13.065,-12.664,-12.335,-12.040,-11.747,-11.443,-11.144,-10.857,-10.547,-10.152,-9.681,
--9.243,-8.945,-8.760,-8.526,-8.108,-7.539,-6.991,-6.620,-6.428,-6.299,-6.123,-5.901,-5.729,-5.731,-6.015,-6.652,
--7.633,-8.824,-9.982,-10.865,-11.364,-11.528,-11.476,-11.309,-11.101,-10.925,-10.837,-10.825,-10.818,-10.752,-10.605,-10.376,
--10.062,-9.691,-9.331,-9.032,-8.774,-8.526,-8.310,-8.162,-8.058,-7.946,-7.831,-7.757,-7.691,-7.536,-7.265,-6.961,
--6.691,-6.423,-6.113,-5.799,-5.533,-5.296,-5.033,-4.757,-4.504,-4.235,-3.874,-3.427,-2.992,-2.632,-2.303,-1.927,
--1.457,-.884,-.240,.406,.988,1.508,2.015,2.535,3.065,3.624,4.237,4.861,5.425,5.931,6.448,6.985,
-7.473,7.887,8.292,8.730,9.145,9.489,9.802,10.135,10.448,10.690,10.909,11.186,11.509,11.823,12.152,12.563,
-13.027,13.440,13.779,14.109,14.423,14.597,14.577,14.480,14.454,14.501,14.529,14.511,14.494,14.488,14.444,14.354,
-14.278,14.266,14.302,14.343,14.366,14.360,14.313,14.250,14.223,14.261,14.338,14.418,14.494,14.567,14.601,14.562,
-14.481,14.429,14.437,14.483,14.557,14.677,14.812,14.861,14.770,14.624,14.554,14.574,14.598,14.593,14.625,14.720,
-14.795,14.769,14.662,14.505,14.261,13.927,13.618,13.415,13.190,12.772,12.247,11.914,11.481,11.186,10.858,10.410,
-10.035,9.939,10.023,10.006,9.796,9.562,9.440,9.367,9.254,9.135,9.085,9.082,9.080,9.110,9.206,9.301,
-9.299,9.219,9.166,9.172,9.180,9.162,9.164,9.214,9.276,9.324,9.376,9.441,9.496,9.546,9.645,9.820,
-10.016,10.184,10.345,10.513,10.622,10.628,10.639,10.823,11.175,11.505,11.705,11.931,12.435,13.261,14.199,14.999,
-15.516,15.684,15.477,14.996,14.490,14.175,14.029,13.849,13.499,13.013,12.426,11.661,10.681,9.687,8.999,8.705,
-8.557,8.272,7.830,7.410,7.102,6.814,6.435,5.953,5.399,4.769,4.062,3.334,2.652,2.027,1.433,.862,
-.320,-.202,-.718,-1.226,-1.725,-2.237,-2.794,-3.393,-4.003,-4.584,-5.093,-5.506,-5.853,-6.232,-6.744,-7.436,
--8.268,-9.124,-9.850,-10.347,-10.636,-10.749,-10.582,-9.999,-9.146,-8.514,-8.523,-9.120,-9.911,-10.646,-11.366,-12.131,
--12.828,-13.321,-13.621,-13.835,-14.045,-14.268,-14.387,-14.089,-13.135,-11.843,-11.062,-11.379,-12.439,-13.324,-13.567,-13.511,
--13.671,-14.098,-14.492,-14.656,-14.593,-14.349,-14.063,-14.136,-14.998,-16.575,-18.185,-19.143,-19.416,-19.574,-20.127,-21.050,
--21.970,-22.651,-23.183,-23.742,-24.332,-24.828,-25.216,-25.714,-26.614,-28.001,-29.609,-30.983,-31.849,-32.332,-32.746,-33.216,
--33.584,-33.723,-33.766,-33.940,-34.273,-34.605,-34.820,-34.933,-34.986,-35.000,-35.025,-35.111,-35.229,-35.331,-35.468,-35.755,
--36.231,-36.867,-37.614,-38.196,-37.973,-36.463,-34.213,-32.793,-33.473,-35.903,-38.340,-39.213,-38.347,-36.758,-35.560,-35.143,
--35.184,-35.224,-35.162,-35.222,-35.502,-35.725,-35.524,-34.875,-34.106,-33.575,-33.515,-34.057,-35.117,-36.231,-36.793,-36.629,
--36.162,-35.916,-35.985,-36.112,-36.128,-36.118,-36.239,-36.520,-36.853,-37.082,-37.143,-37.161,-37.366,-37.830,-38.361,-38.749,
--39.038,-39.449,-40.062,-40.694,-41.110,-41.262,-41.288,-41.321,-41.337,-41.225,-41.031,-41.074,-41.687,-42.825,-44.048,-44.957,
--45.530,-45.991,-46.485,-47.032,-47.671,-48.448,-49.290,-50.064,-50.748,-51.420,-52.103,-52.758,-53.395,-54.064,-54.710,-55.221,
--55.609,-56.001,-56.437,-56.829,-57.168,-57.588,-58.156,-58.757,-59.281,-59.800,-60.432,-61.133,-61.763,-62.297,-62.849,-63.507,
--64.219,-64.831,-65.202,-65.325,-65.390,-65.652,-66.183,-66.817,-67.387,-67.931,-68.587,-69.378,-70.222,-71.096,-72.061,-73.116,
--74.136,-74.980,-75.588,-75.985,-76.257,-76.517,-76.840,-77.218,-77.609,-78.004,-78.400,-78.772,-79.111,-79.447,-79.779,-80.044,
--80.228,-80.415,-80.651,-80.828,-80.846,-80.793,-80.817,-80.864,-80.740,-80.411,-80.066,-79.838,-79.656,-79.421,-79.151,-78.875,
--78.544,-78.154,-77.846,-77.748,-77.800,-77.839,-77.783,-77.641,-77.419,-77.120,-76.776,-76.400,-75.954,-75.441,-74.961,-74.583,
--74.249,-73.864,-73.432,-72.989,-72.500,-71.929,-71.338,-70.809,-70.319,-69.803,-69.247,-68.589,-67.663,-66.464,-65.385,-64.895,
--64.983,-65.170,-65.086,-64.734,-64.115,-63.044,-61.571,-60.267,-59.654,-59.501,-59.076,-58.072,-56.894,-55.998,-55.314,-54.494,
--53.407,-52.171,-50.893,-49.645,-48.555,-47.665,-46.750,-45.544,-44.164,-43.078,-42.557,-42.314,-41.775,-40.626,-39.006,-37.269,
--35.662,-34.228,-32.907,-31.689,-30.666,-29.912,-29.324,-28.671,-27.810,-26.807,-25.797,-24.818,-23.810,-22.725,-21.542,-20.265,
--18.980,-17.857,-16.961,-16.116,-15.091,-13.934,-12.951,-12.310,-11.838,-11.270,-10.590,-10.024,-9.793,-9.973,-10.460,-10.956,
--11.073,-10.598,-9.677,-8.629,-7.638,-6.732,-5.941,-5.285,-4.618,-3.727,-2.623,-1.514,-.443,.852,2.574,4.552,
-6.464,8.262,10.158,12.212,14.149,15.625,16.554,17.125,17.612,18.221,19.072,20.197,21.516,22.816,23.871,24.665,
-25.449,26.449,27.529,28.350,28.891,29.565,30.644,31.821,32.601,32.940,33.187,33.533,33.943,34.578,35.736,37.206,
-38.152,38.007,37.201,36.645,36.704,37.064,37.433,37.894,38.558,39.314,40.014,40.599,40.913,40.727,40.107,39.500,
-39.224,39.110,38.832,38.366,37.857,37.264,36.510,35.899,35.963,36.815,37.996,39.077,40.121,41.361,42.679,43.699,
-44.288,44.643,44.906,44.904,44.361,43.178,41.433,39.269,36.935,34.876,33.615,33.478,34.414,36.039,37.832,39.381,
-40.572,41.612,42.813,44.316,45.987,47.573,48.926,50.106,51.297,52.610,53.975,55.231,56.339,57.427,58.601,59.754,
-60.671,61.293,61.771,62.268,62.820,63.427,64.146,64.981,65.780,66.360,66.687,66.853,66.921,66.906,66.881,66.954,
-67.132,67.325,67.516,67.814,68.282,68.818,69.281,69.648,69.965,70.221,70.362,70.421,70.512,70.715,71.015,71.371,
-71.782,72.270,72.839,73.449,74.012,74.422,74.621,74.633,74.527,74.379,74.289,74.373,74.640,74.893,74.865,74.467,
-73.843,73.158,72.482,72.000,72.225,73.733,76.545,79.844,82.444,83.557,83.123,81.590,79.597,77.833,76.831,76.672,
-76.993,77.455,78.074,78.928,79.702,79.871,79.339,78.562,77.936,77.367,76.611,75.727,74.887,73.958,72.680,71.262,
-70.409,70.608,71.567,72.488,72.776,72.413,71.789,71.298,71.049,70.875,70.569,70.106,69.616,69.229,69.008,68.959,
-68.971,68.779,68.111,66.878,65.213,63.462,62.200,61.961,62.605,63.151,62.719,61.636,61.094,61.543,61.929,60.886,
-58.353,55.624,54.076,54.225,55.745,57.817,59.489,60.218,60.224,60.059,59.831,59.191,58.047,56.850,56.012,55.466,
-54.985,54.587,54.340,54.064,53.554,52.951,52.556,52.415,52.314,52.109,51.769,51.204,50.346,49.415,48.813,48.662,
-48.633,48.311,47.608,46.751,45.992,45.411,44.909,44.342,43.671,43.007,42.484,42.120,41.837,41.570,41.290,40.980,
-40.668,40.428,40.269,40.088,39.822,39.556,39.349,39.074,38.601,38.052,37.655,37.374,36.965,36.383,35.867,35.543,
-35.242,34.827,34.437,34.211,34.013,33.676,33.331,33.183,33.072,32.609,31.738,30.852,30.276,29.903,29.465,28.943,
-28.519,28.265,28.078,27.866,27.628,27.365,27.037,26.648,26.257,25.887,25.492,25.044,24.604,24.250,23.987,23.779,
-23.636,23.587,23.567,23.432,23.144,22.890,22.900,23.136,23.281,23.072,22.576,22.065,21.701,21.441,21.204,20.984,
-20.794,20.595,20.348,20.068,19.775,19.436,19.018,18.564,18.165,17.854,17.590,17.330,17.091,16.918,16.817,16.737,
-16.624,16.464,16.270,16.062,15.860,15.690,15.542,15.332,14.994,14.632,14.496,14.708,15.073,15.262,15.154,14.886,
-14.579,14.200,13.731,13.309,13.065,12.937,12.772,12.553,12.365,12.180,11.863,11.387,10.879,10.410,9.945,9.609,
-9.791,10.706,11.870,12.345,11.652,10.302,9.249,8.904,8.895,8.731,8.411,8.250,8.330,8.419,8.345,8.194,
-8.092,8.024,7.957,7.944,7.982,7.930,7.734,7.593,7.681,7.829,7.729,7.418,7.263,7.424,7.595,7.411,
-6.887,6.302,5.829,5.470,5.224,5.097,4.985,4.759,4.439,4.145,3.895,3.602,3.260,2.959,2.715,2.439,
-2.107,1.804,1.570,1.334,1.065,.839,.710,.625,.547,.516,.534,.503,.372,.229,.151,.069,
--.088,-.258,-.392,-.581,-.848,-.913,-.429,.537,1.510,2.106,2.306,2.178,1.619,.570,-.684,-1.674,
--2.179,-2.330,-2.357,-2.373,-2.418,-2.533,-2.735,-2.993,-3.283,-3.609,-3.959,-4.296,-4.602,-4.898,-5.194,-5.472,
--5.727,-5.993,-6.294,-6.619,-6.944,-7.264,-7.575,-7.853,-8.074,-8.242,-8.391,-8.549,-8.722,-8.886,-9.022,-9.137,
--9.263,-9.421,-9.596,-9.767,-9.923,-10.064,-10.186,-10.287,-10.375,-10.449,-10.497,-10.536,-10.624,-10.811,-11.073,-11.332,
--11.517,-11.608,-11.630,-11.630,-11.651,-11.690,-11.712,-11.707,-11.711,-11.750,-11.790,-11.790,-11.770,-11.783,-11.835,-11.889,
--11.938,-12.016,-12.132,-12.253,-12.359,-12.462,-12.564,-12.647,-12.710,-12.773,-12.836,-12.866,-12.852,-12.821,-12.795,-12.766,
--12.728,-12.690,-12.644,-12.563,-12.455,-12.366,-12.328,-12.307,-12.261,-12.187,-12.105,-12.017,-11.922,-11.832,-11.739,-11.608,
--11.432,-11.257,-11.124,-11.010,-10.873,-10.716,-10.564,-10.420,-10.279,-10.169,-10.109,-10.061,-9.978,-9.878,-9.819,-9.800,
--9.761,-9.677,-9.588,-9.535,-9.506,-9.484,-9.476,-9.485,-9.488,-9.470,-9.455,-9.471,-9.506,-9.536,-9.559,-9.597,
--9.660,-9.741,-9.833,-9.942,-10.062,-10.181,-10.288,-10.388,-10.493,-10.606,-10.720,-10.835,-10.973,-11.162,-11.405,-11.668,
--11.911,-12.108,-12.242,-12.304,-12.314,-12.317,-12.352,-12.422,-12.517,-12.629,-12.730,-12.771,-12.738,-12.685,-12.678,-12.716,
--12.755,-12.774,-12.786,-12.800,-12.810,-12.813,-12.802,-12.757,-12.679,-12.617,-12.610,-12.617,-12.570,-12.481,-12.420,-12.406,
--12.389,-12.339,-12.289,-12.257,-12.217,-12.165,-12.123,-12.076,-11.961,-11.781,-11.617,-11.504,-11.383,-11.217,-11.068,-10.975,
--10.852,-10.614,-10.325,-10.107,-9.947,-9.733,-9.447,-9.177,-8.956,-8.713,-8.413,-8.109,-7.830,-7.524,-7.171,-6.829,
--6.527,-6.209,-5.844,-5.490,-5.174,-4.824,-4.389,-3.950,-3.583,-3.202,-2.693,-2.121,-1.644,-1.253,-.800,-.293,
-.067,.195,.261,.334,.113,-.713,-1.848,-2.399,-1.572,.726,3.934,7.264,10.050,11.967,13.175,14.166,
-15.285,16.410,17.208,17.589,17.705,17.591,17.110,16.315,15.578,15.191,15.059,14.992,15.121,15.711,16.641,17.401,
-17.729,18.010,18.871,20.479,22.369,23.867,24.593,24.625,24.352,24.173,24.257,24.533,24.893,25.333,25.850,26.299,
-26.484,26.380,26.146,25.901,25.588,25.091,24.411,23.675,23.020,22.516,22.145,21.796,21.326,20.698,20.038,19.492,
-19.007,18.351,17.357,16.142,15.010,14.168,13.562,12.986,12.341,11.751,11.437,11.446,11.545,11.406,10.919,10.255,
-9.600,8.915,8.031,6.942,5.865,4.973,4.203,3.400,2.561,1.802,1.151,.482,-.309,-1.193,-2.089,-2.950,
--3.746,-4.452,-5.112,-5.844,-6.687,-7.518,-8.192,-8.727,-9.279,-9.966,-10.778,-11.642,-12.475,-13.191,-13.742,-14.180,
--14.620,-15.108,-15.580,-15.977,-16.313,-16.615,-16.854,-16.997,-17.087,-17.197,-17.335,-17.465,-17.605,-17.829,-18.153,-18.489,
--18.804,-19.259,-20.081,-21.255,-22.408,-23.084,-23.136,-22.791,-22.381,-22.072,-21.865,-21.723,-21.616,-21.501,-21.354,-21.221,
--21.145,-21.079,-20.923,-20.662,-20.389,-20.181,-20.034,-19.914,-19.815,-19.706,-19.517,-19.208,-18.793,-18.239,-17.446,-16.414,
--15.382,-14.664,-14.347,-14.236,-14.092,-13.838,-13.517,-13.172,-12.823,-12.496,-12.181,-11.814,-11.373,-10.952,-10.664,-10.475,
--10.230,-9.861,-9.469,-9.171,-8.906,-8.501,-7.899,-7.269,-6.849,-6.713,-6.713,-6.631,-6.390,-6.131,-6.123,-6.564,
--7.457,-8.608,-9.742,-10.626,-11.158,-11.371,-11.391,-11.332,-11.239,-11.114,-10.978,-10.867,-10.777,-10.672,-10.552,-10.446,
--10.337,-10.146,-9.841,-9.502,-9.221,-8.990,-8.745,-8.496,-8.303,-8.170,-8.040,-7.902,-7.797,-7.706,-7.532,-7.236,
--6.907,-6.629,-6.379,-6.101,-5.819,-5.581,-5.354,-5.068,-4.734,-4.413,-4.098,-3.724,-3.283,-2.857,-2.503,-2.186,
--1.829,-1.388,-.846,-.207,.481,1.144,1.731,2.243,2.710,3.181,3.716,4.328,4.943,5.469,5.917,6.371,
-6.854,7.298,7.674,8.053,8.493,8.940,9.320,9.644,9.960,10.261,10.525,10.787,11.095,11.424,11.726,12.025,
-12.377,12.765,13.133,13.489,13.879,14.239,14.414,14.363,14.238,14.200,14.237,14.245,14.201,14.161,14.137,14.072,
-13.961,13.889,13.928,14.052,14.168,14.214,14.183,14.113,14.061,14.080,14.174,14.294,14.387,14.435,14.449,14.427,
-14.360,14.271,14.200,14.173,14.187,14.245,14.358,14.496,14.567,14.514,14.395,14.321,14.328,14.354,14.350,14.343,
-14.366,14.390,14.362,14.268,14.099,13.832,13.501,13.221,13.041,12.830,12.434,11.914,11.602,11.217,10.931,10.577,
-10.127,9.795,9.750,9.871,9.905,9.779,9.623,9.517,9.404,9.247,9.127,9.112,9.152,9.178,9.213,9.299,
-9.386,9.401,9.363,9.352,9.382,9.401,9.396,9.418,9.484,9.557,9.621,9.715,9.841,9.942,10.001,10.094,
-10.287,10.523,10.711,10.843,10.964,11.068,11.121,11.197,11.443,11.866,12.277,12.537,12.786,13.298,14.129,15.022,
-15.666,15.961,15.986,15.827,15.554,15.283,15.131,15.075,14.950,14.627,14.115,13.469,12.684,11.775,10.894,10.227,
-9.789,9.400,8.922,8.409,7.984,7.649,7.298,6.877,6.413,5.912,5.327,4.642,3.927,3.267,2.673,2.116,
-1.580,1.063,.551,.033,-.484,-1.004,-1.585,-2.297,-3.139,-4.001,-4.733,-5.254,-5.625,-5.989,-6.443,-6.976,
--7.556,-8.203,-8.894,-9.451,-9.657,-9.530,-9.310,-9.139,-8.873,-8.389,-7.909,-7.856,-8.392,-9.310,-10.332,-11.330,
--12.226,-12.901,-13.321,-13.596,-13.808,-13.903,-13.818,-13.578,-13.169,-12.501,-11.684,-11.155,-11.259,-11.772,-12.127,-12.137,
--12.184,-12.623,-13.269,-13.658,-13.597,-13.254,-12.895,-12.818,-13.424,-14.942,-16.978,-18.630,-19.301,-19.295,-19.445,-20.215,
--21.351,-22.341,-22.982,-23.415,-23.807,-24.170,-24.467,-24.758,-25.244,-26.178,-27.670,-29.489,-31.129,-32.191,-32.722,-33.051,
--33.349,-33.499,-33.418,-33.297,-33.389,-33.700,-34.034,-34.258,-34.383,-34.446,-34.483,-34.561,-34.702,-34.802,-34.787,-34.793,
--35.044,-35.561,-36.158,-36.683,-37.016,-36.872,-35.960,-34.550,-33.617,-34.055,-35.723,-37.458,-38.067,-37.273,-35.814,-34.743,
--34.567,-34.915,-35.050,-34.720,-34.386,-34.499,-34.817,-34.699,-33.971,-33.162,-32.860,-33.153,-33.776,-34.500,-35.199,-35.715,
--35.927,-35.889,-35.746,-35.580,-35.422,-35.356,-35.469,-35.739,-36.060,-36.346,-36.553,-36.666,-36.762,-36.994,-37.424,-37.904,
--38.258,-38.532,-38.932,-39.526,-40.137,-40.558,-40.780,-40.938,-41.084,-41.091,-40.830,-40.429,-40.308,-40.850,-42.006,-43.303,
--44.286,-44.882,-45.320,-45.796,-46.356,-46.989,-47.692,-48.431,-49.164,-49.898,-50.641,-51.344,-51.964,-52.561,-53.206,-53.835,
--54.322,-54.683,-55.063,-55.515,-55.945,-56.313,-56.727,-57.278,-57.902,-58.494,-59.045,-59.594,-60.128,-60.634,-61.180,-61.841,
--62.578,-63.257,-63.760,-64.059,-64.217,-64.390,-64.742,-65.296,-65.920,-66.507,-67.099,-67.780,-68.528,-69.279,-70.081,-71.037,
--72.126,-73.173,-74.009,-74.594,-74.986,-75.278,-75.567,-75.913,-76.301,-76.687,-77.062,-77.445,-77.828,-78.188,-78.519,-78.818,
--79.072,-79.287,-79.499,-79.703,-79.821,-79.825,-79.809,-79.859,-79.890,-79.758,-79.481,-79.226,-79.066,-78.912,-78.681,-78.399,
--78.090,-77.723,-77.333,-77.074,-77.044,-77.139,-77.180,-77.090,-76.902,-76.655,-76.360,-76.022,-75.620,-75.138,-74.631,-74.214,
--73.913,-73.618,-73.229,-72.771,-72.290,-71.766,-71.193,-70.656,-70.215,-69.803,-69.338,-68.816,-68.185,-67.285,-66.133,-65.132,
--64.730,-64.876,-65.084,-65.001,-64.627,-63.969,-62.881,-61.452,-60.204,-59.567,-59.320,-58.870,-58.004,-57.030,-56.228,-55.482,
--54.541,-53.373,-52.123,-50.921,-49.877,-49.054,-48.303,-47.254,-45.718,-44.050,-42.896,-42.511,-42.461,-42.025,-40.843,-39.136,
--37.396,-35.930,-34.696,-33.507,-32.338,-31.369,-30.708,-30.186,-29.510,-28.574,-27.502,-26.428,-25.350,-24.231,-23.084,-21.902,
--20.644,-19.383,-18.327,-17.548,-16.803,-15.799,-14.596,-13.555,-12.867,-12.338,-11.680,-10.850,-10.025,-9.386,-9.054,-9.090,
--9.393,-9.680,-9.693,-9.411,-8.951,-8.346,-7.567,-6.692,-5.856,-5.056,-4.208,-3.386,-2.772,-2.300,-1.595,-.419,
-1.020,2.384,3.701,5.287,7.220,9.107,10.445,11.105,11.403,11.819,12.671,13.982,15.538,17.084,18.472,19.681,
-20.761,21.785,22.762,23.589,24.158,24.600,25.256,26.297,27.485,28.475,29.239,29.964,30.686,31.342,32.128,33.348,
-34.751,35.479,35.020,33.932,33.271,33.471,34.169,34.991,35.991,37.246,38.482,39.339,39.719,39.674,39.196,38.359,
-37.484,36.847,36.334,35.621,34.638,33.632,32.832,32.328,32.270,32.889,34.182,35.788,37.336,38.748,40.083,41.233,
-41.986,42.302,42.336,42.186,41.786,41.069,40.072,38.849,37.418,35.895,34.598,33.927,34.138,35.241,37.012,39.055,
-40.950,42.486,43.773,45.063,46.467,47.890,49.215,50.465,51.742,53.072,54.354,55.438,56.275,56.992,57.809,58.815,
-59.849,60.666,61.197,61.582,61.965,62.384,62.882,63.580,64.513,65.482,66.204,66.566,66.660,66.614,66.506,66.429,
-66.472,66.630,66.839,67.104,67.491,67.967,68.373,68.632,68.885,69.299,69.826,70.253,70.472,70.583,70.744,71.015,
-71.361,71.741,72.164,72.675,73.286,73.911,74.389,74.609,74.611,74.518,74.411,74.336,74.385,74.628,74.921,74.925,
-74.402,73.459,72.408,71.494,70.884,70.894,71.946,74.150,77.019,79.730,81.635,82.462,82.188,81.016,79.484,78.278,
-77.721,77.598,77.622,77.851,78.413,78.992,79.020,78.398,77.650,77.267,77.196,77.163,77.115,77.028,76.545,75.300,
-73.608,72.401,72.298,72.944,73.430,73.200,72.428,71.649,71.217,71.090,71.000,70.745,70.327,69.848,69.368,68.908,
-68.518,68.220,67.938,67.545,66.950,66.076,64.913,63.732,63.066,63.152,63.466,63.211,62.308,61.541,61.519,61.847,
-61.538,60.055,57.750,55.562,54.496,55.081,56.894,58.726,59.604,59.611,59.441,59.335,58.921,58.030,57.092,56.549,
-56.327,56.141,55.957,55.848,55.675,55.245,54.652,54.156,53.817,53.507,53.171,52.819,52.320,51.502,50.483,49.665,
-49.307,49.256,49.136,48.704,47.984,47.166,46.424,45.778,45.129,44.424,43.757,43.228,42.803,42.403,42.048,41.783,
-41.545,41.254,40.986,40.854,40.775,40.543,40.136,39.736,39.432,39.107,38.685,38.255,37.872,37.432,36.875,36.333,
-35.923,35.559,35.135,34.743,34.504,34.308,33.970,33.559,33.325,33.283,33.129,32.628,31.891,31.160,30.511,29.901,
-29.368,29.013,28.835,28.710,28.531,28.277,27.952,27.560,27.150,26.792,26.480,26.121,25.662,25.185,24.826,24.625,
-24.521,24.460,24.440,24.433,24.337,24.090,23.785,23.584,23.511,23.428,23.239,23.031,22.927,22.868,22.658,22.207,
-21.643,21.149,20.791,20.516,20.264,20.005,19.705,19.322,18.856,18.374,17.959,17.650,17.422,17.230,17.057,16.907,
-16.759,16.578,16.359,16.140,15.944,15.757,15.570,15.395,15.204,14.952,14.714,14.698,14.988,15.339,15.397,15.121,
-14.781,14.538,14.229,13.688,13.077,12.691,12.558,12.465,12.305,12.158,12.021,11.725,11.198,10.610,10.127,9.735,
-9.483,9.707,10.650,11.866,12.384,11.665,10.225,9.084,8.688,8.643,8.434,8.089,7.953,8.093,8.222,8.146,
-7.976,7.868,7.800,7.713,7.665,7.693,7.668,7.494,7.315,7.339,7.493,7.503,7.297,7.104,7.090,7.124,
-6.992,6.664,6.236,5.764,5.306,4.994,4.882,4.816,4.605,4.272,3.975,3.748,3.481,3.141,2.810,2.523,
-2.212,1.861,1.546,1.307,1.086,.859,.679,.554,.412,.250,.165,.175,.144,-.005,-.163,-.226,
--.266,-.393,-.553,-.666,-.837,-1.183,-1.497,-1.327,-.471,.772,1.876,2.457,2.357,1.606,.454,-.688,
--1.519,-2.030,-2.361,-2.573,-2.657,-2.676,-2.754,-2.935,-3.168,-3.424,-3.726,-4.068,-4.397,-4.689,-4.978,-5.280,
--5.559,-5.795,-6.024,-6.297,-6.618,-6.954,-7.279,-7.576,-7.829,-8.031,-8.195,-8.343,-8.497,-8.666,-8.841,-8.999,
--9.129,-9.250,-9.387,-9.539,-9.688,-9.825,-9.959,-10.092,-10.216,-10.318,-10.383,-10.402,-10.404,-10.458,-10.611,-10.834,
--11.057,-11.225,-11.321,-11.351,-11.345,-11.353,-11.397,-11.445,-11.456,-11.447,-11.452,-11.467,-11.459,-11.438,-11.444,-11.482,
--11.521,-11.562,-11.642,-11.767,-11.894,-11.994,-12.086,-12.185,-12.277,-12.351,-12.430,-12.518,-12.572,-12.565,-12.530,-12.513,
--12.516,-12.509,-12.476,-12.417,-12.329,-12.215,-12.103,-12.014,-11.940,-11.866,-11.796,-11.730,-11.646,-11.533,-11.409,-11.291,
--11.156,-10.990,-10.821,-10.684,-10.565,-10.435,-10.298,-10.176,-10.059,-9.928,-9.805,-9.726,-9.670,-9.584,-9.473,-9.400,
--9.388,-9.379,-9.320,-9.236,-9.180,-9.162,-9.155,-9.152,-9.160,-9.172,-9.174,-9.184,-9.231,-9.303,-9.355,-9.362,
--9.360,-9.400,-9.492,-9.600,-9.700,-9.799,-9.917,-10.051,-10.184,-10.308,-10.430,-10.557,-10.702,-10.886,-11.125,-11.394,
--11.642,-11.838,-11.989,-12.101,-12.158,-12.161,-12.158,-12.198,-12.284,-12.386,-12.483,-12.560,-12.591,-12.573,-12.544,-12.545,
--12.571,-12.595,-12.610,-12.632,-12.652,-12.651,-12.632,-12.609,-12.571,-12.506,-12.441,-12.411,-12.391,-12.330,-12.241,-12.191,
--12.194,-12.192,-12.147,-12.088,-12.043,-12.004,-11.965,-11.940,-11.906,-11.807,-11.643,-11.489,-11.383,-11.263,-11.084,-10.908,
--10.793,-10.679,-10.472,-10.203,-9.979,-9.809,-9.603,-9.324,-9.038,-8.794,-8.560,-8.296,-8.019,-7.739,-7.438,-7.117,
--6.813,-6.522,-6.189,-5.812,-5.461,-5.161,-4.827,-4.392,-3.917,-3.493,-3.102,-2.665,-2.189,-1.743,-1.315,-.827,
--.309,.075,.239,.294,.348,.247,-.312,-1.334,-2.256,-2.200,-.603,2.344,5.812,8.905,11.174,12.687,
-13.758,14.712,15.840,17.309,18.928,20.113,20.368,19.853,19.277,19.096,19.016,18.507,17.668,17.254,17.744,18.691,
-19.218,19.051,18.802,19.275,20.675,22.521,24.117,25.004,25.139,24.850,24.596,24.640,24.918,25.231,25.513,25.828,
-26.175,26.438,26.535,26.510,26.406,26.153,25.669,25.013,24.359,23.826,23.405,23.022,22.609,22.112,21.515,20.888,
-20.333,19.837,19.231,18.364,17.301,16.268,15.402,14.622,13.779,12.900,12.214,11.937,12.030,12.189,12.081,11.621,
-10.986,10.358,9.691,8.816,7.724,6.628,5.709,4.918,4.106,3.256,2.458,1.722,.947,.083,-.811,-1.677,
--2.526,-3.341,-4.052,-4.672,-5.353,-6.181,-6.992,-7.512,-7.695,-7.820,-8.256,-9.175,-10.445,-11.719,-12.635,-13.061,
--13.189,-13.371,-13.794,-14.364,-14.884,-15.252,-15.475,-15.575,-15.590,-15.617,-15.754,-15.989,-16.214,-16.389,-16.606,-16.966,
--17.445,-17.965,-18.575,-19.427,-20.533,-21.597,-22.226,-22.307,-22.076,-21.834,-21.661,-21.483,-21.278,-21.101,-20.968,-20.833,
--20.688,-20.575,-20.469,-20.256,-19.887,-19.466,-19.144,-18.976,-18.909,-18.844,-18.659,-18.265,-17.716,-17.180,-16.742,-16.275,
--15.643,-14.957,-14.502,-14.405,-14.491,-14.512,-14.373,-14.106,-13.751,-13.355,-12.982,-12.619,-12.139,-11.507,-10.950,-10.760,
--10.895,-10.951,-10.601,-9.957,-9.383,-9.036,-8.722,-8.219,-7.585,-7.099,-6.945,-7.023,-7.078,-6.970,-6.833,-6.966,
--7.574,-8.585,-9.702,-10.611,-11.143,-11.309,-11.242,-11.117,-11.050,-11.047,-11.043,-11.000,-10.927,-10.824,-10.673,-10.498,
--10.369,-10.287,-10.159,-9.916,-9.618,-9.364,-9.147,-8.898,-8.627,-8.417,-8.280,-8.136,-7.946,-7.764,-7.616,-7.434,
--7.163,-6.858,-6.598,-6.371,-6.126,-5.873,-5.649,-5.421,-5.121,-4.753,-4.384,-4.034,-3.656,-3.232,-2.812,-2.436,
--2.078,-1.693,-1.266,-.784,-.214,.447,1.141,1.780,2.313,2.761,3.204,3.725,4.330,4.923,5.411,5.820,
-6.251,6.726,7.164,7.517,7.854,8.253,8.693,9.097,9.436,9.730,9.993,10.235,10.492,10.793,11.118,11.435,
-11.764,12.131,12.510,12.874,13.258,13.695,14.088,14.272,14.218,14.080,14.005,13.990,13.954,13.891,13.851,13.828,
-13.758,13.641,13.571,13.632,13.795,13.954,14.027,14.012,13.968,13.959,14.021,14.137,14.254,14.317,14.306,14.246,
-14.177,14.118,14.064,14.007,13.954,13.930,13.950,14.012,14.086,14.129,14.117,14.076,14.059,14.090,14.130,14.130,
-14.081,14.018,13.967,13.916,13.817,13.621,13.334,13.046,12.857,12.733,12.511,12.095,11.602,11.472,11.255,11.091,
-10.743,10.211,9.769,9.635,9.721,9.797,9.772,9.712,9.648,9.526,9.352,9.231,9.225,9.273,9.299,9.320,
-9.386,9.467,9.507,9.515,9.542,9.584,9.598,9.596,9.640,9.737,9.828,9.898,10.004,10.170,10.329,10.434,
-10.552,10.766,11.033,11.233,11.336,11.430,11.574,11.740,11.930,12.226,12.650,13.066,13.349,13.615,14.123,14.933,
-15.774,16.318,16.488,16.440,16.317,16.154,15.985,15.895,15.916,15.939,15.796,15.385,14.701,13.816,12.876,12.054,
-11.420,10.869,10.256,9.586,8.997,8.560,8.186,7.765,7.299,6.850,6.398,5.860,5.217,4.540,3.904,3.323,
-2.785,2.284,1.798,1.291,.754,.221,-.322,-.978,-1.860,-2.943,-4.031,-4.900,-5.478,-5.888,-6.302,-6.756,
--7.161,-7.505,-7.921,-8.453,-8.846,-8.779,-8.327,-7.969,-8.003,-8.155,-7.978,-7.509,-7.286,-7.715,-8.683,-9.814,
--10.865,-11.742,-12.379,-12.786,-13.104,-13.426,-13.613,-13.454,-12.947,-12.293,-11.690,-11.278,-11.201,-11.471,-11.788,-11.773,
--11.473,-11.420,-12.016,-13.010,-13.722,-13.690,-13.006,-12.179,-11.888,-12.697,-14.627,-16.922,-18.536,-19.058,-19.064,-19.428,
--20.417,-21.610,-22.536,-23.114,-23.487,-23.737,-23.886,-24.022,-24.280,-24.779,-25.674,-27.106,-28.957,-30.754,-32.024,-32.717,
--33.111,-33.343,-33.285,-32.922,-32.581,-32.607,-32.983,-33.419,-33.731,-33.926,-34.044,-34.101,-34.155,-34.249,-34.303,-34.247,
--34.230,-34.484,-34.963,-35.317,-35.315,-35.100,-34.942,-34.906,-34.915,-35.008,-35.357,-36.001,-36.655,-36.834,-36.240,-35.150,
--34.337,-34.365,-34.910,-35.063,-34.438,-33.671,-33.545,-33.905,-33.905,-33.219,-32.496,-32.478,-33.107,-33.755,-34.060,-34.201,
--34.464,-34.858,-35.182,-35.262,-35.100,-34.870,-34.810,-35.014,-35.365,-35.675,-35.868,-35.985,-36.083,-36.235,-36.538,-36.999,
--37.467,-37.794,-38.050,-38.444,-39.042,-39.671,-40.138,-40.434,-40.656,-40.805,-40.741,-40.382,-39.918,-39.772,-40.270,-41.321,
--42.470,-43.315,-43.841,-44.306,-44.892,-45.575,-46.259,-46.919,-47.589,-48.303,-49.070,-49.851,-50.567,-51.180,-51.755,-52.363,
--52.955,-53.428,-53.793,-54.177,-54.640,-55.113,-55.536,-55.957,-56.444,-56.982,-57.515,-58.024,-58.516,-59.000,-59.523,-60.165,
--60.930,-61.702,-62.335,-62.780,-63.078,-63.313,-63.585,-63.980,-64.494,-65.054,-65.625,-66.256,-66.959,-67.664,-68.336,-69.090,
--70.053,-71.167,-72.215,-73.029,-73.593,-73.984,-74.293,-74.606,-74.979,-75.394,-75.797,-76.175,-76.552,-76.928,-77.273,-77.574,
--77.850,-78.108,-78.344,-78.554,-78.718,-78.808,-78.836,-78.876,-78.955,-78.983,-78.869,-78.666,-78.502,-78.400,-78.264,-78.033,
--77.744,-77.426,-77.080,-76.764,-76.594,-76.601,-76.661,-76.625,-76.459,-76.217,-75.951,-75.681,-75.385,-75.000,-74.495,-73.963,
--73.557,-73.298,-73.042,-72.669,-72.196,-71.680,-71.127,-70.572,-70.112,-69.780,-69.468,-69.077,-68.597,-67.975,-67.074,-65.954,
--65.024,-64.676,-64.812,-64.977,-64.879,-64.525,-63.885,-62.822,-61.457,-60.276,-59.626,-59.292,-58.823,-58.081,-57.250,-56.425,
--55.491,-54.387,-53.232,-52.149,-51.163,-50.306,-49.593,-48.821,-47.626,-45.919,-44.167,-43.029,-42.698,-42.674,-42.207,-40.933,
--39.132,-37.413,-36.146,-35.188,-34.183,-33.060,-32.091,-31.459,-30.949,-30.209,-29.170,-28.028,-26.904,-25.744,-24.525,-23.342,
--22.225,-21.093,-19.962,-19.027,-18.355,-17.682,-16.697,-15.470,-14.369,-13.579,-12.916,-12.134,-11.210,-10.252,-9.333,-8.539,
--8.025,-7.877,-7.982,-8.172,-8.401,-8.645,-8.725,-8.429,-7.767,-6.929,-6.011,-4.989,-3.960,-3.144,-2.561,-1.922,
--1.025,-.053,.715,1.393,2.388,3.817,5.248,6.111,6.294,6.243,6.569,7.589,9.156,10.870,12.443,13.881,
-15.320,16.764,18.030,18.929,19.412,19.613,19.823,20.366,21.362,22.610,23.816,24.895,25.916,26.846,27.600,28.320,
-29.280,30.339,30.866,30.489,29.731,29.545,30.318,31.676,33.204,34.891,36.747,38.397,39.367,39.572,39.234,38.477,
-37.296,35.844,34.434,33.204,32.018,30.777,29.652,28.934,28.799,29.323,30.567,32.473,34.728,36.854,38.466,39.412,
-39.752,39.675,39.400,39.037,38.553,37.919,37.270,36.811,36.586,36.449,36.280,36.167,36.334,36.979,38.185,39.890,
-41.843,43.695,45.226,46.482,47.646,48.800,49.903,50.957,52.067,53.293,54.529,55.573,56.316,56.841,57.379,58.146,
-59.149,60.149,60.870,61.254,61.466,61.672,61.932,62.326,63.020,64.061,65.189,66.008,66.342,66.328,66.193,66.069,
-66.010,66.061,66.237,66.516,66.886,67.333,67.764,68.044,68.187,68.410,68.913,69.624,70.255,70.595,70.687,70.741,
-70.925,71.265,71.677,72.090,72.540,73.106,73.754,74.295,74.564,74.587,74.525,74.475,74.445,74.471,74.599,74.693,
-74.429,73.611,72.431,71.293,70.431,69.869,69.727,70.337,71.925,74.284,76.901,79.293,81.092,81.956,81.753,80.850,
-79.933,79.354,78.882,78.261,77.752,77.792,78.246,78.437,77.965,77.141,76.500,76.226,76.254,76.568,77.041,77.182,
-76.528,75.285,74.234,73.865,73.873,73.630,72.939,72.143,71.628,71.434,71.320,71.074,70.694,70.307,69.970,69.595,
-69.088,68.494,67.929,67.442,67.001,66.566,66.048,65.310,64.400,63.732,63.745,64.343,64.866,64.743,64.009,63.116,
-62.392,61.766,60.842,59.238,57.092,55.336,55.073,56.421,58.222,59.203,59.220,59.005,58.970,58.820,58.302,57.702,
-57.381,57.263,57.084,56.835,56.643,56.450,56.106,55.661,55.274,54.938,54.540,54.111,53.773,53.443,52.853,51.908,
-50.863,50.080,49.709,49.611,49.495,49.129,48.481,47.697,46.901,46.096,45.287,44.582,44.052,43.598,43.113,42.667,
-42.376,42.163,41.874,41.561,41.401,41.339,41.094,40.574,40.036,39.708,39.487,39.166,38.754,38.370,37.988,37.504,
-36.957,36.473,36.053,35.609,35.179,34.874,34.641,34.288,33.809,33.475,33.472,33.600,33.456,32.859,31.978,31.110,
-30.447,30.026,29.795,29.654,29.509,29.302,29.009,28.618,28.154,27.700,27.341,27.065,26.755,26.318,25.806,25.385,
-25.174,25.153,25.219,25.290,25.317,25.250,25.046,24.737,24.407,24.100,23.809,23.570,23.498,23.624,23.754,23.586,
-23.002,22.194,21.474,20.998,20.698,20.435,20.148,19.849,19.534,19.154,18.689,18.216,17.843,17.597,17.414,17.240,
-17.074,16.901,16.669,16.372,16.096,15.909,15.765,15.584,15.375,15.192,15.041,14.946,15.022,15.313,15.596,15.547,
-15.162,14.772,14.576,14.362,13.864,13.197,12.692,12.431,12.224,11.991,11.868,11.857,11.696,11.206,10.571,10.068,
-9.725,9.478,9.515,10.087,10.946,11.341,10.786,9.657,8.773,8.477,8.409,8.148,7.782,7.666,7.850,8.020,
-7.946,7.728,7.553,7.447,7.360,7.322,7.365,7.381,7.259,7.088,7.053,7.156,7.203,7.082,6.891,6.752,
-6.652,6.530,6.370,6.136,5.758,5.276,4.892,4.730,4.652,4.446,4.102,3.775,3.519,3.246,2.920,2.610,
-2.345,2.062,1.734,1.413,1.132,.870,.639,.483,.369,.197,-.025,-.166,-.187,-.221,-.359,-.502,
--.545,-.570,-.698,-.871,-.974,-1.094,-1.415,-1.857,-2.008,-1.526,-.507,.580,1.243,1.257,.759,.118,
--.380,-.769,-1.276,-1.951,-2.558,-2.876,-2.964,-3.040,-3.203,-3.405,-3.620,-3.887,-4.206,-4.518,-4.798,-5.080,
--5.377,-5.645,-5.858,-6.057,-6.296,-6.591,-6.915,-7.233,-7.513,-7.740,-7.929,-8.106,-8.276,-8.437,-8.602,-8.782,
--8.954,-9.086,-9.185,-9.288,-9.414,-9.545,-9.672,-9.804,-9.948,-10.088,-10.198,-10.260,-10.272,-10.270,-10.314,-10.435,
--10.608,-10.779,-10.917,-11.007,-11.040,-11.028,-11.027,-11.076,-11.147,-11.184,-11.182,-11.182,-11.200,-11.205,-11.188,-11.178,
--11.189,-11.205,-11.232,-11.304,-11.427,-11.552,-11.649,-11.736,-11.833,-11.920,-11.980,-12.037,-12.109,-12.164,-12.169,-12.150,
--12.160,-12.199,-12.223,-12.206,-12.159,-12.089,-11.995,-11.877,-11.747,-11.613,-11.488,-11.395,-11.331,-11.256,-11.139,-10.996,
--10.856,-10.713,-10.549,-10.382,-10.239,-10.111,-9.973,-9.838,-9.741,-9.669,-9.580,-9.471,-9.383,-9.320,-9.240,-9.130,
--9.044,-9.018,-9.008,-8.956,-8.876,-8.825,-8.820,-8.827,-8.828,-8.838,-8.867,-8.896,-8.926,-8.984,-9.079,-9.167,
--9.206,-9.212,-9.242,-9.319,-9.413,-9.488,-9.561,-9.664,-9.802,-9.949,-10.088,-10.229,-10.385,-10.569,-10.798,-11.077,
--11.368,-11.606,-11.762,-11.861,-11.930,-11.972,-11.994,-12.032,-12.116,-12.222,-12.303,-12.349,-12.374,-12.391,-12.398,-12.410,
--12.432,-12.444,-12.430,-12.412,-12.420,-12.438,-12.427,-12.385,-12.341,-12.303,-12.254,-12.202,-12.171,-12.145,-12.088,-12.008,
--11.964,-11.972,-11.978,-11.941,-11.881,-11.833,-11.793,-11.750,-11.714,-11.676,-11.593,-11.455,-11.319,-11.220,-11.115,-10.956,
--10.776,-10.630,-10.495,-10.305,-10.063,-9.840,-9.653,-9.443,-9.174,-8.883,-8.621,-8.386,-8.148,-7.888,-7.599,-7.288,
--6.984,-6.712,-6.447,-6.134,-5.770,-5.414,-5.096,-4.768,-4.377,-3.933,-3.487,-3.058,-2.635,-2.211,-1.788,-1.347,
--.865,-.363,.077,.355,.446,.419,.306,-.035,-.809,-1.858,-2.420,-1.585,.882,4.259,7.504,10.030,
-11.825,13.103,14.211,15.715,18.028,20.718,22.606,22.946,22.344,22.074,22.529,22.815,22.048,20.624,19.792,20.137,
-20.950,21.166,20.581,19.951,20.109,21.233,22.871,24.371,25.253,25.401,25.105,24.850,24.939,25.294,25.650,25.887,
-26.085,26.322,26.544,26.671,26.707,26.676,26.519,26.168,25.669,25.161,24.715,24.291,23.843,23.397,22.964,22.481,
-21.900,21.275,20.677,20.059,19.304,18.401,17.470,16.578,15.637,14.560,13.490,12.745,12.525,12.691,12.859,12.715,
-12.242,11.653,11.101,10.497,9.652,8.559,7.444,6.500,5.689,4.865,3.994,3.142,2.311,1.435,.519,-.351,
--1.167,-2.008,-2.864,-3.606,-4.208,-4.861,-5.701,-6.507,-6.861,-6.657,-6.333,-6.545,-7.632,-9.361,-11.091,-12.198,
--12.482,-12.277,-12.151,-12.440,-13.059,-13.707,-14.161,-14.360,-14.342,-14.212,-14.151,-14.311,-14.660,-15.008,-15.230,-15.423,
--15.776,-16.349,-17.050,-17.831,-18.761,-19.842,-20.831,-21.414,-21.541,-21.474,-21.447,-21.418,-21.237,-20.934,-20.683,-20.545,
--20.410,-20.210,-20.007,-19.826,-19.553,-19.094,-18.559,-18.170,-18.026,-18.012,-17.912,-17.554,-16.925,-16.232,-15.783,-15.687,
--15.718,-15.576,-15.258,-15.028,-15.037,-15.145,-15.141,-14.976,-14.697,-14.318,-13.853,-13.381,-12.919,-12.344,-11.623,-11.054,
--11.024,-11.459,-11.750,-11.364,-10.433,-9.560,-9.121,-8.928,-8.588,-8.006,-7.452,-7.209,-7.282,-7.460,-7.586,-7.740,
--8.134,-8.866,-9.789,-10.621,-11.163,-11.385,-11.365,-11.211,-11.047,-10.967,-10.979,-11.014,-11.014,-10.975,-10.895,-10.749,
--10.551,-10.373,-10.247,-10.106,-9.878,-9.603,-9.367,-9.168,-8.939,-8.683,-8.482,-8.349,-8.195,-7.962,-7.710,-7.511,
--7.337,-7.123,-6.882,-6.670,-6.486,-6.283,-6.054,-5.827,-5.588,-5.290,-4.928,-4.549,-4.175,-3.783,-3.359,-2.930,
--2.513,-2.091,-1.652,-1.212,-.769,-.273,.324,.997,1.657,2.228,2.705,3.161,3.672,4.238,4.775,5.221,
-5.622,6.075,6.586,7.057,7.423,7.735,8.085,8.490,8.893,9.241,9.519,9.738,9.932,10.149,10.415,10.722,
-11.061,11.441,11.846,12.225,12.568,12.943,13.389,13.809,14.040,14.041,13.925,13.820,13.747,13.678,13.624,13.609,
-13.603,13.546,13.439,13.361,13.389,13.518,13.672,13.780,13.828,13.850,13.888,13.956,14.039,14.105,14.118,14.063,
-13.973,13.919,13.935,13.979,13.981,13.934,13.889,13.871,13.848,13.793,13.734,13.725,13.770,13.833,13.883,13.908,
-13.893,13.818,13.701,13.589,13.497,13.370,13.150,12.880,12.688,12.623,12.555,12.302,11.870,11.472,11.614,11.592,
-11.522,11.116,10.439,9.854,9.625,9.678,9.778,9.807,9.792,9.746,9.636,9.486,9.389,9.393,9.438,9.460,
-9.479,9.536,9.610,9.657,9.686,9.736,9.794,9.818,9.827,9.891,10.014,10.126,10.196,10.291,10.466,10.671,
-10.830,10.977,11.199,11.478,11.700,11.827,11.959,12.186,12.475,12.760,13.066,13.436,13.798,14.061,14.311,14.770,
-15.508,16.293,16.826,17.025,17.009,16.875,16.636,16.356,16.201,16.289,16.535,16.688,16.496,15.855,14.876,13.836,
-12.992,12.367,11.767,11.043,10.276,9.644,9.175,8.732,8.233,7.740,7.319,6.909,6.404,5.798,5.168,4.563,
-3.985,3.448,2.963,2.489,1.959,1.380,.824,.281,-.406,-1.393,-2.624,-3.828,-4.747,-5.346,-5.803,-6.275,
--6.715,-6.971,-7.065,-7.230,-7.572,-7.822,-7.646,-7.186,-7.015,-7.398,-7.864,-7.770,-7.167,-6.784,-7.156,-8.100,
--9.119,-10.008,-10.848,-11.640,-12.263,-12.710,-13.079,-13.315,-13.186,-12.606,-11.823,-11.210,-10.989,-11.165,-11.570,-11.879,
--11.804,-11.437,-11.327,-11.998,-13.355,-14.643,-15.026,-14.258,-12.922,-12.114,-12.714,-14.670,-16.954,-18.421,-18.820,-18.879,
--19.397,-20.449,-21.560,-22.386,-22.951,-23.348,-23.556,-23.607,-23.683,-23.936,-24.390,-25.130,-26.350,-28.038,-29.773,-31.093,
--31.955,-32.591,-32.989,-32.871,-32.251,-31.669,-31.654,-32.164,-32.762,-33.176,-33.443,-33.629,-33.700,-33.683,-33.685,-33.722,
--33.730,-33.773,-34.030,-34.442,-34.609,-34.221,-33.536,-33.222,-33.699,-34.700,-35.524,-35.711,-35.441,-35.228,-35.243,-35.134,
--34.635,-34.136,-34.243,-34.825,-34.992,-34.253,-33.242,-32.880,-33.107,-33.047,-32.335,-31.685,-31.899,-32.807,-33.547,-33.651,
--33.437,-33.443,-33.806,-34.265,-34.530,-34.531,-34.423,-34.430,-34.648,-34.980,-35.264,-35.433,-35.520,-35.587,-35.712,-35.988,
--36.427,-36.894,-37.256,-37.567,-38.006,-38.626,-39.272,-39.769,-40.094,-40.307,-40.394,-40.252,-39.861,-39.426,-39.306,-39.730,
--40.557,-41.382,-41.923,-42.285,-42.780,-43.549,-44.460,-45.316,-46.066,-46.773,-47.499,-48.257,-49.028,-49.762,-50.414,-50.987,
--51.522,-52.030,-52.484,-52.896,-53.324,-53.802,-54.290,-54.738,-55.142,-55.534,-55.938,-56.374,-56.859,-57.391,-57.961,-58.584,
--59.282,-60.025,-60.729,-61.326,-61.810,-62.202,-62.538,-62.884,-63.296,-63.770,-64.262,-64.788,-65.404,-66.090,-66.750,-67.375,
--68.114,-69.092,-70.216,-71.254,-72.051,-72.609,-73.006,-73.327,-73.656,-74.050,-74.487,-74.905,-75.286,-75.653,-76.009,-76.331,
--76.624,-76.909,-77.183,-77.416,-77.597,-77.735,-77.832,-77.901,-77.976,-78.060,-78.089,-78.012,-77.875,-77.767,-77.692,-77.572,
--77.355,-77.069,-76.763,-76.481,-76.285,-76.221,-76.237,-76.217,-76.092,-75.885,-75.639,-75.386,-75.144,-74.892,-74.535,-74.008,
--73.414,-72.944,-72.654,-72.408,-72.072,-71.641,-71.154,-70.630,-70.127,-69.753,-69.525,-69.321,-69.030,-68.618,-68.008,-67.089,
--65.976,-65.082,-64.726,-64.773,-64.841,-64.748,-64.486,-63.924,-62.875,-61.515,-60.367,-59.734,-59.378,-58.898,-58.188,-57.352,
--56.397,-55.284,-54.143,-53.178,-52.393,-51.634,-50.846,-50.066,-49.176,-47.918,-46.267,-44.629,-43.519,-43.065,-42.860,-42.278,
--40.974,-39.186,-37.546,-36.472,-35.775,-34.960,-33.882,-32.871,-32.187,-31.622,-30.797,-29.665,-28.453,-27.269,-26.027,-24.731,
--23.553,-22.564,-21.649,-20.754,-20.004,-19.425,-18.751,-17.723,-16.460,-15.309,-14.404,-13.562,-12.604,-11.546,-10.455,-9.336,
--8.251,-7.376,-6.819,-6.531,-6.486,-6.801,-7.489,-8.221,-8.560,-8.399,-7.945,-7.315,-6.402,-5.200,-3.974,-2.962,
--2.097,-1.222,-.427,.089,.432,.989,1.922,2.872,3.329,3.228,3.062,3.432,4.523,6.010,7.435,8.671,
-9.973,11.588,13.353,14.781,15.510,15.600,15.432,15.429,15.872,16.807,18.039,19.295,20.449,21.524,22.499,23.273,
-23.885,24.540,25.269,25.759,25.795,25.746,26.317,27.787,29.790,31.886,34.009,36.191,38.128,39.356,39.738,39.471,
-38.660,37.209,35.180,32.996,31.094,29.554,28.224,27.119,26.499,26.611,27.524,29.191,31.504,34.148,36.526,38.003,
-38.321,37.771,36.955,36.323,35.925,35.567,35.183,34.992,35.277,36.074,37.129,38.148,39.027,39.857,40.812,42.032,
-43.525,45.120,46.558,47.708,48.664,49.598,50.562,51.508,52.439,53.428,54.481,55.465,56.230,56.759,57.189,57.723,
-58.505,59.489,60.428,61.055,61.326,61.425,61.529,61.696,61.994,62.604,63.619,64.788,65.650,65.951,65.832,65.607,
-65.465,65.439,65.537,65.783,66.168,66.635,67.103,67.495,67.766,67.967,68.251,68.751,69.425,70.051,70.409,70.473,
-70.445,70.588,70.999,71.539,72.012,72.407,72.873,73.474,74.057,74.416,74.530,74.529,74.511,74.486,74.460,74.417,
-74.187,73.518,72.386,71.136,70.167,69.541,69.074,68.774,68.995,70.077,71.978,74.369,76.884,79.133,80.637,81.115,
-80.869,80.554,80.422,80.057,79.096,77.948,77.420,77.693,78.081,77.859,77.010,76.026,75.316,75.044,75.247,75.762,
-76.126,75.930,75.277,74.637,74.232,73.816,73.140,72.379,71.906,71.805,71.778,71.514,70.999,70.467,70.121,69.925,
-69.660,69.175,68.534,67.889,67.283,66.654,65.996,65.354,64.696,63.993,63.464,63.557,64.497,65.894,66.899,66.795,
-65.522,63.721,62.187,61.100,59.864,57.965,55.960,55.166,56.178,58.059,59.350,59.577,59.352,59.248,59.173,58.881,
-58.490,58.222,58.010,57.685,57.301,57.017,56.804,56.538,56.248,56.027,55.801,55.418,54.937,54.582,54.386,54.070,
-53.350,52.255,51.116,50.309,49.982,49.956,49.884,49.546,48.959,48.217,47.350,46.415,45.585,44.972,44.472,43.937,
-43.426,43.083,42.852,42.542,42.150,41.854,41.672,41.396,40.939,40.504,40.244,40.012,39.613,39.136,38.781,38.510,
-38.112,37.556,37.026,36.602,36.176,35.706,35.319,35.056,34.741,34.255,33.810,33.712,33.910,33.965,33.518,32.674,
-31.843,31.315,31.048,30.841,30.574,30.262,29.944,29.608,29.222,28.796,28.384,28.035,27.745,27.445,27.049,26.548,
-26.070,25.791,25.779,25.934,26.094,26.162,26.124,25.976,25.710,25.334,24.886,24.428,24.059,23.892,23.937,24.007,
-23.812,23.225,22.420,21.715,21.289,21.051,20.799,20.449,20.076,19.752,19.422,19.000,18.517,18.103,17.820,17.606,
-17.406,17.237,17.084,16.849,16.492,16.139,15.927,15.806,15.631,15.390,15.202,15.129,15.143,15.265,15.519,15.746,
-15.672,15.286,14.905,14.744,14.596,14.159,13.494,12.920,12.542,12.199,11.851,11.686,11.730,11.663,11.226,10.591,
-10.109,9.834,9.584,9.363,9.403,9.714,9.892,9.585,8.959,8.490,8.356,8.278,7.982,7.595,7.439,7.571,
-7.722,7.659,7.424,7.197,7.058,6.985,6.970,7.007,7.024,6.949,6.835,6.804,6.860,6.881,6.780,6.600,
-6.416,6.254,6.136,6.079,6.000,5.745,5.290,4.833,4.562,4.427,4.239,3.928,3.582,3.264,2.952,2.644,
-2.393,2.197,1.976,1.684,1.353,1.013,.678,.396,.227,.123,-.033,-.262,-.451,-.539,-.610,-.734,
--.841,-.863,-.885,-1.017,-1.201,-1.312,-1.394,-1.631,-2.049,-2.383,-2.317,-1.790,-1.063,-.501,-.270,-.211,
--.033,.290,.386,-.130,-1.169,-2.211,-2.845,-3.108,-3.268,-3.458,-3.646,-3.825,-4.053,-4.343,-4.640,-4.921,
--5.208,-5.496,-5.742,-5.931,-6.109,-6.323,-6.587,-6.884,-7.181,-7.434,-7.630,-7.805,-8.000,-8.201,-8.377,-8.539,
--8.717,-8.894,-9.015,-9.080,-9.146,-9.249,-9.370,-9.486,-9.610,-9.755,-9.901,-10.016,-10.091,-10.131,-10.159,-10.203,
--10.288,-10.404,-10.525,-10.632,-10.710,-10.739,-10.724,-10.718,-10.768,-10.852,-10.907,-10.922,-10.943,-10.987,-11.017,-11.004,
--10.975,-10.957,-10.952,-10.967,-11.028,-11.134,-11.243,-11.324,-11.400,-11.491,-11.570,-11.612,-11.638,-11.682,-11.728,-11.745,
--11.745,-11.769,-11.816,-11.852,-11.858,-11.842,-11.808,-11.741,-11.634,-11.495,-11.336,-11.177,-11.051,-10.968,-10.890,-10.773,
--10.620,-10.458,-10.292,-10.113,-9.937,-9.792,-9.664,-9.521,-9.379,-9.290,-9.252,-9.209,-9.130,-9.049,-8.992,-8.930,
--8.834,-8.739,-8.688,-8.659,-8.602,-8.523,-8.477,-8.485,-8.507,-8.518,-8.538,-8.585,-8.639,-8.675,-8.716,-8.795,
--8.903,-8.994,-9.049,-9.096,-9.162,-9.238,-9.303,-9.371,-9.468,-9.598,-9.742,-9.889,-10.049,-10.232,-10.443,-10.694,
--10.984,-11.276,-11.505,-11.639,-11.704,-11.742,-11.778,-11.828,-11.915,-12.037,-12.151,-12.211,-12.222,-12.222,-12.232,-12.253,
--12.283,-12.314,-12.315,-12.271,-12.218,-12.206,-12.221,-12.214,-12.168,-12.118,-12.080,-12.039,-11.989,-11.951,-11.921,-11.866,
--11.786,-11.730,-11.724,-11.728,-11.699,-11.651,-11.618,-11.593,-11.549,-11.486,-11.419,-11.338,-11.232,-11.121,-11.034,-10.951,
--10.831,-10.669,-10.496,-10.321,-10.124,-9.900,-9.681,-9.479,-9.267,-9.018,-8.744,-8.479,-8.240,-8.007,-7.749,-7.452,
--7.137,-6.839,-6.575,-6.320,-6.042,-5.728,-5.387,-5.034,-4.683,-4.341,-3.986,-3.583,-3.136,-2.688,-2.253,-1.808,
--1.350,-.908,-.475,-.014,.405,.613,.565,.424,.253,-.228,-1.229,-2.244,-2.195,-.449,2.532,5.712,
-8.405,10.492,12.098,13.555,15.521,18.441,21.682,23.790,24.049,23.428,23.469,24.419,25.069,24.466,23.173,22.474,
-22.764,23.221,22.956,22.008,21.148,21.047,21.823,23.146,24.493,25.375,25.585,25.360,25.183,25.361,25.799,26.210,
-26.450,26.598,26.758,26.908,26.965,26.911,26.793,26.631,26.406,26.124,25.810,25.447,24.984,24.455,23.990,23.654,
-23.328,22.843,22.190,21.497,20.826,20.110,19.307,18.476,17.644,16.695,15.545,14.381,13.585,13.369,13.536,13.645,
-13.408,12.890,12.345,11.886,11.350,10.516,9.401,8.263,7.302,6.466,5.605,4.696,3.813,2.954,2.047,1.105,
-.215,-.629,-1.528,-2.459,-3.247,-3.849,-4.484,-5.313,-6.059,-6.226,-5.722,-5.143,-5.313,-6.586,-8.580,-10.488,
--11.632,-11.859,-11.564,-11.340,-11.539,-12.103,-12.750,-13.243,-13.479,-13.459,-13.287,-13.183,-13.338,-13.727,-14.119,-14.346,
--14.509,-14.858,-15.499,-16.326,-17.230,-18.231,-19.312,-20.249,-20.772,-20.893,-20.906,-21.004,-21.056,-20.862,-20.500,-20.224,
--20.107,-19.982,-19.738,-19.467,-19.234,-18.914,-18.384,-17.784,-17.397,-17.312,-17.321,-17.128,-16.601,-15.865,-15.253,-15.092,
--15.416,-15.881,-16.092,-16.004,-15.876,-15.871,-15.867,-15.706,-15.424,-15.114,-14.731,-14.197,-13.574,-12.966,-12.345,-11.692,
--11.262,-11.401,-12.012,-12.426,-12.028,-10.936,-9.852,-9.292,-9.137,-8.934,-8.479,-7.966,-7.691,-7.737,-7.976,-8.293,
--8.716,-9.325,-10.074,-10.762,-11.202,-11.383,-11.424,-11.413,-11.350,-11.239,-11.137,-11.088,-11.064,-11.021,-10.953,-10.866,
--10.733,-10.546,-10.352,-10.193,-10.031,-9.806,-9.543,-9.321,-9.148,-8.962,-8.745,-8.555,-8.413,-8.249,-8.001,-7.720,
--7.493,-7.326,-7.162,-6.983,-6.824,-6.689,-6.534,-6.330,-6.092,-5.837,-5.551,-5.217,-4.844,-4.445,-4.022,-3.581,
--3.138,-2.692,-2.230,-1.754,-1.292,-.850,-.385,.161,.793,1.457,2.079,2.630,3.136,3.636,4.128,4.571,
-4.957,5.346,5.808,6.328,6.818,7.216,7.551,7.890,8.263,8.644,8.985,9.256,9.465,9.651,9.861,10.110,
-10.396,10.730,11.124,11.536,11.899,12.212,12.557,12.988,13.426,13.722,13.805,13.735,13.613,13.502,13.426,13.397,
-13.401,13.397,13.348,13.261,13.181,13.161,13.228,13.361,13.508,13.626,13.709,13.769,13.810,13.830,13.826,13.795,
-13.729,13.660,13.659,13.761,13.893,13.949,13.922,13.891,13.878,13.807,13.637,13.469,13.441,13.553,13.672,13.699,
-13.654,13.592,13.511,13.392,13.258,13.136,13.001,12.821,12.654,12.601,12.632,12.564,12.262,11.857,11.614,11.745,
-11.854,11.781,11.275,10.508,9.900,9.693,9.770,9.881,9.909,9.881,9.828,9.737,9.630,9.569,9.579,9.616,
-9.639,9.666,9.721,9.780,9.812,9.840,9.908,10.003,10.071,10.114,10.194,10.333,10.469,10.559,10.656,10.829,
-11.048,11.232,11.381,11.575,11.837,12.090,12.288,12.503,12.808,13.165,13.493,13.798,14.127,14.440,14.663,14.863,
-15.235,15.861,16.579,17.155,17.485,17.566,17.381,16.946,16.455,16.215,16.385,16.829,17.217,17.228,16.704,15.740,
-14.650,13.753,13.103,12.496,11.774,11.016,10.378,9.853,9.309,8.725,8.217,7.830,7.448,6.951,6.362,5.769,
-5.194,4.618,4.071,3.589,3.114,2.555,1.933,1.358,.828,.146,-.873,-2.154,-3.375,-4.253,-4.790,-5.214,
--5.693,-6.134,-6.323,-6.250,-6.169,-6.266,-6.387,-6.299,-6.162,-6.429,-7.165,-7.745,-7.543,-6.779,-6.332,-6.710,
--7.571,-8.358,-9.041,-9.944,-11.081,-12.064,-12.629,-12.894,-13.019,-12.901,-12.412,-11.725,-11.202,-11.039,-11.173,-11.449,
--11.718,-11.808,-11.665,-11.587,-12.124,-13.538,-15.334,-16.470,-16.205,-14.842,-13.626,-13.743,-15.291,-17.232,-18.432,-18.713,
--18.799,-19.368,-20.393,-21.427,-22.223,-22.820,-23.240,-23.424,-23.449,-23.530,-23.760,-24.078,-24.565,-25.484,-26.862,-28.299,
--29.429,-30.365,-31.368,-32.201,-32.283,-31.554,-30.765,-30.683,-31.280,-31.976,-32.424,-32.726,-32.994,-33.131,-33.095,-33.050,
--33.119,-33.217,-33.278,-33.440,-33.782,-34.027,-33.779,-33.110,-32.670,-33.051,-34.065,-34.828,-34.668,-33.873,-33.370,-33.630,
--34.155,-34.225,-33.905,-33.866,-34.287,-34.480,-33.880,-32.897,-32.340,-32.250,-31.953,-31.203,-30.684,-31.094,-32.174,-33.028,
--33.177,-32.937,-32.849,-33.084,-33.453,-33.738,-33.873,-33.923,-34.000,-34.181,-34.453,-34.747,-35.000,-35.170,-35.245,-35.290,
--35.443,-35.788,-36.246,-36.684,-37.095,-37.590,-38.212,-38.843,-39.337,-39.661,-39.854,-39.911,-39.757,-39.376,-38.937,-38.743,
--38.987,-39.545,-40.067,-40.348,-40.558,-41.037,-41.919,-43.029,-44.117,-45.081,-45.931,-46.692,-47.405,-48.134,-48.902,-49.628,
--50.211,-50.652,-51.048,-51.487,-51.975,-52.477,-52.959,-53.401,-53.790,-54.127,-54.441,-54.786,-55.220,-55.764,-56.394,-57.067,
--57.749,-58.412,-59.036,-59.631,-60.225,-60.808,-61.323,-61.744,-62.135,-62.571,-63.042,-63.498,-63.972,-64.544,-65.200,-65.841,
--66.463,-67.211,-68.189,-69.290,-70.297,-71.078,-71.644,-72.063,-72.409,-72.762,-73.166,-73.594,-73.993,-74.352,-74.694,-75.021,
--75.330,-75.639,-75.960,-76.252,-76.466,-76.616,-76.752,-76.882,-76.982,-77.054,-77.123,-77.166,-77.136,-77.042,-76.944,-76.867,
--76.760,-76.565,-76.287,-75.999,-75.794,-75.728,-75.760,-75.768,-75.671,-75.497,-75.317,-75.137,-74.935,-74.717,-74.474,-74.107,
--73.538,-72.867,-72.303,-71.929,-71.644,-71.338,-70.999,-70.636,-70.235,-69.840,-69.549,-69.388,-69.258,-69.058,-68.726,-68.148,
--67.226,-66.122,-65.245,-64.837,-64.744,-64.695,-64.628,-64.499,-64.016,-62.919,-61.474,-60.316,-59.743,-59.439,-58.960,-58.195,
--57.243,-56.147,-54.982,-53.990,-53.338,-52.861,-52.248,-51.413,-50.467,-49.422,-48.147,-46.649,-45.192,-44.082,-43.397,-42.921,
--42.249,-41.059,-39.454,-37.973,-37.053,-36.517,-35.813,-34.740,-33.657,-32.893,-32.265,-31.383,-30.183,-28.895,-27.632,-26.326,
--25.014,-23.893,-23.043,-22.338,-21.688,-21.133,-20.613,-19.866,-18.738,-17.424,-16.244,-15.259,-14.284,-13.193,-12.004,-10.732,
--9.386,-8.099,-7.055,-6.256,-5.557,-5.046,-5.105,-5.916,-7.066,-7.905,-8.212,-8.238,-8.136,-7.685,-6.699,-5.420,
--4.266,-3.357,-2.539,-1.775,-1.222,-.895,-.516,.132,.873,1.341,1.472,1.648,2.305,3.460,4.699,5.652,
-6.427,7.514,9.194,11.115,12.535,13.003,12.722,12.277,12.136,12.449,13.145,14.058,15.020,15.956,16.893,17.822,
-18.625,19.232,19.761,20.346,20.916,21.355,21.874,22.953,24.803,27.093,29.367,31.548,33.805,36.053,37.864,38.889,
-39.074,38.443,36.951,34.740,32.321,30.239,28.612,27.221,26.027,25.376,25.634,26.816,28.670,30.938,33.326,35.329,
-36.362,36.225,35.352,34.489,34.113,34.189,34.440,34.752,35.292,36.280,37.719,39.365,40.913,42.201,43.268,44.282,
-45.390,46.595,47.738,48.651,49.336,49.975,50.739,51.628,52.534,53.404,54.267,55.123,55.899,56.536,57.054,57.538,
-58.094,58.807,59.660,60.475,61.023,61.255,61.339,61.453,61.625,61.865,62.334,63.197,64.303,65.194,65.513,65.328,
-64.987,64.765,64.725,64.849,65.140,65.571,66.045,66.467,66.830,67.186,67.571,67.992,68.467,69.006,69.525,69.851,
-69.903,69.860,70.045,70.594,71.297,71.847,72.194,72.550,73.079,73.687,74.168,74.434,74.519,74.468,74.327,74.161,
-73.947,73.483,72.575,71.363,70.290,69.652,69.275,68.811,68.275,68.117,68.754,70.207,72.222,74.508,76.696,78.279,
-78.967,79.099,79.367,79.958,80.265,79.680,78.487,77.608,77.515,77.749,77.576,76.798,75.779,74.941,74.487,74.432,
-74.607,74.698,74.493,74.118,73.830,73.621,73.248,72.654,72.127,71.930,71.927,71.754,71.253,70.621,70.154,69.931,
-69.764,69.402,68.790,68.108,67.539,67.033,66.402,65.600,64.785,64.078,63.437,62.878,62.701,63.314,64.742,66.338,
-67.084,66.369,64.567,62.725,61.480,60.396,58.686,56.553,55.310,55.932,57.844,59.547,60.185,60.078,59.849,59.654,
-59.359,58.994,58.678,58.382,58.034,57.720,57.546,57.425,57.218,56.970,56.800,56.637,56.286,55.760,55.308,55.084,
-54.918,54.480,53.613,52.475,51.419,50.724,50.409,50.267,50.091,49.794,49.330,48.627,47.722,46.829,46.126,45.545,
-44.929,44.311,43.862,43.586,43.294,42.875,42.416,42.007,41.634,41.312,41.118,40.979,40.652,40.047,39.429,39.069,
-38.860,38.491,37.919,37.396,37.045,36.699,36.235,35.795,35.526,35.282,34.846,34.333,34.104,34.248,34.386,34.100,
-33.429,32.777,32.403,32.182,31.864,31.399,30.914,30.491,30.106,29.736,29.407,29.114,28.806,28.470,28.144,27.816,
-27.419,26.970,26.637,26.571,26.716,26.869,26.903,26.846,26.740,26.546,26.201,25.713,25.170,24.679,24.324,24.120,
-23.961,23.661,23.114,22.428,21.853,21.549,21.425,21.251,20.902,20.460,20.051,19.668,19.229,18.748,18.343,18.062,
-17.826,17.580,17.373,17.211,16.972,16.580,16.165,15.906,15.769,15.579,15.315,15.136,15.131,15.223,15.357,15.558,
-15.745,15.703,15.390,15.066,14.933,14.812,14.409,13.774,13.226,12.868,12.514,12.084,11.773,11.673,11.535,11.103,
-10.512,10.095,9.903,9.681,9.301,8.949,8.809,8.780,8.652,8.420,8.259,8.226,8.156,7.899,7.544,7.315,
-7.302,7.368,7.334,7.168,6.972,6.835,6.762,6.718,6.675,6.618,6.557,6.536,6.580,6.633,6.597,6.448,
-6.252,6.071,5.914,5.800,5.763,5.746,5.582,5.182,4.676,4.287,4.078,3.925,3.697,3.377,3.014,2.658,
-2.363,2.165,2.022,1.838,1.562,1.225,.863,.498,.179,-.028,-.143,-.271,-.472,-.691,-.866,-1.009,
--1.142,-1.228,-1.245,-1.263,-1.361,-1.511,-1.634,-1.738,-1.921,-2.227,-2.550,-2.708,-2.592,-2.258,-1.877,-1.527,
--1.065,-.303,.602,1.093,.705,-.415,-1.643,-2.496,-2.974,-3.305,-3.594,-3.811,-3.978,-4.181,-4.447,-4.741,
--5.045,-5.361,-5.653,-5.879,-6.050,-6.218,-6.413,-6.637,-6.891,-7.154,-7.375,-7.536,-7.691,-7.890,-8.105,-8.282,
--8.437,-8.618,-8.806,-8.932,-8.989,-9.047,-9.148,-9.259,-9.350,-9.443,-9.565,-9.697,-9.813,-9.914,-10.007,-10.078,
--10.119,-10.153,-10.209,-10.290,-10.376,-10.443,-10.471,-10.467,-10.471,-10.520,-10.593,-10.643,-10.670,-10.721,-10.802,-10.861,
--10.856,-10.812,-10.777,-10.764,-10.775,-10.825,-10.907,-10.981,-11.026,-11.066,-11.130,-11.198,-11.238,-11.263,-11.304,-11.351,
--11.377,-11.380,-11.388,-11.407,-11.425,-11.440,-11.453,-11.446,-11.395,-11.304,-11.191,-11.059,-10.911,-10.771,-10.664,-10.571,
--10.449,-10.286,-10.106,-9.919,-9.721,-9.535,-9.389,-9.269,-9.134,-8.989,-8.890,-8.854,-8.827,-8.765,-8.694,-8.648,
--8.605,-8.529,-8.435,-8.369,-8.326,-8.266,-8.187,-8.143,-8.159,-8.197,-8.224,-8.254,-8.311,-8.378,-8.416,-8.434,
--8.475,-8.567,-8.681,-8.780,-8.860,-8.938,-9.022,-9.107,-9.196,-9.300,-9.425,-9.566,-9.724,-9.905,-10.107,-10.329,
--10.579,-10.857,-11.132,-11.345,-11.467,-11.521,-11.558,-11.609,-11.687,-11.792,-11.906,-11.997,-12.045,-12.067,-12.090,-12.114,
--12.132,-12.148,-12.166,-12.159,-12.110,-12.048,-12.022,-12.029,-12.024,-11.987,-11.948,-11.924,-11.890,-11.831,-11.769,-11.714,
--11.644,-11.552,-11.478,-11.457,-11.461,-11.441,-11.400,-11.378,-11.375,-11.345,-11.266,-11.171,-11.091,-11.021,-10.944,-10.866,
--10.790,-10.697,-10.559,-10.374,-10.164,-9.948,-9.730,-9.512,-9.299,-9.087,-8.861,-8.613,-8.357,-8.114,-7.878,-7.619,
--7.332,-7.041,-6.766,-6.494,-6.210,-5.934,-5.670,-5.371,-4.998,-4.607,-4.280,-3.999,-3.662,-3.234,-2.784,-2.343,
--1.869,-1.372,-.947,-.594,-.178,.318,.660,.683,.578,.564,.380,-.435,-1.686,-2.347,-1.519,.701,
-3.508,6.245,8.675,10.745,12.646,14.957,18.074,21.361,23.456,23.811,23.455,23.797,24.957,25.883,25.923,25.592,
-25.628,25.893,25.652,24.619,23.277,22.288,21.972,22.357,23.330,24.562,25.537,25.908,25.811,25.698,25.869,26.252,
-26.605,26.812,26.959,27.152,27.360,27.436,27.288,26.975,26.650,26.420,26.280,26.140,25.881,25.438,24.884,24.398,
-24.091,23.860,23.498,22.935,22.276,21.622,20.953,20.240,19.535,18.842,18.010,16.912,15.721,14.851,14.554,14.637,
-14.651,14.327,13.773,13.254,12.829,12.283,11.398,10.246,9.113,8.168,7.305,6.364,5.374,4.458,3.612,2.710,
-1.726,.750,-.194,-1.182,-2.182,-3.015,-3.631,-4.243,-4.985,-5.559,-5.490,-4.794,-4.186,-4.488,-5.894,-7.860,
--9.599,-10.628,-10.956,-10.929,-10.938,-11.175,-11.602,-12.081,-12.502,-12.789,-12.879,-12.800,-12.724,-12.840,-13.145,-13.440,
--13.597,-13.758,-14.194,-14.984,-15.959,-16.952,-17.962,-18.990,-19.838,-20.256,-20.274,-20.204,-20.250,-20.279,-20.100,-19.790,
--19.587,-19.524,-19.413,-19.172,-18.920,-18.710,-18.369,-17.773,-17.123,-16.750,-16.700,-16.681,-16.399,-15.827,-15.205,-14.860,
--15.022,-15.625,-16.287,-16.628,-16.621,-16.528,-16.487,-16.351,-15.984,-15.510,-15.112,-14.738,-14.198,-13.478,-12.751,-12.126,
--11.620,-11.378,-11.634,-12.301,-12.790,-12.493,-11.428,-10.224,-9.469,-9.208,-9.089,-8.851,-8.548,-8.380,-8.444,-8.708,
--9.118,-9.673,-10.342,-10.982,-11.395,-11.507,-11.447,-11.412,-11.458,-11.489,-11.424,-11.300,-11.191,-11.105,-11.004,-10.881,
--10.752,-10.612,-10.444,-10.268,-10.115,-9.964,-9.768,-9.537,-9.337,-9.188,-9.041,-8.856,-8.665,-8.502,-8.333,-8.105,
--7.837,-7.602,-7.430,-7.284,-7.134,-6.996,-6.877,-6.744,-6.556,-6.316,-6.056,-5.786,-5.479,-5.110,-4.686,-4.237,
--3.788,-3.344,-2.894,-2.432,-1.963,-1.500,-1.042,-.568,-.044,.550,1.200,1.865,2.501,3.078,3.588,4.024,
-4.390,4.726,5.091,5.518,5.982,6.433,6.846,7.227,7.588,7.933,8.260,8.559,8.821,9.057,9.302,9.577,
-9.864,10.145,10.447,10.807,11.202,11.567,11.890,12.238,12.657,13.090,13.413,13.546,13.502,13.363,13.226,13.154,
-13.144,13.146,13.122,13.071,13.012,12.953,12.915,12.946,13.062,13.221,13.359,13.451,13.510,13.533,13.513,13.464,
-13.409,13.357,13.326,13.364,13.492,13.636,13.700,13.693,13.711,13.760,13.715,13.511,13.288,13.250,13.396,13.528,
-13.493,13.346,13.218,13.142,13.062,12.955,12.849,12.761,12.692,12.669,12.711,12.722,12.544,12.167,11.822,11.745,
-11.477,11.633,11.522,11.003,10.329,9.885,9.808,9.932,10.033,10.041,10.003,9.954,9.890,9.818,9.772,9.766,
-9.780,9.795,9.826,9.876,9.923,9.948,9.984,10.077,10.216,10.340,10.427,10.526,10.675,10.842,10.977,11.102,
-11.271,11.476,11.649,11.777,11.930,12.161,12.433,12.700,12.982,13.310,13.659,13.989,14.320,14.675,14.985,15.177,
-15.327,15.623,16.152,16.806,17.424,17.891,18.077,17.838,17.230,16.616,16.408,16.695,17.204,17.588,17.626,17.222,
-16.402,15.378,14.447,13.737,13.119,12.445,11.749,11.133,10.560,9.928,9.275,8.749,8.374,7.995,7.488,6.902,
-6.333,5.778,5.201,4.643,4.160,3.692,3.134,2.502,1.916,1.384,.708,-.309,-1.592,-2.803,-3.634,-4.078,
--4.390,-4.787,-5.203,-5.385,-5.234,-4.955,-4.816,-4.853,-4.977,-5.285,-5.990,-6.937,-7.489,-7.187,-6.402,-6.007,
--6.384,-7.106,-7.686,-8.276,-9.328,-10.778,-12.004,-12.571,-12.651,-12.604,-12.474,-12.134,-11.682,-11.394,-11.340,-11.358,
--11.387,-11.561,-11.875,-12.035,-11.897,-11.915,-12.828,-14.749,-16.749,-17.593,-16.942,-15.743,-15.318,-16.112,-17.418,-18.290,
--18.540,-18.735,-19.389,-20.442,-21.520,-22.394,-23.030,-23.386,-23.453,-23.407,-23.472,-23.642,-23.793,-24.039,-24.683,-25.717,
--26.714,-27.445,-28.290,-29.636,-31.052,-31.580,-30.950,-30.021,-29.794,-30.344,-31.033,-31.468,-31.801,-32.178,-32.437,-32.451,
--32.410,-32.519,-32.667,-32.666,-32.638,-32.873,-33.329,-33.585,-33.384,-33.045,-33.101,-33.583,-33.880,-33.461,-32.625,-32.256,
--32.786,-33.634,-33.916,-33.537,-33.197,-33.339,-33.557,-33.250,-32.479,-31.772,-31.304,-30.790,-30.190,-30.001,-30.603,-31.653,
--32.430,-32.622,-32.516,-32.498,-32.654,-32.865,-33.053,-33.217,-33.364,-33.500,-33.657,-33.881,-34.182,-34.513,-34.775,-34.888,
--34.890,-34.949,-35.212,-35.657,-36.145,-36.609,-37.104,-37.685,-38.286,-38.785,-39.131,-39.358,-39.475,-39.405,-39.063,-38.531,
--38.094,-38.030,-38.336,-38.730,-38.977,-39.163,-39.580,-40.401,-41.541,-42.798,-44.001,-45.034,-45.841,-46.495,-47.176,-47.972,
--48.761,-49.354,-49.730,-50.062,-50.510,-51.067,-51.611,-52.049,-52.376,-52.634,-52.877,-53.176,-53.601,-54.172,-54.841,-55.538,
--56.221,-56.869,-57.462,-58.002,-58.556,-59.186,-59.850,-60.424,-60.861,-61.255,-61.701,-62.174,-62.613,-63.062,-63.627,-64.301,
--64.980,-65.646,-66.420,-67.385,-68.439,-69.393,-70.145,-70.710,-71.149,-71.528,-71.911,-72.317,-72.711,-73.065,-73.395,-73.717,
--74.022,-74.315,-74.635,-74.986,-75.289,-75.485,-75.620,-75.773,-75.933,-76.034,-76.076,-76.127,-76.194,-76.207,-76.132,-76.023,
--75.940,-75.852,-75.681,-75.416,-75.151,-75.013,-75.041,-75.127,-75.116,-74.970,-74.792,-74.677,-74.595,-74.464,-74.262,-73.980,
--73.546,-72.917,-72.208,-71.609,-71.180,-70.840,-70.539,-70.306,-70.130,-69.927,-69.675,-69.448,-69.290,-69.160,-68.993,-68.712,
--68.168,-67.266,-66.200,-65.359,-64.918,-64.712,-64.579,-64.544,-64.511,-64.040,-62.832,-61.274,-60.127,-59.671,-59.468,-58.991,
--58.132,-57.055,-55.894,-54.810,-54.050,-53.678,-53.388,-52.807,-51.876,-50.768,-49.569,-48.249,-46.860,-45.565,-44.473,-43.601,
--42.898,-42.183,-41.183,-39.859,-38.598,-37.793,-37.294,-36.570,-35.436,-34.288,-33.491,-32.860,-31.967,-30.713,-29.334,-27.998,
--26.696,-25.475,-24.476,-23.737,-23.151,-22.650,-22.212,-21.682,-20.808,-19.558,-18.204,-17.016,-15.987,-14.963,-13.869,-12.665,
--11.260,-9.674,-8.175,-7.008,-6.048,-5.019,-4.080,-3.855,-4.677,-6.048,-7.116,-7.575,-7.770,-7.985,-7.997,-7.486,
--6.581,-5.711,-5.052,-4.431,-3.742,-3.161,-2.845,-2.621,-2.172,-1.437,-.634,.085,.856,1.881,3.088,4.136,
-4.806,5.342,6.285,7.885,9.709,10.952,11.183,10.713,10.214,10.091,10.298,10.630,11.007,11.473,12.083,12.852,
-13.714,14.520,15.159,15.693,16.273,16.914,17.521,18.195,19.300,21.052,23.178,25.231,27.170,29.362,31.960,34.522,
-36.360,37.083,36.701,35.420,33.589,31.693,30.081,28.683,27.231,25.834,25.093,25.506,26.926,28.757,30.530,32.080,
-33.261,33.824,33.711,33.285,33.094,33.420,34.165,35.101,36.139,37.340,38.768,40.380,42.028,43.525,44.759,45.758,
-46.665,47.589,48.501,49.259,49.787,50.189,50.678,51.380,52.229,53.071,53.833,54.547,55.261,55.967,56.631,57.236,
-57.786,58.321,58.923,59.635,60.347,60.846,61.048,61.107,61.227,61.442,61.690,62.061,62.761,63.773,64.706,65.115,
-64.934,64.497,64.170,64.087,64.210,64.489,64.873,65.269,65.607,65.942,66.384,66.943,67.514,68.025,68.505,68.944,
-69.201,69.194,69.123,69.358,70.022,70.832,71.422,71.753,72.079,72.595,73.241,73.849,74.296,74.495,74.387,74.044,
-73.661,73.305,72.788,71.932,70.927,70.204,69.916,69.717,69.206,68.460,67.981,68.177,69.072,70.482,72.224,73.998,
-75.329,75.955,76.242,76.907,78.171,79.397,79.775,79.236,78.443,77.959,77.716,77.325,76.643,75.848,75.157,74.660,
-74.346,74.114,73.815,73.408,73.064,72.953,72.980,72.887,72.596,72.274,72.026,71.724,71.217,70.601,70.134,69.925,
-69.797,69.462,68.801,67.994,67.369,67.082,66.938,66.592,65.925,65.126,64.405,63.741,62.998,62.247,61.861,62.215,
-63.230,64.239,64.452,63.726,62.729,62.119,61.643,60.451,58.420,56.694,56.551,57.964,59.676,60.586,60.616,60.261,
-59.820,59.321,58.825,58.455,58.238,58.136,58.165,58.292,58.336,58.142,57.815,57.573,57.415,57.121,56.596,56.028,
-55.647,55.448,55.212,54.729,53.949,52.984,52.017,51.204,50.628,50.297,50.134,49.955,49.562,48.924,48.212,47.577,
-46.958,46.216,45.402,44.741,44.349,44.088,43.740,43.220,42.602,42.046,41.711,41.608,41.495,41.072,40.352,39.684,
-39.323,39.108,38.730,38.186,37.734,37.464,37.166,36.697,36.219,35.931,35.740,35.431,35.070,34.975,35.223,35.439,
-35.210,34.576,33.931,33.500,33.142,32.667,32.119,31.640,31.217,30.752,30.283,29.943,29.722,29.457,29.087,28.746,
-28.515,28.279,27.926,27.571,27.422,27.475,27.522,27.434,27.291,27.189,27.072,26.812,26.385,25.878,25.378,24.922,
-24.513,24.121,23.668,23.087,22.434,21.889,21.602,21.529,21.455,21.208,20.798,20.339,19.877,19.391,18.916,18.549,
-18.306,18.079,17.792,17.501,17.248,16.951,16.539,16.121,15.843,15.655,15.395,15.087,14.939,15.032,15.217,15.362,
-15.501,15.641,15.630,15.406,15.160,15.061,14.950,14.568,13.987,13.537,13.311,13.052,12.574,12.038,11.644,11.314,
-10.868,10.368,10.033,9.878,9.670,9.258,8.772,8.427,8.267,8.185,8.100,8.025,7.983,7.933,7.801,7.567,
-7.305,7.126,7.066,7.057,7.011,6.914,6.810,6.710,6.575,6.390,6.214,6.139,6.203,6.335,6.397,6.292,
-6.057,5.821,5.662,5.557,5.464,5.400,5.362,5.240,4.912,4.419,3.963,3.689,3.551,3.391,3.115,2.744,
-2.371,2.082,1.903,1.768,1.579,1.296,.965,.635,.312,.004,-.245,-.415,-.552,-.724,-.947,-1.179,
--1.379,-1.528,-1.621,-1.667,-1.693,-1.730,-1.798,-1.911,-2.078,-2.282,-2.498,-2.714,-2.899,-2.984,-2.926,-2.770,
--2.540,-2.086,-1.224,-.102,.706,.680,-.127,-1.189,-2.067,-2.704,-3.218,-3.632,-3.908,-4.092,-4.283,-4.528,
--4.819,-5.152,-5.505,-5.815,-6.040,-6.214,-6.391,-6.575,-6.756,-6.953,-7.170,-7.358,-7.491,-7.622,-7.805,-8.006,
--8.162,-8.299,-8.479,-8.685,-8.837,-8.924,-9.015,-9.139,-9.244,-9.299,-9.347,-9.430,-9.534,-9.636,-9.755,-9.892,
--9.996,-10.024,-10.009,-10.020,-10.082,-10.164,-10.230,-10.268,-10.290,-10.315,-10.353,-10.388,-10.406,-10.430,-10.503,-10.616,
--10.702,-10.711,-10.668,-10.626,-10.610,-10.619,-10.659,-10.718,-10.760,-10.763,-10.751,-10.764,-10.804,-10.850,-10.901,-10.967,
--11.028,-11.057,-11.051,-11.032,-11.012,-10.998,-11.000,-11.016,-11.012,-10.962,-10.881,-10.799,-10.713,-10.601,-10.476,-10.364,
--10.261,-10.128,-9.956,-9.769,-9.583,-9.392,-9.210,-9.064,-8.949,-8.826,-8.688,-8.578,-8.520,-8.478,-8.415,-8.347,
--8.304,-8.268,-8.203,-8.118,-8.052,-8.007,-7.949,-7.875,-7.832,-7.850,-7.902,-7.946,-7.981,-8.032,-8.096,-8.145,
--8.167,-8.189,-8.247,-8.342,-8.447,-8.548,-8.649,-8.761,-8.879,-8.994,-9.104,-9.223,-9.369,-9.548,-9.753,-9.969,
--10.196,-10.446,-10.718,-10.978,-11.168,-11.266,-11.309,-11.357,-11.440,-11.545,-11.644,-11.718,-11.762,-11.796,-11.844,-11.908,
--11.961,-11.981,-11.978,-11.976,-11.968,-11.935,-11.889,-11.860,-11.850,-11.829,-11.790,-11.763,-11.760,-11.744,-11.683,-11.594,
--11.506,-11.414,-11.311,-11.231,-11.211,-11.225,-11.210,-11.157,-11.117,-11.113,-11.099,-11.030,-10.932,-10.864,-10.829,-10.782,
--10.703,-10.614,-10.528,-10.414,-10.240,-10.021,-9.796,-9.581,-9.363,-9.141,-8.924,-8.706,-8.469,-8.218,-7.976,-7.739,
--7.483,-7.213,-6.966,-6.740,-6.473,-6.141,-5.818,-5.563,-5.308,-4.960,-4.558,-4.222,-3.957,-3.642,-3.233,-2.816,
--2.426,-1.969,-1.431,-.958,-.624,-.271,.212,.630,.754,.725,.829,.898,.387,-.795,-1.892,-1.975,
--.787,1.302,3.865,6.597,9.197,11.573,14.090,17.101,20.177,22.327,23.181,23.506,24.226,25.379,26.441,27.317,
-28.332,29.330,29.504,28.382,26.513,24.863,23.851,23.337,23.260,23.788,24.833,25.856,26.349,26.320,26.155,26.152,
-26.310,26.494,26.658,26.886,27.267,27.722,27.997,27.873,27.401,26.865,26.517,26.372,26.278,26.087,25.740,25.272,
-24.797,24.427,24.157,23.859,23.441,22.939,22.429,21.920,21.391,20.859,20.297,19.549,18.491,17.285,16.342,15.936,
-15.913,15.858,15.516,14.978,14.459,13.970,13.300,12.304,11.129,10.059,9.175,8.287,7.234,6.116,5.125,4.253,
-3.321,2.266,1.203,.198,-.813,-1.832,-2.709,-3.381,-4.002,-4.648,-5.019,-4.730,-3.940,-3.424,-3.895,-5.332,
--7.075,-8.473,-9.333,-9.840,-10.236,-10.621,-10.974,-11.264,-11.526,-11.821,-12.135,-12.359,-12.420,-12.407,-12.470,-12.626,
--12.752,-12.817,-13.037,-13.682,-14.751,-15.955,-17.036,-17.983,-18.860,-19.546,-19.820,-19.680,-19.403,-19.228,-19.130,-18.996,
--18.862,-18.831,-18.839,-18.729,-18.510,-18.341,-18.209,-17.869,-17.214,-16.519,-16.140,-16.076,-16.003,-15.694,-15.236,-14.874,
--14.816,-15.153,-15.797,-16.441,-16.776,-16.791,-16.736,-16.718,-16.529,-15.978,-15.235,-14.635,-14.236,-13.796,-13.159,-12.453,
--11.872,-11.491,-11.380,-11.678,-12.348,-12.933,-12.837,-11.897,-10.583,-9.555,-9.104,-9.046,-9.060,-9.011,-8.975,-9.077,
--9.376,-9.858,-10.468,-11.088,-11.554,-11.738,-11.666,-11.509,-11.432,-11.448,-11.446,-11.355,-11.217,-11.107,-11.028,-10.931,
--10.796,-10.649,-10.503,-10.348,-10.184,-10.030,-9.887,-9.728,-9.548,-9.380,-9.244,-9.107,-8.932,-8.733,-8.554,-8.395,
--8.213,-7.992,-7.772,-7.596,-7.453,-7.307,-7.149,-6.996,-6.841,-6.653,-6.425,-6.184,-5.939,-5.653,-5.285,-4.850,
--4.404,-3.972,-3.539,-3.087,-2.633,-2.190,-1.746,-1.279,-.783,-.263,.293,.905,1.566,2.237,2.868,3.419,
-3.870,4.236,4.571,4.926,5.306,5.687,6.063,6.456,6.860,7.232,7.537,7.788,8.020,8.258,8.526,8.850,
-9.223,9.583,9.884,10.157,10.473,10.848,11.238,11.613,11.995,12.407,12.808,13.114,13.254,13.216,13.063,12.907,
-12.834,12.833,12.834,12.800,12.758,12.729,12.693,12.653,12.658,12.738,12.849,12.931,12.984,13.045,13.100,13.106,
-13.062,13.018,13.004,13.024,13.084,13.190,13.295,13.341,13.359,13.434,13.550,13.560,13.381,13.161,13.119,13.261,
-13.365,13.260,13.017,12.822,12.745,12.719,12.682,12.642,12.627,12.643,12.674,12.668,12.519,12.158,11.706,11.433,
-11.477,10.897,11.025,10.918,10.543,10.140,9.953,9.995,10.105,10.160,10.156,10.140,10.122,10.086,10.031,9.976,
-9.941,9.929,9.938,9.969,10.016,10.067,10.118,10.190,10.307,10.463,10.614,10.735,10.857,11.021,11.216,11.397,
-11.553,11.713,11.886,12.035,12.152,12.290,12.502,12.777,13.073,13.372,13.668,13.961,14.275,14.661,15.094,15.446,
-15.636,15.773,16.050,16.531,17.125,17.740,18.280,18.527,18.254,17.576,17.009,16.994,17.436,17.880,18.030,17.911,
-17.583,16.978,16.095,15.145,14.337,13.665,13.013,12.368,11.781,11.205,10.556,9.883,9.334,8.933,8.532,8.020,
-7.446,6.895,6.349,5.767,5.195,4.703,4.246,3.717,3.110,2.522,1.968,1.284,.290,-.964,-2.172,-3.011,
--3.416,-3.614,-3.865,-4.173,-4.307,-4.115,-3.751,-3.525,-3.603,-3.961,-4.587,-5.489,-6.437,-6.941,-6.723,-6.140,
--5.877,-6.193,-6.756,-7.259,-7.918,-9.087,-10.579,-11.733,-12.164,-12.118,-12.011,-11.916,-11.711,-11.489,-11.476,-11.631,
--11.684,-11.620,-11.780,-12.285,-12.632,-12.259,-11.488,-11.498,-13.117,-15.770,-17.880,-18.352,-17.533,-16.677,-16.636,-17.239,
--17.851,-18.224,-18.656,-19.467,-20.606,-21.795,-22.803,-23.487,-23.751,-23.657,-23.484,-23.470,-23.552,-23.574,-23.672,-24.141,
--24.893,-25.449,-25.699,-26.292,-27.816,-29.754,-30.819,-30.434,-29.421,-28.984,-29.405,-30.086,-30.567,-30.952,-31.397,-31.724,
--31.766,-31.711,-31.819,-32.002,-32.004,-31.883,-32.005,-32.519,-33.099,-33.338,-33.248,-33.179,-33.302,-33.358,-33.042,-32.520,
--32.340,-32.767,-33.368,-33.470,-32.969,-32.437,-32.377,-32.618,-32.607,-32.099,-31.321,-30.581,-30.028,-29.799,-30.067,-30.778,
--31.534,-31.940,-31.991,-31.977,-32.092,-32.282,-32.438,-32.565,-32.722,-32.912,-33.097,-33.268,-33.456,-33.694,-33.973,-34.227,
--34.375,-34.423,-34.501,-34.749,-35.169,-35.636,-36.061,-36.489,-37.005,-37.592,-38.132,-38.543,-38.851,-39.096,-39.190,-38.950,
--38.329,-37.588,-37.142,-37.199,-37.590,-38.000,-38.307,-38.659,-39.283,-40.283,-41.582,-42.958,-44.138,-44.976,-45.584,-46.222,
--47.009,-47.799,-48.388,-48.773,-49.143,-49.635,-50.197,-50.680,-51.004,-51.195,-51.331,-51.519,-51.874,-52.462,-53.223,-54.006,
--54.699,-55.304,-55.878,-56.447,-57.018,-57.632,-58.313,-58.988,-59.531,-59.922,-60.276,-60.687,-61.121,-61.536,-62.005,-62.635,
--63.394,-64.155,-64.886,-65.697,-66.658,-67.671,-68.573,-69.280,-69.813,-70.238,-70.624,-71.019,-71.415,-71.773,-72.098,-72.430,
--72.769,-73.073,-73.346,-73.657,-74.014,-74.321,-74.512,-74.650,-74.817,-74.979,-75.051,-75.056,-75.097,-75.184,-75.218,-75.145,
--75.037,-74.971,-74.909,-74.760,-74.515,-74.285,-74.199,-74.264,-74.352,-74.321,-74.170,-74.022,-73.967,-73.957,-73.883,-73.685,
--73.330,-72.788,-72.102,-71.434,-70.923,-70.540,-70.187,-69.885,-69.741,-69.738,-69.716,-69.570,-69.352,-69.142,-68.958,-68.768,
--68.482,-67.928,-67.025,-65.994,-65.210,-64.806,-64.605,-64.488,-64.506,-64.501,-63.963,-62.634,-61.026,-59.968,-59.661,-59.539,
--59.028,-58.084,-56.957,-55.839,-54.889,-54.295,-54.032,-53.748,-53.101,-52.086,-50.889,-49.598,-48.237,-46.929,-45.798,-44.803,
--43.853,-42.966,-42.143,-41.228,-40.138,-39.116,-38.434,-37.916,-37.089,-35.866,-34.700,-33.946,-33.364,-32.468,-31.144,-29.666,
--28.289,-27.072,-26.033,-25.204,-24.552,-24.006,-23.548,-23.117,-22.490,-21.456,-20.108,-18.767,-17.615,-16.575,-15.553,-14.543,
--13.435,-11.998,-10.234,-8.537,-7.230,-6.133,-4.901,-3.752,-3.431,-4.300,-5.752,-6.798,-7.092,-7.075,-7.200,-7.364,
--7.229,-6.776,-6.280,-5.862,-5.377,-4.765,-4.259,-4.084,-4.091,-3.860,-3.138,-2.051,-.872,.268,1.395,2.490,
-3.411,4.058,4.599,5.404,6.666,8.079,9.021,9.159,8.801,8.556,8.704,9.018,9.189,9.226,9.396,9.886,
-10.646,11.488,12.235,12.825,13.349,13.946,14.612,15.222,15.801,16.651,18.004,19.652,21.191,22.648,24.563,27.266,
-30.275,32.615,33.654,33.481,32.615,31.589,30.728,30.015,29.108,27.744,26.266,25.526,26.075,27.552,29.065,30.060,
-30.628,31.075,31.506,31.911,32.396,33.131,34.151,35.354,36.662,38.075,39.581,41.112,42.603,44.006,45.264,46.324,
-47.204,47.990,48.732,49.385,49.873,50.212,50.545,51.039,51.743,52.551,53.304,53.936,54.515,55.141,55.836,56.540,
-57.182,57.741,58.261,58.837,59.520,60.205,60.666,60.787,60.725,60.756,60.977,61.282,61.640,62.225,63.133,64.091,
-64.620,64.522,64.071,63.701,63.617,63.761,64.023,64.344,64.676,64.986,65.330,65.809,66.429,67.068,67.635,68.128,
-68.508,68.630,68.461,68.290,68.524,69.237,70.072,70.669,71.044,71.459,72.055,72.756,73.454,74.062,74.408,74.302,
-73.798,73.207,72.738,72.267,71.614,70.917,70.509,70.439,70.341,69.877,69.151,68.574,68.416,68.683,69.319,70.310,
-71.481,72.446,72.966,73.333,74.161,75.705,77.504,78.798,79.219,78.976,78.472,77.935,77.410,76.893,76.359,75.757,
-75.091,74.462,73.945,73.497,73.072,72.751,72.642,72.693,72.721,72.596,72.312,71.881,71.301,70.670,70.191,69.968,
-69.841,69.501,68.794,67.895,67.213,67.069,67.403,67.781,67.749,67.201,66.388,65.594,64.869,64.057,63.009,61.800,
-60.795,60.412,60.697,61.205,61.513,61.775,62.424,63.267,63.352,62.063,60.101,58.894,59.097,60.053,60.717,60.679,
-60.146,59.385,58.532,57.778,57.360,57.364,57.689,58.180,58.652,58.858,58.666,58.254,57.954,57.856,57.727,57.344,
-56.778,56.268,55.945,55.751,55.548,55.192,54.548,53.574,52.419,51.386,50.723,50.434,50.303,50.102,49.779,49.420,
-49.052,48.548,47.776,46.806,45.892,45.251,44.872,44.551,44.078,43.414,42.727,42.231,41.961,41.703,41.234,40.594,
-40.028,39.673,39.401,39.047,38.639,38.302,38.011,37.608,37.063,36.551,36.225,36.042,35.927,36.000,36.422,37.033,
-37.331,36.965,36.113,35.243,34.579,33.985,33.351,32.803,32.440,32.093,31.551,30.914,30.463,30.240,30.006,29.638,
-29.303,29.144,29.016,28.715,28.317,28.065,28.001,27.925,27.718,27.494,27.383,27.317,27.141,26.818,26.427,26.022,
-25.586,25.099,24.563,23.967,23.287,22.561,21.929,21.539,21.405,21.368,21.233,20.926,20.503,20.037,19.557,19.105,
-18.753,18.510,18.280,17.971,17.599,17.217,16.824,16.428,16.109,15.896,15.648,15.238,14.809,14.665,14.873,15.175,
-15.347,15.426,15.505,15.511,15.367,15.199,15.137,15.043,14.691,14.165,13.787,13.646,13.445,12.921,12.195,11.552,
-11.078,10.675,10.308,10.038,9.838,9.572,9.170,8.725,8.374,8.167,8.058,7.967,7.851,7.740,7.690,7.677,
-7.585,7.339,7.034,6.841,6.808,6.840,6.840,6.786,6.665,6.441,6.130,5.857,5.760,5.854,6.004,6.035,
-5.864,5.566,5.306,5.191,5.175,5.145,5.066,4.970,4.837,4.576,4.164,3.728,3.421,3.249,3.085,2.822,
-2.468,2.110,1.826,1.637,1.488,1.289,1.001,.672,.372,.107,-.164,-.448,-.698,-.885,-1.048,-1.246,
--1.474,-1.676,-1.820,-1.933,-2.042,-2.120,-2.130,-2.118,-2.193,-2.395,-2.634,-2.809,-2.936,-3.081,-3.229,-3.318,
--3.359,-3.373,-3.195,-2.563,-1.505,-.509,-.134,-.485,-1.219,-1.974,-2.639,-3.226,-3.699,-4.015,-4.221,-4.407,
--4.623,-4.890,-5.226,-5.596,-5.918,-6.157,-6.362,-6.578,-6.777,-6.932,-7.081,-7.252,-7.410,-7.520,-7.631,-7.792,
--7.964,-8.089,-8.197,-8.360,-8.564,-8.731,-8.849,-8.980,-9.129,-9.231,-9.262,-9.287,-9.352,-9.434,-9.510,-9.616,
--9.761,-9.875,-9.891,-9.852,-9.852,-9.924,-10.018,-10.091,-10.142,-10.188,-10.225,-10.240,-10.227,-10.205,-10.215,-10.292,
--10.414,-10.511,-10.534,-10.500,-10.456,-10.428,-10.423,-10.448,-10.497,-10.532,-10.521,-10.477,-10.441,-10.438,-10.473,-10.545,
--10.635,-10.706,-10.729,-10.716,-10.691,-10.661,-10.624,-10.596,-10.585,-10.567,-10.514,-10.438,-10.366,-10.295,-10.204,-10.099,
--10.004,-9.906,-9.768,-9.586,-9.401,-9.237,-9.078,-8.916,-8.770,-8.652,-8.539,-8.416,-8.306,-8.229,-8.170,-8.106,
--8.043,-7.996,-7.951,-7.886,-7.809,-7.747,-7.701,-7.645,-7.583,-7.550,-7.572,-7.628,-7.683,-7.724,-7.765,-7.817,
--7.873,-7.918,-7.953,-7.993,-8.056,-8.141,-8.242,-8.357,-8.490,-8.632,-8.762,-8.872,-8.988,-9.143,-9.344,-9.568,
--9.791,-10.021,-10.278,-10.561,-10.819,-10.990,-11.056,-11.074,-11.122,-11.231,-11.362,-11.458,-11.495,-11.496,-11.505,-11.551,
--11.629,-11.705,-11.746,-11.753,-11.746,-11.739,-11.725,-11.706,-11.690,-11.671,-11.632,-11.581,-11.553,-11.559,-11.559,-11.505,
--11.406,-11.299,-11.196,-11.097,-11.026,-11.015,-11.036,-11.020,-10.941,-10.856,-10.822,-10.812,-10.770,-10.695,-10.643,-10.625,
--10.588,-10.501,-10.395,-10.310,-10.220,-10.074,-9.869,-9.651,-9.445,-9.235,-9.013,-8.787,-8.558,-8.312,-8.059,-7.825,
--7.599,-7.344,-7.073,-6.847,-6.668,-6.435,-6.085,-5.707,-5.416,-5.182,-4.890,-4.531,-4.207,-3.928,-3.588,-3.162,
--2.766,-2.439,-2.042,-1.495,-.947,-.554,-.219,.221,.666,.885,.929,1.065,1.261,1.068,.215,-.930,
--1.662,-1.518,-.379,1.716,4.521,7.524,10.315,12.983,15.815,18.661,20.991,22.610,23.878,25.112,26.241,27.313,
-28.799,30.853,32.558,32.633,30.931,28.680,27.081,26.192,25.453,24.805,24.733,25.396,26.264,26.713,26.635,26.336,
-26.100,26.007,26.044,26.223,26.603,27.221,27.954,28.472,28.468,27.979,27.366,26.937,26.694,26.482,26.241,25.997,
-25.714,25.332,24.892,24.497,24.168,23.838,23.481,23.149,22.872,22.597,22.243,21.721,20.930,19.841,18.646,17.708,
-17.258,17.168,17.085,16.778,16.291,15.752,15.135,14.289,13.180,12.022,11.052,10.241,9.328,8.170,6.935,5.860,
-4.924,3.927,2.812,1.725,.749,-.213,-1.227,-2.181,-2.976,-3.683,-4.322,-4.616,-4.273,-3.529,-3.150,-3.733,
--5.122,-6.632,-7.738,-8.436,-9.009,-9.622,-10.208,-10.625,-10.843,-10.985,-11.203,-11.521,-11.811,-11.953,-11.981,-12.013,
--12.078,-12.116,-12.176,-12.525,-13.416,-14.770,-16.189,-17.325,-18.147,-18.797,-19.277,-19.422,-19.162,-18.675,-18.220,-17.934,
--17.841,-17.931,-18.119,-18.212,-18.092,-17.887,-17.789,-17.721,-17.389,-16.721,-16.042,-15.697,-15.638,-15.559,-15.323,-15.064,
--14.943,-15.012,-15.299,-15.804,-16.347,-16.650,-16.665,-16.633,-16.682,-16.545,-15.901,-14.881,-13.981,-13.489,-13.208,-12.822,
--12.294,-11.814,-11.518,-11.468,-11.776,-12.462,-13.174,-13.271,-12.399,-10.909,-9.594,-8.997,-9.026,-9.221,-9.264,-9.203,
--9.277,-9.639,-10.249,-10.932,-11.488,-11.783,-11.813,-11.689,-11.548,-11.455,-11.374,-11.251,-11.091,-10.952,-10.873,-10.830,
--10.771,-10.673,-10.558,-10.440,-10.308,-10.143,-9.958,-9.781,-9.628,-9.489,-9.354,-9.221,-9.076,-8.896,-8.691,-8.503,
--8.358,-8.227,-8.070,-7.893,-7.740,-7.614,-7.472,-7.287,-7.078,-6.875,-6.674,-6.464,-6.253,-6.036,-5.765,-5.401,
--4.978,-4.563,-4.168,-3.744,-3.273,-2.802,-2.367,-1.938,-1.464,-.949,-.428,.095,.650,1.251,1.880,2.508,
-3.098,3.614,4.042,4.416,4.782,5.142,5.475,5.797,6.154,6.544,6.902,7.173,7.376,7.570,7.793,8.073,
-8.434,8.861,9.275,9.607,9.876,10.161,10.509,10.897,11.291,11.687,12.086,12.461,12.758,12.917,12.904,12.757,
-12.591,12.505,12.502,12.514,12.501,12.481,12.461,12.416,12.347,12.308,12.322,12.346,12.341,12.355,12.447,12.583,
-12.668,12.677,12.679,12.732,12.823,12.917,13.005,13.074,13.110,13.146,13.237,13.359,13.384,13.247,13.074,13.047,
-13.163,13.218,13.055,12.749,12.496,12.398,12.408,12.444,12.472,12.482,12.465,12.400,12.244,11.935,11.478,11.032,
-10.823,10.897,10.543,10.555,10.472,10.313,10.204,10.208,10.261,10.281,10.267,10.262,10.274,10.276,10.251,10.205,
-10.150,10.105,10.091,10.114,10.155,10.200,10.261,10.354,10.474,10.607,10.745,10.887,11.028,11.177,11.356,11.565,
-11.772,11.950,12.103,12.245,12.378,12.508,12.665,12.879,13.146,13.434,13.711,13.955,14.182,14.472,14.900,15.406,
-15.812,16.034,16.207,16.513,16.970,17.487,18.039,18.575,18.837,18.547,17.877,17.457,17.707,18.327,18.686,18.570,
-18.274,18.022,17.642,16.912,15.936,15.003,14.224,13.525,12.866,12.279,11.731,11.128,10.483,9.916,9.468,9.041,
-8.542,7.998,7.461,6.911,6.319,5.735,5.223,4.756,4.248,3.677,3.100,2.528,1.849,.918,-.252,-1.427,
--2.300,-2.740,-2.893,-3.002,-3.130,-3.129,-2.896,-2.591,-2.506,-2.779,-3.324,-4.025,-4.832,-5.622,-6.123,-6.161,
--5.923,-5.819,-6.065,-6.549,-7.153,-7.987,-9.145,-10.362,-11.168,-11.397,-11.341,-11.322,-11.340,-11.273,-11.225,-11.405,
--11.745,-11.957,-12.032,-12.342,-13.007,-13.417,-12.808,-11.407,-10.619,-11.750,-14.591,-17.480,-18.815,-18.395,-17.301,-16.674,
--16.817,-17.365,-17.985,-18.701,-19.650,-20.810,-22.015,-23.080,-23.825,-24.108,-23.990,-23.762,-23.663,-23.642,-23.566,-23.574,
--23.920,-24.455,-24.670,-24.518,-24.809,-26.317,-28.559,-30.050,-29.909,-28.835,-28.202,-28.549,-29.339,-29.949,-30.336,-30.684,
--30.934,-30.944,-30.852,-30.924,-31.163,-31.339,-31.385,-31.508,-31.865,-32.319,-32.614,-32.683,-32.678,-32.737,-32.825,-32.822,
--32.716,-32.640,-32.695,-32.765,-32.609,-32.177,-31.746,-31.652,-31.887,-32.066,-31.810,-31.113,-30.339,-29.924,-30.080,-30.659,
--31.269,-31.560,-31.497,-31.341,-31.361,-31.589,-31.876,-32.102,-32.271,-32.441,-32.631,-32.827,-33.008,-33.157,-33.284,-33.424,
--33.599,-33.781,-33.941,-34.113,-34.372,-34.733,-35.120,-35.467,-35.817,-36.274,-36.855,-37.444,-37.919,-38.294,-38.653,-38.946,
--38.920,-38.379,-37.476,-36.692,-36.446,-36.761,-37.315,-37.780,-38.109,-38.536,-39.346,-40.604,-42.053,-43.297,-44.135,-44.715,
--45.324,-46.064,-46.791,-47.364,-47.823,-48.304,-48.834,-49.307,-49.627,-49.804,-49.912,-50.032,-50.261,-50.714,-51.430,-52.295,
--53.107,-53.750,-54.278,-54.814,-55.421,-56.089,-56.795,-57.503,-58.135,-58.610,-58.949,-59.261,-59.613,-59.982,-60.380,-60.912,
--61.651,-62.511,-63.342,-64.121,-64.964,-65.927,-66.915,-67.775,-68.434,-68.914,-69.289,-69.642,-70.018,-70.392,-70.728,-71.054,
--71.423,-71.808,-72.134,-72.403,-72.704,-73.060,-73.372,-73.570,-73.716,-73.881,-74.015,-74.048,-74.030,-74.072,-74.163,-74.189,
--74.114,-74.028,-73.994,-73.946,-73.798,-73.579,-73.410,-73.376,-73.448,-73.516,-73.494,-73.392,-73.299,-73.273,-73.278,-73.216,
--72.995,-72.555,-71.908,-71.202,-70.653,-70.334,-70.098,-69.804,-69.533,-69.453,-69.541,-69.574,-69.413,-69.132,-68.862,-68.650,
--68.447,-68.124,-67.492,-66.497,-65.417,-64.661,-64.360,-64.316,-64.370,-64.508,-64.506,-63.874,-62.458,-60.876,-59.934,-59.710,
--59.561,-58.961,-57.981,-56.931,-55.958,-55.133,-54.575,-54.241,-53.825,-53.064,-52.000,-50.807,-49.546,-48.252,-47.086,-46.151,
--45.299,-44.317,-43.217,-42.138,-41.110,-40.128,-39.342,-38.843,-38.344,-37.431,-36.149,-35.019,-34.340,-33.787,-32.846,-31.434,
--29.889,-28.523,-27.424,-26.565,-25.886,-25.305,-24.783,-24.332,-23.849,-23.078,-21.884,-20.491,-19.240,-18.200,-17.207,-16.208,
--15.255,-14.201,-12.737,-10.871,-9.069,-7.693,-6.551,-5.313,-4.225,-3.999,-4.890,-6.224,-7.045,-7.057,-6.718,-6.535,
--6.542,-6.485,-6.247,-5.902,-5.472,-4.896,-4.239,-3.768,-3.673,-3.778,-3.647,-2.978,-1.864,-.646,.406,1.261,
-2.036,2.802,3.501,4.067,4.586,5.217,5.939,6.476,6.613,6.539,6.694,7.249,7.901,8.278,8.415,8.688,
-9.352,10.291,11.203,11.898,12.403,12.881,13.473,14.149,14.757,15.265,15.896,16.845,17.944,18.857,19.682,21.046,
-23.383,26.243,28.582,29.709,29.792,29.502,29.386,29.561,29.730,29.413,28.408,27.183,26.624,27.182,28.363,29.255,
-29.472,29.413,29.664,30.430,31.559,32.865,34.244,35.623,36.965,38.318,39.743,41.206,42.610,43.902,45.086,46.151,
-47.073,47.861,48.551,49.134,49.569,49.869,50.137,50.504,51.060,51.802,52.624,53.367,53.950,54.445,54.997,55.657,
-56.341,56.953,57.493,58.037,58.663,59.370,60.029,60.420,60.426,60.206,60.099,60.286,60.651,61.043,61.546,62.324,
-63.246,63.866,63.893,63.516,63.191,63.170,63.378,63.652,63.947,64.282,64.658,65.077,65.572,66.140,66.722,67.265,
-67.738,68.038,68.008,67.676,67.412,67.630,68.341,69.153,69.753,70.215,70.779,71.490,72.232,72.958,73.654,74.129,
-74.101,73.559,72.848,72.283,71.840,71.361,70.900,70.661,70.644,70.587,70.294,69.851,69.446,69.135,68.905,68.853,
-69.125,69.672,70.229,70.617,70.995,71.730,73.014,74.656,76.218,77.317,77.803,77.786,77.542,77.336,77.214,76.961,
-76.345,75.410,74.480,73.844,73.504,73.263,72.989,72.707,72.488,72.334,72.172,71.910,71.506,71.026,70.618,70.354,
-70.097,69.579,68.671,67.587,66.813,66.799,67.597,68.738,69.507,69.457,68.680,67.599,66.588,65.799,65.185,64.494,
-63.385,61.798,60.209,59.244,59.058,59.363,60.104,61.607,63.759,65.455,65.447,63.730,61.616,60.367,60.099,60.113,
-59.843,59.176,58.186,57.019,56.000,55.520,55.703,56.350,57.168,57.912,58.339,58.311,57.997,57.787,57.870,58.027,
-57.930,57.538,57.060,56.674,56.406,56.229,56.072,55.742,55.014,53.898,52.713,51.808,51.254,50.876,50.535,50.263,
-50.125,50.039,49.804,49.263,48.415,47.408,46.456,45.719,45.203,44.762,44.250,43.663,43.098,42.610,42.154,41.680,
-41.190,40.702,40.219,39.784,39.478,39.298,39.083,38.658,38.051,37.464,37.037,36.723,36.476,36.464,36.960,37.942,
-38.902,39.186,38.583,37.507,36.515,35.757,35.009,34.172,33.466,33.048,32.712,32.181,31.537,31.098,30.919,30.727,
-30.356,29.985,29.796,29.651,29.321,28.854,28.496,28.313,28.141,27.886,27.660,27.563,27.507,27.353,27.092,26.803,
-26.498,26.120,25.634,25.055,24.395,23.652,22.872,22.171,21.678,21.433,21.340,21.226,20.975,20.601,20.182,19.763,
-19.349,18.958,18.621,18.322,17.996,17.596,17.129,16.671,16.347,16.227,16.180,15.914,15.315,14.682,14.461,14.725,
-15.114,15.299,15.316,15.341,15.370,15.309,15.211,15.180,15.114,14.819,14.338,13.937,13.711,13.426,12.852,12.082,
-11.393,10.928,10.625,10.383,10.137,9.836,9.457,9.045,8.675,8.387,8.184,8.062,7.977,7.853,7.692,7.587,
-7.576,7.528,7.294,6.923,6.622,6.513,6.535,6.579,6.581,6.486,6.241,5.884,5.576,5.455,5.503,5.576,
-5.541,5.353,5.076,4.847,4.775,4.836,4.887,4.823,4.667,4.473,4.233,3.920,3.581,3.300,3.083,2.860,
-2.578,2.252,1.930,1.650,1.435,1.271,1.087,.814,.472,.154,-.099,-.345,-.639,-.945,-1.185,-1.357,
--1.529,-1.728,-1.904,-2.031,-2.162,-2.340,-2.507,-2.563,-2.535,-2.565,-2.728,-2.929,-3.054,-3.127,-3.238,-3.386,
--3.505,-3.617,-3.779,-3.850,-3.527,-2.723,-1.806,-1.298,-1.393,-1.870,-2.436,-2.970,-3.459,-3.872,-4.176,-4.397,
--4.582,-4.768,-4.998,-5.308,-5.661,-5.973,-6.219,-6.459,-6.724,-6.959,-7.124,-7.256,-7.401,-7.533,-7.621,-7.712,
--7.853,-8.006,-8.114,-8.201,-8.335,-8.505,-8.648,-8.761,-8.897,-9.048,-9.144,-9.175,-9.213,-9.296,-9.376,-9.427,
--9.498,-9.617,-9.717,-9.730,-9.697,-9.716,-9.808,-9.914,-9.989,-10.043,-10.095,-10.126,-10.115,-10.073,-10.035,-10.039,
--10.101,-10.197,-10.277,-10.304,-10.278,-10.227,-10.176,-10.143,-10.149,-10.196,-10.250,-10.268,-10.240,-10.187,-10.148,-10.158,
--10.226,-10.321,-10.383,-10.388,-10.372,-10.368,-10.360,-10.320,-10.255,-10.200,-10.162,-10.117,-10.051,-9.970,-9.876,-9.767,
--9.665,-9.586,-9.502,-9.369,-9.187,-9.004,-8.856,-8.722,-8.578,-8.433,-8.308,-8.201,-8.098,-8.000,-7.918,-7.854,
--7.801,-7.754,-7.706,-7.647,-7.579,-7.513,-7.458,-7.405,-7.348,-7.304,-7.294,-7.319,-7.365,-7.421,-7.477,-7.525,
--7.564,-7.607,-7.660,-7.712,-7.758,-7.810,-7.883,-7.979,-8.093,-8.228,-8.378,-8.520,-8.641,-8.763,-8.927,-9.141,
--9.375,-9.600,-9.824,-10.077,-10.357,-10.612,-10.774,-10.827,-10.830,-10.873,-10.989,-11.128,-11.218,-11.236,-11.215,-11.199,
--11.215,-11.269,-11.351,-11.428,-11.472,-11.479,-11.470,-11.465,-11.470,-11.477,-11.472,-11.443,-11.398,-11.365,-11.359,-11.353,
--11.302,-11.204,-11.095,-11.003,-10.926,-10.872,-10.855,-10.860,-10.828,-10.727,-10.608,-10.541,-10.530,-10.517,-10.475,-10.433,
--10.405,-10.356,-10.259,-10.147,-10.064,-9.987,-9.860,-9.673,-9.471,-9.284,-9.093,-8.880,-8.650,-8.408,-8.151,-7.899,
--7.680,-7.474,-7.224,-6.933,-6.687,-6.521,-6.334,-6.020,-5.629,-5.296,-5.050,-4.797,-4.498,-4.208,-3.932,-3.580,
--3.132,-2.715,-2.395,-2.046,-1.535,-.957,-.495,-.130,.295,.771,1.107,1.249,1.369,1.545,1.539,1.069,
-.162,-.842,-1.490,-1.308,.067,2.580,5.673,8.733,11.585,14.374,17.110,19.634,21.929,24.075,25.903,27.172,
-28.207,29.810,32.111,33.947,33.986,32.339,30.444,29.339,28.692,27.734,26.546,25.897,26.113,26.685,26.956,26.773,
-26.379,26.015,25.796,25.784,26.014,26.492,27.203,28.021,28.633,28.743,28.389,27.917,27.563,27.247,26.841,26.455,
-26.265,26.192,25.981,25.555,25.086,24.722,24.422,24.113,23.842,23.674,23.531,23.234,22.645,21.747,20.640,19.544,
-18.730,18.333,18.219,18.105,17.810,17.347,16.780,16.060,15.096,13.950,12.855,11.983,11.216,10.271,9.055,7.781,
-6.680,5.713,4.676,3.541,2.467,1.524,.569,-.501,-1.578,-2.518,-3.342,-4.059,-4.450,-4.281,-3.774,-3.602,
--4.273,-5.621,-7.009,-7.968,-8.512,-8.927,-9.397,-9.883,-10.250,-10.448,-10.576,-10.772,-11.064,-11.337,-11.481,-11.524,
--11.577,-11.681,-11.802,-12.003,-12.523,-13.566,-15.020,-16.477,-17.567,-18.238,-18.666,-18.956,-19.011,-18.708,-18.101,-17.430,
--16.966,-16.873,-17.121,-17.480,-17.658,-17.566,-17.390,-17.324,-17.267,-16.955,-16.370,-15.838,-15.638,-15.683,-15.710,-15.641,
--15.579,-15.560,-15.541,-15.602,-15.893,-16.325,-16.579,-16.528,-16.435,-16.520,-16.504,-15.901,-14.715,-13.547,-12.924,-12.760,
--12.618,-12.291,-11.924,-11.703,-11.715,-12.067,-12.822,-13.660,-13.865,-12.934,-11.211,-9.682,-9.066,-9.223,-9.478,-9.401,
--9.148,-9.140,-9.587,-10.346,-11.094,-11.575,-11.718,-11.645,-11.534,-11.474,-11.414,-11.278,-11.073,-10.880,-10.751,-10.676,
--10.618,-10.554,-10.481,-10.404,-10.329,-10.239,-10.098,-9.897,-9.678,-9.499,-9.369,-9.254,-9.125,-8.977,-8.804,-8.603,
--8.406,-8.254,-8.151,-8.050,-7.932,-7.819,-7.723,-7.601,-7.409,-7.168,-6.927,-6.705,-6.493,-6.291,-6.082,-5.818,
--5.464,-5.067,-4.696,-4.343,-3.933,-3.445,-2.953,-2.511,-2.081,-1.598,-1.070,-.547,-.043,.468,.997,1.539,
-2.105,2.698,3.270,3.762,4.171,4.548,4.915,5.252,5.565,5.896,6.256,6.597,6.874,7.102,7.330,7.579,
-7.861,8.204,8.614,9.032,9.389,9.676,9.950,10.251,10.576,10.916,11.278,11.665,12.050,12.379,12.586,12.619,
-12.494,12.315,12.197,12.171,12.187,12.196,12.185,12.145,12.061,11.954,11.879,11.848,11.816,11.772,11.790,11.935,
-12.150,12.314,12.389,12.450,12.566,12.716,12.842,12.925,12.973,12.993,13.007,13.047,13.105,13.113,13.039,12.961,
-12.987,13.086,13.098,12.908,12.584,12.300,12.166,12.168,12.228,12.262,12.213,12.070,11.876,11.663,11.410,11.089,
-10.767,10.573,10.543,10.714,10.534,10.439,10.428,10.482,10.534,10.516,10.448,10.401,10.404,10.413,10.394,10.362,
-10.337,10.308,10.280,10.285,10.334,10.390,10.430,10.487,10.603,10.759,10.904,11.027,11.156,11.311,11.482,11.666,
-11.871,12.088,12.290,12.458,12.599,12.732,12.884,13.072,13.302,13.559,13.822,14.066,14.262,14.430,14.670,15.076,
-15.587,16.020,16.294,16.534,16.878,17.299,17.721,18.192,18.715,19.002,18.732,18.104,17.815,18.262,19.017,19.350,
-19.114,18.781,18.666,18.508,17.923,16.942,15.895,14.976,14.150,13.386,12.734,12.180,11.618,11.007,10.427,9.940,
-9.500,9.028,8.512,7.970,7.401,6.807,6.228,5.701,5.206,4.693,4.149,3.598,3.037,2.392,1.563,.533,
--.545,-1.409,-1.897,-2.073,-2.111,-2.079,-1.923,-1.673,-1.544,-1.752,-2.277,-2.907,-3.493,-4.058,-4.644,-5.155,
--5.443,-5.517,-5.582,-5.866,-6.453,-7.296,-8.293,-9.291,-10.075,-10.486,-10.575,-10.579,-10.674,-10.828,-10.945,-11.071,
--11.327,-11.681,-11.989,-12.297,-12.863,-13.681,-14.126,-13.480,-11.943,-10.861,-11.606,-14.178,-17.072,-18.607,-18.340,-17.189,
--16.377,-16.427,-17.105,-18.009,-18.977,-20.017,-21.105,-22.157,-23.098,-23.839,-24.261,-24.342,-24.245,-24.148,-24.039,-23.851,
--23.730,-23.906,-24.239,-24.252,-23.893,-23.978,-25.353,-27.637,-29.304,-29.289,-28.171,-27.443,-27.843,-28.817,-29.502,-29.705,
--29.764,-29.879,-29.954,-29.942,-29.998,-30.245,-30.613,-30.955,-31.216,-31.416,-31.586,-31.735,-31.837,-31.847,-31.772,-31.734,
--31.853,-32.065,-32.155,-32.013,-31.747,-31.508,-31.309,-31.119,-31.027,-31.145,-31.352,-31.322,-30.900,-30.366,-30.192,-30.547,
--31.113,-31.419,-31.297,-30.979,-30.800,-30.899,-31.189,-31.527,-31.830,-32.071,-32.244,-32.371,-32.498,-32.639,-32.758,-32.823,
--32.881,-33.016,-33.252,-33.526,-33.776,-34.013,-34.287,-34.599,-34.909,-35.229,-35.643,-36.195,-36.789,-37.279,-37.656,-38.053,
--38.507,-38.786,-38.557,-37.773,-36.816,-36.223,-36.256,-36.730,-37.242,-37.577,-37.906,-38.600,-39.810,-41.259,-42.489,-43.294,
--43.857,-44.458,-45.151,-45.807,-46.365,-46.901,-47.468,-47.974,-48.296,-48.439,-48.521,-48.651,-48.879,-49.244,-49.797,-50.535,
--51.346,-52.080,-52.673,-53.192,-53.751,-54.408,-55.142,-55.894,-56.593,-57.166,-57.586,-57.906,-58.209,-58.531,-58.875,-59.301,
--59.922,-60.758,-61.675,-62.529,-63.328,-64.182,-65.127,-66.068,-66.878,-67.497,-67.938,-68.266,-68.577,-68.925,-69.288,-69.625,
--69.969,-70.370,-70.792,-71.149,-71.440,-71.757,-72.118,-72.429,-72.629,-72.778,-72.930,-73.031,-73.035,-73.015,-73.066,-73.149,
--73.155,-73.081,-73.023,-73.002,-72.929,-72.758,-72.575,-72.496,-72.538,-72.631,-72.704,-72.725,-72.699,-72.656,-72.623,-72.585,
--72.476,-72.197,-71.683,-70.996,-70.356,-69.992,-69.899,-69.846,-69.672,-69.482,-69.454,-69.525,-69.450,-69.133,-68.735,-68.448,
--68.297,-68.154,-67.806,-67.040,-65.848,-64.600,-63.800,-63.628,-63.854,-64.208,-64.538,-64.560,-63.848,-62.376,-60.811,-59.889,
--59.593,-59.294,-58.600,-57.692,-56.859,-56.110,-55.386,-54.771,-54.283,-53.706,-52.840,-51.757,-50.634,-49.514,-48.402,-47.423,
--46.645,-45.874,-44.838,-43.520,-42.135,-40.890,-39.924,-39.349,-39.068,-38.650,-37.714,-36.433,-35.368,-34.738,-34.146,-33.116,
--31.656,-30.145,-28.870,-27.877,-27.105,-26.477,-25.919,-25.414,-24.966,-24.433,-23.548,-22.257,-20.878,-19.755,-18.869,-17.983,
--17.029,-16.057,-14.913,-13.327,-11.395,-9.623,-8.335,-7.321,-6.297,-5.502,-5.465,-6.245,-7.205,-7.634,-7.398,-6.873,
--6.432,-6.150,-5.919,-5.637,-5.233,-4.643,-3.878,-3.099,-2.539,-2.293,-2.188,-1.902,-1.236,-.269,.711,1.461,
-1.974,2.456,3.087,3.798,4.318,4.482,4.429,4.409,4.480,4.535,4.611,4.969,5.739,6.665,7.365,7.811,
-8.342,9.221,10.332,11.352,12.092,12.609,13.086,13.661,14.322,14.945,15.479,16.049,16.773,17.497,17.950,18.249,
-19.008,20.703,23.028,25.101,26.319,26.832,27.194,27.785,28.572,29.224,29.360,28.878,28.192,27.966,28.440,29.133,
-29.394,29.176,29.084,29.687,30.993,32.612,34.209,35.673,37.023,38.315,39.610,40.928,42.223,43.444,44.579,45.615,
-46.514,47.268,47.926,48.512,48.968,49.245,49.423,49.664,50.078,50.696,51.508,52.432,53.284,53.912,54.367,54.852,
-55.474,56.145,56.743,57.276,57.835,58.458,59.094,59.629,59.911,59.842,59.550,59.362,59.514,59.918,60.349,60.800,
-61.453,62.288,62.937,63.070,62.810,62.589,62.668,62.949,63.233,63.498,63.843,64.302,64.815,65.322,65.799,66.242,
-66.660,67.043,67.278,67.214,66.887,66.644,66.851,67.505,68.259,68.864,69.412,70.093,70.888,71.654,72.365,73.057,
-73.574,73.626,73.144,72.410,71.759,71.275,70.892,70.614,70.499,70.488,70.446,70.335,70.216,70.062,69.749,69.273,
-68.847,68.685,68.774,68.947,69.132,69.409,69.888,70.607,71.568,72.721,73.893,74.826,75.404,75.789,76.222,76.678,
-76.817,76.347,75.389,74.422,73.857,73.709,73.665,73.414,72.900,72.311,71.864,71.609,71.429,71.212,70.970,70.744,
-70.415,69.729,68.566,67.171,66.094,65.900,66.813,68.489,70.096,70.793,70.317,69.079,67.691,66.518,65.720,65.406,
-65.427,65.175,64.041,62.143,60.269,59.029,58.448,58.540,59.723,62.103,64.613,65.581,64.337,61.864,59.698,58.538,
-58.092,57.805,57.324,56.485,55.337,54.250,53.682,53.755,54.252,54.969,55.843,56.703,57.238,57.378,57.447,57.758,
-58.192,58.391,58.239,57.923,57.605,57.282,56.971,56.764,56.609,56.228,55.439,54.412,53.462,52.681,51.939,51.195,
-50.613,50.344,50.326,50.357,50.239,49.816,49.003,47.891,46.775,45.945,45.462,45.164,44.851,44.423,43.897,43.381,
-42.960,42.557,41.960,41.127,40.371,40.041,40.043,39.892,39.325,38.641,38.276,38.202,38.021,37.605,37.390,37.873,
-38.949,39.885,39.995,39.262,38.272,37.548,37.044,36.350,35.313,34.247,33.497,33.015,32.557,32.115,31.885,31.843,
-31.685,31.252,30.750,30.419,30.185,29.832,29.356,28.930,28.613,28.321,28.041,27.873,27.826,27.754,27.556,27.294,
-27.056,26.809,26.471,26.025,25.499,24.886,24.168,23.396,22.683,22.135,21.791,21.597,21.423,21.144,20.748,20.325,
-19.935,19.543,19.095,18.624,18.208,17.852,17.466,16.987,16.520,16.286,16.376,16.539,16.335,15.621,14.801,14.442,
-14.654,15.022,15.157,15.098,15.084,15.158,15.188,15.155,15.147,15.129,14.933,14.518,14.036,13.596,13.119,12.508,
-11.841,11.288,10.923,10.689,10.483,10.210,9.815,9.346,8.917,8.594,8.344,8.145,8.038,8.017,7.969,7.815,
-7.628,7.501,7.376,7.119,6.737,6.393,6.205,6.158,6.185,6.227,6.191,5.989,5.661,5.366,5.215,5.165,
-5.117,5.039,4.930,4.780,4.615,4.525,4.561,4.632,4.596,4.408,4.137,3.858,3.599,3.367,3.158,2.935,
-2.670,2.379,2.097,1.821,1.538,1.283,1.098,.939,.698,.349,-.009,-.288,-.521,-.795,-1.106,-1.374,
--1.573,-1.756,-1.957,-2.134,-2.259,-2.394,-2.603,-2.834,-2.971,-2.993,-3.006,-3.090,-3.194,-3.244,-3.274,-3.362,
--3.484,-3.562,-3.623,-3.763,-3.920,-3.845,-3.407,-2.832,-2.507,-2.588,-2.911,-3.253,-3.548,-3.832,-4.122,-4.392,
--4.625,-4.822,-5.003,-5.215,-5.498,-5.818,-6.101,-6.334,-6.576,-6.852,-7.105,-7.289,-7.433,-7.573,-7.686,-7.753,
--7.822,-7.943,-8.087,-8.197,-8.284,-8.398,-8.526,-8.624,-8.702,-8.813,-8.945,-9.036,-9.081,-9.143,-9.245,-9.329,
--9.363,-9.401,-9.483,-9.563,-9.581,-9.569,-9.605,-9.701,-9.797,-9.860,-9.903,-9.940,-9.952,-9.930,-9.899,-9.887,
--9.905,-9.943,-9.989,-10.028,-10.040,-10.016,-9.960,-9.889,-9.831,-9.816,-9.854,-9.925,-9.986,-10.005,-9.975,-9.928,
--9.919,-9.976,-10.063,-10.107,-10.090,-10.066,-10.080,-10.100,-10.062,-9.963,-9.864,-9.805,-9.768,-9.715,-9.624,-9.499,
--9.361,-9.244,-9.163,-9.087,-8.969,-8.803,-8.627,-8.473,-8.333,-8.187,-8.043,-7.920,-7.825,-7.742,-7.657,-7.571,
--7.502,-7.460,-7.431,-7.387,-7.320,-7.257,-7.215,-7.176,-7.115,-7.050,-7.023,-7.040,-7.065,-7.086,-7.129,-7.207,
--7.285,-7.329,-7.350,-7.385,-7.440,-7.501,-7.566,-7.647,-7.744,-7.850,-7.972,-8.120,-8.279,-8.423,-8.562,-8.733,
--8.952,-9.194,-9.423,-9.635,-9.853,-10.088,-10.312,-10.473,-10.548,-10.578,-10.634,-10.742,-10.855,-10.915,-10.918,-10.901,
--10.890,-10.888,-10.914,-10.986,-11.088,-11.167,-11.189,-11.178,-11.172,-11.185,-11.206,-11.222,-11.228,-11.216,-11.189,-11.161,
--11.130,-11.073,-10.979,-10.880,-10.812,-10.774,-10.743,-10.707,-10.666,-10.600,-10.492,-10.373,-10.300,-10.290,-10.298,-10.281,
--10.240,-10.192,-10.123,-10.023,-9.914,-9.826,-9.739,-9.607,-9.428,-9.245,-9.082,-8.912,-8.708,-8.474,-8.229,-7.977,
--7.731,-7.519,-7.327,-7.094,-6.805,-6.534,-6.349,-6.188,-5.936,-5.585,-5.243,-4.970,-4.714,-4.428,-4.147,-3.885,
--3.569,-3.149,-2.707,-2.338,-1.986,-1.533,-.999,-.519,-.124,.304,.817,1.290,1.592,1.755,1.869,1.901,
-1.689,1.091,.118,-.943,-1.509,-.947,.948,3.776,6.918,10.014,12.990,15.813,18.490,21.173,23.909,26.325,
-27.963,29.028,30.301,32.040,33.390,33.375,32.224,31.115,30.660,30.271,29.239,27.841,26.964,26.933,27.237,27.279,
-26.968,26.539,26.170,25.939,25.915,26.134,26.567,27.170,27.853,28.399,28.589,28.460,28.262,28.096,27.793,27.264,
-26.768,26.602,26.675,26.619,26.283,25.872,25.588,25.373,25.082,24.727,24.405,24.083,23.602,22.865,21.919,20.905,
-20.002,19.376,19.079,18.968,18.808,18.470,17.989,17.416,16.698,15.762,14.691,13.701,12.903,12.144,11.171,9.948,
-8.704,7.639,6.685,5.648,4.507,3.410,2.405,1.359,.188,-.983,-2.005,-2.895,-3.699,-4.272,-4.423,-4.304,
--4.444,-5.266,-6.649,-8.043,-8.974,-9.375,-9.506,-9.652,-9.905,-10.170,-10.337,-10.422,-10.540,-10.748,-10.970,-11.111,
--11.197,-11.330,-11.560,-11.868,-12.292,-12.980,-14.043,-15.372,-16.660,-17.625,-18.202,-18.513,-18.668,-18.628,-18.276,-17.612,
--16.840,-16.275,-16.136,-16.391,-16.781,-17.020,-17.029,-16.947,-16.908,-16.840,-16.592,-16.209,-15.947,-15.975,-16.189,-16.392,
--16.526,-16.605,-16.556,-16.331,-16.117,-16.183,-16.473,-16.605,-16.401,-16.168,-16.224,-16.312,-15.830,-14.655,-13.401,-12.718,
--12.595,-12.539,-12.272,-11.947,-11.798,-11.913,-12.371,-13.238,-14.190,-14.429,-13.378,-11.452,-9.827,-9.307,-9.608,-9.852,
--9.603,-9.194,-9.180,-9.724,-10.543,-11.239,-11.579,-11.573,-11.411,-11.304,-11.307,-11.305,-11.189,-10.992,-10.820,-10.702,
--10.593,-10.470,-10.362,-10.280,-10.205,-10.133,-10.071,-9.985,-9.827,-9.610,-9.406,-9.260,-9.144,-9.023,-8.894,-8.755,
--8.579,-8.372,-8.192,-8.080,-8.010,-7.935,-7.852,-7.773,-7.668,-7.494,-7.258,-7.005,-6.757,-6.515,-6.283,-6.055,
--5.787,-5.448,-5.080,-4.749,-4.435,-4.055,-3.587,-3.110,-2.679,-2.249,-1.759,-1.226,-.707,-.209,.289,.779,
-1.246,1.734,2.291,2.882,3.411,3.842,4.227,4.613,4.982,5.314,5.634,5.971,6.309,6.621,6.917,7.220,
-7.522,7.816,8.131,8.496,8.891,9.259,9.573,9.848,10.101,10.340,10.595,10.908,11.292,11.700,12.054,12.278,
-12.324,12.206,12.015,11.864,11.803,11.803,11.807,11.780,11.709,11.606,11.509,11.460,11.454,11.448,11.439,11.498,
-11.671,11.907,12.102,12.220,12.318,12.449,12.600,12.728,12.812,12.848,12.836,12.794,12.761,12.762,12.775,12.778,
-12.799,12.870,12.952,12.936,12.759,12.480,12.223,12.072,12.028,12.033,11.997,11.851,11.620,11.429,11.383,11.436,
-11.425,11.252,10.975,10.714,11.092,10.753,10.631,10.663,10.733,10.739,10.664,10.583,10.563,10.577,10.558,10.502,
-10.474,10.489,10.499,10.485,10.493,10.555,10.624,10.660,10.703,10.816,10.988,11.154,11.290,11.433,11.601,11.775,
-11.945,12.133,12.356,12.591,12.801,12.972,13.127,13.301,13.517,13.766,14.023,14.267,14.483,14.647,14.767,14.927,
-15.230,15.653,16.056,16.366,16.663,17.026,17.403,17.765,18.226,18.814,19.210,19.044,18.497,18.272,18.765,19.535,
-19.860,19.639,19.393,19.443,19.485,19.065,18.152,17.056,15.996,14.990,14.055,13.273,12.643,12.056,11.446,10.864,
-10.365,9.922,9.462,8.945,8.378,7.785,7.203,6.661,6.150,5.637,5.112,4.587,4.070,3.539,2.940,2.205,
-1.311,.366,-.423,-.909,-1.122,-1.168,-1.082,-.872,-.690,-.796,-1.288,-1.968,-2.549,-2.952,-3.311,-3.748,
--4.212,-4.577,-4.817,-5.077,-5.577,-6.427,-7.502,-8.514,-9.234,-9.639,-9.846,-9.963,-10.049,-10.173,-10.403,-10.726,
--11.045,-11.280,-11.457,-11.710,-12.221,-13.077,-14.043,-14.523,-14.001,-12.719,-11.801,-12.397,-14.547,-17.002,-18.283,-17.953,
--16.822,-16.053,-16.193,-17.037,-18.165,-19.350,-20.521,-21.579,-22.424,-23.088,-23.676,-24.199,-24.569,-24.748,-24.762,-24.605,
--24.281,-23.969,-23.919,-24.067,-24.017,-23.675,-23.718,-24.932,-27.032,-28.606,-28.583,-27.479,-26.803,-27.323,-28.370,-28.881,
--28.662,-28.357,-28.481,-28.900,-29.225,-29.357,-29.506,-29.842,-30.300,-30.685,-30.897,-31.031,-31.223,-31.414,-31.349,-30.922,
--30.438,-30.356,-30.737,-31.151,-31.190,-30.920,-30.679,-30.579,-30.456,-30.242,-30.119,-30.210,-30.344,-30.303,-30.188,-30.297,
--30.681,-31.014,-30.986,-30.670,-30.415,-30.440,-30.680,-30.974,-31.264,-31.557,-31.808,-31.943,-31.964,-31.966,-32.030,-32.138,
--32.231,-32.319,-32.486,-32.778,-33.121,-33.401,-33.595,-33.796,-34.082,-34.426,-34.776,-35.163,-35.653,-36.202,-36.662,-36.988,
--37.336,-37.856,-38.412,-38.616,-38.192,-37.293,-36.425,-36.037,-36.180,-36.545,-36.850,-37.177,-37.864,-39.065,-40.491,-41.673,
--42.434,-42.986,-43.590,-44.262,-44.884,-45.434,-45.986,-46.530,-46.935,-47.129,-47.196,-47.298,-47.531,-47.914,-48.434,-49.059,
--49.732,-50.384,-50.985,-51.552,-52.124,-52.736,-53.411,-54.143,-54.883,-55.550,-56.075,-56.461,-56.778,-57.097,-57.441,-57.830,
--58.338,-59.044,-59.921,-60.836,-61.689,-62.508,-63.364,-64.252,-65.094,-65.823,-66.408,-66.843,-67.165,-67.465,-67.816,-68.200,
--68.567,-68.930,-69.338,-69.768,-70.150,-70.485,-70.834,-71.195,-71.483,-71.666,-71.812,-71.955,-72.037,-72.029,-72.016,-72.076,
--72.151,-72.147,-72.083,-72.037,-71.992,-71.866,-71.674,-71.551,-71.584,-71.721,-71.863,-71.968,-72.030,-72.041,-71.997,-71.919,
--71.808,-71.611,-71.249,-70.704,-70.094,-69.644,-69.514,-69.624,-69.726,-69.688,-69.621,-69.637,-69.609,-69.314,-68.770,-68.259,
--68.009,-67.982,-67.938,-67.582,-66.674,-65.253,-63.787,-62.904,-62.858,-63.378,-64.043,-64.549,-64.579,-63.797,-62.269,-60.658,
--59.625,-59.143,-58.687,-58.003,-57.311,-56.788,-56.275,-55.608,-54.899,-54.270,-53.586,-52.669,-51.591,-50.551,-49.593,-48.661,
--47.787,-47.011,-46.192,-45.101,-43.686,-42.132,-40.718,-39.719,-39.273,-39.161,-38.834,-37.925,-36.695,-35.710,-35.104,-34.446,
--33.352,-31.948,-30.612,-29.523,-28.624,-27.840,-27.141,-26.503,-25.930,-25.422,-24.835,-23.922,-22.655,-21.347,-20.314,-19.520,
--18.729,-17.838,-16.825,-15.523,-13.780,-11.839,-10.218,-9.142,-8.364,-7.666,-7.256,-7.421,-7.986,-8.408,-8.343,-7.894,
--7.320,-6.746,-6.196,-5.706,-5.275,-4.789,-4.117,-3.280,-2.442,-1.751,-1.216,-.729,-.161,.542,1.334,2.087,
-2.693,3.160,3.636,4.264,4.979,5.479,5.498,5.098,4.606,4.273,4.107,4.079,4.318,4.950,5.825,6.620,
-7.216,7.824,8.681,9.753,10.806,11.658,12.302,12.843,13.390,13.980,14.572,15.135,15.738,16.438,17.089,17.451,
-17.591,18.017,19.194,21.000,22.827,24.217,25.216,26.119,27.071,27.985,28.680,29.010,28.989,28.890,29.067,29.552,
-29.966,29.983,29.834,30.129,31.208,32.807,34.403,35.709,36.798,37.873,39.050,40.311,41.559,42.725,43.814,44.843,
-45.749,46.447,46.971,47.462,47.967,48.371,48.587,48.716,48.946,49.380,50.035,50.929,51.997,53.002,53.702,54.131,
-54.565,55.184,55.891,56.515,57.043,57.562,58.092,58.570,58.940,59.136,59.086,58.842,58.662,58.794,59.211,59.689,
-60.157,60.753,61.499,62.104,62.279,62.128,62.043,62.241,62.579,62.842,63.046,63.353,63.826,64.366,64.850,65.231,
-65.522,65.776,66.036,66.261,66.327,66.197,66.069,66.223,66.727,67.382,68.001,68.621,69.363,70.202,71.009,71.723,
-72.354,72.807,72.882,72.496,71.806,71.074,70.490,70.148,70.070,70.162,70.249,70.240,70.213,70.235,70.176,69.849,
-69.299,68.803,68.546,68.450,68.378,68.353,68.477,68.724,69.000,69.341,69.901,70.700,71.548,72.290,73.011,73.860,
-74.733,75.261,75.173,74.595,73.960,73.649,73.705,73.847,73.717,73.189,72.471,71.889,71.572,71.371,71.088,70.675,
-70.132,69.333,68.132,66.667,65.433,64.991,65.622,67.165,69.023,70.344,70.479,69.474,67.994,66.663,65.635,64.904,
-64.705,65.183,65.794,65.586,64.203,62.241,60.451,59.050,58.105,58.092,59.378,61.248,62.149,61.171,58.936,56.822,
-55.653,55.353,55.461,55.537,55.246,54.509,53.616,52.919,52.449,52.089,52.063,52.820,54.335,55.909,56.903,57.406,
-57.887,58.455,58.811,58.805,58.639,58.471,58.206,57.805,57.482,57.387,57.293,56.855,56.060,55.167,54.298,53.332,
-52.234,51.238,50.616,50.424,50.521,50.684,50.639,50.138,49.168,48.046,47.168,46.690,46.470,46.272,45.950,45.527,
-45.155,44.919,44.607,43.849,42.633,41.511,41.020,40.988,40.755,40.108,39.612,39.790,40.308,40.349,39.676,38.945,
-38.889,39.468,39.983,39.873,39.243,38.632,38.377,38.265,37.798,36.774,35.505,34.429,33.678,33.129,32.752,32.626,
-32.639,32.466,31.947,31.297,30.811,30.503,30.195,29.799,29.358,28.894,28.430,28.084,27.966,27.982,27.906,27.669,
-27.403,27.207,27.003,26.701,26.326,25.926,25.444,24.799,24.034,23.285,22.668,22.226,21.939,21.709,21.392,20.928,
-20.408,19.947,19.534,19.073,18.546,18.054,17.661,17.289,16.836,16.382,16.180,16.356,16.646,16.559,15.904,15.059,
-14.603,14.677,14.905,14.915,14.766,14.726,14.848,14.963,14.984,14.999,15.043,14.982,14.682,14.164,13.535,12.878,
-12.250,11.721,11.323,11.020,10.760,10.496,10.165,9.725,9.232,8.814,8.511,8.257,8.028,7.910,7.938,7.979,
-7.880,7.656,7.419,7.193,6.908,6.559,6.238,6.011,5.881,5.840,5.867,5.864,5.720,5.453,5.196,5.015,
-4.860,4.710,4.644,4.687,4.711,4.589,4.382,4.256,4.256,4.250,4.101,3.809,3.473,3.190,2.989,2.824,
-2.623,2.367,2.109,1.889,1.668,1.393,1.103,.885,.726,.508,.171,-.200,-.495,-.721,-.965,-1.255,
--1.537,-1.775,-1.999,-2.229,-2.425,-2.557,-2.671,-2.841,-3.059,-3.239,-3.329,-3.371,-3.421,-3.468,-3.485,-3.510,
--3.595,-3.710,-3.771,-3.780,-3.835,-3.959,-4.022,-3.909,-3.707,-3.618,-3.717,-3.888,-4.006,-4.083,-4.209,-4.419,
--4.672,-4.921,-5.143,-5.349,-5.577,-5.849,-6.139,-6.391,-6.599,-6.806,-7.037,-7.255,-7.432,-7.584,-7.725,-7.829,
--7.883,-7.934,-8.031,-8.157,-8.267,-8.361,-8.466,-8.566,-8.632,-8.684,-8.774,-8.897,-8.996,-9.056,-9.121,-9.209,
--9.278,-9.303,-9.326,-9.384,-9.447,-9.475,-9.485,-9.523,-9.593,-9.657,-9.697,-9.723,-9.739,-9.733,-9.715,-9.718,
--9.753,-9.796,-9.818,-9.817,-9.808,-9.795,-9.767,-9.716,-9.647,-9.584,-9.551,-9.566,-9.622,-9.696,-9.749,-9.753,
--9.722,-9.715,-9.771,-9.853,-9.887,-9.854,-9.818,-9.830,-9.854,-9.813,-9.697,-9.569,-9.485,-9.436,-9.377,-9.281,
--9.150,-9.004,-8.871,-8.768,-8.680,-8.579,-8.447,-8.293,-8.128,-7.962,-7.803,-7.665,-7.559,-7.483,-7.417,-7.338,
--7.242,-7.157,-7.110,-7.088,-7.047,-6.977,-6.922,-6.909,-6.893,-6.829,-6.751,-6.730,-6.768,-6.795,-6.787,-6.805,
--6.894,-7.008,-7.078,-7.102,-7.130,-7.188,-7.260,-7.337,-7.426,-7.522,-7.616,-7.721,-7.861,-8.032,-8.199,-8.352,
--8.525,-8.749,-9.006,-9.251,-9.453,-9.620,-9.780,-9.945,-10.098,-10.213,-10.298,-10.386,-10.484,-10.554,-10.567,-10.555,
--10.568,-10.604,-10.629,-10.647,-10.702,-10.799,-10.883,-10.909,-10.898,-10.893,-10.902,-10.911,-10.925,-10.953,-10.973,-10.959,
--10.916,-10.866,-10.808,-10.726,-10.641,-10.601,-10.611,-10.617,-10.570,-10.473,-10.359,-10.249,-10.154,-10.097,-10.088,-10.098,
--10.088,-10.046,-9.984,-9.909,-9.816,-9.712,-9.610,-9.495,-9.346,-9.172,-9.011,-8.871,-8.714,-8.504,-8.258,-8.013,
--7.777,-7.541,-7.314,-7.109,-6.899,-6.656,-6.405,-6.199,-6.028,-5.814,-5.524,-5.215,-4.937,-4.662,-4.344,-4.017,
--3.734,-3.463,-3.120,-2.700,-2.283,-1.901,-1.497,-1.035,-.572,-.154,.269,.774,1.328,1.801,2.099,2.238,
-2.276,2.193,1.847,1.076,-.052,-1.050,-1.206,-.070,2.243,5.272,8.584,11.887,14.975,17.829,20.694,23.752,
-26.677,28.840,30.069,30.867,31.677,32.241,32.092,31.427,30.958,30.909,30.697,29.835,28.697,28.033,28.003,28.084,
-27.833,27.326,26.843,26.484,26.232,26.133,26.256,26.577,27.028,27.540,28.000,28.283,28.394,28.450,28.442,28.199,
-27.692,27.214,27.067,27.163,27.152,26.903,26.632,26.537,26.514,26.322,25.869,25.219,24.436,23.552,22.626,21.728,
-20.896,20.181,19.689,19.472,19.397,19.227,18.856,18.374,17.875,17.301,16.538,15.628,14.753,14.006,13.243,12.258,
-11.055,9.849,8.804,7.838,6.779,5.605,4.446,3.365,2.284,1.150,.041,-.966,-1.908,-2.829,-3.613,-4.108,
--4.416,-4.926,-5.973,-7.478,-8.972,-9.954,-10.269,-10.179,-10.094,-10.221,-10.437,-10.516,-10.425,-10.338,-10.404,-10.590,
--10.789,-10.984,-11.234,-11.580,-12.027,-12.619,-13.429,-14.458,-15.596,-16.675,-17.554,-18.166,-18.501,-18.571,-18.364,-17.856,
--17.111,-16.332,-15.782,-15.603,-15.738,-16.008,-16.255,-16.417,-16.499,-16.511,-16.445,-16.315,-16.208,-16.241,-16.454,-16.770,
--17.097,-17.377,-17.525,-17.408,-17.016,-16.606,-16.470,-16.549,-16.479,-16.105,-15.747,-15.731,-15.813,-15.400,-14.346,-13.231,
--12.667,-12.595,-12.499,-12.139,-11.758,-11.647,-11.866,-12.439,-13.412,-14.447,-14.701,-13.575,-11.568,-9.983,-9.627,-10.065,
--10.316,-10.021,-9.658,-9.782,-10.401,-11.122,-11.604,-11.743,-11.610,-11.370,-11.210,-11.186,-11.186,-11.091,-10.923,-10.770,
--10.640,-10.484,-10.321,-10.216,-10.159,-10.079,-9.961,-9.869,-9.815,-9.725,-9.554,-9.354,-9.189,-9.058,-8.938,-8.837,
--8.747,-8.614,-8.411,-8.201,-8.063,-7.994,-7.934,-7.855,-7.772,-7.675,-7.530,-7.323,-7.076,-6.805,-6.520,-6.245,
--5.991,-5.720,-5.395,-5.047,-4.738,-4.452,-4.112,-3.695,-3.271,-2.878,-2.464,-1.975,-1.446,-.937,-.444,.057,
-.540,.970,1.399,1.909,2.490,3.039,3.498,3.908,4.323,4.726,5.082,5.407,5.739,6.083,6.421,6.757,
-7.100,7.436,7.749,8.062,8.410,8.789,9.157,9.483,9.759,9.983,10.170,10.375,10.661,11.034,11.421,11.722,
-11.874,11.871,11.749,11.581,11.444,11.380,11.372,11.366,11.324,11.246,11.168,11.135,11.163,11.229,11.292,11.354,
-11.450,11.605,11.792,11.964,12.095,12.196,12.291,12.398,12.525,12.648,12.716,12.696,12.626,12.588,12.621,12.682,
-12.712,12.711,12.716,12.727,12.691,12.572,12.402,12.237,12.107,12.005,11.908,11.773,11.577,11.380,11.342,11.565,
-11.934,12.158,12.023,11.587,11.092,11.213,10.881,10.789,10.819,10.843,10.803,10.730,10.693,10.713,10.729,10.685,
-10.624,10.629,10.691,10.725,10.701,10.690,10.749,10.833,10.883,10.927,11.035,11.208,11.391,11.556,11.724,11.899,
-12.060,12.209,12.385,12.612,12.868,13.112,13.324,13.513,13.713,13.953,14.226,14.496,14.736,14.944,15.109,15.215,
-15.303,15.463,15.730,16.041,16.338,16.648,16.999,17.356,17.741,18.301,19.049,19.632,19.650,19.238,19.042,19.451,
-20.100,20.367,20.179,20.007,20.143,20.312,20.075,19.328,18.276,17.111,15.928,14.826,13.906,13.156,12.483,11.846,
-11.278,10.794,10.341,9.858,9.318,8.728,8.125,7.564,7.062,6.579,6.071,5.548,5.043,4.556,4.048,3.472,
-2.784,1.970,1.126,.437,.014,-.190,-.272,-.242,-.131,-.137,-.490,-1.153,-1.814,-2.232,-2.474,-2.750,
--3.115,-3.463,-3.735,-4.028,-4.520,-5.341,-6.451,-7.588,-8.415,-8.816,-9.014,-9.274,-9.584,-9.770,-9.853,-10.083,
--10.550,-10.992,-11.121,-11.049,-11.218,-11.942,-13.094,-14.177,-14.626,-14.166,-13.145,-12.508,-13.163,-15.121,-17.302,-18.393,
--17.981,-16.812,-16.007,-16.124,-16.999,-18.231,-19.589,-20.948,-22.101,-22.855,-23.263,-23.601,-24.069,-24.608,-25.025,-25.172,
--24.994,-24.549,-24.065,-23.836,-23.884,-23.900,-23.739,-23.871,-24.925,-26.685,-27.973,-27.881,-26.907,-26.419,-27.019,-27.898,
--27.961,-27.195,-26.581,-26.861,-27.787,-28.611,-28.956,-29.028,-29.183,-29.519,-29.897,-30.214,-30.535,-30.943,-31.283,-31.192,
--30.517,-29.662,-29.303,-29.691,-30.371,-30.708,-30.543,-30.190,-29.899,-29.602,-29.216,-28.901,-28.861,-29.064,-29.332,-29.618,
--29.990,-30.366,-30.493,-30.279,-29.977,-29.921,-30.169,-30.509,-30.767,-30.965,-31.179,-31.380,-31.465,-31.414,-31.332,-31.333,
--31.436,-31.580,-31.729,-31.932,-32.240,-32.606,-32.903,-33.085,-33.260,-33.556,-33.959,-34.363,-34.745,-35.180,-35.672,-36.094,
--36.364,-36.623,-37.100,-37.787,-38.339,-38.346,-37.711,-36.770,-36.015,-35.718,-35.782,-35.995,-36.368,-37.126,-38.352,-39.750,
--40.885,-41.617,-42.161,-42.753,-43.404,-44.008,-44.539,-45.031,-45.453,-45.737,-45.895,-46.034,-46.249,-46.580,-47.050,-47.654,
--48.311,-48.906,-49.409,-49.906,-50.482,-51.126,-51.782,-52.439,-53.127,-53.830,-54.463,-54.954,-55.317,-55.635,-55.976,-56.369,
--56.841,-57.441,-58.194,-59.053,-59.933,-60.795,-61.661,-62.526,-63.336,-64.048,-64.673,-65.226,-65.677,-66.023,-66.346,-66.730,
--67.162,-67.575,-67.960,-68.363,-68.788,-69.194,-69.574,-69.949,-70.293,-70.541,-70.700,-70.846,-70.993,-71.070,-71.056,-71.043,
--71.103,-71.179,-71.186,-71.137,-71.081,-70.991,-70.826,-70.661,-70.630,-70.768,-70.977,-71.161,-71.290,-71.350,-71.317,-71.209,
--71.075,-70.907,-70.628,-70.192,-69.678,-69.261,-69.100,-69.219,-69.471,-69.664,-69.741,-69.790,-69.822,-69.652,-69.123,-68.397,
--67.844,-67.671,-67.742,-67.741,-67.345,-66.325,-64.745,-63.135,-62.214,-62.292,-63.043,-63.895,-64.435,-64.383,-63.516,-61.951,
--60.289,-59.136,-58.521,-58.054,-57.551,-57.169,-56.933,-56.561,-55.873,-55.054,-54.328,-53.608,-52.697,-51.646,-50.668,-49.813,
--48.953,-48.024,-47.083,-46.131,-45.046,-43.716,-42.179,-40.674,-39.581,-39.141,-39.110,-38.860,-38.014,-36.873,-35.993,-35.446,
--34.786,-33.721,-32.473,-31.397,-30.545,-29.743,-28.903,-28.051,-27.216,-26.425,-25.719,-25.028,-24.161,-23.043,-21.866,-20.861,
--20.035,-19.247,-18.401,-17.393,-16.026,-14.253,-12.430,-11.039,-10.178,-9.574,-9.109,-8.992,-9.300,-9.649,-9.571,-9.035,
--8.363,-7.748,-7.113,-6.400,-5.723,-5.172,-4.646,-3.995,-3.209,-2.390,-1.603,-.832,-.061,.683,1.367,2.006,
-2.655,3.349,4.072,4.786,5.487,6.164,6.700,6.886,6.629,6.085,5.539,5.165,4.996,5.071,5.446,6.059,
-6.708,7.249,7.752,8.393,9.242,10.203,11.115,11.872,12.463,12.968,13.472,14.002,14.562,15.210,15.996,16.792,
-17.358,17.670,18.085,19.009,20.447,22.026,23.429,24.639,25.759,26.784,27.622,28.229,28.639,28.950,29.332,29.924,
-30.634,31.169,31.395,31.604,32.259,33.472,34.879,36.034,36.821,37.469,38.261,39.304,40.499,41.669,42.728,43.714,
-44.643,45.409,45.910,46.242,46.627,47.130,47.581,47.830,47.960,48.164,48.561,49.207,50.164,51.368,52.510,53.273,
-53.682,54.071,54.666,55.365,55.971,56.465,56.944,57.420,57.831,58.147,58.353,58.385,58.238,58.100,58.221,58.638,
-59.182,59.746,60.379,61.056,61.547,61.673,61.591,61.647,61.961,62.335,62.569,62.728,63.002,63.440,63.913,64.294,
-64.552,64.714,64.825,64.968,65.195,65.437,65.556,65.543,65.585,65.878,66.427,67.092,67.794,68.567,69.433,70.307,
-71.062,71.623,71.958,72.015,71.732,71.117,70.315,69.605,69.265,69.370,69.707,69.960,70.010,69.979,69.962,69.832,
-69.431,68.860,68.413,68.222,68.138,67.995,67.849,67.841,67.963,68.094,68.223,68.462,68.845,69.265,69.672,70.189,
-70.935,71.787,72.445,72.702,72.619,72.444,72.437,72.706,73.121,73.366,73.212,72.750,72.277,71.914,71.469,70.703,
-69.620,68.380,67.066,65.737,64.669,64.298,64.857,66.154,67.712,68.985,69.477,68.955,67.724,66.465,65.587,64.913,
-64.218,63.836,64.282,65.321,65.939,65.407,63.987,62.362,60.806,59.316,58.220,57.971,58.337,58.359,57.382,55.780,
-54.460,53.943,54.142,54.709,55.270,55.468,55.171,54.541,53.682,52.386,50.645,49.304,49.579,51.718,54.539,56.630,
-57.674,58.282,58.868,59.248,59.259,59.137,59.095,58.981,58.628,58.258,58.167,58.217,57.982,57.324,56.495,55.684,
-54.770,53.636,52.476,51.622,51.217,51.142,51.165,51.043,50.623,49.972,49.343,48.919,48.625,48.264,47.767,47.239,
-46.850,46.727,46.811,46.733,46.036,44.728,43.427,42.706,42.385,41.875,41.164,40.984,41.761,42.818,43.030,42.104,
-40.820,40.055,39.928,39.977,39.835,39.538,39.314,39.266,39.247,38.981,38.319,37.364,36.326,35.302,34.315,33.502,
-33.045,32.880,32.670,32.185,31.547,31.020,30.671,30.374,30.015,29.560,29.000,28.415,28.006,27.902,27.950,27.880,
-27.641,27.408,27.269,27.109,26.832,26.516,26.238,25.892,25.326,24.559,23.756,23.054,22.508,22.131,21.864,21.547,
-21.043,20.397,19.787,19.305,18.883,18.428,17.961,17.548,17.172,16.755,16.328,16.077,16.141,16.365,16.362,15.918,
-15.266,14.838,14.776,14.813,14.682,14.459,14.392,14.528,14.684,14.743,14.783,14.882,14.939,14.772,14.308,13.631,
-12.902,12.268,11.791,11.427,11.094,10.758,10.424,10.060,9.622,9.152,8.759,8.464,8.185,7.901,7.722,7.719,
-7.782,7.741,7.560,7.321,7.069,6.787,6.486,6.213,5.979,5.772,5.627,5.572,5.544,5.436,5.244,5.042,
-4.847,4.613,4.392,4.349,4.511,4.650,4.520,4.158,3.838,3.740,3.779,3.745,3.526,3.171,2.809,2.524,
-2.312,2.113,1.900,1.708,1.556,1.394,1.162,.888,.653,.460,.222,-.113,-.479,-.784,-1.021,-1.255,
--1.527,-1.815,-2.089,-2.341,-2.569,-2.748,-2.861,-2.932,-3.024,-3.167,-3.335,-3.477,-3.582,-3.675,-3.762,-3.833,
--3.900,-4.003,-4.144,-4.261,-4.307,-4.319,-4.362,-4.431,-4.461,-4.442,-4.429,-4.453,-4.474,-4.461,-4.470,-4.577,
--4.788,-5.042,-5.289,-5.524,-5.764,-6.015,-6.277,-6.537,-6.769,-6.963,-7.134,-7.297,-7.453,-7.597,-7.736,-7.866,
--7.963,-8.020,-8.068,-8.140,-8.231,-8.315,-8.397,-8.486,-8.567,-8.617,-8.663,-8.753,-8.887,-9.009,-9.085,-9.136,
--9.188,-9.233,-9.259,-9.282,-9.323,-9.374,-9.415,-9.446,-9.480,-9.514,-9.540,-9.560,-9.578,-9.582,-9.563,-9.547,
--9.568,-9.628,-9.685,-9.702,-9.678,-9.637,-9.600,-9.571,-9.538,-9.495,-9.446,-9.404,-9.383,-9.398,-9.443,-9.490,
--9.505,-9.491,-9.495,-9.554,-9.632,-9.662,-9.627,-9.585,-9.582,-9.588,-9.541,-9.432,-9.309,-9.209,-9.126,-9.036,
--8.929,-8.808,-8.674,-8.534,-8.399,-8.282,-8.184,-8.088,-7.966,-7.806,-7.627,-7.467,-7.347,-7.265,-7.206,-7.150,
--7.074,-6.968,-6.862,-6.801,-6.777,-6.736,-6.661,-6.605,-6.605,-6.607,-6.546,-6.457,-6.433,-6.483,-6.522,-6.506,
--6.501,-6.576,-6.700,-6.797,-6.855,-6.915,-6.993,-7.068,-7.135,-7.212,-7.301,-7.386,-7.479,-7.610,-7.781,-7.956,
--8.117,-8.295,-8.525,-8.798,-9.058,-9.258,-9.392,-9.495,-9.609,-9.741,-9.872,-9.991,-10.102,-10.195,-10.234,-10.219,
--10.211,-10.270,-10.373,-10.446,-10.472,-10.504,-10.574,-10.641,-10.662,-10.655,-10.656,-10.660,-10.649,-10.640,-10.661,-10.688,
--10.676,-10.621,-10.565,-10.521,-10.463,-10.395,-10.373,-10.421,-10.471,-10.436,-10.305,-10.147,-10.027,-9.955,-9.916,-9.900,
--9.892,-9.870,-9.823,-9.759,-9.688,-9.608,-9.511,-9.397,-9.265,-9.110,-8.948,-8.803,-8.677,-8.524,-8.303,-8.037,
--7.788,-7.572,-7.350,-7.101,-6.858,-6.656,-6.477,-6.284,-6.077,-5.872,-5.656,-5.408,-5.143,-4.892,-4.628,-4.297,
--3.916,-3.570,-3.294,-3.013,-2.651,-2.237,-1.847,-1.478,-1.064,-.592,-.124,.310,.765,1.292,1.839,2.281,
-2.544,2.657,2.670,2.517,2.007,1.048,-.076,-.726,-.296,1.395,4.104,7.426,10.957,14.344,17.441,20.458,
-23.689,26.970,29.616,31.096,31.600,31.725,31.751,31.570,31.202,30.946,30.903,30.743,30.209,29.578,29.292,29.303,
-29.133,28.549,27.820,27.269,26.892,26.545,26.279,26.267,26.533,26.934,27.347,27.744,28.112,28.423,28.643,28.705,
-28.526,28.146,27.784,27.635,27.639,27.577,27.392,27.258,27.322,27.479,27.459,27.028,26.115,24.846,23.513,22.410,
-21.605,20.940,20.304,19.811,19.607,19.589,19.474,19.134,18.720,18.388,18.060,17.542,16.810,16.030,15.312,14.544,
-13.564,12.389,11.207,10.135,9.090,7.939,6.697,5.523,4.538,3.717,2.949,2.128,1.177,.070,-1.106,-2.166,
--2.981,-3.656,-4.497,-5.773,-7.447,-9.109,-10.226,-10.562,-10.397,-10.267,-10.439,-10.697,-10.683,-10.363,-10.038,-9.968,
--10.143,-10.423,-10.743,-11.103,-11.497,-11.951,-12.567,-13.425,-14.463,-15.530,-16.531,-17.434,-18.162,-18.575,-18.566,-18.135,
--17.392,-16.538,-15.824,-15.415,-15.288,-15.305,-15.407,-15.628,-15.943,-16.192,-16.242,-16.161,-16.136,-16.268,-16.504,-16.761,
--17.038,-17.365,-17.687,-17.846,-17.698,-17.278,-16.820,-16.535,-16.370,-16.082,-15.609,-15.212,-15.101,-15.035,-14.553,-13.620,
--12.774,-12.479,-12.548,-12.435,-11.972,-11.501,-11.367,-11.617,-12.236,-13.241,-14.289,-14.538,-13.421,-11.505,-10.120,-9.994,
--10.582,-10.894,-10.688,-10.510,-10.809,-11.412,-11.897,-12.088,-12.053,-11.867,-11.587,-11.329,-11.182,-11.095,-10.961,-10.770,
--10.577,-10.387,-10.183,-10.033,-10.016,-10.072,-10.046,-9.897,-9.739,-9.656,-9.593,-9.470,-9.301,-9.142,-9.001,-8.873,
--8.780,-8.721,-8.626,-8.440,-8.218,-8.059,-7.978,-7.912,-7.825,-7.734,-7.647,-7.529,-7.353,-7.119,-6.839,-6.533,
--6.240,-5.980,-5.716,-5.399,-5.055,-4.744,-4.464,-4.149,-3.777,-3.404,-3.055,-2.669,-2.195,-1.673,-1.171,-.684,
--.185,.298,.718,1.116,1.584,2.137,2.690,3.179,3.627,4.071,4.497,4.874,5.221,5.575,5.935,6.279,
-6.606,6.930,7.255,7.574,7.903,8.262,8.638,8.994,9.304,9.564,9.776,9.957,10.158,10.430,10.760,11.057,
-11.232,11.266,11.209,11.121,11.036,10.980,10.965,10.982,10.996,10.972,10.919,10.883,10.906,10.988,11.097,11.212,
-11.328,11.446,11.561,11.679,11.809,11.938,12.029,12.080,12.157,12.326,12.549,12.698,12.707,12.665,12.716,12.879,
-13.012,12.978,12.797,12.607,12.504,12.470,12.442,12.397,12.332,12.228,12.067,11.871,11.680,11.523,11.449,11.557,
-11.895,12.313,12.512,12.294,11.762,11.213,11.060,10.899,10.891,10.915,10.902,10.858,10.818,10.814,10.834,10.833,
-10.794,10.769,10.816,10.901,10.934,10.901,10.886,10.949,11.048,11.125,11.196,11.311,11.473,11.645,11.816,11.996,
-12.171,12.323,12.472,12.658,12.888,13.135,13.377,13.610,13.832,14.058,14.314,14.603,14.888,15.137,15.364,15.573,
-15.725,15.796,15.847,15.965,16.165,16.406,16.673,16.978,17.335,17.811,18.525,19.431,20.169,20.359,20.098,19.932,
-20.221,20.705,20.892,20.709,20.530,20.618,20.803,20.726,20.204,19.270,18.061,16.758,15.557,14.548,13.685,12.907,
-12.236,11.699,11.237,10.755,10.224,9.667,9.090,8.502,7.940,7.426,6.928,6.413,5.900,5.420,4.953,4.450,
-3.874,3.198,2.414,1.621,1.004,.664,.517,.426,.356,.270,.007,-.563,-1.277,-1.793,-2.001,-2.136,
--2.416,-2.763,-2.989,-3.141,-3.482,-4.208,-5.282,-6.477,-7.470,-8.015,-8.180,-8.340,-8.766,-9.292,-9.579,-9.646,
--9.862,-10.360,-10.773,-10.754,-10.555,-10.816,-11.836,-13.235,-14.320,-14.591,-14.003,-13.028,-12.558,-13.399,-15.533,-17.887,
--19.109,-18.702,-17.385,-16.342,-16.252,-17.026,-18.262,-19.684,-21.134,-22.376,-23.164,-23.498,-23.674,-23.997,-24.505,-24.980,
--25.173,-24.967,-24.450,-23.900,-23.629,-23.698,-23.858,-23.938,-24.219,-25.127,-26.481,-27.401,-27.260,-26.543,-26.332,-26.949,
--27.517,-27.087,-25.862,-24.991,-25.270,-26.406,-27.544,-28.187,-28.439,-28.619,-28.893,-29.253,-29.638,-30.022,-30.387,-30.643,
--30.601,-30.134,-29.430,-28.969,-29.094,-29.615,-29.989,-29.867,-29.364,-28.796,-28.324,-27.957,-27.729,-27.726,-27.963,-28.370,
--28.882,-29.419,-29.811,-29.883,-29.675,-29.471,-29.525,-29.822,-30.153,-30.382,-30.535,-30.684,-30.820,-30.884,-30.854,-30.787,
--30.769,-30.843,-30.982,-31.141,-31.338,-31.626,-31.991,-32.317,-32.530,-32.712,-33.008,-33.436,-33.883,-34.286,-34.698,-35.150,
--35.544,-35.788,-35.983,-36.362,-37.009,-37.697,-38.028,-37.746,-36.947,-36.018,-35.351,-35.102,-35.228,-35.697,-36.570,-37.805,
--39.123,-40.185,-40.896,-41.432,-41.982,-42.565,-43.113,-43.592,-43.993,-44.294,-44.514,-44.739,-45.029,-45.361,-45.713,-46.156,
--46.745,-47.394,-47.951,-48.397,-48.876,-49.494,-50.196,-50.869,-51.497,-52.136,-52.791,-53.383,-53.851,-54.221,-54.568,-54.948,
--55.391,-55.929,-56.586,-57.347,-58.164,-59.003,-59.878,-60.788,-61.660,-62.400,-63.000,-63.539,-64.060,-64.522,-64.896,-65.248,
--65.663,-66.131,-66.576,-66.977,-67.383,-67.815,-68.249,-68.663,-69.048,-69.371,-69.596,-69.753,-69.912,-70.066,-70.140,-70.122,
--70.105,-70.159,-70.239,-70.268,-70.234,-70.156,-70.027,-69.870,-69.787,-69.862,-70.056,-70.272,-70.453,-70.578,-70.595,-70.476,
--70.293,-70.137,-69.963,-69.645,-69.178,-68.753,-68.585,-68.722,-69.039,-69.357,-69.577,-69.722,-69.832,-69.818,-69.483,-68.782,
--68.001,-67.528,-67.463,-67.563,-67.489,-66.985,-65.883,-64.258,-62.637,-61.766,-61.971,-62.856,-63.727,-64.127,-63.888,-62.938,
--61.416,-59.819,-58.684,-58.107,-57.801,-57.576,-57.462,-57.368,-56.991,-56.206,-55.276,-54.486,-53.765,-52.891,-51.880,-50.939,
--50.113,-49.221,-48.145,-46.991,-45.915,-44.902,-43.750,-42.305,-40.720,-39.479,-38.970,-38.989,-38.842,-38.096,-37.059,-36.301,
--35.876,-35.322,-34.376,-33.303,-32.455,-31.806,-31.096,-30.200,-29.172,-28.077,-26.975,-25.975,-25.122,-24.301,-23.379,-22.374,
--21.398,-20.494,-19.644,-18.805,-17.846,-16.561,-14.952,-13.381,-12.230,-11.488,-10.901,-10.465,-10.424,-10.742,-10.922,-10.524,
--9.666,-8.784,-8.076,-7.410,-6.675,-5.955,-5.333,-4.741,-4.070,-3.304,-2.482,-1.622,-.733,.130,.890,1.510,
-2.047,2.656,3.484,4.486,5.418,6.086,6.568,7.056,7.513,7.659,7.341,6.781,6.370,6.295,6.487,6.824,
-7.266,7.777,8.283,8.749,9.248,9.896,10.712,11.572,12.309,12.860,13.314,13.785,14.310,14.882,15.565,16.432,
-17.384,18.176,18.713,19.225,20.025,21.140,22.321,23.371,24.327,25.295,26.258,27.117,27.826,28.440,29.074,29.861,
-30.857,31.914,32.768,33.319,33.783,34.453,35.358,36.254,36.924,37.401,37.893,38.581,39.496,40.529,41.529,42.435,
-43.286,44.085,44.715,45.089,45.342,45.718,46.271,46.800,47.114,47.256,47.399,47.695,48.282,49.282,50.612,51.890,
-52.732,53.146,53.472,53.946,54.499,54.987,55.439,55.963,56.540,57.065,57.479,57.762,57.861,57.774,57.671,57.792,
-58.215,58.833,59.534,60.263,60.897,61.236,61.238,61.156,61.294,61.664,62.024,62.231,62.408,62.724,63.147,63.502,
-63.710,63.822,63.894,63.930,63.982,64.165,64.490,64.777,64.857,64.822,64.968,65.471,66.219,67.011,67.801,68.666,
-69.582,70.364,70.858,71.083,71.113,70.904,70.342,69.492,68.699,68.363,68.578,69.053,69.407,69.502,69.459,69.376,
-69.170,68.746,68.215,67.822,67.666,67.602,67.464,67.267,67.141,67.144,67.239,67.393,67.588,67.753,67.808,67.807,
-67.939,68.316,68.843,69.322,69.640,69.800,69.876,70.017,70.413,71.095,71.796,72.167,72.127,71.874,71.496,70.780,
-69.516,67.855,66.205,64.875,64.011,63.789,64.385,65.666,67.126,68.217,68.665,68.429,67.628,66.605,65.817,65.383,
-64.907,64.082,63.342,63.500,64.654,65.877,66.179,65.457,64.261,62.958,61.551,60.137,59.011,58.227,57.470,56.532,
-55.656,55.225,55.325,55.779,56.375,56.879,57.035,56.786,56.261,55.305,53.348,50.313,47.517,46.947,49.274,53.039,
-56.141,57.793,58.627,59.296,59.730,59.738,59.585,59.592,59.622,59.391,59.025,58.880,58.929,58.763,58.187,57.449,
-56.795,56.122,55.241,54.262,53.487,53.035,52.725,52.297,51.652,50.942,50.481,50.466,50.703,50.686,50.077,49.051,
-48.113,47.657,47.743,48.123,48.331,47.925,46.893,45.725,44.858,44.162,43.293,42.486,42.493,43.542,44.750,44.941,
-43.867,42.297,41.080,40.476,40.332,40.457,40.654,40.679,40.422,40.031,39.726,39.532,39.246,38.595,37.420,35.841,
-34.294,33.251,32.809,32.633,32.359,31.941,31.515,31.114,30.666,30.162,29.650,29.136,28.634,28.265,28.121,28.079,
-27.921,27.636,27.408,27.302,27.161,26.875,26.546,26.286,25.994,25.494,24.788,24.037,23.358,22.769,22.290,21.931,
-21.587,21.079,20.368,19.626,19.049,18.657,18.320,17.938,17.526,17.139,16.780,16.425,16.115,15.939,15.903,15.857,
-15.643,15.298,15.016,14.890,14.795,14.588,14.339,14.233,14.312,14.443,14.525,14.604,14.735,14.836,14.745,14.377,
-13.785,13.104,12.463,11.919,11.455,11.037,10.665,10.339,10.003,9.595,9.153,8.772,8.469,8.166,7.842,7.598,
-7.513,7.523,7.496,7.383,7.215,7.007,6.755,6.490,6.249,6.012,5.749,5.501,5.338,5.248,5.158,5.040,
-4.906,4.717,4.435,4.157,4.078,4.223,4.342,4.167,3.736,3.346,3.222,3.314,3.394,3.284,2.962,2.530,
-2.117,1.801,1.581,1.420,1.297,1.191,1.066,.897,.699,.497,.268,-.036,-.414,-.804,-1.140,-1.408,
--1.640,-1.881,-2.156,-2.448,-2.708,-2.899,-3.021,-3.098,-3.146,-3.193,-3.281,-3.432,-3.614,-3.785,-3.940,-4.095,
--4.229,-4.322,-4.409,-4.553,-4.735,-4.857,-4.864,-4.817,-4.799,-4.813,-4.809,-4.772,-4.733,-4.715,-4.733,-4.819,
--4.998,-5.237,-5.473,-5.684,-5.904,-6.154,-6.409,-6.641,-6.860,-7.077,-7.274,-7.432,-7.558,-7.679,-7.805,-7.929,
--8.035,-8.117,-8.182,-8.239,-8.294,-8.345,-8.393,-8.445,-8.504,-8.553,-8.586,-8.628,-8.717,-8.856,-8.994,-9.087,
--9.134,-9.170,-9.213,-9.254,-9.280,-9.298,-9.328,-9.378,-9.432,-9.467,-9.475,-9.476,-9.489,-9.510,-9.514,-9.492,
--9.467,-9.472,-9.511,-9.556,-9.573,-9.547,-9.496,-9.451,-9.430,-9.427,-9.418,-9.386,-9.336,-9.285,-9.255,-9.252,
--9.262,-9.261,-9.249,-9.259,-9.309,-9.366,-9.381,-9.349,-9.312,-9.294,-9.272,-9.218,-9.138,-9.054,-8.965,-8.857,
--8.731,-8.605,-8.484,-8.357,-8.209,-8.048,-7.899,-7.787,-7.702,-7.604,-7.464,-7.299,-7.156,-7.062,-6.998,-6.944,
--6.889,-6.816,-6.712,-6.598,-6.525,-6.500,-6.465,-6.387,-6.317,-6.305,-6.311,-6.261,-6.176,-6.150,-6.210,-6.273,
--6.276,-6.264,-6.309,-6.405,-6.502,-6.591,-6.693,-6.794,-6.864,-6.909,-6.968,-7.053,-7.144,-7.240,-7.366,-7.531,
--7.707,-7.879,-8.071,-8.312,-8.588,-8.845,-9.041,-9.174,-9.276,-9.380,-9.493,-9.599,-9.697,-9.795,-9.881,-9.920,
--9.914,-9.929,-10.027,-10.171,-10.269,-10.294,-10.308,-10.358,-10.414,-10.433,-10.426,-10.431,-10.439,-10.427,-10.411,-10.422,
--10.440,-10.413,-10.340,-10.276,-10.245,-10.211,-10.158,-10.137,-10.193,-10.271,-10.260,-10.129,-9.953,-9.825,-9.767,-9.738,
--9.709,-9.675,-9.635,-9.582,-9.518,-9.449,-9.373,-9.280,-9.168,-9.042,-8.903,-8.755,-8.614,-8.487,-8.340,-8.124,
--7.849,-7.589,-7.388,-7.196,-6.951,-6.679,-6.461,-6.315,-6.169,-5.970,-5.738,-5.507,-5.271,-5.026,-4.790,-4.559,
--4.271,-3.897,-3.503,-3.177,-2.899,-2.585,-2.218,-1.861,-1.525,-1.132,-.628,-.081,.408,.840,1.294,1.809,
-2.318,2.717,2.963,3.085,3.082,2.825,2.149,1.127,.235,.122,1.180,3.361,6.362,9.822,13.368,16.725,
-19.930,23.253,26.669,29.570,31.272,31.792,31.824,31.923,32.027,31.875,31.526,31.227,31.005,30.743,30.508,30.459,
-30.450,30.104,29.350,28.575,28.092,27.749,27.265,26.738,26.532,26.750,27.119,27.390,27.617,27.961,28.396,28.738,
-28.857,28.771,28.573,28.353,28.175,28.059,27.981,27.925,27.916,28.000,28.167,28.256,27.952,26.987,25.443,23.810,
-22.600,21.883,21.314,20.647,20.044,19.772,19.765,19.687,19.386,19.059,18.902,18.803,18.497,17.918,17.231,16.548,
-15.776,14.794,13.656,12.522,11.444,10.309,9.024,7.697,6.597,5.937,5.700,5.595,5.220,4.307,2.914,1.362,
--.016,-1.112,-2.063,-3.136,-4.568,-6.388,-8.257,-9.595,-10.059,-9.928,-9.854,-10.161,-10.544,-10.540,-10.134,-9.728,
--9.620,-9.770,-10.035,-10.382,-10.800,-11.207,-11.591,-12.116,-12.949,-14.036,-15.176,-16.242,-17.205,-17.975,-18.366,-18.240,
--17.629,-16.726,-15.834,-15.255,-15.089,-15.152,-15.197,-15.230,-15.454,-15.886,-16.233,-16.246,-16.064,-16.028,-16.246,-16.525,
--16.707,-16.865,-17.123,-17.419,-17.557,-17.429,-17.111,-16.749,-16.419,-16.077,-15.645,-15.154,-14.753,-14.507,-14.212,-13.605,
--12.772,-12.179,-12.131,-12.353,-12.313,-11.864,-11.355,-11.145,-11.318,-11.872,-12.806,-13.763,-13.953,-12.909,-11.248,-10.224,
--10.412,-11.172,-11.563,-11.454,-11.411,-11.763,-12.231,-12.441,-12.396,-12.283,-12.128,-11.850,-11.496,-11.202,-10.997,-10.792,
--10.543,-10.272,-9.988,-9.716,-9.566,-9.633,-9.824,-9.920,-9.827,-9.657,-9.537,-9.460,-9.362,-9.240,-9.122,-8.999,
--8.862,-8.751,-8.684,-8.597,-8.425,-8.208,-8.041,-7.949,-7.875,-7.785,-7.698,-7.623,-7.524,-7.363,-7.138,-6.863,
--6.567,-6.291,-6.049,-5.796,-5.481,-5.127,-4.802,-4.512,-4.199,-3.840,-3.487,-3.167,-2.818,-2.376,-1.869,-1.366,
--.881,-.390,.089,.517,.917,1.361,1.872,2.395,2.884,3.344,3.793,4.217,4.606,4.985,5.379,5.769,
-6.121,6.431,6.722,7.015,7.322,7.657,8.024,8.394,8.727,9.007,9.245,9.454,9.651,9.863,10.113,10.370,
-10.555,10.614,10.579,10.536,10.536,10.569,10.602,10.637,10.686,10.739,10.760,10.744,10.732,10.763,10.839,10.940,
-11.064,11.212,11.355,11.461,11.546,11.656,11.787,11.876,11.911,11.994,12.221,12.521,12.705,12.700,12.671,12.832,
-13.161,13.386,13.280,12.913,12.560,12.409,12.427,12.480,12.493,12.451,12.330,12.113,11.861,11.680,11.622,11.662,
-11.779,11.968,12.145,12.141,11.862,11.425,11.060,10.978,10.987,11.019,11.016,10.989,10.971,10.965,10.959,10.951,
-10.941,10.933,10.952,11.011,11.078,11.104,11.096,11.117,11.194,11.292,11.379,11.475,11.601,11.738,11.871,12.017,
-12.192,12.371,12.536,12.716,12.937,13.174,13.395,13.609,13.841,14.082,14.318,14.570,14.856,15.143,15.400,15.656,
-15.934,16.171,16.281,16.298,16.345,16.488,16.681,16.878,17.113,17.475,18.054,18.888,19.849,20.599,20.841,20.673,
-20.543,20.758,21.146,21.325,21.186,20.978,20.947,21.063,21.085,20.760,19.957,18.751,17.404,16.178,15.134,14.186,
-13.315,12.614,12.101,11.643,11.114,10.539,9.993,9.468,8.908,8.310,7.709,7.115,6.537,6.016,5.564,5.120,
-4.618,4.042,3.386,2.639,1.879,1.293,.998,.896,.806,.641,.368,-.106,-.799,-1.471,-1.814,-1.850,
--1.923,-2.228,-2.578,-2.753,-2.889,-3.332,-4.214,-5.340,-6.399,-7.151,-7.507,-7.622,-7.840,-8.348,-8.929,-9.257,
--9.386,-9.661,-10.142,-10.453,-10.375,-10.323,-10.927,-12.253,-13.688,-14.524,-14.463,-13.663,-12.656,-12.301,-13.377,-15.845,
--18.556,-20.034,-19.681,-18.206,-16.899,-16.588,-17.267,-18.484,-19.842,-21.146,-22.266,-23.062,-23.495,-23.712,-23.952,-24.321,
--24.694,-24.829,-24.584,-24.061,-23.556,-23.350,-23.481,-23.756,-24.041,-24.490,-25.310,-26.304,-26.889,-26.758,-26.368,-26.464,
--27.097,-27.451,-26.789,-25.372,-24.210,-24.027,-24.711,-25.698,-26.577,-27.249,-27.766,-28.233,-28.743,-29.225,-29.453,-29.328,
--29.095,-29.077,-29.225,-29.159,-28.708,-28.178,-27.967,-28.037,-27.979,-27.534,-26.893,-26.434,-26.338,-26.513,-26.806,-27.170,
--27.643,-28.223,-28.799,-29.194,-29.305,-29.209,-29.105,-29.146,-29.341,-29.603,-29.850,-30.042,-30.173,-30.261,-30.332,-30.383,
--30.394,-30.375,-30.383,-30.458,-30.591,-30.776,-31.044,-31.393,-31.733,-31.976,-32.169,-32.444,-32.853,-33.311,-33.737,-34.143,
--34.557,-34.924,-35.182,-35.387,-35.699,-36.223,-36.862,-37.334,-37.336,-36.762,-35.826,-34.960,-34.543,-34.702,-35.358,-36.359,
--37.526,-38.643,-39.537,-40.193,-40.721,-41.214,-41.687,-42.126,-42.530,-42.876,-43.145,-43.397,-43.726,-44.130,-44.500,-44.801,
--45.158,-45.685,-46.308,-46.865,-47.343,-47.881,-48.560,-49.293,-49.965,-50.569,-51.167,-51.758,-52.289,-52.746,-53.171,-53.603,
--54.051,-54.532,-55.096,-55.774,-56.537,-57.329,-58.140,-59.002,-59.905,-60.750,-61.437,-61.976,-62.466,-62.961,-63.423,-63.816,
--64.191,-64.619,-65.086,-65.526,-65.928,-66.343,-66.797,-67.256,-67.683,-68.067,-68.389,-68.633,-68.823,-68.998,-69.145,-69.210,
--69.197,-69.187,-69.237,-69.316,-69.360,-69.335,-69.238,-69.091,-68.975,-68.989,-69.141,-69.333,-69.493,-69.634,-69.740,-69.721,
--69.545,-69.335,-69.202,-69.059,-68.744,-68.303,-68.014,-68.083,-68.443,-68.863,-69.185,-69.400,-69.560,-69.647,-69.514,-69.011,
--68.226,-67.527,-67.246,-67.332,-67.422,-67.200,-66.533,-65.360,-63.764,-62.222,-61.451,-61.767,-62.717,-63.514,-63.701,-63.255,
--62.273,-60.909,-59.530,-58.571,-58.152,-58.041,-58.011,-57.994,-57.869,-57.396,-56.521,-55.529,-54.700,-53.971,-53.119,-52.135,
--51.193,-50.328,-49.354,-48.154,-46.873,-45.756,-44.832,-43.831,-42.460,-40.813,-39.455,-38.909,-39.015,-39.007,-38.369,-37.399,
--36.724,-36.435,-36.043,-35.235,-34.274,-33.547,-33.029,-32.396,-31.459,-30.271,-28.947,-27.593,-26.355,-25.340,-24.498,-23.692,
--22.848,-21.977,-21.099,-20.229,-19.373,-18.452,-17.317,-15.976,-14.693,-13.716,-12.987,-12.325,-11.803,-11.662,-11.838,-11.852,
--11.311,-10.333,-9.327,-8.516,-7.834,-7.168,-6.494,-5.804,-5.066,-4.276,-3.449,-2.576,-1.656,-.739,.102,.838,
-1.465,2.010,2.617,3.489,4.610,5.602,6.102,6.247,6.531,7.129,7.624,7.558,7.076,6.772,6.993,7.545,
-8.082,8.533,9.040,9.653,10.267,10.828,11.430,12.148,12.894,13.497,13.923,14.312,14.793,15.361,15.964,16.659,
-17.540,18.534,19.410,20.057,20.638,21.369,22.217,22.952,23.470,23.935,24.577,25.449,26.438,27.416,28.359,29.353,
-30.519,31.867,33.204,34.256,34.926,35.375,35.812,36.286,36.733,37.152,37.635,38.249,38.976,39.767,40.573,41.349,
-42.078,42.784,43.449,43.974,44.302,44.556,44.939,45.491,46.039,46.403,46.568,46.651,46.829,47.344,48.384,49.835,
-51.243,52.179,52.627,52.885,53.180,53.513,53.862,54.325,54.979,55.733,56.424,56.958,57.296,57.403,57.324,57.250,
-57.395,57.830,58.498,59.316,60.163,60.803,61.022,60.884,60.735,60.852,61.169,61.440,61.601,61.821,62.214,62.640,
-62.880,62.918,62.917,62.974,63.029,63.050,63.154,63.447,63.805,63.994,64.012,64.155,64.679,65.501,66.354,67.143,
-67.978,68.874,69.630,70.061,70.207,70.184,69.935,69.317,68.427,67.676,67.449,67.744,68.221,68.554,68.669,68.656,
-68.569,68.370,68.038,67.657,67.359,67.188,67.067,66.894,66.649,66.395,66.214,66.166,66.258,66.416,66.508,66.455,
-66.340,66.326,66.478,66.714,66.936,67.121,67.256,67.313,67.374,67.669,68.331,69.151,69.732,69.907,69.809,69.516,
-68.828,67.584,66.044,64.756,64.080,64.038,64.556,65.577,66.865,67.951,68.455,68.366,67.911,67.297,66.689,66.249,
-65.924,65.344,64.284,63.222,63.076,64.189,65.815,66.809,66.679,65.766,64.607,63.451,62.334,61.285,60.314,59.418,
-58.701,58.339,58.359,58.583,58.837,59.047,59.076,58.758,58.181,57.585,56.709,54.648,51.013,47.170,45.559,47.379,
-51.340,55.060,57.338,58.611,59.575,60.218,60.322,60.154,60.146,60.251,60.124,59.763,59.508,59.461,59.318,58.866,
-58.284,57.801,57.351,56.756,56.083,55.567,55.241,54.834,54.057,52.918,51.803,51.226,51.395,51.907,51.996,51.231,
-49.933,48.835,48.406,48.588,49.010,49.264,49.072,48.424,47.585,46.770,45.886,44.829,43.965,43.928,44.769,45.647,
-45.612,44.531,43.021,41.726,40.951,40.827,41.329,42.041,42.289,41.762,40.851,40.227,40.153,40.279,39.984,38.868,
-37.059,35.171,33.869,33.340,33.237,33.142,32.929,32.629,32.170,31.477,30.707,30.135,29.830,29.626,29.383,29.094,
-28.746,28.289,27.795,27.452,27.307,27.173,26.884,26.504,26.159,25.811,25.333,24.740,24.171,23.673,23.166,22.612,
-22.087,21.617,21.092,20.406,19.637,18.989,18.571,18.282,17.951,17.531,17.133,16.852,16.631,16.333,15.931,15.554,
-15.322,15.210,15.120,15.017,14.921,14.810,14.628,14.399,14.227,14.180,14.236,14.348,14.499,14.656,14.728,14.621,
-14.314,13.847,13.273,12.631,11.969,11.354,10.854,10.504,10.253,9.990,9.635,9.223,8.847,8.528,8.213,7.886,
-7.623,7.478,7.407,7.331,7.226,7.099,6.935,6.718,6.479,6.254,6.020,5.734,5.428,5.181,5.025,4.933,
-4.866,4.782,4.606,4.305,3.985,3.814,3.807,3.774,3.545,3.181,2.902,2.846,2.952,3.050,2.995,2.734,
-2.310,1.843,1.461,1.229,1.115,1.035,.922,.770,.624,.508,.376,.144,-.215,-.649,-1.078,-1.451,
--1.738,-1.938,-2.110,-2.345,-2.660,-2.960,-3.151,-3.251,-3.332,-3.417,-3.493,-3.587,-3.751,-3.970,-4.172,-4.328,
--4.465,-4.574,-4.612,-4.613,-4.685,-4.859,-5.009,-5.012,-4.904,-4.819,-4.806,-4.814,-4.809,-4.827,-4.906,-5.044,
--5.232,-5.463,-5.700,-5.895,-6.056,-6.244,-6.482,-6.718,-6.910,-7.085,-7.281,-7.475,-7.626,-7.743,-7.874,-8.025,
--8.154,-8.234,-8.292,-8.354,-8.416,-8.459,-8.487,-8.518,-8.556,-8.588,-8.604,-8.613,-8.640,-8.710,-8.823,-8.947,
--9.039,-9.095,-9.149,-9.223,-9.290,-9.312,-9.295,-9.295,-9.343,-9.411,-9.449,-9.447,-9.439,-9.453,-9.480,-9.494,
--9.479,-9.446,-9.416,-9.408,-9.421,-9.431,-9.411,-9.363,-9.327,-9.330,-9.359,-9.371,-9.342,-9.282,-9.213,-9.155,
--9.112,-9.079,-9.051,-9.034,-9.045,-9.074,-9.089,-9.067,-9.024,-8.991,-8.961,-8.912,-8.846,-8.790,-8.751,-8.695,
--8.593,-8.460,-8.322,-8.186,-8.041,-7.881,-7.713,-7.552,-7.418,-7.316,-7.221,-7.098,-6.955,-6.833,-6.755,-6.699,
--6.640,-6.578,-6.511,-6.421,-6.315,-6.239,-6.212,-6.187,-6.117,-6.036,-6.003,-6.003,-5.972,-5.909,-5.891,-5.955,
--6.036,-6.070,-6.073,-6.097,-6.153,-6.220,-6.303,-6.409,-6.512,-6.575,-6.614,-6.678,-6.779,-6.887,-6.992,-7.118,
--7.278,-7.457,-7.644,-7.858,-8.110,-8.374,-8.606,-8.791,-8.945,-9.089,-9.225,-9.334,-9.405,-9.456,-9.519,-9.593,
--9.644,-9.662,-9.698,-9.803,-9.941,-10.025,-10.035,-10.040,-10.093,-10.162,-10.188,-10.177,-10.172,-10.186,-10.198,-10.207,
--10.226,-10.238,-10.199,-10.110,-10.029,-9.993,-9.971,-9.928,-9.897,-9.927,-9.995,-10.002,-9.897,-9.738,-9.620,-9.571,
--9.547,-9.508,-9.458,-9.409,-9.356,-9.287,-9.206,-9.119,-9.024,-8.921,-8.814,-8.699,-8.563,-8.415,-8.281,-8.149,
--7.963,-7.697,-7.422,-7.216,-7.058,-6.858,-6.598,-6.362,-6.201,-6.058,-5.859,-5.622,-5.393,-5.163,-4.902,-4.636,
--4.408,-4.182,-3.880,-3.506,-3.146,-2.841,-2.549,-2.233,-1.917,-1.606,-1.228,-.726,-.149,.399,.873,1.318,
-1.798,2.320,2.816,3.193,3.415,3.511,3.450,3.073,2.294,1.381,.916,1.382,2.885,5.276,8.362,11.868,
-15.420,18.813,22.165,25.539,28.489,30.373,31.171,31.594,32.201,32.766,32.765,32.211,31.614,31.281,31.111,31.002,
-31.022,31.080,30.864,30.314,29.808,29.611,29.420,28.807,27.926,27.369,27.362,27.518,27.463,27.348,27.537,28.029,
-28.488,28.707,28.777,28.814,28.773,28.615,28.475,28.524,28.719,28.858,28.862,28.862,28.907,28.698,27.801,26.199,
-24.464,23.237,22.590,22.072,21.363,20.650,20.265,20.166,20.013,19.666,19.340,19.231,19.202,18.988,18.545,18.018,
-17.449,16.699,15.697,14.588,13.550,12.549,11.391,9.993,8.577,7.565,7.288,7.699,8.288,8.350,7.478,5.854,
-4.038,2.458,1.168,-.001,-1.236,-2.728,-4.593,-6.610,-8.176,-8.826,-8.802,-8.840,-9.329,-9.919,-10.086,-9.827,
--9.565,-9.538,-9.620,-9.707,-9.912,-10.314,-10.761,-11.124,-11.553,-12.306,-13.406,-14.639,-15.792,-16.748,-17.387,-17.578,
--17.290,-16.623,-15.762,-14.977,-14.578,-14.680,-15.035,-15.294,-15.434,-15.724,-16.224,-16.576,-16.469,-16.093,-15.895,-16.015,
--16.202,-16.271,-16.336,-16.543,-16.796,-16.897,-16.815,-16.662,-16.494,-16.260,-15.918,-15.490,-15.016,-14.536,-14.070,-13.567,
--12.949,-12.291,-11.872,-11.880,-12.117,-12.164,-11.843,-11.373,-11.064,-11.075,-11.479,-12.256,-13.030,-13.111,-12.184,-10.891,
--10.317,-10.825,-11.706,-12.117,-12.025,-11.990,-12.266,-12.554,-12.565,-12.406,-12.295,-12.194,-11.929,-11.510,-11.114,-10.826,
--10.579,-10.301,-9.982,-9.626,-9.273,-9.051,-9.083,-9.306,-9.511,-9.559,-9.493,-9.409,-9.331,-9.248,-9.177,-9.120,
--9.035,-8.902,-8.770,-8.677,-8.578,-8.411,-8.205,-8.041,-7.942,-7.864,-7.778,-7.701,-7.633,-7.537,-7.378,-7.155,
--6.889,-6.609,-6.352,-6.126,-5.884,-5.572,-5.214,-4.878,-4.578,-4.257,-3.891,-3.534,-3.225,-2.911,-2.517,-2.043,
--1.552,-1.073,-.596,-.119,.337,.773,1.221,1.692,2.162,2.613,3.048,3.468,3.865,4.246,4.642,5.062,
-5.474,5.841,6.160,6.451,6.735,7.031,7.356,7.711,8.065,8.383,8.657,8.904,9.139,9.364,9.584,9.800,
-9.981,10.084,10.097,10.081,10.113,10.212,10.321,10.383,10.409,10.448,10.517,10.575,10.592,10.591,10.612,10.666,
-10.746,10.862,11.025,11.203,11.347,11.457,11.580,11.720,11.824,11.877,11.973,12.191,12.438,12.518,12.396,12.310,
-12.520,12.970,13.300,13.231,12.862,12.540,12.470,12.562,12.623,12.583,12.482,12.325,12.090,11.837,11.698,11.719,
-11.796,11.807,11.733,11.616,11.461,11.260,11.071,10.978,11.145,11.182,11.161,11.109,11.082,11.099,11.117,11.109,
-11.096,11.105,11.136,11.174,11.210,11.242,11.271,11.315,11.389,11.473,11.538,11.600,11.697,11.825,11.938,12.030,
-12.149,12.322,12.514,12.702,12.914,13.165,13.410,13.614,13.809,14.038,14.283,14.511,14.745,15.014,15.290,15.540,
-15.806,16.126,16.425,16.583,16.623,16.696,16.877,17.084,17.239,17.425,17.814,18.495,19.394,20.289,20.896,21.047,
-20.884,20.781,20.987,21.384,21.653,21.634,21.454,21.337,21.372,21.420,21.191,20.453,19.251,17.899,16.686,15.633,
-14.629,13.694,12.969,12.456,11.975,11.401,10.807,10.295,9.822,9.279,8.632,7.919,7.181,6.484,5.917,5.488,
-5.085,4.600,4.035,3.424,2.751,2.048,1.473,1.159,1.026,.882,.623,.238,-.303,-.969,-1.531,-1.747,
--1.707,-1.765,-2.085,-2.452,-2.670,-2.907,-3.467,-4.372,-5.347,-6.139,-6.680,-7.005,-7.226,-7.517,-7.954,-8.394,
--8.684,-8.940,-9.383,-9.926,-10.246,-10.346,-10.728,-11.792,-13.239,-14.335,-14.624,-14.170,-13.288,-12.426,-12.289,-13.565,
--16.181,-18.994,-20.550,-20.266,-18.815,-17.447,-17.033,-17.664,-18.878,-20.139,-21.167,-21.967,-22.632,-23.172,-23.551,-23.813,
--24.062,-24.293,-24.347,-24.095,-23.633,-23.227,-23.076,-23.178,-23.436,-23.841,-24.481,-25.333,-26.124,-26.505,-26.451,-26.377,
--26.724,-27.395,-27.753,-27.238,-25.931,-24.457,-23.458,-23.232,-23.729,-24.655,-25.595,-26.297,-26.892,-27.653,-28.442,-28.670,
--28.059,-27.242,-27.184,-27.974,-28.573,-28.007,-26.526,-25.268,-24.911,-25.048,-24.923,-24.414,-24.050,-24.257,-24.917,-25.659,
--26.311,-26.941,-27.593,-28.163,-28.525,-28.672,-28.696,-28.687,-28.703,-28.797,-29.010,-29.304,-29.567,-29.716,-29.790,-29.884,
--30.008,-30.072,-30.027,-29.946,-29.949,-30.071,-30.274,-30.529,-30.827,-31.126,-31.370,-31.580,-31.848,-32.225,-32.661,-33.078,
--33.455,-33.815,-34.161,-34.475,-34.769,-35.103,-35.542,-36.074,-36.541,-36.658,-36.212,-35.314,-34.424,-34.055,-34.414,-35.318,
--36.409,-37.404,-38.197,-38.824,-39.375,-39.893,-40.353,-40.728,-41.058,-41.401,-41.753,-42.082,-42.413,-42.799,-43.201,-43.519,
--43.757,-44.065,-44.556,-45.159,-45.736,-46.285,-46.910,-47.638,-48.372,-49.031,-49.627,-50.194,-50.715,-51.179,-51.638,-52.149,
--52.695,-53.215,-53.712,-54.271,-54.955,-55.740,-56.550,-57.353,-58.173,-59.010,-59.792,-60.439,-60.956,-61.427,-61.903,-62.360,
--62.773,-63.176,-63.611,-64.059,-64.475,-64.869,-65.296,-65.769,-66.239,-66.662,-67.039,-67.378,-67.669,-67.903,-68.081,-68.198,
--68.245,-68.247,-68.258,-68.307,-68.371,-68.410,-68.390,-68.289,-68.145,-68.068,-68.144,-68.325,-68.484,-68.585,-68.690,-68.789,
--68.765,-68.586,-68.391,-68.284,-68.156,-67.860,-67.508,-67.400,-67.672,-68.156,-68.599,-68.904,-69.109,-69.242,-69.230,-68.938,
--68.310,-67.530,-66.992,-66.945,-67.200,-67.296,-66.937,-66.108,-64.865,-63.308,-61.852,-61.169,-61.565,-62.556,-63.295,-63.324,
--62.739,-61.788,-60.651,-59.570,-58.849,-58.577,-58.541,-58.504,-58.389,-58.134,-57.592,-56.732,-55.771,-54.930,-54.165,-53.296,
--52.296,-51.286,-50.294,-49.196,-47.934,-46.662,-45.597,-44.754,-43.856,-42.585,-41.003,-39.675,-39.167,-39.353,-39.441,-38.853,
--37.874,-37.203,-36.993,-36.726,-36.004,-35.072,-34.388,-33.973,-33.436,-32.485,-31.169,-29.700,-28.257,-26.956,-25.851,-24.909,
--24.068,-23.304,-22.602,-21.888,-21.091,-20.217,-19.292,-18.290,-17.211,-16.163,-15.267,-14.499,-13.797,-13.243,-12.982,-12.928,
--12.734,-12.132,-11.189,-10.178,-9.300,-8.586,-7.960,-7.301,-6.512,-5.610,-4.699,-3.819,-2.915,-1.977,-1.102,-.341,
-.377,1.100,1.771,2.428,3.293,4.424,5.412,5.778,5.655,5.727,6.344,7.031,7.134,6.727,6.527,6.987,
-7.826,8.537,9.031,9.585,10.343,11.154,11.864,12.522,13.216,13.871,14.337,14.627,14.930,15.380,15.935,16.520,
-17.190,18.039,18.999,19.870,20.578,21.268,22.068,22.858,23.389,23.616,23.787,24.208,24.985,26.009,27.122,28.264,
-29.507,30.942,32.510,33.949,34.984,35.572,35.915,36.214,36.514,36.811,37.187,37.740,38.432,39.127,39.751,40.337,
-40.938,41.563,42.194,42.791,43.283,43.634,43.915,44.262,44.724,45.222,45.632,45.871,45.951,46.055,46.517,47.587,
-49.110,50.576,51.559,52.046,52.294,52.495,52.707,53.015,53.545,54.300,55.125,55.859,56.428,56.786,56.889,56.810,
-56.760,56.925,57.348,58.005,58.875,59.819,60.518,60.703,60.478,60.243,60.276,60.490,60.660,60.769,60.994,61.395,
-61.781,61.934,61.885,61.857,61.968,62.113,62.171,62.222,62.437,62.799,63.094,63.244,63.469,64.024,64.865,65.739,
-66.535,67.351,68.210,68.928,69.328,69.431,69.298,68.842,68.005,67.055,66.481,66.520,66.948,67.381,67.649,67.804,
-67.879,67.823,67.629,67.392,67.210,67.083,66.951,66.773,66.536,66.237,65.894,65.567,65.337,65.244,65.247,65.263,
-65.248,65.244,65.309,65.435,65.556,65.653,65.754,65.839,65.824,65.722,65.726,66.006,66.448,66.757,66.814,66.759,
-66.671,66.371,65.710,64.938,64.557,64.807,65.493,66.317,67.145,67.897,68.381,68.447,68.195,67.866,67.570,67.264,
-66.912,66.469,65.752,64.629,63.435,62.956,63.724,65.359,66.799,67.189,66.499,65.322,64.262,63.532,62.980,62.387,
-61.736,61.221,60.993,60.962,60.932,60.848,60.732,60.437,59.761,58.860,58.141,57.458,55.787,52.359,48.141,45.547,
-46.261,49.624,53.487,56.359,58.243,59.644,60.587,60.882,60.770,60.730,60.840,60.790,60.467,60.131,59.971,59.838,
-59.537,59.127,58.748,58.371,57.903,57.425,57.101,56.904,56.558,55.802,54.639,53.394,52.529,52.293,52.426,52.320,
-51.610,50.570,49.801,49.598,49.753,49.899,49.841,49.563,49.120,48.590,47.992,47.237,46.318,45.546,45.335,45.660,
-45.937,45.598,44.628,43.404,42.257,41.425,41.225,41.826,42.816,43.349,42.917,41.836,40.850,40.395,40.295,40.025,
-39.176,37.786,36.344,35.383,34.992,34.822,34.572,34.271,33.987,33.528,32.705,31.754,31.177,31.135,31.261,31.103,
-30.541,29.717,28.798,27.958,27.392,27.159,27.064,26.860,26.498,26.083,25.649,25.149,24.622,24.196,23.889,23.542,
-23.012,22.352,21.708,21.117,20.494,19.805,19.160,18.684,18.350,17.996,17.545,17.123,16.895,16.806,16.588,16.071,
-15.410,14.920,14.741,14.751,14.781,14.775,14.740,14.641,14.439,14.181,13.992,13.975,14.137,14.389,14.588,14.613,
-14.438,14.129,13.743,13.264,12.642,11.905,11.187,10.639,10.315,10.128,9.934,9.647,9.295,8.950,8.631,8.314,
-8.011,7.772,7.609,7.471,7.311,7.142,6.990,6.836,6.652,6.446,6.239,6.014,5.737,5.419,5.123,4.904,
-4.779,4.717,4.645,4.475,4.191,3.878,3.630,3.433,3.197,2.907,2.667,2.574,2.607,2.669,2.683,2.610,
-2.419,2.097,1.692,1.322,1.083,.973,.885,.716,.478,.283,.192,.122,-.070,-.423,-.853,-1.272,
--1.638,-1.910,-2.057,-2.153,-2.355,-2.723,-3.121,-3.392,-3.545,-3.687,-3.845,-3.973,-4.085,-4.258,-4.486,-4.667,
--4.746,-4.770,-4.773,-4.722,-4.633,-4.618,-4.732,-4.865,-4.877,-4.789,-4.734,-4.769,-4.845,-4.929,-5.053,-5.236,
--5.445,-5.657,-5.882,-6.104,-6.281,-6.419,-6.582,-6.797,-7.010,-7.175,-7.323,-7.495,-7.658,-7.772,-7.871,-8.024,
--8.218,-8.367,-8.432,-8.461,-8.504,-8.553,-8.582,-8.608,-8.655,-8.711,-8.741,-8.740,-8.733,-8.747,-8.790,-8.859,
--8.937,-9.003,-9.058,-9.132,-9.234,-9.320,-9.335,-9.293,-9.270,-9.310,-9.377,-9.411,-9.407,-9.401,-9.417,-9.445,
--9.465,-9.464,-9.434,-9.379,-9.330,-9.311,-9.306,-9.281,-9.236,-9.217,-9.250,-9.298,-9.306,-9.262,-9.191,-9.120,
--9.050,-8.980,-8.915,-8.869,-8.853,-8.865,-8.876,-8.848,-8.780,-8.712,-8.669,-8.626,-8.555,-8.473,-8.421,-8.395,
--8.352,-8.268,-8.158,-8.032,-7.882,-7.709,-7.539,-7.386,-7.240,-7.095,-6.968,-6.860,-6.747,-6.616,-6.497,-6.417,
--6.361,-6.300,-6.234,-6.173,-6.103,-6.014,-5.936,-5.900,-5.880,-5.828,-5.754,-5.709,-5.701,-5.687,-5.654,-5.650,
--5.705,-5.782,-5.832,-5.859,-5.890,-5.929,-5.966,-6.013,-6.087,-6.168,-6.233,-6.299,-6.397,-6.523,-6.641,-6.742,
--6.858,-7.012,-7.192,-7.389,-7.615,-7.869,-8.120,-8.332,-8.507,-8.677,-8.861,-9.036,-9.162,-9.225,-9.257,-9.303,
--9.370,-9.425,-9.452,-9.487,-9.572,-9.678,-9.736,-9.732,-9.734,-9.795,-9.881,-9.921,-9.905,-9.885,-9.898,-9.933,
--9.968,-9.998,-10.009,-9.976,-9.896,-9.814,-9.769,-9.749,-9.713,-9.664,-9.649,-9.676,-9.684,-9.616,-9.497,-9.403,
--9.364,-9.340,-9.292,-9.232,-9.186,-9.141,-9.069,-8.969,-8.864,-8.762,-8.662,-8.567,-8.471,-8.354,-8.210,-8.073,
--7.956,-7.805,-7.562,-7.270,-7.037,-6.888,-6.736,-6.519,-6.284,-6.095,-5.924,-5.714,-5.480,-5.269,-5.055,-4.781,
--4.470,-4.208,-4.007,-3.781,-3.476,-3.140,-2.836,-2.561,-2.275,-1.969,-1.641,-1.266,-.816,-.308,.226,.760,
-1.282,1.805,2.359,2.928,3.410,3.709,3.857,3.926,3.823,3.361,2.599,1.964,1.934,2.725,4.378,6.924,
-10.235,13.863,17.366,20.710,24.029,27.067,29.277,30.586,31.575,32.653,33.433,33.342,32.546,31.777,31.402,31.193,
-30.987,30.992,31.281,31.509,31.445,31.378,31.563,31.614,30.952,29.709,28.649,28.162,27.868,27.367,26.901,26.947,
-27.473,28.001,28.287,28.511,28.817,29.041,29.046,29.044,29.323,29.795,30.079,30.011,29.829,29.743,29.500,28.606,
-26.998,25.259,24.053,23.447,22.973,22.289,21.557,21.082,20.833,20.527,20.067,19.648,19.409,19.229,18.953,18.633,
-18.370,18.038,17.378,16.356,15.249,14.298,13.413,12.298,10.845,9.347,8.356,8.308,9.143,10.189,10.546,9.755,
-8.129,6.353,4.810,3.421,2.022,.602,-.890,-2.641,-4.608,-6.264,-7.088,-7.260,-7.527,-8.285,-9.148,-9.564,
--9.556,-9.538,-9.639,-9.625,-9.436,-9.388,-9.716,-10.241,-10.683,-11.091,-11.748,-12.772,-13.996,-15.160,-16.036,-16.446,
--16.348,-15.891,-15.279,-14.622,-14.045,-13.817,-14.134,-14.799,-15.390,-15.764,-16.152,-16.648,-16.929,-16.679,-16.095,-15.671,
--15.588,-15.622,-15.594,-15.608,-15.773,-15.965,-16.025,-16.000,-16.022,-16.082,-16.067,-15.935,-15.690,-15.258,-14.583,-13.797,
--13.136,-12.684,-12.343,-12.077,-11.979,-12.060,-12.122,-11.955,-11.571,-11.177,-11.007,-11.220,-11.783,-12.325,-12.294,-11.539,
--10.659,-10.485,-11.160,-11.996,-12.320,-12.198,-12.141,-12.340,-12.517,-12.447,-12.268,-12.173,-12.089,-11.822,-11.373,-10.924,
--10.590,-10.328,-10.062,-9.757,-9.395,-8.995,-8.667,-8.550,-8.662,-8.882,-9.074,-9.184,-9.210,-9.169,-9.104,-9.070,
--9.062,-9.013,-8.896,-8.766,-8.669,-8.569,-8.412,-8.222,-8.066,-7.964,-7.882,-7.801,-7.731,-7.666,-7.571,-7.419,
--7.206,-6.944,-6.659,-6.392,-6.161,-5.922,-5.624,-5.277,-4.943,-4.635,-4.308,-3.938,-3.575,-3.262,-2.965,-2.611,
--2.186,-1.734,-1.289,-.840,-.371,.114,.599,1.071,1.521,1.949,2.365,2.770,3.156,3.518,3.879,4.267,
-4.679,5.081,5.450,5.789,6.111,6.421,6.729,7.050,7.388,7.726,8.051,8.367,8.680,8.978,9.242,9.460,
-9.632,9.749,9.806,9.827,9.865,9.967,10.113,10.231,10.264,10.237,10.228,10.275,10.342,10.383,10.403,10.442,
-10.510,10.593,10.697,10.853,11.055,11.255,11.420,11.572,11.727,11.859,11.952,12.049,12.185,12.280,12.205,11.985,
-11.866,12.079,12.551,12.931,12.962,12.746,12.592,12.635,12.728,12.687,12.533,12.393,12.289,12.136,11.931,11.796,
-11.796,11.821,11.716,11.480,11.241,11.099,11.061,11.089,11.145,11.418,11.378,11.287,11.206,11.189,11.221,11.249,
-11.254,11.268,11.309,11.357,11.385,11.400,11.424,11.473,11.554,11.651,11.723,11.752,11.782,11.868,11.993,12.095,
-12.172,12.285,12.465,12.667,12.860,13.071,13.317,13.556,13.757,13.956,14.190,14.430,14.644,14.866,15.129,15.393,
-15.619,15.857,16.165,16.466,16.640,16.720,16.877,17.164,17.444,17.623,17.843,18.338,19.154,20.084,20.833,21.199,
-21.171,20.959,20.880,21.123,21.578,21.959,22.072,21.964,21.833,21.818,21.829,21.572,20.795,19.559,18.206,17.013,
-15.972,14.965,14.032,13.311,12.782,12.265,11.671,11.091,10.606,10.143,9.591,8.923,8.150,7.292,6.451,5.798,
-5.380,5.033,4.584,4.036,3.470,2.884,2.265,1.713,1.348,1.113,.847,.486,.075,-.380,-.883,-1.302,
--1.473,-1.471,-1.582,-1.930,-2.343,-2.668,-3.044,-3.674,-4.494,-5.236,-5.760,-6.132,-6.454,-6.765,-7.084,-7.403,
--7.671,-7.919,-8.329,-8.999,-9.723,-10.257,-10.774,-11.727,-13.151,-14.415,-14.858,-14.471,-13.730,-13.009,-12.521,-12.690,
--14.032,-16.460,-18.981,-20.397,-20.264,-19.114,-17.912,-17.422,-17.896,-19.053,-20.307,-21.208,-21.753,-22.220,-22.754,-23.232,
--23.530,-23.705,-23.838,-23.857,-23.655,-23.300,-22.986,-22.812,-22.758,-22.879,-23.344,-24.208,-25.223,-25.998,-26.346,-26.436,
--26.609,-27.069,-27.714,-28.173,-28.016,-27.020,-25.379,-23.719,-22.783,-22.909,-23.702,-24.366,-24.533,-24.683,-25.504,-26.832,
--27.599,-27.112,-26.109,-26.009,-27.097,-27.965,-27.110,-24.760,-22.621,-21.933,-22.281,-22.469,-22.066,-21.687,-21.998,-22.948,
--24.057,-25.051,-25.962,-26.803,-27.439,-27.787,-27.944,-28.046,-28.130,-28.180,-28.255,-28.451,-28.763,-29.065,-29.258,-29.377,
--29.511,-29.654,-29.699,-29.593,-29.439,-29.395,-29.516,-29.727,-29.944,-30.151,-30.373,-30.616,-30.878,-31.180,-31.537,-31.924,
--32.289,-32.611,-32.922,-33.272,-33.670,-34.089,-34.510,-34.964,-35.462,-35.878,-35.934,-35.433,-34.533,-33.755,-33.620,-34.253,
--35.332,-36.387,-37.141,-37.611,-37.991,-38.436,-38.944,-39.400,-39.738,-40.019,-40.345,-40.733,-41.129,-41.499,-41.845,-42.145,
--42.375,-42.590,-42.921,-43.425,-44.028,-44.639,-45.268,-45.962,-46.697,-47.395,-48.028,-48.622,-49.176,-49.654,-50.084,-50.569,
--51.160,-51.787,-52.345,-52.838,-53.381,-54.068,-54.880,-55.724,-56.536,-57.316,-58.079,-58.795,-59.412,-59.925,-60.387,-60.848,
--61.305,-61.743,-62.175,-62.621,-63.062,-63.473,-63.873,-64.313,-64.794,-65.262,-65.675,-66.046,-66.399,-66.724,-66.981,-67.145,
--67.223,-67.248,-67.264,-67.294,-67.333,-67.365,-67.382,-67.365,-67.282,-67.159,-67.105,-67.199,-67.380,-67.525,-67.618,-67.725,
--67.830,-67.816,-67.655,-67.473,-67.347,-67.185,-66.920,-66.719,-66.830,-67.267,-67.795,-68.215,-68.505,-68.699,-68.762,-68.610,
--68.186,-67.529,-66.848,-66.486,-66.620,-66.995,-67.108,-66.668,-65.731,-64.433,-62.899,-61.504,-60.878,-61.324,-62.359,-63.096,
--63.055,-62.396,-61.488,-60.556,-59.759,-59.265,-59.082,-58.987,-58.776,-58.446,-58.053,-57.534,-56.815,-55.972,-55.138,-54.317,
--53.409,-52.373,-51.247,-50.046,-48.764,-47.466,-46.291,-45.339,-44.562,-43.754,-42.682,-41.370,-40.248,-39.800,-39.949,-39.995,
--39.376,-38.355,-37.643,-37.441,-37.218,-36.515,-35.569,-34.925,-34.649,-34.260,-33.333,-31.922,-30.376,-28.963,-27.733,-26.611,
--25.538,-24.557,-23.775,-23.203,-22.673,-21.977,-21.088,-20.146,-19.269,-18.438,-17.593,-16.736,-15.928,-15.249,-14.762,-14.451,
--14.176,-13.746,-13.072,-12.204,-11.259,-10.356,-9.577,-8.898,-8.177,-7.293,-6.308,-5.373,-4.501,-3.588,-2.658,-1.875,
--1.268,-.643,.126,.914,1.640,2.498,3.617,4.633,5.025,4.883,4.927,5.580,6.375,6.591,6.257,6.102,
-6.606,7.477,8.187,8.671,9.249,10.083,10.996,11.794,12.501,13.197,13.811,14.213,14.440,14.678,15.043,15.496,
-15.999,16.631,17.460,18.395,19.272,20.077,20.956,21.963,22.912,23.562,23.899,24.159,24.593,25.277,26.140,27.099,
-28.158,29.401,30.882,32.467,33.846,34.764,35.268,35.634,36.060,36.514,36.906,37.273,37.715,38.223,38.697,39.102,
-39.520,40.035,40.643,41.287,41.910,42.461,42.909,43.265,43.588,43.953,44.398,44.869,45.217,45.342,45.408,45.830,
-46.893,48.400,49.812,50.756,51.281,51.624,51.909,52.178,52.542,53.112,53.835,54.557,55.208,55.787,56.215,56.378,
-56.320,56.269,56.408,56.759,57.325,58.148,59.116,59.867,60.078,59.837,59.562,59.547,59.724,59.886,59.998,60.189,
-60.500,60.791,60.907,60.881,60.895,61.058,61.273,61.397,61.456,61.615,61.926,62.248,62.482,62.773,63.334,64.157,
-65.039,65.871,66.716,67.582,68.310,68.743,68.850,68.585,67.834,66.695,65.670,65.313,65.664,66.245,66.643,66.880,
-67.135,67.353,67.328,67.053,66.776,66.686,66.726,66.725,66.595,66.354,66.041,65.695,65.374,65.116,64.920,64.774,
-64.688,64.679,64.743,64.841,64.932,65.004,65.089,65.219,65.348,65.358,65.191,64.953,64.792,64.715,64.603,64.447,
-64.404,64.554,64.734,64.780,64.841,65.261,66.136,67.148,67.913,68.338,68.540,68.576,68.422,68.150,67.910,67.732,
-67.482,67.076,66.576,65.993,65.176,64.108,63.234,63.237,64.326,65.845,66.747,66.501,65.477,64.469,63.926,63.682,
-63.356,62.839,62.326,61.973,61.708,61.428,61.196,61.082,60.879,60.271,59.326,58.503,57.886,56.650,53.829,49.784,
-46.480,45.897,48.243,51.965,55.374,57.856,59.593,60.724,61.211,61.234,61.191,61.262,61.275,61.075,60.778,60.560,
-60.403,60.187,59.882,59.527,59.118,58.655,58.233,57.949,57.755,57.481,56.983,56.210,55.213,54.173,53.342,52.809,
-52.391,51.890,51.387,51.131,51.148,51.160,50.912,50.436,49.926,49.494,49.121,48.740,48.270,47.689,47.119,46.742,
-46.541,46.259,45.694,44.907,44.043,43.123,42.215,41.667,41.852,42.644,43.382,43.446,42.765,41.730,40.773,40.090,
-39.598,39.075,38.404,37.738,37.294,37.003,36.559,35.878,35.254,34.889,34.504,33.735,32.769,32.216,32.321,32.609,
-32.423,31.575,30.337,29.041,27.919,27.163,26.852,26.810,26.728,26.450,26.052,25.628,25.165,24.668,24.246,23.973,
-23.734,23.322,22.671,21.917,21.222,20.613,20.022,19.438,18.930,18.516,18.100,17.605,17.142,16.899,16.856,16.710,
-16.187,15.383,14.675,14.330,14.297,14.378,14.457,14.507,14.469,14.272,13.958,13.699,13.665,13.877,14.195,14.418,
-14.415,14.195,13.863,13.497,13.063,12.482,11.758,11.030,10.467,10.133,9.949,9.787,9.573,9.310,9.026,8.731,
-8.430,8.156,7.940,7.768,7.586,7.365,7.137,6.944,6.784,6.627,6.449,6.249,6.024,5.757,5.446,5.117,
-4.834,4.653,4.566,4.486,4.327,4.093,3.843,3.589,3.271,2.877,2.523,2.346,2.348,2.398,2.383,2.299,
-2.194,2.066,1.869,1.580,1.250,.977,.806,.668,.449,.139,-.128,-.246,-.291,-.435,-.733,-1.098,
--1.447,-1.765,-2.020,-2.158,-2.239,-2.446,-2.870,-3.362,-3.723,-3.938,-4.124,-4.312,-4.437,-4.510,-4.634,-4.821,
--4.949,-4.937,-4.851,-4.778,-4.709,-4.631,-4.613,-4.709,-4.845,-4.909,-4.911,-4.950,-5.055,-5.175,-5.293,-5.447,
--5.639,-5.828,-6.008,-6.218,-6.456,-6.661,-6.811,-6.965,-7.160,-7.353,-7.507,-7.646,-7.798,-7.919,-7.977,-8.038,
--8.187,-8.398,-8.554,-8.606,-8.612,-8.631,-8.654,-8.664,-8.692,-8.768,-8.856,-8.903,-8.903,-8.896,-8.907,-8.933,
--8.966,-9.001,-9.028,-9.058,-9.120,-9.217,-9.300,-9.314,-9.277,-9.259,-9.296,-9.348,-9.372,-9.374,-9.382,-9.400,
--9.417,-9.432,-9.438,-9.411,-9.345,-9.276,-9.239,-9.217,-9.172,-9.119,-9.109,-9.153,-9.192,-9.174,-9.111,-9.044,
--8.982,-8.908,-8.820,-8.739,-8.691,-8.681,-8.694,-8.693,-8.643,-8.551,-8.460,-8.398,-8.341,-8.262,-8.176,-8.111,
--8.056,-7.980,-7.886,-7.799,-7.703,-7.556,-7.365,-7.188,-7.058,-6.938,-6.797,-6.656,-6.544,-6.439,-6.311,-6.179,
--6.086,-6.030,-5.976,-5.912,-5.854,-5.801,-5.733,-5.657,-5.604,-5.578,-5.546,-5.495,-5.452,-5.433,-5.421,-5.405,
--5.408,-5.447,-5.502,-5.547,-5.592,-5.648,-5.701,-5.732,-5.753,-5.794,-5.859,-5.941,-6.044,-6.175,-6.311,-6.419,
--6.502,-6.602,-6.746,-6.920,-7.110,-7.324,-7.569,-7.818,-8.033,-8.214,-8.390,-8.578,-8.760,-8.902,-8.991,-9.053,
--9.120,-9.193,-9.244,-9.264,-9.287,-9.351,-9.438,-9.489,-9.486,-9.478,-9.521,-9.599,-9.646,-9.638,-9.614,-9.622,
--9.658,-9.692,-9.705,-9.705,-9.692,-9.659,-9.615,-9.584,-9.565,-9.528,-9.458,-9.391,-9.368,-9.370,-9.338,-9.261,
--9.190,-9.156,-9.125,-9.062,-8.988,-8.940,-8.904,-8.832,-8.721,-8.606,-8.503,-8.401,-8.298,-8.210,-8.123,-8.011,
--7.882,-7.763,-7.626,-7.409,-7.119,-6.857,-6.684,-6.543,-6.358,-6.141,-5.943,-5.754,-5.530,-5.288,-5.077,-4.882,
--4.634,-4.335,-4.064,-3.859,-3.661,-3.413,-3.131,-2.865,-2.614,-2.340,-2.014,-1.636,-1.228,-.825,-.424,.031,
-.587,1.201,1.808,2.412,3.037,3.600,3.969,4.165,4.334,4.468,4.344,3.850,3.223,2.853,3.019,3.948,
-5.900,8.886,12.413,15.878,19.165,22.521,25.872,28.717,30.806,32.421,33.729,34.326,33.879,32.877,32.173,31.930,
-31.642,31.153,30.978,31.439,32.111,32.514,32.816,33.329,33.683,33.163,31.760,30.245,29.151,28.266,27.331,26.671,
-26.722,27.296,27.797,28.023,28.288,28.785,29.276,29.539,29.773,30.265,30.886,31.222,31.134,30.904,30.741,30.379,
-29.372,27.719,26.000,24.810,24.193,23.734,23.127,22.465,21.959,21.584,21.155,20.626,20.113,19.664,19.202,18.755,
-18.515,18.528,18.481,17.970,16.971,15.855,14.930,14.098,13.025,11.575,10.045,9.028,9.025,9.996,11.212,11.699,
-11.014,9.565,8.046,6.682,5.212,3.502,1.798,.288,-1.217,-2.888,-4.408,-5.323,-5.762,-6.375,-7.459,-8.564,
--9.152,-9.309,-9.464,-9.664,-9.579,-9.168,-8.886,-9.107,-9.677,-10.224,-10.680,-11.270,-12.153,-13.251,-14.341,-15.136,
--15.382,-15.068,-14.493,-13.972,-13.551,-13.191,-13.099,-13.567,-14.509,-15.452,-16.091,-16.549,-16.965,-17.120,-16.745,-16.014,
--15.400,-15.123,-15.014,-14.903,-14.848,-14.916,-15.013,-15.055,-15.124,-15.313,-15.563,-15.784,-15.969,-16.039,-15.714,-14.823,
--13.669,-12.836,-12.576,-12.605,-12.544,-12.361,-12.254,-12.261,-12.193,-11.907,-11.497,-11.209,-11.235,-11.542,-11.828,-11.723,
--11.201,-10.721,-10.798,-11.412,-12.020,-12.201,-12.097,-12.100,-12.297,-12.432,-12.342,-12.161,-12.053,-11.950,-11.680,-11.230,
--10.754,-10.378,-10.095,-9.842,-9.568,-9.238,-8.853,-8.478,-8.226,-8.176,-8.320,-8.574,-8.815,-8.942,-8.938,-8.888,
--8.878,-8.898,-8.871,-8.777,-8.674,-8.604,-8.527,-8.394,-8.224,-8.072,-7.960,-7.868,-7.788,-7.727,-7.672,-7.597,
--7.476,-7.295,-7.043,-6.739,-6.439,-6.181,-5.937,-5.656,-5.330,-4.999,-4.680,-4.348,-3.989,-3.637,-3.319,-3.009,
--2.662,-2.272,-1.873,-1.482,-1.082,-.639,-.148,.360,.844,1.285,1.699,2.111,2.517,2.895,3.246,3.599,
-3.977,4.366,4.738,5.090,5.439,5.791,6.140,6.483,6.819,7.150,7.480,7.830,8.218,8.624,8.994,9.282,
-9.475,9.588,9.645,9.672,9.706,9.778,9.898,10.037,10.132,10.141,10.086,10.041,10.058,10.118,10.178,10.232,
-10.309,10.413,10.511,10.599,10.725,10.923,11.162,11.378,11.552,11.712,11.875,12.020,12.129,12.196,12.203,12.135,
-12.047,12.079,12.329,12.704,12.966,12.976,12.849,12.795,12.844,12.824,12.632,12.407,12.346,12.433,12.460,12.315,
-12.105,11.963,11.865,11.702,11.470,11.286,11.239,11.301,11.383,11.418,11.621,11.542,11.450,11.387,11.371,11.381,
-11.391,11.409,11.451,11.502,11.528,11.535,11.559,11.615,11.686,11.761,11.838,11.900,11.933,11.969,12.051,12.169,
-12.271,12.356,12.479,12.660,12.855,13.031,13.214,13.427,13.642,13.840,14.049,14.287,14.518,14.724,14.952,15.225,
-15.478,15.668,15.860,16.124,16.392,16.555,16.671,16.915,17.305,17.670,17.934,18.297,18.998,19.979,20.895,21.423,
-21.491,21.259,20.999,20.971,21.277,21.786,22.225,22.402,22.340,22.216,22.156,22.070,21.687,20.807,19.533,18.204,
-17.059,16.077,15.150,14.308,13.638,13.100,12.556,11.973,11.431,10.950,10.449,9.874,9.226,8.461,7.524,6.538,
-5.777,5.355,5.074,4.679,4.147,3.602,3.079,2.543,2.042,1.657,1.334,.951,.518,.150,-.133,-.425,
--.727,-.934,-1.060,-1.285,-1.710,-2.213,-2.668,-3.151,-3.787,-4.500,-5.078,-5.424,-5.625,-5.809,-6.041,-6.326,
--6.611,-6.850,-7.135,-7.679,-8.535,-9.472,-10.327,-11.330,-12.759,-14.308,-15.173,-14.937,-14.058,-13.284,-12.893,-12.805,
--13.185,-14.427,-16.473,-18.560,-19.821,-19.961,-19.274,-18.292,-17.601,-17.699,-18.668,-20.006,-21.056,-21.619,-21.994,-22.445,
--22.888,-23.143,-23.236,-23.292,-23.297,-23.162,-22.922,-22.680,-22.449,-22.231,-22.241,-22.796,-23.898,-25.102,-25.939,-26.356,
--26.628,-26.971,-27.398,-27.874,-28.331,-28.476,-27.853,-26.351,-24.616,-23.647,-23.824,-24.422,-24.323,-23.309,-22.458,-23.010,
--24.872,-26.556,-26.830,-26.146,-26.002,-26.917,-27.602,-26.499,-23.784,-21.271,-20.362,-20.671,-20.871,-20.412,-19.921,-20.149,
--21.100,-22.307,-23.503,-24.693,-25.806,-26.617,-27.031,-27.204,-27.337,-27.479,-27.592,-27.705,-27.893,-28.168,-28.463,-28.721,
--28.938,-29.119,-29.217,-29.175,-29.006,-28.825,-28.764,-28.854,-29.012,-29.151,-29.274,-29.457,-29.741,-30.087,-30.442,-30.787,
--31.123,-31.429,-31.700,-31.988,-32.363,-32.834,-33.336,-33.839,-34.385,-34.963,-35.354,-35.239,-34.533,-33.598,-33.041,-33.240,
--34.084,-35.129,-35.971,-36.483,-36.788,-37.087,-37.498,-37.989,-38.443,-38.795,-39.101,-39.449,-39.852,-40.243,-40.563,-40.802,
--40.986,-41.160,-41.402,-41.785,-42.314,-42.931,-43.591,-44.293,-45.018,-45.709,-46.332,-46.922,-47.510,-48.063,-48.544,-49.003,
--49.544,-50.190,-50.845,-51.412,-51.908,-52.451,-53.130,-53.936,-54.786,-55.604,-56.368,-57.088,-57.763,-58.363,-58.876,-59.339,
--59.798,-60.261,-60.716,-61.163,-61.615,-62.065,-62.495,-62.917,-63.364,-63.839,-64.301,-64.715,-65.088,-65.443,-65.767,-66.019,
--66.167,-66.221,-66.230,-66.245,-66.274,-66.291,-66.286,-66.279,-66.267,-66.217,-66.135,-66.106,-66.205,-66.389,-66.562,-66.701,
--66.842,-66.954,-66.940,-66.789,-66.597,-66.415,-66.202,-65.994,-65.988,-66.319,-66.861,-67.362,-67.721,-67.985,-68.146,-68.103,
--67.808,-67.324,-66.757,-66.259,-66.055,-66.264,-66.651,-66.748,-66.275,-65.296,-63.977,-62.463,-61.117,-60.542,-61.036,-62.115,
--62.868,-62.785,-62.054,-61.136,-60.333,-59.769,-59.493,-59.392,-59.203,-58.764,-58.192,-57.686,-57.255,-56.746,-56.062,-55.243,
--54.367,-53.453,-52.451,-51.269,-49.870,-48.381,-47.033,-45.958,-45.094,-44.315,-43.548,-42.736,-41.852,-41.058,-40.647,-40.622,
--40.498,-39.824,-38.808,-38.085,-37.860,-37.626,-36.913,-35.968,-35.390,-35.275,-35.055,-34.187,-32.719,-31.114,-29.721,-28.545,
--27.414,-26.243,-25.139,-24.290,-23.737,-23.275,-22.633,-21.756,-20.854,-20.136,-19.572,-18.957,-18.175,-17.334,-16.646,-16.197,
--15.861,-15.425,-14.787,-13.998,-13.141,-12.247,-11.345,-10.509,-9.746,-8.949,-8.032,-7.077,-6.194,-5.328,-4.364,-3.409,
--2.724,-2.334,-1.929,-1.282,-.515,.208,1.024,2.089,3.121,3.647,3.708,3.923,4.662,5.501,5.795,5.574,
-5.494,5.968,6.741,7.377,7.856,8.468,9.329,10.257,11.074,11.797,12.479,13.058,13.454,13.718,13.983,14.306,
-14.671,15.116,15.751,16.601,17.534,18.426,19.328,20.382,21.577,22.697,23.549,24.161,24.701,25.283,25.904,26.547,
-27.254,28.112,29.204,30.537,31.956,33.173,33.988,34.499,35.005,35.673,36.381,36.915,37.227,37.431,37.625,37.824,
-38.049,38.369,38.832,39.416,40.063,40.730,41.390,42.003,42.515,42.912,43.270,43.712,44.244,44.674,44.814,44.818,
-45.163,46.169,47.603,48.908,49.780,50.358,50.875,51.367,51.787,52.206,52.720,53.291,53.845,54.428,55.088,55.675,
-55.955,55.927,55.843,55.911,56.151,56.572,57.259,58.143,58.871,59.100,58.890,58.640,58.653,58.887,59.143,59.327,
-59.492,59.691,59.894,60.032,60.095,60.157,60.296,60.498,60.678,60.810,60.969,61.208,61.467,61.704,62.035,62.617,
-63.433,64.310,65.157,66.024,66.918,67.699,68.216,68.376,68.043,67.093,65.749,64.678,64.458,64.982,65.618,65.970,
-66.202,66.571,66.937,66.956,66.588,66.170,66.003,66.078,66.199,66.214,66.074,65.810,65.518,65.302,65.172,65.045,
-64.879,64.735,64.681,64.690,64.688,64.663,64.666,64.745,64.890,65.037,65.089,64.971,64.706,64.396,64.115,63.866,
-63.688,63.708,64.002,64.466,64.943,65.457,66.191,67.166,68.100,68.670,68.837,68.793,68.675,68.462,68.149,67.834,
-67.562,67.224,66.757,66.316,66.055,65.775,65.061,63.917,63.062,63.290,64.544,65.838,66.216,65.644,64.832,64.341,
-64.093,63.725,63.140,62.547,62.103,61.746,61.403,61.170,61.143,61.153,60.845,60.105,59.228,58.449,57.350,55.073,
-51.451,47.791,46.133,47.516,51.082,54.961,57.853,59.618,60.670,61.272,61.508,61.531,61.539,61.574,61.540,61.389,
-61.178,60.959,60.727,60.450,60.102,59.680,59.231,58.838,58.531,58.251,57.951,57.635,57.246,56.614,55.653,54.560,
-53.668,53.121,52.820,52.646,52.579,52.538,52.330,51.842,51.200,50.615,50.165,49.801,49.477,49.173,48.838,48.422,
-47.933,47.392,46.786,46.137,45.536,44.980,44.282,43.301,42.266,41.683,41.855,42.553,43.197,43.271,42.632,41.552,
-40.515,39.846,39.478,39.146,38.745,38.354,37.937,37.286,36.400,35.634,35.228,34.902,34.220,33.290,32.717,32.788,
-33.038,32.767,31.771,30.383,29.010,27.878,27.122,26.797,26.741,26.636,26.316,25.899,25.556,25.272,24.925,24.516,
-24.170,23.920,23.614,23.075,22.315,21.517,20.834,20.268,19.745,19.237,18.756,18.268,17.732,17.226,16.914,16.813,
-16.673,16.198,15.392,14.582,14.082,13.936,13.989,14.089,14.153,14.111,13.921,13.653,13.470,13.492,13.693,13.944,
-14.103,14.084,13.886,13.570,13.198,12.765,12.222,11.564,10.888,10.330,9.959,9.738,9.582,9.425,9.235,9.007,
-8.749,8.485,8.240,8.025,7.824,7.617,7.396,7.176,6.982,6.822,6.670,6.488,6.259,6.001,5.729,5.424,
-5.078,4.747,4.522,4.415,4.337,4.201,4.026,3.856,3.647,3.308,2.864,2.474,2.264,2.198,2.150,2.055,
-1.934,1.816,1.697,1.548,1.337,1.051,.746,.509,.341,.132,-.178,-.480,-.636,-.688,-.811,-1.079,
--1.398,-1.684,-1.957,-2.224,-2.422,-2.559,-2.788,-3.210,-3.702,-4.060,-4.255,-4.402,-4.540,-4.604,-4.602,-4.648,
--4.777,-4.869,-4.831,-4.731,-4.680,-4.689,-4.715,-4.779,-4.920,-5.095,-5.228,-5.317,-5.416,-5.530,-5.624,-5.707,
--5.825,-5.983,-6.141,-6.308,-6.532,-6.800,-7.035,-7.206,-7.364,-7.550,-7.728,-7.869,-8.000,-8.138,-8.236,-8.267,
--8.303,-8.430,-8.614,-8.743,-8.772,-8.762,-8.763,-8.761,-8.750,-8.774,-8.861,-8.966,-9.027,-9.037,-9.036,-9.045,
--9.060,-9.077,-9.092,-9.096,-9.096,-9.120,-9.182,-9.245,-9.267,-9.261,-9.272,-9.308,-9.337,-9.349,-9.366,-9.395,
--9.415,-9.419,-9.421,-9.420,-9.384,-9.304,-9.227,-9.186,-9.150,-9.082,-9.008,-8.988,-9.013,-9.016,-8.963,-8.896,
--8.851,-8.805,-8.723,-8.621,-8.543,-8.507,-8.497,-8.493,-8.480,-8.435,-8.356,-8.265,-8.187,-8.118,-8.046,-7.978,
--7.911,-7.814,-7.673,-7.534,-7.445,-7.374,-7.243,-7.045,-6.860,-6.736,-6.631,-6.497,-6.356,-6.251,-6.161,-6.039,
--5.897,-5.793,-5.740,-5.695,-5.632,-5.573,-5.532,-5.487,-5.422,-5.359,-5.321,-5.297,-5.266,-5.229,-5.198,-5.174,
--5.158,-5.162,-5.189,-5.225,-5.259,-5.308,-5.381,-5.453,-5.496,-5.518,-5.556,-5.627,-5.723,-5.838,-5.969,-6.099,
--6.201,-6.281,-6.377,-6.513,-6.675,-6.845,-7.031,-7.253,-7.504,-7.745,-7.949,-8.123,-8.285,-8.442,-8.583,-8.704,
--8.814,-8.918,-9.004,-9.051,-9.066,-9.087,-9.149,-9.241,-9.308,-9.317,-9.292,-9.290,-9.329,-9.372,-9.380,-9.364,
--9.367,-9.394,-9.410,-9.392,-9.367,-9.368,-9.393,-9.414,-9.420,-9.411,-9.363,-9.263,-9.150,-9.091,-9.094,-9.092,
--9.043,-8.981,-8.947,-8.912,-8.834,-8.737,-8.673,-8.631,-8.558,-8.444,-8.335,-8.245,-8.142,-8.020,-7.924,-7.867,
--7.800,-7.683,-7.540,-7.390,-7.200,-6.950,-6.693,-6.491,-6.327,-6.145,-5.943,-5.757,-5.575,-5.350,-5.091,-4.853,
--4.656,-4.461,-4.249,-4.042,-3.850,-3.643,-3.404,-3.156,-2.920,-2.682,-2.411,-2.079,-1.675,-1.234,-.825,-.464,
--.055,.502,1.168,1.822,2.437,3.068,3.675,4.122,4.402,4.676,4.999,5.171,4.989,4.522,4.019,3.741,
-4.038,5.364,7.866,11.068,14.301,17.435,20.825,24.559,28.172,31.209,33.576,35.144,35.536,34.774,33.733,33.311,
-33.346,32.982,32.069,31.465,31.810,32.693,33.428,34.034,34.852,35.580,35.446,34.240,32.553,30.933,29.407,28.012,
-27.196,27.277,27.861,28.270,28.366,28.541,29.000,29.510,29.887,30.313,30.962,31.610,31.890,31.789,31.610,31.456,
-31.011,29.927,28.317,26.718,25.583,24.921,24.432,23.891,23.312,22.779,22.279,21.753,21.210,20.669,20.069,19.370,
-18.755,18.515,18.659,18.774,18.399,17.500,16.439,15.515,14.657,13.590,12.197,10.723,9.709,9.666,10.602,11.813,
-12.321,11.713,10.439,9.152,7.916,6.309,4.225,2.151,.538,-.735,-2.007,-3.230,-4.116,-4.767,-5.667,-6.958,
--8.149,-8.769,-8.981,-9.220,-9.482,-9.390,-8.900,-8.492,-8.587,-9.085,-9.644,-10.152,-10.742,-11.511,-12.432,-13.384,
--14.120,-14.331,-13.962,-13.359,-12.919,-12.687,-12.526,-12.576,-13.183,-14.350,-15.591,-16.462,-16.971,-17.279,-17.283,-16.786,
--15.936,-15.172,-14.742,-14.523,-14.334,-14.170,-14.093,-14.100,-14.194,-14.424,-14.766,-15.110,-15.448,-15.876,-16.258,-16.119,
--15.139,-13.698,-12.627,-12.370,-12.611,-12.769,-12.648,-12.456,-12.363,-12.287,-12.089,-11.787,-11.532,-11.440,-11.488,-11.519,
--11.380,-11.111,-10.968,-11.162,-11.595,-11.948,-12.054,-12.067,-12.192,-12.393,-12.458,-12.313,-12.100,-11.959,-11.834,-11.576,
--11.149,-10.668,-10.263,-9.958,-9.692,-9.404,-9.078,-8.737,-8.412,-8.144,-7.999,-8.043,-8.262,-8.520,-8.660,-8.655,
--8.615,-8.636,-8.689,-8.689,-8.623,-8.556,-8.516,-8.462,-8.350,-8.195,-8.038,-7.898,-7.782,-7.699,-7.648,-7.611,
--7.563,-7.485,-7.349,-7.126,-6.827,-6.512,-6.232,-5.976,-5.701,-5.390,-5.059,-4.725,-4.388,-4.056,-3.743,-3.439,
--3.110,-2.741,-2.354,-1.983,-1.631,-1.268,-.857,-.388,.105,.576,1.004,1.417,1.841,2.268,2.667,3.037,
-3.411,3.804,4.189,4.546,4.885,5.234,5.601,5.975,6.345,6.700,7.032,7.364,7.746,8.199,8.672,9.074,
-9.345,9.486,9.536,9.541,9.546,9.586,9.666,9.773,9.881,9.961,9.983,9.952,9.916,9.927,9.991,10.071,
-10.150,10.247,10.365,10.468,10.542,10.638,10.817,11.069,11.311,11.492,11.645,11.823,12.015,12.156,12.226,12.292,
-12.451,12.737,13.098,13.427,13.606,13.568,13.362,13.150,13.060,13.034,12.903,12.638,12.447,12.536,12.827,13.011,
-12.889,12.556,12.228,12.001,11.830,11.685,11.601,11.599,11.639,11.656,11.621,11.769,11.730,11.689,11.649,11.610,
-11.574,11.555,11.580,11.638,11.673,11.658,11.644,11.694,11.790,11.864,11.899,11.941,12.016,12.098,12.168,12.249,
-12.351,12.456,12.558,12.686,12.851,13.023,13.182,13.349,13.538,13.730,13.917,14.124,14.354,14.572,14.777,15.016,
-15.293,15.531,15.691,15.852,16.086,16.325,16.480,16.630,16.934,17.376,17.788,18.157,18.732,19.687,20.799,21.601,
-21.817,21.558,21.154,20.902,20.968,21.356,21.897,22.338,22.509,22.433,22.261,22.088,21.831,21.284,20.332,19.107,
-17.893,16.866,16.002,15.218,14.518,13.930,13.393,12.836,12.280,11.776,11.287,10.739,10.148,9.535,8.782,7.760,
-6.625,5.759,5.342,5.139,4.816,4.315,3.781,3.288,2.813,2.383,2.039,1.708,1.290,.855,.575,.463,
-.338,.093,-.195,-.471,-.835,-1.376,-2.002,-2.575,-3.111,-3.714,-4.367,-4.912,-5.206,-5.256,-5.198,-5.222,
--5.435,-5.773,-6.111,-6.492,-7.121,-8.065,-9.144,-10.257,-11.598,-13.246,-14.677,-15.109,-14.432,-13.418,-12.852,-12.788,
--12.908,-13.288,-14.343,-16.095,-17.933,-19.181,-19.600,-19.276,-18.416,-17.477,-17.157,-17.865,-19.248,-20.527,-21.296,-21.748,
--22.168,-22.525,-22.661,-22.615,-22.549,-22.504,-22.413,-22.271,-22.104,-21.883,-21.662,-21.757,-22.506,-23.792,-25.039,-25.813,
--26.232,-26.648,-27.123,-27.481,-27.726,-28.045,-28.322,-28.042,-26.965,-25.701,-25.219,-25.692,-26.096,-25.235,-23.175,-21.443,
--21.609,-23.674,-26.024,-27.081,-26.852,-26.594,-27.025,-27.335,-26.255,-23.799,-21.391,-20.247,-20.140,-20.021,-19.443,-18.916,
--19.031,-19.772,-20.797,-21.976,-23.335,-24.704,-25.740,-26.286,-26.505,-26.635,-26.779,-26.934,-27.105,-27.307,-27.542,-27.813,
--28.125,-28.431,-28.620,-28.618,-28.462,-28.261,-28.116,-28.066,-28.098,-28.160,-28.222,-28.325,-28.548,-28.907,-29.320,-29.696,
--30.027,-30.340,-30.625,-30.874,-31.148,-31.533,-32.017,-32.519,-33.051,-33.711,-34.425,-34.805,-34.455,-33.475,-32.519,-32.261,
--32.825,-33.772,-34.593,-35.108,-35.444,-35.779,-36.182,-36.635,-37.092,-37.513,-37.890,-38.253,-38.633,-39.009,-39.325,-39.544,
--39.691,-39.828,-40.022,-40.319,-40.735,-41.261,-41.882,-42.586,-43.330,-44.035,-44.642,-45.181,-45.729,-46.307,-46.865,-47.378,
--47.908,-48.525,-49.208,-49.866,-50.447,-50.984,-51.555,-52.216,-52.974,-53.788,-54.595,-55.354,-56.057,-56.707,-57.295,-57.813,
--58.291,-58.766,-59.243,-59.704,-60.148,-60.595,-61.052,-61.501,-61.934,-62.369,-62.820,-63.276,-63.708,-64.102,-64.451,-64.749,
--64.977,-65.117,-65.172,-65.177,-65.177,-65.187,-65.186,-65.164,-65.144,-65.142,-65.134,-65.111,-65.130,-65.254,-65.464,-65.685,
--65.880,-66.047,-66.150,-66.126,-65.982,-65.780,-65.556,-65.327,-65.213,-65.399,-65.894,-66.462,-66.878,-67.145,-67.358,-67.460,
--67.305,-66.904,-66.436,-66.037,-65.756,-65.677,-65.867,-66.158,-66.181,-65.689,-64.721,-63.415,-61.929,-60.642,-60.145,-60.705,
--61.816,-62.554,-62.401,-61.570,-60.599,-59.864,-59.492,-59.430,-59.434,-59.169,-58.516,-57.716,-57.112,-56.778,-56.482,-55.957,
--55.157,-54.247,-53.402,-52.583,-51.534,-50.090,-48.452,-47.024,-45.964,-45.063,-44.132,-43.275,-42.665,-42.234,-41.826,-41.470,
--41.239,-40.930,-40.244,-39.307,-38.618,-38.363,-38.106,-37.413,-36.513,-36.005,-35.990,-35.878,-35.076,-33.612,-31.973,-30.529,
--29.289,-28.098,-26.896,-25.775,-24.879,-24.247,-23.738,-23.137,-22.373,-21.612,-21.068,-20.729,-20.344,-19.687,-18.813,-17.994,
--17.416,-16.988,-16.462,-15.709,-14.804,-13.874,-12.965,-12.082,-11.248,-10.457,-9.633,-8.735,-7.835,-6.979,-6.065,-5.022,
--4.052,-3.476,-3.302,-3.155,-2.733,-2.118,-1.495,-.788,.147,1.132,1.803,2.163,2.628,3.416,4.181,4.486,
-4.439,4.556,5.097,5.817,6.411,6.921,7.580,8.446,9.362,10.196,10.936,11.581,12.094,12.481,12.834,13.219,
-13.611,13.995,14.470,15.161,16.046,16.968,17.850,18.809,19.971,21.258,22.434,23.365,24.127,24.844,25.524,26.115,
-26.656,27.281,28.093,29.102,30.253,31.422,32.428,33.157,33.710,34.330,35.139,35.976,36.578,36.841,36.885,36.892,
-36.970,37.153,37.443,37.831,38.300,38.843,39.475,40.200,40.970,41.674,42.224,42.672,43.175,43.776,44.254,44.360,
-44.240,44.438,45.333,46.688,47.921,48.754,49.387,50.068,50.765,51.327,51.760,52.169,52.589,53.046,53.649,54.434,
-55.165,55.530,55.512,55.395,55.408,55.560,55.846,56.367,57.101,57.743,57.969,57.817,57.641,57.715,58.016,58.356,
-58.609,58.773,58.911,59.074,59.254,59.389,59.450,59.508,59.656,59.893,60.144,60.366,60.568,60.768,61.013,61.417,
-62.067,62.885,63.700,64.459,65.253,66.124,66.948,67.558,67.815,67.540,66.607,65.266,64.197,63.960,64.431,64.997,
-65.305,65.542,65.954,66.379,66.456,66.113,65.640,65.336,65.279,65.386,65.523,65.546,65.392,65.163,65.030,65.023,
-65.009,64.902,64.766,64.687,64.638,64.553,64.459,64.438,64.499,64.577,64.622,64.615,64.537,64.383,64.209,64.086,
-64.029,64.023,64.124,64.425,64.926,65.523,66.145,66.836,67.602,68.282,68.673,68.754,68.688,68.582,68.377,68.019,
-67.598,67.209,66.794,66.287,65.874,65.817,65.964,65.686,64.615,63.321,62.888,63.734,65.110,65.915,65.804,65.275,
-64.847,64.520,64.056,63.447,62.905,62.540,62.257,61.952,61.670,61.531,61.537,61.478,61.089,60.322,59.360,58.177,
-56.233,53.046,49.280,46.870,47.515,50.987,55.251,58.346,59.872,60.623,61.261,61.762,61.927,61.869,61.852,61.921,
-61.915,61.737,61.455,61.173,60.904,60.595,60.220,59.826,59.476,59.165,58.831,58.465,58.135,57.831,57.384,56.651,
-55.761,55.028,54.609,54.367,54.106,53.784,53.440,53.050,52.572,52.063,51.607,51.194,50.767,50.346,49.993,49.675,
-49.274,48.727,48.075,47.393,46.759,46.254,45.841,45.268,44.244,42.833,41.580,41.119,41.625,42.629,43.355,43.288,
-42.519,41.587,40.917,40.437,39.788,38.871,37.970,37.337,36.877,36.397,35.932,35.583,35.187,34.480,33.580,32.988,
-32.949,33.058,32.688,31.655,30.318,29.119,28.267,27.781,27.584,27.461,27.131,26.512,25.836,25.403,25.254,25.166,
-24.946,24.619,24.303,23.985,23.513,22.798,21.948,21.173,20.574,20.083,19.588,19.050,18.478,17.893,17.355,16.968,
-16.760,16.565,16.138,15.422,14.632,14.053,13.791,13.756,13.792,13.788,13.700,13.562,13.470,13.497,13.605,13.695,
-13.719,13.703,13.659,13.539,13.293,12.928,12.479,11.953,11.351,10.724,10.169,9.761,9.507,9.353,9.224,9.062,
-8.851,8.622,8.405,8.194,7.967,7.729,7.515,7.342,7.185,7.027,6.871,6.709,6.497,6.216,5.907,5.620,
-5.333,5.001,4.661,4.418,4.301,4.222,4.106,3.972,3.851,3.679,3.378,2.991,2.638,2.365,2.120,1.888,
-1.717,1.606,1.468,1.259,1.036,.847,.646,.404,.193,.063,-.087,-.367,-.699,-.902,-.973,-1.102,
--1.390,-1.729,-2.002,-2.242,-2.513,-2.768,-2.956,-3.168,-3.507,-3.901,-4.173,-4.281,-4.337,-4.407,-4.444,-4.436,
--4.469,-4.583,-4.689,-4.707,-4.683,-4.715,-4.808,-4.916,-5.045,-5.226,-5.435,-5.601,-5.706,-5.783,-5.849,-5.904,
--5.975,-6.100,-6.270,-6.448,-6.639,-6.873,-7.131,-7.351,-7.524,-7.701,-7.899,-8.072,-8.193,-8.304,-8.432,-8.536,
--8.587,-8.638,-8.748,-8.882,-8.956,-8.954,-8.932,-8.920,-8.900,-8.872,-8.882,-8.954,-9.046,-9.109,-9.136,-9.145,
--9.143,-9.138,-9.144,-9.161,-9.168,-9.156,-9.152,-9.178,-9.217,-9.246,-9.272,-9.306,-9.332,-9.331,-9.327,-9.354,
--9.398,-9.419,-9.414,-9.413,-9.408,-9.356,-9.256,-9.169,-9.129,-9.088,-9.003,-8.909,-8.863,-8.850,-8.806,-8.728,
--8.673,-8.657,-8.618,-8.518,-8.403,-8.338,-8.317,-8.292,-8.250,-8.213,-8.186,-8.144,-8.076,-7.991,-7.910,-7.849,
--7.810,-7.761,-7.647,-7.462,-7.279,-7.169,-7.101,-6.977,-6.775,-6.574,-6.435,-6.325,-6.192,-6.055,-5.957,-5.879,
--5.769,-5.635,-5.534,-5.485,-5.443,-5.377,-5.313,-5.280,-5.256,-5.209,-5.147,-5.099,-5.071,-5.044,-5.011,-4.975,
--4.943,-4.921,-4.923,-4.948,-4.979,-5.008,-5.050,-5.119,-5.193,-5.245,-5.282,-5.338,-5.424,-5.517,-5.606,-5.710,
--5.839,-5.974,-6.089,-6.197,-6.323,-6.470,-6.619,-6.774,-6.964,-7.204,-7.465,-7.694,-7.869,-8.008,-8.138,-8.274,
--8.418,-8.560,-8.684,-8.770,-8.810,-8.828,-8.861,-8.934,-9.035,-9.120,-9.144,-9.112,-9.073,-9.074,-9.104,-9.115,
--9.097,-9.086,-9.107,-9.122,-9.093,-9.045,-9.043,-9.100,-9.172,-9.216,-9.220,-9.166,-9.045,-8.905,-8.831,-8.844,
--8.864,-8.826,-8.761,-8.725,-8.695,-8.615,-8.498,-8.411,-8.356,-8.274,-8.155,-8.053,-7.982,-7.888,-7.749,-7.631,
--7.581,-7.543,-7.435,-7.264,-7.093,-6.930,-6.741,-6.524,-6.319,-6.137,-5.952,-5.759,-5.582,-5.410,-5.205,-4.953,
--4.697,-4.482,-4.323,-4.205,-4.095,-3.942,-3.722,-3.466,-3.221,-2.982,-2.721,-2.434,-2.126,-1.771,-1.352,-.916,
--.506,-.058,.525,1.211,1.862,2.436,3.017,3.626,4.153,4.553,4.941,5.389,5.756,5.847,5.632,5.203,
-4.718,4.537,5.229,7.092,9.768,12.626,15.515,18.787,22.615,26.653,30.430,33.630,35.818,36.489,35.814,34.907,
-34.743,35.001,34.612,33.386,32.373,32.488,33.476,34.582,35.625,36.823,37.928,38.263,37.534,36.059,34.206,32.127,
-30.166,28.953,28.759,29.111,29.357,29.366,29.401,29.532,29.617,29.739,30.208,31.039,31.776,32.007,31.839,31.637,
-31.468,31.027,30.087,28.809,27.571,26.622,25.954,25.433,24.937,24.389,23.742,23.009,22.283,21.656,21.089,20.431,
-19.647,18.962,18.663,18.731,18.788,18.463,17.737,16.856,16.000,15.118,14.061,12.777,11.439,10.471,10.349,11.143,
-12.228,12.680,12.108,10.949,9.795,8.598,6.853,4.464,2.044,.228,-.988,-1.995,-2.936,-3.696,-4.371,-5.298,
--6.520,-7.606,-8.212,-8.521,-8.876,-9.198,-9.135,-8.672,-8.244,-8.210,-8.515,-8.953,-9.483,-10.150,-10.902,-11.668,
--12.432,-13.076,-13.309,-13.003,-12.456,-12.098,-12.021,-12.065,-12.300,-13.048,-14.361,-15.792,-16.848,-17.443,-17.708,-17.593,
--16.952,-15.939,-14.993,-14.403,-14.090,-13.837,-13.578,-13.390,-13.375,-13.597,-14.025,-14.490,-14.832,-15.132,-15.607,-16.153,
--16.217,-15.357,-13.860,-12.567,-12.066,-12.216,-12.478,-12.505,-12.314,-12.065,-11.857,-11.725,-11.660,-11.617,-11.535,-11.401,
--11.243,-11.106,-11.046,-11.131,-11.373,-11.678,-11.928,-12.108,-12.294,-12.499,-12.613,-12.527,-12.282,-12.031,-11.864,-11.716,
--11.461,-11.060,-10.606,-10.221,-9.928,-9.640,-9.287,-8.909,-8.597,-8.374,-8.192,-8.047,-8.022,-8.156,-8.338,-8.416,
--8.380,-8.354,-8.421,-8.522,-8.559,-8.530,-8.493,-8.467,-8.414,-8.307,-8.159,-7.989,-7.815,-7.667,-7.574,-7.527,
--7.489,-7.440,-7.376,-7.275,-7.101,-6.854,-6.577,-6.308,-6.043,-5.761,-5.458,-5.137,-4.799,-4.461,-4.156,-3.894,
--3.629,-3.306,-2.920,-2.518,-2.137,-1.779,-1.413,-1.012,-.564,-.093,.360,.775,1.180,1.608,2.050,2.473,
-2.875,3.284,3.704,4.103,4.464,4.806,5.158,5.527,5.901,6.270,6.622,6.957,7.308,7.728,8.224,8.714,
-9.094,9.317,9.410,9.426,9.412,9.413,9.460,9.543,9.634,9.717,9.790,9.839,9.849,9.845,9.880,9.971,
-10.080,10.171,10.255,10.355,10.456,10.533,10.616,10.774,11.015,11.263,11.448,11.596,11.778,11.991,12.156,12.258,
-12.427,12.831,13.464,14.101,14.461,14.416,14.057,13.610,13.289,13.170,13.150,13.060,12.876,12.775,12.921,13.229,
-13.407,13.254,12.849,12.431,12.154,12.016,11.950,11.912,11.883,11.848,11.808,11.769,11.942,11.947,11.920,11.864,
-11.798,11.741,11.721,11.759,11.826,11.851,11.812,11.784,11.840,11.942,11.999,12.000,12.027,12.127,12.249,12.336,
-12.399,12.482,12.593,12.715,12.844,12.984,13.133,13.293,13.472,13.663,13.842,14.012,14.202,14.414,14.620,14.822,
-15.060,15.326,15.547,15.701,15.867,16.098,16.322,16.482,16.669,17.009,17.451,17.862,18.321,19.101,20.262,21.402,
-21.982,21.846,21.316,20.850,20.704,20.907,21.361,21.894,22.303,22.446,22.321,22.023,21.632,21.128,20.430,19.510,
-18.473,17.489,16.648,15.927,15.278,14.698,14.170,13.634,13.072,12.537,12.055,11.558,11.000,10.427,9.831,9.024,
-7.864,6.580,5.643,5.255,5.136,4.903,4.468,3.975,3.513,3.083,2.717,2.438,2.150,1.757,1.365,1.175,
-1.177,1.136,.899,.544,.167,-.303,-.951,-1.684,-2.330,-2.865,-3.419,-4.053,-4.645,-4.989,-4.994,-4.795,
--4.673,-4.824,-5.192,-5.611,-6.085,-6.797,-7.806,-8.957,-10.171,-11.586,-13.151,-14.279,-14.336,-13.469,-12.566,-12.271,
--12.395,-12.504,-12.746,-13.668,-15.370,-17.249,-18.598,-19.129,-18.885,-18.050,-17.067,-16.635,-17.190,-18.454,-19.727,-20.606,
--21.205,-21.709,-22.039,-22.047,-21.816,-21.578,-21.452,-21.401,-21.368,-21.313,-21.212,-21.194,-21.590,-22.609,-23.950,-24.988,
--25.446,-25.672,-26.107,-26.701,-27.099,-27.252,-27.454,-27.758,-27.757,-27.203,-26.562,-26.555,-27.145,-27.329,-26.166,-23.936,
--22.107,-22.062,-23.830,-26.068,-27.321,-27.308,-26.897,-26.858,-26.891,-26.093,-24.227,-22.099,-20.627,-19.886,-19.344,-18.734,
--18.313,-18.354,-18.794,-19.506,-20.562,-22.013,-23.581,-24.813,-25.500,-25.784,-25.911,-26.029,-26.202,-26.445,-26.713,-26.955,
--27.204,-27.519,-27.836,-27.982,-27.876,-27.639,-27.455,-27.387,-27.378,-27.370,-27.363,-27.397,-27.535,-27.822,-28.223,-28.628,
--28.969,-29.283,-29.615,-29.924,-30.166,-30.413,-30.769,-31.216,-31.675,-32.213,-32.970,-33.782,-34.081,-33.435,-32.168,-31.219,
--31.284,-32.190,-33.197,-33.786,-34.035,-34.301,-34.757,-35.306,-35.799,-36.203,-36.574,-36.959,-37.361,-37.746,-38.069,-38.301,
--38.454,-38.587,-38.770,-39.044,-39.403,-39.823,-40.315,-40.914,-41.621,-42.348,-42.983,-43.501,-43.991,-44.537,-45.124,-45.691,
--46.242,-46.845,-47.522,-48.218,-48.869,-49.476,-50.075,-50.691,-51.339,-52.045,-52.816,-53.606,-54.356,-55.038,-55.660,-56.231,
--56.756,-57.256,-57.754,-58.246,-58.712,-59.156,-59.602,-60.056,-60.499,-60.916,-61.322,-61.743,-62.190,-62.643,-63.063,-63.409,
--63.670,-63.861,-63.994,-64.062,-64.072,-64.059,-64.055,-64.054,-64.044,-64.038,-64.058,-64.096,-64.143,-64.229,-64.403,-64.651,
--64.909,-65.124,-65.280,-65.355,-65.321,-65.190,-64.999,-64.778,-64.587,-64.584,-64.914,-65.492,-66.038,-66.367,-66.554,-66.710,
--66.752,-66.529,-66.099,-65.695,-65.451,-65.335,-65.320,-65.429,-65.562,-65.469,-64.962,-64.035,-62.766,-61.317,-60.112,-59.735,
--60.386,-61.504,-62.174,-61.925,-61.013,-60.014,-59.346,-59.135,-59.247,-59.323,-58.974,-58.123,-57.125,-56.440,-56.191,-56.076,
--55.688,-54.901,-53.973,-53.255,-52.752,-52.044,-50.763,-49.087,-47.551,-46.382,-45.302,-44.088,-43.018,-42.489,-42.422,-42.371,
--42.107,-41.746,-41.325,-40.685,-39.858,-39.206,-38.913,-38.649,-38.026,-37.212,-36.730,-36.692,-36.574,-35.831,-34.465,-32.875,
--31.366,-29.980,-28.687,-27.510,-26.474,-25.579,-24.842,-24.272,-23.794,-23.291,-22.753,-22.306,-22.028,-21.761,-21.229,-20.336,
--19.307,-18.458,-17.865,-17.314,-16.572,-15.615,-14.590,-13.636,-12.792,-12.027,-11.271,-10.444,-9.525,-8.571,-7.619,-6.619,
--5.591,-4.757,-4.370,-4.367,-4.376,-4.121,-3.664,-3.167,-2.584,-1.788,-.867,-.053,.615,1.314,2.080,2.676,
-2.950,3.121,3.536,4.228,4.927,5.462,5.953,6.597,7.415,8.296,9.150,9.921,10.537,10.972,11.327,11.746,
-12.252,12.754,13.220,13.766,14.510,15.400,16.292,17.171,18.198,19.478,20.864,22.086,23.024,23.781,24.479,25.112,
-25.657,26.217,26.963,27.941,29.028,30.078,31.012,31.797,32.432,33.007,33.677,34.505,35.340,35.940,36.200,36.232,
-36.246,36.377,36.633,36.943,37.247,37.548,37.914,38.425,39.117,39.937,40.743,41.407,41.965,42.589,43.329,43.914,
-44.016,43.753,43.735,44.455,45.728,46.937,47.755,48.390,49.140,49.971,50.663,51.143,51.513,51.883,52.342,52.999,
-53.836,54.583,54.938,54.912,54.801,54.811,54.924,55.121,55.515,56.123,56.692,56.934,56.875,56.804,56.942,57.253,
-57.586,57.842,58.012,58.138,58.280,58.443,58.557,58.574,58.581,58.726,59.040,59.409,59.712,59.938,60.158,60.475,
-60.989,61.712,62.506,63.197,63.780,64.416,65.203,66.038,66.734,67.127,67.034,66.315,65.139,64.075,63.658,63.890,
-64.335,64.674,64.963,65.330,65.670,65.773,65.599,65.277,64.939,64.683,64.609,64.727,64.868,64.850,64.705,64.616,
-64.648,64.676,64.604,64.495,64.435,64.401,64.342,64.299,64.334,64.406,64.415,64.336,64.227,64.128,64.044,64.014,
-64.090,64.247,64.393,64.518,64.741,65.166,65.750,66.368,66.960,67.528,68.017,68.311,68.383,68.331,68.231,68.029,
-67.655,67.181,66.732,66.293,65.787,65.360,65.310,65.599,65.636,64.904,63.739,63.131,63.638,64.750,65.518,65.566,
-65.238,64.928,64.647,64.259,63.806,63.434,63.176,62.943,62.654,62.294,61.958,61.825,61.938,61.993,61.586,60.675,
-59.468,57.755,54.904,51.055,47.984,47.907,51.180,55.706,58.977,60.314,60.795,61.435,62.156,62.456,62.343,62.238,
-62.324,62.389,62.237,61.933,61.636,61.388,61.123,60.799,60.441,60.099,59.786,59.467,59.104,58.705,58.281,57.803,
-57.257,56.736,56.367,56.118,55.786,55.240,54.585,54.019,53.599,53.245,52.897,52.547,52.157,51.686,51.173,50.708,
-50.294,49.843,49.302,48.705,48.098,47.507,46.982,46.519,45.909,44.840,43.305,41.834,41.152,41.554,42.614,43.534,
-43.763,43.342,42.699,42.116,41.405,40.208,38.580,37.123,36.420,36.451,36.685,36.660,36.288,35.669,34.901,34.157,
-33.708,33.627,33.564,33.023,31.888,30.559,29.567,29.146,29.163,29.301,29.225,28.702,27.730,26.589,25.683,25.244,
-25.177,25.180,25.030,24.707,24.284,23.763,23.079,22.256,21.463,20.849,20.387,19.920,19.341,18.682,18.036,17.475,
-17.043,16.740,16.465,16.062,15.458,14.764,14.183,13.837,13.691,13.614,13.501,13.364,13.316,13.454,13.711,13.870,
-13.776,13.507,13.286,13.212,13.173,13.002,12.657,12.205,11.696,11.127,10.521,9.959,9.529,9.260,9.108,8.984,
-8.815,8.595,8.376,8.192,8.007,7.773,7.517,7.318,7.197,7.096,6.967,6.826,6.678,6.468,6.158,5.810,
-5.510,5.250,4.961,4.649,4.398,4.245,4.128,4.001,3.887,3.783,3.618,3.359,3.083,2.840,2.541,2.114,
-1.688,1.455,1.376,1.204,.841,.470,.275,.201,.106,.000,-.059,-.172,-.486,-.913,-1.202,-1.294,
--1.405,-1.702,-2.073,-2.343,-2.526,-2.737,-2.966,-3.133,-3.274,-3.499,-3.786,-3.983,-4.029,-4.032,-4.104,-4.228,
--4.348,-4.475,-4.633,-4.781,-4.874,-4.940,-5.027,-5.131,-5.228,-5.344,-5.523,-5.735,-5.893,-5.959,-5.968,-5.982,
--6.040,-6.164,-6.352,-6.570,-6.781,-6.989,-7.206,-7.412,-7.583,-7.746,-7.947,-8.169,-8.345,-8.456,-8.553,-8.672,
--8.789,-8.879,-8.964,-9.067,-9.153,-9.177,-9.153,-9.126,-9.103,-9.065,-9.022,-9.015,-9.056,-9.115,-9.171,-9.217,
--9.242,-9.230,-9.199,-9.190,-9.212,-9.233,-9.231,-9.224,-9.232,-9.250,-9.272,-9.306,-9.343,-9.348,-9.315,-9.290,
--9.311,-9.349,-9.360,-9.354,-9.365,-9.371,-9.315,-9.201,-9.106,-9.066,-9.026,-8.939,-8.837,-8.772,-8.722,-8.642,
--8.552,-8.510,-8.504,-8.452,-8.326,-8.200,-8.143,-8.123,-8.069,-7.979,-7.913,-7.895,-7.887,-7.840,-7.754,-7.660,
--7.598,-7.574,-7.547,-7.451,-7.272,-7.081,-6.954,-6.869,-6.737,-6.528,-6.312,-6.155,-6.035,-5.904,-5.769,-5.664,
--5.581,-5.482,-5.368,-5.281,-5.232,-5.186,-5.121,-5.063,-5.036,-5.022,-4.988,-4.935,-4.884,-4.845,-4.810,-4.776,
--4.749,-4.727,-4.711,-4.713,-4.737,-4.767,-4.793,-4.826,-4.882,-4.947,-4.999,-5.045,-5.117,-5.212,-5.290,-5.341,
--5.416,-5.561,-5.750,-5.915,-6.031,-6.137,-6.265,-6.404,-6.539,-6.695,-6.907,-7.161,-7.396,-7.575,-7.713,-7.851,
--8.006,-8.173,-8.332,-8.454,-8.522,-8.543,-8.558,-8.603,-8.685,-8.785,-8.870,-8.909,-8.892,-8.853,-8.839,-8.851,
--8.844,-8.797,-8.758,-8.773,-8.807,-8.795,-8.744,-8.727,-8.780,-8.863,-8.922,-8.942,-8.907,-8.802,-8.668,-8.595,
--8.615,-8.645,-8.607,-8.532,-8.492,-8.469,-8.397,-8.276,-8.178,-8.114,-8.024,-7.890,-7.778,-7.714,-7.635,-7.494,
--7.353,-7.283,-7.240,-7.133,-6.954,-6.778,-6.639,-6.495,-6.316,-6.129,-5.959,-5.792,-5.611,-5.425,-5.247,-5.067,
--4.869,-4.652,-4.442,-4.283,-4.197,-4.138,-4.014,-3.788,-3.523,-3.279,-3.031,-2.724,-2.389,-2.092,-1.812,-1.464,
--1.027,-.553,-.038,.575,1.259,1.890,2.422,2.953,3.552,4.154,4.683,5.183,5.702,6.158,6.429,6.468,
-6.255,5.798,5.356,5.492,6.645,8.683,11.137,13.804,16.848,20.363,24.178,28.117,31.969,35.104,36.662,36.529,
-35.765,35.508,35.690,35.387,34.334,33.428,33.602,34.804,36.390,37.999,39.574,40.871,41.484,41.281,40.387,38.829,
-36.632,34.239,32.387,31.421,31.042,30.834,30.687,30.547,30.175,29.521,29.088,29.468,30.547,31.532,31.816,31.527,
-31.129,30.807,30.415,29.849,29.194,28.548,27.924,27.335,26.835,26.394,25.832,24.982,23.899,22.835,21.988,21.309,
-20.606,19.830,19.166,18.806,18.690,18.551,18.200,17.663,17.040,16.339,15.505,14.516,13.394,12.233,11.311,11.031,
-11.519,12.295,12.581,12.047,11.066,10.090,8.974,7.201,4.692,2.070,.023,-1.342,-2.332,-3.140,-3.754,-4.283,
--4.985,-5.908,-6.799,-7.463,-8.014,-8.570,-8.947,-8.883,-8.469,-8.089,-7.975,-8.075,-8.344,-8.877,-9.664,-10.474,
--11.124,-11.667,-12.145,-12.364,-12.152,-11.711,-11.446,-11.501,-11.741,-12.169,-13.023,-14.370,-15.855,-17.036,-17.772,-18.106,
--17.952,-17.180,-15.970,-14.802,-14.031,-13.622,-13.332,-13.037,-12.817,-12.833,-13.172,-13.735,-14.264,-14.580,-14.794,-15.167,
--15.671,-15.856,-15.278,-14.030,-12.706,-11.886,-11.706,-11.879,-11.997,-11.806,-11.358,-10.947,-10.850,-11.056,-11.288,-11.306,
--11.125,-10.928,-10.855,-10.926,-11.104,-11.355,-11.651,-11.974,-12.317,-12.633,-12.816,-12.771,-12.528,-12.224,-11.979,-11.800,
--11.602,-11.306,-10.910,-10.505,-10.185,-9.934,-9.631,-9.210,-8.771,-8.477,-8.350,-8.267,-8.154,-8.085,-8.131,-8.216,
--8.220,-8.157,-8.148,-8.245,-8.365,-8.421,-8.423,-8.416,-8.395,-8.331,-8.225,-8.090,-7.923,-7.733,-7.569,-7.472,
--7.415,-7.345,-7.253,-7.161,-7.071,-6.951,-6.787,-6.593,-6.371,-6.110,-5.820,-5.529,-5.237,-4.918,-4.583,-4.285,
--4.048,-3.815,-3.515,-3.138,-2.730,-2.327,-1.932,-1.533,-1.118,-.673,-.207,.245,.658,1.053,1.471,1.914,
-2.352,2.776,3.203,3.631,4.032,4.391,4.735,5.091,5.457,5.815,6.160,6.494,6.836,7.223,7.689,8.203,
-8.667,8.996,9.184,9.276,9.311,9.315,9.326,9.376,9.458,9.540,9.614,9.690,9.758,9.798,9.824,9.892,
-10.022,10.160,10.254,10.316,10.397,10.503,10.594,10.672,10.796,11.007,11.255,11.466,11.639,11.833,12.048,12.211,
-12.309,12.488,12.932,13.619,14.263,14.533,14.334,13.850,13.373,13.107,13.089,13.204,13.289,13.269,13.215,13.239,
-13.328,13.335,13.143,12.799,12.467,12.262,12.183,12.157,12.117,12.047,11.975,11.939,11.942,12.141,12.125,12.057,
-11.974,11.917,11.892,11.898,11.942,12.008,12.038,12.007,11.975,12.007,12.081,12.123,12.128,12.168,12.274,12.388,
-12.453,12.491,12.566,12.691,12.834,12.968,13.095,13.234,13.401,13.596,13.794,13.963,14.112,14.275,14.463,14.655,
-14.850,15.074,15.314,15.524,15.700,15.898,16.136,16.352,16.527,16.764,17.135,17.553,17.938,18.454,19.375,20.631,
-21.684,22.000,21.585,20.945,20.590,20.667,21.030,21.494,21.935,22.261,22.376,22.212,21.765,21.105,20.334,19.530,
-18.728,17.956,17.243,16.592,15.985,15.413,14.881,14.368,13.835,13.282,12.757,12.270,11.771,11.248,10.731,10.137,
-9.225,7.905,6.504,5.539,5.181,5.117,4.963,4.634,4.242,3.850,3.464,3.136,2.885,2.603,2.207,1.835,
-1.691,1.739,1.713,1.462,1.080,.673,.167,-.521,-1.283,-1.927,-2.425,-2.931,-3.546,-4.166,-4.583,-4.686,
--4.581,-4.512,-4.644,-4.956,-5.372,-5.965,-6.878,-8.063,-9.283,-10.442,-11.666,-12.890,-13.601,-13.346,-12.414,-11.653,
--11.521,-11.678,-11.685,-11.789,-12.652,-14.439,-16.499,-17.969,-18.446,-18.066,-17.252,-16.547,-16.437,-17.048,-18.044,-18.978,
--19.717,-20.399,-21.050,-21.437,-21.367,-20.965,-20.566,-20.393,-20.436,-20.559,-20.644,-20.712,-20.978,-21.727,-22.958,-24.198,
--24.856,-24.857,-24.742,-25.042,-25.695,-26.258,-26.550,-26.786,-27.102,-27.285,-27.160,-26.984,-27.143,-27.522,-27.477,-26.535,
--25.017,-23.848,-23.799,-24.860,-26.253,-27.069,-27.008,-26.547,-26.299,-26.238,-25.730,-24.335,-22.371,-20.552,-19.271,-18.449,
--17.919,-17.651,-17.623,-17.779,-18.220,-19.194,-20.738,-22.456,-23.820,-24.611,-24.974,-25.138,-25.258,-25.445,-25.751,-26.100,
--26.381,-26.603,-26.860,-27.125,-27.230,-27.097,-26.868,-26.741,-26.751,-26.795,-26.799,-26.788,-26.832,-26.986,-27.265,-27.611,
--27.929,-28.199,-28.498,-28.860,-29.198,-29.438,-29.659,-29.986,-30.410,-30.868,-31.455,-32.285,-33.076,-33.155,-32.154,-30.637,
--29.733,-30.072,-31.238,-32.319,-32.845,-33.044,-33.348,-33.883,-34.470,-34.936,-35.291,-35.635,-36.021,-36.414,-36.758,-37.023,
--37.219,-37.386,-37.579,-37.847,-38.198,-38.597,-39.007,-39.457,-40.010,-40.668,-41.325,-41.877,-42.345,-42.848,-43.441,-44.067,
--44.659,-45.248,-45.897,-46.592,-47.260,-47.878,-48.491,-49.131,-49.780,-50.434,-51.128,-51.889,-52.674,-53.411,-54.067,-54.659,
--55.211,-55.735,-56.245,-56.749,-57.242,-57.718,-58.182,-58.642,-59.089,-59.506,-59.899,-60.285,-60.686,-61.117,-61.571,-62.000,
--62.340,-62.566,-62.716,-62.831,-62.909,-62.933,-62.924,-62.925,-62.943,-62.964,-62.993,-63.056,-63.152,-63.265,-63.412,-63.632,
--63.913,-64.182,-64.380,-64.495,-64.535,-64.494,-64.377,-64.208,-64.024,-63.909,-64.009,-64.419,-65.024,-65.560,-65.874,-66.037,
--66.149,-66.146,-65.919,-65.542,-65.220,-65.052,-64.973,-64.919,-64.895,-64.852,-64.647,-64.143,-63.282,-62.072,-60.691,-59.618,
--59.413,-60.164,-61.239,-61.785,-61.442,-60.516,-59.571,-59.006,-58.928,-59.145,-59.226,-58.762,-57.740,-56.610,-55.892,-55.711,
--55.713,-55.403,-54.607,-53.657,-53.061,-52.894,-52.608,-51.617,-49.999,-48.359,-47.028,-45.749,-44.304,-43.056,-42.527,-42.630,
--42.748,-42.508,-42.062,-41.612,-41.068,-40.369,-39.759,-39.442,-39.192,-38.660,-37.924,-37.405,-37.229,-37.013,-36.328,-35.150,
--33.723,-32.216,-30.701,-29.313,-28.185,-27.272,-26.416,-25.614,-25.043,-24.778,-24.614,-24.292,-23.817,-23.400,-23.096,-22.651,
--21.794,-20.618,-19.518,-18.762,-18.216,-17.546,-16.608,-15.549,-14.593,-13.818,-13.147,-12.445,-11.604,-10.579,-9.416,-8.220,
--7.113,-6.235,-5.730,-5.630,-5.738,-5.747,-5.510,-5.121,-4.697,-4.181,-3.460,-2.561,-1.615,-.693,.190,.932,
-1.407,1.704,2.111,2.791,3.566,4.159,4.542,4.932,5.501,6.232,7.040,7.874,8.659,9.278,9.692,10.035,
-10.472,11.021,11.574,12.093,12.676,13.416,14.269,15.139,16.060,17.201,18.635,20.181,21.536,22.543,23.272,23.852,
-24.338,24.795,25.397,26.318,27.524,28.758,29.779,30.536,31.125,31.667,32.260,32.981,33.823,34.637,35.223,35.504,
-35.590,35.684,35.910,36.250,36.596,36.864,37.070,37.315,37.710,38.303,39.038,39.777,40.410,41.007,41.773,42.744,
-43.562,43.770,43.409,43.151,43.641,44.801,45.985,46.764,47.318,48.025,48.931,49.781,50.398,50.836,51.238,51.734,
-52.407,53.200,53.863,54.163,54.147,54.074,54.100,54.185,54.324,54.648,55.194,55.740,56.033,56.094,56.160,56.378,
-56.684,56.958,57.167,57.328,57.453,57.545,57.604,57.612,57.585,57.626,57.848,58.239,58.659,59.000,59.274,59.570,
-59.983,60.573,61.316,62.063,62.655,63.109,63.616,64.310,65.126,65.894,66.457,66.636,66.242,65.308,64.235,63.541,
-63.435,63.734,64.156,64.544,64.839,65.008,65.083,65.128,65.103,64.886,64.494,64.166,64.098,64.204,64.256,64.200,
-64.165,64.209,64.234,64.169,64.085,64.062,64.079,64.089,64.120,64.210,64.303,64.311,64.232,64.125,64.021,63.928,
-63.894,63.982,64.157,64.304,64.391,64.544,64.901,65.445,66.032,66.569,67.061,67.508,67.828,67.949,67.908,67.775,
-67.535,67.127,66.591,66.064,65.616,65.214,64.916,64.900,65.150,65.256,64.818,64.039,63.614,63.934,64.621,65.028,
-64.972,64.744,64.583,64.448,64.255,64.036,63.809,63.522,63.193,62.891,62.589,62.255,62.091,62.339,62.784,62.816,
-62.171,61.132,59.684,57.079,53.036,49.167,48.121,50.876,55.505,59.139,60.720,61.279,61.962,62.729,63.014,62.832,
-62.681,62.768,62.849,62.712,62.441,62.185,61.951,61.677,61.356,61.007,60.645,60.297,59.990,59.689,59.306,58.804,
-58.255,57.781,57.462,57.260,57.006,56.526,55.824,55.118,54.614,54.296,53.997,53.619,53.199,52.775,52.328,51.847,
-51.365,50.901,50.430,49.948,49.470,48.976,48.428,47.853,47.278,46.560,45.468,44.044,42.800,42.339,42.784,43.643,
-44.263,44.330,43.973,43.482,42.949,42.143,40.782,38.993,37.448,36.834,37.154,37.675,37.639,36.930,35.998,35.294,
-34.942,34.837,34.791,34.515,33.705,32.350,30.922,30.075,30.097,30.696,31.295,31.466,31.059,30.075,28.630,27.045,
-25.801,25.220,25.175,25.217,25.003,24.515,23.894,23.191,22.394,21.598,20.964,20.521,20.097,19.525,18.819,18.125,
-17.553,17.107,16.745,16.401,16.000,15.490,14.908,14.375,13.992,13.757,13.571,13.354,13.164,13.165,13.440,13.813,
-13.949,13.684,13.213,12.875,12.788,12.770,12.602,12.259,11.841,11.392,10.879,10.304,9.754,9.325,9.049,8.883,
-8.745,8.565,8.337,8.113,7.931,7.752,7.527,7.289,7.118,7.019,6.918,6.784,6.671,6.592,6.451,6.166,
-5.801,5.484,5.240,4.995,4.722,4.465,4.249,4.049,3.880,3.779,3.696,3.528,3.291,3.113,2.991,2.710,
-2.166,1.613,1.379,1.386,1.241,.780,.286,.059,.038,-.003,-.096,-.163,-.300,-.691,-1.247,-1.639,
--1.740,-1.788,-2.022,-2.364,-2.598,-2.705,-2.821,-2.976,-3.082,-3.147,-3.288,-3.521,-3.708,-3.762,-3.790,-3.945,
--4.233,-4.545,-4.804,-5.006,-5.164,-5.283,-5.379,-5.461,-5.518,-5.560,-5.643,-5.815,-6.032,-6.185,-6.218,-6.177,
--6.163,-6.243,-6.417,-6.637,-6.855,-7.057,-7.260,-7.465,-7.643,-7.789,-7.946,-8.148,-8.365,-8.537,-8.656,-8.762,
--8.881,-8.997,-9.105,-9.213,-9.314,-9.370,-9.370,-9.349,-9.331,-9.300,-9.244,-9.192,-9.173,-9.182,-9.200,-9.236,
--9.293,-9.331,-9.315,-9.267,-9.247,-9.271,-9.301,-9.312,-9.314,-9.317,-9.312,-9.309,-9.328,-9.357,-9.351,-9.301,
--9.262,-9.267,-9.282,-9.270,-9.255,-9.275,-9.294,-9.246,-9.134,-9.037,-8.995,-8.960,-8.887,-8.801,-8.734,-8.663,
--8.561,-8.462,-8.415,-8.392,-8.315,-8.171,-8.041,-7.979,-7.940,-7.855,-7.734,-7.644,-7.615,-7.604,-7.558,-7.467,
--7.364,-7.286,-7.249,-7.221,-7.148,-7.010,-6.848,-6.718,-6.611,-6.468,-6.265,-6.054,-5.891,-5.767,-5.645,-5.513,
--5.392,-5.287,-5.186,-5.092,-5.018,-4.963,-4.908,-4.854,-4.816,-4.800,-4.783,-4.748,-4.701,-4.656,-4.613,-4.571,
--4.540,-4.530,-4.532,-4.533,-4.540,-4.560,-4.584,-4.603,-4.630,-4.681,-4.744,-4.792,-4.835,-4.906,-5.004,-5.078,
--5.111,-5.167,-5.315,-5.529,-5.712,-5.819,-5.903,-6.024,-6.170,-6.303,-6.438,-6.618,-6.844,-7.061,-7.234,-7.387,
--7.562,-7.763,-7.968,-8.143,-8.260,-8.301,-8.292,-8.290,-8.337,-8.423,-8.513,-8.587,-8.634,-8.643,-8.626,-8.612,
--8.607,-8.574,-8.499,-8.435,-8.439,-8.484,-8.492,-8.450,-8.428,-8.467,-8.531,-8.579,-8.611,-8.619,-8.571,-8.472,
--8.403,-8.412,-8.438,-8.401,-8.319,-8.267,-8.241,-8.173,-8.061,-7.970,-7.913,-7.824,-7.674,-7.534,-7.453,-7.382,
--7.257,-7.109,-7.006,-6.930,-6.815,-6.652,-6.501,-6.383,-6.255,-6.086,-5.909,-5.764,-5.634,-5.476,-5.280,-5.081,
--4.917,-4.792,-4.663,-4.500,-4.336,-4.226,-4.155,-4.026,-3.795,-3.533,-3.310,-3.076,-2.745,-2.351,-2.011,-1.740,
--1.427,-.999,-.499,.031,.617,1.255,1.860,2.385,2.911,3.521,4.182,4.819,5.420,5.996,6.495,6.863,
-7.090,7.122,6.860,6.395,6.156,6.637,7.988,10.033,12.578,15.488,18.581,21.781,25.338,29.444,33.498,36.229,
-36.917,36.234,35.487,35.232,35.086,34.739,34.577,35.165,36.581,38.479,40.475,42.231,43.440,44.041,44.265,44.221,
-43.598,42.070,39.853,37.547,35.541,33.892,32.678,31.988,31.514,30.673,29.402,28.499,28.770,30.018,31.205,31.550,
-31.134,30.484,29.942,29.591,29.442,29.440,29.383,29.087,28.615,28.178,27.800,27.214,26.176,24.788,23.424,22.351,
-21.518,20.721,19.919,19.266,18.868,18.614,18.317,17.931,17.527,17.103,16.545,15.800,14.936,14.017,13.056,12.179,
-11.677,11.700,11.958,11.946,11.484,10.833,10.184,9.240,7.527,5.051,2.409,.222,-1.345,-2.466,-3.274,-3.806,
--4.189,-4.638,-5.256,-5.978,-6.751,-7.574,-8.320,-8.704,-8.595,-8.228,-7.956,-7.874,-7.895,-8.076,-8.613,-9.470,
--10.296,-10.821,-11.132,-11.407,-11.569,-11.441,-11.122,-10.944,-11.081,-11.447,-12.008,-12.913,-14.214,-15.654,-16.883,-17.741,
--18.185,-18.067,-17.254,-15.936,-14.616,-13.703,-13.213,-12.907,-12.620,-12.407,-12.428,-12.762,-13.303,-13.817,-14.149,-14.358,
--14.611,-14.928,-15.087,-14.819,-14.052,-12.993,-12.024,-11.492,-11.447,-11.543,-11.331,-10.733,-10.166,-10.070,-10.409,-10.754,
--10.808,-10.673,-10.609,-10.698,-10.855,-11.027,-11.262,-11.612,-12.058,-12.515,-12.853,-12.946,-12.775,-12.469,-12.194,-11.999,
--11.808,-11.535,-11.169,-10.769,-10.414,-10.147,-9.910,-9.586,-9.137,-8.699,-8.446,-8.378,-8.334,-8.219,-8.106,-8.078,
--8.088,-8.048,-7.980,-7.979,-8.053,-8.121,-8.142,-8.154,-8.177,-8.170,-8.106,-8.013,-7.913,-7.780,-7.613,-7.467,
--7.383,-7.318,-7.208,-7.062,-6.936,-6.848,-6.767,-6.671,-6.552,-6.383,-6.138,-5.848,-5.575,-5.322,-5.038,-4.712,
--4.400,-4.142,-3.899,-3.604,-3.245,-2.851,-2.441,-2.019,-1.593,-1.167,-.726,-.259,.201,.617,1.005,1.412,
-1.850,2.292,2.716,3.134,3.546,3.930,4.276,4.611,4.962,5.323,5.670,5.994,6.317,6.674,7.101,7.595,
-8.091,8.501,8.786,8.979,9.119,9.211,9.248,9.264,9.305,9.376,9.454,9.536,9.633,9.731,9.804,9.862,
-9.957,10.104,10.247,10.333,10.386,10.472,10.594,10.698,10.762,10.846,11.022,11.276,11.536,11.766,11.988,12.204,
-12.356,12.426,12.530,12.823,13.293,13.708,13.820,13.600,13.244,12.980,12.918,13.042,13.266,13.475,13.559,13.485,
-13.312,13.122,12.945,12.771,12.599,12.460,12.379,12.347,12.324,12.274,12.198,12.137,12.126,12.141,12.325,12.258,
-12.157,12.086,12.082,12.110,12.125,12.136,12.167,12.199,12.196,12.172,12.176,12.219,12.269,12.313,12.373,12.456,
-12.525,12.559,12.594,12.677,12.808,12.955,13.095,13.231,13.376,13.544,13.735,13.925,14.085,14.215,14.348,14.506,
-14.679,14.859,15.050,15.249,15.442,15.641,15.873,16.122,16.347,16.573,16.886,17.293,17.684,18.040,18.592,19.576,
-20.809,21.696,21.785,21.234,20.658,20.545,20.906,21.430,21.850,22.116,22.286,22.352,22.180,21.646,20.791,19.830,
-18.981,18.309,17.751,17.225,16.691,16.146,15.598,15.065,14.544,14.022,13.499,12.987,12.481,11.974,11.498,11.053,
-10.473,9.495,8.092,6.659,5.692,5.313,5.220,5.095,4.878,4.631,4.349,4.017,3.698,3.413,3.063,2.603,
-2.204,2.061,2.096,2.032,1.743,1.351,.961,.492,-.136,-.815,-1.384,-1.847,-2.346,-2.940,-3.526,-3.967,
--4.232,-4.392,-4.530,-4.686,-4.903,-5.316,-6.132,-7.406,-8.872,-10.145,-11.110,-11.948,-12.690,-12.988,-12.545,-11.666,
--11.040,-10.965,-11.077,-10.989,-10.962,-11.673,-13.377,-15.504,-17.099,-17.588,-17.128,-16.406,-16.119,-16.512,-17.298,-18.017,
--18.503,-18.971,-19.646,-20.414,-20.889,-20.816,-20.333,-19.852,-19.699,-19.890,-20.193,-20.408,-20.596,-21.048,-21.982,-23.227,
--24.249,-24.586,-24.291,-23.910,-23.963,-24.494,-25.167,-25.700,-26.088,-26.414,-26.662,-26.801,-26.915,-27.082,-27.187,-27.018,
--26.541,-25.981,-25.617,-25.582,-25.841,-26.203,-26.382,-26.210,-25.851,-25.629,-25.533,-25.075,-23.795,-21.828,-19.809,-18.289,
--17.397,-16.980,-16.831,-16.770,-16.756,-17.028,-17.943,-19.534,-21.338,-22.780,-23.650,-24.110,-24.373,-24.556,-24.760,-25.070,
--25.437,-25.729,-25.914,-26.095,-26.306,-26.431,-26.380,-26.241,-26.177,-26.227,-26.310,-26.362,-26.392,-26.441,-26.544,-26.717,
--26.929,-27.133,-27.339,-27.616,-27.975,-28.316,-28.574,-28.826,-29.179,-29.630,-30.154,-30.845,-31.712,-32.332,-32.036,-30.667,
--29.023,-28.255,-28.810,-30.106,-31.247,-31.868,-32.216,-32.627,-33.153,-33.653,-34.049,-34.397,-34.767,-35.155,-35.503,-35.776,
--35.993,-36.203,-36.437,-36.706,-37.020,-37.382,-37.768,-38.155,-38.567,-39.066,-39.657,-40.252,-40.773,-41.258,-41.812,-42.456,
--43.116,-43.742,-44.374,-45.050,-45.724,-46.332,-46.892,-47.478,-48.117,-48.781,-49.459,-50.185,-50.968,-51.754,-52.480,-53.125,
--53.704,-54.240,-54.750,-55.247,-55.733,-56.210,-56.689,-57.181,-57.662,-58.098,-58.489,-58.871,-59.268,-59.672,-60.077,-60.494,
--60.900,-61.226,-61.429,-61.550,-61.650,-61.739,-61.789,-61.808,-61.835,-61.881,-61.935,-62.012,-62.139,-62.302,-62.463,-62.633,
--62.864,-63.153,-63.418,-63.588,-63.668,-63.693,-63.660,-63.556,-63.407,-63.278,-63.257,-63.442,-63.881,-64.484,-65.048,-65.422,
--65.608,-65.667,-65.597,-65.385,-65.100,-64.853,-64.671,-64.494,-64.293,-64.095,-63.901,-63.637,-63.187,-62.427,-61.313,-60.059,
--59.197,-59.222,-60.063,-61.035,-61.406,-60.979,-60.101,-59.267,-58.819,-58.848,-59.136,-59.203,-58.646,-57.528,-56.366,-55.672,
--55.523,-55.532,-55.204,-54.370,-53.398,-52.876,-52.936,-52.979,-52.269,-50.764,-49.082,-47.665,-46.349,-44.925,-43.707,-43.160,
--43.164,-43.104,-42.660,-42.089,-41.669,-41.291,-40.784,-40.290,-40.009,-39.790,-39.312,-38.593,-37.978,-37.622,-37.281,-36.656,
--35.698,-34.491,-33.060,-31.488,-30.043,-28.961,-28.158,-27.371,-26.575,-26.054,-25.971,-26.053,-25.856,-25.292,-24.683,-24.282,
--23.898,-23.143,-21.971,-20.771,-19.910,-19.320,-18.653,-17.730,-16.708,-15.826,-15.138,-14.534,-13.876,-13.047,-11.935,-10.529,
--9.026,-7.778,-7.073,-6.934,-7.113,-7.259,-7.154,-6.825,-6.422,-6.009,-5.499,-4.796,-3.912,-2.921,-1.884,-.893,
--.103,.423,.858,1.458,2.235,2.920,3.309,3.521,3.842,4.394,5.088,5.822,6.579,7.327,7.966,8.442,
-8.837,9.285,9.815,10.366,10.908,11.501,12.206,13.013,13.887,14.874,16.097,17.603,19.236,20.709,21.818,22.554,
-23.031,23.378,23.764,24.418,25.493,26.871,28.208,29.205,29.837,30.293,30.776,31.401,32.189,33.075,33.897,34.485,
-34.795,34.945,35.114,35.400,35.778,36.155,36.462,36.705,36.963,37.329,37.842,38.443,39.003,39.463,39.970,40.797,
-41.978,43.064,43.451,43.076,42.631,42.900,43.931,45.071,45.787,46.215,46.818,47.751,48.751,49.530,50.058,50.495,
-51.007,51.669,52.407,53.009,53.301,53.329,53.296,53.312,53.357,53.455,53.745,54.259,54.795,55.136,55.313,55.529,
-55.863,56.199,56.426,56.567,56.690,56.790,56.816,56.756,56.666,56.642,56.780,57.105,57.532,57.934,58.265,58.577,
-58.944,59.409,60.003,60.715,61.442,62.049,62.524,63.004,63.618,64.362,65.149,65.873,66.359,66.357,65.748,64.761,
-63.859,63.412,63.476,63.857,64.267,64.492,64.525,64.566,64.776,65.028,65.009,64.618,64.110,63.788,63.686,63.641,
-63.582,63.571,63.620,63.645,63.604,63.568,63.597,63.662,63.715,63.769,63.848,63.926,63.970,63.990,63.999,63.967,
-63.882,63.807,63.816,63.892,63.957,64.006,64.146,64.467,64.930,65.420,65.882,66.350,66.841,67.266,67.494,67.487,
-67.307,66.992,66.511,65.879,65.251,64.815,64.645,64.693,64.878,65.058,65.013,64.641,64.181,64.037,64.302,64.632,
-64.689,64.530,64.403,64.367,64.320,64.254,64.214,64.080,63.703,63.217,62.908,62.784,62.629,62.499,62.721,63.248,
-63.498,63.127,62.409,61.358,59.052,54.837,50.132,47.915,49.815,54.339,58.527,60.877,61.992,62.838,63.452,63.500,
-63.197,63.066,63.201,63.278,63.141,62.937,62.763,62.530,62.191,61.843,61.542,61.214,60.827,60.465,60.170,59.844,
-59.390,58.861,58.403,58.073,57.778,57.372,56.797,56.154,55.631,55.315,55.080,54.728,54.210,53.662,53.207,52.827,
-52.436,51.998,51.534,51.080,50.666,50.285,49.872,49.373,48.818,48.244,47.538,46.537,45.363,44.496,44.344,44.777,
-45.247,45.333,45.034,44.573,44.092,43.569,42.875,41.865,40.585,39.431,38.901,39.007,39.088,38.441,37.111,35.849,
-35.294,35.384,35.607,35.547,35.032,33.982,32.490,31.046,30.361,30.748,31.779,32.709,33.140,33.096,32.566,31.329,
-29.386,27.333,25.984,25.608,25.728,25.695,25.270,24.589,23.773,22.827,21.839,21.026,20.493,20.076,19.538,18.842,
-18.141,17.573,17.134,16.751,16.373,15.977,15.536,15.054,14.588,14.211,13.932,13.674,13.370,13.095,13.036,13.273,
-13.600,13.663,13.326,12.833,12.518,12.431,12.340,12.073,11.696,11.346,11.020,10.614,10.113,9.616,9.221,8.941,
-8.738,8.566,8.376,8.148,7.917,7.721,7.544,7.348,7.156,7.013,6.898,6.745,6.574,6.489,6.497,6.451,
-6.220,5.862,5.532,5.286,5.064,4.827,4.585,4.327,4.051,3.832,3.738,3.686,3.525,3.290,3.158,3.106,
-2.845,2.254,1.680,1.539,1.725,1.725,1.310,.792,.507,.367,.124,-.200,-.422,-.603,-.987,-1.559,
--1.992,-2.096,-2.081,-2.219,-2.484,-2.675,-2.753,-2.840,-2.967,-3.044,-3.072,-3.174,-3.392,-3.600,-3.707,-3.809,
--4.064,-4.476,-4.900,-5.210,-5.400,-5.522,-5.610,-5.673,-5.711,-5.730,-5.764,-5.870,-6.073,-6.318,-6.496,-6.544,
--6.503,-6.482,-6.558,-6.719,-6.900,-7.060,-7.221,-7.425,-7.658,-7.869,-8.035,-8.188,-8.355,-8.522,-8.668,-8.798,
--8.926,-9.044,-9.144,-9.248,-9.369,-9.473,-9.516,-9.514,-9.513,-9.515,-9.484,-9.420,-9.369,-9.352,-9.342,-9.324,
--9.329,-9.370,-9.402,-9.381,-9.333,-9.319,-9.344,-9.370,-9.380,-9.387,-9.384,-9.353,-9.316,-9.315,-9.343,-9.347,
--9.311,-9.276,-9.272,-9.266,-9.227,-9.187,-9.185,-9.192,-9.144,-9.043,-8.951,-8.903,-8.870,-8.823,-8.771,-8.720,
--8.642,-8.526,-8.413,-8.342,-8.288,-8.195,-8.060,-7.941,-7.865,-7.798,-7.699,-7.579,-7.482,-7.420,-7.366,-7.293,
--7.196,-7.087,-6.986,-6.906,-6.842,-6.768,-6.665,-6.539,-6.415,-6.294,-6.153,-5.981,-5.801,-5.644,-5.516,-5.399,
--5.275,-5.144,-5.019,-4.911,-4.827,-4.757,-4.688,-4.622,-4.578,-4.563,-4.557,-4.532,-4.487,-4.444,-4.411,-4.378,
--4.343,-4.323,-4.331,-4.352,-4.370,-4.384,-4.403,-4.422,-4.437,-4.464,-4.519,-4.585,-4.628,-4.655,-4.713,-4.814,
--4.905,-4.947,-4.988,-5.104,-5.285,-5.444,-5.540,-5.625,-5.760,-5.927,-6.073,-6.207,-6.375,-6.580,-6.769,-6.920,
--7.079,-7.287,-7.531,-7.765,-7.953,-8.066,-8.090,-8.055,-8.034,-8.077,-8.164,-8.244,-8.303,-8.348,-8.374,-8.369,
--8.347,-8.325,-8.287,-8.221,-8.164,-8.165,-8.200,-8.205,-8.174,-8.167,-8.208,-8.253,-8.272,-8.299,-8.348,-8.364,
--8.305,-8.230,-8.211,-8.227,-8.200,-8.125,-8.061,-8.020,-7.955,-7.859,-7.785,-7.742,-7.661,-7.505,-7.337,-7.225,
--7.146,-7.039,-6.900,-6.771,-6.654,-6.522,-6.383,-6.273,-6.183,-6.062,-5.891,-5.714,-5.578,-5.472,-5.345,-5.167,
--4.965,-4.803,-4.713,-4.653,-4.549,-4.399,-4.267,-4.168,-4.026,-3.791,-3.530,-3.324,-3.123,-2.809,-2.389,-1.984,
--1.648,-1.292,-.839,-.332,.167,.676,1.226,1.785,2.317,2.868,3.499,4.192,4.889,5.568,6.216,6.778,
-7.214,7.548,7.767,7.760,7.468,7.093,7.036,7.666,9.182,11.562,14.478,17.415,20.183,23.267,27.267,31.845,
-35.585,37.209,36.804,35.612,34.800,34.709,35.121,35.823,36.793,38.122,39.872,41.856,43.569,44.583,45.059,45.585,
-46.398,47.017,46.779,45.488,43.344,40.588,37.581,34.972,33.266,32.211,31.072,29.670,28.722,28.925,30.002,30.968,
-31.157,30.671,29.961,29.365,29.073,29.177,29.541,29.796,29.670,29.270,28.878,28.525,27.909,26.784,25.295,23.854,
-22.726,21.825,20.938,20.049,19.339,18.907,18.618,18.292,17.915,17.561,17.187,16.660,15.962,15.218,14.497,13.743,
-12.955,12.287,11.852,11.535,11.168,10.786,10.521,10.217,9.381,7.652,5.228,2.708,.577,-1.047,-2.248,-3.090,
--3.635,-4.019,-4.399,-4.866,-5.471,-6.269,-7.206,-8.010,-8.360,-8.235,-7.961,-7.852,-7.914,-8.021,-8.246,-8.779,
--9.566,-10.249,-10.573,-10.661,-10.761,-10.874,-10.833,-10.648,-10.551,-10.710,-11.110,-11.733,-12.667,-13.926,-15.296,-16.491,
--17.362,-17.843,-17.791,-17.076,-15.850,-14.555,-13.596,-13.051,-12.731,-12.464,-12.261,-12.237,-12.452,-12.836,-13.256,-13.617,
--13.889,-14.066,-14.149,-14.168,-14.121,-13.887,-13.305,-12.457,-11.743,-11.480,-11.482,-11.251,-10.631,-10.034,-9.902,-10.134,
--10.287,-10.194,-10.118,-10.304,-10.647,-10.908,-11.067,-11.298,-11.704,-12.207,-12.650,-12.911,-12.923,-12.722,-12.445,-12.222,
--12.051,-11.827,-11.493,-11.101,-10.730,-10.415,-10.139,-9.847,-9.478,-9.049,-8.680,-8.484,-8.426,-8.356,-8.207,-8.051,
--7.966,-7.918,-7.856,-7.806,-7.811,-7.831,-7.802,-7.750,-7.749,-7.792,-7.798,-7.739,-7.672,-7.622,-7.548,-7.431,
--7.327,-7.271,-7.208,-7.079,-6.914,-6.787,-6.710,-6.640,-6.558,-6.461,-6.318,-6.092,-5.813,-5.552,-5.323,-5.069,
--4.762,-4.443,-4.153,-3.869,-3.551,-3.198,-2.826,-2.430,-2.006,-1.578,-1.165,-.745,-.296,.156,.569,.951,
-1.353,1.789,2.223,2.629,3.021,3.416,3.795,4.139,4.465,4.804,5.159,5.505,5.830,6.157,6.532,6.976,
-7.457,7.900,8.248,8.514,8.743,8.945,9.084,9.145,9.171,9.213,9.278,9.351,9.441,9.567,9.709,9.830,
-9.928,10.040,10.171,10.281,10.346,10.407,10.520,10.670,10.788,10.851,10.922,11.084,11.342,11.635,11.907,12.153,
-12.368,12.515,12.581,12.636,12.779,13.005,13.175,13.171,13.034,12.918,12.924,13.029,13.170,13.329,13.484,13.559,
-13.465,13.206,12.898,12.671,12.578,12.575,12.589,12.577,12.540,12.495,12.444,12.392,12.356,12.344,12.325,12.498,
-12.415,12.336,12.312,12.353,12.397,12.386,12.337,12.313,12.333,12.354,12.349,12.344,12.378,12.448,12.528,12.593,
-12.638,12.667,12.697,12.753,12.840,12.946,13.065,13.203,13.360,13.527,13.696,13.875,14.058,14.220,14.345,14.456,
-14.582,14.727,14.872,15.005,15.133,15.282,15.481,15.735,16.011,16.295,16.626,17.043,17.480,17.837,18.177,18.764,
-19.754,20.875,21.567,21.511,20.964,20.539,20.654,21.239,21.893,22.276,22.360,22.334,22.307,22.141,21.613,20.712,
-19.702,18.871,18.284,17.811,17.332,16.824,16.305,15.777,15.240,14.711,14.206,13.721,13.229,12.709,12.188,11.736,
-11.340,10.803,9.865,8.532,7.177,6.222,5.748,5.525,5.353,5.212,5.098,4.921,4.632,4.295,3.944,3.509,
-2.989,2.571,2.413,2.387,2.223,1.847,1.425,1.071,.703,.234,-.274,-.739,-1.212,-1.774,-2.381,-2.905,
--3.322,-3.728,-4.166,-4.540,-4.757,-4.940,-5.434,-6.530,-8.139,-9.776,-10.956,-11.606,-12.001,-12.302,-12.348,-11.971,
--11.383,-11.017,-11.014,-11.070,-10.884,-10.638,-10.919,-12.138,-14.035,-15.768,-16.550,-16.321,-15.798,-15.803,-16.513,-17.422,
--17.995,-18.232,-18.537,-19.173,-19.971,-20.511,-20.517,-20.082,-19.614,-19.510,-19.829,-20.274,-20.571,-20.797,-21.269,-22.131,
--23.145,-23.908,-24.177,-24.001,-23.635,-23.404,-23.542,-24.055,-24.721,-25.272,-25.611,-25.840,-26.106,-26.433,-26.693,-26.755,
--26.647,-26.548,-26.567,-26.607,-26.498,-26.238,-25.966,-25.749,-25.526,-25.287,-25.105,-24.880,-24.227,-22.832,-20.864,-18.887,
--17.387,-16.504,-16.142,-16.110,-16.159,-16.144,-16.270,-16.981,-18.443,-20.244,-21.758,-22.717,-23.282,-23.678,-23.976,-24.206,
--24.454,-24.747,-25.000,-25.158,-25.295,-25.482,-25.661,-25.729,-25.691,-25.656,-25.695,-25.789,-25.886,-25.955,-25.991,-26.012,
--26.056,-26.147,-26.279,-26.458,-26.707,-27.019,-27.345,-27.669,-28.035,-28.467,-28.954,-29.549,-30.346,-31.183,-31.482,-30.688,
--28.992,-27.412,-26.954,-27.740,-29.061,-30.179,-30.900,-31.426,-31.925,-32.392,-32.791,-33.160,-33.555,-33.973,-34.356,-34.653,
--34.866,-35.056,-35.295,-35.591,-35.900,-36.191,-36.486,-36.809,-37.156,-37.536,-37.993,-38.548,-39.144,-39.717,-40.272,-40.863,
--41.499,-42.140,-42.782,-43.457,-44.156,-44.804,-45.360,-45.878,-46.440,-47.067,-47.740,-48.453,-49.218,-50.012,-50.785,-51.505,
--52.164,-52.755,-53.280,-53.762,-54.233,-54.695,-55.147,-55.616,-56.116,-56.606,-57.029,-57.402,-57.791,-58.219,-58.634,-59.005,
--59.363,-59.723,-60.028,-60.227,-60.349,-60.460,-60.570,-60.655,-60.719,-60.791,-60.873,-60.960,-61.085,-61.282,-61.508,-61.690,
--61.839,-62.039,-62.310,-62.561,-62.713,-62.786,-62.834,-62.840,-62.766,-62.650,-62.592,-62.674,-62.927,-63.356,-63.924,-64.511,
--64.956,-65.159,-65.121,-64.924,-64.668,-64.429,-64.214,-63.959,-63.615,-63.215,-62.853,-62.585,-62.370,-62.055,-61.436,-60.446,
--59.375,-58.799,-59.097,-60.020,-60.856,-61.044,-60.557,-59.745,-58.999,-58.617,-58.719,-59.085,-59.188,-58.616,-57.496,-56.391,
--55.756,-55.580,-55.478,-55.039,-54.160,-53.200,-52.713,-52.845,-53.024,-52.490,-51.117,-49.486,-48.119,-46.977,-45.855,-44.896,
--44.342,-44.010,-43.449,-42.593,-41.858,-41.524,-41.380,-41.137,-40.847,-40.671,-40.474,-39.976,-39.204,-38.481,-37.985,-37.555,
--36.977,-36.194,-35.180,-33.860,-32.302,-30.844,-29.790,-29.067,-28.377,-27.658,-27.185,-27.140,-27.256,-27.075,-26.487,-25.829,
--25.405,-25.064,-24.415,-23.353,-22.198,-21.275,-20.537,-19.719,-18.743,-17.794,-17.027,-16.392,-15.771,-15.122,-14.377,-13.330,
--11.840,-10.131,-8.753,-8.137,-8.225,-8.553,-8.661,-8.416,-7.978,-7.538,-7.113,-6.591,-5.898,-5.065,-4.142,-3.146,
--2.128,-1.214,-.479,.165,.848,1.521,1.988,2.188,2.339,2.714,3.358,4.099,4.798,5.456,6.114,6.746,
-7.301,7.785,8.263,8.780,9.341,9.934,10.565,11.261,12.052,12.953,13.988,15.201,16.613,18.141,19.580,20.717,
-21.469,21.909,22.218,22.641,23.426,24.669,26.169,27.531,28.471,29.025,29.437,29.927,30.581,31.391,32.277,33.091,
-33.686,34.043,34.280,34.537,34.872,35.265,35.672,36.060,36.415,36.767,37.182,37.697,38.241,38.665,38.921,39.222,
-39.922,41.106,42.307,42.844,42.548,42.063,42.214,43.145,44.235,44.897,45.216,45.699,46.586,47.630,48.473,49.034,
-49.479,50.001,50.668,51.399,52.010,52.351,52.442,52.438,52.449,52.486,52.589,52.867,53.336,53.833,54.197,54.472,
-54.823,55.270,55.645,55.823,55.863,55.894,55.941,55.934,55.847,55.757,55.789,56.013,56.395,56.825,57.211,57.550,
-57.898,58.298,58.766,59.336,60.027,60.781,61.482,62.068,62.589,63.128,63.737,64.448,65.250,65.996,66.398,66.232,
-65.561,64.718,64.073,63.817,63.904,64.113,64.216,64.188,64.232,64.517,64.903,65.049,64.787,64.287,63.816,63.465,
-63.190,62.979,62.872,62.850,62.839,62.820,62.842,62.923,63.023,63.108,63.184,63.252,63.305,63.362,63.454,63.560,
-63.616,63.609,63.596,63.618,63.644,63.648,63.686,63.838,64.115,64.455,64.804,65.177,65.624,66.144,66.626,66.907,
-66.896,66.640,66.237,65.718,65.089,64.488,64.168,64.279,64.690,65.071,65.138,64.847,64.422,64.192,64.313,64.593,
-64.711,64.595,64.465,64.460,64.439,64.288,64.165,64.215,64.218,63.868,63.306,62.972,62.944,62.874,62.637,62.565,
-62.809,62.991,62.829,62.554,62.083,60.288,56.199,51.007,47.812,48.750,52.891,57.483,60.720,62.632,63.771,64.188,
-63.903,63.455,63.391,63.606,63.660,63.482,63.335,63.268,63.061,62.660,62.291,62.081,61.865,61.483,61.020,60.630,
-60.298,59.911,59.461,59.031,58.639,58.216,57.707,57.148,56.631,56.237,55.956,55.672,55.254,54.706,54.164,53.737,
-53.388,53.009,52.554,52.071,51.634,51.273,50.949,50.578,50.121,49.643,49.192,48.655,47.879,46.981,46.361,46.272,
-46.470,46.481,46.135,45.645,45.206,44.773,44.262,43.723,43.192,42.591,41.934,41.421,41.086,40.495,39.161,37.280,
-35.729,35.180,35.416,35.685,35.486,34.788,33.681,32.276,30.979,30.453,30.993,32.118,33.053,33.521,33.763,33.817,
-33.206,31.580,29.424,27.763,27.165,27.284,27.392,27.092,26.390,25.350,24.003,22.543,21.324,20.538,20.019,19.464,
-18.775,18.083,17.526,17.099,16.725,16.358,15.989,15.606,15.198,14.790,14.433,14.138,13.841,13.475,13.102,12.905,
-12.986,13.180,13.180,12.884,12.511,12.300,12.201,11.973,11.549,11.122,10.853,10.660,10.367,9.950,9.532,9.195,
-8.921,8.679,8.462,8.251,8.020,7.786,7.594,7.445,7.303,7.160,7.030,6.880,6.670,6.459,6.374,6.415,
-6.411,6.220,5.903,5.605,5.370,5.153,4.940,4.739,4.503,4.204,3.947,3.839,3.794,3.635,3.389,3.251,
-3.202,2.939,2.351,1.836,1.843,2.230,2.421,2.151,1.716,1.410,1.083,.487,-.229,-.705,-.905,-1.138,
--1.553,-1.936,-2.078,-2.088,-2.188,-2.390,-2.565,-2.688,-2.837,-3.001,-3.089,-3.112,-3.202,-3.416,-3.654,-3.836,
--4.031,-4.350,-4.766,-5.139,-5.379,-5.516,-5.611,-5.676,-5.697,-5.692,-5.711,-5.801,-5.982,-6.235,-6.506,-6.719,
--6.821,-6.827,-6.818,-6.871,-6.990,-7.121,-7.234,-7.373,-7.588,-7.857,-8.108,-8.300,-8.447,-8.575,-8.691,-8.806,
--8.934,-9.063,-9.161,-9.234,-9.332,-9.466,-9.578,-9.615,-9.609,-9.616,-9.631,-9.608,-9.553,-9.519,-9.517,-9.503,
--9.462,-9.438,-9.450,-9.458,-9.427,-9.393,-9.397,-9.422,-9.431,-9.425,-9.425,-9.414,-9.364,-9.301,-9.284,-9.315,
--9.340,-9.328,-9.311,-9.310,-9.294,-9.239,-9.171,-9.126,-9.091,-9.028,-8.937,-8.853,-8.795,-8.756,-8.731,-8.715,
--8.683,-8.603,-8.480,-8.356,-8.260,-8.178,-8.085,-7.982,-7.884,-7.795,-7.707,-7.618,-7.532,-7.442,-7.340,-7.229,
--7.123,-7.020,-6.908,-6.779,-6.644,-6.519,-6.412,-6.312,-6.203,-6.080,-5.949,-5.822,-5.696,-5.558,-5.406,-5.260,
--5.136,-5.024,-4.904,-4.777,-4.667,-4.586,-4.515,-4.434,-4.357,-4.313,-4.306,-4.302,-4.272,-4.223,-4.181,-4.157,
--4.141,-4.128,-4.129,-4.147,-4.172,-4.193,-4.212,-4.236,-4.259,-4.278,-4.310,-4.369,-4.434,-4.468,-4.479,-4.522,
--4.624,-4.737,-4.801,-4.833,-4.903,-5.031,-5.162,-5.263,-5.370,-5.523,-5.696,-5.850,-6.000,-6.187,-6.395,-6.564,
--6.688,-6.835,-7.050,-7.304,-7.532,-7.704,-7.806,-7.829,-7.796,-7.778,-7.824,-7.907,-7.969,-8.005,-8.040,-8.069,
--8.063,-8.023,-7.982,-7.953,-7.927,-7.913,-7.929,-7.951,-7.941,-7.916,-7.934,-7.996,-8.035,-8.024,-8.028,-8.087,
--8.138,-8.104,-8.018,-7.974,-7.985,-7.980,-7.925,-7.859,-7.810,-7.754,-7.682,-7.623,-7.583,-7.506,-7.359,-7.185,
--7.049,-6.949,-6.844,-6.717,-6.580,-6.435,-6.286,-6.161,-6.081,-6.018,-5.915,-5.759,-5.586,-5.440,-5.327,-5.226,
--5.101,-4.940,-4.780,-4.670,-4.606,-4.524,-4.394,-4.260,-4.153,-4.016,-3.792,-3.527,-3.308,-3.111,-2.827,-2.429,
--2.007,-1.619,-1.207,-.715,-.191,.293,.748,1.227,1.738,2.266,2.833,3.472,4.162,4.866,5.581,6.299,
-6.948,7.461,7.858,8.190,8.412,8.402,8.125,7.764,7.726,8.511,10.420,13.226,16.269,19.102,22.041,25.769,
-30.296,34.531,37.098,37.526,36.575,35.529,35.284,35.933,36.987,37.973,38.917,40.209,41.931,43.549,44.495,44.936,
-45.603,46.876,48.331,49.233,49.099,47.700,44.972,41.311,37.684,34.969,33.215,31.874,30.705,30.041,30.115,30.534,
-30.687,30.396,29.918,29.489,29.166,29.024,29.173,29.520,29.737,29.600,29.219,28.830,28.432,27.764,26.644,25.230,
-23.895,22.861,22.021,21.150,20.231,19.465,18.993,18.708,18.428,18.105,17.769,17.361,16.779,16.059,15.361,14.751,
-14.142,13.470,12.774,12.081,11.364,10.716,10.368,10.339,10.163,9.206,7.295,4.888,2.603,.738,-.730,-1.869,
--2.707,-3.322,-3.838,-4.316,-4.761,-5.254,-5.938,-6.795,-7.551,-7.907,-7.875,-7.758,-7.809,-8.022,-8.289,-8.632,
--9.138,-9.715,-10.099,-10.159,-10.059,-10.044,-10.143,-10.208,-10.185,-10.196,-10.380,-10.785,-11.439,-12.405,-13.645,-14.941,
--16.034,-16.805,-17.238,-17.265,-16.779,-15.828,-14.704,-13.759,-13.152,-12.802,-12.568,-12.407,-12.367,-12.475,-12.693,-12.972,
--13.284,-13.553,-13.648,-13.533,-13.396,-13.458,-13.628,-13.529,-12.976,-12.282,-11.879,-11.737,-11.454,-10.880,-10.347,-10.157,
--10.125,-9.904,-9.573,-9.567,-10.049,-10.680,-11.079,-11.275,-11.542,-11.983,-12.445,-12.767,-12.910,-12.888,-12.721,-12.476,
--12.239,-12.015,-11.741,-11.400,-11.056,-10.756,-10.465,-10.128,-9.736,-9.322,-8.939,-8.647,-8.475,-8.373,-8.252,-8.084,
--7.920,-7.796,-7.695,-7.616,-7.596,-7.628,-7.626,-7.539,-7.439,-7.420,-7.455,-7.446,-7.380,-7.333,-7.332,-7.313,
--7.245,-7.178,-7.144,-7.087,-6.962,-6.813,-6.714,-6.652,-6.567,-6.448,-6.323,-6.180,-5.976,-5.717,-5.462,-5.230,
--4.986,-4.703,-4.406,-4.114,-3.807,-3.466,-3.112,-2.757,-2.380,-1.967,-1.551,-1.161,-.775,-.358,.072,.476,
-.859,1.264,1.697,2.116,2.496,2.865,3.257,3.653,4.017,4.347,4.676,5.019,5.362,5.691,6.027,6.410,
-6.847,7.290,7.672,7.980,8.257,8.534,8.777,8.935,9.014,9.078,9.162,9.243,9.302,9.372,9.494,9.657,
-9.817,9.957,10.084,10.189,10.255,10.299,10.383,10.537,10.720,10.870,10.973,11.081,11.246,11.475,11.738,11.999,
-12.239,12.439,12.577,12.660,12.735,12.849,12.979,13.044,13.015,12.972,13.022,13.159,13.276,13.300,13.280,13.290,
-13.313,13.253,13.072,12.849,12.710,12.707,12.782,12.834,12.811,12.738,12.671,12.634,12.612,12.589,12.554,12.498,
-12.683,12.625,12.592,12.597,12.631,12.650,12.613,12.537,12.485,12.489,12.518,12.532,12.539,12.575,12.653,12.736,
-12.784,12.799,12.814,12.860,12.930,12.997,13.054,13.132,13.264,13.446,13.639,13.822,14.005,14.197,14.371,14.501,
-14.597,14.697,14.810,14.907,14.960,14.996,15.086,15.278,15.558,15.885,16.265,16.727,17.237,17.675,17.989,18.336,
-18.972,19.931,20.888,21.402,21.322,20.924,20.683,20.912,21.556,22.256,22.638,22.618,22.419,22.256,22.056,21.566,
-20.720,19.765,18.989,18.438,17.959,17.448,16.925,16.431,15.941,15.422,14.889,14.385,13.918,13.447,12.936,12.413,
-11.955,11.566,11.078,10.268,9.127,7.939,7.015,6.420,6.025,5.751,5.616,5.561,5.428,5.139,4.765,4.366,
-3.908,3.412,3.032,2.855,2.717,2.390,1.883,1.412,1.103,.874,.612,.298,-.081,-.600,-1.261,-1.906,
--2.396,-2.810,-3.341,-4.006,-4.585,-4.918,-5.187,-5.822,-7.079,-8.724,-10.186,-11.045,-11.342,-11.410,-11.475,-11.517,
--11.470,-11.406,-11.449,-11.567,-11.560,-11.246,-10.699,-10.341,-10.743,-12.113,-13.924,-15.231,-15.556,-15.352,-15.459,-16.172,
--17.063,-17.644,-17.934,-18.288,-18.903,-19.641,-20.198,-20.335,-20.051,-19.661,-19.590,-19.961,-20.470,-20.804,-21.032,-21.434,
--22.058,-22.688,-23.205,-23.668,-24.009,-23.961,-23.476,-22.998,-23.057,-23.673,-24.376,-24.793,-25.008,-25.306,-25.757,-26.171,
--26.387,-26.450,-26.506,-26.586,-26.579,-26.389,-26.068,-25.747,-25.482,-25.234,-24.978,-24.702,-24.261,-23.382,-21.938,-20.148,
--18.404,-16.978,-15.995,-15.568,-15.688,-16.020,-16.130,-16.036,-16.316,-17.451,-19.197,-20.830,-21.902,-22.537,-23.032,-23.458,
--23.746,-23.929,-24.111,-24.308,-24.465,-24.594,-24.763,-24.960,-25.087,-25.091,-25.039,-25.036,-25.113,-25.223,-25.301,-25.320,
--25.298,-25.287,-25.335,-25.462,-25.657,-25.890,-26.150,-26.469,-26.898,-27.416,-27.926,-28.410,-29.030,-29.886,-30.614,-30.479,
--29.118,-27.155,-25.809,-25.829,-26.918,-28.241,-29.265,-29.987,-30.573,-31.068,-31.471,-31.851,-32.281,-32.742,-33.163,-33.507,
--33.770,-33.967,-34.153,-34.399,-34.713,-35.017,-35.254,-35.463,-35.715,-36.027,-36.387,-36.825,-37.382,-38.034,-38.702,-39.331,
--39.920,-40.487,-41.062,-41.691,-42.391,-43.105,-43.744,-44.293,-44.822,-45.400,-46.036,-46.720,-47.458,-48.237,-49.011,-49.751,
--50.472,-51.167,-51.787,-52.301,-52.754,-53.206,-53.655,-54.083,-54.522,-55.002,-55.482,-55.894,-56.258,-56.658,-57.107,-57.526,
--57.867,-58.176,-58.493,-58.781,-58.988,-59.139,-59.285,-59.425,-59.539,-59.646,-59.776,-59.913,-60.039,-60.202,-60.449,-60.716,
--60.901,-61.014,-61.171,-61.412,-61.641,-61.776,-61.859,-61.957,-62.035,-62.025,-61.971,-62.001,-62.181,-62.478,-62.865,-63.356,
--63.915,-64.380,-64.564,-64.413,-64.050,-63.666,-63.361,-63.088,-62.724,-62.218,-61.657,-61.206,-60.981,-60.935,-60.831,-60.370,
--59.502,-58.627,-58.358,-58.940,-59.956,-60.692,-60.759,-60.260,-59.499,-58.765,-58.353,-58.465,-58.903,-59.079,-58.543,-57.472,
--56.458,-55.889,-55.656,-55.390,-54.810,-53.916,-53.023,-52.569,-52.663,-52.813,-52.332,-51.062,-49.519,-48.260,-47.373,-46.671,
--46.078,-45.543,-44.816,-43.696,-42.446,-41.618,-41.410,-41.481,-41.467,-41.371,-41.292,-41.076,-40.498,-39.656,-38.891,-38.354,
--37.892,-37.332,-36.638,-35.761,-34.574,-33.110,-31.695,-30.656,-29.971,-29.376,-28.765,-28.317,-28.171,-28.149,-27.933,-27.451,
--26.942,-26.589,-26.245,-25.615,-24.647,-23.581,-22.609,-21.661,-20.610,-19.553,-18.697,-18.044,-17.385,-16.630,-15.912,-15.272,
--14.426,-13.069,-11.376,-9.986,-9.412,-9.565,-9.896,-9.928,-9.586,-9.088,-8.629,-8.203,-7.682,-6.995,-6.192,-5.339,
--4.422,-3.406,-2.339,-1.345,-.509,.153,.626,.886,1.010,1.206,1.659,2.361,3.137,3.832,4.429,4.996,
-5.574,6.148,6.686,7.192,7.714,8.308,8.973,9.669,10.386,11.178,12.103,13.165,14.334,15.602,16.948,18.259,
-19.364,20.151,20.657,21.066,21.649,22.641,24.064,25.637,26.951,27.799,28.317,28.783,29.352,30.029,30.786,31.593,
-32.355,32.951,33.357,33.674,34.010,34.395,34.815,35.269,35.743,36.194,36.613,37.077,37.662,38.285,38.726,38.869,
-38.925,39.313,40.220,41.287,41.878,41.761,41.431,41.616,42.481,43.493,44.098,44.346,44.716,45.469,46.403,47.184,
-47.734,48.215,48.788,49.483,50.216,50.838,51.222,51.370,51.413,51.478,51.597,51.775,52.059,52.466,52.912,53.303,
-53.677,54.136,54.646,55.017,55.115,55.022,54.924,54.905,54.914,54.897,54.891,54.985,55.230,55.601,56.032,56.465,
-56.872,57.257,57.651,58.114,58.703,59.425,60.202,60.936,61.583,62.148,62.654,63.146,63.732,64.500,65.369,66.075,
-66.365,66.193,65.715,65.144,64.652,64.322,64.136,64.007,63.916,63.967,64.240,64.617,64.844,64.774,64.471,64.067,
-63.626,63.177,62.783,62.498,62.308,62.180,62.121,62.143,62.212,62.287,62.374,62.492,62.609,62.689,62.757,62.856,
-62.969,63.058,63.142,63.263,63.384,63.426,63.399,63.417,63.552,63.757,63.970,64.220,64.575,65.039,65.533,65.934,
-66.109,65.984,65.616,65.158,64.713,64.290,63.950,63.888,64.234,64.795,65.137,64.976,64.470,64.068,64.091,64.439,
-64.723,64.696,64.510,64.451,64.493,64.326,63.885,63.555,63.629,63.818,63.623,63.078,62.676,62.591,62.449,62.009,
-61.564,61.423,61.455,61.499,61.718,61.880,60.737,57.172,52.161,48.647,48.887,52.370,56.759,60.319,62.753,64.207,
-64.605,64.166,63.678,63.718,64.022,64.043,63.784,63.639,63.664,63.529,63.125,62.742,62.580,62.450,62.098,61.572,
-61.082,60.684,60.296,59.885,59.489,59.105,58.682,58.216,57.750,57.301,56.860,56.433,56.024,55.613,55.185,54.769,
-54.387,53.998,53.540,53.019,52.513,52.100,51.784,51.497,51.144,50.702,50.258,49.890,49.516,48.971,48.285,47.724,
-47.459,47.304,46.970,46.468,46.052,45.794,45.477,44.976,44.478,44.174,43.948,43.584,43.098,42.567,41.749,40.266,
-38.267,36.539,35.742,35.719,35.763,35.405,34.649,33.602,32.306,31.038,30.379,30.651,31.479,32.189,32.567,32.897,
-33.265,33.220,32.346,30.944,29.815,29.428,29.544,29.629,29.363,28.633,27.348,25.538,23.556,21.916,20.851,20.149,
-19.473,18.716,18.000,17.439,17.016,16.657,16.318,15.985,15.642,15.273,14.891,14.532,14.213,13.893,13.513,13.100,
-12.806,12.746,12.821,12.794,12.582,12.343,12.216,12.078,11.718,11.174,10.723,10.517,10.399,10.153,9.776,9.416,
-9.137,8.888,8.633,8.392,8.161,7.915,7.680,7.518,7.427,7.340,7.223,7.088,6.923,6.701,6.479,6.366,
-6.361,6.319,6.144,5.907,5.708,5.524,5.302,5.083,4.919,4.741,4.473,4.197,4.049,3.972,3.790,3.515,
-3.336,3.245,2.964,2.408,1.977,2.085,2.556,2.820,2.650,2.353,2.158,1.819,1.047,.060,-.620,-.827,
--.882,-1.098,-1.434,-1.700,-1.863,-2.013,-2.177,-2.333,-2.506,-2.724,-2.917,-3.004,-3.030,-3.137,-3.375,-3.666,
--3.947,-4.250,-4.599,-4.925,-5.138,-5.254,-5.363,-5.499,-5.601,-5.617,-5.592,-5.634,-5.796,-6.046,-6.321,-6.585,
--6.822,-6.995,-7.077,-7.100,-7.143,-7.247,-7.381,-7.510,-7.656,-7.861,-8.108,-8.338,-8.518,-8.667,-8.800,-8.917,
--9.025,-9.137,-9.237,-9.296,-9.338,-9.424,-9.559,-9.667,-9.690,-9.666,-9.660,-9.669,-9.652,-9.619,-9.611,-9.623,
--9.607,-9.557,-9.520,-9.512,-9.499,-9.467,-9.453,-9.479,-9.502,-9.484,-9.450,-9.437,-9.425,-9.373,-9.304,-9.275,
--9.296,-9.320,-9.319,-9.311,-9.307,-9.287,-9.233,-9.158,-9.085,-9.012,-8.935,-8.857,-8.784,-8.715,-8.661,-8.638,
--8.635,-8.606,-8.521,-8.402,-8.285,-8.180,-8.080,-7.989,-7.910,-7.824,-7.719,-7.620,-7.558,-7.517,-7.441,-7.312,
--7.166,-7.048,-6.949,-6.833,-6.680,-6.502,-6.325,-6.171,-6.044,-5.923,-5.784,-5.636,-5.512,-5.416,-5.307,-5.154,
--4.986,-4.850,-4.754,-4.660,-4.549,-4.443,-4.363,-4.294,-4.215,-4.139,-4.091,-4.074,-4.062,-4.034,-3.992,-3.951,
--3.923,-3.914,-3.924,-3.946,-3.969,-3.986,-3.997,-4.012,-4.035,-4.061,-4.089,-4.127,-4.183,-4.241,-4.274,-4.288,
--4.326,-4.421,-4.540,-4.624,-4.669,-4.728,-4.835,-4.963,-5.080,-5.198,-5.338,-5.486,-5.632,-5.802,-6.020,-6.245,
--6.404,-6.504,-6.631,-6.833,-7.067,-7.260,-7.392,-7.474,-7.509,-7.515,-7.538,-7.603,-7.672,-7.699,-7.697,-7.712,
--7.743,-7.740,-7.690,-7.632,-7.602,-7.600,-7.619,-7.656,-7.685,-7.678,-7.660,-7.690,-7.763,-7.805,-7.784,-7.766,
--7.809,-7.861,-7.838,-7.757,-7.711,-7.727,-7.742,-7.706,-7.648,-7.606,-7.572,-7.527,-7.477,-7.425,-7.343,-7.214,
--7.062,-6.923,-6.802,-6.681,-6.557,-6.426,-6.280,-6.130,-6.008,-5.931,-5.868,-5.779,-5.652,-5.502,-5.347,-5.212,
--5.120,-5.054,-4.958,-4.810,-4.658,-4.545,-4.448,-4.324,-4.186,-4.066,-3.938,-3.743,-3.488,-3.236,-2.994,-2.701,
--2.335,-1.953,-1.585,-1.178,-.687,-.157,.339,.799,1.271,1.771,2.297,2.866,3.500,4.177,4.866,5.577,
-6.319,7.032,7.627,8.094,8.505,8.889,9.152,9.130,8.769,8.312,8.321,9.389,11.663,14.694,17.870,21.019,
-24.460,28.421,32.514,35.847,37.657,37.883,37.258,36.809,37.101,37.901,38.669,39.325,40.306,41.817,43.370,44.346,
-44.807,45.394,46.512,47.927,49.123,49.663,49.143,47.246,44.159,40.689,37.675,35.398,33.725,32.605,32.046,31.731,
-31.139,30.143,29.201,28.779,28.831,28.998,29.102,29.216,29.353,29.361,29.141,28.777,28.379,27.902,27.175,26.102,
-24.806,23.571,22.603,21.858,21.131,20.342,19.625,19.125,18.807,18.545,18.288,18.021,17.640,17.039,16.280,15.544,
-14.906,14.298,13.667,13.014,12.283,11.429,10.641,10.237,10.168,9.818,8.554,6.425,4.095,2.151,.671,-.531,
--1.536,-2.336,-3.002,-3.633,-4.199,-4.627,-5.004,-5.534,-6.269,-6.987,-7.429,-7.568,-7.599,-7.713,-7.970,-8.342,
--8.796,-9.263,-9.605,-9.689,-9.534,-9.331,-9.271,-9.384,-9.562,-9.719,-9.892,-10.172,-10.635,-11.333,-12.292,-13.446,
--14.600,-15.544,-16.197,-16.598,-16.752,-16.559,-15.942,-15.011,-14.055,-13.337,-12.930,-12.744,-12.681,-12.711,-12.821,-12.969,
--13.124,-13.287,-13.411,-13.370,-13.133,-12.918,-13.009,-13.362,-13.562,-13.303,-12.756,-12.287,-11.951,-11.514,-10.934,-10.478,
--10.269,-10.030,-9.534,-9.086,-9.221,-9.994,-10.874,-11.402,-11.657,-11.963,-12.388,-12.736,-12.888,-12.910,-12.867,-12.727,
--12.471,-12.164,-11.860,-11.551,-11.238,-10.960,-10.716,-10.423,-10.020,-9.555,-9.131,-8.795,-8.534,-8.321,-8.145,-7.997,
--7.866,-7.738,-7.596,-7.447,-7.349,-7.360,-7.440,-7.475,-7.412,-7.327,-7.301,-7.298,-7.243,-7.156,-7.124,-7.157,
--7.173,-7.133,-7.082,-7.050,-6.990,-6.870,-6.742,-6.664,-6.602,-6.488,-6.324,-6.166,-6.021,-5.845,-5.619,-5.374,
--5.131,-4.875,-4.604,-4.336,-4.069,-3.772,-3.433,-3.084,-2.740,-2.374,-1.970,-1.564,-1.191,-.831,-.444,-.032,
-.370,.762,1.175,1.606,2.013,2.375,2.732,3.122,3.530,3.912,4.253,4.578,4.908,5.235,5.551,5.881,
-6.263,6.693,7.110,7.463,7.767,8.078,8.400,8.666,8.830,8.940,9.072,9.227,9.333,9.361,9.374,9.449,
-9.592,9.764,9.936,10.087,10.189,10.238,10.287,10.404,10.596,10.811,11.001,11.167,11.324,11.474,11.621,11.792,
-12.003,12.224,12.401,12.511,12.596,12.712,12.877,13.033,13.111,13.110,13.112,13.185,13.288,13.312,13.219,13.091,
-13.030,13.038,13.035,12.974,12.899,12.878,12.930,13.004,13.031,12.985,12.902,12.841,12.826,12.827,12.804,12.749,
-12.683,12.872,12.846,12.841,12.835,12.827,12.818,12.795,12.752,12.712,12.702,12.720,12.742,12.764,12.804,12.868,
-12.928,12.956,12.962,12.980,13.026,13.078,13.111,13.138,13.204,13.341,13.534,13.742,13.943,14.142,14.340,14.509,
-14.625,14.705,14.788,14.880,14.933,14.916,14.888,14.960,15.183,15.512,15.890,16.337,16.880,17.428,17.838,18.124,
-18.517,19.215,20.112,20.871,21.252,21.303,21.238,21.267,21.531,22.054,22.654,23.008,22.945,22.620,22.298,21.994,
-21.492,20.695,19.804,19.076,18.540,18.049,17.522,17.007,16.550,16.108,15.623,15.098,14.580,14.100,13.638,13.161,
-12.665,12.199,11.783,11.318,10.637,9.706,8.705,7.851,7.195,6.678,6.297,6.095,6.000,5.832,5.500,5.080,
-4.669,4.267,3.878,3.574,3.359,3.076,2.582,1.964,1.461,1.195,1.080,.980,.809,.486,-.060,-.759,
--1.409,-1.903,-2.382,-3.058,-3.908,-4.675,-5.200,-5.671,-6.457,-7.677,-9.018,-10.002,-10.417,-10.448,-10.407,-10.468,
--10.664,-11.000,-11.440,-11.839,-12.027,-11.930,-11.523,-10.784,-9.914,-9.524,-10.238,-11.948,-13.714,-14.672,-14.873,-15.028,
--15.576,-16.326,-16.949,-17.436,-17.962,-18.584,-19.221,-19.750,-20.005,-19.891,-19.602,-19.554,-19.925,-20.440,-20.787,-21.035,
--21.391,-21.784,-22.039,-22.359,-23.117,-24.114,-24.517,-23.857,-22.747,-22.258,-22.737,-23.598,-24.186,-24.452,-24.717,-25.129,
--25.569,-25.911,-26.136,-26.229,-26.155,-25.956,-25.758,-25.644,-25.556,-25.369,-25.039,-24.629,-24.169,-23.550,-22.614,-21.359,
--19.945,-18.499,-17.059,-15.816,-15.200,-15.440,-16.091,-16.349,-15.997,-15.775,-16.544,-18.264,-20.064,-21.244,-21.875,-22.383,
--22.910,-23.295,-23.469,-23.574,-23.725,-23.886,-24.009,-24.136,-24.299,-24.420,-24.414,-24.323,-24.272,-24.317,-24.399,-24.448,
--24.454,-24.450,-24.467,-24.534,-24.688,-24.926,-25.185,-25.431,-25.753,-26.261,-26.892,-27.450,-27.917,-28.551,-29.433,-30.000,
--29.400,-27.504,-25.349,-24.304,-24.822,-26.214,-27.557,-28.500,-29.178,-29.721,-30.131,-30.480,-30.915,-31.448,-31.933,-32.278,
--32.542,-32.791,-33.012,-33.200,-33.422,-33.712,-33.993,-34.192,-34.354,-34.576,-34.881,-35.241,-35.677,-36.246,-36.943,-37.673,
--38.338,-38.910,-39.423,-39.947,-40.553,-41.248,-41.954,-42.594,-43.175,-43.764,-44.391,-45.044,-45.727,-46.464,-47.230,-47.969,
--48.681,-49.417,-50.164,-50.824,-51.342,-51.782,-52.229,-52.671,-53.069,-53.459,-53.898,-54.357,-54.761,-55.121,-55.519,-55.965,
--56.374,-56.699,-56.989,-57.288,-57.563,-57.779,-57.967,-58.158,-58.323,-58.448,-58.585,-58.776,-58.981,-59.151,-59.335,-59.595,
--59.876,-60.063,-60.167,-60.311,-60.537,-60.742,-60.850,-60.932,-61.073,-61.229,-61.308,-61.346,-61.469,-61.719,-62.028,-62.355,
--62.754,-63.240,-63.670,-63.826,-63.612,-63.134,-62.595,-62.122,-61.686,-61.179,-60.553,-59.911,-59.461,-59.363,-59.545,-59.666,
--59.347,-58.575,-57.869,-57.876,-58.724,-59.859,-60.574,-60.603,-60.119,-59.374,-58.588,-58.086,-58.153,-58.613,-58.823,-58.306,
--57.275,-56.347,-55.849,-55.587,-55.197,-54.516,-53.641,-52.852,-52.458,-52.502,-52.560,-52.044,-50.800,-49.285,-48.078,-47.384,
--47.044,-46.785,-46.299,-45.306,-43.853,-42.457,-41.688,-41.595,-41.744,-41.797,-41.771,-41.708,-41.415,-40.742,-39.888,-39.194,
--38.723,-38.263,-37.673,-36.995,-36.218,-35.205,-33.927,-32.632,-31.617,-30.921,-30.365,-29.834,-29.394,-29.118,-28.933,-28.701,
--28.398,-28.105,-27.825,-27.403,-26.688,-25.736,-24.727,-23.717,-22.605,-21.394,-20.328,-19.600,-19.045,-18.317,-17.370,-16.509,
--15.897,-15.224,-14.086,-12.591,-11.349,-10.845,-10.972,-11.218,-11.173,-10.799,-10.296,-9.839,-9.427,-8.925,-8.225,-7.360,
--6.446,-5.517,-4.488,-3.313,-2.125,-1.149,-.513,-.170,.013,.165,.392,.777,1.346,2.035,2.734,3.358,
-3.902,4.421,4.957,5.497,6.012,6.530,7.125,7.821,8.561,9.295,10.065,10.961,12.019,13.197,14.449,15.737,
-16.989,18.099,18.991,19.688,20.326,21.130,22.300,23.817,25.366,26.561,27.297,27.812,28.388,29.076,29.773,30.448,
-31.153,31.865,32.459,32.872,33.188,33.523,33.922,34.389,34.929,35.501,36.006,36.420,36.875,37.519,38.278,38.847,
-39.000,38.875,38.897,39.359,40.098,40.652,40.779,40.758,41.085,41.877,42.738,43.248,43.453,43.740,44.330,45.075,
-45.740,46.297,46.872,47.535,48.249,48.941,49.527,49.926,50.129,50.249,50.424,50.682,50.968,51.265,51.617,52.037,
-52.492,52.977,53.516,54.044,54.388,54.426,54.243,54.048,53.973,53.997,54.047,54.109,54.220,54.419,54.736,55.175,
-55.690,56.179,56.573,56.933,57.410,58.088,58.879,59.618,60.246,60.835,61.448,62.034,62.544,63.063,63.741,64.582,
-65.389,65.951,66.204,66.190,65.942,65.486,64.913,64.355,63.918,63.667,63.651,63.859,64.175,64.432,64.539,64.498,
-64.323,64.014,63.609,63.184,62.789,62.435,62.153,61.993,61.938,61.898,61.834,61.812,61.891,62.030,62.153,62.259,
-62.378,62.496,62.597,62.730,62.931,63.114,63.160,63.103,63.094,63.191,63.310,63.417,63.627,64.034,64.553,64.992,
-65.218,65.191,64.919,64.485,64.062,63.784,63.658,63.671,63.910,64.411,64.929,65.046,64.614,63.987,63.711,63.976,
-64.451,64.660,64.487,64.233,64.165,64.112,63.702,62.965,62.445,62.513,62.823,62.756,62.257,61.832,61.738,61.629,
-61.172,60.566,60.187,60.097,60.250,60.734,61.219,60.528,57.669,53.505,50.561,50.712,53.474,56.946,59.873,62.143,
-63.763,64.419,64.191,63.863,64.039,64.440,64.477,64.163,63.962,63.996,63.927,63.577,63.190,62.985,62.821,62.469,
-61.962,61.474,61.047,60.615,60.177,59.794,59.458,59.112,58.740,58.353,57.919,57.402,56.859,56.394,56.032,55.706,
-55.354,54.958,54.512,54.014,53.496,53.027,52.652,52.355,52.070,51.716,51.264,50.781,50.365,50.007,49.575,49.011,
-48.438,47.991,47.618,47.184,46.737,46.446,46.290,46.015,45.504,44.975,44.662,44.475,44.173,43.748,43.343,42.818,
-41.772,40.124,38.417,37.313,36.903,36.728,36.345,35.621,34.530,33.048,31.385,30.069,29.534,29.702,30.156,30.636,
-31.133,31.575,31.706,31.435,31.047,30.899,30.997,31.060,30.906,30.512,29.755,28.375,26.363,24.192,22.455,21.320,
-20.490,19.644,18.758,17.986,17.404,16.962,16.591,16.254,15.930,15.591,15.226,14.836,14.440,14.071,13.737,13.406,
-13.063,12.785,12.663,12.655,12.597,12.417,12.226,12.103,11.913,11.489,10.921,10.496,10.324,10.212,9.950,9.572,
-9.242,9.003,8.785,8.552,8.328,8.101,7.841,7.601,7.464,7.415,7.353,7.230,7.090,6.948,6.769,6.569,
-6.424,6.343,6.235,6.068,5.924,5.844,5.728,5.495,5.240,5.078,4.948,4.723,4.449,4.267,4.151,3.933,
-3.614,3.369,3.215,2.917,2.407,2.035,2.131,2.497,2.632,2.424,2.238,2.271,2.192,1.619,.719,.038,
--.167,-.154,-.301,-.692,-1.168,-1.563,-1.815,-1.949,-2.052,-2.220,-2.446,-2.619,-2.683,-2.732,-2.895,-3.189,
--3.537,-3.903,-4.293,-4.657,-4.892,-4.974,-5.021,-5.162,-5.382,-5.547,-5.582,-5.565,-5.638,-5.852,-6.131,-6.391,
--6.630,-6.887,-7.138,-7.305,-7.370,-7.421,-7.545,-7.732,-7.916,-8.075,-8.236,-8.404,-8.561,-8.706,-8.867,-9.044,
--9.199,-9.313,-9.400,-9.465,-9.499,-9.523,-9.583,-9.681,-9.753,-9.754,-9.716,-9.692,-9.683,-9.667,-9.656,-9.670,
--9.683,-9.653,-9.591,-9.548,-9.535,-9.519,-9.497,-9.510,-9.556,-9.574,-9.530,-9.468,-9.442,-9.437,-9.405,-9.349,
--9.309,-9.298,-9.293,-9.279,-9.261,-9.238,-9.200,-9.151,-9.099,-9.037,-8.959,-8.881,-8.821,-8.765,-8.690,-8.616,
--8.575,-8.556,-8.506,-8.409,-8.303,-8.211,-8.115,-8.003,-7.900,-7.817,-7.719,-7.592,-7.483,-7.441,-7.429,-7.364,
--7.230,-7.089,-6.988,-6.901,-6.784,-6.626,-6.442,-6.248,-6.062,-5.898,-5.746,-5.577,-5.395,-5.247,-5.147,-5.046,
--4.896,-4.721,-4.585,-4.504,-4.431,-4.336,-4.234,-4.151,-4.085,-4.023,-3.967,-3.924,-3.892,-3.866,-3.843,-3.816,
--3.777,-3.736,-3.720,-3.739,-3.772,-3.791,-3.795,-3.797,-3.804,-3.815,-3.831,-3.859,-3.898,-3.947,-4.000,-4.049,
--4.092,-4.145,-4.226,-4.329,-4.423,-4.499,-4.587,-4.711,-4.852,-4.979,-5.088,-5.198,-5.317,-5.456,-5.642,-5.876,
--6.099,-6.241,-6.315,-6.415,-6.594,-6.804,-6.969,-7.072,-7.140,-7.198,-7.260,-7.345,-7.443,-7.500,-7.480,-7.426,
--7.411,-7.441,-7.455,-7.418,-7.358,-7.311,-7.289,-7.297,-7.343,-7.400,-7.422,-7.415,-7.429,-7.483,-7.525,-7.517,
--7.500,-7.524,-7.559,-7.548,-7.501,-7.482,-7.507,-7.522,-7.491,-7.442,-7.413,-7.399,-7.374,-7.330,-7.269,-7.184,
--7.074,-6.955,-6.834,-6.703,-6.563,-6.430,-6.307,-6.178,-6.042,-5.922,-5.827,-5.737,-5.635,-5.527,-5.411,-5.272,
--5.127,-5.027,-4.984,-4.926,-4.793,-4.618,-4.479,-4.380,-4.261,-4.101,-3.937,-3.789,-3.618,-3.395,-3.129,-2.830,
--2.489,-2.121,-1.770,-1.442,-1.075,-.626,-.128,.361,.838,1.337,1.866,2.411,2.988,3.623,4.304,4.998,
-5.698,6.417,7.136,7.796,8.364,8.862,9.332,9.750,9.987,9.870,9.389,8.895,9.031,10.350,12.901,16.198,
-19.612,22.846,26.069,29.594,33.335,36.581,38.472,38.829,38.415,38.228,38.623,39.312,40.091,41.145,42.567,43.954,
-44.817,45.187,45.524,46.121,46.891,47.632,48.172,48.226,47.470,45.868,43.735,41.382,38.965,36.738,35.090,34.049,
-33.015,31.397,29.417,27.953,27.556,27.945,28.476,28.808,28.954,28.968,28.832,28.566,28.232,27.833,27.299,26.561,
-25.585,24.413,23.210,22.211,21.502,20.945,20.375,19.791,19.290,18.897,18.591,18.383,18.243,18.000,17.478,16.721,
-15.918,15.165,14.429,13.710,13.046,12.352,11.516,10.667,10.099,9.754,9.056,7.511,5.339,3.260,1.721,.597,
--.395,-1.302,-2.054,-2.698,-3.313,-3.843,-4.211,-4.527,-5.008,-5.704,-6.422,-6.939,-7.191,-7.266,-7.318,-7.499,
--7.890,-8.415,-8.871,-9.083,-9.030,-8.833,-8.658,-8.632,-8.787,-9.065,-9.383,-9.724,-10.156,-10.752,-11.518,-12.400,
--13.330,-14.228,-15.007,-15.620,-16.079,-16.387,-16.442,-16.086,-15.293,-14.296,-13.450,-12.971,-12.826,-12.866,-12.989,-13.157,
--13.323,-13.428,-13.449,-13.380,-13.193,-12.904,-12.682,-12.735,-13.036,-13.280,-13.197,-12.828,-12.364,-11.842,-11.203,-10.576,
--10.216,-10.091,-9.833,-9.287,-8.885,-9.197,-10.195,-11.254,-11.885,-12.185,-12.484,-12.831,-13.034,-13.021,-12.921,-12.816,
--12.644,-12.355,-12.015,-11.694,-11.389,-11.087,-10.814,-10.560,-10.242,-9.810,-9.339,-8.944,-8.640,-8.361,-8.081,-7.852,
--7.723,-7.659,-7.576,-7.422,-7.241,-7.132,-7.159,-7.270,-7.354,-7.360,-7.332,-7.308,-7.261,-7.163,-7.069,-7.056,
--7.108,-7.136,-7.105,-7.058,-7.018,-6.946,-6.826,-6.706,-6.625,-6.544,-6.406,-6.224,-6.056,-5.914,-5.757,-5.563,
--5.344,-5.106,-4.838,-4.554,-4.287,-4.031,-3.750,-3.428,-3.092,-2.754,-2.391,-1.992,-1.594,-1.232,-.888,-.519,
--.120,.282,.682,1.096,1.519,1.923,2.291,2.648,3.024,3.412,3.788,4.142,4.484,4.816,5.125,5.415,
-5.726,6.101,6.533,6.953,7.307,7.624,7.965,8.320,8.612,8.803,8.962,9.160,9.364,9.471,9.459,9.420,
-9.453,9.574,9.747,9.938,10.117,10.241,10.309,10.384,10.532,10.747,10.971,11.181,11.381,11.550,11.647,11.690,
-11.767,11.937,12.149,12.307,12.384,12.454,12.594,12.802,12.998,13.111,13.145,13.159,13.190,13.200,13.138,13.024,
-12.939,12.933,12.962,12.964,12.936,12.932,12.980,13.053,13.109,13.122,13.092,13.041,13.006,13.003,13.010,12.986,
-12.928,12.872,13.051,13.045,13.048,13.027,12.992,12.980,12.994,12.998,12.971,12.939,12.933,12.954,12.989,13.030,
-13.077,13.119,13.144,13.160,13.182,13.205,13.218,13.228,13.268,13.360,13.504,13.682,13.880,14.088,14.291,14.465,
-14.587,14.662,14.722,14.802,14.888,14.922,14.884,14.863,14.992,15.299,15.685,16.070,16.501,17.035,17.577,17.979,
-18.300,18.791,19.559,20.365,20.905,21.187,21.470,21.883,22.299,22.610,22.897,23.222,23.418,23.276,22.854,22.388,
-21.955,21.394,20.607,19.751,19.046,18.520,18.048,17.557,17.085,16.663,16.254,15.810,15.319,14.805,14.303,13.838,
-13.398,12.948,12.491,12.048,11.578,10.967,10.173,9.318,8.567,7.954,7.420,6.964,6.651,6.444,6.190,5.797,
-5.340,4.940,4.625,4.357,4.111,3.842,3.454,2.896,2.278,1.789,1.518,1.405,1.341,1.217,.926,.418,
--.215,-.804,-1.308,-1.879,-2.673,-3.632,-4.545,-5.306,-6.061,-7.018,-8.144,-9.120,-9.636,-9.703,-9.607,-9.602,
--9.757,-10.083,-10.614,-11.268,-11.773,-11.918,-11.760,-11.414,-10.781,-9.805,-8.976,-9.128,-10.519,-12.398,-13.754,-14.323,
--14.585,-14.983,-15.521,-16.074,-16.673,-17.354,-18.025,-18.605,-19.092,-19.401,-19.398,-19.201,-19.199,-19.579,-20.084,-20.435,
--20.721,-21.095,-21.368,-21.381,-21.576,-22.570,-24.077,-24.859,-24.131,-22.606,-21.723,-22.078,-23.050,-23.805,-24.156,-24.374,
--24.640,-24.953,-25.309,-25.678,-25.894,-25.817,-25.556,-25.368,-25.338,-25.280,-24.990,-24.472,-23.867,-23.248,-22.559,-21.747,
--20.852,-19.893,-18.733,-17.251,-15.731,-14.865,-15.083,-15.897,-16.270,-15.798,-15.274,-15.807,-17.518,-19.448,-20.697,-21.279,
--21.740,-22.320,-22.805,-23.021,-23.099,-23.215,-23.352,-23.433,-23.503,-23.632,-23.753,-23.739,-23.607,-23.506,-23.512,-23.555,
--23.560,-23.555,-23.591,-23.657,-23.743,-23.911,-24.203,-24.536,-24.816,-25.122,-25.620,-26.277,-26.877,-27.393,-28.088,-28.972,
--29.344,-28.341,-26.075,-23.873,-23.112,-23.961,-25.488,-26.806,-27.733,-28.444,-28.974,-29.301,-29.602,-30.088,-30.682,-31.126,
--31.353,-31.535,-31.790,-32.042,-32.225,-32.411,-32.671,-32.935,-33.119,-33.271,-33.500,-33.821,-34.189,-34.618,-35.175,-35.860,
--36.579,-37.242,-37.827,-38.365,-38.907,-39.504,-40.160,-40.826,-41.459,-42.086,-42.747,-43.424,-44.080,-44.737,-45.446,-46.192,
--46.913,-47.623,-48.387,-49.190,-49.904,-50.455,-50.912,-51.361,-51.784,-52.139,-52.477,-52.875,-53.308,-53.694,-54.035,-54.410,
--54.832,-55.220,-55.536,-55.826,-56.122,-56.389,-56.611,-56.833,-57.065,-57.253,-57.383,-57.539,-57.781,-58.043,-58.246,-58.432,
--58.682,-58.960,-59.160,-59.292,-59.466,-59.705,-59.896,-59.977,-60.045,-60.205,-60.420,-60.593,-60.737,-60.940,-61.221,-61.512,
--61.792,-62.124,-62.529,-62.889,-63.024,-62.837,-62.370,-61.749,-61.093,-60.448,-59.786,-59.081,-58.416,-58.000,-58.009,-58.358,
--58.640,-58.427,-57.743,-57.185,-57.418,-58.491,-59.755,-60.488,-60.478,-59.951,-59.165,-58.336,-57.794,-57.830,-58.261,-58.436,
--57.900,-56.898,-56.046,-55.625,-55.383,-54.955,-54.235,-53.393,-52.705,-52.406,-52.463,-52.458,-51.858,-50.545,-48.976,-47.775,
--47.223,-47.147,-47.116,-46.665,-45.565,-44.065,-42.791,-42.198,-42.157,-42.226,-42.188,-42.118,-41.995,-41.592,-40.845,-40.049,
--39.508,-39.148,-38.681,-38.016,-37.303,-36.606,-35.787,-34.754,-33.647,-32.692,-31.962,-31.376,-30.862,-30.424,-30.083,-29.820,
--29.608,-29.432,-29.253,-28.963,-28.426,-27.614,-26.650,-25.666,-24.644,-23.487,-22.273,-21.290,-20.685,-20.195,-19.426,-18.365,
--17.390,-16.718,-16.074,-15.080,-13.818,-12.791,-12.356,-12.386,-12.481,-12.364,-12.004,-11.519,-11.054,-10.651,-10.189,-9.479,
--8.492,-7.408,-6.388,-5.374,-4.226,-2.995,-1.941,-1.256,-.879,-.624,-.391,-.193,-.007,.289,.810,1.515,
-2.235,2.839,3.343,3.849,4.392,4.924,5.428,5.980,6.658,7.423,8.173,8.888,9.674,10.662,11.883,13.253,
-14.639,15.933,17.100,18.159,19.142,20.092,21.122,22.375,23.842,25.254,26.292,26.930,27.458,28.131,28.902,29.593,
-30.191,30.826,31.518,32.114,32.496,32.739,33.004,33.394,33.934,34.601,35.291,35.845,36.227,36.623,37.249,38.052,
-38.702,38.908,38.718,38.481,38.521,38.871,39.308,39.650,39.965,40.459,41.154,41.808,42.197,42.396,42.678,43.174,
-43.770,44.337,44.905,45.559,46.278,46.976,47.610,48.171,48.606,48.882,49.085,49.356,49.719,50.079,50.385,50.713,
-51.152,51.693,52.277,52.868,53.405,53.760,53.827,53.664,53.456,53.345,53.332,53.362,53.411,53.493,53.637,53.896,
-54.323,54.874,55.391,55.763,56.089,56.608,57.401,58.258,58.912,59.357,59.842,60.527,61.294,61.944,62.488,63.105,
-63.865,64.620,65.200,65.596,65.874,66.001,65.845,65.356,64.645,63.930,63.422,63.244,63.378,63.683,63.993,64.223,
-64.363,64.404,64.325,64.135,63.860,63.504,63.087,62.704,62.457,62.321,62.158,61.913,61.683,61.575,61.574,61.624,
-61.729,61.906,62.100,62.254,62.408,62.604,62.770,62.800,62.745,62.755,62.854,62.920,62.939,63.094,63.513,64.053,
-64.432,64.514,64.351,64.045,63.692,63.413,63.300,63.353,63.559,63.967,64.545,65.000,64.947,64.360,63.716,63.548,
-63.910,64.356,64.447,64.173,63.853,63.668,63.410,62.799,61.977,61.475,61.571,61.888,61.849,61.445,61.190,61.346,
-61.544,61.340,60.793,60.259,59.928,59.847,60.065,60.271,59.555,57.293,54.354,52.718,53.511,55.867,58.144,59.754,
-61.210,62.747,63.826,64.093,64.042,64.298,64.758,64.901,64.645,64.383,64.314,64.227,63.947,63.603,63.341,63.076,
-62.689,62.239,61.832,61.435,60.973,60.497,60.112,59.812,59.505,59.152,58.769,58.344,57.860,57.373,56.961,56.612,
-56.240,55.808,55.354,54.914,54.482,54.056,53.658,53.292,52.940,52.580,52.191,51.742,51.237,50.747,50.322,49.905,
-49.405,48.845,48.349,47.969,47.634,47.297,46.995,46.721,46.356,45.851,45.353,45.022,44.784,44.451,44.043,43.757,
-43.563,43.074,41.989,40.549,39.357,38.763,38.573,38.313,37.613,36.315,34.427,32.160,29.933,28.228,27.364,27.410,
-28.159,29.140,29.801,29.923,29.829,30.020,30.545,30.935,30.797,30.265,29.663,28.929,27.684,25.867,23.979,22.567,
-21.646,20.827,19.870,18.891,18.091,17.497,17.018,16.599,16.223,15.864,15.495,15.113,14.710,14.274,13.844,13.497,
-13.251,13.045,12.847,12.697,12.599,12.463,12.240,12.006,11.821,11.583,11.166,10.660,10.301,10.152,10.023,9.751,
-9.397,9.102,8.884,8.675,8.471,8.294,8.098,7.836,7.577,7.430,7.375,7.296,7.159,7.037,6.945,6.812,
-6.619,6.442,6.320,6.193,6.046,5.960,5.946,5.867,5.633,5.362,5.200,5.091,4.886,4.612,4.417,4.286,
-4.052,3.697,3.390,3.178,2.875,2.413,2.058,2.049,2.187,2.082,1.745,1.585,1.796,2.036,1.885,1.395,
-.981,.869,.872,.669,.150,-.542,-1.166,-1.550,-1.699,-1.775,-1.929,-2.143,-2.297,-2.371,-2.482,-2.721,
--3.043,-3.377,-3.732,-4.131,-4.497,-4.718,-4.801,-4.888,-5.084,-5.333,-5.499,-5.535,-5.543,-5.660,-5.908,-6.190,
--6.424,-6.645,-6.931,-7.259,-7.507,-7.618,-7.688,-7.848,-8.100,-8.345,-8.514,-8.628,-8.727,-8.828,-8.954,-9.128,
--9.328,-9.488,-9.573,-9.620,-9.673,-9.727,-9.764,-9.792,-9.822,-9.839,-9.827,-9.799,-9.772,-9.745,-9.721,-9.723,
--9.750,-9.756,-9.701,-9.619,-9.564,-9.543,-9.522,-9.511,-9.543,-9.605,-9.623,-9.565,-9.488,-9.454,-9.457,-9.451,
--9.417,-9.369,-9.320,-9.277,-9.245,-9.215,-9.162,-9.090,-9.035,-9.009,-8.977,-8.910,-8.836,-8.789,-8.749,-8.679,
--8.592,-8.529,-8.479,-8.399,-8.287,-8.191,-8.124,-8.042,-7.925,-7.806,-7.705,-7.586,-7.433,-7.308,-7.261,-7.247,
--7.179,-7.053,-6.937,-6.861,-6.781,-6.664,-6.523,-6.374,-6.203,-6.013,-5.827,-5.650,-5.454,-5.238,-5.053,-4.928,
--4.822,-4.683,-4.525,-4.401,-4.323,-4.251,-4.158,-4.057,-3.968,-3.896,-3.846,-3.815,-3.787,-3.745,-3.700,-3.675,
--3.662,-3.632,-3.586,-3.562,-3.579,-3.605,-3.610,-3.604,-3.608,-3.617,-3.616,-3.615,-3.635,-3.670,-3.708,-3.754,
--3.822,-3.904,-3.979,-4.049,-4.130,-4.224,-4.322,-4.431,-4.564,-4.714,-4.854,-4.976,-5.093,-5.221,-5.372,-5.556,
--5.769,-5.961,-6.077,-6.127,-6.194,-6.336,-6.524,-6.688,-6.797,-6.872,-6.947,-7.047,-7.179,-7.306,-7.358,-7.305,
--7.207,-7.156,-7.173,-7.202,-7.198,-7.163,-7.113,-7.060,-7.033,-7.070,-7.153,-7.214,-7.214,-7.193,-7.201,-7.230,
--7.244,-7.245,-7.255,-7.273,-7.280,-7.285,-7.310,-7.340,-7.339,-7.302,-7.265,-7.248,-7.234,-7.209,-7.172,-7.125,
--7.055,-6.965,-6.871,-6.770,-6.643,-6.492,-6.346,-6.218,-6.096,-5.969,-5.851,-5.743,-5.626,-5.500,-5.392,-5.303,
--5.197,-5.066,-4.953,-4.887,-4.818,-4.687,-4.522,-4.400,-4.330,-4.232,-4.053,-3.832,-3.633,-3.459,-3.267,-3.019,
--2.703,-2.329,-1.939,-1.576,-1.236,-.865,-.437,.015,.456,.907,1.414,1.975,2.554,3.146,3.783,4.481,
-5.210,5.924,6.613,7.301,8.000,8.681,9.289,9.793,10.221,10.579,10.753,10.566,10.021,9.529,9.802,11.395,
-14.239,17.622,20.771,23.567,26.622,30.455,34.612,37.832,39.237,39.208,38.925,39.217,40.101,41.277,42.593,43.925,
-44.972,45.508,45.670,45.778,45.966,46.182,46.416,46.689,46.905,46.929,46.735,46.228,45.044,42.899,40.164,37.656,
-35.708,33.809,31.442,28.971,27.301,26.836,27.146,27.608,27.973,28.232,28.329,28.205,27.938,27.624,27.239,26.721,
-26.075,25.293,24.320,23.211,22.202,21.484,20.987,20.515,20.000,19.503,19.071,18.726,18.536,18.489,18.377,17.961,
-17.239,16.405,15.566,14.701,13.843,13.083,12.367,11.530,10.598,9.787,9.079,8.062,6.427,4.464,2.779,1.612,
-.705,-.206,-1.077,-1.770,-2.321,-2.823,-3.256,-3.597,-3.968,-4.522,-5.222,-5.878,-6.336,-6.558,-6.579,-6.522,
--6.605,-6.983,-7.558,-8.048,-8.270,-8.267,-8.194,-8.161,-8.242,-8.490,-8.879,-9.309,-9.748,-10.293,-11.033,-11.883,
--12.660,-13.301,-13.902,-14.548,-15.191,-15.728,-16.095,-16.226,-15.992,-15.314,-14.346,-13.451,-12.930,-12.804,-12.891,-13.033,
--13.202,-13.392,-13.537,-13.550,-13.401,-13.125,-12.802,-12.545,-12.456,-12.518,-12.591,-12.538,-12.324,-11.949,-11.379,-10.683,
--10.137,-9.976,-10.034,-9.852,-9.302,-8.893,-9.244,-10.341,-11.546,-12.329,-12.715,-12.997,-13.249,-13.339,-13.221,-13.010,
--12.782,-12.508,-12.181,-11.873,-11.612,-11.334,-11.003,-10.665,-10.357,-10.023,-9.616,-9.193,-8.840,-8.546,-8.238,-7.923,
--7.695,-7.607,-7.582,-7.497,-7.321,-7.131,-7.026,-7.042,-7.131,-7.224,-7.287,-7.313,-7.299,-7.229,-7.131,-7.070,
--7.085,-7.136,-7.155,-7.130,-7.094,-7.053,-6.976,-6.860,-6.747,-6.658,-6.557,-6.408,-6.231,-6.064,-5.905,-5.732,
--5.544,-5.354,-5.143,-4.884,-4.587,-4.295,-4.022,-3.741,-3.430,-3.102,-2.764,-2.403,-2.014,-1.629,-1.274,-.937,
--.581,-.197,.197,.590,.986,1.390,1.792,2.183,2.557,2.917,3.270,3.630,4.005,4.385,4.743,5.055,
-5.333,5.628,5.992,6.419,6.836,7.189,7.503,7.844,8.216,8.550,8.806,9.028,9.263,9.463,9.540,9.500,
-9.455,9.498,9.633,9.813,10.012,10.203,10.346,10.440,10.541,10.705,10.915,11.125,11.322,11.511,11.653,11.701,
-11.690,11.733,11.886,12.078,12.206,12.264,12.340,12.498,12.710,12.897,13.014,13.079,13.125,13.148,13.115,13.031,
-12.970,13.000,13.093,13.141,13.089,13.007,12.996,13.068,13.154,13.199,13.210,13.205,13.186,13.160,13.149,13.151,
-13.135,13.090,13.051,13.232,13.232,13.242,13.228,13.199,13.200,13.233,13.248,13.213,13.158,13.134,13.153,13.193,
-13.236,13.280,13.321,13.357,13.389,13.412,13.411,13.394,13.401,13.466,13.581,13.709,13.844,14.012,14.211,14.395,
-14.518,14.580,14.619,14.676,14.763,14.855,14.903,14.903,14.955,15.179,15.568,15.975,16.308,16.660,17.151,17.714,
-18.198,18.650,19.288,20.130,20.850,21.189,21.364,21.826,22.652,23.437,23.810,23.834,23.769,23.655,23.347,22.839,
-22.303,21.807,21.225,20.469,19.661,18.982,18.466,18.020,17.581,17.153,16.746,16.346,15.940,15.508,15.030,14.527,
-14.055,13.635,13.224,12.785,12.335,11.860,11.276,10.540,9.769,9.124,8.620,8.146,7.658,7.231,6.897,6.552,
-6.106,5.622,5.234,4.981,4.787,4.563,4.273,3.900,3.449,2.960,2.506,2.142,1.888,1.720,1.552,1.271,
-.832,.315,-.182,-.671,-1.270,-2.056,-2.981,-3.946,-4.922,-5.970,-7.126,-8.260,-9.096,-9.435,-9.368,-9.208,
--9.200,-9.381,-9.723,-10.228,-10.809,-11.222,-11.323,-11.255,-11.176,-10.898,-10.163,-9.281,-9.084,-10.032,-11.626,-12.966,
--13.687,-14.061,-14.390,-14.717,-15.078,-15.630,-16.398,-17.180,-17.814,-18.304,-18.618,-18.654,-18.523,-18.584,-19.000,-19.516,
--19.881,-20.206,-20.605,-20.832,-20.743,-20.901,-22.029,-23.788,-24.771,-24.075,-22.445,-21.425,-21.682,-22.614,-23.395,-23.816,
--24.065,-24.263,-24.461,-24.797,-25.313,-25.785,-25.945,-25.805,-25.565,-25.290,-24.851,-24.176,-23.380,-22.612,-21.904,-21.227,
--20.605,-20.068,-19.499,-18.603,-17.192,-15.565,-14.478,-14.482,-15.230,-15.718,-15.404,-14.910,-15.331,-16.928,-18.841,-20.126,
--20.711,-21.148,-21.735,-22.270,-22.533,-22.623,-22.721,-22.815,-22.830,-22.847,-22.979,-23.136,-23.123,-22.932,-22.762,-22.738,
--22.777,-22.773,-22.766,-22.830,-22.928,-23.014,-23.178,-23.522,-23.954,-24.287,-24.542,-24.941,-25.558,-26.225,-26.868,-27.642,
--28.446,-28.558,-27.258,-24.882,-22.841,-22.335,-23.273,-24.677,-25.857,-26.813,-27.670,-28.291,-28.600,-28.857,-29.331,-29.903,
--30.274,-30.420,-30.582,-30.865,-31.136,-31.308,-31.483,-31.745,-32.005,-32.169,-32.307,-32.539,-32.865,-33.219,-33.619,-34.138,
--34.772,-35.438,-36.085,-36.722,-37.353,-37.961,-38.553,-39.150,-39.756,-40.375,-41.039,-41.758,-42.473,-43.122,-43.743,-44.420,
--45.155,-45.886,-46.614,-47.404,-48.244,-49.011,-49.617,-50.111,-50.559,-50.951,-51.269,-51.584,-51.966,-52.371,-52.712,-53.006,
--53.343,-53.731,-54.088,-54.381,-54.660,-54.949,-55.212,-55.445,-55.695,-55.963,-56.178,-56.329,-56.511,-56.785,-57.072,-57.284,
--57.468,-57.714,-57.995,-58.215,-58.384,-58.601,-58.866,-59.063,-59.140,-59.206,-59.378,-59.636,-59.896,-60.144,-60.411,-60.687,
--60.941,-61.197,-61.503,-61.835,-62.094,-62.190,-62.086,-61.753,-61.184,-60.444,-59.650,-58.878,-58.135,-57.467,-57.045,-57.050,
--57.414,-57.740,-57.602,-57.030,-56.624,-57.033,-58.268,-59.627,-60.338,-60.190,-59.489,-58.613,-57.829,-57.396,-57.485,-57.870,
--57.973,-57.427,-56.485,-55.711,-55.345,-55.139,-54.735,-54.034,-53.225,-52.615,-52.422,-52.547,-52.512,-51.794,-50.352,-48.738,
--47.633,-47.299,-47.447,-47.502,-46.978,-45.800,-44.395,-43.374,-42.985,-42.945,-42.870,-42.702,-42.565,-42.367,-41.861,-41.070,
--40.358,-39.959,-39.669,-39.157,-38.407,-37.658,-37.018,-36.349,-35.529,-34.624,-33.777,-33.046,-32.415,-31.881,-31.451,-31.116,
--30.854,-30.652,-30.474,-30.245,-29.861,-29.254,-28.439,-27.514,-26.565,-25.575,-24.485,-23.377,-22.482,-21.900,-21.391,-20.625,
--19.603,-18.640,-17.907,-17.192,-16.238,-15.152,-14.299,-13.862,-13.701,-13.590,-13.401,-13.077,-12.610,-12.098,-11.666,-11.240,
--10.558,-9.492,-8.262,-7.181,-6.282,-5.348,-4.283,-3.263,-2.499,-1.978,-1.558,-1.197,-.978,-.901,-.771,-.361,
-.349,1.145,1.809,2.324,2.831,3.407,3.983,4.488,4.999,5.661,6.477,7.281,7.952,8.596,9.465,10.703,
-12.198,13.698,15.036,16.249,17.473,18.757,20.040,21.284,22.559,23.891,25.116,26.014,26.600,27.145,27.849,28.618,
-29.259,29.780,30.351,31.011,31.594,31.960,32.176,32.431,32.858,33.491,34.280,35.074,35.686,36.073,36.423,36.951,
-37.630,38.192,38.396,38.243,37.939,37.720,37.728,37.980,38.415,38.967,39.587,40.194,40.669,40.969,41.213,41.579,
-42.095,42.641,43.141,43.658,44.269,44.935,45.581,46.205,46.820,47.355,47.728,47.997,48.309,48.705,49.088,49.406,
-49.756,50.250,50.868,51.511,52.128,52.690,53.105,53.267,53.189,53.018,52.880,52.795,52.741,52.734,52.798,52.933,
-53.160,53.533,54.038,54.530,54.888,55.220,55.786,56.648,57.527,58.108,58.439,58.884,59.659,60.579,61.341,61.915,
-62.525,63.275,63.993,64.487,64.800,65.116,65.473,65.668,65.464,64.815,63.929,63.152,62.772,62.856,63.234,63.654,
-63.971,64.177,64.312,64.397,64.422,64.347,64.112,63.728,63.332,63.072,62.936,62.764,62.456,62.081,61.743,61.469,
-61.276,61.242,61.406,61.665,61.877,62.028,62.178,62.308,62.352,62.358,62.447,62.605,62.680,62.646,62.711,63.048,
-63.530,63.859,63.889,63.714,63.491,63.317,63.229,63.229,63.294,63.460,63.831,64.386,64.814,64.738,64.167,63.577,
-63.436,63.735,64.067,64.102,63.850,63.499,63.119,62.607,61.921,61.283,61.034,61.231,61.510,61.505,61.340,61.472,
-62.039,62.599,62.639,62.122,61.364,60.613,59.976,59.511,59.016,57.940,56.080,54.363,54.269,56.155,58.626,60.051,
-60.360,60.772,62.000,63.434,64.213,64.371,64.530,64.908,65.174,65.098,64.845,64.629,64.437,64.204,63.963,63.725,
-63.412,62.994,62.575,62.216,61.835,61.360,60.879,60.513,60.234,59.920,59.523,59.094,58.678,58.283,57.919,57.578,
-57.193,56.709,56.181,55.713,55.331,54.976,54.603,54.218,53.810,53.350,52.862,52.409,51.996,51.565,51.102,50.660,
-50.245,49.781,49.245,48.757,48.433,48.215,47.940,47.544,47.093,46.645,46.207,45.815,45.527,45.288,44.950,44.495,
-44.112,43.926,43.726,43.144,42.139,41.134,40.589,40.489,40.341,39.623,38.174,36.148,33.726,31.003,28.217,25.974,
-25.030,25.635,27.120,28.355,28.751,28.706,28.928,29.477,29.732,29.271,28.399,27.636,26.974,25.987,24.576,23.200,
-22.275,21.662,20.937,19.974,19.009,18.253,17.669,17.151,16.677,16.256,15.851,15.438,15.039,14.643,14.198,13.730,
-13.368,13.181,13.075,12.920,12.712,12.505,12.283,12.005,11.708,11.445,11.164,10.786,10.377,10.097,9.972,9.845,
-9.609,9.328,9.095,8.888,8.664,8.463,8.318,8.154,7.894,7.611,7.427,7.329,7.219,7.094,7.024,6.980,
-6.839,6.589,6.369,6.259,6.182,6.075,5.994,5.969,5.895,5.698,5.484,5.374,5.282,5.053,4.730,4.489,
-4.337,4.104,3.751,3.432,3.212,2.939,2.529,2.170,2.034,1.957,1.668,1.233,1.021,1.195,1.504,1.640,
-1.619,1.648,1.777,1.821,1.576,.999,.214,-.556,-1.104,-1.391,-1.564,-1.778,-2.021,-2.201,-2.336,-2.537,
--2.831,-3.121,-3.353,-3.597,-3.924,-4.277,-4.551,-4.744,-4.931,-5.140,-5.308,-5.377,-5.381,-5.428,-5.597,-5.865,
--6.135,-6.349,-6.565,-6.879,-7.269,-7.590,-7.757,-7.868,-8.077,-8.394,-8.692,-8.876,-8.971,-9.049,-9.150,-9.288,
--9.468,-9.648,-9.753,-9.763,-9.752,-9.801,-9.899,-9.975,-9.990,-9.968,-9.948,-9.943,-9.940,-9.919,-9.874,-9.833,
--9.832,-9.861,-9.860,-9.790,-9.691,-9.617,-9.573,-9.535,-9.516,-9.551,-9.617,-9.639,-9.588,-9.512,-9.474,-9.478,
--9.487,-9.470,-9.417,-9.341,-9.275,-9.243,-9.216,-9.143,-9.036,-8.958,-8.937,-8.916,-8.848,-8.761,-8.710,-8.677,
--8.615,-8.526,-8.451,-8.385,-8.287,-8.166,-8.073,-8.015,-7.939,-7.822,-7.701,-7.596,-7.469,-7.306,-7.165,-7.095,
--7.052,-6.966,-6.842,-6.740,-6.665,-6.571,-6.446,-6.326,-6.218,-6.086,-5.914,-5.733,-5.558,-5.360,-5.134,-4.930,
--4.788,-4.677,-4.553,-4.419,-4.306,-4.214,-4.120,-4.019,-3.923,-3.831,-3.744,-3.685,-3.664,-3.649,-3.598,-3.530,
--3.492,-3.487,-3.473,-3.440,-3.425,-3.442,-3.455,-3.439,-3.422,-3.437,-3.461,-3.463,-3.456,-3.470,-3.499,-3.520,
--3.546,-3.611,-3.706,-3.795,-3.864,-3.941,-4.036,-4.130,-4.218,-4.331,-4.488,-4.669,-4.844,-5.004,-5.157,-5.303,
--5.451,-5.612,-5.774,-5.896,-5.961,-6.013,-6.110,-6.263,-6.429,-6.563,-6.655,-6.731,-6.828,-6.961,-7.090,-7.140,
--7.081,-6.970,-6.898,-6.895,-6.925,-6.953,-6.965,-6.948,-6.899,-6.857,-6.882,-6.974,-7.054,-7.058,-7.008,-6.970,
--6.972,-6.991,-7.002,-7.004,-7.010,-7.034,-7.088,-7.151,-7.183,-7.165,-7.131,-7.116,-7.112,-7.084,-7.039,-7.009,
--6.995,-6.961,-6.891,-6.806,-6.714,-6.596,-6.446,-6.288,-6.144,-6.006,-5.870,-5.746,-5.637,-5.522,-5.394,-5.280,
--5.195,-5.108,-4.993,-4.871,-4.773,-4.679,-4.550,-4.405,-4.304,-4.249,-4.163,-3.985,-3.740,-3.498,-3.294,-3.102,
--2.876,-2.585,-2.231,-1.846,-1.463,-1.077,-.658,-.210,.221,.615,1.023,1.513,2.092,2.702,3.306,3.931,
-4.626,5.382,6.128,6.815,7.473,8.182,8.949,9.663,10.206,10.590,10.938,11.287,11.457,11.204,10.570,10.092,
-10.547,12.355,15.181,18.245,21.145,24.261,28.135,32.496,36.189,38.242,38.823,38.972,39.553,40.711,42.164,43.623,
-44.834,45.571,45.822,45.842,45.882,45.974,46.074,46.215,46.394,46.519,46.636,46.964,47.398,47.204,45.653,42.923,
-39.933,37.250,34.635,31.820,29.252,27.631,27.019,26.872,26.813,26.911,27.217,27.473,27.437,27.182,26.896,26.605,
-26.248,25.828,25.326,24.638,23.750,22.855,22.134,21.532,20.909,20.289,19.793,19.434,19.146,18.947,18.862,18.738,
-18.344,17.654,16.838,15.999,15.100,14.159,13.284,12.459,11.526,10.453,9.400,8.404,7.220,5.690,4.078,2.792,
-1.877,1.041,.127,-.712,-1.320,-1.764,-2.178,-2.591,-3.014,-3.535,-4.181,-4.819,-5.291,-5.575,-5.707,-5.689,
--5.587,-5.629,-6.007,-6.615,-7.150,-7.442,-7.569,-7.665,-7.793,-8.020,-8.430,-8.986,-9.522,-9.977,-10.521,-11.309,
--12.202,-12.897,-13.320,-13.711,-14.282,-14.947,-15.453,-15.682,-15.676,-15.444,-14.912,-14.113,-13.313,-12.823,-12.723,-12.825,
--12.929,-13.018,-13.181,-13.412,-13.561,-13.488,-13.191,-12.788,-12.397,-12.068,-11.803,-11.598,-11.454,-11.327,-11.101,-10.691,
--10.220,-9.991,-10.151,-10.394,-10.198,-9.472,-8.816,-8.968,-10.033,-11.418,-12.483,-13.079,-13.407,-13.608,-13.649,-13.498,
--13.208,-12.839,-12.426,-12.042,-11.760,-11.545,-11.273,-10.897,-10.500,-10.165,-9.857,-9.513,-9.151,-8.828,-8.536,-8.228,
--7.934,-7.746,-7.676,-7.622,-7.483,-7.281,-7.109,-7.019,-6.997,-7.019,-7.082,-7.172,-7.240,-7.240,-7.182,-7.130,
--7.130,-7.170,-7.201,-7.202,-7.193,-7.189,-7.165,-7.095,-6.997,-6.907,-6.828,-6.724,-6.576,-6.403,-6.219,-6.013,
--5.785,-5.570,-5.389,-5.208,-4.975,-4.685,-4.380,-4.087,-3.795,-3.485,-3.156,-2.816,-2.461,-2.092,-1.725,-1.374,
--1.032,-.681,-.310,.075,.459,.835,1.211,1.606,2.019,2.423,2.787,3.124,3.480,3.879,4.296,4.685,
-5.021,5.318,5.620,5.967,6.360,6.747,7.078,7.369,7.686,8.058,8.439,8.775,9.065,9.318,9.491,9.538,
-9.495,9.477,9.556,9.714,9.899,10.088,10.271,10.419,10.531,10.647,10.807,10.995,11.175,11.342,11.499,11.621,
-11.681,11.715,11.792,11.924,12.046,12.120,12.186,12.308,12.483,12.653,12.777,12.873,12.970,13.068,13.126,13.113,
-13.063,13.071,13.189,13.345,13.398,13.302,13.174,13.152,13.242,13.340,13.373,13.364,13.350,13.328,13.291,13.265,
-13.268,13.274,13.256,13.232,13.421,13.414,13.423,13.420,13.408,13.417,13.447,13.455,13.418,13.368,13.346,13.360,
-13.391,13.432,13.481,13.529,13.570,13.605,13.631,13.631,13.610,13.615,13.679,13.776,13.861,13.948,14.081,14.256,
-14.402,14.475,14.508,14.557,14.638,14.733,14.826,14.908,14.987,15.130,15.417,15.820,16.191,16.457,16.754,17.260,
-17.937,18.609,19.261,20.056,20.970,21.655,21.877,21.940,22.393,23.334,24.248,24.611,24.410,23.977,23.516,23.007,
-22.453,21.946,21.496,20.973,20.305,19.592,18.973,18.473,18.037,17.624,17.222,16.818,16.414,16.030,15.650,15.221,
-14.740,14.273,13.864,13.468,13.039,12.595,12.135,11.576,10.873,10.146,9.573,9.163,8.759,8.268,7.768,7.339,
-6.925,6.442,5.941,5.557,5.328,5.156,4.946,4.698,4.455,4.204,3.871,3.410,2.882,2.416,2.085,1.825,
-1.515,1.113,.684,.278,-.146,-.665,-1.318,-2.120,-3.096,-4.247,-5.510,-6.793,-7.980,-8.891,-9.338,-9.310,
--9.057,-8.900,-8.983,-9.270,-9.677,-10.104,-10.431,-10.639,-10.872,-11.183,-11.281,-10.838,-10.077,-9.734,-10.265,-11.325,
--12.240,-12.771,-13.132,-13.468,-13.711,-13.929,-14.395,-15.212,-16.147,-16.934,-17.502,-17.833,-17.881,-17.782,-17.880,-18.328,
--18.889,-19.317,-19.673,-20.024,-20.155,-20.019,-20.237,-21.475,-23.311,-24.336,-23.716,-22.204,-21.241,-21.399,-22.138,-22.809,
--23.297,-23.711,-24.012,-24.189,-24.457,-24.990,-25.627,-26.045,-26.089,-25.775,-25.115,-24.137,-23.013,-21.977,-21.124,-20.403,
--19.795,-19.356,-19.070,-18.734,-18.044,-16.830,-15.298,-14.063,-13.726,-14.256,-14.906,-15.002,-14.761,-15.062,-16.352,-18.090,
--19.425,-20.133,-20.613,-21.171,-21.683,-21.968,-22.103,-22.231,-22.314,-22.281,-22.259,-22.397,-22.578,-22.536,-22.247,-21.989,
--21.960,-22.057,-22.102,-22.114,-22.199,-22.328,-22.431,-22.599,-22.978,-23.482,-23.855,-24.053,-24.336,-24.900,-25.641,-26.400,
--27.158,-27.730,-27.511,-26.032,-23.788,-22.075,-21.786,-22.633,-23.752,-24.743,-25.754,-26.800,-27.559,-27.889,-28.104,-28.518,
--29.020,-29.336,-29.488,-29.707,-30.032,-30.292,-30.445,-30.642,-30.944,-31.208,-31.337,-31.447,-31.671,-31.981,-32.290,-32.635,
--33.110,-33.701,-34.325,-34.966,-35.661,-36.380,-37.037,-37.604,-38.139,-38.699,-39.313,-40.002,-40.756,-41.496,-42.148,-42.750,
--43.409,-44.152,-44.911,-45.662,-46.454,-47.294,-48.083,-48.732,-49.252,-49.690,-50.055,-50.372,-50.716,-51.118,-51.498,-51.778,
--52.013,-52.315,-52.680,-53.008,-53.263,-53.509,-53.781,-54.045,-54.290,-54.558,-54.847,-55.092,-55.287,-55.511,-55.800,-56.075,
--56.278,-56.475,-56.746,-57.045,-57.279,-57.470,-57.712,-57.994,-58.202,-58.300,-58.399,-58.608,-58.918,-59.262,-59.601,-59.910,
--60.157,-60.363,-60.606,-60.906,-61.165,-61.293,-61.320,-61.296,-61.151,-60.743,-60.059,-59.252,-58.473,-57.752,-57.092,-56.615,
--56.494,-56.717,-56.969,-56.874,-56.433,-56.171,-56.694,-58.012,-59.403,-60.029,-59.656,-58.711,-57.770,-57.158,-56.971,-57.165,
--57.486,-57.512,-57.004,-56.173,-55.467,-55.105,-54.910,-54.564,-53.935,-53.178,-52.621,-52.495,-52.650,-52.537,-51.660,-50.111,
--48.583,-47.771,-47.786,-48.121,-48.092,-47.332,-46.019,-44.735,-43.988,-43.787,-43.738,-43.547,-43.288,-43.103,-42.844,-42.272,
--41.479,-40.835,-40.488,-40.169,-39.592,-38.820,-38.108,-37.524,-36.924,-36.215,-35.462,-34.746,-34.075,-33.448,-32.911,-32.499,
--32.191,-31.938,-31.695,-31.404,-31.018,-30.520,-29.912,-29.192,-28.367,-27.483,-26.571,-25.619,-24.649,-23.775,-23.076,-22.439,
--21.674,-20.774,-19.912,-19.161,-18.374,-17.441,-16.499,-15.767,-15.270,-14.889,-14.576,-14.337,-14.067,-13.612,-13.021,-12.501,
--12.069,-11.430,-10.365,-9.086,-8.020,-7.311,-6.724,-6.011,-5.196,-4.443,-3.797,-3.195,-2.641,-2.231,-1.988,-1.755,
--1.318,-.626,.149,.803,1.308,1.811,2.405,3.013,3.531,4.033,4.707,5.581,6.447,7.114,7.692,8.511,
-9.770,11.327,12.858,14.191,15.436,16.805,18.345,19.903,21.324,22.604,23.794,24.841,25.630,26.195,26.746,27.425,
-28.139,28.725,29.187,29.672,30.233,30.759,31.152,31.466,31.843,32.377,33.091,33.933,34.763,35.414,35.848,36.201,
-36.615,37.063,37.399,37.531,37.472,37.267,36.987,36.780,36.834,37.228,37.858,38.530,39.084,39.467,39.737,40.044,
-40.509,41.100,41.671,42.135,42.548,43.003,43.523,44.099,44.757,45.482,46.145,46.623,46.959,47.306,47.716,48.105,
-48.441,48.836,49.394,50.064,50.731,51.361,51.960,52.443,52.675,52.645,52.491,52.342,52.218,52.116,52.086,52.174,
-52.347,52.566,52.865,53.282,53.736,54.120,54.493,55.065,55.892,56.724,57.283,57.644,58.162,59.017,59.974,60.714,
-61.251,61.875,62.707,63.508,63.994,64.205,64.428,64.826,65.219,65.260,64.744,63.799,62.830,62.272,62.313,62.786,
-63.347,63.753,63.985,64.141,64.295,64.439,64.493,64.369,64.072,63.744,63.549,63.494,63.429,63.227,62.887,62.458,
-61.965,61.491,61.208,61.216,61.397,61.547,61.610,61.671,61.770,61.857,61.938,62.089,62.294,62.411,62.391,62.410,
-62.658,63.067,63.373,63.415,63.263,63.095,63.030,63.076,63.161,63.213,63.277,63.503,63.914,64.248,64.172,63.696,
-63.210,63.076,63.275,63.527,63.614,63.480,63.116,62.512,61.765,61.108,60.776,60.835,61.119,61.373,61.502,61.704,
-62.237,63.029,63.625,63.616,63.012,62.095,61.072,60.027,59.022,57.985,56.662,55.129,54.301,55.324,58.121,60.977,
-62.143,61.683,61.240,62.017,63.563,64.677,64.923,64.839,64.969,65.261,65.386,65.234,64.938,64.644,64.424,64.276,
-64.113,63.825,63.413,62.985,62.593,62.175,61.692,61.237,60.899,60.632,60.316,59.911,59.472,59.055,58.679,58.346,
-58.015,57.609,57.107,56.602,56.190,55.839,55.448,55.000,54.560,54.124,53.619,53.052,52.547,52.176,51.854,51.476,
-51.054,50.635,50.180,49.645,49.128,48.776,48.558,48.281,47.849,47.376,46.995,46.680,46.354,46.045,45.796,45.511,
-45.058,44.517,44.136,43.964,43.716,43.138,42.398,41.918,41.801,41.625,40.894,39.571,37.978,36.195,33.804,30.479,
-26.791,24.149,23.660,25.055,26.920,28.040,28.348,28.482,28.697,28.596,27.868,26.832,26.001,25.381,24.584,23.508,
-22.523,21.912,21.461,20.795,19.891,19.025,18.349,17.777,17.225,16.732,16.313,15.892,15.437,15.011,14.632,14.215,
-13.749,13.373,13.186,13.082,12.892,12.603,12.324,12.087,11.823,11.507,11.181,10.856,10.509,10.189,9.985,9.886,
-9.769,9.575,9.368,9.194,9.000,8.759,8.544,8.398,8.234,7.968,7.669,7.451,7.307,7.175,7.084,7.087,
-7.080,6.893,6.558,6.300,6.234,6.234,6.165,6.065,6.008,5.947,5.827,5.727,5.707,5.635,5.339,4.891,
-4.517,4.277,4.025,3.705,3.442,3.286,3.092,2.760,2.418,2.201,2.007,1.668,1.247,.973,.919,.962,
-1.048,1.283,1.695,2.084,2.210,2.008,1.549,.909,.175,-.507,-1.031,-1.426,-1.772,-2.067,-2.283,-2.483,
--2.767,-3.109,-3.382,-3.545,-3.703,-3.950,-4.265,-4.576,-4.858,-5.099,-5.247,-5.266,-5.213,-5.194,-5.283,-5.480,
--5.733,-5.976,-6.177,-6.395,-6.722,-7.151,-7.539,-7.782,-7.958,-8.220,-8.588,-8.925,-9.124,-9.219,-9.304,-9.428,
--9.592,-9.780,-9.938,-9.993,-9.938,-9.874,-9.902,-10.016,-10.117,-10.144,-10.122,-10.106,-10.113,-10.118,-10.090,-10.028,
--9.968,-9.951,-9.965,-9.953,-9.881,-9.779,-9.693,-9.627,-9.568,-9.534,-9.555,-9.610,-9.634,-9.597,-9.535,-9.495,
--9.488,-9.492,-9.480,-9.427,-9.344,-9.276,-9.255,-9.242,-9.169,-9.044,-8.945,-8.909,-8.875,-8.787,-8.678,-8.609,
--8.567,-8.500,-8.406,-8.327,-8.262,-8.171,-8.056,-7.961,-7.893,-7.810,-7.694,-7.582,-7.490,-7.378,-7.227,-7.087,
--6.997,-6.922,-6.811,-6.678,-6.567,-6.467,-6.340,-6.194,-6.074,-5.977,-5.859,-5.708,-5.556,-5.409,-5.231,-5.019,
--4.826,-4.688,-4.579,-4.463,-4.344,-4.234,-4.120,-3.995,-3.885,-3.805,-3.724,-3.622,-3.542,-3.517,-3.507,-3.450,
--3.358,-3.301,-3.297,-3.301,-3.288,-3.292,-3.321,-3.330,-3.296,-3.267,-3.285,-3.325,-3.339,-3.339,-3.356,-3.383,
--3.389,-3.387,-3.422,-3.497,-3.578,-3.657,-3.755,-3.865,-3.946,-4.000,-4.093,-4.273,-4.504,-4.713,-4.870,-4.983,
--5.069,-5.149,-5.264,-5.437,-5.631,-5.780,-5.867,-5.937,-6.044,-6.189,-6.329,-6.429,-6.494,-6.563,-6.659,-6.755,
--6.792,-6.745,-6.659,-6.601,-6.593,-6.619,-6.660,-6.705,-6.732,-6.722,-6.700,-6.724,-6.804,-6.880,-6.890,-6.838,
--6.781,-6.757,-6.760,-6.769,-6.770,-6.773,-6.807,-6.886,-6.971,-7.007,-6.987,-6.965,-6.979,-6.991,-6.952,-6.885,
--6.853,-6.866,-6.867,-6.816,-6.732,-6.638,-6.525,-6.378,-6.217,-6.065,-5.917,-5.766,-5.628,-5.517,-5.418,-5.307,
--5.189,-5.082,-4.977,-4.857,-4.734,-4.631,-4.541,-4.433,-4.303,-4.183,-4.084,-3.972,-3.803,-3.580,-3.340,-3.110,
--2.891,-2.661,-2.394,-2.080,-1.728,-1.357,-.961,-.529,-.074,.359,.755,1.163,1.656,2.249,2.884,3.500,
-4.105,4.761,5.496,6.251,6.950,7.601,8.295,9.077,9.851,10.464,10.884,11.238,11.654,12.055,12.168,11.774,
-11.037,10.567,11.062,12.788,15.450,18.624,22.201,26.227,30.370,33.871,36.183,37.493,38.459,39.554,40.849,42.249,
-43.637,44.795,45.491,45.747,45.825,45.924,46.054,46.235,46.533,46.818,46.813,46.573,46.584,47.052,47.340,46.543,
-44.522,41.899,39.121,36.105,32.931,30.281,28.726,27.971,27.297,26.536,26.118,26.241,26.508,26.496,26.258,26.080,
-26.042,26.029,25.951,25.745,25.316,24.658,23.922,23.204,22.409,21.484,20.646,20.159,19.983,19.854,19.641,19.398,
-19.117,18.662,17.989,17.209,16.401,15.525,14.571,13.609,12.632,11.533,10.305,9.100,7.977,6.788,5.451,4.169,
-3.173,2.384,1.546,.627,-.150,-.660,-1.036,-1.454,-1.958,-2.543,-3.211,-3.873,-4.359,-4.621,-4.787,-4.940,
--5.000,-4.944,-4.988,-5.348,-5.937,-6.465,-6.794,-7.016,-7.231,-7.470,-7.826,-8.434,-9.230,-9.932,-10.401,-10.849,
--11.526,-12.330,-12.929,-13.239,-13.543,-14.081,-14.700,-15.056,-15.030,-14.803,-14.541,-14.187,-13.644,-13.031,-12.636,-12.599,
--12.755,-12.851,-12.855,-12.949,-13.234,-13.545,-13.604,-13.309,-12.789,-12.215,-11.654,-11.111,-10.640,-10.329,-10.179,-10.082,
--9.954,-9.894,-10.103,-10.572,-10.895,-10.568,-9.568,-8.570,-8.423,-9.389,-10.951,-12.362,-13.252,-13.696,-13.887,-13.896,
--13.717,-13.368,-12.899,-12.391,-11.942,-11.610,-11.342,-11.025,-10.630,-10.246,-9.947,-9.695,-9.414,-9.104,-8.811,-8.540,
--8.272,-8.034,-7.880,-7.788,-7.665,-7.470,-7.270,-7.138,-7.059,-6.983,-6.926,-6.950,-7.056,-7.153,-7.170,-7.141,
--7.148,-7.206,-7.257,-7.263,-7.254,-7.277,-7.319,-7.326,-7.275,-7.204,-7.149,-7.095,-7.005,-6.867,-6.693,-6.482,
--6.225,-5.945,-5.694,-5.497,-5.317,-5.099,-4.827,-4.528,-4.227,-3.923,-3.605,-3.272,-2.932,-2.592,-2.253,-1.909,
--1.557,-1.199,-.838,-.467,-.076,.323,.704,1.066,1.448,1.872,2.305,2.694,3.045,3.410,3.815,4.233,
-4.624,4.984,5.326,5.657,5.987,6.328,6.671,6.986,7.265,7.555,7.905,8.306,8.701,9.046,9.318,9.488,
-9.539,9.516,9.511,9.586,9.726,9.894,10.069,10.244,10.401,10.534,10.665,10.815,10.975,11.125,11.260,11.385,
-11.505,11.630,11.771,11.912,12.003,12.034,12.074,12.202,12.393,12.548,12.619,12.663,12.758,12.898,13.013,13.057,
-13.045,13.040,13.108,13.266,13.434,13.493,13.410,13.299,13.297,13.408,13.516,13.542,13.510,13.473,13.440,13.400,
-13.380,13.402,13.436,13.440,13.421,13.602,13.584,13.579,13.571,13.561,13.570,13.601,13.622,13.615,13.598,13.590,
-13.587,13.592,13.622,13.679,13.732,13.762,13.786,13.818,13.839,13.834,13.831,13.867,13.925,13.974,14.031,14.134,
-14.267,14.360,14.398,14.442,14.536,14.643,14.721,14.795,14.913,15.079,15.291,15.575,15.922,16.239,16.491,16.828,
-17.444,18.313,19.218,20.063,20.953,21.889,22.584,22.812,22.816,23.107,23.834,24.571,24.811,24.470,23.823,23.129,
-22.485,21.943,21.536,21.184,20.740,20.160,19.548,19.007,18.535,18.097,17.691,17.311,16.925,16.527,16.151,15.790,
-15.390,14.939,14.503,14.116,13.729,13.294,12.845,12.399,11.876,11.215,10.524,9.979,9.597,9.219,8.740,8.224,
-7.755,7.303,6.807,6.318,5.952,5.730,5.559,5.372,5.201,5.088,4.961,4.665,4.123,3.443,2.826,2.377,
-2.020,1.634,1.213,.846,.559,.272,-.111,-.655,-1.444,-2.543,-3.872,-5.212,-6.418,-7.519,-8.512,-9.184,
--9.308,-8.982,-8.611,-8.521,-8.719,-9.029,-9.334,-9.654,-10.100,-10.741,-11.426,-11.758,-11.467,-10.831,-10.490,-10.738,
--11.209,-11.432,-11.448,-11.619,-12.027,-12.426,-12.739,-13.232,-14.094,-15.151,-16.093,-16.776,-17.162,-17.233,-17.139,-17.216,
--17.654,-18.274,-18.804,-19.170,-19.358,-19.275,-19.094,-19.480,-20.915,-22.800,-23.781,-23.209,-21.872,-21.035,-21.115,-21.650,
--22.213,-22.810,-23.452,-23.895,-24.003,-24.009,-24.230,-24.675,-25.102,-25.259,-24.969,-24.145,-22.909,-21.608,-20.545,-19.751,
--19.125,-18.658,-18.391,-18.219,-17.907,-17.270,-16.236,-14.886,-13.585,-12.937,-13.264,-14.127,-14.699,-14.727,-14.838,-15.720,
--17.241,-18.667,-19.560,-20.101,-20.591,-21.035,-21.325,-21.521,-21.717,-21.839,-21.806,-21.755,-21.864,-22.015,-21.910,-21.522,
--21.194,-21.185,-21.367,-21.485,-21.527,-21.642,-21.833,-21.995,-22.177,-22.537,-23.034,-23.413,-23.588,-23.817,-24.350,-25.102,
--25.826,-26.384,-26.604,-26.092,-24.617,-22.691,-21.354,-21.197,-21.876,-22.748,-23.655,-24.772,-25.962,-26.781,-27.094,-27.271,
--27.640,-28.092,-28.398,-28.611,-28.911,-29.248,-29.448,-29.553,-29.767,-30.109,-30.376,-30.483,-30.591,-30.838,-31.143,-31.400,
--31.683,-32.121,-32.696,-33.305,-33.945,-34.666,-35.416,-36.066,-36.588,-37.081,-37.637,-38.269,-38.973,-39.736,-40.486,-41.150,
--41.755,-42.415,-43.175,-43.967,-44.734,-45.506,-46.308,-47.076,-47.726,-48.246,-48.669,-49.027,-49.373,-49.769,-50.203,-50.567,
--50.803,-51.006,-51.303,-51.676,-52.002,-52.238,-52.457,-52.710,-52.969,-53.214,-53.476,-53.759,-54.027,-54.276,-54.549,-54.841,
--55.084,-55.269,-55.493,-55.811,-56.139,-56.383,-56.586,-56.842,-57.125,-57.330,-57.451,-57.608,-57.894,-58.285,-58.714,-59.122,
--59.445,-59.647,-59.802,-60.028,-60.316,-60.508,-60.524,-60.486,-60.520,-60.533,-60.297,-59.748,-59.049,-58.376,-57.752,-57.138,
--56.603,-56.304,-56.292,-56.375,-56.262,-55.918,-55.757,-56.324,-57.654,-59.036,-59.572,-59.009,-57.906,-57.020,-56.677,-56.747,
--56.977,-57.159,-57.092,-56.654,-55.953,-55.289,-54.883,-54.676,-54.412,-53.904,-53.236,-52.716,-52.574,-52.629,-52.330,-51.280,
--49.739,-48.492,-48.132,-48.515,-48.909,-48.626,-47.537,-46.106,-44.991,-44.523,-44.488,-44.427,-44.146,-43.810,-43.559,-43.239,
--42.655,-41.922,-41.331,-40.934,-40.494,-39.866,-39.192,-38.643,-38.156,-37.570,-36.879,-36.203,-35.595,-35.004,-34.421,-33.914,
--33.528,-33.228,-32.946,-32.618,-32.187,-31.644,-31.053,-30.466,-29.840,-29.107,-28.296,-27.493,-26.708,-25.874,-24.988,-24.131,
--23.338,-22.550,-21.738,-20.943,-20.169,-19.343,-18.463,-17.664,-17.040,-16.512,-15.993,-15.560,-15.303,-15.080,-14.635,-13.966,
--13.332,-12.831,-12.197,-11.165,-9.904,-8.873,-8.314,-8.039,-7.725,-7.236,-6.624,-5.951,-5.225,-4.473,-3.775,-3.190,
--2.682,-2.138,-1.487,-.788,-.170,.326,.803,1.357,1.947,2.482,3.012,3.692,4.546,5.384,6.058,6.711,
-7.662,9.035,10.620,12.112,13.433,14.766,16.302,18.026,19.734,21.235,22.483,23.531,24.399,25.075,25.611,26.146,
-26.777,27.450,28.043,28.518,28.938,29.362,29.792,30.228,30.706,31.263,31.919,32.680,33.515,34.313,34.953,35.416,
-35.788,36.120,36.363,36.481,36.535,36.577,36.537,36.332,36.061,35.986,36.273,36.843,37.474,37.993,38.359,38.641,
-38.970,39.457,40.078,40.692,41.173,41.530,41.857,42.239,42.746,43.419,44.208,44.950,45.517,45.959,46.404,46.871,
-47.273,47.611,48.026,48.612,49.294,49.956,50.593,51.226,51.750,51.997,51.955,51.798,51.680,51.609,51.551,51.553,
-51.676,51.885,52.109,52.363,52.718,53.152,53.565,53.956,54.465,55.162,55.891,56.465,56.946,57.600,58.514,59.434,
-60.087,60.564,61.205,62.134,63.061,63.627,63.823,63.963,64.290,64.697,64.835,64.428,63.513,62.463,61.771,61.730,
-62.230,62.894,63.404,63.703,63.904,64.102,64.286,64.383,64.337,64.171,63.999,63.931,63.971,64.007,63.942,63.744,
-63.399,62.890,62.299,61.834,61.640,61.618,61.553,61.387,61.259,61.272,61.375,61.492,61.637,61.819,61.956,61.998,
-62.059,62.300,62.694,63.016,63.081,62.914,62.701,62.615,62.703,62.874,62.999,63.058,63.157,63.344,63.467,63.324,
-62.950,62.620,62.547,62.693,62.898,63.041,63.003,62.622,61.865,61.006,60.444,60.347,60.548,60.795,61.015,61.313,
-61.805,62.451,63.019,63.217,62.941,62.351,61.659,60.911,60.051,59.102,58.089,56.925,55.738,55.300,56.584,59.523,
-62.512,63.750,63.091,62.148,62.438,63.849,65.125,65.474,65.232,65.112,65.320,65.547,65.515,65.250,64.940,64.716,
-64.576,64.421,64.156,63.772,63.337,62.899,62.448,61.988,61.570,61.229,60.926,60.605,60.254,59.879,59.474,59.050,
-58.654,58.299,57.931,57.517,57.107,56.742,56.348,55.842,55.280,54.803,54.414,53.973,53.427,52.912,52.548,52.255,
-51.879,51.410,50.943,50.487,49.979,49.452,49.027,48.716,48.381,47.962,47.590,47.369,47.172,46.826,46.389,46.064,
-45.846,45.507,44.966,44.474,44.264,44.179,43.867,43.288,42.770,42.504,42.216,41.533,40.532,39.630,38.822,37.284,
-34.091,29.445,25.008,22.722,23.183,25.237,27.179,28.184,28.485,28.487,28.163,27.375,26.349,25.477,24.803,24.050,
-23.129,22.295,21.730,21.243,20.565,19.729,18.962,18.333,17.739,17.164,16.705,16.352,15.957,15.461,14.977,14.582,
-14.198,13.767,13.390,13.164,12.995,12.729,12.386,12.114,11.946,11.761,11.466,11.099,10.734,10.410,10.167,10.034,
-9.957,9.832,9.634,9.441,9.286,9.110,8.884,8.672,8.506,8.307,8.019,7.716,7.484,7.304,7.142,7.067,
-7.119,7.147,6.957,6.614,6.382,6.365,6.393,6.316,6.203,6.163,6.154,6.107,6.078,6.107,6.034,5.668,
-5.087,4.552,4.179,3.874,3.583,3.395,3.324,3.218,2.975,2.688,2.464,2.248,1.953,1.629,1.352,1.063,
-.724,.528,.724,1.230,1.652,1.730,1.580,1.412,1.201,.782,.138,-.572,-1.197,-1.677,-2.008,-2.232,
--2.473,-2.836,-3.277,-3.659,-3.922,-4.129,-4.350,-4.588,-4.832,-5.075,-5.260,-5.301,-5.206,-5.106,-5.115,-5.229,
--5.389,-5.574,-5.779,-5.986,-6.216,-6.546,-6.995,-7.446,-7.775,-8.014,-8.302,-8.673,-9.011,-9.213,-9.314,-9.412,
--9.553,-9.733,-9.934,-10.108,-10.181,-10.139,-10.065,-10.063,-10.141,-10.228,-10.274,-10.291,-10.303,-10.305,-10.282,-10.232,
--10.167,-10.107,-10.070,-10.051,-10.014,-9.936,-9.834,-9.743,-9.672,-9.611,-9.570,-9.573,-9.605,-9.621,-9.595,-9.547,
--9.508,-9.487,-9.477,-9.458,-9.410,-9.336,-9.275,-9.256,-9.244,-9.178,-9.060,-8.962,-8.912,-8.861,-8.761,-8.643,
--8.559,-8.495,-8.402,-8.287,-8.196,-8.133,-8.057,-7.956,-7.859,-7.774,-7.673,-7.551,-7.443,-7.358,-7.264,-7.141,
--7.024,-6.935,-6.843,-6.714,-6.570,-6.443,-6.317,-6.166,-6.002,-5.859,-5.730,-5.590,-5.447,-5.328,-5.209,-5.047,
--4.851,-4.680,-4.559,-4.454,-4.339,-4.229,-4.124,-3.996,-3.847,-3.730,-3.664,-3.598,-3.493,-3.400,-3.374,-3.373,
--3.316,-3.212,-3.143,-3.139,-3.148,-3.142,-3.155,-3.197,-3.218,-3.185,-3.144,-3.151,-3.188,-3.210,-3.220,-3.247,
--3.280,-3.285,-3.272,-3.279,-3.318,-3.375,-3.459,-3.583,-3.716,-3.802,-3.855,-3.965,-4.171,-4.399,-4.550,-4.606,
--4.622,-4.640,-4.684,-4.795,-5.009,-5.289,-5.540,-5.692,-5.772,-5.850,-5.958,-6.075,-6.167,-6.228,-6.280,-6.338,
--6.387,-6.397,-6.364,-6.323,-6.309,-6.324,-6.350,-6.381,-6.421,-6.460,-6.480,-6.489,-6.522,-6.586,-6.649,-6.672,
--6.650,-6.609,-6.574,-6.564,-6.576,-6.593,-6.606,-6.636,-6.706,-6.792,-6.837,-6.827,-6.816,-6.843,-6.869,-6.834,
--6.758,-6.717,-6.733,-6.747,-6.709,-6.627,-6.529,-6.409,-6.259,-6.102,-5.964,-5.836,-5.695,-5.547,-5.417,-5.310,
--5.202,-5.076,-4.940,-4.800,-4.663,-4.544,-4.458,-4.394,-4.310,-4.181,-4.016,-3.845,-3.681,-3.517,-3.339,-3.138,
--2.915,-2.677,-2.429,-2.158,-1.851,-1.513,-1.162,-.804,-.424,-.015,.414,.852,1.316,1.844,2.448,3.094,
-3.725,4.323,4.931,5.598,6.308,7.002,7.663,8.341,9.079,9.835,10.515,11.077,11.566,12.057,12.553,12.916,
-12.901,12.352,11.470,10.866,11.241,12.955,15.897,19.668,23.761,27.638,30.901,33.508,35.713,37.689,39.359,40.659,
-41.791,42.992,44.166,45.021,45.484,45.752,45.960,46.096,46.250,46.583,46.942,46.890,46.352,45.892,46.001,46.368,
-46.234,45.281,43.684,41.435,38.325,34.722,31.720,30.043,29.206,28.231,26.922,25.913,25.599,25.623,25.506,25.285,
-25.278,25.560,25.928,26.187,26.226,25.971,25.453,24.820,24.115,23.204,22.076,21.079,20.606,20.602,20.638,20.419,
-20.006,19.545,19.023,18.368,17.602,16.778,15.895,14.944,13.930,12.815,11.549,10.210,8.968,7.858,6.743,5.570,
-4.506,3.680,2.946,2.097,1.192,.482,.042,-.315,-.782,-1.396,-2.108,-2.836,-3.428,-3.760,-3.924,-4.155,
--4.497,-4.738,-4.766,-4.794,-5.079,-5.562,-5.994,-6.290,-6.563,-6.868,-7.183,-7.619,-8.375,-9.397,-10.318,-10.876,
--11.228,-11.681,-12.245,-12.682,-12.926,-13.208,-13.698,-14.214,-14.422,-14.250,-13.940,-13.714,-13.527,-13.209,-12.783,-12.500,
--12.541,-12.770,-12.897,-12.851,-12.858,-13.119,-13.491,-13.618,-13.315,-12.712,-12.039,-11.381,-10.717,-10.081,-9.591,-9.324,
--9.262,-9.366,-9.661,-10.173,-10.757,-11.030,-10.618,-9.557,-8.462,-8.137,-8.936,-10.486,-12.066,-13.186,-13.792,-14.031,
--14.001,-13.737,-13.304,-12.802,-12.300,-11.828,-11.390,-10.978,-10.577,-10.198,-9.885,-9.649,-9.441,-9.208,-8.953,-8.712,
--8.495,-8.288,-8.103,-7.959,-7.825,-7.650,-7.447,-7.290,-7.206,-7.127,-6.996,-6.874,-6.865,-6.967,-7.068,-7.092,
--7.086,-7.132,-7.218,-7.270,-7.265,-7.267,-7.326,-7.407,-7.441,-7.414,-7.371,-7.343,-7.312,-7.244,-7.128,-6.963,
--6.740,-6.463,-6.169,-5.904,-5.681,-5.471,-5.238,-4.970,-4.671,-4.352,-4.024,-3.692,-3.358,-3.027,-2.709,-2.401,
--2.080,-1.726,-1.349,-.976,-.599,-.191,.242,.654,1.025,1.400,1.824,2.276,2.695,3.069,3.440,3.830,
-4.214,4.578,4.945,5.329,5.696,6.016,6.315,6.634,6.962,7.256,7.524,7.829,8.205,8.613,8.984,9.273,
-9.465,9.555,9.564,9.545,9.563,9.648,9.791,9.968,10.156,10.337,10.501,10.651,10.793,10.930,11.058,11.165,
-11.253,11.359,11.529,11.755,11.937,11.993,11.988,12.089,12.348,12.608,12.690,12.637,12.659,12.851,13.070,13.128,
-13.020,12.900,12.892,13.001,13.164,13.307,13.369,13.336,13.280,13.303,13.416,13.534,13.581,13.568,13.543,13.523,
-13.507,13.514,13.558,13.608,13.622,13.602,13.762,13.756,13.750,13.731,13.709,13.715,13.755,13.800,13.826,13.835,
-13.827,13.801,13.779,13.802,13.866,13.923,13.940,13.948,13.984,14.029,14.043,14.038,14.056,14.100,14.146,14.196,
-14.271,14.350,14.386,14.395,14.454,14.575,14.676,14.708,14.748,14.889,15.117,15.355,15.595,15.874,16.178,16.499,
-16.958,17.731,18.794,19.897,20.856,21.721,22.561,23.227,23.528,23.575,23.720,24.125,24.547,24.626,24.255,23.587,
-22.831,22.148,21.651,21.342,21.064,20.646,20.087,19.524,19.039,18.598,18.166,17.767,17.414,17.065,16.698,16.332,
-15.972,15.578,15.151,14.752,14.403,14.033,13.593,13.123,12.666,12.161,11.546,10.895,10.354,9.946,9.552,9.087,
-8.594,8.129,7.673,7.203,6.777,6.468,6.260,6.083,5.919,5.808,5.730,5.555,5.145,4.494,3.765,3.143,
-2.668,2.230,1.744,1.286,.995,.872,.751,.445,-.169,-1.169,-2.531,-4.017,-5.278,-6.208,-7.059,-8.055,
--8.988,-9.402,-9.175,-8.696,-8.425,-8.458,-8.601,-8.751,-9.049,-9.694,-10.663,-11.606,-12.049,-11.830,-11.332,-11.105,
--11.219,-11.192,-10.689,-10.058,-9.931,-10.445,-11.175,-11.793,-12.434,-13.334,-14.425,-15.436,-16.184,-16.610,-16.706,-16.607,
--16.627,-16.997,-17.619,-18.193,-18.495,-18.441,-18.116,-17.955,-18.643,-20.393,-22.366,-23.267,-22.676,-21.458,-20.736,-20.802,
--21.255,-21.814,-22.520,-23.266,-23.667,-23.507,-23.036,-22.678,-22.625,-22.794,-22.959,-22.829,-22.197,-21.162,-20.092,-19.274,
--18.694,-18.251,-17.958,-17.803,-17.583,-17.077,-16.281,-15.286,-14.097,-12.858,-12.120,-12.420,-13.514,-14.449,-14.636,-14.570,
--15.157,-16.555,-18.064,-19.055,-19.577,-19.983,-20.378,-20.674,-20.889,-21.110,-21.271,-21.268,-21.203,-21.260,-21.362,-21.226,
--20.817,-20.478,-20.491,-20.720,-20.875,-20.933,-21.086,-21.361,-21.598,-21.769,-22.034,-22.435,-22.785,-22.986,-23.237,-23.737,
--24.357,-24.803,-24.951,-24.792,-24.182,-23.007,-21.603,-20.660,-20.561,-21.079,-21.848,-22.836,-24.100,-25.330,-26.060,-26.272,
--26.418,-26.802,-27.268,-27.595,-27.850,-28.175,-28.466,-28.564,-28.585,-28.774,-29.119,-29.386,-29.508,-29.676,-29.998,-30.333,
--30.561,-30.796,-31.209,-31.775,-32.375,-33.003,-33.712,-34.435,-35.035,-35.510,-35.999,-36.595,-37.275,-37.995,-38.746,-39.488,
--40.155,-40.765,-41.429,-42.200,-43.010,-43.778,-44.516,-45.260,-45.978,-46.603,-47.115,-47.539,-47.909,-48.278,-48.692,-49.126,
--49.479,-49.715,-49.940,-50.274,-50.688,-51.051,-51.313,-51.535,-51.768,-51.999,-52.216,-52.449,-52.715,-52.998,-53.294,-53.608,
--53.895,-54.101,-54.272,-54.524,-54.883,-55.234,-55.492,-55.722,-56.007,-56.292,-56.478,-56.602,-56.820,-57.211,-57.713,-58.227,
--58.677,-58.989,-59.146,-59.260,-59.469,-59.739,-59.891,-59.867,-59.827,-59.910,-59.994,-59.843,-59.409,-58.870,-58.379,-57.919,
--57.405,-56.857,-56.399,-56.124,-55.967,-55.746,-55.417,-55.296,-55.868,-57.187,-58.558,-59.056,-58.430,-57.347,-56.652,-56.585,
--56.790,-56.904,-56.858,-56.680,-56.303,-55.698,-55.040,-54.578,-54.360,-54.179,-53.805,-53.255,-52.781,-52.560,-52.399,-51.848,
--50.700,-49.359,-48.562,-48.667,-49.258,-49.500,-48.857,-47.500,-46.098,-45.252,-45.057,-45.120,-45.004,-44.626,-44.195,-43.843,
--43.458,-42.919,-42.314,-41.779,-41.269,-40.660,-40.019,-39.544,-39.250,-38.899,-38.315,-37.602,-36.954,-36.397,-35.842,-35.283,
--34.806,-34.443,-34.129,-33.789,-33.377,-32.852,-32.221,-31.573,-30.976,-30.375,-29.676,-28.914,-28.210,-27.567,-26.850,-25.983,
--25.065,-24.215,-23.430,-22.642,-21.829,-20.998,-20.149,-19.327,-18.634,-18.092,-17.589,-17.052,-16.584,-16.295,-16.054,-15.598,
--14.894,-14.176,-13.573,-12.889,-11.889,-10.685,-9.677,-9.136,-8.970,-8.883,-8.648,-8.207,-7.601,-6.888,-6.103,-5.278,
--4.473,-3.760,-3.141,-2.531,-1.870,-1.216,-.660,-.186,.308,.864,1.446,2.052,2.736,3.480,4.182,4.844,
-5.687,6.933,8.516,10.124,11.545,12.877,14.355,16.069,17.887,19.592,21.042,22.195,23.082,23.765,24.316,24.810,
-25.322,25.908,26.565,27.225,27.794,28.225,28.560,28.911,29.377,29.974,30.656,31.397,32.210,33.065,33.842,34.431,
-34.846,35.183,35.460,35.610,35.637,35.665,35.764,35.823,35.699,35.459,35.349,35.534,35.964,36.480,36.966,37.373,
-37.699,38.012,38.426,38.989,39.618,40.176,40.601,40.935,41.272,41.717,42.331,43.070,43.796,44.420,44.995,45.593,
-46.162,46.591,46.916,47.313,47.875,48.515,49.124,49.727,50.361,50.902,51.157,51.120,50.999,50.973,51.028,51.081,
-51.139,51.273,51.490,51.741,52.024,52.384,52.802,53.192,53.539,53.948,54.505,55.134,55.715,56.291,57.034,57.968,
-58.859,59.490,59.974,60.639,61.603,62.580,63.203,63.425,63.525,63.763,64.101,64.260,63.963,63.166,62.136,61.344,
-61.159,61.577,62.260,62.858,63.259,63.548,63.796,63.979,64.062,64.067,64.066,64.116,64.222,64.329,64.372,64.334,
-64.231,64.034,63.680,63.193,62.744,62.466,62.267,61.944,61.470,61.060,60.908,60.981,61.122,61.256,61.386,61.494,
-61.563,61.672,61.941,62.342,62.670,62.738,62.560,62.328,62.240,62.362,62.607,62.820,62.915,62.920,62.885,62.782,
-62.573,62.334,62.206,62.228,62.314,62.398,62.473,62.437,62.081,61.361,60.587,60.155,60.141,60.294,60.429,60.625,
-61.013,61.497,61.805,61.749,61.377,60.931,60.660,60.618,60.615,60.416,59.983,59.405,58.673,57.824,57.366,58.152,
-60.399,62.986,64.268,63.771,62.723,62.672,63.849,65.188,65.735,65.580,65.397,65.520,65.732,65.747,65.557,65.314,
-65.101,64.894,64.653,64.361,64.009,63.601,63.162,62.735,62.347,61.983,61.605,61.208,60.837,60.528,60.233,59.867,
-59.423,58.994,58.643,58.324,57.969,57.581,57.184,56.733,56.178,55.602,55.145,54.803,54.423,53.927,53.432,53.053,
-52.706,52.237,51.664,51.147,50.744,50.357,49.920,49.486,49.085,48.646,48.170,47.807,47.644,47.507,47.158,46.643,
-46.238,46.035,45.811,45.386,44.929,44.701,44.639,44.417,43.909,43.356,42.981,42.645,42.074,41.335,40.803,40.504,
-39.613,36.952,32.226,26.784,22.892,21.996,23.625,26.018,27.709,28.402,28.491,28.222,27.564,26.609,25.653,24.844,
-24.059,23.199,22.387,21.739,21.145,20.440,19.653,18.926,18.272,17.626,17.045,16.656,16.402,16.056,15.519,14.944,
-14.484,14.104,13.715,13.359,13.098,12.858,12.531,12.175,11.947,11.857,11.740,11.468,11.086,10.716,10.430,10.254,
-10.176,10.116,9.972,9.738,9.505,9.324,9.158,8.971,8.786,8.602,8.358,8.044,7.743,7.510,7.295,7.078,
-6.963,7.007,7.059,6.940,6.713,6.592,6.606,6.571,6.416,6.300,6.340,6.416,6.388,6.313,6.280,6.169,
-5.793,5.199,4.630,4.214,3.890,3.625,3.481,3.437,3.339,3.112,2.854,2.650,2.447,2.203,1.977,1.759,
-1.382,.811,.356,.342,.632,.765,.572,.402,.599,1.007,1.151,.785,.075,-.666,-1.238,-1.606,
--1.855,-2.147,-2.606,-3.207,-3.808,-4.297,-4.647,-4.869,-4.997,-5.097,-5.208,-5.278,-5.233,-5.123,-5.085,-5.161,
--5.261,-5.320,-5.405,-5.585,-5.825,-6.081,-6.404,-6.856,-7.358,-7.761,-8.041,-8.310,-8.629,-8.925,-9.123,-9.250,
--9.381,-9.542,-9.726,-9.931,-10.134,-10.272,-10.307,-10.282,-10.272,-10.302,-10.349,-10.403,-10.458,-10.489,-10.463,-10.395,
--10.333,-10.294,-10.259,-10.212,-10.157,-10.090,-9.994,-9.880,-9.779,-9.710,-9.662,-9.625,-9.609,-9.613,-9.611,-9.588,
--9.552,-9.520,-9.497,-9.474,-9.445,-9.401,-9.342,-9.287,-9.251,-9.216,-9.149,-9.054,-8.974,-8.924,-8.865,-8.768,
--8.659,-8.571,-8.483,-8.359,-8.218,-8.108,-8.034,-7.959,-7.865,-7.765,-7.664,-7.543,-7.408,-7.286,-7.189,-7.095,
--6.996,-6.910,-6.838,-6.745,-6.611,-6.463,-6.330,-6.201,-6.053,-5.891,-5.728,-5.555,-5.378,-5.231,-5.127,-5.016,
--4.849,-4.653,-4.497,-4.389,-4.282,-4.163,-4.063,-3.977,-3.854,-3.694,-3.565,-3.499,-3.436,-3.335,-3.246,-3.231,
--3.243,-3.194,-3.091,-3.021,-3.016,-3.019,-3.000,-3.002,-3.049,-3.088,-3.071,-3.030,-3.022,-3.047,-3.070,-3.090,
--3.129,-3.174,-3.197,-3.198,-3.204,-3.222,-3.253,-3.319,-3.438,-3.572,-3.671,-3.758,-3.902,-4.099,-4.244,-4.267,
--4.221,-4.216,-4.288,-4.404,-4.553,-4.763,-5.026,-5.272,-5.445,-5.550,-5.636,-5.726,-5.814,-5.890,-5.954,-6.010,
--6.054,-6.073,-6.065,-6.047,-6.049,-6.082,-6.130,-6.164,-6.179,-6.191,-6.208,-6.229,-6.256,-6.298,-6.353,-6.408,
--6.448,-6.467,-6.459,-6.437,-6.433,-6.467,-6.518,-6.544,-6.550,-6.579,-6.645,-6.699,-6.706,-6.694,-6.708,-6.733,
--6.716,-6.655,-6.609,-6.608,-6.615,-6.580,-6.501,-6.396,-6.264,-6.104,-5.948,-5.829,-5.738,-5.631,-5.488,-5.330,
--5.182,-5.046,-4.909,-4.761,-4.609,-4.469,-4.360,-4.286,-4.222,-4.129,-3.980,-3.785,-3.579,-3.394,-3.239,-3.093,
--2.929,-2.732,-2.506,-2.255,-1.971,-1.643,-1.287,-.935,-.606,-.285,.067,.483,.964,1.491,2.047,2.637,
-3.261,3.893,4.498,5.075,5.662,6.288,6.951,7.635,8.333,9.036,9.730,10.422,11.129,11.830,12.465,13.007,
-13.466,13.750,13.613,12.884,11.816,11.116,11.542,13.431,16.532,20.207,23.836,27.179,30.395,33.634,36.625,38.855,
-40.193,41.118,42.158,43.314,44.244,44.839,45.295,45.690,45.908,45.992,46.186,46.475,46.464,45.973,45.427,45.332,
-45.605,45.796,45.692,45.192,43.778,40.862,36.871,33.308,31.287,30.377,29.357,27.788,26.285,25.421,25.032,24.719,
-24.478,24.539,24.903,25.347,25.710,25.921,25.885,25.567,25.077,24.487,23.688,22.643,21.668,21.185,21.207,21.299,
-21.082,20.573,19.993,19.416,18.756,17.953,17.050,16.118,15.176,14.165,12.984,11.627,10.254,9.046,7.986,6.912,
-5.810,4.858,4.132,3.439,2.587,1.685,.996,.574,.216,-.275,-.926,-1.664,-2.364,-2.863,-3.107,-3.301,
--3.710,-4.292,-4.715,-4.818,-4.823,-5.001,-5.313,-5.571,-5.787,-6.113,-6.544,-6.956,-7.418,-8.183,-9.279,-10.351,
--11.039,-11.377,-11.643,-11.968,-12.263,-12.488,-12.764,-13.162,-13.545,-13.705,-13.616,-13.451,-13.356,-13.295,-13.136,-12.880,
--12.713,-12.786,-12.994,-13.076,-12.961,-12.877,-13.044,-13.347,-13.432,-13.109,-12.519,-11.900,-11.317,-10.700,-10.035,-9.434,
--9.035,-8.919,-9.098,-9.518,-10.049,-10.496,-10.640,-10.314,-9.556,-8.722,-8.356,-8.808,-9.953,-11.332,-12.542,-13.421,
--13.922,-13.994,-13.660,-13.113,-12.589,-12.152,-11.702,-11.158,-10.583,-10.094,-9.743,-9.495,-9.293,-9.103,-8.919,-8.746,
--8.587,-8.432,-8.274,-8.119,-7.970,-7.807,-7.619,-7.447,-7.343,-7.294,-7.213,-7.058,-6.902,-6.853,-6.909,-6.974,
--6.988,-6.996,-7.054,-7.139,-7.188,-7.197,-7.224,-7.299,-7.383,-7.427,-7.427,-7.414,-7.401,-7.377,-7.329,-7.243,
--7.100,-6.882,-6.610,-6.328,-6.068,-5.825,-5.580,-5.324,-5.044,-4.725,-4.369,-4.003,-3.657,-3.332,-3.019,-2.720,
--2.431,-2.121,-1.762,-1.372,-.994,-.623,-.216,.235,.673,1.059,1.433,1.856,2.318,2.756,3.148,3.527,
-3.909,4.270,4.606,4.964,5.362,5.745,6.059,6.341,6.660,7.013,7.323,7.564,7.811,8.142,8.536,8.903,
-9.185,9.388,9.520,9.568,9.543,9.512,9.555,9.697,9.901,10.113,10.310,10.492,10.652,10.786,10.909,11.029,
-11.127,11.183,11.244,11.396,11.633,11.820,11.868,11.904,12.138,12.549,12.847,12.836,12.711,12.839,13.266,13.624,
-13.576,13.203,12.868,12.797,12.917,13.058,13.145,13.191,13.206,13.204,13.230,13.317,13.437,13.530,13.575,13.591,
-13.598,13.610,13.643,13.700,13.751,13.769,13.762,13.913,13.944,13.965,13.950,13.918,13.915,13.953,14.002,14.028,
-14.030,14.012,13.978,13.954,13.977,14.043,14.101,14.115,14.119,14.154,14.205,14.229,14.236,14.269,14.333,14.394,
-14.439,14.486,14.524,14.526,14.519,14.569,14.673,14.741,14.733,14.749,14.896,15.138,15.362,15.555,15.804,16.149,
-16.580,17.172,18.072,19.265,20.487,21.471,22.199,22.809,23.329,23.666,23.827,23.967,24.185,24.380,24.367,24.060,
-23.495,22.785,22.102,21.619,21.346,21.095,20.674,20.104,19.549,19.092,18.678,18.260,17.867,17.528,17.209,16.878,
-16.540,16.190,15.799,15.374,14.982,14.644,14.292,13.865,13.390,12.909,12.393,11.804,11.196,10.669,10.236,9.820,
-9.371,8.909,8.456,8.011,7.600,7.276,7.043,6.842,6.644,6.494,6.412,6.294,5.981,5.426,4.741,4.101,
-3.595,3.164,2.687,2.140,1.667,1.429,1.394,1.313,.913,.065,-1.206,-2.726,-4.157,-5.170,-5.780,-6.416,
--7.443,-8.670,-9.499,-9.589,-9.192,-8.790,-8.584,-8.477,-8.440,-8.675,-9.395,-10.507,-11.565,-12.083,-11.975,-11.662,
--11.597,-11.682,-11.354,-10.364,-9.263,-8.884,-9.437,-10.406,-11.272,-12.034,-12.940,-14.003,-14.990,-15.702,-16.086,-16.169,
--16.076,-16.054,-16.310,-16.794,-17.238,-17.376,-17.130,-16.734,-16.778,-17.874,-19.953,-21.987,-22.776,-22.113,-20.943,-20.302,
--20.413,-20.901,-21.505,-22.192,-22.773,-22.864,-22.313,-21.406,-20.579,-20.093,-19.986,-20.117,-20.188,-19.921,-19.333,-18.715,
--18.270,-17.948,-17.654,-17.418,-17.199,-16.752,-15.908,-14.828,-13.758,-12.712,-11.718,-11.219,-11.741,-13.055,-14.158,-14.398,
--14.289,-14.833,-16.235,-17.734,-18.638,-19.039,-19.390,-19.808,-20.111,-20.259,-20.392,-20.530,-20.558,-20.503,-20.529,-20.620,
--20.536,-20.205,-19.908,-19.913,-20.116,-20.254,-20.321,-20.515,-20.856,-21.131,-21.252,-21.389,-21.672,-21.994,-22.250,-22.546,
--22.968,-23.299,-23.236,-22.791,-22.245,-21.732,-21.149,-20.507,-20.085,-20.115,-20.558,-21.317,-22.415,-23.746,-24.870,-25.383,
--25.435,-25.561,-26.009,-26.534,-26.874,-27.107,-27.382,-27.599,-27.619,-27.578,-27.726,-28.045,-28.312,-28.481,-28.735,-29.137,
--29.509,-29.732,-29.950,-30.350,-30.902,-31.482,-32.084,-32.758,-33.430,-33.970,-34.410,-34.920,-35.585,-36.333,-37.082,-37.824,
--38.547,-39.202,-39.807,-40.462,-41.222,-42.016,-42.757,-43.447,-44.132,-44.801,-45.408,-45.933,-46.390,-46.789,-47.156,-47.536,
--47.930,-48.278,-48.557,-48.845,-49.234,-49.695,-50.115,-50.431,-50.669,-50.865,-51.031,-51.196,-51.406,-51.675,-51.981,-52.309,
--52.640,-52.917,-53.103,-53.275,-53.553,-53.938,-54.299,-54.574,-54.847,-55.178,-55.475,-55.642,-55.766,-56.045,-56.547,-57.165,
--57.752,-58.216,-58.504,-58.635,-58.736,-58.934,-59.186,-59.332,-59.346,-59.377,-59.502,-59.570,-59.395,-59.016,-58.635,-58.352,
--58.081,-57.697,-57.179,-56.607,-56.087,-55.654,-55.246,-54.852,-54.734,-55.321,-56.657,-58.040,-58.536,-57.937,-56.982,-56.522,
--56.649,-56.845,-56.751,-56.480,-56.218,-55.877,-55.305,-54.620,-54.114,-53.890,-53.749,-53.465,-53.046,-52.665,-52.381,-51.991,
--51.233,-50.152,-49.216,-48.951,-49.391,-49.939,-49.841,-48.843,-47.384,-46.188,-45.666,-45.658,-45.697,-45.460,-44.988,-44.490,
--44.053,-43.616,-43.150,-42.699,-42.226,-41.597,-40.830,-40.205,-39.949,-39.904,-39.670,-39.083,-38.353,-37.720,-37.176,-36.602,
--36.020,-35.545,-35.186,-34.842,-34.442,-33.972,-33.414,-32.764,-32.095,-31.477,-30.866,-30.178,-29.449,-28.799,-28.221,-27.563,
--26.745,-25.880,-25.097,-24.370,-23.591,-22.738,-21.869,-21.025,-20.236,-19.562,-19.027,-18.552,-18.056,-17.580,-17.202,-16.853,
--16.358,-15.670,-14.928,-14.226,-13.465,-12.511,-11.433,-10.480,-9.848,-9.527,-9.343,-9.104,-8.720,-8.232,-7.726,-7.201,
--6.572,-5.828,-5.094,-4.476,-3.908,-3.255,-2.524,-1.863,-1.344,-.869,-.309,.359,1.086,1.816,2.489,3.095,
-3.797,4.880,6.450,8.239,9.853,11.195,12.530,14.120,15.928,17.715,19.294,20.609,21.639,22.383,22.921,23.391,
-23.884,24.411,24.973,25.611,26.320,26.986,27.474,27.797,28.122,28.600,29.240,29.969,30.772,31.686,32.646,33.465,
-33.998,34.305,34.545,34.777,34.938,35.005,35.059,35.137,35.145,34.997,34.778,34.675,34.787,35.074,35.475,35.960,
-36.467,36.889,37.201,37.515,37.969,38.572,39.213,39.778,40.225,40.593,40.978,41.468,42.063,42.690,43.312,43.978,
-44.705,45.377,45.868,46.224,46.629,47.163,47.727,48.232,48.736,49.304,49.827,50.117,50.156,50.138,50.235,50.431,
-50.612,50.745,50.895,51.123,51.432,51.807,52.219,52.607,52.917,53.183,53.524,54.016,54.595,55.158,55.733,56.453,
-57.341,58.215,58.891,59.439,60.122,61.046,61.984,62.613,62.860,62.950,63.129,63.424,63.637,63.511,62.913,61.981,
-61.119,60.751,60.996,61.601,62.220,62.700,63.075,63.369,63.534,63.568,63.589,63.725,63.988,64.262,64.414,64.409,
-64.317,64.228,64.140,63.968,63.682,63.379,63.148,62.888,62.406,61.696,61.033,60.707,60.744,60.947,61.142,61.269,
-61.321,61.324,61.380,61.595,61.928,62.184,62.216,62.089,62.004,62.097,62.346,62.627,62.816,62.850,62.740,62.537,
-62.303,62.112,62.043,62.101,62.171,62.125,61.984,61.876,61.803,61.581,61.101,60.546,60.200,60.131,60.201,60.351,
-60.654,61.044,61.201,60.843,60.069,59.307,58.974,59.211,59.851,60.529,60.917,60.943,60.743,60.379,59.795,59.208,
-59.282,60.500,62.347,63.566,63.481,62.800,62.792,63.831,65.118,65.773,65.778,65.692,65.820,65.985,65.968,65.815,
-65.657,65.484,65.221,64.887,64.563,64.248,63.877,63.452,63.063,62.757,62.459,62.070,61.599,61.161,60.829,60.545,
-60.207,59.803,59.417,59.093,58.767,58.364,57.904,57.452,57.010,56.534,56.038,55.586,55.178,54.733,54.234,53.779,
-53.424,53.056,52.548,51.967,51.511,51.239,51.005,50.671,50.248,49.781,49.236,48.616,48.079,47.776,47.618,47.371,
-46.971,46.582,46.315,46.057,45.684,45.287,45.046,44.931,44.724,44.318,43.858,43.515,43.231,42.799,42.170,41.543,
-41.018,40.142,37.951,33.814,28.417,23.752,21.724,22.612,24.964,27.028,28.097,28.445,28.404,27.936,27.016,25.925,
-24.973,24.169,23.369,22.563,21.848,21.198,20.500,19.730,18.968,18.243,17.553,16.992,16.673,16.496,16.189,15.626,
-14.967,14.426,14.021,13.659,13.327,13.049,12.769,12.419,12.068,11.856,11.777,11.668,11.413,11.065,10.744,10.511,
-10.376,10.316,10.257,10.107,9.855,9.584,9.359,9.173,9.001,8.836,8.646,8.378,8.053,7.760,7.527,7.281,
-7.008,6.826,6.810,6.845,6.799,6.723,6.730,6.741,6.585,6.319,6.218,6.371,6.532,6.467,6.254,6.076,
-5.905,5.585,5.136,4.740,4.473,4.265,4.095,4.018,3.972,3.784,3.416,3.028,2.739,2.495,2.250,2.065,
-1.910,1.579,.997,.455,.252,.221,-.067,-.620,-.879,-.402,.541,1.238,1.258,.732,.041,-.550,
--.976,-1.300,-1.663,-2.198,-2.910,-3.674,-4.329,-4.774,-4.989,-5.044,-5.060,-5.099,-5.116,-5.067,-5.027,-5.101,
--5.245,-5.307,-5.265,-5.279,-5.467,-5.751,-6.017,-6.306,-6.728,-7.245,-7.695,-8.003,-8.247,-8.505,-8.752,-8.950,
--9.127,-9.323,-9.525,-9.715,-9.911,-10.120,-10.297,-10.399,-10.438,-10.455,-10.468,-10.486,-10.530,-10.596,-10.623,-10.569,
--10.476,-10.425,-10.426,-10.418,-10.368,-10.299,-10.225,-10.123,-9.987,-9.864,-9.790,-9.750,-9.709,-9.663,-9.632,-9.612,
--9.588,-9.563,-9.547,-9.536,-9.512,-9.471,-9.425,-9.377,-9.323,-9.261,-9.191,-9.115,-9.043,-8.983,-8.928,-8.856,
--8.762,-8.663,-8.572,-8.469,-8.337,-8.195,-8.077,-7.986,-7.895,-7.793,-7.686,-7.572,-7.438,-7.291,-7.152,-7.030,
--6.917,-6.818,-6.747,-6.685,-6.592,-6.456,-6.310,-6.183,-6.066,-5.939,-5.797,-5.635,-5.446,-5.251,-5.099,-4.990,
--4.864,-4.680,-4.483,-4.337,-4.231,-4.112,-3.985,-3.895,-3.830,-3.723,-3.564,-3.426,-3.347,-3.278,-3.178,-3.097,
--3.089,-3.105,-3.058,-2.959,-2.894,-2.887,-2.882,-2.848,-2.835,-2.876,-2.925,-2.927,-2.899,-2.891,-2.913,-2.944,
--2.979,-3.030,-3.086,-3.126,-3.152,-3.178,-3.201,-3.216,-3.250,-3.322,-3.416,-3.506,-3.614,-3.761,-3.896,-3.931,
--3.877,-3.872,-4.027,-4.303,-4.567,-4.744,-4.861,-4.961,-5.057,-5.153,-5.264,-5.388,-5.498,-5.573,-5.625,-5.678,
--5.736,-5.782,-5.804,-5.810,-5.821,-5.859,-5.924,-5.992,-6.038,-6.055,-6.058,-6.062,-6.075,-6.102,-6.144,-6.195,
--6.246,-6.295,-6.336,-6.353,-6.351,-6.366,-6.428,-6.507,-6.540,-6.513,-6.489,-6.519,-6.575,-6.598,-6.581,-6.572,
--6.584,-6.582,-6.546,-6.504,-6.487,-6.480,-6.443,-6.362,-6.247,-6.106,-5.946,-5.789,-5.670,-5.589,-5.507,-5.383,
--5.212,-5.025,-4.851,-4.701,-4.561,-4.424,-4.300,-4.202,-4.122,-4.027,-3.886,-3.699,-3.498,-3.315,-3.162,-3.027,
--2.888,-2.728,-2.541,-2.331,-2.092,-1.810,-1.483,-1.129,-.779,-.453,-.137,.208,.628,1.131,1.681,2.232,
-2.779,3.349,3.949,4.546,5.106,5.639,6.191,6.811,7.517,8.276,9.014,9.685,10.349,11.109,11.964,12.759,
-13.367,13.826,14.218,14.424,14.155,13.304,12.220,11.583,11.992,13.623,16.212,19.347,22.818,26.654,30.738,34.497,
-37.230,38.809,39.825,40.888,42.013,42.882,43.483,44.108,44.817,45.332,45.524,45.634,45.823,45.893,45.671,45.387,
-45.338,45.466,45.602,45.838,46.100,45.540,43.121,39.059,35.047,32.590,31.506,30.489,28.833,26.993,25.631,24.805,
-24.247,23.886,23.765,23.762,23.747,23.829,24.145,24.546,24.737,24.635,24.350,23.896,23.207,22.430,21.917,21.813,
-21.850,21.652,21.135,20.470,19.782,19.020,18.109,17.097,16.119,15.220,14.282,13.143,11.813,10.494,9.341,8.278,
-7.154,6.036,5.146,4.517,3.883,3.038,2.116,1.402,.955,.582,.096,-.537,-1.248,-1.902,-2.344,-2.567,
--2.817,-3.348,-4.062,-4.594,-4.779,-4.820,-4.939,-5.086,-5.157,-5.285,-5.676,-6.257,-6.778,-7.220,-7.854,-8.817,
--9.853,-10.603,-11.000,-11.253,-11.544,-11.883,-12.216,-12.522,-12.798,-13.024,-13.189,-13.302,-13.379,-13.433,-13.463,-13.457,
--13.421,-13.407,-13.448,-13.474,-13.355,-13.103,-12.921,-12.967,-13.113,-13.071,-12.727,-12.239,-11.795,-11.393,-10.921,-10.344,
--9.754,-9.291,-9.080,-9.179,-9.500,-9.831,-10.004,-10.001,-9.855,-9.544,-9.074,-8.632,-8.525,-8.935,-9.830,-11.056,
--12.395,-13.498,-13.985,-13.746,-13.097,-12.477,-12.027,-11.564,-10.934,-10.246,-9.711,-9.384,-9.158,-8.945,-8.762,-8.648,
--8.580,-8.499,-8.380,-8.240,-8.100,-7.954,-7.789,-7.609,-7.457,-7.369,-7.326,-7.260,-7.136,-6.994,-6.903,-6.878,
--6.880,-6.886,-6.911,-6.968,-7.035,-7.084,-7.124,-7.178,-7.243,-7.298,-7.336,-7.368,-7.392,-7.392,-7.366,-7.328,
--7.267,-7.139,-6.920,-6.641,-6.358,-6.091,-5.830,-5.569,-5.310,-5.031,-4.692,-4.295,-3.894,-3.541,-3.233,-2.941,
--2.653,-2.365,-2.048,-1.676,-1.273,-.893,-.540,-.158,.274,.708,1.096,1.472,1.899,2.369,2.821,3.229,
-3.626,4.029,4.404,4.738,5.077,5.453,5.820,6.125,6.399,6.717,7.071,7.364,7.563,7.764,8.074,8.466,
-8.817,9.057,9.228,9.379,9.482,9.497,9.476,9.528,9.704,9.944,10.167,10.354,10.522,10.671,10.789,10.899,
-11.027,11.145,11.202,11.228,11.333,11.538,11.713,11.771,11.853,12.167,12.635,12.908,12.827,12.726,13.054,13.760,
-14.268,14.126,13.515,12.989,12.860,12.981,13.085,13.104,13.124,13.176,13.217,13.237,13.286,13.393,13.517,13.606,
-13.650,13.673,13.703,13.754,13.815,13.864,13.890,13.913,14.061,14.118,14.164,14.163,14.130,14.118,14.145,14.181,
-14.191,14.180,14.166,14.155,14.152,14.174,14.225,14.274,14.295,14.305,14.331,14.366,14.390,14.419,14.484,14.570,
-14.633,14.663,14.692,14.727,14.741,14.736,14.762,14.830,14.877,14.877,14.907,15.047,15.258,15.445,15.618,15.879,
-16.277,16.788,17.461,18.424,19.670,20.927,21.870,22.421,22.758,23.057,23.352,23.616,23.857,24.071,24.204,24.187,
-23.975,23.535,22.888,22.184,21.637,21.318,21.068,20.687,20.169,19.655,19.224,18.830,18.425,18.034,17.689,17.371,
-17.055,16.742,16.413,16.027,15.583,15.147,14.768,14.413,14.025,13.591,13.112,12.573,11.980,11.401,10.910,10.497,
-10.099,9.679,9.239,8.783,8.338,7.975,7.730,7.538,7.307,7.065,6.914,6.846,6.684,6.282,5.694,5.113,
-4.659,4.311,3.967,3.544,3.043,2.567,2.232,2.004,1.663,.975,-.103,-1.400,-2.655,-3.625,-4.211,-4.595,
--5.203,-6.333,-7.778,-8.943,-9.399,-9.231,-8.828,-8.469,-8.223,-8.157,-8.448,-9.227,-10.352,-11.404,-11.967,-11.988,
--11.831,-11.856,-11.934,-11.559,-10.537,-9.410,-8.965,-9.414,-10.280,-11.069,-11.775,-12.643,-13.682,-14.617,-15.218,-15.474,
--15.499,-15.430,-15.408,-15.523,-15.734,-15.887,-15.843,-15.609,-15.452,-15.896,-17.364,-19.597,-21.550,-22.186,-21.454,-20.300,
--19.694,-19.841,-20.375,-20.957,-21.432,-21.608,-21.267,-20.433,-19.413,-18.534,-17.967,-17.769,-17.883,-18.081,-18.094,-17.890,
--17.663,-17.524,-17.359,-17.057,-16.658,-16.158,-15.380,-14.225,-12.921,-11.784,-10.895,-10.288,-10.283,-11.202,-12.687,-13.793,
--14.040,-14.047,-14.754,-16.213,-17.586,-18.266,-18.513,-18.863,-19.352,-19.651,-19.671,-19.650,-19.722,-19.777,-19.759,-19.794,
--19.914,-19.923,-19.699,-19.437,-19.386,-19.512,-19.619,-19.708,-19.942,-20.301,-20.559,-20.628,-20.703,-20.952,-21.290,-21.589,
--21.890,-22.189,-22.187,-21.558,-20.462,-19.490,-19.068,-19.118,-19.341,-19.616,-19.990,-20.515,-21.256,-22.288,-23.461,-24.331,
--24.594,-24.507,-24.625,-25.133,-25.701,-26.019,-26.176,-26.372,-26.561,-26.610,-26.606,-26.756,-27.052,-27.318,-27.525,-27.823,
--28.243,-28.611,-28.838,-29.074,-29.485,-30.030,-30.588,-31.160,-31.793,-32.408,-32.899,-33.326,-33.873,-34.608,-35.423,-36.207,
--36.947,-37.649,-38.285,-38.874,-39.509,-40.236,-40.985,-41.675,-42.311,-42.947,-43.583,-44.186,-44.742,-45.249,-45.685,-46.049,
--46.389,-46.750,-47.114,-47.457,-47.815,-48.244,-48.727,-49.177,-49.526,-49.756,-49.888,-49.971,-50.089,-50.306,-50.612,-50.950,
--51.290,-51.617,-51.889,-52.087,-52.292,-52.608,-53.014,-53.382,-53.674,-53.978,-54.338,-54.644,-54.814,-54.968,-55.319,-55.922,
--56.627,-57.251,-57.703,-57.964,-58.090,-58.206,-58.405,-58.634,-58.782,-58.865,-58.993,-59.153,-59.162,-58.920,-58.571,-58.331,
--58.227,-58.107,-57.827,-57.346,-56.702,-55.985,-55.297,-54.680,-54.180,-54.052,-54.687,-56.082,-57.494,-57.985,-57.404,-56.559,
--56.264,-56.481,-56.607,-56.357,-55.987,-55.723,-55.399,-54.799,-54.070,-53.546,-53.304,-53.135,-52.880,-52.603,-52.382,-52.094,
--51.527,-50.664,-49.812,-49.405,-49.641,-50.230,-50.530,-50.025,-48.771,-47.371,-46.462,-46.207,-46.252,-46.149,-45.760,-45.242,
--44.754,-44.291,-43.818,-43.402,-43.074,-42.661,-41.961,-41.097,-40.499,-40.404,-40.520,-40.351,-39.761,-39.038,-38.433,-37.897,
--37.299,-36.689,-36.199,-35.817,-35.423,-34.957,-34.443,-33.873,-33.229,-32.563,-31.954,-31.376,-30.743,-30.065,-29.435,-28.848,
--28.185,-27.404,-26.617,-25.921,-25.246,-24.473,-23.617,-22.778,-21.993,-21.232,-20.518,-19.922,-19.437,-18.976,-18.488,-17.997,
--17.512,-16.973,-16.331,-15.597,-14.808,-13.968,-13.087,-12.205,-11.377,-10.636,-9.995,-9.439,-8.927,-8.448,-8.087,-7.920,
--7.834,-7.561,-6.977,-6.258,-5.653,-5.177,-4.643,-3.973,-3.300,-2.744,-2.250,-1.675,-.966,-.169,.638,1.398,
-2.136,3.048,4.389,6.180,8.077,9.687,10.993,12.321,13.906,15.639,17.263,18.660,19.845,20.798,21.479,21.966,
-22.443,23.009,23.611,24.199,24.825,25.532,26.217,26.719,27.032,27.334,27.795,28.427,29.174,30.051,31.088,32.169,
-33.042,33.546,33.774,33.943,34.158,34.376,34.534,34.624,34.618,34.463,34.181,33.919,33.818,33.896,34.110,34.479,
-35.033,35.678,36.218,36.554,36.803,37.159,37.707,38.382,39.050,39.604,40.013,40.341,40.693,41.119,41.604,42.150,
-42.810,43.579,44.328,44.926,45.405,45.906,46.467,46.985,47.392,47.770,48.212,48.661,48.975,49.128,49.250,49.468,
-49.779,50.092,50.350,50.581,50.856,51.226,51.678,52.121,52.457,52.672,52.876,53.207,53.700,54.260,54.786,55.304,
-55.938,56.736,57.570,58.268,58.842,59.482,60.309,61.183,61.832,62.148,62.282,62.463,62.777,63.099,63.187,62.833,
-62.054,61.167,60.614,60.620,61.043,61.587,62.089,62.531,62.880,63.048,63.049,63.064,63.270,63.651,64.020,64.201,
-64.178,64.067,63.990,63.963,63.902,63.751,63.561,63.384,63.127,62.613,61.843,61.092,60.686,60.704,60.969,61.252,
-61.415,61.414,61.298,61.214,61.294,61.488,61.603,61.555,61.505,61.666,62.055,62.481,62.753,62.819,62.716,62.489,
-62.188,61.905,61.756,61.795,61.939,61.989,61.800,61.449,61.177,61.107,61.101,60.931,60.561,60.167,59.951,60.030,
-60.433,61.021,61.393,61.098,60.077,58.831,58.028,57.997,58.613,59.537,60.410,60.950,61.077,60.942,60.699,60.307,
-59.757,59.428,59.853,61.009,62.155,62.660,62.787,63.305,64.424,65.513,65.953,65.873,65.827,66.022,66.198,66.150,
-65.997,65.894,65.774,65.508,65.148,64.832,64.554,64.198,63.752,63.351,63.073,62.826,62.481,62.040,61.603,61.225,
-60.873,60.505,60.137,59.800,59.468,59.077,58.611,58.129,57.699,57.317,56.924,56.478,55.978,55.436,54.870,54.352,
-53.969,53.709,53.432,53.043,52.632,52.363,52.224,52.013,51.589,51.029,50.458,49.862,49.163,48.438,47.897,47.633,
-47.513,47.345,47.059,46.693,46.284,45.867,45.511,45.271,45.111,44.936,44.694,44.412,44.143,43.893,43.578,43.053,
-42.253,41.242,39.954,37.872,34.319,29.412,24.646,22.007,22.275,24.371,26.525,27.824,28.428,28.632,28.321,27.386,
-26.158,25.101,24.305,23.553,22.749,22.006,21.361,20.683,19.884,19.033,18.237,17.548,17.031,16.744,16.580,16.284,
-15.720,15.030,14.439,14.008,13.654,13.326,13.030,12.734,12.392,12.056,11.829,11.710,11.584,11.368,11.104,10.862,
-10.670,10.526,10.427,10.338,10.190,9.957,9.684,9.421,9.184,8.978,8.805,8.622,8.370,8.065,7.784,7.545,
-7.285,7.000,6.792,6.716,6.688,6.633,6.615,6.672,6.647,6.394,6.077,6.031,6.290,6.502,6.386,6.053,
-5.756,5.526,5.254,4.976,4.833,4.834,4.875,4.944,5.086,5.165,4.915,4.286,3.544,2.948,2.517,2.187,
-1.975,1.835,1.564,1.070,.579,.314,.088,-.473,-1.269,-1.656,-1.166,-.098,.800,1.073,.819,.359,
--.107,-.525,-.896,-1.280,-1.774,-2.423,-3.141,-3.774,-4.208,-4.432,-4.538,-4.640,-4.772,-4.869,-4.904,-4.968,
--5.139,-5.326,-5.376,-5.315,-5.346,-5.574,-5.870,-6.093,-6.302,-6.649,-7.126,-7.577,-7.910,-8.173,-8.425,-8.656,
--8.861,-9.079,-9.333,-9.582,-9.795,-9.995,-10.201,-10.377,-10.488,-10.550,-10.594,-10.618,-10.627,-10.653,-10.702,-10.717,
--10.655,-10.571,-10.542,-10.560,-10.551,-10.495,-10.442,-10.402,-10.320,-10.174,-10.028,-9.944,-9.898,-9.831,-9.743,-9.675,
--9.639,-9.615,-9.594,-9.592,-9.599,-9.580,-9.527,-9.468,-9.421,-9.369,-9.287,-9.191,-9.110,-9.054,-9.000,-8.925,
--8.826,-8.719,-8.616,-8.517,-8.412,-8.299,-8.188,-8.085,-7.980,-7.867,-7.753,-7.639,-7.517,-7.377,-7.229,-7.086,
--6.945,-6.803,-6.679,-6.590,-6.516,-6.412,-6.271,-6.123,-5.998,-5.887,-5.775,-5.652,-5.509,-5.337,-5.157,-5.005,
--4.880,-4.734,-4.547,-4.365,-4.232,-4.118,-3.980,-3.840,-3.750,-3.691,-3.595,-3.447,-3.315,-3.235,-3.163,-3.064,
--2.982,-2.962,-2.960,-2.904,-2.808,-2.747,-2.739,-2.732,-2.701,-2.687,-2.720,-2.763,-2.773,-2.763,-2.770,-2.804,
--2.848,-2.899,-2.960,-3.018,-3.060,-3.096,-3.139,-3.180,-3.204,-3.216,-3.236,-3.270,-3.327,-3.420,-3.529,-3.589,
--3.573,-3.576,-3.753,-4.136,-4.580,-4.905,-5.042,-5.043,-4.978,-4.909,-4.897,-4.986,-5.145,-5.289,-5.364,-5.387,
--5.406,-5.445,-5.495,-5.547,-5.601,-5.662,-5.733,-5.812,-5.888,-5.946,-5.987,-6.020,-6.046,-6.064,-6.078,-6.103,
--6.142,-6.188,-6.230,-6.264,-6.283,-6.291,-6.315,-6.381,-6.463,-6.496,-6.456,-6.400,-6.397,-6.440,-6.469,-6.457,
--6.435,-6.430,-6.424,-6.393,-6.350,-6.324,-6.310,-6.270,-6.180,-6.055,-5.920,-5.783,-5.642,-5.509,-5.401,-5.312,
--5.206,-5.053,-4.858,-4.664,-4.499,-4.357,-4.221,-4.097,-3.999,-3.915,-3.798,-3.620,-3.405,-3.206,-3.056,-2.941,
--2.825,-2.680,-2.502,-2.300,-2.078,-1.833,-1.561,-1.270,-.974,-.671,-.351,-.004,.384,.825,1.325,1.858,
-2.387,2.900,3.422,3.969,4.526,5.065,5.584,6.112,6.701,7.399,8.202,9.018,9.750,10.419,11.164,12.052,
-12.950,13.651,14.111,14.458,14.757,14.859,14.529,13.713,12.678,11.929,11.970,13.078,15.241,18.317,22.145,26.401,
-30.432,33.554,35.617,37.097,38.486,39.773,40.730,41.470,42.364,43.455,44.361,44.829,45.051,45.278,45.460,45.482,
-45.456,45.492,45.469,45.381,45.605,46.254,46.397,44.683,41.000,36.938,34.183,32.825,31.677,29.934,27.885,26.148,
-24.888,23.967,23.310,22.796,22.161,21.379,20.926,21.291,22.306,23.294,23.813,23.946,23.897,23.644,23.157,22.657,
-22.418,22.396,22.269,21.809,21.071,20.205,19.246,18.164,17.031,16.008,15.151,14.300,13.262,12.047,10.847,9.754,
-8.639,7.407,6.241,5.419,4.912,4.373,3.565,2.639,1.893,1.394,.971,.458,-.181,-.886,-1.534,-1.975,
--2.209,-2.475,-3.004,-3.711,-4.284,-4.580,-4.738,-4.879,-4.937,-4.898,-4.991,-5.428,-6.078,-6.627,-7.014,-7.495,
--8.244,-9.099,-9.785,-10.240,-10.629,-11.114,-11.698,-12.250,-12.625,-12.786,-12.851,-12.985,-13.222,-13.450,-13.586,-13.697,
--13.887,-14.131,-14.300,-14.284,-14.055,-13.662,-13.240,-12.957,-12.864,-12.810,-12.609,-12.269,-11.957,-11.750,-11.549,-11.234,
--10.803,-10.323,-9.868,-9.543,-9.453,-9.555,-9.646,-9.589,-9.472,-9.430,-9.375,-9.072,-8.477,-7.871,-7.654,-8.112,
--9.334,-11.119,-12.900,-13.963,-13.978,-13.277,-12.480,-11.876,-11.315,-10.626,-9.923,-9.422,-9.136,-8.906,-8.659,-8.478,
--8.428,-8.438,-8.392,-8.269,-8.129,-8.010,-7.894,-7.748,-7.578,-7.417,-7.301,-7.236,-7.199,-7.148,-7.062,-6.951,
--6.855,-6.811,-6.826,-6.879,-6.935,-6.980,-7.031,-7.106,-7.187,-7.241,-7.271,-7.313,-7.384,-7.448,-7.464,-7.440,
--7.405,-7.348,-7.212,-6.972,-6.668,-6.360,-6.066,-5.781,-5.513,-5.265,-4.995,-4.646,-4.224,-3.802,-3.443,-3.141,
--2.855,-2.568,-2.276,-1.950,-1.565,-1.148,-.763,-.419,-.064,.339,.753,1.135,1.513,1.944,2.424,2.890,
-3.315,3.734,4.166,4.567,4.907,5.222,5.558,5.896,6.187,6.448,6.742,7.060,7.314,7.475,7.656,7.975,
-8.385,8.718,8.896,9.006,9.159,9.332,9.436,9.479,9.578,9.797,10.067,10.289,10.450,10.594,10.723,10.813,
-10.890,11.011,11.163,11.264,11.309,11.399,11.588,11.769,11.842,11.912,12.164,12.533,12.716,12.612,12.585,13.056,
-13.895,14.449,14.265,13.590,13.050,12.953,13.097,13.174,13.144,13.147,13.229,13.306,13.328,13.353,13.441,13.568,
-13.668,13.719,13.752,13.802,13.875,13.947,13.996,14.024,14.061,14.201,14.237,14.277,14.283,14.259,14.250,14.280,
-14.320,14.335,14.334,14.346,14.372,14.393,14.404,14.424,14.456,14.487,14.505,14.514,14.522,14.543,14.597,14.690,
-14.785,14.835,14.850,14.881,14.941,14.988,15.000,15.010,15.054,15.113,15.162,15.230,15.360,15.530,15.698,15.891,
-16.184,16.602,17.127,17.824,18.813,20.058,21.264,22.096,22.483,22.631,22.779,23.020,23.331,23.657,23.929,24.077,
-24.075,23.919,23.567,22.980,22.249,21.596,21.173,20.907,20.616,20.227,19.805,19.412,19.030,18.639,18.263,17.919,
-17.593,17.269,16.953,16.628,16.243,15.782,15.298,14.859,14.486,14.144,13.780,13.332,12.765,12.129,11.543,11.090,
-10.742,10.417,10.059,9.646,9.180,8.718,8.359,8.125,7.912,7.623,7.328,7.156,7.067,6.860,6.439,5.944,
-5.570,5.340,5.155,4.949,4.698,4.341,3.811,3.132,2.364,1.485,.435,-.700,-1.658,-2.216,-2.399,-2.455,
--2.703,-3.379,-4.516,-5.874,-7.037,-7.687,-7.805,-7.617,-7.392,-7.324,-7.547,-8.146,-9.100,-10.225,-11.207,-11.758,
--11.836,-11.702,-11.657,-11.683,-11.469,-10.862,-10.180,-9.905,-10.142,-10.578,-10.968,-11.446,-12.239,-13.263,-14.151,-14.638,
--14.763,-14.732,-14.698,-14.688,-14.657,-14.565,-14.436,-14.345,-14.383,-14.700,-15.563,-17.174,-19.259,-20.964,-21.460,-20.723,
--19.579,-18.927,-19.022,-19.524,-19.991,-20.148,-19.875,-19.203,-18.341,-17.544,-16.935,-16.522,-16.341,-16.421,-16.636,-16.773,
--16.781,-16.788,-16.824,-16.705,-16.265,-15.555,-14.687,-13.638,-12.373,-11.052,-9.941,-9.209,-8.992,-9.515,-10.820,-12.379,
--13.385,-13.642,-13.859,-14.794,-16.279,-17.467,-17.924,-18.061,-18.417,-18.931,-19.188,-19.103,-18.984,-19.030,-19.125,-19.158,
--19.221,-19.365,-19.421,-19.242,-18.967,-18.839,-18.888,-18.979,-19.099,-19.347,-19.673,-19.887,-19.958,-20.099,-20.438,-20.829,
--21.109,-21.334,-21.514,-21.313,-20.347,-18.801,-17.451,-16.967,-17.370,-18.232,-19.172,-20.028,-20.761,-21.435,-22.180,-22.971,
--23.523,-23.620,-23.495,-23.628,-24.149,-24.708,-24.979,-25.055,-25.197,-25.434,-25.620,-25.747,-25.940,-26.213,-26.455,-26.655,
--26.927,-27.291,-27.620,-27.860,-28.141,-28.586,-29.139,-29.687,-30.233,-30.816,-31.378,-31.845,-32.296,-32.899,-33.689,-34.538,
--35.329,-36.054,-36.727,-37.336,-37.907,-38.521,-39.213,-39.918,-40.565,-41.169,-41.776,-42.388,-42.979,-43.545,-44.081,-44.551,
--44.940,-45.295,-45.676,-46.084,-46.487,-46.892,-47.333,-47.800,-48.228,-48.551,-48.740,-48.812,-48.844,-48.954,-49.208,-49.560,
--49.919,-50.250,-50.566,-50.855,-51.106,-51.376,-51.740,-52.169,-52.549,-52.852,-53.158,-53.507,-53.809,-54.010,-54.237,-54.678,
--55.352,-56.084,-56.692,-57.102,-57.335,-57.472,-57.619,-57.823,-58.026,-58.170,-58.310,-58.520,-58.707,-58.676,-58.399,-58.091,
--57.955,-57.950,-57.890,-57.646,-57.181,-56.498,-55.660,-54.797,-54.013,-53.410,-53.262,-53.949,-55.422,-56.876,-57.356,-56.765,
--55.965,-55.743,-55.979,-56.057,-55.777,-55.456,-55.266,-54.948,-54.297,-53.543,-53.036,-52.783,-52.555,-52.307,-52.178,-52.122,
--51.821,-51.086,-50.184,-49.643,-49.767,-50.381,-50.952,-50.929,-50.088,-48.722,-47.467,-46.816,-46.725,-46.730,-46.457,-45.940,
--45.425,-44.996,-44.538,-44.024,-43.611,-43.359,-43.020,-42.327,-41.438,-40.856,-40.828,-41.012,-40.886,-40.334,-39.655,-39.087,
--38.569,-37.980,-37.379,-36.881,-36.452,-35.977,-35.432,-34.866,-34.271,-33.616,-32.955,-32.383,-31.886,-31.355,-30.752,-30.139,
--29.533,-28.863,-28.110,-27.365,-26.684,-25.989,-25.192,-24.349,-23.577,-22.876,-22.160,-21.421,-20.765,-20.249,-19.797,-19.299,
--18.741,-18.176,-17.622,-17.020,-16.290,-15.423,-14.513,-13.695,-13.004,-12.331,-11.538,-10.604,-9.634,-8.758,-8.108,-7.831,
--7.950,-8.186,-8.082,-7.445,-6.572,-5.920,-5.615,-5.404,-5.037,-4.524,-3.993,-3.480,-2.938,-2.336,-1.655,-.851,
-.108,1.220,2.530,4.130,5.996,7.877,9.500,10.863,12.205,13.676,15.179,16.553,17.777,18.892,19.845,20.555,
-21.088,21.632,22.287,22.985,23.651,24.319,25.026,25.672,26.107,26.336,26.550,26.933,27.526,28.299,29.251,30.355,
-31.452,32.307,32.812,33.076,33.289,33.542,33.814,34.044,34.162,34.078,33.757,33.320,32.986,32.884,32.984,33.234,
-33.678,34.344,35.092,35.683,36.016,36.225,36.529,37.033,37.692,38.384,38.979,39.407,39.698,39.946,40.226,40.563,
-40.995,41.588,42.341,43.137,43.851,44.485,45.119,45.751,46.285,46.669,46.970,47.278,47.602,47.896,48.153,48.422,
-48.753,49.155,49.602,50.038,50.422,50.774,51.163,51.603,52.004,52.267,52.418,52.603,52.941,53.417,53.927,54.406,
-54.894,55.488,56.229,57.018,57.696,58.222,58.741,59.416,60.211,60.912,61.362,61.620,61.878,62.252,62.681,62.950,
-62.826,62.236,61.393,60.690,60.411,60.549,60.924,61.401,61.912,62.347,62.570,62.595,62.629,62.862,63.269,63.648,
-63.840,63.851,63.791,63.758,63.762,63.738,63.640,63.486,63.306,63.035,62.552,61.869,61.211,60.843,60.843,61.080,
-61.359,61.524,61.487,61.285,61.097,61.089,61.198,61.212,61.080,61.033,61.310,61.837,62.312,62.526,62.506,62.361,
-62.123,61.800,61.474,61.284,61.294,61.416,61.448,61.232,60.822,60.479,60.426,60.587,60.638,60.339,59.805,59.439,
-59.617,60.365,61.247,61.577,60.934,59.581,58.305,57.763,58.008,58.670,59.411,60.055,60.444,60.456,60.196,59.909,
-59.669,59.359,59.044,59.093,59.743,60.747,61.734,62.740,64.032,65.452,66.358,66.392,65.979,65.812,66.045,66.289,
-66.271,66.132,66.059,65.975,65.728,65.382,65.092,64.840,64.482,64.010,63.579,63.278,63.025,62.721,62.374,62.023,
-61.644,61.210,60.772,60.395,60.054,59.665,59.217,58.784,58.421,58.085,57.701,57.252,56.770,56.265,55.715,55.143,
-54.653,54.346,54.197,54.068,53.879,53.697,53.598,53.476,53.091,52.362,51.496,50.769,50.210,49.625,48.906,48.210,
-47.781,47.657,47.626,47.440,47.028,46.520,46.091,45.806,45.609,45.441,45.311,45.213,45.057,44.775,44.449,44.184,
-43.855,43.167,41.983,40.349,38.068,34.600,29.875,25.114,22.252,22.245,24.186,26.334,27.735,28.513,28.913,28.726,
-27.786,26.476,25.362,24.560,23.802,22.967,22.205,21.569,20.877,19.994,19.038,18.207,17.567,17.099,16.795,16.577,
-16.258,15.714,15.051,14.474,14.049,13.691,13.335,12.996,12.683,12.365,12.058,11.825,11.684,11.572,11.431,11.263,
-11.085,10.892,10.692,10.513,10.361,10.197,9.990,9.745,9.473,9.187,8.924,8.722,8.556,8.355,8.099,7.832,
-7.576,7.309,7.052,6.879,6.796,6.711,6.589,6.521,6.530,6.455,6.187,5.926,5.975,6.291,6.490,6.337,
-5.993,5.701,5.454,5.157,4.904,4.874,5.063,5.347,5.735,6.265,6.692,6.568,5.736,4.544,3.467,2.700,
-2.204,1.918,1.737,1.464,1.021,.597,.365,.130,-.454,-1.308,-1.862,-1.693,-1.015,-.389,-.115,-.099,
--.175,-.328,-.578,-.876,-1.171,-1.496,-1.908,-2.390,-2.853,-3.226,-3.511,-3.777,-4.081,-4.403,-4.661,-4.833,
--5.005,-5.235,-5.449,-5.540,-5.567,-5.696,-5.963,-6.215,-6.343,-6.453,-6.708,-7.098,-7.488,-7.817,-8.127,-8.436,
--8.699,-8.911,-9.135,-9.401,-9.669,-9.912,-10.151,-10.388,-10.565,-10.649,-10.686,-10.726,-10.762,-10.771,-10.778,-10.801,
--10.805,-10.756,-10.695,-10.679,-10.682,-10.644,-10.581,-10.563,-10.579,-10.532,-10.386,-10.229,-10.141,-10.087,-9.990,-9.860,
--9.764,-9.722,-9.691,-9.658,-9.650,-9.662,-9.648,-9.584,-9.510,-9.459,-9.408,-9.320,-9.214,-9.134,-9.083,-9.021,
--8.921,-8.797,-8.677,-8.565,-8.454,-8.349,-8.260,-8.181,-8.089,-7.974,-7.849,-7.733,-7.621,-7.494,-7.352,-7.212,
--7.079,-6.933,-6.767,-6.608,-6.485,-6.383,-6.264,-6.112,-5.955,-5.819,-5.701,-5.587,-5.471,-5.346,-5.205,-5.054,
--4.908,-4.764,-4.603,-4.429,-4.277,-4.155,-4.027,-3.869,-3.718,-3.618,-3.547,-3.445,-3.310,-3.201,-3.138,-3.077,
--2.986,-2.899,-2.854,-2.820,-2.753,-2.667,-2.616,-2.607,-2.602,-2.588,-2.589,-2.615,-2.640,-2.647,-2.654,-2.681,
--2.721,-2.765,-2.817,-2.880,-2.934,-2.967,-2.994,-3.039,-3.097,-3.145,-3.168,-3.170,-3.173,-3.205,-3.275,-3.349,
--3.382,-3.409,-3.554,-3.890,-4.325,-4.673,-4.841,-4.883,-4.882,-4.848,-4.779,-4.737,-4.801,-4.958,-5.109,-5.180,
--5.182,-5.173,-5.194,-5.256,-5.354,-5.469,-5.580,-5.676,-5.761,-5.838,-5.905,-5.969,-6.039,-6.099,-6.126,-6.122,
--6.120,-6.143,-6.181,-6.208,-6.219,-6.223,-6.227,-6.240,-6.276,-6.327,-6.359,-6.345,-6.304,-6.284,-6.297,-6.315,
--6.313,-6.296,-6.277,-6.246,-6.190,-6.127,-6.088,-6.070,-6.029,-5.934,-5.805,-5.684,-5.585,-5.480,-5.349,-5.214,
--5.104,-5.008,-4.880,-4.703,-4.506,-4.324,-4.156,-3.985,-3.823,-3.705,-3.624,-3.527,-3.368,-3.163,-2.966,-2.815,
--2.699,-2.582,-2.433,-2.246,-2.025,-1.777,-1.508,-1.233,-.978,-.746,-.505,-.209,.161,.583,1.036,1.511,
-2.010,2.522,3.039,3.555,4.065,4.568,5.077,5.612,6.173,6.761,7.412,8.175,9.021,9.845,10.589,11.330,
-12.176,13.085,13.873,14.401,14.708,14.927,15.111,15.148,14.823,14.010,12.880,11.928,11.721,12.583,14.528,17.403,
-20.933,24.626,27.908,30.520,32.658,34.604,36.349,37.772,39.017,40.381,41.840,43.032,43.763,44.246,44.713,45.099,
-45.280,45.339,45.360,45.228,44.995,45.141,45.909,46.463,45.414,42.426,38.810,36.131,34.598,33.259,31.422,29.287,
-27.287,25.516,23.956,22.720,21.739,20.634,19.309,18.423,18.771,20.275,21.972,23.045,23.487,23.683,23.739,23.523,
-23.119,22.849,22.842,22.833,22.491,21.762,20.799,19.700,18.474,17.212,16.097,15.196,14.346,13.350,12.231,11.153,
-10.131,8.990,7.688,6.507,5.759,5.365,4.926,4.191,3.307,2.548,1.974,1.446,.845,.160,-.563,-1.222,
--1.688,-1.957,-2.231,-2.715,-3.365,-3.951,-4.354,-4.633,-4.828,-4.897,-4.903,-5.074,-5.529,-6.087,-6.508,-6.824,
--7.277,-7.955,-8.677,-9.248,-9.699,-10.215,-10.908,-11.711,-12.418,-12.827,-12.907,-12.861,-12.938,-13.179,-13.430,-13.600,
--13.808,-14.187,-14.650,-14.943,-14.885,-14.494,-13.930,-13.385,-12.988,-12.719,-12.449,-12.123,-11.864,-11.801,-11.860,-11.827,
--11.610,-11.290,-10.934,-10.511,-10.052,-9.711,-9.566,-9.493,-9.359,-9.214,-9.153,-9.064,-8.715,-8.089,-7.476,-7.236,
--7.606,-8.704,-10.451,-12.365,-13.670,-13.874,-13.197,-12.282,-11.532,-10.888,-10.212,-9.595,-9.201,-8.982,-8.757,-8.486,
--8.296,-8.258,-8.267,-8.194,-8.048,-7.917,-7.834,-7.753,-7.633,-7.479,-7.315,-7.168,-7.072,-7.044,-7.052,-7.025,
--6.929,-6.812,-6.761,-6.802,-6.882,-6.940,-6.973,-7.030,-7.130,-7.234,-7.299,-7.344,-7.417,-7.523,-7.609,-7.638,
--7.625,-7.596,-7.526,-7.365,-7.103,-6.790,-6.471,-6.156,-5.844,-5.553,-5.287,-4.998,-4.634,-4.199,-3.762,-3.378,
--3.045,-2.736,-2.443,-2.157,-1.840,-1.460,-1.046,-.660,-.317,.033,.427,.836,1.222,1.604,2.035,2.517,
-2.993,3.430,3.855,4.285,4.681,5.010,5.305,5.618,5.941,6.219,6.454,6.706,6.987,7.225,7.389,7.578,
-7.905,8.317,8.626,8.745,8.802,8.959,9.208,9.414,9.537,9.679,9.923,10.206,10.424,10.570,10.703,10.822,
-10.879,10.896,10.969,11.127,11.287,11.393,11.512,11.716,11.930,12.034,12.067,12.179,12.374,12.462,12.382,12.409,
-12.847,13.555,13.996,13.828,13.302,12.944,12.964,13.138,13.197,13.149,13.149,13.242,13.331,13.365,13.399,13.494,
-13.624,13.730,13.797,13.858,13.940,14.038,14.123,14.171,14.187,14.201,14.343,14.337,14.352,14.365,14.364,14.374,
-14.419,14.479,14.517,14.535,14.563,14.609,14.640,14.640,14.638,14.662,14.699,14.716,14.703,14.692,14.721,14.805,
-14.920,15.020,15.075,15.101,15.143,15.211,15.268,15.290,15.302,15.347,15.425,15.513,15.611,15.736,15.894,16.085,
-16.331,16.650,17.040,17.530,18.241,19.271,20.493,21.557,22.181,22.400,22.479,22.632,22.893,23.214,23.549,23.834,
-23.984,23.961,23.796,23.492,22.993,22.312,21.615,21.096,20.789,20.563,20.289,19.947,19.574,19.191,18.816,18.472,
-18.158,17.847,17.516,17.174,16.823,16.440,16.002,15.534,15.091,14.713,14.398,14.077,13.638,13.020,12.301,11.661,
-11.219,10.945,10.723,10.455,10.094,9.641,9.171,8.791,8.523,8.264,7.938,7.618,7.402,7.221,6.905,6.454,
-6.080,5.937,5.941,5.946,5.932,5.892,5.636,4.909,3.694,2.253,.847,-.404,-1.371,-1.816,-1.629,-1.077,
--.681,-.802,-1.425,-2.300,-3.198,-3.996,-4.625,-5.037,-5.264,-5.460,-5.842,-6.559,-7.598,-8.806,-9.977,-10.905,
--11.429,-11.507,-11.298,-11.072,-10.988,-10.991,-10.973,-10.949,-10.983,-11.027,-10.980,-10.926,-11.152,-11.826,-12.755,-13.541,
--13.947,-14.044,-14.040,-14.049,-14.024,-13.861,-13.567,-13.327,-13.382,-13.828,-14.600,-15.671,-17.112,-18.811,-20.226,-20.688,
--20.048,-18.906,-18.102,-18.019,-18.402,-18.721,-18.605,-18.030,-17.249,-16.572,-16.113,-15.761,-15.406,-15.132,-15.092,-15.257,
--15.448,-15.587,-15.747,-15.903,-15.804,-15.225,-14.233,-13.090,-11.962,-10.843,-9.732,-8.759,-8.166,-8.231,-9.121,-10.632,
--12.120,-12.979,-13.281,-13.737,-14.860,-16.313,-17.334,-17.663,-17.748,-18.047,-18.458,-18.623,-18.511,-18.417,-18.502,-18.638,
--18.710,-18.794,-18.930,-18.962,-18.761,-18.456,-18.286,-18.296,-18.374,-18.490,-18.706,-18.974,-19.160,-19.298,-19.588,-20.064,
--20.477,-20.644,-20.705,-20.785,-20.584,-19.649,-18.069,-16.612,-16.037,-16.469,-17.520,-18.769,-19.950,-20.863,-21.439,-21.824,
--22.196,-22.502,-22.586,-22.549,-22.720,-23.211,-23.728,-23.969,-24.014,-24.150,-24.463,-24.796,-25.042,-25.249,-25.459,-25.634,
--25.784,-25.995,-26.293,-26.595,-26.867,-27.201,-27.677,-28.236,-28.776,-29.289,-29.814,-30.329,-30.812,-31.339,-32.021,-32.842,
--33.672,-34.420,-35.097,-35.728,-36.306,-36.859,-37.457,-38.129,-38.816,-39.461,-40.070,-40.672,-41.262,-41.822,-42.361,-42.887,
--43.377,-43.816,-44.240,-44.686,-45.142,-45.580,-46.006,-46.442,-46.864,-47.217,-47.464,-47.606,-47.674,-47.739,-47.896,-48.191,
--48.561,-48.913,-49.229,-49.552,-49.891,-50.221,-50.557,-50.947,-51.376,-51.763,-52.078,-52.380,-52.702,-52.995,-53.243,-53.562,
--54.085,-54.784,-55.482,-56.024,-56.370,-56.578,-56.735,-56.920,-57.138,-57.329,-57.476,-57.663,-57.933,-58.145,-58.105,-57.832,
--57.566,-57.469,-57.463,-57.373,-57.110,-56.649,-55.958,-55.071,-54.125,-53.253,-52.583,-52.413,-53.133,-54.672,-56.178,-56.679,
--56.106,-55.345,-55.154,-55.379,-55.432,-55.185,-54.966,-54.865,-54.556,-53.881,-53.154,-52.715,-52.489,-52.241,-52.022,-52.001,
--51.997,-51.559,-50.610,-49.705,-49.498,-50.074,-50.911,-51.360,-51.054,-50.035,-48.699,-47.615,-47.146,-47.141,-47.103,-46.712,
--46.111,-45.599,-45.209,-44.749,-44.193,-43.767,-43.575,-43.334,-42.715,-41.846,-41.243,-41.185,-41.376,-41.320,-40.877,-40.286,
--39.748,-39.231,-38.662,-38.099,-37.604,-37.114,-36.542,-35.915,-35.301,-34.676,-33.996,-33.326,-32.781,-32.351,-31.901,-31.354,
--30.763,-30.176,-29.553,-28.860,-28.138,-27.423,-26.668,-25.836,-25.003,-24.269,-23.617,-22.944,-22.228,-21.561,-21.014,-20.535,
--20.024,-19.455,-18.876,-18.316,-17.717,-16.980,-16.077,-15.133,-14.333,-13.732,-13.165,-12.396,-11.346,-10.138,-9.002,-8.191,
--7.905,-8.105,-8.366,-8.115,-7.180,-6.025,-5.305,-5.223,-5.422,-5.449,-5.155,-4.655,-4.106,-3.614,-3.221,-2.827,
--2.186,-1.088,.442,2.205,4.033,5.863,7.638,9.277,10.752,12.118,13.415,14.623,15.743,16.835,17.925,18.920,
-19.719,20.357,20.974,21.655,22.379,23.115,23.878,24.639,25.262,25.616,25.735,25.819,26.078,26.608,27.405,28.406,
-29.486,30.468,31.224,31.758,32.168,32.531,32.869,33.188,33.478,33.646,33.539,33.112,32.556,32.162,32.078,32.255,
-32.623,33.192,33.941,34.692,35.222,35.487,35.661,35.954,36.447,37.085,37.757,38.349,38.788,39.072,39.262,39.427,
-39.636,39.981,40.547,41.315,42.151,42.930,43.643,44.338,45.006,45.574,45.997,46.294,46.512,46.708,46.954,47.299,
-47.719,48.162,48.635,49.185,49.787,50.337,50.775,51.152,51.518,51.829,52.024,52.156,52.353,52.673,53.062,53.461,
-53.885,54.391,55.022,55.770,56.556,57.239,57.732,58.124,58.608,59.269,59.978,60.558,60.980,61.367,61.822,62.310,
-62.669,62.706,62.318,61.598,60.817,60.258,60.058,60.208,60.636,61.213,61.734,62.020,62.095,62.173,62.433,62.836,
-63.207,63.425,63.501,63.505,63.489,63.479,63.468,63.433,63.349,63.188,62.901,62.444,61.877,61.376,61.099,61.064,
-61.184,61.352,61.460,61.405,61.194,61.015,61.051,61.224,61.269,61.099,60.949,61.073,61.410,61.691,61.790,61.797,
-61.784,61.670,61.377,60.993,60.701,60.611,60.682,60.761,60.668,60.351,59.990,59.864,60.018,60.135,59.870,59.295,
-58.927,59.246,60.189,61.113,61.283,60.494,59.263,58.386,58.251,58.619,59.050,59.393,59.722,59.973,59.935,59.605,
-59.278,59.162,59.128,58.999,58.890,59.074,59.649,60.588,61.979,63.845,65.713,66.778,66.724,66.135,65.842,66.045,
-66.321,66.350,66.252,66.211,66.144,65.903,65.561,65.280,65.035,64.689,64.248,63.849,63.537,63.225,62.883,62.580,
-62.319,61.978,61.504,61.015,60.626,60.272,59.838,59.377,59.045,58.836,58.542,58.028,57.412,56.912,56.567,56.219,
-55.754,55.263,54.927,54.801,54.772,54.717,54.624,54.504,54.242,53.634,52.650,51.565,50.750,50.300,49.962,49.445,
-48.758,48.174,47.892,47.814,47.664,47.300,46.844,46.499,46.311,46.161,45.987,45.862,45.814,45.689,45.343,44.903,
-44.624,44.473,44.069,43.085,41.432,38.922,35.128,30.113,25.184,22.291,22.322,24.277,26.385,27.748,28.568,29.090,
-29.034,28.171,26.883,25.762,24.931,24.122,23.236,22.445,21.785,21.024,20.029,18.991,18.170,17.600,17.164,16.809,
-16.508,16.149,15.632,15.035,14.527,14.146,13.783,13.366,12.949,12.593,12.287,12.012,11.797,11.673,11.612,11.552,
-11.455,11.302,11.086,10.826,10.564,10.330,10.121,9.926,9.727,9.490,9.195,8.888,8.647,8.483,8.328,8.125,
-7.876,7.602,7.319,7.079,6.947,6.896,6.817,6.672,6.547,6.476,6.348,6.112,5.956,6.081,6.364,6.469,
-6.287,6.040,5.892,5.709,5.351,4.978,4.859,5.034,5.397,5.988,6.864,7.705,7.883,7.073,5.612,4.136,
-3.042,2.375,2.023,1.806,1.499,1.029,.585,.354,.179,-.282,-1.064,-1.782,-2.093,-2.061,-1.951,-1.840,
--1.628,-1.320,-1.097,-1.094,-1.252,-1.438,-1.597,-1.760,-1.961,-2.214,-2.517,-2.867,-3.263,-3.702,-4.151,-4.551,
--4.872,-5.150,-5.419,-5.646,-5.806,-5.965,-6.207,-6.482,-6.644,-6.672,-6.718,-6.912,-7.202,-7.476,-7.742,-8.071,
--8.442,-8.756,-8.988,-9.208,-9.460,-9.717,-9.970,-10.252,-10.543,-10.749,-10.820,-10.828,-10.854,-10.896,-10.909,-10.902,
--10.904,-10.900,-10.863,-10.820,-10.802,-10.782,-10.723,-10.668,-10.688,-10.745,-10.718,-10.573,-10.417,-10.339,-10.287,-10.174,
--10.023,-9.922,-9.881,-9.838,-9.773,-9.732,-9.730,-9.712,-9.644,-9.562,-9.508,-9.456,-9.368,-9.257,-9.170,-9.109,
--9.031,-8.918,-8.795,-8.683,-8.572,-8.449,-8.332,-8.240,-8.157,-8.052,-7.923,-7.800,-7.698,-7.596,-7.468,-7.325,
--7.193,-7.073,-6.932,-6.756,-6.575,-6.426,-6.307,-6.180,-6.022,-5.852,-5.699,-5.568,-5.446,-5.326,-5.205,-5.083,
--4.955,-4.813,-4.653,-4.482,-4.322,-4.190,-4.069,-3.927,-3.762,-3.613,-3.504,-3.408,-3.289,-3.163,-3.071,-3.021,
--2.970,-2.893,-2.810,-2.743,-2.681,-2.612,-2.551,-2.517,-2.506,-2.501,-2.502,-2.516,-2.533,-2.538,-2.543,-2.569,
--2.611,-2.643,-2.664,-2.698,-2.753,-2.806,-2.836,-2.856,-2.893,-2.953,-3.016,-3.065,-3.093,-3.116,-3.161,-3.234,
--3.305,-3.366,-3.485,-3.740,-4.080,-4.316,-4.321,-4.202,-4.181,-4.338,-4.542,-4.647,-4.664,-4.708,-4.820,-4.938,
--5.000,-5.009,-5.015,-5.058,-5.156,-5.303,-5.461,-5.590,-5.685,-5.765,-5.840,-5.907,-5.970,-6.044,-6.115,-6.148,
--6.135,-6.116,-6.131,-6.163,-6.174,-6.162,-6.151,-6.151,-6.147,-6.134,-6.133,-6.158,-6.188,-6.193,-6.171,-6.147,
--6.138,-6.139,-6.134,-6.107,-6.050,-5.966,-5.880,-5.823,-5.792,-5.752,-5.666,-5.544,-5.430,-5.346,-5.266,-5.160,
--5.034,-4.921,-4.822,-4.700,-4.532,-4.338,-4.147,-3.955,-3.748,-3.546,-3.398,-3.313,-3.245,-3.136,-2.973,-2.788,
--2.616,-2.467,-2.329,-2.177,-1.995,-1.775,-1.523,-1.252,-.979,-.727,-.500,-.264,.030,.401,.824,1.262,
-1.704,2.164,2.658,3.186,3.724,4.232,4.702,5.182,5.734,6.353,6.977,7.584,8.246,9.030,9.893,10.732,
-11.514,12.300,13.129,13.926,14.560,14.955,15.152,15.267,15.371,15.360,14.989,14.135,13.019,12.115,11.828,12.323,
-13.645,15.792,18.581,21.600,24.467,27.085,29.541,31.846,33.959,35.961,37.956,39.813,41.248,42.228,43.049,43.903,
-44.628,45.013,45.124,45.107,44.937,44.687,44.782,45.470,46.090,45.469,43.277,40.530,38.425,37.067,35.712,33.921,
-31.889,29.779,27.439,24.943,22.806,21.316,20.085,18.724,17.693,17.883,19.409,21.306,22.569,23.078,23.301,23.464,
-23.415,23.128,22.892,22.905,22.976,22.776,22.217,21.412,20.411,19.184,17.829,16.587,15.563,14.602,13.522,12.381,
-11.356,10.420,9.352,8.105,6.971,6.254,5.875,5.461,4.789,3.969,3.200,2.521,1.850,1.149,.438,-.258,
--.888,-1.369,-1.702,-2.037,-2.526,-3.138,-3.714,-4.157,-4.478,-4.697,-4.846,-5.045,-5.418,-5.893,-6.247,-6.426,
--6.685,-7.285,-8.143,-8.930,-9.462,-9.867,-10.376,-11.070,-11.836,-12.470,-12.806,-12.848,-12.791,-12.859,-13.087,-13.352,
--13.600,-13.926,-14.395,-14.873,-15.135,-15.062,-14.696,-14.154,-13.567,-13.032,-12.557,-12.108,-11.749,-11.657,-11.881,-12.175,
--12.223,-11.990,-11.683,-11.404,-11.023,-10.459,-9.878,-9.494,-9.323,-9.241,-9.178,-9.082,-8.834,-8.394,-7.996,-7.974,
--8.391,-9.033,-9.787,-10.759,-11.908,-12.799,-12.966,-12.433,-11.660,-11.000,-10.443,-9.887,-9.404,-9.111,-8.942,-8.733,
--8.469,-8.272,-8.192,-8.129,-7.994,-7.830,-7.719,-7.655,-7.575,-7.459,-7.332,-7.204,-7.067,-6.946,-6.889,-6.893,
--6.888,-6.822,-6.733,-6.707,-6.769,-6.863,-6.929,-6.974,-7.044,-7.148,-7.254,-7.342,-7.434,-7.551,-7.666,-7.737,
--7.761,-7.765,-7.751,-7.673,-7.495,-7.241,-6.960,-6.672,-6.365,-6.037,-5.706,-5.379,-5.028,-4.624,-4.180,-3.731,
--3.303,-2.905,-2.550,-2.249,-1.978,-1.683,-1.328,-.942,-.577,-.241,.113,.518,.945,1.352,1.746,2.173,
-2.645,3.119,3.557,3.965,4.356,4.712,5.018,5.310,5.632,5.961,6.228,6.427,6.641,6.921,7.209,7.438,
-7.658,7.971,8.349,8.624,8.711,8.741,8.904,9.206,9.490,9.670,9.831,10.066,10.332,10.530,10.661,10.793,
-10.918,10.959,10.919,10.922,11.056,11.257,11.425,11.575,11.784,12.025,12.184,12.228,12.258,12.338,12.393,12.374,
-12.410,12.672,13.080,13.324,13.226,12.965,12.852,12.965,13.115,13.143,13.099,13.109,13.188,13.261,13.309,13.387,
-13.524,13.678,13.802,13.900,14.000,14.108,14.212,14.297,14.349,14.358,14.343,14.512,14.488,14.497,14.533,14.567,
-14.599,14.650,14.713,14.754,14.767,14.786,14.827,14.861,14.865,14.860,14.881,14.915,14.919,14.890,14.880,14.935,
-15.052,15.187,15.305,15.393,15.458,15.508,15.546,15.571,15.591,15.625,15.684,15.761,15.852,15.959,16.097,16.275,
-16.505,16.788,17.098,17.425,17.871,18.621,19.732,20.944,21.820,22.152,22.155,22.207,22.467,22.827,23.165,23.474,
-23.749,23.895,23.834,23.617,23.330,22.960,22.446,21.839,21.304,20.941,20.693,20.431,20.093,19.703,19.307,18.936,
-18.611,18.324,18.037,17.716,17.358,16.986,16.615,16.244,15.868,15.494,15.145,14.829,14.490,14.010,13.315,12.500,
-11.782,11.321,11.093,10.951,10.763,10.464,10.060,9.620,9.241,8.948,8.668,8.348,8.032,7.757,7.434,6.964,
-6.451,6.165,6.224,6.469,6.697,6.860,6.894,6.514,5.410,3.664,1.769,.192,-.920,-1.560,-1.622,-1.061,
--.191,.428,.469,.099,-.315,-.627,-.977,-1.510,-2.177,-2.849,-3.528,-4.369,-5.497,-6.856,-8.256,-9.500,
--10.455,-11.019,-11.141,-10.900,-10.537,-10.339,-10.466,-10.872,-11.351,-11.649,-11.605,-11.298,-11.033,-11.122,-11.610,-12.258,
--12.789,-13.116,-13.319,-13.482,-13.588,-13.549,-13.308,-12.961,-12.786,-13.067,-13.825,-14.807,-15.801,-16.874,-18.149,-19.375,
--19.949,-19.496,-18.352,-17.328,-16.989,-17.208,-17.403,-17.123,-16.419,-15.699,-15.280,-15.092,-14.817,-14.313,-13.790,-13.554,
--13.654,-13.900,-14.159,-14.448,-14.701,-14.629,-13.966,-12.805,-11.551,-10.529,-9.733,-8.979,-8.243,-7.803,-8.046,-9.091,
--10.576,-11.861,-12.577,-12.989,-13.700,-14.950,-16.316,-17.200,-17.485,-17.552,-17.729,-17.948,-18.000,-17.919,-17.908,-18.030,
--18.163,-18.240,-18.332,-18.443,-18.426,-18.202,-17.922,-17.790,-17.808,-17.853,-17.910,-18.061,-18.290,-18.499,-18.731,-19.142,
--19.688,-20.054,-20.060,-19.925,-19.888,-19.726,-18.977,-17.654,-16.429,-15.985,-16.413,-17.356,-18.489,-19.618,-20.510,-20.972,
--21.108,-21.222,-21.441,-21.634,-21.744,-21.956,-22.394,-22.875,-23.139,-23.226,-23.393,-23.749,-24.140,-24.408,-24.563,-24.679,
--24.778,-24.879,-25.049,-25.318,-25.630,-25.943,-26.306,-26.778,-27.318,-27.835,-28.304,-28.765,-29.251,-29.788,-30.425,-31.188,
--32.010,-32.779,-33.456,-34.078,-34.672,-35.230,-35.769,-36.353,-37.011,-37.698,-38.362,-38.993,-39.599,-40.171,-40.703,-41.216,
--41.726,-42.224,-42.709,-43.202,-43.706,-44.188,-44.633,-45.064,-45.487,-45.849,-46.097,-46.252,-46.382,-46.527,-46.705,-46.945,
--47.262,-47.611,-47.937,-48.252,-48.617,-49.032,-49.437,-49.799,-50.156,-50.535,-50.907,-51.247,-51.575,-51.902,-52.204,-52.497,
--52.883,-53.445,-54.122,-54.746,-55.199,-55.484,-55.679,-55.868,-56.099,-56.347,-56.557,-56.739,-56.979,-57.288,-57.501,-57.444,
--57.170,-56.913,-56.801,-56.745,-56.604,-56.329,-55.883,-55.201,-54.301,-53.329,-52.437,-51.760,-51.602,-52.353,-53.932,-55.482,
--56.039,-55.550,-54.877,-54.726,-54.915,-54.909,-54.657,-54.499,-54.466,-54.195,-53.556,-52.907,-52.567,-52.411,-52.202,-52.021,
--51.998,-51.852,-51.143,-49.996,-49.191,-49.355,-50.282,-51.189,-51.455,-50.962,-49.932,-48.742,-47.829,-47.470,-47.497,-47.429,
--46.975,-46.317,-45.787,-45.407,-44.954,-44.393,-43.980,-43.844,-43.697,-43.169,-42.333,-41.676,-41.519,-41.668,-41.692,-41.408,
--40.937,-40.418,-39.867,-39.289,-38.746,-38.247,-37.700,-37.053,-36.374,-35.739,-35.106,-34.417,-33.741,-33.199,-32.780,-32.342,
--31.803,-31.224,-30.675,-30.124,-29.504,-28.812,-28.079,-27.309,-26.500,-25.706,-24.986,-24.327,-23.669,-22.993,-22.348,-21.767,
--21.227,-20.679,-20.108,-19.521,-18.922,-18.281,-17.546,-16.689,-15.782,-14.972,-14.341,-13.787,-13.087,-12.094,-10.857,-9.603,
--8.656,-8.266,-8.369,-8.477,-8.008,-6.857,-5.585,-4.909,-5.017,-5.469,-5.699,-5.479,-4.923,-4.265,-3.734,-3.462,
--3.330,-2.933,-1.865,-.094,2.002,4.004,5.775,7.420,9.034,10.564,11.894,12.986,13.924,14.851,15.857,16.918,
-17.935,18.834,19.608,20.291,20.925,21.568,22.294,23.124,23.955,24.609,24.974,25.093,25.139,25.316,25.777,26.558,
-27.547,28.531,29.350,30.003,30.597,31.186,31.722,32.166,32.571,32.974,33.244,33.147,32.626,31.947,31.492,31.449,
-31.745,32.255,32.923,33.679,34.346,34.759,34.937,35.079,35.377,35.875,36.498,37.140,37.717,38.170,38.473,38.632,
-38.702,38.811,39.135,39.774,40.644,41.543,42.335,43.032,43.696,44.325,44.875,45.315,45.627,45.802,45.913,46.125,
-46.542,47.091,47.627,48.133,48.719,49.412,50.085,50.618,51.023,51.360,51.614,51.771,51.906,52.122,52.408,52.684,
-52.952,53.314,53.836,54.494,55.244,56.046,56.793,57.347,57.701,58.036,58.531,59.168,59.801,60.357,60.889,61.439,
-61.948,62.301,62.398,62.178,61.636,60.878,60.125,59.627,59.553,59.913,60.521,61.079,61.378,61.461,61.554,61.821,
-62.228,62.634,62.941,63.118,63.161,63.100,63.022,63.024,63.112,63.198,63.156,62.907,62.461,61.943,61.524,61.296,
-61.226,61.240,61.299,61.347,61.282,61.100,60.992,61.158,61.499,61.678,61.524,61.225,61.039,60.984,60.931,60.890,
-60.972,61.128,61.128,60.851,60.438,60.117,59.989,60.031,60.162,60.228,60.064,59.703,59.412,59.377,59.421,59.225,
-58.825,58.689,59.188,60.098,60.735,60.593,59.810,59.019,58.758,59.024,59.385,59.521,59.534,59.679,59.921,59.964,
-59.710,59.437,59.415,59.539,59.514,59.250,58.914,58.725,58.955,59.981,61.958,64.334,66.075,66.598,66.319,66.076,
-66.196,66.396,66.413,66.348,66.340,66.287,66.052,65.722,65.452,65.211,64.884,64.505,64.192,63.914,63.546,63.111,
-62.771,62.539,62.227,61.737,61.233,60.872,60.567,60.158,59.712,59.416,59.226,58.850,58.167,57.459,57.088,57.042,
-56.946,56.508,55.840,55.292,55.065,55.049,54.999,54.782,54.412,53.904,53.199,52.283,51.338,50.658,50.358,50.226,
-49.924,49.339,48.678,48.221,48.011,47.861,47.606,47.288,47.049,46.910,46.764,46.565,46.401,46.318,46.181,45.851,
-45.427,45.142,45.005,44.724,43.980,42.526,39.954,35.801,30.360,25.237,22.462,22.723,24.758,26.718,27.832,28.481,
-28.992,29.060,28.375,27.240,26.190,25.346,24.485,23.552,22.723,22.002,21.145,20.060,18.992,18.208,17.687,17.255,
-16.847,16.479,16.090,15.604,15.084,14.663,14.332,13.949,13.447,12.925,12.499,12.177,11.918,11.730,11.642,11.627,
-11.616,11.555,11.421,11.207,10.922,10.596,10.278,10.013,9.827,9.694,9.526,9.253,8.909,8.602,8.391,8.233,
-8.061,7.843,7.580,7.288,7.028,6.882,6.844,6.816,6.732,6.621,6.499,6.312,6.078,5.965,6.074,6.232,
-6.184,5.962,5.838,5.884,5.828,5.467,4.991,4.735,4.780,5.039,5.574,6.486,7.494,7.933,7.368,6.020,
-4.516,3.346,2.658,2.363,2.223,1.936,1.381,.766,.371,.161,-.176,-.811,-1.575,-2.216,-2.666,-2.957,
--3.023,-2.775,-2.312,-1.907,-1.762,-1.864,-2.064,-2.223,-2.289,-2.305,-2.372,-2.570,-2.885,-3.254,-3.650,-4.085,
--4.551,-4.995,-5.371,-5.667,-5.897,-6.107,-6.364,-6.672,-6.920,-7.001,-6.969,-7.004,-7.177,-7.385,-7.533,-7.692,
--7.978,-8.360,-8.706,-8.972,-9.219,-9.480,-9.725,-9.959,-10.237,-10.545,-10.776,-10.868,-10.890,-10.936,-10.999,-11.023,
--11.008,-10.994,-10.983,-10.952,-10.914,-10.893,-10.867,-10.815,-10.785,-10.832,-10.902,-10.874,-10.731,-10.591,-10.532,-10.490,
--10.379,-10.232,-10.142,-10.107,-10.050,-9.948,-9.866,-9.836,-9.810,-9.743,-9.662,-9.602,-9.543,-9.447,-9.327,-9.222,
--9.133,-9.034,-8.923,-8.825,-8.738,-8.630,-8.490,-8.349,-8.229,-8.111,-7.975,-7.835,-7.723,-7.637,-7.539,-7.408,
--7.264,-7.138,-7.025,-6.891,-6.721,-6.541,-6.387,-6.265,-6.144,-5.992,-5.816,-5.646,-5.504,-5.378,-5.251,-5.122,
--4.999,-4.878,-4.739,-4.569,-4.389,-4.232,-4.102,-3.975,-3.830,-3.679,-3.546,-3.431,-3.310,-3.175,-3.050,-2.957,
--2.890,-2.827,-2.761,-2.692,-2.618,-2.540,-2.474,-2.437,-2.420,-2.405,-2.392,-2.396,-2.412,-2.416,-2.409,-2.423,
--2.472,-2.525,-2.542,-2.536,-2.552,-2.602,-2.657,-2.695,-2.722,-2.752,-2.794,-2.847,-2.910,-2.979,-3.053,-3.140,
--3.233,-3.312,-3.398,-3.565,-3.836,-4.071,-4.057,-3.772,-3.481,-3.496,-3.845,-4.270,-4.524,-4.593,-4.613,-4.669,
--4.745,-4.808,-4.863,-4.930,-5.029,-5.171,-5.347,-5.512,-5.622,-5.684,-5.742,-5.813,-5.878,-5.927,-5.980,-6.041,
--6.079,-6.077,-6.066,-6.081,-6.104,-6.097,-6.064,-6.048,-6.058,-6.054,-6.008,-5.955,-5.953,-5.999,-6.036,-6.018,
--5.965,-5.926,-5.918,-5.915,-5.886,-5.827,-5.750,-5.670,-5.600,-5.548,-5.503,-5.440,-5.340,-5.217,-5.103,-5.009,
--4.923,-4.832,-4.734,-4.622,-4.480,-4.303,-4.112,-3.927,-3.743,-3.546,-3.350,-3.193,-3.086,-3.005,-2.908,-2.778,
--2.619,-2.445,-2.273,-2.110,-1.943,-1.755,-1.542,-1.317,-1.088,-.848,-.588,-.308,-.009,.321,.691,1.093,
-1.509,1.930,2.359,2.816,3.320,3.859,4.385,4.860,5.324,5.868,6.518,7.195,7.817,8.418,9.111,9.940,
-10.825,11.653,12.389,13.074,13.755,14.419,14.973,15.319,15.458,15.514,15.570,15.520,15.155,14.418,13.490,12.631,
-12.038,11.923,12.546,14.036,16.215,18.733,21.355,24.025,26.715,29.377,32.013,34.606,36.961,38.827,40.219,41.444,
-42.699,43.822,44.567,44.925,45.020,44.886,44.636,44.642,45.126,45.605,45.231,43.827,42.171,41.020,40.215,39.126,
-37.595,35.893,33.926,31.216,27.830,24.708,22.652,21.403,20.227,19.126,18.870,19.818,21.291,22.343,22.749,22.906,
-23.056,23.056,22.827,22.587,22.529,22.543,22.419,22.120,21.691,21.019,19.953,18.601,17.292,16.187,15.114,13.886,
-12.613,11.549,10.701,9.818,8.766,7.737,6.977,6.456,5.930,5.248,4.463,3.665,2.864,2.060,1.304,.636,
-.033,-.526,-1.017,-1.447,-1.895,-2.428,-3.003,-3.520,-3.925,-4.218,-4.431,-4.673,-5.098,-5.707,-6.233,-6.414,
--6.389,-6.643,-7.472,-8.633,-9.634,-10.244,-10.627,-11.030,-11.526,-12.025,-12.405,-12.592,-12.614,-12.607,-12.716,-12.979,
--13.331,-13.730,-14.170,-14.591,-14.879,-14.978,-14.923,-14.725,-14.333,-13.746,-13.076,-12.444,-11.923,-11.626,-11.707,-12.122,
--12.508,-12.502,-12.141,-11.770,-11.552,-11.282,-10.741,-10.029,-9.443,-9.162,-9.146,-9.233,-9.186,-8.828,-8.320,-8.212,
--8.926,-10.186,-11.201,-11.493,-11.338,-11.271,-11.403,-11.438,-11.197,-10.825,-10.496,-10.179,-9.798,-9.422,-9.159,-8.981,
--8.784,-8.560,-8.385,-8.264,-8.118,-7.924,-7.752,-7.648,-7.558,-7.425,-7.278,-7.176,-7.111,-7.018,-6.889,-6.781,
--6.732,-6.707,-6.665,-6.622,-6.630,-6.700,-6.794,-6.882,-6.966,-7.058,-7.145,-7.222,-7.314,-7.447,-7.591,-7.683,
--7.703,-7.701,-7.720,-7.734,-7.671,-7.510,-7.296,-7.074,-6.837,-6.558,-6.233,-5.874,-5.483,-5.057,-4.608,-4.157,
--3.702,-3.234,-2.776,-2.380,-2.072,-1.810,-1.526,-1.195,-.848,-.522,-.205,.150,.567,1.019,1.460,1.878,
-2.306,2.763,3.225,3.653,4.036,4.384,4.702,4.998,5.306,5.649,5.984,6.235,6.400,6.595,6.911,7.298,
-7.635,7.903,8.191,8.520,8.773,8.861,8.888,9.038,9.342,9.653,9.859,10.014,10.210,10.423,10.571,10.665,
-10.783,10.923,10.986,10.945,10.920,11.037,11.262,11.472,11.628,11.803,12.029,12.233,12.343,12.393,12.454,12.526,
-12.565,12.591,12.674,12.812,12.911,12.914,12.888,12.931,13.027,13.083,13.068,13.051,13.088,13.152,13.205,13.276,
-13.414,13.603,13.777,13.910,14.031,14.158,14.272,14.358,14.429,14.493,14.525,14.512,14.713,14.694,14.711,14.776,
-14.847,14.895,14.936,14.978,14.998,14.993,14.995,15.030,15.071,15.082,15.073,15.080,15.094,15.085,15.058,15.073,
-15.167,15.314,15.464,15.603,15.736,15.846,15.900,15.895,15.881,15.905,15.968,16.035,16.093,16.167,16.289,16.455,
-16.650,16.874,17.130,17.387,17.649,18.061,18.853,20.053,21.282,22.010,22.070,21.842,21.840,22.200,22.681,23.067,
-23.382,23.689,23.883,23.823,23.555,23.261,23.012,22.711,22.282,21.799,21.380,21.036,20.689,20.294,19.876,19.471,
-19.091,18.741,18.426,18.135,17.835,17.502,17.150,16.812,16.505,16.217,15.922,15.615,15.293,14.910,14.368,13.611,
-12.736,11.969,11.482,11.255,11.133,10.968,10.704,10.359,9.988,9.651,9.358,9.066,8.741,8.404,8.061,7.641,
-7.106,6.603,6.399,6.597,7.024,7.421,7.627,7.485,6.725,5.187,3.153,1.255,-.041,-.738,-1.047,-1.000,
--.522,.231,.853,1.082,1.048,1.039,1.099,.996,.528,-.260,-1.189,-2.180,-3.298,-4.613,-6.081,-7.562,
--8.901,-9.968,-10.649,-10.879,-10.708,-10.349,-10.115,-10.252,-10.772,-11.406,-11.787,-11.744,-11.451,-11.255,-11.334,-11.567,
--11.743,-11.845,-12.035,-12.413,-12.871,-13.195,-13.246,-13.044,-12.770,-12.716,-13.124,-13.954,-14.881,-15.643,-16.355,-17.312,
--18.452,-19.189,-18.948,-17.838,-16.639,-16.074,-16.150,-16.263,-15.893,-15.125,-14.469,-14.240,-14.223,-13.956,-13.288,-12.544,
--12.145,-12.184,-12.454,-12.776,-13.120,-13.390,-13.281,-12.529,-11.276,-10.031,-9.214,-8.790,-8.427,-7.978,-7.726,-8.091,
--9.143,-10.458,-11.504,-12.155,-12.770,-13.753,-15.075,-16.294,-17.019,-17.269,-17.336,-17.417,-17.478,-17.451,-17.400,-17.426,
--17.516,-17.591,-17.648,-17.742,-17.828,-17.776,-17.575,-17.393,-17.367,-17.422,-17.421,-17.398,-17.500,-17.744,-18.021,-18.326,
--18.765,-19.280,-19.583,-19.514,-19.287,-19.133,-18.858,-18.073,-16.871,-15.938,-15.855,-16.522,-17.437,-18.293,-19.074,-19.711,
--20.040,-20.098,-20.172,-20.433,-20.750,-20.974,-21.197,-21.573,-22.023,-22.336,-22.501,-22.710,-23.061,-23.419,-23.636,-23.731,
--23.803,-23.893,-24.000,-24.167,-24.431,-24.755,-25.085,-25.441,-25.875,-26.373,-26.853,-27.277,-27.691,-28.174,-28.779,-29.510,
--30.315,-31.103,-31.807,-32.438,-33.042,-33.633,-34.188,-34.719,-35.284,-35.916,-36.585,-37.245,-37.874,-38.472,-39.038,-39.580,
--40.114,-40.639,-41.150,-41.657,-42.181,-42.703,-43.184,-43.623,-44.051,-44.453,-44.746,-44.894,-44.987,-45.155,-45.428,-45.747,
--46.062,-46.373,-46.680,-46.980,-47.314,-47.740,-48.232,-48.685,-49.028,-49.304,-49.596,-49.939,-50.319,-50.715,-51.095,-51.432,
--51.754,-52.159,-52.708,-53.326,-53.864,-54.240,-54.484,-54.688,-54.921,-55.202,-55.493,-55.749,-55.990,-56.281,-56.590,-56.747,
--56.620,-56.308,-56.045,-55.935,-55.878,-55.752,-55.511,-55.099,-54.424,-53.501,-52.504,-51.618,-50.991,-50.913,-51.732,-53.334,
--54.885,-55.485,-55.108,-54.563,-54.458,-54.579,-54.457,-54.138,-54.002,-54.048,-53.867,-53.314,-52.747,-52.488,-52.406,-52.255,
--52.062,-51.888,-51.459,-50.492,-49.333,-48.824,-49.392,-50.529,-51.338,-51.373,-50.774,-49.857,-48.882,-48.130,-47.816,-47.812,
--47.686,-47.175,-46.481,-45.950,-45.606,-45.207,-44.693,-44.305,-44.186,-44.078,-43.617,-42.827,-42.131,-41.858,-41.916,-41.974,
--41.829,-41.486,-41.003,-40.419,-39.804,-39.240,-38.716,-38.135,-37.459,-36.771,-36.139,-35.516,-34.845,-34.183,-33.637,-33.195,
--32.734,-32.186,-31.612,-31.082,-30.561,-29.968,-29.285,-28.560,-27.835,-27.120,-26.415,-25.725,-25.046,-24.376,-23.727,-23.103,
--22.494,-21.890,-21.300,-20.715,-20.096,-19.419,-18.711,-18.001,-17.263,-16.462,-15.650,-14.936,-14.337,-13.700,-12.820,-11.629,
--10.313,-9.237,-8.705,-8.673,-8.686,-8.224,-7.221,-6.184,-5.705,-5.881,-6.276,-6.386,-6.035,-5.348,-4.549,-3.878,
--3.526,-3.443,-3.204,-2.274,-.496,1.737,3.858,5.623,7.180,8.718,10.180,11.372,12.246,12.986,13.808,14.763,
-15.765,16.745,17.701,18.601,19.355,19.933,20.457,21.108,21.931,22.786,23.497,23.991,24.294,24.484,24.694,25.095,
-25.781,26.647,27.473,28.146,28.757,29.445,30.193,30.871,31.443,32.015,32.612,33.004,32.873,32.193,31.352,30.847,
-30.889,31.349,32.001,32.715,33.408,33.962,34.279,34.406,34.525,34.804,35.276,35.866,36.472,37.026,37.492,37.827,
-37.980,37.982,38.023,38.368,39.131,40.143,41.118,41.915,42.588,43.212,43.772,44.238,44.623,44.924,45.102,45.201,
-45.402,45.844,46.447,47.022,47.531,48.108,48.821,49.559,50.190,50.697,51.102,51.373,51.509,51.627,51.837,52.101,
-52.312,52.501,52.811,53.308,53.922,54.604,55.371,56.170,56.827,57.244,57.551,57.962,58.534,59.170,59.805,60.461,
-61.114,61.638,61.925,61.977,61.834,61.464,60.828,60.023,59.333,59.064,59.319,59.906,60.471,60.774,60.849,60.915,
-61.140,61.531,62.001,62.448,62.759,62.841,62.719,62.568,62.576,62.775,63.021,63.120,62.952,62.535,62.011,61.570,
-61.311,61.206,61.190,61.225,61.252,61.167,60.981,60.920,61.200,61.695,62.003,61.882,61.477,61.052,60.698,60.407,
-60.275,60.380,60.550,60.488,60.149,59.790,59.614,59.566,59.546,59.588,59.696,59.689,59.417,59.018,58.746,58.612,
-58.446,58.300,58.514,59.220,60.000,60.231,59.749,59.032,58.712,58.989,59.524,59.849,59.826,59.717,59.812,60.067,
-60.199,60.093,59.956,59.998,60.131,60.077,59.657,58.875,57.879,57.115,57.349,59.118,61.996,64.704,66.201,66.526,
-66.438,66.448,66.506,66.467,66.409,66.418,66.372,66.158,65.875,65.657,65.440,65.109,64.737,64.463,64.227,63.857,
-63.380,63.009,62.778,62.467,61.951,61.423,61.097,60.887,60.563,60.124,59.749,59.427,58.923,58.193,57.589,57.467,
-57.687,57.696,57.122,56.154,55.312,54.918,54.843,54.704,54.244,53.513,52.726,52.030,51.434,50.937,50.607,50.486,
-50.438,50.220,49.713,49.064,48.535,48.248,48.108,47.958,47.759,47.568,47.416,47.259,47.067,46.876,46.718,46.555,
-46.343,46.111,45.905,45.667,45.278,44.613,43.355,40.815,36.399,30.629,25.456,22.976,23.597,25.730,27.439,28.117,
-28.365,28.666,28.764,28.295,27.420,26.540,25.735,24.842,23.869,22.992,22.201,21.278,20.172,19.128,18.372,17.848,
-17.385,16.941,16.545,16.152,15.697,15.241,14.879,14.558,14.117,13.518,12.902,12.417,12.081,11.850,11.716,11.676,
-11.675,11.651,11.587,11.488,11.322,11.044,10.664,10.264,9.954,9.791,9.724,9.614,9.351,8.958,8.564,8.265,
-8.056,7.880,7.699,7.488,7.227,6.952,6.754,6.680,6.681,6.672,6.610,6.465,6.217,5.928,5.756,5.752,
-5.748,5.565,5.310,5.248,5.393,5.426,5.127,4.676,4.397,4.362,4.466,4.752,5.364,6.155,6.625,6.369,
-5.470,4.367,3.483,3.038,3.024,3.166,3.023,2.355,1.394,.605,.178,-.112,-.563,-1.209,-1.886,-2.462,
--2.875,-3.063,-2.981,-2.704,-2.426,-2.334,-2.493,-2.824,-3.148,-3.302,-3.275,-3.217,-3.275,-3.449,-3.660,-3.899,
--4.236,-4.691,-5.180,-5.598,-5.913,-6.162,-6.409,-6.700,-7.009,-7.232,-7.295,-7.274,-7.318,-7.464,-7.598,-7.651,
--7.720,-7.933,-8.263,-8.590,-8.875,-9.163,-9.462,-9.716,-9.924,-10.153,-10.421,-10.646,-10.770,-10.848,-10.948,-11.048,
--11.086,-11.067,-11.045,-11.036,-11.019,-10.993,-10.978,-10.959,-10.924,-10.913,-10.964,-11.024,-10.991,-10.863,-10.751,-10.715,
--10.687,-10.588,-10.458,-10.383,-10.351,-10.282,-10.161,-10.056,-10.008,-9.975,-9.910,-9.824,-9.747,-9.667,-9.560,-9.435,
--9.312,-9.190,-9.068,-8.965,-8.895,-8.822,-8.702,-8.539,-8.375,-8.228,-8.079,-7.921,-7.782,-7.682,-7.595,-7.480,
--7.334,-7.188,-7.065,-6.950,-6.819,-6.664,-6.496,-6.342,-6.216,-6.103,-5.971,-5.804,-5.628,-5.473,-5.340,-5.205,
--5.063,-4.928,-4.806,-4.669,-4.499,-4.315,-4.154,-4.020,-3.891,-3.757,-3.628,-3.511,-3.388,-3.249,-3.110,-2.991,
--2.886,-2.782,-2.689,-2.622,-2.570,-2.499,-2.411,-2.342,-2.315,-2.304,-2.282,-2.262,-2.264,-2.275,-2.268,-2.256,
--2.282,-2.348,-2.404,-2.415,-2.409,-2.430,-2.480,-2.535,-2.580,-2.621,-2.652,-2.670,-2.694,-2.755,-2.856,-2.980,
--3.103,-3.202,-3.262,-3.316,-3.441,-3.648,-3.801,-3.726,-3.452,-3.250,-3.368,-3.765,-4.170,-4.382,-4.427,-4.434,
--4.473,-4.540,-4.628,-4.745,-4.881,-5.023,-5.178,-5.346,-5.490,-5.563,-5.584,-5.614,-5.682,-5.759,-5.814,-5.859,
--5.912,-5.959,-5.980,-5.987,-5.997,-5.998,-5.964,-5.914,-5.901,-5.934,-5.955,-5.914,-5.835,-5.789,-5.804,-5.829,
--5.808,-5.746,-5.691,-5.667,-5.650,-5.616,-5.573,-5.537,-5.496,-5.431,-5.354,-5.296,-5.255,-5.185,-5.054,-4.890,
--4.752,-4.663,-4.596,-4.509,-4.382,-4.220,-4.040,-3.859,-3.687,-3.522,-3.363,-3.214,-3.078,-2.948,-2.816,-2.682,
--2.548,-2.408,-2.251,-2.080,-1.903,-1.714,-1.503,-1.285,-1.086,-.910,-.714,-.453,-.124,.241,.610,.977,
-1.353,1.753,2.174,2.599,3.019,3.464,3.966,4.502,5.010,5.481,5.993,6.618,7.324,8.013,8.651,9.313,
-10.080,10.935,11.768,12.470,13.024,13.521,14.078,14.699,15.236,15.539,15.637,15.693,15.779,15.771,15.502,14.929,
-14.125,13.187,12.289,11.736,11.838,12.715,14.287,16.422,18.983,21.786,24.648,27.521,30.436,33.273,35.754,37.729,
-39.357,40.882,42.340,43.590,44.503,44.990,45.001,44.709,44.558,44.835,45.211,45.078,44.382,43.735,43.543,43.404,
-42.720,41.538,40.259,38.695,36.123,32.470,28.820,26.312,24.885,23.633,22.189,21.149,21.083,21.700,22.271,22.500,
-22.600,22.716,22.717,22.520,22.273,22.106,21.959,21.777,21.642,21.551,21.219,20.362,19.098,17.841,16.785,15.712,
-14.393,12.986,11.847,11.072,10.411,9.622,8.730,7.884,7.125,6.382,5.614,4.819,3.976,3.070,2.176,1.417,
-.824,.314,-.200,-.736,-1.288,-1.856,-2.413,-2.903,-3.311,-3.660,-3.949,-4.183,-4.485,-5.031,-5.775,-6.362,
--6.513,-6.459,-6.776,-7.762,-9.112,-10.281,-11.018,-11.450,-11.781,-12.074,-12.305,-12.449,-12.496,-12.469,-12.452,-12.563,
--12.859,-13.317,-13.856,-14.342,-14.624,-14.663,-14.604,-14.602,-14.588,-14.331,-13.744,-13.010,-12.365,-11.913,-11.711,-11.842,
--12.227,-12.501,-12.328,-11.815,-11.396,-11.289,-11.243,-10.899,-10.227,-9.520,-9.092,-9.058,-9.264,-9.336,-8.964,-8.362,
--8.280,-9.262,-10.895,-12.052,-12.013,-11.130,-10.303,-10.022,-10.103,-10.189,-10.162,-10.067,-9.905,-9.657,-9.384,-9.164,
--8.986,-8.805,-8.633,-8.498,-8.361,-8.164,-7.931,-7.750,-7.628,-7.488,-7.290,-7.108,-7.022,-7.000,-6.944,-6.818,
--6.677,-6.578,-6.520,-6.485,-6.479,-6.517,-6.592,-6.688,-6.800,-6.930,-7.049,-7.119,-7.160,-7.238,-7.383,-7.528,
--7.584,-7.550,-7.518,-7.548,-7.592,-7.565,-7.450,-7.293,-7.121,-6.913,-6.652,-6.348,-6.002,-5.594,-5.129,-4.651,
--4.193,-3.731,-3.236,-2.747,-2.340,-2.035,-1.770,-1.477,-1.156,-.843,-.551,-.246,.115,.544,1.016,1.494,
-1.952,2.398,2.846,3.292,3.707,4.073,4.400,4.710,5.018,5.343,5.691,6.016,6.251,6.403,6.597,6.949,
-7.417,7.843,8.153,8.418,8.706,8.956,9.077,9.119,9.240,9.497,9.784,9.991,10.134,10.286,10.439,10.534,
-10.590,10.689,10.845,10.966,10.996,11.015,11.144,11.382,11.616,11.773,11.904,12.077,12.280,12.443,12.542,12.613,
-12.683,12.735,12.750,12.747,12.762,12.813,12.893,12.981,13.048,13.059,13.019,12.987,13.017,13.096,13.167,13.227,
-13.336,13.529,13.749,13.920,14.044,14.174,14.323,14.442,14.507,14.561,14.637,14.702,14.713,14.914,14.893,14.901,
-14.972,15.063,15.126,15.162,15.188,15.198,15.192,15.200,15.243,15.286,15.287,15.252,15.226,15.220,15.215,15.219,
-15.277,15.410,15.580,15.740,15.895,16.059,16.203,16.269,16.257,16.238,16.272,16.342,16.391,16.417,16.482,16.628,
-16.816,16.987,17.144,17.327,17.536,17.767,18.147,18.919,20.126,21.366,22.047,21.984,21.626,21.587,22.024,22.618,
-23.078,23.434,23.805,24.094,24.096,23.826,23.518,23.324,23.149,22.837,22.381,21.892,21.428,20.971,20.515,20.094,
-19.711,19.332,18.939,18.565,18.246,17.972,17.705,17.423,17.131,16.840,16.554,16.272,15.989,15.679,15.280,14.706,
-13.930,13.053,12.282,11.777,11.521,11.363,11.165,10.891,10.584,10.287,10.009,9.724,9.387,8.981,8.543,8.126,
-7.727,7.326,6.991,6.883,7.091,7.502,7.862,7.904,7.410,6.238,4.481,2.574,1.090,.299,.006,-.130,
--.188,-.007,.461,1.013,1.416,1.652,1.830,1.958,1.894,1.514,.828,-.082,-1.162,-2.393,-3.756,-5.228,
--6.766,-8.255,-9.500,-10.307,-10.614,-10.535,-10.296,-10.150,-10.287,-10.723,-11.242,-11.544,-11.524,-11.378,-11.366,-11.474,
--11.435,-11.106,-10.732,-10.728,-11.247,-12.035,-12.693,-13.001,-12.992,-12.867,-12.892,-13.273,-13.978,-14.727,-15.283,-15.758,
--16.485,-17.506,-18.301,-18.228,-17.232,-16.006,-15.339,-15.344,-15.430,-15.013,-14.160,-13.440,-13.227,-13.283,-13.083,-12.438,
--11.670,-11.213,-11.176,-11.372,-11.630,-11.901,-12.063,-11.813,-10.934,-9.635,-8.488,-7.919,-7.830,-7.790,-7.589,-7.500,
--7.935,-8.932,-10.087,-11.018,-11.768,-12.678,-13.912,-15.224,-16.213,-16.715,-16.894,-16.983,-17.062,-17.082,-17.030,-16.971,
--16.959,-16.977,-16.998,-17.049,-17.143,-17.200,-17.127,-16.970,-16.895,-16.969,-17.056,-17.024,-16.956,-17.053,-17.348,-17.697,
--18.024,-18.403,-18.832,-19.125,-19.161,-19.061,-18.912,-18.446,-17.352,-15.911,-14.989,-15.194,-16.243,-17.346,-18.044,-18.432,
--18.708,-18.887,-18.978,-19.143,-19.484,-19.869,-20.135,-20.345,-20.657,-21.054,-21.373,-21.580,-21.809,-22.129,-22.426,-22.594,
--22.688,-22.817,-22.994,-23.170,-23.356,-23.601,-23.901,-24.212,-24.542,-24.939,-25.399,-25.846,-26.240,-26.640,-27.149,-27.812,
--28.583,-29.371,-30.106,-30.774,-31.410,-32.040,-32.647,-33.203,-33.724,-34.266,-34.859,-35.483,-36.100,-36.697,-37.278,-37.857,
--38.443,-39.031,-39.597,-40.127,-40.643,-41.169,-41.687,-42.159,-42.588,-43.001,-43.365,-43.595,-43.689,-43.786,-44.032,-44.424,
--44.841,-45.193,-45.484,-45.752,-46.034,-46.388,-46.864,-47.410,-47.883,-48.191,-48.391,-48.615,-48.946,-49.374,-49.845,-50.292,
--50.672,-51.011,-51.403,-51.902,-52.446,-52.910,-53.237,-53.475,-53.710,-53.991,-54.313,-54.641,-54.945,-55.241,-55.548,-55.795,
--55.826,-55.581,-55.226,-55.007,-54.994,-55.045,-55.012,-54.833,-54.443,-53.753,-52.784,-51.735,-50.832,-50.273,-50.330,-51.265,
--52.888,-54.392,-54.983,-54.695,-54.268,-54.191,-54.216,-53.959,-53.577,-53.493,-53.667,-53.621,-53.159,-52.635,-52.406,-52.368,
--52.234,-51.939,-51.512,-50.814,-49.797,-48.922,-48.884,-49.786,-50.911,-51.441,-51.203,-50.555,-49.808,-49.063,-48.447,-48.134,
--48.043,-47.816,-47.246,-46.554,-46.077,-45.818,-45.507,-45.050,-44.658,-44.489,-44.349,-43.927,-43.218,-42.543,-42.186,-42.122,
--42.138,-42.067,-41.845,-41.448,-40.885,-40.245,-39.635,-39.069,-38.472,-37.809,-37.138,-36.505,-35.880,-35.225,-34.590,-34.047,
--33.583,-33.108,-32.577,-32.029,-31.503,-30.960,-30.340,-29.640,-28.922,-28.241,-27.608,-26.990,-26.350,-25.678,-25.007,-24.373,
--23.766,-23.146,-22.513,-21.903,-21.309,-20.658,-19.916,-19.158,-18.485,-17.871,-17.190,-16.403,-15.635,-15.000,-14.408,-13.603,
--12.436,-11.067,-9.894,-9.253,-9.128,-9.139,-8.871,-8.258,-7.635,-7.359,-7.431,-7.516,-7.307,-6.756,-5.992,-5.152,
--4.381,-3.860,-3.622,-3.349,-2.507,-.831,1.385,3.558,5.352,6.859,8.277,9.571,10.558,11.236,11.858,12.651,
-13.588,14.516,15.404,16.334,17.284,18.088,18.660,19.145,19.765,20.564,21.396,22.144,22.800,23.372,23.817,24.149,
-24.509,25.026,25.655,26.251,26.792,27.419,28.222,29.099,29.896,30.626,31.417,32.210,32.648,32.387,31.509,30.552,
-30.093,30.319,31.003,31.808,32.536,33.130,33.564,33.812,33.915,34.002,34.214,34.611,35.139,35.701,36.232,36.713,
-37.095,37.287,37.284,37.304,37.671,38.504,39.584,40.582,41.377,42.058,42.683,43.191,43.556,43.864,44.179,44.440,
-44.613,44.822,45.221,45.783,46.350,46.876,47.465,48.175,48.920,49.607,50.222,50.738,51.056,51.162,51.214,51.380,
-51.629,51.834,52.007,52.297,52.767,53.328,53.922,54.601,55.359,56.042,56.530,56.920,57.402,58.020,58.684,59.357,
-60.087,60.825,61.369,61.572,61.506,61.341,61.098,60.644,59.923,59.147,58.685,58.762,59.271,59.868,60.264,60.416,
-60.485,60.645,60.983,61.484,62.039,62.457,62.583,62.450,62.284,62.294,62.494,62.733,62.844,62.734,62.394,61.909,
-61.437,61.110,60.959,60.945,61.003,61.029,60.908,60.684,60.627,60.960,61.524,61.878,61.768,61.344,60.880,60.481,
-60.168,60.033,60.084,60.079,59.781,59.343,59.156,59.296,59.408,59.231,58.974,58.953,59.101,59.085,58.787,58.387,
-58.033,57.752,57.691,58.117,58.975,59.696,59.709,59.084,58.481,58.452,58.953,59.529,59.823,59.840,59.813,59.912,
-60.095,60.220,60.246,60.266,60.341,60.388,60.248,59.770,58.799,57.306,55.789,55.350,56.921,60.216,63.723,65.970,
-66.695,66.660,66.580,66.582,66.545,66.494,66.481,66.411,66.206,65.976,65.829,65.659,65.317,64.887,64.565,64.336,
-64.015,63.590,63.250,63.040,62.733,62.191,61.615,61.272,61.107,60.848,60.405,59.921,59.459,58.910,58.287,57.884,
-57.941,58.237,58.214,57.542,56.438,55.439,54.886,54.664,54.371,53.699,52.691,51.668,50.935,50.572,50.473,50.507,
-50.580,50.573,50.347,49.861,49.257,48.755,48.474,48.359,48.275,48.140,47.965,47.806,47.686,47.571,47.399,47.161,
-46.937,46.829,46.827,46.758,46.457,45.954,45.310,44.134,41.485,36.712,30.630,25.526,23.486,24.571,26.869,28.383,
-28.643,28.421,28.352,28.314,27.981,27.387,26.740,26.027,25.123,24.109,23.188,22.361,21.444,20.390,19.394,18.624,
-18.035,17.514,17.047,16.649,16.261,15.833,15.416,15.065,14.693,14.171,13.510,12.872,12.391,12.092,11.954,11.948,
-11.989,11.957,11.824,11.680,11.589,11.478,11.216,10.783,10.317,9.981,9.834,9.784,9.668,9.375,8.941,8.500,
-8.152,7.898,7.698,7.529,7.368,7.171,6.930,6.712,6.593,6.571,6.567,6.506,6.339,6.051,5.705,5.432,
-5.284,5.160,4.946,4.717,4.647,4.719,4.691,4.419,4.062,3.860,3.830,3.843,3.900,4.131,4.527,4.839,
-4.819,4.455,3.935,3.529,3.501,3.944,4.548,4.677,3.912,2.511,1.182,.400,.052,-.266,-.763,-1.345,
--1.842,-2.200,-2.458,-2.645,-2.748,-2.769,-2.799,-2.989,-3.399,-3.883,-4.201,-4.259,-4.190,-4.162,-4.204,-4.270,
--4.387,-4.635,-5.007,-5.402,-5.754,-6.085,-6.419,-6.730,-6.999,-7.242,-7.452,-7.592,-7.662,-7.722,-7.800,-7.848,
--7.846,-7.873,-8.021,-8.270,-8.533,-8.792,-9.086,-9.401,-9.667,-9.866,-10.058,-10.277,-10.475,-10.620,-10.749,-10.899,
--11.028,-11.076,-11.061,-11.049,-11.065,-11.082,-11.086,-11.085,-11.070,-11.038,-11.024,-11.058,-11.095,-11.058,-10.952,-10.869,
--10.851,-10.835,-10.754,-10.647,-10.582,-10.548,-10.479,-10.366,-10.270,-10.226,-10.194,-10.130,-10.031,-9.921,-9.808,-9.695,
--9.583,-9.463,-9.322,-9.182,-9.085,-9.027,-8.947,-8.799,-8.611,-8.439,-8.286,-8.126,-7.963,-7.832,-7.734,-7.621,
--7.464,-7.292,-7.142,-7.014,-6.886,-6.752,-6.612,-6.460,-6.297,-6.149,-6.032,-5.922,-5.779,-5.604,-5.433,-5.285,
--5.141,-4.988,-4.845,-4.719,-4.586,-4.420,-4.239,-4.076,-3.939,-3.811,-3.687,-3.574,-3.460,-3.326,-3.179,-3.054,
--2.956,-2.850,-2.717,-2.596,-2.525,-2.481,-2.412,-2.317,-2.242,-2.212,-2.196,-2.168,-2.149,-2.155,-2.162,-2.148,
--2.136,-2.168,-2.232,-2.279,-2.295,-2.316,-2.366,-2.422,-2.462,-2.503,-2.556,-2.598,-2.606,-2.610,-2.664,-2.781,
--2.927,-3.058,-3.144,-3.170,-3.162,-3.195,-3.312,-3.448,-3.499,-3.472,-3.505,-3.692,-3.952,-4.127,-4.171,-4.172,
--4.213,-4.290,-4.381,-4.499,-4.662,-4.834,-4.977,-5.102,-5.234,-5.350,-5.403,-5.402,-5.413,-5.483,-5.588,-5.679,
--5.742,-5.792,-5.836,-5.867,-5.881,-5.878,-5.850,-5.794,-5.740,-5.735,-5.785,-5.838,-5.831,-5.760,-5.680,-5.637,
--5.619,-5.587,-5.531,-5.477,-5.441,-5.404,-5.354,-5.313,-5.304,-5.299,-5.248,-5.154,-5.077,-5.041,-4.995,-4.872,
--4.686,-4.518,-4.415,-4.347,-4.254,-4.118,-3.964,-3.812,-3.657,-3.486,-3.314,-3.164,-3.046,-2.938,-2.805,-2.642,
--2.472,-2.318,-2.173,-2.019,-1.851,-1.675,-1.481,-1.264,-1.044,-.853,-.685,-.491,-.221,.124,.505,.881,
-1.236,1.587,1.969,2.395,2.839,3.257,3.660,4.107,4.626,5.167,5.672,6.167,6.739,7.423,8.159,8.877,
-9.571,10.287,11.051,11.818,12.494,13.005,13.393,13.804,14.345,14.936,15.390,15.627,15.761,15.920,16.075,16.093,
-15.897,15.479,14.812,13.873,12.779,11.831,11.395,11.771,13.099,15.274,17.931,20.682,23.418,26.294,29.358,32.313,
-34.767,36.648,38.258,39.944,41.777,43.497,44.670,45.016,44.729,44.427,44.566,44.957,45.084,44.885,44.853,45.244,
-45.572,45.223,44.293,43.295,42.180,40.247,37.233,33.956,31.445,29.746,28.072,26.024,24.110,22.980,22.607,22.499,
-22.380,22.326,22.376,22.397,22.318,22.207,22.073,21.827,21.514,21.347,21.353,21.176,20.454,19.294,18.138,17.183,
-16.182,14.885,13.461,12.308,11.580,11.064,10.471,9.701,8.797,7.834,6.885,6.011,5.186,4.305,3.332,2.391,
-1.634,1.073,.582,.042,-.580,-1.261,-1.928,-2.474,-2.852,-3.153,-3.499,-3.879,-4.209,-4.545,-5.071,-5.789,
--6.399,-6.644,-6.722,-7.130,-8.108,-9.398,-10.564,-11.403,-11.968,-12.351,-12.590,-12.715,-12.754,-12.694,-12.535,-12.378,
--12.391,-12.667,-13.160,-13.715,-14.128,-14.254,-14.146,-14.047,-14.114,-14.186,-13.955,-13.363,-12.681,-12.176,-11.877,-11.729,
--11.762,-11.939,-11.992,-11.660,-11.078,-10.689,-10.723,-10.925,-10.864,-10.384,-9.695,-9.153,-9.011,-9.221,-9.385,-9.073,
--8.386,-8.046,-8.667,-9.943,-10.844,-10.699,-9.867,-9.239,-9.262,-9.645,-9.877,-9.763,-9.441,-9.125,-8.942,-8.906,
--8.935,-8.908,-8.786,-8.631,-8.494,-8.334,-8.104,-7.847,-7.648,-7.502,-7.332,-7.121,-6.950,-6.880,-6.861,-6.799,
--6.672,-6.530,-6.419,-6.339,-6.291,-6.295,-6.356,-6.449,-6.554,-6.679,-6.829,-6.966,-7.045,-7.084,-7.158,-7.297,
--7.431,-7.467,-7.415,-7.374,-7.405,-7.460,-7.462,-7.395,-7.289,-7.142,-6.933,-6.672,-6.396,-6.101,-5.735,-5.283,
--4.798,-4.320,-3.831,-3.307,-2.806,-2.408,-2.114,-1.846,-1.546,-1.238,-.955,-.681,-.364,.020,.464,.952,
-1.461,1.960,2.431,2.882,3.319,3.725,4.085,4.412,4.732,5.057,5.387,5.718,6.027,6.271,6.448,6.655,
-7.003,7.472,7.917,8.232,8.465,8.710,8.959,9.128,9.214,9.324,9.529,9.775,9.970,10.107,10.238,10.371,
-10.468,10.534,10.637,10.805,10.985,11.112,11.212,11.363,11.590,11.826,12.003,12.129,12.259,12.420,12.575,12.679,
-12.728,12.752,12.767,12.771,12.764,12.768,12.812,12.896,12.979,13.008,12.971,12.915,12.910,12.981,13.084,13.172,
-13.262,13.416,13.648,13.883,14.053,14.179,14.330,14.512,14.651,14.713,14.749,14.818,14.893,14.914,15.094,15.072,
-15.062,15.110,15.193,15.261,15.302,15.331,15.351,15.364,15.392,15.442,15.476,15.454,15.389,15.341,15.338,15.367,
-15.419,15.519,15.678,15.865,16.044,16.217,16.396,16.555,16.647,16.673,16.686,16.724,16.761,16.758,16.744,16.795,
-16.936,17.100,17.214,17.304,17.456,17.682,17.927,18.253,18.892,19.963,21.149,21.870,21.878,21.580,21.609,22.154,
-22.869,23.402,23.777,24.169,24.526,24.625,24.421,24.127,23.914,23.711,23.352,22.821,22.230,21.662,21.127,20.640,
-20.236,19.900,19.562,19.186,18.811,18.498,18.260,18.065,17.868,17.627,17.317,16.965,16.634,16.353,16.070,15.677,
-15.088,14.305,13.443,12.681,12.159,11.866,11.667,11.427,11.124,10.821,10.566,10.336,10.059,9.666,9.142,8.567,
-8.088,7.804,7.678,7.604,7.548,7.565,7.672,7.716,7.429,6.612,5.289,3.738,2.372,1.498,1.119,.965,
-.773,.545,.494,.764,1.265,1.775,2.144,2.351,2.431,2.398,2.220,1.818,1.103,.067,-1.180,-2.525,
--3.979,-5.612,-7.335,-8.821,-9.743,-10.057,-10.020,-9.940,-9.992,-10.214,-10.560,-10.903,-11.087,-11.087,-11.068,-11.173,
--11.267,-11.033,-10.387,-9.710,-9.552,-10.129,-11.152,-12.138,-12.775,-13.040,-13.090,-13.159,-13.444,-13.971,-14.554,-14.988,
--15.321,-15.823,-16.601,-17.292,-17.316,-16.505,-15.390,-14.728,-14.728,-14.861,-14.485,-13.566,-12.674,-12.291,-12.292,-12.183,
--11.707,-11.072,-10.618,-10.446,-10.438,-10.500,-10.597,-10.580,-10.157,-9.180,-7.936,-6.990,-6.692,-6.858,-7.018,-6.962,
--6.958,-7.402,-8.346,-9.475,-10.525,-11.569,-12.805,-14.181,-15.354,-16.042,-16.295,-16.390,-16.517,-16.659,-16.713,-16.658,
--16.565,-16.501,-16.486,-16.519,-16.594,-16.679,-16.697,-16.604,-16.476,-16.450,-16.551,-16.640,-16.607,-16.553,-16.676,-17.007,
--17.380,-17.674,-17.949,-18.274,-18.575,-18.780,-18.930,-18.967,-18.521,-17.268,-15.571,-14.438,-14.611,-15.804,-17.051,-17.688,
--17.792,-17.760,-17.809,-17.961,-18.233,-18.617,-18.996,-19.262,-19.473,-19.750,-20.078,-20.340,-20.525,-20.745,-21.034,-21.286,
--21.428,-21.545,-21.751,-22.027,-22.280,-22.488,-22.708,-22.968,-23.253,-23.572,-23.963,-24.408,-24.836,-25.220,-25.638,-26.188,
--26.883,-27.641,-28.377,-29.067,-29.736,-30.408,-31.067,-31.672,-32.208,-32.714,-33.242,-33.810,-34.390,-34.960,-35.524,-36.102,
--36.705,-37.328,-37.949,-38.538,-39.089,-39.623,-40.162,-40.680,-41.140,-41.544,-41.913,-42.220,-42.413,-42.527,-42.698,-43.035,
--43.492,-43.936,-44.292,-44.576,-44.828,-45.095,-45.453,-45.955,-46.531,-47.009,-47.290,-47.456,-47.674,-48.032,-48.505,-49.015,
--49.491,-49.895,-50.249,-50.626,-51.076,-51.554,-51.968,-52.283,-52.551,-52.836,-53.157,-53.498,-53.841,-54.175,-54.494,-54.766,
--54.892,-54.764,-54.415,-54.078,-53.996,-54.179,-54.411,-54.486,-54.330,-53.913,-53.180,-52.158,-51.033,-50.074,-49.551,-49.750,
--50.829,-52.488,-53.930,-54.482,-54.248,-53.901,-53.816,-53.737,-53.376,-52.993,-53.021,-53.356,-53.444,-53.046,-52.529,-52.298,
--52.269,-52.091,-51.621,-50.943,-50.139,-49.358,-49.001,-49.434,-50.450,-51.305,-51.435,-50.952,-50.318,-49.753,-49.203,-48.692,
--48.367,-48.185,-47.865,-47.265,-46.619,-46.231,-46.063,-45.821,-45.392,-44.968,-44.719,-44.522,-44.134,-43.526,-42.915,-42.508,
--42.320,-42.248,-42.194,-42.073,-41.793,-41.307,-40.682,-40.034,-39.419,-38.810,-38.174,-37.523,-36.877,-36.227,-35.575,-34.960,
--34.417,-33.928,-33.444,-32.944,-32.436,-31.916,-31.350,-30.714,-30.027,-29.331,-28.664,-28.039,-27.442,-26.835,-26.201,-25.565,
--24.960,-24.370,-23.752,-23.104,-22.471,-21.859,-21.194,-20.435,-19.672,-19.027,-18.480,-17.874,-17.133,-16.378,-15.764,-15.220,
--14.471,-13.340,-11.986,-10.812,-10.128,-9.910,-9.863,-9.695,-9.352,-8.988,-8.746,-8.574,-8.292,-7.794,-7.134,-6.422,
--5.702,-4.996,-4.389,-3.927,-3.426,-2.489,-.863,1.254,3.359,5.095,6.496,7.738,8.820,9.608,10.146,10.713,
-11.514,12.461,13.342,14.130,14.959,15.848,16.643,17.256,17.825,18.532,19.362,20.166,20.894,21.621,22.358,22.991,
-23.445,23.804,24.183,24.579,24.949,25.381,26.036,26.930,27.888,28.772,29.649,30.610,31.472,31.812,31.367,30.386,
-29.506,29.270,29.770,30.693,31.637,32.372,32.867,33.177,33.347,33.413,33.448,33.567,33.863,34.321,34.850,35.375,
-35.878,36.321,36.600,36.679,36.752,37.133,37.936,38.939,39.844,40.579,41.246,41.865,42.332,42.636,42.944,43.370,
-43.818,44.141,44.379,44.706,45.187,45.744,46.324,46.959,47.652,48.342,49.003,49.661,50.253,50.611,50.683,50.658,
-50.758,50.980,51.179,51.346,51.636,52.124,52.715,53.309,53.922,54.566,55.158,55.648,56.147,56.794,57.554,58.286,
-58.970,59.706,60.469,61.019,61.157,60.975,60.747,60.592,60.344,59.798,59.016,58.353,58.165,58.512,59.132,59.684,
-59.998,60.135,60.268,60.550,61.028,61.591,62.018,62.151,62.054,61.947,61.971,62.075,62.139,62.116,62.010,61.796,
-61.454,61.045,60.697,60.500,60.464,60.529,60.567,60.451,60.234,60.189,60.519,61.048,61.353,61.228,60.855,60.496,
-60.215,59.993,59.880,59.828,59.586,59.043,58.574,58.676,59.235,59.542,59.160,58.498,58.250,58.535,58.866,58.839,
-58.476,57.973,57.490,57.278,57.634,58.488,59.261,59.402,59.004,58.653,58.732,59.101,59.430,59.612,59.747,59.891,
-59.994,60.027,60.061,60.170,60.325,60.407,60.335,60.121,59.703,58.798,57.180,55.323,54.542,56.021,59.533,63.376,
-65.835,66.580,66.507,66.481,66.623,66.695,66.645,66.571,66.451,66.231,66.005,65.882,65.757,65.448,64.999,64.627,
-64.385,64.113,63.751,63.439,63.236,62.957,62.448,61.859,61.450,61.223,60.944,60.493,59.975,59.488,58.991,58.485,
-58.153,58.148,58.318,58.277,57.770,56.893,55.971,55.264,54.770,54.261,53.494,52.440,51.333,50.492,50.085,50.064,
-50.270,50.516,50.613,50.425,49.961,49.400,48.947,48.695,48.594,48.535,48.440,48.304,48.186,48.138,48.111,47.975,
-47.683,47.391,47.305,47.397,47.386,47.078,46.595,46.018,44.776,41.743,36.410,30.007,25.090,23.577,25.131,27.617,
-29.093,29.195,28.706,28.293,27.991,27.630,27.225,26.804,26.213,25.326,24.287,23.344,22.528,21.666,20.686,19.711,
-18.875,18.185,17.599,17.113,16.704,16.307,15.893,15.502,15.134,14.700,14.139,13.518,12.968,12.564,12.345,12.350,
-12.531,12.671,12.550,12.194,11.855,11.696,11.602,11.352,10.901,10.416,10.072,9.895,9.773,9.569,9.225,8.796,
-8.398,8.097,7.867,7.661,7.472,7.313,7.158,6.977,6.797,6.675,6.610,6.540,6.410,6.203,5.918,5.571,
-5.228,4.964,4.792,4.669,4.571,4.494,4.385,4.157,3.820,3.519,3.371,3.337,3.304,3.262,3.288,3.412,
-3.569,3.683,3.701,3.611,3.550,3.835,4.671,5.721,6.163,5.397,3.679,1.914,.808,.332,.003,-.502,
--1.100,-1.564,-1.847,-2.109,-2.480,-2.887,-3.154,-3.250,-3.365,-3.689,-4.176,-4.595,-4.801,-4.854,-4.873,-4.892,
--4.926,-5.038,-5.253,-5.480,-5.639,-5.818,-6.173,-6.668,-7.078,-7.265,-7.349,-7.519,-7.791,-8.029,-8.140,-8.151,
--8.125,-8.100,-8.117,-8.212,-8.378,-8.574,-8.791,-9.046,-9.323,-9.569,-9.768,-9.957,-10.157,-10.340,-10.488,-10.634,
--10.797,-10.934,-10.996,-11.007,-11.031,-11.086,-11.144,-11.181,-11.193,-11.177,-11.141,-11.119,-11.132,-11.143,-11.092,-10.992,
--10.919,-10.904,-10.894,-10.834,-10.751,-10.695,-10.661,-10.604,-10.521,-10.457,-10.431,-10.411,-10.354,-10.245,-10.100,-9.953,
--9.840,-9.759,-9.664,-9.523,-9.373,-9.277,-9.223,-9.129,-8.956,-8.755,-8.585,-8.432,-8.261,-8.089,-7.961,-7.856,
--7.708,-7.507,-7.307,-7.148,-7.007,-6.856,-6.711,-6.587,-6.453,-6.280,-6.100,-5.965,-5.866,-5.742,-5.569,-5.382,
--5.216,-5.065,-4.910,-4.763,-4.634,-4.500,-4.340,-4.165,-4.005,-3.863,-3.726,-3.597,-3.482,-3.365,-3.226,-3.085,
--2.981,-2.907,-2.811,-2.675,-2.549,-2.475,-2.428,-2.353,-2.255,-2.182,-2.150,-2.129,-2.101,-2.090,-2.101,-2.104,
--2.085,-2.077,-2.111,-2.162,-2.190,-2.211,-2.266,-2.347,-2.403,-2.422,-2.452,-2.519,-2.580,-2.600,-2.606,-2.661,
--2.772,-2.901,-3.010,-3.081,-3.104,-3.081,-3.063,-3.115,-3.244,-3.411,-3.586,-3.771,-3.936,-4.012,-3.982,-3.930,
--3.960,-4.074,-4.199,-4.303,-4.427,-4.598,-4.769,-4.890,-4.979,-5.080,-5.185,-5.244,-5.247,-5.253,-5.322,-5.449,
--5.573,-5.647,-5.676,-5.691,-5.712,-5.731,-5.725,-5.688,-5.636,-5.599,-5.601,-5.643,-5.698,-5.720,-5.676,-5.584,
--5.495,-5.438,-5.397,-5.350,-5.300,-5.260,-5.217,-5.155,-5.090,-5.056,-5.042,-4.998,-4.908,-4.818,-4.768,-4.722,
--4.614,-4.445,-4.285,-4.179,-4.097,-3.989,-3.856,-3.732,-3.626,-3.502,-3.332,-3.134,-2.957,-2.825,-2.716,-2.594,
--2.447,-2.289,-2.132,-1.969,-1.794,-1.617,-1.447,-1.273,-1.084,-.887,-.694,-.493,-.248,.054,.395,.754,
-1.116,1.467,1.804,2.155,2.563,3.025,3.476,3.882,4.287,4.763,5.309,5.859,6.386,6.937,7.570,8.284,
-9.027,9.748,10.424,11.066,11.697,12.310,12.851,13.288,13.676,14.119,14.629,15.103,15.458,15.729,15.988,16.217,
-16.347,16.372,16.327,16.142,15.626,14.652,13.353,12.127,11.490,11.852,13.283,15.443,17.845,20.284,22.925,25.908,
-28.952,31.533,33.436,35.020,36.886,39.297,41.890,43.914,44.806,44.698,44.333,44.366,44.763,45.033,45.016,45.110,
-45.605,46.114,45.998,45.201,44.225,43.311,42.093,40.247,38.074,36.096,34.299,32.221,29.733,27.328,25.516,24.280,
-23.309,22.512,22.027,21.881,21.926,22.057,22.243,22.350,22.190,21.817,21.532,21.456,21.279,20.628,19.553,18.438,
-17.474,16.478,15.265,13.984,12.947,12.256,11.739,11.177,10.459,9.560,8.521,7.466,6.521,5.662,4.752,3.744,
-2.768,1.977,1.370,.820,.216,-.486,-1.261,-2.002,-2.549,-2.864,-3.124,-3.538,-4.083,-4.575,-4.970,-5.431,
--6.042,-6.617,-6.953,-7.169,-7.601,-8.415,-9.461,-10.504,-11.429,-12.197,-12.752,-13.075,-13.220,-13.224,-13.037,-12.660,
--12.278,-12.151,-12.372,-12.808,-13.231,-13.468,-13.478,-13.375,-13.355,-13.467,-13.503,-13.216,-12.649,-12.104,-11.781,-11.604,
--11.448,-11.349,-11.344,-11.259,-10.893,-10.360,-10.039,-10.137,-10.446,-10.586,-10.360,-9.853,-9.327,-9.056,-9.123,-9.255,
--9.033,-8.395,-7.830,-7.853,-8.344,-8.677,-8.509,-8.222,-8.436,-9.221,-9.995,-10.122,-9.488,-8.518,-7.793,-7.655,
--8.034,-8.553,-8.846,-8.815,-8.613,-8.398,-8.182,-7.924,-7.653,-7.437,-7.273,-7.106,-6.934,-6.813,-6.762,-6.717,
--6.618,-6.480,-6.356,-6.258,-6.167,-6.092,-6.081,-6.154,-6.275,-6.399,-6.518,-6.652,-6.794,-6.908,-6.990,-7.083,
--7.213,-7.335,-7.383,-7.361,-7.339,-7.361,-7.393,-7.386,-7.335,-7.253,-7.116,-6.900,-6.638,-6.389,-6.151,-5.851,
--5.447,-4.976,-4.478,-3.948,-3.388,-2.870,-2.472,-2.180,-1.912,-1.625,-1.350,-1.102,-.834,-.494,-.082,.374,
-.863,1.381,1.899,2.384,2.837,3.275,3.686,4.049,4.378,4.706,5.042,5.368,5.682,5.989,6.271,6.506,
-6.732,7.034,7.435,7.836,8.127,8.318,8.507,8.737,8.959,9.129,9.285,9.477,9.691,9.872,10.010,10.143,
-10.297,10.451,10.585,10.718,10.886,11.088,11.288,11.458,11.617,11.798,12.007,12.211,12.375,12.500,12.609,12.709,
-12.775,12.786,12.759,12.733,12.730,12.744,12.763,12.788,12.819,12.846,12.854,12.847,12.851,12.889,12.963,13.052,
-13.142,13.261,13.449,13.704,13.961,14.162,14.325,14.510,14.714,14.865,14.923,14.941,14.991,15.063,15.094,15.276,
-15.296,15.292,15.314,15.362,15.409,15.442,15.469,15.494,15.518,15.552,15.595,15.617,15.587,15.526,15.492,15.519,
-15.591,15.685,15.808,15.974,16.172,16.380,16.580,16.764,16.918,17.031,17.108,17.165,17.198,17.188,17.137,17.090,
-17.101,17.176,17.265,17.333,17.430,17.632,17.918,18.177,18.406,18.834,19.674,20.753,21.553,21.762,21.671,21.862,
-22.538,23.358,23.933,24.271,24.607,24.974,25.169,25.080,24.830,24.554,24.206,23.678,23.001,22.311,21.684,21.118,
-20.621,20.233,19.943,19.681,19.405,19.132,18.895,18.700,18.541,18.396,18.205,17.904,17.519,17.155,16.876,16.601,
-16.181,15.534,14.706,13.828,13.054,12.506,12.195,11.997,11.761,11.438,11.103,10.833,10.618,10.369,9.987,9.438,
-8.816,8.335,8.174,8.284,8.398,8.288,7.965,7.575,7.136,6.487,5.520,4.381,3.381,2.734,2.407,2.199,
-1.928,1.562,1.229,1.112,1.310,1.749,2.240,2.610,2.812,2.922,3.033,3.118,2.999,2.480,1.555,.420,
--.769,-2.115,-3.828,-5.825,-7.620,-8.712,-9.054,-9.059,-9.155,-9.457,-9.835,-10.163,-10.398,-10.526,-10.568,-10.612,
--10.709,-10.725,-10.416,-9.754,-9.099,-8.958,-9.551,-10.644,-11.782,-12.625,-13.090,-13.290,-13.418,-13.649,-14.037,-14.478,
--14.812,-15.023,-15.293,-15.769,-16.269,-16.339,-15.721,-14.746,-14.093,-14.088,-14.328,-14.125,-13.278,-12.263,-11.646,-11.480,
--11.382,-11.051,-10.545,-10.059,-9.664,-9.336,-9.104,-8.979,-8.797,-8.273,-7.325,-6.272,-5.605,-5.546,-5.854,-6.109,
--6.151,-6.222,-6.671,-7.599,-8.834,-10.190,-11.628,-13.117,-14.455,-15.359,-15.743,-15.817,-15.876,-16.043,-16.229,-16.303,
--16.241,-16.124,-16.051,-16.066,-16.148,-16.243,-16.300,-16.279,-16.181,-16.069,-16.032,-16.090,-16.158,-16.161,-16.174,-16.343,
--16.677,-17.019,-17.247,-17.413,-17.614,-17.829,-18.015,-18.226,-18.433,-18.297,-17.433,-16.018,-14.898,-14.842,-15.746,-16.780,
--17.260,-17.193,-17.006,-17.001,-17.200,-17.512,-17.853,-18.149,-18.379,-18.611,-18.904,-19.203,-19.416,-19.573,-19.788,-20.071,
--20.302,-20.409,-20.487,-20.660,-20.926,-21.198,-21.434,-21.669,-21.929,-22.217,-22.553,-22.961,-23.406,-23.825,-24.216,-24.664,
--25.245,-25.935,-26.648,-27.333,-28.007,-28.701,-29.402,-30.060,-30.633,-31.139,-31.639,-32.180,-32.756,-33.325,-33.874,-34.428,
--35.017,-35.637,-36.258,-36.858,-37.438,-38.015,-38.598,-39.172,-39.691,-40.121,-40.472,-40.771,-41.020,-41.216,-41.411,-41.695,
--42.100,-42.557,-42.977,-43.335,-43.645,-43.915,-44.180,-44.535,-45.053,-45.643,-46.112,-46.369,-46.533,-46.791,-47.208,-47.711,
--48.209,-48.659,-49.058,-49.426,-49.810,-50.236,-50.672,-51.065,-51.405,-51.734,-52.078,-52.425,-52.762,-53.097,-53.435,-53.738,
--53.929,-53.917,-53.669,-53.305,-53.084,-53.207,-53.608,-53.999,-54.124,-53.918,-53.413,-52.611,-51.535,-50.338,-49.311,-48.805,
--49.133,-50.358,-52.064,-53.458,-53.974,-53.777,-53.472,-53.353,-53.180,-52.770,-52.440,-52.593,-53.058,-53.235,-52.878,-52.370,
--52.137,-52.083,-51.802,-51.140,-50.314,-49.621,-49.283,-49.471,-50.183,-51.038,-51.460,-51.219,-50.623,-50.092,-49.700,-49.290,
--48.848,-48.521,-48.291,-47.931,-47.345,-46.766,-46.451,-46.333,-46.125,-45.714,-45.274,-44.978,-44.755,-44.410,-43.890,-43.324,
--42.865,-42.568,-42.413,-42.346,-42.272,-42.068,-41.660,-41.081,-40.429,-39.780,-39.153,-38.533,-37.902,-37.251,-36.588,-35.943,
--35.347,-34.798,-34.273,-33.755,-33.251,-32.755,-32.236,-31.670,-31.071,-30.460,-29.837,-29.191,-28.537,-27.907,-27.309,-26.727,
--26.156,-25.600,-25.032,-24.402,-23.706,-22.999,-22.319,-21.630,-20.889,-20.151,-19.517,-18.978,-18.405,-17.719,-17.025,-16.469,
--15.988,-15.322,-14.301,-13.077,-12.008,-11.328,-10.982,-10.753,-10.481,-10.150,-9.798,-9.430,-8.998,-8.456,-7.818,-7.155,
--6.540,-5.979,-5.421,-4.816,-4.133,-3.275,-2.064,-.395,1.568,3.442,4.953,6.131,7.146,8.029,8.689,9.168,
-9.719,10.522,11.474,12.342,13.069,13.783,14.546,15.279,15.944,16.656,17.504,18.392,19.159,19.805,20.459,21.162,
-21.806,22.314,22.736,23.130,23.472,23.777,24.193,24.874,25.772,26.697,27.577,28.517,29.524,30.299,30.439,29.869,
-28.999,28.434,28.544,29.284,30.330,31.331,32.066,32.498,32.708,32.798,32.822,32.816,32.859,33.058,33.447,33.953,
-34.487,35.016,35.510,35.889,36.111,36.313,36.730,37.443,38.271,39.000,39.611,40.207,40.773,41.199,41.515,41.926,
-42.545,43.212,43.695,43.988,44.284,44.724,45.287,45.905,46.544,47.174,47.765,48.361,49.023,49.664,50.068,50.152,
-50.106,50.168,50.344,50.490,50.604,50.870,51.399,52.089,52.771,53.382,53.929,54.408,54.863,55.438,56.226,57.118,
-57.920,58.600,59.287,60.000,60.522,60.633,60.404,60.146,60.056,60.001,59.675,58.977,58.175,57.703,57.798,58.320,
-58.917,59.321,59.512,59.651,59.916,60.356,60.846,61.183,61.266,61.203,61.178,61.231,61.243,61.134,60.977,60.871,
-60.790,60.629,60.364,60.080,59.879,59.815,59.877,59.974,59.981,59.902,59.932,60.222,60.617,60.789,60.624,60.322,
-60.078,59.880,59.675,59.512,59.342,58.928,58.263,57.876,58.313,59.283,59.780,59.242,58.249,57.802,58.166,58.754,
-58.970,58.737,58.249,57.673,57.259,57.359,58.045,58.892,59.409,59.568,59.676,59.850,59.898,59.739,59.612,59.743,
-60.006,60.105,59.992,59.914,60.064,60.320,60.407,60.246,59.992,59.676,58.924,57.341,55.332,54.308,55.593,59.007,
-62.788,65.176,65.903,65.974,66.252,66.693,66.886,66.778,66.615,66.482,66.285,66.035,65.858,65.736,65.504,65.133,
-64.787,64.549,64.294,63.929,63.560,63.298,63.046,62.647,62.133,61.674,61.316,60.943,60.490,60.031,59.615,59.172,
-58.652,58.168,57.889,57.837,57.841,57.678,57.214,56.468,55.588,54.746,53.995,53.230,52.340,51.373,50.523,49.977,
-49.813,49.983,50.326,50.588,50.545,50.171,49.657,49.229,48.979,48.865,48.808,48.752,48.679,48.617,48.599,48.584,
-48.452,48.167,47.890,47.803,47.836,47.711,47.324,46.859,46.268,44.738,41.118,35.256,28.831,24.429,23.527,25.358,
-27.804,29.249,29.482,29.104,28.578,28.010,27.480,27.119,26.857,26.397,25.565,24.535,23.592,22.785,21.949,20.984,
-19.971,19.044,18.267,17.639,17.128,16.677,16.241,15.833,15.469,15.101,14.657,14.162,13.710,13.337,13.024,12.842,
-12.933,13.250,13.445,13.187,12.561,11.980,11.704,11.597,11.376,10.974,10.541,10.206,9.949,9.684,9.358,8.975,
-8.585,8.263,8.049,7.899,7.744,7.566,7.393,7.237,7.084,6.942,6.833,6.735,6.582,6.353,6.095,5.837,
-5.539,5.173,4.823,4.633,4.650,4.749,4.727,4.470,4.047,3.636,3.370,3.233,3.128,3.010,2.920,2.896,
-2.927,3.018,3.183,3.355,3.403,3.382,3.664,4.567,5.790,6.442,5.819,4.131,2.307,1.109,.533,.078,
--.592,-1.348,-1.883,-2.126,-2.309,-2.667,-3.160,-3.545,-3.691,-3.737,-3.909,-4.256,-4.646,-4.959,-5.181,-5.328,
--5.409,-5.500,-5.700,-5.949,-6.040,-5.921,-5.885,-6.252,-6.919,-7.416,-7.465,-7.310,-7.373,-7.751,-8.173,-8.388,
--8.410,-8.384,-8.382,-8.394,-8.427,-8.516,-8.675,-8.880,-9.101,-9.312,-9.500,-9.674,-9.857,-10.049,-10.226,-10.377,
--10.524,-10.678,-10.813,-10.902,-10.961,-11.028,-11.112,-11.186,-11.231,-11.246,-11.233,-11.206,-11.194,-11.202,-11.190,-11.116,
--11.003,-10.923,-10.899,-10.884,-10.835,-10.768,-10.721,-10.692,-10.655,-10.608,-10.573,-10.562,-10.554,-10.516,-10.418,-10.261,
--10.095,-9.983,-9.928,-9.858,-9.720,-9.563,-9.465,-9.414,-9.320,-9.147,-8.951,-8.781,-8.611,-8.407,-8.212,-8.077,
--7.969,-7.805,-7.579,-7.365,-7.199,-7.040,-6.862,-6.702,-6.591,-6.479,-6.312,-6.113,-5.956,-5.845,-5.719,-5.540,
--5.343,-5.172,-5.021,-4.868,-4.718,-4.579,-4.439,-4.282,-4.119,-3.965,-3.815,-3.658,-3.510,-3.385,-3.268,-3.136,
--3.007,-2.912,-2.841,-2.748,-2.624,-2.513,-2.445,-2.388,-2.302,-2.204,-2.139,-2.110,-2.087,-2.066,-2.065,-2.076,
--2.068,-2.042,-2.043,-2.085,-2.127,-2.141,-2.163,-2.237,-2.329,-2.375,-2.379,-2.409,-2.492,-2.576,-2.618,-2.644,
--2.705,-2.797,-2.879,-2.942,-3.004,-3.065,-3.102,-3.121,-3.160,-3.254,-3.401,-3.577,-3.740,-3.836,-3.835,-3.788,
--3.796,-3.907,-4.066,-4.189,-4.272,-4.376,-4.525,-4.674,-4.784,-4.871,-4.975,-5.087,-5.161,-5.178,-5.184,-5.240,
--5.356,-5.475,-5.528,-5.512,-5.486,-5.501,-5.543,-5.565,-5.550,-5.525,-5.513,-5.509,-5.512,-5.530,-5.545,-5.515,
--5.421,-5.312,-5.243,-5.207,-5.163,-5.106,-5.066,-5.044,-4.996,-4.906,-4.812,-4.751,-4.705,-4.638,-4.556,-4.487,
--4.418,-4.312,-4.165,-4.025,-3.920,-3.827,-3.712,-3.590,-3.490,-3.409,-3.302,-3.143,-2.953,-2.769,-2.609,-2.471,
--2.347,-2.231,-2.115,-1.976,-1.802,-1.609,-1.424,-1.258,-1.096,-.926,-.748,-.555,-.321,-.030,.296,.621,
-.948,1.300,1.667,2.010,2.331,2.695,3.143,3.623,4.055,4.442,4.869,5.387,5.965,6.549,7.129,7.731,
-8.380,9.073,9.773,10.415,10.953,11.423,11.913,12.465,13.031,13.545,14.007,14.448,14.865,15.249,15.616,15.976,
-16.278,16.469,16.594,16.750,16.918,16.899,16.457,15.521,14.270,13.100,12.498,12.805,13.999,15.774,17.881,20.324,
-23.128,25.998,28.427,30.217,31.787,33.845,36.727,40.028,42.834,44.383,44.652,44.348,44.249,44.521,44.762,44.712,
-44.652,44.969,45.492,45.601,44.968,43.892,42.851,41.964,41.047,39.966,38.661,36.986,34.838,32.436,30.206,28.305,
-26.504,24.627,22.914,21.768,21.301,21.315,21.606,22.048,22.423,22.466,22.179,21.869,21.739,21.585,21.054,20.093,
-18.956,17.837,16.714,15.568,14.528,13.722,13.090,12.478,11.807,11.065,10.207,9.201,8.139,7.157,6.257,5.314,
-4.278,3.262,2.396,1.681,1.027,.357,-.376,-1.185,-1.972,-2.561,-2.906,-3.211,-3.723,-4.422,-5.079,-5.584,
--6.062,-6.613,-7.122,-7.441,-7.648,-7.973,-8.542,-9.320,-10.251,-11.292,-12.303,-13.075,-13.513,-13.678,-13.610,-13.251,
--12.639,-12.054,-11.819,-11.984,-12.303,-12.516,-12.559,-12.527,-12.539,-12.647,-12.772,-12.732,-12.417,-11.943,-11.543,-11.306,
--11.124,-10.925,-10.799,-10.797,-10.762,-10.505,-10.097,-9.826,-9.852,-10.058,-10.220,-10.201,-9.975,-9.599,-9.233,-9.038,
--8.965,-8.767,-8.310,-7.774,-7.415,-7.208,-6.957,-6.733,-6.978,-8.000,-9.467,-10.530,-10.492,-9.348,-7.781,-6.689,
--6.598,-7.358,-8.319,-8.873,-8.874,-8.580,-8.269,-8.011,-7.753,-7.493,-7.273,-7.091,-6.917,-6.763,-6.669,-6.621,
--6.550,-6.420,-6.275,-6.166,-6.084,-5.993,-5.899,-5.866,-5.936,-6.078,-6.222,-6.339,-6.451,-6.588,-6.740,-6.877,
--6.997,-7.118,-7.236,-7.319,-7.354,-7.366,-7.374,-7.364,-7.317,-7.244,-7.155,-7.023,-6.818,-6.568,-6.335,-6.124,
--5.868,-5.517,-5.081,-4.593,-4.053,-3.475,-2.935,-2.510,-2.192,-1.915,-1.646,-1.406,-1.184,-.919,-.566,-.150,
-.292,.761,1.264,1.770,2.245,2.693,3.139,3.568,3.943,4.272,4.602,4.946,5.277,5.587,5.901,6.223,
-6.511,6.751,7.004,7.329,7.685,7.968,8.143,8.292,8.506,8.786,9.069,9.316,9.533,9.730,9.896,10.029,
-10.158,10.324,10.527,10.726,10.892,11.044,11.231,11.461,11.681,11.845,11.976,12.136,12.343,12.540,12.668,12.730,
-12.766,12.790,12.783,12.744,12.706,12.702,12.726,12.751,12.758,12.749,12.743,12.761,12.813,12.881,12.943,12.995,
-13.057,13.149,13.290,13.492,13.753,14.035,14.288,14.498,14.691,14.871,14.995,15.039,15.050,15.102,15.199,15.276,
-15.504,15.592,15.622,15.628,15.632,15.633,15.632,15.639,15.655,15.675,15.701,15.732,15.752,15.744,15.722,15.724,
-15.775,15.867,15.981,16.112,16.271,16.467,16.694,16.919,17.106,17.244,17.358,17.467,17.555,17.589,17.568,17.523,
-17.480,17.444,17.417,17.421,17.490,17.653,17.911,18.193,18.388,18.501,18.765,19.442,20.461,21.374,21.814,21.938,
-22.243,22.952,23.775,24.332,24.619,24.902,25.277,25.560,25.577,25.355,24.986,24.465,23.765,22.976,22.241,21.613,
-21.058,20.575,20.205,19.952,19.766,19.609,19.474,19.338,19.177,19.009,18.871,18.727,18.494,18.167,17.846,17.583,
-17.272,16.756,15.997,15.097,14.188,13.388,12.808,12.497,12.351,12.172,11.848,11.446,11.103,10.863,10.660,10.382,
-9.965,9.464,9.067,8.970,9.140,9.270,9.037,8.406,7.587,6.737,5.835,4.879,4.059,3.604,3.500,3.470,
-3.254,2.832,2.376,2.070,2.002,2.162,2.472,2.814,3.090,3.296,3.512,3.789,4.034,4.026,3.599,2.831,
-1.971,1.118,.018,-1.674,-3.881,-5.977,-7.305,-7.785,-7.920,-8.219,-8.750,-9.264,-9.594,-9.787,-9.939,-10.066,
--10.140,-10.143,-10.024,-9.712,-9.252,-8.901,-8.988,-9.643,-10.677,-11.735,-12.546,-13.050,-13.348,-13.577,-13.823,-14.106,
--14.381,-14.575,-14.667,-14.758,-14.986,-15.302,-15.376,-14.897,-14.012,-13.315,-13.254,-13.595,-13.656,-13.060,-12.112,-11.369,
--11.028,-10.847,-10.553,-10.092,-9.514,-8.834,-8.114,-7.522,-7.154,-6.853,-6.338,-5.549,-4.768,-4.354,-4.409,-4.729,
--5.049,-5.282,-5.559,-6.096,-7.032,-8.380,-10.034,-11.795,-13.381,-14.520,-15.103,-15.271,-15.304,-15.408,-15.598,-15.766,
--15.820,-15.761,-15.664,-15.618,-15.659,-15.746,-15.812,-15.822,-15.781,-15.709,-15.625,-15.569,-15.577,-15.636,-15.714,-15.843,
--16.086,-16.417,-16.697,-16.833,-16.888,-16.948,-16.967,-16.873,-16.768,-16.829,-16.974,-16.854,-16.312,-15.702,-15.553,-15.962,
--16.494,-16.708,-16.591,-16.444,-16.490,-16.709,-16.966,-17.166,-17.296,-17.425,-17.649,-17.981,-18.318,-18.559,-18.743,-18.982,
--19.282,-19.513,-19.582,-19.557,-19.575,-19.707,-19.934,-20.219,-20.533,-20.852,-21.172,-21.530,-21.950,-22.396,-22.817,-23.228,
--23.704,-24.283,-24.925,-25.573,-26.224,-26.909,-27.628,-28.334,-28.970,-29.519,-30.021,-30.544,-31.127,-31.739,-32.324,-32.868,
--33.414,-34.001,-34.608,-35.191,-35.746,-36.319,-36.944,-37.597,-38.203,-38.699,-39.074,-39.364,-39.610,-39.836,-40.071,-40.366,
--40.746,-41.178,-41.597,-41.982,-42.361,-42.731,-43.049,-43.330,-43.697,-44.229,-44.820,-45.257,-45.475,-45.638,-45.946,-46.421,
--46.938,-47.394,-47.788,-48.162,-48.543,-48.948,-49.376,-49.803,-50.202,-50.584,-50.978,-51.372,-51.730,-52.048,-52.361,-52.674,
--52.921,-53.009,-52.892,-52.626,-52.375,-52.354,-52.682,-53.230,-53.684,-53.783,-53.477,-52.850,-51.958,-50.828,-49.591,-48.553,
--48.115,-48.586,-49.937,-51.660,-52.990,-53.466,-53.291,-53.011,-52.858,-52.633,-52.226,-51.968,-52.204,-52.721,-52.932,-52.614,
--52.137,-51.896,-51.763,-51.335,-50.529,-49.708,-49.294,-49.429,-49.997,-50.725,-51.237,-51.242,-50.793,-50.251,-49.893,-49.652,
--49.330,-48.930,-48.610,-48.366,-48.005,-47.458,-46.935,-46.661,-46.571,-46.404,-46.042,-45.623,-45.314,-45.093,-44.802,-44.350,
--43.794,-43.268,-42.882,-42.668,-42.569,-42.463,-42.240,-41.856,-41.337,-40.732,-40.087,-39.444,-38.824,-38.214,-37.585,-36.940,
--36.320,-35.752,-35.209,-34.654,-34.088,-33.543,-33.018,-32.482,-31.923,-31.371,-30.848,-30.317,-29.724,-29.074,-28.430,-27.842,
--27.308,-26.800,-26.294,-25.746,-25.100,-24.338,-23.525,-22.741,-22.000,-21.264,-20.548,-19.917,-19.384,-18.855,-18.248,-17.622,
--17.100,-16.652,-16.066,-15.185,-14.122,-13.170,-12.500,-12.045,-11.650,-11.256,-10.878,-10.490,-10.015,-9.419,-8.745,-8.052,
--7.376,-6.753,-6.204,-5.674,-5.022,-4.111,-2.894,-1.400,.293,2.021,3.557,4.759,5.690,6.519,7.298,7.948,
-8.468,9.035,9.803,10.704,11.538,12.227,12.857,13.509,14.178,14.877,15.684,16.602,17.480,18.170,18.707,19.230,
-19.787,20.315,20.799,21.300,21.834,22.336,22.801,23.353,24.076,24.873,25.617,26.364,27.261,28.216,28.840,28.811,
-28.264,27.706,27.587,28.011,28.818,29.786,30.722,31.451,31.876,32.043,32.087,32.100,32.094,32.094,32.196,32.491,
-32.961,33.511,34.064,34.585,35.039,35.413,35.784,36.275,36.909,37.566,38.132,38.638,39.161,39.670,40.087,40.476,
-41.025,41.790,42.571,43.139,43.502,43.857,44.334,44.893,45.454,45.988,46.502,47.019,47.610,48.316,49.018,49.490,
-49.649,49.665,49.742,49.873,49.929,49.948,50.156,50.694,51.451,52.207,52.845,53.372,53.834,54.315,54.945,55.788,
-56.731,57.582,58.281,58.917,59.535,59.991,60.107,59.910,59.662,59.596,59.659,59.552,59.050,58.275,57.633,57.458,
-57.734,58.162,58.466,58.608,58.738,59.005,59.409,59.805,60.027,60.044,59.986,59.995,60.055,60.039,59.907,59.770,
-59.729,59.734,59.668,59.507,59.320,59.175,59.116,59.189,59.387,59.615,59.794,59.974,60.218,60.428,60.422,60.199,
-59.940,59.736,59.499,59.189,58.911,58.643,58.154,57.479,57.219,57.921,59.161,59.762,59.120,57.949,57.413,57.815,
-58.489,58.787,58.661,58.324,57.862,57.400,57.279,57.731,58.567,59.421,60.176,60.856,61.259,61.072,60.388,59.789,
-59.724,60.010,60.150,59.987,59.835,59.982,60.289,60.399,60.211,59.948,59.700,59.050,57.478,55.283,53.866,54.666,
-57.668,61.248,63.704,64.752,65.307,66.065,66.794,66.999,66.746,66.498,66.439,66.364,66.135,65.877,65.701,65.518,
-65.241,64.950,64.723,64.472,64.084,63.630,63.267,63.009,62.722,62.326,61.863,61.392,60.924,60.488,60.127,59.794,
-59.348,58.714,58.008,57.458,57.206,57.203,57.229,57.003,56.348,55.338,54.245,53.302,52.530,51.822,51.124,50.495,
-50.025,49.792,49.858,50.187,50.569,50.715,50.495,50.045,49.610,49.323,49.176,49.118,49.104,49.096,49.071,49.027,
-48.947,48.786,48.561,48.396,48.360,48.296,47.970,47.399,46.773,45.867,43.735,39.463,33.445,27.666,24.343,24.161,
-25.923,27.848,28.994,29.424,29.433,29.056,28.338,27.607,27.200,27.031,26.682,25.918,24.913,23.956,23.102,22.200,
-21.162,20.073,19.085,18.285,17.657,17.120,16.599,16.101,15.684,15.344,14.990,14.588,14.237,14.017,13.831,13.553,
-13.297,13.327,13.633,13.792,13.415,12.629,11.931,11.606,11.498,11.321,11.014,10.687,10.379,10.039,9.651,9.264,
-8.893,8.524,8.185,7.953,7.844,7.784,7.699,7.576,7.428,7.259,7.088,6.942,6.795,6.574,6.262,5.950,
-5.708,5.465,5.110,4.696,4.459,4.546,4.796,4.860,4.559,4.059,3.671,3.514,3.446,3.293,3.058,2.859,
-2.744,2.679,2.680,2.803,2.971,2.981,2.820,2.854,3.471,4.487,5.128,4.738,3.440,1.986,.988,.420,
--.141,-.943,-1.808,-2.402,-2.627,-2.707,-2.927,-3.340,-3.765,-4.032,-4.162,-4.289,-4.487,-4.747,-5.046,-5.348,
--5.577,-5.707,-5.864,-6.184,-6.539,-6.602,-6.312,-6.098,-6.420,-7.156,-7.679,-7.612,-7.264,-7.211,-7.609,-8.125,
--8.431,-8.536,-8.608,-8.689,-8.711,-8.679,-8.698,-8.837,-9.053,-9.259,-9.414,-9.535,-9.655,-9.794,-9.955,-10.127,
--10.298,-10.463,-10.617,-10.748,-10.855,-10.951,-11.046,-11.131,-11.191,-11.223,-11.233,-11.229,-11.223,-11.231,-11.241,-11.214,
--11.127,-11.015,-10.938,-10.907,-10.878,-10.821,-10.752,-10.703,-10.676,-10.653,-10.626,-10.602,-10.586,-10.579,-10.563,-10.501,
--10.369,-10.208,-10.093,-10.037,-9.967,-9.826,-9.661,-9.557,-9.508,-9.431,-9.283,-9.106,-8.932,-8.730,-8.488,-8.269,
--8.133,-8.031,-7.872,-7.648,-7.436,-7.268,-7.098,-6.900,-6.723,-6.608,-6.508,-6.357,-6.166,-5.996,-5.861,-5.712,
--5.523,-5.332,-5.171,-5.028,-4.876,-4.717,-4.563,-4.412,-4.259,-4.111,-3.968,-3.813,-3.641,-3.478,-3.346,-3.231,
--3.108,-2.982,-2.875,-2.780,-2.672,-2.556,-2.469,-2.415,-2.354,-2.258,-2.160,-2.098,-2.066,-2.042,-2.030,-2.041,
--2.049,-2.024,-1.987,-1.996,-2.051,-2.097,-2.107,-2.129,-2.201,-2.281,-2.313,-2.316,-2.359,-2.456,-2.551,-2.610,
--2.662,-2.738,-2.814,-2.854,-2.876,-2.927,-3.020,-3.124,-3.213,-3.285,-3.348,-3.410,-3.475,-3.543,-3.602,-3.648,
--3.712,-3.824,-3.971,-4.097,-4.175,-4.238,-4.328,-4.447,-4.564,-4.673,-4.789,-4.918,-5.035,-5.109,-5.135,-5.142,
--5.178,-5.257,-5.337,-5.352,-5.298,-5.253,-5.283,-5.367,-5.429,-5.440,-5.433,-5.428,-5.404,-5.356,-5.321,-5.307,
--5.264,-5.159,-5.042,-4.983,-4.970,-4.931,-4.854,-4.805,-4.811,-4.805,-4.720,-4.584,-4.479,-4.428,-4.389,-4.328,
--4.248,-4.155,-4.035,-3.890,-3.749,-3.633,-3.531,-3.424,-3.318,-3.223,-3.126,-3.006,-2.866,-2.723,-2.580,-2.427,
--2.267,-2.126,-2.020,-1.923,-1.795,-1.624,-1.437,-1.261,-1.091,-.905,-.699,-.494,-.290,-.055,.232,.540,
-.833,1.124,1.462,1.843,2.202,2.511,2.833,3.239,3.706,4.151,4.547,4.956,5.443,6.006,6.605,7.212,
-7.817,8.422,9.044,9.691,10.305,10.802,11.178,11.553,12.053,12.683,13.329,13.892,14.353,14.744,15.106,15.482,
-15.880,16.251,16.536,16.749,16.978,17.266,17.538,17.640,17.399,16.693,15.558,14.305,13.443,13.379,14.212,15.824,
-18.076,20.764,23.481,25.756,27.481,29.129,31.397,34.589,38.298,41.631,43.778,44.531,44.400,44.165,44.221,44.373,
-44.311,44.139,44.248,44.710,45.042,44.699,43.663,42.415,41.421,40.748,40.102,39.096,37.528,35.567,33.640,32.003,
-30.405,28.358,25.800,23.317,21.613,20.885,20.840,21.140,21.602,22.037,22.208,22.067,21.856,21.788,21.748,21.423,
-20.660,19.557,18.292,17.013,15.891,15.070,14.502,13.959,13.272,12.484,11.693,10.869,9.925,8.892,7.889,6.939,
-5.950,4.886,3.835,2.885,2.030,1.228,.464,-.297,-1.105,-1.912,-2.561,-2.992,-3.386,-3.970,-4.737,-5.482,
--6.106,-6.690,-7.280,-7.738,-7.943,-7.994,-8.121,-8.462,-9.057,-9.945,-11.107,-12.321,-13.258,-13.756,-13.876,-13.689,
--13.172,-12.405,-11.707,-11.401,-11.478,-11.640,-11.659,-11.588,-11.608,-11.783,-12.016,-12.155,-12.102,-11.869,-11.557,-11.255,
--10.965,-10.662,-10.424,-10.387,-10.541,-10.670,-10.588,-10.346,-10.134,-10.047,-10.040,-10.074,-10.133,-10.132,-9.928,-9.505,
--9.021,-8.627,-8.305,-7.960,-7.560,-7.111,-6.590,-6.074,-5.901,-6.496,-7.923,-9.638,-10.773,-10.708,-9.493,-7.835,
--6.678,-6.596,-7.411,-8.392,-8.885,-8.781,-8.408,-8.081,-7.851,-7.635,-7.404,-7.186,-6.980,-6.767,-6.575,-6.449,
--6.378,-6.297,-6.172,-6.036,-5.933,-5.860,-5.788,-5.713,-5.680,-5.733,-5.867,-6.025,-6.158,-6.275,-6.414,-6.586,
--6.755,-6.892,-7.012,-7.140,-7.267,-7.358,-7.401,-7.405,-7.372,-7.299,-7.200,-7.094,-6.968,-6.789,-6.561,-6.324,
--6.097,-5.840,-5.513,-5.118,-4.673,-4.173,-3.622,-3.077,-2.612,-2.243,-1.936,-1.665,-1.428,-1.198,-.920,-.571,
--.182,.221,.653,1.127,1.611,2.067,2.509,2.966,3.415,3.806,4.142,4.478,4.839,5.190,5.505,5.812,
-6.132,6.434,6.678,6.905,7.192,7.539,7.854,8.068,8.233,8.464,8.807,9.194,9.529,9.777,9.964,10.120,
-10.247,10.353,10.483,10.669,10.884,11.066,11.207,11.370,11.598,11.846,12.028,12.141,12.261,12.435,12.612,12.712,
-12.728,12.718,12.719,12.717,12.692,12.662,12.652,12.669,12.698,12.720,12.730,12.737,12.769,12.839,12.928,13.000,
-13.052,13.122,13.241,13.406,13.610,13.861,14.152,14.440,14.673,14.842,14.966,15.051,15.094,15.131,15.216,15.359,
-15.504,15.777,15.890,15.935,15.930,15.899,15.860,15.829,15.820,15.833,15.858,15.884,15.910,15.937,15.961,15.983,
-16.009,16.055,16.137,16.258,16.401,16.554,16.733,16.954,17.193,17.394,17.534,17.648,17.768,17.867,17.908,17.910,
-17.920,17.923,17.867,17.766,17.724,17.821,18.026,18.238,18.379,18.435,18.490,18.758,19.462,20.555,21.629,22.273,
-22.513,22.759,23.289,23.941,24.417,24.703,25.028,25.475,25.843,25.913,25.665,25.190,24.538,23.749,22.937,22.222,
-21.625,21.103,20.662,20.346,20.148,20.012,19.912,19.846,19.772,19.637,19.460,19.315,19.205,19.053,18.827,18.586,
-18.341,17.964,17.329,16.472,15.540,14.633,13.808,13.175,12.851,12.768,12.671,12.361,11.890,11.455,11.172,11.003,
-10.849,10.631,10.340,10.070,9.958,10.017,10.023,9.692,8.955,7.986,6.981,6.011,5.143,4.547,4.336,4.369,
-4.334,4.051,3.621,3.260,3.088,3.086,3.188,3.338,3.493,3.644,3.836,4.117,4.442,4.649,4.553,4.107,
-3.485,2.923,2.412,1.578,.004,-2.233,-4.456,-5.949,-6.607,-6.935,-7.428,-8.100,-8.658,-8.956,-9.135,-9.355,
--9.579,-9.662,-9.536,-9.257,-8.938,-8.723,-8.775,-9.213,-10.002,-10.942,-11.788,-12.411,-12.852,-13.223,-13.575,-13.867,
--14.052,-14.147,-14.194,-14.199,-14.181,-14.223,-14.355,-14.377,-13.983,-13.176,-12.436,-12.277,-12.643,-12.938,-12.684,-11.987,
--11.292,-10.844,-10.547,-10.221,-9.770,-9.109,-8.164,-7.051,-6.083,-5.476,-5.103,-4.670,-4.088,-3.548,-3.264,-3.278,
--3.521,-3.949,-4.526,-5.182,-5.899,-6.824,-8.170,-9.954,-11.852,-13.385,-14.266,-14.585,-14.664,-14.769,-14.954,-15.134,
--15.238,-15.266,-15.248,-15.211,-15.183,-15.187,-15.211,-15.217,-15.191,-15.154,-15.120,-15.079,-15.036,-15.035,-15.118,-15.297,
--15.568,-15.911,-16.233,-16.400,-16.364,-16.238,-16.128,-15.957,-15.573,-15.048,-14.709,-14.797,-15.172,-15.491,-15.600,-15.628,
--15.721,-15.849,-15.911,-15.919,-15.979,-16.139,-16.338,-16.480,-16.517,-16.482,-16.488,-16.651,-16.984,-17.363,-17.662,-17.882,
--18.119,-18.402,-18.632,-18.702,-18.617,-18.497,-18.484,-18.661,-19.009,-19.432,-19.828,-20.176,-20.536,-20.951,-21.393,-21.828,
--22.274,-22.772,-23.320,-23.882,-24.459,-25.091,-25.793,-26.518,-27.205,-27.826,-28.391,-28.935,-29.508,-30.136,-30.786,-31.387,
--31.918,-32.429,-32.973,-33.537,-34.078,-34.613,-35.214,-35.905,-36.606,-37.200,-37.638,-37.961,-38.236,-38.496,-38.757,-39.052,
--39.420,-39.851,-40.280,-40.665,-41.039,-41.457,-41.890,-42.263,-42.582,-42.972,-43.507,-44.063,-44.440,-44.613,-44.779,-45.126,
--45.638,-46.153,-46.572,-46.921,-47.270,-47.654,-48.079,-48.531,-48.979,-49.401,-49.811,-50.233,-50.645,-50.999,-51.295,-51.573,
--51.830,-51.987,-51.976,-51.827,-51.663,-51.633,-51.850,-52.322,-52.898,-53.305,-53.325,-52.918,-52.179,-51.191,-50.013,-48.800,
--47.869,-47.611,-48.262,-49.685,-51.332,-52.520,-52.912,-52.743,-52.492,-52.346,-52.136,-51.791,-51.610,-51.874,-52.371,-52.577,
--52.294,-51.847,-51.557,-51.294,-50.724,-49.878,-49.213,-49.135,-49.620,-50.321,-50.864,-51.017,-50.756,-50.278,-49.879,-49.685,
--49.552,-49.292,-48.926,-48.607,-48.347,-47.992,-47.487,-47.013,-46.779,-46.743,-46.663,-46.381,-45.976,-45.629,-45.396,-45.168,
--44.800,-44.264,-43.680,-43.225,-42.969,-42.823,-42.630,-42.313,-41.903,-41.445,-40.928,-40.328,-39.683,-39.057,-38.467,-37.871,
--37.254,-36.654,-36.103,-35.572,-35.012,-34.423,-33.847,-33.301,-32.762,-32.213,-31.678,-31.178,-30.681,-30.134,-29.530,-28.923,
--28.364,-27.856,-27.374,-26.888,-26.356,-25.716,-24.939,-24.077,-23.222,-22.423,-21.663,-20.946,-20.337,-19.868,-19.453,-18.964,
--18.389,-17.838,-17.343,-16.761,-15.937,-14.935,-14.006,-13.326,-12.848,-12.448,-12.097,-11.810,-11.510,-11.052,-10.385,-9.594,
--8.780,-7.969,-7.177,-6.447,-5.756,-4.949,-3.849,-2.442,-.880,.664,2.081,3.299,4.290,5.119,5.918,6.739,
-7.507,8.163,8.784,9.483,10.250,10.970,11.584,12.145,12.723,13.346,14.046,14.857,15.721,16.491,17.078,17.553,
-18.029,18.512,18.942,19.348,19.839,20.453,21.131,21.842,22.613,23.402,24.065,24.570,25.124,25.921,26.796,27.304,
-27.222,26.840,26.678,26.976,27.594,28.314,29.081,29.889,30.607,31.056,31.211,31.230,31.251,31.269,31.240,31.235,
-31.409,31.828,32.404,32.998,33.542,34.047,34.552,35.090,35.674,36.266,36.806,37.281,37.746,38.244,38.738,39.188,
-39.664,40.284,41.039,41.758,42.315,42.774,43.279,43.850,44.376,44.789,45.148,45.560,46.096,46.784,47.584,48.341,
-48.865,49.113,49.234,49.366,49.465,49.438,49.376,49.532,50.046,50.796,51.554,52.212,52.800,53.374,53.972,54.655,
-55.474,56.390,57.283,58.051,58.684,59.203,59.569,59.693,59.566,59.335,59.218,59.280,59.331,59.097,58.532,57.908,
-57.562,57.572,57.739,57.846,57.876,57.961,58.198,58.535,58.829,58.964,58.944,58.878,58.859,58.874,58.865,58.845,
-58.888,58.986,59.017,58.904,58.718,58.575,58.499,58.464,58.526,58.767,59.161,59.583,59.938,60.184,60.259,60.114,
-59.842,59.597,59.380,59.062,58.651,58.304,58.001,57.493,56.835,56.666,57.507,58.832,59.381,58.599,57.333,56.821,
-57.299,57.998,58.267,58.165,57.978,57.725,57.384,57.210,57.489,58.173,59.050,60.068,61.176,61.946,61.828,60.867,
-59.852,59.517,59.805,60.102,60.060,59.910,59.995,60.257,60.362,60.176,59.908,59.673,59.067,57.503,55.131,53.249,
-53.389,55.831,59.254,62.031,63.684,64.834,65.973,66.816,66.937,66.550,66.265,66.317,66.405,66.254,65.963,65.726,
-65.530,65.265,64.963,64.717,64.486,64.144,63.697,63.282,62.978,62.710,62.367,61.916,61.401,60.900,60.498,60.210,
-59.918,59.448,58.750,57.974,57.341,56.967,56.810,56.698,56.404,55.757,54.780,53.669,52.628,51.743,51.031,50.532,
-50.256,50.114,50.015,50.007,50.213,50.595,50.884,50.833,50.455,49.982,49.625,49.449,49.414,49.452,49.497,49.498,
-49.439,49.315,49.135,48.958,48.883,48.896,48.791,48.367,47.656,46.723,45.161,42.104,37.174,31.420,26.926,25.162,
-25.785,27.209,28.210,28.723,29.180,29.558,29.426,28.700,27.884,27.470,27.353,27.041,26.279,25.256,24.251,23.303,
-22.281,21.137,19.992,19.010,18.260,17.677,17.129,16.542,15.977,15.528,15.171,14.796,14.409,14.166,14.115,14.044,
-13.741,13.348,13.214,13.380,13.438,13.030,12.310,11.732,11.496,11.410,11.252,11.026,10.806,10.545,10.181,9.789,
-9.484,9.217,8.844,8.362,7.953,7.763,7.749,7.773,7.746,7.640,7.448,7.197,6.950,6.722,6.448,6.090,
-5.734,5.485,5.289,4.981,4.549,4.234,4.259,4.510,4.603,4.313,3.831,3.532,3.541,3.636,3.556,3.283,
-2.963,2.675,2.409,2.215,2.190,2.277,2.245,1.999,1.804,2.015,2.585,3.001,2.790,2.003,1.098,.426,
--.062,-.623,-1.369,-2.143,-2.702,-2.950,-3.021,-3.138,-3.422,-3.826,-4.231,-4.560,-4.792,-4.937,-5.057,-5.235,
--5.481,-5.688,-5.807,-5.989,-6.403,-6.900,-7.078,-6.807,-6.508,-6.700,-7.329,-7.808,-7.751,-7.428,-7.373,-7.725,
--8.180,-8.465,-8.628,-8.817,-9.003,-9.062,-9.007,-8.991,-9.108,-9.300,-9.462,-9.565,-9.640,-9.711,-9.791,-9.900,
--10.061,-10.267,-10.473,-10.636,-10.750,-10.841,-10.935,-11.029,-11.106,-11.157,-11.189,-11.210,-11.222,-11.232,-11.244,-11.244,
--11.205,-11.125,-11.043,-10.995,-10.969,-10.926,-10.851,-10.770,-10.708,-10.665,-10.631,-10.600,-10.566,-10.531,-10.507,-10.501,
--10.480,-10.401,-10.271,-10.148,-10.063,-9.970,-9.821,-9.652,-9.537,-9.480,-9.416,-9.300,-9.151,-8.979,-8.761,-8.507,
--8.290,-8.158,-8.059,-7.902,-7.687,-7.484,-7.320,-7.151,-6.949,-6.758,-6.617,-6.500,-6.355,-6.182,-6.017,-5.864,
--5.694,-5.506,-5.336,-5.196,-5.063,-4.910,-4.743,-4.578,-4.419,-4.267,-4.127,-3.992,-3.839,-3.668,-3.506,-3.374,
--3.255,-3.125,-2.991,-2.869,-2.748,-2.617,-2.501,-2.432,-2.396,-2.340,-2.245,-2.148,-2.080,-2.034,-2.000,-1.996,
--2.020,-2.028,-1.989,-1.943,-1.953,-2.012,-2.059,-2.070,-2.092,-2.154,-2.215,-2.237,-2.250,-2.308,-2.407,-2.494,
--2.555,-2.627,-2.722,-2.802,-2.837,-2.854,-2.898,-2.980,-3.082,-3.190,-3.291,-3.363,-3.395,-3.407,-3.437,-3.510,
--3.625,-3.767,-3.904,-4.002,-4.056,-4.108,-4.196,-4.305,-4.395,-4.466,-4.562,-4.702,-4.847,-4.950,-5.004,-5.030,
--5.045,-5.066,-5.109,-5.155,-5.154,-5.104,-5.073,-5.129,-5.238,-5.314,-5.323,-5.303,-5.279,-5.229,-5.151,-5.092,
--5.063,-5.000,-4.867,-4.734,-4.693,-4.714,-4.688,-4.591,-4.515,-4.524,-4.548,-4.489,-4.358,-4.245,-4.193,-4.164,
--4.111,-4.031,-3.931,-3.805,-3.649,-3.489,-3.351,-3.239,-3.144,-3.059,-2.968,-2.849,-2.702,-2.559,-2.446,-2.347,
--2.227,-2.083,-1.948,-1.840,-1.732,-1.589,-1.413,-1.235,-1.071,-.895,-.672,-.411,-.155,.069,.289,.542,
-.817,1.082,1.345,1.651,2.012,2.374,2.697,3.010,3.375,3.794,4.223,4.646,5.094,5.583,6.096,6.628,
-7.200,7.809,8.419,9.006,9.587,10.159,10.663,11.063,11.429,11.887,12.478,13.125,13.722,14.226,14.643,14.999,
-15.342,15.719,16.132,16.531,16.871,17.158,17.435,17.752,18.117,18.417,18.385,17.740,16.477,14.990,13.865,13.565,
-14.298,16.042,18.518,21.177,23.474,25.310,27.167,29.683,33.078,36.952,40.530,43.086,44.289,44.389,44.068,43.921,
-44.031,44.102,44.003,43.990,44.309,44.740,44.733,43.992,42.775,41.589,40.676,39.831,38.672,37.058,35.268,33.731,
-32.510,31.116,28.973,26.127,23.354,21.497,20.763,20.752,21.001,21.302,21.568,21.678,21.593,21.464,21.453,21.499,
-21.355,20.828,19.902,18.690,17.404,16.317,15.603,15.157,14.685,14.005,13.190,12.377,11.556,10.639,9.635,8.627,
-7.633,6.592,5.504,4.443,3.441,2.451,1.456,.513,-.352,-1.191,-2.008,-2.699,-3.213,-3.681,-4.283,-5.016,
--5.738,-6.402,-7.079,-7.740,-8.186,-8.284,-8.174,-8.126,-8.316,-8.812,-9.672,-10.872,-12.156,-13.141,-13.618,-13.652,
--13.363,-12.781,-11.996,-11.279,-10.895,-10.823,-10.811,-10.715,-10.652,-10.797,-11.135,-11.473,-11.654,-11.666,-11.581,-11.432,
--11.176,-10.788,-10.369,-10.136,-10.224,-10.528,-10.791,-10.866,-10.809,-10.715,-10.581,-10.390,-10.237,-10.226,-10.275,-10.143,
--9.692,-9.030,-8.376,-7.845,-7.413,-6.997,-6.529,-6.035,-5.725,-5.941,-6.888,-8.377,-9.861,-10.746,-10.699,-9.808,
--8.572,-7.676,-7.556,-8.068,-8.627,-8.759,-8.472,-8.092,-7.838,-7.671,-7.481,-7.253,-7.028,-6.803,-6.559,-6.325,
--6.156,-6.058,-5.983,-5.889,-5.777,-5.673,-5.599,-5.559,-5.542,-5.542,-5.576,-5.670,-5.817,-5.975,-6.122,-6.274,
--6.448,-6.623,-6.771,-6.908,-7.065,-7.233,-7.360,-7.423,-7.438,-7.424,-7.374,-7.286,-7.181,-7.066,-6.914,-6.704,
--6.454,-6.187,-5.894,-5.552,-5.168,-4.760,-4.321,-3.831,-3.310,-2.819,-2.404,-2.059,-1.761,-1.486,-1.207,-.894,
--.546,-.189,.174,.573,1.022,1.491,1.942,2.388,2.853,3.313,3.717,4.068,4.424,4.812,5.188,5.507,
-5.784,6.062,6.337,6.579,6.805,7.079,7.422,7.769,8.044,8.270,8.549,8.941,9.387,9.771,10.041,10.236,
-10.408,10.550,10.640,10.711,10.834,11.025,11.223,11.381,11.533,11.734,11.967,12.158,12.279,12.382,12.506,12.616,
-12.657,12.639,12.617,12.618,12.623,12.610,12.585,12.566,12.566,12.596,12.654,12.716,12.755,12.780,12.828,12.910,
-13.001,13.090,13.202,13.360,13.552,13.761,14.001,14.286,14.582,14.822,14.980,15.085,15.175,15.261,15.349,15.465,
-15.618,15.777,16.048,16.113,16.133,16.111,16.064,16.014,15.982,15.981,16.011,16.056,16.096,16.124,16.154,16.198,
-16.247,16.282,16.310,16.376,16.509,16.684,16.849,17.007,17.207,17.459,17.704,17.889,18.031,18.159,18.251,18.283,
-18.295,18.343,18.389,18.341,18.218,18.166,18.273,18.439,18.509,18.467,18.437,18.566,18.998,19.852,21.074,22.307,
-23.108,23.371,23.416,23.599,23.948,24.296,24.619,25.053,25.601,26.032,26.116,25.837,25.311,24.631,23.860,23.097,
-22.428,21.857,21.363,20.978,20.748,20.628,20.525,20.414,20.333,20.276,20.183,20.040,19.903,19.791,19.652,19.464,
-19.259,19.010,18.581,17.885,17.019,16.131,15.255,14.380,13.643,13.255,13.204,13.184,12.911,12.414,11.938,11.638,
-11.484,11.384,11.279,11.137,10.951,10.774,10.650,10.496,10.138,9.489,8.634,7.721,6.853,6.117,5.611,5.350,
-5.187,4.942,4.593,4.276,4.106,4.068,4.089,4.133,4.189,4.243,4.315,4.464,4.709,4.941,4.975,4.686,
-4.130,3.515,3.033,2.624,1.914,.512,-1.520,-3.577,-5.014,-5.739,-6.199,-6.797,-7.487,-7.990,-8.237,-8.430,
--8.718,-8.987,-9.021,-8.761,-8.361,-8.062,-8.068,-8.479,-9.251,-10.189,-11.046,-11.677,-12.114,-12.505,-12.953,-13.408,
--13.724,-13.831,-13.812,-13.787,-13.754,-13.643,-13.488,-13.399,-13.327,-13.017,-12.349,-11.636,-11.369,-11.649,-12.050,-12.093,
--11.706,-11.147,-10.638,-10.223,-9.867,-9.472,-8.810,-7.689,-6.259,-4.982,-4.197,-3.801,-3.465,-3.039,-2.627,-2.349,
--2.251,-2.426,-3.021,-4.000,-5.067,-5.979,-6.877,-8.148,-9.919,-11.795,-13.187,-13.840,-13.996,-14.070,-14.261,-14.488,
--14.619,-14.653,-14.677,-14.723,-14.738,-14.690,-14.620,-14.579,-14.564,-14.543,-14.517,-14.504,-14.506,-14.509,-14.537,-14.656,
--14.921,-15.315,-15.730,-15.993,-15.949,-15.593,-15.105,-14.683,-14.350,-13.960,-13.454,-13.021,-12.940,-13.288,-13.851,-14.335,
--14.597,-14.692,-14.765,-14.928,-15.196,-15.489,-15.713,-15.832,-15.873,-15.873,-15.853,-15.865,-15.991,-16.259,-16.584,-16.844,
--16.999,-17.119,-17.282,-17.469,-17.585,-17.560,-17.442,-17.386,-17.548,-17.946,-18.442,-18.882,-19.239,-19.591,-19.994,-20.429,
--20.876,-21.354,-21.867,-22.377,-22.865,-23.389,-24.015,-24.724,-25.429,-26.080,-26.695,-27.305,-27.913,-28.532,-29.186,-29.853,
--30.459,-30.965,-31.421,-31.899,-32.410,-32.929,-33.483,-34.135,-34.868,-35.559,-36.086,-36.457,-36.772,-37.109,-37.459,-37.797,
--38.143,-38.541,-38.982,-39.411,-39.801,-40.197,-40.646,-41.114,-41.528,-41.894,-42.309,-42.812,-43.289,-43.595,-43.754,-43.956,
--44.342,-44.860,-45.358,-45.757,-46.093,-46.429,-46.807,-47.246,-47.739,-48.235,-48.684,-49.088,-49.484,-49.872,-50.212,-50.486,
--50.711,-50.880,-50.936,-50.867,-50.771,-50.800,-51.036,-51.464,-51.996,-52.490,-52.765,-52.675,-52.189,-51.377,-50.326,-49.144,
--48.036,-47.328,-47.338,-48.167,-49.574,-51.027,-51.984,-52.247,-52.074,-51.876,-51.792,-51.664,-51.428,-51.325,-51.582,-52.016,
--52.182,-51.906,-51.450,-51.079,-50.695,-50.075,-49.338,-48.930,-49.137,-49.773,-50.392,-50.676,-50.577,-50.223,-49.812,-49.529,
--49.420,-49.350,-49.155,-48.835,-48.511,-48.221,-47.872,-47.424,-47.022,-46.853,-46.903,-46.934,-46.727,-46.299,-45.861,-45.583,
--45.419,-45.165,-44.685,-44.074,-43.561,-43.265,-43.075,-42.801,-42.391,-41.942,-41.528,-41.092,-40.548,-39.916,-39.294,-38.723,
--38.153,-37.545,-36.932,-36.361,-35.822,-35.265,-34.680,-34.106,-33.578,-33.079,-32.574,-32.051,-31.520,-30.988,-30.445,-29.892,
--29.344,-28.816,-28.308,-27.807,-27.302,-26.768,-26.156,-25.430,-24.608,-23.753,-22.921,-22.128,-21.417,-20.875,-20.542,-20.302,
--19.952,-19.409,-18.778,-18.166,-17.497,-16.617,-15.555,-14.563,-13.862,-13.439,-13.155,-12.952,-12.833,-12.690,-12.303,-11.553,
--10.537,-9.438,-8.355,-7.318,-6.353,-5.453,-4.503,-3.365,-2.047,-.706,.524,1.634,2.666,3.628,4.532,5.441,
-6.395,7.335,8.167,8.873,9.510,10.113,10.659,11.142,11.607,12.107,12.674,13.331,14.074,14.821,15.456,15.963,
-16.457,17.023,17.596,18.053,18.400,18.768,19.268,19.923,20.727,21.633,22.481,23.080,23.452,23.886,24.593,25.374,
-25.804,25.758,25.608,25.812,26.427,27.156,27.787,28.396,29.103,29.793,30.224,30.331,30.300,30.311,30.344,30.294,
-30.205,30.282,30.667,31.285,31.940,32.522,33.076,33.689,34.369,35.036,35.608,36.075,36.494,36.933,37.407,37.885,
-38.360,38.876,39.464,40.074,40.631,41.156,41.757,42.467,43.150,43.626,43.887,44.120,44.526,45.177,46.009,46.879,
-47.624,48.140,48.455,48.686,48.881,48.963,48.882,48.783,48.924,49.416,50.132,50.873,51.570,52.278,53.027,53.776,
-54.497,55.242,56.084,57.000,57.858,58.523,58.961,59.226,59.347,59.292,59.079,58.869,58.838,58.950,58.955,58.667,
-58.194,57.818,57.685,57.697,57.699,57.674,57.714,57.868,58.081,58.253,58.319,58.293,58.231,58.179,58.142,58.145,
-58.256,58.500,58.742,58.769,58.527,58.202,58.004,57.944,57.914,57.908,58.050,58.409,58.897,59.356,59.654,59.708,
-59.534,59.276,59.068,58.870,58.558,58.178,57.890,57.622,57.100,56.429,56.316,57.248,58.582,58.996,58.021,56.666,
-56.229,56.849,57.616,57.848,57.694,57.537,57.411,57.228,57.149,57.370,57.808,58.332,59.112,60.302,61.459,61.754,
-60.938,59.768,59.231,59.534,60.082,60.320,60.271,60.256,60.352,60.346,60.118,59.825,59.572,59.011,57.546,55.170,
-52.992,52.569,54.501,57.830,60.983,63.179,64.680,65.876,66.638,66.714,66.354,66.118,66.213,66.351,66.255,66.001,
-65.777,65.572,65.276,64.916,64.622,64.408,64.158,63.807,63.419,63.062,62.720,62.337,61.886,61.389,60.907,60.516,
-60.228,59.924,59.457,58.816,58.150,57.597,57.165,56.784,56.395,55.946,55.357,54.567,53.587,52.494,51.416,50.546,
-50.095,50.090,50.281,50.356,50.281,50.306,50.599,50.975,51.080,50.774,50.253,49.827,49.653,49.686,49.790,49.861,
-49.874,49.846,49.771,49.626,49.442,49.313,49.264,49.157,48.817,48.140,46.900,44.502,40.337,34.736,29.398,26.343,
-26.180,27.586,28.692,28.821,28.667,28.957,29.464,29.480,28.864,28.183,27.899,27.803,27.381,26.470,25.344,24.280,
-23.270,22.173,20.979,19.837,18.907,18.236,17.719,17.193,16.585,15.977,15.477,15.052,14.590,14.130,13.862,13.826,
-13.767,13.440,12.973,12.711,12.715,12.664,12.309,11.818,11.513,11.429,11.346,11.152,10.958,10.819,10.619,10.302,
-10.026,9.931,9.863,9.536,8.924,8.310,7.960,7.862,7.849,7.808,7.703,7.499,7.191,6.850,6.548,6.251,
-5.893,5.520,5.257,5.103,4.887,4.509,4.132,4.006,4.114,4.144,3.857,3.399,3.130,3.204,3.415,3.474,
-3.305,3.008,2.655,2.255,1.884,1.673,1.626,1.561,1.345,1.093,1.033,1.178,1.277,1.099,.669,.171,
--.285,-.733,-1.233,-1.780,-2.318,-2.782,-3.121,-3.325,-3.458,-3.633,-3.937,-4.370,-4.843,-5.220,-5.413,-5.465,
--5.518,-5.643,-5.772,-5.851,-6.012,-6.434,-7.014,-7.369,-7.284,-7.030,-7.059,-7.441,-7.810,-7.883,-7.811,-7.909,
--8.216,-8.508,-8.664,-8.795,-9.011,-9.229,-9.321,-9.314,-9.344,-9.463,-9.588,-9.653,-9.686,-9.734,-9.791,-9.834,
--9.896,-10.036,-10.257,-10.486,-10.647,-10.730,-10.782,-10.847,-10.929,-11.013,-11.088,-11.157,-11.217,-11.259,-11.280,-11.282,
--11.261,-11.211,-11.148,-11.102,-11.081,-11.061,-11.012,-10.938,-10.863,-10.792,-10.718,-10.645,-10.585,-10.534,-10.477,-10.425,
--10.407,-10.412,-10.388,-10.300,-10.174,-10.052,-9.929,-9.780,-9.615,-9.480,-9.391,-9.315,-9.218,-9.093,-8.935,-8.733,
--8.509,-8.320,-8.189,-8.065,-7.890,-7.678,-7.486,-7.332,-7.171,-6.979,-6.781,-6.608,-6.453,-6.294,-6.133,-5.980,
--5.822,-5.648,-5.476,-5.331,-5.208,-5.080,-4.932,-4.773,-4.610,-4.445,-4.288,-4.146,-4.007,-3.852,-3.688,-3.539,
--3.410,-3.277,-3.131,-2.994,-2.878,-2.756,-2.617,-2.496,-2.430,-2.402,-2.353,-2.267,-2.176,-2.102,-2.038,-1.990,
--1.985,-2.015,-2.025,-1.984,-1.937,-1.943,-1.992,-2.027,-2.037,-2.064,-2.123,-2.174,-2.195,-2.224,-2.291,-2.376,
--2.439,-2.491,-2.567,-2.665,-2.747,-2.804,-2.859,-2.921,-2.974,-3.015,-3.074,-3.165,-3.263,-3.335,-3.387,-3.450,
--3.545,-3.667,-3.797,-3.895,-3.938,-3.960,-4.031,-4.168,-4.300,-4.358,-4.375,-4.443,-4.584,-4.722,-4.797,-4.825,
--4.850,-4.876,-4.894,-4.919,-4.960,-4.985,-4.977,-4.979,-5.041,-5.135,-5.182,-5.160,-5.112,-5.064,-5.000,-4.927,
--4.889,-4.878,-4.808,-4.644,-4.485,-4.445,-4.494,-4.491,-4.388,-4.279,-4.249,-4.255,-4.209,-4.109,-4.024,-3.980,
--3.939,-3.872,-3.790,-3.700,-3.584,-3.430,-3.262,-3.109,-2.983,-2.887,-2.817,-2.750,-2.645,-2.491,-2.323,-2.181,
--2.071,-1.974,-1.879,-1.791,-1.699,-1.576,-1.406,-1.207,-1.011,-.830,-.643,-.422,-.167,.089,.315,.526,
-.764,1.037,1.317,1.583,1.862,2.181,2.531,2.880,3.222,3.575,3.946,4.343,4.789,5.296,5.815,6.279,
-6.702,7.180,7.771,8.415,9.007,9.522,10.006,10.491,10.967,11.438,11.936,12.470,13.005,13.513,13.994,14.441,
-14.834,15.182,15.547,15.983,16.470,16.932,17.306,17.595,17.871,18.233,18.698,19.093,19.092,18.443,17.176,15.625,
-14.308,13.789,14.482,16.364,18.883,21.338,23.481,25.704,28.559,32.168,36.107,39.728,42.458,43.957,44.270,43.923,
-43.621,43.703,43.955,44.043,44.001,44.133,44.500,44.731,44.408,43.504,42.340,41.189,40.023,38.649,37.006,35.294,
-33.768,32.391,30.752,28.452,25.633,23.029,21.392,20.877,21.041,21.346,21.535,21.582,21.495,21.307,21.121,21.031,
-20.991,20.841,20.445,19.760,18.824,17.773,16.826,16.150,15.692,15.226,14.594,13.826,13.015,12.168,11.249,10.279,
-9.294,8.261,7.147,6.018,4.971,3.978,2.907,1.721,.544,-.505,-1.434,-2.285,-3.016,-3.592,-4.104,-4.679,
--5.316,-5.928,-6.524,-7.189,-7.871,-8.334,-8.421,-8.260,-8.137,-8.245,-8.655,-9.418,-10.515,-11.713,-12.637,-13.059,
--13.031,-12.709,-12.171,-11.482,-10.812,-10.348,-10.103,-9.947,-9.824,-9.850,-10.135,-10.597,-11.015,-11.246,-11.313,-11.306,
--11.223,-10.988,-10.594,-10.210,-10.077,-10.278,-10.648,-10.953,-11.112,-11.180,-11.170,-11.000,-10.666,-10.337,-10.180,-10.137,
--9.973,-9.533,-8.887,-8.205,-7.588,-7.016,-6.433,-5.868,-5.521,-5.711,-6.623,-8.055,-9.481,-10.418,-10.714,-10.486,
--9.924,-9.247,-8.737,-8.591,-8.713,-8.770,-8.551,-8.168,-7.857,-7.677,-7.509,-7.263,-6.984,-6.734,-6.507,-6.276,
--6.059,-5.897,-5.793,-5.723,-5.658,-5.576,-5.476,-5.393,-5.374,-5.416,-5.464,-5.487,-5.529,-5.639,-5.804,-5.977,
--6.141,-6.313,-6.491,-6.654,-6.813,-6.994,-7.183,-7.324,-7.393,-7.424,-7.448,-7.450,-7.406,-7.326,-7.227,-7.091,
--6.892,-6.635,-6.347,-6.027,-5.657,-5.250,-4.845,-4.447,-4.020,-3.545,-3.063,-2.633,-2.267,-1.935,-1.603,-1.256,
--.894,-.527,-.170,.182,.560,.985,1.442,1.903,2.365,2.833,3.289,3.701,4.075,4.457,4.868,5.260,
-5.580,5.831,6.062,6.305,6.549,6.787,7.047,7.352,7.676,7.975,8.252,8.571,8.980,9.436,9.842,10.145,
-10.384,10.607,10.794,10.896,10.932,11.000,11.165,11.386,11.585,11.743,11.898,12.068,12.225,12.347,12.445,12.525,
-12.563,12.551,12.526,12.525,12.544,12.552,12.542,12.527,12.516,12.511,12.535,12.608,12.697,12.750,12.762,12.789,
-12.875,13.000,13.127,13.263,13.436,13.648,13.879,14.128,14.409,14.705,14.963,15.155,15.303,15.447,15.594,15.728,
-15.845,15.952,16.048,16.259,16.266,16.250,16.213,16.164,16.122,16.104,16.117,16.161,16.222,16.279,16.317,16.346,
-16.393,16.460,16.516,16.551,16.619,16.775,16.993,17.192,17.351,17.541,17.810,18.107,18.354,18.537,18.677,18.761,
-18.769,18.755,18.789,18.835,18.794,18.671,18.608,18.679,18.768,18.744,18.671,18.742,19.068,19.661,20.558,21.760,
-23.025,23.914,24.189,24.054,23.913,23.966,24.170,24.482,24.945,25.506,25.940,26.052,25.836,25.409,24.848,24.199,
-23.537,22.931,22.391,21.917,21.570,21.402,21.345,21.272,21.150,21.048,21.003,20.958,20.857,20.709,20.526,20.299,
-20.045,19.804,19.535,19.100,18.437,17.649,16.842,15.972,14.995,14.105,13.618,13.570,13.612,13.389,12.913,12.457,
-12.189,12.046,11.923,11.801,11.674,11.499,11.257,10.990,10.721,10.378,9.872,9.207,8.478,7.794,7.229,6.790,
-6.406,5.975,5.495,5.097,4.901,4.874,4.890,4.887,4.908,4.975,5.047,5.103,5.193,5.332,5.410,5.252,
-4.764,4.011,3.188,2.489,1.927,1.233,.065,-1.585,-3.265,-4.460,-5.106,-5.572,-6.152,-6.752,-7.150,-7.363,
--7.605,-7.933,-8.144,-8.034,-7.661,-7.283,-7.166,-7.468,-8.205,-9.226,-10.238,-10.980,-11.410,-11.706,-12.078,-12.576,
--13.061,-13.360,-13.440,-13.427,-13.427,-13.381,-13.158,-12.799,-12.512,-12.381,-12.194,-11.713,-11.059,-10.657,-10.751,-11.129,
--11.368,-11.237,-10.787,-10.203,-9.681,-9.346,-9.082,-8.504,-7.305,-5.674,-4.211,-3.347,-2.967,-2.677,-2.278,-1.846,
--1.504,-1.348,-1.568,-2.368,-3.648,-4.972,-6.010,-6.945,-8.240,-10.014,-11.803,-13.002,-13.452,-13.503,-13.580,-13.799,
--14.007,-14.078,-14.069,-14.104,-14.185,-14.205,-14.116,-14.001,-13.961,-13.983,-13.986,-13.950,-13.938,-13.990,-14.064,-14.130,
--14.260,-14.561,-15.014,-15.439,-15.589,-15.302,-14.564,-13.530,-12.498,-11.791,-11.573,-11.750,-12.058,-12.299,-12.471,-12.680,
--12.960,-13.236,-13.455,-13.688,-14.048,-14.508,-14.881,-15.020,-14.988,-14.984,-15.134,-15.388,-15.630,-15.818,-15.979,-16.123,
--16.205,-16.191,-16.123,-16.103,-16.198,-16.361,-16.467,-16.464,-16.458,-16.627,-17.024,-17.522,-17.965,-18.331,-18.695,-19.099,
--19.520,-19.955,-20.434,-20.948,-21.436,-21.888,-22.394,-23.026,-23.728,-24.391,-24.992,-25.600,-26.249,-26.906,-27.549,-28.204,
--28.869,-29.472,-29.959,-30.374,-30.804,-31.282,-31.800,-32.384,-33.066,-33.789,-34.413,-34.858,-35.199,-35.572,-36.024,-36.487,
--36.894,-37.263,-37.655,-38.090,-38.535,-38.966,-39.399,-39.857,-40.318,-40.749,-41.163,-41.600,-42.051,-42.432,-42.687,-42.886,
--43.167,-43.592,-44.087,-44.548,-44.939,-45.285,-45.621,-45.988,-46.441,-46.989,-47.553,-48.031,-48.401,-48.734,-49.075,-49.395,
--49.641,-49.795,-49.861,-49.842,-49.790,-49.828,-50.075,-50.533,-51.088,-51.598,-51.947,-52.044,-51.824,-51.278,-50.444,-49.399,
--48.285,-47.352,-46.912,-47.180,-48.119,-49.418,-50.615,-51.328,-51.477,-51.318,-51.188,-51.183,-51.158,-51.037,-50.998,-51.222,
--51.559,-51.638,-51.314,-50.812,-50.382,-49.983,-49.476,-48.987,-48.862,-49.241,-49.845,-50.264,-50.320,-50.106,-49.778,-49.448,
--49.213,-49.119,-49.088,-48.972,-48.710,-48.379,-48.061,-47.738,-47.379,-47.078,-46.985,-47.105,-47.217,-47.065,-46.613,-46.095,
--45.768,-45.643,-45.479,-45.060,-44.442,-43.882,-43.542,-43.320,-43.012,-42.563,-42.088,-41.672,-41.253,-40.730,-40.118,-39.517,
--38.968,-38.416,-37.810,-37.175,-36.570,-36.003,-35.437,-34.853,-34.286,-33.779,-33.333,-32.897,-32.418,-31.883,-31.322,-30.775,
--30.255,-29.748,-29.236,-28.711,-28.179,-27.638,-27.078,-26.474,-25.795,-25.032,-24.207,-23.370,-22.582,-21.933,-21.519,-21.351,
--21.267,-21.014,-20.469,-19.739,-18.988,-18.199,-17.234,-16.104,-15.066,-14.374,-14.024,-13.842,-13.736,-13.710,-13.651,-13.265,
--12.336,-10.958,-9.445,-8.047,-6.830,-5.763,-4.798,-3.861,-2.874,-1.839,-.829,.115,1.049,2.034,3.054,4.064,
-5.074,6.121,7.174,8.137,8.935,9.570,10.078,10.491,10.846,11.194,11.583,12.048,12.613,13.262,13.903,14.438,
-14.895,15.424,16.116,16.865,17.478,17.874,18.144,18.438,18.876,19.527,20.359,21.194,21.823,22.250,22.708,23.352,
-24.004,24.352,24.388,24.486,24.989,25.822,26.642,27.271,27.839,28.486,29.095,29.426,29.434,29.332,29.316,29.361,
-29.328,29.237,29.298,29.685,30.333,31.024,31.632,32.225,32.917,33.695,34.425,34.994,35.415,35.781,36.156,36.549,
-36.960,37.412,37.914,38.420,38.871,39.301,39.850,40.623,41.522,42.281,42.708,42.888,43.111,43.619,44.433,45.382,
-46.254,46.926,47.403,47.775,48.109,48.356,48.414,48.288,48.171,48.307,48.776,49.464,50.221,51.008,51.865,52.780,
-53.650,54.391,55.061,55.810,56.701,57.597,58.274,58.646,58.827,58.942,58.963,58.808,58.557,58.433,58.529,58.658,
-58.568,58.251,57.929,57.788,57.804,57.847,57.861,57.879,57.937,58.017,58.075,58.079,58.041,58.000,57.982,57.987,
-58.041,58.219,58.539,58.833,58.837,58.474,57.973,57.633,57.518,57.472,57.392,57.361,57.510,57.852,58.263,58.573,
-58.661,58.549,58.392,58.304,58.219,58.025,57.788,57.635,57.422,56.869,56.176,56.143,57.233,58.667,59.035,57.929,
-56.497,56.106,56.825,57.633,57.808,57.545,57.308,57.183,57.094,57.146,57.396,57.601,57.616,57.848,58.813,60.247,
-61.127,60.795,59.752,59.090,59.323,60.038,60.581,60.737,60.692,60.591,60.384,60.039,59.692,59.429,58.948,57.679,
-55.487,53.246,52.439,53.912,57.073,60.449,62.974,64.567,65.595,66.208,66.369,66.240,66.143,66.192,66.215,66.085,
-65.897,65.763,65.617,65.348,64.991,64.679,64.442,64.203,63.907,63.569,63.203,62.800,62.369,61.928,61.473,61.000,
-60.557,60.184,59.826,59.378,58.828,58.279,57.792,57.317,56.803,56.299,55.861,55.404,54.747,53.789,52.606,51.414,
-50.496,50.086,50.183,50.473,50.568,50.397,50.269,50.483,50.928,51.179,50.964,50.436,49.988,49.866,50.004,50.173,
-50.226,50.202,50.204,50.235,50.182,49.973,49.689,49.469,49.337,49.147,48.579,47.049,43.810,38.585,32.377,27.364,
-25.399,26.397,28.401,29.448,29.217,28.753,28.861,29.257,29.269,28.848,28.502,28.456,28.314,27.613,26.412,25.140,
-24.062,23.087,22.032,20.882,19.786,18.895,18.258,17.785,17.311,16.741,16.136,15.599,15.102,14.541,13.960,13.555,
-13.396,13.272,12.962,12.548,12.282,12.193,12.055,11.753,11.465,11.371,11.364,11.226,10.972,10.793,10.718,10.570,
-10.307,10.154,10.261,10.405,10.218,9.650,9.013,8.578,8.319,8.083,7.828,7.595,7.352,7.031,6.660,6.336,
-6.064,5.754,5.400,5.122,4.987,4.864,4.589,4.207,3.936,3.861,3.796,3.518,3.072,2.733,2.677,2.801,
-2.893,2.865,2.763,2.605,2.351,2.017,1.705,1.481,1.294,1.078,.859,.708,.605,.454,.211,-.088,
--.424,-.836,-1.321,-1.785,-2.151,-2.474,-2.858,-3.302,-3.680,-3.903,-4.034,-4.223,-4.571,-5.043,-5.490,-5.766,
--5.849,-5.853,-5.892,-5.963,-6.018,-6.127,-6.443,-6.961,-7.433,-7.613,-7.549,-7.500,-7.615,-7.811,-7.988,-8.184,
--8.459,-8.736,-8.894,-8.948,-9.026,-9.170,-9.295,-9.352,-9.421,-9.582,-9.772,-9.866,-9.846,-9.816,-9.852,-9.915,
--9.948,-9.974,-10.068,-10.247,-10.443,-10.579,-10.640,-10.673,-10.721,-10.797,-10.894,-11.004,-11.121,-11.228,-11.308,-11.350,
--11.355,-11.328,-11.280,-11.229,-11.193,-11.169,-11.139,-11.096,-11.056,-11.021,-10.964,-10.863,-10.740,-10.640,-10.569,-10.499,
--10.424,-10.377,-10.381,-10.391,-10.343,-10.224,-10.077,-9.937,-9.797,-9.640,-9.476,-9.329,-9.211,-9.105,-8.988,-8.842,
--8.671,-8.499,-8.349,-8.208,-8.041,-7.838,-7.635,-7.467,-7.322,-7.164,-6.978,-6.784,-6.597,-6.416,-6.242,-6.081,
--5.926,-5.762,-5.591,-5.434,-5.300,-5.174,-5.042,-4.907,-4.772,-4.624,-4.458,-4.293,-4.144,-3.996,-3.831,-3.668,
--3.530,-3.405,-3.261,-3.105,-2.981,-2.895,-2.800,-2.669,-2.542,-2.469,-2.435,-2.385,-2.306,-2.224,-2.152,-2.079,
--2.016,-1.996,-2.016,-2.022,-1.986,-1.951,-1.961,-1.999,-2.020,-2.030,-2.068,-2.134,-2.188,-2.220,-2.263,-2.332,
--2.395,-2.435,-2.477,-2.544,-2.614,-2.667,-2.727,-2.824,-2.927,-2.979,-2.977,-2.983,-3.043,-3.144,-3.252,-3.355,
--3.453,-3.539,-3.620,-3.711,-3.800,-3.860,-3.905,-3.992,-4.133,-4.251,-4.278,-4.262,-4.309,-4.437,-4.557,-4.609,
--4.623,-4.649,-4.680,-4.696,-4.719,-4.777,-4.847,-4.888,-4.912,-4.955,-5.002,-5.002,-4.949,-4.887,-4.835,-4.780,
--4.734,-4.735,-4.753,-4.686,-4.500,-4.311,-4.253,-4.302,-4.317,-4.227,-4.101,-4.017,-3.964,-3.895,-3.821,-3.778,
--3.751,-3.700,-3.619,-3.536,-3.455,-3.348,-3.206,-3.052,-2.906,-2.768,-2.649,-2.572,-2.530,-2.471,-2.346,-2.161,
--1.964,-1.807,-1.708,-1.659,-1.623,-1.554,-1.426,-1.245,-1.029,-.795,-.564,-.356,-.174,.004,.195,.395,
-.604,.846,1.139,1.459,1.763,2.049,2.351,2.694,3.065,3.443,3.812,4.172,4.544,4.980,5.496,6.025,
-6.465,6.815,7.209,7.762,8.428,9.044,9.516,9.898,10.304,10.798,11.363,11.938,12.457,12.888,13.273,13.683,
-14.139,14.593,15.009,15.421,15.887,16.402,16.908,17.350,17.719,18.036,18.355,18.744,19.219,19.662,19.800,19.306,
-18.008,16.131,14.395,13.711,14.573,16.679,19.260,21.838,24.581,27.876,31.730,35.691,39.214,41.910,43.521,43.991,
-43.677,43.272,43.278,43.614,43.870,43.895,43.937,44.212,44.545,44.537,43.983,43.003,41.836,40.609,39.309,37.876,
-36.273,34.495,32.523,30.280,27.729,25.077,22.826,21.487,21.179,21.536,22.015,22.254,22.178,21.879,21.500,21.159,
-20.883,20.596,20.204,19.696,19.120,18.509,17.867,17.239,16.691,16.219,15.726,15.125,14.405,13.593,12.715,11.805,
-10.895,9.944,8.850,7.606,6.379,5.330,4.385,3.313,2.018,.660,-.556,-1.595,-2.523,-3.340,-4.005,-4.558,
--5.089,-5.616,-6.095,-6.565,-7.132,-7.771,-8.266,-8.432,-8.335,-8.210,-8.244,-8.514,-9.078,-9.948,-10.963,-11.803,
--12.225,-12.231,-11.968,-11.539,-10.989,-10.396,-9.881,-9.508,-9.263,-9.155,-9.261,-9.633,-10.166,-10.642,-10.896,-10.928,
--10.840,-10.696,-10.485,-10.225,-10.054,-10.138,-10.487,-10.921,-11.236,-11.374,-11.373,-11.219,-10.858,-10.348,-9.889,-9.630,
--9.502,-9.301,-8.916,-8.414,-7.920,-7.468,-6.963,-6.307,-5.614,-5.309,-5.892,-7.445,-9.370,-10.768,-11.165,-10.799,
--10.225,-9.771,-9.446,-9.200,-9.041,-8.920,-8.717,-8.395,-8.074,-7.851,-7.666,-7.399,-7.050,-6.716,-6.449,-6.220,
--6.010,-5.845,-5.730,-5.636,-5.551,-5.497,-5.460,-5.400,-5.324,-5.299,-5.356,-5.431,-5.458,-5.469,-5.543,-5.694,
--5.867,-6.032,-6.208,-6.399,-6.576,-6.734,-6.899,-7.072,-7.209,-7.281,-7.315,-7.352,-7.383,-7.374,-7.318,-7.228,
--7.094,-6.899,-6.656,-6.391,-6.092,-5.726,-5.306,-4.892,-4.513,-4.131,-3.708,-3.265,-2.855,-2.488,-2.128,-1.745,
--1.343,-.939,-.537,-.145,.231,.599,.989,1.422,1.889,2.366,2.832,3.276,3.693,4.093,4.497,4.911,
-5.301,5.623,5.870,6.085,6.317,6.575,6.838,7.092,7.346,7.612,7.890,8.179,8.507,8.901,9.345,9.774,
-10.139,10.453,10.740,10.974,11.103,11.138,11.176,11.311,11.534,11.762,11.933,12.053,12.154,12.253,12.354,12.443,
-12.492,12.483,12.444,12.430,12.462,12.497,12.502,12.494,12.507,12.537,12.558,12.582,12.639,12.715,12.759,12.770,
-12.810,12.924,13.080,13.217,13.337,13.497,13.725,13.994,14.269,14.549,14.839,15.116,15.353,15.550,15.729,15.900,
-16.051,16.161,16.228,16.259,16.371,16.372,16.355,16.319,16.271,16.231,16.217,16.232,16.273,16.342,16.421,16.482,
-16.519,16.567,16.651,16.745,16.821,16.915,17.095,17.355,17.607,17.803,18.000,18.266,18.566,18.821,19.009,19.155,
-19.248,19.260,19.228,19.230,19.255,19.213,19.093,19.010,19.039,19.108,19.154,19.273,19.606,20.125,20.708,21.381,
-22.296,23.392,24.283,24.617,24.463,24.199,24.097,24.172,24.367,24.691,25.116,25.488,25.660,25.621,25.431,25.111,
-24.663,24.152,23.659,23.204,22.785,22.459,22.291,22.243,22.204,22.128,22.061,22.029,21.969,21.813,21.561,21.241,
-20.878,20.521,20.220,19.936,19.539,18.965,18.278,17.523,16.614,15.525,14.520,13.978,13.942,14.020,13.814,13.340,
-12.899,12.658,12.518,12.344,12.140,11.952,11.754,11.493,11.189,10.886,10.559,10.131,9.582,8.993,8.477,8.084,
-7.747,7.327,6.759,6.165,5.764,5.651,5.695,5.715,5.686,5.709,5.817,5.922,5.958,5.957,5.959,5.889,
-5.589,4.936,3.937,2.779,1.758,1.045,.468,-.367,-1.619,-2.965,-3.945,-4.478,-4.876,-5.371,-5.854,-6.157,
--6.365,-6.662,-6.979,-7.033,-6.721,-6.301,-6.153,-6.474,-7.249,-8.349,-9.544,-10.517,-11.054,-11.230,-11.344,-11.634,
--12.082,-12.505,-12.763,-12.873,-12.939,-12.988,-12.910,-12.595,-12.141,-11.813,-11.736,-11.690,-11.340,-10.674,-10.077,-9.936,
--10.239,-10.610,-10.653,-10.239,-9.556,-8.971,-8.733,-8.664,-8.221,-7.011,-5.285,-3.749,-2.871,-2.487,-2.138,-1.607,
--1.018,-.583,-.478,-.889,-1.914,-3.328,-4.682,-5.764,-6.863,-8.385,-10.267,-11.938,-12.877,-13.103,-13.056,-13.116,
--13.315,-13.484,-13.531,-13.528,-13.570,-13.633,-13.615,-13.502,-13.405,-13.410,-13.457,-13.428,-13.340,-13.334,-13.472,-13.642,
--13.736,-13.840,-14.126,-14.585,-14.986,-15.085,-14.747,-13.855,-12.322,-10.394,-8.838,-8.524,-9.636,-11.388,-12.681,-13.019,
--12.753,-12.501,-12.534,-12.758,-13.063,-13.454,-13.879,-14.134,-14.080,-13.866,-13.830,-14.170,-14.763,-15.310,-15.598,-15.627,
--15.527,-15.408,-15.289,-15.161,-15.071,-15.108,-15.286,-15.489,-15.599,-15.650,-15.803,-16.145,-16.593,-17.023,-17.414,-17.819,
--18.243,-18.649,-19.050,-19.503,-20.005,-20.488,-20.940,-21.451,-22.083,-22.759,-23.370,-23.923,-24.515,-25.180,-25.860,-26.513,
--27.167,-27.825,-28.420,-28.897,-29.302,-29.725,-30.202,-30.728,-31.321,-31.990,-32.660,-33.208,-33.611,-33.989,-34.467,-35.029,
--35.561,-35.993,-36.361,-36.741,-37.169,-37.632,-38.104,-38.568,-39.013,-39.438,-39.867,-40.320,-40.781,-41.193,-41.512,-41.763,
--42.040,-42.412,-42.858,-43.309,-43.723,-44.108,-44.472,-44.811,-45.170,-45.638,-46.243,-46.877,-47.381,-47.717,-47.984,-48.278,
--48.575,-48.781,-48.856,-48.839,-48.810,-48.859,-49.073,-49.491,-50.051,-50.610,-51.027,-51.216,-51.142,-50.801,-50.212,-49.404,
--48.436,-47.453,-46.714,-46.500,-46.933,-47.887,-49.038,-50.023,-50.584,-50.697,-50.580,-50.503,-50.548,-50.592,-50.548,-50.538,
--50.698,-50.904,-50.854,-50.441,-49.895,-49.484,-49.212,-48.957,-48.777,-48.886,-49.317,-49.790,-50.001,-49.908,-49.673,-49.415,
--49.157,-48.942,-48.848,-48.852,-48.804,-48.586,-48.251,-47.924,-47.652,-47.404,-47.209,-47.169,-47.303,-47.438,-47.330,-46.917,
--46.404,-46.056,-45.918,-45.770,-45.381,-44.774,-44.187,-43.796,-43.534,-43.217,-42.778,-42.295,-41.836,-41.364,-40.816,-40.217,
--39.641,-39.108,-38.564,-37.969,-37.349,-36.749,-36.178,-35.609,-35.029,-34.460,-33.942,-33.499,-33.098,-32.677,-32.193,-31.667,
--31.151,-30.660,-30.166,-29.641,-29.096,-28.549,-27.991,-27.397,-26.757,-26.066,-25.315,-24.507,-23.693,-22.976,-22.466,-22.217,
--22.174,-22.146,-21.890,-21.295,-20.465,-19.583,-18.689,-17.687,-16.581,-15.593,-14.955,-14.664,-14.534,-14.459,-14.439,-14.348,
--13.835,-12.617,-10.819,-8.912,-7.309,-6.100,-5.151,-4.322,-3.547,-2.786,-2.000,-1.175,-.304,.627,1.621,2.639,
-3.647,4.654,5.694,6.751,7.754,8.629,9.343,9.894,10.297,10.591,10.836,11.094,11.422,11.867,12.417,12.973,
-13.432,13.820,14.302,15.009,15.869,16.670,17.250,17.599,17.818,18.047,18.420,18.999,19.703,20.380,20.968,21.541,
-22.142,22.655,22.950,23.130,23.501,24.241,25.195,26.062,26.724,27.296,27.870,28.336,28.525,28.448,28.314,28.297,
-28.364,28.391,28.381,28.505,28.908,29.533,30.194,30.789,31.394,32.122,32.945,33.710,34.295,34.716,35.056,35.370,
-35.676,36.017,36.439,36.925,37.378,37.747,38.141,38.757,39.660,40.651,41.409,41.786,41.951,42.250,42.911,43.885,
-44.920,45.776,46.387,46.851,47.288,47.696,47.947,47.941,47.750,47.598,47.697,48.102,48.740,49.521,50.413,51.406,
-52.441,53.399,54.191,54.856,55.547,56.365,57.210,57.851,58.179,58.319,58.446,58.557,58.522,58.336,58.190,58.231,
-58.355,58.338,58.119,57.866,57.766,57.837,57.962,58.036,58.048,58.047,58.064,58.081,58.049,57.975,57.945,58.036,
-58.214,58.398,58.580,58.812,59.017,58.968,58.532,57.885,57.365,57.135,57.073,56.989,56.859,56.805,56.923,57.165,
-57.380,57.447,57.400,57.395,57.501,57.586,57.518,57.381,57.306,57.131,56.586,55.939,56.055,57.374,59.020,59.502,
-58.414,56.958,56.523,57.161,57.835,57.846,57.444,57.128,56.989,56.937,57.054,57.332,57.415,57.090,56.858,57.501,
-59.003,60.341,60.564,59.827,59.103,59.099,59.697,60.374,60.794,60.920,60.797,60.445,59.957,59.527,59.245,58.847,
-57.806,55.885,53.687,52.502,53.331,56.008,59.342,62.131,63.933,64.964,65.553,65.881,66.054,66.152,66.165,66.047,
-65.852,65.711,65.654,65.570,65.376,65.119,64.861,64.579,64.237,63.882,63.569,63.262,62.893,62.474,62.058,61.631,
-61.137,60.605,60.127,59.714,59.267,58.728,58.154,57.608,57.085,56.590,56.196,55.901,55.492,54.706,53.522,52.220,
-51.144,50.487,50.263,50.353,50.512,50.486,50.252,50.093,50.300,50.797,51.163,51.063,50.604,50.201,50.153,50.385,
-50.602,50.620,50.524,50.509,50.614,50.662,50.473,50.084,49.716,49.528,49.386,48.764,46.825,42.805,36.785,30.239,
-25.508,24.164,25.694,27.972,29.178,29.142,28.830,28.885,29.072,28.988,28.771,28.780,28.909,28.601,27.550,26.082,
-24.748,23.755,22.915,21.998,20.970,19.938,19.035,18.348,17.860,17.430,16.925,16.357,15.822,15.315,14.736,14.091,
-13.548,13.217,12.994,12.721,12.427,12.241,12.133,11.939,11.637,11.401,11.330,11.267,11.046,10.764,10.623,10.595,
-10.461,10.193,10.050,10.204,10.440,10.403,10.044,9.617,9.297,8.982,8.536,8.019,7.585,7.242,6.884,6.492,
-6.163,5.929,5.692,5.381,5.086,4.919,4.827,4.638,4.297,3.950,3.740,3.606,3.372,2.987,2.586,2.321,
-2.195,2.131,2.117,2.198,2.350,2.441,2.351,2.074,1.695,1.305,.973,.734,.559,.365,.103,-.183,
--.443,-.730,-1.147,-1.671,-2.136,-2.439,-2.675,-3.016,-3.484,-3.936,-4.243,-4.427,-4.609,-4.882,-5.253,-5.652,
--5.973,-6.144,-6.197,-6.229,-6.293,-6.359,-6.424,-6.577,-6.910,-7.368,-7.771,-7.980,-8.008,-7.969,-7.982,-8.119,
--8.378,-8.669,-8.882,-9.000,-9.100,-9.228,-9.316,-9.295,-9.248,-9.345,-9.624,-9.923,-10.066,-10.058,-10.034,-10.078,
--10.145,-10.175,-10.182,-10.224,-10.320,-10.434,-10.526,-10.589,-10.638,-10.690,-10.757,-10.846,-10.960,-11.089,-11.215,-11.318,
--11.383,-11.407,-11.397,-11.368,-11.332,-11.292,-11.249,-11.205,-11.180,-11.187,-11.204,-11.175,-11.067,-10.910,-10.770,-10.677,
--10.599,-10.511,-10.437,-10.417,-10.433,-10.414,-10.316,-10.169,-10.026,-9.898,-9.747,-9.554,-9.350,-9.179,-9.044,-8.909,
--8.751,-8.592,-8.459,-8.343,-8.197,-8.000,-7.790,-7.619,-7.486,-7.348,-7.172,-6.975,-6.783,-6.604,-6.429,-6.259,
--6.090,-5.915,-5.728,-5.547,-5.390,-5.245,-5.096,-4.949,-4.828,-4.719,-4.586,-4.419,-4.254,-4.111,-3.965,-3.794,
--3.628,-3.496,-3.378,-3.234,-3.082,-2.976,-2.921,-2.850,-2.729,-2.603,-2.527,-2.485,-2.427,-2.344,-2.267,-2.204,
--2.132,-2.058,-2.019,-2.016,-2.009,-1.982,-1.969,-1.995,-2.034,-2.051,-2.065,-2.112,-2.184,-2.242,-2.285,-2.339,
--2.405,-2.453,-2.481,-2.523,-2.583,-2.620,-2.623,-2.652,-2.754,-2.883,-2.957,-2.967,-2.972,-3.018,-3.098,-3.195,
--3.302,-3.397,-3.457,-3.502,-3.589,-3.724,-3.845,-3.912,-3.964,-4.044,-4.121,-4.142,-4.135,-4.180,-4.289,-4.389,
--4.430,-4.446,-4.474,-4.504,-4.517,-4.546,-4.620,-4.713,-4.772,-4.796,-4.813,-4.818,-4.781,-4.715,-4.661,-4.628,
--4.597,-4.579,-4.602,-4.628,-4.555,-4.357,-4.151,-4.068,-4.092,-4.101,-4.028,-3.910,-3.796,-3.684,-3.575,-3.506,
--3.493,-3.490,-3.448,-3.376,-3.304,-3.225,-3.110,-2.970,-2.839,-2.717,-2.578,-2.431,-2.325,-2.281,-2.249,-2.155,
--1.980,-1.768,-1.588,-1.483,-1.443,-1.410,-1.328,-1.192,-1.026,-.832,-.589,-.315,-.079,.076,.188,.327,
-.510,.716,.945,1.224,1.549,1.883,2.202,2.527,2.880,3.256,3.642,4.036,4.431,4.816,5.215,5.663,
-6.146,6.583,6.939,7.303,7.802,8.435,9.058,9.537,9.884,10.219,10.649,11.187,11.762,12.272,12.669,13.004,
-13.378,13.840,14.348,14.848,15.338,15.842,16.339,16.794,17.218,17.654,18.099,18.492,18.825,19.203,19.741,20.343,
-20.589,19.924,18.131,15.737,13.866,13.516,14.876,17.376,20.387,23.731,27.493,31.538,35.431,38.756,41.293,42.906,
-43.511,43.326,42.931,42.864,43.168,43.501,43.649,43.767,44.059,44.424,44.524,44.129,43.292,42.236,41.180,40.199,
-39.149,37.722,35.681,33.084,30.252,27.518,25.092,23.166,21.987,21.696,22.101,22.715,23.056,22.936,22.484,21.955,
-21.506,21.085,20.529,19.758,18.897,18.177,17.729,17.498,17.332,17.109,16.776,16.318,15.735,15.031,14.220,13.349,
-12.488,11.648,10.703,9.497,8.064,6.678,5.574,4.658,3.621,2.311,.894,-.391,-1.502,-2.535,-3.507,-4.325,
--4.946,-5.432,-5.847,-6.208,-6.569,-7.033,-7.613,-8.139,-8.415,-8.420,-8.312,-8.251,-8.328,-8.620,-9.192,-9.986,
--10.772,-11.302,-11.480,-11.377,-11.087,-10.658,-10.131,-9.591,-9.134,-8.820,-8.695,-8.817,-9.211,-9.780,-10.295,-10.535,
--10.452,-10.190,-9.930,-9.755,-9.680,-9.768,-10.113,-10.695,-11.310,-11.694,-11.719,-11.407,-10.842,-10.127,-9.420,-8.900,
--8.638,-8.518,-8.346,-8.032,-7.658,-7.383,-7.256,-7.091,-6.615,-5.848,-5.356,-5.904,-7.677,-9.891,-11.375,-11.580,
--10.926,-10.193,-9.768,-9.542,-9.321,-9.072,-8.824,-8.567,-8.307,-8.088,-7.894,-7.628,-7.249,-6.855,-6.547,-6.300,
--6.043,-5.801,-5.651,-5.575,-5.488,-5.378,-5.329,-5.367,-5.402,-5.371,-5.329,-5.354,-5.422,-5.463,-5.484,-5.556,
--5.694,-5.849,-6.000,-6.178,-6.387,-6.572,-6.697,-6.801,-6.928,-7.055,-7.132,-7.159,-7.171,-7.182,-7.171,-7.118,
--7.021,-6.873,-6.675,-6.457,-6.242,-6.004,-5.693,-5.309,-4.913,-4.549,-4.191,-3.805,-3.403,-3.026,-2.668,-2.287,
--1.870,-1.444,-1.025,-.601,-.167,.243,.609,.962,1.361,1.821,2.300,2.755,3.183,3.604,4.027,4.441,
-4.839,5.209,5.534,5.801,6.030,6.269,6.548,6.848,7.128,7.374,7.612,7.871,8.159,8.482,8.857,9.289,
-9.747,10.182,10.568,10.902,11.159,11.306,11.349,11.370,11.456,11.630,11.840,12.020,12.143,12.219,12.279,12.349,
-12.420,12.454,12.429,12.384,12.379,12.420,12.452,12.448,12.445,12.492,12.573,12.640,12.682,12.723,12.772,12.806,
-12.835,12.910,13.056,13.224,13.354,13.461,13.618,13.867,14.167,14.455,14.718,14.979,15.247,15.492,15.687,15.838,
-15.979,16.124,16.252,16.336,16.371,16.377,16.409,16.424,16.415,16.378,16.338,16.322,16.334,16.377,16.460,16.577,
-16.682,16.743,16.792,16.885,17.020,17.151,17.282,17.483,17.778,18.090,18.343,18.552,18.776,19.006,19.191,19.331,
-19.467,19.592,19.650,19.646,19.648,19.676,19.664,19.587,19.530,19.579,19.724,19.951,20.329,20.885,21.455,21.841,
-22.120,22.602,23.403,24.218,24.645,24.635,24.469,24.377,24.362,24.375,24.472,24.704,24.997,25.230,25.362,25.401,
-25.317,25.082,24.751,24.420,24.119,23.821,23.546,23.363,23.297,23.296,23.306,23.302,23.240,23.044,22.691,22.242,
-21.774,21.326,20.925,20.598,20.310,19.952,19.450,18.823,18.071,17.123,16.009,15.028,14.535,14.527,14.585,14.327,
-13.794,13.306,13.030,12.854,12.623,12.341,12.085,11.864,11.635,11.384,11.118,10.802,10.382,9.868,9.357,8.956,
-8.685,8.438,8.064,7.520,6.966,6.640,6.614,6.724,6.774,6.743,6.737,6.788,6.807,6.721,6.566,6.406,
-6.210,5.830,5.078,3.880,2.451,1.256,.635,.398,-.049,-1.049,-2.297,-3.233,-3.705,-4.036,-4.481,-4.928,
--5.209,-5.423,-5.724,-5.964,-5.839,-5.377,-5.044,-5.305,-6.229,-7.565,-9.018,-10.311,-11.162,-11.428,-11.286,-11.122,
--11.198,-11.483,-11.798,-12.039,-12.214,-12.337,-12.357,-12.199,-11.863,-11.495,-11.315,-11.376,-11.424,-11.094,-10.325,-9.511,
--9.165,-9.422,-9.902,-10.049,-9.603,-8.813,-8.216,-8.132,-8.289,-8.006,-6.856,-5.139,-3.601,-2.693,-2.220,-1.708,
--.959,-.158,.369,.356,-.330,-1.583,-3.017,-4.255,-5.334,-6.674,-8.526,-10.538,-12.029,-12.647,-12.644,-12.529,
--12.581,-12.754,-12.898,-12.965,-13.002,-13.044,-13.058,-13.002,-12.908,-12.864,-12.890,-12.874,-12.724,-12.550,-12.575,-12.837,
--13.115,-13.223,-13.281,-13.529,-13.970,-14.371,-14.583,-14.552,-13.969,-12.281,-9.468,-6.719,-5.815,-7.512,-10.677,-13.252,
--14.060,-13.526,-12.793,-12.511,-12.590,-12.761,-12.965,-13.200,-13.306,-13.131,-12.807,-12.697,-13.048,-13.736,-14.380,-14.653,
--14.518,-14.211,-14.009,-14.000,-14.084,-14.154,-14.241,-14.417,-14.642,-14.801,-14.875,-14.991,-15.260,-15.646,-16.058,-16.475,
--16.921,-17.374,-17.782,-18.166,-18.600,-19.094,-19.580,-20.039,-20.547,-21.153,-21.784,-22.348,-22.869,-23.447,-24.107,-24.790,
--25.455,-26.122,-26.780,-27.359,-27.823,-28.237,-28.684,-29.181,-29.710,-30.286,-30.913,-31.520,-32.020,-32.440,-32.908,-33.493,
--34.116,-34.651,-35.069,-35.439,-35.828,-36.258,-36.724,-37.215,-37.695,-38.122,-38.507,-38.914,-39.382,-39.865,-40.276,-40.594,
--40.888,-41.244,-41.670,-42.109,-42.513,-42.896,-43.283,-43.659,-44.000,-44.356,-44.837,-45.480,-46.156,-46.676,-46.989,-47.213,
--47.470,-47.740,-47.908,-47.929,-47.887,-47.920,-48.118,-48.488,-48.975,-49.489,-49.927,-50.199,-50.246,-50.050,-49.638,-49.048,
--48.305,-47.448,-46.610,-46.039,-45.973,-46.472,-47.375,-48.404,-49.287,-49.832,-49.997,-49.933,-49.873,-49.925,-49.999,-49.995,
--49.977,-50.046,-50.110,-49.933,-49.453,-48.919,-48.607,-48.536,-48.554,-48.631,-48.876,-49.279,-49.615,-49.680,-49.514,-49.292,
--49.097,-48.901,-48.722,-48.646,-48.666,-48.634,-48.426,-48.095,-47.794,-47.590,-47.443,-47.331,-47.314,-47.420,-47.534,-47.468,
--47.148,-46.712,-46.364,-46.167,-45.977,-45.617,-45.071,-44.496,-44.034,-43.677,-43.323,-42.908,-42.449,-41.962,-41.427,-40.840,
--40.241,-39.671,-39.119,-38.549,-37.959,-37.379,-36.826,-36.290,-35.757,-35.218,-34.678,-34.152,-33.674,-33.255,-32.858,-32.430,
--31.969,-31.507,-31.046,-30.543,-29.980,-29.400,-28.846,-28.293,-27.680,-26.997,-26.271,-25.517,-24.735,-23.981,-23.379,-23.026,
--22.907,-22.898,-22.817,-22.490,-21.836,-20.929,-19.932,-18.946,-17.953,-16.954,-16.086,-15.520,-15.272,-15.197,-15.173,-15.137,
--14.903,-14.110,-12.519,-10.364,-8.257,-6.702,-5.739,-5.090,-4.504,-3.905,-3.278,-2.562,-1.699,-.720,.283,1.244,
-2.168,3.098,4.068,5.066,6.060,7.024,7.947,8.797,9.507,10.014,10.319,10.491,10.627,10.823,11.143,11.584,
-12.047,12.418,12.702,13.056,13.645,14.470,15.370,16.158,16.731,17.080,17.274,17.447,17.752,18.255,18.908,19.611,
-20.283,20.862,21.306,21.655,22.070,22.723,23.619,24.574,25.394,26.042,26.592,27.067,27.381,27.465,27.379,27.280,
-27.273,27.336,27.403,27.487,27.691,28.098,28.665,29.269,29.851,30.473,31.213,32.038,32.811,33.427,33.888,34.258,
-34.580,34.885,35.231,35.669,36.164,36.612,36.978,37.397,38.056,38.976,39.929,40.615,40.944,41.132,41.529,42.334,
-43.448,44.572,45.453,46.062,46.546,47.022,47.428,47.597,47.470,47.191,46.996,47.042,47.352,47.900,48.665,49.612,
-50.672,51.758,52.784,53.686,54.460,55.183,55.940,56.690,57.278,57.603,57.758,57.917,58.113,58.222,58.171,58.059,
-58.028,58.068,58.047,57.898,57.712,57.634,57.713,57.868,57.981,58.005,57.998,58.036,58.093,58.067,57.944,57.890,
-58.081,58.465,58.808,58.969,59.027,59.059,58.941,58.491,57.771,57.101,56.733,56.625,56.567,56.446,56.331,56.332,
-56.439,56.523,56.502,56.470,56.602,56.894,57.099,57.031,56.826,56.713,56.594,56.197,55.747,56.065,57.565,59.365,
-59.980,58.986,57.536,56.980,57.383,57.778,57.566,57.068,56.781,56.717,56.687,56.748,56.958,57.030,56.698,56.342,
-56.722,58.011,59.430,60.059,59.772,59.185,58.912,59.098,59.587,60.181,60.675,60.842,60.574,60.014,59.453,59.057,
-58.656,57.814,56.212,54.115,52.454,52.267,53.922,56.828,59.917,62.358,63.903,64.751,65.243,65.613,65.890,65.980,
-65.866,65.684,65.574,65.513,65.395,65.218,65.063,64.910,64.628,64.191,63.757,63.466,63.245,62.941,62.535,62.113,
-61.684,61.182,60.623,60.121,59.700,59.232,58.615,57.913,57.258,56.714,56.298,56.012,55.735,55.158,54.045,52.573,
-51.266,50.526,50.318,50.336,50.353,50.309,50.196,50.047,50.008,50.255,50.742,51.142,51.147,50.804,50.474,50.458,
-50.717,50.967,51.004,50.897,50.858,50.963,51.053,50.918,50.553,50.172,49.949,49.692,48.737,46.168,41.417,34.958,
-28.521,24.274,23.342,24.952,27.159,28.491,28.845,28.890,28.987,28.971,28.754,28.619,28.756,28.813,28.234,26.941,
-25.442,24.254,23.447,22.771,22.023,21.163,20.224,19.287,18.493,17.930,17.502,17.036,16.495,15.984,15.538,15.049,
-14.450,13.850,13.392,13.072,12.805,12.589,12.468,12.375,12.170,11.842,11.547,11.364,11.187,10.918,10.660,10.557,
-10.532,10.367,10.046,9.816,9.850,9.996,9.995,9.829,9.681,9.618,9.470,9.084,8.538,8.007,7.533,7.038,
-6.524,6.109,5.857,5.666,5.411,5.112,4.884,4.750,4.588,4.297,3.935,3.637,3.439,3.244,2.966,2.619,
-2.269,1.944,1.661,1.498,1.555,1.821,2.123,2.240,2.063,1.647,1.145,.710,.409,.196,-.028,-.299,
--.559,-.764,-.990,-1.355,-1.846,-2.312,-2.643,-2.903,-3.220,-3.618,-4.016,-4.364,-4.682,-4.986,-5.251,-5.475,
--5.716,-6.003,-6.275,-6.458,-6.566,-6.665,-6.771,-6.842,-6.893,-7.036,-7.369,-7.836,-8.243,-8.428,-8.403,-8.331,
--8.358,-8.487,-8.612,-8.686,-8.797,-9.034,-9.322,-9.470,-9.404,-9.287,-9.348,-9.622,-9.938,-10.134,-10.213,-10.269,
--10.344,-10.408,-10.444,-10.474,-10.515,-10.558,-10.598,-10.650,-10.719,-10.785,-10.830,-10.865,-10.920,-11.007,-11.114,-11.224,
--11.320,-11.384,-11.412,-11.412,-11.403,-11.390,-11.366,-11.332,-11.302,-11.299,-11.330,-11.365,-11.352,-11.256,-11.095,-10.930,
--10.806,-10.714,-10.624,-10.537,-10.490,-10.488,-10.480,-10.411,-10.284,-10.151,-10.031,-9.886,-9.687,-9.461,-9.266,-9.106,
--8.937,-8.736,-8.548,-8.419,-8.323,-8.191,-8.002,-7.815,-7.681,-7.576,-7.432,-7.225,-6.997,-6.795,-6.625,-6.473,
--6.320,-6.149,-5.946,-5.728,-5.530,-5.366,-5.205,-5.028,-4.863,-4.744,-4.645,-4.510,-4.339,-4.183,-4.063,-3.937,
--3.775,-3.613,-3.490,-3.382,-3.244,-3.097,-3.000,-2.951,-2.884,-2.766,-2.650,-2.586,-2.547,-2.481,-2.389,-2.312,
--2.255,-2.188,-2.112,-2.060,-2.039,-2.023,-2.003,-2.011,-2.057,-2.103,-2.121,-2.134,-2.177,-2.239,-2.289,-2.335,
--2.397,-2.463,-2.503,-2.529,-2.581,-2.650,-2.680,-2.662,-2.665,-2.742,-2.854,-2.929,-2.964,-3.001,-3.059,-3.118,
--3.181,-3.263,-3.344,-3.391,-3.428,-3.528,-3.697,-3.842,-3.889,-3.882,-3.907,-3.973,-4.027,-4.055,-4.098,-4.175,
--4.245,-4.281,-4.304,-4.334,-4.362,-4.381,-4.421,-4.496,-4.570,-4.605,-4.611,-4.614,-4.601,-4.549,-4.480,-4.441,
--4.436,-4.435,-4.437,-4.457,-4.459,-4.364,-4.164,-3.966,-3.872,-3.860,-3.841,-3.772,-3.673,-3.558,-3.420,-3.286,
--3.212,-3.206,-3.212,-3.187,-3.143,-3.095,-3.015,-2.882,-2.734,-2.617,-2.517,-2.388,-2.234,-2.109,-2.038,-1.982,
--1.883,-1.730,-1.553,-1.397,-1.288,-1.215,-1.131,-1.001,-.848,-.710,-.570,-.369,-.105,.140,.303,.422,
-.579,.782,.985,1.177,1.401,1.687,2.011,2.349,2.704,3.072,3.435,3.800,4.212,4.672,5.114,5.490,
-5.844,6.248,6.692,7.105,7.480,7.902,8.425,8.992,9.496,9.899,10.248,10.616,11.040,11.506,11.959,12.357,
-12.721,13.123,13.609,14.149,14.694,15.231,15.759,16.236,16.622,16.964,17.374,17.895,18.428,18.851,19.192,19.627,
-20.260,20.861,20.846,19.668,17.380,14.863,13.366,13.693,15.797,19.091,23.009,27.193,31.327,35.067,38.169,40.554,
-42.165,42.934,42.988,42.764,42.720,42.955,43.254,43.467,43.698,44.063,44.427,44.497,44.117,43.372,42.487,41.671,
-40.980,40.188,38.834,36.574,33.562,30.405,27.669,25.517,23.861,22.736,22.325,22.623,23.230,23.591,23.430,22.900,
-22.339,21.906,21.460,20.731,19.622,18.354,17.329,16.834,16.852,17.117,17.314,17.258,16.921,16.371,15.678,14.896,
-14.086,13.302,12.504,11.514,10.168,8.553,7.013,5.815,4.865,3.825,2.526,1.128,-.141,-1.271,-2.403,-3.556,
--4.559,-5.266,-5.704,-6.002,-6.260,-6.551,-6.955,-7.489,-8.029,-8.388,-8.487,-8.409,-8.280,-8.189,-8.211,-8.459,
--8.992,-9.713,-10.392,-10.829,-10.959,-10.825,-10.488,-9.997,-9.427,-8.884,-8.476,-8.288,-8.385,-8.784,-9.371,-9.883,
--10.056,-9.843,-9.453,-9.140,-9.001,-9.010,-9.210,-9.741,-10.612,-11.532,-12.054,-11.908,-11.173,-10.155,-9.163,-8.385,
--7.888,-7.646,-7.553,-7.450,-7.220,-6.920,-6.781,-6.965,-7.254,-7.122,-6.337,-5.475,-5.576,-7.099,-9.321,-10.962,
--11.373,-10.948,-10.436,-10.147,-9.911,-9.562,-9.161,-8.817,-8.536,-8.287,-8.059,-7.804,-7.446,-7.018,-6.662,-6.438,
--6.228,-5.925,-5.610,-5.434,-5.383,-5.316,-5.203,-5.170,-5.283,-5.424,-5.459,-5.414,-5.405,-5.458,-5.517,-5.570,
--5.666,-5.809,-5.946,-6.069,-6.232,-6.446,-6.631,-6.722,-6.763,-6.838,-6.953,-7.037,-7.050,-7.022,-6.992,-6.958,
--6.893,-6.779,-6.611,-6.409,-6.207,-6.030,-5.847,-5.605,-5.288,-4.939,-4.591,-4.234,-3.855,-3.476,-3.124,-2.774,
--2.384,-1.956,-1.535,-1.134,-.721,-.278,.150,.520,.859,1.240,1.688,2.153,2.585,2.992,3.411,3.846,
-4.262,4.640,4.990,5.320,5.617,5.874,6.125,6.415,6.747,7.076,7.368,7.634,7.910,8.213,8.545,8.916,
-9.340,9.810,10.283,10.714,11.073,11.338,11.494,11.553,11.569,11.605,11.701,11.852,12.023,12.167,12.259,12.307,
-12.346,12.394,12.426,12.417,12.389,12.385,12.414,12.437,12.435,12.443,12.504,12.606,12.702,12.766,12.811,12.850,
-12.887,12.941,13.046,13.203,13.366,13.498,13.626,13.813,14.078,14.375,14.640,14.863,15.079,15.311,15.531,15.695,
-15.799,15.897,16.030,16.185,16.308,16.377,16.319,16.362,16.419,16.466,16.469,16.445,16.437,16.463,16.523,16.630,
-16.785,16.938,17.032,17.090,17.189,17.356,17.538,17.708,17.923,18.236,18.592,18.891,19.107,19.281,19.432,19.543,
-19.631,19.748,19.890,19.989,20.020,20.047,20.122,20.207,20.263,20.332,20.484,20.733,21.076,21.544,22.102,22.555,
-22.714,22.690,22.845,23.377,24.073,24.569,24.754,24.782,24.772,24.691,24.545,24.478,24.612,24.882,25.135,25.307,
-25.421,25.463,25.388,25.220,25.045,24.906,24.768,24.611,24.481,24.430,24.459,24.518,24.520,24.357,23.958,23.371,
-22.750,22.218,21.790,21.424,21.100,20.787,20.418,19.926,19.296,18.521,17.580,16.560,15.733,15.348,15.328,15.290,
-14.938,14.355,13.831,13.500,13.250,12.943,12.584,12.256,12.001,11.803,11.626,11.417,11.105,10.670,10.180,9.747,
-9.442,9.241,9.043,8.741,8.319,7.917,7.727,7.797,7.976,8.065,8.010,7.881,7.721,7.498,7.182,6.816,
-6.474,6.166,5.758,5.001,3.742,2.226,1.081,.759,.960,.843,-.081,-1.409,-2.386,-2.802,-3.080,-3.574,
--4.143,-4.515,-4.727,-4.942,-5.053,-4.823,-4.392,-4.329,-5.078,-6.538,-8.263,-9.869,-11.118,-11.806,-11.841,-11.421,
--10.960,-10.758,-10.839,-11.079,-11.371,-11.623,-11.728,-11.619,-11.350,-11.056,-10.872,-10.879,-11.034,-11.094,-10.738,-9.893,
--8.948,-8.492,-8.751,-9.320,-9.503,-8.964,-8.042,-7.422,-7.463,-7.812,-7.717,-6.739,-5.163,-3.666,-2.657,-1.992,
--1.292,-.392,.525,1.089,.962,.040,-1.392,-2.810,-3.919,-4.992,-6.544,-8.638,-10.661,-11.897,-12.212,-12.067,
--11.965,-12.044,-12.187,-12.297,-12.381,-12.451,-12.479,-12.447,-12.378,-12.331,-12.342,-12.348,-12.220,-11.932,-11.685,-11.748,
--12.113,-12.463,-12.570,-12.584,-12.790,-13.196,-13.616,-14.040,-14.516,-14.538,-13.065,-9.744,-6.026,-4.422,-6.222,-10.131,
--13.462,-14.565,-13.895,-12.903,-12.429,-12.343,-12.292,-12.256,-12.346,-12.460,-12.381,-12.113,-11.932,-12.091,-12.553,-13.004,
--13.114,-12.824,-12.411,-12.256,-12.496,-12.925,-13.262,-13.449,-13.612,-13.822,-14.002,-14.097,-14.194,-14.412,-14.751,-15.137,
--15.546,-15.996,-16.464,-16.899,-17.310,-17.758,-18.252,-18.735,-19.189,-19.676,-20.238,-20.821,-21.357,-21.872,-22.441,-23.081,
--23.748,-24.424,-25.114,-25.779,-26.339,-26.788,-27.216,-27.696,-28.215,-28.736,-29.277,-29.854,-30.413,-30.900,-31.368,-31.927,
--32.581,-33.205,-33.697,-34.091,-34.483,-34.912,-35.359,-35.823,-36.318,-36.808,-37.232,-37.590,-37.966,-38.416,-38.900,-39.332,
--39.696,-40.055,-40.461,-40.895,-41.307,-41.688,-42.070,-42.469,-42.851,-43.191,-43.549,-44.037,-44.683,-45.356,-45.872,-46.176,
--46.380,-46.611,-46.860,-47.020,-47.050,-47.055,-47.190,-47.513,-47.956,-48.397,-48.756,-49.000,-49.106,-49.041,-48.793,-48.390,
--47.861,-47.212,-46.462,-45.747,-45.308,-45.341,-45.856,-46.692,-47.640,-48.510,-49.123,-49.377,-49.354,-49.285,-49.326,-49.423,
--49.448,-49.403,-49.375,-49.325,-49.088,-48.635,-48.195,-48.020,-48.116,-48.312,-48.522,-48.803,-49.144,-49.378,-49.368,-49.177,
--48.972,-48.819,-48.682,-48.560,-48.502,-48.492,-48.410,-48.183,-47.889,-47.662,-47.540,-47.465,-47.407,-47.409,-47.492,-47.577,
--47.531,-47.291,-46.925,-46.568,-46.300,-46.080,-45.793,-45.368,-44.833,-44.272,-43.756,-43.306,-42.908,-42.515,-42.063,-41.518,
--40.913,-40.309,-39.722,-39.116,-38.478,-37.850,-37.277,-36.753,-36.248,-35.759,-35.295,-34.836,-34.362,-33.892,-33.465,-33.072,
--32.668,-32.237,-31.804,-31.360,-30.844,-30.233,-29.599,-29.018,-28.465,-27.855,-27.166,-26.454,-25.754,-25.056,-24.395,-23.881,
--23.597,-23.486,-23.405,-23.225,-22.856,-22.224,-21.318,-20.250,-19.185,-18.215,-17.342,-16.597,-16.082,-15.852,-15.831,-15.851,
--15.719,-15.184,-13.968,-12.007,-9.689,-7.686,-6.454,-5.903,-5.605,-5.228,-4.708,-4.077,-3.292,-2.313,-1.235,-.231,
-.631,1.453,2.369,3.382,4.384,5.299,6.173,7.104,8.093,9.004,9.671,10.034,10.168,10.215,10.301,10.502,
-10.813,11.155,11.432,11.638,11.893,12.343,13.035,13.885,14.748,15.494,16.034,16.347,16.514,16.698,17.050,17.615,
-18.312,19.003,19.587,20.071,20.576,21.241,22.096,23.025,23.873,24.578,25.178,25.702,26.108,26.336,26.397,26.364,
-26.309,26.265,26.243,26.267,26.380,26.626,27.024,27.556,28.164,28.810,29.505,30.280,31.105,31.888,32.539,33.050,
-33.471,33.851,34.224,34.626,35.084,35.571,36.023,36.432,36.902,37.561,38.400,39.230,39.825,40.143,40.394,40.893,
-41.810,43.028,44.234,45.168,45.809,46.313,46.776,47.099,47.122,46.848,46.487,46.273,46.294,46.535,46.997,47.708,
-48.631,49.658,50.697,51.730,52.746,53.697,54.548,55.316,56.015,56.583,56.951,57.163,57.355,57.599,57.818,57.900,
-57.841,57.742,57.684,57.650,57.577,57.457,57.366,57.396,57.551,57.726,57.818,57.849,57.916,58.013,58.006,57.849,
-57.743,57.940,58.408,58.826,58.956,58.876,58.775,58.625,58.230,57.551,56.833,56.344,56.114,55.986,55.857,55.783,
-55.839,55.967,56.014,55.930,55.887,56.093,56.482,56.697,56.502,56.114,55.920,55.929,55.830,55.693,56.185,57.689,
-59.429,60.030,59.067,57.604,56.930,57.147,57.382,57.107,56.663,56.520,56.594,56.565,56.446,56.449,56.511,56.394,
-56.198,56.385,57.190,58.279,59.114,59.464,59.419,59.146,58.842,58.809,59.275,60.080,60.729,60.822,60.371,59.686,
-59.041,58.460,57.718,56.490,54.655,52.595,51.190,51.342,53.331,56.565,59.927,62.463,63.888,64.558,64.980,65.361,
-65.600,65.622,65.541,65.484,65.404,65.207,64.964,64.822,64.748,64.539,64.134,63.720,63.466,63.275,62.946,62.463,
-61.975,61.543,61.101,60.626,60.193,59.795,59.286,58.582,57.803,57.136,56.625,56.194,55.765,55.218,54.335,53.015,
-51.550,50.499,50.155,50.259,50.332,50.187,49.996,49.942,50.020,50.179,50.454,50.851,51.197,51.261,51.025,50.741,
-50.687,50.898,51.177,51.324,51.326,51.314,51.372,51.420,51.318,51.054,50.780,50.572,50.108,48.611,45.243,39.793,
-33.185,27.278,23.850,23.434,25.015,26.943,28.186,28.744,29.019,29.125,28.944,28.574,28.333,28.270,27.991,27.128,
-25.832,24.604,23.743,23.139,22.571,21.959,21.286,20.479,19.536,18.640,17.984,17.523,17.052,16.499,15.997,15.627,
-15.272,14.788,14.215,13.707,13.323,13.023,12.797,12.675,12.595,12.418,12.095,11.734,11.443,11.197,10.939,10.716,
-10.594,10.505,10.296,9.959,9.665,9.540,9.501,9.406,9.280,9.272,9.418,9.557,9.512,9.250,8.829,8.269,
-7.571,6.830,6.223,5.851,5.638,5.431,5.173,4.922,4.729,4.546,4.284,3.932,3.567,3.264,3.026,2.814,
-2.591,2.330,2.002,1.620,1.289,1.144,1.221,1.397,1.479,1.354,1.044,.654,.287,-.010,-.260,-.513,
--.774,-.997,-1.165,-1.350,-1.651,-2.069,-2.499,-2.856,-3.158,-3.459,-3.768,-4.085,-4.453,-4.901,-5.332,-5.582,
--5.626,-5.647,-5.845,-6.219,-6.592,-6.838,-6.985,-7.115,-7.234,-7.306,-7.373,-7.554,-7.897,-8.290,-8.559,-8.648,
--8.649,-8.666,-8.685,-8.633,-8.547,-8.591,-8.872,-9.274,-9.556,-9.617,-9.583,-9.628,-9.780,-9.950,-10.087,-10.219,
--10.359,-10.465,-10.520,-10.575,-10.676,-10.792,-10.865,-10.895,-10.935,-11.002,-11.056,-11.064,-11.054,-11.074,-11.136,-11.221,
--11.310,-11.386,-11.430,-11.431,-11.408,-11.394,-11.401,-11.415,-11.426,-11.439,-11.457,-11.472,-11.471,-11.443,-11.369,-11.237,
--11.070,-10.914,-10.801,-10.717,-10.637,-10.568,-10.533,-10.516,-10.470,-10.372,-10.249,-10.128,-9.994,-9.821,-9.629,-9.456,
--9.299,-9.102,-8.850,-8.607,-8.446,-8.350,-8.243,-8.087,-7.927,-7.805,-7.691,-7.525,-7.293,-7.044,-6.826,-6.649,
--6.502,-6.363,-6.197,-5.984,-5.751,-5.549,-5.387,-5.223,-5.033,-4.855,-4.725,-4.613,-4.463,-4.283,-4.135,-4.035,
--3.929,-3.782,-3.635,-3.526,-3.426,-3.291,-3.144,-3.045,-2.990,-2.915,-2.799,-2.697,-2.649,-2.618,-2.548,-2.452,
--2.374,-2.319,-2.255,-2.182,-2.130,-2.107,-2.089,-2.074,-2.090,-2.143,-2.188,-2.200,-2.202,-2.227,-2.267,-2.301,
--2.344,-2.414,-2.488,-2.530,-2.557,-2.613,-2.692,-2.741,-2.747,-2.763,-2.822,-2.893,-2.936,-2.967,-3.022,-3.090,
--3.138,-3.178,-3.243,-3.323,-3.378,-3.421,-3.512,-3.651,-3.755,-3.768,-3.747,-3.788,-3.895,-3.993,-4.040,-4.064,
--4.097,-4.132,-4.156,-4.178,-4.208,-4.240,-4.275,-4.329,-4.388,-4.416,-4.402,-4.385,-4.390,-4.383,-4.330,-4.260,
--4.231,-4.248,-4.271,-4.284,-4.290,-4.258,-4.138,-3.944,-3.772,-3.685,-3.649,-3.597,-3.516,-3.427,-3.324,-3.190,
--3.058,-2.983,-2.968,-2.960,-2.935,-2.910,-2.883,-2.807,-2.669,-2.518,-2.402,-2.300,-2.174,-2.035,-1.922,-1.834,
--1.730,-1.598,-1.460,-1.332,-1.205,-1.076,-.953,-.821,-.664,-.501,-.373,-.268,-.122,.086,.297,.464,
-.622,.826,1.057,1.256,1.424,1.624,1.886,2.185,2.504,2.855,3.227,3.581,3.930,4.351,4.867,5.374,
-5.762,6.065,6.418,6.866,7.323,7.707,8.048,8.430,8.877,9.348,9.801,10.216,10.589,10.933,11.280,11.652,
-12.039,12.442,12.893,13.414,13.973,14.520,15.047,15.570,16.057,16.446,16.746,17.075,17.544,18.134,18.712,19.173,
-19.562,20.033,20.633,21.054,20.663,18.992,16.349,13.916,13.068,14.483,17.830,22.210,26.762,30.957,34.558,37.513,
-39.834,41.498,42.459,42.808,42.850,42.905,43.065,43.230,43.368,43.589,43.939,44.245,44.269,43.953,43.430,42.861,
-42.319,41.750,40.904,39.356,36.825,33.561,30.293,27.661,25.764,24.337,23.274,22.775,22.951,23.478,23.789,23.585,
-23.046,22.539,22.199,21.805,21.034,19.785,18.312,17.077,16.449,16.490,16.936,17.389,17.544,17.314,16.788,16.109,
-15.382,14.662,13.949,13.150,12.084,10.635,8.934,7.324,6.050,5.015,3.915,2.603,1.230,-.005,-1.132,-2.324,
--3.601,-4.743,-5.517,-5.916,-6.114,-6.288,-6.538,-6.910,-7.403,-7.921,-8.309,-8.476,-8.460,-8.350,-8.198,-8.046,
--8.011,-8.255,-8.823,-9.556,-10.186,-10.521,-10.527,-10.264,-9.802,-9.214,-8.606,-8.118,-7.885,-7.991,-8.413,-8.974,
--9.376,-9.390,-9.057,-8.649,-8.389,-8.270,-8.207,-8.325,-8.920,-10.052,-11.277,-11.896,-11.533,-10.430,-9.178,-8.220,
--7.617,-7.213,-6.921,-6.770,-6.730,-6.657,-6.501,-6.501,-6.940,-7.627,-7.841,-7.083,-5.859,-5.402,-6.443,-8.424,
--10.092,-10.752,-10.691,-10.499,-10.350,-10.082,-9.664,-9.276,-9.008,-8.760,-8.443,-8.096,-7.749,-7.357,-6.929,-6.583,
--6.367,-6.150,-5.819,-5.473,-5.295,-5.280,-5.263,-5.186,-5.176,-5.313,-5.487,-5.550,-5.523,-5.527,-5.594,-5.659,
--5.713,-5.813,-5.967,-6.108,-6.210,-6.338,-6.528,-6.705,-6.785,-6.796,-6.834,-6.926,-6.999,-6.995,-6.939,-6.885,
--6.837,-6.761,-6.630,-6.450,-6.247,-6.053,-5.882,-5.713,-5.508,-5.249,-4.947,-4.614,-4.247,-3.857,-3.483,-3.143,
--2.805,-2.423,-2.005,-1.603,-1.232,-.854,-.442,-.026,.351,.708,1.101,1.543,1.985,2.388,2.772,3.181,
-3.614,4.030,4.404,4.752,5.095,5.421,5.711,5.978,6.268,6.605,6.964,7.306,7.620,7.928,8.255,8.610,
-8.991,9.404,9.853,10.323,10.776,11.163,11.446,11.618,11.703,11.740,11.764,11.806,11.891,12.024,12.169,12.272,
-12.311,12.321,12.347,12.391,12.424,12.434,12.442,12.464,12.498,12.531,12.569,12.627,12.705,12.788,12.861,12.919,
-12.966,13.017,13.098,13.219,13.363,13.505,13.646,13.814,14.031,14.285,14.539,14.760,14.947,15.130,15.331,15.535,
-15.695,15.797,15.885,16.007,16.152,16.262,16.319,16.283,16.312,16.411,16.531,16.593,16.599,16.607,16.653,16.733,
-16.849,17.011,17.189,17.322,17.413,17.538,17.736,17.956,18.152,18.368,18.673,19.037,19.357,19.585,19.760,19.913,
-20.029,20.110,20.196,20.301,20.376,20.403,20.454,20.609,20.854,21.119,21.375,21.637,21.903,22.174,22.487,22.845,
-23.124,23.189,23.113,23.169,23.538,24.100,24.602,24.930,25.113,25.144,24.980,24.718,24.604,24.775,25.097,25.339,
-25.440,25.500,25.581,25.631,25.606,25.545,25.513,25.515,25.517,25.511,25.513,25.529,25.527,25.430,25.137,24.604,
-23.932,23.304,22.836,22.488,22.159,21.801,21.412,20.972,20.431,19.757,18.951,18.050,17.170,16.504,16.165,16.032,
-15.837,15.434,14.934,14.522,14.226,13.924,13.527,13.072,12.650,12.324,12.113,11.973,11.793,11.469,11.018,10.573,
-10.253,10.060,9.917,9.757,9.549,9.301,9.090,9.023,9.131,9.297,9.341,9.173,8.824,8.368,7.850,7.289,
-6.717,6.192,5.762,5.338,4.647,3.469,2.035,1.044,.999,1.521,1.607,.718,-.634,-1.556,-1.849,-2.090,
--2.733,-3.560,-4.113,-4.314,-4.376,-4.347,-4.144,-3.970,-4.337,-5.527,-7.255,-8.984,-10.389,-11.388,-11.893,-11.815,
--11.281,-10.642,-10.229,-10.164,-10.402,-10.798,-11.122,-11.158,-10.895,-10.543,-10.320,-10.268,-10.328,-10.438,-10.464,-10.153,
--9.376,-8.445,-7.972,-8.256,-8.879,-9.051,-8.388,-7.303,-6.587,-6.631,-7.074,-7.170,-6.476,-5.159,-3.727,-2.543,
--1.619,-.778,.095,.915,1.394,1.182,.166,-1.313,-2.685,-3.736,-4.860,-6.560,-8.725,-10.605,-11.564,-11.685,
--11.536,-11.520,-11.624,-11.702,-11.741,-11.807,-11.879,-11.884,-11.814,-11.743,-11.735,-11.780,-11.779,-11.613,-11.291,-11.032,
--11.093,-11.444,-11.758,-11.812,-11.773,-11.934,-12.308,-12.749,-13.331,-14.144,-14.576,-13.368,-10.031,-6.114,-4.350,-6.133,
--10.063,-13.303,-14.211,-13.379,-12.333,-11.843,-11.666,-11.444,-11.258,-11.326,-11.581,-11.744,-11.684,-11.540,-11.521,-11.687,
--11.878,-11.848,-11.516,-11.115,-11.032,-11.417,-12.019,-12.467,-12.660,-12.782,-12.982,-13.205,-13.349,-13.460,-13.657,-13.968,
--14.323,-14.690,-15.097,-15.551,-16.011,-16.462,-16.929,-17.414,-17.878,-18.318,-18.788,-19.320,-19.876,-20.410,-20.940,-21.510,
--22.122,-22.759,-23.431,-24.140,-24.813,-25.363,-25.807,-26.252,-26.760,-27.286,-27.786,-28.286,-28.821,-29.355,-29.852,-30.367,
--30.979,-31.648,-32.231,-32.666,-33.043,-33.471,-33.953,-34.432,-34.907,-35.409,-35.913,-36.345,-36.696,-37.047,-37.467,-37.930,
--38.375,-38.790,-39.206,-39.636,-40.053,-40.441,-40.823,-41.227,-41.640,-42.019,-42.358,-42.725,-43.210,-43.827,-44.461,-44.958,
--45.263,-45.466,-45.682,-45.926,-46.118,-46.222,-46.323,-46.545,-46.913,-47.322,-47.644,-47.826,-47.888,-47.852,-47.713,-47.472,
--47.149,-46.741,-46.208,-45.558,-44.946,-44.623,-44.748,-45.274,-46.042,-46.921,-47.792,-48.476,-48.800,-48.793,-48.701,-48.738,
--48.867,-48.916,-48.837,-48.724,-48.615,-48.420,-48.103,-47.825,-47.774,-47.951,-48.202,-48.441,-48.699,-48.965,-49.115,-49.059,
--48.868,-48.689,-48.580,-48.505,-48.438,-48.383,-48.301,-48.133,-47.890,-47.676,-47.572,-47.544,-47.520,-47.494,-47.520,-47.606,
--47.675,-47.627,-47.415,-47.071,-46.688,-46.367,-46.147,-45.958,-45.663,-45.170,-44.513,-43.828,-43.260,-42.855,-42.533,-42.155,
--41.646,-41.047,-40.442,-39.841,-39.195,-38.492,-37.799,-37.180,-36.628,-36.107,-35.623,-35.203,-34.823,-34.438,-34.047,-33.685,
--33.339,-32.953,-32.510,-32.061,-31.616,-31.101,-30.468,-29.788,-29.168,-28.604,-28.005,-27.347,-26.704,-26.125,-25.569,-25.008,
--24.515,-24.161,-23.911,-23.667,-23.387,-23.048,-22.547,-21.757,-20.708,-19.620,-18.688,-17.929,-17.285,-16.791,-16.534,-16.473,
--16.373,-15.938,-14.940,-13.299,-11.170,-9.009,-7.388,-6.594,-6.412,-6.345,-6.059,-5.528,-4.837,-3.987,-2.974,-1.927,
--1.023,-.269,.533,1.546,2.688,3.729,4.561,5.319,6.215,7.296,8.379,9.215,9.685,9.849,9.863,9.871,
-9.952,10.114,10.319,10.525,10.734,11.001,11.396,11.951,12.642,13.405,14.148,14.780,15.246,15.567,15.839,16.182,
-16.665,17.274,17.921,18.527,19.103,19.750,20.544,21.436,22.280,22.985,23.588,24.162,24.692,25.089,25.314,25.417,
-25.455,25.422,25.302,25.151,25.076,25.149,25.376,25.752,26.284,26.963,27.732,28.539,29.372,30.232,31.066,31.788,
-32.357,32.816,33.235,33.646,34.045,34.435,34.840,35.282,35.775,36.343,37.009,37.741,38.434,38.969,39.340,39.709,
-40.323,41.313,42.567,43.795,44.759,45.439,45.969,46.408,46.642,46.540,46.164,45.759,45.544,45.560,45.765,46.169,
-46.816,47.660,48.568,49.465,50.402,51.439,52.523,53.531,54.398,55.136,55.744,56.185,56.461,56.670,56.916,57.190,
-57.377,57.392,57.279,57.171,57.148,57.152,57.082,56.948,56.904,57.068,57.363,57.598,57.694,57.737,57.792,57.774,
-57.618,57.478,57.592,57.962,58.307,58.395,58.289,58.176,58.061,57.770,57.229,56.589,56.042,55.628,55.287,55.038,
-54.988,55.167,55.422,55.536,55.462,55.412,55.622,56.012,56.185,55.899,55.425,55.242,55.421,55.600,55.681,56.180,
-57.488,58.996,59.476,58.497,57.016,56.298,56.543,56.954,56.949,56.756,56.790,56.951,56.859,56.485,56.166,56.104,
-56.164,56.178,56.206,56.430,56.977,57.873,58.971,59.849,60.025,59.464,58.782,58.724,59.444,60.409,60.972,60.883,
-60.281,59.425,58.535,57.707,56.779,55.354,53.211,50.839,49.436,50.147,53.104,57.184,60.793,62.990,63.946,64.396,
-64.811,65.154,65.283,65.280,65.293,65.282,65.115,64.837,64.640,64.561,64.427,64.139,63.818,63.583,63.330,62.884,
-62.290,61.756,61.373,61.041,60.669,60.278,59.851,59.282,58.550,57.827,57.269,56.791,56.178,55.344,54.352,53.250,
-52.082,51.054,50.479,50.412,50.506,50.370,50.014,49.775,49.870,50.176,50.477,50.739,51.034,51.312,51.397,51.225,
-50.961,50.849,50.993,51.295,51.577,51.734,51.784,51.789,51.763,51.668,51.518,51.393,51.226,50.526,48.416,44.195,
-38.082,31.473,26.312,23.924,24.205,25.865,27.496,28.475,28.955,29.216,29.244,28.945,28.455,28.011,27.584,26.898,
-25.856,24.751,23.923,23.377,22.872,22.305,21.766,21.253,20.578,19.652,18.694,17.979,17.497,17.011,16.429,15.912,
-15.586,15.333,14.957,14.450,13.958,13.562,13.230,12.954,12.782,12.691,12.544,12.244,11.862,11.535,11.298,11.087,
-10.865,10.656,10.463,10.237,9.960,9.690,9.480,9.297,9.091,8.904,8.860,9.032,9.352,9.652,9.757,9.551,
-9.001,8.184,7.276,6.484,5.933,5.612,5.411,5.225,5.016,4.798,4.578,4.322,3.992,3.594,3.184,2.830,
-2.576,2.408,2.261,2.045,1.725,1.358,1.049,.851,.721,.591,.436,.276,.114,-.075,-.312,-.583,
--.862,-1.126,-1.359,-1.572,-1.814,-2.128,-2.500,-2.863,-3.174,-3.449,-3.720,-3.994,-4.295,-4.690,-5.188,-5.638,
--5.822,-5.707,-5.551,-5.675,-6.140,-6.703,-7.088,-7.245,-7.320,-7.442,-7.604,-7.744,-7.862,-8.014,-8.219,-8.427,
--8.597,-8.742,-8.874,-8.940,-8.877,-8.732,-8.669,-8.813,-9.120,-9.444,-9.697,-9.886,-10.020,-10.064,-10.029,-10.021,
--10.128,-10.301,-10.420,-10.462,-10.529,-10.692,-10.894,-11.038,-11.114,-11.184,-11.261,-11.296,-11.269,-11.230,-11.236,-11.288,
--11.356,-11.430,-11.501,-11.540,-11.520,-11.464,-11.426,-11.433,-11.469,-11.517,-11.566,-11.593,-11.574,-11.515,-11.454,-11.403,
--11.322,-11.176,-11.004,-10.874,-10.803,-10.744,-10.664,-10.588,-10.543,-10.504,-10.423,-10.298,-10.163,-10.037,-9.911,-9.781,
--9.658,-9.526,-9.331,-9.058,-8.773,-8.565,-8.445,-8.347,-8.219,-8.070,-7.922,-7.763,-7.565,-7.333,-7.098,-6.882,
--6.687,-6.520,-6.374,-6.216,-6.015,-5.794,-5.603,-5.454,-5.301,-5.115,-4.930,-4.782,-4.647,-4.479,-4.294,-4.147,
--4.045,-3.937,-3.797,-3.666,-3.572,-3.476,-3.339,-3.191,-3.095,-3.042,-2.972,-2.866,-2.775,-2.731,-2.695,-2.623,
--2.529,-2.455,-2.397,-2.329,-2.258,-2.213,-2.195,-2.175,-2.155,-2.163,-2.206,-2.241,-2.243,-2.236,-2.251,-2.278,
--2.302,-2.342,-2.416,-2.503,-2.561,-2.595,-2.642,-2.708,-2.761,-2.795,-2.840,-2.903,-2.950,-2.964,-2.980,-3.030,
--3.093,-3.133,-3.162,-3.219,-3.298,-3.363,-3.411,-3.477,-3.558,-3.605,-3.608,-3.633,-3.735,-3.879,-3.981,-4.014,
--4.016,-4.024,-4.034,-4.041,-4.052,-4.077,-4.112,-4.160,-4.217,-4.253,-4.235,-4.185,-4.162,-4.180,-4.185,-4.136,
--4.066,-4.040,-4.061,-4.087,-4.097,-4.091,-4.041,-3.912,-3.732,-3.582,-3.503,-3.452,-3.380,-3.290,-3.204,-3.105,
--2.981,-2.865,-2.802,-2.780,-2.754,-2.718,-2.694,-2.671,-2.600,-2.471,-2.333,-2.212,-2.083,-1.933,-1.801,-1.715,
--1.631,-1.501,-1.349,-1.230,-1.135,-1.006,-.833,-.668,-.539,-.412,-.263,-.114,.013,.142,.294,.448,
-.590,.754,.968,1.191,1.379,1.564,1.809,2.106,2.394,2.663,2.971,3.337,3.712,4.082,4.514,5.038,
-5.562,5.969,6.286,6.639,7.074,7.508,7.864,8.164,8.474,8.813,9.178,9.576,10.002,10.411,10.763,11.081,
-11.418,11.793,12.204,12.670,13.214,13.794,14.335,14.822,15.307,15.809,16.269,16.631,16.936,17.306,17.831,18.485,
-19.122,19.603,19.961,20.399,20.960,21.170,20.215,17.783,14.752,12.851,13.454,16.631,21.305,26.185,30.490,34.032,
-36.903,39.204,40.956,42.139,42.795,43.080,43.189,43.225,43.214,43.216,43.330,43.557,43.744,43.753,43.629,43.505,
-43.401,43.167,42.597,41.468,39.530,36.683,33.253,29.957,27.401,25.640,24.344,23.348,22.842,22.980,23.472,23.754,
-23.528,22.999,22.553,22.298,21.987,21.304,20.179,18.840,17.668,16.974,16.855,17.144,17.504,17.620,17.361,16.801,
-16.113,15.429,14.788,14.129,13.318,12.200,10.728,9.057,7.479,6.176,5.059,3.894,2.576,1.232,.014,-1.119,
--2.326,-3.624,-4.796,-5.596,-5.989,-6.155,-6.304,-6.548,-6.907,-7.354,-7.811,-8.167,-8.355,-8.397,-8.357,-8.250,
--8.071,-7.897,-7.915,-8.269,-8.888,-9.513,-9.895,-9.949,-9.735,-9.337,-8.815,-8.254,-7.801,-7.620,-7.788,-8.216,
--8.648,-8.789,-8.535,-8.073,-7.714,-7.562,-7.451,-7.266,-7.262,-7.885,-9.195,-10.565,-11.107,-10.458,-9.091,-7.844,
--7.180,-6.924,-6.670,-6.303,-6.056,-6.102,-6.300,-6.460,-6.730,-7.430,-8.417,-8.905,-8.247,-6.858,-6.004,-6.541,
--8.055,-9.422,-9.996,-9.988,-9.823,-9.585,-9.218,-8.898,-8.862,-9.014,-8.995,-8.658,-8.205,-7.847,-7.538,-7.150,
--6.722,-6.371,-6.091,-5.796,-5.513,-5.363,-5.357,-5.373,-5.355,-5.380,-5.495,-5.607,-5.632,-5.633,-5.709,-5.819,
--5.851,-5.814,-5.843,-6.003,-6.203,-6.346,-6.459,-6.606,-6.758,-6.835,-6.838,-6.846,-6.894,-6.929,-6.904,-6.842,
--6.790,-6.743,-6.658,-6.514,-6.334,-6.144,-5.958,-5.773,-5.584,-5.381,-5.151,-4.886,-4.574,-4.217,-3.835,-3.468,
--3.133,-2.803,-2.442,-2.050,-1.663,-1.302,-.946,-.574,-.188,.196,.587,1.003,1.437,1.856,2.242,2.618,
-3.016,3.438,3.855,4.244,4.610,4.966,5.313,5.634,5.927,6.217,6.536,6.889,7.249,7.588,7.911,8.249,
-8.621,9.017,9.417,9.830,10.279,10.752,11.181,11.497,11.685,11.792,11.865,11.914,11.943,11.978,12.058,12.172,
-12.267,12.301,12.298,12.314,12.373,12.448,12.501,12.527,12.557,12.617,12.704,12.787,12.844,12.885,12.935,13.003,
-13.069,13.124,13.193,13.302,13.438,13.566,13.681,13.821,14.010,14.227,14.438,14.634,14.824,15.007,15.182,15.367,
-15.570,15.761,15.905,16.014,16.124,16.227,16.278,16.283,16.339,16.369,16.503,16.678,16.785,16.806,16.821,16.885,
-16.982,17.088,17.224,17.398,17.573,17.730,17.907,18.135,18.372,18.574,18.783,19.073,19.429,19.759,20.018,20.249,
-20.479,20.660,20.749,20.774,20.790,20.806,20.830,20.932,21.197,21.612,22.064,22.443,22.698,22.828,22.873,22.927,
-23.065,23.251,23.375,23.420,23.512,23.781,24.209,24.675,25.081,25.344,25.354,25.082,24.724,24.598,24.832,25.215,
-25.459,25.509,25.538,25.676,25.870,26.002,26.055,26.104,26.204,26.334,26.432,26.449,26.372,26.210,25.957,25.587,
-25.099,24.570,24.116,23.771,23.455,23.071,22.605,22.101,21.570,20.963,20.236,19.399,18.527,17.737,17.134,16.723,
-16.393,16.037,15.676,15.417,15.281,15.139,14.843,14.376,13.829,13.310,12.902,12.650,12.508,12.326,11.979,11.520,
-11.134,10.928,10.836,10.741,10.621,10.517,10.447,10.398,10.384,10.418,10.439,10.319,9.964,9.390,8.696,7.974,
-7.253,6.526,5.824,5.227,4.730,4.104,3.088,1.837,.996,1.068,1.698,1.906,1.165,-.007,-.742,-.915,
--1.184,-2.023,-3.116,-3.846,-4.036,-3.959,-3.854,-3.805,-4.025,-4.852,-6.320,-7.988,-9.344,-10.246,-10.827,-11.130,
--11.044,-10.570,-9.942,-9.480,-9.384,-9.673,-10.162,-10.515,-10.480,-10.130,-9.782,-9.637,-9.610,-9.568,-9.544,-9.564,
--9.408,-8.824,-7.997,-7.541,-7.836,-8.486,-8.650,-7.908,-6.700,-5.853,-5.786,-6.191,-6.410,-5.999,-4.963,-3.591,
--2.206,-1.019,-.094,.618,1.160,1.411,1.107,.139,-1.203,-2.455,-3.519,-4.796,-6.641,-8.769,-10.426,-11.155,
--11.206,-11.137,-11.198,-11.273,-11.251,-11.216,-11.263,-11.330,-11.308,-11.205,-11.121,-11.115,-11.171,-11.211,-11.138,-10.924,
--10.702,-10.668,-10.818,-10.902,-10.763,-10.590,-10.693,-11.114,-11.689,-12.401,-13.237,-13.601,-12.423,-9.426,-6.139,-4.961,
--6.875,-10.366,-12.897,-13.279,-12.313,-11.380,-10.986,-10.775,-10.458,-10.213,-10.292,-10.626,-10.952,-11.110,-11.136,-11.143,
--11.214,-11.325,-11.334,-11.131,-10.837,-10.763,-11.063,-11.531,-11.834,-11.909,-11.973,-12.189,-12.470,-12.665,-12.791,-12.982,
--13.281,-13.617,-13.941,-14.289,-14.697,-15.142,-15.591,-16.039,-16.483,-16.915,-17.349,-17.826,-18.361,-18.915,-19.461,-20.015,
--20.596,-21.193,-21.804,-22.463,-23.174,-23.851,-24.403,-24.856,-25.322,-25.843,-26.358,-26.820,-27.280,-27.792,-28.334,-28.866,
--29.422,-30.047,-30.682,-31.207,-31.600,-31.978,-32.440,-32.964,-33.478,-33.976,-34.491,-34.998,-35.432,-35.788,-36.142,-36.549,
--36.989,-37.427,-37.869,-38.326,-38.774,-39.179,-39.553,-39.944,-40.365,-40.781,-41.153,-41.494,-41.870,-42.343,-42.914,-43.500,
--43.982,-44.304,-44.518,-44.726,-44.970,-45.206,-45.398,-45.586,-45.844,-46.172,-46.479,-46.673,-46.734,-46.699,-46.595,-46.433,
--46.238,-46.030,-45.768,-45.362,-44.813,-44.305,-44.101,-44.317,-44.851,-45.550,-46.351,-47.201,-47.915,-48.266,-48.248,-48.127,
--48.157,-48.307,-48.366,-48.248,-48.077,-47.967,-47.883,-47.758,-47.654,-47.688,-47.875,-48.122,-48.362,-48.590,-48.772,-48.823,
--48.712,-48.534,-48.406,-48.353,-48.332,-48.302,-48.235,-48.087,-47.849,-47.613,-47.502,-47.535,-47.605,-47.622,-47.613,-47.654,
--47.748,-47.811,-47.758,-47.553,-47.212,-46.804,-46.445,-46.216,-46.072,-45.848,-45.397,-44.718,-43.960,-43.309,-42.857,-42.536,
--42.187,-41.702,-41.111,-40.510,-39.925,-39.295,-38.584,-37.854,-37.187,-36.596,-36.046,-35.542,-35.113,-34.750,-34.412,-34.100,
--33.837,-33.582,-33.240,-32.785,-32.297,-31.835,-31.338,-30.728,-30.054,-29.429,-28.870,-28.290,-27.664,-27.089,-26.631,-26.225,
--25.772,-25.276,-24.797,-24.341,-23.887,-23.481,-23.161,-22.804,-22.191,-21.267,-20.252,-19.396,-18.734,-18.166,-17.679,-17.346,
--17.091,-16.631,-15.688,-14.220,-12.406,-10.514,-8.854,-7.719,-7.216,-7.128,-7.062,-6.758,-6.219,-5.531,-4.708,-3.762,
--2.822,-2.029,-1.329,-.481,.652,1.904,2.970,3.740,4.407,5.248,6.341,7.509,8.487,9.115,9.403,9.473,
-9.455,9.438,9.457,9.536,9.698,9.960,10.308,10.714,11.171,11.697,12.298,12.935,13.550,14.113,14.624,15.092,
-15.531,15.981,16.495,17.088,17.720,18.358,19.032,19.781,20.568,21.289,21.895,22.442,22.993,23.517,23.924,24.193,
-24.383,24.520,24.548,24.426,24.230,24.101,24.119,24.281,24.593,25.104,25.823,26.660,27.511,28.361,29.260,30.193,
-31.048,31.728,32.249,32.691,33.081,33.383,33.613,33.884,34.319,34.941,35.658,36.367,37.018,37.598,38.103,38.563,
-39.085,39.818,40.834,42.036,43.208,44.180,44.934,45.539,45.995,46.191,46.048,45.661,45.264,45.035,45.004,45.145,
-45.481,46.047,46.781,47.541,48.264,49.038,49.980,51.075,52.184,53.180,54.027,54.725,55.249,55.588,55.810,56.039,
-56.329,56.603,56.729,56.688,56.609,56.624,56.696,56.670,56.504,56.387,56.543,56.949,57.346,57.527,57.523,57.471,
-57.400,57.274,57.150,57.166,57.341,57.520,57.574,57.542,57.519,57.469,57.264,56.868,56.362,55.814,55.227,54.648,
-54.242,54.170,54.407,54.726,54.883,54.839,54.793,54.962,55.290,55.460,55.276,54.976,54.965,55.262,55.477,55.468,
-55.727,56.729,58.034,58.511,57.629,56.189,55.467,55.851,56.661,57.174,57.366,57.543,57.682,57.473,56.862,56.210,
-55.889,55.910,55.999,55.917,55.718,55.798,56.636,58.293,60.094,61.042,60.708,59.669,58.949,59.094,59.862,60.668,
-61.083,60.933,60.225,59.165,58.107,57.197,56.061,54.096,51.310,48.821,48.273,50.503,54.715,59.037,61.978,63.364,
-63.960,64.420,64.797,64.925,64.892,64.929,65.045,65.036,64.829,64.585,64.434,64.305,64.091,63.825,63.561,63.218,
-62.703,62.114,61.659,61.380,61.112,60.726,60.247,59.717,59.104,58.426,57.822,57.347,56.798,55.897,54.646,53.340,
-52.268,51.518,51.082,50.932,50.929,50.797,50.393,49.922,49.744,49.964,50.351,50.665,50.906,51.182,51.453,51.546,
-51.396,51.151,51.040,51.172,51.484,51.820,52.043,52.115,52.089,52.033,51.978,51.952,51.967,51.819,50.849,48.105,
-43.059,36.367,29.846,25.470,24.113,25.102,26.903,28.298,28.978,29.245,29.352,29.266,28.912,28.390,27.823,27.140,
-26.208,25.134,24.236,23.670,23.238,22.685,22.048,21.526,21.093,20.475,19.545,18.560,17.841,17.379,16.911,16.330,
-15.811,15.505,15.300,14.990,14.545,14.105,13.747,13.430,13.131,12.909,12.774,12.608,12.307,11.928,11.622,11.437,
-11.269,11.020,10.715,10.441,10.228,10.031,9.808,9.566,9.328,9.096,8.881,8.750,8.802,9.075,9.454,9.706,
-9.629,9.179,8.462,7.636,6.824,6.131,5.637,5.358,5.211,5.063,4.846,4.583,4.313,4.022,3.664,3.233,
-2.792,2.431,2.189,2.028,1.867,1.649,1.380,1.090,.790,.478,.189,-.013,-.106,-.167,-.308,-.563,
--.868,-1.147,-1.392,-1.648,-1.952,-2.308,-2.693,-3.057,-3.350,-3.563,-3.745,-3.959,-4.236,-4.579,-4.998,-5.464,
--5.851,-5.986,-5.848,-5.668,-5.771,-6.262,-6.910,-7.357,-7.460,-7.386,-7.403,-7.616,-7.910,-8.124,-8.213,-8.254,
--8.333,-8.475,-8.668,-8.880,-9.060,-9.147,-9.120,-9.034,-8.976,-9.012,-9.179,-9.482,-9.855,-10.140,-10.204,-10.090,
--10.002,-10.089,-10.287,-10.431,-10.479,-10.538,-10.694,-10.896,-11.054,-11.164,-11.276,-11.384,-11.430,-11.405,-11.374,-11.382,
--11.413,-11.444,-11.492,-11.570,-11.638,-11.640,-11.586,-11.537,-11.529,-11.551,-11.585,-11.627,-11.651,-11.615,-11.523,-11.440,
--11.405,-11.370,-11.264,-11.100,-10.967,-10.908,-10.867,-10.783,-10.675,-10.596,-10.544,-10.460,-10.318,-10.159,-10.033,-9.942,
--9.861,-9.775,-9.668,-9.501,-9.258,-8.979,-8.739,-8.573,-8.451,-8.325,-8.174,-7.994,-7.785,-7.560,-7.346,-7.153,
--6.964,-6.761,-6.565,-6.395,-6.235,-6.052,-5.851,-5.672,-5.528,-5.383,-5.206,-5.020,-4.856,-4.701,-4.528,-4.350,
--4.202,-4.084,-3.957,-3.815,-3.692,-3.602,-3.502,-3.362,-3.223,-3.142,-3.104,-3.050,-2.961,-2.879,-2.828,-2.779,
--2.703,-2.617,-2.547,-2.482,-2.404,-2.330,-2.288,-2.268,-2.238,-2.202,-2.194,-2.222,-2.245,-2.245,-2.246,-2.273,
--2.311,-2.337,-2.369,-2.434,-2.525,-2.604,-2.658,-2.701,-2.742,-2.772,-2.800,-2.846,-2.907,-2.953,-2.974,-2.998,
--3.047,-3.100,-3.130,-3.154,-3.197,-3.257,-3.312,-3.365,-3.424,-3.476,-3.500,-3.522,-3.597,-3.728,-3.847,-3.898,
--3.901,-3.908,-3.926,-3.931,-3.920,-3.918,-3.937,-3.969,-4.009,-4.051,-4.065,-4.031,-3.981,-3.972,-4.005,-4.016,
--3.966,-3.896,-3.862,-3.862,-3.860,-3.849,-3.838,-3.800,-3.690,-3.529,-3.386,-3.296,-3.228,-3.148,-3.062,-2.979,
--2.878,-2.750,-2.642,-2.593,-2.580,-2.558,-2.526,-2.503,-2.473,-2.396,-2.277,-2.157,-2.036,-1.877,-1.692,-1.548,
--1.467,-1.384,-1.246,-1.104,-1.017,-.945,-.797,-.581,-.401,-.307,-.233,-.100,.081,.251,.392,.519,
-.638,.761,.915,1.110,1.306,1.485,1.699,2.001,2.341,2.621,2.839,3.096,3.457,3.877,4.301,4.745,
-5.230,5.705,6.115,6.485,6.876,7.266,7.591,7.862,8.162,8.512,8.839,9.104,9.374,9.726,10.137,10.532,
-10.897,11.268,11.658,12.057,12.501,13.037,13.629,14.177,14.635,15.063,15.534,16.033,16.493,16.878,17.235,17.675,
-18.283,18.998,19.600,19.941,20.196,20.659,21.142,20.774,18.781,15.609,13.037,12.919,15.762,20.532,25.660,30.097,
-33.577,36.276,38.457,40.289,41.781,42.817,43.315,43.367,43.204,43.044,42.996,43.062,43.169,43.229,43.244,43.338,
-43.597,43.883,43.857,43.207,41.768,39.490,36.448,32.997,29.757,27.242,25.487,24.179,23.164,22.646,22.791,23.302,
-23.578,23.307,22.732,22.291,22.116,21.949,21.487,20.679,19.708,18.811,18.152,17.800,17.703,17.689,17.542,17.132,
-16.492,15.765,15.090,14.497,13.895,13.111,12.004,10.569,8.976,7.467,6.167,5.008,3.829,2.564,1.285,.078,
--1.083,-2.287,-3.523,-4.623,-5.400,-5.828,-6.053,-6.263,-6.555,-6.930,-7.343,-7.731,-8.022,-8.170,-8.198,-8.170,
--8.115,-8.014,-7.887,-7.856,-8.053,-8.465,-8.896,-9.126,-9.089,-8.868,-8.565,-8.222,-7.870,-7.604,-7.557,-7.777,
--8.122,-8.304,-8.094,-7.538,-6.951,-6.633,-6.565,-6.481,-6.280,-6.305,-7.023,-8.397,-9.677,-9.958,-9.006,-7.478,
--6.315,-5.931,-5.990,-5.934,-5.628,-5.417,-5.616,-6.128,-6.679,-7.297,-8.254,-9.442,-10.129,-9.648,-8.298,-7.217,
--7.230,-8.071,-8.855,-9.088,-8.906,-8.537,-7.993,-7.398,-7.185,-7.623,-8.335,-8.633,-8.310,-7.808,-7.573,-7.521,
--7.302,-6.830,-6.350,-6.053,-5.884,-5.718,-5.544,-5.418,-5.366,-5.399,-5.516,-5.655,-5.710,-5.686,-5.721,-5.883,
--6.023,-5.948,-5.710,-5.586,-5.751,-6.091,-6.388,-6.563,-6.681,-6.783,-6.834,-6.819,-6.790,-6.785,-6.780,-6.743,
--6.690,-6.650,-6.605,-6.512,-6.362,-6.190,-6.021,-5.846,-5.648,-5.434,-5.218,-4.998,-4.755,-4.478,-4.165,-3.830,
--3.488,-3.150,-2.815,-2.471,-2.108,-1.730,-1.352,-.985,-.627,-.262,.128,.546,.972,1.388,1.789,2.183,
-2.578,2.977,3.383,3.797,4.206,4.590,4.947,5.290,5.627,5.949,6.249,6.551,6.886,7.246,7.593,7.913,
-8.246,8.627,9.038,9.433,9.820,10.255,10.751,11.225,11.568,11.760,11.870,11.965,12.038,12.063,12.062,12.092,
-12.176,12.272,12.329,12.349,12.374,12.437,12.520,12.587,12.620,12.649,12.720,12.836,12.950,13.014,13.039,13.074,
-13.141,13.211,13.268,13.346,13.478,13.631,13.753,13.849,13.981,14.171,14.369,14.533,14.688,14.873,15.074,15.251,
-15.415,15.609,15.824,16.005,16.132,16.234,16.318,16.350,16.339,16.481,16.536,16.677,16.861,16.972,16.991,17.013,
-17.109,17.240,17.351,17.464,17.629,17.844,18.068,18.296,18.538,18.774,18.985,19.217,19.532,19.908,20.255,20.537,
-20.807,21.087,21.293,21.343,21.277,21.217,21.236,21.341,21.559,21.938,22.453,22.960,23.292,23.374,23.253,23.056,
-22.936,22.992,23.196,23.423,23.577,23.691,23.872,24.189,24.626,25.088,25.413,25.425,25.100,24.673,24.488,24.676,
-25.042,25.307,25.411,25.516,25.760,26.098,26.400,26.616,26.794,26.985,27.164,27.254,27.190,26.971,26.653,26.309,
-25.985,25.700,25.456,25.231,24.956,24.549,23.997,23.375,22.764,22.163,21.503,20.732,19.873,19.013,18.248,17.618,
-17.080,16.571,16.124,15.869,15.878,16.017,16.027,15.754,15.249,14.657,14.093,13.638,13.353,13.201,13.017,12.671,
-12.238,11.921,11.797,11.746,11.638,11.505,11.451,11.488,11.520,11.478,11.364,11.177,10.857,10.344,9.654,8.875,
-8.089,7.302,6.467,5.588,4.778,4.132,3.529,2.725,1.752,1.082,1.158,1.744,2.040,1.563,.692,.115,
--.093,-.506,-1.495,-2.700,-3.492,-3.687,-3.592,-3.548,-3.735,-4.321,-5.445,-6.931,-8.275,-9.084,-9.411,-9.560,
--9.658,-9.587,-9.260,-8.806,-8.480,-8.481,-8.840,-9.354,-9.671,-9.575,-9.219,-8.947,-8.877,-8.818,-8.647,-8.527,
--8.603,-8.634,-8.237,-7.501,-7.049,-7.322,-7.963,-8.135,-7.419,-6.229,-5.343,-5.151,-5.417,-5.615,-5.341,-4.481,
--3.161,-1.659,-.304,.674,1.248,1.497,1.431,.957,.077,-.988,-2.017,-3.111,-4.620,-6.642,-8.707,-10.137,
--10.704,-10.765,-10.778,-10.848,-10.838,-10.733,-10.684,-10.751,-10.815,-10.763,-10.634,-10.537,-10.514,-10.560,-10.651,-10.716,
--10.651,-10.452,-10.217,-9.970,-9.571,-8.972,-8.459,-8.458,-9.091,-10.107,-11.188,-12.037,-12.138,-10.894,-8.459,-6.235,
--5.938,-7.905,-10.629,-12.207,-12.084,-11.168,-10.487,-10.209,-9.961,-9.603,-9.364,-9.416,-9.660,-9.931,-10.175,-10.393,
--10.573,-10.738,-10.931,-11.095,-11.097,-10.938,-10.826,-10.924,-11.129,-11.221,-11.191,-11.244,-11.495,-11.810,-12.017,-12.138,
--12.325,-12.629,-12.968,-13.272,-13.573,-13.919,-14.307,-14.704,-15.095,-15.486,-15.888,-16.326,-16.827,-17.378,-17.936,-18.485,
--19.052,-19.651,-20.256,-20.864,-21.512,-22.210,-22.881,-23.441,-23.915,-24.398,-24.915,-25.398,-25.816,-26.241,-26.753,-27.336,
--27.930,-28.525,-29.132,-29.704,-30.174,-30.562,-30.975,-31.475,-32.021,-32.554,-33.072,-33.594,-34.083,-34.495,-34.857,-35.239,
--35.664,-36.094,-36.517,-36.966,-37.454,-37.927,-38.336,-38.705,-39.094,-39.515,-39.924,-40.289,-40.634,-41.012,-41.465,-41.995,
--42.548,-43.033,-43.384,-43.617,-43.815,-44.041,-44.287,-44.519,-44.743,-44.988,-45.241,-45.441,-45.544,-45.562,-45.524,-45.436,
--45.308,-45.183,-45.087,-44.954,-44.665,-44.219,-43.820,-43.722,-44.004,-44.533,-45.176,-45.919,-46.743,-47.451,-47.790,-47.743,
--47.593,-47.608,-47.755,-47.803,-47.661,-47.473,-47.406,-47.447,-47.488,-47.506,-47.576,-47.750,-48.000,-48.267,-48.488,-48.588,
--48.524,-48.350,-48.192,-48.124,-48.116,-48.108,-48.075,-47.995,-47.824,-47.572,-47.365,-47.338,-47.475,-47.629,-47.690,-47.697,
--47.736,-47.816,-47.867,-47.820,-47.640,-47.321,-46.906,-46.506,-46.216,-46.024,-45.799,-45.416,-44.846,-44.166,-43.505,-42.962,
--42.541,-42.135,-41.631,-41.032,-40.433,-39.878,-39.302,-38.634,-37.915,-37.242,-36.657,-36.129,-35.643,-35.219,-34.850,-34.511,
--34.210,-33.981,-33.780,-33.484,-33.029,-32.502,-32.007,-31.525,-30.973,-30.366,-29.797,-29.283,-28.734,-28.125,-27.571,-27.176,
--26.882,-26.547,-26.111,-25.596,-25.011,-24.374,-23.787,-23.361,-23.024,-22.546,-21.809,-20.960,-20.214,-19.612,-19.070,-18.568,
--18.122,-17.573,-16.620,-15.143,-13.397,-11.780,-10.486,-9.475,-8.696,-8.174,-7.873,-7.631,-7.292,-6.822,-6.244,-5.535,
--4.698,-3.850,-3.113,-2.421,-1.547,-.380,.896,1.980,2.767,3.434,4.231,5.246,6.369,7.402,8.188,8.665,
-8.875,8.914,8.871,8.812,8.805,8.930,9.217,9.607,10.004,10.381,10.798,11.304,11.872,12.453,13.045,13.666,
-14.280,14.811,15.255,15.715,16.283,16.933,17.570,18.167,18.781,19.444,20.093,20.659,21.150,21.622,22.080,22.484,
-22.830,23.157,23.462,23.663,23.698,23.620,23.546,23.545,23.629,23.843,24.274,24.938,25.717,26.484,27.250,28.122,
-29.122,30.118,30.960,31.616,32.135,32.514,32.712,32.787,32.949,33.401,34.142,34.982,35.724,36.312,36.808,37.293,
-37.832,38.487,39.315,40.316,41.415,42.507,43.519,44.415,45.146,45.629,45.793,45.655,45.339,45.003,44.752,44.624,
-44.646,44.869,45.314,45.911,46.539,47.144,47.790,48.591,49.580,50.675,51.747,52.705,53.504,54.120,54.541,54.815,
-55.052,55.348,55.682,55.931,56.015,56.014,56.076,56.217,56.285,56.176,56.035,56.126,56.521,56.994,57.265,57.269,
-57.139,57.004,56.892,56.806,56.772,56.792,56.833,56.887,56.973,57.066,57.062,56.887,56.564,56.133,55.569,54.861,
-54.156,53.703,53.632,53.828,54.055,54.157,54.147,54.148,54.274,54.500,54.675,54.715,54.765,55.008,55.322,55.333,
-54.993,54.888,55.624,56.907,57.626,57.048,55.716,54.890,55.227,56.289,57.279,57.872,58.189,58.284,57.999,57.288,
-56.434,55.828,55.612,55.594,55.455,55.115,54.949,55.586,57.300,59.549,61.258,61.685,61.005,60.023,59.444,59.481,
-59.983,60.662,61.138,61.033,60.252,59.111,57.992,56.807,54.984,52.224,49.285,47.806,49.064,52.787,57.270,60.745,
-62.638,63.524,64.108,64.539,64.666,64.572,64.556,64.709,64.815,64.698,64.446,64.232,64.063,63.850,63.573,63.263,
-62.894,62.443,62.003,61.700,61.486,61.168,60.649,60.036,59.453,58.895,58.318,57.745,57.157,56.379,55.246,53.877,
-52.643,51.838,51.464,51.341,51.284,51.135,50.782,50.282,49.900,49.873,50.149,50.476,50.723,50.987,51.349,51.672,
-51.749,51.568,51.347,51.308,51.496,51.806,52.094,52.264,52.300,52.264,52.236,52.266,52.373,52.504,52.312,50.986,
-47.561,41.764,34.686,28.442,24.888,24.420,25.906,27.723,28.875,29.304,29.386,29.344,29.153,28.777,28.292,27.740,
-27.023,26.077,25.063,24.250,23.695,23.177,22.521,21.836,21.308,20.861,20.203,19.245,18.264,17.573,17.146,16.719,
-16.188,15.714,15.434,15.245,14.955,14.548,14.162,13.870,13.616,13.351,13.110,12.909,12.670,12.332,11.969,11.713,
-11.577,11.429,11.158,10.814,10.525,10.334,10.160,9.926,9.653,9.413,9.221,9.033,8.844,8.743,8.811,8.987,
-9.087,8.969,8.654,8.242,7.753,7.133,6.404,5.739,5.317,5.131,5.002,4.779,4.468,4.169,3.918,3.650,
-3.295,2.862,2.429,2.065,1.785,1.566,1.386,1.229,1.061,.840,.558,.281,.087,-.039,-.214,-.532,
--.946,-1.309,-1.544,-1.717,-1.950,-2.293,-2.705,-3.116,-3.473,-3.739,-3.905,-4.022,-4.183,-4.452,-4.820,-5.229,
--5.624,-5.946,-6.121,-6.127,-6.074,-6.180,-6.579,-7.143,-7.557,-7.602,-7.384,-7.240,-7.411,-7.830,-8.236,-8.447,
--8.493,-8.505,-8.559,-8.655,-8.792,-8.991,-9.234,-9.430,-9.476,-9.347,-9.142,-9.039,-9.174,-9.514,-9.863,-10.026,
--10.007,-9.996,-10.147,-10.411,-10.631,-10.740,-10.808,-10.910,-11.023,-11.106,-11.181,-11.293,-11.416,-11.483,-11.489,-11.486,
--11.500,-11.500,-11.478,-11.487,-11.569,-11.676,-11.725,-11.704,-11.672,-11.661,-11.655,-11.642,-11.644,-11.657,-11.636,-11.556,
--11.469,-11.432,-11.419,-11.349,-11.212,-11.085,-11.022,-10.984,-10.901,-10.780,-10.679,-10.605,-10.502,-10.338,-10.159,-10.028,
--9.951,-9.886,-9.802,-9.698,-9.566,-9.387,-9.159,-8.917,-8.700,-8.523,-8.372,-8.218,-8.030,-7.802,-7.562,-7.359,
--7.200,-7.044,-6.850,-6.634,-6.434,-6.259,-6.082,-5.895,-5.720,-5.569,-5.423,-5.255,-5.074,-4.901,-4.736,-4.569,
--4.407,-4.268,-4.139,-4.000,-3.856,-3.734,-3.635,-3.522,-3.385,-3.264,-3.198,-3.165,-3.117,-3.044,-2.975,-2.924,
--2.869,-2.796,-2.719,-2.650,-2.575,-2.488,-2.414,-2.373,-2.344,-2.298,-2.246,-2.227,-2.243,-2.259,-2.262,-2.280,
--2.332,-2.390,-2.422,-2.438,-2.476,-2.549,-2.633,-2.705,-2.761,-2.799,-2.818,-2.831,-2.854,-2.891,-2.930,-2.971,
--3.021,-3.076,-3.116,-3.140,-3.163,-3.193,-3.223,-3.256,-3.312,-3.390,-3.452,-3.483,-3.521,-3.608,-3.713,-3.763,
--3.749,-3.736,-3.766,-3.805,-3.804,-3.776,-3.771,-3.795,-3.821,-3.837,-3.849,-3.851,-3.828,-3.804,-3.817,-3.853,
--3.855,-3.796,-3.720,-3.670,-3.634,-3.589,-3.553,-3.549,-3.540,-3.467,-3.329,-3.185,-3.073,-2.979,-2.890,-2.811,
--2.734,-2.624,-2.482,-2.366,-2.321,-2.322,-2.320,-2.308,-2.297,-2.261,-2.169,-2.046,-1.934,-1.823,-1.665,-1.475,
--1.325,-1.231,-1.122,-.963,-.824,-.760,-.707,-.560,-.341,-.171,-.098,-.032,.109,.298,.460,.581,
-.699,.831,.977,1.151,1.354,1.557,1.743,1.959,2.251,2.572,2.833,3.036,3.283,3.648,4.095,4.555,
-5.005,5.446,5.867,6.280,6.721,7.159,7.484,7.645,7.776,8.054,8.474,8.859,9.104,9.302,9.587,9.968,
-10.368,10.766,11.186,11.611,12.008,12.418,12.917,13.494,14.045,14.503,14.898,15.301,15.741,16.221,16.717,17.185,
-17.622,18.129,18.778,19.417,19.786,19.912,20.180,20.700,20.760,19.346,16.453,13.646,13.001,15.436,20.130,25.393,
-29.894,33.173,35.467,37.321,39.199,41.138,42.722,43.492,43.451,43.066,42.819,42.835,42.945,42.984,42.960,43.006,
-43.254,43.686,44.059,43.986,43.168,41.521,39.120,36.126,32.854,29.794,27.357,25.568,24.162,23.041,22.452,22.585,
-23.105,23.333,22.920,22.188,21.707,21.666,21.755,21.598,21.121,20.494,19.870,19.282,18.729,18.238,17.809,17.369,
-16.820,16.134,15.389,14.705,14.137,13.597,12.883,11.826,10.431,8.889,7.424,6.135,4.967,3.819,2.643,1.448,
-.249,-.961,-2.172,-3.320,-4.293,-5.009,-5.478,-5.808,-6.125,-6.495,-6.907,-7.311,-7.659,-7.899,-7.990,-7.942,
--7.831,-7.743,-7.713,-7.729,-7.805,-7.979,-8.227,-8.418,-8.408,-8.186,-7.887,-7.656,-7.526,-7.454,-7.431,-7.511,
--7.703,-7.867,-7.763,-7.259,-6.507,-5.855,-5.548,-5.503,-5.466,-5.398,-5.619,-6.457,-7.736,-8.733,-8.735,-7.670,
--6.195,-5.137,-4.846,-5.030,-5.182,-5.129,-5.138,-5.513,-6.225,-7.039,-7.914,-9.028,-10.289,-11.077,-10.777,-9.538,
--8.251,-7.663,-7.737,-7.963,-8.037,-7.943,-7.584,-6.811,-5.894,-5.537,-6.098,-7.015,-7.358,-6.904,-6.325,-6.272,
--6.615,-6.760,-6.473,-6.080,-5.933,-5.975,-5.907,-5.596,-5.197,-4.964,-5.029,-5.321,-5.615,-5.733,-5.725,-5.796,
--6.004,-6.114,-5.873,-5.387,-5.082,-5.256,-5.787,-6.313,-6.620,-6.742,-6.786,-6.782,-6.728,-6.660,-6.620,-6.602,
--6.574,-6.538,-6.505,-6.459,-6.364,-6.221,-6.064,-5.909,-5.735,-5.526,-5.296,-5.070,-4.847,-4.611,-4.358,-4.098,
--3.823,-3.511,-3.162,-2.807,-2.471,-2.139,-1.776,-1.379,-.985,-.618,-.255,.145,.578,1.000,1.392,1.782,
-2.200,2.628,3.034,3.422,3.824,4.240,4.628,4.966,5.282,5.616,5.956,6.271,6.573,6.908,7.278,7.633,
-7.950,8.277,8.668,9.095,9.492,9.862,10.288,10.800,11.302,11.662,11.857,11.972,12.076,12.151,12.157,12.124,
-12.126,12.201,12.314,12.413,12.479,12.529,12.579,12.633,12.679,12.705,12.726,12.779,12.880,12.991,13.059,13.090,
-13.135,13.214,13.292,13.348,13.421,13.552,13.707,13.824,13.916,14.052,14.248,14.435,14.570,14.704,14.896,15.113,
-15.288,15.427,15.600,15.812,15.995,16.114,16.219,16.342,16.438,16.481,16.635,16.711,16.829,16.984,17.085,17.116,
-17.172,17.325,17.518,17.666,17.785,17.954,18.195,18.461,18.716,18.963,19.209,19.466,19.778,20.176,20.602,20.948,
-21.190,21.407,21.643,21.804,21.790,21.662,21.601,21.717,21.975,22.307,22.711,23.175,23.573,23.729,23.572,23.217,
-22.877,22.730,22.824,23.078,23.342,23.514,23.611,23.739,24.002,24.433,24.950,25.370,25.494,25.266,24.864,24.588,
-24.605,24.839,25.106,25.328,25.566,25.893,26.298,26.719,27.117,27.479,27.773,27.936,27.918,27.719,27.400,27.053,
-26.772,26.617,26.590,26.614,26.543,26.232,25.640,24.875,24.108,23.423,22.771,22.058,21.246,20.379,19.535,18.770,
-18.091,17.463,16.879,16.440,16.296,16.457,16.701,16.732,16.435,15.919,15.344,14.799,14.340,14.035,13.865,13.688,
-13.387,13.039,12.822,12.761,12.694,12.499,12.266,12.155,12.177,12.187,12.067,11.812,11.457,11.002,10.428,9.752,
-9.016,8.251,7.435,6.518,5.502,4.514,3.724,3.148,2.614,2.029,1.613,1.674,2.120,2.417,2.157,1.507,
-.918,.481,-.140,-1.142,-2.221,-2.924,-3.161,-3.219,-3.396,-3.840,-4.633,-5.768,-6.990,-7.870,-8.181,-8.101,
--7.962,-7.892,-7.801,-7.622,-7.438,-7.400,-7.605,-8.035,-8.504,-8.731,-8.586,-8.260,-8.058,-8.019,-7.925,-7.701,
--7.586,-7.740,-7.875,-7.560,-6.868,-6.411,-6.618,-7.162,-7.296,-6.674,-5.667,-4.906,-4.675,-4.777,-4.814,-4.479,
--3.658,-2.429,-1.021,.287,1.283,1.859,1.961,1.580,.827,-.038,-.796,-1.527,-2.611,-4.344,-6.517,-8.478,
--9.685,-10.148,-10.273,-10.363,-10.403,-10.308,-10.176,-10.169,-10.264,-10.293,-10.188,-10.049,-9.980,-9.971,-9.997,-10.078,
--10.184,-10.178,-9.942,-9.460,-8.713,-7.613,-6.244,-5.109,-4.892,-5.875,-7.670,-9.529,-10.773,-10.947,-9.941,-8.275,
--7.088,-7.349,-8.907,-10.548,-11.173,-10.766,-10.098,-9.711,-9.500,-9.204,-8.877,-8.729,-8.766,-8.840,-8.923,-9.119,
--9.433,-9.739,-9.978,-10.218,-10.464,-10.587,-10.512,-10.377,-10.353,-10.425,-10.463,-10.469,-10.586,-10.866,-11.167,-11.351,
--11.468,-11.666,-11.981,-12.321,-12.613,-12.880,-13.173,-13.500,-13.843,-14.192,-14.555,-14.942,-15.383,-15.896,-16.452,-17.000,
--17.532,-18.091,-18.699,-19.323,-19.939,-20.574,-21.246,-21.902,-22.474,-22.975,-23.470,-23.967,-24.411,-24.793,-25.202,-25.729,
--26.362,-27.019,-27.641,-28.207,-28.704,-29.135,-29.559,-30.046,-30.597,-31.155,-31.687,-32.213,-32.732,-33.193,-33.572,-33.931,
--34.345,-34.799,-35.233,-35.648,-36.104,-36.618,-37.117,-37.535,-37.898,-38.276,-38.688,-39.094,-39.462,-39.809,-40.179,-40.607,
--41.107,-41.648,-42.151,-42.534,-42.785,-42.972,-43.164,-43.374,-43.584,-43.795,-44.012,-44.206,-44.334,-44.386,-44.401,-44.406,
--44.387,-44.338,-44.297,-44.288,-44.240,-44.036,-43.685,-43.382,-43.354,-43.656,-44.169,-44.795,-45.538,-46.357,-47.033,-47.325,
--47.248,-47.093,-47.110,-47.246,-47.279,-47.139,-46.988,-46.997,-47.140,-47.278,-47.345,-47.408,-47.563,-47.831,-48.142,-48.373,
--48.412,-48.258,-48.040,-47.905,-47.875,-47.862,-47.805,-47.724,-47.632,-47.484,-47.272,-47.110,-47.129,-47.320,-47.532,-47.654,
--47.703,-47.748,-47.801,-47.824,-47.778,-47.629,-47.343,-46.933,-46.489,-46.112,-45.821,-45.560,-45.261,-44.877,-44.373,-43.763,
--43.135,-42.579,-42.078,-41.533,-40.913,-40.298,-39.751,-39.209,-38.577,-37.874,-37.217,-36.668,-36.201,-35.790,-35.446,-35.154,
--34.852,-34.526,-34.234,-33.986,-33.684,-33.232,-32.675,-32.135,-31.653,-31.171,-30.669,-30.194,-29.741,-29.227,-28.631,-28.074,
--27.683,-27.434,-27.194,-26.878,-26.465,-25.916,-25.209,-24.445,-23.800,-23.325,-22.878,-22.321,-21.680,-21.052,-20.454,-19.859,
--19.288,-18.704,-17.861,-16.470,-14.611,-12.810,-11.569,-10.879,-10.333,-9.644,-8.896,-8.309,-7.925,-7.620,-7.281,-6.854,
--6.293,-5.585,-4.825,-4.128,-3.456,-2.618,-1.505,-.255,.878,1.777,2.531,3.297,4.165,5.124,6.095,6.958,
-7.600,7.985,8.166,8.214,8.182,8.147,8.221,8.467,8.817,9.151,9.445,9.798,10.281,10.848,11.417,11.991,
-12.619,13.268,13.831,14.283,14.738,15.313,15.962,16.551,17.046,17.556,18.166,18.808,19.344,19.741,20.090,20.480,
-20.924,21.403,21.913,22.428,22.865,23.147,23.281,23.340,23.381,23.444,23.602,23.957,24.521,25.178,25.805,26.427,
-27.175,28.106,29.120,30.069,30.882,31.536,31.970,32.136,32.147,32.274,32.737,33.504,34.341,35.038,35.563,36.010,
-36.487,37.075,37.819,38.710,39.687,40.697,41.747,42.855,43.932,44.776,45.223,45.290,45.140,44.927,44.703,44.468,
-44.263,44.181,44.289,44.584,45.016,45.532,46.098,46.712,47.404,48.224,49.185,50.223,51.222,52.092,52.797,53.339,
-53.737,54.047,54.364,54.727,55.061,55.256,55.325,55.416,55.624,55.850,55.925,55.855,55.853,56.092,56.495,56.822,
-56.912,56.797,56.617,56.474,56.395,56.354,56.327,56.333,56.429,56.619,56.800,56.834,56.678,56.376,55.926,55.269,
-54.455,53.739,53.374,53.357,53.454,53.496,53.522,53.631,53.805,53.950,54.029,54.093,54.230,54.521,54.931,55.209,
-55.035,54.474,54.173,54.797,56.176,57.243,57.068,55.863,54.765,54.690,55.586,56.768,57.686,58.209,58.373,58.153,
-57.555,56.747,56.006,55.515,55.246,55.013,54.688,54.447,54.756,55.996,58.027,60.158,61.616,62.044,61.600,60.732,
-59.933,59.610,59.923,60.630,61.178,61.097,60.344,59.215,57.869,56.049,53.447,50.441,48.331,48.532,51.334,55.514,
-59.293,61.695,62.943,63.696,64.234,64.471,64.431,64.367,64.428,64.481,64.361,64.116,63.892,63.713,63.494,63.204,
-62.887,62.564,62.227,61.913,61.657,61.383,60.949,60.350,59.757,59.301,58.904,58.380,57.640,56.708,55.627,54.469,
-53.407,52.637,52.196,51.935,51.679,51.357,50.958,50.501,50.092,49.918,50.057,50.355,50.610,50.828,51.171,51.650,
-52.010,52.018,51.759,51.545,51.592,51.855,52.158,52.373,52.467,52.471,52.440,52.438,52.516,52.702,52.875,52.529,
-50.713,46.546,40.126,32.981,27.359,24.770,25.049,26.741,28.336,29.177,29.415,29.402,29.270,28.980,28.549,28.075,
-27.576,26.944,26.106,25.172,24.338,23.660,23.020,22.330,21.668,21.125,20.598,19.874,18.927,18.002,17.336,16.894,
-16.478,16.015,15.623,15.379,15.174,14.863,14.462,14.112,13.883,13.714,13.526,13.300,13.036,12.710,12.335,12.010,
-11.819,11.716,11.563,11.289,10.973,10.723,10.543,10.345,10.091,9.837,9.646,9.486,9.267,8.976,8.706,8.537,
-8.419,8.235,7.972,7.753,7.661,7.566,7.229,6.583,5.845,5.307,5.045,4.890,4.648,4.302,3.969,3.720,
-3.503,3.223,2.846,2.415,1.995,1.630,1.348,1.162,1.051,.949,.787,.571,.377,.247,.090,-.248,
--.799,-1.392,-1.799,-1.966,-2.049,-2.231,-2.551,-2.923,-3.276,-3.603,-3.904,-4.144,-4.311,-4.470,-4.710,-5.043,
--5.398,-5.714,-5.992,-6.243,-6.436,-6.543,-6.635,-6.854,-7.231,-7.583,-7.663,-7.447,-7.213,-7.284,-7.706,-8.231,
--8.599,-8.759,-8.813,-8.837,-8.832,-8.831,-8.933,-9.201,-9.549,-9.785,-9.771,-9.540,-9.275,-9.171,-9.292,-9.532,
--9.734,-9.847,-9.967,-10.199,-10.520,-10.818,-11.019,-11.147,-11.237,-11.285,-11.286,-11.290,-11.347,-11.435,-11.495,-11.513,
--11.529,-11.550,-11.541,-11.499,-11.496,-11.581,-11.704,-11.776,-11.777,-11.764,-11.768,-11.758,-11.716,-11.681,-11.686,-11.694,
--11.650,-11.568,-11.513,-11.495,-11.452,-11.346,-11.221,-11.136,-11.081,-11.004,-10.894,-10.787,-10.691,-10.566,-10.388,-10.202,
--10.068,-9.990,-9.917,-9.816,-9.696,-9.580,-9.456,-9.293,-9.074,-8.821,-8.577,-8.376,-8.213,-8.042,-7.829,-7.589,
--7.375,-7.215,-7.072,-6.894,-6.674,-6.451,-6.254,-6.077,-5.903,-5.736,-5.583,-5.437,-5.281,-5.111,-4.939,-4.772,
--4.614,-4.469,-4.338,-4.210,-4.074,-3.937,-3.812,-3.694,-3.571,-3.448,-3.350,-3.287,-3.234,-3.170,-3.103,-3.052,
--3.013,-2.963,-2.896,-2.825,-2.754,-2.674,-2.592,-2.532,-2.497,-2.461,-2.405,-2.350,-2.330,-2.339,-2.344,-2.345,
--2.370,-2.431,-2.495,-2.526,-2.530,-2.542,-2.581,-2.640,-2.706,-2.771,-2.830,-2.877,-2.911,-2.930,-2.939,-2.954,
--2.993,-3.049,-3.093,-3.110,-3.125,-3.157,-3.191,-3.203,-3.213,-3.268,-3.363,-3.442,-3.477,-3.512,-3.585,-3.656,
--3.661,-3.619,-3.605,-3.642,-3.667,-3.638,-3.598,-3.608,-3.652,-3.676,-3.667,-3.655,-3.653,-3.647,-3.641,-3.656,
--3.677,-3.661,-3.595,-3.517,-3.454,-3.391,-3.320,-3.276,-3.286,-3.300,-3.249,-3.127,-2.988,-2.865,-2.752,-2.646,
--2.561,-2.481,-2.364,-2.212,-2.088,-2.039,-2.039,-2.042,-2.038,-2.033,-1.996,-1.896,-1.762,-1.644,-1.539,-1.409,
--1.261,-1.143,-1.048,-.907,-.709,-.541,-.464,-.412,-.290,-.115,.023,.111,.225,.396,.553,.636,
-.695,.806,.974,1.163,1.369,1.605,1.847,2.056,2.247,2.472,2.733,2.992,3.244,3.537,3.906,4.328,
-4.771,5.222,5.667,6.096,6.540,7.032,7.489,7.749,7.778,7.778,7.981,8.381,8.773,9.045,9.283,9.598,
-9.966,10.324,10.693,11.119,11.567,11.972,12.363,12.825,13.361,13.889,14.360,14.783,15.163,15.515,15.925,16.476,
-17.090,17.605,18.025,18.530,19.131,19.551,19.650,19.767,20.229,20.565,19.691,17.231,14.439,13.448,15.507,20.055,
-25.361,29.819,32.745,34.445,35.819,37.696,40.143,42.377,43.518,43.472,42.956,42.694,42.786,42.902,42.853,42.780,
-42.904,43.258,43.665,43.848,43.524,42.514,40.798,38.474,35.686,32.675,29.824,27.476,25.666,24.182,22.977,22.339,
-22.472,22.989,23.116,22.480,21.529,21.014,21.174,21.577,21.687,21.385,20.899,20.405,19.869,19.206,18.458,17.747,
-17.135,16.566,15.948,15.262,14.590,14.024,13.516,12.855,11.830,10.441,8.907,7.469,6.205,5.045,3.912,2.781,
-1.631,.423,-.839,-2.063,-3.130,-3.974,-4.609,-5.095,-5.505,-5.905,-6.328,-6.757,-7.151,-7.476,-7.706,-7.795,
--7.718,-7.526,-7.350,-7.303,-7.401,-7.589,-7.809,-7.998,-8.054,-7.881,-7.505,-7.101,-6.858,-6.831,-6.931,-7.056,
--7.178,-7.284,-7.275,-6.993,-6.387,-5.628,-5.009,-4.697,-4.615,-4.611,-4.708,-5.122,-5.958,-6.960,-7.608,-7.517,
--6.727,-5.664,-4.834,-4.515,-4.635,-4.912,-5.142,-5.382,-5.829,-6.554,-7.447,-8.440,-9.577,-10.760,-11.526,-11.349,
--10.222,-8.749,-7.611,-7.061,-7.013,-7.327,-7.764,-7.827,-7.116,-5.931,-5.167,-5.331,-5.886,-5.869,-5.091,-4.349,
--4.397,-5.070,-5.621,-5.690,-5.598,-5.737,-6.007,-5.991,-5.504,-4.818,-4.393,-4.480,-4.957,-5.469,-5.742,-5.808,
--5.899,-6.088,-6.130,-5.761,-5.114,-4.694,-4.876,-5.536,-6.226,-6.631,-6.756,-6.752,-6.698,-6.608,-6.513,-6.462,
--6.455,-6.450,-6.426,-6.390,-6.342,-6.258,-6.133,-5.986,-5.826,-5.637,-5.412,-5.175,-4.947,-4.719,-4.472,-4.217,
--3.976,-3.734,-3.441,-3.082,-2.707,-2.374,-2.071,-1.734,-1.340,-.936,-.565,-.201,.204,.644,1.062,1.439,
-1.823,2.255,2.701,3.104,3.469,3.851,4.259,4.638,4.954,5.248,5.575,5.926,6.258,6.576,6.926,7.311,
-7.670,7.983,8.313,8.719,9.157,9.544,9.889,10.296,10.809,11.321,11.696,11.915,12.065,12.194,12.265,12.250,
-12.202,12.204,12.279,12.390,12.499,12.596,12.668,12.707,12.724,12.744,12.773,12.804,12.846,12.917,13.001,13.062,
-13.099,13.151,13.239,13.328,13.388,13.448,13.554,13.684,13.790,13.889,14.043,14.255,14.443,14.564,14.684,14.875,
-15.103,15.282,15.416,15.579,15.778,15.938,16.032,16.141,16.322,16.515,16.635,16.737,16.825,16.925,17.066,17.186,
-17.264,17.378,17.585,17.826,18.012,18.156,18.344,18.607,18.899,19.177,19.450,19.744,20.080,20.486,20.957,21.395,
-21.675,21.792,21.884,22.043,22.187,22.187,22.089,22.096,22.321,22.662,22.965,23.204,23.441,23.637,23.641,23.369,
-22.939,22.591,22.486,22.615,22.851,23.072,23.230,23.353,23.511,23.780,24.199,24.738,25.266,25.596,25.609,25.356,
-25.037,24.857,24.901,25.125,25.441,25.788,26.149,26.543,27.001,27.521,28.029,28.397,28.518,28.385,28.097,27.789,
-27.561,27.463,27.511,27.678,27.852,27.829,27.433,26.669,25.742,24.878,24.137,23.419,22.623,21.755,20.887,20.063,
-19.290,18.563,17.892,17.325,16.964,16.902,17.084,17.268,17.206,16.852,16.351,15.840,15.349,14.897,14.553,14.338,
-14.154,13.914,13.685,13.595,13.606,13.520,13.231,12.872,12.638,12.550,12.459,12.237,11.880,11.433,10.922,10.361,
-9.762,9.115,8.389,7.561,6.623,5.600,4.594,3.786,3.294,3.048,2.873,2.732,2.747,2.933,3.043,2.793,
-2.188,1.468,.772,.022,-.829,-1.620,-2.163,-2.492,-2.815,-3.288,-3.941,-4.757,-5.662,-6.448,-6.864,-6.861,
--6.635,-6.412,-6.250,-6.122,-6.067,-6.177,-6.472,-6.891,-7.350,-7.730,-7.874,-7.729,-7.458,-7.278,-7.201,-7.066,
--6.862,-6.808,-6.990,-7.100,-6.774,-6.122,-5.676,-5.759,-6.073,-6.058,-5.521,-4.782,-4.262,-4.092,-4.080,-3.927,
--3.429,-2.566,-1.498,-.417,.599,1.539,2.242,2.372,1.744,.658,-.283,-.778,-1.202,-2.231,-4.104,-6.316,
--8.083,-9.048,-9.454,-9.702,-9.905,-9.941,-9.801,-9.677,-9.703,-9.768,-9.697,-9.516,-9.398,-9.417,-9.474,-9.481,
--9.472,-9.477,-9.403,-9.102,-8.447,-7.284,-5.471,-3.207,-1.281,-.724,-2.014,-4.633,-7.435,-9.406,-10.123,-9.780,
--9.011,-8.573,-8.857,-9.574,-10.051,-9.929,-9.465,-9.097,-8.907,-8.683,-8.365,-8.157,-8.176,-8.257,-8.223,-8.165,
--8.293,-8.608,-8.914,-9.111,-9.283,-9.477,-9.587,-9.530,-9.415,-9.409,-9.529,-9.667,-9.791,-9.974,-10.238,-10.490,
--10.660,-10.809,-11.038,-11.346,-11.651,-11.907,-12.147,-12.413,-12.713,-13.041,-13.394,-13.761,-14.143,-14.569,-15.067,-15.612,
--16.146,-16.659,-17.200,-17.801,-18.426,-19.035,-19.641,-20.274,-20.912,-21.502,-22.034,-22.533,-23.001,-23.411,-23.783,-24.206,
--24.758,-25.422,-26.106,-26.727,-27.246,-27.680,-28.095,-28.574,-29.144,-29.746,-30.306,-30.827,-31.354,-31.875,-32.320,-32.679,
--33.035,-33.464,-33.937,-34.382,-34.808,-35.281,-35.809,-36.309,-36.715,-37.063,-37.432,-37.846,-38.262,-38.643,-38.994,-39.352,
--39.756,-40.233,-40.768,-41.283,-41.688,-41.960,-42.150,-42.321,-42.490,-42.661,-42.844,-43.040,-43.204,-43.290,-43.309,-43.323,
--43.368,-43.425,-43.471,-43.519,-43.572,-43.565,-43.411,-43.137,-42.912,-42.914,-43.189,-43.675,-44.324,-45.116,-45.940,-46.555,
--46.777,-46.690,-46.584,-46.645,-46.783,-46.801,-46.681,-46.605,-46.712,-46.939,-47.123,-47.192,-47.228,-47.355,-47.622,-47.950,
--48.181,-48.189,-47.999,-47.777,-47.663,-47.637,-47.577,-47.440,-47.294,-47.189,-47.082,-46.938,-46.835,-46.889,-47.098,-47.347,
--47.538,-47.665,-47.753,-47.797,-47.784,-47.713,-47.567,-47.299,-46.898,-46.438,-46.006,-45.635,-45.321,-45.057,-44.801,-44.448,
--43.921,-43.280,-42.659,-42.100,-41.516,-40.859,-40.205,-39.628,-39.070,-38.420,-37.699,-37.033,-36.499,-36.070,-35.734,-35.528,
--35.420,-35.267,-34.965,-34.576,-34.211,-33.856,-33.400,-32.825,-32.244,-31.759,-31.355,-30.972,-30.586,-30.173,-29.684,-29.124,
--28.596,-28.201,-27.926,-27.685,-27.436,-27.161,-26.770,-26.148,-25.322,-24.489,-23.823,-23.322,-22.878,-22.411,-21.878,-21.243,
--20.531,-19.823,-19.074,-17.996,-16.336,-14.306,-12.554,-11.552,-11.110,-10.639,-9.838,-8.940,-8.309,-8.001,-7.804,-7.544,
--7.194,-6.755,-6.209,-5.593,-4.985,-4.364,-3.578,-2.519,-1.278,-.074,.946,1.779,2.505,3.212,3.976,4.815,
-5.653,6.371,6.906,7.281,7.517,7.602,7.579,7.583,7.736,8.003,8.263,8.485,8.779,9.231,9.786,10.335,
-10.872,11.461,12.091,12.667,13.156,13.658,14.256,14.882,15.402,15.826,16.311,16.938,17.583,18.059,18.348,18.625,
-19.049,19.631,20.284,20.949,21.602,22.191,22.648,22.952,23.155,23.322,23.496,23.733,24.096,24.601,25.173,25.720,
-26.244,26.832,27.552,28.387,29.273,30.147,30.909,31.424,31.629,31.667,31.819,32.270,32.951,33.650,34.226,34.693,
-35.135,35.629,36.250,37.046,37.984,38.959,39.926,40.974,42.178,43.391,44.284,44.642,44.584,44.413,44.305,44.210,
-44.036,43.835,43.738,43.796,43.960,44.210,44.601,45.158,45.801,46.435,47.080,47.837,48.741,49.691,50.566,51.332,
-52.010,52.590,53.050,53.429,53.808,54.186,54.460,54.585,54.682,54.916,55.279,55.576,55.659,55.613,55.654,55.885,
-56.193,56.380,56.350,56.167,55.970,55.851,55.813,55.817,55.873,56.027,56.270,56.496,56.586,56.508,56.258,55.765,
-54.974,54.048,53.345,53.077,53.079,53.032,52.889,52.912,53.266,53.748,54.010,53.953,53.792,53.790,54.033,54.403,
-54.648,54.537,54.140,53.965,54.587,55.956,57.207,57.373,56.335,54.960,54.283,54.665,55.715,56.816,57.584,57.927,
-57.897,57.582,57.073,56.460,55.832,55.271,54.814,54.436,54.146,54.117,54.662,56.010,58.045,60.265,61.998,62.731,
-62.371,61.302,60.184,59.599,59.743,60.346,60.879,60.907,60.313,59.187,57.518,55.140,52.180,49.539,48.615,50.234,
-53.809,57.726,60.630,62.267,63.156,63.754,64.131,64.263,64.265,64.256,64.198,64.016,63.760,63.540,63.363,63.150,
-62.879,62.600,62.336,62.048,61.718,61.359,60.956,60.476,59.979,59.603,59.373,59.083,58.447,57.371,56.036,54.761,
-53.821,53.320,53.132,52.965,52.579,51.966,51.300,50.725,50.271,49.977,49.942,50.172,50.504,50.780,51.058,51.492,
-52.023,52.345,52.256,51.923,51.714,51.820,52.126,52.419,52.599,52.682,52.703,52.681,52.646,52.668,52.798,52.849,
-52.157,49.688,44.759,37.933,31.129,26.519,25.057,25.974,27.641,28.851,29.362,29.483,29.453,29.265,28.867,28.338,
-27.807,27.302,26.726,25.993,25.140,24.292,23.539,22.866,22.224,21.602,21.006,20.380,19.644,18.805,17.987,17.310,
-16.770,16.297,15.880,15.567,15.338,15.082,14.714,14.297,13.965,13.781,13.687,13.582,13.394,13.095,12.706,12.317,
-12.045,11.917,11.831,11.665,11.408,11.150,10.946,10.760,10.554,10.373,10.284,10.244,10.090,9.712,9.181,8.679,
-8.297,7.957,7.558,7.158,6.939,6.975,7.077,6.943,6.457,5.807,5.279,4.984,4.798,4.551,4.206,3.848,
-3.547,3.280,2.983,2.626,2.232,1.840,1.492,1.229,1.073,.979,.848,.615,.336,.141,.067,-.043,
--.398,-1.018,-1.667,-2.078,-2.212,-2.270,-2.447,-2.750,-3.062,-3.330,-3.613,-3.963,-4.330,-4.622,-4.830,-5.037,
--5.301,-5.588,-5.842,-6.073,-6.336,-6.615,-6.814,-6.890,-6.959,-7.171,-7.497,-7.712,-7.660,-7.475,-7.461,-7.760,
--8.218,-8.597,-8.817,-8.958,-9.071,-9.119,-9.090,-9.088,-9.238,-9.540,-9.855,-10.022,-9.985,-9.806,-9.615,-9.529,
--9.580,-9.711,-9.855,-10.005,-10.200,-10.447,-10.703,-10.928,-11.120,-11.278,-11.374,-11.393,-11.379,-11.392,-11.440,-11.479,
--11.490,-11.497,-11.516,-11.523,-11.517,-11.546,-11.642,-11.760,-11.818,-11.807,-11.791,-11.807,-11.817,-11.784,-11.740,-11.739,
--11.764,-11.750,-11.682,-11.614,-11.587,-11.568,-11.496,-11.377,-11.263,-11.186,-11.120,-11.037,-10.937,-10.822,-10.678,-10.498,
--10.316,-10.175,-10.083,-9.996,-9.879,-9.740,-9.611,-9.500,-9.374,-9.187,-8.927,-8.635,-8.378,-8.187,-8.028,-7.842,
--7.611,-7.378,-7.190,-7.039,-6.872,-6.660,-6.427,-6.218,-6.045,-5.894,-5.749,-5.609,-5.472,-5.328,-5.169,-5.001,
--4.838,-4.689,-4.551,-4.415,-4.280,-4.150,-4.025,-3.900,-3.770,-3.646,-3.546,-3.475,-3.407,-3.323,-3.233,-3.165,
--3.128,-3.095,-3.042,-2.974,-2.902,-2.832,-2.762,-2.705,-2.671,-2.647,-2.608,-2.551,-2.508,-2.495,-2.496,-2.487,
--2.479,-2.498,-2.543,-2.589,-2.615,-2.625,-2.637,-2.655,-2.678,-2.707,-2.750,-2.813,-2.894,-2.971,-3.017,-3.021,
--3.015,-3.035,-3.071,-3.086,-3.071,-3.071,-3.112,-3.161,-3.172,-3.169,-3.215,-3.310,-3.387,-3.412,-3.431,-3.490,
--3.555,-3.566,-3.536,-3.522,-3.532,-3.510,-3.448,-3.412,-3.448,-3.513,-3.536,-3.515,-3.495,-3.494,-3.485,-3.465,
--3.455,-3.454,-3.429,-3.372,-3.307,-3.249,-3.182,-3.109,-3.074,-3.088,-3.093,-3.027,-2.899,-2.770,-2.660,-2.546,
--2.425,-2.322,-2.232,-2.117,-1.974,-1.859,-1.812,-1.802,-1.782,-1.754,-1.734,-1.699,-1.610,-1.479,-1.350,-1.235,
--1.122,-1.021,-.954,-.883,-.737,-.515,-.312,-.195,-.121,-.022,.098,.202,.316,.488,.676,.779,
-.782,.800,.926,1.127,1.326,1.522,1.758,2.020,2.242,2.414,2.594,2.834,3.132,3.465,3.821,4.186,
-4.555,4.954,5.417,5.926,6.425,6.895,7.346,7.719,7.903,7.904,7.902,8.061,8.349,8.628,8.881,9.203,
-9.611,9.996,10.300,10.614,11.020,11.461,11.857,12.245,12.706,13.212,13.688,14.144,14.627,15.082,15.433,15.784,
-16.331,17.038,17.626,17.983,18.347,18.895,19.393,19.563,19.628,20.023,20.476,19.925,17.765,15.016,13.811,15.612,
-20.038,25.325,29.664,32.216,33.359,34.288,36.123,38.953,41.717,43.228,43.325,42.868,42.685,42.804,42.809,42.595,
-42.478,42.701,43.122,43.409,43.328,42.779,41.702,40.067,37.904,35.299,32.439,29.658,27.298,25.443,23.942,22.765,
-22.190,22.393,22.935,22.978,22.161,21.055,20.559,20.921,21.558,21.782,21.468,20.952,20.484,19.984,19.279,18.391,
-17.523,16.851,16.366,15.923,15.392,14.783,14.201,13.656,12.970,11.929,10.526,9.005,7.617,6.404,5.250,4.080,
-2.907,1.732,.503,-.776,-1.982,-2.969,-3.709,-4.283,-4.774,-5.223,-5.651,-6.076,-6.482,-6.831,-7.112,-7.344,
--7.503,-7.518,-7.367,-7.152,-7.029,-7.075,-7.253,-7.480,-7.672,-7.731,-7.559,-7.159,-6.688,-6.351,-6.234,-6.267,
--6.338,-6.402,-6.449,-6.407,-6.155,-5.660,-5.049,-4.530,-4.212,-4.061,-4.035,-4.199,-4.644,-5.305,-5.940,-6.313,
--6.359,-6.144,-5.753,-5.301,-4.983,-4.975,-5.244,-5.576,-5.850,-6.202,-6.838,-7.776,-8.862,-9.958,-10.953,-11.590,
--11.507,-10.583,-9.157,-7.813,-7.013,-6.962,-7.615,-8.573,-9.104,-8.642,-7.413,-6.313,-5.943,-5.933,-5.474,-4.424,
--3.532,-3.509,-4.200,-4.882,-5.178,-5.346,-5.705,-6.104,-6.106,-5.548,-4.763,-4.270,-4.353,-4.884,-5.484,-5.844,
--5.952,-6.020,-6.153,-6.164,-5.816,-5.217,-4.822,-4.993,-5.618,-6.267,-6.626,-6.707,-6.672,-6.604,-6.503,-6.398,
--6.343,-6.345,-6.351,-6.322,-6.273,-6.219,-6.147,-6.032,-5.877,-5.691,-5.475,-5.236,-4.998,-4.779,-4.560,-4.312,
--4.044,-3.789,-3.543,-3.254,-2.897,-2.520,-2.191,-1.900,-1.580,-1.201,-.809,-.453,-.109,.283,.719,1.138,
-1.516,1.896,2.319,2.749,3.131,3.474,3.834,4.225,4.593,4.906,5.208,5.550,5.919,6.271,6.612,6.980,
-7.363,7.705,8.005,8.341,8.762,9.197,9.553,9.863,10.254,10.767,11.282,11.664,11.912,12.108,12.274,12.353,
-12.334,12.300,12.325,12.395,12.461,12.523,12.608,12.700,12.747,12.751,12.763,12.816,12.883,12.939,12.994,13.057,
-13.107,13.133,13.168,13.246,13.345,13.421,13.480,13.562,13.670,13.775,13.891,14.063,14.281,14.465,14.575,14.684,
-14.874,15.115,15.317,15.470,15.635,15.820,15.953,16.019,16.118,16.325,16.570,16.737,16.808,16.919,17.037,17.204,
-17.373,17.515,17.677,17.899,18.137,18.331,18.503,18.726,19.023,19.351,19.677,20.008,20.361,20.741,21.161,21.605,
-21.972,22.135,22.120,22.121,22.283,22.521,22.651,22.657,22.725,22.962,23.230,23.320,23.227,23.132,23.136,23.127,
-22.956,22.652,22.396,22.321,22.403,22.540,22.687,22.864,23.088,23.343,23.632,24.005,24.512,25.110,25.639,25.916,
-25.866,25.591,25.310,25.215,25.377,25.731,26.156,26.573,26.991,27.462,27.995,28.506,28.852,28.931,28.765,28.496,
-28.287,28.218,28.278,28.430,28.643,28.824,28.783,28.340,27.515,26.539,25.644,24.859,24.054,23.150,22.212,21.331,
-20.509,19.700,18.905,18.196,17.666,17.390,17.386,17.542,17.636,17.485,17.108,16.657,16.229,15.796,15.341,14.938,
-14.651,14.434,14.231,14.097,14.109,14.182,14.103,13.776,13.348,13.015,12.798,12.570,12.236,11.806,11.322,10.809,
-10.291,9.777,9.223,8.564,7.793,6.965,6.129,5.323,4.655,4.276,4.208,4.271,4.251,4.098,3.886,3.616,
-3.179,2.523,1.743,.974,.277,-.341,-.865,-1.309,-1.764,-2.332,-3.028,-3.778,-4.500,-5.102,-5.476,-5.564,
--5.450,-5.283,-5.129,-4.965,-4.836,-4.897,-5.237,-5.742,-6.218,-6.575,-6.824,-6.952,-6.924,-6.785,-6.637,-6.498,
--6.321,-6.156,-6.147,-6.284,-6.299,-5.954,-5.382,-4.960,-4.853,-4.836,-4.604,-4.132,-3.651,-3.371,-3.304,-3.276,
--3.033,-2.402,-1.469,-.556,.123,.729,1.532,2.366,2.588,1.789,.416,-.600,-.880,-1.053,-2.031,-3.966,
--6.095,-7.581,-8.292,-8.676,-9.080,-9.416,-9.475,-9.317,-9.197,-9.208,-9.187,-9.003,-8.774,-8.714,-8.841,-8.968,
--8.952,-8.821,-8.662,-8.470,-8.144,-7.488,-6.184,-3.968,-1.082,1.466,2.373,1.007,-2.046,-5.428,-7.967,-9.275,
--9.648,-9.618,-9.569,-9.581,-9.499,-9.185,-8.737,-8.388,-8.218,-8.060,-7.775,-7.494,-7.445,-7.609,-7.729,-7.670,
--7.599,-7.731,-8.027,-8.281,-8.413,-8.515,-8.639,-8.702,-8.647,-8.582,-8.651,-8.849,-9.062,-9.232,-9.399,-9.596,
--9.798,-9.988,-10.198,-10.452,-10.716,-10.946,-11.153,-11.382,-11.652,-11.960,-12.304,-12.678,-13.052,-13.413,-13.799,-14.264,
--14.796,-15.331,-15.845,-16.378,-16.964,-17.573,-18.156,-18.721,-19.309,-19.926,-20.531,-21.085,-21.577,-22.008,-22.395,-22.788,
--23.260,-23.848,-24.514,-25.181,-25.779,-26.273,-26.690,-27.114,-27.634,-28.248,-28.866,-29.417,-29.931,-30.464,-30.995,-31.446,
--31.806,-32.166,-32.601,-33.083,-33.549,-34.005,-34.498,-35.010,-35.463,-35.822,-36.149,-36.523,-36.952,-37.388,-37.788,-38.153,
--38.508,-38.892,-39.342,-39.855,-40.361,-40.777,-41.076,-41.298,-41.484,-41.649,-41.805,-41.973,-42.147,-42.282,-42.335,-42.334,
--42.350,-42.426,-42.546,-42.679,-42.810,-42.911,-42.918,-42.792,-42.582,-42.420,-42.422,-42.634,-43.071,-43.740,-44.587,-45.412,
--45.955,-46.113,-46.053,-46.047,-46.188,-46.333,-46.327,-46.225,-46.229,-46.439,-46.743,-46.961,-47.030,-47.043,-47.137,-47.368,
--47.666,-47.874,-47.872,-47.691,-47.488,-47.385,-47.342,-47.240,-47.053,-46.869,-46.755,-46.677,-46.599,-46.571,-46.673,-46.898,
--47.162,-47.402,-47.609,-47.763,-47.821,-47.776,-47.665,-47.497,-47.231,-46.853,-46.420,-45.997,-45.597,-45.218,-44.890,-44.617,
--44.312,-43.872,-43.310,-42.730,-42.160,-41.528,-40.811,-40.103,-39.479,-38.861,-38.136,-37.345,-36.646,-36.111,-35.701,-35.419,
--35.348,-35.459,-35.521,-35.313,-34.874,-34.409,-34.004,-33.551,-32.964,-32.342,-31.851,-31.523,-31.257,-30.945,-30.546,-30.081,
--29.602,-29.180,-28.832,-28.502,-28.152,-27.833,-27.597,-27.352,-26.905,-26.175,-25.308,-24.528,-23.944,-23.510,-23.110,-22.609,
--21.917,-21.061,-20.159,-19.203,-17.952,-16.210,-14.214,-12.545,-11.547,-10.954,-10.256,-9.335,-8.551,-8.210,-8.170,-8.065,
--7.742,-7.328,-6.951,-6.589,-6.175,-5.699,-5.130,-4.355,-3.294,-2.037,-.799,.256,1.090,1.760,2.360,2.994,
-3.713,4.475,5.194,5.836,6.408,6.861,7.088,7.076,6.992,7.031,7.219,7.435,7.617,7.850,8.228,8.713,
-9.212,9.710,10.266,10.880,11.480,12.041,12.629,13.273,13.878,14.347,14.751,15.266,15.930,16.557,16.956,17.182,
-17.485,18.038,18.781,19.543,20.232,20.857,21.424,21.896,22.265,22.599,22.976,23.407,23.856,24.309,24.796,25.335,
-25.896,26.435,26.934,27.425,27.975,28.653,29.449,30.228,30.792,31.063,31.187,31.414,31.859,32.426,32.956,33.403,
-33.828,34.289,34.809,35.448,36.273,37.249,38.243,39.196,40.227,41.445,42.689,43.581,43.896,43.805,43.671,43.656,
-43.649,43.530,43.377,43.337,43.407,43.483,43.569,43.829,44.356,45.023,45.622,46.125,46.689,47.427,48.267,49.081,
-49.852,50.634,51.405,52.056,52.548,52.963,53.377,53.731,53.939,54.054,54.258,54.634,55.042,55.272,55.278,55.224,
-55.296,55.511,55.722,55.772,55.637,55.424,55.262,55.209,55.249,55.366,55.561,55.806,56.034,56.183,56.219,56.067,
-55.582,54.726,53.746,53.042,52.765,52.650,52.390,52.082,52.141,52.736,53.505,53.929,53.862,53.588,53.427,53.466,
-53.633,53.829,53.955,53.971,54.063,54.587,55.662,56.814,57.243,56.558,55.201,54.103,53.925,54.640,55.719,56.616,
-57.093,57.233,57.219,57.122,56.855,56.319,55.576,54.836,54.270,53.888,53.641,53.647,54.235,55.698,57.937,60.371,
-62.224,62.977,62.599,61.476,60.190,59.306,59.149,59.620,60.235,60.470,60.080,59.013,57.145,54.410,51.353,49.307,
-49.570,52.256,56.087,59.437,61.519,62.565,63.133,63.522,63.779,63.925,63.990,63.946,63.756,63.474,63.199,62.958,
-62.715,62.464,62.238,62.020,61.742,61.369,60.941,60.511,60.111,59.791,59.588,59.408,58.987,58.074,56.686,55.162,
-53.961,53.377,53.349,53.493,53.361,52.775,51.931,51.163,50.619,50.239,49.983,49.946,50.179,50.560,50.930,51.303,
-51.775,52.260,52.490,52.332,51.999,51.841,51.995,52.313,52.593,52.766,52.865,52.910,52.880,52.780,52.674,52.588,
-52.254,50.922,47.627,42.029,35.159,29.144,25.840,25.531,26.933,28.433,29.251,29.524,29.614,29.594,29.341,28.839,
-28.229,27.645,27.101,26.526,25.861,25.104,24.316,23.583,22.938,22.331,21.689,20.994,20.290,19.613,18.940,18.234,
-17.501,16.805,16.232,15.825,15.548,15.293,14.958,14.532,14.107,13.794,13.631,13.570,13.518,13.376,13.084,12.675,
-12.284,12.041,11.944,11.867,11.710,11.496,11.300,11.120,10.909,10.714,10.679,10.854,11.038,10.909,10.335,9.508,
-8.745,8.189,7.747,7.282,6.819,6.506,6.412,6.413,6.303,5.985,5.553,5.169,4.910,4.719,4.496,4.194,
-3.836,3.459,3.077,2.690,2.302,1.925,1.571,1.264,1.052,.957,.909,.760,.425,.003,-.296,-.382,
--.416,-.653,-1.165,-1.750,-2.156,-2.334,-2.454,-2.680,-3.003,-3.303,-3.534,-3.774,-4.114,-4.527,-4.896,-5.146,
--5.325,-5.524,-5.767,-5.999,-6.197,-6.406,-6.657,-6.880,-6.987,-7.022,-7.156,-7.465,-7.802,-7.952,-7.902,-7.862,
--8.004,-8.276,-8.517,-8.690,-8.887,-9.146,-9.366,-9.433,-9.377,-9.345,-9.450,-9.689,-9.973,-10.191,-10.258,-10.176,
--10.042,-9.980,-10.032,-10.136,-10.214,-10.250,-10.279,-10.338,-10.447,-10.624,-10.852,-11.063,-11.191,-11.244,-11.288,-11.364,
--11.439,-11.471,-11.465,-11.460,-11.473,-11.505,-11.568,-11.669,-11.771,-11.814,-11.786,-11.749,-11.753,-11.777,-11.769,-11.735,
--11.723,-11.743,-11.747,-11.704,-11.651,-11.637,-11.647,-11.615,-11.515,-11.394,-11.309,-11.261,-11.207,-11.117,-10.993,-10.844,
--10.677,-10.501,-10.342,-10.216,-10.107,-9.984,-9.834,-9.678,-9.540,-9.414,-9.252,-9.015,-8.716,-8.421,-8.190,-8.017,
--7.844,-7.628,-7.389,-7.180,-7.013,-6.849,-6.648,-6.421,-6.212,-6.048,-5.917,-5.792,-5.664,-5.532,-5.393,-5.236,
--5.069,-4.912,-4.773,-4.633,-4.479,-4.322,-4.185,-4.070,-3.954,-3.828,-3.714,-3.639,-3.586,-3.514,-3.411,-3.311,
--3.246,-3.207,-3.158,-3.085,-3.004,-2.932,-2.873,-2.828,-2.805,-2.799,-2.780,-2.735,-2.682,-2.653,-2.647,-2.639,
--2.619,-2.610,-2.625,-2.649,-2.667,-2.684,-2.713,-2.747,-2.770,-2.775,-2.774,-2.782,-2.815,-2.882,-2.968,-3.034,
--3.052,-3.045,-3.054,-3.077,-3.075,-3.041,-3.027,-3.067,-3.118,-3.127,-3.116,-3.152,-3.239,-3.305,-3.312,-3.312,
--3.359,-3.428,-3.460,-3.449,-3.433,-3.412,-3.361,-3.294,-3.277,-3.331,-3.393,-3.404,-3.381,-3.369,-3.365,-3.335,
--3.281,-3.241,-3.226,-3.209,-3.174,-3.134,-3.091,-3.025,-2.950,-2.911,-2.911,-2.884,-2.777,-2.628,-2.505,-2.415,
--2.312,-2.187,-2.073,-1.981,-1.880,-1.761,-1.668,-1.631,-1.614,-1.571,-1.510,-1.468,-1.435,-1.372,-1.264,-1.132,
--.996,-.868,-.776,-.731,-.684,-.558,-.351,-.144,.000,.101,.200,.298,.393,.527,.718,.887,
-.945,.933,.986,1.164,1.385,1.561,1.718,1.923,2.160,2.366,2.536,2.740,3.019,3.355,3.715,4.086,
-4.452,4.809,5.203,5.701,6.289,6.856,7.289,7.556,7.684,7.734,7.805,7.983,8.241,8.446,8.557,8.719,
-9.073,9.542,9.927,10.191,10.489,10.902,11.323,11.675,12.055,12.557,13.082,13.497,13.875,14.371,14.937,15.394,
-15.778,16.323,17.053,17.655,17.950,18.203,18.711,19.291,19.572,19.668,20.028,20.493,20.040,17.974,15.211,13.888,
-15.553,19.886,25.093,29.296,31.616,32.470,33.166,34.935,37.887,40.883,42.645,42.988,42.778,42.777,42.911,42.769,
-42.392,42.228,42.476,42.833,42.917,42.637,42.052,41.111,39.661,37.632,35.095,32.240,29.388,26.902,24.956,23.471,
-22.405,21.959,22.243,22.803,22.815,21.955,20.861,20.463,20.963,21.675,21.861,21.458,20.900,20.458,19.981,19.224,
-18.210,17.216,16.506,16.120,15.883,15.572,15.091,14.501,13.861,13.076,11.985,10.597,9.141,7.836,6.671,5.495,
-4.241,2.976,1.747,.517,-.721,-1.850,-2.745,-3.417,-3.977,-4.498,-4.973,-5.398,-5.797,-6.164,-6.456,-6.671,
--6.880,-7.112,-7.285,-7.284,-7.124,-6.946,-6.881,-6.956,-7.122,-7.312,-7.431,-7.364,-7.063,-6.613,-6.170,-5.826,
--5.575,-5.396,-5.320,-5.364,-5.439,-5.386,-5.115,-4.699,-4.289,-3.978,-3.773,-3.691,-3.804,-4.139,-4.578,-4.950,
--5.215,-5.475,-5.756,-5.906,-5.796,-5.567,-5.518,-5.732,-5.981,-6.090,-6.258,-6.849,-7.925,-9.160,-10.204,-10.960,
--11.423,-11.457,-10.910,-9.904,-8.858,-8.227,-8.255,-8.906,-9.817,-10.380,-10.111,-9.129,-8.103,-7.546,-7.262,-6.680,
--5.676,-4.793,-4.574,-4.922,-5.323,-5.513,-5.685,-6.036,-6.386,-6.375,-5.907,-5.275,-4.877,-4.912,-5.288,-5.734,
--6.007,-6.070,-6.080,-6.162,-6.217,-6.053,-5.696,-5.451,-5.586,-6.022,-6.437,-6.618,-6.616,-6.573,-6.526,-6.439,
--6.331,-6.268,-6.267,-6.266,-6.219,-6.146,-6.078,-5.998,-5.868,-5.683,-5.467,-5.234,-4.990,-4.753,-4.543,-4.345,
--4.124,-3.866,-3.598,-3.330,-3.037,-2.694,-2.332,-2.002,-1.699,-1.370,-.993,-.615,-.281,.033,.391,.804,
-1.222,1.608,1.986,2.381,2.774,3.129,3.458,3.805,4.177,4.538,4.872,5.213,5.590,5.980,6.349,6.711,
-7.088,7.455,7.766,8.049,8.394,8.823,9.239,9.562,9.857,10.268,10.806,11.321,11.681,11.917,12.125,12.304,
-12.382,12.365,12.356,12.413,12.477,12.482,12.473,12.531,12.642,12.720,12.733,12.748,12.819,12.914,12.982,13.030,
-13.085,13.134,13.152,13.165,13.223,13.327,13.428,13.506,13.594,13.712,13.848,13.993,14.171,14.376,14.548,14.659,
-14.773,14.968,15.223,15.450,15.620,15.778,15.941,16.056,16.112,16.195,16.384,16.625,16.808,16.914,17.059,17.212,
-17.407,17.615,17.804,17.991,18.199,18.409,18.604,18.814,19.090,19.431,19.800,20.174,20.552,20.914,21.239,21.551,
-21.877,22.152,22.267,22.242,22.276,22.531,22.910,23.175,23.254,23.313,23.477,23.599,23.444,23.023,22.623,22.485,
-22.549,22.589,22.498,22.363,22.291,22.289,22.319,22.411,22.626,22.950,23.284,23.569,23.877,24.332,24.956,25.599,
-26.039,26.151,25.993,25.764,25.666,25.799,26.144,26.621,27.153,27.694,28.209,28.663,29.018,29.233,29.283,29.188,
-29.041,28.951,28.961,29.030,29.105,29.182,29.234,29.131,28.711,27.965,27.079,26.240,25.447,24.573,23.582,22.580,
-21.668,20.815,19.948,19.086,18.350,17.854,17.641,17.673,17.815,17.870,17.703,17.352,16.961,16.597,16.206,15.750,
-15.305,14.961,14.710,14.515,14.413,14.449,14.526,14.441,14.114,13.679,13.301,12.986,12.630,12.189,11.713,11.246,
-10.787,10.342,9.920,9.478,8.948,8.347,7.770,7.267,6.794,6.344,6.027,5.927,5.923,5.756,5.292,4.629,
-3.936,3.273,2.613,1.958,1.366,.870,.444,.029,-.438,-1.010,-1.698,-2.452,-3.177,-3.773,-4.158,-4.300,
--4.266,-4.194,-4.167,-4.135,-4.040,-3.983,-4.156,-4.589,-5.056,-5.323,-5.397,-5.472,-5.651,-5.854,-5.955,-5.921,
--5.786,-5.610,-5.482,-5.481,-5.551,-5.502,-5.205,-4.751,-4.323,-3.979,-3.637,-3.245,-2.868,-2.593,-2.464,-2.478,
--2.524,-2.328,-1.643,-.602,.286,.708,.978,1.605,2.454,2.680,1.735,.191,-.813,-.906,-.934,-1.929,
--3.898,-5.880,-7.068,-7.555,-7.927,-8.441,-8.846,-8.897,-8.718,-8.594,-8.576,-8.493,-8.270,-8.076,-8.091,-8.264,
--8.385,-8.318,-8.101,-7.830,-7.561,-7.267,-6.761,-5.648,-3.559,-.683,1.960,3.029,1.854,-1.018,-4.275,-6.803,
--8.272,-8.957,-9.227,-9.246,-9.021,-8.594,-8.122,-7.785,-7.621,-7.490,-7.240,-6.920,-6.743,-6.828,-7.027,-7.110,
--7.054,-7.052,-7.238,-7.521,-7.737,-7.863,-7.983,-8.114,-8.180,-8.164,-8.165,-8.278,-8.466,-8.630,-8.734,-8.826,
--8.956,-9.136,-9.359,-9.611,-9.852,-10.047,-10.210,-10.401,-10.652,-10.948,-11.271,-11.624,-11.998,-12.353,-12.670,-13.006,
--13.436,-13.959,-14.503,-15.030,-15.568,-16.147,-16.741,-17.304,-17.840,-18.393,-18.985,-19.585,-20.139,-20.608,-21.000,-21.373,
--21.807,-22.349,-22.977,-23.628,-24.251,-24.822,-25.328,-25.781,-26.238,-26.768,-27.367,-27.961,-28.503,-29.027,-29.577,-30.118,
--30.572,-30.941,-31.314,-31.762,-32.260,-32.759,-33.252,-33.748,-34.208,-34.577,-34.874,-35.187,-35.579,-36.030,-36.483,-36.906,
--37.296,-37.664,-38.032,-38.445,-38.915,-39.397,-39.821,-40.156,-40.423,-40.645,-40.834,-41.001,-41.158,-41.295,-41.379,-41.401,
--41.409,-41.463,-41.582,-41.753,-41.951,-42.149,-42.286,-42.298,-42.184,-42.025,-41.913,-41.896,-42.018,-42.371,-43.034,-43.924,
--44.764,-45.271,-45.410,-45.412,-45.521,-45.743,-45.893,-45.862,-45.772,-45.841,-46.132,-46.499,-46.751,-46.835,-46.845,-46.912,
--47.095,-47.341,-47.515,-47.511,-47.349,-47.163,-47.054,-46.990,-46.875,-46.689,-46.507,-46.388,-46.320,-46.291,-46.343,-46.512,
--46.758,-47.013,-47.260,-47.506,-47.703,-47.774,-47.707,-47.563,-47.379,-47.126,-46.782,-46.398,-46.021,-45.632,-45.201,-44.764,
--44.385,-44.048,-43.672,-43.222,-42.718,-42.144,-41.454,-40.678,-39.935,-39.267,-38.554,-37.688,-36.769,-36.015,-35.505,-35.163,
--34.973,-35.034,-35.332,-35.588,-35.501,-35.080,-34.584,-34.166,-33.715,-33.098,-32.407,-31.871,-31.580,-31.404,-31.163,-30.798,
--30.386,-30.037,-29.785,-29.552,-29.215,-28.750,-28.288,-27.970,-27.754,-27.433,-26.860,-26.098,-25.333,-24.691,-24.175,-23.701,
--23.133,-22.345,-21.320,-20.169,-18.952,-17.563,-15.897,-14.128,-12.631,-11.566,-10.688,-9.717,-8.781,-8.286,-8.347,-8.562,
--8.450,-7.957,-7.408,-7.058,-6.864,-6.648,-6.306,-5.788,-5.017,-3.954,-2.708,-1.496,-.476,.328,.974,1.547,
-2.128,2.764,3.445,4.147,4.876,5.622,6.261,6.601,6.588,6.414,6.341,6.453,6.641,6.809,7.002,7.303,
-7.705,8.145,8.607,9.125,9.697,10.289,10.908,11.599,12.332,12.976,13.458,13.891,14.452,15.139,15.743,16.106,
-16.339,16.714,17.354,18.127,18.823,19.365,19.815,20.228,20.602,20.963,21.414,22.035,22.771,23.464,24.017,24.487,
-25.006,25.632,26.284,26.832,27.228,27.577,28.048,28.705,29.428,30.006,30.357,30.610,30.960,31.457,31.980,32.411,
-32.774,33.165,33.624,34.147,34.782,35.607,36.596,37.604,38.544,39.521,40.658,41.834,42.712,43.086,43.103,43.073,
-43.120,43.131,43.024,42.905,42.909,42.988,43.008,42.999,43.179,43.673,44.328,44.888,45.299,45.736,46.342,47.064,
-47.786,48.517,49.349,50.263,51.091,51.713,52.186,52.635,53.073,53.401,53.586,53.746,54.010,54.364,54.664,54.804,
-54.825,54.850,54.952,55.090,55.164,55.106,54.944,54.771,54.679,54.707,54.846,55.059,55.293,55.503,55.670,55.762,
-55.672,55.241,54.457,53.566,52.900,52.521,52.173,51.667,51.227,51.287,51.940,52.763,53.261,53.345,53.269,53.220,
-53.174,53.125,53.203,53.475,53.773,53.934,54.115,54.660,55.576,56.320,56.253,55.319,54.170,53.610,53.933,54.790,
-55.597,56.037,56.206,56.363,56.590,56.698,56.431,55.747,54.882,54.145,53.657,53.331,53.104,53.158,53.848,55.367,
-57.506,59.747,61.544,62.505,62.432,61.408,59.936,58.783,58.481,58.929,59.571,59.920,59.738,58.766,56.677,53.630,
-50.750,49.625,51.041,54.289,57.795,60.362,61.775,62.442,62.785,63.019,63.225,63.405,63.477,63.355,63.058,62.693,
-62.353,62.068,61.839,61.658,61.482,61.258,60.979,60.679,60.378,60.064,59.734,59.385,58.927,58.178,57.025,55.602,
-54.274,53.415,53.149,53.258,53.313,52.978,52.257,51.462,50.888,50.547,50.272,50.018,49.942,50.167,50.592,51.037,
-51.456,51.897,52.289,52.433,52.266,52.004,51.938,52.149,52.482,52.757,52.911,52.972,52.965,52.895,52.759,52.532,
-52.083,51.031,48.698,44.460,38.465,32.082,27.321,25.466,26.138,27.775,29.008,29.513,29.680,29.791,29.746,29.390,
-28.806,28.193,27.634,27.083,26.497,25.877,25.220,24.522,23.827,23.178,22.540,21.834,21.063,20.340,19.744,19.196,
-18.540,17.730,16.901,16.243,15.815,15.517,15.198,14.790,14.340,13.940,13.650,13.476,13.390,13.340,13.238,12.998,
-12.624,12.237,11.975,11.858,11.785,11.673,11.538,11.409,11.239,10.992,10.779,10.813,11.136,11.461,11.378,10.733,
-9.766,8.865,8.227,7.784,7.376,6.938,6.505,6.130,5.830,5.588,5.380,5.180,4.977,4.780,4.603,4.427,
-4.201,3.878,3.456,2.980,2.510,2.083,1.696,1.328,.993,.757,.671,.669,.573,.251,-.223,-.619,
--.791,-.835,-.988,-1.363,-1.852,-2.262,-2.524,-2.726,-2.982,-3.308,-3.632,-3.895,-4.124,-4.395,-4.737,-5.086,
--5.345,-5.503,-5.647,-5.855,-6.098,-6.305,-6.476,-6.673,-6.901,-7.076,-7.164,-7.271,-7.525,-7.878,-8.143,-8.224,
--8.220,-8.278,-8.402,-8.510,-8.615,-8.828,-9.179,-9.513,-9.639,-9.527,-9.338,-9.268,-9.414,-9.741,-10.110,-10.354,
--10.390,-10.295,-10.240,-10.313,-10.441,-10.488,-10.400,-10.233,-10.080,-10.017,-10.091,-10.297,-10.552,-10.752,-10.872,-10.984,
--11.152,-11.336,-11.446,-11.456,-11.430,-11.432,-11.470,-11.525,-11.595,-11.670,-11.712,-11.694,-11.644,-11.617,-11.625,-11.629,
--11.606,-11.581,-11.583,-11.597,-11.590,-11.572,-11.582,-11.616,-11.620,-11.555,-11.456,-11.386,-11.361,-11.333,-11.259,-11.144,
--11.012,-10.871,-10.707,-10.525,-10.357,-10.219,-10.093,-9.945,-9.774,-9.606,-9.461,-9.312,-9.111,-8.842,-8.546,-8.284,
--8.080,-7.897,-7.693,-7.466,-7.254,-7.075,-6.907,-6.713,-6.499,-6.299,-6.138,-6.004,-5.872,-5.735,-5.597,-5.452,
--5.289,-5.117,-4.963,-4.833,-4.693,-4.519,-4.336,-4.186,-4.079,-3.979,-3.867,-3.766,-3.699,-3.646,-3.569,-3.465,
--3.375,-3.319,-3.270,-3.194,-3.096,-3.010,-2.948,-2.908,-2.889,-2.895,-2.907,-2.888,-2.835,-2.785,-2.766,-2.760,
--2.740,-2.715,-2.717,-2.742,-2.758,-2.755,-2.761,-2.796,-2.840,-2.866,-2.878,-2.889,-2.898,-2.903,-2.919,-2.964,
--3.014,-3.038,-3.038,-3.049,-3.077,-3.083,-3.058,-3.042,-3.067,-3.100,-3.094,-3.076,-3.107,-3.187,-3.244,-3.242,
--3.226,-3.254,-3.309,-3.338,-3.334,-3.322,-3.304,-3.265,-3.226,-3.227,-3.269,-3.298,-3.284,-3.260,-3.254,-3.241,
--3.187,-3.114,-3.070,-3.058,-3.047,-3.023,-2.998,-2.960,-2.882,-2.782,-2.717,-2.694,-2.645,-2.519,-2.359,-2.235,
--2.152,-2.058,-1.937,-1.829,-1.749,-1.664,-1.559,-1.473,-1.435,-1.414,-1.367,-1.303,-1.255,-1.226,-1.180,-1.095,
--.973,-.828,-.680,-.566,-.506,-.455,-.345,-.169,.010,.146,.256,.370,.489,.615,.769,.942,
-1.065,1.103,1.132,1.260,1.483,1.700,1.863,2.028,2.237,2.441,2.601,2.771,3.030,3.358,3.672,3.961,
-4.295,4.702,5.135,5.576,6.088,6.698,7.280,7.626,7.634,7.426,7.283,7.444,7.899,8.375,8.594,8.585,
-8.647,8.977,9.432,9.767,9.999,10.332,10.801,11.214,11.496,11.845,12.404,12.993,13.375,13.638,14.066,14.686,
-15.267,15.740,16.309,17.026,17.595,17.827,18.005,18.486,19.121,19.499,19.667,20.051,20.519,20.065,17.985,15.182,
-13.801,15.394,19.634,24.746,28.893,31.219,32.101,32.774,34.438,37.266,40.223,42.107,42.723,42.826,43.030,43.194,
-42.976,42.536,42.342,42.476,42.567,42.356,41.964,41.519,40.811,39.495,37.468,34.900,32.034,29.147,26.578,24.570,
-23.130,22.182,21.804,22.037,22.485,22.444,21.662,20.740,20.513,21.089,21.763,21.866,21.431,20.918,20.531,20.035,
-19.169,18.011,16.901,16.140,15.798,15.717,15.628,15.324,14.766,14.015,13.089,11.945,10.625,9.295,8.083,6.925,
-5.676,4.317,2.971,1.715,.514,-.643,-1.661,-2.454,-3.082,-3.669,-4.244,-4.741,-5.141,-5.504,-5.854,-6.133,
--6.317,-6.495,-6.750,-7.019,-7.145,-7.069,-6.894,-6.773,-6.775,-6.882,-7.040,-7.175,-7.190,-7.021,-6.676,-6.211,
--5.666,-5.084,-4.575,-4.296,-4.318,-4.522,-4.671,-4.599,-4.332,-4.013,-3.751,-3.566,-3.465,-3.498,-3.703,-4.022,
--4.353,-4.674,-5.041,-5.431,-5.682,-5.694,-5.621,-5.713,-5.969,-6.110,-6.019,-6.043,-6.669,-7.922,-9.285,-10.249,
--10.765,-11.067,-11.234,-11.127,-10.721,-10.253,-10.007,-10.067,-10.338,-10.652,-10.801,-10.593,-10.048,-9.457,-9.095,-8.881,
--8.491,-7.812,-7.118,-6.725,-6.616,-6.552,-6.445,-6.434,-6.592,-6.747,-6.680,-6.378,-6.026,-5.801,-5.757,-5.857,
--6.010,-6.103,-6.087,-6.046,-6.100,-6.227,-6.282,-6.205,-6.132,-6.219,-6.429,-6.580,-6.584,-6.524,-6.500,-6.488,
--6.418,-6.309,-6.243,-6.240,-6.231,-6.164,-6.064,-5.970,-5.863,-5.701,-5.487,-5.261,-5.039,-4.805,-4.562,-4.338,
--4.144,-3.948,-3.715,-3.446,-3.160,-2.857,-2.525,-2.178,-1.844,-1.519,-1.169,-.785,-.410,-.083,.216,.543,
-.922,1.324,1.711,2.082,2.448,2.805,3.142,3.472,3.816,4.176,4.536,4.900,5.287,5.692,6.086,6.454,
-6.822,7.203,7.558,7.853,8.136,8.492,8.920,9.315,9.626,9.951,10.420,10.997,11.493,11.793,11.970,12.146,
-12.308,12.368,12.334,12.325,12.397,12.463,12.443,12.395,12.436,12.565,12.670,12.697,12.709,12.771,12.854,12.904,
-12.933,12.989,13.062,13.106,13.125,13.180,13.289,13.408,13.506,13.616,13.772,13.955,14.130,14.299,14.478,14.650,
-14.788,14.925,15.119,15.366,15.597,15.771,15.918,16.068,16.194,16.275,16.362,16.519,16.727,16.914,17.071,17.235,
-17.400,17.592,17.804,18.018,18.228,18.439,18.651,18.876,19.146,19.474,19.839,20.213,20.591,20.957,21.255,21.451,
-21.607,21.826,22.110,22.347,22.492,22.668,23.003,23.414,23.681,23.733,23.741,23.844,23.902,23.646,23.062,22.473,
-22.212,22.287,22.445,22.486,22.423,22.355,22.320,22.315,22.390,22.613,22.955,23.294,23.556,23.831,24.273,24.916,
-25.598,26.092,26.293,26.279,26.223,26.255,26.420,26.725,27.187,27.800,28.466,29.019,29.344,29.467,29.513,29.563,
-29.615,29.642,29.652,29.651,29.594,29.444,29.240,29.044,28.826,28.465,27.904,27.230,26.538,25.798,24.910,23.880,
-22.844,21.897,21.003,20.101,19.241,18.555,18.135,17.976,18.016,18.142,18.191,18.038,17.707,17.328,16.973,16.595,
-16.153,15.710,15.357,15.100,14.902,14.784,14.774,14.786,14.649,14.302,13.866,13.470,13.093,12.647,12.134,11.650,
-11.245,10.886,10.539,10.208,9.882,9.526,9.164,8.882,8.704,8.531,8.265,7.944,7.659,7.359,6.853,6.031,
-5.015,4.046,3.275,2.714,2.312,2.011,1.741,1.415,.981,.436,-.193,-.874,-1.567,-2.206,-2.706,-3.002,
--3.106,-3.121,-3.167,-3.265,-3.336,-3.348,-3.421,-3.691,-4.078,-4.298,-4.178,-3.889,-3.783,-4.022,-4.447,-4.793,
--4.930,-4.894,-4.790,-4.709,-4.698,-4.728,-4.708,-4.548,-4.219,-3.734,-3.145,-2.567,-2.140,-1.899,-1.760,-1.673,
--1.716,-1.866,-1.778,-1.069,.123,1.129,1.502,1.597,2.048,2.754,2.823,1.720,.120,-.791,-.763,-.795,
--1.896,-3.887,-5.697,-6.629,-6.960,-7.314,-7.833,-8.186,-8.169,-7.975,-7.871,-7.856,-7.772,-7.603,-7.505,-7.566,
--7.676,-7.679,-7.534,-7.300,-7.026,-6.745,-6.484,-6.154,-5.424,-3.916,-1.700,.431,1.372,.535,-1.676,-4.220,
--6.204,-7.363,-7.899,-8.068,-7.978,-7.691,-7.356,-7.144,-7.085,-7.025,-6.802,-6.443,-6.164,-6.143,-6.322,-6.482,
--6.499,-6.467,-6.547,-6.760,-6.989,-7.152,-7.284,-7.442,-7.599,-7.696,-7.748,-7.823,-7.944,-8.061,-8.127,-8.161,
--8.217,-8.334,-8.518,-8.755,-8.997,-9.193,-9.336,-9.489,-9.716,-10.011,-10.324,-10.639,-10.980,-11.337,-11.659,-11.934,
--12.233,-12.638,-13.144,-13.680,-14.207,-14.747,-15.323,-15.912,-16.476,-17.010,-17.548,-18.110,-18.680,-19.213,-19.662,-20.033,
--20.404,-20.875,-21.476,-22.135,-22.763,-23.334,-23.878,-24.409,-24.916,-25.412,-25.934,-26.494,-27.057,-27.604,-28.158,-28.729,
--29.264,-29.703,-30.074,-30.471,-30.948,-31.475,-32.004,-32.515,-32.988,-33.376,-33.666,-33.924,-34.251,-34.673,-35.138,-35.593,
--36.029,-36.449,-36.836,-37.195,-37.568,-37.995,-38.459,-38.897,-39.267,-39.563,-39.804,-40.003,-40.176,-40.319,-40.413,-40.446,
--40.459,-40.517,-40.648,-40.827,-41.033,-41.267,-41.504,-41.658,-41.659,-41.541,-41.409,-41.324,-41.274,-41.297,-41.559,-42.211,
--43.162,-44.065,-44.607,-44.781,-44.854,-45.051,-45.333,-45.501,-45.476,-45.413,-45.525,-45.854,-46.243,-46.513,-46.615,-46.634,
--46.688,-46.837,-47.043,-47.192,-47.188,-47.041,-46.863,-46.744,-46.666,-46.552,-46.382,-46.212,-46.092,-46.033,-46.046,-46.166,
--46.388,-46.645,-46.880,-47.106,-47.348,-47.548,-47.608,-47.519,-47.361,-47.186,-46.957,-46.640,-46.279,-45.930,-45.569,-45.138,
--44.655,-44.204,-43.823,-43.467,-43.072,-42.602,-42.022,-41.316,-40.550,-39.828,-39.131,-38.294,-37.231,-36.119,-35.257,-34.759,
--34.525,-34.485,-34.707,-35.166,-35.578,-35.619,-35.271,-34.797,-34.367,-33.880,-33.193,-32.403,-31.780,-31.464,-31.333,-31.172,
--30.897,-30.593,-30.385,-30.293,-30.196,-29.934,-29.468,-28.938,-28.515,-28.207,-27.867,-27.372,-26.746,-26.085,-25.440,-24.806,
--24.155,-23.416,-22.466,-21.231,-19.783,-18.270,-16.766,-15.276,-13.872,-12.671,-11.645,-10.600,-9.482,-8.594,-8.312,-8.577,
--8.848,-8.644,-8.018,-7.407,-7.109,-7.047,-6.979,-6.762,-6.343,-5.662,-4.694,-3.538,-2.385,-1.374,-.533,.168,
-.766,1.307,1.852,2.454,3.156,3.982,4.878,5.654,6.075,6.077,5.856,5.697,5.720,5.851,5.999,6.177,
-6.444,6.800,7.200,7.621,8.067,8.534,9.036,9.645,10.422,11.291,12.063,12.641,13.133,13.715,14.392,14.986,
-15.377,15.676,16.091,16.681,17.293,17.757,18.053,18.282,18.515,18.773,19.113,19.654,20.453,21.392,22.237,22.850,
-23.317,23.849,24.566,25.381,26.093,26.583,26.929,27.320,27.872,28.517,29.092,29.530,29.930,30.428,31.024,31.581,
-31.998,32.321,32.668,33.094,33.594,34.204,34.996,35.958,36.959,37.896,38.822,39.845,40.905,41.767,42.253,42.433,
-42.507,42.566,42.555,42.452,42.354,42.348,42.379,42.357,42.350,42.555,43.051,43.668,44.174,44.534,44.915,45.445,
-46.078,46.723,47.412,48.253,49.234,50.171,50.898,51.427,51.899,52.384,52.814,53.098,53.252,53.390,53.607,53.901,
-54.198,54.414,54.521,54.554,54.575,54.605,54.603,54.517,54.357,54.211,54.179,54.299,54.526,54.778,54.991,55.139,
-55.189,55.062,54.675,54.063,53.400,52.846,52.364,51.787,51.118,50.660,50.727,51.259,51.860,52.244,52.492,52.800,
-53.104,53.166,52.986,52.892,53.096,53.361,53.306,53.011,53.060,53.854,55.017,55.664,55.288,54.277,53.505,53.503,
-54.083,54.687,54.985,55.081,55.251,55.584,55.894,55.909,55.512,54.825,54.106,53.555,53.191,52.929,52.759,52.848,
-53.428,54.629,56.400,58.529,60.601,62.007,62.221,61.257,59.791,58.681,58.321,58.536,58.976,59.375,59.350,58.299,
-55.913,52.855,50.610,50.425,52.353,55.356,58.218,60.277,61.475,62.045,62.279,62.423,62.587,62.701,62.631,62.353,
-61.982,61.654,61.422,61.252,61.086,60.895,60.706,60.569,60.470,60.291,59.901,59.281,58.519,57.676,56.716,55.623,
-54.532,53.685,53.240,53.117,53.047,52.752,52.157,51.439,50.873,50.573,50.408,50.202,49.985,49.963,50.239,50.689,
-51.131,51.531,51.934,52.269,52.375,52.223,52.021,52.015,52.261,52.619,52.914,53.046,53.008,52.870,52.735,52.605,
-52.263,51.286,49.176,45.548,40.402,34.459,29.179,26.070,25.635,26.973,28.553,29.440,29.718,29.857,29.975,29.840,
-29.352,28.718,28.160,27.670,27.127,26.520,25.918,25.325,24.678,23.971,23.266,22.582,21.870,21.130,20.457,19.908,
-19.380,18.704,17.850,16.983,16.296,15.824,15.452,15.052,14.602,14.164,13.801,13.522,13.307,13.149,13.051,12.972,
-12.822,12.542,12.186,11.881,11.702,11.615,11.555,11.499,11.431,11.289,11.037,10.782,10.728,10.935,11.174,11.094,
-10.543,9.701,8.889,8.303,7.932,7.641,7.288,6.783,6.147,5.527,5.098,4.912,4.848,4.753,4.586,4.420,
-4.300,4.165,3.912,3.507,3.010,2.511,2.063,1.655,1.254,.859,.534,.356,.310,.256,.049,-.314,
--.696,-.970,-1.156,-1.370,-1.688,-2.076,-2.449,-2.752,-2.991,-3.221,-3.501,-3.842,-4.184,-4.461,-4.686,-4.938,
--5.242,-5.514,-5.669,-5.753,-5.889,-6.115,-6.348,-6.528,-6.700,-6.922,-7.139,-7.271,-7.359,-7.538,-7.846,-8.155,
--8.331,-8.395,-8.454,-8.538,-8.613,-8.710,-8.930,-9.279,-9.580,-9.630,-9.422,-9.160,-9.073,-9.250,-9.611,-9.980,
--10.180,-10.155,-10.029,-10.009,-10.187,-10.445,-10.589,-10.537,-10.358,-10.165,-10.037,-10.013,-10.105,-10.263,-10.403,-10.499,
--10.623,-10.843,-11.112,-11.303,-11.362,-11.359,-11.385,-11.443,-11.485,-11.502,-11.524,-11.557,-11.560,-11.515,-11.461,-11.440,
--11.438,-11.421,-11.388,-11.375,-11.391,-11.410,-11.417,-11.429,-11.460,-11.478,-11.449,-11.387,-11.344,-11.337,-11.330,-11.279,
--11.189,-11.089,-10.980,-10.838,-10.655,-10.466,-10.306,-10.175,-10.037,-9.877,-9.710,-9.557,-9.410,-9.235,-9.006,-8.740,
--8.476,-8.245,-8.041,-7.837,-7.624,-7.416,-7.226,-7.045,-6.854,-6.655,-6.468,-6.303,-6.146,-5.981,-5.817,-5.664,
--5.513,-5.345,-5.167,-5.012,-4.887,-4.751,-4.573,-4.377,-4.219,-4.115,-4.026,-3.926,-3.827,-3.752,-3.684,-3.595,
--3.496,-3.423,-3.377,-3.319,-3.225,-3.123,-3.051,-3.010,-2.984,-2.978,-2.997,-3.017,-3.001,-2.950,-2.907,-2.893,
--2.880,-2.845,-2.814,-2.823,-2.860,-2.878,-2.871,-2.871,-2.891,-2.906,-2.905,-2.920,-2.971,-3.027,-3.044,-3.030,
--3.028,-3.049,-3.065,-3.063,-3.068,-3.092,-3.110,-3.103,-3.092,-3.100,-3.106,-3.084,-3.062,-3.090,-3.158,-3.204,
--3.200,-3.184,-3.200,-3.230,-3.240,-3.231,-3.230,-3.236,-3.229,-3.214,-3.214,-3.222,-3.209,-3.171,-3.142,-3.127,
--3.093,-3.027,-2.968,-2.949,-2.948,-2.924,-2.883,-2.851,-2.810,-2.716,-2.584,-2.488,-2.452,-2.412,-2.307,-2.161,
--2.039,-1.949,-1.851,-1.737,-1.641,-1.572,-1.491,-1.381,-1.278,-1.214,-1.176,-1.133,-1.086,-1.054,-1.027,-.977,
--.891,-.780,-.648,-.503,-.380,-.300,-.234,-.124,.034,.190,.306,.405,.526,.677,.849,1.027,
-1.176,1.260,1.297,1.373,1.541,1.748,1.924,2.097,2.335,2.605,2.796,2.898,3.052,3.354,3.701,3.950,
-4.143,4.467,4.978,5.528,5.980,6.400,6.922,7.475,7.776,7.622,7.169,6.869,7.087,7.754,8.411,8.668,
-8.600,8.612,8.922,9.334,9.594,9.782,10.153,10.691,11.113,11.337,11.643,12.238,12.898,13.294,13.493,13.848,
-14.464,15.107,15.642,16.223,16.905,17.423,17.605,17.749,18.221,18.888,19.334,19.580,20.023,20.507,20.031,17.909,
-15.066,13.648,15.198,19.407,24.555,28.854,31.412,32.471,33.131,34.581,37.127,39.926,41.882,42.746,43.110,43.449,
-43.621,43.388,42.973,42.756,42.688,42.430,41.950,41.567,41.340,40.776,39.353,37.085,34.388,31.596,28.863,26.399,
-24.470,23.153,22.329,21.926,21.928,22.077,21.888,21.200,20.508,20.460,21.062,21.660,21.715,21.333,20.926,20.588,
-20.034,19.059,17.825,16.688,15.904,15.543,15.511,15.575,15.450,14.953,14.096,13.002,11.792,10.566,9.402,8.289,
-7.105,5.751,4.297,2.909,1.659,.494,-.596,-1.515,-2.211,-2.796,-3.408,-4.027,-4.523,-4.864,-5.164,-5.503,
--5.825,-6.057,-6.249,-6.491,-6.752,-6.895,-6.851,-6.714,-6.630,-6.659,-6.765,-6.882,-6.958,-6.959,-6.863,-6.655,
--6.290,-5.711,-4.947,-4.183,-3.682,-3.582,-3.771,-3.977,-3.990,-3.804,-3.567,-3.414,-3.357,-3.339,-3.353,-3.471,
--3.759,-4.177,-4.609,-4.946,-5.127,-5.159,-5.148,-5.283,-5.645,-6.028,-6.108,-5.881,-5.838,-6.511,-7.850,-9.224,
--10.078,-10.429,-10.646,-10.901,-11.063,-11.043,-10.986,-11.032,-11.084,-10.962,-10.676,-10.406,-10.242,-10.113,-9.955,-9.805,
--9.679,-9.483,-9.136,-8.696,-8.277,-7.908,-7.559,-7.264,-7.103,-7.055,-6.991,-6.832,-6.643,-6.511,-6.418,-6.302,
--6.178,-6.108,-6.089,-6.055,-6.013,-6.051,-6.200,-6.362,-6.439,-6.456,-6.498,-6.564,-6.574,-6.514,-6.465,-6.476,
--6.484,-6.417,-6.309,-6.251,-6.255,-6.240,-6.152,-6.023,-5.899,-5.762,-5.577,-5.358,-5.154,-4.971,-4.766,-4.515,
--4.254,-4.021,-3.807,-3.571,-3.297,-2.996,-2.677,-2.342,-2.000,-1.664,-1.331,-.978,-.601,-.229,.109,.419,
-.738,1.090,1.464,1.833,2.187,2.528,2.860,3.189,3.526,3.874,4.231,4.600,4.992,5.409,5.821,6.196,
-6.543,6.904,7.287,7.649,7.962,8.271,8.642,9.059,9.438,9.758,10.127,10.636,11.203,11.633,11.847,11.963,
-12.118,12.280,12.334,12.276,12.238,12.297,12.376,12.376,12.339,12.379,12.505,12.616,12.646,12.649,12.686,12.736,
-12.753,12.765,12.835,12.953,13.054,13.115,13.187,13.300,13.419,13.519,13.639,13.821,14.034,14.214,14.357,14.515,
-14.706,14.892,15.052,15.219,15.422,15.635,15.821,15.989,16.166,16.341,16.482,16.596,16.727,16.895,17.071,17.225,
-17.389,17.550,17.728,17.939,18.177,18.421,18.661,18.907,19.187,19.514,19.868,20.214,20.545,20.877,21.189,21.409,
-21.501,21.565,21.774,22.182,22.663,23.066,23.382,23.692,23.978,24.126,24.116,24.098,24.191,24.260,24.031,23.444,
-22.786,22.408,22.381,22.487,22.512,22.445,22.389,22.393,22.437,22.530,22.722,23.011,23.310,23.563,23.851,24.321,
-24.998,25.711,26.235,26.492,26.601,26.732,26.942,27.186,27.447,27.813,28.367,29.024,29.544,29.748,29.702,29.645,
-29.738,29.945,30.132,30.218,30.176,29.964,29.552,29.014,28.506,28.118,27.802,27.460,27.047,26.548,25.898,25.036,
-24.017,22.987,22.032,21.127,20.251,19.489,18.953,18.664,18.562,18.585,18.673,18.704,18.550,18.198,17.766,17.355,
-16.957,16.538,16.137,15.818,15.579,15.377,15.224,15.148,15.080,14.879,14.495,14.040,13.625,13.222,12.743,12.204,
-11.725,11.368,11.075,10.778,10.485,10.235,10.039,9.898,9.835,9.834,9.797,9.620,9.290,8.841,8.239,7.389,
-6.289,5.108,4.085,3.368,2.964,2.788,2.714,2.596,2.323,1.880,1.332,.737,.113,-.522,-1.107,-1.557,
--1.838,-1.999,-2.136,-2.308,-2.491,-2.633,-2.757,-2.971,-3.308,-3.586,-3.531,-3.088,-2.561,-2.351,-2.591,-3.068,
--3.489,-3.726,-3.822,-3.840,-3.812,-3.776,-3.796,-3.880,-3.915,-3.709,-3.149,-2.350,-1.621,-1.205,-1.056,-.951,
--.831,-.869,-1.084,-1.051,-.292,1.035,2.152,2.539,2.547,2.822,3.275,3.083,1.839,.280,-.526,-.516,
--.729,-1.997,-3.951,-5.538,-6.255,-6.503,-6.839,-7.278,-7.495,-7.398,-7.234,-7.197,-7.213,-7.147,-7.044,-7.026,
--7.072,-7.039,-6.869,-6.651,-6.464,-6.270,-6.016,-5.745,-5.495,-5.111,-4.313,-3.051,-1.762,-1.153,-1.650,-3.048,
--4.686,-5.958,-6.653,-6.893,-6.870,-6.708,-6.509,-6.402,-6.445,-6.518,-6.409,-6.056,-5.657,-5.489,-5.624,-5.873,
--6.019,-6.042,-6.081,-6.219,-6.393,-6.511,-6.577,-6.659,-6.776,-6.889,-6.986,-7.101,-7.246,-7.371,-7.433,-7.455,
--7.499,-7.595,-7.739,-7.927,-8.147,-8.358,-8.520,-8.660,-8.855,-9.133,-9.442,-9.727,-10.010,-10.335,-10.683,-10.987,
--11.242,-11.528,-11.917,-12.395,-12.900,-13.408,-13.942,-14.508,-15.085,-15.650,-16.198,-16.737,-17.271,-17.801,-18.311,-18.764,
--19.149,-19.535,-20.026,-20.652,-21.322,-21.929,-22.456,-22.964,-23.491,-24.021,-24.539,-25.062,-25.607,-26.165,-26.730,-27.312,
--27.890,-28.403,-28.822,-29.201,-29.635,-30.154,-30.709,-31.245,-31.739,-32.165,-32.493,-32.745,-33.015,-33.383,-33.836,-34.299,
--34.737,-35.169,-35.601,-36.001,-36.355,-36.709,-37.118,-37.579,-38.032,-38.419,-38.718,-38.943,-39.124,-39.287,-39.424,-39.507,
--39.539,-39.586,-39.719,-39.929,-40.155,-40.371,-40.608,-40.849,-40.995,-40.967,-40.824,-40.692,-40.606,-40.513,-40.460,-40.674,
--41.362,-42.414,-43.423,-44.033,-44.248,-44.364,-44.614,-44.950,-45.173,-45.206,-45.190,-45.316,-45.627,-45.992,-46.254,-46.364,
--46.388,-46.433,-46.562,-46.748,-46.888,-46.887,-46.756,-46.596,-46.487,-46.411,-46.296,-46.125,-45.955,-45.848,-45.822,-45.886,
--46.047,-46.282,-46.526,-46.741,-46.955,-47.186,-47.365,-47.397,-47.283,-47.120,-46.960,-46.751,-46.436,-46.059,-45.698,-45.354,
--44.968,-44.528,-44.092,-43.696,-43.311,-42.890,-42.413,-41.868,-41.251,-40.600,-39.956,-39.250,-38.315,-37.093,-35.796,-34.764,
--34.162,-33.927,-33.980,-34.340,-34.949,-35.520,-35.725,-35.501,-35.056,-34.556,-33.954,-33.165,-32.304,-31.629,-31.280,-31.163,
--31.085,-30.944,-30.780,-30.680,-30.667,-30.651,-30.498,-30.151,-29.689,-29.229,-28.795,-28.327,-27.797,-27.247,-26.696,-26.077,
--25.326,-24.459,-23.498,-22.353,-20.902,-19.178,-17.406,-15.830,-14.549,-13.523,-12.645,-11.750,-10.702,-9.578,-8.720,-8.427,
--8.583,-8.698,-8.396,-7.783,-7.258,-7.057,-7.080,-7.101,-6.996,-6.725,-6.232,-5.467,-4.484,-3.414,-2.376,-1.430,
--.624,.005,.483,.917,1.445,2.164,3.086,4.099,4.973,5.473,5.541,5.351,5.154,5.083,5.116,5.209,
-5.371,5.626,5.957,6.324,6.703,7.072,7.416,7.785,8.321,9.133,10.136,11.087,11.812,12.366,12.916,13.522,
-14.090,14.535,14.909,15.319,15.765,16.134,16.337,16.413,16.470,16.581,16.782,17.137,17.736,18.585,19.535,20.369,
-20.990,21.505,22.125,22.965,23.940,24.850,25.551,26.060,26.513,27.026,27.596,28.145,28.644,29.163,29.780,30.461,
-31.065,31.496,31.802,32.115,32.515,33.003,33.587,34.319,35.213,36.192,37.153,38.076,39.015,39.962,40.795,41.377,
-41.686,41.810,41.839,41.813,41.757,41.703,41.655,41.590,41.529,41.589,41.892,42.413,42.972,43.412,43.753,44.136,
-44.645,45.234,45.847,46.524,47.352,48.315,49.264,50.045,50.640,51.143,51.638,52.103,52.453,52.639,52.718,52.825,
-53.078,53.479,53.891,54.145,54.188,54.117,54.064,54.055,54.008,53.860,53.672,53.578,53.663,53.900,54.191,54.437,
-54.571,54.542,54.324,53.950,53.520,53.121,52.721,52.188,51.479,50.798,50.484,50.662,51.074,51.358,51.469,51.698,
-52.222,52.780,52.956,52.724,52.497,52.558,52.648,52.329,51.718,51.571,52.467,54.026,55.139,55.044,54.042,53.120,
-52.955,53.414,53.929,54.162,54.215,54.329,54.575,54.841,54.988,54.926,54.619,54.112,53.560,53.126,52.856,52.678,
-52.540,52.535,52.874,53.797,55.445,57.682,59.978,61.572,61.961,61.268,60.100,59.050,58.397,58.218,58.491,58.927,
-58.846,57.568,55.102,52.378,50.657,50.692,52.362,54.949,57.610,59.711,60.983,61.541,61.723,61.806,61.844,61.754,
-61.521,61.250,61.058,60.950,60.825,60.585,60.239,59.915,59.736,59.650,59.421,58.833,57.905,56.875,55.954,55.178,
-54.491,53.905,53.503,53.287,53.104,52.758,52.180,51.498,50.924,50.583,50.411,50.242,50.020,49.884,50.006,50.374,
-50.813,51.198,51.576,51.999,52.357,52.462,52.302,52.091,52.064,52.285,52.648,52.983,53.127,53.011,52.746,52.545,
-52.402,51.853,50.145,46.748,41.764,35.976,30.609,26.915,25.602,26.356,27.991,29.288,29.822,29.948,30.073,30.144,
-29.883,29.284,28.634,28.124,27.655,27.071,26.409,25.794,25.226,24.588,23.844,23.089,22.404,21.769,21.145,20.548,
-19.992,19.405,18.695,17.876,17.078,16.412,15.880,15.409,14.940,14.476,14.051,13.693,13.397,13.137,12.908,12.741,
-12.652,12.585,12.434,12.159,11.837,11.587,11.454,11.392,11.349,11.295,11.196,11.012,10.773,10.584,10.514,10.485,
-10.319,9.916,9.341,8.759,8.307,8.023,7.834,7.569,7.056,6.283,5.469,4.901,4.673,4.620,4.522,4.331,
-4.155,4.071,4.010,3.843,3.513,3.065,2.578,2.114,1.699,1.325,.966,.616,.309,.087,-.060,-.187,
--.353,-.589,-.906,-1.291,-1.688,-2.029,-2.304,-2.565,-2.845,-3.108,-3.324,-3.556,-3.893,-4.308,-4.672,-4.919,
--5.141,-5.437,-5.745,-5.919,-5.944,-5.969,-6.117,-6.341,-6.537,-6.703,-6.896,-7.094,-7.221,-7.293,-7.445,-7.750,
--8.102,-8.348,-8.464,-8.538,-8.623,-8.709,-8.828,-9.056,-9.370,-9.588,-9.538,-9.273,-9.045,-9.076,-9.377,-9.776,
--10.051,-10.061,-9.836,-9.584,-9.555,-9.821,-10.214,-10.490,-10.563,-10.524,-10.481,-10.451,-10.412,-10.380,-10.378,-10.394,
--10.415,-10.483,-10.650,-10.879,-11.060,-11.138,-11.182,-11.280,-11.415,-11.496,-11.489,-11.454,-11.448,-11.453,-11.424,-11.369,
--11.332,-11.322,-11.310,-11.281,-11.261,-11.268,-11.282,-11.276,-11.259,-11.257,-11.266,-11.258,-11.226,-11.199,-11.198,-11.200,
--11.171,-11.106,-11.024,-10.933,-10.815,-10.663,-10.496,-10.340,-10.199,-10.063,-9.924,-9.786,-9.650,-9.504,-9.334,-9.136,
--8.913,-8.678,-8.446,-8.224,-8.011,-7.799,-7.588,-7.383,-7.186,-6.996,-6.814,-6.643,-6.478,-6.301,-6.107,-5.916,
--5.750,-5.596,-5.431,-5.254,-5.097,-4.971,-4.840,-4.673,-4.486,-4.329,-4.220,-4.127,-4.024,-3.923,-3.838,-3.755,
--3.658,-3.562,-3.497,-3.453,-3.389,-3.294,-3.205,-3.154,-3.130,-3.110,-3.099,-3.117,-3.142,-3.136,-3.100,-3.069,
--3.058,-3.039,-2.993,-2.953,-2.952,-2.978,-2.991,-2.991,-2.999,-3.008,-2.985,-2.939,-2.934,-3.005,-3.103,-3.150,
--3.142,-3.132,-3.148,-3.161,-3.149,-3.131,-3.131,-3.140,-3.137,-3.125,-3.116,-3.102,-3.077,-3.064,-3.090,-3.136,
--3.158,-3.152,-3.153,-3.180,-3.201,-3.190,-3.168,-3.168,-3.185,-3.189,-3.178,-3.167,-3.152,-3.117,-3.067,-3.024,
--2.983,-2.923,-2.856,-2.826,-2.841,-2.843,-2.791,-2.717,-2.672,-2.636,-2.547,-2.410,-2.301,-2.260,-2.232,-2.152,
--2.027,-1.911,-1.814,-1.710,-1.600,-1.507,-1.431,-1.338,-1.217,-1.100,-1.013,-.947,-.888,-.847,-.829,-.804,
--.741,-.646,-.540,-.424,-.294,-.175,-.092,-.024,.082,.234,.387,.500,.591,.706,.865,1.056,
-1.242,1.378,1.450,1.506,1.618,1.785,1.937,2.054,2.230,2.528,2.845,3.019,3.076,3.219,3.546,3.899,
-4.113,4.297,4.700,5.339,5.930,6.254,6.446,6.795,7.316,7.669,7.540,7.059,6.738,6.998,7.734,8.414,
-8.635,8.525,8.533,8.857,9.252,9.457,9.595,9.958,10.519,10.955,11.167,11.455,12.053,12.749,13.193,13.430,
-13.804,14.430,15.080,15.613,16.162,16.782,17.236,17.384,17.526,18.016,18.714,19.206,19.503,19.965,20.412,19.860,
-17.670,14.788,13.352,14.923,19.257,24.688,29.376,32.257,33.401,33.857,34.925,37.107,39.726,41.737,42.813,43.392,
-43.837,44.014,43.772,43.371,43.113,42.873,42.390,41.838,41.628,41.621,41.005,39.163,36.377,33.427,30.756,28.335,
-26.163,24.473,23.398,22.767,22.352,22.078,21.852,21.448,20.801,20.272,20.305,20.834,21.305,21.316,21.007,20.704,
-20.406,19.833,18.866,17.721,16.697,15.951,15.532,15.440,15.546,15.535,15.087,14.125,12.844,11.530,10.373,9.380,
-8.393,7.211,5.783,4.266,2.865,1.625,.469,-.595,-1.447,-2.051,-2.569,-3.171,-3.807,-4.287,-4.558,-4.773,
--5.079,-5.444,-5.761,-6.014,-6.255,-6.468,-6.563,-6.514,-6.423,-6.417,-6.525,-6.673,-6.770,-6.770,-6.689,-6.581,
--6.461,-6.245,-5.791,-5.056,-4.206,-3.530,-3.221,-3.236,-3.351,-3.359,-3.221,-3.071,-3.066,-3.219,-3.396,-3.485,
--3.552,-3.769,-4.190,-4.650,-4.911,-4.903,-4.794,-4.853,-5.228,-5.788,-6.177,-6.122,-5.780,-5.720,-6.416,-7.737,
--9.040,-9.826,-10.156,-10.391,-10.665,-10.818,-10.777,-10.720,-10.791,-10.836,-10.611,-10.164,-9.811,-9.750,-9.845,-9.848,
--9.694,-9.494,-9.325,-9.151,-8.913,-8.606,-8.260,-7.922,-7.647,-7.460,-7.301,-7.091,-6.847,-6.672,-6.603,-6.538,
--6.378,-6.174,-6.055,-6.051,-6.073,-6.070,-6.096,-6.205,-6.342,-6.420,-6.436,-6.451,-6.477,-6.476,-6.446,-6.441,
--6.475,-6.480,-6.405,-6.299,-6.248,-6.247,-6.213,-6.097,-5.940,-5.789,-5.632,-5.439,-5.231,-5.057,-4.915,-4.746,
--4.509,-4.225,-3.939,-3.666,-3.389,-3.093,-2.779,-2.447,-2.101,-1.756,-1.425,-1.100,-.763,-.407,-.046,.301,
-.633,.963,1.300,1.643,1.984,2.317,2.638,2.952,3.275,3.613,3.965,4.326,4.704,5.114,5.542,5.947,
-6.304,6.638,6.997,7.391,7.778,8.130,8.476,8.858,9.258,9.621,9.947,10.315,10.774,11.234,11.546,11.685,
-11.786,11.968,12.176,12.266,12.215,12.156,12.198,12.295,12.343,12.344,12.382,12.484,12.578,12.606,12.604,12.624,
-12.654,12.664,12.683,12.773,12.929,13.074,13.172,13.260,13.372,13.484,13.579,13.698,13.883,14.095,14.257,14.372,
-14.521,14.743,14.976,15.144,15.261,15.400,15.594,15.814,16.037,16.268,16.502,16.699,16.836,16.943,17.069,17.225,
-17.336,17.513,17.697,17.897,18.136,18.406,18.675,18.931,19.201,19.516,19.868,20.213,20.519,20.797,21.080,21.356,
-21.555,21.644,21.729,21.997,22.533,23.207,23.788,24.154,24.353,24.472,24.530,24.527,24.518,24.550,24.532,24.278,
-23.733,23.097,22.659,22.513,22.510,22.468,22.373,22.328,22.387,22.501,22.624,22.783,23.014,23.284,23.550,23.861,
-24.348,25.057,25.838,26.448,26.778,26.950,27.166,27.494,27.831,28.091,28.350,28.750,29.281,29.729,29.900,29.849,
-29.821,29.989,30.290,30.549,30.653,30.565,30.234,29.617,28.795,27.994,27.419,27.099,26.912,26.704,26.353,25.772,
-24.947,23.981,23.016,22.115,21.256,20.460,19.835,19.463,19.297,19.226,19.209,19.245,19.257,19.101,18.722,18.219,
-17.732,17.304,16.917,16.580,16.316,16.098,15.880,15.682,15.550,15.441,15.221,14.829,14.360,13.933,13.537,13.080,
-12.553,12.057,11.659,11.316,10.968,10.645,10.433,10.366,10.393,10.435,10.431,10.345,10.160,9.857,9.379,8.625,
-7.559,6.301,5.104,4.184,3.615,3.346,3.279,3.287,3.230,3.022,2.678,2.256,1.769,1.188,.538,-.065,
--.504,-.780,-.992,-1.234,-1.510,-1.760,-1.964,-2.186,-2.502,-2.857,-3.035,-2.835,-2.316,-1.807,-1.626,-1.805,
--2.123,-2.383,-2.571,-2.748,-2.885,-2.898,-2.821,-2.827,-3.026,-3.261,-3.190,-2.604,-1.672,-.820,-.329,-.108,
-.085,.264,.225,.003,.084,.921,2.277,3.348,3.654,3.553,3.628,3.782,3.336,2.057,.647,-.077,
--.252,-.802,-2.242,-4.042,-5.310,-5.813,-6.026,-6.356,-6.696,-6.783,-6.663,-6.598,-6.665,-6.706,-6.626,-6.535,
--6.530,-6.514,-6.335,-6.029,-5.782,-5.671,-5.578,-5.368,-5.069,-4.806,-4.598,-4.312,-3.848,-3.330,-3.068,-3.312,
--4.023,-4.894,-5.577,-5.918,-5.985,-5.928,-5.855,-5.818,-5.856,-5.943,-5.951,-5.740,-5.343,-5.003,-4.950,-5.174,
--5.459,-5.640,-5.742,-5.862,-6.006,-6.092,-6.095,-6.077,-6.084,-6.100,-6.119,-6.195,-6.363,-6.561,-6.685,-6.723,
--6.762,-6.865,-7.013,-7.168,-7.340,-7.545,-7.751,-7.925,-8.099,-8.337,-8.624,-8.887,-9.102,-9.344,-9.668,-10.024,
--10.322,-10.566,-10.848,-11.226,-11.673,-12.143,-12.636,-13.166,-13.717,-14.263,-14.808,-15.364,-15.912,-16.429,-16.924,-17.418,
--17.892,-18.315,-18.728,-19.227,-19.852,-20.521,-21.121,-21.627,-22.098,-22.587,-23.094,-23.613,-24.156,-24.725,-25.302,-25.874,
--26.447,-27.003,-27.495,-27.913,-28.326,-28.813,-29.378,-29.948,-30.466,-30.913,-31.285,-31.579,-31.840,-32.157,-32.575,-33.046,
--33.493,-33.905,-34.319,-34.741,-35.136,-35.491,-35.855,-36.274,-36.736,-37.182,-37.560,-37.848,-38.051,-38.207,-38.360,-38.519,
--38.654,-38.759,-38.884,-39.083,-39.330,-39.559,-39.759,-39.977,-40.199,-40.316,-40.254,-40.087,-39.941,-39.832,-39.697,-39.610,
--39.849,-40.632,-41.801,-42.887,-43.515,-43.725,-43.851,-44.144,-44.553,-44.866,-44.980,-45.003,-45.113,-45.370,-45.687,-45.931,
--46.042,-46.064,-46.097,-46.209,-46.381,-46.516,-46.522,-46.413,-46.285,-46.213,-46.163,-46.056,-45.881,-45.715,-45.641,-45.676,
--45.795,-45.970,-46.178,-46.388,-46.593,-46.813,-47.040,-47.193,-47.192,-47.056,-46.886,-46.730,-46.527,-46.211,-45.815,-45.426,
--45.070,-44.711,-44.329,-43.946,-43.562,-43.142,-42.674,-42.199,-41.748,-41.294,-40.797,-40.229,-39.536,-38.611,-37.418,-36.107,
--34.946,-34.126,-33.689,-33.640,-34.002,-34.689,-35.405,-35.804,-35.739,-35.310,-34.666,-33.870,-32.976,-32.131,-31.520,-31.210,
--31.114,-31.096,-31.073,-31.031,-30.994,-30.984,-30.978,-30.900,-30.688,-30.347,-29.918,-29.419,-28.850,-28.263,-27.727,-27.208,
--26.551,-25.648,-24.559,-23.393,-22.105,-20.532,-18.664,-16.769,-15.200,-14.101,-13.340,-12.667,-11.878,-10.906,-9.868,-9.023,
--8.570,-8.432,-8.300,-7.954,-7.477,-7.123,-7.016,-7.056,-7.081,-7.018,-6.845,-6.513,-5.963,-5.200,-4.289,-3.303,
--2.321,-1.451,-.792,-.344,.026,.508,1.231,2.197,3.265,4.200,4.790,4.979,4.890,4.712,4.566,4.491,
-4.504,4.625,4.842,5.117,5.427,5.772,6.117,6.414,6.698,7.144,7.920,8.989,10.091,10.968,11.577,12.055,
-12.527,13.003,13.445,13.848,14.226,14.550,14.753,14.815,14.795,14.792,14.886,15.135,15.585,16.249,17.053,17.852,
-18.529,19.090,19.666,20.402,21.349,22.423,23.475,24.384,25.114,25.711,26.245,26.756,27.253,27.760,28.333,29.007,
-29.720,30.337,30.772,31.079,31.402,31.831,32.351,32.922,33.575,34.376,35.322,36.319,37.267,38.145,38.988,39.786,
-40.445,40.859,41.015,41.012,40.986,40.999,41.003,40.919,40.757,40.655,40.774,41.150,41.656,42.128,42.511,42.878,
-43.323,43.866,44.464,45.097,45.796,46.593,47.464,48.333,49.123,49.808,50.403,50.935,51.405,51.772,51.988,52.062,
-52.111,52.302,52.711,53.221,53.604,53.720,53.630,53.505,53.438,53.375,53.236,53.046,52.929,52.982,53.199,53.493,
-53.755,53.889,53.819,53.546,53.183,52.884,52.685,52.426,51.909,51.169,50.551,50.416,50.751,51.146,51.226,51.065,
-51.076,51.471,51.967,52.122,51.893,51.660,51.673,51.672,51.271,50.660,50.637,51.749,53.501,54.664,54.445,53.251,
-52.215,52.079,52.653,53.284,53.604,53.703,53.781,53.876,53.958,54.059,54.188,54.205,53.943,53.441,52.948,52.660,
-52.540,52.442,52.323,52.310,52.615,53.461,54.992,57.104,59.328,60.998,61.658,61.312,60.329,59.182,58.290,57.946,
-58.150,58.471,58.193,56.795,54.393,51.773,49.990,49.819,51.364,54.022,56.819,58.963,60.203,60.760,60.963,60.983,
-60.852,60.619,60.384,60.215,60.072,59.836,59.416,58.847,58.288,57.893,57.633,57.284,56.648,55.788,54.987,54.466,
-54.195,53.995,53.758,53.499,53.228,52.873,52.365,51.760,51.217,50.856,50.640,50.424,50.128,49.856,49.808,50.060,
-50.471,50.851,51.181,51.588,52.094,52.504,52.601,52.404,52.155,52.079,52.239,52.566,52.918,53.100,52.984,52.675,
-52.418,52.152,51.186,48.559,43.869,37.807,31.867,27.533,25.581,25.831,27.339,28.932,29.865,30.144,30.203,30.296,
-30.265,29.885,29.239,28.611,28.108,27.580,26.907,26.186,25.567,25.023,24.400,23.650,22.887,22.225,21.657,21.112,
-20.548,19.952,19.305,18.605,17.890,17.211,16.582,15.991,15.442,14.944,14.485,14.045,13.642,13.310,13.037,12.782,
-12.550,12.404,12.362,12.323,12.162,11.880,11.593,11.393,11.260,11.135,11.013,10.924,10.848,10.720,10.505,10.234,
-9.952,9.660,9.333,8.959,8.564,8.213,7.964,7.797,7.560,7.067,6.292,5.459,4.861,4.588,4.471,4.298,
-4.040,3.819,3.715,3.670,3.566,3.338,2.983,2.532,2.056,1.657,1.396,1.220,.990,.615,.153,-.231,
--.401,-.385,-.388,-.641,-1.186,-1.813,-2.259,-2.467,-2.615,-2.873,-3.207,-3.489,-3.717,-4.019,-4.443,-4.859,
--5.149,-5.372,-5.653,-5.970,-6.160,-6.163,-6.119,-6.192,-6.381,-6.578,-6.743,-6.909,-7.068,-7.168,-7.239,-7.410,
--7.747,-8.137,-8.412,-8.532,-8.585,-8.637,-8.694,-8.791,-9.002,-9.307,-9.534,-9.529,-9.352,-9.248,-9.399,-9.765,
--10.142,-10.315,-10.188,-9.840,-9.512,-9.460,-9.743,-10.162,-10.462,-10.582,-10.654,-10.781,-10.904,-10.912,-10.817,-10.729,
--10.714,-10.745,-10.787,-10.850,-10.935,-10.997,-11.011,-11.037,-11.157,-11.349,-11.495,-11.516,-11.456,-11.407,-11.398,-11.393,
--11.367,-11.340,-11.329,-11.324,-11.307,-11.287,-11.274,-11.255,-11.210,-11.153,-11.116,-11.110,-11.107,-11.085,-11.055,-11.040,
--11.035,-11.011,-10.950,-10.860,-10.758,-10.654,-10.549,-10.435,-10.302,-10.149,-9.993,-9.857,-9.746,-9.634,-9.494,-9.326,
--9.149,-8.970,-8.781,-8.574,-8.356,-8.137,-7.917,-7.694,-7.476,-7.272,-7.086,-6.916,-6.757,-6.599,-6.423,-6.226,
--6.025,-5.844,-5.684,-5.524,-5.357,-5.203,-5.072,-4.944,-4.794,-4.629,-4.482,-4.364,-4.255,-4.142,-4.038,-3.954,
--3.872,-3.777,-3.685,-3.620,-3.571,-3.500,-3.404,-3.321,-3.278,-3.260,-3.240,-3.226,-3.239,-3.266,-3.273,-3.252,
--3.228,-3.216,-3.197,-3.159,-3.120,-3.102,-3.096,-3.086,-3.088,-3.113,-3.132,-3.102,-3.039,-3.016,-3.071,-3.156,
--3.200,-3.203,-3.214,-3.246,-3.266,-3.246,-3.209,-3.187,-3.181,-3.169,-3.146,-3.116,-3.087,-3.068,-3.075,-3.106,
--3.129,-3.121,-3.108,-3.128,-3.174,-3.193,-3.164,-3.121,-3.104,-3.106,-3.103,-3.092,-3.089,-3.082,-3.049,-2.990,
--2.924,-2.854,-2.773,-2.708,-2.695,-2.722,-2.717,-2.645,-2.555,-2.505,-2.477,-2.408,-2.294,-2.194,-2.142,-2.095,
--2.004,-1.882,-1.768,-1.669,-1.566,-1.458,-1.357,-1.257,-1.140,-1.019,-.924,-.852,-.772,-.681,-.615,-.591,
--.571,-.518,-.436,-.345,-.236,-.099,.036,.127,.186,.272,.411,.566,.692,.793,.906,1.053,
-1.226,1.394,1.522,1.605,1.693,1.838,2.017,2.153,2.248,2.407,2.686,2.968,3.110,3.164,3.333,3.679,
-4.030,4.262,4.527,5.051,5.742,6.227,6.308,6.250,6.463,6.986,7.420,7.402,7.039,6.827,7.139,7.835,
-8.413,8.542,8.401,8.425,8.768,9.166,9.362,9.479,9.799,10.317,10.750,11.001,11.325,11.921,12.605,13.087,
-13.420,13.892,14.562,15.204,15.699,16.191,16.734,17.118,17.240,17.403,17.933,18.665,19.188,19.491,19.892,20.203,
-19.501,17.221,14.323,12.919,14.598,19.200,25.068,30.205,33.308,34.327,34.400,35.018,36.830,39.226,41.197,42.417,
-43.256,43.941,44.239,44.008,43.572,43.260,42.950,42.438,42.001,42.034,42.174,41.337,38.888,35.425,32.121,29.548,
-27.491,25.702,24.341,23.583,23.224,22.901,22.474,21.982,21.411,20.764,20.273,20.216,20.519,20.764,20.677,20.403,
-20.184,19.964,19.484,18.675,17.745,16.911,16.235,15.751,15.544,15.590,15.593,15.152,14.108,12.672,11.245,10.110,
-9.253,8.408,7.296,5.868,4.336,2.929,1.679,.504,-.562,-1.363,-1.870,-2.292,-2.844,-3.477,-3.967,-4.224,
--4.397,-4.664,-5.031,-5.391,-5.691,-5.947,-6.142,-6.223,-6.197,-6.154,-6.195,-6.333,-6.506,-6.619,-6.605,-6.469,
--6.299,-6.172,-6.036,-5.724,-5.118,-4.304,-3.530,-3.022,-2.832,-2.839,-2.857,-2.794,-2.733,-2.850,-3.205,-3.627,
--3.886,-3.952,-4.030,-4.287,-4.632,-4.843,-4.868,-4.917,-5.222,-5.768,-6.264,-6.377,-6.042,-5.599,-5.597,-6.356,
--7.652,-8.899,-9.692,-10.100,-10.395,-10.625,-10.614,-10.327,-10.023,-9.937,-9.978,-9.892,-9.643,-9.455,-9.479,-9.579,
--9.523,-9.278,-9.002,-8.819,-8.704,-8.575,-8.400,-8.194,-7.985,-7.792,-7.616,-7.419,-7.165,-6.889,-6.674,-6.546,
--6.425,-6.247,-6.072,-6.008,-6.064,-6.140,-6.170,-6.192,-6.255,-6.328,-6.355,-6.346,-6.356,-6.392,-6.413,-6.410,
--6.418,-6.447,-6.443,-6.369,-6.269,-6.208,-6.173,-6.098,-5.955,-5.782,-5.616,-5.445,-5.244,-5.037,-4.865,-4.728,
--4.578,-4.374,-4.113,-3.811,-3.488,-3.162,-2.844,-2.526,-2.190,-1.838,-1.494,-1.171,-.855,-.524,-.175,.174,
-.515,.851,1.186,1.515,1.837,2.160,2.485,2.805,3.115,3.431,3.765,4.115,4.474,4.850,5.255,5.673,
-6.070,6.429,6.777,7.155,7.569,7.984,8.370,8.736,9.108,9.484,9.833,10.147,10.458,10.786,11.087,11.293,
-11.414,11.552,11.780,12.032,12.174,12.168,12.127,12.172,12.290,12.385,12.421,12.455,12.527,12.600,12.625,12.619,
-12.631,12.666,12.701,12.748,12.848,12.994,13.129,13.221,13.301,13.408,13.527,13.640,13.775,13.966,14.176,14.334,
-14.446,14.604,14.854,15.118,15.288,15.369,15.465,15.651,15.902,16.163,16.417,16.664,16.872,17.007,17.091,17.188,
-17.336,17.454,17.669,17.905,18.160,18.444,18.737,19.007,19.255,19.523,19.841,20.185,20.507,20.783,21.037,21.303,
-21.579,21.820,22.004,22.192,22.523,23.084,23.781,24.383,24.715,24.812,24.849,24.933,25.007,24.959,24.759,24.449,
-24.049,23.558,23.039,22.632,22.430,22.376,22.339,22.274,22.248,22.322,22.462,22.601,22.744,22.946,23.212,23.491,
-23.795,24.253,24.972,25.856,26.622,27.065,27.254,27.442,27.776,28.173,28.479,28.698,28.983,29.406,29.838,30.104,
-30.208,30.325,30.576,30.889,31.103,31.129,30.952,30.526,29.784,28.792,27.793,27.054,26.664,26.502,26.358,26.054,
-25.499,24.724,23.857,23.021,22.244,21.490,20.793,20.269,19.981,19.847,19.749,19.670,19.656,19.658,19.520,19.148,
-18.619,18.094,17.662,17.325,17.068,16.870,16.670,16.420,16.158,15.969,15.840,15.641,15.278,14.814,14.381,14.009,
-13.613,13.135,12.619,12.128,11.667,11.232,10.888,10.736,10.791,10.933,10.990,10.870,10.622,10.354,10.088,9.676,
-8.911,7.748,6.412,5.244,4.453,4.023,3.830,3.766,3.752,3.711,3.595,3.415,3.178,2.820,2.263,1.559,
-.896,.438,.166,-.067,-.366,-.709,-1.024,-1.297,-1.590,-1.935,-2.242,-2.338,-2.131,-1.749,-1.458,-1.419,
--1.542,-1.625,-1.617,-1.657,-1.843,-2.054,-2.093,-1.973,-1.953,-2.227,-2.626,-2.713,-2.208,-1.259,-.289,.425,
-.918,1.308,1.530,1.451,1.249,1.439,2.342,3.607,4.488,4.633,4.389,4.222,4.039,3.388,2.222,1.101,
-.466,.005,-.952,-2.515,-4.037,-4.898,-5.173,-5.368,-5.710,-5.985,-6.013,-5.949,-6.023,-6.188,-6.230,-6.110,
--5.992,-5.954,-5.861,-5.585,-5.223,-4.989,-4.938,-4.914,-4.757,-4.477,-4.205,-4.040,-3.971,-3.931,-3.879,-3.856,
--3.959,-4.234,-4.598,-4.886,-5.008,-5.032,-5.083,-5.202,-5.333,-5.417,-5.435,-5.354,-5.137,-4.831,-4.606,-4.613,
--4.830,-5.097,-5.301,-5.450,-5.575,-5.652,-5.649,-5.604,-5.572,-5.543,-5.482,-5.438,-5.520,-5.739,-5.961,-6.063,
--6.086,-6.154,-6.304,-6.464,-6.595,-6.751,-6.973,-7.216,-7.425,-7.627,-7.871,-8.125,-8.314,-8.463,-8.681,-9.016,
--9.374,-9.649,-9.870,-10.142,-10.508,-10.927,-11.370,-11.861,-12.401,-12.941,-13.451,-13.963,-14.516,-15.073,-15.582,-16.050,
--16.524,-17.007,-17.463,-17.906,-18.420,-19.046,-19.715,-20.316,-20.817,-21.265,-21.713,-22.184,-22.699,-23.274,-23.885,-24.477,
--25.024,-25.548,-26.062,-26.546,-26.996,-27.467,-28.014,-28.616,-29.189,-29.673,-30.067,-30.391,-30.674,-30.968,-31.337,-31.789,
--32.260,-32.689,-33.087,-33.492,-33.899,-34.279,-34.638,-35.025,-35.458,-35.901,-36.305,-36.653,-36.940,-37.151,-37.306,-37.462,
--37.665,-37.901,-38.131,-38.352,-38.586,-38.815,-39.006,-39.176,-39.370,-39.567,-39.658,-39.585,-39.423,-39.277,-39.139,-38.964,
--38.879,-39.195,-40.092,-41.333,-42.402,-42.958,-43.113,-43.250,-43.613,-44.116,-44.515,-44.685,-44.720,-44.798,-45.007,-45.289,
--45.523,-45.639,-45.662,-45.687,-45.788,-45.950,-46.080,-46.093,-46.003,-45.905,-45.869,-45.856,-45.781,-45.631,-45.491,-45.457,
--45.544,-45.697,-45.868,-46.044,-46.230,-46.436,-46.660,-46.864,-46.975,-46.940,-46.793,-46.619,-46.456,-46.254,-45.959,-45.588,
--45.196,-44.804,-44.407,-44.023,-43.675,-43.334,-42.932,-42.466,-42.019,-41.654,-41.317,-40.896,-40.337,-39.659,-38.866,-37.931,
--36.866,-35.774,-34.810,-34.123,-33.844,-34.045,-34.647,-35.376,-35.887,-35.953,-35.538,-34.746,-33.751,-32.769,-32.004,-31.545,
--31.336,-31.265,-31.254,-31.271,-31.290,-31.295,-31.297,-31.303,-31.266,-31.115,-30.828,-30.435,-29.961,-29.420,-28.854,-28.302,
--27.696,-26.867,-25.733,-24.422,-23.117,-21.797,-20.257,-18.432,-16.583,-15.099,-14.123,-13.465,-12.830,-12.064,-11.186,-10.292,
--9.497,-8.886,-8.456,-8.114,-7.776,-7.464,-7.259,-7.179,-7.144,-7.061,-6.898,-6.665,-6.353,-5.939,-5.417,-4.783,
--4.033,-3.194,-2.358,-1.648,-1.119,-.695,-.217,.456,1.358,2.384,3.333,4.012,4.345,4.392,4.274,4.098,
-3.949,3.898,3.970,4.125,4.313,4.541,4.850,5.217,5.551,5.828,6.201,6.887,7.928,9.102,10.103,10.777,
-11.192,11.507,11.825,12.167,12.520,12.857,13.142,13.339,13.441,13.490,13.567,13.766,14.164,14.773,15.521,16.264,
-16.884,17.368,17.827,18.403,19.178,20.132,21.189,22.263,23.280,24.182,24.931,25.529,26.015,26.455,26.928,27.500,
-28.181,28.887,29.484,29.907,30.235,30.622,31.141,31.728,32.294,32.865,33.564,34.461,35.461,36.392,37.184,37.915,
-38.681,39.430,39.985,40.223,40.224,40.187,40.223,40.258,40.163,39.957,39.829,39.947,40.293,40.705,41.073,41.429,
-41.868,42.422,43.046,43.700,44.390,45.129,45.899,46.665,47.423,48.190,48.961,49.689,50.324,50.841,51.225,51.451,
-51.523,51.530,51.637,51.965,52.459,52.909,53.126,53.098,52.962,52.842,52.744,52.612,52.449,52.345,52.380,52.550,
-52.784,52.995,53.102,53.032,52.773,52.439,52.203,52.111,51.979,51.566,50.881,50.272,50.125,50.447,50.829,50.870,
-50.594,50.379,50.486,50.755,50.853,50.713,50.588,50.631,50.618,50.277,49.848,50.048,51.287,52.992,53.964,53.516,
-52.171,51.129,51.120,51.883,52.694,53.149,53.329,53.411,53.417,53.354,53.352,53.492,53.611,53.459,53.025,52.574,
-52.336,52.272,52.225,52.165,52.184,52.340,52.666,53.332,54.605,56.528,58.677,60.357,61.079,60.828,59.956,58.911,
-58.076,57.701,57.783,57.948,57.539,56.010,53.424,50.623,48.824,48.853,50.620,53.260,55.783,57.641,58.790,59.393,
-59.584,59.458,59.133,58.721,58.276,57.800,57.283,56.722,56.133,55.574,55.127,54.810,54.534,54.205,53.872,53.700,
-53.767,53.935,53.972,53.764,53.374,52.912,52.425,51.927,51.474,51.144,50.938,50.747,50.459,50.100,49.852,49.880,
-50.159,50.502,50.787,51.098,51.579,52.166,52.579,52.615,52.371,52.126,52.070,52.207,52.470,52.768,52.951,52.883,
-52.615,52.296,51.715,50.049,46.366,40.611,34.043,28.577,25.590,25.209,26.516,28.274,29.593,30.219,30.397,30.460,
-30.486,30.310,29.833,29.197,28.607,28.075,27.458,26.716,25.989,25.405,24.900,24.316,23.606,22.866,22.195,21.597,
-21.021,20.430,19.806,19.154,18.506,17.899,17.319,16.718,16.095,15.523,15.045,14.607,14.138,13.671,13.305,13.054,
-12.813,12.528,12.284,12.191,12.201,12.150,11.953,11.685,11.444,11.224,10.975,10.728,10.578,10.550,10.537,10.405,
-10.117,9.745,9.376,9.040,8.716,8.378,8.046,7.763,7.529,7.241,6.762,6.080,5.373,4.856,4.577,4.386,
-4.127,3.797,3.505,3.321,3.216,3.121,2.979,2.731,2.343,1.879,1.512,1.384,1.428,1.385,1.023,.367,
--.276,-.566,-.434,-.191,-.284,-.888,-1.735,-2.385,-2.669,-2.806,-3.079,-3.498,-3.867,-4.103,-4.335,-4.687,
--5.089,-5.398,-5.608,-5.827,-6.080,-6.259,-6.302,-6.305,-6.398,-6.587,-6.788,-6.963,-7.133,-7.285,-7.374,-7.436,
--7.594,-7.906,-8.258,-8.495,-8.583,-8.605,-8.616,-8.615,-8.642,-8.796,-9.100,-9.420,-9.598,-9.639,-9.694,-9.885,
--10.179,-10.446,-10.561,-10.463,-10.201,-9.950,-9.924,-10.175,-10.517,-10.714,-10.742,-10.780,-10.950,-11.150,-11.211,-11.135,
--11.091,-11.186,-11.342,-11.427,-11.412,-11.360,-11.306,-11.235,-11.169,-11.181,-11.296,-11.434,-11.487,-11.442,-11.378,-11.363,
--11.386,-11.403,-11.400,-11.395,-11.398,-11.400,-11.386,-11.351,-11.290,-11.210,-11.132,-11.085,-11.071,-11.062,-11.030,-10.981,
--10.938,-10.908,-10.869,-10.794,-10.683,-10.561,-10.462,-10.396,-10.333,-10.230,-10.069,-9.884,-9.726,-9.612,-9.510,-9.380,
--9.223,-9.065,-8.918,-8.767,-8.593,-8.396,-8.186,-7.966,-7.740,-7.524,-7.329,-7.152,-6.981,-6.813,-6.653,-6.491,
--6.313,-6.116,-5.921,-5.746,-5.587,-5.433,-5.286,-5.151,-5.021,-4.883,-4.742,-4.612,-4.494,-4.374,-4.253,-4.148,
--4.069,-3.995,-3.909,-3.822,-3.755,-3.700,-3.623,-3.517,-3.420,-3.366,-3.350,-3.345,-3.345,-3.360,-3.387,-3.398,
--3.381,-3.350,-3.326,-3.312,-3.301,-3.289,-3.268,-3.232,-3.193,-3.184,-3.211,-3.238,-3.227,-3.194,-3.188,-3.223,
--3.259,-3.263,-3.259,-3.282,-3.324,-3.339,-3.314,-3.277,-3.261,-3.257,-3.241,-3.202,-3.149,-3.100,-3.080,-3.104,
--3.146,-3.160,-3.132,-3.108,-3.130,-3.175,-3.180,-3.129,-3.064,-3.028,-3.014,-3.007,-3.013,-3.038,-3.052,-3.016,
--2.934,-2.839,-2.752,-2.668,-2.602,-2.580,-2.589,-2.577,-2.516,-2.439,-2.387,-2.347,-2.281,-2.191,-2.111,-2.044,
--1.957,-1.834,-1.703,-1.589,-1.485,-1.379,-1.275,-1.173,-1.052,-.907,-.784,-.722,-.693,-.629,-.517,-.415,
--.366,-.347,-.322,-.283,-.229,-.131,.027,.197,.315,.376,.444,.562,.707,.842,.964,1.093,
-1.234,1.382,1.525,1.649,1.750,1.859,2.022,2.226,2.406,2.539,2.685,2.890,3.095,3.228,3.345,3.576,
-3.919,4.232,4.471,4.808,5.378,5.988,6.272,6.164,6.034,6.274,6.828,7.259,7.264,7.009,6.936,7.296,
-7.901,8.342,8.410,8.298,8.353,8.677,9.055,9.282,9.443,9.746,10.192,10.590,10.897,11.305,11.930,12.592,
-13.082,13.481,14.021,14.709,15.326,15.789,16.241,16.726,17.061,17.187,17.403,17.989,18.751,19.284,19.563,19.863,
-19.990,19.106,16.744,13.877,12.573,14.421,19.303,25.527,30.916,34.005,34.769,34.522,34.868,36.411,38.494,40.215,
-41.445,42.598,43.711,44.304,44.160,43.704,43.388,43.114,42.660,42.311,42.451,42.594,41.482,38.456,34.350,30.679,
-28.171,26.478,25.108,24.088,23.612,23.495,23.315,22.888,22.320,21.713,21.088,20.556,20.293,20.271,20.230,20.010,
-19.744,19.605,19.503,19.185,18.576,17.839,17.143,16.521,16.003,15.695,15.618,15.533,15.058,14.000,12.535,11.069,
-9.932,9.140,8.405,7.395,6.028,4.513,3.092,1.812,.609,-.456,-1.210,-1.629,-1.946,-2.413,-3.011,-3.523,
--3.837,-4.062,-4.351,-4.715,-5.071,-5.374,-5.630,-5.832,-5.949,-5.980,-5.975,-5.991,-6.066,-6.206,-6.359,-6.419,
--6.316,-6.108,-5.916,-5.759,-5.494,-4.964,-4.185,-3.359,-2.732,-2.438,-2.439,-2.556,-2.619,-2.631,-2.784,-3.227,
--3.838,-4.310,-4.481,-4.488,-4.554,-4.721,-4.889,-5.065,-5.396,-5.939,-6.472,-6.655,-6.348,-5.775,-5.396,-5.620,
--6.535,-7.833,-9.024,-9.807,-10.236,-10.503,-10.630,-10.474,-10.035,-9.573,-9.363,-9.394,-9.449,-9.406,-9.339,-9.324,
--9.297,-9.159,-8.938,-8.748,-8.635,-8.548,-8.437,-8.314,-8.192,-8.049,-7.869,-7.672,-7.472,-7.255,-7.009,-6.764,
--6.550,-6.359,-6.184,-6.067,-6.054,-6.120,-6.186,-6.214,-6.240,-6.292,-6.340,-6.349,-6.340,-6.358,-6.392,-6.398,
--6.371,-6.354,-6.366,-6.365,-6.313,-6.228,-6.145,-6.060,-5.942,-5.787,-5.620,-5.453,-5.264,-5.048,-4.826,-4.626,
--4.446,-4.271,-4.086,-3.868,-3.591,-3.258,-2.911,-2.589,-2.279,-1.947,-1.594,-1.257,-.950,-.638,-.290,.078,
-.426,.748,1.066,1.391,1.714,2.031,2.360,2.705,3.049,3.372,3.688,4.016,4.360,4.708,5.063,5.438,
-5.829,6.213,6.580,6.949,7.349,7.780,8.207,8.596,8.943,9.277,9.622,9.967,10.276,10.528,10.742,10.944,
-11.143,11.336,11.539,11.770,11.998,12.148,12.188,12.187,12.242,12.367,12.485,12.541,12.567,12.614,12.671,12.693,
-12.681,12.685,12.735,12.807,12.879,12.960,13.054,13.137,13.196,13.259,13.364,13.507,13.663,13.838,14.052,14.280,
-14.466,14.611,14.794,15.060,15.340,15.528,15.620,15.721,15.910,16.162,16.406,16.624,16.828,17.007,17.125,17.199,
-17.293,17.454,17.662,17.905,18.174,18.461,18.765,19.063,19.330,19.580,19.859,20.180,20.509,20.808,21.075,21.329,
-21.589,21.866,22.166,22.481,22.806,23.184,23.681,24.278,24.807,25.090,25.150,25.194,25.343,25.442,25.225,24.657,
-23.996,23.509,23.200,22.903,22.550,22.260,22.151,22.178,22.223,22.250,22.309,22.422,22.552,22.689,22.880,23.144,
-23.426,23.707,24.117,24.827,25.803,26.745,27.343,27.584,27.732,28.016,28.405,28.725,28.934,29.177,29.579,30.071,
-30.490,30.795,31.084,31.421,31.714,31.823,31.703,31.391,30.875,30.088,29.052,27.972,27.112,26.594,26.331,26.122,
-25.790,25.257,24.565,23.834,23.154,22.523,21.898,21.305,20.840,20.553,20.369,20.197,20.046,19.976,19.950,19.816,
-19.468,18.966,18.460,18.057,17.773,17.588,17.454,17.283,17.013,16.689,16.422,16.243,16.040,15.697,15.240,14.798,
-14.446,14.132,13.762,13.307,12.806,12.314,11.892,11.624,11.573,11.702,11.850,11.821,11.535,11.106,10.735,10.480,
-10.138,9.406,8.208,6.823,5.663,4.940,4.576,4.391,4.287,4.244,4.233,4.213,4.167,4.062,3.797,3.275,
-2.550,1.832,1.312,.994,.738,.430,.070,-.287,-.621,-.944,-1.242,-1.437,-1.443,-1.273,-1.076,-1.032,
--1.168,-1.310,-1.271,-1.089,-.999,-1.139,-1.360,-1.411,-1.279,-1.249,-1.556,-2.057,-2.317,-2.010,-1.183,-.134,
-.889,1.772,2.407,2.644,2.492,2.312,2.605,3.522,4.641,5.343,5.396,5.054,4.605,4.020,3.174,2.225,
-1.504,1.004,.264,-1.062,-2.662,-3.842,-4.292,-4.371,-4.573,-4.949,-5.216,-5.267,-5.305,-5.488,-5.684,-5.689,
--5.531,-5.396,-5.320,-5.156,-4.822,-4.456,-4.251,-4.218,-4.209,-4.100,-3.899,-3.684,-3.537,-3.509,-3.598,-3.730,
--3.822,-3.872,-3.941,-4.041,-4.103,-4.094,-4.108,-4.263,-4.536,-4.778,-4.883,-4.872,-4.804,-4.684,-4.514,-4.378,
--4.386,-4.548,-4.765,-4.936,-5.037,-5.077,-5.059,-5.013,-4.989,-4.993,-4.958,-4.858,-4.800,-4.911,-5.157,-5.361,
--5.424,-5.439,-5.544,-5.727,-5.886,-6.005,-6.177,-6.443,-6.722,-6.942,-7.140,-7.371,-7.597,-7.749,-7.873,-8.092,
--8.429,-8.760,-8.991,-9.179,-9.442,-9.798,-10.189,-10.602,-11.081,-11.627,-12.163,-12.652,-13.146,-13.695,-14.254,-14.750,
--15.190,-15.637,-16.112,-16.587,-17.067,-17.617,-18.260,-18.917,-19.491,-19.966,-20.396,-20.830,-21.293,-21.818,-22.422,-23.059,
--23.646,-24.150,-24.619,-25.101,-25.596,-26.094,-26.625,-27.219,-27.840,-28.401,-28.849,-29.196,-29.489,-29.776,-30.111,-30.526,
--30.994,-31.452,-31.869,-32.275,-32.696,-33.107,-33.477,-33.835,-34.231,-34.657,-35.054,-35.396,-35.716,-36.026,-36.283,-36.464,
--36.633,-36.881,-37.218,-37.572,-37.874,-38.109,-38.287,-38.428,-38.570,-38.748,-38.926,-39.013,-38.970,-38.859,-38.739,-38.578,
--38.369,-38.304,-38.704,-39.678,-40.907,-41.867,-42.299,-42.405,-42.590,-43.050,-43.638,-44.084,-44.268,-44.299,-44.366,-44.563,
--44.837,-45.069,-45.190,-45.228,-45.269,-45.379,-45.540,-45.666,-45.684,-45.607,-45.521,-45.495,-45.506,-45.480,-45.387,-45.290,
--45.275,-45.363,-45.511,-45.675,-45.851,-46.051,-46.271,-46.477,-46.624,-46.671,-46.607,-46.467,-46.303,-46.130,-45.924,-45.663,
--45.348,-44.983,-44.557,-44.090,-43.661,-43.334,-43.073,-42.761,-42.351,-41.920,-41.551,-41.203,-40.751,-40.148,-39.475,-38.833,
--38.213,-37.524,-36.720,-35.877,-35.168,-34.772,-34.781,-35.137,-35.647,-36.054,-36.131,-35.746,-34.913,-33.831,-32.809,-32.101,
--31.745,-31.598,-31.508,-31.435,-31.403,-31.418,-31.467,-31.549,-31.643,-31.663,-31.512,-31.191,-30.793,-30.392,-29.972,-29.485,
--28.888,-28.101,-27.015,-25.631,-24.148,-22.785,-21.523,-20.124,-18.466,-16.769,-15.400,-14.481,-13.804,-13.102,-12.313,-11.526,
--10.795,-10.087,-9.385,-8.758,-8.286,-7.983,-7.803,-7.685,-7.565,-7.376,-7.076,-6.682,-6.255,-5.862,-5.534,-5.258,
--4.972,-4.581,-4.012,-3.279,-2.490,-1.778,-1.202,-.706,-.153,.571,1.451,2.347,3.075,3.527,3.705,3.675,
-3.529,3.374,3.313,3.377,3.511,3.651,3.813,4.070,4.428,4.785,5.074,5.401,5.990,6.948,8.117,9.182,
-9.911,10.299,10.494,10.655,10.862,11.126,11.436,11.770,12.094,12.381,12.633,12.900,13.269,13.807,14.509,15.276,
-15.973,16.521,16.951,17.388,17.951,18.682,19.543,20.477,21.446,22.425,23.364,24.190,24.846,25.337,25.739,26.168,
-26.718,27.391,28.075,28.630,29.022,29.368,29.834,30.457,31.114,31.676,32.179,32.790,33.617,34.562,35.419,36.100,
-36.722,37.455,38.289,39.002,39.378,39.431,39.370,39.366,39.391,39.322,39.153,39.032,39.098,39.326,39.601,39.879,
-40.235,40.751,41.405,42.113,42.834,43.586,44.376,45.164,45.909,46.629,47.374,48.163,48.959,49.695,50.311,50.759,
-51.004,51.058,51.015,51.037,51.253,51.661,52.111,52.419,52.510,52.449,52.345,52.235,52.093,51.931,51.833,51.870,
-52.015,52.173,52.274,52.296,52.220,52.014,51.724,51.495,51.435,51.441,51.244,50.705,50.032,49.618,49.648,49.898,
-49.987,49.785,49.511,49.439,49.584,49.742,49.783,49.777,49.790,49.705,49.401,49.121,49.425,50.595,52.116,52.964,
-52.560,51.369,50.463,50.508,51.283,52.129,52.651,52.889,52.994,52.996,52.926,52.911,53.010,53.058,52.849,52.441,
-52.121,52.044,52.065,51.996,51.902,51.982,52.247,52.511,52.747,53.289,54.510,56.341,58.214,59.516,60.018,59.863,
-59.294,58.516,57.779,57.385,57.424,57.492,56.832,54.955,52.197,49.632,48.337,48.678,50.215,52.199,54.067,55.549,
-56.524,56.943,56.866,56.443,55.801,55.009,54.168,53.455,53.007,52.797,52.684,52.577,52.509,52.553,52.733,53.032,
-53.415,53.798,54.028,53.964,53.598,53.058,52.501,52.014,51.617,51.310,51.087,50.903,50.688,50.414,50.152,50.032,
-50.115,50.320,50.519,50.712,51.044,51.601,52.212,52.554,52.482,52.193,52.005,52.049,52.231,52.427,52.592,52.693,
-52.667,52.486,52.056,50.922,48.243,43.422,36.965,30.584,26.215,24.748,25.611,27.438,29.064,30.034,30.472,30.659,
-30.735,30.646,30.307,29.758,29.150,28.578,27.989,27.295,26.535,25.851,25.308,24.820,24.263,23.608,22.906,22.203,
-21.512,20.850,20.227,19.623,19.011,18.411,17.858,17.324,16.748,16.140,15.595,15.161,14.756,14.279,13.780,13.398,
-13.158,12.923,12.588,12.246,12.066,12.061,12.071,11.964,11.761,11.532,11.273,10.941,10.582,10.326,10.235,10.226,
-10.151,9.934,9.605,9.233,8.866,8.513,8.163,7.816,7.477,7.142,6.767,6.300,5.753,5.233,4.847,4.589,
-4.351,4.040,3.673,3.330,3.057,2.859,2.725,2.620,2.455,2.144,1.726,1.392,1.318,1.457,1.515,1.190,
-.463,-.331,-.736,-.578,-.163,-.061,-.602,-1.574,-2.454,-2.931,-3.142,-3.402,-3.801,-4.173,-4.399,-4.577,
--4.858,-5.230,-5.560,-5.785,-5.960,-6.136,-6.287,-6.397,-6.522,-6.715,-6.945,-7.149,-7.327,-7.509,-7.674,-7.764,
--7.800,-7.894,-8.105,-8.352,-8.513,-8.575,-8.603,-8.623,-8.605,-8.582,-8.665,-8.924,-9.286,-9.613,-9.852,-10.044,
--10.227,-10.395,-10.532,-10.636,-10.674,-10.618,-10.531,-10.562,-10.774,-11.020,-11.091,-10.980,-10.896,-10.997,-11.196,-11.310,
--11.322,-11.394,-11.613,-11.848,-11.916,-11.816,-11.702,-11.670,-11.658,-11.576,-11.455,-11.396,-11.423,-11.454,-11.424,-11.364,
--11.344,-11.377,-11.416,-11.426,-11.427,-11.443,-11.468,-11.465,-11.412,-11.324,-11.231,-11.160,-11.120,-11.096,-11.068,-11.019,
--10.954,-10.888,-10.828,-10.761,-10.669,-10.551,-10.431,-10.344,-10.299,-10.263,-10.185,-10.036,-9.847,-9.671,-9.535,-9.421,
--9.295,-9.151,-9.002,-8.859,-8.712,-8.552,-8.379,-8.192,-7.989,-7.782,-7.592,-7.424,-7.259,-7.073,-6.873,-6.690,
--6.533,-6.375,-6.193,-5.993,-5.807,-5.648,-5.506,-5.365,-5.222,-5.082,-4.946,-4.821,-4.709,-4.603,-4.489,-4.368,
--4.261,-4.178,-4.105,-4.024,-3.938,-3.867,-3.806,-3.725,-3.612,-3.499,-3.434,-3.430,-3.456,-3.482,-3.504,-3.523,
--3.531,-3.510,-3.462,-3.415,-3.399,-3.420,-3.449,-3.444,-3.398,-3.344,-3.321,-3.328,-3.333,-3.325,-3.331,-3.367,
--3.408,-3.411,-3.382,-3.368,-3.393,-3.420,-3.409,-3.370,-3.344,-3.349,-3.361,-3.349,-3.303,-3.232,-3.160,-3.125,
--3.147,-3.195,-3.211,-3.178,-3.144,-3.150,-3.171,-3.154,-3.089,-3.019,-2.977,-2.955,-2.948,-2.969,-3.014,-3.028,
--2.965,-2.843,-2.725,-2.640,-2.570,-2.501,-2.450,-2.429,-2.419,-2.394,-2.349,-2.289,-2.211,-2.120,-2.040,-1.979,
--1.910,-1.802,-1.670,-1.547,-1.438,-1.320,-1.197,-1.099,-1.020,-.906,-.740,-.588,-.519,-.508,-.467,-.362,
--.244,-.166,-.126,-.108,-.105,-.097,-.028,.127,.311,.444,.519,.594,.707,.836,.960,1.092,
-1.243,1.395,1.534,1.667,1.802,1.923,2.029,2.162,2.351,2.563,2.743,2.890,3.042,3.212,3.392,3.609,
-3.890,4.190,4.428,4.643,4.983,5.482,5.918,6.047,5.952,6.001,6.412,6.965,7.258,7.170,6.981,7.042,
-7.420,7.888,8.183,8.244,8.231,8.339,8.608,8.925,9.195,9.465,9.814,10.203,10.543,10.881,11.382,12.072,
-12.749,13.243,13.650,14.172,14.803,15.367,15.813,16.258,16.721,17.052,17.240,17.559,18.213,18.983,19.496,19.744,
-19.956,19.917,18.861,16.426,13.620,12.469,14.520,19.620,25.983,31.316,34.165,34.701,34.415,34.833,36.285,37.982,
-39.246,40.317,41.735,43.307,44.243,44.237,43.855,43.669,43.535,43.115,42.676,42.690,42.707,41.377,37.950,33.353,
-29.357,26.892,25.558,24.621,23.909,23.588,23.557,23.447,23.078,22.570,22.054,21.518,20.972,20.528,20.230,19.963,
-19.648,19.387,19.295,19.265,19.051,18.551,17.889,17.233,16.646,16.146,15.782,15.548,15.285,14.735,13.747,12.415,
-11.038,9.914,9.113,8.409,7.472,6.176,4.686,3.242,1.923,.703,-.349,-1.073,-1.447,-1.693,-2.053,-2.544,
--3.010,-3.365,-3.686,-4.065,-4.482,-4.859,-5.164,-5.413,-5.612,-5.746,-5.807,-5.797,-5.737,-5.697,-5.768,-5.956,
--6.123,-6.115,-5.933,-5.715,-5.523,-5.237,-4.691,-3.886,-3.025,-2.372,-2.098,-2.190,-2.457,-2.654,-2.710,-2.806,
--3.181,-3.822,-4.451,-4.820,-4.940,-4.980,-5.038,-5.140,-5.364,-5.807,-6.364,-6.701,-6.550,-6.018,-5.543,-5.549,
--6.179,-7.274,-8.504,-9.532,-10.175,-10.471,-10.566,-10.526,-10.304,-9.912,-9.524,-9.334,-9.356,-9.427,-9.411,-9.299,
--9.146,-8.979,-8.817,-8.706,-8.662,-8.624,-8.522,-8.370,-8.235,-8.130,-7.997,-7.805,-7.602,-7.443,-7.302,-7.115,
--6.866,-6.604,-6.386,-6.241,-6.176,-6.177,-6.203,-6.214,-6.217,-6.245,-6.304,-6.351,-6.362,-6.361,-6.376,-6.384,
--6.347,-6.281,-6.239,-6.241,-6.251,-6.224,-6.156,-6.060,-5.938,-5.792,-5.638,-5.482,-5.307,-5.095,-4.864,-4.640,
--4.420,-4.186,-3.946,-3.730,-3.522,-3.271,-2.956,-2.622,-2.318,-2.024,-1.694,-1.340,-1.017,-.734,-.432,-.066,
-.325,.679,.986,1.288,1.607,1.929,2.254,2.602,2.979,3.351,3.687,4.001,4.325,4.663,4.997,5.326,
-5.666,6.026,6.388,6.741,7.104,7.502,7.931,8.352,8.715,9.016,9.298,9.620,9.985,10.324,10.574,10.759,
-10.973,11.264,11.580,11.839,12.018,12.153,12.256,12.309,12.327,12.372,12.474,12.583,12.639,12.651,12.672,12.712,
-12.729,12.715,12.722,12.790,12.891,12.969,13.018,13.066,13.124,13.181,13.247,13.356,13.519,13.709,13.914,14.141,
-14.386,14.609,14.799,15.004,15.269,15.556,15.781,15.928,16.070,16.269,16.498,16.699,16.863,17.022,17.176,17.292,
-17.375,17.482,17.662,17.935,18.173,18.432,18.704,18.995,19.291,19.575,19.865,20.188,20.532,20.853,21.135,21.400,
-21.659,21.906,22.166,22.502,22.932,23.389,23.810,24.233,24.712,25.169,25.440,25.506,25.551,25.674,25.655,25.171,
-24.274,23.459,23.160,23.258,23.250,22.856,22.302,21.989,22.027,22.203,22.317,22.369,22.445,22.565,22.705,22.893,
-23.156,23.455,23.746,24.134,24.812,25.811,26.863,27.623,28.006,28.223,28.498,28.823,29.058,29.193,29.398,29.807,
-30.347,30.847,31.255,31.656,32.082,32.399,32.443,32.195,31.759,31.192,30.437,29.457,28.380,27.436,26.776,26.368,
-26.058,25.699,25.222,24.651,24.057,23.496,22.968,22.455,21.972,21.572,21.273,21.024,20.783,20.574,20.442,20.344,
-20.158,19.811,19.350,18.889,18.508,18.233,18.064,17.964,17.840,17.604,17.267,16.930,16.654,16.383,16.022,15.569,
-15.129,14.800,14.580,14.377,14.110,13.767,13.415,13.149,13.033,13.049,13.100,13.044,12.765,12.264,11.694,11.266,
-11.029,10.744,10.061,8.874,7.476,6.311,5.593,5.215,4.984,4.836,4.803,4.870,4.949,4.972,4.904,4.684,
-4.227,3.538,2.772,2.124,1.677,1.368,1.088,.773,.421,.065,-.242,-.442,-.497,-.416,-.271,-.198,
--.310,-.580,-.815,-.828,-.648,-.506,-.568,-.734,-.785,-.689,-.686,-.997,-1.534,-1.946,-1.908,-1.321,
--.280,1.012,2.256,3.096,3.325,3.123,2.993,3.371,4.254,5.231,5.864,5.987,5.653,4.933,3.920,2.879,
-2.170,1.864,1.518,.570,-1.005,-2.563,-3.433,-3.593,-3.592,-3.856,-4.295,-4.606,-4.731,-4.859,-5.060,-5.176,
--5.084,-4.893,-4.767,-4.673,-4.452,-4.079,-3.726,-3.545,-3.502,-3.466,-3.375,-3.251,-3.122,-3.021,-3.010,-3.126,
--3.300,-3.409,-3.420,-3.403,-3.410,-3.403,-3.363,-3.386,-3.581,-3.906,-4.189,-4.324,-4.354,-4.353,-4.312,-4.202,
--4.088,-4.088,-4.228,-4.402,-4.497,-4.492,-4.437,-4.383,-4.365,-4.392,-4.413,-4.355,-4.230,-4.170,-4.281,-4.494,
--4.638,-4.663,-4.699,-4.859,-5.088,-5.273,-5.422,-5.638,-5.934,-6.209,-6.405,-6.589,-6.826,-7.061,-7.218,-7.346,
--7.564,-7.878,-8.162,-8.348,-8.521,-8.791,-9.145,-9.505,-9.873,-10.318,-10.845,-11.375,-11.867,-12.368,-12.915,-13.454,
--13.919,-14.329,-14.762,-15.245,-15.749,-16.282,-16.884,-17.538,-18.144,-18.629,-19.026,-19.427,-19.877,-20.375,-20.931,-21.549,
--22.182,-22.746,-23.219,-23.663,-24.142,-24.664,-25.208,-25.785,-26.403,-27.017,-27.546,-27.950,-28.261,-28.545,-28.860,-29.249,
--29.710,-30.191,-30.630,-31.031,-31.449,-31.903,-32.337,-32.706,-33.048,-33.424,-33.820,-34.168,-34.465,-34.779,-35.132,-35.452,
--35.675,-35.863,-36.142,-36.546,-36.978,-37.321,-37.542,-37.677,-37.785,-37.915,-38.082,-38.250,-38.354,-38.372,-38.337,-38.255,
--38.084,-37.863,-37.836,-38.305,-39.295,-40.435,-41.244,-41.566,-41.671,-41.938,-42.484,-43.114,-43.564,-43.749,-43.797,-43.889,
--44.102,-44.374,-44.596,-44.720,-44.787,-44.874,-45.014,-45.173,-45.284,-45.302,-45.241,-45.165,-45.135,-45.154,-45.171,-45.144,
--45.090,-45.069,-45.119,-45.236,-45.402,-45.609,-45.849,-46.085,-46.262,-46.344,-46.333,-46.258,-46.147,-46.006,-45.826,-45.602,
--45.347,-45.067,-44.729,-44.294,-43.791,-43.339,-43.046,-42.877,-42.676,-42.328,-41.872,-41.418,-40.986,-40.496,-39.896,-39.250,
--38.672,-38.196,-37.754,-37.270,-36.760,-36.323,-36.059,-35.994,-36.072,-36.204,-36.297,-36.238,-35.888,-35.171,-34.186,-33.207,
--32.492,-32.096,-31.883,-31.707,-31.537,-31.419,-31.397,-31.488,-31.686,-31.922,-32.036,-31.893,-31.526,-31.108,-30.758,-30.421,
--29.949,-29.233,-28.230,-26.931,-25.414,-23.889,-22.552,-21.375,-20.119,-18.645,-17.124,-15.866,-14.964,-14.225,-13.443,-12.629,
--11.912,-11.297,-10.651,-9.902,-9.166,-8.629,-8.363,-8.275,-8.207,-8.027,-7.661,-7.105,-6.447,-5.834,-5.396,-5.177,
--5.122,-5.117,-5.020,-4.691,-4.063,-3.207,-2.318,-1.595,-1.092,-.685,-.189,.477,1.231,1.912,2.400,2.666,
-2.738,2.681,2.598,2.598,2.729,2.939,3.140,3.316,3.523,3.792,4.075,4.326,4.629,5.167,6.047,7.146,
-8.176,8.895,9.262,9.408,9.498,9.636,9.864,10.196,10.628,11.124,11.628,12.105,12.561,13.034,13.552,14.123,
-14.735,15.367,15.996,16.617,17.249,17.927,18.669,19.455,20.252,21.050,21.857,22.670,23.440,24.095,24.595,24.990,
-25.407,25.956,26.633,27.297,27.799,28.135,28.468,28.973,29.655,30.351,30.912,31.378,31.927,32.672,33.531,34.317,
-34.943,35.520,36.223,37.071,37.867,38.368,38.510,38.450,38.387,38.380,38.356,38.269,38.182,38.183,38.287,38.454,
-38.686,39.048,39.591,40.280,41.034,41.803,42.592,43.417,44.271,45.126,45.950,46.722,47.453,48.182,48.930,49.641,
-50.191,50.479,50.517,50.437,50.404,50.533,50.839,51.236,51.592,51.817,51.908,51.908,51.828,51.652,51.429,51.295,
-51.349,51.525,51.644,51.613,51.496,51.380,51.239,51.010,50.767,50.694,50.829,50.910,50.598,49.874,49.115,48.742,
-48.805,48.984,48.969,48.780,48.676,48.819,49.102,49.308,49.335,49.218,48.992,48.686,48.486,48.752,49.690,50.977,
-51.868,51.840,51.101,50.405,50.336,50.866,51.565,52.092,52.388,52.516,52.534,52.529,52.610,52.751,52.737,52.419,
-51.968,51.735,51.830,51.994,51.956,51.798,51.827,52.142,52.511,52.739,53.009,53.705,54.947,56.412,57.647,58.444,
-58.856,58.942,58.660,58.060,57.439,57.139,57.131,56.893,55.820,53.819,51.470,49.599,48.704,48.778,49.538,50.668,
-51.861,52.795,53.252,53.233,52.889,52.329,51.591,50.807,50.270,50.224,50.617,51.138,51.533,51.812,52.156,52.664,
-53.255,53.748,54.002,53.965,53.670,53.205,52.683,52.198,51.798,51.484,51.228,50.991,50.749,50.509,50.316,50.223,
-50.247,50.346,50.446,50.525,50.679,51.052,51.651,52.238,52.496,52.338,52.017,51.876,52.017,52.261,52.395,52.388,
-52.349,52.352,52.268,51.644,49.712,45.754,39.791,33.041,27.493,24.695,24.770,26.526,28.475,29.789,30.454,30.791,
-30.990,31.014,30.778,30.309,29.734,29.156,28.567,27.897,27.136,26.379,25.725,25.174,24.644,24.075,23.467,22.818,
-22.109,21.358,20.646,20.029,19.471,18.899,18.308,17.753,17.238,16.709,16.155,15.650,15.243,14.866,14.427,13.955,
-13.566,13.288,13.005,12.627,12.238,11.996,11.936,11.938,11.881,11.749,11.570,11.321,10.969,10.567,10.230,10.028,
-9.918,9.798,9.603,9.320,8.970,8.589,8.216,7.869,7.529,7.163,6.760,6.328,5.885,5.457,5.084,4.788,
-4.539,4.275,3.958,3.611,3.275,2.973,2.722,2.544,2.427,2.290,2.039,1.682,1.364,1.238,1.287,1.290,
-.988,.318,-.469,-.951,-.880,-.450,-.198,-.553,-1.454,-2.424,-3.043,-3.291,-3.436,-3.675,-3.982,-4.259,
--4.516,-4.824,-5.192,-5.549,-5.844,-6.081,-6.274,-6.423,-6.562,-6.748,-6.994,-7.234,-7.410,-7.548,-7.701,-7.855,
--7.947,-7.981,-8.042,-8.186,-8.362,-8.492,-8.568,-8.638,-8.704,-8.726,-8.718,-8.767,-8.943,-9.222,-9.530,-9.823,
--10.083,-10.276,-10.386,-10.464,-10.584,-10.736,-10.837,-10.867,-10.932,-11.109,-11.295,-11.303,-11.113,-10.930,-10.952,-11.147,
--11.346,-11.486,-11.649,-11.856,-11.959,-11.821,-11.546,-11.409,-11.547,-11.806,-11.935,-11.858,-11.705,-11.613,-11.577,-11.528,
--11.451,-11.398,-11.394,-11.405,-11.398,-11.394,-11.423,-11.465,-11.468,-11.405,-11.308,-11.226,-11.174,-11.134,-11.087,-11.034,
--10.980,-10.926,-10.863,-10.785,-10.689,-10.581,-10.471,-10.377,-10.312,-10.274,-10.239,-10.173,-10.060,-9.911,-9.752,-9.605,
--9.471,-9.340,-9.199,-9.042,-8.871,-8.693,-8.520,-8.357,-8.194,-8.021,-7.851,-7.703,-7.572,-7.421,-7.219,-6.988,
--6.776,-6.609,-6.460,-6.291,-6.102,-5.924,-5.773,-5.637,-5.495,-5.341,-5.187,-5.044,-4.920,-4.814,-4.719,-4.618,
--4.506,-4.397,-4.306,-4.229,-4.147,-4.055,-3.971,-3.900,-3.823,-3.721,-3.618,-3.564,-3.580,-3.633,-3.672,-3.683,
--3.685,-3.687,-3.667,-3.605,-3.530,-3.502,-3.540,-3.597,-3.606,-3.562,-3.515,-3.500,-3.492,-3.459,-3.422,-3.433,
--3.496,-3.550,-3.548,-3.515,-3.509,-3.534,-3.539,-3.496,-3.441,-3.421,-3.437,-3.451,-3.437,-3.391,-3.319,-3.236,
--3.180,-3.181,-3.216,-3.229,-3.197,-3.158,-3.148,-3.149,-3.121,-3.064,-3.007,-2.965,-2.925,-2.899,-2.911,-2.947,
--2.939,-2.841,-2.691,-2.566,-2.494,-2.438,-2.364,-2.289,-2.246,-2.242,-2.249,-2.231,-2.163,-2.051,-1.935,-1.858,
--1.812,-1.747,-1.640,-1.523,-1.428,-1.331,-1.193,-1.047,-.958,-.922,-.848,-.682,-.487,-.362,-.317,-.279,
--.199,-.098,-.004,.074,.126,.132,.116,.152,.275,.431,.548,.629,.731,.864,.989,1.091,
-1.210,1.367,1.527,1.660,1.792,1.947,2.096,2.198,2.280,2.409,2.594,2.776,2.920,3.063,3.254,3.500,
-3.772,4.041,4.278,4.479,4.702,5.025,5.407,5.690,5.800,5.898,6.220,6.745,7.160,7.223,7.060,7.016,
-7.262,7.646,7.929,8.042,8.095,8.202,8.383,8.603,8.846,9.147,9.534,9.959,10.326,10.609,10.947,11.505,
-12.259,12.979,13.498,13.897,14.352,14.886,15.389,15.831,16.286,16.749,17.113,17.405,17.852,18.562,19.293,19.743,
-19.951,20.101,19.925,18.699,16.174,13.428,12.474,14.780,20.069,26.404,31.444,33.911,34.291,34.211,34.958,36.458,
-37.786,38.553,39.399,40.971,42.853,44.007,44.121,43.910,43.995,44.093,43.698,43.077,42.854,42.706,41.241,37.586,
-32.656,28.403,25.962,24.944,24.401,23.925,23.627,23.524,23.378,23.054,22.658,22.297,21.912,21.437,20.937,20.503,
-20.123,19.759,19.471,19.325,19.234,18.996,18.507,17.859,17.220,16.680,16.233,15.833,15.423,14.928,14.266,13.373,
-12.261,11.060,9.975,9.123,8.379,7.466,6.223,4.759,3.298,1.960,.754,-.264,-.977,-1.373,-1.619,-1.896,
--2.229,-2.543,-2.835,-3.187,-3.641,-4.133,-4.576,-4.935,-5.213,-5.402,-5.500,-5.522,-5.470,-5.351,-5.241,-5.269,
--5.469,-5.697,-5.761,-5.639,-5.460,-5.287,-4.990,-4.411,-3.585,-2.750,-2.173,-1.995,-2.182,-2.543,-2.823,-2.904,
--2.920,-3.132,-3.634,-4.265,-4.795,-5.139,-5.332,-5.415,-5.447,-5.566,-5.873,-6.230,-6.326,-6.044,-5.678,-5.703,
--6.336,-7.400,-8.557,-9.559,-10.288,-10.689,-10.773,-10.636,-10.400,-10.129,-9.856,-9.639,-9.546,-9.559,-9.569,-9.477,
--9.269,-9.003,-8.755,-8.584,-8.513,-8.488,-8.414,-8.248,-8.056,-7.925,-7.848,-7.749,-7.600,-7.462,-7.381,-7.308,
--7.155,-6.907,-6.642,-6.446,-6.346,-6.318,-6.316,-6.304,-6.277,-6.261,-6.282,-6.326,-6.351,-6.344,-6.328,-6.319,
--6.292,-6.227,-6.150,-6.105,-6.095,-6.088,-6.059,-6.005,-5.917,-5.785,-5.621,-5.454,-5.285,-5.082,-4.840,-4.604,
--4.406,-4.205,-3.945,-3.641,-3.361,-3.123,-2.874,-2.578,-2.272,-2.000,-1.728,-1.405,-1.051,-.740,-.480,-.194,
-.170,.566,.920,1.227,1.540,1.878,2.214,2.543,2.896,3.280,3.652,3.974,4.269,4.581,4.915,5.242,
-5.557,5.882,6.227,6.568,6.887,7.213,7.587,8.010,8.427,8.776,9.049,9.309,9.637,10.043,10.435,10.720,
-10.926,11.177,11.540,11.927,12.193,12.306,12.354,12.411,12.460,12.470,12.481,12.545,12.636,12.683,12.672,12.658,
-12.673,12.688,12.688,12.715,12.806,12.923,12.999,13.035,13.088,13.186,13.293,13.386,13.495,13.653,13.846,14.046,
-14.255,14.486,14.720,14.932,15.142,15.394,15.681,15.943,16.146,16.324,16.525,16.736,16.915,17.065,17.219,17.382,
-17.519,17.626,17.750,17.935,18.146,18.376,18.617,18.869,19.147,19.450,19.763,20.098,20.463,20.827,21.145,21.420,
-21.693,21.973,22.228,22.483,22.839,23.342,23.886,24.334,24.699,25.092,25.507,25.785,25.850,25.832,25.815,25.583,
-24.853,23.799,23.085,23.189,23.789,24.048,23.520,22.586,21.959,21.917,22.175,22.364,22.423,22.487,22.621,22.788,
-22.994,23.286,23.644,24.000,24.397,25.009,25.919,26.949,27.802,28.360,28.742,29.083,29.349,29.454,29.474,29.624,
-30.016,30.530,30.980,31.354,31.783,32.291,32.680,32.723,32.401,31.893,31.333,30.668,29.793,28.755,27.762,27.004,
-26.503,26.143,25.796,25.404,24.964,24.488,23.997,23.519,23.086,22.719,22.407,22.117,21.820,21.533,21.297,21.116,
-20.929,20.660,20.290,19.865,19.435,19.030,18.686,18.450,18.333,18.258,18.109,17.834,17.472,17.093,16.715,16.316,
-15.893,15.502,15.226,15.103,15.084,15.064,14.973,14.849,14.780,14.786,14.761,14.549,14.073,13.379,12.602,11.931,
-11.525,11.371,11.198,10.633,9.544,8.206,7.063,6.331,5.901,5.593,5.394,5.392,5.563,5.747,5.810,5.738,
-5.544,5.167,4.536,3.708,2.882,2.256,1.884,1.660,1.428,1.113,.766,.510,.423,.484,.607,.703,
-.689,.503,.172,-.152,-.286,-.204,-.072,-.057,-.144,-.194,-.170,-.220,-.504,-1.002,-1.502,-1.724,
--1.423,-.482,.949,2.403,3.333,3.542,3.370,3.386,3.887,4.719,5.550,6.164,6.443,6.213,5.333,4.013,
-2.854,2.356,2.358,2.105,1.018,-.669,-2.134,-2.810,-2.888,-2.964,-3.347,-3.856,-4.217,-4.415,-4.578,-4.698,
--4.644,-4.415,-4.193,-4.098,-4.018,-3.779,-3.404,-3.081,-2.923,-2.864,-2.787,-2.676,-2.569,-2.482,-2.431,-2.470,
--2.622,-2.789,-2.837,-2.755,-2.665,-2.661,-2.706,-2.744,-2.825,-3.036,-3.349,-3.633,-3.804,-3.892,-3.927,-3.880,
--3.746,-3.635,-3.675,-3.842,-3.977,-3.967,-3.856,-3.767,-3.763,-3.821,-3.881,-3.885,-3.805,-3.686,-3.637,-3.717,
--3.851,-3.923,-3.933,-4.004,-4.206,-4.460,-4.670,-4.857,-5.103,-5.394,-5.637,-5.814,-6.013,-6.280,-6.533,-6.689,
--6.806,-7.004,-7.281,-7.526,-7.693,-7.876,-8.160,-8.506,-8.833,-9.160,-9.567,-10.063,-10.581,-11.086,-11.607,-12.150,
--12.647,-13.058,-13.445,-13.899,-14.431,-14.994,-15.582,-16.212,-16.837,-17.348,-17.703,-18.002,-18.379,-18.874,-19.440,-20.037,
--20.654,-21.254,-21.785,-22.244,-22.696,-23.198,-23.751,-24.333,-24.942,-25.567,-26.150,-26.624,-26.980,-27.274,-27.580,-27.949,
--28.400,-28.909,-29.401,-29.820,-30.194,-30.608,-31.081,-31.536,-31.903,-32.217,-32.553,-32.911,-33.234,-33.523,-33.850,-34.244,
--34.617,-34.891,-35.116,-35.423,-35.853,-36.306,-36.655,-36.867,-36.997,-37.113,-37.252,-37.416,-37.577,-37.699,-37.769,-37.791,
--37.736,-37.573,-37.387,-37.438,-37.969,-38.928,-39.931,-40.584,-40.835,-40.974,-41.315,-41.905,-42.535,-42.983,-43.194,-43.289,
--43.418,-43.639,-43.896,-44.102,-44.233,-44.341,-44.479,-44.643,-44.781,-44.853,-44.858,-44.822,-44.779,-44.765,-44.791,-44.838,
--44.864,-44.852,-44.835,-44.863,-44.964,-45.136,-45.362,-45.612,-45.838,-45.988,-46.040,-46.016,-45.956,-45.876,-45.758,-45.573,
--45.324,-45.045,-44.754,-44.422,-44.005,-43.527,-43.104,-42.845,-42.723,-42.579,-42.264,-41.780,-41.252,-40.779,-40.343,-39.867,
--39.315,-38.736,-38.207,-37.771,-37.434,-37.193,-37.055,-37.007,-36.991,-36.923,-36.761,-36.535,-36.280,-35.943,-35.410,-34.646,
--33.784,-33.031,-32.491,-32.118,-31.820,-31.571,-31.405,-31.366,-31.487,-31.766,-32.108,-32.313,-32.224,-31.880,-31.476,-31.131,
--30.748,-30.133,-29.192,-27.974,-26.577,-25.100,-23.678,-22.427,-21.314,-20.160,-18.851,-17.515,-16.382,-15.512,-14.740,-13.916,
--13.090,-12.389,-11.797,-11.152,-10.374,-9.596,-9.036,-8.784,-8.737,-8.699,-8.487,-7.997,-7.247,-6.407,-5.714,-5.325,
--5.225,-5.284,-5.363,-5.349,-5.120,-4.574,-3.733,-2.797,-2.025,-1.539,-1.241,-.930,-.489,.045,.554,.956,
-1.227,1.380,1.444,1.489,1.609,1.866,2.229,2.601,2.899,3.109,3.264,3.398,3.561,3.851,4.390,5.212,
-6.187,7.076,7.694,8.022,8.179,8.302,8.477,8.744,9.129,9.635,10.221,10.826,11.401,11.917,12.344,12.658,
-12.905,13.220,13.749,14.535,15.490,16.481,17.429,18.322,19.153,19.897,20.543,21.137,21.742,22.377,22.992,23.522,
-23.980,24.469,25.088,25.812,26.481,26.945,27.228,27.524,28.010,28.679,29.361,29.922,30.388,30.903,31.568,32.349,
-33.129,33.828,34.474,35.159,35.923,36.671,37.224,37.465,37.448,37.344,37.284,37.270,37.240,37.178,37.136,37.173,
-37.308,37.546,37.909,38.428,39.102,39.879,40.685,41.477,42.290,43.195,44.210,45.229,46.097,46.768,47.369,48.059,
-48.824,49.467,49.803,49.842,49.758,49.722,49.810,50.021,50.330,50.687,51.027,51.301,51.466,51.461,51.251,50.932,
-50.727,50.793,51.017,51.111,50.934,50.640,50.456,50.382,50.240,49.998,49.887,50.089,50.385,50.291,49.586,48.621,
-48.001,47.998,48.332,48.536,48.459,48.336,48.436,48.732,48.959,48.922,48.671,48.372,48.139,48.046,48.243,48.884,
-49.883,50.815,51.213,50.985,50.503,50.255,50.453,50.962,51.515,51.905,52.056,52.034,52.028,52.193,52.452,52.515,
-52.201,51.703,51.426,51.544,51.825,51.947,51.882,51.880,52.102,52.436,52.711,52.979,53.469,54.295,55.293,56.203,
-56.917,57.496,57.964,58.198,58.061,57.621,57.145,56.828,56.550,55.968,54.845,53.278,51.606,50.164,49.164,48.711,
-48.799,49.239,49.706,49.955,49.988,49.949,49.887,49.733,49.514,49.478,49.878,50.670,51.521,52.137,52.523,52.886,
-53.343,53.782,54.002,53.910,53.588,53.178,52.771,52.385,52.011,51.662,51.363,51.105,50.847,50.575,50.338,50.209,
-50.213,50.296,50.377,50.423,50.481,50.663,51.064,51.646,52.193,52.431,52.276,51.955,51.809,51.970,52.237,52.314,
-52.145,51.971,52.001,51.973,51.026,48.104,42.769,35.843,29.268,25.054,24.040,25.479,27.751,29.552,30.517,30.955,
-31.212,31.343,31.236,30.861,30.335,29.787,29.236,28.609,27.858,27.044,26.279,25.614,25.010,24.412,23.817,23.240,
-22.643,21.962,21.212,20.500,19.899,19.362,18.793,18.185,17.618,17.129,16.666,16.179,15.699,15.284,14.922,14.548,
-14.142,13.747,13.384,13.015,12.618,12.250,11.994,11.864,11.797,11.738,11.661,11.533,11.302,10.952,10.554,10.205,
-9.943,9.731,9.518,9.270,8.969,8.612,8.226,7.859,7.535,7.219,6.861,6.453,6.027,5.621,5.250,4.919,
-4.626,4.355,4.078,3.783,3.480,3.189,2.921,2.687,2.503,2.362,2.211,1.985,1.679,1.366,1.129,.984,
-.837,.545,.021,-.638,-1.156,-1.269,-.994,-.695,-.807,-1.440,-2.274,-2.871,-3.059,-3.029,-3.087,-3.389,
--3.876,-4.392,-4.817,-5.130,-5.403,-5.723,-6.095,-6.431,-6.644,-6.756,-6.871,-7.043,-7.222,-7.346,-7.424,-7.513,
--7.628,-7.735,-7.829,-7.956,-8.141,-8.347,-8.517,-8.644,-8.753,-8.847,-8.912,-8.961,-9.034,-9.154,-9.303,-9.474,
--9.689,-9.938,-10.156,-10.289,-10.382,-10.520,-10.708,-10.859,-10.930,-11.002,-11.156,-11.318,-11.320,-11.124,-10.911,-10.895,
--11.104,-11.394,-11.642,-11.824,-11.896,-11.736,-11.305,-10.822,-10.647,-10.950,-11.525,-11.992,-12.148,-12.074,-11.955,-11.867,
--11.780,-11.672,-11.568,-11.491,-11.428,-11.369,-11.342,-11.365,-11.402,-11.391,-11.317,-11.228,-11.167,-11.126,-11.070,-10.993,
--10.927,-10.898,-10.891,-10.864,-10.789,-10.671,-10.540,-10.431,-10.358,-10.313,-10.273,-10.218,-10.149,-10.068,-9.974,-9.860,
--9.726,-9.586,-9.450,-9.306,-9.135,-8.933,-8.722,-8.530,-8.365,-8.213,-8.065,-7.931,-7.820,-7.715,-7.573,-7.373,
--7.140,-6.925,-6.750,-6.594,-6.431,-6.259,-6.101,-5.961,-5.825,-5.675,-5.513,-5.354,-5.205,-5.069,-4.951,-4.850,
--4.754,-4.653,-4.550,-4.460,-4.383,-4.299,-4.197,-4.091,-4.007,-3.942,-3.878,-3.818,-3.796,-3.829,-3.881,-3.899,
--3.873,-3.844,-3.840,-3.828,-3.765,-3.673,-3.631,-3.671,-3.732,-3.735,-3.683,-3.648,-3.661,-3.671,-3.627,-3.563,
--3.553,-3.606,-3.651,-3.641,-3.610,-3.614,-3.641,-3.633,-3.575,-3.517,-3.500,-3.508,-3.500,-3.468,-3.422,-3.361,
--3.284,-3.217,-3.194,-3.204,-3.200,-3.165,-3.126,-3.111,-3.107,-3.087,-3.050,-3.006,-2.949,-2.873,-2.810,-2.801,
--2.823,-2.800,-2.691,-2.542,-2.429,-2.366,-2.310,-2.230,-2.147,-2.098,-2.089,-2.095,-2.079,-2.012,-1.898,-1.784,
--1.712,-1.665,-1.587,-1.465,-1.346,-1.262,-1.173,-1.031,-.877,-.799,-.798,-.766,-.623,-.415,-.246,-.155,
--.102,-.044,.023,.108,.212,.302,.330,.313,.335,.439,.570,.662,.740,.864,1.025,1.156,
-1.242,1.345,1.498,1.653,1.768,1.878,2.035,2.210,2.335,2.416,2.522,2.679,2.837,2.966,3.116,3.337,
-3.598,3.826,4.007,4.196,4.448,4.767,5.106,5.403,5.628,5.844,6.171,6.628,7.024,7.129,6.968,6.865,
-7.101,7.593,7.992,8.089,8.015,8.033,8.232,8.498,8.719,8.928,9.236,9.674,10.140,10.506,10.776,11.115,
-11.684,12.443,13.172,13.709,14.100,14.496,14.951,15.417,15.874,16.353,16.830,17.236,17.622,18.151,18.847,19.476,
-19.825,19.983,20.082,19.792,18.414,15.806,13.138,12.425,15.033,20.497,26.700,31.297,33.283,33.495,33.648,34.737,
-36.310,37.378,37.825,38.575,40.278,42.328,43.577,43.783,43.769,44.138,44.472,44.151,43.434,43.025,42.686,41.060,
-37.253,32.178,27.851,25.496,24.723,24.448,24.098,23.756,23.543,23.348,23.070,22.788,22.578,22.360,22.013,21.554,
-21.079,20.630,20.192,19.791,19.473,19.206,18.874,18.397,17.817,17.250,16.772,16.357,15.907,15.334,14.632,13.853,
-13.017,12.082,11.037,9.995,9.090,8.287,7.372,6.175,4.753,3.315,2.009,.875,-.060,-.745,-1.197,-1.517,
--1.792,-2.020,-2.188,-2.366,-2.656,-3.070,-3.536,-3.990,-4.412,-4.763,-4.979,-5.042,-5.005,-4.925,-4.825,-4.755,
--4.808,-5.009,-5.227,-5.294,-5.195,-5.042,-4.872,-4.558,-3.986,-3.247,-2.589,-2.217,-2.179,-2.408,-2.760,-3.057,
--3.181,-3.189,-3.276,-3.575,-4.054,-4.589,-5.081,-5.454,-5.636,-5.644,-5.630,-5.728,-5.855,-5.816,-5.642,-5.700,
--6.358,-7.565,-8.887,-9.927,-10.598,-11.004,-11.190,-11.115,-10.804,-10.400,-10.056,-9.832,-9.718,-9.681,-9.673,-9.624,
--9.479,-9.240,-8.958,-8.699,-8.506,-8.375,-8.255,-8.089,-7.885,-7.712,-7.624,-7.586,-7.532,-7.456,-7.405,-7.387,
--7.332,-7.170,-6.922,-6.681,-6.520,-6.445,-6.419,-6.406,-6.383,-6.352,-6.332,-6.334,-6.340,-6.323,-6.284,-6.246,
--6.211,-6.160,-6.088,-6.022,-5.978,-5.935,-5.873,-5.810,-5.764,-5.705,-5.583,-5.400,-5.200,-4.997,-4.762,-4.496,
--4.260,-4.090,-3.922,-3.667,-3.334,-3.011,-2.744,-2.487,-2.201,-1.917,-1.672,-1.426,-1.120,-.776,-.471,-.215,
-.068,.424,.804,1.146,1.465,1.814,2.191,2.546,2.868,3.201,3.561,3.898,4.179,4.440,4.739,5.073,
-5.402,5.718,6.049,6.399,6.730,7.021,7.316,7.676,8.105,8.542,8.920,9.229,9.528,9.894,10.331,10.745,
-11.039,11.228,11.436,11.740,12.067,12.282,12.359,12.395,12.462,12.522,12.525,12.512,12.558,12.649,12.698,12.670,
-12.622,12.615,12.637,12.663,12.716,12.822,12.942,13.021,13.074,13.172,13.334,13.493,13.602,13.696,13.835,14.018,
-14.203,14.383,14.585,14.806,15.015,15.215,15.450,15.732,16.005,16.217,16.387,16.568,16.768,16.958,17.128,17.305,
-17.493,17.662,17.803,17.951,18.146,18.232,18.487,18.746,19.012,19.306,19.622,19.944,20.280,20.645,21.010,21.331,
-21.615,21.918,22.247,22.557,22.852,23.233,23.759,24.326,24.770,25.090,25.423,25.803,26.070,26.099,25.977,25.792,
-25.379,24.520,23.451,22.883,23.270,24.164,24.568,23.965,22.830,22.035,21.936,22.206,22.401,22.447,22.514,22.682,
-22.895,23.144,23.496,23.946,24.390,24.800,25.313,26.058,26.955,27.781,28.417,28.913,29.326,29.593,29.662,29.660,
-29.816,30.201,30.653,30.999,31.290,31.711,32.274,32.714,32.738,32.338,31.767,31.225,30.656,29.884,28.896,27.905,
-27.139,26.641,26.292,25.972,25.650,25.328,24.976,24.565,24.134,23.767,23.498,23.258,22.960,22.602,22.267,22.021,
-21.827,21.591,21.272,20.900,20.512,20.094,19.630,19.171,18.824,18.647,18.585,18.510,18.313,17.962,17.505,17.025,
-16.594,16.239,15.963,15.792,15.775,15.910,16.093,16.204,16.234,16.262,16.286,16.134,15.598,14.651,13.496,12.423,
-11.662,11.323,11.327,11.367,11.041,10.166,8.968,7.881,7.143,6.664,6.281,6.018,6.012,6.253,6.529,6.644,
-6.589,6.429,6.120,5.524,4.622,3.635,2.874,2.479,2.319,2.146,1.841,1.497,1.297,1.310,1.438,1.533,
-1.519,1.389,1.146,.814,.489,.305,.307,.393,.424,.369,.298,.247,.156,-.065,-.458,-.961,
--1.362,-1.306,-.499,.950,2.451,3.356,3.542,3.499,3.782,4.476,5.263,5.902,6.418,6.789,6.695,5.839,
-4.471,3.347,2.992,3.095,2.798,1.616,-.058,-1.403,-2.017,-2.199,-2.458,-2.954,-3.480,-3.842,-4.057,-4.193,
--4.188,-3.969,-3.643,-3.426,-3.383,-3.348,-3.150,-2.832,-2.567,-2.435,-2.358,-2.248,-2.104,-1.971,-1.875,-1.848,
--1.938,-2.120,-2.249,-2.187,-1.972,-1.801,-1.806,-1.939,-2.091,-2.252,-2.479,-2.771,-3.050,-3.254,-3.378,-3.413,
--3.333,-3.190,-3.132,-3.248,-3.437,-3.494,-3.357,-3.167,-3.096,-3.164,-3.268,-3.318,-3.304,-3.257,-3.216,-3.222,
--3.286,-3.364,-3.405,-3.431,-3.519,-3.696,-3.903,-4.085,-4.271,-4.509,-4.772,-4.997,-5.196,-5.438,-5.724,-5.955,
--6.079,-6.181,-6.371,-6.633,-6.866,-7.040,-7.237,-7.512,-7.820,-8.108,-8.416,-8.811,-9.289,-9.791,-10.301,-10.841,
--11.378,-11.829,-12.186,-12.561,-13.059,-13.665,-14.289,-14.894,-15.490,-16.033,-16.436,-16.700,-16.960,-17.363,-17.926,-18.561,
--19.190,-19.786,-20.337,-20.827,-21.279,-21.753,-22.285,-22.868,-23.479,-24.110,-24.730,-25.269,-25.684,-26.006,-26.318,-26.678,
--27.106,-27.599,-28.130,-28.627,-29.036,-29.389,-29.784,-30.251,-30.706,-31.063,-31.347,-31.644,-31.978,-32.299,-32.599,-32.938,
--33.344,-33.749,-34.078,-34.366,-34.713,-35.148,-35.585,-35.923,-36.149,-36.319,-36.481,-36.650,-36.818,-36.969,-37.089,-37.170,
--37.196,-37.138,-36.999,-36.901,-37.079,-37.684,-38.588,-39.434,-39.941,-40.144,-40.323,-40.713,-41.312,-41.939,-42.416,-42.690,
--42.834,-42.968,-43.164,-43.401,-43.612,-43.770,-43.913,-44.077,-44.238,-44.338,-44.359,-44.342,-44.333,-44.342,-44.366,-44.412,
--44.478,-44.542,-44.578,-44.602,-44.657,-44.776,-44.947,-45.139,-45.329,-45.499,-45.626,-45.691,-45.695,-45.657,-45.585,-45.466,
--45.281,-45.031,-44.742,-44.435,-44.102,-43.721,-43.307,-42.933,-42.671,-42.513,-42.346,-42.045,-41.586,-41.074,-40.637,-40.314,
--40.016,-39.623,-39.094,-38.508,-37.990,-37.612,-37.376,-37.255,-37.228,-37.252,-37.226,-37.060,-36.756,-36.403,-36.048,-35.621,
--35.022,-34.261,-33.475,-32.800,-32.275,-31.877,-31.592,-31.438,-31.436,-31.597,-31.905,-32.269,-32.513,-32.491,-32.228,-31.873,
--31.497,-30.970,-30.107,-28.887,-27.473,-26.048,-24.690,-23.422,-22.268,-21.208,-20.151,-19.029,-17.916,-16.952,-16.161,-15.413,
--14.598,-13.761,-13.014,-12.354,-11.664,-10.886,-10.128,-9.568,-9.285,-9.211,-9.177,-8.984,-8.483,-7.683,-6.797,-6.116,
--5.780,-5.699,-5.683,-5.620,-5.488,-5.240,-4.775,-4.064,-3.250,-2.560,-2.118,-1.862,-1.646,-1.385,-1.096,-.831,
--.610,-.421,-.250,-.087,.095,.350,.732,1.245,1.811,2.303,2.610,2.720,2.727,2.791,3.062,3.605,
-4.369,5.194,5.900,6.382,6.666,6.857,7.046,7.278,7.573,7.952,8.409,8.908,9.406,9.880,10.303,10.599,
-10.704,10.683,10.769,11.216,12.099,13.272,14.517,15.697,16.775,17.726,18.502,19.086,19.551,20.027,20.592,21.228,
-21.873,22.510,23.197,23.986,24.819,25.535,26.014,26.304,26.592,27.035,27.629,28.250,28.803,29.297,29.806,30.399,
-31.112,31.931,32.783,33.573,34.263,34.896,35.514,36.050,36.366,36.402,36.262,36.118,36.050,36.014,35.960,35.918,
-35.964,36.136,36.410,36.771,37.260,37.929,38.754,39.614,40.405,41.163,42.044,43.135,44.301,45.282,45.968,46.524,
-47.192,47.990,48.683,49.047,49.104,49.057,49.063,49.145,49.280,49.496,49.827,50.250,50.683,51.010,51.105,50.901,
-50.519,50.249,50.296,50.519,50.552,50.219,49.751,49.490,49.463,49.392,49.143,48.955,49.114,49.464,49.474,48.829,
-47.858,47.246,47.348,47.884,48.296,48.325,48.174,48.160,48.325,48.438,48.309,48.010,47.761,47.683,47.742,47.911,
-48.283,48.937,49.729,50.315,50.438,50.179,49.894,49.919,50.334,50.944,51.444,51.627,51.532,51.415,51.525,51.842,
-52.071,51.948,51.534,51.167,51.114,51.334,51.596,51.756,51.859,52.001,52.190,52.395,52.651,53.063,53.688,54.444,
-55.178,55.794,56.322,56.832,57.301,57.577,57.516,57.139,56.635,56.185,55.790,55.284,54.490,53.358,52.003,50.659,
-49.591,48.963,48.726,48.676,48.666,48.744,49.035,49.524,50.030,50.436,50.844,51.430,52.183,52.874,53.305,53.511,
-53.668,53.856,53.969,53.865,53.540,53.133,52.776,52.487,52.192,51.839,51.464,51.139,50.888,50.663,50.426,50.209,
-50.086,50.081,50.145,50.217,50.293,50.421,50.659,51.043,51.553,52.053,52.330,52.256,51.969,51.793,51.920,52.175,
-52.202,51.911,51.627,51.638,51.525,50.071,46.076,39.539,32.106,26.241,23.666,24.335,26.729,29.103,30.567,31.209,
-31.491,31.656,31.647,31.377,30.906,30.381,29.869,29.315,28.638,27.839,27.009,26.240,25.552,24.904,24.271,23.670,
-23.109,22.531,21.870,21.140,20.433,19.813,19.242,18.649,18.038,17.483,17.023,16.608,16.170,15.710,15.286,14.931,
-14.609,14.260,13.854,13.405,12.961,12.571,12.261,12.015,11.808,11.650,11.570,11.540,11.460,11.232,10.869,10.480,
-10.156,9.897,9.648,9.368,9.051,8.695,8.306,7.912,7.554,7.240,6.932,6.597,6.237,5.873,5.505,5.126,
-4.751,4.413,4.123,3.854,3.573,3.279,3.002,2.766,2.579,2.429,2.289,2.126,1.914,1.649,1.340,1.007,
-.679,.382,.093,-.268,-.750,-1.253,-1.554,-1.521,-1.301,-1.242,-1.571,-2.163,-2.647,-2.766,-2.627,-2.601,
--2.992,-3.766,-4.580,-5.075,-5.182,-5.157,-5.329,-5.785,-6.325,-6.686,-6.797,-6.795,-6.838,-6.950,-7.063,-7.134,
--7.190,-7.274,-7.410,-7.598,-7.835,-8.101,-8.361,-8.585,-8.764,-8.897,-8.989,-9.062,-9.154,-9.279,-9.403,-9.487,
--9.551,-9.667,-9.858,-10.067,-10.224,-10.342,-10.483,-10.662,-10.819,-10.918,-11.016,-11.170,-11.323,-11.340,-11.183,-10.997,
--10.976,-11.175,-11.481,-11.748,-11.890,-11.847,-11.551,-11.026,-10.497,-10.299,-10.606,-11.255,-11.882,-12.227,-12.288,-12.215,
--12.124,-12.037,-11.936,-11.817,-11.684,-11.545,-11.424,-11.357,-11.349,-11.347,-11.299,-11.209,-11.129,-11.083,-11.035,-10.951,
--10.852,-10.796,-10.812,-10.862,-10.879,-10.821,-10.696,-10.545,-10.419,-10.345,-10.307,-10.263,-10.188,-10.098,-10.020,-9.954,
--9.874,-9.763,-9.632,-9.500,-9.359,-9.187,-8.983,-8.773,-8.584,-8.417,-8.261,-8.117,-7.996,-7.896,-7.789,-7.644,
--7.459,-7.263,-7.081,-6.914,-6.749,-6.580,-6.419,-6.275,-6.140,-5.994,-5.835,-5.675,-5.525,-5.380,-5.235,-5.095,
--4.975,-4.876,-4.784,-4.692,-4.608,-4.531,-4.442,-4.328,-4.206,-4.116,-4.073,-4.059,-4.053,-4.063,-4.097,-4.126,
--4.101,-4.027,-3.963,-3.950,-3.948,-3.894,-3.804,-3.762,-3.804,-3.862,-3.848,-3.773,-3.731,-3.764,-3.808,-3.789,
--3.731,-3.708,-3.734,-3.750,-3.717,-3.676,-3.676,-3.696,-3.682,-3.628,-3.583,-3.571,-3.564,-3.527,-3.469,-3.414,
--3.358,-3.291,-3.227,-3.193,-3.182,-3.162,-3.121,-3.083,-3.066,-3.060,-3.046,-3.022,-2.977,-2.894,-2.783,-2.699,
--2.689,-2.716,-2.697,-2.596,-2.466,-2.368,-2.303,-2.231,-2.143,-2.068,-2.020,-1.991,-1.964,-1.928,-1.866,-1.771,
--1.671,-1.598,-1.539,-1.438,-1.280,-1.119,-1.006,-.914,-.795,-.670,-.604,-.597,-.564,-.441,-.266,-.119,
--.024,.041,.093,.137,.201,.303,.400,.428,.404,.427,.544,.691,.792,.870,.998,1.166,
-1.300,1.386,1.490,1.650,1.807,1.904,1.979,2.101,2.264,2.417,2.557,2.729,2.926,3.084,3.199,3.353,
-3.593,3.828,3.949,3.998,4.145,4.483,4.914,5.273,5.518,5.763,6.137,6.622,7.019,7.109,6.877,6.612,
-6.690,7.210,7.863,8.235,8.210,8.047,8.065,8.329,8.672,8.947,9.176,9.470,9.873,10.314,10.698,11.023,
-11.404,11.955,12.644,13.308,13.812,14.177,14.521,14.919,15.370,15.866,16.403,16.930,17.386,17.810,18.316,18.902,
-19.387,19.636,19.755,19.817,19.450,17.996,15.396,12.874,12.422,15.301,20.856,26.807,30.851,32.272,32.230,32.490,
-33.785,35.407,36.378,36.784,37.657,39.557,41.756,43.103,43.422,43.539,44.019,44.454,44.245,43.584,43.036,42.341,
-40.336,36.383,31.476,27.492,25.459,24.883,24.679,24.316,23.921,23.677,23.506,23.298,23.104,22.998,22.906,22.681,
-22.279,21.769,21.216,20.641,20.069,19.549,19.107,18.708,18.297,17.848,17.382,16.933,16.489,15.971,15.303,14.495,
-13.644,12.807,11.933,10.961,9.944,9.007,8.161,7.244,6.102,4.766,3.415,2.210,1.209,.416,-.189,-.666,
--1.080,-1.440,-1.702,-1.873,-2.039,-2.270,-2.539,-2.802,-3.094,-3.474,-3.889,-4.184,-4.274,-4.231,-4.175,-4.162,
--4.199,-4.319,-4.527,-4.728,-4.792,-4.689,-4.482,-4.199,-3.789,-3.251,-2.736,-2.425,-2.368,-2.491,-2.716,-3.006,
--3.303,-3.518,-3.625,-3.707,-3.873,-4.169,-4.583,-5.064,-5.506,-5.772,-5.819,-5.769,-5.762,-5.787,-5.760,-5.799,
--6.249,-7.324,-8.786,-10.099,-10.917,-11.307,-11.499,-11.562,-11.396,-10.977,-10.461,-10.051,-9.824,-9.732,-9.692,-9.647,
--9.557,-9.400,-9.184,-8.942,-8.710,-8.506,-8.325,-8.145,-7.960,-7.794,-7.682,-7.622,-7.574,-7.511,-7.458,-7.442,
--7.431,-7.351,-7.171,-6.942,-6.741,-6.599,-6.504,-6.442,-6.407,-6.385,-6.363,-6.336,-6.309,-6.275,-6.229,-6.180,
--6.143,-6.105,-6.044,-5.967,-5.902,-5.846,-5.760,-5.638,-5.536,-5.496,-5.468,-5.360,-5.159,-4.930,-4.715,-4.484,
--4.223,-3.982,-3.804,-3.636,-3.387,-3.059,-2.739,-2.473,-2.218,-1.929,-1.641,-1.395,-1.161,-.876,-.552,-.249,
-.023,.324,.678,1.036,1.357,1.681,2.063,2.473,2.838,3.148,3.459,3.794,4.101,4.350,4.592,4.891,
-5.236,5.573,5.893,6.230,6.587,6.918,7.206,7.501,7.866,8.303,8.761,9.190,9.587,9.975,10.381,10.795,
-11.160,11.407,11.536,11.634,11.782,11.963,12.104,12.190,12.281,12.400,12.489,12.503,12.498,12.558,12.667,12.726,
-12.695,12.638,12.630,12.668,12.716,12.779,12.881,12.997,13.087,13.170,13.303,13.487,13.644,13.731,13.805,13.941,
-14.132,14.321,14.498,14.694,14.912,15.115,15.299,15.511,15.771,16.017,16.184,16.298,16.437,16.628,16.831,17.016,
-17.206,17.416,17.625,17.813,18.006,18.232,18.312,18.608,18.908,19.211,19.530,19.852,20.155,20.454,20.784,21.137,
-21.468,21.769,22.097,22.477,22.860,23.220,23.624,24.140,24.692,25.135,25.453,25.771,26.127,26.362,26.331,26.101,
-25.791,25.301,24.445,23.409,22.818,23.101,23.882,24.266,23.779,22.838,22.212,22.179,22.410,22.524,22.516,22.581,
-22.775,23.011,23.286,23.691,24.222,24.731,25.133,25.553,26.162,26.932,27.670,28.245,28.700,29.098,29.406,29.581,
-29.714,29.974,30.388,30.804,31.101,31.379,31.827,32.413,32.820,32.736,32.189,31.502,30.928,30.407,29.715,28.800,
-27.878,27.193,26.771,26.457,26.140,25.848,25.631,25.433,25.155,24.804,24.490,24.266,24.038,23.686,23.234,22.836,
-22.583,22.404,22.174,21.867,21.541,21.213,20.817,20.311,19.775,19.348,19.097,18.969,18.853,18.649,18.287,17.773,
-17.209,16.748,16.471,16.353,16.352,16.486,16.764,17.079,17.272,17.301,17.265,17.197,16.904,16.132,14.854,13.362,
-12.055,11.214,10.930,11.104,11.417,11.426,10.852,9.835,8.798,8.037,7.519,7.088,6.763,6.706,6.939,7.255,
-7.427,7.423,7.311,7.040,6.439,5.478,4.419,3.640,3.289,3.170,2.977,2.610,2.238,2.084,2.174,2.329,
-2.354,2.198,1.927,1.617,1.317,1.077,.951,.930,.933,.884,.780,.667,.569,.475,.339,.076,
--.374,-.862,-.960,-.248,1.189,2.682,3.542,3.742,3.879,4.454,5.339,6.063,6.456,6.757,7.082,7.095,
-6.416,5.239,4.265,3.932,3.894,3.402,2.157,.603,-.597,-1.224,-1.573,-1.988,-2.506,-2.962,-3.263,-3.449,
--3.529,-3.432,-3.150,-2.838,-2.679,-2.681,-2.679,-2.547,-2.329,-2.144,-2.028,-1.925,-1.790,-1.640,-1.507,-1.411,
--1.392,-1.488,-1.642,-1.690,-1.520,-1.221,-1.020,-1.047,-1.236,-1.450,-1.651,-1.884,-2.163,-2.436,-2.649,-2.780,
--2.811,-2.745,-2.660,-2.686,-2.849,-2.994,-2.945,-2.714,-2.501,-2.458,-2.542,-2.610,-2.604,-2.585,-2.614,-2.686,
--2.769,-2.856,-2.947,-3.029,-3.098,-3.172,-3.266,-3.373,-3.490,-3.643,-3.849,-4.083,-4.313,-4.552,-4.819,-5.075,
--5.254,-5.363,-5.501,-5.736,-6.019,-6.259,-6.448,-6.651,-6.890,-7.128,-7.362,-7.660,-8.069,-8.545,-9.025,-9.521,
--10.062,-10.596,-11.026,-11.357,-11.731,-12.266,-12.921,-13.565,-14.130,-14.628,-15.058,-15.392,-15.661,-15.988,-16.475,-17.103,
--17.769,-18.391,-18.950,-19.448,-19.900,-20.350,-20.851,-21.417,-22.025,-22.653,-23.287,-23.884,-24.377,-24.753,-25.083,-25.452,
--25.879,-26.337,-26.818,-27.325,-27.822,-28.252,-28.624,-29.013,-29.456,-29.888,-30.228,-30.496,-30.775,-31.100,-31.427,-31.734,
--32.064,-32.453,-32.867,-33.248,-33.608,-34.004,-34.442,-34.858,-35.192,-35.453,-35.687,-35.911,-36.114,-36.284,-36.419,-36.515,
--36.564,-36.550,-36.466,-36.357,-36.371,-36.695,-37.378,-38.229,-38.929,-39.311,-39.488,-39.714,-40.150,-40.764,-41.410,-41.942,
--42.280,-42.441,-42.534,-42.682,-42.920,-43.175,-43.376,-43.529,-43.679,-43.822,-43.902,-43.902,-43.872,-43.875,-43.922,-43.989,
--44.063,-44.151,-44.244,-44.326,-44.405,-44.513,-44.660,-44.814,-44.935,-45.022,-45.108,-45.211,-45.304,-45.345,-45.313,-45.216,
--45.073,-44.893,-44.677,-44.423,-44.134,-43.816,-43.475,-43.125,-42.788,-42.491,-42.239,-42.000,-41.713,-41.342,-40.924,-40.550,
--40.284,-40.081,-39.824,-39.436,-38.955,-38.476,-38.044,-37.633,-37.250,-36.991,-36.939,-37.035,-37.099,-36.993,-36.729,-36.377,
--35.930,-35.317,-34.535,-33.705,-32.969,-32.381,-31.936,-31.638,-31.521,-31.593,-31.822,-32.151,-32.491,-32.715,-32.716,-32.499,
--32.156,-31.710,-31.027,-29.955,-28.531,-26.985,-25.540,-24.256,-23.084,-22.002,-21.021,-20.115,-19.231,-18.367,-17.580,-16.881,
--16.188,-15.415,-14.574,-13.745,-12.968,-12.214,-11.469,-10.785,-10.246,-9.903,-9.745,-9.685,-9.548,-9.147,-8.443,-7.627,
--6.975,-6.595,-6.361,-6.094,-5.756,-5.425,-5.119,-4.748,-4.241,-3.662,-3.153,-2.789,-2.539,-2.344,-2.189,-2.085,
--2.026,-1.982,-1.916,-1.798,-1.605,-1.329,-.975,-.528,.048,.738,1.417,1.893,2.063,2.024,2.013,2.240,
-2.756,3.450,4.148,4.715,5.107,5.368,5.569,5.762,5.965,6.190,6.445,6.718,6.976,7.214,7.465,7.736,
-7.958,8.042,8.033,8.145,8.604,9.460,10.565,11.741,12.899,14.014,15.028,15.851,16.460,16.951,17.472,18.116,
-18.882,19.730,20.640,21.618,22.640,23.612,24.405,24.956,25.335,25.687,26.115,26.621,27.157,27.695,28.228,28.747,
-29.278,29.912,30.732,31.689,32.596,33.304,33.846,34.354,34.851,35.191,35.241,35.053,34.821,34.679,34.620,34.591,
-34.604,34.720,34.954,35.258,35.614,36.093,36.785,37.675,38.606,39.426,40.152,40.969,42.013,43.183,44.220,44.989,
-45.631,46.366,47.200,47.902,48.278,48.383,48.417,48.491,48.577,48.655,48.802,49.112,49.579,50.100,50.529,50.712,
-50.564,50.192,49.892,49.886,50.046,49.999,49.571,49.021,48.721,48.685,48.581,48.221,47.856,47.832,48.067,48.065,
-47.509,46.693,46.249,46.501,47.170,47.721,47.887,47.813,47.770,47.823,47.822,47.643,47.364,47.184,47.206,47.359,
-47.535,47.745,48.095,48.603,49.099,49.363,49.347,49.249,49.342,49.759,50.386,50.949,51.207,51.123,50.899,50.820,
-51.009,51.318,51.470,51.321,50.985,50.708,50.662,50.837,51.116,51.383,51.595,51.766,51.930,52.131,52.429,52.894,
-53.547,54.299,54.984,55.507,55.930,56.369,56.797,57.013,56.853,56.399,55.927,55.631,55.435,55.084,54.385,53.364,
-52.228,51.224,50.501,50.054,49.791,49.672,49.770,50.174,50.826,51.531,52.127,52.615,53.080,53.522,53.834,53.951,
-53.939,53.912,53.886,53.775,53.521,53.175,52.845,52.581,52.336,52.031,51.648,51.250,50.922,50.690,50.500,50.295,
-50.084,49.937,49.899,49.955,50.066,50.222,50.428,50.692,51.027,51.448,51.900,52.205,52.198,51.947,51.761,51.873,
-52.121,52.109,51.720,51.319,51.195,50.767,48.607,43.609,36.318,29.036,24.377,23.482,25.431,28.232,30.339,31.383,
-31.788,31.988,32.059,31.896,31.494,30.983,30.469,29.940,29.322,28.587,27.781,26.977,26.221,25.517,24.852,24.225,
-23.636,23.065,22.467,21.808,21.100,20.394,19.724,19.088,18.473,17.890,17.366,16.906,16.485,16.068,15.651,15.260,
-14.917,14.606,14.268,13.846,13.351,12.872,12.498,12.222,11.967,11.694,11.473,11.392,11.415,11.379,11.158,10.784,
-10.395,10.085,9.835,9.573,9.261,8.898,8.499,8.085,7.690,7.336,7.011,6.690,6.379,6.092,5.808,5.470,
-5.061,4.642,4.300,4.049,3.816,3.524,3.173,2.833,2.571,2.400,2.284,2.170,2.025,1.841,1.614,1.322,
-.945,.515,.116,-.189,-.447,-.775,-1.205,-1.601,-1.783,-1.739,-1.684,-1.868,-2.303,-2.730,-2.874,-2.753,
--2.720,-3.142,-4.024,-4.929,-5.347,-5.155,-4.740,-4.643,-5.076,-5.790,-6.363,-6.587,-6.577,-6.570,-6.684,-6.867,
--7.019,-7.109,-7.195,-7.351,-7.597,-7.887,-8.160,-8.393,-8.605,-8.805,-8.967,-9.068,-9.137,-9.235,-9.383,-9.535,
--9.634,-9.696,-9.783,-9.927,-10.089,-10.223,-10.335,-10.469,-10.636,-10.804,-10.950,-11.096,-11.263,-11.407,-11.448,-11.370,
--11.266,-11.270,-11.423,-11.647,-11.826,-11.897,-11.847,-11.671,-11.382,-11.078,-10.934,-11.083,-11.481,-11.926,-12.218,-12.304,
--12.262,-12.201,-12.167,-12.138,-12.070,-11.939,-11.764,-11.601,-11.499,-11.451,-11.400,-11.308,-11.199,-11.120,-11.068,-10.995,
--10.880,-10.768,-10.727,-10.764,-10.828,-10.854,-10.810,-10.699,-10.552,-10.416,-10.332,-10.298,-10.262,-10.183,-10.073,-9.975,
--9.903,-9.829,-9.729,-9.608,-9.483,-9.347,-9.184,-9.002,-8.826,-8.665,-8.503,-8.333,-8.174,-8.045,-7.932,-7.800,
--7.636,-7.464,-7.312,-7.176,-7.030,-6.863,-6.691,-6.536,-6.397,-6.255,-6.097,-5.930,-5.777,-5.643,-5.513,-5.370,
--5.221,-5.087,-4.982,-4.895,-4.811,-4.724,-4.633,-4.532,-4.414,-4.298,-4.224,-4.207,-4.226,-4.246,-4.264,-4.283,
--4.285,-4.231,-4.132,-4.049,-4.026,-4.027,-3.986,-3.909,-3.879,-3.932,-3.996,-3.976,-3.883,-3.820,-3.844,-3.900,
--3.908,-3.872,-3.850,-3.857,-3.846,-3.796,-3.746,-3.736,-3.746,-3.729,-3.684,-3.650,-3.638,-3.615,-3.557,-3.479,
--3.406,-3.339,-3.271,-3.215,-3.186,-3.170,-3.142,-3.099,-3.060,-3.033,-3.011,-2.987,-2.962,-2.913,-2.814,-2.690,
--2.612,-2.620,-2.655,-2.627,-2.519,-2.397,-2.308,-2.235,-2.144,-2.046,-1.974,-1.926,-1.875,-1.819,-1.771,-1.717,
--1.630,-1.521,-1.435,-1.376,-1.285,-1.118,-.917,-.754,-.650,-.570,-.499,-.449,-.402,-.314,-.177,-.042,
-.044,.101,.164,.227,.273,.329,.424,.517,.536,.496,.509,.638,.816,.948,1.038,1.156,
-1.309,1.436,1.524,1.636,1.805,1.975,2.082,2.149,2.233,2.345,2.476,2.655,2.908,3.170,3.337,3.430,
-3.594,3.879,4.131,4.180,4.104,4.176,4.528,4.990,5.319,5.512,5.790,6.286,6.832,7.105,6.965,6.623,
-6.481,6.778,7.392,7.952,8.182,8.122,8.038,8.152,8.469,8.851,9.183,9.456,9.725,10.047,10.433,10.855,
-11.284,11.736,12.258,12.846,13.412,13.855,14.172,14.452,14.790,15.229,15.779,16.414,17.043,17.562,17.967,18.357,
-18.777,19.130,19.327,19.433,19.466,19.063,17.633,15.160,12.851,12.645,15.718,21.280,26.931,30.412,31.262,30.903,
-31.138,32.526,34.222,35.281,35.870,36.971,39.036,41.332,42.799,43.254,43.394,43.753,44.103,44.008,43.487,42.727,
-41.372,38.688,34.619,30.308,27.207,25.789,25.352,24.994,24.465,24.028,23.843,23.763,23.627,23.479,23.415,23.389,
-23.243,22.879,22.326,21.662,20.954,20.259,19.632,19.113,18.701,18.348,17.983,17.557,17.072,16.552,15.979,15.297,
-14.492,13.621,12.739,11.830,10.856,9.852,8.911,8.042,7.134,6.072,4.873,3.673,2.612,1.759,1.113,.615,
-.169,-.289,-.735,-1.115,-1.438,-1.754,-2.031,-2.159,-2.119,-2.090,-2.279,-2.670,-3.032,-3.190,-3.191,-3.191,
--3.262,-3.381,-3.542,-3.767,-4.024,-4.199,-4.180,-3.929,-3.478,-2.926,-2.454,-2.243,-2.333,-2.575,-2.795,-2.974,
--3.211,-3.544,-3.887,-4.141,-4.309,-4.465,-4.678,-4.985,-5.387,-5.810,-6.121,-6.247,-6.260,-6.283,-6.339,-6.412,
--6.630,-7.255,-8.384,-9.728,-10.813,-11.410,-11.653,-11.763,-11.753,-11.494,-10.975,-10.395,-9.979,-9.786,-9.721,-9.671,
--9.588,-9.465,-9.303,-9.108,-8.896,-8.690,-8.502,-8.334,-8.180,-8.043,-7.930,-7.843,-7.756,-7.646,-7.529,-7.447,
--7.411,-7.368,-7.261,-7.092,-6.915,-6.764,-6.626,-6.495,-6.393,-6.345,-6.330,-6.307,-6.260,-6.200,-6.139,-6.083,
--6.044,-6.025,-5.997,-5.930,-5.834,-5.751,-5.679,-5.572,-5.423,-5.301,-5.257,-5.234,-5.124,-4.911,-4.680,-4.491,
--4.305,-4.070,-3.815,-3.593,-3.384,-3.124,-2.812,-2.518,-2.273,-2.022,-1.718,-1.399,-1.122,-.874,-.599,-.293,
-.004,.289,.606,.959,1.294,1.588,1.902,2.288,2.704,3.067,3.372,3.685,4.024,4.337,4.594,4.850,
-5.168,5.529,5.874,6.194,6.527,6.880,7.213,7.514,7.829,8.196,8.605,9.032,9.482,9.964,10.439,10.852,
-11.183,11.441,11.625,11.722,11.754,11.782,11.845,11.942,12.064,12.213,12.370,12.476,12.510,12.530,12.605,12.715,
-12.772,12.749,12.713,12.732,12.792,12.849,12.906,12.994,13.107,13.213,13.317,13.450,13.599,13.706,13.763,13.839,
-13.998,14.211,14.415,14.609,14.830,15.070,15.273,15.432,15.606,15.820,16.009,16.109,16.163,16.271,16.460,16.666,
-16.850,17.043,17.281,17.545,17.796,18.042,18.312,18.553,18.872,19.192,19.506,19.825,20.137,20.416,20.676,20.972,
-21.311,21.641,21.935,22.249,22.633,23.055,23.455,23.865,24.358,24.910,25.407,25.802,26.171,26.536,26.751,26.669,
-26.349,25.951,25.456,24.691,23.713,22.967,22.858,23.224,23.468,23.229,22.756,22.516,22.615,22.767,22.756,22.687,
-22.749,22.935,23.135,23.374,23.781,24.346,24.875,25.257,25.632,26.211,26.978,27.700,28.198,28.520,28.814,29.134,
-29.447,29.757,30.124,30.550,30.950,31.281,31.649,32.173,32.758,33.066,32.820,32.094,31.254,30.592,30.063,29.433,
-28.621,27.822,27.261,26.933,26.651,26.321,26.038,25.913,25.871,25.738,25.463,25.162,24.920,24.651,24.228,23.696,
-23.246,22.985,22.822,22.618,22.357,22.112,21.874,21.536,21.054,20.532,20.102,19.785,19.506,19.208,18.871,18.446,
-17.887,17.260,16.759,16.538,16.590,16.819,17.178,17.634,18.048,18.227,18.128,17.907,17.669,17.250,16.360,14.944,
-13.316,11.914,11.033,10.763,11.032,11.568,11.907,11.654,10.812,9.775,8.935,8.362,7.919,7.572,7.454,7.620,
-7.913,8.121,8.181,8.117,7.852,7.222,6.233,5.201,4.506,4.233,4.105,3.810,3.331,2.928,2.825,2.974,
-3.124,3.075,2.810,2.439,2.082,1.816,1.679,1.644,1.620,1.517,1.337,1.152,1.014,.917,.848,.779,
-.608,.206,-.323,-.505,.162,1.630,3.189,4.125,4.431,4.727,5.454,6.376,6.968,7.118,7.182,7.378,
-7.425,6.943,6.035,5.219,4.781,4.428,3.660,2.389,1.019,-.015,-.646,-1.092,-1.528,-1.945,-2.279,-2.527,
--2.699,-2.748,-2.626,-2.386,-2.173,-2.080,-2.064,-2.023,-1.921,-1.803,-1.704,-1.603,-1.468,-1.319,-1.198,-1.119,
--1.070,-1.066,-1.119,-1.175,-1.115,-.887,-.606,-.460,-.528,-.726,-.937,-1.140,-1.379,-1.656,-1.912,-2.094,
--2.194,-2.222,-2.199,-2.184,-2.245,-2.364,-2.419,-2.311,-2.101,-1.952,-1.939,-1.974,-1.949,-1.877,-1.859,-1.938,
--2.061,-2.173,-2.289,-2.439,-2.601,-2.717,-2.767,-2.788,-2.830,-2.917,-3.049,-3.219,-3.417,-3.640,-3.883,-4.121,
--4.315,-4.461,-4.618,-4.856,-5.165,-5.461,-5.692,-5.894,-6.116,-6.337,-6.514,-6.686,-6.960,-7.372,-7.840,-8.290,
--8.748,-9.268,-9.801,-10.240,-10.584,-10.970,-11.513,-12.164,-12.777,-13.269,-13.659,-14.000,-14.326,-14.684,-15.143,-15.725,
--16.374,-17.006,-17.576,-18.085,-18.544,-18.978,-19.441,-19.980,-20.585,-21.214,-21.838,-22.445,-22.999,-23.454,-23.827,-24.203,
--24.645,-25.119,-25.564,-25.989,-26.452,-26.959,-27.446,-27.870,-28.268,-28.680,-29.076,-29.404,-29.677,-29.963,-30.291,-30.621,
--30.928,-31.245,-31.613,-32.022,-32.434,-32.846,-33.280,-33.728,-34.142,-34.494,-34.801,-35.090,-35.356,-35.577,-35.744,-35.860,
--35.927,-35.936,-35.877,-35.762,-35.672,-35.769,-36.202,-36.948,-37.764,-38.369,-38.683,-38.874,-39.175,-39.678,-40.322,-40.986,
--41.548,-41.904,-42.038,-42.068,-42.178,-42.444,-42.769,-43.012,-43.149,-43.262,-43.395,-43.499,-43.526,-43.502,-43.504,-43.565,
--43.664,-43.778,-43.902,-44.027,-44.139,-44.245,-44.372,-44.523,-44.652,-44.715,-44.725,-44.748,-44.826,-44.929,-44.987,-44.952,
--44.833,-44.669,-44.494,-44.314,-44.106,-43.851,-43.555,-43.246,-42.944,-42.641,-42.320,-41.986,-41.673,-41.394,-41.121,-40.819,
--40.497,-40.206,-39.965,-39.740,-39.485,-39.199,-38.890,-38.516,-38.009,-37.407,-36.902,-36.692,-36.791,-37.006,-37.132,-37.081,
--36.845,-36.379,-35.642,-34.714,-33.799,-33.061,-32.509,-32.077,-31.769,-31.661,-31.790,-32.093,-32.458,-32.780,-32.963,-32.926,
--32.654,-32.211,-31.627,-30.815,-29.660,-28.197,-26.636,-25.189,-23.913,-22.764,-21.736,-20.879,-20.188,-19.563,-18.914,-18.237,
--17.578,-16.927,-16.215,-15.396,-14.501,-13.610,-12.797,-12.100,-11.521,-11.043,-10.665,-10.421,-10.308,-10.204,-9.916,-9.355,
--8.643,-7.990,-7.471,-6.981,-6.411,-5.812,-5.315,-4.965,-4.676,-4.364,-4.036,-3.739,-3.475,-3.229,-3.024,-2.911,
--2.898,-2.940,-2.990,-3.021,-2.985,-2.821,-2.517,-2.129,-1.694,-1.153,-.436,.371,1.018,1.299,1.264,1.194,
-1.358,1.820,2.454,3.084,3.599,3.972,4.228,4.404,4.533,4.641,4.744,4.842,4.908,4.918,4.905,4.953,
-5.117,5.356,5.588,5.819,6.168,6.738,7.500,8.339,9.194,10.099,11.069,12.025,12.850,13.524,14.140,14.816,
-15.604,16.509,17.538,18.695,19.945,21.181,22.272,23.130,23.772,24.284,24.755,25.216,25.665,26.128,26.646,27.209,
-27.746,28.232,28.776,29.523,30.460,31.385,32.108,32.641,33.120,33.580,33.880,33.885,33.656,33.392,33.237,33.199,
-33.236,33.348,33.560,33.845,34.154,34.500,34.982,35.692,36.606,37.575,38.450,39.221,40.022,40.978,42.046,43.062,
-43.924,44.709,45.543,46.393,47.083,47.496,47.708,47.866,48.008,48.085,48.111,48.217,48.514,48.984,49.509,49.957,
-50.196,50.133,49.826,49.526,49.451,49.529,49.454,49.077,48.621,48.380,48.302,48.030,47.396,46.692,46.329,46.322,
-46.278,45.908,45.400,45.197,45.509,46.121,46.667,46.972,47.111,47.208,47.280,47.251,47.078,46.832,46.654,46.644,
-46.786,46.989,47.190,47.409,47.681,47.981,48.234,48.410,48.575,48.840,49.267,49.823,50.382,50.773,50.865,50.676,
-50.404,50.304,50.481,50.791,50.961,50.824,50.460,50.114,50.000,50.160,50.493,50.875,51.232,51.526,51.732,51.893,
-52.158,52.687,53.471,54.289,54.903,55.295,55.635,56.017,56.302,56.286,55.982,55.636,55.455,55.380,55.170,54.665,
-53.932,53.183,52.587,52.187,51.931,51.763,51.688,51.771,52.051,52.468,52.895,53.242,53.516,53.750,53.923,53.984,
-53.935,53.847,53.766,53.658,53.466,53.200,52.924,52.677,52.431,52.143,51.806,51.454,51.125,50.841,50.603,50.383,
-50.154,49.929,49.773,49.749,49.860,50.050,50.264,50.482,50.721,51.023,51.416,51.839,52.114,52.085,51.834,51.677,
-51.822,52.065,51.985,51.484,50.939,50.561,49.619,46.662,40.902,33.447,26.948,23.765,24.287,26.929,29.621,31.261,
-31.956,32.257,32.433,32.409,32.111,31.635,31.129,30.616,30.021,29.302,28.510,27.720,26.958,26.212,25.480,24.789,
-24.159,23.568,22.973,22.348,21.701,21.041,20.359,19.654,18.961,18.332,17.784,17.281,16.784,16.309,15.895,15.551,
-15.241,14.924,14.588,14.217,13.781,13.286,12.804,12.415,12.113,11.819,11.513,11.285,11.228,11.284,11.272,11.070,
-10.720,10.353,10.044,9.769,9.476,9.139,8.755,8.337,7.915,7.524,7.170,6.825,6.487,6.195,5.969,5.742,
-5.418,4.996,4.600,4.346,4.203,4.025,3.700,3.255,2.814,2.480,2.275,2.152,2.051,1.932,1.781,1.586,
-1.322,.961,.521,.087,-.254,-.502,-.751,-1.083,-1.464,-1.770,-1.934,-2.039,-2.260,-2.665,-3.110,-3.356,
--3.336,-3.288,-3.553,-4.208,-4.907,-5.156,-4.793,-4.183,-3.906,-4.259,-5.044,-5.803,-6.225,-6.341,-6.391,-6.561,
--6.847,-7.121,-7.292,-7.401,-7.557,-7.804,-8.078,-8.287,-8.423,-8.559,-8.742,-8.933,-9.070,-9.157,-9.250,-9.385,
--9.535,-9.664,-9.779,-9.907,-10.051,-10.180,-10.285,-10.390,-10.522,-10.682,-10.850,-11.017,-11.182,-11.339,-11.462,-11.531,
--11.555,-11.577,-11.645,-11.762,-11.879,-11.940,-11.941,-11.939,-11.985,-12.059,-12.096,-12.075,-12.051,-12.093,-12.195,-12.280,
--12.285,-12.231,-12.194,-12.218,-12.272,-12.277,-12.185,-12.017,-11.851,-11.741,-11.672,-11.590,-11.473,-11.355,-11.271,-11.203,
--11.102,-10.962,-10.838,-10.781,-10.778,-10.782,-10.761,-10.714,-10.639,-10.529,-10.410,-10.328,-10.298,-10.278,-10.216,-10.110,
--10.003,-9.919,-9.837,-9.733,-9.611,-9.484,-9.345,-9.184,-9.016,-8.868,-8.734,-8.583,-8.406,-8.234,-8.093,-7.964,
--7.809,-7.625,-7.453,-7.321,-7.206,-7.071,-6.909,-6.749,-6.607,-6.474,-6.327,-6.161,-5.995,-5.846,-5.719,-5.600,
--5.473,-5.335,-5.201,-5.091,-5.002,-4.917,-4.820,-4.710,-4.598,-4.494,-4.415,-4.375,-4.375,-4.388,-4.390,-4.381,
--4.375,-4.363,-4.314,-4.227,-4.150,-4.121,-4.114,-4.075,-4.009,-3.988,-4.046,-4.119,-4.112,-4.027,-3.955,-3.958,
--3.999,-4.010,-3.982,-3.955,-3.943,-3.917,-3.867,-3.825,-3.817,-3.824,-3.806,-3.767,-3.731,-3.705,-3.663,-3.591,
--3.501,-3.411,-3.322,-3.244,-3.192,-3.170,-3.155,-3.122,-3.078,-3.036,-2.995,-2.948,-2.907,-2.877,-2.831,-2.731,
--2.606,-2.535,-2.543,-2.558,-2.488,-2.345,-2.213,-2.135,-2.067,-1.965,-1.852,-1.767,-1.708,-1.650,-1.602,-1.576,
--1.540,-1.443,-1.300,-1.193,-1.156,-1.120,-.997,-.796,-.602,-.478,-.420,-.394,-.367,-.295,-.151,.028,
-.161,.216,.244,.303,.378,.434,.492,.597,.716,.767,.740,.736,.838,1.007,1.152,1.255,
-1.368,1.504,1.620,1.704,1.802,1.946,2.102,2.232,2.343,2.445,2.525,2.595,2.735,2.983,3.236,3.358,
-3.397,3.568,3.945,4.304,4.379,4.229,4.195,4.479,4.906,5.195,5.344,5.606,6.096,6.586,6.764,6.621,
-6.491,6.686,7.184,7.681,7.922,7.923,7.897,8.017,8.294,8.645,9.005,9.346,9.639,9.881,10.133,10.486,
-10.958,11.475,11.965,12.444,12.957,13.471,13.889,14.172,14.396,14.680,15.110,15.714,16.453,17.195,17.772,18.126,
-18.369,18.633,18.908,19.100,19.196,19.178,18.745,17.387,15.090,12.999,13.017,16.300,21.981,27.532,30.660,31.053,
-30.347,30.438,31.847,33.690,35.016,35.901,37.141,39.105,41.226,42.664,43.210,43.328,43.483,43.693,43.717,43.326,
-42.221,39.980,36.489,32.447,29.088,27.194,26.464,25.992,25.251,24.444,23.983,23.913,23.941,23.865,23.741,23.691,
-23.682,23.564,23.224,22.662,21.953,21.200,20.492,19.885,19.387,18.972,18.595,18.195,17.723,17.177,16.597,15.997,
-15.335,14.559,13.669,12.712,11.724,10.724,9.744,8.826,7.961,7.082,6.129,5.109,4.093,3.168,2.406,1.832,
-1.394,.989,.554,.108,-.324,-.781,-1.281,-1.685,-1.770,-1.500,-1.154,-1.075,-1.317,-1.633,-1.796,-1.825,
--1.878,-2.015,-2.177,-2.344,-2.596,-2.987,-3.416,-3.658,-3.532,-3.055,-2.475,-2.136,-2.220,-2.598,-2.954,-3.102,
--3.157,-3.353,-3.762,-4.239,-4.622,-4.893,-5.128,-5.392,-5.711,-6.096,-6.514,-6.869,-7.084,-7.194,-7.295,-7.434,
--7.616,-7.926,-8.518,-9.420,-10.400,-11.144,-11.541,-11.722,-11.810,-11.736,-11.374,-10.777,-10.191,-9.834,-9.718,-9.701,
--9.655,-9.548,-9.405,-9.246,-9.070,-8.877,-8.685,-8.516,-8.374,-8.246,-8.118,-7.990,-7.865,-7.733,-7.584,-7.437,
--7.324,-7.245,-7.159,-7.039,-6.905,-6.788,-6.681,-6.552,-6.410,-6.312,-6.282,-6.280,-6.248,-6.178,-6.100,-6.030,
--5.966,-5.919,-5.893,-5.859,-5.776,-5.653,-5.543,-5.460,-5.359,-5.214,-5.078,-5.004,-4.948,-4.813,-4.587,-4.362,
--4.198,-4.042,-3.817,-3.535,-3.261,-3.007,-2.732,-2.431,-2.154,-1.917,-1.666,-1.353,-1.015,-.713,-.446,-.168,
-.128,.414,.692,.999,1.336,1.648,1.921,2.215,2.582,2.980,3.334,3.645,3.975,4.339,4.680,4.967,
-5.250,5.583,5.947,6.290,6.607,6.935,7.278,7.609,7.925,8.258,8.608,8.947,9.289,9.708,10.231,10.757,
-11.146,11.370,11.523,11.680,11.815,11.874,11.878,11.901,11.991,12.139,12.306,12.455,12.555,12.604,12.643,12.710,
-12.787,12.824,12.818,12.822,12.876,12.953,13.014,13.067,13.150,13.264,13.380,13.487,13.598,13.702,13.772,13.830,
-13.940,14.130,14.348,14.543,14.741,14.989,15.256,15.459,15.586,15.711,15.874,16.015,16.078,16.118,16.238,16.446,
-16.663,16.848,17.060,17.348,17.677,17.982,18.260,18.553,18.959,19.275,19.581,19.862,20.144,20.433,20.698,20.941,
-21.210,21.524,21.828,22.084,22.350,22.700,23.116,23.519,23.911,24.382,24.958,25.543,26.050,26.499,26.905,27.148,
-27.073,26.706,26.229,25.716,25.050,24.179,23.347,22.892,22.854,22.942,22.917,22.846,22.905,23.058,23.108,23.005,
-22.918,22.985,23.131,23.241,23.389,23.748,24.304,24.832,25.204,25.579,26.206,27.083,27.927,28.479,28.750,28.940,
-29.205,29.549,29.919,30.292,30.666,31.037,31.429,31.913,32.511,33.066,33.272,32.909,32.075,31.130,30.375,29.809,
-29.226,28.526,27.850,27.386,27.118,26.867,26.550,26.295,26.235,26.289,26.237,25.988,25.663,25.376,25.064,24.603,
-24.040,23.569,23.296,23.126,22.929,22.718,22.567,22.439,22.194,21.793,21.353,20.981,20.625,20.179,19.654,19.141,
-18.644,18.064,17.405,16.871,16.690,16.898,17.365,17.964,18.589,19.058,19.159,18.875,18.437,18.031,17.524,16.605,
-15.193,13.595,12.242,11.382,11.071,11.291,11.883,12.437,12.455,11.768,10.694,9.719,9.064,8.637,8.332,8.194,
-8.282,8.511,8.721,8.831,8.808,8.535,7.871,6.882,5.921,5.334,5.111,4.914,4.479,3.906,3.525,3.506,
-3.695,3.803,3.673,3.352,2.964,2.612,2.374,2.288,2.296,2.256,2.072,1.803,1.585,1.471,1.410,1.359,
-1.305,1.156,.760,.186,-.081,.525,2.026,3.746,4.932,5.481,5.892,6.548,7.268,7.644,7.637,7.579,
-7.655,7.640,7.245,6.543,5.851,5.286,4.613,3.595,2.331,1.149,.272,-.322,-.748,-1.065,-1.309,-1.547,
--1.814,-2.035,-2.097,-1.985,-1.815,-1.694,-1.615,-1.507,-1.361,-1.246,-1.210,-1.202,-1.137,-.998,-.852,-.768,
--.752,-.763,-.770,-.761,-.702,-.553,-.331,-.135,-.073,-.162,-.330,-.516,-.730,-.998,-1.284,-1.510,
--1.633,-1.677,-1.689,-1.689,-1.689,-1.700,-1.714,-1.695,-1.626,-1.548,-1.516,-1.517,-1.484,-1.392,-1.309,-1.310,
--1.384,-1.467,-1.544,-1.670,-1.872,-2.083,-2.210,-2.244,-2.259,-2.325,-2.443,-2.570,-2.692,-2.832,-3.015,-3.220,
--3.406,-3.555,-3.715,-3.955,-4.278,-4.604,-4.852,-5.041,-5.259,-5.538,-5.796,-5.961,-6.092,-6.324,-6.706,-7.148,
--7.565,-7.983,-8.466,-8.985,-9.446,-9.829,-10.234,-10.756,-11.358,-11.916,-12.350,-12.686,-13.000,-13.366,-13.832,-14.407,
--15.041,-15.657,-16.210,-16.709,-17.177,-17.620,-18.061,-18.555,-19.136,-19.777,-20.414,-21.012,-21.572,-22.081,-22.518,-22.913,
--23.341,-23.828,-24.312,-24.728,-25.114,-25.567,-26.106,-26.644,-27.100,-27.485,-27.855,-28.219,-28.550,-28.851,-29.162,-29.499,
--29.833,-30.151,-30.477,-30.845,-31.246,-31.658,-32.081,-32.529,-32.989,-33.424,-33.815,-34.167,-34.489,-34.768,-34.990,-35.152,
--35.260,-35.315,-35.307,-35.226,-35.087,-34.985,-35.099,-35.572,-36.351,-37.167,-37.753,-38.074,-38.332,-38.730,-39.305,-39.962,
--40.597,-41.122,-41.443,-41.534,-41.520,-41.618,-41.923,-42.309,-42.584,-42.709,-42.798,-42.940,-43.090,-43.160,-43.152,-43.150,
--43.217,-43.349,-43.514,-43.688,-43.849,-43.973,-44.065,-44.160,-44.277,-44.386,-44.439,-44.439,-44.443,-44.495,-44.576,-44.626,
--44.599,-44.494,-44.341,-44.170,-43.990,-43.787,-43.541,-43.255,-42.964,-42.701,-42.449,-42.157,-41.804,-41.441,-41.141,-40.918,
--40.712,-40.459,-40.153,-39.839,-39.554,-39.312,-39.110,-38.918,-38.660,-38.267,-37.762,-37.281,-36.965,-36.848,-36.868,-36.968,
--37.099,-37.124,-36.813,-36.038,-34.962,-33.942,-33.220,-32.753,-32.379,-32.064,-31.925,-32.049,-32.370,-32.747,-33.062,-33.222,
--33.132,-32.748,-32.123,-31.341,-30.402,-29.239,-27.854,-26.384,-24.986,-23.716,-22.572,-21.606,-20.904,-20.445,-20.053,-19.544,
--18.891,-18.205,-17.565,-16.923,-16.170,-15.276,-14.334,-13.491,-12.847,-12.388,-12.021,-11.685,-11.402,-11.210,-11.053,-10.776,
--10.279,-9.617,-8.924,-8.244,-7.521,-6.730,-5.974,-5.390,-5.008,-4.759,-4.580,-4.447,-4.323,-4.140,-3.889,-3.664,
--3.569,-3.599,-3.678,-3.757,-3.829,-3.850,-3.724,-3.428,-3.052,-2.670,-2.198,-1.497,-.616,.146,.495,.440,
-.290,.366,.762,1.356,1.973,2.506,2.914,3.194,3.366,3.471,3.556,3.638,3.692,3.669,3.554,3.408,
-3.348,3.452,3.707,4.061,4.508,5.086,5.779,6.476,7.081,7.636,8.271,9.045,9.880,10.664,11.384,12.113,
-12.902,13.749,14.669,15.734,17.001,18.407,19.777,20.940,21.843,22.558,23.188,23.773,24.286,24.718,25.137,25.633,
-26.206,26.758,27.233,27.723,28.380,29.220,30.082,30.801,31.368,31.859,32.262,32.459,32.388,32.159,31.956,31.875,
-31.903,32.016,32.223,32.513,32.829,33.135,33.487,33.993,34.710,35.592,36.534,37.444,38.297,39.137,40.028,40.983,
-41.954,42.889,43.788,44.672,45.500,46.185,46.692,47.075,47.382,47.579,47.626,47.603,47.680,47.958,48.385,48.847,
-49.255,49.525,49.555,49.342,49.060,48.921,48.927,48.879,48.667,48.441,48.369,48.300,47.857,46.895,45.749,44.913,
-44.564,44.487,44.428,44.375,44.463,44.734,45.096,45.461,45.821,46.176,46.470,46.626,46.622,46.493,46.298,46.118,
-46.047,46.140,46.374,46.665,46.941,47.178,47.382,47.570,47.780,48.048,48.385,48.774,49.222,49.741,50.268,50.616,
-50.605,50.268,49.895,49.803,50.047,50.377,50.464,50.194,49.735,49.375,49.311,49.574,50.072,50.652,51.142,51.414,
-51.495,51.603,51.997,52.731,53.586,54.272,54.702,55.016,55.335,55.584,55.608,55.406,55.170,55.057,55.008,54.828,
-54.420,53.894,53.454,53.218,53.156,53.161,53.154,53.143,53.183,53.299,53.446,53.553,53.607,53.656,53.731,53.791,
-53.783,53.712,53.626,53.530,53.376,53.144,52.888,52.663,52.441,52.158,51.814,51.492,51.246,51.039,50.801,50.520,
-50.232,49.965,49.738,49.602,49.628,49.822,50.085,50.303,50.457,50.644,50.969,51.430,51.871,52.074,51.948,51.673,
-51.573,51.761,51.944,51.717,51.065,50.375,49.716,48.217,44.552,38.387,31.299,25.971,24.212,25.679,28.449,30.714,
-31.900,32.410,32.714,32.861,32.711,32.286,31.776,31.294,30.775,30.114,29.320,28.499,27.728,26.992,26.238,25.464,
-24.721,24.052,23.433,22.817,22.188,21.575,20.980,20.352,19.649,18.921,18.268,17.725,17.218,16.680,16.153,15.740,
-15.470,15.246,14.961,14.593,14.182,13.746,13.275,12.794,12.353,11.971,11.624,11.322,11.134,11.099,11.137,11.101,
-10.914,10.624,10.316,10.017,9.712,9.388,9.046,8.669,8.248,7.815,7.412,7.044,6.677,6.320,6.033,5.828,
-5.609,5.274,4.862,4.543,4.421,4.397,4.262,3.900,3.387,2.884,2.497,2.237,2.063,1.932,1.808,1.664,
-1.481,1.243,.938,.568,.173,-.191,-.487,-.738,-1.002,-1.318,-1.667,-1.998,-2.291,-2.594,-2.970,-3.387,
--3.704,-3.804,-3.755,-3.785,-4.041,-4.392,-4.521,-4.259,-3.800,-3.562,-3.828,-4.525,-5.311,-5.865,-6.112,-6.219,
--6.407,-6.748,-7.130,-7.408,-7.570,-7.726,-7.959,-8.216,-8.390,-8.464,-8.531,-8.671,-8.859,-9.026,-9.149,-9.265,
--9.396,-9.527,-9.654,-9.799,-9.973,-10.146,-10.286,-10.405,-10.537,-10.691,-10.844,-10.981,-11.113,-11.245,-11.359,-11.445,
--11.520,-11.616,-11.741,-11.877,-11.999,-12.077,-12.092,-12.066,-12.084,-12.229,-12.484,-12.716,-12.792,-12.705,-12.567,-12.477,
--12.436,-12.389,-12.324,-12.289,-12.323,-12.394,-12.422,-12.355,-12.217,-12.076,-11.978,-11.907,-11.818,-11.700,-11.589,-11.509,
--11.439,-11.336,-11.196,-11.062,-10.959,-10.869,-10.770,-10.676,-10.615,-10.575,-10.514,-10.424,-10.346,-10.313,-10.296,-10.248,
--10.163,-10.074,-9.997,-9.907,-9.786,-9.650,-9.516,-9.375,-9.209,-9.036,-8.888,-8.765,-8.629,-8.464,-8.297,-8.154,
--8.020,-7.858,-7.670,-7.496,-7.354,-7.224,-7.077,-6.920,-6.780,-6.657,-6.532,-6.387,-6.231,-6.077,-5.932,-5.799,
--5.682,-5.572,-5.454,-5.326,-5.204,-5.104,-5.018,-4.922,-4.812,-4.710,-4.641,-4.610,-4.604,-4.600,-4.580,-4.539,
--4.492,-4.462,-4.447,-4.420,-4.366,-4.306,-4.267,-4.237,-4.184,-4.119,-4.097,-4.148,-4.216,-4.222,-4.160,-4.102,
--4.102,-4.136,-4.144,-4.111,-4.066,-4.027,-3.987,-3.941,-3.911,-3.906,-3.907,-3.891,-3.855,-3.813,-3.766,-3.701,
--3.616,-3.521,-3.419,-3.315,-3.226,-3.172,-3.146,-3.116,-3.070,-3.020,-2.978,-2.929,-2.867,-2.816,-2.788,-2.744,
--2.639,-2.501,-2.414,-2.399,-2.375,-2.259,-2.084,-1.952,-1.896,-1.851,-1.756,-1.628,-1.518,-1.436,-1.379,-1.358,
--1.373,-1.362,-1.257,-1.090,-.968,-.947,-.951,-.872,-.696,-.502,-.359,-.281,-.253,-.247,-.203,-.067,
-.132,.297,.373,.407,.468,.545,.596,.638,.738,.892,1.012,1.042,1.039,1.096,1.221,1.354,
-1.469,1.589,1.721,1.838,1.923,1.996,2.078,2.171,2.291,2.460,2.647,2.771,2.821,2.900,3.075,3.246,
-3.274,3.234,3.395,3.860,4.356,4.520,4.356,4.247,4.476,4.910,5.234,5.379,5.556,5.881,6.183,6.263,
-6.233,6.428,6.981,7.618,7.945,7.879,7.713,7.770,8.094,8.500,8.847,9.149,9.457,9.740,9.958,10.179,
-10.536,11.045,11.575,12.022,12.434,12.918,13.451,13.898,14.179,14.379,14.654,15.106,15.758,16.557,17.358,17.953,
-18.248,18.368,18.523,18.757,18.943,18.993,18.889,18.418,17.135,14.994,13.082,13.327,16.955,23.052,28.898,32.028,
-32.146,31.062,30.855,32.168,34.178,35.874,37.080,38.274,39.763,41.296,42.421,42.981,43.174,43.283,43.450,43.567,
-43.192,41.661,38.602,34.531,30.769,28.470,27.657,27.331,26.556,25.308,24.239,23.819,23.895,24.036,24.032,23.966,
-23.942,23.913,23.763,23.421,22.887,22.208,21.480,20.815,20.271,19.817,19.380,18.918,18.424,17.896,17.334,16.747,
-16.138,15.466,14.672,13.728,12.679,11.607,10.583,9.642,8.775,7.948,7.128,6.300,5.461,4.613,3.784,3.044,
-2.453,1.995,1.588,1.190,.820,.468,.038,-.510,-.996,-1.124,-.805,-.308,-.006,-.002,-.103,-.130,
--.131,-.257,-.520,-.793,-1.021,-1.324,-1.851,-2.551,-3.140,-3.317,-3.042,-2.619,-2.466,-2.742,-3.200,-3.450,
--3.375,-3.242,-3.393,-3.884,-4.489,-4.993,-5.383,-5.756,-6.162,-6.595,-7.052,-7.524,-7.944,-8.236,-8.411,-8.560,
--8.752,-8.996,-9.314,-9.763,-10.339,-10.901,-11.289,-11.484,-11.585,-11.629,-11.509,-11.120,-10.548,-10.030,-9.744,-9.668,
--9.655,-9.593,-9.471,-9.332,-9.200,-9.061,-8.899,-8.726,-8.565,-8.421,-8.270,-8.094,-7.912,-7.754,-7.625,-7.498,
--7.355,-7.206,-7.061,-6.919,-6.780,-6.668,-6.588,-6.508,-6.399,-6.287,-6.229,-6.233,-6.235,-6.183,-6.097,-6.025,
--5.970,-5.901,-5.821,-5.751,-5.681,-5.571,-5.419,-5.280,-5.182,-5.082,-4.936,-4.774,-4.651,-4.546,-4.382,-4.143,
--3.904,-3.716,-3.529,-3.268,-2.947,-2.635,-2.357,-2.076,-1.777,-1.497,-1.253,-1.003,-.709,-.399,-.120,.136,
-.410,.704,.983,1.244,1.526,1.837,2.134,2.399,2.677,3.016,3.387,3.731,4.046,4.384,4.754,5.105,
-5.409,5.702,6.025,6.364,6.688,7.002,7.332,7.671,7.994,8.314,8.655,8.989,9.268,9.531,9.902,10.427,
-10.964,11.323,11.479,11.583,11.756,11.953,12.061,12.073,12.085,12.173,12.318,12.463,12.578,12.665,12.730,12.780,
-12.826,12.865,12.892,12.917,12.963,13.038,13.117,13.179,13.242,13.332,13.443,13.549,13.643,13.739,13.830,13.906,
-13.993,14.139,14.340,14.534,14.694,14.876,15.132,15.411,15.611,15.719,15.822,15.972,16.117,16.208,16.296,16.467,
-16.712,16.945,17.146,17.390,17.727,18.094,18.408,18.675,18.959,19.359,19.661,19.937,20.164,20.393,20.656,20.920,
-21.158,21.401,21.676,21.945,22.173,22.410,22.738,23.137,23.521,23.880,24.322,24.907,25.544,26.108,26.596,27.052,
-27.392,27.427,27.094,26.543,25.943,25.294,24.531,23.753,23.201,22.993,23.009,23.074,23.145,23.252,23.342,23.318,
-23.205,23.149,23.216,23.299,23.312,23.372,23.669,24.197,24.732,25.127,25.521,26.176,27.139,28.151,28.897,29.286,
-29.468,29.640,29.889,30.189,30.494,30.798,31.135,31.559,32.099,32.700,33.189,33.321,32.938,32.121,31.165,30.354,
-29.746,29.191,28.575,27.972,27.532,27.269,27.047,26.791,26.595,26.569,26.633,26.582,26.335,26.006,25.713,25.395,
-24.931,24.358,23.865,23.555,23.350,23.150,22.988,22.935,22.913,22.758,22.433,22.077,21.780,21.441,20.925,20.281,
-19.678,19.152,18.581,17.927,17.400,17.269,17.588,18.192,18.891,19.534,19.927,19.875,19.412,18.838,18.396,17.953,
-17.149,15.867,14.405,13.166,12.324,11.876,11.863,12.300,12.904,13.123,12.592,11.501,10.392,9.647,9.253,9.032,
-8.916,8.938,9.083,9.263,9.395,9.396,9.114,8.429,7.459,6.572,6.059,5.830,5.526,4.961,4.349,4.050,
-4.143,4.355,4.374,4.135,3.775,3.425,3.126,2.910,2.816,2.806,2.744,2.541,2.275,2.094,2.032,1.998,
-1.933,1.848,1.683,1.280,.663,.272,.708,2.120,3.966,5.497,6.413,6.954,7.408,7.769,7.907,7.881,
-7.872,7.885,7.718,7.263,6.673,6.125,5.542,4.691,3.527,2.289,1.250,.489,-.050,-.392,-.549,-.637,
--.833,-1.168,-1.464,-1.546,-1.437,-1.303,-1.219,-1.114,-.917,-.695,-.585,-.619,-.694,-.689,-.590,-.475,
--.414,-.414,-.432,-.422,-.356,-.232,-.067,.096,.206,.237,.193,.090,-.075,-.316,-.613,-.895,
--1.082,-1.155,-1.163,-1.162,-1.161,-1.134,-1.072,-1.002,-.966,-.981,-1.028,-1.058,-1.029,-.947,-.871,-.863,
--.918,-.972,-.994,-1.035,-1.170,-1.385,-1.575,-1.663,-1.688,-1.749,-1.885,-2.037,-2.138,-2.195,-2.273,-2.415,
--2.592,-2.758,-2.912,-3.111,-3.390,-3.706,-3.966,-4.134,-4.288,-4.535,-4.876,-5.191,-5.385,-5.508,-5.701,-6.029,
--6.432,-6.831,-7.231,-7.681,-8.174,-8.644,-9.066,-9.490,-9.974,-10.503,-11.002,-11.419,-11.769,-12.119,-12.543,-13.082,
--13.707,-14.337,-14.895,-15.379,-15.832,-16.285,-16.738,-17.202,-17.724,-18.330,-18.978,-19.601,-20.170,-20.696,-21.185,-21.628,
--22.049,-22.497,-22.982,-23.450,-23.867,-24.288,-24.792,-25.362,-25.891,-26.301,-26.624,-26.947,-27.302,-27.663,-28.009,-28.351,
--28.699,-29.046,-29.392,-29.753,-30.136,-30.527,-30.914,-31.316,-31.753,-32.217,-32.676,-33.110,-33.507,-33.856,-34.142,-34.362,
--34.526,-34.644,-34.710,-34.710,-34.621,-34.453,-34.303,-34.371,-34.827,-35.622,-36.477,-37.115,-37.506,-37.850,-38.330,-38.942,
--39.571,-40.132,-40.582,-40.861,-40.939,-40.926,-41.033,-41.357,-41.771,-42.077,-42.225,-42.334,-42.498,-42.672,-42.761,-42.763,
--42.771,-42.860,-43.023,-43.223,-43.429,-43.612,-43.738,-43.802,-43.847,-43.920,-44.017,-44.094,-44.127,-44.140,-44.165,-44.201,
--44.224,-44.209,-44.146,-44.028,-43.859,-43.653,-43.423,-43.169,-42.893,-42.622,-42.391,-42.195,-41.969,-41.653,-41.273,-40.926,
--40.689,-40.540,-40.385,-40.151,-39.837,-39.494,-39.169,-38.879,-38.622,-38.392,-38.198,-38.042,-37.885,-37.629,-37.221,-36.776,
--36.562,-36.730,-37.068,-37.090,-36.474,-35.387,-34.317,-33.607,-33.203,-32.875,-32.548,-32.353,-32.405,-32.656,-32.973,-33.257,
--33.417,-33.322,-32.870,-32.095,-31.129,-30.057,-28.868,-27.550,-26.183,-24.865,-23.638,-22.526,-21.629,-21.069,-20.807,-20.597,
--20.182,-19.522,-18.788,-18.138,-17.555,-16.897,-16.079,-15.174,-14.360,-13.780,-13.439,-13.221,-13.001,-12.743,-12.477,-12.197,
--11.827,-11.294,-10.613,-9.852,-9.042,-8.169,-7.267,-6.448,-5.818,-5.392,-5.134,-5.015,-4.994,-4.964,-4.803,-4.517,
--4.264,-4.188,-4.275,-4.410,-4.524,-4.617,-4.650,-4.527,-4.230,-3.866,-3.515,-3.070,-2.358,-1.428,-.625,-.292,
--.431,-.706,-.757,-.462,.072,.688,1.277,1.777,2.156,2.427,2.647,2.872,3.099,3.262,3.291,3.177,
-3.004,2.901,2.952,3.157,3.494,3.974,4.613,5.342,6.013,6.533,6.971,7.477,8.123,8.846,9.567,10.290,
-11.057,11.856,12.646,13.460,14.434,15.666,17.088,18.490,19.682,20.621,21.394,22.097,22.745,23.291,23.722,24.122,
-24.595,25.159,25.729,26.244,26.764,27.398,28.158,28.929,29.600,30.155,30.610,30.911,30.980,30.853,30.690,30.626,
-30.670,30.769,30.922,31.168,31.489,31.817,32.140,32.547,33.133,33.893,34.745,35.625,36.510,37.381,38.218,39.044,
-39.919,40.878,41.879,42.844,43.722,44.506,45.211,45.855,46.433,46.885,47.130,47.165,47.124,47.188,47.426,47.769,
-48.131,48.480,48.771,48.897,48.792,48.557,48.382,48.325,48.282,48.190,48.162,48.279,48.329,47.900,46.801,45.317,
-43.995,43.228,43.064,43.318,43.740,44.099,44.258,44.275,44.359,44.670,45.141,45.556,45.770,45.804,45.751,45.666,
-45.576,45.532,45.599,45.803,46.127,46.535,46.963,47.307,47.496,47.574,47.674,47.891,48.212,48.603,49.084,49.649,
-50.139,50.309,50.069,49.632,49.349,49.396,49.638,49.788,49.664,49.311,48.928,48.740,48.888,49.373,50.031,50.609,
-50.919,50.992,51.068,51.408,52.064,52.849,53.520,53.991,54.347,54.673,54.919,54.974,54.830,54.617,54.470,54.389,
-54.264,54.011,53.674,53.390,53.274,53.332,53.456,53.528,53.520,53.502,53.548,53.639,53.693,53.676,53.636,53.627,
-53.630,53.591,53.502,53.388,53.243,53.030,52.759,52.505,52.310,52.105,51.809,51.459,51.179,51.015,50.865,50.616,
-50.285,49.975,49.736,49.550,49.440,49.496,49.743,50.050,50.242,50.313,50.453,50.838,51.412,51.894,52.022,51.803,
-51.529,51.506,51.704,51.741,51.290,50.480,49.694,48.816,46.850,42.673,36.426,30.013,25.913,25.290,27.232,29.781,
-31.565,32.445,32.909,33.225,33.281,32.973,32.443,31.912,31.428,30.876,30.168,29.349,28.527,27.762,27.031,26.279,
-25.489,24.702,23.975,23.317,22.691,22.070,21.472,20.908,20.327,19.664,18.939,18.254,17.674,17.147,16.597,16.060,
-15.653,15.416,15.236,14.971,14.591,14.165,13.741,13.299,12.812,12.305,11.830,11.434,11.152,11.009,10.977,10.961,
-10.868,10.684,10.457,10.213,9.934,9.620,9.304,9.001,8.665,8.256,7.805,7.375,6.980,6.586,6.203,5.896,
-5.673,5.427,5.066,4.660,4.395,4.349,4.375,4.244,3.870,3.364,2.885,2.507,2.213,1.977,1.788,1.624,
-1.452,1.248,1.018,.773,.507,.202,-.138,-.478,-.773,-1.025,-1.292,-1.638,-2.052,-2.448,-2.756,-3.005,
--3.271,-3.559,-3.774,-3.838,-3.803,-3.800,-3.889,-3.989,-3.984,-3.881,-3.832,-4.020,-4.490,-5.097,-5.598,-5.840,
--5.898,-6.006,-6.328,-6.800,-7.224,-7.491,-7.681,-7.917,-8.191,-8.400,-8.496,-8.554,-8.658,-8.811,-8.969,-9.124,
--9.294,-9.469,-9.612,-9.723,-9.852,-10.025,-10.212,-10.376,-10.533,-10.715,-10.908,-11.064,-11.168,-11.251,-11.338,-11.413,
--11.462,-11.512,-11.607,-11.748,-11.900,-12.034,-12.140,-12.204,-12.224,-12.244,-12.339,-12.526,-12.718,-12.800,-12.750,-12.656,
--12.604,-12.599,-12.586,-12.544,-12.505,-12.502,-12.522,-12.516,-12.452,-12.344,-12.232,-12.139,-12.056,-11.958,-11.842,-11.737,
--11.667,-11.616,-11.547,-11.443,-11.317,-11.179,-11.022,-10.853,-10.714,-10.641,-10.613,-10.573,-10.496,-10.413,-10.358,-10.317,
--10.260,-10.189,-10.126,-10.061,-9.955,-9.800,-9.638,-9.504,-9.382,-9.232,-9.057,-8.899,-8.778,-8.663,-8.527,-8.376,
--8.234,-8.093,-7.934,-7.759,-7.592,-7.438,-7.281,-7.114,-6.959,-6.831,-6.716,-6.588,-6.448,-6.314,-6.187,-6.052,
--5.910,-5.786,-5.686,-5.583,-5.452,-5.309,-5.193,-5.113,-5.041,-4.959,-4.886,-4.852,-4.851,-4.852,-4.830,-4.783,
--4.723,-4.667,-4.626,-4.604,-4.585,-4.552,-4.503,-4.443,-4.374,-4.294,-4.226,-4.210,-4.255,-4.309,-4.311,-4.259,
--4.215,-4.228,-4.273,-4.295,-4.267,-4.210,-4.150,-4.097,-4.051,-4.018,-3.996,-3.975,-3.947,-3.913,-3.869,-3.806,
--3.721,-3.625,-3.527,-3.424,-3.314,-3.216,-3.151,-3.105,-3.050,-2.982,-2.922,-2.880,-2.836,-2.779,-2.734,-2.706,
--2.651,-2.526,-2.367,-2.264,-2.236,-2.199,-2.076,-1.907,-1.792,-1.760,-1.738,-1.659,-1.534,-1.410,-1.307,-1.234,
--1.212,-1.232,-1.227,-1.131,-.978,-.866,-.829,-.797,-.695,-.536,-.378,-.239,-.111,-.023,-.007,-.018,
-.047,.215,.398,.504,.554,.620,.706,.752,.756,.799,.926,1.075,1.160,1.184,1.223,1.320,
-1.453,1.585,1.712,1.841,1.967,2.082,2.174,2.229,2.253,2.314,2.484,2.736,2.947,3.052,3.129,3.264,
-3.388,3.376,3.302,3.442,3.918,4.464,4.687,4.552,4.441,4.686,5.191,5.603,5.770,5.843,5.970,6.080,
-6.073,6.095,6.426,7.094,7.743,7.994,7.858,7.711,7.865,8.279,8.704,9.011,9.271,9.560,9.831,10.036,
-10.264,10.648,11.160,11.629,11.970,12.306,12.790,13.371,13.848,14.128,14.337,14.665,15.190,15.886,16.688,17.471,
-18.040,18.285,18.330,18.414,18.603,18.743,18.713,18.526,18.045,16.856,14.854,13.088,13.560,17.604,24.281,30.662,
-34.052,34.087,32.683,32.108,33.196,35.259,37.245,38.686,39.698,40.507,41.218,41.862,42.435,42.884,43.176,43.369,
-43.408,42.813,40.852,37.323,33.165,29.945,28.534,28.342,28.014,26.812,25.183,24.044,23.766,23.993,24.229,24.317,
-24.350,24.364,24.274,24.021,23.630,23.120,22.488,21.782,21.122,20.594,20.152,19.690,19.167,18.625,18.104,17.586,
-17.024,16.389,15.665,14.818,13.819,12.697,11.553,10.506,9.603,8.803,8.036,7.277,6.542,5.828,5.098,4.339,
-3.615,3.005,2.509,2.070,1.669,1.353,1.117,.835,.416,-.016,-.187,.037,.490,.896,1.160,1.378,
-1.590,1.654,1.410,.909,.372,-.058,-.472,-1.068,-1.886,-2.694,-3.160,-3.164,-2.951,-2.918,-3.217,-3.600,
--3.694,-3.441,-3.186,-3.309,-3.861,-4.590,-5.264,-5.856,-6.437,-7.026,-7.594,-8.142,-8.680,-9.151,-9.472,-9.645,
--9.772,-9.947,-10.177,-10.437,-10.727,-11.037,-11.293,-11.414,-11.410,-11.365,-11.308,-11.165,-10.856,-10.424,-10.019,-9.755,
--9.625,-9.541,-9.435,-9.304,-9.178,-9.069,-8.961,-8.830,-8.679,-8.527,-8.378,-8.210,-8.017,-7.837,-7.717,-7.645,
--7.557,-7.398,-7.179,-6.947,-6.741,-6.576,-6.462,-6.389,-6.323,-6.242,-6.171,-6.150,-6.161,-6.134,-6.040,-5.933,
--5.875,-5.847,-5.788,-5.682,-5.568,-5.458,-5.321,-5.146,-4.978,-4.851,-4.729,-4.562,-4.369,-4.208,-4.077,-3.906,
--3.661,-3.392,-3.146,-2.891,-2.578,-2.221,-1.887,-1.596,-1.308,-1.001,-.709,-.456,-.216,.041,.297,.521,
-.739,.996,1.289,1.571,1.826,2.090,2.385,2.678,2.944,3.211,3.521,3.864,4.193,4.502,4.825,5.170,
-5.502,5.801,6.090,6.391,6.694,6.991,7.301,7.638,7.973,8.281,8.588,8.928,9.268,9.544,9.792,10.139,
-10.638,11.148,11.484,11.631,11.750,11.953,12.170,12.272,12.260,12.251,12.327,12.457,12.573,12.660,12.742,12.823,
-12.883,12.918,12.949,12.996,13.061,13.136,13.208,13.270,13.331,13.411,13.510,13.608,13.690,13.772,13.873,13.982,
-14.079,14.181,14.328,14.513,14.684,14.827,15.001,15.252,15.525,15.725,15.847,15.981,16.177,16.385,16.552,16.717,
-16.945,17.216,17.459,17.671,17.934,18.278,18.621,18.884,19.102,19.359,19.611,19.892,20.136,20.317,20.508,20.761,
-21.035,21.278,21.505,21.753,22.009,22.243,22.495,22.828,23.214,23.567,23.884,24.283,24.840,25.461,26.010,26.497,
-27.016,27.515,27.744,27.517,26.916,26.174,25.427,24.677,23.973,23.478,23.301,23.351,23.439,23.474,23.483,23.490,
-23.466,23.412,23.386,23.409,23.420,23.383,23.404,23.649,24.135,24.690,25.154,25.584,26.192,27.094,28.161,29.107,
-29.718,29.995,30.104,30.226,30.440,30.718,31.016,31.345,31.759,32.274,32.817,33.226,33.317,32.975,32.239,31.320,
-30.474,29.819,29.276,28.720,28.150,27.680,27.375,27.174,27.005,26.889,26.874,26.895,26.814,26.589,26.323,26.089,
-25.800,25.332,24.729,24.182,23.812,23.570,23.384,23.289,23.323,23.371,23.253,22.954,22.640,22.416,22.169,21.737,
-21.152,20.577,20.058,19.491,18.867,18.407,18.355,18.710,19.256,19.797,20.218,20.373,20.109,19.513,18.951,18.703,
-18.591,18.147,17.154,15.870,14.686,13.740,13.007,12.607,12.744,13.293,13.672,13.327,12.280,11.087,10.267,9.896,
-9.750,9.656,9.616,9.671,9.796,9.912,9.901,9.600,8.916,7.995,7.189,6.730,6.473,6.066,5.399,4.771,
-4.549,4.729,4.940,4.856,4.493,4.082,3.768,3.527,3.325,3.195,3.140,3.067,2.899,2.696,2.576,2.549,
-2.512,2.414,2.296,2.135,1.775,1.171,.659,.813,1.930,3.711,5.512,6.844,7.600,7.903,7.932,7.895,
-7.969,8.136,8.148,7.796,7.196,6.659,6.278,5.785,4.892,3.670,2.470,1.544,.876,.387,.105,.043,
-.037,-.142,-.506,-.822,-.895,-.781,-.659,-.589,-.480,-.284,-.096,-.044,-.128,-.236,-.277,-.247,
--.193,-.146,-.109,-.068,-.003,.100,.222,.326,.394,.446,.505,.549,.520,.374,.128,-.149,
--.382,-.528,-.593,-.612,-.618,-.610,-.564,-.478,-.399,-.383,-.439,-.500,-.491,-.403,-.317,-.320,
--.419,-.531,-.576,-.577,-.630,-.786,-.981,-1.105,-1.136,-1.160,-1.264,-1.428,-1.556,-1.596,-1.599,-1.656,
--1.797,-1.985,-2.176,-2.367,-2.586,-2.838,-3.083,-3.282,-3.444,-3.634,-3.909,-4.246,-4.553,-4.763,-4.904,-5.075,
--5.344,-5.698,-6.091,-6.503,-6.944,-7.411,-7.878,-8.324,-8.757,-9.196,-9.645,-10.090,-10.515,-10.921,-11.336,-11.807,
--12.365,-12.978,-13.569,-14.083,-14.535,-14.978,-15.440,-15.916,-16.409,-16.949,-17.547,-18.166,-18.758,-19.312,-19.842,-20.346,
--20.809,-21.241,-21.677,-22.133,-22.593,-23.061,-23.576,-24.152,-24.716,-25.159,-25.457,-25.701,-26.003,-26.385,-26.798,-27.194,
--27.566,-27.930,-28.298,-28.677,-29.065,-29.452,-29.819,-30.176,-30.552,-30.968,-31.417,-31.882,-32.349,-32.799,-33.191,-33.496,
--33.717,-33.887,-34.023,-34.111,-34.119,-34.011,-33.791,-33.569,-33.570,-33.993,-34.808,-35.731,-36.464,-36.951,-37.369,-37.883,
--38.480,-39.056,-39.554,-39.967,-40.252,-40.368,-40.392,-40.506,-40.816,-41.226,-41.561,-41.765,-41.927,-42.115,-42.289,-42.376,
--42.398,-42.445,-42.568,-42.743,-42.929,-43.114,-43.287,-43.410,-43.464,-43.485,-43.533,-43.625,-43.722,-43.785,-43.810,-43.814,
--43.810,-43.797,-43.774,-43.729,-43.632,-43.467,-43.253,-43.026,-42.798,-42.558,-42.311,-42.090,-41.915,-41.738,-41.479,-41.116,
--40.733,-40.451,-40.308,-40.228,-40.093,-39.847,-39.512,-39.136,-38.738,-38.332,-37.995,-37.859,-37.984,-38.207,-38.181,-37.680,
--36.889,-36.336,-36.410,-36.929,-37.259,-36.914,-35.993,-35.007,-34.330,-33.924,-33.561,-33.179,-32.910,-32.859,-32.980,-33.172,
--33.379,-33.526,-33.453,-33.004,-32.182,-31.129,-29.968,-28.721,-27.395,-26.065,-24.808,-23.642,-22.588,-21.762,-21.304,-21.173,
--21.089,-20.756,-20.115,-19.359,-18.687,-18.119,-17.525,-16.804,-15.996,-15.259,-14.750,-14.512,-14.444,-14.380,-14.211,-13.930,
--13.569,-13.125,-12.561,-11.860,-11.046,-10.148,-9.196,-8.247,-7.389,-6.693,-6.180,-5.855,-5.722,-5.721,-5.696,-5.500,
--5.160,-4.874,-4.813,-4.960,-5.175,-5.360,-5.492,-5.527,-5.386,-5.070,-4.692,-4.319,-3.835,-3.078,-2.127,-1.346,
--1.070,-1.292,-1.675,-1.867,-1.732,-1.327,-.755,-.104,.540,1.103,1.571,2.002,2.445,2.880,3.214,3.358,
-3.308,3.158,3.041,3.047,3.188,3.449,3.846,4.396,5.039,5.652,6.156,6.599,7.088,7.669,8.299,8.943,
-9.629,10.382,11.157,11.896,12.639,13.526,14.655,15.965,17.272,18.417,19.366,20.185,20.934,21.608,22.162,22.593,
-22.982,23.434,23.984,24.580,25.173,25.789,26.480,27.218,27.904,28.466,28.912,29.250,29.431,29.424,29.323,29.293,
-29.406,29.587,29.746,29.901,30.125,30.423,30.746,31.111,31.622,32.338,33.187,34.049,34.876,35.688,36.484,37.232,
-37.965,38.790,39.772,40.835,41.831,42.681,43.434,44.180,44.949,45.674,46.237,46.552,46.647,46.662,46.743,46.931,
-47.170,47.425,47.711,48.013,48.218,48.226,48.082,47.929,47.834,47.740,47.628,47.621,47.814,48.028,47.842,46.940,
-45.424,43.787,42.614,42.256,42.652,43.363,43.839,43.810,43.476,43.293,43.526,44.043,44.526,44.800,44.914,44.981,
-45.047,45.105,45.149,45.177,45.228,45.432,45.943,46.730,47.478,47.817,47.692,47.418,47.359,47.613,48.040,48.508,
-48.984,49.412,49.648,49.591,49.330,49.079,48.976,48.992,49.010,48.940,48.759,48.510,48.323,48.379,48.768,49.372,
-49.924,50.226,50.325,50.452,50.810,51.411,52.108,52.738,53.238,53.643,53.998,54.284,54.430,54.384,54.184,53.953,
-53.810,53.771,53.730,53.573,53.315,53.111,53.100,53.244,53.368,53.356,53.279,53.293,53.434,53.586,53.628,53.565,
-53.478,53.401,53.306,53.177,53.028,52.853,52.621,52.348,52.111,51.944,51.776,51.520,51.207,50.952,50.784,50.592,
-50.288,49.942,49.686,49.541,49.422,49.322,49.366,49.623,49.948,50.122,50.139,50.249,50.676,51.321,51.818,51.891,
-51.636,51.416,51.474,51.646,51.506,50.853,49.955,49.148,48.112,45.762,41.222,35.058,29.359,26.295,26.449,28.558,
-30.812,32.250,32.992,33.455,33.722,33.642,33.217,32.658,32.126,31.587,30.939,30.166,29.335,28.508,27.718,26.975,
-26.256,25.510,24.718,23.938,23.236,22.603,21.979,21.346,20.747,20.190,19.606,18.943,18.250,17.616,17.056,16.522,
-16.013,15.611,15.358,15.168,14.907,14.531,14.105,13.689,13.263,12.777,12.231,11.695,11.255,10.972,10.843,10.797,
-10.735,10.605,10.432,10.252,10.044,9.771,9.455,9.167,8.921,8.642,8.261,7.813,7.378,6.974,6.561,6.145,
-5.800,5.543,5.274,4.899,4.481,4.195,4.106,4.078,3.918,3.574,3.154,2.775,2.457,2.170,1.902,1.670,
-1.465,1.250,1.007,.758,.540,.347,.130,-.157,-.502,-.837,-1.114,-1.369,-1.690,-2.104,-2.505,-2.757,
--2.844,-2.906,-3.090,-3.396,-3.683,-3.828,-3.832,-3.809,-3.866,-4.025,-4.221,-4.392,-4.560,-4.805,-5.147,-5.459,
--5.570,-5.487,-5.448,-5.703,-6.250,-6.840,-7.256,-7.511,-7.752,-8.034,-8.285,-8.438,-8.535,-8.644,-8.780,-8.923,
--9.090,-9.309,-9.548,-9.737,-9.854,-9.956,-10.098,-10.266,-10.431,-10.606,-10.820,-11.047,-11.220,-11.317,-11.380,-11.452,
--11.522,-11.562,-11.590,-11.647,-11.744,-11.857,-11.971,-12.094,-12.221,-12.319,-12.375,-12.420,-12.485,-12.555,-12.588,-12.584,
--12.585,-12.624,-12.682,-12.716,-12.713,-12.689,-12.663,-12.633,-12.593,-12.537,-12.462,-12.368,-12.259,-12.141,-12.014,-11.878,
--11.753,-11.666,-11.622,-11.590,-11.533,-11.439,-11.312,-11.163,-11.008,-10.880,-10.803,-10.758,-10.704,-10.620,-10.529,-10.450,
--10.376,-10.297,-10.225,-10.171,-10.104,-9.969,-9.769,-9.576,-9.448,-9.362,-9.251,-9.096,-8.942,-8.827,-8.735,-8.627,
--8.487,-8.330,-8.167,-8.000,-7.838,-7.691,-7.547,-7.387,-7.219,-7.068,-6.943,-6.817,-6.672,-6.528,-6.413,-6.314,
--6.193,-6.048,-5.917,-5.818,-5.718,-5.575,-5.411,-5.283,-5.215,-5.175,-5.127,-5.080,-5.055,-5.045,-5.023,-4.981,
--4.939,-4.910,-4.885,-4.851,-4.811,-4.775,-4.741,-4.687,-4.603,-4.493,-4.386,-4.322,-4.327,-4.384,-4.433,-4.421,
--4.360,-4.313,-4.326,-4.379,-4.414,-4.396,-4.339,-4.277,-4.226,-4.183,-4.139,-4.085,-4.027,-3.973,-3.929,-3.880,
--3.805,-3.706,-3.604,-3.512,-3.416,-3.306,-3.195,-3.108,-3.041,-2.971,-2.893,-2.825,-2.776,-2.736,-2.696,-2.665,
--2.633,-2.557,-2.411,-2.252,-2.164,-2.155,-2.136,-2.037,-1.895,-1.797,-1.760,-1.728,-1.653,-1.552,-1.449,-1.347,
--1.248,-1.180,-1.148,-1.111,-1.028,-.929,-.859,-.800,-.686,-.516,-.370,-.287,-.199,-.037,.140,.213,
-.183,.187,.311,.481,.582,.620,.691,.818,.910,.908,.875,.907,1.004,1.091,1.137,1.190,
-1.300,1.455,1.604,1.722,1.822,1.940,2.100,2.276,2.399,2.426,2.421,2.506,2.713,2.943,3.098,3.211,
-3.368,3.537,3.609,3.612,3.749,4.140,4.592,4.786,4.689,4.626,4.896,5.410,5.828,5.987,6.039,6.170,
-6.340,6.413,6.432,6.620,7.069,7.575,7.857,7.888,7.906,8.111,8.457,8.784,9.043,9.315,9.629,9.909,
-10.124,10.384,10.800,11.292,11.671,11.903,12.183,12.677,13.286,13.764,14.038,14.290,14.719,15.345,16.073,16.833,
-17.550,18.074,18.294,18.310,18.352,18.492,18.573,18.473,18.237,17.775,16.680,14.808,13.178,13.821,18.129,25.157,
-31.892,35.555,35.737,34.341,33.631,34.501,36.401,38.367,39.816,40.614,40.885,40.961,41.249,41.908,42.682,43.183,
-43.269,42.925,41.851,39.530,35.969,32.194,29.614,28.736,28.689,28.168,26.750,25.131,24.193,24.106,24.400,24.642,
-24.774,24.877,24.892,24.697,24.303,23.831,23.325,22.723,22.017,21.328,20.768,20.310,19.840,19.316,18.802,18.341,
-17.877,17.316,16.625,15.839,14.965,13.963,12.823,11.642,10.576,9.702,8.959,8.233,7.483,6.752,6.065,5.391,
-4.707,4.062,3.520,3.067,2.629,2.193,1.842,1.625,1.463,1.241,.984,.852,.962,1.263,1.648,2.081,
-2.564,2.984,3.102,2.750,2.016,1.171,.443,-.158,-.784,-1.542,-2.328,-2.883,-3.035,-2.911,-2.842,-3.029,
--3.329,-3.436,-3.266,-3.087,-3.243,-3.824,-4.663,-5.562,-6.445,-7.293,-8.058,-8.713,-9.297,-9.843,-10.297,-10.568,
--10.662,-10.701,-10.791,-10.939,-11.104,-11.281,-11.471,-11.616,-11.623,-11.472,-11.245,-11.038,-10.863,-10.663,-10.396,-10.082,
--9.780,-9.536,-9.357,-9.218,-9.091,-8.963,-8.840,-8.716,-8.580,-8.430,-8.281,-8.138,-7.996,-7.856,-7.752,-7.710,
--7.692,-7.606,-7.401,-7.115,-6.832,-6.602,-6.431,-6.310,-6.232,-6.174,-6.117,-6.072,-6.056,-6.041,-5.967,-5.821,
--5.675,-5.599,-5.578,-5.533,-5.434,-5.311,-5.187,-5.037,-4.849,-4.660,-4.505,-4.355,-4.165,-3.956,-3.787,-3.659,
--3.500,-3.257,-2.965,-2.676,-2.384,-2.053,-1.692,-1.349,-1.040,-.733,-.415,-.117,.136,.368,.606,.837,
-1.037,1.233,1.476,1.767,2.056,2.316,2.576,2.862,3.153,3.417,3.670,3.951,4.263,4.575,4.871,5.171,
-5.482,5.791,6.086,6.380,6.677,6.966,7.249,7.555,7.893,8.223,8.513,8.794,9.119,9.472,9.790,10.077,
-10.423,10.866,11.307,11.612,11.783,11.945,12.160,12.346,12.400,12.359,12.351,12.437,12.565,12.665,12.738,12.818,
-12.906,12.970,13.008,13.054,13.130,13.222,13.301,13.354,13.396,13.455,13.543,13.644,13.733,13.806,13.895,14.021,
-14.157,14.263,14.350,14.468,14.638,14.820,14.990,15.179,15.420,15.675,15.878,16.037,16.228,16.489,16.765,17.001,
-17.221,17.477,17.752,17.991,18.204,18.459,18.765,19.038,19.223,19.383,19.611,19.739,19.990,20.201,20.359,20.546,
-20.815,21.116,21.382,21.618,21.865,22.121,22.365,22.627,22.953,23.315,23.632,23.906,24.260,24.768,25.344,25.869,
-26.380,27.001,27.672,28.079,27.941,27.293,26.422,25.557,24.756,24.057,23.597,23.480,23.602,23.728,23.728,23.666,
-23.653,23.688,23.697,23.650,23.586,23.537,23.512,23.550,23.746,24.158,24.719,25.284,25.780,26.293,26.996,27.946,
-28.980,29.801,30.227,30.339,30.397,30.600,30.940,31.305,31.643,32.018,32.486,32.988,33.368,33.454,33.144,32.449,
-31.522,30.607,29.882,29.344,28.858,28.340,27.851,27.496,27.303,27.219,27.195,27.198,27.173,27.057,26.865,26.680,
-26.518,26.260,25.785,25.151,24.562,24.159,23.919,23.783,23.759,23.844,23.899,23.760,23.443,23.151,23.011,22.914,
-22.670,22.244,21.739,21.202,20.605,20.027,19.696,19.756,20.072,20.383,20.564,20.624,20.498,20.055,19.401,18.959,
-19.057,19.471,19.576,18.974,17.828,16.538,15.300,14.157,13.338,13.194,13.706,14.256,14.117,13.159,11.922,11.025,
-10.629,10.492,10.383,10.285,10.272,10.344,10.410,10.335,9.987,9.317,8.482,7.789,7.406,7.152,6.691,5.954,
-5.278,5.038,5.210,5.389,5.239,4.803,4.351,4.038,3.814,3.603,3.428,3.328,3.252,3.131,2.992,2.918,
-2.906,2.867,2.759,2.643,2.526,2.274,1.779,1.228,1.094,1.776,3.264,5.129,6.795,7.830,8.132,7.982,
-7.868,8.094,8.480,8.551,8.077,7.350,6.818,6.527,6.073,5.135,3.880,2.745,1.958,1.412,.979,.703,
-.636,.636,.485,.174,-.085,-.134,-.037,.052,.098,.172,.290,.368,.345,.262,.191,.147,
-.109,.088,.119,.210,.331,.459,.582,.670,.694,.673,.683,.767,.867,.872,.738,.528,
-.328,.174,.052,-.046,-.106,-.118,-.091,-.041,.017,.057,.058,.033,.033,.098,.190,.220,
-.136,-.011,-.115,-.134,-.134,-.211,-.374,-.531,-.601,-.610,-.649,-.759,-.880,-.935,-.926,-.932,
--1.021,-1.187,-1.388,-1.598,-1.818,-2.038,-2.244,-2.443,-2.667,-2.931,-3.213,-3.476,-3.707,-3.917,-4.114,-4.296,
--4.475,-4.692,-4.988,-5.368,-5.801,-6.251,-6.705,-7.164,-7.621,-8.054,-8.451,-8.834,-9.238,-9.679,-10.142,-10.615,
--11.112,-11.651,-12.216,-12.756,-13.238,-13.678,-14.120,-14.591,-15.093,-15.623,-16.183,-16.761,-17.332,-17.889,-18.446,-19.004,
--19.535,-20.010,-20.439,-20.862,-21.311,-21.796,-22.334,-22.930,-23.532,-24.032,-24.356,-24.557,-24.773,-25.104,-25.539,-25.998,
--26.428,-26.827,-27.217,-27.611,-28.005,-28.389,-28.748,-29.083,-29.420,-29.787,-30.185,-30.606,-31.057,-31.552,-32.062,-32.508,
--32.831,-33.044,-33.209,-33.362,-33.472,-33.474,-33.322,-33.032,-32.743,-32.700,-33.111,-33.954,-34.949,-35.786,-36.374,-36.846,
--37.351,-37.899,-38.430,-38.920,-39.365,-39.709,-39.885,-39.942,-40.050,-40.327,-40.713,-41.062,-41.313,-41.521,-41.730,-41.908,
--42.018,-42.093,-42.203,-42.360,-42.517,-42.652,-42.786,-42.935,-43.065,-43.137,-43.168,-43.215,-43.300,-43.396,-43.464,-43.495,
--43.498,-43.479,-43.438,-43.380,-43.302,-43.192,-43.039,-42.863,-42.690,-42.518,-42.314,-42.064,-41.807,-41.600,-41.435,-41.233,
--40.934,-40.573,-40.265,-40.090,-40.006,-39.899,-39.691,-39.401,-39.080,-38.720,-38.276,-37.805,-37.519,-37.611,-37.990,-38.238,
--37.968,-37.253,-36.623,-36.566,-37.013,-37.410,-37.277,-36.645,-35.907,-35.339,-34.891,-34.412,-33.918,-33.562,-33.416,-33.408,
--33.456,-33.546,-33.620,-33.510,-33.048,-32.231,-31.192,-30.035,-28.769,-27.413,-26.065,-24.828,-23.721,-22.744,-21.997,-21.608,
--21.538,-21.516,-21.246,-20.658,-19.916,-19.211,-18.591,-17.982,-17.311,-16.596,-15.945,-15.498,-15.332,-15.387,-15.484,-15.453,
--15.247,-14.922,-14.521,-14.015,-13.356,-12.542,-11.623,-10.660,-9.705,-8.806,-8.012,-7.368,-6.922,-6.691,-6.602,-6.494,
--6.236,-5.866,-5.569,-5.501,-5.650,-5.893,-6.133,-6.319,-6.385,-6.253,-5.934,-5.534,-5.109,-4.566,-3.794,-2.893,
--2.179,-1.919,-2.087,-2.420,-2.657,-2.679,-2.460,-1.997,-1.322,-.549,.182,.810,1.376,1.945,2.512,2.988,
-3.272,3.335,3.249,3.147,3.137,3.253,3.476,3.792,4.201,4.674,5.154,5.605,6.053,6.544,7.076,7.617,
-8.176,8.812,9.559,10.374,11.190,12.011,12.910,13.930,15.020,16.081,17.051,17.936,18.772,19.565,20.274,20.850,
-21.291,21.674,22.105,22.639,23.249,23.900,24.599,25.356,26.104,26.723,27.157,27.447,27.655,27.782,27.821,27.852,
-27.994,28.270,28.571,28.792,28.948,29.128,29.372,29.685,30.112,30.736,31.558,32.460,33.308,34.080,34.819,35.533,
-36.206,36.890,37.709,38.714,39.792,40.772,41.594,42.346,43.135,43.964,44.741,45.362,45.776,46.010,46.147,46.270,
-46.408,46.555,46.726,46.962,47.252,47.499,47.603,47.576,47.508,47.437,47.312,47.121,46.996,47.095,47.366,47.471,
-46.990,45.763,44.096,42.647,42.032,42.359,43.105,43.514,43.238,42.601,42.218,42.396,42.942,43.493,43.878,44.141,
-44.354,44.533,44.680,44.769,44.725,44.567,44.583,45.176,46.393,47.670,48.255,47.931,47.217,46.826,47.020,47.539,
-48.032,48.388,48.663,48.876,48.984,48.980,48.901,48.770,48.597,48.430,48.322,48.244,48.109,47.932,47.894,48.169,
-48.705,49.242,49.564,49.700,49.853,50.192,50.732,51.384,52.035,52.594,53.023,53.353,53.648,53.907,54.023,53.902,
-53.620,53.411,53.430,53.566,53.545,53.250,52.885,52.757,52.931,53.174,53.237,53.131,53.067,53.164,53.318,53.360,
-53.257,53.102,52.968,52.847,52.717,52.582,52.440,52.254,52.021,51.799,51.635,51.485,51.274,51.010,50.768,50.563,
-50.316,49.985,49.671,49.494,49.428,49.350,49.250,49.278,49.525,49.842,49.994,49.979,50.074,50.509,51.155,51.622,
-51.664,51.431,51.290,51.406,51.534,51.282,50.566,49.708,48.924,47.711,44.985,40.152,34.120,29.038,26.738,27.362,
-29.487,31.507,32.764,33.467,33.912,34.082,33.888,33.450,32.967,32.466,31.835,31.039,30.177,29.324,28.470,27.618,
-26.839,26.162,25.490,24.717,23.886,23.133,22.491,21.859,21.174,20.512,19.965,19.485,18.933,18.269,17.587,16.982,
-16.455,15.977,15.574,15.285,15.062,14.793,14.416,13.975,13.538,13.114,12.651,12.123,11.575,11.101,10.781,10.621,
-10.545,10.460,10.330,10.187,10.045,9.856,9.575,9.245,8.957,8.733,8.486,8.142,7.736,7.350,6.984,6.578,
-6.132,5.739,5.450,5.183,4.826,4.397,4.033,3.813,3.666,3.468,3.189,2.892,2.628,2.383,2.129,1.877,
-1.649,1.432,1.191,.915,.639,.407,.227,.051,-.183,-.500,-.850,-1.164,-1.435,-1.726,-2.083,-2.436,
--2.649,-2.669,-2.621,-2.711,-3.042,-3.514,-3.900,-4.034,-3.947,-3.851,-3.952,-4.276,-4.659,-4.941,-5.117,-5.278,
--5.419,-5.411,-5.220,-5.060,-5.231,-5.791,-6.484,-7.015,-7.326,-7.557,-7.814,-8.061,-8.243,-8.385,-8.546,-8.726,
--8.894,-9.066,-9.290,-9.552,-9.776,-9.920,-10.027,-10.155,-10.306,-10.458,-10.624,-10.838,-11.076,-11.267,-11.372,-11.432,
--11.501,-11.583,-11.645,-11.689,-11.744,-11.824,-11.909,-11.985,-12.072,-12.184,-12.309,-12.417,-12.498,-12.555,-12.589,-12.598,
--12.596,-12.606,-12.633,-12.666,-12.695,-12.723,-12.744,-12.742,-12.714,-12.680,-12.653,-12.616,-12.535,-12.410,-12.262,-12.105,
--11.932,-11.752,-11.604,-11.518,-11.475,-11.430,-11.362,-11.281,-11.203,-11.124,-11.042,-10.962,-10.886,-10.810,-10.729,-10.647,
--10.568,-10.483,-10.394,-10.322,-10.270,-10.194,-10.037,-9.810,-9.598,-9.471,-9.405,-9.322,-9.188,-9.045,-8.938,-8.858,
--8.760,-8.616,-8.434,-8.239,-8.053,-7.895,-7.767,-7.647,-7.513,-7.366,-7.230,-7.108,-6.972,-6.811,-6.658,-6.547,
--6.458,-6.347,-6.203,-6.067,-5.962,-5.855,-5.707,-5.537,-5.408,-5.347,-5.321,-5.289,-5.248,-5.210,-5.168,-5.111,
--5.057,-5.041,-5.064,-5.080,-5.052,-4.989,-4.929,-4.884,-4.827,-4.729,-4.598,-4.479,-4.422,-4.445,-4.514,-4.566,
--4.553,-4.493,-4.443,-4.445,-4.480,-4.498,-4.469,-4.410,-4.353,-4.312,-4.276,-4.223,-4.145,-4.055,-3.974,-3.910,
--3.844,-3.754,-3.645,-3.547,-3.471,-3.394,-3.287,-3.158,-3.046,-2.972,-2.918,-2.858,-2.787,-2.717,-2.664,-2.633,
--2.617,-2.581,-2.486,-2.339,-2.209,-2.159,-2.163,-2.138,-2.039,-1.909,-1.807,-1.731,-1.644,-1.544,-1.468,-1.419,
--1.357,-1.259,-1.147,-1.048,-.958,-.876,-.832,-.828,-.786,-.637,-.436,-.323,-.331,-.321,-.163,.074,
-.216,.222,.231,.354,.515,.585,.583,.653,.845,1.040,1.105,1.061,1.027,1.059,1.118,1.165,
-1.228,1.348,1.512,1.661,1.752,1.802,1.877,2.043,2.295,2.533,2.642,2.619,2.591,2.662,2.807,2.935,
-3.037,3.191,3.420,3.643,3.810,3.989,4.255,4.524,4.631,4.570,4.563,4.791,5.159,5.419,5.517,5.676,
-6.095,6.661,7.055,7.129,7.064,7.139,7.425,7.772,8.029,8.196,8.345,8.511,8.693,8.926,9.246,9.609,
-9.918,10.169,10.483,10.932,11.399,11.705,11.865,12.112,12.602,13.211,13.697,14.018,14.371,14.921,15.620,16.331,
-17.004,17.628,18.101,18.311,18.335,18.384,18.532,18.622,18.515,18.240,17.725,16.612,14.801,13.298,14.052,18.358,
-25.262,31.889,35.663,36.259,35.414,35.070,35.909,37.453,39.004,40.179,40.833,40.983,40.931,41.171,41.913,42.797,
-43.232,42.947,42.013,40.409,37.927,34.679,31.492,29.393,28.636,28.439,27.829,26.619,25.424,24.844,24.859,25.054,
-25.169,25.240,25.309,25.247,24.929,24.420,23.888,23.378,22.803,22.127,21.454,20.893,20.423,19.945,19.436,18.966,
-18.560,18.122,17.535,16.788,15.965,15.106,14.150,13.045,11.873,10.816,9.972,9.256,8.514,7.690,6.862,6.114,
-5.451,4.849,4.333,3.939,3.614,3.249,2.799,2.358,2.049,1.898,1.835,1.805,1.814,1.890,2.048,2.322,
-2.753,3.298,3.766,3.905,3.570,2.819,1.851,.879,.035,-.678,-1.327,-1.930,-2.374,-2.511,-2.369,-2.208,
--2.295,-2.629,-2.970,-3.135,-3.213,-3.461,-4.052,-4.966,-6.078,-7.244,-8.316,-9.182,-9.834,-10.364,-10.832,-11.183,
--11.330,-11.299,-11.224,-11.214,-11.269,-11.357,-11.492,-11.691,-11.870,-11.881,-11.650,-11.271,-10.922,-10.706,-10.579,-10.418,
--10.142,-9.782,-9.443,-9.208,-9.066,-8.948,-8.804,-8.637,-8.467,-8.295,-8.113,-7.931,-7.772,-7.647,-7.560,-7.519,
--7.520,-7.505,-7.395,-7.168,-6.886,-6.634,-6.441,-6.286,-6.160,-6.073,-6.021,-5.979,-5.938,-5.908,-5.873,-5.781,
--5.613,-5.424,-5.294,-5.232,-5.182,-5.103,-5.003,-4.889,-4.742,-4.554,-4.361,-4.194,-4.030,-3.832,-3.621,-3.451,
--3.323,-3.161,-2.912,-2.607,-2.309,-2.027,-1.723,-1.387,-1.050,-.728,-.409,-.089,.200,.445,.675,.923,
-1.175,1.403,1.619,1.867,2.156,2.443,2.701,2.952,3.223,3.501,3.757,4.000,4.261,4.549,4.843,5.129,
-5.417,5.714,6.014,6.314,6.623,6.937,7.239,7.526,7.829,8.161,8.489,8.773,9.036,9.334,9.679,10.029,
-10.360,10.703,11.074,11.421,11.683,11.875,12.068,12.267,12.398,12.418,12.397,12.443,12.570,12.705,12.793,12.858,
-12.938,13.025,13.090,13.136,13.194,13.278,13.364,13.426,13.464,13.499,13.553,13.635,13.732,13.827,13.922,14.042,
-14.199,14.356,14.470,14.550,14.661,14.841,15.061,15.274,15.480,15.703,15.934,16.137,16.321,16.542,16.823,17.114,
-17.364,17.591,17.838,18.098,18.331,18.543,18.780,19.041,19.257,19.399,19.534,19.739,19.847,20.067,20.252,20.416,
-20.632,20.933,21.264,21.561,21.822,22.072,22.305,22.510,22.729,23.020,23.359,23.662,23.921,24.243,24.700,25.231,
-25.756,26.336,27.078,27.867,28.327,28.148,27.406,26.464,25.604,24.856,24.197,23.737,23.617,23.773,23.952,23.979,
-23.915,23.914,23.989,24.015,23.915,23.766,23.694,23.724,23.804,23.944,24.247,24.777,25.429,26.001,26.432,26.905,
-27.657,28.675,29.638,30.211,30.384,30.458,30.721,31.172,31.618,31.956,32.285,32.736,33.277,33.711,33.826,33.506,
-32.760,31.734,30.682,29.848,29.299,28.900,28.482,28.022,27.643,27.457,27.458,27.545,27.603,27.556,27.396,27.190,
-27.020,26.871,26.615,26.149,25.547,25.004,24.652,24.473,24.401,24.417,24.489,24.493,24.309,23.994,23.757,23.725,
-23.783,23.720,23.434,22.967,22.380,21.750,21.252,21.091,21.264,21.497,21.518,21.337,21.118,20.856,20.383,19.760,
-19.442,19.826,20.688,21.267,20.967,19.830,18.281,16.648,15.112,14.000,13.726,14.290,15.017,15.065,14.188,12.904,
-11.892,11.384,11.167,11.004,10.874,10.847,10.896,10.893,10.714,10.288,9.634,8.906,8.347,8.067,7.875,7.439,
-6.681,5.917,5.535,5.568,5.670,5.516,5.104,4.660,4.325,4.059,3.796,3.567,3.425,3.341,3.249,3.155,
-3.119,3.143,3.148,3.087,3.003,2.930,2.786,2.453,1.986,1.692,1.974,3.044,4.739,6.529,7.786,8.197,
-8.033,7.931,8.290,8.860,9.039,8.564,7.793,7.217,6.852,6.268,5.203,3.920,2.898,2.298,1.916,1.557,
-1.268,1.146,1.112,.993,.768,.581,.534,.574,.608,.632,.684,.737,.730,.670,.628,.620,
-.586,.498,.424,.455,.594,.769,.923,1.044,1.111,1.100,1.042,1.027,1.101,1.187,1.172,1.041,
-.881,.764,.666,.533,.383,.294,.305,.373,.428,.448,.452,.466,.493,.527,.554,.548,
-.482,.371,.275,.249,.282,.303,.249,.134,.025,-.037,-.078,-.143,-.229,-.285,-.293,-.301,
--.369,-.502,-.660,-.826,-1.022,-1.254,-1.480,-1.667,-1.856,-2.125,-2.474,-2.792,-2.981,-3.069,-3.185,-3.401,
--3.664,-3.887,-4.074,-4.313,-4.669,-5.109,-5.564,-6.008,-6.458,-6.916,-7.343,-7.713,-8.062,-8.454,-8.916,-9.419,
--9.925,-10.426,-10.936,-11.448,-11.937,-12.387,-12.813,-13.245,-13.714,-14.241,-14.820,-15.418,-15.990,-16.521,-17.045,-17.600,
--18.174,-18.710,-19.178,-19.606,-20.050,-20.541,-21.080,-21.663,-22.264,-22.808,-23.207,-23.448,-23.636,-23.904,-24.303,-24.777,
--25.248,-25.686,-26.107,-26.527,-26.940,-27.328,-27.680,-27.996,-28.305,-28.641,-29.016,-29.407,-29.806,-30.249,-30.775,-31.339,
--31.823,-32.140,-32.324,-32.480,-32.651,-32.779,-32.761,-32.546,-32.194,-31.878,-31.844,-32.275,-33.138,-34.177,-35.099,-35.784,
--36.310,-36.793,-37.281,-37.777,-38.290,-38.799,-39.206,-39.419,-39.487,-39.585,-39.838,-40.201,-40.540,-40.796,-41.013,-41.233,
--41.438,-41.604,-41.753,-41.924,-42.100,-42.239,-42.344,-42.463,-42.621,-42.778,-42.882,-42.937,-42.990,-43.065,-43.144,-43.200,
--43.232,-43.243,-43.228,-43.169,-43.068,-42.943,-42.811,-42.684,-42.565,-42.439,-42.269,-42.016,-41.687,-41.358,-41.118,-40.983,
--40.875,-40.696,-40.425,-40.144,-39.940,-39.806,-39.650,-39.409,-39.131,-38.902,-38.701,-38.391,-37.902,-37.406,-37.217,-37.449,
--37.830,-37.937,-37.633,-37.215,-37.076,-37.267,-37.480,-37.424,-37.115,-36.745,-36.390,-35.946,-35.356,-34.756,-34.329,-34.107,
--33.988,-33.903,-33.859,-33.801,-33.560,-32.994,-32.142,-31.149,-30.080,-28.881,-27.540,-26.173,-24.930,-23.867,-22.982,-22.332,
--21.998,-21.928,-21.894,-21.651,-21.131,-20.437,-19.700,-18.982,-18.287,-17.610,-16.959,-16.375,-15.962,-15.825,-15.953,-16.176,
--16.284,-16.197,-15.973,-15.675,-15.268,-14.684,-13.922,-13.062,-12.179,-11.293,-10.403,-9.545,-8.796,-8.229,-7.852,-7.591,
--7.332,-7.007,-6.659,-6.406,-6.328,-6.409,-6.582,-6.796,-6.998,-7.098,-7.006,-6.718,-6.319,-5.862,-5.307,-4.611,
--3.864,-3.265,-2.943,-2.862,-2.897,-2.959,-2.995,-2.907,-2.565,-1.933,-1.142,-.393,.211,.721,1.252,1.850,
-2.449,2.917,3.157,3.179,3.100,3.058,3.121,3.279,3.495,3.748,4.037,4.364,4.739,5.177,5.671,6.178,
-6.667,7.177,7.801,8.594,9.524,10.514,11.508,12.477,13.389,14.209,14.942,15.647,16.394,17.204,18.037,18.810,
-19.446,19.925,20.313,20.725,21.232,21.822,22.461,23.154,23.911,24.657,25.249,25.608,25.805,25.968,26.160,26.366,
-26.588,26.874,27.235,27.596,27.870,28.051,28.210,28.425,28.757,29.267,29.977,30.815,31.639,32.368,33.038,33.731,
-34.457,35.190,35.958,36.837,37.836,38.847,39.750,40.547,41.330,42.151,42.966,43.699,44.317,44.820,45.201,45.453,
-45.601,45.697,45.798,45.951,46.178,46.461,46.725,46.899,46.978,47.009,47.013,46.943,46.761,46.541,46.449,46.589,
-46.816,46.727,45.934,44.459,42.892,42.025,42.166,42.819,43.125,42.676,41.854,41.347,41.463,41.979,42.547,43.029,
-43.441,43.766,43.975,44.110,44.192,44.119,43.868,43.802,44.493,46.045,47.716,48.469,47.970,46.906,46.260,46.410,
-47.006,47.545,47.861,48.069,48.275,48.471,48.609,48.649,48.548,48.312,48.059,47.925,47.891,47.797,47.581,47.423,
-47.574,48.056,48.626,49.022,49.208,49.340,49.592,50.045,50.686,51.413,52.054,52.477,52.721,52.964,53.298,53.581,
-53.586,53.310,53.042,53.057,53.278,53.346,53.045,52.581,52.371,52.582,52.967,53.169,53.101,52.957,52.923,52.965,
-52.941,52.806,52.643,52.521,52.423,52.315,52.204,52.097,51.960,51.763,51.539,51.340,51.166,50.969,50.740,50.518,
-50.314,50.078,49.794,49.539,49.394,49.324,49.238,49.156,49.214,49.461,49.728,49.812,49.760,49.857,50.298,50.918,
-51.343,51.375,51.188,51.106,51.229,51.313,51.046,50.415,49.680,48.882,47.407,44.299,39.276,33.484,28.990,27.280,
-28.172,30.209,32.004,33.118,33.784,34.194,34.282,34.036,33.650,33.274,32.810,32.097,31.183,30.261,29.404,28.524,
-27.596,26.754,26.085,25.461,24.702,23.830,23.033,22.388,21.770,21.067,20.367,19.824,19.419,18.960,18.329,17.610,
-16.956,16.412,15.940,15.531,15.218,14.974,14.693,14.293,13.805,13.323,12.894,12.477,12.010,11.494,11.005,10.636,
-10.416,10.286,10.167,10.033,9.914,9.811,9.657,9.391,9.048,8.731,8.476,8.221,7.906,7.564,7.259,6.963,
-6.588,6.126,5.686,5.361,5.103,4.785,4.368,3.936,3.588,3.327,3.100,2.879,2.672,2.478,2.278,2.066,
-1.863,1.674,1.476,1.236,.957,.672,.420,.217,.044,-.149,-.412,-.746,-1.096,-1.406,-1.679,-1.951,
--2.219,-2.420,-2.499,-2.504,-2.586,-2.885,-3.387,-3.880,-4.091,-3.929,-3.619,-3.538,-3.874,-4.450,-4.931,-5.165,
--5.255,-5.324,-5.327,-5.187,-5.027,-5.121,-5.590,-6.244,-6.785,-7.111,-7.336,-7.572,-7.805,-7.987,-8.155,-8.373,
--8.630,-8.859,-9.045,-9.241,-9.472,-9.695,-9.869,-10.013,-10.169,-10.336,-10.491,-10.649,-10.849,-11.082,-11.275,-11.379,
--11.422,-11.473,-11.555,-11.647,-11.736,-11.835,-11.950,-12.056,-12.124,-12.159,-12.195,-12.263,-12.372,-12.506,-12.631,-12.711,
--12.734,-12.713,-12.673,-12.630,-12.600,-12.606,-12.659,-12.730,-12.769,-12.765,-12.753,-12.757,-12.753,-12.698,-12.589,-12.453,
--12.297,-12.102,-11.868,-11.646,-11.485,-11.379,-11.289,-11.206,-11.155,-11.145,-11.137,-11.087,-10.996,-10.900,-10.826,-10.771,
--10.718,-10.657,-10.585,-10.512,-10.454,-10.409,-10.335,-10.189,-9.981,-9.780,-9.645,-9.561,-9.465,-9.329,-9.188,-9.080,
--8.994,-8.887,-8.732,-8.538,-8.329,-8.130,-7.965,-7.840,-7.737,-7.624,-7.496,-7.372,-7.259,-7.135,-6.986,-6.836,
--6.714,-6.615,-6.503,-6.366,-6.232,-6.117,-5.999,-5.851,-5.692,-5.569,-5.501,-5.463,-5.428,-5.390,-5.350,-5.291,
--5.213,-5.152,-5.150,-5.193,-5.219,-5.181,-5.102,-5.033,-4.990,-4.938,-4.846,-4.721,-4.610,-4.553,-4.561,-4.610,
--4.651,-4.653,-4.623,-4.597,-4.597,-4.605,-4.586,-4.528,-4.454,-4.393,-4.352,-4.309,-4.244,-4.152,-4.048,-3.952,
--3.871,-3.788,-3.686,-3.576,-3.489,-3.437,-3.383,-3.283,-3.140,-3.013,-2.951,-2.940,-2.921,-2.851,-2.747,-2.662,
--2.626,-2.614,-2.569,-2.461,-2.329,-2.242,-2.211,-2.176,-2.075,-1.924,-1.791,-1.696,-1.589,-1.435,-1.285,-1.212,
--1.215,-1.217,-1.160,-1.058,-.938,-.814,-.710,-.677,-.716,-.728,-.625,-.460,-.382,-.428,-.456,-.326,
--.098,.055,.093,.150,.318,.501,.557,.521,.572,.794,1.066,1.225,1.256,1.263,1.316,1.386,
-1.436,1.484,1.571,1.698,1.821,1.898,1.924,1.946,2.047,2.271,2.550,2.738,2.758,2.687,2.667,2.740,
-2.825,2.871,2.943,3.139,3.449,3.772,4.028,4.212,4.330,4.374,4.379,4.441,4.600,4.755,4.798,4.824,
-5.127,5.879,6.858,7.581,7.747,7.517,7.329,7.469,7.863,8.241,8.422,8.430,8.409,8.489,8.730,9.103,
-9.508,9.860,10.174,10.551,11.024,11.469,11.739,11.874,12.093,12.542,13.128,13.661,14.115,14.628,15.275,15.961,
-16.565,17.093,17.590,17.987,18.184,18.246,18.375,18.640,18.863,18.841,18.518,17.806,16.471,14.592,13.222,14.126,
-18.319,24.775,30.911,34.605,35.752,35.840,36.264,37.283,38.421,39.347,40.105,40.745,41.184,41.466,41.862,42.500,
-43.064,43.044,42.237,40.821,38.966,36.631,33.884,31.222,29.307,28.342,27.887,27.368,26.651,26.025,25.728,25.675,
-25.650,25.585,25.539,25.489,25.294,24.875,24.321,23.773,23.255,22.705,22.111,21.546,21.055,20.588,20.077,19.546,
-19.083,18.697,18.273,17.685,16.935,16.119,15.284,14.367,13.305,12.181,11.175,10.368,9.649,8.838,7.890,6.927,
-6.088,5.408,4.860,4.445,4.174,3.978,3.715,3.302,2.808,2.403,2.218,2.263,2.453,2.664,2.806,2.889,
-3.017,3.285,3.660,3.988,4.111,3.947,3.462,2.646,1.577,.472,-.427,-1.031,-1.420,-1.668,-1.750,-1.659,
--1.567,-1.729,-2.224,-2.853,-3.362,-3.700,-4.061,-4.683,-5.665,-6.920,-8.234,-9.369,-10.188,-10.724,-11.113,-11.428,
--11.619,-11.618,-11.476,-11.334,-11.278,-11.296,-11.368,-11.525,-11.777,-12.007,-12.027,-11.752,-11.301,-10.901,-10.693,-10.625,
--10.525,-10.268,-9.880,-9.498,-9.235,-9.084,-8.955,-8.787,-8.593,-8.401,-8.203,-7.971,-7.718,-7.491,-7.327,-7.229,
--7.178,-7.151,-7.099,-6.975,-6.774,-6.555,-6.371,-6.219,-6.069,-5.927,-5.829,-5.781,-5.744,-5.698,-5.659,-5.633,
--5.574,-5.434,-5.235,-5.052,-4.932,-4.854,-4.782,-4.699,-4.598,-4.458,-4.277,-4.087,-3.913,-3.738,-3.531,-3.308,
--3.119,-2.962,-2.773,-2.507,-2.194,-1.896,-1.625,-1.342,-1.029,-.710,-.402,-.099,.200,.474,.708,.934,
-1.187,1.460,1.722,1.971,2.235,2.519,2.794,3.037,3.267,3.512,3.771,4.025,4.276,4.541,4.822,5.103,
-5.383,5.673,5.975,6.276,6.572,6.879,7.202,7.519,7.814,8.106,8.423,8.754,9.059,9.330,9.604,9.915,
-10.257,10.605,10.944,11.262,11.541,11.773,11.980,12.177,12.334,12.410,12.423,12.459,12.572,12.726,12.846,12.916,
-12.980,13.071,13.168,13.244,13.302,13.364,13.432,13.490,13.535,13.578,13.625,13.674,13.736,13.825,13.940,14.071,
-14.219,14.387,14.556,14.697,14.815,14.961,15.170,15.413,15.639,15.838,16.041,16.256,16.458,16.642,16.844,17.088,
-17.342,17.563,17.758,17.970,18.205,18.432,18.641,18.859,19.094,19.308,19.479,19.644,19.847,19.958,20.163,20.349,
-20.544,20.796,21.112,21.446,21.756,22.034,22.276,22.459,22.591,22.753,23.026,23.386,23.729,24.019,24.333,24.740,
-25.212,25.721,26.350,27.172,27.996,28.380,28.021,27.091,26.086,25.349,24.846,24.401,24.029,23.894,24.027,24.229,
-24.294,24.237,24.208,24.254,24.259,24.132,23.961,23.901,23.981,24.093,24.186,24.392,24.863,25.537,26.148,26.529,
-26.850,27.453,28.434,29.475,30.155,30.397,30.526,30.875,31.436,31.953,32.286,32.579,33.036,33.649,34.171,34.326,
-33.973,33.133,31.965,30.748,29.778,29.189,28.855,28.536,28.130,27.752,27.584,27.675,27.892,28.041,28.003,27.797,
-27.534,27.311,27.109,26.820,26.379,25.869,25.459,25.237,25.154,25.124,25.114,25.106,25.026,24.820,24.564,24.438,
-24.522,24.691,24.731,24.525,24.088,23.504,22.914,22.535,22.522,22.755,22.887,22.692,22.314,22.033,21.856,21.533,
-21.041,20.816,21.301,22.304,23.022,22.756,21.475,19.644,17.712,15.971,14.776,14.513,15.147,15.984,16.142,15.315,
-13.973,12.804,12.103,11.730,11.492,11.366,11.374,11.423,11.347,11.054,10.551,9.912,9.277,8.830,8.653,8.567,
-8.245,7.545,6.700,6.097,5.880,5.845,5.711,5.399,5.019,4.661,4.315,3.969,3.681,3.504,3.411,3.336,
-3.279,3.293,3.386,3.482,3.503,3.454,3.377,3.268,3.064,2.754,2.482,2.541,3.225,4.578,6.227,7.537,
-8.084,8.047,8.043,8.485,9.133,9.387,8.981,8.238,7.597,7.060,6.276,5.099,3.860,2.996,2.577,2.328,
-2.036,1.752,1.595,1.527,1.415,1.232,1.071,.995,.968,.956,.981,1.049,1.098,1.076,1.023,1.008,
-1.014,.963,.848,.782,.860,1.046,1.228,1.354,1.443,1.506,1.516,1.482,1.469,1.512,1.554,1.512,
-1.394,1.281,1.208,1.114,.949,.769,.686,.732,.826,.868,.852,.842,.881,.935,.934,.849,
-.713,.590,.525,.523,.562,.616,.664,.690,.679,.629,.548,.455,.372,.313,.276,.234,
-.150,.023,-.108,-.213,-.327,-.509,-.762,-1.004,-1.171,-1.303,-1.500,-1.768,-1.994,-2.090,-2.130,-2.280,
--2.600,-2.972,-3.249,-3.430,-3.643,-3.983,-4.415,-4.855,-5.279,-5.716,-6.166,-6.584,-6.946,-7.297,-7.707,-8.191,
--8.708,-9.215,-9.709,-10.197,-10.672,-11.124,-11.551,-11.969,-12.400,-12.876,-13.431,-14.061,-14.703,-15.283,-15.787,-16.277,
--16.809,-17.362,-17.875,-18.328,-18.776,-19.279,-19.845,-20.437,-21.016,-21.545,-21.977,-22.282,-22.508,-22.763,-23.129,-23.591,
--24.072,-24.523,-24.954,-25.389,-25.822,-26.229,-26.591,-26.910,-27.205,-27.511,-27.859,-28.244,-28.636,-29.037,-29.501,-30.063,
--30.655,-31.131,-31.416,-31.577,-31.742,-31.943,-32.075,-32.012,-31.733,-31.355,-31.081,-31.121,-31.596,-32.456,-33.487,-34.449,
--35.217,-35.803,-36.277,-36.704,-37.153,-37.672,-38.222,-38.665,-38.894,-38.970,-39.077,-39.335,-39.690,-40.009,-40.240,-40.439,
--40.661,-40.896,-41.114,-41.312,-41.506,-41.683,-41.828,-41.959,-42.124,-42.331,-42.529,-42.666,-42.741,-42.797,-42.859,-42.919,
--42.963,-42.987,-42.990,-42.959,-42.876,-42.746,-42.602,-42.481,-42.395,-42.308,-42.148,-41.851,-41.418,-40.940,-40.558,-40.373,
--40.369,-40.428,-40.411,-40.265,-40.046,-39.847,-39.687,-39.493,-39.207,-38.890,-38.675,-38.587,-38.460,-38.099,-37.545,-37.098,
--37.035,-37.314,-37.618,-37.692,-37.566,-37.432,-37.385,-37.365,-37.318,-37.284,-37.282,-37.188,-36.841,-36.258,-35.650,-35.203,
--34.912,-34.671,-34.449,-34.276,-34.087,-33.697,-32.992,-32.069,-31.107,-30.143,-29.055,-27.767,-26.390,-25.120,-24.075,-23.275,
--22.722,-22.422,-22.304,-22.203,-21.961,-21.519,-20.900,-20.148,-19.330,-18.540,-17.852,-17.260,-16.730,-16.315,-16.142,-16.259,
--16.522,-16.704,-16.693,-16.536,-16.295,-15.933,-15.382,-14.667,-13.904,-13.164,-12.420,-11.627,-10.820,-10.097,-9.521,-9.061,
--8.643,-8.230,-7.850,-7.567,-7.412,-7.362,-7.375,-7.431,-7.532,-7.648,-7.697,-7.599,-7.341,-6.971,-6.531,-6.030,
--5.491,-4.980,-4.545,-4.155,-3.746,-3.332,-3.012,-2.836,-2.683,-2.355,-1.775,-1.080,-.485,-.077,.243,.660,
-1.272,2.008,2.677,3.094,3.199,3.087,2.912,2.783,2.726,2.730,2.797,2.945,3.188,3.536,3.990,4.518,
-5.063,5.596,6.167,6.873,7.770,8.819,9.932,11.014,11.986,12.782,13.389,13.878,14.379,14.995,15.748,16.584,
-17.404,18.110,18.647,19.063,19.475,19.966,20.524,21.101,21.707,22.386,23.096,23.689,24.059,24.266,24.486,24.821,
-25.227,25.611,25.949,26.280,26.615,26.912,27.143,27.342,27.598,28.006,28.612,29.364,30.127,30.776,31.308,31.849,
-32.519,33.337,34.242,35.185,36.154,37.112,37.997,38.803,39.597,40.436,41.275,42.018,42.634,43.184,43.712,44.165,
-44.458,44.591,44.663,44.787,45.007,45.303,45.632,45.946,46.195,46.352,46.433,46.482,46.507,46.450,46.257,46.010,
-45.912,46.062,46.198,45.789,44.557,42.925,41.786,41.682,42.246,42.577,42.174,41.367,40.834,40.871,41.265,41.724,
-42.180,42.640,43.007,43.195,43.285,43.373,43.376,43.220,43.222,43.967,45.584,47.303,48.035,47.449,46.299,45.624,
-45.792,46.407,46.955,47.299,47.567,47.831,48.042,48.162,48.193,48.113,47.916,47.698,47.599,47.611,47.553,47.315,
-47.057,47.067,47.445,47.999,48.452,48.698,48.835,49.038,49.445,50.093,50.865,51.525,51.893,52.036,52.216,52.589,
-52.989,53.107,52.870,52.567,52.533,52.759,52.898,52.680,52.245,52.003,52.182,52.605,52.912,52.936,52.800,52.693,
-52.652,52.595,52.483,52.362,52.272,52.183,52.058,51.911,51.776,51.642,51.470,51.255,51.036,50.832,50.627,50.409,
-50.201,50.016,49.829,49.624,49.425,49.263,49.127,49.010,48.981,49.122,49.386,49.574,49.552,49.455,49.579,50.051,
-50.656,51.039,51.065,50.913,50.855,50.947,50.987,50.753,50.236,49.563,48.613,46.779,43.343,38.336,33.015,29.239,
-28.113,29.194,31.049,32.523,33.393,33.953,34.333,34.406,34.150,33.779,33.428,32.968,32.228,31.288,30.375,29.548,
-28.670,27.694,26.783,26.076,25.457,24.713,23.837,23.025,22.382,21.788,21.109,20.416,19.870,19.469,19.021,18.394,
-17.661,16.980,16.410,15.918,15.494,15.170,14.919,14.623,14.186,13.645,13.123,12.695,12.323,11.919,11.448,10.968,
-10.570,10.293,10.093,9.905,9.722,9.591,9.518,9.420,9.206,8.880,8.539,8.244,7.967,7.666,7.368,7.117,
-6.877,6.545,6.093,5.622,5.250,4.973,4.678,4.293,3.854,3.450,3.129,2.878,2.667,2.473,2.280,2.089,
-1.914,1.765,1.621,1.446,1.224,.969,.708,.457,.235,.057,-.096,-.288,-.574,-.939,-1.300,-1.578,
--1.763,-1.904,-2.053,-2.217,-2.379,-2.557,-2.834,-3.261,-3.725,-3.959,-3.785,-3.373,-3.169,-3.480,-4.149,-4.725,
--4.937,-4.922,-4.958,-5.099,-5.196,-5.193,-5.264,-5.581,-6.078,-6.536,-6.845,-7.081,-7.337,-7.592,-7.788,-7.959,
--8.188,-8.480,-8.760,-8.975,-9.160,-9.361,-9.574,-9.771,-9.957,-10.155,-10.356,-10.533,-10.697,-10.888,-11.108,-11.295,
--11.394,-11.424,-11.458,-11.538,-11.651,-11.774,-11.904,-12.046,-12.182,-12.276,-12.310,-12.307,-12.312,-12.371,-12.491,-12.630,
--12.730,-12.757,-12.723,-12.662,-12.603,-12.570,-12.587,-12.657,-12.741,-12.786,-12.784,-12.774,-12.788,-12.804,-12.785,-12.725,
--12.640,-12.521,-12.340,-12.100,-11.859,-11.661,-11.495,-11.332,-11.188,-11.115,-11.114,-11.117,-11.058,-10.947,-10.849,-10.800,
--10.779,-10.747,-10.696,-10.640,-10.591,-10.549,-10.504,-10.434,-10.319,-10.163,-10.004,-9.869,-9.751,-9.618,-9.465,-9.320,
--9.204,-9.101,-8.978,-8.823,-8.644,-8.451,-8.258,-8.083,-7.944,-7.832,-7.715,-7.581,-7.451,-7.345,-7.252,-7.144,
--7.014,-6.884,-6.768,-6.656,-6.537,-6.412,-6.285,-6.149,-6.001,-5.856,-5.735,-5.643,-5.576,-5.536,-5.523,-5.512,
--5.467,-5.386,-5.318,-5.303,-5.323,-5.318,-5.261,-5.185,-5.133,-5.103,-5.055,-4.971,-4.868,-4.778,-4.716,-4.683,
--4.677,-4.688,-4.700,-4.707,-4.714,-4.721,-4.713,-4.670,-4.597,-4.521,-4.461,-4.409,-4.345,-4.258,-4.150,-4.037,
--3.934,-3.846,-3.764,-3.672,-3.576,-3.502,-3.460,-3.417,-3.324,-3.180,-3.050,-3.004,-3.030,-3.044,-2.977,-2.848,
--2.735,-2.686,-2.659,-2.585,-2.457,-2.343,-2.294,-2.260,-2.143,-1.926,-1.711,-1.602,-1.572,-1.494,-1.313,-1.117,
--1.026,-1.050,-1.092,-1.080,-1.018,-.930,-.808,-.669,-.586,-.600,-.642,-.606,-.489,-.398,-.383,-.364,
--.253,-.100,-.021,-.011,.064,.270,.489,.568,.533,.553,.726,.968,1.153,1.264,1.376,1.520,
-1.653,1.729,1.762,1.795,1.854,1.941,2.036,2.103,2.119,2.129,2.222,2.419,2.618,2.705,2.700,2.737,
-2.881,3.038,3.086,3.059,3.125,3.392,3.778,4.110,4.293,4.371,4.437,4.554,4.722,4.878,4.937,4.890,
-4.904,5.243,6.021,6.998,7.707,7.858,7.609,7.404,7.555,7.978,8.348,8.450,8.341,8.236,8.300,8.560,
-8.949,9.379,9.793,10.194,10.624,11.089,11.508,11.791,11.962,12.171,12.545,13.070,13.652,14.257,14.907,15.569,
-16.136,16.559,16.911,17.267,17.579,17.765,17.893,18.149,18.586,19.011,19.150,18.821,17.872,16.206,14.176,12.979,
-14.177,18.391,24.418,29.953,33.399,34.943,35.868,37.047,38.329,39.203,39.642,40.075,40.784,41.624,42.328,42.815,
-43.079,42.971,42.294,41.067,39.521,37.808,35.862,33.629,31.346,29.441,28.184,27.494,27.105,26.820,26.571,26.341,
-26.114,25.911,25.768,25.663,25.491,25.160,24.683,24.146,23.606,23.062,22.520,22.024,21.604,21.209,20.746,20.185,
-19.606,19.110,18.708,18.295,17.761,17.091,16.337,15.524,14.608,13.569,12.501,11.556,10.776,10.028,9.145,8.107,
-7.059,6.155,5.439,4.884,4.484,4.243,4.096,3.901,3.555,3.098,2.697,2.530,2.671,3.036,3.430,3.676,
-3.741,3.735,3.773,3.861,3.947,4.018,4.069,3.951,3.403,2.320,.978,-.134,-.723,-.893,-.934,-1.015,
--1.152,-1.383,-1.825,-2.512,-3.283,-3.919,-4.378,-4.852,-5.587,-6.677,-7.996,-9.277,-10.273,-10.889,-11.213,-11.404,
--11.534,-11.562,-11.449,-11.265,-11.133,-11.107,-11.162,-11.281,-11.492,-11.776,-11.992,-11.966,-11.659,-11.229,-10.903,-10.790,
--10.805,-10.764,-10.540,-10.162,-9.766,-9.465,-9.259,-9.078,-8.880,-8.683,-8.501,-8.294,-8.016,-7.684,-7.375,-7.146,
--6.994,-6.887,-6.799,-6.705,-6.578,-6.411,-6.231,-6.064,-5.903,-5.731,-5.572,-5.470,-5.427,-5.397,-5.351,-5.314,
--5.306,-5.287,-5.194,-5.022,-4.834,-4.689,-4.588,-4.502,-4.413,-4.309,-4.172,-3.993,-3.792,-3.594,-3.389,-3.155,
--2.905,-2.681,-2.488,-2.279,-2.011,-1.701,-1.395,-1.102,-.800,-.485,-.185,.083,.344,.614,.878,1.112,
-1.328,1.556,1.807,2.065,2.325,2.595,2.874,3.136,3.364,3.575,3.797,4.041,4.303,4.580,4.871,5.162,
-5.437,5.709,6.002,6.313,6.612,6.887,7.163,7.469,7.788,8.083,8.356,8.646,8.973,9.309,9.608,9.872,
-10.141,10.451,10.797,11.140,11.445,11.706,11.943,12.170,12.361,12.470,12.497,12.510,12.588,12.730,12.865,12.942,
-12.989,13.068,13.186,13.303,13.391,13.462,13.528,13.581,13.617,13.659,13.725,13.795,13.845,13.893,13.981,14.118,
-14.273,14.421,14.570,14.738,14.915,15.090,15.278,15.495,15.721,15.921,16.101,16.297,16.516,16.721,16.892,17.059,
-17.263,17.485,17.679,17.839,18.007,18.210,18.422,18.617,18.806,19.022,19.264,19.506,19.737,19.958,20.023,20.235,
-20.446,20.682,20.950,21.240,21.536,21.832,22.120,22.364,22.524,22.631,22.797,23.111,23.535,23.944,24.286,24.622,
-25.011,25.433,25.884,26.479,27.296,28.105,28.401,27.846,26.667,25.504,24.832,24.607,24.499,24.342,24.249,24.342,
-24.523,24.598,24.523,24.426,24.401,24.391,24.304,24.179,24.139,24.223,24.334,24.417,24.585,25.003,25.634,26.220,
-26.578,26.863,27.429,28.399,29.459,30.168,30.436,30.601,31.021,31.678,32.271,32.623,32.885,33.312,33.931,34.489,
-34.676,34.326,33.451,32.209,30.889,29.819,29.175,28.848,28.567,28.184,27.812,27.676,27.854,28.181,28.405,28.383,
-28.159,27.875,27.622,27.369,27.026,26.579,26.143,25.869,25.789,25.798,25.774,25.681,25.544,25.374,25.178,25.027,
-25.029,25.200,25.409,25.480,25.335,24.997,24.544,24.101,23.847,23.887,24.081,24.115,23.839,23.459,23.276,23.287,
-23.213,22.960,22.881,23.358,24.210,24.694,24.177,22.677,20.699,18.726,17.040,15.924,15.681,16.266,17.054,17.222,
-16.434,15.063,13.743,12.819,12.262,11.951,11.844,11.884,11.909,11.750,11.365,10.819,10.202,9.623,9.238,9.139,
-9.188,9.044,8.469,7.579,6.741,6.225,6.000,5.861,5.657,5.363,4.999,4.580,4.159,3.828,3.638,3.554,
-3.508,3.496,3.565,3.723,3.897,3.989,3.962,3.846,3.693,3.533,3.373,3.248,3.288,3.711,4.651,5.942,
-7.123,7.798,8.014,8.205,8.679,9.243,9.426,9.033,8.332,7.669,7.039,6.193,5.084,4.021,3.328,2.996,
-2.768,2.490,2.228,2.077,1.984,1.840,1.637,1.462,1.357,1.293,1.256,1.279,1.359,1.426,1.425,1.388,
-1.363,1.330,1.242,1.140,1.142,1.301,1.523,1.677,1.741,1.784,1.846,1.895,1.903,1.900,1.917,1.930,
-1.893,1.818,1.748,1.683,1.571,1.400,1.245,1.198,1.252,1.308,1.289,1.224,1.204,1.256,1.303,1.249,
-1.082,.903,.821,.847,.902,.917,.917,.977,1.111,1.231,1.244,1.150,1.031,.952,.894,.805,
-.665,.511,.391,.320,.260,.145,-.066,-.332,-.549,-.642,-.647,-.662,-.738,-.835,-.928,-1.084,
--1.400,-1.850,-2.277,-2.557,-2.735,-2.961,-3.312,-3.731,-4.140,-4.534,-4.954,-5.394,-5.801,-6.165,-6.541,-6.983,
--7.477,-7.975,-8.457,-8.936,-9.415,-9.875,-10.306,-10.728,-11.166,-11.634,-12.146,-12.731,-13.387,-14.048,-14.630,-15.115,
--15.571,-16.063,-16.576,-17.060,-17.515,-18.004,-18.575,-19.202,-19.810,-20.343,-20.775,-21.104,-21.360,-21.619,-21.964,-22.416,
--22.913,-23.386,-23.825,-24.259,-24.697,-25.110,-25.473,-25.795,-26.103,-26.415,-26.745,-27.104,-27.488,-27.887,-28.319,-28.828,
--29.414,-29.984,-30.410,-30.662,-30.841,-31.056,-31.283,-31.379,-31.239,-30.909,-30.566,-30.409,-30.580,-31.118,-31.953,-32.924,
--33.867,-34.674,-35.310,-35.788,-36.168,-36.560,-37.053,-37.614,-38.089,-38.356,-38.472,-38.612,-38.886,-39.235,-39.537,-39.750,
--39.938,-40.161,-40.411,-40.645,-40.847,-41.028,-41.198,-41.363,-41.545,-41.764,-42.011,-42.239,-42.406,-42.509,-42.570,-42.615,
--42.656,-42.692,-42.711,-42.689,-42.611,-42.482,-42.333,-42.205,-42.129,-42.084,-41.986,-41.716,-41.209,-40.543,-39.925,-39.570,
--39.553,-39.775,-40.038,-40.172,-40.120,-39.948,-39.765,-39.619,-39.451,-39.178,-38.826,-38.535,-38.407,-38.358,-38.177,-37.775,
--37.305,-37.027,-37.045,-37.230,-37.385,-37.420,-37.361,-37.254,-37.145,-37.120,-37.254,-37.484,-37.593,-37.407,-36.972,-36.492,
--36.095,-35.736,-35.343,-34.963,-34.678,-34.413,-33.956,-33.190,-32.236,-31.298,-30.407,-29.402,-28.157,-26.762,-25.447,-24.392,
--23.639,-23.144,-22.836,-22.632,-22.444,-22.202,-21.845,-21.305,-20.546,-19.654,-18.814,-18.159,-17.651,-17.168,-16.709,-16.424,
--16.424,-16.611,-16.768,-16.769,-16.640,-16.425,-16.068,-15.505,-14.789,-14.067,-13.417,-12.794,-12.135,-11.481,-10.931,-10.507,
--10.120,-9.678,-9.203,-8.815,-8.605,-8.554,-8.569,-8.573,-8.549,-8.507,-8.433,-8.291,-8.069,-7.784,-7.451,-7.067,
--6.652,-6.272,-5.989,-5.750,-5.391,-4.792,-4.026,-3.299,-2.745,-2.293,-1.781,-1.160,-.563,-.158,.041,.210,
-.579,1.250,2.110,2.899,3.372,3.445,3.207,2.814,2.385,1.991,1.698,1.576,1.652,1.897,2.269,2.750,
-3.326,3.967,4.650,5.403,6.282,7.296,8.378,9.432,10.390,11.213,11.879,12.402,12.854,13.335,13.914,14.599,
-15.361,16.144,16.866,17.457,17.930,18.385,18.911,19.487,20.041,20.567,21.135,21.762,22.336,22.737,23.002,23.306,
-23.762,24.300,24.761,25.075,25.314,25.576,25.885,26.201,26.516,26.887,27.393,28.051,28.775,29.427,29.928,30.337,
-30.813,31.487,32.377,33.405,34.467,35.474,36.369,37.155,37.917,38.750,39.642,40.455,41.071,41.520,41.944,42.416,
-42.852,43.126,43.239,43.329,43.536,43.884,44.312,44.760,45.194,45.564,45.797,45.874,45.888,45.948,46.026,45.954,
-45.666,45.383,45.402,45.637,45.491,44.425,42.668,41.180,40.758,41.232,41.702,41.533,40.924,40.487,40.498,40.758,
-41.039,41.353,41.754,42.115,42.295,42.364,42.472,42.580,42.577,42.663,43.321,44.684,46.117,46.717,46.247,45.387,
-44.990,45.274,45.844,46.313,46.661,47.014,47.348,47.547,47.599,47.594,47.555,47.439,47.283,47.211,47.253,47.254,
-47.070,46.793,46.686,46.902,47.338,47.766,48.063,48.278,48.560,49.036,49.722,50.466,51.028,51.274,51.335,51.500,
-51.901,52.354,52.539,52.368,52.085,52.010,52.190,52.370,52.291,51.993,51.764,51.840,52.166,52.481,52.596,52.538,
-52.447,52.400,52.363,52.292,52.197,52.099,51.981,51.811,51.603,51.411,51.260,51.123,50.965,50.778,50.575,50.362,
-50.139,49.916,49.710,49.528,49.365,49.208,49.037,48.850,48.715,48.748,48.987,49.286,49.416,49.311,49.193,49.365,
-49.880,50.462,50.781,50.762,50.609,50.552,50.615,50.622,50.393,49.882,49.093,47.820,45.559,41.877,37.072,32.422,
-29.512,29.065,30.391,32.068,33.144,33.640,34.003,34.364,34.488,34.242,33.806,33.378,32.896,32.199,31.318,30.440,
-29.629,28.766,27.792,26.850,26.091,25.447,24.730,23.901,23.103,22.436,21.827,21.176,20.528,19.995,19.558,19.065,
-18.424,17.710,17.045,16.465,15.942,15.487,15.144,14.877,14.559,14.097,13.539,13.013,12.592,12.235,11.852,11.406,
-10.945,10.544,10.230,9.964,9.699,9.451,9.282,9.212,9.155,8.996,8.710,8.379,8.077,7.797,7.499,7.199,
-6.944,6.716,6.425,6.017,5.550,5.133,4.800,4.489,4.131,3.733,3.350,3.025,2.753,2.505,2.262,2.031,
-1.834,1.690,1.582,1.462,1.294,1.085,.862,.636,.401,.172,-.011,-.135,-.259,-.474,-.814,-1.201,
--1.500,-1.627,-1.633,-1.665,-1.839,-2.133,-2.448,-2.746,-3.091,-3.496,-3.786,-3.752,-3.454,-3.279,-3.558,-4.161,
--4.602,-4.584,-4.323,-4.266,-4.570,-4.990,-5.253,-5.381,-5.579,-5.923,-6.293,-6.582,-6.829,-7.110,-7.406,-7.639,
--7.811,-8.003,-8.264,-8.552,-8.807,-9.030,-9.250,-9.474,-9.688,-9.899,-10.121,-10.344,-10.539,-10.711,-10.894,-11.101,
--11.286,-11.400,-11.450,-11.501,-11.597,-11.729,-11.862,-11.981,-12.094,-12.213,-12.328,-12.416,-12.466,-12.490,-12.524,-12.594,
--12.680,-12.736,-12.731,-12.683,-12.636,-12.616,-12.629,-12.672,-12.732,-12.783,-12.799,-12.782,-12.766,-12.773,-12.792,-12.798,
--12.783,-12.747,-12.668,-12.525,-12.340,-12.164,-12.013,-11.846,-11.633,-11.420,-11.286,-11.237,-11.194,-11.091,-10.956,-10.862,
--10.835,-10.826,-10.787,-10.725,-10.675,-10.641,-10.600,-10.532,-10.442,-10.337,-10.225,-10.110,-9.992,-9.864,-9.717,-9.561,
--9.417,-9.294,-9.176,-9.046,-8.905,-8.761,-8.606,-8.431,-8.250,-8.091,-7.957,-7.822,-7.668,-7.516,-7.406,-7.341,
--7.277,-7.178,-7.048,-6.923,-6.820,-6.726,-6.614,-6.471,-6.310,-6.155,-6.017,-5.889,-5.767,-5.670,-5.634,-5.658,
--5.688,-5.663,-5.582,-5.502,-5.466,-5.452,-5.413,-5.344,-5.287,-5.264,-5.243,-5.185,-5.096,-5.009,-4.941,-4.878,
--4.813,-4.763,-4.745,-4.752,-4.764,-4.770,-4.766,-4.747,-4.705,-4.648,-4.596,-4.555,-4.509,-4.437,-4.335,-4.216,
--4.092,-3.977,-3.882,-3.807,-3.740,-3.668,-3.598,-3.543,-3.487,-3.395,-3.261,-3.137,-3.088,-3.108,-3.116,-3.043,
--2.912,-2.804,-2.749,-2.689,-2.560,-2.396,-2.297,-2.289,-2.263,-2.090,-1.795,-1.560,-1.520,-1.601,-1.609,-1.457,
--1.254,-1.151,-1.165,-1.195,-1.172,-1.119,-1.061,-.965,-.807,-.651,-.583,-.592,-.577,-.476,-.330,-.202,
--.093,.015,.083,.065,.014,.061,.254,.482,.602,.608,.615,.703,.839,.965,1.090,1.256,
-1.453,1.623,1.729,1.776,1.788,1.795,1.847,1.970,2.115,2.187,2.163,2.141,2.224,2.387,2.526,2.627,
-2.803,3.124,3.467,3.628,3.578,3.514,3.650,3.986,4.340,4.566,4.693,4.842,5.073,5.342,5.560,5.684,
-5.740,5.831,6.084,6.538,7.054,7.387,7.408,7.256,7.233,7.504,7.940,8.269,8.350,8.277,8.235,8.323,
-8.537,8.855,9.277,9.771,10.267,10.712,11.113,11.494,11.842,12.135,12.401,12.716,13.149,13.714,14.369,15.031,
-15.594,15.988,16.247,16.483,16.762,17.039,17.257,17.474,17.821,18.333,18.863,19.158,18.928,17.891,15.993,13.849,
-12.863,14.470,18.900,24.693,29.714,32.800,34.416,35.749,37.363,38.878,39.757,40.073,40.392,41.110,42.103,42.953,
-43.323,43.090,42.288,41.074,39.684,38.294,36.878,35.272,33.398,31.408,29.607,28.257,27.448,27.082,26.928,26.740,
-26.416,26.059,25.837,25.771,25.694,25.438,25.000,24.500,24.007,23.489,22.923,22.382,21.958,21.635,21.289,20.816,
-20.230,19.625,19.082,18.609,18.163,17.692,17.156,16.525,15.763,14.850,13.824,12.793,11.873,11.074,10.285,9.379,
-8.349,7.309,6.381,5.610,4.999,4.558,4.290,4.128,3.948,3.667,3.313,3.021,2.947,3.170,3.623,4.103,
-4.403,4.452,4.338,4.174,4.010,3.884,3.893,4.069,4.172,3.768,2.643,1.131,-.093,-.595,-.524,-.373,
--.509,-.974,-1.648,-2.433,-3.249,-3.982,-4.550,-5.033,-5.646,-6.569,-7.783,-9.074,-10.167,-10.878,-11.205,-11.292,
--11.297,-11.277,-11.198,-11.044,-10.881,-10.801,-10.830,-10.941,-11.126,-11.394,-11.684,-11.848,-11.762,-11.456,-11.117,-10.930,
--10.940,-11.035,-11.044,-10.860,-10.508,-10.102,-9.747,-9.464,-9.214,-8.976,-8.763,-8.571,-8.342,-8.022,-7.638,-7.279,
--7.006,-6.807,-6.646,-6.504,-6.379,-6.249,-6.087,-5.895,-5.696,-5.504,-5.321,-5.166,-5.069,-5.028,-5.004,-4.973,
--4.946,-4.936,-4.914,-4.833,-4.694,-4.547,-4.429,-4.327,-4.219,-4.101,-3.980,-3.838,-3.654,-3.430,-3.191,-2.946,
--2.686,-2.420,-2.177,-1.970,-1.765,-1.522,-1.234,-.923,-.598,-.262,.065,.347,.579,.802,1.053,1.320,
-1.565,1.774,1.973,2.186,2.420,2.671,2.939,3.211,3.466,3.690,3.897,4.112,4.350,4.617,4.914,5.229,
-5.531,5.804,6.067,6.355,6.668,6.962,7.216,7.460,7.743,8.057,8.354,8.612,8.871,9.179,9.523,9.842,
-10.104,10.345,10.627,10.965,11.314,11.623,11.886,12.137,12.382,12.571,12.653,12.652,12.665,12.758,12.897,12.998,
-13.039,13.081,13.182,13.319,13.434,13.510,13.577,13.646,13.698,13.730,13.780,13.867,13.963,14.030,14.089,14.193,
-14.351,14.513,14.644,14.767,14.926,15.120,15.319,15.509,15.699,15.886,16.059,16.232,16.436,16.665,16.872,17.031,
-17.185,17.387,17.621,17.819,17.959,18.092,18.267,18.466,18.640,18.790,18.971,19.219,19.508,19.785,20.023,20.045,
-20.272,20.519,20.784,21.043,21.282,21.523,21.797,22.097,22.372,22.578,22.751,23.000,23.386,23.847,24.270,24.635,
-25.023,25.476,25.926,26.334,26.822,27.533,28.293,28.579,27.961,26.601,25.204,24.412,24.293,24.450,24.531,24.524,
-24.582,24.718,24.784,24.694,24.540,24.460,24.463,24.459,24.410,24.375,24.414,24.499,24.601,24.793,25.182,25.740,
-26.269,26.635,26.978,27.596,28.570,29.594,30.256,30.488,30.636,31.068,31.773,32.430,32.814,33.040,33.377,33.912,
-34.447,34.681,34.410,33.605,32.405,31.100,30.026,29.364,29.011,28.705,28.312,27.961,27.880,28.122,28.485,28.700,
-28.654,28.440,28.208,28.006,27.752,27.354,26.847,26.408,26.203,26.231,26.316,26.278,26.077,25.800,25.552,25.392,
-25.358,25.467,25.671,25.854,25.916,25.844,25.680,25.456,25.210,25.035,25.020,25.102,25.084,24.866,24.600,24.520,
-24.645,24.776,24.830,25.015,25.523,26.109,26.161,25.264,23.588,21.664,19.900,18.452,17.459,17.142,17.505,18.083,
-18.184,17.449,16.108,14.689,13.573,12.858,12.497,12.403,12.426,12.369,12.109,11.666,11.124,10.536,9.977,9.614,
-9.582,9.769,9.796,9.328,8.388,7.338,6.551,6.138,5.962,5.826,5.607,5.260,4.814,4.364,4.027,3.856,
-3.810,3.820,3.870,3.984,4.163,4.353,4.475,4.474,4.342,4.136,3.956,3.884,3.931,4.073,4.357,4.901,
-5.732,6.671,7.454,7.998,8.442,8.903,9.239,9.189,8.706,8.039,7.441,6.891,6.208,5.361,4.558,3.992,
-3.633,3.324,3.010,2.765,2.621,2.491,2.290,2.050,1.865,1.759,1.685,1.623,1.608,1.653,1.708,1.721,
-1.695,1.655,1.594,1.509,1.464,1.548,1.756,1.968,2.077,2.099,2.124,2.194,2.267,2.295,2.288,2.279,
-2.276,2.264,2.239,2.200,2.129,2.012,1.879,1.796,1.793,1.818,1.787,1.683,1.572,1.537,1.575,1.596,
-1.514,1.352,1.232,1.251,1.359,1.413,1.350,1.278,1.358,1.600,1.832,1.894,1.800,1.688,1.624,1.535,
-1.347,1.109,.946,.904,.905,.834,.659,.435,.246,.152,.162,.235,.297,.289,.183,-.037,
--.392,-.861,-1.338,-1.691,-1.888,-2.044,-2.297,-2.669,-3.074,-3.449,-3.818,-4.226,-4.654,-5.049,-5.417,-5.820,
--6.288,-6.777,-7.238,-7.682,-8.146,-8.626,-9.077,-9.491,-9.914,-10.394,-10.927,-11.493,-12.093,-12.731,-13.366,-13.932,
--14.410,-14.852,-15.314,-15.798,-16.275,-16.757,-17.294,-17.905,-18.537,-19.111,-19.579,-19.937,-20.216,-20.473,-20.786,-21.203,
--21.704,-22.217,-22.698,-23.156,-23.611,-24.039,-24.401,-24.702,-24.992,-25.317,-25.675,-26.041,-26.404,-26.778,-27.189,-27.664,
--28.214,-28.790,-29.292,-29.648,-29.894,-30.138,-30.422,-30.645,-30.660,-30.432,-30.093,-29.850,-29.859,-30.177,-30.781,-31.585,
--32.476,-33.349,-34.132,-34.776,-35.260,-35.620,-35.976,-36.443,-37.013,-37.539,-37.884,-38.070,-38.243,-38.509,-38.833,-39.120,
--39.336,-39.533,-39.760,-40.010,-40.244,-40.442,-40.615,-40.785,-40.968,-41.170,-41.393,-41.631,-41.868,-42.077,-42.227,-42.301,
--42.318,-42.326,-42.359,-42.392,-42.366,-42.248,-42.072,-41.907,-41.804,-41.766,-41.739,-41.608,-41.238,-40.584,-39.791,-39.147,
--38.897,-39.069,-39.475,-39.857,-40.050,-40.026,-39.866,-39.682,-39.540,-39.408,-39.196,-38.868,-38.512,-38.265,-38.161,-38.090,
--37.919,-37.634,-37.339,-37.137,-37.048,-37.039,-37.069,-37.093,-37.065,-37.006,-37.019,-37.196,-37.479,-37.678,-37.650,-37.438,
--37.173,-36.887,-36.493,-35.968,-35.444,-35.063,-34.762,-34.312,-33.577,-32.659,-31.755,-30.900,-29.932,-28.711,-27.310,-25.969,
--24.900,-24.157,-23.658,-23.286,-22.968,-22.694,-22.452,-22.157,-21.659,-20.881,-19.949,-19.123,-18.550,-18.132,-17.672,-17.135,
--16.699,-16.526,-16.567,-16.641,-16.637,-16.573,-16.452,-16.173,-15.638,-14.897,-14.120,-13.423,-12.794,-12.197,-11.677,-11.316,
--11.095,-10.879,-10.559,-10.170,-9.850,-9.697,-9.689,-9.735,-9.762,-9.729,-9.592,-9.312,-8.908,-8.476,-8.109,-7.805,
--7.492,-7.148,-6.859,-6.712,-6.639,-6.424,-5.886,-5.046,-4.089,-3.170,-2.308,-1.468,-.693,-.109,.208,.344,
-.527,.981,1.760,2.691,3.472,3.860,3.804,3.421,2.855,2.202,1.549,1.040,.812,.891,1.175,1.556,
-2.016,2.602,3.334,4.186,5.130,6.151,7.198,8.170,8.987,9.645,10.207,10.735,11.268,11.833,12.438,13.065,
-13.688,14.315,14.971,15.639,16.257,16.801,17.337,17.947,18.615,19.237,19.760,20.239,20.741,21.230,21.619,21.922,
-22.273,22.771,23.343,23.816,24.104,24.289,24.519,24.869,25.310,25.791,26.301,26.859,27.463,28.067,28.613,29.089,
-29.552,30.098,30.806,31.687,32.686,33.709,34.662,35.503,36.279,37.092,37.990,38.880,39.586,40.020,40.283,40.563,
-40.939,41.321,41.580,41.719,41.877,42.189,42.668,43.237,43.832,44.426,44.951,45.284,45.363,45.312,45.343,45.496,
-45.552,45.323,44.981,44.926,45.202,45.201,44.206,42.289,40.448,39.690,40.038,40.619,40.682,40.298,40.016,40.094,
-40.321,40.476,40.636,40.939,41.296,41.510,41.578,41.650,41.756,41.809,41.905,42.366,43.312,44.331,44.824,44.676,
-44.377,44.442,44.885,45.367,45.703,46.006,46.390,46.749,46.933,46.977,47.020,47.079,47.047,46.905,46.785,46.785,
-46.809,46.702,46.476,46.330,46.427,46.738,47.104,47.417,47.713,48.124,48.743,49.512,50.219,50.640,50.747,50.755,
-50.935,51.346,51.781,51.987,51.908,51.725,51.658,51.765,51.915,51.936,51.792,51.622,51.612,51.812,52.086,52.249,
-52.247,52.168,52.115,52.090,52.034,51.923,51.790,51.651,51.485,51.275,51.062,50.905,50.807,50.713,50.567,50.370,
-50.153,49.931,49.692,49.435,49.196,49.021,48.901,48.770,48.594,48.459,48.521,48.819,49.166,49.304,49.191,49.090,
-49.306,49.846,50.389,50.611,50.495,50.289,50.222,50.283,50.269,49.982,49.340,48.285,46.602,43.911,40.017,35.420,
-31.404,29.338,29.632,31.356,33.016,33.770,33.863,33.958,34.269,34.463,34.241,33.718,33.189,32.716,32.130,31.341,
-30.454,29.584,28.712,27.791,26.883,26.092,25.407,24.712,23.945,23.159,22.423,21.736,21.086,20.510,20.036,19.596,
-19.073,18.438,17.772,17.154,16.581,16.029,15.535,15.151,14.841,14.494,14.036,13.514,13.027,12.614,12.233,11.823,
-11.372,10.920,10.514,10.167,9.856,9.552,9.274,9.078,8.982,8.913,8.767,8.517,8.225,7.957,7.697,7.396,
-7.061,6.756,6.505,6.245,5.898,5.467,5.026,4.633,4.280,3.930,3.574,3.237,2.935,2.652,2.362,2.067,
-1.802,1.608,1.490,1.400,1.276,1.095,.887,.683,.482,.263,.033,-.162,-.291,-.389,-.542,-.814,
--1.171,-1.479,-1.603,-1.541,-1.465,-1.574,-1.901,-2.288,-2.593,-2.855,-3.190,-3.556,-3.749,-3.707,-3.677,-3.940,
--4.398,-4.599,-4.267,-3.695,-3.470,-3.846,-4.521,-5.036,-5.265,-5.422,-5.695,-6.042,-6.338,-6.575,-6.839,-7.145,
--7.420,-7.615,-7.780,-7.989,-8.256,-8.546,-8.831,-9.104,-9.358,-9.590,-9.813,-10.043,-10.272,-10.475,-10.651,-10.828,
--11.025,-11.215,-11.359,-11.453,-11.539,-11.656,-11.802,-11.942,-12.048,-12.122,-12.196,-12.299,-12.434,-12.573,-12.682,-12.758,
--12.819,-12.870,-12.886,-12.849,-12.782,-12.732,-12.727,-12.755,-12.790,-12.813,-12.822,-12.818,-12.807,-12.799,-12.797,-12.800,
--12.802,-12.799,-12.778,-12.715,-12.606,-12.493,-12.415,-12.354,-12.235,-12.025,-11.785,-11.606,-11.501,-11.399,-11.249,-11.091,
--10.995,-10.965,-10.938,-10.874,-10.798,-10.750,-10.720,-10.664,-10.560,-10.430,-10.308,-10.205,-10.111,-10.015,-9.908,-9.783,
--9.646,-9.506,-9.371,-9.238,-9.109,-8.994,-8.892,-8.778,-8.628,-8.447,-8.275,-8.130,-7.990,-7.829,-7.664,-7.543,
--7.482,-7.438,-7.357,-7.233,-7.110,-7.020,-6.944,-6.835,-6.671,-6.486,-6.326,-6.196,-6.065,-5.919,-5.800,-5.768,
--5.818,-5.866,-5.833,-5.731,-5.635,-5.592,-5.571,-5.524,-5.458,-5.418,-5.410,-5.386,-5.311,-5.207,-5.123,-5.066,
--5.008,-4.937,-4.881,-4.860,-4.858,-4.843,-4.810,-4.777,-4.750,-4.718,-4.680,-4.647,-4.626,-4.600,-4.547,-4.463,
--4.355,-4.231,-4.100,-3.982,-3.896,-3.836,-3.776,-3.700,-3.617,-3.534,-3.440,-3.327,-3.216,-3.145,-3.109,-3.058,
--2.960,-2.848,-2.777,-2.735,-2.639,-2.448,-2.245,-2.160,-2.204,-2.222,-2.061,-1.770,-1.564,-1.591,-1.758,-1.841,
--1.740,-1.569,-1.479,-1.478,-1.459,-1.372,-1.272,-1.212,-1.147,-1.009,-.819,-.676,-.622,-.588,-.491,-.323,
--.139,.015,.120,.153,.109,.049,.073,.220,.421,.571,.641,.681,.731,.795,.869,.969,
-1.101,1.240,1.360,1.462,1.548,1.593,1.594,1.613,1.726,1.914,2.057,2.082,2.058,2.112,2.261,2.419,
-2.564,2.803,3.220,3.696,3.990,4.002,3.893,3.910,4.128,4.420,4.653,4.833,5.047,5.322,5.599,5.832,
-6.046,6.277,6.512,6.699,6.804,6.832,6.806,6.771,6.813,7.019,7.392,7.815,8.155,8.379,8.540,8.670,
-8.747,8.785,8.909,9.259,9.815,10.387,10.808,11.101,11.422,11.858,12.335,12.737,13.057,13.408,13.885,14.460,
-15.004,15.406,15.667,15.881,16.141,16.459,16.791,17.103,17.410,17.745,18.124,18.532,18.860,18.786,17.838,15.885,
-13.710,12.931,14.941,19.651,25.352,29.994,32.731,34.242,35.668,37.440,39.132,40.220,40.716,41.070,41.661,42.473,
-43.163,43.321,42.730,41.514,40.058,38.712,37.511,36.212,34.619,32.813,31.061,29.574,28.423,27.621,27.141,26.848,
-26.536,26.128,25.771,25.646,25.696,25.655,25.340,24.836,24.334,23.890,23.417,22.880,22.376,21.993,21.677,21.296,
-20.800,20.241,19.668,19.080,18.476,17.914,17.447,17.038,16.563,15.909,15.054,14.066,13.055,12.110,11.250,10.423,
-9.553,8.614,7.642,6.707,5.878,5.214,4.756,4.484,4.308,4.123,3.889,3.652,3.504,3.536,3.795,4.230,
-4.674,4.933,4.920,4.702,4.396,4.088,3.862,3.836,4.016,4.111,3.650,2.438,.879,-.281,-.603,-.321,
--.069,-.312,-1.072,-2.088,-3.097,-3.955,-4.617,-5.142,-5.699,-6.486,-7.567,-8.805,-9.937,-10.734,-11.116,-11.171,
--11.074,-10.971,-10.894,-10.801,-10.667,-10.542,-10.489,-10.530,-10.659,-10.877,-11.171,-11.455,-11.587,-11.492,-11.245,-11.019,
--10.944,-11.019,-11.136,-11.161,-11.007,-10.682,-10.275,-9.889,-9.565,-9.278,-9.003,-8.744,-8.497,-8.219,-7.867,-7.463,
--7.084,-6.783,-6.546,-6.340,-6.161,-6.015,-5.881,-5.717,-5.515,-5.307,-5.123,-4.964,-4.823,-4.710,-4.642,-4.613,
--4.605,-4.599,-4.575,-4.509,-4.397,-4.270,-4.170,-4.096,-4.006,-3.876,-3.724,-3.580,-3.430,-3.237,-2.994,-2.732,
--2.478,-2.230,-1.984,-1.751,-1.544,-1.346,-1.121,-.853,-.549,-.220,.119,.439,.709,.931,1.147,1.393,
-1.660,1.910,2.125,2.324,2.535,2.768,3.019,3.282,3.546,3.796,4.026,4.244,4.465,4.700,4.956,5.245,
-5.557,5.864,6.139,6.397,6.674,6.978,7.270,7.520,7.756,8.030,8.347,8.654,8.914,9.153,9.430,9.751,
-10.064,10.326,10.562,10.836,11.173,11.521,11.819,12.065,12.303,12.544,12.732,12.807,12.801,12.816,12.916,13.057,
-13.154,13.197,13.252,13.361,13.485,13.566,13.606,13.652,13.720,13.779,13.818,13.870,13.966,14.079,14.177,14.271,
-14.404,14.575,14.737,14.862,14.984,15.143,15.332,15.511,15.669,15.828,15.996,16.165,16.343,16.549,16.774,16.971,
-17.126,17.290,17.517,17.777,17.986,18.114,18.230,18.401,18.608,18.779,18.900,19.039,19.256,19.534,19.807,20.045,
-20.098,20.347,20.625,20.903,21.142,21.343,21.550,21.807,22.109,22.415,22.695,22.981,23.339,23.776,24.211,24.570,
-24.905,25.347,25.923,26.485,26.892,27.229,27.716,28.329,28.629,28.116,26.794,25.291,24.342,24.173,24.434,24.667,
-24.728,24.751,24.826,24.869,24.776,24.603,24.501,24.527,24.599,24.616,24.584,24.575,24.629,24.751,24.972,25.345,
-25.843,26.336,26.743,27.180,27.868,28.841,29.815,30.423,30.606,30.691,31.041,31.684,32.328,32.723,32.921,33.174,
-33.627,34.160,34.483,34.333,33.624,32.493,31.264,30.277,29.678,29.336,29.014,28.636,28.358,28.368,28.641,28.943,
-29.044,28.914,28.698,28.534,28.406,28.172,27.728,27.150,26.670,26.489,26.588,26.732,26.678,26.377,25.986,25.700,
-25.617,25.715,25.914,26.116,26.239,26.269,26.258,26.258,26.242,26.150,25.996,25.884,25.873,25.890,25.829,25.702,
-25.634,25.708,25.909,26.227,26.711,27.296,27.641,27.293,26.103,24.395,22.671,21.206,20.004,19.083,18.619,18.691,
-19.006,19.014,18.338,17.058,15.585,14.332,13.515,13.140,13.053,13.016,12.834,12.471,12.009,11.503,10.943,10.385,
-10.037,10.075,10.370,10.473,9.985,8.919,7.683,6.721,6.199,5.994,5.888,5.718,5.413,5.000,4.578,4.272,
-4.139,4.150,4.240,4.368,4.521,4.684,4.838,4.958,5.000,4.911,4.699,4.487,4.435,4.589,4.831,5.039,
-5.257,5.655,6.325,7.169,7.991,8.647,9.057,9.138,8.844,8.278,7.677,7.214,6.850,6.424,5.869,5.277,
-4.757,4.320,3.928,3.592,3.352,3.179,2.985,2.731,2.482,2.312,2.214,2.124,2.021,1.949,1.936,1.954,
-1.961,1.943,1.912,1.875,1.852,1.888,2.014,2.192,2.337,2.409,2.448,2.515,2.616,2.701,2.732,2.718,
-2.689,2.669,2.664,2.659,2.623,2.534,2.414,2.322,2.300,2.315,2.293,2.193,2.048,1.933,1.890,1.897,
-1.885,1.806,1.693,1.648,1.732,1.872,1.922,1.842,1.781,1.919,2.236,2.515,2.581,2.485,2.392,2.339,
-2.206,1.933,1.648,1.528,1.571,1.598,1.475,1.270,1.150,1.180,1.274,1.314,1.254,1.117,.921,.650,
-.280,-.173,-.632,-.989,-1.186,-1.283,-1.421,-1.693,-2.068,-2.447,-2.793,-3.149,-3.549,-3.958,-4.332,-4.698,
--5.120,-5.605,-6.084,-6.515,-6.934,-7.396,-7.881,-8.324,-8.715,-9.132,-9.643,-10.231,-10.833,-11.419,-12.001,-12.580,
--13.126,-13.617,-14.077,-14.542,-15.024,-15.517,-16.036,-16.603,-17.206,-17.789,-18.292,-18.696,-19.018,-19.301,-19.603,-19.982,
--20.456,-20.987,-21.512,-22.009,-22.491,-22.955,-23.360,-23.678,-23.946,-24.242,-24.607,-25.010,-25.401,-25.764,-26.133,-26.557,
--27.063,-27.623,-28.154,-28.571,-28.869,-29.138,-29.458,-29.786,-29.970,-29.901,-29.637,-29.362,-29.256,-29.403,-29.815,-30.457,
--31.253,-32.096,-32.891,-33.595,-34.191,-34.663,-35.035,-35.399,-35.869,-36.455,-37.032,-37.451,-37.697,-37.882,-38.117,-38.406,
--38.682,-38.907,-39.107,-39.327,-39.574,-39.822,-40.046,-40.243,-40.431,-40.622,-40.816,-41.008,-41.212,-41.451,-41.711,-41.924,
--42.014,-41.987,-41.939,-41.958,-42.022,-42.031,-41.923,-41.740,-41.574,-41.480,-41.444,-41.400,-41.244,-40.869,-40.252,-39.546,
--39.026,-38.901,-39.144,-39.536,-39.847,-39.975,-39.940,-39.800,-39.618,-39.443,-39.290,-39.114,-38.858,-38.532,-38.225,-38.029,
--37.952,-37.920,-37.843,-37.676,-37.434,-37.184,-37.010,-36.962,-36.997,-37.023,-37.004,-37.016,-37.149,-37.384,-37.593,-37.687,
--37.687,-37.644,-37.504,-37.158,-36.609,-36.028,-35.580,-35.226,-34.763,-34.057,-33.184,-32.310,-31.469,-30.524,-29.347,-27.994,
--26.687,-25.633,-24.878,-24.320,-23.834,-23.386,-23.023,-22.756,-22.459,-21.939,-21.134,-20.221,-19.473,-18.991,-18.610,-18.112,
--17.492,-16.955,-16.673,-16.607,-16.613,-16.624,-16.674,-16.731,-16.634,-16.222,-15.507,-14.660,-13.844,-13.111,-12.467,-11.957,
--11.635,-11.473,-11.355,-11.187,-10.974,-10.787,-10.669,-10.611,-10.595,-10.614,-10.618,-10.484,-10.106,-9.521,-8.917,-8.468,
--8.183,-7.932,-7.635,-7.366,-7.244,-7.252,-7.196,-6.867,-6.193,-5.247,-4.142,-2.976,-1.866,-.955,-.346,-.009,
-.227,.588,1.232,2.145,3.121,3.862,4.164,4.029,3.609,3.040,2.382,1.713,1.203,1.020,1.169,1.490,
-1.837,2.221,2.754,3.494,4.390,5.358,6.331,7.237,7.982,8.514,8.884,9.219,9.634,10.176,10.834,11.553,
-12.246,12.842,13.357,13.880,14.470,15.094,15.693,16.291,16.969,17.731,18.463,19.043,19.472,19.844,20.214,20.569,
-20.906,21.293,21.786,22.331,22.792,23.093,23.303,23.567,23.985,24.549,25.181,25.793,26.335,26.805,27.247,27.726,
-28.282,28.918,29.615,30.366,31.177,32.039,32.909,33.747,34.558,35.401,36.321,37.263,38.071,38.601,38.850,38.972,
-39.151,39.449,39.786,40.059,40.265,40.513,40.911,41.477,42.150,42.867,43.590,44.241,44.679,44.819,44.779,44.810,
-45.007,45.159,45.014,44.685,44.581,44.817,44.822,43.831,41.829,39.807,38.860,39.116,39.726,39.882,39.597,39.409,
-39.574,39.844,39.948,39.986,40.198,40.570,40.858,40.933,40.903,40.899,40.941,41.071,41.426,42.045,42.705,43.119,
-43.287,43.495,43.929,44.455,44.844,45.092,45.382,45.770,46.106,46.272,46.357,46.504,46.676,46.705,46.548,46.355,
-46.268,46.241,46.139,45.952,45.836,45.943,46.255,46.620,46.915,47.182,47.598,48.288,49.156,49.908,50.288,50.328,
-50.313,50.499,50.875,51.235,51.418,51.439,51.406,51.400,51.436,51.494,51.524,51.480,51.385,51.362,51.511,51.770,
-51.955,51.954,51.838,51.751,51.727,51.682,51.558,51.403,51.279,51.167,51.005,50.802,50.636,50.544,50.461,50.305,
-50.079,49.853,49.660,49.449,49.172,48.876,48.668,48.582,48.524,48.397,48.259,48.297,48.600,48.998,49.201,49.134,
-49.055,49.287,49.839,50.364,50.516,50.292,50.000,49.905,49.972,49.930,49.535,48.696,47.367,45.348,42.316,38.200,
-33.646,30.005,28.567,29.548,31.799,33.673,34.310,34.089,33.889,34.076,34.293,34.098,33.530,32.951,32.532,32.091,
-31.393,30.455,29.470,28.567,27.727,26.905,26.113,25.375,24.667,23.934,23.148,22.330,21.544,20.873,20.366,19.978,
-19.580,19.072,18.466,17.852,17.278,16.719,16.156,15.631,15.192,14.815,14.431,14.001,13.557,13.133,12.725,12.301,
-11.849,11.386,10.931,10.498,10.104,9.757,9.456,9.197,8.993,8.844,8.709,8.534,8.307,8.070,7.851,7.615,
-7.306,6.937,6.584,6.300,6.045,5.736,5.342,4.909,4.495,4.117,3.758,3.414,3.099,2.815,2.537,2.234,
-1.917,1.639,1.448,1.337,1.242,1.100,.904,.692,.497,.309,.107,-.108,-.309,-.471,-.601,-.733,
--.922,-1.188,-1.468,-1.634,-1.619,-1.533,-1.588,-1.870,-2.230,-2.473,-2.608,-2.817,-3.174,-3.517,-3.692,-3.810,
--4.098,-4.496,-4.591,-4.101,-3.316,-2.895,-3.201,-3.957,-4.610,-4.914,-5.061,-5.315,-5.687,-6.022,-6.257,-6.479,
--6.766,-7.078,-7.328,-7.507,-7.687,-7.929,-8.233,-8.560,-8.873,-9.156,-9.412,-9.660,-9.910,-10.151,-10.363,-10.546,
--10.726,-10.923,-11.120,-11.287,-11.411,-11.512,-11.624,-11.764,-11.918,-12.055,-12.149,-12.213,-12.292,-12.425,-12.599,-12.768,
--12.898,-12.995,-13.070,-13.109,-13.087,-13.015,-12.942,-12.905,-12.900,-12.899,-12.889,-12.882,-12.889,-12.902,-12.904,-12.885,
--12.855,-12.831,-12.815,-12.787,-12.722,-12.628,-12.551,-12.522,-12.505,-12.427,-12.258,-12.055,-11.891,-11.770,-11.637,-11.464,
--11.296,-11.190,-11.138,-11.085,-11.005,-10.928,-10.884,-10.847,-10.771,-10.643,-10.496,-10.363,-10.252,-10.156,-10.069,-9.987,
--9.892,-9.769,-9.620,-9.460,-9.306,-9.176,-9.082,-9.016,-8.941,-8.819,-8.652,-8.480,-8.337,-8.211,-8.069,-7.914,
--7.783,-7.703,-7.646,-7.562,-7.443,-7.327,-7.245,-7.174,-7.057,-6.878,-6.684,-6.534,-6.425,-6.306,-6.152,-6.019,
--5.980,-6.027,-6.058,-5.990,-5.848,-5.733,-5.696,-5.693,-5.661,-5.602,-5.561,-5.545,-5.510,-5.426,-5.320,-5.236,
--5.175,-5.109,-5.037,-4.988,-4.975,-4.966,-4.928,-4.875,-4.840,-4.828,-4.807,-4.761,-4.709,-4.674,-4.651,-4.616,
--4.559,-4.482,-4.382,-4.253,-4.106,-3.975,-3.881,-3.807,-3.725,-3.627,-3.528,-3.438,-3.353,-3.269,-3.182,-3.080,
--2.948,-2.809,-2.715,-2.692,-2.677,-2.567,-2.341,-2.118,-2.046,-2.130,-2.198,-2.093,-1.855,-1.689,-1.730,-1.893,
--1.979,-1.906,-1.775,-1.711,-1.704,-1.646,-1.499,-1.345,-1.267,-1.232,-1.143,-.978,-.814,-.719,-.672,-.603,
--.484,-.344,-.220,-.124,-.061,-.033,-.022,.022,.134,.300,.469,.603,.699,.775,.853,.945,
-1.042,1.113,1.140,1.158,1.226,1.351,1.459,1.492,1.490,1.556,1.714,1.882,1.981,2.044,2.162,2.339,
-2.495,2.602,2.764,3.085,3.506,3.826,3.920,3.869,3.856,3.964,4.137,4.304,4.479,4.702,4.942,5.129,
-5.270,5.467,5.789,6.159,6.409,6.453,6.369,6.325,6.435,6.699,7.042,7.400,7.759,8.163,8.643,9.136,
-9.468,9.492,9.282,9.140,9.356,9.919,10.531,10.920,11.115,11.372,11.862,12.488,13.026,13.391,13.697,14.080,
-14.531,14.933,15.221,15.467,15.778,16.176,16.605,17.024,17.436,17.810,18.060,18.170,18.283,18.489,18.477,17.609,
-15.638,13.463,12.882,15.252,20.212,25.846,30.211,32.743,34.258,35.789,37.635,39.402,40.663,41.381,41.820,42.263,
-42.812,43.298,43.344,42.650,41.330,39.872,38.657,37.555,36.121,34.196,32.148,30.485,29.347,28.506,27.748,27.081,
-26.572,26.170,25.804,25.541,25.487,25.556,25.496,25.156,24.648,24.170,23.770,23.357,22.900,22.469,22.100,21.716,
-21.241,20.720,20.228,19.730,19.113,18.367,17.656,17.144,16.812,16.472,15.949,15.202,14.297,13.321,12.344,11.422,
-10.572,9.753,8.900,7.980,7.036,6.179,5.522,5.109,4.877,4.705,4.514,4.315,4.174,4.142,4.244,4.491,
-4.848,5.191,5.352,5.240,4.913,4.506,4.135,3.893,3.854,3.958,3.900,3.280,2.013,.562,-.375,-.481,
--.106,.076,-.354,-1.317,-2.465,-3.515,-4.375,-5.086,-5.754,-6.507,-7.437,-8.517,-9.589,-10.442,-10.932,-11.050,
--10.922,-10.730,-10.605,-10.559,-10.520,-10.432,-10.316,-10.238,-10.243,-10.346,-10.547,-10.816,-11.067,-11.191,-11.150,-11.009,
--10.884,-10.848,-10.896,-10.970,-10.984,-10.857,-10.568,-10.184,-9.815,-9.514,-9.244,-8.955,-8.647,-8.345,-8.039,-7.688,
--7.286,-6.886,-6.543,-6.261,-6.019,-5.812,-5.648,-5.505,-5.346,-5.161,-4.981,-4.829,-4.689,-4.531,-4.365,-4.240,
--4.191,-4.203,-4.222,-4.192,-4.093,-3.951,-3.823,-3.745,-3.689,-3.601,-3.454,-3.279,-3.114,-2.948,-2.748,-2.510,
--2.269,-2.057,-1.864,-1.662,-1.447,-1.229,-1.008,-.766,-.495,-.201,.104,.411,.706,.975,1.218,1.455,
-1.701,1.950,2.185,2.406,2.631,2.874,3.129,3.387,3.643,3.896,4.142,4.378,4.610,4.844,5.078,5.317,
-5.574,5.860,6.158,6.440,6.702,6.970,7.259,7.547,7.808,8.053,8.323,8.632,8.942,9.211,9.447,9.698,
-9.986,10.279,10.541,10.792,11.085,11.435,11.787,12.073,12.291,12.496,12.712,12.888,12.957,12.941,12.942,13.032,
-13.179,13.298,13.365,13.428,13.522,13.616,13.667,13.687,13.727,13.799,13.869,13.917,13.970,14.061,14.182,14.305,
-14.430,14.576,14.739,14.892,15.027,15.174,15.348,15.525,15.677,15.818,15.978,16.161,16.338,16.508,16.695,16.902,
-17.095,17.259,17.437,17.669,17.922,18.115,18.232,18.350,18.540,18.772,18.959,19.078,19.195,19.378,19.619,19.865,
-20.098,20.228,20.506,20.803,21.078,21.304,21.501,21.709,21.950,22.217,22.503,22.818,23.191,23.640,24.118,24.534,
-24.840,25.127,25.558,26.171,26.781,27.157,27.300,27.453,27.758,27.968,27.628,26.604,25.329,24.464,24.305,24.597,
-24.887,24.972,24.951,24.954,24.950,24.846,24.673,24.570,24.610,24.718,24.778,24.768,24.753,24.795,24.912,25.127,
-25.478,25.951,26.448,26.901,27.395,28.109,29.073,30.040,30.670,30.865,30.882,31.070,31.530,32.067,32.449,32.670,
-32.933,33.404,34.006,34.433,34.349,33.627,32.461,31.261,30.394,29.940,29.701,29.451,29.172,29.031,29.140,29.393,
-29.554,29.485,29.249,29.014,28.867,28.744,28.492,28.023,27.429,26.952,26.797,26.937,27.108,27.030,26.656,26.207,
-25.956,26.013,26.278,26.574,26.771,26.837,26.829,26.839,26.912,26.989,26.961,26.806,26.647,26.624,26.738,26.844,
-26.817,26.685,26.607,26.743,27.165,27.799,28.392,28.559,28.009,26.777,25.228,23.754,22.498,21.400,20.469,19.877,
-19.741,19.866,19.794,19.145,17.901,16.390,15.049,14.178,13.809,13.722,13.615,13.322,12.891,12.444,11.990,11.455,
-10.900,10.583,10.692,11.028,11.061,10.388,9.111,7.734,6.725,6.206,6.006,5.898,5.745,5.498,5.168,4.826,
-4.575,4.486,4.554,4.724,4.931,5.122,5.267,5.377,5.483,5.570,5.553,5.378,5.146,5.057,5.203,5.443,
-5.566,5.559,5.667,6.148,6.997,7.947,8.680,9.023,8.967,8.606,8.099,7.629,7.306,7.091,6.844,6.457,
-5.940,5.387,4.888,4.490,4.195,3.963,3.733,3.465,3.186,2.957,2.803,2.683,2.553,2.420,2.324,2.283,
-2.267,2.245,2.212,2.187,2.193,2.247,2.350,2.473,2.577,2.647,2.718,2.830,2.976,3.112,3.202,3.246,
-3.256,3.240,3.210,3.186,3.168,3.115,2.997,2.851,2.748,2.715,2.696,2.628,2.510,2.394,2.319,2.282,
-2.261,2.237,2.195,2.140,2.119,2.187,2.316,2.413,2.439,2.492,2.695,3.011,3.248,3.279,3.186,3.120,
-3.079,2.932,2.642,2.378,2.304,2.360,2.335,2.160,2.019,2.114,2.400,2.602,2.496,2.100,1.595,1.132,
-.738,.374,.025,-.276,-.485,-.606,-.708,-.884,-1.167,-1.510,-1.848,-2.170,-2.517,-2.900,-3.277,-3.618,
--3.971,-4.396,-4.884,-5.358,-5.779,-6.200,-6.673,-7.169,-7.611,-7.994,-8.406,-8.926,-9.530,-10.130,-10.677,-11.197,
--11.726,-12.264,-12.785,-13.285,-13.776,-14.274,-14.787,-15.326,-15.890,-16.450,-16.960,-17.391,-17.750,-18.068,-18.391,-18.767,
--19.230,-19.768,-20.325,-20.850,-21.334,-21.795,-22.226,-22.600,-22.914,-23.218,-23.571,-23.982,-24.406,-24.799,-25.162,-25.537,
--25.971,-26.475,-27.007,-27.480,-27.837,-28.115,-28.415,-28.776,-29.102,-29.244,-29.160,-28.962,-28.814,-28.810,-28.983,-29.372,
--30.012,-30.849,-31.727,-32.494,-33.108,-33.609,-34.042,-34.433,-34.839,-35.339,-35.941,-36.534,-36.979,-37.242,-37.427,-37.653,
--37.942,-38.229,-38.453,-38.627,-38.815,-39.055,-39.333,-39.600,-39.829,-40.029,-40.226,-40.422,-40.605,-40.792,-41.027,-41.314,
--41.566,-41.668,-41.608,-41.506,-41.492,-41.568,-41.620,-41.561,-41.418,-41.279,-41.188,-41.123,-41.036,-40.877,-40.595,-40.184,
--39.744,-39.448,-39.405,-39.553,-39.723,-39.801,-39.795,-39.762,-39.703,-39.576,-39.375,-39.148,-38.940,-38.739,-38.510,-38.255,
--38.028,-37.889,-37.851,-37.860,-37.830,-37.704,-37.506,-37.322,-37.220,-37.183,-37.139,-37.062,-37.019,-37.091,-37.267,-37.466,
--37.630,-37.770,-37.890,-37.902,-37.694,-37.266,-36.758,-36.301,-35.874,-35.338,-34.605,-33.744,-32.883,-32.047,-31.128,-30.018,
--28.760,-27.533,-26.512,-25.725,-25.067,-24.441,-23.860,-23.403,-23.067,-22.692,-22.097,-21.281,-20.456,-19.838,-19.413,-18.972,
--18.364,-17.683,-17.164,-16.921,-16.860,-16.846,-16.868,-16.996,-17.197,-17.279,-17.041,-16.450,-15.649,-14.807,-14.017,-13.308,
--12.710,-12.258,-11.951,-11.755,-11.634,-11.562,-11.501,-11.397,-11.239,-11.100,-11.069,-11.121,-11.078,-10.755,-10.158,-9.500,
--9.010,-8.725,-8.511,-8.252,-7.990,-7.846,-7.845,-7.860,-7.707,-7.261,-6.485,-5.423,-4.214,-3.073,-2.200,-1.643,
--1.272,-.875,-.286,.554,1.583,2.620,3.415,3.793,3.766,3.486,3.090,2.634,2.178,1.870,1.854,2.110,
-2.457,2.751,3.033,3.447,4.058,4.794,5.551,6.269,6.915,7.437,7.811,8.088,8.376,8.756,9.260,9.889,
-10.615,11.350,11.988,12.502,12.982,13.530,14.147,14.761,15.361,16.028,16.804,17.589,18.216,18.622,18.903,19.197,
-19.564,19.989,20.454,20.956,21.464,21.904,22.233,22.496,22.808,23.270,23.894,24.598,25.250,25.757,26.128,26.484,
-26.966,27.627,28.405,29.200,29.961,30.697,31.423,32.132,32.841,33.617,34.526,35.529,36.461,37.138,37.498,37.640,
-37.736,37.907,38.168,38.466,38.747,39.011,39.321,39.760,40.364,41.099,41.892,42.682,43.392,43.911,44.167,44.249,
-44.372,44.629,44.838,44.746,44.422,44.235,44.321,44.185,43.125,41.131,39.151,38.245,38.535,39.171,39.331,39.027,
-38.824,39.002,39.285,39.339,39.259,39.377,39.768,40.156,40.274,40.161,40.065,40.174,40.517,41.017,41.539,41.938,
-42.181,42.410,42.798,43.330,43.814,44.140,44.411,44.773,45.188,45.488,45.625,45.742,45.954,46.172,46.221,46.075,
-45.881,45.755,45.649,45.467,45.245,45.160,45.357,45.795,46.258,46.548,46.685,46.925,47.522,48.435,49.307,49.785,
-49.864,49.856,50.028,50.353,50.637,50.789,50.881,50.978,51.048,51.053,51.034,51.038,51.037,50.998,50.993,51.138,
-51.407,51.606,51.592,51.447,51.359,51.378,51.385,51.280,51.119,51.000,50.916,50.778,50.570,50.381,50.266,50.156,
-49.956,49.680,49.441,49.290,49.142,48.897,48.589,48.364,48.296,48.288,48.195,48.037,48.022,48.301,48.736,49.011,
-48.986,48.900,49.119,49.700,50.277,50.437,50.152,49.779,49.647,49.705,49.609,49.072,48.050,46.554,44.377,41.145,
-36.809,32.140,28.619,27.557,29.059,31.805,33.999,34.698,34.309,33.852,33.853,34.025,33.859,33.302,32.715,32.338,
-32.002,31.387,30.432,29.373,28.449,27.683,26.951,26.172,25.382,24.631,23.897,23.114,22.263,21.428,20.740,20.257,
-19.904,19.533,19.052,18.486,17.913,17.367,16.826,16.275,15.735,15.234,14.774,14.345,13.953,13.596,13.239,12.834,
-12.376,11.903,11.445,10.992,10.528,10.081,9.702,9.412,9.178,8.958,8.734,8.508,8.289,8.086,7.907,7.732,
-7.506,7.190,6.810,6.444,6.138,5.860,5.545,5.168,4.765,4.377,4.009,3.641,3.278,2.949,2.670,2.411,
-2.125,1.807,1.507,1.288,1.151,1.036,.885,.694,.496,.311,.132,-.050,-.228,-.402,-.583,-.764,
--.917,-1.042,-1.189,-1.396,-1.600,-1.702,-1.712,-1.784,-2.022,-2.324,-2.492,-2.507,-2.565,-2.812,-3.142,-3.374,
--3.551,-3.882,-4.347,-4.552,-4.141,-3.305,-2.707,-2.830,-3.510,-4.182,-4.507,-4.618,-4.821,-5.192,-5.576,-5.852,
--6.080,-6.370,-6.715,-7.016,-7.220,-7.383,-7.596,-7.887,-8.220,-8.546,-8.850,-9.146,-9.446,-9.739,-10.003,-10.223,
--10.416,-10.610,-10.816,-11.021,-11.199,-11.336,-11.438,-11.531,-11.651,-11.816,-12.004,-12.164,-12.269,-12.350,-12.457,-12.608,
--12.769,-12.907,-13.026,-13.139,-13.231,-13.261,-13.219,-13.144,-13.085,-13.054,-13.035,-13.018,-13.014,-13.031,-13.047,-13.034,
--12.984,-12.922,-12.876,-12.851,-12.820,-12.758,-12.668,-12.583,-12.524,-12.470,-12.384,-12.260,-12.133,-12.031,-11.938,-11.810,
--11.645,-11.489,-11.381,-11.311,-11.241,-11.163,-11.099,-11.051,-10.990,-10.890,-10.763,-10.640,-10.532,-10.426,-10.318,-10.221,
--10.140,-10.053,-9.928,-9.761,-9.572,-9.395,-9.254,-9.163,-9.113,-9.067,-8.977,-8.833,-8.670,-8.531,-8.419,-8.305,
--8.173,-8.042,-7.938,-7.851,-7.752,-7.636,-7.529,-7.453,-7.383,-7.266,-7.093,-6.916,-6.792,-6.713,-6.614,-6.466,
--6.322,-6.263,-6.283,-6.282,-6.179,-6.005,-5.870,-5.832,-5.843,-5.827,-5.769,-5.712,-5.675,-5.630,-5.552,-5.461,
--5.383,-5.309,-5.220,-5.126,-5.059,-5.028,-5.003,-4.967,-4.945,-4.964,-4.998,-4.990,-4.919,-4.826,-4.757,-4.710,
--4.656,-4.589,-4.526,-4.465,-4.369,-4.216,-4.033,-3.875,-3.768,-3.691,-3.611,-3.518,-3.433,-3.370,-3.322,-3.253,
--3.128,-2.949,-2.780,-2.694,-2.703,-2.716,-2.620,-2.404,-2.193,-2.127,-2.206,-2.282,-2.216,-2.033,-1.888,-1.885,
--1.967,-1.997,-1.921,-1.814,-1.765,-1.750,-1.681,-1.528,-1.368,-1.284,-1.261,-1.211,-1.090,-.945,-.844,-.795,
--.757,-.699,-.627,-.549,-.453,-.333,-.210,-.113,-.036,.065,.219,.411,.589,.720,.816,.920,
-1.049,1.163,1.203,1.163,1.123,1.174,1.325,1.487,1.570,1.586,1.618,1.718,1.854,1.984,2.122,2.306,
-2.513,2.667,2.734,2.788,2.926,3.154,3.378,3.516,3.583,3.639,3.710,3.777,3.851,3.984,4.189,4.392,
-4.501,4.539,4.647,4.936,5.354,5.726,5.942,6.062,6.239,6.554,6.940,7.272,7.510,7.761,8.192,8.859,
-9.597,10.085,10.102,9.753,9.438,9.528,10.041,10.651,11.040,11.213,11.443,11.929,12.582,13.153,13.524,13.800,
-14.128,14.513,14.861,15.152,15.492,15.966,16.511,17.010,17.449,17.892,18.297,18.489,18.409,18.277,18.300,18.174,
-17.177,15.062,12.889,12.586,15.376,20.579,26.114,30.229,32.693,34.412,36.196,38.097,39.745,40.932,41.725,42.269,
-42.697,43.125,43.517,43.555,42.892,41.616,40.277,39.266,38.289,36.695,34.328,31.831,30.000,28.992,28.331,27.575,
-26.752,26.125,25.769,25.551,25.381,25.295,25.278,25.182,24.893,24.468,24.046,23.672,23.299,22.908,22.527,22.134,
-21.655,21.094,20.567,20.148,19.722,19.104,18.293,17.513,16.977,16.668,16.382,15.940,15.303,14.510,13.607,12.645,
-11.703,10.838,10.021,9.168,8.233,7.286,6.468,5.891,5.550,5.339,5.143,4.933,4.764,4.699,4.751,4.903,
-5.144,5.449,5.714,5.789,5.593,5.189,4.722,4.314,4.043,3.933,3.887,3.627,2.861,1.622,.394,-.239,
--.138,.231,.225,-.434,-1.525,-2.660,-3.644,-4.524,-5.416,-6.360,-7.325,-8.268,-9.153,-9.929,-10.514,-10.828,
--10.852,-10.670,-10.452,-10.337,-10.338,-10.351,-10.282,-10.141,-10.016,-9.987,-10.069,-10.235,-10.437,-10.624,-10.751,-10.801,
--10.792,-10.745,-10.680,-10.623,-10.597,-10.574,-10.472,-10.232,-9.901,-9.590,-9.351,-9.129,-8.848,-8.519,-8.206,-7.924,
--7.614,-7.229,-6.803,-6.415,-6.103,-5.849,-5.628,-5.431,-5.248,-5.061,-4.869,-4.690,-4.532,-4.367,-4.169,-3.960,
--3.805,-3.746,-3.761,-3.781,-3.745,-3.642,-3.507,-3.386,-3.300,-3.225,-3.120,-2.968,-2.789,-2.608,-2.421,-2.218,
--2.009,-1.825,-1.677,-1.535,-1.359,-1.139,-.890,-.629,-.356,-.074,.208,.482,.752,1.026,1.304,1.579,
-1.843,2.088,2.311,2.521,2.740,2.983,3.244,3.504,3.752,3.995,4.241,4.486,4.728,4.969,5.215,5.457,
-5.687,5.916,6.168,6.448,6.733,7.005,7.267,7.539,7.820,8.089,8.341,8.595,8.871,9.156,9.422,9.664,
-9.908,10.175,10.451,10.718,10.987,11.303,11.674,12.047,12.349,12.568,12.756,12.948,13.104,13.157,13.114,13.073,
-13.124,13.255,13.386,13.467,13.522,13.590,13.669,13.731,13.778,13.840,13.925,14.007,14.070,14.131,14.219,14.337,
-14.465,14.593,14.725,14.860,14.993,15.133,15.295,15.473,15.638,15.786,15.945,16.138,16.340,16.511,16.654,16.818,
-17.024,17.238,17.425,17.605,17.809,18.017,18.178,18.293,18.430,18.640,18.883,19.078,19.209,19.337,19.517,19.742,
-19.980,20.228,20.386,20.690,20.989,21.245,21.465,21.684,21.914,22.133,22.336,22.561,22.867,23.290,23.814,24.370,
-24.860,25.216,25.477,25.779,26.204,26.643,26.875,26.815,26.638,26.563,26.557,26.341,25.749,24.997,24.521,24.542,
-24.872,25.157,25.231,25.180,25.128,25.069,24.942,24.780,24.698,24.748,24.856,24.926,24.944,24.960,25.011,25.107,
-25.287,25.620,26.102,26.623,27.086,27.559,28.228,29.168,30.177,30.909,31.189,31.174,31.193,31.438,31.840,32.222,
-32.532,32.896,33.455,34.136,34.610,34.485,33.628,32.323,31.101,30.363,30.117,30.079,30.008,29.906,29.911,30.048,
-30.167,30.106,29.863,29.574,29.352,29.195,29.009,28.702,28.245,27.722,27.317,27.196,27.339,27.493,27.384,26.982,
-26.551,26.407,26.636,27.059,27.426,27.609,27.637,27.611,27.620,27.683,27.741,27.708,27.573,27.448,27.474,27.661,
-27.848,27.853,27.666,27.469,27.492,27.831,28.369,28.821,28.872,28.360,27.364,26.133,24.883,23.679,22.523,21.522,
-20.879,20.683,20.727,20.585,19.904,18.643,17.099,15.713,14.817,14.444,14.339,14.176,13.822,13.380,12.978,12.581,
-12.078,11.545,11.276,11.435,11.735,11.590,10.653,9.160,7.716,6.767,6.321,6.125,5.966,5.786,5.592,5.375,
-5.148,4.975,4.934,5.048,5.272,5.529,5.745,5.884,5.970,6.064,6.171,6.200,6.066,5.825,5.659,5.678,
-5.777,5.771,5.663,5.715,6.188,7.056,7.998,8.673,8.954,8.922,8.703,8.390,8.063,7.807,7.640,7.463,
-7.133,6.603,5.981,5.442,5.082,4.851,4.627,4.341,4.022,3.744,3.534,3.358,3.178,3.007,2.886,2.824,
-2.785,2.730,2.651,2.572,2.526,2.544,2.635,2.770,2.886,2.950,3.002,3.117,3.310,3.512,3.650,3.729,
-3.798,3.866,3.895,3.868,3.822,3.784,3.718,3.577,3.387,3.222,3.115,3.024,2.912,2.805,2.742,2.713,
-2.681,2.653,2.667,2.716,2.740,2.718,2.721,2.826,3.015,3.212,3.401,3.618,3.851,4.005,4.023,3.973,
-3.950,3.931,3.812,3.594,3.415,3.367,3.346,3.198,2.975,2.925,3.183,3.545,3.623,3.220,2.494,1.771,
-1.264,.979,.812,.671,.510,.317,.095,-.150,-.415,-.699,-.991,-1.283,-1.586,-1.920,-2.272,-2.606,
--2.914,-3.245,-3.654,-4.123,-4.584,-5.007,-5.437,-5.920,-6.424,-6.882,-7.289,-7.722,-8.244,-8.828,-9.395,-9.904,
--10.391,-10.902,-11.445,-11.992,-12.524,-13.042,-13.557,-14.079,-14.609,-15.138,-15.640,-16.092,-16.484,-16.834,-17.177,-17.559,
--18.025,-18.579,-19.177,-19.745,-20.235,-20.658,-21.046,-21.414,-21.768,-22.128,-22.524,-22.961,-23.405,-23.816,-24.192,-24.561,
--24.950,-25.379,-25.847,-26.326,-26.757,-27.102,-27.396,-27.712,-28.063,-28.360,-28.503,-28.504,-28.459,-28.434,-28.427,-28.476,
--28.736,-29.359,-30.303,-31.314,-32.131,-32.688,-33.088,-33.453,-33.842,-34.288,-34.831,-35.456,-36.048,-36.474,-36.719,-36.907,
--37.168,-37.511,-37.834,-38.049,-38.179,-38.325,-38.561,-38.868,-39.161,-39.390,-39.576,-39.774,-39.995,-40.203,-40.383,-40.577,
--40.821,-41.060,-41.183,-41.145,-41.038,-40.991,-41.034,-41.085,-41.069,-40.991,-40.904,-40.827,-40.734,-40.611,-40.464,-40.304,
--40.134,-39.985,-39.899,-39.880,-39.854,-39.750,-39.588,-39.476,-39.478,-39.532,-39.502,-39.319,-39.038,-38.768,-38.568,-38.416,
--38.261,-38.084,-37.920,-37.819,-37.800,-37.822,-37.825,-37.779,-37.702,-37.613,-37.500,-37.343,-37.177,-37.082,-37.111,-37.241,
--37.402,-37.565,-37.747,-37.938,-38.061,-38.019,-37.793,-37.453,-37.063,-36.605,-36.012,-35.261,-34.418,-33.570,-32.730,-31.818,
--30.756,-29.576,-28.416,-27.405,-26.554,-25.773,-25.006,-24.310,-23.767,-23.333,-22.827,-22.120,-21.304,-20.606,-20.128,-19.720,
--19.152,-18.402,-17.702,-17.295,-17.191,-17.205,-17.194,-17.194,-17.312,-17.531,-17.679,-17.579,-17.183,-16.579,-15.884,-15.174,
--14.481,-13.825,-13.226,-12.717,-12.345,-12.145,-12.089,-12.064,-11.945,-11.709,-11.477,-11.402,-11.488,-11.547,-11.351,-10.852,
--10.234,-9.732,-9.422,-9.209,-8.988,-8.767,-8.627,-8.594,-8.595,-8.511,-8.228,-7.662,-6.802,-5.776,-4.831,-4.165,
--3.761,-3.415,-2.919,-2.201,-1.296,-.266,.796,1.726,2.350,2.616,2.623,2.515,2.368,2.235,2.208,2.377,
-2.705,3.035,3.249,3.395,3.614,3.975,4.430,4.911,5.395,5.882,6.348,6.774,7.181,7.600,8.034,8.481,
-8.993,9.642,10.407,11.159,11.787,12.318,12.859,13.452,14.042,14.601,15.202,15.916,16.675,17.303,17.698,17.948,
-18.237,18.670,19.216,19.789,20.333,20.827,21.254,21.601,21.903,22.241,22.703,23.316,24.010,24.654,25.152,25.530,
-25.924,26.473,27.197,28.002,28.785,29.516,30.214,30.871,31.468,32.054,32.759,33.663,34.666,35.525,36.064,36.316,
-36.462,36.650,36.899,37.158,37.406,37.659,37.939,38.273,38.713,39.309,40.055,40.879,41.695,42.433,43.025,43.427,
-43.689,43.952,44.266,44.478,44.387,44.059,43.806,43.728,43.386,42.186,40.182,38.296,37.517,37.917,38.633,38.834,
-38.516,38.257,38.378,38.619,38.615,38.438,38.470,38.870,39.359,39.561,39.445,39.345,39.617,40.310,41.143,41.742,
-41.935,41.878,41.896,42.174,42.619,43.027,43.350,43.709,44.168,44.605,44.868,44.985,45.122,45.345,45.538,45.569,
-45.466,45.347,45.249,45.086,44.803,44.502,44.398,44.649,45.209,45.819,46.185,46.241,46.272,46.676,47.540,48.508,
-49.115,49.263,49.261,49.421,49.743,50.027,50.188,50.311,50.463,50.579,50.600,50.583,50.610,50.653,50.645,50.630,
-50.736,50.965,51.142,51.127,51.006,50.974,51.072,51.146,51.071,50.900,50.756,50.652,50.501,50.284,50.085,49.961,
-49.839,49.622,49.331,49.087,48.948,48.829,48.617,48.333,48.115,48.044,48.029,47.925,47.742,47.688,47.938,48.384,
-48.693,48.685,48.584,48.801,49.437,50.106,50.317,50.009,49.591,49.447,49.498,49.322,48.627,47.463,45.915,43.719,
-40.383,35.850,31.032,27.555,26.730,28.539,31.558,33.956,34.772,34.372,33.770,33.597,33.689,33.568,33.087,32.516,
-32.110,31.776,31.223,30.345,29.332,28.432,27.698,27.000,26.227,25.401,24.603,23.848,23.077,22.257,21.449,20.761,
-20.242,19.835,19.432,18.968,18.453,17.926,17.410,16.895,16.366,15.813,15.243,14.690,14.212,13.850,13.566,13.263,
-12.869,12.401,11.934,11.498,11.060,10.584,10.109,9.711,9.417,9.176,8.914,8.608,8.298,8.038,7.853,7.719,
-7.574,7.352,7.037,6.672,6.321,6.008,5.702,5.364,4.994,4.625,4.275,3.921,3.537,3.141,2.787,2.513,
-2.288,2.035,1.716,1.373,1.087,.894,.757,.619,.463,.301,.135,-.043,-.219,-.366,-.492,-.646,
--.842,-1.016,-1.104,-1.146,-1.250,-1.448,-1.648,-1.781,-1.915,-2.152,-2.443,-2.621,-2.632,-2.633,-2.780,-3.013,
--3.175,-3.303,-3.622,-4.166,-4.554,-4.337,-3.564,-2.847,-2.767,-3.304,-3.937,-4.245,-4.283,-4.370,-4.669,-5.069,
--5.419,-5.721,-6.059,-6.433,-6.746,-6.935,-7.062,-7.236,-7.504,-7.827,-8.154,-8.476,-8.820,-9.186,-9.533,-9.817,
--10.037,-10.232,-10.438,-10.657,-10.868,-11.053,-11.211,-11.341,-11.454,-11.577,-11.742,-11.947,-12.146,-12.296,-12.403,-12.511,
--12.644,-12.784,-12.903,-13.009,-13.125,-13.239,-13.310,-13.316,-13.279,-13.243,-13.223,-13.210,-13.195,-13.186,-13.186,-13.175,
--13.134,-13.066,-12.999,-12.955,-12.929,-12.900,-12.847,-12.769,-12.671,-12.557,-12.429,-12.302,-12.200,-12.135,-12.089,-12.022,
--11.910,-11.771,-11.646,-11.552,-11.475,-11.402,-11.336,-11.283,-11.224,-11.132,-11.008,-10.891,-10.805,-10.732,-10.640,-10.521,
--10.402,-10.302,-10.201,-10.071,-9.900,-9.708,-9.521,-9.362,-9.252,-9.191,-9.153,-9.087,-8.968,-8.815,-8.674,-8.563,
--8.465,-8.357,-8.238,-8.123,-8.018,-7.910,-7.798,-7.699,-7.629,-7.568,-7.473,-7.334,-7.190,-7.092,-7.034,-6.955,
--6.819,-6.669,-6.580,-6.562,-6.535,-6.419,-6.238,-6.087,-6.029,-6.026,-6.006,-5.947,-5.879,-5.827,-5.776,-5.707,
--5.629,-5.553,-5.471,-5.364,-5.244,-5.138,-5.060,-5.005,-4.976,-5.002,-5.078,-5.144,-5.133,-5.045,-4.947,-4.885,
--4.829,-4.731,-4.603,-4.509,-4.472,-4.434,-4.313,-4.106,-3.894,-3.757,-3.697,-3.653,-3.576,-3.481,-3.413,-3.389,
--3.362,-3.271,-3.108,-2.945,-2.868,-2.885,-2.907,-2.835,-2.665,-2.495,-2.426,-2.455,-2.480,-2.413,-2.266,-2.131,
--2.073,-2.066,-2.038,-1.960,-1.870,-1.814,-1.779,-1.712,-1.593,-1.466,-1.384,-1.345,-1.293,-1.195,-1.074,-.977,
--.913,-.861,-.798,-.725,-.640,-.525,-.372,-.213,-.094,-.018,.074,.240,.463,.667,.792,.855,
-.922,1.024,1.118,1.150,1.122,1.111,1.190,1.356,1.539,1.671,1.746,1.802,1.872,1.962,2.074,2.220,
-2.409,2.612,2.779,2.882,2.935,2.977,3.039,3.136,3.272,3.438,3.597,3.700,3.736,3.765,3.870,4.073,
-4.293,4.435,4.493,4.573,4.790,5.148,5.546,5.888,6.178,6.487,6.846,7.192,7.432,7.561,7.712,8.069,
-8.699,9.445,9.998,10.129,9.897,9.638,9.697,10.133,10.704,11.130,11.379,11.650,12.107,12.679,13.161,13.459,
-13.685,13.989,14.381,14.774,15.154,15.619,16.213,16.822,17.303,17.674,18.066,18.471,18.693,18.626,18.463,18.378,
-18.022,16.697,14.333,12.226,12.363,15.695,21.146,26.504,30.299,32.697,34.681,36.757,38.659,40.035,40.965,41.724,
-42.373,42.825,43.110,43.295,43.197,42.520,41.356,40.269,39.617,38.943,37.371,34.679,31.698,29.508,28.390,27.761,
-27.020,26.170,25.569,25.342,25.267,25.129,24.952,24.839,24.761,24.594,24.298,23.935,23.567,23.198,22.820,22.426,
-21.977,21.438,20.866,20.382,20.016,19.620,19.025,18.261,17.542,17.039,16.705,16.372,15.922,15.347,14.660,13.854,
-12.953,12.034,11.151,10.270,9.326,8.335,7.419,6.715,6.252,5.944,5.673,5.391,5.141,5.002,5.010,5.143,
-5.366,5.658,5.974,6.204,6.221,5.989,5.589,5.139,4.709,4.332,4.028,3.739,3.265,2.404,1.245,.250,
--.106,.177,.553,.411,-.405,-1.565,-2.666,-3.607,-4.555,-5.644,-6.799,-7.821,-8.595,-9.172,-9.678,-10.161,
--10.532,-10.670,-10.568,-10.372,-10.253,-10.250,-10.256,-10.162,-9.985,-9.841,-9.825,-9.927,-10.080,-10.230,-10.372,-10.528,
--10.694,-10.813,-10.809,-10.651,-10.412,-10.212,-10.098,-9.998,-9.820,-9.570,-9.339,-9.165,-8.977,-8.697,-8.356,-8.050,
--7.808,-7.546,-7.183,-6.751,-6.352,-6.049,-5.810,-5.574,-5.317,-5.050,-4.790,-4.545,-4.324,-4.123,-3.928,-3.729,
--3.551,-3.435,-3.391,-3.379,-3.350,-3.280,-3.183,-3.077,-2.969,-2.857,-2.738,-2.611,-2.468,-2.302,-2.114,-1.911,
--1.714,-1.547,-1.419,-1.305,-1.161,-.955,-.697,-.416,-.134,.141,.409,.667,.916,1.166,1.431,1.711,
-1.997,2.268,2.512,2.726,2.927,3.141,3.379,3.625,3.859,4.080,4.308,4.555,4.807,5.052,5.294,5.544,
-5.799,6.037,6.256,6.480,6.734,7.011,7.285,7.543,7.800,8.069,8.339,8.591,8.824,9.058,9.307,9.563,
-9.816,10.069,10.334,10.606,10.873,11.144,11.455,11.824,12.212,12.549,12.799,12.996,13.176,13.317,13.360,13.300,
-13.223,13.230,13.336,13.467,13.555,13.601,13.653,13.732,13.826,13.915,14.000,14.088,14.173,14.250,14.328,14.422,
-14.532,14.647,14.761,14.874,14.987,15.102,15.229,15.372,15.522,15.668,15.822,16.009,16.225,16.424,16.572,16.699,
-16.870,17.104,17.348,17.550,17.716,17.882,18.053,18.205,18.344,18.510,18.723,18.944,19.123,19.268,19.428,19.631,
-19.863,20.112,20.386,20.503,20.815,21.103,21.337,21.553,21.792,22.038,22.237,22.391,22.584,22.906,23.378,23.964,
-24.606,25.217,25.682,25.927,26.008,26.065,26.154,26.179,26.017,25.703,25.400,25.202,25.034,24.805,24.585,24.558,
-24.785,25.112,25.326,25.367,25.324,25.274,25.195,25.060,24.932,24.903,24.974,25.058,25.092,25.105,25.145,25.210,
-25.288,25.441,25.774,26.285,26.826,27.262,27.657,28.237,29.126,30.158,30.977,31.348,31.348,31.277,31.384,31.705,
-32.115,32.519,32.965,33.552,34.222,34.659,34.463,33.509,32.141,30.967,30.401,30.395,30.603,30.757,30.840,30.919,
-30.940,30.766,30.383,29.962,29.683,29.552,29.434,29.217,28.892,28.503,28.108,27.809,27.723,27.845,27.976,27.867,
-27.502,27.153,27.127,27.467,27.931,28.250,28.353,28.342,28.336,28.366,28.397,28.391,28.333,28.250,28.215,28.299,
-28.482,28.643,28.651,28.499,28.317,28.270,28.420,28.688,28.901,28.885,28.547,27.896,26.999,25.910,24.676,23.414,
-22.356,21.733,21.568,21.584,21.354,20.573,19.249,17.687,16.310,15.420,15.032,14.891,14.693,14.336,13.932,13.591,
-13.247,12.782,12.289,12.064,12.228,12.439,12.106,10.961,9.354,7.936,7.088,6.701,6.457,6.187,5.937,5.773,
-5.667,5.563,5.483,5.499,5.649,5.896,6.159,6.372,6.512,6.603,6.693,6.787,6.817,6.705,6.468,6.218,
-6.039,5.893,5.729,5.643,5.874,6.561,7.534,8.426,8.976,9.203,9.275,9.272,9.147,8.885,8.600,8.416,
-8.289,8.030,7.512,6.839,6.250,5.882,5.658,5.408,5.070,4.717,4.436,4.209,3.975,3.733,3.556,3.487,
-3.472,3.419,3.298,3.155,3.042,2.980,2.982,3.061,3.197,3.328,3.417,3.512,3.687,3.929,4.135,4.239,
-4.291,4.378,4.495,4.556,4.524,4.455,4.406,4.342,4.193,3.966,3.742,3.565,3.415,3.272,3.175,3.148,
-3.148,3.122,3.109,3.194,3.364,3.490,3.482,3.429,3.504,3.765,4.098,4.371,4.556,4.698,4.816,4.894,
-4.931,4.940,4.910,4.828,4.736,4.698,4.679,4.545,4.242,3.943,3.894,4.107,4.265,4.016,3.329,2.514,
-1.925,1.681,1.666,1.699,1.654,1.473,1.150,.744,.345,.017,-.247,-.494,-.760,-1.054,-1.368,-1.686,
--1.988,-2.277,-2.590,-2.962,-3.387,-3.820,-4.238,-4.667,-5.136,-5.629,-6.106,-6.563,-7.040,-7.565,-8.113,-8.638,
--9.131,-9.626,-10.152,-10.702,-11.250,-11.787,-12.317,-12.848,-13.372,-13.876,-14.353,-14.801,-15.223,-15.621,-16.005,-16.401,
--16.852,-17.394,-18.010,-18.626,-19.160,-19.581,-19.925,-20.242,-20.570,-20.937,-21.368,-21.862,-22.366,-22.815,-23.193,-23.548,
--23.928,-24.333,-24.744,-25.159,-25.585,-26.000,-26.368,-26.688,-26.997,-27.307,-27.579,-27.781,-27.931,-28.048,-28.078,-27.961,
--27.808,-27.920,-28.552,-29.640,-30.818,-31.729,-32.282,-32.622,-32.923,-33.275,-33.724,-34.305,-34.981,-35.602,-36.016,-36.229,
--36.405,-36.697,-37.091,-37.442,-37.644,-37.742,-37.875,-38.131,-38.466,-38.768,-38.976,-39.138,-39.334,-39.578,-39.805,-39.958,
--40.068,-40.208,-40.392,-40.549,-40.600,-40.557,-40.499,-40.481,-40.492,-40.498,-40.485,-40.458,-40.407,-40.318,-40.200,-40.088,
--40.013,-39.984,-39.991,-40.002,-39.960,-39.807,-39.550,-39.291,-39.159,-39.190,-39.288,-39.307,-39.166,-38.904,-38.622,-38.404,
--38.271,-38.183,-38.090,-37.975,-37.866,-37.804,-37.802,-37.841,-37.888,-37.915,-37.889,-37.785,-37.613,-37.440,-37.346,-37.356,
--37.425,-37.506,-37.598,-37.732,-37.904,-38.053,-38.113,-38.060,-37.899,-37.629,-37.227,-36.678,-35.998,-35.232,-34.422,-33.567,
--32.626,-31.564,-30.411,-29.272,-28.235,-27.297,-26.390,-25.501,-24.717,-24.106,-23.570,-22.912,-22.067,-21.226,-20.628,-20.270,
--19.876,-19.212,-18.378,-17.708,-17.425,-17.431,-17.477,-17.443,-17.411,-17.493,-17.664,-17.789,-17.755,-17.539,-17.172,-16.691,
--16.131,-15.530,-14.918,-14.306,-13.724,-13.238,-12.916,-12.754,-12.649,-12.476,-12.212,-11.964,-11.874,-11.958,-12.050,-11.934,
--11.536,-10.986,-10.490,-10.148,-9.918,-9.724,-9.561,-9.467,-9.443,-9.436,-9.380,-9.203,-8.819,-8.184,-7.393,-6.678,
--6.220,-5.969,-5.698,-5.232,-4.582,-3.838,-3.015,-2.074,-1.070,-.184,.430,.787,1.012,1.207,1.399,1.610,
-1.870,2.159,2.378,2.447,2.404,2.383,2.501,2.794,3.245,3.817,4.453,5.087,5.691,6.281,6.856,7.357,
-7.758,8.157,8.726,9.521,10.399,11.164,11.761,12.283,12.819,13.358,13.875,14.425,15.079,15.792,16.406,16.812,
-17.082,17.399,17.878,18.487,19.125,19.716,20.243,20.704,21.095,21.442,21.809,22.274,22.862,23.517,24.132,24.639,
-25.072,25.547,26.153,26.877,27.632,28.362,29.079,29.792,30.447,30.989,31.481,32.095,32.924,33.835,34.559,34.955,
-35.142,35.348,35.674,36.032,36.308,36.508,36.721,37.005,37.357,37.780,38.318,38.997,39.786,40.612,41.407,42.108,
-42.668,43.100,43.471,43.789,43.937,43.801,43.494,43.281,43.178,42.724,41.390,39.301,37.390,36.620,37.059,37.860,
-38.166,37.899,37.595,37.628,37.822,37.834,37.674,37.689,38.083,38.627,38.914,38.842,38.761,39.137,40.075,41.179,
-41.877,41.920,41.574,41.335,41.471,41.867,42.286,42.664,43.088,43.567,43.963,44.181,44.308,44.494,44.738,44.905,
-44.918,44.848,44.782,44.690,44.473,44.126,43.782,43.642,43.857,44.433,45.160,45.697,45.850,45.827,46.084,46.843,
-47.810,48.466,48.629,48.597,48.744,49.114,49.480,49.699,49.833,49.974,50.095,50.152,50.197,50.300,50.418,50.450,
-50.413,50.429,50.543,50.639,50.613,50.538,50.566,50.708,50.806,50.744,50.580,50.435,50.327,50.184,49.988,49.809,
-49.688,49.568,49.373,49.121,48.894,48.728,48.567,48.348,48.100,47.914,47.825,47.760,47.620,47.431,47.373,47.594,
-48.001,48.298,48.313,48.257,48.528,49.224,49.930,50.129,49.778,49.348,49.243,49.313,49.054,48.204,46.939,45.399,
-43.213,39.759,35.019,30.100,26.747,26.152,28.094,31.101,33.497,34.434,34.187,33.601,33.289,33.262,33.187,32.855,
-32.361,31.888,31.456,30.923,30.197,29.352,28.534,27.790,27.055,26.261,25.420,24.588,23.794,23.019,22.246,21.500,
-20.822,20.236,19.728,19.267,18.825,18.378,17.918,17.444,16.959,16.443,15.862,15.215,14.576,14.058,13.713,13.475,
-13.210,12.839,12.392,11.946,11.527,11.098,10.631,10.163,9.761,9.444,9.166,8.857,8.496,8.129,7.827,7.631,
-7.511,7.384,7.179,6.880,6.536,6.197,5.879,5.562,5.227,4.882,4.538,4.189,3.808,3.385,2.956,2.591,
-2.335,2.153,1.946,1.640,1.258,.902,.651,.496,.378,.262,.139,-.004,-.185,-.382,-.539,-.640,
--.743,-.898,-1.052,-1.109,-1.078,-1.088,-1.235,-1.469,-1.678,-1.863,-2.109,-2.425,-2.689,-2.821,-2.905,-3.057,
--3.237,-3.319,-3.350,-3.573,-4.084,-4.559,-4.517,-3.885,-3.169,-2.966,-3.363,-3.912,-4.168,-4.115,-4.066,-4.242,
--4.596,-4.981,-5.351,-5.744,-6.142,-6.447,-6.608,-6.702,-6.855,-7.117,-7.435,-7.752,-8.078,-8.455,-8.876,-9.272,
--9.576,-9.794,-9.988,-10.202,-10.430,-10.642,-10.831,-11.018,-11.208,-11.391,-11.561,-11.733,-11.917,-12.099,-12.254,-12.384,
--12.518,-12.670,-12.821,-12.943,-13.039,-13.135,-13.232,-13.308,-13.343,-13.350,-13.351,-13.351,-13.340,-13.317,-13.293,-13.273,
--13.248,-13.207,-13.159,-13.120,-13.091,-13.058,-13.013,-12.963,-12.908,-12.828,-12.700,-12.532,-12.372,-12.265,-12.213,-12.172,
--12.098,-11.988,-11.872,-11.778,-11.700,-11.623,-11.547,-11.488,-11.443,-11.381,-11.276,-11.144,-11.030,-10.953,-10.888,-10.795,
--10.667,-10.531,-10.408,-10.292,-10.166,-10.019,-9.856,-9.683,-9.515,-9.379,-9.292,-9.239,-9.177,-9.071,-8.929,-8.787,
--8.672,-8.579,-8.489,-8.392,-8.293,-8.194,-8.091,-7.983,-7.886,-7.816,-7.765,-7.703,-7.606,-7.494,-7.405,-7.348,
--7.283,-7.169,-7.026,-6.914,-6.857,-6.809,-6.703,-6.538,-6.379,-6.284,-6.237,-6.189,-6.119,-6.047,-5.992,-5.942,
--5.876,-5.793,-5.709,-5.625,-5.527,-5.413,-5.293,-5.180,-5.093,-5.057,-5.087,-5.152,-5.178,-5.123,-5.031,-4.985,
--4.997,-4.983,-4.860,-4.662,-4.508,-4.469,-4.480,-4.413,-4.223,-3.996,-3.847,-3.803,-3.785,-3.713,-3.592,-3.492,
--3.460,-3.460,-3.416,-3.303,-3.176,-3.112,-3.118,-3.127,-3.070,-2.952,-2.835,-2.766,-2.733,-2.687,-2.597,-2.478,
--2.364,-2.277,-2.218,-2.168,-2.112,-2.048,-1.984,-1.921,-1.849,-1.758,-1.658,-1.567,-1.492,-1.419,-1.330,-1.229,
--1.131,-1.035,-.925,-.795,-.658,-.525,-.388,-.241,-.108,-.023,.023,.102,.274,.518,.733,.843,
-.863,.865,.893,.929,.948,.967,1.030,1.158,1.324,1.495,1.653,1.792,1.900,1.976,2.039,2.125,
-2.253,2.413,2.590,2.780,2.971,3.126,3.205,3.218,3.237,3.336,3.521,3.725,3.872,3.948,4.009,4.127,
-4.327,4.579,4.821,5.014,5.176,5.363,5.612,5.909,6.205,6.467,6.704,6.944,7.184,7.388,7.530,7.656,
-7.871,8.260,8.794,9.313,9.637,9.723,9.718,9.848,10.214,10.719,11.188,11.558,11.919,12.360,12.828,13.181,
-13.374,13.534,13.817,14.243,14.714,15.183,15.705,16.310,16.889,17.312,17.612,17.943,18.331,18.611,18.674,18.633,
-18.533,17.953,16.290,13.744,11.848,12.539,16.404,21.984,27.024,30.399,32.656,34.827,37.130,39.029,40.212,41.009,
-41.811,42.498,42.708,42.414,41.921,41.367,40.615,39.713,39.087,38.950,38.684,37.270,34.432,31.124,28.648,27.436,
-26.891,26.294,25.566,25.061,24.922,24.899,24.744,24.507,24.373,24.356,24.293,24.068,23.722,23.350,22.985,22.597,
-22.155,21.656,21.133,20.651,20.263,19.928,19.516,18.946,18.291,17.704,17.249,16.848,16.399,15.880,15.317,14.692,
-13.957,13.117,12.233,11.331,10.370,9.330,8.312,7.484,6.928,6.558,6.216,5.820,5.423,5.141,5.045,5.128,
-5.342,5.652,6.015,6.342,6.509,6.445,6.202,5.895,5.567,5.159,4.636,4.061,3.496,2.848,1.957,.884,
-.030,-.189,.193,.620,.489,-.335,-1.502,-2.619,-3.613,-4.660,-5.847,-7.001,-7.851,-8.317,-8.592,-8.959,
--9.522,-10.125,-10.515,-10.584,-10.452,-10.321,-10.270,-10.224,-10.098,-9.923,-9.817,-9.859,-10.014,-10.194,-10.352,-10.517,
--10.737,-10.999,-11.190,-11.159,-10.849,-10.373,-9.945,-9.694,-9.581,-9.478,-9.332,-9.179,-9.036,-8.839,-8.525,-8.143,
--7.810,-7.563,-7.316,-6.977,-6.569,-6.194,-5.908,-5.663,-5.387,-5.060,-4.722,-4.412,-4.142,-3.906,-3.701,-3.524,
--3.378,-3.270,-3.205,-3.158,-3.089,-2.984,-2.866,-2.767,-2.681,-2.575,-2.433,-2.279,-2.143,-2.022,-1.882,-1.698,
--1.493,-1.313,-1.182,-1.079,-.948,-.747,-.476,-.169,.132,.408,.660,.899,1.132,1.367,1.611,1.865,
-2.123,2.381,2.633,2.872,3.095,3.308,3.525,3.752,3.978,4.189,4.393,4.613,4.860,5.114,5.355,5.588,
-5.834,6.095,6.347,6.570,6.780,7.010,7.267,7.531,7.780,8.021,8.273,8.535,8.784,9.010,9.230,9.467,
-9.728,9.999,10.272,10.549,10.826,11.088,11.337,11.605,11.930,12.298,12.649,12.929,13.140,13.311,13.441,13.491,
-13.450,13.383,13.383,13.480,13.619,13.726,13.782,13.829,13.902,13.999,14.094,14.175,14.246,14.318,14.399,14.489,
-14.586,14.685,14.783,14.885,14.997,15.115,15.231,15.341,15.448,15.556,15.678,15.831,16.024,16.230,16.408,16.547,
-16.696,16.905,17.164,17.409,17.594,17.741,17.893,18.065,18.241,18.416,18.606,18.810,19.002,19.169,19.336,19.531,
-19.750,19.976,20.218,20.503,20.564,20.878,21.166,21.398,21.615,21.858,22.096,22.275,22.425,22.658,23.053,23.591,
-24.201,24.841,25.462,25.937,26.116,25.983,25.713,25.511,25.421,25.331,25.147,24.900,24.686,24.554,24.507,24.571,
-24.768,25.037,25.251,25.333,25.331,25.335,25.346,25.298,25.186,25.110,25.148,25.245,25.288,25.250,25.214,25.248,
-25.321,25.395,25.544,25.888,26.420,26.967,27.375,27.712,28.214,29.018,29.979,30.777,31.186,31.249,31.207,31.299,
-31.601,32.024,32.450,32.867,33.354,33.900,34.264,34.090,33.245,32.050,31.086,30.743,30.946,31.341,31.662,31.855,
-31.906,31.696,31.138,30.385,29.771,29.511,29.510,29.512,29.373,29.132,28.871,28.623,28.433,28.397,28.541,28.706,
-28.662,28.385,28.123,28.144,28.443,28.760,28.870,28.800,28.733,28.772,28.856,28.879,28.819,28.747,28.738,28.811,
-28.941,29.081,29.192,29.250,29.259,29.233,29.189,29.148,29.125,29.110,29.036,28.806,28.342,27.610,26.611,25.400,
-24.140,23.105,22.531,22.400,22.382,22.033,21.097,19.667,18.097,16.785,15.958,15.582,15.416,15.212,14.894,14.557,
-14.273,13.964,13.530,13.070,12.853,12.966,13.065,12.607,11.395,9.815,8.491,7.726,7.341,7.001,6.598,6.260,
-6.099,6.070,6.062,6.059,6.127,6.309,6.562,6.811,7.011,7.162,7.278,7.372,7.436,7.437,7.336,7.123,
-6.817,6.445,6.045,5.738,5.754,6.292,7.303,8.435,9.279,9.696,9.869,10.027,10.177,10.147,9.864,9.504,
-9.299,9.254,9.123,8.698,8.040,7.410,6.977,6.672,6.332,5.913,5.508,5.188,4.911,4.619,4.354,4.214,
-4.202,4.193,4.077,3.880,3.712,3.629,3.598,3.588,3.628,3.743,3.896,4.036,4.183,4.390,4.636,4.823,
-4.902,4.941,5.031,5.150,5.193,5.127,5.030,4.972,4.907,4.749,4.504,4.261,4.074,3.915,3.767,3.677,
-3.683,3.727,3.735,3.744,3.862,4.097,4.295,4.322,4.249,4.295,4.569,4.956,5.264,5.433,5.551,5.707,
-5.879,5.974,5.936,5.811,5.713,5.741,5.861,5.896,5.676,5.238,4.840,4.691,4.699,4.534,3.987,3.221,
-2.612,2.393,2.477,2.616,2.626,2.459,2.132,1.687,1.202,.781,.473,.240,.004,-.272,-.570,-.867,
--1.160,-1.451,-1.740,-2.038,-2.365,-2.734,-3.133,-3.541,-3.956,-4.389,-4.847,-5.326,-5.824,-6.341,-6.866,-7.379,
--7.874,-8.374,-8.901,-9.452,-9.998,-10.523,-11.044,-11.581,-12.129,-12.657,-13.134,-13.561,-13.968,-14.385,-14.820,-15.267,
--15.734,-16.248,-16.830,-17.443,-18.007,-18.456,-18.797,-19.091,-19.400,-19.753,-20.171,-20.669,-21.222,-21.750,-22.181,-22.526,
--22.866,-23.255,-23.672,-24.068,-24.445,-24.838,-25.252,-25.642,-25.974,-26.257,-26.526,-26.798,-27.083,-27.375,-27.602,-27.625,
--27.385,-27.084,-27.126,-27.795,-28.975,-30.238,-31.205,-31.797,-32.160,-32.445,-32.741,-33.137,-33.726,-34.473,-35.173,-35.611,
--35.786,-35.905,-36.163,-36.544,-36.881,-37.065,-37.163,-37.326,-37.625,-37.993,-38.310,-38.528,-38.700,-38.905,-39.150,-39.365,
--39.483,-39.523,-39.575,-39.706,-39.888,-40.032,-40.072,-40.024,-39.959,-39.937,-39.963,-39.997,-39.999,-39.960,-39.906,-39.865,
--39.846,-39.834,-39.823,-39.812,-39.784,-39.692,-39.507,-39.270,-39.074,-38.991,-39.000,-39.018,-38.974,-38.848,-38.662,-38.451,
--38.259,-38.124,-38.055,-38.022,-37.988,-37.939,-37.892,-37.866,-37.869,-37.906,-37.967,-38.016,-38.008,-37.933,-37.841,-37.791,
--37.792,-37.809,-37.816,-37.833,-37.887,-37.971,-38.054,-38.112,-38.136,-38.096,-37.944,-37.650,-37.224,-36.689,-36.049,-35.296,
--34.428,-33.450,-32.373,-31.230,-30.094,-29.022,-28.002,-26.984,-25.989,-25.130,-24.453,-23.817,-23.006,-22.011,-21.107,-20.562,
--20.305,-19.975,-19.334,-18.537,-17.952,-17.746,-17.753,-17.727,-17.628,-17.588,-17.694,-17.868,-17.979,-17.969,-17.850,-17.618,
--17.254,-16.777,-16.258,-15.754,-15.262,-14.761,-14.275,-13.864,-13.558,-13.318,-13.074,-12.805,-12.570,-12.458,-12.480,-12.525,
--12.422,-12.095,-11.623,-11.172,-10.837,-10.602,-10.416,-10.284,-10.238,-10.272,-10.327,-10.342,-10.260,-10.004,-9.516,-8.861,
--8.247,-7.856,-7.663,-7.474,-7.152,-6.741,-6.336,-5.882,-5.220,-4.303,-3.303,-2.445,-1.797,-1.265,-.765,-.320,
-.011,.228,.362,.403,.312,.118,-.034,.053,.512,1.335,2.376,3.422,4.313,5.032,5.662,6.250,
-6.749,7.121,7.471,8.002,8.805,9.738,10.566,11.180,11.654,12.106,12.570,13.044,13.569,14.199,14.898,15.528,
-15.988,16.321,16.667,17.126,17.691,18.305,18.925,19.530,20.089,20.575,20.999,21.426,21.928,22.525,23.164,23.762,
-24.273,24.731,25.223,25.812,26.489,27.203,27.932,28.688,29.446,30.123,30.657,31.121,31.683,32.414,33.168,33.701,
-33.940,34.067,34.324,34.759,35.211,35.520,35.705,35.905,36.212,36.600,37.014,37.461,38.001,38.683,39.498,40.378,
-41.217,41.923,42.473,42.894,43.171,43.213,43.001,42.725,42.639,42.671,42.287,40.951,38.816,36.824,35.946,36.313,
-37.144,37.558,37.346,36.947,36.807,36.925,37.036,37.047,37.152,37.531,38.054,38.384,38.366,38.266,38.562,39.448,
-40.566,41.285,41.280,40.829,40.506,40.641,41.112,41.631,42.083,42.518,42.940,43.251,43.424,43.577,43.828,44.119,
-44.303,44.327,44.268,44.176,44.003,43.701,43.332,43.023,42.886,43.027,43.521,44.285,45.006,45.381,45.473,45.704,
-46.382,47.298,47.939,48.074,47.989,48.105,48.506,48.947,49.221,49.361,49.484,49.611,49.706,49.806,49.967,50.151,
-50.248,50.229,50.179,50.166,50.156,50.105,50.065,50.122,50.252,50.330,50.288,50.183,50.099,50.034,49.927,49.767,
-49.599,49.448,49.293,49.115,48.931,48.755,48.567,48.341,48.100,47.897,47.758,47.653,47.529,47.364,47.210,47.182,
-47.361,47.675,47.921,47.990,48.063,48.456,49.186,49.822,49.893,49.447,49.023,48.990,49.082,48.723,47.724,46.398,
-44.898,42.696,39.047,34.050,29.076,25.956,25.658,27.668,30.521,32.832,33.966,34.056,33.612,33.126,32.834,32.696,
-32.529,32.201,31.714,31.157,30.593,30.018,29.396,28.707,27.955,27.154,26.322,25.475,24.625,23.785,22.977,22.221,
-21.516,20.844,20.199,19.606,19.103,18.686,18.303,17.902,17.470,17.013,16.501,15.886,15.176,14.482,13.942,13.602,
-13.375,13.129,12.799,12.408,12.000,11.583,11.141,10.677,10.224,9.814,9.457,9.132,8.802,8.440,8.057,7.712,
-7.465,7.320,7.206,7.032,6.763,6.425,6.071,5.732,5.417,5.122,4.827,4.496,4.102,3.648,3.171,2.725,
-2.366,2.127,1.979,1.822,1.560,1.187,.806,.521,.348,.226,.111,-.002,-.125,-.295,-.510,-.707,
--.828,-.899,-.987,-1.082,-1.101,-1.024,-.966,-1.053,-1.274,-1.512,-1.711,-1.936,-2.240,-2.563,-2.820,-3.032,
--3.262,-3.470,-3.544,-3.514,-3.610,-3.982,-4.420,-4.510,-4.107,-3.558,-3.358,-3.624,-4.014,-4.153,-4.020,-3.883,
--3.951,-4.198,-4.502,-4.830,-5.217,-5.630,-5.963,-6.160,-6.296,-6.494,-6.786,-7.107,-7.403,-7.706,-8.083,-8.532,
--8.965,-9.297,-9.532,-9.738,-9.969,-10.211,-10.428,-10.619,-10.819,-11.050,-11.296,-11.523,-11.718,-11.891,-12.047,-12.187,
--12.319,-12.463,-12.628,-12.796,-12.941,-13.055,-13.148,-13.226,-13.285,-13.325,-13.352,-13.370,-13.372,-13.351,-13.320,-13.298,
--13.293,-13.291,-13.285,-13.278,-13.273,-13.251,-13.196,-13.120,-13.057,-13.022,-12.981,-12.885,-12.729,-12.564,-12.441,-12.365,
--12.294,-12.192,-12.072,-11.964,-11.882,-11.808,-11.723,-11.637,-11.575,-11.535,-11.486,-11.400,-11.286,-11.172,-11.075,-10.984,
--10.877,-10.751,-10.617,-10.485,-10.360,-10.242,-10.125,-9.998,-9.852,-9.695,-9.554,-9.451,-9.377,-9.300,-9.195,-9.067,
--8.938,-8.827,-8.733,-8.651,-8.577,-8.508,-8.436,-8.350,-8.247,-8.143,-8.063,-8.012,-7.968,-7.898,-7.800,-7.702,
--7.630,-7.570,-7.487,-7.371,-7.254,-7.171,-7.107,-7.016,-6.878,-6.724,-6.593,-6.490,-6.390,-6.285,-6.196,-6.138,
--6.093,-6.032,-5.944,-5.849,-5.767,-5.697,-5.622,-5.528,-5.419,-5.321,-5.264,-5.253,-5.243,-5.177,-5.057,-4.964,
--4.978,-5.074,-5.116,-5.001,-4.771,-4.579,-4.525,-4.554,-4.528,-4.378,-4.173,-4.030,-3.984,-3.962,-3.881,-3.738,
--3.609,-3.551,-3.539,-3.506,-3.421,-3.327,-3.273,-3.261,-3.243,-3.189,-3.115,-3.051,-2.992,-2.916,-2.814,-2.709,
--2.618,-2.536,-2.451,-2.374,-2.324,-2.297,-2.265,-2.206,-2.128,-2.046,-1.957,-1.852,-1.740,-1.641,-1.565,-1.497,
--1.417,-1.313,-1.183,-1.024,-.842,-.661,-.502,-.365,-.240,-.134,-.068,-.030,.041,.201,.429,.637,
-.752,.782,.782,.785,.790,.802,.855,.970,1.121,1.268,1.404,1.555,1.718,1.856,1.939,1.997,
-2.085,2.219,2.376,2.542,2.741,2.980,3.209,3.350,3.390,3.401,3.465,3.597,3.758,3.910,4.052,4.194,
-4.342,4.510,4.727,5.007,5.311,5.575,5.773,5.943,6.133,6.339,6.520,6.659,6.802,7.007,7.275,7.533,
-7.709,7.813,7.946,8.220,8.646,9.117,9.499,9.758,9.990,10.315,10.762,11.253,11.712,12.145,12.580,12.978,
-13.250,13.380,13.498,13.765,14.212,14.731,15.224,15.701,16.200,16.681,17.070,17.386,17.726,18.095,18.373,18.497,
-18.542,18.438,17.705,15.867,13.359,11.832,13.046,17.224,22.669,27.246,30.187,32.306,34.594,37.046,39.003,40.252,
-41.244,42.270,42.883,42.452,41.047,39.419,38.185,37.396,36.927,36.874,37.200,37.213,35.922,33.114,29.813,27.401,
-26.365,26.085,25.750,25.190,24.739,24.582,24.529,24.368,24.158,24.074,24.099,24.035,23.766,23.377,23.006,22.672,
-22.292,21.818,21.306,20.854,20.510,20.230,19.909,19.466,18.919,18.370,17.888,17.442,16.949,16.384,15.801,15.227,
-14.612,13.891,13.075,12.216,11.311,10.313,9.251,8.287,7.592,7.166,6.836,6.426,5.925,5.472,5.209,5.171,
-5.310,5.571,5.913,6.267,6.505,6.514,6.313,6.062,5.892,5.746,5.421,4.813,4.045,3.309,2.607,1.771,
-.776,-.061,-.334,-.020,.399,.339,-.388,-1.511,-2.679,-3.787,-4.927,-6.088,-7.050,-7.584,-7.724,-7.792,
--8.138,-8.847,-9.682,-10.307,-10.558,-10.525,-10.404,-10.310,-10.229,-10.123,-10.028,-10.023,-10.143,-10.350,-10.576,-10.791,
--11.012,-11.265,-11.520,-11.658,-11.527,-11.067,-10.408,-9.809,-9.465,-9.364,-9.347,-9.286,-9.158,-8.979,-8.719,-8.347,
--7.912,-7.520,-7.219,-6.952,-6.635,-6.269,-5.913,-5.597,-5.287,-4.943,-4.585,-4.264,-4.004,-3.794,-3.613,-3.456,
--3.320,-3.197,-3.080,-2.966,-2.849,-2.716,-2.573,-2.448,-2.357,-2.276,-2.161,-2.005,-1.850,-1.735,-1.648,-1.534,
--1.361,-1.163,-.996,-.879,-.766,-.595,-.340,-.026,.297,.595,.859,1.100,1.333,1.570,1.814,2.061,
-2.297,2.516,2.728,2.950,3.185,3.419,3.644,3.863,4.089,4.319,4.540,4.751,4.964,5.193,5.428,5.656,
-5.880,6.118,6.374,6.628,6.858,7.069,7.290,7.531,7.779,8.014,8.238,8.469,8.713,8.957,9.190,9.424,
-9.681,9.964,10.258,10.549,10.837,11.118,11.376,11.600,11.817,12.075,12.394,12.735,13.033,13.258,13.421,13.537,
-13.594,13.589,13.562,13.579,13.676,13.817,13.941,14.017,14.065,14.116,14.182,14.251,14.313,14.371,14.432,14.504,
-14.587,14.675,14.759,14.843,14.938,15.054,15.184,15.308,15.414,15.506,15.601,15.720,15.872,16.049,16.227,16.389,
-16.551,16.744,16.982,17.227,17.432,17.589,17.736,17.910,18.107,18.303,18.493,18.686,18.884,19.075,19.263,19.467,
-19.687,19.896,20.084,20.293,20.564,20.606,20.932,21.246,21.507,21.743,21.980,22.191,22.349,22.518,22.818,23.302,
-23.891,24.468,24.983,25.425,25.719,25.746,25.492,25.127,24.879,24.839,24.916,24.972,24.954,24.892,24.837,24.831,
-24.912,25.071,25.224,25.278,25.238,25.213,25.276,25.363,25.366,25.289,25.256,25.338,25.446,25.448,25.344,25.259,
-25.279,25.360,25.445,25.598,25.940,26.463,27.002,27.416,27.761,28.226,28.910,29.699,30.373,30.790,30.976,31.072,
-31.228,31.518,31.900,32.273,32.591,32.913,33.290,33.591,33.536,32.976,32.133,31.481,31.346,31.656,32.099,32.446,
-32.630,32.586,32.164,31.317,30.298,29.537,29.272,29.368,29.518,29.549,29.480,29.376,29.255,29.168,29.231,29.484,
-29.760,29.815,29.608,29.364,29.320,29.439,29.478,29.298,29.029,28.908,28.999,29.146,29.175,29.086,29.018,29.082,
-29.250,29.419,29.538,29.660,29.861,30.123,30.316,30.313,30.126,29.894,29.725,29.562,29.243,28.666,27.862,26.909,
-25.850,24.751,23.809,23.260,23.123,23.067,22.609,21.503,19.926,18.330,17.116,16.420,16.117,15.966,15.779,15.518,
-15.249,15.005,14.708,14.283,13.827,13.569,13.574,13.544,13.022,11.858,10.404,9.205,8.498,8.088,7.667,7.170,
-6.766,6.590,6.587,6.620,6.652,6.748,6.950,7.214,7.465,7.671,7.847,7.994,8.091,8.117,8.079,7.984,
-7.805,7.482,6.982,6.405,6.021,6.161,6.972,8.234,9.454,10.222,10.515,10.631,10.828,11.054,11.067,10.770,
-10.372,10.157,10.163,10.145,9.856,9.312,8.730,8.258,7.844,7.364,6.818,6.318,5.928,5.601,5.291,5.053,
-4.962,4.972,4.924,4.734,4.495,4.357,4.347,4.363,4.341,4.336,4.425,4.593,4.769,4.933,5.126,5.345,
-5.520,5.609,5.663,5.749,5.835,5.830,5.724,5.607,5.537,5.455,5.274,5.021,4.803,4.662,4.537,4.398,
-4.317,4.372,4.507,4.592,4.604,4.656,4.828,5.029,5.115,5.097,5.153,5.410,5.793,6.117,6.303,6.438,
-6.617,6.802,6.848,6.679,6.400,6.236,6.320,6.542,6.617,6.351,5.841,5.383,5.150,5.003,4.664,4.069,
-3.478,3.205,3.286,3.465,3.467,3.221,2.829,2.398,1.974,1.585,1.266,1.018,.786,.511,.197,-.114,
--.401,-.681,-.972,-1.262,-1.540,-1.826,-2.151,-2.525,-2.923,-3.318,-3.713,-4.131,-4.595,-5.106,-5.639,-6.159,
--6.652,-7.141,-7.658,-8.212,-8.770,-9.295,-9.791,-10.298,-10.844,-11.409,-11.939,-12.396,-12.793,-13.182,-13.611,-14.091,
--14.603,-15.134,-15.689,-16.265,-16.818,-17.279,-17.623,-17.901,-18.198,-18.565,-18.999,-19.491,-20.034,-20.599,-21.112,-21.516,
--21.837,-22.165,-22.555,-22.977,-23.374,-23.747,-24.135,-24.547,-24.936,-25.259,-25.521,-25.772,-26.057,-26.402,-26.777,-27.059,
--27.086,-26.832,-26.545,-26.630,-27.316,-28.441,-29.609,-30.531,-31.182,-31.659,-32.004,-32.250,-32.546,-33.090,-33.892,-34.690,
--35.178,-35.317,-35.351,-35.526,-35.848,-36.150,-36.324,-36.443,-36.644,-36.973,-37.353,-37.693,-37.964,-38.199,-38.434,-38.662,
--38.850,-38.968,-39.024,-39.070,-39.169,-39.332,-39.497,-39.574,-39.539,-39.463,-39.439,-39.479,-39.503,-39.446,-39.350,-39.329,
--39.442,-39.619,-39.734,-39.724,-39.627,-39.498,-39.356,-39.201,-39.067,-38.995,-38.968,-38.915,-38.788,-38.618,-38.467,-38.353,
--38.244,-38.121,-38.011,-37.949,-37.935,-37.946,-37.965,-37.985,-37.991,-37.979,-37.977,-38.027,-38.128,-38.221,-38.252,-38.229,
--38.205,-38.212,-38.241,-38.269,-38.286,-38.286,-38.259,-38.216,-38.197,-38.217,-38.224,-38.138,-37.926,-37.615,-37.220,-36.702,
--36.015,-35.165,-34.199,-33.154,-32.052,-30.933,-29.835,-28.750,-27.641,-26.550,-25.598,-24.828,-24.076,-23.120,-21.989,-21.019,
--20.510,-20.361,-20.160,-19.642,-18.969,-18.490,-18.318,-18.259,-18.113,-17.929,-17.894,-18.064,-18.302,-18.449,-18.462,-18.363,
--18.134,-17.749,-17.258,-16.777,-16.377,-16.019,-15.623,-15.167,-14.709,-14.313,-13.992,-13.713,-13.441,-13.184,-12.993,-12.905,
--12.874,-12.780,-12.532,-12.163,-11.798,-11.524,-11.323,-11.145,-11.007,-10.978,-11.076,-11.231,-11.342,-11.332,-11.135,-10.708,
--10.100,-9.488,-9.065,-8.859,-8.741,-8.596,-8.453,-8.370,-8.253,-7.890,-7.178,-6.259,-5.364,-4.591,-3.882,-3.201,
--2.639,-2.313,-2.218,-2.241,-2.300,-2.394,-2.509,-2.494,-2.105,-1.175,.233,1.820,3.227,4.240,4.896,5.382,
-5.840,6.274,6.646,7.024,7.558,8.319,9.189,9.966,10.549,10.988,11.379,11.765,12.168,12.643,13.248,13.951,
-14.630,15.183,15.614,16.001,16.415,16.883,17.422,18.046,18.732,19.405,19.991,20.488,20.967,21.509,22.132,22.790,
-23.409,23.947,24.414,24.875,25.401,26.027,26.746,27.526,28.328,29.094,29.758,30.301,30.800,31.366,32.005,32.570,
-32.898,33.003,33.100,33.401,33.909,34.430,34.787,34.994,35.202,35.529,35.953,36.379,36.763,37.173,37.735,38.517,
-39.456,40.390,41.173,41.773,42.215,42.464,42.427,42.133,41.845,41.848,42.038,41.835,40.681,38.694,36.752,35.808,
-36.076,36.904,37.411,37.227,36.637,36.155,36.037,36.194,36.432,36.701,37.068,37.521,37.873,37.948,37.844,37.938,
-38.515,39.397,40.052,40.118,39.781,39.562,39.789,40.351,40.949,41.445,41.877,42.260,42.527,42.676,42.833,43.096,
-43.403,43.613,43.677,43.636,43.498,43.220,42.828,42.456,42.212,42.119,42.208,42.598,43.318,44.124,44.663,44.891,
-45.169,45.832,46.736,47.390,47.537,47.434,47.515,47.892,48.326,48.594,48.726,48.865,49.042,49.200,49.330,49.488,
-49.680,49.827,49.868,49.820,49.740,49.657,49.593,49.594,49.682,49.805,49.882,49.893,49.882,49.870,49.825,49.716,
-49.555,49.371,49.163,48.940,48.749,48.628,48.531,48.371,48.132,47.900,47.750,47.652,47.528,47.361,47.209,47.133,
-47.160,47.286,47.473,47.641,47.773,48.011,48.538,49.266,49.763,49.656,49.113,48.709,48.730,48.780,48.252,47.081,
-45.718,44.281,42.049,38.169,32.907,27.927,25.130,25.211,27.343,30.085,32.389,33.855,34.426,34.188,33.440,32.668,
-32.239,32.119,31.977,31.562,30.929,30.304,29.812,29.369,28.818,28.093,27.255,26.397,25.555,24.711,23.856,23.027,
-22.269,21.573,20.891,20.203,19.557,19.020,18.597,18.222,17.835,17.429,17.004,16.511,15.886,15.150,14.440,13.897,
-13.546,13.297,13.048,12.768,12.459,12.110,11.695,11.227,10.748,10.289,9.850,9.437,9.069,8.750,8.432,8.072,
-7.693,7.381,7.189,7.071,6.925,6.678,6.334,5.943,5.566,5.252,5.004,4.763,4.438,3.990,3.469,2.965,
-2.532,2.185,1.933,1.774,1.646,1.448,1.136,.782,.496,.305,.149,-.014,-.163,-.279,-.406,-.594,
--.812,-.974,-1.054,-1.101,-1.139,-1.118,-1.010,-.903,-.935,-1.129,-1.376,-1.580,-1.767,-2.011,-2.307,-2.599,
--2.875,-3.164,-3.428,-3.557,-3.542,-3.559,-3.780,-4.128,-4.318,-4.192,-3.925,-3.826,-3.972,-4.144,-4.127,-3.956,
--3.832,-3.859,-3.963,-4.060,-4.195,-4.465,-4.862,-5.262,-5.576,-5.843,-6.150,-6.508,-6.846,-7.128,-7.410,-7.774,
--8.223,-8.667,-9.020,-9.281,-9.516,-9.778,-10.053,-10.301,-10.510,-10.710,-10.932,-11.175,-11.415,-11.632,-11.824,-11.995,
--12.143,-12.273,-12.398,-12.534,-12.683,-12.837,-12.977,-13.091,-13.172,-13.224,-13.262,-13.295,-13.319,-13.324,-13.307,-13.292,
--13.298,-13.326,-13.355,-13.374,-13.385,-13.388,-13.362,-13.292,-13.195,-13.116,-13.078,-13.053,-12.988,-12.864,-12.715,-12.587,
--12.488,-12.393,-12.279,-12.155,-12.045,-11.955,-11.868,-11.772,-11.679,-11.607,-11.561,-11.520,-11.461,-11.375,-11.267,-11.151,
--11.035,-10.925,-10.819,-10.707,-10.585,-10.458,-10.342,-10.238,-10.131,-10.006,-9.872,-9.752,-9.657,-9.572,-9.477,-9.369,
--9.262,-9.161,-9.062,-8.965,-8.877,-8.812,-8.766,-8.721,-8.655,-8.563,-8.461,-8.372,-8.311,-8.264,-8.200,-8.101,
--7.984,-7.886,-7.820,-7.758,-7.673,-7.570,-7.479,-7.408,-7.332,-7.222,-7.083,-6.936,-6.789,-6.634,-6.475,-6.342,
--6.259,-6.215,-6.172,-6.104,-6.019,-5.945,-5.894,-5.852,-5.791,-5.704,-5.609,-5.535,-5.480,-5.408,-5.285,-5.138,
--5.051,-5.084,-5.187,-5.229,-5.123,-4.913,-4.735,-4.675,-4.692,-4.672,-4.557,-4.392,-4.262,-4.191,-4.132,-4.032,
--3.897,-3.780,-3.714,-3.674,-3.614,-3.522,-3.434,-3.379,-3.346,-3.307,-3.259,-3.226,-3.206,-3.160,-3.056,-2.918,
--2.804,-2.738,-2.689,-2.620,-2.540,-2.484,-2.461,-2.439,-2.391,-2.320,-2.240,-2.144,-2.021,-1.889,-1.786,-1.728,
--1.684,-1.608,-1.485,-1.330,-1.160,-.988,-.826,-.688,-.572,-.462,-.353,-.261,-.190,-.107,.028,.211,
-.389,.518,.604,.676,.738,.782,.819,.890,1.010,1.145,1.256,1.353,1.474,1.625,1.759,1.844,
-1.912,2.020,2.185,2.371,2.552,2.739,2.941,3.126,3.252,3.322,3.379,3.454,3.537,3.627,3.756,3.949,
-4.170,4.346,4.458,4.581,4.794,5.084,5.358,5.554,5.702,5.875,6.090,6.299,6.468,6.638,6.881,7.210,
-7.542,7.765,7.850,7.892,8.045,8.394,8.882,9.365,9.741,10.039,10.371,10.801,11.296,11.778,12.218,12.629,
-12.992,13.247,13.383,13.509,13.778,14.229,14.755,15.219,15.586,15.917,16.267,16.643,17.049,17.472,17.833,18.038,
-18.102,18.118,17.957,17.139,15.320,13.093,12.070,13.718,17.944,23.014,27.074,29.693,31.773,34.139,36.616,38.587,
-40.001,41.343,42.656,43.126,41.945,39.387,36.673,34.847,34.060,33.949,34.256,34.749,34.800,33.611,31.089,28.221,
-26.272,25.640,25.669,25.531,25.044,24.558,24.326,24.240,24.125,24.009,23.996,24.017,23.875,23.502,23.046,22.671,
-22.366,22.001,21.522,21.028,20.646,20.395,20.165,19.838,19.386,18.884,18.415,17.978,17.500,16.933,16.314,15.712,
-15.126,14.484,13.741,12.929,12.090,11.199,10.215,9.210,8.364,7.805,7.464,7.140,6.699,6.198,5.801,5.618,
-5.639,5.793,6.024,6.284,6.487,6.513,6.312,5.988,5.748,5.696,5.696,5.477,4.912,4.153,3.436,2.793,
-2.040,1.095,.206,-.234,-.131,.149,.090,-.539,-1.585,-2.779,-3.992,-5.195,-6.272,-6.995,-7.239,-7.169,
--7.172,-7.570,-8.376,-9.316,-10.055,-10.429,-10.493,-10.405,-10.294,-10.217,-10.195,-10.247,-10.379,-10.573,-10.806,-11.062,
--11.323,-11.556,-11.734,-11.836,-11.814,-11.583,-11.092,-10.431,-9.835,-9.507,-9.452,-9.485,-9.422,-9.216,-8.917,-8.565,
--8.155,-7.705,-7.278,-6.924,-6.624,-6.321,-5.984,-5.616,-5.227,-4.821,-4.430,-4.108,-3.887,-3.737,-3.608,-3.474,
--3.339,-3.193,-3.005,-2.762,-2.497,-2.270,-2.110,-2.011,-1.942,-1.877,-1.791,-1.670,-1.530,-1.411,-1.335,-1.274,
--1.170,-1.002,-.805,-.634,-.502,-.366,-.176,.079,.369,.654,.918,1.166,1.411,1.667,1.935,2.208,
-2.464,2.687,2.878,3.066,3.279,3.519,3.761,3.983,4.196,4.424,4.675,4.926,5.152,5.350,5.540,5.741,
-5.958,6.185,6.419,6.657,6.893,7.121,7.346,7.579,7.822,8.062,8.286,8.499,8.716,8.944,9.179,9.415,
-9.664,9.938,10.235,10.535,10.824,11.105,11.380,11.633,11.847,12.033,12.243,12.519,12.851,13.177,13.438,13.614,
-13.719,13.769,13.779,13.775,13.795,13.861,13.964,14.070,14.151,14.201,14.235,14.271,14.322,14.387,14.457,14.521,
-14.581,14.645,14.716,14.789,14.862,14.945,15.047,15.167,15.288,15.401,15.514,15.641,15.790,15.950,16.111,16.269,
-16.433,16.619,16.831,17.050,17.248,17.415,17.575,17.760,17.971,18.180,18.364,18.538,18.726,18.934,19.151,19.376,
-19.612,19.838,20.021,20.169,20.345,20.606,20.662,21.001,21.345,21.649,21.917,22.161,22.360,22.514,22.699,23.030,
-23.538,24.123,24.637,24.992,25.173,25.174,24.994,24.706,24.455,24.371,24.460,24.634,24.812,24.967,25.086,25.143,
-25.139,25.129,25.157,25.189,25.161,25.092,25.084,25.190,25.324,25.366,25.322,25.314,25.407,25.509,25.493,25.373,
-25.284,25.310,25.406,25.508,25.669,25.991,26.477,27.000,27.448,27.846,28.293,28.827,29.394,29.924,30.385,30.766,
-31.053,31.274,31.509,31.807,32.123,32.382,32.592,32.820,33.037,33.062,32.752,32.235,31.855,31.860,32.181,32.557,
-32.803,32.878,32.726,32.218,31.326,30.300,29.541,29.279,29.410,29.670,29.878,29.994,30.015,29.964,29.955,30.153,
-30.575,30.990,31.108,30.887,30.566,30.373,30.266,30.040,29.634,29.248,29.123,29.268,29.456,29.487,29.386,29.334,
-29.445,29.658,29.834,29.950,30.140,30.536,31.067,31.460,31.484,31.182,30.810,30.537,30.246,29.692,28.824,27.847,
-26.964,26.148,25.267,24.386,23.788,23.617,23.574,23.094,21.864,20.130,18.478,17.363,16.838,16.658,16.549,16.379,
-16.157,15.935,15.709,15.406,14.978,14.512,14.185,14.046,13.863,13.281,12.191,10.890,9.825,9.184,8.784,8.348,
-7.829,7.398,7.197,7.182,7.214,7.247,7.343,7.552,7.835,8.112,8.346,8.546,8.704,8.787,8.775,8.702,
-8.603,8.442,8.112,7.556,6.918,6.548,6.807,7.770,9.107,10.276,10.922,11.108,11.178,11.378,11.635,11.697,
-11.460,11.099,10.874,10.851,10.856,10.698,10.363,9.964,9.559,9.075,8.448,7.749,7.132,6.674,6.329,6.041,
-5.840,5.767,5.755,5.666,5.455,5.238,5.147,5.169,5.181,5.127,5.094,5.183,5.375,5.569,5.721,5.869,
-6.044,6.204,6.308,6.380,6.455,6.502,6.460,6.338,6.221,6.143,6.035,5.832,5.591,5.429,5.360,5.280,
-5.142,5.058,5.164,5.409,5.586,5.575,5.480,5.490,5.652,5.851,5.999,6.153,6.412,6.755,7.053,7.222,
-7.308,7.394,7.464,7.399,7.132,6.778,6.567,6.624,6.813,6.840,6.538,6.039,5.627,5.431,5.301,5.024,
-4.609,4.290,4.241,4.351,4.334,4.024,3.511,3.004,2.620,2.339,2.099,1.868,1.625,1.341,1.008,.662,
-.348,.068,-.208,-.496,-.775,-1.033,-1.296,-1.601,-1.959,-2.338,-2.709,-3.075,-3.468,-3.916,-4.418,-4.944,
--5.460,-5.959,-6.462,-6.995,-7.547,-8.082,-8.578,-9.058,-9.569,-10.126,-10.692,-11.209,-11.649,-12.042,-12.443,-12.899,
--13.417,-13.975,-14.547,-15.115,-15.656,-16.126,-16.485,-16.750,-17.005,-17.343,-17.795,-18.322,-18.877,-19.437,-19.980,-20.458,
--20.835,-21.141,-21.457,-21.835,-22.256,-22.672,-23.070,-23.468,-23.868,-24.238,-24.553,-24.825,-25.090,-25.386,-25.738,-26.123,
--26.438,-26.546,-26.437,-26.327,-26.528,-27.170,-28.086,-28.995,-29.775,-30.477,-31.112,-31.567,-31.782,-31.959,-32.418,-33.240,
--34.121,-34.668,-34.796,-34.775,-34.899,-35.194,-35.489,-35.669,-35.803,-36.011,-36.320,-36.669,-37.010,-37.340,-37.654,-37.921,
--38.123,-38.287,-38.445,-38.588,-38.690,-38.767,-38.862,-38.980,-39.060,-39.055,-39.006,-38.993,-38.999,-38.911,-38.670,-38.413,
--38.382,-38.682,-39.155,-39.522,-39.627,-39.521,-39.341,-39.175,-39.053,-38.994,-38.996,-38.990,-38.883,-38.657,-38.401,-38.215,
--38.115,-38.045,-37.974,-37.918,-37.894,-37.891,-37.900,-37.946,-38.036,-38.125,-38.159,-38.154,-38.194,-38.321,-38.469,-38.538,
--38.509,-38.461,-38.483,-38.594,-38.737,-38.833,-38.820,-38.699,-38.541,-38.442,-38.427,-38.422,-38.327,-38.124,-37.864,-37.562,
--37.148,-36.551,-35.783,-34.909,-33.962,-32.932,-31.834,-30.711,-29.574,-28.400,-27.225,-26.164,-25.263,-24.369,-23.275,-22.039,
--21.034,-20.579,-20.552,-20.494,-20.107,-19.535,-19.119,-18.963,-18.866,-18.652,-18.408,-18.345,-18.518,-18.777,-18.957,-19.003,
--18.911,-18.649,-18.211,-17.697,-17.258,-16.944,-16.659,-16.284,-15.803,-15.312,-14.909,-14.620,-14.387,-14.131,-13.818,-13.504,
--13.284,-13.188,-13.126,-12.970,-12.702,-12.425,-12.234,-12.107,-11.969,-11.832,-11.796,-11.919,-12.120,-12.258,-12.237,-12.028,
--11.636,-11.101,-10.550,-10.146,-9.955,-9.905,-9.893,-9.905,-9.960,-9.975,-9.777,-9.271,-8.558,-7.811,-7.103,-6.394,
--5.702,-5.165,-4.915,-4.903,-4.934,-4.859,-4.667,-4.376,-3.876,-2.964,-1.529,.273,2.072,3.494,4.388,4.869,
-5.181,5.510,5.898,6.319,6.785,7.347,8.014,8.712,9.343,9.873,10.329,10.731,11.078,11.405,11.806,12.362,
-13.057,13.776,14.415,14.943,15.387,15.787,16.192,16.672,17.285,18.006,18.730,19.357,19.879,20.374,20.923,21.554,
-22.232,22.901,23.507,24.028,24.498,25.000,25.614,26.357,27.170,27.954,28.640,29.219,29.743,30.280,30.853,31.391,
-31.778,31.959,32.028,32.182,32.559,33.120,33.683,34.089,34.329,34.532,34.833,35.255,35.711,36.118,36.506,37.020,
-37.770,38.706,39.638,40.405,40.997,41.460,41.738,41.697,41.357,41.016,41.001,41.242,41.193,40.306,38.625,36.883,
-35.944,36.114,36.940,37.603,37.542,36.794,35.869,35.312,35.321,35.697,36.136,36.522,36.911,37.298,37.525,37.501,
-37.426,37.631,38.175,38.727,38.928,38.816,38.766,39.060,39.621,40.204,40.698,41.147,41.559,41.852,42.005,42.131,
-42.342,42.610,42.821,42.923,42.921,42.787,42.480,42.059,41.687,41.471,41.397,41.464,41.785,42.425,43.183,43.728,
-43.996,44.317,45.013,45.955,46.671,46.891,46.844,46.934,47.278,47.655,47.866,47.966,48.124,48.381,48.636,48.816,
-48.953,49.099,49.242,49.326,49.319,49.236,49.128,49.071,49.120,49.264,49.427,49.549,49.630,49.686,49.684,49.584,
-49.405,49.216,49.036,48.822,48.567,48.359,48.270,48.240,48.142,47.949,47.763,47.659,47.578,47.431,47.248,47.145,
-47.168,47.254,47.330,47.395,47.483,47.650,48.003,48.610,49.303,49.668,49.436,48.861,48.503,48.533,48.448,47.663,
-46.265,44.831,43.427,41.154,37.085,31.657,26.789,24.412,24.948,27.277,29.975,32.311,34.112,35.174,35.188,34.223,
-32.931,32.049,31.771,31.698,31.374,30.745,30.079,29.586,29.203,28.724,28.042,27.218,26.371,25.554,24.746,23.933,
-23.141,22.405,21.713,21.014,20.296,19.612,19.029,18.549,18.119,17.703,17.311,16.931,16.482,15.878,15.150,14.451,
-13.916,13.547,13.256,12.984,12.736,12.502,12.213,11.811,11.323,10.825,10.349,9.875,9.408,9.007,8.706,8.442,
-8.118,7.728,7.369,7.127,6.978,6.820,6.572,6.220,5.808,5.403,5.079,4.853,4.646,4.328,3.855,3.318,
-2.838,2.453,2.117,1.817,1.594,1.451,1.303,1.063,.759,.491,.298,.117,-.099,-.304,-.430,-.509,
--.635,-.835,-1.033,-1.154,-1.208,-1.225,-1.183,-1.055,-.906,-.876,-1.026,-1.271,-1.490,-1.665,-1.859,-2.106,
--2.379,-2.657,-2.955,-3.242,-3.432,-3.484,-3.502,-3.634,-3.889,-4.115,-4.195,-4.183,-4.211,-4.287,-4.296,-4.184,
--4.059,-4.045,-4.105,-4.082,-3.925,-3.780,-3.842,-4.148,-4.572,-4.988,-5.382,-5.792,-6.209,-6.579,-6.889,-7.200,
--7.578,-8.012,-8.425,-8.758,-9.026,-9.288,-9.584,-9.904,-10.209,-10.469,-10.687,-10.885,-11.082,-11.286,-11.497,-11.709,
--11.913,-12.092,-12.234,-12.344,-12.444,-12.561,-12.705,-12.861,-12.996,-13.092,-13.152,-13.198,-13.246,-13.290,-13.319,-13.334,
--13.353,-13.387,-13.426,-13.450,-13.454,-13.449,-13.442,-13.418,-13.359,-13.268,-13.176,-13.108,-13.056,-12.990,-12.890,-12.768,
--12.651,-12.550,-12.455,-12.353,-12.240,-12.125,-12.017,-11.914,-11.816,-11.725,-11.647,-11.583,-11.526,-11.467,-11.393,-11.295,
--11.178,-11.063,-10.969,-10.892,-10.809,-10.705,-10.586,-10.474,-10.373,-10.268,-10.150,-10.035,-9.940,-9.859,-9.769,-9.663,
--9.562,-9.485,-9.421,-9.342,-9.237,-9.132,-9.056,-9.014,-8.980,-8.931,-8.860,-8.778,-8.699,-8.633,-8.576,-8.507,
--8.404,-8.275,-8.153,-8.062,-7.993,-7.918,-7.828,-7.741,-7.672,-7.607,-7.519,-7.396,-7.251,-7.093,-6.917,-6.724,
--6.542,-6.411,-6.346,-6.319,-6.292,-6.246,-6.192,-6.146,-6.104,-6.048,-5.964,-5.864,-5.773,-5.698,-5.622,-5.523,
--5.420,-5.360,-5.365,-5.394,-5.368,-5.251,-5.090,-4.967,-4.918,-4.904,-4.859,-4.761,-4.636,-4.518,-4.412,-4.300,
--4.180,-4.075,-4.007,-3.969,-3.923,-3.842,-3.738,-3.643,-3.572,-3.516,-3.465,-3.438,-3.445,-3.457,-3.410,-3.276,
--3.106,-2.979,-2.924,-2.898,-2.848,-2.769,-2.696,-2.646,-2.605,-2.557,-2.506,-2.447,-2.356,-2.221,-2.074,-1.969,
--1.916,-1.864,-1.758,-1.597,-1.424,-1.271,-1.141,-1.023,-.914,-.811,-.704,-.584,-.463,-.355,-.252,-.131,
-.012,.154,.280,.404,.543,.684,.800,.888,.980,1.090,1.198,1.278,1.345,1.439,1.569,1.701,
-1.805,1.898,2.022,2.197,2.401,2.603,2.775,2.899,2.969,3.015,3.090,3.216,3.353,3.448,3.515,3.634,
-3.852,4.108,4.294,4.376,4.433,4.555,4.744,4.930,5.076,5.229,5.450,5.742,6.045,6.311,6.555,6.814,
-7.097,7.361,7.559,7.694,7.828,8.044,8.379,8.792,9.202,9.558,9.889,10.262,10.709,11.189,11.640,12.044,
-12.422,12.772,13.049,13.235,13.407,13.690,14.133,14.647,15.084,15.371,15.567,15.794,16.148,16.631,17.136,17.498,
-17.631,17.619,17.568,17.317,16.429,14.732,12.953,12.568,14.663,18.846,23.463,27.049,29.479,31.608,33.986,36.290,
-38.024,39.350,40.779,42.167,42.486,40.892,37.796,34.617,32.515,31.625,31.469,31.678,32.034,32.073,31.180,29.284,
-27.174,25.845,25.544,25.656,25.480,24.924,24.376,24.109,24.044,24.006,23.977,24.004,23.999,23.794,23.362,22.869,
-22.470,22.143,21.764,21.295,20.835,20.487,20.234,19.966,19.607,19.178,18.751,18.348,17.920,17.410,16.824,16.221,
-15.636,15.030,14.349,13.593,12.807,12.000,11.123,10.167,9.244,8.527,8.079,7.784,7.472,7.085,6.708,6.460,
-6.379,6.430,6.552,6.690,6.776,6.734,6.521,6.183,5.856,5.677,5.671,5.694,5.545,5.142,4.582,3.996,
-3.372,2.580,1.606,.692,.162,.090,.187,.048,-.530,-1.482,-2.650,-3.923,-5.181,-6.214,-6.798,-6.910,
--6.813,-6.896,-7.393,-8.239,-9.165,-9.903,-10.325,-10.453,-10.390,-10.263,-10.192,-10.254,-10.443,-10.686,-10.916,-11.135,
--11.379,-11.629,-11.799,-11.822,-11.723,-11.567,-11.348,-10.998,-10.518,-10.056,-9.794,-9.750,-9.745,-9.583,-9.222,-8.771,
--8.335,-7.927,-7.518,-7.105,-6.724,-6.390,-6.079,-5.746,-5.356,-4.911,-4.455,-4.068,-3.816,-3.683,-3.585,-3.446,
--3.262,-3.069,-2.862,-2.590,-2.234,-1.862,-1.585,-1.455,-1.427,-1.410,-1.347,-1.242,-1.128,-1.032,-.961,-.901,
--.821,-.692,-.512,-.310,-.125,.030,.175,.339,.538,.760,.987,1.205,1.419,1.645,1.902,2.188,
-2.479,2.742,2.960,3.150,3.353,3.592,3.854,4.104,4.322,4.527,4.754,5.015,5.282,5.514,5.697,5.858,
-6.038,6.256,6.497,6.730,6.944,7.147,7.361,7.600,7.858,8.116,8.357,8.579,8.792,9.012,9.239,9.469,
-9.700,9.943,10.209,10.492,10.772,11.035,11.286,11.534,11.773,11.984,12.166,12.357,12.606,12.932,13.291,13.608,
-13.826,13.939,13.982,13.992,13.995,13.999,14.012,14.043,14.096,14.159,14.210,14.242,14.270,14.321,14.402,14.491,
-14.563,14.613,14.663,14.727,14.802,14.876,14.950,15.032,15.127,15.233,15.355,15.503,15.677,15.861,16.032,16.187,
-16.342,16.512,16.695,16.871,17.031,17.184,17.354,17.559,17.790,18.014,18.204,18.365,18.536,18.742,18.978,19.222,
-19.463,19.698,19.910,20.078,20.218,20.395,20.662,20.744,21.073,21.417,21.741,22.041,22.314,22.547,22.742,22.957,
-23.274,23.727,24.247,24.703,24.965,24.962,24.712,24.339,24.033,23.935,24.038,24.211,24.350,24.474,24.656,24.885,
-25.049,25.068,24.993,24.933,24.925,24.922,24.908,24.939,25.056,25.198,25.270,25.271,25.296,25.396,25.495,25.494,
-25.409,25.352,25.393,25.497,25.616,25.789,26.095,26.543,27.051,27.538,27.984,28.393,28.763,29.126,29.568,30.139,
-30.744,31.199,31.427,31.549,31.746,32.050,32.341,32.528,32.638,32.703,32.655,32.410,32.057,31.850,31.957,32.289,
-32.597,32.720,32.648,32.397,31.914,31.195,30.407,29.826,29.621,29.750,30.056,30.387,30.627,30.696,30.635,30.652,
-30.969,31.555,32.079,32.201,31.896,31.444,31.086,30.794,30.404,29.911,29.535,29.475,29.675,29.881,29.910,29.816,
-29.782,29.899,30.078,30.192,30.270,30.519,31.093,31.854,32.406,32.436,32.010,31.475,31.046,30.572,29.782,28.694,
-27.656,26.926,26.355,25.614,24.691,23.982,23.792,23.844,23.448,22.179,20.327,18.622,17.596,17.237,17.181,17.108,
-16.933,16.716,16.505,16.274,15.960,15.542,15.092,14.722,14.442,14.076,13.385,12.324,11.154,10.235,9.698,9.363,
-8.976,8.486,8.056,7.835,7.797,7.820,7.851,7.944,8.155,8.455,8.758,9.012,9.209,9.346,9.401,9.368,
-9.281,9.172,8.993,8.636,8.067,7.466,7.200,7.580,8.598,9.873,10.904,11.425,11.549,11.593,11.758,11.980,
-12.062,11.916,11.652,11.444,11.363,11.346,11.305,11.214,11.065,10.790,10.288,9.548,8.718,8.000,7.489,7.138,
-6.868,6.667,6.558,6.503,6.415,6.263,6.116,6.044,6.024,5.977,5.901,5.893,6.026,6.250,6.450,6.578,
-6.681,6.802,6.922,7.004,7.057,7.103,7.116,7.051,6.925,6.805,6.713,6.588,6.392,6.199,6.118,6.129,
-6.094,5.956,5.859,5.985,6.304,6.554,6.525,6.296,6.151,6.282,6.633,7.018,7.335,7.607,7.858,8.041,
-8.090,8.023,7.925,7.847,7.749,7.566,7.328,7.152,7.109,7.110,6.975,6.639,6.240,5.984,5.917,5.882,
-5.723,5.475,5.299,5.249,5.170,4.869,4.335,3.759,3.336,3.095,2.932,2.740,2.487,2.181,1.839,1.484,
-1.150,.857,.586,.309,.025,-.248,-.507,-.781,-1.093,-1.434,-1.777,-2.112,-2.457,-2.839,-3.273,-3.753,
--4.258,-4.770,-5.283,-5.807,-6.344,-6.875,-7.374,-7.845,-8.326,-8.851,-9.410,-9.951,-10.432,-10.856,-11.268,-11.710,
--12.206,-12.752,-13.330,-13.915,-14.475,-14.972,-15.373,-15.672,-15.916,-16.197,-16.597,-17.123,-17.714,-18.298,-18.840,-19.332,
--19.760,-20.113,-20.416,-20.730,-21.101,-21.526,-21.966,-22.393,-22.797,-23.175,-23.526,-23.859,-24.180,-24.489,-24.786,-25.098,
--25.446,-25.789,-26.036,-26.166,-26.305,-26.637,-27.201,-27.853,-28.460,-29.062,-29.773,-30.529,-31.074,-31.268,-31.343,-31.719,
--32.541,-33.488,-34.105,-34.270,-34.262,-34.401,-34.721,-35.035,-35.220,-35.344,-35.525,-35.787,-36.081,-36.394,-36.743,-37.099,
--37.377,-37.550,-37.693,-37.886,-38.105,-38.254,-38.305,-38.340,-38.435,-38.560,-38.636,-38.647,-38.629,-38.544,-38.264,-37.764,
--37.282,-37.187,-37.641,-38.423,-39.119,-39.465,-39.483,-39.344,-39.184,-39.064,-39.010,-39.009,-38.990,-38.865,-38.630,-38.371,
--38.166,-38.013,-37.886,-37.807,-37.813,-37.877,-37.922,-37.928,-37.967,-38.099,-38.267,-38.361,-38.370,-38.405,-38.546,-38.726,
--38.804,-38.738,-38.643,-38.667,-38.850,-39.097,-39.264,-39.261,-39.106,-38.912,-38.791,-38.751,-38.694,-38.524,-38.264,-38.002,
--37.758,-37.442,-36.967,-36.340,-35.622,-34.812,-33.860,-32.771,-31.618,-30.448,-29.245,-28.017,-26.861,-25.826,-24.788,-23.570,
--22.255,-21.235,-20.836,-20.917,-20.973,-20.660,-20.114,-19.698,-19.549,-19.480,-19.294,-19.040,-18.908,-18.970,-19.129,-19.267,
--19.330,-19.275,-19.036,-18.613,-18.145,-17.792,-17.568,-17.321,-16.915,-16.373,-15.849,-15.477,-15.270,-15.130,-14.922,-14.576,
--14.155,-13.812,-13.644,-13.585,-13.479,-13.264,-13.038,-12.919,-12.891,-12.847,-12.757,-12.717,-12.801,-12.939,-12.977,-12.839,
--12.569,-12.235,-11.869,-11.511,-11.246,-11.137,-11.155,-11.211,-11.251,-11.267,-11.224,-11.038,-10.661,-10.151,-9.600,-9.031,
--8.422,-7.824,-7.382,-7.182,-7.116,-6.944,-6.508,-5.821,-4.952,-3.878,-2.504,-.839,.912,2.439,3.527,4.174,
-4.540,4.816,5.131,5.534,6.033,6.608,7.211,7.775,8.262,8.702,9.160,9.655,10.125,10.502,10.812,11.179,
-11.708,12.386,13.102,13.757,14.317,14.793,15.209,15.613,16.085,16.686,17.392,18.099,18.718,19.246,19.755,20.311,
-20.932,21.601,22.285,22.939,23.528,24.058,24.600,25.238,25.994,26.786,27.492,28.053,28.513,28.973,29.488,30.014,
-30.445,30.713,30.860,31.019,31.317,31.792,32.372,32.926,33.348,33.613,33.800,34.042,34.425,34.914,35.410,35.881,
-36.423,37.150,38.034,38.903,39.620,40.201,40.704,41.051,41.069,40.749,40.381,40.305,40.498,40.497,39.803,38.385,
-36.788,35.763,35.741,36.543,37.481,37.788,37.137,35.893,34.838,34.529,34.902,35.479,35.923,36.278,36.686,37.052,
-37.154,37.013,36.951,37.216,37.673,37.995,38.086,38.169,38.475,38.974,39.495,39.965,40.431,40.882,41.206,41.359,
-41.453,41.622,41.864,42.074,42.184,42.194,42.092,41.840,41.475,41.121,40.883,40.777,40.827,41.127,41.702,42.356,
-42.815,43.063,43.418,44.154,45.124,45.880,46.177,46.219,46.372,46.732,47.089,47.259,47.310,47.439,47.723,48.063,
-48.333,48.499,48.605,48.696,48.775,48.804,48.753,48.649,48.588,48.656,48.842,49.054,49.219,49.333,49.396,49.356,
-49.183,48.946,48.763,48.653,48.521,48.311,48.100,47.994,47.969,47.911,47.778,47.647,47.572,47.489,47.334,47.172,
-47.133,47.229,47.341,47.371,47.350,47.380,47.552,47.944,48.559,49.193,49.466,49.186,48.647,48.360,48.381,48.127,
-47.055,45.383,43.782,42.285,39.903,35.716,30.314,25.761,23.928,24.955,27.463,30.038,32.215,34.085,35.456,35.791,
-34.921,33.438,32.217,31.645,31.434,31.119,30.555,29.923,29.396,28.944,28.421,27.751,26.976,26.178,25.401,24.644,
-23.902,23.185,22.501,21.830,21.135,20.414,19.716,19.093,18.548,18.049,17.594,17.206,16.864,16.455,15.876,15.166,
-14.489,13.976,13.607,13.288,12.981,12.721,12.505,12.242,11.853,11.365,10.865,10.385,9.897,9.407,8.992,8.699,
-8.459,8.156,7.773,7.400,7.121,6.915,6.699,6.419,6.072,5.675,5.273,4.935,4.700,4.497,4.188,3.724,
-3.211,2.788,2.464,2.144,1.790,1.483,1.294,1.163,.969,.700,.452,.280,.122,-.094,-.325,-.475,
--.538,-.624,-.807,-1.034,-1.208,-1.297,-1.327,-1.290,-1.159,-.982,-.890,-.974,-1.188,-1.417,-1.609,-1.807,
--2.052,-2.331,-2.616,-2.902,-3.177,-3.389,-3.507,-3.581,-3.698,-3.879,-4.055,-4.177,-4.279,-4.401,-4.499,-4.495,
--4.423,-4.422,-4.556,-4.691,-4.616,-4.296,-3.936,-3.788,-3.931,-4.264,-4.658,-5.064,-5.480,-5.889,-6.267,-6.633,
--7.029,-7.464,-7.885,-8.234,-8.507,-8.754,-9.030,-9.353,-9.708,-10.063,-10.384,-10.646,-10.850,-11.019,-11.188,-11.374,
--11.578,-11.784,-11.975,-12.136,-12.261,-12.366,-12.483,-12.630,-12.792,-12.937,-13.043,-13.116,-13.180,-13.248,-13.316,-13.378,
--13.432,-13.482,-13.523,-13.542,-13.535,-13.512,-13.493,-13.485,-13.474,-13.438,-13.364,-13.262,-13.154,-13.061,-12.983,-12.904,
--12.814,-12.713,-12.614,-12.525,-12.438,-12.341,-12.228,-12.106,-11.993,-11.898,-11.816,-11.737,-11.654,-11.570,-11.490,-11.407,
--11.313,-11.209,-11.110,-11.034,-10.973,-10.906,-10.816,-10.714,-10.615,-10.522,-10.419,-10.304,-10.193,-10.101,-10.015,-9.913,
--9.802,-9.718,-9.679,-9.656,-9.599,-9.492,-9.371,-9.278,-9.224,-9.186,-9.145,-9.098,-9.048,-8.994,-8.935,-8.871,
--8.797,-8.698,-8.573,-8.440,-8.325,-8.229,-8.139,-8.043,-7.954,-7.886,-7.825,-7.742,-7.623,-7.484,-7.345,-7.202,
--7.033,-6.840,-6.661,-6.543,-6.501,-6.504,-6.505,-6.481,-6.434,-6.375,-6.300,-6.201,-6.082,-5.968,-5.883,-5.827,
--5.786,-5.750,-5.723,-5.696,-5.645,-5.550,-5.423,-5.312,-5.246,-5.211,-5.163,-5.083,-4.985,-4.889,-4.787,-4.659,
--4.510,-4.377,-4.299,-4.277,-4.272,-4.241,-4.172,-4.081,-3.985,-3.889,-3.798,-3.736,-3.730,-3.771,-3.794,-3.727,
--3.559,-3.361,-3.223,-3.169,-3.151,-3.112,-3.037,-2.949,-2.867,-2.794,-2.738,-2.704,-2.669,-2.591,-2.452,-2.290,
--2.164,-2.084,-1.997,-1.853,-1.665,-1.489,-1.359,-1.256,-1.151,-1.036,-.920,-.809,-.697,-.582,-.469,-.352,
--.224,-.089,.037,.150,.271,.420,.590,.753,.892,1.017,1.136,1.239,1.314,1.372,1.449,1.565,
-1.709,1.853,1.981,2.104,2.247,2.426,2.625,2.791,2.868,2.858,2.841,2.908,3.073,3.259,3.394,3.495,
-3.638,3.854,4.082,4.246,4.338,4.414,4.512,4.607,4.676,4.753,4.910,5.175,5.507,5.839,6.139,6.407,
-6.637,6.815,6.947,7.080,7.274,7.557,7.906,8.269,8.610,8.928,9.249,9.610,10.021,10.458,10.881,11.272,
-11.645,12.019,12.383,12.697,12.944,13.170,13.466,13.886,14.382,14.835,15.143,15.318,15.493,15.814,16.309,16.831,
-17.179,17.289,17.272,17.194,16.828,15.809,14.210,12.945,13.339,16.022,20.248,24.454,27.600,29.877,32.061,34.403,
-36.409,37.676,38.531,39.552,40.595,40.711,39.167,36.357,33.479,31.432,30.268,29.645,29.427,29.605,29.843,29.545,
-28.487,27.157,26.261,25.972,25.839,25.410,24.732,24.179,23.958,23.944,23.948,23.938,23.953,23.924,23.716,23.303,
-22.812,22.367,21.969,21.551,21.106,20.698,20.360,20.041,19.676,19.268,18.873,18.518,18.156,17.725,17.213,16.668,
-16.123,15.553,14.905,14.181,13.438,12.711,11.949,11.083,10.151,9.313,8.714,8.345,8.073,7.795,7.530,7.346,
-7.262,7.245,7.270,7.325,7.362,7.282,7.030,6.669,6.340,6.136,6.043,5.983,5.897,5.768,5.583,5.283,
-4.771,3.969,2.922,1.842,1.025,.644,.605,.610,.382,-.183,-1.051,-2.171,-3.484,-4.825,-5.907,-6.504,
--6.658,-6.683,-6.931,-7.544,-8.398,-9.258,-9.940,-10.368,-10.533,-10.483,-10.328,-10.229,-10.300,-10.524,-10.784,-10.987,
--11.148,-11.329,-11.511,-11.585,-11.487,-11.294,-11.146,-11.067,-10.937,-10.658,-10.302,-10.041,-9.932,-9.839,-9.577,-9.112,
--8.568,-8.079,-7.670,-7.286,-6.891,-6.503,-6.151,-5.825,-5.487,-5.100,-4.661,-4.223,-3.865,-3.635,-3.493,-3.338,
--3.099,-2.803,-2.518,-2.266,-1.996,-1.679,-1.366,-1.152,-1.064,-1.028,-.952,-.817,-.682,-.607,-.583,-.549,
--.456,-.303,-.116,.081,.276,.457,.612,.735,.844,.975,1.150,1.357,1.558,1.734,1.906,2.114,
-2.373,2.652,2.907,3.123,3.330,3.566,3.839,4.123,4.382,4.605,4.814,5.038,5.289,5.547,5.781,5.975,
-6.148,6.338,6.565,6.813,7.043,7.235,7.408,7.606,7.849,8.123,8.392,8.631,8.847,9.063,9.291,9.527,
-9.757,9.980,10.208,10.452,10.710,10.966,11.202,11.421,11.636,11.854,12.065,12.256,12.443,12.666,12.960,13.312,
-13.654,13.910,14.050,14.108,14.134,14.156,14.163,14.145,14.119,14.119,14.156,14.205,14.240,14.265,14.308,14.382,
-14.467,14.535,14.583,14.635,14.710,14.802,14.893,14.977,15.061,15.148,15.245,15.367,15.527,15.717,15.907,16.074,
-16.229,16.394,16.569,16.725,16.845,16.951,17.092,17.294,17.534,17.763,17.952,18.114,18.290,18.508,18.767,19.036,
-19.290,19.521,19.735,19.929,20.101,20.268,20.471,20.744,20.852,21.146,21.457,21.773,22.086,22.392,22.684,22.963,
-23.245,23.562,23.939,24.362,24.752,24.970,24.890,24.513,24.020,23.680,23.644,23.827,24.010,24.076,24.111,24.264,
-24.538,24.770,24.823,24.733,24.644,24.639,24.684,24.726,24.779,24.882,25.015,25.121,25.191,25.274,25.398,25.510,
-25.543,25.508,25.482,25.519,25.610,25.735,25.926,26.230,26.651,27.147,27.663,28.136,28.495,28.726,28.950,29.374,
-30.080,30.869,31.413,31.574,31.542,31.625,31.922,32.276,32.488,32.513,32.407,32.194,31.879,31.568,31.464,31.674,
-32.068,32.380,32.437,32.251,31.913,31.481,30.990,30.520,30.187,30.070,30.182,30.484,30.876,31.179,31.244,31.126,
-31.122,31.503,32.196,32.784,32.884,32.492,31.923,31.435,31.022,30.565,30.096,29.817,29.856,30.102,30.311,30.345,
-30.281,30.274,30.366,30.452,30.441,30.434,30.699,31.406,32.366,33.080,33.136,32.567,31.757,31.004,30.241,29.267,
-28.155,27.258,26.760,26.380,25.688,24.694,23.914,23.756,23.923,23.621,22.355,20.453,18.744,17.805,17.573,17.605,
-17.558,17.377,17.150,16.922,16.659,16.328,15.948,15.569,15.215,14.829,14.268,13.413,12.324,11.259,10.497,10.093,
-9.849,9.530,9.095,8.692,8.466,8.411,8.426,8.462,8.564,8.782,9.089,9.398,9.643,9.810,9.911,9.950,
-9.927,9.858,9.738,9.515,9.112,8.557,8.064,7.963,8.474,9.503,10.664,11.547,11.983,12.100,12.138,12.226,
-12.325,12.338,12.242,12.098,11.982,11.927,11.933,11.991,12.074,12.094,11.907,11.406,10.620,9.730,8.948,8.381,
-7.991,7.692,7.446,7.275,7.185,7.137,7.085,7.014,6.937,6.860,6.788,6.762,6.841,7.027,7.248,7.413,
-7.507,7.576,7.650,7.712,7.737,7.740,7.738,7.708,7.609,7.453,7.300,7.179,7.055,6.906,6.792,6.792,
-6.870,6.889,6.786,6.697,6.819,7.155,7.456,7.470,7.222,7.007,7.110,7.546,8.095,8.529,8.775,8.877,
-8.866,8.736,8.508,8.279,8.164,8.182,8.248,8.252,8.150,7.955,7.686,7.353,7.018,6.788,6.728,6.761,
-6.725,6.534,6.263,6.031,5.839,5.560,5.115,4.588,4.155,3.904,3.760,3.590,3.327,2.993,2.637,2.291,
-1.972,1.689,1.432,1.172,.890,.596,.305,.009,-.307,-.639,-.962,-1.264,-1.564,-1.894,-2.268,-2.681,
--3.124,-3.593,-4.085,-4.596,-5.122,-5.653,-6.168,-6.649,-7.113,-7.599,-8.127,-8.665,-9.161,-9.599,-10.016,-10.463,
--10.961,-11.497,-12.059,-12.638,-13.213,-13.748,-14.201,-14.559,-14.847,-15.130,-15.484,-15.959,-16.538,-17.149,-17.715,-18.200,
--18.616,-18.986,-19.324,-19.649,-19.992,-20.382,-20.820,-21.277,-21.714,-22.106,-22.458,-22.802,-23.170,-23.557,-23.919,-24.218,
--24.485,-24.786,-25.146,-25.515,-25.853,-26.205,-26.647,-27.157,-27.622,-28.009,-28.460,-29.126,-29.907,-30.477,-30.652,-30.666,
--30.985,-31.800,-32.801,-33.505,-33.754,-33.806,-33.982,-34.320,-34.630,-34.794,-34.891,-35.048,-35.281,-35.536,-35.802,-36.117,
--36.454,-36.718,-36.868,-36.992,-37.191,-37.435,-37.601,-37.651,-37.698,-37.857,-38.100,-38.298,-38.376,-38.340,-38.152,-37.702,
--37.001,-36.343,-36.173,-36.697,-37.682,-38.646,-39.244,-39.440,-39.388,-39.243,-39.101,-39.017,-38.993,-38.963,-38.849,-38.652,
--38.432,-38.220,-37.994,-37.771,-37.651,-37.714,-37.890,-38.023,-38.055,-38.091,-38.238,-38.439,-38.547,-38.533,-38.538,-38.684,
--38.905,-39.022,-38.963,-38.848,-38.852,-39.027,-39.272,-39.439,-39.452,-39.346,-39.224,-39.159,-39.121,-38.999,-38.734,-38.395,
--38.102,-37.883,-37.639,-37.278,-36.806,-36.259,-35.596,-34.731,-33.667,-32.510,-31.343,-30.146,-28.901,-27.681,-26.551,-25.413,
--24.116,-22.748,-21.706,-21.323,-21.458,-21.583,-21.319,-20.780,-20.353,-20.215,-20.201,-20.086,-19.857,-19.652,-19.551,-19.520,
--19.521,-19.542,-19.524,-19.359,-19.021,-18.642,-18.387,-18.254,-18.069,-17.684,-17.135,-16.595,-16.213,-16.015,-15.908,-15.744,
--15.422,-14.967,-14.531,-14.255,-14.125,-14.000,-13.802,-13.615,-13.566,-13.646,-13.722,-13.710,-13.666,-13.664,-13.656,-13.524,
--13.241,-12.917,-12.669,-12.508,-12.382,-12.285,-12.262,-12.321,-12.401,-12.424,-12.364,-12.221,-11.983,-11.645,-11.228,-10.764,
--10.259,-9.720,-9.212,-8.835,-8.592,-8.324,-7.810,-6.945,-5.796,-4.476,-3.036,-1.496,.042,1.386,2.387,3.057,
-3.533,3.943,4.334,4.718,5.143,5.682,6.335,6.990,7.510,7.860,8.153,8.530,9.025,9.538,9.967,10.329,
-10.744,11.301,11.965,12.629,13.214,13.718,14.169,14.596,15.034,15.537,16.144,16.828,17.512,18.138,18.715,19.293,
-19.897,20.518,21.136,21.746,22.345,22.927,23.494,24.084,24.746,25.483,26.225,26.867,27.358,27.747,28.133,28.568,
-29.005,29.359,29.606,29.831,30.148,30.601,31.141,31.681,32.165,32.556,32.833,33.024,33.234,33.584,34.095,34.669,
-35.217,35.773,36.444,37.245,38.060,38.780,39.410,39.985,40.406,40.499,40.249,39.923,39.827,39.949,39.903,39.253,
-37.915,36.273,34.990,34.644,35.362,36.628,37.491,37.227,35.947,34.543,33.908,34.191,34.854,35.370,35.699,36.062,
-36.455,36.630,36.500,36.347,36.490,36.904,37.289,37.479,37.620,37.922,38.388,38.882,39.336,39.786,40.213,40.509,
-40.636,40.723,40.919,41.210,41.449,41.532,41.484,41.362,41.172,40.912,40.624,40.379,40.242,40.288,40.594,41.134,
-41.708,42.108,42.370,42.781,43.547,44.502,45.252,45.594,45.710,45.913,46.289,46.657,46.842,46.874,46.934,47.151,
-47.499,47.853,48.097,48.204,48.240,48.288,48.352,48.360,48.277,48.188,48.225,48.410,48.637,48.797,48.876,48.898,
-48.839,48.674,48.468,48.344,48.328,48.303,48.167,47.962,47.805,47.732,47.672,47.581,47.491,47.428,47.347,47.218,
-47.112,47.126,47.238,47.317,47.290,47.219,47.224,47.399,47.799,48.395,48.966,49.163,48.852,48.360,48.150,48.180,
-47.804,46.499,44.551,42.671,40.900,38.285,34.029,28.858,24.847,23.674,25.180,27.769,30.033,31.728,33.246,34.612,
-35.302,34.938,33.812,32.605,31.753,31.222,30.779,30.301,29.799,29.279,28.704,28.053,27.352,26.633,25.904,25.169,
-24.443,23.747,23.085,22.448,21.812,21.157,20.483,19.816,19.191,18.616,18.081,17.599,17.196,16.846,16.435,15.861,
-15.165,14.517,14.044,13.710,13.397,13.056,12.738,12.470,12.185,11.803,11.334,10.851,10.386,9.913,9.440,9.035,
-8.736,8.481,8.171,7.796,7.436,7.142,6.879,6.591,6.268,5.928,5.567,5.182,4.829,4.567,4.352,4.051,
-3.607,3.123,2.745,2.475,2.182,1.805,1.441,1.208,1.069,.890,.629,.383,.236,.134,-.022,-.228,
--.390,-.478,-.579,-.778,-1.037,-1.253,-1.373,-1.418,-1.395,-1.285,-1.113,-.988,-1.011,-1.171,-1.380,-1.583,
--1.803,-2.077,-2.392,-2.707,-2.995,-3.244,-3.442,-3.592,-3.729,-3.883,-4.030,-4.121,-4.169,-4.255,-4.422,-4.602,
--4.701,-4.744,-4.858,-5.089,-5.296,-5.276,-4.990,-4.618,-4.383,-4.375,-4.540,-4.795,-5.093,-5.404,-5.707,-6.017,
--6.392,-6.858,-7.353,-7.766,-8.051,-8.261,-8.488,-8.779,-9.125,-9.497,-9.873,-10.226,-10.524,-10.754,-10.938,-11.112,
--11.290,-11.470,-11.645,-11.817,-11.982,-12.133,-12.272,-12.417,-12.580,-12.750,-12.897,-13.009,-13.096,-13.175,-13.253,-13.329,
--13.403,-13.480,-13.548,-13.586,-13.587,-13.566,-13.547,-13.544,-13.550,-13.546,-13.515,-13.443,-13.330,-13.201,-13.091,-13.020,
--12.973,-12.913,-12.823,-12.716,-12.620,-12.542,-12.463,-12.364,-12.246,-12.130,-12.029,-11.942,-11.858,-11.769,-11.674,-11.579,
--11.485,-11.389,-11.294,-11.208,-11.135,-11.071,-11.002,-10.920,-10.831,-10.746,-10.661,-10.564,-10.454,-10.342,-10.235,-10.125,
--10.004,-9.892,-9.826,-9.816,-9.823,-9.789,-9.693,-9.572,-9.471,-9.404,-9.356,-9.315,-9.281,-9.255,-9.223,-9.175,
--9.109,-9.032,-8.942,-8.834,-8.712,-8.594,-8.485,-8.375,-8.262,-8.160,-8.083,-8.020,-7.932,-7.799,-7.651,-7.533,
--7.452,-7.360,-7.208,-7.007,-6.827,-6.737,-6.736,-6.765,-6.763,-6.714,-6.638,-6.549,-6.442,-6.312,-6.180,-6.078,
--6.022,-5.997,-5.981,-5.959,-5.919,-5.849,-5.748,-5.640,-5.563,-5.524,-5.488,-5.417,-5.312,-5.211,-5.132,-5.052,
--4.938,-4.795,-4.670,-4.603,-4.583,-4.571,-4.538,-4.488,-4.425,-4.338,-4.218,-4.088,-4.005,-4.004,-4.054,-4.067,
--3.973,-3.785,-3.586,-3.455,-3.400,-3.375,-3.330,-3.254,-3.160,-3.062,-2.971,-2.906,-2.874,-2.848,-2.776,-2.635,
--2.460,-2.308,-2.193,-2.079,-1.931,-1.761,-1.613,-1.503,-1.403,-1.281,-1.136,-.993,-.873,-.771,-.674,-.566,
--.439,-.295,-.148,-.016,.096,.209,.345,.509,.685,.856,1.018,1.166,1.292,1.385,1.452,1.518,
-1.615,1.758,1.927,2.082,2.198,2.296,2.420,2.585,2.740,2.817,2.810,2.796,2.857,2.992,3.143,3.275,
-3.422,3.612,3.815,3.969,4.069,4.174,4.317,4.448,4.498,4.485,4.521,4.697,4.988,5.302,5.581,5.838,
-6.092,6.312,6.455,6.540,6.656,6.890,7.248,7.655,8.031,8.352,8.662,9.016,9.421,9.833,10.204,10.533,
-10.863,11.232,11.633,12.022,12.363,12.656,12.930,13.236,13.621,14.093,14.589,14.996,15.264,15.478,15.794,16.262,
-16.743,17.051,17.161,17.179,17.073,16.520,15.260,13.683,12.947,14.219,17.617,21.974,25.786,28.452,30.518,32.736,
-35.090,36.896,37.738,37.989,38.266,38.587,38.330,37.031,34.975,32.865,31.113,29.673,28.518,27.920,28.097,28.719,
-29.066,28.708,27.882,27.103,26.559,26.027,25.315,24.568,24.078,23.925,23.929,23.915,23.874,23.853,23.802,23.603,
-23.221,22.736,22.246,21.779,21.333,20.926,20.575,20.238,19.847,19.393,18.946,18.570,18.243,17.879,17.434,16.949,
-16.482,16.009,15.441,14.736,13.965,13.238,12.565,11.845,11.005,10.133,9.410,8.929,8.609,8.328,8.076,7.938,
-7.934,7.965,7.935,7.868,7.841,7.821,7.672,7.335,6.946,6.703,6.635,6.578,6.396,6.156,6.032,6.035,
-5.898,5.288,4.131,2.741,1.615,1.079,1.072,1.243,1.238,.915,.318,-.507,-1.594,-2.949,-4.389,-5.581,
--6.291,-6.584,-6.780,-7.179,-7.855,-8.665,-9.425,-10.031,-10.449,-10.653,-10.639,-10.480,-10.331,-10.324,-10.465,-10.645,
--10.772,-10.855,-10.948,-11.037,-11.036,-10.912,-10.761,-10.716,-10.767,-10.752,-10.537,-10.177,-9.863,-9.697,-9.589,-9.366,
--8.956,-8.431,-7.900,-7.409,-6.953,-6.530,-6.156,-5.833,-5.533,-5.218,-4.866,-4.480,-4.081,-3.713,-3.414,-3.167,
--2.910,-2.590,-2.223,-1.881,-1.610,-1.403,-1.230,-1.090,-.988,-.885,-.712,-.450,-.182,-.037,-.056,-.147,
--.161,-.026,.208,.442,.626,.778,.925,1.057,1.147,1.207,1.298,1.472,1.711,1.938,2.103,2.227,
-2.379,2.595,2.847,3.087,3.305,3.530,3.790,4.076,4.356,4.608,4.838,5.060,5.284,5.515,5.755,5.999,
-6.233,6.452,6.666,6.891,7.128,7.350,7.538,7.705,7.892,8.128,8.399,8.661,8.888,9.087,9.288,9.507,
-9.738,9.964,10.180,10.396,10.627,10.876,11.129,11.365,11.579,11.783,11.995,12.217,12.431,12.626,12.820,13.049,
-13.331,13.632,13.885,14.049,14.135,14.188,14.235,14.260,14.243,14.201,14.175,14.192,14.235,14.270,14.290,14.317,
-14.367,14.432,14.495,14.553,14.624,14.714,14.816,14.921,15.027,15.134,15.233,15.323,15.425,15.562,15.728,15.896,
-16.049,16.204,16.381,16.564,16.708,16.805,16.908,17.072,17.295,17.515,17.684,17.821,17.986,18.220,18.510,18.811,
-19.094,19.351,19.586,19.801,19.995,20.178,20.371,20.592,20.852,20.969,21.224,21.503,21.805,22.116,22.430,22.757,
-23.111,23.484,23.851,24.196,24.517,24.782,24.897,24.752,24.345,23.847,23.514,23.478,23.644,23.807,23.865,23.909,
-24.073,24.354,24.596,24.665,24.589,24.503,24.497,24.548,24.603,24.657,24.743,24.870,25.011,25.150,25.297,25.455,
-25.584,25.646,25.646,25.633,25.652,25.721,25.849,26.053,26.348,26.736,27.212,27.744,28.238,28.573,28.730,28.893,
-29.340,30.147,31.038,31.599,31.666,31.478,31.420,31.651,32.012,32.257,32.278,32.112,31.821,31.466,31.177,31.129,
-31.387,31.806,32.123,32.159,31.922,31.543,31.149,30.819,30.578,30.420,30.346,30.407,30.670,31.089,31.454,31.546,
-31.411,31.382,31.766,32.475,33.061,33.127,32.681,32.044,31.484,31.019,30.574,30.195,30.038,30.160,30.421,30.612,
-30.656,30.645,30.684,30.758,30.750,30.613,30.515,30.777,31.592,32.749,33.675,33.839,33.159,31.997,30.757,29.573,
-28.415,27.389,26.731,26.462,26.211,25.573,24.629,23.924,23.824,23.990,23.634,22.321,20.431,18.796,17.950,17.787,
-17.860,17.845,17.699,17.492,17.243,16.933,16.585,16.266,15.997,15.706,15.248,14.499,13.465,12.325,11.355,10.746,
-10.463,10.290,10.033,9.674,9.341,9.139,9.061,9.045,9.070,9.181,9.408,9.711,10.003,10.220,10.356,10.437,
-10.484,10.495,10.453,10.319,10.044,9.612,9.119,8.793,8.895,9.530,10.534,11.551,12.277,12.641,12.773,12.824,
-12.839,12.792,12.687,12.593,12.571,12.616,12.684,12.759,12.856,12.963,12.989,12.803,12.322,11.581,10.722,9.919,
-9.278,8.806,8.446,8.155,7.945,7.844,7.838,7.860,7.841,7.771,7.701,7.702,7.804,7.982,8.172,8.315,
-8.394,8.439,8.484,8.526,8.539,8.510,8.459,8.403,8.317,8.167,7.962,7.763,7.618,7.520,7.443,7.407,
-7.449,7.552,7.624,7.607,7.580,7.698,8.008,8.349,8.486,8.355,8.157,8.175,8.520,9.035,9.458,9.633,
-9.580,9.396,9.152,8.892,8.697,8.674,8.853,9.122,9.283,9.186,8.830,8.339,7.889,7.616,7.560,7.633,
-7.656,7.486,7.130,6.721,6.374,6.077,5.739,5.338,4.966,4.715,4.563,4.396,4.130,3.780,3.418,3.084,
-2.783,2.509,2.262,2.028,1.777,1.490,1.176,.846,.503,.148,-.196,-.507,-.792,-1.084,-1.409,-1.765,
--2.139,-2.534,-2.960,-3.416,-3.894,-4.395,-4.915,-5.437,-5.933,-6.407,-6.886,-7.387,-7.885,-8.339,-8.755,-9.186,
--9.679,-10.227,-10.792,-11.352,-11.908,-12.451,-12.945,-13.357,-13.696,-14.017,-14.382,-14.837,-15.389,-15.997,-16.588,-17.093,
--17.493,-17.826,-18.149,-18.498,-18.877,-19.282,-19.714,-20.169,-20.626,-21.049,-21.417,-21.744,-22.083,-22.472,-22.900,-23.298,
--23.615,-23.875,-24.157,-24.513,-24.925,-25.356,-25.816,-26.329,-26.841,-27.249,-27.548,-27.907,-28.497,-29.236,-29.800,-29.981,
--29.978,-30.248,-31.021,-32.041,-32.836,-33.200,-33.332,-33.526,-33.841,-34.118,-34.257,-34.341,-34.493,-34.716,-34.934,-35.132,
--35.364,-35.635,-35.866,-36.008,-36.129,-36.326,-36.580,-36.779,-36.893,-37.030,-37.303,-37.664,-37.953,-38.070,-38.015,-37.772,
--37.261,-36.510,-35.816,-35.619,-36.136,-37.154,-38.209,-38.938,-39.260,-39.284,-39.157,-39.005,-38.922,-38.917,-38.912,-38.822,
--38.653,-38.462,-38.259,-38.002,-37.729,-37.589,-37.691,-37.945,-38.145,-38.207,-38.254,-38.412,-38.620,-38.705,-38.637,-38.584,
--38.705,-38.947,-39.114,-39.106,-39.017,-39.003,-39.115,-39.276,-39.391,-39.431,-39.431,-39.441,-39.470,-39.455,-39.302,-38.988,
--38.604,-38.276,-38.031,-37.788,-37.475,-37.110,-36.710,-36.199,-35.461,-34.490,-33.404,-32.289,-31.119,-29.862,-28.594,-27.407,
--26.237,-24.938,-23.575,-22.519,-22.101,-22.204,-22.327,-22.093,-21.600,-21.212,-21.104,-21.119,-21.035,-20.820,-20.578,-20.361,
--20.148,-19.956,-19.851,-19.815,-19.721,-19.481,-19.179,-18.977,-18.905,-18.817,-18.554,-18.105,-17.591,-17.143,-16.825,-16.619,
--16.436,-16.163,-15.750,-15.280,-14.898,-14.661,-14.497,-14.336,-14.223,-14.254,-14.418,-14.577,-14.616,-14.554,-14.460,-14.325,
--14.083,-13.745,-13.442,-13.293,-13.280,-13.290,-13.267,-13.251,-13.291,-13.360,-13.377,-13.288,-13.092,-12.802,-12.424,-11.963,
--11.440,-10.887,-10.351,-9.885,-9.505,-9.122,-8.564,-7.689,-6.496,-5.104,-3.641,-2.173,-.768,.442,1.332,1.909,
-2.345,2.824,3.384,3.917,4.344,4.733,5.231,5.889,6.589,7.155,7.529,7.815,8.159,8.601,9.072,9.502,
-9.921,10.411,11.007,11.642,12.221,12.704,13.125,13.536,13.971,14.449,14.997,15.626,16.313,17.008,17.682,18.345,
-19.016,19.681,20.299,20.842,21.324,21.795,22.299,22.857,23.463,24.110,24.786,25.462,26.086,26.602,27.003,27.345,
-27.691,28.055,28.397,28.708,29.050,29.501,30.055,30.620,31.105,31.495,31.821,32.088,32.302,32.529,32.883,33.404,
-33.998,34.543,35.034,35.584,36.271,37.049,37.824,38.560,39.230,39.719,39.874,39.704,39.448,39.359,39.412,39.271,
-38.561,37.180,35.416,33.871,33.225,33.825,35.304,36.629,36.803,35.706,34.214,33.394,33.574,34.248,34.795,35.092,
-35.368,35.692,35.869,35.804,35.730,35.934,36.379,36.763,36.927,37.034,37.319,37.798,38.310,38.757,39.162,39.525,
-39.768,39.871,39.969,40.211,40.567,40.839,40.883,40.740,40.546,40.376,40.214,40.034,39.857,39.757,39.832,40.147,
-40.652,41.178,41.575,41.898,42.375,43.151,44.089,44.873,45.314,45.503,45.668,45.927,46.222,46.432,46.521,46.564,
-46.691,46.973,47.349,47.658,47.785,47.786,47.811,47.919,48.003,47.951,47.829,47.822,48.001,48.239,48.366,48.361,
-48.310,48.260,48.179,48.069,48.002,48.020,48.045,47.970,47.793,47.613,47.499,47.432,47.367,47.299,47.235,47.160,
-47.076,47.035,47.078,47.155,47.166,47.080,46.980,46.985,47.180,47.609,48.209,48.727,48.830,48.455,47.982,47.840,
-47.897,47.445,45.968,43.769,41.550,39.371,36.421,32.129,27.354,24.060,23.615,25.553,28.134,29.991,31.042,31.942,
-33.021,33.955,34.269,33.855,32.970,31.946,31.026,30.351,29.933,29.612,29.168,28.510,27.742,27.009,26.339,25.665,
-24.947,24.224,23.542,22.904,22.291,21.691,21.098,20.497,19.887,19.286,18.715,18.177,17.678,17.233,16.829,16.379,
-15.797,15.118,14.502,14.076,13.795,13.512,13.145,12.746,12.389,12.059,11.685,11.250,10.798,10.356,9.913,9.477,
-9.093,8.783,8.492,8.153,7.776,7.431,7.141,6.851,6.516,6.159,5.818,5.473,5.096,4.725,4.433,4.203,
-3.911,3.488,3.027,2.677,2.446,2.192,1.828,1.445,1.182,1.030,.855,.591,.327,.170,.098,.005,
--.146,-.297,-.414,-.557,-.788,-1.070,-1.304,-1.433,-1.478,-1.463,-1.381,-1.247,-1.138,-1.135,-1.247,-1.414,
--1.598,-1.813,-2.088,-2.412,-2.745,-3.047,-3.292,-3.477,-3.630,-3.801,-3.998,-4.158,-4.212,-4.194,-4.232,-4.406,
--4.649,-4.835,-4.943,-5.072,-5.293,-5.532,-5.639,-5.559,-5.381,-5.233,-5.178,-5.218,-5.340,-5.518,-5.697,-5.842,
--6.003,-6.284,-6.723,-7.217,-7.612,-7.852,-8.019,-8.232,-8.538,-8.907,-9.300,-9.692,-10.055,-10.360,-10.601,-10.808,
--11.013,-11.213,-11.390,-11.545,-11.700,-11.864,-12.027,-12.180,-12.334,-12.503,-12.674,-12.825,-12.947,-13.051,-13.144,-13.222,
--13.284,-13.347,-13.425,-13.503,-13.551,-13.559,-13.553,-13.562,-13.586,-13.599,-13.584,-13.535,-13.455,-13.343,-13.218,-13.118,
--13.068,-13.047,-13.009,-12.924,-12.812,-12.714,-12.645,-12.589,-12.518,-12.423,-12.311,-12.192,-12.078,-11.975,-11.885,-11.801,
--11.712,-11.612,-11.510,-11.413,-11.325,-11.246,-11.172,-11.100,-11.023,-10.940,-10.850,-10.757,-10.661,-10.560,-10.453,-10.339,
--10.216,-10.087,-9.977,-9.916,-9.908,-9.920,-9.898,-9.823,-9.718,-9.621,-9.550,-9.498,-9.455,-9.422,-9.400,-9.376,
--9.335,-9.274,-9.200,-9.116,-9.022,-8.921,-8.822,-8.725,-8.617,-8.494,-8.377,-8.291,-8.228,-8.142,-8.001,-7.834,
--7.715,-7.675,-7.656,-7.567,-7.378,-7.163,-7.027,-7.006,-7.037,-7.036,-6.973,-6.879,-6.784,-6.683,-6.560,-6.427,
--6.317,-6.246,-6.196,-6.143,-6.087,-6.041,-6.001,-5.947,-5.875,-5.807,-5.757,-5.709,-5.633,-5.529,-5.430,-5.361,
--5.305,-5.229,-5.130,-5.037,-4.972,-4.919,-4.856,-4.784,-4.726,-4.678,-4.604,-4.477,-4.327,-4.226,-4.212,-4.243,
--4.226,-4.111,-3.930,-3.763,-3.659,-3.606,-3.560,-3.495,-3.410,-3.316,-3.217,-3.120,-3.045,-3.000,-2.961,-2.885,
--2.752,-2.584,-2.424,-2.293,-2.177,-2.058,-1.938,-1.829,-1.730,-1.621,-1.486,-1.331,-1.179,-1.045,-.928,-.813,
--.685,-.539,-.384,-.236,-.102,.024,.156,.305,.472,.654,.845,1.034,1.209,1.357,1.471,1.551,
-1.610,1.677,1.785,1.937,2.095,2.216,2.296,2.375,2.485,2.605,2.693,2.742,2.790,2.853,2.911,2.953,
-3.031,3.207,3.453,3.654,3.733,3.756,3.851,4.040,4.204,4.239,4.199,4.247,4.470,4.793,5.086,5.310,
-5.522,5.768,6.014,6.208,6.356,6.529,6.788,7.124,7.483,7.822,8.152,8.517,8.943,9.395,9.798,10.110,
-10.375,10.680,11.062,11.473,11.846,12.168,12.475,12.791,13.117,13.476,13.918,14.438,14.935,15.311,15.602,15.949,
-16.408,16.849,17.111,17.203,17.212,17.000,16.179,14.630,13.081,12.910,15.081,19.180,23.634,27.021,29.179,31.002,
-33.239,35.659,37.420,38.050,37.855,37.406,36.885,36.091,34.931,33.621,32.364,31.065,29.582,28.167,27.421,27.668,
-28.518,29.166,29.115,28.492,27.696,26.921,26.107,25.243,24.512,24.097,23.964,23.927,23.871,23.815,23.785,23.706,
-23.472,23.067,22.567,22.054,21.563,21.113,20.727,20.395,20.046,19.617,19.133,18.681,18.309,17.963,17.559,17.097,
-16.654,16.273,15.872,15.319,14.582,13.777,13.041,12.378,11.679,10.897,10.147,9.583,9.215,8.904,8.568,8.300,
-8.244,8.363,8.445,8.346,8.152,8.037,8.008,7.888,7.575,7.207,6.999,6.954,6.860,6.584,6.278,6.181,
-6.241,6.037,5.155,3.655,2.118,1.201,1.119,1.527,1.854,1.757,1.264,.568,-.264,-1.330,-2.690,-4.171,
--5.438,-6.260,-6.701,-7.037,-7.505,-8.139,-8.818,-9.423,-9.920,-10.309,-10.560,-10.624,-10.513,-10.336,-10.225,-10.232,
--10.309,-10.381,-10.425,-10.456,-10.466,-10.423,-10.326,-10.242,-10.229,-10.239,-10.136,-9.845,-9.461,-9.172,-9.079,-9.103,
--9.070,-8.849,-8.419,-7.831,-7.174,-6.552,-6.063,-5.733,-5.503,-5.282,-5.018,-4.715,-4.379,-3.997,-3.571,-3.144,
--2.767,-2.442,-2.118,-1.754,-1.373,-1.046,-.836,-.752,-.742,-.704,-.523,-.151,.327,.711,.823,.662,
-.417,.314,.438,.686,.902,1.021,1.096,1.192,1.308,1.395,1.446,1.529,1.711,1.975,2.231,2.409,
-2.533,2.678,2.887,3.134,3.372,3.596,3.836,4.105,4.378,4.628,4.856,5.084,5.320,5.548,5.763,5.988,
-6.243,6.518,6.777,7.000,7.205,7.417,7.637,7.841,8.021,8.205,8.423,8.675,8.925,9.139,9.320,9.496,
-9.690,9.902,10.116,10.324,10.534,10.763,11.014,11.278,11.532,11.767,11.988,12.216,12.462,12.709,12.930,13.111,
-13.278,13.469,13.692,13.915,14.086,14.188,14.241,14.271,14.283,14.268,14.231,14.204,14.213,14.251,14.295,14.330,
-14.363,14.408,14.467,14.535,14.612,14.698,14.787,14.876,14.972,15.085,15.204,15.305,15.376,15.442,15.542,15.681,
-15.830,15.972,16.124,16.305,16.494,16.653,16.782,16.930,17.132,17.353,17.527,17.641,17.767,17.976,18.268,18.578,
-18.858,19.120,19.396,19.682,19.940,20.149,20.330,20.519,20.733,20.969,21.069,21.299,21.563,21.863,22.174,22.483,
-22.814,23.205,23.649,24.082,24.427,24.638,24.696,24.591,24.319,23.937,23.573,23.366,23.364,23.492,23.632,23.742,
-23.867,24.063,24.299,24.480,24.538,24.503,24.457,24.455,24.492,24.543,24.606,24.698,24.829,24.989,25.168,25.355,
-25.530,25.661,25.730,25.748,25.750,25.774,25.849,25.990,26.193,26.452,26.781,27.215,27.747,28.266,28.611,28.754,
-28.907,29.372,30.219,31.148,31.716,31.740,31.451,31.247,31.336,31.627,31.902,32.029,31.988,31.805,31.540,31.311,
-31.264,31.447,31.745,31.960,31.955,31.731,31.393,31.064,30.824,30.672,30.546,30.415,30.367,30.552,30.985,31.447,
-31.663,31.613,31.598,31.920,32.521,32.993,32.975,32.485,31.833,31.282,30.870,30.537,30.306,30.268,30.427,30.646,
-30.783,30.825,30.868,30.970,31.057,31.001,30.789,30.641,30.917,31.834,33.184,34.365,34.743,34.089,32.675,30.977,
-29.350,27.977,26.996,26.494,26.332,26.130,25.594,24.854,24.337,24.237,24.185,23.555,22.115,20.302,18.825,18.073,
-17.912,17.970,17.994,17.931,17.787,17.545,17.213,16.881,16.646,16.489,16.249,15.717,14.798,13.611,12.440,11.564,
-11.083,10.878,10.733,10.521,10.264,10.041,9.886,9.771,9.686,9.671,9.778,10.003,10.284,10.542,10.732,10.857,
-10.941,11.002,11.035,10.999,10.841,10.533,10.125,9.767,9.667,9.988,10.722,11.653,12.479,13.006,13.256,13.376,
-13.457,13.469,13.363,13.196,13.106,13.175,13.354,13.526,13.628,13.672,13.676,13.606,13.386,12.965,12.345,11.589,
-10.804,10.104,9.558,9.163,8.873,8.668,8.565,8.566,8.609,8.619,8.590,8.601,8.729,8.959,9.186,9.319,
-9.351,9.343,9.348,9.370,9.379,9.349,9.280,9.189,9.080,8.939,8.750,8.526,8.316,8.176,8.121,8.119,
-8.134,8.169,8.244,8.351,8.448,8.525,8.648,8.896,9.239,9.514,9.561,9.404,9.264,9.354,9.673,10.007,
-10.133,10.010,9.763,9.536,9.396,9.358,9.443,9.649,9.883,9.970,9.774,9.313,8.759,8.327,8.142,8.169,
-8.239,8.162,7.852,7.390,6.937,6.589,6.315,6.038,5.753,5.516,5.349,5.180,4.923,4.575,4.215,3.906,
-3.635,3.359,3.074,2.809,2.571,2.325,2.037,1.702,1.343,.980,.628,.298,-.009,-.311,-.625,-.951,
--1.275,-1.602,-1.955,-2.347,-2.764,-3.193,-3.649,-4.157,-4.700,-5.230,-5.713,-6.167,-6.624,-7.082,-7.521,-7.952,
--8.422,-8.963,-9.545,-10.117,-10.652,-11.163,-11.652,-12.094,-12.476,-12.829,-13.217,-13.686,-14.240,-14.844,-15.446,-15.982,
--16.406,-16.724,-17.002,-17.320,-17.713,-18.163,-18.633,-19.101,-19.561,-20.000,-20.396,-20.738,-21.048,-21.373,-21.749,-22.165,
--22.571,-22.923,-23.229,-23.535,-23.876,-24.248,-24.648,-25.102,-25.632,-26.174,-26.614,-26.929,-27.269,-27.814,-28.527,-29.127,
--29.377,-29.396,-29.593,-30.248,-31.213,-32.071,-32.563,-32.791,-33.007,-33.305,-33.586,-33.758,-33.870,-34.013,-34.183,-34.316,
--34.414,-34.549,-34.752,-34.954,-35.096,-35.221,-35.424,-35.710,-35.989,-36.216,-36.463,-36.810,-37.210,-37.521,-37.650,-37.598,
--37.358,-36.876,-36.193,-35.584,-35.429,-35.907,-36.826,-37.790,-38.496,-38.860,-38.948,-38.874,-38.766,-38.733,-38.787,-38.828,
--38.762,-38.607,-38.441,-38.276,-38.060,-37.814,-37.687,-37.793,-38.042,-38.231,-38.286,-38.341,-38.520,-38.748,-38.835,-38.744,
--38.646,-38.714,-38.912,-39.068,-39.091,-39.052,-39.059,-39.131,-39.218,-39.290,-39.362,-39.456,-39.563,-39.648,-39.659,-39.537,
--39.270,-38.921,-38.581,-38.278,-37.968,-37.629,-37.299,-36.994,-36.624,-36.056,-35.264,-34.340,-33.344,-32.228,-30.957,-29.629,
--28.385,-27.207,-25.967,-24.696,-23.696,-23.248,-23.240,-23.235,-22.926,-22.441,-22.111,-22.049,-22.057,-21.930,-21.679,-21.426,
--21.183,-20.871,-20.508,-20.234,-20.125,-20.072,-19.923,-19.681,-19.490,-19.436,-19.435,-19.332,-19.052,-18.627,-18.135,-17.660,
--17.269,-16.980,-16.718,-16.382,-15.958,-15.546,-15.251,-15.081,-14.989,-14.968,-15.052,-15.220,-15.362,-15.382,-15.285,-15.144,
--14.985,-14.781,-14.544,-14.365,-14.320,-14.369,-14.397,-14.347,-14.267,-14.232,-14.244,-14.229,-14.117,-13.884,-13.532,-13.061,
--12.484,-11.846,-11.223,-10.683,-10.232,-9.789,-9.204,-8.339,-7.172,-5.809,-4.406,-3.059,-1.798,-.671,.230,.852,
-1.287,1.736,2.332,3.017,3.612,4.024,4.341,4.748,5.330,6.013,6.651,7.168,7.595,7.995,8.389,8.770,
-9.155,9.596,10.130,10.723,11.293,11.781,12.194,12.586,13.006,13.473,13.996,14.583,15.232,15.927,16.642,17.365,
-18.089,18.797,19.456,20.025,20.490,20.885,21.285,21.761,22.329,22.939,23.529,24.092,24.668,25.272,25.845,26.301,
-26.636,26.931,27.267,27.648,28.037,28.451,28.953,29.552,30.155,30.643,30.983,31.232,31.448,31.658,31.908,32.281,
-32.809,33.399,33.914,34.323,34.742,35.298,36.010,36.807,37.617,38.363,38.912,39.123,39.012,38.794,38.683,38.651,
-38.403,37.614,36.195,34.404,32.803,32.062,32.569,34.027,35.457,35.852,35.003,33.674,32.877,32.974,33.550,34.047,
-34.327,34.575,34.865,35.058,35.108,35.226,35.607,36.121,36.448,36.484,36.478,36.718,37.206,37.732,38.156,38.515,
-38.852,39.111,39.247,39.355,39.576,39.900,40.148,40.167,39.981,39.744,39.565,39.451,39.362,39.293,39.292,39.429,
-39.745,40.204,40.690,41.106,41.480,41.969,42.712,43.667,44.618,45.320,45.660,45.708,45.658,45.690,45.853,46.060,
-46.210,46.331,46.545,46.887,47.212,47.353,47.336,47.350,47.490,47.623,47.582,47.426,47.400,47.618,47.914,48.037,
-47.940,47.789,47.719,47.705,47.663,47.603,47.588,47.615,47.602,47.504,47.370,47.271,47.219,47.174,47.110,47.030,
-46.952,46.900,46.899,46.944,46.979,46.940,46.832,46.734,46.754,46.986,47.467,48.086,48.539,48.520,48.066,47.615,
-47.539,47.590,47.018,45.352,42.925,40.387,37.790,34.495,30.218,25.954,23.474,23.752,26.038,28.570,30.101,30.662,
-31.015,31.698,32.631,33.392,33.597,33.090,32.011,30.782,29.879,29.472,29.298,28.950,28.286,27.486,26.764,26.125,
-25.451,24.708,23.977,23.323,22.724,22.139,21.569,21.024,20.479,19.903,19.310,18.743,18.213,17.706,17.221,16.761,
-16.281,15.709,15.057,14.463,14.058,13.812,13.556,13.170,12.699,12.260,11.891,11.534,11.139,10.718,10.300,9.888,
-9.485,9.118,8.795,8.472,8.105,7.714,7.366,7.074,6.782,6.440,6.070,5.713,5.361,4.979,4.596,4.283,
-4.035,3.750,3.356,2.932,2.614,2.413,2.193,1.855,1.472,1.191,1.030,.867,.615,.331,.129,.026,
--.055,-.171,-.305,-.438,-.605,-.845,-1.120,-1.347,-1.476,-1.520,-1.506,-1.445,-1.353,-1.285,-1.291,-1.374,
--1.497,-1.641,-1.821,-2.057,-2.345,-2.665,-2.986,-3.271,-3.487,-3.650,-3.822,-4.028,-4.212,-4.293,-4.286,-4.314,
--4.472,-4.710,-4.897,-4.978,-5.035,-5.169,-5.385,-5.598,-5.742,-5.814,-5.839,-5.843,-5.866,-5.954,-6.099,-6.223,
--6.263,-6.276,-6.404,-6.719,-7.127,-7.464,-7.660,-7.788,-7.969,-8.257,-8.639,-9.073,-9.512,-9.902,-10.206,-10.437,
--10.647,-10.871,-11.093,-11.286,-11.455,-11.630,-11.816,-11.988,-12.132,-12.269,-12.426,-12.598,-12.756,-12.890,-13.010,-13.118,
--13.199,-13.247,-13.291,-13.358,-13.441,-13.502,-13.525,-13.536,-13.560,-13.590,-13.595,-13.564,-13.509,-13.437,-13.345,-13.238,
--13.146,-13.097,-13.078,-13.044,-12.971,-12.875,-12.792,-12.735,-12.692,-12.644,-12.576,-12.479,-12.348,-12.202,-12.071,-11.978,
--11.908,-11.829,-11.725,-11.610,-11.501,-11.402,-11.310,-11.227,-11.157,-11.090,-11.008,-10.904,-10.791,-10.689,-10.600,-10.512,
--10.412,-10.301,-10.187,-10.085,-10.012,-9.977,-9.965,-9.945,-9.891,-9.809,-9.725,-9.660,-9.614,-9.573,-9.535,-9.501,
--9.470,-9.434,-9.386,-9.322,-9.243,-9.151,-9.059,-8.977,-8.901,-8.810,-8.694,-8.575,-8.488,-8.437,-8.373,-8.247,
--8.078,-7.945,-7.902,-7.909,-7.858,-7.697,-7.486,-7.340,-7.310,-7.332,-7.314,-7.224,-7.107,-7.005,-6.910,-6.797,
--6.670,-6.568,-6.500,-6.437,-6.348,-6.251,-6.190,-6.173,-6.158,-6.106,-6.024,-5.946,-5.886,-5.823,-5.739,-5.652,
--5.586,-5.542,-5.498,-5.443,-5.384,-5.324,-5.245,-5.136,-5.018,-4.931,-4.879,-4.819,-4.711,-4.576,-4.476,-4.442,
--4.433,-4.377,-4.248,-4.090,-3.963,-3.884,-3.826,-3.757,-3.672,-3.583,-3.491,-3.393,-3.291,-3.201,-3.131,-3.070,
--2.993,-2.883,-2.748,-2.606,-2.473,-2.357,-2.258,-2.168,-2.074,-1.965,-1.841,-1.710,-1.577,-1.442,-1.302,-1.153,
--.993,-.819,-.642,-.481,-.346,-.226,-.093,.067,.246,.433,.625,.828,1.033,1.216,1.363,1.475,
-1.559,1.617,1.660,1.720,1.826,1.969,2.104,2.199,2.261,2.319,2.390,2.479,2.590,2.710,2.790,2.786,
-2.736,2.767,2.966,3.259,3.468,3.508,3.489,3.573,3.774,3.950,3.993,3.982,4.088,4.368,4.719,5.008,
-5.219,5.421,5.656,5.897,6.116,6.329,6.573,6.852,7.139,7.420,7.711,8.044,8.444,8.905,9.383,9.812,
-10.158,10.464,10.802,11.186,11.551,11.843,12.093,12.383,12.734,13.101,13.467,13.889,14.397,14.910,15.318,15.641,
-16.017,16.493,16.926,17.159,17.212,17.147,16.762,15.672,13.941,12.574,13.048,16.055,20.706,25.164,28.174,29.956,
-31.618,33.819,36.158,37.766,38.218,37.758,36.820,35.630,34.325,33.178,32.425,31.907,31.124,29.813,28.364,27.518,
-27.616,28.270,28.775,28.744,28.274,27.614,26.854,25.990,25.130,24.482,24.140,23.998,23.898,23.800,23.750,23.726,
-23.606,23.297,22.829,22.309,21.806,21.324,20.867,20.456,20.090,19.721,19.304,18.859,18.446,18.078,17.697,17.255,
-16.788,16.384,16.064,15.720,15.210,14.502,13.709,12.960,12.270,11.572,10.865,10.260,9.847,9.551,9.207,8.790,
-8.482,8.463,8.649,8.747,8.578,8.273,8.082,8.053,7.985,7.712,7.325,7.036,6.896,6.758,6.527,6.316,
-6.253,6.167,5.630,4.388,2.750,1.446,1.037,1.457,2.094,2.317,1.930,1.161,.311,-.553,-1.575,-2.848,
--4.237,-5.457,-6.318,-6.865,-7.292,-7.754,-8.264,-8.749,-9.160,-9.514,-9.842,-10.115,-10.260,-10.231,-10.070,-9.892,
--9.805,-9.833,-9.923,-10.003,-10.031,-10.009,-9.954,-9.884,-9.801,-9.680,-9.475,-9.158,-8.779,-8.462,-8.331,-8.412,
--8.612,-8.773,-8.741,-8.419,-7.801,-7.003,-6.234,-5.685,-5.396,-5.250,-5.091,-4.859,-4.580,-4.273,-3.899,-3.423,
--2.896,-2.426,-2.069,-1.767,-1.415,-.979,-.543,-.239,-.128,-.137,-.095,.165,.675,1.281,1.714,1.780,
-1.512,1.147,.947,.996,1.174,1.305,1.328,1.316,1.366,1.486,1.607,1.691,1.778,1.936,2.167,2.406,
-2.595,2.753,2.941,3.185,3.454,3.705,3.939,4.186,4.451,4.705,4.928,5.138,5.365,5.612,5.848,6.061,
-6.279,6.533,6.816,7.079,7.290,7.472,7.669,7.894,8.117,8.310,8.485,8.680,8.913,9.158,9.375,9.556,
-9.725,9.911,10.118,10.330,10.537,10.746,10.969,11.213,11.469,11.725,11.969,12.205,12.445,12.701,12.963,13.201,
-13.387,13.528,13.665,13.839,14.043,14.224,14.328,14.345,14.315,14.278,14.251,14.230,14.218,14.229,14.273,14.340,
-14.411,14.475,14.532,14.592,14.662,14.743,14.824,14.892,14.951,15.022,15.119,15.226,15.308,15.354,15.397,15.485,
-15.623,15.776,15.918,16.059,16.222,16.403,16.584,16.764,16.969,17.203,17.418,17.573,17.697,17.870,18.130,18.423,
-18.673,18.876,19.109,19.426,19.786,20.098,20.319,20.485,20.657,20.855,21.069,21.155,21.365,21.615,21.913,22.240,
-22.574,22.936,23.359,23.834,24.282,24.587,24.655,24.465,24.087,23.667,23.357,23.235,23.272,23.375,23.476,23.579,
-23.721,23.906,24.091,24.224,24.294,24.330,24.361,24.392,24.421,24.456,24.517,24.612,24.733,24.872,25.035,25.226,
-25.425,25.595,25.703,25.755,25.779,25.811,25.876,25.993,26.161,26.356,26.563,26.816,27.189,27.700,28.228,28.590,
-28.740,28.886,29.331,30.161,31.099,31.718,31.803,31.512,31.201,31.118,31.281,31.564,31.837,32.017,32.065,31.993,
-31.883,31.837,31.890,31.982,32.018,31.946,31.776,31.554,31.334,31.152,30.988,30.778,30.503,30.291,30.354,30.768,
-31.333,31.731,31.846,31.877,32.088,32.467,32.711,32.545,32.011,31.401,30.962,30.724,30.601,30.555,30.610,30.750,
-30.883,30.940,30.954,31.023,31.167,31.276,31.215,30.995,30.866,31.201,32.215,33.713,35.111,35.755,35.314,33.929,
-32.048,30.149,28.583,27.537,27.003,26.757,26.479,26.012,25.487,25.125,24.896,24.446,23.422,21.862,20.212,18.961,
-18.294,18.071,18.059,18.104,18.129,18.064,17.870,17.593,17.355,17.232,17.148,16.889,16.245,15.177,13.888,12.721,
-11.934,11.543,11.363,11.205,11.017,10.854,10.743,10.633,10.479,10.328,10.276,10.373,10.577,10.807,11.015,11.186,
-11.316,11.406,11.465,11.492,11.449,11.282,10.987,10.663,10.490,10.639,11.168,11.970,12.804,13.422,13.731,13.831,
-13.902,14.015,14.093,14.042,13.906,13.835,13.925,14.116,14.267,14.301,14.240,14.135,13.987,13.759,13.409,12.912,
-12.272,11.545,10.852,10.305,9.933,9.680,9.489,9.367,9.337,9.373,9.413,9.451,9.557,9.780,10.063,10.278,
-10.355,10.337,10.310,10.306,10.291,10.236,10.151,10.050,9.927,9.771,9.589,9.396,9.199,9.015,8.887,8.859,
-8.912,8.970,8.987,9.015,9.134,9.338,9.531,9.663,9.816,10.094,10.430,10.599,10.454,10.129,9.942,10.063,
-10.351,10.516,10.427,10.208,10.063,10.073,10.171,10.265,10.314,10.294,10.152,9.840,9.397,8.950,8.632,8.491,
-8.460,8.403,8.212,7.878,7.494,7.170,6.940,6.749,6.537,6.312,6.115,5.938,5.711,5.394,5.039,4.733,
-4.496,4.257,3.955,3.611,3.299,3.046,2.803,2.511,2.162,1.795,1.450,1.138,.840,.532,.201,-.139,
--.458,-.746,-1.034,-1.363,-1.739,-2.125,-2.505,-2.914,-3.402,-3.956,-4.503,-4.983,-5.409,-5.831,-6.274,-6.730,
--7.202,-7.720,-8.294,-8.890,-9.449,-9.949,-10.406,-10.834,-11.230,-11.607,-12.012,-12.494,-13.061,-13.674,-14.277,-14.827,
--15.287,-15.641,-15.920,-16.201,-16.561,-17.017,-17.525,-18.026,-18.497,-18.940,-19.353,-19.722,-20.046,-20.346,-20.658,-21.002,
--21.381,-21.778,-22.175,-22.555,-22.909,-23.229,-23.516,-23.808,-24.170,-24.646,-25.188,-25.683,-26.075,-26.470,-27.039,-27.792,
--28.493,-28.875,-28.950,-29.054,-29.522,-30.348,-31.210,-31.809,-32.142,-32.410,-32.750,-33.115,-33.396,-33.563,-33.654,-33.696,
--33.696,-33.708,-33.811,-34.015,-34.228,-34.371,-34.487,-34.686,-35.003,-35.361,-35.684,-35.991,-36.342,-36.720,-37.034,-37.207,
--37.211,-37.011,-36.571,-35.970,-35.476,-35.404,-35.857,-36.636,-37.420,-38.006,-38.360,-38.528,-38.564,-38.552,-38.583,-38.669,
--38.722,-38.664,-38.533,-38.418,-38.332,-38.202,-38.025,-37.923,-37.997,-38.175,-38.289,-38.299,-38.344,-38.540,-38.795,-38.921,
--38.871,-38.788,-38.813,-38.918,-38.988,-38.989,-38.994,-39.058,-39.147,-39.211,-39.267,-39.360,-39.488,-39.603,-39.674,-39.694,
--39.646,-39.502,-39.257,-38.952,-38.616,-38.248,-37.861,-37.513,-37.232,-36.947,-36.536,-35.958,-35.262,-34.461,-33.473,-32.242,
--30.868,-29.526,-28.280,-27.075,-25.950,-25.124,-24.749,-24.639,-24.393,-23.827,-23.185,-22.825,-22.786,-22.777,-22.567,-22.227,
--21.945,-21.728,-21.422,-20.984,-20.587,-20.400,-20.368,-20.305,-20.131,-19.955,-19.896,-19.929,-19.927,-19.793,-19.507,-19.086,
--18.568,-18.038,-17.597,-17.271,-16.986,-16.664,-16.321,-16.046,-15.892,-15.844,-15.860,-15.914,-15.977,-15.989,-15.910,-15.771,
--15.645,-15.571,-15.526,-15.486,-15.473,-15.513,-15.574,-15.581,-15.502,-15.379,-15.276,-15.200,-15.098,-14.910,-14.603,-14.165,
--13.596,-12.924,-12.224,-11.589,-11.067,-10.597,-10.030,-9.211,-8.083,-6.739,-5.353,-4.071,-2.936,-1.930,-1.056,-.344,
-.215,.725,1.318,2.028,2.748,3.331,3.730,4.037,4.384,4.842,5.400,6.011,6.632,7.219,7.721,8.119,
-8.462,8.844,9.333,9.905,10.474,10.968,11.384,11.775,12.191,12.657,13.177,13.750,14.370,15.025,15.707,16.419,
-17.160,17.897,18.570,19.134,19.590,19.982,20.375,20.831,21.387,22.018,22.632,23.143,23.565,24.008,24.553,25.144,
-25.647,26.005,26.305,26.662,27.084,27.497,27.894,28.366,28.981,29.655,30.213,30.558,30.741,30.874,31.035,31.271,
-31.640,32.170,32.786,33.342,33.769,34.144,34.604,35.214,35.945,36.730,37.481,38.055,38.304,38.223,38.001,37.848,
-37.752,37.439,36.598,35.163,33.428,31.951,31.307,31.760,32.989,34.176,34.541,33.946,32.979,32.383,32.414,32.788,
-33.157,33.463,33.818,34.198,34.470,34.652,34.962,35.504,36.048,36.260,36.124,35.992,36.188,36.678,37.185,37.556,
-37.869,38.229,38.589,38.834,38.965,39.094,39.278,39.433,39.444,39.299,39.086,38.893,38.755,38.676,38.672,38.764,
-38.969,39.294,39.727,40.214,40.670,41.063,41.485,42.118,43.086,44.291,45.391,45.993,45.950,45.516,45.154,45.163,
-45.469,45.793,46.002,46.198,46.496,46.812,46.970,46.966,46.984,47.127,47.252,47.176,46.975,46.942,47.221,47.605,
-47.761,47.607,47.353,47.214,47.189,47.152,47.068,47.020,47.059,47.124,47.131,47.077,47.021,46.992,46.960,46.893,
-46.801,46.721,46.683,46.689,46.715,46.723,46.686,46.615,46.565,46.631,46.916,47.442,48.037,48.367,48.201,47.703,
-47.333,47.323,47.270,46.432,44.492,41.863,39.113,36.205,32.643,28.454,24.782,23.154,24.097,26.603,29.015,30.341,
-30.711,30.817,31.176,31.864,32.632,33.070,32.800,31.776,30.444,29.437,29.020,28.896,28.592,27.961,27.217,26.555,
-25.928,25.200,24.394,23.662,23.076,22.558,22.021,21.474,20.951,20.425,19.850,19.244,18.672,18.154,17.653,17.153,
-16.674,16.203,15.667,15.045,14.452,14.037,13.796,13.554,13.160,12.643,12.149,11.753,11.405,11.033,10.631,10.234,
-9.848,9.463,9.091,8.748,8.412,8.041,7.641,7.267,6.950,6.653,6.319,5.949,5.580,5.222,4.855,4.488,
-4.163,3.883,3.584,3.223,2.858,2.586,2.407,2.199,1.877,1.504,1.219,1.058,.916,.693,.409,.163,
-.001,-.116,-.241,-.384,-.537,-.715,-.932,-1.166,-1.369,-1.504,-1.568,-1.568,-1.519,-1.453,-1.418,-1.437,
--1.493,-1.564,-1.658,-1.798,-1.990,-2.229,-2.517,-2.856,-3.212,-3.515,-3.733,-3.908,-4.095,-4.282,-4.405,-4.452,
--4.503,-4.637,-4.827,-4.969,-5.010,-5.011,-5.073,-5.232,-5.455,-5.690,-5.896,-6.042,-6.122,-6.187,-6.309,-6.498,
--6.663,-6.716,-6.689,-6.717,-6.892,-7.164,-7.403,-7.539,-7.619,-7.742,-7.977,-8.343,-8.811,-9.309,-9.741,-10.053,
--10.273,-10.476,-10.698,-10.917,-11.109,-11.297,-11.516,-11.755,-11.960,-12.109,-12.239,-12.395,-12.574,-12.740,-12.876,-13.002,
--13.123,-13.217,-13.267,-13.299,-13.351,-13.424,-13.486,-13.514,-13.525,-13.541,-13.557,-13.553,-13.528,-13.498,-13.462,-13.399,
--13.304,-13.205,-13.137,-13.099,-13.061,-13.003,-12.933,-12.866,-12.802,-12.739,-12.679,-12.624,-12.551,-12.431,-12.274,-12.127,
--12.029,-11.968,-11.897,-11.793,-11.669,-11.549,-11.435,-11.323,-11.222,-11.147,-11.086,-11.009,-10.900,-10.780,-10.682,-10.611,
--10.546,-10.471,-10.384,-10.295,-10.205,-10.117,-10.046,-10.003,-9.977,-9.943,-9.886,-9.821,-9.770,-9.736,-9.701,-9.653,
--9.597,-9.548,-9.509,-9.469,-9.416,-9.342,-9.251,-9.158,-9.078,-9.011,-8.938,-8.841,-8.735,-8.653,-8.611,-8.572,
--8.483,-8.341,-8.208,-8.146,-8.135,-8.087,-7.946,-7.759,-7.628,-7.598,-7.608,-7.569,-7.459,-7.330,-7.225,-7.133,
--7.017,-6.887,-6.789,-6.740,-6.698,-6.617,-6.508,-6.428,-6.399,-6.383,-6.326,-6.227,-6.130,-6.064,-6.012,-5.945,
--5.867,-5.801,-5.757,-5.717,-5.671,-5.623,-5.574,-5.506,-5.399,-5.271,-5.166,-5.102,-5.050,-4.972,-4.871,-4.785,
--4.732,-4.679,-4.583,-4.443,-4.303,-4.199,-4.123,-4.047,-3.959,-3.869,-3.788,-3.705,-3.605,-3.494,-3.389,-3.300,
--3.223,-3.150,-3.071,-2.978,-2.863,-2.727,-2.595,-2.485,-2.390,-2.284,-2.152,-2.010,-1.883,-1.775,-1.664,-1.527,
--1.362,-1.174,-.970,-.765,-.588,-.452,-.338,-.207,-.037,.154,.344,.537,.746,.959,1.140,1.267,
-1.355,1.429,1.491,1.532,1.567,1.636,1.754,1.891,1.994,2.046,2.071,2.114,2.208,2.357,2.518,2.613,
-2.601,2.550,2.602,2.826,3.122,3.313,3.342,3.333,3.439,3.651,3.836,3.918,3.988,4.177,4.496,4.835,
-5.107,5.325,5.539,5.748,5.925,6.086,6.293,6.569,6.871,7.151,7.415,7.703,8.036,8.413,8.833,9.297,
-9.780,10.238,10.654,11.045,11.404,11.687,11.881,12.061,12.334,12.714,13.128,13.529,13.958,14.447,14.923,15.290,
-15.585,15.953,16.432,16.859,17.067,17.067,16.895,16.332,15.067,13.351,12.363,13.526,17.219,22.221,26.643,29.481,
-31.206,32.883,34.930,36.835,37.902,37.955,37.266,36.084,34.543,32.961,31.881,31.581,31.645,31.271,30.077,28.501,
-27.343,26.989,27.173,27.403,27.438,27.295,26.979,26.417,25.638,24.881,24.397,24.204,24.109,23.959,23.782,23.665,
-23.575,23.380,23.003,22.505,21.996,21.515,21.033,20.541,20.077,19.672,19.310,18.952,18.590,18.235,17.877,17.481,
-17.033,16.580,16.190,15.872,15.539,15.080,14.460,13.746,13.025,12.324,11.633,10.991,10.486,10.146,9.854,9.466,
-9.002,8.681,8.676,8.877,8.971,8.773,8.419,8.176,8.113,8.031,7.732,7.256,6.819,6.559,6.446,6.405,
-6.404,6.344,5.952,4.949,3.416,1.916,1.142,1.342,2.096,2.654,2.512,1.712,.645,-.361,-1.266,-2.221,
--3.319,-4.479,-5.522,-6.338,-6.942,-7.421,-7.839,-8.205,-8.505,-8.747,-8.973,-9.216,-9.464,-9.646,-9.686,-9.572,
--9.393,-9.288,-9.336,-9.496,-9.647,-9.708,-9.690,-9.656,-9.620,-9.517,-9.260,-8.837,-8.350,-7.954,-7.764,-7.793,
--7.972,-8.208,-8.409,-8.463,-8.249,-7.706,-6.925,-6.135,-5.553,-5.232,-5.050,-4.852,-4.589,-4.302,-4.010,-3.656,
--3.185,-2.640,-2.141,-1.762,-1.448,-1.079,-.602,-.106,.261,.418,.441,.515,.809,1.343,1.953,2.381,
-2.452,2.203,1.852,1.630,1.615,1.704,1.746,1.691,1.619,1.631,1.744,1.888,2.000,2.087,2.202,2.370,
-2.563,2.748,2.935,3.161,3.436,3.725,3.992,4.234,4.476,4.726,4.968,5.191,5.411,5.653,5.913,6.161,
-6.382,6.600,6.844,7.106,7.348,7.547,7.726,7.926,8.157,8.381,8.566,8.725,8.906,9.133,9.385,9.617,
-9.813,9.999,10.203,10.432,10.664,10.885,11.097,11.311,11.532,11.755,11.975,12.194,12.413,12.635,12.864,13.098,
-13.321,13.505,13.643,13.772,13.941,14.157,14.359,14.467,14.457,14.382,14.320,14.305,14.317,14.329,14.348,14.398,
-14.482,14.576,14.648,14.692,14.727,14.775,14.834,14.891,14.934,14.971,15.025,15.106,15.195,15.262,15.308,15.366,
-15.475,15.631,15.794,15.934,16.058,16.195,16.358,16.547,16.760,16.999,17.248,17.469,17.649,17.825,18.049,18.312,
-18.549,18.716,18.865,19.096,19.446,19.836,20.162,20.387,20.564,20.750,20.953,21.155,21.247,21.444,21.671,21.950,
-22.284,22.674,23.123,23.617,24.099,24.486,24.677,24.582,24.186,23.612,23.108,22.903,23.033,23.320,23.538,23.615,
-23.658,23.785,23.977,24.117,24.142,24.116,24.144,24.247,24.359,24.423,24.463,24.539,24.668,24.817,24.963,25.124,
-25.319,25.520,25.671,25.741,25.760,25.782,25.842,25.952,26.109,26.296,26.481,26.645,26.835,27.148,27.617,28.131,
-28.499,28.655,28.781,29.172,29.943,30.881,31.594,31.823,31.624,31.269,31.031,31.031,31.246,31.578,31.913,32.165,
-32.311,32.389,32.448,32.492,32.489,32.426,32.326,32.221,32.115,31.991,31.832,31.606,31.271,30.841,30.468,30.387,
-30.714,31.298,31.821,32.089,32.178,32.278,32.419,32.420,32.113,31.572,31.067,30.810,30.796,30.883,30.969,31.051,
-31.145,31.217,31.232,31.223,31.267,31.381,31.468,31.410,31.242,31.222,31.689,32.800,34.344,35.803,36.620,36.475,
-35.394,33.679,31.768,30.084,28.887,28.169,27.700,27.239,26.734,26.293,25.944,25.483,24.618,23.273,21.703,20.298,
-19.295,18.692,18.381,18.281,18.321,18.392,18.378,18.255,18.110,18.040,18.037,17.956,17.595,16.808,15.629,14.300,
-13.161,12.438,12.093,11.910,11.721,11.527,11.404,11.345,11.255,11.089,10.931,10.895,10.999,11.161,11.316,11.464,
-11.622,11.761,11.845,11.885,11.911,11.901,11.789,11.563,11.346,11.341,11.690,12.374,13.217,13.969,14.437,14.587,
-14.569,14.584,14.711,14.856,14.888,14.806,14.733,14.763,14.852,14.885,14.814,14.684,14.549,14.393,14.165,13.827,
-13.375,12.815,12.191,11.596,11.130,10.812,10.576,10.359,10.184,10.113,10.149,10.236,10.343,10.507,10.757,11.032,
-11.228,11.309,11.333,11.356,11.355,11.278,11.137,10.997,10.881,10.746,10.557,10.348,10.171,10.017,9.847,9.690,
-9.636,9.715,9.826,9.861,9.863,9.984,10.269,10.572,10.737,10.810,10.978,11.273,11.454,11.272,10.808,10.450,
-10.489,10.821,11.083,11.052,10.843,10.713,10.762,10.867,10.856,10.677,10.387,10.055,9.717,9.401,9.142,8.950,
-8.795,8.624,8.411,8.163,7.918,7.716,7.567,7.441,7.283,7.070,6.836,6.622,6.418,6.169,5.858,5.541,
-5.285,5.073,4.821,4.481,4.102,3.774,3.519,3.274,2.970,2.608,2.248,1.932,1.655,1.374,1.059,.715,
-.374,.070,-.200,-.476,-.796,-1.152,-1.505,-1.844,-2.217,-2.676,-3.206,-3.732,-4.195,-4.611,-5.035,-5.494,
--5.981,-6.489,-7.033,-7.615,-8.201,-8.740,-9.214,-9.636,-10.026,-10.406,-10.811,-11.292,-11.865,-12.490,-13.096,-13.636,
--14.099,-14.488,-14.813,-15.110,-15.449,-15.882,-16.397,-16.927,-17.417,-17.861,-18.275,-18.661,-19.007,-19.317,-19.618,-19.934,
--20.273,-20.641,-21.044,-21.481,-21.920,-22.307,-22.599,-22.798,-22.962,-23.181,-23.532,-24.011,-24.535,-25.028,-25.532,-26.172,
--26.986,-27.794,-28.321,-28.484,-28.527,-28.809,-29.455,-30.251,-30.900,-31.315,-31.648,-32.062,-32.543,-32.943,-33.145,-33.148,
--33.039,-32.937,-32.956,-33.150,-33.458,-33.736,-33.895,-33.997,-34.179,-34.498,-34.878,-35.220,-35.518,-35.835,-36.200,-36.565,
--36.846,-36.962,-36.834,-36.435,-35.893,-35.497,-35.514,-35.972,-36.639,-37.247,-37.692,-38.014,-38.261,-38.428,-38.520,-38.578,
--38.627,-38.630,-38.561,-38.471,-38.433,-38.432,-38.384,-38.274,-38.201,-38.249,-38.355,-38.393,-38.355,-38.378,-38.553,-38.790,
--38.931,-38.943,-38.930,-38.966,-39.001,-38.974,-38.930,-38.965,-39.087,-39.203,-39.259,-39.305,-39.404,-39.530,-39.612,-39.634,
--39.646,-39.666,-39.636,-39.498,-39.257,-38.953,-38.599,-38.206,-37.819,-37.488,-37.196,-36.864,-36.453,-35.982,-35.430,-34.678,
--33.612,-32.268,-30.811,-29.390,-28.097,-27.070,-26.487,-26.342,-26.281,-25.844,-24.939,-23.977,-23.436,-23.350,-23.327,-23.047,
--22.593,-22.237,-22.042,-21.815,-21.428,-21.013,-20.779,-20.738,-20.721,-20.613,-20.481,-20.432,-20.454,-20.452,-20.374,-20.227,
--19.992,-19.606,-19.067,-18.498,-18.046,-17.749,-17.522,-17.286,-17.058,-16.903,-16.842,-16.826,-16.777,-16.650,-16.443,-16.203,
--16.012,-15.942,-16.002,-16.134,-16.261,-16.349,-16.404,-16.437,-16.439,-16.402,-16.334,-16.243,-16.116,-15.921,-15.631,-15.233,
--14.720,-14.095,-13.400,-12.713,-12.107,-11.577,-11.011,-10.249,-9.198,-7.903,-6.526,-5.236,-4.116,-3.158,-2.328,-1.612,
--.993,-.408,.231,.963,1.725,2.409,2.959,3.410,3.821,4.210,4.573,4.940,5.387,5.953,6.575,7.132,
-7.571,7.967,8.449,9.059,9.716,10.297,10.758,11.145,11.534,11.962,12.439,12.982,13.599,14.267,14.939,15.600,
-16.289,17.031,17.775,18.405,18.854,19.173,19.490,19.915,20.477,21.138,21.812,22.395,22.821,23.135,23.476,23.951,
-24.518,25.039,25.446,25.811,26.228,26.677,27.063,27.386,27.792,28.398,29.122,29.734,30.086,30.226,30.305,30.427,
-30.633,30.971,31.491,32.157,32.827,33.378,33.819,34.260,34.792,35.429,36.127,36.807,37.332,37.553,37.452,37.212,
-37.059,36.988,36.695,35.828,34.338,32.606,31.246,30.740,31.154,32.089,32.913,33.163,32.841,32.329,32.013,31.986,
-32.126,32.361,32.752,33.300,33.831,34.181,34.437,34.841,35.432,35.911,35.967,35.681,35.484,35.695,36.215,36.706,
-37.011,37.262,37.629,38.081,38.445,38.625,38.687,38.732,38.779,38.775,38.683,38.511,38.295,38.087,37.954,37.953,
-38.093,38.344,38.693,39.157,39.715,40.265,40.687,41.008,41.470,42.373,43.753,45.205,46.101,46.088,45.412,44.732,
-44.558,44.875,45.310,45.599,45.797,46.062,46.372,46.570,46.627,46.688,46.838,46.940,46.824,46.583,46.527,46.816,
-47.232,47.414,47.249,46.944,46.741,46.666,46.603,46.512,46.474,46.546,46.664,46.724,46.706,46.670,46.654,46.634,
-46.579,46.505,46.455,46.444,46.451,46.449,46.434,46.417,46.410,46.447,46.604,46.970,47.515,48.008,48.138,47.814,
-47.331,47.098,47.113,46.802,45.525,43.231,40.463,37.649,34.582,30.867,26.855,23.847,23.098,24.639,27.216,29.374,
-30.494,30.849,30.961,31.138,31.478,31.940,32.279,32.096,31.220,30.002,29.053,28.646,28.495,28.162,27.550,26.885,
-26.307,25.696,24.912,24.052,23.337,22.829,22.392,21.897,21.362,20.852,20.344,19.776,19.169,18.601,18.095,17.598,
-17.089,16.611,16.170,15.682,15.090,14.494,14.064,13.824,13.599,13.211,12.674,12.148,11.729,11.368,10.985,10.579,
-10.191,9.821,9.430,9.022,8.644,8.309,7.968,7.583,7.183,6.824,6.505,6.174,5.805,5.432,5.092,4.778,
-4.461,4.132,3.798,3.458,3.118,2.815,2.587,2.407,2.187,1.876,1.535,1.272,1.115,.983,.783,.516,
-.257,.060,-.094,-.252,-.436,-.636,-.833,-1.018,-1.193,-1.357,-1.502,-1.606,-1.641,-1.611,-1.566,-1.554,
--1.576,-1.592,-1.590,-1.613,-1.708,-1.872,-2.078,-2.332,-2.670,-3.084,-3.492,-3.809,-4.032,-4.219,-4.401,-4.549,
--4.642,-4.717,-4.830,-4.978,-5.100,-5.162,-5.196,-5.258,-5.373,-5.529,-5.711,-5.899,-6.059,-6.166,-6.249,-6.383,
--6.595,-6.822,-6.974,-7.033,-7.078,-7.178,-7.327,-7.461,-7.541,-7.593,-7.681,-7.869,-8.198,-8.653,-9.147,-9.568,
--9.861,-10.072,-10.283,-10.510,-10.714,-10.879,-11.059,-11.307,-11.598,-11.851,-12.030,-12.179,-12.353,-12.545,-12.709,-12.833,
--12.950,-13.079,-13.194,-13.261,-13.294,-13.333,-13.393,-13.449,-13.478,-13.489,-13.499,-13.507,-13.508,-13.505,-13.510,-13.508,
--13.468,-13.380,-13.278,-13.201,-13.152,-13.108,-13.054,-12.991,-12.916,-12.818,-12.703,-12.603,-12.540,-12.487,-12.394,-12.250,
--12.107,-12.016,-11.970,-11.918,-11.831,-11.720,-11.606,-11.485,-11.351,-11.224,-11.128,-11.061,-10.988,-10.887,-10.779,-10.699,
--10.652,-10.608,-10.550,-10.480,-10.410,-10.332,-10.241,-10.151,-10.089,-10.058,-10.034,-9.997,-9.952,-9.918,-9.895,-9.859,
--9.797,-9.718,-9.645,-9.586,-9.532,-9.472,-9.403,-9.326,-9.247,-9.172,-9.109,-9.050,-8.978,-8.891,-8.809,-8.754,
--8.714,-8.652,-8.550,-8.442,-8.375,-8.342,-8.285,-8.160,-7.997,-7.876,-7.831,-7.816,-7.759,-7.647,-7.529,-7.440,
--7.358,-7.242,-7.101,-6.991,-6.943,-6.924,-6.873,-6.783,-6.695,-6.641,-6.601,-6.535,-6.439,-6.345,-6.275,-6.215,
--6.141,-6.061,-5.995,-5.946,-5.892,-5.825,-5.764,-5.724,-5.689,-5.625,-5.526,-5.423,-5.345,-5.284,-5.214,-5.131,
--5.054,-4.986,-4.902,-4.779,-4.631,-4.498,-4.398,-4.311,-4.214,-4.113,-4.029,-3.961,-3.885,-3.781,-3.665,-3.559,
--3.470,-3.390,-3.315,-3.249,-3.180,-3.084,-2.950,-2.805,-2.682,-2.583,-2.473,-2.332,-2.180,-2.050,-1.946,-1.839,
--1.704,-1.542,-1.361,-1.159,-.942,-.737,-.570,-.435,-.292,-.119,.066,.243,.419,.618,.831,1.009,
-1.118,1.180,1.238,1.306,1.365,1.410,1.469,1.562,1.667,1.738,1.760,1.769,1.819,1.933,2.090,2.235,
-2.319,2.343,2.378,2.512,2.750,2.987,3.109,3.124,3.162,3.320,3.552,3.748,3.886,4.058,4.335,4.671,
-4.966,5.194,5.412,5.647,5.847,5.971,6.073,6.252,6.537,6.867,7.186,7.504,7.843,8.187,8.509,8.841,
-9.255,9.763,10.296,10.768,11.151,11.452,11.673,11.838,12.024,12.318,12.725,13.169,13.603,14.056,14.544,14.991,
-15.317,15.577,15.917,16.357,16.733,16.882,16.807,16.518,15.799,14.444,12.873,12.336,14.101,18.254,23.412,27.827,
-30.768,32.766,34.614,36.392,37.574,37.816,37.321,36.421,35.160,33.516,31.897,31.017,31.142,31.621,31.409,30.057,
-28.095,26.443,25.600,25.444,25.633,25.943,26.218,26.232,25.821,25.128,24.543,24.342,24.422,24.458,24.263,23.919,
-23.592,23.319,23.013,22.616,22.161,21.698,21.219,20.694,20.146,19.649,19.252,18.938,18.655,18.362,18.047,17.704,
-17.325,16.911,16.484,16.074,15.691,15.308,14.876,14.362,13.772,13.136,12.483,11.838,11.251,10.780,10.423,10.089,
-9.681,9.241,8.948,8.926,9.073,9.129,8.938,8.602,8.330,8.176,7.978,7.565,6.973,6.413,6.084,6.044,
-6.211,6.396,6.302,5.624,4.303,2.732,1.598,1.392,1.999,2.759,2.978,2.399,1.266,.003,-1.124,-2.098,
--3.009,-3.909,-4.781,-5.590,-6.316,-6.938,-7.430,-7.781,-8.015,-8.186,-8.340,-8.501,-8.684,-8.883,-9.058,-9.138,
--9.085,-8.960,-8.900,-9.000,-9.217,-9.410,-9.482,-9.466,-9.460,-9.478,-9.407,-9.124,-8.639,-8.121,-7.762,-7.632,
--7.660,-7.739,-7.819,-7.900,-7.942,-7.834,-7.472,-6.871,-6.179,-5.568,-5.110,-4.759,-4.440,-4.130,-3.838,-3.548,
--3.198,-2.752,-2.257,-1.804,-1.438,-1.108,-.731,-.288,.141,.444,.581,.632,.748,1.050,1.535,2.069,
-2.463,2.596,2.493,2.300,2.176,2.174,2.229,2.239,2.173,2.090,2.073,2.145,2.254,2.346,2.417,2.507,
-2.646,2.821,3.002,3.188,3.402,3.660,3.945,4.222,4.473,4.708,4.941,5.181,5.428,5.686,5.955,6.225,
-6.477,6.709,6.935,7.171,7.412,7.637,7.839,8.035,8.249,8.472,8.677,8.844,8.999,9.185,9.421,9.680,
-9.918,10.121,10.317,10.538,10.784,11.032,11.264,11.481,11.692,11.893,12.076,12.247,12.420,12.605,12.797,12.990,
-13.186,13.377,13.548,13.686,13.818,13.991,14.214,14.427,14.543,14.536,14.476,14.450,14.485,14.537,14.562,14.573,
-14.613,14.691,14.768,14.801,14.794,14.786,14.804,14.842,14.877,14.904,14.938,14.992,15.067,15.145,15.219,15.297,
-15.399,15.535,15.691,15.841,15.971,16.089,16.218,16.375,16.566,16.788,17.037,17.292,17.530,17.747,17.960,18.180,
-18.391,18.564,18.705,18.876,19.130,19.458,19.792,20.077,20.320,20.559,20.807,21.042,21.247,21.321,21.557,21.797,
-22.039,22.323,22.713,23.226,23.783,24.260,24.562,24.643,24.460,24.003,23.383,22.869,22.728,22.993,23.416,23.695,
-23.750,23.740,23.835,24.012,24.123,24.102,24.050,24.103,24.264,24.424,24.504,24.545,24.630,24.775,24.935,25.082,
-25.245,25.446,25.646,25.774,25.807,25.798,25.816,25.887,26.004,26.153,26.325,26.494,26.640,26.800,27.065,27.486,
-27.975,28.355,28.541,28.668,29.005,29.703,30.626,31.432,31.825,31.755,31.409,31.051,30.874,30.934,31.185,31.527,
-31.876,32.196,32.492,32.769,32.996,33.125,33.150,33.110,33.048,32.971,32.854,32.662,32.371,31.962,31.468,31.020,
-30.821,30.992,31.449,31.944,32.272,32.412,32.469,32.479,32.350,32.000,31.521,31.149,31.050,31.175,31.339,31.420,
-31.456,31.540,31.678,31.789,31.818,31.797,31.780,31.755,31.676,31.608,31.783,32.452,33.647,35.095,36.367,37.111,
-37.146,36.436,35.071,33.317,31.584,30.225,29.311,28.649,28.033,27.446,26.966,26.515,25.821,24.675,23.191,21.731,
-20.587,19.791,19.238,18.880,18.740,18.777,18.840,18.813,18.736,18.728,18.821,18.887,18.736,18.232,17.337,16.128,
-14.820,13.711,13.005,12.667,12.479,12.274,12.058,11.912,11.833,11.734,11.594,11.500,11.534,11.656,11.766,11.842,
-11.945,12.103,12.249,12.319,12.350,12.422,12.521,12.532,12.403,12.264,12.351,12.807,13.573,14.431,15.140,15.544,
-15.643,15.588,15.575,15.689,15.842,15.890,15.803,15.679,15.611,15.576,15.496,15.359,15.223,15.115,14.965,14.690,
-14.279,13.797,13.303,12.826,12.398,12.050,11.773,11.507,11.226,10.988,10.886,10.934,11.061,11.208,11.390,11.637,
-11.908,12.122,12.255,12.348,12.414,12.397,12.257,12.056,11.905,11.816,11.698,11.492,11.263,11.098,10.973,10.794,
-10.575,10.460,10.540,10.707,10.785,10.781,10.889,11.223,11.631,11.876,11.942,12.029,12.233,12.345,12.102,11.572,
-11.169,11.222,11.614,11.919,11.868,11.582,11.354,11.302,11.287,11.125,10.782,10.368,9.998,9.723,9.546,9.436,
-9.328,9.151,8.889,8.604,8.378,8.243,8.165,8.084,7.955,7.765,7.529,7.283,7.058,6.842,6.600,6.319,
-6.035,5.786,5.553,5.277,4.937,4.584,4.284,4.038,3.779,3.458,3.097,2.754,2.457,2.178,1.879,1.552,
-1.218,.900,.602,.312,.015,-.297,-.612,-.917,-1.228,-1.582,-2.006,-2.479,-2.951,-3.395,-3.830,-4.288,
--4.774,-5.276,-5.790,-6.330,-6.895,-7.454,-7.972,-8.440,-8.866,-9.269,-9.674,-10.129,-10.675,-11.296,-11.916,-12.454,
--12.893,-13.268,-13.618,-13.961,-14.321,-14.743,-15.251,-15.805,-16.331,-16.790,-17.197,-17.582,-17.945,-18.268,-18.566,-18.876,
--19.225,-19.608,-20.013,-20.444,-20.901,-21.351,-21.732,-21.995,-22.136,-22.200,-22.273,-22.458,-22.817,-23.326,-23.903,-24.509,
--25.199,-26.019,-26.863,-27.498,-27.781,-27.855,-28.040,-28.534,-29.233,-29.879,-30.347,-30.741,-31.213,-31.761,-32.213,-32.408,
--32.339,-32.155,-32.055,-32.178,-32.522,-32.952,-33.293,-33.475,-33.588,-33.778,-34.092,-34.445,-34.745,-35.000,-35.291,-35.671,
--36.101,-36.488,-36.719,-36.692,-36.386,-35.945,-35.658,-35.758,-36.228,-36.823,-37.307,-37.635,-37.907,-38.189,-38.441,-38.597,
--38.650,-38.634,-38.572,-38.492,-38.445,-38.463,-38.509,-38.508,-38.460,-38.447,-38.513,-38.588,-38.579,-38.514,-38.515,-38.634,
--38.783,-38.863,-38.894,-38.963,-39.066,-39.098,-39.023,-38.950,-39.004,-39.158,-39.277,-39.306,-39.332,-39.438,-39.578,-39.652,
--39.650,-39.655,-39.701,-39.713,-39.614,-39.419,-39.184,-38.912,-38.564,-38.148,-37.735,-37.370,-37.030,-36.689,-36.361,-36.032,
--35.570,-34.789,-33.604,-32.100,-30.469,-28.961,-27.876,-27.449,-27.588,-27.771,-27.390,-26.313,-25.045,-24.220,-23.975,-23.901,
--23.581,-23.042,-22.599,-22.401,-22.276,-22.020,-21.668,-21.401,-21.287,-21.227,-21.139,-21.066,-21.066,-21.088,-21.043,-20.944,
--20.879,-20.842,-20.673,-20.240,-19.619,-19.046,-18.683,-18.483,-18.306,-18.102,-17.941,-17.876,-17.835,-17.677,-17.325,-16.846,
--16.406,-16.158,-16.158,-16.345,-16.592,-16.775,-16.840,-16.812,-16.761,-16.750,-16.796,-16.864,-16.886,-16.802,-16.582,-16.233,
--15.775,-15.225,-14.600,-13.940,-13.304,-12.716,-12.120,-11.387,-10.405,-9.176,-7.832,-6.548,-5.422,-4.448,-3.583,-2.819,
--2.171,-1.603,-1.004,-.287,.514,1.267,1.876,2.386,2.913,3.492,4.025,4.402,4.648,4.915,5.331,5.870,
-6.409,6.887,7.377,7.986,8.719,9.460,10.091,10.594,11.027,11.439,11.842,12.258,12.758,13.394,14.127,14.853,
-15.520,16.188,16.929,17.691,18.315,18.695,18.908,19.159,19.598,20.217,20.899,21.521,22.017,22.380,22.672,22.998,
-23.431,23.943,24.446,24.900,25.357,25.856,26.336,26.699,26.975,27.339,27.917,28.616,29.194,29.510,29.634,29.729,
-29.881,30.094,30.410,30.916,31.624,32.398,33.067,33.587,34.055,34.585,35.203,35.853,36.441,36.839,36.937,36.753,
-36.495,36.388,36.398,36.154,35.251,33.664,31.884,30.596,30.205,30.596,31.288,31.807,31.969,31.886,31.755,31.667,
-31.609,31.618,31.840,32.376,33.089,33.679,33.997,34.219,34.611,35.154,35.512,35.422,35.054,34.874,35.160,35.743,
-36.251,36.524,36.716,37.033,37.476,37.877,38.109,38.185,38.191,38.174,38.126,38.020,37.842,37.601,37.355,37.199,
-37.203,37.364,37.632,37.997,38.506,39.162,39.828,40.307,40.565,40.873,41.636,42.995,44.564,45.637,45.755,45.108,
-44.376,44.127,44.397,44.819,45.102,45.277,45.507,45.809,46.054,46.198,46.340,46.536,46.661,46.568,46.343,46.264,
-46.481,46.818,46.967,46.818,46.536,46.324,46.217,46.139,46.072,46.075,46.167,46.268,46.293,46.251,46.216,46.218,
-46.220,46.192,46.161,46.173,46.219,46.246,46.225,46.179,46.155,46.186,46.310,46.592,47.065,47.611,47.947,47.840,
-47.381,46.962,46.854,46.780,46.046,44.209,41.544,38.705,35.929,32.812,29.058,25.340,23.085,23.238,25.327,27.872,
-29.660,30.494,30.824,31.005,31.094,31.137,31.266,31.428,31.276,30.559,29.515,28.680,28.306,28.121,27.738,27.114,
-26.486,25.964,25.389,24.619,23.779,23.104,22.640,22.224,21.732,21.207,20.728,20.262,19.734,19.155,18.605,18.097,
-17.574,17.027,16.531,16.115,15.678,15.130,14.551,14.128,13.906,13.708,13.333,12.789,12.245,11.809,11.428,11.016,
-10.586,10.190,9.817,9.400,8.937,8.512,8.179,7.882,7.534,7.131,6.740,6.398,6.061,5.688,5.311,4.996,
-4.747,4.493,4.169,3.782,3.394,3.063,2.805,2.598,2.397,2.156,1.869,1.585,1.363,1.204,1.050,.842,
-.587,.340,.142,-.023,-.204,-.430,-.679,-.901,-1.063,-1.178,-1.296,-1.443,-1.586,-1.667,-1.673,-1.660,
--1.677,-1.704,-1.678,-1.592,-1.527,-1.565,-1.708,-1.900,-2.125,-2.432,-2.852,-3.324,-3.740,-4.050,-4.283,-4.485,
--4.656,-4.781,-4.878,-4.986,-5.120,-5.255,-5.374,-5.483,-5.597,-5.708,-5.809,-5.914,-6.040,-6.170,-6.268,-6.333,
--6.419,-6.579,-6.803,-7.031,-7.213,-7.346,-7.448,-7.531,-7.597,-7.657,-7.732,-7.849,-8.039,-8.332,-8.714,-9.106,
--9.418,-9.633,-9.822,-10.055,-10.312,-10.520,-10.665,-10.826,-11.075,-11.383,-11.657,-11.853,-12.016,-12.199,-12.390,-12.542,
--12.649,-12.758,-12.896,-13.030,-13.120,-13.167,-13.213,-13.278,-13.344,-13.390,-13.417,-13.438,-13.455,-13.463,-13.472,-13.490,
--13.496,-13.462,-13.386,-13.304,-13.246,-13.203,-13.149,-13.077,-12.996,-12.901,-12.773,-12.618,-12.482,-12.403,-12.356,-12.281,
--12.156,-12.029,-11.956,-11.932,-11.910,-11.855,-11.775,-11.686,-11.577,-11.441,-11.300,-11.189,-11.111,-11.034,-10.935,-10.835,
--10.770,-10.740,-10.714,-10.666,-10.604,-10.541,-10.476,-10.397,-10.314,-10.248,-10.208,-10.178,-10.146,-10.115,-10.093,-10.068,
--10.020,-9.942,-9.853,-9.769,-9.685,-9.594,-9.504,-9.432,-9.382,-9.340,-9.292,-9.242,-9.195,-9.144,-9.074,-8.985,
--8.899,-8.830,-8.767,-8.692,-8.612,-8.551,-8.512,-8.461,-8.362,-8.228,-8.107,-8.030,-7.973,-7.895,-7.790,-7.692,
--7.625,-7.565,-7.469,-7.337,-7.215,-7.143,-7.110,-7.072,-7.004,-6.924,-6.856,-6.798,-6.736,-6.665,-6.592,-6.520,
--6.437,-6.341,-6.250,-6.185,-6.133,-6.065,-5.975,-5.894,-5.853,-5.839,-5.810,-5.740,-5.644,-5.549,-5.461,-5.370,
--5.278,-5.200,-5.131,-5.041,-4.910,-4.758,-4.627,-4.532,-4.447,-4.347,-4.241,-4.154,-4.083,-3.999,-3.887,-3.772,
--3.683,-3.615,-3.541,-3.453,-3.368,-3.293,-3.206,-3.087,-2.954,-2.843,-2.760,-2.672,-2.548,-2.405,-2.276,-2.167,
--2.049,-1.902,-1.734,-1.559,-1.369,-1.155,-.933,-.734,-.562,-.386,-.187,.015,.191,.348,.518,.704,
-.865,.965,1.020,1.076,1.155,1.239,1.309,1.376,1.449,1.505,1.515,1.491,1.489,1.560,1.692,1.827,
-1.917,1.972,2.046,2.195,2.420,2.650,2.790,2.819,2.825,2.925,3.140,3.383,3.574,3.745,3.994,4.341,
-4.691,4.950,5.140,5.349,5.599,5.820,5.964,6.091,6.295,6.600,6.950,7.308,7.687,8.082,8.437,8.712,
-8.972,9.329,9.810,10.313,10.717,11.002,11.224,11.438,11.671,11.953,12.318,12.754,13.208,13.656,14.121,14.606,
-15.038,15.357,15.621,15.946,16.327,16.606,16.660,16.497,16.091,15.227,13.798,12.371,12.211,14.398,18.780,23.952,
-28.396,31.602,34.012,36.045,37.497,37.956,37.493,36.628,35.658,34.384,32.674,31.056,30.390,30.872,31.598,31.324,
-29.622,27.203,25.170,24.123,23.982,24.379,24.985,25.494,25.600,25.210,24.621,24.304,24.459,24.827,24.969,24.687,
-24.126,23.539,23.053,22.652,22.286,21.920,21.506,20.992,20.389,19.791,19.301,18.949,18.683,18.428,18.150,17.848,
-17.532,17.203,16.846,16.442,15.990,15.518,15.063,14.635,14.203,13.727,13.197,12.636,12.081,11.562,11.099,10.692,
-10.305,9.903,9.516,9.241,9.143,9.161,9.137,8.966,8.686,8.394,8.103,7.714,7.150,6.474,5.870,5.522,
-5.503,5.733,5.957,5.817,5.056,3.782,2.513,1.857,2.039,2.697,3.166,2.974,2.107,.868,-.435,-1.654,
--2.744,-3.668,-4.411,-5.033,-5.645,-6.301,-6.927,-7.394,-7.645,-7.753,-7.843,-7.981,-8.159,-8.342,-8.520,-8.681,
--8.783,-8.791,-8.744,-8.757,-8.914,-9.166,-9.365,-9.420,-9.379,-9.363,-9.401,-9.379,-9.167,-8.767,-8.326,-7.996,
--7.806,-7.675,-7.535,-7.401,-7.328,-7.314,-7.266,-7.065,-6.655,-6.070,-5.405,-4.762,-4.223,-3.827,-3.548,-3.302,
--2.990,-2.572,-2.099,-1.669,-1.341,-1.085,-.818,-.491,-.134,.171,.363,.460,.547,.727,1.046,1.471,
-1.901,2.233,2.414,2.474,2.488,2.527,2.605,2.685,2.717,2.693,2.649,2.634,2.661,2.706,2.745,2.790,
-2.878,3.028,3.216,3.395,3.546,3.699,3.895,4.151,4.436,4.711,4.957,5.190,5.439,5.720,6.019,6.311,
-6.577,6.820,7.052,7.288,7.526,7.757,7.976,8.188,8.401,8.618,8.824,9.006,9.168,9.339,9.547,9.795,
-10.049,10.275,10.466,10.650,10.855,11.082,11.312,11.532,11.746,11.956,12.149,12.312,12.454,12.600,12.769,12.957,
-13.151,13.347,13.540,13.714,13.856,13.986,14.145,14.345,14.531,14.630,14.632,14.611,14.642,14.720,14.779,14.777,
-14.754,14.769,14.825,14.863,14.843,14.794,14.773,14.800,14.843,14.871,14.888,14.923,14.984,15.054,15.126,15.211,
-15.324,15.462,15.600,15.723,15.835,15.954,16.089,16.240,16.409,16.601,16.824,17.075,17.339,17.600,17.845,18.062,
-18.243,18.395,18.546,18.730,18.961,19.215,19.456,19.680,19.921,20.208,20.525,20.827,21.087,21.321,21.330,21.702,
-22.040,22.261,22.425,22.684,23.111,23.615,24.042,24.316,24.438,24.377,24.058,23.505,22.958,22.732,22.936,23.351,
-23.654,23.723,23.703,23.771,23.924,24.026,24.021,24.008,24.107,24.306,24.486,24.577,24.633,24.735,24.891,25.051,
-25.197,25.364,25.568,25.758,25.861,25.873,25.860,25.886,25.952,26.033,26.126,26.250,26.400,26.549,26.706,26.940,
-27.317,27.789,28.208,28.466,28.639,28.954,29.587,30.478,31.336,31.850,31.895,31.584,31.158,30.835,30.724,30.828,
-31.094,31.453,31.862,32.306,32.783,33.258,33.662,33.924,34.016,33.964,33.817,33.609,33.351,33.037,32.661,32.241,
-31.851,31.605,31.594,31.808,32.124,32.398,32.572,32.663,32.678,32.559,32.265,31.885,31.615,31.580,31.702,31.784,
-31.741,31.702,31.859,32.227,32.601,32.760,32.668,32.450,32.239,32.102,32.139,32.528,33.395,34.610,35.813,36.669,
-37.068,37.044,36.563,35.517,33.955,32.231,30.793,29.823,29.158,28.554,27.952,27.401,26.811,25.939,24.664,23.193,
-21.897,20.969,20.331,19.852,19.537,19.444,19.496,19.505,19.394,19.293,19.350,19.515,19.562,19.302,18.696,17.793,
-16.656,15.417,14.315,13.571,13.206,13.027,12.841,12.619,12.432,12.304,12.195,12.102,12.093,12.192,12.317,12.378,
-12.403,12.492,12.662,12.811,12.872,12.929,13.099,13.345,13.487,13.426,13.315,13.434,13.942,14.748,15.610,16.298,
-16.694,16.811,16.780,16.771,16.857,16.960,16.943,16.777,16.563,16.402,16.285,16.145,15.976,15.832,15.711,15.514,
-15.151,14.658,14.168,13.776,13.479,13.224,12.979,12.719,12.420,12.092,11.822,11.706,11.752,11.878,12.019,12.197,
-12.454,12.755,13.011,13.180,13.289,13.348,13.308,13.150,12.962,12.855,12.817,12.719,12.497,12.244,12.086,11.993,
-11.833,11.594,11.445,11.518,11.708,11.804,11.786,11.874,12.231,12.723,13.068,13.182,13.238,13.353,13.371,13.066,
-12.523,12.140,12.211,12.580,12.809,12.649,12.245,11.894,11.697,11.520,11.221,10.816,10.425,10.126,9.925,9.807,
-9.744,9.673,9.523,9.288,9.049,8.895,8.822,8.750,8.615,8.420,8.204,7.989,7.772,7.545,7.308,7.057,
-6.788,6.514,6.248,5.985,5.700,5.389,5.085,4.815,4.562,4.278,3.950,3.615,3.311,3.027,2.722,2.386,
-2.048,1.741,1.450,1.139,.797,.459,.162,-.093,-.347,-.645,-.999,-1.391,-1.794,-2.204,-2.637,-3.107,
--3.600,-4.093,-4.579,-5.076,-5.601,-6.142,-6.669,-7.167,-7.644,-8.111,-8.568,-9.028,-9.530,-10.103,-10.715,-11.276,
--11.721,-12.066,-12.384,-12.733,-13.125,-13.562,-14.061,-14.624,-15.200,-15.719,-16.152,-16.530,-16.888,-17.225,-17.528,-17.821,
--18.155,-18.556,-19.003,-19.457,-19.904,-20.342,-20.754,-21.102,-21.354,-21.493,-21.528,-21.511,-21.554,-21.782,-22.233,-22.830,
--23.468,-24.129,-24.869,-25.667,-26.365,-26.799,-27.004,-27.212,-27.634,-28.260,-28.909,-29.455,-29.938,-30.458,-31.003,-31.427,
--31.599,-31.535,-31.402,-31.399,-31.626,-32.032,-32.460,-32.767,-32.937,-33.082,-33.321,-33.654,-33.982,-34.241,-34.475,-34.775,
--35.172,-35.609,-36.000,-36.266,-36.341,-36.202,-35.951,-35.809,-35.972,-36.426,-36.962,-37.373,-37.635,-37.860,-38.126,-38.392,
--38.570,-38.625,-38.589,-38.517,-38.453,-38.429,-38.448,-38.480,-38.503,-38.546,-38.648,-38.775,-38.830,-38.773,-38.692,-38.701,
--38.790,-38.840,-38.809,-38.804,-38.929,-39.113,-39.180,-39.086,-38.992,-39.057,-39.235,-39.355,-39.362,-39.374,-39.495,-39.664,
--39.755,-39.752,-39.753,-39.793,-39.789,-39.665,-39.467,-39.281,-39.094,-38.809,-38.395,-37.934,-37.515,-37.140,-36.785,-36.480,
--36.258,-36.026,-35.558,-34.652,-33.271,-31.566,-29.845,-28.532,-27.994,-28.231,-28.701,-28.650,-27.741,-26.369,-25.247,-24.709,
--24.483,-24.135,-23.586,-23.110,-22.908,-22.863,-22.734,-22.453,-22.137,-21.890,-21.706,-21.577,-21.551,-21.635,-21.717,-21.676,
--21.548,-21.493,-21.554,-21.547,-21.252,-20.677,-20.067,-19.643,-19.401,-19.206,-19.008,-18.896,-18.913,-18.918,-18.672,-18.083,
--17.318,-16.690,-16.418,-16.504,-16.785,-17.059,-17.192,-17.150,-16.989,-16.826,-16.771,-16.872,-17.074,-17.254,-17.288,-17.117,
--16.758,-16.267,-15.699,-15.095,-14.491,-13.910,-13.328,-12.656,-11.775,-10.633,-9.315,-8.003,-6.849,-5.870,-4.985,-4.138,
--3.369,-2.738,-2.204,-1.623,-.895,-.093,.603,1.106,1.530,2.067,2.766,3.469,3.981,4.275,4.508,4.849,
-5.328,5.858,6.381,6.933,7.578,8.305,9.031,9.698,10.314,10.901,11.423,11.825,12.146,12.536,13.128,13.895,
-14.682,15.380,16.040,16.763,17.524,18.147,18.501,18.670,18.892,19.337,19.962,20.597,21.116,21.515,21.857,22.200,
-22.573,22.980,23.405,23.836,24.291,24.808,25.373,25.891,26.277,26.578,26.959,27.515,28.141,28.625,28.875,28.994,
-29.136,29.349,29.607,29.950,30.488,31.248,32.081,32.787,33.313,33.786,34.357,35.040,35.717,36.238,36.485,36.421,
-36.142,35.867,35.772,35.758,35.426,34.406,32.765,31.066,29.974,29.755,30.138,30.624,30.895,30.964,30.992,31.044,
-31.062,31.034,31.121,31.532,32.266,33.033,33.500,33.635,33.738,34.082,34.576,34.852,34.701,34.349,34.245,34.602,
-35.221,35.751,36.051,36.248,36.511,36.858,37.187,37.418,37.548,37.599,37.570,37.460,37.285,37.070,36.839,36.642,
-36.551,36.609,36.791,37.046,37.389,37.895,38.578,39.291,39.808,40.071,40.331,40.985,42.186,43.604,44.625,44.845,
-44.420,43.908,43.771,44.026,44.380,44.609,44.750,44.949,45.226,45.488,45.695,45.911,46.161,46.339,46.331,46.197,
-46.138,46.261,46.449,46.499,46.349,46.113,45.923,45.804,45.730,45.707,45.762,45.859,45.907,45.869,45.802,45.788,
-45.826,45.853,45.842,45.840,45.898,45.997,46.063,46.052,45.990,45.940,45.970,46.156,46.558,47.137,47.667,47.838,
-47.531,47.001,46.667,46.607,46.305,45.047,42.639,39.637,36.727,33.956,30.801,27.130,23.880,22.485,23.522,26.072,
-28.529,29.949,30.498,30.757,30.948,30.961,30.829,30.800,30.911,30.799,30.138,29.116,28.279,27.903,27.728,27.350,
-26.711,26.054,25.518,24.977,24.296,23.563,22.956,22.492,22.036,21.517,21.010,20.582,20.168,19.679,19.129,18.597,
-18.079,17.508,16.897,16.370,15.978,15.605,15.114,14.566,14.159,13.960,13.787,13.426,12.875,12.320,11.879,11.495,
-11.071,10.618,10.205,9.821,9.385,8.885,8.422,8.079,7.805,7.486,7.091,6.693,6.346,6.008,5.624,5.229,
-4.912,4.695,4.485,4.180,3.780,3.377,3.056,2.818,2.610,2.384,2.137,1.890,1.667,1.473,1.292,1.094,
-.864,.617,.387,.197,.030,-.157,-.392,-.655,-.882,-1.024,-1.100,-1.186,-1.330,-1.503,-1.628,-1.677,
--1.698,-1.741,-1.775,-1.724,-1.582,-1.448,-1.436,-1.561,-1.750,-1.961,-2.230,-2.613,-3.084,-3.547,-3.928,-4.222,
--4.464,-4.666,-4.829,-4.963,-5.096,-5.241,-5.388,-5.530,-5.676,-5.828,-5.970,-6.087,-6.192,-6.310,-6.437,-6.539,
--6.593,-6.627,-6.700,-6.848,-7.060,-7.290,-7.486,-7.621,-7.697,-7.752,-7.832,-7.959,-8.131,-8.345,-8.604,-8.889,
--9.140,-9.310,-9.429,-9.585,-9.830,-10.113,-10.341,-10.498,-10.664,-10.907,-11.197,-11.445,-11.618,-11.762,-11.928,-12.101,
--12.241,-12.349,-12.468,-12.617,-12.765,-12.872,-12.946,-13.025,-13.123,-13.218,-13.290,-13.341,-13.381,-13.405,-13.411,-13.412,
--13.420,-13.420,-13.393,-13.339,-13.287,-13.249,-13.205,-13.129,-13.030,-12.934,-12.841,-12.720,-12.566,-12.421,-12.326,-12.269,
--12.196,-12.083,-11.973,-11.913,-11.902,-11.893,-11.857,-11.800,-11.735,-11.649,-11.533,-11.408,-11.310,-11.237,-11.155,-11.043,
--10.929,-10.855,-10.830,-10.818,-10.785,-10.730,-10.671,-10.616,-10.560,-10.499,-10.439,-10.382,-10.331,-10.290,-10.264,-10.241,
--10.201,-10.129,-10.044,-9.970,-9.904,-9.818,-9.698,-9.573,-9.489,-9.461,-9.457,-9.439,-9.403,-9.361,-9.316,-9.251,
--9.157,-9.051,-8.959,-8.885,-8.818,-8.747,-8.685,-8.640,-8.602,-8.542,-8.448,-8.334,-8.226,-8.130,-8.034,-7.935,
--7.846,-7.781,-7.732,-7.670,-7.579,-7.472,-7.375,-7.303,-7.248,-7.191,-7.125,-7.056,-6.991,-6.937,-6.890,-6.841,
--6.774,-6.681,-6.574,-6.480,-6.412,-6.352,-6.270,-6.167,-6.073,-6.020,-5.997,-5.964,-5.897,-5.802,-5.698,-5.588,
--5.469,-5.361,-5.287,-5.236,-5.165,-5.038,-4.880,-4.746,-4.664,-4.602,-4.519,-4.414,-4.310,-4.215,-4.108,-3.984,
--3.873,-3.805,-3.764,-3.703,-3.601,-3.484,-3.386,-3.301,-3.204,-3.094,-2.998,-2.927,-2.855,-2.753,-2.629,-2.514,
--2.414,-2.296,-2.133,-1.937,-1.738,-1.542,-1.340,-1.132,-.935,-.744,-.533,-.286,-.032,.179,.334,.464,
-.595,.716,.805,.869,.942,1.039,1.141,1.229,1.301,1.359,1.382,1.353,1.302,1.296,1.373,1.500,
-1.602,1.652,1.698,1.822,2.050,2.315,2.506,2.564,2.544,2.576,2.743,3.003,3.245,3.415,3.587,3.862,
-4.237,4.599,4.858,5.038,5.230,5.465,5.695,5.891,6.092,6.358,6.690,7.046,7.414,7.811,8.213,8.548,
-8.792,9.029,9.371,9.815,10.231,10.509,10.670,10.832,11.079,11.417,11.821,12.274,12.749,13.215,13.664,14.113,
-14.557,14.947,15.258,15.549,15.886,16.216,16.400,16.367,16.138,15.642,14.650,13.150,11.838,11.973,14.453,18.943,
-24.069,28.540,31.985,34.693,36.766,37.870,37.810,37.011,36.109,35.206,33.856,31.926,30.163,29.583,30.291,31.145,
-30.769,28.822,26.211,24.162,23.266,23.338,23.895,24.528,24.944,24.953,24.619,24.294,24.348,24.790,25.241,25.291,
-24.845,24.123,23.401,22.822,22.401,22.090,21.799,21.406,20.844,20.177,19.559,19.100,18.781,18.510,18.221,17.917,
-17.630,17.369,17.109,16.802,16.405,15.915,15.385,14.895,14.480,14.102,13.696,13.242,12.772,12.321,11.888,11.455,
-11.021,10.596,10.188,9.808,9.486,9.257,9.114,9.002,8.853,8.631,8.315,7.880,7.307,6.629,5.943,5.370,
-5.006,4.892,4.974,5.060,4.871,4.241,3.327,2.570,2.363,2.697,3.151,3.239,2.766,1.860,.732,-.506,
--1.801,-3.025,-3.995,-4.643,-5.115,-5.637,-6.291,-6.934,-7.358,-7.498,-7.486,-7.513,-7.662,-7.892,-8.124,-8.323,
--8.486,-8.596,-8.637,-8.650,-8.734,-8.955,-9.256,-9.489,-9.552,-9.486,-9.408,-9.377,-9.328,-9.165,-8.873,-8.526,
--8.198,-7.896,-7.587,-7.278,-7.023,-6.862,-6.774,-6.680,-6.491,-6.136,-5.574,-4.832,-4.044,-3.408,-3.048,-2.899,
--2.743,-2.387,-1.834,-1.271,-.896,-.750,-.706,-.604,-.379,-.090,.166,.336,.455,.604,.849,1.191,
-1.569,1.902,2.145,2.312,2.455,2.616,2.796,2.963,3.081,3.138,3.152,3.156,3.174,3.207,3.239,3.261,
-3.298,3.384,3.532,3.708,3.859,3.959,4.042,4.172,4.390,4.678,4.981,5.257,5.512,5.782,6.087,6.408,
-6.706,6.959,7.181,7.403,7.638,7.875,8.101,8.314,8.524,8.737,8.943,9.134,9.309,9.485,9.681,9.905,
-10.146,10.382,10.593,10.778,10.951,11.128,11.314,11.504,11.698,11.901,12.107,12.298,12.460,12.604,12.757,12.940,
-13.150,13.374,13.607,13.839,14.046,14.208,14.340,14.480,14.638,14.768,14.817,14.796,14.782,14.831,14.906,14.927,
-14.873,14.810,14.806,14.844,14.854,14.806,14.755,14.769,14.839,14.903,14.923,14.929,14.965,15.033,15.100,15.158,
-15.238,15.362,15.506,15.624,15.706,15.789,15.912,16.075,16.251,16.426,16.612,16.828,17.076,17.347,17.626,17.892,
-18.116,18.282,18.418,18.585,18.814,19.068,19.279,19.432,19.597,19.851,20.188,20.520,20.785,21.026,21.330,21.316,
-21.892,22.389,22.629,22.667,22.713,22.896,23.179,23.484,23.816,24.200,24.510,24.485,24.000,23.280,22.767,22.737,
-23.068,23.416,23.568,23.581,23.615,23.712,23.792,23.817,23.859,23.999,24.213,24.404,24.527,24.629,24.770,24.942,
-25.103,25.251,25.425,25.630,25.804,25.889,25.896,25.899,25.939,25.993,26.025,26.050,26.124,26.262,26.431,26.603,
-26.822,27.164,27.624,28.087,28.429,28.667,28.981,29.555,30.384,31.236,31.808,31.940,31.696,31.281,30.901,30.687,
-30.686,30.887,31.227,31.634,32.084,32.611,33.243,33.914,34.460,34.727,34.684,34.431,34.107,33.794,33.508,33.240,
-32.978,32.727,32.503,32.350,32.313,32.396,32.552,32.721,32.858,32.926,32.868,32.653,32.355,32.138,32.101,32.156,
-32.111,31.926,31.825,32.093,32.739,33.427,33.764,33.633,33.231,32.835,32.626,32.721,33.237,34.182,35.303,36.172,
-36.527,36.461,36.207,35.777,34.934,33.562,31.947,30.592,29.751,29.259,28.796,28.228,27.584,26.828,25.804,24.480,
-23.097,21.988,21.269,20.809,20.475,20.288,20.284,20.335,20.250,20.017,19.846,19.895,20.048,20.032,19.689,19.070,
-18.257,17.249,16.076,14.939,14.115,13.701,13.536,13.394,13.196,12.999,12.856,12.759,12.711,12.747,12.858,12.961,
-12.993,13.009,13.107,13.278,13.415,13.486,13.608,13.895,14.254,14.454,14.407,14.315,14.494,15.083,15.940,16.800,
-17.461,17.848,17.989,17.992,17.993,18.050,18.081,17.961,17.679,17.360,17.125,16.965,16.787,16.563,16.335,16.114,
-15.823,15.399,14.912,14.506,14.259,14.115,13.973,13.785,13.550,13.270,12.964,12.708,12.586,12.607,12.698,12.809,
-12.976,13.246,13.571,13.839,13.992,14.068,14.112,14.096,13.998,13.877,13.819,13.802,13.697,13.451,13.180,13.034,
-12.993,12.907,12.726,12.595,12.649,12.810,12.888,12.869,12.970,13.352,13.880,14.258,14.377,14.383,14.397,14.307,
-13.945,13.413,13.063,13.110,13.363,13.431,13.146,12.688,12.308,12.040,11.742,11.342,10.931,10.623,10.420,10.260,
-10.126,10.042,9.992,9.908,9.763,9.613,9.520,9.456,9.334,9.123,8.885,8.692,8.536,8.353,8.107,7.822,
-7.539,7.269,7.001,6.728,6.448,6.162,5.871,5.588,5.315,5.035,4.730,4.411,4.118,3.860,3.594,3.272,
-2.909,2.569,2.288,2.019,1.691,1.305,.939,.664,.458,.234,-.069,-.429,-.788,-1.129,-1.494,-1.931,
--2.427,-2.927,-3.393,-3.841,-4.320,-4.843,-5.374,-5.877,-6.356,-6.846,-7.362,-7.885,-8.399,-8.925,-9.485,-10.049,
--10.542,-10.916,-11.211,-11.514,-11.887,-12.332,-12.830,-13.379,-13.967,-14.548,-15.062,-15.488,-15.849,-16.180,-16.490,-16.784,
--17.097,-17.476,-17.929,-18.410,-18.866,-19.278,-19.656,-20.011,-20.335,-20.610,-20.806,-20.891,-20.880,-20.875,-21.024,-21.403,
--21.943,-22.512,-23.066,-23.674,-24.388,-25.120,-25.703,-26.082,-26.389,-26.812,-27.415,-28.112,-28.787,-29.402,-29.968,-30.458,
--30.800,-30.957,-30.986,-31.009,-31.139,-31.402,-31.732,-32.019,-32.197,-32.309,-32.469,-32.750,-33.106,-33.431,-33.695,-33.969,
--34.330,-34.756,-35.152,-35.455,-35.667,-35.799,-35.835,-35.797,-35.802,-35.989,-36.377,-36.834,-37.205,-37.460,-37.680,-37.932,
--38.185,-38.363,-38.434,-38.430,-38.403,-38.379,-38.358,-38.330,-38.315,-38.372,-38.552,-38.811,-39.006,-39.011,-38.874,-38.789,
--38.875,-39.026,-39.045,-38.917,-38.846,-38.988,-39.228,-39.313,-39.182,-39.042,-39.103,-39.317,-39.478,-39.508,-39.531,-39.661,
--39.832,-39.905,-39.876,-39.859,-39.892,-39.873,-39.718,-39.489,-39.304,-39.152,-38.914,-38.533,-38.094,-37.694,-37.322,-36.931,
--36.566,-36.326,-36.192,-35.961,-35.382,-34.324,-32.820,-31.072,-29.473,-28.521,-28.481,-29.041,-29.416,-28.965,-27.739,-26.371,
--25.420,-24.911,-24.515,-24.044,-23.626,-23.438,-23.425,-23.362,-23.121,-22.755,-22.383,-22.075,-21.883,-21.872,-22.027,-22.204,
--22.236,-22.126,-22.035,-22.059,-22.080,-21.889,-21.446,-20.924,-20.507,-20.214,-19.972,-19.802,-19.809,-19.971,-20.028,-19.662,
--18.823,-17.830,-17.123,-16.925,-17.123,-17.433,-17.630,-17.639,-17.489,-17.250,-17.021,-16.922,-17.030,-17.313,-17.622,-17.777,
--17.666,-17.297,-16.760,-16.159,-15.565,-15.005,-14.469,-13.899,-13.194,-12.252,-11.057,-9.725,-8.451,-7.364,-6.448,-5.592,
--4.745,-3.969,-3.347,-2.838,-2.284,-1.584,-.828,-.219,.160,.458,.918,1.628,2.437,3.118,3.584,3.946,
-4.364,4.902,5.507,6.111,6.693,7.271,7.857,8.467,9.148,9.938,10.781,11.513,11.982,12.215,12.435,12.873,
-13.568,14.360,15.091,15.759,16.454,17.173,17.768,18.116,18.297,18.541,19.004,19.626,20.220,20.672,21.025,21.380,
-21.779,22.186,22.558,22.894,23.239,23.653,24.166,24.742,25.282,25.718,26.091,26.524,27.073,27.638,28.049,28.251,
-28.349,28.480,28.695,28.990,29.420,30.081,30.962,31.872,32.587,33.075,33.513,34.093,34.821,35.516,35.973,36.096,
-35.931,35.634,35.374,35.200,34.929,34.239,32.972,31.380,30.028,29.375,29.418,29.759,29.993,30.023,30.006,30.068,
-30.158,30.181,30.221,30.526,31.239,32.161,32.864,33.077,32.955,32.928,33.249,33.748,34.040,33.959,33.740,33.754,
-34.134,34.699,35.195,35.541,35.814,36.089,36.349,36.558,36.728,36.878,36.976,36.958,36.810,36.590,36.370,36.196,
-36.096,36.100,36.217,36.410,36.641,36.940,37.393,38.013,38.663,39.154,39.463,39.814,40.497,41.559,42.693,43.449,
-43.619,43.405,43.217,43.313,43.634,43.957,44.161,44.309,44.504,44.755,45.002,45.230,45.474,45.729,45.916,45.977,
-45.967,45.999,46.097,46.163,46.092,45.890,45.654,45.457,45.318,45.250,45.281,45.400,45.520,45.550,45.493,45.443,
-45.469,45.539,45.575,45.559,45.553,45.614,45.724,45.816,45.843,45.808,45.762,45.797,46.031,46.525,47.166,47.646,
-47.668,47.239,46.717,46.463,46.358,45.747,43.994,41.130,37.846,34.763,31.818,28.570,25.137,22.594,22.164,23.972,
-26.788,29.076,30.214,30.609,30.831,30.972,30.873,30.659,30.666,30.897,30.857,30.120,28.901,27.861,27.388,27.242,
-26.948,26.347,25.647,25.040,24.495,23.911,23.314,22.783,22.303,21.790,21.251,20.779,20.398,20.003,19.505,18.956,
-18.443,17.935,17.338,16.685,16.143,15.790,15.486,15.043,14.499,14.074,13.876,13.735,13.408,12.868,12.304,11.857,
-11.482,11.070,10.617,10.195,9.811,9.391,8.907,8.443,8.079,7.782,7.447,7.047,6.654,6.319,5.990,5.600,
-5.176,4.823,4.584,4.383,4.111,3.750,3.379,3.071,2.822,2.588,2.347,2.118,1.919,1.735,1.540,1.324,
-1.096,.870,.653,.447,.255,.073,-.117,-.335,-.568,-.771,-.900,-.972,-1.057,-1.211,-1.411,-1.578,
--1.667,-1.708,-1.746,-1.764,-1.703,-1.556,-1.415,-1.389,-1.504,-1.693,-1.902,-2.152,-2.495,-2.928,-3.379,-3.774,
--4.095,-4.361,-4.592,-4.796,-4.987,-5.175,-5.356,-5.511,-5.640,-5.768,-5.925,-6.106,-6.286,-6.449,-6.601,-6.747,
--6.871,-6.952,-6.991,-7.020,-7.085,-7.209,-7.382,-7.565,-7.715,-7.821,-7.911,-8.025,-8.181,-8.365,-8.563,-8.769,
--8.967,-9.126,-9.228,-9.313,-9.456,-9.686,-9.949,-10.174,-10.353,-10.546,-10.790,-11.043,-11.240,-11.372,-11.489,-11.634,
--11.794,-11.936,-12.067,-12.214,-12.377,-12.525,-12.640,-12.745,-12.870,-13.009,-13.130,-13.217,-13.279,-13.328,-13.355,-13.355,
--13.346,-13.350,-13.363,-13.359,-13.331,-13.291,-13.247,-13.179,-13.078,-12.967,-12.881,-12.814,-12.723,-12.585,-12.436,-12.323,
--12.250,-12.175,-12.078,-11.982,-11.922,-11.893,-11.864,-11.815,-11.758,-11.700,-11.628,-11.534,-11.439,-11.370,-11.318,-11.243,
--11.123,-10.988,-10.893,-10.858,-10.855,-10.840,-10.798,-10.745,-10.698,-10.661,-10.625,-10.576,-10.511,-10.444,-10.397,-10.373,
--10.345,-10.282,-10.187,-10.100,-10.052,-10.024,-9.963,-9.845,-9.711,-9.622,-9.597,-9.602,-9.592,-9.553,-9.501,-9.444,
--9.374,-9.284,-9.187,-9.103,-9.038,-8.976,-8.904,-8.826,-8.762,-8.721,-8.684,-8.624,-8.528,-8.409,-8.296,-8.200,
--8.116,-8.030,-7.949,-7.884,-7.840,-7.795,-7.725,-7.628,-7.528,-7.450,-7.393,-7.338,-7.270,-7.198,-7.139,-7.098,
--7.061,-7.005,-6.925,-6.835,-6.753,-6.681,-6.601,-6.499,-6.384,-6.284,-6.215,-6.165,-6.106,-6.028,-5.938,-5.842,
--5.730,-5.602,-5.488,-5.422,-5.395,-5.344,-5.221,-5.049,-4.905,-4.831,-4.795,-4.734,-4.628,-4.504,-4.385,-4.263,
--4.133,-4.021,-3.963,-3.942,-3.898,-3.797,-3.663,-3.549,-3.465,-3.381,-3.276,-3.167,-3.077,-2.995,-2.895,-2.782,
--2.682,-2.600,-2.496,-2.332,-2.110,-1.877,-1.666,-1.480,-1.306,-1.135,-.950,-.723,-.441,-.139,.118,.294,
-.404,.488,.565,.637,.709,.800,.910,1.019,1.103,1.161,1.200,1.215,1.200,1.173,1.181,1.250,
-1.355,1.444,1.508,1.595,1.758,1.990,2.211,2.337,2.360,2.364,2.456,2.675,2.955,3.195,3.365,3.539,
-3.802,4.156,4.509,4.782,4.977,5.152,5.342,5.544,5.756,6.004,6.309,6.655,7.017,7.392,7.776,8.131,
-8.405,8.618,8.871,9.240,9.676,10.035,10.236,10.344,10.498,10.781,11.182,11.654,12.158,12.667,13.153,13.604,
-14.021,14.391,14.703,14.983,15.296,15.653,15.953,16.071,15.989,15.740,15.199,14.124,12.597,11.434,11.881,14.655,
-19.252,24.328,28.770,32.300,35.073,36.994,37.731,37.335,36.445,35.639,34.745,33.149,30.829,28.791,28.180,28.995,
-29.931,29.587,27.739,25.392,23.724,23.164,23.368,23.796,24.121,24.243,24.195,24.136,24.294,24.748,25.273,25.487,
-25.188,24.504,23.727,23.059,22.546,22.169,21.891,21.623,21.230,20.651,19.979,19.386,18.961,18.646,18.336,18.004,
-17.699,17.466,17.285,17.087,16.799,16.383,15.863,15.323,14.854,14.483,14.154,13.791,13.384,12.980,12.617,12.270,
-11.897,11.480,11.044,10.606,10.173,9.757,9.398,9.134,8.964,8.830,8.636,8.289,7.755,7.080,6.376,5.749,
-5.239,4.836,4.537,4.342,4.181,3.915,3.462,2.947,2.649,2.738,3.069,3.282,3.108,2.554,1.769,.822,
--.337,-1.685,-2.995,-3.988,-4.594,-5.030,-5.576,-6.289,-6.962,-7.350,-7.408,-7.311,-7.284,-7.422,-7.673,-7.942,
--8.169,-8.336,-8.434,-8.469,-8.499,-8.626,-8.906,-9.280,-9.595,-9.729,-9.680,-9.538,-9.386,-9.232,-9.043,-8.803,
--8.519,-8.188,-7.803,-7.387,-7.012,-6.736,-6.549,-6.378,-6.154,-5.844,-5.411,-4.791,-3.977,-3.114,-2.459,-2.173,
--2.147,-2.062,-1.665,-1.000,-.361,-.029,-.045,-.221,-.319,-.228,.009,.283,.517,.709,.914,1.187,
-1.531,1.883,2.164,2.343,2.467,2.619,2.844,3.115,3.360,3.515,3.572,3.570,3.563,3.594,3.667,3.761,
-3.850,3.927,4.009,4.111,4.224,4.319,4.383,4.440,4.543,4.734,5.007,5.316,5.615,5.894,6.175,6.479,
-6.793,7.079,7.318,7.524,7.729,7.950,8.177,8.392,8.594,8.792,8.993,9.190,9.378,9.564,9.760,9.969,
-10.185,10.400,10.612,10.822,11.025,11.212,11.385,11.550,11.721,11.907,12.105,12.304,12.487,12.654,12.820,13.003,
-13.206,13.424,13.655,13.904,14.163,14.400,14.587,14.733,14.867,14.993,15.070,15.059,14.991,14.946,14.971,15.016,
-15.003,14.923,14.851,14.845,14.873,14.863,14.804,14.770,14.820,14.918,14.982,14.984,14.980,15.028,15.113,15.184,
-15.227,15.289,15.400,15.532,15.631,15.695,15.778,15.919,16.101,16.281,16.444,16.616,16.819,17.053,17.307,17.576,
-17.851,18.099,18.292,18.449,18.624,18.842,19.063,19.238,19.392,19.615,19.943,20.293,20.540,20.686,20.895,21.316,
-21.409,22.132,22.727,22.998,22.997,22.904,22.832,22.815,22.944,23.384,24.163,24.961,25.249,24.741,23.708,22.792,
-22.478,22.735,23.164,23.424,23.471,23.451,23.468,23.514,23.564,23.649,23.810,24.022,24.222,24.386,24.547,24.729,
-24.913,25.071,25.224,25.411,25.625,25.800,25.882,25.894,25.904,25.941,25.972,25.961,25.942,25.987,26.129,26.328,
-26.532,26.759,27.079,27.516,27.990,28.375,28.648,28.943,29.431,30.148,30.922,31.496,31.714,31.604,31.310,30.988,
-30.758,30.709,30.871,31.182,31.533,31.883,32.327,32.992,33.847,34.650,35.111,35.123,34.822,34.437,34.113,33.875,
-33.695,33.550,33.411,33.242,33.039,32.864,32.790,32.837,32.954,33.072,33.135,33.094,32.924,32.684,32.511,32.489,
-32.527,32.429,32.163,32.001,32.289,33.067,33.939,34.409,34.296,33.823,33.348,33.107,33.209,33.719,34.586,35.510,
-36.054,36.003,35.552,35.051,34.574,33.860,32.710,31.340,30.214,29.576,29.233,28.827,28.194,27.378,26.412,25.240,
-23.908,22.673,21.818,21.386,21.191,21.074,21.030,21.068,21.063,20.868,20.545,20.342,20.392,20.536,20.488,20.135,
-19.567,18.851,17.923,16.755,15.554,14.648,14.189,14.028,13.917,13.750,13.583,13.479,13.427,13.409,13.439,13.516,
-13.593,13.631,13.670,13.766,13.900,14.009,14.114,14.336,14.720,15.113,15.291,15.246,15.247,15.595,16.334,17.247,
-18.067,18.656,18.997,19.135,19.151,19.153,19.179,19.144,18.928,18.538,18.132,17.852,17.670,17.455,17.137,16.763,
-16.392,16.008,15.591,15.201,14.934,14.806,14.726,14.606,14.436,14.250,14.045,13.809,13.585,13.460,13.460,13.530,
-13.623,13.768,14.010,14.301,14.525,14.636,14.700,14.785,14.865,14.872,14.814,14.763,14.723,14.603,14.360,14.103,
-13.975,13.972,13.953,13.840,13.730,13.746,13.854,13.928,13.975,14.163,14.586,15.074,15.358,15.363,15.246,15.129,
-14.922,14.502,13.984,13.663,13.669,13.781,13.684,13.321,12.907,12.616,12.378,12.027,11.565,11.165,10.943,10.831,
-10.706,10.556,10.458,10.431,10.397,10.300,10.179,10.094,10.019,9.872,9.638,9.401,9.234,9.103,8.914,8.630,
-8.305,8.009,7.750,7.496,7.224,6.939,6.653,6.364,6.075,5.785,5.487,5.177,4.869,4.596,4.358,4.105,
-3.785,3.419,3.082,2.812,2.556,2.235,1.849,1.489,1.229,1.035,.807,.497,.150,-.169,-.467,-.817,
--1.264,-1.765,-2.237,-2.653,-3.066,-3.541,-4.075,-4.607,-5.096,-5.565,-6.068,-6.620,-7.187,-7.731,-8.256,-8.782,
--9.295,-9.744,-10.100,-10.400,-10.725,-11.128,-11.608,-12.138,-12.697,-13.270,-13.826,-14.329,-14.758,-15.120,-15.434,-15.724,
--16.027,-16.390,-16.835,-17.325,-17.791,-18.188,-18.522,-18.835,-19.158,-19.494,-19.817,-20.083,-20.246,-20.307,-20.353,-20.512,
--20.848,-21.297,-21.745,-22.166,-22.650,-23.281,-24.011,-24.684,-25.197,-25.602,-26.051,-26.650,-27.389,-28.170,-28.880,-29.434,
--29.799,-30.008,-30.149,-30.308,-30.524,-30.784,-31.052,-31.291,-31.466,-31.571,-31.660,-31.826,-32.114,-32.473,-32.816,-33.130,
--33.490,-33.946,-34.430,-34.817,-35.054,-35.201,-35.335,-35.465,-35.565,-35.664,-35.844,-36.142,-36.500,-36.828,-37.104,-37.376,
--37.669,-37.936,-38.108,-38.173,-38.185,-38.199,-38.220,-38.207,-38.140,-38.095,-38.205,-38.532,-38.943,-39.181,-39.107,-38.884,
--38.831,-39.070,-39.372,-39.426,-39.222,-39.066,-39.193,-39.466,-39.556,-39.370,-39.160,-39.197,-39.447,-39.670,-39.749,-39.795,
--39.922,-40.061,-40.074,-39.978,-39.921,-39.955,-39.954,-39.802,-39.551,-39.338,-39.178,-38.958,-38.619,-38.242,-37.909,-37.583,
--37.187,-36.767,-36.465,-36.327,-36.208,-35.896,-35.251,-34.190,-32.685,-30.922,-29.427,-28.805,-29.165,-29.861,-29.958,-29.035,
--27.495,-26.089,-25.216,-24.747,-24.396,-24.087,-23.909,-23.868,-23.813,-23.602,-23.241,-22.834,-22.482,-22.258,-22.225,-22.379,
--22.596,-22.699,-22.629,-22.487,-22.392,-22.329,-22.186,-21.909,-21.565,-21.241,-20.954,-20.715,-20.620,-20.754,-20.992,-20.972,
--20.387,-19.322,-18.254,-17.671,-17.679,-17.989,-18.226,-18.232,-18.070,-17.857,-17.640,-17.441,-17.339,-17.438,-17.751,-18.135,
--18.365,-18.280,-17.878,-17.281,-16.637,-16.038,-15.497,-14.977,-14.407,-13.696,-12.762,-11.592,-10.285,-9.015,-7.911,-6.978,
--6.130,-5.318,-4.589,-4.003,-3.517,-2.990,-2.343,-1.669,-1.150,-.855,-.632,-.239,.429,1.258,2.041,2.671,
-3.202,3.760,4.415,5.138,5.848,6.472,6.989,7.448,7.975,8.712,9.705,10.814,11.752,12.279,12.405,12.402,
-12.594,13.114,13.846,14.604,15.313,16.005,16.683,17.252,17.624,17.861,18.146,18.603,19.181,19.727,20.154,20.503,
-20.860,21.254,21.648,22.006,22.339,22.688,23.092,23.571,24.109,24.649,25.135,25.574,26.035,26.557,27.078,27.469,
-27.663,27.719,27.767,27.909,28.218,28.769,29.612,30.664,31.691,32.466,32.968,33.385,33.923,34.590,35.196,35.532,
-35.543,35.353,35.135,34.946,34.641,33.952,32.722,31.131,29.681,28.864,28.776,29.060,29.254,29.193,29.081,29.161,
-29.404,29.568,29.540,29.544,29.943,30.818,31.799,32.370,32.341,32.029,31.932,32.263,32.798,33.171,33.264,33.273,
-33.445,33.820,34.254,34.629,34.959,35.299,35.624,35.860,35.997,36.108,36.241,36.345,36.334,36.192,35.997,35.829,
-35.717,35.663,35.687,35.801,35.984,36.208,36.500,36.920,37.463,38.003,38.420,38.767,39.271,40.102,41.144,42.034,
-42.462,42.448,42.307,42.362,42.679,43.095,43.430,43.653,43.845,44.066,44.304,44.537,44.773,45.019,45.230,45.358,
-45.429,45.537,45.727,45.913,45.952,45.787,45.496,45.194,44.947,44.775,44.709,44.783,44.955,45.112,45.164,45.135,
-45.120,45.165,45.232,45.261,45.252,45.254,45.301,45.383,45.470,45.532,45.553,45.556,45.637,45.937,46.501,47.147,
-47.528,47.410,46.921,46.457,46.256,46.033,45.109,42.993,39.853,36.336,32.929,29.606,26.232,23.242,21.670,22.271,
-24.655,27.456,29.437,30.357,30.738,30.994,31.054,30.800,30.521,30.640,31.068,31.131,30.297,28.813,27.473,26.803,
-26.626,26.426,25.931,25.260,24.615,24.046,23.512,23.008,22.536,22.046,21.500,20.962,20.527,20.167,19.743,19.196,
-18.629,18.147,17.684,17.109,16.451,15.914,15.599,15.340,14.902,14.302,13.809,13.598,13.523,13.295,12.816,12.249,
-11.776,11.398,11.011,10.579,10.160,9.786,9.408,8.984,8.551,8.163,7.804,7.417,7.000,6.615,6.293,5.977,
-5.591,5.152,4.756,4.464,4.236,3.992,3.699,3.386,3.083,2.788,2.499,2.241,2.042,1.886,1.724,1.518,
-1.283,1.061,.877,.716,.544,.350,.146,-.057,-.256,-.450,-.622,-.751,-.846,-.955,-1.125,-1.344,
--1.548,-1.679,-1.731,-1.736,-1.706,-1.630,-1.519,-1.433,-1.441,-1.555,-1.732,-1.932,-2.171,-2.488,-2.879,-3.288,
--3.657,-3.970,-4.241,-4.490,-4.731,-4.976,-5.226,-5.461,-5.650,-5.786,-5.908,-6.066,-6.275,-6.502,-6.704,-6.867,
--7.007,-7.140,-7.263,-7.359,-7.416,-7.449,-7.488,-7.562,-7.672,-7.802,-7.935,-8.071,-8.216,-8.370,-8.517,-8.650,
--8.780,-8.915,-9.048,-9.174,-9.306,-9.469,-9.663,-9.860,-10.040,-10.220,-10.430,-10.664,-10.875,-11.027,-11.138,-11.258,
--11.408,-11.571,-11.729,-11.890,-12.063,-12.232,-12.370,-12.485,-12.614,-12.773,-12.933,-13.054,-13.134,-13.198,-13.255,-13.287,
--13.287,-13.280,-13.300,-13.345,-13.378,-13.370,-13.326,-13.256,-13.163,-13.055,-12.959,-12.895,-12.843,-12.755,-12.609,-12.442,
--12.309,-12.224,-12.158,-12.081,-11.997,-11.921,-11.854,-11.784,-11.713,-11.653,-11.601,-11.536,-11.448,-11.362,-11.305,-11.268,
--11.210,-11.102,-10.969,-10.863,-10.816,-10.812,-10.810,-10.784,-10.739,-10.698,-10.671,-10.651,-10.616,-10.559,-10.500,-10.467,
--10.455,-10.428,-10.351,-10.241,-10.153,-10.117,-10.108,-10.068,-9.976,-9.867,-9.791,-9.760,-9.746,-9.718,-9.669,-9.606,
--9.535,-9.457,-9.377,-9.306,-9.250,-9.204,-9.153,-9.086,-9.004,-8.920,-8.854,-8.805,-8.752,-8.666,-8.550,-8.437,
--8.358,-8.305,-8.241,-8.152,-8.062,-8.007,-7.979,-7.939,-7.859,-7.756,-7.671,-7.614,-7.563,-7.493,-7.412,-7.341,
--7.290,-7.245,-7.191,-7.127,-7.063,-7.002,-6.930,-6.834,-6.716,-6.594,-6.491,-6.410,-6.340,-6.265,-6.185,-6.107,
--6.025,-5.924,-5.799,-5.682,-5.612,-5.582,-5.532,-5.408,-5.231,-5.080,-5.007,-4.980,-4.925,-4.812,-4.677,-4.558,
--4.449,-4.330,-4.218,-4.151,-4.129,-4.098,-4.009,-3.880,-3.767,-3.689,-3.609,-3.492,-3.352,-3.227,-3.126,-3.026,
--2.914,-2.810,-2.727,-2.632,-2.478,-2.257,-2.014,-1.802,-1.630,-1.475,-1.312,-1.128,-.907,-.638,-.341,-.067,
-.140,.273,.361,.431,.494,.562,.647,.753,.855,.924,.952,.959,.972,.997,1.035,1.085,
-1.154,1.241,1.342,1.463,1.613,1.787,1.954,2.075,2.137,2.173,2.241,2.387,2.611,2.870,3.111,3.320,
-3.526,3.774,4.071,4.381,4.657,4.879,5.058,5.221,5.396,5.606,5.866,6.179,6.536,6.928,7.333,7.708,
-7.996,8.189,8.365,8.633,9.029,9.463,9.808,10.019,10.171,10.372,10.675,11.070,11.527,12.019,12.520,12.999,
-13.440,13.826,14.141,14.398,14.665,15.007,15.391,15.672,15.745,15.641,15.392,14.830,13.706,12.204,11.252,12.066,
-15.168,19.878,24.861,29.160,32.594,35.250,36.924,37.325,36.671,35.690,34.841,33.757,31.787,29.080,26.826,26.182,
-27.033,28.031,27.880,26.484,24.801,23.779,23.579,23.738,23.801,23.670,23.518,23.562,23.945,24.645,25.407,25.819,
-25.597,24.827,23.882,23.097,22.552,22.148,21.806,21.513,21.223,20.829,20.279,19.661,19.125,18.731,18.414,18.098,
-17.789,17.551,17.407,17.300,17.135,16.838,16.395,15.857,15.326,14.892,14.571,14.297,13.996,13.657,13.327,13.035,
-12.757,12.445,12.079,11.668,11.223,10.747,10.269,9.846,9.533,9.333,9.179,8.960,8.577,8.007,7.329,6.675,
-6.125,5.658,5.194,4.708,4.245,3.839,3.459,3.076,2.771,2.697,2.891,3.162,3.222,2.934,2.381,1.683,
-.819,-.312,-1.661,-2.953,-3.905,-4.495,-4.973,-5.595,-6.361,-7.037,-7.398,-7.431,-7.315,-7.252,-7.332,-7.527,
--7.765,-7.987,-8.151,-8.233,-8.247,-8.268,-8.399,-8.699,-9.116,-9.504,-9.726,-9.736,-9.586,-9.363,-9.128,-8.905,
--8.687,-8.440,-8.112,-7.680,-7.201,-6.784,-6.493,-6.283,-6.046,-5.713,-5.280,-4.744,-4.056,-3.198,-2.304,-1.628,
--1.330,-1.297,-1.204,-.804,-.144,.481,.793,.738,.482,.249,.177,.283,.502,.751,.981,1.206,
-1.473,1.807,2.161,2.452,2.635,2.754,2.905,3.155,3.488,3.816,4.039,4.110,4.053,3.954,3.910,3.977,
-4.141,4.336,4.495,4.593,4.646,4.688,4.742,4.816,4.914,5.048,5.234,5.477,5.761,6.056,6.337,6.604,
-6.873,7.147,7.409,7.639,7.838,8.029,8.232,8.446,8.656,8.854,9.048,9.244,9.441,9.637,9.836,10.041,
-10.248,10.446,10.636,10.831,11.045,11.271,11.485,11.676,11.852,12.036,12.237,12.442,12.632,12.803,12.974,13.166,
-13.376,13.585,13.778,13.968,14.181,14.422,14.661,14.862,15.021,15.159,15.270,15.312,15.257,15.145,15.063,15.058,
-15.088,15.081,15.027,14.982,14.982,14.993,14.960,14.891,14.860,14.908,14.988,15.023,15.009,15.014,15.083,15.186,
-15.256,15.288,15.334,15.429,15.542,15.627,15.692,15.790,15.950,16.139,16.315,16.475,16.651,16.854,17.065,17.274,
-17.498,17.753,18.014,18.233,18.400,18.550,18.719,18.907,19.111,19.365,19.707,20.092,20.392,20.529,20.605,20.855,
-21.409,21.644,22.311,22.807,23.055,23.120,23.061,22.874,22.633,22.618,23.172,24.305,25.489,25.960,25.345,24.017,
-22.803,22.320,22.554,23.038,23.339,23.365,23.281,23.244,23.287,23.376,23.504,23.679,23.885,24.087,24.275,24.466,
-24.663,24.841,24.990,25.143,25.345,25.584,25.788,25.895,25.915,25.907,25.907,25.897,25.860,25.828,25.869,26.021,
-26.250,26.497,26.753,27.066,27.468,27.909,28.287,28.556,28.798,29.154,29.682,30.291,30.816,31.143,31.261,31.211,
-31.046,30.849,30.750,30.846,31.108,31.399,31.654,31.992,32.614,33.537,34.489,35.101,35.214,34.972,34.645,34.390,
-34.210,34.058,33.927,33.818,33.706,33.565,33.424,33.344,33.344,33.381,33.401,33.377,33.293,33.137,32.949,32.838,
-32.876,32.965,32.898,32.611,32.360,32.523,33.199,34.042,34.555,34.522,34.135,33.739,33.559,33.674,34.112,34.811,
-35.498,35.784,35.480,34.794,34.104,33.549,32.928,32.039,30.999,30.132,29.583,29.156,28.556,27.688,26.645,25.503,
-24.258,23.001,21.990,21.461,21.385,21.503,21.600,21.637,21.636,21.533,21.269,20.952,20.810,20.925,21.108,21.090,
-20.778,20.250,19.544,18.578,17.350,16.100,15.172,14.706,14.537,14.417,14.259,14.134,14.097,14.108,14.111,14.115,
-14.154,14.226,14.299,14.363,14.430,14.497,14.580,14.750,15.081,15.522,15.878,16.013,16.043,16.274,16.900,17.809,
-18.708,19.387,19.824,20.076,20.186,20.197,20.184,20.178,20.095,19.822,19.380,18.950,18.676,18.508,18.268,17.857,
-17.338,16.829,16.381,15.999,15.711,15.542,15.454,15.353,15.199,15.039,14.917,14.795,14.614,14.405,14.275,14.283,
-14.369,14.457,14.552,14.705,14.898,15.055,15.152,15.261,15.443,15.638,15.734,15.707,15.640,15.588,15.505,15.338,
-15.142,15.027,15.002,14.962,14.845,14.726,14.715,14.813,14.944,15.114,15.411,15.832,16.185,16.267,16.092,15.849,
-15.635,15.341,14.864,14.340,14.032,14.003,14.009,13.793,13.392,13.053,12.882,12.715,12.358,11.873,11.499,11.359,
-11.337,11.266,11.137,11.055,11.047,11.015,10.887,10.716,10.593,10.511,10.382,10.169,9.935,9.749,9.581,9.355,
-9.054,8.743,8.475,8.236,7.982,7.701,7.416,7.139,6.857,6.565,6.273,5.986,5.689,5.379,5.081,4.816,
-4.555,4.249,3.897,3.558,3.278,3.027,2.738,2.397,2.065,1.799,1.574,1.323,1.021,.716,.443,.167,
--.189,-.641,-1.120,-1.546,-1.922,-2.321,-2.799,-3.334,-3.857,-4.338,-4.815,-5.336,-5.909,-6.489,-7.036,-7.545,
--8.037,-8.514,-8.952,-9.334,-9.683,-10.050,-10.480,-10.975,-11.507,-12.040,-12.555,-13.049,-13.524,-13.965,-14.349,-14.666,
--14.951,-15.274,-15.695,-16.203,-16.713,-17.138,-17.458,-17.728,-18.024,-18.377,-18.763,-19.125,-19.407,-19.583,-19.684,-19.799,
--20.022,-20.370,-20.771,-21.142,-21.492,-21.913,-22.480,-23.157,-23.824,-24.387,-24.854,-25.320,-25.888,-26.591,-27.354,-28.022,
--28.451,-28.620,-28.665,-28.776,-29.045,-29.413,-29.763,-30.044,-30.285,-30.516,-30.729,-30.924,-31.150,-31.467,-31.864,-32.281,
--32.686,-33.120,-33.620,-34.131,-34.542,-34.795,-34.937,-35.053,-35.183,-35.320,-35.471,-35.664,-35.908,-36.169,-36.424,-36.704,
--37.050,-37.437,-37.762,-37.928,-37.943,-37.914,-37.941,-38.024,-38.073,-38.032,-37.990,-38.134,-38.547,-39.045,-39.296,-39.162,
--38.897,-38.913,-39.320,-39.770,-39.846,-39.545,-39.283,-39.385,-39.707,-39.844,-39.650,-39.394,-39.397,-39.648,-39.888,-39.976,
--40.018,-40.135,-40.253,-40.226,-40.076,-39.978,-40.008,-40.033,-39.904,-39.656,-39.429,-39.260,-39.048,-38.736,-38.401,-38.120,
--37.843,-37.480,-37.068,-36.750,-36.582,-36.459,-36.259,-35.925,-35.340,-34.252,-32.550,-30.659,-29.439,-29.448,-30.287,-30.835,
--30.224,-28.582,-26.784,-25.576,-25.037,-24.794,-24.561,-24.342,-24.221,-24.154,-24.009,-23.738,-23.405,-23.108,-22.906,-22.838,
--22.908,-23.048,-23.129,-23.060,-22.869,-22.655,-22.483,-22.339,-22.186,-22.015,-21.828,-21.636,-21.499,-21.520,-21.711,-21.849,
--21.566,-20.689,-19.493,-18.556,-18.280,-18.562,-18.934,-19.010,-18.768,-18.443,-18.214,-18.071,-17.941,-17.859,-17.957,-18.287,
--18.711,-18.973,-18.885,-18.445,-17.805,-17.142,-16.546,-16.008,-15.469,-14.867,-14.141,-13.234,-12.123,-10.862,-9.587,-8.433,
--7.454,-6.618,-5.881,-5.246,-4.724,-4.270,-3.788,-3.232,-2.671,-2.226,-1.920,-1.627,-1.173,-.493,.326,1.138,
-1.856,2.501,3.149,3.859,4.633,5.409,6.097,6.648,7.127,7.713,8.587,9.767,11.027,12.008,12.451,12.399,
-12.172,12.149,12.519,13.205,14.008,14.785,15.508,16.177,16.755,17.194,17.518,17.823,18.189,18.611,19.028,19.398,
-19.731,20.051,20.376,20.725,21.127,21.593,22.089,22.571,23.043,23.552,24.111,24.670,25.165,25.602,26.039,26.489,
-26.872,27.089,27.131,27.114,27.205,27.546,28.205,29.162,30.290,31.372,32.223,32.814,33.284,33.790,34.340,34.776,
-34.926,34.793,34.560,34.412,34.297,33.889,32.837,31.144,29.319,28.077,27.786,28.161,28.538,28.495,28.215,28.208,
-28.716,29.423,29.791,29.646,29.375,29.526,30.234,31.081,31.515,31.384,31.044,30.973,31.331,31.891,32.348,32.627,
-32.874,33.211,33.590,33.893,34.107,34.332,34.635,34.959,35.203,35.351,35.476,35.613,35.706,35.686,35.568,35.436,
-35.335,35.246,35.154,35.106,35.164,35.335,35.583,35.910,36.348,36.869,37.347,37.694,38.028,38.613,39.572,40.673,
-41.466,41.687,41.505,41.349,41.516,41.960,42.432,42.774,43.010,43.232,43.465,43.688,43.911,44.170,44.436,44.617,
-44.681,44.745,44.966,45.349,45.698,45.786,45.567,45.182,44.804,44.512,44.321,44.254,44.328,44.495,44.648,44.714,
-44.714,44.715,44.745,44.785,44.820,44.864,44.924,44.986,45.040,45.099,45.172,45.235,45.292,45.445,45.835,46.460,
-47.068,47.307,47.051,46.543,46.157,45.968,45.561,44.321,41.938,38.633,34.897,31.076,27.312,23.910,21.600,21.189,
-22.805,25.556,28.107,29.668,30.388,30.807,31.106,31.060,30.620,30.233,30.383,30.915,31.070,30.264,28.719,27.220,
-26.334,25.987,25.750,25.348,24.802,24.230,23.681,23.165,22.700,22.266,21.787,21.235,20.697,20.269,19.899,19.437,
-18.849,18.277,17.834,17.429,16.890,16.239,15.699,15.390,15.131,14.652,13.960,13.374,13.152,13.185,13.124,12.766,
-12.219,11.708,11.314,10.955,10.557,10.141,9.757,9.399,9.027,8.628,8.216,7.796,7.366,6.947,6.582,6.273,
-5.962,5.592,5.168,4.755,4.406,4.125,3.881,3.646,3.391,3.089,2.735,2.377,2.087,1.898,1.771,1.632,
-1.443,1.228,1.037,.890,.763,.618,.434,.224,.012,-.181,-.354,-.511,-.651,-.775,-.903,-1.064,
--1.272,-1.493,-1.664,-1.740,-1.719,-1.639,-1.546,-1.483,-1.481,-1.552,-1.678,-1.831,-2.003,-2.217,-2.500,-2.842,
--3.201,-3.540,-3.846,-4.133,-4.411,-4.686,-4.968,-5.258,-5.540,-5.784,-5.977,-6.145,-6.330,-6.550,-6.776,-6.967,
--7.107,-7.221,-7.346,-7.493,-7.639,-7.747,-7.799,-7.809,-7.813,-7.848,-7.928,-8.050,-8.203,-8.367,-8.521,-8.643,
--8.731,-8.802,-8.887,-9.008,-9.170,-9.359,-9.548,-9.711,-9.845,-9.977,-10.141,-10.344,-10.549,-10.715,-10.839,-10.961,
--11.113,-11.288,-11.461,-11.628,-11.803,-11.982,-12.141,-12.264,-12.378,-12.520,-12.686,-12.834,-12.933,-13.002,-13.075,-13.150,
--13.194,-13.195,-13.190,-13.223,-13.291,-13.347,-13.351,-13.304,-13.227,-13.138,-13.048,-12.973,-12.912,-12.842,-12.725,-12.556,
--12.378,-12.240,-12.156,-12.097,-12.030,-11.943,-11.843,-11.736,-11.637,-11.563,-11.522,-11.495,-11.446,-11.363,-11.270,-11.200,
--11.154,-11.101,-11.015,-10.907,-10.811,-10.758,-10.745,-10.746,-10.737,-10.708,-10.673,-10.646,-10.625,-10.597,-10.555,-10.521,
--10.514,-10.523,-10.505,-10.432,-10.327,-10.241,-10.197,-10.169,-10.121,-10.049,-9.980,-9.932,-9.896,-9.855,-9.807,-9.758,
--9.703,-9.635,-9.559,-9.492,-9.440,-9.396,-9.348,-9.296,-9.244,-9.184,-9.104,-9.014,-8.933,-8.864,-8.781,-8.671,
--8.561,-8.491,-8.465,-8.434,-8.361,-8.262,-8.184,-8.143,-8.108,-8.041,-7.950,-7.870,-7.813,-7.760,-7.688,-7.607,
--7.535,-7.476,-7.412,-7.338,-7.266,-7.210,-7.161,-7.099,-7.009,-6.900,-6.788,-6.688,-6.604,-6.530,-6.459,-6.387,
--6.312,-6.230,-6.131,-6.010,-5.887,-5.791,-5.729,-5.660,-5.541,-5.384,-5.250,-5.182,-5.150,-5.085,-4.965,-4.832,
--4.732,-4.655,-4.561,-4.449,-4.362,-4.320,-4.283,-4.198,-4.075,-3.969,-3.904,-3.838,-3.719,-3.557,-3.411,-3.309,
--3.222,-3.114,-2.992,-2.882,-2.773,-2.625,-2.420,-2.192,-1.991,-1.822,-1.655,-1.465,-1.261,-1.057,-.844,-.610,
--.366,-.141,.041,.181,.289,.366,.419,.474,.553,.646,.712,.724,.704,.704,.759,.859,
-.962,1.047,1.129,1.242,1.403,1.586,1.739,1.829,1.871,1.914,2.000,2.132,2.291,2.468,2.672,2.912,
-3.174,3.429,3.667,3.905,4.162,4.431,4.680,4.888,5.072,5.267,5.502,5.782,6.108,6.491,6.929,7.370,
-7.727,7.945,8.067,8.216,8.490,8.878,9.281,9.617,9.883,10.131,10.404,10.717,11.074,11.479,11.915,12.349,
-12.760,13.148,13.510,13.827,14.110,14.431,14.842,15.268,15.542,15.583,15.462,15.207,14.608,13.425,11.948,11.209,
-12.377,15.769,20.516,25.287,29.294,32.493,34.966,36.438,36.608,35.750,34.602,33.546,32.168,29.895,27.018,24.758,
-24.153,24.985,25.987,26.085,25.305,24.456,24.147,24.264,24.303,23.988,23.490,23.195,23.400,24.155,25.217,26.102,
-26.320,25.707,24.561,23.404,22.576,22.065,21.685,21.323,20.982,20.652,20.259,19.757,19.209,18.725,18.351,18.049,
-17.783,17.571,17.444,17.382,17.312,17.154,16.863,16.431,15.906,15.379,14.945,14.636,14.407,14.195,13.975,13.756,
-13.541,13.308,13.035,12.724,12.378,11.989,11.554,11.104,10.703,10.391,10.154,9.929,9.635,9.211,8.649,8.014,
-7.410,6.891,6.412,5.881,5.268,4.642,4.079,3.597,3.186,2.902,2.840,2.989,3.155,3.088,2.688,2.044,
-1.264,.334,-.804,-2.073,-3.227,-4.063,-4.620,-5.134,-5.784,-6.520,-7.137,-7.477,-7.553,-7.493,-7.426,-7.419,
--7.489,-7.630,-7.806,-7.961,-8.046,-8.059,-8.069,-8.176,-8.441,-8.830,-9.226,-9.494,-9.566,-9.463,-9.261,-9.035,
--8.830,-8.644,-8.425,-8.101,-7.637,-7.095,-6.601,-6.242,-5.990,-5.731,-5.375,-4.903,-4.317,-3.591,-2.725,-1.828,
--1.104,-.689,-.509,-.332,.028,.558,1.081,1.418,1.504,1.383,1.155,.929,.798,.809,.940,1.129,
-1.342,1.598,1.922,2.285,2.608,2.837,2.992,3.161,3.425,3.799,4.215,4.550,4.691,4.610,4.396,4.214,
-4.196,4.362,4.621,4.850,4.981,5.028,5.053,5.114,5.238,5.411,5.605,5.808,6.030,6.284,6.562,6.829,
-7.066,7.282,7.504,7.737,7.960,8.158,8.340,8.534,8.750,8.973,9.185,9.387,9.586,9.787,9.987,10.184,
-10.385,10.589,10.785,10.971,11.159,11.366,11.592,11.815,12.019,12.210,12.410,12.621,12.826,13.002,13.160,13.331,
-13.536,13.760,13.959,14.114,14.250,14.415,14.625,14.853,15.059,15.227,15.363,15.459,15.478,15.400,15.266,15.157,
-15.126,15.149,15.168,15.157,15.141,15.136,15.122,15.074,15.009,14.979,15.002,15.038,15.044,15.035,15.062,15.140,
-15.226,15.274,15.295,15.340,15.425,15.515,15.576,15.636,15.745,15.917,16.114,16.302,16.490,16.702,16.928,17.130,
-17.298,17.471,17.688,17.929,18.136,18.280,18.391,18.530,18.735,19.015,19.367,19.758,20.108,20.336,20.461,20.634,
-21.024,21.644,21.808,22.174,22.385,22.545,22.714,22.792,22.640,22.348,22.333,23.012,24.331,25.622,26.058,25.333,
-23.936,22.744,22.327,22.592,23.035,23.245,23.184,23.052,23.019,23.103,23.247,23.419,23.617,23.828,24.027,24.206,
-24.385,24.569,24.740,24.887,25.039,25.244,25.503,25.750,25.905,25.946,25.912,25.859,25.810,25.766,25.746,25.798,
-25.957,26.207,26.497,26.790,27.101,27.460,27.851,28.205,28.466,28.653,28.849,29.126,29.492,29.913,30.354,30.761,
-31.041,31.100,30.956,30.777,30.760,30.948,31.214,31.448,31.728,32.249,33.066,33.950,34.564,34.760,34.679,34.562,
-34.513,34.471,34.360,34.202,34.074,34.013,34.001,34.018,34.051,34.074,34.042,33.941,33.800,33.650,33.493,33.347,
-33.288,33.371,33.506,33.484,33.209,32.881,32.860,33.308,33.989,34.485,34.575,34.384,34.182,34.147,34.327,34.716,
-35.248,35.696,35.746,35.249,34.399,33.561,32.922,32.378,31.746,31.016,30.306,29.640,28.875,27.892,26.747,25.579,
-24.436,23.286,22.210,21.457,21.226,21.436,21.778,21.994,22.036,21.964,21.800,21.553,21.333,21.302,21.488,21.709,
-21.728,21.451,20.914,20.125,19.046,17.754,16.527,15.670,15.248,15.068,14.909,14.735,14.641,14.667,14.736,14.761,
-14.752,14.776,14.859,14.963,15.036,15.063,15.079,15.169,15.419,15.832,16.271,16.564,16.705,16.930,17.503,18.435,
-19.438,20.196,20.623,20.848,20.991,21.064,21.056,21.016,20.980,20.879,20.606,20.190,19.808,19.591,19.457,19.202,
-18.720,18.098,17.496,17.004,16.636,16.389,16.247,16.145,16.009,15.840,15.709,15.647,15.577,15.416,15.203,15.075,
-15.101,15.199,15.254,15.257,15.289,15.387,15.514,15.648,15.832,16.093,16.352,16.489,16.484,16.439,16.438,16.450,
-16.400,16.288,16.177,16.082,15.954,15.788,15.677,15.719,15.897,16.126,16.374,16.667,16.954,17.077,16.938,16.645,
-16.397,16.217,15.920,15.391,14.805,14.450,14.375,14.317,14.034,13.607,13.299,13.189,13.066,12.726,12.259,11.935,
-11.871,11.918,11.888,11.778,11.705,11.695,11.636,11.450,11.213,11.051,10.971,10.870,10.677,10.432,10.201,9.983,
-9.738,9.464,9.206,8.979,8.743,8.463,8.162,7.884,7.630,7.363,7.072,6.787,6.523,6.248,5.928,5.583,
-5.265,4.984,4.695,4.363,4.020,3.722,3.473,3.222,2.932,2.621,2.328,2.057,1.784,1.509,1.256,1.021,
-.748,.386,-.050,-.486,-.874,-1.243,-1.656,-2.132,-2.635,-3.124,-3.603,-4.107,-4.659,-5.241,-5.814,-6.351,
--6.851,-7.321,-7.773,-8.212,-8.637,-9.051,-9.468,-9.918,-10.411,-10.925,-11.413,-11.853,-12.270,-12.707,-13.165,-13.586,
--13.924,-14.212,-14.550,-15.011,-15.557,-16.068,-16.452,-16.728,-16.995,-17.344,-17.782,-18.237,-18.606,-18.823,-18.899,-18.926,
--19.031,-19.292,-19.687,-20.128,-20.550,-20.964,-21.427,-21.969,-22.563,-23.157,-23.711,-24.217,-24.702,-25.221,-25.818,-26.456,
--26.988,-27.260,-27.269,-27.213,-27.327,-27.671,-28.096,-28.430,-28.661,-28.911,-29.263,-29.668,-30.042,-30.394,-30.816,-31.353,
--31.944,-32.489,-32.957,-33.388,-33.807,-34.187,-34.476,-34.662,-34.775,-34.869,-34.998,-35.198,-35.459,-35.718,-35.918,-36.087,
--36.333,-36.734,-37.223,-37.619,-37.777,-37.724,-37.638,-37.688,-37.884,-38.080,-38.141,-38.121,-38.239,-38.627,-39.121,-39.372,
--39.231,-38.978,-39.053,-39.549,-40.047,-40.076,-39.657,-39.295,-39.393,-39.805,-40.059,-39.940,-39.701,-39.685,-39.901,-40.090,
--40.112,-40.096,-40.190,-40.320,-40.314,-40.169,-40.056,-40.071,-40.097,-39.984,-39.756,-39.551,-39.405,-39.217,-38.921,-38.593,
--38.323,-38.073,-37.756,-37.402,-37.127,-36.951,-36.764,-36.509,-36.252,-35.948,-35.246,-33.787,-31.810,-30.249,-29.964,-30.801,
--31.585,-31.169,-29.465,-27.414,-25.999,-25.437,-25.271,-25.051,-24.734,-24.509,-24.440,-24.398,-24.261,-24.048,-23.851,-23.720,
--23.644,-23.605,-23.584,-23.536,-23.407,-23.188,-22.933,-22.706,-22.538,-22.420,-22.335,-22.275,-22.250,-22.300,-22.445,-22.590,
--22.474,-21.841,-20.721,-19.543,-18.866,-18.915,-19.387,-19.736,-19.650,-19.250,-18.860,-18.647,-18.534,-18.406,-18.312,-18.416,
--18.781,-19.242,-19.511,-19.397,-18.921,-18.265,-17.610,-17.032,-16.500,-15.948,-15.325,-14.602,-13.741,-12.708,-11.517,-10.256,
--9.064,-8.042,-7.215,-6.550,-6.007,-5.552,-5.141,-4.727,-4.294,-3.867,-3.470,-3.066,-2.571,-1.924,-1.145,-.309,
-.512,1.286,2.007,2.689,3.368,4.086,4.844,5.577,6.220,6.825,7.571,8.621,9.929,11.187,12.007,12.199,
-11.918,11.556,11.494,11.883,12.620,13.488,14.315,15.048,15.703,16.295,16.809,17.219,17.517,17.724,17.894,18.089,
-18.346,18.640,18.911,19.151,19.449,19.919,20.569,21.273,21.887,22.405,22.948,23.600,24.289,24.862,25.259,25.567,
-25.899,26.248,26.504,26.606,26.646,26.807,27.230,27.933,28.836,29.827,30.788,31.624,32.306,32.888,33.443,33.954,
-34.278,34.272,33.963,33.587,33.372,33.240,32.768,31.547,29.666,27.822,26.830,26.926,27.549,27.873,27.611,27.264,
-27.566,28.667,29.929,30.518,30.195,29.496,29.176,29.506,30.119,30.468,30.380,30.151,30.185,30.597,31.183,31.698,
-32.093,32.474,32.900,33.290,33.535,33.647,33.744,33.918,34.150,34.377,34.587,34.801,34.994,35.087,35.044,34.931,
-34.842,34.783,34.686,34.529,34.403,34.424,34.603,34.873,35.208,35.651,36.193,36.697,37.038,37.314,37.829,38.761,
-39.887,40.717,40.948,40.758,40.614,40.825,41.309,41.791,42.118,42.340,42.547,42.748,42.924,43.124,43.406,43.716,
-43.917,43.978,44.071,44.403,44.955,45.443,45.573,45.309,44.855,44.444,44.167,44.008,43.948,43.984,44.082,44.172,
-44.213,44.221,44.228,44.244,44.275,44.343,44.461,44.596,44.693,44.745,44.799,44.877,44.952,45.031,45.239,45.713,
-46.385,46.923,47.000,46.621,46.137,45.855,45.650,44.988,43.357,40.644,37.118,33.130,28.944,24.920,21.760,20.339,
-21.109,23.577,26.495,28.704,29.871,30.433,30.868,31.154,30.986,30.379,29.841,29.844,30.250,30.403,29.802,28.578,
-27.275,26.294,25.639,25.127,24.656,24.223,23.803,23.341,22.851,22.409,22.016,21.575,21.029,20.464,19.997,19.597,
-19.124,18.543,17.989,17.573,17.198,16.683,16.036,15.479,15.144,14.855,14.330,13.562,12.897,12.657,12.782,12.886,
-12.671,12.176,11.651,11.252,10.932,10.573,10.148,9.717,9.326,8.963,8.579,8.154,7.706,7.275,6.896,6.572,
-6.275,5.961,5.608,5.222,4.823,4.432,4.079,3.797,3.583,3.375,3.094,2.719,2.318,1.988,1.772,1.637,
-1.518,1.381,1.229,1.071,.916,.766,.615,.449,.259,.054,-.140,-.307,-.459,-.612,-.762,-.896,
--1.024,-1.180,-1.378,-1.571,-1.684,-1.672,-1.574,-1.477,-1.456,-1.529,-1.666,-1.821,-1.970,-2.123,-2.306,-2.538,
--2.813,-3.109,-3.412,-3.722,-4.045,-4.373,-4.693,-4.999,-5.298,-5.593,-5.877,-6.136,-6.370,-6.593,-6.810,-7.009,
--7.172,-7.302,-7.419,-7.548,-7.694,-7.840,-7.962,-8.041,-8.074,-8.075,-8.073,-8.096,-8.166,-8.286,-8.442,-8.608,
--8.756,-8.864,-8.932,-8.986,-9.069,-9.209,-9.398,-9.589,-9.742,-9.861,-9.987,-10.155,-10.348,-10.519,-10.648,-10.762,
--10.905,-11.087,-11.277,-11.449,-11.610,-11.778,-11.942,-12.077,-12.183,-12.294,-12.435,-12.584,-12.698,-12.772,-12.844,-12.943,
--13.043,-13.094,-13.088,-13.073,-13.096,-13.154,-13.201,-13.203,-13.164,-13.108,-13.048,-12.984,-12.915,-12.836,-12.734,-12.597,
--12.436,-12.285,-12.171,-12.090,-12.021,-11.942,-11.843,-11.726,-11.601,-11.490,-11.422,-11.402,-11.403,-11.383,-11.326,-11.247,
--11.173,-11.108,-11.041,-10.961,-10.873,-10.794,-10.740,-10.717,-10.719,-10.725,-10.717,-10.692,-10.660,-10.628,-10.591,-10.555,
--10.538,-10.551,-10.574,-10.567,-10.512,-10.432,-10.365,-10.316,-10.261,-10.189,-10.123,-10.082,-10.054,-10.009,-9.943,-9.884,
--9.848,-9.814,-9.762,-9.698,-9.646,-9.607,-9.551,-9.467,-9.386,-9.340,-9.313,-9.260,-9.165,-9.062,-8.982,-8.913,
--8.819,-8.708,-8.625,-8.593,-8.577,-8.525,-8.434,-8.346,-8.288,-8.244,-8.183,-8.104,-8.031,-7.972,-7.912,-7.840,
--7.770,-7.713,-7.656,-7.576,-7.474,-7.375,-7.302,-7.249,-7.194,-7.124,-7.042,-6.953,-6.862,-6.777,-6.710,-6.652,
--6.586,-6.498,-6.396,-6.290,-6.180,-6.062,-5.944,-5.843,-5.754,-5.657,-5.544,-5.444,-5.384,-5.344,-5.273,-5.154,
--5.030,-4.946,-4.890,-4.814,-4.704,-4.601,-4.535,-4.478,-4.379,-4.248,-4.145,-4.099,-4.060,-3.958,-3.792,-3.634,
--3.532,-3.460,-3.363,-3.230,-3.093,-2.964,-2.812,-2.614,-2.393,-2.194,-2.018,-1.827,-1.604,-1.380,-1.193,-1.041,
--.882,-.688,-.471,-.259,-.071,.081,.182,.224,.240,.282,.369,.462,.506,.496,.490,.550,
-.675,.812,.917,.998,1.100,1.246,1.405,1.524,1.587,1.633,1.720,1.867,2.037,2.183,2.312,2.477,
-2.716,3.008,3.285,3.514,3.719,3.951,4.218,4.483,4.714,4.925,5.158,5.435,5.749,6.104,6.519,6.983,
-7.416,7.713,7.850,7.926,8.083,8.377,8.747,9.107,9.433,9.756,10.093,10.423,10.737,11.070,11.448,11.842,
-12.195,12.502,12.813,13.160,13.521,13.887,14.305,14.806,15.285,15.568,15.602,15.484,15.224,14.567,13.291,11.796,
-11.213,12.659,16.248,20.934,25.399,29.029,31.945,34.255,35.612,35.658,34.651,33.324,32.059,30.497,28.170,25.419,
-23.361,22.850,23.605,24.526,24.805,24.561,24.421,24.674,25.001,24.934,24.391,23.738,23.454,23.803,24.726,25.855,
-26.652,26.668,25.835,24.524,23.261,22.350,21.758,21.304,20.885,20.495,20.124,19.718,19.244,18.748,18.300,17.935,
-17.651,17.453,17.348,17.315,17.290,17.216,17.068,16.832,16.484,16.026,15.515,15.052,14.709,14.487,14.349,14.251,
-14.156,14.020,13.815,13.553,13.276,13.005,12.717,12.390,12.040,11.710,11.417,11.134,10.821,10.446,9.985,9.428,
-8.805,8.187,7.623,7.086,6.499,5.835,5.157,4.552,4.045,3.623,3.308,3.155,3.137,3.080,2.771,2.132,
-1.261,.289,-.745,-1.848,-2.942,-3.865,-4.517,-4.982,-5.446,-6.016,-6.631,-7.151,-7.497,-7.680,-7.743,-7.717,
--7.642,-7.586,-7.613,-7.726,-7.864,-7.953,-7.968,-7.960,-8.021,-8.220,-8.550,-8.920,-9.204,-9.319,-9.266,-9.110,
--8.926,-8.757,-8.599,-8.402,-8.091,-7.624,-7.045,-6.479,-6.039,-5.738,-5.482,-5.161,-4.711,-4.121,-3.393,-2.554,
--1.691,-.933,-.373,.007,.308,.622,.982,1.374,1.765,2.093,2.258,2.185,1.906,1.569,1.338,1.283,
-1.367,1.533,1.758,2.044,2.365,2.668,2.910,3.102,3.298,3.567,3.951,4.424,4.867,5.117,5.079,4.818,
-4.536,4.427,4.543,4.788,5.025,5.178,5.258,5.323,5.427,5.596,5.818,6.058,6.289,6.516,6.762,7.031,
-7.290,7.507,7.690,7.878,8.092,8.312,8.511,8.692,8.891,9.125,9.374,9.607,9.816,10.013,10.209,10.399,
-10.582,10.770,10.974,11.186,11.386,11.570,11.758,11.963,12.179,12.386,12.579,12.770,12.965,13.149,13.308,13.453,
-13.616,13.815,14.027,14.209,14.343,14.459,14.606,14.806,15.034,15.248,15.423,15.554,15.632,15.636,15.554,15.416,
-15.287,15.219,15.212,15.231,15.240,15.230,15.205,15.171,15.132,15.102,15.089,15.088,15.082,15.073,15.083,15.125,
-15.179,15.212,15.223,15.248,15.314,15.400,15.462,15.495,15.545,15.663,15.845,16.049,16.252,16.473,16.723,16.976,
-17.186,17.351,17.515,17.712,17.923,18.092,18.203,18.298,18.448,18.688,19.006,19.355,19.677,19.938,20.157,20.415,
-20.799,21.304,21.808,21.597,21.571,21.521,21.630,21.878,22.042,21.963,21.800,21.991,22.841,24.136,25.188,25.351,
-24.561,23.394,22.584,22.457,22.778,23.082,23.110,22.943,22.806,22.817,22.943,23.113,23.306,23.532,23.764,23.953,
-24.091,24.226,24.400,24.600,24.779,24.933,25.110,25.352,25.623,25.833,25.913,25.875,25.791,25.723,25.691,25.699,
-25.772,25.943,26.214,26.536,26.853,27.151,27.458,27.796,28.135,28.412,28.581,28.655,28.696,28.803,29.078,29.576,
-30.229,30.825,31.128,31.071,30.830,30.687,30.789,31.057,31.342,31.619,31.999,32.538,33.114,33.532,33.736,33.867,
-34.089,34.399,34.640,34.684,34.561,34.413,34.365,34.444,34.603,34.763,34.843,34.792,34.624,34.408,34.205,34.030,
-33.894,33.844,33.918,34.041,34.035,33.797,33.462,33.327,33.572,34.077,34.538,34.753,34.767,34.759,34.866,35.121,
-35.492,35.876,36.067,35.831,35.103,34.097,33.159,32.496,32.052,31.641,31.120,30.421,29.493,28.319,26.998,25.737,
-24.669,23.742,22.835,21.985,21.423,21.338,21.640,22.029,22.252,22.271,22.178,22.040,21.885,21.777,21.807,21.977,
-22.154,22.163,21.903,21.346,20.472,19.306,18.013,16.887,16.153,15.794,15.597,15.396,15.207,15.135,15.201,15.307,
-15.359,15.364,15.392,15.476,15.580,15.644,15.659,15.684,15.824,16.141,16.576,16.965,17.212,17.442,17.941,18.861,
-20.007,20.971,21.492,21.647,21.690,21.758,21.804,21.767,21.690,21.630,21.534,21.301,20.950,20.634,20.453,20.312,
-20.012,19.474,18.807,18.178,17.674,17.301,17.050,16.900,16.793,16.666,16.526,16.440,16.419,16.375,16.231,16.038,
-15.929,15.951,16.001,15.961,15.852,15.798,15.876,16.047,16.250,16.479,16.743,16.987,17.135,17.184,17.216,17.290,
-17.367,17.382,17.326,17.230,17.097,16.913,16.740,16.713,16.905,17.227,17.519,17.712,17.834,17.874,17.751,17.460,
-17.172,17.056,17.032,16.802,16.210,15.478,14.980,14.818,14.727,14.436,14.000,13.679,13.563,13.450,13.144,12.732,
-12.472,12.459,12.531,12.496,12.360,12.258,12.221,12.139,11.932,11.677,11.502,11.419,11.321,11.129,10.877,10.633,
-10.410,10.179,9.940,9.717,9.500,9.244,8.935,8.629,8.373,8.145,7.882,7.572,7.274,7.022,6.769,6.452,
-6.079,5.725,5.430,5.154,4.842,4.504,4.199,3.954,3.727,3.466,3.160,2.844,2.545,2.272,2.025,1.803,
-1.576,1.295,.942,.549,.163,-.209,-.604,-1.046,-1.509,-1.958,-2.402,-2.885,-3.429,-4.010,-4.586,-5.141,
--5.676,-6.182,-6.647,-7.079,-7.514,-7.975,-8.450,-8.913,-9.370,-9.846,-10.332,-10.781,-11.166,-11.529,-11.941,-12.410,
--12.859,-13.213,-13.507,-13.858,-14.342,-14.898,-15.391,-15.743,-16.013,-16.327,-16.763,-17.292,-17.797,-18.145,-18.263,-18.187,
--18.063,-18.065,-18.293,-18.727,-19.275,-19.867,-20.476,-21.085,-21.664,-22.197,-22.713,-23.251,-23.805,-24.332,-24.827,-25.338,
--25.877,-26.340,-26.586,-26.617,-26.630,-26.840,-27.245,-27.632,-27.819,-27.861,-27.977,-28.299,-28.755,-29.205,-29.632,-30.156,
--30.858,-31.656,-32.366,-32.872,-33.203,-33.472,-33.760,-34.058,-34.298,-34.436,-34.508,-34.620,-34.860,-35.202,-35.519,-35.711,
--35.830,-36.047,-36.473,-37.018,-37.447,-37.581,-37.468,-37.349,-37.452,-37.800,-38.190,-38.399,-38.417,-38.467,-38.751,-39.182,
--39.438,-39.342,-39.124,-39.200,-39.661,-40.102,-40.058,-39.568,-39.169,-39.295,-39.802,-40.181,-40.167,-39.982,-39.971,-40.152,
--40.277,-40.213,-40.111,-40.153,-40.284,-40.317,-40.210,-40.109,-40.111,-40.120,-40.007,-39.803,-39.641,-39.546,-39.399,-39.126,
--38.808,-38.549,-38.321,-38.041,-37.736,-37.511,-37.356,-37.118,-36.738,-36.362,-36.073,-35.571,-34.399,-32.610,-31.041,-30.624,
--31.364,-32.148,-31.749,-29.987,-27.821,-26.346,-25.827,-25.733,-25.505,-25.093,-24.781,-24.716,-24.754,-24.706,-24.559,-24.431,
--24.377,-24.336,-24.231,-24.055,-23.852,-23.651,-23.453,-23.255,-23.059,-22.874,-22.723,-22.647,-22.687,-22.851,-23.096,-23.312,
--23.321,-22.922,-22.033,-20.852,-19.831,-19.389,-19.575,-20.020,-20.252,-20.092,-19.718,-19.398,-19.204,-19.021,-18.787,-18.636,
--18.764,-19.194,-19.694,-19.946,-19.780,-19.259,-18.585,-17.933,-17.372,-16.869,-16.360,-15.796,-15.145,-14.367,-13.419,-12.292,
--11.053,-9.840,-8.793,-7.981,-7.382,-6.922,-6.525,-6.147,-5.781,-5.435,-5.099,-4.712,-4.184,-3.467,-2.609,-1.714,
--.851,-.012,.825,1.632,2.349,2.975,3.596,4.284,5.013,5.707,6.396,7.258,8.442,9.831,11.026,11.618,
-11.518,11.044,10.686,10.782,11.358,12.218,13.128,13.946,14.638,15.237,15.791,16.315,16.761,17.039,17.106,17.042,
-17.018,17.157,17.424,17.686,17.887,18.145,18.638,19.393,20.236,20.968,21.576,22.224,23.024,23.872,24.540,24.917,
-25.115,25.324,25.617,25.914,26.142,26.356,26.692,27.223,27.900,28.626,29.349,30.068,30.785,31.486,32.169,32.842,
-33.444,33.807,33.754,33.305,32.730,32.324,32.058,31.510,30.258,28.412,26.708,25.947,26.260,26.957,27.194,26.811,
-26.488,27.019,28.454,29.970,30.614,30.150,29.197,28.600,28.694,29.159,29.479,29.473,29.387,29.564,30.089,30.759,
-31.326,31.728,32.068,32.437,32.803,33.067,33.191,33.237,33.291,33.399,33.578,33.837,34.147,34.411,34.516,34.449,
-34.320,34.241,34.200,34.099,33.919,33.780,33.815,34.011,34.250,34.499,34.870,35.435,36.059,36.508,36.760,37.105,
-37.841,38.885,39.792,40.185,40.136,40.061,40.280,40.750,41.219,41.537,41.744,41.919,42.067,42.188,42.358,42.655,
-43.009,43.255,43.356,43.505,43.919,44.553,45.075,45.176,44.850,44.364,43.982,43.784,43.704,43.680,43.693,43.728,
-43.752,43.754,43.751,43.764,43.794,43.850,43.954,44.109,44.266,44.378,44.460,44.561,44.678,44.760,44.832,45.064,
-45.592,46.273,46.710,46.621,46.156,45.750,45.607,45.374,44.393,42.243,39.019,35.103,30.828,26.478,22.592,20.054,
-19.653,21.414,24.395,27.251,29.122,30.037,30.534,30.955,31.165,30.892,30.208,29.546,29.265,29.301,29.295,28.994,
-28.418,27.690,26.838,25.854,24.865,24.095,23.629,23.316,22.950,22.503,22.092,21.757,21.376,20.843,20.231,19.693,
-19.257,18.804,18.267,17.737,17.316,16.939,16.449,15.839,15.289,14.925,14.600,14.054,13.266,12.557,12.274,12.405,
-12.589,12.479,12.055,11.556,11.178,10.898,10.570,10.125,9.631,9.190,8.819,8.455,8.042,7.599,7.197,6.875,
-6.601,6.316,5.993,5.651,5.304,4.930,4.512,4.090,3.743,3.507,3.323,3.085,2.750,2.366,2.015,1.741,
-1.544,1.414,1.334,1.261,1.140,.955,.748,.571,.424,.265,.075,-.114,-.271,-.410,-.572,-.758,
--.920,-1.033,-1.134,-1.279,-1.462,-1.602,-1.625,-1.548,-1.468,-1.475,-1.589,-1.765,-1.953,-2.132,-2.307,-2.490,
--2.685,-2.890,-3.108,-3.355,-3.650,-3.999,-4.377,-4.744,-5.073,-5.365,-5.643,-5.927,-6.213,-6.486,-6.730,-6.938,
--7.114,-7.271,-7.426,-7.589,-7.749,-7.887,-7.997,-8.089,-8.175,-8.252,-8.300,-8.311,-8.305,-8.317,-8.375,-8.489,
--8.647,-8.824,-8.983,-9.093,-9.150,-9.196,-9.279,-9.418,-9.582,-9.733,-9.874,-10.034,-10.227,-10.424,-10.580,-10.693,
--10.807,-10.960,-11.144,-11.324,-11.485,-11.640,-11.795,-11.932,-12.033,-12.117,-12.221,-12.350,-12.469,-12.549,-12.612,-12.704,
--12.834,-12.948,-12.994,-12.977,-12.951,-12.958,-12.985,-12.998,-12.981,-12.949,-12.917,-12.880,-12.827,-12.754,-12.664,-12.559,
--12.442,-12.323,-12.217,-12.125,-12.038,-11.949,-11.859,-11.769,-11.670,-11.556,-11.444,-11.364,-11.328,-11.319,-11.313,-11.296,
--11.270,-11.230,-11.167,-11.080,-10.984,-10.897,-10.826,-10.774,-10.747,-10.746,-10.759,-10.764,-10.749,-10.716,-10.674,-10.629,
--10.588,-10.571,-10.587,-10.612,-10.612,-10.575,-10.527,-10.494,-10.464,-10.411,-10.336,-10.274,-10.244,-10.214,-10.150,-10.061,
--9.991,-9.960,-9.936,-9.889,-9.834,-9.801,-9.778,-9.713,-9.591,-9.467,-9.404,-9.393,-9.361,-9.272,-9.164,-9.093,
--9.051,-8.985,-8.876,-8.767,-8.703,-8.673,-8.628,-8.551,-8.471,-8.412,-8.366,-8.309,-8.239,-8.173,-8.115,-8.051,
--7.980,-7.918,-7.872,-7.819,-7.731,-7.616,-7.504,-7.417,-7.347,-7.279,-7.209,-7.140,-7.063,-6.972,-6.885,-6.825,
--6.785,-6.725,-6.623,-6.499,-6.392,-6.307,-6.214,-6.097,-5.978,-5.885,-5.813,-5.738,-5.659,-5.594,-5.545,-5.480,
--5.378,-5.263,-5.175,-5.111,-5.036,-4.931,-4.829,-4.758,-4.691,-4.581,-4.440,-4.334,-4.303,-4.290,-4.208,-4.041,
--3.862,-3.740,-3.661,-3.569,-3.441,-3.304,-3.173,-3.016,-2.808,-2.574,-2.360,-2.175,-1.980,-1.754,-1.531,-1.358,
--1.234,-1.106,-.938,-.738,-.538,-.350,-.184,-.067,-.027,-.042,-.039,.038,.171,.283,.331,.348,
-.400,.514,.653,.768,.851,.929,1.024,1.129,1.226,1.317,1.428,1.578,1.756,1.925,2.066,2.206,
-2.392,2.644,2.928,3.185,3.398,3.606,3.851,4.126,4.387,4.605,4.810,5.049,5.340,5.674,6.053,6.487,
-6.941,7.315,7.518,7.580,7.647,7.852,8.195,8.575,8.920,9.254,9.621,10.000,10.336,10.635,10.969,11.374,
-11.781,12.103,12.351,12.623,12.981,13.391,13.818,14.295,14.845,15.357,15.659,15.719,15.638,15.388,14.668,13.279,
-11.728,11.239,12.885,16.608,21.220,25.423,28.756,31.473,33.687,34.973,34.904,33.736,32.243,30.869,29.329,27.205,
-24.786,23.027,22.619,23.278,24.087,24.440,24.499,24.731,25.221,25.574,25.406,24.792,24.198,24.087,24.611,25.574,
-26.549,27.063,26.816,25.858,24.550,23.311,22.356,21.657,21.101,20.620,20.190,19.776,19.336,18.871,18.421,18.015,
-17.662,17.381,17.215,17.168,17.174,17.146,17.052,16.923,16.773,16.557,16.217,15.773,15.318,14.946,14.698,14.564,
-14.512,14.481,14.396,14.210,13.949,13.685,13.459,13.251,13.022,12.768,12.507,12.239,11.935,11.574,11.155,10.667,
-10.084,9.411,8.713,8.063,7.463,6.849,6.185,5.529,4.971,4.539,4.184,3.858,3.548,3.216,2.754,2.044,
-1.085,.001,-1.073,-2.089,-3.047,-3.903,-4.565,-5.002,-5.308,-5.633,-6.047,-6.515,-6.966,-7.367,-7.700,-7.922,
--7.988,-7.916,-7.808,-7.769,-7.828,-7.926,-7.976,-7.947,-7.879,-7.870,-8.008,-8.311,-8.693,-9.013,-9.157,-9.109,
--8.939,-8.736,-8.557,-8.403,-8.233,-7.973,-7.568,-7.030,-6.459,-5.977,-5.633,-5.371,-5.078,-4.668,-4.114,-3.429,
--2.653,-1.847,-1.079,-.402,.162,.603,.925,1.173,1.451,1.853,2.349,2.771,2.928,2.774,2.442,2.126,
-1.943,1.895,1.946,2.071,2.254,2.465,2.676,2.878,3.085,3.315,3.598,3.978,4.461,4.957,5.287,5.315,
-5.085,4.805,4.680,4.762,4.956,5.144,5.286,5.405,5.533,5.685,5.871,6.100,6.360,6.621,6.871,7.123,
-7.388,7.647,7.870,8.059,8.250,8.468,8.695,8.899,9.086,9.296,9.549,9.816,10.055,10.256,10.440,10.624,
-10.803,10.971,11.148,11.352,11.574,11.781,11.957,12.124,12.314,12.529,12.742,12.930,13.097,13.259,13.418,13.566,
-13.707,13.858,14.032,14.214,14.377,14.511,14.637,14.790,14.986,15.212,15.432,15.617,15.746,15.812,15.810,15.737,
-15.610,15.463,15.344,15.285,15.282,15.294,15.283,15.239,15.190,15.169,15.175,15.178,15.150,15.104,15.081,15.103,
-15.144,15.163,15.152,15.152,15.208,15.309,15.399,15.443,15.468,15.538,15.680,15.865,16.052,16.237,16.450,16.696,
-16.946,17.168,17.365,17.570,17.788,17.987,18.133,18.234,18.343,18.509,18.742,19.007,19.263,19.497,19.745,20.071,
-20.512,21.010,21.417,21.597,20.940,20.703,20.674,20.899,21.184,21.296,21.245,21.340,21.914,22.959,24.026,24.535,
-24.234,23.411,22.658,22.409,22.642,22.990,23.117,22.975,22.759,22.666,22.724,22.845,22.981,23.161,23.408,23.661,
-23.830,23.907,23.994,24.188,24.469,24.723,24.879,24.987,25.152,25.400,25.645,25.775,25.765,25.683,25.617,25.603,
-25.643,25.752,25.957,26.259,26.602,26.916,27.174,27.415,27.692,28.009,28.307,28.507,28.559,28.493,28.434,28.564,
-29.020,29.761,30.542,31.047,31.119,30.884,30.646,30.642,30.889,31.249,31.595,31.892,32.143,32.331,32.452,32.595,
-32.916,33.494,34.215,34.829,35.139,35.137,34.983,34.870,34.901,35.063,35.265,35.398,35.396,35.262,35.050,34.821,
-34.612,34.454,34.389,34.437,34.527,34.520,34.333,34.046,33.867,33.959,34.293,34.692,34.987,35.143,35.238,35.380,
-35.622,35.926,36.143,36.057,35.513,34.565,33.484,32.588,32.035,31.745,31.493,31.048,30.251,29.067,27.623,26.196,
-25.052,24.254,23.630,22.976,22.302,21.826,21.731,21.959,22.265,22.444,22.470,22.428,22.378,22.328,22.286,22.289,
-22.349,22.413,22.385,22.158,21.635,20.759,19.590,18.352,17.330,16.681,16.336,16.104,15.876,15.693,15.641,15.721,
-15.842,15.927,15.970,16.012,16.077,16.151,16.212,16.266,16.364,16.576,16.922,17.322,17.652,17.911,18.297,19.057,
-20.198,21.383,22.188,22.471,22.452,22.432,22.502,22.547,22.480,22.365,22.283,22.193,21.988,21.667,21.355,21.128,
-20.901,20.523,19.962,19.335,18.774,18.321,17.960,17.696,17.533,17.431,17.330,17.223,17.158,17.147,17.124,17.027,
-16.898,16.825,16.813,16.759,16.596,16.407,16.352,16.495,16.754,17.011,17.225,17.419,17.604,17.762,17.893,18.011,
-18.108,18.147,18.129,18.096,18.062,17.974,17.804,17.666,17.748,18.096,18.524,18.791,18.831,18.748,18.610,18.374,
-18.049,17.808,17.813,17.924,17.752,17.077,16.145,15.437,15.158,15.069,14.840,14.445,14.115,13.968,13.857,13.601,
-13.261,13.055,13.060,13.119,13.052,12.876,12.729,12.658,12.566,12.374,12.141,11.971,11.869,11.743,11.539,11.300,
-11.088,10.896,10.682,10.438,10.196,9.956,9.688,9.388,9.108,8.880,8.661,8.378,8.036,7.713,7.459,7.225,
-6.926,6.560,6.202,5.903,5.632,5.334,5.010,4.716,4.476,4.251,3.989,3.685,3.378,3.097,2.845,2.609,
-2.376,2.126,1.835,1.506,1.162,.815,.442,.015,-.446,-.885,-1.284,-1.699,-2.196,-2.772,-3.360,-3.911,
--4.443,-4.983,-5.514,-5.986,-6.402,-6.826,-7.311,-7.833,-8.328,-8.776,-9.216,-9.667,-10.097,-10.472,-10.828,-11.234,
--11.698,-12.138,-12.486,-12.791,-13.177,-13.696,-14.257,-14.719,-15.042,-15.323,-15.691,-16.192,-16.759,-17.262,-17.575,-17.632,
--17.469,-17.238,-17.137,-17.302,-17.747,-18.400,-19.179,-20.006,-20.788,-21.440,-21.956,-22.434,-22.974,-23.578,-24.159,-24.672,
--25.174,-25.722,-26.256,-26.648,-26.878,-27.097,-27.461,-27.918,-28.234,-28.246,-28.063,-27.958,-28.100,-28.419,-28.763,-29.102,
--29.559,-30.236,-31.069,-31.865,-32.457,-32.830,-33.098,-33.386,-33.727,-34.041,-34.232,-34.303,-34.379,-34.597,-34.960,-35.325,
--35.563,-35.711,-35.943,-36.374,-36.906,-37.299,-37.380,-37.215,-37.067,-37.194,-37.637,-38.186,-38.562,-38.675,-38.710,-38.910,
--39.276,-39.545,-39.511,-39.323,-39.345,-39.700,-40.061,-40.011,-39.568,-39.216,-39.365,-39.887,-40.296,-40.322,-40.163,-40.153,
--40.326,-40.440,-40.354,-40.207,-40.187,-40.268,-40.284,-40.186,-40.095,-40.093,-40.089,-39.972,-39.783,-39.654,-39.599,-39.492,
--39.259,-38.988,-38.786,-38.610,-38.355,-38.050,-37.829,-37.703,-37.481,-37.035,-36.500,-36.060,-35.569,-34.623,-33.159,-31.818,
--31.425,-32.030,-32.645,-32.126,-30.299,-28.109,-26.654,-26.202,-26.181,-25.981,-25.542,-25.188,-25.103,-25.135,-25.063,-24.878,
--24.736,-24.713,-24.711,-24.594,-24.343,-24.058,-23.845,-23.723,-23.638,-23.518,-23.340,-23.163,-23.100,-23.238,-23.547,-23.877,
--24.026,-23.834,-23.243,-22.336,-21.342,-20.572,-20.238,-20.298,-20.487,-20.534,-20.381,-20.153,-19.950,-19.726,-19.390,-19.007,
--18.813,-19.003,-19.512,-20.031,-20.238,-20.010,-19.449,-18.759,-18.100,-17.544,-17.083,-16.670,-16.238,-15.716,-15.032,-14.134,
--13.019,-11.771,-10.552,-9.535,-8.810,-8.342,-8.009,-7.682,-7.304,-6.898,-6.511,-6.138,-5.687,-5.042,-4.176,-3.190,
--2.234,-1.362,-.515,.369,1.243,1.994,2.593,3.150,3.782,4.473,5.128,5.774,6.625,7.860,9.323,10.515,
-10.978,10.697,10.143,9.892,10.214,10.987,11.919,12.804,13.575,14.229,14.774,15.241,15.677,16.070,16.317,16.320,
-16.132,15.968,16.024,16.296,16.612,16.854,17.116,17.595,18.355,19.243,20.064,20.790,21.563,22.474,23.401,24.110,
-24.488,24.645,24.788,25.030,25.351,25.705,26.114,26.630,27.243,27.877,28.466,29.016,29.576,30.179,30.829,31.538,
-32.306,33.035,33.497,33.467,32.950,32.242,31.674,31.254,30.590,29.296,27.502,25.921,25.284,25.656,26.338,26.541,
-26.153,25.830,26.285,27.524,28.792,29.279,28.847,28.083,27.699,27.913,28.390,28.683,28.693,28.707,29.058,29.789,
-30.628,31.252,31.558,31.695,31.868,32.148,32.450,32.659,32.741,32.755,32.790,32.921,33.181,33.520,33.813,33.932,
-33.864,33.731,33.653,33.621,33.534,33.374,33.268,33.338,33.533,33.688,33.783,34.028,34.622,35.451,36.147,36.492,
-36.692,37.155,38.009,38.929,39.484,39.591,39.562,39.730,40.135,40.581,40.911,41.128,41.292,41.418,41.529,41.714,
-42.039,42.423,42.699,42.838,43.031,43.476,44.098,44.559,44.577,44.197,43.719,43.403,43.293,43.293,43.323,43.368,
-43.416,43.434,43.411,43.378,43.377,43.423,43.514,43.641,43.784,43.908,44.009,44.134,44.316,44.498,44.595,44.660,
-44.901,45.448,46.093,46.406,46.172,45.666,45.367,45.352,45.056,43.700,40.945,37.080,32.668,28.159,23.946,20.654,
-19.095,19.732,22.159,25.222,27.754,29.283,30.072,30.586,30.975,31.070,30.733,30.091,29.413,28.856,28.422,28.123,
-28.040,28.146,28.135,27.594,26.409,24.953,23.780,23.138,22.826,22.514,22.107,21.731,21.450,21.131,20.627,19.986,
-19.390,18.925,18.498,18.004,17.480,17.026,16.636,16.201,15.682,15.184,14.799,14.430,13.880,13.123,12.419,12.079,
-12.136,12.295,12.231,11.876,11.424,11.067,10.799,10.474,10.012,9.486,9.033,8.692,8.380,8.007,7.585,7.201,
-6.908,6.663,6.389,6.064,5.727,5.399,5.041,4.609,4.142,3.736,3.451,3.249,3.040,2.773,2.461,2.129,
-1.795,1.499,1.308,1.245,1.238,1.165,.976,.741,.554,.426,.291,.113,-.064,-.194,-.306,-.474,
--.713,-.947,-1.101,-1.191,-1.299,-1.458,-1.607,-1.667,-1.635,-1.592,-1.618,-1.730,-1.894,-2.081,-2.283,-2.499,
--2.717,-2.912,-3.078,-3.233,-3.419,-3.676,-4.016,-4.411,-4.804,-5.148,-5.435,-5.695,-5.961,-6.241,-6.518,-6.769,
--6.978,-7.156,-7.326,-7.515,-7.721,-7.911,-8.047,-8.126,-8.187,-8.272,-8.384,-8.486,-8.542,-8.551,-8.547,-8.565,
--8.624,-8.733,-8.888,-9.061,-9.206,-9.295,-9.344,-9.399,-9.493,-9.618,-9.751,-9.896,-10.075,-10.286,-10.491,-10.650,
--10.766,-10.878,-11.015,-11.171,-11.325,-11.478,-11.636,-11.785,-11.893,-11.959,-12.022,-12.117,-12.232,-12.324,-12.382,-12.450,
--12.570,-12.719,-12.828,-12.856,-12.834,-12.817,-12.824,-12.827,-12.804,-12.765,-12.731,-12.704,-12.664,-12.606,-12.541,-12.477,
--12.409,-12.327,-12.232,-12.133,-12.031,-11.927,-11.833,-11.767,-11.725,-11.679,-11.603,-11.500,-11.398,-11.318,-11.264,-11.237,
--11.240,-11.267,-11.280,-11.243,-11.152,-11.040,-10.946,-10.881,-10.836,-10.809,-10.800,-10.803,-10.800,-10.783,-10.757,-10.727,
--10.690,-10.648,-10.623,-10.628,-10.651,-10.656,-10.633,-10.605,-10.596,-10.595,-10.570,-10.519,-10.472,-10.443,-10.403,-10.321,
--10.218,-10.140,-10.102,-10.066,-10.003,-9.942,-9.920,-9.917,-9.864,-9.733,-9.586,-9.500,-9.476,-9.441,-9.353,-9.249,
--9.187,-9.160,-9.108,-9.000,-8.877,-8.792,-8.745,-8.698,-8.633,-8.571,-8.527,-8.490,-8.438,-8.377,-8.324,-8.277,
--8.220,-8.150,-8.083,-8.026,-7.961,-7.870,-7.763,-7.669,-7.591,-7.508,-7.408,-7.306,-7.215,-7.125,-7.023,-6.930,
--6.877,-6.857,-6.816,-6.716,-6.585,-6.481,-6.418,-6.351,-6.244,-6.126,-6.040,-5.988,-5.927,-5.837,-5.746,-5.683,
--5.633,-5.555,-5.446,-5.337,-5.249,-5.166,-5.075,-4.994,-4.939,-4.887,-4.790,-4.655,-4.547,-4.511,-4.502,-4.431,
--4.267,-4.075,-3.928,-3.829,-3.732,-3.613,-3.489,-3.366,-3.208,-2.987,-2.734,-2.506,-2.323,-2.144,-1.939,-1.732,
--1.564,-1.428,-1.279,-1.093,-.894,-.719,-.564,-.416,-.296,-.252,-.285,-.319,-.266,-.116,.055,.170,
-.225,.275,.363,.482,.599,.694,.767,.828,.894,.985,1.115,1.278,1.445,1.595,1.734,1.893,
-2.102,2.358,2.629,2.878,3.091,3.293,3.524,3.795,4.073,4.315,4.513,4.706,4.938,5.223,5.557,5.943,
-6.379,6.807,7.120,7.259,7.296,7.398,7.671,8.070,8.475,8.834,9.187,9.569,9.933,10.228,10.499,10.853,
-11.315,11.778,12.129,12.396,12.703,13.105,13.545,13.972,14.432,14.963,15.466,15.777,15.872,15.839,15.601,14.811,
-13.300,11.670,11.220,12.988,16.796,21.376,25.468,28.719,31.432,33.664,34.889,34.645,33.246,31.569,30.156,28.769,
-26.964,24.917,23.431,23.111,23.719,24.471,24.855,25.005,25.283,25.709,25.920,25.638,25.039,24.626,24.803,25.577,
-26.579,27.307,27.393,26.769,25.669,24.448,23.360,22.465,21.710,21.062,20.516,20.046,19.591,19.121,18.670,18.280,
-17.937,17.607,17.314,17.131,17.082,17.087,17.044,16.932,16.814,16.727,16.619,16.414,16.102,15.746,15.418,15.151,
-14.960,14.851,14.790,14.704,14.532,14.286,14.034,13.823,13.633,13.428,13.202,12.970,12.726,12.437,12.081,11.652,
-11.135,10.497,9.745,8.962,8.244,7.609,6.991,6.350,5.750,5.296,5.004,4.755,4.393,3.827,3.043,2.060,
-.928,-.253,-1.355,-2.306,-3.127,-3.863,-4.489,-4.934,-5.182,-5.323,-5.493,-5.765,-6.136,-6.573,-7.051,-7.523,
--7.895,-8.088,-8.108,-8.053,-8.027,-8.059,-8.095,-8.065,-7.943,-7.783,-7.693,-7.785,-8.092,-8.521,-8.891,-9.047,
--8.956,-8.703,-8.417,-8.189,-8.041,-7.931,-7.774,-7.488,-7.055,-6.543,-6.066,-5.693,-5.405,-5.126,-4.778,-4.319,
--3.737,-3.044,-2.276,-1.480,-.704,.004,.583,.982,1.224,1.434,1.756,2.224,2.714,3.045,3.136,3.040,
-2.862,2.675,2.509,2.399,2.376,2.438,2.540,2.657,2.804,3.010,3.277,3.597,3.992,4.479,4.982,5.330,
-5.386,5.195,4.964,4.883,4.973,5.126,5.255,5.373,5.527,5.719,5.916,6.116,6.348,6.630,6.926,7.196,
-7.437,7.679,7.932,8.177,8.402,8.625,8.864,9.106,9.323,9.519,9.732,9.984,10.246,10.474,10.657,10.825,
-11.001,11.180,11.352,11.531,11.733,11.949,12.144,12.304,12.458,12.645,12.865,13.079,13.255,13.398,13.538,13.690,
-13.845,13.991,14.134,14.282,14.439,14.593,14.739,14.879,15.028,15.200,15.400,15.612,15.801,15.929,15.982,15.969,
-15.904,15.787,15.627,15.463,15.357,15.340,15.370,15.376,15.326,15.258,15.229,15.239,15.233,15.174,15.094,15.059,
-15.087,15.130,15.139,15.128,15.157,15.250,15.363,15.436,15.470,15.527,15.653,15.827,15.990,16.120,16.249,16.420,
-16.630,16.850,17.069,17.302,17.562,17.824,18.042,18.200,18.324,18.457,18.616,18.789,18.961,19.141,19.378,19.731,
-20.208,20.715,21.072,21.137,20.940,20.118,20.019,20.323,20.792,21.052,20.996,20.946,21.367,22.375,23.543,24.214,
-24.037,23.242,22.436,22.120,22.360,22.828,23.125,23.095,22.870,22.686,22.662,22.741,22.819,22.894,23.047,23.306,
-23.571,23.711,23.731,23.792,24.038,24.428,24.768,24.915,24.924,24.968,25.148,25.395,25.568,25.600,25.544,25.489,
-25.487,25.556,25.713,25.974,26.313,26.657,26.934,27.135,27.310,27.519,27.783,28.069,28.316,28.454,28.462,28.410,
-28.465,28.800,29.448,30.230,30.846,31.072,30.922,30.629,30.475,30.617,31.017,31.504,31.886,32.048,32.004,31.904,
-31.969,32.382,33.170,34.164,35.080,35.669,35.849,35.728,35.512,35.379,35.400,35.534,35.690,35.779,35.752,35.598,
-35.352,35.087,34.893,34.834,34.895,34.982,34.979,34.828,34.573,34.335,34.246,34.364,34.647,34.968,35.202,35.307,
-35.350,35.433,35.556,35.561,35.234,34.491,33.490,32.537,31.882,31.563,31.420,31.204,30.687,29.745,28.420,26.944,
-25.647,24.754,24.224,23.814,23.315,22.747,22.314,22.173,22.292,22.498,22.647,22.715,22.754,22.795,22.827,22.823,
-22.786,22.742,22.712,22.671,22.512,22.080,21.268,20.144,18.950,17.960,17.297,16.889,16.598,16.360,16.204,16.171,
-16.243,16.364,16.482,16.574,16.635,16.677,16.729,16.820,16.964,17.167,17.439,17.772,18.116,18.422,18.753,19.304,
-20.229,21.414,22.482,23.086,23.215,23.161,23.191,23.313,23.366,23.275,23.135,23.038,22.936,22.714,22.360,21.981,
-21.651,21.317,20.895,20.393,19.908,19.498,19.141,18.805,18.519,18.324,18.200,18.086,17.966,17.878,17.847,17.833,
-17.790,17.733,17.693,17.635,17.482,17.237,17.039,17.046,17.277,17.598,17.857,18.013,18.120,18.245,18.416,18.615,
-18.780,18.839,18.783,18.709,18.729,18.819,18.823,18.663,18.499,18.590,18.979,19.401,19.566,19.467,19.321,19.244,
-19.119,18.846,18.568,18.509,18.597,18.423,17.688,16.604,15.718,15.349,15.307,15.198,14.891,14.569,14.391,14.278,
-14.070,13.789,13.609,13.602,13.641,13.567,13.386,13.224,13.129,13.024,12.843,12.629,12.460,12.333,12.174,11.957,
-11.736,11.558,11.388,11.162,10.880,10.597,10.345,10.100,9.843,9.595,9.373,9.136,8.831,8.476,8.149,7.895,
-7.666,7.381,7.036,6.694,6.400,6.128,5.834,5.526,5.246,5.001,4.750,4.464,4.168,3.905,3.680,3.456,
-3.208,2.937,2.655,2.362,2.056,1.742,1.410,1.035,.605,.158,-.254,-.631,-1.047,-1.562,-2.145,-2.710,
--3.223,-3.730,-4.279,-4.833,-5.316,-5.722,-6.140,-6.642,-7.194,-7.703,-8.130,-8.524,-8.937,-9.359,-9.756,-10.141,
--10.559,-11.001,-11.399,-11.721,-12.047,-12.494,-13.072,-13.646,-14.080,-14.379,-14.676,-15.090,-15.614,-16.150,-16.588,-16.853,
--16.907,-16.772,-16.564,-16.461,-16.611,-17.061,-17.766,-18.640,-19.576,-20.443,-21.134,-21.654,-22.128,-22.681,-23.313,-23.924,
--24.462,-24.991,-25.593,-26.234,-26.790,-27.213,-27.599,-28.054,-28.518,-28.794,-28.765,-28.549,-28.396,-28.451,-28.653,-28.856,
--29.008,-29.198,-29.550,-30.099,-30.770,-31.439,-32.020,-32.513,-32.979,-33.453,-33.880,-34.152,-34.239,-34.264,-34.407,-34.730,
--35.123,-35.440,-35.671,-35.946,-36.358,-36.831,-37.162,-37.204,-37.010,-36.812,-36.864,-37.267,-37.883,-38.443,-38.771,-38.940,
--39.154,-39.481,-39.747,-39.754,-39.580,-39.537,-39.797,-40.137,-40.188,-39.897,-39.628,-39.737,-40.150,-40.466,-40.446,-40.263,
--40.224,-40.383,-40.528,-40.504,-40.395,-40.353,-40.364,-40.308,-40.168,-40.058,-40.040,-40.020,-39.889,-39.698,-39.576,-39.535,
--39.453,-39.267,-39.078,-38.979,-38.889,-38.659,-38.314,-38.045,-37.929,-37.777,-37.370,-36.755,-36.155,-35.587,-34.792,-33.675,
--32.669,-32.397,-32.881,-33.276,-32.595,-30.717,-28.535,-27.092,-26.650,-26.666,-26.527,-26.139,-25.791,-25.654,-25.592,-25.409,
--25.122,-24.909,-24.851,-24.841,-24.729,-24.498,-24.263,-24.132,-24.109,-24.102,-24.023,-23.868,-23.739,-23.772,-24.016,-24.353,
--24.555,-24.443,-24.007,-23.380,-22.720,-22.131,-21.660,-21.323,-21.095,-20.924,-20.767,-20.625,-20.501,-20.328,-19.999,-19.508,
--19.041,-18.880,-19.155,-19.707,-20.195,-20.340,-20.084,-19.548,-18.899,-18.262,-17.711,-17.279,-16.947,-16.637,-16.227,-15.601,
--14.693,-13.527,-12.237,-11.040,-10.142,-9.626,-9.404,-9.275,-9.045,-8.636,-8.100,-7.536,-6.986,-6.381,-5.614,-4.654,
--3.602,-2.602,-1.709,-.853,.031,.895,1.623,2.192,2.721,3.328,3.975,4.541,5.063,5.819,7.043,8.569,
-9.824,10.293,9.996,9.488,9.378,9.861,10.697,11.567,12.354,13.097,13.795,14.356,14.735,15.005,15.255,15.443,
-15.440,15.229,15.001,14.998,15.277,15.679,16.042,16.394,16.903,17.662,18.579,19.489,20.335,21.179,22.064,22.903,
-23.548,23.936,24.145,24.311,24.529,24.840,25.264,25.807,26.436,27.086,27.705,28.297,28.890,29.483,30.055,30.629,
-31.283,32.055,32.811,33.264,33.187,32.635,31.933,31.375,30.898,30.107,28.688,26.845,25.281,24.646,24.963,25.594,
-25.832,25.539,25.200,25.364,26.055,26.772,27.020,26.802,26.567,26.732,27.274,27.808,28.012,27.960,28.053,28.630,
-29.644,30.691,31.344,31.486,31.356,31.296,31.466,31.776,32.043,32.173,32.206,32.240,32.349,32.564,32.852,33.116,
-33.246,33.215,33.111,33.042,33.009,32.933,32.799,32.727,32.822,33.007,33.087,33.051,33.194,33.834,34.904,35.928,
-36.476,36.619,36.824,37.420,38.246,38.860,39.042,38.991,39.051,39.357,39.779,40.141,40.392,40.569,40.714,40.878,
-41.133,41.507,41.904,42.180,42.339,42.570,43.032,43.615,43.996,43.949,43.565,43.137,42.884,42.809,42.820,42.872,
-42.972,43.094,43.163,43.139,43.067,43.030,43.075,43.189,43.332,43.459,43.555,43.652,43.813,44.043,44.254,44.355,
-44.425,44.684,45.228,45.806,45.997,45.666,45.165,44.949,44.960,44.485,42.701,39.352,34.891,30.059,25.484,21.702,
-19.334,18.933,20.508,23.279,26.076,28.087,29.251,29.963,30.513,30.848,30.810,30.430,29.902,29.325,28.634,27.832,
-27.195,27.097,27.552,28.021,27.791,26.617,24.947,23.513,22.700,22.341,22.064,21.704,21.357,21.098,20.819,20.368,
-19.758,19.159,18.682,18.263,17.789,17.255,16.758,16.350,15.977,15.570,15.141,14.728,14.290,13.723,13.022,12.372,
-12.008,11.974,12.063,12.003,11.703,11.291,10.929,10.631,10.287,9.826,9.322,8.911,8.636,8.399,8.081,7.677,
-7.281,6.969,6.718,6.451,6.139,5.811,5.484,5.121,4.686,4.212,3.783,3.452,3.196,2.970,2.752,2.526,
-2.249,1.888,1.499,1.217,1.123,1.143,1.115,.958,.741,.571,.460,.338,.171,.015,-.078,-.157,
--.329,-.621,-.938,-1.167,-1.300,-1.417,-1.574,-1.734,-1.829,-1.853,-1.863,-1.912,-2.001,-2.111,-2.242,-2.417,
--2.640,-2.878,-3.086,-3.244,-3.375,-3.530,-3.760,-4.083,-4.469,-4.857,-5.198,-5.483,-5.739,-5.999,-6.272,-6.547,
--6.807,-7.040,-7.246,-7.439,-7.636,-7.840,-8.028,-8.166,-8.249,-8.313,-8.405,-8.533,-8.663,-8.755,-8.803,-8.831,
--8.857,-8.890,-8.944,-9.036,-9.168,-9.311,-9.428,-9.510,-9.581,-9.663,-9.753,-9.843,-9.951,-10.103,-10.300,-10.501,
--10.662,-10.779,-10.877,-10.979,-11.089,-11.214,-11.363,-11.528,-11.671,-11.756,-11.800,-11.859,-11.961,-12.073,-12.150,-12.200,
--12.281,-12.421,-12.571,-12.657,-12.662,-12.642,-12.648,-12.670,-12.666,-12.627,-12.581,-12.547,-12.509,-12.448,-12.381,-12.340,
--12.328,-12.305,-12.235,-12.117,-11.981,-11.854,-11.749,-11.679,-11.654,-11.660,-11.658,-11.615,-11.535,-11.443,-11.353,-11.270,
--11.208,-11.192,-11.223,-11.259,-11.242,-11.160,-11.053,-10.967,-10.916,-10.888,-10.871,-10.858,-10.841,-10.814,-10.784,-10.767,
--10.766,-10.758,-10.727,-10.691,-10.681,-10.699,-10.712,-10.697,-10.670,-10.661,-10.668,-10.665,-10.637,-10.603,-10.575,-10.534,
--10.459,-10.366,-10.295,-10.253,-10.203,-10.124,-10.047,-10.016,-10.015,-9.979,-9.871,-9.738,-9.645,-9.599,-9.545,-9.452,
--9.354,-9.291,-9.250,-9.177,-9.057,-8.936,-8.858,-8.813,-8.768,-8.712,-8.667,-8.643,-8.618,-8.572,-8.520,-8.485,
--8.461,-8.419,-8.349,-8.268,-8.189,-8.102,-8.001,-7.908,-7.842,-7.789,-7.707,-7.582,-7.444,-7.325,-7.217,-7.104,
--7.001,-6.947,-6.942,-6.922,-6.837,-6.709,-6.601,-6.533,-6.464,-6.357,-6.243,-6.170,-6.132,-6.073,-5.962,-5.842,
--5.769,-5.732,-5.674,-5.564,-5.435,-5.329,-5.250,-5.179,-5.119,-5.084,-5.055,-4.989,-4.877,-4.766,-4.702,-4.667,
--4.592,-4.448,-4.280,-4.145,-4.044,-3.940,-3.815,-3.689,-3.561,-3.397,-3.170,-2.914,-2.690,-2.515,-2.349,-2.156,
--1.954,-1.778,-1.620,-1.435,-1.212,-.994,-.824,-.692,-.566,-.454,-.409,-.447,-.503,-.477,-.341,-.160,
--.016,.064,.117,.186,.283,.399,.514,.611,.680,.743,.835,.978,1.141,1.275,1.372,1.487,
-1.684,1.969,2.280,2.548,2.754,2.938,3.149,3.403,3.676,3.934,4.162,4.376,4.607,4.872,5.170,5.501,
-5.878,6.295,6.692,6.980,7.126,7.215,7.390,7.721,8.143,8.549,8.908,9.262,9.626,9.952,10.215,10.492,
-10.893,11.409,11.906,12.282,12.591,12.959,13.411,13.859,14.253,14.661,15.145,15.612,15.910,16.020,16.011,15.759,
-14.886,13.249,11.520,11.039,12.808,16.594,21.126,25.221,28.584,31.481,33.848,35.056,34.641,33.012,31.168,29.739,
-28.505,26.961,25.170,23.837,23.553,24.152,24.930,25.377,25.559,25.779,26.071,26.144,25.788,25.218,24.953,25.373,
-26.376,27.424,27.909,27.548,26.522,25.286,24.211,23.368,22.613,21.840,21.094,20.474,19.980,19.522,19.055,18.625,
-18.283,17.991,17.681,17.365,17.139,17.055,17.044,16.996,16.882,16.765,16.694,16.641,16.545,16.389,16.196,15.980,
-15.739,15.494,15.293,15.151,15.023,14.850,14.628,14.401,14.194,13.978,13.725,13.451,13.195,12.956,12.686,12.339,
-11.889,11.323,10.628,9.831,9.021,8.285,7.628,6.992,6.367,5.848,5.544,5.416,5.242,4.764,3.858,2.598,
-1.175,-.200,-1.367,-2.262,-2.934,-3.500,-4.036,-4.506,-4.818,-4.948,-4.989,-5.075,-5.287,-5.625,-6.064,-6.577,
--7.114,-7.584,-7.907,-8.073,-8.145,-8.192,-8.228,-8.217,-8.116,-7.924,-7.701,-7.558,-7.615,-7.910,-8.344,-8.716,
--8.850,-8.700,-8.366,-8.012,-7.764,-7.660,-7.647,-7.614,-7.450,-7.121,-6.685,-6.245,-5.870,-5.565,-5.297,-5.025,
--4.695,-4.239,-3.614,-2.835,-1.982,-1.140,-.367,.289,.783,1.105,1.316,1.530,1.823,2.181,2.534,2.826,
-3.026,3.100,3.023,2.826,2.620,2.518,2.540,2.622,2.709,2.820,3.004,3.276,3.623,4.048,4.556,5.069,
-5.414,5.463,5.275,5.067,5.016,5.120,5.257,5.362,5.479,5.670,5.919,6.165,6.398,6.666,6.993,7.326,
-7.593,7.794,7.992,8.233,8.503,8.769,9.024,9.284,9.544,9.777,9.977,10.177,10.404,10.645,10.860,11.035,
-11.196,11.368,11.554,11.744,11.941,12.149,12.353,12.529,12.676,12.827,13.013,13.223,13.411,13.555,13.677,13.814,
-13.977,14.147,14.301,14.439,14.579,14.734,14.901,15.066,15.215,15.346,15.477,15.639,15.833,16.014,16.125,16.142,
-16.094,16.017,15.906,15.741,15.550,15.414,15.394,15.453,15.487,15.437,15.345,15.286,15.277,15.260,15.194,15.114,
-15.088,15.130,15.184,15.208,15.223,15.277,15.364,15.429,15.449,15.478,15.587,15.772,15.949,16.055,16.113,16.201,
-16.357,16.550,16.744,16.948,17.202,17.510,17.819,18.074,18.262,18.413,18.557,18.700,18.838,18.983,19.178,19.480,
-19.913,20.401,20.756,20.789,20.491,20.118,19.559,19.820,20.484,21.080,21.192,20.941,20.940,21.691,23.016,24.131,
-24.322,23.564,22.502,21.875,21.957,22.479,22.967,23.131,22.998,22.781,22.667,22.688,22.757,22.797,22.839,22.980,
-23.239,23.499,23.618,23.615,23.681,23.979,24.447,24.833,24.953,24.867,24.804,24.912,25.143,25.340,25.413,25.392,
-25.358,25.372,25.470,25.681,25.998,26.359,26.670,26.885,27.031,27.168,27.330,27.521,27.744,28.005,28.267,28.462,
-28.559,28.634,28.842,29.297,29.952,30.599,30.992,31.002,30.712,30.389,30.331,30.674,31.297,31.894,32.201,32.180,
-32.033,32.049,32.424,33.174,34.163,35.171,35.966,36.391,36.432,36.221,35.958,35.796,35.789,35.900,36.038,36.091,
-35.970,35.675,35.324,35.083,35.041,35.144,35.251,35.254,35.120,34.872,34.556,34.266,34.140,34.269,34.582,34.869,
-34.948,34.828,34.653,34.506,34.283,33.808,33.060,32.242,31.623,31.320,31.221,31.098,30.741,30.032,28.956,27.635,
-26.319,25.276,24.620,24.235,23.893,23.459,22.989,22.642,22.515,22.577,22.722,22.867,22.988,23.099,23.216,23.330,
-23.405,23.411,23.358,23.301,23.265,23.159,22.794,22.032,20.931,19.736,18.709,17.964,17.460,17.110,16.877,16.756,
-16.737,16.795,16.907,17.050,17.181,17.258,17.293,17.361,17.528,17.791,18.094,18.397,18.697,18.998,19.310,19.715,
-20.362,21.325,22.441,23.368,23.853,23.957,23.958,24.050,24.186,24.214,24.101,23.956,23.854,23.725,23.456,23.046,
-22.601,22.200,21.827,21.448,21.085,20.783,20.524,20.238,19.902,19.580,19.337,19.164,19.005,18.845,18.720,18.655,
-18.621,18.582,18.542,18.500,18.406,18.209,17.954,17.796,17.861,18.126,18.435,18.655,18.758,18.814,18.903,19.074,
-19.299,19.476,19.503,19.405,19.356,19.502,19.744,19.809,19.571,19.263,19.242,19.567,19.910,19.952,19.770,19.698,
-19.854,19.965,19.738,19.279,18.954,18.871,18.676,17.980,16.891,15.952,15.567,15.601,15.620,15.399,15.076,14.855,
-14.726,14.549,14.303,14.122,14.088,14.112,14.057,13.910,13.760,13.647,13.517,13.323,13.111,12.945,12.811,12.642,
-12.418,12.198,12.020,11.840,11.594,11.291,11.003,10.773,10.568,10.342,10.091,9.834,9.564,9.257,8.927,8.623,
-8.368,8.119,7.825,7.495,7.183,6.910,6.643,6.352,6.052,5.774,5.505,5.208,4.888,4.601,4.389,4.220,
-4.016,3.745,3.440,3.145,2.864,2.572,2.257,1.922,1.560,1.167,.759,.365,-.024,-.460,-.978,-1.538,
--2.067,-2.548,-3.043,-3.592,-4.150,-4.634,-5.041,-5.464,-5.977,-6.540,-7.047,-7.454,-7.815,-8.196,-8.608,-9.026,
--9.449,-9.890,-10.320,-10.678,-10.974,-11.318,-11.821,-12.448,-13.033,-13.449,-13.743,-14.075,-14.532,-15.059,-15.529,-15.868,
--16.067,-16.134,-16.085,-15.991,-15.989,-16.209,-16.699,-17.416,-18.275,-19.172,-19.990,-20.647,-21.162,-21.649,-22.214,-22.846,
--23.450,-23.983,-24.509,-25.107,-25.753,-26.338,-26.802,-27.201,-27.614,-28.016,-28.295,-28.399,-28.416,-28.498,-28.715,-28.999,
--29.217,-29.284,-29.217,-29.132,-29.197,-29.536,-30.140,-30.876,-31.593,-32.237,-32.830,-33.356,-33.720,-33.862,-33.879,-33.980,
--34.286,-34.719,-35.112,-35.402,-35.676,-36.038,-36.462,-36.799,-36.907,-36.771,-36.538,-36.447,-36.698,-37.304,-38.066,-38.722,
--39.168,-39.498,-39.815,-40.050,-40.064,-39.894,-39.803,-40.001,-40.366,-40.565,-40.448,-40.232,-40.222,-40.441,-40.619,-40.559,
--40.367,-40.288,-40.392,-40.532,-40.576,-40.557,-40.554,-40.536,-40.418,-40.218,-40.059,-39.993,-39.925,-39.760,-39.553,-39.430,
--39.396,-39.334,-39.193,-39.082,-39.086,-39.091,-38.903,-38.528,-38.197,-38.062,-37.971,-37.650,-37.046,-36.359,-35.721,-35.028,
--34.205,-33.527,-33.406,-33.799,-33.985,-33.155,-31.246,-29.077,-27.599,-27.082,-27.064,-26.977,-26.681,-26.372,-26.182,-26.011,
--25.730,-25.381,-25.119,-24.998,-24.929,-24.814,-24.673,-24.599,-24.622,-24.673,-24.652,-24.535,-24.408,-24.406,-24.603,-24.916,
--25.110,-24.960,-24.442,-23.784,-23.280,-23.050,-22.958,-22.770,-22.376,-21.853,-21.371,-21.046,-20.871,-20.730,-20.473,-20.021,
--19.461,-19.030,-18.960,-19.285,-19.797,-20.193,-20.285,-20.071,-19.655,-19.137,-18.583,-18.057,-17.625,-17.306,-17.035,-16.673,
--16.069,-15.135,-13.910,-12.580,-11.433,-10.711,-10.473,-10.546,-10.635,-10.499,-10.062,-9.402,-8.652,-7.890,-7.091,-6.175,
--5.109,-3.962,-2.857,-1.864,-.956,-.094,.692,1.332,1.838,2.334,2.914,3.513,4.001,4.432,5.111,6.300,
-7.833,9.122,9.644,9.440,9.079,9.129,9.691,10.464,11.176,11.837,12.582,13.373,13.987,14.278,14.348,14.407,
-14.505,14.506,14.314,14.065,14.016,14.290,14.777,15.298,15.817,16.444,17.268,18.244,19.237,20.153,20.968,21.688,
-22.307,22.823,23.252,23.606,23.884,24.114,24.392,24.824,25.428,26.105,26.751,27.366,28.030,28.760,29.456,30.022,
-30.507,31.074,31.784,32.444,32.729,32.484,31.895,31.323,30.938,30.507,29.594,28.005,26.077,24.517,23.877,24.127,
-24.704,25.009,24.875,24.597,24.540,24.758,25.011,25.098,25.123,25.379,25.998,26.760,27.265,27.330,27.204,27.384,
-28.184,29.442,30.621,31.235,31.215,30.905,30.733,30.865,31.167,31.423,31.550,31.610,31.685,31.801,31.957,32.153,
-32.363,32.511,32.539,32.476,32.405,32.353,32.273,32.160,32.118,32.244,32.446,32.518,32.437,32.533,33.210,34.463,
-35.764,36.520,36.654,36.637,36.956,37.615,38.206,38.410,38.320,38.281,38.507,38.929,39.349,39.656,39.863,40.043,
-40.268,40.588,40.983,41.349,41.597,41.778,42.073,42.582,43.155,43.493,43.435,43.102,42.755,42.544,42.441,42.386,
-42.394,42.508,42.686,42.811,42.815,42.747,42.714,42.772,42.901,43.049,43.176,43.282,43.397,43.563,43.767,43.938,
-44.027,44.130,44.426,44.943,45.421,45.506,45.149,44.704,44.517,44.395,43.575,41.300,37.437,32.558,27.522,23.100,
-19.937,18.583,19.271,21.573,24.447,26.837,28.314,29.154,29.803,30.372,30.642,30.476,30.044,29.605,29.166,28.507,
-27.556,26.652,26.295,26.606,27.091,27.014,26.041,24.509,23.092,22.221,21.832,21.600,21.316,20.997,20.717,20.438,
-20.056,19.549,19.013,18.539,18.106,17.630,17.092,16.565,16.129,15.781,15.447,15.066,14.620,14.101,13.500,12.855,
-12.289,11.947,11.858,11.880,11.808,11.544,11.156,10.774,10.440,10.088,9.661,9.212,8.852,8.623,8.435,8.163,
-7.778,7.361,7.003,6.714,6.446,6.163,5.862,5.539,5.162,4.724,4.269,3.855,3.503,3.194,2.925,2.720,
-2.559,2.347,1.997,1.557,1.200,1.054,1.063,1.056,.930,.739,.585,.483,.371,.225,.101,.041,
--.023,-.204,-.525,-.885,-1.165,-1.350,-1.514,-1.703,-1.888,-2.019,-2.098,-2.169,-2.256,-2.339,-2.402,-2.468,
--2.584,-2.764,-2.973,-3.159,-3.301,-3.424,-3.579,-3.818,-4.151,-4.540,-4.920,-5.244,-5.519,-5.779,-6.048,-6.323,
--6.595,-6.863,-7.130,-7.384,-7.610,-7.804,-7.979,-8.141,-8.280,-8.387,-8.480,-8.588,-8.718,-8.847,-8.949,-9.024,
--9.087,-9.144,-9.188,-9.221,-9.268,-9.351,-9.461,-9.572,-9.671,-9.764,-9.854,-9.926,-9.976,-10.032,-10.135,-10.296,
--10.476,-10.628,-10.735,-10.811,-10.877,-10.951,-11.054,-11.198,-11.362,-11.495,-11.569,-11.616,-11.697,-11.824,-11.946,-12.017,
--12.066,-12.158,-12.306,-12.441,-12.494,-12.477,-12.460,-12.483,-12.514,-12.509,-12.474,-12.444,-12.424,-12.377,-12.288,-12.205,
--12.181,-12.203,-12.199,-12.114,-11.967,-11.820,-11.715,-11.649,-11.609,-11.589,-11.578,-11.555,-11.509,-11.455,-11.411,-11.368,
--11.306,-11.228,-11.171,-11.159,-11.165,-11.141,-11.069,-10.980,-10.917,-10.892,-10.890,-10.895,-10.895,-10.877,-10.833,-10.788,
--10.776,-10.803,-10.831,-10.818,-10.774,-10.744,-10.754,-10.773,-10.764,-10.730,-10.702,-10.697,-10.691,-10.665,-10.628,-10.600,
--10.573,-10.529,-10.469,-10.415,-10.377,-10.331,-10.258,-10.176,-10.121,-10.093,-10.053,-9.976,-9.883,-9.806,-9.743,-9.666,
--9.571,-9.487,-9.427,-9.361,-9.250,-9.110,-8.994,-8.931,-8.895,-8.848,-8.794,-8.762,-8.755,-8.739,-8.696,-8.649,
--8.629,-8.623,-8.592,-8.522,-8.433,-8.343,-8.246,-8.139,-8.044,-7.986,-7.944,-7.872,-7.751,-7.616,-7.502,-7.404,
--7.291,-7.177,-7.105,-7.087,-7.069,-6.993,-6.867,-6.749,-6.664,-6.578,-6.464,-6.352,-6.288,-6.262,-6.206,-6.090,
--5.965,-5.894,-5.868,-5.816,-5.702,-5.564,-5.458,-5.394,-5.342,-5.288,-5.252,-5.232,-5.192,-5.105,-4.991,-4.891,
--4.812,-4.722,-4.605,-4.485,-4.390,-4.307,-4.199,-4.062,-3.918,-3.774,-3.600,-3.375,-3.129,-2.918,-2.749,-2.577,
--2.371,-2.155,-1.967,-1.798,-1.601,-1.362,-1.126,-.945,-.815,-.701,-.603,-.564,-.597,-.644,-.620,-.502,
--.346,-.221,-.144,-.086,-.018,.070,.176,.298,.418,.517,.600,.700,.832,.970,1.073,1.155,
-1.289,1.534,1.859,2.168,2.398,2.575,2.770,3.017,3.286,3.532,3.751,3.977,4.244,4.552,4.876,5.199,
-5.526,5.875,6.245,6.595,6.871,7.066,7.247,7.505,7.867,8.276,8.659,9.004,9.344,9.685,10.000,10.298,
-10.654,11.130,11.673,12.148,12.494,12.800,13.186,13.646,14.078,14.443,14.823,15.274,15.702,15.970,16.072,16.065,
-15.783,14.827,13.082,11.259,10.689,12.334,15.954,20.355,24.455,27.981,31.108,33.643,34.900,34.447,32.759,30.882,
-29.460,28.271,26.791,25.037,23.676,23.318,23.870,24.681,25.228,25.510,25.794,26.132,26.255,25.943,25.387,25.123,
-25.579,26.646,27.695,28.023,27.381,26.121,24.863,23.979,23.379,22.745,21.931,21.082,20.408,19.939,19.538,19.104,
-18.676,18.326,18.034,17.723,17.389,17.124,17.000,16.971,16.937,16.854,16.763,16.708,16.681,16.648,16.599,16.528,
-16.411,16.222,15.979,15.743,15.548,15.365,15.156,14.929,14.719,14.518,14.270,13.943,13.582,13.262,12.999,12.725,
-12.355,11.850,11.220,10.496,9.724,8.962,8.239,7.538,6.841,6.215,5.804,5.685,5.711,5.544,4.872,3.632,
-2.037,.428,-.912,-1.862,-2.472,-2.900,-3.304,-3.739,-4.131,-4.376,-4.465,-4.500,-4.608,-4.840,-5.172,-5.575,
--6.040,-6.552,-7.056,-7.479,-7.786,-7.989,-8.118,-8.179,-8.160,-8.048,-7.857,-7.639,-7.494,-7.525,-7.768,-8.134,
--8.444,-8.537,-8.369,-8.032,-7.686,-7.469,-7.429,-7.502,-7.553,-7.457,-7.190,-6.824,-6.455,-6.126,-5.828,-5.553,
--5.301,-5.031,-4.638,-4.029,-3.221,-2.342,-1.530,-.837,-.240,.279,.696,.987,1.174,1.321,1.493,1.736,
-2.063,2.425,2.709,2.807,2.721,2.584,2.543,2.636,2.780,2.896,2.994,3.140,3.369,3.687,4.101,4.614,
-5.141,5.506,5.573,5.398,5.196,5.148,5.252,5.396,5.521,5.673,5.907,6.194,6.473,6.744,7.060,7.433,
-7.782,8.023,8.171,8.328,8.566,8.864,9.159,9.430,9.700,9.975,10.225,10.425,10.598,10.788,11.008,11.226,
-11.415,11.577,11.740,11.921,12.122,12.338,12.557,12.758,12.925,13.073,13.233,13.419,13.604,13.749,13.856,13.963,
-14.106,14.279,14.449,14.596,14.732,14.881,15.055,15.247,15.430,15.580,15.689,15.786,15.915,16.086,16.245,16.314,
-16.273,16.177,16.085,15.992,15.848,15.656,15.500,15.462,15.518,15.559,15.507,15.401,15.328,15.315,15.312,15.273,
-15.226,15.226,15.278,15.331,15.355,15.374,15.411,15.440,15.422,15.386,15.420,15.574,15.779,15.918,15.962,15.996,
-16.117,16.322,16.533,16.711,16.907,17.190,17.556,17.919,18.201,18.381,18.495,18.594,18.726,18.923,19.183,19.480,
-19.788,20.091,20.337,20.396,20.173,19.779,19.559,19.543,20.048,20.738,21.133,20.977,20.619,20.779,21.803,23.207,
-24.044,23.774,22.741,21.814,21.607,22.059,22.668,23.014,23.025,22.864,22.711,22.645,22.654,22.695,22.732,22.790,
-22.928,23.161,23.395,23.515,23.532,23.616,23.916,24.366,24.722,24.803,24.681,24.587,24.676,24.897,25.102,25.203,
-25.224,25.232,25.280,25.417,25.676,26.031,26.383,26.633,26.776,26.890,27.036,27.193,27.323,27.453,27.667,27.992,
-28.343,28.600,28.739,28.869,29.146,29.647,30.291,30.859,31.110,30.946,30.536,30.255,30.424,31.048,31.808,32.332,
-32.491,32.452,32.482,32.738,33.238,33.947,34.811,35.710,36.448,36.845,36.864,36.630,36.338,36.140,36.095,36.151,
-36.170,36.003,35.618,35.161,34.856,34.803,34.911,35.006,34.996,34.895,34.714,34.422,34.045,33.753,33.745,34.023,
-34.339,34.406,34.160,33.760,33.362,32.947,32.416,31.797,31.285,31.046,31.029,30.998,30.719,30.099,29.172,28.034,
-26.834,25.760,24.964,24.457,24.104,23.756,23.377,23.042,22.835,22.770,22.809,22.918,23.073,23.251,23.436,23.640,
-23.874,24.102,24.244,24.262,24.203,24.126,23.977,23.579,22.791,21.672,20.462,19.405,18.605,18.041,17.662,17.442,
-17.352,17.347,17.398,17.504,17.653,17.792,17.870,17.919,18.046,18.319,18.694,19.066,19.380,19.659,19.940,20.247,
-20.644,21.257,22.157,23.216,24.139,24.700,24.922,25.004,25.085,25.138,25.082,24.935,24.791,24.680,24.512,24.197,
-23.758,23.303,22.907,22.571,22.281,22.051,21.870,21.670,21.384,21.025,20.686,20.429,20.233,20.046,19.868,19.734,
-19.646,19.565,19.467,19.372,19.292,19.177,18.981,18.755,18.634,18.708,18.934,19.185,19.365,19.463,19.523,19.607,
-19.764,19.986,20.171,20.211,20.151,20.198,20.488,20.845,20.897,20.514,20.026,19.902,20.207,20.525,20.477,20.200,
-20.142,20.443,20.694,20.432,19.722,19.078,18.807,18.636,18.092,17.145,16.282,15.944,16.048,16.148,15.967,15.620,
-15.351,15.205,15.052,14.836,14.654,14.593,14.596,14.544,14.410,14.259,14.128,13.975,13.771,13.562,13.410,13.294,
-13.138,12.914,12.675,12.469,12.270,12.028,11.749,11.495,11.296,11.106,10.867,10.577,10.273,9.979,9.687,9.393,
-9.109,8.837,8.551,8.237,7.924,7.652,7.416,7.168,6.881,6.580,6.289,5.991,5.654,5.306,5.024,4.844,
-4.702,4.500,4.211,3.898,3.619,3.361,3.074,2.745,2.405,2.074,1.736,1.366,.966,.544,.091,-.404,
--.921,-1.422,-1.902,-2.398,-2.933,-3.467,-3.939,-4.359,-4.800,-5.316,-5.864,-6.356,-6.756,-7.112,-7.480,-7.875,
--8.292,-8.741,-9.218,-9.669,-10.026,-10.312,-10.657,-11.171,-11.805,-12.386,-12.804,-13.125,-13.502,-13.995,-14.511,-14.917,
--15.167,-15.300,-15.359,-15.368,-15.381,-15.507,-15.848,-16.422,-17.163,-17.971,-18.759,-19.462,-20.049,-20.554,-21.064,-21.642,
--22.260,-22.839,-23.347,-23.835,-24.364,-24.917,-25.418,-25.821,-26.157,-26.477,-26.792,-27.086,-27.370,-27.693,-28.092,-28.552,
--29.015,-29.394,-29.585,-29.513,-29.229,-28.952,-28.950,-29.329,-29.952,-30.594,-31.155,-31.687,-32.224,-32.671,-32.917,-33.017,
--33.176,-33.536,-34.021,-34.436,-34.689,-34.879,-35.167,-35.593,-36.042,-36.338,-36.371,-36.183,-35.990,-36.089,-36.655,-37.583,
--38.555,-39.301,-39.787,-40.127,-40.356,-40.395,-40.248,-40.120,-40.246,-40.600,-40.894,-40.893,-40.673,-40.504,-40.522,-40.613,
--40.609,-40.510,-40.442,-40.471,-40.537,-40.580,-40.617,-40.665,-40.661,-40.526,-40.296,-40.093,-39.963,-39.827,-39.615,-39.396,
--39.282,-39.268,-39.230,-39.120,-39.050,-39.108,-39.181,-39.059,-38.714,-38.364,-38.199,-38.120,-37.857,-37.300,-36.596,-35.918,
--35.271,-34.634,-34.189,-34.180,-34.483,-34.467,-33.484,-31.544,-29.396,-27.886,-27.275,-27.185,-27.121,-26.912,-26.662,-26.457,
--26.243,-25.961,-25.665,-25.441,-25.291,-25.151,-25.018,-24.982,-25.097,-25.277,-25.360,-25.261,-25.073,-24.988,-25.138,-25.469,
--25.732,-25.624,-25.018,-24.115,-23.357,-23.101,-23.324,-23.639,-23.617,-23.124,-22.375,-21.700,-21.274,-21.041,-20.821,-20.466,
--19.965,-19.453,-19.130,-19.134,-19.429,-19.827,-20.115,-20.188,-20.068,-19.817,-19.469,-19.036,-18.558,-18.107,-17.736,-17.425,
--17.063,-16.492,-15.584,-14.353,-13.016,-11.929,-11.375,-11.376,-11.666,-11.881,-11.781,-11.337,-10.658,-9.856,-8.979,-8.014,
--6.929,-5.720,-4.440,-3.186,-2.041,-1.038,-.173,.543,1.101,1.552,2.008,2.534,3.072,3.521,3.949,4.636,
-5.799,7.265,8.496,9.042,8.977,8.827,9.053,9.666,10.350,10.911,11.465,12.192,13.004,13.582,13.732,13.600,
-13.481,13.489,13.482,13.318,13.089,13.047,13.343,13.902,14.558,15.244,16.020,16.942,17.973,19.000,19.908,20.624,
-21.139,21.533,21.945,22.462,23.022,23.474,23.760,24.014,24.431,25.054,25.740,26.351,26.924,27.587,28.344,29.026,
-29.502,29.871,30.357,31.000,31.526,31.597,31.179,30.608,30.243,30.067,29.661,28.588,26.836,24.907,23.490,22.982,
-23.254,23.803,24.152,24.157,23.999,23.922,23.989,24.091,24.159,24.307,24.732,25.458,26.218,26.644,26.622,26.459,
-26.666,27.522,28.799,29.926,30.446,30.371,30.107,30.058,30.302,30.633,30.847,30.936,31.016,31.149,31.291,31.407,
-31.532,31.708,31.883,31.959,31.910,31.806,31.713,31.626,31.545,31.553,31.732,31.992,32.116,32.057,32.138,32.810,
-34.131,35.576,36.458,36.571,36.360,36.418,36.901,37.460,37.706,37.627,37.541,37.722,38.165,38.665,39.055,39.315,
-39.525,39.775,40.097,40.444,40.733,40.935,41.149,41.528,42.099,42.671,42.981,42.933,42.673,42.416,42.246,42.116,
-41.994,41.944,42.026,42.196,42.338,42.395,42.418,42.484,42.606,42.737,42.848,42.950,43.064,43.195,43.336,43.471,
-43.588,43.703,43.894,44.239,44.686,45.008,44.986,44.662,44.324,44.136,43.765,42.476,39.671,35.379,30.264,25.241,
-21.156,18.681,18.239,19.754,22.485,25.293,27.307,28.406,29.050,29.666,30.229,30.444,30.192,29.705,29.275,28.909,
-28.352,27.456,26.443,25.751,25.605,25.766,25.711,25.073,23.933,22.714,21.821,21.358,21.145,20.945,20.657,20.323,
-20.002,19.683,19.314,18.878,18.408,17.934,17.449,16.935,16.417,15.953,15.580,15.261,14.908,14.451,13.882,13.255,
-12.654,12.169,11.869,11.750,11.715,11.617,11.366,10.995,10.609,10.273,9.953,9.590,9.194,8.844,8.592,8.394,
-8.149,7.803,7.392,6.992,6.647,6.358,6.106,5.861,5.575,5.206,4.768,4.323,3.925,3.570,3.232,2.932,
-2.723,2.593,2.423,2.097,1.648,1.258,1.074,1.060,1.052,.939,.757,.600,.490,.385,.267,.175,
-.124,.044,-.156,-.480,-.830,-1.112,-1.329,-1.538,-1.765,-1.971,-2.122,-2.238,-2.361,-2.495,-2.608,-2.679,
--2.735,-2.824,-2.958,-3.106,-3.229,-3.318,-3.407,-3.553,-3.808,-4.173,-4.592,-4.983,-5.300,-5.564,-5.825,-6.101,
--6.375,-6.632,-6.888,-7.170,-7.468,-7.738,-7.953,-8.122,-8.272,-8.414,-8.542,-8.656,-8.773,-8.901,-9.025,-9.127,
--9.207,-9.278,-9.344,-9.399,-9.441,-9.487,-9.550,-9.626,-9.702,-9.778,-9.869,-9.969,-10.049,-10.094,-10.127,-10.194,
--10.315,-10.461,-10.589,-10.681,-10.747,-10.806,-10.874,-10.973,-11.113,-11.269,-11.395,-11.472,-11.541,-11.653,-11.803,-11.929,
--11.996,-12.044,-12.139,-12.278,-12.385,-12.406,-12.373,-12.361,-12.392,-12.421,-12.411,-12.383,-12.377,-12.374,-12.321,-12.210,
--12.106,-12.074,-12.090,-12.067,-11.966,-11.838,-11.760,-11.744,-11.739,-11.698,-11.617,-11.521,-11.430,-11.356,-11.313,-11.307,
--11.309,-11.275,-11.198,-11.113,-11.057,-11.023,-10.977,-10.907,-10.839,-10.802,-10.800,-10.820,-10.852,-10.883,-10.889,-10.854,
--10.801,-10.783,-10.822,-10.877,-10.890,-10.850,-10.808,-10.804,-10.821,-10.816,-10.779,-10.741,-10.722,-10.707,-10.672,-10.624,
--10.592,-10.583,-10.573,-10.543,-10.499,-10.459,-10.423,-10.374,-10.308,-10.237,-10.171,-10.111,-10.055,-10.005,-9.953,-9.879,
--9.778,-9.677,-9.609,-9.565,-9.495,-9.367,-9.215,-9.101,-9.041,-8.996,-8.933,-8.873,-8.851,-8.858,-8.848,-8.802,
--8.749,-8.727,-8.722,-8.689,-8.616,-8.530,-8.453,-8.372,-8.268,-8.160,-8.080,-8.025,-7.959,-7.863,-7.766,-7.696,
--7.635,-7.540,-7.415,-7.309,-7.253,-7.212,-7.132,-7.010,-6.896,-6.812,-6.731,-6.624,-6.515,-6.447,-6.411,-6.353,
--6.245,-6.134,-6.076,-6.056,-6.005,-5.889,-5.753,-5.657,-5.606,-5.560,-5.499,-5.447,-5.421,-5.396,-5.331,-5.223,
--5.101,-4.989,-4.881,-4.772,-4.675,-4.599,-4.518,-4.404,-4.261,-4.115,-3.974,-3.805,-3.585,-3.347,-3.137,-2.964,
--2.782,-2.565,-2.338,-2.141,-1.968,-1.773,-1.541,-1.312,-1.133,-1.004,-.897,-.812,-.780,-.801,-.815,-.761,
--.640,-.514,-.425,-.364,-.294,-.207,-.119,-.034,.063,.178,.296,.406,.519,.645,.769,.872,
-.985,1.171,1.459,1.785,2.056,2.247,2.427,2.669,2.965,3.241,3.456,3.649,3.890,4.202,4.553,4.894,
-5.216,5.533,5.853,6.165,6.448,6.697,6.931,7.190,7.508,7.881,8.274,8.650,9.001,9.343,9.682,10.024,
-10.398,10.852,11.387,11.918,12.338,12.637,12.918,13.275,13.688,14.073,14.416,14.790,15.220,15.607,15.841,15.942,
-15.943,15.637,14.620,12.814,10.947,10.303,11.787,15.185,19.414,23.480,27.091,30.316,32.908,34.232,33.935,32.472,
-30.768,29.360,28.031,26.343,24.388,22.846,22.320,22.742,23.509,24.121,24.561,25.073,25.684,26.081,25.954,25.424,
-25.045,25.341,26.300,27.310,27.627,26.976,25.744,24.590,23.858,23.371,22.748,21.865,20.952,20.287,19.895,19.574,
-19.167,18.706,18.302,17.978,17.665,17.336,17.057,16.902,16.861,16.860,16.852,16.845,16.853,16.863,16.851,16.811,
-16.740,16.624,16.457,16.264,16.079,15.893,15.661,15.374,15.088,14.863,14.671,14.412,14.030,13.587,13.199,12.898,
-12.604,12.197,11.633,10.958,10.250,9.559,8.883,8.175,7.402,6.618,5.997,5.720,5.784,5.905,5.652,4.743,
-3.248,1.530,-.001,-1.106,-1.786,-2.201,-2.541,-2.925,-3.342,-3.695,-3.908,-4.012,-4.119,-4.318,-4.605,-4.923,
--5.247,-5.609,-6.046,-6.534,-7.004,-7.391,-7.671,-7.852,-7.946,-7.955,-7.877,-7.725,-7.543,-7.414,-7.424,-7.602,
--7.882,-8.129,-8.221,-8.115,-7.866,-7.593,-7.417,-7.397,-7.481,-7.534,-7.442,-7.201,-6.906,-6.644,-6.406,-6.134,
--5.812,-5.480,-5.140,-4.700,-4.060,-3.245,-2.421,-1.754,-1.270,-.866,-.441,.003,.391,.661,.814,.908,
-1.029,1.257,1.601,1.972,2.243,2.363,2.408,2.501,2.681,2.886,3.047,3.172,3.318,3.520,3.785,4.133,
-4.585,5.083,5.469,5.602,5.506,5.359,5.332,5.446,5.618,5.795,6.003,6.270,6.565,6.842,7.120,7.454,
-7.837,8.173,8.381,8.498,8.646,8.899,9.219,9.527,9.801,10.078,10.373,10.642,10.841,10.987,11.145,11.352,
-11.587,11.801,11.973,12.122,12.283,12.475,12.695,12.919,13.118,13.285,13.443,13.619,13.812,13.984,14.108,14.201,
-14.310,14.459,14.624,14.772,14.899,15.033,15.197,15.390,15.591,15.770,15.903,15.986,16.049,16.140,16.274,16.392,
-16.414,16.327,16.209,16.137,16.101,16.020,15.859,15.690,15.609,15.618,15.627,15.565,15.466,15.408,15.413,15.428,
-15.411,15.381,15.383,15.414,15.433,15.426,15.419,15.422,15.403,15.342,15.298,15.361,15.537,15.722,15.816,15.850,
-15.947,16.170,16.444,16.659,16.815,17.026,17.384,17.841,18.258,18.517,18.594,18.548,18.499,18.591,18.907,19.381,
-19.818,20.042,20.042,19.923,19.764,19.573,19.430,19.543,20.044,20.427,20.724,20.685,20.307,20.051,20.500,21.694,
-22.922,23.308,22.653,21.634,21.138,21.467,22.209,22.772,22.933,22.854,22.753,22.686,22.621,22.571,22.583,22.660,
-22.763,22.890,23.064,23.263,23.404,23.464,23.543,23.761,24.088,24.348,24.405,24.327,24.301,24.434,24.661,24.855,
-24.967,25.032,25.099,25.199,25.372,25.657,26.019,26.341,26.531,26.624,26.737,26.921,27.104,27.201,27.249,27.381,
-27.673,28.049,28.362,28.538,28.637,28.806,29.177,29.785,30.501,31.047,31.164,30.852,30.447,30.383,30.832,31.568,
-32.208,32.562,32.719,32.850,33.015,33.205,33.494,34.044,34.923,35.953,36.798,37.196,37.119,36.743,36.311,36.005,
-35.859,35.752,35.503,35.047,34.524,34.164,34.062,34.100,34.105,34.042,33.993,33.982,33.892,33.639,33.343,33.250,
-33.448,33.733,33.800,33.533,33.060,32.548,32.033,31.496,31.017,30.761,30.775,30.865,30.733,30.207,29.336,28.280,
-27.185,26.163,25.313,24.693,24.263,23.914,23.578,23.289,23.110,23.039,23.023,23.040,23.124,23.308,23.563,23.845,
-24.162,24.543,24.946,25.243,25.332,25.236,25.040,24.738,24.203,23.323,22.173,20.979,19.956,19.178,18.619,18.245,
-18.039,17.969,17.980,18.037,18.144,18.283,18.402,18.469,18.549,18.755,19.124,19.563,19.953,20.267,20.559,20.853,
-21.124,21.407,21.864,22.659,23.752,24.871,25.711,26.164,26.327,26.332,26.238,26.068,25.874,25.711,25.558,25.326,
-24.966,24.527,24.100,23.736,23.434,23.192,23.010,22.845,22.620,22.300,21.946,21.653,21.446,21.270,21.084,20.914,
-20.799,20.709,20.581,20.405,20.237,20.115,19.992,19.811,19.607,19.493,19.540,19.710,19.911,20.083,20.216,20.315,
-20.412,20.564,20.786,20.988,21.053,21.024,21.122,21.479,21.871,21.876,21.375,20.788,20.673,21.082,21.486,21.397,
-20.956,20.717,20.909,21.109,20.761,19.879,19.037,18.660,18.544,18.176,17.423,16.692,16.419,16.551,16.664,16.479,
-16.114,15.833,15.701,15.589,15.414,15.247,15.174,15.147,15.056,14.880,14.694,14.545,14.397,14.211,14.021,13.882,
-13.779,13.634,13.407,13.147,12.914,12.710,12.492,12.254,12.028,11.826,11.609,11.337,11.021,10.707,10.420,10.141,
-9.853,9.559,9.262,8.957,8.645,8.358,8.122,7.912,7.675,7.384,7.071,6.765,6.452,6.107,5.759,5.483,
-5.307,5.160,4.948,4.657,4.358,4.105,3.868,3.583,3.248,2.916,2.622,2.326,1.970,1.545,1.095,.649,
-.199,-.277,-.776,-1.282,-1.787,-2.290,-2.778,-3.237,-3.683,-4.153,-4.662,-5.172,-5.633,-6.038,-6.414,-6.789,
--7.167,-7.566,-8.023,-8.538,-9.038,-9.432,-9.728,-10.056,-10.537,-11.142,-11.726,-12.183,-12.559,-12.970,-13.449,-13.912,
--14.254,-14.452,-14.555,-14.606,-14.635,-14.706,-14.925,-15.378,-16.050,-16.838,-17.625,-18.339,-18.959,-19.500,-20.010,-20.547,
--21.134,-21.734,-22.289,-22.779,-23.240,-23.707,-24.174,-24.606,-24.988,-25.327,-25.631,-25.913,-26.214,-26.596,-27.077,-27.611,
--28.135,-28.639,-29.131,-29.541,-29.728,-29.631,-29.400,-29.304,-29.477,-29.806,-30.100,-30.335,-30.650,-31.125,-31.639,-32.011,
--32.235,-32.494,-32.918,-33.409,-33.756,-33.884,-33.949,-34.171,-34.627,-35.195,-35.668,-35.884,-35.821,-35.655,-35.704,-36.225,
--37.194,-38.299,-39.198,-39.791,-40.195,-40.501,-40.651,-40.585,-40.436,-40.454,-40.715,-41.007,-41.046,-40.791,-40.472,-40.329,
--40.389,-40.517,-40.600,-40.628,-40.629,-40.616,-40.605,-40.628,-40.673,-40.660,-40.525,-40.306,-40.106,-39.952,-39.776,-39.534,
--39.305,-39.198,-39.200,-39.183,-39.092,-39.024,-39.076,-39.169,-39.113,-38.856,-38.558,-38.385,-38.281,-38.029,-37.513,-36.823,
--36.104,-35.417,-34.817,-34.473,-34.522,-34.747,-34.545,-33.399,-31.414,-29.312,-27.844,-27.215,-27.085,-27.024,-26.869,-26.679,
--26.512,-26.344,-26.164,-26.014,-25.909,-25.785,-25.600,-25.439,-25.458,-25.686,-25.954,-26.036,-25.887,-25.688,-25.681,-25.937,
--26.268,-26.330,-25.859,-24.889,-23.809,-23.141,-23.168,-23.695,-24.174,-24.127,-23.490,-22.590,-21.822,-21.351,-21.076,-20.805,
--20.430,-19.980,-19.571,-19.332,-19.332,-19.537,-19.820,-20.044,-20.135,-20.100,-19.969,-19.751,-19.435,-19.024,-18.562,-18.116,
--17.724,-17.344,-16.828,-16.000,-14.821,-13.514,-12.493,-12.078,-12.249,-12.649,-12.867,-12.716,-12.264,-11.652,-10.925,-10.037,
--8.952,-7.703,-6.365,-5.005,-3.681,-2.456,-1.384,-.492,.223,.788,1.259,1.710,2.182,2.652,3.088,3.581,
-4.343,5.501,6.868,7.998,8.556,8.643,8.698,9.063,9.689,10.301,10.776,11.266,11.919,12.602,12.996,12.950,
-12.659,12.439,12.392,12.367,12.231,12.077,12.135,12.521,13.151,13.876,14.651,15.518,16.500,17.538,18.536,19.393,
-20.025,20.415,20.681,21.048,21.657,22.408,23.045,23.432,23.708,24.125,24.751,25.426,25.988,26.480,27.050,27.693,
-28.226,28.533,28.762,29.156,29.709,30.098,30.024,29.577,29.164,29.042,28.984,28.455,27.127,25.234,23.430,22.324,
-22.107,22.516,23.071,23.399,23.418,23.306,23.295,23.460,23.688,23.847,23.975,24.264,24.825,25.499,25.949,25.991,
-25.827,25.908,26.523,27.510,28.395,28.829,28.880,28.913,29.197,29.669,30.069,30.253,30.318,30.431,30.626,30.804,
-30.912,31.019,31.203,31.411,31.506,31.432,31.271,31.134,31.049,31.013,31.082,31.321,31.642,31.826,31.801,31.868,
-32.498,33.807,35.300,36.246,36.343,35.986,35.832,36.164,36.705,37.017,36.979,36.856,36.971,37.395,37.953,38.432,
-38.761,39.004,39.256,39.551,39.842,40.070,40.254,40.509,40.948,41.535,42.063,42.319,42.272,42.077,41.904,41.793,
-41.693,41.595,41.561,41.634,41.765,41.879,41.979,42.128,42.343,42.546,42.653,42.676,42.703,42.792,42.918,43.028,
-43.121,43.252,43.478,43.810,44.194,44.508,44.613,44.467,44.204,44.006,43.817,43.170,41.390,38.071,33.418,28.181,
-23.321,19.704,17.944,18.261,20.297,23.142,25.733,27.443,28.352,28.941,29.534,30.045,30.204,29.932,29.435,28.966,
-28.565,28.061,27.300,26.341,25.445,24.884,24.712,24.699,24.469,23.783,22.740,21.712,21.036,20.748,20.605,20.356,
-19.963,19.572,19.283,19.034,18.691,18.212,17.678,17.179,16.718,16.253,15.786,15.373,15.034,14.698,14.260,13.690,
-13.064,12.498,12.071,11.802,11.658,11.566,11.428,11.173,10.819,10.453,10.147,9.883,9.588,9.225,8.842,8.517,
-8.268,8.037,7.751,7.384,6.968,6.563,6.231,5.997,5.825,5.624,5.311,4.887,4.429,4.008,3.629,3.271,
-2.955,2.738,2.608,2.449,2.140,1.706,1.316,1.116,1.084,1.073,.976,.808,.645,.517,.402,.292,
-.207,.141,.030,-.188,-.497,-.814,-1.080,-1.310,-1.545,-1.780,-1.978,-2.123,-2.252,-2.409,-2.586,-2.747,
--2.873,-2.981,-3.098,-3.220,-3.319,-3.377,-3.401,-3.434,-3.537,-3.769,-4.137,-4.577,-4.989,-5.315,-5.580,-5.843,
--6.124,-6.394,-6.630,-6.861,-7.134,-7.451,-7.762,-8.019,-8.220,-8.393,-8.552,-8.688,-8.800,-8.907,-9.031,-9.164,
--9.282,-9.371,-9.434,-9.481,-9.522,-9.566,-9.624,-9.693,-9.754,-9.795,-9.835,-9.906,-10.015,-10.124,-10.199,-10.245,
--10.297,-10.378,-10.476,-10.568,-10.648,-10.727,-10.811,-10.904,-11.015,-11.152,-11.299,-11.424,-11.516,-11.609,-11.735,-11.881,
--11.993,-12.049,-12.096,-12.186,-12.302,-12.373,-12.364,-12.325,-12.326,-12.368,-12.393,-12.369,-12.333,-12.325,-12.322,-12.266,
--12.152,-12.049,-12.007,-11.993,-11.936,-11.834,-11.767,-11.795,-11.874,-11.895,-11.802,-11.633,-11.467,-11.349,-11.275,-11.232,
--11.209,-11.184,-11.129,-11.046,-10.966,-10.914,-10.879,-10.831,-10.766,-10.713,-10.696,-10.707,-10.731,-10.768,-10.819,-10.854,
--10.841,-10.789,-10.756,-10.786,-10.856,-10.898,-10.882,-10.845,-10.832,-10.843,-10.840,-10.809,-10.776,-10.761,-10.748,-10.711,
--10.657,-10.622,-10.623,-10.636,-10.621,-10.573,-10.519,-10.481,-10.453,-10.412,-10.344,-10.260,-10.186,-10.143,-10.123,-10.090,
--10.007,-9.882,-9.766,-9.701,-9.669,-9.610,-9.492,-9.349,-9.238,-9.169,-9.105,-9.026,-8.963,-8.951,-8.968,-8.956,
--8.894,-8.822,-8.783,-8.765,-8.724,-8.649,-8.572,-8.515,-8.454,-8.358,-8.237,-8.132,-8.054,-7.984,-7.908,-7.847,
--7.820,-7.795,-7.723,-7.596,-7.466,-7.376,-7.309,-7.223,-7.112,-7.017,-6.959,-6.908,-6.824,-6.718,-6.626,-6.554,
--6.472,-6.363,-6.264,-6.216,-6.199,-6.154,-6.049,-5.924,-5.831,-5.775,-5.720,-5.651,-5.593,-5.567,-5.551,-5.504,
--5.413,-5.299,-5.182,-5.062,-4.942,-4.831,-4.732,-4.626,-4.497,-4.359,-4.240,-4.131,-3.987,-3.776,-3.528,-3.300,
--3.114,-2.937,-2.740,-2.531,-2.334,-2.143,-1.933,-1.707,-1.506,-1.359,-1.249,-1.147,-1.061,-1.024,-1.028,-1.012,
--.925,-.790,-.675,-.609,-.555,-.466,-.353,-.259,-.200,-.145,-.057,.064,.197,.330,.462,.584,
-.698,.839,1.060,1.364,1.679,1.930,2.125,2.343,2.636,2.961,3.235,3.441,3.646,3.916,4.241,4.565,
-4.863,5.162,5.485,5.809,6.087,6.314,6.531,6.787,7.095,7.443,7.816,8.204,8.597,8.978,9.337,9.681,
-10.035,10.435,10.900,11.402,11.878,12.273,12.595,12.904,13.241,13.582,13.897,14.209,14.572,14.972,15.313,15.534,
-15.667,15.697,15.364,14.284,12.447,10.601,9.964,11.369,14.622,18.738,22.768,26.342,29.447,31.897,33.249,33.267,
-32.281,30.906,29.457,27.761,25.622,23.338,21.621,20.976,21.265,21.910,22.490,23.047,23.826,24.806,25.581,25.732,
-25.296,24.824,24.927,25.717,26.677,27.080,26.605,25.559,24.522,23.803,23.244,22.532,21.609,20.727,20.140,19.821,
-19.536,19.120,18.624,18.188,17.860,17.572,17.272,17.000,16.834,16.796,16.846,16.935,17.037,17.133,17.187,17.170,
-17.074,16.911,16.711,16.517,16.372,16.265,16.116,15.843,15.465,15.103,14.858,14.689,14.450,14.050,13.555,13.108,
-12.770,12.458,12.034,11.447,10.766,10.100,9.494,8.891,8.190,7.361,6.536,5.967,5.830,6.019,6.126,5.690,
-4.527,2.869,1.180,-.147,-.997,-1.497,-1.859,-2.237,-2.668,-3.090,-3.420,-3.634,-3.797,-4.008,-4.305,-4.634,
--4.923,-5.165,-5.431,-5.788,-6.230,-6.683,-7.070,-7.358,-7.559,-7.690,-7.746,-7.713,-7.588,-7.412,-7.271,-7.250,
--7.381,-7.614,-7.851,-8.001,-8.016,-7.901,-7.714,-7.549,-7.481,-7.494,-7.486,-7.361,-7.131,-6.903,-6.747,-6.609,
--6.376,-6.006,-5.562,-5.094,-4.558,-3.876,-3.084,-2.352,-1.846,-1.571,-1.381,-1.124,-.761,-.353,.017,.292,
-.459,.560,.687,.928,1.279,1.645,1.926,2.115,2.282,2.481,2.702,2.913,3.121,3.353,3.613,3.884,
-4.181,4.543,4.965,5.342,5.552,5.580,5.542,5.573,5.713,5.916,6.142,6.397,6.681,6.959,7.206,7.458,
-7.770,8.129,8.443,8.643,8.775,8.952,9.230,9.558,9.865,10.144,10.441,10.765,11.057,11.261,11.394,11.533,
-11.733,11.979,12.213,12.398,12.546,12.695,12.874,13.083,13.298,13.490,13.653,13.813,13.994,14.189,14.362,14.494,
-14.604,14.728,14.872,15.011,15.126,15.236,15.372,15.545,15.733,15.910,16.058,16.162,16.215,16.237,16.276,16.354,
-16.427,16.426,16.339,16.246,16.226,16.260,16.248,16.131,15.962,15.838,15.783,15.740,15.660,15.572,15.535,15.548,
-15.551,15.510,15.453,15.424,15.416,15.393,15.354,15.332,15.336,15.330,15.301,15.303,15.400,15.573,15.724,15.807,
-15.901,16.113,16.429,16.710,16.870,16.995,17.261,17.730,18.276,18.695,18.865,18.778,18.521,18.269,18.251,18.612,
-19.237,19.773,19.919,19.699,19.414,19.330,19.469,19.722,20.044,20.723,20.669,20.434,20.065,19.728,19.811,20.613,
-21.871,22.782,22.681,21.732,20.819,20.719,21.413,22.251,22.684,22.709,22.645,22.665,22.674,22.573,22.449,22.453,
-22.593,22.750,22.857,22.972,23.149,23.330,23.428,23.464,23.544,23.706,23.864,23.932,23.952,24.041,24.241,24.468,
-24.633,24.737,24.838,24.964,25.109,25.292,25.559,25.891,26.182,26.350,26.443,26.582,26.801,27.002,27.084,27.088,
-27.159,27.377,27.677,27.937,28.096,28.191,28.306,28.556,29.057,29.818,30.624,31.114,31.085,30.724,30.481,30.672,
-31.227,31.845,32.328,32.697,33.014,33.211,33.206,33.124,33.306,34.016,35.157,36.299,36.990,37.038,36.571,35.901,
-35.329,34.986,34.783,34.516,34.076,33.564,33.185,33.015,32.927,32.774,32.591,32.550,32.708,32.897,32.907,32.748,
-32.638,32.729,32.923,32.984,32.794,32.420,31.971,31.483,30.992,30.621,30.511,30.612,30.651,30.331,29.580,28.564,
-27.503,26.523,25.671,24.984,24.483,24.122,23.822,23.560,23.387,23.337,23.358,23.369,23.375,23.468,23.708,24.056,
-24.439,24.861,25.361,25.891,26.286,26.396,26.224,25.870,25.375,24.663,23.672,22.495,21.347,20.401,19.695,19.182,
-18.832,18.640,18.579,18.601,18.673,18.783,18.906,18.998,19.061,19.186,19.467,19.886,20.313,20.658,20.958,21.293,
-21.633,21.866,21.995,22.264,22.977,24.194,25.620,26.820,27.529,27.763,27.692,27.476,27.221,26.981,26.765,26.524,
-26.196,25.779,25.335,24.922,24.555,24.232,23.966,23.762,23.570,23.318,23.004,22.711,22.509,22.370,22.210,22.010,
-21.838,21.740,21.662,21.514,21.298,21.099,20.967,20.846,20.668,20.464,20.344,20.379,20.530,20.720,20.903,21.063,
-21.188,21.299,21.464,21.711,21.937,21.994,21.917,21.956,22.283,22.677,22.679,22.148,21.534,21.451,21.960,22.455,
-22.342,21.716,21.197,21.143,21.218,20.853,19.981,19.114,18.697,18.588,18.315,17.713,17.115,16.897,17.012,17.083,
-16.880,16.540,16.311,16.238,16.172,16.028,15.879,15.804,15.748,15.602,15.359,15.127,14.976,14.863,14.715,14.537,
-14.384,14.257,14.097,13.863,13.596,13.359,13.162,12.964,12.739,12.502,12.263,12.008,11.725,11.433,11.160,10.899,
-10.616,10.299,9.975,9.673,9.391,9.114,8.850,8.616,8.395,8.142,7.835,7.503,7.185,6.878,6.558,6.237,
-5.970,5.779,5.612,5.394,5.115,4.835,4.595,4.361,4.075,3.745,3.432,3.163,2.886,2.530,2.095,1.646,
-1.232,.825,.369,-.150,-.688,-1.193,-1.653,-2.094,-2.550,-3.034,-3.537,-4.031,-4.492,-4.916,-5.324,-5.733,
--6.130,-6.502,-6.879,-7.324,-7.856,-8.396,-8.833,-9.151,-9.462,-9.899,-10.478,-11.093,-11.634,-12.085,-12.495,-12.889,
--13.233,-13.494,-13.676,-13.804,-13.892,-13.958,-14.078,-14.364,-14.890,-15.623,-16.443,-17.229,-17.920,-18.517,-19.054,-19.579,
--20.130,-20.709,-21.285,-21.820,-22.311,-22.777,-23.230,-23.669,-24.096,-24.525,-24.946,-25.323,-25.643,-25.963,-26.366,-26.856,
--27.339,-27.739,-28.104,-28.547,-29.076,-29.546,-29.816,-29.925,-30.037,-30.229,-30.396,-30.426,-30.410,-30.577,-31.027,-31.595,
--32.044,-32.332,-32.622,-33.024,-33.428,-33.637,-33.634,-33.625,-33.832,-34.285,-34.834,-35.301,-35.582,-35.675,-35.687,-35.833,
--36.320,-37.163,-38.131,-38.941,-39.508,-39.956,-40.381,-40.697,-40.765,-40.638,-40.563,-40.707,-40.945,-40.990,-40.717,-40.304,
--40.042,-40.066,-40.286,-40.525,-40.673,-40.721,-40.709,-40.687,-40.680,-40.666,-40.587,-40.422,-40.229,-40.078,-39.960,-39.788,
--39.525,-39.263,-39.123,-39.110,-39.116,-39.070,-39.022,-39.050,-39.111,-39.080,-38.911,-38.702,-38.551,-38.413,-38.140,-37.646,
--36.968,-36.184,-35.369,-34.672,-34.328,-34.432,-34.656,-34.356,-33.084,-31.053,-29.020,-27.669,-27.118,-27.002,-26.930,-26.784,
--26.640,-26.548,-26.489,-26.454,-26.466,-26.493,-26.433,-26.248,-26.065,-26.071,-26.296,-26.552,-26.624,-26.507,-26.404,-26.506,
--26.779,-26.956,-26.725,-25.971,-24.887,-23.911,-23.472,-23.690,-24.250,-24.612,-24.391,-23.621,-22.665,-21.886,-21.404,-21.108,
--20.837,-20.511,-20.147,-19.808,-19.571,-19.501,-19.609,-19.827,-20.035,-20.141,-20.128,-20.032,-19.884,-19.671,-19.351,-18.909,
--18.401,-17.920,-17.501,-17.023,-16.272,-15.157,-13.899,-12.959,-12.691,-13.023,-13.506,-13.684,-13.431,-12.927,-12.355,-11.697,
--10.800,-9.604,-8.224,-6.834,-5.524,-4.289,-3.121,-2.053,-1.127,-.347,.317,.897,1.410,1.867,2.281,2.705,
-3.258,4.093,5.254,6.548,7.621,8.226,8.452,8.626,8.997,9.532,10.046,10.478,10.936,11.482,11.955,12.107,
-11.897,11.558,11.353,11.308,11.268,11.160,11.123,11.355,11.890,12.585,13.315,14.083,14.956,15.931,16.927,17.863,
-18.678,19.300,19.684,19.927,20.273,20.911,21.766,22.550,23.070,23.429,23.877,24.506,25.165,25.698,26.143,26.638,
-27.175,27.581,27.757,27.856,28.093,28.443,28.625,28.461,28.132,27.987,28.077,27.980,27.162,25.521,23.546,21.963,
-21.238,21.355,21.936,22.516,22.778,22.691,22.501,22.532,22.906,23.414,23.728,23.744,23.718,23.990,24.600,25.213,
-25.462,25.335,25.188,25.372,25.897,26.478,26.890,27.202,27.646,28.303,28.980,29.421,29.581,29.647,29.806,30.052,
-30.258,30.383,30.521,30.751,30.992,31.083,30.969,30.761,30.600,30.529,30.533,30.649,30.929,31.284,31.493,31.469,
-31.494,32.049,33.308,34.828,35.861,36.020,35.616,35.321,35.519,36.021,36.372,36.356,36.167,36.156,36.486,37.032,
-37.560,37.942,38.211,38.477,38.792,39.118,39.393,39.628,39.923,40.363,40.898,41.347,41.557,41.530,41.403,41.298,
-41.235,41.191,41.183,41.252,41.383,41.502,41.575,41.672,41.882,42.177,42.410,42.474,42.416,42.381,42.445,42.559,
-42.654,42.758,42.975,43.359,43.826,44.200,44.333,44.207,43.953,43.759,43.683,43.465,42.537,40.302,36.530,31.586,
-26.320,21.746,18.723,17.730,18.708,21.033,23.739,25.976,27.411,28.244,28.846,29.383,29.758,29.825,29.584,29.161,
-28.679,28.175,27.617,26.941,26.109,25.200,24.450,24.124,24.232,24.389,24.074,23.099,21.823,20.830,20.397,20.292,
-20.105,19.689,19.230,18.934,18.753,18.470,17.974,17.383,16.869,16.465,16.073,15.631,15.192,14.819,14.477,14.054,
-13.503,12.900,12.373,11.991,11.743,11.576,11.434,11.257,10.995,10.656,10.310,10.029,9.805,9.555,9.212,8.799,
-8.410,8.110,7.885,7.659,7.354,6.953,6.510,6.128,5.888,5.776,5.673,5.449,5.066,4.593,4.123,3.692,
-3.296,2.955,2.713,2.561,2.397,2.112,1.716,1.345,1.128,1.065,1.046,.976,.847,.701,.555,.406,
-.263,.151,.061,-.061,-.261,-.530,-.814,-1.078,-1.329,-1.574,-1.790,-1.952,-2.077,-2.215,-2.396,-2.606,
--2.808,-2.992,-3.164,-3.323,-3.447,-3.521,-3.549,-3.550,-3.553,-3.604,-3.768,-4.075,-4.483,-4.892,-5.228,-5.505,
--5.778,-6.071,-6.352,-6.592,-6.819,-7.084,-7.400,-7.723,-8.006,-8.245,-8.459,-8.649,-8.796,-8.897,-8.984,-9.095,
--9.237,-9.382,-9.496,-9.568,-9.602,-9.618,-9.643,-9.697,-9.775,-9.844,-9.881,-9.904,-9.959,-10.065,-10.196,-10.306,
--10.379,-10.429,-10.477,-10.526,-10.580,-10.652,-10.753,-10.874,-10.996,-11.113,-11.237,-11.370,-11.494,-11.601,-11.705,-11.826,
--11.947,-12.035,-12.084,-12.134,-12.217,-12.303,-12.332,-12.295,-12.256,-12.273,-12.328,-12.348,-12.301,-12.231,-12.186,-12.157,
--12.101,-12.018,-11.955,-11.935,-11.910,-11.833,-11.740,-11.723,-11.811,-11.907,-11.884,-11.716,-11.500,-11.350,-11.293,-11.274,
--11.235,-11.162,-11.063,-10.957,-10.868,-10.825,-10.826,-10.834,-10.809,-10.757,-10.717,-10.712,-10.724,-10.731,-10.739,-10.770,
--10.809,-10.812,-10.767,-10.721,-10.733,-10.800,-10.862,-10.873,-10.849,-10.835,-10.842,-10.845,-10.829,-10.808,-10.800,-10.794,
--10.763,-10.713,-10.677,-10.680,-10.701,-10.698,-10.653,-10.588,-10.538,-10.510,-10.482,-10.431,-10.357,-10.287,-10.248,-10.236,
--10.209,-10.127,-9.997,-9.872,-9.796,-9.756,-9.697,-9.586,-9.454,-9.349,-9.277,-9.211,-9.137,-9.087,-9.084,-9.098,
--9.071,-8.988,-8.893,-8.834,-8.805,-8.766,-8.700,-8.631,-8.575,-8.509,-8.407,-8.282,-8.170,-8.087,-8.013,-7.937,
--7.878,-7.853,-7.836,-7.775,-7.657,-7.530,-7.436,-7.366,-7.284,-7.184,-7.102,-7.062,-7.034,-6.971,-6.866,-6.747,
--6.637,-6.525,-6.408,-6.312,-6.264,-6.248,-6.215,-6.134,-6.026,-5.928,-5.849,-5.775,-5.705,-5.659,-5.644,-5.632,
--5.590,-5.511,-5.411,-5.304,-5.188,-5.063,-4.941,-4.823,-4.696,-4.555,-4.423,-4.329,-4.255,-4.139,-3.936,-3.670,
--3.412,-3.207,-3.045,-2.892,-2.728,-2.545,-2.332,-2.090,-1.859,-1.690,-1.588,-1.508,-1.406,-1.300,-1.241,-1.229,
--1.199,-1.099,-.954,-.835,-.767,-.705,-.599,-.469,-.371,-.327,-.297,-.228,-.108,.040,.191,.335,
-.460,.574,.715,.931,1.225,1.539,1.811,2.049,2.315,2.630,2.945,3.203,3.420,3.665,3.968,4.280,
-4.548,4.794,5.090,5.451,5.802,6.067,6.258,6.463,6.748,7.095,7.452,7.802,8.164,8.549,8.933,9.286,
-9.617,9.953,10.314,10.694,11.083,11.483,11.902,12.328,12.728,13.069,13.347,13.602,13.894,14.248,14.618,14.938,
-15.196,15.409,15.475,15.073,13.875,11.985,10.193,9.644,11.078,14.305,18.398,22.396,25.824,28.626,30.783,32.140,
-32.585,32.210,31.199,29.596,27.356,24.662,22.110,20.411,19.859,20.132,20.645,21.107,21.687,22.662,23.954,25.064,
-25.493,25.219,24.765,24.758,25.386,26.237,26.669,26.347,25.469,24.485,23.662,22.935,22.129,21.251,20.499,20.014,
-19.714,19.394,18.953,18.471,18.074,17.783,17.522,17.240,16.984,16.837,16.833,16.940,17.100,17.266,17.401,17.470,
-17.443,17.309,17.081,16.811,16.581,16.447,16.372,16.230,15.922,15.491,15.102,14.877,14.756,14.558,14.163,13.636,
-13.139,12.759,12.424,11.999,11.423,10.758,10.117,9.540,8.959,8.266,7.453,6.692,6.243,6.232,6.453,6.439,
-5.771,4.394,2.659,1.059,-.096,-.808,-1.271,-1.681,-2.124,-2.586,-3.006,-3.340,-3.600,-3.848,-4.143,-4.487,
--4.818,-5.076,-5.274,-5.491,-5.792,-6.170,-6.557,-6.887,-7.142,-7.343,-7.509,-7.624,-7.645,-7.546,-7.362,-7.188,
--7.126,-7.218,-7.427,-7.671,-7.879,-7.995,-7.991,-7.871,-7.702,-7.565,-7.489,-7.411,-7.257,-7.038,-6.850,-6.751,
--6.674,-6.485,-6.125,-5.650,-5.128,-4.545,-3.849,-3.082,-2.403,-1.965,-1.770,-1.686,-1.563,-1.336,-1.010,-.621,
--.231,.083,.276,.400,.570,.856,1.203,1.502,1.701,1.855,2.039,2.282,2.562,2.865,3.194,3.541,
-3.876,4.197,4.540,4.923,5.298,5.576,5.721,5.789,5.873,6.020,6.222,6.462,6.731,7.011,7.264,7.478,
-7.695,7.967,8.290,8.593,8.827,9.025,9.262,9.565,9.891,10.196,10.494,10.824,11.178,11.489,11.705,11.847,
-11.988,12.181,12.416,12.647,12.846,13.015,13.179,13.358,13.556,13.759,13.946,14.106,14.256,14.416,14.586,14.746,
-14.884,15.011,15.140,15.265,15.370,15.460,15.563,15.701,15.860,16.010,16.141,16.259,16.358,16.413,16.421,16.422,
-16.457,16.508,16.518,16.466,16.405,16.402,16.442,16.438,16.335,16.171,16.028,15.930,15.840,15.732,15.643,15.610,
-15.610,15.578,15.496,15.409,15.366,15.351,15.326,15.292,15.289,15.329,15.375,15.402,15.445,15.551,15.697,15.823,
-15.927,16.093,16.377,16.691,16.893,16.971,17.098,17.447,17.987,18.504,18.809,18.862,18.720,18.444,18.136,18.001,
-18.222,18.736,19.202,19.324,19.173,19.123,19.443,20.020,20.516,20.723,21.092,20.561,20.015,19.660,19.638,20.140,
-21.215,22.453,23.097,22.681,21.570,20.695,20.703,21.405,22.110,22.384,22.368,22.402,22.545,22.588,22.427,22.243,
-22.260,22.466,22.667,22.765,22.857,23.046,23.270,23.385,23.367,23.333,23.385,23.499,23.605,23.712,23.885,24.121,
-24.332,24.461,24.551,24.679,24.850,25.015,25.171,25.375,25.646,25.914,26.106,26.252,26.438,26.675,26.862,26.922,
-26.916,26.975,27.145,27.357,27.531,27.660,27.770,27.864,27.989,28.308,28.979,29.919,30.746,31.080,30.913,30.626,
-30.613,30.951,31.447,31.942,32.444,32.957,33.320,33.346,33.112,33.015,33.449,34.428,35.540,36.255,36.286,35.718,
-34.896,34.189,33.781,33.595,33.398,33.033,32.559,32.158,31.900,31.665,31.328,30.970,30.824,31.007,31.356,31.599,
-31.634,31.596,31.642,31.764,31.829,31.755,31.563,31.289,30.943,30.579,30.340,30.329,30.431,30.344,29.828,28.917,
-27.853,26.858,26.004,25.286,24.720,24.335,24.094,23.919,23.780,23.717,23.754,23.830,23.873,23.910,24.051,24.357,
-24.774,25.222,25.704,26.264,26.848,27.268,27.356,27.101,26.611,25.952,25.090,24.004,22.806,21.697,20.817,20.176,
-19.716,19.403,19.233,19.182,19.208,19.284,19.393,19.502,19.579,19.655,19.831,20.167,20.586,20.938,21.185,21.446,
-21.823,22.224,22.446,22.474,22.630,23.340,24.719,26.425,27.906,28.795,29.080,28.977,28.717,28.432,28.159,27.871,
-27.520,27.084,26.601,26.131,25.699,25.291,24.909,24.594,24.364,24.172,23.947,23.690,23.475,23.341,23.225,23.041,
-22.803,22.613,22.521,22.455,22.317,22.111,21.931,21.817,21.700,21.511,21.298,21.191,21.252,21.428,21.630,21.809,
-21.952,22.056,22.157,22.340,22.632,22.897,22.939,22.779,22.719,23.001,23.438,23.527,23.036,22.366,22.157,22.548,
-22.973,22.805,22.070,21.379,21.170,21.214,20.959,20.245,19.454,18.990,18.800,18.524,18.029,17.564,17.404,17.475,
-17.472,17.253,16.980,16.853,16.854,16.812,16.661,16.500,16.417,16.343,16.160,15.877,15.626,15.490,15.411,15.282,
-15.086,14.884,14.708,14.521,14.286,14.032,13.810,13.621,13.421,13.178,12.908,12.638,12.372,12.111,11.866,11.639,
-11.395,11.092,10.739,10.399,10.121,9.888,9.648,9.380,9.107,8.843,8.566,8.249,7.908,7.583,7.287,6.998,
-6.707,6.442,6.229,6.043,5.832,5.578,5.314,5.066,4.816,4.527,4.210,3.912,3.651,3.377,3.032,2.623,
-2.211,1.830,1.440,.978,.439,-.108,-.594,-1.014,-1.429,-1.895,-2.415,-2.940,-3.417,-3.837,-4.232,-4.648,
--5.091,-5.521,-5.905,-6.270,-6.691,-7.202,-7.745,-8.212,-8.559,-8.871,-9.276,-9.834,-10.485,-11.111,-11.627,-12.013,
--12.289,-12.495,-12.675,-12.863,-13.056,-13.229,-13.385,-13.594,-13.959,-14.528,-15.259,-16.049,-16.803,-17.479,-18.076,-18.619,
--19.147,-19.689,-20.245,-20.792,-21.313,-21.813,-22.299,-22.764,-23.199,-23.627,-24.083,-24.561,-25.005,-25.381,-25.739,-26.162,
--26.650,-27.094,-27.403,-27.639,-27.964,-28.450,-29.004,-29.494,-29.909,-30.325,-30.741,-31.037,-31.140,-31.190,-31.433,-31.942,
--32.531,-32.964,-33.218,-33.450,-33.752,-34.014,-34.091,-34.033,-34.059,-34.313,-34.717,-35.093,-35.370,-35.611,-35.886,-36.207,
--36.579,-37.058,-37.667,-38.306,-38.833,-39.227,-39.608,-40.054,-40.458,-40.639,-40.586,-40.511,-40.611,-40.827,-40.898,-40.661,
--40.240,-39.921,-39.884,-40.076,-40.325,-40.505,-40.606,-40.675,-40.736,-40.765,-40.713,-40.554,-40.336,-40.146,-40.033,-39.940,
--39.750,-39.426,-39.073,-38.842,-38.793,-38.857,-38.940,-39.008,-39.061,-39.073,-39.004,-38.867,-38.728,-38.606,-38.435,-38.121,
--37.625,-36.950,-36.093,-35.112,-34.252,-33.859,-34.042,-34.376,-34.113,-32.802,-30.743,-28.765,-27.535,-27.092,-27.012,-26.917,
--26.750,-26.639,-26.642,-26.712,-26.806,-26.928,-27.043,-27.057,-26.929,-26.775,-26.764,-26.924,-27.107,-27.166,-27.133,-27.173,
--27.365,-27.567,-27.509,-27.019,-26.166,-25.229,-24.549,-24.340,-24.554,-24.886,-24.951,-24.540,-23.749,-22.868,-22.155,-21.682,
--21.372,-21.116,-20.849,-20.545,-20.220,-19.936,-19.788,-19.827,-19.998,-20.169,-20.229,-20.168,-20.054,-19.949,-19.831,-19.609,
--19.216,-18.685,-18.145,-17.680,-17.200,-16.480,-15.401,-14.186,-13.329,-13.201,-13.696,-14.289,-14.473,-14.146,-13.559,-12.944,
--12.257,-11.296,-10.004,-8.565,-7.221,-6.059,-4.995,-3.937,-2.891,-1.917,-1.042,-.246,.478,1.095,1.579,1.960,
-2.350,2.905,3.758,4.910,6.179,7.263,7.947,8.260,8.426,8.654,8.985,9.355,9.741,10.176,10.623,10.915,
-10.908,10.663,10.413,10.325,10.340,10.313,10.252,10.353,10.774,11.452,12.187,12.875,13.582,14.402,15.317,16.232,
-17.088,17.874,18.535,18.988,19.270,19.600,20.208,21.081,21.956,22.611,23.086,23.595,24.237,24.901,25.453,25.926,
-26.440,26.983,27.387,27.543,27.546,27.557,27.573,27.455,27.190,27.002,27.081,27.233,26.920,25.746,23.877,21.974,
-20.702,20.328,20.680,21.361,21.954,22.167,21.987,21.736,21.870,22.558,23.446,23.938,23.770,23.300,23.163,23.638,
-24.401,24.891,24.869,24.583,24.439,24.602,24.964,25.401,25.960,26.726,27.613,28.355,28.752,28.869,28.949,29.149,
-29.418,29.631,29.780,29.976,30.270,30.543,30.626,30.491,30.274,30.122,30.068,30.096,30.242,30.553,30.932,31.140,
-31.066,30.977,31.376,32.512,34.031,35.202,35.547,35.239,34.890,34.952,35.359,35.704,35.711,35.490,35.380,35.607,
-36.105,36.632,37.012,37.264,37.532,37.911,38.361,38.771,39.095,39.402,39.785,40.239,40.644,40.888,40.958,40.931,
-40.871,40.797,40.740,40.764,40.909,41.118,41.278,41.350,41.426,41.607,41.866,42.062,42.105,42.057,42.050,42.134,
-42.243,42.331,42.470,42.784,43.282,43.792,44.081,44.035,43.753,43.465,43.341,43.299,42.934,41.649,38.955,34.793,
-29.671,24.525,20.408,18.125,17.952,19.524,21.985,24.402,26.209,27.375,28.169,28.792,29.229,29.398,29.330,29.134,
-28.852,28.423,27.821,27.134,26.446,25.711,24.869,24.071,23.674,23.853,24.256,24.194,23.275,21.822,20.582,20.022,
-19.953,19.860,19.483,18.995,18.668,18.497,18.238,17.743,17.130,16.612,16.243,15.906,15.497,15.049,14.640,14.258,
-13.816,13.274,12.709,12.235,11.899,11.661,11.467,11.283,11.078,10.813,10.482,10.141,9.858,9.639,9.409,9.092,
-8.692,8.288,7.963,7.730,7.531,7.280,6.925,6.494,6.090,5.824,5.714,5.657,5.502,5.173,4.717,4.227,
-3.762,3.329,2.946,2.654,2.461,2.296,2.064,1.742,1.410,1.164,1.033,.967,.905,.821,.707,.554,
-.360,.160,.003,-.103,-.199,-.338,-.538,-.783,-1.055,-1.334,-1.588,-1.782,-1.915,-2.030,-2.183,-2.386,
--2.614,-2.841,-3.063,-3.276,-3.451,-3.561,-3.614,-3.647,-3.681,-3.711,-3.742,-3.829,-4.035,-4.360,-4.727,-5.059,
--5.347,-5.636,-5.948,-6.257,-6.533,-6.793,-7.075,-7.387,-7.694,-7.967,-8.211,-8.448,-8.669,-8.841,-8.950,-9.028,
--9.121,-9.251,-9.399,-9.536,-9.634,-9.682,-9.690,-9.692,-9.730,-9.814,-9.912,-9.980,-10.015,-10.057,-10.141,-10.261,
--10.382,-10.477,-10.540,-10.581,-10.607,-10.639,-10.706,-10.819,-10.957,-11.086,-11.189,-11.284,-11.390,-11.505,-11.617,-11.728,
--11.842,-11.947,-12.025,-12.077,-12.132,-12.205,-12.261,-12.255,-12.200,-12.162,-12.188,-12.244,-12.251,-12.174,-12.060,-11.966,
--11.902,-11.850,-11.810,-11.807,-11.829,-11.820,-11.751,-11.675,-11.673,-11.744,-11.778,-11.675,-11.461,-11.267,-11.195,-11.225,
--11.260,-11.230,-11.136,-11.017,-10.911,-10.847,-10.848,-10.901,-10.952,-10.954,-10.914,-10.882,-10.885,-10.897,-10.878,-10.838,
--10.818,-10.832,-10.842,-10.815,-10.774,-10.771,-10.822,-10.881,-10.899,-10.878,-10.858,-10.863,-10.877,-10.877,-10.864,-10.853,
--10.840,-10.813,-10.769,-10.732,-10.726,-10.742,-10.749,-10.724,-10.671,-10.613,-10.569,-10.536,-10.500,-10.450,-10.393,-10.347,
--10.315,-10.280,-10.213,-10.110,-10.002,-9.922,-9.863,-9.784,-9.665,-9.533,-9.430,-9.370,-9.327,-9.282,-9.249,-9.240,
--9.234,-9.188,-9.093,-8.989,-8.920,-8.888,-8.860,-8.813,-8.750,-8.675,-8.576,-8.452,-8.326,-8.231,-8.163,-8.093,
--8.005,-7.920,-7.863,-7.818,-7.746,-7.638,-7.529,-7.455,-7.403,-7.334,-7.238,-7.148,-7.096,-7.062,-7.006,-6.908,
--6.787,-6.665,-6.546,-6.430,-6.337,-6.285,-6.266,-6.244,-6.188,-6.102,-6.002,-5.901,-5.809,-5.740,-5.709,-5.703,
--5.685,-5.628,-5.536,-5.430,-5.321,-5.206,-5.093,-4.993,-4.902,-4.793,-4.658,-4.524,-4.428,-4.360,-4.257,-4.062,
--3.791,-3.512,-3.286,-3.123,-2.999,-2.879,-2.727,-2.520,-2.271,-2.041,-1.894,-1.825,-1.763,-1.656,-1.528,-1.443,
--1.415,-1.380,-1.278,-1.127,-.995,-.910,-.834,-.723,-.592,-.493,-.446,-.410,-.335,-.212,-.063,.091,
-.243,.382,.508,.651,.858,1.144,1.467,1.771,2.049,2.334,2.636,2.919,3.160,3.392,3.668,3.981,
-4.268,4.499,4.735,5.054,5.438,5.775,5.989,6.133,6.335,6.652,7.027,7.372,7.671,7.968,8.288,8.610,
-8.920,9.242,9.600,9.970,10.307,10.616,10.967,11.416,11.922,12.373,12.694,12.927,13.175,13.505,13.890,14.265,
-14.611,14.962,15.290,15.373,14.841,13.455,11.474,9.749,9.344,10.890,14.165,18.262,22.180,25.358,27.760,29.596,
-31.007,31.941,32.186,31.472,29.628,26.820,23.669,21.054,19.616,19.361,19.734,20.148,20.472,21.025,22.116,23.597,
-24.899,25.496,25.361,24.985,24.935,25.384,26.003,26.283,25.968,25.189,24.256,23.365,22.519,21.679,20.903,20.304,
-19.900,19.578,19.206,18.773,18.364,18.041,17.769,17.484,17.185,16.956,16.873,16.943,17.103,17.278,17.422,17.517,
-17.556,17.531,17.426,17.234,16.986,16.757,16.603,16.490,16.305,15.970,15.547,15.202,15.030,14.951,14.771,14.375,
-13.829,13.297,12.875,12.512,12.084,11.519,10.853,10.176,9.542,8.919,8.244,7.534,6.940,6.660,6.735,6.907,
-6.728,5.877,4.403,2.698,1.199,.119,-.606,-1.153,-1.652,-2.135,-2.592,-3.008,-3.379,-3.711,-4.023,-4.340,
--4.660,-4.955,-5.198,-5.403,-5.621,-5.894,-6.214,-6.532,-6.802,-7.017,-7.202,-7.380,-7.541,-7.634,-7.610,-7.474,
--7.309,-7.219,-7.262,-7.419,-7.623,-7.815,-7.949,-7.988,-7.913,-7.758,-7.595,-7.472,-7.361,-7.206,-7.008,-6.835,
--6.735,-6.658,-6.498,-6.199,-5.792,-5.321,-4.766,-4.092,-3.351,-2.689,-2.238,-2.005,-1.890,-1.785,-1.634,-1.401,
--1.063,-.638,-.217,.102,.310,.496,.735,1.002,1.212,1.342,1.475,1.706,2.039,2.401,2.728,3.030,
-3.344,3.694,4.074,4.487,4.927,5.360,5.720,5.962,6.103,6.205,6.325,6.490,6.703,6.954,7.216,7.451,
-7.649,7.840,8.071,8.349,8.640,8.919,9.200,9.509,9.844,10.175,10.489,10.815,11.174,11.539,11.853,12.082,
-12.255,12.422,12.612,12.817,13.021,13.222,13.421,13.615,13.804,13.997,14.196,14.392,14.566,14.713,14.843,14.971,
-15.099,15.226,15.352,15.474,15.579,15.661,15.740,15.841,15.964,16.080,16.169,16.254,16.372,16.519,16.638,16.689,
-16.701,16.729,16.783,16.811,16.774,16.695,16.628,16.581,16.505,16.371,16.214,16.082,15.975,15.856,15.719,15.615,
-15.578,15.569,15.522,15.431,15.358,15.349,15.377,15.389,15.386,15.413,15.486,15.563,15.607,15.648,15.732,15.856,
-15.977,16.099,16.276,16.520,16.739,16.847,16.910,17.107,17.514,17.973,18.250,18.296,18.279,18.347,18.443,18.426,
-18.301,18.237,18.325,18.459,18.522,18.643,19.099,19.944,20.824,21.260,21.092,20.825,20.045,19.540,19.468,19.787,
-20.511,21.625,22.789,23.365,22.961,21.905,21.023,20.882,21.324,21.783,21.948,21.981,22.130,22.342,22.367,22.152,
-21.946,21.990,22.239,22.463,22.568,22.674,22.891,23.136,23.243,23.190,23.126,23.175,23.314,23.457,23.597,23.787,
-24.021,24.215,24.322,24.408,24.554,24.750,24.914,25.026,25.154,25.359,25.611,25.847,26.066,26.310,26.556,26.714,
-26.745,26.733,26.795,26.944,27.096,27.208,27.324,27.470,27.578,27.614,27.747,28.258,29.205,30.250,30.913,31.018,
-30.830,30.744,30.906,31.205,31.550,32.008,32.621,33.211,33.486,33.383,33.206,33.367,33.989,34.780,35.272,35.180,
-34.564,33.749,33.090,32.761,32.663,32.538,32.203,31.700,31.213,30.832,30.459,29.971,29.438,29.102,29.126,29.418,
-29.735,29.932,30.053,30.196,30.365,30.487,30.521,30.480,30.379,30.218,30.051,29.995,30.091,30.170,29.944,29.263,
-28.257,27.210,26.312,25.579,24.979,24.537,24.300,24.230,24.222,24.215,24.236,24.317,24.426,24.514,24.614,24.818,
-25.166,25.603,26.064,26.565,27.148,27.741,28.142,28.181,27.851,27.262,26.491,25.529,24.381,23.170,22.081,21.234,
-20.632,20.220,19.961,19.832,19.799,19.823,19.889,19.988,20.084,20.152,20.241,20.454,20.820,21.215,21.484,21.632,
-21.841,22.228,22.660,22.885,22.893,23.059,23.855,25.390,27.265,28.873,29.833,30.153,30.075,29.839,29.564,29.266,
-28.913,28.473,27.954,27.409,26.898,26.427,25.973,25.543,25.193,24.956,24.788,24.611,24.411,24.240,24.119,23.988,
-23.781,23.531,23.344,23.261,23.202,23.076,22.898,22.752,22.657,22.534,22.330,22.121,22.047,22.155,22.367,22.575,
-22.730,22.826,22.874,22.934,23.118,23.462,23.798,23.882,23.704,23.592,23.863,24.378,24.598,24.169,23.376,22.862,
-22.892,23.059,22.797,22.067,21.387,21.181,21.284,21.180,20.638,19.917,19.383,19.075,18.776,18.391,18.077,17.979,
-17.996,17.907,17.674,17.477,17.455,17.518,17.474,17.289,17.096,16.993,16.906,16.714,16.432,16.192,16.069,15.986,
-15.831,15.591,15.343,15.135,14.938,14.714,14.479,14.272,14.084,13.868,13.602,13.315,13.046,12.800,12.564,12.337,
-12.113,11.861,11.545,11.184,10.854,10.603,10.397,10.158,9.853,9.528,9.231,8.957,8.661,8.334,8.011,7.720,
-7.446,7.165,6.886,6.645,6.447,6.256,6.036,5.785,5.524,5.257,4.972,4.672,4.381,4.112,3.836,3.518,
-3.158,2.785,2.413,2.009,1.535,1.007,.491,.040,-.362,-.780,-1.262,-1.795,-2.315,-2.774,-3.174,-3.568,
--4.005,-4.486,-4.961,-5.379,-5.749,-6.139,-6.606,-7.130,-7.626,-8.028,-8.366,-8.742,-9.243,-9.861,-10.499,-11.034,
--11.394,-11.595,-11.722,-11.872,-12.090,-12.353,-12.618,-12.887,-13.222,-13.685,-14.285,-14.970,-15.673,-16.354,-16.993,-17.579,
--18.115,-18.627,-19.146,-19.680,-20.212,-20.728,-21.236,-21.739,-22.215,-22.642,-23.042,-23.465,-23.925,-24.376,-24.777,-25.166,
--25.620,-26.147,-26.648,-27.020,-27.288,-27.575,-27.962,-28.413,-28.867,-29.341,-29.898,-30.508,-31.040,-31.416,-31.735,-32.170,
--32.743,-33.287,-33.638,-33.831,-34.018,-34.250,-34.414,-34.424,-34.394,-34.527,-34.863,-35.217,-35.413,-35.518,-35.768,-36.292,
--36.975,-37.603,-38.077,-38.440,-38.744,-38.985,-39.178,-39.406,-39.727,-40.065,-40.269,-40.308,-40.328,-40.482,-40.728,-40.851,
--40.702,-40.369,-40.089,-40.011,-40.093,-40.198,-40.258,-40.320,-40.447,-40.626,-40.760,-40.751,-40.584,-40.341,-40.131,-39.980,
--39.807,-39.498,-39.032,-38.535,-38.190,-38.111,-38.276,-38.573,-38.858,-39.019,-39.006,-38.867,-38.715,-38.620,-38.538,-38.349,
--37.989,-37.474,-36.804,-35.908,-34.803,-33.783,-33.307,-33.539,-34.008,-33.863,-32.598,-30.547,-28.601,-27.448,-27.084,-27.036,
--26.922,-26.736,-26.657,-26.754,-26.937,-27.111,-27.270,-27.413,-27.495,-27.482,-27.444,-27.485,-27.612,-27.723,-27.749,-27.763,
--27.885,-28.093,-28.179,-27.925,-27.313,-26.549,-25.904,-25.541,-25.451,-25.491,-25.467,-25.225,-24.718,-24.029,-23.313,-22.697,
--22.233,-21.904,-21.661,-21.439,-21.178,-20.866,-20.569,-20.396,-20.391,-20.485,-20.549,-20.504,-20.377,-20.253,-20.177,-20.101,
--19.918,-19.558,-19.057,-18.534,-18.071,-17.588,-16.870,-15.806,-14.612,-13.778,-13.682,-14.226,-14.877,-15.104,-14.783,-14.165,
--13.495,-12.748,-11.742,-10.441,-9.054,-7.828,-6.807,-5.848,-4.820,-3.736,-2.689,-1.724,-.820,.025,.742,1.263,
-1.611,1.936,2.437,3.263,4.412,5.698,6.831,7.574,7.895,7.959,7.988,8.109,8.343,8.670,9.057,9.413,
-9.600,9.561,9.405,9.322,9.385,9.492,9.531,9.573,9.823,10.390,11.145,11.869,12.491,13.120,13.864,14.690,
-15.496,16.251,16.988,17.674,18.205,18.559,18.917,19.514,20.380,21.297,22.040,22.611,23.187,23.867,24.569,25.178,
-25.718,26.286,26.871,27.314,27.484,27.408,27.197,26.897,26.520,26.181,26.064,26.169,26.129,25.446,23.965,22.093,
-20.507,19.663,19.585,20.024,20.673,21.230,21.438,21.279,21.126,21.527,22.648,23.957,24.598,24.181,23.188,22.534,
-22.726,23.483,24.132,24.279,24.070,23.884,23.931,24.194,24.634,25.302,26.200,27.134,27.816,28.118,28.191,28.290,
-28.519,28.785,28.983,29.154,29.412,29.769,30.073,30.164,30.047,29.865,29.741,29.696,29.724,29.888,30.242,30.668,
-30.888,30.746,30.473,30.597,31.471,32.891,34.201,34.832,34.757,34.442,34.369,34.631,34.951,35.045,34.926,34.866,
-35.100,35.599,36.119,36.455,36.626,36.832,37.226,37.768,38.278,38.633,38.881,39.163,39.548,39.976,40.335,40.567,
-40.670,40.655,40.537,40.385,40.315,40.408,40.622,40.835,40.977,41.085,41.233,41.419,41.570,41.650,41.705,41.797,
-41.915,42.004,42.080,42.261,42.647,43.173,43.617,43.764,43.589,43.270,43.035,42.952,42.801,42.101,40.307,37.095,
-32.597,27.457,22.666,19.232,17.814,18.440,20.480,22.948,25.018,26.410,27.336,28.098,28.736,29.077,29.055,28.850,
-28.683,28.534,28.185,27.530,26.728,25.992,25.308,24.511,23.648,23.093,23.157,23.609,23.735,23.001,21.607,20.301,
-19.651,19.569,19.545,19.252,18.797,18.443,18.230,17.960,17.491,16.915,16.422,16.066,15.745,15.358,14.920,14.489,
-14.059,13.576,13.038,12.526,12.119,11.818,11.565,11.322,11.088,10.856,10.585,10.254,9.904,9.604,9.373,9.154,
-8.875,8.523,8.151,7.824,7.569,7.361,7.143,6.858,6.496,6.118,5.821,5.652,5.550,5.391,5.097,4.689,
-4.245,3.811,3.386,2.975,2.622,2.369,2.198,2.033,1.815,1.546,1.280,1.063,.908,.805,.729,.636,
-.484,.266,.029,-.163,-.278,-.345,-.419,-.547,-.747,-1.013,-1.306,-1.569,-1.759,-1.886,-2.006,-2.165,
--2.367,-2.588,-2.820,-3.066,-3.304,-3.483,-3.569,-3.600,-3.645,-3.731,-3.817,-3.866,-3.910,-4.031,-4.269,-4.583,
--4.901,-5.201,-5.506,-5.834,-6.165,-6.476,-6.775,-7.085,-7.400,-7.687,-7.928,-8.147,-8.375,-8.607,-8.807,-8.948,
--9.046,-9.136,-9.242,-9.365,-9.496,-9.612,-9.685,-9.705,-9.700,-9.724,-9.813,-9.944,-10.057,-10.122,-10.157,-10.207,
--10.293,-10.401,-10.509,-10.598,-10.660,-10.697,-10.730,-10.790,-10.895,-11.024,-11.138,-11.220,-11.288,-11.368,-11.468,-11.580,
--11.699,-11.820,-11.930,-12.011,-12.065,-12.112,-12.162,-12.191,-12.170,-12.116,-12.087,-12.115,-12.159,-12.147,-12.052,-11.917,
--11.801,-11.724,-11.676,-11.656,-11.674,-11.708,-11.711,-11.665,-11.616,-11.615,-11.641,-11.605,-11.459,-11.264,-11.137,-11.124,
--11.165,-11.178,-11.141,-11.092,-11.060,-11.037,-11.019,-11.030,-11.080,-11.139,-11.157,-11.132,-11.109,-11.120,-11.135,-11.105,
--11.031,-10.965,-10.948,-10.962,-10.959,-10.936,-10.930,-10.964,-11.010,-11.024,-10.999,-10.969,-10.965,-10.980,-10.988,-10.974,
--10.948,-10.921,-10.893,-10.858,-10.821,-10.795,-10.786,-10.787,-10.780,-10.750,-10.698,-10.638,-10.590,-10.562,-10.537,-10.495,
--10.434,-10.370,-10.314,-10.260,-10.194,-10.117,-10.043,-9.971,-9.880,-9.756,-9.624,-9.528,-9.487,-9.476,-9.459,-9.426,
--9.387,-9.347,-9.292,-9.212,-9.122,-9.050,-9.006,-8.979,-8.946,-8.891,-8.801,-8.674,-8.527,-8.400,-8.318,-8.266,
--8.202,-8.108,-8.001,-7.908,-7.824,-7.727,-7.614,-7.517,-7.461,-7.427,-7.370,-7.276,-7.172,-7.093,-7.038,-6.980,
--6.898,-6.796,-6.687,-6.577,-6.471,-6.383,-6.327,-6.298,-6.274,-6.233,-6.168,-6.080,-5.979,-5.883,-5.817,-5.789,
--5.779,-5.746,-5.670,-5.559,-5.433,-5.302,-5.174,-5.066,-4.997,-4.950,-4.882,-4.767,-4.630,-4.518,-4.435,-4.331,
--4.154,-3.901,-3.625,-3.379,-3.190,-3.055,-2.952,-2.840,-2.680,-2.470,-2.263,-2.123,-2.049,-1.981,-1.869,-1.737,
--1.645,-1.604,-1.556,-1.446,-1.291,-1.154,-1.061,-.979,-.869,-.743,-.644,-.579,-.514,-.415,-.286,-.150,
--.012,.140,.302,.466,.644,.872,1.167,1.492,1.798,2.072,2.339,2.617,2.888,3.136,3.384,3.659,
-3.946,4.202,4.428,4.684,5.015,5.365,5.617,5.735,5.820,6.009,6.330,6.691,7.000,7.256,7.509,7.769,
-8.014,8.263,8.592,9.043,9.549,9.991,10.340,10.683,11.100,11.548,11.913,12.156,12.376,12.702,13.147,13.609,
-14.012,14.401,14.850,15.265,15.314,14.599,13.000,10.943,9.335,9.158,10.913,14.306,18.395,22.139,24.950,26.899,
-28.450,29.968,31.368,32.115,31.578,29.504,26.313,22.984,20.548,19.496,19.556,20.014,20.336,20.556,21.105,22.268,
-23.807,25.105,25.673,25.551,25.216,25.137,25.394,25.693,25.691,25.282,24.602,23.824,23.010,22.155,21.311,20.596,
-20.087,19.729,19.397,19.023,18.644,18.318,18.028,17.711,17.353,17.037,16.877,16.911,17.078,17.273,17.420,17.497,
-17.520,17.516,17.501,17.459,17.358,17.191,16.997,16.818,16.641,16.399,16.055,15.678,15.393,15.247,15.144,14.921,
-14.503,13.966,13.449,13.028,12.658,12.228,11.655,10.941,10.156,9.386,8.681,8.047,7.504,7.128,7.006,7.099,
-7.159,6.832,5.903,4.479,2.902,1.507,.424,-.408,-1.094,-1.682,-2.184,-2.622,-3.036,-3.440,-3.813,-4.131,
--4.405,-4.662,-4.918,-5.170,-5.413,-5.660,-5.927,-6.214,-6.498,-6.748,-6.943,-7.097,-7.245,-7.410,-7.571,-7.666,
--7.655,-7.565,-7.479,-7.470,-7.546,-7.665,-7.779,-7.861,-7.887,-7.839,-7.722,-7.582,-7.457,-7.346,-7.215,-7.055,
--6.899,-6.775,-6.657,-6.485,-6.231,-5.905,-5.515,-5.022,-4.404,-3.721,-3.108,-2.668,-2.388,-2.182,-1.985,-1.779,
--1.548,-1.246,-.851,-.415,-.024,.287,.559,.829,1.062,1.205,1.293,1.455,1.789,2.250,2.681,2.970,
-3.140,3.310,3.575,3.953,4.412,4.910,5.402,5.830,6.144,6.337,6.450,6.546,6.676,6.859,7.089,7.336,
-7.572,7.784,7.982,8.184,8.403,8.647,8.926,9.254,9.621,9.993,10.344,10.678,11.022,11.381,11.724,12.014,
-12.253,12.469,12.682,12.881,13.057,13.225,13.413,13.626,13.841,14.039,14.229,14.432,14.646,14.845,15.008,15.137,
-15.252,15.369,15.496,15.629,15.754,15.858,15.940,16.021,16.115,16.210,16.273,16.307,16.368,16.515,16.732,16.933,
-17.047,17.086,17.114,17.153,17.159,17.080,16.929,16.761,16.608,16.457,16.301,16.166,16.069,15.979,15.853,15.702,
-15.591,15.559,15.559,15.522,15.447,15.402,15.430,15.494,15.531,15.544,15.584,15.667,15.743,15.772,15.790,15.862,
-15.994,16.137,16.256,16.377,16.520,16.654,16.766,16.931,17.238,17.615,17.819,17.695,17.421,17.401,17.856,18.571,
-19.092,19.151,18.835,18.405,18.061,17.956,18.285,19.157,20.333,21.239,21.390,20.825,20.028,19.326,19.109,19.335,
-19.761,20.352,21.229,22.267,22.960,22.856,22.076,21.256,20.934,21.096,21.363,21.505,21.618,21.833,22.042,22.033,
-21.813,21.643,21.727,21.987,22.204,22.315,22.443,22.673,22.901,22.977,22.923,22.904,23.023,23.213,23.366,23.489,
-23.664,23.898,24.097,24.207,24.290,24.436,24.631,24.784,24.863,24.945,25.110,25.353,25.615,25.881,26.162,26.423,
-26.575,26.590,26.561,26.603,26.714,26.813,26.880,26.990,27.174,27.324,27.347,27.387,27.770,28.659,29.793,30.686,
-31.070,31.090,31.062,31.116,31.180,31.243,31.484,32.058,32.835,33.447,33.652,33.573,33.553,33.794,34.170,34.367,
-34.167,33.612,32.951,32.459,32.252,32.211,32.084,31.699,31.107,30.500,29.993,29.516,28.943,28.301,27.784,27.563,
-27.626,27.827,28.063,28.337,28.673,29.018,29.278,29.418,29.470,29.473,29.454,29.465,29.566,29.724,29.741,29.384,
-28.603,27.602,26.660,25.915,25.333,24.867,24.560,24.469,24.551,24.678,24.766,24.833,24.928,25.051,25.183,25.350,
-25.612,25.982,26.404,26.843,27.337,27.920,28.498,28.857,28.835,28.435,27.773,26.933,25.918,24.751,23.550,22.483,
-21.658,21.081,20.715,20.520,20.449,20.442,20.462,20.510,20.591,20.670,20.722,20.801,21.016,21.383,21.763,21.995,
-22.104,22.285,22.651,23.059,23.266,23.297,23.550,24.472,26.113,28.030,29.633,30.596,30.967,30.979,30.820,30.575,
-30.260,29.870,29.389,28.828,28.235,27.672,27.159,26.674,26.222,25.848,25.592,25.421,25.263,25.087,24.925,24.800,
-24.673,24.498,24.302,24.155,24.079,24.007,23.879,23.720,23.597,23.503,23.365,23.157,22.973,22.941,23.083,23.303,
-23.499,23.633,23.700,23.704,23.718,23.887,24.278,24.722,24.919,24.796,24.659,24.875,25.384,25.664,25.278,24.383,
-23.574,23.224,23.112,22.776,22.123,21.535,21.360,21.469,21.415,20.957,20.278,19.703,19.335,19.057,18.792,18.610,
-18.554,18.513,18.351,18.109,17.972,18.020,18.117,18.074,17.881,17.684,17.572,17.471,17.275,17.007,16.785,16.653,
-16.527,16.312,16.030,15.772,15.577,15.396,15.179,14.945,14.734,14.538,14.307,14.029,13.747,13.502,13.279,13.044,
-12.790,12.536,12.274,11.977,11.646,11.333,11.079,10.851,10.576,10.233,9.879,9.585,9.343,9.093,8.797,8.483,
-8.191,7.916,7.626,7.324,7.052,6.842,6.669,6.479,6.243,5.979,5.712,5.445,5.167,4.881,4.597,4.315,
-4.019,3.693,3.335,2.945,2.519,2.057,1.583,1.130,.710,.299,-.144,-.634,-1.146,-1.634,-2.074,-2.481,
--2.900,-3.373,-3.897,-4.420,-4.881,-5.266,-5.631,-6.058,-6.577,-7.131,-7.624,-8.014,-8.350,-8.734,-9.221,-9.766,
--10.255,-10.599,-10.800,-10.949,-11.144,-11.414,-11.728,-12.053,-12.412,-12.860,-13.417,-14.044,-14.676,-15.288,-15.889,-16.483,
--17.049,-17.568,-18.059,-18.560,-19.087,-19.619,-20.141,-20.655,-21.167,-21.652,-22.080,-22.463,-22.854,-23.286,-23.729,-24.140,
--24.535,-24.982,-25.510,-26.058,-26.538,-26.928,-27.281,-27.640,-27.989,-28.320,-28.687,-29.171,-29.762,-30.360,-30.891,-31.388,
--31.925,-32.475,-32.918,-33.196,-33.396,-33.640,-33.908,-34.065,-34.070,-34.085,-34.301,-34.694,-35.036,-35.189,-35.317,-35.732,
--36.540,-37.500,-38.252,-38.644,-38.793,-38.892,-39.026,-39.184,-39.365,-39.585,-39.815,-39.987,-40.092,-40.212,-40.430,-40.694,
--40.847,-40.793,-40.606,-40.448,-40.395,-40.374,-40.285,-40.135,-40.043,-40.113,-40.324,-40.540,-40.628,-40.551,-40.369,-40.151,
--39.898,-39.540,-39.020,-38.376,-37.750,-37.325,-37.228,-37.475,-37.951,-38.443,-38.733,-38.734,-38.555,-38.403,-38.381,-38.384,
--38.227,-37.846,-37.313,-36.661,-35.786,-34.643,-33.514,-32.916,-33.094,-33.604,-33.558,-32.394,-30.416,-28.528,-27.434,-27.127,
--27.113,-27.004,-26.815,-26.761,-26.918,-27.168,-27.378,-27.532,-27.675,-27.819,-27.946,-28.074,-28.227,-28.370,-28.420,-28.371,
--28.336,-28.425,-28.576,-28.571,-28.248,-27.677,-27.107,-26.743,-26.591,-26.501,-26.323,-26.003,-25.565,-25.047,-24.476,-23.879,
--23.308,-22.828,-22.487,-22.272,-22.108,-21.912,-21.667,-21.441,-21.315,-21.295,-21.299,-21.247,-21.133,-21.014,-20.926,-20.834,
--20.666,-20.378,-19.985,-19.549,-19.137,-18.756,-18.302,-17.595,-16.552,-15.365,-14.464,-14.207,-14.558,-15.078,-15.287,-15.026,
--14.474,-13.839,-13.119,-12.182,-11.013,-9.789,-8.697,-7.735,-6.754,-5.654,-4.490,-3.380,-2.361,-1.387,-.457,.329,
-.861,1.154,1.389,1.820,2.627,3.807,5.151,6.334,7.085,7.345,7.286,7.173,7.182,7.349,7.617,7.914,
-8.162,8.294,8.302,8.280,8.343,8.516,8.712,8.869,9.067,9.466,10.107,10.847,11.503,12.049,12.609,13.280,
-14.017,14.724,15.388,16.063,16.737,17.314,17.760,18.214,18.869,19.744,20.648,21.391,21.994,22.624,23.368,24.143,
-24.827,25.418,25.988,26.525,26.895,26.978,26.792,26.443,26.023,25.609,25.312,25.191,25.087,24.614,23.476,21.816,
-20.192,19.145,18.822,19.004,19.427,19.940,20.396,20.598,20.522,20.556,21.265,22.760,24.360,25.051,24.409,23.023,
-21.978,21.901,22.549,23.238,23.538,23.527,23.488,23.571,23.780,24.159,24.814,25.722,26.629,27.231,27.459,27.515,
-27.644,27.893,28.145,28.326,28.518,28.834,29.247,29.584,29.706,29.639,29.515,29.420,29.359,29.354,29.507,29.892,
-30.380,30.657,30.505,30.083,29.897,30.407,31.606,32.983,33.921,34.164,33.960,33.770,33.859,34.138,34.368,34.465,
-34.590,34.946,35.524,36.083,36.392,36.467,36.554,36.872,37.392,37.887,38.180,38.313,38.477,38.803,39.256,39.705,
-40.053,40.267,40.337,40.255,40.065,39.882,39.830,39.946,40.165,40.399,40.605,40.789,40.959,41.116,41.272,41.438,
-41.590,41.681,41.711,41.784,42.036,42.491,42.993,43.306,43.305,43.068,42.797,42.635,42.507,42.084,40.879,38.462,
-34.707,29.955,24.993,20.810,18.264,17.753,19.041,21.343,23.690,25.428,26.495,27.241,27.961,28.594,28.884,28.763,
-28.482,28.311,28.208,27.889,27.211,26.371,25.647,25.032,24.276,23.318,22.522,22.334,22.706,23.012,22.612,21.483,
-20.222,19.429,19.185,19.127,18.921,18.558,18.204,17.918,17.598,17.164,16.676,16.250,15.907,15.573,15.192,14.778,
-14.353,13.898,13.388,12.864,12.412,12.068,11.778,11.477,11.160,10.869,10.610,10.332,9.995,9.631,9.314,9.072,
-8.859,8.610,8.305,7.977,7.666,7.398,7.174,6.976,6.763,6.494,6.175,5.862,5.611,5.410,5.187,4.886,
-4.522,4.152,3.799,3.434,3.035,2.640,2.322,2.119,1.990,1.857,1.665,1.414,1.145,.909,.739,.627,
-.527,.382,.174,-.060,-.262,-.396,-.475,-.539,-.636,-.800,-1.037,-1.316,-1.577,-1.777,-1.919,-2.043,
--2.183,-2.341,-2.517,-2.728,-2.985,-3.247,-3.437,-3.517,-3.537,-3.588,-3.703,-3.829,-3.909,-3.955,-4.048,-4.244,
--4.523,-4.831,-5.141,-5.465,-5.805,-6.140,-6.454,-6.758,-7.074,-7.389,-7.666,-7.888,-8.081,-8.283,-8.503,-8.714,
--8.892,-9.032,-9.147,-9.248,-9.348,-9.456,-9.568,-9.655,-9.691,-9.690,-9.709,-9.795,-9.939,-10.082,-10.177,-10.226,
--10.267,-10.331,-10.421,-10.523,-10.622,-10.702,-10.757,-10.796,-10.846,-10.928,-11.033,-11.134,-11.214,-11.283,-11.361,-11.458,
--11.571,-11.696,-11.826,-11.941,-12.017,-12.051,-12.064,-12.076,-12.078,-12.055,-12.020,-12.010,-12.039,-12.070,-12.048,-11.959,
--11.845,-11.755,-11.697,-11.656,-11.623,-11.606,-11.599,-11.582,-11.551,-11.530,-11.536,-11.536,-11.477,-11.357,-11.242,-11.189,
--11.177,-11.139,-11.058,-11.001,-11.038,-11.141,-11.214,-11.204,-11.157,-11.150,-11.199,-11.252,-11.271,-11.276,-11.299,-11.326,
--11.307,-11.229,-11.144,-11.107,-11.118,-11.132,-11.122,-11.111,-11.129,-11.169,-11.194,-11.183,-11.154,-11.135,-11.134,-11.130,
--11.109,-11.074,-11.041,-11.018,-10.999,-10.972,-10.931,-10.891,-10.866,-10.857,-10.842,-10.800,-10.734,-10.675,-10.648,-10.639,
--10.610,-10.541,-10.454,-10.379,-10.325,-10.269,-10.196,-10.113,-10.033,-9.949,-9.848,-9.739,-9.661,-9.640,-9.652,-9.646,
--9.593,-9.510,-9.435,-9.382,-9.336,-9.273,-9.196,-9.121,-9.068,-9.031,-8.986,-8.905,-8.780,-8.632,-8.501,-8.409,
--8.345,-8.278,-8.191,-8.091,-7.989,-7.882,-7.763,-7.641,-7.546,-7.491,-7.457,-7.406,-7.320,-7.215,-7.121,-7.047,
--6.982,-6.912,-6.825,-6.720,-6.605,-6.494,-6.406,-6.346,-6.305,-6.266,-6.221,-6.168,-6.104,-6.025,-5.944,-5.882,
--5.848,-5.826,-5.783,-5.704,-5.597,-5.473,-5.335,-5.193,-5.072,-4.999,-4.960,-4.909,-4.812,-4.686,-4.571,-4.478,
--4.372,-4.208,-3.984,-3.731,-3.484,-3.267,-3.098,-2.982,-2.897,-2.795,-2.646,-2.473,-2.322,-2.210,-2.109,-1.993,
--1.878,-1.800,-1.755,-1.690,-1.571,-1.428,-1.315,-1.241,-1.165,-1.053,-.924,-.815,-.729,-.631,-.500,-.354,
--.222,-.099,.042,.212,.403,.618,.877,1.182,1.495,1.769,2.001,2.235,2.507,2.803,3.089,3.355,
-3.612,3.864,4.105,4.349,4.633,4.957,5.253,5.440,5.529,5.626,5.822,6.101,6.383,6.644,6.935,7.282,
-7.614,7.845,8.015,8.286,8.770,9.398,9.986,10.424,10.754,11.053,11.318,11.507,11.665,11.939,12.417,13.012,
-13.543,13.945,14.328,14.792,15.189,15.108,14.169,12.386,10.331,8.955,9.150,11.275,14.902,18.994,22.458,24.770,
-26.202,27.476,29.081,30.799,31.814,31.312,29.114,25.881,22.758,20.713,20.020,20.233,20.643,20.854,21.028,21.611,
-22.800,24.262,25.368,25.722,25.473,25.116,25.020,25.138,25.167,24.903,24.413,23.878,23.351,22.724,21.921,21.047,
-20.306,19.806,19.474,19.171,18.842,18.521,18.225,17.903,17.511,17.109,16.840,16.804,16.968,17.205,17.398,17.504,
-17.536,17.526,17.506,17.495,17.484,17.436,17.325,17.163,16.976,16.767,16.504,16.181,15.850,15.585,15.394,15.191,
-14.879,14.445,13.968,13.541,13.191,12.854,12.424,11.814,11.002,10.061,9.137,8.371,7.828,7.493,7.324,7.285,
-7.296,7.180,6.711,5.776,4.474,3.058,1.754,.646,-.291,-1.084,-1.728,-2.232,-2.653,-3.057,-3.458,-3.814,
--4.091,-4.310,-4.522,-4.767,-5.039,-5.314,-5.577,-5.836,-6.105,-6.385,-6.648,-6.856,-6.993,-7.096,-7.229,-7.418,
--7.614,-7.733,-7.738,-7.678,-7.633,-7.646,-7.699,-7.749,-7.773,-7.768,-7.730,-7.655,-7.553,-7.443,-7.336,-7.223,
--7.100,-6.968,-6.828,-6.660,-6.444,-6.183,-5.894,-5.564,-5.144,-4.613,-4.036,-3.530,-3.159,-2.881,-2.605,-2.284,
--1.945,-1.623,-1.303,-.953,-.571,-.187,.191,.582,.974,1.297,1.491,1.606,1.792,2.159,2.661,3.130,
-3.435,3.596,3.736,3.958,4.277,4.653,5.053,5.458,5.839,6.149,6.360,6.491,6.600,6.739,6.928,7.158,
-7.409,7.671,7.936,8.186,8.400,8.573,8.741,8.962,9.273,9.654,10.048,10.415,10.756,11.091,11.419,11.715,
-11.972,12.214,12.468,12.726,12.948,13.118,13.268,13.444,13.656,13.878,14.084,14.283,14.493,14.714,14.925,15.110,
-15.274,15.430,15.587,15.745,15.901,16.046,16.169,16.267,16.354,16.440,16.515,16.555,16.577,16.645,16.815,17.062,
-17.284,17.399,17.417,17.403,17.383,17.317,17.162,16.940,16.718,16.537,16.392,16.270,16.180,16.122,16.056,15.943,
-15.802,15.707,15.690,15.698,15.660,15.575,15.516,15.526,15.567,15.582,15.581,15.622,15.713,15.793,15.815,15.825,
-15.908,16.074,16.245,16.353,16.418,16.513,16.679,16.922,17.246,17.613,17.864,17.785,17.350,16.891,16.903,17.603,
-18.688,19.563,19.821,19.474,18.819,18.202,17.931,18.246,19.157,20.266,20.933,20.774,20.028,19.143,18.787,18.934,
-19.327,19.613,19.828,20.304,21.148,21.959,22.198,21.769,21.119,20.758,20.796,20.994,21.154,21.301,21.498,21.658,
-21.640,21.486,21.407,21.538,21.784,21.973,22.079,22.218,22.437,22.629,22.682,22.657,22.712,22.901,23.115,23.253,
-23.358,23.538,23.798,24.023,24.139,24.207,24.327,24.497,24.630,24.698,24.776,24.943,25.185,25.439,25.689,25.961,
-26.231,26.407,26.442,26.406,26.408,26.463,26.507,26.529,26.613,26.801,26.992,27.069,27.124,27.454,28.250,29.346,
-30.337,30.948,31.230,31.369,31.418,31.308,31.101,31.088,31.538,32.385,33.234,33.711,33.774,33.670,33.638,33.699,
-33.693,33.484,33.085,32.643,32.325,32.186,32.122,31.938,31.510,30.892,30.253,29.697,29.173,28.573,27.897,27.279,
-26.853,26.640,26.586,26.680,26.965,27.437,27.981,28.436,28.719,28.852,28.905,28.940,29.004,29.115,29.197,29.078,
-28.612,27.840,26.983,26.266,25.749,25.356,25.034,24.838,24.832,24.979,25.158,25.289,25.381,25.484,25.621,25.799,
-26.044,26.384,26.785,27.181,27.557,27.981,28.498,29.011,29.307,29.232,28.794,28.103,27.239,26.215,25.066,23.907,
-22.886,22.095,21.549,21.227,21.091,21.075,21.096,21.114,21.145,21.205,21.262,21.285,21.332,21.518,21.866,22.243,
-22.493,22.634,22.834,23.182,23.533,23.694,23.743,24.082,25.090,26.735,28.561,30.056,30.997,31.470,31.649,31.632,
-31.454,31.151,30.764,30.292,29.725,29.096,28.483,27.936,27.445,26.987,26.582,26.274,26.060,25.889,25.722,25.571,
-25.461,25.376,25.279,25.163,25.054,24.963,24.860,24.724,24.583,24.471,24.365,24.212,24.019,23.883,23.893,24.033,
-24.217,24.380,24.513,24.600,24.614,24.616,24.778,25.212,25.759,26.073,25.993,25.763,25.779,26.093,26.283,25.906,
-25.013,24.108,23.590,23.358,23.036,22.484,21.952,21.713,21.692,21.556,21.110,20.492,19.965,19.630,19.406,19.222,
-19.099,19.039,18.952,18.759,18.533,18.430,18.495,18.592,18.567,18.424,18.279,18.185,18.068,17.855,17.591,17.376,
-17.220,17.035,16.762,16.460,16.228,16.071,15.903,15.671,15.410,15.181,14.975,14.737,14.455,14.179,13.947,13.732,
-13.482,13.194,12.916,12.670,12.421,12.133,11.823,11.531,11.253,10.946,10.594,10.251,9.976,9.762,9.542,9.272,
-8.971,8.681,8.401,8.099,7.773,7.472,7.242,7.069,6.891,6.668,6.413,6.161,5.919,5.664,5.382,5.086,
-4.795,4.505,4.189,3.825,3.418,2.994,2.578,2.179,1.786,1.377,.936,.468,-.012,-.480,-.927,-1.358,
--1.790,-2.250,-2.758,-3.312,-3.867,-4.358,-4.755,-5.105,-5.513,-6.051,-6.681,-7.277,-7.728,-8.031,-8.289,-8.611,
--9.017,-9.428,-9.763,-10.013,-10.241,-10.514,-10.837,-11.175,-11.523,-11.931,-12.452,-13.074,-13.720,-14.321,-14.875,-15.421,
--15.980,-16.525,-17.029,-17.506,-18.001,-18.529,-19.067,-19.592,-20.105,-20.618,-21.112,-21.556,-21.956,-22.361,-22.810,-23.282,
--23.723,-24.119,-24.518,-24.973,-25.474,-25.971,-26.433,-26.867,-27.280,-27.654,-27.977,-28.288,-28.645,-29.067,-29.520,-29.978,
--30.455,-30.956,-31.421,-31.777,-32.040,-32.323,-32.690,-33.052,-33.252,-33.272,-33.298,-33.513,-33.890,-34.234,-34.467,-34.776,
--35.429,-36.433,-37.459,-38.121,-38.318,-38.275,-38.295,-38.508,-38.857,-39.233,-39.574,-39.852,-40.049,-40.186,-40.328,-40.522,
--40.729,-40.857,-40.863,-40.810,-40.786,-40.793,-40.729,-40.516,-40.200,-39.936,-39.852,-39.953,-40.133,-40.278,-40.331,-40.283,
--40.113,-39.771,-39.224,-38.510,-37.749,-37.090,-36.660,-36.544,-36.767,-37.254,-37.800,-38.148,-38.180,-38.024,-37.938,-38.043,
--38.190,-38.126,-37.763,-37.218,-36.581,-35.757,-34.648,-33.475,-32.751,-32.783,-33.215,-33.208,-32.176,-30.359,-28.601,-27.589,
--27.328,-27.341,-27.242,-27.050,-26.992,-27.164,-27.446,-27.691,-27.872,-28.051,-28.265,-28.505,-28.751,-28.974,-29.106,-29.075,
--28.910,-28.757,-28.746,-28.831,-28.818,-28.566,-28.148,-27.775,-27.578,-27.488,-27.331,-27.002,-26.537,-26.030,-25.520,-24.979,
--24.382,-23.783,-23.289,-22.982,-22.846,-22.778,-22.684,-22.557,-22.457,-22.425,-22.426,-22.392,-22.320,-22.273,-22.285,-22.277,
--22.104,-21.704,-21.165,-20.656,-20.279,-20.011,-19.739,-19.320,-18.632,-17.640,-16.486,-15.480,-14.921,-14.852,-15.010,-15.044,
--14.793,-14.339,-13.812,-13.212,-12.447,-11.501,-10.481,-9.493,-8.514,-7.445,-6.264,-5.070,-3.967,-2.945,-1.936,-.951,
--.132,.379,.601,.754,1.137,1.951,3.176,4.570,5.771,6.490,6.677,6.538,6.374,6.371,6.524,6.730,
-6.910,7.050,7.158,7.248,7.350,7.506,7.733,8.002,8.295,8.661,9.170,9.809,10.460,11.017,11.495,12.009,
-12.631,13.317,13.987,14.626,15.268,15.906,16.485,17.005,17.580,18.325,19.200,20.026,20.685,21.259,21.926,22.750,
-23.618,24.389,25.032,25.581,25.998,26.167,26.025,25.664,25.255,24.918,24.680,24.509,24.296,23.810,22.801,21.266,
-19.606,18.405,17.977,18.155,18.545,18.917,19.275,19.609,19.771,19.731,19.845,20.640,22.175,23.737,24.342,23.636,
-22.255,21.245,21.164,21.747,22.379,22.716,22.833,22.916,23.019,23.153,23.450,24.084,25.015,25.929,26.498,26.689,
-26.744,26.900,27.166,27.410,27.591,27.816,28.191,28.652,29.020,29.180,29.172,29.107,29.032,28.940,28.872,28.961,
-29.308,29.815,30.182,30.144,29.746,29.391,29.570,30.474,31.806,32.976,33.538,33.498,33.238,33.156,33.356,33.671,
-33.945,34.228,34.688,35.345,35.979,36.330,36.382,36.392,36.624,37.083,37.533,37.772,37.835,37.927,38.191,38.584,
-38.967,39.263,39.491,39.674,39.772,39.736,39.594,39.460,39.449,39.599,39.856,40.137,40.386,40.599,40.809,41.034,
-41.236,41.339,41.318,41.270,41.375,41.737,42.261,42.705,42.872,42.755,42.511,42.299,42.129,41.807,40.973,39.202,
-36.194,32.001,27.155,22.564,19.175,17.609,17.937,19.680,22.022,24.152,25.622,26.492,27.120,27.765,28.344,28.609,
-28.491,28.211,28.012,27.853,27.481,26.786,25.982,25.344,24.841,24.164,23.175,22.206,21.792,22.067,22.531,22.479,
-21.652,20.423,19.385,18.830,18.626,18.486,18.258,17.946,17.587,17.192,16.785,16.412,16.090,15.775,15.417,15.020,
-14.621,14.215,13.757,13.239,12.735,12.333,12.027,11.725,11.365,10.982,10.654,10.389,10.114,9.771,9.393,9.060,
-8.805,8.583,8.336,8.051,7.756,7.478,7.226,7.008,6.830,6.666,6.468,6.202,5.891,5.586,5.306,5.018,
-4.688,4.335,4.005,3.711,3.411,3.057,2.665,2.309,2.056,1.907,1.800,1.662,1.457,1.200,.941,.727,
-.571,.444,.300,.115,-.096,-.297,-.466,-.601,-.718,-.839,-.992,-1.193,-1.432,-1.674,-1.879,-2.038,
--2.164,-2.272,-2.370,-2.484,-2.653,-2.894,-3.157,-3.356,-3.448,-3.479,-3.537,-3.656,-3.795,-3.903,-3.988,-4.108,
--4.303,-4.560,-4.846,-5.155,-5.497,-5.857,-6.197,-6.496,-6.773,-7.061,-7.358,-7.628,-7.848,-8.033,-8.219,-8.422,
--8.629,-8.824,-8.999,-9.150,-9.272,-9.371,-9.467,-9.569,-9.660,-9.710,-9.722,-9.740,-9.809,-9.932,-10.071,-10.187,
--10.275,-10.354,-10.434,-10.510,-10.580,-10.645,-10.708,-10.760,-10.798,-10.837,-10.896,-10.982,-11.083,-11.185,-11.287,-11.393,
--11.504,-11.619,-11.738,-11.858,-11.957,-12.010,-12.012,-11.985,-11.956,-11.932,-11.907,-11.887,-11.888,-11.912,-11.927,-11.898,
--11.828,-11.753,-11.708,-11.684,-11.654,-11.605,-11.546,-11.490,-11.442,-11.406,-11.394,-11.400,-11.392,-11.348,-11.290,-11.263,
--11.268,-11.235,-11.113,-10.957,-10.900,-11.011,-11.198,-11.292,-11.217,-11.071,-11.009,-11.084,-11.221,-11.325,-11.379,-11.421,
--11.462,-11.466,-11.409,-11.327,-11.282,-11.289,-11.306,-11.293,-11.255,-11.233,-11.251,-11.289,-11.311,-11.305,-11.282,-11.258,
--11.239,-11.216,-11.186,-11.158,-11.142,-11.137,-11.128,-11.099,-11.054,-11.016,-10.999,-10.989,-10.957,-10.895,-10.831,-10.795,
--10.781,-10.752,-10.684,-10.596,-10.521,-10.463,-10.390,-10.282,-10.159,-10.056,-9.985,-9.922,-9.855,-9.806,-9.800,-9.821,
--9.814,-9.740,-9.621,-9.517,-9.465,-9.439,-9.392,-9.301,-9.192,-9.104,-9.052,-9.015,-8.957,-8.862,-8.736,-8.601,
--8.480,-8.381,-8.303,-8.235,-8.167,-8.083,-7.977,-7.855,-7.738,-7.645,-7.579,-7.526,-7.467,-7.392,-7.302,-7.206,
--7.115,-7.034,-6.957,-6.869,-6.753,-6.616,-6.484,-6.387,-6.326,-6.278,-6.221,-6.160,-6.104,-6.054,-5.999,-5.936,
--5.880,-5.841,-5.810,-5.762,-5.691,-5.607,-5.516,-5.411,-5.286,-5.156,-5.050,-4.974,-4.903,-4.814,-4.713,-4.618,
--4.525,-4.404,-4.233,-4.021,-3.794,-3.569,-3.355,-3.169,-3.033,-2.947,-2.871,-2.764,-2.618,-2.457,-2.306,-2.167,
--2.040,-1.943,-1.885,-1.843,-1.770,-1.659,-1.549,-1.484,-1.446,-1.378,-1.255,-1.108,-.986,-.886,-.766,-.601,
--.419,-.259,-.127,.002,.151,.325,.532,.789,1.089,1.384,1.625,1.824,2.043,2.328,2.661,2.983,
-3.260,3.507,3.757,4.025,4.316,4.633,4.959,5.262,5.523,5.765,6.022,6.279,6.479,6.628,6.850,7.284,
-7.907,8.487,8.797,8.846,8.886,9.161,9.676,10.240,10.674,10.946,11.110,11.208,11.283,11.453,11.855,12.497,
-13.192,13.724,14.062,14.366,14.732,14.962,14.633,13.439,11.533,9.596,8.586,9.305,11.955,15.923,20.014,23.095,
-24.792,25.667,26.680,28.322,30.159,31.164,30.539,28.331,25.397,22.824,21.306,20.869,21.036,21.272,21.369,21.543,
-22.155,23.286,24.552,25.372,25.453,25.035,24.630,24.532,24.595,24.484,24.078,23.570,23.186,22.896,22.456,21.717,
-20.814,20.031,19.525,19.221,18.958,18.661,18.347,18.024,17.654,17.238,16.883,16.730,16.819,17.049,17.273,17.415,
-17.483,17.511,17.516,17.504,17.485,17.459,17.406,17.302,17.152,16.980,16.790,16.559,16.278,15.978,15.696,15.428,
-15.122,14.747,14.336,13.959,13.654,13.389,13.078,12.618,11.928,10.990,9.909,8.897,8.168,7.799,7.690,7.665,
-7.590,7.400,7.033,6.401,5.453,4.252,2.959,1.725,.623,-.333,-1.135,-1.771,-2.265,-2.680,-3.074,-3.447,
--3.762,-4.005,-4.209,-4.427,-4.681,-4.953,-5.214,-5.452,-5.676,-5.910,-6.170,-6.442,-6.683,-6.849,-6.954,-7.065,
--7.245,-7.474,-7.661,-7.729,-7.692,-7.636,-7.629,-7.668,-7.704,-7.703,-7.673,-7.634,-7.590,-7.529,-7.441,-7.330,
--7.208,-7.083,-6.951,-6.791,-6.580,-6.320,-6.041,-5.775,-5.509,-5.187,-4.775,-4.316,-3.901,-3.582,-3.312,-3.004,
--2.615,-2.185,-1.775,-1.412,-1.079,-.753,-.411,-.015,.471,1.021,1.530,1.884,2.075,2.215,2.443,2.803,
-3.235,3.662,4.064,4.461,4.847,5.175,5.412,5.581,5.741,5.927,6.118,6.282,6.415,6.557,6.742,6.971,
-7.221,7.483,7.774,8.101,8.433,8.705,8.883,9.002,9.155,9.410,9.757,10.134,10.484,10.801,11.103,11.393,
-11.657,11.897,12.140,12.411,12.691,12.939,13.137,13.307,13.491,13.702,13.929,14.160,14.391,14.619,14.832,15.025,
-15.215,15.422,15.646,15.860,16.047,16.212,16.363,16.497,16.603,16.687,16.764,16.839,16.899,16.955,17.050,17.220,
-17.433,17.594,17.639,17.587,17.506,17.422,17.295,17.091,16.847,16.638,16.504,16.421,16.354,16.296,16.251,16.195,
-16.100,15.988,15.919,15.913,15.912,15.846,15.722,15.616,15.575,15.565,15.540,15.520,15.567,15.679,15.779,15.807,
-15.815,15.899,16.075,16.249,16.344,16.403,16.547,16.840,17.233,17.622,17.911,18.007,17.841,17.477,17.172,17.245,
-17.800,18.602,19.259,19.523,19.406,19.060,18.665,18.427,18.566,19.126,19.799,20.087,19.764,19.143,18.557,18.657,
-19.128,19.576,19.660,19.515,19.615,20.196,20.946,21.325,21.140,20.710,20.472,20.552,20.762,20.917,21.020,21.138,
-21.241,21.247,21.190,21.208,21.372,21.593,21.749,21.847,21.988,22.195,22.371,22.442,22.475,22.593,22.811,23.017,
-23.144,23.265,23.484,23.777,24.010,24.114,24.161,24.259,24.404,24.518,24.582,24.678,24.873,25.125,25.349,25.534,
-25.744,25.992,26.194,26.269,26.248,26.231,26.252,26.268,26.258,26.293,26.435,26.631,26.778,26.907,27.216,27.872,
-28.796,29.727,30.466,31.003,31.387,31.562,31.439,31.123,30.964,31.286,32.068,32.939,33.501,33.634,33.514,33.372,
-33.296,33.233,33.101,32.884,32.635,32.420,32.262,32.109,31.868,31.480,30.983,30.471,29.986,29.478,28.881,28.220,
-27.597,27.087,26.680,26.359,26.194,26.315,26.765,27.417,28.048,28.494,28.722,28.793,28.783,28.743,28.684,28.550,
-28.247,27.728,27.079,26.477,26.047,25.771,25.550,25.347,25.219,25.232,25.365,25.535,25.684,25.817,25.965,26.152,
-26.409,26.773,27.230,27.689,28.040,28.278,28.514,28.842,29.203,29.408,29.307,28.892,28.240,27.410,26.417,25.313,
-24.218,23.266,22.532,22.031,21.753,21.666,21.696,21.746,21.769,21.785,21.818,21.844,21.839,21.861,22.019,22.342,
-22.711,22.988,23.184,23.432,23.777,24.077,24.190,24.247,24.636,25.649,27.179,28.788,30.086,30.979,31.588,32.003,
-32.201,32.152,31.914,31.571,31.141,30.593,29.948,29.308,28.757,28.285,27.833,27.391,27.014,26.745,26.562,26.413,
-26.282,26.192,26.146,26.109,26.044,25.946,25.828,25.705,25.583,25.471,25.362,25.229,25.062,24.906,24.837,24.883,
-24.994,25.106,25.220,25.368,25.519,25.599,25.637,25.809,26.257,26.841,27.189,27.068,26.664,26.385,26.390,26.390,
-25.991,25.180,24.353,23.870,23.681,23.453,23.003,22.477,22.106,21.892,21.634,21.204,20.699,20.296,20.042,19.857,
-19.684,19.545,19.456,19.355,19.189,19.007,18.918,18.951,19.013,19.007,18.941,18.878,18.815,18.678,18.437,18.166,
-17.952,17.779,17.552,17.245,16.945,16.740,16.604,16.426,16.156,15.860,15.616,15.414,15.181,14.893,14.607,14.368,
-14.148,13.890,13.595,13.324,13.107,12.899,12.631,12.301,11.961,11.648,11.344,11.023,10.706,10.436,10.216,9.997,
-9.740,9.454,9.169,8.882,8.567,8.222,7.897,7.642,7.450,7.268,7.054,6.816,6.583,6.356,6.107,5.823,
-5.522,5.230,4.947,4.639,4.282,3.889,3.501,3.140,2.793,2.420,1.994,1.526,1.053,.605,.181,-.242,
--.688,-1.160,-1.656,-2.180,-2.730,-3.279,-3.772,-4.175,-4.530,-4.944,-5.501,-6.175,-6.825,-7.313,-7.608,-7.807,
--8.041,-8.362,-8.727,-9.067,-9.365,-9.658,-9.980,-10.321,-10.658,-11.010,-11.442,-11.999,-12.652,-13.309,-13.902,-14.434,
--14.951,-15.479,-15.999,-16.488,-16.962,-17.457,-17.984,-18.520,-19.039,-19.545,-20.051,-20.543,-20.994,-21.408,-21.834,-22.312,
--22.822,-23.302,-23.712,-24.079,-24.463,-24.892,-25.351,-25.815,-26.282,-26.755,-27.224,-27.661,-28.049,-28.387,-28.685,-28.972,
--29.294,-29.688,-30.131,-30.545,-30.877,-31.173,-31.534,-31.980,-32.392,-32.619,-32.659,-32.682,-32.849,-33.149,-33.463,-33.770,
--34.235,-35.023,-36.045,-36.957,-37.430,-37.441,-37.270,-37.255,-37.557,-38.119,-38.788,-39.420,-39.920,-40.247,-40.427,-40.538,
--40.650,-40.768,-40.849,-40.880,-40.900,-40.947,-40.986,-40.925,-40.704,-40.366,-40.033,-39.809,-39.726,-39.754,-39.853,-39.982,
--40.065,-39.982,-39.621,-38.974,-38.170,-37.403,-36.813,-36.447,-36.306,-36.408,-36.737,-37.168,-37.482,-37.549,-37.472,-37.496,
--37.738,-38.028,-38.069,-37.743,-37.179,-36.521,-35.716,-34.656,-33.499,-32.700,-32.584,-32.890,-32.877,-31.983,-30.375,-28.792,
--27.864,-27.612,-27.606,-27.486,-27.273,-27.196,-27.371,-27.700,-28.037,-28.334,-28.624,-28.926,-29.216,-29.461,-29.629,-29.664,
--29.523,-29.253,-29.011,-28.935,-29.008,-29.061,-28.954,-28.712,-28.472,-28.311,-28.162,-27.902,-27.486,-26.984,-26.479,-25.974,
--25.418,-24.800,-24.213,-23.794,-23.618,-23.629,-23.696,-23.726,-23.723,-23.742,-23.795,-23.830,-23.818,-23.821,-23.935,-24.133,
--24.212,-23.937,-23.277,-22.461,-21.799,-21.424,-21.226,-20.990,-20.561,-19.889,-18.990,-17.938,-16.891,-16.041,-15.487,-15.146,
--14.838,-14.447,-13.988,-13.517,-13.019,-12.419,-11.678,-10.828,-9.904,-8.889,-7.762,-6.575,-5.439,-4.411,-3.435,-2.435,
--1.451,-.648,-.170,.026,.173,.560,1.358,2.533,3.854,4.985,5.659,5.832,5.705,5.565,5.576,5.708,
-5.841,5.924,6.004,6.142,6.342,6.566,6.805,7.083,7.429,7.849,8.341,8.895,9.475,10.019,10.492,10.931,
-11.423,12.018,12.693,13.388,14.064,14.705,15.294,15.827,16.367,17.020,17.823,18.665,19.381,19.933,20.465,21.156,
-22.035,22.969,23.825,24.564,25.167,25.527,25.507,25.109,24.548,24.096,23.876,23.793,23.634,23.172,22.230,20.783,
-19.087,17.658,16.964,17.069,17.594,18.088,18.401,18.656,18.917,19.051,18.994,19.032,19.615,20.796,21.987,22.412,
-21.858,20.903,20.354,20.526,21.100,21.595,21.838,21.955,22.058,22.125,22.182,22.444,23.124,24.138,25.096,25.652,
-25.811,25.860,26.031,26.310,26.562,26.768,27.050,27.488,27.989,28.373,28.548,28.576,28.552,28.503,28.404,28.288,
-28.282,28.506,28.935,29.361,29.532,29.363,29.066,29.057,29.660,30.815,32.065,32.871,33.026,32.787,32.600,32.703,
-33.000,33.294,33.567,33.982,34.617,35.298,35.749,35.896,35.961,36.220,36.717,37.237,37.569,37.719,37.854,38.076,
-38.323,38.475,38.534,38.624,38.845,39.150,39.388,39.460,39.402,39.347,39.403,39.586,39.836,40.093,40.345,40.608,
-40.862,41.021,41.007,40.862,40.777,40.952,41.406,41.930,42.253,42.270,42.088,41.876,41.673,41.347,40.656,39.314,
-37.026,33.611,29.228,24.523,20.472,17.948,17.319,18.332,20.322,22.540,24.414,25.698,26.487,27.050,27.583,28.046,
-28.270,28.194,27.960,27.729,27.474,27.024,26.330,25.591,25.037,24.616,24.021,23.088,22.095,21.570,21.742,22.244,
-22.392,21.777,20.572,19.320,18.468,18.097,18.002,17.912,17.671,17.269,16.813,16.432,16.175,15.971,15.699,15.312,
-14.872,14.452,14.044,13.587,13.073,12.591,12.222,11.934,11.614,11.209,10.787,10.448,10.197,9.938,9.599,9.211,
-8.860,8.585,8.342,8.079,7.792,7.518,7.276,7.062,6.873,6.714,6.573,6.402,6.160,5.854,5.530,5.220,
-4.907,4.566,4.206,3.869,3.576,3.298,2.989,2.641,2.300,2.023,1.829,1.692,1.561,1.396,1.189,.961,
-.747,.570,.418,.264,.085,-.120,-.333,-.542,-.741,-.928,-1.101,-1.268,-1.446,-1.642,-1.846,-2.039,
--2.204,-2.334,-2.428,-2.496,-2.571,-2.699,-2.899,-3.130,-3.318,-3.427,-3.489,-3.566,-3.686,-3.826,-3.960,-4.096,
--4.263,-4.466,-4.687,-4.922,-5.199,-5.543,-5.929,-6.293,-6.595,-6.851,-7.102,-7.363,-7.611,-7.824,-8.012,-8.202,
--8.405,-8.610,-8.804,-8.984,-9.145,-9.281,-9.393,-9.493,-9.594,-9.689,-9.757,-9.792,-9.817,-9.864,-9.944,-10.050,
--10.172,-10.309,-10.449,-10.565,-10.631,-10.652,-10.657,-10.677,-10.713,-10.754,-10.797,-10.854,-10.936,-11.044,-11.171,-11.306,
--11.440,-11.565,-11.676,-11.777,-11.869,-11.943,-11.979,-11.970,-11.931,-11.888,-11.851,-11.823,-11.802,-11.792,-11.784,-11.760,
--11.706,-11.635,-11.580,-11.554,-11.541,-11.514,-11.468,-11.414,-11.362,-11.310,-11.263,-11.233,-11.221,-11.208,-11.184,-11.170,
--11.188,-11.213,-11.175,-11.042,-10.899,-10.881,-11.028,-11.211,-11.247,-11.089,-10.886,-10.831,-10.980,-11.217,-11.400,-11.491,
--11.541,-11.592,-11.620,-11.592,-11.530,-11.495,-11.517,-11.559,-11.553,-11.479,-11.379,-11.315,-11.308,-11.332,-11.349,-11.342,
--11.320,-11.305,-11.297,-11.285,-11.258,-11.226,-11.207,-11.207,-11.212,-11.207,-11.195,-11.188,-11.183,-11.161,-11.110,-11.046,
--10.993,-10.954,-10.905,-10.832,-10.753,-10.695,-10.647,-10.565,-10.422,-10.250,-10.111,-10.033,-9.995,-9.964,-9.940,-9.944,
--9.964,-9.952,-9.870,-9.737,-9.612,-9.538,-9.493,-9.430,-9.325,-9.205,-9.108,-9.049,-9.011,-8.969,-8.904,-8.809,
--8.683,-8.542,-8.413,-8.327,-8.281,-8.245,-8.182,-8.082,-7.969,-7.867,-7.780,-7.697,-7.611,-7.533,-7.467,-7.398,
--7.306,-7.191,-7.080,-6.990,-6.905,-6.792,-6.647,-6.502,-6.397,-6.336,-6.285,-6.218,-6.140,-6.070,-6.015,-5.960,
--5.902,-5.851,-5.817,-5.785,-5.730,-5.651,-5.572,-5.512,-5.457,-5.377,-5.262,-5.132,-5.012,-4.914,-4.831,-4.756,
--4.680,-4.579,-4.430,-4.234,-4.016,-3.809,-3.619,-3.439,-3.270,-3.130,-3.026,-2.937,-2.836,-2.707,-2.559,-2.402,
--2.246,-2.109,-2.014,-1.966,-1.931,-1.866,-1.773,-1.693,-1.656,-1.631,-1.557,-1.417,-1.258,-1.133,-1.035,-.910,
--.724,-.503,-.298,-.132,.003,.125,.254,.420,.650,.938,1.228,1.470,1.676,1.910,2.214,2.558,
-2.874,3.138,3.389,3.679,4.018,4.376,4.722,5.060,5.430,5.872,6.387,6.888,7.231,7.338,7.332,7.517,
-8.130,9.087,9.980,10.407,10.310,10.003,9.869,10.044,10.396,10.726,10.945,11.071,11.159,11.292,11.590,12.136,
-12.858,13.537,13.987,14.231,14.429,14.621,14.574,13.918,12.484,10.560,8.877,8.349,9.663,12.856,17.122,21.111,
-23.710,24.781,25.217,26.142,27.901,29.757,30.536,29.625,27.418,24.925,23.025,22.019,21.696,21.673,21.681,21.688,
-21.869,22.438,23.396,24.405,24.982,24.894,24.382,23.928,23.797,23.824,23.675,23.255,22.790,22.515,22.367,22.053,
-21.397,20.545,19.804,19.338,19.063,18.807,18.493,18.149,17.798,17.431,17.075,16.827,16.782,16.917,17.107,17.240,
-17.300,17.331,17.358,17.366,17.343,17.305,17.265,17.207,17.106,16.969,16.824,16.677,16.498,16.261,15.979,15.685,
-15.382,15.051,14.688,14.334,14.034,13.783,13.518,13.151,12.596,11.794,10.757,9.630,8.673,8.114,7.980,8.059,
-8.058,7.809,7.318,6.659,5.855,4.880,3.746,2.540,1.382,.354,-.517,-1.234,-1.819,-2.309,-2.751,-3.161,
--3.524,-3.820,-4.065,-4.299,-4.545,-4.794,-5.022,-5.221,-5.400,-5.569,-5.743,-5.943,-6.187,-6.454,-6.686,-6.849,
--6.975,-7.131,-7.339,-7.534,-7.632,-7.620,-7.570,-7.561,-7.602,-7.638,-7.625,-7.575,-7.533,-7.521,-7.515,-7.471,
--7.369,-7.220,-7.049,-6.866,-6.658,-6.408,-6.127,-5.857,-5.638,-5.460,-5.256,-4.962,-4.582,-4.185,-3.835,-3.531,
--3.218,-2.849,-2.430,-2.001,-1.597,-1.232,-.903,-.582,-.205,.302,.945,1.620,2.160,2.453,2.524,2.519,
-2.602,2.879,3.377,4.051,4.800,5.479,5.957,6.186,6.229,6.205,6.205,6.254,6.339,6.455,6.626,6.862,
-7.138,7.414,7.678,7.963,8.301,8.671,9.001,9.231,9.375,9.516,9.729,10.017,10.332,10.625,10.897,11.169,
-11.449,11.722,11.975,12.222,12.482,12.753,13.017,13.261,13.483,13.695,13.909,14.142,14.406,14.688,14.948,15.152,
-15.314,15.492,15.728,15.998,16.239,16.415,16.548,16.673,16.795,16.891,16.957,17.016,17.091,17.177,17.268,17.381,
-17.534,17.694,17.784,17.760,17.656,17.549,17.461,17.344,17.156,16.931,16.748,16.645,16.586,16.522,16.445,16.373,
-16.305,16.223,16.135,16.080,16.067,16.043,15.953,15.811,15.691,15.638,15.617,15.586,15.566,15.619,15.742,15.846,
-15.867,15.854,15.910,16.055,16.198,16.273,16.349,16.561,16.938,17.340,17.593,17.656,17.636,17.666,17.795,17.988,
-18.171,18.272,18.264,18.218,18.277,18.528,18.873,19.103,19.125,19.067,19.102,19.191,19.124,18.826,18.557,18.345,
-18.822,19.477,19.907,19.863,19.546,19.423,19.735,20.250,20.539,20.456,20.243,20.212,20.407,20.635,20.743,20.770,
-20.816,20.887,20.923,20.929,20.994,21.159,21.354,21.491,21.584,21.719,21.920,22.112,22.237,22.340,22.501,22.718,
-22.913,23.061,23.233,23.492,23.783,23.983,24.062,24.115,24.234,24.394,24.506,24.566,24.675,24.898,25.166,25.367,
-25.485,25.612,25.802,25.989,26.079,26.073,26.059,26.087,26.115,26.099,26.081,26.146,26.306,26.500,26.702,26.988,
-27.459,28.114,28.858,29.613,30.348,30.997,31.396,31.419,31.176,31.009,31.233,31.853,32.572,33.059,33.205,33.129,
-33.010,32.934,32.891,32.843,32.758,32.620,32.422,32.175,31.895,31.595,31.284,30.979,30.683,30.354,29.925,29.376,
-28.777,28.232,27.765,27.318,26.858,26.492,26.419,26.754,27.401,28.109,28.647,28.914,28.939,28.796,28.552,28.243,
-27.872,27.431,26.943,26.484,26.141,25.938,25.815,25.698,25.579,25.512,25.541,25.651,25.802,25.979,26.188,26.434,
-26.726,27.105,27.610,28.196,28.705,28.980,29.016,28.977,29.025,29.164,29.247,29.129,28.769,28.198,27.437,26.502,
-25.462,24.449,23.589,22.939,22.504,22.278,22.237,22.309,22.393,22.428,22.426,22.420,22.409,22.389,22.417,22.582,
-22.891,23.233,23.500,23.717,23.989,24.326,24.584,24.666,24.744,25.176,26.166,27.533,28.873,29.923,30.727,31.444,
-32.091,32.528,32.653,32.521,32.249,31.874,31.360,30.731,30.107,29.588,29.152,28.707,28.225,27.789,27.484,27.304,
-27.175,27.050,26.951,26.906,26.892,26.857,26.772,26.660,26.560,26.481,26.396,26.267,26.087,25.902,25.792,25.799,
-25.882,25.957,25.997,26.071,26.248,26.479,26.642,26.719,26.874,27.260,27.766,28.038,27.830,27.287,26.807,26.597,
-26.453,26.032,25.282,24.524,24.084,23.943,23.801,23.439,22.924,22.454,22.097,21.763,21.378,20.997,20.710,20.518,
-20.343,20.152,19.987,19.885,19.805,19.693,19.560,19.473,19.461,19.479,19.482,19.474,19.468,19.418,19.257,18.991,
-18.716,18.510,18.335,18.098,17.786,17.491,17.293,17.145,16.937,16.635,16.320,16.077,15.884,15.655,15.358,15.052,
-14.796,14.570,14.321,14.042,13.789,13.586,13.380,13.097,12.737,12.372,12.060,11.786,11.502,11.198,10.910,10.663,
-10.436,10.194,9.923,9.636,9.333,9.002,8.648,8.314,8.040,7.829,7.641,7.442,7.227,7.006,6.772,6.507,
-6.213,5.917,5.643,5.384,5.103,4.781,4.434,4.091,3.759,3.413,3.015,2.562,2.089,1.640,1.231,.835,
-.406,-.075,-.593,-1.115,-1.627,-2.136,-2.640,-3.114,-3.537,-3.935,-4.385,-4.943,-5.584,-6.194,-6.663,-6.972,
--7.203,-7.464,-7.798,-8.173,-8.537,-8.869,-9.188,-9.511,-9.832,-10.152,-10.507,-10.956,-11.528,-12.185,-12.843,-13.440,
--13.972,-14.475,-14.973,-15.463,-15.941,-16.418,-16.914,-17.430,-17.949,-18.458,-18.960,-19.460,-19.939,-20.374,-20.777,-21.194,
--21.666,-22.178,-22.667,-23.090,-23.462,-23.839,-24.263,-24.727,-25.200,-25.671,-26.154,-26.666,-27.198,-27.701,-28.119,-28.436,
--28.695,-28.985,-29.363,-29.804,-30.225,-30.577,-30.903,-31.280,-31.711,-32.092,-32.317,-32.397,-32.460,-32.611,-32.844,-33.100,
--33.403,-33.882,-34.623,-35.516,-36.284,-36.694,-36.737,-36.618,-36.599,-36.847,-37.383,-38.124,-38.922,-39.617,-40.104,-40.381,
--40.530,-40.643,-40.750,-40.833,-40.882,-40.916,-40.954,-40.972,-40.918,-40.762,-40.525,-40.257,-40.000,-39.785,-39.647,-39.628,
--39.730,-39.859,-39.838,-39.510,-38.860,-38.055,-37.324,-36.810,-36.507,-36.351,-36.331,-36.478,-36.755,-37.015,-37.135,-37.165,
--37.295,-37.617,-37.973,-38.072,-37.775,-37.189,-36.474,-35.634,-34.594,-33.481,-32.681,-32.482,-32.679,-32.637,-31.851,-30.434,
--29.013,-28.140,-27.849,-27.775,-27.609,-27.380,-27.308,-27.514,-27.923,-28.392,-28.845,-29.269,-29.641,-29.912,-30.056,-30.078,
--29.979,-29.762,-29.482,-29.263,-29.213,-29.314,-29.428,-29.424,-29.292,-29.106,-28.907,-28.648,-28.268,-27.779,-27.266,-26.794,
--26.347,-25.870,-25.373,-24.958,-24.750,-24.784,-24.974,-25.182,-25.327,-25.422,-25.513,-25.597,-25.630,-25.620,-25.666,-25.870,
--26.163,-26.280,-25.950,-25.158,-24.189,-23.400,-22.934,-22.654,-22.331,-21.843,-21.203,-20.449,-19.582,-18.608,-17.605,-16.675,
--15.864,-15.136,-14.451,-13.813,-13.247,-12.731,-12.193,-11.568,-10.827,-9.961,-8.963,-7.857,-6.728,-5.675,-4.726,-3.820,
--2.900,-2.018,-1.303,-.836,-.545,-.253,.211,.924,1.853,2.873,3.790,4.419,4.689,4.701,4.650,4.666,
-4.741,4.806,4.854,4.957,5.181,5.505,5.858,6.204,6.576,7.023,7.546,8.102,8.646,9.156,9.627,10.066,
-10.500,10.979,11.546,12.205,12.920,13.624,14.252,14.773,15.235,15.755,16.435,17.252,18.053,18.695,19.197,19.724,
-20.421,21.278,22.185,23.068,23.916,24.655,25.082,25.005,24.467,23.781,23.283,23.057,22.887,22.455,21.561,20.205,
-18.590,17.091,16.134,15.960,16.422,17.074,17.539,17.777,17.980,18.235,18.403,18.371,18.324,18.608,19.302,20.023,
-20.283,20.008,19.623,19.600,19.994,20.477,20.765,20.874,20.964,21.067,21.097,21.112,21.390,22.150,23.245,24.228,
-24.758,24.892,24.946,25.139,25.433,25.702,25.951,26.304,26.808,27.337,27.709,27.864,27.886,27.882,27.875,27.826,
-27.732,27.665,27.732,27.988,28.374,28.724,28.863,28.786,28.737,29.076,29.953,31.111,32.042,32.408,32.317,32.168,
-32.243,32.489,32.694,32.815,33.034,33.509,34.142,34.672,34.974,35.208,35.625,36.287,37.017,37.604,38.007,38.315,
-38.569,38.686,38.587,38.350,38.192,38.286,38.614,39.000,39.270,39.376,39.389,39.411,39.497,39.647,39.848,40.097,
-40.377,40.616,40.707,40.603,40.417,40.372,40.621,41.080,41.485,41.620,41.505,41.315,41.143,40.857,40.204,38.985,
-37.086,34.392,30.819,26.552,22.248,18.872,17.197,17.367,18.878,20.954,22.961,24.574,25.725,26.497,27.033,27.452,
-27.767,27.912,27.853,27.653,27.398,27.078,26.603,25.957,25.285,24.749,24.308,23.731,22.881,21.957,21.377,21.369,
-21.702,21.831,21.348,20.289,19.062,18.118,17.653,17.553,17.532,17.349,16.954,16.488,16.143,15.980,15.872,15.643,
-15.233,14.734,14.263,13.833,13.381,12.895,12.454,12.125,11.856,11.527,11.090,10.630,10.264,10.007,9.759,9.434,
-9.051,8.691,8.396,8.135,7.862,7.578,7.316,7.093,6.901,6.731,6.585,6.451,6.289,6.056,5.750,5.415,
-5.092,4.779,4.455,4.113,3.772,3.453,3.152,2.855,2.555,2.268,2.014,1.799,1.620,1.463,1.307,1.137,
-.951,.763,.592,.434,.268,.071,-.156,-.399,-.643,-.884,-1.121,-1.345,-1.547,-1.727,-1.894,-2.058,
--2.219,-2.373,-2.508,-2.610,-2.682,-2.751,-2.855,-3.015,-3.207,-3.383,-3.518,-3.625,-3.738,-3.868,-4.006,-4.152,
--4.321,-4.517,-4.716,-4.892,-5.060,-5.281,-5.601,-5.993,-6.380,-6.704,-6.964,-7.198,-7.426,-7.636,-7.823,-8.004,
--8.206,-8.429,-8.648,-8.839,-8.998,-9.136,-9.260,-9.374,-9.482,-9.588,-9.689,-9.773,-9.834,-9.877,-9.914,-9.959,
--10.029,-10.143,-10.304,-10.482,-10.620,-10.676,-10.661,-10.625,-10.618,-10.654,-10.714,-10.784,-10.864,-10.963,-11.079,-11.208,
--11.340,-11.468,-11.583,-11.678,-11.758,-11.830,-11.894,-11.939,-11.951,-11.935,-11.904,-11.876,-11.856,-11.839,-11.810,-11.752,
--11.662,-11.555,-11.464,-11.406,-11.369,-11.327,-11.275,-11.236,-11.227,-11.233,-11.216,-11.167,-11.112,-11.082,-11.075,-11.069,
--11.060,-11.060,-11.062,-11.029,-10.951,-10.887,-10.924,-11.065,-11.194,-11.175,-11.006,-10.844,-10.858,-11.067,-11.335,-11.517,
--11.586,-11.619,-11.676,-11.736,-11.750,-11.721,-11.716,-11.783,-11.888,-11.942,-11.876,-11.708,-11.521,-11.396,-11.354,-11.362,
--11.378,-11.387,-11.400,-11.417,-11.417,-11.375,-11.298,-11.231,-11.212,-11.242,-11.287,-11.319,-11.330,-11.328,-11.312,-11.276,
--11.226,-11.170,-11.110,-11.036,-10.948,-10.871,-10.828,-10.801,-10.736,-10.594,-10.402,-10.229,-10.123,-10.080,-10.065,-10.060,
--10.071,-10.086,-10.069,-9.987,-9.854,-9.713,-9.598,-9.501,-9.396,-9.281,-9.179,-9.107,-9.056,-9.010,-8.961,-8.910,
--8.846,-8.747,-8.615,-8.483,-8.397,-8.360,-8.329,-8.261,-8.153,-8.044,-7.955,-7.870,-7.762,-7.640,-7.543,-7.491,
--7.449,-7.364,-7.226,-7.082,-6.981,-6.915,-6.835,-6.711,-6.570,-6.458,-6.389,-6.334,-6.264,-6.180,-6.100,-6.028,
--5.957,-5.887,-5.840,-5.821,-5.801,-5.742,-5.640,-5.537,-5.474,-5.443,-5.398,-5.300,-5.161,-5.020,-4.911,-4.837,
--4.775,-4.696,-4.578,-4.411,-4.208,-4.001,-3.813,-3.651,-3.506,-3.371,-3.248,-3.134,-3.021,-2.902,-2.781,-2.658,
--2.528,-2.383,-2.243,-2.143,-2.099,-2.078,-2.035,-1.956,-1.873,-1.811,-1.753,-1.655,-1.510,-1.361,-1.249,-1.161,
--1.043,-.861,-.634,-.408,-.213,-.057,.067,.180,.325,.543,.829,1.130,1.396,1.637,1.904,2.223,
-2.550,2.828,3.060,3.317,3.661,4.077,4.486,4.835,5.155,5.550,6.110,6.806,7.463,7.847,7.871,7.742,
-7.871,8.557,9.682,10.746,11.245,11.066,10.535,10.104,10.006,10.185,10.463,10.727,10.962,11.205,11.520,11.977,
-12.588,13.250,13.790,14.114,14.283,14.395,14.395,14.031,13.053,11.476,9.702,8.439,8.478,10.345,13.919,18.250,
-21.936,23.996,24.606,24.951,26.174,28.314,30.251,30.716,29.386,27.063,24.897,23.508,22.802,22.395,22.070,21.836,
-21.768,21.920,22.341,23.023,23.766,24.214,24.129,23.637,23.136,22.905,22.863,22.736,22.412,22.056,21.856,21.755,
-21.500,20.946,20.231,19.618,19.224,18.958,18.672,18.331,17.985,17.669,17.373,17.113,16.954,16.943,17.031,17.115,
-17.141,17.133,17.130,17.119,17.066,16.980,16.915,16.896,16.879,16.813,16.696,16.573,16.459,16.316,16.101,15.828,
-15.545,15.277,15.002,14.698,14.376,14.058,13.733,13.347,12.837,12.151,11.266,10.231,9.213,8.464,8.159,8.228,
-8.359,8.215,7.666,6.835,5.916,4.999,4.042,2.995,1.897,.853,-.046,-.783,-1.398,-1.947,-2.470,-2.974,
--3.432,-3.811,-4.112,-4.375,-4.637,-4.891,-5.104,-5.261,-5.387,-5.513,-5.641,-5.759,-5.888,-6.075,-6.336,-6.615,
--6.831,-6.969,-7.088,-7.249,-7.433,-7.563,-7.593,-7.560,-7.537,-7.547,-7.552,-7.514,-7.447,-7.410,-7.434,-7.489,
--7.508,-7.439,-7.279,-7.058,-6.809,-6.543,-6.260,-5.974,-5.724,-5.544,-5.426,-5.299,-5.081,-4.737,-4.317,-3.905,
--3.555,-3.255,-2.953,-2.603,-2.196,-1.751,-1.311,-.916,-.574,-.230,.214,.819,1.534,2.193,2.613,2.723,
-2.615,2.488,2.544,2.893,3.523,4.318,5.113,5.755,6.163,6.351,6.405,6.418,6.451,6.530,6.669,6.882,
-7.168,7.491,7.803,8.076,8.330,8.607,8.922,9.243,9.524,9.751,9.956,10.176,10.415,10.653,10.880,11.114,
-11.382,11.684,11.992,12.275,12.526,12.758,12.997,13.258,13.537,13.810,14.048,14.256,14.476,14.752,15.069,15.357,
-15.558,15.698,15.865,16.114,16.402,16.639,16.782,16.874,16.974,17.084,17.168,17.211,17.243,17.300,17.379,17.463,
-17.562,17.695,17.836,17.912,17.878,17.775,17.687,17.643,17.585,17.448,17.247,17.056,16.923,16.823,16.712,16.589,
-16.483,16.403,16.327,16.245,16.176,16.134,16.087,15.997,15.881,15.802,15.791,15.810,15.807,15.799,15.840,15.934,
-16.007,16.004,15.971,16.006,16.124,16.237,16.287,16.351,16.556,16.884,17.135,17.126,16.930,16.861,17.198,17.908,
-18.624,18.903,18.546,17.760,17.049,16.906,17.476,18.445,19.269,19.577,19.397,19.009,18.646,18.372,18.227,18.345,
-18.370,19.001,19.635,19.953,19.837,19.510,19.339,19.482,19.765,19.921,19.898,19.886,20.048,20.325,20.527,20.574,
-20.557,20.592,20.669,20.715,20.724,20.779,20.929,21.115,21.250,21.336,21.451,21.634,21.842,22.020,22.175,22.355,
-22.567,22.777,22.977,23.206,23.476,23.722,23.867,23.935,24.035,24.224,24.437,24.572,24.639,24.753,24.985,25.261,
-25.458,25.546,25.617,25.739,25.870,25.924,25.899,25.878,25.914,25.961,25.947,25.886,25.875,25.985,26.197,26.448,
-26.712,27.019,27.412,27.936,28.629,29.474,30.328,30.954,31.187,31.109,31.015,31.176,31.621,32.148,32.533,32.698,
-32.708,32.658,32.600,32.550,32.512,32.461,32.342,32.104,31.749,31.343,30.972,30.696,30.525,30.412,30.263,29.988,
-29.572,29.093,28.649,28.259,27.859,27.416,27.036,26.923,27.202,27.797,28.460,28.940,29.114,28.997,28.675,28.238,
-27.752,27.263,26.805,26.419,26.137,25.962,25.860,25.782,25.710,25.675,25.705,25.795,25.914,26.059,26.268,26.567,
-26.938,27.360,27.858,28.462,29.109,29.612,29.796,29.663,29.401,29.213,29.145,29.087,28.909,28.559,28.034,27.331,
-26.461,25.503,24.596,23.857,23.321,22.974,22.806,22.806,22.913,23.028,23.075,23.056,23.009,22.963,22.947,23.014,
-23.215,23.521,23.822,24.043,24.231,24.483,24.782,24.990,25.055,25.180,25.696,26.719,28.000,29.142,29.975,30.651,
-31.378,32.146,32.744,33.012,32.986,32.791,32.475,32.011,31.428,30.851,30.376,29.967,29.516,29.001,28.530,28.216,
-28.051,27.934,27.797,27.671,27.612,27.618,27.627,27.593,27.533,27.486,27.447,27.361,27.184,26.945,26.745,26.680,
-26.754,26.871,26.931,26.942,27.020,27.242,27.533,27.730,27.781,27.835,28.058,28.389,28.538,28.288,27.760,27.297,
-27.080,26.921,26.495,25.734,24.923,24.395,24.187,24.050,23.749,23.278,22.787,22.370,22.005,21.649,21.329,21.088,
-20.913,20.746,20.571,20.429,20.347,20.290,20.206,20.096,20.014,19.988,19.998,20.014,20.030,20.031,19.966,19.786,
-19.515,19.250,19.055,18.888,18.663,18.366,18.079,17.866,17.688,17.455,17.146,16.833,16.586,16.379,16.133,15.821,
-15.501,15.232,15.004,14.766,14.508,14.263,14.046,13.812,13.503,13.135,12.781,12.493,12.243,11.968,11.649,11.331,
-11.063,10.841,10.619,10.360,10.061,9.734,9.391,9.047,8.727,8.455,8.235,8.048,7.869,7.680,7.464,7.210,
-6.917,6.614,6.336,6.096,5.871,5.626,5.346,5.042,4.727,4.392,4.015,3.585,3.123,2.669,2.253,1.870,
-1.476,1.026,.507,-.047,-.583,-1.070,-1.519,-1.962,-2.420,-2.895,-3.387,-3.905,-4.451,-4.996,-5.487,-5.888,
--6.212,-6.519,-6.864,-7.257,-7.668,-8.062,-8.422,-8.753,-9.063,-9.362,-9.677,-10.050,-10.518,-11.088,-11.722,-12.363,
--12.963,-13.509,-14.012,-14.492,-14.963,-15.436,-15.916,-16.403,-16.892,-17.382,-17.877,-18.381,-18.881,-19.351,-19.776,-20.175,
--20.591,-21.053,-21.544,-22.014,-22.427,-22.801,-23.190,-23.640,-24.146,-24.661,-25.145,-25.605,-26.084,-26.610,-27.158,-27.661,
--28.070,-28.409,-28.754,-29.161,-29.611,-30.036,-30.397,-30.729,-31.085,-31.459,-31.782,-31.999,-32.139,-32.284,-32.485,-32.718,
--32.950,-33.215,-33.605,-34.176,-34.873,-35.556,-36.098,-36.445,-36.623,-36.715,-36.837,-37.111,-37.597,-38.243,-38.911,-39.473,
--39.895,-40.221,-40.501,-40.734,-40.891,-40.964,-40.981,-40.973,-40.943,-40.878,-40.777,-40.648,-40.490,-40.295,-40.067,-39.854,
--39.729,-39.734,-39.808,-39.790,-39.512,-38.921,-38.143,-37.398,-36.850,-36.521,-36.342,-36.274,-36.341,-36.541,-36.790,-36.983,
--37.126,-37.335,-37.676,-38.022,-38.134,-37.869,-37.291,-36.533,-35.634,-34.580,-33.509,-32.746,-32.519,-32.639,-32.563,-31.859,
--30.618,-29.363,-28.562,-28.250,-28.125,-27.939,-27.727,-27.686,-27.927,-28.380,-28.907,-29.421,-29.882,-30.240,-30.440,-30.472,
--30.380,-30.224,-30.043,-29.879,-29.791,-29.818,-29.921,-29.994,-29.958,-29.819,-29.628,-29.395,-29.069,-28.616,-28.086,-27.590,
--27.202,-26.913,-26.666,-26.450,-26.322,-26.358,-26.566,-26.869,-27.159,-27.376,-27.527,-27.636,-27.695,-27.672,-27.590,-27.557,
--27.670,-27.880,-27.954,-27.647,-26.915,-25.972,-25.108,-24.458,-23.947,-23.437,-22.880,-22.315,-21.750,-21.106,-20.290,-19.293,
--18.195,-17.085,-16.007,-14.987,-14.064,-13.276,-12.612,-12.010,-11.394,-10.711,-9.929,-9.025,-8.012,-6.954,-5.935,-5.006,
--4.164,-3.395,-2.719,-2.152,-1.656,-1.144,-.567,.041,.613,1.139,1.682,2.280,2.872,3.333,3.594,3.691,
-3.714,3.725,3.752,3.833,4.024,4.351,4.774,5.224,5.676,6.159,6.702,7.283,7.848,8.360,8.831,9.286,
-9.736,10.181,10.640,11.158,11.768,12.448,13.123,13.703,14.161,14.573,15.078,15.763,16.575,17.361,18.011,18.558,
-19.131,19.807,20.557,21.329,22.141,23.024,23.863,24.382,24.353,23.841,23.181,22.675,22.309,21.789,20.838,19.441,
-17.846,16.405,15.425,15.084,15.355,15.980,16.584,16.935,17.087,17.248,17.503,17.728,17.792,17.781,17.927,18.307,
-18.723,18.923,18.908,18.925,19.161,19.522,19.775,19.850,19.891,20.017,20.147,20.150,20.128,20.413,21.214,22.331,
-23.300,23.816,23.975,24.087,24.326,24.630,24.901,25.184,25.604,26.167,26.710,27.054,27.171,27.171,27.176,27.217,
-27.255,27.250,27.198,27.150,27.202,27.440,27.829,28.194,28.362,28.380,28.542,29.125,30.075,31.006,31.553,31.702,
-31.745,31.929,32.204,32.357,32.329,32.316,32.540,32.998,33.491,33.889,34.286,34.878,35.723,36.674,37.543,38.250,
-38.809,39.196,39.319,39.133,38.750,38.400,38.266,38.376,38.622,38.875,39.062,39.176,39.241,39.293,39.373,39.519,
-39.740,39.992,40.182,40.220,40.113,39.998,40.055,40.342,40.710,40.926,40.889,40.717,40.563,40.375,39.861,38.725,
-36.892,34.460,31.495,27.985,24.092,20.401,17.789,16.899,17.699,19.529,21.581,23.344,24.700,25.720,26.475,27.000,
-27.338,27.525,27.572,27.473,27.256,26.970,26.628,26.188,25.633,25.027,24.463,23.936,23.328,22.554,21.719,21.073,
-20.789,20.776,20.728,20.366,19.637,18.730,17.930,17.429,17.223,17.141,16.971,16.630,16.220,15.919,15.795,15.726,
-15.522,15.108,14.576,14.065,13.615,13.184,12.755,12.383,12.112,11.880,11.561,11.101,10.586,10.151,9.840,9.576,
-9.270,8.910,8.553,8.245,7.973,7.704,7.431,7.173,6.940,6.731,6.545,6.390,6.261,6.117,5.910,5.623,
-5.282,4.932,4.604,4.299,4.003,3.702,3.383,3.050,2.724,2.433,2.189,1.976,1.772,1.574,1.389,1.223,
-1.065,.902,.737,.583,.435,.268,.055,-.200,-.474,-.745,-1.011,-1.281,-1.550,-1.796,-1.999,-2.158,
--2.291,-2.422,-2.560,-2.692,-2.799,-2.872,-2.932,-3.018,-3.156,-3.337,-3.531,-3.714,-3.882,-4.038,-4.180,-4.308,
--4.439,-4.600,-4.791,-4.979,-5.133,-5.267,-5.447,-5.722,-6.079,-6.450,-6.776,-7.047,-7.284,-7.497,-7.678,-7.834,
--7.997,-8.199,-8.437,-8.672,-8.862,-8.999,-9.107,-9.213,-9.326,-9.443,-9.555,-9.656,-9.744,-9.819,-9.879,-9.922,
--9.959,-10.012,-10.112,-10.263,-10.431,-10.556,-10.602,-10.585,-10.556,-10.563,-10.615,-10.698,-10.800,-10.916,-11.041,-11.164,
--11.272,-11.363,-11.445,-11.522,-11.592,-11.660,-11.731,-11.806,-11.869,-11.899,-11.887,-11.852,-11.828,-11.835,-11.852,-11.832,
--11.741,-11.590,-11.438,-11.342,-11.304,-11.270,-11.195,-11.096,-11.040,-11.065,-11.131,-11.162,-11.123,-11.060,-11.034,-11.052,
--11.068,-11.044,-10.992,-10.946,-10.922,-10.912,-10.926,-10.986,-11.086,-11.160,-11.144,-11.057,-11.005,-11.087,-11.280,-11.468,
--11.553,-11.550,-11.555,-11.630,-11.742,-11.817,-11.832,-11.846,-11.932,-12.089,-12.230,-12.249,-12.105,-11.863,-11.634,-11.501,
--11.470,-11.493,-11.526,-11.555,-11.577,-11.572,-11.512,-11.402,-11.292,-11.241,-11.263,-11.319,-11.358,-11.360,-11.342,-11.321,
--11.303,-11.280,-11.246,-11.195,-11.120,-11.030,-10.952,-10.911,-10.896,-10.857,-10.744,-10.563,-10.370,-10.228,-10.158,-10.142,
--10.156,-10.180,-10.193,-10.167,-10.082,-9.951,-9.803,-9.657,-9.511,-9.368,-9.247,-9.171,-9.131,-9.093,-9.034,-8.965,
--8.913,-8.873,-8.811,-8.708,-8.588,-8.495,-8.438,-8.379,-8.280,-8.154,-8.043,-7.962,-7.874,-7.743,-7.593,-7.488,
--7.457,-7.448,-7.380,-7.231,-7.062,-6.949,-6.894,-6.840,-6.736,-6.597,-6.473,-6.388,-6.326,-6.259,-6.184,-6.109,
--6.030,-5.940,-5.854,-5.806,-5.804,-5.809,-5.763,-5.655,-5.532,-5.449,-5.407,-5.354,-5.245,-5.091,-4.941,-4.835,
--4.765,-4.696,-4.598,-4.467,-4.316,-4.160,-4.002,-3.844,-3.687,-3.546,-3.431,-3.337,-3.243,-3.126,-2.989,-2.854,
--2.738,-2.625,-2.496,-2.363,-2.264,-2.230,-2.235,-2.224,-2.161,-2.056,-1.941,-1.828,-1.708,-1.580,-1.460,-1.363,
--1.271,-1.151,-.988,-.793,-.590,-.394,-.217,-.064,.075,.242,.475,.771,1.079,1.359,1.625,1.922,
-2.254,2.569,2.817,3.026,3.290,3.671,4.129,4.555,4.877,5.133,5.452,5.947,6.599,7.227,7.592,7.600,
-7.443,7.510,8.089,9.084,10.050,10.528,10.405,9.959,9.599,9.551,9.786,10.159,10.565,10.979,11.413,11.892,
-12.425,12.979,13.471,13.818,14.020,14.142,14.182,13.982,13.314,12.096,10.539,9.118,8.441,9.092,11.392,15.077,
-19.159,22.336,23.890,24.325,25.003,26.915,29.679,31.794,31.957,30.174,27.636,25.593,24.428,23.729,23.034,22.322,
-21.838,21.695,21.785,22.000,22.359,22.841,23.226,23.232,22.826,22.292,21.948,21.848,21.803,21.664,21.473,21.331,
-21.204,20.936,20.457,19.886,19.402,19.059,18.774,18.463,18.144,17.874,17.658,17.455,17.264,17.136,17.101,17.115,
-17.106,17.061,17.019,16.985,16.908,16.754,16.583,16.494,16.511,16.553,16.524,16.422,16.309,16.209,16.072,15.847,
-15.564,15.301,15.094,14.894,14.625,14.262,13.828,13.340,12.785,12.131,11.362,10.494,9.601,8.839,8.386,8.307,
-8.433,8.415,7.961,7.053,5.927,4.852,3.922,3.053,2.140,1.186,.284,-.487,-1.129,-1.704,-2.274,-2.856,
--3.419,-3.913,-4.301,-4.600,-4.858,-5.109,-5.338,-5.505,-5.607,-5.686,-5.785,-5.896,-5.989,-6.077,-6.220,-6.453,
--6.724,-6.932,-7.034,-7.092,-7.198,-7.371,-7.537,-7.616,-7.601,-7.546,-7.496,-7.446,-7.378,-7.308,-7.286,-7.337,
--7.429,-7.490,-7.457,-7.317,-7.092,-6.822,-6.534,-6.241,-5.957,-5.704,-5.508,-5.366,-5.232,-5.030,-4.713,-4.304,
--3.885,-3.527,-3.244,-2.983,-2.673,-2.277,-1.802,-1.300,-.836,-.451,-.122,.235,.712,1.326,1.982,2.519,
-2.822,2.896,2.850,2.822,2.911,3.160,3.575,4.127,4.745,5.322,5.766,6.052,6.233,6.392,6.590,6.841,
-7.138,7.475,7.843,8.217,8.555,8.828,9.046,9.254,9.495,9.782,10.097,10.405,10.678,10.904,11.098,11.295,
-11.532,11.821,12.147,12.475,12.772,13.023,13.235,13.441,13.678,13.955,14.239,14.478,14.662,14.845,15.091,15.398,
-15.684,15.879,16.008,16.167,16.416,16.704,16.936,17.076,17.174,17.289,17.412,17.494,17.522,17.538,17.578,17.635,
-17.687,17.751,17.869,18.023,18.129,18.115,18.010,17.912,17.873,17.840,17.732,17.540,17.331,17.165,17.032,16.897,
-16.761,16.654,16.583,16.514,16.420,16.320,16.241,16.179,16.104,16.025,15.986,16.011,16.064,16.087,16.080,16.087,
-16.126,16.152,16.131,16.108,16.162,16.293,16.403,16.433,16.457,16.595,16.824,16.939,16.779,16.477,16.422,16.916,
-17.840,18.678,18.877,18.269,17.204,16.335,16.202,16.904,18.053,19.051,19.472,19.287,18.774,18.267,17.976,18.000,
-18.370,18.462,19.030,19.478,19.601,19.414,19.147,19.050,19.178,19.383,19.517,19.594,19.740,19.999,20.257,20.382,
-20.378,20.375,20.452,20.556,20.594,20.577,20.612,20.759,20.956,21.100,21.175,21.258,21.412,21.617,21.813,21.985,
-22.165,22.380,22.624,22.880,23.145,23.396,23.590,23.705,23.799,23.961,24.213,24.470,24.640,24.737,24.865,25.088,
-25.345,25.533,25.623,25.683,25.766,25.839,25.839,25.774,25.722,25.730,25.758,25.731,25.651,25.604,25.679,25.885,
-26.156,26.418,26.647,26.893,27.261,27.858,28.695,29.621,30.383,30.798,30.905,30.928,31.079,31.407,31.800,32.125,
-32.321,32.393,32.361,32.252,32.115,31.996,31.890,31.731,31.449,31.045,30.598,30.209,29.946,29.824,29.808,29.816,
-29.747,29.531,29.176,28.747,28.302,27.866,27.479,27.242,27.283,27.647,28.215,28.755,29.056,29.033,28.737,28.281,
-27.769,27.269,26.820,26.449,26.177,26.002,25.891,25.802,25.724,25.696,25.764,25.919,26.093,26.232,26.366,26.587,
-26.953,27.432,27.960,28.519,29.121,29.711,30.135,30.250,30.067,29.757,29.495,29.317,29.130,28.840,28.417,27.867,
-27.182,26.369,25.506,24.725,24.124,23.714,23.464,23.353,23.378,23.496,23.619,23.671,23.642,23.574,23.520,23.525,
-23.639,23.875,24.172,24.425,24.590,24.738,24.954,25.203,25.360,25.417,25.609,26.246,27.380,28.693,29.771,30.474,
-31.006,31.621,32.333,32.935,33.253,33.299,33.179,32.934,32.539,32.025,31.503,31.061,30.659,30.199,29.677,29.215,
-28.923,28.781,28.675,28.536,28.407,28.363,28.406,28.466,28.485,28.471,28.457,28.426,28.316,28.095,27.823,27.623,
-27.588,27.693,27.827,27.899,27.941,28.068,28.330,28.622,28.763,28.700,28.584,28.608,28.767,28.841,28.643,28.251,
-27.926,27.794,27.668,27.239,26.429,25.504,24.813,24.463,24.277,24.017,23.614,23.152,22.719,22.323,21.950,21.619,
-21.365,21.187,21.051,20.940,20.862,20.812,20.751,20.651,20.537,20.471,20.478,20.527,20.567,20.577,20.550,20.460,
-20.281,20.036,19.796,19.607,19.442,19.233,18.963,18.686,18.453,18.245,18.003,17.706,17.398,17.122,16.863,16.574,
-16.245,15.924,15.653,15.421,15.186,14.935,14.688,14.451,14.190,13.877,13.535,13.223,12.963,12.713,12.413,12.061,
-11.717,11.439,11.221,11.007,10.746,10.431,10.091,9.757,9.446,9.161,8.906,8.683,8.493,8.321,8.142,7.921,
-7.647,7.341,7.049,6.804,6.599,6.398,6.169,5.909,5.625,5.319,4.974,4.580,4.147,3.705,3.278,2.876,
-2.484,2.071,1.604,1.074,.509,-.032,-.503,-.911,-1.315,-1.780,-2.329,-2.931,-3.522,-4.048,-4.486,-4.851,
--5.181,-5.520,-5.896,-6.308,-6.736,-7.158,-7.561,-7.937,-8.282,-8.599,-8.912,-9.260,-9.678,-10.173,-10.726,-11.313,
--11.911,-12.501,-13.060,-13.576,-14.056,-14.524,-14.998,-15.474,-15.936,-16.381,-16.831,-17.308,-17.811,-18.309,-18.774,-19.209,
--19.641,-20.103,-20.599,-21.098,-21.559,-21.957,-22.310,-22.671,-23.093,-23.592,-24.128,-24.638,-25.097,-25.541,-26.024,-26.559,
--27.096,-27.574,-27.982,-28.367,-28.774,-29.194,-29.586,-29.937,-30.274,-30.628,-30.978,-31.270,-31.485,-31.667,-31.881,-32.147,
--32.435,-32.710,-32.983,-33.292,-33.674,-34.149,-34.731,-35.412,-36.117,-36.713,-37.081,-37.231,-37.303,-37.462,-37.784,-38.230,
--38.733,-39.264,-39.814,-40.341,-40.764,-41.023,-41.129,-41.140,-41.111,-41.056,-40.972,-40.869,-40.762,-40.652,-40.521,-40.354,
--40.165,-40.001,-39.908,-39.884,-39.843,-39.642,-39.171,-38.449,-37.638,-36.939,-36.470,-36.232,-36.172,-36.252,-36.445,-36.696,
--36.939,-37.169,-37.447,-37.803,-38.141,-38.274,-38.074,-37.554,-36.799,-35.859,-34.778,-33.723,-32.981,-32.727,-32.784,-32.693,
--32.101,-31.086,-30.074,-29.437,-29.193,-29.090,-28.928,-28.744,-28.709,-28.915,-29.299,-29.741,-30.160,-30.523,-30.788,-30.916,
--30.910,-30.829,-30.746,-30.702,-30.709,-30.764,-30.839,-30.871,-30.793,-30.600,-30.356,-30.127,-29.906,-29.617,-29.214,-28.754,
--28.362,-28.133,-28.065,-28.089,-28.146,-28.234,-28.385,-28.612,-28.886,-29.152,-29.367,-29.517,-29.601,-29.605,-29.511,-29.339,
--29.165,-29.081,-29.091,-29.067,-28.830,-28.285,-27.495,-26.608,-25.740,-24.932,-24.199,-23.577,-23.091,-22.685,-22.220,-21.567,
--20.688,-19.631,-18.464,-17.235,-15.997,-14.827,-13.796,-12.921,-12.159,-11.451,-10.759,-10.045,-9.261,-8.362,-7.357,-6.321,
--5.361,-4.563,-3.956,-3.498,-3.068,-2.517,-1.768,-.912,-.175,.254,.406,.520,.843,1.425,2.090,2.604,
-2.855,2.897,2.867,2.892,3.043,3.336,3.744,4.214,4.703,5.211,5.756,6.336,6.914,7.449,7.937,8.410,
-8.892,9.369,9.815,10.243,10.704,11.247,11.862,12.479,13.017,13.459,13.875,14.382,15.044,15.820,16.603,17.320,
-17.981,18.633,19.284,19.907,20.522,21.218,22.041,22.849,23.353,23.359,22.960,22.443,21.969,21.389,20.396,18.881,
-17.107,15.543,14.552,14.227,14.441,14.976,15.588,16.069,16.327,16.440,16.564,16.771,16.991,17.136,17.242,17.430,
-17.742,18.074,18.305,18.450,18.620,18.844,19.015,19.045,19.012,19.080,19.264,19.386,19.317,19.226,19.482,20.269,
-21.356,22.296,22.834,23.080,23.288,23.570,23.856,24.100,24.400,24.874,25.482,26.030,26.352,26.452,26.458,26.485,
-26.563,26.670,26.762,26.784,26.712,26.618,26.664,26.951,27.381,27.725,27.873,27.991,28.362,29.071,29.891,30.516,
-30.877,31.162,31.544,31.959,32.194,32.165,32.029,32.022,32.219,32.527,32.865,33.295,33.946,34.845,35.879,36.902,
-37.832,38.628,39.220,39.514,39.488,39.239,38.929,38.676,38.519,38.454,38.476,38.571,38.695,38.795,38.860,38.930,
-39.054,39.235,39.418,39.535,39.558,39.535,39.568,39.733,39.996,40.221,40.281,40.187,40.056,39.922,39.578,38.670,
-36.975,34.583,31.762,28.689,25.390,22.001,19.022,17.189,16.984,18.237,20.225,22.174,23.696,24.813,25.686,26.387,
-26.892,27.182,27.287,27.247,27.080,26.809,26.476,26.111,25.702,25.218,24.665,24.086,23.508,22.900,22.218,21.482,
-20.785,20.230,19.851,19.594,19.358,19.040,18.584,18.021,17.465,17.041,16.779,16.586,16.346,16.046,15.779,15.620,
-15.509,15.301,14.914,14.404,13.891,13.439,13.031,12.654,12.340,12.115,11.920,11.631,11.180,10.634,10.131,9.750,
-9.457,9.163,8.829,8.480,8.157,7.868,7.596,7.325,7.056,6.796,6.550,6.327,6.141,5.998,5.872,5.719,
-5.495,5.185,4.819,4.452,4.132,3.870,3.625,3.339,2.994,2.628,2.308,2.065,1.873,1.685,1.482,1.283,
-1.106,.949,.795,.640,.494,.355,.194,-.018,-.281,-.567,-.849,-1.131,-1.425,-1.728,-2.009,-2.233,
--2.391,-2.512,-2.632,-2.767,-2.898,-2.996,-3.049,-3.081,-3.143,-3.270,-3.464,-3.696,-3.933,-4.158,-4.357,-4.517,
--4.635,-4.734,-4.853,-5.013,-5.195,-5.366,-5.522,-5.698,-5.931,-6.221,-6.529,-6.818,-7.080,-7.321,-7.537,-7.714,
--7.857,-8.001,-8.184,-8.406,-8.628,-8.807,-8.933,-9.033,-9.141,-9.268,-9.403,-9.525,-9.626,-9.709,-9.782,-9.845,
--9.897,-9.941,-9.997,-10.085,-10.205,-10.331,-10.422,-10.463,-10.473,-10.487,-10.527,-10.594,-10.682,-10.794,-10.932,-11.079,
--11.205,-11.287,-11.329,-11.356,-11.390,-11.439,-11.505,-11.586,-11.672,-11.734,-11.734,-11.662,-11.560,-11.499,-11.520,-11.593,
--11.626,-11.550,-11.383,-11.227,-11.170,-11.203,-11.227,-11.162,-11.032,-10.945,-10.968,-11.061,-11.121,-11.101,-11.048,-11.041,
--11.086,-11.114,-11.069,-10.975,-10.908,-10.910,-10.958,-11.006,-11.036,-11.063,-11.093,-11.117,-11.138,-11.185,-11.279,-11.391,
--11.455,-11.437,-11.383,-11.385,-11.497,-11.676,-11.826,-11.884,-11.873,-11.883,-11.978,-12.137,-12.259,-12.249,-12.096,-11.885,
--11.725,-11.666,-11.674,-11.691,-11.687,-11.669,-11.645,-11.602,-11.528,-11.442,-11.384,-11.373,-11.383,-11.375,-11.334,-11.284,
--11.252,-11.243,-11.240,-11.226,-11.193,-11.140,-11.073,-11.011,-10.976,-10.965,-10.942,-10.857,-10.698,-10.500,-10.328,-10.225,
--10.197,-10.221,-10.259,-10.273,-10.235,-10.142,-10.012,-9.871,-9.725,-9.572,-9.421,-9.302,-9.238,-9.213,-9.180,-9.112,
--9.029,-8.971,-8.942,-8.906,-8.825,-8.708,-8.592,-8.491,-8.384,-8.253,-8.117,-8.014,-7.943,-7.855,-7.712,-7.546,
--7.435,-7.413,-7.422,-7.370,-7.227,-7.053,-6.924,-6.851,-6.778,-6.661,-6.512,-6.380,-6.292,-6.233,-6.177,-6.119,
--6.059,-5.986,-5.891,-5.792,-5.732,-5.729,-5.747,-5.723,-5.637,-5.526,-5.438,-5.373,-5.286,-5.143,-4.966,-4.811,
--4.709,-4.635,-4.545,-4.421,-4.286,-4.175,-4.091,-4.003,-3.874,-3.705,-3.537,-3.417,-3.352,-3.301,-3.213,-3.075,
--2.918,-2.776,-2.653,-2.529,-2.405,-2.314,-2.286,-2.312,-2.335,-2.304,-2.205,-2.067,-1.928,-1.807,-1.706,-1.614,
--1.515,-1.394,-1.249,-1.091,-.930,-.760,-.575,-.384,-.205,-.037,.157,.410,.712,1.014,1.286,1.556,
-1.867,2.216,2.541,2.795,3.014,3.290,3.680,4.138,4.553,4.848,5.047,5.255,5.578,6.036,6.525,6.869,
-6.969,6.916,6.966,7.335,7.993,8.662,9.047,9.079,8.958,8.954,9.195,9.633,10.150,10.675,11.198,11.726,
-12.249,12.742,13.162,13.467,13.655,13.773,13.848,13.783,13.364,12.438,11.104,9.739,8.835,8.844,10.095,12.679,
-16.222,19.799,22.350,23.489,23.983,25.210,27.879,31.202,33.424,33.316,31.199,28.534,26.579,25.494,24.657,23.605,
-22.504,21.789,21.583,21.630,21.683,21.769,22.005,22.291,22.340,22.007,21.482,21.101,21.015,21.098,21.152,21.100,
-20.965,20.748,20.406,19.951,19.481,19.090,18.777,18.481,18.189,17.955,17.807,17.694,17.548,17.377,17.254,17.208,
-17.186,17.122,17.025,16.944,16.873,16.744,16.531,16.317,16.222,16.257,16.314,16.287,16.183,16.077,15.982,15.824,
-15.551,15.224,14.961,14.797,14.638,14.352,13.893,13.315,12.686,12.023,11.311,10.555,9.808,9.161,8.718,8.541,
-8.568,8.565,8.232,7.402,6.185,4.890,3.781,2.907,2.139,1.348,.520,-.268,-.966,-1.594,-2.206,-2.827,
--3.442,-4.006,-4.478,-4.840,-5.109,-5.328,-5.533,-5.718,-5.857,-5.944,-6.009,-6.085,-6.174,-6.257,-6.345,-6.485,
--6.700,-6.933,-7.091,-7.137,-7.138,-7.198,-7.351,-7.527,-7.631,-7.625,-7.546,-7.445,-7.349,-7.264,-7.209,-7.208,
--7.266,-7.347,-7.398,-7.377,-7.272,-7.093,-6.863,-6.603,-6.332,-6.057,-5.786,-5.535,-5.314,-5.113,-4.893,-4.610,
--4.261,-3.890,-3.550,-3.256,-2.971,-2.642,-2.242,-1.781,-1.297,-.829,-.413,-.056,.274,.640,1.090,1.624,
-2.189,2.719,3.172,3.516,3.718,3.756,3.684,3.639,3.779,4.158,4.676,5.159,5.505,5.758,6.034,6.400,
-6.819,7.218,7.583,7.966,8.410,8.880,9.276,9.532,9.680,9.831,10.082,10.444,10.840,11.181,11.438,11.650,
-11.883,12.169,12.491,12.814,13.116,13.395,13.649,13.871,14.067,14.270,14.504,14.751,14.962,15.114,15.252,15.447,
-15.707,15.962,16.141,16.259,16.402,16.626,16.893,17.124,17.295,17.445,17.606,17.748,17.823,17.840,17.861,17.922,
-17.995,18.041,18.086,18.189,18.347,18.463,18.438,18.285,18.113,18.002,17.923,17.801,17.615,17.425,17.284,17.183,
-17.082,16.979,16.899,16.846,16.779,16.668,16.537,16.436,16.374,16.320,16.259,16.222,16.237,16.282,16.305,16.286,
-16.258,16.248,16.239,16.217,16.217,16.294,16.432,16.536,16.548,16.546,16.658,16.884,17.053,17.013,16.851,16.866,
-17.264,17.898,18.337,18.222,17.564,16.743,16.234,16.310,16.919,17.765,18.491,18.849,18.795,18.468,18.100,17.911,
-18.034,18.462,18.453,18.881,19.133,19.092,18.865,18.681,18.707,18.918,19.172,19.374,19.548,19.760,19.993,20.153,
-20.187,20.167,20.209,20.336,20.454,20.479,20.451,20.490,20.653,20.863,21.010,21.076,21.143,21.284,21.484,21.679,
-21.844,22.017,22.241,22.516,22.804,23.069,23.291,23.464,23.604,23.754,23.958,24.216,24.469,24.667,24.819,24.982,
-25.183,25.384,25.531,25.622,25.698,25.780,25.832,25.813,25.735,25.653,25.606,25.574,25.522,25.457,25.437,25.515,
-25.702,25.959,26.235,26.491,26.740,27.054,27.538,28.237,29.062,29.821,30.353,30.647,30.828,31.035,31.315,31.624,
-31.895,32.081,32.147,32.071,31.872,31.621,31.394,31.202,30.990,30.706,30.362,30.020,29.735,29.528,29.414,29.409,
-29.498,29.586,29.527,29.210,28.644,27.959,27.340,26.956,26.907,27.198,27.722,28.286,28.684,28.788,28.597,28.209,
-27.753,27.319,26.943,26.624,26.357,26.147,25.999,25.892,25.806,25.754,25.789,25.949,26.194,26.421,26.566,26.679,
-26.894,27.293,27.836,28.415,28.961,29.467,29.909,30.208,30.284,30.159,29.950,29.758,29.572,29.309,28.915,28.401,
-27.798,27.109,26.340,25.564,24.896,24.419,24.126,23.967,23.909,23.945,24.047,24.150,24.191,24.164,24.109,24.081,
-24.125,24.270,24.507,24.767,24.966,25.090,25.220,25.423,25.653,25.794,25.870,26.129,26.865,28.093,29.468,30.558,
-31.207,31.611,32.042,32.567,33.041,33.319,33.398,33.349,33.191,32.892,32.468,32.014,31.603,31.212,30.775,30.303,
-29.903,29.660,29.541,29.449,29.337,29.253,29.255,29.327,29.394,29.405,29.381,29.354,29.310,29.192,28.979,28.731,
-28.554,28.518,28.601,28.720,28.816,28.915,29.085,29.332,29.537,29.553,29.357,29.114,29.024,29.115,29.207,29.106,
-28.825,28.546,28.380,28.193,27.730,26.909,25.942,25.158,24.712,24.492,24.277,23.946,23.523,23.078,22.648,22.243,
-21.890,21.624,21.457,21.365,21.319,21.295,21.262,21.187,21.069,20.958,20.923,20.975,21.059,21.103,21.083,21.016,
-20.915,20.770,20.580,20.372,20.179,19.999,19.798,19.555,19.290,19.037,18.800,18.551,18.268,17.959,17.641,17.317,
-16.984,16.654,16.352,16.086,15.841,15.592,15.336,15.082,14.828,14.555,14.258,13.964,13.701,13.461,13.195,12.865,
-12.491,12.136,11.846,11.610,11.374,11.095,10.775,10.447,10.144,9.874,9.625,9.386,9.157,8.947,8.756,8.558,
-8.320,8.039,7.747,7.493,7.291,7.111,6.911,6.672,6.409,6.135,5.839,5.503,5.122,4.718,4.309,3.896,
-3.474,3.042,2.599,2.132,1.622,1.075,.538,.060,-.356,-.773,-1.273,-1.883,-2.544,-3.156,-3.642,-4.003,
--4.299,-4.610,-4.981,-5.407,-5.850,-6.276,-6.675,-7.055,-7.420,-7.765,-8.102,-8.462,-8.883,-9.374,-9.902,-10.431,
--10.954,-11.490,-12.048,-12.607,-13.133,-13.620,-14.091,-14.564,-15.027,-15.456,-15.858,-16.275,-16.737,-17.231,-17.714,-18.162,
--18.600,-19.072,-19.593,-20.139,-20.669,-21.147,-21.560,-21.912,-22.236,-22.590,-23.021,-23.527,-24.052,-24.546,-25.012,-25.497,
--26.029,-26.572,-27.066,-27.488,-27.870,-28.253,-28.642,-29.012,-29.363,-29.721,-30.100,-30.464,-30.757,-30.970,-31.156,-31.382,
--31.675,-32.012,-32.358,-32.689,-32.985,-33.240,-33.500,-33.883,-34.497,-35.329,-36.207,-36.910,-37.326,-37.508,-37.602,-37.728,
--37.947,-38.293,-38.794,-39.429,-40.094,-40.647,-41.001,-41.173,-41.236,-41.246,-41.211,-41.125,-40.998,-40.856,-40.721,-40.599,
--40.477,-40.338,-40.181,-40.033,-39.940,-39.900,-39.819,-39.536,-38.948,-38.125,-37.287,-36.663,-36.351,-36.305,-36.416,-36.596,
--36.801,-37.021,-37.282,-37.621,-38.030,-38.412,-38.605,-38.490,-38.046,-37.320,-36.365,-35.263,-34.200,-33.434,-33.109,-33.078,
--32.977,-32.529,-31.791,-31.081,-30.670,-30.547,-30.497,-30.360,-30.173,-30.087,-30.190,-30.444,-30.753,-31.052,-31.314,-31.517,
--31.643,-31.701,-31.734,-31.784,-31.865,-31.968,-32.067,-32.113,-32.041,-31.810,-31.459,-31.101,-30.830,-30.645,-30.460,-30.213,
--29.936,-29.738,-29.698,-29.808,-29.985,-30.147,-30.265,-30.360,-30.469,-30.612,-30.774,-30.919,-31.011,-31.032,-30.976,-30.842,
--30.635,-30.385,-30.152,-29.981,-29.854,-29.678,-29.334,-28.743,-27.909,-26.910,-25.876,-24.950,-24.236,-23.741,-23.360,-22.941,
--22.375,-21.639,-20.757,-19.740,-18.588,-17.338,-16.078,-14.902,-13.848,-12.896,-12.022,-11.219,-10.474,-9.725,-8.879,-7.896,
--6.842,-5.861,-5.091,-4.571,-4.205,-3.805,-3.194,-2.337,-1.400,-.671,-.346,-.357,-.400,-.163,.439,1.212,
-1.857,2.195,2.257,2.220,2.264,2.480,2.851,3.310,3.795,4.285,4.793,5.330,5.881,6.411,6.909,7.400,
-7.910,8.431,8.921,9.351,9.742,10.158,10.646,11.202,11.778,12.318,12.804,13.265,13.760,14.338,15.014,15.763,
-16.549,17.334,18.075,18.725,19.283,19.830,20.474,21.222,21.904,22.276,22.236,21.918,21.521,21.036,20.192,18.745,
-16.816,14.925,13.645,13.217,13.459,14.001,14.564,15.038,15.406,15.664,15.834,15.965,16.103,16.251,16.405,16.594,
-16.864,17.205,17.539,17.801,18.000,18.182,18.334,18.397,18.376,18.382,18.514,18.694,18.727,18.551,18.402,18.640,
-19.397,20.422,21.314,21.875,22.205,22.487,22.773,23.012,23.224,23.545,24.073,24.716,25.259,25.571,25.694,25.758,
-25.839,25.946,26.077,26.228,26.348,26.353,26.238,26.149,26.266,26.611,27.007,27.280,27.461,27.744,28.251,28.882,
-29.439,29.865,30.286,30.824,31.413,31.855,32.025,31.989,31.911,31.890,31.937,32.066,32.357,32.889,33.658,34.580,
-35.570,36.571,37.522,38.319,38.870,39.164,39.271,39.257,39.135,38.904,38.622,38.398,38.304,38.313,38.351,38.382,
-38.431,38.524,38.638,38.722,38.763,38.812,38.930,39.131,39.358,39.528,39.593,39.570,39.523,39.464,39.248,38.578,
-37.180,35.007,32.289,29.337,26.326,23.295,20.401,18.098,16.975,17.325,18.856,20.854,22.644,23.953,24.878,25.613,
-26.229,26.683,26.930,26.987,26.894,26.682,26.373,26.001,25.595,25.156,24.670,24.135,23.576,23.021,22.469,21.896,
-21.277,20.604,19.917,19.312,18.910,18.765,18.769,18.683,18.307,17.660,16.975,16.493,16.263,16.142,15.972,15.726,
-15.477,15.264,15.026,14.684,14.236,13.755,13.305,12.898,12.529,12.222,11.997,11.810,11.556,11.157,10.649,10.145,
-9.739,9.424,9.132,8.808,8.459,8.121,7.811,7.517,7.221,6.924,6.641,6.380,6.139,5.916,5.725,5.579,
-5.466,5.332,5.113,4.781,4.385,4.016,3.729,3.498,3.240,2.906,2.529,2.192,1.941,1.752,1.563,1.349,
-1.129,.938,.778,.627,.474,.322,.171,.002,-.206,-.455,-.722,-.992,-1.270,-1.567,-1.876,-2.160,
--2.382,-2.537,-2.660,-2.789,-2.936,-3.075,-3.170,-3.210,-3.228,-3.278,-3.403,-3.602,-3.846,-4.102,-4.356,-4.592,
--4.789,-4.927,-5.015,-5.095,-5.215,-5.387,-5.587,-5.784,-5.975,-6.178,-6.403,-6.644,-6.887,-7.126,-7.360,-7.577,
--7.758,-7.903,-8.034,-8.183,-8.358,-8.536,-8.689,-8.808,-8.915,-9.038,-9.183,-9.335,-9.471,-9.582,-9.667,-9.737,
--9.794,-9.842,-9.889,-9.949,-10.029,-10.122,-10.207,-10.270,-10.314,-10.359,-10.417,-10.486,-10.556,-10.632,-10.735,-10.873,
--11.025,-11.148,-11.215,-11.231,-11.230,-11.241,-11.279,-11.344,-11.430,-11.518,-11.563,-11.513,-11.354,-11.147,-11.004,-11.002,
--11.111,-11.209,-11.188,-11.055,-10.932,-10.932,-11.046,-11.151,-11.137,-11.022,-10.923,-10.933,-11.023,-11.094,-11.092,-11.060,
--11.066,-11.108,-11.117,-11.049,-10.952,-10.914,-10.968,-11.054,-11.088,-11.048,-10.991,-10.983,-11.039,-11.126,-11.208,-11.269,
--11.305,-11.307,-11.278,-11.253,-11.290,-11.435,-11.663,-11.883,-11.989,-11.941,-11.808,-11.719,-11.760,-11.901,-12.027,-12.044,
--11.961,-11.864,-11.819,-11.812,-11.782,-11.703,-11.616,-11.579,-11.600,-11.639,-11.649,-11.623,-11.576,-11.519,-11.449,-11.372,
--11.308,-11.273,-11.259,-11.242,-11.206,-11.154,-11.102,-11.060,-11.033,-11.023,-11.024,-11.009,-10.944,-10.812,-10.633,-10.454,
--10.327,-10.272,-10.278,-10.306,-10.312,-10.263,-10.162,-10.035,-9.910,-9.794,-9.675,-9.550,-9.444,-9.381,-9.353,-9.321,
--9.259,-9.178,-9.115,-9.083,-9.051,-8.980,-8.861,-8.720,-8.578,-8.435,-8.288,-8.155,-8.060,-7.990,-7.897,-7.748,
--7.572,-7.438,-7.383,-7.366,-7.312,-7.192,-7.043,-6.914,-6.809,-6.691,-6.540,-6.384,-6.267,-6.203,-6.166,-6.129,
--6.087,-6.041,-5.982,-5.895,-5.792,-5.711,-5.677,-5.672,-5.648,-5.584,-5.497,-5.413,-5.326,-5.205,-5.038,-4.858,
--4.713,-4.617,-4.533,-4.418,-4.270,-4.129,-4.039,-3.995,-3.944,-3.831,-3.650,-3.457,-3.322,-3.270,-3.260,-3.220,
--3.113,-2.958,-2.800,-2.667,-2.550,-2.438,-2.344,-2.297,-2.307,-2.344,-2.356,-2.306,-2.201,-2.076,-1.969,-1.886,
--1.805,-1.693,-1.538,-1.360,-1.187,-1.025,-.852,-.655,-.451,-.266,-.099,.094,.349,.652,.948,1.214,
-1.481,1.799,2.161,2.507,2.791,3.043,3.337,3.714,4.135,4.520,4.812,5.018,5.189,5.397,5.691,6.060,
-6.421,6.679,6.813,6.919,7.128,7.475,7.858,8.150,8.337,8.532,8.858,9.337,9.893,10.445,10.970,11.482,
-11.981,12.440,12.823,13.105,13.284,13.392,13.463,13.462,13.233,12.582,11.472,10.165,9.136,8.841,9.548,11.328,
-14.052,17.278,20.224,22.138,22.957,23.579,25.237,28.321,31.777,33.826,33.452,31.227,28.705,27.024,26.130,25.264,
-23.994,22.629,21.735,21.469,21.505,21.502,21.446,21.493,21.625,21.609,21.293,20.819,20.494,20.472,20.642,20.779,
-20.749,20.546,20.214,19.799,19.369,18.999,18.712,18.461,18.203,17.972,17.830,17.770,17.703,17.563,17.396,17.300,
-17.291,17.275,17.168,16.994,16.838,16.722,16.583,16.385,16.193,16.103,16.115,16.126,16.060,15.949,15.858,15.761,
-15.551,15.185,14.776,14.485,14.338,14.189,13.863,13.321,12.661,11.989,11.327,10.648,9.971,9.386,8.994,8.833,
-8.833,8.820,8.559,7.867,6.735,5.368,4.064,3.012,2.193,1.461,.708,-.063,-.798,-1.482,-2.148,-2.820,
--3.471,-4.055,-4.546,-4.944,-5.255,-5.485,-5.651,-5.789,-5.922,-6.049,-6.149,-6.214,-6.259,-6.304,-6.367,-6.473,
--6.642,-6.859,-7.064,-7.187,-7.215,-7.212,-7.262,-7.388,-7.538,-7.631,-7.631,-7.554,-7.439,-7.321,-7.226,-7.181,
--7.192,-7.240,-7.283,-7.293,-7.259,-7.184,-7.064,-6.893,-6.680,-6.440,-6.183,-5.909,-5.620,-5.334,-5.072,-4.828,
--4.572,-4.277,-3.947,-3.608,-3.271,-2.925,-2.556,-2.164,-1.767,-1.368,-.959,-.537,-.121,.260,.597,.919,
-1.281,1.749,2.367,3.123,3.913,4.556,4.887,4.889,4.733,4.662,4.798,5.063,5.283,5.389,5.489,5.756,
-6.233,6.789,7.251,7.585,7.917,8.387,8.991,9.570,9.958,10.138,10.247,10.451,10.805,11.234,11.623,11.931,
-12.207,12.521,12.879,13.227,13.518,13.761,14.005,14.275,14.541,14.764,14.945,15.122,15.309,15.480,15.609,15.720,
-15.872,16.086,16.311,16.483,16.601,16.724,16.900,17.112,17.316,17.501,17.690,17.878,18.011,18.052,18.043,18.076,
-18.186,18.319,18.405,18.455,18.534,18.657,18.736,18.675,18.475,18.241,18.060,17.925,17.777,17.607,17.465,17.386,
-17.342,17.282,17.203,17.137,17.089,17.016,16.887,16.736,16.629,16.582,16.554,16.508,16.462,16.452,16.475,16.481,
-16.445,16.393,16.361,16.349,16.338,16.338,16.384,16.464,16.513,16.501,16.511,16.673,17.008,17.372,17.597,17.681,
-17.767,17.941,18.074,17.942,17.482,16.913,16.555,16.565,16.847,17.203,17.522,17.808,18.066,18.228,18.219,18.078,
-17.976,18.094,18.453,18.209,18.549,18.725,18.658,18.483,18.411,18.548,18.830,19.126,19.363,19.557,19.738,19.887,
-19.957,19.958,19.969,20.060,20.206,20.312,20.330,20.321,20.391,20.565,20.764,20.897,20.967,21.056,21.223,21.439,
-21.636,21.793,21.962,22.194,22.482,22.768,23.007,23.201,23.386,23.585,23.800,24.020,24.239,24.454,24.671,24.888,
-25.095,25.269,25.395,25.482,25.561,25.655,25.748,25.807,25.807,25.756,25.673,25.573,25.469,25.391,25.374,25.433,
-25.552,25.717,25.939,26.235,26.590,26.953,27.301,27.677,28.153,28.744,29.375,29.937,30.377,30.717,31.004,31.263,
-31.493,31.685,31.821,31.861,31.764,31.536,31.242,30.957,30.705,30.463,30.220,30.003,29.835,29.696,29.540,29.371,
-29.270,29.300,29.399,29.364,28.993,28.254,27.343,26.583,26.237,26.382,26.888,27.514,28.021,28.268,28.234,27.994,
-27.663,27.343,27.084,26.876,26.679,26.469,26.263,26.097,25.989,25.932,25.930,26.013,26.203,26.461,26.692,26.837,
-26.951,27.166,27.569,28.116,28.679,29.161,29.541,29.830,30.013,30.067,30.013,29.916,29.811,29.659,29.388,28.969,
-28.435,27.825,27.145,26.410,25.692,25.104,24.717,24.518,24.442,24.441,24.494,24.578,24.648,24.667,24.645,24.624,
-24.643,24.726,24.879,25.082,25.279,25.421,25.519,25.653,25.875,26.132,26.316,26.449,26.757,27.502,28.699,30.036,
-31.108,31.741,32.076,32.361,32.699,33.017,33.220,33.299,33.297,33.219,33.029,32.724,32.368,32.019,31.677,31.316,
-30.953,30.653,30.456,30.336,30.242,30.171,30.160,30.217,30.287,30.301,30.247,30.172,30.117,30.069,29.982,29.838,
-29.670,29.535,29.474,29.493,29.572,29.686,29.825,29.982,30.124,30.174,30.062,29.812,29.568,29.497,29.618,29.761,
-29.710,29.410,28.997,28.620,28.258,27.747,26.989,26.109,25.361,24.907,24.689,24.515,24.236,23.836,23.380,22.931,
-22.529,22.199,21.965,21.829,21.766,21.741,21.726,21.695,21.631,21.544,21.476,21.475,21.539,21.606,21.612,21.545,
-21.449,21.361,21.273,21.149,20.972,20.764,20.554,20.346,20.121,19.867,19.593,19.321,19.053,18.773,18.462,18.117,
-17.758,17.415,17.109,16.835,16.572,16.303,16.028,15.755,15.489,15.217,14.934,14.652,14.396,14.167,13.932,13.650,
-13.309,12.943,12.598,12.296,12.021,11.743,11.447,11.140,10.842,10.570,10.325,10.092,9.859,9.622,9.390,9.165,
-8.935,8.682,8.413,8.161,7.957,7.791,7.618,7.400,7.143,6.881,6.625,6.352,6.036,5.678,5.301,4.915,
-4.502,4.048,3.570,3.098,2.640,2.169,1.661,1.135,.629,.153,-.337,-.893,-1.517,-2.144,-2.686,-3.104,
--3.428,-3.735,-4.089,-4.512,-4.978,-5.440,-5.862,-6.238,-6.580,-6.904,-7.227,-7.578,-7.996,-8.500,-9.063,-9.617,
--10.118,-10.577,-11.051,-11.571,-12.114,-12.636,-13.120,-13.588,-14.058,-14.511,-14.922,-15.306,-15.713,-16.175,-16.665,-17.126,
--17.543,-17.960,-18.432,-18.966,-19.519,-20.049,-20.541,-20.993,-21.394,-21.741,-22.071,-22.450,-22.912,-23.433,-23.959,-24.470,
--24.992,-25.542,-26.088,-26.573,-26.982,-27.358,-27.752,-28.165,-28.565,-28.937,-29.308,-29.694,-30.067,-30.370,-30.590,-30.772,
--30.986,-31.265,-31.603,-31.978,-32.359,-32.692,-32.922,-33.059,-33.229,-33.601,-34.265,-35.137,-36.025,-36.759,-37.277,-37.604,
--37.800,-37.940,-38.123,-38.446,-38.941,-39.537,-40.107,-40.551,-40.847,-41.020,-41.097,-41.094,-41.032,-40.933,-40.815,-40.686,
--40.556,-40.435,-40.315,-40.176,-40.023,-39.912,-39.898,-39.936,-39.858,-39.485,-38.797,-37.988,-37.336,-37.009,-36.979,-37.099,
--37.238,-37.358,-37.499,-37.730,-38.091,-38.552,-38.990,-39.244,-39.186,-38.787,-38.084,-37.144,-36.065,-35.013,-34.199,-33.746,
--33.560,-33.382,-33.011,-32.475,-31.989,-31.726,-31.659,-31.614,-31.468,-31.261,-31.130,-31.173,-31.386,-31.696,-32.031,-32.342,
--32.601,-32.804,-32.966,-33.110,-33.236,-33.328,-33.380,-33.395,-33.361,-33.231,-32.965,-32.590,-32.209,-31.923,-31.754,-31.642,
--31.530,-31.431,-31.405,-31.490,-31.653,-31.819,-31.927,-31.963,-31.957,-31.953,-31.978,-32.033,-32.083,-32.084,-32.017,-31.890,
--31.724,-31.521,-31.276,-30.999,-30.736,-30.529,-30.366,-30.154,-29.759,-29.088,-28.155,-27.091,-26.077,-25.248,-24.618,-24.093,
--23.558,-22.954,-22.292,-21.582,-20.787,-19.850,-18.765,-17.599,-16.441,-15.335,-14.271,-13.239,-12.262,-11.357,-10.483,-9.558,
--8.541,-7.490,-6.538,-5.794,-5.251,-4.793,-4.266,-3.582,-2.780,-2.013,-1.460,-1.197,-1.129,-1.028,-.692,-.084,
-.641,1.249,1.594,1.694,1.702,1.787,2.043,2.455,2.945,3.443,3.926,4.411,4.908,5.408,5.900,6.394,
-6.918,7.473,8.018,8.500,8.904,9.270,9.657,10.100,10.601,11.143,11.706,12.260,12.771,13.231,13.684,14.217,
-14.899,15.726,16.608,17.423,18.100,18.671,19.253,19.930,20.643,21.196,21.405,21.261,20.927,20.511,19.877,18.727,
-16.939,14.843,13.100,12.246,12.323,12.916,13.541,13.974,14.276,14.575,14.898,15.178,15.365,15.480,15.583,15.729,
-15.951,16.249,16.582,16.884,17.116,17.293,17.450,17.588,17.683,17.748,17.846,17.996,18.105,18.043,17.833,17.722,
-17.993,18.702,19.609,20.397,20.934,21.304,21.617,21.886,22.087,22.298,22.670,23.257,23.921,24.448,24.752,24.921,
-25.073,25.236,25.378,25.512,25.697,25.928,26.097,26.103,25.999,25.962,26.115,26.408,26.704,26.955,27.239,27.628,
-28.077,28.478,28.815,29.197,29.738,30.417,31.084,31.590,31.880,31.975,31.918,31.774,31.657,31.702,31.987,32.493,
-33.163,33.968,34.894,35.883,36.816,37.592,38.200,38.684,39.046,39.218,39.149,38.898,38.610,38.397,38.261,38.156,
-38.068,38.027,38.038,38.047,38.016,37.995,38.094,38.356,38.683,38.908,38.940,38.845,38.768,38.762,38.684,38.239,
-37.150,35.328,32.923,30.205,27.385,24.540,21.738,19.234,17.501,16.985,17.764,19.430,21.321,22.912,24.046,24.847,
-25.480,26.000,26.369,26.555,26.571,26.458,26.243,25.943,25.565,25.116,24.608,24.064,23.519,22.996,22.496,22.005,
-21.510,20.996,20.426,19.782,19.139,18.678,18.554,18.712,18.843,18.602,17.904,17.018,16.331,16.024,15.964,15.888,
-15.658,15.330,15.015,14.739,14.436,14.052,13.605,13.151,12.726,12.344,12.020,11.768,11.559,11.317,10.975,10.545,
-10.106,9.728,9.411,9.103,8.765,8.412,8.077,7.768,7.454,7.117,6.777,6.479,6.238,6.022,5.785,5.530,
-5.313,5.182,5.110,4.995,4.744,4.361,3.940,3.584,3.305,3.039,2.725,2.382,2.078,1.855,1.680,1.487,
-1.245,.986,.756,.573,.419,.265,.102,-.074,-.269,-.486,-.719,-.954,-1.187,-1.432,-1.698,-1.977,
--2.233,-2.440,-2.598,-2.732,-2.871,-3.020,-3.157,-3.259,-3.321,-3.373,-3.457,-3.598,-3.787,-4.002,-4.229,-4.475,
--4.740,-4.993,-5.189,-5.307,-5.379,-5.470,-5.621,-5.820,-6.025,-6.211,-6.385,-6.572,-6.785,-7.015,-7.246,-7.468,
--7.669,-7.839,-7.977,-8.092,-8.206,-8.330,-8.460,-8.585,-8.698,-8.810,-8.933,-9.070,-9.213,-9.351,-9.473,-9.575,
--9.653,-9.705,-9.742,-9.780,-9.837,-9.914,-9.996,-10.068,-10.125,-10.179,-10.246,-10.328,-10.411,-10.486,-10.561,-10.659,
--10.788,-10.926,-11.039,-11.103,-11.125,-11.129,-11.140,-11.168,-11.219,-11.295,-11.382,-11.435,-11.387,-11.208,-10.954,-10.748,
--10.695,-10.793,-10.923,-10.959,-10.882,-10.795,-10.813,-10.944,-11.078,-11.107,-11.034,-10.960,-10.969,-11.048,-11.117,-11.130,
--11.119,-11.127,-11.141,-11.113,-11.031,-10.959,-10.973,-11.067,-11.148,-11.126,-11.009,-10.892,-10.868,-10.943,-11.050,-11.122,
--11.146,-11.155,-11.182,-11.228,-11.280,-11.352,-11.485,-11.704,-11.964,-12.144,-12.135,-11.940,-11.692,-11.555,-11.594,-11.731,
--11.840,-11.868,-11.856,-11.860,-11.861,-11.797,-11.654,-11.510,-11.473,-11.573,-11.732,-11.838,-11.838,-11.758,-11.656,-11.571,
--11.511,-11.474,-11.451,-11.422,-11.366,-11.275,-11.168,-11.079,-11.031,-11.022,-11.035,-11.046,-11.035,-10.985,-10.891,-10.760,
--10.618,-10.491,-10.402,-10.355,-10.337,-10.315,-10.258,-10.157,-10.035,-9.925,-9.840,-9.764,-9.680,-9.595,-9.531,-9.498,
--9.476,-9.433,-9.367,-9.302,-9.257,-9.222,-9.164,-9.064,-8.930,-8.782,-8.632,-8.483,-8.346,-8.231,-8.130,-8.013,
--7.854,-7.667,-7.494,-7.369,-7.283,-7.202,-7.108,-7.007,-6.905,-6.789,-6.638,-6.466,-6.315,-6.226,-6.195,-6.184,
--6.161,-6.127,-6.091,-6.050,-5.986,-5.896,-5.801,-5.727,-5.677,-5.629,-5.565,-5.482,-5.382,-5.260,-5.109,-4.941,
--4.787,-4.669,-4.579,-4.480,-4.344,-4.179,-4.026,-3.919,-3.854,-3.789,-3.678,-3.510,-3.323,-3.181,-3.120,-3.121,
--3.122,-3.071,-2.963,-2.836,-2.726,-2.635,-2.541,-2.433,-2.335,-2.286,-2.299,-2.340,-2.353,-2.304,-2.209,-2.108,
--2.025,-1.943,-1.827,-1.663,-1.472,-1.283,-1.097,-.892,-.662,-.441,-.261,-.109,.070,.322,.626,.927,
-1.199,1.477,1.802,2.170,2.527,2.839,3.128,3.443,3.795,4.154,4.484,4.776,5.037,5.273,5.498,5.751,
-6.074,6.458,6.828,7.109,7.303,7.480,7.702,7.965,8.232,8.507,8.847,9.287,9.796,10.303,10.770,11.216,
-11.664,12.093,12.454,12.717,12.892,13.014,13.105,13.137,13.009,12.559,11.681,10.485,9.354,8.788,9.147,10.508,
-12.709,15.441,18.241,20.524,21.870,22.465,23.196,25.028,28.051,31.131,32.699,32.048,29.922,27.802,26.611,26.108,
-25.459,24.240,22.803,21.769,21.367,21.330,21.314,21.238,21.199,21.191,21.059,20.721,20.312,20.068,20.079,20.221,
-20.292,20.183,19.903,19.514,19.100,18.748,18.515,18.375,18.242,18.065,17.890,17.784,17.734,17.653,17.503,17.361,
-17.327,17.380,17.383,17.237,16.991,16.770,16.628,16.507,16.347,16.175,16.057,15.992,15.912,15.786,15.663,15.578,
-15.454,15.159,14.678,14.179,13.855,13.715,13.567,13.214,12.640,11.987,11.370,10.785,10.178,9.585,9.137,8.941,
-8.958,9.005,8.840,8.288,7.316,6.049,4.720,3.540,2.582,1.773,.994,.200,-.573,-1.290,-1.975,-2.673,
--3.373,-4.006,-4.512,-4.898,-5.215,-5.486,-5.689,-5.806,-5.871,-5.942,-6.051,-6.169,-6.248,-6.273,-6.280,-6.328,
--6.453,-6.647,-6.863,-7.045,-7.157,-7.212,-7.256,-7.330,-7.438,-7.548,-7.622,-7.640,-7.600,-7.507,-7.383,-7.268,
--7.205,-7.204,-7.231,-7.240,-7.215,-7.171,-7.120,-7.045,-6.920,-6.736,-6.515,-6.275,-6.012,-5.720,-5.412,-5.119,
--4.857,-4.605,-4.327,-4.008,-3.658,-3.294,-2.920,-2.540,-2.167,-1.817,-1.480,-1.117,-.701,-.245,.195,.560,
-.838,1.085,1.413,1.944,2.737,3.715,4.671,5.374,5.731,5.843,5.904,6.012,6.095,6.030,5.839,5.728,
-5.920,6.429,7.038,7.495,7.749,7.980,8.409,9.068,9.775,10.299,10.561,10.685,10.859,11.173,11.577,11.966,
-12.301,12.630,13.008,13.417,13.775,14.031,14.223,14.442,14.734,15.056,15.326,15.515,15.661,15.808,15.955,16.078,
-16.183,16.314,16.502,16.721,16.916,17.065,17.193,17.327,17.466,17.601,17.747,17.922,18.095,18.196,18.189,18.138,
-18.155,18.287,18.466,18.597,18.656,18.698,18.756,18.783,18.711,18.542,18.347,18.185,18.045,17.892,17.738,17.631,
-17.585,17.552,17.484,17.390,17.317,17.268,17.192,17.051,16.885,16.770,16.733,16.725,16.699,16.664,16.657,16.674,
-16.664,16.603,16.531,16.503,16.521,16.539,16.527,16.502,16.484,16.460,16.435,16.484,16.711,17.126,17.592,17.938,
-18.108,18.164,18.142,17.964,17.553,17.022,16.663,16.697,17.037,17.362,17.430,17.312,17.277,17.488,17.824,18.031,
-18.003,17.892,17.937,18.209,17.767,18.079,18.275,18.294,18.255,18.313,18.518,18.799,19.057,19.253,19.401,19.522,
-19.614,19.672,19.718,19.797,19.921,20.050,20.132,20.165,20.208,20.319,20.490,20.657,20.775,20.870,21.011,21.225,
-21.464,21.663,21.816,21.982,22.214,22.499,22.770,22.983,23.157,23.350,23.591,23.848,24.075,24.263,24.453,24.686,
-24.950,25.183,25.330,25.400,25.451,25.532,25.638,25.727,25.774,25.783,25.763,25.698,25.569,25.411,25.316,25.353,
-25.500,25.672,25.823,26.008,26.321,26.782,27.291,27.722,28.041,28.326,28.675,29.117,29.606,30.074,30.477,30.800,
-31.041,31.218,31.357,31.474,31.538,31.500,31.339,31.091,30.816,30.555,30.323,30.132,29.993,29.886,29.736,29.475,
-29.129,28.825,28.681,28.662,28.566,28.174,27.452,26.618,26.017,25.894,26.248,26.853,27.418,27.751,27.818,27.701,
-27.510,27.326,27.189,27.096,27.013,26.892,26.713,26.505,26.334,26.240,26.219,26.248,26.327,26.475,26.681,26.890,
-27.055,27.206,27.437,27.813,28.297,28.778,29.169,29.455,29.659,29.791,29.839,29.813,29.746,29.658,29.520,29.280,
-28.915,28.440,27.873,27.223,26.522,25.853,25.328,25.011,24.883,24.875,24.929,25.014,25.099,25.151,25.156,25.138,
-25.144,25.200,25.306,25.446,25.600,25.735,25.832,25.919,26.066,26.317,26.622,26.885,27.101,27.434,28.096,29.122,
-30.291,31.278,31.912,32.265,32.517,32.770,32.995,33.132,33.176,33.168,33.127,33.035,32.871,32.646,32.390,32.126,
-31.870,31.638,31.442,31.271,31.114,30.993,30.955,31.015,31.117,31.165,31.114,31.001,30.898,30.834,30.791,30.744,
-30.691,30.634,30.563,30.483,30.432,30.465,30.591,30.746,30.843,30.834,30.724,30.541,30.329,30.167,30.139,30.249,
-30.357,30.257,29.853,29.246,28.630,28.100,27.577,26.945,26.222,25.570,25.138,24.913,24.739,24.466,24.059,23.591,
-23.152,22.796,22.536,22.366,22.269,22.215,22.172,22.130,22.093,22.068,22.054,22.058,22.084,22.122,22.135,22.090,
-21.994,21.894,21.833,21.796,21.721,21.562,21.332,21.085,20.862,20.647,20.402,20.113,19.805,19.508,19.221,18.914,
-18.570,18.213,17.887,17.608,17.353,17.081,16.784,16.480,16.190,15.907,15.615,15.317,15.041,14.803,14.583,14.334,
-14.032,13.696,13.362,13.049,12.746,12.438,12.128,11.829,11.547,11.275,11.009,10.754,10.513,10.281,10.048,9.811,
-9.572,9.331,9.085,8.848,8.644,8.481,8.329,8.141,7.898,7.630,7.381,7.155,6.909,6.606,6.253,5.883,
-5.505,5.095,4.628,4.124,3.632,3.178,2.739,2.274,1.766,1.224,.658,.065,-.546,-1.136,-1.649,-2.062,
--2.405,-2.739,-3.112,-3.538,-4.008,-4.497,-4.975,-5.410,-5.784,-6.100,-6.387,-6.693,-7.066,-7.540,-8.104,-8.699,
--9.246,-9.707,-10.117,-10.551,-11.047,-11.577,-12.086,-12.558,-13.017,-13.486,-13.945,-14.364,-14.755,-15.171,-15.644,-16.138,
--16.591,-16.987,-17.379,-17.825,-18.332,-18.852,-19.349,-19.827,-20.301,-20.756,-21.165,-21.538,-21.928,-22.383,-22.893,-23.416,
--23.934,-24.465,-25.020,-25.559,-26.028,-26.425,-26.813,-27.250,-27.726,-28.177,-28.565,-28.914,-29.269,-29.626,-29.942,-30.192,
--30.405,-30.631,-30.899,-31.206,-31.545,-31.915,-32.282,-32.577,-32.754,-32.862,-33.045,-33.445,-34.094,-34.908,-35.752,-36.513,
--37.120,-37.536,-37.771,-37.898,-38.035,-38.290,-38.698,-39.214,-39.742,-40.174,-40.437,-40.521,-40.493,-40.454,-40.465,-40.502,
--40.499,-40.426,-40.311,-40.200,-40.097,-39.992,-39.909,-39.906,-39.987,-40.037,-39.887,-39.466,-38.893,-38.395,-38.138,-38.121,
--38.224,-38.326,-38.393,-38.474,-38.649,-38.969,-39.403,-39.829,-40.078,-40.020,-39.630,-38.965,-38.113,-37.160,-36.212,-35.398,
--34.807,-34.403,-34.045,-33.606,-33.102,-32.662,-32.394,-32.272,-32.179,-32.030,-31.859,-31.782,-31.899,-32.223,-32.692,-33.205,
--33.668,-34.027,-34.287,-34.486,-34.648,-34.750,-34.757,-34.673,-34.549,-34.434,-34.315,-34.140,-33.886,-33.597,-33.345,-33.163,
--33.035,-32.940,-32.890,-32.910,-32.996,-33.101,-33.174,-33.193,-33.176,-33.143,-33.111,-33.084,-33.059,-33.018,-32.928,-32.769,
--32.553,-32.312,-32.069,-31.816,-31.537,-31.245,-30.983,-30.782,-30.612,-30.371,-29.939,-29.260,-28.386,-27.444,-26.559,-25.773,
--25.044,-24.314,-23.573,-22.862,-22.202,-21.552,-20.826,-19.975,-19.022,-18.030,-17.031,-16.012,-14.951,-13.857,-12.757,-11.654,
--10.529,-9.391,-8.315,-7.397,-6.662,-6.030,-5.370,-4.620,-3.837,-3.146,-2.640,-2.311,-2.067,-1.798,-1.436,-.969,
--.432,.112,.586,.929,1.131,1.259,1.421,1.710,2.138,2.644,3.152,3.625,4.077,4.534,5.009,5.505,
-6.031,6.591,7.163,7.695,8.151,8.540,8.904,9.282,9.682,10.111,10.595,11.154,11.757,12.316,12.764,13.132,
-13.558,14.180,15.022,15.969,16.853,17.584,18.206,18.835,19.524,20.179,20.610,20.680,20.421,19.970,19.370,18.459,
-17.015,15.076,13.087,11.690,11.270,11.684,12.412,12.986,13.288,13.486,13.760,14.120,14.455,14.688,14.844,14.998,
-15.201,15.458,15.747,16.031,16.270,16.444,16.573,16.697,16.834,16.968,17.084,17.189,17.283,17.324,17.269,17.170,
-17.192,17.494,18.081,18.784,19.417,19.916,20.329,20.688,20.969,21.171,21.406,21.822,22.439,23.096,23.599,23.905,
-24.124,24.363,24.609,24.799,24.951,25.174,25.523,25.897,26.120,26.124,26.010,25.943,26.006,26.177,26.420,26.733,
-27.108,27.480,27.770,27.980,28.217,28.614,29.223,29.986,30.777,31.451,31.877,31.985,31.823,31.562,31.398,31.440,
-31.679,32.074,32.633,33.387,34.303,35.268,36.168,36.965,37.676,38.279,38.696,38.869,38.837,38.707,38.553,38.372,
-38.148,37.922,37.757,37.656,37.552,37.414,37.328,37.437,37.761,38.128,38.304,38.210,37.988,37.835,37.756,37.501,
-36.732,35.282,33.256,30.914,28.442,25.865,23.165,20.499,18.289,17.052,17.076,18.205,19.917,21.633,23.009,24.000,
-24.725,25.288,25.711,25.976,26.083,26.057,25.931,25.725,25.442,25.069,24.591,24.026,23.436,22.892,22.414,21.963,
-21.496,21.022,20.575,20.134,19.630,19.063,18.587,18.424,18.611,18.871,18.788,18.161,17.194,16.323,15.845,15.708,
-15.641,15.437,15.101,14.755,14.462,14.177,13.822,13.386,12.918,12.482,12.110,11.811,11.571,11.349,11.085,10.745,
-10.354,9.975,9.645,9.338,9.004,8.635,8.276,7.971,7.700,7.399,7.032,6.644,6.322,6.105,5.937,5.721,
-5.429,5.133,4.935,4.854,4.791,4.615,4.277,3.846,3.433,3.089,2.788,2.490,2.200,1.962,1.792,1.647,
-1.457,1.193,.887,.600,.370,.193,.038,-.124,-.310,-.524,-.755,-.984,-1.195,-1.392,-1.594,-1.813,
--2.046,-2.273,-2.478,-2.657,-2.812,-2.948,-3.066,-3.167,-3.259,-3.356,-3.474,-3.625,-3.805,-3.993,-4.176,-4.364,
--4.587,-4.864,-5.163,-5.420,-5.589,-5.683,-5.767,-5.892,-6.060,-6.232,-6.383,-6.525,-6.695,-6.912,-7.159,-7.404,
--7.619,-7.799,-7.944,-8.061,-8.157,-8.247,-8.344,-8.451,-8.565,-8.679,-8.788,-8.892,-8.994,-9.098,-9.210,-9.329,
--9.441,-9.529,-9.583,-9.613,-9.646,-9.703,-9.785,-9.876,-9.958,-10.028,-10.095,-10.169,-10.253,-10.341,-10.430,-10.525,
--10.633,-10.753,-10.868,-10.964,-11.030,-11.072,-11.097,-11.112,-11.121,-11.139,-11.187,-11.271,-11.361,-11.391,-11.305,-11.121,
--10.930,-10.843,-10.891,-11.002,-11.064,-11.030,-10.961,-10.947,-11.014,-11.098,-11.126,-11.092,-11.059,-11.080,-11.143,-11.199,
--11.222,-11.230,-11.240,-11.235,-11.185,-11.109,-11.070,-11.109,-11.184,-11.200,-11.100,-10.932,-10.809,-10.807,-10.907,-11.024,
--11.090,-11.103,-11.117,-11.179,-11.280,-11.375,-11.440,-11.510,-11.656,-11.901,-12.163,-12.299,-12.227,-12.006,-11.790,-11.694,
--11.711,-11.759,-11.785,-11.812,-11.866,-11.907,-11.853,-11.689,-11.519,-11.482,-11.617,-11.818,-11.935,-11.906,-11.791,-11.692,
--11.661,-11.675,-11.685,-11.666,-11.616,-11.535,-11.423,-11.291,-11.168,-11.084,-11.047,-11.039,-11.031,-11.002,-10.952,-10.890,
--10.823,-10.745,-10.651,-10.544,-10.442,-10.363,-10.304,-10.239,-10.147,-10.035,-9.932,-9.860,-9.809,-9.753,-9.683,-9.620,
--9.588,-9.578,-9.558,-9.507,-9.437,-9.379,-9.346,-9.317,-9.262,-9.171,-9.056,-8.928,-8.787,-8.632,-8.468,-8.308,
--8.153,-7.992,-7.812,-7.617,-7.428,-7.265,-7.142,-7.054,-6.986,-6.909,-6.794,-6.633,-6.454,-6.305,-6.218,-6.184,
--6.169,-6.145,-6.112,-6.083,-6.059,-6.024,-5.963,-5.877,-5.786,-5.708,-5.646,-5.585,-5.501,-5.376,-5.210,-5.027,
--4.861,-4.735,-4.640,-4.545,-4.423,-4.270,-4.105,-3.949,-3.814,-3.697,-3.590,-3.477,-3.345,-3.197,-3.064,-2.982,
--2.964,-2.980,-2.980,-2.936,-2.864,-2.798,-2.742,-2.667,-2.547,-2.398,-2.282,-2.252,-2.296,-2.347,-2.339,-2.263,
--2.160,-2.070,-1.989,-1.880,-1.724,-1.538,-1.347,-1.150,-.931,-.689,-.463,-.283,-.128,.061,.321,.627,
-.929,1.209,1.500,1.837,2.204,2.560,2.887,3.210,3.549,3.885,4.183,4.443,4.712,5.021,5.353,5.668,
-5.968,6.292,6.662,7.034,7.344,7.582,7.802,8.058,8.352,8.651,8.955,9.300,9.703,10.131,10.534,10.912,
-11.303,11.721,12.109,12.393,12.556,12.658,12.759,12.848,12.814,12.495,11.776,10.695,9.523,8.720,8.738,9.786,
-11.735,14.222,16.810,19.085,20.708,21.588,22.088,22.964,24.837,27.535,29.982,30.947,30.058,28.141,26.504,25.841,
-25.802,25.539,24.601,23.255,22.080,21.392,21.102,20.978,20.908,20.868,20.792,20.575,20.215,19.856,19.657,19.634,
-19.665,19.620,19.453,19.184,18.851,18.513,18.260,18.152,18.153,18.144,18.046,17.891,17.756,17.657,17.545,17.409,
-17.320,17.348,17.443,17.462,17.324,17.095,16.908,16.804,16.706,16.538,16.316,16.106,15.920,15.722,15.509,15.328,
-15.192,14.994,14.604,14.043,13.508,13.191,13.066,12.909,12.530,11.955,11.351,10.824,10.329,9.791,9.265,8.912,
-8.827,8.902,8.871,8.492,7.689,6.570,5.337,4.174,3.169,2.291,1.454,.600,-.245,-1.020,-1.711,-2.373,
--3.058,-3.736,-4.315,-4.737,-5.039,-5.302,-5.554,-5.748,-5.835,-5.843,-5.858,-5.939,-6.065,-6.166,-6.205,-6.220,
--6.282,-6.426,-6.626,-6.818,-6.959,-7.049,-7.121,-7.207,-7.309,-7.410,-7.496,-7.566,-7.619,-7.636,-7.588,-7.473,
--7.336,-7.237,-7.198,-7.190,-7.169,-7.126,-7.086,-7.062,-7.026,-6.935,-6.775,-6.566,-6.335,-6.082,-5.793,-5.477,
--5.167,-4.886,-4.623,-4.349,-4.046,-3.724,-3.396,-3.061,-2.707,-2.336,-1.961,-1.587,-1.198,-.777,-.331,.104,
-.485,.789,1.040,1.316,1.726,2.356,3.198,4.116,4.927,5.523,5.940,6.280,6.571,6.723,6.651,6.426,
-6.292,6.474,6.970,7.546,7.948,8.128,8.280,8.638,9.259,9.976,10.555,10.894,11.077,11.265,11.550,11.906,
-12.255,12.569,12.891,13.268,13.675,14.029,14.279,14.462,14.676,14.975,15.320,15.625,15.844,16.007,16.161,16.318,
-16.456,16.569,16.694,16.868,17.087,17.315,17.517,17.684,17.813,17.899,17.955,18.027,18.151,18.298,18.383,18.354,
-18.264,18.229,18.317,18.480,18.617,18.677,18.687,18.689,18.684,18.645,18.571,18.486,18.398,18.285,18.135,17.986,
-17.886,17.830,17.765,17.655,17.537,17.465,17.433,17.372,17.235,17.062,16.936,16.884,16.865,16.837,16.815,16.829,
-16.856,16.829,16.731,16.629,16.610,16.672,16.733,16.723,16.656,16.589,16.557,16.571,16.669,16.906,17.269,17.628,
-17.829,17.829,17.715,17.572,17.386,17.114,16.841,16.764,16.994,17.374,17.584,17.454,17.153,17.020,17.222,17.587,
-17.802,17.739,17.567,17.547,17.767,17.361,17.626,17.822,17.928,18.030,18.203,18.436,18.669,18.855,18.994,19.105,
-19.199,19.285,19.375,19.487,19.620,19.750,19.852,19.930,20.012,20.130,20.288,20.458,20.607,20.737,20.881,21.076,
-21.316,21.556,21.749,21.900,22.062,22.285,22.559,22.827,23.036,23.201,23.378,23.605,23.862,24.094,24.288,24.483,
-24.725,24.994,25.218,25.343,25.397,25.457,25.563,25.680,25.743,25.741,25.718,25.702,25.658,25.540,25.379,25.289,
-25.359,25.557,25.762,25.908,26.068,26.376,26.876,27.455,27.949,28.282,28.510,28.742,29.032,29.368,29.711,30.038,
-30.340,30.605,30.825,31.011,31.173,31.295,31.328,31.242,31.054,30.826,30.617,30.450,30.304,30.130,29.862,29.447,
-28.891,28.292,27.802,27.522,27.405,27.284,27.002,26.560,26.144,25.994,26.222,26.729,27.266,27.609,27.684,27.574,
-27.419,27.311,27.265,27.253,27.250,27.229,27.163,27.037,26.877,26.738,26.663,26.649,26.662,26.693,26.764,26.900,
-27.084,27.281,27.487,27.740,28.072,28.453,28.815,29.108,29.338,29.531,29.681,29.756,29.740,29.657,29.538,29.387,
-29.172,28.860,28.437,27.905,27.286,26.632,26.038,25.598,25.353,25.275,25.300,25.382,25.491,25.596,25.661,25.674,
-25.667,25.688,25.759,25.867,25.986,26.098,26.193,26.273,26.368,26.531,26.801,27.144,27.481,27.781,28.131,28.681,
-29.490,30.442,31.317,31.961,32.381,32.682,32.938,33.138,33.234,33.224,33.166,33.121,33.105,33.078,32.986,32.814,
-32.608,32.433,32.317,32.216,32.068,31.874,31.724,31.709,31.820,31.943,31.966,31.881,31.770,31.692,31.637,31.575,
-31.526,31.539,31.602,31.626,31.549,31.432,31.407,31.529,31.697,31.757,31.651,31.455,31.265,31.109,30.968,30.851,
-30.785,30.720,30.512,30.040,29.348,28.627,28.031,27.546,27.042,26.457,25.879,25.443,25.170,24.941,24.620,24.179,
-23.707,23.308,23.023,22.842,22.736,22.679,22.637,22.583,22.516,22.467,22.467,22.512,22.569,22.607,22.616,22.594,
-22.540,22.461,22.384,22.336,22.308,22.241,22.083,21.836,21.566,21.331,21.125,20.897,20.610,20.283,19.963,19.665,
-19.363,19.030,18.684,18.366,18.090,17.825,17.534,17.215,16.898,16.600,16.307,16.001,15.696,15.426,15.196,14.967,
-14.688,14.358,14.024,13.724,13.448,13.159,12.842,12.526,12.240,11.979,11.712,11.425,11.136,10.875,10.645,10.426,
-10.204,9.980,9.762,9.555,9.364,9.196,9.046,8.884,8.673,8.411,8.141,7.908,7.706,7.479,7.183,6.827,
-6.457,6.087,5.688,5.228,4.719,4.214,3.755,3.329,2.891,2.391,1.811,1.160,.482,-.153,-.671,-1.051,
--1.347,-1.655,-2.040,-2.496,-2.980,-3.462,-3.942,-4.420,-4.867,-5.247,-5.558,-5.847,-6.183,-6.614,-7.144,-7.729,
--8.296,-8.789,-9.199,-9.579,-10.003,-10.499,-11.027,-11.527,-11.984,-12.430,-12.897,-13.367,-13.803,-14.207,-14.628,-15.100,
--15.600,-16.063,-16.466,-16.854,-17.289,-17.782,-18.290,-18.774,-19.237,-19.697,-20.153,-20.584,-20.998,-21.433,-21.916,-22.431,
--22.936,-23.424,-23.926,-24.458,-24.979,-25.433,-25.822,-26.217,-26.680,-27.192,-27.667,-28.049,-28.366,-28.684,-29.028,-29.362,
--29.653,-29.915,-30.184,-30.471,-30.757,-31.038,-31.347,-31.706,-32.082,-32.401,-32.626,-32.813,-33.071,-33.482,-34.054,-34.733,
--35.453,-36.150,-36.749,-37.182,-37.428,-37.547,-37.672,-37.940,-38.400,-38.967,-39.459,-39.711,-39.702,-39.577,-39.541,-39.691,
--39.949,-40.150,-40.199,-40.141,-40.080,-40.064,-40.062,-40.041,-40.024,-40.054,-40.117,-40.127,-40.007,-39.772,-39.520,-39.350,
--39.296,-39.329,-39.401,-39.486,-39.586,-39.733,-39.964,-40.275,-40.584,-40.749,-40.653,-40.281,-39.715,-39.055,-38.356,-37.642,
--36.941,-36.298,-35.722,-35.173,-34.604,-34.034,-33.541,-33.197,-32.998,-32.876,-32.779,-32.726,-32.795,-33.058,-33.525,-34.128,
--34.746,-35.255,-35.593,-35.783,-35.901,-35.993,-36.035,-35.975,-35.805,-35.595,-35.427,-35.324,-35.242,-35.124,-34.960,-34.772,
--34.584,-34.400,-34.233,-34.114,-34.063,-34.066,-34.077,-34.065,-34.039,-34.021,-34.009,-33.973,-33.892,-33.774,-33.635,-33.470,
--33.247,-32.951,-32.603,-32.249,-31.924,-31.623,-31.329,-31.042,-30.788,-30.588,-30.413,-30.182,-29.801,-29.228,-28.501,-27.705,
--26.899,-26.088,-25.242,-24.371,-23.537,-22.804,-22.174,-21.573,-20.919,-20.184,-19.397,-18.588,-17.743,-16.816,-15.773,-14.605,
--13.328,-11.979,-10.636,-9.417,-8.411,-7.601,-6.852,-6.023,-5.100,-4.231,-3.596,-3.241,-3.026,-2.749,-2.313,-1.785,
--1.297,-.909,-.572,-.207,.192,.564,.865,1.137,1.474,1.925,2.447,2.954,3.398,3.801,4.220,4.688,
-5.207,5.757,6.315,6.851,7.334,7.758,8.150,8.541,8.935,9.308,9.669,10.075,10.593,11.210,11.822,12.318,
-12.699,13.098,13.685,14.523,15.524,16.517,17.373,18.078,18.695,19.265,19.736,19.987,19.921,19.538,18.894,17.992,
-16.747,15.105,13.243,11.603,10.663,10.602,11.164,11.868,12.366,12.632,12.841,13.122,13.451,13.740,13.967,14.188,
-14.457,14.763,15.057,15.317,15.544,15.738,15.888,16.000,16.102,16.215,16.321,16.386,16.404,16.410,16.436,16.488,
-16.566,16.702,16.947,17.320,17.785,18.295,18.824,19.348,19.808,20.138,20.350,20.574,20.961,21.528,22.138,22.627,
-22.967,23.252,23.566,23.880,24.125,24.320,24.592,25.034,25.577,26.023,26.207,26.129,25.926,25.757,25.727,25.878,
-26.200,26.625,27.039,27.340,27.512,27.642,27.864,28.282,28.931,29.755,30.608,31.283,31.614,31.587,31.358,31.145,
-31.085,31.182,31.402,31.758,32.311,33.076,33.976,34.892,35.745,36.507,37.159,37.670,38.025,38.257,38.403,38.451,
-38.355,38.114,37.818,37.576,37.402,37.221,36.994,36.810,36.822,37.059,37.353,37.464,37.310,37.016,36.742,36.453,
-35.896,34.819,33.198,31.239,29.160,26.980,24.569,21.914,19.339,17.431,16.702,17.241,18.660,20.360,21.872,23.034,
-23.899,24.563,25.059,25.383,25.546,25.585,25.526,25.381,25.151,24.838,24.434,23.925,23.338,22.749,22.242,21.823,
-21.419,20.967,20.498,20.089,19.747,19.368,18.878,18.387,18.148,18.298,18.645,18.760,18.326,17.415,16.418,15.708,
-15.369,15.222,15.053,14.796,14.505,14.232,13.947,13.587,13.135,12.641,12.190,11.843,11.610,11.444,11.252,10.958,
-10.560,10.132,9.766,9.480,9.203,8.861,8.458,8.079,7.795,7.575,7.316,6.954,6.536,6.180,5.955,5.808,
-5.625,5.344,5.019,4.760,4.618,4.530,4.380,4.097,3.709,3.296,2.917,2.584,2.288,2.038,1.850,1.716,
-1.587,1.402,1.135,.808,.478,.193,-.027,-.195,-.343,-.508,-.706,-.929,-1.154,-1.362,-1.553,-1.739,
--1.931,-2.133,-2.344,-2.560,-2.769,-2.946,-3.070,-3.142,-3.189,-3.252,-3.360,-3.520,-3.722,-3.940,-4.150,-4.339,
--4.523,-4.738,-5.009,-5.315,-5.596,-5.801,-5.928,-6.023,-6.135,-6.270,-6.402,-6.515,-6.628,-6.781,-6.995,-7.248,
--7.501,-7.720,-7.896,-8.035,-8.145,-8.238,-8.326,-8.420,-8.527,-8.643,-8.759,-8.865,-8.953,-9.023,-9.087,-9.160,
--9.251,-9.348,-9.429,-9.482,-9.520,-9.566,-9.639,-9.735,-9.837,-9.933,-10.017,-10.096,-10.173,-10.252,-10.341,-10.447,
--10.567,-10.688,-10.795,-10.882,-10.957,-11.027,-11.090,-11.134,-11.150,-11.138,-11.120,-11.128,-11.187,-11.292,-11.397,-11.439,
--11.389,-11.284,-11.201,-11.197,-11.251,-11.296,-11.282,-11.223,-11.173,-11.164,-11.180,-11.187,-11.179,-11.182,-11.212,-11.257,
--11.294,-11.317,-11.338,-11.357,-11.350,-11.309,-11.259,-11.243,-11.263,-11.269,-11.197,-11.045,-10.882,-10.794,-10.821,-10.930,
--11.056,-11.148,-11.197,-11.225,-11.268,-11.334,-11.401,-11.434,-11.444,-11.496,-11.662,-11.936,-12.213,-12.365,-12.343,-12.209,
--12.062,-11.950,-11.872,-11.829,-11.853,-11.947,-12.036,-12.015,-11.861,-11.684,-11.631,-11.737,-11.885,-11.925,-11.823,-11.683,
--11.636,-11.705,-11.805,-11.837,-11.778,-11.681,-11.598,-11.532,-11.455,-11.351,-11.237,-11.140,-11.070,-11.011,-10.948,-10.881,
--10.828,-10.797,-10.771,-10.720,-10.625,-10.501,-10.384,-10.297,-10.227,-10.145,-10.043,-9.944,-9.872,-9.825,-9.777,-9.712,
--9.648,-9.615,-9.612,-9.604,-9.557,-9.478,-9.407,-9.373,-9.364,-9.347,-9.301,-9.228,-9.138,-9.018,-8.854,-8.651,
--8.447,-8.280,-8.149,-8.017,-7.845,-7.636,-7.427,-7.261,-7.148,-7.066,-6.974,-6.846,-6.679,-6.497,-6.330,-6.202,
--6.117,-6.061,-6.018,-5.979,-5.947,-5.922,-5.895,-5.851,-5.780,-5.693,-5.616,-5.569,-5.541,-5.489,-5.374,-5.194,
--4.993,-4.825,-4.709,-4.614,-4.501,-4.356,-4.199,-4.053,-3.917,-3.774,-3.618,-3.470,-3.348,-3.246,-3.141,-3.028,
--2.934,-2.893,-2.903,-2.924,-2.915,-2.874,-2.827,-2.787,-2.728,-2.613,-2.452,-2.308,-2.251,-2.283,-2.339,-2.342,
--2.273,-2.174,-2.086,-2.005,-1.892,-1.730,-1.538,-1.351,-1.173,-.984,-.778,-.573,-.386,-.199,.028,.309,
-.611,.897,1.172,1.474,1.823,2.190,2.539,2.868,3.214,3.582,3.927,4.201,4.422,4.665,4.988,5.373,
-5.758,6.109,6.445,6.782,7.096,7.356,7.580,7.830,8.142,8.487,8.814,9.116,9.438,9.806,10.189,10.549,
-10.897,11.282,11.703,12.077,12.311,12.408,12.468,12.566,12.639,12.491,11.932,10.936,9.721,8.711,8.392,9.098,
-10.836,13.264,15.853,18.115,19.754,20.721,21.234,21.767,22.876,24.815,27.192,29.057,29.535,28.538,26.887,25.670,
-25.398,25.705,25.808,25.218,24.040,22.726,21.657,20.958,20.591,20.460,20.429,20.337,20.082,19.712,19.379,19.184,
-19.100,19.031,18.930,18.805,18.655,18.451,18.203,18.000,17.941,18.013,18.087,18.044,17.887,17.701,17.547,17.420,
-17.314,17.269,17.315,17.403,17.434,17.369,17.278,17.243,17.245,17.177,16.971,16.671,16.361,16.065,15.748,15.406,
-15.088,14.807,14.481,14.015,13.449,12.968,12.714,12.610,12.424,11.998,11.403,10.826,10.356,9.917,9.427,8.952,
-8.656,8.598,8.610,8.405,7.800,6.836,5.712,4.627,3.666,2.802,1.956,1.078,.184,-.658,-1.394,-2.035,
--2.649,-3.281,-3.894,-4.402,-4.759,-5.012,-5.245,-5.485,-5.678,-5.767,-5.768,-5.764,-5.825,-5.942,-6.051,-6.117,
--6.169,-6.265,-6.428,-6.622,-6.783,-6.880,-6.933,-6.990,-7.077,-7.185,-7.286,-7.369,-7.447,-7.528,-7.588,-7.587,
--7.507,-7.380,-7.260,-7.177,-7.118,-7.055,-6.992,-6.955,-6.955,-6.956,-6.906,-6.782,-6.600,-6.383,-6.134,-5.844,
--5.519,-5.192,-4.891,-4.618,-4.354,-4.090,-3.831,-3.577,-3.307,-2.987,-2.601,-2.160,-1.694,-1.228,-.782,-.365,
-.019,.377,.719,1.052,1.395,1.785,2.273,2.874,3.535,4.164,4.708,5.197,5.693,6.184,6.567,6.749,
-6.774,6.828,7.083,7.540,8.026,8.357,8.516,8.662,8.980,9.514,10.144,10.698,11.090,11.364,11.621,11.922,
-12.251,12.556,12.822,13.090,13.408,13.771,14.120,14.401,14.622,14.846,15.125,15.444,15.747,15.998,16.207,16.407,
-16.604,16.777,16.917,17.047,17.202,17.397,17.622,17.852,18.061,18.216,18.289,18.300,18.315,18.398,18.536,18.638,
-18.625,18.517,18.421,18.427,18.526,18.641,18.703,18.710,18.696,18.687,18.685,18.681,18.662,18.602,18.482,18.323,
-18.180,18.089,18.027,17.934,17.798,17.673,17.616,17.606,17.563,17.444,17.293,17.181,17.118,17.062,16.995,16.955,
-16.978,17.017,16.980,16.846,16.712,16.685,16.762,16.834,16.815,16.739,16.700,16.746,16.853,16.994,17.183,17.413,
-17.588,17.578,17.361,17.063,16.854,16.787,16.807,16.865,16.995,17.220,17.442,17.488,17.300,17.045,16.971,17.156,
-17.419,17.515,17.382,17.196,17.174,17.361,17.165,17.330,17.465,17.604,17.802,18.050,18.288,18.471,18.611,18.737,
-18.855,18.952,19.035,19.132,19.262,19.404,19.524,19.622,19.732,19.888,20.084,20.285,20.463,20.627,20.803,21.007,
-21.234,21.467,21.689,21.885,22.055,22.224,22.427,22.680,22.950,23.182,23.352,23.496,23.667,23.884,24.114,24.330,
-24.540,24.768,25.006,25.199,25.310,25.371,25.452,25.580,25.699,25.735,25.683,25.614,25.584,25.570,25.515,25.420,
-25.373,25.456,25.649,25.852,26.004,26.160,26.432,26.858,27.356,27.808,28.165,28.458,28.727,28.965,29.145,29.291,
-29.475,29.758,30.124,30.499,30.814,31.040,31.170,31.198,31.120,30.967,30.808,30.707,30.652,30.546,30.254,29.694,
-28.905,28.044,27.309,26.832,26.609,26.525,26.445,26.319,26.215,26.258,26.528,26.981,27.459,27.780,27.852,27.722,
-27.530,27.404,27.380,27.415,27.452,27.469,27.476,27.469,27.431,27.352,27.257,27.178,27.127,27.092,27.068,27.078,
-27.156,27.310,27.523,27.775,28.064,28.381,28.690,28.951,29.159,29.344,29.537,29.720,29.841,29.862,29.796,29.676,
-29.515,29.286,28.954,28.502,27.949,27.343,26.756,26.269,25.940,25.773,25.724,25.745,25.815,25.925,26.051,26.148,
-26.195,26.214,26.254,26.338,26.451,26.558,26.643,26.714,26.793,26.906,27.086,27.361,27.716,28.100,28.470,28.851,
-29.334,29.986,30.769,31.546,32.183,32.641,32.971,33.235,33.435,33.527,33.495,33.404,33.357,33.403,33.481,33.475,
-33.331,33.125,32.983,32.954,32.950,32.855,32.669,32.521,32.530,32.663,32.772,32.757,32.666,32.607,32.597,32.554,
-32.434,32.333,32.381,32.562,32.693,32.615,32.391,32.244,32.310,32.494,32.587,32.498,32.319,32.160,32.007,31.760,
-31.404,31.039,30.749,30.463,30.027,29.391,28.685,28.087,27.628,27.197,26.693,26.158,25.707,25.375,25.068,24.677,
-24.203,23.752,23.421,23.222,23.108,23.044,23.018,23.011,22.984,22.921,22.856,22.842,22.891,22.958,22.995,22.995,
-22.982,22.969,22.941,22.886,22.818,22.748,22.653,22.490,22.250,21.983,21.749,21.555,21.348,21.079,20.757,20.430,
-20.128,19.828,19.501,19.152,18.816,18.513,18.222,17.913,17.590,17.279,16.987,16.694,16.385,16.082,15.819,15.592,
-15.346,15.036,14.682,14.348,14.070,13.820,13.546,13.236,12.931,12.662,12.409,12.130,11.813,11.497,11.223,10.994,
-10.785,10.577,10.380,10.206,10.049,9.894,9.735,9.571,9.389,9.169,8.912,8.653,8.430,8.238,8.024,7.746,
-7.410,7.054,6.692,6.296,5.835,5.324,4.816,4.354,3.929,3.482,2.954,2.319,1.604,.893,.291,-.135,
--.411,-.654,-.985,-1.441,-1.959,-2.458,-2.916,-3.364,-3.823,-4.262,-4.638,-4.958,-5.292,-5.711,-6.232,-6.807,
--7.365,-7.858,-8.274,-8.640,-9.014,-9.449,-9.956,-10.487,-10.982,-11.423,-11.848,-12.297,-12.763,-13.206,-13.614,-14.025,
--14.485,-14.986,-15.469,-15.898,-16.298,-16.732,-17.230,-17.763,-18.280,-18.756,-19.195,-19.607,-20.005,-20.418,-20.883,-21.406,
--21.947,-22.454,-22.925,-23.401,-23.909,-24.416,-24.863,-25.248,-25.636,-26.092,-26.596,-27.066,-27.446,-27.765,-28.089,-28.445,
--28.794,-29.100,-29.381,-29.678,-29.997,-30.298,-30.557,-30.813,-31.131,-31.532,-31.957,-32.330,-32.629,-32.898,-33.192,-33.540,
--33.948,-34.432,-35.009,-35.654,-36.269,-36.740,-37.025,-37.213,-37.469,-37.898,-38.440,-38.893,-39.072,-38.970,-38.785,-38.766,
--39.012,-39.403,-39.727,-39.867,-39.884,-39.917,-40.029,-40.163,-40.227,-40.199,-40.147,-40.151,-40.232,-40.342,-40.402,-40.363,
--40.229,-40.065,-39.964,-39.991,-40.133,-40.321,-40.493,-40.642,-40.795,-40.937,-40.987,-40.858,-40.546,-40.137,-39.724,-39.331,
--38.913,-38.426,-37.875,-37.292,-36.699,-36.103,-35.530,-35.039,-34.684,-34.475,-34.379,-34.364,-34.431,-34.617,-34.952,-35.424,
--35.965,-36.465,-36.819,-36.985,-37.013,-37.003,-37.020,-37.046,-37.010,-36.872,-36.668,-36.469,-36.320,-36.210,-36.106,-35.991,
--35.856,-35.693,-35.491,-35.266,-35.063,-34.920,-34.834,-34.769,-34.704,-34.648,-34.611,-34.565,-34.457,-34.263,-34.014,-33.772,
--33.555,-33.318,-32.999,-32.587,-32.138,-31.730,-31.400,-31.122,-30.848,-30.566,-30.308,-30.108,-29.948,-29.748,-29.421,-28.941,
--28.352,-27.710,-27.021,-26.244,-25.369,-24.468,-23.656,-23.003,-22.464,-21.933,-21.331,-20.662,-19.977,-19.297,-18.577,-17.736,
--16.703,-15.444,-13.981,-12.408,-10.887,-9.569,-8.501,-7.589,-6.689,-5.756,-4.900,-4.278,-3.919,-3.671,-3.332,-2.837,
--2.304,-1.896,-1.641,-1.405,-1.040,-.533,-.002,.441,.812,1.215,1.721,2.282,2.796,3.208,3.562,3.941,
-4.393,4.903,5.429,5.937,6.411,6.845,7.251,7.655,8.075,8.493,8.871,9.206,9.561,10.024,10.617,11.259,
-11.830,12.285,12.709,13.267,14.083,15.149,16.326,17.416,18.268,18.837,19.168,19.327,19.328,19.110,18.586,17.695,
-16.432,14.858,13.128,11.520,10.370,9.909,10.107,10.675,11.262,11.685,11.979,12.261,12.569,12.850,13.070,13.282,
-13.569,13.932,14.289,14.559,14.748,14.914,15.090,15.256,15.387,15.497,15.606,15.697,15.723,15.680,15.637,15.679,
-15.823,16.003,16.144,16.251,16.407,16.712,17.204,17.841,18.507,19.066,19.427,19.618,19.775,20.052,20.497,21.026,
-21.518,21.926,22.298,22.680,23.048,23.355,23.619,23.947,24.434,25.050,25.630,25.989,26.045,25.861,25.595,25.418,
-25.452,25.725,26.166,26.636,27.014,27.258,27.416,27.577,27.829,28.238,28.825,29.527,30.185,30.624,30.768,30.701,
-30.602,30.603,30.721,30.912,31.175,31.571,32.157,32.917,33.757,34.572,35.295,35.910,36.440,36.921,37.380,37.787,
-38.051,38.089,37.912,37.644,37.414,37.242,37.039,36.741,36.418,36.227,36.247,36.375,36.416,36.252,35.907,35.447,
-34.836,33.942,32.681,31.132,29.450,27.682,25.683,23.298,20.652,18.258,16.779,16.606,17.596,19.190,20.790,22.076,
-23.039,23.791,24.387,24.802,25.025,25.102,25.097,25.025,24.858,24.576,24.189,23.717,23.171,22.584,22.026,21.568,
-21.208,20.860,20.453,20.014,19.631,19.324,18.989,18.525,18.005,17.672,17.721,18.059,18.314,18.121,17.412,16.451,
-15.599,15.058,14.792,14.645,14.497,14.307,14.074,13.785,13.414,12.948,12.425,11.930,11.562,11.365,11.276,11.147,
-10.849,10.385,9.888,9.508,9.267,9.053,8.738,8.314,7.894,7.586,7.381,7.164,6.845,6.445,6.074,5.813,
-5.640,5.463,5.214,4.912,4.632,4.423,4.270,4.107,3.877,3.565,3.196,2.812,2.453,2.151,1.923,1.759,
-1.627,1.482,1.288,1.031,.720,.382,.058,-.214,-.417,-.565,-.695,-.843,-1.023,-1.227,-1.442,-1.659,
--1.871,-2.073,-2.267,-2.465,-2.678,-2.893,-3.075,-3.193,-3.245,-3.271,-3.320,-3.422,-3.579,-3.780,-4.008,-4.244,
--4.473,-4.691,-4.915,-5.169,-5.451,-5.724,-5.945,-6.101,-6.214,-6.321,-6.434,-6.543,-6.641,-6.743,-6.878,-7.061,
--7.282,-7.516,-7.738,-7.933,-8.099,-8.237,-8.356,-8.466,-8.573,-8.681,-8.789,-8.896,-8.997,-9.084,-9.148,-9.194,
--9.237,-9.290,-9.351,-9.408,-9.456,-9.509,-9.582,-9.679,-9.784,-9.881,-9.967,-10.051,-10.136,-10.220,-10.305,-10.402,
--10.523,-10.658,-10.781,-10.869,-10.931,-10.992,-11.069,-11.154,-11.219,-11.245,-11.235,-11.206,-11.182,-11.187,-11.236,-11.320,
--11.405,-11.446,-11.430,-11.382,-11.346,-11.340,-11.343,-11.326,-11.286,-11.244,-11.223,-11.223,-11.233,-11.250,-11.274,-11.306,
--11.336,-11.359,-11.381,-11.406,-11.424,-11.419,-11.392,-11.366,-11.353,-11.337,-11.281,-11.175,-11.047,-10.943,-10.886,-10.878,
--10.920,-11.024,-11.176,-11.324,-11.404,-11.406,-11.381,-11.383,-11.410,-11.425,-11.425,-11.475,-11.644,-11.919,-12.197,-12.364,
--12.382,-12.291,-12.154,-12.025,-11.952,-11.978,-12.091,-12.202,-12.199,-12.056,-11.878,-11.803,-11.858,-11.929,-11.883,-11.725,
--11.594,-11.622,-11.792,-11.947,-11.950,-11.799,-11.616,-11.513,-11.503,-11.509,-11.455,-11.334,-11.190,-11.071,-10.985,-10.917,
--10.851,-10.794,-10.759,-10.737,-10.703,-10.631,-10.523,-10.407,-10.309,-10.229,-10.147,-10.053,-9.961,-9.891,-9.842,-9.793,
--9.728,-9.666,-9.632,-9.629,-9.620,-9.569,-9.479,-9.389,-9.334,-9.310,-9.285,-9.246,-9.198,-9.144,-9.060,-8.912,
--8.708,-8.506,-8.365,-8.293,-8.230,-8.112,-7.924,-7.709,-7.522,-7.378,-7.256,-7.127,-6.981,-6.821,-6.649,-6.468,
--6.291,-6.142,-6.037,-5.970,-5.917,-5.858,-5.795,-5.734,-5.672,-5.595,-5.504,-5.423,-5.384,-5.386,-5.383,-5.318,
--5.174,-4.995,-4.838,-4.725,-4.626,-4.503,-4.355,-4.213,-4.098,-3.991,-3.858,-3.688,-3.509,-3.362,-3.254,-3.160,
--3.064,-2.979,-2.938,-2.942,-2.957,-2.943,-2.893,-2.838,-2.796,-2.749,-2.660,-2.529,-2.405,-2.347,-2.361,-2.392,
--2.380,-2.311,-2.220,-2.138,-2.050,-1.915,-1.725,-1.514,-1.330,-1.184,-1.050,-.900,-.727,-.533,-.309,-.042,
-.255,.547,.818,1.092,1.410,1.776,2.145,2.480,2.798,3.148,3.537,3.911,4.214,4.456,4.710,5.033,
-5.412,5.794,6.150,6.492,6.821,7.110,7.337,7.539,7.784,8.100,8.443,8.759,9.051,9.377,9.758,10.151,
-10.507,10.842,11.214,11.624,11.977,12.179,12.248,12.303,12.404,12.430,12.129,11.330,10.137,8.944,8.283,8.594,
-10.031,12.370,15.085,17.552,19.317,20.263,20.624,20.863,21.491,22.839,24.840,26.957,28.398,28.614,27.706,26.406,
-25.551,25.494,25.919,26.180,25.807,24.771,23.377,22.010,20.955,20.336,20.098,20.038,19.920,19.633,19.251,18.926,
-18.726,18.603,18.490,18.395,18.353,18.334,18.248,18.062,17.869,17.805,17.892,18.007,18.005,17.858,17.647,17.462,
-17.327,17.234,17.187,17.194,17.231,17.257,17.279,17.351,17.489,17.612,17.598,17.406,17.111,16.805,16.492,16.110,
-15.639,15.137,14.657,14.175,13.643,13.110,12.713,12.526,12.430,12.198,11.714,11.080,10.486,10.011,9.575,9.104,
-8.658,8.367,8.240,8.085,7.657,6.873,5.872,4.872,3.994,3.205,2.405,1.540,.636,-.234,-1.008,-1.672,
--2.260,-2.823,-3.382,-3.904,-4.332,-4.642,-4.873,-5.088,-5.309,-5.501,-5.621,-5.673,-5.705,-5.764,-5.852,-5.938,
--6.007,-6.081,-6.196,-6.361,-6.543,-6.692,-6.780,-6.823,-6.862,-6.932,-7.035,-7.146,-7.243,-7.323,-7.397,-7.461,
--7.493,-7.469,-7.392,-7.285,-7.173,-7.061,-6.952,-6.863,-6.821,-6.829,-6.850,-6.833,-6.748,-6.599,-6.405,-6.173,
--5.897,-5.584,-5.257,-4.943,-4.654,-4.388,-4.145,-3.922,-3.705,-3.460,-3.152,-2.761,-2.298,-1.791,-1.275,-.788,
--.361,.005,.339,.683,1.065,1.484,1.930,2.399,2.886,3.361,3.788,4.168,4.563,5.042,5.603,6.154,
-6.591,6.900,7.173,7.511,7.923,8.317,8.606,8.799,9.000,9.313,9.756,10.264,10.749,11.168,11.532,11.881,
-12.231,12.566,12.858,13.098,13.320,13.574,13.887,14.233,14.560,14.837,15.080,15.328,15.599,15.881,16.151,16.405,
-16.651,16.891,17.109,17.291,17.441,17.577,17.721,17.893,18.099,18.317,18.497,18.594,18.613,18.626,18.706,18.852,
-18.976,18.985,18.875,18.738,18.678,18.720,18.811,18.882,18.910,18.912,18.913,18.917,18.911,18.867,18.762,18.604,
-18.439,18.323,18.267,18.220,18.124,17.983,17.858,17.795,17.766,17.706,17.601,17.504,17.457,17.427,17.353,17.238,
-17.163,17.184,17.240,17.214,17.075,16.924,16.878,16.925,16.941,16.853,16.735,16.720,16.847,17.030,17.176,17.287,
-17.408,17.510,17.480,17.260,16.948,16.739,16.742,16.909,17.108,17.252,17.328,17.330,17.241,17.090,16.979,17.009,
-17.163,17.295,17.276,17.132,17.008,17.025,17.165,17.093,17.166,17.246,17.404,17.659,17.940,18.158,18.300,18.421,
-18.560,18.699,18.793,18.849,18.918,19.035,19.177,19.310,19.438,19.606,19.831,20.077,20.293,20.476,20.667,20.898,
-21.148,21.382,21.594,21.811,22.046,22.274,22.467,22.642,22.849,23.099,23.346,23.528,23.646,23.761,23.933,24.155,
-24.381,24.584,24.778,24.975,25.149,25.264,25.329,25.400,25.508,25.616,25.653,25.600,25.516,25.479,25.501,25.535,
-25.548,25.569,25.648,25.796,25.969,26.137,26.318,26.551,26.835,27.131,27.420,27.729,28.089,28.458,28.727,28.829,
-28.836,28.919,29.217,29.713,30.258,30.692,30.950,31.055,31.060,31.002,30.914,30.849,30.848,30.868,30.757,30.337,
-29.548,28.535,27.595,26.983,26.757,26.762,26.782,26.712,26.616,26.640,26.867,27.251,27.651,27.924,28.003,27.914,
-27.753,27.625,27.589,27.633,27.698,27.738,27.756,27.784,27.832,27.868,27.849,27.766,27.651,27.546,27.470,27.424,
-27.411,27.449,27.563,27.764,28.052,28.401,28.761,29.069,29.290,29.439,29.569,29.724,29.896,30.038,30.114,30.116,
-30.048,29.895,29.618,29.196,28.649,28.038,27.439,26.922,26.540,26.309,26.206,26.180,26.196,26.253,26.359,26.497,
-26.622,26.703,26.757,26.831,26.953,27.098,27.217,27.290,27.340,27.406,27.520,27.699,27.958,28.299,28.699,29.120,
-29.551,30.030,30.614,31.304,32.014,32.616,33.046,33.340,33.577,33.787,33.923,33.938,33.877,33.854,33.941,34.065,
-34.075,33.901,33.653,33.515,33.551,33.640,33.622,33.484,33.377,33.420,33.557,33.623,33.554,33.461,33.473,33.549,
-33.526,33.347,33.184,33.252,33.534,33.741,33.615,33.212,32.854,32.789,32.956,33.106,33.092,32.974,32.846,32.657,
-32.270,31.680,31.073,30.639,30.354,30.009,29.457,28.769,28.139,27.656,27.242,26.786,26.293,25.850,25.483,25.118,
-24.674,24.191,23.791,23.553,23.442,23.375,23.322,23.308,23.338,23.360,23.324,23.250,23.205,23.227,23.281,23.312,
-23.314,23.323,23.353,23.367,23.318,23.210,23.084,22.958,22.808,22.603,22.363,22.136,21.943,21.745,21.493,21.185,
-20.866,20.568,20.275,19.951,19.592,19.232,18.899,18.588,18.276,17.965,17.667,17.383,17.092,16.783,16.480,16.212,
-15.970,15.702,15.376,15.021,14.699,14.438,14.198,13.928,13.628,13.337,13.079,12.823,12.526,12.193,11.872,11.604,
-11.380,11.168,10.964,10.788,10.654,10.532,10.383,10.199,10.005,9.816,9.623,9.407,9.177,8.963,8.770,8.572,
-8.331,8.038,7.707,7.339,6.915,6.428,5.912,5.422,4.981,4.550,4.054,3.441,2.718,1.959,1.274,.756,
-.424,.196,-.064,-.454,-.959,-1.486,-1.954,-2.372,-2.793,-3.235,-3.657,-4.021,-4.358,-4.758,-5.274,-5.867,
--6.443,-6.933,-7.338,-7.700,-8.064,-8.462,-8.916,-9.427,-9.954,-10.443,-10.868,-11.263,-11.676,-12.121,-12.562,-12.974,
--13.381,-13.832,-14.337,-14.844,-15.299,-15.707,-16.125,-16.607,-17.147,-17.694,-18.195,-18.632,-19.020,-19.394,-19.803,-20.284,
--20.833,-21.398,-21.925,-22.406,-22.882,-23.383,-23.882,-24.330,-24.719,-25.105,-25.547,-26.037,-26.508,-26.912,-27.271,-27.635,
--28.015,-28.367,-28.657,-28.918,-29.208,-29.544,-29.878,-30.164,-30.417,-30.711,-31.089,-31.526,-31.950,-32.321,-32.642,-32.931,
--33.188,-33.420,-33.683,-34.068,-34.622,-35.284,-35.904,-36.369,-36.697,-37.013,-37.426,-37.908,-38.307,-38.482,-38.449,-38.376,
--38.449,-38.716,-39.057,-39.311,-39.421,-39.477,-39.601,-39.832,-40.084,-40.232,-40.225,-40.122,-40.050,-40.109,-40.301,-40.522,
--40.623,-40.520,-40.274,-40.059,-40.034,-40.223,-40.504,-40.732,-40.848,-40.890,-40.901,-40.865,-40.735,-40.511,-40.260,-40.049,
--39.878,-39.681,-39.399,-39.031,-38.607,-38.156,-37.690,-37.236,-36.845,-36.566,-36.412,-36.356,-36.374,-36.464,-36.640,-36.904,
--37.228,-37.554,-37.812,-37.948,-37.956,-37.888,-37.828,-37.829,-37.876,-37.898,-37.834,-37.674,-37.449,-37.202,-36.963,-36.753,
--36.589,-36.463,-36.335,-36.163,-35.939,-35.706,-35.510,-35.365,-35.248,-35.134,-35.022,-34.908,-34.761,-34.533,-34.214,-33.857,
--33.545,-33.312,-33.108,-32.839,-32.456,-31.999,-31.565,-31.223,-30.963,-30.720,-30.446,-30.151,-29.893,-29.697,-29.525,-29.298,
--28.976,-28.585,-28.167,-27.712,-27.147,-26.424,-25.605,-24.834,-24.225,-23.760,-23.308,-22.749,-22.075,-21.373,-20.727,-20.138,
--19.521,-18.751,-17.707,-16.317,-14.607,-12.735,-10.945,-9.440,-8.269,-7.332,-6.508,-5.771,-5.181,-4.759,-4.419,-4.036,
--3.573,-3.122,-2.783,-2.536,-2.236,-1.764,-1.153,-.553,-.068,.342,.806,1.386,2.011,2.557,2.970,3.312,
-3.675,4.100,4.560,5.018,5.463,5.902,6.335,6.753,7.160,7.570,7.986,8.382,8.741,9.092,9.504,10.028,
-10.641,11.252,11.783,12.251,12.787,13.570,14.695,16.071,17.429,18.454,18.974,19.050,18.891,18.655,18.302,17.639,
-16.490,14.869,13.011,11.270,9.977,9.317,9.273,9.645,10.156,10.604,10.944,11.248,11.577,11.907,12.181,12.408,
-12.667,13.016,13.403,13.714,13.894,14.004,14.140,14.325,14.502,14.625,14.721,14.849,15.001,15.104,15.114,15.085,
-15.122,15.258,15.411,15.484,15.482,15.542,15.822,16.370,17.092,17.813,18.377,18.719,18.881,18.987,19.169,19.495,
-19.941,20.425,20.888,21.322,21.745,22.154,22.537,22.905,23.317,23.828,24.430,25.023,25.471,25.675,25.632,25.435,
-25.237,25.188,25.359,25.713,26.142,26.544,26.882,27.171,27.434,27.679,27.924,28.216,28.599,29.041,29.437,29.686,
-29.783,29.826,29.927,30.119,30.365,30.632,30.949,31.383,31.966,32.658,33.369,34.031,34.633,35.218,35.831,36.465,
-37.036,37.424,37.558,37.478,37.314,37.174,37.054,36.851,36.489,36.022,35.611,35.380,35.311,35.256,35.044,34.578,
-33.845,32.871,31.712,30.455,29.183,27.876,26.361,24.416,22.011,19.489,17.488,16.592,16.959,18.235,19.807,21.189,
-22.231,23.026,23.685,24.205,24.527,24.648,24.648,24.603,24.513,24.321,23.992,23.544,23.024,22.462,21.890,21.361,
-20.932,20.604,20.306,19.964,19.573,19.192,18.848,18.484,18.026,17.504,17.090,16.959,17.115,17.343,17.350,16.975,
-16.283,15.501,14.860,14.471,14.300,14.225,14.120,13.919,13.626,13.260,12.822,12.308,11.772,11.331,11.091,11.020,
-10.943,10.670,10.177,9.631,9.234,9.037,8.897,8.638,8.218,7.753,7.386,7.149,6.950,6.692,6.362,6.026,
-5.748,5.530,5.325,5.089,4.816,4.533,4.271,4.054,3.874,3.695,3.465,3.145,2.752,2.356,2.036,1.824,
-1.683,1.548,1.373,1.153,.899,.616,.301,-.035,-.352,-.606,-.780,-.893,-.988,-1.106,-1.270,-1.486,
--1.738,-1.997,-2.232,-2.431,-2.612,-2.799,-2.991,-3.162,-3.282,-3.354,-3.410,-3.484,-3.591,-3.727,-3.894,-4.101,
--4.345,-4.605,-4.854,-5.088,-5.327,-5.587,-5.855,-6.095,-6.276,-6.400,-6.493,-6.580,-6.677,-6.783,-6.899,-7.029,
--7.177,-7.349,-7.544,-7.755,-7.968,-8.166,-8.343,-8.502,-8.647,-8.774,-8.879,-8.965,-9.048,-9.138,-9.227,-9.298,
--9.341,-9.367,-9.391,-9.422,-9.457,-9.500,-9.565,-9.660,-9.772,-9.869,-9.935,-9.984,-10.042,-10.122,-10.217,-10.318,
--10.431,-10.564,-10.706,-10.826,-10.904,-10.955,-11.019,-11.115,-11.227,-11.321,-11.377,-11.400,-11.398,-11.372,-11.322,-11.270,
--11.246,-11.265,-11.307,-11.337,-11.333,-11.303,-11.266,-11.232,-11.204,-11.187,-11.188,-11.211,-11.248,-11.285,-11.317,-11.344,
--11.370,-11.394,-11.418,-11.444,-11.466,-11.470,-11.453,-11.426,-11.401,-11.375,-11.330,-11.262,-11.201,-11.172,-11.153,-11.084,
--10.949,-10.833,-10.866,-11.090,-11.390,-11.583,-11.585,-11.481,-11.423,-11.468,-11.543,-11.555,-11.516,-11.531,-11.674,-11.907,
--12.119,-12.227,-12.229,-12.170,-12.104,-12.072,-12.107,-12.201,-12.285,-12.269,-12.135,-11.971,-11.896,-11.930,-11.971,-11.907,
--11.756,-11.663,-11.749,-11.967,-12.131,-12.084,-11.841,-11.561,-11.396,-11.371,-11.391,-11.352,-11.229,-11.075,-10.960,-10.908,
--10.893,-10.875,-10.835,-10.781,-10.726,-10.673,-10.610,-10.528,-10.432,-10.333,-10.239,-10.146,-10.054,-9.973,-9.912,-9.865,
--9.816,-9.758,-9.705,-9.677,-9.673,-9.660,-9.607,-9.514,-9.410,-9.322,-9.250,-9.179,-9.113,-9.066,-9.036,-8.982,
--8.858,-8.671,-8.486,-8.373,-8.336,-8.311,-8.225,-8.066,-7.878,-7.713,-7.579,-7.454,-7.322,-7.191,-7.067,-6.934,
--6.771,-6.581,-6.404,-6.278,-6.198,-6.124,-6.023,-5.899,-5.781,-5.681,-5.585,-5.474,-5.358,-5.276,-5.247,-5.241,
--5.208,-5.116,-4.985,-4.858,-4.757,-4.664,-4.555,-4.431,-4.314,-4.218,-4.122,-3.995,-3.823,-3.631,-3.454,-3.313,
--3.201,-3.111,-3.049,-3.023,-3.023,-3.021,-2.990,-2.935,-2.882,-2.846,-2.813,-2.753,-2.662,-2.573,-2.521,-2.508,
--2.494,-2.445,-2.359,-2.266,-2.180,-2.077,-1.923,-1.719,-1.509,-1.341,-1.223,-1.125,-1.006,-.848,-.649,-.409,
--.130,.165,.451,.726,1.023,1.373,1.758,2.126,2.444,2.741,3.074,3.460,3.855,4.206,4.512,4.816,
-5.145,5.483,5.804,6.115,6.443,6.786,7.100,7.349,7.565,7.811,8.114,8.435,8.734,9.029,9.372,9.768,
-10.157,10.487,10.784,11.119,11.496,11.822,12.006,12.075,12.139,12.221,12.154,11.679,10.706,9.483,8.538,8.419,
-9.435,11.520,14.249,16.987,19.127,20.331,20.675,20.599,20.692,21.410,22.874,24.802,26.622,27.744,27.885,27.244,
-26.387,25.871,25.886,26.181,26.292,25.872,24.867,23.485,22.059,20.907,20.205,19.913,19.808,19.639,19.308,18.909,
-18.591,18.405,18.282,18.157,18.054,18.025,18.046,18.020,17.894,17.742,17.691,17.777,17.899,17.922,17.805,17.613,
-17.429,17.282,17.167,17.080,17.026,17.001,17.001,17.053,17.191,17.397,17.574,17.619,17.517,17.347,17.172,16.957,
-16.610,16.099,15.492,14.875,14.268,13.662,13.104,12.699,12.485,12.341,12.065,11.560,10.919,10.309,9.799,9.329,
-8.841,8.379,8.022,7.737,7.354,6.718,5.850,4.932,4.134,3.460,2.779,1.981,1.081,.188,-.601,-1.268,
--1.854,-2.403,-2.926,-3.407,-3.826,-4.172,-4.453,-4.688,-4.900,-5.100,-5.283,-5.438,-5.559,-5.650,-5.719,-5.773,
--5.824,-5.883,-5.962,-6.071,-6.208,-6.364,-6.515,-6.632,-6.705,-6.753,-6.817,-6.922,-7.054,-7.172,-7.248,-7.290,
--7.327,-7.369,-7.396,-7.377,-7.297,-7.173,-7.033,-6.904,-6.810,-6.765,-6.763,-6.776,-6.762,-6.692,-6.560,-6.384,
--6.177,-5.941,-5.673,-5.374,-5.056,-4.737,-4.438,-4.169,-3.923,-3.674,-3.393,-3.065,-2.692,-2.278,-1.820,-1.318,
--.797,-.308,.109,.456,.776,1.121,1.521,1.974,2.463,2.957,3.414,3.803,4.136,4.482,4.913,5.443,
-6.006,6.518,6.949,7.339,7.738,8.149,8.525,8.833,9.092,9.359,9.675,10.041,10.435,10.838,11.245,11.652,
-12.053,12.437,12.793,13.104,13.360,13.580,13.806,14.083,14.417,14.766,15.079,15.341,15.578,15.827,16.101,16.383,
-16.657,16.919,17.173,17.419,17.640,17.817,17.946,18.049,18.166,18.329,18.532,18.726,18.861,18.936,19.004,19.121,
-19.278,19.395,19.395,19.281,19.138,19.057,19.067,19.131,19.192,19.228,19.243,19.251,19.244,19.206,19.114,18.968,
-18.798,18.657,18.581,18.553,18.511,18.410,18.268,18.140,18.049,17.963,17.848,17.735,17.691,17.726,17.760,17.702,
-17.570,17.479,17.501,17.575,17.569,17.449,17.317,17.278,17.301,17.248,17.057,16.841,16.771,16.886,17.057,17.149,
-17.170,17.229,17.370,17.494,17.478,17.329,17.192,17.194,17.321,17.446,17.460,17.349,17.171,16.998,16.894,16.901,
-17.013,17.150,17.205,17.138,17.021,16.964,17.007,17.093,16.967,17.027,17.122,17.314,17.591,17.859,18.035,18.134,
-18.234,18.372,18.506,18.584,18.620,18.687,18.827,19.013,19.198,19.381,19.600,19.863,20.120,20.325,20.498,20.704,
-20.968,21.245,21.477,21.679,21.917,22.219,22.523,22.746,22.884,23.015,23.206,23.430,23.609,23.713,23.803,23.957,
-24.177,24.398,24.571,24.719,24.887,25.070,25.212,25.280,25.311,25.370,25.467,25.542,25.543,25.488,25.452,25.488,
-25.584,25.684,25.758,25.818,25.897,26.021,26.198,26.415,26.637,26.813,26.925,27.028,27.222,27.561,27.970,28.285,
-28.404,28.392,28.451,28.748,29.276,29.872,30.356,30.665,30.850,30.984,31.088,31.139,31.136,31.103,31.030,30.813,
-30.313,29.501,28.562,27.817,27.502,27.582,27.789,27.843,27.679,27.454,27.380,27.525,27.782,27.990,28.065,28.033,
-27.968,27.926,27.924,27.956,28.004,28.048,28.075,28.098,28.143,28.212,28.269,28.258,28.161,28.017,27.890,27.820,
-27.799,27.798,27.814,27.887,28.067,28.378,28.781,29.191,29.520,29.729,29.846,29.932,30.034,30.157,30.281,30.387,
-30.456,30.447,30.298,29.959,29.439,28.812,28.174,27.604,27.146,26.821,26.636,26.571,26.584,26.640,26.728,26.852,
-26.998,27.130,27.225,27.305,27.421,27.599,27.802,27.960,28.037,28.064,28.100,28.186,28.335,28.551,28.851,29.237,
-29.686,30.160,30.659,31.223,31.871,32.545,33.122,33.522,33.774,33.986,34.219,34.427,34.526,34.518,34.509,34.584,
-34.687,34.666,34.456,34.187,34.064,34.149,34.297,34.328,34.239,34.191,34.295,34.458,34.498,34.386,34.293,34.368,
-34.527,34.538,34.330,34.127,34.206,34.542,34.772,34.559,33.963,33.385,33.158,33.250,33.380,33.356,33.222,33.080,
-32.872,32.445,31.789,31.116,30.658,30.401,30.104,29.570,28.854,28.174,27.663,27.263,26.848,26.393,25.960,25.577,
-25.180,24.716,24.250,23.914,23.765,23.726,23.682,23.609,23.569,23.599,23.645,23.632,23.561,23.505,23.520,23.573,
-23.603,23.597,23.601,23.638,23.667,23.622,23.499,23.354,23.232,23.116,22.956,22.742,22.513,22.299,22.084,21.829,
-21.528,21.221,20.937,20.658,20.344,19.986,19.617,19.276,18.963,18.661,18.359,18.067,17.784,17.495,17.189,16.879,
-16.588,16.312,16.019,15.694,15.364,15.071,14.822,14.578,14.304,14.011,13.735,13.482,13.215,12.901,12.565,12.262,
-12.017,11.805,11.593,11.391,11.233,11.123,11.008,10.836,10.609,10.388,10.216,10.079,9.928,9.740,9.536,9.342,
-9.156,8.950,8.696,8.379,7.988,7.520,7.001,6.491,6.040,5.634,5.187,4.606,3.870,3.051,2.279,1.666,
-1.250,.980,.738,.412,-.035,-.545,-1.025,-1.434,-1.815,-2.227,-2.667,-3.081,-3.443,-3.809,-4.270,-4.844,
--5.446,-5.964,-6.364,-6.705,-7.067,-7.479,-7.927,-8.401,-8.902,-9.417,-9.900,-10.316,-10.686,-11.067,-11.492,-11.939,
--12.370,-12.790,-13.243,-13.751,-14.277,-14.758,-15.173,-15.569,-16.009,-16.511,-17.035,-17.529,-17.972,-18.380,-18.787,-19.230,
--19.728,-20.274,-20.830,-21.358,-21.852,-22.335,-22.830,-23.316,-23.759,-24.156,-24.553,-24.999,-25.491,-25.975,-26.409,-26.805,
--27.196,-27.586,-27.935,-28.219,-28.470,-28.752,-29.086,-29.436,-29.752,-30.040,-30.354,-30.732,-31.152,-31.559,-31.924,-32.260,
--32.577,-32.855,-33.068,-33.250,-33.497,-33.896,-34.438,-35.013,-35.507,-35.894,-36.245,-36.636,-37.064,-37.454,-37.745,-37.951,
--38.144,-38.372,-38.601,-38.757,-38.806,-38.807,-38.868,-39.063,-39.371,-39.692,-39.911,-39.958,-39.850,-39.692,-39.623,-39.730,
--39.970,-40.181,-40.212,-40.053,-39.864,-39.834,-40.028,-40.340,-40.603,-40.727,-40.734,-40.688,-40.615,-40.505,-40.365,-40.231,
--40.127,-40.030,-39.897,-39.710,-39.493,-39.270,-39.031,-38.756,-38.458,-38.193,-38.016,-37.929,-37.894,-37.880,-37.894,-37.959,
--38.079,-38.223,-38.353,-38.442,-38.487,-38.497,-38.491,-38.490,-38.507,-38.532,-38.531,-38.462,-38.303,-38.052,-37.734,-37.392,
--37.082,-36.849,-36.696,-36.575,-36.426,-36.221,-35.988,-35.770,-35.587,-35.425,-35.260,-35.080,-34.879,-34.637,-34.328,-33.957,
--33.578,-33.267,-33.055,-32.899,-32.704,-32.402,-32.004,-31.588,-31.232,-30.958,-30.720,-30.463,-30.176,-29.896,-29.657,-29.446,
--29.210,-28.923,-28.613,-28.327,-28.052,-27.703,-27.205,-26.587,-25.984,-25.513,-25.162,-24.789,-24.252,-23.530,-22.735,-22.005,
--21.408,-20.905,-20.372,-19.629,-18.493,-16.865,-14.831,-12.673,-10.740,-9.249,-8.193,-7.411,-6.752,-6.166,-5.666,-5.239,
--4.841,-4.445,-4.072,-3.736,-3.385,-2.919,-2.306,-1.636,-1.050,-.599,-.193,.307,.942,1.614,2.196,2.648,
-3.031,3.421,3.829,4.227,4.607,5.007,5.459,5.941,6.394,6.784,7.137,7.506,7.909,8.317,8.700,9.075,
-9.506,10.039,10.651,11.262,11.819,12.387,13.148,14.265,15.704,17.170,18.251,18.698,18.586,18.224,17.854,17.423,
-16.643,15.269,13.370,11.336,9.663,8.677,8.413,8.665,9.137,9.595,9.947,10.223,10.500,10.811,11.131,11.433,
-11.739,12.093,12.484,12.827,13.044,13.164,13.304,13.539,13.809,13.978,13.994,13.959,14.024,14.227,14.458,14.586,
-14.599,14.592,14.640,14.713,14.742,14.743,14.843,15.173,15.745,16.433,17.070,17.548,17.856,18.050,18.209,18.407,
-18.696,19.082,19.522,19.964,20.380,20.784,21.203,21.660,22.157,22.693,23.257,23.826,24.356,24.788,25.069,25.174,
-25.130,25.023,24.968,25.049,25.270,25.574,25.904,26.253,26.641,27.055,27.428,27.698,27.879,28.061,28.322,28.641,
-28.921,29.085,29.161,29.248,29.424,29.685,29.979,30.279,30.618,31.043,31.563,32.138,32.731,33.349,34.026,34.769,
-35.514,36.144,36.560,36.748,36.786,36.773,36.752,36.674,36.442,36.009,35.439,34.879,34.459,34.197,33.970,33.582,
-32.875,31.825,30.566,29.326,28.277,27.402,26.455,25.099,23.158,20.825,18.646,17.253,17.004,17.785,19.115,20.467,
-21.553,22.368,23.037,23.616,24.052,24.277,24.303,24.219,24.102,23.946,23.700,23.336,22.874,22.360,21.822,21.280,
-20.773,20.350,20.030,19.764,19.476,19.117,18.703,18.282,17.876,17.467,17.031,16.600,16.259,16.097,16.128,16.240,
-16.238,15.955,15.385,14.710,14.180,13.931,13.886,13.846,13.666,13.352,12.990,12.618,12.189,11.685,11.202,10.889,
-10.778,10.709,10.460,9.968,9.398,8.985,8.804,8.714,8.507,8.111,7.632,7.222,6.942,6.738,6.526,6.276,
-6.011,5.761,5.529,5.302,5.061,4.792,4.489,4.175,3.902,3.711,3.583,3.425,3.144,2.731,2.284,1.928,
-1.718,1.601,1.475,1.282,1.033,.766,.496,.206,-.115,-.446,-.737,-.947,-1.071,-1.142,-1.215,-1.342,
--1.550,-1.826,-2.119,-2.377,-2.582,-2.756,-2.931,-3.114,-3.284,-3.419,-3.523,-3.623,-3.735,-3.856,-3.978,-4.116,
--4.295,-4.524,-4.779,-5.025,-5.250,-5.477,-5.733,-6.013,-6.277,-6.481,-6.607,-6.679,-6.740,-6.825,-6.945,-7.086,
--7.229,-7.367,-7.509,-7.673,-7.864,-8.067,-8.265,-8.451,-8.631,-8.804,-8.953,-9.062,-9.134,-9.199,-9.278,-9.364,
--9.432,-9.464,-9.473,-9.483,-9.506,-9.537,-9.578,-9.644,-9.744,-9.855,-9.937,-9.969,-9.974,-9.995,-10.057,-10.151,
--10.257,-10.373,-10.505,-10.648,-10.772,-10.860,-10.929,-11.016,-11.141,-11.284,-11.407,-11.494,-11.556,-11.597,-11.598,-11.536,
--11.423,-11.306,-11.238,-11.236,-11.272,-11.306,-11.311,-11.286,-11.247,-11.215,-11.210,-11.241,-11.299,-11.360,-11.404,-11.425,
--11.435,-11.449,-11.473,-11.507,-11.541,-11.558,-11.550,-11.520,-11.483,-11.445,-11.395,-11.328,-11.277,-11.293,-11.378,-11.434,
--11.334,-11.059,-10.776,-10.724,-10.994,-11.425,-11.733,-11.762,-11.608,-11.489,-11.520,-11.627,-11.673,-11.621,-11.566,-11.609,
--11.751,-11.909,-12.018,-12.078,-12.120,-12.155,-12.178,-12.196,-12.225,-12.248,-12.214,-12.104,-11.975,-11.920,-11.963,-12.025,
--12.006,-11.909,-11.851,-11.935,-12.125,-12.259,-12.192,-11.932,-11.617,-11.390,-11.287,-11.237,-11.155,-11.021,-10.883,-10.801,
--10.796,-10.837,-10.874,-10.868,-10.813,-10.733,-10.652,-10.581,-10.512,-10.432,-10.336,-10.233,-10.135,-10.052,-9.984,-9.931,
--9.884,-9.837,-9.789,-9.752,-9.735,-9.732,-9.719,-9.674,-9.595,-9.497,-9.391,-9.279,-9.164,-9.067,-9.012,-8.988,
--8.942,-8.822,-8.633,-8.443,-8.317,-8.258,-8.208,-8.108,-7.962,-7.818,-7.715,-7.642,-7.565,-7.472,-7.380,-7.300,
--7.211,-7.084,-6.918,-6.756,-6.639,-6.560,-6.474,-6.344,-6.183,-6.034,-5.922,-5.826,-5.709,-5.558,-5.401,-5.274,
--5.184,-5.110,-5.029,-4.934,-4.836,-4.743,-4.653,-4.556,-4.453,-4.348,-4.239,-4.121,-3.982,-3.820,-3.644,-3.471,
--3.315,-3.192,-3.109,-3.064,-3.044,-3.029,-3.005,-2.972,-2.943,-2.927,-2.917,-2.895,-2.847,-2.779,-2.714,-2.663,
--2.619,-2.556,-2.462,-2.347,-2.237,-2.134,-2.019,-1.869,-1.689,-1.513,-1.372,-1.266,-1.163,-1.035,-.870,-.668,
--.435,-.174,.101,.380,.670,.995,1.367,1.757,2.119,2.428,2.714,3.028,3.389,3.772,4.145,4.503,
-4.856,5.195,5.494,5.749,6.000,6.297,6.637,6.969,7.252,7.505,7.781,8.101,8.435,8.751,9.068,9.419,
-9.797,10.144,10.430,10.700,11.023,11.389,11.699,11.872,11.942,11.995,12.012,11.801,11.155,10.105,9.037,8.530,
-9.047,10.702,13.215,16.035,18.537,20.234,20.958,20.941,20.712,20.837,21.646,23.086,24.786,26.253,27.112,27.276,
-26.959,26.528,26.270,26.223,26.192,25.910,25.217,24.137,22.846,21.591,20.607,20.016,19.764,19.645,19.443,19.090,
-18.696,18.408,18.261,18.168,18.039,17.881,17.767,17.727,17.715,17.675,17.621,17.615,17.676,17.748,17.754,17.670,
-17.535,17.390,17.249,17.113,16.991,16.902,16.847,16.821,16.837,16.918,17.053,17.177,17.226,17.202,17.159,17.124,
-17.038,16.805,16.396,15.866,15.286,14.665,13.990,13.311,12.741,12.352,12.078,11.762,11.306,10.746,10.187,9.675,
-9.174,8.645,8.116,7.628,7.140,6.542,5.772,4.915,4.134,3.512,2.961,2.313,1.495,.594,-.234,-.905,
--1.459,-1.981,-2.504,-2.989,-3.391,-3.708,-3.985,-4.257,-4.522,-4.753,-4.940,-5.100,-5.261,-5.420,-5.547,-5.622,
--5.660,-5.703,-5.779,-5.881,-5.983,-6.080,-6.193,-6.335,-6.482,-6.594,-6.661,-6.724,-6.830,-6.981,-7.123,-7.202,
--7.222,-7.232,-7.271,-7.319,-7.324,-7.253,-7.125,-6.989,-6.883,-6.817,-6.780,-6.762,-6.749,-6.717,-6.641,-6.509,
--6.336,-6.145,-5.948,-5.728,-5.462,-5.142,-4.791,-4.449,-4.140,-3.851,-3.548,-3.206,-2.840,-2.475,-2.120,-1.739,
--1.289,-.768,-.228,.259,.652,.971,1.267,1.593,1.975,2.413,2.883,3.350,3.782,4.184,4.595,5.054,
-5.557,6.057,6.512,6.928,7.353,7.818,8.298,8.742,9.117,9.442,9.755,10.073,10.394,10.716,11.051,11.416,
-11.806,12.201,12.583,12.947,13.283,13.578,13.828,14.058,14.315,14.621,14.953,15.267,15.540,15.790,16.053,16.338,
-16.624,16.886,17.124,17.358,17.600,17.834,18.027,18.167,18.275,18.395,18.560,18.764,18.966,19.135,19.279,19.434,
-19.614,19.782,19.867,19.832,19.710,19.582,19.510,19.501,19.518,19.532,19.538,19.544,19.550,19.540,19.494,19.404,
-19.280,19.149,19.042,18.975,18.925,18.849,18.733,18.604,18.499,18.411,18.297,18.144,18.012,17.979,18.042,18.102,
-18.061,17.941,17.858,17.879,17.940,17.920,17.805,17.708,17.726,17.797,17.755,17.520,17.216,17.039,17.053,17.143,
-17.165,17.120,17.134,17.284,17.496,17.628,17.624,17.559,17.530,17.545,17.524,17.396,17.168,16.910,16.706,16.620,
-16.676,16.836,16.999,17.061,17.003,16.905,16.864,16.902,16.967,16.807,16.923,17.062,17.258,17.500,17.715,17.847,
-17.918,17.998,18.112,18.220,18.284,18.338,18.458,18.674,18.938,19.186,19.413,19.659,19.934,20.191,20.388,20.555,
-20.764,21.042,21.333,21.577,21.796,22.068,22.421,22.769,22.999,23.093,23.148,23.263,23.432,23.579,23.666,23.752,
-23.914,24.146,24.362,24.503,24.607,24.751,24.949,25.126,25.208,25.216,25.242,25.341,25.471,25.545,25.537,25.506,
-25.534,25.642,25.777,25.870,25.905,25.924,25.985,26.125,26.329,26.539,26.687,26.748,26.777,26.879,27.123,27.470,
-27.789,27.969,28.024,28.086,28.296,28.687,29.178,29.668,30.123,30.573,31.022,31.390,31.558,31.475,31.211,30.876,
-30.510,30.052,29.461,28.837,28.399,28.311,28.506,28.714,28.689,28.407,28.070,27.900,27.954,28.113,28.233,28.276,
-28.303,28.364,28.443,28.487,28.476,28.438,28.412,28.413,28.435,28.475,28.525,28.559,28.535,28.442,28.317,28.230,
-28.213,28.244,28.273,28.289,28.346,28.519,28.831,29.226,29.598,29.871,30.034,30.135,30.224,30.321,30.419,30.516,
-30.616,30.701,30.702,30.529,30.134,29.565,28.934,28.346,27.846,27.437,27.126,26.940,26.895,26.967,27.101,27.255,
-27.411,27.561,27.687,27.784,27.883,28.036,28.265,28.522,28.720,28.814,28.831,28.845,28.902,29.011,29.172,29.413,
-29.763,30.207,30.694,31.194,31.735,32.359,33.033,33.642,34.080,34.358,34.586,34.844,35.093,35.228,35.221,35.168,
-35.173,35.215,35.169,34.979,34.761,34.693,34.813,34.966,34.994,34.932,34.961,35.167,35.409,35.478,35.360,35.268,
-35.376,35.580,35.615,35.394,35.160,35.217,35.538,35.737,35.459,34.774,34.108,33.800,33.791,33.771,33.557,33.248,
-33.009,32.813,32.473,31.916,31.304,30.851,30.564,30.228,29.667,28.950,28.296,27.829,27.468,27.067,26.594,26.126,
-25.712,25.307,24.863,24.438,24.159,24.069,24.067,24.024,23.914,23.820,23.803,23.824,23.804,23.738,23.698,23.735,
-23.809,23.843,23.817,23.789,23.806,23.839,23.821,23.734,23.624,23.536,23.453,23.318,23.108,22.859,22.613,22.369,
-22.099,21.798,21.502,21.235,20.976,20.682,20.338,19.980,19.648,19.346,19.051,18.747,18.444,18.157,17.876,17.583,
-17.276,16.963,16.652,16.337,16.021,15.719,15.449,15.200,14.943,14.664,14.383,14.124,13.874,13.591,13.262,12.930,
-12.651,12.435,12.242,12.039,11.846,11.700,11.595,11.466,11.261,11.007,10.785,10.648,10.567,10.467,10.308,10.111,
-9.917,9.737,9.545,9.303,8.985,8.578,8.091,7.570,7.081,6.656,6.249,5.747,5.064,4.227,3.370,2.648,
-2.138,1.806,1.541,1.230,.819,.335,-.143,-.555,-.908,-1.266,-1.676,-2.116,-2.530,-2.907,-3.311,-3.812,
--4.389,-4.937,-5.363,-5.684,-6.005,-6.411,-6.895,-7.396,-7.882,-8.367,-8.865,-9.345,-9.764,-10.129,-10.500,-10.927,
--11.395,-11.856,-12.292,-12.741,-13.238,-13.764,-14.261,-14.696,-15.097,-15.518,-15.979,-16.452,-16.904,-17.334,-17.770,-18.233,
--18.726,-19.236,-19.752,-20.264,-20.767,-21.258,-21.744,-22.227,-22.694,-23.127,-23.531,-23.941,-24.395,-24.889,-25.379,-25.824,
--26.223,-26.605,-26.983,-27.339,-27.657,-27.952,-28.258,-28.588,-28.920,-29.230,-29.540,-29.896,-30.316,-30.759,-31.163,-31.509,
--31.828,-32.155,-32.480,-32.760,-32.983,-33.200,-33.482,-33.851,-34.261,-34.649,-34.992,-35.319,-35.666,-36.035,-36.418,-36.815,
--37.236,-37.656,-37.993,-38.159,-38.141,-38.032,-37.981,-38.085,-38.346,-38.695,-39.048,-39.327,-39.453,-39.375,-39.131,-38.873,
--38.793,-38.970,-39.299,-39.574,-39.671,-39.644,-39.651,-39.799,-40.055,-40.298,-40.436,-40.459,-40.408,-40.321,-40.224,-40.141,
--40.084,-40.027,-39.922,-39.749,-39.547,-39.386,-39.287,-39.202,-39.067,-38.885,-38.725,-38.647,-38.640,-38.637,-38.590,-38.516,
--38.467,-38.468,-38.501,-38.541,-38.590,-38.670,-38.784,-38.900,-38.971,-38.966,-38.888,-38.756,-38.583,-38.366,-38.099,-37.787,
--37.458,-37.153,-36.909,-36.726,-36.570,-36.395,-36.180,-35.941,-35.708,-35.498,-35.303,-35.104,-34.889,-34.645,-34.360,-34.028,
--33.669,-33.331,-33.066,-32.890,-32.763,-32.606,-32.355,-32.002,-31.598,-31.216,-30.897,-30.631,-30.379,-30.117,-29.857,-29.617,
--29.386,-29.124,-28.812,-28.485,-28.205,-27.982,-27.753,-27.435,-27.024,-26.610,-26.288,-26.045,-25.753,-25.271,-24.566,-23.732,
--22.919,-22.237,-21.715,-21.289,-20.799,-20.013,-18.724,-16.899,-14.756,-12.669,-10.947,-9.676,-8.727,-7.924,-7.179,-6.509,
--5.952,-5.512,-5.153,-4.832,-4.491,-4.053,-3.468,-2.768,-2.075,-1.508,-1.074,-.655,-.127,.524,1.198,1.789,
-2.282,2.732,3.177,3.593,3.946,4.265,4.635,5.108,5.636,6.114,6.477,6.764,7.077,7.477,7.932,8.361,
-8.729,9.096,9.570,10.206,10.945,11.674,12.357,13.105,14.090,15.338,16.615,17.537,17.856,17.652,17.238,16.839,
-16.358,15.457,13.904,11.856,9.819,8.334,7.657,7.680,8.085,8.571,8.985,9.310,9.588,9.858,10.129,10.410,
-10.724,11.099,11.518,11.903,12.165,12.312,12.476,12.808,13.307,13.767,13.942,13.777,13.479,13.335,13.466,13.743,
-13.951,13.992,13.936,13.900,13.923,13.972,14.046,14.217,14.563,15.070,15.632,16.132,16.524,16.839,17.127,17.419,
-17.728,18.066,18.433,18.810,19.169,19.498,19.829,20.218,20.709,21.303,21.956,22.601,23.177,23.650,24.019,24.295,
-24.484,24.585,24.622,24.650,24.735,24.901,25.117,25.349,25.607,25.943,26.375,26.840,27.234,27.510,27.727,27.984,
-28.302,28.593,28.747,28.752,28.713,28.759,28.937,29.203,29.492,29.791,30.129,30.531,30.995,31.520,32.134,32.864,
-33.677,34.462,35.090,35.506,35.756,35.929,36.069,36.135,36.040,35.726,35.217,34.600,33.981,33.431,32.943,32.417,
-31.694,30.660,29.361,28.031,26.966,26.300,25.845,25.170,23.892,21.994,19.902,18.268,17.584,17.913,18.914,20.102,
-21.136,21.930,22.569,23.135,23.617,23.945,24.073,24.024,23.864,23.641,23.362,23.015,22.604,22.149,21.667,21.166,
-20.658,20.174,19.759,19.441,19.191,18.933,18.586,18.137,17.653,17.242,16.943,16.684,16.335,15.858,15.396,15.182,
-15.309,15.585,15.638,15.227,14.473,13.764,13.417,13.415,13.470,13.324,12.970,12.577,12.257,11.957,11.574,11.137,
-10.793,10.626,10.519,10.258,9.760,9.177,8.749,8.564,8.488,8.310,7.947,7.489,7.082,6.789,6.574,6.374,
-6.163,5.952,5.749,5.547,5.340,5.115,4.850,4.522,4.154,3.822,3.608,3.509,3.412,3.180,2.773,2.292,
-1.889,1.645,1.513,1.385,1.187,.922,.640,.367,.096,-.195,-.501,-.792,-1.025,-1.177,-1.262,-1.331,
--1.451,-1.661,-1.945,-2.243,-2.495,-2.693,-2.874,-3.077,-3.303,-3.516,-3.686,-3.818,-3.937,-4.060,-4.181,-4.297,
--4.423,-4.585,-4.788,-5.008,-5.217,-5.413,-5.623,-5.873,-6.154,-6.423,-6.633,-6.765,-6.841,-6.904,-6.994,-7.124,
--7.278,-7.430,-7.568,-7.707,-7.865,-8.043,-8.224,-8.392,-8.552,-8.723,-8.905,-9.072,-9.193,-9.270,-9.336,-9.416,
--9.501,-9.557,-9.568,-9.559,-9.564,-9.593,-9.631,-9.670,-9.727,-9.818,-9.927,-10.008,-10.033,-10.019,-10.018,-10.062,
--10.138,-10.221,-10.304,-10.403,-10.526,-10.654,-10.769,-10.875,-10.999,-11.153,-11.317,-11.455,-11.555,-11.631,-11.694,-11.729,
--11.705,-11.618,-11.504,-11.415,-11.382,-11.401,-11.443,-11.477,-11.487,-11.474,-11.455,-11.449,-11.471,-11.511,-11.546,-11.558,
--11.549,-11.538,-11.545,-11.573,-11.614,-11.649,-11.664,-11.653,-11.623,-11.585,-11.537,-11.463,-11.374,-11.324,-11.377,-11.523,
--11.632,-11.547,-11.245,-10.912,-10.818,-11.071,-11.507,-11.824,-11.849,-11.665,-11.491,-11.457,-11.516,-11.553,-11.540,-11.548,
--11.637,-11.779,-11.899,-11.971,-12.037,-12.133,-12.232,-12.276,-12.254,-12.212,-12.187,-12.158,-12.089,-11.994,-11.943,-11.979,
--12.061,-12.099,-12.062,-12.014,-12.038,-12.138,-12.217,-12.172,-11.989,-11.742,-11.522,-11.361,-11.233,-11.105,-10.973,-10.859,
--10.787,-10.763,-10.776,-10.797,-10.798,-10.759,-10.686,-10.602,-10.525,-10.455,-10.378,-10.288,-10.195,-10.114,-10.052,-10.001,
--9.950,-9.896,-9.845,-9.807,-9.785,-9.777,-9.772,-9.758,-9.728,-9.680,-9.611,-9.517,-9.394,-9.260,-9.149,-9.084,
--9.051,-8.993,-8.863,-8.666,-8.461,-8.302,-8.191,-8.086,-7.954,-7.816,-7.717,-7.675,-7.659,-7.622,-7.547,-7.457,
--7.372,-7.283,-7.169,-7.028,-6.891,-6.789,-6.714,-6.628,-6.505,-6.359,-6.229,-6.137,-6.066,-5.973,-5.828,-5.632,
--5.412,-5.208,-5.045,-4.927,-4.839,-4.754,-4.655,-4.543,-4.428,-4.314,-4.191,-4.046,-3.884,-3.723,-3.579,-3.449,
--3.321,-3.198,-3.100,-3.040,-3.010,-2.980,-2.936,-2.887,-2.863,-2.876,-2.904,-2.915,-2.887,-2.832,-2.774,-2.728,
--2.686,-2.626,-2.534,-2.413,-2.280,-2.155,-2.039,-1.920,-1.785,-1.637,-1.487,-1.349,-1.221,-1.088,-.937,-.761,
--.560,-.337,-.096,.156,.417,.699,1.015,1.369,1.735,2.083,2.398,2.698,3.009,3.342,3.689,4.045,
-4.410,4.779,5.121,5.405,5.637,5.868,6.141,6.454,6.764,7.045,7.322,7.637,7.995,8.360,8.705,9.038,
-9.380,9.720,10.025,10.301,10.601,10.968,11.353,11.649,11.798,11.849,11.865,11.786,11.418,10.636,9.608,8.814,
-8.811,9.908,12.009,14.675,17.323,19.423,20.666,21.060,20.938,20.817,21.144,22.079,23.451,24.890,26.038,26.702,
-26.900,26.802,26.606,26.415,26.188,25.787,25.103,24.136,22.999,21.853,20.851,20.107,19.669,19.477,19.373,19.192,
-18.881,18.536,18.294,18.195,18.147,18.029,17.818,17.597,17.467,17.451,17.495,17.537,17.547,17.528,17.487,17.434,
-17.381,17.333,17.274,17.183,17.065,16.953,16.878,16.839,16.812,16.783,16.765,16.765,16.760,16.726,16.667,16.620,
-16.596,16.554,16.432,16.209,15.907,15.528,15.023,14.339,13.519,12.708,12.053,11.588,11.229,10.869,10.469,10.043,
-9.593,9.089,8.508,7.873,7.220,6.545,5.810,5.013,4.229,3.553,2.991,2.433,1.751,.933,.096,-.618,
--1.170,-1.638,-2.114,-2.604,-3.039,-3.361,-3.596,-3.826,-4.103,-4.403,-4.659,-4.838,-4.970,-5.107,-5.260,-5.391,
--5.467,-5.508,-5.575,-5.697,-5.841,-5.954,-6.024,-6.098,-6.221,-6.381,-6.516,-6.592,-6.645,-6.740,-6.895,-7.053,
--7.148,-7.173,-7.179,-7.210,-7.248,-7.238,-7.154,-7.027,-6.918,-6.854,-6.821,-6.789,-6.751,-6.714,-6.673,-6.600,
--6.475,-6.303,-6.115,-5.928,-5.725,-5.468,-5.142,-4.775,-4.417,-4.094,-3.787,-3.451,-3.067,-2.659,-2.273,-1.924,
--1.575,-1.173,-.698,-.184,.309,.741,1.112,1.447,1.773,2.104,2.449,2.813,3.200,3.612,4.061,4.554,
-5.082,5.602,6.064,6.459,6.839,7.277,7.797,8.350,8.859,9.283,9.643,9.983,10.323,10.656,10.973,11.289,
-11.625,11.985,12.356,12.725,13.085,13.433,13.753,14.034,14.286,14.542,14.824,15.126,15.421,15.694,15.958,16.230,
-16.508,16.767,16.991,17.191,17.397,17.622,17.846,18.042,18.205,18.364,18.553,18.778,19.008,19.212,19.392,19.584,
-19.815,20.057,20.237,20.294,20.228,20.107,20.006,19.951,19.920,19.883,19.839,19.808,19.799,19.802,19.794,19.764,
-19.711,19.636,19.543,19.439,19.336,19.236,19.129,19.018,18.926,18.867,18.820,18.737,18.607,18.480,18.422,18.438,
-18.453,18.399,18.300,18.236,18.241,18.244,18.158,18.011,17.934,18.019,18.180,18.221,18.034,17.713,17.455,17.366,
-17.386,17.398,17.371,17.368,17.438,17.540,17.592,17.562,17.486,17.404,17.303,17.147,16.931,16.690,16.468,16.297,
-16.212,16.255,16.426,16.641,16.779,16.780,16.704,16.660,16.705,16.807,16.755,16.925,17.061,17.189,17.339,17.495,
-17.617,17.704,17.784,17.872,17.949,18.011,18.103,18.289,18.578,18.900,19.185,19.429,19.682,19.966,20.241,20.460,
-20.642,20.857,21.137,21.443,21.719,21.976,22.274,22.628,22.957,23.159,23.221,23.238,23.307,23.425,23.523,23.576,
-23.648,23.817,24.065,24.291,24.422,24.497,24.612,24.800,24.991,25.097,25.120,25.152,25.262,25.424,25.551,25.596,
-25.599,25.641,25.749,25.880,25.971,26.000,26.000,26.015,26.072,26.173,26.307,26.448,26.572,26.670,26.766,26.912,
-27.133,27.396,27.624,27.754,27.800,27.849,28.002,28.322,28.821,29.478,30.231,30.954,31.456,31.566,31.259,30.704,
-30.162,29.804,29.604,29.421,29.177,28.942,28.833,28.862,28.890,28.769,28.501,28.247,28.174,28.304,28.522,28.708,
-28.843,28.974,29.114,29.202,29.175,29.041,28.881,28.774,28.736,28.737,28.749,28.767,28.780,28.767,28.713,28.644,
-28.612,28.642,28.704,28.754,28.793,28.881,29.079,29.377,29.689,29.916,30.034,30.099,30.189,30.330,30.485,30.610,
-30.699,30.776,30.833,30.797,30.577,30.148,29.591,29.033,28.555,28.155,27.799,27.494,27.303,27.277,27.401,27.598,
-27.796,27.966,28.114,28.246,28.367,28.501,28.691,28.949,29.228,29.443,29.549,29.576,29.598,29.657,29.751,29.876,
-30.068,30.374,30.790,31.258,31.732,32.239,32.842,33.537,34.215,34.746,35.100,35.360,35.612,35.833,35.927,35.862,
-35.733,35.659,35.655,35.627,35.521,35.414,35.432,35.576,35.706,35.715,35.689,35.817,36.151,36.497,36.618,36.507,
-36.402,36.496,36.689,36.709,36.462,36.183,36.168,36.399,36.516,36.209,35.570,34.999,34.754,34.694,34.473,33.957,
-33.359,32.956,32.763,32.547,32.127,31.571,31.069,30.676,30.261,29.706,29.077,28.548,28.177,27.839,27.385,26.815,
-26.262,25.818,25.444,25.070,24.718,24.488,24.420,24.423,24.369,24.229,24.083,24.004,23.971,23.922,23.854,23.831,
-23.892,23.985,24.021,23.978,23.921,23.917,23.958,23.981,23.951,23.893,23.835,23.757,23.612,23.387,23.123,22.865,
-22.610,22.333,22.034,21.747,21.501,21.269,21.003,20.685,20.348,20.034,19.745,19.450,19.134,18.814,18.519,18.247,
-17.976,17.680,17.362,17.035,16.712,16.401,16.109,15.835,15.567,15.293,15.017,14.756,14.515,14.264,13.968,13.631,
-13.309,13.053,12.859,12.679,12.482,12.292,12.141,12.018,11.864,11.646,11.404,11.220,11.124,11.066,10.969,10.805,
-10.611,10.431,10.264,10.073,9.823,9.502,9.110,8.655,8.164,7.680,7.215,6.721,6.109,5.338,4.482,3.696,
-3.104,2.713,2.422,2.106,1.701,1.223,.737,.305,-.060,-.393,-.749,-1.153,-1.580,-1.993,-2.394,-2.833,
--3.342,-3.878,-4.346,-4.696,-4.983,-5.323,-5.780,-6.314,-6.844,-7.332,-7.805,-8.291,-8.766,-9.188,-9.562,-9.948,
--10.397,-10.891,-11.373,-11.815,-12.248,-12.719,-13.223,-13.714,-14.163,-14.589,-15.032,-15.497,-15.951,-16.371,-16.775,-17.210,
--17.696,-18.208,-18.710,-19.190,-19.662,-20.144,-20.636,-21.128,-21.609,-22.070,-22.505,-22.922,-23.344,-23.796,-24.278,-24.761,
--25.204,-25.598,-25.961,-26.320,-26.685,-27.050,-27.409,-27.762,-28.099,-28.407,-28.692,-28.996,-29.369,-29.819,-30.293,-30.719,
--31.065,-31.369,-31.685,-32.027,-32.367,-32.670,-32.939,-33.207,-33.493,-33.789,-34.079,-34.362,-34.645,-34.931,-35.218,-35.521,
--35.877,-36.304,-36.739,-37.060,-37.176,-37.117,-37.030,-37.068,-37.277,-37.600,-37.957,-38.309,-38.630,-38.838,-38.822,-38.552,
--38.177,-37.963,-38.095,-38.524,-39.017,-39.348,-39.462,-39.476,-39.531,-39.679,-39.869,-40.020,-40.081,-40.045,-39.944,-39.833,
--39.769,-39.761,-39.749,-39.652,-39.448,-39.210,-39.042,-38.977,-38.953,-38.893,-38.797,-38.740,-38.780,-38.883,-38.950,-38.917,
--38.806,-38.695,-38.633,-38.616,-38.626,-38.669,-38.768,-38.916,-39.051,-39.095,-39.007,-38.806,-38.544,-38.269,-38.001,-37.740,
--37.487,-37.247,-37.027,-36.824,-36.625,-36.412,-36.180,-35.934,-35.688,-35.452,-35.230,-35.022,-34.820,-34.612,-34.372,-34.078,
--33.735,-33.379,-33.069,-32.842,-32.692,-32.567,-32.396,-32.132,-31.774,-31.367,-30.973,-30.637,-30.357,-30.103,-29.847,-29.594,
--29.358,-29.130,-28.872,-28.556,-28.206,-27.888,-27.642,-27.437,-27.203,-26.908,-26.598,-26.339,-26.130,-25.879,-25.473,-24.868,
--24.117,-23.326,-22.599,-22.008,-21.569,-21.208,-20.732,-19.903,-18.588,-16.871,-15.020,-13.311,-11.865,-10.627,-9.486,-8.404,
--7.431,-6.643,-6.064,-5.662,-5.358,-5.049,-4.632,-4.052,-3.351,-2.649,-2.052,-1.562,-1.077,-.503,.158,.821,
-1.413,1.940,2.448,2.945,3.382,3.723,4.012,4.356,4.815,5.341,5.817,6.166,6.425,6.708,7.097,7.571,
-8.039,8.442,8.829,9.335,10.062,10.971,11.904,12.719,13.421,14.147,14.992,15.854,16.476,16.664,16.471,16.120,
-15.742,15.183,14.123,12.418,10.334,8.440,7.243,6.877,7.097,7.533,7.944,8.288,8.621,8.969,9.296,9.568,
-9.811,10.102,10.487,10.916,11.264,11.457,11.574,11.832,12.391,13.169,13.832,14.039,13.725,13.173,12.782,12.757,
-12.988,13.214,13.274,13.206,13.143,13.163,13.249,13.371,13.550,13.834,14.229,14.676,15.101,15.475,15.823,16.183,
-16.573,16.987,17.405,17.802,18.153,18.445,18.701,18.975,19.329,19.806,20.408,21.092,21.779,22.383,22.850,23.186,
-23.442,23.666,23.871,24.052,24.220,24.415,24.652,24.897,25.094,25.235,25.395,25.663,26.055,26.494,26.892,27.240,
-27.587,27.956,28.275,28.437,28.411,28.290,28.215,28.269,28.436,28.664,28.930,29.249,29.628,30.055,30.533,31.105,
-31.811,32.617,33.402,34.036,34.483,34.810,35.092,35.319,35.392,35.222,34.812,34.253,33.636,32.996,32.301,31.497,
-30.525,29.341,27.969,26.567,25.413,24.748,24.552,24.462,23.959,22.742,20.998,19.324,18.351,18.344,19.094,20.137,
-21.083,21.802,22.360,22.852,23.289,23.618,23.801,23.841,23.758,23.558,23.239,22.822,22.357,21.887,21.428,20.962,
-20.480,19.992,19.532,19.134,18.813,18.554,18.298,17.964,17.514,17.021,16.634,16.448,16.371,16.169,15.696,15.093,
-14.720,14.819,15.217,15.417,15.025,14.130,13.236,12.807,12.868,13.043,12.960,12.581,12.143,11.846,11.656,11.411,
-11.061,10.721,10.495,10.316,10.003,9.479,8.889,8.463,8.286,8.221,8.059,7.717,7.285,6.905,6.633,6.427,
-6.228,6.018,5.813,5.628,5.462,5.304,5.135,4.913,4.598,4.204,3.821,3.557,3.440,3.370,3.202,2.860,
-2.406,1.975,1.660,1.455,1.284,1.078,.824,.547,.274,.014,-.244,-.509,-.776,-1.019,-1.206,-1.330,
--1.432,-1.575,-1.803,-2.094,-2.378,-2.601,-2.772,-2.953,-3.196,-3.487,-3.770,-3.996,-4.160,-4.292,-4.413,-4.528,
--4.640,-4.765,-4.917,-5.094,-5.272,-5.436,-5.595,-5.777,-5.996,-6.238,-6.469,-6.660,-6.809,-6.929,-7.044,-7.171,
--7.312,-7.455,-7.587,-7.711,-7.848,-8.014,-8.202,-8.380,-8.529,-8.664,-8.816,-8.992,-9.163,-9.292,-9.376,-9.449,
--9.540,-9.633,-9.687,-9.689,-9.669,-9.672,-9.706,-9.747,-9.778,-9.819,-9.899,-10.014,-10.115,-10.162,-10.165,-10.171,
--10.210,-10.269,-10.316,-10.345,-10.383,-10.461,-10.577,-10.710,-10.849,-11.001,-11.171,-11.339,-11.476,-11.572,-11.641,-11.702,
--11.756,-11.787,-11.779,-11.741,-11.694,-11.655,-11.636,-11.638,-11.657,-11.682,-11.698,-11.701,-11.696,-11.693,-11.691,-11.681,
--11.657,-11.630,-11.618,-11.632,-11.668,-11.711,-11.742,-11.752,-11.739,-11.712,-11.675,-11.621,-11.536,-11.430,-11.356,-11.384,
--11.515,-11.651,-11.651,-11.476,-11.253,-11.183,-11.349,-11.635,-11.827,-11.809,-11.650,-11.499,-11.429,-11.405,-11.381,-11.388,
--11.496,-11.707,-11.919,-12.033,-12.056,-12.080,-12.169,-12.283,-12.336,-12.303,-12.246,-12.225,-12.225,-12.186,-12.090,-12.002,
--11.996,-12.069,-12.143,-12.151,-12.102,-12.058,-12.055,-12.070,-12.050,-11.970,-11.843,-11.695,-11.543,-11.396,-11.267,-11.166,
--11.081,-10.991,-10.885,-10.782,-10.709,-10.669,-10.642,-10.601,-10.537,-10.460,-10.379,-10.293,-10.208,-10.134,-10.082,-10.048,
--10.012,-9.961,-9.899,-9.845,-9.815,-9.804,-9.800,-9.791,-9.777,-9.763,-9.746,-9.710,-9.637,-9.520,-9.383,-9.263,
--9.183,-9.129,-9.058,-8.933,-8.759,-8.575,-8.416,-8.283,-8.152,-8.014,-7.894,-7.824,-7.800,-7.780,-7.715,-7.593,
--7.440,-7.291,-7.155,-7.025,-6.893,-6.768,-6.663,-6.573,-6.485,-6.388,-6.284,-6.187,-6.107,-6.042,-5.972,-5.866,
--5.695,-5.455,-5.183,-4.946,-4.787,-4.699,-4.627,-4.524,-4.384,-4.234,-4.092,-3.944,-3.770,-3.577,-3.399,-3.266,
--3.170,-3.091,-3.018,-2.968,-2.948,-2.938,-2.901,-2.830,-2.763,-2.746,-2.783,-2.827,-2.827,-2.775,-2.708,-2.663,
--2.644,-2.621,-2.564,-2.470,-2.354,-2.233,-2.114,-1.999,-1.884,-1.757,-1.609,-1.436,-1.249,-1.066,-.901,-.744,
--.575,-.376,-.146,.098,.338,.574,.819,1.089,1.390,1.712,2.041,2.368,2.692,3.012,3.325,3.638,
-3.963,4.309,4.663,4.994,5.282,5.540,5.803,6.086,6.373,6.643,6.902,7.189,7.528,7.900,8.262,8.595,
-8.914,9.233,9.545,9.839,10.145,10.510,10.931,11.323,11.579,11.682,11.704,11.688,11.530,11.044,10.192,9.260,
-8.782,9.242,10.786,13.143,15.781,18.139,19.809,20.648,20.815,20.714,20.811,21.406,22.494,23.821,25.058,25.975,
-26.492,26.655,26.568,26.336,26.012,25.572,24.946,24.099,23.085,22.031,21.058,20.242,19.621,19.216,19.010,18.914,
-18.797,18.581,18.310,18.103,18.027,18.016,17.938,17.731,17.467,17.287,17.263,17.347,17.417,17.384,17.251,17.091,
-16.985,16.967,17.010,17.052,17.046,16.992,16.934,16.907,16.909,16.909,16.875,16.803,16.703,16.573,16.410,16.227,
-16.055,15.919,15.815,15.725,15.639,15.545,15.383,15.044,14.433,13.565,12.595,11.725,11.084,10.667,10.385,10.140,
-9.862,9.498,8.999,8.346,7.571,6.746,5.934,5.165,4.443,3.773,3.150,2.539,1.883,1.148,.374,-.345,
--.935,-1.407,-1.832,-2.272,-2.710,-3.077,-3.334,-3.521,-3.728,-4.002,-4.310,-4.569,-4.739,-4.852,-4.969,-5.110,
--5.239,-5.320,-5.372,-5.457,-5.603,-5.771,-5.894,-5.959,-6.021,-6.140,-6.309,-6.460,-6.547,-6.600,-6.686,-6.833,
--6.995,-7.106,-7.148,-7.162,-7.183,-7.197,-7.161,-7.066,-6.954,-6.876,-6.842,-6.816,-6.768,-6.703,-6.648,-6.607,
--6.551,-6.446,-6.291,-6.109,-5.918,-5.701,-5.429,-5.098,-4.740,-4.397,-4.081,-3.764,-3.404,-2.993,-2.558,-2.141,
--1.761,-1.398,-1.022,-.620,-.200,.225,.655,1.098,1.546,1.973,2.347,2.661,2.939,3.229,3.575,4.006,
-4.520,5.075,5.604,6.054,6.429,6.796,7.228,7.743,8.283,8.771,9.177,9.535,9.900,10.291,10.686,11.055,
-11.400,11.744,12.103,12.474,12.842,13.198,13.538,13.861,14.163,14.449,14.733,15.025,15.318,15.599,15.862,16.113,
-16.357,16.585,16.786,16.964,17.146,17.355,17.588,17.815,18.014,18.203,18.424,18.695,18.986,19.239,19.429,19.592,
-19.794,20.060,20.337,20.530,20.579,20.513,20.412,20.338,20.291,20.242,20.174,20.110,20.079,20.078,20.084,20.076,
-20.053,20.018,19.955,19.852,19.719,19.594,19.509,19.455,19.401,19.330,19.252,19.180,19.111,19.033,18.954,18.891,
-18.845,18.794,18.721,18.648,18.609,18.592,18.531,18.382,18.206,18.132,18.227,18.403,18.478,18.345,18.064,17.799,
-17.670,17.674,17.739,17.798,17.824,17.797,17.707,17.568,17.425,17.299,17.156,16.939,16.657,16.390,16.217,16.127,
-16.044,15.943,15.895,15.989,16.208,16.422,16.514,16.499,16.493,16.584,16.755,16.789,16.972,17.059,17.095,17.164,
-17.297,17.452,17.579,17.667,17.732,17.788,17.856,17.979,18.201,18.514,18.854,19.153,19.408,19.669,19.966,20.268,
-20.525,20.735,20.951,21.220,21.528,21.834,22.127,22.428,22.741,23.010,23.171,23.229,23.259,23.328,23.420,23.476,
-23.487,23.527,23.679,23.931,24.179,24.337,24.418,24.510,24.662,24.835,24.957,25.017,25.075,25.190,25.353,25.510,
-25.626,25.719,25.826,25.945,26.044,26.103,26.135,26.164,26.185,26.177,26.147,26.153,26.256,26.453,26.666,26.813,
-26.894,26.987,27.161,27.386,27.551,27.567,27.475,27.435,27.624,28.123,28.871,29.699,30.390,30.737,30.631,30.139,
-29.521,29.099,29.052,29.292,29.541,29.557,29.311,28.961,28.676,28.500,28.386,28.309,28.323,28.492,28.794,29.125,
-29.393,29.585,29.735,29.846,29.866,29.754,29.544,29.325,29.173,29.095,29.058,29.042,29.052,29.085,29.109,29.096,
-29.052,29.017,29.019,29.049,29.091,29.163,29.317,29.573,29.867,30.083,30.149,30.106,30.074,30.152,30.339,30.551,
-30.712,30.811,30.878,30.905,30.826,30.568,30.137,29.633,29.176,28.812,28.501,28.196,27.916,27.745,27.747,27.897,
-28.108,28.300,28.458,28.608,28.770,28.947,29.143,29.376,29.651,29.926,30.134,30.241,30.285,30.334,30.424,30.538,
-30.663,30.833,31.102,31.481,31.916,32.360,32.837,33.418,34.117,34.834,35.424,35.822,36.086,36.296,36.452,36.490,
-36.388,36.232,36.137,36.131,36.145,36.129,36.130,36.224,36.391,36.518,36.550,36.598,36.835,37.263,37.653,37.772,
-37.635,37.498,37.554,37.706,37.691,37.415,37.090,36.981,37.068,37.041,36.668,36.089,35.668,35.570,35.550,35.217,
-34.476,33.636,33.074,32.851,32.701,32.354,31.801,31.219,30.725,30.271,29.778,29.279,28.868,28.539,28.151,27.587,
-26.906,26.288,25.852,25.555,25.287,25.023,24.834,24.765,24.750,24.679,24.522,24.349,24.229,24.156,24.085,24.013,
-23.994,24.055,24.143,24.174,24.126,24.060,24.045,24.085,24.127,24.132,24.101,24.045,23.945,23.775,23.542,23.293,
-23.061,22.829,22.564,22.270,21.995,21.770,21.572,21.345,21.065,20.759,20.468,20.191,19.899,19.576,19.243,18.936,
-18.660,18.387,18.092,17.773,17.448,17.132,16.826,16.524,16.225,15.929,15.644,15.380,15.140,14.910,14.655,14.353,
-14.025,13.724,13.487,13.299,13.114,12.910,12.707,12.534,12.377,12.201,11.996,11.807,11.684,11.617,11.540,11.400,
-11.214,11.042,10.909,10.781,10.597,10.338,10.022,9.665,9.259,8.788,8.254,7.667,7.013,6.269,5.459,4.683,
-4.062,3.642,3.348,3.046,2.650,2.170,1.680,1.239,.857,.504,.147,-.232,-.633,-1.044,-1.458,-1.884,
--2.340,-2.824,-3.293,-3.693,-4.017,-4.325,-4.703,-5.185,-5.724,-6.253,-6.743,-7.219,-7.698,-8.161,-8.578,-8.965,
--9.375,-9.847,-10.353,-10.836,-11.273,-11.702,-12.163,-12.649,-13.117,-13.546,-13.968,-14.426,-14.920,-15.402,-15.832,-16.230,
--16.647,-17.111,-17.602,-18.085,-18.551,-19.020,-19.511,-20.016,-20.516,-21.001,-21.473,-21.934,-22.382,-22.820,-23.266,-23.732,
--24.208,-24.665,-25.077,-25.446,-25.797,-26.155,-26.529,-26.912,-27.289,-27.644,-27.963,-28.255,-28.559,-28.919,-29.346,-29.800,
--30.220,-30.571,-30.876,-31.181,-31.515,-31.868,-32.214,-32.544,-32.863,-33.177,-33.476,-33.755,-34.020,-34.275,-34.513,-34.722,
--34.913,-35.125,-35.386,-35.666,-35.885,-35.993,-36.032,-36.114,-36.318,-36.629,-36.963,-37.269,-37.566,-37.874,-38.127,-38.193,
--38.012,-37.712,-37.553,-37.726,-38.196,-38.727,-39.080,-39.178,-39.127,-39.090,-39.159,-39.320,-39.495,-39.604,-39.600,-39.498,
--39.369,-39.296,-39.307,-39.339,-39.292,-39.126,-38.904,-38.730,-38.652,-38.627,-38.597,-38.572,-38.619,-38.773,-38.976,-39.111,
--39.106,-38.991,-38.854,-38.761,-38.717,-38.702,-38.709,-38.745,-38.794,-38.804,-38.720,-38.532,-38.274,-37.998,-37.734,-37.486,
--37.258,-37.057,-36.891,-36.745,-36.584,-36.377,-36.121,-35.845,-35.583,-35.347,-35.128,-34.911,-34.701,-34.504,-34.314,-34.094,
--33.809,-33.456,-33.088,-32.777,-32.563,-32.424,-32.286,-32.076,-31.764,-31.375,-30.972,-30.615,-30.327,-30.083,-29.836,-29.558,
--29.267,-28.999,-28.764,-28.526,-28.242,-27.913,-27.590,-27.321,-27.099,-26.871,-26.595,-26.287,-25.995,-25.734,-25.459,-25.099,
--24.616,-24.023,-23.363,-22.692,-22.077,-21.586,-21.229,-20.904,-20.421,-19.617,-18.464,-17.088,-15.653,-14.244,-12.853,-11.451,
--10.070,-8.803,-7.749,-6.953,-6.401,-6.027,-5.720,-5.348,-4.821,-4.149,-3.431,-2.774,-2.198,-1.629,-.991,-.284,
-.422,1.070,1.660,2.224,2.758,3.216,3.569,3.862,4.190,4.617,5.112,5.580,5.945,6.219,6.487,6.830,
-7.266,7.747,8.226,8.732,9.366,10.215,11.243,12.274,13.105,13.667,14.067,14.465,14.903,15.260,15.397,15.302,
-15.073,14.728,14.082,12.875,11.063,9.000,7.279,6.344,6.218,6.556,6.960,7.255,7.506,7.839,8.267,8.686,
-8.998,9.225,9.480,9.843,10.266,10.609,10.787,10.900,11.184,11.803,12.652,13.371,13.596,13.254,12.631,12.149,
-12.043,12.235,12.466,12.556,12.514,12.467,12.500,12.602,12.724,12.860,13.058,13.360,13.748,14.164,14.552,14.903,
-15.252,15.646,16.103,16.592,17.048,17.420,17.707,17.968,18.274,18.663,19.139,19.689,20.297,20.927,21.515,21.991,
-22.334,22.594,22.843,23.119,23.416,23.724,24.059,24.428,24.781,25.028,25.126,25.141,25.212,25.436,25.789,26.179,
-26.544,26.894,27.254,27.592,27.827,27.909,27.876,27.818,27.803,27.848,27.956,28.152,28.461,28.863,29.301,29.750,
-30.257,30.895,31.664,32.457,33.135,33.641,34.018,34.323,34.530,34.544,34.303,33.854,33.306,32.721,32.047,31.163,
-29.979,28.498,26.826,25.159,23.762,22.904,22.693,22.923,23.100,22.718,21.629,20.196,19.078,18.779,19.327,20.325,
-21.290,21.977,22.429,22.790,23.119,23.370,23.494,23.515,23.488,23.410,23.211,22.835,22.318,21.765,21.255,20.788,
-20.323,19.842,19.369,18.936,18.549,18.200,17.887,17.597,17.277,16.873,16.416,16.045,15.890,15.897,15.816,15.439,
-14.857,14.448,14.517,14.939,15.191,14.812,13.849,12.834,12.300,12.321,12.516,12.474,12.131,11.736,11.511,11.416,
-11.259,10.948,10.582,10.287,10.029,9.656,9.105,8.515,8.108,7.959,7.920,7.773,7.435,7.006,6.639,6.398,
-6.233,6.066,5.864,5.645,5.443,5.278,5.154,5.046,4.899,4.652,4.294,3.897,3.574,3.386,3.286,3.158,
-2.911,2.545,2.134,1.758,1.456,1.214,.996,.768,.520,.259,.004,-.237,-.477,-.731,-.988,-1.213,
--1.382,-1.519,-1.691,-1.941,-2.245,-2.522,-2.718,-2.855,-3.014,-3.256,-3.568,-3.888,-4.161,-4.376,-4.553,-4.708,
--4.845,-4.970,-5.101,-5.248,-5.404,-5.549,-5.677,-5.806,-5.955,-6.125,-6.299,-6.462,-6.617,-6.780,-6.959,-7.146,
--7.326,-7.485,-7.614,-7.714,-7.809,-7.931,-8.104,-8.312,-8.511,-8.671,-8.805,-8.949,-9.120,-9.288,-9.412,-9.489,
--9.557,-9.649,-9.753,-9.824,-9.841,-9.829,-9.833,-9.863,-9.896,-9.916,-9.944,-10.018,-10.137,-10.256,-10.328,-10.356,
--10.381,-10.435,-10.498,-10.531,-10.523,-10.509,-10.535,-10.620,-10.746,-10.890,-11.042,-11.202,-11.358,-11.490,-11.587,-11.655,
--11.712,-11.770,-11.831,-11.886,-11.923,-11.929,-11.895,-11.832,-11.767,-11.731,-11.732,-11.753,-11.772,-11.776,-11.768,-11.753,
--11.731,-11.707,-11.690,-11.694,-11.722,-11.765,-11.807,-11.834,-11.838,-11.816,-11.774,-11.722,-11.661,-11.581,-11.480,-11.390,
--11.366,-11.436,-11.562,-11.658,-11.669,-11.626,-11.608,-11.655,-11.722,-11.742,-11.706,-11.669,-11.673,-11.681,-11.632,-11.541,
--11.514,-11.649,-11.909,-12.142,-12.223,-12.173,-12.120,-12.159,-12.262,-12.340,-12.358,-12.359,-12.387,-12.414,-12.369,-12.239,
--12.100,-12.049,-12.104,-12.193,-12.230,-12.192,-12.118,-12.053,-12.011,-11.979,-11.943,-11.892,-11.812,-11.697,-11.566,-11.459,
--11.394,-11.341,-11.244,-11.078,-10.880,-10.718,-10.631,-10.603,-10.582,-10.532,-10.448,-10.345,-10.240,-10.147,-10.080,-10.043,
--10.024,-9.996,-9.947,-9.886,-9.839,-9.820,-9.820,-9.821,-9.814,-9.806,-9.806,-9.806,-9.785,-9.719,-9.607,-9.470,
--9.342,-9.240,-9.160,-9.078,-8.976,-8.855,-8.731,-8.615,-8.504,-8.390,-8.277,-8.182,-8.116,-8.063,-7.985,-7.850,
--7.658,-7.440,-7.233,-7.060,-6.920,-6.798,-6.678,-6.552,-6.425,-6.312,-6.221,-6.141,-6.047,-5.933,-5.816,-5.722,
--5.643,-5.527,-5.327,-5.056,-4.791,-4.615,-4.536,-4.490,-4.405,-4.263,-4.102,-3.954,-3.811,-3.647,-3.459,-3.278,
--3.135,-3.033,-2.955,-2.898,-2.877,-2.890,-2.901,-2.868,-2.790,-2.718,-2.702,-2.734,-2.758,-2.725,-2.647,-2.577,
--2.550,-2.550,-2.533,-2.477,-2.393,-2.303,-2.213,-2.118,-2.016,-1.910,-1.789,-1.628,-1.410,-1.157,-.918,-.733,
--.590,-.438,-.237,.013,.275,.517,.734,.948,1.181,1.441,1.728,2.038,2.365,2.697,3.014,3.313,
-3.609,3.922,4.254,4.585,4.892,5.179,5.470,5.780,6.088,6.364,6.607,6.858,7.161,7.512,7.864,8.178,
-8.460,8.746,9.052,9.361,9.668,10.007,10.411,10.843,11.196,11.385,11.439,11.450,11.430,11.231,10.679,9.817,
-9.025,8.861,9.726,11.621,14.153,16.741,18.847,20.154,20.642,20.600,20.503,20.787,21.620,22.845,24.134,25.200,
-25.913,26.266,26.291,26.044,25.606,25.076,24.503,23.865,23.119,22.274,21.401,20.578,19.838,19.204,18.721,18.435,
-18.326,18.274,18.151,17.937,17.734,17.644,17.653,17.634,17.492,17.269,17.099,17.075,17.151,17.189,17.092,16.879,
-16.660,16.538,16.544,16.632,16.732,16.797,16.825,16.840,16.869,16.914,16.952,16.953,16.895,16.769,16.577,16.331,
-16.055,15.780,15.534,15.334,15.186,15.092,15.030,14.931,14.680,14.168,13.383,12.437,11.521,10.797,10.318,10.030,
-9.825,9.597,9.252,8.720,7.967,7.040,6.057,5.161,4.436,3.864,3.346,2.776,2.108,1.366,.618,-.068,
--.660,-1.164,-1.610,-2.028,-2.429,-2.791,-3.086,-3.307,-3.491,-3.695,-3.948,-4.221,-4.453,-4.613,-4.729,-4.854,
--5.006,-5.151,-5.250,-5.313,-5.391,-5.516,-5.665,-5.785,-5.860,-5.936,-6.066,-6.244,-6.411,-6.523,-6.598,-6.693,
--6.837,-6.993,-7.107,-7.158,-7.173,-7.178,-7.167,-7.116,-7.031,-6.947,-6.895,-6.866,-6.825,-6.753,-6.666,-6.593,
--6.538,-6.474,-6.377,-6.245,-6.089,-5.905,-5.673,-5.386,-5.062,-4.736,-4.428,-4.119,-3.771,-3.366,-2.922,-2.475,
--2.052,-1.653,-1.271,-.901,-.549,-.213,.134,.530,1.000,1.523,2.042,2.497,2.864,3.166,3.463,3.809,
-4.234,4.730,5.250,5.735,6.150,6.510,6.866,7.271,7.724,8.182,8.595,8.958,9.317,9.717,10.162,10.613,
-11.031,11.409,11.772,12.142,12.518,12.883,13.225,13.547,13.863,14.184,14.514,14.846,15.170,15.472,15.745,15.991,
-16.214,16.413,16.586,16.740,16.903,17.109,17.366,17.645,17.901,18.117,18.327,18.579,18.883,19.190,19.434,19.598,
-19.739,19.934,20.204,20.487,20.683,20.747,20.709,20.642,20.588,20.540,20.477,20.409,20.368,20.372,20.399,20.414,
-20.405,20.380,20.335,20.243,20.099,19.953,19.891,19.950,20.064,20.103,19.983,19.738,19.486,19.327,19.274,19.273,
-19.258,19.206,19.130,19.062,19.024,19.009,18.979,18.894,18.754,18.622,18.572,18.617,18.681,18.658,18.507,18.281,
-18.082,17.980,17.985,18.064,18.158,18.192,18.105,17.906,17.685,17.531,17.433,17.277,16.975,16.594,16.321,16.276,
-16.370,16.388,16.215,15.959,15.834,15.932,16.147,16.308,16.367,16.421,16.569,16.789,16.734,16.916,16.983,16.992,
-17.054,17.209,17.397,17.535,17.604,17.646,17.704,17.799,17.949,18.176,18.482,18.826,19.152,19.437,19.708,20.001,
-20.307,20.586,20.819,21.034,21.274,21.552,21.847,22.135,22.412,22.670,22.885,23.030,23.115,23.184,23.270,23.349,
-23.378,23.362,23.374,23.497,23.731,23.995,24.198,24.324,24.425,24.551,24.696,24.824,24.919,25.007,25.126,25.286,
-25.477,25.684,25.895,26.079,26.193,26.216,26.187,26.180,26.233,26.302,26.311,26.242,26.182,26.248,26.468,26.739,
-26.921,26.973,26.987,27.081,27.263,27.413,27.405,27.256,27.143,27.266,27.693,28.307,28.893,29.256,29.296,29.038,
-28.631,28.319,28.335,28.750,29.374,29.851,29.895,29.485,28.865,28.341,28.086,28.092,28.273,28.567,28.945,29.360,
-29.730,29.992,30.144,30.229,30.270,30.250,30.147,29.976,29.792,29.639,29.529,29.460,29.443,29.485,29.567,29.628,
-29.619,29.537,29.427,29.335,29.282,29.283,29.372,29.582,29.889,30.188,30.354,30.341,30.229,30.158,30.221,30.398,
-30.604,30.772,30.895,30.985,31.018,30.924,30.656,30.248,29.807,29.427,29.125,28.851,28.573,28.328,28.201,28.237,
-28.399,28.599,28.774,28.927,29.095,29.298,29.529,29.778,30.051,30.345,30.625,30.833,30.947,31.006,31.079,31.197,
-31.342,31.491,31.663,31.907,32.244,32.641,33.063,33.526,34.085,34.749,35.427,35.988,36.366,36.601,36.769,36.888,
-36.922,36.858,36.760,36.709,36.725,36.761,36.788,36.849,36.995,37.196,37.359,37.459,37.605,37.916,38.346,38.669,
-38.699,38.503,38.343,38.387,38.520,38.487,38.207,37.873,37.705,37.654,37.440,36.903,36.245,35.846,35.833,35.902,
-35.616,34.859,33.952,33.308,33.029,32.865,32.528,31.973,31.368,30.859,30.433,30.012,29.582,29.180,28.785,28.295,
-27.648,26.934,26.335,25.954,25.731,25.541,25.337,25.168,25.080,25.028,24.928,24.757,24.574,24.443,24.363,24.292,
-24.224,24.197,24.236,24.300,24.321,24.279,24.217,24.192,24.212,24.241,24.245,24.218,24.153,24.032,23.849,23.633,
-23.430,23.252,23.061,22.816,22.531,22.266,22.064,21.902,21.717,21.477,21.205,20.936,20.675,20.393,20.078,19.746,
-19.429,19.129,18.824,18.500,18.168,17.850,17.551,17.252,16.937,16.611,16.295,16.009,15.758,15.528,15.293,15.029,
-14.732,14.427,14.153,13.924,13.723,13.518,13.300,13.088,12.896,12.716,12.532,12.359,12.232,12.159,12.092,11.970,
-11.786,11.607,11.502,11.459,11.393,11.226,10.956,10.635,10.293,9.896,9.387,8.746,8.000,7.195,6.376,5.608,
-4.976,4.535,4.246,3.984,3.625,3.151,2.647,2.207,1.849,1.517,1.154,.750,.335,-.074,-.484,-.913,
--1.362,-1.814,-2.246,-2.643,-3.004,-3.349,-3.713,-4.130,-4.607,-5.119,-5.634,-6.138,-6.632,-7.111,-7.557,-7.966,
--8.367,-8.804,-9.288,-9.781,-10.240,-10.670,-11.115,-11.603,-12.104,-12.556,-12.942,-13.315,-13.744,-14.243,-14.761,-15.236,
--15.660,-16.069,-16.500,-16.955,-17.422,-17.898,-18.394,-18.908,-19.420,-19.911,-20.387,-20.867,-21.358,-21.842,-22.302,-22.745,
--23.199,-23.674,-24.152,-24.600,-24.999,-25.358,-25.703,-26.050,-26.406,-26.772,-27.142,-27.505,-27.853,-28.193,-28.544,-28.922,
--29.318,-29.702,-30.052,-30.374,-30.692,-31.022,-31.359,-31.695,-32.032,-32.379,-32.733,-33.072,-33.374,-33.638,-33.879,-34.103,
--34.300,-34.458,-34.586,-34.707,-34.836,-34.968,-35.105,-35.277,-35.520,-35.833,-36.157,-36.425,-36.627,-36.818,-37.043,-37.266,
--37.390,-37.376,-37.314,-37.375,-37.656,-38.083,-38.460,-38.633,-38.600,-38.488,-38.437,-38.510,-38.679,-38.871,-39.015,-39.060,
--39.004,-38.900,-38.827,-38.830,-38.876,-38.885,-38.802,-38.653,-38.504,-38.399,-38.331,-38.284,-38.283,-38.379,-38.578,-38.804,
--38.944,-38.936,-38.810,-38.656,-38.541,-38.480,-38.452,-38.433,-38.397,-38.316,-38.160,-37.933,-37.678,-37.448,-37.270,-37.119,
--36.958,-36.774,-36.595,-36.449,-36.328,-36.189,-35.989,-35.728,-35.448,-35.197,-34.989,-34.798,-34.595,-34.378,-34.166,-33.970,
--33.766,-33.512,-33.194,-32.855,-32.562,-32.356,-32.213,-32.055,-31.809,-31.458,-31.049,-30.664,-30.363,-30.147,-29.958,-29.726,
--29.425,-29.088,-28.776,-28.518,-28.287,-28.035,-27.743,-27.442,-27.172,-26.931,-26.680,-26.381,-26.038,-25.687,-25.350,-25.016,
--24.655,-24.251,-23.799,-23.297,-22.744,-22.174,-21.653,-21.232,-20.885,-20.497,-19.943,-19.174,-18.233,-17.185,-16.054,-14.818,
--13.475,-12.085,-10.752,-9.567,-8.585,-7.819,-7.248,-6.793,-6.333,-5.761,-5.056,-4.298,-3.588,-2.957,-2.340,-1.653,
--.877,-.065,.711,1.423,2.071,2.645,3.119,3.485,3.788,4.115,4.525,5.009,5.494,5.901,6.199,6.432,
-6.684,7.034,7.511,8.103,8.790,9.585,10.501,11.487,12.393,13.038,13.353,13.446,13.516,13.686,13.914,14.076,
-14.101,13.991,13.703,13.053,11.825,10.023,8.022,6.403,5.584,5.553,5.934,6.319,6.553,6.747,7.066,7.530,
-8.001,8.341,8.557,8.777,9.118,9.555,9.943,10.171,10.294,10.509,10.977,11.639,12.216,12.413,12.164,11.694,
-11.343,11.307,11.521,11.765,11.876,11.856,11.817,11.851,11.959,12.090,12.221,12.382,12.625,12.959,13.338,13.697,
-14.008,14.311,14.681,15.154,15.687,16.177,16.554,16.848,17.165,17.596,18.137,18.711,19.252,19.758,20.257,20.747,
-21.176,21.505,21.760,22.016,22.331,22.707,23.125,23.578,24.059,24.518,24.863,25.029,25.059,25.084,25.212,25.447,
-25.707,25.927,26.123,26.353,26.641,26.944,27.195,27.360,27.442,27.458,27.436,27.435,27.541,27.805,28.192,28.611,
-29.011,29.445,30.018,30.762,31.581,32.311,32.853,33.219,33.466,33.599,33.562,33.319,32.910,32.416,31.856,31.132,
-30.085,28.613,26.763,24.740,22.866,21.489,20.853,20.947,21.427,21.749,21.486,20.632,19.643,19.125,19.404,20.322,
-21.401,22.223,22.680,22.919,23.105,23.258,23.307,23.235,23.125,23.055,22.987,22.790,22.378,21.805,21.209,20.684,
-20.216,19.748,19.271,18.824,18.427,18.046,17.644,17.240,16.886,16.580,16.248,15.847,15.466,15.251,15.219,15.173,
-14.884,14.370,13.961,13.995,14.432,14.808,14.625,13.812,12.791,12.071,11.817,11.786,11.671,11.421,11.217,11.188,
-11.225,11.111,10.768,10.332,9.967,9.666,9.283,8.741,8.161,7.760,7.618,7.596,7.469,7.139,6.701,6.324,
-6.096,5.977,5.870,5.711,5.502,5.283,5.099,4.975,4.897,4.813,4.651,4.376,4.021,3.672,3.401,3.216,
-3.066,2.877,2.606,2.255,1.868,1.505,1.207,.974,.767,.543,.291,.034,-.209,-.448,-.710,-.993,
--1.255,-1.455,-1.609,-1.787,-2.045,-2.359,-2.647,-2.843,-2.969,-3.102,-3.304,-3.573,-3.862,-4.138,-4.398,-4.649,
--4.883,-5.082,-5.247,-5.397,-5.550,-5.699,-5.828,-5.938,-6.045,-6.165,-6.290,-6.405,-6.507,-6.624,-6.782,-6.985,
--7.208,-7.424,-7.608,-7.752,-7.857,-7.947,-8.061,-8.230,-8.445,-8.659,-8.832,-8.970,-9.112,-9.280,-9.449,-9.572,
--9.640,-9.693,-9.775,-9.887,-9.984,-10.030,-10.037,-10.041,-10.061,-10.082,-10.096,-10.121,-10.189,-10.301,-10.415,-10.487,
--10.521,-10.558,-10.627,-10.709,-10.757,-10.752,-10.724,-10.721,-10.773,-10.870,-10.988,-11.112,-11.241,-11.373,-11.498,-11.604,
--11.684,-11.744,-11.795,-11.850,-11.919,-11.990,-12.034,-12.021,-11.947,-11.845,-11.762,-11.726,-11.728,-11.742,-11.752,-11.758,
--11.766,-11.777,-11.786,-11.793,-11.805,-11.828,-11.865,-11.906,-11.939,-11.945,-11.912,-11.846,-11.768,-11.698,-11.637,-11.573,
--11.503,-11.454,-11.466,-11.550,-11.676,-11.791,-11.857,-11.860,-11.803,-11.706,-11.620,-11.623,-11.756,-11.965,-12.120,-12.121,
--12.008,-11.935,-12.021,-12.233,-12.411,-12.427,-12.305,-12.179,-12.155,-12.230,-12.334,-12.425,-12.511,-12.592,-12.622,-12.546,
--12.383,-12.226,-12.168,-12.217,-12.300,-12.339,-12.316,-12.256,-12.187,-12.114,-12.041,-11.979,-11.928,-11.867,-11.769,-11.640,
--11.524,-11.457,-11.419,-11.349,-11.205,-11.012,-10.842,-10.742,-10.702,-10.671,-10.607,-10.501,-10.373,-10.244,-10.132,-10.050,
--10.003,-9.978,-9.952,-9.913,-9.866,-9.832,-9.822,-9.830,-9.839,-9.845,-9.852,-9.863,-9.864,-9.836,-9.766,-9.659,
--9.537,-9.417,-9.307,-9.205,-9.109,-9.017,-8.933,-8.854,-8.775,-8.692,-8.604,-8.517,-8.436,-8.355,-8.258,-8.127,
--7.954,-7.750,-7.536,-7.338,-7.178,-7.059,-6.962,-6.854,-6.712,-6.545,-6.392,-6.277,-6.181,-6.054,-5.872,-5.670,
--5.512,-5.420,-5.338,-5.187,-4.946,-4.685,-4.500,-4.420,-4.387,-4.323,-4.200,-4.056,-3.931,-3.823,-3.702,-3.549,
--3.380,-3.221,-3.081,-2.964,-2.882,-2.853,-2.871,-2.887,-2.856,-2.780,-2.711,-2.691,-2.705,-2.697,-2.636,-2.549,
--2.487,-2.466,-2.454,-2.410,-2.335,-2.259,-2.201,-2.145,-2.069,-1.976,-1.885,-1.790,-1.651,-1.436,-1.164,-.906,
--.716,-.580,-.433,-.224,.039,.306,.541,.754,.974,1.219,1.483,1.761,2.056,2.367,2.682,2.981,
-3.265,3.557,3.876,4.210,4.525,4.807,5.080,5.383,5.713,6.027,6.288,6.516,6.772,7.095,7.450,7.770,
-8.029,8.270,8.549,8.874,9.205,9.527,9.873,10.271,10.672,10.968,11.103,11.137,11.164,11.156,10.928,10.327,
-9.475,8.833,8.965,10.197,12.411,15.122,17.707,19.638,20.647,20.815,20.550,20.419,20.842,21.870,23.200,24.426,
-25.297,25.778,25.925,25.773,25.345,24.726,24.067,23.472,22.925,22.331,21.635,20.872,20.113,19.399,18.749,18.218,
-17.882,17.753,17.721,17.632,17.432,17.212,17.105,17.130,17.173,17.118,16.973,16.855,16.849,16.913,16.920,16.790,
-16.561,16.344,16.223,16.207,16.258,16.338,16.428,16.517,16.598,16.671,16.746,16.824,16.878,16.869,16.769,16.586,
-16.351,16.095,15.834,15.568,15.302,15.047,14.817,14.608,14.382,14.074,13.613,12.978,12.219,11.445,10.764,10.230,
-9.823,9.480,9.123,8.675,8.055,7.213,6.182,5.105,4.181,3.537,3.133,2.787,2.316,1.664,.921,.222,
--.365,-.864,-1.333,-1.789,-2.203,-2.546,-2.824,-3.061,-3.283,-3.497,-3.707,-3.920,-4.131,-4.323,-4.483,-4.623,
--4.772,-4.941,-5.108,-5.235,-5.317,-5.389,-5.487,-5.611,-5.728,-5.824,-5.919,-6.049,-6.215,-6.381,-6.512,-6.617,
--6.732,-6.872,-7.015,-7.120,-7.171,-7.181,-7.169,-7.137,-7.081,-7.012,-6.952,-6.909,-6.872,-6.819,-6.745,-6.663,
--6.578,-6.482,-6.366,-6.240,-6.119,-5.997,-5.836,-5.604,-5.311,-5.007,-4.735,-4.483,-4.195,-3.824,-3.376,-2.901,
--2.449,-2.030,-1.630,-1.233,-.850,-.498,-.176,.147,.515,.954,1.451,1.965,2.450,2.883,3.279,3.675,
-4.107,4.582,5.076,5.542,5.950,6.298,6.622,6.965,7.349,7.763,8.172,8.557,8.929,9.323,9.758,10.221,
-10.675,11.091,11.468,11.824,12.177,12.526,12.859,13.171,13.473,13.789,14.133,14.501,14.868,15.207,15.504,15.760,
-15.990,16.203,16.398,16.575,16.749,16.954,17.218,17.536,17.863,18.150,18.384,18.598,18.836,19.109,19.375,19.587,
-19.741,19.889,20.094,20.361,20.631,20.826,20.913,20.919,20.890,20.848,20.789,20.716,20.657,20.645,20.677,20.718,
-20.738,20.737,20.721,20.669,20.546,20.369,20.247,20.311,20.583,20.903,21.023,20.799,20.312,19.807,19.503,19.448,
-19.527,19.593,19.578,19.516,19.466,19.451,19.438,19.392,19.314,19.247,19.230,19.254,19.254,19.167,18.988,18.781,
-18.621,18.533,18.491,18.465,18.447,18.429,18.367,18.216,18.007,17.844,17.805,17.820,17.713,17.390,16.987,16.779,
-16.902,17.177,17.256,16.948,16.407,15.977,15.868,16.009,16.183,16.276,16.350,16.508,16.734,16.561,16.757,16.866,
-16.928,17.038,17.218,17.394,17.492,17.522,17.559,17.660,17.816,18.001,18.222,18.513,18.869,19.236,19.556,19.822,
-20.074,20.345,20.624,20.879,21.101,21.312,21.536,21.773,22.006,22.228,22.439,22.638,22.811,22.948,23.052,23.130,
-23.179,23.191,23.182,23.202,23.306,23.506,23.754,23.985,24.165,24.309,24.447,24.591,24.732,24.860,24.982,25.122,
-25.301,25.532,25.806,26.084,26.298,26.383,26.331,26.211,26.128,26.141,26.220,26.283,26.290,26.295,26.388,26.596,
-26.843,27.014,27.071,27.086,27.156,27.289,27.385,27.347,27.197,27.087,27.163,27.437,27.773,28.002,28.044,27.936,
-27.792,27.742,27.902,28.340,29.003,29.674,30.053,29.939,29.384,28.672,28.137,27.961,28.116,28.469,28.904,29.356,
-29.783,30.126,30.340,30.434,30.463,30.476,30.482,30.458,30.382,30.262,30.123,29.999,29.926,29.934,30.019,30.132,
-30.198,30.166,30.043,29.875,29.714,29.592,29.544,29.608,29.807,30.097,30.369,30.515,30.512,30.432,30.381,30.421,
-30.540,30.698,30.872,31.055,31.216,31.284,31.187,30.913,30.529,30.135,29.790,29.488,29.196,28.915,28.701,28.622,
-28.694,28.870,29.076,29.271,29.458,29.658,29.880,30.120,30.379,30.669,30.990,31.302,31.547,31.698,31.787,31.879,
-32.013,32.180,32.356,32.540,32.765,33.057,33.412,33.815,34.273,34.806,35.402,35.985,36.463,36.791,37.003,37.156,
-37.273,37.340,37.351,37.341,37.350,37.381,37.416,37.466,37.581,37.787,38.033,38.237,38.391,38.586,38.897,39.246,
-39.434,39.347,39.108,38.971,39.047,39.181,39.133,38.859,38.557,38.404,38.297,37.936,37.191,36.320,35.760,35.682,
-35.799,35.646,35.038,34.217,33.563,33.213,32.987,32.641,32.128,31.586,31.139,30.767,30.376,29.926,29.445,28.946,
-28.390,27.754,27.115,26.597,26.262,26.051,25.863,25.662,25.488,25.371,25.274,25.132,24.939,24.753,24.628,24.559,
-24.499,24.434,24.392,24.400,24.434,24.445,24.409,24.353,24.316,24.309,24.315,24.315,24.293,24.231,24.111,23.937,
-23.752,23.599,23.474,23.320,23.097,22.825,22.577,22.397,22.259,22.099,21.883,21.631,21.378,21.129,20.863,20.566,
-20.252,19.938,19.618,19.277,18.916,18.565,18.251,17.965,17.672,17.349,17.007,16.681,16.397,16.149,15.911,15.657,
-15.381,15.092,14.810,14.549,14.308,14.077,13.849,13.630,13.430,13.248,13.071,12.902,12.764,12.677,12.615,12.518,
-12.354,12.169,12.059,12.070,12.135,12.124,11.955,11.658,11.312,10.943,10.492,9.883,9.110,8.245,7.385,6.603,
-5.950,5.461,5.131,4.877,4.574,4.143,3.626,3.145,2.783,2.506,2.212,1.832,1.387,.941,.519,.096,
--.356,-.820,-1.250,-1.622,-1.960,-2.311,-2.702,-3.129,-3.576,-4.037,-4.520,-5.027,-5.548,-6.058,-6.531,-6.962,
--7.374,-7.803,-8.269,-8.753,-9.214,-9.634,-10.046,-10.507,-11.030,-11.559,-12.017,-12.380,-12.711,-13.098,-13.578,-14.112,
--14.631,-15.095,-15.514,-15.922,-16.343,-16.793,-17.281,-17.803,-18.334,-18.840,-19.307,-19.758,-20.230,-20.731,-21.234,-21.706,
--22.147,-22.587,-23.051,-23.531,-23.995,-24.419,-24.802,-25.157,-25.495,-25.831,-26.178,-26.552,-26.949,-27.351,-27.736,-28.100,
--28.457,-28.816,-29.177,-29.531,-29.879,-30.227,-30.573,-30.907,-31.220,-31.526,-31.848,-32.189,-32.525,-32.819,-33.062,-33.284,
--33.520,-33.772,-34.005,-34.180,-34.291,-34.374,-34.477,-34.636,-34.864,-35.143,-35.432,-35.677,-35.848,-35.958,-36.056,-36.177,
--36.313,-36.437,-36.557,-36.728,-37.005,-37.357,-37.672,-37.828,-37.804,-37.692,-37.625,-37.671,-37.808,-37.974,-38.126,-38.248,
--38.332,-38.365,-38.348,-38.314,-38.305,-38.335,-38.372,-38.377,-38.328,-38.233,-38.109,-37.976,-37.865,-37.826,-37.898,-38.064,
--38.245,-38.344,-38.310,-38.170,-37.996,-37.855,-37.780,-37.764,-37.768,-37.730,-37.595,-37.348,-37.040,-36.764,-36.594,-36.527,
--36.494,-36.415,-36.269,-36.094,-35.941,-35.824,-35.706,-35.541,-35.315,-35.064,-34.837,-34.655,-34.496,-34.319,-34.105,-33.867,
--33.634,-33.415,-33.195,-32.956,-32.703,-32.464,-32.265,-32.094,-31.901,-31.633,-31.278,-30.882,-30.519,-30.243,-30.050,-29.877,
--29.655,-29.357,-29.019,-28.700,-28.429,-28.185,-27.929,-27.646,-27.359,-27.092,-26.840,-26.571,-26.259,-25.910,-25.547,-25.183,
--24.812,-24.430,-24.045,-23.658,-23.249,-22.786,-22.272,-21.754,-21.283,-20.853,-20.397,-19.846,-19.191,-18.481,-17.749,-16.973,
--16.094,-15.087,-13.992,-12.881,-11.804,-10.786,-9.847,-9.006,-8.258,-7.542,-6.785,-5.961,-5.126,-4.362,-3.692,-3.051,
--2.347,-1.534,-.641,.262,1.117,1.880,2.519,3.008,3.361,3.647,3.962,4.371,4.870,5.387,5.826,6.125,
-6.306,6.471,6.760,7.270,8.000,8.863,9.756,10.604,11.348,11.911,12.212,12.246,12.137,12.071,12.162,12.369,
-12.563,12.654,12.623,12.426,11.893,10.815,9.170,7.283,5.706,4.872,4.815,5.199,5.622,5.900,6.117,6.434,
-6.880,7.331,7.653,7.843,8.033,8.350,8.789,9.221,9.514,9.665,9.806,10.073,10.467,10.833,10.988,10.886,
-10.668,10.547,10.639,10.883,11.113,11.204,11.163,11.096,11.109,11.233,11.426,11.630,11.823,12.024,12.259,12.527,
-12.803,13.078,13.386,13.782,14.281,14.809,15.250,15.554,15.803,16.166,16.756,17.523,18.302,18.943,19.421,19.804,
-20.156,20.469,20.712,20.902,21.113,21.420,21.842,22.349,22.903,23.476,24.020,24.468,24.774,24.959,25.106,25.279,
-25.462,25.586,25.614,25.597,25.630,25.778,26.033,26.336,26.622,26.839,26.956,26.981,26.979,27.048,27.253,27.564,
-27.900,28.220,28.590,29.123,29.856,30.682,31.419,31.944,32.262,32.448,32.546,32.525,32.337,31.978,31.493,30.898,
-30.126,29.045,27.547,25.656,23.576,21.660,20.294,19.716,19.865,20.361,20.693,20.536,19.978,19.457,19.447,20.099,
-21.152,22.154,22.798,23.079,23.181,23.245,23.264,23.168,22.972,22.780,22.669,22.577,22.352,21.909,21.309,20.695,
-20.150,19.653,19.157,18.675,18.258,17.904,17.537,17.092,16.611,16.204,15.913,15.650,15.312,14.922,14.629,14.513,
-14.442,14.179,13.677,13.213,13.161,13.607,14.193,14.391,13.946,13.058,12.145,11.476,11.040,10.728,10.535,10.544,
-10.734,10.901,10.807,10.414,9.914,9.515,9.236,8.922,8.455,7.916,7.502,7.322,7.279,7.171,6.879,6.461,
-6.076,5.830,5.712,5.633,5.513,5.333,5.130,4.955,4.838,4.771,4.709,4.596,4.398,4.123,3.810,3.504,
-3.236,3.012,2.807,2.578,2.285,1.932,1.565,1.245,.995,.782,.554,.295,.031,-.214,-.456,-.730,
--1.037,-1.325,-1.542,-1.700,-1.874,-2.125,-2.437,-2.729,-2.939,-3.080,-3.215,-3.391,-3.604,-3.831,-4.070,-4.342,
--4.649,-4.958,-5.226,-5.441,-5.626,-5.804,-5.970,-6.107,-6.212,-6.304,-6.401,-6.497,-6.580,-6.652,-6.740,-6.871,
--7.045,-7.247,-7.459,-7.669,-7.865,-8.031,-8.167,-8.302,-8.469,-8.671,-8.870,-9.027,-9.144,-9.268,-9.428,-9.603,
--9.740,-9.817,-9.868,-9.946,-10.064,-10.180,-10.251,-10.270,-10.270,-10.277,-10.292,-10.308,-10.334,-10.392,-10.481,-10.570,
--10.629,-10.659,-10.696,-10.765,-10.852,-10.915,-10.932,-10.920,-10.919,-10.954,-11.022,-11.108,-11.200,-11.296,-11.400,-11.506,
--11.605,-11.686,-11.741,-11.774,-11.803,-11.853,-11.927,-12.000,-12.029,-11.993,-11.912,-11.830,-11.780,-11.760,-11.753,-11.748,
--11.755,-11.786,-11.835,-11.881,-11.906,-11.910,-11.910,-11.928,-11.969,-12.016,-12.039,-12.013,-11.942,-11.855,-11.788,-11.753,
--11.735,-11.713,-11.687,-11.684,-11.726,-11.810,-11.899,-11.946,-11.915,-11.802,-11.652,-11.553,-11.600,-11.818,-12.118,-12.345,
--12.396,-12.311,-12.237,-12.289,-12.446,-12.576,-12.573,-12.449,-12.308,-12.243,-12.272,-12.365,-12.492,-12.632,-12.743,-12.763,
--12.665,-12.501,-12.370,-12.337,-12.378,-12.420,-12.421,-12.392,-12.361,-12.324,-12.256,-12.153,-12.049,-11.975,-11.915,-11.824,
--11.684,-11.531,-11.422,-11.368,-11.323,-11.240,-11.115,-10.989,-10.898,-10.838,-10.773,-10.677,-10.551,-10.411,-10.272,-10.145,
--10.040,-9.968,-9.930,-9.909,-9.889,-9.861,-9.836,-9.823,-9.825,-9.839,-9.860,-9.884,-9.901,-9.895,-9.854,-9.782,
--9.695,-9.608,-9.523,-9.432,-9.328,-9.218,-9.113,-9.021,-8.940,-8.859,-8.776,-8.693,-8.613,-8.528,-8.428,-8.304,
--8.158,-8.005,-7.852,-7.703,-7.563,-7.442,-7.350,-7.277,-7.190,-7.057,-6.881,-6.703,-6.556,-6.424,-6.254,-6.015,
--5.744,-5.523,-5.393,-5.311,-5.188,-4.979,-4.729,-4.526,-4.412,-4.348,-4.268,-4.146,-4.012,-3.903,-3.820,-3.731,
--3.611,-3.463,-3.301,-3.140,-2.994,-2.887,-2.839,-2.837,-2.834,-2.790,-2.712,-2.647,-2.624,-2.622,-2.594,-2.525,
--2.446,-2.395,-2.365,-2.313,-2.221,-2.119,-2.052,-2.026,-1.997,-1.928,-1.832,-1.753,-1.699,-1.622,-1.467,-1.239,
--1.002,-.814,-.666,-.501,-.282,-.029,.213,.430,.651,.908,1.198,1.491,1.771,2.049,2.341,2.638,
-2.920,3.189,3.472,3.791,4.126,4.436,4.708,4.977,5.281,5.610,5.909,6.145,6.354,6.609,6.935,7.275,
-7.560,7.788,8.028,8.343,8.714,9.073,9.397,9.727,10.102,10.472,10.738,10.860,10.912,10.972,10.968,10.694,
-10.028,9.176,8.668,9.069,10.628,13.125,15.990,18.560,20.312,21.032,20.900,20.448,20.314,20.889,22.100,23.504,
-24.638,25.302,25.561,25.542,25.285,24.789,24.128,23.460,22.895,22.386,21.799,21.065,20.253,19.488,18.833,18.281,
-17.830,17.519,17.361,17.275,17.136,16.902,16.671,16.574,16.630,16.720,16.720,16.631,16.563,16.594,16.680,16.700,
-16.589,16.389,16.191,16.052,15.968,15.928,15.938,16.007,16.110,16.208,16.290,16.379,16.494,16.605,16.648,16.587,
-16.449,16.294,16.148,15.985,15.759,15.452,15.090,14.703,14.302,13.876,13.416,12.927,12.420,11.905,11.380,10.834,
-10.255,9.639,9.000,8.358,7.708,6.994,6.137,5.127,4.082,3.208,2.653,2.376,2.167,1.805,1.230,.554,
--.067,-.577,-1.031,-1.495,-1.956,-2.342,-2.618,-2.825,-3.036,-3.281,-3.526,-3.728,-3.886,-4.035,-4.202,-4.379,
--4.548,-4.710,-4.876,-5.043,-5.189,-5.300,-5.390,-5.494,-5.625,-5.765,-5.891,-6.001,-6.115,-6.247,-6.388,-6.520,
--6.640,-6.758,-6.882,-7.001,-7.094,-7.148,-7.163,-7.143,-7.096,-7.033,-6.967,-6.910,-6.860,-6.808,-6.754,-6.706,
--6.655,-6.573,-6.434,-6.253,-6.081,-5.957,-5.859,-5.716,-5.480,-5.178,-4.894,-4.679,-4.502,-4.276,-3.938,-3.503,
--3.031,-2.573,-2.136,-1.705,-1.276,-.864,-.485,-.132,.216,.583,.982,1.414,1.871,2.340,2.806,3.268,
-3.746,4.256,4.792,5.311,5.759,6.114,6.404,6.693,7.031,7.428,7.858,8.292,8.718,9.146,9.584,10.028,
-10.463,10.873,11.254,11.609,11.946,12.265,12.568,12.855,13.138,13.432,13.757,14.117,14.497,14.863,15.186,15.456,
-15.691,15.921,16.164,16.418,16.673,16.931,17.209,17.524,17.865,18.196,18.481,18.711,18.910,19.111,19.325,19.535,
-19.722,19.894,20.083,20.318,20.586,20.840,21.032,21.144,21.193,21.198,21.165,21.097,21.017,20.965,20.960,20.988,
-21.014,21.026,21.035,21.042,21.001,20.867,20.675,20.575,20.722,21.118,21.544,21.691,21.395,20.776,20.152,19.798,
-19.769,19.909,20.024,20.030,19.971,19.925,19.908,19.876,19.797,19.709,19.688,19.762,19.861,19.865,19.708,19.452,
-19.234,19.146,19.158,19.161,19.077,18.914,18.717,18.504,18.269,18.050,17.936,17.968,18.036,17.948,17.632,17.269,
-17.163,17.424,17.805,17.886,17.455,16.715,16.091,15.860,15.957,16.124,16.202,16.239,16.355,16.561,16.448,16.661,
-16.816,16.928,17.065,17.233,17.368,17.423,17.443,17.525,17.708,17.938,18.152,18.355,18.616,18.968,19.355,19.684,
-19.919,20.110,20.330,20.599,20.875,21.115,21.312,21.490,21.661,21.825,21.984,22.162,22.375,22.606,22.804,22.927,
-22.972,22.973,22.976,23.007,23.076,23.190,23.350,23.549,23.766,23.977,24.171,24.352,24.530,24.703,24.867,25.024,
-25.190,25.383,25.614,25.868,26.109,26.295,26.396,26.405,26.346,26.261,26.193,26.167,26.191,26.264,26.387,26.553,
-26.742,26.915,27.044,27.137,27.228,27.334,27.425,27.436,27.337,27.183,27.083,27.108,27.232,27.358,27.415,27.424,
-27.475,27.645,27.957,28.386,28.887,29.385,29.751,29.835,29.565,29.036,28.484,28.149,28.133,28.379,28.759,29.182,
-29.607,30.009,30.339,30.550,30.646,30.680,30.709,30.752,30.780,30.756,30.672,30.555,30.453,30.407,30.433,30.508,
-30.584,30.612,30.576,30.489,30.377,30.255,30.137,30.053,30.050,30.156,30.339,30.523,30.638,30.672,30.660,30.648,
-30.663,30.725,30.860,31.087,31.373,31.618,31.703,31.570,31.264,30.888,30.524,30.190,29.864,29.540,29.259,29.082,
-29.047,29.143,29.325,29.551,29.792,30.034,30.266,30.483,30.695,30.933,31.226,31.571,31.926,32.230,32.452,32.604,
-32.736,32.890,33.073,33.272,33.474,33.691,33.947,34.260,34.640,35.086,35.585,36.101,36.581,36.977,37.272,37.482,
-37.633,37.741,37.813,37.862,37.906,37.952,37.999,38.063,38.191,38.424,38.736,39.028,39.217,39.325,39.465,39.702,
-39.945,40.024,39.881,39.664,39.586,39.688,39.781,39.660,39.350,39.082,39.003,38.945,38.556,37.688,36.619,35.839,
-35.597,35.671,35.609,35.157,34.448,33.800,33.376,33.080,32.735,32.292,31.839,31.453,31.103,30.699,30.206,29.664,
-29.119,28.573,28.017,27.482,27.031,26.693,26.433,26.201,25.984,25.805,25.666,25.523,25.338,25.126,24.946,24.837,
-24.775,24.712,24.631,24.565,24.542,24.551,24.550,24.517,24.463,24.416,24.393,24.390,24.395,24.389,24.342,24.234,
-24.078,23.923,23.806,23.713,23.587,23.390,23.149,22.931,22.771,22.636,22.470,22.250,22.002,21.759,21.521,21.267,
-20.988,20.695,20.400,20.088,19.741,19.369,19.012,18.697,18.411,18.112,17.776,17.422,17.091,16.805,16.548,16.289,
-16.014,15.729,15.447,15.174,14.903,14.632,14.369,14.130,13.928,13.755,13.595,13.437,13.294,13.190,13.119,13.036,
-12.895,12.709,12.570,12.574,12.714,12.860,12.857,12.651,12.312,11.932,11.515,10.976,10.243,9.359,8.455,7.654,
-7.005,6.495,6.095,5.773,5.464,5.090,4.619,4.115,3.688,3.386,3.146,2.854,2.454,1.988,1.530,1.101,
-.668,.205,-.254,-.651,-.975,-1.284,-1.648,-2.085,-2.557,-3.021,-3.474,-3.946,-4.453,-4.976,-5.474,-5.925,
--6.347,-6.777,-7.241,-7.730,-8.205,-8.634,-9.024,-9.422,-9.878,-10.396,-10.922,-11.385,-11.764,-12.106,-12.490,-12.961,
--13.498,-14.039,-14.533,-14.965,-15.356,-15.748,-16.178,-16.665,-17.200,-17.742,-18.249,-18.708,-19.149,-19.610,-20.100,-20.595,
--21.062,-21.498,-21.927,-22.370,-22.825,-23.272,-23.700,-24.112,-24.508,-24.887,-25.245,-25.596,-25.963,-26.357,-26.763,-27.161,
--27.539,-27.906,-28.274,-28.641,-29.001,-29.359,-29.722,-30.092,-30.449,-30.774,-31.070,-31.365,-31.676,-31.985,-32.255,-32.475,
--32.682,-32.931,-33.238,-33.557,-33.817,-33.983,-34.086,-34.189,-34.339,-34.535,-34.740,-34.919,-35.057,-35.164,-35.253,-35.330,
--35.394,-35.451,-35.531,-35.686,-35.947,-36.285,-36.600,-36.781,-36.792,-36.712,-36.674,-36.763,-36.952,-37.141,-37.253,-37.296,
--37.336,-37.419,-37.532,-37.619,-37.650,-37.645,-37.651,-37.696,-37.766,-37.812,-37.782,-37.662,-37.483,-37.317,-37.237,-37.276,
--37.406,-37.551,-37.629,-37.594,-37.454,-37.259,-37.077,-36.971,-36.962,-37.010,-37.020,-36.907,-36.654,-36.339,-36.082,-35.958,
--35.948,-35.960,-35.908,-35.770,-35.592,-35.434,-35.322,-35.233,-35.117,-34.946,-34.731,-34.518,-34.346,-34.218,-34.096,-33.927,
--33.690,-33.409,-33.134,-32.903,-32.715,-32.542,-32.354,-32.147,-31.924,-31.687,-31.419,-31.105,-30.757,-30.415,-30.125,-29.896,
--29.696,-29.475,-29.209,-28.915,-28.626,-28.354,-28.085,-27.800,-27.502,-27.215,-26.951,-26.695,-26.420,-26.116,-25.796,-25.472,
--25.136,-24.770,-24.376,-23.976,-23.582,-23.173,-22.717,-22.217,-21.716,-21.257,-20.820,-20.335,-19.753,-19.103,-18.467,-17.894,
--17.353,-16.767,-16.098,-15.365,-14.603,-13.805,-12.927,-11.949,-10.910,-9.878,-8.889,-7.928,-6.974,-6.044,-5.182,-4.408,
--3.690,-2.962,-2.172,-1.304,-.381,.550,1.419,2.140,2.658,2.992,3.241,3.528,3.929,4.428,4.936,5.350,
-5.615,5.764,5.922,6.251,6.856,7.710,8.660,9.513,10.141,10.507,10.637,10.582,10.422,10.274,10.254,10.399,
-10.630,10.828,10.934,10.956,10.864,10.493,9.618,8.178,6.447,4.943,4.110,4.033,4.434,4.926,5.298,5.583,
-5.908,6.313,6.706,6.985,7.157,7.332,7.622,8.027,8.443,8.755,8.942,9.077,9.256,9.500,9.742,9.890,
-9.919,9.898,9.935,10.085,10.302,10.478,10.527,10.453,10.345,10.323,10.454,10.715,11.020,11.278,11.458,11.590,
-11.735,11.937,12.216,12.581,13.029,13.524,13.978,14.300,14.487,14.674,15.063,15.773,16.727,17.704,18.494,19.031,
-19.383,19.642,19.840,19.972,20.058,20.181,20.433,20.857,21.427,22.079,22.751,23.386,23.937,24.381,24.739,25.049,
-25.323,25.520,25.589,25.523,25.383,25.265,25.233,25.303,25.459,25.673,25.911,26.125,26.282,26.395,26.518,26.697,
-26.925,27.168,27.428,27.780,28.313,29.033,29.821,30.505,30.985,31.277,31.465,31.593,31.619,31.457,31.067,30.486,
-29.780,28.971,27.990,26.723,25.121,23.301,21.563,20.275,19.671,19.697,20.021,20.236,20.132,19.835,19.697,20.011,
-20.787,21.747,22.543,22.999,23.172,23.225,23.248,23.206,23.040,22.778,22.522,22.341,22.182,21.918,21.475,20.896,
-20.280,19.686,19.104,18.527,18.003,17.589,17.262,16.915,16.468,15.968,15.547,15.272,15.058,14.771,14.405,14.095,
-13.946,13.858,13.594,13.059,12.484,12.277,12.642,13.349,13.883,13.855,13.255,12.374,11.516,10.822,10.320,10.044,
-10.028,10.197,10.332,10.215,9.817,9.323,8.944,8.719,8.508,8.170,7.722,7.319,7.088,6.997,6.897,6.666,
-6.309,5.935,5.651,5.476,5.353,5.218,5.050,4.884,4.765,4.705,4.673,4.617,4.504,4.337,4.133,3.901,
-3.636,3.345,3.052,2.783,2.530,2.258,1.944,1.605,1.287,1.016,.770,.514,.241,-.022,-.256,-.487,
--.757,-1.067,-1.364,-1.596,-1.773,-1.962,-2.215,-2.511,-2.779,-2.976,-3.128,-3.289,-3.484,-3.690,-3.887,-4.092,
--4.350,-4.668,-5.007,-5.311,-5.562,-5.785,-6.003,-6.208,-6.374,-6.492,-6.581,-6.662,-6.739,-6.807,-6.867,-6.938,
--7.035,-7.160,-7.308,-7.488,-7.708,-7.958,-8.202,-8.413,-8.595,-8.775,-8.964,-9.133,-9.252,-9.330,-9.417,-9.555,
--9.729,-9.883,-9.984,-10.056,-10.147,-10.273,-10.397,-10.471,-10.487,-10.477,-10.477,-10.495,-10.517,-10.539,-10.573,-10.629,
--10.694,-10.750,-10.792,-10.836,-10.894,-10.959,-11.008,-11.032,-11.040,-11.056,-11.093,-11.152,-11.225,-11.306,-11.391,-11.474,
--11.552,-11.621,-11.676,-11.711,-11.723,-11.729,-11.756,-11.819,-11.900,-11.960,-11.968,-11.932,-11.887,-11.856,-11.838,-11.812,
--11.775,-11.751,-11.767,-11.823,-11.890,-11.930,-11.934,-11.923,-11.932,-11.975,-12.037,-12.083,-12.085,-12.042,-11.982,-11.937,
--11.921,-11.925,-11.938,-11.955,-11.983,-12.018,-12.047,-12.048,-12.007,-11.923,-11.810,-11.696,-11.633,-11.672,-11.823,-12.027,
--12.183,-12.228,-12.192,-12.174,-12.249,-12.402,-12.543,-12.595,-12.554,-12.471,-12.405,-12.388,-12.431,-12.540,-12.689,-12.811,
--12.835,-12.746,-12.610,-12.516,-12.496,-12.506,-12.484,-12.426,-12.376,-12.364,-12.359,-12.308,-12.201,-12.086,-12.015,-11.976,
--11.911,-11.781,-11.612,-11.468,-11.382,-11.330,-11.266,-11.172,-11.067,-10.973,-10.888,-10.792,-10.676,-10.548,-10.421,-10.295,
--10.166,-10.044,-9.951,-9.905,-9.896,-9.899,-9.888,-9.860,-9.830,-9.815,-9.823,-9.851,-9.884,-9.900,-9.885,-9.837,
--9.773,-9.711,-9.662,-9.615,-9.555,-9.470,-9.364,-9.250,-9.138,-9.030,-8.927,-8.829,-8.740,-8.655,-8.563,-8.452,
--8.322,-8.186,-8.064,-7.961,-7.865,-7.763,-7.657,-7.565,-7.492,-7.420,-7.316,-7.171,-7.006,-6.848,-6.689,-6.490,
--6.227,-5.929,-5.672,-5.505,-5.403,-5.289,-5.108,-4.878,-4.659,-4.493,-4.365,-4.235,-4.084,-3.933,-3.808,-3.709,
--3.613,-3.499,-3.363,-3.214,-3.065,-2.929,-2.829,-2.776,-2.751,-2.717,-2.650,-2.569,-2.513,-2.498,-2.493,-2.457,
--2.389,-2.323,-2.281,-2.241,-2.159,-2.032,-1.914,-1.857,-1.853,-1.837,-1.766,-1.661,-1.581,-1.548,-1.515,-1.418,
--1.246,-1.048,-.870,-.707,-.522,-.299,-.067,.141,.340,.576,.871,1.196,1.498,1.764,2.022,2.304,
-2.600,2.878,3.130,3.389,3.685,4.009,4.322,4.608,4.894,5.210,5.540,5.827,6.049,6.250,6.499,6.807,
-7.113,7.361,7.578,7.846,8.211,8.621,8.989,9.295,9.603,9.961,10.322,10.588,10.729,10.818,10.910,10.897,
-10.562,9.826,8.972,8.582,9.211,11.029,13.717,16.631,19.083,20.584,21.004,20.639,20.111,20.074,20.839,22.199,
-23.616,24.628,25.116,25.239,25.169,24.929,24.475,23.859,23.228,22.674,22.125,21.434,20.568,19.666,18.918,18.394,
-18.026,17.721,17.453,17.233,17.028,16.775,16.477,16.235,16.161,16.242,16.343,16.338,16.244,16.187,16.253,16.392,
-16.478,16.433,16.285,16.106,15.938,15.786,15.665,15.605,15.619,15.669,15.707,15.739,15.817,15.967,16.132,16.217,
-16.186,16.100,16.048,16.038,15.984,15.793,15.449,15.016,14.549,14.048,13.485,12.875,12.303,11.853,11.532,11.243,
-10.838,10.210,9.355,8.374,7.408,6.550,5.781,5.003,4.147,3.267,2.528,2.066,1.850,1.688,1.375,.860,
-.253,-.303,-.767,-1.201,-1.654,-2.091,-2.432,-2.655,-2.831,-3.048,-3.314,-3.560,-3.723,-3.823,-3.931,-4.097,
--4.301,-4.492,-4.647,-4.788,-4.935,-5.084,-5.216,-5.332,-5.458,-5.615,-5.790,-5.952,-6.081,-6.189,-6.301,-6.427,
--6.557,-6.676,-6.777,-6.868,-6.955,-7.038,-7.103,-7.134,-7.117,-7.059,-6.982,-6.909,-6.846,-6.785,-6.722,-6.670,
--6.643,-6.621,-6.552,-6.401,-6.193,-6.000,-5.871,-5.774,-5.624,-5.370,-5.052,-4.770,-4.584,-4.459,-4.301,-4.044,
--3.686,-3.265,-2.809,-2.325,-1.825,-1.338,-.896,-.504,-.136,.233,.613,1.002,1.410,1.851,2.322,2.802,
-3.273,3.751,4.270,4.835,5.397,5.878,6.239,6.517,6.798,7.146,7.567,8.026,8.488,8.942,9.390,9.829,
-10.243,10.630,10.997,11.361,11.721,12.064,12.377,12.663,12.939,13.224,13.530,13.861,14.216,14.578,14.921,15.221,
-15.475,15.709,15.964,16.262,16.597,16.942,17.276,17.599,17.918,18.230,18.519,18.771,18.981,19.166,19.342,19.519,
-19.696,19.878,20.079,20.312,20.575,20.842,21.080,21.268,21.401,21.483,21.513,21.487,21.420,21.346,21.303,21.299,
-21.309,21.309,21.305,21.318,21.339,21.313,21.187,20.998,20.889,21.004,21.340,21.694,21.797,21.521,20.987,20.481,
-20.233,20.264,20.418,20.515,20.495,20.418,20.365,20.348,20.309,20.208,20.081,20.016,20.058,20.148,20.168,20.047,
-19.839,19.668,19.616,19.640,19.625,19.496,19.268,19.003,18.733,18.451,18.183,17.998,17.927,17.884,17.715,17.377,
-17.044,16.978,17.249,17.602,17.643,17.204,16.504,15.960,15.815,15.972,16.156,16.208,16.195,16.262,16.448,16.499,
-16.696,16.836,16.929,17.041,17.182,17.303,17.374,17.450,17.615,17.877,18.155,18.368,18.534,18.747,19.061,19.422,
-19.723,19.919,20.067,20.256,20.513,20.788,21.023,21.206,21.365,21.516,21.651,21.777,21.932,22.154,22.429,22.676,
-22.813,22.830,22.799,22.809,22.894,23.028,23.169,23.307,23.460,23.646,23.860,24.085,24.313,24.543,24.764,24.961,
-25.129,25.281,25.437,25.598,25.741,25.865,26.004,26.206,26.468,26.702,26.788,26.680,26.462,26.296,26.301,26.468,
-26.688,26.854,26.947,27.027,27.155,27.324,27.464,27.496,27.398,27.222,27.061,26.985,27.007,27.095,27.215,27.377,
-27.619,27.964,28.379,28.784,29.108,29.326,29.441,29.447,29.315,29.048,28.717,28.453,28.365,28.475,28.723,29.037,
-29.383,29.763,30.157,30.513,30.774,30.926,31.004,31.054,31.093,31.105,31.075,31.012,30.946,30.905,30.892,30.889,
-30.872,30.839,30.809,30.810,30.846,30.887,30.887,30.822,30.720,30.639,30.622,30.668,30.742,30.815,30.876,30.916,
-30.927,30.920,30.953,31.108,31.413,31.785,32.057,32.091,31.880,31.533,31.175,30.854,30.541,30.210,29.889,29.648,
-29.533,29.540,29.632,29.786,30.001,30.266,30.544,30.793,31.002,31.203,31.446,31.755,32.116,32.490,32.840,33.140,
-33.387,33.593,33.782,33.978,34.191,34.415,34.644,34.888,35.177,35.536,35.959,36.409,36.842,37.229,37.566,37.849,
-38.069,38.211,38.283,38.319,38.361,38.422,38.490,38.571,38.715,38.995,39.413,39.860,40.165,40.250,40.200,40.193,
-40.320,40.491,40.543,40.427,40.276,40.244,40.310,40.282,40.016,39.618,39.357,39.354,39.386,39.058,38.198,37.071,
-36.173,35.791,35.773,35.706,35.315,34.663,34.010,33.532,33.196,32.868,32.484,32.079,31.701,31.328,30.904,30.409,
-29.878,29.353,28.842,28.339,27.852,27.416,27.053,26.759,26.516,26.318,26.155,25.999,25.813,25.588,25.369,25.209,
-25.117,25.051,24.961,24.846,24.748,24.700,24.692,24.682,24.647,24.592,24.542,24.512,24.505,24.511,24.510,24.472,
-24.378,24.245,24.117,24.025,23.950,23.844,23.681,23.487,23.311,23.167,23.020,22.826,22.588,22.342,22.115,21.894,
-21.650,21.376,21.093,20.814,20.526,20.205,19.857,19.512,19.195,18.891,18.565,18.205,17.838,17.504,17.214,16.945,
-16.668,16.380,16.093,15.816,15.537,15.245,14.946,14.670,14.442,14.263,14.106,13.949,13.798,13.682,13.614,13.559,
-13.452,13.269,13.076,12.998,13.108,13.337,13.505,13.459,13.189,12.806,12.403,11.948,11.331,10.503,9.562,8.693,
-8.020,7.533,7.137,6.754,6.364,5.963,5.540,5.090,4.652,4.287,4.008,3.751,3.426,3.003,2.532,2.077,
-1.649,1.215,.763,.331,-.032,-.333,-.644,-1.031,-1.495,-1.983,-2.452,-2.910,-3.389,-3.895,-4.395,-4.853,
--5.273,-5.696,-6.154,-6.643,-7.127,-7.575,-7.984,-8.381,-8.797,-9.252,-9.734,-10.212,-10.656,-11.059,-11.447,-11.865,
--12.344,-12.878,-13.422,-13.928,-14.367,-14.751,-15.123,-15.535,-16.016,-16.555,-17.108,-17.633,-18.114,-18.572,-19.034,-19.508,
--19.981,-20.436,-20.873,-21.306,-21.740,-22.170,-22.592,-23.013,-23.444,-23.883,-24.312,-24.711,-25.083,-25.447,-25.819,-26.200,
--26.579,-26.955,-27.337,-27.723,-28.101,-28.456,-28.795,-29.146,-29.522,-29.908,-30.269,-30.592,-30.893,-31.198,-31.504,-31.780,
--32.014,-32.232,-32.488,-32.803,-33.135,-33.415,-33.603,-33.725,-33.841,-33.985,-34.140,-34.266,-34.349,-34.413,-34.497,-34.605,
--34.709,-34.773,-34.801,-34.844,-34.965,-35.181,-35.440,-35.648,-35.740,-35.743,-35.756,-35.876,-36.117,-36.389,-36.575,-36.617,
--36.567,-36.533,-36.591,-36.729,-36.869,-36.944,-36.950,-36.947,-36.993,-37.091,-37.183,-37.193,-37.089,-36.912,-36.754,-36.694,
--36.756,-36.902,-37.058,-37.155,-37.146,-37.019,-36.806,-36.580,-36.434,-36.414,-36.481,-36.521,-36.432,-36.202,-35.919,-35.706,
--35.619,-35.618,-35.611,-35.530,-35.372,-35.184,-35.020,-34.905,-34.824,-34.739,-34.608,-34.417,-34.199,-34.015,-33.905,-33.849,
--33.767,-33.579,-33.277,-32.932,-32.637,-32.435,-32.287,-32.123,-31.901,-31.640,-31.380,-31.137,-30.887,-30.601,-30.282,-29.968,
--29.696,-29.468,-29.255,-29.024,-28.770,-28.500,-28.221,-27.930,-27.627,-27.329,-27.053,-26.797,-26.538,-26.254,-25.955,-25.661,
--25.377,-25.076,-24.728,-24.332,-23.915,-23.493,-23.047,-22.551,-22.028,-21.541,-21.140,-20.792,-20.403,-19.905,-19.321,-18.741,
--18.222,-17.743,-17.244,-16.710,-16.179,-15.682,-15.163,-14.506,-13.627,-12.558,-11.418,-10.320,-9.298,-8.314,-7.325,-6.329,
--5.359,-4.457,-3.634,-2.868,-2.102,-1.276,-.379,.522,1.305,1.873,2.231,2.491,2.787,3.182,3.637,4.056,
-4.367,4.566,4.729,4.978,5.433,6.143,7.034,7.922,8.593,8.917,8.905,8.681,8.406,8.212,8.175,8.303,
-8.534,8.773,8.954,9.078,9.174,9.186,8.918,8.147,6.837,5.277,3.960,3.285,3.312,3.768,4.300,4.712,
-5.029,5.355,5.724,6.071,6.326,6.509,6.708,6.994,7.352,7.702,7.973,8.165,8.332,8.529,8.760,8.987,
-9.161,9.264,9.325,9.395,9.510,9.663,9.799,9.852,9.798,9.690,9.636,9.736,10.004,10.355,10.664,10.857,
-10.959,11.061,11.248,11.551,11.946,12.382,12.799,13.133,13.349,13.486,13.683,14.113,14.862,15.853,16.880,17.743,
-18.359,18.764,19.031,19.200,19.281,19.308,19.361,19.545,19.924,20.497,21.208,21.972,22.709,23.362,23.911,24.374,
-24.773,25.106,25.341,25.447,25.427,25.318,25.166,25.000,24.847,24.750,24.760,24.896,25.125,25.379,25.609,25.810,
-26.003,26.205,26.429,26.713,27.115,27.676,28.363,29.071,29.682,30.137,30.462,30.705,30.869,30.885,30.662,30.162,
-29.442,28.620,27.784,26.923,25.936,24.727,23.331,21.960,20.903,20.343,20.228,20.308,20.326,20.208,20.100,20.230,
-20.708,21.431,22.160,22.689,22.969,23.087,23.148,23.173,23.104,22.891,22.563,22.215,21.923,21.677,21.400,21.024,
-20.532,19.949,19.300,18.604,17.915,17.318,16.870,16.534,16.195,15.769,15.296,14.894,14.626,14.423,14.173,13.864,
-13.609,13.497,13.434,13.192,12.653,12.001,11.617,11.760,12.318,12.893,13.119,12.918,12.462,11.952,11.455,10.944,
-10.437,10.024,9.771,9.618,9.424,9.107,8.725,8.405,8.198,8.034,7.804,7.478,7.140,6.890,6.748,6.631,
-6.439,6.139,5.789,5.474,5.235,5.047,4.865,4.680,4.536,4.479,4.504,4.542,4.512,4.389,4.213,4.043,
-3.887,3.702,3.445,3.126,2.796,2.492,2.209,1.918,1.609,1.300,1.009,.729,.447,.172,-.074,-.285,
--.498,-.754,-1.052,-1.343,-1.587,-1.798,-2.030,-2.309,-2.594,-2.820,-2.974,-3.110,-3.293,-3.532,-3.778,-3.994,
--4.199,-4.443,-4.748,-5.080,-5.386,-5.652,-5.900,-6.155,-6.402,-6.610,-6.760,-6.866,-6.949,-7.017,-7.072,-7.122,
--7.181,-7.257,-7.347,-7.450,-7.587,-7.785,-8.045,-8.330,-8.596,-8.827,-9.035,-9.226,-9.380,-9.474,-9.521,-9.575,
--9.683,-9.839,-9.996,-10.120,-10.223,-10.339,-10.473,-10.589,-10.645,-10.644,-10.628,-10.637,-10.671,-10.703,-10.715,-10.718,
--10.737,-10.785,-10.853,-10.925,-10.989,-11.039,-11.073,-11.090,-11.099,-11.114,-11.145,-11.194,-11.261,-11.344,-11.438,-11.532,
--11.610,-11.666,-11.705,-11.737,-11.761,-11.772,-11.774,-11.783,-11.817,-11.869,-11.909,-11.914,-11.893,-11.876,-11.881,-11.890,
--11.868,-11.808,-11.740,-11.714,-11.749,-11.820,-11.882,-11.910,-11.920,-11.942,-11.993,-12.062,-12.121,-12.150,-12.152,-12.141,
--12.126,-12.111,-12.098,-12.101,-12.134,-12.192,-12.242,-12.243,-12.180,-12.077,-11.979,-11.914,-11.879,-11.862,-11.859,-11.878,
--11.916,-11.953,-11.972,-11.987,-12.035,-12.142,-12.294,-12.446,-12.554,-12.605,-12.605,-12.570,-12.527,-12.520,-12.583,-12.707,
--12.827,-12.867,-12.811,-12.712,-12.637,-12.604,-12.571,-12.504,-12.419,-12.365,-12.359,-12.358,-12.304,-12.196,-12.089,-12.034,
--12.017,-11.979,-11.878,-11.735,-11.601,-11.503,-11.421,-11.320,-11.194,-11.068,-10.960,-10.863,-10.760,-10.646,-10.533,-10.430,
--10.325,-10.203,-10.074,-9.969,-9.920,-9.922,-9.940,-9.937,-9.902,-9.853,-9.821,-9.822,-9.847,-9.874,-9.881,-9.859,
--9.815,-9.764,-9.716,-9.675,-9.636,-9.589,-9.528,-9.449,-9.353,-9.243,-9.127,-9.012,-8.907,-8.815,-8.729,-8.638,
--8.532,-8.411,-8.285,-8.169,-8.068,-7.971,-7.864,-7.745,-7.629,-7.531,-7.450,-7.366,-7.263,-7.138,-6.998,-6.839,
--6.639,-6.381,-6.090,-5.822,-5.623,-5.490,-5.370,-5.212,-5.008,-4.791,-4.593,-4.416,-4.244,-4.068,-3.896,-3.743,
--3.608,-3.480,-3.346,-3.206,-3.068,-2.939,-2.830,-2.752,-2.699,-2.651,-2.583,-2.495,-2.418,-2.383,-2.387,-2.385,
--2.343,-2.270,-2.208,-2.175,-2.142,-2.064,-1.940,-1.820,-1.756,-1.739,-1.712,-1.634,-1.524,-1.436,-1.387,-1.340,
--1.245,-1.097,-.933,-.782,-.630,-.446,-.229,-.013,.179,.374,.620,.926,1.246,1.526,1.765,2.007,
-2.288,2.589,2.863,3.095,3.324,3.594,3.907,4.228,4.534,4.839,5.163,5.488,5.771,6.002,6.224,6.487,
-6.785,7.061,7.285,7.507,7.810,8.211,8.631,8.980,9.258,9.548,9.901,10.264,10.536,10.695,10.813,10.922,
-10.889,10.498,9.713,8.876,8.601,9.409,11.390,14.139,16.961,19.181,20.388,20.565,20.108,19.671,19.842,20.800,
-22.225,23.558,24.409,24.767,24.854,24.826,24.646,24.228,23.612,22.962,22.378,21.790,21.055,20.168,19.305,18.672,
-18.310,18.091,17.864,17.582,17.272,16.945,16.583,16.211,15.931,15.840,15.905,15.975,15.924,15.781,15.693,15.765,
-15.957,16.130,16.180,16.106,15.959,15.782,15.597,15.431,15.315,15.247,15.181,15.093,15.030,15.077,15.253,15.459,
-15.571,15.561,15.530,15.586,15.709,15.753,15.591,15.234,14.795,14.352,13.870,13.271,12.567,11.904,11.443,11.211,
-11.048,10.707,10.013,8.971,7.747,6.565,5.574,4.786,4.104,3.431,2.766,2.208,1.842,1.634,1.430,1.080,
-.566,-.005,-.514,-.943,-1.349,-1.770,-2.165,-2.467,-2.674,-2.860,-3.094,-3.359,-3.575,-3.693,-3.758,-3.859,
--4.040,-4.259,-4.450,-4.590,-4.710,-4.847,-4.997,-5.135,-5.256,-5.385,-5.551,-5.745,-5.933,-6.088,-6.216,-6.342,
--6.480,-6.615,-6.726,-6.804,-6.863,-6.926,-7.003,-7.079,-7.121,-7.104,-7.033,-6.940,-6.859,-6.798,-6.744,-6.685,
--6.634,-6.607,-6.591,-6.539,-6.414,-6.232,-6.054,-5.920,-5.801,-5.624,-5.350,-5.023,-4.732,-4.527,-4.384,-4.235,
--4.031,-3.758,-3.414,-2.986,-2.469,-1.904,-1.365,-.904,-.518,-.160,.208,.591,.985,1.404,1.867,2.364,
-2.854,3.305,3.743,4.233,4.808,5.417,5.957,6.366,6.677,6.983,7.355,7.792,8.246,8.679,9.087,9.486,
-9.877,10.251,10.609,10.971,11.352,11.745,12.122,12.468,12.790,13.108,13.434,13.763,14.089,14.413,14.740,15.062,
-15.359,15.627,15.888,16.178,16.520,16.899,17.277,17.625,17.934,18.216,18.480,18.727,18.954,19.161,19.355,19.539,
-19.715,19.886,20.069,20.281,20.530,20.800,21.062,21.290,21.477,21.623,21.726,21.774,21.761,21.705,21.646,21.616,
-21.617,21.624,21.616,21.601,21.605,21.622,21.608,21.519,21.371,21.256,21.271,21.418,21.577,21.594,21.404,21.092,
-20.825,20.723,20.777,20.874,20.907,20.853,20.768,20.721,20.719,20.708,20.628,20.479,20.322,20.226,20.204,20.202,
-20.157,20.060,19.952,19.870,19.803,19.705,19.556,19.383,19.211,19.021,18.764,18.436,18.104,17.836,17.612,17.339,
-16.981,16.647,16.516,16.637,16.826,16.809,16.487,16.046,15.786,15.846,16.091,16.279,16.308,16.274,16.327,16.499,
-16.597,16.746,16.820,16.861,16.947,17.097,17.262,17.406,17.562,17.789,18.081,18.358,18.551,18.687,18.859,19.120,
-19.421,19.670,19.837,19.981,20.174,20.419,20.654,20.835,20.982,21.144,21.328,21.500,21.635,21.772,21.975,22.247,
-22.507,22.659,22.686,22.669,22.708,22.837,23.012,23.177,23.321,23.476,23.663,23.879,24.113,24.367,24.645,24.919,
-25.140,25.281,25.367,25.445,25.526,25.583,25.617,25.718,26.014,26.529,27.092,27.425,27.357,26.984,26.596,26.452,
-26.582,26.816,26.973,27.016,27.046,27.157,27.318,27.408,27.338,27.139,26.933,26.832,26.861,26.986,27.172,27.433,
-27.802,28.271,28.762,29.156,29.370,29.401,29.318,29.201,29.088,28.969,28.834,28.707,28.643,28.679,28.812,29.010,
-29.254,29.552,29.917,30.325,30.717,31.036,31.254,31.383,31.445,31.455,31.426,31.381,31.353,31.358,31.378,31.366,
-31.284,31.143,31.006,30.950,31.019,31.180,31.346,31.430,31.399,31.288,31.164,31.076,31.038,31.047,31.100,31.180,
-31.245,31.254,31.221,31.238,31.410,31.745,32.108,32.303,32.228,31.945,31.613,31.337,31.103,30.838,30.530,30.252,
-30.092,30.062,30.104,30.165,30.254,30.415,30.657,30.927,31.169,31.383,31.620,31.921,32.279,32.653,33.019,33.385,
-33.756,34.107,34.400,34.626,34.821,35.031,35.271,35.524,35.782,36.069,36.414,36.807,37.201,37.549,37.853,38.139,
-38.416,38.644,38.777,38.820,38.833,38.875,38.952,39.035,39.142,39.364,39.788,40.372,40.913,41.181,41.113,40.876,
-40.721,40.767,40.914,40.984,40.916,40.810,40.768,40.738,40.554,40.146,39.682,39.429,39.463,39.526,39.226,38.413,
-37.344,36.475,36.066,35.982,35.864,35.465,34.834,34.197,33.721,33.391,33.089,32.734,32.330,31.918,31.508,31.080,
-30.619,30.132,29.632,29.121,28.608,28.116,27.684,27.334,27.070,26.873,26.718,26.567,26.381,26.143,25.884,25.666,
-25.527,25.446,25.361,25.233,25.082,24.960,24.899,24.881,24.864,24.826,24.773,24.723,24.685,24.661,24.648,24.635,
-24.600,24.528,24.429,24.336,24.267,24.205,24.115,23.981,23.828,23.687,23.553,23.392,23.177,22.931,22.698,22.496,
-22.296,22.058,21.778,21.486,21.208,20.938,20.650,20.337,20.014,19.694,19.363,19.001,18.612,18.234,17.900,17.611,
-17.336,17.050,16.756,16.470,16.190,15.898,15.587,15.280,15.019,14.824,14.668,14.507,14.326,14.164,14.071,14.047,
-14.022,13.907,13.695,13.491,13.445,13.609,13.868,14.013,13.903,13.569,13.146,12.718,12.230,11.563,10.696,9.774,
-9.000,8.474,8.121,7.784,7.369,6.890,6.414,5.981,5.591,5.235,4.918,4.629,4.327,3.961,3.526,3.062,
-2.614,2.187,1.757,1.326,.927,.587,.282,-.052,-.462,-.930,-1.407,-1.870,-2.337,-2.827,-3.324,-3.788,
--4.206,-4.612,-5.057,-5.546,-6.035,-6.477,-6.873,-7.266,-7.701,-8.179,-8.665,-9.127,-9.557,-9.969,-10.377,-10.794,
--11.234,-11.714,-12.236,-12.774,-13.284,-13.731,-14.119,-14.490,-14.900,-15.379,-15.914,-16.467,-16.999,-17.499,-17.975,-18.443,
--18.906,-19.363,-19.813,-20.261,-20.710,-21.154,-21.584,-22.001,-22.422,-22.860,-23.311,-23.753,-24.165,-24.548,-24.918,-25.289,
--25.662,-26.032,-26.405,-26.790,-27.182,-27.562,-27.910,-28.236,-28.571,-28.939,-29.329,-29.702,-30.036,-30.341,-30.647,-30.965,
--31.273,-31.552,-31.810,-32.081,-32.378,-32.672,-32.915,-33.089,-33.225,-33.374,-33.553,-33.726,-33.847,-33.908,-33.949,-34.017,
--34.121,-34.226,-34.295,-34.328,-34.367,-34.455,-34.597,-34.757,-34.888,-34.982,-35.076,-35.225,-35.452,-35.727,-35.972,-36.119,
--36.152,-36.119,-36.099,-36.147,-36.256,-36.372,-36.444,-36.464,-36.474,-36.520,-36.602,-36.667,-36.653,-36.542,-36.391,-36.290,
--36.300,-36.421,-36.600,-36.771,-36.881,-36.891,-36.780,-36.570,-36.338,-36.183,-36.159,-36.220,-36.246,-36.139,-35.909,-35.660,
--35.499,-35.450,-35.445,-35.397,-35.268,-35.082,-34.889,-34.720,-34.585,-34.481,-34.386,-34.266,-34.087,-33.858,-33.645,-33.520,
--33.494,-33.484,-33.368,-33.093,-32.720,-32.375,-32.139,-31.992,-31.844,-31.634,-31.378,-31.133,-30.927,-30.728,-30.478,-30.165,
--29.835,-29.548,-29.326,-29.133,-28.920,-28.664,-28.377,-28.082,-27.792,-27.512,-27.248,-26.998,-26.748,-26.475,-26.171,-25.857,
--25.559,-25.277,-24.977,-24.627,-24.230,-23.816,-23.399,-22.954,-22.455,-21.928,-21.453,-21.095,-20.831,-20.564,-20.207,-19.757,
--19.275,-18.800,-18.314,-17.780,-17.220,-16.711,-16.304,-15.931,-15.441,-14.712,-13.759,-12.718,-11.729,-10.834,-9.962,-9.010,
--7.929,-6.767,-5.633,-4.633,-3.801,-3.076,-2.352,-1.554,-.710,.070,.685,1.131,1.500,1.887,2.306,2.689,
-2.961,3.123,3.258,3.478,3.864,4.444,5.184,5.982,6.677,7.100,7.160,6.906,6.520,6.213,6.122,6.248,
-6.489,6.713,6.854,6.947,7.076,7.264,7.376,7.154,6.400,5.169,3.823,2.833,2.491,2.742,3.276,3.781,
-4.141,4.428,4.744,5.100,5.426,5.677,5.889,6.138,6.456,6.797,7.084,7.284,7.433,7.590,7.792,8.030,
-8.266,8.462,8.597,8.671,8.715,8.776,8.887,9.034,9.158,9.196,9.148,9.094,9.144,9.350,9.665,9.978,
-10.206,10.355,10.499,10.713,11.018,11.375,11.726,12.028,12.266,12.456,12.654,12.949,13.432,14.135,14.996,15.892,
-16.701,17.359,17.859,18.218,18.448,18.565,18.614,18.669,18.822,19.144,19.668,20.371,21.183,22.006,22.749,23.367,
-23.866,24.276,24.617,24.888,25.078,25.181,25.192,25.097,24.891,24.608,24.328,24.153,24.137,24.265,24.471,24.693,
-24.911,25.137,25.395,25.705,26.090,26.562,27.116,27.714,28.302,28.843,29.322,29.731,30.039,30.191,30.120,29.787,
-29.203,28.436,27.580,26.719,25.870,24.991,24.035,23.036,22.123,21.452,21.077,20.904,20.767,20.584,20.430,20.470,
-20.806,21.374,21.986,22.463,22.742,22.874,22.949,23.003,23.001,22.878,22.599,22.193,21.741,21.328,20.995,20.722,
-20.439,20.065,19.544,18.870,18.099,17.334,16.683,16.190,15.811,15.447,15.034,14.596,14.216,13.941,13.729,13.511,
-13.284,13.121,13.066,13.027,12.820,12.342,11.714,11.220,11.071,11.241,11.519,11.732,11.886,12.089,12.340,12.444,
-12.152,11.399,10.399,9.495,8.911,8.633,8.485,8.311,8.078,7.835,7.621,7.418,7.188,6.936,6.702,6.516,
-6.351,6.144,5.854,5.510,5.185,4.931,4.736,4.551,4.356,4.201,4.153,4.221,4.321,4.340,4.234,4.056,
-3.895,3.777,3.649,3.435,3.121,2.762,2.424,2.130,1.858,1.578,1.284,.986,.692,.408,.151,-.067,
--.257,-.462,-.715,-1.005,-1.286,-1.530,-1.762,-2.029,-2.338,-2.628,-2.837,-2.967,-3.094,-3.293,-3.567,-3.854,
--4.102,-4.324,-4.570,-4.866,-5.185,-5.482,-5.744,-5.998,-6.268,-6.543,-6.789,-6.985,-7.132,-7.241,-7.317,-7.366,
--7.404,-7.454,-7.523,-7.601,-7.679,-7.774,-7.922,-8.141,-8.409,-8.688,-8.949,-9.185,-9.391,-9.548,-9.639,-9.683,
--9.726,-9.812,-9.942,-10.088,-10.225,-10.358,-10.499,-10.634,-10.726,-10.752,-10.735,-10.729,-10.766,-10.833,-10.885,-10.894,
--10.876,-10.870,-10.904,-10.979,-11.069,-11.149,-11.199,-11.216,-11.212,-11.209,-11.223,-11.260,-11.318,-11.392,-11.484,-11.588,
--11.690,-11.770,-11.820,-11.857,-11.898,-11.947,-11.986,-12.000,-11.996,-11.987,-11.981,-11.964,-11.928,-11.887,-11.874,-11.900,
--11.939,-11.942,-11.885,-11.799,-11.744,-11.757,-11.825,-11.904,-11.962,-12.000,-12.042,-12.100,-12.164,-12.219,-12.259,-12.292,
--12.318,-12.324,-12.298,-12.247,-12.207,-12.210,-12.254,-12.293,-12.274,-12.190,-12.089,-12.032,-12.042,-12.087,-12.113,-12.095,
--12.049,-12.014,-12.015,-12.051,-12.113,-12.193,-12.288,-12.389,-12.488,-12.581,-12.658,-12.707,-12.711,-12.678,-12.646,-12.660,
--12.729,-12.814,-12.856,-12.830,-12.765,-12.703,-12.656,-12.607,-12.546,-12.488,-12.459,-12.450,-12.420,-12.335,-12.215,-12.111,
--12.054,-12.023,-11.972,-11.880,-11.774,-11.684,-11.606,-11.505,-11.362,-11.196,-11.052,-10.947,-10.862,-10.768,-10.661,-10.557,
--10.469,-10.381,-10.271,-10.144,-10.035,-9.980,-9.981,-10.001,-9.995,-9.951,-9.893,-9.857,-9.855,-9.873,-9.886,-9.878,
--9.852,-9.819,-9.782,-9.736,-9.678,-9.613,-9.552,-9.502,-9.453,-9.389,-9.300,-9.191,-9.077,-8.970,-8.874,-8.784,
--8.695,-8.602,-8.499,-8.385,-8.262,-8.138,-8.019,-7.901,-7.775,-7.641,-7.510,-7.395,-7.300,-7.216,-7.129,-7.026,
--6.895,-6.720,-6.492,-6.228,-5.966,-5.745,-5.575,-5.429,-5.269,-5.079,-4.872,-4.673,-4.492,-4.321,-4.149,-3.977,
--3.811,-3.654,-3.502,-3.350,-3.198,-3.053,-2.926,-2.825,-2.750,-2.684,-2.606,-2.504,-2.397,-2.324,-2.305,-2.319,
--2.313,-2.257,-2.168,-2.097,-2.068,-2.055,-2.011,-1.917,-1.804,-1.713,-1.649,-1.583,-1.493,-1.389,-1.295,-1.214,
--1.118,-.989,-.842,-.709,-.598,-.475,-.308,-.101,.107,.294,.483,.713,.991,1.277,1.530,1.758,
-2.002,2.284,2.575,2.829,3.042,3.261,3.532,3.854,4.187,4.501,4.802,5.104,5.400,5.669,5.913,6.171,
-6.469,6.782,7.058,7.290,7.540,7.881,8.304,8.715,9.036,9.290,9.571,9.924,10.284,10.551,10.713,10.839,
-10.940,10.869,10.426,9.622,8.839,8.686,9.623,11.658,14.327,16.934,18.868,19.824,19.892,19.522,19.328,19.772,
-20.896,22.312,23.504,24.197,24.476,24.575,24.587,24.408,23.923,23.200,22.449,21.808,21.223,20.561,19.812,19.130,
-18.674,18.434,18.253,17.993,17.644,17.272,16.899,16.492,16.057,15.697,15.521,15.519,15.546,15.467,15.293,15.169,
-15.218,15.420,15.646,15.776,15.776,15.678,15.520,15.330,15.137,14.963,14.792,14.592,14.370,14.214,14.224,14.400,
-14.617,14.736,14.748,14.782,14.948,15.192,15.331,15.225,14.912,14.541,14.193,13.794,13.223,12.487,11.766,11.266,
-11.023,10.850,10.467,9.702,8.589,7.317,6.104,5.080,4.260,3.580,2.983,2.465,2.062,1.782,1.557,1.267,
-.834,.290,-.255,-.715,-1.095,-1.459,-1.837,-2.195,-2.480,-2.697,-2.904,-3.142,-3.384,-3.569,-3.676,-3.760,
--3.891,-4.083,-4.285,-4.444,-4.563,-4.685,-4.839,-5.003,-5.141,-5.253,-5.372,-5.533,-5.731,-5.929,-6.103,-6.255,
--6.402,-6.548,-6.676,-6.769,-6.828,-6.875,-6.933,-7.010,-7.085,-7.122,-7.096,-7.010,-6.901,-6.809,-6.750,-6.710,
--6.668,-6.624,-6.593,-6.576,-6.548,-6.474,-6.349,-6.199,-6.049,-5.888,-5.679,-5.405,-5.096,-4.802,-4.551,-4.329,
--4.114,-3.895,-3.664,-3.387,-3.010,-2.510,-1.936,-1.378,-.903,-.506,-.139,.236,.619,1.006,1.416,1.874,
-2.369,2.847,3.274,3.685,4.161,4.746,5.385,5.964,6.415,6.769,7.123,7.538,7.993,8.424,8.798,9.132,
-9.468,9.822,10.187,10.557,10.938,11.339,11.749,12.150,12.532,12.910,13.294,13.674,14.025,14.336,14.627,14.923,
-15.234,15.541,15.830,16.115,16.425,16.778,17.154,17.512,17.824,18.094,18.345,18.591,18.834,19.068,19.294,19.516,
-19.729,19.921,20.091,20.259,20.454,20.690,20.953,21.211,21.438,21.626,21.781,21.903,21.977,21.993,21.962,21.919,
-21.896,21.901,21.915,21.916,21.902,21.890,21.891,21.891,21.864,21.802,21.727,21.670,21.642,21.619,21.567,21.473,
-21.358,21.258,21.200,21.180,21.176,21.158,21.114,21.055,21.011,21.000,21.005,20.973,20.854,20.655,20.440,20.291,
-20.241,20.251,20.251,20.186,20.047,19.862,19.673,19.524,19.437,19.388,19.296,19.072,18.700,18.264,17.876,17.579,
-17.316,17.019,16.703,16.461,16.350,16.311,16.224,16.050,15.888,15.881,16.051,16.270,16.386,16.378,16.358,16.435,
-16.597,16.622,16.719,16.747,16.778,16.894,17.101,17.333,17.536,17.727,17.954,18.219,18.466,18.650,18.791,18.955,
-19.171,19.398,19.579,19.719,19.879,20.099,20.339,20.524,20.635,20.735,20.902,21.138,21.368,21.535,21.664,21.830,
-22.065,22.309,22.477,22.548,22.588,22.675,22.826,23.001,23.169,23.345,23.556,23.793,24.025,24.244,24.492,24.802,
-25.128,25.366,25.456,25.457,25.491,25.617,25.777,25.886,25.975,26.198,26.659,27.246,27.660,27.660,27.285,26.837,
-26.629,26.735,26.980,27.146,27.169,27.146,27.173,27.224,27.186,27.010,26.782,26.658,26.730,26.963,27.265,27.588,
-27.957,28.400,28.870,29.247,29.424,29.391,29.247,29.117,29.070,29.084,29.093,29.057,28.989,28.937,28.944,29.024,
-29.177,29.407,29.721,30.111,30.542,30.963,31.327,31.606,31.786,31.864,31.854,31.798,31.751,31.753,31.793,31.813,
-31.749,31.588,31.387,31.247,31.243,31.378,31.575,31.731,31.778,31.720,31.608,31.500,31.421,31.380,31.385,31.445,
-31.537,31.600,31.584,31.519,31.516,31.672,31.961,32.219,32.273,32.093,31.811,31.588,31.465,31.349,31.141,30.863,
-30.643,30.573,30.626,30.692,30.713,30.735,30.838,31.036,31.266,31.473,31.683,31.965,32.346,32.771,33.168,33.532,
-33.917,34.355,34.799,35.160,35.404,35.582,35.779,36.028,36.302,36.574,36.860,37.192,37.560,37.906,38.184,38.412,
-38.649,38.909,39.140,39.278,39.329,39.363,39.437,39.535,39.610,39.696,39.923,40.399,41.047,41.603,41.805,41.622,
-41.282,41.076,41.109,41.252,41.312,41.232,41.099,40.994,40.858,40.563,40.105,39.672,39.480,39.525,39.521,39.137,
-38.307,37.315,36.558,36.214,36.123,35.968,35.565,34.978,34.406,33.981,33.679,33.387,33.027,32.602,32.157,31.723,
-31.300,30.867,30.406,29.905,29.376,28.850,28.376,27.990,27.702,27.493,27.331,27.178,26.998,26.764,26.485,26.211,
-26.000,25.869,25.776,25.660,25.498,25.327,25.200,25.135,25.105,25.077,25.035,24.986,24.938,24.889,24.841,24.804,
-24.781,24.761,24.725,24.669,24.610,24.561,24.507,24.423,24.300,24.161,24.031,23.903,23.742,23.534,23.301,23.086,
-22.898,22.705,22.467,22.181,21.880,21.596,21.329,21.059,20.772,20.471,20.154,19.804,19.414,19.005,18.621,18.293,
-18.010,17.734,17.441,17.139,16.843,16.550,16.242,15.919,15.620,15.390,15.232,15.096,14.926,14.723,14.555,14.487,
-14.506,14.510,14.393,14.155,13.930,13.879,14.046,14.298,14.415,14.266,13.888,13.415,12.928,12.378,11.679,10.843,
-10.022,9.393,9.003,8.731,8.406,7.946,7.408,6.901,6.485,6.146,5.839,5.534,5.216,4.870,4.480,4.050,
-3.606,3.171,2.747,2.324,1.911,1.532,1.195,.869,.504,.080,-.378,-.834,-1.285,-1.755,-2.247,-2.728,
--3.162,-3.562,-3.985,-4.471,-4.989,-5.463,-5.847,-6.181,-6.554,-7.020,-7.555,-8.085,-8.559,-8.978,-9.379,-9.786,
--10.202,-10.634,-11.097,-11.604,-12.137,-12.649,-13.103,-13.501,-13.889,-14.317,-14.803,-15.326,-15.852,-16.357,-16.841,-17.314,
--17.782,-18.245,-18.702,-19.155,-19.611,-20.068,-20.519,-20.959,-21.392,-21.829,-22.275,-22.718,-23.141,-23.537,-23.915,-24.294,
--24.683,-25.075,-25.461,-25.841,-26.226,-26.617,-27.003,-27.372,-27.725,-28.080,-28.448,-28.816,-29.154,-29.451,-29.725,-30.011,
--30.324,-30.652,-30.970,-31.271,-31.566,-31.860,-32.133,-32.355,-32.526,-32.681,-32.867,-33.093,-33.321,-33.500,-33.609,-33.673,
--33.731,-33.800,-33.866,-33.918,-33.960,-34.016,-34.099,-34.206,-34.322,-34.451,-34.609,-34.808,-35.037,-35.264,-35.457,-35.606,
--35.722,-35.818,-35.901,-35.971,-36.030,-36.085,-36.135,-36.180,-36.223,-36.270,-36.325,-36.368,-36.359,-36.271,-36.125,-35.990,
--35.942,-36.009,-36.158,-36.329,-36.472,-36.558,-36.568,-36.483,-36.316,-36.130,-36.014,-36.006,-36.050,-36.032,-35.879,-35.632,
--35.405,-35.289,-35.269,-35.254,-35.165,-34.998,-34.805,-34.630,-34.476,-34.329,-34.188,-34.059,-33.930,-33.765,-33.545,-33.312,
--33.147,-33.090,-33.085,-33.012,-32.791,-32.458,-32.132,-31.905,-31.769,-31.644,-31.464,-31.240,-31.029,-30.853,-30.669,-30.415,
--30.084,-29.740,-29.461,-29.263,-29.091,-28.874,-28.589,-28.274,-27.979,-27.727,-27.507,-27.293,-27.064,-26.806,-26.512,-26.186,
--25.850,-25.525,-25.209,-24.876,-24.503,-24.106,-23.719,-23.355,-22.982,-22.555,-22.082,-21.628,-21.262,-20.989,-20.741,-20.448,
--20.093,-19.703,-19.293,-18.833,-18.293,-17.705,-17.157,-16.713,-16.332,-15.887,-15.272,-14.497,-13.675,-12.921,-12.251,-11.572,
--10.755,-9.729,-8.526,-7.266,-6.089,-5.085,-4.247,-3.498,-2.757,-2.007,-1.292,-.658,-.100,.430,.950,1.406,
-1.713,1.849,1.904,2.034,2.351,2.866,3.505,4.174,4.784,5.246,5.464,5.386,5.075,4.712,4.507,4.562,
-4.805,5.039,5.097,4.974,4.826,4.836,5.030,5.205,5.049,4.382,3.340,2.329,1.770,1.823,2.309,2.889,
-3.323,3.599,3.846,4.161,4.518,4.830,5.069,5.295,5.584,5.940,6.286,6.539,6.679,6.761,6.857,7.006,
-7.204,7.424,7.631,7.792,7.886,7.929,7.975,8.080,8.254,8.444,8.572,8.604,8.592,8.626,8.770,9.011,
-9.279,9.515,9.711,9.908,10.145,10.428,10.730,11.010,11.250,11.461,11.685,11.972,12.364,12.873,13.476,14.137,
-14.825,15.521,16.196,16.800,17.272,17.581,17.748,17.843,17.947,18.129,18.444,18.934,19.613,20.440,21.312,22.111,
-22.761,23.256,23.644,23.976,24.274,24.531,24.725,24.821,24.790,24.621,24.350,24.056,23.820,23.687,23.650,23.686,
-23.788,23.972,24.255,24.637,25.090,25.575,26.052,26.493,26.899,27.308,27.769,28.289,28.801,29.178,29.308,29.154,
-28.757,28.184,27.477,26.652,25.730,24.757,23.802,22.948,22.274,21.833,21.605,21.478,21.302,21.004,20.675,20.525,
-20.721,21.241,21.876,22.386,22.658,22.740,22.751,22.756,22.739,22.642,22.428,22.093,21.655,21.154,20.656,20.237,
-19.928,19.679,19.374,18.908,18.255,17.488,16.727,16.070,15.542,15.102,14.690,14.272,13.863,13.504,13.221,13.008,
-12.839,12.710,12.637,12.606,12.538,12.323,11.917,11.395,10.906,10.553,10.328,10.190,10.183,10.467,11.144,12.063,
-12.786,12.832,12.022,10.634,9.232,8.295,7.942,7.947,7.978,7.851,7.590,7.314,7.095,6.913,6.716,6.495,
-6.275,6.062,5.819,5.506,5.142,4.808,4.575,4.433,4.307,4.141,3.965,3.868,3.898,3.998,4.051,3.988,
-3.843,3.699,3.598,3.490,3.298,2.996,2.637,2.298,2.017,1.773,1.528,1.261,.977,.692,.429,.203,
-.017,-.158,-.366,-.634,-.935,-1.218,-1.456,-1.681,-1.944,-2.251,-2.550,-2.782,-2.949,-3.120,-3.355,-3.651,
--3.950,-4.209,-4.443,-4.699,-4.998,-5.313,-5.599,-5.849,-6.091,-6.354,-6.635,-6.905,-7.143,-7.337,-7.487,-7.587,
--7.643,-7.680,-7.726,-7.795,-7.872,-7.937,-7.998,-8.090,-8.247,-8.468,-8.728,-8.994,-9.241,-9.454,-9.617,-9.721,
--9.782,-9.837,-9.917,-10.027,-10.159,-10.303,-10.458,-10.614,-10.740,-10.802,-10.801,-10.783,-10.805,-10.886,-10.992,-11.069,
--11.091,-11.078,-11.074,-11.104,-11.170,-11.249,-11.319,-11.367,-11.389,-11.393,-11.395,-11.413,-11.451,-11.507,-11.577,-11.661,
--11.754,-11.842,-11.910,-11.959,-12.009,-12.082,-12.172,-12.246,-12.277,-12.261,-12.222,-12.180,-12.134,-12.078,-12.022,-11.995,
--12.012,-12.050,-12.064,-12.027,-11.959,-11.914,-11.926,-11.988,-12.063,-12.122,-12.165,-12.209,-12.263,-12.316,-12.358,-12.392,
--12.427,-12.459,-12.468,-12.431,-12.358,-12.287,-12.250,-12.245,-12.230,-12.174,-12.086,-12.019,-12.022,-12.094,-12.183,-12.236,
--12.239,-12.225,-12.238,-12.295,-12.382,-12.471,-12.543,-12.592,-12.624,-12.648,-12.682,-12.734,-12.793,-12.834,-12.838,-12.808,
--12.775,-12.765,-12.776,-12.787,-12.779,-12.752,-12.717,-12.680,-12.645,-12.619,-12.607,-12.604,-12.580,-12.507,-12.389,-12.263,
--12.165,-12.098,-12.029,-11.934,-11.824,-11.738,-11.686,-11.634,-11.534,-11.379,-11.211,-11.082,-11.001,-10.931,-10.835,-10.715,
--10.603,-10.518,-10.445,-10.354,-10.241,-10.137,-10.079,-10.071,-10.079,-10.062,-10.010,-9.951,-9.916,-9.915,-9.926,-9.923,
--9.900,-9.870,-9.846,-9.822,-9.779,-9.706,-9.617,-9.539,-9.487,-9.451,-9.402,-9.322,-9.215,-9.098,-8.983,-8.872,
--8.763,-8.660,-8.568,-8.480,-8.382,-8.266,-8.141,-8.023,-7.918,-7.810,-7.682,-7.531,-7.382,-7.260,-7.173,-7.105,
--7.033,-6.933,-6.792,-6.605,-6.380,-6.141,-5.916,-5.717,-5.535,-5.346,-5.141,-4.934,-4.746,-4.585,-4.440,-4.289,
--4.127,-3.960,-3.799,-3.645,-3.490,-3.329,-3.168,-3.024,-2.909,-2.816,-2.727,-2.619,-2.493,-2.372,-2.291,-2.260,
--2.252,-2.221,-2.144,-2.041,-1.959,-1.924,-1.921,-1.907,-1.851,-1.756,-1.646,-1.535,-1.427,-1.321,-1.222,-1.128,
--1.025,-.897,-.750,-.613,-.507,-.419,-.307,-.140,.065,.261,.425,.575,.752,.974,1.222,1.473,
-1.726,1.995,2.275,2.538,2.764,2.974,3.216,3.519,3.866,4.207,4.516,4.799,5.072,5.333,5.577,5.820,
-6.096,6.416,6.746,7.040,7.301,7.596,7.976,8.413,8.810,9.109,9.352,9.631,9.978,10.322,10.574,10.729,
-10.847,10.915,10.784,10.294,9.510,8.832,8.817,9.829,11.797,14.242,16.537,18.182,18.982,19.091,18.940,19.050,
-19.757,21.007,22.405,23.509,24.135,24.405,24.519,24.511,24.241,23.616,22.749,21.888,21.190,20.613,20.034,19.437,
-18.938,18.627,18.443,18.227,17.891,17.491,17.124,16.791,16.405,15.927,15.458,15.157,15.067,15.075,15.024,14.882,
-14.755,14.763,14.916,15.117,15.261,15.305,15.259,15.144,14.973,14.765,14.535,14.277,13.979,13.672,13.452,13.408,
-13.531,13.701,13.801,13.844,13.953,14.211,14.539,14.745,14.711,14.496,14.248,14.024,13.719,13.203,12.490,11.773,
-11.252,10.946,10.667,10.175,9.362,8.301,7.156,6.060,5.060,4.157,3.358,2.699,2.214,1.894,1.665,1.410,
-1.037,.533,-.020,-.517,-.910,-1.235,-1.558,-1.905,-2.240,-2.522,-2.748,-2.959,-3.178,-3.390,-3.567,-3.711,
--3.862,-4.042,-4.231,-4.383,-4.487,-4.583,-4.720,-4.898,-5.076,-5.215,-5.327,-5.456,-5.629,-5.833,-6.032,-6.207,
--6.362,-6.507,-6.635,-6.731,-6.796,-6.847,-6.905,-6.977,-7.051,-7.109,-7.128,-7.094,-7.006,-6.887,-6.773,-6.691,
--6.641,-6.603,-6.568,-6.544,-6.539,-6.545,-6.527,-6.455,-6.324,-6.147,-5.940,-5.705,-5.446,-5.170,-4.888,-4.598,
--4.302,-4.012,-3.751,-3.520,-3.275,-2.947,-2.500,-1.970,-1.434,-.948,-.510,-.090,.326,.723,1.099,1.481,
-1.902,2.358,2.803,3.210,3.615,4.093,4.677,5.307,5.878,6.335,6.723,7.129,7.591,8.066,8.484,8.823,
-9.125,9.448,9.815,10.210,10.608,11.001,11.393,11.783,12.169,12.561,12.973,13.401,13.817,14.182,14.491,14.774,
-15.068,15.383,15.696,15.988,16.272,16.581,16.927,17.285,17.614,17.898,18.154,18.408,18.671,18.932,19.181,19.422,
-19.662,19.893,20.094,20.254,20.393,20.555,20.769,21.026,21.285,21.509,21.693,21.853,22.002,22.128,22.206,22.227,
-22.210,22.191,22.192,22.208,22.215,22.198,22.168,22.148,22.155,22.181,22.199,22.178,22.106,22.002,21.904,21.846,
-21.829,21.810,21.742,21.615,21.479,21.395,21.386,21.406,21.389,21.317,21.232,21.184,21.164,21.107,20.958,20.743,
-20.557,20.479,20.496,20.516,20.446,20.261,20.014,19.791,19.651,19.597,19.574,19.486,19.258,18.886,18.461,18.105,
-17.879,17.732,17.559,17.294,16.970,16.666,16.436,16.282,16.189,16.167,16.224,16.324,16.392,16.385,16.346,16.363,
-16.474,16.622,16.628,16.687,16.721,16.807,16.996,17.257,17.510,17.710,17.880,18.073,18.301,18.527,18.718,18.882,
-19.054,19.234,19.389,19.497,19.597,19.757,19.993,20.237,20.403,20.484,20.564,20.730,20.983,21.238,21.425,21.562,
-21.720,21.933,22.161,22.340,22.461,22.573,22.718,22.884,23.042,23.203,23.418,23.706,24.011,24.253,24.432,24.644,
-24.965,25.332,25.580,25.610,25.535,25.598,25.942,26.450,26.852,26.987,26.948,26.966,27.149,27.369,27.409,27.207,
-26.934,26.827,26.960,27.196,27.342,27.334,27.247,27.172,27.102,26.975,26.789,26.659,26.724,27.022,27.456,27.889,
-28.257,28.584,28.900,29.170,29.314,29.296,29.181,29.098,29.137,29.281,29.432,29.493,29.439,29.315,29.194,29.134,
-29.170,29.317,29.582,29.952,30.392,30.857,31.307,31.712,32.042,32.264,32.357,32.337,32.264,32.207,32.195,32.195,
-32.140,31.996,31.802,31.649,31.619,31.721,31.886,32.011,32.031,31.952,31.833,31.735,31.677,31.647,31.637,31.661,
-31.732,31.820,31.857,31.805,31.713,31.701,31.841,32.066,32.205,32.137,31.910,31.699,31.631,31.664,31.641,31.466,
-31.212,31.050,31.064,31.180,31.259,31.254,31.243,31.324,31.497,31.682,31.832,32.006,32.300,32.729,33.208,33.642,
-34.035,34.465,34.971,35.479,35.875,36.121,36.294,36.499,36.766,37.048,37.305,37.566,37.880,38.236,38.560,38.795,
-38.967,39.155,39.390,39.613,39.756,39.823,39.888,39.995,40.101,40.146,40.177,40.356,40.804,41.428,41.938,42.080,
-41.859,41.534,41.377,41.441,41.556,41.538,41.365,41.150,40.969,40.760,40.431,40.018,39.702,39.622,39.679,39.570,
-39.045,38.151,37.215,36.576,36.318,36.240,36.069,35.684,35.171,34.690,34.319,34.013,33.683,33.283,32.830,32.370,
-31.928,31.505,31.077,30.622,30.131,29.625,29.151,28.755,28.452,28.219,28.016,27.814,27.596,27.357,27.093,26.820,
-26.572,26.380,26.239,26.108,25.951,25.768,25.600,25.482,25.412,25.362,25.310,25.257,25.210,25.164,25.107,25.045,
-25.002,24.994,25.007,25.007,24.978,24.932,24.884,24.829,24.742,24.614,24.466,24.328,24.204,24.067,23.894,23.691,
-23.484,23.285,23.076,22.831,22.552,22.261,21.980,21.709,21.438,21.159,20.872,20.564,20.215,19.818,19.403,19.022,
-18.701,18.424,18.146,17.844,17.526,17.213,16.903,16.583,16.259,15.971,15.761,15.621,15.495,15.328,15.132,14.982,
-14.940,14.977,14.978,14.838,14.574,14.328,14.265,14.421,14.662,14.776,14.625,14.225,13.689,13.101,12.463,11.752,
-11.008,10.352,9.885,9.591,9.337,8.982,8.493,7.949,7.461,7.072,6.751,6.440,6.110,5.754,5.378,4.980,
-4.567,4.152,3.744,3.339,2.932,2.531,2.155,1.805,1.453,1.065,.636,.189,-.254,-.700,-1.168,-1.651,
--2.113,-2.531,-2.935,-3.385,-3.901,-4.431,-4.887,-5.238,-5.542,-5.901,-6.368,-6.907,-7.439,-7.918,-8.351,-8.769,
--9.186,-9.600,-10.022,-10.477,-10.982,-11.514,-12.022,-12.470,-12.873,-13.283,-13.741,-14.245,-14.759,-15.250,-15.712,-16.164,
--16.624,-17.095,-17.570,-18.039,-18.497,-18.946,-19.387,-19.825,-20.269,-20.723,-21.187,-21.649,-22.093,-22.508,-22.896,-23.274,
--23.658,-24.055,-24.458,-24.856,-25.244,-25.630,-26.020,-26.420,-26.828,-27.236,-27.639,-28.021,-28.365,-28.656,-28.905,-29.142,
--29.405,-29.707,-30.036,-30.368,-30.688,-31.001,-31.306,-31.591,-31.831,-32.023,-32.193,-32.382,-32.612,-32.866,-33.101,-33.285,
--33.409,-33.489,-33.544,-33.587,-33.632,-33.690,-33.767,-33.857,-33.952,-34.061,-34.209,-34.414,-34.661,-34.897,-35.067,-35.164,
--35.235,-35.344,-35.511,-35.697,-35.839,-35.903,-35.908,-35.902,-35.930,-35.999,-36.089,-36.162,-36.180,-36.115,-35.976,-35.810,
--35.690,-35.669,-35.746,-35.870,-35.988,-36.073,-36.125,-36.140,-36.100,-36.000,-35.880,-35.801,-35.790,-35.796,-35.728,-35.543,
--35.298,-35.103,-35.021,-35.012,-34.977,-34.854,-34.670,-34.495,-34.366,-34.255,-34.119,-33.950,-33.781,-33.633,-33.487,-33.307,
--33.095,-32.907,-32.793,-32.735,-32.651,-32.471,-32.209,-31.946,-31.756,-31.629,-31.501,-31.324,-31.115,-30.925,-30.767,-30.588,
--30.326,-29.984,-29.639,-29.373,-29.193,-29.028,-28.797,-28.489,-28.168,-27.904,-27.715,-27.560,-27.383,-27.157,-26.884,-26.577,
--26.246,-25.899,-25.545,-25.181,-24.802,-24.408,-24.020,-23.674,-23.381,-23.105,-22.790,-22.410,-21.996,-21.602,-21.254,-20.929,
--20.590,-20.228,-19.859,-19.485,-19.074,-18.591,-18.043,-17.486,-16.972,-16.499,-16.012,-15.463,-14.868,-14.287,-13.766,-13.288,
--12.774,-12.129,-11.292,-10.260,-9.088,-7.869,-6.704,-5.663,-4.762,-3.972,-3.256,-2.582,-1.928,-1.273,-.621,-.023,
-.429,.671,.748,.813,1.033,1.478,2.082,2.711,3.258,3.681,3.961,4.063,3.960,3.701,3.445,3.372,
-3.550,3.851,4.023,3.874,3.430,2.928,2.634,2.634,2.747,2.673,2.243,1.583,1.036,.915,1.269,1.876,
-2.439,2.811,3.051,3.304,3.631,3.977,4.260,4.475,4.703,5.011,5.379,5.715,5.936,6.039,6.081,6.134,
-6.235,6.393,6.596,6.818,7.019,7.163,7.250,7.321,7.431,7.591,7.762,7.890,7.959,8.006,8.086,8.227,
-8.413,8.610,8.801,8.993,9.201,9.438,9.707,9.997,10.285,10.545,10.777,11.017,11.328,11.745,12.250,12.780,
-13.298,13.831,14.439,15.133,15.831,16.397,16.746,16.903,16.980,17.096,17.320,17.684,18.212,18.919,19.771,20.668,
-21.478,22.119,22.591,22.960,23.290,23.598,23.863,24.047,24.126,24.097,23.980,23.811,23.628,23.453,23.286,23.130,
-23.021,23.026,23.211,23.586,24.100,24.658,25.160,25.533,25.762,25.907,26.090,26.435,26.968,27.573,28.049,28.232,
-28.092,27.706,27.157,26.458,25.574,24.513,23.387,22.389,21.701,21.398,21.411,21.547,21.573,21.346,20.918,20.529,
-20.462,20.836,21.506,22.168,22.577,22.692,22.637,22.548,22.455,22.308,22.071,21.764,21.420,21.031,20.567,20.040,
-19.530,19.120,18.811,18.501,18.071,17.480,16.785,16.085,15.448,14.884,14.378,13.919,13.503,13.130,12.798,12.520,
-12.316,12.202,12.165,12.155,12.101,11.938,11.646,11.257,10.838,10.444,10.071,9.682,9.291,9.045,9.183,9.860,
-10.935,11.946,12.331,11.791,10.503,9.018,7.901,7.393,7.342,7.413,7.363,7.171,6.949,6.776,6.631,6.450,
-6.219,5.978,5.759,5.528,5.227,4.855,4.497,4.253,4.139,4.071,3.954,3.779,3.628,3.578,3.617,3.656,
-3.621,3.520,3.417,3.342,3.254,3.081,2.802,2.465,2.147,1.888,1.673,1.463,1.233,.982,.729,.498,
-.305,.147,-.012,-.221,-.502,-.825,-1.129,-1.378,-1.592,-1.821,-2.091,-2.378,-2.644,-2.886,-3.138,-3.431,
--3.747,-4.043,-4.300,-4.544,-4.820,-5.135,-5.453,-5.732,-5.967,-6.191,-6.438,-6.711,-6.988,-7.243,-7.463,-7.640,
--7.765,-7.843,-7.894,-7.951,-8.025,-8.104,-8.167,-8.214,-8.274,-8.381,-8.552,-8.771,-9.010,-9.243,-9.451,-9.619,
--9.746,-9.842,-9.926,-10.012,-10.109,-10.223,-10.361,-10.521,-10.677,-10.787,-10.827,-10.818,-10.819,-10.880,-10.998,-11.125,
--11.212,-11.250,-11.267,-11.294,-11.340,-11.395,-11.445,-11.489,-11.530,-11.566,-11.596,-11.621,-11.650,-11.691,-11.744,-11.805,
--11.871,-11.937,-11.993,-12.033,-12.067,-12.117,-12.201,-12.305,-12.390,-12.425,-12.410,-12.376,-12.353,-12.341,-12.320,-12.281,
--12.240,-12.219,-12.216,-12.209,-12.182,-12.145,-12.130,-12.155,-12.206,-12.253,-12.281,-12.300,-12.330,-12.372,-12.416,-12.446,
--12.467,-12.485,-12.500,-12.494,-12.454,-12.392,-12.333,-12.292,-12.255,-12.191,-12.095,-12.003,-11.966,-12.005,-12.092,-12.171,
--12.210,-12.227,-12.265,-12.348,-12.460,-12.566,-12.641,-12.684,-12.709,-12.722,-12.729,-12.742,-12.779,-12.845,-12.920,-12.965,
--12.952,-12.887,-12.804,-12.741,-12.716,-12.721,-12.735,-12.735,-12.716,-12.691,-12.676,-12.675,-12.666,-12.617,-12.517,-12.392,
--12.283,-12.209,-12.148,-12.061,-11.941,-11.823,-11.747,-11.709,-11.663,-11.563,-11.415,-11.270,-11.169,-11.103,-11.026,-10.907,
--10.763,-10.637,-10.554,-10.496,-10.426,-10.333,-10.244,-10.190,-10.176,-10.172,-10.143,-10.084,-10.021,-9.985,-9.980,-9.986,
--9.976,-9.944,-9.905,-9.876,-9.850,-9.808,-9.738,-9.652,-9.576,-9.524,-9.483,-9.426,-9.336,-9.221,-9.101,-8.980,
--8.854,-8.718,-8.582,-8.463,-8.365,-8.275,-8.176,-8.072,-7.978,-7.901,-7.821,-7.714,-7.574,-7.424,-7.297,-7.207,
--7.141,-7.070,-6.972,-6.842,-6.680,-6.492,-6.290,-6.086,-5.885,-5.678,-5.455,-5.219,-4.995,-4.807,-4.660,-4.530,
--4.387,-4.223,-4.053,-3.895,-3.750,-3.601,-3.437,-3.264,-3.102,-2.968,-2.858,-2.752,-2.634,-2.507,-2.388,-2.293,
--2.223,-2.163,-2.092,-2.003,-1.908,-1.830,-1.782,-1.759,-1.740,-1.702,-1.634,-1.536,-1.417,-1.293,-1.175,-1.068,
--.965,-.852,-.725,-.599,-.490,-.399,-.296,-.150,.045,.251,.420,.533,.619,.727,.893,1.120,
-1.392,1.691,1.992,2.272,2.514,2.730,2.963,3.248,3.587,3.941,4.270,4.568,4.851,5.130,5.392,5.628,
-5.860,6.125,6.433,6.755,7.054,7.341,7.670,8.073,8.506,8.884,9.168,9.407,9.682,10.008,10.319,10.547,
-10.693,10.795,10.818,10.626,10.117,9.413,8.903,9.045,10.074,11.848,13.932,15.836,17.216,17.966,18.231,18.349,
-18.722,19.597,20.909,22.315,23.443,24.131,24.464,24.580,24.488,24.085,23.343,22.414,21.534,20.828,20.240,19.666,
-19.111,18.683,18.432,18.264,18.019,17.645,17.240,16.914,16.643,16.292,15.788,15.233,14.821,14.652,14.645,14.640,
-14.556,14.450,14.418,14.486,14.601,14.695,14.744,14.752,14.712,14.607,14.427,14.184,13.893,13.565,13.234,12.968,
-12.831,12.821,12.871,12.921,12.997,13.180,13.493,13.833,14.044,14.057,13.950,13.842,13.739,13.520,13.068,12.424,
-11.770,11.264,10.890,10.482,9.878,9.052,8.103,7.136,6.172,5.181,4.169,3.224,2.469,1.971,1.678,1.453,
-1.155,.721,.194,-.324,-.750,-1.078,-1.366,-1.673,-2.007,-2.330,-2.603,-2.825,-3.024,-3.219,-3.411,-3.599,
--3.796,-4.014,-4.230,-4.401,-4.502,-4.564,-4.652,-4.799,-4.983,-5.149,-5.276,-5.397,-5.555,-5.758,-5.972,-6.161,
--6.324,-6.474,-6.614,-6.723,-6.791,-6.837,-6.897,-6.981,-7.068,-7.128,-7.150,-7.146,-7.119,-7.058,-6.952,-6.818,
--6.688,-6.591,-6.526,-6.484,-6.461,-6.466,-6.493,-6.508,-6.466,-6.341,-6.143,-5.907,-5.661,-5.413,-5.153,-4.872,
--4.568,-4.252,-3.950,-3.681,-3.440,-3.191,-2.880,-2.483,-2.019,-1.531,-1.049,-.574,-.101,.358,.782,1.170,
-1.554,1.967,2.404,2.830,3.227,3.630,4.103,4.664,5.258,5.802,6.261,6.677,7.118,7.598,8.068,8.471,
-8.803,9.118,9.470,9.873,10.296,10.705,11.089,11.453,11.808,12.167,12.546,12.957,13.390,13.810,14.185,14.513,
-14.826,15.153,15.491,15.812,16.102,16.383,16.689,17.030,17.377,17.695,17.976,18.242,18.516,18.792,19.052,19.285,
-19.509,19.742,19.976,20.180,20.331,20.452,20.595,20.800,21.057,21.312,21.524,21.691,21.852,22.037,22.236,22.405,
-22.506,22.540,22.542,22.545,22.553,22.547,22.510,22.452,22.405,22.398,22.429,22.463,22.454,22.383,22.281,22.203,
-22.190,22.221,22.220,22.118,21.923,21.727,21.637,21.680,21.771,21.788,21.677,21.496,21.351,21.292,21.274,21.221,
-21.109,20.987,20.906,20.859,20.780,20.613,20.370,20.117,19.918,19.792,19.709,19.622,19.485,19.270,18.986,18.687,
-18.450,18.316,18.243,18.131,17.896,17.544,17.160,16.847,16.657,16.577,16.559,16.551,16.518,16.449,16.373,16.345,
-16.399,16.516,16.628,16.702,16.737,16.806,16.961,17.198,17.457,17.672,17.830,17.980,18.171,18.403,18.631,18.822,
-18.984,19.144,19.295,19.407,19.470,19.531,19.659,19.869,20.098,20.268,20.366,20.462,20.622,20.845,21.069,21.253,
-21.420,21.621,21.863,22.095,22.277,22.426,22.597,22.806,23.010,23.177,23.346,23.597,23.944,24.291,24.523,24.649,
-24.811,25.125,25.516,25.757,25.719,25.566,25.669,26.265,27.192,27.977,28.215,27.890,27.345,26.963,26.877,26.958,
-27.033,27.065,27.131,27.276,27.427,27.477,27.394,27.251,27.132,27.053,26.987,26.946,27.016,27.276,27.712,28.202,
-28.612,28.888,29.059,29.170,29.227,29.215,29.161,29.141,29.230,29.425,29.639,29.769,29.767,29.664,29.529,29.418,
-29.368,29.407,29.569,29.874,30.305,30.807,31.320,31.803,32.237,32.594,32.832,32.925,32.891,32.799,32.714,32.653,
-32.570,32.420,32.213,32.031,31.970,32.060,32.233,32.367,32.370,32.237,32.043,31.880,31.790,31.759,31.753,31.765,
-31.816,31.911,32.001,32.014,31.930,31.831,31.838,31.993,32.192,32.266,32.141,31.919,31.786,31.825,31.933,31.932,
-31.758,31.535,31.444,31.537,31.701,31.786,31.770,31.761,31.856,32.031,32.187,32.290,32.423,32.703,33.142,33.642,
-34.104,34.538,35.018,35.567,36.094,36.489,36.741,36.948,37.207,37.511,37.785,37.996,38.210,38.505,38.867,39.194,
-39.408,39.542,39.695,39.908,40.121,40.252,40.307,40.369,40.482,40.591,40.625,40.634,40.787,41.203,41.775,42.217,
-42.301,42.073,41.796,41.697,41.764,41.800,41.653,41.363,41.076,40.857,40.629,40.311,39.964,39.761,39.778,39.849,
-39.667,39.054,38.147,37.292,36.763,36.563,36.472,36.270,35.902,35.461,35.053,34.694,34.330,33.914,33.449,32.973,
-32.515,32.077,31.651,31.224,30.787,30.344,29.913,29.532,29.226,28.983,28.756,28.503,28.215,27.918,27.641,27.395,
-27.179,26.986,26.811,26.641,26.458,26.260,26.070,25.920,25.817,25.739,25.660,25.578,25.509,25.458,25.410,25.349,
-25.288,25.262,25.286,25.331,25.348,25.312,25.245,25.179,25.116,25.027,24.891,24.726,24.576,24.461,24.361,24.238,
-24.070,23.866,23.644,23.412,23.167,22.910,22.645,22.373,22.089,21.796,21.502,21.213,20.915,20.577,20.192,19.787,
-19.416,19.106,18.835,18.559,18.249,17.918,17.592,17.276,16.962,16.652,16.376,16.166,16.016,15.882,15.727,15.565,
-15.452,15.423,15.434,15.381,15.192,14.906,14.666,14.614,14.773,15.012,15.132,14.993,14.583,13.988,13.308,12.606,
-11.923,11.312,10.830,10.486,10.214,9.905,9.490,8.992,8.492,8.060,7.699,7.367,7.022,6.653,6.268,5.876,
-5.477,5.078,4.692,4.322,3.954,3.573,3.181,2.797,2.430,2.063,1.672,1.247,.803,.354,-.102,-.571,
--1.044,-1.494,-1.913,-2.329,-2.787,-3.291,-3.793,-4.228,-4.582,-4.912,-5.292,-5.749,-6.245,-6.729,-7.180,-7.616,
--8.052,-8.486,-8.910,-9.343,-9.815,-10.335,-10.867,-11.357,-11.784,-12.185,-12.617,-13.109,-13.638,-14.154,-14.629,-15.071,
--15.512,-15.973,-16.456,-16.946,-17.424,-17.879,-18.310,-18.727,-19.151,-19.599,-20.075,-20.563,-21.041,-21.494,-21.919,-22.325,
--22.720,-23.111,-23.501,-23.893,-24.285,-24.675,-25.060,-25.447,-25.849,-26.272,-26.711,-27.143,-27.535,-27.868,-28.140,-28.375,
--28.612,-28.880,-29.190,-29.524,-29.859,-30.179,-30.486,-30.791,-31.090,-31.361,-31.583,-31.761,-31.926,-32.118,-32.354,-32.614,
--32.856,-33.043,-33.167,-33.248,-33.317,-33.398,-33.497,-33.602,-33.697,-33.778,-33.868,-34.000,-34.190,-34.413,-34.616,-34.753,
--34.829,-34.897,-35.017,-35.199,-35.395,-35.535,-35.585,-35.570,-35.551,-35.575,-35.652,-35.752,-35.827,-35.841,-35.778,-35.659,
--35.531,-35.451,-35.447,-35.505,-35.579,-35.636,-35.674,-35.709,-35.742,-35.746,-35.699,-35.612,-35.527,-35.469,-35.414,-35.307,
--35.130,-34.933,-34.795,-34.747,-34.737,-34.681,-34.540,-34.360,-34.216,-34.133,-34.066,-33.947,-33.761,-33.553,-33.376,-33.238,
--33.105,-32.950,-32.786,-32.644,-32.529,-32.402,-32.227,-32.011,-31.799,-31.629,-31.484,-31.316,-31.103,-30.878,-30.692,-30.551,
--30.395,-30.159,-29.844,-29.524,-29.277,-29.106,-28.938,-28.699,-28.390,-28.088,-27.865,-27.728,-27.611,-27.445,-27.210,-26.928,
--26.626,-26.307,-25.958,-25.573,-25.166,-24.754,-24.356,-23.994,-23.688,-23.443,-23.230,-22.997,-22.700,-22.336,-21.936,-21.532,
--21.131,-20.720,-20.296,-19.873,-19.464,-19.059,-18.627,-18.148,-17.623,-17.073,-16.525,-15.997,-15.507,-15.069,-14.682,-14.318,
--13.934,-13.495,-12.980,-12.371,-11.631,-10.727,-9.662,-8.505,-7.360,-6.321,-5.419,-4.619,-3.864,-3.109,-2.350,-1.634,
--1.039,-.632,-.410,-.279,-.088,.276,.816,1.429,1.987,2.418,2.720,2.904,2.958,2.861,2.660,2.489,
-2.506,2.759,3.115,3.314,3.139,2.572,1.817,1.160,.777,.630,.539,.367,.148,.059,.254,.724,
-1.302,1.805,2.168,2.455,2.753,3.079,3.378,3.615,3.826,4.085,4.421,4.776,5.061,5.229,5.306,5.359,
-5.435,5.552,5.712,5.914,6.146,6.377,6.568,6.711,6.830,6.950,7.065,7.147,7.190,7.228,7.315,7.466,
-7.648,7.812,7.945,8.073,8.233,8.435,8.673,8.947,9.260,9.593,9.898,10.140,10.352,10.629,11.047,11.583,
-12.136,12.625,13.082,13.624,14.316,15.077,15.718,16.088,16.193,16.176,16.215,16.417,16.817,17.412,18.185,19.082,
-19.990,20.787,21.404,21.865,22.245,22.596,22.909,23.135,23.237,23.224,23.143,23.046,22.966,22.901,22.822,22.700,
-22.547,22.436,22.470,22.718,23.166,23.719,24.246,24.640,24.839,24.855,24.779,24.771,24.988,25.482,26.141,26.741,
-27.072,27.046,26.687,26.048,25.151,24.021,22.772,21.633,20.862,20.607,20.810,21.226,21.539,21.517,21.136,20.603,
-20.252,20.344,20.889,21.638,22.257,22.547,22.544,22.411,22.258,22.072,21.791,21.418,21.038,20.713,20.401,19.999,
-19.464,18.871,18.349,17.954,17.621,17.232,16.725,16.121,15.481,14.844,14.230,13.664,13.180,12.793,12.473,12.177,
-11.900,11.692,11.600,11.604,11.607,11.496,11.220,10.820,10.390,10.017,9.725,9.468,9.170,8.803,8.453,8.324,
-8.623,9.377,10.326,11.008,11.021,10.286,9.099,7.933,7.131,6.747,6.615,6.546,6.469,6.403,6.355,6.270,
-6.092,5.836,5.585,5.399,5.242,5.023,4.697,4.328,4.033,3.871,3.790,3.695,3.545,3.387,3.287,3.254,
-3.237,3.183,3.101,3.035,3.002,2.957,2.832,2.599,2.300,2.003,1.750,1.540,1.347,1.151,.948,.744,
-.553,.386,.242,.093,-.103,-.374,-.698,-1.020,-1.295,-1.519,-1.728,-1.958,-2.216,-2.493,-2.785,-3.099,
--3.433,-3.760,-4.055,-4.323,-4.598,-4.913,-5.260,-5.591,-5.869,-6.097,-6.312,-6.549,-6.813,-7.079,-7.324,-7.535,
--7.710,-7.847,-7.949,-8.031,-8.113,-8.206,-8.301,-8.381,-8.443,-8.503,-8.586,-8.705,-8.862,-9.045,-9.239,-9.432,
--9.613,-9.777,-9.921,-10.045,-10.147,-10.233,-10.320,-10.432,-10.570,-10.707,-10.801,-10.835,-10.841,-10.875,-10.969,-11.102,
--11.220,-11.293,-11.334,-11.379,-11.447,-11.520,-11.572,-11.600,-11.621,-11.656,-11.707,-11.762,-11.811,-11.857,-11.907,-11.963,
--12.020,-12.072,-12.114,-12.141,-12.154,-12.164,-12.191,-12.248,-12.326,-12.393,-12.425,-12.428,-12.432,-12.463,-12.510,-12.542,
--12.535,-12.493,-12.441,-12.395,-12.357,-12.324,-12.302,-12.302,-12.323,-12.345,-12.350,-12.338,-12.329,-12.343,-12.377,-12.413,
--12.436,-12.446,-12.451,-12.447,-12.426,-12.385,-12.345,-12.323,-12.317,-12.295,-12.230,-12.131,-12.046,-12.023,-12.065,-12.126,
--12.159,-12.157,-12.161,-12.209,-12.304,-12.406,-12.475,-12.508,-12.531,-12.570,-12.623,-12.674,-12.719,-12.773,-12.852,-12.946,
--13.016,-13.022,-12.956,-12.852,-12.766,-12.734,-12.754,-12.792,-12.808,-12.787,-12.743,-12.700,-12.666,-12.626,-12.556,-12.453,
--12.346,-12.265,-12.212,-12.160,-12.079,-11.974,-11.878,-11.817,-11.779,-11.719,-11.612,-11.476,-11.354,-11.268,-11.197,-11.099,
--10.959,-10.808,-10.685,-10.607,-10.550,-10.482,-10.399,-10.323,-10.279,-10.266,-10.257,-10.224,-10.163,-10.098,-10.055,-10.044,
--10.047,-10.041,-10.010,-9.962,-9.908,-9.855,-9.798,-9.733,-9.665,-9.607,-9.560,-9.510,-9.437,-9.334,-9.215,-9.098,
--8.983,-8.854,-8.701,-8.532,-8.372,-8.238,-8.129,-8.034,-7.950,-7.879,-7.822,-7.762,-7.681,-7.577,-7.466,-7.371,
--7.292,-7.212,-7.109,-6.976,-6.825,-6.668,-6.510,-6.352,-6.188,-6.010,-5.803,-5.560,-5.296,-5.045,-4.840,-4.681,
--4.540,-4.386,-4.214,-4.044,-3.896,-3.762,-3.621,-3.457,-3.279,-3.111,-2.968,-2.844,-2.727,-2.612,-2.504,-2.404,
--2.304,-2.195,-2.078,-1.971,-1.887,-1.826,-1.774,-1.715,-1.649,-1.586,-1.531,-1.475,-1.405,-1.311,-1.200,-1.081,
--.961,-.840,-.719,-.608,-.517,-.440,-.349,-.212,-.019,.201,.393,.520,.581,.619,.688,.828,
-1.051,1.343,1.671,1.993,2.278,2.526,2.768,3.045,3.369,3.714,4.040,4.334,4.620,4.926,5.246,5.544,
-5.799,6.030,6.277,6.561,6.860,7.152,7.447,7.786,8.180,8.586,8.937,9.211,9.456,9.727,10.022,10.287,
-10.479,10.610,10.696,10.681,10.450,9.965,9.396,9.095,9.390,10.373,11.852,13.487,14.978,16.151,16.960,17.470,
-17.871,18.430,19.354,20.638,22.038,23.239,24.050,24.464,24.553,24.342,23.816,23.032,22.160,21.383,20.754,20.185,
-19.591,19.010,18.566,18.308,18.131,17.880,17.509,17.117,16.809,16.557,16.223,15.725,15.152,14.690,14.452,14.387,
-14.357,14.276,14.172,14.111,14.110,14.138,14.165,14.200,14.257,14.316,14.318,14.224,14.034,13.781,13.492,13.189,
-12.897,12.648,12.462,12.344,12.310,12.394,12.618,12.936,13.231,13.396,13.425,13.404,13.405,13.388,13.224,12.833,
-12.277,11.711,11.237,10.810,10.295,9.610,8.788,7.918,7.038,6.102,5.063,3.970,2.972,2.221,1.756,1.482,
-1.234,.890,.432,-.068,-.520,-.883,-1.182,-1.474,-1.792,-2.121,-2.423,-2.677,-2.890,-3.085,-3.276,-3.467,
--3.668,-3.890,-4.129,-4.346,-4.498,-4.583,-4.651,-4.759,-4.917,-5.082,-5.210,-5.311,-5.435,-5.617,-5.833,-6.033,
--6.195,-6.344,-6.506,-6.668,-6.792,-6.864,-6.917,-6.997,-7.107,-7.199,-7.230,-7.207,-7.177,-7.166,-7.151,-7.085,
--6.952,-6.788,-6.643,-6.538,-6.467,-6.421,-6.401,-6.408,-6.412,-6.365,-6.236,-6.036,-5.801,-5.558,-5.308,-5.033,
--4.731,-4.425,-4.139,-3.886,-3.652,-3.409,-3.132,-2.810,-2.444,-2.044,-1.618,-1.166,-.689,-.205,.264,.702,
-1.120,1.549,2.006,2.472,2.910,3.309,3.708,4.164,4.698,5.270,5.819,6.314,6.772,7.227,7.682,8.108,
-8.481,8.817,9.158,9.539,9.952,10.370,10.766,11.137,11.489,11.833,12.181,12.547,12.940,13.351,13.754,14.132,
-14.487,14.842,15.210,15.575,15.914,16.220,16.519,16.838,17.176,17.508,17.810,18.085,18.356,18.630,18.891,19.116,
-19.311,19.507,19.731,19.973,20.191,20.358,20.494,20.652,20.869,21.129,21.376,21.568,21.719,21.880,22.095,22.353,
-22.599,22.780,22.881,22.927,22.947,22.945,22.907,22.828,22.733,22.661,22.634,22.639,22.638,22.598,22.524,22.451,
-22.421,22.443,22.474,22.450,22.329,22.143,21.979,21.924,21.988,22.089,22.114,22.008,21.812,21.624,21.517,21.494,
-21.510,21.518,21.490,21.404,21.230,20.958,20.626,20.313,20.084,19.936,19.813,19.660,19.473,19.290,19.140,19.016,
-18.896,18.772,18.651,18.525,18.357,18.104,17.771,17.420,17.133,16.956,16.872,16.823,16.762,16.674,16.584,16.528,
-16.532,16.586,16.654,16.702,16.804,16.829,16.933,17.120,17.348,17.554,17.707,17.841,18.016,18.261,18.538,18.777,
-18.945,19.067,19.191,19.327,19.445,19.521,19.578,19.667,19.811,19.978,20.123,20.238,20.359,20.515,20.697,20.871,
-21.040,21.246,21.514,21.809,22.059,22.236,22.394,22.609,22.890,23.166,23.384,23.581,23.851,24.214,24.566,24.780,
-24.868,24.994,25.297,25.695,25.929,25.841,25.614,25.684,26.356,27.468,28.452,28.755,28.275,27.404,26.697,26.467,
-26.652,26.992,27.279,27.460,27.558,27.580,27.509,27.365,27.226,27.170,27.219,27.345,27.526,27.778,28.114,28.498,
-28.848,29.090,29.209,29.242,29.232,29.203,29.176,29.194,29.302,29.493,29.697,29.826,29.838,29.776,29.711,29.685,
-29.688,29.701,29.754,29.919,30.254,30.747,31.321,31.888,32.397,32.833,33.182,33.413,33.502,33.464,33.360,33.247,
-33.136,32.990,32.786,32.559,32.397,32.372,32.478,32.620,32.678,32.594,32.396,32.168,31.983,31.862,31.789,31.759,
-31.795,31.919,32.098,32.241,32.260,32.162,32.061,32.087,32.260,32.452,32.499,32.359,32.156,32.062,32.122,32.213,
-32.178,32.001,31.829,31.822,31.987,32.180,32.261,32.241,32.245,32.361,32.547,32.703,32.803,32.942,33.230,33.666,
-34.153,34.608,35.049,35.542,36.083,36.582,36.953,37.223,37.498,37.836,38.178,38.428,38.586,38.762,39.058,39.439,
-39.765,39.949,40.046,40.186,40.413,40.643,40.769,40.798,40.832,40.941,41.073,41.147,41.192,41.359,41.751,42.260,
-42.614,42.622,42.352,42.062,41.941,41.937,41.858,41.597,41.241,40.948,40.754,40.554,40.262,39.951,39.790,39.828,
-39.882,39.667,39.067,38.254,37.546,37.136,36.967,36.831,36.578,36.211,35.818,35.444,35.056,34.606,34.098,33.583,
-33.107,32.671,32.251,31.835,31.428,31.036,30.659,30.299,29.976,29.702,29.460,29.207,28.909,28.574,28.249,27.978,
-27.773,27.606,27.443,27.258,27.042,26.806,26.578,26.392,26.263,26.175,26.092,25.993,25.890,25.809,25.754,25.702,
-25.640,25.585,25.577,25.624,25.680,25.685,25.619,25.517,25.429,25.359,25.271,25.130,24.954,24.795,24.692,24.625,
-24.544,24.408,24.215,23.990,23.759,23.530,23.297,23.049,22.774,22.467,22.140,21.816,21.511,21.211,20.887,20.522,
-20.140,19.787,19.488,19.225,18.954,18.647,18.316,17.989,17.683,17.390,17.107,16.846,16.626,16.450,16.299,16.156,
-16.033,15.953,15.913,15.860,15.721,15.473,15.187,14.991,14.987,15.162,15.386,15.484,15.332,14.912,14.293,13.587,
-12.895,12.292,11.815,11.453,11.149,10.821,10.416,9.942,9.458,9.024,8.651,8.305,7.946,7.564,7.176,6.790,
-6.402,6.007,5.614,5.247,4.908,4.574,4.216,3.828,3.435,3.059,2.698,2.321,1.907,1.455,.983,.507,
-.031,-.437,-.889,-1.324,-1.754,-2.198,-2.652,-3.088,-3.485,-3.856,-4.241,-4.671,-5.137,-5.602,-6.041,-6.461,
--6.885,-7.320,-7.755,-8.188,-8.641,-9.140,-9.674,-10.196,-10.661,-11.069,-11.473,-11.929,-12.449,-12.992,-13.511,-13.986,
--14.436,-14.891,-15.365,-15.853,-16.342,-16.813,-17.256,-17.673,-18.083,-18.515,-18.987,-19.490,-19.991,-20.465,-20.907,-21.334,
--21.759,-22.181,-22.587,-22.977,-23.362,-23.753,-24.149,-24.540,-24.922,-25.308,-25.715,-26.141,-26.563,-26.951,-27.282,-27.561,
--27.811,-28.064,-28.348,-28.670,-29.018,-29.365,-29.686,-29.980,-30.266,-30.559,-30.850,-31.109,-31.313,-31.478,-31.651,-31.874,
--32.143,-32.410,-32.622,-32.763,-32.863,-32.971,-33.112,-33.273,-33.418,-33.524,-33.595,-33.662,-33.756,-33.894,-34.062,-34.233,
--34.385,-34.513,-34.634,-34.768,-34.914,-35.051,-35.149,-35.198,-35.212,-35.222,-35.252,-35.304,-35.362,-35.404,-35.412,-35.382,
--35.328,-35.277,-35.255,-35.268,-35.299,-35.325,-35.337,-35.346,-35.370,-35.406,-35.423,-35.391,-35.307,-35.198,-35.090,-34.983,
--34.863,-34.726,-34.601,-34.526,-34.502,-34.482,-34.411,-34.276,-34.122,-34.007,-33.945,-33.889,-33.775,-33.584,-33.355,-33.149,
--32.997,-32.883,-32.775,-32.655,-32.523,-32.380,-32.217,-32.026,-31.819,-31.625,-31.455,-31.288,-31.087,-30.849,-30.612,-30.427,
--30.295,-30.163,-29.967,-29.701,-29.424,-29.203,-29.041,-28.875,-28.644,-28.353,-28.075,-27.876,-27.753,-27.637,-27.460,-27.211,
--26.923,-26.627,-26.315,-25.962,-25.557,-25.128,-24.716,-24.346,-24.024,-23.747,-23.512,-23.304,-23.088,-22.823,-22.489,-22.099,
--21.682,-21.256,-20.814,-20.346,-19.858,-19.378,-18.931,-18.511,-18.086,-17.619,-17.098,-16.553,-16.040,-15.611,-15.279,-15.001,
--14.709,-14.354,-13.939,-13.499,-13.052,-12.561,-11.948,-11.161,-10.218,-9.198,-8.187,-7.218,-6.272,-5.314,-4.348,-3.433,
--2.647,-2.049,-1.633,-1.329,-1.034,-.666,-.205,.306,.795,1.212,1.543,1.794,1.953,1.994,1.907,1.745,
-1.627,1.680,1.951,2.355,2.693,2.742,2.383,1.667,.793,.003,-.544,-.820,-.889,-.818,-.628,-.315,
-.103,.570,1.026,1.442,1.823,2.168,2.458,2.685,2.886,3.133,3.468,3.850,4.182,4.391,4.487,4.545,
-4.634,4.773,4.938,5.114,5.304,5.513,5.728,5.927,6.108,6.280,6.436,6.537,6.553,6.512,6.498,6.587,
-6.774,6.979,7.127,7.217,7.316,7.478,7.704,7.963,8.242,8.557,8.897,9.207,9.434,9.618,9.889,10.361,
-11.007,11.665,12.188,12.586,13.024,13.646,14.418,15.126,15.550,15.636,15.523,15.433,15.535,15.897,16.509,17.321,
-18.243,19.151,19.934,20.550,21.042,21.478,21.883,22.214,22.406,22.438,22.352,22.222,22.112,22.048,22.017,21.989,
-21.942,21.895,21.909,22.055,22.361,22.776,23.195,23.516,23.680,23.683,23.562,23.393,23.299,23.414,23.814,24.442,
-25.113,25.598,25.714,25.370,24.561,23.360,21.949,20.624,19.726,19.483,19.876,20.620,21.300,21.576,21.343,20.769,
-20.200,19.978,20.255,20.909,21.633,22.130,22.294,22.224,22.077,21.916,21.684,21.317,20.858,20.426,20.092,19.794,
-19.399,18.844,18.211,17.648,17.231,16.908,16.562,16.112,15.554,14.924,14.257,13.591,12.990,12.516,12.179,11.915,
-11.647,11.363,11.129,11.010,10.986,10.943,10.760,10.400,9.932,9.469,9.099,8.852,8.700,8.572,8.378,8.079,
-7.767,7.657,7.966,8.708,9.603,10.195,10.138,9.412,8.322,7.270,6.516,6.092,5.897,5.829,5.830,5.846,
-5.801,5.638,5.383,5.131,4.965,4.869,4.746,4.516,4.197,3.882,3.649,3.499,3.376,3.242,3.109,3.008,
-2.940,2.869,2.772,2.674,2.619,2.617,2.620,2.554,2.382,2.126,1.843,1.578,1.346,1.145,.968,.810,
-.660,.510,.357,.204,.046,-.140,-.375,-.656,-.952,-1.228,-1.468,-1.685,-1.906,-2.147,-2.418,-2.718,
--3.042,-3.374,-3.691,-3.986,-4.278,-4.599,-4.964,-5.347,-5.700,-5.989,-6.226,-6.450,-6.691,-6.949,-7.199,-7.421,
--7.607,-7.765,-7.901,-8.022,-8.137,-8.253,-8.375,-8.499,-8.615,-8.715,-8.799,-8.874,-8.950,-9.040,-9.155,-9.299,
--9.468,-9.654,-9.846,-10.032,-10.196,-10.322,-10.408,-10.474,-10.550,-10.651,-10.758,-10.839,-10.881,-10.913,-10.978,-11.090,
--11.218,-11.315,-11.368,-11.405,-11.464,-11.552,-11.637,-11.686,-11.701,-11.710,-11.743,-11.803,-11.872,-11.936,-11.994,-12.053,
--12.113,-12.166,-12.206,-12.234,-12.249,-12.253,-12.251,-12.255,-12.278,-12.320,-12.366,-12.403,-12.435,-12.478,-12.544,-12.617,
--12.669,-12.681,-12.657,-12.619,-12.580,-12.545,-12.510,-12.481,-12.460,-12.443,-12.414,-12.369,-12.321,-12.293,-12.298,-12.325,
--12.350,-12.363,-12.371,-12.379,-12.379,-12.357,-12.316,-12.282,-12.280,-12.305,-12.320,-12.291,-12.223,-12.162,-12.146,-12.174,
--12.206,-12.206,-12.182,-12.171,-12.203,-12.266,-12.322,-12.348,-12.356,-12.383,-12.448,-12.538,-12.627,-12.701,-12.773,-12.856,
--12.947,-13.014,-13.028,-12.985,-12.915,-12.859,-12.845,-12.866,-12.894,-12.896,-12.857,-12.788,-12.713,-12.644,-12.577,-12.500,
--12.412,-12.325,-12.252,-12.189,-12.119,-12.035,-11.948,-11.878,-11.829,-11.781,-11.708,-11.603,-11.490,-11.393,-11.317,-11.237,
--11.132,-11.007,-10.884,-10.784,-10.702,-10.619,-10.527,-10.436,-10.370,-10.337,-10.325,-10.312,-10.280,-10.229,-10.173,-10.130,
--10.112,-10.112,-10.111,-10.089,-10.033,-9.950,-9.858,-9.774,-9.705,-9.651,-9.607,-9.562,-9.502,-9.416,-9.305,-9.184,
--9.065,-8.950,-8.824,-8.670,-8.492,-8.307,-8.140,-8.003,-7.897,-7.819,-7.762,-7.716,-7.669,-7.611,-7.545,-7.482,
--7.422,-7.351,-7.248,-7.105,-6.938,-6.771,-6.624,-6.495,-6.376,-6.251,-6.100,-5.905,-5.658,-5.376,-5.096,-4.855,
--4.661,-4.490,-4.321,-4.150,-3.996,-3.866,-3.746,-3.610,-3.448,-3.277,-3.116,-2.972,-2.832,-2.692,-2.566,-2.466,
--2.385,-2.289,-2.158,-2.004,-1.874,-1.802,-1.777,-1.754,-1.691,-1.588,-1.474,-1.379,-1.308,-1.244,-1.170,-1.080,
--.977,-.862,-.736,-.613,-.514,-.445,-.384,-.290,-.134,.070,.275,.427,.510,.546,.581,.659,
-.807,1.033,1.325,1.653,1.979,2.277,2.553,2.838,3.156,3.498,3.827,4.115,4.379,4.660,4.984,5.330,
-5.651,5.923,6.166,6.419,6.701,6.997,7.290,7.592,7.928,8.298,8.665,8.987,9.263,9.530,9.812,10.085,
-10.306,10.462,10.576,10.647,10.602,10.348,9.900,9.463,9.342,9.740,10.627,11.787,12.994,14.136,15.195,16.152,
-16.970,17.665,18.375,19.288,20.480,21.819,23.043,23.920,24.361,24.387,24.055,23.439,22.664,21.904,21.284,20.797,
-20.329,19.796,19.239,18.781,18.480,18.258,17.987,17.621,17.235,16.914,16.641,16.312,15.859,15.341,14.892,14.594,
-14.413,14.263,14.102,13.962,13.883,13.857,13.841,13.816,13.815,13.876,13.983,14.069,14.071,13.977,13.820,13.633,
-13.422,13.172,12.878,12.570,12.307,12.164,12.194,12.387,12.655,12.884,13.007,13.048,13.080,13.129,13.124,12.962,
-12.606,12.132,11.653,11.208,10.733,10.135,9.390,8.550,7.669,6.738,5.708,4.585,3.483,2.568,1.942,1.576,
-1.329,1.057,.691,.257,-.179,-.568,-.908,-1.230,-1.560,-1.893,-2.204,-2.471,-2.698,-2.910,-3.122,-3.334,
--3.538,-3.740,-3.950,-4.168,-4.363,-4.511,-4.619,-4.731,-4.878,-5.047,-5.191,-5.289,-5.376,-5.508,-5.697,-5.896,
--6.055,-6.177,-6.312,-6.496,-6.696,-6.851,-6.939,-7.002,-7.097,-7.222,-7.314,-7.321,-7.262,-7.207,-7.201,-7.216,
--7.184,-7.073,-6.913,-6.759,-6.638,-6.540,-6.451,-6.376,-6.324,-6.280,-6.201,-6.059,-5.862,-5.641,-5.411,-5.156,
--4.858,-4.533,-4.231,-3.987,-3.794,-3.598,-3.352,-3.048,-2.715,-2.380,-2.041,-1.674,-1.257,-.798,-.328,.124,
-.558,.999,1.472,1.975,2.473,2.927,3.334,3.730,4.174,4.693,5.271,5.859,6.414,6.919,7.375,7.791,
-8.174,8.537,8.897,9.271,9.661,10.057,10.448,10.831,11.209,11.579,11.941,12.298,12.662,13.041,13.432,13.821,
-14.198,14.567,14.938,15.311,15.673,16.014,16.339,16.664,16.996,17.323,17.624,17.894,18.152,18.412,18.669,18.900,
-19.094,19.272,19.474,19.720,19.990,20.238,20.440,20.617,20.814,21.055,21.318,21.554,21.734,21.881,22.046,22.269,
-22.537,22.802,23.017,23.165,23.257,23.302,23.291,23.216,23.093,22.970,22.892,22.867,22.865,22.842,22.787,22.725,
-22.691,22.691,22.700,22.680,22.609,22.497,22.378,22.284,22.236,22.233,22.249,22.248,22.198,22.091,21.951,21.828,
-21.772,21.803,21.885,21.928,21.828,21.538,21.113,20.692,20.407,20.285,20.227,20.093,19.819,19.472,19.184,19.039,
-19.016,19.015,18.950,18.798,18.585,18.341,18.078,17.803,17.540,17.325,17.180,17.094,17.035,16.978,16.920,16.872,
-16.845,16.837,16.832,16.817,16.804,16.879,16.921,17.041,17.217,17.400,17.551,17.672,17.814,18.031,18.325,18.634,
-18.875,19.018,19.101,19.193,19.324,19.469,19.589,19.676,19.750,19.830,19.916,20.001,20.099,20.230,20.397,20.569,
-20.724,20.889,21.114,21.418,21.744,22.008,22.192,22.371,22.636,22.990,23.344,23.620,23.840,24.099,24.437,24.767,
-24.972,25.055,25.170,25.456,25.852,26.111,26.060,25.833,25.817,26.313,27.209,28.008,28.213,27.722,26.903,26.286,
-26.179,26.510,26.989,27.365,27.560,27.615,27.587,27.510,27.421,27.387,27.472,27.687,27.989,28.310,28.605,28.850,
-29.032,29.144,29.195,29.211,29.218,29.222,29.223,29.237,29.304,29.442,29.616,29.747,29.780,29.740,29.712,29.761,
-29.872,29.972,30.019,30.068,30.238,30.619,31.191,31.845,32.459,32.970,33.381,33.705,33.931,34.034,34.014,33.910,
-33.771,33.619,33.445,33.241,33.033,32.874,32.805,32.817,32.850,32.840,32.754,32.602,32.412,32.204,31.998,31.829,
-31.763,31.864,32.130,32.465,32.713,32.769,32.662,32.537,32.538,32.673,32.817,32.822,32.669,32.481,32.401,32.443,
-32.489,32.420,32.258,32.148,32.213,32.417,32.611,32.682,32.665,32.686,32.817,33.012,33.187,33.332,33.532,33.863,
-34.300,34.749,35.159,35.568,36.031,36.532,36.981,37.326,37.621,37.960,38.356,38.711,38.934,39.067,39.253,39.582,
-39.975,40.262,40.373,40.419,40.569,40.858,41.155,41.311,41.330,41.349,41.471,41.653,41.785,41.857,41.995,42.302,
-42.696,42.938,42.859,42.526,42.173,41.965,41.854,41.679,41.371,41.030,40.793,40.663,40.515,40.260,39.971,39.806,
-39.801,39.791,39.551,39.018,38.367,37.849,37.568,37.420,37.232,36.927,36.552,36.180,35.807,35.374,34.853,34.296,
-33.782,33.344,32.953,32.566,32.178,31.811,31.472,31.143,30.808,30.474,30.168,29.894,29.624,29.327,29.009,28.707,
-28.458,28.267,28.099,27.912,27.684,27.420,27.147,26.904,26.722,26.605,26.523,26.439,26.336,26.232,26.152,26.099,
-26.050,25.992,25.943,25.938,25.975,26.007,25.978,25.878,25.753,25.653,25.580,25.489,25.346,25.170,25.019,24.929,
-24.881,24.820,24.705,24.536,24.340,24.139,23.935,23.713,23.458,23.164,22.835,22.488,22.148,21.829,21.526,21.212,
-20.869,20.512,20.174,19.879,19.615,19.346,19.049,18.730,18.415,18.122,17.847,17.582,17.328,17.099,16.902,16.739,
-16.608,16.512,16.443,16.369,16.240,16.022,15.742,15.490,15.372,15.432,15.616,15.793,15.821,15.616,15.180,14.584,
-13.931,13.320,12.816,12.425,12.100,11.761,11.354,10.880,10.392,9.952,9.575,9.227,8.861,8.464,8.062,7.684,
-7.328,6.966,6.583,6.195,5.834,5.506,5.183,4.828,4.438,4.044,3.677,3.334,2.972,2.557,2.084,1.584,
-1.090,.616,.158,-.295,-.745,-1.187,-1.615,-2.016,-2.387,-2.743,-3.116,-3.536,-4.005,-4.494,-4.968,-5.411,
--5.834,-6.253,-6.674,-7.095,-7.527,-7.995,-8.508,-9.041,-9.545,-9.992,-10.404,-10.831,-11.312,-11.837,-12.366,-12.866,
--13.339,-13.803,-14.273,-14.750,-15.225,-15.691,-16.143,-16.575,-16.990,-17.411,-17.869,-18.376,-18.906,-19.412,-19.863,-20.272,
--20.676,-21.103,-21.544,-21.974,-22.384,-22.785,-23.191,-23.603,-24.005,-24.389,-24.766,-25.156,-25.562,-25.967,-26.344,-26.677,
--26.965,-27.223,-27.473,-27.743,-28.055,-28.410,-28.779,-29.119,-29.411,-29.676,-29.952,-30.250,-30.545,-30.797,-31.002,-31.202,
--31.444,-31.730,-32.003,-32.202,-32.318,-32.403,-32.526,-32.712,-32.927,-33.114,-33.242,-33.323,-33.393,-33.479,-33.588,-33.721,
--33.877,-34.053,-34.236,-34.404,-34.539,-34.639,-34.719,-34.795,-34.873,-34.947,-35.006,-35.045,-35.064,-35.069,-35.062,-35.049,
--35.038,-35.036,-35.047,-35.069,-35.088,-35.094,-35.083,-35.066,-35.056,-35.060,-35.068,-35.062,-35.024,-34.951,-34.853,-34.743,
--34.629,-34.517,-34.419,-34.345,-34.299,-34.266,-34.217,-34.134,-34.022,-33.909,-33.819,-33.751,-33.676,-33.558,-33.384,-33.176,
--32.973,-32.804,-32.674,-32.567,-32.462,-32.342,-32.194,-32.013,-31.807,-31.597,-31.405,-31.240,-31.080,-30.898,-30.686,-30.470,
--30.286,-30.138,-29.990,-29.798,-29.558,-29.315,-29.118,-28.969,-28.818,-28.612,-28.351,-28.096,-27.901,-27.764,-27.623,-27.419,
--27.146,-26.839,-26.531,-26.218,-25.871,-25.483,-25.084,-24.714,-24.392,-24.107,-23.838,-23.581,-23.334,-23.084,-22.798,-22.451,
--22.048,-21.617,-21.184,-20.742,-20.273,-19.769,-19.260,-18.788,-18.372,-17.991,-17.595,-17.154,-16.680,-16.223,-15.833,-15.524,
--15.262,-14.993,-14.682,-14.331,-13.966,-13.598,-13.208,-12.755,-12.208,-11.562,-10.834,-10.026,-9.116,-8.080,-6.932,-5.750,
--4.652,-3.733,-3.016,-2.441,-1.919,-1.397,-.889,-.449,-.113,.137,.361,.600,.838,1.014,1.079,1.043,
-.966,.931,1.004,1.228,1.598,2.038,2.374,2.388,1.935,1.059,.010,-.887,-1.407,-1.526,-1.380,-1.132,
--.866,-.572,-.205,.246,.739,1.198,1.558,1.803,1.982,2.190,2.500,2.904,3.308,3.601,3.738,3.778,
-3.826,3.946,4.125,4.313,4.481,4.636,4.799,4.970,5.145,5.331,5.538,5.743,5.884,5.914,5.861,5.825,
-5.894,6.062,6.243,6.362,6.436,6.549,6.757,7.037,7.326,7.598,7.879,8.182,8.467,8.686,8.881,9.196,
-9.754,10.515,11.269,11.811,12.132,12.434,12.935,13.663,14.411,14.908,15.033,14.891,14.716,14.724,15.020,15.605,
-16.408,17.319,18.207,18.978,19.611,20.152,20.649,21.100,21.448,21.640,21.674,21.602,21.485,21.366,21.261,21.184,
-21.147,21.161,21.238,21.392,21.630,21.924,22.203,22.373,22.379,22.239,22.020,21.789,21.593,21.474,21.496,21.727,
-22.182,22.770,23.299,23.531,23.271,22.452,21.189,19.791,18.686,18.252,18.617,19.571,20.648,21.363,21.457,21.001,
-20.332,19.848,19.811,20.226,20.875,21.459,21.779,21.828,21.738,21.628,21.501,21.273,20.888,20.406,19.945,19.565,
-19.204,18.754,18.184,17.582,17.077,16.711,16.409,16.052,15.572,14.976,14.303,13.599,12.914,12.322,11.885,11.595,
-11.369,11.116,10.828,10.573,10.417,10.332,10.207,9.944,9.541,9.078,8.647,8.296,8.043,7.896,7.829,7.758,
-7.571,7.248,6.955,6.980,7.506,8.406,9.263,9.626,9.311,8.498,7.559,6.790,6.267,5.908,5.627,5.409,
-5.268,5.180,5.074,4.908,4.708,4.535,4.418,4.315,4.164,3.943,3.688,3.449,3.243,3.063,2.900,2.768,
-2.676,2.606,2.522,2.409,2.298,2.236,2.237,2.257,2.227,2.101,1.886,1.621,1.349,1.097,.880,.708,
-.575,.463,.343,.194,.019,-.169,-.363,-.564,-.778,-1.002,-1.230,-1.455,-1.680,-1.912,-2.162,-2.434,
--2.729,-3.039,-3.347,-3.642,-3.931,-4.239,-4.589,-4.982,-5.384,-5.750,-6.056,-6.317,-6.565,-6.822,-7.085,-7.333,
--7.548,-7.725,-7.875,-8.008,-8.138,-8.272,-8.415,-8.566,-8.720,-8.869,-9.003,-9.113,-9.194,-9.253,-9.308,-9.381,
--9.484,-9.616,-9.770,-9.939,-10.120,-10.300,-10.454,-10.566,-10.640,-10.703,-10.778,-10.864,-10.939,-10.994,-11.046,-11.123,
--11.233,-11.350,-11.442,-11.500,-11.549,-11.616,-11.700,-11.771,-11.804,-11.806,-11.809,-11.838,-11.893,-11.959,-12.022,-12.081,
--12.141,-12.196,-12.238,-12.264,-12.281,-12.296,-12.309,-12.317,-12.325,-12.340,-12.369,-12.411,-12.459,-12.512,-12.571,-12.630,
--12.680,-12.710,-12.723,-12.733,-12.749,-12.766,-12.768,-12.745,-12.701,-12.645,-12.580,-12.499,-12.408,-12.327,-12.282,-12.275,
--12.288,-12.297,-12.297,-12.304,-12.324,-12.345,-12.338,-12.301,-12.258,-12.246,-12.269,-12.299,-12.300,-12.265,-12.226,-12.213,
--12.232,-12.256,-12.262,-12.254,-12.254,-12.275,-12.309,-12.338,-12.360,-12.389,-12.443,-12.520,-12.602,-12.674,-12.740,-12.811,
--12.891,-12.965,-13.009,-13.015,-12.993,-12.964,-12.944,-12.935,-12.930,-12.918,-12.892,-12.850,-12.793,-12.723,-12.648,-12.570,
--12.492,-12.415,-12.338,-12.257,-12.166,-12.063,-11.958,-11.865,-11.791,-11.731,-11.665,-11.586,-11.501,-11.423,-11.357,-11.291,
--11.213,-11.125,-11.041,-10.966,-10.890,-10.792,-10.669,-10.546,-10.454,-10.404,-10.382,-10.363,-10.337,-10.304,-10.273,-10.242,
--10.211,-10.185,-10.171,-10.163,-10.142,-10.085,-9.988,-9.873,-9.773,-9.704,-9.660,-9.619,-9.565,-9.488,-9.390,-9.273,
--9.144,-9.009,-8.874,-8.735,-8.586,-8.423,-8.252,-8.085,-7.939,-7.826,-7.749,-7.701,-7.666,-7.630,-7.585,-7.535,
--7.487,-7.431,-7.351,-7.230,-7.076,-6.912,-6.765,-6.643,-6.538,-6.433,-6.316,-6.174,-5.989,-5.749,-5.462,-5.161,
--4.882,-4.641,-4.434,-4.249,-4.085,-3.948,-3.833,-3.716,-3.579,-3.422,-3.266,-3.126,-2.990,-2.836,-2.665,-2.505,
--2.385,-2.299,-2.207,-2.075,-1.914,-1.776,-1.700,-1.678,-1.657,-1.594,-1.484,-1.359,-1.248,-1.156,-1.073,-.991,
--.912,-.835,-.750,-.647,-.537,-.440,-.369,-.304,-.209,-.063,.112,.270,.375,.430,.470,.533,
-.643,.810,1.037,1.320,1.641,1.969,2.283,2.585,2.895,3.224,3.559,3.874,4.159,4.432,4.724,5.043,
-5.367,5.665,5.934,6.198,6.484,6.789,7.099,7.405,7.722,8.062,8.415,8.750,9.052,9.339,9.641,9.950,
-10.224,10.423,10.559,10.665,10.726,10.654,10.367,9.922,9.546,9.511,9.941,10.732,11.660,12.582,13.515,14.542,
-15.659,16.751,17.712,18.577,19.504,20.615,21.857,23.011,23.840,24.221,24.163,23.753,23.109,22.378,21.713,21.214,
-20.866,20.557,20.184,19.741,19.307,18.944,18.634,18.311,17.946,17.575,17.244,16.940,16.602,16.191,15.739,15.319,
-14.971,14.673,14.392,14.136,13.951,13.863,13.834,13.797,13.720,13.638,13.611,13.657,13.740,13.801,13.813,13.785,
-13.740,13.672,13.551,13.341,13.048,12.734,12.496,12.412,12.488,12.654,12.818,12.926,12.990,13.039,13.061,12.992,
-12.779,12.439,12.041,11.640,11.211,10.679,9.992,9.171,8.271,7.310,6.258,5.106,3.935,2.902,2.144,1.678,
-1.401,1.165,.880,.537,.173,-.185,-.538,-.902,-1.276,-1.642,-1.971,-2.244,-2.470,-2.678,-2.896,-3.129,
--3.363,-3.579,-3.776,-3.967,-4.160,-4.343,-4.504,-4.649,-4.800,-4.969,-5.135,-5.269,-5.373,-5.487,-5.650,-5.848,
--6.025,-6.143,-6.230,-6.354,-6.547,-6.760,-6.920,-7.000,-7.055,-7.146,-7.274,-7.371,-7.379,-7.314,-7.248,-7.228,
--7.230,-7.194,-7.092,-6.954,-6.827,-6.722,-6.614,-6.487,-6.358,-6.249,-6.157,-6.042,-5.876,-5.669,-5.451,-5.229,
--4.979,-4.679,-4.353,-4.061,-3.844,-3.678,-3.493,-3.240,-2.928,-2.607,-2.313,-2.027,-1.701,-1.307,-.860,-.402,
-.039,.471,.923,1.410,1.919,2.414,2.869,3.285,3.692,4.133,4.642,5.219,5.830,6.422,6.952,7.405,
-7.803,8.188,8.586,9.000,9.410,9.799,10.170,10.544,10.936,11.342,11.743,12.127,12.497,12.870,13.257,13.654,
-14.047,14.429,14.797,15.150,15.484,15.797,16.101,16.414,16.743,17.074,17.384,17.662,17.921,18.179,18.439,18.685,
-18.899,19.092,19.300,19.554,19.849,20.151,20.420,20.648,20.861,21.092,21.346,21.599,21.819,21.997,22.153,22.322,
-22.526,22.756,22.984,23.182,23.341,23.456,23.515,23.501,23.409,23.273,23.153,23.094,23.093,23.107,23.094,23.056,
-23.028,23.029,23.040,23.013,22.928,22.818,22.731,22.684,22.641,22.557,22.432,22.318,22.265,22.267,22.257,22.177,
-22.044,21.948,21.967,22.081,22.159,22.054,21.730,21.314,21.013,20.954,21.078,21.175,21.036,20.608,20.024,19.502,
-19.187,19.072,19.042,18.977,18.827,18.616,18.389,18.171,17.965,17.769,17.593,17.451,17.352,17.294,17.261,17.235,
-17.197,17.138,17.060,16.975,16.905,16.879,16.997,17.060,17.166,17.301,17.446,17.584,17.718,17.875,18.088,18.356,
-18.632,18.856,19.002,19.096,19.190,19.308,19.440,19.563,19.666,19.754,19.827,19.882,19.926,19.995,20.121,20.305,
-20.503,20.682,20.854,21.072,21.362,21.684,21.968,22.199,22.439,22.764,23.171,23.569,23.871,24.089,24.316,24.607,
-24.907,25.113,25.210,25.315,25.563,25.938,26.259,26.354,26.256,26.199,26.392,26.791,27.111,27.075,26.673,26.189,
-25.960,26.123,26.542,26.974,27.259,27.398,27.473,27.543,27.619,27.704,27.833,28.044,28.341,28.672,28.964,29.158,
-29.234,29.215,29.150,29.101,29.111,29.181,29.265,29.319,29.339,29.366,29.439,29.547,29.640,29.683,29.703,29.762,
-29.890,30.046,30.155,30.204,30.275,30.506,30.973,31.632,32.341,32.966,33.454,33.828,34.129,34.360,34.490,34.493,
-34.381,34.202,34.005,33.818,33.645,33.480,33.324,33.186,33.078,33.006,32.969,32.944,32.888,32.750,32.511,32.211,
-31.963,31.902,32.109,32.538,33.024,33.366,33.453,33.333,33.167,33.097,33.136,33.176,33.108,32.934,32.764,32.703,
-32.740,32.764,32.692,32.564,32.510,32.612,32.822,33.005,33.081,33.094,33.152,33.304,33.505,33.698,33.891,34.154,
-34.524,34.953,35.360,35.724,36.100,36.537,37.002,37.415,37.745,38.059,38.431,38.844,39.191,39.409,39.572,39.823,
-40.206,40.588,40.792,40.796,40.782,40.952,41.319,41.691,41.882,41.899,41.914,42.061,42.287,42.439,42.459,42.458,
-42.572,42.782,42.906,42.782,42.439,42.060,41.790,41.608,41.400,41.120,40.848,40.680,40.598,40.486,40.278,40.037,
-39.886,39.836,39.750,39.473,39.004,38.510,38.165,37.990,37.852,37.616,37.265,36.877,36.503,36.112,35.640,35.089,
-34.542,34.080,33.711,33.375,33.024,32.665,32.334,32.032,31.723,31.377,31.006,30.657,30.354,30.080,29.801,29.510,
-29.231,28.993,28.790,28.592,28.366,28.100,27.811,27.529,27.285,27.100,26.974,26.882,26.792,26.690,26.591,26.518,
-26.471,26.433,26.389,26.347,26.324,26.317,26.291,26.210,26.081,25.946,25.843,25.764,25.668,25.530,25.377,25.256,
-25.190,25.152,25.093,24.989,24.850,24.701,24.543,24.355,24.120,23.839,23.528,23.204,22.876,22.554,22.243,21.943,
-21.639,21.315,20.975,20.637,20.324,20.035,19.755,19.466,19.168,18.874,18.590,18.315,18.042,17.777,17.537,17.334,
-17.176,17.058,16.967,16.878,16.756,16.568,16.315,16.052,15.870,15.835,15.944,16.110,16.209,16.139,15.864,15.417,
-14.873,14.313,13.801,13.367,12.996,12.638,12.244,11.799,11.332,10.895,10.513,10.160,9.790,9.377,8.947,8.547,
-8.201,7.885,7.554,7.187,6.806,6.443,6.106,5.768,5.401,5.011,4.634,4.292,3.961,3.590,3.143,2.633,
-2.111,1.623,1.177,.751,.322,-.118,-.555,-.969,-1.347,-1.695,-2.038,-2.409,-2.831,-3.305,-3.807,-4.308,
--4.785,-5.234,-5.659,-6.070,-6.482,-6.919,-7.401,-7.917,-8.435,-8.919,-9.366,-9.804,-10.268,-10.764,-11.269,-11.757,
--12.227,-12.696,-13.174,-13.654,-14.121,-14.571,-15.014,-15.456,-15.893,-16.320,-16.755,-17.228,-17.750,-18.288,-18.788,-19.221,
--19.605,-19.992,-20.415,-20.868,-21.318,-21.749,-22.167,-22.586,-23.004,-23.410,-23.801,-24.188,-24.588,-24.999,-25.400,-25.771,
--26.101,-26.392,-26.647,-26.882,-27.125,-27.416,-27.771,-28.162,-28.528,-28.832,-29.087,-29.346,-29.641,-29.953,-30.236,-30.475,
--30.705,-30.973,-31.279,-31.562,-31.754,-31.851,-31.922,-32.050,-32.261,-32.506,-32.717,-32.863,-32.967,-33.068,-33.185,-33.313,
--33.446,-33.596,-33.773,-33.965,-34.136,-34.255,-34.323,-34.377,-34.453,-34.560,-34.674,-34.765,-34.818,-34.834,-34.822,-34.794,
--34.762,-34.744,-34.755,-34.793,-34.833,-34.850,-34.833,-34.800,-34.774,-34.763,-34.755,-34.735,-34.698,-34.655,-34.612,-34.562,
--34.490,-34.392,-34.288,-34.201,-34.140,-34.088,-34.021,-33.932,-33.833,-33.745,-33.674,-33.610,-33.532,-33.432,-33.311,-33.174,
--33.024,-32.863,-32.698,-32.542,-32.403,-32.277,-32.147,-31.994,-31.808,-31.596,-31.382,-31.189,-31.030,-30.894,-30.758,-30.601,
--30.421,-30.232,-30.042,-29.845,-29.626,-29.390,-29.166,-28.986,-28.849,-28.714,-28.536,-28.311,-28.079,-27.884,-27.724,-27.550,
--27.312,-27.004,-26.667,-26.343,-26.041,-25.740,-25.422,-25.097,-24.789,-24.502,-24.222,-23.928,-23.623,-23.317,-23.012,-22.681,
--22.299,-21.864,-21.403,-20.950,-20.511,-20.067,-19.603,-19.133,-18.690,-18.298,-17.949,-17.608,-17.246,-16.856,-16.457,-16.071,
--15.720,-15.415,-15.162,-14.951,-14.746,-14.499,-14.171,-13.761,-13.310,-12.864,-12.438,-11.986,-11.422,-10.665,-9.679,-8.509,
--7.256,-6.037,-4.932,-3.953,-3.066,-2.244,-1.517,-.964,-.649,-.545,-.531,-.466,-.292,-.059,.140,.259,
-.333,.417,.527,.645,.786,1.027,1.423,1.884,2.145,1.918,1.124,-.004,-1.051,-1.684,-1.847,-1.724,
--1.540,-1.385,-1.196,-.876,-.409,.115,.577,.909,1.136,1.341,1.611,1.974,2.383,2.739,2.966,3.058,
-3.089,3.152,3.288,3.470,3.647,3.799,3.937,4.080,4.226,4.372,4.533,4.730,4.952,5.138,5.227,5.224,
-5.208,5.260,5.388,5.528,5.626,5.711,5.860,6.114,6.429,6.730,6.990,7.247,7.533,7.821,8.062,8.285,
-8.621,9.187,9.948,10.697,11.222,11.499,11.725,12.136,12.791,13.508,14.021,14.186,14.080,13.926,13.942,14.247,
-14.840,15.642,16.532,17.386,18.126,18.743,19.277,19.762,20.187,20.512,20.715,20.812,20.838,20.808,20.720,20.590,
-20.468,20.416,20.468,20.614,20.825,21.072,21.313,21.469,21.443,21.187,20.749,20.259,19.838,19.533,19.319,19.169,
-19.118,19.237,19.557,19.990,20.332,20.351,19.914,19.100,18.203,17.630,17.693,18.430,19.549,20.573,21.093,20.982,
-20.443,19.864,19.589,19.747,20.224,20.765,21.144,21.279,21.239,21.151,21.079,20.976,20.754,20.379,19.913,19.451,
-19.027,18.595,18.097,17.548,17.036,16.635,16.323,15.996,15.549,14.958,14.269,13.544,12.830,12.174,11.632,11.242,
-10.980,10.760,10.507,10.222,9.973,9.802,9.663,9.453,9.116,8.694,8.286,7.947,7.667,7.415,7.206,7.078,
-7.011,6.912,6.708,6.468,6.402,6.690,7.293,7.929,8.271,8.192,7.834,7.442,7.133,6.821,6.352,5.699,
-5.018,4.525,4.317,4.317,4.355,4.311,4.175,4.001,3.835,3.685,3.533,3.366,3.180,2.972,2.748,2.529,
-2.353,2.239,2.170,2.106,2.020,1.927,1.865,1.852,1.859,1.830,1.724,1.540,1.307,1.061,.826,.618,
-.447,.317,.213,.105,-.033,-.215,-.425,-.640,-.838,-1.016,-1.181,-1.349,-1.530,-1.733,-1.958,-2.208,
--2.483,-2.778,-3.082,-3.377,-3.659,-3.940,-4.246,-4.594,-4.978,-5.367,-5.728,-6.048,-6.336,-6.615,-6.898,-7.182,
--7.453,-7.695,-7.898,-8.063,-8.198,-8.322,-8.456,-8.608,-8.777,-8.950,-9.114,-9.258,-9.376,-9.467,-9.540,-9.610,
--9.690,-9.779,-9.866,-9.946,-10.034,-10.151,-10.306,-10.478,-10.633,-10.749,-10.834,-10.912,-10.996,-11.076,-11.141,-11.197,
--11.263,-11.354,-11.462,-11.567,-11.659,-11.742,-11.825,-11.901,-11.951,-11.966,-11.960,-11.957,-11.976,-12.014,-12.060,-12.107,
--12.157,-12.208,-12.255,-12.287,-12.305,-12.319,-12.338,-12.365,-12.396,-12.427,-12.461,-12.502,-12.547,-12.596,-12.644,-12.687,
--12.718,-12.732,-12.734,-12.743,-12.777,-12.836,-12.895,-12.924,-12.908,-12.858,-12.792,-12.714,-12.619,-12.511,-12.412,-12.347,
--12.324,-12.321,-12.313,-12.297,-12.293,-12.312,-12.336,-12.337,-12.300,-12.248,-12.219,-12.227,-12.252,-12.260,-12.240,-12.208,
--12.192,-12.203,-12.229,-12.255,-12.275,-12.293,-12.313,-12.337,-12.368,-12.418,-12.493,-12.580,-12.654,-12.699,-12.727,-12.768,
--12.838,-12.922,-12.988,-13.012,-13.003,-12.983,-12.967,-12.950,-12.917,-12.865,-12.812,-12.775,-12.757,-12.742,-12.705,-12.640,
--12.555,-12.469,-12.391,-12.320,-12.242,-12.147,-12.038,-11.925,-11.821,-11.727,-11.638,-11.548,-11.464,-11.396,-11.344,-11.293,
--11.227,-11.148,-11.077,-11.029,-10.989,-10.922,-10.806,-10.659,-10.533,-10.464,-10.444,-10.431,-10.396,-10.345,-10.308,-10.298,
--10.300,-10.285,-10.249,-10.207,-10.176,-10.144,-10.087,-9.993,-9.884,-9.795,-9.741,-9.707,-9.662,-9.588,-9.488,-9.376,
--9.257,-9.127,-8.978,-8.817,-8.655,-8.504,-8.364,-8.227,-8.090,-7.962,-7.855,-7.781,-7.737,-7.708,-7.674,-7.627,
--7.567,-7.501,-7.426,-7.334,-7.217,-7.085,-6.956,-6.838,-6.727,-6.609,-6.476,-6.331,-6.174,-5.996,-5.777,-5.510,
--5.212,-4.912,-4.638,-4.400,-4.198,-4.030,-3.889,-3.762,-3.627,-3.476,-3.320,-3.180,-3.062,-2.942,-2.792,-2.608,
--2.422,-2.272,-2.164,-2.068,-1.950,-1.810,-1.680,-1.589,-1.532,-1.480,-1.412,-1.329,-1.248,-1.170,-1.085,-.985,
--.882,-.798,-.740,-.689,-.618,-.523,-.422,-.331,-.246,-.146,-.019,.119,.235,.313,.366,.425,
-.516,.651,.833,1.067,1.355,1.682,2.022,2.348,2.655,2.951,3.251,3.559,3.871,4.185,4.501,4.816,
-5.116,5.392,5.651,5.918,6.213,6.533,6.853,7.160,7.466,7.794,8.148,8.500,8.818,9.107,9.405,9.737,
-10.078,10.369,10.576,10.719,10.834,10.893,10.793,10.461,9.975,9.581,9.546,9.972,10.731,11.602,12.460,13.349,
-14.376,15.551,16.755,17.856,18.847,19.843,20.942,22.096,23.111,23.786,24.033,23.900,23.497,22.934,22.315,21.753,
-21.338,21.090,20.927,20.731,20.425,20.018,19.574,19.149,18.758,18.394,18.047,17.707,17.352,16.960,16.524,16.075,
-15.649,15.266,14.915,14.591,14.315,14.123,14.022,13.970,13.893,13.748,13.554,13.381,13.296,13.319,13.417,13.536,
-13.638,13.710,13.758,13.769,13.709,13.551,13.306,13.044,12.854,12.788,12.832,12.927,13.022,13.092,13.119,13.069,
-12.909,12.642,12.317,11.985,11.635,11.187,10.562,9.751,8.819,7.827,6.781,5.652,4.466,3.344,2.440,1.833,
-1.465,1.203,.941,.655,.371,.099,-.192,-.539,-.940,-1.349,-1.712,-2.004,-2.237,-2.443,-2.654,-2.882,
--3.122,-3.357,-3.574,-3.773,-3.964,-4.158,-4.351,-4.534,-4.703,-4.863,-5.019,-5.166,-5.300,-5.435,-5.599,-5.803,
--6.014,-6.180,-6.282,-6.361,-6.481,-6.663,-6.856,-6.994,-7.059,-7.103,-7.185,-7.304,-7.401,-7.425,-7.385,-7.333,
--7.301,-7.267,-7.192,-7.071,-6.941,-6.835,-6.743,-6.628,-6.475,-6.312,-6.172,-6.052,-5.912,-5.721,-5.492,-5.262,
--5.043,-4.807,-4.524,-4.213,-3.928,-3.708,-3.531,-3.333,-3.074,-2.773,-2.480,-2.220,-1.964,-1.662,-1.292,-.876,
--.448,-.022,.416,.883,1.375,1.871,2.353,2.813,3.255,3.692,4.142,4.632,5.179,5.770,6.355,6.881,
-7.329,7.734,8.148,8.596,9.054,9.479,9.853,10.206,10.580,10.995,11.429,11.848,12.241,12.625,13.025,13.442,
-13.862,14.267,14.651,15.012,15.342,15.631,15.888,16.141,16.423,16.740,17.069,17.385,17.684,17.980,18.280,18.563,
-18.806,19.011,19.219,19.476,19.792,20.131,20.442,20.704,20.933,21.162,21.403,21.646,21.868,22.063,22.238,22.406,
-22.576,22.752,22.933,23.115,23.288,23.441,23.555,23.612,23.600,23.527,23.427,23.347,23.316,23.323,23.329,23.308,
-23.271,23.251,23.260,23.266,23.223,23.125,23.024,22.978,22.983,22.966,22.856,22.664,22.480,22.393,22.393,22.384,
-22.279,22.101,21.972,21.990,22.117,22.193,22.074,21.775,21.488,21.436,21.688,22.086,22.340,22.217,21.690,20.927,
-20.175,19.608,19.267,19.084,18.965,18.849,18.716,18.571,18.416,18.247,18.064,17.876,17.709,17.591,17.532,17.510,
-17.484,17.414,17.295,17.156,17.044,16.989,16.997,17.226,17.273,17.325,17.408,17.541,17.710,17.884,18.045,18.200,
-18.367,18.551,18.738,18.912,19.066,19.198,19.303,19.378,19.436,19.508,19.613,19.735,19.835,19.899,19.956,20.063,
-20.244,20.464,20.675,20.863,21.069,21.334,21.655,21.986,22.302,22.626,23.000,23.417,23.808,24.106,24.321,24.532,
-24.793,25.071,25.279,25.385,25.469,25.653,25.976,26.340,26.598,26.683,26.650,26.586,26.510,26.373,26.163,25.975,
-25.963,26.203,26.604,26.982,27.202,27.276,27.322,27.445,27.658,27.908,28.150,28.385,28.632,28.892,29.126,29.289,
-29.355,29.325,29.231,29.125,29.071,29.110,29.229,29.360,29.430,29.417,29.371,29.366,29.435,29.554,29.674,29.775,
-29.873,29.987,30.104,30.208,30.315,30.503,30.860,31.416,32.104,32.795,33.382,33.832,34.180,34.466,34.695,34.829,
-34.831,34.700,34.486,34.263,34.082,33.954,33.844,33.705,33.523,33.329,33.186,33.135,33.154,33.157,33.049,32.794,
-32.468,32.225,32.223,32.522,33.037,33.572,33.928,34.016,33.892,33.705,33.577,33.521,33.460,33.325,33.136,32.986,
-32.941,32.974,32.989,32.931,32.848,32.846,32.984,33.206,33.405,33.527,33.611,33.735,33.921,34.128,34.319,34.520,
-34.793,35.159,35.568,35.955,36.314,36.695,37.129,37.575,37.963,38.283,38.602,38.979,39.386,39.729,39.974,40.204,
-40.533,40.952,41.301,41.426,41.359,41.323,41.516,41.912,42.285,42.443,42.417,42.414,42.571,42.811,42.934,42.843,
-42.644,42.523,42.539,42.573,42.468,42.197,41.872,41.608,41.415,41.227,41.015,40.824,40.702,40.624,40.513,40.341,
-40.169,40.068,40.009,39.868,39.555,39.124,38.736,38.504,38.383,38.230,37.944,37.552,37.144,36.759,36.352,35.872,
-35.343,34.855,34.473,34.171,33.875,33.544,33.198,32.879,32.585,32.272,31.911,31.523,31.157,30.839,30.547,30.249,
-29.946,29.667,29.437,29.241,29.038,28.800,28.527,28.243,27.976,27.741,27.550,27.402,27.284,27.175,27.064,26.960,
-26.880,26.834,26.807,26.782,26.746,26.697,26.628,26.524,26.381,26.220,26.078,25.974,25.889,25.792,25.673,25.560,
-25.488,25.457,25.430,25.373,25.282,25.180,25.077,24.951,24.765,24.505,24.198,23.887,23.593,23.312,23.029,22.739,
-22.445,22.149,21.837,21.503,21.152,20.804,20.475,20.170,19.882,19.607,19.339,19.071,18.792,18.502,18.219,17.968,
-17.771,17.625,17.510,17.396,17.259,17.081,16.864,16.633,16.441,16.343,16.367,16.478,16.586,16.591,16.431,16.107,
-15.670,15.187,14.713,14.274,13.868,13.473,13.069,12.646,12.220,11.818,11.453,11.108,10.741,10.325,9.878,9.448,
-9.080,8.773,8.481,8.160,7.798,7.421,7.055,6.701,6.337,5.956,5.580,5.236,4.919,4.580,4.162,3.656,
-3.108,2.590,2.142,1.753,1.381,.996,.592,.185,-.208,-.585,-.953,-1.325,-1.717,-2.144,-2.614,-3.118,
--3.633,-4.131,-4.590,-5.012,-5.417,-5.840,-6.303,-6.804,-7.318,-7.813,-8.278,-8.733,-9.204,-9.697,-10.192,-10.664,
--11.115,-11.573,-12.060,-12.565,-13.057,-13.512,-13.941,-14.374,-14.827,-15.288,-15.738,-16.185,-16.655,-17.160,-17.677,-18.159,
--18.582,-18.969,-19.369,-19.810,-20.277,-20.738,-21.173,-21.588,-21.996,-22.400,-22.797,-23.191,-23.596,-24.016,-24.438,-24.835,
--25.191,-25.509,-25.798,-26.063,-26.309,-26.557,-26.849,-27.207,-27.607,-27.986,-28.299,-28.556,-28.811,-29.101,-29.410,-29.691,
--29.925,-30.150,-30.418,-30.735,-31.038,-31.256,-31.381,-31.480,-31.632,-31.861,-32.115,-32.328,-32.477,-32.595,-32.725,-32.880,
--33.040,-33.188,-33.333,-33.494,-33.667,-33.820,-33.924,-33.982,-34.029,-34.099,-34.197,-34.302,-34.391,-34.456,-34.498,-34.513,
--34.497,-34.458,-34.428,-34.436,-34.484,-34.536,-34.550,-34.518,-34.474,-34.455,-34.467,-34.479,-34.460,-34.412,-34.368,-34.346,
--34.331,-34.284,-34.191,-34.077,-33.984,-33.925,-33.872,-33.788,-33.673,-33.560,-33.486,-33.449,-33.409,-33.331,-33.214,-33.089,
--32.978,-32.877,-32.760,-32.612,-32.444,-32.280,-32.132,-31.991,-31.835,-31.649,-31.438,-31.219,-31.015,-30.844,-30.709,-30.594,
--30.469,-30.311,-30.114,-29.892,-29.662,-29.435,-29.218,-29.021,-28.854,-28.716,-28.582,-28.421,-28.224,-28.012,-27.814,-27.628,
--27.420,-27.151,-26.820,-26.471,-26.159,-25.901,-25.675,-25.443,-25.184,-24.903,-24.604,-24.285,-23.940,-23.576,-23.211,-22.853,
--22.489,-22.094,-21.659,-21.200,-20.746,-20.314,-19.899,-19.488,-19.082,-18.690,-18.321,-17.975,-17.643,-17.316,-16.983,-16.628,
--16.241,-15.841,-15.492,-15.260,-15.161,-15.118,-15.000,-14.712,-14.266,-13.770,-13.340,-13.006,-12.692,-12.274,-11.666,-10.849,
--9.856,-8.728,-7.497,-6.192,-4.864,-3.594,-2.489,-1.657,-1.173,-1.020,-1.079,-1.167,-1.140,-.973,-.746,-.550,
--.392,-.210,.035,.290,.467,.559,.694,1.005,1.442,1.722,1.511,.709,-.425,-1.436,-1.995,-2.097,
--1.982,-1.878,-1.820,-1.685,-1.366,-.899,-.424,-.055,.207,.446,.741,1.105,1.489,1.827,2.075,2.227,
-2.315,2.389,2.494,2.645,2.821,2.994,3.157,3.317,3.478,3.626,3.751,3.870,4.018,4.207,4.396,4.527,
-4.578,4.596,4.647,4.753,4.884,5.005,5.132,5.314,5.573,5.871,6.156,6.417,6.698,7.026,7.362,7.641,
-7.866,8.141,8.588,9.206,9.851,10.348,10.661,10.928,11.326,11.898,12.504,12.935,13.087,13.040,12.990,13.124,
-13.536,14.209,15.052,15.939,16.757,17.441,17.991,18.445,18.835,19.163,19.421,19.622,19.789,19.928,20.008,19.996,
-19.911,19.824,19.810,19.886,20.020,20.177,20.358,20.558,20.705,20.657,20.300,19.653,18.881,18.177,17.626,17.178,
-16.740,16.305,15.991,15.952,16.243,16.752,17.257,17.556,17.599,17.520,17.563,17.924,18.618,19.441,20.078,20.289,
-20.064,19.624,19.291,19.289,19.632,20.140,20.579,20.802,20.815,20.725,20.633,20.552,20.414,20.146,19.746,19.284,
-18.831,18.400,17.951,17.459,16.960,16.524,16.177,15.857,15.457,14.907,14.226,13.486,12.758,12.081,11.485,11.004,
-10.653,10.396,10.155,9.878,9.581,9.326,9.137,8.953,8.682,8.299,7.882,7.538,7.304,7.117,6.902,6.656,
-6.454,6.349,6.314,6.269,6.182,6.115,6.144,6.259,6.356,6.354,6.304,6.360,6.605,6.902,6.946,6.488,
-5.561,4.485,3.664,3.318,3.385,3.617,3.777,3.766,3.620,3.421,3.230,3.067,2.921,2.769,2.585,2.360,
-2.116,1.898,1.746,1.662,1.612,1.557,1.492,1.437,1.411,1.401,1.365,1.266,1.102,.902,.703,.524,
-.364,.217,.084,-.033,-.142,-.261,-.412,-.604,-.825,-1.048,-1.252,-1.428,-1.586,-1.738,-1.897,-2.075,
--2.282,-2.527,-2.806,-3.103,-3.398,-3.680,-3.958,-4.255,-4.585,-4.943,-5.309,-5.661,-5.991,-6.304,-6.610,-6.917,
--7.227,-7.537,-7.833,-8.090,-8.289,-8.431,-8.543,-8.662,-8.814,-8.995,-9.180,-9.346,-9.480,-9.585,-9.677,-9.769,
--9.872,-9.983,-10.080,-10.136,-10.148,-10.144,-10.175,-10.276,-10.437,-10.618,-10.776,-10.900,-11.003,-11.102,-11.195,-11.267,
--11.318,-11.365,-11.430,-11.525,-11.642,-11.765,-11.880,-11.981,-12.061,-12.112,-12.134,-12.138,-12.139,-12.146,-12.162,-12.184,
--12.212,-12.249,-12.293,-12.338,-12.375,-12.403,-12.427,-12.453,-12.486,-12.528,-12.580,-12.637,-12.691,-12.731,-12.756,-12.771,
--12.784,-12.794,-12.795,-12.791,-12.798,-12.830,-12.882,-12.927,-12.938,-12.909,-12.864,-12.823,-12.786,-12.732,-12.653,-12.565,
--12.497,-12.465,-12.452,-12.435,-12.406,-12.379,-12.365,-12.355,-12.327,-12.273,-12.215,-12.183,-12.190,-12.216,-12.227,-12.210,
--12.176,-12.150,-12.145,-12.157,-12.179,-12.203,-12.227,-12.249,-12.277,-12.325,-12.405,-12.512,-12.616,-12.683,-12.704,-12.710,
--12.743,-12.819,-12.913,-12.979,-12.996,-12.979,-12.954,-12.933,-12.901,-12.840,-12.759,-12.689,-12.660,-12.666,-12.676,-12.654,
--12.585,-12.487,-12.388,-12.307,-12.244,-12.185,-12.118,-12.039,-11.952,-11.860,-11.763,-11.658,-11.551,-11.458,-11.386,-11.327,
--11.262,-11.178,-11.087,-11.017,-10.979,-10.947,-10.879,-10.758,-10.618,-10.515,-10.478,-10.480,-10.468,-10.415,-10.346,-10.307,
--10.315,-10.337,-10.330,-10.280,-10.213,-10.158,-10.114,-10.058,-9.974,-9.879,-9.807,-9.769,-9.741,-9.685,-9.584,-9.457,
--9.332,-9.221,-9.110,-8.978,-8.819,-8.648,-8.489,-8.354,-8.239,-8.133,-8.031,-7.939,-7.867,-7.817,-7.778,-7.732,
--7.669,-7.593,-7.512,-7.432,-7.350,-7.259,-7.158,-7.049,-6.932,-6.797,-6.636,-6.455,-6.270,-6.096,-5.927,-5.739,
--5.506,-5.226,-4.926,-4.637,-4.385,-4.172,-3.991,-3.829,-3.672,-3.509,-3.341,-3.181,-3.044,-2.929,-2.817,-2.683,
--2.520,-2.344,-2.185,-2.055,-1.946,-1.841,-1.734,-1.629,-1.529,-1.434,-1.343,-1.268,-1.221,-1.198,-1.174,-1.115,
--1.013,-.897,-.801,-.742,-.699,-.638,-.545,-.433,-.321,-.216,-.109,.005,.117,.213,.288,.354,
-.434,.545,.698,.899,1.152,1.457,1.794,2.137,2.459,2.748,3.012,3.268,3.540,3.844,4.180,4.526,
-4.849,5.128,5.374,5.625,5.918,6.251,6.586,6.889,7.161,7.444,7.774,8.143,8.503,8.818,9.103,9.408,
-9.759,10.124,10.439,10.672,10.845,10.982,11.040,10.915,10.540,10.011,9.580,9.524,9.957,10.777,11.766,12.763,
-13.747,14.771,15.856,16.952,18.007,19.040,20.121,21.265,22.356,23.200,23.653,23.720,23.529,23.218,22.861,22.479,
-22.111,21.826,21.675,21.621,21.538,21.298,20.863,20.304,19.741,19.255,18.847,18.466,18.058,17.603,17.109,16.603,
-16.109,15.650,15.246,14.909,14.638,14.428,14.268,14.146,14.034,13.895,13.691,13.423,13.150,12.973,12.965,13.120,
-13.348,13.538,13.637,13.672,13.698,13.728,13.719,13.622,13.443,13.247,13.111,13.063,13.082,13.123,13.148,13.126,
-13.024,12.826,12.552,12.248,11.932,11.550,11.003,10.229,9.259,8.195,7.115,6.030,4.921,3.825,2.852,2.112,
-1.616,1.273,.970,.665,.391,.176,-.016,-.264,-.611,-1.021,-1.408,-1.717,-1.956,-2.172,-2.399,-2.641,
--2.881,-3.112,-3.334,-3.553,-3.768,-3.978,-4.185,-4.390,-4.588,-4.768,-4.924,-5.060,-5.189,-5.328,-5.494,-5.695,
--5.915,-6.121,-6.278,-6.385,-6.477,-6.600,-6.763,-6.930,-7.057,-7.136,-7.201,-7.284,-7.381,-7.453,-7.476,-7.462,
--7.443,-7.423,-7.372,-7.267,-7.123,-6.984,-6.872,-6.766,-6.626,-6.444,-6.254,-6.092,-5.950,-5.787,-5.575,-5.333,
--5.104,-4.898,-4.684,-4.422,-4.116,-3.815,-3.559,-3.343,-3.123,-2.869,-2.593,-2.326,-2.075,-1.818,-1.528,-1.204,
--.864,-.517,-.144,.284,.766,1.275,1.778,2.268,2.755,3.245,3.725,4.192,4.666,5.182,5.745,6.316,
-6.836,7.283,7.690,8.111,8.564,9.013,9.414,9.763,10.107,10.495,10.928,11.369,11.782,12.175,12.583,13.023,
-13.474,13.901,14.289,14.650,14.998,15.324,15.608,15.855,16.100,16.382,16.711,17.064,17.419,17.774,18.137,18.492,
-18.799,19.032,19.219,19.429,19.715,20.067,20.419,20.718,20.960,21.184,21.419,21.659,21.875,22.058,22.227,22.403,
-22.587,22.762,22.921,23.079,23.249,23.427,23.579,23.676,23.708,23.696,23.664,23.632,23.608,23.589,23.563,23.515,
-23.442,23.360,23.298,23.269,23.255,23.227,23.180,23.142,23.144,23.172,23.166,23.081,22.939,22.815,22.757,22.724,
-22.623,22.412,22.167,22.029,22.067,22.192,22.223,22.050,21.754,21.558,21.653,22.034,22.495,22.761,22.659,22.191,
-21.500,20.759,20.101,19.593,19.248,19.041,18.923,18.836,18.737,18.606,18.445,18.262,18.073,17.902,17.776,17.708,
-17.676,17.630,17.532,17.390,17.257,17.185,17.185,17.226,17.474,17.472,17.462,17.505,17.639,17.839,18.043,18.199,
-18.301,18.383,18.481,18.618,18.796,18.995,19.179,19.302,19.345,19.339,19.355,19.450,19.615,19.782,19.895,19.957,
-20.033,20.178,20.388,20.615,20.827,21.049,21.327,21.682,22.081,22.481,22.864,23.245,23.628,23.986,24.286,24.533,
-24.771,25.036,25.304,25.511,25.629,25.707,25.843,26.093,26.421,26.718,26.875,26.842,26.635,26.326,26.035,25.916,
-26.091,26.562,27.171,27.671,27.889,27.837,27.689,27.639,27.769,28.026,28.309,28.558,28.775,28.977,29.158,29.291,
-29.365,29.389,29.375,29.330,29.264,29.214,29.224,29.308,29.418,29.479,29.455,29.385,29.355,29.422,29.569,29.727,
-29.838,29.901,29.959,30.062,30.241,30.509,30.879,31.357,31.928,32.545,33.143,33.669,34.104,34.456,34.736,34.936,
-35.035,35.014,34.885,34.697,34.514,34.387,34.314,34.246,34.116,33.900,33.641,33.425,33.317,33.303,33.294,33.195,
-32.979,32.723,32.568,32.633,32.943,33.404,33.853,34.141,34.210,34.111,33.953,33.822,33.728,33.625,33.475,33.303,
-33.173,33.126,33.133,33.127,33.085,33.059,33.135,33.345,33.627,33.889,34.085,34.251,34.441,34.665,34.881,35.062,
-35.237,35.474,35.803,36.193,36.592,36.984,37.389,37.816,38.227,38.580,38.883,39.200,39.577,39.979,40.328,40.601,
-40.867,41.207,41.597,41.905,42.023,42.008,42.045,42.268,42.612,42.868,42.902,42.796,42.759,42.906,43.125,43.197,
-43.013,42.682,42.410,42.304,42.294,42.235,42.060,41.819,41.590,41.403,41.240,41.090,40.969,40.882,40.791,40.656,
-40.493,40.367,40.310,40.255,40.080,39.737,39.319,38.981,38.797,38.685,38.501,38.170,37.746,37.325,36.939,36.547,
-36.109,35.655,35.259,34.954,34.697,34.416,34.085,33.736,33.408,33.094,32.757,32.381,31.993,31.632,31.301,30.971,
-30.624,30.287,30.008,29.805,29.638,29.448,29.205,28.928,28.655,28.411,28.199,28.011,27.846,27.701,27.568,27.438,
-27.316,27.217,27.157,27.132,27.118,27.086,27.015,26.894,26.726,26.530,26.341,26.192,26.086,26.001,25.912,25.817,
-25.743,25.709,25.702,25.687,25.641,25.574,25.511,25.448,25.343,25.153,24.878,24.565,24.268,24.009,23.765,23.505,
-23.221,22.925,22.628,22.321,21.989,21.629,21.258,20.902,20.575,20.282,20.018,19.773,19.529,19.268,18.985,18.701,
-18.450,18.256,18.111,17.977,17.815,17.612,17.387,17.175,17.010,16.914,16.891,16.926,16.978,16.989,16.902,16.687,
-16.356,15.952,15.526,15.112,14.716,14.322,13.915,13.496,13.083,12.699,12.351,12.021,11.668,11.266,10.825,10.390,
-10.010,9.699,9.421,9.124,8.780,8.404,8.025,7.658,7.290,6.906,6.520,6.163,5.847,5.536,5.160,4.680,
-4.123,3.573,3.105,2.733,2.412,2.082,1.721,1.342,.968,.602,.230,-.163,-.579,-1.015,-1.473,-1.962,
--2.478,-2.998,-3.488,-3.927,-4.329,-4.735,-5.184,-5.683,-6.203,-6.702,-7.164,-7.608,-8.068,-8.561,-9.067,-9.549,
--9.996,-10.436,-10.911,-11.436,-11.975,-12.476,-12.920,-13.333,-13.763,-14.231,-14.719,-15.198,-15.663,-16.130,-16.612,-17.092,
--17.539,-17.948,-18.348,-18.780,-19.253,-19.742,-20.209,-20.637,-21.037,-21.429,-21.820,-22.211,-22.609,-23.023,-23.450,-23.866,
--24.243,-24.571,-24.867,-25.153,-25.439,-25.721,-26.007,-26.322,-26.680,-27.064,-27.428,-27.738,-28.008,-28.282,-28.588,-28.901,
--29.177,-29.400,-29.612,-29.870,-30.185,-30.504,-30.758,-30.934,-31.083,-31.271,-31.513,-31.763,-31.967,-32.112,-32.236,-32.380,
--32.551,-32.723,-32.875,-33.016,-33.168,-33.334,-33.488,-33.602,-33.671,-33.721,-33.778,-33.850,-33.926,-33.999,-34.069,-34.133,
--34.173,-34.169,-34.129,-34.094,-34.106,-34.167,-34.232,-34.244,-34.197,-34.138,-34.125,-34.164,-34.210,-34.214,-34.173,-34.123,
--34.099,-34.083,-34.034,-33.930,-33.805,-33.712,-33.670,-33.641,-33.574,-33.460,-33.343,-33.271,-33.247,-33.224,-33.154,-33.034,
--32.900,-32.787,-32.690,-32.580,-32.436,-32.269,-32.106,-31.964,-31.830,-31.682,-31.502,-31.294,-31.071,-30.854,-30.663,-30.509,
--30.386,-30.265,-30.112,-29.915,-29.691,-29.470,-29.273,-29.098,-28.933,-28.773,-28.621,-28.473,-28.315,-28.132,-27.927,-27.713,
--27.493,-27.252,-26.968,-26.647,-26.331,-26.066,-25.866,-25.695,-25.496,-25.235,-24.917,-24.567,-24.200,-23.817,-23.417,-23.012,
--22.618,-22.242,-21.873,-21.495,-21.098,-20.689,-20.280,-19.881,-19.499,-19.131,-18.771,-18.409,-18.045,-17.690,-17.362,-17.056,
--16.740,-16.375,-15.970,-15.605,-15.381,-15.329,-15.360,-15.311,-15.067,-14.651,-14.194,-13.818,-13.533,-13.242,-12.846,-12.316,
--11.686,-10.964,-10.073,-8.902,-7.415,-5.733,-4.104,-2.795,-1.966,-1.616,-1.598,-1.696,-1.725,-1.607,-1.387,-1.167,
--1.002,-.852,-.635,-.332,-.032,.165,.273,.441,.795,1.239,1.449,1.101,.169,-1.001,-1.926,-2.339,
--2.335,-2.216,-2.182,-2.189,-2.061,-1.718,-1.269,-.896,-.672,-.505,-.251,.140,.584,.954,1.190,1.323,
-1.424,1.540,1.681,1.842,2.019,2.209,2.404,2.595,2.774,2.935,3.068,3.172,3.262,3.372,3.521,3.687,
-3.825,3.904,3.945,4.001,4.112,4.272,4.455,4.645,4.853,5.086,5.336,5.592,5.872,6.206,6.598,6.984,
-7.285,7.485,7.667,7.950,8.382,8.892,9.364,9.748,10.101,10.513,10.992,11.446,11.751,11.869,11.888,11.965,
-12.241,12.775,13.536,14.427,15.323,16.115,16.749,17.232,17.607,17.911,18.159,18.365,18.551,18.741,18.926,19.067,
-19.136,19.158,19.193,19.273,19.367,19.424,19.452,19.532,19.721,19.945,19.991,19.653,18.905,17.928,16.972,16.160,
-15.432,14.666,13.854,13.172,12.876,13.130,13.890,14.936,15.995,16.869,17.496,17.933,18.284,18.613,18.902,19.063,
-19.026,18.817,18.589,18.541,18.794,19.304,19.887,20.336,20.541,20.538,20.438,20.323,20.184,19.955,19.588,19.113,
-18.614,18.161,17.752,17.338,16.883,16.407,15.957,15.552,15.151,14.685,14.118,13.471,12.796,12.139,11.530,10.994,
-10.559,10.226,9.953,9.671,9.340,8.989,8.678,8.430,8.195,7.901,7.536,7.170,6.892,6.719,6.583,6.400,
-6.166,5.959,5.862,5.887,5.962,5.997,5.938,5.768,5.485,5.115,4.758,4.592,4.779,5.304,5.911,6.216,
-5.946,5.126,4.070,3.175,2.689,2.613,2.774,2.973,3.090,3.093,3.000,2.838,2.640,2.440,2.254,2.074,
-1.878,1.664,1.455,1.292,1.188,1.125,1.066,.997,.935,.904,.896,.871,.784,.628,.439,.269,
-.147,.059,-.031,-.144,-.271,-.392,-.500,-.611,-.757,-.956,-1.198,-1.454,-1.692,-1.892,-2.050,-2.174,
--2.286,-2.416,-2.591,-2.823,-3.098,-3.388,-3.673,-3.952,-4.242,-4.557,-4.896,-5.249,-5.603,-5.950,-6.286,-6.608,
--6.922,-7.241,-7.577,-7.919,-8.234,-8.481,-8.646,-8.758,-8.870,-9.020,-9.211,-9.410,-9.581,-9.708,-9.800,-9.879,
--9.967,-10.074,-10.193,-10.296,-10.351,-10.346,-10.305,-10.281,-10.321,-10.436,-10.598,-10.766,-10.917,-11.052,-11.176,-11.284,
--11.362,-11.408,-11.440,-11.487,-11.568,-11.680,-11.805,-11.926,-12.035,-12.129,-12.207,-12.265,-12.301,-12.318,-12.324,-12.328,
--12.339,-12.360,-12.393,-12.435,-12.482,-12.529,-12.574,-12.610,-12.637,-12.661,-12.694,-12.746,-12.810,-12.865,-12.890,-12.883,
--12.863,-12.852,-12.857,-12.868,-12.875,-12.880,-12.891,-12.906,-12.908,-12.881,-12.835,-12.798,-12.792,-12.809,-12.817,-12.793,
--12.745,-12.701,-12.677,-12.665,-12.645,-12.605,-12.554,-12.499,-12.437,-12.360,-12.273,-12.201,-12.171,-12.186,-12.217,-12.232,
--12.214,-12.177,-12.138,-12.109,-12.090,-12.079,-12.081,-12.100,-12.137,-12.189,-12.261,-12.356,-12.467,-12.567,-12.633,-12.662,
--12.683,-12.728,-12.806,-12.890,-12.944,-12.955,-12.940,-12.921,-12.902,-12.867,-12.809,-12.739,-12.685,-12.664,-12.662,-12.646,
--12.593,-12.503,-12.397,-12.300,-12.224,-12.167,-12.119,-12.072,-12.022,-11.968,-11.905,-11.827,-11.732,-11.626,-11.522,-11.430,
--11.347,-11.259,-11.161,-11.063,-10.988,-10.942,-10.903,-10.835,-10.727,-10.607,-10.522,-10.490,-10.484,-10.461,-10.405,-10.343,
--10.317,-10.332,-10.351,-10.332,-10.267,-10.188,-10.129,-10.089,-10.040,-9.965,-9.875,-9.802,-9.758,-9.718,-9.644,-9.519,
--9.368,-9.230,-9.125,-9.042,-8.948,-8.821,-8.665,-8.502,-8.357,-8.239,-8.143,-8.059,-7.980,-7.910,-7.848,-7.789,
--7.723,-7.646,-7.565,-7.494,-7.437,-7.386,-7.322,-7.232,-7.116,-6.980,-6.828,-6.656,-6.468,-6.277,-6.098,-5.930,
--5.748,-5.523,-5.245,-4.936,-4.638,-4.381,-4.170,-3.987,-3.813,-3.639,-3.466,-3.300,-3.144,-2.996,-2.857,-2.726,
--2.599,-2.470,-2.330,-2.182,-2.032,-1.895,-1.782,-1.691,-1.607,-1.512,-1.402,-1.294,-1.218,-1.187,-1.187,-1.176,
--1.121,-1.019,-.902,-.801,-.727,-.663,-.585,-.483,-.365,-.244,-.130,-.021,.080,.171,.249,.321,
-.398,.496,.628,.806,1.034,1.306,1.608,1.921,2.229,2.520,2.790,3.039,3.276,3.526,3.810,4.132,
-4.465,4.768,5.028,5.272,5.549,5.884,6.248,6.582,6.855,7.096,7.367,7.703,8.081,8.445,8.762,9.056,
-9.377,9.745,10.124,10.457,10.719,10.925,11.079,11.124,10.968,10.572,10.041,9.621,9.575,10.044,10.971,12.160,
-13.400,14.553,15.573,16.476,17.317,18.182,19.167,20.304,21.500,22.539,23.204,23.417,23.292,23.052,22.873,22.792,
-22.746,22.683,22.628,22.630,22.671,22.629,22.359,21.813,21.084,20.339,19.688,19.130,18.592,18.020,17.427,16.861,
-16.347,15.869,15.415,15.005,14.687,14.482,14.354,14.238,14.091,13.915,13.724,13.507,13.248,12.980,12.802,12.820,
-13.045,13.355,13.575,13.612,13.519,13.430,13.434,13.505,13.555,13.526,13.434,13.333,13.253,13.182,13.105,13.025,
-12.948,12.859,12.721,12.506,12.206,11.811,11.277,10.541,9.582,8.464,7.299,6.173,5.104,4.085,3.145,2.361,
-1.783,1.376,1.042,.707,.385,.136,-.026,-.172,-.399,-.730,-1.098,-1.411,-1.641,-1.840,-2.073,-2.351,
--2.633,-2.880,-3.095,-3.312,-3.549,-3.793,-4.021,-4.225,-4.418,-4.612,-4.798,-4.962,-5.101,-5.234,-5.389,-5.577,
--5.787,-5.994,-6.173,-6.317,-6.434,-6.547,-6.676,-6.821,-6.970,-7.108,-7.229,-7.337,-7.428,-7.489,-7.511,-7.508,
--7.506,-7.520,-7.529,-7.491,-7.389,-7.244,-7.100,-6.972,-6.836,-6.660,-6.444,-6.224,-6.027,-5.846,-5.648,-5.418,
--5.186,-4.986,-4.820,-4.639,-4.393,-4.080,-3.744,-3.437,-3.173,-2.933,-2.695,-2.453,-2.210,-1.956,-1.679,-1.387,
--1.106,-.853,-.604,-.303,.094,.578,1.099,1.615,2.123,2.640,3.169,3.686,4.172,4.649,5.163,5.731,
-6.314,6.846,7.294,7.684,8.072,8.478,8.878,9.243,9.582,9.941,10.350,10.788,11.211,11.603,11.997,12.436,
-12.915,13.379,13.777,14.109,14.421,14.753,15.096,15.418,15.708,15.999,16.330,16.708,17.107,17.504,17.900,18.302,
-18.685,18.999,19.221,19.393,19.602,19.898,20.256,20.600,20.882,21.117,21.351,21.601,21.838,22.029,22.186,22.351,
-22.552,22.771,22.966,23.128,23.287,23.473,23.671,23.822,23.883,23.869,23.838,23.837,23.865,23.881,23.852,23.775,
-23.667,23.545,23.422,23.309,23.223,23.179,23.174,23.197,23.233,23.266,23.276,23.255,23.214,23.188,23.201,23.222,
-23.167,22.970,22.664,22.385,22.270,22.334,22.435,22.395,22.154,21.830,21.627,21.661,21.878,22.108,22.200,22.105,
-21.853,21.487,21.026,20.498,19.967,19.524,19.226,19.054,18.942,18.828,18.697,18.562,18.432,18.299,18.157,18.023,
-17.917,17.837,17.755,17.645,17.522,17.434,17.413,17.444,17.474,17.605,17.566,17.539,17.577,17.701,17.875,18.047,
-18.188,18.302,18.403,18.499,18.596,18.716,18.883,19.084,19.263,19.359,19.366,19.354,19.408,19.554,19.738,19.878,
-19.952,20.010,20.123,20.315,20.553,20.805,21.076,21.407,21.815,22.270,22.711,23.102,23.453,23.790,24.125,24.447,
-24.746,25.029,25.302,25.556,25.764,25.917,26.042,26.190,26.386,26.605,26.776,26.821,26.703,26.451,26.177,26.059,
-26.262,26.835,27.638,28.385,28.803,28.805,28.541,28.271,28.186,28.298,28.495,28.668,28.797,28.922,29.070,29.219,
-29.335,29.413,29.477,29.536,29.561,29.520,29.428,29.349,29.343,29.404,29.472,29.490,29.466,29.462,29.532,29.661,
-29.782,29.842,29.855,29.901,30.065,30.384,30.828,31.331,31.840,32.333,32.821,33.318,33.818,34.289,34.684,34.964,
-35.116,35.156,35.117,35.037,34.948,34.878,34.838,34.808,34.738,34.574,34.301,33.967,33.659,33.450,33.347,33.293,
-33.218,33.098,32.973,32.920,32.998,33.211,33.502,33.783,33.970,34.026,33.970,33.861,33.757,33.674,33.595,33.499,
-33.394,33.313,33.276,33.268,33.258,33.251,33.305,33.486,33.797,34.166,34.495,34.743,34.948,35.169,35.421,35.662,
-35.854,36.018,36.221,36.516,36.899,37.319,37.734,38.130,38.505,38.849,39.157,39.452,39.783,40.170,40.574,40.923,
-41.184,41.398,41.631,41.902,42.161,42.364,42.533,42.735,42.990,43.211,43.279,43.174,43.024,42.993,43.122,43.275,
-43.268,43.039,42.701,42.431,42.314,42.293,42.254,42.133,41.946,41.737,41.540,41.369,41.246,41.178,41.132,41.048,
-40.894,40.714,40.588,40.536,40.470,40.268,39.903,39.482,39.160,38.990,38.878,38.680,38.334,37.899,37.471,37.094,
-36.740,36.379,36.029,35.730,35.486,35.248,34.965,34.630,34.279,33.937,33.593,33.218,32.816,32.423,32.066,31.728,
-31.375,31.005,30.666,30.409,30.232,30.069,29.850,29.561,29.250,28.976,28.760,28.582,28.412,28.243,28.079,27.925,
-27.776,27.636,27.519,27.444,27.411,27.396,27.364,27.282,27.138,26.943,26.728,26.531,26.381,26.277,26.198,26.119,
-26.039,25.978,25.947,25.936,25.918,25.883,25.843,25.812,25.774,25.683,25.502,25.239,24.948,24.678,24.439,24.201,
-23.934,23.637,23.328,23.022,22.710,22.378,22.025,21.666,21.319,20.995,20.694,20.420,20.175,19.951,19.727,19.482,
-19.221,18.974,18.768,18.595,18.419,18.203,17.950,17.707,17.531,17.448,17.437,17.453,17.450,17.406,17.309,17.151,
-16.920,16.616,16.257,15.874,15.494,15.125,14.758,14.378,13.989,13.604,13.242,12.899,12.551,12.168,11.749,11.325,
-10.945,10.636,10.374,10.103,9.778,9.398,8.998,8.614,8.246,7.873,7.484,7.098,6.749,6.431,6.092,5.667,
-5.144,4.589,4.099,3.730,3.452,3.181,2.853,2.468,2.069,1.696,1.343,.980,.579,.140,-.328,-.819,
--1.337,-1.873,-2.396,-2.867,-3.279,-3.665,-4.083,-4.564,-5.091,-5.611,-6.081,-6.506,-6.931,-7.397,-7.905,-8.414,
--8.886,-9.324,-9.771,-10.270,-10.820,-11.370,-11.866,-12.298,-12.702,-13.130,-13.600,-14.097,-14.592,-15.077,-15.557,-16.032,
--16.483,-16.894,-17.280,-17.682,-18.136,-18.637,-19.145,-19.617,-20.041,-20.436,-20.827,-21.226,-21.630,-22.038,-22.455,-22.876,
--23.281,-23.644,-23.958,-24.241,-24.521,-24.812,-25.116,-25.430,-25.759,-26.102,-26.449,-26.776,-27.075,-27.364,-27.675,-28.015,
--28.353,-28.651,-28.898,-29.134,-29.404,-29.716,-30.029,-30.291,-30.494,-30.680,-30.895,-31.142,-31.384,-31.579,-31.728,-31.864,
--32.020,-32.194,-32.361,-32.505,-32.641,-32.795,-32.972,-33.147,-33.286,-33.378,-33.439,-33.498,-33.566,-33.641,-33.716,-33.786,
--33.844,-33.875,-33.864,-33.825,-33.797,-33.820,-33.887,-33.949,-33.951,-33.888,-33.814,-33.791,-33.833,-33.892,-33.911,-33.877,
--33.826,-33.794,-33.772,-33.722,-33.623,-33.505,-33.424,-33.399,-33.393,-33.347,-33.246,-33.129,-33.050,-33.020,-32.999,-32.938,
--32.827,-32.695,-32.572,-32.457,-32.328,-32.172,-32.006,-31.858,-31.734,-31.618,-31.480,-31.306,-31.102,-30.882,-30.666,-30.472,
--30.316,-30.193,-30.076,-29.930,-29.740,-29.527,-29.326,-29.159,-29.013,-28.862,-28.696,-28.526,-28.367,-28.213,-28.041,-27.831,
--27.589,-27.330,-27.063,-26.788,-26.510,-26.254,-26.042,-25.869,-25.690,-25.447,-25.120,-24.737,-24.345,-23.972,-23.605,-23.219,
--22.810,-22.402,-22.027,-21.693,-21.382,-21.058,-20.702,-20.316,-19.923,-19.545,-19.192,-18.851,-18.503,-18.138,-17.775,-17.443,
--17.148,-16.860,-16.530,-16.154,-15.800,-15.564,-15.483,-15.482,-15.423,-15.215,-14.895,-14.579,-14.342,-14.138,-13.851,-13.420,
--12.903,-12.400,-11.907,-11.243,-10.163,-8.567,-6.629,-4.741,-3.297,-2.486,-2.224,-2.246,-2.276,-2.157,-1.898,-1.608,
--1.393,-1.264,-1.146,-.956,-.702,-.472,-.325,-.189,.099,.606,1.143,1.318,.832,-.248,-1.480,-2.360,
--2.680,-2.623,-2.525,-2.553,-2.596,-2.452,-2.078,-1.648,-1.367,-1.263,-1.171,-.908,-.460,.016,.349,.496,
-.550,.628,.776,.969,1.175,1.390,1.621,1.852,2.049,2.190,2.287,2.370,2.462,2.568,2.691,2.832,
-2.980,3.110,3.201,3.258,3.323,3.442,3.633,3.872,4.120,4.353,4.570,4.788,5.032,5.330,5.697,6.108,
-6.497,6.792,6.980,7.122,7.320,7.633,8.042,8.475,8.881,9.259,9.635,10.006,10.330,10.556,10.686,10.790,
-10.976,11.341,11.930,12.719,13.624,14.520,15.300,15.913,16.376,16.739,17.045,17.304,17.515,17.687,17.835,17.967,
-18.084,18.197,18.336,18.517,18.696,18.789,18.755,18.672,18.695,18.912,19.213,19.318,18.977,18.168,17.105,16.053,
-15.121,14.224,13.244,12.226,11.424,11.151,11.577,12.628,14.040,15.497,16.739,17.614,18.081,18.203,18.112,17.947,
-17.794,17.671,17.581,17.573,17.743,18.167,18.807,19.502,20.054,20.342,20.384,20.283,20.128,19.920,19.606,19.151,
-18.598,18.047,17.581,17.201,16.835,16.409,15.898,15.341,14.794,14.286,13.806,13.327,12.824,12.293,11.746,11.210,
-10.721,10.308,9.963,9.642,9.290,8.885,8.460,8.072,7.749,7.472,7.201,6.922,6.662,6.450,6.278,6.102,
-5.891,5.671,5.513,5.476,5.550,5.661,5.710,5.627,5.379,4.974,4.472,3.992,3.697,3.716,4.050,4.543,
-4.945,5.048,4.784,4.238,3.574,2.946,2.460,2.169,2.083,2.162,2.313,2.420,2.399,2.241,2.006,1.767,
-1.559,1.376,1.196,1.021,.874,.767,.686,.601,.504,.419,.380,.387,.393,.333,.182,-.020,
--.196,-.292,-.319,-.335,-.396,-.513,-.655,-.785,-.897,-1.022,-1.195,-1.430,-1.703,-1.976,-2.209,-2.379,
--2.486,-2.552,-2.617,-2.725,-2.902,-3.143,-3.423,-3.712,-3.997,-4.282,-4.578,-4.895,-5.236,-5.598,-5.971,-6.334,
--6.668,-6.969,-7.263,-7.582,-7.935,-8.289,-8.592,-8.807,-8.950,-9.074,-9.227,-9.420,-9.627,-9.811,-9.952,-10.050,
--10.122,-10.188,-10.261,-10.349,-10.440,-10.511,-10.538,-10.521,-10.486,-10.477,-10.523,-10.627,-10.771,-10.933,-11.098,-11.250,
--11.372,-11.450,-11.491,-11.519,-11.563,-11.640,-11.741,-11.850,-11.955,-12.058,-12.165,-12.276,-12.376,-12.449,-12.488,-12.505,
--12.517,-12.541,-12.577,-12.620,-12.662,-12.702,-12.743,-12.783,-12.813,-12.827,-12.831,-12.842,-12.876,-12.927,-12.970,-12.981,
--12.958,-12.927,-12.915,-12.928,-12.950,-12.963,-12.963,-12.959,-12.953,-12.935,-12.896,-12.846,-12.812,-12.814,-12.846,-12.883,
--12.900,-12.898,-12.890,-12.884,-12.873,-12.843,-12.792,-12.730,-12.662,-12.581,-12.480,-12.372,-12.286,-12.247,-12.252,-12.269,
--12.266,-12.233,-12.185,-12.136,-12.091,-12.045,-12.002,-11.981,-11.998,-12.056,-12.140,-12.234,-12.329,-12.420,-12.505,-12.577,
--12.640,-12.701,-12.769,-12.837,-12.888,-12.911,-12.909,-12.899,-12.892,-12.885,-12.866,-12.835,-12.802,-12.779,-12.757,-12.717,
--12.643,-12.539,-12.428,-12.332,-12.256,-12.193,-12.132,-12.071,-12.012,-11.960,-11.916,-11.872,-11.817,-11.742,-11.644,-11.533,
--11.423,-11.325,-11.236,-11.150,-11.066,-10.993,-10.936,-10.886,-10.824,-10.736,-10.633,-10.541,-10.479,-10.440,-10.407,-10.371,
--10.345,-10.341,-10.349,-10.341,-10.292,-10.214,-10.138,-10.093,-10.069,-10.036,-9.971,-9.882,-9.796,-9.728,-9.663,-9.571,
--9.436,-9.275,-9.125,-9.011,-8.930,-8.855,-8.758,-8.628,-8.477,-8.329,-8.203,-8.103,-8.023,-7.951,-7.882,-7.814,
--7.744,-7.667,-7.586,-7.513,-7.462,-7.434,-7.407,-7.351,-7.251,-7.123,-6.993,-6.878,-6.765,-6.627,-6.454,-6.258,
--6.052,-5.832,-5.575,-5.270,-4.936,-4.621,-4.363,-4.164,-3.997,-3.832,-3.664,-3.506,-3.365,-3.227,-3.075,-2.904,
--2.738,-2.600,-2.490,-2.380,-2.242,-2.071,-1.897,-1.752,-1.645,-1.557,-1.460,-1.349,-1.246,-1.176,-1.141,-1.113,
--1.059,-.969,-.857,-.747,-.652,-.566,-.476,-.378,-.273,-.164,-.050,.066,.175,.266,.336,.393,
-.452,.532,.645,.801,1.005,1.250,1.516,1.776,2.020,2.257,2.504,2.766,3.030,3.285,3.537,3.807,
-4.103,4.405,4.682,4.932,5.188,5.493,5.854,6.227,6.558,6.833,7.093,7.394,7.750,8.126,8.475,8.790,
-9.104,9.451,9.829,10.199,10.526,10.802,11.027,11.177,11.187,10.991,10.598,10.127,9.790,9.810,10.327,11.338,
-12.693,14.151,15.468,16.487,17.202,17.763,18.399,19.288,20.437,21.652,22.630,23.136,23.148,22.870,22.599,22.534,
-22.691,22.950,23.198,23.407,23.600,23.750,23.729,23.393,22.705,21.787,20.834,19.969,19.182,18.405,17.622,16.909,
-16.352,15.949,15.602,15.217,14.805,14.460,14.257,14.166,14.085,13.935,13.726,13.514,13.321,13.123,12.916,12.781,
-12.829,13.086,13.426,13.643,13.620,13.416,13.207,13.131,13.196,13.311,13.395,13.423,13.399,13.310,13.133,12.888,
-12.657,12.525,12.495,12.478,12.346,12.014,11.461,10.702,9.754,8.652,7.465,6.283,5.176,4.164,3.250,2.460,
-1.838,1.392,1.066,.765,.448,.148,-.072,-.212,-.349,-.564,-.860,-1.157,-1.384,-1.553,-1.743,-2.011,
--2.332,-2.631,-2.864,-3.062,-3.283,-3.549,-3.822,-4.052,-4.228,-4.386,-4.561,-4.751,-4.931,-5.088,-5.240,-5.416,
--5.622,-5.838,-6.031,-6.192,-6.331,-6.467,-6.606,-6.744,-6.880,-7.016,-7.161,-7.310,-7.442,-7.530,-7.559,-7.545,
--7.526,-7.535,-7.570,-7.594,-7.566,-7.475,-7.345,-7.208,-7.071,-6.913,-6.714,-6.479,-6.237,-6.007,-5.780,-5.540,
--5.296,-5.082,-4.923,-4.800,-4.653,-4.427,-4.115,-3.762,-3.422,-3.124,-2.869,-2.646,-2.441,-2.233,-1.991,-1.703,
--1.392,-1.105,-.867,-.648,-.376,-.001,.468,.978,1.485,1.989,2.511,3.052,3.583,4.083,4.574,5.104,
-5.691,6.292,6.834,7.277,7.644,7.991,8.349,8.711,9.065,9.425,9.818,10.248,10.678,11.072,11.439,11.835,
-12.295,12.790,13.240,13.593,13.874,14.159,14.498,14.878,15.248,15.592,15.938,16.324,16.748,17.174,17.577,17.965,
-18.358,18.739,19.062,19.304,19.505,19.739,20.049,20.400,20.726,20.993,21.230,21.480,21.739,21.965,22.133,22.279,
-22.469,22.726,23.006,23.239,23.413,23.574,23.766,23.966,24.096,24.108,24.037,23.974,23.980,24.034,24.062,24.014,
-23.906,23.783,23.676,23.572,23.455,23.338,23.264,23.264,23.329,23.405,23.435,23.400,23.333,23.300,23.347,23.454,
-23.530,23.466,23.229,22.905,22.652,22.579,22.649,22.709,22.617,22.364,22.065,21.852,21.752,21.695,21.607,21.497,
-21.430,21.425,21.396,21.211,20.815,20.290,19.797,19.448,19.242,19.103,18.974,18.859,18.782,18.736,18.671,18.549,
-18.376,18.198,18.048,17.923,17.805,17.699,17.630,17.610,17.616,17.605,17.567,17.531,17.551,17.634,17.744,17.833,
-17.901,17.998,18.172,18.401,18.602,18.708,18.742,18.800,18.955,19.181,19.377,19.466,19.469,19.479,19.566,19.715,
-19.860,19.961,20.046,20.178,20.387,20.652,20.945,21.265,21.641,22.083,22.554,22.994,23.370,23.696,24.014,24.348,
-24.687,25.005,25.287,25.538,25.769,25.985,26.194,26.399,26.597,26.763,26.858,26.844,26.715,26.509,26.310,26.242,
-26.435,26.958,27.746,28.581,29.181,29.363,29.163,28.812,28.569,28.552,28.688,28.826,28.882,28.894,28.948,29.080,
-29.250,29.399,29.511,29.606,29.692,29.731,29.677,29.541,29.400,29.342,29.389,29.487,29.569,29.609,29.641,29.702,
-29.785,29.851,29.873,29.889,29.986,30.238,30.652,31.161,31.670,32.118,32.512,32.911,33.374,33.908,34.449,34.898,
-35.177,35.280,35.266,35.220,35.204,35.226,35.263,35.279,35.240,35.117,34.885,34.549,34.151,33.769,33.475,33.301,
-33.229,33.213,33.214,33.213,33.215,33.235,33.288,33.381,33.498,33.603,33.651,33.619,33.527,33.424,33.352,33.323,
-33.321,33.332,33.357,33.401,33.455,33.511,33.587,33.736,34.010,34.396,34.813,35.161,35.402,35.589,35.802,36.076,
-36.368,36.617,36.813,37.017,37.299,37.673,38.088,38.475,38.804,39.088,39.362,39.651,39.971,40.333,40.733,41.135,
-41.474,41.698,41.804,41.856,41.942,42.133,42.444,42.831,43.201,43.448,43.504,43.394,43.233,43.158,43.219,43.336,
-43.364,43.217,42.944,42.677,42.521,42.474,42.456,42.397,42.280,42.120,41.933,41.725,41.529,41.396,41.349,41.337,
-41.271,41.107,40.902,40.755,40.694,40.626,40.426,40.064,39.651,39.342,39.191,39.103,38.931,38.602,38.161,37.709,
-37.309,36.966,36.662,36.397,36.174,35.970,35.739,35.452,35.119,34.776,34.431,34.063,33.656,33.229,32.825,32.468,
-32.139,31.805,31.469,31.173,30.947,30.762,30.544,30.241,29.877,29.528,29.262,29.080,28.935,28.780,28.603,28.419,
-28.242,28.077,27.928,27.806,27.727,27.688,27.667,27.626,27.539,27.397,27.211,27.009,26.825,26.682,26.582,26.508,
-26.437,26.361,26.293,26.242,26.207,26.174,26.136,26.102,26.075,26.037,25.951,25.791,25.570,25.325,25.090,24.863,
-24.619,24.340,24.032,23.713,23.393,23.065,22.724,22.382,22.058,21.756,21.462,21.162,20.865,20.598,20.376,20.181,
-19.974,19.733,19.473,19.225,19.000,18.778,18.536,18.283,18.071,17.952,17.934,17.964,17.969,17.902,17.765,17.591,
-17.401,17.186,16.923,16.601,16.240,15.874,15.526,15.196,14.864,14.516,14.150,13.779,13.410,13.036,12.650,12.257,
-11.885,11.563,11.294,11.041,10.753,10.399,9.993,9.578,9.187,8.818,8.447,8.064,7.683,7.321,6.967,6.578,
-6.116,5.603,5.117,4.738,4.477,4.266,4.005,3.644,3.208,2.767,2.364,1.995,1.620,1.211,.768,.299,
--.194,-.713,-1.246,-1.757,-2.211,-2.612,-3.006,-3.449,-3.957,-4.492,-4.993,-5.431,-5.834,-6.259,-6.741,-7.264,
--7.779,-8.251,-8.693,-9.149,-9.651,-10.190,-10.718,-11.199,-11.631,-12.050,-12.489,-12.958,-13.443,-13.931,-14.420,-14.909,
--15.384,-15.823,-16.217,-16.593,-16.998,-17.466,-17.982,-18.498,-18.970,-19.390,-19.784,-20.181,-20.593,-21.013,-21.432,-21.851,
--22.269,-22.679,-23.059,-23.394,-23.689,-23.963,-24.239,-24.534,-24.849,-25.176,-25.503,-25.815,-26.108,-26.394,-26.697,-27.034,
--27.396,-27.753,-28.081,-28.378,-28.667,-28.968,-29.275,-29.558,-29.798,-30.009,-30.226,-30.472,-30.733,-30.971,-31.163,-31.317,
--31.468,-31.641,-31.825,-31.994,-32.137,-32.270,-32.423,-32.604,-32.789,-32.940,-33.043,-33.114,-33.187,-33.280,-33.383,-33.473,
--33.533,-33.561,-33.563,-33.549,-33.533,-33.532,-33.560,-33.606,-33.636,-33.619,-33.555,-33.486,-33.458,-33.480,-33.519,-33.531,
--33.504,-33.466,-33.444,-33.433,-33.401,-33.329,-33.236,-33.166,-33.137,-33.123,-33.079,-32.988,-32.880,-32.797,-32.753,-32.718,
--32.657,-32.560,-32.447,-32.337,-32.222,-32.086,-31.924,-31.760,-31.618,-31.503,-31.391,-31.254,-31.079,-30.875,-30.661,-30.455,
--30.277,-30.139,-30.034,-29.932,-29.796,-29.612,-29.402,-29.204,-29.040,-28.893,-28.735,-28.557,-28.380,-28.228,-28.091,-27.931,
--27.716,-27.447,-27.157,-26.881,-26.631,-26.403,-26.195,-26.002,-25.805,-25.565,-25.248,-24.857,-24.441,-24.056,-23.724,-23.413,
--23.076,-22.696,-22.302,-21.939,-21.622,-21.330,-21.024,-20.677,-20.296,-19.911,-19.549,-19.219,-18.906,-18.589,-18.253,-17.908,
--17.580,-17.281,-16.993,-16.681,-16.340,-16.013,-15.774,-15.651,-15.592,-15.499,-15.319,-15.097,-14.924,-14.829,-14.723,-14.472,
--14.031,-13.507,-13.050,-12.672,-12.163,-11.216,-9.674,-7.703,-5.726,-4.185,-3.287,-2.930,-2.820,-2.681,-2.397,-2.027,
--1.703,-1.507,-1.412,-1.320,-1.166,-.975,-.830,-.750,-.624,-.285,.286,.839,.962,.384,-.767,-2.017,
--2.870,-3.160,-3.103,-3.031,-3.083,-3.126,-2.965,-2.584,-2.177,-1.942,-1.878,-1.794,-1.513,-1.050,-.589,-.302,
--.210,-.194,-.127,.026,.233,.465,.724,1.009,1.269,1.441,1.504,1.516,1.560,1.678,1.846,2.013,
-2.153,2.275,2.390,2.493,2.578,2.661,2.780,2.971,3.225,3.505,3.767,4.001,4.228,4.484,4.790,5.141,
-5.508,5.846,6.117,6.321,6.496,6.703,6.986,7.342,7.731,8.105,8.442,8.744,9.020,9.271,9.492,9.686,
-9.884,10.143,10.536,11.119,11.896,12.794,13.688,14.460,15.059,15.515,15.896,16.248,16.567,16.819,16.979,17.057,
-17.092,17.146,17.272,17.494,17.765,17.977,18.035,17.950,17.871,17.982,18.319,18.682,18.743,18.284,17.371,16.282,
-15.275,14.393,13.504,12.516,11.565,10.977,11.048,11.832,13.118,14.569,15.893,16.914,17.548,17.772,17.638,17.292,
-16.926,16.689,16.623,16.686,16.849,17.150,17.652,18.346,19.101,19.718,20.056,20.110,19.984,19.786,19.543,19.208,
-18.737,18.162,17.584,17.103,16.735,16.401,15.988,15.433,14.772,14.107,13.537,13.092,12.728,12.366,11.955,11.494,
-11.025,10.587,10.184,9.786,9.356,8.882,8.390,7.925,7.518,7.181,6.905,6.681,6.503,6.349,6.181,5.959,
-5.676,5.380,5.153,5.060,5.099,5.201,5.266,5.225,5.062,4.800,4.477,4.119,3.751,3.416,3.179,3.117,
-3.288,3.686,4.207,4.659,4.824,4.558,3.877,2.970,2.124,1.577,1.406,1.515,1.708,1.816,1.773,1.608,
-1.390,1.167,.952,.747,.561,.415,.315,.238,.150,.040,-.064,-.118,-.109,-.079,-.103,-.227,
--.425,-.614,-.712,-.710,-.667,-.669,-.758,-.918,-1.098,-1.265,-1.424,-1.603,-1.818,-2.063,-2.308,-2.521,
--2.681,-2.781,-2.836,-2.878,-2.949,-3.085,-3.300,-3.577,-3.881,-4.181,-4.460,-4.723,-4.991,-5.293,-5.646,-6.042,
--6.441,-6.795,-7.083,-7.332,-7.597,-7.917,-8.279,-8.627,-8.909,-9.113,-9.271,-9.432,-9.617,-9.818,-10.010,-10.173,
--10.298,-10.384,-10.439,-10.478,-10.524,-10.589,-10.666,-10.729,-10.750,-10.727,-10.686,-10.668,-10.709,-10.817,-10.981,-11.167,
--11.341,-11.470,-11.545,-11.582,-11.614,-11.670,-11.757,-11.859,-11.957,-12.045,-12.136,-12.244,-12.369,-12.491,-12.587,-12.646,
--12.683,-12.720,-12.773,-12.840,-12.903,-12.947,-12.973,-12.988,-13.001,-13.007,-13.003,-12.991,-12.984,-12.995,-13.017,-13.035,
--13.033,-13.015,-13.003,-13.013,-13.043,-13.070,-13.081,-13.076,-13.071,-13.069,-13.061,-13.033,-12.987,-12.943,-12.921,-12.924,
--12.943,-12.965,-12.988,-13.007,-13.014,-12.992,-12.940,-12.871,-12.809,-12.759,-12.706,-12.632,-12.541,-12.459,-12.410,-12.388,
--12.366,-12.319,-12.249,-12.179,-12.125,-12.083,-12.039,-11.992,-11.962,-11.973,-12.031,-12.117,-12.202,-12.273,-12.334,-12.400,
--12.484,-12.586,-12.695,-12.790,-12.854,-12.879,-12.876,-12.863,-12.858,-12.861,-12.862,-12.855,-12.845,-12.840,-12.834,-12.805,
--12.732,-12.614,-12.482,-12.369,-12.290,-12.233,-12.175,-12.102,-12.019,-11.939,-11.873,-11.823,-11.781,-11.735,-11.669,-11.576,
--11.462,-11.347,-11.251,-11.180,-11.122,-11.059,-10.986,-10.913,-10.851,-10.794,-10.726,-10.635,-10.529,-10.433,-10.368,-10.340,
--10.340,-10.354,-10.363,-10.351,-10.308,-10.235,-10.152,-10.086,-10.049,-10.031,-10.007,-9.955,-9.876,-9.787,-9.699,-9.611,
--9.509,-9.382,-9.235,-9.085,-8.951,-8.842,-8.751,-8.660,-8.556,-8.436,-8.310,-8.192,-8.090,-8.001,-7.920,-7.846,
--7.781,-7.720,-7.655,-7.586,-7.524,-7.484,-7.467,-7.444,-7.382,-7.269,-7.139,-7.037,-6.977,-6.919,-6.802,-6.595,
--6.322,-6.035,-5.761,-5.485,-5.179,-4.848,-4.536,-4.289,-4.112,-3.968,-3.820,-3.663,-3.519,-3.401,-3.289,-3.147,
--2.966,-2.779,-2.628,-2.522,-2.424,-2.288,-2.106,-1.912,-1.746,-1.618,-1.506,-1.386,-1.263,-1.164,-1.103,-1.057,
--.991,-.883,-.751,-.627,-.528,-.440,-.344,-.235,-.128,-.036,.050,.148,.266,.386,.486,.554,
-.607,.668,.756,.882,1.051,1.264,1.504,1.741,1.948,2.125,2.304,2.524,2.792,3.081,3.360,3.626,
-3.899,4.192,4.492,4.773,5.034,5.307,5.625,5.985,6.349,6.683,6.993,7.316,7.674,8.049,8.400,8.716,
-9.023,9.357,9.721,10.080,10.401,10.683,10.944,11.174,11.308,11.270,11.035,10.669,10.312,10.126,10.261,10.829,
-11.868,13.292,14.867,16.277,17.279,17.842,18.181,18.626,19.416,20.533,21.715,22.611,22.994,22.890,22.551,22.287,
-22.292,22.560,22.960,23.366,23.739,24.087,24.359,24.410,24.080,23.334,22.311,21.228,20.216,19.264,18.304,17.356,
-16.553,16.018,15.729,15.511,15.192,14.754,14.333,14.071,13.976,13.928,13.808,13.606,13.391,13.210,13.049,12.884,
-12.769,12.810,13.050,13.384,13.616,13.616,13.422,13.190,13.058,13.052,13.113,13.186,13.247,13.262,13.160,12.886,
-12.483,12.105,11.909,11.915,11.974,11.867,11.449,10.716,9.759,8.678,7.541,6.397,5.293,4.271,3.352,2.548,
-1.881,1.376,1.022,.759,.507,.234,-.028,-.230,-.375,-.523,-.730,-.984,-1.219,-1.391,-1.539,-1.742,
--2.032,-2.360,-2.639,-2.839,-3.013,-3.233,-3.511,-3.787,-3.999,-4.141,-4.268,-4.429,-4.623,-4.811,-4.973,-5.131,
--5.319,-5.545,-5.777,-5.980,-6.144,-6.296,-6.457,-6.630,-6.795,-6.941,-7.078,-7.220,-7.365,-7.488,-7.562,-7.583,
--7.579,-7.587,-7.621,-7.663,-7.673,-7.627,-7.529,-7.405,-7.274,-7.134,-6.965,-6.758,-6.525,-6.285,-6.044,-5.795,
--5.533,-5.282,-5.074,-4.927,-4.812,-4.671,-4.460,-4.174,-3.847,-3.517,-3.210,-2.940,-2.717,-2.535,-2.364,-2.157,
--1.878,-1.543,-1.203,-.900,-.622,-.317,.063,.514,.997,1.481,1.969,2.481,3.017,3.547,4.053,4.552,
-5.083,5.661,6.247,6.776,7.210,7.572,7.908,8.254,8.612,8.980,9.367,9.785,10.220,10.634,11.003,11.355,
-11.746,12.202,12.678,13.097,13.426,13.711,14.033,14.428,14.860,15.269,15.640,16.007,16.409,16.839,17.251,17.620,
-17.969,18.333,18.713,19.070,19.374,19.643,19.931,20.260,20.600,20.898,21.142,21.369,21.612,21.854,22.050,22.189,
-22.332,22.557,22.879,23.224,23.504,23.694,23.850,24.023,24.194,24.287,24.256,24.148,24.064,24.068,24.126,24.153,
-24.100,23.996,23.904,23.853,23.810,23.731,23.619,23.527,23.511,23.570,23.642,23.653,23.578,23.466,23.401,23.431,
-23.523,23.577,23.496,23.269,22.992,22.799,22.754,22.802,22.819,22.723,22.538,22.349,22.200,22.055,21.856,21.624,
-21.469,21.484,21.624,21.700,21.523,21.061,20.471,19.965,19.654,19.498,19.389,19.274,19.176,19.131,19.117,19.059,
-18.906,18.680,18.450,18.266,18.128,18.007,17.888,17.782,17.698,17.628,17.567,17.348,17.329,17.440,17.636,17.806,
-17.862,17.834,17.859,18.056,18.401,18.733,18.898,18.888,18.844,18.919,19.139,19.393,19.554,19.597,19.601,19.657,
-19.786,19.944,20.089,20.235,20.426,20.681,20.976,21.286,21.613,21.989,22.422,22.878,23.302,23.672,24.006,24.340,
-24.682,25.006,25.286,25.518,25.731,25.953,26.195,26.447,26.689,26.889,27.007,27.011,26.899,26.718,26.559,26.527,
-26.707,27.136,27.773,28.483,29.068,29.347,29.267,28.954,28.640,28.517,28.613,28.802,28.933,28.952,28.932,28.975,
-29.113,29.295,29.445,29.538,29.596,29.639,29.647,29.591,29.482,29.384,29.365,29.442,29.568,29.681,29.753,29.801,
-29.853,29.910,29.961,30.008,30.087,30.258,30.552,30.951,31.394,31.816,32.190,32.546,32.948,33.448,34.038,34.633,
-35.111,35.382,35.447,35.391,35.331,35.335,35.396,35.453,35.446,35.346,35.152,34.871,34.515,34.109,33.709,33.385,
-33.192,33.141,33.197,33.295,33.369,33.376,33.320,33.244,33.203,33.227,33.290,33.327,33.283,33.162,33.023,32.937,
-32.939,33.020,33.153,33.318,33.507,33.706,33.900,34.095,34.329,34.648,35.047,35.454,35.777,35.984,36.138,36.341,
-36.644,37.004,37.332,37.588,37.816,38.092,38.443,38.815,39.131,39.367,39.571,39.812,40.124,40.484,40.860,41.239,
-41.616,41.954,42.175,42.220,42.123,42.034,42.132,42.493,43.011,43.450,43.613,43.486,43.248,43.136,43.248,43.475,
-43.593,43.456,43.117,42.769,42.577,42.558,42.594,42.570,42.461,42.325,42.201,42.069,41.892,41.690,41.534,41.471,
-41.454,41.380,41.199,40.977,40.830,40.796,40.776,40.629,40.311,39.932,39.655,39.543,39.508,39.388,39.083,38.619,
-38.099,37.621,37.228,36.924,36.696,36.516,36.338,36.115,35.831,35.505,35.167,34.821,34.447,34.032,33.602,33.202,
-32.855,32.549,32.259,31.984,31.739,31.524,31.295,30.997,30.620,30.221,29.884,29.651,29.497,29.356,29.184,28.978,
-28.763,28.560,28.376,28.217,28.097,28.024,27.990,27.963,27.910,27.813,27.674,27.506,27.328,27.163,27.030,26.934,
-26.864,26.801,26.734,26.667,26.607,26.557,26.507,26.452,26.395,26.338,26.274,26.181,26.045,25.870,25.675,25.474,
-25.261,25.021,24.748,24.451,24.141,23.813,23.462,23.097,22.751,22.452,22.194,21.941,21.660,21.358,21.076,20.847,
-20.657,20.458,20.207,19.907,19.598,19.319,19.075,18.856,18.663,18.524,18.465,18.470,18.482,18.434,18.300,18.109,
-17.908,17.723,17.534,17.300,16.999,16.648,16.289,15.958,15.655,15.354,15.023,14.653,14.261,13.872,13.506,13.162,
-12.835,12.522,12.226,11.945,11.660,11.344,10.977,10.570,10.150,9.748,9.370,9.004,8.636,8.259,7.873,7.470,
-7.037,6.579,6.135,5.762,5.491,5.291,5.079,4.780,4.375,3.913,3.457,3.038,2.637,2.222,1.778,1.319,
-.858,.392,-.091,-.586,-1.066,-1.505,-1.913,-2.331,-2.800,-3.318,-3.840,-4.316,-4.738,-5.145,-5.590,-6.093,
--6.627,-7.145,-7.624,-8.077,-8.540,-9.029,-9.536,-10.034,-10.508,-10.967,-11.428,-11.900,-12.378,-12.851,-13.319,-13.789,
--14.261,-14.721,-15.152,-15.553,-15.950,-16.382,-16.867,-17.389,-17.901,-18.365,-18.775,-19.156,-19.543,-19.951,-20.373,-20.798,
--21.219,-21.640,-22.061,-22.468,-22.836,-23.151,-23.423,-23.682,-23.965,-24.285,-24.627,-24.960,-25.260,-25.534,-25.810,-26.114,
--26.453,-26.809,-27.160,-27.500,-27.834,-28.167,-28.488,-28.775,-29.018,-29.234,-29.463,-29.733,-30.039,-30.338,-30.585,-30.768,
--30.913,-31.065,-31.247,-31.448,-31.639,-31.799,-31.939,-32.087,-32.255,-32.428,-32.571,-32.670,-32.742,-32.825,-32.937,-33.058,
--33.147,-33.180,-33.170,-33.156,-33.169,-33.208,-33.252,-33.275,-33.272,-33.247,-33.212,-33.175,-33.144,-33.127,-33.126,-33.131,
--33.128,-33.116,-33.105,-33.103,-33.102,-33.082,-33.029,-32.958,-32.896,-32.857,-32.828,-32.784,-32.714,-32.632,-32.561,-32.506,
--32.450,-32.377,-32.285,-32.191,-32.103,-32.007,-31.884,-31.734,-31.576,-31.434,-31.313,-31.194,-31.052,-30.876,-30.673,-30.461,
--30.260,-30.088,-29.956,-29.858,-29.760,-29.627,-29.445,-29.237,-29.044,-28.883,-28.737,-28.577,-28.399,-28.229,-28.087,-27.962,
--27.806,-27.584,-27.301,-27.004,-26.739,-26.517,-26.318,-26.116,-25.894,-25.641,-25.340,-24.982,-24.583,-24.190,-23.846,-23.557,
--23.286,-22.987,-22.650,-22.301,-21.972,-21.665,-21.353,-21.009,-20.632,-20.251,-19.895,-19.574,-19.279,-18.989,-18.690,-18.373,
--18.044,-17.716,-17.400,-17.094,-16.787,-16.477,-16.194,-15.980,-15.854,-15.778,-15.681,-15.523,-15.340,-15.213,-15.166,-15.119,
--14.937,-14.556,-14.055,-13.586,-13.204,-12.767,-12.004,-10.726,-9.004,-7.158,-5.566,-4.442,-3.753,-3.296,-2.872,-2.411,
--1.970,-1.654,-1.504,-1.462,-1.418,-1.300,-1.130,-.985,-.892,-.768,-.494,-.069,.283,.223,-.452,-1.602,
--2.795,-3.598,-3.873,-3.818,-3.730,-3.738,-3.743,-3.583,-3.247,-2.888,-2.659,-2.547,-2.395,-2.076,-1.626,-1.213,
--.974,-.905,-.893,-.834,-.701,-.511,-.272,.025,.351,.624,.763,.774,.761,.839,1.033,1.268,
-1.448,1.543,1.604,1.692,1.818,1.948,2.058,2.170,2.331,2.567,2.853,3.145,3.418,3.679,3.951,4.245,
-4.550,4.847,5.123,5.371,5.596,5.814,6.051,6.332,6.669,7.041,7.408,7.730,7.999,8.234,8.467,8.713,
-8.967,9.223,9.512,9.904,10.475,11.250,12.158,13.057,13.811,14.368,14.774,15.121,15.470,15.813,16.090,16.250,
-16.293,16.283,16.317,16.467,16.726,16.997,17.150,17.130,17.040,17.095,17.449,18.017,18.471,18.444,17.798,16.728,
-15.601,14.663,13.891,13.118,12.298,11.648,11.520,12.110,13.282,14.649,15.824,16.619,17.051,17.204,17.127,16.850,
-16.456,16.096,15.911,15.946,16.149,16.454,16.853,17.386,18.049,18.739,19.285,19.562,19.565,19.401,19.184,18.954,
-18.660,18.240,17.698,17.120,16.616,16.230,15.902,15.512,14.978,14.323,13.663,13.120,12.731,12.431,12.115,11.733,
-11.312,10.911,10.543,10.151,9.660,9.053,8.402,7.820,7.371,7.042,6.776,6.535,6.332,6.184,6.061,5.888,
-5.600,5.216,4.847,4.621,4.593,4.704,4.818,4.813,4.647,4.371,4.081,3.848,3.670,3.479,3.197,2.821,
-2.474,2.368,2.672,3.376,4.235,4.872,4.977,4.481,3.574,2.585,1.794,1.318,1.121,1.088,1.117,1.143,
-1.129,1.045,.877,.634,.359,.109,-.072,-.179,-.243,-.310,-.406,-.515,-.594,-.615,-.593,-.589,
--.660,-.810,-.977,-1.079,-1.080,-1.021,-.987,-1.046,-1.206,-1.425,-1.655,-1.873,-2.084,-2.296,-2.505,-2.698,
--2.864,-2.998,-3.100,-3.169,-3.217,-3.273,-3.378,-3.565,-3.836,-4.161,-4.484,-4.762,-4.984,-5.183,-5.417,-5.735,
--6.136,-6.568,-6.954,-7.248,-7.464,-7.671,-7.934,-8.269,-8.635,-8.968,-9.234,-9.440,-9.619,-9.801,-9.992,-10.183,
--10.358,-10.506,-10.616,-10.683,-10.717,-10.741,-10.781,-10.843,-10.906,-10.941,-10.928,-10.880,-10.836,-10.840,-10.919,-11.066,
--11.251,-11.427,-11.560,-11.640,-11.687,-11.738,-11.818,-11.925,-12.038,-12.134,-12.209,-12.281,-12.370,-12.481,-12.599,-12.702,
--12.777,-12.835,-12.897,-12.973,-13.061,-13.140,-13.194,-13.219,-13.223,-13.219,-13.213,-13.206,-13.199,-13.190,-13.179,-13.164,
--13.140,-13.114,-13.101,-13.117,-13.159,-13.210,-13.247,-13.261,-13.263,-13.265,-13.267,-13.257,-13.221,-13.165,-13.104,-13.058,
--13.030,-13.020,-13.024,-13.043,-13.066,-13.070,-13.033,-12.957,-12.869,-12.802,-12.767,-12.746,-12.712,-12.659,-12.605,-12.565,
--12.530,-12.476,-12.387,-12.279,-12.186,-12.131,-12.107,-12.088,-12.060,-12.032,-12.023,-12.045,-12.085,-12.125,-12.155,-12.187,
--12.241,-12.334,-12.461,-12.599,-12.716,-12.789,-12.814,-12.810,-12.803,-12.808,-12.820,-12.825,-12.819,-12.806,-12.796,-12.780,
--12.737,-12.651,-12.532,-12.409,-12.310,-12.240,-12.181,-12.112,-12.028,-11.939,-11.859,-11.793,-11.740,-11.694,-11.645,-11.580,
--11.490,-11.377,-11.265,-11.177,-11.120,-11.076,-11.016,-10.932,-10.840,-10.765,-10.711,-10.657,-10.578,-10.473,-10.370,-10.308,
--10.299,-10.325,-10.351,-10.349,-10.313,-10.253,-10.185,-10.120,-10.063,-10.014,-9.972,-9.934,-9.891,-9.833,-9.755,-9.660,
--9.555,-9.449,-9.340,-9.223,-9.094,-8.957,-8.826,-8.713,-8.618,-8.535,-8.452,-8.364,-8.269,-8.164,-8.052,-7.943,
--7.853,-7.794,-7.759,-7.726,-7.681,-7.627,-7.587,-7.568,-7.546,-7.486,-7.376,-7.251,-7.154,-7.085,-6.984,-6.773,
--6.432,-6.026,-5.652,-5.366,-5.141,-4.914,-4.653,-4.391,-4.179,-4.032,-3.915,-3.781,-3.625,-3.477,-3.360,-3.257,
--3.128,-2.960,-2.781,-2.635,-2.532,-2.434,-2.299,-2.125,-1.949,-1.807,-1.693,-1.574,-1.429,-1.282,-1.172,-1.111,
--1.065,-.986,-.860,-.717,-.595,-.500,-.403,-.283,-.151,-.042,.030,.087,.168,.289,.428,.554,
-.654,.743,.841,.959,1.100,1.267,1.468,1.694,1.919,2.114,2.286,2.470,2.703,2.984,3.279,3.557,
-3.825,4.110,4.428,4.758,5.068,5.355,5.647,5.973,6.327,6.678,7.012,7.349,7.717,8.107,8.475,8.788,
-9.069,9.373,9.724,10.084,10.389,10.624,10.837,11.077,11.312,11.436,11.357,11.093,10.775,10.560,10.558,10.831,
-11.445,12.463,13.862,15.439,16.855,17.813,18.267,18.467,18.797,19.510,20.563,21.658,22.446,22.744,22.619,22.324,
-22.126,22.168,22.422,22.772,23.134,23.508,23.922,24.322,24.532,24.354,23.718,22.757,21.702,20.707,19.760,18.777,
-17.762,16.857,16.222,15.865,15.609,15.251,14.748,14.242,13.915,13.805,13.790,13.716,13.534,13.305,13.098,12.920,
-12.755,12.641,12.669,12.888,13.222,13.500,13.587,13.485,13.297,13.126,13.007,12.928,12.889,12.897,12.909,12.813,
-12.517,12.057,11.609,11.356,11.317,11.313,11.092,10.507,9.600,8.522,7.417,6.346,5.321,4.352,3.463,2.680,
-2.017,1.480,1.070,.773,.542,.320,.080,-.157,-.355,-.514,-.674,-.873,-1.097,-1.300,-1.458,-1.611,
--1.821,-2.105,-2.407,-2.652,-2.824,-2.976,-3.173,-3.418,-3.656,-3.832,-3.954,-4.079,-4.248,-4.447,-4.631,-4.782,
--4.929,-5.119,-5.359,-5.611,-5.830,-6.006,-6.170,-6.351,-6.555,-6.759,-6.945,-7.113,-7.269,-7.410,-7.517,-7.581,
--7.615,-7.648,-7.700,-7.760,-7.796,-7.778,-7.703,-7.593,-7.473,-7.348,-7.203,-7.023,-6.810,-6.581,-6.350,-6.118,
--5.873,-5.616,-5.367,-5.149,-4.972,-4.815,-4.642,-4.430,-4.181,-3.908,-3.619,-3.324,-3.038,-2.789,-2.594,-2.432,
--2.247,-1.984,-1.638,-1.254,-.883,-.543,-.201,.181,.614,1.079,1.555,2.042,2.553,3.083,3.611,4.118,
-4.613,5.125,5.666,6.213,6.719,7.158,7.543,7.905,8.269,8.639,9.017,9.413,9.831,10.255,10.654,11.018,
-11.371,11.756,12.183,12.614,12.998,13.330,13.665,14.065,14.533,15.014,15.445,15.820,16.182,16.572,16.978,17.358,
-17.693,18.015,18.369,18.762,19.156,19.516,19.843,20.170,20.507,20.828,21.097,21.314,21.517,21.732,21.940,22.101,
-22.221,22.368,22.618,22.978,23.367,23.686,23.901,24.058,24.210,24.345,24.404,24.355,24.244,24.164,24.169,24.228,
-24.263,24.232,24.161,24.109,24.097,24.091,24.043,23.947,23.850,23.805,23.822,23.855,23.842,23.757,23.634,23.537,
-23.506,23.521,23.511,23.410,23.219,23.008,22.867,22.826,22.839,22.829,22.761,22.667,22.586,22.508,22.380,22.184,
-21.997,21.936,22.035,22.167,22.109,21.729,21.104,20.474,20.052,19.877,19.828,19.765,19.650,19.537,19.470,19.416,
-19.302,19.094,18.840,18.616,18.450,18.312,18.160,17.982,17.796,17.620,17.462,17.348,17.031,17.029,17.238,17.624,
-18.016,18.233,18.244,18.200,18.293,18.569,18.890,19.076,19.079,19.018,19.055,19.237,19.475,19.649,19.727,19.779,
-19.881,20.048,20.234,20.409,20.593,20.825,21.111,21.416,21.710,22.006,22.346,22.745,23.171,23.575,23.940,24.286,
-24.637,24.980,25.276,25.506,25.697,25.903,26.154,26.429,26.679,26.862,26.966,26.996,26.967,26.904,26.858,26.899,
-27.088,27.443,27.925,28.445,28.887,29.144,29.158,28.964,28.686,28.485,28.461,28.597,28.779,28.900,28.937,28.953,
-29.023,29.158,29.305,29.400,29.425,29.410,29.391,29.379,29.365,29.356,29.374,29.443,29.555,29.678,29.779,29.850,
-29.908,29.967,30.035,30.115,30.222,30.379,30.602,30.884,31.204,31.537,31.874,32.222,32.608,33.063,33.611,34.229,
-34.837,35.319,35.582,35.622,35.528,35.424,35.383,35.392,35.385,35.301,35.134,34.906,34.636,34.323,33.962,33.586,
-33.264,33.068,33.030,33.118,33.250,33.341,33.343,33.266,33.167,33.113,33.131,33.187,33.210,33.140,32.986,32.815,
-32.710,32.719,32.838,33.044,33.316,33.642,33.993,34.330,34.632,34.920,35.241,35.615,35.997,36.309,36.520,36.687,
-36.911,37.250,37.660,38.043,38.340,38.584,38.850,39.165,39.479,39.722,39.888,40.056,40.311,40.661,41.036,41.368,
-41.663,41.979,42.324,42.602,42.680,42.535,42.335,42.336,42.670,43.203,43.613,43.653,43.362,43.047,43.019,43.328,
-43.715,43.838,43.561,43.056,42.639,42.501,42.577,42.656,42.593,42.415,42.251,42.170,42.123,42.022,41.856,41.698,
-41.608,41.552,41.437,41.224,40.996,40.879,40.907,40.963,40.885,40.618,40.274,40.030,39.963,39.986,39.917,39.633,
-39.140,38.550,37.986,37.527,37.190,36.959,36.789,36.626,36.418,36.147,35.826,35.483,35.127,34.753,34.357,33.958,
-33.586,33.261,32.978,32.725,32.493,32.274,32.044,31.765,31.418,31.030,30.668,30.385,30.185,30.018,29.831,29.606,
-29.362,29.124,28.900,28.693,28.514,28.387,28.321,28.296,28.269,28.204,28.094,27.950,27.792,27.633,27.484,27.359,
-27.265,27.201,27.152,27.105,27.057,27.012,26.965,26.907,26.829,26.736,26.640,26.546,26.444,26.321,26.172,26.002,
-25.819,25.618,25.394,25.145,24.875,24.583,24.259,23.896,23.513,23.150,22.844,22.595,22.365,22.113,21.838,21.571,
-21.343,21.142,20.920,20.635,20.293,19.945,19.644,19.418,19.260,19.155,19.095,19.070,19.053,18.999,18.877,18.691,
-18.482,18.287,18.113,17.932,17.702,17.409,17.075,16.738,16.426,16.134,15.833,15.494,15.111,14.710,14.331,14.001,
-13.718,13.456,13.183,12.883,12.564,12.234,11.894,11.531,11.134,10.714,10.297,9.906,9.542,9.186,8.810,8.397,
-7.955,7.510,7.103,6.765,6.507,6.301,6.088,5.807,5.433,4.995,4.547,4.125,3.722,3.302,2.841,2.347,
-1.857,1.393,.950,.508,.057,-.392,-.824,-1.248,-1.691,-2.171,-2.679,-3.175,-3.632,-4.056,-4.483,-4.949,
--5.457,-5.982,-6.491,-6.975,-7.445,-7.918,-8.400,-8.884,-9.367,-9.851,-10.341,-10.840,-11.338,-11.827,-12.301,-12.763,
--13.216,-13.660,-14.091,-14.510,-14.928,-15.364,-15.832,-16.333,-16.847,-17.343,-17.792,-18.190,-18.557,-18.925,-19.319,-19.744,
--20.181,-20.615,-21.039,-21.454,-21.855,-22.224,-22.540,-22.810,-23.070,-23.366,-23.716,-24.095,-24.452,-24.756,-25.020,-25.285,
--25.585,-25.921,-26.271,-26.619,-26.968,-27.325,-27.677,-27.991,-28.242,-28.441,-28.642,-28.902,-29.238,-29.612,-29.957,-30.218,
--30.390,-30.516,-30.650,-30.827,-31.040,-31.257,-31.447,-31.606,-31.754,-31.909,-32.068,-32.206,-32.308,-32.385,-32.471,-32.582,
--32.695,-32.764,-32.764,-32.725,-32.712,-32.766,-32.869,-32.955,-32.969,-32.913,-32.838,-32.795,-32.793,-32.804,-32.798,-32.769,
--32.741,-32.734,-32.750,-32.773,-32.782,-32.765,-32.720,-32.659,-32.597,-32.550,-32.522,-32.504,-32.482,-32.446,-32.398,-32.346,
--32.290,-32.223,-32.140,-32.047,-31.954,-31.865,-31.772,-31.658,-31.522,-31.377,-31.239,-31.114,-30.990,-30.853,-30.690,-30.501,
--30.297,-30.093,-29.911,-29.764,-29.647,-29.532,-29.389,-29.212,-29.025,-28.862,-28.733,-28.613,-28.472,-28.305,-28.135,-27.984,
--27.841,-27.667,-27.431,-27.151,-26.871,-26.632,-26.429,-26.227,-25.994,-25.721,-25.416,-25.087,-24.738,-24.381,-24.040,-23.734,
--23.458,-23.186,-22.895,-22.593,-22.301,-22.026,-21.742,-21.413,-21.033,-20.637,-20.272,-19.961,-19.684,-19.404,-19.102,-18.780,
--18.452,-18.123,-17.794,-17.472,-17.165,-16.878,-16.611,-16.375,-16.191,-16.074,-16.004,-15.921,-15.775,-15.577,-15.400,-15.307,
--15.274,-15.189,-14.942,-14.524,-14.034,-13.573,-13.127,-12.546,-11.652,-10.384,-8.859,-7.301,-5.904,-4.749,-3.805,-3.008,
--2.332,-1.809,-1.484,-1.363,-1.377,-1.414,-1.376,-1.235,-1.036,-.834,-.641,-.439,-.259,-.243,-.591,-1.401,
--2.531,-3.639,-4.388,-4.662,-4.609,-4.477,-4.407,-4.361,-4.229,-3.978,-3.683,-3.428,-3.211,-2.950,-2.592,-2.185,
--1.846,-1.652,-1.579,-1.544,-1.480,-1.368,-1.205,-.974,-.666,-.331,-.067,.057,.079,.124,.292,.567,
-.827,.963,.978,.975,1.049,1.209,1.384,1.514,1.610,1.737,1.946,2.231,2.543,2.840,3.114,3.381,
-3.649,3.912,4.165,4.411,4.655,4.893,5.123,5.353,5.616,5.943,6.331,6.738,7.108,7.412,7.669,7.921,
-8.193,8.474,8.743,9.025,9.398,9.957,10.731,11.645,12.540,13.269,13.774,14.110,14.383,14.674,14.986,15.261,
-15.439,15.514,15.547,15.634,15.831,16.098,16.311,16.353,16.241,16.166,16.380,16.986,17.782,18.334,18.253,17.473,
-16.287,15.118,14.203,13.495,12.837,12.237,11.952,12.289,13.304,14.683,15.923,16.659,16.848,16.703,16.457,16.209,
-15.938,15.632,15.369,15.269,15.402,15.739,16.199,16.722,17.285,17.862,18.382,18.749,18.896,18.843,18.675,18.480,
-18.282,18.033,17.667,17.167,16.598,16.064,15.639,15.304,14.966,14.539,14.015,13.480,13.030,12.686,12.379,12.022,
-11.601,11.186,10.847,10.553,10.171,9.578,8.786,7.963,7.309,6.912,6.699,6.523,6.300,6.051,5.838,5.663,
-5.450,5.125,4.711,4.334,4.134,4.149,4.287,4.386,4.322,4.075,3.728,3.403,3.190,3.087,2.999,2.805,
-2.453,2.040,1.778,1.869,2.349,3.043,3.660,3.967,3.910,3.580,3.102,2.540,1.915,1.277,.741,.429,
-.374,.480,.576,.532,.326,.032,-.251,-.462,-.595,-.679,-.752,-.840,-.947,-1.051,-1.120,-1.142,
--1.143,-1.171,-1.257,-1.379,-1.474,-1.497,-1.457,-1.421,-1.460,-1.602,-1.820,-2.070,-2.317,-2.552,-2.772,-2.968,
--3.134,-3.271,-3.391,-3.501,-3.595,-3.661,-3.709,-3.779,-3.921,-4.165,-4.488,-4.823,-5.101,-5.294,-5.437,-5.609,
--5.879,-6.262,-6.702,-7.109,-7.417,-7.627,-7.802,-8.017,-8.309,-8.655,-9.001,-9.303,-9.551,-9.764,-9.966,-10.166,
--10.359,-10.535,-10.686,-10.806,-10.889,-10.940,-10.968,-10.990,-11.017,-11.045,-11.064,-11.061,-11.040,-11.018,-11.022,-11.075,
--11.184,-11.334,-11.493,-11.631,-11.738,-11.824,-11.916,-12.031,-12.162,-12.284,-12.373,-12.427,-12.465,-12.515,-12.592,-12.691,
--12.795,-12.887,-12.963,-13.031,-13.102,-13.178,-13.255,-13.322,-13.371,-13.401,-13.417,-13.428,-13.439,-13.449,-13.447,-13.421,
--13.367,-13.297,-13.238,-13.215,-13.239,-13.297,-13.362,-13.415,-13.452,-13.480,-13.498,-13.494,-13.454,-13.380,-13.296,-13.228,
--13.186,-13.162,-13.143,-13.127,-13.119,-13.119,-13.108,-13.064,-12.985,-12.890,-12.811,-12.760,-12.729,-12.698,-12.665,-12.638,
--12.623,-12.601,-12.548,-12.451,-12.333,-12.233,-12.177,-12.163,-12.162,-12.150,-12.122,-12.091,-12.068,-12.054,-12.048,-12.052,
--12.076,-12.134,-12.231,-12.356,-12.488,-12.602,-12.677,-12.710,-12.718,-12.724,-12.742,-12.768,-12.786,-12.781,-12.754,-12.711,
--12.656,-12.587,-12.501,-12.407,-12.316,-12.238,-12.170,-12.098,-12.016,-11.931,-11.852,-11.784,-11.724,-11.668,-11.614,-11.560,
--11.498,-11.417,-11.318,-11.215,-11.132,-11.073,-11.019,-10.946,-10.849,-10.749,-10.671,-10.619,-10.570,-10.496,-10.400,-10.315,
--10.275,-10.284,-10.312,-10.318,-10.287,-10.234,-10.188,-10.157,-10.127,-10.078,-10.004,-9.922,-9.855,-9.809,-9.766,-9.701,
--9.605,-9.488,-9.374,-9.275,-9.185,-9.089,-8.980,-8.864,-8.758,-8.672,-8.602,-8.541,-8.476,-8.392,-8.280,-8.142,
--8.000,-7.889,-7.834,-7.825,-7.825,-7.798,-7.745,-7.693,-7.668,-7.658,-7.625,-7.547,-7.439,-7.327,-7.198,-6.988,
--6.632,-6.142,-5.623,-5.208,-4.958,-4.824,-4.705,-4.535,-4.334,-4.162,-4.045,-3.950,-3.832,-3.677,-3.517,-3.384,
--3.269,-3.141,-2.983,-2.822,-2.691,-2.592,-2.489,-2.348,-2.183,-2.038,-1.943,-1.874,-1.779,-1.636,-1.476,-1.352,
--1.285,-1.242,-1.173,-1.064,-.940,-.829,-.725,-.601,-.445,-.288,-.174,-.113,-.072,.001,.122,.274,
-.426,.573,.723,.885,1.047,1.204,1.366,1.559,1.791,2.040,2.278,2.503,2.740,3.011,3.305,3.588,
-3.847,4.105,4.402,4.743,5.094,5.417,5.712,6.018,6.361,6.723,7.066,7.381,7.699,8.051,8.421,8.757,
-9.037,9.302,9.614,9.976,10.319,10.566,10.729,10.899,11.142,11.398,11.520,11.407,11.120,10.848,10.765,10.927,
-11.317,11.949,12.906,14.214,15.713,17.065,17.960,18.351,18.506,18.810,19.492,20.474,21.453,22.127,22.378,22.309,
-22.141,22.062,22.143,22.332,22.547,22.763,23.043,23.461,23.980,24.406,24.484,24.083,23.298,22.373,21.499,20.680,
-19.799,18.791,17.758,16.884,16.255,15.778,15.281,14.700,14.143,13.774,13.641,13.632,13.580,13.408,13.158,12.908,
-12.695,12.522,12.421,12.465,12.695,13.043,13.358,13.507,13.462,13.287,13.063,12.832,12.620,12.470,12.418,12.430,
-12.388,12.181,11.812,11.419,11.145,10.986,10.770,10.283,9.444,8.357,7.207,6.133,5.162,4.267,3.440,2.710,
-2.104,1.621,1.232,.913,.646,.414,.191,-.039,-.264,-.463,-.631,-.797,-.987,-1.197,-1.395,-1.562,
--1.722,-1.920,-2.173,-2.442,-2.671,-2.839,-2.980,-3.135,-3.313,-3.481,-3.615,-3.732,-3.872,-4.056,-4.257,-4.432,
--4.572,-4.716,-4.907,-5.152,-5.411,-5.636,-5.820,-5.990,-6.179,-6.399,-6.635,-6.867,-7.085,-7.280,-7.441,-7.553,
--7.620,-7.665,-7.716,-7.782,-7.840,-7.860,-7.825,-7.745,-7.646,-7.544,-7.430,-7.287,-7.103,-6.886,-6.652,-6.416,
--6.181,-5.940,-5.692,-5.446,-5.212,-4.992,-4.778,-4.561,-4.339,-4.116,-3.887,-3.637,-3.358,-3.059,-2.775,-2.536,
--2.333,-2.121,-1.848,-1.502,-1.119,-.749,-.414,-.090,.267,.680,1.143,1.632,2.131,2.640,3.157,3.671,
-4.170,4.658,5.152,5.664,6.184,6.686,7.148,7.569,7.964,8.348,8.732,9.122,9.524,9.939,10.357,10.757,
-11.135,11.505,11.888,12.283,12.668,13.024,13.369,13.748,14.195,14.691,15.178,15.610,15.990,16.359,16.745,17.136,
-17.501,17.834,18.165,18.530,18.928,19.322,19.682,20.010,20.335,20.663,20.972,21.230,21.438,21.628,21.823,22.013,
-22.171,22.303,22.468,22.727,23.085,23.476,23.815,24.064,24.246,24.395,24.506,24.547,24.502,24.411,24.342,24.340,
-24.389,24.436,24.449,24.433,24.415,24.406,24.388,24.339,24.258,24.168,24.098,24.057,24.026,23.977,23.895,23.788,
-23.686,23.615,23.574,23.529,23.441,23.303,23.152,23.040,22.992,22.982,22.970,22.935,22.887,22.829,22.734,22.574,
-22.374,22.226,22.209,22.287,22.295,22.054,21.537,20.914,20.431,20.215,20.199,20.208,20.129,19.983,19.857,19.778,
-19.686,19.506,19.242,18.967,18.740,18.543,18.317,18.038,17.750,17.509,17.321,17.157,17.031,17.109,17.132,17.383,
-17.940,18.641,19.189,19.395,19.313,19.160,19.106,19.157,19.209,19.207,19.202,19.280,19.456,19.654,19.801,19.901,
-20.024,20.216,20.450,20.662,20.830,21.001,21.233,21.527,21.833,22.110,22.377,22.685,23.055,23.450,23.817,24.142,
-24.459,24.796,25.134,25.424,25.644,25.835,26.061,26.340,26.617,26.810,26.880,26.860,26.828,26.846,26.943,27.120,
-27.377,27.708,28.084,28.450,28.743,28.922,28.978,28.932,28.825,28.709,28.632,28.624,28.676,28.754,28.825,28.890,
-28.972,29.085,29.211,29.306,29.335,29.300,29.240,29.198,29.198,29.245,29.330,29.441,29.562,29.675,29.770,29.850,
-29.927,30.011,30.100,30.195,30.310,30.464,30.667,30.909,31.165,31.425,31.702,32.017,32.385,32.807,33.286,33.833,
-34.439,35.040,35.523,35.786,35.805,35.665,35.492,35.372,35.298,35.211,35.066,34.873,34.669,34.463,34.224,33.918,
-33.562,33.231,33.012,32.943,32.990,33.075,33.132,33.139,33.119,33.113,33.150,33.223,33.288,33.290,33.202,33.047,
-32.893,32.812,32.841,32.979,33.209,33.522,33.910,34.341,34.760,35.124,35.438,35.751,36.105,36.484,36.830,37.106,
-37.343,37.619,37.983,38.399,38.781,39.076,39.313,39.557,39.833,40.095,40.286,40.423,40.599,40.893,41.278,41.639,
-41.889,42.066,42.292,42.626,42.963,43.107,42.974,42.717,42.634,42.904,43.399,43.767,43.736,43.368,43.019,43.032,
-43.424,43.868,43.975,43.626,43.058,42.637,42.545,42.665,42.736,42.614,42.371,42.180,42.130,42.155,42.138,42.039,
-41.916,41.824,41.736,41.578,41.335,41.108,41.022,41.090,41.175,41.104,40.827,40.473,40.232,40.189,40.251,40.228,
-39.981,39.511,38.928,38.360,37.889,37.532,37.273,37.078,36.903,36.703,36.449,36.139,35.792,35.429,35.062,34.698,
-34.346,34.017,33.721,33.459,33.228,33.015,32.798,32.545,32.234,31.877,31.519,31.209,30.962,30.746,30.515,30.253,
-29.978,29.720,29.485,29.256,29.027,28.821,28.676,28.609,28.590,28.566,28.496,28.379,28.236,28.087,27.941,27.801,
-27.679,27.586,27.526,27.488,27.459,27.430,27.400,27.359,27.296,27.205,27.094,26.982,26.879,26.776,26.653,26.502,
-26.328,26.144,25.953,25.749,25.521,25.267,24.987,24.674,24.325,23.952,23.585,23.259,22.984,22.742,22.506,22.265,
-22.028,21.804,21.580,21.324,21.016,20.671,20.340,20.074,19.895,19.798,19.753,19.732,19.700,19.628,19.496,19.308,
-19.093,18.884,18.696,18.514,18.307,18.057,17.771,17.470,17.175,16.887,16.594,16.278,15.930,15.557,15.182,14.838,
-14.545,14.298,14.064,13.802,13.491,13.142,12.781,12.425,12.063,11.676,11.262,10.843,10.448,10.083,9.723,9.329,
-8.887,8.426,8.004,7.672,7.437,7.258,7.064,6.794,6.425,5.987,5.534,5.113,4.729,4.347,3.922,3.439,
-2.926,2.424,1.959,1.527,1.103,.669,.226,-.218,-.665,-1.125,-1.604,-2.091,-2.564,-3.014,-3.451,-3.896,
--4.365,-4.853,-5.348,-5.839,-6.327,-6.814,-7.299,-7.780,-8.258,-8.743,-9.239,-9.740,-10.236,-10.720,-11.199,-11.681,
--12.164,-12.633,-13.073,-13.487,-13.898,-14.331,-14.794,-15.280,-15.772,-16.258,-16.725,-17.161,-17.557,-17.921,-18.284,-18.683,
--19.129,-19.603,-20.066,-20.493,-20.883,-21.246,-21.582,-21.884,-22.157,-22.434,-22.755,-23.135,-23.537,-23.905,-24.206,-24.461,
--24.723,-25.030,-25.381,-25.751,-26.123,-26.500,-26.880,-27.236,-27.528,-27.737,-27.901,-28.094,-28.377,-28.752,-29.159,-29.519,
--29.784,-29.955,-30.077,-30.205,-30.375,-30.590,-30.821,-31.035,-31.214,-31.368,-31.521,-31.679,-31.827,-31.946,-32.037,-32.127,
--32.235,-32.341,-32.402,-32.391,-32.344,-32.333,-32.408,-32.542,-32.648,-32.660,-32.586,-32.497,-32.459,-32.477,-32.497,-32.470,
--32.404,-32.348,-32.347,-32.396,-32.448,-32.455,-32.404,-32.319,-32.235,-32.177,-32.150,-32.149,-32.157,-32.160,-32.146,-32.113,
--32.066,-32.014,-31.959,-31.895,-31.813,-31.714,-31.603,-31.484,-31.360,-31.233,-31.103,-30.976,-30.853,-30.733,-30.608,-30.468,
--30.305,-30.121,-29.927,-29.744,-29.586,-29.450,-29.315,-29.162,-28.992,-28.833,-28.709,-28.618,-28.528,-28.403,-28.237,-28.052,
--27.872,-27.692,-27.487,-27.243,-26.979,-26.730,-26.516,-26.316,-26.092,-25.818,-25.503,-25.172,-24.845,-24.527,-24.218,-23.924,
--23.648,-23.380,-23.103,-22.814,-22.531,-22.273,-22.031,-21.764,-21.436,-21.054,-20.671,-20.339,-20.062,-19.796,-19.496,-19.154,
--18.799,-18.462,-18.145,-17.838,-17.538,-17.260,-17.018,-16.802,-16.599,-16.413,-16.267,-16.171,-16.086,-15.948,-15.731,-15.489,
--15.322,-15.280,-15.295,-15.222,-14.950,-14.490,-13.957,-13.459,-12.992,-12.434,-11.630,-10.498,-9.079,-7.512,-5.965,-4.573,
--3.413,-2.506,-1.846,-1.419,-1.207,-1.176,-1.249,-1.317,-1.282,-1.106,-.829,-.540,-.338,-.320,-.576,-1.177,
--2.110,-3.227,-4.271,-4.997,-5.308,-5.298,-5.161,-5.046,-4.976,-4.888,-4.719,-4.467,-4.163,-3.831,-3.474,-3.106,
--2.769,-2.513,-2.349,-2.246,-2.160,-2.070,-1.966,-1.826,-1.616,-1.328,-1.018,-.776,-.645,-.572,-.446,-.205,
-.092,.319,.398,.374,.373,.484,.685,.881,1.004,1.077,1.182,1.377,1.653,1.952,2.228,2.476,
-2.715,2.959,3.208,3.460,3.719,3.986,4.246,4.483,4.702,4.941,5.246,5.630,6.052,6.451,6.792,7.091,
-7.391,7.711,8.026,8.308,8.575,8.909,9.411,10.121,10.972,11.820,12.523,13.023,13.356,13.616,13.877,14.155,
-14.416,14.613,14.740,14.844,14.999,15.239,15.511,15.690,15.682,15.542,15.487,15.768,16.449,17.291,17.849,17.761,
-16.995,15.848,14.712,13.799,13.078,12.453,11.984,11.919,12.471,13.575,14.838,15.769,16.096,15.898,15.482,15.126,
-14.913,14.775,14.639,14.535,14.572,14.841,15.337,15.971,16.625,17.207,17.664,17.974,18.136,18.167,18.101,17.975,
-17.815,17.621,17.366,17.013,16.549,16.008,15.476,15.037,14.715,14.457,14.174,13.818,13.421,13.045,12.710,12.366,
-11.955,11.492,11.068,10.751,10.484,10.097,9.448,8.573,7.685,7.026,6.680,6.527,6.369,6.098,5.759,5.455,
-5.223,4.995,4.689,4.311,3.968,3.778,3.762,3.829,3.841,3.709,3.436,3.099,2.795,2.594,2.499,2.443,
-2.328,2.088,1.753,1.440,1.271,1.288,1.440,1.662,1.949,2.339,2.801,3.154,3.137,2.595,1.640,.625,
--.080,-.316,-.209,-.029,.013,-.119,-.339,-.551,-.724,-.875,-1.019,-1.151,-1.262,-1.360,-1.458,-1.552,
--1.623,-1.667,-1.709,-1.782,-1.890,-1.990,-2.034,-2.016,-1.986,-2.014,-2.133,-2.329,-2.557,-2.788,-3.012,-3.227,
--3.423,-3.587,-3.719,-3.836,-3.956,-4.073,-4.165,-4.222,-4.273,-4.374,-4.569,-4.851,-5.159,-5.419,-5.596,-5.722,
--5.870,-6.110,-6.457,-6.864,-7.251,-7.554,-7.768,-7.941,-8.138,-8.398,-8.711,-9.040,-9.345,-9.613,-9.856,-10.089,
--10.316,-10.526,-10.706,-10.852,-10.969,-11.062,-11.132,-11.174,-11.184,-11.170,-11.149,-11.138,-11.147,-11.171,-11.199,-11.226,
--11.261,-11.323,-11.423,-11.558,-11.706,-11.850,-11.989,-12.132,-12.287,-12.443,-12.573,-12.653,-12.679,-12.675,-12.676,-12.713,
--12.792,-12.898,-13.007,-13.095,-13.155,-13.193,-13.230,-13.280,-13.349,-13.426,-13.498,-13.555,-13.596,-13.627,-13.646,-13.644,
--13.607,-13.531,-13.437,-13.356,-13.317,-13.325,-13.368,-13.425,-13.487,-13.554,-13.620,-13.664,-13.659,-13.592,-13.485,-13.383,
--13.323,-13.308,-13.311,-13.301,-13.267,-13.222,-13.184,-13.152,-13.112,-13.052,-12.974,-12.889,-12.808,-12.734,-12.669,-12.621,
--12.599,-12.598,-12.593,-12.556,-12.480,-12.382,-12.295,-12.240,-12.215,-12.199,-12.177,-12.144,-12.104,-12.064,-12.031,-12.015,
--12.026,-12.071,-12.148,-12.246,-12.352,-12.452,-12.536,-12.595,-12.624,-12.633,-12.639,-12.660,-12.697,-12.731,-12.737,-12.700,
--12.623,-12.524,-12.423,-12.336,-12.265,-12.207,-12.153,-12.092,-12.021,-11.945,-11.870,-11.800,-11.732,-11.659,-11.584,-11.516,
--11.458,-11.404,-11.340,-11.259,-11.172,-11.092,-11.024,-10.956,-10.873,-10.779,-10.691,-10.624,-10.572,-10.512,-10.429,-10.337,
--10.270,-10.251,-10.268,-10.281,-10.260,-10.207,-10.156,-10.136,-10.141,-10.137,-10.091,-10.000,-9.896,-9.811,-9.758,-9.715,
--9.651,-9.553,-9.433,-9.317,-9.219,-9.140,-9.069,-8.997,-8.926,-8.857,-8.790,-8.722,-8.652,-8.576,-8.487,-8.371,
--8.223,-8.067,-7.945,-7.888,-7.886,-7.894,-7.862,-7.785,-7.703,-7.658,-7.655,-7.659,-7.635,-7.576,-7.491,-7.360,
--7.127,-6.744,-6.236,-5.714,-5.310,-5.078,-4.964,-4.860,-4.703,-4.513,-4.353,-4.247,-4.166,-4.059,-3.910,-3.747,
--3.601,-3.470,-3.327,-3.164,-3.006,-2.880,-2.778,-2.660,-2.499,-2.315,-2.165,-2.079,-2.031,-1.962,-1.842,-1.696,
--1.574,-1.500,-1.450,-1.385,-1.293,-1.188,-1.086,-.973,-.826,-.650,-.481,-.361,-.289,-.228,-.136,-.002,
-.157,.325,.507,.713,.929,1.126,1.295,1.460,1.664,1.925,2.216,2.499,2.766,3.037,3.330,3.629,
-3.904,4.153,4.411,4.716,5.059,5.393,5.684,5.954,6.260,6.625,7.008,7.347,7.625,7.887,8.185,8.511,
-8.817,9.080,9.339,9.653,10.013,10.339,10.561,10.712,10.898,11.176,11.456,11.561,11.400,11.080,10.835,10.844,
-11.118,11.576,12.200,13.076,14.268,15.643,16.884,17.699,18.061,18.241,18.596,19.299,20.230,21.103,21.685,21.934,
-21.974,21.972,22.033,22.166,22.319,22.444,22.563,22.775,23.184,23.781,24.374,24.676,24.489,23.858,23.023,22.222,
-21.500,20.724,19.755,18.624,17.516,16.600,15.889,15.272,14.661,14.098,13.697,13.509,13.453,13.384,13.213,12.962,
-12.703,12.485,12.324,12.249,12.314,12.545,12.881,13.181,13.318,13.255,13.050,12.780,12.502,12.249,12.066,11.993,
-12.011,12.032,11.955,11.754,11.491,11.226,10.916,10.417,9.603,8.488,7.235,6.038,5.001,4.114,3.327,2.631,
-2.060,1.637,1.328,1.070,.816,.558,.311,.077,-.148,-.366,-.565,-.740,-.907,-1.089,-1.292,-1.493,
--1.671,-1.832,-2.010,-2.229,-2.475,-2.704,-2.884,-3.018,-3.131,-3.241,-3.350,-3.456,-3.571,-3.712,-3.882,-4.057,
--4.214,-4.354,-4.509,-4.706,-4.944,-5.193,-5.420,-5.622,-5.816,-6.025,-6.254,-6.497,-6.747,-6.994,-7.224,-7.415,
--7.550,-7.631,-7.682,-7.727,-7.775,-7.810,-7.815,-7.781,-7.720,-7.644,-7.558,-7.455,-7.324,-7.158,-6.957,-6.728,
--6.481,-6.223,-5.963,-5.705,-5.452,-5.202,-4.955,-4.711,-4.476,-4.253,-4.038,-3.820,-3.580,-3.309,-3.012,-2.710,
--2.424,-2.152,-1.870,-1.553,-1.201,-.845,-.521,-.236,.043,.368,.771,1.241,1.743,2.244,2.733,3.217,
-3.701,4.183,4.663,5.149,5.648,6.160,6.666,7.143,7.580,7.984,8.378,8.781,9.202,9.637,10.076,10.504,
-10.916,11.311,11.697,12.081,12.457,12.821,13.175,13.537,13.930,14.364,14.819,15.262,15.676,16.071,16.467,16.871,
-17.268,17.642,17.997,18.355,18.730,19.107,19.458,19.770,20.063,20.367,20.691,21.009,21.288,21.518,21.722,21.921,
-22.120,22.307,22.484,22.681,22.934,23.251,23.600,23.932,24.212,24.431,24.593,24.696,24.733,24.707,24.643,24.579,
-24.545,24.551,24.589,24.641,24.686,24.704,24.687,24.641,24.581,24.518,24.451,24.371,24.278,24.183,24.095,24.012,
-23.922,23.827,23.743,23.689,23.659,23.620,23.546,23.444,23.351,23.300,23.288,23.287,23.267,23.218,23.126,22.970,
-22.741,22.479,22.260,22.136,22.060,21.911,21.598,21.169,20.790,20.604,20.608,20.654,20.602,20.441,20.280,20.206,
-20.178,20.071,19.810,19.449,19.097,18.790,18.455,18.020,17.537,17.164,17.021,17.059,17.118,17.109,18.383,18.398,
-18.501,18.976,19.780,20.566,20.969,20.872,20.443,19.948,19.566,19.336,19.244,19.283,19.443,19.666,19.861,19.987,
-20.090,20.252,20.503,20.780,21.001,21.154,21.310,21.544,21.858,22.186,22.473,22.738,23.036,23.391,23.758,24.074,
-24.330,24.581,24.879,25.213,25.522,25.761,25.955,26.162,26.400,26.617,26.734,26.734,26.689,26.708,26.861,27.138,
-27.479,27.823,28.134,28.390,28.571,28.668,28.700,28.713,28.746,28.807,28.863,28.875,28.832,28.766,28.726,28.753,
-28.856,29.011,29.174,29.300,29.361,29.355,29.306,29.252,29.227,29.255,29.336,29.455,29.584,29.698,29.784,29.857,
-29.940,30.047,30.174,30.301,30.424,30.559,30.729,30.944,31.185,31.435,31.700,32.002,32.359,32.757,33.170,33.601,
-34.081,34.632,35.208,35.686,35.938,35.927,35.735,35.504,35.327,35.205,35.081,34.923,34.753,34.606,34.474,34.297,
-34.025,33.674,33.331,33.085,32.962,32.919,32.897,32.876,32.884,32.956,33.096,33.265,33.402,33.459,33.422,33.315,
-33.191,33.113,33.128,33.244,33.443,33.703,34.020,34.398,34.826,35.261,35.654,35.990,36.302,36.639,37.015,37.400,
-37.756,38.086,38.425,38.800,39.186,39.525,39.786,39.997,40.211,40.444,40.654,40.806,40.934,41.136,41.474,41.896,
-42.259,42.465,42.565,42.713,42.998,43.324,43.475,43.334,43.034,42.876,43.067,43.509,43.869,43.867,43.541,43.215,
-43.206,43.531,43.886,43.926,43.566,43.043,42.692,42.651,42.778,42.825,42.671,42.413,42.228,42.200,42.261,42.295,
-42.258,42.191,42.129,42.039,41.862,41.608,41.385,41.303,41.351,41.381,41.231,40.878,40.469,40.202,40.155,40.233,
-40.249,40.071,39.698,39.226,38.756,38.340,37.981,37.670,37.402,37.169,36.948,36.707,36.424,36.101,35.756,35.412,
-35.083,34.774,34.486,34.221,33.985,33.777,33.580,33.364,33.095,32.766,32.406,32.062,31.763,31.496,31.222,30.920,
-30.606,30.319,30.077,29.860,29.631,29.382,29.153,28.996,28.926,28.907,28.879,28.807,28.696,28.568,28.437,28.300,
-28.157,28.022,27.916,27.849,27.811,27.785,27.759,27.728,27.684,27.618,27.528,27.426,27.329,27.240,27.142,27.012,
-26.844,26.658,26.476,26.304,26.120,25.902,25.641,25.349,25.041,24.722,24.393,24.057,23.730,23.429,23.160,22.916,
-22.686,22.457,22.218,21.959,21.673,21.370,21.075,20.820,20.626,20.498,20.422,20.376,20.330,20.254,20.123,19.934,
-19.711,19.489,19.290,19.102,18.896,18.652,18.379,18.102,17.839,17.580,17.305,16.999,16.669,16.335,16.011,15.701,
-15.408,15.135,14.881,14.631,14.358,14.041,13.684,13.310,12.939,12.574,12.201,11.813,11.420,11.036,10.660,10.265,
-9.827,9.355,8.900,8.524,8.259,8.080,7.915,7.690,7.366,6.957,6.509,6.071,5.664,5.277,4.879,4.445,
-3.973,3.487,3.018,2.576,2.152,1.727,1.285,.828,.361,-.109,-.582,-1.056,-1.525,-1.987,-2.442,-2.897,
--3.354,-3.813,-4.273,-4.738,-5.217,-5.711,-6.209,-6.694,-7.165,-7.638,-8.130,-8.637,-9.136,-9.604,-10.047,-10.496,
--10.982,-11.499,-12.007,-12.474,-12.900,-13.319,-13.763,-14.236,-14.715,-15.177,-15.623,-16.060,-16.486,-16.888,-17.262,-17.638,
--18.056,-18.538,-19.055,-19.548,-19.974,-20.334,-20.657,-20.969,-21.272,-21.565,-21.864,-22.197,-22.574,-22.964,-23.319,-23.613,
--23.872,-24.148,-24.475,-24.850,-25.246,-25.646,-26.047,-26.439,-26.786,-27.052,-27.233,-27.386,-27.590,-27.894,-28.277,-28.672,
--29.010,-29.262,-29.444,-29.590,-29.740,-29.917,-30.127,-30.358,-30.579,-30.771,-30.934,-31.087,-31.246,-31.400,-31.529,-31.629,
--31.721,-31.830,-31.947,-32.030,-32.045,-32.013,-32.000,-32.060,-32.179,-32.286,-32.318,-32.276,-32.222,-32.207,-32.224,-32.219,
--32.152,-32.050,-31.980,-31.987,-32.051,-32.109,-32.106,-32.035,-31.935,-31.849,-31.799,-31.784,-31.792,-31.807,-31.811,-31.789,
--31.739,-31.679,-31.633,-31.609,-31.590,-31.543,-31.450,-31.318,-31.174,-31.041,-30.924,-30.811,-30.693,-30.569,-30.446,-30.325,
--30.200,-30.057,-29.893,-29.721,-29.559,-29.417,-29.287,-29.150,-28.993,-28.828,-28.681,-28.572,-28.489,-28.397,-28.265,-28.090,
--27.892,-27.693,-27.491,-27.274,-27.037,-26.797,-26.576,-26.373,-26.160,-25.905,-25.601,-25.271,-24.944,-24.634,-24.339,-24.056,
--23.793,-23.555,-23.328,-23.088,-22.823,-22.544,-22.272,-22.006,-21.720,-21.391,-21.030,-20.679,-20.373,-20.100,-19.813,-19.480,
--19.115,-18.765,-18.459,-18.187,-17.919,-17.647,-17.399,-17.192,-17.012,-16.820,-16.603,-16.398,-16.249,-16.151,-16.036,-15.839,
--15.577,-15.354,-15.273,-15.327,-15.384,-15.278,-14.938,-14.441,-13.937,-13.520,-13.148,-12.653,-11.850,-10.645,-9.092,-7.377,
--5.730,-4.328,-3.234,-2.409,-1.782,-1.321,-1.050,-.985,-1.076,-1.189,-1.182,-.998,-.716,-.504,-.534,-.912,
--1.644,-2.639,-3.732,-4.721,-5.434,-5.797,-5.865,-5.783,-5.687,-5.632,-5.583,-5.464,-5.228,-4.884,-4.483,-4.088,
--3.745,-3.474,-3.264,-3.090,-2.928,-2.779,-2.653,-2.546,-2.423,-2.237,-1.981,-1.704,-1.477,-1.326,-1.203,-1.036,
--.800,-.555,-.387,-.324,-.299,-.212,-.027,.204,.389,.489,.552,.659,.849,1.092,1.334,1.547,
-1.747,1.967,2.215,2.480,2.753,3.039,3.342,3.648,3.931,4.179,4.418,4.688,5.008,5.358,5.699,6.018,
-6.340,6.700,7.098,7.489,7.824,8.102,8.393,8.792,9.353,10.047,10.778,11.445,11.990,12.417,12.763,13.068,
-13.343,13.581,13.766,13.905,14.037,14.219,14.482,14.782,15.017,15.102,15.067,15.076,15.324,15.866,16.522,16.957,
-16.895,16.300,15.373,14.381,13.473,12.659,11.934,11.414,11.302,11.716,12.527,13.387,13.933,14.020,13.774,13.462,
-13.284,13.275,13.357,13.463,13.614,13.895,14.375,15.044,15.802,16.507,17.036,17.334,17.431,17.413,17.361,17.304,
-17.217,17.062,16.825,16.522,16.167,15.761,15.306,14.847,14.457,14.186,14.009,13.832,13.575,13.231,12.856,12.495,
-12.133,11.725,11.270,10.834,10.479,10.166,9.761,9.147,8.356,7.576,7.003,6.687,6.495,6.247,5.873,5.455,
-5.116,4.891,4.700,4.441,4.102,3.766,3.527,3.399,3.309,3.168,2.940,2.652,2.364,2.130,1.977,1.900,
-1.863,1.805,1.675,1.460,1.192,.899,.590,.284,.083,.171,.694,1.578,2.473,2.908,2.601,1.669,
-.556,-.272,-.617,-.615,-.546,-.591,-.737,-.877,-.960,-1.029,-1.157,-1.353,-1.551,-1.687,-1.754,-1.799,
--1.863,-1.950,-2.048,-2.159,-2.296,-2.455,-2.591,-2.653,-2.633,-2.587,-2.594,-2.697,-2.877,-3.084,-3.283,-3.474,
--3.668,-3.856,-4.021,-4.152,-4.265,-4.385,-4.515,-4.636,-4.727,-4.798,-4.893,-5.050,-5.272,-5.515,-5.727,-5.887,
--6.020,-6.184,-6.420,-6.730,-7.075,-7.400,-7.666,-7.875,-8.059,-8.264,-8.517,-8.813,-9.123,-9.416,-9.678,-9.919,
--10.157,-10.395,-10.622,-10.820,-10.978,-11.105,-11.213,-11.304,-11.363,-11.370,-11.328,-11.266,-11.226,-11.237,-11.292,-11.359,
--11.408,-11.438,-11.474,-11.548,-11.668,-11.819,-11.981,-12.144,-12.314,-12.496,-12.678,-12.827,-12.913,-12.928,-12.896,-12.860,
--12.863,-12.922,-13.026,-13.144,-13.239,-13.292,-13.304,-13.302,-13.315,-13.364,-13.445,-13.537,-13.618,-13.677,-13.714,-13.729,
--13.720,-13.680,-13.610,-13.528,-13.457,-13.415,-13.405,-13.418,-13.449,-13.500,-13.575,-13.660,-13.722,-13.725,-13.660,-13.555,
--13.461,-13.416,-13.421,-13.441,-13.437,-13.394,-13.326,-13.258,-13.203,-13.161,-13.117,-13.059,-12.983,-12.889,-12.788,-12.694,
--12.625,-12.590,-12.576,-12.561,-12.525,-12.466,-12.398,-12.336,-12.286,-12.238,-12.186,-12.133,-12.087,-12.051,-12.023,-12.003,
--11.999,-12.026,-12.091,-12.184,-12.284,-12.372,-12.444,-12.500,-12.541,-12.562,-12.564,-12.560,-12.568,-12.597,-12.632,-12.643,
--12.605,-12.516,-12.399,-12.287,-12.202,-12.147,-12.109,-12.071,-12.024,-11.971,-11.915,-11.856,-11.788,-11.703,-11.604,-11.506,
--11.425,-11.364,-11.314,-11.257,-11.187,-11.108,-11.033,-10.961,-10.888,-10.807,-10.726,-10.659,-10.605,-10.549,-10.472,-10.373,
--10.278,-10.222,-10.213,-10.230,-10.232,-10.200,-10.150,-10.113,-10.107,-10.116,-10.105,-10.053,-9.968,-9.879,-9.807,-9.751,
--9.693,-9.614,-9.516,-9.411,-9.312,-9.223,-9.143,-9.074,-9.023,-8.989,-8.958,-8.908,-8.831,-8.734,-8.636,-8.544,
--8.444,-8.321,-8.183,-8.063,-7.995,-7.975,-7.956,-7.890,-7.771,-7.641,-7.553,-7.529,-7.544,-7.562,-7.569,-7.567,
--7.539,-7.432,-7.196,-6.830,-6.409,-6.030,-5.742,-5.519,-5.303,-5.068,-4.846,-4.684,-4.586,-4.508,-4.399,-4.247,
--4.081,-3.931,-3.789,-3.634,-3.459,-3.289,-3.151,-3.035,-2.897,-2.708,-2.488,-2.291,-2.156,-2.070,-1.990,-1.884,
--1.762,-1.655,-1.574,-1.503,-1.418,-1.318,-1.216,-1.116,-1.003,-.860,-.694,-.535,-.405,-.292,-.168,-.014,
-.159,.333,.510,.713,.946,1.185,1.391,1.559,1.733,1.961,2.251,2.559,2.839,3.086,3.336,3.616,
-3.909,4.183,4.435,4.699,5.004,5.330,5.625,5.868,6.104,6.405,6.787,7.184,7.513,7.755,7.972,8.233,
-8.540,8.837,9.087,9.326,9.614,9.953,10.271,10.509,10.698,10.933,11.244,11.515,11.567,11.338,10.977,10.746,
-10.815,11.163,11.671,12.300,13.135,14.238,15.485,16.579,17.272,17.583,17.792,18.219,18.966,19.871,20.668,21.197,
-21.480,21.640,21.784,21.949,22.119,22.271,22.399,22.534,22.758,23.159,23.744,24.361,24.734,24.638,24.062,23.222,
-22.384,21.648,20.902,19.975,18.839,17.656,16.633,15.852,15.237,14.672,14.138,13.708,13.445,13.314,13.208,13.046,
-12.829,12.611,12.432,12.302,12.237,12.276,12.444,12.700,12.929,13.017,12.928,12.718,12.469,12.238,12.044,11.899,
-11.819,11.804,11.813,11.784,11.678,11.487,11.193,10.723,9.976,8.915,7.627,6.302,5.113,4.128,3.314,2.620,
-2.041,1.606,1.317,1.118,.924,.690,.429,.179,-.044,-.252,-.460,-.664,-.851,-1.020,-1.190,-1.376,
--1.572,-1.758,-1.927,-2.100,-2.300,-2.526,-2.745,-2.920,-3.038,-3.118,-3.192,-3.281,-3.384,-3.493,-3.601,-3.712,
--3.830,-3.960,-4.110,-4.285,-4.483,-4.698,-4.920,-5.148,-5.386,-5.635,-5.888,-6.135,-6.376,-6.615,-6.856,-7.090,
--7.295,-7.451,-7.559,-7.633,-7.689,-7.733,-7.761,-7.766,-7.745,-7.696,-7.619,-7.520,-7.407,-7.288,-7.159,-7.003,
--6.804,-6.557,-6.279,-5.991,-5.710,-5.438,-5.171,-4.911,-4.668,-4.444,-4.231,-4.013,-3.775,-3.516,-3.242,-2.957,
--2.662,-2.352,-2.021,-1.669,-1.305,-.947,-.617,-.330,-.072,.197,.525,.936,1.415,1.920,2.413,2.883,
-3.342,3.806,4.276,4.745,5.215,5.692,6.182,6.672,7.134,7.554,7.942,8.334,8.760,9.225,9.707,10.175,
-10.614,11.028,11.427,11.817,12.196,12.565,12.932,13.307,13.698,14.100,14.500,14.891,15.279,15.675,16.089,16.515,
-16.936,17.339,17.723,18.100,18.477,18.846,19.187,19.488,19.761,20.038,20.344,20.683,21.026,21.341,21.610,21.841,
-22.055,22.268,22.487,22.710,22.935,23.170,23.424,23.704,24.003,24.295,24.545,24.725,24.832,24.880,24.890,24.866,
-24.807,24.727,24.661,24.652,24.710,24.795,24.846,24.830,24.768,24.707,24.668,24.629,24.554,24.438,24.312,24.213,
-24.140,24.062,23.962,23.860,23.797,23.785,23.789,23.763,23.698,23.626,23.585,23.577,23.569,23.531,23.458,23.353,
-23.205,22.990,22.711,22.411,22.135,21.889,21.639,21.376,21.155,21.061,21.108,21.190,21.162,20.979,20.752,20.631,
-20.642,20.638,20.439,20.010,19.501,19.075,18.731,18.318,17.743,17.147,16.843,17.030,17.581,18.128,18.383,20.978,
-20.855,20.524,20.499,20.953,21.618,22.045,21.960,21.418,20.677,19.997,19.520,19.293,19.308,19.512,19.793,20.029,
-20.164,20.252,20.392,20.625,20.898,21.128,21.301,21.488,21.762,22.117,22.476,22.775,23.034,23.317,23.654,24.000,
-24.284,24.494,24.694,24.954,25.275,25.587,25.822,25.978,26.110,26.256,26.399,26.495,26.543,26.610,26.782,27.085,
-27.465,27.827,28.105,28.289,28.401,28.456,28.466,28.456,28.473,28.556,28.697,28.834,28.895,28.854,28.758,28.694,
-28.731,28.874,29.073,29.257,29.377,29.421,29.412,29.383,29.364,29.376,29.429,29.521,29.636,29.749,29.840,29.910,
-29.983,30.085,30.224,30.385,30.544,30.696,30.855,31.041,31.256,31.494,31.759,32.072,32.451,32.878,33.297,33.660,
-33.980,34.329,34.765,35.256,35.672,35.876,35.828,35.616,35.382,35.212,35.095,34.976,34.834,34.702,34.611,34.534,
-34.395,34.143,33.810,33.490,33.258,33.106,32.976,32.830,32.707,32.694,32.839,33.104,33.376,33.545,33.565,33.469,
-33.338,33.259,33.296,33.469,33.751,34.083,34.414,34.730,35.061,35.441,35.869,36.296,36.673,36.990,37.286,37.609,
-37.981,38.386,38.798,39.203,39.591,39.942,40.232,40.458,40.647,40.832,41.017,41.173,41.287,41.407,41.627,41.993,
-42.443,42.829,43.051,43.144,43.251,43.464,43.714,43.813,43.647,43.318,43.091,43.169,43.503,43.824,43.886,43.681,
-43.439,43.398,43.577,43.757,43.698,43.362,42.950,42.710,42.719,42.840,42.872,42.742,42.543,42.417,42.419,42.485,
-42.527,42.519,42.494,42.463,42.385,42.210,41.963,41.748,41.654,41.651,41.597,41.358,40.941,40.500,40.215,40.152,
-40.218,40.250,40.139,39.884,39.553,39.203,38.849,38.478,38.093,37.725,37.405,37.138,36.899,36.650,36.374,36.075,
-35.770,35.476,35.199,34.943,34.711,34.508,34.330,34.153,33.939,33.659,33.317,32.948,32.592,32.270,31.963,31.648,
-31.320,31.008,30.738,30.508,30.281,30.028,29.761,29.531,29.383,29.316,29.285,29.237,29.155,29.054,28.950,28.838,
-28.699,28.530,28.359,28.222,28.136,28.092,28.064,28.036,28.000,27.952,27.887,27.806,27.720,27.640,27.563,27.467,
-27.329,27.154,26.970,26.807,26.663,26.500,26.282,26.001,25.683,25.369,25.078,24.802,24.522,24.230,23.937,23.658,
-23.401,23.154,22.901,22.625,22.328,22.029,21.757,21.537,21.374,21.254,21.153,21.056,20.955,20.845,20.709,20.534,
-20.320,20.092,19.881,19.695,19.510,19.292,19.030,18.749,18.483,18.240,17.993,17.706,17.378,17.042,16.740,16.485,
-16.253,16.008,15.737,15.450,15.161,14.867,14.551,14.202,13.828,13.452,13.092,12.748,12.407,12.056,11.679,11.263,
-10.801,10.305,9.819,9.401,9.087,8.865,8.678,8.458,8.168,7.811,7.420,7.023,6.627,6.224,5.803,5.363,
-4.913,4.467,4.034,3.614,3.200,2.783,2.351,1.900,1.432,.952,.471,-.005,-.472,-.930,-1.389,-1.853,
--2.321,-2.785,-3.237,-3.682,-4.138,-4.620,-5.122,-5.618,-6.086,-6.532,-6.987,-7.481,-8.004,-8.517,-8.983,-9.410,
--9.845,-10.330,-10.862,-11.395,-11.887,-12.334,-12.771,-13.230,-13.709,-14.177,-14.617,-15.034,-15.450,-15.869,-16.274,-16.660,
--17.052,-17.495,-18.003,-18.539,-19.030,-19.432,-19.758,-20.059,-20.375,-20.706,-21.033,-21.351,-21.677,-22.027,-22.390,-22.734,
--23.044,-23.336,-23.647,-23.999,-24.384,-24.778,-25.171,-25.559,-25.930,-26.248,-26.487,-26.662,-26.839,-27.090,-27.435,-27.831,
--28.204,-28.504,-28.733,-28.921,-29.097,-29.277,-29.468,-29.678,-29.903,-30.126,-30.327,-30.499,-30.654,-30.807,-30.953,-31.075,
--31.166,-31.247,-31.351,-31.478,-31.592,-31.648,-31.644,-31.629,-31.658,-31.745,-31.848,-31.916,-31.940,-31.946,-31.959,-31.965,
--31.929,-31.839,-31.734,-31.673,-31.682,-31.728,-31.755,-31.727,-31.658,-31.582,-31.528,-31.496,-31.480,-31.473,-31.473,-31.463,
--31.425,-31.358,-31.286,-31.247,-31.252,-31.271,-31.252,-31.167,-31.031,-30.888,-30.768,-30.670,-30.568,-30.444,-30.305,-30.169,
--30.044,-29.919,-29.778,-29.619,-29.460,-29.323,-29.210,-29.102,-28.974,-28.819,-28.656,-28.512,-28.400,-28.302,-28.188,-28.039,
--27.861,-27.672,-27.484,-27.291,-27.082,-26.859,-26.637,-26.428,-26.219,-25.983,-25.702,-25.387,-25.069,-24.768,-24.483,-24.202,
--23.928,-23.682,-23.482,-23.314,-23.137,-22.909,-22.626,-22.310,-21.986,-21.659,-21.324,-20.987,-20.668,-20.375,-20.091,-19.781,
--19.435,-19.084,-18.776,-18.524,-18.298,-18.055,-17.789,-17.536,-17.326,-17.145,-16.945,-16.703,-16.459,-16.278,-16.183,-16.112,
--15.974,-15.739,-15.481,-15.317,-15.303,-15.370,-15.380,-15.224,-14.905,-14.519,-14.163,-13.852,-13.480,-12.875,-11.891,-10.500,
--8.832,-7.126,-5.616,-4.412,-3.466,-2.651,-1.899,-1.269,-.893,-.841,-1.021,-1.224,-1.270,-1.141,-.995,-1.059,
--1.482,-2.265,-3.277,-4.328,-5.241,-5.898,-6.264,-6.385,-6.366,-6.312,-6.277,-6.241,-6.140,-5.926,-5.602,-5.226,
--4.866,-4.561,-4.308,-4.078,-3.846,-3.619,-3.422,-3.274,-3.163,-3.042,-2.868,-2.634,-2.381,-2.158,-1.985,-1.838,
--1.678,-1.501,-1.335,-1.211,-1.116,-.998,-.814,-.578,-.352,-.189,-.085,.012,.150,.327,.505,.654,
-.795,.973,1.214,1.502,1.797,2.083,2.375,2.701,3.057,3.407,3.715,3.975,4.211,4.451,4.703,4.960,
-5.233,5.550,5.938,6.388,6.847,7.252,7.583,7.873,8.191,8.593,9.091,9.655,10.243,10.813,11.336,11.789,
-12.158,12.441,12.650,12.803,12.928,13.066,13.262,13.546,13.899,14.251,14.523,14.693,14.827,15.034,15.367,15.756,
-16.032,16.034,15.700,15.080,14.264,13.323,12.320,11.362,10.621,10.261,10.322,10.666,11.053,11.294,11.351,11.325,
-11.345,11.480,11.720,12.030,12.403,12.864,13.442,14.136,14.899,15.642,16.250,16.625,16.737,16.652,16.496,16.378,
-16.312,16.228,16.049,15.766,15.435,15.115,14.810,14.488,14.145,13.830,13.605,13.460,13.306,13.046,12.667,12.244,
-11.865,11.542,11.216,10.829,10.398,9.977,9.588,9.179,8.683,8.109,7.556,7.122,6.806,6.501,6.101,5.616,
-5.162,4.850,4.673,4.516,4.262,3.899,3.510,3.186,2.943,2.727,2.475,2.176,1.869,1.601,1.400,1.275,
-1.217,1.198,1.171,1.099,.974,.810,.602,.311,-.077,-.465,-.634,-.373,.321,1.155,1.694,1.648,
-1.084,.353,-.191,-.438,-.544,-.720,-1.029,-1.349,-1.528,-1.548,-1.528,-1.600,-1.785,-1.988,-2.108,-2.127,
--2.106,-2.118,-2.191,-2.318,-2.493,-2.715,-2.959,-3.157,-3.243,-3.210,-3.129,-3.103,-3.188,-3.361,-3.559,-3.738,
--3.898,-4.063,-4.237,-4.402,-4.541,-4.659,-4.779,-4.913,-5.049,-5.170,-5.277,-5.395,-5.549,-5.733,-5.917,-6.074,
--6.206,-6.345,-6.528,-6.767,-7.044,-7.324,-7.580,-7.801,-7.995,-8.187,-8.402,-8.660,-8.956,-9.265,-9.552,-9.796,
--10.004,-10.202,-10.412,-10.634,-10.849,-11.038,-11.198,-11.337,-11.457,-11.538,-11.559,-11.516,-11.441,-11.384,-11.384,-11.437,
--11.509,-11.567,-11.606,-11.653,-11.735,-11.857,-11.999,-12.139,-12.278,-12.431,-12.615,-12.818,-12.998,-13.114,-13.148,-13.118,
--13.070,-13.050,-13.083,-13.165,-13.269,-13.363,-13.420,-13.437,-13.429,-13.423,-13.443,-13.495,-13.568,-13.645,-13.706,-13.745,
--13.759,-13.750,-13.721,-13.679,-13.635,-13.598,-13.574,-13.561,-13.558,-13.567,-13.596,-13.648,-13.708,-13.749,-13.745,-13.692,
--13.613,-13.545,-13.511,-13.512,-13.525,-13.523,-13.491,-13.431,-13.358,-13.284,-13.218,-13.158,-13.099,-13.030,-12.945,-12.850,
--12.760,-12.691,-12.644,-12.608,-12.563,-12.504,-12.440,-12.388,-12.348,-12.306,-12.247,-12.170,-12.094,-12.039,-12.011,-11.997,
--11.985,-11.978,-11.994,-12.046,-12.129,-12.220,-12.300,-12.361,-12.410,-12.449,-12.475,-12.483,-12.476,-12.469,-12.476,-12.490,
--12.491,-12.455,-12.380,-12.283,-12.193,-12.128,-12.085,-12.051,-12.013,-11.970,-11.928,-11.887,-11.840,-11.771,-11.677,-11.570,
--11.470,-11.392,-11.332,-11.274,-11.204,-11.122,-11.038,-10.962,-10.890,-10.815,-10.736,-10.663,-10.605,-10.556,-10.497,-10.412,
--10.310,-10.222,-10.174,-10.167,-10.174,-10.168,-10.142,-10.111,-10.093,-10.085,-10.069,-10.027,-9.966,-9.905,-9.858,-9.817,
--9.760,-9.675,-9.571,-9.474,-9.396,-9.331,-9.260,-9.177,-9.095,-9.039,-9.014,-8.997,-8.951,-8.863,-8.750,-8.649,
--8.579,-8.525,-8.455,-8.358,-8.252,-8.169,-8.114,-8.057,-7.957,-7.806,-7.640,-7.510,-7.443,-7.426,-7.436,-7.465,
--7.518,-7.585,-7.620,-7.556,-7.359,-7.045,-6.673,-6.293,-5.928,-5.586,-5.290,-5.074,-4.951,-4.890,-4.827,-4.711,
--4.545,-4.367,-4.208,-4.062,-3.904,-3.726,-3.546,-3.389,-3.250,-3.094,-2.894,-2.659,-2.427,-2.233,-2.082,-1.953,
--1.832,-1.719,-1.618,-1.524,-1.420,-1.299,-1.172,-1.057,-.952,-.839,-.705,-.555,-.403,-.250,-.076,.132,
-.364,.584,.776,.958,1.165,1.402,1.634,1.826,1.984,2.163,2.410,2.710,3.002,3.238,3.433,3.644,
-3.903,4.188,4.454,4.692,4.936,5.220,5.522,5.793,6.015,6.243,6.545,6.930,7.321,7.630,7.851,8.059,
-8.327,8.646,8.942,9.171,9.374,9.626,9.946,10.275,10.546,10.777,11.037,11.334,11.552,11.528,11.234,10.845,
-10.630,10.746,11.156,11.732,12.427,13.304,14.391,15.541,16.470,16.989,17.186,17.375,17.844,18.633,19.529,20.280,
-20.779,21.089,21.323,21.536,21.718,21.866,22.007,22.181,22.406,22.694,23.074,23.553,24.038,24.324,24.205,23.631,
-22.768,21.867,21.062,20.286,19.389,18.324,17.227,16.296,15.619,15.116,14.653,14.178,13.752,13.455,13.287,13.165,
-13.014,12.830,12.659,12.534,12.444,12.371,12.335,12.374,12.492,12.627,12.687,12.630,12.486,12.325,12.193,12.090,
-11.993,11.894,11.799,11.704,11.586,11.406,11.124,10.691,10.047,9.146,8.005,6.732,5.485,4.391,3.492,2.758,
-2.152,1.672,1.330,1.105,.931,.736,.495,.242,.020,-.164,-.341,-.540,-.756,-.959,-1.128,-1.277,
--1.433,-1.611,-1.801,-1.991,-2.179,-2.375,-2.578,-2.764,-2.903,-2.989,-3.046,-3.114,-3.209,-3.318,-3.407,-3.463,
--3.502,-3.564,-3.683,-3.860,-4.066,-4.268,-4.453,-4.638,-4.852,-5.111,-5.402,-5.693,-5.963,-6.208,-6.443,-6.676,
--6.900,-7.101,-7.270,-7.410,-7.530,-7.630,-7.707,-7.758,-7.781,-7.771,-7.721,-7.624,-7.494,-7.358,-7.243,-7.148,
--7.038,-6.873,-6.639,-6.357,-6.062,-5.772,-5.486,-5.201,-4.929,-4.686,-4.475,-4.272,-4.045,-3.779,-3.492,-3.208,
--2.934,-2.647,-2.324,-1.957,-1.570,-1.196,-.859,-.561,-.289,-.017,.285,.646,1.077,1.563,2.070,2.570,
-3.054,3.534,4.016,4.493,4.951,5.387,5.820,6.266,6.721,7.157,7.554,7.926,8.313,8.751,9.235,9.730,
-10.198,10.627,11.033,11.432,11.823,12.193,12.547,12.907,13.296,13.713,14.130,14.519,14.882,15.249,15.649,16.082,
-16.524,16.945,17.341,17.725,18.110,18.488,18.839,19.149,19.431,19.711,20.016,20.352,20.709,21.068,21.408,21.712,
-21.970,22.193,22.405,22.633,22.878,23.120,23.336,23.531,23.742,24.000,24.294,24.568,24.770,24.890,24.962,25.017,
-25.044,25.005,24.891,24.757,24.687,24.719,24.811,24.874,24.859,24.792,24.734,24.711,24.689,24.619,24.503,24.389,
-24.321,24.284,24.223,24.107,23.967,23.867,23.835,23.839,23.824,23.779,23.733,23.715,23.707,23.665,23.571,23.459,
-23.371,23.304,23.201,23.006,22.722,22.406,22.116,21.877,21.702,21.613,21.626,21.692,21.701,21.564,21.316,21.102,
-21.033,21.040,20.907,20.475,19.830,19.256,18.967,18.883,18.715,18.286,17.790,17.684,18.277,19.398,20.474,20.978,
-23.573,23.189,22.293,21.551,21.356,21.606,21.898,21.892,21.521,20.933,20.321,19.821,19.511,19.439,19.599,19.896,
-20.181,20.352,20.427,20.508,20.674,20.914,21.163,21.390,21.633,21.944,22.309,22.656,22.925,23.137,23.369,23.668,
-24.000,24.292,24.512,24.701,24.926,25.196,25.457,25.646,25.761,25.855,25.985,26.157,26.345,26.536,26.761,27.056,
-27.409,27.753,28.011,28.160,28.238,28.292,28.339,28.360,28.346,28.327,28.355,28.453,28.588,28.696,28.737,28.729,
-28.734,28.805,28.946,29.114,29.255,29.340,29.375,29.385,29.394,29.419,29.469,29.549,29.658,29.785,29.907,30.010,
-30.094,30.179,30.286,30.425,30.590,30.769,30.962,31.172,31.397,31.627,31.865,32.140,32.494,32.937,33.416,33.835,
-34.127,34.312,34.487,34.741,35.063,35.347,35.477,35.423,35.263,35.105,34.997,34.911,34.801,34.670,34.567,34.518,
-34.478,34.364,34.139,33.854,33.603,33.431,33.292,33.107,32.863,32.653,32.608,32.787,33.114,33.429,33.593,33.573,
-33.436,33.303,33.287,33.451,33.799,34.268,34.753,35.158,35.463,35.732,36.064,36.504,36.999,37.444,37.767,37.991,
-38.213,38.524,38.946,39.432,39.905,40.312,40.636,40.891,41.099,41.284,41.457,41.612,41.734,41.830,41.954,42.177,
-42.531,42.952,43.318,43.534,43.619,43.682,43.810,43.972,44.036,43.901,43.613,43.353,43.285,43.415,43.592,43.654,
-43.571,43.459,43.438,43.506,43.534,43.402,43.127,42.859,42.746,42.801,42.904,42.927,42.843,42.732,42.686,42.720,
-42.776,42.800,42.789,42.773,42.751,42.674,42.505,42.277,42.081,41.984,41.948,41.855,41.604,41.214,40.817,40.555,
-40.472,40.496,40.504,40.415,40.227,39.974,39.680,39.338,38.939,38.498,38.062,37.678,37.366,37.110,36.876,36.637,
-36.383,36.117,35.850,35.596,35.365,35.167,34.999,34.847,34.677,34.455,34.164,33.814,33.442,33.082,32.746,32.427,
-32.111,31.804,31.519,31.259,31.004,30.729,30.434,30.157,29.947,29.825,29.759,29.698,29.611,29.506,29.411,29.327,
-29.225,29.069,28.861,28.644,28.472,28.371,28.328,28.312,28.296,28.268,28.223,28.157,28.072,27.980,27.892,27.806,
-27.702,27.566,27.401,27.237,27.095,26.966,26.811,26.590,26.301,25.979,25.672,25.403,25.165,24.934,24.690,24.432,
-24.169,23.905,23.635,23.350,23.046,22.738,22.453,22.224,22.067,21.968,21.890,21.792,21.657,21.493,21.315,21.129,
-20.927,20.708,20.489,20.288,20.110,19.929,19.714,19.458,19.184,18.924,18.682,18.428,18.130,17.795,17.467,17.197,
-16.990,16.803,16.581,16.300,15.980,15.657,15.347,15.036,14.704,14.348,13.989,13.652,13.343,13.038,12.697,12.288,
-11.800,11.259,10.724,10.264,9.918,9.677,9.476,9.240,8.931,8.562,8.181,7.824,7.486,7.133,6.734,6.289,
-5.828,5.385,4.970,4.575,4.178,3.766,3.340,2.902,2.454,1.992,1.519,1.041,.570,.112,-.337,-.789,
--1.252,-1.723,-2.187,-2.637,-3.081,-3.542,-4.031,-4.537,-5.025,-5.471,-5.889,-6.321,-6.806,-7.340,-7.880,-8.381,
--8.839,-9.293,-9.780,-10.302,-10.824,-11.313,-11.769,-12.224,-12.700,-13.187,-13.655,-14.087,-14.494,-14.898,-15.306,-15.709,
--16.107,-16.527,-17.003,-17.532,-18.059,-18.513,-18.863,-19.144,-19.426,-19.751,-20.109,-20.461,-20.788,-21.105,-21.440,-21.796,
--22.155,-22.500,-22.837,-23.187,-23.558,-23.938,-24.312,-24.674,-25.027,-25.359,-25.644,-25.865,-26.051,-26.270,-26.581,-26.980,
--27.403,-27.768,-28.042,-28.245,-28.423,-28.608,-28.804,-29.006,-29.220,-29.446,-29.676,-29.890,-30.074,-30.235,-30.387,-30.529,
--30.647,-30.733,-30.805,-30.894,-31.014,-31.136,-31.216,-31.237,-31.230,-31.245,-31.310,-31.412,-31.513,-31.590,-31.640,-31.663,
--31.650,-31.593,-31.509,-31.436,-31.406,-31.411,-31.414,-31.382,-31.318,-31.257,-31.226,-31.218,-31.212,-31.193,-31.172,-31.161,
--31.151,-31.120,-31.058,-30.993,-30.962,-30.975,-30.993,-30.966,-30.872,-30.741,-30.622,-30.535,-30.455,-30.346,-30.195,-30.030,
--29.886,-29.767,-29.649,-29.502,-29.331,-29.165,-29.037,-28.943,-28.851,-28.732,-28.581,-28.425,-28.294,-28.191,-28.092,-27.971,
--27.818,-27.649,-27.480,-27.313,-27.133,-26.928,-26.706,-26.485,-26.272,-26.051,-25.799,-25.507,-25.198,-24.905,-24.641,-24.390,
--24.130,-23.864,-23.623,-23.437,-23.296,-23.148,-22.939,-22.650,-22.308,-21.953,-21.611,-21.286,-20.974,-20.677,-20.392,-20.104,
--19.795,-19.464,-19.141,-18.862,-18.632,-18.419,-18.182,-17.914,-17.644,-17.401,-17.181,-16.950,-16.694,-16.447,-16.271,-16.190,
--16.157,-16.078,-15.898,-15.641,-15.400,-15.257,-15.228,-15.257,-15.262,-15.185,-15.013,-14.770,-14.478,-14.119,-13.604,-12.804,
--11.623,-10.096,-8.414,-6.844,-5.565,-4.567,-3.692,-2.803,-1.927,-1.249,-.955,-1.051,-1.341,-1.569,-1.621,-1.601,
--1.741,-2.225,-3.060,-4.091,-5.100,-5.921,-6.481,-6.789,-6.905,-6.905,-6.854,-6.793,-6.719,-6.606,-6.431,-6.197,
--5.929,-5.654,-5.381,-5.102,-4.811,-4.524,-4.270,-4.074,-3.933,-3.815,-3.675,-3.489,-3.265,-3.032,-2.822,-2.646,
--2.496,-2.359,-2.230,-2.111,-1.993,-1.858,-1.687,-1.481,-1.267,-1.072,-.904,-.742,-.569,-.396,-.255,-.167,
--.101,.009,.217,.519,.857,1.167,1.440,1.718,2.047,2.430,2.818,3.155,3.421,3.644,3.866,4.110,
-4.372,4.641,4.928,5.259,5.651,6.090,6.539,6.958,7.329,7.661,7.984,8.331,8.729,9.193,9.710,10.239,
-10.722,11.111,11.394,11.593,11.751,11.911,12.103,12.350,12.668,13.051,13.467,13.864,14.200,14.470,14.699,14.924,
-15.150,15.343,15.434,15.336,14.960,14.245,13.203,11.957,10.729,9.757,9.177,8.969,8.993,9.102,9.238,9.425,
-9.704,10.065,10.463,10.873,11.324,11.877,12.554,13.314,14.074,14.760,15.321,15.715,15.900,15.867,15.680,15.458,
-15.302,15.219,15.128,14.946,14.670,14.377,14.136,13.942,13.731,13.461,13.166,12.913,12.713,12.496,12.175,11.746,
-11.304,10.955,10.719,10.508,10.213,9.807,9.350,8.920,8.543,8.191,7.839,7.495,7.167,6.820,6.392,5.862,
-5.305,4.852,4.576,4.421,4.240,3.919,3.467,2.990,2.600,2.322,2.108,1.885,1.620,1.321,1.022,.762,
-.577,.487,.465,.450,.391,.290,.197,.139,.061,-.130,-.456,-.794,-.937,-.766,-.377,-.017,
-.115,.025,-.116,-.158,-.136,-.232,-.588,-1.149,-1.700,-2.039,-2.140,-2.136,-2.175,-2.296,-2.425,-2.483,
--2.465,-2.431,-2.441,-2.509,-2.630,-2.807,-3.053,-3.343,-3.599,-3.732,-3.717,-3.627,-3.578,-3.641,-3.800,-3.988,
--4.149,-4.279,-4.408,-4.558,-4.723,-4.887,-5.042,-5.193,-5.337,-5.468,-5.580,-5.690,-5.825,-5.999,-6.192,-6.367,
--6.503,-6.616,-6.744,-6.915,-7.129,-7.360,-7.585,-7.794,-7.991,-8.182,-8.375,-8.585,-8.831,-9.120,-9.432,-9.725,
--9.963,-10.141,-10.290,-10.452,-10.646,-10.862,-11.074,-11.265,-11.433,-11.576,-11.682,-11.729,-11.714,-11.660,-11.613,-11.604,
--11.639,-11.693,-11.746,-11.800,-11.874,-11.983,-12.115,-12.243,-12.349,-12.444,-12.562,-12.729,-12.935,-13.138,-13.287,-13.357,
--13.357,-13.323,-13.293,-13.292,-13.326,-13.386,-13.456,-13.519,-13.564,-13.586,-13.591,-13.593,-13.609,-13.645,-13.699,-13.757,
--13.805,-13.833,-13.840,-13.833,-13.821,-13.811,-13.806,-13.804,-13.802,-13.804,-13.813,-13.829,-13.844,-13.848,-13.829,-13.788,
--13.733,-13.678,-13.633,-13.605,-13.591,-13.588,-13.589,-13.583,-13.554,-13.495,-13.407,-13.304,-13.206,-13.122,-13.047,-12.972,
--12.894,-12.821,-12.761,-12.715,-12.666,-12.601,-12.520,-12.441,-12.382,-12.344,-12.308,-12.253,-12.180,-12.108,-12.061,-12.041,
--12.031,-12.012,-11.983,-11.965,-11.978,-12.027,-12.095,-12.162,-12.215,-12.257,-12.297,-12.332,-12.355,-12.363,-12.357,-12.347,
--12.337,-12.319,-12.285,-12.235,-12.177,-12.126,-12.087,-12.053,-12.012,-11.961,-11.905,-11.856,-11.814,-11.768,-11.706,-11.624,
--11.537,-11.460,-11.400,-11.343,-11.272,-11.179,-11.076,-10.978,-10.894,-10.817,-10.736,-10.651,-10.576,-10.518,-10.470,-10.414,
--10.337,-10.252,-10.181,-10.142,-10.127,-10.116,-10.094,-10.070,-10.056,-10.054,-10.045,-10.008,-9.945,-9.883,-9.846,-9.833,
--9.809,-9.742,-9.630,-9.507,-9.412,-9.358,-9.321,-9.263,-9.175,-9.077,-9.004,-8.965,-8.934,-8.877,-8.779,-8.669,
--8.589,-8.558,-8.557,-8.544,-8.490,-8.406,-8.319,-8.245,-8.170,-8.065,-7.923,-7.765,-7.628,-7.531,-7.467,-7.420,
--7.388,-7.384,-7.411,-7.436,-7.402,-7.257,-6.990,-6.628,-6.222,-5.822,-5.476,-5.221,-5.081,-5.040,-5.042,-5.016,
--4.918,-4.757,-4.573,-4.401,-4.246,-4.087,-3.915,-3.734,-3.560,-3.395,-3.224,-3.034,-2.824,-2.610,-2.404,-2.210,
--2.032,-1.876,-1.746,-1.631,-1.512,-1.371,-1.214,-1.063,-.931,-.809,-.677,-.524,-.357,-.184,.006,.235,
-.505,.782,1.022,1.212,1.385,1.581,1.805,2.019,2.190,2.337,2.519,2.771,3.065,3.332,3.537,3.713,
-3.924,4.193,4.477,4.717,4.908,5.101,5.344,5.626,5.897,6.133,6.376,6.685,7.056,7.417,7.698,7.909,
-8.132,8.422,8.750,9.031,9.228,9.404,9.652,9.992,10.352,10.649,10.885,11.121,11.369,11.523,11.442,11.113,
-10.717,10.515,10.657,11.108,11.752,12.541,13.512,14.643,15.742,16.531,16.873,16.933,17.073,17.570,18.410,19.331,
-20.066,20.533,20.823,21.044,21.224,21.335,21.397,21.492,21.697,22.009,22.367,22.722,23.061,23.350,23.475,23.285,
-22.721,21.888,20.983,20.137,19.322,18.434,17.452,16.497,15.734,15.220,14.857,14.504,14.114,13.757,13.521,13.397,
-13.293,13.129,12.919,12.741,12.642,12.589,12.515,12.402,12.303,12.280,12.336,12.406,12.425,12.381,12.312,12.255,
-12.209,12.139,12.018,11.839,11.606,11.307,10.914,10.395,9.730,8.914,7.957,6.893,5.790,4.732,3.789,2.991,
-2.333,1.806,1.402,1.114,.903,.713,.500,.266,.049,-.123,-.262,-.413,-.609,-.836,-1.050,-1.216,
--1.342,-1.468,-1.626,-1.819,-2.026,-2.229,-2.419,-2.592,-2.734,-2.832,-2.888,-2.928,-2.987,-3.072,-3.161,-3.215,
--3.224,-3.223,-3.273,-3.418,-3.646,-3.903,-4.129,-4.306,-4.462,-4.645,-4.877,-5.147,-5.423,-5.689,-5.947,-6.205,
--6.457,-6.687,-6.884,-7.055,-7.216,-7.376,-7.521,-7.634,-7.706,-7.743,-7.746,-7.706,-7.615,-7.484,-7.350,-7.243,
--7.162,-7.063,-6.904,-6.673,-6.400,-6.124,-5.855,-5.580,-5.289,-5.002,-4.748,-4.536,-4.334,-4.099,-3.820,-3.520,
--3.234,-2.962,-2.670,-2.324,-1.932,-1.538,-1.191,-.903,-.647,-.383,-.083,.264,.661,1.109,1.601,2.120,
-2.648,3.176,3.704,4.224,4.717,5.162,5.563,5.951,6.358,6.790,7.221,7.622,7.999,8.386,8.813,9.276,
-9.738,10.172,10.581,10.990,11.407,11.811,12.174,12.497,12.821,13.186,13.596,14.015,14.409,14.779,15.162,15.586,
-16.040,16.487,16.899,17.286,17.673,18.065,18.441,18.775,19.070,19.360,19.678,20.027,20.387,20.743,21.093,21.441,
-21.773,22.060,22.291,22.493,22.710,22.960,23.213,23.422,23.586,23.754,23.989,24.290,24.594,24.823,24.961,25.051,
-25.136,25.198,25.179,25.057,24.892,24.787,24.799,24.882,24.939,24.918,24.848,24.795,24.778,24.754,24.674,24.552,
-24.454,24.423,24.427,24.386,24.258,24.082,23.937,23.862,23.826,23.784,23.734,23.708,23.720,23.723,23.655,23.508,
-23.353,23.269,23.256,23.234,23.119,22.908,22.670,22.476,22.336,22.218,22.111,22.029,21.973,21.897,21.754,21.564,
-21.411,21.328,21.202,20.844,20.203,19.504,19.129,19.286,19.774,20.124,20.031,19.683,19.650,20.371,21.717,23.018,
-23.573,24.278,23.724,22.542,21.395,20.767,20.691,20.880,21.029,21.011,20.848,20.588,20.267,19.952,19.763,19.802,
-20.051,20.365,20.587,20.673,20.713,20.821,21.035,21.305,21.574,21.835,22.118,22.425,22.707,22.916,23.068,23.236,
-23.482,23.797,24.110,24.361,24.550,24.717,24.890,25.061,25.212,25.359,25.549,25.819,26.156,26.509,26.837,27.135,
-27.415,27.671,27.872,27.994,28.056,28.112,28.197,28.293,28.342,28.310,28.224,28.165,28.200,28.334,28.513,28.674,
-28.787,28.867,28.941,29.021,29.098,29.160,29.208,29.254,29.307,29.369,29.438,29.518,29.622,29.759,29.923,30.089,
-30.233,30.345,30.435,30.527,30.641,30.791,30.987,31.229,31.503,31.780,32.034,32.270,32.531,32.871,33.302,33.758,
-34.131,34.342,34.408,34.425,34.492,34.629,34.778,34.862,34.860,34.812,34.765,34.720,34.642,34.517,34.386,34.310,
-34.300,34.294,34.208,34.023,33.804,33.637,33.533,33.418,33.208,32.915,32.667,32.610,32.793,33.120,33.419,33.564,
-33.539,33.430,33.361,33.435,33.712,34.187,34.779,35.353,35.789,36.066,36.287,36.604,37.091,37.677,38.195,38.519,
-38.670,38.800,39.065,39.517,40.073,40.600,41.008,41.293,41.508,41.703,41.899,42.082,42.237,42.365,42.488,42.650,
-42.888,43.201,43.531,43.789,43.909,43.904,43.860,43.864,43.932,43.993,43.958,43.801,43.583,43.399,43.300,43.270,
-43.265,43.267,43.294,43.346,43.380,43.334,43.189,43.009,42.897,42.907,43.000,43.077,43.072,43.002,42.942,42.942,
-42.990,43.034,43.041,43.022,43.000,42.967,42.883,42.725,42.524,42.355,42.263,42.218,42.133,41.941,41.654,41.359,
-41.148,41.048,41.015,40.974,40.871,40.692,40.444,40.133,39.762,39.341,38.897,38.464,38.073,37.736,37.448,37.195,
-36.958,36.720,36.472,36.220,35.981,35.775,35.611,35.475,35.335,35.154,34.909,34.600,34.252,33.894,33.546,33.215,
-32.898,32.592,32.304,32.030,31.757,31.463,31.143,30.827,30.561,30.379,30.268,30.180,30.071,29.938,29.812,29.721,
-29.648,29.545,29.371,29.135,28.894,28.710,28.610,28.579,28.582,28.586,28.573,28.530,28.451,28.340,28.215,28.096,
-27.989,27.883,27.760,27.619,27.471,27.329,27.182,27.007,26.785,26.522,26.245,25.984,25.749,25.531,25.317,25.095,
-24.858,24.605,24.333,24.044,23.747,23.454,23.180,22.944,22.760,22.635,22.553,22.479,22.371,22.210,22.004,21.781,
-21.560,21.345,21.128,20.914,20.711,20.523,20.336,20.123,19.874,19.605,19.341,19.092,18.840,18.564,18.263,17.969,
-17.716,17.507,17.308,17.072,16.779,16.450,16.119,15.807,15.504,15.193,14.868,14.542,14.228,13.922,13.594,13.200,
-12.718,12.160,11.583,11.068,10.677,10.418,10.236,10.039,9.755,9.377,8.956,8.557,8.208,7.882,7.531,7.128,
-6.691,6.258,5.856,5.477,5.093,4.683,4.248,3.806,3.369,2.936,2.493,2.035,1.565,1.098,.643,.199,
--.245,-.699,-1.160,-1.618,-2.067,-2.514,-2.976,-3.461,-3.956,-4.435,-4.876,-5.288,-5.708,-6.173,-6.690,-7.231,
--7.760,-8.263,-8.752,-9.246,-9.748,-10.242,-10.716,-11.179,-11.653,-12.143,-12.634,-13.098,-13.521,-13.916,-14.304,-14.696,
--15.098,-15.522,-15.993,-16.523,-17.081,-17.596,-18.002,-18.292,-18.528,-18.787,-19.107,-19.466,-19.819,-20.148,-20.473,-20.822,
--21.198,-21.578,-21.944,-22.299,-22.661,-23.040,-23.423,-23.790,-24.137,-24.469,-24.782,-25.057,-25.285,-25.494,-25.745,-26.083,
--26.500,-26.927,-27.287,-27.551,-27.742,-27.913,-28.097,-28.299,-28.514,-28.740,-28.977,-29.214,-29.433,-29.622,-29.789,-29.948,
--30.103,-30.240,-30.347,-30.431,-30.519,-30.624,-30.733,-30.814,-30.853,-30.866,-30.890,-30.953,-31.053,-31.165,-31.262,-31.324,
--31.337,-31.299,-31.226,-31.155,-31.118,-31.120,-31.125,-31.091,-31.010,-30.918,-30.865,-30.867,-30.895,-30.908,-30.894,-30.875,
--30.870,-30.871,-30.852,-30.803,-30.750,-30.726,-30.731,-30.724,-30.663,-30.549,-30.429,-30.346,-30.296,-30.226,-30.089,-29.898,
--29.709,-29.574,-29.485,-29.389,-29.243,-29.053,-28.871,-28.742,-28.659,-28.579,-28.462,-28.312,-28.167,-28.059,-27.986,-27.910,
--27.801,-27.654,-27.490,-27.328,-27.163,-26.978,-26.759,-26.521,-26.288,-26.068,-25.846,-25.596,-25.314,-25.022,-24.754,-24.523,
--24.308,-24.082,-23.838,-23.602,-23.401,-23.233,-23.061,-22.838,-22.550,-22.220,-21.887,-21.572,-21.272,-20.977,-20.684,-20.399,
--20.118,-19.830,-19.527,-19.218,-18.929,-18.676,-18.455,-18.239,-18.007,-17.751,-17.478,-17.192,-16.899,-16.615,-16.375,-16.212,
--16.130,-16.091,-16.036,-15.917,-15.725,-15.493,-15.276,-15.131,-15.095,-15.155,-15.244,-15.267,-15.151,-14.892,-14.530,-14.069,
--13.420,-12.438,-11.055,-9.392,-7.728,-6.337,-5.300,-4.480,-3.672,-2.812,-2.041,-1.577,-1.512,-1.718,-1.960,-2.089,
--2.169,-2.407,-2.977,-3.878,-4.933,-5.912,-6.656,-7.128,-7.371,-7.454,-7.429,-7.328,-7.179,-7.010,-6.842,-6.689,
--6.549,-6.401,-6.216,-5.971,-5.671,-5.354,-5.075,-4.869,-4.730,-4.616,-4.480,-4.298,-4.082,-3.859,-3.654,-3.474,
--3.315,-3.172,-3.042,-2.920,-2.796,-2.662,-2.516,-2.366,-2.217,-2.066,-1.893,-1.679,-1.433,-1.198,-1.031,-.958,
--.944,-.903,-.750,-.465,-.102,.252,.543,.791,1.059,1.396,1.785,2.161,2.467,2.706,2.936,3.219,
-3.565,3.922,4.222,4.440,4.621,4.849,5.192,5.657,6.184,6.687,7.106,7.430,7.704,7.996,8.357,8.793,
-9.264,9.706,10.072,10.352,10.578,10.797,11.048,11.339,11.659,11.991,12.328,12.677,13.044,13.421,13.783,14.100,
-14.356,14.560,14.733,14.861,14.860,14.579,13.879,12.749,11.363,10.026,9.023,8.476,8.309,8.356,8.496,8.722,
-9.082,9.578,10.130,10.642,11.094,11.559,12.128,12.811,13.518,14.126,14.570,14.859,15.026,15.075,14.996,14.814,
-14.609,14.462,14.384,14.312,14.171,13.959,13.740,13.573,13.439,13.263,12.990,12.644,12.295,11.980,11.662,11.284,
-10.852,10.452,10.172,10.008,9.859,9.604,9.213,8.754,8.332,7.997,7.730,7.481,7.213,6.896,6.498,5.996,
-5.417,4.860,4.438,4.186,4.018,3.786,3.389,2.858,2.318,1.896,1.640,1.505,1.401,1.245,.989,.640,
-.260,-.056,-.230,-.268,-.258,-.300,-.412,-.520,-.540,-.489,-.487,-.658,-.997,-1.360,-1.580,-1.597,
--1.480,-1.325,-1.149,-.900,-.570,-.279,-.227,-.530,-1.114,-1.757,-2.251,-2.529,-2.662,-2.748,-2.818,-2.848,
--2.827,-2.794,-2.804,-2.874,-2.971,-3.068,-3.184,-3.370,-3.636,-3.917,-4.110,-4.164,-4.121,-4.085,-4.138,-4.282,
--4.456,-4.602,-4.701,-4.779,-4.873,-5.007,-5.185,-5.395,-5.611,-5.798,-5.928,-6.009,-6.085,-6.209,-6.401,-6.632,
--6.849,-7.015,-7.137,-7.248,-7.376,-7.523,-7.681,-7.847,-8.028,-8.229,-8.438,-8.639,-8.833,-9.042,-9.294,-9.587,
--9.884,-10.135,-10.319,-10.458,-10.594,-10.761,-10.957,-11.161,-11.352,-11.521,-11.666,-11.781,-11.853,-11.877,-11.868,-11.854,
--11.860,-11.887,-11.926,-11.969,-12.028,-12.118,-12.244,-12.386,-12.514,-12.612,-12.694,-12.794,-12.937,-13.121,-13.314,-13.473,
--13.575,-13.617,-13.617,-13.596,-13.569,-13.550,-13.547,-13.570,-13.618,-13.682,-13.741,-13.778,-13.790,-13.788,-13.794,-13.821,
--13.868,-13.921,-13.962,-13.985,-13.996,-14.002,-14.011,-14.019,-14.026,-14.032,-14.044,-14.062,-14.075,-14.065,-14.022,-13.949,
--13.868,-13.801,-13.757,-13.727,-13.701,-13.677,-13.663,-13.665,-13.674,-13.665,-13.614,-13.516,-13.392,-13.272,-13.172,-13.093,
--13.020,-12.944,-12.871,-12.809,-12.761,-12.714,-12.653,-12.573,-12.486,-12.409,-12.351,-12.303,-12.254,-12.198,-12.148,-12.115,
--12.099,-12.087,-12.063,-12.024,-11.986,-11.970,-11.985,-12.023,-12.063,-12.093,-12.113,-12.132,-12.156,-12.184,-12.206,-12.213,
--12.204,-12.182,-12.153,-12.121,-12.088,-12.057,-12.029,-12.002,-11.968,-11.920,-11.860,-11.794,-11.735,-11.686,-11.641,-11.590,
--11.530,-11.468,-11.413,-11.364,-11.309,-11.233,-11.135,-11.027,-10.924,-10.832,-10.745,-10.654,-10.564,-10.489,-10.434,-10.391,
--10.342,-10.277,-10.209,-10.154,-10.120,-10.095,-10.064,-10.024,-9.992,-9.981,-9.987,-9.984,-9.951,-9.893,-9.838,-9.806,
--9.788,-9.751,-9.668,-9.547,-9.428,-9.348,-9.308,-9.276,-9.217,-9.123,-9.018,-8.933,-8.874,-8.817,-8.736,-8.628,
--8.524,-8.461,-8.452,-8.473,-8.484,-8.458,-8.399,-8.330,-8.267,-8.204,-8.125,-8.024,-7.911,-7.806,-7.715,-7.624,
--7.516,-7.386,-7.250,-7.125,-7.006,-6.865,-6.672,-6.414,-6.107,-5.788,-5.494,-5.259,-5.104,-5.034,-5.032,-5.060,
--5.066,-5.017,-4.905,-4.747,-4.569,-4.390,-4.215,-4.042,-3.867,-3.687,-3.501,-3.316,-3.139,-2.972,-2.808,-2.629,
--2.431,-2.227,-2.041,-1.885,-1.748,-1.600,-1.430,-1.251,-1.087,-.943,-.798,-.628,-.428,-.216,-.004,.219,
-.475,.763,1.043,1.272,1.443,1.595,1.771,1.975,2.170,2.331,2.479,2.665,2.914,3.194,3.447,3.655,
-3.863,4.120,4.424,4.709,4.917,5.058,5.207,5.423,5.697,5.974,6.223,6.476,6.778,7.124,7.451,7.708,
-7.918,8.153,8.447,8.753,8.992,9.156,9.330,9.611,9.997,10.386,10.682,10.893,11.094,11.310,11.439,11.339,
-10.998,10.596,10.390,10.530,10.984,11.647,12.476,13.496,14.657,15.741,16.464,16.717,16.710,16.841,17.390,18.310,
-19.293,20.041,20.469,20.683,20.814,20.896,20.908,20.878,20.913,21.112,21.465,21.868,22.215,22.463,22.600,22.577,
-22.304,21.737,20.947,20.078,19.231,18.397,17.517,16.602,15.771,15.157,14.775,14.512,14.236,13.929,13.682,13.569,
-13.544,13.473,13.265,12.968,12.720,12.604,12.575,12.516,12.362,12.170,12.051,12.065,12.167,12.263,12.294,12.271,
-12.235,12.202,12.139,11.998,11.748,11.373,10.864,10.213,9.428,8.548,7.629,6.713,5.814,4.930,4.069,3.259,
-2.541,1.948,1.489,1.150,.898,.692,.495,.292,.095,-.073,-.206,-.329,-.480,-.680,-.909,-1.122,
--1.286,-1.408,-1.527,-1.678,-1.866,-2.068,-2.258,-2.422,-2.557,-2.666,-2.745,-2.792,-2.822,-2.853,-2.894,-2.930,
--2.943,-2.933,-2.937,-3.013,-3.197,-3.470,-3.769,-4.030,-4.228,-4.386,-4.543,-4.723,-4.924,-5.138,-5.371,-5.634,
--5.923,-6.210,-6.459,-6.657,-6.824,-6.991,-7.165,-7.324,-7.441,-7.508,-7.544,-7.563,-7.561,-7.520,-7.438,-7.340,
--7.251,-7.166,-7.051,-6.870,-6.630,-6.369,-6.123,-5.891,-5.643,-5.364,-5.075,-4.813,-4.593,-4.385,-4.149,-3.873,
--3.586,-3.315,-3.050,-2.748,-2.378,-1.965,-1.572,-1.252,-1.001,-.768,-.496,-.161,.230,.662,1.132,1.642,
-2.182,2.737,3.292,3.838,4.366,4.856,5.290,5.673,6.041,6.435,6.865,7.307,7.726,8.115,8.499,8.904,
-9.326,9.743,10.143,10.542,10.966,11.410,11.832,12.188,12.481,12.760,13.084,13.462,13.862,14.250,14.631,15.037,
-15.489,15.963,16.415,16.827,17.219,17.621,18.033,18.418,18.750,19.044,19.349,19.695,20.066,20.421,20.746,21.069,
-21.417,21.779,22.100,22.347,22.541,22.746,22.998,23.264,23.485,23.644,23.800,24.031,24.350,24.684,24.941,25.091,
-25.180,25.259,25.319,25.303,25.187,25.032,24.941,24.963,25.049,25.101,25.073,25.006,24.965,24.957,24.926,24.822,
-24.673,24.560,24.530,24.542,24.505,24.373,24.188,24.027,23.923,23.845,23.757,23.671,23.638,23.666,23.694,23.645,
-23.510,23.360,23.272,23.238,23.175,23.027,22.832,22.683,22.623,22.588,22.477,22.264,22.031,21.879,21.819,21.774,
-21.675,21.521,21.334,21.070,20.650,20.103,19.676,19.715,20.354,21.301,21.991,22.039,21.606,21.308,21.694,22.748,
-23.856,24.278,22.607,22.193,21.290,20.410,19.940,19.923,20.158,20.440,20.681,20.858,20.916,20.784,20.488,20.190,
-20.091,20.260,20.579,20.850,20.974,21.013,21.105,21.318,21.607,21.882,22.106,22.308,22.527,22.755,22.949,23.097,
-23.242,23.445,23.720,24.017,24.262,24.422,24.519,24.602,24.717,24.894,25.160,25.530,25.991,26.487,26.938,27.289,
-27.530,27.688,27.793,27.862,27.909,27.959,28.040,28.149,28.243,28.261,28.184,28.064,27.995,28.050,28.233,28.483,
-28.718,28.888,28.986,29.034,29.056,29.071,29.096,29.149,29.234,29.343,29.453,29.549,29.640,29.752,29.907,30.102,
-30.306,30.484,30.615,30.708,30.789,30.891,31.042,31.256,31.532,31.844,32.152,32.421,32.648,32.870,33.136,33.461,
-33.796,34.057,34.182,34.180,34.126,34.102,34.145,34.234,34.329,34.404,34.453,34.466,34.420,34.305,34.152,34.033,
-34.000,34.039,34.068,34.014,33.877,33.726,33.625,33.560,33.448,33.228,32.941,32.718,32.685,32.858,33.134,33.375,
-33.499,33.523,33.523,33.582,33.765,34.113,34.624,35.231,35.811,36.248,36.528,36.766,37.126,37.678,38.322,38.862,
-39.165,39.276,39.387,39.685,40.206,40.822,41.356,41.713,41.921,42.076,42.249,42.446,42.633,42.791,42.938,43.114,
-43.348,43.634,43.935,44.191,44.338,44.340,44.207,44.005,43.828,43.740,43.744,43.776,43.757,43.642,43.444,43.228,
-43.068,43.018,43.082,43.214,43.332,43.360,43.281,43.145,43.045,43.048,43.145,43.258,43.305,43.265,43.182,43.128,
-43.136,43.184,43.226,43.237,43.225,43.201,43.158,43.072,42.934,42.770,42.626,42.529,42.460,42.373,42.232,42.042,
-41.846,41.687,41.580,41.510,41.441,41.334,41.157,40.894,40.550,40.148,39.727,39.314,38.924,38.555,38.207,37.886,
-37.600,37.343,37.098,36.847,36.593,36.360,36.175,36.042,35.932,35.796,35.596,35.324,35.000,34.654,34.308,33.967,
-33.628,33.293,32.972,32.672,32.390,32.108,31.811,31.502,31.214,30.978,30.804,30.666,30.523,30.361,30.200,30.073,
-29.992,29.921,29.809,29.625,29.392,29.166,29.000,28.913,28.889,28.898,28.911,28.902,28.852,28.749,28.604,28.446,
-28.305,28.192,28.095,27.992,27.869,27.724,27.562,27.378,27.173,26.954,26.738,26.538,26.351,26.160,25.950,25.721,
-25.480,25.227,24.957,24.667,24.367,24.086,23.842,23.641,23.471,23.324,23.199,23.098,23.002,22.879,22.703,22.476,
-22.224,21.981,21.757,21.547,21.336,21.125,20.918,20.710,20.488,20.238,19.964,19.689,19.435,19.202,18.975,18.737,
-18.486,18.232,17.984,17.733,17.466,17.176,16.870,16.563,16.262,15.967,15.669,15.366,15.054,14.728,14.368,13.952,
-13.466,12.923,12.361,11.840,11.417,11.116,10.911,10.736,10.512,10.197,9.806,9.389,8.995,8.629,8.264,7.871,
-7.454,7.041,6.661,6.311,5.957,5.567,5.134,4.683,4.243,3.824,3.414,2.992,2.546,2.084,1.619,1.159,
-.707,.258,-.193,-.645,-1.098,-1.548,-1.999,-2.457,-2.924,-3.397,-3.866,-4.319,-4.754,-5.184,-5.630,-6.105,
--6.608,-7.125,-7.644,-8.155,-8.654,-9.141,-9.618,-10.093,-10.580,-11.084,-11.592,-12.080,-12.524,-12.924,-13.295,-13.660,
--14.040,-14.451,-14.915,-15.446,-16.030,-16.608,-17.104,-17.467,-17.718,-17.931,-18.181,-18.495,-18.844,-19.190,-19.527,-19.878,
--20.260,-20.660,-21.043,-21.391,-21.723,-22.073,-22.455,-22.850,-23.228,-23.574,-23.897,-24.208,-24.502,-24.769,-25.018,-25.284,
--25.603,-25.976,-26.361,-26.701,-26.969,-27.179,-27.370,-27.571,-27.794,-28.032,-28.280,-28.527,-28.760,-28.967,-29.143,-29.304,
--29.465,-29.632,-29.790,-29.927,-30.040,-30.144,-30.249,-30.350,-30.432,-30.488,-30.528,-30.573,-30.639,-30.729,-30.832,-30.929,
--30.997,-31.010,-30.964,-30.882,-30.811,-30.786,-30.801,-30.811,-30.771,-30.682,-30.590,-30.544,-30.555,-30.588,-30.605,-30.599,
--30.591,-30.594,-30.592,-30.562,-30.504,-30.452,-30.435,-30.438,-30.413,-30.327,-30.203,-30.102,-30.061,-30.044,-29.974,-29.807,
--29.581,-29.383,-29.272,-29.223,-29.153,-29.004,-28.794,-28.597,-28.469,-28.401,-28.334,-28.220,-28.066,-27.924,-27.832,-27.783,
--27.732,-27.636,-27.492,-27.322,-27.152,-26.979,-26.784,-26.557,-26.309,-26.067,-25.843,-25.625,-25.392,-25.131,-24.861,-24.610,
--24.394,-24.202,-24.010,-23.802,-23.583,-23.370,-23.164,-22.947,-22.699,-22.415,-22.113,-21.817,-21.533,-21.248,-20.951,-20.645,
--20.347,-20.069,-19.801,-19.522,-19.219,-18.909,-18.629,-18.408,-18.240,-18.079,-17.871,-17.581,-17.225,-16.858,-16.543,-16.315,
--16.166,-16.063,-15.974,-15.890,-15.811,-15.722,-15.591,-15.401,-15.193,-15.054,-15.053,-15.164,-15.270,-15.242,-15.038,-14.715,
--14.333,-13.836,-13.051,-11.825,-10.198,-8.440,-6.894,-5.754,-4.961,-4.305,-3.635,-2.986,-2.517,-2.338,-2.397,-2.537,
--2.651,-2.792,-3.125,-3.777,-4.717,-5.760,-6.688,-7.365,-7.774,-7.977,-8.033,-7.974,-7.811,-7.567,-7.292,-7.045,
--6.871,-6.766,-6.681,-6.553,-6.342,-6.066,-5.791,-5.584,-5.468,-5.398,-5.305,-5.141,-4.910,-4.659,-4.432,-4.244,
--4.085,-3.938,-3.797,-3.663,-3.530,-3.392,-3.252,-3.128,-3.032,-2.950,-2.837,-2.647,-2.377,-2.087,-1.867,-1.771,
--1.773,-1.777,-1.672,-1.413,-1.042,-.656,-.336,-.090,.141,.427,.789,1.177,1.514,1.763,1.966,2.214,
-2.575,3.027,3.461,3.757,3.873,3.891,3.968,4.240,4.731,5.345,5.933,6.387,6.699,6.946,7.225,7.590,
-8.026,8.476,8.881,9.214,9.490,9.749,10.029,10.349,10.696,11.033,11.324,11.564,11.790,12.065,12.432,12.873,
-13.313,13.662,13.880,13.988,14.018,13.938,13.629,12.956,11.904,10.649,9.509,8.774,8.543,8.699,9.031,9.391,
-9.764,10.206,10.734,11.285,11.771,12.178,12.573,13.030,13.543,14.015,14.341,14.497,14.542,14.550,14.540,14.481,
-14.356,14.204,14.086,14.024,13.977,13.884,13.729,13.554,13.402,13.263,13.074,12.785,12.406,11.996,11.598,11.209,
-10.809,10.414,10.079,9.845,9.680,9.486,9.178,8.752,8.286,7.868,7.527,7.230,6.925,6.583,6.193,5.744,
-5.233,4.692,4.200,3.839,3.623,3.466,3.236,2.846,2.324,1.783,1.347,1.080,.961,.910,.818,.593,
-.207,-.275,-.712,-.971,-1.021,-.961,-.939,-1.027,-1.173,-1.264,-1.252,-1.210,-1.266,-1.478,-1.786,-2.064,
--2.231,-2.287,-2.262,-2.146,-1.894,-1.512,-1.113,-.881,-.946,-1.301,-1.810,-2.319,-2.739,-3.055,-3.270,-3.371,
--3.354,-3.270,-3.210,-3.241,-3.352,-3.472,-3.546,-3.593,-3.692,-3.894,-4.164,-4.406,-4.541,-4.573,-4.579,-4.640,
--4.782,-4.963,-5.119,-5.209,-5.238,-5.249,-5.299,-5.436,-5.665,-5.943,-6.196,-6.363,-6.444,-6.499,-6.604,-6.799,
--7.056,-7.316,-7.530,-7.686,-7.802,-7.894,-7.970,-8.042,-8.139,-8.288,-8.497,-8.734,-8.955,-9.140,-9.309,-9.505,
--9.751,-10.028,-10.291,-10.506,-10.674,-10.822,-10.976,-11.144,-11.313,-11.472,-11.618,-11.748,-11.860,-11.943,-11.996,-12.029,
--12.057,-12.092,-12.130,-12.167,-12.205,-12.258,-12.343,-12.467,-12.614,-12.759,-12.885,-12.994,-13.099,-13.218,-13.354,-13.500,
--13.637,-13.752,-13.836,-13.884,-13.896,-13.875,-13.832,-13.784,-13.756,-13.766,-13.816,-13.888,-13.954,-13.994,-14.004,-14.000,
--14.003,-14.024,-14.055,-14.084,-14.104,-14.118,-14.134,-14.154,-14.171,-14.179,-14.182,-14.189,-14.202,-14.210,-14.192,-14.138,
--14.055,-13.969,-13.902,-13.859,-13.828,-13.798,-13.766,-13.744,-13.738,-13.737,-13.718,-13.660,-13.562,-13.447,-13.342,-13.258,
--13.190,-13.120,-13.038,-12.949,-12.870,-12.809,-12.763,-12.715,-12.651,-12.569,-12.479,-12.394,-12.324,-12.268,-12.221,-12.179,
--12.143,-12.114,-12.091,-12.068,-12.043,-12.016,-11.997,-11.992,-12.000,-12.012,-12.016,-12.007,-11.995,-11.991,-12.003,-12.022,
--12.034,-12.028,-12.005,-11.975,-11.945,-11.920,-11.896,-11.868,-11.834,-11.795,-11.749,-11.696,-11.638,-11.582,-11.534,-11.494,
--11.455,-11.409,-11.354,-11.295,-11.238,-11.182,-11.119,-11.044,-10.958,-10.867,-10.772,-10.676,-10.580,-10.494,-10.428,-10.384,
--10.346,-10.298,-10.234,-10.166,-10.112,-10.080,-10.056,-10.024,-9.982,-9.944,-9.925,-9.926,-9.927,-9.908,-9.866,-9.814,
--9.764,-9.710,-9.639,-9.543,-9.439,-9.355,-9.305,-9.275,-9.234,-9.162,-9.064,-8.966,-8.885,-8.817,-8.741,-8.643,
--8.528,-8.424,-8.356,-8.326,-8.316,-8.302,-8.269,-8.224,-8.179,-8.139,-8.100,-8.049,-7.986,-7.919,-7.855,-7.790,
--7.702,-7.568,-7.378,-7.147,-6.901,-6.659,-6.423,-6.190,-5.958,-5.739,-5.551,-5.402,-5.289,-5.198,-5.121,-5.064,
--5.035,-5.030,-5.024,-4.978,-4.864,-4.681,-4.461,-4.247,-4.061,-3.897,-3.730,-3.547,-3.358,-3.188,-3.048,-2.918,
--2.766,-2.576,-2.367,-2.172,-2.008,-1.859,-1.696,-1.511,-1.324,-1.158,-1.011,-.852,-.653,-.415,-.169,.066,
-.299,.557,.841,1.118,1.345,1.514,1.659,1.819,2.002,2.184,2.345,2.504,2.700,2.944,3.207,3.451,
-3.677,3.926,4.227,4.551,4.826,5.012,5.142,5.298,5.528,5.808,6.075,6.308,6.543,6.828,7.154,7.464,
-7.715,7.931,8.171,8.452,8.719,8.911,9.048,9.231,9.540,9.944,10.322,10.589,10.777,10.983,11.220,11.363,
-11.253,10.884,10.458,10.250,10.404,10.863,11.499,12.271,13.225,14.341,15.421,16.175,16.477,16.521,16.703,17.312,
-18.299,19.338,20.099,20.476,20.588,20.603,20.593,20.551,20.490,20.495,20.656,20.976,21.360,21.693,21.907,21.972,
-21.852,21.491,20.875,20.076,19.220,18.390,17.577,16.744,15.917,15.206,14.713,14.418,14.197,13.941,13.667,13.488,
-13.470,13.529,13.486,13.240,12.865,12.545,12.400,12.382,12.338,12.174,11.943,11.789,11.802,11.942,12.089,12.153,
-12.137,12.095,12.055,11.977,11.786,11.421,10.864,10.131,9.260,8.309,7.355,6.472,5.688,4.975,4.272,3.543,
-2.815,2.157,1.627,1.241,.964,.745,.548,.362,.194,.045,-.087,-.218,-.366,-.547,-.759,-.983,
--1.190,-1.361,-1.503,-1.640,-1.794,-1.967,-2.136,-2.280,-2.393,-2.486,-2.575,-2.658,-2.722,-2.755,-2.758,-2.748,
--2.736,-2.731,-2.737,-2.774,-2.874,-3.056,-3.308,-3.588,-3.849,-4.065,-4.242,-4.399,-4.552,-4.707,-4.876,-5.082,
--5.342,-5.643,-5.943,-6.198,-6.399,-6.571,-6.747,-6.930,-7.089,-7.195,-7.250,-7.284,-7.325,-7.365,-7.378,-7.345,
--7.280,-7.202,-7.113,-6.986,-6.798,-6.562,-6.317,-6.097,-5.891,-5.667,-5.404,-5.124,-4.865,-4.641,-4.426,-4.185,
--3.914,-3.642,-3.390,-3.139,-2.841,-2.470,-2.056,-1.669,-1.357,-1.103,-.847,-.535,-.152,.284,.756,1.263,
-1.809,2.379,2.945,3.486,4.000,4.492,4.960,5.391,5.782,6.158,6.552,6.977,7.411,7.825,8.207,8.577,
-8.957,9.351,9.743,10.127,10.519,10.941,11.381,11.794,12.139,12.421,12.692,13.007,13.373,13.760,14.139,14.523,
-14.946,15.419,15.907,16.364,16.777,17.180,17.605,18.045,18.454,18.801,19.106,19.421,19.770,20.126,20.446,20.727,
-21.019,21.366,21.751,22.103,22.366,22.561,22.763,23.020,23.303,23.541,23.710,23.869,24.103,24.431,24.778,25.045,
-25.196,25.273,25.333,25.375,25.351,25.245,25.117,25.060,25.111,25.208,25.257,25.226,25.165,25.140,25.146,25.115,
-24.994,24.817,24.673,24.616,24.605,24.553,24.417,24.242,24.095,23.995,23.898,23.767,23.631,23.555,23.563,23.603,
-23.603,23.542,23.467,23.412,23.340,23.180,22.925,22.679,22.564,22.585,22.602,22.461,22.159,21.856,21.720,21.754,
-21.792,21.669,21.377,21.050,20.807,20.652,20.554,20.583,20.907,21.592,22.404,22.881,22.690,21.957,21.236,21.083,
-21.591,22.308,22.607,20.126,20.083,19.840,19.686,19.794,20.101,20.430,20.685,20.894,21.098,21.235,21.182,20.911,
-20.575,20.408,20.526,20.838,21.137,21.294,21.355,21.461,21.693,21.999,22.268,22.448,22.585,22.762,23.004,23.264,
-23.482,23.653,23.819,24.018,24.235,24.419,24.537,24.608,24.696,24.866,25.150,25.546,26.021,26.522,26.984,27.349,
-27.590,27.717,27.774,27.804,27.838,27.888,27.956,28.034,28.093,28.098,28.032,27.922,27.841,27.866,28.028,28.290,
-28.568,28.792,28.934,29.008,29.049,29.083,29.124,29.186,29.278,29.401,29.537,29.658,29.753,29.837,29.944,30.101,
-30.302,30.515,30.699,30.834,30.934,31.031,31.158,31.334,31.566,31.843,32.145,32.440,32.701,32.915,33.095,33.267,
-33.443,33.608,33.730,33.783,33.778,33.755,33.764,33.827,33.937,34.064,34.174,34.231,34.207,34.096,33.927,33.771,
-33.697,33.727,33.810,33.863,33.836,33.746,33.655,33.595,33.533,33.405,33.190,32.956,32.814,32.833,32.988,33.184,
-33.340,33.446,33.546,33.692,33.904,34.186,34.553,35.021,35.569,36.117,36.580,36.946,37.299,37.755,38.341,38.951,
-39.417,39.661,39.781,39.978,40.400,41.021,41.663,42.141,42.394,42.504,42.599,42.747,42.927,43.085,43.206,43.336,
-43.535,43.823,44.169,44.509,44.781,44.933,44.929,44.757,44.448,44.086,43.779,43.604,43.563,43.578,43.554,43.440,
-43.269,43.136,43.122,43.241,43.418,43.542,43.537,43.412,43.256,43.170,43.197,43.302,43.401,43.429,43.383,43.314,
-43.277,43.294,43.346,43.399,43.431,43.440,43.426,43.386,43.310,43.201,43.072,42.943,42.821,42.700,42.570,42.429,
-42.286,42.152,42.037,41.945,41.875,41.814,41.726,41.568,41.310,40.956,40.547,40.133,39.743,39.373,39.009,38.648,
-38.308,38.007,37.743,37.490,37.226,36.958,36.719,36.543,36.427,36.329,36.190,35.975,35.685,35.349,34.999,34.646,
-34.287,33.918,33.549,33.197,32.878,32.592,32.326,32.069,31.821,31.592,31.387,31.195,30.999,30.794,30.598,30.439,
-30.334,30.263,30.181,30.049,29.865,29.660,29.477,29.343,29.263,29.228,29.223,29.229,29.216,29.153,29.030,28.866,
-28.702,28.570,28.474,28.391,28.294,28.172,28.025,27.855,27.660,27.447,27.234,27.047,26.893,26.748,26.580,26.366,
-26.113,25.840,25.561,25.272,24.974,24.688,24.445,24.267,24.139,24.024,23.894,23.750,23.612,23.482,23.339,23.148,
-22.902,22.628,22.366,22.140,21.938,21.735,21.518,21.292,21.066,20.837,20.591,20.322,20.043,19.784,19.561,19.366,
-19.169,18.941,18.673,18.380,18.087,17.808,17.545,17.286,17.014,16.725,16.420,16.110,15.795,15.461,15.082,14.636,
-14.125,13.578,13.046,12.574,12.189,11.892,11.658,11.444,11.207,10.919,10.579,10.210,9.837,9.467,9.088,8.680,
-8.248,7.822,7.437,7.097,6.772,6.415,6.007,5.562,5.119,4.703,4.310,3.919,3.509,3.077,2.632,2.179,
-1.718,1.251,.783,.322,-.131,-.584,-1.042,-1.505,-1.966,-2.418,-2.867,-3.321,-3.785,-4.250,-4.706,-5.148,
--5.590,-6.049,-6.537,-7.047,-7.560,-8.056,-8.531,-9.001,-9.490,-10.009,-10.547,-11.075,-11.558,-11.981,-12.353,-12.702,
--13.057,-13.444,-13.882,-14.386,-14.953,-15.548,-16.101,-16.548,-16.866,-17.096,-17.316,-17.585,-17.913,-18.269,-18.626,-18.985,
--19.368,-19.779,-20.188,-20.555,-20.874,-21.181,-21.522,-21.911,-22.318,-22.692,-23.015,-23.308,-23.607,-23.926,-24.251,-24.560,
--24.848,-25.136,-25.441,-25.761,-26.073,-26.357,-26.609,-26.843,-27.081,-27.333,-27.599,-27.865,-28.114,-28.332,-28.516,-28.677,
--28.830,-28.989,-29.152,-29.307,-29.448,-29.575,-29.697,-29.815,-29.926,-30.021,-30.100,-30.168,-30.231,-30.296,-30.368,-30.454,
--30.551,-30.638,-30.682,-30.661,-30.590,-30.517,-30.483,-30.490,-30.501,-30.473,-30.402,-30.327,-30.286,-30.287,-30.303,-30.311,
--30.310,-30.313,-30.319,-30.302,-30.246,-30.170,-30.116,-30.110,-30.121,-30.090,-29.992,-29.866,-29.784,-29.774,-29.780,-29.711,
--29.528,-29.290,-29.103,-29.023,-29.005,-28.947,-28.786,-28.553,-28.340,-28.214,-28.159,-28.102,-27.988,-27.828,-27.679,-27.588,
--27.549,-27.510,-27.424,-27.284,-27.115,-26.944,-26.778,-26.599,-26.391,-26.158,-25.915,-25.682,-25.457,-25.230,-24.990,-24.741,
--24.500,-24.283,-24.091,-23.913,-23.734,-23.544,-23.341,-23.123,-22.886,-22.625,-22.342,-22.050,-21.763,-21.483,-21.198,-20.897,
--20.583,-20.274,-19.989,-19.725,-19.461,-19.173,-18.869,-18.589,-18.378,-18.240,-18.122,-17.938,-17.635,-17.239,-16.841,-16.537,
--16.357,-16.251,-16.139,-15.990,-15.841,-15.749,-15.721,-15.686,-15.562,-15.341,-15.115,-15.002,-15.035,-15.125,-15.134,-14.996,
--14.759,-14.495,-14.166,-13.596,-12.583,-11.099,-9.356,-7.704,-6.413,-5.526,-4.898,-4.364,-3.874,-3.489,-3.277,-3.228,
--3.272,-3.373,-3.589,-4.031,-4.754,-5.685,-6.649,-7.465,-8.035,-8.363,-8.508,-8.526,-8.441,-8.258,-7.994,-7.694,
--7.417,-7.213,-7.090,-7.008,-6.902,-6.731,-6.509,-6.297,-6.153,-6.085,-6.037,-5.936,-5.747,-5.491,-5.222,-4.982,
--4.781,-4.606,-4.446,-4.305,-4.181,-4.065,-3.946,-3.828,-3.733,-3.667,-3.598,-3.469,-3.243,-2.956,-2.703,-2.573,
--2.573,-2.612,-2.559,-2.334,-1.961,-1.543,-1.184,-.921,-.710,-.472,-.157,.217,.583,.879,1.096,1.295,
-1.566,1.958,2.424,2.841,3.086,3.134,3.096,3.156,3.453,3.983,4.602,5.132,5.480,5.695,5.914,6.253,
-6.732,7.272,7.771,8.166,8.467,8.723,8.985,9.278,9.595,9.913,10.202,10.439,10.633,10.840,11.137,11.577,
-12.134,12.690,13.097,13.267,13.220,13.043,12.796,12.448,11.910,11.154,10.304,9.613,9.321,9.502,10.021,10.639,
-11.175,11.590,11.954,12.335,12.736,13.117,13.453,13.765,14.082,14.383,14.601,14.680,14.633,14.533,14.454,14.404,
-14.343,14.234,14.094,13.974,13.901,13.848,13.761,13.612,13.422,13.234,13.062,12.878,12.644,12.348,12.003,11.630,
-11.240,10.844,10.473,10.159,9.905,9.663,9.357,8.946,8.457,7.960,7.503,7.082,6.656,6.195,5.708,5.218,
-4.736,4.255,3.787,3.382,3.094,2.929,2.815,2.642,2.334,1.897,1.409,.968,.638,.428,.297,.160,
--.077,-.467,-.970,-1.452,-1.761,-1.833,-1.744,-1.648,-1.660,-1.775,-1.904,-1.968,-1.973,-1.987,-2.067,-2.205,
--2.358,-2.500,-2.641,-2.782,-2.875,-2.838,-2.630,-2.311,-2.017,-1.879,-1.943,-2.177,-2.518,-2.920,-3.337,-3.703,
--3.935,-3.989,-3.908,-3.801,-3.767,-3.820,-3.902,-3.951,-3.972,-4.031,-4.189,-4.434,-4.689,-4.869,-4.950,-4.983,
--5.047,-5.189,-5.390,-5.586,-5.708,-5.728,-5.679,-5.642,-5.701,-5.894,-6.183,-6.478,-6.698,-6.825,-6.908,-7.023,
--7.208,-7.452,-7.709,-7.943,-8.138,-8.291,-8.396,-8.449,-8.468,-8.505,-8.612,-8.806,-9.052,-9.290,-9.481,-9.630,
--9.782,-9.971,-10.201,-10.446,-10.675,-10.873,-11.043,-11.195,-11.335,-11.466,-11.592,-11.715,-11.833,-11.939,-12.026,-12.095,
--12.158,-12.221,-12.283,-12.337,-12.378,-12.414,-12.461,-12.540,-12.655,-12.802,-12.964,-13.122,-13.262,-13.377,-13.469,-13.549,
--13.633,-13.730,-13.839,-13.946,-14.037,-14.096,-14.117,-14.101,-14.058,-14.008,-13.976,-13.982,-14.029,-14.099,-14.162,-14.196,
--14.200,-14.188,-14.174,-14.166,-14.162,-14.161,-14.169,-14.192,-14.228,-14.264,-14.285,-14.288,-14.280,-14.271,-14.260,-14.240,
--14.203,-14.151,-14.095,-14.042,-13.992,-13.941,-13.888,-13.843,-13.814,-13.800,-13.785,-13.750,-13.686,-13.601,-13.514,-13.440,
--13.379,-13.322,-13.255,-13.172,-13.079,-12.986,-12.906,-12.843,-12.791,-12.736,-12.665,-12.576,-12.480,-12.396,-12.330,-12.277,
--12.222,-12.159,-12.094,-12.044,-12.018,-12.009,-12.002,-11.986,-11.965,-11.947,-11.937,-11.928,-11.910,-11.884,-11.861,-11.850,
--11.850,-11.850,-11.835,-11.806,-11.773,-11.748,-11.731,-11.713,-11.685,-11.649,-11.611,-11.574,-11.536,-11.491,-11.442,-11.398,
--11.364,-11.332,-11.288,-11.224,-11.145,-11.069,-11.009,-10.965,-10.923,-10.870,-10.797,-10.707,-10.611,-10.519,-10.444,-10.389,
--10.351,-10.311,-10.256,-10.183,-10.106,-10.048,-10.018,-10.008,-9.999,-9.978,-9.947,-9.920,-9.902,-9.890,-9.872,-9.838,
--9.785,-9.715,-9.627,-9.528,-9.432,-9.358,-9.314,-9.291,-9.263,-9.206,-9.118,-9.017,-8.927,-8.857,-8.797,-8.727,
--8.640,-8.540,-8.443,-8.357,-8.280,-8.206,-8.132,-8.061,-8.002,-7.957,-7.922,-7.887,-7.846,-7.801,-7.758,-7.719,
--7.675,-7.601,-7.471,-7.278,-7.036,-6.776,-6.524,-6.292,-6.075,-5.872,-5.697,-5.571,-5.499,-5.455,-5.398,-5.298,
--5.168,-5.052,-4.987,-4.969,-4.942,-4.841,-4.642,-4.382,-4.128,-3.929,-3.780,-3.643,-3.486,-3.313,-3.153,-3.020,
--2.898,-2.752,-2.567,-2.367,-2.184,-2.032,-1.889,-1.724,-1.534,-1.345,-1.183,-1.040,-.880,-.676,-.433,-.185,
-.045,.271,.525,.815,1.110,1.364,1.560,1.718,1.874,2.041,2.211,2.377,2.552,2.758,2.994,3.237,
-3.469,3.703,3.972,4.281,4.588,4.839,5.018,5.178,5.386,5.657,5.942,6.182,6.378,6.588,6.863,7.186,
-7.492,7.742,7.961,8.205,8.479,8.728,8.903,9.037,9.229,9.536,9.910,10.236,10.462,10.654,10.904,11.188,
-11.333,11.170,10.733,10.282,10.124,10.373,10.900,11.513,12.156,12.935,13.924,14.989,15.845,16.303,16.479,16.728,
-17.345,18.317,19.340,20.075,20.394,20.417,20.347,20.306,20.294,20.286,20.304,20.403,20.601,20.855,21.091,21.246,
-21.266,21.090,20.662,19.989,19.165,18.322,17.539,16.807,16.085,15.393,14.820,14.434,14.194,13.972,13.679,13.363,
-13.162,13.147,13.225,13.204,12.971,12.600,12.281,12.140,12.127,12.085,11.919,11.688,11.545,11.582,11.748,11.908,
-11.969,11.941,11.889,11.832,11.700,11.386,10.825,10.035,9.097,8.108,7.156,6.306,5.589,4.984,4.422,3.822,
-3.159,2.483,1.889,1.441,1.134,.908,.704,.503,.326,.189,.080,-.036,-.188,-.382,-.604,-.833,
--1.058,-1.268,-1.458,-1.627,-1.779,-1.925,-2.065,-2.186,-2.275,-2.333,-2.386,-2.457,-2.549,-2.638,-2.689,-2.692,
--2.667,-2.651,-2.668,-2.720,-2.796,-2.893,-3.018,-3.178,-3.367,-3.564,-3.753,-3.930,-4.098,-4.264,-4.433,-4.620,
--4.840,-5.102,-5.391,-5.672,-5.914,-6.119,-6.313,-6.517,-6.721,-6.892,-7.005,-7.070,-7.123,-7.187,-7.250,-7.276,
--7.247,-7.178,-7.096,-7.010,-6.897,-6.735,-6.528,-6.311,-6.108,-5.913,-5.698,-5.446,-5.176,-4.921,-4.691,-4.462,
--4.207,-3.925,-3.646,-3.390,-3.139,-2.849,-2.496,-2.109,-1.744,-1.432,-1.152,-.852,-.493,-.076,.383,.876,
-1.414,1.997,2.596,3.166,3.681,4.152,4.610,5.067,5.515,5.934,6.329,6.721,7.126,7.533,7.921,8.281,
-8.629,8.990,9.367,9.747,10.119,10.492,10.879,11.276,11.653,11.983,12.280,12.586,12.937,13.328,13.726,14.110,
-14.503,14.940,15.425,15.917,16.367,16.771,17.170,17.603,18.062,18.496,18.868,19.192,19.511,19.846,20.171,20.449,
-20.693,20.961,21.303,21.696,22.059,22.333,22.539,22.753,23.025,23.324,23.578,23.761,23.928,24.162,24.480,24.811,
-25.062,25.204,25.280,25.344,25.389,25.368,25.268,25.152,25.109,25.167,25.263,25.304,25.265,25.204,25.185,25.200,
-25.175,25.058,24.882,24.733,24.662,24.630,24.556,24.410,24.239,24.108,24.022,23.930,23.788,23.624,23.504,23.467,
-23.481,23.491,23.484,23.485,23.486,23.418,23.209,22.890,22.607,22.495,22.536,22.555,22.395,22.089,21.843,21.823,
-21.957,21.980,21.690,21.168,20.735,20.662,20.950,21.360,21.668,21.845,21.993,22.118,22.037,21.546,20.689,19.822,
-19.365,19.456,19.845,20.126,18.793,19.034,19.335,19.794,20.380,20.913,21.214,21.274,21.243,21.265,21.331,21.311,
-21.128,20.875,20.752,20.877,21.180,21.476,21.642,21.720,21.845,22.096,22.420,22.697,22.872,23.005,23.201,23.502,
-23.849,24.141,24.327,24.434,24.518,24.613,24.714,24.817,24.953,25.173,25.509,25.939,26.397,26.811,27.136,27.365,
-27.514,27.609,27.673,27.728,27.784,27.846,27.910,27.963,27.986,27.956,27.866,27.743,27.649,27.659,27.816,28.095,
-28.417,28.689,28.863,28.951,29.004,29.068,29.159,29.270,29.388,29.510,29.632,29.747,29.846,29.928,30.014,30.131,
-30.297,30.497,30.696,30.862,30.988,31.096,31.220,31.383,31.589,31.826,32.078,32.334,32.583,32.813,33.008,33.159,
-33.265,33.335,33.379,33.409,33.432,33.462,33.513,33.598,33.717,33.856,33.986,34.066,34.059,33.954,33.776,33.593,
-33.478,33.471,33.553,33.653,33.704,33.689,33.638,33.592,33.549,33.471,33.327,33.142,32.996,32.962,33.045,33.180,
-33.291,33.363,33.451,33.622,33.900,34.244,34.606,34.977,35.388,35.862,36.382,36.907,37.417,37.937,38.492,39.053,
-39.526,39.835,40.012,40.204,40.580,41.188,41.904,42.518,42.885,43.017,43.053,43.128,43.277,43.441,43.552,43.610,
-43.685,43.850,44.127,44.475,44.833,45.152,45.389,45.496,45.415,45.121,44.667,44.175,43.785,43.571,43.509,43.508,
-43.487,43.436,43.410,43.468,43.615,43.781,43.867,43.817,43.655,43.466,43.338,43.307,43.344,43.392,43.413,43.406,
-43.399,43.415,43.460,43.521,43.582,43.633,43.669,43.681,43.661,43.606,43.521,43.412,43.280,43.123,42.946,42.765,
-42.604,42.477,42.383,42.312,42.256,42.210,42.164,42.087,41.937,41.688,41.348,40.954,40.553,40.163,39.781,39.400,
-39.029,38.692,38.401,38.141,37.878,37.596,37.309,37.061,36.882,36.762,36.652,36.494,36.262,35.962,35.623,35.266,
-34.894,34.505,34.106,33.713,33.350,33.027,32.745,32.496,32.277,32.083,31.905,31.721,31.511,31.274,31.035,30.835,
-30.699,30.614,30.539,30.430,30.275,30.096,29.928,29.789,29.680,29.596,29.540,29.516,29.515,29.497,29.425,29.287,
-29.118,28.969,28.869,28.802,28.729,28.624,28.492,28.352,28.211,28.055,27.868,27.657,27.450,27.265,27.095,26.909,
-26.683,26.422,26.146,25.872,25.601,25.337,25.096,24.906,24.777,24.687,24.589,24.452,24.283,24.111,23.949,23.780,
-23.571,23.309,23.023,22.756,22.531,22.334,22.129,21.898,21.652,21.414,21.193,20.973,20.732,20.469,20.207,19.969,
-19.760,19.553,19.315,19.033,18.725,18.429,18.169,17.943,17.719,17.464,17.163,16.826,16.476,16.121,15.745,15.317,
-14.821,14.282,13.756,13.307,12.963,12.710,12.496,12.269,11.994,11.668,11.309,10.945,10.593,10.252,9.900,9.517,
-9.099,8.670,8.268,7.912,7.587,7.249,6.864,6.433,5.988,5.564,5.169,4.785,4.389,3.977,3.561,3.147,
-2.726,2.281,1.809,1.325,.854,.401,-.048,-.514,-.996,-1.475,-1.931,-2.367,-2.804,-3.262,-3.740,-4.215,
--4.668,-5.102,-5.545,-6.018,-6.522,-7.030,-7.516,-7.975,-8.432,-8.921,-9.453,-10.008,-10.545,-11.023,-11.432,-11.789,
--12.133,-12.500,-12.916,-13.393,-13.930,-14.502,-15.060,-15.547,-15.922,-16.192,-16.412,-16.650,-16.951,-17.309,-17.692,-18.076,
--18.463,-18.867,-19.282,-19.681,-20.037,-20.355,-20.674,-21.036,-21.440,-21.841,-22.187,-22.462,-22.709,-22.986,-23.326,-23.707,
--24.079,-24.403,-24.680,-24.941,-25.216,-25.512,-25.813,-26.101,-26.369,-26.631,-26.899,-27.175,-27.443,-27.681,-27.881,-28.053,
--28.217,-28.388,-28.564,-28.729,-28.870,-28.990,-29.107,-29.231,-29.362,-29.488,-29.603,-29.705,-29.798,-29.878,-29.943,-29.998,
--30.063,-30.153,-30.256,-30.334,-30.353,-30.311,-30.249,-30.209,-30.204,-30.204,-30.175,-30.114,-30.048,-30.008,-29.998,-30.000,
--30.000,-30.001,-30.009,-30.015,-29.994,-29.936,-29.868,-29.832,-29.841,-29.853,-29.807,-29.688,-29.550,-29.472,-29.472,-29.484,
--29.414,-29.232,-29.006,-28.843,-28.791,-28.792,-28.738,-28.570,-28.327,-28.108,-27.977,-27.915,-27.849,-27.728,-27.565,-27.416,
--27.328,-27.295,-27.266,-27.196,-27.073,-26.919,-26.764,-26.620,-26.474,-26.304,-26.097,-25.858,-25.604,-25.353,-25.115,-24.887,
--24.660,-24.432,-24.208,-23.999,-23.811,-23.637,-23.463,-23.274,-23.065,-22.832,-22.575,-22.294,-21.995,-21.694,-21.403,-21.124,
--20.847,-20.559,-20.260,-19.963,-19.683,-19.420,-19.158,-18.891,-18.636,-18.421,-18.255,-18.101,-17.889,-17.578,-17.199,-16.849,
--16.619,-16.521,-16.478,-16.383,-16.199,-15.986,-15.838,-15.786,-15.763,-15.665,-15.449,-15.187,-15.001,-14.951,-14.986,-14.994,
--14.911,-14.769,-14.628,-14.455,-14.091,-13.337,-12.117,-10.567,-8.970,-7.593,-6.549,-5.796,-5.227,-4.771,-4.418,-4.180,
--4.055,-4.040,-4.162,-4.483,-5.051,-5.840,-6.735,-7.574,-8.223,-8.624,-8.801,-8.817,-8.741,-8.620,-8.474,-8.304,
--8.111,-7.911,-7.732,-7.597,-7.501,-7.407,-7.274,-7.095,-6.904,-6.748,-6.640,-6.548,-6.422,-6.232,-5.991,-5.732,
--5.483,-5.254,-5.048,-4.877,-4.754,-4.674,-4.610,-4.532,-4.435,-4.337,-4.245,-4.133,-3.962,-3.725,-3.481,-3.322,
--3.296,-3.350,-3.359,-3.210,-2.884,-2.465,-2.071,-1.770,-1.543,-1.323,-1.056,-.734,-.396,-.085,.177,.404,
-.639,.925,1.282,1.674,2.018,2.240,2.335,2.398,2.571,2.943,3.468,3.990,4.347,4.504,4.576,4.749,
-5.140,5.723,6.356,6.894,7.276,7.544,7.782,8.046,8.345,8.652,8.943,9.213,9.474,9.756,10.103,10.563,
-11.149,11.805,12.396,12.768,12.836,12.637,12.306,11.972,11.676,11.372,11.009,10.635,10.406,10.490,10.939,11.630,
-12.340,12.878,13.192,13.363,13.510,13.708,13.956,14.217,14.460,14.666,14.813,14.873,14.833,14.714,14.568,14.437,
-14.324,14.198,14.039,13.861,13.704,13.590,13.498,13.380,13.205,12.982,12.756,12.570,12.435,12.330,12.213,12.044,
-11.796,11.463,11.074,10.676,10.307,9.970,9.622,9.218,8.742,8.223,7.700,7.184,6.650,6.074,5.465,4.865,
-4.316,3.826,3.377,2.965,2.619,2.373,2.223,2.108,1.941,1.666,1.288,.860,.441,.071,-.235,-.484,
--.709,-.967,-1.310,-1.733,-2.159,-2.473,-2.601,-2.570,-2.479,-2.431,-2.458,-2.526,-2.583,-2.611,-2.629,-2.658,
--2.705,-2.771,-2.871,-3.026,-3.226,-3.413,-3.507,-3.467,-3.323,-3.149,-3.006,-2.911,-2.865,-2.897,-3.067,-3.405,
--3.856,-4.280,-4.540,-4.591,-4.498,-4.378,-4.312,-4.306,-4.328,-4.363,-4.438,-4.587,-4.807,-5.041,-5.220,-5.311,
--5.343,-5.387,-5.500,-5.689,-5.901,-6.059,-6.115,-6.082,-6.036,-6.066,-6.219,-6.469,-6.742,-6.970,-7.136,-7.272,
--7.422,-7.604,-7.808,-8.018,-8.230,-8.447,-8.655,-8.818,-8.906,-8.929,-8.939,-9.006,-9.161,-9.382,-9.612,-9.807,
--9.960,-10.095,-10.244,-10.418,-10.614,-10.816,-11.011,-11.186,-11.336,-11.460,-11.570,-11.678,-11.790,-11.902,-12.003,-12.091,
--12.175,-12.267,-12.365,-12.456,-12.524,-12.567,-12.603,-12.654,-12.737,-12.853,-12.998,-13.158,-13.321,-13.469,-13.583,-13.658,
--13.704,-13.744,-13.803,-13.885,-13.984,-14.085,-14.179,-14.258,-14.310,-14.320,-14.286,-14.228,-14.180,-14.174,-14.212,-14.270,
--14.313,-14.323,-14.302,-14.266,-14.230,-14.202,-14.185,-14.188,-14.217,-14.269,-14.326,-14.369,-14.383,-14.370,-14.342,-14.310,
--14.283,-14.262,-14.246,-14.225,-14.190,-14.131,-14.053,-13.974,-13.916,-13.889,-13.881,-13.870,-13.839,-13.786,-13.723,-13.660,
--13.598,-13.533,-13.462,-13.388,-13.313,-13.234,-13.146,-13.048,-12.953,-12.872,-12.804,-12.738,-12.661,-12.573,-12.488,-12.418,
--12.355,-12.283,-12.190,-12.090,-12.011,-11.973,-11.968,-11.967,-11.946,-11.904,-11.860,-11.833,-11.821,-11.809,-11.786,-11.757,
--11.732,-11.715,-11.696,-11.664,-11.619,-11.579,-11.558,-11.557,-11.559,-11.551,-11.530,-11.504,-11.477,-11.445,-11.402,-11.350,
--11.301,-11.264,-11.232,-11.187,-11.115,-11.023,-10.935,-10.872,-10.836,-10.810,-10.770,-10.708,-10.628,-10.545,-10.468,-10.404,
--10.350,-10.302,-10.252,-10.192,-10.120,-10.047,-9.992,-9.968,-9.971,-9.986,-9.990,-9.973,-9.939,-9.901,-9.867,-9.836,
--9.802,-9.754,-9.684,-9.596,-9.499,-9.414,-9.355,-9.321,-9.295,-9.251,-9.175,-9.071,-8.960,-8.866,-8.796,-8.746,
--8.701,-8.652,-8.592,-8.517,-8.424,-8.313,-8.191,-8.067,-7.954,-7.860,-7.783,-7.720,-7.663,-7.612,-7.567,-7.533,
--7.506,-7.473,-7.409,-7.290,-7.111,-6.894,-6.674,-6.477,-6.298,-6.109,-5.893,-5.671,-5.492,-5.402,-5.395,-5.412,
--5.384,-5.282,-5.134,-4.999,-4.902,-4.814,-4.678,-4.464,-4.199,-3.948,-3.759,-3.628,-3.514,-3.381,-3.227,-3.078,
--2.950,-2.826,-2.681,-2.506,-2.323,-2.162,-2.026,-1.888,-1.720,-1.527,-1.338,-1.179,-1.040,-.884,-.684,-.449,
--.212,.012,.237,.497,.799,1.112,1.390,1.609,1.783,1.941,2.102,2.269,2.441,2.627,2.834,3.055,
-3.277,3.496,3.732,4.004,4.301,4.580,4.804,4.988,5.186,5.443,5.741,6.016,6.224,6.396,6.603,6.886,
-7.207,7.494,7.715,7.915,8.155,8.438,8.705,8.909,9.078,9.296,9.603,9.941,10.219,10.419,10.626,10.912,
-11.204,11.293,11.029,10.511,10.073,10.038,10.462,11.111,11.704,12.181,12.725,13.532,14.558,15.523,16.165,16.497,
-16.802,17.377,18.259,19.195,19.864,20.129,20.105,20.018,20.016,20.102,20.201,20.261,20.285,20.299,20.317,20.335,
-20.329,20.252,20.026,19.585,18.932,18.160,17.399,16.724,16.121,15.545,15.002,14.557,14.253,14.037,13.788,13.433,
-13.037,12.753,12.671,12.718,12.718,12.553,12.271,12.027,11.924,11.915,11.865,11.703,11.498,11.389,11.447,11.606,
-11.734,11.754,11.692,11.609,11.498,11.256,10.763,9.983,9.003,7.973,7.028,6.235,5.595,5.067,4.587,4.082,
-3.502,2.862,2.239,1.728,1.372,1.134,.934,.720,.501,.320,.201,.116,.009,-.159,-.383,-.634,
--.884,-1.128,-1.363,-1.578,-1.758,-1.895,-2.001,-2.091,-2.167,-2.220,-2.246,-2.268,-2.318,-2.407,-2.513,-2.593,
--2.622,-2.620,-2.633,-2.692,-2.792,-2.899,-2.984,-3.047,-3.111,-3.195,-3.306,-3.434,-3.574,-3.731,-3.913,-4.125,
--4.364,-4.626,-4.901,-5.172,-5.425,-5.653,-5.866,-6.084,-6.311,-6.531,-6.712,-6.842,-6.936,-7.024,-7.114,-7.183,
--7.197,-7.148,-7.064,-6.980,-6.906,-6.816,-6.682,-6.503,-6.309,-6.124,-5.945,-5.745,-5.506,-5.245,-4.988,-4.747,
--4.503,-4.231,-3.931,-3.625,-3.334,-3.050,-2.744,-2.403,-2.047,-1.709,-1.404,-1.108,-.783,-.413,-.009,.421,
-.888,1.418,2.012,2.628,3.208,3.720,4.185,4.643,5.118,5.594,6.042,6.452,6.844,7.239,7.636,8.016,
-8.370,8.707,9.050,9.407,9.767,10.120,10.468,10.825,11.190,11.547,11.882,12.207,12.552,12.937,13.351,13.760,
-14.156,14.560,15.006,15.490,15.969,16.399,16.780,17.160,17.581,18.037,18.479,18.866,19.203,19.527,19.851,20.154,
-20.410,20.639,20.898,21.233,21.620,21.982,22.267,22.496,22.737,23.031,23.345,23.613,23.812,23.994,24.230,24.528,
-24.823,25.042,25.172,25.264,25.358,25.429,25.418,25.312,25.179,25.115,25.155,25.237,25.272,25.233,25.172,25.150,
-25.161,25.142,25.045,24.898,24.776,24.716,24.675,24.581,24.416,24.234,24.101,24.023,23.948,23.831,23.688,23.572,
-23.509,23.475,23.434,23.392,23.382,23.389,23.335,23.141,22.840,22.572,22.464,22.495,22.504,22.371,22.160,22.074,
-22.220,22.435,22.392,21.913,21.198,20.712,20.797,21.370,21.980,22.186,21.891,21.345,20.852,20.488,20.109,19.585,
-18.988,18.545,18.416,18.555,18.793,19.028,19.289,19.737,20.348,20.998,21.473,21.621,21.481,21.260,21.153,21.190,
-21.247,21.210,21.107,21.080,21.230,21.515,21.789,21.955,22.051,22.196,22.459,22.792,23.084,23.286,23.455,23.691,
-24.029,24.402,24.694,24.837,24.852,24.815,24.797,24.839,24.971,25.227,25.628,26.143,26.678,27.114,27.373,27.460,
-27.451,27.437,27.475,27.568,27.680,27.776,27.835,27.860,27.859,27.830,27.768,27.672,27.574,27.533,27.611,27.831,
-28.155,28.498,28.773,28.942,29.027,29.084,29.162,29.277,29.413,29.549,29.669,29.772,29.862,29.949,30.045,30.168,
-30.331,30.528,30.732,30.911,31.046,31.148,31.247,31.376,31.549,31.758,31.981,32.203,32.413,32.610,32.792,32.949,
-33.073,33.158,33.209,33.240,33.268,33.307,33.368,33.454,33.566,33.696,33.827,33.926,33.957,33.894,33.746,33.562,
-33.412,33.352,33.390,33.481,33.563,33.596,33.585,33.559,33.532,33.484,33.388,33.250,33.126,33.086,33.157,33.294,
-33.412,33.463,33.480,33.557,33.773,34.137,34.584,35.035,35.451,35.849,36.276,36.763,37.324,37.948,38.603,39.222,
-39.714,40.021,40.178,40.332,40.666,41.271,42.065,42.829,43.354,43.577,43.605,43.616,43.721,43.904,44.073,44.159,
-44.185,44.229,44.355,44.567,44.825,45.091,45.353,45.595,45.767,45.782,45.570,45.146,44.617,44.136,43.815,43.671,
-43.644,43.655,43.667,43.698,43.777,43.902,44.028,44.086,44.037,43.896,43.716,43.556,43.448,43.395,43.380,43.395,
-43.435,43.495,43.563,43.625,43.678,43.727,43.784,43.846,43.896,43.913,43.882,43.802,43.680,43.523,43.335,43.131,
-42.935,42.773,42.663,42.603,42.577,42.564,42.547,42.505,42.412,42.245,41.997,41.680,41.322,40.947,40.565,40.177,
-39.792,39.431,39.111,38.827,38.554,38.264,37.956,37.661,37.418,37.239,37.098,36.946,36.744,36.483,36.178,35.845,
-35.488,35.103,34.693,34.279,33.886,33.528,33.208,32.917,32.656,32.434,32.256,32.105,31.948,31.754,31.523,31.291,
-31.102,30.975,30.885,30.787,30.650,30.482,30.316,30.181,30.072,29.973,29.878,29.806,29.775,29.774,29.754,29.666,
-29.508,29.329,29.194,29.126,29.092,29.035,28.929,28.797,28.682,28.592,28.496,28.345,28.125,27.865,27.610,27.381,
-27.169,26.948,26.711,26.467,26.231,26.009,25.803,25.617,25.464,25.345,25.241,25.117,24.956,24.767,24.574,24.390,
-24.200,23.979,23.719,23.445,23.191,22.971,22.762,22.532,22.269,21.995,21.747,21.538,21.350,21.149,20.916,20.659,
-20.400,20.154,19.911,19.654,19.375,19.089,18.820,18.586,18.371,18.142,17.863,17.523,17.140,16.745,16.354,15.957,
-15.530,15.067,14.593,14.157,13.802,13.533,13.310,13.079,12.797,12.456,12.078,11.694,11.326,10.974,10.625,10.261,
-9.872,9.471,9.080,8.719,8.387,8.055,7.691,7.281,6.843,6.411,6.004,5.612,5.211,4.789,4.362,3.955,
-3.572,3.187,2.767,2.303,1.820,1.353,.913,.478,.017,-.476,-.975,-1.449,-1.891,-2.323,-2.773,-3.245,
--3.721,-4.176,-4.612,-5.052,-5.523,-6.022,-6.525,-7.002,-7.449,-7.892,-8.365,-8.882,-9.423,-9.946,-10.411,-10.809,
--11.162,-11.511,-11.897,-12.347,-12.861,-13.420,-13.981,-14.495,-14.920,-15.243,-15.489,-15.712,-15.968,-16.289,-16.668,-17.079,
--17.493,-17.902,-18.305,-18.700,-19.079,-19.436,-19.783,-20.147,-20.541,-20.950,-21.330,-21.643,-21.893,-22.129,-22.413,-22.774,
--23.188,-23.594,-23.940,-24.222,-24.472,-24.736,-25.029,-25.338,-25.636,-25.910,-26.170,-26.433,-26.702,-26.958,-27.178,-27.359,
--27.526,-27.712,-27.926,-28.149,-28.343,-28.489,-28.600,-28.704,-28.823,-28.954,-29.084,-29.206,-29.325,-29.443,-29.549,-29.629,
--29.682,-29.729,-29.794,-29.878,-29.954,-29.986,-29.970,-29.933,-29.910,-29.905,-29.894,-29.850,-29.776,-29.706,-29.670,-29.668,
--29.678,-29.679,-29.673,-29.670,-29.667,-29.652,-29.620,-29.592,-29.590,-29.611,-29.607,-29.531,-29.387,-29.237,-29.156,-29.151,
--29.153,-29.076,-28.899,-28.692,-28.553,-28.518,-28.528,-28.485,-28.337,-28.121,-27.919,-27.782,-27.695,-27.600,-27.465,-27.306,
--27.174,-27.102,-27.079,-27.062,-27.009,-26.908,-26.773,-26.630,-26.494,-26.364,-26.218,-26.033,-25.798,-25.527,-25.251,-24.998,
--24.777,-24.570,-24.357,-24.132,-23.909,-23.705,-23.519,-23.339,-23.145,-22.933,-22.706,-22.463,-22.196,-21.901,-21.591,-21.295,
--21.034,-20.802,-20.564,-20.290,-19.982,-19.672,-19.395,-19.157,-18.938,-18.716,-18.488,-18.260,-18.029,-17.772,-17.476,-17.167,
--16.911,-16.766,-16.726,-16.711,-16.627,-16.440,-16.206,-16.014,-15.906,-15.836,-15.722,-15.525,-15.290,-15.104,-15.014,-14.987,
--14.953,-14.880,-14.797,-14.741,-14.674,-14.459,-13.931,-13.010,-11.770,-10.394,-9.081,-7.958,-7.059,-6.359,-5.821,-5.407,
--5.092,-4.876,-4.800,-4.935,-5.343,-6.016,-6.857,-7.710,-8.420,-8.890,-9.092,-9.063,-8.883,-8.653,-8.468,-8.377,
--8.362,-8.362,-8.320,-8.229,-8.123,-8.037,-7.963,-7.862,-7.698,-7.481,-7.256,-7.067,-6.918,-6.778,-6.613,-6.408,
--6.176,-5.934,-5.702,-5.505,-5.366,-5.296,-5.273,-5.249,-5.180,-5.057,-4.901,-4.735,-4.560,-4.363,-4.159,-4.001,
--3.940,-3.973,-4.016,-3.956,-3.732,-3.386,-3.018,-2.710,-2.469,-2.239,-1.973,-1.669,-1.363,-1.084,-.828,-.571,
--.302,-.030,.236,.504,.790,1.089,1.373,1.620,1.856,2.146,2.535,2.985,3.378,3.599,3.639,3.617,
-3.711,4.032,4.549,5.126,5.628,6.003,6.295,6.583,6.914,7.281,7.655,8.019,8.387,8.790,9.254,9.790,
-10.394,11.034,11.641,12.115,12.363,12.353,12.146,11.870,11.645,11.515,11.444,11.376,11.311,11.339,11.571,12.050,
-12.686,13.298,13.718,13.889,13.886,13.846,13.876,14.001,14.177,14.342,14.456,14.510,14.508,14.455,14.357,14.224,
-14.067,13.891,13.696,13.487,13.281,13.097,12.945,12.810,12.659,12.467,12.240,12.014,11.845,11.770,11.787,11.847,
-11.870,11.778,11.535,11.159,10.707,10.238,9.782,9.331,8.867,8.378,7.870,7.340,6.774,6.155,5.491,4.825,
-4.208,3.670,3.200,2.774,2.385,2.054,1.795,1.586,1.364,1.071,.695,.277,-.128,-.490,-.816,-1.121,
--1.409,-1.671,-1.913,-2.158,-2.430,-2.722,-2.989,-3.182,-3.277,-3.297,-3.280,-3.258,-3.242,-3.237,-3.247,-3.277,
--3.325,-3.384,-3.454,-3.546,-3.665,-3.790,-3.882,-3.917,-3.916,-3.926,-3.963,-3.976,-3.873,-3.615,-3.289,-3.083,
--3.169,-3.577,-4.163,-4.698,-5.011,-5.075,-4.989,-4.879,-4.822,-4.830,-4.881,-4.968,-5.098,-5.270,-5.457,-5.613,
--5.705,-5.743,-5.771,-5.840,-5.967,-6.123,-6.259,-6.339,-6.378,-6.424,-6.529,-6.704,-6.913,-7.109,-7.270,-7.414,
--7.574,-7.761,-7.956,-8.135,-8.298,-8.474,-8.688,-8.926,-9.138,-9.275,-9.331,-9.352,-9.402,-9.519,-9.693,-9.888,
--10.073,-10.236,-10.381,-10.516,-10.647,-10.782,-10.929,-11.090,-11.253,-11.404,-11.532,-11.642,-11.746,-11.848,-11.941,-12.023,
--12.104,-12.206,-12.339,-12.490,-12.624,-12.714,-12.762,-12.800,-12.861,-12.959,-13.085,-13.222,-13.361,-13.500,-13.633,-13.747,
--13.830,-13.881,-13.915,-13.950,-13.995,-14.053,-14.129,-14.231,-14.355,-14.477,-14.556,-14.561,-14.500,-14.412,-14.348,-14.332,
--14.350,-14.367,-14.357,-14.321,-14.275,-14.237,-14.213,-14.205,-14.216,-14.248,-14.300,-14.359,-14.407,-14.428,-14.420,-14.389,
--14.348,-14.311,-14.288,-14.281,-14.278,-14.259,-14.210,-14.134,-14.056,-14.003,-13.987,-13.993,-13.993,-13.973,-13.934,-13.887,
--13.834,-13.765,-13.676,-13.577,-13.490,-13.424,-13.368,-13.293,-13.185,-13.058,-12.938,-12.846,-12.775,-12.704,-12.621,-12.534,
--12.455,-12.384,-12.305,-12.205,-12.093,-12.002,-11.955,-11.946,-11.944,-11.916,-11.861,-11.802,-11.761,-11.739,-11.721,-11.690,
--11.652,-11.619,-11.597,-11.574,-11.535,-11.481,-11.434,-11.413,-11.424,-11.450,-11.467,-11.467,-11.454,-11.432,-11.401,-11.354,
--11.295,-11.237,-11.192,-11.155,-11.109,-11.040,-10.954,-10.871,-10.809,-10.767,-10.728,-10.676,-10.609,-10.540,-10.477,-10.421,
--10.363,-10.300,-10.234,-10.174,-10.120,-10.068,-10.017,-9.975,-9.953,-9.956,-9.973,-9.984,-9.973,-9.938,-9.891,-9.844,
--9.804,-9.769,-9.730,-9.680,-9.618,-9.548,-9.478,-9.415,-9.358,-9.302,-9.234,-9.144,-9.032,-8.909,-8.796,-8.711,
--8.659,-8.635,-8.620,-8.591,-8.532,-8.441,-8.328,-8.205,-8.083,-7.962,-7.842,-7.724,-7.614,-7.521,-7.447,-7.391,
--7.352,-7.324,-7.295,-7.239,-7.131,-6.961,-6.755,-6.557,-6.397,-6.257,-6.083,-5.829,-5.515,-5.227,-5.068,-5.077,
--5.199,-5.317,-5.331,-5.219,-5.028,-4.824,-4.638,-4.458,-4.265,-4.064,-3.883,-3.740,-3.624,-3.505,-3.363,-3.206,
--3.057,-2.928,-2.806,-2.667,-2.509,-2.347,-2.199,-2.062,-1.913,-1.735,-1.540,-1.358,-1.206,-1.067,-.907,-.701,
--.462,-.217,.020,.263,.535,.836,1.137,1.401,1.616,1.796,1.967,2.142,2.322,2.505,2.693,2.888,
-3.086,3.282,3.487,3.723,3.999,4.291,4.558,4.777,4.972,5.195,5.469,5.760,6.010,6.200,6.375,6.603,
-6.897,7.197,7.432,7.597,7.761,7.993,8.292,8.590,8.837,9.059,9.327,9.662,10.000,10.262,10.448,10.648,
-10.914,11.149,11.145,10.793,10.251,9.891,10.014,10.599,11.325,11.860,12.154,12.464,13.079,14.029,15.049,15.834,
-16.315,16.708,17.279,18.085,18.918,19.498,19.710,19.679,19.635,19.724,19.929,20.132,20.229,20.186,20.027,19.801,
-19.557,19.322,19.087,18.798,18.389,17.843,17.217,16.606,16.067,15.589,15.133,14.700,14.338,14.075,13.857,13.574,
-13.166,12.702,12.338,12.181,12.191,12.218,12.144,11.978,11.825,11.759,11.743,11.684,11.537,11.372,11.299,11.359,
-11.480,11.548,11.508,11.389,11.236,11.011,10.606,9.928,9.007,7.993,7.070,6.343,5.802,5.359,4.921,4.425,
-3.851,3.216,2.577,2.014,1.591,1.315,1.124,.938,.718,.491,.313,.203,.127,.022,-.149,-.378,
--.636,-.906,-1.183,-1.459,-1.703,-1.878,-1.974,-2.020,-2.058,-2.106,-2.149,-2.170,-2.175,-2.202,-2.278,-2.390,
--2.494,-2.553,-2.575,-2.606,-2.684,-2.804,-2.927,-3.012,-3.054,-3.079,-3.117,-3.178,-3.257,-3.352,-3.477,-3.649,
--3.878,-4.149,-4.438,-4.720,-4.980,-5.217,-5.440,-5.661,-5.884,-6.104,-6.305,-6.471,-6.605,-6.724,-6.845,-6.960,
--7.039,-7.055,-7.013,-6.945,-6.882,-6.823,-6.735,-6.594,-6.410,-6.222,-6.062,-5.922,-5.764,-5.560,-5.313,-5.052,
--4.799,-4.546,-4.272,-3.966,-3.639,-3.307,-2.974,-2.633,-2.283,-1.938,-1.617,-1.315,-1.010,-.681,-.329,.033,
-.406,.819,1.311,1.885,2.497,3.086,3.617,4.105,4.589,5.085,5.576,6.033,6.450,6.852,7.263,7.682,
-8.086,8.455,8.794,9.122,9.453,9.787,10.122,10.468,10.836,11.226,11.617,11.988,12.339,12.695,13.073,13.471,
-13.870,14.263,14.667,15.105,15.569,16.021,16.426,16.790,17.156,17.559,17.993,18.416,18.794,19.132,19.460,19.788,
-20.097,20.364,20.608,20.878,21.212,21.589,21.947,22.244,22.499,22.768,23.076,23.393,23.661,23.871,24.070,24.312,
-24.596,24.865,25.062,25.191,25.303,25.421,25.506,25.489,25.360,25.198,25.109,25.135,25.220,25.273,25.259,25.216,
-25.201,25.212,25.199,25.122,25.004,24.903,24.841,24.779,24.661,24.480,24.292,24.158,24.083,24.021,23.936,23.841,
-23.772,23.732,23.677,23.574,23.444,23.346,23.294,23.224,23.059,22.803,22.565,22.451,22.453,22.460,22.395,22.332,
-22.430,22.720,22.987,22.902,22.339,21.561,21.060,21.150,21.670,22.101,21.993,21.338,20.547,20.074,20.045,20.211,
-20.222,19.934,19.484,19.110,18.957,19.028,19.826,20.004,20.343,20.771,21.187,21.450,21.466,21.282,21.070,20.993,
-21.073,21.198,21.250,21.227,21.235,21.369,21.616,21.873,22.060,22.197,22.370,22.633,22.950,23.241,23.470,23.680,
-23.944,24.277,24.608,24.835,24.902,24.840,24.734,24.670,24.711,24.897,25.251,25.757,26.339,26.869,27.226,27.365,
-27.343,27.279,27.279,27.376,27.529,27.666,27.735,27.732,27.694,27.661,27.653,27.659,27.657,27.639,27.633,27.688,
-27.846,28.109,28.432,28.744,28.988,29.143,29.231,29.293,29.366,29.464,29.584,29.710,29.829,29.939,30.055,30.198,
-30.383,30.606,30.841,31.049,31.205,31.306,31.378,31.454,31.558,31.700,31.874,32.068,32.265,32.451,32.612,32.741,
-32.841,32.927,33.012,33.104,33.197,33.282,33.353,33.416,33.483,33.567,33.668,33.769,33.840,33.848,33.780,33.650,
-33.503,33.390,33.347,33.370,33.428,33.480,33.507,33.511,33.499,33.467,33.402,33.306,33.211,33.176,33.238,33.384,
-33.548,33.658,33.691,33.699,33.778,34.009,34.413,34.939,35.502,36.027,36.480,36.884,37.308,37.831,38.482,39.205,
-39.858,40.303,40.505,40.593,40.800,41.311,42.127,43.043,43.782,44.172,44.250,44.204,44.224,44.375,44.587,44.755,
-44.835,44.875,44.949,45.085,45.248,45.388,45.488,45.576,45.671,45.746,45.724,45.537,45.188,44.759,44.367,44.100,
-43.969,43.928,43.918,43.908,43.910,43.944,44.018,44.105,44.164,44.159,44.083,43.953,43.803,43.662,43.556,43.501,
-43.504,43.556,43.636,43.712,43.762,43.785,43.805,43.846,43.916,43.993,44.039,44.020,43.925,43.769,43.577,43.375,
-43.182,43.011,42.873,42.778,42.732,42.729,42.751,42.766,42.739,42.643,42.469,42.228,41.941,41.625,41.288,40.933,
-40.569,40.213,39.883,39.579,39.280,38.964,38.630,38.304,38.025,37.810,37.639,37.468,37.255,36.991,36.692,36.380,
-36.057,35.708,35.321,34.903,34.485,34.094,33.741,33.412,33.098,32.806,32.558,32.374,32.243,32.125,31.977,31.786,
-31.578,31.390,31.242,31.121,30.994,30.843,30.682,30.537,30.420,30.319,30.213,30.105,30.025,29.992,29.990,29.961,
-29.854,29.674,29.483,29.354,29.313,29.315,29.294,29.219,29.115,29.030,28.975,28.910,28.772,28.538,28.243,27.952,
-27.711,27.517,27.339,27.149,26.942,26.737,26.545,26.372,26.209,26.054,25.900,25.741,25.568,25.379,25.181,24.984,
-24.790,24.588,24.367,24.128,23.885,23.653,23.429,23.191,22.922,22.628,22.338,22.085,21.880,21.703,21.520,21.308,
-21.065,20.805,20.543,20.283,20.022,19.761,19.504,19.257,19.019,18.775,18.499,18.171,17.791,17.379,16.962,16.562,
-16.181,15.808,15.437,15.075,14.738,14.434,14.147,13.850,13.520,13.157,12.779,12.411,12.060,11.716,11.362,10.987,
-10.596,10.202,9.820,9.460,9.118,8.781,8.428,8.047,7.640,7.228,6.828,6.439,6.044,5.624,5.181,4.743,
-4.335,3.959,3.583,3.173,2.720,2.250,1.798,1.374,.954,.507,.024,-.475,-.959,-1.417,-1.864,-2.322,
--2.794,-3.262,-3.708,-4.134,-4.562,-5.017,-5.500,-5.991,-6.466,-6.919,-7.366,-7.831,-8.324,-8.830,-9.317,-9.758,
--10.146,-10.498,-10.854,-11.254,-11.721,-12.251,-12.811,-13.353,-13.833,-14.229,-14.542,-14.801,-15.047,-15.321,-15.648,-16.033,
--16.459,-16.897,-17.319,-17.714,-18.084,-18.445,-18.812,-19.196,-19.596,-19.999,-20.383,-20.729,-21.032,-21.309,-21.597,-21.928,
--22.311,-22.720,-23.109,-23.446,-23.729,-23.989,-24.262,-24.560,-24.866,-25.157,-25.422,-25.675,-25.935,-26.200,-26.446,-26.648,
--26.811,-26.971,-27.171,-27.420,-27.686,-27.919,-28.094,-28.219,-28.329,-28.444,-28.564,-28.680,-28.794,-28.918,-29.059,-29.200,
--29.315,-29.386,-29.427,-29.462,-29.505,-29.543,-29.557,-29.549,-29.541,-29.550,-29.568,-29.559,-29.503,-29.415,-29.343,-29.322,
--29.348,-29.383,-29.391,-29.366,-29.327,-29.294,-29.274,-29.267,-29.276,-29.301,-29.320,-29.295,-29.201,-29.057,-28.925,-28.858,
--28.850,-28.835,-28.744,-28.571,-28.381,-28.255,-28.220,-28.224,-28.191,-28.083,-27.924,-27.766,-27.638,-27.524,-27.396,-27.246,
--27.100,-26.993,-26.940,-26.921,-26.904,-26.858,-26.772,-26.647,-26.501,-26.352,-26.208,-26.062,-25.888,-25.665,-25.396,-25.115,
--24.859,-24.641,-24.443,-24.235,-24.010,-23.785,-23.580,-23.395,-23.208,-22.999,-22.770,-22.537,-22.311,-22.075,-21.807,-21.507,
--21.209,-20.950,-20.735,-20.524,-20.269,-19.956,-19.626,-19.335,-19.111,-18.930,-18.743,-18.518,-18.256,-17.980,-17.706,-17.445,
--17.211,-17.031,-16.926,-16.878,-16.835,-16.737,-16.567,-16.365,-16.185,-16.054,-15.944,-15.815,-15.653,-15.486,-15.350,-15.248,
--15.152,-15.035,-14.915,-14.838,-14.823,-14.809,-14.671,-14.282,-13.591,-12.642,-11.545,-10.413,-9.340,-8.389,-7.599,-6.972,
--6.480,-6.085,-5.789,-5.658,-5.790,-6.240,-6.961,-7.808,-8.598,-9.186,-9.495,-9.515,-9.288,-8.908,-8.512,-8.241,
--8.173,-8.280,-8.447,-8.558,-8.571,-8.524,-8.473,-8.431,-8.354,-8.191,-7.945,-7.672,-7.441,-7.275,-7.146,-7.004,
--6.820,-6.603,-6.381,-6.191,-6.058,-5.992,-5.982,-5.984,-5.943,-5.817,-5.612,-5.365,-5.121,-4.904,-4.721,-4.584,
--4.516,-4.526,-4.574,-4.577,-4.461,-4.218,-3.915,-3.636,-3.414,-3.211,-2.968,-2.668,-2.347,-2.051,-1.783,-1.506,
--1.192,-.869,-.598,-.411,-.265,-.070,.233,.622,1.016,1.354,1.650,1.961,2.317,2.667,2.909,2.980,
-2.917,2.844,2.893,3.124,3.508,3.971,4.450,4.920,5.383,5.848,6.320,6.805,7.314,7.864,8.459,9.084,
-9.705,10.284,10.780,11.161,11.404,11.511,11.516,11.480,11.463,11.499,11.574,11.642,11.670,11.671,11.720,11.903,
-12.256,12.726,13.183,13.495,13.602,13.551,13.449,13.396,13.424,13.496,13.555,13.570,13.551,13.522,13.491,13.440,
-13.345,13.196,13.009,12.812,12.628,12.459,12.300,12.141,11.978,11.804,11.614,11.409,11.212,11.068,11.022,11.093,
-11.248,11.401,11.450,11.323,11.008,10.545,10.002,9.437,8.880,8.343,7.817,7.284,6.718,6.100,5.436,4.762,
-4.133,3.583,3.108,2.680,2.273,1.891,1.550,1.246,.933,.548,.065,-.474,-.982,-1.386,-1.678,-1.908,
--2.137,-2.385,-2.626,-2.824,-2.970,-3.093,-3.234,-3.416,-3.626,-3.826,-3.977,-4.055,-4.064,-4.031,-3.998,-3.994,
--4.029,-4.089,-4.159,-4.234,-4.314,-4.384,-4.411,-4.370,-4.290,-4.250,-4.330,-4.517,-4.678,-4.624,-4.256,-3.666,
--3.120,-2.904,-3.147,-3.752,-4.466,-5.040,-5.360,-5.465,-5.469,-5.471,-5.503,-5.555,-5.611,-5.674,-5.759,-5.864,
--5.973,-6.063,-6.129,-6.185,-6.249,-6.323,-6.393,-6.445,-6.493,-6.577,-6.737,-6.972,-7.228,-7.434,-7.553,-7.614,
--7.686,-7.827,-8.033,-8.255,-8.443,-8.596,-8.750,-8.941,-9.163,-9.368,-9.511,-9.590,-9.642,-9.711,-9.819,-9.959,
--10.117,-10.283,-10.456,-10.624,-10.768,-10.875,-10.955,-11.040,-11.154,-11.299,-11.456,-11.603,-11.730,-11.836,-11.921,-11.982,
--12.028,-12.089,-12.201,-12.376,-12.585,-12.772,-12.898,-12.964,-13.012,-13.086,-13.197,-13.328,-13.451,-13.560,-13.665,-13.778,
--13.895,-14.001,-14.082,-14.134,-14.162,-14.176,-14.193,-14.235,-14.326,-14.468,-14.629,-14.753,-14.795,-14.750,-14.657,-14.566,
--14.505,-14.466,-14.422,-14.360,-14.289,-14.232,-14.205,-14.207,-14.229,-14.263,-14.303,-14.346,-14.382,-14.404,-14.408,-14.394,
--14.365,-14.324,-14.277,-14.235,-14.211,-14.206,-14.206,-14.193,-14.160,-14.120,-14.093,-14.088,-14.092,-14.081,-14.048,-13.999,
--13.949,-13.897,-13.830,-13.739,-13.637,-13.551,-13.494,-13.450,-13.382,-13.269,-13.125,-12.985,-12.878,-12.800,-12.722,-12.626,
--12.517,-12.418,-12.336,-12.258,-12.167,-12.063,-11.971,-11.916,-11.897,-11.889,-11.863,-11.814,-11.758,-11.713,-11.677,-11.636,
--11.582,-11.525,-11.487,-11.472,-11.464,-11.440,-11.394,-11.346,-11.322,-11.330,-11.357,-11.379,-11.384,-11.374,-11.356,-11.330,
--11.291,-11.240,-11.185,-11.135,-11.090,-11.041,-10.981,-10.913,-10.850,-10.798,-10.748,-10.686,-10.609,-10.528,-10.462,-10.416,
--10.374,-10.319,-10.246,-10.169,-10.105,-10.062,-10.032,-10.003,-9.974,-9.952,-9.946,-9.950,-9.950,-9.933,-9.899,-9.858,
--9.818,-9.781,-9.744,-9.703,-9.662,-9.621,-9.576,-9.518,-9.446,-9.364,-9.283,-9.208,-9.130,-9.035,-8.919,-8.797,
--8.695,-8.636,-8.614,-8.600,-8.562,-8.484,-8.379,-8.274,-8.186,-8.108,-8.017,-7.898,-7.757,-7.614,-7.489,-7.388,
--7.302,-7.229,-7.170,-7.125,-7.073,-6.979,-6.822,-6.619,-6.423,-6.275,-6.166,-6.026,-5.787,-5.447,-5.096,-4.868,
--4.844,-4.993,-5.184,-5.271,-5.186,-4.958,-4.679,-4.431,-4.250,-4.127,-4.037,-3.958,-3.872,-3.763,-3.620,-3.449,
--3.272,-3.112,-2.974,-2.846,-2.711,-2.564,-2.414,-2.268,-2.116,-1.947,-1.759,-1.573,-1.410,-1.270,-1.129,-.954,
--.733,-.479,-.218,.043,.312,.596,.884,1.153,1.383,1.583,1.775,1.977,2.187,2.393,2.586,2.769,
-2.946,3.117,3.287,3.475,3.703,3.976,4.268,4.540,4.773,4.990,5.230,5.503,5.775,6.005,6.194,6.388,
-6.635,6.923,7.185,7.371,7.502,7.662,7.910,8.226,8.533,8.788,9.027,9.320,9.678,10.023,10.273,10.432,
-10.588,10.792,10.952,10.891,10.539,10.075,9.845,10.093,10.741,11.443,11.881,12.036,12.195,12.669,13.513,14.496,
-15.334,15.946,16.487,17.150,17.942,18.664,19.096,19.200,19.151,19.176,19.381,19.693,19.955,20.051,19.952,19.697,
-19.340,18.934,18.529,18.155,17.802,17.428,16.998,16.521,16.043,15.600,15.193,14.803,14.437,14.126,13.884,13.655,
-13.343,12.899,12.391,11.972,11.761,11.748,11.811,11.823,11.755,11.663,11.603,11.566,11.495,11.372,11.245,11.194,
-11.239,11.321,11.350,11.283,11.124,10.877,10.489,9.884,9.048,8.092,7.208,6.550,6.133,5.837,5.498,5.012,
-4.373,3.647,2.921,2.275,1.765,1.415,1.196,1.042,.885,.697,.504,.347,.238,.143,.016,-.164,
--.389,-.639,-.915,-1.219,-1.531,-1.799,-1.969,-2.031,-2.034,-2.041,-2.080,-2.130,-2.155,-2.152,-2.160,-2.220,
--2.331,-2.445,-2.515,-2.538,-2.558,-2.621,-2.733,-2.858,-2.955,-3.010,-3.045,-3.088,-3.147,-3.214,-3.288,-3.384,
--3.531,-3.740,-4.000,-4.279,-4.550,-4.800,-5.033,-5.255,-5.472,-5.680,-5.870,-6.036,-6.179,-6.311,-6.447,-6.590,
--6.721,-6.813,-6.849,-6.839,-6.812,-6.781,-6.730,-6.625,-6.452,-6.243,-6.055,-5.923,-5.833,-5.731,-5.569,-5.343,
--5.084,-4.823,-4.569,-4.303,-4.005,-3.674,-3.322,-2.960,-2.597,-2.238,-1.896,-1.573,-1.261,-.942,-.605,-.258,
-.085,.431,.813,1.272,1.814,2.404,2.987,3.531,4.040,4.539,5.038,5.521,5.972,6.395,6.814,7.248,
-7.688,8.108,8.487,8.828,9.151,9.472,9.798,10.136,10.502,10.911,11.355,11.801,12.214,12.582,12.925,13.275,
-13.644,14.025,14.410,14.805,15.220,15.652,16.076,16.470,16.839,17.209,17.600,18.003,18.386,18.734,19.062,19.397,
-19.745,20.082,20.384,20.661,20.954,21.293,21.663,22.014,22.315,22.581,22.855,23.152,23.445,23.692,23.892,24.091,
-24.336,24.621,24.893,25.104,25.257,25.388,25.509,25.574,25.529,25.379,25.210,25.126,25.167,25.274,25.360,25.384,
-25.377,25.386,25.412,25.413,25.352,25.242,25.128,25.031,24.925,24.777,24.596,24.429,24.319,24.256,24.194,24.115,
-24.043,24.015,24.017,23.985,23.867,23.686,23.518,23.409,23.323,23.184,22.968,22.742,22.598,22.555,22.554,22.551,
-22.599,22.794,23.116,23.359,23.251,22.717,22.006,21.527,21.501,21.756,21.869,21.559,20.963,20.535,20.648,21.252,
-21.906,22.130,21.760,21.025,20.316,19.901,19.826,20.371,20.577,20.803,20.991,21.140,21.229,21.224,21.138,21.054,
-21.052,21.135,21.218,21.224,21.162,21.131,21.220,21.434,21.692,21.917,22.098,22.286,22.520,22.792,23.058,23.302,
-23.550,23.837,24.153,24.429,24.590,24.611,24.538,24.456,24.446,24.558,24.812,25.202,25.686,26.180,26.585,26.837,
-26.944,26.981,27.043,27.174,27.353,27.512,27.595,27.588,27.529,27.479,27.485,27.562,27.682,27.796,27.857,27.857,
-27.831,27.851,27.982,28.242,28.588,28.933,29.196,29.339,29.388,29.409,29.465,29.583,29.748,29.924,30.087,30.245,
-30.427,30.655,30.920,31.178,31.385,31.520,31.597,31.650,31.708,31.783,31.878,31.995,32.142,32.314,32.489,32.633,
-32.725,32.777,32.828,32.914,33.045,33.194,33.321,33.404,33.451,33.493,33.555,33.639,33.722,33.775,33.775,33.719,
-33.621,33.505,33.397,33.322,33.293,33.309,33.355,33.407,33.438,33.430,33.380,33.304,33.241,33.230,33.299,33.440,
-33.618,33.782,33.895,33.955,34.001,34.101,34.329,34.733,35.312,35.991,36.653,37.193,37.590,37.936,38.375,38.997,
-39.745,40.432,40.878,41.062,41.167,41.468,42.130,43.074,44.019,44.671,44.921,44.890,44.811,44.853,45.023,45.213,
-45.327,45.364,45.402,45.510,45.682,45.846,45.937,45.942,45.896,45.828,45.728,45.557,45.293,44.967,44.652,44.419,
-44.293,44.246,44.227,44.196,44.151,44.115,44.115,44.159,44.228,44.289,44.307,44.264,44.167,44.041,43.917,43.822,
-43.770,43.762,43.792,43.842,43.890,43.915,43.911,43.895,43.892,43.919,43.969,44.004,43.981,43.877,43.708,43.513,
-43.332,43.184,43.060,42.949,42.849,42.778,42.757,42.784,42.829,42.843,42.787,42.649,42.442,42.187,41.900,41.586,
-41.255,40.923,40.607,40.309,40.011,39.689,39.336,38.980,38.667,38.425,38.242,38.067,37.849,37.569,37.244,36.912,
-36.591,36.271,35.923,35.534,35.114,34.696,34.306,33.948,33.610,33.284,32.979,32.724,32.540,32.420,32.326,32.213,
-32.056,31.863,31.665,31.487,31.333,31.189,31.043,30.898,30.764,30.644,30.528,30.404,30.282,30.188,30.140,30.121,
-30.080,29.974,29.808,29.638,29.530,29.508,29.538,29.555,29.526,29.463,29.400,29.346,29.269,29.119,28.884,28.605,
-28.350,28.165,28.038,27.923,27.774,27.582,27.370,27.167,26.982,26.804,26.616,26.410,26.192,25.975,25.769,25.574,
-25.383,25.185,24.977,24.760,24.540,24.320,24.092,23.845,23.573,23.282,22.995,22.733,22.504,22.300,22.103,21.897,
-21.678,21.446,21.204,20.955,20.700,20.445,20.190,19.936,19.675,19.398,19.098,18.769,18.408,18.021,17.618,17.217,
-16.836,16.487,16.171,15.881,15.605,15.326,15.025,14.683,14.293,13.871,13.450,13.065,12.728,12.419,12.101,11.748,
-11.360,10.961,10.573,10.206,9.850,9.490,9.116,8.731,8.345,7.966,7.597,7.233,6.861,6.470,6.054,5.623,
-5.195,4.784,4.388,3.989,3.567,3.122,2.669,2.229,1.804,1.381,.941,.481,.010,-.456,-.918,-1.385,
--1.865,-2.349,-2.819,-3.262,-3.681,-4.097,-4.531,-4.988,-5.460,-5.936,-6.409,-6.880,-7.353,-7.826,-8.289,-8.731,
--9.144,-9.527,-9.894,-10.269,-10.685,-11.158,-11.680,-12.214,-12.716,-13.154,-13.523,-13.838,-14.124,-14.405,-14.702,-15.038,
--15.424,-15.856,-16.306,-16.739,-17.133,-17.496,-17.858,-18.243,-18.652,-19.061,-19.442,-19.783,-20.098,-20.413,-20.747,-21.107,
--21.486,-21.869,-22.241,-22.589,-22.906,-23.200,-23.485,-23.778,-24.081,-24.381,-24.663,-24.926,-25.185,-25.451,-25.718,-25.960,
--26.154,-26.311,-26.469,-26.672,-26.929,-27.208,-27.458,-27.652,-27.798,-27.920,-28.034,-28.139,-28.234,-28.331,-28.455,-28.613,
--28.785,-28.932,-29.029,-29.078,-29.104,-29.122,-29.133,-29.130,-29.124,-29.134,-29.172,-29.213,-29.218,-29.164,-29.075,-29.007,
--29.001,-29.051,-29.107,-29.119,-29.075,-29.001,-28.934,-28.900,-28.900,-28.923,-28.951,-28.959,-28.922,-28.836,-28.729,-28.644,
--28.607,-28.597,-28.560,-28.454,-28.289,-28.122,-28.009,-27.960,-27.938,-27.896,-27.817,-27.715,-27.611,-27.504,-27.380,-27.231,
--27.074,-26.942,-26.855,-26.808,-26.780,-26.748,-26.699,-26.622,-26.509,-26.363,-26.200,-26.038,-25.881,-25.711,-25.503,-25.251,
--24.980,-24.728,-24.507,-24.299,-24.078,-23.845,-23.623,-23.437,-23.278,-23.108,-22.898,-22.654,-22.412,-22.197,-21.994,-21.764,
--21.484,-21.176,-20.888,-20.644,-20.423,-20.175,-19.877,-19.556,-19.269,-19.049,-18.882,-18.718,-18.515,-18.267,-17.996,-17.728,
--17.484,-17.278,-17.123,-17.021,-16.954,-16.886,-16.782,-16.641,-16.487,-16.346,-16.222,-16.097,-15.961,-15.828,-15.721,-15.636,
--15.537,-15.383,-15.181,-14.994,-14.894,-14.892,-14.908,-14.811,-14.498,-13.946,-13.201,-12.332,-11.393,-10.435,-9.520,-8.716,
--8.062,-7.550,-7.147,-6.855,-6.742,-6.901,-7.368,-8.072,-8.847,-9.515,-9.952,-10.109,-9.986,-9.625,-9.116,-8.608,
--8.261,-8.173,-8.316,-8.556,-8.751,-8.839,-8.852,-8.847,-8.838,-8.779,-8.622,-8.377,-8.112,-7.899,-7.755,-7.638,
--7.489,-7.288,-7.064,-6.868,-6.739,-6.683,-6.677,-6.683,-6.651,-6.538,-6.327,-6.042,-5.734,-5.461,-5.254,-5.123,
--5.063,-5.069,-5.121,-5.169,-5.146,-5.009,-4.770,-4.493,-4.244,-4.040,-3.846,-3.620,-3.349,-3.053,-2.744,-2.405,
--2.016,-1.602,-1.244,-1.024,-.945,-.901,-.750,-.418,.032,.460,.763,.961,1.169,1.486,1.891,2.241,
-2.368,2.200,1.831,1.471,1.346,1.586,2.175,2.975,3.804,4.527,5.106,5.604,6.122,6.735,7.446,8.189,
-8.877,9.438,9.841,10.090,10.217,10.272,10.322,10.430,10.627,10.893,11.163,11.362,11.444,11.421,11.353,11.324,
-11.404,11.619,11.937,12.277,12.547,12.688,12.701,12.640,12.569,12.516,12.470,12.404,12.313,12.221,12.159,12.132,
-12.106,12.041,11.922,11.775,11.644,11.552,11.486,11.407,11.288,11.127,10.945,10.759,10.576,10.405,10.271,10.214,
-10.270,10.432,10.639,10.795,10.808,10.627,10.251,9.723,9.103,8.447,7.792,7.146,6.495,5.821,5.120,4.421,
-3.773,3.213,2.746,2.336,1.944,1.552,1.172,.817,.468,.071,-.423,-1.009,-1.615,-2.138,-2.511,-2.745,
--2.910,-3.081,-3.285,-3.495,-3.663,-3.762,-3.813,-3.868,-3.976,-4.154,-4.373,-4.579,-4.722,-4.786,-4.795,-4.792,
--4.807,-4.840,-4.872,-4.890,-4.908,-4.940,-4.980,-4.987,-4.928,-4.823,-4.757,-4.821,-5.015,-5.210,-5.205,-4.869,
--4.255,-3.597,-3.187,-3.206,-3.631,-4.278,-4.923,-5.420,-5.744,-5.946,-6.086,-6.191,-6.262,-6.295,-6.300,-6.298,
--6.304,-6.322,-6.357,-6.418,-6.509,-6.618,-6.711,-6.749,-6.732,-6.714,-6.776,-6.977,-7.291,-7.619,-7.849,-7.938,
--7.935,-7.949,-8.059,-8.266,-8.509,-8.721,-8.887,-9.035,-9.197,-9.370,-9.524,-9.639,-9.726,-9.818,-9.935,-10.071,
--10.209,-10.346,-10.499,-10.680,-10.873,-11.034,-11.131,-11.171,-11.201,-11.267,-11.389,-11.548,-11.712,-11.855,-11.968,-12.043,
--12.082,-12.101,-12.141,-12.246,-12.434,-12.671,-12.894,-13.055,-13.151,-13.223,-13.312,-13.431,-13.559,-13.669,-13.755,-13.834,
--13.926,-14.034,-14.145,-14.239,-14.305,-14.339,-14.349,-14.354,-14.381,-14.458,-14.589,-14.744,-14.874,-14.935,-14.922,-14.863,
--14.790,-14.718,-14.635,-14.528,-14.404,-14.293,-14.223,-14.207,-14.236,-14.291,-14.355,-14.413,-14.454,-14.464,-14.443,-14.403,
--14.360,-14.322,-14.281,-14.228,-14.167,-14.116,-14.097,-14.109,-14.135,-14.154,-14.160,-14.159,-14.155,-14.139,-14.097,-14.027,
--13.944,-13.872,-13.817,-13.769,-13.709,-13.637,-13.569,-13.517,-13.469,-13.397,-13.285,-13.146,-13.013,-12.910,-12.829,-12.741,
--12.628,-12.499,-12.382,-12.291,-12.215,-12.131,-12.030,-11.926,-11.846,-11.799,-11.770,-11.740,-11.700,-11.657,-11.618,-11.578,
--11.525,-11.457,-11.394,-11.359,-11.357,-11.369,-11.366,-11.337,-11.295,-11.266,-11.261,-11.269,-11.273,-11.263,-11.245,-11.227,
--11.211,-11.192,-11.161,-11.119,-11.071,-11.019,-10.964,-10.909,-10.860,-10.821,-10.786,-10.736,-10.661,-10.566,-10.474,-10.405,
--10.362,-10.323,-10.269,-10.196,-10.121,-10.062,-10.023,-9.995,-9.968,-9.942,-9.926,-9.923,-9.922,-9.907,-9.876,-9.837,
--9.808,-9.788,-9.765,-9.724,-9.666,-9.605,-9.554,-9.512,-9.460,-9.386,-9.297,-9.215,-9.158,-9.117,-9.066,-8.985,
--8.882,-8.789,-8.732,-8.703,-8.666,-8.586,-8.458,-8.317,-8.208,-8.145,-8.103,-8.040,-7.930,-7.785,-7.636,-7.504,
--7.386,-7.261,-7.127,-7.001,-6.906,-6.835,-6.751,-6.614,-6.425,-6.234,-6.096,-6.022,-5.955,-5.814,-5.562,-5.256,
--5.009,-4.912,-4.966,-5.073,-5.108,-4.995,-4.755,-4.471,-4.237,-4.099,-4.048,-4.038,-4.018,-3.955,-3.839,-3.680,
--3.502,-3.328,-3.170,-3.024,-2.881,-2.736,-2.592,-2.450,-2.306,-2.148,-1.971,-1.788,-1.620,-1.476,-1.343,-1.189,
--.993,-.755,-.497,-.234,.034,.314,.604,.884,1.133,1.348,1.552,1.772,2.011,2.252,2.472,2.663,
-2.834,2.998,3.158,3.319,3.496,3.708,3.962,4.242,4.515,4.768,5.014,5.278,5.559,5.829,6.058,6.255,
-6.461,6.704,6.966,7.199,7.379,7.547,7.771,8.076,8.411,8.695,8.905,9.099,9.353,9.673,9.977,10.184,
-10.304,10.423,10.592,10.733,10.696,10.433,10.106,10.007,10.319,10.948,11.585,11.973,12.123,12.282,12.704,13.425,
-14.270,15.050,15.736,16.440,17.232,18.002,18.525,18.670,18.538,18.404,18.500,18.846,19.269,19.558,19.612,19.460,
-19.183,18.834,18.433,18.003,17.580,17.192,16.830,16.458,16.054,15.633,15.225,14.849,14.506,14.201,13.944,13.728,
-13.498,13.171,12.708,12.174,11.714,11.460,11.428,11.520,11.601,11.602,11.542,11.469,11.404,11.327,11.224,11.120,
-11.066,11.084,11.145,11.189,11.157,11.002,10.672,10.108,9.299,8.334,7.400,6.700,6.318,6.161,6.017,5.686,
-5.091,4.294,3.434,2.642,1.996,1.526,1.221,1.041,.926,.819,.694,.557,.424,.299,.160,-.013,
--.218,-.441,-.677,-.941,-1.245,-1.567,-1.845,-2.018,-2.078,-2.078,-2.088,-2.136,-2.195,-2.223,-2.213,-2.207,
--2.252,-2.352,-2.458,-2.520,-2.532,-2.536,-2.585,-2.691,-2.822,-2.931,-3.000,-3.046,-3.095,-3.158,-3.227,-3.297,
--3.379,-3.499,-3.674,-3.896,-4.144,-4.392,-4.628,-4.851,-5.063,-5.263,-5.449,-5.617,-5.769,-5.912,-6.056,-6.208,
--6.361,-6.495,-6.588,-6.632,-6.641,-6.633,-6.613,-6.559,-6.443,-6.262,-6.055,-5.880,-5.770,-5.706,-5.629,-5.492,
--5.284,-5.037,-4.784,-4.533,-4.269,-3.972,-3.640,-3.287,-2.929,-2.575,-2.228,-1.892,-1.565,-1.240,-.906,-.556,
--.197,.159,.517,.900,1.340,1.847,2.400,2.960,3.502,4.019,4.522,5.013,5.489,5.944,6.387,6.830,
-7.275,7.705,8.101,8.461,8.801,9.142,9.492,9.849,10.214,10.603,11.033,11.497,11.959,12.379,12.745,13.081,
-13.422,13.790,14.177,14.568,14.958,15.354,15.760,16.169,16.567,16.953,17.332,17.710,18.076,18.416,18.735,19.057,
-19.405,19.777,20.142,20.474,20.779,21.093,21.439,21.803,22.143,22.433,22.686,22.938,23.203,23.457,23.671,23.847,
-24.031,24.269,24.561,24.862,25.122,25.325,25.482,25.594,25.629,25.562,25.417,25.277,25.226,25.285,25.396,25.486,
-25.525,25.544,25.582,25.632,25.652,25.603,25.493,25.358,25.220,25.073,24.906,24.739,24.613,24.544,24.503,24.442,
-24.349,24.266,24.242,24.265,24.262,24.168,23.996,23.822,23.709,23.642,23.547,23.377,23.168,22.998,22.910,22.884,
-22.888,22.940,23.081,23.281,23.393,23.242,22.796,22.240,21.844,21.730,21.760,21.679,21.399,21.142,21.268,21.930,
-22.859,23.510,23.454,22.691,21.627,20.760,20.359,20.371,20.774,21.066,21.195,21.178,21.131,21.126,21.153,21.171,
-21.171,21.170,21.171,21.145,21.070,20.982,20.961,21.070,21.296,21.561,21.785,21.947,22.085,22.248,22.456,22.700,
-22.969,23.263,23.577,23.878,24.111,24.235,24.256,24.235,24.250,24.361,24.590,24.919,25.305,25.690,26.015,26.247,
-26.398,26.524,26.685,26.901,27.135,27.320,27.408,27.402,27.348,27.305,27.315,27.389,27.524,27.698,27.875,28.005,
-28.047,28.006,27.941,27.950,28.109,28.422,28.809,29.153,29.369,29.455,29.482,29.542,29.686,29.896,30.117,30.307,
-30.473,30.656,30.892,31.171,31.441,31.648,31.771,31.837,31.888,31.948,32.015,32.077,32.140,32.228,32.357,32.511,
-32.651,32.742,32.791,32.838,32.928,33.063,33.208,33.318,33.375,33.407,33.455,33.537,33.634,33.706,33.725,33.692,
-33.626,33.543,33.445,33.334,33.229,33.164,33.167,33.233,33.319,33.367,33.344,33.270,33.204,33.207,33.302,33.467,
-33.655,33.827,33.976,34.109,34.236,34.364,34.514,34.746,35.138,35.734,36.482,37.238,37.844,38.249,38.554,38.947,
-39.551,40.307,41.008,41.461,41.659,41.812,42.199,42.948,43.924,44.817,45.361,45.507,45.429,45.363,45.434,45.595,
-45.719,45.730,45.665,45.629,45.694,45.847,46.018,46.141,46.194,46.180,46.093,45.911,45.620,45.256,44.897,44.627,
-44.485,44.448,44.456,44.458,44.434,44.402,44.391,44.418,44.479,44.549,44.594,44.583,44.514,44.407,44.300,44.226,
-44.189,44.176,44.167,44.157,44.154,44.163,44.173,44.158,44.107,44.031,43.963,43.927,43.915,43.888,43.813,43.687,
-43.542,43.418,43.330,43.256,43.164,43.046,42.928,42.855,42.848,42.889,42.928,42.916,42.829,42.668,42.447,42.178,
-41.875,41.556,41.242,40.948,40.664,40.367,40.039,39.694,39.372,39.109,38.907,38.723,38.504,38.217,37.872,37.509,
-37.160,36.827,36.489,36.123,35.724,35.311,34.908,34.527,34.170,33.831,33.512,33.224,32.982,32.795,32.656,32.539,
-32.414,32.262,32.080,31.886,31.701,31.538,31.394,31.256,31.117,30.979,30.844,30.710,30.575,30.443,30.327,30.242,
-30.188,30.141,30.075,29.983,29.887,29.822,29.807,29.825,29.842,29.830,29.791,29.737,29.672,29.576,29.426,29.221,
-28.999,28.814,28.696,28.626,28.548,28.415,28.217,27.981,27.749,27.539,27.340,27.128,26.893,26.647,26.413,26.206,
-26.019,25.832,25.630,25.414,25.194,24.976,24.751,24.501,24.218,23.921,23.642,23.408,23.217,23.039,22.840,22.606,
-22.351,22.100,21.864,21.637,21.402,21.151,20.884,20.608,20.322,20.017,19.690,19.343,18.988,18.633,18.277,17.918,
-17.558,17.209,16.886,16.593,16.325,16.063,15.785,15.469,15.103,14.690,14.252,13.828,13.448,13.117,12.808,12.483,
-12.121,11.730,11.341,10.972,10.618,10.255,9.864,9.453,9.045,8.664,8.312,7.970,7.618,7.244,6.856,6.462,
-6.068,5.671,5.264,4.843,4.412,3.978,3.545,3.114,2.681,2.240,1.791,1.341,.900,.469,.039,-.406,
--.875,-1.363,-1.852,-2.325,-2.774,-3.209,-3.643,-4.082,-4.529,-4.987,-5.458,-5.944,-6.435,-6.913,-7.361,-7.778,
--8.173,-8.563,-8.955,-9.357,-9.774,-10.219,-10.699,-11.204,-11.698,-12.143,-12.522,-12.844,-13.140,-13.438,-13.750,-14.082,
--14.440,-14.833,-15.262,-15.709,-16.142,-16.542,-16.919,-17.301,-17.708,-18.129,-18.530,-18.884,-19.198,-19.507,-19.849,-20.230,
--20.629,-21.012,-21.365,-21.695,-22.020,-22.350,-22.681,-23.005,-23.318,-23.619,-23.909,-24.187,-24.456,-24.721,-24.984,-25.238,
--25.467,-25.661,-25.834,-26.018,-26.239,-26.499,-26.768,-27.009,-27.202,-27.356,-27.487,-27.602,-27.698,-27.780,-27.871,-27.998,
--28.167,-28.353,-28.512,-28.619,-28.679,-28.715,-28.744,-28.765,-28.772,-28.774,-28.791,-28.831,-28.875,-28.882,-28.832,-28.746,
--28.679,-28.672,-28.719,-28.773,-28.786,-28.742,-28.666,-28.599,-28.569,-28.575,-28.601,-28.621,-28.613,-28.572,-28.506,-28.441,
--28.399,-28.380,-28.357,-28.293,-28.177,-28.032,-27.902,-27.812,-27.753,-27.698,-27.627,-27.549,-27.480,-27.419,-27.341,-27.222,
--27.068,-26.912,-26.788,-26.710,-26.662,-26.621,-26.575,-26.523,-26.458,-26.365,-26.234,-26.075,-25.909,-25.748,-25.577,-25.371,
--25.124,-24.858,-24.607,-24.382,-24.163,-23.928,-23.683,-23.463,-23.296,-23.168,-23.030,-22.836,-22.589,-22.335,-22.116,-21.928,
--21.724,-21.466,-21.157,-20.842,-20.563,-20.321,-20.083,-19.822,-19.542,-19.275,-19.049,-18.863,-18.690,-18.502,-18.283,-18.032,
--17.759,-17.487,-17.250,-17.087,-17.010,-16.989,-16.969,-16.902,-16.785,-16.646,-16.513,-16.386,-16.247,-16.097,-15.962,-15.873,
--15.818,-15.739,-15.579,-15.346,-15.119,-14.991,-14.983,-15.018,-14.965,-14.730,-14.295,-13.705,-13.007,-12.224,-11.379,-10.526,
--9.746,-9.106,-8.624,-8.284,-8.084,-8.068,-8.293,-8.760,-9.376,-9.986,-10.447,-10.684,-10.685,-10.467,-10.063,-9.537,
--9.014,-8.643,-8.523,-8.635,-8.861,-9.066,-9.185,-9.237,-9.269,-9.284,-9.241,-9.101,-8.881,-8.650,-8.466,-8.332,
--8.198,-8.015,-7.785,-7.559,-7.395,-7.313,-7.291,-7.284,-7.245,-7.144,-6.963,-6.706,-6.403,-6.107,-5.873,-5.729,
--5.674,-5.685,-5.737,-5.799,-5.834,-5.793,-5.642,-5.384,-5.067,-4.756,-4.499,-4.300,-4.131,-3.948,-3.705,-3.368,
--2.927,-2.423,-1.952,-1.621,-1.477,-1.459,-1.420,-1.231,-.871,-.449,-.113,.068,.164,.323,.639,1.058,
-1.381,1.387,.984,.301,-.350,-.608,-.247,.706,1.986,3.226,4.156,4.727,5.106,5.536,6.167,6.972,
-7.793,8.457,8.877,9.075,9.135,9.144,9.175,9.281,9.499,9.823,10.190,10.500,10.669,10.676,10.575,10.455,
-10.396,10.434,10.573,10.792,11.055,11.311,11.507,11.606,11.603,11.519,11.388,11.228,11.051,10.872,10.720,10.618,
-10.564,10.521,10.449,10.339,10.224,10.157,10.162,10.212,10.247,10.217,10.112,9.959,9.792,9.630,9.476,9.343,
-9.260,9.265,9.377,9.571,9.780,9.913,9.889,9.662,9.231,8.632,7.924,7.158,6.369,5.570,4.766,3.980,
-3.251,2.620,2.101,1.671,1.282,.898,.512,.134,-.231,-.609,-1.038,-1.538,-2.080,-2.594,-3.012,-3.308,
--3.511,-3.678,-3.853,-4.046,-4.233,-4.385,-4.489,-4.560,-4.631,-4.736,-4.887,-5.071,-5.249,-5.384,-5.463,-5.507,
--5.548,-5.600,-5.645,-5.651,-5.608,-5.545,-5.511,-5.527,-5.565,-5.572,-5.523,-5.459,-5.456,-5.554,-5.695,-5.748,
--5.589,-5.202,-4.703,-4.286,-4.111,-4.233,-4.588,-5.055,-5.520,-5.920,-6.239,-6.485,-6.674,-6.816,-6.918,-6.978,
--6.989,-6.944,-6.856,-6.763,-6.721,-6.768,-6.893,-7.032,-7.107,-7.092,-7.038,-7.052,-7.214,-7.514,-7.851,-8.098,
--8.197,-8.197,-8.204,-8.304,-8.503,-8.743,-8.958,-9.128,-9.270,-9.408,-9.540,-9.654,-9.750,-9.855,-9.997,-10.172,
--10.349,-10.498,-10.624,-10.763,-10.943,-11.147,-11.320,-11.415,-11.434,-11.431,-11.465,-11.565,-11.714,-11.877,-12.022,-12.136,
--12.217,-12.264,-12.290,-12.329,-12.418,-12.580,-12.794,-13.011,-13.188,-13.316,-13.420,-13.530,-13.654,-13.777,-13.883,-13.968,
--14.042,-14.117,-14.196,-14.272,-14.341,-14.400,-14.447,-14.480,-14.503,-14.533,-14.591,-14.686,-14.803,-14.909,-14.976,-15.001,
--14.995,-14.968,-14.913,-14.816,-14.677,-14.524,-14.400,-14.336,-14.333,-14.376,-14.442,-14.517,-14.589,-14.635,-14.632,-14.578,
--14.493,-14.412,-14.355,-14.312,-14.262,-14.194,-14.126,-14.088,-14.094,-14.129,-14.167,-14.189,-14.193,-14.185,-14.159,-14.100,
--14.005,-13.892,-13.791,-13.722,-13.681,-13.645,-13.599,-13.543,-13.486,-13.426,-13.350,-13.250,-13.133,-13.020,-12.927,-12.845,
--12.754,-12.642,-12.520,-12.411,-12.327,-12.255,-12.171,-12.060,-11.934,-11.819,-11.731,-11.667,-11.614,-11.563,-11.517,-11.479,
--11.442,-11.398,-11.346,-11.301,-11.280,-11.286,-11.302,-11.303,-11.280,-11.244,-11.214,-11.198,-11.190,-11.176,-11.150,-11.121,
--11.099,-11.086,-11.075,-11.055,-11.022,-10.976,-10.922,-10.865,-10.814,-10.775,-10.750,-10.724,-10.678,-10.604,-10.509,-10.419,
--10.351,-10.305,-10.262,-10.208,-10.144,-10.082,-10.032,-9.990,-9.947,-9.904,-9.875,-9.873,-9.889,-9.897,-9.873,-9.821,
--9.768,-9.744,-9.748,-9.748,-9.712,-9.634,-9.540,-9.461,-9.405,-9.352,-9.281,-9.194,-9.119,-9.078,-9.068,-9.059,
--9.022,-8.958,-8.893,-8.851,-8.820,-8.764,-8.651,-8.489,-8.322,-8.198,-8.127,-8.075,-7.995,-7.869,-7.719,-7.581,
--7.467,-7.355,-7.212,-7.028,-6.835,-6.676,-6.564,-6.471,-6.348,-6.179,-5.994,-5.853,-5.784,-5.763,-5.724,-5.614,
--5.438,-5.252,-5.116,-5.048,-5.006,-4.927,-4.771,-4.552,-4.325,-4.150,-4.052,-4.016,-3.999,-3.955,-3.864,-3.730,
--3.579,-3.433,-3.299,-3.168,-3.026,-2.871,-2.714,-2.573,-2.447,-2.323,-2.181,-2.017,-1.847,-1.690,-1.549,-1.400,
--1.217,-.993,-.745,-.496,-.254,-.004,.266,.552,.828,1.072,1.291,1.510,1.750,2.004,2.245,2.452,
-2.627,2.792,2.964,3.143,3.324,3.510,3.713,3.946,4.202,4.464,4.725,4.994,5.286,5.590,5.878,6.122,
-6.328,6.527,6.741,6.966,7.182,7.390,7.629,7.939,8.302,8.647,8.901,9.062,9.201,9.392,9.636,9.865,
-10.024,10.142,10.298,10.519,10.711,10.735,10.558,10.334,10.318,10.658,11.268,11.897,12.349,12.630,12.911,13.344,
-13.930,14.567,15.195,15.870,16.666,17.513,18.161,18.358,18.079,17.604,17.335,17.508,18.037,18.613,18.952,18.970,
-18.771,18.498,18.215,17.905,17.541,17.142,16.750,16.379,16.010,15.617,15.213,14.833,14.507,14.235,14.001,13.792,
-13.593,13.368,13.058,12.627,12.121,11.661,11.377,11.312,11.396,11.498,11.527,11.473,11.387,11.309,11.242,11.163,
-11.070,10.992,10.970,11.017,11.095,11.121,10.984,10.579,9.861,8.886,7.829,6.925,6.350,6.117,6.065,5.950,
-5.584,4.929,4.082,3.202,2.415,1.792,1.346,1.064,.909,.828,.767,.689,.584,.454,.303,.123,
--.086,-.310,-.535,-.760,-1.008,-1.294,-1.601,-1.871,-2.051,-2.132,-2.161,-2.196,-2.261,-2.328,-2.359,-2.349,
--2.337,-2.365,-2.438,-2.517,-2.559,-2.564,-2.575,-2.638,-2.761,-2.907,-3.027,-3.100,-3.144,-3.186,-3.239,-3.297,
--3.351,-3.409,-3.493,-3.624,-3.805,-4.019,-4.244,-4.462,-4.667,-4.856,-5.032,-5.199,-5.360,-5.517,-5.670,-5.821,
--5.972,-6.117,-6.241,-6.328,-6.369,-6.371,-6.349,-6.312,-6.251,-6.151,-6.007,-5.845,-5.700,-5.593,-5.510,-5.413,
--5.272,-5.084,-4.870,-4.648,-4.413,-4.149,-3.846,-3.511,-3.165,-2.824,-2.490,-2.155,-1.819,-1.483,-1.151,-.818,
--.475,-.120,.241,.607,.984,1.394,1.851,2.356,2.890,3.431,3.959,4.469,4.960,5.442,5.921,6.403,
-6.881,7.333,7.740,8.098,8.433,8.781,9.164,9.574,9.989,10.394,10.799,11.219,11.655,12.083,12.476,12.828,
-13.166,13.523,13.913,14.320,14.723,15.114,15.503,15.900,16.305,16.704,17.088,17.454,17.803,18.136,18.453,18.767,
-19.102,19.469,19.856,20.232,20.572,20.887,21.210,21.560,21.922,22.253,22.527,22.757,22.980,23.215,23.444,23.640,
-23.804,23.974,24.201,24.498,24.831,25.144,25.399,25.582,25.688,25.710,25.650,25.545,25.456,25.434,25.476,25.539,
-25.579,25.594,25.619,25.677,25.747,25.778,25.738,25.635,25.504,25.367,25.220,25.057,24.904,24.799,24.756,24.739,
-24.697,24.618,24.540,24.510,24.525,24.522,24.438,24.280,24.117,24.017,23.975,23.928,23.818,23.653,23.494,23.388,
-23.330,23.286,23.249,23.233,23.231,23.176,22.988,22.663,22.309,22.069,21.981,21.945,21.833,21.665,21.648,21.997,
-22.689,23.382,23.615,23.151,22.172,21.161,20.562,20.502,20.774,21.288,21.511,21.460,21.253,21.071,21.013,21.049,
-21.094,21.091,21.042,20.976,20.917,20.887,20.919,21.049,21.281,21.562,21.801,21.935,21.971,21.979,22.042,22.207,
-22.472,22.803,23.156,23.489,23.761,23.943,24.032,24.066,24.111,24.229,24.456,24.781,25.158,25.521,25.807,25.988,
-26.087,26.173,26.319,26.553,26.830,27.063,27.182,27.185,27.139,27.120,27.164,27.251,27.345,27.440,27.563,27.740,
-27.951,28.128,28.208,28.185,28.139,28.182,28.382,28.717,29.083,29.373,29.544,29.639,29.740,29.904,30.123,30.344,
-30.524,30.674,30.842,31.073,31.357,31.635,31.843,31.959,32.017,32.070,32.143,32.222,32.278,32.309,32.344,32.420,
-32.543,32.681,32.799,32.887,32.966,33.060,33.168,33.256,33.300,33.312,33.334,33.406,33.519,33.623,33.663,33.623,
-33.539,33.455,33.391,33.330,33.250,33.159,33.102,33.118,33.202,33.293,33.322,33.265,33.173,33.136,33.217,33.407,
-33.638,33.839,33.990,34.126,34.297,34.516,34.757,35.003,35.286,35.689,36.273,37.005,37.751,38.361,38.789,39.136,
-39.577,40.206,40.947,41.598,42.004,42.198,42.405,42.867,43.655,44.594,45.385,45.816,45.896,45.819,45.792,45.892,
-46.041,46.111,46.042,45.888,45.751,45.707,45.764,45.885,46.034,46.182,46.289,46.299,46.157,45.862,45.481,45.120,
-44.865,44.737,44.696,44.685,44.673,44.663,44.673,44.718,44.792,44.877,44.943,44.963,44.923,44.834,44.731,44.663,
-44.655,44.690,44.720,44.705,44.645,44.577,44.538,44.526,44.502,44.420,44.276,44.115,43.994,43.940,43.926,43.905,
-43.847,43.763,43.685,43.630,43.581,43.506,43.389,43.252,43.140,43.081,43.070,43.071,43.044,42.967,42.835,42.654,
-42.426,42.159,41.870,41.577,41.289,40.998,40.696,40.385,40.094,39.850,39.655,39.473,39.248,38.947,38.582,38.195,
-37.824,37.477,37.127,36.752,36.349,35.941,35.549,35.179,34.820,34.464,34.118,33.803,33.528,33.293,33.083,32.886,
-32.700,32.526,32.360,32.197,32.032,31.870,31.719,31.580,31.444,31.305,31.164,31.029,30.907,30.790,30.667,30.534,
-30.405,30.307,30.255,30.245,30.250,30.247,30.225,30.191,30.156,30.122,30.086,30.045,29.999,29.944,29.870,29.761,
-29.616,29.457,29.316,29.215,29.141,29.056,28.918,28.716,28.473,28.229,28.007,27.802,27.593,27.364,27.125,26.899,
-26.697,26.512,26.320,26.106,25.876,25.645,25.416,25.175,24.903,24.601,24.304,24.059,23.886,23.756,23.611,23.404,
-23.132,22.833,22.553,22.308,22.081,21.841,21.573,21.277,20.963,20.635,20.289,19.927,19.564,19.215,18.890,18.579,
-18.268,17.952,17.636,17.329,17.033,16.738,16.434,16.117,15.785,15.436,15.067,14.680,14.289,13.915,13.565,13.226,
-12.872,12.490,12.091,11.701,11.336,10.986,10.622,10.228,9.813,9.408,9.036,8.691,8.346,7.976,7.582,7.186,
-6.810,6.453,6.088,5.692,5.261,4.817,4.385,3.975,3.571,3.147,2.691,2.216,1.751,1.317,.910,.506,
-.078,-.378,-.848,-1.313,-1.764,-2.214,-2.675,-3.149,-3.624,-4.087,-4.542,-5.005,-5.488,-5.979,-6.447,-6.867,
--7.240,-7.597,-7.971,-8.381,-8.821,-9.278,-9.749,-10.231,-10.717,-11.179,-11.583,-11.916,-12.196,-12.468,-12.768,-13.110,
--13.484,-13.877,-14.283,-14.699,-15.121,-15.537,-15.940,-16.338,-16.744,-17.162,-17.575,-17.956,-18.297,-18.617,-18.957,-19.337,
--19.744,-20.137,-20.487,-20.800,-21.109,-21.448,-21.819,-22.196,-22.547,-22.859,-23.145,-23.425,-23.709,-23.992,-24.260,-24.503,
--24.719,-24.916,-25.105,-25.307,-25.535,-25.794,-26.067,-26.328,-26.555,-26.745,-26.908,-27.052,-27.176,-27.276,-27.362,-27.463,
--27.604,-27.785,-27.974,-28.130,-28.231,-28.290,-28.337,-28.388,-28.435,-28.467,-28.482,-28.495,-28.517,-28.538,-28.531,-28.479,
--28.398,-28.331,-28.311,-28.335,-28.370,-28.379,-28.350,-28.303,-28.268,-28.264,-28.287,-28.318,-28.332,-28.316,-28.273,-28.220,
--28.178,-28.156,-28.140,-28.100,-28.015,-27.896,-27.775,-27.682,-27.620,-27.561,-27.481,-27.383,-27.295,-27.239,-27.206,-27.154,
--27.050,-26.902,-26.746,-26.625,-26.547,-26.497,-26.451,-26.404,-26.354,-26.296,-26.213,-26.094,-25.945,-25.787,-25.627,-25.452,
--25.236,-24.977,-24.703,-24.451,-24.233,-24.027,-23.805,-23.567,-23.350,-23.186,-23.068,-22.945,-22.764,-22.521,-22.256,-22.017,
--21.814,-21.615,-21.378,-21.096,-20.796,-20.516,-20.269,-20.042,-19.814,-19.574,-19.329,-19.090,-18.865,-18.657,-18.463,-18.262,
--18.027,-17.737,-17.415,-17.130,-16.962,-16.945,-17.030,-17.109,-17.094,-16.973,-16.800,-16.637,-16.500,-16.362,-16.203,-16.047,
--15.939,-15.888,-15.846,-15.738,-15.540,-15.310,-15.144,-15.096,-15.124,-15.123,-14.996,-14.710,-14.286,-13.754,-13.122,-12.401,
--11.635,-10.906,-10.294,-9.848,-9.573,-9.468,-9.547,-9.814,-10.227,-10.681,-11.050,-11.250,-11.267,-11.135,-10.882,-10.520,
--10.077,-9.633,-9.303,-9.175,-9.242,-9.411,-9.570,-9.665,-9.710,-9.742,-9.764,-9.738,-9.628,-9.443,-9.234,-9.044,
--8.875,-8.694,-8.480,-8.252,-8.058,-7.932,-7.869,-7.828,-7.768,-7.668,-7.520,-7.324,-7.081,-6.816,-6.576,-6.412,
--6.351,-6.377,-6.443,-6.502,-6.529,-6.506,-6.412,-6.222,-5.925,-5.549,-5.167,-4.858,-4.664,-4.555,-4.443,-4.226,
--3.850,-3.347,-2.827,-2.419,-2.189,-2.101,-2.036,-1.873,-1.575,-1.213,-.908,-.736,-.671,-.610,-.460,-.222,
--.011,.001,-.309,-.922,-1.641,-2.136,-2.076,-1.288,.121,1.785,3.243,4.183,4.604,4.789,5.099,5.729,
-6.604,7.465,8.066,8.330,8.357,8.316,8.331,8.440,8.626,8.860,9.116,9.348,9.497,9.521,9.436,9.310,
-9.223,9.220,9.292,9.412,9.568,9.760,9.978,10.182,10.310,10.318,10.203,10.004,9.768,9.533,9.322,9.148,
-9.018,8.921,8.827,8.707,8.559,8.424,8.358,8.395,8.513,8.645,8.723,8.716,8.639,8.526,8.404,8.281,
-8.163,8.067,8.024,8.064,8.194,8.376,8.539,8.595,8.472,8.135,7.597,6.906,6.122,5.292,4.447,3.612,
-2.819,2.104,1.490,.976,.532,.122,-.271,-.649,-1.009,-1.366,-1.747,-2.167,-2.613,-3.038,-3.397,-3.677,
--3.901,-4.108,-4.320,-4.532,-4.721,-4.877,-5.007,-5.130,-5.263,-5.409,-5.566,-5.728,-5.885,-6.021,-6.118,-6.176,
--6.218,-6.272,-6.352,-6.431,-6.467,-6.431,-6.343,-6.260,-6.230,-6.252,-6.280,-6.265,-6.200,-6.133,-6.129,-6.206,
--6.317,-6.371,-6.292,-6.072,-5.778,-5.521,-5.394,-5.438,-5.630,-5.906,-6.195,-6.451,-6.670,-6.877,-7.101,-7.343,
--7.570,-7.718,-7.734,-7.613,-7.412,-7.229,-7.148,-7.190,-7.302,-7.394,-7.410,-7.374,-7.374,-7.494,-7.741,-8.038,
--8.276,-8.397,-8.432,-8.468,-8.577,-8.765,-8.984,-9.181,-9.337,-9.467,-9.591,-9.711,-9.823,-9.937,-10.080,-10.269,
--10.486,-10.687,-10.837,-10.946,-11.058,-11.211,-11.395,-11.558,-11.652,-11.675,-11.677,-11.717,-11.818,-11.962,-12.111,-12.238,
--12.339,-12.423,-12.492,-12.550,-12.610,-12.692,-12.814,-12.974,-13.152,-13.323,-13.473,-13.607,-13.733,-13.857,-13.976,-14.089,
--14.194,-14.285,-14.355,-14.398,-14.421,-14.446,-14.490,-14.553,-14.616,-14.662,-14.688,-14.715,-14.763,-14.835,-14.917,-14.989,
--15.044,-15.081,-15.094,-15.067,-14.985,-14.862,-14.734,-14.644,-14.612,-14.625,-14.657,-14.693,-14.736,-14.785,-14.823,-14.819,
--14.756,-14.652,-14.549,-14.476,-14.432,-14.389,-14.328,-14.256,-14.202,-14.185,-14.196,-14.213,-14.220,-14.216,-14.210,-14.196,
--14.155,-14.070,-13.949,-13.823,-13.722,-13.654,-13.603,-13.547,-13.481,-13.411,-13.345,-13.280,-13.203,-13.112,-13.012,-12.915,
--12.824,-12.731,-12.635,-12.542,-12.462,-12.398,-12.333,-12.246,-12.129,-11.994,-11.865,-11.758,-11.672,-11.595,-11.520,-11.450,
--11.392,-11.350,-11.317,-11.290,-11.270,-11.260,-11.257,-11.249,-11.226,-11.190,-11.153,-11.127,-11.114,-11.104,-11.087,-11.059,
--11.028,-11.000,-10.979,-10.958,-10.932,-10.899,-10.858,-10.810,-10.759,-10.711,-10.671,-10.639,-10.606,-10.556,-10.486,-10.407,
--10.336,-10.283,-10.241,-10.194,-10.137,-10.078,-10.029,-9.991,-9.951,-9.898,-9.844,-9.815,-9.827,-9.862,-9.879,-9.847,
--9.774,-9.706,-9.684,-9.707,-9.732,-9.710,-9.626,-9.512,-9.412,-9.343,-9.288,-9.218,-9.129,-9.045,-8.997,-8.987,
--8.991,-8.977,-8.938,-8.891,-8.855,-8.822,-8.763,-8.658,-8.513,-8.365,-8.245,-8.153,-8.055,-7.922,-7.754,-7.585,
--7.451,-7.355,-7.262,-7.130,-6.945,-6.736,-6.549,-6.410,-6.302,-6.186,-6.035,-5.855,-5.685,-5.560,-5.492,-5.460,
--5.433,-5.384,-5.309,-5.212,-5.098,-4.967,-4.816,-4.649,-4.476,-4.317,-4.188,-4.092,-4.016,-3.938,-3.834,-3.702,
--3.557,-3.423,-3.316,-3.225,-3.123,-2.990,-2.831,-2.672,-2.541,-2.440,-2.346,-2.230,-2.083,-1.918,-1.756,-1.596,
--1.418,-1.204,-.959,-.708,-.474,-.256,-.031,.217,.483,.742,.975,1.189,1.407,1.641,1.882,2.103,
-2.293,2.465,2.645,2.847,3.063,3.275,3.479,3.686,3.906,4.142,4.387,4.641,4.917,5.223,5.546,5.854,
-6.115,6.326,6.508,6.684,6.864,7.048,7.254,7.511,7.834,8.193,8.523,8.773,8.955,9.124,9.324,9.545,
-9.742,9.908,10.098,10.368,10.693,10.939,10.968,10.784,10.577,10.603,10.990,11.645,12.339,12.902,13.328,13.725,
-14.168,14.637,15.088,15.561,16.171,16.959,17.745,18.189,18.032,17.354,16.579,16.205,16.461,17.168,17.906,18.328,
-18.355,18.139,17.868,17.618,17.354,17.027,16.640,16.241,15.857,15.477,15.091,14.721,14.413,14.184,14.002,13.814,
-13.592,13.351,13.111,12.858,12.553,12.189,11.826,11.560,11.453,11.472,11.519,11.508,11.425,11.322,11.252,11.218,
-11.180,11.103,11.004,10.941,10.962,11.045,11.081,10.915,10.421,9.579,8.503,7.412,6.529,5.980,5.730,5.611,
-5.423,5.033,4.427,3.685,2.917,2.213,1.633,1.207,.940,.806,.750,.708,.633,.515,.367,.201,
-.016,-.190,-.412,-.641,-.874,-1.122,-1.396,-1.682,-1.938,-2.122,-2.229,-2.290,-2.350,-2.426,-2.498,-2.538,
--2.542,-2.535,-2.548,-2.584,-2.623,-2.642,-2.652,-2.688,-2.780,-2.920,-3.071,-3.191,-3.268,-3.319,-3.364,-3.411,
--3.447,-3.463,-3.469,-3.496,-3.570,-3.703,-3.882,-4.082,-4.279,-4.461,-4.627,-4.784,-4.941,-5.098,-5.248,-5.383,
--5.502,-5.612,-5.724,-5.835,-5.927,-5.979,-5.982,-5.947,-5.892,-5.831,-5.759,-5.668,-5.557,-5.435,-5.311,-5.187,
--5.054,-4.907,-4.750,-4.588,-4.416,-4.217,-3.973,-3.683,-3.367,-3.044,-2.723,-2.394,-2.045,-1.680,-1.318,-.976,
--.654,-.336,-.006,.337,.685,1.032,1.391,1.790,2.249,2.766,3.316,3.862,4.379,4.869,5.351,5.848,
-6.367,6.882,7.357,7.765,8.117,8.455,8.826,9.249,9.708,10.166,10.603,11.020,11.432,11.842,12.238,12.605,
-12.949,13.296,13.668,14.068,14.476,14.875,15.263,15.653,16.053,16.453,16.833,17.182,17.504,17.816,18.130,18.455,
-18.798,19.164,19.553,19.948,20.322,20.658,20.974,21.298,21.649,22.007,22.331,22.596,22.812,23.019,23.239,23.464,
-23.666,23.838,24.011,24.232,24.525,24.867,25.203,25.483,25.678,25.786,25.818,25.796,25.749,25.709,25.690,25.681,
-25.660,25.627,25.606,25.632,25.704,25.781,25.808,25.763,25.673,25.575,25.484,25.380,25.246,25.100,24.984,24.931,
-24.926,24.925,24.901,24.867,24.850,24.849,24.820,24.719,24.552,24.378,24.260,24.206,24.171,24.105,24.002,23.894,
-23.808,23.731,23.628,23.488,23.332,23.186,23.045,22.885,22.703,22.545,22.462,22.444,22.415,22.306,22.151,22.084,
-22.218,22.494,22.670,22.492,21.915,21.178,20.652,20.572,20.880,21.288,21.626,21.621,21.383,21.077,20.869,20.813,
-20.848,20.880,20.861,20.807,20.767,20.789,20.904,21.126,21.445,21.806,22.115,22.277,22.257,22.114,21.973,21.960,
-22.135,22.473,22.894,23.303,23.632,23.850,23.966,24.021,24.074,24.178,24.370,24.653,25.000,25.359,25.669,25.882,
-25.990,26.035,26.096,26.236,26.456,26.692,26.856,26.908,26.890,26.891,26.972,27.119,27.256,27.320,27.326,27.363,
-27.522,27.816,28.155,28.406,28.490,28.443,28.390,28.459,28.697,29.044,29.389,29.648,29.815,29.944,30.098,30.294,
-30.501,30.686,30.850,31.031,31.267,31.550,31.824,32.024,32.130,32.177,32.223,32.301,32.394,32.465,32.497,32.515,
-32.562,32.661,32.799,32.943,33.067,33.170,33.255,33.316,33.336,33.317,33.289,33.301,33.376,33.484,33.558,33.549,
-33.463,33.357,33.287,33.266,33.259,33.228,33.175,33.143,33.170,33.244,33.306,33.295,33.211,33.126,33.135,33.283,
-33.530,33.786,33.982,34.119,34.259,34.472,34.778,35.144,35.531,35.937,36.403,36.960,37.584,38.198,38.731,39.192,
-39.666,40.248,40.944,41.637,42.174,42.489,42.686,42.978,43.533,44.336,45.185,45.828,46.131,46.155,46.087,46.090,
-46.201,46.339,46.397,46.330,46.176,46.010,45.890,45.844,45.875,45.981,46.136,46.280,46.332,46.237,46.004,45.708,
-45.439,45.251,45.138,45.064,45.001,44.957,44.949,44.985,45.050,45.116,45.166,45.195,45.201,45.183,45.148,45.121,
-45.133,45.195,45.277,45.322,45.283,45.165,45.022,44.911,44.848,44.792,44.688,44.523,44.335,44.191,44.129,44.129,
-44.137,44.106,44.034,43.949,43.876,43.816,43.749,43.661,43.557,43.456,43.373,43.301,43.222,43.124,43.009,42.883,
-42.746,42.589,42.402,42.181,41.929,41.649,41.347,41.038,40.752,40.524,40.359,40.221,40.039,39.760,39.384,38.965,
-38.566,38.213,37.876,37.509,37.093,36.659,36.251,35.892,35.559,35.213,34.838,34.460,34.118,33.833,33.587,33.343,
-33.085,32.828,32.600,32.418,32.270,32.134,31.993,31.848,31.708,31.576,31.450,31.333,31.235,31.157,31.087,30.996,
-30.867,30.714,30.581,30.513,30.521,30.572,30.611,30.602,30.543,30.460,30.381,30.320,30.278,30.249,30.229,30.208,
-30.167,30.087,29.968,29.827,29.692,29.578,29.468,29.330,29.143,28.912,28.668,28.437,28.225,28.019,27.805,27.585,
-27.373,27.177,26.985,26.777,26.542,26.291,26.044,25.809,25.572,25.315,25.041,24.780,24.571,24.418,24.284,24.112,
-23.866,23.561,23.245,22.962,22.717,22.482,22.222,21.924,21.597,21.254,20.902,20.538,20.170,19.815,19.490,19.194,
-18.912,18.627,18.334,18.040,17.749,17.450,17.126,16.774,16.411,16.061,15.733,15.411,15.074,14.714,14.344,13.983,
-13.633,13.274,12.886,12.471,12.054,11.662,11.299,10.944,10.575,10.187,9.799,9.428,9.071,8.707,8.317,7.910,
-7.512,7.146,6.806,6.461,6.077,5.652,5.212,4.791,4.397,4.009,3.596,3.144,2.670,2.206,1.774,1.364,
-.951,.515,.063,-.383,-.806,-1.217,-1.643,-2.109,-2.609,-3.114,-3.600,-4.064,-4.526,-5.005,-5.489,-5.945,
--6.346,-6.698,-7.041,-7.418,-7.844,-8.305,-8.772,-9.230,-9.685,-10.140,-10.581,-10.977,-11.308,-11.589,-11.863,-12.177,
--12.550,-12.967,-13.398,-13.816,-14.214,-14.602,-14.993,-15.395,-15.809,-16.227,-16.635,-17.014,-17.360,-17.688,-18.031,-18.415,
--18.835,-19.254,-19.628,-19.944,-20.234,-20.548,-20.914,-21.315,-21.702,-22.037,-22.319,-22.582,-22.865,-23.178,-23.497,-23.785,
--24.018,-24.201,-24.363,-24.539,-24.753,-25.006,-25.284,-25.560,-25.814,-26.037,-26.238,-26.424,-26.594,-26.738,-26.852,-26.950,
--27.065,-27.221,-27.414,-27.610,-27.767,-27.867,-27.926,-27.974,-28.028,-28.086,-28.131,-28.157,-28.169,-28.175,-28.172,-28.146,
--28.095,-28.031,-27.982,-27.966,-27.979,-27.996,-27.996,-27.975,-27.948,-27.934,-27.947,-27.979,-28.014,-28.029,-28.014,-27.974,
--27.929,-27.902,-27.897,-27.895,-27.863,-27.783,-27.668,-27.557,-27.476,-27.422,-27.363,-27.274,-27.165,-27.072,-27.022,-27.001,
--26.965,-26.877,-26.739,-26.586,-26.461,-26.380,-26.329,-26.288,-26.244,-26.192,-26.124,-26.027,-25.897,-25.747,-25.595,-25.444,
--25.272,-25.052,-24.783,-24.501,-24.253,-24.054,-23.882,-23.699,-23.493,-23.289,-23.119,-22.985,-22.851,-22.673,-22.437,-22.170,
--21.912,-21.682,-21.469,-21.248,-21.006,-20.751,-20.496,-20.249,-20.011,-19.781,-19.554,-19.324,-19.083,-18.835,-18.596,-18.387,
--18.196,-17.980,-17.697,-17.360,-17.056,-16.900,-16.939,-17.106,-17.251,-17.249,-17.089,-16.864,-16.679,-16.566,-16.475,-16.345,
--16.177,-16.031,-15.961,-15.946,-15.901,-15.759,-15.534,-15.316,-15.196,-15.187,-15.218,-15.194,-15.053,-14.790,-14.421,-13.959,
--13.409,-12.798,-12.185,-11.645,-11.238,-10.996,-10.929,-11.030,-11.263,-11.555,-11.802,-11.919,-11.879,-11.724,-11.515,-11.280,
--11.008,-10.691,-10.367,-10.119,-10.017,-10.057,-10.163,-10.241,-10.252,-10.222,-10.200,-10.199,-10.186,-10.114,-9.964,-9.758,
--9.530,-9.303,-9.077,-8.861,-8.672,-8.533,-8.441,-8.370,-8.288,-8.182,-8.058,-7.920,-7.758,-7.555,-7.325,-7.119,
--7.003,-7.007,-7.096,-7.192,-7.223,-7.162,-7.026,-6.837,-6.594,-6.285,-5.919,-5.551,-5.260,-5.087,-4.991,-4.864,
--4.595,-4.164,-3.661,-3.230,-2.968,-2.852,-2.755,-2.547,-2.201,-1.814,-1.526,-1.408,-1.409,-1.410,-1.339,-1.245,
--1.262,-1.509,-1.988,-2.574,-3.068,-3.274,-3.033,-2.252,-.944,.715,2.390,3.702,4.426,4.638,4.681,4.948,
-5.621,6.563,7.441,7.966,8.079,7.947,7.804,7.792,7.906,8.057,8.170,8.220,8.212,8.151,8.043,7.919,
-7.832,7.830,7.916,8.045,8.171,8.284,8.405,8.553,8.702,8.791,8.764,8.615,8.389,8.149,7.937,7.762,
-7.615,7.484,7.356,7.213,7.037,6.832,6.636,6.508,6.494,6.588,6.736,6.865,6.929,6.923,6.873,6.805,
-6.731,6.650,6.568,6.505,6.489,6.535,6.628,6.713,6.717,6.571,6.242,5.743,5.122,4.432,3.716,2.998,
-2.292,1.616,.990,.424,-.084,-.550,-.981,-1.372,-1.717,-2.030,-2.344,-2.691,-3.077,-3.464,-3.802,-4.066,
--4.277,-4.485,-4.723,-4.981,-5.217,-5.395,-5.520,-5.633,-5.774,-5.955,-6.157,-6.351,-6.522,-6.669,-6.790,-6.876,
--6.924,-6.950,-6.986,-7.061,-7.168,-7.265,-7.304,-7.266,-7.177,-7.087,-7.028,-6.996,-6.958,-6.892,-6.813,-6.769,
--6.805,-6.924,-7.070,-7.161,-7.131,-6.977,-6.761,-6.575,-6.490,-6.516,-6.608,-6.703,-6.771,-6.834,-6.950,-7.161,
--7.461,-7.789,-8.053,-8.180,-8.151,-8.006,-7.824,-7.683,-7.621,-7.623,-7.640,-7.639,-7.631,-7.665,-7.793,-8.017,
--8.278,-8.496,-8.625,-8.686,-8.745,-8.861,-9.039,-9.241,-9.424,-9.571,-9.695,-9.815,-9.940,-10.070,-10.215,-10.390,
--10.603,-10.832,-11.033,-11.175,-11.265,-11.344,-11.450,-11.582,-11.706,-11.787,-11.829,-11.869,-11.953,-12.091,-12.253,-12.398,
--12.502,-12.574,-12.636,-12.708,-12.791,-12.881,-12.975,-13.079,-13.199,-13.339,-13.492,-13.648,-13.796,-13.925,-14.038,-14.146,
--14.263,-14.390,-14.505,-14.580,-14.601,-14.587,-14.582,-14.620,-14.697,-14.778,-14.824,-14.827,-14.817,-14.831,-14.886,-14.968,
--15.052,-15.124,-15.180,-15.216,-15.221,-15.186,-15.120,-15.055,-15.021,-15.022,-15.033,-15.024,-14.990,-14.956,-14.944,-14.952,
--14.949,-14.904,-14.819,-14.722,-14.646,-14.597,-14.553,-14.493,-14.419,-14.350,-14.306,-14.285,-14.272,-14.259,-14.249,-14.252,
--14.260,-14.245,-14.181,-14.064,-13.922,-13.789,-13.682,-13.593,-13.507,-13.419,-13.339,-13.278,-13.231,-13.180,-13.105,-13.004,
--12.889,-12.775,-12.674,-12.587,-12.514,-12.453,-12.395,-12.328,-12.240,-12.129,-12.011,-11.903,-11.816,-11.743,-11.670,-11.588,
--11.500,-11.418,-11.355,-11.316,-11.294,-11.280,-11.263,-11.232,-11.184,-11.124,-11.067,-11.026,-11.006,-11.000,-10.995,-10.981,
--10.957,-10.929,-10.901,-10.873,-10.845,-10.816,-10.786,-10.755,-10.718,-10.673,-10.622,-10.570,-10.520,-10.467,-10.407,-10.341,
--10.281,-10.237,-10.207,-10.175,-10.127,-10.060,-9.995,-9.948,-9.920,-9.894,-9.855,-9.812,-9.790,-9.805,-9.840,-9.855,
--9.818,-9.742,-9.676,-9.660,-9.694,-9.730,-9.715,-9.634,-9.518,-9.414,-9.343,-9.288,-9.217,-9.122,-9.024,-8.955,
--8.925,-8.915,-8.896,-8.854,-8.797,-8.742,-8.693,-8.638,-8.566,-8.479,-8.389,-8.301,-8.202,-8.070,-7.895,-7.696,
--7.511,-7.366,-7.260,-7.164,-7.047,-6.898,-6.734,-6.581,-6.457,-6.357,-6.258,-6.136,-5.977,-5.785,-5.584,-5.408,
--5.289,-5.237,-5.231,-5.227,-5.181,-5.072,-4.916,-4.745,-4.588,-4.452,-4.328,-4.207,-4.089,-3.978,-3.872,-3.759,
--3.632,-3.497,-3.371,-3.268,-3.181,-3.083,-2.953,-2.795,-2.638,-2.513,-2.423,-2.342,-2.236,-2.092,-1.921,-1.743,
--1.563,-1.370,-1.152,-.913,-.676,-.456,-.251,-.043,.182,.418,.644,.851,1.048,1.252,1.472,1.700,
-1.917,2.122,2.326,2.546,2.780,3.013,3.231,3.434,3.636,3.851,4.076,4.306,4.544,4.808,5.107,5.430,
-5.743,6.010,6.221,6.388,6.533,6.666,6.799,6.949,7.142,7.390,7.679,7.977,8.265,8.554,8.862,9.181,
-9.474,9.719,9.950,10.238,10.614,10.994,11.210,11.146,10.875,10.650,10.739,11.232,11.983,12.738,13.335,13.789,
-14.214,14.674,15.139,15.567,16.010,16.580,17.294,17.947,18.198,17.827,16.972,16.098,15.702,15.979,16.713,17.464,
-17.890,17.926,17.723,17.459,17.198,16.904,16.539,16.127,15.717,15.331,14.956,14.588,14.267,14.045,13.920,13.808,
-13.612,13.299,12.942,12.645,12.459,12.342,12.215,12.042,11.861,11.729,11.658,11.599,11.498,11.354,11.225,11.165,
-11.172,11.181,11.132,11.030,10.944,10.939,10.995,10.986,10.740,10.140,9.208,8.095,7.017,6.146,5.540,5.146,
-4.848,4.538,4.154,3.686,3.149,2.568,1.982,1.452,1.042,.793,.687,.656,.616,.521,.376,.213,
-.056,-.101,-.280,-.493,-.736,-.995,-1.263,-1.538,-1.810,-2.054,-2.244,-2.370,-2.451,-2.518,-2.590,-2.661,
--2.717,-2.749,-2.764,-2.775,-2.787,-2.796,-2.806,-2.833,-2.897,-3.004,-3.134,-3.257,-3.353,-3.425,-3.490,-3.554,
--3.604,-3.618,-3.588,-3.534,-3.496,-3.510,-3.588,-3.719,-3.878,-4.040,-4.196,-4.348,-4.504,-4.667,-4.827,-4.965,
--5.065,-5.129,-5.181,-5.249,-5.343,-5.446,-5.522,-5.547,-5.520,-5.465,-5.406,-5.348,-5.280,-5.189,-5.069,-4.929,
--4.781,-4.637,-4.502,-4.378,-4.256,-4.123,-3.959,-3.755,-3.518,-3.261,-2.993,-2.704,-2.374,-1.997,-1.591,-1.194,
--.835,-.514,-.206,.115,.452,.789,1.112,1.432,1.788,2.218,2.728,3.285,3.836,4.345,4.811,5.271,
-5.760,6.287,6.825,7.327,7.766,8.151,8.522,8.920,9.356,9.815,10.270,10.707,11.131,11.551,11.964,12.360,
-12.732,13.088,13.452,13.833,14.227,14.618,15.000,15.382,15.779,16.185,16.574,16.920,17.218,17.494,17.781,18.102,
-18.459,18.841,19.239,19.646,20.048,20.426,20.769,21.089,21.410,21.748,22.091,22.405,22.666,22.882,23.085,23.300,
-23.523,23.732,23.917,24.099,24.318,24.599,24.928,25.256,25.532,25.729,25.849,25.911,25.939,25.952,25.951,25.929,
-25.874,25.789,25.703,25.660,25.685,25.760,25.829,25.839,25.783,25.701,25.639,25.604,25.559,25.468,25.333,25.202,
-25.127,25.119,25.147,25.170,25.172,25.160,25.136,25.082,24.976,24.821,24.654,24.516,24.426,24.365,24.313,24.262,
-24.220,24.180,24.112,23.983,23.796,23.592,23.420,23.300,23.214,23.140,23.075,23.029,22.989,22.908,22.741,22.498,
-22.248,22.053,21.904,21.713,21.412,21.041,20.761,20.735,20.989,21.366,21.626,21.494,21.338,21.098,20.896,20.807,
-20.824,20.882,20.923,20.931,20.930,20.955,21.040,21.209,21.479,21.831,22.196,22.464,22.539,22.406,22.156,21.944,
-21.915,22.124,22.523,22.993,23.411,23.703,23.862,23.938,24.003,24.117,24.309,24.571,24.875,25.187,25.474,25.706,
-25.865,25.951,25.997,26.054,26.158,26.306,26.452,26.546,26.583,26.610,26.697,26.869,27.080,27.244,27.306,27.299,
-27.327,27.492,27.813,28.197,28.503,28.633,28.599,28.517,28.529,28.714,29.042,29.406,29.702,29.889,30.008,30.133,
-30.312,30.542,30.785,31.016,31.240,31.480,31.738,31.982,32.165,32.268,32.314,32.356,32.427,32.522,32.608,32.666,
-32.708,32.770,32.877,33.020,33.168,33.288,33.368,33.411,33.419,33.395,33.351,33.314,33.314,33.358,33.415,33.438,
-33.399,33.319,33.249,33.226,33.244,33.262,33.249,33.213,33.193,33.217,33.266,33.292,33.258,33.186,33.148,33.215,
-33.405,33.667,33.922,34.117,34.264,34.423,34.664,35.021,35.492,36.043,36.631,37.209,37.735,38.185,38.576,38.973,
-39.466,40.115,40.890,41.672,42.311,42.730,42.982,43.236,43.660,44.310,45.081,45.772,46.216,46.375,46.351,46.295,
-46.312,46.406,46.515,46.573,46.552,46.467,46.352,46.238,46.152,46.123,46.159,46.237,46.298,46.279,46.160,45.976,
-45.793,45.658,45.567,45.485,45.386,45.284,45.223,45.227,45.279,45.330,45.340,45.313,45.282,45.285,45.330,45.407,
-45.499,45.603,45.713,45.803,45.830,45.762,45.603,45.401,45.214,45.067,44.945,44.813,44.656,44.502,44.393,44.352,
-44.360,44.372,44.352,44.290,44.204,44.113,44.022,43.928,43.831,43.739,43.657,43.576,43.478,43.348,43.194,43.038,
-42.905,42.799,42.702,42.585,42.427,42.218,41.958,41.664,41.368,41.113,40.932,40.813,40.696,40.504,40.194,39.788,
-39.360,38.976,38.642,38.311,37.931,37.497,37.057,36.666,36.333,36.015,35.653,35.235,34.804,34.422,34.116,33.859,
-33.600,33.312,33.016,32.754,32.550,32.392,32.248,32.094,31.937,31.794,31.679,31.591,31.525,31.479,31.450,31.422,
-31.369,31.269,31.130,30.991,30.897,30.866,30.874,30.878,30.849,30.788,30.719,30.662,30.624,30.601,30.592,30.599,
-30.617,30.619,30.574,30.463,30.304,30.138,30.000,29.889,29.771,29.609,29.389,29.134,28.878,28.641,28.420,28.205,
-27.992,27.788,27.594,27.396,27.174,26.921,26.653,26.395,26.166,25.960,25.758,25.551,25.346,25.157,24.978,24.779,
-24.530,24.226,23.900,23.595,23.332,23.095,22.846,22.556,22.227,21.876,21.519,21.160,20.797,20.442,20.112,19.817,
-19.546,19.273,18.985,18.686,18.393,18.110,17.816,17.486,17.116,16.734,16.375,16.053,15.745,15.417,15.057,14.685,
-14.333,14.007,13.678,13.306,12.881,12.430,12.002,11.623,11.281,10.941,10.579,10.194,9.804,9.423,9.045,8.660,
-8.269,7.887,7.529,7.191,6.846,6.471,6.059,5.629,5.209,4.808,4.414,4.005,3.571,3.124,2.682,2.254,
-1.828,1.388,.928,.466,.030,-.369,-.749,-1.147,-1.592,-2.080,-2.586,-3.081,-3.560,-4.036,-4.520,-5.002,
--5.453,-5.853,-6.214,-6.575,-6.977,-7.425,-7.891,-8.338,-8.751,-9.148,-9.552,-9.967,-10.368,-10.728,-11.043,-11.347,
--11.685,-12.084,-12.531,-12.987,-13.414,-13.800,-14.166,-14.540,-14.942,-15.364,-15.781,-16.164,-16.498,-16.802,-17.114,-17.470,
--17.882,-18.321,-18.738,-19.096,-19.402,-19.697,-20.027,-20.404,-20.794,-21.146,-21.434,-21.678,-21.931,-22.239,-22.601,-22.977,
--23.308,-23.563,-23.748,-23.901,-24.067,-24.269,-24.508,-24.764,-25.016,-25.253,-25.478,-25.698,-25.914,-26.113,-26.278,-26.405,
--26.512,-26.632,-26.790,-26.984,-27.183,-27.352,-27.470,-27.543,-27.593,-27.638,-27.684,-27.728,-27.763,-27.786,-27.794,-27.781,
--27.747,-27.702,-27.667,-27.659,-27.679,-27.709,-27.726,-27.716,-27.683,-27.646,-27.624,-27.627,-27.652,-27.684,-27.704,-27.696,
--27.665,-27.631,-27.621,-27.644,-27.678,-27.681,-27.625,-27.518,-27.398,-27.302,-27.234,-27.171,-27.086,-26.983,-26.890,-26.832,
--26.803,-26.767,-26.688,-26.564,-26.422,-26.300,-26.216,-26.164,-26.124,-26.080,-26.021,-25.934,-25.812,-25.660,-25.499,-25.350,
--25.211,-25.054,-24.849,-24.592,-24.319,-24.078,-23.891,-23.742,-23.593,-23.422,-23.239,-23.065,-22.910,-22.755,-22.573,-22.353,
--22.103,-21.848,-21.602,-21.370,-21.149,-20.932,-20.711,-20.473,-20.213,-19.941,-19.680,-19.448,-19.237,-19.020,-18.782,-18.536,
--18.313,-18.121,-17.926,-17.678,-17.377,-17.102,-16.968,-17.029,-17.212,-17.355,-17.328,-17.129,-16.877,-16.707,-16.652,-16.634,
--16.551,-16.379,-16.192,-16.081,-16.059,-16.042,-15.932,-15.707,-15.447,-15.265,-15.215,-15.249,-15.266,-15.187,-14.994,-14.719,
--14.397,-14.039,-13.645,-13.231,-12.835,-12.510,-12.303,-12.240,-12.311,-12.463,-12.613,-12.675,-12.600,-12.409,-12.169,-11.946,
--11.754,-11.565,-11.350,-11.129,-10.964,-10.908,-10.949,-11.007,-11.000,-10.902,-10.757,-10.639,-10.582,-10.558,-10.502,-10.368,
--10.153,-9.891,-9.627,-9.393,-9.205,-9.066,-8.966,-8.884,-8.795,-8.690,-8.582,-8.485,-8.390,-8.265,-8.080,-7.851,
--7.646,-7.545,-7.580,-7.700,-7.796,-7.774,-7.611,-7.355,-7.075,-6.803,-6.535,-6.256,-5.984,-5.758,-5.597,-5.454,
--5.236,-4.877,-4.404,-3.942,-3.622,-3.473,-3.387,-3.201,-2.837,-2.383,-2.028,-1.912,-2.004,-2.130,-2.142,-2.073,
--2.135,-2.547,-3.317,-4.170,-4.693,-4.575,-3.772,-2.468,-.925,.656,2.140,3.397,4.279,4.707,4.790,4.824,
-5.131,5.840,6.786,7.617,8.042,8.012,7.715,7.406,7.232,7.178,7.140,7.043,6.887,6.716,6.566,6.448,
-6.370,6.355,6.424,6.565,6.729,6.864,6.954,7.019,7.085,7.142,7.147,7.064,6.896,6.695,6.516,6.383,
-6.285,6.189,6.078,5.945,5.785,5.590,5.359,5.119,4.919,4.809,4.800,4.862,4.938,4.980,4.977,4.942,
-4.896,4.847,4.793,4.733,4.678,4.645,4.640,4.644,4.609,4.480,4.218,3.823,3.332,2.799,2.272,1.767,
-1.277,.790,.298,-.195,-.679,-1.150,-1.601,-2.016,-2.377,-2.677,-2.933,-3.189,-3.481,-3.810,-4.145,-4.441,
--4.685,-4.902,-5.133,-5.395,-5.663,-5.893,-6.062,-6.190,-6.324,-6.496,-6.702,-6.906,-7.079,-7.218,-7.341,-7.460,
--7.565,-7.635,-7.662,-7.674,-7.713,-7.802,-7.926,-8.031,-8.066,-8.013,-7.900,-7.776,-7.679,-7.618,-7.577,-7.541,
--7.516,-7.523,-7.573,-7.652,-7.712,-7.709,-7.632,-7.520,-7.432,-7.403,-7.419,-7.425,-7.377,-7.277,-7.180,-7.152,
--7.221,-7.365,-7.530,-7.678,-7.799,-7.908,-8.011,-8.093,-8.132,-8.112,-8.043,-7.953,-7.881,-7.867,-7.937,-8.100,
--8.331,-8.576,-8.775,-8.899,-8.965,-9.028,-9.136,-9.303,-9.501,-9.690,-9.848,-9.980,-10.105,-10.236,-10.378,-10.536,
--10.716,-10.920,-11.130,-11.317,-11.457,-11.548,-11.614,-11.680,-11.755,-11.825,-11.880,-11.931,-12.009,-12.141,-12.324,-12.518,
--12.676,-12.771,-12.813,-12.839,-12.885,-12.971,-13.088,-13.218,-13.343,-13.462,-13.583,-13.718,-13.865,-14.008,-14.129,-14.226,
--14.316,-14.423,-14.550,-14.671,-14.747,-14.761,-14.737,-14.727,-14.767,-14.847,-14.920,-14.943,-14.917,-14.885,-14.898,-14.970,
--15.075,-15.175,-15.251,-15.311,-15.368,-15.420,-15.456,-15.467,-15.464,-15.463,-15.463,-15.440,-15.372,-15.261,-15.145,-15.065,
--15.038,-15.041,-15.032,-14.991,-14.926,-14.858,-14.799,-14.739,-14.665,-14.576,-14.488,-14.417,-14.368,-14.336,-14.315,-14.308,
--14.316,-14.328,-14.316,-14.254,-14.140,-13.996,-13.854,-13.730,-13.620,-13.514,-13.412,-13.325,-13.264,-13.221,-13.175,-13.100,
--12.990,-12.860,-12.732,-12.620,-12.528,-12.449,-12.375,-12.301,-12.219,-12.126,-12.026,-11.930,-11.851,-11.795,-11.754,-11.710,
--11.650,-11.570,-11.483,-11.406,-11.351,-11.318,-11.293,-11.258,-11.199,-11.119,-11.033,-10.963,-10.922,-10.908,-10.904,-10.895,
--10.872,-10.841,-10.809,-10.783,-10.763,-10.746,-10.730,-10.713,-10.691,-10.654,-10.601,-10.536,-10.469,-10.406,-10.346,-10.284,
--10.224,-10.174,-10.143,-10.125,-10.100,-10.049,-9.974,-9.898,-9.846,-9.826,-9.821,-9.811,-9.793,-9.780,-9.787,-9.805,
--9.810,-9.780,-9.726,-9.684,-9.682,-9.712,-9.736,-9.711,-9.630,-9.524,-9.430,-9.365,-9.310,-9.238,-9.142,-9.040,
--8.962,-8.918,-8.891,-8.856,-8.797,-8.717,-8.632,-8.558,-8.499,-8.454,-8.418,-8.381,-8.327,-8.237,-8.101,-7.929,
--7.744,-7.571,-7.419,-7.283,-7.154,-7.030,-6.915,-6.814,-6.724,-6.640,-6.559,-6.480,-6.393,-6.276,-6.108,-5.885,
--5.644,-5.440,-5.316,-5.263,-5.229,-5.149,-4.998,-4.801,-4.608,-4.452,-4.328,-4.207,-4.076,-3.945,-3.844,-3.779,
--3.731,-3.662,-3.553,-3.418,-3.286,-3.172,-3.064,-2.941,-2.792,-2.634,-2.494,-2.381,-2.280,-2.162,-2.011,-1.832,
--1.644,-1.458,-1.271,-1.075,-.869,-.661,-.458,-.261,-.063,.140,.343,.537,.723,.911,1.113,1.332,
-1.560,1.793,2.034,2.287,2.547,2.795,3.012,3.197,3.371,3.559,3.772,3.997,4.223,4.450,4.696,4.976,
-5.280,5.575,5.830,6.035,6.198,6.333,6.448,6.550,6.654,6.785,6.964,7.196,7.483,7.829,8.242,8.705,
-9.167,9.564,9.878,10.160,10.485,10.864,11.184,11.281,11.087,10.746,10.553,10.763,11.394,12.223,12.962,13.478,
-13.858,14.287,14.864,15.538,16.197,16.805,17.412,18.032,18.526,18.650,18.262,17.496,16.733,16.361,16.509,16.985,
-17.448,17.658,17.595,17.387,17.144,16.880,16.553,16.159,15.747,15.372,15.029,14.677,14.310,13.993,13.800,13.724,
-13.644,13.419,13.007,12.522,12.146,11.990,12.018,12.097,12.112,12.040,11.928,11.813,11.684,11.515,11.319,11.158,
-11.089,11.105,11.130,11.093,10.992,10.901,10.887,10.921,10.863,10.541,9.863,8.886,7.782,6.737,5.858,5.154,
-4.575,4.082,3.663,3.316,3.009,2.676,2.258,1.755,1.243,.832,.594,.516,.511,.482,.385,.237,
-.086,-.046,-.175,-.339,-.560,-.826,-1.111,-1.391,-1.660,-1.918,-2.156,-2.354,-2.498,-2.589,-2.651,-2.707,
--2.772,-2.844,-2.913,-2.967,-3.001,-3.018,-3.029,-3.054,-3.110,-3.200,-3.309,-3.410,-3.484,-3.534,-3.579,-3.635,
--3.694,-3.729,-3.714,-3.648,-3.561,-3.491,-3.468,-3.498,-3.567,-3.659,-3.766,-3.887,-4.032,-4.202,-4.390,-4.572,
--4.722,-4.821,-4.872,-4.902,-4.946,-5.019,-5.107,-5.178,-5.206,-5.185,-5.133,-5.071,-5.005,-4.926,-4.824,-4.699,
--4.562,-4.427,-4.302,-4.185,-4.069,-3.945,-3.808,-3.654,-3.488,-3.315,-3.135,-2.937,-2.694,-2.384,-2.007,-1.594,
--1.190,-.823,-.488,-.155,.198,.568,.925,1.252,1.564,1.905,2.320,2.818,3.362,3.894,4.375,4.814,
-5.250,5.723,6.243,6.779,7.292,7.757,8.180,8.588,9.004,9.431,9.857,10.272,10.681,11.093,11.512,11.929,
-12.330,12.714,13.093,13.483,13.884,14.283,14.670,15.047,15.433,15.838,16.246,16.623,16.942,17.211,17.470,17.762,
-18.105,18.486,18.885,19.287,19.695,20.104,20.501,20.867,21.198,21.509,21.818,22.129,22.426,22.691,22.923,23.136,
-23.350,23.563,23.766,23.952,24.139,24.357,24.625,24.934,25.245,25.516,25.725,25.872,25.978,26.059,26.121,26.158,
-26.154,26.098,26.001,25.899,25.836,25.838,25.885,25.929,25.925,25.871,25.804,25.765,25.760,25.753,25.701,25.597,
-25.480,25.401,25.381,25.398,25.409,25.387,25.335,25.273,25.210,25.142,25.060,24.961,24.855,24.752,24.665,24.604,
-24.578,24.580,24.579,24.532,24.411,24.233,24.050,23.914,23.836,23.780,23.699,23.574,23.412,23.231,23.026,22.780,
-22.489,22.175,21.874,21.605,21.368,21.166,21.031,21.013,21.132,21.328,21.484,21.494,21.243,21.151,21.097,21.104,
-21.160,21.237,21.309,21.372,21.433,21.487,21.525,21.548,21.588,21.695,21.892,22.141,22.345,22.408,22.300,22.093,
-21.921,21.908,22.101,22.451,22.849,23.189,23.413,23.538,23.629,23.765,23.993,24.310,24.672,25.021,25.317,25.549,
-25.723,25.851,25.942,26.007,26.060,26.118,26.186,26.256,26.320,26.382,26.467,26.598,26.778,26.976,27.149,27.276,
-27.378,27.504,27.695,27.945,28.200,28.388,28.469,28.465,28.456,28.536,28.751,29.073,29.412,29.678,29.836,29.926,
-30.033,30.225,30.508,30.834,31.142,31.402,31.624,31.832,32.032,32.205,32.329,32.407,32.462,32.524,32.600,32.681,
-32.759,32.841,32.947,33.086,33.238,33.369,33.447,33.468,33.449,33.413,33.377,33.348,33.327,33.319,33.319,33.317,
-33.301,33.271,33.245,33.241,33.258,33.276,33.272,33.243,33.211,33.204,33.227,33.256,33.257,33.229,33.207,33.243,
-33.372,33.583,33.833,34.077,34.290,34.476,34.667,34.914,35.281,35.817,36.515,37.288,37.990,38.488,38.756,38.914,
-39.174,39.705,40.525,41.479,42.333,42.928,43.274,43.531,43.888,44.436,45.113,45.757,46.218,46.442,46.487,46.461,
-46.454,46.491,46.553,46.608,46.635,46.628,46.584,46.507,46.411,46.331,46.299,46.319,46.354,46.344,46.257,46.108,
-45.954,45.843,45.774,45.704,45.588,45.431,45.288,45.225,45.261,45.350,45.418,45.417,45.364,45.324,45.353,45.469,
-45.642,45.825,45.984,46.104,46.176,46.184,46.115,45.966,45.757,45.517,45.274,45.040,44.824,44.642,44.516,44.465,
-44.489,44.570,44.682,44.797,44.892,44.940,44.909,44.782,44.569,44.315,44.078,43.895,43.762,43.646,43.514,43.359,
-43.201,43.067,42.961,42.865,42.752,42.598,42.400,42.166,41.916,41.677,41.477,41.328,41.210,41.072,40.857,40.541,
-40.152,39.752,39.389,39.061,38.726,38.346,37.926,37.511,37.141,36.811,36.470,36.068,35.605,35.135,34.728,34.408,
-34.147,33.890,33.605,33.307,33.032,32.802,32.607,32.421,32.229,32.047,31.902,31.811,31.766,31.748,31.739,31.732,
-31.719,31.689,31.630,31.540,31.433,31.327,31.236,31.160,31.094,31.042,31.015,31.015,31.032,31.046,31.045,31.039,
-31.044,31.059,31.059,31.006,30.883,30.713,30.548,30.423,30.334,30.237,30.085,29.863,29.593,29.316,29.056,28.814,
-28.582,28.358,28.150,27.958,27.766,27.551,27.304,27.041,26.795,26.588,26.421,26.272,26.117,25.944,25.745,25.513,
-25.237,24.917,24.575,24.251,23.970,23.727,23.487,23.209,22.882,22.521,22.149,21.782,21.420,21.065,20.730,20.434,
-20.177,19.933,19.667,19.364,19.041,18.725,18.429,18.132,17.807,17.447,17.077,16.733,16.422,16.117,15.781,15.408,
-15.029,14.683,14.375,14.067,13.707,13.278,12.812,12.371,11.994,11.668,11.346,10.987,10.585,10.165,9.760,9.381,
-9.019,8.659,8.298,7.940,7.587,7.232,6.860,6.461,6.042,5.615,5.193,4.778,4.365,3.949,3.529,3.106,
-2.679,2.242,1.789,1.328,.873,.443,.042,-.341,-.734,-1.157,-1.614,-2.097,-2.591,-3.087,-3.584,-4.076,
--4.548,-4.984,-5.381,-5.761,-6.159,-6.600,-7.075,-7.545,-7.973,-8.348,-8.692,-9.045,-9.424,-9.817,-10.194,-10.543,
--10.881,-11.245,-11.660,-12.119,-12.583,-13.014,-13.398,-13.756,-14.124,-14.522,-14.939,-15.343,-15.701,-16.007,-16.291,-16.597,
--16.957,-17.368,-17.793,-18.188,-18.534,-18.845,-19.160,-19.507,-19.878,-20.237,-20.546,-20.799,-21.034,-21.304,-21.645,-22.046,
--22.456,-22.820,-23.104,-23.314,-23.486,-23.658,-23.850,-24.065,-24.292,-24.520,-24.747,-24.976,-25.210,-25.441,-25.652,-25.828,
--25.968,-26.087,-26.213,-26.363,-26.539,-26.723,-26.892,-27.028,-27.126,-27.191,-27.235,-27.272,-27.312,-27.359,-27.402,-27.423,
--27.409,-27.367,-27.324,-27.312,-27.345,-27.410,-27.472,-27.499,-27.482,-27.436,-27.386,-27.354,-27.350,-27.371,-27.403,-27.426,
--27.425,-27.399,-27.370,-27.369,-27.407,-27.464,-27.493,-27.457,-27.356,-27.228,-27.118,-27.044,-26.987,-26.920,-26.830,-26.733,
--26.654,-26.597,-26.543,-26.468,-26.364,-26.247,-26.139,-26.057,-25.997,-25.948,-25.898,-25.832,-25.736,-25.604,-25.444,-25.278,
--25.127,-24.992,-24.847,-24.665,-24.438,-24.192,-23.963,-23.774,-23.618,-23.469,-23.311,-23.144,-22.976,-22.811,-22.639,-22.450,
--22.243,-22.021,-21.791,-21.553,-21.313,-21.081,-20.861,-20.647,-20.413,-20.143,-19.847,-19.563,-19.329,-19.143,-18.966,-18.758,
--18.517,-18.275,-18.062,-17.866,-17.648,-17.397,-17.172,-17.068,-17.132,-17.301,-17.429,-17.395,-17.202,-16.968,-16.824,-16.800,
--16.809,-16.737,-16.551,-16.329,-16.177,-16.126,-16.103,-16.002,-15.787,-15.528,-15.339,-15.276,-15.291,-15.275,-15.144,-14.899,
--14.607,-14.340,-14.121,-13.927,-13.726,-13.513,-13.317,-13.185,-13.147,-13.194,-13.274,-13.313,-13.252,-13.078,-12.833,-12.588,
--12.393,-12.246,-12.109,-11.953,-11.796,-11.693,-11.680,-11.734,-11.771,-11.713,-11.541,-11.312,-11.113,-10.987,-10.911,-10.818,
--10.654,-10.415,-10.145,-9.895,-9.699,-9.557,-9.453,-9.363,-9.272,-9.176,-9.085,-9.007,-8.941,-8.862,-8.736,-8.544,
--8.318,-8.127,-8.044,-8.086,-8.189,-8.244,-8.164,-7.937,-7.628,-7.320,-7.063,-6.850,-6.651,-6.450,-6.252,-6.063,
--5.851,-5.565,-5.179,-4.742,-4.355,-4.097,-3.943,-3.772,-3.466,-3.032,-2.623,-2.431,-2.516,-2.743,-2.890,-2.865,
--2.834,-3.111,-3.879,-4.948,-5.782,-5.798,-4.744,-2.854,-.690,1.210,2.598,3.530,4.173,4.629,4.910,5.053,
-5.204,5.562,6.214,7.022,7.694,7.973,7.805,7.349,6.839,6.417,6.092,5.800,5.508,5.246,5.067,4.987,
-4.975,4.995,5.040,5.130,5.271,5.436,5.579,5.667,5.701,5.696,5.654,5.564,5.419,5.243,5.082,4.972,
-4.911,4.867,4.802,4.701,4.574,4.429,4.261,4.058,3.828,3.599,3.415,3.298,3.240,3.205,3.160,3.094,
-3.010,2.919,2.828,2.742,2.668,2.620,2.604,2.602,2.574,2.465,2.234,1.881,1.443,.983,.559,.198,
--.111,-.404,-.716,-1.066,-1.450,-1.855,-2.261,-2.652,-3.012,-3.328,-3.599,-3.839,-4.076,-4.331,-4.605,-4.879,
--5.132,-5.362,-5.585,-5.821,-6.067,-6.302,-6.502,-6.667,-6.824,-7.005,-7.217,-7.435,-7.619,-7.750,-7.842,-7.930,
--8.038,-8.158,-8.257,-8.308,-8.317,-8.320,-8.358,-8.445,-8.553,-8.628,-8.629,-8.553,-8.439,-8.340,-8.290,-8.287,
--8.303,-8.306,-8.286,-8.250,-8.209,-8.161,-8.104,-8.044,-8.006,-8.014,-8.061,-8.103,-8.089,-7.998,-7.864,-7.741,
--7.650,-7.556,-7.398,-7.164,-6.929,-6.834,-6.987,-7.379,-7.877,-8.297,-8.513,-8.515,-8.394,-8.271,-8.234,-8.307,
--8.468,-8.677,-8.886,-9.060,-9.180,-9.257,-9.325,-9.425,-9.576,-9.765,-9.960,-10.133,-10.279,-10.413,-10.552,-10.702,
--10.863,-11.031,-11.203,-11.376,-11.539,-11.679,-11.787,-11.866,-11.923,-11.967,-12.000,-12.031,-12.078,-12.168,-12.316,-12.514,
--12.724,-12.894,-12.992,-13.019,-13.013,-13.029,-13.107,-13.250,-13.430,-13.607,-13.756,-13.878,-13.994,-14.118,-14.247,-14.364,
--14.459,-14.541,-14.631,-14.736,-14.836,-14.899,-14.910,-14.892,-14.889,-14.927,-14.990,-15.033,-15.025,-14.981,-14.955,-14.993,
--15.096,-15.221,-15.324,-15.393,-15.455,-15.539,-15.647,-15.750,-15.816,-15.838,-15.828,-15.797,-15.737,-15.631,-15.479,-15.316,
--15.191,-15.135,-15.139,-15.163,-15.167,-15.139,-15.086,-15.023,-14.951,-14.865,-14.764,-14.657,-14.560,-14.485,-14.435,-14.407,
--14.398,-14.398,-14.392,-14.358,-14.283,-14.170,-14.040,-13.915,-13.803,-13.695,-13.584,-13.471,-13.369,-13.287,-13.220,-13.149,
--13.058,-12.944,-12.819,-12.700,-12.594,-12.496,-12.401,-12.303,-12.204,-12.106,-12.009,-11.911,-11.818,-11.741,-11.688,-11.657,
--11.634,-11.599,-11.542,-11.468,-11.394,-11.336,-11.300,-11.273,-11.235,-11.171,-11.085,-10.997,-10.932,-10.898,-10.888,-10.879,
--10.853,-10.806,-10.751,-10.703,-10.674,-10.663,-10.664,-10.667,-10.661,-10.635,-10.582,-10.507,-10.423,-10.349,-10.292,-10.247,
--10.201,-10.148,-10.095,-10.053,-10.023,-9.993,-9.943,-9.874,-9.803,-9.754,-9.740,-9.750,-9.763,-9.763,-9.756,-9.751,
--9.751,-9.747,-9.732,-9.708,-9.692,-9.695,-9.708,-9.707,-9.671,-9.603,-9.523,-9.454,-9.399,-9.341,-9.266,-9.173,
--9.081,-9.010,-8.962,-8.923,-8.873,-8.800,-8.710,-8.615,-8.530,-8.464,-8.422,-8.396,-8.368,-8.316,-8.226,-8.100,
--7.959,-7.824,-7.699,-7.570,-7.425,-7.270,-7.129,-7.025,-6.958,-6.903,-6.833,-6.741,-6.642,-6.551,-6.457,-6.333,
--6.159,-5.953,-5.759,-5.613,-5.503,-5.378,-5.189,-4.935,-4.663,-4.436,-4.278,-4.160,-4.036,-3.892,-3.760,-3.685,
--3.681,-3.706,-3.694,-3.604,-3.451,-3.289,-3.160,-3.066,-2.973,-2.848,-2.687,-2.514,-2.354,-2.216,-2.084,-1.936,
--1.765,-1.577,-1.387,-1.201,-1.019,-.837,-.651,-.462,-.274,-.089,.088,.259,.429,.609,.806,1.016,
-1.231,1.447,1.673,1.923,2.196,2.470,2.711,2.901,3.054,3.210,3.403,3.636,3.886,4.129,4.360,4.598,
-4.855,5.125,5.384,5.613,5.811,5.989,6.153,6.305,6.443,6.583,6.747,6.954,7.210,7.521,7.897,8.350,
-8.862,9.374,9.809,10.140,10.408,10.680,10.961,11.155,11.133,10.874,10.553,10.458,10.791,11.505,12.330,12.984,
-13.389,13.718,14.234,15.064,16.116,17.175,18.081,18.798,19.349,19.701,19.752,19.443,18.874,18.284,17.896,17.766,
-17.759,17.693,17.486,17.197,16.927,16.706,16.480,16.189,15.847,15.525,15.262,15.011,14.694,14.296,13.909,13.652,
-13.546,13.471,13.255,12.831,12.308,11.890,11.719,11.777,11.925,12.024,12.031,11.980,11.909,11.808,11.650,11.443,
-11.252,11.140,11.112,11.098,11.030,10.907,10.801,10.776,10.798,10.720,10.374,9.684,8.724,7.661,6.649,5.755,
-4.965,4.256,3.651,3.200,2.918,2.735,2.518,2.157,1.645,1.089,.636,.380,.303,.309,.296,.222,
-.109,-.003,-.102,-.218,-.390,-.630,-.914,-1.203,-1.471,-1.720,-1.962,-2.197,-2.407,-2.568,-2.671,-2.730,
--2.775,-2.835,-2.921,-3.024,-3.122,-3.197,-3.244,-3.281,-3.331,-3.413,-3.522,-3.630,-3.709,-3.748,-3.759,-3.764,
--3.776,-3.785,-3.768,-3.714,-3.634,-3.556,-3.503,-3.481,-3.480,-3.488,-3.508,-3.554,-3.644,-3.783,-3.966,-4.171,
--4.375,-4.554,-4.693,-4.790,-4.857,-4.912,-4.963,-5.005,-5.025,-5.013,-4.971,-4.909,-4.836,-4.754,-4.656,-4.544,
--4.423,-4.306,-4.196,-4.087,-3.967,-3.827,-3.669,-3.505,-3.346,-3.202,-3.071,-2.941,-2.787,-2.583,-2.313,-1.982,
--1.616,-1.248,-.889,-.529,-.149,.259,.672,1.058,1.399,1.714,2.051,2.452,2.922,3.428,3.923,4.382,
-4.820,5.270,5.758,6.278,6.801,7.297,7.756,8.190,8.617,9.042,9.461,9.863,10.250,10.632,11.021,11.416,
-11.806,12.185,12.560,12.947,13.358,13.784,14.202,14.600,14.984,15.374,15.779,16.181,16.548,16.864,17.143,17.425,
-17.744,18.103,18.480,18.854,19.226,19.614,20.025,20.443,20.834,21.175,21.472,21.749,22.031,22.321,22.605,22.870,
-23.112,23.336,23.546,23.743,23.930,24.123,24.343,24.602,24.893,25.191,25.466,25.701,25.890,26.041,26.161,26.257,
-26.328,26.364,26.355,26.298,26.211,26.125,26.072,26.060,26.068,26.066,26.041,26.002,25.974,25.964,25.956,25.923,
-25.856,25.775,25.712,25.678,25.658,25.618,25.540,25.438,25.344,25.289,25.274,25.275,25.260,25.206,25.117,25.017,
-24.938,24.901,24.897,24.888,24.831,24.710,24.547,24.388,24.268,24.177,24.069,23.897,23.646,23.344,23.036,22.754,
-22.505,22.282,22.083,21.913,21.777,21.672,21.589,21.526,21.480,21.445,21.404,21.336,21.243,21.454,21.483,21.555,
-21.629,21.677,21.702,21.732,21.796,21.889,21.963,21.961,21.867,21.728,21.637,21.664,21.811,22.004,22.147,22.182,
-22.126,22.051,22.038,22.130,22.316,22.544,22.754,22.915,23.037,23.170,23.376,23.692,24.106,24.562,24.985,25.324,
-25.568,25.741,25.872,25.980,26.063,26.117,26.148,26.178,26.228,26.310,26.418,26.533,26.641,26.741,26.852,27.001,
-27.202,27.444,27.686,27.882,28.001,28.049,28.064,28.092,28.172,28.322,28.544,28.823,29.125,29.401,29.609,29.738,
-29.830,29.958,30.182,30.507,30.878,31.220,31.483,31.675,31.839,32.009,32.188,32.352,32.474,32.552,32.602,32.646,
-32.701,32.776,32.880,33.018,33.179,33.333,33.439,33.473,33.441,33.374,33.314,33.283,33.276,33.275,33.263,33.234,
-33.200,33.178,33.182,33.211,33.249,33.272,33.265,33.238,33.217,33.224,33.259,33.293,33.296,33.269,33.249,33.284,
-33.401,33.587,33.808,34.039,34.278,34.526,34.775,35.014,35.270,35.628,36.188,36.975,37.873,38.658,39.131,39.275,
-39.296,39.501,40.096,41.044,42.090,42.945,43.479,43.784,44.076,44.517,45.103,45.689,46.117,46.326,46.378,46.383,
-46.416,46.479,46.536,46.559,46.555,46.538,46.507,46.440,46.327,46.196,46.103,46.093,46.156,46.235,46.264,46.218,
-46.124,46.030,45.953,45.864,45.716,45.493,45.238,45.032,44.941,44.970,45.068,45.166,45.230,45.274,45.343,45.474,
-45.671,45.900,46.116,46.287,46.399,46.457,46.467,46.431,46.337,46.166,45.903,45.557,45.165,44.795,44.523,44.404,
-44.458,44.672,45.014,45.445,45.918,46.359,46.670,46.748,46.541,46.080,45.482,44.894,44.427,44.112,43.913,43.764,
-43.624,43.483,43.353,43.233,43.104,42.946,42.750,42.535,42.327,42.149,42.003,41.877,41.751,41.600,41.403,41.146,
-40.832,40.482,40.127,39.784,39.450,39.107,38.740,38.358,37.981,37.621,37.264,36.874,36.431,35.949,35.477,35.066,
-34.732,34.452,34.187,33.914,33.636,33.373,33.133,32.907,32.680,32.452,32.244,32.086,31.991,31.954,31.950,31.955,
-31.956,31.951,31.940,31.922,31.890,31.836,31.754,31.648,31.535,31.445,31.406,31.425,31.483,31.537,31.557,31.540,
-31.512,31.501,31.505,31.488,31.414,31.274,31.103,30.952,30.845,30.763,30.656,30.485,30.253,29.989,29.726,29.476,
-29.227,28.972,28.720,28.492,28.295,28.116,27.928,27.719,27.499,27.296,27.129,26.990,26.852,26.688,26.485,26.238,
-25.950,25.628,25.285,24.949,24.648,24.387,24.143,23.876,23.557,23.190,22.800,22.413,22.041,21.680,21.337,21.028,
-20.768,20.547,20.328,20.068,19.755,19.409,19.069,18.752,18.442,18.115,17.765,17.417,17.099,16.813,16.529,16.207,
-15.841,15.461,15.102,14.773,14.440,14.061,13.624,13.167,12.744,12.384,12.068,11.744,11.373,10.955,10.525,10.119,
-9.751,9.406,9.058,8.694,8.319,7.943,7.572,7.200,6.813,6.404,5.977,5.544,5.118,4.703,4.294,3.879,
-3.449,3.005,2.557,2.117,1.693,1.281,.875,.468,.059,-.353,-.769,-1.201,-1.659,-2.149,-2.660,-3.171,
--3.656,-4.098,-4.498,-4.878,-5.270,-5.698,-6.169,-6.659,-7.131,-7.553,-7.919,-8.250,-8.579,-8.929,-9.300,-9.676,
--10.046,-10.418,-10.813,-11.247,-11.710,-12.172,-12.601,-12.986,-13.345,-13.707,-14.089,-14.482,-14.858,-15.197,-15.500,-15.796,
--16.117,-16.479,-16.869,-17.257,-17.617,-17.948,-18.269,-18.605,-18.963,-19.325,-19.661,-19.954,-20.216,-20.481,-20.788,-21.150,
--21.549,-21.943,-22.291,-22.572,-22.795,-22.987,-23.178,-23.383,-23.606,-23.839,-24.077,-24.315,-24.553,-24.788,-25.010,-25.213,
--25.390,-25.549,-25.700,-25.851,-26.006,-26.162,-26.314,-26.459,-26.593,-26.707,-26.794,-26.853,-26.897,-26.944,-27.003,-27.060,
--27.090,-27.073,-27.019,-26.969,-26.966,-27.022,-27.112,-27.191,-27.221,-27.201,-27.156,-27.118,-27.108,-27.126,-27.162,-27.198,
--27.218,-27.211,-27.182,-27.148,-27.137,-27.161,-27.201,-27.220,-27.183,-27.090,-26.975,-26.881,-26.825,-26.793,-26.749,-26.674,
--26.575,-26.475,-26.389,-26.317,-26.245,-26.164,-26.076,-25.988,-25.907,-25.833,-25.766,-25.699,-25.627,-25.534,-25.411,-25.261,
--25.098,-24.940,-24.793,-24.643,-24.472,-24.275,-24.065,-23.860,-23.672,-23.497,-23.328,-23.163,-23.003,-22.847,-22.684,-22.501,
--22.296,-22.082,-21.872,-21.666,-21.451,-21.221,-20.982,-20.751,-20.531,-20.302,-20.045,-19.762,-19.487,-19.259,-19.086,-18.929,
--18.742,-18.508,-18.253,-18.012,-17.794,-17.579,-17.357,-17.170,-17.093,-17.166,-17.339,-17.486,-17.495,-17.355,-17.158,-17.015,
--16.959,-16.925,-16.820,-16.618,-16.385,-16.217,-16.143,-16.102,-16.006,-15.821,-15.607,-15.456,-15.404,-15.390,-15.305,-15.082,
--14.744,-14.387,-14.105,-13.931,-13.833,-13.759,-13.681,-13.611,-13.578,-13.596,-13.647,-13.680,-13.646,-13.517,-13.310,-13.075,
--12.870,-12.722,-12.619,-12.523,-12.412,-12.302,-12.238,-12.243,-12.292,-12.312,-12.240,-12.065,-11.836,-11.620,-11.450,-11.300,
--11.121,-10.886,-10.617,-10.367,-10.176,-10.049,-9.955,-9.864,-9.766,-9.673,-9.601,-9.547,-9.493,-9.411,-9.284,-9.112,
--8.921,-8.748,-8.632,-8.594,-8.615,-8.641,-8.607,-8.473,-8.246,-7.973,-7.712,-7.489,-7.292,-7.090,-6.862,-6.617,
--6.370,-6.126,-5.866,-5.576,-5.267,-4.973,-4.712,-4.457,-4.151,-3.774,-3.397,-3.159,-3.159,-3.352,-3.559,-3.615,
--3.542,-3.590,-4.043,-4.934,-5.878,-6.223,-5.442,-3.507,-.949,1.444,3.090,3.892,4.169,4.338,4.628,5.015,
-5.387,5.714,6.085,6.581,7.138,7.556,7.631,7.307,6.700,6.003,5.356,4.800,4.322,3.932,3.674,3.580,
-3.624,3.729,3.822,3.883,3.947,4.051,4.197,4.344,4.446,4.475,4.431,4.323,4.163,3.972,3.785,3.641,
-3.555,3.510,3.463,3.381,3.263,3.131,3.001,2.870,2.718,2.532,2.327,2.129,1.964,1.835,1.725,1.612,
-1.483,1.329,1.152,.960,.777,.637,.570,.574,.611,.609,.505,.271,-.067,-.448,-.806,-1.101,
--1.332,-1.531,-1.740,-1.992,-2.296,-2.638,-2.991,-3.330,-3.642,-3.929,-4.203,-4.478,-4.757,-5.037,-5.304,-5.545,
--5.753,-5.938,-6.117,-6.307,-6.509,-6.714,-6.903,-7.070,-7.228,-7.397,-7.592,-7.808,-8.019,-8.197,-8.328,-8.421,
--8.501,-8.590,-8.694,-8.796,-8.873,-8.911,-8.919,-8.925,-8.957,-9.020,-9.090,-9.130,-9.117,-9.059,-8.993,-8.957,
--8.961,-8.982,-8.986,-8.952,-8.885,-8.800,-8.711,-8.626,-8.555,-8.514,-8.510,-8.527,-8.531,-8.493,-8.427,-8.378,
--8.375,-8.369,-8.238,-7.867,-7.268,-6.627,-6.228,-6.287,-6.815,-7.600,-8.335,-8.794,-8.936,-8.877,-8.782,-8.756,
--8.816,-8.924,-9.044,-9.166,-9.291,-9.417,-9.536,-9.649,-9.767,-9.907,-10.070,-10.243,-10.404,-10.548,-10.685,-10.834,
--10.999,-11.172,-11.336,-11.482,-11.614,-11.740,-11.863,-11.976,-12.071,-12.140,-12.186,-12.215,-12.245,-12.294,-12.383,-12.522,
--12.704,-12.901,-13.067,-13.163,-13.181,-13.154,-13.146,-13.214,-13.377,-13.606,-13.840,-14.030,-14.163,-14.263,-14.363,-14.481,
--14.606,-14.719,-14.812,-14.893,-14.970,-15.039,-15.083,-15.098,-15.097,-15.104,-15.131,-15.163,-15.169,-15.138,-15.098,-15.096,
--15.160,-15.275,-15.395,-15.483,-15.543,-15.612,-15.720,-15.856,-15.976,-16.038,-16.034,-15.994,-15.947,-15.892,-15.805,-15.667,
--15.495,-15.339,-15.245,-15.223,-15.246,-15.267,-15.259,-15.220,-15.166,-15.106,-15.040,-14.959,-14.862,-14.759,-14.665,-14.593,
--14.547,-14.520,-14.497,-14.460,-14.398,-14.308,-14.200,-14.089,-13.985,-13.884,-13.778,-13.662,-13.539,-13.419,-13.308,-13.202,
--13.095,-12.982,-12.868,-12.764,-12.673,-12.589,-12.500,-12.399,-12.290,-12.181,-12.077,-11.973,-11.864,-11.753,-11.650,-11.572,
--11.522,-11.489,-11.454,-11.402,-11.333,-11.265,-11.217,-11.195,-11.187,-11.171,-11.130,-11.065,-10.995,-10.943,-10.918,-10.908,
--10.890,-10.846,-10.775,-10.695,-10.628,-10.590,-10.578,-10.583,-10.588,-10.577,-10.537,-10.466,-10.376,-10.286,-10.218,-10.180,
--10.159,-10.133,-10.088,-10.025,-9.960,-9.906,-9.862,-9.819,-9.772,-9.727,-9.697,-9.690,-9.702,-9.716,-9.721,-9.716,
--9.707,-9.699,-9.692,-9.682,-9.668,-9.654,-9.641,-9.629,-9.611,-9.585,-9.554,-9.525,-9.496,-9.455,-9.395,-9.314,
--9.227,-9.150,-9.089,-9.037,-8.981,-8.914,-8.837,-8.757,-8.680,-8.608,-8.542,-8.486,-8.435,-8.379,-8.300,-8.190,
--8.063,-7.945,-7.854,-7.783,-7.704,-7.593,-7.455,-7.319,-7.216,-7.144,-7.071,-6.961,-6.808,-6.635,-6.476,-6.345,
--6.232,-6.120,-6.011,-5.917,-5.837,-5.735,-5.563,-5.297,-4.970,-4.658,-4.428,-4.286,-4.179,-4.048,-3.881,-3.726,
--3.645,-3.651,-3.694,-3.691,-3.594,-3.427,-3.259,-3.149,-3.098,-3.056,-2.965,-2.804,-2.599,-2.401,-2.240,-2.114,
--1.992,-1.844,-1.660,-1.451,-1.239,-1.036,-.844,-.656,-.466,-.280,-.108,.043,.183,.332,.508,.709,
-.915,1.104,1.275,1.453,1.665,1.917,2.178,2.408,2.590,2.749,2.932,3.172,3.462,3.765,4.046,4.297,
-4.533,4.764,4.992,5.207,5.411,5.618,5.839,6.071,6.302,6.525,6.758,7.023,7.328,7.657,7.991,8.336,
-8.717,9.148,9.594,9.988,10.285,10.502,10.692,10.874,10.988,10.943,10.736,10.515,10.514,10.887,11.570,12.320,
-12.903,13.289,13.681,14.350,15.422,16.780,18.166,19.348,20.231,20.824,21.142,21.169,20.903,20.424,19.874,19.370,
-18.922,18.450,17.894,17.296,16.773,16.415,16.202,16.028,15.817,15.581,15.387,15.254,15.102,14.818,14.378,13.891,
-13.520,13.331,13.234,13.063,12.722,12.278,11.900,11.720,11.735,11.836,11.918,11.954,11.979,12.008,12.003,11.906,
-11.711,11.482,11.305,11.204,11.129,11.012,10.846,10.696,10.626,10.610,10.516,10.185,9.543,8.652,7.653,6.679,
-5.783,4.968,4.243,3.661,3.279,3.082,2.956,2.736,2.313,1.706,1.058,.535,.229,.116,.097,.079,
-.028,-.039,-.100,-.164,-.268,-.445,-.691,-.974,-1.251,-1.505,-1.744,-1.983,-2.223,-2.444,-2.620,-2.739,
--2.810,-2.862,-2.927,-3.023,-3.146,-3.274,-3.383,-3.464,-3.524,-3.585,-3.665,-3.761,-3.852,-3.915,-3.940,-3.933,
--3.908,-3.871,-3.818,-3.745,-3.662,-3.590,-3.549,-3.538,-3.534,-3.516,-3.481,-3.455,-3.475,-3.563,-3.713,-3.899,
--4.093,-4.279,-4.452,-4.613,-4.758,-4.877,-4.962,-5.007,-5.012,-4.982,-4.925,-4.851,-4.766,-4.673,-4.573,-4.466,
--4.355,-4.248,-4.145,-4.038,-3.915,-3.766,-3.596,-3.418,-3.251,-3.107,-2.983,-2.866,-2.740,-2.589,-2.400,-2.170,
--1.902,-1.603,-1.279,-.925,-.532,-.101,.349,.786,1.177,1.518,1.835,2.171,2.555,2.986,3.443,3.901,
-4.355,4.823,5.321,5.847,6.378,6.883,7.349,7.782,8.202,8.626,9.051,9.467,9.867,10.253,10.634,11.016,
-11.390,11.749,12.095,12.445,12.821,13.229,13.654,14.071,14.464,14.840,15.217,15.603,15.987,16.348,16.679,16.995,
-17.320,17.669,18.031,18.382,18.716,19.050,19.415,19.820,20.243,20.640,20.982,21.270,21.539,21.819,22.124,22.439,
-22.741,23.016,23.262,23.486,23.696,23.902,24.114,24.343,24.594,24.862,25.138,25.408,25.663,25.888,26.075,26.220,
-26.331,26.421,26.499,26.556,26.570,26.528,26.439,26.341,26.270,26.244,26.247,26.250,26.235,26.202,26.165,26.133,
-26.101,26.061,26.012,25.960,25.909,25.854,25.784,25.692,25.592,25.509,25.462,25.453,25.458,25.445,25.391,25.300,
-25.194,25.100,25.029,24.967,24.888,24.768,24.607,24.432,24.271,24.134,24.000,23.832,23.606,23.327,23.032,22.763,
-22.547,22.391,22.288,22.227,22.201,22.194,22.184,22.143,22.055,21.919,21.756,21.603,21.494,21.454,22.080,22.071,
-22.038,21.962,21.855,21.761,21.727,21.770,21.856,21.913,21.877,21.741,21.565,21.441,21.440,21.575,21.795,22.022,
-22.192,22.277,22.289,22.265,22.255,22.296,22.400,22.549,22.708,22.853,22.993,23.175,23.452,23.841,24.307,24.774,
-25.170,25.461,25.662,25.807,25.923,26.017,26.084,26.130,26.179,26.265,26.399,26.558,26.693,26.766,26.785,26.807,
-26.907,27.124,27.419,27.693,27.849,27.855,27.772,27.713,27.774,27.982,28.287,28.613,28.904,29.145,29.346,29.521,
-29.679,29.840,30.036,30.296,30.623,30.976,31.295,31.539,31.714,31.861,32.023,32.207,32.388,32.529,32.612,32.649,
-32.671,32.707,32.775,32.880,33.014,33.161,33.290,33.370,33.383,33.336,33.261,33.195,33.160,33.153,33.152,33.137,
-33.106,33.077,33.071,33.100,33.148,33.188,33.198,33.185,33.184,33.228,33.315,33.403,33.436,33.394,33.321,33.300,
-33.389,33.586,33.830,34.065,34.284,34.524,34.815,35.142,35.458,35.762,36.135,36.698,37.494,38.402,39.180,39.625,
-39.749,39.795,40.084,40.784,41.789,42.799,43.541,43.957,44.207,44.514,44.974,45.500,45.918,46.120,46.141,46.111,
-46.132,46.212,46.289,46.308,46.275,46.236,46.216,46.186,46.094,45.930,45.748,45.635,45.644,45.751,45.881,45.971,
-46.006,46.014,46.019,46.005,45.929,45.763,45.523,45.260,45.029,44.855,44.736,44.668,44.666,44.754,44.947,45.227,
-45.551,45.870,46.152,46.383,46.557,46.674,46.737,46.759,46.750,46.698,46.558,46.277,45.833,45.279,44.746,44.393,
-44.341,44.634,45.230,46.040,46.956,47.864,48.631,49.115,49.188,48.804,48.034,47.056,46.085,45.290,44.729,44.365,
-44.115,43.911,43.731,43.575,43.441,43.303,43.130,42.918,42.695,42.509,42.389,42.322,42.258,42.142,41.948,41.683,
-41.382,41.074,40.769,40.460,40.136,39.795,39.445,39.096,38.752,38.403,38.035,37.633,37.197,36.737,36.274,35.831,
-35.424,35.060,34.736,34.447,34.187,33.948,33.722,33.500,33.273,33.035,32.793,32.561,32.359,32.205,32.111,32.076,
-32.085,32.118,32.155,32.184,32.205,32.216,32.212,32.186,32.141,32.096,32.079,32.108,32.167,32.215,32.210,32.143,
-32.051,31.986,31.974,31.990,31.978,31.894,31.741,31.566,31.417,31.303,31.191,31.037,30.829,30.589,30.353,30.135,
-29.916,29.667,29.385,29.095,28.837,28.628,28.456,28.293,28.126,27.964,27.823,27.701,27.574,27.408,27.182,26.902,
-26.589,26.262,25.933,25.612,25.310,25.033,24.775,24.508,24.202,23.845,23.450,23.049,22.664,22.301,21.958,21.639,
-21.358,21.121,20.913,20.692,20.423,20.101,19.754,19.418,19.104,18.795,18.465,18.114,17.769,17.461,17.192,16.933,
-16.645,16.310,15.944,15.571,15.200,14.816,14.401,13.960,13.525,13.127,12.776,12.444,12.095,11.708,11.296,10.889,
-10.511,10.159,9.811,9.447,9.060,8.662,8.268,7.887,7.513,7.132,6.732,6.314,5.888,5.468,5.061,4.654,
-4.227,3.770,3.294,2.829,2.405,2.025,1.667,1.294,.886,.452,.018,-.399,-.811,-1.247,-1.726,-2.240,
--2.749,-3.213,-3.618,-3.983,-4.351,-4.755,-5.205,-5.683,-6.160,-6.610,-7.020,-7.392,-7.741,-8.081,-8.426,-8.784,
--9.158,-9.549,-9.963,-10.403,-10.864,-11.332,-11.784,-12.202,-12.586,-12.949,-13.309,-13.675,-14.039,-14.385,-14.706,-15.015,
--15.329,-15.666,-16.022,-16.382,-16.729,-17.056,-17.378,-17.708,-18.056,-18.413,-18.760,-19.084,-19.387,-19.685,-20.000,-20.345,
--20.715,-21.089,-21.438,-21.742,-21.993,-22.204,-22.399,-22.605,-22.835,-23.089,-23.357,-23.623,-23.880,-24.122,-24.346,-24.550,
--24.736,-24.914,-25.096,-25.287,-25.481,-25.664,-25.820,-25.951,-26.069,-26.186,-26.301,-26.404,-26.485,-26.547,-26.606,-26.671,
--26.732,-26.760,-26.740,-26.685,-26.639,-26.645,-26.713,-26.809,-26.882,-26.901,-26.872,-26.835,-26.826,-26.855,-26.909,-26.961,
--26.993,-26.998,-26.979,-26.947,-26.916,-26.899,-26.901,-26.908,-26.897,-26.850,-26.773,-26.689,-26.627,-26.595,-26.576,-26.541,
--26.476,-26.385,-26.287,-26.198,-26.124,-26.057,-25.991,-25.921,-25.844,-25.758,-25.667,-25.576,-25.492,-25.410,-25.320,-25.207,
--25.067,-24.908,-24.746,-24.586,-24.424,-24.254,-24.075,-23.895,-23.721,-23.550,-23.374,-23.194,-23.019,-22.862,-22.718,-22.564,
--22.376,-22.151,-21.912,-21.686,-21.485,-21.291,-21.082,-20.851,-20.613,-20.384,-20.163,-19.934,-19.688,-19.439,-19.213,-19.024,
--18.853,-18.668,-18.452,-18.215,-17.979,-17.753,-17.530,-17.313,-17.143,-17.085,-17.172,-17.359,-17.536,-17.594,-17.505,-17.332,
--17.168,-17.056,-16.965,-16.833,-16.639,-16.426,-16.262,-16.170,-16.110,-16.018,-15.872,-15.713,-15.598,-15.542,-15.489,-15.358,
--15.104,-14.760,-14.406,-14.115,-13.912,-13.779,-13.689,-13.637,-13.634,-13.683,-13.764,-13.830,-13.835,-13.756,-13.601,-13.404,
--13.210,-13.056,-12.953,-12.888,-12.835,-12.776,-12.717,-12.678,-12.666,-12.666,-12.638,-12.553,-12.412,-12.245,-12.079,-11.910,
--11.709,-11.453,-11.159,-10.881,-10.677,-10.561,-10.496,-10.427,-10.327,-10.217,-10.137,-10.105,-10.089,-10.029,-9.884,-9.669,
--9.450,-9.295,-9.231,-9.233,-9.241,-9.207,-9.110,-8.961,-8.782,-8.591,-8.395,-8.194,-7.984,-7.753,-7.491,-7.200,
--6.898,-6.622,-6.398,-6.227,-6.077,-5.900,-5.657,-5.335,-4.948,-4.539,-4.179,-3.946,-3.892,-3.992,-4.140,-4.205,
--4.153,-4.105,-4.284,-4.812,-5.517,-5.915,-5.453,-3.870,-1.436,1.142,3.106,4.073,4.209,4.034,4.047,4.429,
-5.040,5.634,6.083,6.432,6.772,7.095,7.260,7.107,6.591,5.817,4.967,4.183,3.525,3.003,2.627,2.426,
-2.402,2.505,2.638,2.726,2.755,2.772,2.834,2.954,3.100,3.218,3.266,3.230,3.118,2.946,2.744,2.550,
-2.398,2.298,2.228,2.149,2.034,1.887,1.732,1.593,1.468,1.338,1.188,1.018,.842,.677,.531,.397,
-.262,.108,-.086,-.331,-.614,-.895,-1.111,-1.212,-1.199,-1.129,-1.086,-1.140,-1.306,-1.543,-1.792,-2.009,
--2.186,-2.345,-2.520,-2.735,-3.001,-3.310,-3.642,-3.966,-4.258,-4.509,-4.739,-4.982,-5.269,-5.600,-5.941,-6.244,
--6.474,-6.633,-6.750,-6.867,-7.008,-7.174,-7.350,-7.522,-7.683,-7.835,-7.985,-8.136,-8.293,-8.463,-8.643,-8.821,
--8.974,-9.087,-9.162,-9.218,-9.282,-9.361,-9.440,-9.495,-9.518,-9.529,-9.552,-9.597,-9.648,-9.673,-9.657,-9.609,
--9.559,-9.526,-9.508,-9.490,-9.460,-9.421,-9.378,-9.330,-9.265,-9.180,-9.087,-9.003,-8.933,-8.865,-8.796,-8.755,
--8.793,-8.922,-9.059,-9.034,-8.694,-8.036,-7.266,-6.716,-6.648,-7.097,-7.844,-8.566,-9.028,-9.195,-9.194,-9.184,
--9.236,-9.320,-9.373,-9.376,-9.374,-9.430,-9.570,-9.768,-9.975,-10.156,-10.307,-10.444,-10.573,-10.696,-10.811,-10.932,
--11.073,-11.241,-11.424,-11.594,-11.733,-11.841,-11.933,-12.027,-12.125,-12.220,-12.299,-12.356,-12.400,-12.445,-12.510,-12.610,
--12.751,-12.925,-13.107,-13.257,-13.336,-13.334,-13.280,-13.241,-13.284,-13.441,-13.689,-13.961,-14.191,-14.350,-14.455,-14.550,
--14.665,-14.802,-14.936,-15.044,-15.122,-15.177,-15.222,-15.262,-15.296,-15.324,-15.348,-15.366,-15.367,-15.346,-15.312,-15.292,
--15.313,-15.384,-15.480,-15.570,-15.640,-15.707,-15.801,-15.925,-16.046,-16.114,-16.104,-16.041,-15.981,-15.961,-15.969,-15.948,
--15.851,-15.677,-15.480,-15.326,-15.251,-15.239,-15.243,-15.227,-15.185,-15.138,-15.104,-15.082,-15.056,-15.010,-14.940,-14.859,
--14.785,-14.724,-14.673,-14.616,-14.542,-14.446,-14.337,-14.225,-14.117,-14.011,-13.904,-13.790,-13.672,-13.552,-13.435,-13.316,
--13.192,-13.061,-12.934,-12.823,-12.736,-12.667,-12.601,-12.524,-12.431,-12.329,-12.224,-12.116,-11.999,-11.868,-11.731,-11.604,
--11.503,-11.431,-11.373,-11.311,-11.233,-11.145,-11.070,-11.026,-11.018,-11.033,-11.044,-11.033,-10.997,-10.950,-10.911,-10.887,
--10.870,-10.841,-10.788,-10.712,-10.630,-10.562,-10.519,-10.499,-10.489,-10.476,-10.448,-10.398,-10.328,-10.247,-10.172,-10.118,
--10.090,-10.077,-10.059,-10.020,-9.957,-9.882,-9.810,-9.754,-9.715,-9.689,-9.673,-9.665,-9.664,-9.668,-9.672,-9.674,
--9.675,-9.676,-9.674,-9.667,-9.649,-9.619,-9.583,-9.544,-9.512,-9.492,-9.491,-9.506,-9.527,-9.532,-9.504,-9.442,
--9.363,-9.288,-9.230,-9.182,-9.124,-9.046,-8.957,-8.875,-8.814,-8.769,-8.724,-8.667,-8.596,-8.517,-8.432,-8.331,
--8.209,-8.076,-7.956,-7.871,-7.820,-7.778,-7.716,-7.623,-7.513,-7.406,-7.302,-7.178,-7.005,-6.779,-6.523,-6.278,
--6.076,-5.931,-5.844,-5.813,-5.825,-5.844,-5.811,-5.677,-5.436,-5.142,-4.877,-4.694,-4.578,-4.467,-4.301,-4.083,
--3.876,-3.748,-3.715,-3.725,-3.696,-3.583,-3.413,-3.258,-3.176,-3.162,-3.155,-3.086,-2.929,-2.714,-2.506,-2.350,
--2.248,-2.159,-2.035,-1.850,-1.618,-1.370,-1.135,-.920,-.715,-.510,-.312,-.137,.003,.120,.245,.404,
-.594,.784,.945,1.076,1.210,1.385,1.608,1.851,2.073,2.262,2.447,2.679,2.982,3.337,3.694,4.012,
-4.278,4.504,4.706,4.892,5.073,5.271,5.511,5.799,6.109,6.411,6.693,6.979,7.303,7.665,8.027,8.346,
-8.616,8.882,9.193,9.548,9.891,10.162,10.353,10.509,10.669,10.807,10.853,10.778,10.671,10.709,11.033,11.630,
-12.336,12.971,13.492,14.033,14.794,15.880,17.228,18.654,19.977,21.086,21.921,22.422,22.527,22.230,21.627,20.886,
-20.142,19.431,18.705,17.931,17.168,16.537,16.122,15.892,15.739,15.577,15.406,15.277,15.199,15.087,14.825,14.380,
-13.850,13.397,13.115,12.958,12.795,12.533,12.204,11.922,11.778,11.769,11.817,11.863,11.908,11.988,12.098,12.168,
-12.113,11.915,11.647,11.414,11.265,11.160,11.027,10.836,10.636,10.491,10.400,10.266,9.955,9.386,8.585,7.659,
-6.720,5.840,5.056,4.410,3.949,3.690,3.567,3.431,3.126,2.581,1.866,1.143,.573,.223,.055,-.022,
--.080,-.137,-.182,-.210,-.248,-.336,-.499,-.729,-.995,-1.265,-1.529,-1.789,-2.048,-2.299,-2.523,-2.706,
--2.843,-2.943,-3.024,-3.105,-3.202,-3.319,-3.447,-3.570,-3.673,-3.750,-3.809,-3.860,-3.909,-3.952,-3.976,-3.978,
--3.956,-3.913,-3.850,-3.767,-3.674,-3.593,-3.547,-3.540,-3.552,-3.548,-3.510,-3.453,-3.426,-3.473,-3.606,-3.796,
--3.991,-4.157,-4.289,-4.408,-4.535,-4.675,-4.809,-4.914,-4.973,-4.986,-4.957,-4.895,-4.804,-4.691,-4.564,-4.435,
--4.317,-4.213,-4.118,-4.016,-3.890,-3.733,-3.553,-3.370,-3.207,-3.075,-2.966,-2.862,-2.744,-2.601,-2.433,-2.247,
--2.046,-1.825,-1.571,-1.266,-.899,-.470,-.003,.466,.902,1.287,1.630,1.960,2.305,2.679,3.078,3.492,
-3.922,4.381,4.881,5.418,5.967,6.495,6.980,7.422,7.841,8.255,8.671,9.083,9.484,9.874,10.262,10.655,
-11.050,11.432,11.791,12.131,12.472,12.831,13.211,13.601,13.980,14.340,14.688,15.038,15.396,15.758,16.114,16.461,
-16.810,17.171,17.539,17.898,18.235,18.556,18.884,19.246,19.643,20.047,20.421,20.748,21.037,21.322,21.629,21.960,
-22.295,22.613,22.901,23.162,23.407,23.647,23.889,24.133,24.376,24.615,24.848,25.081,25.322,25.573,25.822,26.042,
-26.215,26.340,26.441,26.543,26.647,26.728,26.750,26.701,26.607,26.514,26.458,26.439,26.429,26.399,26.345,26.287,
-26.247,26.229,26.215,26.183,26.122,26.041,25.956,25.879,25.813,25.753,25.694,25.630,25.558,25.472,25.370,25.259,
-25.150,25.055,24.972,24.883,24.763,24.598,24.395,24.180,23.981,23.813,23.667,23.521,23.360,23.187,23.025,22.898,
-22.813,22.759,22.716,22.672,22.628,22.591,22.564,22.538,22.496,22.427,22.332,22.231,22.147,22.098,22.080,22.521,
-22.338,22.103,21.857,21.647,21.513,21.466,21.482,21.512,21.509,21.458,21.381,21.324,21.328,21.411,21.562,21.760,
-21.974,22.171,22.316,22.388,22.399,22.398,22.454,22.610,22.847,23.091,23.268,23.353,23.402,23.509,23.747,24.114,
-24.538,24.924,25.213,25.402,25.527,25.630,25.728,25.821,25.910,26.012,26.150,26.330,26.526,26.688,26.780,26.810,
-26.835,26.928,27.119,27.367,27.577,27.667,27.631,27.552,27.553,27.716,28.025,28.389,28.704,28.925,29.078,29.230,
-29.428,29.678,29.958,30.245,30.534,30.826,31.114,31.376,31.591,31.762,31.913,32.069,32.233,32.386,32.501,32.569,
-32.605,32.639,32.695,32.780,32.885,32.995,33.095,33.175,33.225,33.238,33.214,33.163,33.103,33.050,33.014,32.992,
-32.977,32.965,32.962,32.976,33.006,33.043,33.068,33.079,33.098,33.159,33.278,33.424,33.528,33.530,33.437,33.334,
-33.331,33.487,33.768,34.078,34.339,34.558,34.804,35.137,35.548,35.977,36.391,36.837,37.408,38.140,38.931,39.591,
-39.988,40.178,40.396,40.889,41.719,42.708,43.563,44.096,44.346,44.525,44.820,45.252,45.680,45.941,45.994,45.934,
-45.892,45.919,45.964,45.951,45.871,45.785,45.760,45.790,45.797,45.706,45.530,45.363,45.303,45.369,45.492,45.578,
-45.592,45.576,45.594,45.675,45.787,45.879,45.929,45.940,45.907,45.782,45.505,45.074,44.592,44.238,44.171,44.430,
-44.917,45.469,45.949,46.312,46.579,46.782,46.928,47.010,47.027,46.997,46.922,46.762,46.447,45.935,45.288,44.686,
-44.365,44.515,45.188,46.285,47.604,48.921,50.045,50.830,51.180,51.046,50.456,49.519,48.418,47.346,46.440,45.738,
-45.196,44.739,44.324,43.958,43.673,43.482,43.351,43.222,43.054,42.857,42.683,42.574,42.527,42.483,42.370,42.152,
-41.856,41.540,41.252,40.991,40.721,40.410,40.058,39.695,39.353,39.029,38.692,38.310,37.878,37.422,36.977,36.558,
-36.156,35.757,35.364,35.002,34.700,34.463,34.269,34.083,33.885,33.673,33.455,33.231,32.990,32.729,32.471,32.264,
-32.155,32.160,32.249,32.367,32.467,32.533,32.575,32.615,32.666,32.740,32.843,32.973,33.107,33.195,33.183,33.052,
-32.841,32.639,32.522,32.507,32.538,32.530,32.433,32.262,32.075,31.915,31.780,31.628,31.429,31.191,30.955,30.749,
-30.564,30.359,30.098,29.789,29.478,29.213,29.007,28.839,28.682,28.528,28.391,28.281,28.179,28.043,27.834,27.545,
-27.204,26.855,26.524,26.218,25.930,25.652,25.381,25.105,24.807,24.468,24.090,23.692,23.302,22.938,22.602,22.289,
-21.998,21.735,21.498,21.266,21.007,20.704,20.369,20.037,19.735,19.458,19.175,18.859,18.509,18.157,17.839,17.562,
-17.307,17.036,16.728,16.382,16.009,15.615,15.201,14.772,14.345,13.938,13.558,13.194,12.821,12.429,12.025,11.632,
-11.263,10.915,10.567,10.199,9.807,9.401,8.999,8.609,8.230,7.853,7.469,7.071,6.660,6.244,5.835,5.434,
-5.030,4.601,4.135,3.645,3.170,2.746,2.381,2.041,1.679,1.265,.814,.366,-.050,-.441,-.847,-1.299,
--1.793,-2.284,-2.729,-3.117,-3.479,-3.862,-4.294,-4.764,-5.235,-5.676,-6.079,-6.458,-6.830,-7.201,-7.568,-7.930,
--8.295,-8.680,-9.099,-9.554,-10.033,-10.513,-10.973,-11.400,-11.796,-12.173,-12.545,-12.920,-13.292,-13.649,-13.983,-14.297,
--14.605,-14.921,-15.250,-15.583,-15.910,-16.226,-16.539,-16.863,-17.200,-17.545,-17.881,-18.202,-18.512,-18.826,-19.160,-19.518,
--19.893,-20.270,-20.631,-20.958,-21.238,-21.469,-21.665,-21.854,-22.062,-22.306,-22.580,-22.865,-23.138,-23.389,-23.619,-23.833,
--24.031,-24.218,-24.400,-24.591,-24.801,-25.021,-25.233,-25.414,-25.556,-25.673,-25.785,-25.900,-26.012,-26.108,-26.185,-26.252,
--26.316,-26.370,-26.395,-26.382,-26.345,-26.325,-26.356,-26.440,-26.537,-26.598,-26.599,-26.559,-26.526,-26.535,-26.589,-26.660,
--26.711,-26.725,-26.710,-26.684,-26.667,-26.662,-26.666,-26.668,-26.656,-26.626,-26.577,-26.520,-26.466,-26.422,-26.384,-26.342,
--26.287,-26.221,-26.151,-26.085,-26.022,-25.961,-25.897,-25.829,-25.756,-25.674,-25.580,-25.478,-25.377,-25.288,-25.205,-25.115,
--25.000,-24.859,-24.702,-24.547,-24.397,-24.243,-24.077,-23.901,-23.729,-23.570,-23.419,-23.261,-23.087,-22.910,-22.749,-22.607,
--22.462,-22.281,-22.049,-21.789,-21.540,-21.329,-21.147,-20.961,-20.746,-20.505,-20.262,-20.035,-19.822,-19.610,-19.386,-19.159,
--18.941,-18.740,-18.553,-18.369,-18.182,-17.988,-17.779,-17.554,-17.336,-17.175,-17.130,-17.225,-17.412,-17.588,-17.652,-17.574,
--17.402,-17.221,-17.085,-16.982,-16.865,-16.702,-16.512,-16.340,-16.217,-16.132,-16.050,-15.946,-15.828,-15.717,-15.619,-15.518,
--15.385,-15.206,-14.992,-14.757,-14.510,-14.248,-13.985,-13.760,-13.626,-13.611,-13.695,-13.813,-13.892,-13.891,-13.812,-13.686,
--13.550,-13.425,-13.319,-13.237,-13.180,-13.150,-13.138,-13.130,-13.113,-13.071,-12.995,-12.887,-12.759,-12.632,-12.519,-12.409,
--12.269,-12.065,-11.797,-11.509,-11.270,-11.127,-11.065,-11.021,-10.938,-10.807,-10.679,-10.612,-10.612,-10.614,-10.531,-10.329,
--10.064,-9.848,-9.768,-9.821,-9.914,-9.933,-9.821,-9.607,-9.370,-9.168,-9.007,-8.847,-8.651,-8.409,-8.137,-7.854,
--7.572,-7.300,-7.057,-6.872,-6.749,-6.646,-6.484,-6.193,-5.764,-5.266,-4.819,-4.527,-4.426,-4.462,-4.530,-4.535,
--4.465,-4.411,-4.518,-4.866,-5.344,-5.618,-5.255,-3.970,-1.858,.580,2.655,3.859,4.132,3.858,3.592,3.710,
-4.238,4.936,5.542,5.958,6.254,6.521,6.731,6.738,6.396,5.692,4.763,3.814,2.999,2.373,1.923,1.629,
-1.481,1.463,1.525,1.593,1.616,1.597,1.582,1.618,1.717,1.849,1.969,2.040,2.046,1.979,1.846,1.665,
-1.473,1.310,1.194,1.113,1.031,.914,.758,.581,.408,.250,.103,-.046,-.204,-.372,-.548,-.724,
--.895,-1.059,-1.227,-1.424,-1.673,-1.972,-2.277,-2.517,-2.635,-2.629,-2.555,-2.499,-2.518,-2.614,-2.747,-2.873,
--2.981,-3.092,-3.235,-3.426,-3.658,-3.919,-4.199,-4.493,-4.784,-5.053,-5.287,-5.499,-5.729,-6.013,-6.355,-6.715,
--7.029,-7.254,-7.390,-7.476,-7.562,-7.678,-7.825,-7.995,-8.175,-8.356,-8.522,-8.656,-8.750,-8.826,-8.927,-9.087,
--9.300,-9.515,-9.669,-9.734,-9.738,-9.745,-9.798,-9.893,-9.989,-10.047,-10.067,-10.079,-10.110,-10.159,-10.197,-10.193,
--10.145,-10.076,-10.010,-9.960,-9.923,-9.899,-9.890,-9.893,-9.889,-9.848,-9.756,-9.631,-9.506,-9.404,-9.321,-9.246,
--9.196,-9.219,-9.347,-9.531,-9.632,-9.499,-9.089,-8.540,-8.105,-8.001,-8.257,-8.702,-9.088,-9.267,-9.266,-9.237,
--9.306,-9.477,-9.644,-9.696,-9.622,-9.515,-9.506,-9.658,-9.940,-10.258,-10.527,-10.718,-10.849,-10.949,-11.040,-11.125,
--11.211,-11.313,-11.443,-11.597,-11.756,-11.897,-12.011,-12.103,-12.191,-12.284,-12.377,-12.456,-12.514,-12.557,-12.603,-12.678,
--12.798,-12.965,-13.159,-13.348,-13.490,-13.549,-13.521,-13.436,-13.356,-13.350,-13.459,-13.674,-13.942,-14.198,-14.399,-14.545,
--14.667,-14.796,-14.939,-15.079,-15.189,-15.258,-15.296,-15.329,-15.375,-15.438,-15.504,-15.553,-15.570,-15.556,-15.526,-15.502,
--15.504,-15.536,-15.586,-15.636,-15.685,-15.751,-15.857,-16.005,-16.155,-16.246,-16.232,-16.128,-16.003,-15.940,-15.970,-16.049,
--16.086,-16.011,-15.820,-15.582,-15.382,-15.270,-15.231,-15.213,-15.172,-15.102,-15.031,-14.989,-14.986,-15.003,-15.015,-15.005,
--14.975,-14.936,-14.890,-14.831,-14.747,-14.633,-14.498,-14.355,-14.217,-14.087,-13.963,-13.841,-13.724,-13.618,-13.525,-13.435,
--13.335,-13.216,-13.083,-12.953,-12.844,-12.759,-12.690,-12.623,-12.547,-12.463,-12.374,-12.277,-12.165,-12.030,-11.876,-11.723,
--11.593,-11.495,-11.421,-11.346,-11.253,-11.139,-11.023,-10.930,-10.878,-10.866,-10.878,-10.892,-10.890,-10.870,-10.838,-10.804,
--10.773,-10.741,-10.702,-10.651,-10.592,-10.535,-10.490,-10.458,-10.433,-10.404,-10.366,-10.319,-10.267,-10.214,-10.161,-10.110,
--10.061,-10.019,-9.985,-9.956,-9.925,-9.884,-9.828,-9.762,-9.698,-9.649,-9.621,-9.613,-9.617,-9.621,-9.622,-9.620,
--9.623,-9.635,-9.653,-9.665,-9.660,-9.635,-9.593,-9.544,-9.498,-9.464,-9.451,-9.462,-9.492,-9.524,-9.532,-9.501,
--9.438,-9.367,-9.312,-9.280,-9.248,-9.191,-9.099,-8.991,-8.903,-8.853,-8.833,-8.813,-8.769,-8.697,-8.612,-8.527,
--8.438,-8.334,-8.210,-8.081,-7.971,-7.895,-7.845,-7.797,-7.728,-7.629,-7.504,-7.358,-7.183,-6.969,-6.715,-6.436,
--6.161,-5.921,-5.743,-5.645,-5.629,-5.675,-5.736,-5.754,-5.686,-5.537,-5.353,-5.190,-5.074,-4.972,-4.827,-4.604,
--4.329,-4.072,-3.900,-3.826,-3.799,-3.746,-3.630,-3.472,-3.331,-3.254,-3.234,-3.218,-3.144,-2.991,-2.789,-2.595,
--2.455,-2.368,-2.290,-2.170,-1.981,-1.740,-1.487,-1.255,-1.046,-.841,-.622,-.396,-.195,-.042,.070,.176,
-.312,.486,.672,.838,.980,1.126,1.308,1.530,1.762,1.968,2.146,2.336,2.586,2.916,3.297,3.670,
-3.993,4.251,4.460,4.636,4.799,4.972,5.188,5.471,5.814,6.171,6.490,6.761,7.016,7.303,7.632,7.960,
-8.234,8.445,8.647,8.904,9.229,9.567,9.847,10.052,10.229,10.435,10.662,10.836,10.891,10.864,10.906,11.183,
-11.760,12.550,13.389,14.156,14.851,15.568,16.412,17.435,18.632,19.960,21.329,22.574,23.463,23.777,23.441,22.587,
-21.492,20.422,19.498,18.692,17.927,17.192,16.557,16.101,15.823,15.644,15.479,15.305,15.152,15.032,14.895,14.654,
-14.270,13.798,13.352,13.012,12.763,12.528,12.257,11.977,11.769,11.686,11.705,11.760,11.807,11.859,11.954,12.079,
-12.161,12.111,11.910,11.630,11.384,11.231,11.141,11.033,10.855,10.633,10.426,10.263,10.087,9.795,9.297,8.582,
-7.716,6.800,5.931,5.191,4.640,4.303,4.142,4.042,3.846,3.436,2.799,2.041,1.321,.763,.396,.172,
-.020,-.101,-.195,-.253,-.287,-.331,-.422,-.576,-.784,-1.029,-1.297,-1.579,-1.867,-2.145,-2.394,-2.607,
--2.787,-2.946,-3.089,-3.213,-3.315,-3.402,-3.491,-3.594,-3.712,-3.831,-3.932,-4.000,-4.034,-4.040,-4.025,-3.993,
--3.946,-3.890,-3.825,-3.752,-3.674,-3.600,-3.547,-3.525,-3.526,-3.522,-3.486,-3.415,-3.347,-3.341,-3.438,-3.631,
--3.867,-4.080,-4.231,-4.323,-4.392,-4.473,-4.576,-4.687,-4.787,-4.861,-4.904,-4.910,-4.868,-4.769,-4.618,-4.439,
--4.270,-4.137,-4.043,-3.966,-3.870,-3.736,-3.563,-3.377,-3.206,-3.069,-2.962,-2.866,-2.759,-2.627,-2.470,-2.298,
--2.122,-1.941,-1.741,-1.499,-1.193,-.814,-.376,.091,.551,.978,1.368,1.735,2.096,2.462,2.830,3.200,
-3.581,3.994,4.460,4.980,5.529,6.068,6.570,7.033,7.474,7.912,8.350,8.777,9.177,9.550,9.912,10.283,
-10.673,11.075,11.469,11.844,12.201,12.551,12.901,13.254,13.601,13.937,14.264,14.592,14.926,15.267,15.611,15.955,
-16.305,16.666,17.040,17.414,17.778,18.128,18.475,18.837,19.219,19.607,19.975,20.307,20.606,20.899,21.209,21.544,
-21.889,22.222,22.527,22.805,23.069,23.332,23.602,23.879,24.154,24.413,24.644,24.846,25.033,25.232,25.465,25.727,
-25.988,26.208,26.371,26.490,26.596,26.710,26.818,26.889,26.895,26.842,26.759,26.677,26.608,26.539,26.463,26.388,
-26.340,26.336,26.365,26.389,26.368,26.284,26.155,26.017,25.900,25.811,25.735,25.647,25.528,25.374,25.199,25.027,
-24.885,24.790,24.739,24.701,24.635,24.507,24.311,24.076,23.843,23.646,23.491,23.361,23.240,23.129,23.049,23.024,
-23.058,23.124,23.177,23.176,23.106,22.983,22.842,22.719,22.638,22.605,22.614,22.646,22.677,22.682,22.636,22.521,
-22.479,22.186,21.888,21.649,21.504,21.445,21.427,21.397,21.324,21.224,21.149,21.147,21.231,21.370,21.514,21.635,
-21.742,21.862,22.010,22.162,22.287,22.382,22.498,22.707,23.041,23.448,23.807,24.004,24.014,23.918,23.856,23.933,
-24.159,24.458,24.727,24.906,25.002,25.062,25.135,25.239,25.368,25.510,25.662,25.831,26.021,26.217,26.399,26.550,
-26.679,26.813,26.975,27.164,27.343,27.460,27.493,27.472,27.479,27.594,27.843,28.177,28.500,28.733,28.866,28.963,
-29.112,29.365,29.713,30.095,30.449,30.746,30.989,31.198,31.388,31.562,31.720,31.866,32.005,32.133,32.243,32.325,
-32.384,32.440,32.517,32.623,32.748,32.866,32.953,33.004,33.032,33.053,33.075,33.087,33.073,33.025,32.954,32.887,
-32.848,32.843,32.861,32.886,32.906,32.924,32.944,32.974,33.018,33.087,33.193,33.328,33.457,33.524,33.493,33.394,
-33.321,33.378,33.609,33.962,34.328,34.625,34.863,35.126,35.496,35.989,36.550,37.121,37.691,38.287,38.911,39.500,
-39.963,40.281,40.569,41.016,41.743,42.682,43.597,44.244,44.549,44.649,44.773,45.057,45.450,45.791,45.952,45.944,
-45.874,45.835,45.824,45.780,45.672,45.556,45.521,45.587,45.670,45.645,45.473,45.253,45.147,45.239,45.451,45.606,
-45.564,45.339,45.074,44.933,44.993,45.229,45.583,46.012,46.470,46.848,46.959,46.635,45.870,44.888,44.060,43.704,
-43.911,44.518,45.246,45.870,46.320,46.644,46.904,47.105,47.213,47.208,47.112,46.957,46.733,46.378,45.848,45.205,
-44.653,44.474,44.887,45.928,47.419,49.038,50.456,51.444,51.917,51.913,51.538,50.918,50.171,49.393,48.649,47.961,
-47.302,46.625,45.897,45.138,44.427,43.861,43.496,43.308,43.209,43.105,42.954,42.785,42.652,42.575,42.516,42.407,
-42.205,41.930,41.641,41.386,41.158,40.907,40.592,40.219,39.834,39.481,39.162,38.834,38.455,38.024,37.580,37.167,
-36.792,36.428,36.046,35.655,35.297,35.015,34.809,34.637,34.452,34.243,34.035,33.856,33.691,33.488,33.203,32.852,
-32.519,32.309,32.279,32.403,32.599,32.780,32.912,33.009,33.113,33.259,33.461,33.709,33.973,34.193,34.298,34.230,
-33.991,33.658,33.350,33.158,33.090,33.073,33.017,32.876,32.677,32.479,32.317,32.175,32.011,31.802,31.568,31.348,
-31.159,30.973,30.744,30.456,30.141,29.856,29.639,29.479,29.335,29.173,28.998,28.834,28.695,28.557,28.376,28.120,
-27.799,27.455,27.129,26.836,26.563,26.291,26.007,25.714,25.410,25.086,24.733,24.357,23.975,23.611,23.277,22.969,
-22.677,22.398,22.132,21.872,21.599,21.292,20.953,20.606,20.287,20.015,19.771,19.516,19.219,18.883,18.539,18.219,
-17.933,17.663,17.384,17.077,16.738,16.370,15.977,15.567,15.154,14.756,14.379,14.012,13.633,13.226,12.803,12.390,
-12.009,11.657,11.309,10.937,10.535,10.122,9.719,9.336,8.965,8.591,8.206,7.811,7.410,7.003,6.591,6.177,
-5.768,5.365,4.953,4.519,4.062,3.605,3.179,2.797,2.436,2.056,1.627,1.163,.705,.290,-.083,-.456,
--.866,-1.319,-1.784,-2.221,-2.618,-3.004,-3.420,-3.881,-4.362,-4.821,-5.228,-5.590,-5.938,-6.302,-6.689,-7.084,
--7.475,-7.865,-8.270,-8.710,-9.182,-9.667,-10.135,-10.564,-10.954,-11.321,-11.688,-12.071,-12.469,-12.866,-13.245,-13.593,
--13.916,-14.225,-14.532,-14.839,-15.145,-15.447,-15.753,-16.072,-16.406,-16.746,-17.074,-17.380,-17.670,-17.966,-18.289,-18.647,
--19.030,-19.422,-19.805,-20.169,-20.502,-20.790,-21.026,-21.222,-21.405,-21.611,-21.855,-22.126,-22.397,-22.643,-22.863,-23.075,
--23.293,-23.516,-23.731,-23.927,-24.112,-24.302,-24.511,-24.731,-24.939,-25.116,-25.261,-25.387,-25.507,-25.623,-25.728,-25.814,
--25.884,-25.942,-25.987,-26.011,-26.010,-26.001,-26.014,-26.073,-26.171,-26.270,-26.325,-26.320,-26.279,-26.249,-26.264,-26.322,
--26.389,-26.428,-26.427,-26.402,-26.385,-26.395,-26.429,-26.464,-26.478,-26.463,-26.425,-26.380,-26.340,-26.302,-26.253,-26.185,
--26.100,-26.014,-25.947,-25.906,-25.880,-25.848,-25.796,-25.724,-25.640,-25.553,-25.462,-25.365,-25.265,-25.177,-25.107,-25.044,
--24.963,-24.842,-24.686,-24.522,-24.379,-24.259,-24.138,-23.988,-23.804,-23.612,-23.440,-23.293,-23.153,-22.995,-22.816,-22.638,
--22.480,-22.334,-22.168,-21.954,-21.700,-21.442,-21.221,-21.042,-20.875,-20.679,-20.441,-20.181,-19.935,-19.720,-19.526,-19.329,
--19.114,-18.888,-18.672,-18.485,-18.327,-18.181,-18.017,-17.818,-17.587,-17.365,-17.215,-17.192,-17.301,-17.485,-17.642,-17.684,
--17.589,-17.411,-17.231,-17.104,-17.021,-16.930,-16.786,-16.588,-16.381,-16.219,-16.123,-16.076,-16.034,-15.955,-15.826,-15.664,
--15.508,-15.400,-15.356,-15.343,-15.289,-15.117,-14.795,-14.374,-13.966,-13.689,-13.595,-13.644,-13.744,-13.808,-13.811,-13.777,
--13.746,-13.729,-13.705,-13.650,-13.567,-13.488,-13.450,-13.466,-13.509,-13.530,-13.486,-13.367,-13.194,-13.010,-12.853,-12.732,
--12.627,-12.500,-12.321,-12.099,-11.878,-11.711,-11.619,-11.571,-11.506,-11.385,-11.223,-11.085,-11.024,-11.031,-11.031,-10.940,
--10.742,-10.511,-10.364,-10.369,-10.483,-10.586,-10.562,-10.381,-10.114,-9.859,-9.665,-9.504,-9.314,-9.059,-8.767,-8.496,
--8.279,-8.105,-7.935,-7.747,-7.556,-7.375,-7.181,-6.910,-6.503,-5.973,-5.424,-4.995,-4.771,-4.723,-4.734,-4.688,
--4.564,-4.463,-4.535,-4.853,-5.307,-5.593,-5.335,-4.278,-2.462,-.265,1.748,3.091,3.601,3.497,3.227,3.190,
-3.523,4.084,4.626,4.995,5.219,5.420,5.658,5.838,5.770,5.317,4.508,3.525,2.591,1.854,1.341,1.006,
-.793,.668,.610,.591,.573,.537,.497,.485,.523,.606,.708,.802,.872,.904,.881,.786,
-.624,.430,.256,.140,.081,.040,-.033,-.166,-.351,-.559,-.761,-.942,-1.105,-1.269,-1.454,-1.672,
--1.921,-2.176,-2.412,-2.614,-2.800,-3.001,-3.234,-3.479,-3.683,-3.797,-3.816,-3.785,-3.767,-3.800,-3.874,-3.954,
--4.019,-4.082,-4.180,-4.332,-4.527,-4.733,-4.927,-5.117,-5.326,-5.566,-5.823,-6.071,-6.301,-6.533,-6.798,-7.108,
--7.432,-7.718,-7.930,-8.069,-8.170,-8.270,-8.387,-8.521,-8.669,-8.837,-9.025,-9.214,-9.364,-9.447,-9.478,-9.516,
--9.621,-9.808,-10.024,-10.188,-10.253,-10.239,-10.214,-10.234,-10.306,-10.391,-10.446,-10.467,-10.482,-10.522,-10.584,-10.636,
--10.648,-10.615,-10.559,-10.504,-10.457,-10.416,-10.383,-10.365,-10.367,-10.367,-10.335,-10.254,-10.143,-10.045,-9.988,-9.955,
--9.906,-9.825,-9.750,-9.748,-9.843,-9.977,-10.037,-9.950,-9.753,-9.575,-9.534,-9.632,-9.746,-9.732,-9.550,-9.309,
--9.188,-9.291,-9.562,-9.827,-9.928,-9.838,-9.679,-9.624,-9.774,-10.102,-10.491,-10.823,-11.047,-11.187,-11.291,-11.389,
--11.482,-11.556,-11.614,-11.673,-11.756,-11.869,-12.001,-12.134,-12.259,-12.378,-12.493,-12.600,-12.686,-12.738,-12.763,-12.786,
--12.845,-12.967,-13.153,-13.373,-13.578,-13.721,-13.774,-13.739,-13.649,-13.551,-13.500,-13.536,-13.670,-13.881,-14.127,-14.365,
--14.570,-14.743,-14.900,-15.050,-15.186,-15.291,-15.355,-15.386,-15.414,-15.467,-15.552,-15.647,-15.720,-15.747,-15.732,-15.704,
--15.692,-15.706,-15.728,-15.735,-15.723,-15.727,-15.794,-15.951,-16.168,-16.362,-16.446,-16.383,-16.220,-16.061,-15.998,-16.049,
--16.145,-16.182,-16.091,-15.886,-15.648,-15.467,-15.382,-15.363,-15.347,-15.283,-15.168,-15.039,-14.942,-14.896,-14.895,-14.916,
--14.940,-14.959,-14.970,-14.962,-14.922,-14.836,-14.704,-14.542,-14.372,-14.207,-14.054,-13.912,-13.785,-13.677,-13.592,-13.524,
--13.453,-13.362,-13.245,-13.113,-12.987,-12.880,-12.790,-12.707,-12.619,-12.529,-12.444,-12.367,-12.284,-12.179,-12.042,-11.888,
--11.745,-11.636,-11.562,-11.500,-11.421,-11.311,-11.180,-11.054,-10.956,-10.894,-10.858,-10.836,-10.815,-10.791,-10.763,-10.731,
--10.692,-10.648,-10.598,-10.547,-10.502,-10.466,-10.443,-10.427,-10.411,-10.384,-10.340,-10.283,-10.222,-10.171,-10.133,-10.101,
--10.060,-10.002,-9.930,-9.862,-9.816,-9.795,-9.787,-9.769,-9.725,-9.658,-9.589,-9.542,-9.527,-9.536,-9.551,-9.560,
--9.564,-9.572,-9.591,-9.618,-9.637,-9.638,-9.619,-9.589,-9.561,-9.540,-9.527,-9.521,-9.523,-9.531,-9.535,-9.519,
--9.474,-9.407,-9.343,-9.301,-9.284,-9.265,-9.215,-9.122,-9.008,-8.912,-8.862,-8.850,-8.847,-8.820,-8.764,-8.696,
--8.635,-8.580,-8.514,-8.416,-8.289,-8.153,-8.035,-7.945,-7.870,-7.782,-7.662,-7.505,-7.319,-7.117,-6.905,-6.683,
--6.454,-6.225,-6.013,-5.838,-5.720,-5.665,-5.659,-5.670,-5.662,-5.616,-5.541,-5.462,-5.396,-5.333,-5.233,-5.058,
--4.803,-4.509,-4.245,-4.062,-3.964,-3.909,-3.843,-3.737,-3.600,-3.469,-3.374,-3.311,-3.247,-3.146,-2.994,-2.810,
--2.634,-2.496,-2.393,-2.290,-2.147,-1.951,-1.724,-1.505,-1.318,-1.151,-.968,-.743,-.488,-.249,-.066,.054,
-.148,.266,.430,.626,.826,1.016,1.211,1.427,1.660,1.879,2.059,2.208,2.373,2.602,2.911,3.264,
-3.606,3.898,4.133,4.330,4.508,4.683,4.876,5.114,5.415,5.763,6.107,6.397,6.623,6.823,7.050,7.319,
-7.597,7.838,8.039,8.252,8.531,8.880,9.237,9.532,9.757,9.969,10.231,10.533,10.784,10.900,10.904,10.955,
-11.256,11.919,12.883,13.959,14.942,15.730,16.346,16.911,17.583,18.511,19.773,21.318,22.910,24.175,24.747,24.459,
-23.445,22.070,20.721,19.617,18.753,18.006,17.289,16.622,16.085,15.724,15.496,15.318,15.133,14.939,14.758,14.583,
-14.371,14.085,13.734,13.365,13.019,12.695,12.365,12.027,11.730,11.543,11.499,11.561,11.653,11.721,11.770,11.835,
-11.923,11.984,11.948,11.790,11.560,11.347,11.208,11.127,11.037,10.884,10.674,10.456,10.266,10.078,9.810,9.372,
-8.724,7.899,6.995,6.132,5.423,4.933,4.659,4.520,4.378,4.097,3.612,2.957,2.246,1.598,1.083,.699,
-.404,.166,-.023,-.156,-.241,-.307,-.395,-.526,-.700,-.904,-1.128,-1.376,-1.647,-1.927,-2.191,-2.417,
--2.610,-2.789,-2.973,-3.160,-3.326,-3.448,-3.527,-3.587,-3.663,-3.772,-3.903,-4.028,-4.122,-4.170,-4.170,-4.131,
--4.062,-3.974,-3.881,-3.793,-3.716,-3.652,-3.605,-3.576,-3.561,-3.543,-3.499,-3.415,-3.307,-3.225,-3.226,-3.340,
--3.547,-3.788,-3.998,-4.144,-4.238,-4.312,-4.392,-4.483,-4.572,-4.649,-4.712,-4.758,-4.773,-4.730,-4.606,-4.411,
--4.185,-3.985,-3.848,-3.775,-3.726,-3.660,-3.550,-3.406,-3.252,-3.110,-2.986,-2.868,-2.740,-2.595,-2.437,-2.275,
--2.112,-1.947,-1.767,-1.559,-1.307,-.999,-.636,-.230,.198,.625,1.040,1.442,1.838,2.226,2.596,2.942,
-3.274,3.624,4.030,4.512,5.050,5.600,6.118,6.589,7.034,7.485,7.957,8.436,8.890,9.297,9.661,10.008,
-10.365,10.741,11.125,11.503,11.868,12.224,12.577,12.928,13.270,13.599,13.918,14.238,14.567,14.901,15.234,15.561,
-15.888,16.226,16.583,16.955,17.332,17.705,18.079,18.464,18.866,19.270,19.650,19.987,20.283,20.563,20.859,21.186,
-21.532,21.873,22.189,22.475,22.745,23.014,23.293,23.583,23.880,24.173,24.449,24.691,24.890,25.060,25.234,25.445,
-25.705,25.991,26.260,26.475,26.628,26.742,26.841,26.934,27.008,27.041,27.024,26.961,26.870,26.761,26.648,26.544,
-26.475,26.464,26.508,26.578,26.622,26.594,26.481,26.302,26.094,25.888,25.696,25.515,25.338,25.166,25.001,24.853,
-24.732,24.648,24.602,24.586,24.572,24.528,24.426,24.267,24.074,23.881,23.715,23.581,23.468,23.367,23.285,23.237,
-23.238,23.280,23.331,23.351,23.308,23.192,23.024,22.842,22.689,22.601,22.595,22.658,22.752,22.824,22.819,22.703,
-22.479,22.287,22.048,21.851,21.737,21.705,21.710,21.684,21.580,21.403,21.219,21.116,21.147,21.293,21.475,21.612,
-21.678,21.711,21.776,21.903,22.070,22.236,22.397,22.607,22.938,23.403,23.918,24.337,24.547,24.542,24.430,24.352,
-24.389,24.517,24.649,24.707,24.680,24.621,24.600,24.653,24.776,24.937,25.113,25.294,25.477,25.657,25.828,25.995,
-26.175,26.388,26.636,26.893,27.112,27.254,27.309,27.309,27.320,27.406,27.602,27.889,28.205,28.477,28.663,28.778,
-28.888,29.068,29.358,29.741,30.155,30.527,30.813,31.012,31.154,31.275,31.396,31.523,31.652,31.775,31.888,31.986,
-32.070,32.147,32.235,32.347,32.489,32.642,32.772,32.854,32.881,32.880,32.883,32.909,32.945,32.957,32.923,32.852,
-32.784,32.759,32.785,32.837,32.877,32.887,32.885,32.904,32.966,33.066,33.182,33.290,33.378,33.438,33.459,33.438,
-33.401,33.412,33.539,33.810,34.187,34.580,34.921,35.208,35.513,35.924,36.480,37.152,37.870,38.565,39.186,39.695,
-40.068,40.323,40.557,40.927,41.564,42.459,43.438,44.243,44.704,44.850,44.875,44.989,45.265,45.608,45.866,45.956,
-45.917,45.839,45.773,45.703,45.614,45.553,45.613,45.824,46.075,46.158,45.936,45.482,45.065,44.959,45.225,45.650,
-45.898,45.753,45.266,44.692,44.307,44.247,44.495,44.981,45.644,46.405,47.090,47.422,47.154,46.261,45.030,43.942,
-43.411,43.564,44.207,45.001,45.683,46.179,46.554,46.879,47.148,47.293,47.275,47.119,46.887,46.601,46.223,45.713,
-45.126,44.660,44.595,45.142,46.313,47.878,49.460,50.690,51.366,51.496,51.261,50.894,50.572,50.356,50.204,50.016,
-49.690,49.155,48.386,47.410,46.313,45.233,44.324,43.690,43.341,43.190,43.106,42.995,42.840,42.685,42.569,42.486,
-42.384,42.217,41.988,41.739,41.508,41.289,41.035,40.707,40.314,39.911,39.551,39.239,38.931,38.578,38.173,37.752,
-37.359,37.005,36.663,36.309,35.956,35.645,35.403,35.211,35.014,34.776,34.518,34.303,34.175,34.100,33.981,33.728,
-33.340,32.922,32.621,32.532,32.647,32.877,33.126,33.346,33.547,33.766,34.025,34.324,34.642,34.943,35.174,35.269,
-35.180,34.910,34.531,34.156,33.869,33.684,33.546,33.390,33.188,32.969,32.777,32.627,32.491,32.330,32.133,31.925,
-31.731,31.546,31.333,31.061,30.745,30.443,30.218,30.084,29.996,29.890,29.731,29.531,29.323,29.122,28.909,28.651,
-28.342,28.011,27.701,27.433,27.191,26.939,26.653,26.337,26.010,25.685,25.356,25.011,24.655,24.303,23.975,23.672,
-23.382,23.090,22.793,22.499,22.209,21.910,21.588,21.243,20.897,20.581,20.306,20.053,19.789,19.490,19.166,18.843,
-18.545,18.269,17.995,17.702,17.380,17.034,16.668,16.284,15.889,15.496,15.119,14.763,14.409,14.035,13.632,13.214,
-12.811,12.434,12.070,11.689,11.275,10.842,10.421,10.034,9.673,9.310,8.924,8.517,8.109,7.711,7.315,6.906,
-6.477,6.044,5.630,5.241,4.858,4.461,4.043,3.622,3.218,2.831,2.435,2.004,1.540,1.078,.658,.290,
--.056,-.421,-.831,-1.270,-1.709,-2.130,-2.543,-2.975,-3.435,-3.905,-4.346,-4.737,-5.086,-5.426,-5.789,-6.186,
--6.605,-7.029,-7.452,-7.882,-8.329,-8.791,-9.250,-9.683,-10.077,-10.439,-10.789,-11.151,-11.539,-11.948,-12.361,-12.757,
--13.124,-13.463,-13.781,-14.087,-14.387,-14.684,-14.986,-15.302,-15.636,-15.980,-16.316,-16.624,-16.904,-17.179,-17.477,-17.818,
--18.196,-18.590,-18.978,-19.351,-19.707,-20.041,-20.338,-20.583,-20.783,-20.967,-21.172,-21.415,-21.680,-21.933,-22.151,-22.344,
--22.545,-22.780,-23.042,-23.298,-23.517,-23.696,-23.862,-24.047,-24.261,-24.485,-24.690,-24.860,-25.000,-25.125,-25.245,-25.359,
--25.457,-25.534,-25.590,-25.628,-25.650,-25.659,-25.670,-25.703,-25.774,-25.872,-25.968,-26.026,-26.033,-26.009,-25.992,-26.012,
--26.065,-26.125,-26.160,-26.161,-26.146,-26.147,-26.179,-26.234,-26.281,-26.295,-26.270,-26.225,-26.181,-26.151,-26.121,-26.067,
--25.980,-25.871,-25.776,-25.721,-25.706,-25.704,-25.680,-25.617,-25.526,-25.428,-25.336,-25.247,-25.153,-25.063,-24.994,-24.955,
--24.928,-24.870,-24.747,-24.567,-24.378,-24.228,-24.128,-24.040,-23.911,-23.721,-23.500,-23.300,-23.148,-23.024,-22.885,-22.708,
--22.507,-22.318,-22.157,-22.005,-21.823,-21.597,-21.348,-21.121,-20.937,-20.778,-20.600,-20.375,-20.113,-19.853,-19.630,-19.448,
--19.278,-19.092,-18.884,-18.672,-18.485,-18.329,-18.182,-18.010,-17.791,-17.538,-17.307,-17.171,-17.177,-17.316,-17.516,-17.675,
--17.715,-17.621,-17.447,-17.272,-17.148,-17.065,-16.971,-16.813,-16.588,-16.349,-16.173,-16.104,-16.125,-16.164,-16.133,-15.990,
--15.767,-15.561,-15.473,-15.540,-15.695,-15.792,-15.686,-15.326,-14.787,-14.233,-13.818,-13.604,-13.542,-13.535,-13.515,-13.483,
--13.487,-13.560,-13.676,-13.769,-13.784,-13.724,-13.647,-13.622,-13.679,-13.784,-13.867,-13.867,-13.765,-13.585,-13.375,-13.175,
--13.001,-12.845,-12.690,-12.525,-12.358,-12.211,-12.102,-12.027,-11.958,-11.859,-11.719,-11.567,-11.452,-11.404,-11.404,-11.392,
--11.314,-11.174,-11.038,-10.982,-11.028,-11.115,-11.141,-11.037,-10.818,-10.564,-10.349,-10.181,-10.006,-9.767,-9.467,-9.174,
--8.963,-8.849,-8.776,-8.660,-8.455,-8.177,-7.864,-7.527,-7.131,-6.647,-6.103,-5.599,-5.245,-5.078,-5.025,-4.963,
--4.824,-4.666,-4.640,-4.865,-5.291,-5.660,-5.608,-4.855,-3.385,-1.487,.357,1.707,2.372,2.486,2.400,2.458,
-2.809,3.351,3.848,4.125,4.182,4.164,4.222,4.366,4.453,4.288,3.776,2.987,2.113,1.345,.780,.406,
-.160,-.016,-.147,-.241,-.310,-.368,-.416,-.438,-.420,-.364,-.294,-.234,-.193,-.165,-.151,-.174,
--.266,-.435,-.647,-.837,-.952,-.984,-.979,-1.001,-1.097,-1.270,-1.489,-1.711,-1.907,-2.078,-2.246,-2.447,
--2.707,-3.022,-3.361,-3.673,-3.924,-4.112,-4.269,-4.428,-4.597,-4.754,-4.866,-4.928,-4.967,-5.019,-5.101,-5.197,
--5.277,-5.336,-5.397,-5.497,-5.646,-5.816,-5.963,-6.070,-6.159,-6.277,-6.456,-6.686,-6.933,-7.169,-7.395,-7.633,
--7.896,-8.166,-8.409,-8.604,-8.759,-8.900,-9.043,-9.180,-9.297,-9.397,-9.507,-9.657,-9.841,-10.016,-10.130,-10.168,
--10.173,-10.211,-10.319,-10.474,-10.617,-10.697,-10.714,-10.708,-10.717,-10.746,-10.770,-10.771,-10.762,-10.777,-10.836,-10.927,
--11.009,-11.053,-11.058,-11.044,-11.028,-11.005,-10.964,-10.909,-10.861,-10.841,-10.839,-10.825,-10.774,-10.697,-10.635,-10.617,
--10.624,-10.599,-10.502,-10.355,-10.235,-10.213,-10.297,-10.420,-10.506,-10.533,-10.541,-10.573,-10.609,-10.557,-10.335,-9.964,
--9.589,-9.398,-9.488,-9.784,-10.093,-10.231,-10.158,-9.989,-9.909,-10.033,-10.344,-10.724,-11.044,-11.253,-11.383,-11.500,
--11.642,-11.794,-11.914,-11.976,-11.994,-12.012,-12.067,-12.171,-12.307,-12.453,-12.593,-12.728,-12.853,-12.955,-13.018,-13.038,
--13.042,-13.074,-13.174,-13.346,-13.557,-13.750,-13.880,-13.934,-13.926,-13.884,-13.830,-13.786,-13.771,-13.813,-13.930,-14.120,
--14.354,-14.592,-14.805,-14.986,-15.144,-15.285,-15.403,-15.486,-15.536,-15.574,-15.632,-15.724,-15.834,-15.926,-15.968,-15.962,
--15.939,-15.930,-15.938,-15.936,-15.897,-15.828,-15.786,-15.838,-16.015,-16.268,-16.492,-16.587,-16.522,-16.357,-16.199,-16.131,
--16.156,-16.205,-16.192,-16.076,-15.894,-15.722,-15.628,-15.619,-15.646,-15.638,-15.555,-15.403,-15.223,-15.062,-14.947,-14.879,
--14.848,-14.842,-14.855,-14.877,-14.890,-14.872,-14.810,-14.701,-14.559,-14.403,-14.245,-14.093,-13.952,-13.829,-13.729,-13.649,
--13.575,-13.485,-13.367,-13.228,-13.089,-12.970,-12.874,-12.785,-12.685,-12.569,-12.450,-12.349,-12.273,-12.206,-12.124,-12.016,
--11.895,-11.789,-11.717,-11.671,-11.624,-11.548,-11.441,-11.321,-11.216,-11.137,-11.076,-11.017,-10.948,-10.876,-10.810,-10.757,
--10.711,-10.659,-10.595,-10.526,-10.464,-10.419,-10.395,-10.383,-10.373,-10.353,-10.317,-10.264,-10.199,-10.136,-10.085,-10.050,
--10.020,-9.978,-9.909,-9.817,-9.727,-9.668,-9.653,-9.667,-9.676,-9.652,-9.588,-9.510,-9.452,-9.436,-9.455,-9.489,
--9.514,-9.527,-9.536,-9.550,-9.571,-9.587,-9.590,-9.582,-9.576,-9.581,-9.594,-9.607,-9.608,-9.599,-9.584,-9.567,
--9.539,-9.493,-9.428,-9.360,-9.310,-9.282,-9.259,-9.213,-9.130,-9.022,-8.924,-8.865,-8.847,-8.847,-8.837,-8.804,
--8.759,-8.720,-8.687,-8.644,-8.568,-8.451,-8.309,-8.170,-8.050,-7.942,-7.824,-7.674,-7.487,-7.280,-7.079,-6.899,
--6.742,-6.597,-6.450,-6.299,-6.151,-6.018,-5.904,-5.806,-5.716,-5.630,-5.555,-5.504,-5.481,-5.471,-5.440,-5.350,
--5.183,-4.953,-4.701,-4.471,-4.292,-4.167,-4.073,-3.986,-3.887,-3.776,-3.658,-3.543,-3.431,-3.312,-3.174,-3.012,
--2.836,-2.663,-2.506,-2.363,-2.212,-2.035,-1.831,-1.623,-1.445,-1.306,-1.180,-1.019,-.791,-.515,-.247,-.043,
-.084,.171,.274,.427,.626,.843,1.057,1.271,1.495,1.720,1.924,2.087,2.223,2.375,2.584,2.858,
-3.163,3.454,3.705,3.925,4.135,4.350,4.569,4.793,5.032,5.300,5.591,5.878,6.132,6.347,6.554,6.784,
-7.043,7.302,7.534,7.749,7.993,8.303,8.663,9.010,9.291,9.518,9.756,10.052,10.370,10.607,10.692,10.678,
-10.755,11.137,11.915,12.994,14.153,15.174,15.961,16.550,17.072,17.683,18.525,19.690,21.157,22.733,24.068,24.785,
-24.662,23.769,22.431,21.041,19.853,18.902,18.075,17.273,16.503,15.857,15.409,15.145,14.975,14.810,14.617,14.415,
-14.227,14.042,13.831,13.573,13.275,12.954,12.617,12.262,11.908,11.607,11.426,11.393,11.473,11.583,11.655,11.676,
-11.684,11.714,11.761,11.779,11.724,11.598,11.443,11.304,11.195,11.088,10.951,10.779,10.594,10.417,10.232,9.974,
-9.563,8.949,8.154,7.270,6.432,5.759,5.308,5.048,4.871,4.647,4.284,3.768,3.159,2.543,1.980,1.483,
-1.036,.632,.291,.041,-.111,-.202,-.292,-.428,-.618,-.834,-1.046,-1.247,-1.453,-1.678,-1.915,-2.142,
--2.346,-2.530,-2.719,-2.927,-3.141,-3.329,-3.465,-3.549,-3.610,-3.685,-3.792,-3.922,-4.049,-4.149,-4.209,-4.225,
--4.200,-4.139,-4.051,-3.953,-3.862,-3.791,-3.742,-3.710,-3.687,-3.661,-3.614,-3.530,-3.408,-3.272,-3.169,-3.146,
--3.225,-3.380,-3.562,-3.723,-3.850,-3.957,-4.069,-4.192,-4.310,-4.399,-4.455,-4.486,-4.500,-4.485,-4.412,-4.256,
--4.032,-3.788,-3.587,-3.467,-3.417,-3.397,-3.361,-3.293,-3.202,-3.105,-3.007,-2.896,-2.757,-2.589,-2.406,-2.228,
--2.063,-1.901,-1.723,-1.514,-1.269,-.990,-.680,-.341,.026,.412,.809,1.212,1.616,2.017,2.400,2.747,
-3.055,3.348,3.673,4.077,4.574,5.128,5.679,6.181,6.627,7.053,7.498,7.978,8.468,8.934,9.355,9.739,
-10.111,10.487,10.864,11.226,11.566,11.893,12.225,12.572,12.929,13.278,13.610,13.930,14.249,14.576,14.903,15.223,
-15.531,15.842,16.171,16.528,16.905,17.289,17.670,18.055,18.455,18.870,19.280,19.659,19.990,20.285,20.573,20.882,
-21.216,21.560,21.887,22.185,22.461,22.731,23.008,23.294,23.586,23.881,24.176,24.466,24.735,24.968,25.164,25.341,
-25.533,25.761,26.023,26.293,26.538,26.736,26.884,26.995,27.079,27.138,27.170,27.168,27.131,27.062,26.969,26.869,
-26.787,26.746,26.755,26.798,26.839,26.835,26.762,26.620,26.423,26.188,25.923,25.641,25.366,25.135,24.980,24.912,
-24.909,24.929,24.931,24.896,24.827,24.740,24.644,24.542,24.427,24.299,24.161,24.022,23.891,23.775,23.676,23.595,
-23.529,23.470,23.407,23.332,23.240,23.131,23.010,22.884,22.767,22.676,22.629,22.635,22.680,22.729,22.738,22.669,
-22.511,22.287,22.342,22.219,22.122,22.060,22.022,21.978,21.887,21.726,21.519,21.331,21.240,21.280,21.419,21.575,
-21.682,21.731,21.778,21.882,22.055,22.254,22.426,22.575,22.770,23.090,23.547,24.052,24.469,24.713,24.807,24.853,
-24.939,25.068,25.154,25.105,24.908,24.647,24.448,24.388,24.462,24.610,24.771,24.930,25.100,25.288,25.474,25.631,
-25.759,25.895,26.086,26.347,26.636,26.879,27.017,27.052,27.041,27.068,27.189,27.417,27.715,28.029,28.309,28.532,
-28.708,28.875,29.081,29.361,29.716,30.103,30.460,30.736,30.915,31.019,31.091,31.168,31.268,31.386,31.513,31.640,
-31.764,31.881,31.990,32.096,32.211,32.344,32.489,32.622,32.713,32.749,32.748,32.745,32.762,32.793,32.806,32.780,
-32.726,32.690,32.712,32.792,32.883,32.930,32.920,32.894,32.916,33.016,33.171,33.320,33.412,33.445,33.452,33.469,
-33.508,33.569,33.659,33.814,34.065,34.414,34.819,35.220,35.593,35.973,36.430,37.023,37.753,38.551,39.308,39.917,
-40.314,40.515,40.623,40.812,41.244,41.981,42.923,43.847,44.526,44.869,44.967,45.012,45.156,45.410,45.671,45.823,
-45.834,45.750,45.631,45.500,45.369,45.304,45.429,45.829,46.411,46.885,46.920,46.391,45.528,44.797,44.595,44.967,
-45.580,45.957,45.810,45.210,44.479,43.950,43.768,43.895,44.239,44.750,45.388,46.023,46.401,46.268,45.571,44.554,
-43.657,43.261,43.471,44.099,44.835,45.454,45.918,46.307,46.682,47.008,47.195,47.190,47.023,46.771,46.477,46.114,
-45.642,45.101,44.658,44.557,44.986,45.950,47.237,48.504,49.437,49.890,49.936,49.808,49.756,49.924,50.281,50.665,
-50.875,50.768,50.292,49.481,48.414,47.199,45.968,44.870,44.033,43.510,43.254,43.144,43.055,42.928,42.774,42.636,
-42.527,42.419,42.269,42.065,41.834,41.605,41.378,41.117,40.790,40.405,40.013,39.666,39.373,39.092,38.771,38.392,
-37.983,37.587,37.226,36.890,36.567,36.263,36.001,35.783,35.575,35.328,35.030,34.735,34.528,34.451,34.450,34.398,
-34.186,33.808,33.377,33.049,32.931,33.026,33.259,33.552,33.867,34.205,34.573,34.951,35.306,35.608,35.846,36.007,
-36.066,35.988,35.761,35.419,35.032,34.670,34.364,34.103,33.861,33.632,33.429,33.262,33.115,32.955,32.762,32.550,
-32.348,32.164,31.972,31.724,31.405,31.059,30.764,30.574,30.482,30.421,30.323,30.160,29.953,29.733,29.501,29.234,
-28.912,28.557,28.220,27.942,27.719,27.500,27.236,26.912,26.559,26.215,25.895,25.587,25.270,24.945,24.631,24.345,
-24.077,23.799,23.489,23.153,22.818,22.504,22.209,21.912,21.597,21.270,20.952,20.654,20.365,20.061,19.734,19.398,
-19.082,18.799,18.537,18.268,17.971,17.643,17.295,16.935,16.564,16.182,15.797,15.423,15.068,14.723,14.369,13.995,
-13.609,13.227,12.852,12.468,12.056,11.615,11.172,10.761,10.390,10.034,9.655,9.236,8.798,8.377,7.990,7.616,
-7.219,6.782,6.327,5.898,5.516,5.166,4.806,4.410,3.984,3.563,3.164,2.778,2.373,1.935,1.484,1.060,
-.690,.360,.029,-.344,-.767,-1.216,-1.662,-2.093,-2.518,-2.950,-3.386,-3.808,-4.198,-4.557,-4.905,-5.272,
--5.672,-6.105,-6.556,-7.010,-7.461,-7.907,-8.346,-8.772,-9.177,-9.558,-9.922,-10.280,-10.649,-11.037,-11.440,-11.845,
--12.237,-12.604,-12.947,-13.271,-13.585,-13.895,-14.208,-14.529,-14.864,-15.210,-15.554,-15.880,-16.176,-16.452,-16.736,-17.056,
--17.421,-17.813,-18.202,-18.569,-18.913,-19.243,-19.560,-19.851,-20.097,-20.300,-20.487,-20.695,-20.940,-21.207,-21.459,-21.673,
--21.860,-22.058,-22.297,-22.572,-22.846,-23.083,-23.276,-23.451,-23.643,-23.864,-24.095,-24.302,-24.467,-24.599,-24.722,-24.854,
--24.991,-25.116,-25.211,-25.271,-25.303,-25.320,-25.334,-25.358,-25.404,-25.479,-25.573,-25.666,-25.733,-25.761,-25.761,-25.761,
--25.783,-25.829,-25.881,-25.918,-25.932,-25.937,-25.954,-25.995,-26.049,-26.088,-26.091,-26.055,-26.003,-25.961,-25.936,-25.914,
--25.867,-25.785,-25.685,-25.605,-25.569,-25.568,-25.565,-25.523,-25.435,-25.325,-25.227,-25.149,-25.077,-24.993,-24.903,-24.836,
--24.811,-24.810,-24.777,-24.660,-24.461,-24.237,-24.057,-23.949,-23.872,-23.759,-23.572,-23.339,-23.125,-22.972,-22.867,-22.754,
--22.588,-22.375,-22.158,-21.979,-21.833,-21.681,-21.486,-21.253,-21.019,-20.819,-20.654,-20.487,-20.282,-20.036,-19.782,-19.559,
--19.381,-19.225,-19.059,-18.867,-18.662,-18.469,-18.301,-18.139,-17.949,-17.711,-17.445,-17.211,-17.081,-17.100,-17.256,-17.476,
--17.661,-17.732,-17.670,-17.514,-17.337,-17.191,-17.079,-16.962,-16.792,-16.565,-16.334,-16.180,-16.154,-16.238,-16.340,-16.345,
--16.197,-15.939,-15.700,-15.613,-15.727,-15.955,-16.120,-16.052,-15.694,-15.128,-14.526,-14.037,-13.708,-13.492,-13.309,-13.129,
--12.991,-12.961,-13.066,-13.255,-13.435,-13.539,-13.566,-13.580,-13.651,-13.799,-13.983,-14.127,-14.176,-14.116,-13.974,-13.788,
--13.586,-13.381,-13.179,-12.986,-12.815,-12.673,-12.559,-12.462,-12.368,-12.264,-12.148,-12.033,-11.939,-11.883,-11.861,-11.850,
--11.820,-11.757,-11.679,-11.620,-11.606,-11.619,-11.606,-11.515,-11.337,-11.110,-10.896,-10.723,-10.570,-10.390,-10.161,-9.916,
--9.717,-9.600,-9.534,-9.436,-9.232,-8.903,-8.494,-8.063,-7.634,-7.192,-6.724,-6.265,-5.891,-5.663,-5.566,-5.514,
--5.422,-5.289,-5.215,-5.326,-5.642,-5.997,-6.088,-5.628,-4.529,-2.979,-1.370,-.101,.622,.872,.937,1.130,
-1.607,2.295,2.960,3.379,3.475,3.347,3.172,3.065,3.003,2.858,2.511,1.948,1.274,.638,.141,-.208,
--.459,-.662,-.837,-.974,-1.068,-1.131,-1.176,-1.203,-1.197,-1.151,-1.084,-1.032,-1.019,-1.042,-1.075,-1.106,
--1.154,-1.255,-1.430,-1.650,-1.851,-1.974,-2.007,-1.992,-1.994,-2.063,-2.204,-2.391,-2.586,-2.767,-2.936,-3.113,
--3.329,-3.605,-3.940,-4.306,-4.659,-4.962,-5.200,-5.390,-5.557,-5.716,-5.861,-5.977,-6.066,-6.148,-6.250,-6.376,
--6.507,-6.617,-6.699,-6.773,-6.869,-6.995,-7.126,-7.228,-7.289,-7.331,-7.400,-7.522,-7.691,-7.879,-8.063,-8.245,
--8.444,-8.667,-8.896,-9.104,-9.281,-9.442,-9.613,-9.797,-9.967,-10.088,-10.155,-10.204,-10.287,-10.427,-10.595,-10.731,
--10.796,-10.799,-10.790,-10.820,-10.902,-11.009,-11.108,-11.178,-11.223,-11.244,-11.236,-11.192,-11.124,-11.072,-11.074,-11.142,
--11.251,-11.355,-11.425,-11.464,-11.489,-11.506,-11.502,-11.460,-11.391,-11.331,-11.313,-11.337,-11.364,-11.352,-11.294,-11.227,
--11.190,-11.183,-11.163,-11.087,-10.956,-10.825,-10.761,-10.789,-10.871,-10.950,-10.997,-11.034,-11.084,-11.126,-11.084,-10.890,
--10.559,-10.213,-10.018,-10.066,-10.307,-10.575,-10.706,-10.650,-10.497,-10.406,-10.486,-10.728,-11.026,-11.264,-11.400,-11.479,
--11.584,-11.759,-11.983,-12.188,-12.317,-12.365,-12.378,-12.410,-12.488,-12.603,-12.726,-12.842,-12.954,-13.072,-13.188,-13.279,
--13.327,-13.342,-13.363,-13.432,-13.562,-13.721,-13.861,-13.949,-13.992,-14.023,-14.064,-14.110,-14.138,-14.135,-14.125,-14.156,
--14.267,-14.453,-14.673,-14.879,-15.052,-15.201,-15.348,-15.495,-15.624,-15.719,-15.786,-15.854,-15.948,-16.066,-16.176,-16.241,
--16.254,-16.237,-16.223,-16.217,-16.197,-16.135,-16.042,-15.974,-15.998,-16.143,-16.360,-16.552,-16.630,-16.574,-16.437,-16.303,
--16.231,-16.213,-16.197,-16.135,-16.026,-15.913,-15.849,-15.856,-15.906,-15.940,-15.909,-15.798,-15.631,-15.446,-15.273,-15.127,
--15.006,-14.908,-14.835,-14.787,-14.761,-14.744,-14.720,-14.678,-14.614,-14.531,-14.432,-14.316,-14.189,-14.059,-13.937,-13.832,
--13.738,-13.638,-13.512,-13.359,-13.196,-13.052,-12.944,-12.864,-12.782,-12.671,-12.526,-12.371,-12.237,-12.139,-12.068,-12.000,
--11.922,-11.841,-11.777,-11.739,-11.714,-11.677,-11.610,-11.521,-11.433,-11.368,-11.326,-11.283,-11.217,-11.124,-11.018,-10.924,
--10.848,-10.782,-10.710,-10.625,-10.537,-10.462,-10.412,-10.380,-10.352,-10.314,-10.263,-10.203,-10.142,-10.083,-10.032,-9.989,
--9.956,-9.925,-9.883,-9.818,-9.731,-9.643,-9.580,-9.557,-9.565,-9.574,-9.555,-9.502,-9.435,-9.389,-9.386,-9.420,
--9.467,-9.502,-9.517,-9.519,-9.524,-9.535,-9.546,-9.549,-9.548,-9.550,-9.564,-9.585,-9.602,-9.606,-9.598,-9.591,
--9.590,-9.587,-9.565,-9.515,-9.442,-9.369,-9.313,-9.273,-9.231,-9.168,-9.082,-8.992,-8.925,-8.891,-8.880,-8.871,
--8.851,-8.819,-8.783,-8.745,-8.693,-8.614,-8.502,-8.370,-8.237,-8.118,-8.004,-7.874,-7.710,-7.513,-7.307,-7.126,
--6.989,-6.896,-6.824,-6.747,-6.647,-6.520,-6.370,-6.203,-6.028,-5.858,-5.712,-5.611,-5.563,-5.557,-5.562,-5.539,
--5.464,-5.334,-5.166,-4.980,-4.792,-4.612,-4.444,-4.299,-4.180,-4.085,-3.998,-3.900,-3.777,-3.629,-3.464,-3.289,
--3.108,-2.922,-2.734,-2.549,-2.366,-2.175,-1.970,-1.756,-1.556,-1.392,-1.268,-1.148,-.987,-.755,-.475,-.205,
--.002,.120,.198,.290,.430,.612,.808,.996,1.178,1.369,1.570,1.766,1.942,2.105,2.283,2.501,
-2.758,3.025,3.276,3.505,3.732,3.979,4.246,4.510,4.748,4.957,5.154,5.361,5.585,5.826,6.081,6.356,
-6.646,6.934,7.191,7.413,7.626,7.875,8.177,8.503,8.798,9.039,9.260,9.519,9.825,10.103,10.246,10.225,
-10.161,10.281,10.771,11.640,12.710,13.741,14.593,15.294,15.978,16.761,17.668,18.656,19.691,20.768,21.857,22.826,
-23.453,23.534,23.019,22.057,20.913,19.808,18.824,17.922,17.052,16.237,15.560,15.089,14.811,14.638,14.475,14.281,
-14.073,13.879,13.698,13.501,13.261,12.981,12.685,12.391,12.103,11.824,11.583,11.432,11.402,11.475,11.578,11.634,
-11.616,11.560,11.533,11.571,11.652,11.710,11.692,11.593,11.451,11.313,11.200,11.103,10.997,10.867,10.705,10.495,
-10.197,9.758,9.140,8.364,7.519,6.734,6.121,5.715,5.458,5.233,4.932,4.511,3.998,3.460,2.942,2.440,
-1.921,1.373,.833,.379,.073,-.085,-.163,-.254,-.415,-.643,-.889,-1.109,-1.291,-1.458,-1.637,-1.837,
--2.044,-2.247,-2.445,-2.650,-2.865,-3.074,-3.256,-3.396,-3.503,-3.603,-3.713,-3.835,-3.952,-4.047,-4.113,-4.154,
--4.172,-4.167,-4.134,-4.076,-4.006,-3.941,-3.893,-3.861,-3.836,-3.807,-3.763,-3.691,-3.582,-3.436,-3.277,-3.145,
--3.080,-3.096,-3.173,-3.272,-3.366,-3.455,-3.559,-3.696,-3.855,-4.002,-4.104,-4.152,-4.162,-4.149,-4.108,-4.014,
--3.849,-3.627,-3.397,-3.216,-3.113,-3.074,-3.058,-3.029,-2.982,-2.928,-2.878,-2.822,-2.736,-2.603,-2.432,-2.247,
--2.071,-1.903,-1.723,-1.508,-1.250,-.960,-.651,-.330,.011,.376,.764,1.162,1.559,1.949,2.328,2.686,
-3.013,3.306,3.590,3.909,4.306,4.789,5.323,5.850,6.327,6.751,7.155,7.576,8.023,8.478,8.913,9.322,
-9.721,10.128,10.542,10.942,11.302,11.623,11.928,12.252,12.608,12.983,13.348,13.683,13.992,14.290,14.592,14.896,
-15.197,15.493,15.799,16.133,16.502,16.895,17.292,17.681,18.063,18.452,18.852,19.252,19.632,19.981,20.304,20.622,
-20.950,21.289,21.622,21.933,22.215,22.477,22.734,22.996,23.264,23.537,23.814,24.098,24.391,24.683,24.961,25.209,
-25.422,25.610,25.792,25.985,26.199,26.432,26.668,26.887,27.067,27.196,27.274,27.313,27.327,27.323,27.300,27.257,
-27.201,27.149,27.115,27.097,27.076,27.025,26.931,26.803,26.658,26.505,26.332,26.120,25.869,25.618,25.432,25.367,
-25.426,25.553,25.656,25.658,25.534,25.317,25.075,24.867,24.719,24.614,24.518,24.402,24.259,24.110,23.983,23.894,
-23.835,23.776,23.685,23.549,23.382,23.214,23.075,22.977,22.912,22.867,22.832,22.806,22.788,22.772,22.742,22.684,
-22.592,22.473,22.342,22.593,22.528,22.429,22.299,22.157,22.018,21.883,21.742,21.599,21.483,21.439,21.486,21.598,
-21.717,21.802,21.863,21.953,22.114,22.333,22.546,22.695,22.794,22.924,23.173,23.559,24.005,24.406,24.712,24.960,
-25.228,25.529,25.773,25.822,25.604,25.194,24.783,24.555,24.570,24.743,24.932,25.053,25.121,25.214,25.374,25.573,
-25.736,25.822,25.863,25.941,26.113,26.360,26.603,26.761,26.814,26.814,26.846,26.969,27.198,27.501,27.833,28.152,
-28.433,28.667,28.867,29.068,29.312,29.623,29.982,30.333,30.612,30.789,30.881,30.937,31.004,31.103,31.230,31.370,
-31.515,31.662,31.806,31.936,32.045,32.139,32.236,32.351,32.476,32.581,32.641,32.656,32.651,32.649,32.654,32.647,
-32.614,32.575,32.576,32.654,32.793,32.928,32.992,32.972,32.927,32.941,33.056,33.235,33.398,33.485,33.501,33.509,
-33.565,33.676,33.811,33.942,34.087,34.301,34.630,35.062,35.541,36.010,36.469,36.973,37.591,38.338,39.142,39.870,
-40.397,40.672,40.762,40.823,41.040,41.531,42.281,43.145,43.919,44.459,44.750,44.898,45.037,45.233,45.446,45.593,
-45.624,45.554,45.428,45.265,45.060,44.857,44.795,45.056,45.703,46.539,47.144,47.116,46.363,45.225,44.285,44.000,
-44.398,45.086,45.542,45.467,44.948,44.314,43.866,43.688,43.679,43.717,43.789,43.954,44.215,44.444,44.454,44.164,
-43.701,43.335,43.299,43.635,44.189,44.749,45.201,45.568,45.931,46.318,46.664,46.870,46.891,46.765,46.570,46.338,
-46.039,45.622,45.108,44.627,44.374,44.506,45.046,45.855,46.700,47.364,47.756,47.944,48.103,48.407,48.915,49.535,
-50.068,50.320,50.193,49.710,48.967,48.064,47.073,46.053,45.085,44.275,43.707,43.390,43.251,43.173,43.071,42.928,
-42.771,42.628,42.490,42.326,42.121,41.886,41.648,41.414,41.162,40.862,40.519,40.168,39.853,39.582,39.319,39.014,
-38.645,38.233,37.824,37.451,37.119,36.820,36.547,36.301,36.070,35.829,35.553,35.256,34.998,34.843,34.803,34.806,
-34.732,34.502,34.137,33.755,33.493,33.427,33.546,33.791,34.113,34.503,34.962,35.462,35.938,36.316,36.563,36.699,
-36.765,36.783,36.738,36.597,36.347,36.014,35.647,35.293,34.981,34.725,34.524,34.365,34.216,34.034,33.795,33.510,
-33.225,32.978,32.766,32.539,32.243,31.874,31.490,31.171,30.958,30.824,30.698,30.531,30.322,30.109,29.911,29.706,
-29.448,29.120,28.759,28.432,28.176,27.964,27.731,27.427,27.060,26.685,26.353,26.072,25.809,25.529,25.234,24.952,
-24.702,24.463,24.192,23.860,23.483,23.112,22.787,22.511,22.251,21.971,21.663,21.345,21.035,20.728,20.406,20.059,
-19.699,19.356,19.049,18.769,18.489,18.187,17.861,17.524,17.184,16.836,16.473,16.096,15.718,15.356,15.009,14.666,
-14.314,13.949,13.577,13.199,12.806,12.390,11.957,11.534,11.142,10.780,10.414,10.010,9.562,9.103,8.676,8.297,
-7.940,7.557,7.128,6.675,6.245,5.866,5.518,5.154,4.739,4.284,3.835,3.428,3.061,2.695,2.298,1.872,
-1.456,1.088,.768,.459,.111,-.300,-.757,-1.221,-1.662,-2.079,-2.486,-2.896,-3.307,-3.703,-4.077,-4.435,
--4.801,-5.198,-5.633,-6.094,-6.560,-7.013,-7.445,-7.858,-8.261,-8.658,-9.049,-9.433,-9.811,-10.191,-10.579,-10.978,
--11.376,-11.760,-12.119,-12.452,-12.769,-13.086,-13.410,-13.744,-14.087,-14.434,-14.779,-15.114,-15.432,-15.732,-16.026,-16.337,
--16.682,-17.058,-17.446,-17.815,-18.154,-18.468,-18.775,-19.079,-19.369,-19.623,-19.838,-20.033,-20.243,-20.486,-20.753,-21.013,
--21.241,-21.440,-21.637,-21.856,-22.100,-22.351,-22.587,-22.805,-23.024,-23.259,-23.507,-23.737,-23.921,-24.055,-24.164,-24.285,
--24.441,-24.617,-24.782,-24.902,-24.967,-24.991,-25.000,-25.018,-25.059,-25.127,-25.218,-25.320,-25.419,-25.496,-25.543,-25.563,
--25.573,-25.589,-25.618,-25.656,-25.691,-25.716,-25.737,-25.767,-25.810,-25.860,-25.893,-25.894,-25.861,-25.814,-25.776,-25.755,
--25.735,-25.694,-25.622,-25.537,-25.472,-25.446,-25.445,-25.429,-25.365,-25.257,-25.141,-25.053,-24.999,-24.952,-24.879,-24.784,
--24.701,-24.662,-24.660,-24.637,-24.532,-24.333,-24.093,-23.887,-23.758,-23.674,-23.569,-23.394,-23.168,-22.953,-22.801,-22.705,
--22.610,-22.462,-22.254,-22.032,-21.844,-21.701,-21.568,-21.399,-21.181,-20.942,-20.723,-20.539,-20.368,-20.177,-19.955,-19.721,
--19.508,-19.330,-19.169,-18.997,-18.799,-18.586,-18.386,-18.212,-18.052,-17.874,-17.657,-17.413,-17.192,-17.058,-17.058,-17.190,
--17.400,-17.599,-17.707,-17.685,-17.552,-17.369,-17.198,-17.063,-16.946,-16.805,-16.624,-16.436,-16.307,-16.292,-16.377,-16.479,
--16.485,-16.337,-16.078,-15.834,-15.741,-15.844,-16.059,-16.215,-16.157,-15.836,-15.331,-14.785,-14.309,-13.925,-13.586,-13.239,
--12.892,-12.616,-12.489,-12.532,-12.696,-12.894,-13.069,-13.223,-13.401,-13.636,-13.913,-14.168,-14.334,-14.383,-14.334,-14.233,
--14.111,-13.977,-13.821,-13.640,-13.451,-13.276,-13.128,-13.003,-12.883,-12.756,-12.629,-12.522,-12.455,-12.428,-12.426,-12.421,
--12.394,-12.341,-12.277,-12.218,-12.171,-12.121,-12.045,-11.920,-11.746,-11.546,-11.347,-11.168,-11.003,-10.840,-10.676,-10.532,
--10.433,-10.380,-10.328,-10.205,-9.953,-9.567,-9.097,-8.613,-8.153,-7.714,-7.277,-6.854,-6.497,-6.265,-6.166,-6.143,
--6.116,-6.054,-6.018,-6.119,-6.405,-6.776,-6.988,-6.774,-6.000,-4.768,-3.380,-2.184,-1.396,-1.003,-.794,-.504,
-.031,.788,1.586,2.211,2.532,2.562,2.411,2.199,1.966,1.674,1.261,.725,.141,-.376,-.750,-.985,
--1.147,-1.307,-1.483,-1.647,-1.761,-1.816,-1.837,-1.852,-1.861,-1.848,-1.803,-1.746,-1.717,-1.742,-1.811,-1.887,
--1.944,-1.994,-2.073,-2.210,-2.393,-2.571,-2.696,-2.751,-2.767,-2.787,-2.841,-2.931,-3.041,-3.160,-3.294,-3.458,
--3.665,-3.918,-4.213,-4.541,-4.895,-5.267,-5.642,-6.005,-6.344,-6.642,-6.884,-7.058,-7.164,-7.227,-7.287,-7.379,
--7.516,-7.678,-7.831,-7.954,-8.052,-8.144,-8.243,-8.345,-8.433,-8.500,-8.554,-8.614,-8.691,-8.777,-8.862,-8.948,
--9.055,-9.205,-9.396,-9.602,-9.785,-9.935,-10.072,-10.232,-10.424,-10.620,-10.774,-10.861,-10.900,-10.942,-11.026,-11.148,
--11.269,-11.345,-11.365,-11.353,-11.351,-11.387,-11.463,-11.561,-11.659,-11.736,-11.771,-11.749,-11.671,-11.567,-11.482,-11.458,
--11.503,-11.588,-11.674,-11.740,-11.789,-11.834,-11.873,-11.885,-11.857,-11.802,-11.761,-11.772,-11.830,-11.892,-11.906,-11.854,
--11.769,-11.698,-11.664,-11.647,-11.609,-11.536,-11.454,-11.402,-11.397,-11.415,-11.421,-11.405,-11.393,-11.419,-11.474,-11.498,
--11.422,-11.230,-10.995,-10.836,-10.839,-10.989,-11.178,-11.283,-11.251,-11.137,-11.055,-11.091,-11.245,-11.436,-11.572,-11.621,
--11.632,-11.688,-11.846,-12.090,-12.350,-12.552,-12.670,-12.734,-12.792,-12.873,-12.969,-13.057,-13.129,-13.200,-13.296,-13.419,
--13.541,-13.624,-13.659,-13.671,-13.705,-13.780,-13.877,-13.955,-13.993,-14.013,-14.062,-14.169,-14.313,-14.437,-14.497,-14.499,
--14.498,-14.553,-14.682,-14.851,-15.009,-15.134,-15.244,-15.372,-15.531,-15.699,-15.840,-15.941,-16.023,-16.120,-16.243,-16.371,
--16.465,-16.504,-16.501,-16.486,-16.474,-16.455,-16.411,-16.345,-16.293,-16.302,-16.388,-16.513,-16.609,-16.623,-16.551,-16.437,
--16.336,-16.270,-16.223,-16.165,-16.088,-16.017,-15.991,-16.025,-16.092,-16.140,-16.124,-16.031,-15.885,-15.726,-15.578,-15.448,
--15.325,-15.201,-15.075,-14.957,-14.854,-14.765,-14.690,-14.626,-14.574,-14.534,-14.499,-14.450,-14.373,-14.264,-14.132,-14.001,
--13.886,-13.784,-13.678,-13.550,-13.397,-13.238,-13.101,-13.001,-12.926,-12.845,-12.727,-12.568,-12.388,-12.221,-12.086,-11.980,
--11.889,-11.802,-11.725,-11.669,-11.636,-11.613,-11.577,-11.520,-11.451,-11.395,-11.367,-11.357,-11.340,-11.291,-11.209,-11.111,
--11.020,-10.942,-10.866,-10.779,-10.678,-10.578,-10.498,-10.442,-10.398,-10.345,-10.271,-10.181,-10.094,-10.026,-9.979,-9.946,
--9.920,-9.893,-9.865,-9.829,-9.781,-9.718,-9.647,-9.584,-9.544,-9.524,-9.511,-9.487,-9.445,-9.401,-9.376,-9.386,
--9.424,-9.469,-9.498,-9.506,-9.502,-9.504,-9.517,-9.536,-9.550,-9.554,-9.551,-9.548,-9.548,-9.546,-9.543,-9.544,
--9.558,-9.588,-9.620,-9.632,-9.603,-9.535,-9.449,-9.372,-9.319,-9.284,-9.248,-9.199,-9.136,-9.074,-9.025,-8.991,
--8.965,-8.936,-8.899,-8.854,-8.797,-8.723,-8.625,-8.506,-8.379,-8.261,-8.156,-8.054,-7.931,-7.772,-7.581,-7.388,
--7.228,-7.127,-7.079,-7.057,-7.024,-6.950,-6.823,-6.648,-6.440,-6.225,-6.030,-5.881,-5.794,-5.763,-5.760,-5.753,
--5.715,-5.640,-5.538,-5.419,-5.284,-5.124,-4.937,-4.739,-4.559,-4.424,-4.333,-4.261,-4.172,-4.041,-3.869,-3.673,
--3.470,-3.267,-3.063,-2.855,-2.645,-2.435,-2.221,-1.999,-1.774,-1.562,-1.384,-1.239,-1.099,-.926,-.697,-.434,
--.190,-.011,.096,.169,.257,.386,.547,.711,.859,1.002,1.159,1.343,1.545,1.752,1.959,2.177,
-2.415,2.667,2.914,3.147,3.377,3.627,3.911,4.211,4.488,4.708,4.869,5.002,5.149,5.341,5.590,5.890,
-6.219,6.547,6.839,7.079,7.279,7.480,7.718,7.995,8.271,8.507,8.708,8.925,9.196,9.485,9.676,9.671,
-9.510,9.399,9.604,10.261,11.260,12.312,13.159,13.767,14.348,15.173,16.346,17.708,18.952,19.849,20.389,20.740,
-21.072,21.400,21.583,21.447,20.932,20.130,19.209,18.303,17.468,16.712,16.048,15.508,15.113,14.833,14.598,14.348,
-14.071,13.801,13.567,13.361,13.145,12.890,12.607,12.337,12.109,11.920,11.745,11.583,11.463,11.429,11.484,11.574,
-11.620,11.577,11.477,11.401,11.417,11.520,11.638,11.683,11.624,11.499,11.384,11.330,11.328,11.321,11.247,11.076,
-10.802,10.425,9.927,9.291,8.534,7.734,7.008,6.455,6.090,5.842,5.589,5.241,4.791,4.296,3.824,3.385,
-2.930,2.395,1.770,1.125,.575,.205,.015,-.079,-.182,-.358,-.598,-.851,-1.068,-1.241,-1.394,-1.558,
--1.746,-1.951,-2.161,-2.371,-2.579,-2.780,-2.963,-3.123,-3.264,-3.404,-3.556,-3.714,-3.858,-3.963,-4.021,-4.047,
--4.058,-4.068,-4.071,-4.059,-4.029,-3.992,-3.962,-3.943,-3.928,-3.906,-3.867,-3.806,-3.717,-3.591,-3.425,-3.238,
--3.063,-2.942,-2.893,-2.906,-2.951,-3.005,-3.071,-3.167,-3.306,-3.470,-3.622,-3.727,-3.778,-3.791,-3.784,-3.751,
--3.669,-3.518,-3.313,-3.100,-2.932,-2.836,-2.795,-2.772,-2.737,-2.686,-2.635,-2.592,-2.545,-2.471,-2.356,-2.208,
--2.047,-1.883,-1.707,-1.498,-1.244,-.953,-.644,-.330,-.003,.354,.750,1.170,1.586,1.974,2.334,2.679,
-3.022,3.362,3.690,4.010,4.343,4.717,5.143,5.603,6.061,6.492,6.896,7.295,7.708,8.131,8.544,8.932,
-9.302,9.680,10.086,10.511,10.922,11.293,11.626,11.951,12.305,12.698,13.106,13.489,13.822,14.109,14.378,14.651,
-14.936,15.229,15.525,15.834,16.171,16.544,16.945,17.352,17.748,18.128,18.500,18.875,19.253,19.625,19.984,20.328,
-20.661,20.993,21.323,21.643,21.941,22.208,22.448,22.672,22.895,23.130,23.381,23.647,23.923,24.207,24.500,24.798,
-25.091,25.360,25.583,25.755,25.896,26.046,26.244,26.501,26.790,27.059,27.265,27.392,27.459,27.497,27.524,27.535,
-27.518,27.468,27.398,27.326,27.259,27.184,27.089,26.973,26.860,26.774,26.717,26.664,26.578,26.447,26.303,26.204,
-26.198,26.277,26.373,26.394,26.272,26.004,25.652,25.305,25.035,24.863,24.759,24.666,24.542,24.382,24.219,24.094,
-24.030,24.012,23.995,23.931,23.804,23.635,23.467,23.334,23.243,23.180,23.125,23.066,23.004,22.942,22.879,22.812,
-22.745,22.686,22.639,22.593,22.775,22.709,22.571,22.379,22.182,22.028,21.930,21.864,21.805,21.752,21.734,21.774,
-21.860,21.950,22.007,22.044,22.110,22.247,22.445,22.643,22.784,22.879,23.000,23.229,23.578,23.982,24.359,24.685,
-25.014,25.399,25.806,26.091,26.093,25.774,25.286,24.894,24.808,25.042,25.418,25.708,25.798,25.745,25.702,25.774,
-25.938,26.082,26.117,26.056,26.005,26.066,26.258,26.507,26.712,26.819,26.857,26.904,27.025,27.244,27.538,27.863,
-28.179,28.454,28.674,28.849,29.019,29.236,29.532,29.889,30.242,30.520,30.690,30.778,30.844,30.939,31.074,31.226,
-31.372,31.508,31.644,31.787,31.924,32.035,32.117,32.187,32.271,32.375,32.478,32.549,32.575,32.572,32.563,32.555,
-32.534,32.492,32.452,32.463,32.565,32.739,32.914,33.012,33.014,32.974,32.980,33.080,33.244,33.399,33.487,33.521,
-33.561,33.659,33.816,33.987,34.144,34.310,34.553,34.924,35.409,35.939,36.452,36.948,37.492,38.151,38.918,39.689,
-40.313,40.686,40.823,40.857,40.972,41.305,41.874,42.580,43.267,43.815,44.191,44.458,44.702,44.967,45.217,45.378,
-45.406,45.328,45.208,45.082,44.921,44.683,44.409,44.265,44.456,45.043,45.813,46.344,46.260,45.505,44.428,43.578,
-43.349,43.735,44.363,44.780,44.768,44.436,44.075,43.890,43.865,43.828,43.640,43.322,43.021,42.872,42.889,42.979,
-43.058,43.130,43.277,43.560,43.947,44.339,44.657,44.907,45.165,45.492,45.865,46.191,46.380,46.417,46.360,46.270,
-46.152,45.950,45.607,45.134,44.632,44.248,44.106,44.243,44.600,45.060,45.506,45.876,46.184,46.503,46.902,47.389,
-47.874,48.212,48.280,48.051,47.603,47.061,46.510,45.966,45.400,44.809,44.249,43.804,43.528,43.395,43.322,43.225,
-43.073,42.887,42.702,42.528,42.347,42.139,41.907,41.669,41.436,41.199,40.936,40.642,40.340,40.057,39.798,39.535,
-39.227,38.855,38.441,38.031,37.664,37.347,37.065,36.797,36.528,36.257,35.986,35.726,35.507,35.362,35.300,35.283,
-35.228,35.053,34.744,34.372,34.061,33.912,33.951,34.139,34.420,34.777,35.225,35.766,36.351,36.879,37.256,37.449,
-37.503,37.501,37.498,37.493,37.447,37.315,37.090,36.798,36.487,36.205,35.981,35.816,35.680,35.516,35.271,34.931,
-34.536,34.151,33.824,33.538,33.235,32.862,32.427,31.996,31.643,31.384,31.171,30.935,30.650,30.353,30.102,29.916,
-29.752,29.543,29.260,28.941,28.651,28.418,28.207,27.945,27.599,27.201,26.827,26.532,26.305,26.091,25.843,25.566,
-25.296,25.057,24.825,24.548,24.195,23.793,23.407,23.090,22.838,22.601,22.329,22.014,21.685,21.377,21.089,20.792,
-20.459,20.091,19.714,19.360,19.034,18.719,18.397,18.066,17.735,17.411,17.086,16.746,16.385,16.013,15.648,15.298,
-14.955,14.604,14.236,13.855,13.468,13.077,12.679,12.276,11.878,11.496,11.126,10.746,10.333,9.887,9.435,9.013,
-8.633,8.270,7.890,7.475,7.046,6.641,6.275,5.923,5.538,5.090,4.599,4.119,3.695,3.331,2.986,2.620,
-2.223,1.826,1.466,1.152,.852,.517,.121,-.326,-.785,-1.225,-1.640,-2.043,-2.452,-2.867,-3.273,-3.658,
--4.027,-4.400,-4.801,-5.236,-5.691,-6.140,-6.564,-6.961,-7.348,-7.739,-8.141,-8.544,-8.936,-9.315,-9.691,-10.079,
--10.487,-10.902,-11.300,-11.662,-11.987,-12.293,-12.606,-12.942,-13.297,-13.658,-14.010,-14.345,-14.667,-14.982,-15.300,-15.627,
--15.969,-16.328,-16.696,-17.057,-17.395,-17.708,-18.006,-18.307,-18.614,-18.916,-19.192,-19.432,-19.646,-19.860,-20.096,-20.355,
--20.618,-20.865,-21.087,-21.292,-21.492,-21.696,-21.906,-22.123,-22.358,-22.617,-22.894,-23.160,-23.380,-23.533,-23.634,-23.728,
--23.859,-24.045,-24.262,-24.460,-24.597,-24.662,-24.676,-24.679,-24.704,-24.766,-24.861,-24.976,-25.094,-25.201,-25.287,-25.346,
--25.379,-25.396,-25.407,-25.424,-25.450,-25.483,-25.518,-25.554,-25.596,-25.644,-25.692,-25.724,-25.727,-25.703,-25.663,-25.629,
--25.605,-25.581,-25.539,-25.469,-25.387,-25.324,-25.296,-25.290,-25.269,-25.204,-25.096,-24.982,-24.901,-24.859,-24.830,-24.776,
--24.688,-24.594,-24.529,-24.499,-24.462,-24.364,-24.185,-23.963,-23.763,-23.625,-23.532,-23.426,-23.262,-23.047,-22.833,-22.670,
--22.559,-22.458,-22.317,-22.126,-21.916,-21.734,-21.592,-21.464,-21.309,-21.107,-20.876,-20.651,-20.449,-20.264,-20.073,-19.868,
--19.659,-19.465,-19.293,-19.125,-18.939,-18.727,-18.504,-18.297,-18.123,-17.972,-17.819,-17.641,-17.436,-17.238,-17.098,-17.063,
--17.148,-17.323,-17.519,-17.651,-17.663,-17.550,-17.365,-17.182,-17.050,-16.966,-16.886,-16.772,-16.625,-16.497,-16.442,-16.468,
--16.518,-16.499,-16.355,-16.117,-15.894,-15.799,-15.867,-16.026,-16.132,-16.063,-15.790,-15.379,-14.937,-14.533,-14.162,-13.778,
--13.352,-12.917,-12.551,-12.331,-12.275,-12.348,-12.492,-12.680,-12.924,-13.245,-13.631,-14.017,-14.314,-14.462,-14.468,-14.395,
--14.318,-14.275,-14.255,-14.215,-14.126,-13.986,-13.820,-13.655,-13.501,-13.355,-13.218,-13.103,-13.030,-13.004,-13.012,-13.020,
--12.999,-12.944,-12.869,-12.793,-12.718,-12.626,-12.496,-12.323,-12.131,-11.953,-11.808,-11.682,-11.542,-11.370,-11.187,-11.047,
--10.996,-11.023,-11.048,-10.962,-10.695,-10.262,-9.753,-9.268,-8.849,-8.462,-8.049,-7.595,-7.163,-6.847,-6.699,-6.679,
--6.688,-6.657,-6.623,-6.706,-7.010,-7.497,-7.958,-8.103,-7.730,-6.849,-5.685,-4.546,-3.660,-3.063,-2.620,-2.140,
--1.501,-.724,.062,.698,1.088,1.231,1.199,1.070,.876,.596,.193,-.330,-.904,-1.416,-1.775,-1.962,
--2.040,-2.099,-2.198,-2.329,-2.443,-2.498,-2.498,-2.479,-2.475,-2.485,-2.486,-2.459,-2.422,-2.411,-2.451,-2.530,
--2.608,-2.652,-2.667,-2.688,-2.750,-2.854,-2.972,-3.070,-3.138,-3.189,-3.240,-3.290,-3.322,-3.330,-3.336,-3.388,
--3.528,-3.766,-4.071,-4.401,-4.735,-5.085,-5.489,-5.973,-6.526,-7.098,-7.612,-8.000,-8.230,-8.317,-8.322,-8.321,
--8.375,-8.507,-8.695,-8.894,-9.064,-9.191,-9.287,-9.371,-9.456,-9.540,-9.619,-9.689,-9.748,-9.792,-9.815,-9.819,
--9.827,-9.872,-9.979,-10.144,-10.329,-10.490,-10.607,-10.698,-10.806,-10.958,-11.146,-11.327,-11.463,-11.541,-11.586,-11.634,
--11.703,-11.784,-11.855,-11.899,-11.918,-11.931,-11.957,-12.006,-12.078,-12.160,-12.234,-12.275,-12.264,-12.200,-12.104,-12.012,
--11.956,-11.944,-11.962,-11.989,-12.017,-12.054,-12.104,-12.158,-12.196,-12.204,-12.193,-12.194,-12.233,-12.302,-12.363,-12.378,
--12.337,-12.268,-12.215,-12.196,-12.196,-12.181,-12.132,-12.061,-11.998,-11.960,-11.940,-11.915,-11.878,-11.848,-11.850,-11.887,
--11.922,-11.904,-11.807,-11.662,-11.543,-11.518,-11.598,-11.727,-11.825,-11.842,-11.793,-11.741,-11.749,-11.826,-11.930,-11.997,
--12.001,-11.972,-11.978,-12.076,-12.266,-12.498,-12.708,-12.861,-12.966,-13.056,-13.156,-13.259,-13.348,-13.419,-13.495,-13.603,
--13.746,-13.887,-13.978,-13.996,-13.967,-13.946,-13.970,-14.029,-14.086,-14.111,-14.123,-14.170,-14.291,-14.473,-14.655,-14.776,
--14.825,-14.842,-14.887,-14.985,-15.110,-15.217,-15.286,-15.341,-15.426,-15.562,-15.732,-15.891,-16.011,-16.101,-16.195,-16.314,
--16.447,-16.559,-16.625,-16.645,-16.644,-16.643,-16.646,-16.644,-16.636,-16.634,-16.655,-16.696,-16.730,-16.721,-16.656,-16.556,
--16.458,-16.387,-16.334,-16.272,-16.190,-16.107,-16.068,-16.098,-16.180,-16.258,-16.270,-16.190,-16.043,-15.878,-15.738,-15.631,
--15.541,-15.446,-15.339,-15.226,-15.119,-15.017,-14.914,-14.808,-14.708,-14.628,-14.576,-14.542,-14.499,-14.420,-14.298,-14.148,
--14.001,-13.881,-13.790,-13.712,-13.621,-13.504,-13.370,-13.239,-13.127,-13.032,-12.937,-12.819,-12.673,-12.505,-12.336,-12.179,
--12.035,-11.899,-11.772,-11.661,-11.574,-11.512,-11.463,-11.408,-11.342,-11.274,-11.223,-11.200,-11.198,-11.196,-11.173,-11.125,
--11.062,-10.999,-10.938,-10.871,-10.787,-10.689,-10.595,-10.520,-10.469,-10.425,-10.366,-10.280,-10.176,-10.078,-10.005,-9.961,
--9.936,-9.917,-9.893,-9.864,-9.832,-9.795,-9.749,-9.693,-9.631,-9.575,-9.531,-9.496,-9.463,-9.429,-9.399,-9.385,
--9.395,-9.423,-9.455,-9.473,-9.474,-9.469,-9.474,-9.497,-9.533,-9.568,-9.590,-9.593,-9.583,-9.567,-9.554,-9.546,
--9.549,-9.569,-9.603,-9.640,-9.662,-9.650,-9.599,-9.521,-9.441,-9.380,-9.345,-9.330,-9.317,-9.295,-9.258,-9.210,
--9.155,-9.100,-9.048,-8.997,-8.945,-8.881,-8.797,-8.687,-8.557,-8.425,-8.307,-8.206,-8.111,-7.998,-7.851,-7.673,
--7.492,-7.347,-7.263,-7.238,-7.243,-7.233,-7.167,-7.029,-6.826,-6.588,-6.357,-6.174,-6.060,-6.014,-6.011,-6.013,
--5.989,-5.929,-5.842,-5.746,-5.646,-5.531,-5.385,-5.203,-5.008,-4.832,-4.699,-4.607,-4.524,-4.415,-4.261,-4.070,
--3.861,-3.649,-3.437,-3.219,-2.993,-2.764,-2.535,-2.304,-2.065,-1.821,-1.589,-1.385,-1.213,-1.055,-.879,-.671,
--.446,-.245,-.100,-.008,.062,.152,.278,.427,.576,.713,.849,1.005,1.189,1.398,1.619,1.847,
-2.082,2.326,2.571,2.808,3.040,3.284,3.558,3.858,4.154,4.404,4.585,4.710,4.820,4.962,5.163,5.422,
-5.724,6.039,6.338,6.595,6.809,7.002,7.214,7.465,7.737,7.985,8.182,8.354,8.558,8.813,9.042,9.110,
-8.946,8.661,8.544,8.898,9.810,11.053,12.219,13.009,13.460,13.929,14.818,16.250,17.947,19.405,20.226,20.372,
-20.140,19.914,19.895,20.000,19.988,19.668,19.034,18.242,17.482,16.866,16.408,16.063,15.780,15.515,15.229,14.884,
-14.474,14.035,13.628,13.297,13.036,12.804,12.565,12.323,12.114,11.960,11.848,11.737,11.607,11.487,11.431,11.464,
-11.548,11.600,11.559,11.442,11.333,11.313,11.394,11.505,11.556,11.510,11.415,11.363,11.408,11.522,11.609,11.572,
-11.373,11.035,10.600,10.081,9.467,8.756,8.006,7.318,6.789,6.437,6.187,5.920,5.553,5.089,4.604,4.167,
-3.781,3.379,2.879,2.262,1.598,1.004,.569,.297,.119,-.053,-.271,-.524,-.773,-.985,-1.160,-1.319,
--1.486,-1.667,-1.856,-2.047,-2.237,-2.426,-2.608,-2.777,-2.932,-3.083,-3.247,-3.427,-3.603,-3.747,-3.839,-3.882,
--3.900,-3.916,-3.939,-3.957,-3.962,-3.952,-3.939,-3.936,-3.938,-3.933,-3.907,-3.856,-3.783,-3.684,-3.549,-3.366,
--3.143,-2.912,-2.721,-2.601,-2.557,-2.568,-2.611,-2.680,-2.784,-2.924,-3.081,-3.221,-3.317,-3.366,-3.388,-3.397,
--3.382,-3.316,-3.176,-2.975,-2.764,-2.597,-2.506,-2.478,-2.471,-2.449,-2.401,-2.335,-2.262,-2.181,-2.082,-1.962,
--1.823,-1.673,-1.509,-1.314,-1.077,-.801,-.505,-.213,.075,.382,.734,1.136,1.557,1.956,2.307,2.622,
-2.935,3.278,3.652,4.036,4.405,4.753,5.094,5.444,5.809,6.186,6.569,6.968,7.392,7.841,8.291,8.711,
-9.086,9.427,9.769,10.137,10.529,10.919,11.285,11.631,11.986,12.377,12.808,13.247,13.650,13.991,14.277,14.539,
-14.807,15.093,15.388,15.684,15.981,16.296,16.641,17.021,17.421,17.820,18.203,18.565,18.916,19.263,19.609,19.948,
-20.275,20.587,20.891,21.194,21.499,21.797,22.070,22.306,22.511,22.711,22.933,23.192,23.479,23.769,24.045,24.311,
-24.590,24.894,25.209,25.495,25.714,25.866,25.998,26.171,26.420,26.725,27.024,27.256,27.401,27.483,27.540,27.592,
-27.620,27.596,27.509,27.384,27.264,27.185,27.150,27.143,27.146,27.158,27.185,27.223,27.252,27.243,27.186,27.098,
-27.013,26.951,26.896,26.802,26.623,26.341,25.990,25.633,25.335,25.131,25.011,24.933,24.845,24.718,24.558,24.401,
-24.287,24.233,24.218,24.200,24.141,24.030,23.890,23.751,23.632,23.527,23.418,23.299,23.177,23.069,22.983,22.915,
-22.860,22.818,22.797,22.792,22.775,22.840,22.774,22.645,22.481,22.335,22.247,22.216,22.197,22.153,22.086,22.041,
-22.058,22.128,22.199,22.219,22.190,22.170,22.223,22.365,22.549,22.718,22.862,23.031,23.282,23.615,23.967,24.268,
-24.515,24.777,25.119,25.504,25.779,25.781,25.485,25.071,24.831,24.977,25.488,26.119,26.577,26.711,26.594,26.427,
-26.371,26.434,26.503,26.466,26.321,26.180,26.169,26.333,26.607,26.873,27.055,27.155,27.238,27.372,27.582,27.849,
-28.132,28.390,28.600,28.756,28.882,29.025,29.234,29.529,29.877,30.208,30.452,30.595,30.681,30.780,30.933,31.128,
-31.318,31.467,31.579,31.685,31.811,31.949,32.070,32.154,32.209,32.261,32.327,32.396,32.448,32.472,32.482,32.498,
-32.521,32.528,32.501,32.455,32.444,32.517,32.676,32.862,32.999,33.053,33.056,33.077,33.160,33.293,33.420,33.504,
-33.555,33.620,33.740,33.911,34.108,34.321,34.583,34.941,35.408,35.935,36.447,36.915,37.389,37.964,38.689,39.493,
-40.209,40.672,40.840,40.835,40.875,41.143,41.675,42.356,42.996,43.459,43.735,43.924,44.155,44.482,44.850,45.135,
-45.239,45.162,44.998,44.854,44.761,44.658,44.461,44.175,43.934,43.918,44.198,44.628,44.905,44.769,44.203,43.476,
-42.970,42.927,43.287,43.757,44.041,44.042,43.893,43.809,43.888,44.037,44.061,43.837,43.404,42.932,42.595,42.478,
-42.562,42.791,43.114,43.493,43.870,44.174,44.358,44.454,44.556,44.760,45.083,45.446,45.737,45.894,45.943,45.956,
-45.974,45.964,45.849,45.576,45.168,44.715,44.324,44.074,43.991,44.063,44.256,44.524,44.818,45.096,45.345,45.575,
-45.791,45.965,46.037,45.952,45.711,45.387,45.080,44.854,44.693,44.531,44.315,44.055,43.809,43.637,43.541,43.467,
-43.353,43.174,42.954,42.737,42.545,42.366,42.175,41.960,41.729,41.495,41.259,41.013,40.752,40.486,40.229,39.978,
-39.708,39.390,39.013,38.605,38.211,37.867,37.575,37.308,37.031,36.729,36.416,36.127,35.907,35.785,35.761,35.791,
-35.792,35.680,35.415,35.036,34.654,34.387,34.307,34.411,34.650,34.981,35.403,35.931,36.552,37.188,37.726,38.074,
-38.217,38.223,38.187,38.180,38.211,38.239,38.218,38.118,37.942,37.716,37.480,37.268,37.091,36.928,36.727,36.437,
-36.045,35.591,35.138,34.724,34.333,33.912,33.427,32.909,32.434,32.066,31.797,31.554,31.257,30.890,30.514,30.206,
-29.995,29.834,29.648,29.403,29.126,28.874,28.665,28.455,28.178,27.812,27.407,27.049,26.789,26.604,26.424,26.196,
-25.924,25.650,25.401,25.154,24.859,24.491,24.086,23.714,23.425,23.200,22.974,22.689,22.344,21.986,21.668,21.394,
-21.127,20.819,20.458,20.068,19.688,19.334,18.995,18.652,18.302,17.956,17.625,17.303,16.973,16.623,16.259,15.899,
-15.553,15.215,14.865,14.493,14.104,13.714,13.332,12.956,12.575,12.184,11.787,11.388,10.988,10.581,10.166,9.751,
-9.347,8.958,8.572,8.176,7.769,7.367,6.991,6.642,6.292,5.898,5.443,4.947,4.459,4.023,3.645,3.297,
-2.943,2.571,2.198,1.850,1.531,1.221,.885,.505,.089,-.337,-.754,-1.162,-1.571,-1.991,-2.414,-2.827,
--3.224,-3.613,-4.014,-4.442,-4.888,-5.328,-5.736,-6.107,-6.461,-6.826,-7.223,-7.641,-8.055,-8.439,-8.794,-9.145,
--9.523,-9.942,-10.381,-10.804,-11.177,-11.500,-11.802,-12.121,-12.478,-12.863,-13.247,-13.603,-13.928,-14.236,-14.552,-14.889,
--15.248,-15.615,-15.976,-16.322,-16.648,-16.956,-17.253,-17.548,-17.849,-18.157,-18.462,-18.750,-19.012,-19.252,-19.483,-19.719,
--19.969,-20.230,-20.490,-20.741,-20.973,-21.185,-21.381,-21.572,-21.776,-22.010,-22.277,-22.558,-22.815,-23.015,-23.147,-23.238,
--23.338,-23.486,-23.692,-23.923,-24.129,-24.268,-24.333,-24.350,-24.361,-24.402,-24.483,-24.597,-24.723,-24.842,-24.946,-25.030,
--25.096,-25.144,-25.177,-25.200,-25.222,-25.252,-25.292,-25.342,-25.399,-25.455,-25.507,-25.547,-25.567,-25.559,-25.527,-25.482,
--25.442,-25.414,-25.391,-25.356,-25.297,-25.223,-25.159,-25.125,-25.117,-25.106,-25.059,-24.969,-24.860,-24.768,-24.714,-24.685,
--24.652,-24.593,-24.514,-24.436,-24.367,-24.291,-24.178,-24.017,-23.830,-23.657,-23.526,-23.424,-23.312,-23.155,-22.955,-22.747,
--22.570,-22.431,-22.306,-22.161,-21.986,-21.797,-21.623,-21.473,-21.333,-21.175,-20.989,-20.781,-20.571,-20.370,-20.173,-19.974,
--19.773,-19.582,-19.410,-19.253,-19.092,-18.910,-18.702,-18.485,-18.279,-18.099,-17.940,-17.783,-17.612,-17.426,-17.243,-17.102,
--17.046,-17.102,-17.259,-17.461,-17.622,-17.667,-17.575,-17.393,-17.204,-17.077,-17.023,-16.992,-16.924,-16.800,-16.656,-16.555,
--16.524,-16.525,-16.482,-16.342,-16.125,-15.920,-15.822,-15.861,-15.971,-16.034,-15.955,-15.717,-15.380,-15.023,-14.687,-14.354,
--13.982,-13.558,-13.120,-12.741,-12.482,-12.354,-12.334,-12.392,-12.532,-12.781,-13.152,-13.605,-14.047,-14.368,-14.510,-14.494,
--14.407,-14.347,-14.364,-14.437,-14.505,-14.506,-14.420,-14.265,-14.082,-13.909,-13.766,-13.664,-13.607,-13.592,-13.603,-13.612,
--13.591,-13.532,-13.446,-13.356,-13.271,-13.172,-13.026,-12.820,-12.583,-12.377,-12.252,-12.206,-12.177,-12.094,-11.933,-11.743,
--11.612,-11.585,-11.612,-11.568,-11.336,-10.900,-10.368,-9.889,-9.551,-9.309,-9.037,-8.635,-8.127,-7.646,-7.336,-7.230,
--7.231,-7.204,-7.110,-7.058,-7.230,-7.715,-8.394,-8.966,-9.121,-8.721,-7.876,-6.861,-5.930,-5.177,-4.522,-3.817,
--2.985,-2.082,-1.256,-.657,-.347,-.285,-.373,-.519,-.682,-.873,-1.130,-1.471,-1.879,-2.294,-2.643,-2.878,
--2.999,-3.051,-3.089,-3.144,-3.206,-3.243,-3.237,-3.200,-3.167,-3.159,-3.171,-3.177,-3.161,-3.133,-3.125,-3.155,
--3.212,-3.261,-3.274,-3.255,-3.234,-3.238,-3.270,-3.314,-3.354,-3.393,-3.445,-3.509,-3.556,-3.544,-3.459,-3.344,
--3.283,-3.353,-3.572,-3.893,-4.246,-4.590,-4.953,-5.408,-6.016,-6.771,-7.584,-8.323,-8.870,-9.173,-9.269,-9.252,
--9.233,-9.287,-9.436,-9.648,-9.871,-10.060,-10.200,-10.301,-10.381,-10.457,-10.529,-10.595,-10.649,-10.689,-10.715,-10.725,
--10.724,-10.725,-10.755,-10.834,-10.961,-11.112,-11.246,-11.338,-11.396,-11.451,-11.540,-11.678,-11.844,-12.000,-12.115,-12.183,
--12.221,-12.255,-12.301,-12.359,-12.421,-12.473,-12.511,-12.540,-12.570,-12.609,-12.660,-12.717,-12.763,-12.779,-12.758,-12.702,
--12.627,-12.549,-12.480,-12.423,-12.381,-12.359,-12.366,-12.400,-12.451,-12.505,-12.551,-12.594,-12.645,-12.708,-12.771,-12.812,
--12.817,-12.795,-12.772,-12.772,-12.795,-12.815,-12.800,-12.735,-12.636,-12.539,-12.473,-12.444,-12.438,-12.434,-12.423,-12.410,
--12.396,-12.375,-12.331,-12.254,-12.156,-12.070,-12.036,-12.073,-12.163,-12.266,-12.335,-12.356,-12.347,-12.343,-12.370,-12.421,
--12.466,-12.479,-12.465,-12.458,-12.501,-12.609,-12.761,-12.913,-13.032,-13.115,-13.188,-13.273,-13.375,-13.487,-13.605,-13.740,
--13.906,-14.087,-14.241,-14.313,-14.286,-14.195,-14.117,-14.109,-14.176,-14.274,-14.350,-14.395,-14.443,-14.540,-14.694,-14.866,
--15.001,-15.077,-15.117,-15.167,-15.254,-15.360,-15.446,-15.492,-15.518,-15.566,-15.666,-15.809,-15.958,-16.080,-16.170,-16.252,
--16.348,-16.458,-16.563,-16.641,-16.688,-16.717,-16.745,-16.779,-16.817,-16.857,-16.900,-16.943,-16.968,-16.952,-16.883,-16.776,
--16.670,-16.596,-16.554,-16.512,-16.435,-16.321,-16.211,-16.160,-16.190,-16.269,-16.328,-16.309,-16.202,-16.046,-15.893,-15.773,
--15.678,-15.582,-15.471,-15.355,-15.258,-15.189,-15.138,-15.079,-14.997,-14.900,-14.808,-14.736,-14.677,-14.606,-14.498,-14.346,
--14.172,-14.010,-13.887,-13.808,-13.754,-13.693,-13.605,-13.482,-13.339,-13.194,-13.062,-12.945,-12.837,-12.726,-12.606,-12.474,
--12.331,-12.181,-12.027,-11.878,-11.742,-11.626,-11.529,-11.441,-11.348,-11.246,-11.144,-11.056,-10.998,-10.969,-10.957,-10.945,
--10.921,-10.888,-10.849,-10.807,-10.758,-10.696,-10.623,-10.550,-10.490,-10.448,-10.414,-10.371,-10.308,-10.227,-10.142,-10.070,
--10.019,-9.983,-9.954,-9.923,-9.889,-9.851,-9.812,-9.768,-9.715,-9.655,-9.594,-9.539,-9.494,-9.455,-9.421,-9.393,
--9.377,-9.381,-9.401,-9.428,-9.447,-9.451,-9.446,-9.446,-9.465,-9.505,-9.556,-9.601,-9.631,-9.645,-9.651,-9.655,
--9.661,-9.667,-9.671,-9.676,-9.682,-9.686,-9.678,-9.649,-9.594,-9.520,-9.447,-9.395,-9.374,-9.379,-9.392,-9.390,
--9.359,-9.299,-9.224,-9.150,-9.089,-9.039,-8.985,-8.911,-8.807,-8.677,-8.539,-8.411,-8.302,-8.204,-8.097,-7.964,
--7.805,-7.640,-7.501,-7.417,-7.391,-7.398,-7.392,-7.328,-7.182,-6.963,-6.710,-6.478,-6.312,-6.229,-6.215,-6.233,
--6.240,-6.211,-6.146,-6.059,-5.965,-5.865,-5.748,-5.604,-5.434,-5.259,-5.103,-4.973,-4.857,-4.730,-4.574,-4.389,
--4.189,-3.989,-3.789,-3.582,-3.358,-3.118,-2.869,-2.619,-2.366,-2.106,-1.843,-1.593,-1.374,-1.192,-1.034,-.876,
--.703,-.527,-.373,-.258,-.177,-.104,-.012,.111,.256,.408,.562,.723,.898,1.087,1.286,1.492,
-1.709,1.940,2.182,2.422,2.654,2.886,3.139,3.421,3.716,3.986,4.196,4.343,4.460,4.594,4.775,5.002,
-5.257,5.517,5.772,6.016,6.244,6.462,6.684,6.931,7.209,7.490,7.728,7.906,8.055,8.225,8.422,8.559,
-8.507,8.231,7.898,7.847,8.395,9.591,11.128,12.508,13.375,13.772,14.119,14.902,16.303,18.046,19.571,20.414,
-20.490,20.101,19.672,19.448,19.372,19.207,18.762,18.058,17.291,16.683,16.340,16.215,16.180,16.111,15.939,15.638,
-15.210,14.676,14.090,13.526,13.051,12.691,12.429,12.233,12.085,11.985,11.926,11.873,11.788,11.656,11.518,11.441,
-11.460,11.543,11.605,11.576,11.461,11.336,11.285,11.327,11.401,11.424,11.367,11.286,11.277,11.386,11.563,11.687,
-11.649,11.421,11.056,10.630,10.170,9.650,9.037,8.355,7.694,7.157,6.782,6.508,6.221,5.836,5.355,4.854,
-4.415,4.051,3.703,3.286,2.763,2.174,1.606,1.132,.765,.465,.183,-.104,-.383,-.632,-.840,-1.022,
--1.197,-1.373,-1.544,-1.701,-1.848,-2.001,-2.169,-2.352,-2.538,-2.717,-2.888,-3.056,-3.218,-3.360,-3.465,-3.529,
--3.566,-3.603,-3.654,-3.715,-3.768,-3.801,-3.816,-3.829,-3.848,-3.866,-3.866,-3.834,-3.772,-3.692,-3.593,-3.460,
--3.271,-3.023,-2.743,-2.483,-2.287,-2.175,-2.138,-2.159,-2.225,-2.333,-2.476,-2.628,-2.758,-2.842,-2.881,-2.894,
--2.894,-2.871,-2.796,-2.650,-2.446,-2.235,-2.077,-2.005,-2.007,-2.037,-2.050,-2.018,-1.942,-1.835,-1.709,-1.571,
--1.425,-1.273,-1.114,-.936,-.723,-.468,-.185,.102,.374,.635,.911,1.226,1.579,1.939,2.270,2.558,
-2.828,3.121,3.468,3.864,4.276,4.664,5.013,5.329,5.634,5.947,6.277,6.638,7.041,7.495,7.988,8.486,
-8.946,9.346,9.692,10.018,10.351,10.702,11.055,11.398,11.734,12.088,12.482,12.919,13.370,13.795,14.165,14.481,
-14.766,15.044,15.326,15.609,15.883,16.149,16.421,16.723,17.066,17.444,17.835,18.215,18.568,18.895,19.210,19.522,
-19.831,20.127,20.403,20.665,20.934,21.226,21.535,21.838,22.107,22.334,22.548,22.788,23.079,23.407,23.729,24.008,
-24.246,24.481,24.756,25.076,25.400,25.673,25.872,26.025,26.191,26.407,26.662,26.901,27.074,27.176,27.243,27.318,
-27.408,27.475,27.470,27.377,27.238,27.125,27.098,27.177,27.330,27.511,27.677,27.803,27.876,27.889,27.841,27.739,
-27.600,27.439,27.253,27.025,26.741,26.406,26.056,25.742,25.507,25.361,25.285,25.239,25.184,25.095,24.970,24.826,
-24.687,24.574,24.488,24.412,24.323,24.204,24.064,23.925,23.802,23.695,23.582,23.447,23.295,23.152,23.043,22.975,
-22.935,22.904,22.878,22.863,22.858,22.840,22.939,22.888,22.799,22.691,22.606,22.565,22.548,22.509,22.417,22.298,
-22.213,22.212,22.280,22.348,22.349,22.280,22.210,22.221,22.345,22.538,22.734,22.906,23.087,23.322,23.606,23.872,
-24.055,24.166,24.300,24.553,24.912,25.230,25.328,25.151,24.855,24.727,24.991,25.638,26.424,27.026,27.259,27.166,
-26.948,26.795,26.753,26.736,26.641,26.458,26.285,26.250,26.406,26.700,27.015,27.265,27.435,27.570,27.727,27.931,
-28.165,28.400,28.605,28.769,28.897,29.011,29.150,29.346,29.607,29.898,30.159,30.344,30.459,30.563,30.718,30.949,
-31.217,31.456,31.623,31.726,31.813,31.922,32.053,32.174,32.256,32.295,32.312,32.328,32.346,32.359,32.372,32.403,
-32.470,32.562,32.639,32.663,32.634,32.598,32.615,32.711,32.859,33.003,33.106,33.173,33.243,33.341,33.455,33.555,
-33.622,33.676,33.753,33.881,34.062,34.291,34.583,34.967,35.456,36.010,36.542,36.990,37.379,37.819,38.425,39.200,
-39.995,40.584,40.822,40.766,40.660,40.791,41.298,42.089,42.900,43.474,43.714,43.729,43.739,43.917,44.279,44.693,
-44.974,45.021,44.864,44.638,44.469,44.395,44.349,44.236,44.027,43.789,43.636,43.621,43.682,43.676,43.495,43.165,
-42.846,42.723,42.864,43.175,43.471,43.620,43.629,43.617,43.701,43.889,44.073,44.114,43.948,43.625,43.266,42.984,
-42.842,42.859,43.028,43.322,43.674,43.981,44.155,44.184,44.153,44.199,44.407,44.753,45.119,45.388,45.528,45.596,
-45.666,45.756,45.804,45.726,45.491,45.151,44.799,44.508,44.306,44.186,44.146,44.198,44.345,44.547,44.737,44.854,
-44.885,44.858,44.811,44.749,44.648,44.490,44.298,44.128,44.031,44.008,44.011,43.985,43.912,43.818,43.735,43.670,
-43.588,43.450,43.246,43.009,42.783,42.594,42.430,42.261,42.060,41.829,41.579,41.327,41.076,40.831,40.592,40.359,
-40.120,39.851,39.528,39.154,38.759,38.387,38.069,37.801,37.549,37.275,36.966,36.643,36.357,36.162,36.085,36.108,
-36.164,36.166,36.038,35.763,35.392,35.023,34.758,34.653,34.720,34.945,35.320,35.845,36.504,37.230,37.912,38.432,
-38.730,38.827,38.810,38.773,38.778,38.829,38.899,38.947,38.942,38.861,38.700,38.476,38.226,37.989,37.774,37.551,
-37.271,36.902,36.455,35.971,35.480,34.973,34.422,33.822,33.224,32.714,32.349,32.106,31.893,31.619,31.259,30.872,
-30.538,30.293,30.100,29.890,29.631,29.349,29.094,28.881,28.669,28.394,28.039,27.652,27.315,27.073,26.901,26.729,
-26.507,26.238,25.963,25.706,25.447,25.140,24.770,24.377,24.032,23.772,23.572,23.355,23.063,22.697,22.313,21.969,
-21.674,21.391,21.072,20.705,20.317,19.946,19.604,19.274,18.929,18.565,18.197,17.847,17.514,17.180,16.828,16.462,
-16.101,15.759,15.432,15.100,14.744,14.365,13.984,13.614,13.253,12.882,12.484,12.059,11.625,11.202,10.801,10.416,
-10.036,9.650,9.252,8.845,8.433,8.027,7.639,7.274,6.924,6.566,6.174,5.738,5.274,4.813,4.384,3.995,
-3.634,3.284,2.936,2.592,2.257,1.928,1.592,1.236,.861,.476,.091,-.294,-.689,-1.100,-1.525,-1.950,
--2.363,-2.769,-3.185,-3.627,-4.090,-4.548,-4.965,-5.325,-5.644,-5.966,-6.332,-6.753,-7.203,-7.633,-8.013,-8.347,
--8.673,-9.035,-9.449,-9.891,-10.315,-10.685,-11.006,-11.313,-11.652,-12.041,-12.461,-12.870,-13.233,-13.548,-13.843,-14.154,
--14.501,-14.875,-15.250,-15.601,-15.921,-16.219,-16.512,-16.811,-17.115,-17.418,-17.714,-17.999,-18.274,-18.543,-18.807,-19.065,
--19.317,-19.567,-19.820,-20.079,-20.343,-20.602,-20.845,-21.065,-21.269,-21.475,-21.702,-21.952,-22.207,-22.437,-22.617,-22.747,
--22.853,-22.974,-23.137,-23.339,-23.553,-23.740,-23.871,-23.949,-23.995,-24.042,-24.116,-24.219,-24.339,-24.457,-24.559,-24.645,
--24.720,-24.791,-24.859,-24.918,-24.963,-24.998,-25.033,-25.080,-25.143,-25.217,-25.290,-25.346,-25.377,-25.378,-25.350,-25.302,
--25.248,-25.202,-25.177,-25.166,-25.154,-25.125,-25.075,-25.019,-24.978,-24.962,-24.955,-24.930,-24.864,-24.763,-24.654,-24.569,
--24.520,-24.497,-24.473,-24.428,-24.355,-24.256,-24.133,-23.989,-23.828,-23.666,-23.518,-23.392,-23.277,-23.153,-23.002,-22.826,
--22.644,-22.474,-22.322,-22.178,-22.029,-21.867,-21.698,-21.531,-21.366,-21.201,-21.028,-20.850,-20.670,-20.491,-20.306,-20.111,
--19.905,-19.702,-19.515,-19.351,-19.199,-19.044,-18.874,-18.688,-18.497,-18.312,-18.133,-17.954,-17.771,-17.580,-17.386,-17.206,
--17.066,-17.005,-17.055,-17.219,-17.448,-17.652,-17.743,-17.681,-17.504,-17.305,-17.166,-17.108,-17.084,-17.028,-16.910,-16.764,
--16.653,-16.609,-16.601,-16.551,-16.407,-16.185,-15.975,-15.868,-15.895,-15.995,-16.057,-15.993,-15.787,-15.492,-15.177,-14.873,
--14.564,-14.217,-13.823,-13.420,-13.069,-12.812,-12.655,-12.575,-12.558,-12.625,-12.812,-13.140,-13.572,-14.017,-14.366,-14.551,
--14.582,-14.533,-14.496,-14.527,-14.615,-14.704,-14.731,-14.663,-14.516,-14.336,-14.176,-14.073,-14.040,-14.065,-14.121,-14.171,
--14.179,-14.130,-14.036,-13.927,-13.831,-13.745,-13.634,-13.458,-13.214,-12.953,-12.756,-12.678,-12.700,-12.739,-12.704,-12.569,
--12.388,-12.244,-12.165,-12.082,-11.872,-11.466,-10.922,-10.400,-10.050,-9.893,-9.797,-9.580,-9.155,-8.607,-8.130,-7.870,
--7.810,-7.801,-7.702,-7.533,-7.483,-7.766,-8.422,-9.235,-9.833,-9.916,-9.430,-8.576,-7.646,-6.823,-6.095,-5.325,
--4.412,-3.399,-2.463,-1.796,-1.485,-1.485,-1.667,-1.910,-2.151,-2.378,-2.598,-2.812,-3.013,-3.205,-3.397,-3.593,
--3.780,-3.933,-4.031,-4.073,-4.075,-4.057,-4.031,-4.000,-3.967,-3.942,-3.929,-3.923,-3.913,-3.892,-3.867,-3.853,
--3.861,-3.882,-3.900,-3.902,-3.895,-3.892,-3.899,-3.903,-3.885,-3.845,-3.808,-3.809,-3.850,-3.887,-3.854,-3.714,
--3.506,-3.331,-3.291,-3.429,-3.702,-4.030,-4.365,-4.740,-5.246,-5.963,-6.882,-7.887,-8.801,-9.476,-9.857,-9.999,
--10.027,-10.064,-10.178,-10.370,-10.594,-10.799,-10.957,-11.073,-11.166,-11.255,-11.340,-11.410,-11.453,-11.474,-11.488,-11.513,
--11.555,-11.608,-11.659,-11.706,-11.757,-11.826,-11.916,-12.012,-12.094,-12.149,-12.186,-12.232,-12.312,-12.428,-12.562,-12.680,
--12.760,-12.799,-12.819,-12.843,-12.885,-12.941,-12.997,-13.039,-13.065,-13.084,-13.108,-13.144,-13.192,-13.241,-13.278,-13.293,
--13.280,-13.235,-13.164,-13.076,-12.984,-12.903,-12.846,-12.815,-12.808,-12.819,-12.847,-12.897,-12.971,-13.064,-13.160,-13.237,
--13.281,-13.294,-13.295,-13.305,-13.332,-13.366,-13.382,-13.361,-13.297,-13.208,-13.120,-13.060,-13.038,-13.044,-13.057,-13.051,
--13.012,-12.940,-12.853,-12.765,-12.688,-12.621,-12.564,-12.523,-12.515,-12.551,-12.626,-12.712,-12.777,-12.803,-12.802,-12.800,
--12.822,-12.865,-12.909,-12.938,-12.957,-12.991,-13.059,-13.156,-13.251,-13.313,-13.334,-13.333,-13.346,-13.396,-13.488,-13.618,
--13.782,-13.974,-14.171,-14.326,-14.393,-14.358,-14.263,-14.189,-14.205,-14.324,-14.498,-14.655,-14.758,-14.820,-14.886,-14.986,
--15.108,-15.215,-15.280,-15.314,-15.352,-15.421,-15.518,-15.611,-15.675,-15.715,-15.759,-15.836,-15.952,-16.083,-16.201,-16.292,
--16.363,-16.427,-16.494,-16.564,-16.631,-16.696,-16.761,-16.827,-16.891,-16.952,-17.012,-17.074,-17.128,-17.155,-17.131,-17.055,
--16.954,-16.871,-16.831,-16.816,-16.781,-16.689,-16.544,-16.398,-16.310,-16.305,-16.348,-16.375,-16.336,-16.229,-16.092,-15.966,
--15.861,-15.755,-15.624,-15.468,-15.319,-15.214,-15.165,-15.152,-15.137,-15.097,-15.030,-14.956,-14.887,-14.819,-14.729,-14.599,
--14.431,-14.246,-14.078,-13.946,-13.854,-13.783,-13.708,-13.606,-13.469,-13.303,-13.129,-12.970,-12.841,-12.745,-12.669,-12.594,
--12.503,-12.392,-12.266,-12.134,-12.007,-11.892,-11.786,-11.683,-11.574,-11.449,-11.309,-11.160,-11.021,-10.909,-10.833,-10.790,
--10.763,-10.738,-10.704,-10.663,-10.621,-10.581,-10.541,-10.496,-10.444,-10.391,-10.345,-10.312,-10.286,-10.257,-10.215,-10.160,
--10.097,-10.040,-9.993,-9.957,-9.926,-9.892,-9.854,-9.810,-9.761,-9.708,-9.652,-9.595,-9.540,-9.489,-9.443,-9.402,
--9.371,-9.355,-9.362,-9.390,-9.429,-9.462,-9.477,-9.471,-9.458,-9.456,-9.478,-9.523,-9.578,-9.633,-9.682,-9.726,
--9.767,-9.800,-9.816,-9.808,-9.780,-9.749,-9.727,-9.716,-9.704,-9.671,-9.606,-9.522,-9.445,-9.404,-9.405,-9.432,
--9.451,-9.437,-9.384,-9.306,-9.228,-9.168,-9.127,-9.088,-9.031,-8.945,-8.830,-8.701,-8.573,-8.457,-8.352,-8.246,
--8.127,-7.988,-7.840,-7.706,-7.609,-7.561,-7.546,-7.528,-7.464,-7.325,-7.118,-6.879,-6.663,-6.511,-6.439,-6.429,
--6.445,-6.451,-6.430,-6.381,-6.311,-6.223,-6.112,-5.974,-5.812,-5.642,-5.479,-5.331,-5.188,-5.034,-4.856,-4.656,
--4.453,-4.261,-4.082,-3.901,-3.699,-3.466,-3.208,-2.941,-2.671,-2.401,-2.127,-1.857,-1.607,-1.394,-1.222,-1.080,
--.948,-.816,-.687,-.574,-.480,-.398,-.313,-.212,-.088,.055,.217,.398,.591,.787,.972,1.145,
-1.323,1.525,1.757,2.006,2.246,2.467,2.683,2.921,3.193,3.474,3.723,3.911,4.049,4.184,4.358,4.580,
-4.823,5.054,5.263,5.466,5.688,5.934,6.193,6.457,6.725,7.001,7.269,7.498,7.669,7.797,7.916,8.028,
-8.068,7.947,7.669,7.419,7.531,8.290,9.710,11.449,12.976,13.901,14.239,14.404,14.908,16.002,17.496,18.905,
-19.790,20.032,19.849,19.572,19.377,19.191,18.819,18.161,17.326,16.571,16.115,16.000,16.093,16.195,16.170,15.985,
-15.665,15.238,14.709,14.087,13.424,12.801,12.302,11.970,11.799,11.751,11.777,11.822,11.834,11.776,11.655,11.523,
-11.451,11.475,11.561,11.628,11.605,11.494,11.363,11.292,11.303,11.343,11.337,11.263,11.176,11.166,11.273,11.441,
-11.545,11.481,11.235,10.882,10.513,10.157,9.771,9.290,8.706,8.089,7.545,7.129,6.806,6.478,6.062,5.554,
-5.027,4.567,4.205,3.899,3.571,3.170,2.701,2.213,1.753,1.337,.953,.590,.251,-.044,-.287,-.491,
--.683,-.880,-1.080,-1.264,-1.421,-1.559,-1.703,-1.875,-2.077,-2.290,-2.492,-2.669,-2.818,-2.937,-3.023,-3.077,
--3.108,-3.138,-3.190,-3.271,-3.366,-3.453,-3.518,-3.564,-3.604,-3.643,-3.672,-3.674,-3.640,-3.577,-3.499,-3.405,
--3.279,-3.093,-2.840,-2.542,-2.248,-2.007,-1.842,-1.754,-1.730,-1.760,-1.840,-1.961,-2.099,-2.218,-2.293,-2.317,
--2.304,-2.267,-2.206,-2.103,-1.949,-1.761,-1.581,-1.457,-1.411,-1.431,-1.472,-1.490,-1.460,-1.379,-1.261,-1.120,
--.967,-.806,-.642,-.470,-.283,-.067,.182,.453,.729,.996,1.255,1.517,1.791,2.074,2.349,2.601,
-2.840,3.093,3.392,3.747,4.143,4.543,4.919,5.262,5.583,5.898,6.217,6.548,6.903,7.297,7.742,8.230,
-8.727,9.193,9.601,9.955,10.281,10.607,10.944,11.282,11.611,11.931,12.260,12.624,13.034,13.477,13.920,14.330,
-14.689,14.996,15.267,15.515,15.755,15.990,16.228,16.481,16.764,17.086,17.444,17.818,18.181,18.514,18.819,19.111,
-19.407,19.709,20.003,20.271,20.515,20.760,21.035,21.347,21.674,21.978,22.237,22.468,22.713,23.009,23.349,23.690,
-23.984,24.221,24.433,24.667,24.946,25.245,25.517,25.733,25.906,26.071,26.255,26.443,26.596,26.690,26.742,26.803,
-26.917,27.075,27.226,27.305,27.293,27.229,27.190,27.242,27.403,27.641,27.899,28.119,28.259,28.298,28.236,28.090,
-27.889,27.663,27.427,27.174,26.887,26.564,26.234,25.947,25.745,25.638,25.597,25.572,25.521,25.429,25.303,25.161,
-25.018,24.883,24.753,24.623,24.483,24.327,24.158,23.993,23.849,23.736,23.639,23.539,23.420,23.292,23.182,23.112,
-23.080,23.064,23.043,23.012,22.982,22.962,22.939,23.132,23.082,22.997,22.893,22.801,22.739,22.691,22.618,22.502,
-22.371,22.283,22.280,22.344,22.409,22.420,22.378,22.350,22.406,22.560,22.760,22.936,23.070,23.205,23.389,23.615,
-23.811,23.913,23.942,24.020,24.271,24.699,25.145,25.388,25.314,25.034,24.828,24.960,25.484,26.205,26.815,27.096,
-27.045,26.834,26.654,26.583,26.565,26.505,26.375,26.247,26.232,26.390,26.689,27.035,27.339,27.571,27.750,27.916,
-28.093,28.283,28.478,28.672,28.859,29.032,29.191,29.343,29.505,29.685,29.873,30.043,30.179,30.296,30.444,30.668,
-30.970,31.303,31.595,31.799,31.923,32.008,32.098,32.203,32.299,32.364,32.388,32.386,32.373,32.356,32.341,32.342,
-32.386,32.489,32.638,32.785,32.882,32.908,32.889,32.874,32.898,32.965,33.058,33.162,33.279,33.413,33.556,33.680,
-33.765,33.818,33.874,33.973,34.129,34.338,34.595,34.923,35.356,35.892,36.471,37.001,37.436,37.824,38.288,38.915,
-39.651,40.298,40.635,40.595,40.352,40.244,40.562,41.354,42.385,43.282,43.766,43.811,43.632,43.523,43.662,44.024,
-44.425,44.672,44.676,44.491,44.249,44.061,43.963,43.913,43.852,43.753,43.628,43.505,43.389,43.253,43.075,42.871,
-42.710,42.671,42.786,43.013,43.254,43.430,43.527,43.596,43.699,43.846,43.987,44.050,43.999,43.861,43.693,43.533,
-43.391,43.268,43.194,43.222,43.384,43.638,43.875,43.991,43.972,43.911,43.948,44.159,44.500,44.848,45.098,45.236,
-45.328,45.437,45.558,45.614,45.533,45.314,45.035,44.792,44.631,44.532,44.455,44.395,44.389,44.475,44.635,44.798,
-44.881,44.853,44.754,44.647,44.571,44.510,44.423,44.291,44.140,44.019,43.957,43.944,43.942,43.922,43.878,43.820,
-43.747,43.643,43.488,43.283,43.058,42.848,42.673,42.518,42.354,42.151,41.907,41.638,41.366,41.108,40.871,40.652,
-40.439,40.212,39.947,39.631,39.271,38.900,38.557,38.265,38.017,37.784,37.536,37.262,36.980,36.730,36.549,36.450,
-36.416,36.403,36.352,36.220,35.994,35.702,35.392,35.126,34.958,34.938,35.113,35.517,36.142,36.920,37.727,38.417,
-38.892,39.139,39.220,39.234,39.253,39.303,39.375,39.450,39.511,39.535,39.492,39.349,39.105,38.799,38.498,38.245,
-38.029,37.788,37.461,37.024,36.500,35.929,35.329,34.699,34.048,33.426,32.907,32.542,32.308,32.121,31.892,31.587,
-31.249,30.945,30.704,30.493,30.254,29.958,29.633,29.333,29.083,28.853,28.590,28.270,27.925,27.615,27.376,27.190,
-27.002,26.773,26.507,26.238,25.984,25.726,25.423,25.064,24.686,24.352,24.094,23.889,23.670,23.384,23.032,22.657,
-22.303,21.975,21.644,21.277,20.880,20.486,20.130,19.813,19.503,19.167,18.800,18.428,18.078,17.751,17.424,17.074,
-16.700,16.324,15.973,15.649,15.332,14.997,14.636,14.264,13.898,13.542,13.177,12.782,12.352,11.905,11.471,11.065,
-10.686,10.311,9.924,9.519,9.103,8.692,8.295,7.916,7.546,7.177,6.796,6.398,5.983,5.557,5.133,4.721,
-4.328,3.957,3.610,3.282,2.967,2.649,2.315,1.956,1.577,1.194,.819,.452,.080,-.311,-.726,-1.153,
--1.576,-1.989,-2.403,-2.838,-3.301,-3.774,-4.218,-4.601,-4.921,-5.214,-5.535,-5.920,-6.370,-6.843,-7.286,-7.671,
--8.006,-8.334,-8.694,-9.096,-9.515,-9.912,-10.264,-10.581,-10.901,-11.262,-11.673,-12.108,-12.520,-12.878,-13.184,-13.473,
--13.783,-14.130,-14.502,-14.865,-15.194,-15.486,-15.764,-16.055,-16.371,-16.700,-17.019,-17.311,-17.577,-17.833,-18.099,-18.379,
--18.666,-18.941,-19.196,-19.435,-19.673,-19.921,-20.178,-20.432,-20.671,-20.893,-21.110,-21.334,-21.568,-21.799,-22.006,-22.176,
--22.315,-22.445,-22.590,-22.761,-22.949,-23.133,-23.292,-23.418,-23.518,-23.610,-23.712,-23.832,-23.962,-24.090,-24.198,-24.283,
--24.351,-24.418,-24.495,-24.580,-24.659,-24.716,-24.748,-24.770,-24.804,-24.865,-24.949,-25.036,-25.105,-25.141,-25.143,-25.118,
--25.077,-25.032,-24.995,-24.975,-24.974,-24.982,-24.981,-24.954,-24.905,-24.848,-24.805,-24.782,-24.764,-24.725,-24.648,-24.540,
--24.431,-24.351,-24.313,-24.302,-24.283,-24.228,-24.122,-23.976,-23.812,-23.651,-23.505,-23.372,-23.244,-23.109,-22.966,-22.816,
--22.665,-22.518,-22.372,-22.225,-22.074,-21.922,-21.772,-21.622,-21.466,-21.295,-21.111,-20.924,-20.749,-20.590,-20.437,-20.274,
--20.089,-19.887,-19.685,-19.497,-19.325,-19.157,-18.985,-18.807,-18.634,-18.472,-18.320,-18.162,-17.990,-17.801,-17.607,-17.417,
--17.242,-17.099,-17.023,-17.054,-17.211,-17.458,-17.705,-17.848,-17.827,-17.669,-17.462,-17.299,-17.214,-17.168,-17.098,-16.976,
--16.834,-16.734,-16.706,-16.710,-16.665,-16.511,-16.271,-16.039,-15.921,-15.953,-16.078,-16.181,-16.163,-16.000,-15.736,-15.441,
--15.153,-14.867,-14.557,-14.214,-13.864,-13.551,-13.308,-13.137,-13.022,-12.954,-12.949,-13.047,-13.273,-13.613,-14.002,-14.356,
--14.607,-14.735,-14.775,-14.782,-14.798,-14.833,-14.860,-14.845,-14.772,-14.651,-14.519,-14.418,-14.378,-14.406,-14.487,-14.585,
--14.658,-14.673,-14.618,-14.514,-14.396,-14.295,-14.209,-14.101,-13.934,-13.703,-13.458,-13.272,-13.196,-13.210,-13.238,-13.198,
--13.068,-12.890,-12.724,-12.577,-12.384,-12.057,-11.578,-11.038,-10.592,-10.339,-10.239,-10.131,-9.856,-9.393,-8.876,-8.494,
--8.331,-8.303,-8.246,-8.080,-7.920,-8.012,-8.529,-9.389,-10.246,-10.685,-10.477,-9.708,-8.691,-7.739,-6.964,-6.263,
--5.467,-4.524,-3.566,-2.818,-2.436,-2.410,-2.603,-2.858,-3.100,-3.335,-3.586,-3.837,-4.035,-4.147,-4.202,-4.275,
--4.423,-4.637,-4.844,-4.962,-4.963,-4.885,-4.797,-4.747,-4.737,-4.737,-4.719,-4.682,-4.639,-4.606,-4.586,-4.574,
--4.562,-4.550,-4.542,-4.549,-4.576,-4.628,-4.697,-4.755,-4.765,-4.702,-4.580,-4.451,-4.375,-4.371,-4.394,-4.360,
--4.210,-3.962,-3.713,-3.578,-3.620,-3.814,-4.088,-4.396,-4.776,-5.327,-6.131,-7.168,-8.298,-9.319,-10.065,-10.492,
--10.677,-10.765,-10.878,-11.064,-11.295,-11.509,-11.663,-11.758,-11.827,-11.908,-12.016,-12.132,-12.223,-12.266,-12.271,-12.271,
--12.304,-12.386,-12.498,-12.602,-12.668,-12.691,-12.697,-12.717,-12.767,-12.838,-12.904,-12.951,-12.984,-13.028,-13.099,-13.196,
--13.294,-13.367,-13.404,-13.416,-13.425,-13.445,-13.477,-13.508,-13.530,-13.545,-13.563,-13.592,-13.633,-13.675,-13.711,-13.737,
--13.753,-13.758,-13.745,-13.707,-13.645,-13.570,-13.496,-13.434,-13.382,-13.334,-13.288,-13.259,-13.267,-13.326,-13.429,-13.552,
--13.663,-13.747,-13.801,-13.837,-13.862,-13.875,-13.875,-13.861,-13.841,-13.822,-13.804,-13.785,-13.762,-13.738,-13.717,-13.694,
--13.655,-13.585,-13.481,-13.363,-13.261,-13.194,-13.154,-13.117,-13.064,-13.003,-12.964,-12.974,-13.031,-13.100,-13.146,-13.152,
--13.138,-13.137,-13.165,-13.214,-13.267,-13.315,-13.373,-13.457,-13.564,-13.663,-13.713,-13.698,-13.636,-13.569,-13.535,-13.545,
--13.593,-13.670,-13.771,-13.890,-14.009,-14.098,-14.142,-14.158,-14.195,-14.304,-14.493,-14.721,-14.924,-15.057,-15.125,-15.169,
--15.230,-15.313,-15.394,-15.446,-15.467,-15.485,-15.531,-15.617,-15.721,-15.817,-15.889,-15.947,-16.013,-16.103,-16.214,-16.329,
--16.430,-16.503,-16.551,-16.581,-16.608,-16.647,-16.709,-16.792,-16.882,-16.966,-17.035,-17.097,-17.159,-17.218,-17.255,-17.248,
--17.196,-17.123,-17.070,-17.053,-17.056,-17.031,-16.943,-16.798,-16.646,-16.543,-16.509,-16.514,-16.504,-16.442,-16.331,-16.207,
--16.096,-15.997,-15.884,-15.733,-15.554,-15.382,-15.256,-15.187,-15.156,-15.129,-15.087,-15.034,-14.981,-14.935,-14.881,-14.797,
--14.671,-14.509,-14.335,-14.171,-14.028,-13.903,-13.785,-13.659,-13.518,-13.357,-13.181,-13.004,-12.844,-12.717,-12.627,-12.561,
--12.497,-12.418,-12.319,-12.210,-12.107,-12.019,-11.944,-11.874,-11.794,-11.697,-11.577,-11.435,-11.277,-11.119,-10.978,-10.870,
--10.798,-10.749,-10.703,-10.646,-10.579,-10.513,-10.461,-10.422,-10.384,-10.333,-10.267,-10.197,-10.140,-10.107,-10.090,-10.073,
--10.042,-9.994,-9.943,-9.904,-9.882,-9.870,-9.856,-9.830,-9.791,-9.746,-9.701,-9.655,-9.606,-9.551,-9.491,-9.434,
--9.386,-9.356,-9.349,-9.368,-9.408,-9.459,-9.506,-9.531,-9.532,-9.516,-9.503,-9.509,-9.539,-9.587,-9.644,-9.702,
--9.763,-9.824,-9.877,-9.907,-9.903,-9.868,-9.820,-9.782,-9.764,-9.757,-9.736,-9.686,-9.610,-9.534,-9.486,-9.477,
--9.491,-9.500,-9.480,-9.427,-9.359,-9.298,-9.255,-9.226,-9.196,-9.151,-9.082,-8.994,-8.892,-8.783,-8.672,-8.560,
--8.445,-8.323,-8.191,-8.050,-7.912,-7.795,-7.711,-7.660,-7.619,-7.552,-7.434,-7.262,-7.065,-6.883,-6.752,-6.681,
--6.658,-6.656,-6.654,-6.640,-6.609,-6.553,-6.461,-6.326,-6.153,-5.963,-5.780,-5.619,-5.473,-5.319,-5.139,-4.933,
--4.718,-4.518,-4.342,-4.179,-4.002,-3.792,-3.545,-3.274,-2.996,-2.720,-2.446,-2.175,-1.917,-1.687,-1.494,-1.340,
--1.214,-1.103,-1.004,-.914,-.833,-.750,-.654,-.542,-.415,-.277,-.124,.054,.261,.484,.695,.874,
-1.026,1.183,1.379,1.622,1.879,2.111,2.302,2.477,2.680,2.931,3.206,3.453,3.643,3.790,3.946,4.146,
-4.386,4.622,4.823,4.996,5.185,5.429,5.723,6.028,6.305,6.548,6.780,7.016,7.242,7.423,7.538,7.594,
-7.602,7.552,7.423,7.261,7.238,7.621,8.619,10.194,11.998,13.522,14.390,14.601,14.533,14.683,15.342,16.419,
-17.545,18.359,18.742,18.831,18.839,18.843,18.731,18.338,17.636,16.806,16.132,15.807,15.808,15.937,15.977,15.832,
-15.543,15.200,14.843,14.427,13.888,13.222,12.517,11.912,11.517,11.361,11.394,11.521,11.648,11.707,11.674,11.574,
-11.466,11.416,11.450,11.538,11.605,11.589,11.490,11.365,11.287,11.279,11.298,11.280,11.200,11.105,11.074,11.146,
-11.275,11.349,11.275,11.041,10.720,10.404,10.130,9.853,9.496,9.026,8.484,7.956,7.505,7.118,6.728,6.274,
-5.754,5.230,4.777,4.426,4.148,3.874,3.552,3.173,2.762,2.347,1.940,1.543,1.161,.812,.520,.287,
-.089,-.108,-.328,-.564,-.795,-1.001,-1.184,-1.365,-1.561,-1.772,-1.980,-2.164,-2.313,-2.426,-2.510,-2.572,
--2.615,-2.649,-2.693,-2.760,-2.855,-2.966,-3.072,-3.157,-3.222,-3.271,-3.311,-3.335,-3.335,-3.308,-3.259,-3.193,
--3.105,-2.974,-2.782,-2.528,-2.240,-1.964,-1.739,-1.581,-1.482,-1.427,-1.409,-1.430,-1.493,-1.582,-1.670,-1.724,
--1.727,-1.679,-1.593,-1.481,-1.350,-1.207,-1.067,-.951,-.881,-.856,-.858,-.858,-.831,-.770,-.680,-.570,
--.446,-.305,-.147,.027,.211,.403,.604,.819,1.051,1.299,1.557,1.820,2.082,2.335,2.573,2.794,
-3.010,3.243,3.515,3.839,4.204,4.586,4.961,5.319,5.667,6.012,6.357,6.697,7.031,7.368,7.730,8.131,
-8.567,9.012,9.430,9.800,10.129,10.442,10.764,11.106,11.457,11.799,12.125,12.443,12.777,13.151,13.568,14.012,
-14.446,14.831,15.145,15.390,15.590,15.781,15.990,16.233,16.509,16.813,17.140,17.484,17.832,18.169,18.480,18.768,
-19.051,19.348,19.664,19.984,20.280,20.540,20.779,21.031,21.317,21.628,21.928,22.184,22.397,22.603,22.847,23.145,
-23.473,23.789,24.062,24.298,24.520,24.750,24.982,25.199,25.389,25.561,25.733,25.911,26.075,26.200,26.281,26.350,
-26.456,26.631,26.861,27.090,27.266,27.368,27.423,27.481,27.581,27.732,27.915,28.097,28.246,28.330,28.323,28.214,
-28.013,27.759,27.494,27.250,27.027,26.809,26.588,26.377,26.205,26.090,26.020,25.957,25.861,25.716,25.535,25.347,
-25.173,25.015,24.867,24.721,24.577,24.437,24.302,24.170,24.043,23.927,23.826,23.735,23.645,23.550,23.457,23.385,
-23.344,23.328,23.313,23.283,23.238,23.194,23.162,23.132,23.319,23.253,23.147,23.014,22.886,22.790,22.727,22.669,
-22.596,22.512,22.450,22.438,22.471,22.517,22.547,22.572,22.633,22.758,22.935,23.107,23.232,23.322,23.435,23.614,
-23.834,24.012,24.086,24.102,24.205,24.532,25.075,25.642,25.961,25.874,25.470,25.046,24.912,25.183,25.712,26.209,
-26.439,26.373,26.165,26.012,26.011,26.116,26.216,26.243,26.229,26.270,26.442,26.747,27.119,27.472,27.750,27.944,
-28.075,28.176,28.284,28.428,28.625,28.867,29.121,29.344,29.510,29.625,29.716,29.810,29.918,30.041,30.188,30.382,
-30.646,30.980,31.344,31.676,31.927,32.086,32.178,32.241,32.301,32.360,32.409,32.442,32.456,32.454,32.440,32.422,
-32.419,32.457,32.553,32.701,32.871,33.024,33.132,33.191,33.208,33.196,33.174,33.170,33.218,33.340,33.524,33.720,
-33.871,33.955,34.004,34.084,34.242,34.475,34.739,35.001,35.280,35.629,36.086,36.630,37.196,37.731,38.247,38.799,
-39.401,39.962,40.309,40.315,40.035,39.739,39.776,40.353,41.385,42.522,43.359,43.676,43.548,43.268,43.137,43.290,
-43.643,44.000,44.197,44.191,44.048,43.866,43.705,43.576,43.471,43.392,43.355,43.356,43.353,43.289,43.129,42.906,
-42.709,42.633,42.715,42.913,43.135,43.313,43.438,43.563,43.733,43.940,44.111,44.167,44.086,43.928,43.790,43.724,
-43.702,43.647,43.516,43.351,43.257,43.321,43.526,43.763,43.905,43.913,43.863,43.882,44.044,44.319,44.605,44.817,
-44.949,45.056,45.183,45.309,45.361,45.282,45.091,44.877,44.727,44.665,44.646,44.612,44.554,44.524,44.581,44.731,
-44.910,45.032,45.046,44.974,44.876,44.796,44.732,44.650,44.523,44.367,44.223,44.128,44.083,44.059,44.021,43.952,
-43.855,43.737,43.600,43.440,43.259,43.073,42.899,42.743,42.589,42.413,42.197,41.939,41.658,41.378,41.118,40.884,
-40.670,40.459,40.228,39.963,39.660,39.333,39.010,38.715,38.457,38.227,38.007,37.786,37.567,37.364,37.189,37.041,
-36.910,36.779,36.635,36.474,36.299,36.113,35.917,35.711,35.509,35.351,35.310,35.467,35.875,36.514,37.284,38.033,
-38.627,39.010,39.223,39.358,39.492,39.646,39.793,39.897,39.952,39.972,39.968,39.913,39.764,39.503,39.167,38.832,
-38.559,38.338,38.095,37.744,37.248,36.641,35.995,35.365,34.764,34.188,33.646,33.176,32.812,32.548,32.331,32.096,
-31.818,31.523,31.261,31.051,30.860,30.632,30.334,29.989,29.650,29.357,29.103,28.849,28.567,28.267,27.986,27.748,
-27.543,27.332,27.088,26.816,26.542,26.280,26.016,25.717,25.371,25.004,24.661,24.370,24.121,23.870,23.582,23.257,
-22.919,22.589,22.258,21.900,21.500,21.077,20.672,20.315,20.000,19.689,19.351,18.986,18.625,18.296,17.999,17.701,
-17.368,16.993,16.604,16.233,15.897,15.577,15.246,14.887,14.507,14.129,13.763,13.401,13.025,12.622,12.200,11.777,
-11.368,10.973,10.577,10.170,9.754,9.341,8.945,8.571,8.208,7.843,7.461,7.063,6.654,6.244,5.836,5.432,
-5.030,4.635,4.256,3.905,3.582,3.279,2.972,2.642,2.281,1.897,1.510,1.131,.758,.377,-.025,-.449,
--.881,-1.310,-1.732,-2.159,-2.601,-3.056,-3.498,-3.898,-4.241,-4.545,-4.849,-5.198,-5.608,-6.062,-6.520,-6.945,
--7.326,-7.679,-8.035,-8.412,-8.808,-9.203,-9.572,-9.913,-10.240,-10.580,-10.954,-11.357,-11.765,-12.146,-12.484,-12.790,
--13.091,-13.417,-13.773,-14.139,-14.484,-14.785,-15.050,-15.309,-15.598,-15.928,-16.285,-16.633,-16.944,-17.215,-17.469,-17.734,
--18.024,-18.327,-18.616,-18.874,-19.100,-19.314,-19.534,-19.768,-20.007,-20.241,-20.465,-20.687,-20.916,-21.150,-21.373,-21.570,
--21.735,-21.881,-22.028,-22.194,-22.377,-22.562,-22.729,-22.870,-22.991,-23.106,-23.232,-23.376,-23.533,-23.689,-23.828,-23.937,
--24.017,-24.080,-24.146,-24.227,-24.318,-24.400,-24.450,-24.465,-24.462,-24.474,-24.526,-24.617,-24.722,-24.812,-24.868,-24.891,
--24.894,-24.889,-24.878,-24.863,-24.846,-24.836,-24.836,-24.837,-24.818,-24.768,-24.691,-24.612,-24.557,-24.534,-24.522,-24.488,
--24.412,-24.305,-24.199,-24.126,-24.094,-24.077,-24.038,-23.950,-23.816,-23.664,-23.520,-23.396,-23.280,-23.152,-23.000,-22.834,
--22.671,-22.526,-22.394,-22.260,-22.113,-21.953,-21.795,-21.649,-21.515,-21.376,-21.218,-21.039,-20.855,-20.685,-20.535,-20.394,
--20.243,-20.070,-19.885,-19.700,-19.525,-19.350,-19.162,-18.960,-18.757,-18.576,-18.425,-18.293,-18.160,-18.011,-17.849,-17.686,
--17.529,-17.375,-17.228,-17.120,-17.103,-17.220,-17.455,-17.725,-17.913,-17.938,-17.807,-17.603,-17.424,-17.315,-17.247,-17.158,
--17.018,-16.859,-16.746,-16.714,-16.725,-16.692,-16.549,-16.310,-16.072,-15.948,-15.987,-16.142,-16.295,-16.338,-16.228,-16.002,
--15.733,-15.477,-15.244,-15.016,-14.772,-14.512,-14.257,-14.030,-13.842,-13.691,-13.574,-13.503,-13.499,-13.582,-13.757,-14.002,
--14.281,-14.551,-14.776,-14.940,-15.038,-15.077,-15.067,-15.021,-14.954,-14.882,-14.820,-14.779,-14.766,-14.782,-14.827,-14.894,
--14.968,-15.026,-15.040,-14.996,-14.903,-14.790,-14.687,-14.602,-14.516,-14.394,-14.223,-14.029,-13.859,-13.751,-13.696,-13.643,
--13.539,-13.371,-13.172,-12.982,-12.802,-12.582,-12.267,-11.853,-11.412,-11.044,-10.790,-10.595,-10.345,-9.971,-9.515,-9.108,
--8.857,-8.750,-8.662,-8.488,-8.279,-8.257,-8.663,-9.533,-10.592,-11.364,-11.446,-10.760,-9.587,-8.369,-7.413,-6.737,
--6.133,-5.400,-4.531,-3.724,-3.223,-3.125,-3.328,-3.622,-3.853,-4.007,-4.164,-4.385,-4.642,-4.850,-4.957,-5.004,
--5.090,-5.278,-5.529,-5.732,-5.786,-5.685,-5.516,-5.392,-5.366,-5.404,-5.430,-5.396,-5.310,-5.225,-5.182,-5.184,
--5.198,-5.192,-5.164,-5.138,-5.153,-5.230,-5.360,-5.506,-5.615,-5.634,-5.544,-5.373,-5.193,-5.076,-5.053,-5.081,
--5.070,-4.945,-4.708,-4.444,-4.270,-4.255,-4.389,-4.614,-4.896,-5.277,-5.861,-6.723,-7.830,-9.022,-10.079,-10.834,
--11.253,-11.438,-11.545,-11.697,-11.921,-12.168,-12.366,-12.478,-12.525,-12.562,-12.637,-12.760,-12.901,-13.014,-13.071,-13.080,
--13.083,-13.123,-13.222,-13.360,-13.491,-13.572,-13.590,-13.569,-13.552,-13.568,-13.616,-13.674,-13.715,-13.739,-13.762,-13.806,
--13.875,-13.949,-14.004,-14.028,-14.028,-14.022,-14.023,-14.029,-14.033,-14.034,-14.040,-14.065,-14.109,-14.158,-14.190,-14.195,
--14.180,-14.165,-14.161,-14.163,-14.155,-14.128,-14.085,-14.040,-14.004,-13.969,-13.923,-13.859,-13.790,-13.746,-13.752,-13.815,
--13.918,-14.038,-14.159,-14.269,-14.360,-14.418,-14.432,-14.407,-14.369,-14.353,-14.376,-14.425,-14.466,-14.466,-14.420,-14.351,
--14.282,-14.217,-14.143,-14.043,-13.925,-13.816,-13.741,-13.700,-13.666,-13.606,-13.519,-13.433,-13.390,-13.404,-13.453,-13.495,
--13.502,-13.478,-13.450,-13.443,-13.460,-13.492,-13.538,-13.609,-13.721,-13.867,-14.009,-14.101,-14.119,-14.076,-14.007,-13.942,
--13.882,-13.808,-13.714,-13.620,-13.568,-13.593,-13.699,-13.862,-14.052,-14.255,-14.473,-14.702,-14.920,-15.094,-15.203,-15.256,
--15.290,-15.342,-15.420,-15.506,-15.572,-15.610,-15.637,-15.684,-15.768,-15.879,-15.992,-16.081,-16.142,-16.190,-16.247,-16.326,
--16.426,-16.529,-16.615,-16.670,-16.692,-16.699,-16.715,-16.756,-16.823,-16.902,-16.972,-17.026,-17.074,-17.130,-17.196,-17.256,
--17.284,-17.270,-17.231,-17.198,-17.190,-17.196,-17.181,-17.118,-17.010,-16.894,-16.811,-16.774,-16.758,-16.723,-16.643,-16.529,
--16.409,-16.305,-16.210,-16.100,-15.955,-15.786,-15.618,-15.479,-15.371,-15.279,-15.185,-15.090,-15.008,-14.954,-14.920,-14.882,
--14.811,-14.698,-14.552,-14.397,-14.247,-14.101,-13.951,-13.790,-13.617,-13.441,-13.265,-13.094,-12.928,-12.775,-12.647,-12.546,
--12.466,-12.387,-12.296,-12.189,-12.080,-11.983,-11.908,-11.849,-11.795,-11.736,-11.666,-11.584,-11.490,-11.381,-11.260,-11.140,
--11.036,-10.956,-10.893,-10.831,-10.753,-10.659,-10.564,-10.483,-10.422,-10.368,-10.300,-10.210,-10.108,-10.018,-9.956,-9.922,
--9.897,-9.864,-9.822,-9.783,-9.763,-9.767,-9.782,-9.789,-9.777,-9.747,-9.714,-9.685,-9.657,-9.620,-9.566,-9.499,
--9.432,-9.382,-9.360,-9.365,-9.391,-9.432,-9.478,-9.521,-9.555,-9.574,-9.583,-9.590,-9.604,-9.632,-9.668,-9.709,
--9.753,-9.801,-9.855,-9.909,-9.948,-9.960,-9.940,-9.903,-9.866,-9.843,-9.830,-9.813,-9.780,-9.733,-9.686,-9.652,
--9.635,-9.619,-9.589,-9.537,-9.476,-9.422,-9.390,-9.374,-9.359,-9.331,-9.285,-9.227,-9.165,-9.098,-9.020,-8.923,
--8.806,-8.674,-8.534,-8.388,-8.236,-8.081,-7.935,-7.812,-7.718,-7.644,-7.566,-7.460,-7.322,-7.167,-7.025,-6.918,
--6.851,-6.815,-6.795,-6.782,-6.770,-6.747,-6.694,-6.592,-6.432,-6.232,-6.025,-5.842,-5.693,-5.559,-5.412,-5.233,
--5.028,-4.820,-4.630,-4.461,-4.294,-4.104,-3.880,-3.627,-3.359,-3.089,-2.819,-2.550,-2.288,-2.047,-1.839,-1.666,
--1.521,-1.395,-1.288,-1.203,-1.140,-1.081,-1.003,-.890,-.744,-.584,-.423,-.254,-.059,.172,.421,.649,
-.831,.974,1.122,1.316,1.559,1.809,2.014,2.163,2.294,2.467,2.708,2.987,3.243,3.439,3.592,3.754,
-3.962,4.202,4.429,4.612,4.776,4.976,5.252,5.580,5.897,6.149,6.339,6.522,6.742,6.989,7.195,7.295,
-7.269,7.153,7.007,6.895,6.903,7.177,7.895,9.165,10.886,12.710,14.169,14.931,15.004,14.736,14.600,14.887,
-15.561,16.334,16.921,17.235,17.402,17.587,17.814,17.932,17.753,17.236,16.555,15.980,15.690,15.649,15.662,15.537,
-15.223,14.817,14.450,14.160,13.865,13.445,12.858,12.189,11.604,11.248,11.160,11.272,11.460,11.609,11.660,11.610,
-11.499,11.390,11.336,11.360,11.437,11.507,11.520,11.463,11.377,11.317,11.306,11.316,11.293,11.214,11.110,11.051,
-11.080,11.170,11.235,11.187,11.000,10.726,10.446,10.208,9.990,9.728,9.371,8.925,8.441,7.971,7.528,7.086,
-6.619,6.135,5.675,5.285,4.975,4.710,4.437,4.117,3.749,3.357,2.963,2.573,2.182,1.793,1.428,1.113,
-.857,.644,.440,.218,-.027,-.279,-.521,-.745,-.955,-1.158,-1.349,-1.514,-1.642,-1.737,-1.811,-1.883,
--1.959,-2.039,-2.122,-2.209,-2.308,-2.423,-2.546,-2.665,-2.762,-2.829,-2.867,-2.884,-2.886,-2.880,-2.869,-2.849,
--2.809,-2.728,-2.586,-2.375,-2.113,-1.842,-1.607,-1.438,-1.333,-1.270,-1.219,-1.168,-1.126,-1.106,-1.113,-1.131,
--1.132,-1.091,-.999,-.866,-.714,-.567,-.448,-.366,-.322,-.304,-.292,-.265,-.212,-.131,-.036,.063,
-.164,.273,.405,.567,.756,.956,1.152,1.337,1.515,1.697,1.898,2.124,2.371,2.625,2.871,3.099,
-3.318,3.546,3.806,4.107,4.445,4.798,5.150,5.494,5.834,6.179,6.524,6.859,7.171,7.462,7.756,8.081,
-8.452,8.859,9.269,9.647,9.978,10.269,10.549,10.845,11.173,11.526,11.887,12.237,12.568,12.890,13.225,13.594,
-13.999,14.418,14.808,15.129,15.370,15.556,15.735,15.952,16.223,16.537,16.867,17.196,17.519,17.841,18.158,18.463,
-18.749,19.025,19.310,19.619,19.946,20.266,20.553,20.805,21.041,21.288,21.552,21.815,22.046,22.234,22.400,22.588,
-22.832,23.132,23.462,23.783,24.067,24.309,24.516,24.698,24.865,25.028,25.199,25.385,25.578,25.761,25.921,26.064,
-26.217,26.406,26.637,26.888,27.122,27.316,27.470,27.601,27.724,27.839,27.936,28.012,28.076,28.135,28.180,28.178,
-28.095,27.921,27.683,27.433,27.213,27.038,26.895,26.765,26.642,26.529,26.425,26.310,26.157,25.953,25.714,25.474,
-25.262,25.086,24.930,24.779,24.635,24.514,24.429,24.376,24.333,24.275,24.192,24.093,23.990,23.893,23.805,23.730,
-23.671,23.632,23.604,23.571,23.523,23.463,23.407,23.363,23.319,23.425,23.358,23.260,23.135,23.010,22.917,22.870,
-22.853,22.835,22.801,22.756,22.723,22.719,22.748,22.805,22.893,23.014,23.164,23.316,23.446,23.553,23.672,23.847,
-24.078,24.300,24.425,24.425,24.395,24.506,24.884,25.480,26.052,26.304,26.086,25.518,24.931,24.657,24.819,25.263,
-25.687,25.854,25.743,25.528,25.432,25.561,25.855,26.160,26.362,26.458,26.543,26.720,27.028,27.422,27.810,28.110,
-28.282,28.341,28.339,28.343,28.418,28.597,28.865,29.165,29.423,29.593,29.680,29.727,29.789,29.892,30.036,30.210,
-30.416,30.669,30.983,31.340,31.695,31.987,32.181,32.279,32.317,32.339,32.376,32.432,32.494,32.544,32.570,32.576,
-32.575,32.583,32.616,32.678,32.774,32.905,33.069,33.253,33.422,33.528,33.536,33.455,33.352,33.317,33.412,33.621,
-33.858,34.032,34.115,34.169,34.295,34.553,34.906,35.251,35.504,35.669,35.842,36.142,36.627,37.263,37.965,38.650,
-39.263,39.749,40.031,40.038,39.788,39.452,39.317,39.641,40.476,41.602,42.628,43.216,43.275,42.994,42.698,42.636,
-42.851,43.201,43.496,43.633,43.631,43.570,43.503,43.425,43.311,43.169,43.057,43.035,43.104,43.188,43.187,43.053,
-42.836,42.658,42.623,42.749,42.963,43.166,43.308,43.423,43.584,43.821,44.085,44.269,44.296,44.177,44.015,43.920,
-43.925,43.961,43.919,43.748,43.509,43.338,43.343,43.523,43.765,43.936,43.977,43.940,43.932,44.030,44.222,44.434,
-44.603,44.721,44.829,44.955,45.076,45.130,45.077,44.938,44.788,44.700,44.688,44.708,44.705,44.668,44.640,44.678,
-44.799,44.959,45.082,45.115,45.061,44.958,44.848,44.746,44.642,44.524,44.404,44.306,44.246,44.212,44.174,44.101,
-43.982,43.829,43.662,43.498,43.343,43.197,43.059,42.926,42.790,42.635,42.446,42.214,41.947,41.661,41.381,41.120,
-40.883,40.660,40.435,40.191,39.924,39.642,39.363,39.106,38.872,38.652,38.429,38.199,37.977,37.793,37.665,37.586,
-37.517,37.411,37.234,36.990,36.715,36.462,36.264,36.127,36.031,35.959,35.920,35.965,36.158,36.535,37.064,37.649,
-38.171,38.555,38.813,39.025,39.279,39.603,39.944,40.213,40.352,40.373,40.333,40.280,40.210,40.073,39.834,39.514,
-39.177,38.877,38.602,38.275,37.812,37.193,36.486,35.801,35.220,34.752,34.352,33.972,33.602,33.261,32.963,32.692,
-32.414,32.113,31.808,31.539,31.330,31.155,30.963,30.711,30.401,30.069,29.758,29.479,29.215,28.944,28.666,28.401,
-28.166,27.953,27.733,27.483,27.201,26.904,26.608,26.311,25.997,25.656,25.298,24.950,24.628,24.327,24.026,23.712,
-23.388,23.069,22.761,22.447,22.102,21.714,21.301,20.900,20.536,20.204,19.876,19.527,19.162,18.811,18.496,18.216,
-17.936,17.620,17.258,16.871,16.493,16.144,15.813,15.473,15.104,14.709,14.309,13.923,13.555,13.195,12.826,12.443,
-12.047,11.644,11.236,10.821,10.400,9.979,9.574,9.194,8.838,8.493,8.141,7.766,7.369,6.958,6.544,6.136,
-5.736,5.342,4.953,4.574,4.213,3.873,3.551,3.232,2.902,2.552,2.186,1.812,1.436,1.057,.667,.259,
--.165,-.600,-1.041,-1.485,-1.933,-2.379,-2.807,-3.198,-3.545,-3.861,-4.177,-4.526,-4.923,-5.353,-5.786,-6.195,
--6.573,-6.935,-7.304,-7.690,-8.088,-8.481,-8.856,-9.212,-9.560,-9.914,-10.281,-10.656,-11.027,-11.382,-11.717,-12.037,
--12.358,-12.694,-13.052,-13.424,-13.788,-14.119,-14.405,-14.656,-14.903,-15.183,-15.510,-15.871,-16.233,-16.563,-16.852,-17.119,
--17.390,-17.682,-17.985,-18.274,-18.531,-18.756,-18.967,-19.181,-19.406,-19.632,-19.852,-20.066,-20.285,-20.518,-20.758,-20.986,
--21.182,-21.343,-21.489,-21.648,-21.834,-22.039,-22.237,-22.404,-22.535,-22.643,-22.755,-22.888,-23.047,-23.220,-23.388,-23.535,
--23.650,-23.734,-23.801,-23.867,-23.944,-24.029,-24.101,-24.140,-24.145,-24.136,-24.149,-24.212,-24.321,-24.446,-24.552,-24.618,
--24.650,-24.671,-24.695,-24.718,-24.728,-24.716,-24.692,-24.671,-24.659,-24.641,-24.595,-24.513,-24.413,-24.332,-24.297,-24.301,
--24.309,-24.280,-24.197,-24.083,-23.979,-23.913,-23.879,-23.843,-23.773,-23.663,-23.532,-23.410,-23.308,-23.212,-23.094,-22.939,
--22.759,-22.578,-22.417,-22.274,-22.132,-21.974,-21.803,-21.635,-21.487,-21.360,-21.237,-21.098,-20.938,-20.771,-20.613,-20.469,
--20.329,-20.179,-20.015,-19.850,-19.694,-19.548,-19.392,-19.209,-18.999,-18.785,-18.592,-18.433,-18.294,-18.154,-18.005,-17.857,
--17.726,-17.609,-17.488,-17.348,-17.215,-17.154,-17.229,-17.445,-17.725,-17.944,-18.001,-17.887,-17.683,-17.493,-17.373,-17.298,
--17.200,-17.040,-16.844,-16.688,-16.622,-16.627,-16.620,-16.522,-16.325,-16.106,-15.978,-16.008,-16.170,-16.360,-16.463,-16.419,
--16.247,-16.020,-15.812,-15.656,-15.542,-15.432,-15.294,-15.114,-14.906,-14.692,-14.497,-14.334,-14.203,-14.098,-14.014,-13.962,
--13.971,-14.072,-14.276,-14.563,-14.873,-15.132,-15.283,-15.311,-15.249,-15.161,-15.104,-15.106,-15.154,-15.215,-15.255,-15.267,
--15.262,-15.263,-15.273,-15.276,-15.249,-15.179,-15.081,-14.985,-14.914,-14.864,-14.805,-14.711,-14.576,-14.421,-14.273,-14.137,
--13.993,-13.812,-13.592,-13.358,-13.141,-12.949,-12.753,-12.511,-12.211,-11.876,-11.545,-11.233,-10.914,-10.556,-10.170,-9.816,
--9.559,-9.395,-9.233,-8.976,-8.647,-8.442,-8.645,-9.407,-10.570,-11.669,-12.164,-11.760,-10.595,-9.146,-7.925,-7.166,
--6.735,-6.305,-5.648,-4.816,-4.086,-3.734,-3.825,-4.187,-4.561,-4.789,-4.891,-4.990,-5.169,-5.402,-5.600,-5.715,
--5.791,-5.919,-6.135,-6.368,-6.491,-6.427,-6.218,-5.999,-5.896,-5.928,-6.013,-6.038,-5.956,-5.811,-5.693,-5.658,
--5.690,-5.724,-5.711,-5.657,-5.615,-5.648,-5.778,-5.977,-6.180,-6.318,-6.345,-6.259,-6.104,-5.955,-5.880,-5.900,
--5.971,-6.002,-5.920,-5.720,-5.480,-5.308,-5.276,-5.381,-5.573,-5.829,-6.197,-6.779,-7.643,-8.748,-9.926,-10.953,
--11.670,-12.057,-12.225,-12.336,-12.505,-12.748,-13.004,-13.202,-13.311,-13.357,-13.395,-13.468,-13.580,-13.705,-13.805,-13.858,
--13.875,-13.887,-13.930,-14.022,-14.150,-14.281,-14.377,-14.423,-14.431,-14.428,-14.437,-14.460,-14.480,-14.485,-14.478,-14.476,
--14.498,-14.544,-14.595,-14.627,-14.632,-14.617,-14.602,-14.595,-14.592,-14.583,-14.571,-14.571,-14.598,-14.651,-14.705,-14.729,
--14.711,-14.665,-14.619,-14.596,-14.590,-14.581,-14.554,-14.512,-14.480,-14.473,-14.488,-14.500,-14.484,-14.436,-14.375,-14.329,
--14.318,-14.350,-14.421,-14.528,-14.664,-14.809,-14.931,-14.999,-15.006,-14.980,-14.966,-14.989,-15.039,-15.075,-15.059,-14.990,
--14.900,-14.829,-14.786,-14.747,-14.674,-14.555,-14.413,-14.289,-14.207,-14.156,-14.107,-14.039,-13.963,-13.908,-13.893,-13.908,
--13.924,-13.913,-13.873,-13.820,-13.775,-13.746,-13.734,-13.744,-13.793,-13.895,-14.044,-14.208,-14.344,-14.432,-14.480,-14.509,
--14.522,-14.492,-14.378,-14.169,-13.910,-13.692,-13.604,-13.684,-13.906,-14.197,-14.488,-14.735,-14.929,-15.075,-15.179,-15.249,
--15.298,-15.347,-15.414,-15.503,-15.599,-15.685,-15.754,-15.817,-15.893,-15.994,-16.113,-16.229,-16.321,-16.379,-16.411,-16.438,
--16.478,-16.540,-16.619,-16.697,-16.759,-16.795,-16.812,-16.826,-16.850,-16.886,-16.922,-16.945,-16.954,-16.965,-16.999,-17.065,
--17.146,-17.216,-17.252,-17.256,-17.248,-17.247,-17.252,-17.247,-17.212,-17.149,-17.077,-17.023,-16.992,-16.967,-16.926,-16.855,
--16.763,-16.671,-16.587,-16.500,-16.393,-16.255,-16.100,-15.946,-15.805,-15.670,-15.525,-15.364,-15.205,-15.076,-14.994,-14.949,
--14.907,-14.835,-14.724,-14.588,-14.447,-14.311,-14.173,-14.017,-13.836,-13.642,-13.448,-13.267,-13.095,-12.927,-12.764,-12.612,
--12.482,-12.375,-12.278,-12.180,-12.075,-11.967,-11.867,-11.781,-11.707,-11.638,-11.574,-11.518,-11.474,-11.438,-11.398,-11.343,
--11.271,-11.193,-11.121,-11.058,-10.992,-10.911,-10.811,-10.704,-10.605,-10.523,-10.450,-10.369,-10.269,-10.157,-10.050,-9.963,
--9.896,-9.840,-9.782,-9.727,-9.687,-9.676,-9.692,-9.714,-9.721,-9.703,-9.671,-9.643,-9.628,-9.620,-9.600,-9.555,
--9.490,-9.424,-9.382,-9.371,-9.385,-9.412,-9.439,-9.465,-9.496,-9.535,-9.579,-9.625,-9.668,-9.705,-9.738,-9.768,
--9.797,-9.825,-9.859,-9.899,-9.943,-9.983,-10.009,-10.015,-10.006,-9.991,-9.977,-9.965,-9.952,-9.934,-9.912,-9.892,
--9.871,-9.842,-9.792,-9.719,-9.637,-9.568,-9.531,-9.524,-9.528,-9.519,-9.484,-9.429,-9.372,-9.325,-9.285,-9.234,
--9.155,-9.043,-8.906,-8.755,-8.595,-8.427,-8.250,-8.073,-7.911,-7.774,-7.659,-7.550,-7.431,-7.299,-7.164,-7.046,
--6.955,-6.890,-6.844,-6.810,-6.788,-6.775,-6.760,-6.716,-6.618,-6.461,-6.267,-6.075,-5.915,-5.791,-5.679,-5.547,
--5.379,-5.184,-4.985,-4.798,-4.620,-4.434,-4.226,-3.997,-3.755,-3.509,-3.259,-2.999,-2.731,-2.471,-2.237,-2.042,
--1.875,-1.724,-1.579,-1.452,-1.357,-1.296,-1.245,-1.170,-1.049,-.887,-.713,-.544,-.373,-.174,.068,.334,
-.580,.775,.925,1.075,1.267,1.499,1.725,1.900,2.019,2.133,2.306,2.556,2.844,3.099,3.284,3.425,
-3.583,3.797,4.049,4.288,4.484,4.661,4.877,5.164,5.490,5.782,5.990,6.138,6.299,6.529,6.800,7.014,
-7.072,6.948,6.710,6.481,6.384,6.531,7.043,8.035,9.539,11.409,13.291,14.741,15.458,15.464,15.107,14.842,
-14.955,15.407,15.926,16.248,16.324,16.327,16.473,16.815,17.184,17.323,17.096,16.588,16.034,15.633,15.412,15.242,
-14.972,14.565,14.112,13.733,13.462,13.216,12.877,12.400,11.866,11.434,11.229,11.265,11.449,11.644,11.748,11.730,
-11.620,11.470,11.334,11.250,11.238,11.287,11.363,11.424,11.446,11.438,11.429,11.438,11.450,11.426,11.343,11.220,
-11.115,11.080,11.119,11.174,11.165,11.045,10.832,10.588,10.372,10.190,10.000,9.749,9.408,8.991,8.538,8.081,
-7.638,7.215,6.822,6.474,6.179,5.918,5.652,5.340,4.968,4.552,4.124,3.705,3.291,2.865,2.420,1.972,
-1.554,1.195,.902,.661,.446,.240,.039,-.156,-.342,-.522,-.693,-.847,-.970,-1.055,-1.110,-1.155,
--1.213,-1.296,-1.401,-1.517,-1.636,-1.758,-1.887,-2.024,-2.158,-2.269,-2.342,-2.371,-2.366,-2.349,-2.339,-2.343,
--2.353,-2.341,-2.277,-2.138,-1.927,-1.672,-1.420,-1.218,-1.085,-1.015,-.975,-.931,-.862,-.771,-.674,-.586,
--.509,-.430,-.330,-.201,-.048,.109,.242,.330,.369,.372,.365,.371,.408,.476,.566,.666,
-.771,.881,1.006,1.153,1.325,1.514,1.708,1.895,2.069,2.233,2.397,2.576,2.777,2.998,3.230,3.463,
-3.695,3.935,4.197,4.491,4.807,5.129,5.440,5.733,6.020,6.311,6.607,6.892,7.147,7.368,7.577,7.813,
-8.115,8.491,8.920,9.359,9.767,10.121,10.423,10.690,10.950,11.228,11.538,11.880,12.237,12.582,12.897,13.186,
-13.478,13.801,14.165,14.543,14.891,15.178,15.410,15.627,15.874,16.170,16.498,16.826,17.136,17.433,17.737,18.058,
-18.383,18.685,18.952,19.196,19.449,19.731,20.038,20.344,20.622,20.867,21.096,21.326,21.562,21.792,22.002,22.195,
-22.394,22.629,22.916,23.241,23.572,23.873,24.123,24.324,24.492,24.651,24.820,25.007,25.206,25.407,25.604,25.801,
-26.012,26.250,26.510,26.766,26.986,27.155,27.284,27.405,27.539,27.680,27.802,27.882,27.924,27.957,28.011,28.084,
-28.137,28.120,28.009,27.821,27.601,27.393,27.212,27.050,26.898,26.750,26.610,26.470,26.307,26.101,25.854,25.597,
-25.371,25.200,25.073,24.958,24.835,24.711,24.617,24.574,24.573,24.574,24.539,24.453,24.334,24.211,24.107,24.027,
-23.962,23.908,23.861,23.816,23.764,23.697,23.619,23.543,23.480,23.425,23.487,23.447,23.399,23.325,23.236,23.157,
-23.109,23.092,23.084,23.064,23.030,23.002,23.007,23.062,23.164,23.293,23.427,23.551,23.662,23.778,23.928,24.136,
-24.387,24.615,24.727,24.667,24.485,24.343,24.428,24.820,25.393,25.858,25.934,25.534,24.854,24.264,24.084,24.383,
-24.949,25.446,25.644,25.552,25.383,25.376,25.634,26.068,26.491,26.761,26.871,26.931,27.074,27.360,27.749,28.139,
-28.428,28.568,28.575,28.513,28.464,28.499,28.650,28.898,29.181,29.428,29.594,29.687,29.754,29.848,29.990,30.166,
-30.350,30.537,30.750,31.023,31.361,31.725,32.045,32.263,32.366,32.393,32.406,32.452,32.534,32.624,32.689,32.719,
-32.732,32.755,32.801,32.856,32.902,32.938,32.998,33.130,33.350,33.612,33.816,33.876,33.778,33.614,33.521,33.595,
-33.818,34.078,34.255,34.322,34.371,34.540,34.898,35.375,35.809,36.060,36.123,36.138,36.303,36.742,37.434,38.241,
-38.985,39.528,39.800,39.799,39.589,39.310,39.170,39.378,40.031,41.019,42.047,42.772,42.999,42.789,42.412,42.171,
-42.222,42.506,42.838,43.054,43.119,43.106,43.103,43.132,43.145,43.090,42.983,42.899,42.909,43.009,43.109,43.099,
-42.946,42.720,42.559,42.563,42.733,42.980,43.197,43.344,43.459,43.616,43.840,44.083,44.255,44.301,44.244,44.175,
-44.172,44.238,44.293,44.238,44.043,43.777,43.570,43.520,43.627,43.802,43.933,43.970,43.947,43.949,44.032,44.193,
-44.377,44.532,44.650,44.754,44.866,44.970,45.027,45.003,44.911,44.802,44.732,44.724,44.754,44.786,44.801,44.812,
-44.848,44.919,45.005,45.065,45.066,45.004,44.900,44.781,44.664,44.557,44.464,44.391,44.341,44.309,44.273,44.211,
-44.104,43.954,43.778,43.596,43.427,43.279,43.152,43.039,42.929,42.804,42.646,42.445,42.199,41.920,41.630,41.349,
-41.091,40.857,40.636,40.411,40.170,39.912,39.653,39.413,39.202,39.009,38.805,38.571,38.311,38.064,37.885,37.807,
-37.818,37.855,37.838,37.708,37.457,37.135,36.815,36.567,36.421,36.371,36.394,36.477,36.626,36.858,37.171,37.526,
-37.856,38.105,38.276,38.437,38.688,39.087,39.599,40.108,40.482,40.653,40.653,40.575,40.500,40.441,40.350,40.175,
-39.910,39.594,39.263,38.904,38.452,37.852,37.116,36.347,35.674,35.182,34.858,34.618,34.370,34.080,33.766,33.464,
-33.184,32.900,32.588,32.252,31.931,31.663,31.455,31.272,31.068,30.815,30.522,30.215,29.912,29.615,29.318,29.026,
-28.754,28.516,28.308,28.102,27.869,27.591,27.276,26.939,26.596,26.250,25.903,25.558,25.223,24.902,24.585,24.258,
-23.913,23.559,23.213,22.885,22.567,22.237,21.880,21.501,21.119,20.756,20.413,20.077,19.734,19.381,19.032,18.705,
-18.400,18.098,17.779,17.431,17.066,16.702,16.352,16.013,15.665,15.295,14.900,14.495,14.098,13.718,13.356,13.000,
-12.637,12.260,11.868,11.463,11.053,10.644,10.244,9.858,9.487,9.131,8.781,8.426,8.057,7.666,7.257,6.841,
-6.430,6.036,5.660,5.296,4.934,4.570,4.203,3.840,3.484,3.137,2.794,2.448,2.093,1.728,1.353,.966,
-.567,.155,-.275,-.724,-1.190,-1.657,-2.103,-2.504,-2.851,-3.159,-3.466,-3.810,-4.210,-4.652,-5.097,-5.508,
--5.875,-6.217,-6.568,-6.947,-7.351,-7.753,-8.130,-8.480,-8.823,-9.181,-9.559,-9.944,-10.313,-10.652,-10.966,-11.275,
--11.601,-11.952,-12.324,-12.702,-13.072,-13.422,-13.741,-14.027,-14.289,-14.547,-14.825,-15.138,-15.479,-15.825,-16.151,-16.448,
--16.727,-17.008,-17.300,-17.597,-17.878,-18.131,-18.361,-18.586,-18.821,-19.062,-19.295,-19.511,-19.714,-19.922,-20.150,-20.392,
--20.624,-20.824,-20.989,-21.143,-21.317,-21.524,-21.748,-21.955,-22.115,-22.228,-22.319,-22.423,-22.558,-22.725,-22.903,-23.073,
--23.219,-23.337,-23.430,-23.506,-23.575,-23.644,-23.712,-23.769,-23.804,-23.819,-23.833,-23.878,-23.974,-24.111,-24.255,-24.364,
--24.417,-24.427,-24.428,-24.447,-24.484,-24.518,-24.528,-24.513,-24.490,-24.474,-24.462,-24.432,-24.367,-24.273,-24.183,-24.133,
--24.133,-24.155,-24.155,-24.101,-24.002,-23.893,-23.810,-23.759,-23.714,-23.642,-23.530,-23.397,-23.271,-23.172,-23.086,-22.985,
--22.845,-22.671,-22.486,-22.313,-22.159,-22.009,-21.850,-21.679,-21.512,-21.363,-21.235,-21.114,-20.984,-20.839,-20.689,-20.547,
--20.413,-20.276,-20.127,-19.968,-19.813,-19.675,-19.550,-19.415,-19.253,-19.064,-18.868,-18.687,-18.525,-18.366,-18.193,-18.009,
--17.839,-17.709,-17.613,-17.519,-17.400,-17.271,-17.200,-17.263,-17.476,-17.767,-18.002,-18.069,-17.949,-17.723,-17.510,-17.379,
--17.309,-17.222,-17.061,-16.843,-16.646,-16.544,-16.543,-16.571,-16.534,-16.394,-16.200,-16.059,-16.059,-16.208,-16.425,-16.597,
--16.640,-16.548,-16.381,-16.223,-16.128,-16.099,-16.090,-16.039,-15.907,-15.700,-15.457,-15.232,-15.049,-14.895,-14.722,-14.492,
--14.212,-13.953,-13.821,-13.901,-14.205,-14.653,-15.106,-15.435,-15.581,-15.572,-15.499,-15.455,-15.485,-15.568,-15.649,-15.674,
--15.634,-15.559,-15.497,-15.470,-15.468,-15.455,-15.406,-15.326,-15.248,-15.203,-15.194,-15.189,-15.146,-15.041,-14.881,-14.696,
--14.507,-14.315,-14.104,-13.868,-13.616,-13.371,-13.149,-12.938,-12.713,-12.451,-12.150,-11.821,-11.479,-11.137,-10.814,-10.542,
--10.344,-10.199,-10.028,-9.737,-9.315,-8.910,-8.799,-9.222,-10.182,-11.345,-12.164,-12.178,-11.296,-9.873,-8.495,-7.619,
--7.307,-7.241,-6.997,-6.364,-5.487,-4.735,-4.421,-4.595,-5.044,-5.481,-5.744,-5.860,-5.956,-6.112,-6.303,-6.451,
--6.524,-6.575,-6.683,-6.859,-7.016,-7.035,-6.873,-6.614,-6.409,-6.365,-6.457,-6.562,-6.558,-6.422,-6.236,-6.111,
--6.098,-6.153,-6.186,-6.146,-6.057,-6.001,-6.054,-6.232,-6.487,-6.737,-6.911,-6.977,-6.949,-6.874,-6.819,-6.833,
--6.926,-7.049,-7.121,-7.075,-6.908,-6.694,-6.533,-6.497,-6.586,-6.759,-6.993,-7.333,-7.871,-8.668,-9.684,-10.762,
--11.701,-12.363,-12.738,-12.933,-13.091,-13.305,-13.577,-13.851,-14.065,-14.201,-14.281,-14.345,-14.417,-14.497,-14.568,-14.617,
--14.643,-14.661,-14.685,-14.730,-14.804,-14.900,-15.006,-15.103,-15.177,-15.227,-15.256,-15.272,-15.272,-15.253,-15.216,-15.171,
--15.142,-15.141,-15.167,-15.198,-15.215,-15.209,-15.193,-15.182,-15.181,-15.179,-15.163,-15.134,-15.113,-15.121,-15.163,-15.216,
--15.248,-15.239,-15.199,-15.153,-15.120,-15.095,-15.057,-14.993,-14.917,-14.865,-14.868,-14.927,-15.010,-15.073,-15.089,-15.059,
--15.002,-14.943,-14.902,-14.895,-14.939,-15.044,-15.198,-15.366,-15.501,-15.575,-15.592,-15.584,-15.584,-15.595,-15.595,-15.561,
--15.495,-15.429,-15.396,-15.399,-15.401,-15.351,-15.225,-15.046,-14.867,-14.736,-14.662,-14.621,-14.581,-14.529,-14.475,-14.433,
--14.407,-14.383,-14.344,-14.287,-14.219,-14.153,-14.095,-14.047,-14.017,-14.019,-14.069,-14.166,-14.293,-14.425,-14.554,-14.691,
--14.844,-14.995,-15.091,-15.071,-14.910,-14.652,-14.398,-14.255,-14.279,-14.446,-14.677,-14.889,-15.034,-15.114,-15.164,-15.221,
--15.303,-15.408,-15.521,-15.627,-15.717,-15.788,-15.847,-15.907,-15.980,-16.076,-16.193,-16.319,-16.439,-16.541,-16.618,-16.672,
--16.707,-16.729,-16.747,-16.769,-16.796,-16.827,-16.859,-16.889,-16.918,-16.947,-16.970,-16.977,-16.961,-16.925,-16.891,-16.886,
--16.926,-17.005,-17.098,-17.176,-17.225,-17.250,-17.264,-17.276,-17.280,-17.267,-17.235,-17.192,-17.150,-17.114,-17.081,-17.042,
--16.996,-16.949,-16.905,-16.855,-16.782,-16.673,-16.531,-16.377,-16.233,-16.103,-15.973,-15.817,-15.631,-15.437,-15.268,-15.149,
--15.071,-15.004,-14.916,-14.796,-14.657,-14.519,-14.389,-14.256,-14.102,-13.921,-13.724,-13.528,-13.344,-13.166,-12.983,-12.793,
--12.605,-12.435,-12.296,-12.183,-12.085,-11.990,-11.892,-11.796,-11.703,-11.612,-11.522,-11.439,-11.373,-11.334,-11.320,-11.315,
--11.298,-11.260,-11.203,-11.139,-11.077,-11.017,-10.948,-10.866,-10.774,-10.685,-10.607,-10.538,-10.467,-10.386,-10.294,-10.200,
--10.110,-10.024,-9.936,-9.848,-9.768,-9.713,-9.693,-9.699,-9.707,-9.693,-9.654,-9.603,-9.565,-9.550,-9.551,-9.543,
--9.512,-9.460,-9.408,-9.380,-9.382,-9.406,-9.431,-9.449,-9.464,-9.487,-9.530,-9.591,-9.657,-9.715,-9.758,-9.787,
--9.811,-9.837,-9.867,-9.902,-9.938,-9.973,-10.004,-10.031,-10.055,-10.078,-10.100,-10.120,-10.132,-10.135,-10.127,-10.115,
--10.098,-10.073,-10.030,-9.962,-9.877,-9.791,-9.729,-9.699,-9.694,-9.689,-9.661,-9.606,-9.537,-9.476,-9.434,-9.403,
--9.365,-9.302,-9.210,-9.093,-8.958,-8.807,-8.637,-8.448,-8.251,-8.061,-7.888,-7.731,-7.580,-7.428,-7.275,-7.137,
--7.023,-6.935,-6.865,-6.802,-6.748,-6.714,-6.702,-6.703,-6.685,-6.620,-6.499,-6.344,-6.189,-6.062,-5.960,-5.860,
--5.733,-5.571,-5.384,-5.193,-5.006,-4.816,-4.613,-4.394,-4.168,-3.944,-3.722,-3.488,-3.230,-2.956,-2.692,-2.463,
--2.278,-2.117,-1.955,-1.783,-1.619,-1.489,-1.403,-1.339,-1.261,-1.143,-.992,-.834,-.685,-.534,-.348,-.111,
-.159,.417,.629,.800,.968,1.166,1.391,1.600,1.758,1.874,2.000,2.193,2.457,2.741,2.976,3.137,
-3.263,3.425,3.659,3.941,4.213,4.437,4.637,4.864,5.145,5.446,5.701,5.876,6.004,6.163,6.392,6.644,
-6.806,6.783,6.571,6.270,6.025,5.963,6.185,6.789,7.872,9.462,11.412,13.365,14.871,15.621,15.641,15.294,
-15.058,15.225,15.727,16.238,16.440,16.280,15.993,15.906,16.175,16.662,17.046,17.061,16.671,16.060,15.469,15.028,
-14.699,14.373,13.986,13.573,13.211,12.933,12.687,12.391,12.023,11.655,11.406,11.356,11.481,11.668,11.797,11.802,
-11.697,11.540,11.382,11.251,11.159,11.115,11.129,11.197,11.296,11.394,11.470,11.526,11.570,11.597,11.584,11.507,
-11.371,11.221,11.116,11.087,11.110,11.119,11.055,10.905,10.708,10.521,10.372,10.242,10.079,9.835,9.503,9.112,
-8.709,8.336,8.011,7.733,7.492,7.264,7.021,6.733,6.380,5.965,5.513,5.054,4.602,4.148,3.663,3.129,
-2.554,1.976,1.444,.996,.648,.391,.207,.071,-.037,-.139,-.250,-.375,-.505,-.622,-.706,-.754,
--.781,-.807,-.852,-.919,-1.003,-1.094,-1.191,-1.301,-1.426,-1.559,-1.680,-1.766,-1.805,-1.803,-1.780,-1.763,
--1.762,-1.768,-1.756,-1.697,-1.577,-1.399,-1.189,-.979,-.799,-.664,-.569,-.497,-.424,-.332,-.213,-.072,
-.080,.229,.368,.496,.616,.726,.820,.891,.935,.956,.965,.976,.996,1.029,1.074,1.135,
-1.220,1.339,1.491,1.667,1.847,2.015,2.163,2.299,2.438,2.593,2.773,2.974,3.188,3.404,3.615,3.815,
-4.011,4.219,4.458,4.741,5.060,5.389,5.696,5.960,6.184,6.386,6.584,6.781,6.960,7.109,7.234,7.368,
-7.559,7.839,8.214,8.662,9.148,9.635,10.093,10.496,10.828,11.092,11.316,11.547,11.823,12.150,12.491,12.798,
-13.046,13.256,13.481,13.768,14.122,14.503,14.858,15.164,15.437,15.715,16.022,16.350,16.670,16.967,17.254,17.561,
-17.902,18.260,18.587,18.848,19.046,19.225,19.437,19.707,20.018,20.326,20.598,20.833,21.053,21.285,21.542,21.814,
-22.088,22.358,22.633,22.919,23.215,23.503,23.763,23.981,24.164,24.331,24.505,24.697,24.902,25.105,25.296,25.481,
-25.681,25.919,26.195,26.483,26.736,26.920,27.029,27.096,27.167,27.271,27.402,27.531,27.638,27.727,27.822,27.939,
-28.065,28.158,28.178,28.110,27.973,27.798,27.604,27.393,27.158,26.912,26.682,26.492,26.339,26.190,26.009,25.791,
-25.568,25.387,25.273,25.208,25.149,25.067,24.965,24.875,24.824,24.804,24.779,24.712,24.599,24.462,24.340,24.250,
-24.188,24.136,24.083,24.027,23.970,23.905,23.824,23.726,23.625,23.542,23.487,23.583,23.570,23.563,23.528,23.454,
-23.359,23.275,23.224,23.204,23.203,23.214,23.246,23.315,23.426,23.564,23.699,23.808,23.893,23.984,24.124,24.333,
-24.587,24.810,24.899,24.782,24.484,24.147,23.975,24.122,24.574,25.118,25.439,25.304,24.726,23.983,23.468,23.457,
-23.948,24.679,25.303,25.608,25.630,25.587,25.697,26.031,26.481,26.862,27.056,27.085,27.084,27.188,27.449,27.813,
-28.171,28.430,28.555,28.577,28.557,28.557,28.621,28.764,28.970,29.199,29.406,29.567,29.689,29.807,29.954,30.136,
-30.334,30.521,30.696,30.890,31.144,31.469,31.829,32.148,32.366,32.469,32.502,32.535,32.611,32.722,32.823,32.877,
-32.886,32.894,32.946,33.047,33.156,33.217,33.220,33.221,33.308,33.527,33.831,34.094,34.195,34.107,33.931,33.830,
-33.912,34.154,34.419,34.576,34.606,34.628,34.807,35.215,35.762,36.249,36.513,36.550,36.524,36.662,37.097,37.787,
-38.545,39.152,39.471,39.491,39.315,39.106,39.038,39.256,39.827,40.688,41.638,42.404,42.768,42.688,42.329,41.969,
-41.835,41.981,42.288,42.569,42.707,42.714,42.685,42.700,42.762,42.818,42.823,42.799,42.810,42.897,43.023,43.088,
-43.008,42.787,42.535,42.396,42.456,42.694,43.003,43.272,43.457,43.588,43.724,43.894,44.073,44.207,44.269,44.284,
-44.305,44.370,44.461,44.514,44.465,44.303,44.083,43.891,43.789,43.779,43.813,43.835,43.828,43.822,43.867,43.991,
-44.179,44.386,44.567,44.706,44.814,44.908,44.989,45.036,45.029,44.968,44.880,44.805,44.774,44.794,44.849,44.916,
-44.973,45.013,45.034,45.039,45.028,44.998,44.948,44.877,44.790,44.696,44.605,44.528,44.466,44.411,44.349,44.268,
-44.161,44.031,43.885,43.729,43.567,43.405,43.251,43.112,42.990,42.873,42.744,42.579,42.367,42.109,41.822,41.528,
-41.251,41.005,40.791,40.597,40.404,40.191,39.953,39.704,39.464,39.244,39.035,38.814,38.560,38.285,38.035,37.872,
-37.834,37.908,38.028,38.102,38.058,37.874,37.586,37.264,36.978,36.776,36.675,36.670,36.748,36.899,37.108,37.346,
-37.568,37.731,37.824,37.894,38.037,38.346,38.853,39.490,40.113,40.575,40.805,40.838,40.775,40.709,40.668,40.617,
-40.502,40.302,40.029,39.696,39.285,38.750,38.064,37.274,36.496,35.859,35.426,35.159,34.951,34.705,34.396,34.065,
-33.774,33.541,33.328,33.077,32.762,32.412,32.081,31.810,31.596,31.399,31.177,30.911,30.609,30.289,29.962,29.634,
-29.317,29.027,28.779,28.572,28.383,28.173,27.917,27.606,27.256,26.886,26.514,26.153,25.807,25.482,25.175,24.872,
-24.554,24.207,23.832,23.447,23.074,22.722,22.385,22.044,21.688,21.320,20.954,20.606,20.279,19.961,19.636,19.297,
-18.946,18.593,18.247,17.909,17.574,17.236,16.891,16.540,16.184,15.824,15.456,15.078,14.692,14.304,13.923,13.552,
-13.190,12.826,12.450,12.060,11.663,11.272,10.898,10.540,10.189,9.833,9.465,9.089,8.709,8.324,7.931,7.525,
-7.111,6.704,6.320,5.967,5.634,5.298,4.940,4.555,4.155,3.762,3.391,3.041,2.701,2.354,1.992,1.616,
-1.230,.837,.431,.003,-.450,-.921,-1.388,-1.820,-2.196,-2.518,-2.813,-3.124,-3.489,-3.912,-4.368,-4.811,
--5.211,-5.567,-5.910,-6.272,-6.665,-7.073,-7.462,-7.814,-8.137,-8.463,-8.814,-9.193,-9.574,-9.931,-10.255,-10.564,
--10.889,-11.245,-11.628,-12.012,-12.374,-12.707,-13.016,-13.313,-13.606,-13.896,-14.186,-14.483,-14.794,-15.116,-15.439,-15.751,
--16.047,-16.336,-16.630,-16.932,-17.229,-17.503,-17.748,-17.976,-18.208,-18.458,-18.719,-18.968,-19.188,-19.382,-19.574,-19.786,
--20.017,-20.249,-20.458,-20.642,-20.820,-21.018,-21.241,-21.465,-21.652,-21.781,-21.867,-21.947,-22.061,-22.221,-22.410,-22.597,
--22.759,-22.894,-23.010,-23.116,-23.213,-23.298,-23.366,-23.420,-23.463,-23.499,-23.534,-23.583,-23.664,-23.787,-23.943,-24.094,
--24.200,-24.237,-24.219,-24.186,-24.179,-24.214,-24.272,-24.321,-24.344,-24.341,-24.331,-24.321,-24.302,-24.258,-24.187,-24.107,
--24.049,-24.030,-24.037,-24.036,-23.998,-23.924,-23.837,-23.765,-23.713,-23.657,-23.568,-23.434,-23.275,-23.127,-23.014,-22.929,
--22.842,-22.726,-22.574,-22.403,-22.237,-22.086,-21.943,-21.796,-21.640,-21.484,-21.341,-21.212,-21.087,-20.954,-20.814,-20.676,
--20.549,-20.431,-20.308,-20.168,-20.012,-19.854,-19.708,-19.572,-19.433,-19.279,-19.111,-18.945,-18.793,-18.648,-18.487,-18.294,
--18.081,-17.885,-17.740,-17.644,-17.561,-17.457,-17.342,-17.278,-17.344,-17.562,-17.861,-18.104,-18.170,-18.033,-17.776,-17.528,
--17.375,-17.306,-17.240,-17.104,-16.895,-16.687,-16.567,-16.562,-16.613,-16.621,-16.525,-16.347,-16.188,-16.151,-16.279,-16.521,
--16.765,-16.911,-16.920,-16.831,-16.721,-16.658,-16.652,-16.660,-16.611,-16.464,-16.227,-15.963,-15.740,-15.587,-15.465,-15.288,
--14.980,-14.544,-14.079,-13.749,-13.697,-13.970,-14.485,-15.070,-15.550,-15.824,-15.903,-15.875,-15.844,-15.864,-15.922,-15.966,
--15.953,-15.879,-15.785,-15.718,-15.696,-15.699,-15.689,-15.640,-15.565,-15.504,-15.489,-15.518,-15.547,-15.519,-15.406,-15.220,
--15.006,-14.804,-14.625,-14.449,-14.251,-14.016,-13.751,-13.473,-13.187,-12.891,-12.577,-12.249,-11.923,-11.622,-11.365,-11.167,
--11.023,-10.906,-10.754,-10.496,-10.106,-9.664,-9.368,-9.443,-9.990,-10.854,-11.633,-11.872,-11.329,-10.157,-8.844,-7.926,
--7.664,-7.888,-8.135,-7.971,-7.286,-6.340,-5.572,-5.290,-5.505,-5.971,-6.404,-6.662,-6.788,-6.899,-7.055,-7.216,
--7.306,-7.310,-7.293,-7.332,-7.433,-7.507,-7.452,-7.247,-6.987,-6.813,-6.801,-6.903,-6.988,-6.951,-6.795,-6.617,
--6.525,-6.546,-6.615,-6.638,-6.573,-6.466,-6.411,-6.487,-6.703,-7.005,-7.312,-7.560,-7.723,-7.805,-7.839,-7.867,
--7.930,-8.041,-8.167,-8.244,-8.213,-8.070,-7.879,-7.735,-7.709,-7.808,-7.995,-8.241,-8.573,-9.060,-9.753,-10.621,
--11.540,-12.352,-12.951,-13.337,-13.594,-13.828,-14.097,-14.392,-14.668,-14.890,-15.057,-15.192,-15.308,-15.404,-15.466,-15.488,
--15.486,-15.483,-15.497,-15.530,-15.574,-15.622,-15.676,-15.737,-15.806,-15.873,-15.925,-15.955,-15.961,-15.943,-15.903,-15.849,
--15.792,-15.750,-15.735,-15.748,-15.772,-15.792,-15.799,-15.802,-15.808,-15.815,-15.810,-15.775,-15.714,-15.650,-15.615,-15.625,
--15.668,-15.714,-15.735,-15.727,-15.704,-15.677,-15.640,-15.578,-15.483,-15.376,-15.300,-15.293,-15.360,-15.471,-15.579,-15.646,
--15.662,-15.637,-15.589,-15.532,-15.483,-15.464,-15.500,-15.601,-15.747,-15.895,-16.003,-16.053,-16.061,-16.055,-16.054,-16.054,
--16.043,-16.017,-15.992,-15.986,-15.998,-15.999,-15.952,-15.837,-15.670,-15.499,-15.363,-15.277,-15.221,-15.164,-15.090,-15.004,
--14.922,-14.854,-14.797,-14.740,-14.679,-14.613,-14.545,-14.479,-14.412,-14.351,-14.305,-14.290,-14.311,-14.367,-14.450,-14.565,
--14.723,-14.932,-15.172,-15.390,-15.526,-15.542,-15.454,-15.328,-15.239,-15.226,-15.278,-15.339,-15.359,-15.321,-15.259,-15.230,
--15.282,-15.428,-15.636,-15.849,-16.014,-16.103,-16.124,-16.113,-16.111,-16.145,-16.220,-16.322,-16.434,-16.546,-16.659,-16.777,
--16.890,-16.983,-17.036,-17.041,-17.009,-16.963,-16.925,-16.908,-16.915,-16.940,-16.976,-17.013,-17.037,-17.038,-17.012,-16.973,
--16.946,-16.951,-16.996,-17.068,-17.145,-17.205,-17.243,-17.267,-17.283,-17.297,-17.303,-17.297,-17.279,-17.249,-17.212,-17.169,
--17.125,-17.088,-17.062,-17.043,-17.015,-16.954,-16.850,-16.712,-16.567,-16.442,-16.340,-16.239,-16.110,-15.938,-15.739,-15.546,
--15.388,-15.268,-15.165,-15.052,-14.918,-14.771,-14.626,-14.490,-14.351,-14.196,-14.018,-13.826,-13.636,-13.457,-13.282,-13.097,
--12.897,-12.690,-12.495,-12.327,-12.189,-12.073,-11.965,-11.860,-11.759,-11.662,-11.566,-11.469,-11.372,-11.283,-11.215,-11.171,
--11.145,-11.120,-11.082,-11.029,-10.968,-10.907,-10.851,-10.796,-10.738,-10.677,-10.619,-10.568,-10.525,-10.483,-10.435,-10.379,
--10.315,-10.243,-10.160,-10.065,-9.962,-9.867,-9.798,-9.765,-9.758,-9.752,-9.726,-9.671,-9.604,-9.546,-9.513,-9.501,
--9.492,-9.469,-9.432,-9.398,-9.384,-9.397,-9.428,-9.459,-9.483,-9.502,-9.530,-9.575,-9.635,-9.696,-9.745,-9.774,
--9.791,-9.809,-9.839,-9.881,-9.927,-9.965,-9.990,-10.004,-10.015,-10.036,-10.072,-10.122,-10.177,-10.222,-10.250,-10.258,
--10.249,-10.228,-10.197,-10.155,-10.102,-10.041,-9.983,-9.934,-9.895,-9.856,-9.803,-9.732,-9.649,-9.570,-9.510,-9.467,
--9.434,-9.394,-9.339,-9.267,-9.181,-9.078,-8.950,-8.792,-8.607,-8.409,-8.214,-8.027,-7.846,-7.661,-7.474,-7.298,
--7.149,-7.033,-6.942,-6.857,-6.770,-6.689,-6.636,-6.625,-6.643,-6.659,-6.637,-6.563,-6.453,-6.335,-6.231,-6.138,
--6.037,-5.910,-5.755,-5.584,-5.411,-5.236,-5.047,-4.838,-4.613,-4.386,-4.169,-3.953,-3.718,-3.454,-3.174,-2.912,
--2.698,-2.533,-2.389,-2.230,-2.042,-1.844,-1.670,-1.539,-1.442,-1.348,-1.236,-1.107,-.979,-.858,-.725,-.551,
--.321,-.057,.201,.424,.616,.811,1.030,1.262,1.469,1.625,1.747,1.889,2.094,2.355,2.618,2.826,
-2.971,3.104,3.289,3.553,3.858,4.145,4.382,4.594,4.830,5.107,5.389,5.619,5.776,5.900,6.054,6.252,
-6.429,6.483,6.355,6.091,5.815,5.653,5.680,5.938,6.500,7.490,8.989,10.899,12.875,14.442,15.248,15.308,
-15.014,14.900,15.287,16.079,16.846,17.156,16.884,16.299,15.849,15.838,16.220,16.661,16.797,16.476,15.821,15.096,
-14.508,14.098,13.779,13.456,13.109,12.785,12.519,12.298,12.074,11.829,11.606,11.480,11.487,11.587,11.680,11.681,
-11.574,11.410,11.260,11.161,11.101,11.053,11.009,10.994,11.034,11.133,11.262,11.385,11.481,11.551,11.599,11.615,
-11.579,11.479,11.339,11.211,11.137,11.124,11.127,11.091,10.985,10.828,10.668,10.541,10.443,10.330,10.157,9.907,
-9.609,9.311,9.051,8.839,8.653,8.462,8.239,7.970,7.650,7.282,6.874,6.441,5.999,5.556,5.098,4.598,
-4.032,3.392,2.706,2.024,1.402,.885,.491,.217,.039,-.074,-.159,-.247,-.357,-.483,-.607,-.700,
--.748,-.754,-.740,-.729,-.736,-.760,-.796,-.840,-.900,-.981,-1.083,-1.189,-1.276,-1.323,-1.328,-1.304,
--1.268,-1.229,-1.185,-1.120,-1.026,-.903,-.759,-.606,-.451,-.295,-.138,.014,.155,.284,.406,.532,
-.674,.829,.983,1.114,1.204,1.246,1.247,1.225,1.199,1.187,1.199,1.236,1.285,1.329,1.356,1.370,
-1.397,1.472,1.620,1.837,2.082,2.305,2.464,2.557,2.614,2.687,2.817,3.018,3.275,3.550,3.805,4.013,
-4.169,4.295,4.430,4.613,4.870,5.191,5.536,5.856,6.112,6.298,6.432,6.542,6.645,6.743,6.835,6.933,
-7.056,7.229,7.469,7.782,8.173,8.646,9.196,9.795,10.380,10.875,11.229,11.455,11.623,11.822,12.098,12.428,
-12.743,12.984,13.151,13.307,13.527,13.844,14.230,14.622,14.972,15.277,15.573,15.893,16.239,16.587,16.912,17.220,
-17.538,17.888,18.255,18.593,18.856,19.037,19.179,19.345,19.579,19.874,20.187,20.468,20.703,20.912,21.137,21.404,
-21.713,22.042,22.365,22.667,22.945,23.201,23.434,23.639,23.815,23.973,24.132,24.308,24.505,24.713,24.914,25.102,
-25.286,25.487,25.724,25.993,26.266,26.502,26.674,26.783,26.856,26.926,27.013,27.118,27.232,27.353,27.489,27.645,
-27.807,27.940,28.011,28.007,27.946,27.858,27.755,27.619,27.420,27.152,26.851,26.586,26.404,26.304,26.230,26.119,
-25.947,25.745,25.574,25.473,25.429,25.398,25.337,25.241,25.136,25.052,24.990,24.927,24.837,24.720,24.600,24.503,
-24.437,24.385,24.326,24.253,24.174,24.100,24.028,23.944,23.839,23.726,23.633,23.583,23.761,23.744,23.731,23.684,
-23.590,23.472,23.372,23.326,23.342,23.406,23.498,23.607,23.726,23.849,23.958,24.038,24.092,24.145,24.240,24.403,
-24.617,24.811,24.891,24.783,24.494,24.134,23.882,23.905,24.255,24.808,25.299,25.444,25.107,24.396,23.625,23.156,
-23.199,23.708,24.428,25.060,25.440,25.606,25.722,25.935,26.264,26.605,26.829,26.889,26.855,26.863,27.014,27.310,
-27.670,27.992,28.215,28.346,28.432,28.520,28.630,28.766,28.919,29.086,29.262,29.439,29.606,29.763,29.920,30.091,
-30.281,30.478,30.671,30.861,31.073,31.332,31.644,31.973,32.258,32.449,32.546,32.594,32.657,32.766,32.901,33.011,
-33.061,33.067,33.086,33.170,33.315,33.461,33.541,33.540,33.523,33.593,33.804,34.108,34.374,34.476,34.395,34.237,
-34.166,34.278,34.534,34.790,34.917,34.912,34.905,35.063,35.451,35.975,36.445,36.719,36.809,36.875,37.106,37.578,
-38.196,38.753,39.068,39.088,38.913,38.731,38.721,38.989,39.546,40.314,41.145,41.857,42.287,42.365,42.153,41.831,
-41.602,41.587,41.771,42.030,42.232,42.321,42.331,42.337,42.383,42.455,42.517,42.558,42.613,42.724,42.884,43.015,
-43.018,42.848,42.563,42.304,42.213,42.346,42.654,43.020,43.339,43.570,43.735,43.880,44.024,44.159,44.263,44.328,
-44.373,44.423,44.486,44.547,44.576,44.549,44.467,44.349,44.221,44.097,43.979,43.866,43.767,43.702,43.699,43.777,
-43.936,44.152,44.386,44.602,44.775,44.900,44.985,45.042,45.077,45.087,45.066,45.017,44.956,44.912,44.906,44.942,
-44.999,45.046,45.056,45.026,44.975,44.929,44.901,44.883,44.856,44.805,44.732,44.653,44.580,44.512,44.436,44.333,
-44.203,44.058,43.917,43.787,43.660,43.519,43.356,43.182,43.016,42.869,42.738,42.599,42.429,42.211,41.950,41.664,
-41.379,41.115,40.889,40.702,40.542,40.384,40.200,39.974,39.710,39.429,39.151,38.885,38.624,38.363,38.116,37.920,
-37.818,37.831,37.935,38.069,38.157,38.145,38.023,37.818,37.578,37.345,37.146,36.995,36.902,36.877,36.930,37.054,
-37.221,37.383,37.498,37.556,37.607,37.742,38.053,38.574,39.246,39.941,40.512,40.873,41.023,41.031,40.980,40.917,
-40.841,40.731,40.572,40.358,40.075,39.682,39.138,38.437,37.643,36.878,36.258,35.826,35.523,35.240,34.893,34.484,
-34.085,33.779,33.589,33.464,33.315,33.083,32.774,32.445,32.152,31.913,31.700,31.472,31.206,30.903,30.580,30.254,
-29.932,29.620,29.330,29.073,28.854,28.653,28.439,28.187,27.886,27.545,27.184,26.814,26.443,26.076,25.724,25.393,
-25.083,24.777,24.452,24.092,23.703,23.310,22.937,22.591,22.258,21.914,21.548,21.171,20.809,20.480,20.180,19.881,
-19.554,19.191,18.807,18.431,18.084,17.763,17.447,17.107,16.737,16.345,15.952,15.573,15.206,14.842,14.471,14.096,
-13.726,13.362,12.998,12.621,12.225,11.824,11.440,11.090,10.773,10.463,10.133,9.767,9.372,8.967,8.567,8.174,
-7.779,7.380,6.984,6.608,6.262,5.936,5.606,5.249,4.859,4.450,4.046,3.666,3.310,2.962,2.607,2.236,
-1.850,1.454,1.049,.631,.193,-.260,-.718,-1.158,-1.562,-1.919,-2.241,-2.552,-2.884,-3.258,-3.670,-4.098,
--4.513,-4.897,-5.256,-5.613,-5.991,-6.390,-6.790,-7.166,-7.506,-7.823,-8.143,-8.485,-8.845,-9.204,-9.545,-9.871,
--10.203,-10.565,-10.957,-11.356,-11.728,-12.053,-12.334,-12.599,-12.874,-13.170,-13.483,-13.804,-14.127,-14.450,-14.774,-15.092,
--15.400,-15.697,-15.995,-16.304,-16.621,-16.928,-17.203,-17.441,-17.658,-17.882,-18.131,-18.399,-18.658,-18.885,-19.078,-19.257,
--19.450,-19.664,-19.888,-20.106,-20.312,-20.519,-20.739,-20.966,-21.170,-21.320,-21.411,-21.476,-21.565,-21.713,-21.914,-22.127,
--22.309,-22.445,-22.550,-22.657,-22.782,-22.914,-23.028,-23.108,-23.158,-23.196,-23.241,-23.302,-23.382,-23.481,-23.604,-23.747,
--23.887,-23.994,-24.039,-24.024,-23.984,-23.963,-23.992,-24.067,-24.154,-24.217,-24.238,-24.225,-24.196,-24.164,-24.129,-24.087,
--24.040,-23.999,-23.972,-23.957,-23.936,-23.897,-23.839,-23.776,-23.723,-23.676,-23.614,-23.514,-23.369,-23.204,-23.053,-22.939,
--22.857,-22.781,-22.680,-22.548,-22.395,-22.242,-22.100,-21.963,-21.822,-21.674,-21.527,-21.391,-21.268,-21.147,-21.020,-20.885,
--20.753,-20.634,-20.526,-20.416,-20.287,-20.137,-19.973,-19.810,-19.651,-19.492,-19.328,-19.165,-19.015,-18.885,-18.761,-18.618,
--18.437,-18.230,-18.035,-17.885,-17.783,-17.694,-17.585,-17.463,-17.390,-17.442,-17.648,-17.942,-18.191,-18.269,-18.138,-17.871,
--17.598,-17.415,-17.331,-17.274,-17.162,-16.979,-16.783,-16.658,-16.644,-16.699,-16.730,-16.664,-16.506,-16.341,-16.279,-16.382,
--16.623,-16.908,-17.128,-17.227,-17.221,-17.172,-17.136,-17.126,-17.099,-16.998,-16.794,-16.518,-16.248,-16.058,-15.964,-15.905,
--15.768,-15.460,-14.980,-14.438,-14.012,-13.866,-14.060,-14.525,-15.099,-15.609,-15.948,-16.107,-16.147,-16.147,-16.153,-16.163,
--16.152,-16.103,-16.033,-15.975,-15.955,-15.966,-15.974,-15.943,-15.865,-15.774,-15.719,-15.729,-15.788,-15.837,-15.811,-15.684,
--15.482,-15.265,-15.084,-14.953,-14.842,-14.702,-14.499,-14.226,-13.896,-13.533,-13.158,-12.789,-12.450,-12.164,-11.945,-11.787,
--11.663,-11.529,-11.342,-11.069,-10.715,-10.341,-10.064,-10.021,-10.286,-10.782,-11.267,-11.414,-10.999,-10.062,-8.939,-8.097,
--7.869,-8.233,-8.816,-9.122,-8.838,-8.025,-7.060,-6.383,-6.222,-6.498,-6.935,-7.277,-7.446,-7.527,-7.639,-7.817,
--7.990,-8.070,-8.041,-7.977,-7.962,-8.006,-8.029,-7.940,-7.719,-7.452,-7.261,-7.209,-7.255,-7.295,-7.250,-7.132,
--7.022,-6.993,-7.052,-7.130,-7.152,-7.096,-7.012,-6.988,-7.086,-7.315,-7.637,-7.997,-8.343,-8.635,-8.845,-8.962,
--9.009,-9.031,-9.070,-9.133,-9.182,-9.164,-9.066,-8.930,-8.844,-8.876,-9.040,-9.300,-9.612,-9.977,-10.436,-11.027,
--11.736,-12.478,-13.142,-13.655,-14.017,-14.285,-14.526,-14.772,-15.018,-15.248,-15.465,-15.685,-15.919,-16.146,-16.325,-16.424,
--16.443,-16.419,-16.398,-16.403,-16.427,-16.451,-16.463,-16.468,-16.484,-16.516,-16.552,-16.576,-16.573,-16.547,-16.509,-16.467,
--16.423,-16.379,-16.341,-16.321,-16.326,-16.353,-16.390,-16.425,-16.452,-16.471,-16.478,-16.459,-16.403,-16.310,-16.207,-16.128,
--16.099,-16.119,-16.164,-16.202,-16.218,-16.213,-16.194,-16.162,-16.107,-16.024,-15.930,-15.857,-15.838,-15.883,-15.968,-16.058,
--16.124,-16.159,-16.169,-16.164,-16.145,-16.113,-16.079,-16.064,-16.092,-16.164,-16.256,-16.334,-16.375,-16.383,-16.386,-16.408,
--16.451,-16.500,-16.534,-16.541,-16.526,-16.497,-16.456,-16.397,-16.317,-16.222,-16.127,-16.042,-15.964,-15.877,-15.767,-15.633,
--15.493,-15.369,-15.273,-15.202,-15.143,-15.084,-15.022,-14.956,-14.886,-14.809,-14.726,-14.644,-14.576,-14.535,-14.528,-14.559,
--14.630,-14.749,-14.921,-15.142,-15.386,-15.618,-15.804,-15.929,-16.001,-16.039,-16.051,-16.030,-15.958,-15.827,-15.657,-15.498,
--15.416,-15.460,-15.636,-15.903,-16.182,-16.397,-16.505,-16.510,-16.460,-16.413,-16.407,-16.446,-16.508,-16.573,-16.639,-16.724,
--16.846,-17.001,-17.158,-17.274,-17.319,-17.291,-17.217,-17.128,-17.051,-16.997,-16.971,-16.974,-17.005,-17.059,-17.118,-17.164,
--17.186,-17.188,-17.186,-17.193,-17.213,-17.239,-17.260,-17.271,-17.274,-17.280,-17.294,-17.314,-17.337,-17.353,-17.358,-17.344,
--17.311,-17.261,-17.205,-17.154,-17.112,-17.070,-17.011,-16.925,-16.815,-16.702,-16.608,-16.537,-16.470,-16.375,-16.233,-16.047,
--15.845,-15.659,-15.501,-15.363,-15.226,-15.078,-14.922,-14.766,-14.617,-14.468,-14.308,-14.131,-13.943,-13.759,-13.587,-13.424,
--13.258,-13.081,-12.894,-12.707,-12.532,-12.371,-12.219,-12.072,-11.928,-11.794,-11.675,-11.567,-11.464,-11.355,-11.242,-11.132,
--11.036,-10.959,-10.896,-10.838,-10.779,-10.717,-10.656,-10.600,-10.549,-10.501,-10.459,-10.423,-10.395,-10.373,-10.353,-10.330,
--10.302,-10.267,-10.223,-10.164,-10.087,-9.995,-9.904,-9.834,-9.797,-9.790,-9.792,-9.780,-9.739,-9.674,-9.606,-9.551,
--9.515,-9.490,-9.465,-9.435,-9.409,-9.399,-9.413,-9.446,-9.485,-9.520,-9.551,-9.583,-9.624,-9.673,-9.723,-9.765,
--9.795,-9.819,-9.847,-9.886,-9.936,-9.988,-10.027,-10.047,-10.049,-10.044,-10.045,-10.063,-10.100,-10.149,-10.199,-10.238,
--10.260,-10.263,-10.252,-10.233,-10.212,-10.191,-10.170,-10.145,-10.106,-10.044,-9.954,-9.842,-9.725,-9.621,-9.544,-9.492,
--9.453,-9.413,-9.362,-9.303,-9.238,-9.167,-9.080,-8.963,-8.814,-8.643,-8.466,-8.294,-8.125,-7.947,-7.752,-7.548,
--7.357,-7.201,-7.081,-6.982,-6.880,-6.768,-6.665,-6.599,-6.588,-6.620,-6.657,-6.661,-6.615,-6.531,-6.436,-6.348,
--6.263,-6.166,-6.046,-5.906,-5.759,-5.613,-5.461,-5.286,-5.082,-4.855,-4.625,-4.402,-4.178,-3.935,-3.662,-3.380,
--3.123,-2.923,-2.777,-2.654,-2.509,-2.325,-2.113,-1.908,-1.736,-1.600,-1.482,-1.367,-1.253,-1.141,-1.026,-.885,
--.697,-.464,-.209,.031,.241,.436,.646,.883,1.125,1.335,1.494,1.622,1.771,1.972,2.215,2.453,
-2.646,2.802,2.968,3.191,3.472,3.766,4.024,4.239,4.447,4.694,4.982,5.261,5.478,5.625,5.749,5.900,
-6.066,6.166,6.110,5.890,5.606,5.402,5.372,5.515,5.801,6.277,7.100,8.428,10.229,12.181,13.777,14.621,
-14.709,14.467,14.496,15.160,16.335,17.488,18.041,17.765,16.922,16.060,15.634,15.726,16.049,16.197,15.934,15.314,
-14.583,13.968,13.539,13.222,12.911,12.575,12.263,12.035,11.900,11.810,11.717,11.617,11.547,11.529,11.537,11.507,
-11.393,11.211,11.030,10.921,10.904,10.935,10.954,10.937,10.911,10.925,11.006,11.136,11.270,11.377,11.453,11.516,
-11.571,11.604,11.589,11.524,11.437,11.368,11.339,11.331,11.302,11.218,11.086,10.939,10.814,10.712,10.606,10.460,
-10.266,10.050,9.853,9.695,9.565,9.420,9.225,8.965,8.653,8.313,7.957,7.587,7.200,6.797,6.387,5.970,
-5.529,5.035,4.462,3.805,3.091,2.371,1.699,1.120,.653,.298,.036,-.158,-.311,-.443,-.561,-.656,
--.714,-.727,-.704,-.667,-.640,-.638,-.655,-.679,-.702,-.727,-.763,-.819,-.884,-.940,-.968,-.962,
--.927,-.875,-.807,-.717,-.595,-.444,-.281,-.124,.018,.153,.300,.477,.678,.885,1.075,1.236,
-1.373,1.499,1.619,1.723,1.787,1.793,1.735,1.628,1.502,1.391,1.320,1.299,1.319,1.354,1.374,1.365,
-1.338,1.332,1.397,1.563,1.822,2.119,2.385,2.568,2.662,2.707,2.765,2.889,3.099,3.375,3.672,3.939,
-4.138,4.258,4.319,4.368,4.464,4.647,4.923,5.258,5.593,5.875,6.079,6.214,6.310,6.400,6.505,6.637,
-6.795,6.971,7.154,7.334,7.527,7.776,8.149,8.695,9.400,10.173,10.875,11.389,11.691,11.857,12.012,12.249,
-12.575,12.917,13.194,13.380,13.524,13.710,13.989,14.348,14.725,15.067,15.367,15.662,15.996,16.378,16.777,17.154,
-17.491,17.806,18.127,18.462,18.783,19.052,19.250,19.402,19.556,19.754,20.000,20.262,20.504,20.708,20.895,21.099,
-21.346,21.636,21.949,22.254,22.535,22.789,23.021,23.235,23.430,23.605,23.765,23.920,24.084,24.262,24.455,24.659,
-24.871,25.093,25.329,25.574,25.819,26.047,26.245,26.410,26.551,26.674,26.781,26.868,26.937,27.004,27.094,27.226,
-27.389,27.541,27.633,27.642,27.588,27.523,27.484,27.465,27.415,27.277,27.044,26.775,26.559,26.456,26.453,26.470,
-26.419,26.267,26.053,25.855,25.727,25.665,25.624,25.555,25.449,25.329,25.227,25.155,25.093,25.022,24.935,24.849,
-24.778,24.718,24.651,24.560,24.448,24.336,24.244,24.170,24.096,24.005,23.902,23.813,23.761,24.031,23.984,23.931,
-23.852,23.746,23.646,23.591,23.611,23.703,23.837,23.979,24.102,24.190,24.239,24.250,24.236,24.229,24.266,24.371,
-24.528,24.679,24.744,24.669,24.468,24.232,24.096,24.182,24.527,25.048,25.559,25.836,25.727,25.226,24.500,23.815,
-23.421,23.429,23.779,24.293,24.783,25.157,25.432,25.681,25.945,26.197,26.369,26.423,26.400,26.405,26.541,26.836,
-27.227,27.607,27.894,28.080,28.215,28.360,28.540,28.738,28.924,29.083,29.229,29.388,29.573,29.772,29.965,30.139,
-30.298,30.460,30.639,30.836,31.051,31.285,31.542,31.818,32.089,32.320,32.484,32.584,32.655,32.743,32.871,33.021,
-33.152,33.237,33.289,33.349,33.452,33.592,33.720,33.787,33.796,33.812,33.916,34.140,34.423,34.644,34.706,34.615,
-34.481,34.449,34.588,34.841,35.075,35.187,35.186,35.193,35.341,35.670,36.094,36.473,36.726,36.900,37.125,37.503,
-38.008,38.487,38.755,38.731,38.498,38.262,38.236,38.530,39.116,39.860,40.595,41.183,41.544,41.662,41.583,41.404,
-41.243,41.188,41.263,41.421,41.586,41.704,41.780,41.853,41.956,42.082,42.200,42.288,42.367,42.483,42.657,42.846,
-42.952,42.893,42.667,42.374,42.165,42.155,42.361,42.708,43.085,43.409,43.659,43.857,44.030,44.186,44.317,44.416,
-44.488,44.543,44.585,44.612,44.618,44.606,44.589,44.575,44.553,44.494,44.377,44.202,44.003,43.832,43.733,43.726,
-43.805,43.954,44.155,44.387,44.622,44.828,44.976,45.061,45.102,45.127,45.157,45.190,45.209,45.201,45.171,45.135,
-45.110,45.091,45.058,44.997,44.912,44.830,44.781,44.769,44.773,44.758,44.706,44.626,44.545,44.484,44.436,44.373,
-44.269,44.124,43.960,43.806,43.673,43.548,43.406,43.238,43.055,42.881,42.731,42.599,42.457,42.279,42.054,41.793,
-41.517,41.250,41.008,40.799,40.624,40.471,40.317,40.132,39.895,39.604,39.277,38.942,38.624,38.334,38.083,37.887,
-37.771,37.749,37.810,37.908,37.982,37.984,37.905,37.780,37.660,37.582,37.549,37.536,37.513,37.471,37.429,37.422,
-37.474,37.573,37.677,37.733,37.719,37.667,37.668,37.828,38.216,38.820,39.542,40.241,40.790,41.126,41.256,41.234,
-41.126,40.981,40.830,40.683,40.524,40.308,39.969,39.453,38.762,37.975,37.217,36.599,36.152,35.813,35.475,35.063,
-34.587,34.129,33.778,33.564,33.441,33.321,33.141,32.893,32.620,32.368,32.149,31.940,31.706,31.430,31.125,30.814,
-30.514,30.228,29.950,29.683,29.432,29.198,28.969,28.721,28.437,28.119,27.782,27.442,27.100,26.743,26.361,25.962,
-25.567,25.203,24.872,24.554,24.222,23.862,23.486,23.123,22.788,22.474,22.154,21.803,21.425,21.047,20.698,20.384,
-20.082,19.757,19.393,19.003,18.623,18.280,17.970,17.660,17.314,16.918,16.492,16.068,15.671,15.299,14.934,14.562,
-14.184,13.814,13.460,13.110,12.745,12.350,11.939,11.543,11.193,10.890,10.607,10.304,9.955,9.564,9.158,8.763,
-8.387,8.021,7.652,7.276,6.903,6.541,6.190,5.836,5.466,5.080,4.687,4.303,3.935,3.578,3.218,2.848,
-2.464,2.071,1.670,1.256,.824,.378,-.069,-.501,-.903,-1.276,-1.629,-1.979,-2.337,-2.710,-3.096,-3.487,
--3.873,-4.246,-4.605,-4.958,-5.314,-5.682,-6.062,-6.441,-6.810,-7.160,-7.500,-7.838,-8.182,-8.526,-8.865,-9.195,
--9.530,-9.886,-10.273,-10.676,-11.068,-11.417,-11.716,-11.979,-12.238,-12.515,-12.818,-13.138,-13.463,-13.791,-14.120,-14.451,
--14.775,-15.085,-15.381,-15.676,-15.984,-16.304,-16.619,-16.903,-17.147,-17.365,-17.585,-17.832,-18.102,-18.371,-18.609,-18.810,
--18.990,-19.173,-19.374,-19.587,-19.803,-20.016,-20.236,-20.464,-20.687,-20.875,-21.006,-21.086,-21.160,-21.278,-21.463,-21.688,
--21.898,-22.045,-22.130,-22.193,-22.285,-22.426,-22.589,-22.729,-22.818,-22.866,-22.909,-22.980,-23.083,-23.201,-23.314,-23.417,
--23.520,-23.629,-23.734,-23.808,-23.833,-23.822,-23.811,-23.839,-23.917,-24.020,-24.105,-24.138,-24.114,-24.057,-24.001,-23.966,
--23.954,-23.956,-23.959,-23.952,-23.930,-23.891,-23.836,-23.772,-23.710,-23.656,-23.602,-23.533,-23.435,-23.310,-23.176,-23.059,
--22.972,-22.904,-22.831,-22.732,-22.603,-22.460,-22.318,-22.181,-22.044,-21.898,-21.744,-21.595,-21.465,-21.355,-21.252,-21.139,
--21.012,-20.878,-20.751,-20.634,-20.519,-20.391,-20.244,-20.083,-19.920,-19.761,-19.603,-19.444,-19.285,-19.138,-19.007,-18.885,
--18.750,-18.586,-18.400,-18.221,-18.075,-17.963,-17.857,-17.731,-17.592,-17.498,-17.524,-17.703,-17.980,-18.235,-18.341,-18.245,
--18.000,-17.722,-17.514,-17.401,-17.330,-17.228,-17.066,-16.885,-16.761,-16.736,-16.787,-16.834,-16.801,-16.680,-16.533,-16.460,
--16.528,-16.730,-16.993,-17.226,-17.373,-17.435,-17.454,-17.466,-17.468,-17.421,-17.280,-17.039,-16.748,-16.490,-16.335,-16.284,
--16.266,-16.170,-15.915,-15.500,-15.022,-14.631,-14.455,-14.547,-14.858,-15.275,-15.676,-15.983,-16.177,-16.279,-16.323,-16.330,
--16.307,-16.261,-16.209,-16.177,-16.185,-16.225,-16.265,-16.262,-16.193,-16.074,-15.957,-15.898,-15.918,-15.988,-16.043,-16.022,
--15.905,-15.722,-15.535,-15.393,-15.302,-15.226,-15.113,-14.922,-14.643,-14.296,-13.913,-13.531,-13.180,-12.885,-12.661,-12.499,
--12.363,-12.202,-11.969,-11.648,-11.271,-10.916,-10.681,-10.645,-10.823,-11.127,-11.371,-11.335,-10.872,-10.024,-9.044,-8.311,
--8.131,-8.549,-9.287,-9.880,-9.931,-9.344,-8.374,-7.467,-6.990,-7.030,-7.396,-7.788,-8.007,-8.056,-8.076,-8.194,
--8.415,-8.638,-8.754,-8.742,-8.676,-8.644,-8.661,-8.662,-8.559,-8.329,-8.038,-7.793,-7.663,-7.637,-7.648,-7.639,
--7.606,-7.589,-7.623,-7.701,-7.778,-7.814,-7.807,-7.793,-7.826,-7.940,-8.146,-8.439,-8.805,-9.210,-9.596,-9.889,
--10.038,-10.047,-9.980,-9.923,-9.923,-9.969,-10.010,-10.010,-9.994,-10.030,-10.182,-10.463,-10.829,-11.222,-11.619,-12.043,
--12.528,-13.078,-13.644,-14.149,-14.535,-14.790,-14.945,-15.046,-15.128,-15.223,-15.366,-15.596,-15.933,-16.350,-16.773,-17.110,
--17.306,-17.368,-17.354,-17.327,-17.316,-17.312,-17.291,-17.249,-17.206,-17.189,-17.204,-17.230,-17.235,-17.206,-17.152,-17.097,
--17.057,-17.029,-17.000,-16.966,-16.938,-16.935,-16.965,-17.017,-17.069,-17.105,-17.118,-17.109,-17.077,-17.015,-16.923,-16.815,
--16.718,-16.660,-16.650,-16.672,-16.698,-16.710,-16.702,-16.686,-16.667,-16.643,-16.606,-16.559,-16.516,-16.498,-16.515,-16.557,
--16.601,-16.629,-16.641,-16.647,-16.658,-16.671,-16.679,-16.674,-16.664,-16.664,-16.683,-16.710,-16.726,-16.716,-16.689,-16.672,
--16.696,-16.768,-16.867,-16.955,-16.997,-16.981,-16.920,-16.842,-16.772,-16.723,-16.695,-16.676,-16.649,-16.594,-16.497,-16.360,
--16.198,-16.036,-15.897,-15.787,-15.701,-15.625,-15.549,-15.470,-15.393,-15.316,-15.234,-15.143,-15.043,-14.946,-14.871,-14.831,
--14.833,-14.870,-14.935,-15.029,-15.156,-15.325,-15.535,-15.772,-16.010,-16.218,-16.371,-16.454,-16.464,-16.403,-16.283,-16.127,
--15.971,-15.860,-15.840,-15.933,-16.124,-16.359,-16.570,-16.706,-16.756,-16.753,-16.748,-16.770,-16.818,-16.862,-16.879,-16.872,
--16.875,-16.928,-17.045,-17.204,-17.359,-17.468,-17.511,-17.496,-17.439,-17.355,-17.256,-17.155,-17.074,-17.040,-17.067,-17.149,
--17.258,-17.357,-17.424,-17.452,-17.452,-17.434,-17.408,-17.377,-17.346,-17.322,-17.310,-17.316,-17.339,-17.374,-17.416,-17.455,
--17.480,-17.478,-17.440,-17.370,-17.282,-17.195,-17.120,-17.053,-16.984,-16.904,-16.819,-16.741,-16.677,-16.619,-16.545,-16.433,
--16.278,-16.094,-15.906,-15.732,-15.573,-15.419,-15.259,-15.091,-14.924,-14.764,-14.609,-14.449,-14.275,-14.089,-13.900,-13.720,
--13.557,-13.404,-13.256,-13.107,-12.956,-12.803,-12.647,-12.482,-12.308,-12.128,-11.954,-11.796,-11.659,-11.534,-11.410,-11.277,
--11.138,-11.002,-10.878,-10.774,-10.687,-10.613,-10.545,-10.480,-10.417,-10.356,-10.298,-10.248,-10.206,-10.173,-10.147,-10.126,
--10.107,-10.089,-10.072,-10.054,-10.026,-9.980,-9.914,-9.839,-9.774,-9.741,-9.742,-9.767,-9.789,-9.787,-9.753,-9.699,
--9.641,-9.594,-9.559,-9.528,-9.495,-9.464,-9.444,-9.446,-9.473,-9.516,-9.560,-9.596,-9.624,-9.651,-9.686,-9.735,
--9.793,-9.854,-9.913,-9.966,-10.017,-10.066,-10.114,-10.156,-10.187,-10.203,-10.203,-10.193,-10.178,-10.166,-10.163,-10.172,
--10.188,-10.208,-10.222,-10.228,-10.225,-10.220,-10.218,-10.218,-10.211,-10.178,-10.104,-9.990,-9.852,-9.717,-9.610,-9.539,
--9.493,-9.453,-9.402,-9.338,-9.269,-9.199,-9.125,-9.032,-8.911,-8.765,-8.611,-8.466,-8.334,-8.202,-8.049,-7.866,
--7.665,-7.474,-7.314,-7.185,-7.069,-6.944,-6.812,-6.697,-6.629,-6.622,-6.657,-6.693,-6.692,-6.646,-6.571,-6.493,
--6.426,-6.359,-6.277,-6.169,-6.042,-5.912,-5.784,-5.649,-5.489,-5.297,-5.081,-4.861,-4.645,-4.425,-4.181,-3.907,
--3.621,-3.359,-3.151,-2.999,-2.874,-2.738,-2.566,-2.363,-2.153,-1.961,-1.797,-1.658,-1.536,-1.421,-1.304,-1.165,
--.988,-.766,-.519,-.280,-.075,.097,.268,.471,.709,.953,1.165,1.329,1.471,1.632,1.837,2.070,
-2.295,2.491,2.673,2.881,3.135,3.415,3.671,3.877,4.054,4.258,4.525,4.831,5.107,5.303,5.429,5.550,
-5.716,5.891,5.971,5.867,5.597,5.299,5.141,5.199,5.425,5.736,6.156,6.864,8.067,9.779,11.693,13.285,
-14.133,14.227,14.021,14.162,15.046,16.526,17.988,18.743,18.476,17.429,16.214,15.400,15.182,15.338,15.460,15.264,
-14.746,14.103,13.540,13.121,12.771,12.399,11.996,11.646,11.442,11.403,11.456,11.506,11.503,11.460,11.413,11.366,
-11.287,11.146,10.959,10.791,10.709,10.732,10.812,10.880,10.900,10.893,10.916,11.006,11.153,11.311,11.437,11.528,
-11.607,11.696,11.787,11.850,11.861,11.825,11.774,11.736,11.714,11.684,11.618,11.508,11.376,11.246,11.124,10.997,
-10.844,10.666,10.489,10.342,10.232,10.131,9.991,9.780,9.496,9.171,8.835,8.500,8.155,7.785,7.391,6.994,
-6.616,6.257,5.886,5.453,4.921,4.286,3.580,2.855,2.161,1.534,.996,.556,.216,-.026,-.182,-.265,
--.291,-.273,-.230,-.184,-.158,-.170,-.217,-.282,-.342,-.381,-.400,-.413,-.430,-.451,-.462,-.454,
--.429,-.400,-.375,-.350,-.299,-.198,-.039,.162,.371,.564,.739,.915,1.119,1.358,1.622,1.881,
-2.113,2.303,2.452,2.558,2.617,2.619,2.562,2.450,2.300,2.135,1.973,1.827,1.702,1.596,1.500,1.405,
-1.310,1.227,1.188,1.230,1.374,1.612,1.901,2.185,2.421,2.597,2.733,2.866,3.029,3.236,3.479,3.737,
-3.982,4.184,4.327,4.410,4.461,4.521,4.638,4.835,5.103,5.405,5.696,5.946,6.150,6.327,6.505,6.706,
-6.942,7.201,7.452,7.654,7.781,7.848,7.932,8.148,8.596,9.291,10.140,10.971,11.621,12.023,12.235,12.392,
-12.614,12.936,13.303,13.627,13.863,14.039,14.229,14.488,14.815,15.160,15.475,15.753,16.031,16.358,16.747,17.164,
-17.560,17.900,18.191,18.465,18.749,19.041,19.313,19.540,19.720,19.872,20.022,20.184,20.353,20.517,20.677,20.845,
-21.039,21.268,21.523,21.783,22.033,22.269,22.498,22.727,22.959,23.186,23.398,23.589,23.761,23.923,24.088,24.270,
-24.482,24.728,25.002,25.283,25.544,25.763,25.936,26.081,26.221,26.372,26.527,26.658,26.741,26.775,26.793,26.841,
-26.943,27.083,27.207,27.261,27.234,27.165,27.117,27.128,27.174,27.189,27.113,26.946,26.757,26.635,26.630,26.706,
-26.771,26.736,26.578,26.350,26.136,25.992,25.914,25.855,25.770,25.653,25.533,25.444,25.392,25.356,25.311,25.247,
-25.172,25.099,25.026,24.937,24.822,24.688,24.558,24.456,24.384,24.323,24.253,24.172,24.092,24.031,24.360,24.292,
-24.214,24.126,24.046,24.004,24.022,24.102,24.218,24.335,24.423,24.467,24.462,24.415,24.341,24.272,24.247,24.299,
-24.418,24.551,24.618,24.566,24.414,24.263,24.247,24.457,24.882,25.402,25.835,26.023,25.895,25.494,24.948,24.417,
-24.031,23.856,23.884,24.064,24.332,24.644,24.982,25.336,25.679,25.960,26.123,26.152,26.096,26.060,26.152,26.421,
-26.827,27.264,27.628,27.872,28.030,28.174,28.361,28.594,28.836,29.045,29.214,29.372,29.560,29.791,30.040,30.267,
-30.448,30.591,30.727,30.889,31.086,31.304,31.525,31.741,31.952,32.159,32.354,32.521,32.651,32.755,32.856,32.979,
-33.127,33.284,33.431,33.556,33.665,33.764,33.849,33.907,33.940,33.975,34.062,34.236,34.482,34.725,34.870,34.871,
-34.766,34.663,34.669,34.815,35.040,35.244,35.365,35.429,35.519,35.706,35.984,36.280,36.525,36.724,36.959,37.318,
-37.799,38.275,38.558,38.529,38.234,37.885,37.743,37.977,38.576,39.370,40.129,40.676,40.947,40.985,40.886,40.755,
-40.669,40.666,40.742,40.862,40.976,41.055,41.108,41.175,41.295,41.475,41.680,41.867,42.021,42.170,42.354,42.575,
-42.776,42.869,42.801,42.603,42.387,42.285,42.371,42.628,42.971,43.311,43.599,43.833,44.036,44.218,44.374,44.494,
-44.584,44.658,44.723,44.767,44.774,44.741,44.692,44.661,44.663,44.675,44.647,44.540,44.358,44.151,43.988,43.909,
-43.919,43.993,44.111,44.269,44.471,44.701,44.922,45.087,45.173,45.197,45.203,45.234,45.296,45.364,45.401,45.388,
-45.331,45.248,45.150,45.040,44.918,44.801,44.714,44.675,44.675,44.679,44.648,44.572,44.475,44.397,44.358,44.343,
-44.309,44.220,44.073,43.895,43.723,43.574,43.437,43.293,43.133,42.969,42.819,42.691,42.564,42.409,42.205,41.953,
-41.677,41.405,41.156,40.936,40.740,40.563,40.394,40.213,40.001,39.740,39.430,39.090,38.744,38.418,38.126,37.886,
-37.716,37.637,37.651,37.722,37.783,37.762,37.629,37.420,37.229,37.157,37.261,37.526,37.872,38.203,38.454,38.611,
-38.703,38.765,38.804,38.790,38.677,38.443,38.125,37.825,37.676,37.791,38.207,38.863,39.623,40.330,40.862,41.164,
-41.251,41.187,41.046,40.893,40.754,40.613,40.411,40.075,39.553,38.859,38.081,37.349,36.767,36.363,36.075,35.798,
-35.454,35.037,34.603,34.222,33.926,33.688,33.457,33.198,32.922,32.662,32.447,32.268,32.087,31.868,31.601,31.304,
-31.004,30.719,30.447,30.184,29.931,29.694,29.473,29.247,28.986,28.673,28.319,27.956,27.615,27.300,26.980,26.621,
-26.208,25.765,25.337,24.955,24.616,24.291,23.951,23.591,23.236,22.908,22.613,22.324,22.012,21.661,21.288,20.921,
-20.579,20.252,19.913,19.546,19.159,18.781,18.435,18.117,17.797,17.443,17.043,16.619,16.200,15.807,15.430,15.049,
-14.651,14.247,13.861,13.507,13.174,12.830,12.453,12.048,11.648,11.289,10.981,10.700,10.406,10.070,9.692,9.298,
-8.918,8.563,8.225,7.884,7.528,7.157,6.778,6.397,6.014,5.631,5.253,4.886,4.529,4.175,3.811,3.429,
-3.035,2.639,2.250,1.863,1.464,1.045,.610,.180,-.225,-.599,-.958,-1.325,-1.715,-2.128,-2.545,-2.947,
--3.327,-3.686,-4.036,-4.383,-4.729,-5.072,-5.413,-5.755,-6.104,-6.462,-6.826,-7.192,-7.552,-7.904,-8.246,-8.582,
--8.918,-9.267,-9.634,-10.013,-10.390,-10.744,-11.066,-11.361,-11.648,-11.948,-12.264,-12.589,-12.909,-13.219,-13.525,-13.838,
--14.159,-14.477,-14.779,-15.061,-15.337,-15.623,-15.929,-16.240,-16.534,-16.795,-17.032,-17.269,-17.524,-17.800,-18.074,-18.322,
--18.536,-18.728,-18.918,-19.119,-19.326,-19.533,-19.737,-19.947,-20.167,-20.388,-20.583,-20.734,-20.846,-20.958,-21.108,-21.307,
--21.522,-21.696,-21.795,-21.834,-21.870,-21.957,-22.107,-22.281,-22.420,-22.496,-22.531,-22.581,-22.687,-22.848,-23.022,-23.160,
--23.248,-23.309,-23.376,-23.467,-23.563,-23.634,-23.666,-23.679,-23.710,-23.783,-23.887,-23.981,-24.022,-23.997,-23.927,-23.856,
--23.820,-23.832,-23.875,-23.919,-23.941,-23.928,-23.882,-23.814,-23.735,-23.657,-23.582,-23.507,-23.425,-23.331,-23.233,-23.144,
--23.072,-23.016,-22.959,-22.881,-22.773,-22.643,-22.509,-22.384,-22.266,-22.142,-22.000,-21.845,-21.697,-21.572,-21.472,-21.379,
--21.273,-21.143,-20.995,-20.845,-20.705,-20.572,-20.433,-20.285,-20.131,-19.983,-19.848,-19.721,-19.591,-19.452,-19.308,-19.166,
--19.027,-18.882,-18.720,-18.543,-18.369,-18.216,-18.088,-17.966,-17.832,-17.696,-17.607,-17.627,-17.786,-18.042,-18.289,-18.410,
--18.346,-18.130,-17.862,-17.640,-17.502,-17.415,-17.314,-17.168,-17.004,-16.883,-16.854,-16.902,-16.961,-16.962,-16.878,-16.756,
--16.678,-16.709,-16.859,-17.077,-17.290,-17.450,-17.553,-17.624,-17.681,-17.712,-17.677,-17.542,-17.312,-17.042,-16.806,-16.660,
--16.602,-16.575,-16.500,-16.326,-16.057,-15.755,-15.505,-15.374,-15.381,-15.505,-15.696,-15.907,-16.104,-16.265,-16.380,-16.440,
--16.446,-16.414,-16.374,-16.359,-16.390,-16.460,-16.538,-16.580,-16.552,-16.454,-16.317,-16.194,-16.129,-16.135,-16.182,-16.218,
--16.197,-16.105,-15.965,-15.820,-15.701,-15.610,-15.516,-15.379,-15.169,-14.888,-14.559,-14.216,-13.892,-13.609,-13.374,-13.181,
--13.007,-12.816,-12.575,-12.269,-11.923,-11.598,-11.374,-11.311,-11.409,-11.584,-11.683,-11.538,-11.048,-10.258,-9.380,-8.728,
--8.573,-8.990,-9.776,-10.521,-10.805,-10.421,-9.498,-8.427,-7.646,-7.398,-7.631,-8.070,-8.424,-8.559,-8.546,-8.554,
--8.699,-8.961,-9.219,-9.361,-9.367,-9.307,-9.267,-9.270,-9.259,-9.159,-8.943,-8.662,-8.408,-8.253,-8.209,-8.237,
--8.289,-8.340,-8.393,-8.455,-8.525,-8.596,-8.664,-8.737,-8.826,-8.934,-9.064,-9.227,-9.451,-9.761,-10.145,-10.534,
--10.830,-10.960,-10.927,-10.814,-10.735,-10.760,-10.881,-11.039,-11.186,-11.327,-11.518,-11.810,-12.205,-12.646,-13.064,-13.425,
--13.751,-14.089,-14.466,-14.858,-15.203,-15.435,-15.521,-15.468,-15.319,-15.144,-15.033,-15.084,-15.366,-15.883,-16.549,-17.218,
--17.747,-18.062,-18.185,-18.200,-18.186,-18.174,-18.146,-18.078,-17.975,-17.879,-17.831,-17.840,-17.873,-17.884,-17.849,-17.783,
--17.721,-17.683,-17.664,-17.642,-17.607,-17.573,-17.564,-17.595,-17.653,-17.707,-17.731,-17.720,-17.689,-17.652,-17.610,-17.552,
--17.472,-17.383,-17.309,-17.269,-17.260,-17.263,-17.257,-17.238,-17.214,-17.199,-17.197,-17.197,-17.191,-17.178,-17.169,-17.177,
--17.198,-17.216,-17.215,-17.189,-17.151,-17.122,-17.116,-17.133,-17.164,-17.200,-17.235,-17.265,-17.280,-17.263,-17.207,-17.124,
--17.047,-17.015,-17.053,-17.149,-17.266,-17.356,-17.390,-17.364,-17.303,-17.238,-17.191,-17.168,-17.159,-17.145,-17.108,-17.039,
--16.939,-16.818,-16.689,-16.562,-16.437,-16.311,-16.183,-16.054,-15.935,-15.834,-15.751,-15.677,-15.597,-15.504,-15.405,-15.322,
--15.272,-15.265,-15.287,-15.319,-15.346,-15.375,-15.428,-15.531,-15.694,-15.901,-16.117,-16.307,-16.453,-16.555,-16.622,-16.655,
--16.645,-16.583,-16.480,-16.370,-16.302,-16.310,-16.395,-16.523,-16.648,-16.747,-16.829,-16.918,-17.030,-17.150,-17.241,-17.269,
--17.234,-17.171,-17.133,-17.155,-17.239,-17.360,-17.487,-17.595,-17.672,-17.710,-17.694,-17.615,-17.480,-17.320,-17.185,-17.120,
--17.140,-17.229,-17.346,-17.452,-17.522,-17.550,-17.541,-17.509,-17.470,-17.436,-17.419,-17.420,-17.435,-17.455,-17.478,-17.506,
--17.542,-17.581,-17.606,-17.597,-17.542,-17.450,-17.346,-17.253,-17.180,-17.115,-17.042,-16.951,-16.850,-16.755,-16.676,-16.603,
--16.518,-16.403,-16.256,-16.091,-15.922,-15.757,-15.594,-15.424,-15.245,-15.066,-14.896,-14.738,-14.583,-14.418,-14.233,-14.034,
--13.834,-13.647,-13.482,-13.338,-13.206,-13.082,-12.958,-12.831,-12.692,-12.537,-12.365,-12.184,-12.005,-11.841,-11.693,-11.556,
--11.420,-11.279,-11.132,-10.985,-10.848,-10.726,-10.622,-10.532,-10.453,-10.379,-10.305,-10.232,-10.161,-10.094,-10.034,-9.983,
--9.942,-9.909,-9.887,-9.877,-9.873,-9.865,-9.840,-9.793,-9.730,-9.670,-9.636,-9.641,-9.681,-9.734,-9.774,-9.787,
--9.773,-9.747,-9.721,-9.698,-9.672,-9.635,-9.593,-9.557,-9.547,-9.570,-9.618,-9.672,-9.713,-9.734,-9.746,-9.769,
--9.819,-9.897,-9.991,-10.080,-10.150,-10.199,-10.234,-10.268,-10.311,-10.361,-10.409,-10.440,-10.443,-10.414,-10.362,-10.304,
--10.258,-10.236,-10.236,-10.245,-10.250,-10.242,-10.225,-10.209,-10.201,-10.197,-10.179,-10.129,-10.042,-9.927,-9.809,-9.710,
--9.635,-9.576,-9.514,-9.442,-9.362,-9.283,-9.209,-9.132,-9.040,-8.923,-8.788,-8.655,-8.538,-8.435,-8.328,-8.197,
--8.036,-7.858,-7.686,-7.534,-7.397,-7.257,-7.103,-6.948,-6.821,-6.751,-6.740,-6.760,-6.769,-6.742,-6.681,-6.609,
--6.551,-6.510,-6.467,-6.399,-6.297,-6.172,-6.043,-5.917,-5.788,-5.640,-5.468,-5.279,-5.089,-4.903,-4.708,-4.483,
--4.219,-3.931,-3.653,-3.415,-3.228,-3.075,-2.927,-2.761,-2.575,-2.379,-2.190,-2.018,-1.868,-1.737,-1.613,-1.474,
--1.300,-1.077,-.819,-.561,-.342,-.178,-.047,.095,.282,.511,.749,.959,1.134,1.300,1.493,1.723,
-1.967,2.191,2.389,2.588,2.822,3.096,3.371,3.601,3.775,3.937,4.152,4.443,4.760,5.018,5.170,5.254,
-5.361,5.549,5.771,5.894,5.810,5.537,5.227,5.064,5.133,5.379,5.705,6.128,6.821,7.993,9.666,11.532,
-13.074,13.877,13.945,13.749,13.948,14.935,16.539,18.107,18.907,18.594,17.409,15.996,14.978,14.602,14.680,14.810,
-14.687,14.272,13.729,13.235,12.837,12.459,12.019,11.537,11.130,10.917,10.919,11.044,11.162,11.198,11.163,11.114,
-11.081,11.044,10.959,10.821,10.679,10.602,10.625,10.720,10.823,10.891,10.931,10.996,11.127,11.322,11.536,11.723,
-11.867,11.985,12.102,12.219,12.307,12.337,12.304,12.238,12.174,12.132,12.100,12.051,11.968,11.855,11.727,11.592,
-11.444,11.275,11.089,10.909,10.758,10.640,10.529,10.386,10.184,9.925,9.632,9.327,9.011,8.665,8.277,7.860,
-7.451,7.086,6.772,6.473,6.130,5.692,5.146,4.514,3.843,3.175,2.543,1.972,1.483,1.100,.838,.697,
-.659,.690,.752,.808,.833,.810,.740,.640,.540,.465,.430,.427,.436,.443,.448,.458,
-.477,.495,.487,.438,.361,.295,.296,.396,.590,.841,1.102,1.345,1.576,1.820,2.101,2.423,
-2.768,3.104,3.395,3.617,3.758,3.816,3.802,3.733,3.627,3.490,3.317,3.098,2.824,2.508,2.178,1.872,
-1.624,1.449,1.348,1.317,1.353,1.456,1.621,1.838,2.089,2.355,2.624,2.888,3.139,3.370,3.579,3.772,
-3.964,4.172,4.398,4.631,4.846,5.024,5.167,5.293,5.432,5.607,5.826,6.081,6.359,6.649,6.944,7.248,
-7.564,7.894,8.227,8.531,8.759,8.873,8.878,8.847,8.905,9.173,9.702,10.432,11.208,11.867,12.317,12.583,
-12.773,13.002,13.316,13.680,14.020,14.289,14.499,14.708,14.966,15.279,15.609,15.914,16.183,16.442,16.734,17.076,
-17.447,17.805,18.118,18.387,18.637,18.897,19.174,19.451,19.700,19.899,20.047,20.156,20.245,20.330,20.430,20.559,
-20.726,20.930,21.160,21.395,21.619,21.830,22.037,22.253,22.483,22.724,22.965,23.197,23.414,23.615,23.806,23.995,
-24.194,24.419,24.679,24.967,25.258,25.515,25.714,25.854,25.962,26.074,26.208,26.351,26.472,26.539,26.557,26.561,
-26.598,26.690,26.816,26.924,26.973,26.961,26.931,26.936,26.995,27.078,27.120,27.080,26.974,26.868,26.833,26.888,
-26.983,27.030,26.965,26.792,26.574,26.387,26.268,26.200,26.137,26.047,25.936,25.837,25.775,25.747,25.724,25.675,
-25.594,25.497,25.404,25.320,25.233,25.128,25.005,24.880,24.773,24.691,24.624,24.560,24.493,24.426,24.360,24.695,
-24.627,24.551,24.485,24.452,24.469,24.528,24.599,24.644,24.642,24.596,24.528,24.455,24.385,24.323,24.286,24.302,
-24.389,24.522,24.630,24.635,24.514,24.343,24.264,24.412,24.805,25.318,25.728,25.836,25.582,25.076,24.529,24.141,
-23.997,24.051,24.186,24.302,24.377,24.471,24.662,24.990,25.414,25.833,26.135,26.260,26.229,26.136,26.099,26.201,
-26.454,26.798,27.147,27.434,27.650,27.837,28.049,28.312,28.609,28.899,29.149,29.364,29.574,29.812,30.083,30.357,
-30.597,30.784,30.932,31.077,31.243,31.431,31.617,31.779,31.918,32.056,32.220,32.414,32.619,32.798,32.933,33.033,
-33.128,33.255,33.424,33.618,33.801,33.939,34.015,34.037,34.037,34.059,34.145,34.313,34.544,34.782,34.953,35.012,
-34.964,34.874,34.826,34.874,35.012,35.188,35.354,35.501,35.663,35.877,36.135,36.381,36.558,36.671,36.802,37.056,
-37.473,37.960,38.325,38.393,38.137,37.721,37.430,37.509,38.027,38.844,39.698,40.343,40.661,40.680,40.527,40.339,
-40.212,40.186,40.253,40.381,40.522,40.632,40.690,40.711,40.741,40.822,40.972,41.173,41.392,41.615,41.849,42.111,
-42.388,42.626,42.763,42.772,42.692,42.618,42.643,42.806,43.077,43.390,43.686,43.942,44.165,44.362,44.524,44.638,
-44.704,44.746,44.793,44.853,44.906,44.919,44.881,44.816,44.765,44.750,44.751,44.718,44.617,44.459,44.299,44.199,
-44.186,44.242,44.327,44.420,44.531,44.681,44.873,45.071,45.223,45.294,45.293,45.269,45.268,45.305,45.357,45.383,
-45.360,45.288,45.188,45.075,44.955,44.833,44.724,44.647,44.615,44.614,44.612,44.577,44.503,44.418,44.358,44.335,
-44.327,44.290,44.192,44.034,43.851,43.678,43.531,43.400,43.267,43.124,42.983,42.855,42.735,42.597,42.411,42.164,
-41.873,41.572,41.296,41.059,40.858,40.680,40.507,40.327,40.124,39.885,39.605,39.294,38.973,38.663,38.373,38.104,
-37.863,37.672,37.559,37.536,37.568,37.578,37.482,37.246,36.922,36.639,36.548,36.746,37.229,37.899,38.608,39.231,
-39.699,40.001,40.155,40.171,40.036,39.726,39.243,38.639,38.030,37.562,37.366,37.510,37.967,38.634,39.365,40.025,
-40.526,40.840,40.986,41.010,40.953,40.838,40.652,40.359,39.920,39.325,38.617,37.890,37.259,36.805,36.535,36.386,
-36.259,36.077,35.816,35.501,35.164,34.817,34.447,34.037,33.599,33.179,32.826,32.563,32.369,32.194,31.992,31.748,
-31.474,31.186,30.891,30.588,30.281,29.993,29.750,29.560,29.389,29.182,28.894,28.525,28.122,27.743,27.417,27.122,
-26.805,26.427,25.992,25.543,25.129,24.766,24.432,24.093,23.730,23.359,23.010,22.703,22.424,22.142,21.828,21.478,
-21.112,20.752,20.402,20.051,19.685,19.302,18.921,18.557,18.212,17.869,17.509,17.127,16.736,16.355,15.989,15.621,
-15.230,14.810,14.378,13.965,13.593,13.255,12.922,12.568,12.192,11.816,11.469,11.159,10.868,10.562,10.220,9.843,
-9.455,9.082,8.732,8.397,8.061,7.712,7.346,6.967,6.580,6.190,5.807,5.438,5.086,4.741,4.386,4.002,
-3.588,3.161,2.747,2.359,1.991,1.623,1.236,.830,.423,.033,-.337,-.704,-1.091,-1.509,-1.944,-2.371,
--2.770,-3.139,-3.494,-3.849,-4.209,-4.566,-4.907,-5.229,-5.544,-5.868,-6.210,-6.569,-6.933,-7.293,-7.645,-7.993,
--8.347,-8.710,-9.081,-9.448,-9.799,-10.125,-10.426,-10.713,-11.007,-11.325,-11.672,-12.035,-12.390,-12.719,-13.020,-13.304,
--13.592,-13.888,-14.187,-14.472,-14.740,-14.999,-15.267,-15.554,-15.856,-16.153,-16.431,-16.690,-16.945,-17.208,-17.481,-17.747,
--17.992,-18.211,-18.418,-18.628,-18.846,-19.064,-19.269,-19.462,-19.657,-19.867,-20.090,-20.309,-20.500,-20.659,-20.806,-20.966,
--21.147,-21.326,-21.464,-21.541,-21.580,-21.631,-21.734,-21.890,-22.051,-22.163,-22.208,-22.224,-22.277,-22.413,-22.621,-22.842,
--23.011,-23.099,-23.134,-23.166,-23.233,-23.330,-23.425,-23.492,-23.533,-23.576,-23.649,-23.751,-23.849,-23.902,-23.889,-23.827,
--23.757,-23.718,-23.729,-23.776,-23.830,-23.864,-23.863,-23.827,-23.765,-23.689,-23.606,-23.519,-23.428,-23.334,-23.240,-23.156,
--23.087,-23.034,-22.986,-22.925,-22.837,-22.722,-22.597,-22.481,-22.385,-22.301,-22.208,-22.093,-21.958,-21.820,-21.697,-21.590,
--21.485,-21.361,-21.211,-21.044,-20.880,-20.731,-20.594,-20.455,-20.308,-20.156,-20.015,-19.893,-19.788,-19.683,-19.563,-19.426,
--19.278,-19.130,-18.982,-18.826,-18.659,-18.488,-18.325,-18.178,-18.045,-17.918,-17.810,-17.754,-17.794,-17.949,-18.180,-18.398,
--18.502,-18.439,-18.235,-17.978,-17.758,-17.616,-17.528,-17.436,-17.306,-17.155,-17.039,-17.005,-17.047,-17.109,-17.120,-17.049,
--16.932,-16.844,-16.858,-16.989,-17.199,-17.417,-17.592,-17.710,-17.791,-17.855,-17.895,-17.882,-17.786,-17.607,-17.381,-17.162,
--16.993,-16.882,-16.807,-16.736,-16.652,-16.560,-16.475,-16.410,-16.366,-16.334,-16.314,-16.315,-16.348,-16.415,-16.497,-16.563,
--16.589,-16.574,-16.547,-16.544,-16.590,-16.679,-16.780,-16.852,-16.866,-16.817,-16.723,-16.615,-16.521,-16.460,-16.433,-16.428,
--16.422,-16.393,-16.325,-16.222,-16.096,-15.964,-15.829,-15.681,-15.502,-15.277,-15.009,-14.718,-14.431,-14.169,-13.938,-13.728,
--13.517,-13.288,-13.036,-12.771,-12.517,-12.306,-12.161,-12.092,-12.076,-12.055,-11.942,-11.651,-11.141,-10.456,-9.749,-9.246,
--9.157,-9.562,-10.330,-11.139,-11.601,-11.445,-10.667,-9.541,-8.490,-7.870,-7.800,-8.135,-8.586,-8.908,-9.028,-9.037,
--9.088,-9.260,-9.516,-9.743,-9.852,-9.837,-9.766,-9.712,-9.696,-9.675,-9.594,-9.434,-9.235,-9.066,-8.982,-8.990,
--9.061,-9.154,-9.239,-9.308,-9.367,-9.432,-9.522,-9.655,-9.833,-10.036,-10.228,-10.388,-10.528,-10.695,-10.937,-11.253,
--11.580,-11.823,-11.917,-11.882,-11.811,-11.816,-11.954,-12.202,-12.488,-12.758,-13.018,-13.318,-13.697,-14.141,-14.580,-14.938,
--15.186,-15.359,-15.521,-15.721,-15.951,-16.153,-16.248,-16.179,-15.934,-15.559,-15.158,-14.877,-14.863,-15.208,-15.890,-16.769,
--17.635,-18.305,-18.701,-18.869,-18.920,-18.946,-18.972,-18.960,-18.875,-18.725,-18.571,-18.472,-18.450,-18.467,-18.469,-18.426,
--18.350,-18.282,-18.245,-18.234,-18.222,-18.194,-18.165,-18.164,-18.207,-18.275,-18.330,-18.340,-18.306,-18.259,-18.224,-18.206,
--18.184,-18.134,-18.056,-17.972,-17.912,-17.888,-17.884,-17.876,-17.848,-17.809,-17.777,-17.764,-17.767,-17.773,-17.773,-17.774,
--17.788,-17.817,-17.844,-17.842,-17.795,-17.709,-17.617,-17.551,-17.535,-17.569,-17.640,-17.725,-17.805,-17.860,-17.872,-17.826,
--17.728,-17.605,-17.500,-17.454,-17.485,-17.577,-17.693,-17.791,-17.843,-17.846,-17.812,-17.761,-17.708,-17.661,-17.622,-17.590,
--17.558,-17.519,-17.463,-17.381,-17.265,-17.116,-16.942,-16.755,-16.574,-16.416,-16.294,-16.206,-16.141,-16.079,-16.007,-15.926,
--15.851,-15.803,-15.791,-15.804,-15.818,-15.808,-15.771,-15.729,-15.715,-15.754,-15.847,-15.975,-16.116,-16.262,-16.420,-16.598,
--16.783,-16.933,-17.002,-16.963,-16.833,-16.670,-16.537,-16.472,-16.474,-16.518,-16.582,-16.668,-16.790,-16.959,-17.156,-17.340,
--17.465,-17.515,-17.504,-17.470,-17.446,-17.450,-17.483,-17.539,-17.617,-17.710,-17.799,-17.852,-17.834,-17.728,-17.554,-17.360,
--17.203,-17.122,-17.125,-17.192,-17.290,-17.385,-17.455,-17.491,-17.498,-17.492,-17.495,-17.521,-17.571,-17.626,-17.665,-17.678,
--17.673,-17.670,-17.683,-17.707,-17.717,-17.691,-17.625,-17.537,-17.453,-17.386,-17.325,-17.247,-17.137,-17.003,-16.869,-16.759,
--16.676,-16.601,-16.510,-16.385,-16.230,-16.062,-15.893,-15.723,-15.546,-15.357,-15.163,-14.979,-14.811,-14.656,-14.498,-14.320,
--14.120,-13.909,-13.704,-13.519,-13.357,-13.212,-13.080,-12.956,-12.840,-12.729,-12.614,-12.484,-12.336,-12.173,-12.010,-11.860,
--11.729,-11.611,-11.494,-11.367,-11.224,-11.070,-10.916,-10.775,-10.655,-10.556,-10.472,-10.396,-10.319,-10.237,-10.153,-10.070,
--9.993,-9.927,-9.876,-9.841,-9.820,-9.808,-9.796,-9.771,-9.726,-9.665,-9.605,-9.568,-9.568,-9.606,-9.667,-9.731,
--9.783,-9.818,-9.843,-9.863,-9.875,-9.868,-9.838,-9.793,-9.755,-9.747,-9.782,-9.850,-9.926,-9.982,-10.008,-10.017,
--10.033,-10.076,-10.150,-10.240,-10.321,-10.377,-10.403,-10.413,-10.427,-10.459,-10.510,-10.571,-10.622,-10.646,-10.631,-10.582,
--10.515,-10.452,-10.410,-10.390,-10.381,-10.366,-10.333,-10.286,-10.242,-10.216,-10.212,-10.219,-10.212,-10.175,-10.105,-10.014,
--9.919,-9.828,-9.738,-9.642,-9.539,-9.437,-9.346,-9.270,-9.203,-9.131,-9.043,-8.940,-8.830,-8.719,-8.607,-8.484,
--8.346,-8.199,-8.056,-7.927,-7.808,-7.679,-7.523,-7.342,-7.161,-7.017,-6.932,-6.899,-6.887,-6.859,-6.801,-6.728,
--6.665,-6.628,-6.608,-6.576,-6.510,-6.406,-6.279,-6.152,-6.033,-5.913,-5.779,-5.628,-5.467,-5.310,-5.157,-4.991,
--4.791,-4.545,-4.265,-3.979,-3.718,-3.496,-3.307,-3.134,-2.962,-2.785,-2.603,-2.425,-2.258,-2.106,-1.967,-1.828,
--1.665,-1.456,-1.199,-.918,-.660,-.461,-.324,-.213,-.079,.107,.333,.560,.758,.933,1.119,1.346,
-1.609,1.871,2.099,2.292,2.490,2.733,3.019,3.306,3.542,3.722,3.897,4.129,4.432,4.742,4.970,5.077,
-5.120,5.209,5.409,5.668,5.840,5.800,5.552,5.245,5.064,5.107,5.339,5.683,6.154,6.911,8.127,9.791,
-11.590,13.024,13.721,13.720,13.502,13.708,14.694,16.267,17.766,18.475,18.075,16.828,15.385,14.365,14.010,14.124,
-14.299,14.226,13.860,13.362,12.907,12.540,12.181,11.747,11.257,10.834,10.604,10.590,10.700,10.799,10.814,10.764,
-10.722,10.726,10.753,10.740,10.661,10.552,10.493,10.537,10.673,10.836,10.967,11.059,11.155,11.309,11.537,11.810,
-12.073,12.294,12.468,12.610,12.722,12.787,12.788,12.725,12.630,12.543,12.487,12.454,12.415,12.345,12.240,12.113,
-11.978,11.833,11.670,11.487,11.297,11.119,10.966,10.828,10.684,10.512,10.305,10.067,9.801,9.498,9.146,8.746,
-8.323,7.919,7.563,7.254,6.952,6.601,6.165,5.646,5.077,4.504,3.958,3.455,3.003,2.615,2.313,2.114,
-2.018,1.999,2.018,2.033,2.015,1.953,1.851,1.724,1.600,1.505,1.460,1.467,1.505,1.548,1.573,1.577,
-1.570,1.562,1.547,1.504,1.416,1.292,1.173,1.120,1.177,1.355,1.619,1.918,2.213,2.494,2.782,3.106,
-3.479,3.890,4.301,4.666,4.945,5.117,5.188,5.180,5.123,5.031,4.893,4.677,4.349,3.900,3.368,2.828,
-2.370,2.055,1.901,1.875,1.926,2.008,2.096,2.196,2.326,2.507,2.749,3.048,3.381,3.714,4.007,4.235,
-4.401,4.535,4.687,4.898,5.179,5.507,5.833,6.112,6.321,6.469,6.594,6.740,6.945,7.221,7.559,7.930,
-8.307,8.673,9.030,9.378,9.705,9.976,10.145,10.191,10.148,10.108,10.187,10.461,10.923,11.482,12.016,12.440,
-12.747,12.999,13.269,13.591,13.941,14.265,14.529,14.741,14.948,15.193,15.487,15.805,16.110,16.382,16.633,16.887,
-17.164,17.460,17.758,18.039,18.304,18.564,18.834,19.116,19.396,19.653,19.866,20.027,20.139,20.218,20.287,20.373,
-20.498,20.667,20.873,21.092,21.307,21.508,21.704,21.905,22.118,22.338,22.555,22.764,22.968,23.181,23.410,23.654,
-23.905,24.154,24.402,24.654,24.913,25.168,25.400,25.589,25.734,25.850,25.959,26.073,26.184,26.272,26.327,26.357,
-26.393,26.462,26.569,26.687,26.781,26.829,26.848,26.874,26.938,27.038,27.134,27.180,27.160,27.105,27.070,27.092,
-27.161,27.221,27.211,27.105,26.935,26.762,26.636,26.566,26.519,26.458,26.369,26.273,26.201,26.165,26.147,26.112,
-26.036,25.927,25.810,25.712,25.637,25.570,25.490,25.387,25.268,25.149,25.041,24.951,24.876,24.813,24.755,24.695,
-25.022,24.942,24.858,24.799,24.794,24.845,24.918,24.955,24.914,24.795,24.646,24.525,24.467,24.464,24.485,24.514,
-24.562,24.647,24.756,24.831,24.802,24.652,24.458,24.361,24.473,24.782,25.130,25.292,25.119,24.641,24.064,23.654,
-23.581,23.826,24.213,24.528,24.658,24.641,24.627,24.764,25.100,25.568,26.028,26.353,26.493,26.480,26.399,26.334,
-26.336,26.417,26.564,26.761,26.998,27.277,27.600,27.962,28.346,28.727,29.083,29.403,29.694,29.968,30.235,30.491,
-30.727,30.934,31.116,31.287,31.463,31.640,31.801,31.924,32.004,32.067,32.160,32.316,32.538,32.785,33.000,33.145,
-33.226,33.288,33.386,33.546,33.751,33.950,34.088,34.146,34.147,34.150,34.214,34.367,34.591,34.825,35.003,35.082,
-35.068,35.014,34.984,35.019,35.116,35.242,35.366,35.494,35.666,35.914,36.225,36.525,36.728,36.803,36.813,36.890,
-37.135,37.534,37.935,38.134,38.018,37.661,37.305,37.233,37.602,38.354,39.251,40.013,40.460,40.575,40.468,40.282,
-40.121,40.027,40.004,40.050,40.163,40.320,40.478,40.584,40.615,40.592,40.571,40.610,40.737,40.943,41.204,41.499,
-41.815,42.131,42.415,42.631,42.765,42.840,42.912,43.033,43.229,43.485,43.769,44.053,44.323,44.571,44.776,44.915,
-44.974,44.969,44.947,44.949,44.988,45.038,45.060,45.034,44.978,44.928,44.905,44.894,44.856,44.769,44.650,44.553,
-44.527,44.582,44.683,44.781,44.850,44.907,44.983,45.094,45.218,45.310,45.338,45.308,45.257,45.221,45.212,45.210,
-45.185,45.125,45.042,44.956,44.876,44.798,44.711,44.620,44.541,44.494,44.478,44.477,44.466,44.435,44.396,44.364,
-44.343,44.312,44.245,44.127,43.972,43.812,43.670,43.550,43.430,43.293,43.137,42.977,42.827,42.683,42.521,42.313,
-42.052,41.755,41.459,41.192,40.969,40.784,40.621,40.464,40.293,40.092,39.847,39.561,39.256,38.960,38.694,38.455,
-38.223,37.986,37.756,37.574,37.471,37.436,37.403,37.282,37.019,36.649,36.296,36.123,36.254,36.716,37.426,38.242,
-39.017,39.651,40.099,40.355,40.417,40.279,39.934,39.397,38.728,38.028,37.423,37.028,36.915,37.095,37.522,38.111,
-38.766,39.401,39.950,40.371,40.635,40.728,40.639,40.369,39.925,39.335,38.654,37.966,37.367,36.936,36.701,36.631,
-36.646,36.660,36.618,36.508,36.342,36.126,35.842,35.460,34.971,34.409,33.846,33.355,32.970,32.677,32.432,32.194,
-31.947,31.693,31.430,31.138,30.801,30.424,30.052,29.749,29.546,29.420,29.292,29.079,28.746,28.329,27.903,27.530,
-27.216,26.916,26.575,26.175,25.744,25.330,24.964,24.635,24.308,23.953,23.573,23.198,22.857,22.553,22.264,21.956,
-21.615,21.249,20.879,20.519,20.167,19.809,19.439,19.058,18.680,18.311,17.948,17.584,17.216,16.850,16.492,16.140,
-15.782,15.399,14.988,14.562,14.145,13.755,13.393,13.046,12.701,12.356,12.021,11.705,11.403,11.099,10.771,10.412,
-10.033,9.653,9.286,8.934,8.589,8.240,7.884,7.523,7.157,6.784,6.405,6.023,5.650,5.291,4.937,4.570,
-4.170,3.736,3.287,2.853,2.455,2.091,1.739,1.378,.999,.608,.218,-.168,-.558,-.963,-1.379,-1.793,
--2.186,-2.550,-2.898,-3.250,-3.619,-4.000,-4.373,-4.722,-5.044,-5.355,-5.671,-6.002,-6.343,-6.685,-7.024,-7.367,
--7.728,-8.110,-8.507,-8.898,-9.262,-9.586,-9.872,-10.135,-10.398,-10.685,-11.008,-11.366,-11.744,-12.116,-12.461,-12.770,
--13.052,-13.323,-13.595,-13.872,-14.149,-14.419,-14.688,-14.962,-15.248,-15.543,-15.836,-16.118,-16.386,-16.648,-16.909,-17.169,
--17.417,-17.649,-17.869,-18.090,-18.324,-18.569,-18.809,-19.029,-19.226,-19.416,-19.621,-19.849,-20.084,-20.302,-20.485,-20.637,
--20.776,-20.918,-21.060,-21.186,-21.285,-21.368,-21.462,-21.587,-21.735,-21.870,-21.955,-21.987,-22.006,-22.071,-22.220,-22.438,
--22.668,-22.844,-22.939,-22.971,-22.993,-23.043,-23.129,-23.226,-23.311,-23.376,-23.440,-23.521,-23.620,-23.714,-23.771,-23.773,
--23.728,-23.668,-23.624,-23.615,-23.635,-23.669,-23.697,-23.708,-23.697,-23.664,-23.613,-23.546,-23.466,-23.376,-23.281,-23.186,
--23.097,-23.020,-22.955,-22.893,-22.821,-22.730,-22.620,-22.507,-22.409,-22.332,-22.271,-22.204,-22.114,-22.001,-21.873,-21.744,
--21.618,-21.483,-21.331,-21.162,-20.991,-20.838,-20.712,-20.601,-20.486,-20.352,-20.202,-20.053,-19.921,-19.807,-19.696,-19.573,
--19.433,-19.287,-19.149,-19.022,-18.900,-18.768,-18.621,-18.464,-18.310,-18.167,-18.044,-17.955,-17.925,-17.983,-18.134,-18.339,
--18.521,-18.595,-18.520,-18.320,-18.077,-17.872,-17.743,-17.666,-17.584,-17.460,-17.308,-17.185,-17.140,-17.174,-17.229,-17.232,
--17.149,-17.013,-16.909,-16.920,-17.072,-17.319,-17.578,-17.775,-17.887,-17.936,-17.963,-17.986,-17.995,-17.959,-17.854,-17.685,
--17.479,-17.269,-17.086,-16.947,-16.865,-16.850,-16.896,-16.981,-17.065,-17.102,-17.074,-16.994,-16.904,-16.844,-16.827,-16.833,
--16.827,-16.794,-16.748,-16.730,-16.768,-16.860,-16.970,-17.050,-17.073,-17.043,-16.991,-16.942,-16.905,-16.869,-16.821,-16.763,
--16.710,-16.672,-16.644,-16.600,-16.514,-16.373,-16.189,-15.988,-15.790,-15.595,-15.388,-15.157,-14.906,-14.653,-14.419,-14.207,
--14.001,-13.776,-13.526,-13.273,-13.060,-12.923,-12.865,-12.841,-12.770,-12.570,-12.192,-11.637,-10.967,-10.288,-9.738,-9.462,
--9.566,-10.071,-10.869,-11.720,-12.317,-12.399,-11.875,-10.881,-9.740,-8.814,-8.346,-8.362,-8.693,-9.096,-9.391,-9.540,
--9.616,-9.718,-9.884,-10.073,-10.209,-10.248,-10.203,-10.129,-10.074,-10.044,-10.011,-9.949,-9.861,-9.782,-9.753,-9.788,
--9.872,-9.969,-10.050,-10.106,-10.148,-10.204,-10.301,-10.465,-10.703,-10.996,-11.299,-11.563,-11.765,-11.926,-12.100,-12.334,
--12.624,-12.911,-13.117,-13.206,-13.219,-13.249,-13.384,-13.647,-13.987,-14.329,-14.628,-14.903,-15.207,-15.573,-15.975,-16.337,
--16.589,-16.713,-16.751,-16.777,-16.843,-16.949,-17.042,-17.046,-16.900,-16.580,-16.125,-15.645,-15.304,-15.268,-15.636,-16.376,
--17.320,-18.232,-18.919,-19.313,-19.481,-19.555,-19.632,-19.721,-19.764,-19.702,-19.538,-19.338,-19.180,-19.095,-19.059,-19.016,
--18.938,-18.838,-18.758,-18.721,-18.718,-18.719,-18.706,-18.693,-18.710,-18.773,-18.861,-18.929,-18.942,-18.904,-18.850,-18.815,
--18.805,-18.794,-18.750,-18.669,-18.581,-18.524,-18.516,-18.538,-18.552,-18.528,-18.469,-18.402,-18.356,-18.338,-18.340,-18.346,
--18.355,-18.375,-18.410,-18.444,-18.449,-18.399,-18.293,-18.161,-18.047,-17.984,-17.984,-18.037,-18.124,-18.228,-18.331,-18.414,
--18.453,-18.431,-18.348,-18.228,-18.113,-18.046,-18.045,-18.102,-18.188,-18.271,-18.324,-18.340,-18.320,-18.276,-18.224,-18.178,
--18.145,-18.126,-18.106,-18.066,-17.989,-17.867,-17.705,-17.517,-17.324,-17.141,-16.980,-16.847,-16.743,-16.662,-16.595,-16.530,
--16.463,-16.400,-16.354,-16.333,-16.330,-16.327,-16.298,-16.234,-16.145,-16.059,-16.004,-15.991,-16.015,-16.064,-16.138,-16.249,
--16.409,-16.610,-16.818,-16.980,-17.055,-17.037,-16.954,-16.848,-16.751,-16.670,-16.598,-16.533,-16.497,-16.522,-16.632,-16.822,
--17.060,-17.301,-17.508,-17.666,-17.775,-17.839,-17.859,-17.842,-17.803,-17.770,-17.766,-17.793,-17.828,-17.829,-17.762,-17.621,
--17.431,-17.240,-17.095,-17.026,-17.042,-17.127,-17.250,-17.373,-17.463,-17.509,-17.524,-17.539,-17.584,-17.667,-17.766,-17.846,
--17.881,-17.872,-17.847,-17.831,-17.833,-17.838,-17.820,-17.770,-17.699,-17.630,-17.579,-17.535,-17.473,-17.376,-17.246,-17.108,
--16.989,-16.894,-16.806,-16.698,-16.553,-16.376,-16.187,-16.003,-15.826,-15.644,-15.447,-15.237,-15.029,-14.840,-14.672,-14.511,
--14.341,-14.152,-13.951,-13.753,-13.569,-13.399,-13.236,-13.073,-12.915,-12.771,-12.650,-12.547,-12.448,-12.337,-12.207,-12.067,
--11.934,-11.821,-11.728,-11.645,-11.551,-11.433,-11.289,-11.129,-10.971,-10.832,-10.720,-10.633,-10.561,-10.491,-10.416,-10.331,
--10.242,-10.153,-10.073,-10.005,-9.951,-9.908,-9.873,-9.838,-9.797,-9.744,-9.686,-9.633,-9.598,-9.593,-9.618,-9.666,
--9.726,-9.791,-9.856,-9.922,-9.982,-10.026,-10.042,-10.027,-9.996,-9.975,-9.991,-10.053,-10.150,-10.253,-10.335,-10.384,
--10.408,-10.430,-10.463,-10.512,-10.563,-10.603,-10.622,-10.625,-10.620,-10.620,-10.632,-10.656,-10.688,-10.720,-10.744,-10.753,
--10.741,-10.713,-10.676,-10.642,-10.615,-10.590,-10.556,-10.504,-10.441,-10.383,-10.349,-10.345,-10.362,-10.375,-10.361,-10.311,
--10.231,-10.134,-10.032,-9.925,-9.811,-9.688,-9.564,-9.453,-9.365,-9.303,-9.256,-9.209,-9.144,-9.051,-8.924,-8.764,
--8.583,-8.403,-8.248,-8.132,-8.049,-7.972,-7.867,-7.715,-7.527,-7.339,-7.188,-7.091,-7.038,-6.995,-6.940,-6.869,
--6.802,-6.757,-6.736,-6.719,-6.676,-6.596,-6.485,-6.368,-6.262,-6.168,-6.069,-5.950,-5.811,-5.663,-5.520,-5.380,
--5.227,-5.040,-4.810,-4.548,-4.277,-4.020,-3.786,-3.575,-3.378,-3.188,-3.003,-2.824,-2.654,-2.493,-2.344,-2.201,
--2.049,-1.865,-1.632,-1.357,-1.072,-.823,-.641,-.515,-.401,-.251,-.048,.181,.394,.568,.723,.904,
-1.144,1.429,1.710,1.945,2.139,2.337,2.585,2.886,3.195,3.454,3.654,3.838,4.065,4.350,4.638,4.848,
-4.949,4.995,5.089,5.291,5.550,5.727,5.704,5.482,5.193,5.010,5.032,5.246,5.609,6.152,7.013,8.320,
-10.007,11.741,13.046,13.602,13.496,13.224,13.397,14.334,15.815,17.194,17.796,17.341,16.107,14.732,13.801,13.523,
-13.684,13.872,13.786,13.396,12.879,12.426,12.094,11.802,11.452,11.040,10.663,10.437,10.392,10.454,10.507,10.490,
-10.430,10.395,10.423,10.483,10.509,10.471,10.411,10.413,10.537,10.766,11.023,11.223,11.345,11.434,11.564,11.782,
-12.073,12.380,12.646,12.840,12.962,13.022,13.024,12.976,12.893,12.806,12.745,12.719,12.710,12.682,12.613,12.506,
-12.383,12.267,12.159,12.043,11.900,11.727,11.539,11.357,11.193,11.042,10.888,10.713,10.503,10.248,9.943,9.587,
-9.197,8.804,8.439,8.116,7.817,7.500,7.124,6.674,6.172,5.661,5.181,4.754,4.380,4.054,3.781,3.572,
-3.436,3.360,3.311,3.253,3.157,3.015,2.840,2.652,2.474,2.328,2.232,2.200,2.227,2.291,2.355,2.388,
-2.379,2.340,2.295,2.262,2.244,2.231,2.219,2.224,2.274,2.397,2.604,2.878,3.189,3.510,3.833,4.167,
-4.527,4.917,5.321,5.704,6.024,6.250,6.373,6.406,6.377,6.310,6.201,6.020,5.719,5.266,4.675,4.022,
-3.419,2.972,2.739,2.707,2.807,2.953,3.085,3.182,3.260,3.353,3.489,3.688,3.954,4.274,4.621,4.954,
-5.227,5.410,5.511,5.573,5.664,5.835,6.102,6.431,6.762,7.037,7.235,7.377,7.518,7.713,7.989,8.334,
-8.708,9.068,9.395,9.701,10.012,10.341,10.665,10.934,11.097,11.141,11.113,11.095,11.171,11.377,11.693,12.062,
-12.433,12.785,13.134,13.499,13.878,14.242,14.552,14.789,14.971,15.137,15.328,15.562,15.827,16.099,16.361,16.608,
-16.851,17.098,17.352,17.610,17.869,18.129,18.395,18.668,18.943,19.212,19.465,19.692,19.888,20.049,20.182,20.300,
-20.422,20.564,20.729,20.911,21.092,21.265,21.434,21.613,21.811,22.024,22.235,22.425,22.595,22.763,22.959,23.205,
-23.498,23.812,24.117,24.392,24.636,24.860,25.073,25.277,25.468,25.638,25.786,25.912,26.015,26.095,26.157,26.212,
-26.281,26.380,26.506,26.637,26.743,26.803,26.828,26.849,26.901,26.994,27.104,27.190,27.225,27.217,27.202,27.218,
-27.270,27.328,27.345,27.292,27.181,27.057,26.964,26.917,26.891,26.851,26.776,26.677,26.587,26.529,26.498,26.468,
-26.408,26.312,26.198,26.095,26.021,25.970,25.919,25.849,25.752,25.635,25.511,25.394,25.291,25.209,25.144,25.087,
-25.022,25.374,25.242,25.101,24.996,24.970,25.028,25.124,25.179,25.140,25.013,24.868,24.783,24.794,24.873,24.952,
-24.986,24.979,24.974,24.997,25.020,24.982,24.844,24.639,24.468,24.427,24.527,24.662,24.680,24.489,24.145,23.826,
-23.728,23.928,24.336,24.750,24.988,25.004,24.900,24.853,24.996,25.340,25.789,26.209,26.504,26.651,26.678,26.626,
-26.527,26.410,26.321,26.325,26.482,26.813,27.281,27.811,28.323,28.776,29.169,29.530,29.882,30.226,30.537,30.793,
-30.989,31.142,31.285,31.447,31.633,31.823,31.985,32.091,32.140,32.159,32.198,32.307,32.502,32.760,33.025,33.236,
-33.362,33.419,33.459,33.536,33.674,33.853,34.022,34.139,34.196,34.227,34.291,34.429,34.639,34.873,35.060,35.154,
-35.154,35.111,35.092,35.142,35.256,35.393,35.512,35.610,35.730,35.930,36.223,36.556,36.824,36.946,36.930,36.881,
-36.934,37.156,37.477,37.723,37.736,37.493,37.160,37.006,37.246,37.904,38.798,39.639,40.200,40.415,40.380,40.255,
-40.152,40.094,40.049,39.998,39.972,40.025,40.178,40.386,40.559,40.625,40.580,40.496,40.467,40.559,40.771,41.061,
-41.377,41.689,41.990,42.281,42.553,42.792,42.991,43.162,43.332,43.526,43.759,44.033,44.335,44.644,44.925,45.143,
-45.269,45.300,45.269,45.228,45.220,45.251,45.297,45.319,45.301,45.257,45.217,45.195,45.177,45.137,45.065,44.985,
-44.944,44.974,45.072,45.192,45.283,45.322,45.323,45.321,45.335,45.355,45.354,45.315,45.248,45.182,45.137,45.110,
-45.076,45.014,44.924,44.828,44.749,44.693,44.640,44.567,44.471,44.370,44.295,44.262,44.267,44.288,44.302,44.301,
-44.285,44.256,44.206,44.127,44.022,43.904,43.790,43.684,43.571,43.429,43.245,43.032,42.814,42.614,42.437,42.264,
-42.073,41.853,41.614,41.374,41.149,40.947,40.765,40.601,40.446,40.288,40.102,39.870,39.592,39.292,39.009,38.769,
-38.570,38.379,38.165,37.927,37.700,37.529,37.428,37.357,37.238,37.009,36.672,36.311,36.055,36.015,36.233,36.668,
-37.223,37.795,38.307,38.721,39.019,39.185,39.198,39.042,38.719,38.264,37.744,37.238,36.830,36.582,36.533,36.689,
-37.033,37.522,38.094,38.679,39.197,39.579,39.765,39.723,39.448,38.970,38.355,37.702,37.120,36.705,36.504,36.501,
-36.619,36.759,36.844,36.851,36.801,36.728,36.638,36.494,36.242,35.852,35.345,34.786,34.248,33.770,33.348,32.957,
-32.585,32.243,31.951,31.702,31.452,31.144,30.751,30.307,29.896,29.592,29.412,29.295,29.141,28.880,28.509,28.089,
-27.692,27.347,27.034,26.702,26.320,25.902,25.492,25.126,24.807,24.505,24.185,23.832,23.462,23.103,22.768,22.444,
-22.108,21.745,21.360,20.972,20.600,20.244,19.892,19.532,19.160,18.784,18.412,18.049,17.688,17.323,16.950,16.575,
-16.203,15.835,15.469,15.098,14.721,14.337,13.953,13.571,13.197,12.840,12.507,12.198,11.903,11.604,11.282,10.930,
-10.559,10.189,9.834,9.496,9.161,8.818,8.462,8.101,7.743,7.388,7.027,6.649,6.254,5.855,5.466,5.089,
-4.714,4.320,3.900,3.461,3.026,2.617,2.240,1.884,1.530,1.166,.787,.394,-.011,-.425,-.842,-1.247,
--1.625,-1.972,-2.297,-2.624,-2.972,-3.345,-3.726,-4.094,-4.435,-4.755,-5.071,-5.397,-5.732,-6.066,-6.393,-6.720,
--7.065,-7.441,-7.846,-8.257,-8.646,-8.994,-9.300,-9.578,-9.848,-10.125,-10.416,-10.728,-11.063,-11.418,-11.782,-12.134,
--12.458,-12.746,-13.007,-13.257,-13.515,-13.789,-14.078,-14.374,-14.672,-14.969,-15.261,-15.547,-15.825,-16.095,-16.360,-16.621,
--16.875,-17.118,-17.350,-17.578,-17.814,-18.066,-18.329,-18.586,-18.822,-19.034,-19.234,-19.445,-19.676,-19.914,-20.133,-20.311,
--20.445,-20.552,-20.659,-20.781,-20.917,-21.054,-21.184,-21.306,-21.425,-21.541,-21.644,-21.724,-21.785,-21.851,-21.954,-22.108,
--22.302,-22.497,-22.652,-22.751,-22.806,-22.847,-22.903,-22.980,-23.070,-23.158,-23.240,-23.322,-23.411,-23.502,-23.580,-23.627,
--23.636,-23.613,-23.574,-23.538,-23.517,-23.515,-23.531,-23.559,-23.589,-23.608,-23.605,-23.573,-23.513,-23.433,-23.342,-23.244,
--23.144,-23.043,-22.946,-22.860,-22.783,-22.708,-22.627,-22.535,-22.436,-22.342,-22.262,-22.194,-22.123,-22.036,-21.927,-21.800,
--21.663,-21.522,-21.372,-21.212,-21.047,-20.893,-20.766,-20.670,-20.590,-20.502,-20.389,-20.251,-20.105,-19.966,-19.839,-19.712,
--19.575,-19.425,-19.277,-19.149,-19.048,-18.964,-18.875,-18.767,-18.635,-18.488,-18.342,-18.210,-18.113,-18.075,-18.122,-18.255,
--18.440,-18.606,-18.676,-18.610,-18.429,-18.207,-18.020,-17.903,-17.830,-17.744,-17.609,-17.439,-17.296,-17.237,-17.266,-17.325,
--17.331,-17.240,-17.085,-16.959,-16.958,-17.120,-17.395,-17.683,-17.889,-17.979,-17.984,-17.967,-17.977,-18.018,-18.054,-18.035,
--17.931,-17.743,-17.504,-17.260,-17.063,-16.955,-16.957,-17.059,-17.219,-17.370,-17.458,-17.458,-17.392,-17.308,-17.243,-17.205,
--17.171,-17.115,-17.037,-16.972,-16.958,-17.012,-17.105,-17.182,-17.200,-17.158,-17.098,-17.069,-17.090,-17.134,-17.155,-17.124,
--17.051,-16.981,-16.950,-16.950,-16.934,-16.846,-16.662,-16.410,-16.149,-15.928,-15.753,-15.593,-15.406,-15.177,-14.929,-14.698,
--14.506,-14.338,-14.163,-13.964,-13.758,-13.589,-13.485,-13.420,-13.306,-13.027,-12.505,-11.750,-10.874,-10.056,-9.486,-9.305,
--9.566,-10.222,-11.132,-12.085,-12.830,-13.149,-12.924,-12.196,-11.167,-10.131,-9.360,-9.003,-9.036,-9.312,-9.649,-9.923,
--10.106,-10.235,-10.355,-10.478,-10.580,-10.633,-10.635,-10.610,-10.586,-10.572,-10.552,-10.511,-10.453,-10.413,-10.428,-10.515,
--10.650,-10.786,-10.876,-10.907,-10.901,-10.906,-10.975,-11.141,-11.411,-11.762,-12.143,-12.500,-12.794,-13.027,-13.240,-13.489,
--13.804,-14.160,-14.490,-14.731,-14.871,-14.965,-15.099,-15.330,-15.649,-15.993,-16.292,-16.525,-16.725,-16.948,-17.219,-17.510,
--17.756,-17.904,-17.951,-17.937,-17.919,-17.929,-17.961,-17.978,-17.934,-17.787,-17.522,-17.161,-16.781,-16.512,-16.500,-16.837,
--17.498,-18.332,-19.124,-19.699,-20.006,-20.123,-20.186,-20.286,-20.420,-20.512,-20.490,-20.343,-20.134,-19.942,-19.808,-19.713,
--19.615,-19.491,-19.359,-19.259,-19.216,-19.214,-19.219,-19.211,-19.202,-19.226,-19.301,-19.407,-19.496,-19.527,-19.501,-19.448,
--19.407,-19.386,-19.362,-19.308,-19.224,-19.145,-19.114,-19.147,-19.215,-19.263,-19.251,-19.178,-19.080,-19.004,-18.971,-18.972,
--18.987,-18.997,-19.004,-19.013,-19.020,-19.007,-18.955,-18.856,-18.731,-18.611,-18.521,-18.473,-18.464,-18.490,-18.555,-18.664,
--18.812,-18.968,-19.090,-19.138,-19.099,-18.992,-18.858,-18.740,-18.665,-18.637,-18.648,-18.680,-18.718,-18.752,-18.773,-18.779,
--18.769,-18.746,-18.712,-18.661,-18.584,-18.477,-18.341,-18.191,-18.040,-17.899,-17.766,-17.635,-17.503,-17.372,-17.251,-17.148,
--17.063,-16.991,-16.928,-16.874,-16.833,-16.804,-16.779,-16.740,-16.675,-16.585,-16.486,-16.401,-16.342,-16.306,-16.281,-16.259,
--16.250,-16.275,-16.354,-16.488,-16.660,-16.841,-17.002,-17.123,-17.192,-17.197,-17.130,-16.992,-16.807,-16.621,-16.487,-16.447,
--16.517,-16.684,-16.922,-17.202,-17.497,-17.780,-18.015,-18.169,-18.224,-18.190,-18.103,-18.007,-17.934,-17.885,-17.833,-17.747,
--17.608,-17.424,-17.226,-17.059,-16.969,-16.980,-17.094,-17.277,-17.472,-17.623,-17.694,-17.691,-17.659,-17.652,-17.699,-17.794,
--17.897,-17.970,-17.998,-17.994,-17.983,-17.978,-17.970,-17.941,-17.882,-17.806,-17.738,-17.695,-17.673,-17.646,-17.590,-17.502,
--17.394,-17.287,-17.184,-17.072,-16.928,-16.745,-16.535,-16.324,-16.129,-15.949,-15.766,-15.562,-15.337,-15.108,-14.895,-14.707,
--14.536,-14.365,-14.183,-13.995,-13.813,-13.644,-13.485,-13.320,-13.140,-12.949,-12.765,-12.607,-12.480,-12.376,-12.275,-12.164,
--12.041,-11.920,-11.814,-11.730,-11.660,-11.587,-11.496,-11.381,-11.247,-11.108,-10.978,-10.867,-10.776,-10.701,-10.633,-10.563,
--10.486,-10.402,-10.315,-10.231,-10.156,-10.091,-10.034,-9.982,-9.931,-9.878,-9.827,-9.782,-9.748,-9.730,-9.729,-9.744,
--9.772,-9.812,-9.865,-9.930,-10.003,-10.071,-10.122,-10.144,-10.139,-10.126,-10.129,-10.170,-10.253,-10.365,-10.481,-10.581,
--10.656,-10.711,-10.754,-10.790,-10.816,-10.828,-10.825,-10.818,-10.814,-10.820,-10.829,-10.834,-10.828,-10.817,-10.812,-10.821,
--10.843,-10.869,-10.885,-10.883,-10.866,-10.840,-10.809,-10.771,-10.723,-10.669,-10.617,-10.580,-10.563,-10.558,-10.546,-10.510,
--10.444,-10.358,-10.268,-10.181,-10.096,-10.002,-9.888,-9.756,-9.624,-9.512,-9.435,-9.392,-9.365,-9.322,-9.233,-9.080,
--8.866,-8.621,-8.387,-8.202,-8.082,-8.011,-7.948,-7.857,-7.721,-7.556,-7.397,-7.275,-7.198,-7.147,-7.099,-7.040,
--6.980,-6.936,-6.915,-6.903,-6.872,-6.802,-6.697,-6.581,-6.480,-6.404,-6.337,-6.255,-6.143,-6.003,-5.856,-5.715,
--5.577,-5.425,-5.240,-5.017,-4.771,-4.522,-4.285,-4.061,-3.843,-3.627,-3.413,-3.210,-3.023,-2.852,-2.697,-2.553,
--2.410,-2.253,-2.060,-1.819,-1.542,-1.264,-1.028,-.857,-.734,-.610,-.442,-.224,.009,.211,.362,.493,
-.660,.897,1.192,1.492,1.748,1.959,2.170,2.427,2.737,3.057,3.328,3.532,3.703,3.899,4.144,4.407,
-4.625,4.770,4.877,5.018,5.229,5.461,5.600,5.557,5.342,5.070,4.889,4.884,5.062,5.418,6.015,6.985,
-8.410,10.168,11.892,13.114,13.557,13.350,13.002,13.112,13.973,15.364,16.663,17.232,16.812,15.667,14.392,13.528,
-13.259,13.374,13.486,13.318,12.858,12.296,11.838,11.548,11.347,11.114,10.811,10.503,10.291,10.218,10.238,10.266,
-10.252,10.214,10.204,10.247,10.312,10.349,10.343,10.345,10.439,10.672,11.012,11.358,11.614,11.751,11.824,11.929,
-12.128,12.414,12.718,12.957,13.081,13.086,13.004,12.878,12.750,12.655,12.616,12.639,12.706,12.775,12.804,12.772,
-12.695,12.607,12.540,12.497,12.453,12.377,12.250,12.084,11.903,11.731,11.570,11.408,11.220,10.987,10.699,10.359,
-9.983,9.596,9.229,8.905,8.624,8.366,8.094,7.779,7.413,7.013,6.608,6.222,5.861,5.526,5.218,4.951,
-4.739,4.584,4.467,4.350,4.201,4.006,3.776,3.535,3.307,3.104,2.934,2.807,2.736,2.726,2.765,2.819,
-2.849,2.831,2.773,2.713,2.698,2.759,2.901,3.104,3.341,3.588,3.841,4.103,4.383,4.690,5.027,5.393,
-5.780,6.173,6.548,6.876,7.128,7.287,7.349,7.329,7.257,7.158,7.044,6.892,6.659,6.296,5.791,5.185,
-4.578,4.085,3.793,3.717,3.801,3.954,4.098,4.201,4.281,4.371,4.496,4.657,4.845,5.060,5.317,5.626,
-5.972,6.301,6.546,6.657,6.644,6.573,6.536,6.603,6.784,7.037,7.292,7.506,7.682,7.862,8.095,8.400,
-8.753,9.102,9.404,9.649,9.870,10.114,10.412,10.752,11.085,11.350,11.511,11.576,11.593,11.621,11.708,11.876,
-12.128,12.459,12.862,13.325,13.819,14.298,14.713,15.030,15.246,15.391,15.505,15.624,15.767,15.936,16.128,16.340,
-16.574,16.826,17.088,17.346,17.593,17.827,18.056,18.286,18.522,18.763,19.005,19.245,19.480,19.704,19.912,20.101,
-20.274,20.440,20.607,20.778,20.944,21.098,21.237,21.376,21.534,21.722,21.933,22.147,22.343,22.518,22.692,22.894,
-23.147,23.449,23.777,24.096,24.382,24.626,24.838,25.032,25.221,25.407,25.587,25.751,25.886,25.985,26.053,26.110,
-26.185,26.303,26.466,26.647,26.800,26.891,26.916,26.905,26.905,26.947,27.027,27.112,27.165,27.177,27.171,27.184,
-27.232,27.299,27.347,27.345,27.295,27.233,27.197,27.204,27.230,27.231,27.176,27.071,26.950,26.849,26.782,26.731,
-26.666,26.575,26.469,26.375,26.312,26.275,26.243,26.194,26.120,26.031,25.939,25.852,25.769,25.691,25.619,25.550,
-25.474,25.374,25.764,25.573,25.353,25.162,25.068,25.096,25.206,25.312,25.342,25.287,25.207,25.183,25.248,25.360,
-25.433,25.404,25.280,25.133,25.036,25.006,24.993,24.930,24.791,24.622,24.498,24.468,24.506,24.542,24.526,24.478,
-24.479,24.607,24.860,25.147,25.342,25.374,25.285,25.201,25.247,25.472,25.818,26.178,26.463,26.644,26.744,26.783,
-26.761,26.664,26.517,26.407,26.459,26.766,27.325,28.026,28.704,29.235,29.590,29.838,30.078,30.372,30.709,31.025,
-31.261,31.404,31.495,31.596,31.743,31.923,32.090,32.198,32.235,32.233,32.252,32.345,32.536,32.803,33.093,33.344,
-33.518,33.610,33.652,33.688,33.754,33.859,33.983,34.096,34.181,34.249,34.335,34.474,34.673,34.902,35.108,35.236,
-35.273,35.247,35.221,35.248,35.347,35.492,35.641,35.768,35.893,36.061,36.307,36.608,36.889,37.058,37.078,37.001,
-36.944,37.006,37.189,37.379,37.420,37.234,36.908,36.671,36.771,37.316,38.196,39.133,39.840,40.174,40.190,40.073,
-39.998,40.020,40.080,40.085,40.002,39.897,39.872,39.984,40.192,40.391,40.489,40.477,40.433,40.465,40.632,40.918,
-41.249,41.557,41.820,42.063,42.324,42.614,42.914,43.187,43.413,43.603,43.793,44.021,44.300,44.618,44.939,45.216,
-45.416,45.527,45.567,45.573,45.585,45.623,45.682,45.734,45.755,45.738,45.698,45.653,45.610,45.562,45.496,45.422,
-45.369,45.372,45.445,45.562,45.675,45.741,45.746,45.709,45.660,45.611,45.552,45.467,45.354,45.238,45.148,45.101,
-45.080,45.049,44.981,44.878,44.765,44.669,44.596,44.529,44.446,44.341,44.235,44.160,44.134,44.151,44.183,44.199,
-44.187,44.152,44.106,44.057,44.005,43.947,43.876,43.788,43.674,43.524,43.332,43.102,42.854,42.611,42.391,42.195,
-42.013,41.837,41.661,41.489,41.322,41.153,40.977,40.792,40.608,40.433,40.267,40.091,39.880,39.623,39.338,39.063,
-38.832,38.652,38.495,38.323,38.119,37.901,37.705,37.558,37.446,37.321,37.136,36.876,36.578,36.311,36.137,36.085,
-36.141,36.269,36.443,36.651,36.894,37.164,37.431,37.645,37.758,37.740,37.590,37.341,37.043,36.752,36.521,36.387,
-36.373,36.478,36.682,36.955,37.260,37.563,37.832,38.036,38.135,38.096,37.897,37.558,37.144,36.757,36.500,36.432,
-36.539,36.738,36.921,37.011,36.994,36.913,36.829,36.768,36.706,36.585,36.361,36.033,35.636,35.210,34.764,34.277,
-33.729,33.142,32.583,32.130,31.819,31.606,31.392,31.084,30.658,30.171,29.728,29.400,29.188,29.025,28.827,28.552,
-28.216,27.867,27.539,27.229,26.904,26.533,26.119,25.699,25.312,24.975,24.671,24.369,24.045,23.699,23.343,22.990,
-22.635,22.266,21.876,21.469,21.063,20.673,20.302,19.940,19.574,19.201,18.829,18.467,18.118,17.772,17.413,17.031,
-16.631,16.228,15.843,15.485,15.151,14.825,14.486,14.125,13.743,13.357,12.988,12.651,12.343,12.044,11.727,11.380,
-11.007,10.632,10.278,9.956,9.654,9.350,9.023,8.674,8.314,7.957,7.603,7.239,6.852,6.436,6.007,5.584,
-5.184,4.804,4.428,4.041,3.637,3.224,2.817,2.428,2.059,1.704,1.351,.986,.601,.193,-.231,-.653,
--1.051,-1.410,-1.736,-2.048,-2.373,-2.724,-3.092,-3.454,-3.790,-4.102,-4.407,-4.727,-5.068,-5.420,-5.766,-6.101,
--6.438,-6.798,-7.188,-7.595,-7.986,-8.338,-8.649,-8.938,-9.234,-9.549,-9.877,-10.200,-10.512,-10.821,-11.142,-11.484,
--11.831,-12.159,-12.446,-12.692,-12.919,-13.159,-13.431,-13.733,-14.050,-14.362,-14.660,-14.946,-15.227,-15.507,-15.786,-16.062,
--16.332,-16.595,-16.851,-17.100,-17.348,-17.598,-17.853,-18.110,-18.362,-18.602,-18.829,-19.050,-19.277,-19.514,-19.751,-19.964,
--20.133,-20.255,-20.348,-20.442,-20.563,-20.712,-20.874,-21.022,-21.139,-21.224,-21.293,-21.366,-21.458,-21.575,-21.714,-21.868,
--22.027,-22.182,-22.325,-22.452,-22.561,-22.656,-22.743,-22.825,-22.906,-22.987,-23.072,-23.163,-23.257,-23.348,-23.425,-23.481,
--23.515,-23.532,-23.537,-23.534,-23.525,-23.516,-23.517,-23.539,-23.585,-23.642,-23.686,-23.691,-23.644,-23.554,-23.439,-23.319,
--23.203,-23.090,-22.976,-22.863,-22.761,-22.676,-22.607,-22.540,-22.465,-22.377,-22.282,-22.190,-22.106,-22.023,-21.928,-21.815,
--21.686,-21.550,-21.413,-21.279,-21.144,-21.008,-20.880,-20.767,-20.674,-20.590,-20.503,-20.400,-20.284,-20.164,-20.050,-19.941,
--19.824,-19.690,-19.539,-19.387,-19.255,-19.152,-19.071,-18.994,-18.905,-18.796,-18.672,-18.539,-18.408,-18.295,-18.227,-18.236,
--18.336,-18.503,-18.673,-18.769,-18.738,-18.591,-18.389,-18.208,-18.087,-18.008,-17.915,-17.769,-17.586,-17.426,-17.354,-17.383,
--17.457,-17.486,-17.411,-17.253,-17.103,-17.066,-17.193,-17.447,-17.725,-17.925,-18.003,-17.991,-17.962,-17.977,-18.051,-18.142,
--18.187,-18.136,-17.978,-17.740,-17.478,-17.253,-17.119,-17.103,-17.197,-17.358,-17.523,-17.638,-17.679,-17.658,-17.613,-17.569,
--17.529,-17.476,-17.397,-17.304,-17.233,-17.216,-17.253,-17.305,-17.321,-17.277,-17.197,-17.141,-17.153,-17.233,-17.328,-17.376,
--17.350,-17.281,-17.229,-17.234,-17.272,-17.273,-17.164,-16.928,-16.621,-16.329,-16.116,-15.979,-15.859,-15.693,-15.460,-15.201,
--14.979,-14.831,-14.740,-14.651,-14.510,-14.310,-14.077,-13.840,-13.581,-13.235,-12.719,-12.001,-11.147,-10.313,-9.695,-9.454,
--9.661,-10.275,-11.164,-12.136,-12.982,-13.508,-13.584,-13.182,-12.399,-11.435,-10.538,-9.910,-9.639,-9.687,-9.925,-10.215,
--10.464,-10.645,-10.774,-10.872,-10.948,-11.001,-11.036,-11.073,-11.129,-11.202,-11.267,-11.289,-11.260,-11.207,-11.188,-11.248,
--11.394,-11.582,-11.741,-11.818,-11.807,-11.755,-11.736,-11.820,-12.041,-12.385,-12.798,-13.208,-13.560,-13.839,-14.082,-14.353,
--14.708,-15.154,-15.637,-16.074,-16.404,-16.627,-16.800,-16.999,-17.260,-17.562,-17.845,-18.060,-18.203,-18.318,-18.451,-18.615,
--18.783,-18.910,-18.975,-18.993,-18.998,-19.012,-19.033,-19.037,-19.003,-18.926,-18.814,-18.670,-18.498,-18.323,-18.209,-18.251,
--18.525,-19.025,-19.646,-20.225,-20.627,-20.814,-20.861,-20.886,-20.969,-21.098,-21.200,-21.198,-21.079,-20.893,-20.708,-20.562,
--20.441,-20.309,-20.152,-19.994,-19.876,-19.819,-19.806,-19.800,-19.777,-19.751,-19.760,-19.826,-19.935,-20.039,-20.094,-20.087,
--20.044,-19.998,-19.963,-19.925,-19.866,-19.789,-19.729,-19.725,-19.789,-19.886,-19.958,-19.960,-19.891,-19.790,-19.710,-19.678,
--19.684,-19.698,-19.692,-19.661,-19.615,-19.565,-19.513,-19.451,-19.373,-19.283,-19.192,-19.106,-19.025,-18.948,-18.888,-18.874,
--18.938,-19.092,-19.316,-19.555,-19.747,-19.843,-19.831,-19.730,-19.575,-19.405,-19.251,-19.136,-19.072,-19.063,-19.098,-19.155,
--19.209,-19.238,-19.231,-19.188,-19.114,-19.013,-18.893,-18.764,-18.641,-18.534,-18.443,-18.357,-18.257,-18.132,-17.988,-17.841,
--17.711,-17.605,-17.518,-17.437,-17.357,-17.279,-17.211,-17.157,-17.109,-17.055,-16.988,-16.914,-16.846,-16.794,-16.755,-16.710,
--16.639,-16.539,-16.431,-16.356,-16.357,-16.459,-16.658,-16.921,-17.195,-17.424,-17.559,-17.577,-17.482,-17.305,-17.093,-16.892,
--16.737,-16.644,-16.622,-16.679,-16.824,-17.060,-17.367,-17.699,-17.998,-18.214,-18.327,-18.349,-18.315,-18.256,-18.183,-18.089,
--17.956,-17.774,-17.550,-17.317,-17.120,-17.011,-17.028,-17.177,-17.421,-17.691,-17.905,-18.007,-17.994,-17.911,-17.827,-17.798,
--17.834,-17.910,-17.985,-18.035,-18.059,-18.072,-18.083,-18.082,-18.054,-17.992,-17.910,-17.835,-17.789,-17.769,-17.755,-17.722,
--17.658,-17.568,-17.466,-17.356,-17.228,-17.070,-16.879,-16.671,-16.466,-16.278,-16.100,-15.913,-15.702,-15.468,-15.231,-15.012,
--14.821,-14.647,-14.471,-14.284,-14.089,-13.902,-13.735,-13.582,-13.427,-13.255,-13.063,-12.865,-12.682,-12.527,-12.398,-12.281,
--12.164,-12.040,-11.915,-11.798,-11.695,-11.605,-11.521,-11.436,-11.345,-11.248,-11.145,-11.039,-10.935,-10.837,-10.748,-10.668,
--10.593,-10.519,-10.441,-10.362,-10.285,-10.217,-10.161,-10.113,-10.069,-10.026,-9.983,-9.947,-9.922,-9.913,-9.918,-9.931,
--9.948,-9.966,-9.990,-10.024,-10.070,-10.124,-10.173,-10.203,-10.210,-10.199,-10.189,-10.199,-10.242,-10.318,-10.414,-10.516,
--10.614,-10.706,-10.792,-10.866,-10.919,-10.941,-10.932,-10.907,-10.888,-10.890,-10.914,-10.943,-10.957,-10.947,-10.922,-10.903,
--10.908,-10.940,-10.984,-11.021,-11.036,-11.029,-11.009,-10.988,-10.965,-10.936,-10.898,-10.852,-10.804,-10.759,-10.715,-10.661,
--10.590,-10.504,-10.416,-10.341,-10.285,-10.240,-10.186,-10.105,-9.991,-9.857,-9.729,-9.630,-9.568,-9.528,-9.475,-9.373,
--9.199,-8.959,-8.684,-8.421,-8.207,-8.056,-7.951,-7.859,-7.752,-7.625,-7.499,-7.398,-7.334,-7.299,-7.270,-7.229,
--7.179,-7.139,-7.123,-7.124,-7.118,-7.073,-6.979,-6.854,-6.733,-6.642,-6.578,-6.517,-6.431,-6.309,-6.166,-6.026,
--5.899,-5.777,-5.632,-5.447,-5.223,-4.982,-4.745,-4.523,-4.310,-4.092,-3.865,-3.636,-3.418,-3.221,-3.048,-2.893,
--2.751,-2.610,-2.454,-2.264,-2.029,-1.759,-1.487,-1.255,-1.083,-.954,-.825,-.654,-.434,-.200,.004,.159,
-.293,.461,.699,.999,1.311,1.587,1.819,2.042,2.297,2.595,2.902,3.167,3.368,3.531,3.706,3.926,
-4.176,4.417,4.622,4.807,5.008,5.234,5.437,5.531,5.460,5.244,4.983,4.788,4.727,4.825,5.118,5.710,
-6.744,8.274,10.131,11.912,13.148,13.577,13.342,12.949,12.982,13.734,15.010,16.236,16.818,16.498,15.497,14.338,
-13.506,13.172,13.158,13.126,12.844,12.317,11.737,11.303,11.076,10.971,10.849,10.640,10.382,10.167,10.056,10.038,
-10.057,10.068,10.070,10.091,10.141,10.200,10.239,10.262,10.326,10.504,10.823,11.235,11.634,11.926,12.090,12.189,
-12.321,12.547,12.845,13.126,13.289,13.273,13.086,12.793,12.481,12.230,12.094,12.090,12.205,12.391,12.585,12.733,
-12.809,12.824,12.813,12.808,12.816,12.819,12.789,12.713,12.597,12.461,12.319,12.170,11.996,11.774,11.492,11.151,
-10.764,10.356,9.952,9.582,9.265,9.010,8.807,8.633,8.462,8.273,8.055,7.803,7.514,7.185,6.824,6.454,
-6.107,5.811,5.574,5.375,5.182,4.968,4.729,4.485,4.259,4.063,3.895,3.746,3.616,3.522,3.479,3.488,
-3.525,3.548,3.525,3.459,3.392,3.390,3.504,3.748,4.092,4.474,4.834,5.139,5.395,5.636,5.909,6.242,
-6.639,7.072,7.494,7.852,8.106,8.235,8.240,8.139,7.968,7.765,7.562,7.366,7.157,6.894,6.540,6.093,
-5.603,5.164,4.866,4.752,4.792,4.902,4.994,5.030,5.034,5.070,5.188,5.386,5.615,5.822,5.989,6.155,
-6.377,6.684,7.035,7.339,7.506,7.506,7.391,7.268,7.231,7.314,7.482,7.668,7.827,7.967,8.139,8.392,
-8.733,9.118,9.476,9.755,9.950,10.107,10.282,10.512,10.794,11.092,11.361,11.577,11.735,11.850,11.941,12.029,
-12.144,12.328,12.622,13.050,13.593,14.189,14.753,15.213,15.536,15.741,15.871,15.971,16.063,16.152,16.239,16.338,
-16.472,16.663,16.912,17.193,17.469,17.711,17.912,18.084,18.253,18.436,18.641,18.865,19.098,19.329,19.550,19.756,
-19.946,20.128,20.309,20.497,20.690,20.879,21.053,21.207,21.353,21.507,21.685,21.889,22.109,22.331,22.548,22.765,
-22.993,23.241,23.510,23.789,24.065,24.328,24.568,24.784,24.976,25.150,25.313,25.470,25.621,25.757,25.868,25.954,
-26.035,26.139,26.291,26.485,26.687,26.846,26.928,26.935,26.909,26.897,26.926,26.985,27.039,27.063,27.063,27.068,
-27.108,27.185,27.268,27.321,27.329,27.316,27.324,27.380,27.467,27.535,27.534,27.451,27.315,27.176,27.069,26.990,
-26.911,26.809,26.686,26.574,26.500,26.469,26.455,26.427,26.370,26.299,26.238,26.202,26.185,26.164,26.125,26.068,
-25.996,25.901,25.764,26.137,25.960,25.718,25.465,25.284,25.228,25.282,25.370,25.411,25.380,25.320,25.308,25.379,
-25.492,25.553,25.485,25.288,25.044,24.860,24.797,24.832,24.890,24.902,24.855,24.792,24.770,24.816,24.917,25.041,
-25.170,25.304,25.440,25.554,25.606,25.574,25.492,25.446,25.524,25.756,26.088,26.414,26.642,26.752,26.793,26.824,
-26.867,26.887,26.852,26.789,26.810,27.056,27.600,28.381,29.213,29.881,30.263,30.385,30.393,30.454,30.652,30.957,
-31.271,31.504,31.639,31.725,31.827,31.973,32.134,32.254,32.300,32.290,32.289,32.367,32.559,32.845,33.164,33.449,
-33.656,33.783,33.853,33.900,33.949,34.006,34.067,34.123,34.177,34.242,34.337,34.480,34.670,34.887,35.095,35.255,
-35.349,35.382,35.387,35.402,35.453,35.545,35.666,35.805,35.966,36.169,36.427,36.721,36.997,37.183,37.238,37.187,
-37.114,37.109,37.200,37.317,37.327,37.129,36.750,36.372,36.253,36.581,37.349,38.341,39.241,39.799,39.960,39.864,
-39.733,39.723,39.839,39.970,39.998,39.896,39.745,39.667,39.728,39.897,40.077,40.191,40.244,40.313,40.485,40.786,
-41.165,41.528,41.813,42.023,42.220,42.465,42.778,43.123,43.443,43.702,43.909,44.110,44.349,44.640,44.958,45.256,
-45.491,45.650,45.745,45.810,45.874,45.953,46.042,46.126,46.185,46.214,46.216,46.198,46.161,46.101,46.013,45.909,
-45.821,45.788,45.831,45.936,46.056,46.139,46.154,46.110,46.042,45.977,45.916,45.835,45.712,45.549,45.381,45.249,
-45.174,45.138,45.100,45.027,44.912,44.778,44.655,44.556,44.472,44.389,44.304,44.233,44.199,44.204,44.232,44.246,
-44.222,44.158,44.080,44.018,43.986,43.973,43.951,43.889,43.771,43.603,43.405,43.200,43.006,42.826,42.651,42.462,
-42.245,42.003,41.757,41.536,41.359,41.223,41.101,40.961,40.789,40.592,40.390,40.201,40.018,39.821,39.591,39.331,
-39.071,38.842,38.662,38.520,38.387,38.240,38.074,37.905,37.747,37.604,37.459,37.295,37.107,36.904,36.705,36.516,
-36.332,36.148,35.970,35.833,35.783,35.861,36.070,36.370,36.689,36.949,37.095,37.112,37.019,36.864,36.702,36.574,
-36.499,36.459,36.417,36.334,36.197,36.039,35.935,35.968,36.190,36.580,37.040,37.434,37.646,37.639,37.471,37.262,
-37.134,37.140,37.252,37.382,37.442,37.396,37.267,37.111,36.968,36.842,36.705,36.535,36.333,36.115,35.880,35.585,
-35.154,34.537,33.757,32.929,32.210,31.716,31.454,31.319,31.158,30.862,30.420,29.917,29.462,29.123,28.890,28.705,
-28.503,28.261,27.989,27.713,27.438,27.146,26.811,26.426,26.011,25.600,25.218,24.868,24.536,24.199,23.850,23.489,
-23.120,22.744,22.357,21.956,21.548,21.144,20.753,20.373,19.998,19.618,19.233,18.854,18.492,18.150,17.817,17.474,
-17.105,16.711,16.307,15.916,15.553,15.219,14.898,14.571,14.225,13.861,13.493,13.138,12.805,12.488,12.168,11.827,
-11.460,11.080,10.710,10.369,10.060,9.766,9.465,9.140,8.791,8.429,8.066,7.704,7.334,6.942,6.526,6.094,
-5.665,5.254,4.864,4.490,4.119,3.740,3.352,2.959,2.570,2.195,1.837,1.489,1.140,.774,.379,-.036,
--.452,-.844,-1.197,-1.520,-1.836,-2.170,-2.526,-2.887,-3.229,-3.539,-3.827,-4.122,-4.447,-4.802,-5.170,-5.530,
--5.878,-6.230,-6.603,-6.997,-7.388,-7.741,-8.041,-8.307,-8.580,-8.896,-9.259,-9.641,-10.004,-10.328,-10.627,-10.929,
--11.255,-11.596,-11.919,-12.197,-12.429,-12.643,-12.875,-13.147,-13.453,-13.770,-14.073,-14.357,-14.634,-14.917,-15.210,-15.507,
--15.796,-16.070,-16.335,-16.600,-16.867,-17.134,-17.393,-17.639,-17.874,-18.106,-18.340,-18.582,-18.830,-19.083,-19.333,-19.572,
--19.783,-19.954,-20.084,-20.186,-20.287,-20.409,-20.559,-20.722,-20.868,-20.972,-21.033,-21.075,-21.137,-21.246,-21.406,-21.594,
--21.777,-21.929,-22.049,-22.152,-22.263,-22.392,-22.535,-22.674,-22.792,-22.887,-22.970,-23.056,-23.153,-23.253,-23.342,-23.408,
--23.451,-23.482,-23.514,-23.549,-23.580,-23.598,-23.605,-23.620,-23.662,-23.736,-23.821,-23.878,-23.871,-23.786,-23.641,-23.473,
--23.311,-23.170,-23.043,-22.920,-22.800,-22.690,-22.600,-22.530,-22.466,-22.393,-22.305,-22.209,-22.119,-22.041,-21.966,-21.881,
--21.775,-21.651,-21.522,-21.403,-21.299,-21.203,-21.103,-20.993,-20.877,-20.759,-20.646,-20.537,-20.433,-20.336,-20.250,-20.174,
--20.101,-20.014,-19.904,-19.771,-19.628,-19.490,-19.367,-19.258,-19.153,-19.049,-18.947,-18.850,-18.754,-18.652,-18.544,-18.453,
--18.414,-18.462,-18.594,-18.759,-18.879,-18.886,-18.769,-18.578,-18.389,-18.254,-18.168,-18.085,-17.958,-17.788,-17.628,-17.543,
--17.558,-17.631,-17.676,-17.624,-17.476,-17.308,-17.225,-17.292,-17.497,-17.754,-17.965,-18.075,-18.097,-18.090,-18.110,-18.176,
--18.259,-18.304,-18.269,-18.139,-17.937,-17.707,-17.504,-17.375,-17.349,-17.429,-17.583,-17.760,-17.904,-17.981,-17.990,-17.952,
--17.893,-17.825,-17.750,-17.663,-17.577,-17.512,-17.485,-17.489,-17.493,-17.466,-17.402,-17.332,-17.302,-17.339,-17.425,-17.508,
--17.538,-17.509,-17.461,-17.450,-17.492,-17.547,-17.535,-17.393,-17.127,-16.810,-16.536,-16.355,-16.244,-16.129,-15.948,-15.696,
--15.433,-15.235,-15.134,-15.090,-15.018,-14.838,-14.527,-14.117,-13.660,-13.186,-12.688,-12.144,-11.564,-11.014,-10.604,-10.440,
--10.582,-11.013,-11.657,-12.396,-13.100,-13.637,-13.889,-13.774,-13.288,-12.522,-11.656,-10.900,-10.415,-10.258,-10.368,-10.616,
--10.873,-11.064,-11.180,-11.248,-11.301,-11.354,-11.415,-11.491,-11.595,-11.735,-11.892,-12.030,-12.111,-12.126,-12.107,-12.112,
--12.191,-12.350,-12.546,-12.713,-12.796,-12.790,-12.740,-12.723,-12.810,-13.031,-13.368,-13.759,-14.131,-14.441,-14.698,-14.959,
--15.301,-15.768,-16.342,-16.944,-17.478,-17.883,-18.163,-18.380,-18.598,-18.847,-19.104,-19.322,-19.474,-19.571,-19.653,-19.748,
--19.851,-19.934,-19.973,-19.977,-19.983,-20.021,-20.091,-20.152,-20.160,-20.103,-20.011,-19.932,-19.893,-19.889,-19.901,-19.931,
--20.020,-20.221,-20.552,-20.959,-21.337,-21.591,-21.693,-21.696,-21.693,-21.742,-21.834,-21.905,-21.893,-21.784,-21.619,-21.454,
--21.316,-21.190,-21.048,-20.879,-20.709,-20.580,-20.510,-20.482,-20.458,-20.414,-20.362,-20.341,-20.382,-20.477,-20.584,-20.656,
--20.674,-20.651,-20.617,-20.587,-20.556,-20.508,-20.445,-20.393,-20.386,-20.433,-20.513,-20.577,-20.589,-20.546,-20.478,-20.424,
--20.403,-20.403,-20.393,-20.350,-20.271,-20.173,-20.078,-19.998,-19.930,-19.870,-19.811,-19.750,-19.678,-19.586,-19.473,-19.354,
--19.266,-19.254,-19.345,-19.531,-19.775,-20.021,-20.220,-20.341,-20.375,-20.326,-20.209,-20.044,-19.862,-19.698,-19.579,-19.517,
--19.501,-19.505,-19.506,-19.491,-19.458,-19.412,-19.353,-19.279,-19.189,-19.090,-18.993,-18.903,-18.818,-18.727,-18.619,-18.496,
--18.370,-18.254,-18.153,-18.059,-17.956,-17.837,-17.711,-17.593,-17.501,-17.436,-17.385,-17.336,-17.283,-17.235,-17.203,-17.187,
--17.169,-17.123,-17.028,-16.892,-16.749,-16.654,-16.651,-16.758,-16.958,-17.202,-17.432,-17.604,-17.697,-17.718,-17.686,-17.621,
--17.527,-17.399,-17.229,-17.030,-16.842,-16.719,-16.711,-16.840,-17.084,-17.392,-17.703,-17.973,-18.186,-18.341,-18.444,-18.493,
--18.477,-18.383,-18.208,-17.970,-17.704,-17.464,-17.305,-17.273,-17.382,-17.606,-17.876,-18.112,-18.249,-18.271,-18.208,-18.120,
--18.059,-18.044,-18.062,-18.087,-18.101,-18.107,-18.118,-18.137,-18.156,-18.153,-18.118,-18.059,-17.995,-17.945,-17.911,-17.877,
--17.821,-17.736,-17.626,-17.506,-17.382,-17.252,-17.106,-16.941,-16.764,-16.587,-16.412,-16.233,-16.036,-15.816,-15.581,-15.355,
--15.155,-14.985,-14.826,-14.657,-14.464,-14.255,-14.050,-13.865,-13.702,-13.550,-13.391,-13.216,-13.030,-12.846,-12.676,-12.522,
--12.381,-12.246,-12.112,-11.980,-11.850,-11.724,-11.603,-11.487,-11.381,-11.287,-11.202,-11.119,-11.030,-10.933,-10.829,-10.729,
--10.638,-10.558,-10.485,-10.413,-10.341,-10.277,-10.225,-10.191,-10.170,-10.153,-10.132,-10.107,-10.084,-10.074,-10.081,-10.102,
--10.129,-10.154,-10.174,-10.193,-10.216,-10.248,-10.284,-10.312,-10.323,-10.313,-10.290,-10.268,-10.262,-10.280,-10.320,-10.378,
--10.449,-10.533,-10.631,-10.736,-10.834,-10.904,-10.934,-10.923,-10.892,-10.866,-10.862,-10.881,-10.907,-10.922,-10.918,-10.905,
--10.901,-10.918,-10.956,-11.001,-11.036,-11.054,-11.062,-11.070,-11.081,-11.090,-11.084,-11.054,-11.001,-10.935,-10.868,-10.803,
--10.736,-10.662,-10.578,-10.495,-10.425,-10.374,-10.340,-10.304,-10.251,-10.171,-10.071,-9.966,-9.871,-9.793,-9.720,-9.631,
--9.499,-9.311,-9.074,-8.814,-8.562,-8.343,-8.165,-8.014,-7.873,-7.736,-7.611,-7.518,-7.466,-7.449,-7.440,-7.415,
--7.369,-7.317,-7.287,-7.290,-7.313,-7.318,-7.274,-7.175,-7.048,-6.928,-6.837,-6.768,-6.691,-6.585,-6.449,-6.307,
--6.185,-6.086,-5.988,-5.858,-5.675,-5.447,-5.203,-4.968,-4.753,-4.547,-4.335,-4.110,-3.882,-3.665,-3.469,-3.295,
--3.134,-2.983,-2.833,-2.675,-2.491,-2.267,-2.007,-1.734,-1.488,-1.294,-1.147,-1.010,-.844,-.634,-.400,-.180,
-.007,.176,.366,.609,.901,1.203,1.477,1.709,1.923,2.154,2.416,2.690,2.943,3.158,3.352,3.557,
-3.795,4.058,4.319,4.559,4.785,5.014,5.241,5.422,5.493,5.419,5.225,4.984,4.776,4.648,4.635,4.813,
-5.324,6.330,7.882,9.798,11.665,13.015,13.580,13.475,13.155,13.157,13.768,14.844,15.900,16.415,16.154,15.289,
-14.256,13.469,13.077,12.935,12.768,12.392,11.830,11.264,10.879,10.723,10.702,10.666,10.527,10.303,10.082,9.941,
-9.898,9.916,9.948,9.976,10.005,10.040,10.074,10.102,10.146,10.257,10.489,10.854,11.294,11.713,12.032,12.241,
-12.402,12.599,12.875,13.196,13.460,13.560,13.437,13.110,12.662,12.205,11.841,11.636,11.614,11.755,12.006,12.296,
-12.560,12.756,12.873,12.928,12.943,12.937,12.915,12.881,12.838,12.791,12.742,12.680,12.579,12.417,12.181,11.874,
-11.516,11.126,10.726,10.331,9.962,9.645,9.400,9.239,9.150,9.104,9.061,8.983,8.838,8.610,8.299,7.923,
-7.515,7.114,6.753,6.441,6.170,5.918,5.669,5.427,5.209,5.033,4.905,4.814,4.746,4.694,4.663,4.667,
-4.705,4.753,4.771,4.731,4.636,4.530,4.481,4.548,4.750,5.053,5.390,5.692,5.920,6.087,6.241,6.443,
-6.732,7.111,7.544,7.973,8.340,8.602,8.734,8.732,8.604,8.374,8.077,7.758,7.449,7.162,6.881,6.582,
-6.259,5.942,5.689,5.556,5.553,5.633,5.714,5.729,5.677,5.620,5.648,5.811,6.080,6.367,6.583,6.696,
-6.756,6.852,7.045,7.321,7.603,7.800,7.880,7.893,7.930,8.060,8.281,8.520,8.690,8.756,8.765,8.814,
-8.987,9.305,9.708,10.101,10.410,10.619,10.763,10.896,11.053,11.235,11.428,11.619,11.810,12.003,12.190,12.350,
-12.468,12.560,12.687,12.926,13.328,13.880,14.501,15.080,15.532,15.837,16.033,16.185,16.333,16.478,16.591,16.658,
-16.694,16.748,16.869,17.075,17.338,17.606,17.830,17.995,18.121,18.246,18.404,18.606,18.840,19.082,19.309,19.508,
-19.680,19.836,19.991,20.159,20.350,20.560,20.779,20.994,21.194,21.380,21.559,21.741,21.935,22.145,22.371,22.609,
-22.854,23.096,23.327,23.545,23.757,23.972,24.197,24.428,24.646,24.832,24.979,25.096,25.209,25.337,25.481,25.629,
-25.763,25.883,26.006,26.152,26.324,26.497,26.633,26.704,26.716,26.705,26.710,26.751,26.814,26.871,26.905,26.928,
-26.970,27.054,27.167,27.275,27.346,27.378,27.406,27.469,27.580,27.700,27.770,27.745,27.631,27.475,27.336,27.240,
-27.170,27.086,26.970,26.836,26.725,26.662,26.642,26.628,26.588,26.519,26.453,26.421,26.432,26.459,26.467,26.438,
-26.381,26.316,26.245,26.137,26.405,26.338,26.168,25.923,25.680,25.512,25.436,25.405,25.353,25.252,25.142,25.094,
-25.153,25.282,25.385,25.366,25.197,24.946,24.729,24.639,24.695,24.839,24.990,25.092,25.146,25.187,25.251,25.352,
-25.476,25.596,25.686,25.724,25.697,25.614,25.517,25.478,25.567,25.811,26.163,26.516,26.766,26.867,26.862,26.841,
-26.876,26.972,27.080,27.162,27.253,27.462,27.908,28.616,29.473,30.263,30.784,30.961,30.884,30.747,30.729,30.899,
-31.200,31.512,31.743,31.880,31.974,32.084,32.222,32.353,32.430,32.443,32.436,32.484,32.637,32.895,33.200,33.482,
-33.691,33.823,33.909,33.983,34.060,34.131,34.178,34.196,34.203,34.232,34.314,34.459,34.654,34.866,35.060,35.216,
-35.329,35.411,35.476,35.536,35.593,35.649,35.710,35.797,35.937,36.152,36.439,36.762,37.058,37.262,37.344,37.330,
-37.291,37.304,37.393,37.502,37.508,37.301,36.871,36.352,35.986,36.009,36.521,37.414,38.414,39.218,39.643,39.705,
-39.577,39.467,39.488,39.616,39.735,39.746,39.643,39.507,39.442,39.496,39.638,39.794,39.921,40.040,40.217,40.505,
-40.892,41.304,41.654,41.905,42.095,42.302,42.588,42.955,43.349,43.699,43.971,44.184,44.393,44.643,44.942,45.255,
-45.533,45.743,45.884,45.983,46.068,46.156,46.243,46.317,46.372,46.416,46.465,46.527,46.593,46.634,46.624,46.555,
-46.455,46.377,46.367,46.439,46.556,46.655,46.679,46.614,46.493,46.369,46.278,46.217,46.147,46.032,45.865,45.675,
-45.506,45.383,45.299,45.218,45.112,44.976,44.831,44.703,44.605,44.530,44.462,44.400,44.354,44.337,44.346,44.357,
-44.337,44.272,44.174,44.083,44.033,44.031,44.044,44.019,43.913,43.723,43.487,43.270,43.123,43.055,43.030,42.977,
-42.829,42.558,42.187,41.786,41.434,41.183,41.035,40.949,40.863,40.733,40.551,40.336,40.117,39.907,39.699,39.479,
-39.240,38.995,38.766,38.573,38.423,38.305,38.203,38.101,37.993,37.872,37.737,37.590,37.437,37.290,37.156,37.030,
-36.892,36.717,36.494,36.246,36.025,35.896,35.903,36.051,36.296,36.566,36.784,36.897,36.892,36.799,36.675,36.580,
-36.552,36.579,36.597,36.516,36.258,35.820,35.295,34.863,34.726,35.018,35.736,36.725,37.729,38.496,38.872,38.863,
-38.602,38.279,38.042,37.946,37.949,37.969,37.936,37.825,37.650,37.434,37.188,36.920,36.648,36.411,36.245,36.140,
-36.017,35.745,35.211,34.394,33.405,32.446,31.710,31.286,31.118,31.046,30.905,30.609,30.182,29.719,29.314,29.007,
-28.772,28.556,28.320,28.059,27.789,27.524,27.259,26.970,26.638,26.261,25.857,25.450,25.058,24.683,24.315,23.944,
-23.563,23.172,22.772,22.367,21.961,21.561,21.172,20.798,20.433,20.068,19.696,19.317,18.937,18.567,18.212,17.868,
-17.525,17.172,16.805,16.427,16.047,15.672,15.304,14.943,14.590,14.246,13.912,13.589,13.274,12.957,12.629,12.285,
-11.925,11.558,11.196,10.850,10.520,10.200,9.878,9.544,9.192,8.827,8.454,8.079,7.702,7.322,6.937,6.546,
-6.149,5.748,5.347,4.946,4.552,4.166,3.789,3.416,3.043,2.665,2.289,1.922,1.568,1.221,.867,.492,
-.096,-.303,-.680,-1.023,-1.337,-1.646,-1.973,-2.322,-2.677,-3.014,-3.324,-3.621,-3.929,-4.268,-4.634,-5.006,
--5.364,-5.708,-6.057,-6.425,-6.809,-7.178,-7.502,-7.773,-8.019,-8.290,-8.621,-9.009,-9.414,-9.792,-10.121,-10.418,
--10.719,-11.043,-11.381,-11.700,-11.973,-12.202,-12.419,-12.662,-12.946,-13.256,-13.561,-13.843,-14.108,-14.379,-14.673,-14.987,
--15.300,-15.588,-15.847,-16.093,-16.349,-16.623,-16.906,-17.177,-17.420,-17.640,-17.858,-18.094,-18.356,-18.635,-18.914,-19.177,
--19.415,-19.623,-19.799,-19.942,-20.057,-20.160,-20.270,-20.401,-20.547,-20.687,-20.800,-20.879,-20.940,-21.018,-21.140,-21.308,
--21.497,-21.668,-21.798,-21.891,-21.976,-22.086,-22.238,-22.416,-22.592,-22.740,-22.854,-22.949,-23.045,-23.150,-23.254,-23.341,
--23.402,-23.445,-23.486,-23.537,-23.593,-23.639,-23.661,-23.670,-23.689,-23.747,-23.844,-23.949,-24.011,-23.988,-23.870,-23.687,
--23.486,-23.306,-23.158,-23.031,-22.911,-22.793,-22.683,-22.590,-22.511,-22.433,-22.344,-22.242,-22.141,-22.059,-22.001,-21.953,
--21.891,-21.800,-21.684,-21.562,-21.455,-21.370,-21.299,-21.220,-21.122,-21.003,-20.874,-20.749,-20.636,-20.538,-20.456,-20.386,
--20.325,-20.262,-20.189,-20.099,-19.991,-19.875,-19.755,-19.631,-19.501,-19.364,-19.231,-19.120,-19.041,-18.985,-18.928,-18.845,
--18.740,-18.651,-18.628,-18.697,-18.831,-18.957,-18.996,-18.910,-18.731,-18.531,-18.379,-18.292,-18.232,-18.146,-18.014,-17.865,
--17.761,-17.739,-17.781,-17.817,-17.778,-17.644,-17.470,-17.351,-17.367,-17.530,-17.784,-18.039,-18.222,-18.315,-18.343,-18.348,
--18.356,-18.362,-18.344,-18.282,-18.169,-18.016,-17.849,-17.701,-17.609,-17.604,-17.696,-17.869,-18.075,-18.250,-18.347,-18.349,
--18.277,-18.169,-18.063,-17.974,-17.904,-17.845,-17.796,-17.760,-17.736,-17.715,-17.688,-17.654,-17.623,-17.611,-17.622,-17.644,
--17.653,-17.636,-17.608,-17.599,-17.631,-17.692,-17.729,-17.682,-17.521,-17.277,-17.020,-16.813,-16.673,-16.559,-16.406,-16.181,
--15.911,-15.661,-15.487,-15.387,-15.293,-15.109,-14.772,-14.286,-13.716,-13.147,-12.646,-12.241,-11.941,-11.760,-11.722,-11.848,
--12.132,-12.531,-12.983,-13.429,-13.829,-14.153,-14.354,-14.359,-14.101,-13.561,-12.818,-12.039,-11.420,-11.097,-11.092,-11.304,
--11.578,-11.783,-11.869,-11.866,-11.842,-11.851,-11.912,-12.012,-12.135,-12.275,-12.433,-12.604,-12.766,-12.893,-12.969,-13.012,
--13.057,-13.143,-13.282,-13.453,-13.612,-13.719,-13.763,-13.771,-13.794,-13.884,-14.068,-14.332,-14.635,-14.929,-15.195,-15.460,
--15.783,-16.228,-16.814,-17.493,-18.168,-18.739,-19.155,-19.435,-19.647,-19.855,-20.083,-20.307,-20.489,-20.612,-20.698,-20.781,
--20.879,-20.973,-21.029,-21.029,-20.999,-20.990,-21.039,-21.141,-21.240,-21.282,-21.247,-21.174,-21.125,-21.140,-21.216,-21.313,
--21.404,-21.496,-21.629,-21.833,-22.090,-22.340,-22.516,-22.591,-22.595,-22.590,-22.616,-22.667,-22.692,-22.646,-22.522,-22.354,
--22.189,-22.046,-21.915,-21.770,-21.603,-21.439,-21.312,-21.239,-21.203,-21.167,-21.107,-21.031,-20.977,-20.978,-21.040,-21.131,
--21.212,-21.257,-21.271,-21.272,-21.275,-21.274,-21.253,-21.207,-21.147,-21.100,-21.085,-21.098,-21.120,-21.130,-21.122,-21.106,
--21.094,-21.085,-21.066,-21.016,-20.930,-20.820,-20.708,-20.611,-20.535,-20.474,-20.417,-20.359,-20.296,-20.222,-20.127,-20.008,
--19.874,-19.751,-19.672,-19.663,-19.732,-19.866,-20.044,-20.245,-20.449,-20.635,-20.774,-20.839,-20.810,-20.693,-20.516,-20.316,
--20.127,-19.963,-19.828,-19.721,-19.645,-19.605,-19.597,-19.606,-19.604,-19.568,-19.493,-19.391,-19.285,-19.189,-19.106,-19.028,
--18.947,-18.863,-18.778,-18.694,-18.600,-18.483,-18.339,-18.177,-18.019,-17.890,-17.796,-17.729,-17.671,-17.612,-17.554,-17.514,
--17.503,-17.515,-17.527,-17.508,-17.442,-17.338,-17.227,-17.145,-17.118,-17.148,-17.218,-17.304,-17.391,-17.484,-17.592,-17.723,
--17.861,-17.969,-17.996,-17.904,-17.693,-17.402,-17.106,-16.881,-16.778,-16.807,-16.947,-17.159,-17.408,-17.674,-17.944,-18.204,
--18.432,-18.600,-18.680,-18.659,-18.542,-18.354,-18.139,-17.948,-17.830,-17.812,-17.893,-18.036,-18.190,-18.310,-18.373,-18.388,
--18.382,-18.375,-18.372,-18.359,-18.326,-18.275,-18.223,-18.193,-18.194,-18.215,-18.235,-18.234,-18.210,-18.174,-18.135,-18.094,
--18.039,-17.956,-17.843,-17.707,-17.565,-17.426,-17.291,-17.151,-17.001,-16.840,-16.671,-16.495,-16.307,-16.102,-15.884,-15.664,
--15.463,-15.291,-15.144,-15.002,-14.843,-14.657,-14.450,-14.242,-14.049,-13.876,-13.718,-13.561,-13.397,-13.222,-13.043,-12.864,
--12.691,-12.527,-12.374,-12.235,-12.107,-11.983,-11.856,-11.721,-11.580,-11.444,-11.323,-11.219,-11.126,-11.034,-10.936,-10.833,
--10.736,-10.649,-10.575,-10.507,-10.441,-10.375,-10.319,-10.281,-10.265,-10.265,-10.267,-10.259,-10.239,-10.217,-10.205,-10.212,
--10.238,-10.270,-10.300,-10.322,-10.339,-10.359,-10.387,-10.420,-10.450,-10.466,-10.463,-10.444,-10.418,-10.394,-10.381,-10.382,
--10.403,-10.446,-10.516,-10.610,-10.716,-10.816,-10.891,-10.928,-10.930,-10.911,-10.887,-10.869,-10.858,-10.847,-10.831,-10.814,
--10.803,-10.807,-10.826,-10.852,-10.876,-10.895,-10.918,-10.955,-11.010,-11.073,-11.121,-11.135,-11.107,-11.048,-10.979,-10.918,
--10.873,-10.833,-10.784,-10.716,-10.629,-10.533,-10.442,-10.363,-10.299,-10.245,-10.198,-10.154,-10.109,-10.058,-9.994,-9.904,
--9.780,-9.616,-9.417,-9.194,-8.967,-8.750,-8.553,-8.373,-8.202,-8.036,-7.884,-7.762,-7.683,-7.646,-7.630,-7.607,
--7.557,-7.486,-7.422,-7.396,-7.415,-7.455,-7.477,-7.445,-7.357,-7.240,-7.127,-7.038,-6.962,-6.873,-6.755,-6.615,
--6.479,-6.370,-6.284,-6.193,-6.063,-5.877,-5.649,-5.408,-5.182,-4.975,-4.778,-4.574,-4.361,-4.149,-3.952,-3.772,
--3.603,-3.433,-3.261,-3.088,-2.914,-2.730,-2.517,-2.267,-1.993,-1.726,-1.497,-1.315,-1.160,-.995,-.795,-.563,
--.324,-.098,.113,.327,.566,.831,1.101,1.349,1.565,1.760,1.958,2.175,2.410,2.650,2.890,3.139,
-3.410,3.704,4.002,4.280,4.528,4.755,4.976,5.187,5.351,5.422,5.377,5.234,5.042,4.847,4.676,4.565,
-4.609,4.978,5.856,7.312,9.192,11.119,12.646,13.491,13.698,13.616,13.684,14.155,14.942,15.680,15.971,15.640,
-14.837,13.916,13.205,12.814,12.613,12.372,11.948,11.379,10.834,10.477,10.352,10.367,10.376,10.286,10.108,9.922,
-9.808,9.793,9.844,9.909,9.953,9.970,9.968,9.962,9.969,10.019,10.159,10.426,10.815,11.270,11.706,12.054,
-12.306,12.510,12.737,13.021,13.331,13.582,13.681,13.573,13.271,12.847,12.398,12.018,11.770,11.684,11.754,11.946,
-12.204,12.466,12.679,12.809,12.848,12.809,12.721,12.624,12.555,12.536,12.568,12.624,12.657,12.622,12.493,12.275,
-11.999,11.697,11.389,11.079,10.762,10.447,10.160,9.936,9.795,9.733,9.714,9.686,9.604,9.444,9.202,8.894,
-8.541,8.165,7.786,7.422,7.083,6.773,6.489,6.230,6.000,5.807,5.662,5.573,5.537,5.549,5.601,5.687,
-5.797,5.910,5.993,6.009,5.938,5.791,5.610,5.460,5.397,5.442,5.575,5.745,5.898,6.006,6.078,6.155,
-6.285,6.502,6.808,7.180,7.583,7.979,8.333,8.609,8.766,8.767,8.594,8.268,7.850,7.419,7.040,6.742,
-6.514,6.329,6.177,6.073,6.041,6.087,6.176,6.252,6.271,6.242,6.229,6.310,6.523,6.832,7.140,7.354,
-7.437,7.432,7.423,7.474,7.589,7.722,7.830,7.929,8.091,8.400,8.875,9.434,9.924,10.204,10.233,10.092,
-9.944,9.936,10.129,10.473,10.862,11.196,11.435,11.596,11.720,11.835,11.947,12.056,12.170,12.311,12.492,12.693,
-12.874,12.995,13.064,13.144,13.327,13.675,14.178,14.752,15.281,15.689,15.969,16.178,16.386,16.619,16.852,17.027,
-17.108,17.111,17.099,17.144,17.280,17.489,17.715,17.905,18.041,18.148,18.268,18.437,18.662,18.919,19.175,19.402,
-19.590,19.749,19.894,20.042,20.203,20.381,20.572,20.776,20.990,21.209,21.430,21.645,21.849,22.042,22.229,22.423,
-22.630,22.849,23.068,23.271,23.453,23.627,23.813,24.026,24.257,24.477,24.650,24.761,24.828,24.894,24.999,25.153,
-25.337,25.514,25.659,25.774,25.880,25.994,26.113,26.215,26.282,26.315,26.340,26.386,26.466,26.565,26.660,26.737,
-26.809,26.899,27.021,27.161,27.286,27.372,27.426,27.485,27.584,27.721,27.852,27.915,27.873,27.744,27.586,27.458,
-27.379,27.326,27.258,27.155,27.037,26.941,26.890,26.871,26.845,26.785,26.699,26.624,26.592,26.601,26.615,26.592,
-26.526,26.451,26.408,26.407,26.405,26.515,26.563,26.498,26.314,26.065,25.829,25.644,25.499,25.353,25.190,25.046,
-24.987,25.052,25.214,25.375,25.430,25.329,25.110,24.879,24.744,24.755,24.887,25.071,25.235,25.348,25.416,25.465,
-25.518,25.580,25.638,25.675,25.676,25.638,25.582,25.553,25.603,25.765,26.027,26.324,26.573,26.714,26.755,26.763,
-26.820,26.970,27.191,27.429,27.655,27.908,28.277,28.835,29.561,30.324,30.940,31.273,31.322,31.215,31.135,31.210,
-31.456,31.782,32.071,32.258,32.353,32.417,32.500,32.604,32.698,32.753,32.779,32.825,32.943,33.142,33.384,33.604,
-33.753,33.830,33.875,33.938,34.039,34.157,34.251,34.291,34.287,34.284,34.337,34.475,34.684,34.917,35.120,35.263,
-35.349,35.410,35.479,35.568,35.667,35.755,35.821,35.882,35.980,36.154,36.415,36.728,37.026,37.240,37.339,37.353,
-37.357,37.424,37.573,37.742,37.802,37.631,37.194,36.590,36.039,35.794,36.017,36.697,37.644,38.575,39.243,39.547,
-39.551,39.423,39.321,39.315,39.374,39.415,39.388,39.307,39.239,39.246,39.344,39.496,39.654,39.805,39.980,40.227,
-40.564,40.955,41.328,41.630,41.860,42.075,42.345,42.709,43.138,43.562,43.913,44.170,44.367,44.565,44.810,45.105,
-45.418,45.703,45.930,46.098,46.226,46.327,46.405,46.452,46.466,46.465,46.482,46.552,46.687,46.860,47.021,47.116,
-47.128,47.080,47.030,47.032,47.098,47.193,47.253,47.223,47.095,46.910,46.732,46.604,46.527,46.466,46.378,46.241,
-46.069,45.890,45.727,45.580,45.435,45.280,45.125,44.990,44.891,44.824,44.766,44.693,44.598,44.497,44.413,44.355,
-44.311,44.259,44.188,44.113,44.067,44.072,44.115,44.144,44.094,43.928,43.665,43.382,43.173,43.097,43.146,43.238,
-43.257,43.108,42.764,42.277,41.755,41.311,41.014,40.866,40.812,40.773,40.685,40.524,40.304,40.053,39.800,39.556,
-39.318,39.080,38.843,38.615,38.408,38.234,38.099,38.001,37.933,37.878,37.818,37.737,37.632,37.512,37.390,37.278,
-37.173,37.060,36.924,36.760,36.588,36.446,36.370,36.380,36.467,36.597,36.722,36.796,36.792,36.709,36.575,36.441,
-36.363,36.370,36.440,36.495,36.423,36.136,35.629,35.016,34.510,34.348,34.693,35.548,36.745,37.994,38.998,39.559,
-39.644,39.371,38.938,38.532,38.259,38.133,38.106,38.111,38.095,38.025,37.877,37.634,37.298,36.910,36.549,36.297,
-36.186,36.154,36.057,35.733,35.091,34.177,33.160,32.252,31.610,31.258,31.099,30.981,30.783,30.470,30.085,29.699,
-29.357,29.058,28.771,28.467,28.142,27.816,27.509,27.224,26.942,26.634,26.284,25.897,25.493,25.097,24.719,24.356,
-23.994,23.620,23.223,22.807,22.380,21.955,21.543,21.154,20.788,20.441,20.103,19.766,19.423,19.069,18.704,18.331,
-17.954,17.579,17.211,16.850,16.491,16.125,15.745,15.351,14.958,14.586,14.254,13.962,13.693,13.417,13.108,12.756,
-12.376,11.995,11.637,11.310,11.003,10.693,10.362,10.005,9.631,9.252,8.875,8.498,8.113,7.719,7.322,6.935,
-6.567,6.212,5.852,5.473,5.069,4.653,4.247,3.866,3.510,3.160,2.799,2.423,2.041,1.667,1.308,.956,
-.597,.224,-.155,-.517,-.847,-1.148,-1.440,-1.747,-2.081,-2.431,-2.778,-3.111,-3.437,-3.772,-4.127,-4.495,
--4.858,-5.201,-5.527,-5.857,-6.204,-6.566,-6.916,-7.229,-7.501,-7.761,-8.051,-8.397,-8.790,-9.191,-9.558,-9.879,
--10.175,-10.479,-10.807,-11.144,-11.458,-11.727,-11.961,-12.194,-12.457,-12.757,-13.069,-13.363,-13.627,-13.878,-14.149,-14.456,
--14.785,-15.103,-15.380,-15.616,-15.840,-16.088,-16.374,-16.681,-16.976,-17.235,-17.461,-17.682,-17.928,-18.210,-18.513,-18.807,
--19.071,-19.299,-19.495,-19.666,-19.813,-19.933,-20.030,-20.119,-20.219,-20.341,-20.478,-20.615,-20.736,-20.844,-20.955,-21.085,
--21.239,-21.399,-21.539,-21.644,-21.724,-21.809,-21.927,-22.089,-22.277,-22.461,-22.619,-22.746,-22.857,-22.965,-23.076,-23.178,
--23.261,-23.324,-23.380,-23.444,-23.519,-23.591,-23.637,-23.650,-23.649,-23.669,-23.737,-23.848,-23.959,-24.013,-23.972,-23.837,
--23.647,-23.452,-23.287,-23.157,-23.046,-22.936,-22.825,-22.721,-22.632,-22.550,-22.461,-22.353,-22.233,-22.120,-22.035,-21.984,
--21.947,-21.896,-21.815,-21.706,-21.591,-21.491,-21.413,-21.346,-21.271,-21.179,-21.071,-20.962,-20.863,-20.779,-20.705,-20.634,
--20.561,-20.484,-20.403,-20.316,-20.226,-20.136,-20.051,-19.967,-19.872,-19.754,-19.609,-19.456,-19.326,-19.245,-19.209,-19.182,
--19.119,-19.004,-18.865,-18.765,-18.757,-18.846,-18.974,-19.052,-19.017,-18.872,-18.677,-18.509,-18.407,-18.355,-18.298,-18.198,
--18.062,-17.938,-17.875,-17.878,-17.898,-17.871,-17.760,-17.594,-17.456,-17.432,-17.560,-17.812,-18.108,-18.363,-18.526,-18.588,
--18.576,-18.522,-18.449,-18.364,-18.269,-18.160,-18.041,-17.920,-17.817,-17.761,-17.783,-17.901,-18.100,-18.329,-18.518,-18.610,
--18.587,-18.478,-18.342,-18.231,-18.169,-18.143,-18.124,-18.090,-18.042,-17.998,-17.978,-17.987,-18.012,-18.029,-18.017,-17.968,
--17.891,-17.807,-17.744,-17.723,-17.750,-17.802,-17.842,-17.830,-17.745,-17.603,-17.443,-17.304,-17.195,-17.089,-16.940,-16.722,
--16.448,-16.169,-15.934,-15.751,-15.574,-15.325,-14.949,-14.446,-13.884,-13.357,-12.944,-12.685,-12.581,-12.622,-12.804,-13.121,
--13.545,-14.017,-14.458,-14.809,-15.053,-15.215,-15.319,-15.345,-15.224,-14.876,-14.281,-13.529,-12.801,-12.292,-12.116,-12.246,
--12.535,-12.803,-12.927,-12.891,-12.775,-12.681,-12.675,-12.759,-12.891,-13.025,-13.145,-13.259,-13.386,-13.529,-13.672,-13.795,
--13.888,-13.961,-14.037,-14.134,-14.257,-14.394,-14.527,-14.644,-14.747,-14.851,-14.976,-15.133,-15.320,-15.525,-15.741,-15.981,
--16.284,-16.703,-17.273,-17.975,-18.732,-19.434,-19.986,-20.356,-20.586,-20.759,-20.944,-21.160,-21.373,-21.540,-21.641,-21.703,
--21.768,-21.858,-21.957,-22.025,-22.035,-22.005,-21.984,-22.019,-22.117,-22.236,-22.324,-22.352,-22.339,-22.333,-22.369,-22.449,
--22.540,-22.614,-22.675,-22.755,-22.886,-23.067,-23.260,-23.411,-23.491,-23.512,-23.512,-23.521,-23.533,-23.514,-23.433,-23.286,
--23.102,-22.920,-22.763,-22.623,-22.480,-22.328,-22.182,-22.068,-21.999,-21.959,-21.916,-21.845,-21.748,-21.656,-21.607,-21.615,
--21.669,-21.742,-21.810,-21.867,-21.919,-21.971,-22.013,-22.028,-22.003,-21.938,-21.852,-21.767,-21.700,-21.660,-21.647,-21.656,
--21.679,-21.701,-21.703,-21.667,-21.589,-21.484,-21.376,-21.287,-21.223,-21.173,-21.119,-21.047,-20.957,-20.857,-20.754,-20.646,
--20.531,-20.407,-20.282,-20.172,-20.088,-20.039,-20.033,-20.077,-20.184,-20.361,-20.599,-20.862,-21.097,-21.255,-21.303,-21.240,
--21.088,-20.876,-20.633,-20.384,-20.155,-19.974,-19.863,-19.821,-19.827,-19.841,-19.828,-19.776,-19.698,-19.621,-19.562,-19.522,
--19.486,-19.436,-19.366,-19.280,-19.188,-19.087,-18.971,-18.831,-18.670,-18.504,-18.356,-18.237,-18.145,-18.062,-17.975,-17.885,
--17.807,-17.764,-17.765,-17.800,-17.842,-17.860,-17.836,-17.770,-17.675,-17.570,-17.469,-17.379,-17.310,-17.275,-17.295,-17.389,
--17.560,-17.788,-18.023,-18.204,-18.280,-18.230,-18.070,-17.848,-17.619,-17.425,-17.288,-17.208,-17.180,-17.205,-17.292,-17.453,
--17.685,-17.971,-18.276,-18.555,-18.768,-18.890,-18.913,-18.849,-18.728,-18.585,-18.456,-18.364,-18.315,-18.304,-18.320,-18.356,
--18.410,-18.476,-18.541,-18.585,-18.587,-18.542,-18.464,-18.381,-18.321,-18.296,-18.299,-18.309,-18.310,-18.294,-18.268,-18.238,
--18.203,-18.153,-18.079,-17.976,-17.852,-17.716,-17.576,-17.429,-17.272,-17.099,-16.912,-16.719,-16.525,-16.333,-16.141,-15.951,
--15.769,-15.600,-15.445,-15.298,-15.145,-14.977,-14.793,-14.599,-14.409,-14.232,-14.066,-13.908,-13.750,-13.587,-13.420,-13.247,
--13.069,-12.889,-12.711,-12.548,-12.406,-12.286,-12.179,-12.069,-11.943,-11.799,-11.647,-11.499,-11.363,-11.241,-11.127,-11.018,
--10.915,-10.824,-10.747,-10.681,-10.618,-10.552,-10.486,-10.431,-10.397,-10.386,-10.389,-10.389,-10.375,-10.347,-10.317,-10.300,
--10.305,-10.330,-10.362,-10.389,-10.405,-10.415,-10.429,-10.454,-10.492,-10.537,-10.579,-10.609,-10.620,-10.613,-10.592,-10.566,
--10.547,-10.547,-10.575,-10.633,-10.713,-10.801,-10.882,-10.944,-10.987,-11.014,-11.029,-11.033,-11.020,-10.989,-10.940,-10.885,
--10.838,-10.808,-10.794,-10.786,-10.775,-10.759,-10.752,-10.773,-10.832,-10.922,-11.017,-11.086,-11.109,-11.087,-11.041,-11.000,
--10.978,-10.973,-10.968,-10.938,-10.869,-10.760,-10.622,-10.472,-10.329,-10.211,-10.128,-10.086,-10.080,-10.092,-10.100,-10.077,
--10.007,-9.884,-9.717,-9.522,-9.317,-9.119,-8.935,-8.765,-8.603,-8.443,-8.287,-8.143,-8.026,-7.942,-7.887,-7.839,
--7.779,-7.697,-7.609,-7.545,-7.529,-7.561,-7.612,-7.637,-7.608,-7.522,-7.409,-7.302,-7.218,-7.147,-7.067,-6.961,
--6.833,-6.703,-6.588,-6.484,-6.369,-6.219,-6.027,-5.808,-5.588,-5.383,-5.193,-5.003,-4.804,-4.601,-4.409,-4.240,
--4.087,-3.935,-3.763,-3.570,-3.368,-3.168,-2.972,-2.764,-2.527,-2.259,-1.981,-1.725,-1.509,-1.327,-1.151,-.953,
--.721,-.469,-.217,.021,.248,.475,.711,.950,1.180,1.390,1.583,1.768,1.956,2.155,2.372,2.616,
-2.896,3.215,3.557,3.892,4.194,4.455,4.684,4.898,5.094,5.249,5.331,5.325,5.245,5.118,4.961,4.780,
-4.603,4.528,4.736,5.429,6.709,8.473,10.406,12.103,13.268,13.859,14.091,14.281,14.631,15.104,15.464,15.452,
-14.975,14.176,13.340,12.713,12.360,12.154,11.900,11.481,10.935,10.411,10.052,9.900,9.883,9.881,9.819,9.705,
-9.608,9.591,9.668,9.796,9.913,9.979,9.986,9.957,9.923,9.916,9.975,10.137,10.427,10.835,11.307,11.764,
-12.140,12.414,12.620,12.817,13.049,13.311,13.553,13.706,13.721,13.589,13.346,13.051,12.766,12.536,12.390,12.333,
-12.357,12.435,12.531,12.605,12.620,12.558,12.427,12.260,12.110,12.028,12.041,12.137,12.265,12.358,12.361,12.263,
-12.090,11.893,11.708,11.542,11.372,11.173,10.940,10.702,10.501,10.364,10.280,10.208,10.093,9.905,9.644,9.340,
-9.022,8.706,8.390,8.061,7.715,7.366,7.036,6.748,6.511,6.319,6.162,6.036,5.947,5.910,5.939,6.040,
-6.198,6.384,6.557,6.672,6.695,6.614,6.439,6.208,5.971,5.773,5.643,5.585,5.579,5.600,5.629,5.663,
-5.717,5.811,5.962,6.176,6.455,6.800,7.205,7.651,8.086,8.432,8.601,8.532,8.226,7.759,7.250,6.818,
-6.530,6.386,6.340,6.341,6.362,6.409,6.491,6.602,6.712,6.791,6.842,6.906,7.041,7.279,7.594,7.914,
-8.161,8.298,8.342,8.338,8.320,8.285,8.216,8.130,8.108,8.276,8.735,9.481,10.371,11.175,11.683,11.811,
-11.638,11.357,11.166,11.177,11.379,11.679,11.974,12.204,12.367,12.489,12.592,12.681,12.757,12.833,12.931,13.066,
-13.225,13.369,13.466,13.518,13.581,13.733,14.029,14.459,14.954,15.425,15.815,16.127,16.407,16.698,17.002,17.272,
-17.451,17.509,17.477,17.426,17.431,17.523,17.684,17.862,18.014,18.130,18.237,18.372,18.560,18.796,19.053,19.300,
-19.519,19.711,19.888,20.065,20.243,20.419,20.582,20.732,20.878,21.037,21.225,21.444,21.682,21.914,22.122,22.298,
-22.454,22.606,22.766,22.932,23.097,23.257,23.424,23.617,23.845,24.094,24.324,24.494,24.585,24.620,24.652,24.730,
-24.873,25.056,25.232,25.367,25.454,25.520,25.593,25.685,25.784,25.873,25.947,26.021,26.117,26.245,26.392,26.534,
-26.655,26.761,26.870,26.994,27.124,27.237,27.318,27.380,27.459,27.584,27.750,27.908,27.999,27.986,27.883,27.744,
-27.624,27.545,27.489,27.423,27.332,27.233,27.157,27.119,27.100,27.063,26.987,26.882,26.788,26.734,26.714,26.687,
-26.617,26.508,26.406,26.371,26.423,26.515,26.476,26.543,26.527,26.404,26.204,25.990,25.809,25.667,25.545,25.433,
-25.349,25.335,25.418,25.572,25.720,25.774,25.685,25.477,25.235,25.054,24.992,25.047,25.169,25.297,25.392,25.446,
-25.476,25.504,25.543,25.593,25.645,25.689,25.722,25.754,25.803,25.892,26.027,26.191,26.352,26.479,26.567,26.652,
-26.787,27.011,27.319,27.671,28.020,28.356,28.720,29.173,29.737,30.359,30.925,31.318,31.493,31.513,31.511,31.613,
-31.863,32.209,32.543,32.774,32.884,32.916,32.937,32.986,33.059,33.132,33.194,33.269,33.393,33.580,33.799,33.987,
-34.092,34.105,34.074,34.069,34.136,34.267,34.412,34.513,34.549,34.549,34.576,34.681,34.877,35.121,35.350,35.508,
-35.582,35.600,35.608,35.645,35.720,35.817,35.914,36.006,36.114,36.269,36.486,36.744,36.992,37.171,37.254,37.275,
-37.307,37.428,37.655,37.916,38.069,37.970,37.557,36.909,36.232,35.788,35.778,36.252,37.085,38.035,38.845,39.352,
-39.533,39.482,39.341,39.217,39.149,39.115,39.080,39.034,39.002,39.020,39.108,39.251,39.419,39.592,39.779,40.010,
-40.307,40.658,41.020,41.346,41.617,41.862,42.136,42.485,42.909,43.362,43.775,44.099,44.332,44.514,44.702,44.937,
-45.222,45.529,45.821,46.071,46.274,46.438,46.573,46.680,46.754,46.796,46.819,46.853,46.925,47.051,47.215,47.377,
-47.490,47.526,47.494,47.433,47.393,47.398,47.436,47.465,47.439,47.345,47.201,47.055,46.943,46.877,46.833,46.775,
-46.675,46.526,46.340,46.131,45.912,45.693,45.491,45.325,45.214,45.152,45.111,45.048,44.930,44.755,44.554,44.367,
-44.224,44.124,44.050,43.991,43.951,43.952,44.003,44.081,44.125,44.071,43.889,43.610,43.322,43.122,43.062,43.120,
-43.199,43.182,42.989,42.612,42.124,41.634,41.242,40.993,40.873,40.821,40.768,40.664,40.492,40.260,39.991,39.709,
-39.429,39.162,38.912,38.677,38.454,38.244,38.048,37.876,37.738,37.642,37.586,37.554,37.528,37.490,37.431,37.348,
-37.245,37.124,36.990,36.854,36.734,36.645,36.600,36.592,36.607,36.622,36.621,36.597,36.549,36.477,36.382,36.273,
-36.168,36.096,36.077,36.098,36.106,36.023,35.785,35.390,34.928,34.558,34.459,34.746,35.420,36.358,37.356,38.202,
-38.751,38.961,38.888,38.644,38.346,38.080,37.893,37.799,37.793,37.853,37.937,37.979,37.908,37.680,37.312,36.886,
-36.520,36.305,36.245,36.243,36.136,35.785,35.141,34.279,33.357,32.536,31.911,31.478,31.163,30.876,30.563,30.220,
-29.873,29.543,29.233,28.925,28.602,28.262,27.919,27.590,27.275,26.958,26.615,26.232,25.816,25.393,24.990,24.624,
-24.291,23.971,23.638,23.272,22.869,22.441,22.003,21.574,21.167,20.785,20.430,20.096,19.778,19.466,19.145,18.803,
-18.431,18.031,17.618,17.211,16.826,16.462,16.105,15.741,15.364,14.990,14.643,14.347,14.099,13.867,13.605,13.280,
-12.887,12.460,12.048,11.688,11.385,11.108,10.816,10.483,10.109,9.718,9.337,8.973,8.612,8.233,7.828,7.411,
-7.007,6.637,6.297,5.961,5.598,5.198,4.778,4.370,3.998,3.662,3.337,2.992,2.614,2.215,1.821,1.452,
-1.105,.765,.414,.053,-.303,-.635,-.938,-1.229,-1.530,-1.859,-2.212,-2.573,-2.928,-3.275,-3.622,-3.974,
--4.330,-4.677,-5.007,-5.324,-5.641,-5.971,-6.309,-6.637,-6.941,-7.221,-7.502,-7.816,-8.177,-8.570,-8.960,-9.314,
--9.629,-9.927,-10.236,-10.565,-10.898,-11.205,-11.470,-11.708,-11.951,-12.227,-12.535,-12.847,-13.134,-13.390,-13.637,-13.908,
--14.216,-14.545,-14.856,-15.122,-15.349,-15.573,-15.836,-16.149,-16.490,-16.815,-17.096,-17.334,-17.563,-17.816,-18.106,-18.414,
--18.708,-18.961,-19.171,-19.350,-19.511,-19.657,-19.782,-19.882,-19.966,-20.054,-20.163,-20.300,-20.453,-20.606,-20.748,-20.883,
--21.019,-21.158,-21.292,-21.409,-21.505,-21.589,-21.684,-21.809,-21.965,-22.139,-22.308,-22.458,-22.587,-22.706,-22.822,-22.931,
--23.027,-23.107,-23.179,-23.262,-23.362,-23.470,-23.561,-23.612,-23.624,-23.625,-23.655,-23.736,-23.850,-23.948,-23.975,-23.905,
--23.754,-23.570,-23.399,-23.265,-23.160,-23.060,-22.954,-22.843,-22.745,-22.665,-22.595,-22.516,-22.412,-22.291,-22.173,-22.080,
--22.015,-21.964,-21.903,-21.822,-21.724,-21.629,-21.550,-21.484,-21.417,-21.337,-21.243,-21.148,-21.065,-21.001,-20.948,-20.891,
--20.821,-20.738,-20.647,-20.553,-20.459,-20.367,-20.283,-20.213,-20.154,-20.090,-19.998,-19.867,-19.710,-19.564,-19.467,-19.426,
--19.409,-19.359,-19.238,-19.060,-18.892,-18.811,-18.853,-18.981,-19.107,-19.142,-19.053,-18.879,-18.696,-18.564,-18.488,-18.428,
--18.338,-18.207,-18.073,-17.986,-17.969,-17.991,-17.989,-17.913,-17.769,-17.622,-17.561,-17.645,-17.872,-18.176,-18.469,-18.679,
--18.778,-18.780,-18.720,-18.631,-18.532,-18.430,-18.320,-18.204,-18.087,-17.990,-17.943,-17.976,-18.103,-18.304,-18.525,-18.697,
--18.769,-18.729,-18.618,-18.498,-18.423,-18.406,-18.419,-18.417,-18.374,-18.302,-18.242,-18.237,-18.299,-18.395,-18.469,-18.470,
--18.387,-18.248,-18.111,-18.025,-18.004,-18.023,-18.036,-18.001,-17.911,-17.795,-17.698,-17.649,-17.640,-17.623,-17.540,-17.361,
--17.102,-16.813,-16.543,-16.301,-16.043,-15.704,-15.247,-14.702,-14.166,-13.754,-13.544,-13.538,-13.678,-13.891,-14.131,-14.396,
--14.704,-15.054,-15.411,-15.726,-15.970,-16.155,-16.313,-16.450,-16.511,-16.393,-16.006,-15.355,-14.566,-13.852,-13.410,-13.320,
--13.511,-13.805,-14.018,-14.055,-13.940,-13.778,-13.674,-13.679,-13.770,-13.889,-13.991,-14.068,-14.144,-14.246,-14.380,-14.527,
--14.657,-14.751,-14.810,-14.854,-14.907,-14.989,-15.109,-15.265,-15.448,-15.647,-15.847,-16.040,-16.219,-16.386,-16.551,-16.737,
--16.983,-17.338,-17.842,-18.502,-19.273,-20.058,-20.742,-21.239,-21.538,-21.699,-21.820,-21.976,-22.181,-22.391,-22.547,-22.621,
--22.636,-22.648,-22.700,-22.792,-22.885,-22.937,-22.941,-22.926,-22.941,-23.011,-23.125,-23.245,-23.339,-23.399,-23.445,-23.498,
--23.560,-23.618,-23.659,-23.690,-23.741,-23.839,-23.985,-24.149,-24.286,-24.365,-24.387,-24.377,-24.361,-24.340,-24.292,-24.195,
--24.042,-23.856,-23.669,-23.501,-23.356,-23.220,-23.085,-22.957,-22.853,-22.780,-22.730,-22.676,-22.595,-22.484,-22.363,-22.265,
--22.216,-22.224,-22.275,-22.353,-22.440,-22.530,-22.616,-22.686,-22.728,-22.728,-22.679,-22.588,-22.470,-22.350,-22.252,-22.195,
--22.183,-22.207,-22.239,-22.248,-22.214,-22.139,-22.046,-21.964,-21.911,-21.880,-21.848,-21.789,-21.692,-21.563,-21.422,-21.285,
--21.159,-21.039,-20.922,-20.806,-20.693,-20.586,-20.485,-20.393,-20.325,-20.306,-20.364,-20.513,-20.742,-21.012,-21.274,-21.482,
--21.607,-21.634,-21.563,-21.402,-21.171,-20.903,-20.639,-20.418,-20.259,-20.155,-20.082,-20.018,-19.955,-19.906,-19.888,-19.903,
--19.931,-19.941,-19.906,-19.823,-19.710,-19.592,-19.483,-19.380,-19.267,-19.135,-18.989,-18.844,-18.718,-18.613,-18.516,-18.414,
--18.300,-18.185,-18.093,-18.045,-18.047,-18.084,-18.129,-18.154,-18.140,-18.085,-17.996,-17.885,-17.764,-17.645,-17.545,-17.483,
--17.481,-17.551,-17.692,-17.886,-18.095,-18.281,-18.414,-18.478,-18.476,-18.419,-18.316,-18.172,-17.993,-17.790,-17.590,-17.431,
--17.355,-17.393,-17.552,-17.814,-18.138,-18.473,-18.773,-19.000,-19.136,-19.178,-19.138,-19.037,-18.900,-18.751,-18.615,-18.512,
--18.457,-18.453,-18.490,-18.545,-18.589,-18.601,-18.576,-18.526,-18.474,-18.438,-18.421,-18.415,-18.403,-18.375,-18.333,-18.286,
--18.241,-18.201,-18.159,-18.106,-18.037,-17.950,-17.846,-17.724,-17.577,-17.401,-17.198,-16.978,-16.756,-16.548,-16.361,-16.198,
--16.053,-15.918,-15.782,-15.636,-15.471,-15.287,-15.087,-14.885,-14.692,-14.515,-14.354,-14.202,-14.050,-13.897,-13.744,-13.593,
--13.443,-13.288,-13.124,-12.956,-12.792,-12.647,-12.524,-12.418,-12.315,-12.200,-12.066,-11.916,-11.760,-11.606,-11.458,-11.318,
--11.187,-11.069,-10.970,-10.887,-10.815,-10.745,-10.673,-10.602,-10.545,-10.509,-10.494,-10.489,-10.477,-10.452,-10.418,-10.388,
--10.377,-10.390,-10.420,-10.453,-10.475,-10.483,-10.484,-10.488,-10.507,-10.544,-10.596,-10.658,-10.718,-10.765,-10.792,-10.795,
--10.780,-10.763,-10.760,-10.782,-10.829,-10.892,-10.954,-11.009,-11.055,-11.102,-11.156,-11.213,-11.260,-11.277,-11.255,-11.199,
--11.131,-11.069,-11.025,-10.992,-10.955,-10.907,-10.855,-10.819,-10.820,-10.866,-10.941,-11.013,-11.057,-11.065,-11.050,-11.038,
--11.046,-11.074,-11.101,-11.103,-11.061,-10.971,-10.840,-10.682,-10.510,-10.338,-10.182,-10.059,-9.984,-9.961,-9.978,-10.009,
--10.023,-9.994,-9.914,-9.786,-9.628,-9.457,-9.287,-9.127,-8.978,-8.836,-8.698,-8.562,-8.431,-8.314,-8.213,-8.126,
--8.044,-7.957,-7.866,-7.785,-7.736,-7.732,-7.764,-7.801,-7.806,-7.754,-7.652,-7.530,-7.423,-7.347,-7.294,-7.238,
--7.159,-7.052,-6.927,-6.796,-6.663,-6.517,-6.349,-6.161,-5.965,-5.776,-5.598,-5.421,-5.233,-5.033,-4.833,-4.656,
--4.513,-4.392,-4.265,-4.105,-3.904,-3.678,-3.450,-3.231,-3.015,-2.784,-2.528,-2.255,-1.990,-1.753,-1.548,-1.355,
--1.149,-.914,-.654,-.389,-.136,.099,.322,.546,.776,1.010,1.239,1.456,1.655,1.839,2.017,2.207,
-2.428,2.697,3.015,3.365,3.718,4.046,4.338,4.597,4.829,5.031,5.187,5.279,5.305,5.278,5.209,5.092,
-4.913,4.690,4.520,4.590,5.114,6.222,7.854,9.749,11.537,12.911,13.760,14.195,14.438,14.664,14.886,14.973,
-14.771,14.234,13.483,12.734,12.166,11.822,11.601,11.349,10.975,10.503,10.042,9.702,9.518,9.446,9.407,9.359,
-9.316,9.327,9.426,9.600,9.791,9.939,10.008,10.008,9.972,9.941,9.950,10.031,10.211,10.508,10.913,11.382,
-11.843,12.228,12.506,12.697,12.856,13.037,13.263,13.511,13.731,13.870,13.906,13.847,13.727,13.581,13.433,13.289,
-13.146,12.999,12.847,12.691,12.532,12.366,12.188,12.001,11.825,11.693,11.639,11.678,11.790,11.920,12.009,12.019,
-11.952,11.849,11.757,11.699,11.657,11.586,11.449,11.246,11.015,10.808,10.653,10.533,10.398,10.196,9.909,9.564,
-9.210,8.888,8.603,8.327,8.023,7.679,7.315,6.979,6.713,6.532,6.415,6.326,6.240,6.155,6.098,6.102,
-6.184,6.335,6.521,6.696,6.816,6.855,6.801,6.660,6.447,6.190,5.920,5.671,5.471,5.336,5.268,5.258,
-5.291,5.356,5.445,5.555,5.695,5.881,6.136,6.478,6.899,7.353,7.750,7.984,7.976,7.715,7.275,6.788,
-6.389,6.165,6.120,6.202,6.336,6.474,6.606,6.743,6.891,7.036,7.157,7.252,7.350,7.503,7.747,8.078,
-8.448,8.792,9.064,9.249,9.353,9.376,9.300,9.119,8.879,8.698,8.744,9.154,9.946,10.984,12.015,12.786,
-13.151,13.133,12.891,12.630,12.498,12.538,12.702,12.907,13.091,13.235,13.349,13.444,13.523,13.580,13.619,13.651,
-13.691,13.740,13.789,13.824,13.853,13.909,14.037,14.271,14.610,15.023,15.468,15.913,16.346,16.763,17.147,17.460,
-17.662,17.735,17.705,17.637,17.603,17.649,17.773,17.935,18.090,18.212,18.314,18.426,18.576,18.770,18.993,19.218,
-19.426,19.615,19.797,19.985,20.184,20.384,20.569,20.725,20.847,20.952,21.064,21.210,21.402,21.632,21.874,22.098,
-22.284,22.432,22.556,22.672,22.792,22.916,23.050,23.206,23.399,23.634,23.896,24.143,24.330,24.436,24.477,24.503,
-24.561,24.674,24.820,24.962,25.066,25.131,25.186,25.263,25.374,25.508,25.642,25.766,25.890,26.031,26.200,26.385,
-26.561,26.706,26.820,26.917,27.012,27.105,27.183,27.240,27.291,27.368,27.501,27.687,27.886,28.036,28.093,28.055,
-27.957,27.848,27.753,27.670,27.581,27.482,27.386,27.317,27.282,27.259,27.214,27.128,27.012,26.905,26.835,26.801,
-26.764,26.687,26.567,26.444,26.377,26.397,26.476,26.384,26.388,26.364,26.282,26.157,26.025,25.928,25.878,25.866,
-25.873,25.894,25.934,25.998,26.072,26.115,26.084,25.959,25.760,25.544,25.374,25.287,25.283,25.333,25.397,25.450,
-25.487,25.520,25.560,25.615,25.683,25.754,25.825,25.893,25.966,26.050,26.150,26.260,26.371,26.474,26.578,26.710,
-26.906,27.192,27.561,27.974,28.381,28.755,29.107,29.481,29.910,30.384,30.838,31.187,31.383,31.453,31.493,31.613,
-31.869,32.233,32.612,32.907,33.072,33.133,33.158,33.202,33.283,33.380,33.473,33.569,33.700,33.892,34.135,34.374,
-34.543,34.607,34.587,34.551,34.567,34.661,34.805,34.942,35.028,35.063,35.091,35.167,35.320,35.531,35.748,35.914,
-36.001,36.017,35.996,35.976,35.981,36.015,36.072,36.152,36.265,36.422,36.621,36.835,37.017,37.123,37.148,37.135,
-37.167,37.322,37.618,37.976,38.240,38.242,37.886,37.224,36.450,35.837,35.621,35.904,36.613,37.534,38.414,39.056,
-39.384,39.438,39.325,39.156,39.001,38.884,38.805,38.760,38.757,38.805,38.902,39.033,39.180,39.338,39.518,39.746,
-40.038,40.383,40.750,41.099,41.410,41.694,41.987,42.325,42.721,43.152,43.573,43.942,44.238,44.472,44.679,44.896,
-45.143,45.421,45.708,45.977,46.213,46.417,46.610,46.819,47.063,47.334,47.602,47.819,47.951,47.987,47.951,47.880,
-47.803,47.729,47.645,47.537,47.409,47.282,47.190,47.151,47.157,47.182,47.195,47.185,47.163,47.151,47.158,47.174,
-47.167,47.100,46.953,46.725,46.439,46.131,45.840,45.599,45.427,45.323,45.260,45.195,45.087,44.920,44.709,44.495,
-44.314,44.183,44.086,43.993,43.889,43.788,43.726,43.728,43.785,43.844,43.838,43.727,43.524,43.294,43.114,43.023,
-43.000,42.972,42.860,42.624,42.287,41.916,41.587,41.343,41.181,41.061,40.939,40.786,40.597,40.381,40.149,39.900,
-39.634,39.353,39.069,38.799,38.555,38.337,38.134,37.934,37.734,37.543,37.380,37.261,37.191,37.163,37.158,37.151,
-37.117,37.040,36.915,36.760,36.606,36.489,36.428,36.418,36.425,36.410,36.348,36.243,36.125,36.025,35.963,35.931,
-35.905,35.868,35.815,35.752,35.684,35.597,35.466,35.272,35.024,34.774,34.596,34.560,34.698,34.999,35.418,35.899,
-36.397,36.879,37.318,37.680,37.924,38.019,37.966,37.810,37.633,37.526,37.546,37.686,37.874,38.000,37.966,37.737,
-37.362,36.953,36.630,36.460,36.420,36.402,36.266,35.906,35.295,34.492,33.611,32.761,32.014,31.387,30.860,30.404,
-30.000,29.642,29.329,29.053,28.803,28.562,28.319,28.067,27.799,27.506,27.172,26.785,26.345,25.870,25.392,24.944,
-24.545,24.197,23.879,23.565,23.229,22.861,22.464,22.053,21.642,21.242,20.853,20.477,20.112,19.763,19.428,19.102,
-18.771,18.417,18.030,17.617,17.196,16.790,16.413,16.064,15.732,15.406,15.088,14.792,14.531,14.297,14.062,13.784,
-13.433,13.011,12.556,12.123,11.752,11.443,11.165,10.870,10.531,10.151,9.762,9.392,9.049,8.712,8.353,7.955,
-7.533,7.119,6.738,6.392,6.055,5.695,5.301,4.889,4.492,4.135,3.815,3.502,3.162,2.780,2.372,1.971,
-1.605,1.273,.957,.630,.283,-.073,-.418,-.741,-1.050,-1.367,-1.706,-2.068,-2.437,-2.797,-3.139,-3.468,
--3.795,-4.125,-4.457,-4.788,-5.115,-5.443,-5.772,-6.097,-6.406,-6.693,-6.966,-7.251,-7.572,-7.936,-8.327,-8.712,
--9.066,-9.386,-9.692,-10.008,-10.338,-10.666,-10.968,-11.233,-11.475,-11.725,-12.006,-12.315,-12.629,-12.922,-13.185,-13.439,
--13.709,-14.006,-14.316,-14.612,-14.873,-15.111,-15.359,-15.650,-15.988,-16.348,-16.686,-16.974,-17.216,-17.444,-17.693,-17.975,
--18.273,-18.555,-18.797,-18.994,-19.159,-19.311,-19.455,-19.589,-19.710,-19.820,-19.934,-20.063,-20.211,-20.372,-20.531,-20.682,
--20.823,-20.959,-21.090,-21.213,-21.320,-21.414,-21.505,-21.611,-21.739,-21.889,-22.045,-22.193,-22.328,-22.453,-22.574,-22.690,
--22.797,-22.889,-22.973,-23.064,-23.179,-23.318,-23.460,-23.573,-23.636,-23.658,-23.674,-23.723,-23.817,-23.926,-23.998,-23.986,
--23.879,-23.710,-23.531,-23.384,-23.275,-23.186,-23.088,-22.973,-22.855,-22.754,-22.682,-22.627,-22.569,-22.492,-22.396,-22.296,
--22.208,-22.132,-22.058,-21.977,-21.889,-21.808,-21.745,-21.700,-21.658,-21.599,-21.515,-21.418,-21.327,-21.256,-21.202,-21.148,
--21.078,-20.990,-20.896,-20.810,-20.737,-20.668,-20.593,-20.511,-20.433,-20.368,-20.310,-20.237,-20.126,-19.981,-19.833,-19.726,
--19.681,-19.673,-19.640,-19.527,-19.330,-19.110,-18.960,-18.943,-19.049,-19.198,-19.287,-19.253,-19.108,-18.920,-18.760,-18.656,
--18.580,-18.488,-18.359,-18.218,-18.117,-18.088,-18.114,-18.137,-18.097,-17.980,-17.838,-17.756,-17.806,-18.004,-18.299,-18.607,
--18.851,-18.994,-19.043,-19.027,-18.977,-18.905,-18.812,-18.695,-18.560,-18.425,-18.319,-18.271,-18.305,-18.420,-18.592,-18.774,
--18.911,-18.965,-18.933,-18.847,-18.759,-18.706,-18.691,-18.685,-18.649,-18.570,-18.473,-18.413,-18.437,-18.553,-18.717,-18.855,
--18.907,-18.856,-18.740,-18.617,-18.534,-18.493,-18.456,-18.375,-18.233,-18.061,-17.918,-17.858,-17.884,-17.951,-17.982,-17.923,
--17.768,-17.556,-17.333,-17.105,-16.825,-16.422,-15.864,-15.208,-14.599,-14.209,-14.149,-14.409,-14.862,-15.332,-15.682,-15.871,
--15.949,-16.000,-16.087,-16.222,-16.393,-16.591,-16.830,-17.114,-17.399,-17.572,-17.497,-17.091,-16.396,-15.585,-14.893,-14.502,
--14.454,-14.644,-14.886,-15.023,-15.002,-14.872,-14.731,-14.652,-14.648,-14.684,-14.720,-14.751,-14.802,-14.906,-15.066,-15.253,
--15.417,-15.522,-15.563,-15.566,-15.567,-15.600,-15.680,-15.812,-15.991,-16.212,-16.464,-16.729,-16.991,-17.237,-17.465,-17.691,
--17.945,-18.265,-18.688,-19.240,-19.912,-20.656,-21.383,-21.991,-22.413,-22.642,-22.743,-22.813,-22.928,-23.105,-23.300,-23.444,
--23.499,-23.480,-23.448,-23.460,-23.538,-23.653,-23.756,-23.812,-23.829,-23.843,-23.892,-23.988,-24.114,-24.240,-24.344,-24.425,
--24.490,-24.545,-24.589,-24.619,-24.642,-24.680,-24.751,-24.859,-24.984,-25.090,-25.151,-25.161,-25.137,-25.103,-25.066,-25.016,
--24.933,-24.806,-24.643,-24.467,-24.297,-24.145,-24.007,-23.876,-23.751,-23.641,-23.550,-23.477,-23.406,-23.321,-23.213,-23.089,
--22.973,-22.892,-22.864,-22.891,-22.960,-23.050,-23.142,-23.222,-23.282,-23.320,-23.330,-23.307,-23.244,-23.140,-23.009,-22.875,
--22.768,-22.709,-22.699,-22.715,-22.725,-22.706,-22.654,-22.588,-22.531,-22.495,-22.470,-22.433,-22.362,-22.249,-22.107,-21.956,
--21.812,-21.680,-21.553,-21.427,-21.306,-21.194,-21.092,-20.994,-20.889,-20.776,-20.671,-20.600,-20.596,-20.677,-20.843,-21.075,
--21.341,-21.602,-21.819,-21.957,-21.988,-21.904,-21.723,-21.479,-21.215,-20.962,-20.734,-20.530,-20.349,-20.204,-20.111,-20.084,
--20.114,-20.170,-20.207,-20.193,-20.125,-20.024,-19.918,-19.826,-19.745,-19.656,-19.547,-19.416,-19.280,-19.159,-19.061,-18.977,
--18.888,-18.782,-18.659,-18.539,-18.444,-18.390,-18.378,-18.391,-18.409,-18.413,-18.398,-18.364,-18.317,-18.260,-18.189,-18.106,
--18.012,-17.923,-17.860,-17.844,-17.890,-17.997,-18.149,-18.320,-18.481,-18.609,-18.689,-18.712,-18.671,-18.566,-18.400,-18.191,
--17.969,-17.776,-17.652,-17.626,-17.703,-17.872,-18.103,-18.363,-18.621,-18.854,-19.043,-19.177,-19.246,-19.249,-19.191,-19.089,
--18.968,-18.851,-18.757,-18.690,-18.642,-18.602,-18.562,-18.523,-18.495,-18.484,-18.493,-18.510,-18.520,-18.507,-18.469,-18.410,
--18.343,-18.276,-18.214,-18.153,-18.091,-18.025,-17.952,-17.870,-17.770,-17.642,-17.479,-17.281,-17.061,-16.835,-16.622,-16.436,
--16.282,-16.156,-16.045,-15.932,-15.799,-15.634,-15.437,-15.219,-14.998,-14.792,-14.608,-14.443,-14.289,-14.138,-13.989,-13.847,
--13.717,-13.595,-13.474,-13.344,-13.201,-13.050,-12.902,-12.765,-12.640,-12.522,-12.403,-12.277,-12.142,-12.000,-11.852,-11.699,
--11.543,-11.391,-11.252,-11.132,-11.030,-10.940,-10.855,-10.772,-10.697,-10.638,-10.599,-10.577,-10.559,-10.535,-10.504,-10.473,
--10.457,-10.465,-10.493,-10.531,-10.563,-10.580,-10.586,-10.586,-10.592,-10.608,-10.637,-10.680,-10.736,-10.800,-10.864,-10.918,
--10.951,-10.963,-10.963,-10.969,-10.993,-11.037,-11.091,-11.142,-11.183,-11.221,-11.268,-11.334,-11.412,-11.483,-11.523,-11.520,
--11.481,-11.428,-11.381,-11.348,-11.321,-11.285,-11.233,-11.174,-11.127,-11.107,-11.112,-11.125,-11.125,-11.104,-11.073,-11.057,
--11.077,-11.129,-11.190,-11.225,-11.207,-11.135,-11.024,-10.896,-10.764,-10.629,-10.483,-10.327,-10.173,-10.044,-9.957,-9.919,
--9.916,-9.924,-9.916,-9.877,-9.803,-9.699,-9.574,-9.440,-9.306,-9.178,-9.054,-8.932,-8.807,-8.678,-8.548,-8.424,
--8.312,-8.212,-8.122,-8.041,-7.977,-7.938,-7.929,-7.938,-7.940,-7.908,-7.828,-7.710,-7.584,-7.483,-7.420,-7.388,
--7.358,-7.304,-7.215,-7.095,-6.956,-6.809,-6.654,-6.491,-6.321,-6.150,-5.985,-5.821,-5.650,-5.463,-5.264,-5.072,
--4.909,-4.784,-4.684,-4.575,-4.428,-4.231,-3.994,-3.744,-3.501,-3.266,-3.028,-2.777,-2.514,-2.256,-2.017,-1.802,
--1.598,-1.384,-1.143,-.879,-.605,-.340,-.095,.135,.363,.597,.842,1.091,1.332,1.554,1.754,1.938,
-2.125,2.335,2.586,2.882,3.212,3.558,3.898,4.219,4.515,4.778,4.997,5.159,5.261,5.313,5.328,5.305,
-5.218,5.036,4.771,4.527,4.498,4.910,5.905,7.444,9.283,11.065,12.471,13.354,13.777,13.936,14.019,14.097,
-14.110,13.947,13.549,12.968,12.338,11.793,11.386,11.079,10.790,10.461,10.101,9.767,9.515,9.360,9.277,9.231,
-9.211,9.241,9.347,9.530,9.748,9.938,10.051,10.079,10.054,10.020,10.017,10.065,10.175,10.360,10.634,10.997,
-11.418,11.840,12.203,12.471,12.657,12.812,12.992,13.223,13.485,13.727,13.895,13.971,13.973,13.945,13.922,13.908,
-13.871,13.763,13.553,13.243,12.873,12.502,12.180,11.929,11.751,11.632,11.564,11.545,11.575,11.643,11.722,11.782,
-11.807,11.805,11.800,11.810,11.828,11.815,11.726,11.537,11.268,10.976,10.720,10.528,10.374,10.200,9.954,9.625,
-9.247,8.878,8.560,8.291,8.033,7.744,7.412,7.065,6.762,6.547,6.432,6.383,6.351,6.298,6.221,6.150,
-6.122,6.159,6.253,6.370,6.474,6.536,6.543,6.493,6.386,6.220,5.998,5.736,5.464,5.224,5.050,4.962,
-4.958,5.017,5.113,5.221,5.324,5.422,5.526,5.661,5.851,6.104,6.397,6.670,6.840,6.840,6.652,6.327,
-5.969,5.692,5.569,5.609,5.767,5.978,6.194,6.398,6.595,6.787,6.964,7.109,7.229,7.361,7.562,7.876,
-8.300,8.787,9.258,9.651,9.939,10.120,10.202,10.175,10.034,9.808,9.592,9.538,9.799,10.442,11.401,12.480,
-13.430,14.061,14.308,14.249,14.046,13.858,13.781,13.827,13.953,14.107,14.253,14.378,14.482,14.561,14.603,14.597,
-14.543,14.455,14.354,14.261,14.195,14.167,14.184,14.255,14.393,14.616,14.943,15.385,15.928,16.523,17.089,17.532,
-17.783,17.832,17.739,17.610,17.550,17.613,17.789,18.015,18.222,18.369,18.467,18.553,18.669,18.829,19.021,19.218,
-19.401,19.565,19.719,19.875,20.039,20.207,20.371,20.524,20.665,20.794,20.915,21.040,21.179,21.345,21.539,21.754,
-21.970,22.169,22.339,22.482,22.604,22.712,22.815,22.921,23.048,23.213,23.426,23.674,23.924,24.135,24.279,24.362,
-24.418,24.485,24.584,24.706,24.822,24.912,24.978,25.045,25.141,25.278,25.440,25.604,25.758,25.909,26.074,26.265,
-26.469,26.661,26.818,26.934,27.021,27.097,27.168,27.223,27.257,27.280,27.325,27.424,27.591,27.796,27.985,28.105,
-28.133,28.086,27.998,27.901,27.803,27.702,27.598,27.501,27.429,27.386,27.353,27.302,27.211,27.092,26.977,26.900,
-26.867,26.849,26.804,26.710,26.582,26.466,26.398,26.384,26.391,26.359,26.338,26.301,26.242,26.178,26.140,26.147,
-26.194,26.261,26.320,26.351,26.346,26.307,26.234,26.131,26.004,25.867,25.741,25.648,25.595,25.581,25.592,25.612,
-25.635,25.662,25.697,25.743,25.794,25.844,25.885,25.920,25.964,26.033,26.139,26.280,26.439,26.593,26.736,26.885,
-27.080,27.358,27.731,28.169,28.613,29.007,29.327,29.597,29.866,30.165,30.483,30.768,30.967,31.069,31.126,31.224,
-31.430,31.750,32.119,32.446,32.671,32.795,32.875,32.976,33.128,33.311,33.486,33.629,33.759,33.916,34.132,34.392,
-34.648,34.843,34.955,35.010,35.061,35.146,35.270,35.400,35.502,35.567,35.620,35.703,35.839,36.018,36.199,36.338,
-36.415,36.443,36.449,36.456,36.469,36.481,36.487,36.501,36.552,36.662,36.828,37.008,37.140,37.176,37.113,37.015,
-36.986,37.118,37.439,37.870,38.243,38.366,38.112,37.494,36.682,35.944,35.544,35.628,36.174,37.008,37.885,38.594,
-39.020,39.165,39.106,38.941,38.750,38.583,38.467,38.420,38.452,38.557,38.710,38.871,39.014,39.137,39.272,39.462,
-39.735,40.083,40.467,40.843,41.184,41.497,41.809,42.149,42.524,42.918,43.303,43.658,43.977,44.266,44.542,44.815,
-45.093,45.375,45.656,45.921,46.156,46.353,46.530,46.738,47.044,47.495,48.078,48.701,49.219,49.494,49.461,49.160,
-48.713,48.262,47.906,47.665,47.499,47.354,47.206,47.067,46.969,46.932,46.943,46.974,47.001,47.026,47.069,47.145,
-47.243,47.313,47.296,47.148,46.872,46.513,46.141,45.821,45.583,45.419,45.292,45.159,44.993,44.801,44.616,44.485,
-44.436,44.456,44.493,44.470,44.329,44.068,43.745,43.456,43.284,43.254,43.324,43.412,43.441,43.385,43.267,43.136,
-43.024,42.926,42.805,42.627,42.389,42.127,41.891,41.711,41.574,41.438,41.256,41.012,40.726,40.445,40.204,40.006,
-39.821,39.611,39.351,39.051,38.742,38.461,38.225,38.028,37.848,37.663,37.464,37.260,37.071,36.922,36.825,36.777,
-36.760,36.740,36.685,36.581,36.435,36.282,36.161,36.092,36.067,36.047,35.989,35.875,35.722,35.574,35.478,35.452,
-35.478,35.519,35.535,35.507,35.433,35.319,35.172,34.999,34.815,34.648,34.532,34.481,34.481,34.493,34.485,34.471,
-34.520,34.735,35.192,35.887,36.712,37.490,38.050,38.297,38.256,38.051,37.843,37.757,37.833,38.018,38.201,38.268,
-38.156,37.872,37.489,37.107,36.809,36.626,36.520,36.404,36.174,35.755,35.127,34.331,33.447,32.562,31.744,31.028,
-30.418,29.902,29.466,29.102,28.806,28.570,28.381,28.214,28.041,27.837,27.581,27.264,26.888,26.461,25.999,25.522,
-25.051,24.603,24.189,23.806,23.443,23.084,22.721,22.352,21.984,21.625,21.276,20.926,20.562,20.177,19.776,19.376,
-18.995,18.637,18.294,17.946,17.577,17.186,16.790,16.412,16.070,15.764,15.484,15.215,14.948,14.683,14.415,14.133,
-13.818,13.456,13.047,12.617,12.202,11.829,11.501,11.194,10.875,10.521,10.137,9.748,9.379,9.037,8.705,8.359,
-7.982,7.584,7.189,6.817,6.471,6.129,5.768,5.380,4.979,4.596,4.250,3.934,3.620,3.278,2.895,2.492,
-2.100,1.745,1.428,1.126,.812,.474,.119,-.234,-.571,-.896,-1.226,-1.573,-1.937,-2.302,-2.648,-2.968,
--3.269,-3.566,-3.875,-4.201,-4.542,-4.890,-5.240,-5.582,-5.908,-6.210,-6.488,-6.754,-7.032,-7.345,-7.698,-8.078,
--8.458,-8.814,-9.144,-9.460,-9.779,-10.109,-10.437,-10.743,-11.018,-11.273,-11.532,-11.816,-12.128,-12.451,-12.761,-13.049,
--13.320,-13.591,-13.871,-14.158,-14.438,-14.705,-14.967,-15.244,-15.554,-15.895,-16.243,-16.565,-16.843,-17.084,-17.313,-17.559,
--17.829,-18.113,-18.385,-18.622,-18.817,-18.978,-19.119,-19.252,-19.387,-19.527,-19.677,-19.839,-20.011,-20.187,-20.357,-20.516,
--20.665,-20.807,-20.945,-21.073,-21.184,-21.277,-21.357,-21.444,-21.553,-21.688,-21.840,-21.992,-22.131,-22.256,-22.375,-22.496,
--22.616,-22.727,-22.826,-22.921,-23.031,-23.170,-23.333,-23.492,-23.615,-23.685,-23.718,-23.750,-23.815,-23.917,-24.019,-24.069,
--24.029,-23.900,-23.725,-23.556,-23.427,-23.334,-23.253,-23.157,-23.040,-22.920,-22.817,-22.744,-22.691,-22.641,-22.583,-22.516,
--22.449,-22.384,-22.314,-22.230,-22.132,-22.035,-21.959,-21.916,-21.896,-21.871,-21.820,-21.739,-21.645,-21.565,-21.505,-21.452,
--21.382,-21.281,-21.161,-21.053,-20.980,-20.942,-20.911,-20.860,-20.778,-20.681,-20.594,-20.527,-20.463,-20.375,-20.251,-20.115,
--20.014,-19.978,-19.989,-19.984,-19.893,-19.693,-19.434,-19.215,-19.124,-19.176,-19.307,-19.410,-19.407,-19.289,-19.112,-18.950,
--18.841,-18.766,-18.679,-18.549,-18.395,-18.268,-18.209,-18.218,-18.243,-18.222,-18.131,-18.008,-17.933,-17.981,-18.178,-18.481,
--18.810,-19.088,-19.272,-19.363,-19.384,-19.359,-19.295,-19.194,-19.060,-18.913,-18.781,-18.693,-18.669,-18.709,-18.802,-18.926,
--19.055,-19.159,-19.216,-19.217,-19.168,-19.091,-19.005,-18.922,-18.837,-18.742,-18.641,-18.560,-18.537,-18.601,-18.749,-18.943,
--19.119,-19.226,-19.248,-19.209,-19.148,-19.091,-19.029,-18.933,-18.778,-18.574,-18.367,-18.217,-18.158,-18.175,-18.215,-18.224,
--18.185,-18.116,-18.047,-17.967,-17.806,-17.462,-16.877,-16.104,-15.322,-14.778,-14.664,-15.018,-15.695,-16.435,-16.989,-17.230,
--17.192,-17.013,-16.847,-16.781,-16.828,-16.964,-17.176,-17.467,-17.826,-18.176,-18.381,-18.294,-17.854,-17.141,-16.361,-15.747,
--15.449,-15.462,-15.650,-15.840,-15.914,-15.862,-15.746,-15.637,-15.558,-15.485,-15.387,-15.273,-15.201,-15.243,-15.427,-15.712,
--16.005,-16.210,-16.285,-16.256,-16.194,-16.168,-16.217,-16.340,-16.514,-16.719,-16.945,-17.193,-17.465,-17.761,-18.078,-18.423,
--18.802,-19.225,-19.699,-20.226,-20.802,-21.414,-22.034,-22.615,-23.096,-23.431,-23.615,-23.688,-23.725,-23.796,-23.925,-24.084,
--24.215,-24.274,-24.263,-24.229,-24.229,-24.296,-24.418,-24.551,-24.654,-24.716,-24.760,-24.819,-24.912,-25.033,-25.156,-25.259,
--25.335,-25.394,-25.446,-25.494,-25.532,-25.557,-25.578,-25.607,-25.658,-25.724,-25.789,-25.830,-25.836,-25.814,-25.781,-25.751,
--25.720,-25.672,-25.589,-25.464,-25.308,-25.139,-24.976,-24.826,-24.689,-24.560,-24.435,-24.319,-24.216,-24.125,-24.038,-23.946,
--23.846,-23.745,-23.664,-23.621,-23.625,-23.671,-23.737,-23.797,-23.836,-23.851,-23.853,-23.849,-23.840,-23.810,-23.743,-23.632,
--23.492,-23.354,-23.250,-23.197,-23.185,-23.188,-23.177,-23.141,-23.088,-23.033,-22.987,-22.944,-22.888,-22.807,-22.699,-22.576,
--22.451,-22.332,-22.213,-22.085,-21.947,-21.806,-21.677,-21.569,-21.478,-21.387,-21.281,-21.156,-21.026,-20.918,-20.865,-20.890,
--21.005,-21.202,-21.458,-21.734,-21.983,-22.162,-22.244,-22.225,-22.123,-21.963,-21.766,-21.539,-21.285,-21.012,-20.742,-20.511,
--20.350,-20.269,-20.252,-20.266,-20.279,-20.273,-20.247,-20.212,-20.171,-20.116,-20.035,-19.924,-19.791,-19.659,-19.549,-19.468,
--19.407,-19.344,-19.260,-19.152,-19.033,-18.924,-18.839,-18.784,-18.752,-18.730,-18.710,-18.691,-18.675,-18.665,-18.659,-18.645,
--18.608,-18.540,-18.441,-18.328,-18.225,-18.158,-18.139,-18.166,-18.221,-18.284,-18.340,-18.385,-18.422,-18.456,-18.486,-18.500,
--18.485,-18.432,-18.347,-18.243,-18.142,-18.064,-18.024,-18.031,-18.090,-18.206,-18.380,-18.602,-18.853,-19.099,-19.308,-19.451,
--19.516,-19.507,-19.440,-19.333,-19.204,-19.064,-18.922,-18.789,-18.678,-18.601,-18.562,-18.554,-18.563,-18.573,-18.571,-18.553,
--18.520,-18.474,-18.416,-18.343,-18.256,-18.158,-18.057,-17.958,-17.863,-17.767,-17.658,-17.527,-17.368,-17.182,-16.977,-16.766,
--16.563,-16.381,-16.227,-16.100,-15.988,-15.872,-15.734,-15.565,-15.366,-15.153,-14.942,-14.745,-14.565,-14.397,-14.237,-14.082,
--13.936,-13.803,-13.683,-13.570,-13.454,-13.330,-13.194,-13.051,-12.904,-12.760,-12.622,-12.491,-12.370,-12.254,-12.138,-12.013,
--11.875,-11.725,-11.570,-11.424,-11.294,-11.182,-11.084,-10.991,-10.904,-10.825,-10.761,-10.713,-10.675,-10.638,-10.598,-10.560,
--10.536,-10.536,-10.561,-10.599,-10.635,-10.657,-10.666,-10.671,-10.681,-10.702,-10.729,-10.757,-10.786,-10.820,-10.867,-10.928,
--10.994,-11.051,-11.092,-11.117,-11.139,-11.173,-11.224,-11.285,-11.345,-11.393,-11.435,-11.479,-11.535,-11.601,-11.661,-11.698,
--11.701,-11.677,-11.646,-11.622,-11.613,-11.609,-11.598,-11.575,-11.544,-11.515,-11.490,-11.461,-11.413,-11.338,-11.250,-11.177,
--11.149,-11.179,-11.247,-11.312,-11.332,-11.291,-11.199,-11.088,-10.988,-10.907,-10.831,-10.736,-10.606,-10.448,-10.284,-10.142,
--10.036,-9.967,-9.922,-9.884,-9.839,-9.780,-9.705,-9.617,-9.518,-9.415,-9.311,-9.206,-9.094,-8.970,-8.831,-8.683,
--8.539,-8.410,-8.304,-8.219,-8.150,-8.094,-8.052,-8.025,-8.006,-7.979,-7.925,-7.837,-7.723,-7.610,-7.525,-7.480,
--7.464,-7.450,-7.408,-7.327,-7.211,-7.076,-6.936,-6.796,-6.652,-6.500,-6.341,-6.177,-6.010,-5.839,-5.662,-5.483,
--5.312,-5.162,-5.038,-4.929,-4.811,-4.660,-4.465,-4.233,-3.981,-3.729,-3.481,-3.236,-2.987,-2.737,-2.496,-2.272,
--2.067,-1.866,-1.650,-1.408,-1.139,-.859,-.585,-.329,-.091,.140,.374,.618,.867,1.113,1.347,1.569,
-1.784,2.005,2.245,2.511,2.805,3.120,3.447,3.779,4.108,4.421,4.702,4.931,5.098,5.210,5.287,5.343,
-5.364,5.305,5.119,4.816,4.505,4.395,4.725,5.642,7.113,8.896,10.630,11.982,12.788,13.099,13.117,13.069,
-13.084,13.151,13.166,13.024,12.689,12.209,11.676,11.167,10.722,10.339,10.012,9.745,9.546,9.419,9.348,9.311,
-9.302,9.336,9.440,9.624,9.861,10.091,10.251,10.312,10.293,10.247,10.224,10.254,10.336,10.461,10.629,10.853,
-11.143,11.485,11.838,12.151,12.392,12.574,12.740,12.936,13.174,13.420,13.612,13.703,13.696,13.648,13.637,13.714,
-13.865,14.010,14.042,13.883,13.526,13.042,12.542,12.132,11.863,11.730,11.683,11.670,11.660,11.649,11.652,11.684,
-11.746,11.832,11.929,12.019,12.079,12.076,11.975,11.754,11.427,11.042,10.668,10.360,10.129,9.939,9.729,9.447,
-9.085,8.682,8.292,7.955,7.674,7.422,7.167,6.899,6.644,6.438,6.307,6.240,6.198,6.134,6.025,5.882,
-5.743,5.643,5.597,5.585,5.572,5.524,5.428,5.294,5.138,4.974,4.802,4.620,4.432,4.258,4.126,4.065,
-4.091,4.196,4.358,4.542,4.715,4.854,4.945,4.991,5.010,5.032,5.084,5.176,5.291,5.383,5.405,5.333,
-5.183,5.014,4.895,4.875,4.965,5.138,5.352,5.579,5.806,6.037,6.266,6.483,6.682,6.880,7.127,7.485,
-7.988,8.613,9.275,9.864,10.296,10.553,10.673,10.718,10.728,10.703,10.630,10.527,10.475,10.596,11.001,11.715,
-12.648,13.611,14.401,14.878,15.023,14.926,14.736,14.588,14.553,14.636,14.796,14.983,15.166,15.326,15.455,15.534,
-15.542,15.461,15.297,15.084,14.870,14.701,14.595,14.545,14.533,14.561,14.663,14.901,15.326,15.930,16.625,17.262,
-17.691,17.838,17.742,17.540,17.402,17.442,17.672,18.009,18.332,18.555,18.665,18.714,18.774,18.886,19.049,19.229,
-19.397,19.544,19.684,19.830,19.982,20.124,20.240,20.332,20.419,20.528,20.672,20.843,21.020,21.185,21.337,21.486,
-21.650,21.836,22.035,22.231,22.411,22.565,22.695,22.806,22.910,23.022,23.161,23.339,23.554,23.784,23.997,24.168,
-24.294,24.394,24.497,24.620,24.759,24.890,24.997,25.078,25.153,25.247,25.371,25.518,25.672,25.822,25.972,26.137,
-26.323,26.522,26.711,26.869,26.989,27.085,27.171,27.251,27.312,27.342,27.344,27.346,27.390,27.499,27.662,27.836,
-27.968,28.026,28.014,27.958,27.889,27.820,27.751,27.675,27.597,27.528,27.477,27.435,27.381,27.295,27.179,27.056,
-26.961,26.909,26.889,26.865,26.803,26.696,26.569,26.459,26.391,26.572,26.579,26.604,26.616,26.596,26.550,26.505,
-26.484,26.496,26.521,26.527,26.490,26.405,26.290,26.176,26.084,26.024,25.988,25.963,25.938,25.912,25.890,25.877,
-25.874,25.878,25.886,25.898,25.912,25.924,25.931,25.933,25.937,25.965,26.042,26.182,26.376,26.591,26.788,26.948,
-27.089,27.266,27.536,27.919,28.383,28.848,29.231,29.489,29.641,29.749,29.873,30.039,30.233,30.421,30.591,30.765,
-30.982,31.263,31.588,31.898,32.138,32.293,32.403,32.532,32.728,32.987,33.264,33.502,33.676,33.809,33.948,34.129,
-34.352,34.586,34.796,34.967,35.113,35.256,35.403,35.541,35.649,35.724,35.793,35.893,36.049,36.245,36.436,36.572,
-36.636,36.654,36.675,36.736,36.837,36.944,37.016,37.046,37.061,37.109,37.216,37.358,37.466,37.467,37.337,37.133,
-36.972,36.983,37.225,37.643,38.072,38.301,38.169,37.648,36.873,36.093,35.575,35.496,35.872,36.568,37.363,38.047,
-38.496,38.687,38.677,38.548,38.370,38.191,38.049,37.982,38.023,38.178,38.414,38.668,38.879,39.022,39.128,39.262,
-39.482,39.803,40.189,40.582,40.938,41.251,41.554,41.880,42.242,42.619,42.978,43.300,43.593,43.882,44.192,44.525,
-44.865,45.194,45.501,45.788,46.051,46.278,46.460,46.617,46.821,47.176,47.759,48.559,49.438,50.171,50.539,50.435,
-49.923,49.204,48.521,48.047,47.827,47.791,47.827,47.846,47.818,47.752,47.660,47.535,47.364,47.153,46.949,46.820,
-46.813,46.911,47.035,47.077,46.962,46.692,46.342,46.014,45.779,45.637,45.526,45.363,45.101,44.766,44.449,44.266,
-44.297,44.535,44.878,45.164,45.234,45.003,44.502,43.864,43.274,42.882,42.749,42.830,43.009,43.167,43.234,43.205,
-43.114,43.003,42.881,42.738,42.559,42.353,42.148,41.977,41.844,41.716,41.543,41.288,40.961,40.613,40.309,40.090,
-39.945,39.818,39.642,39.379,39.036,38.660,38.312,38.034,37.836,37.697,37.576,37.441,37.272,37.072,36.863,36.673,
-36.524,36.421,36.348,36.275,36.178,36.053,35.921,35.809,35.738,35.699,35.660,35.587,35.468,35.323,35.193,35.116,
-35.102,35.131,35.170,35.190,35.177,35.130,35.048,34.925,34.763,34.584,34.430,34.341,34.326,34.345,34.323,34.210,
-34.027,33.892,33.971,34.400,35.198,36.238,37.293,38.132,38.619,38.761,38.681,38.548,38.487,38.538,38.659,38.763,
-38.770,38.638,38.372,38.008,37.600,37.200,36.848,36.553,36.297,36.028,35.687,35.225,34.629,33.927,33.175,32.431,
-31.735,31.097,30.510,29.963,29.460,29.013,28.636,28.325,28.056,27.795,27.511,27.194,26.854,26.508,26.169,25.832,
-25.481,25.101,24.687,24.251,23.813,23.385,22.972,22.571,22.181,21.811,21.470,21.160,20.866,20.558,20.207,19.802,
-19.360,18.918,18.513,18.158,17.836,17.517,17.173,16.803,16.431,16.086,15.786,15.525,15.275,15.007,14.706,14.375,
-14.027,13.674,13.319,12.959,12.593,12.225,11.863,11.514,11.173,10.828,10.467,10.090,9.706,9.330,8.968,8.619,
-8.270,7.913,7.552,7.195,6.850,6.515,6.175,5.819,5.444,5.064,4.700,4.364,4.049,3.734,3.396,3.030,
-2.649,2.279,1.936,1.619,1.309,.986,.642,.287,-.064,-.401,-.728,-1.057,-1.399,-1.750,-2.097,-2.424,
--2.726,-3.015,-3.309,-3.621,-3.957,-4.309,-4.667,-5.022,-5.365,-5.693,-6.001,-6.291,-6.570,-6.856,-7.166,-7.507,
--7.871,-8.237,-8.588,-8.918,-9.235,-9.553,-9.879,-10.206,-10.520,-10.810,-11.080,-11.348,-11.633,-11.945,-12.274,-12.602,
--12.913,-13.201,-13.473,-13.739,-14.010,-14.287,-14.573,-14.868,-15.174,-15.493,-15.818,-16.134,-16.430,-16.699,-16.950,-17.195,
--17.449,-17.717,-17.992,-18.258,-18.499,-18.704,-18.871,-19.007,-19.125,-19.246,-19.387,-19.557,-19.752,-19.958,-20.156,-20.335,
--20.497,-20.652,-20.807,-20.957,-21.087,-21.184,-21.248,-21.299,-21.366,-21.474,-21.623,-21.793,-21.957,-22.096,-22.214,-22.326,
--22.445,-22.571,-22.696,-22.810,-22.918,-23.038,-23.181,-23.343,-23.500,-23.621,-23.694,-23.736,-23.782,-23.860,-23.968,-24.069,
--24.114,-24.071,-23.948,-23.785,-23.629,-23.509,-23.421,-23.343,-23.257,-23.157,-23.055,-22.965,-22.890,-22.821,-22.753,-22.685,
--22.628,-22.585,-22.549,-22.501,-22.424,-22.322,-22.215,-22.132,-22.085,-22.061,-22.031,-21.974,-21.894,-21.815,-21.759,-21.729,
--21.697,-21.631,-21.519,-21.381,-21.259,-21.187,-21.162,-21.147,-21.104,-21.017,-20.906,-20.807,-20.739,-20.687,-20.617,-20.510,
--20.383,-20.286,-20.256,-20.283,-20.303,-20.235,-20.040,-19.758,-19.490,-19.334,-19.330,-19.426,-19.519,-19.525,-19.421,-19.258,
--19.107,-19.009,-18.948,-18.872,-18.745,-18.576,-18.418,-18.324,-18.303,-18.316,-18.302,-18.229,-18.126,-18.066,-18.125,-18.331,
--18.651,-19.004,-19.310,-19.521,-19.627,-19.646,-19.597,-19.497,-19.358,-19.204,-19.068,-18.979,-18.951,-18.974,-19.025,-19.086,
--19.151,-19.227,-19.316,-19.404,-19.462,-19.456,-19.373,-19.229,-19.057,-18.899,-18.783,-18.721,-18.713,-18.756,-18.846,-18.974,
--19.123,-19.266,-19.379,-19.450,-19.481,-19.482,-19.459,-19.406,-19.312,-19.176,-19.016,-18.863,-18.741,-18.653,-18.580,-18.501,
--18.423,-18.379,-18.408,-18.496,-18.553,-18.430,-17.998,-17.246,-16.331,-15.542,-15.173,-15.376,-16.071,-16.977,-17.750,-18.148,
--18.134,-17.857,-17.548,-17.380,-17.401,-17.559,-17.774,-18.013,-18.287,-18.600,-18.887,-19.017,-18.856,-18.366,-17.655,-16.944,
--16.454,-16.292,-16.407,-16.634,-16.807,-16.844,-16.767,-16.650,-16.542,-16.426,-16.251,-15.998,-15.719,-15.532,-15.546,-15.786,
--16.174,-16.561,-16.816,-16.891,-16.836,-16.756,-16.746,-16.844,-17.032,-17.259,-17.488,-17.705,-17.920,-18.158,-18.444,-18.801,
--19.249,-19.792,-20.416,-21.078,-21.728,-22.322,-22.844,-23.297,-23.693,-24.030,-24.293,-24.466,-24.557,-24.602,-24.649,-24.733,
--24.852,-24.972,-25.054,-25.081,-25.077,-25.084,-25.134,-25.233,-25.356,-25.473,-25.570,-25.656,-25.751,-25.865,-25.989,-26.098,
--26.174,-26.220,-26.252,-26.290,-26.339,-26.386,-26.415,-26.418,-26.407,-26.402,-26.417,-26.450,-26.481,-26.493,-26.479,-26.450,
--26.422,-26.401,-26.379,-26.334,-26.248,-26.119,-25.963,-25.803,-25.658,-25.531,-25.412,-25.288,-25.156,-25.024,-24.904,-24.801,
--24.713,-24.631,-24.552,-24.480,-24.430,-24.412,-24.425,-24.454,-24.473,-24.467,-24.436,-24.398,-24.370,-24.358,-24.348,-24.313,
--24.233,-24.110,-23.969,-23.846,-23.764,-23.724,-23.706,-23.684,-23.642,-23.579,-23.508,-23.439,-23.372,-23.301,-23.218,-23.124,
--23.027,-22.932,-22.839,-22.739,-22.620,-22.479,-22.323,-22.171,-22.038,-21.929,-21.835,-21.742,-21.641,-21.530,-21.419,-21.326,
--21.270,-21.270,-21.333,-21.458,-21.629,-21.817,-21.995,-22.140,-22.246,-22.317,-22.356,-22.356,-22.296,-22.149,-21.906,-21.582,
--21.223,-20.887,-20.622,-20.455,-20.381,-20.375,-20.408,-20.451,-20.482,-20.484,-20.447,-20.369,-20.258,-20.136,-20.026,-19.941,
--19.882,-19.833,-19.775,-19.695,-19.595,-19.486,-19.384,-19.299,-19.231,-19.173,-19.117,-19.059,-19.003,-18.956,-18.922,-18.903,
--18.891,-18.874,-18.841,-18.786,-18.711,-18.626,-18.542,-18.464,-18.388,-18.307,-18.215,-18.115,-18.027,-17.977,-17.987,-18.066,
--18.199,-18.355,-18.497,-18.593,-18.625,-18.591,-18.505,-18.387,-18.265,-18.173,-18.142,-18.198,-18.350,-18.589,-18.882,-19.187,
--19.463,-19.679,-19.820,-19.885,-19.882,-19.819,-19.709,-19.561,-19.393,-19.221,-19.061,-18.922,-18.811,-18.725,-18.664,-18.624,
--18.603,-18.592,-18.580,-18.552,-18.496,-18.408,-18.293,-18.163,-18.031,-17.905,-17.786,-17.670,-17.551,-17.422,-17.274,-17.105,
--16.914,-16.709,-16.504,-16.316,-16.159,-16.031,-15.919,-15.804,-15.665,-15.495,-15.300,-15.096,-14.897,-14.712,-14.541,-14.378,
--14.217,-14.055,-13.895,-13.740,-13.594,-13.458,-13.328,-13.198,-13.064,-12.921,-12.772,-12.623,-12.485,-12.364,-12.260,-12.164,
--12.063,-11.947,-11.816,-11.678,-11.549,-11.436,-11.341,-11.256,-11.173,-11.089,-11.008,-10.933,-10.866,-10.802,-10.737,-10.674,
--10.625,-10.602,-10.612,-10.648,-10.690,-10.718,-10.724,-10.717,-10.715,-10.731,-10.768,-10.813,-10.851,-10.877,-10.897,-10.928,
--10.979,-11.047,-11.118,-11.179,-11.224,-11.261,-11.306,-11.366,-11.438,-11.511,-11.571,-11.615,-11.650,-11.686,-11.727,-11.766,
--11.793,-11.801,-11.793,-11.781,-11.774,-11.778,-11.789,-11.801,-11.811,-11.819,-11.822,-11.813,-11.777,-11.703,-11.593,-11.471,
--11.374,-11.330,-11.346,-11.396,-11.440,-11.441,-11.388,-11.300,-11.206,-11.132,-11.080,-11.032,-10.965,-10.865,-10.734,-10.588,
--10.445,-10.313,-10.195,-10.084,-9.979,-9.879,-9.787,-9.702,-9.622,-9.544,-9.465,-9.384,-9.294,-9.191,-9.065,-8.917,
--8.754,-8.593,-8.449,-8.333,-8.242,-8.172,-8.117,-8.075,-8.048,-8.031,-8.010,-7.966,-7.890,-7.789,-7.687,-7.609,
--7.570,-7.558,-7.547,-7.510,-7.432,-7.321,-7.194,-7.069,-6.946,-6.818,-6.673,-6.507,-6.327,-6.148,-5.979,-5.822,
--5.674,-5.529,-5.386,-5.243,-5.096,-4.938,-4.762,-4.563,-4.346,-4.118,-3.887,-3.656,-3.423,-3.190,-2.962,-2.746,
--2.548,-2.361,-2.172,-1.960,-1.715,-1.439,-1.150,-.868,-.607,-.368,-.140,.090,.329,.576,.823,1.064,
-1.303,1.548,1.812,2.098,2.403,2.716,3.030,3.342,3.656,3.974,4.287,4.572,4.806,4.978,5.100,5.198,
-5.288,5.349,5.322,5.145,4.819,4.448,4.246,4.461,5.255,6.614,8.317,10.012,11.366,12.187,12.497,12.479,
-12.368,12.331,12.404,12.515,12.544,12.407,12.084,11.618,11.082,10.550,10.080,9.712,9.465,9.333,9.288,9.290,
-9.312,9.353,9.441,9.604,9.848,10.135,10.399,10.581,10.661,10.666,10.651,10.662,10.718,10.808,10.914,11.037,
-11.195,11.408,11.674,11.961,12.224,12.434,12.599,12.754,12.934,13.136,13.317,13.412,13.388,13.274,13.160,13.150,
-13.303,13.586,13.879,14.035,13.944,13.596,13.081,12.547,12.126,11.885,11.805,11.814,11.832,11.816,11.774,11.744,
-11.771,11.871,12.027,12.193,12.310,12.326,12.206,11.940,11.550,11.088,10.620,10.204,9.872,9.609,9.370,9.095,
-8.747,8.329,7.875,7.436,7.051,6.732,6.472,6.259,6.092,5.978,5.922,5.905,5.884,5.808,5.638,5.372,
-5.048,4.723,4.443,4.224,4.041,3.855,3.626,3.345,3.030,2.716,2.442,2.230,2.091,2.025,2.031,2.109,
-2.262,2.483,2.759,3.063,3.364,3.626,3.821,3.932,3.959,3.929,3.882,3.863,3.903,4.001,4.124,4.228,
-4.280,4.276,4.249,4.242,4.291,4.404,4.565,4.750,4.942,5.140,5.350,5.574,5.811,6.066,6.370,6.781,
-7.356,8.110,8.984,9.852,10.563,11.012,11.191,11.186,11.128,11.118,11.182,11.273,11.329,11.337,11.366,11.540,
-11.962,12.644,13.481,14.288,14.882,15.162,15.152,14.972,14.776,14.680,14.728,14.894,15.124,15.371,15.607,15.821,
-15.993,16.089,16.075,15.940,15.713,15.456,15.233,15.079,14.985,14.922,14.882,14.903,15.064,15.428,15.989,16.643,
-17.219,17.565,17.631,17.501,17.351,17.357,17.595,18.010,18.456,18.787,18.938,18.947,18.915,18.935,19.037,19.190,
-19.342,19.465,19.573,19.705,19.878,20.075,20.249,20.364,20.419,20.456,20.528,20.666,20.858,21.065,21.245,21.387,
-21.509,21.641,21.804,21.997,22.199,22.388,22.553,22.698,22.831,22.962,23.099,23.248,23.415,23.600,23.793,23.979,
-24.140,24.277,24.401,24.535,24.693,24.867,25.034,25.170,25.266,25.335,25.404,25.494,25.610,25.744,25.885,26.030,
-26.182,26.345,26.515,26.676,26.814,26.928,27.027,27.122,27.213,27.288,27.330,27.338,27.334,27.355,27.427,27.546,
-27.680,27.785,27.834,27.831,27.806,27.786,27.782,27.780,27.761,27.714,27.649,27.586,27.534,27.484,27.417,27.319,
-27.197,27.074,26.977,26.915,26.872,26.824,26.755,26.673,26.605,26.572,26.838,26.883,26.936,26.968,26.960,26.914,
-26.853,26.802,26.767,26.735,26.678,26.579,26.449,26.322,26.234,26.203,26.214,26.234,26.228,26.187,26.127,26.074,
-26.047,26.046,26.052,26.046,26.022,25.993,25.975,25.977,26.000,26.040,26.101,26.196,26.338,26.520,26.709,26.861,
-26.955,27.013,27.105,27.312,27.674,28.156,28.658,29.060,29.288,29.351,29.329,29.330,29.434,29.660,29.976,30.333,
-30.695,31.046,31.376,31.670,31.905,32.070,32.186,32.297,32.456,32.687,32.969,33.251,33.482,33.645,33.759,33.868,
-34.002,34.167,34.348,34.529,34.705,34.882,35.064,35.239,35.385,35.492,35.575,35.675,35.828,36.037,36.265,36.453,
-36.560,36.596,36.613,36.678,36.821,37.021,37.223,37.375,37.471,37.545,37.645,37.781,37.907,37.945,37.837,37.598,
-37.329,37.173,37.237,37.520,37.896,38.159,38.120,37.707,37.005,36.235,35.660,35.471,35.715,36.284,36.973,37.580,
-37.978,38.147,38.143,38.047,37.917,37.782,37.658,37.577,37.586,37.723,37.986,38.318,38.633,38.864,39.005,39.112,
-39.268,39.528,39.885,40.283,40.653,40.966,41.242,41.529,41.860,42.227,42.590,42.912,43.188,43.454,43.754,44.108,
-44.494,44.871,45.209,45.508,45.791,46.071,46.335,46.553,46.720,46.898,47.198,47.723,48.479,49.335,50.052,50.395,
-50.255,49.712,48.999,48.390,48.077,48.102,48.372,48.744,49.092,49.343,49.458,49.401,49.138,48.659,48.021,47.355,
-46.819,46.521,46.461,46.531,46.580,46.504,46.301,46.066,45.912,45.889,45.940,45.932,45.737,45.319,44.775,44.299,
-44.090,44.253,44.737,45.348,45.824,45.941,45.610,44.907,44.038,43.252,42.739,42.561,42.652,42.863,43.046,43.114,
-43.064,42.942,42.804,42.677,42.552,42.410,42.243,42.066,41.900,41.752,41.601,41.412,41.164,40.868,40.566,40.310,
-40.122,39.984,39.837,39.620,39.301,38.895,38.457,38.058,37.753,37.563,37.473,37.439,37.405,37.326,37.175,36.958,
-36.704,36.455,36.243,36.077,35.942,35.817,35.690,35.568,35.471,35.413,35.389,35.370,35.325,35.242,35.134,35.034,
-34.965,34.935,34.926,34.919,34.905,34.891,34.882,34.869,34.826,34.729,34.580,34.420,34.305,34.268,34.287,34.293,
-34.220,34.067,33.923,33.943,34.264,34.927,35.837,36.808,37.645,38.238,38.592,38.804,38.985,39.189,39.400,39.548,
-39.566,39.429,39.157,38.796,38.383,37.940,37.475,37.003,36.548,36.133,35.766,35.431,35.089,34.708,34.273,33.794,
-33.289,32.766,32.214,31.618,30.975,30.309,29.663,29.080,28.573,28.118,27.673,27.205,26.716,26.243,25.836,25.523,
-25.289,25.084,24.850,24.553,24.193,23.795,23.387,22.979,22.566,22.141,21.713,21.311,20.961,20.667,20.403,20.119,
-19.773,19.357,18.904,18.466,18.082,17.754,17.452,17.134,16.781,16.407,16.049,15.739,15.478,15.235,14.967,14.645,
-14.272,13.879,13.501,13.156,12.838,12.523,12.190,11.832,11.459,11.087,10.726,10.374,10.022,9.662,9.294,8.924,
-8.561,8.208,7.866,7.531,7.201,6.871,6.539,6.199,5.850,5.495,5.143,4.804,4.482,4.170,3.858,3.534,
-3.196,2.852,2.512,2.182,1.857,1.527,1.181,.822,.460,.106,-.233,-.562,-.891,-1.224,-1.558,-1.882,
--2.191,-2.490,-2.792,-3.113,-3.458,-3.820,-4.182,-4.530,-4.860,-5.174,-5.482,-5.788,-6.095,-6.404,-6.717,-7.040,
--7.377,-7.725,-8.074,-8.413,-8.737,-9.049,-9.359,-9.676,-9.997,-10.313,-10.612,-10.894,-11.168,-11.451,-11.755,-12.078,
--12.407,-12.723,-13.013,-13.279,-13.534,-13.798,-14.085,-14.399,-14.732,-15.069,-15.396,-15.704,-15.995,-16.273,-16.546,-16.818,
--17.090,-17.362,-17.632,-17.899,-18.161,-18.409,-18.632,-18.818,-18.965,-19.085,-19.201,-19.338,-19.510,-19.708,-19.913,-20.104,
--20.277,-20.441,-20.612,-20.794,-20.971,-21.112,-21.196,-21.228,-21.244,-21.290,-21.399,-21.568,-21.764,-21.944,-22.086,-22.194,
--22.293,-22.406,-22.538,-22.676,-22.805,-22.923,-23.042,-23.175,-23.325,-23.472,-23.594,-23.679,-23.739,-23.802,-23.892,-24.005,
--24.108,-24.160,-24.132,-24.029,-23.883,-23.734,-23.608,-23.509,-23.427,-23.351,-23.280,-23.214,-23.151,-23.080,-22.993,-22.893,
--22.797,-22.728,-22.695,-22.684,-22.666,-22.614,-22.526,-22.423,-22.335,-22.277,-22.238,-22.192,-22.123,-22.039,-21.968,-21.933,
--21.932,-21.930,-21.889,-21.793,-21.664,-21.544,-21.467,-21.431,-21.405,-21.350,-21.256,-21.147,-21.058,-21.003,-20.962,-20.894,
--20.779,-20.636,-20.522,-20.482,-20.512,-20.544,-20.492,-20.308,-20.024,-19.739,-19.558,-19.527,-19.601,-19.682,-19.679,-19.569,
--19.399,-19.241,-19.141,-19.082,-19.012,-18.890,-18.721,-18.557,-18.455,-18.433,-18.454,-18.455,-18.397,-18.297,-18.227,-18.263,
--18.447,-18.754,-19.112,-19.440,-19.675,-19.795,-19.804,-19.720,-19.570,-19.389,-19.222,-19.110,-19.078,-19.114,-19.177,-19.226,
--19.242,-19.246,-19.280,-19.372,-19.508,-19.633,-19.676,-19.601,-19.426,-19.217,-19.055,-18.988,-19.016,-19.100,-19.190,-19.257,
--19.299,-19.336,-19.386,-19.452,-19.523,-19.581,-19.614,-19.619,-19.602,-19.571,-19.535,-19.499,-19.455,-19.385,-19.269,-19.097,
--18.896,-18.728,-18.666,-18.743,-18.903,-18.995,-18.831,-18.296,-17.440,-16.501,-15.817,-15.669,-16.127,-17.003,-17.934,-18.568,
--18.731,-18.497,-18.119,-17.863,-17.870,-18.107,-18.438,-18.735,-18.966,-19.171,-19.393,-19.591,-19.640,-19.411,-18.877,-18.162,
--17.498,-17.101,-17.053,-17.267,-17.552,-17.737,-17.755,-17.653,-17.522,-17.404,-17.270,-17.050,-16.720,-16.345,-16.065,-16.008,
--16.212,-16.595,-17.003,-17.297,-17.424,-17.431,-17.422,-17.483,-17.646,-17.883,-18.143,-18.384,-18.595,-18.791,-18.999,-19.259,
--19.614,-20.100,-20.732,-21.484,-22.279,-23.020,-23.627,-24.070,-24.381,-24.620,-24.838,-25.051,-25.239,-25.376,-25.460,-25.518,
--25.587,-25.687,-25.808,-25.915,-25.983,-26.008,-26.016,-26.039,-26.095,-26.181,-26.281,-26.385,-26.493,-26.614,-26.747,-26.875,
--26.975,-27.030,-27.046,-27.048,-27.064,-27.103,-27.153,-27.187,-27.190,-27.169,-27.147,-27.146,-27.171,-27.202,-27.214,-27.189,
--27.137,-27.078,-27.035,-27.010,-26.983,-26.931,-26.840,-26.718,-26.591,-26.480,-26.389,-26.304,-26.201,-26.068,-25.912,-25.754,
--25.615,-25.504,-25.417,-25.342,-25.271,-25.209,-25.165,-25.143,-25.134,-25.120,-25.088,-25.037,-24.982,-24.942,-24.925,-24.919,
--24.899,-24.842,-24.743,-24.618,-24.495,-24.399,-24.334,-24.286,-24.236,-24.171,-24.091,-24.005,-23.924,-23.849,-23.775,-23.695,
--23.608,-23.517,-23.427,-23.338,-23.243,-23.134,-23.004,-22.857,-22.701,-22.549,-22.411,-22.293,-22.194,-22.113,-22.045,-21.984,
--21.923,-21.861,-21.801,-21.753,-21.729,-21.734,-21.768,-21.826,-21.907,-22.015,-22.157,-22.331,-22.516,-22.665,-22.722,-22.644,
--22.420,-22.081,-21.689,-21.316,-21.017,-20.819,-20.718,-20.686,-20.690,-20.696,-20.683,-20.642,-20.579,-20.506,-20.439,-20.388,
--20.350,-20.314,-20.263,-20.186,-20.085,-19.972,-19.862,-19.767,-19.689,-19.622,-19.557,-19.488,-19.413,-19.337,-19.262,-19.194,
--19.136,-19.087,-19.047,-19.013,-18.981,-18.944,-18.898,-18.838,-18.759,-18.659,-18.534,-18.386,-18.226,-18.073,-17.954,-17.893,
--17.904,-17.984,-18.113,-18.263,-18.402,-18.506,-18.563,-18.570,-18.534,-18.472,-18.404,-18.359,-18.360,-18.426,-18.561,-18.755,
--18.987,-19.235,-19.476,-19.695,-19.882,-20.029,-20.129,-20.176,-20.164,-20.095,-19.973,-19.808,-19.611,-19.401,-19.195,-19.012,
--18.866,-18.764,-18.700,-18.655,-18.612,-18.553,-18.470,-18.364,-18.238,-18.099,-17.952,-17.801,-17.651,-17.507,-17.373,-17.246,
--17.117,-16.975,-16.817,-16.645,-16.473,-16.315,-16.176,-16.050,-15.922,-15.775,-15.600,-15.402,-15.197,-15.001,-14.824,-14.667,
--14.517,-14.363,-14.195,-14.012,-13.823,-13.640,-13.472,-13.324,-13.190,-13.059,-12.921,-12.772,-12.618,-12.472,-12.344,-12.237,
--12.142,-12.047,-11.942,-11.826,-11.711,-11.608,-11.526,-11.461,-11.401,-11.337,-11.262,-11.181,-11.097,-11.013,-10.928,-10.841,
--10.761,-10.701,-10.678,-10.696,-10.743,-10.793,-10.822,-10.820,-10.800,-10.783,-10.792,-10.829,-10.881,-10.929,-10.961,-10.982,
--11.007,-11.049,-11.111,-11.181,-11.245,-11.295,-11.338,-11.386,-11.447,-11.521,-11.593,-11.648,-11.681,-11.697,-11.710,-11.730,
--11.761,-11.797,-11.828,-11.849,-11.861,-11.869,-11.880,-11.896,-11.919,-11.949,-11.983,-12.011,-12.020,-11.993,-11.923,-11.817,
--11.700,-11.603,-11.549,-11.540,-11.558,-11.573,-11.560,-11.514,-11.444,-11.368,-11.297,-11.231,-11.164,-11.088,-11.003,-10.913,
--10.821,-10.723,-10.610,-10.473,-10.317,-10.152,-9.999,-9.869,-9.767,-9.685,-9.613,-9.544,-9.471,-9.390,-9.295,-9.176,
--9.031,-8.864,-8.691,-8.526,-8.383,-8.268,-8.181,-8.122,-8.095,-8.097,-8.116,-8.129,-8.111,-8.046,-7.941,-7.824,
--7.729,-7.676,-7.658,-7.649,-7.619,-7.550,-7.449,-7.332,-7.216,-7.103,-6.979,-6.830,-6.654,-6.462,-6.274,-6.110,
--5.971,-5.846,-5.719,-5.573,-5.405,-5.218,-5.019,-4.815,-4.611,-4.411,-4.216,-4.024,-3.831,-3.634,-3.434,-3.236,
--3.046,-2.868,-2.695,-2.509,-2.293,-2.036,-1.745,-1.443,-1.153,-.892,-.656,-.431,-.195,.061,.330,.600,
-.859,1.109,1.364,1.639,1.941,2.262,2.586,2.898,3.197,3.495,3.801,4.111,4.404,4.648,4.830,4.959,
-5.067,5.173,5.260,5.268,5.126,4.813,4.414,4.120,4.171,4.750,5.885,7.418,9.054,10.479,11.475,11.990,
-12.123,12.050,11.937,11.871,11.859,11.852,11.789,11.622,11.337,10.945,10.486,10.017,9.607,9.310,9.149,9.107,
-9.141,9.209,9.299,9.428,9.627,9.905,10.236,10.563,10.828,11.006,11.107,11.170,11.228,11.294,11.358,11.413,
-11.471,11.558,11.702,11.906,12.144,12.371,12.558,12.704,12.834,12.973,13.112,13.212,13.222,13.123,12.958,12.822,
-12.815,12.979,13.271,13.565,13.712,13.617,13.280,12.799,12.321,11.970,11.798,11.775,11.821,11.858,11.849,11.810,
-11.789,11.831,11.947,12.105,12.240,12.280,12.174,11.903,11.491,10.990,10.467,9.979,9.561,9.211,8.899,8.581,
-8.218,7.798,7.335,6.863,6.417,6.024,5.698,5.447,5.278,5.203,5.223,5.319,5.439,5.510,5.456,5.230,
-4.831,4.308,3.739,3.203,2.746,2.376,2.066,1.776,1.479,1.176,.891,.666,.534,.511,.588,.741,
-.943,1.171,1.418,1.682,1.958,2.231,2.475,2.660,2.766,2.803,2.806,2.833,2.930,3.116,3.364,3.617,
-3.810,3.903,3.903,3.853,3.815,3.830,3.911,4.036,4.175,4.307,4.433,4.564,4.715,4.901,5.145,5.490,
-5.997,6.719,7.659,8.741,9.811,10.692,11.255,11.482,11.471,11.388,11.378,11.497,11.696,11.876,11.963,11.977,
-12.026,12.247,12.720,13.405,14.152,14.770,15.117,15.167,15.012,14.803,14.675,14.694,14.847,15.076,15.329,15.579,
-15.819,16.036,16.196,16.253,16.181,15.996,15.759,15.543,15.396,15.315,15.271,15.240,15.246,15.349,15.607,16.015,
-16.489,16.896,17.130,17.182,17.160,17.224,17.493,17.968,18.527,18.993,19.241,19.259,19.147,19.044,19.044,19.148,
-19.291,19.403,19.465,19.521,19.634,19.835,20.095,20.341,20.515,20.602,20.645,20.705,20.820,20.986,21.163,21.318,
-21.443,21.562,21.704,21.882,22.078,22.264,22.420,22.547,22.668,22.804,22.964,23.141,23.322,23.498,23.666,23.826,
-23.974,24.108,24.229,24.350,24.487,24.654,24.841,25.024,25.174,25.276,25.341,25.398,25.478,25.595,25.743,25.903,
-26.058,26.201,26.336,26.464,26.583,26.689,26.779,26.859,26.935,27.011,27.081,27.135,27.175,27.214,27.273,27.365,
-27.482,27.596,27.675,27.708,27.711,27.718,27.757,27.826,27.895,27.924,27.895,27.817,27.725,27.650,27.601,27.559,
-27.495,27.393,27.263,27.132,27.024,26.951,26.901,26.864,26.834,26.821,26.838,27.043,27.053,27.069,27.077,27.068,
-27.043,27.014,26.992,26.971,26.930,26.849,26.727,26.589,26.479,26.428,26.434,26.458,26.449,26.379,26.260,26.142,
-26.074,26.076,26.123,26.167,26.171,26.135,26.095,26.098,26.164,26.276,26.394,26.485,26.547,26.602,26.671,26.753,
-26.822,26.855,26.864,26.909,27.072,27.399,27.860,28.352,28.743,28.944,28.963,28.900,28.893,29.047,29.386,29.857,
-30.365,30.824,31.192,31.468,31.673,31.831,31.965,32.094,32.239,32.418,32.632,32.861,33.076,33.256,33.398,33.523,
-33.652,33.799,33.957,34.114,34.262,34.411,34.573,34.753,34.939,35.108,35.247,35.367,35.497,35.664,35.868,36.077,
-36.248,36.356,36.418,36.483,36.598,36.782,37.008,37.231,37.417,37.569,37.719,37.890,38.067,38.191,38.194,38.052,
-37.814,37.599,37.526,37.646,37.894,38.109,38.105,37.774,37.148,36.402,35.782,35.496,35.623,36.085,36.695,37.241,
-37.586,37.700,37.652,37.542,37.441,37.370,37.317,37.274,37.267,37.348,37.553,37.872,38.235,38.554,38.774,38.908,
-39.025,39.209,39.498,39.865,40.244,40.576,40.852,41.109,41.400,41.744,42.115,42.462,42.757,43.018,43.298,43.645,
-44.060,44.495,44.885,45.201,45.465,45.732,46.036,46.362,46.652,46.862,47.014,47.201,47.529,48.035,48.635,49.145,
-49.377,49.251,48.843,48.357,48.019,47.973,48.237,48.731,49.336,49.953,50.504,50.908,51.057,50.848,50.238,49.306,
-48.249,47.306,46.656,46.331,46.227,46.182,46.089,45.954,45.876,45.955,46.192,46.457,46.550,46.312,45.732,44.974,
-44.314,44.008,44.171,44.716,45.395,45.901,46.002,45.629,44.895,44.033,43.293,42.844,42.714,42.809,42.970,43.054,
-42.999,42.824,42.600,42.398,42.248,42.135,42.025,41.891,41.735,41.577,41.436,41.310,41.182,41.029,40.843,40.634,
-40.420,40.210,39.989,39.729,39.404,39.010,38.572,38.138,37.764,37.493,37.343,37.301,37.328,37.366,37.357,37.259,
-37.063,36.795,36.502,36.227,35.994,35.799,35.624,35.456,35.306,35.197,35.146,35.148,35.172,35.178,35.140,35.064,
-34.976,34.904,34.856,34.821,34.787,34.752,34.732,34.742,34.776,34.801,34.775,34.681,34.540,34.410,34.341,34.340,
-34.365,34.353,34.274,34.170,34.145,34.306,34.704,35.297,35.978,36.634,37.211,37.731,38.252,38.813,39.379,39.852,
-40.121,40.120,39.864,39.436,38.936,38.433,37.945,37.458,36.956,36.450,35.972,35.554,35.207,34.913,34.642,34.365,
-34.066,33.732,33.340,32.856,32.256,31.548,30.782,30.041,29.397,28.872,28.425,27.976,27.455,26.847,26.204,25.612,
-25.144,24.813,24.579,24.368,24.129,23.847,23.543,23.242,22.943,22.618,22.233,21.784,21.305,20.857,20.488,20.200,
-19.949,19.670,19.320,18.902,18.462,18.051,17.695,17.379,17.062,16.715,16.341,15.972,15.647,15.379,15.142,14.890,
-14.585,14.221,13.826,13.443,13.098,12.787,12.482,12.151,11.781,11.385,10.990,10.619,10.277,9.950,9.621,9.280,
-8.930,8.583,8.247,7.924,7.604,7.278,6.939,6.590,6.238,5.891,5.553,5.224,4.902,4.582,4.263,3.945,
-3.628,3.313,3.002,2.692,2.377,2.051,1.708,1.349,.979,.608,.244,-.109,-.455,-.795,-1.128,-1.448,
--1.753,-2.047,-2.346,-2.669,-3.026,-3.412,-3.804,-4.174,-4.503,-4.790,-5.054,-5.319,-5.605,-5.917,-6.249,-6.589,
--6.930,-7.270,-7.608,-7.943,-8.271,-8.589,-8.897,-9.201,-9.506,-9.817,-10.129,-10.434,-10.729,-11.016,-11.304,-11.603,
--11.914,-12.230,-12.534,-12.815,-13.071,-13.318,-13.581,-13.878,-14.213,-14.573,-14.931,-15.265,-15.567,-15.844,-16.115,-16.395,
--16.686,-16.981,-17.267,-17.540,-17.802,-18.057,-18.306,-18.542,-18.750,-18.924,-19.070,-19.211,-19.366,-19.543,-19.733,-19.915,
--20.077,-20.227,-20.387,-20.578,-20.795,-21.006,-21.165,-21.243,-21.251,-21.240,-21.270,-21.381,-21.567,-21.781,-21.973,-22.114,
--22.211,-22.298,-22.404,-22.539,-22.687,-22.827,-22.950,-23.065,-23.189,-23.328,-23.473,-23.602,-23.703,-23.783,-23.861,-23.957,
--24.068,-24.170,-24.225,-24.209,-24.124,-23.994,-23.850,-23.716,-23.604,-23.515,-23.448,-23.401,-23.367,-23.329,-23.268,-23.172,
--23.051,-22.933,-22.852,-22.823,-22.830,-22.840,-22.818,-22.756,-22.673,-22.596,-22.541,-22.501,-22.454,-22.384,-22.300,-22.227,
--22.188,-22.182,-22.181,-22.152,-22.077,-21.974,-21.876,-21.807,-21.764,-21.722,-21.655,-21.561,-21.466,-21.397,-21.357,-21.314,
--21.227,-21.080,-20.903,-20.761,-20.707,-20.735,-20.775,-20.737,-20.568,-20.296,-20.017,-19.835,-19.794,-19.850,-19.908,-19.880,
--19.744,-19.547,-19.366,-19.245,-19.173,-19.101,-18.985,-18.830,-18.686,-18.610,-18.617,-18.670,-18.700,-18.657,-18.551,-18.445,
--18.426,-18.548,-18.810,-19.155,-19.504,-19.786,-19.957,-19.999,-19.922,-19.756,-19.551,-19.371,-19.270,-19.264,-19.327,-19.398,
--19.426,-19.400,-19.360,-19.371,-19.474,-19.648,-19.820,-19.902,-19.849,-19.692,-19.518,-19.418,-19.438,-19.551,-19.682,-19.757,
--19.747,-19.676,-19.599,-19.564,-19.584,-19.639,-19.695,-19.731,-19.749,-19.766,-19.802,-19.860,-19.923,-19.956,-19.927,-19.814,
--19.629,-19.421,-19.262,-19.215,-19.289,-19.404,-19.408,-19.144,-18.542,-17.699,-16.866,-16.351,-16.366,-16.909,-17.747,-18.530,
--18.967,-18.974,-18.696,-18.404,-18.330,-18.543,-18.937,-19.338,-19.622,-19.792,-19.935,-20.116,-20.300,-20.346,-20.110,-19.558,
--18.824,-18.154,-17.773,-17.760,-18.014,-18.329,-18.523,-18.533,-18.418,-18.284,-18.190,-18.106,-17.952,-17.678,-17.323,-17.006,
--16.857,-16.938,-17.208,-17.554,-17.861,-18.075,-18.215,-18.339,-18.498,-18.707,-18.944,-19.181,-19.403,-19.611,-19.817,-20.038,
--20.300,-20.645,-21.120,-21.753,-22.524,-23.350,-24.114,-24.713,-25.108,-25.336,-25.483,-25.628,-25.806,-25.997,-26.162,-26.278,
--26.358,-26.439,-26.547,-26.681,-26.809,-26.897,-26.932,-26.933,-26.934,-26.964,-27.029,-27.117,-27.213,-27.314,-27.422,-27.540,
--27.655,-27.745,-27.792,-27.797,-27.782,-27.775,-27.794,-27.832,-27.869,-27.886,-27.886,-27.886,-27.904,-27.942,-27.977,-27.980,
--27.931,-27.838,-27.734,-27.651,-27.604,-27.581,-27.555,-27.502,-27.423,-27.337,-27.263,-27.208,-27.154,-27.075,-26.950,-26.782,
--26.596,-26.424,-26.286,-26.185,-26.105,-26.034,-25.962,-25.896,-25.839,-25.793,-25.751,-25.703,-25.649,-25.596,-25.556,-25.534,
--25.522,-25.501,-25.451,-25.367,-25.258,-25.143,-25.039,-24.951,-24.874,-24.796,-24.712,-24.623,-24.538,-24.462,-24.393,-24.324,
--24.248,-24.159,-24.059,-23.955,-23.850,-23.746,-23.640,-23.528,-23.405,-23.271,-23.126,-22.977,-22.835,-22.713,-22.622,-22.564,
--22.527,-22.495,-22.449,-22.379,-22.289,-22.192,-22.100,-22.020,-21.957,-21.919,-21.921,-21.986,-22.126,-22.335,-22.576,-22.787,
--22.905,-22.890,-22.736,-22.474,-22.157,-21.841,-21.563,-21.340,-21.169,-21.037,-20.931,-20.843,-20.773,-20.724,-20.700,-20.698,
--20.708,-20.713,-20.692,-20.634,-20.539,-20.422,-20.299,-20.186,-20.091,-20.011,-19.938,-19.867,-19.798,-19.733,-19.671,-19.611,
--19.548,-19.476,-19.397,-19.319,-19.246,-19.182,-19.125,-19.066,-18.999,-18.922,-18.836,-18.745,-18.651,-18.555,-18.457,-18.358,
--18.263,-18.181,-18.119,-18.083,-18.074,-18.089,-18.128,-18.184,-18.252,-18.324,-18.391,-18.444,-18.481,-18.504,-18.523,-18.550,
--18.600,-18.685,-18.811,-18.979,-19.182,-19.412,-19.653,-19.891,-20.108,-20.286,-20.408,-20.458,-20.428,-20.318,-20.138,-19.914,
--19.672,-19.439,-19.230,-19.049,-18.891,-18.748,-18.615,-18.491,-18.373,-18.256,-18.130,-17.986,-17.819,-17.638,-17.457,-17.295,
--17.161,-17.051,-16.954,-16.855,-16.745,-16.622,-16.491,-16.357,-16.217,-16.063,-15.887,-15.690,-15.477,-15.266,-15.070,-14.899,
--14.750,-14.611,-14.469,-14.311,-14.134,-13.944,-13.755,-13.579,-13.422,-13.281,-13.144,-13.001,-12.845,-12.681,-12.523,-12.382,
--12.262,-12.157,-12.054,-11.946,-11.833,-11.727,-11.639,-11.574,-11.527,-11.483,-11.430,-11.365,-11.289,-11.211,-11.131,-11.050,
--10.966,-10.886,-10.828,-10.807,-10.831,-10.888,-10.952,-10.994,-11.000,-10.977,-10.949,-10.939,-10.958,-10.999,-11.045,-11.081,
--11.106,-11.129,-11.162,-11.208,-11.261,-11.311,-11.353,-11.391,-11.437,-11.496,-11.563,-11.625,-11.665,-11.678,-11.670,-11.658,
--11.662,-11.689,-11.736,-11.791,-11.840,-11.877,-11.902,-11.922,-11.946,-11.979,-12.022,-12.069,-12.106,-12.120,-12.100,-12.042,
--11.958,-11.866,-11.786,-11.733,-11.707,-11.698,-11.692,-11.676,-11.646,-11.599,-11.535,-11.453,-11.355,-11.248,-11.147,-11.063,
--11.002,-10.950,-10.885,-10.784,-10.637,-10.457,-10.271,-10.107,-9.980,-9.886,-9.810,-9.737,-9.659,-9.580,-9.500,-9.418,
--9.324,-9.204,-9.055,-8.881,-8.697,-8.520,-8.366,-8.248,-8.177,-8.158,-8.185,-8.236,-8.278,-8.275,-8.211,-8.094,
--7.959,-7.847,-7.784,-7.766,-7.766,-7.749,-7.695,-7.603,-7.489,-7.371,-7.251,-7.119,-6.965,-6.785,-6.592,-6.407,
--6.245,-6.111,-5.991,-5.866,-5.722,-5.553,-5.361,-5.156,-4.947,-4.741,-4.545,-4.362,-4.193,-4.031,-3.870,-3.702,
--3.529,-3.353,-3.180,-3.004,-2.812,-2.586,-2.317,-2.014,-1.701,-1.406,-1.146,-.913,-.685,-.431,-.140,.177,
-.494,.786,1.047,1.293,1.548,1.828,2.132,2.443,2.742,3.026,3.307,3.601,3.908,4.207,4.467,4.665,
-4.806,4.918,5.028,5.130,5.174,5.092,4.846,4.483,4.149,4.047,4.358,5.161,6.386,7.842,9.277,10.471,
-11.292,11.714,11.799,11.656,11.404,11.149,10.964,10.875,10.852,10.825,10.714,10.465,10.089,9.658,9.273,9.021,
-8.931,8.978,9.108,9.278,9.477,9.722,10.030,10.393,10.770,11.111,11.377,11.560,11.678,11.754,11.805,11.833,
-11.843,11.850,11.882,11.965,12.104,12.280,12.459,12.612,12.736,12.841,12.941,13.027,13.069,13.035,12.919,12.759,
-12.629,12.595,12.678,12.832,12.963,12.969,12.799,12.475,12.085,11.735,11.504,11.411,11.421,11.470,11.505,11.507,
-11.490,11.488,11.521,11.584,11.644,11.649,11.552,11.324,10.969,10.517,10.015,9.511,9.041,8.612,8.214,7.820,
-7.412,6.983,6.548,6.133,5.762,5.450,5.198,5.002,4.865,4.797,4.819,4.941,5.150,5.398,5.606,5.681,
-5.548,5.175,4.592,3.880,3.152,2.518,2.052,1.774,1.659,1.656,1.718,1.820,1.962,2.147,2.367,2.587,
-2.758,2.835,2.806,2.698,2.567,2.469,2.433,2.450,2.488,2.519,2.546,2.608,2.762,3.044,3.440,3.879,
-4.256,4.476,4.493,4.333,4.075,3.813,3.617,3.510,3.475,3.474,3.478,3.482,3.495,3.537,3.633,3.813,
-4.125,4.631,5.384,6.389,7.574,8.791,9.858,10.630,11.059,11.216,11.252,11.320,11.500,11.774,12.055,12.257,
-12.367,12.460,12.658,13.052,13.636,14.298,14.873,15.223,15.310,15.203,15.040,14.947,14.987,15.144,15.354,15.561,
-15.739,15.891,16.025,16.125,16.155,16.088,15.930,15.729,15.554,15.454,15.434,15.460,15.495,15.534,15.603,15.739,
-15.945,16.181,16.381,16.507,16.593,16.739,17.050,17.565,18.211,18.830,19.258,19.417,19.355,19.208,19.121,19.163,
-19.303,19.450,19.529,19.538,19.540,19.615,19.803,20.075,20.357,20.581,20.727,20.823,20.915,21.028,21.157,21.277,
-21.376,21.472,21.596,21.770,21.982,22.192,22.359,22.466,22.535,22.608,22.720,22.879,23.064,23.249,23.416,23.564,
-23.702,23.837,23.965,24.085,24.201,24.327,24.474,24.641,24.810,24.952,25.054,25.124,25.194,25.299,25.452,25.641,
-25.836,26.009,26.145,26.252,26.344,26.431,26.515,26.588,26.648,26.697,26.742,26.791,26.850,26.923,27.017,27.133,
-27.268,27.403,27.516,27.589,27.627,27.657,27.714,27.818,27.955,28.080,28.141,28.113,28.010,27.879,27.770,27.707,
-27.675,27.638,27.567,27.456,27.329,27.217,27.140,27.098,27.076,27.060,27.047,27.043,27.168,27.114,27.078,27.062,
-27.060,27.067,27.079,27.086,27.074,27.020,26.918,26.780,26.646,26.559,26.538,26.561,26.574,26.526,26.404,26.247,
-26.127,26.100,26.169,26.281,26.365,26.380,26.345,26.328,26.396,26.565,26.781,26.955,27.017,26.961,26.844,26.748,
-26.723,26.768,26.844,26.922,27.013,27.165,27.421,27.775,28.154,28.455,28.611,28.633,28.618,28.693,28.943,29.366,
-29.875,30.350,30.699,30.902,31.002,31.073,31.175,31.335,31.543,31.772,31.995,32.197,32.374,32.531,32.682,32.845,
-33.035,33.255,33.491,33.719,33.914,34.074,34.214,34.362,34.538,34.740,34.948,35.137,35.298,35.439,35.580,35.736,
-35.903,36.068,36.216,36.348,36.476,36.614,36.766,36.924,37.078,37.229,37.387,37.564,37.750,37.908,37.989,37.963,
-37.852,37.727,37.680,37.766,37.953,38.128,38.136,37.863,37.307,36.595,35.943,35.559,35.558,35.907,36.448,36.973,
-37.317,37.419,37.332,37.168,37.032,36.972,36.972,36.994,37.019,37.070,37.194,37.423,37.740,38.082,38.374,38.580,
-38.722,38.870,39.086,39.388,39.741,40.085,40.380,40.637,40.902,41.214,41.576,41.945,42.273,42.548,42.807,43.117,
-43.518,43.990,44.462,44.857,45.148,45.380,45.629,45.951,46.330,46.696,46.973,47.144,47.267,47.432,47.694,48.018,
-48.297,48.419,48.338,48.115,47.881,47.765,47.838,48.093,48.490,48.996,49.596,50.260,50.892,51.328,51.383,50.952,
-50.084,48.980,47.908,47.075,46.548,46.251,46.058,45.896,45.796,45.858,46.142,46.589,47.002,47.136,46.825,46.090,
-45.143,44.297,43.824,43.828,44.213,44.732,45.111,45.163,44.857,44.309,43.715,43.254,43.020,42.994,43.071,43.120,
-43.049,42.837,42.534,42.221,41.964,41.787,41.668,41.567,41.454,41.328,41.209,41.119,41.065,41.027,40.975,40.877,
-40.715,40.482,40.185,39.832,39.433,39.008,38.579,38.177,37.831,37.565,37.392,37.311,37.306,37.347,37.388,37.381,
-37.289,37.104,36.851,36.573,36.311,36.080,35.866,35.647,35.416,35.194,35.023,34.938,34.940,34.992,35.036,35.028,
-34.963,34.871,34.794,34.753,34.744,34.744,34.737,34.728,34.734,34.764,34.803,34.818,34.779,34.689,34.580,34.500,
-34.472,34.482,34.484,34.445,34.373,34.323,34.368,34.555,34.880,35.298,35.761,36.259,36.818,37.473,38.212,38.953,
-39.559,39.895,39.896,39.595,39.101,38.542,38.009,37.531,37.087,36.647,36.202,35.766,35.364,35.005,34.680,34.371,
-34.059,33.735,33.385,32.976,32.463,31.816,31.049,30.244,29.521,28.987,28.672,28.506,28.346,28.045,27.530,26.831,
-26.061,25.347,24.768,24.323,23.963,23.632,23.311,23.022,22.791,22.612,22.437,22.194,21.838,21.380,20.884,20.432,
-20.072,19.790,19.529,19.224,18.849,18.423,17.998,17.614,17.279,16.964,16.636,16.281,15.919,15.583,15.295,15.048,
-14.806,14.529,14.200,13.833,13.459,13.105,12.777,12.456,12.115,11.743,11.348,10.954,10.581,10.236,9.911,9.592,
-9.272,8.953,8.644,8.346,8.052,7.746,7.415,7.061,6.694,6.331,5.985,5.655,5.332,5.005,4.669,4.328,
-3.993,3.672,3.367,3.073,2.778,2.472,2.147,1.800,1.438,1.067,.693,.323,-.043,-.402,-.751,-1.082,
--1.392,-1.682,-1.965,-2.261,-2.592,-2.964,-3.367,-3.770,-4.140,-4.453,-4.711,-4.939,-5.170,-5.436,-5.744,-6.087,
--6.443,-6.796,-7.136,-7.466,-7.791,-8.113,-8.431,-8.740,-9.041,-9.338,-9.640,-9.949,-10.264,-10.581,-10.893,-11.200,
--11.503,-11.806,-12.108,-12.400,-12.675,-12.935,-13.189,-13.457,-13.758,-14.095,-14.456,-14.814,-15.147,-15.445,-15.718,-15.985,
--16.265,-16.563,-16.869,-17.169,-17.452,-17.717,-17.970,-18.213,-18.443,-18.654,-18.843,-19.019,-19.197,-19.385,-19.582,-19.769,
--19.931,-20.067,-20.198,-20.359,-20.570,-20.821,-21.064,-21.242,-21.322,-21.321,-21.297,-21.320,-21.429,-21.617,-21.834,-22.025,
--22.162,-22.255,-22.339,-22.447,-22.586,-22.739,-22.884,-23.009,-23.123,-23.244,-23.381,-23.524,-23.655,-23.761,-23.844,-23.923,
--24.014,-24.117,-24.210,-24.264,-24.256,-24.187,-24.076,-23.948,-23.826,-23.722,-23.640,-23.583,-23.549,-23.530,-23.506,-23.454,
--23.362,-23.240,-23.119,-23.035,-23.005,-23.018,-23.037,-23.032,-22.988,-22.921,-22.857,-22.813,-22.785,-22.754,-22.703,-22.635,
--22.565,-22.512,-22.478,-22.449,-22.405,-22.338,-22.261,-22.195,-22.149,-22.115,-22.070,-21.999,-21.910,-21.828,-21.774,-21.737,
--21.683,-21.569,-21.390,-21.188,-21.034,-20.980,-21.015,-21.069,-21.047,-20.895,-20.638,-20.364,-20.170,-20.098,-20.110,-20.121,
--20.052,-19.889,-19.677,-19.489,-19.365,-19.293,-19.221,-19.109,-18.963,-18.831,-18.769,-18.794,-18.868,-18.921,-18.895,-18.790,
--18.661,-18.593,-18.655,-18.865,-19.190,-19.563,-19.909,-20.164,-20.288,-20.270,-20.130,-19.926,-19.732,-19.610,-19.585,-19.626,
--19.674,-19.678,-19.633,-19.585,-19.599,-19.711,-19.895,-20.072,-20.159,-20.123,-20.006,-19.898,-19.879,-19.967,-20.110,-20.221,
--20.232,-20.139,-19.994,-19.872,-19.819,-19.837,-19.889,-19.938,-19.969,-19.996,-20.041,-20.114,-20.197,-20.261,-20.280,-20.247,
--20.177,-20.098,-20.038,-20.015,-20.032,-20.060,-20.041,-19.893,-19.548,-19.002,-18.347,-17.761,-17.440,-17.499,-17.905,-18.474,
--18.966,-19.207,-19.182,-19.030,-18.953,-19.089,-19.428,-19.842,-20.179,-20.371,-20.470,-20.589,-20.792,-21.023,-21.119,-20.921,
--20.391,-19.665,-18.991,-18.596,-18.562,-18.791,-19.083,-19.256,-19.249,-19.127,-19.008,-18.965,-18.978,-18.960,-18.834,-18.593,
--18.315,-18.114,-18.071,-18.198,-18.442,-18.729,-19.008,-19.262,-19.495,-19.713,-19.912,-20.087,-20.248,-20.417,-20.618,-20.861,
--21.144,-21.468,-21.850,-22.330,-22.938,-23.664,-24.439,-25.155,-25.713,-26.074,-26.272,-26.390,-26.507,-26.657,-26.826,-26.975,
--27.083,-27.164,-27.253,-27.375,-27.520,-27.651,-27.733,-27.754,-27.742,-27.743,-27.789,-27.882,-27.997,-28.103,-28.186,-28.253,
--28.321,-28.395,-28.466,-28.514,-28.526,-28.508,-28.483,-28.470,-28.477,-28.497,-28.519,-28.539,-28.566,-28.608,-28.661,-28.702,
--28.703,-28.646,-28.540,-28.416,-28.313,-28.251,-28.225,-28.209,-28.177,-28.120,-28.050,-27.987,-27.938,-27.892,-27.823,-27.710,
--27.553,-27.370,-27.195,-27.053,-26.950,-26.876,-26.813,-26.745,-26.669,-26.587,-26.505,-26.427,-26.353,-26.285,-26.227,-26.184,
--26.153,-26.127,-26.092,-26.036,-25.957,-25.859,-25.753,-25.649,-25.550,-25.456,-25.363,-25.272,-25.186,-25.108,-25.038,-24.972,
--24.903,-24.824,-24.733,-24.631,-24.520,-24.406,-24.293,-24.182,-24.074,-23.969,-23.858,-23.735,-23.596,-23.449,-23.306,-23.185,
--23.095,-23.033,-22.984,-22.930,-22.862,-22.778,-22.686,-22.591,-22.494,-22.387,-22.272,-22.161,-22.085,-22.078,-22.162,-22.331,
--22.549,-22.763,-22.917,-22.976,-22.930,-22.791,-22.584,-22.339,-22.078,-21.822,-21.587,-21.385,-21.225,-21.111,-21.041,-21.009,
--21.001,-20.999,-20.987,-20.951,-20.886,-20.795,-20.691,-20.586,-20.487,-20.395,-20.307,-20.220,-20.138,-20.066,-20.013,-19.976,
--19.946,-19.908,-19.849,-19.765,-19.661,-19.551,-19.443,-19.341,-19.242,-19.144,-19.049,-18.967,-18.905,-18.866,-18.843,-18.819,
--18.777,-18.703,-18.594,-18.457,-18.307,-18.162,-18.040,-17.957,-17.924,-17.947,-18.017,-18.118,-18.225,-18.311,-18.356,-18.358,
--18.330,-18.296,-18.286,-18.322,-18.413,-18.558,-18.747,-18.969,-19.217,-19.483,-19.756,-20.018,-20.243,-20.405,-20.485,-20.477,
--20.393,-20.249,-20.066,-19.856,-19.625,-19.380,-19.131,-18.893,-18.683,-18.513,-18.376,-18.255,-18.126,-17.973,-17.792,-17.598,
--17.408,-17.240,-17.099,-16.978,-16.867,-16.755,-16.637,-16.512,-16.380,-16.240,-16.087,-15.919,-15.734,-15.540,-15.345,-15.157,
--14.984,-14.825,-14.676,-14.530,-14.381,-14.224,-14.060,-13.894,-13.732,-13.578,-13.432,-13.286,-13.133,-12.971,-12.805,-12.645,
--12.501,-12.377,-12.267,-12.160,-12.048,-11.931,-11.819,-11.724,-11.650,-11.593,-11.541,-11.484,-11.421,-11.356,-11.295,-11.240,
--11.187,-11.130,-11.071,-11.023,-11.004,-11.025,-11.080,-11.149,-11.204,-11.225,-11.212,-11.182,-11.157,-11.153,-11.174,-11.207,
--11.240,-11.268,-11.291,-11.317,-11.346,-11.379,-11.409,-11.438,-11.469,-11.510,-11.565,-11.629,-11.687,-11.722,-11.728,-11.709,
--11.683,-11.669,-11.680,-11.716,-11.766,-11.816,-11.858,-11.891,-11.920,-11.956,-12.000,-12.052,-12.102,-12.137,-12.146,-12.126,
--12.081,-12.021,-11.958,-11.901,-11.856,-11.822,-11.797,-11.780,-11.768,-11.755,-11.730,-11.680,-11.597,-11.483,-11.358,-11.244,
--11.157,-11.098,-11.043,-10.964,-10.838,-10.667,-10.477,-10.301,-10.163,-10.066,-9.991,-9.913,-9.819,-9.713,-9.612,-9.530,
--9.469,-9.412,-9.336,-9.223,-9.068,-8.884,-8.692,-8.514,-8.372,-8.282,-8.248,-8.265,-8.308,-8.346,-8.345,-8.291,
--8.193,-8.083,-7.996,-7.953,-7.950,-7.957,-7.944,-7.887,-7.788,-7.659,-7.517,-7.370,-7.214,-7.044,-6.860,-6.671,
--6.490,-6.328,-6.186,-6.056,-5.931,-5.801,-5.664,-5.513,-5.345,-5.157,-4.953,-4.743,-4.545,-4.368,-4.214,-4.070,
--3.921,-3.757,-3.579,-3.397,-3.213,-3.020,-2.804,-2.549,-2.257,-1.950,-1.656,-1.393,-1.156,-.917,-.644,-.322,
-.036,.395,.720,.998,1.241,1.480,1.739,2.023,2.315,2.597,2.862,3.120,3.391,3.682,3.978,4.250,
-4.469,4.634,4.763,4.884,4.998,5.074,5.057,4.908,4.642,4.349,4.172,4.256,4.696,5.503,6.599,7.847,
-9.078,10.133,10.885,11.264,11.276,11.011,10.627,10.297,10.147,10.200,10.370,10.505,10.464,10.193,9.751,9.276,
-8.916,8.763,8.823,9.038,9.334,9.662,10.012,10.393,10.801,11.210,11.573,11.852,12.033,12.132,12.181,12.208,
-12.228,12.246,12.264,12.290,12.333,12.396,12.474,12.552,12.620,12.677,12.725,12.765,12.786,12.767,12.693,12.566,
-12.415,12.278,12.186,12.136,12.092,12.004,11.835,11.584,11.289,11.005,10.780,10.635,10.560,10.529,10.516,10.509,
-10.507,10.512,10.520,10.515,10.478,10.390,10.240,10.026,9.750,9.418,9.038,8.623,8.184,7.736,7.286,6.838,
-6.397,5.972,5.584,5.259,5.026,4.901,4.880,4.944,5.062,5.206,5.364,5.540,5.751,6.009,6.306,6.598,
-6.811,6.854,6.656,6.197,5.535,4.797,4.142,3.717,3.606,3.811,4.268,4.882,5.564,6.248,6.882,7.410,
-7.760,7.857,7.654,7.168,6.490,5.756,5.103,4.617,4.309,4.138,4.053,4.032,4.101,4.308,4.682,5.190,
-5.735,6.182,6.410,6.357,6.040,5.541,4.966,4.407,3.919,3.519,3.201,2.959,2.789,2.693,2.674,2.739,
-2.903,3.204,3.693,4.417,5.384,6.540,7.761,8.889,9.784,10.381,10.712,10.885,11.034,11.250,11.552,11.895,
-12.219,12.496,12.756,13.070,13.492,14.019,14.572,15.036,15.315,15.389,15.325,15.238,15.231,15.346,15.552,15.773,
-15.943,16.033,16.058,16.046,16.015,15.957,15.856,15.713,15.558,15.439,15.397,15.438,15.533,15.639,15.725,15.789,
-15.841,15.892,15.939,15.979,16.028,16.142,16.392,16.829,17.431,18.095,18.678,19.064,19.223,19.228,19.202,19.251,
-19.398,19.590,19.741,19.797,19.775,19.743,19.777,19.910,20.117,20.343,20.545,20.714,20.866,21.021,21.176,21.305,
-21.392,21.446,21.507,21.622,21.808,22.037,22.253,22.407,22.488,22.528,22.575,22.664,22.793,22.937,23.069,23.181,
-23.290,23.417,23.567,23.729,23.881,24.013,24.133,24.256,24.394,24.538,24.667,24.768,24.848,24.936,25.064,25.246,
-25.463,25.678,25.855,25.981,26.068,26.140,26.215,26.297,26.372,26.429,26.466,26.494,26.532,26.594,26.686,26.806,
-26.944,27.085,27.215,27.318,27.393,27.454,27.527,27.640,27.802,27.989,28.152,28.240,28.226,28.127,27.991,27.870,
-27.793,27.751,27.713,27.650,27.557,27.455,27.373,27.328,27.312,27.302,27.276,27.228,27.168,27.274,27.221,27.202,
-27.213,27.237,27.251,27.237,27.184,27.088,26.952,26.789,26.630,26.515,26.476,26.514,26.592,26.649,26.640,26.564,
-26.467,26.418,26.457,26.568,26.683,26.733,26.697,26.628,26.618,26.741,26.989,27.267,27.442,27.422,27.216,26.928,
-26.699,26.630,26.728,26.926,27.135,27.303,27.441,27.592,27.787,28.010,28.209,28.343,28.418,28.498,28.664,28.956,
-29.340,29.720,29.990,30.094,30.061,29.980,29.958,30.061,30.291,30.598,30.914,31.188,31.401,31.571,31.729,31.909,
-32.134,32.412,32.730,33.060,33.366,33.620,33.814,33.967,34.116,34.292,34.509,34.750,34.984,35.182,35.337,35.465,
-35.599,35.763,35.966,36.192,36.411,36.594,36.727,36.814,36.879,36.950,37.049,37.179,37.314,37.416,37.448,37.401,
-37.312,37.251,37.291,37.465,37.729,37.972,38.048,37.850,37.365,36.695,36.031,35.575,35.461,35.698,36.171,36.692,
-37.083,37.244,37.184,36.994,36.795,36.670,36.643,36.683,36.743,36.805,36.884,37.021,37.237,37.519,37.820,38.090,
-38.309,38.499,38.708,38.971,39.286,39.617,39.922,40.188,40.439,40.717,41.045,41.410,41.765,42.071,42.330,42.593,
-42.922,43.347,43.835,44.308,44.694,44.974,45.198,45.447,45.778,46.182,46.593,46.935,47.173,47.334,47.479,47.650,
-47.835,47.982,48.039,47.995,47.895,47.801,47.753,47.748,47.767,47.815,47.947,48.244,48.743,49.375,49.956,50.264,
-50.144,49.595,48.772,47.899,47.161,46.623,46.246,45.961,45.755,45.693,45.866,46.295,46.862,47.327,47.434,47.041,
-46.199,45.139,44.166,43.523,43.294,43.393,43.631,43.818,43.844,43.710,43.499,43.313,43.220,43.222,43.265,43.271,
-43.176,42.958,42.643,42.290,41.961,41.697,41.505,41.365,41.249,41.141,41.045,40.976,40.945,40.947,40.956,40.933,
-40.839,40.649,40.355,39.972,39.525,39.055,38.603,38.209,37.897,37.678,37.544,37.479,37.464,37.478,37.497,37.490,
-37.430,37.296,37.094,36.854,36.617,36.410,36.230,36.043,35.812,35.526,35.218,34.953,34.791,34.749,34.790,34.843,
-34.847,34.788,34.697,34.630,34.626,34.680,34.758,34.815,34.834,34.828,34.823,34.835,34.852,34.852,34.815,34.748,
-34.677,34.626,34.601,34.584,34.550,34.495,34.449,34.457,34.559,34.763,35.053,35.404,35.808,36.281,36.836,37.451,
-38.054,38.531,38.778,38.749,38.477,38.058,37.603,37.188,36.833,36.515,36.200,35.868,35.517,35.155,34.780,34.383,
-33.955,33.505,33.047,32.586,32.093,31.516,30.806,29.972,29.104,28.355,27.873,27.718,27.819,27.988,28.009,27.736,
-27.157,26.383,25.579,24.874,24.307,23.837,23.400,22.965,22.559,22.239,22.036,21.923,21.816,21.625,21.303,20.875,
-20.414,19.997,19.656,19.365,19.067,18.718,18.313,17.888,17.491,17.147,16.847,16.557,16.248,15.916,15.577,15.260,
-14.974,14.709,14.435,14.132,13.793,13.433,13.071,12.721,12.381,12.041,11.694,11.337,10.977,10.621,10.272,9.930,
-9.595,9.273,8.970,8.689,8.421,8.148,7.852,7.523,7.169,6.805,6.451,6.114,5.787,5.458,5.115,4.761,
-4.408,4.068,3.751,3.454,3.162,2.862,2.541,2.199,1.839,1.468,1.094,.722,.356,-.001,-.347,-.678,
--.991,-1.288,-1.572,-1.856,-2.154,-2.480,-2.839,-3.222,-3.604,-3.958,-4.264,-4.521,-4.751,-4.987,-5.258,-5.574,
--5.926,-6.291,-6.646,-6.980,-7.299,-7.612,-7.929,-8.249,-8.565,-8.870,-9.168,-9.466,-9.775,-10.102,-10.439,-10.776,
--11.098,-11.403,-11.693,-11.976,-12.260,-12.543,-12.827,-13.110,-13.401,-13.708,-14.036,-14.380,-14.723,-15.049,-15.347,-15.622,
--15.889,-16.165,-16.460,-16.771,-17.085,-17.389,-17.673,-17.933,-18.168,-18.378,-18.569,-18.749,-18.931,-19.128,-19.338,-19.547,
--19.733,-19.883,-20.005,-20.132,-20.302,-20.534,-20.808,-21.072,-21.267,-21.364,-21.379,-21.370,-21.402,-21.511,-21.687,-21.887,
--22.061,-22.189,-22.283,-22.375,-22.491,-22.635,-22.789,-22.932,-23.058,-23.175,-23.300,-23.438,-23.577,-23.699,-23.793,-23.866,
--23.938,-24.024,-24.125,-24.218,-24.275,-24.276,-24.223,-24.134,-24.032,-23.938,-23.858,-23.796,-23.750,-23.723,-23.706,-23.686,
--23.643,-23.564,-23.458,-23.347,-23.263,-23.222,-23.218,-23.224,-23.212,-23.170,-23.107,-23.044,-22.999,-22.973,-22.953,-22.926,
--22.885,-22.838,-22.791,-22.747,-22.700,-22.643,-22.580,-22.523,-22.482,-22.459,-22.434,-22.389,-22.314,-22.224,-22.146,-22.093,
--22.053,-21.988,-21.863,-21.677,-21.476,-21.328,-21.282,-21.325,-21.387,-21.379,-21.246,-21.007,-20.736,-20.518,-20.392,-20.335,
--20.279,-20.169,-19.997,-19.806,-19.652,-19.560,-19.508,-19.446,-19.335,-19.183,-19.038,-18.957,-18.961,-19.021,-19.072,-19.059,
--18.969,-18.845,-18.758,-18.777,-18.937,-19.227,-19.600,-19.990,-20.325,-20.544,-20.612,-20.534,-20.359,-20.161,-20.010,-19.939,
--19.932,-19.941,-19.926,-19.884,-19.858,-19.897,-20.024,-20.201,-20.357,-20.423,-20.386,-20.297,-20.236,-20.260,-20.364,-20.483,
--20.541,-20.498,-20.377,-20.243,-20.160,-20.149,-20.188,-20.237,-20.273,-20.309,-20.371,-20.468,-20.574,-20.639,-20.629,-20.556,
--20.477,-20.462,-20.545,-20.696,-20.837,-20.883,-20.787,-20.555,-20.237,-19.890,-19.562,-19.284,-19.086,-18.995,-19.026,-19.157,
--19.331,-19.472,-19.538,-19.549,-19.581,-19.718,-19.990,-20.349,-20.690,-20.926,-21.049,-21.129,-21.263,-21.485,-21.722,-21.823,
--21.652,-21.188,-20.556,-19.973,-19.631,-19.591,-19.766,-19.981,-20.084,-20.033,-19.896,-19.788,-19.786,-19.876,-19.978,-20.001,
--19.911,-19.745,-19.586,-19.512,-19.560,-19.719,-19.951,-20.215,-20.481,-20.724,-20.923,-21.068,-21.168,-21.258,-21.388,-21.598,
--21.901,-22.281,-22.713,-23.188,-23.719,-24.322,-24.987,-25.661,-26.266,-26.731,-27.035,-27.213,-27.335,-27.460,-27.607,-27.755,
--27.872,-27.947,-28.005,-28.082,-28.196,-28.331,-28.442,-28.493,-28.483,-28.454,-28.464,-28.548,-28.698,-28.869,-29.006,-29.084,
--29.112,-29.125,-29.153,-29.201,-29.250,-29.276,-29.266,-29.228,-29.183,-29.150,-29.138,-29.143,-29.162,-29.194,-29.239,-29.292,
--29.336,-29.347,-29.311,-29.229,-29.124,-29.028,-28.962,-28.925,-28.899,-28.862,-28.805,-28.733,-28.661,-28.600,-28.546,-28.481,
--28.388,-28.259,-28.106,-27.952,-27.820,-27.722,-27.653,-27.600,-27.544,-27.473,-27.383,-27.277,-27.165,-27.057,-26.962,-26.887,
--26.829,-26.782,-26.736,-26.681,-26.612,-26.531,-26.442,-26.351,-26.260,-26.168,-26.074,-25.978,-25.886,-25.798,-25.717,-25.638,
--25.557,-25.472,-25.383,-25.293,-25.202,-25.107,-25.002,-24.887,-24.764,-24.642,-24.526,-24.417,-24.307,-24.186,-24.051,-23.907,
--23.766,-23.642,-23.539,-23.451,-23.370,-23.288,-23.208,-23.131,-23.060,-22.986,-22.893,-22.769,-22.619,-22.464,-22.341,-22.285,
--22.314,-22.422,-22.581,-22.754,-22.901,-22.995,-23.020,-22.974,-22.863,-22.702,-22.514,-22.318,-22.134,-21.969,-21.824,-21.693,
--21.571,-21.456,-21.349,-21.251,-21.162,-21.082,-21.005,-20.928,-20.850,-20.768,-20.680,-20.587,-20.492,-20.401,-20.324,-20.267,
--20.230,-20.203,-20.169,-20.116,-20.036,-19.934,-19.820,-19.705,-19.593,-19.487,-19.382,-19.282,-19.190,-19.116,-19.062,-19.027,
--18.999,-18.965,-18.914,-18.839,-18.739,-18.615,-18.473,-18.320,-18.170,-18.039,-17.947,-17.906,-17.915,-17.957,-18.006,-18.034,
--18.030,-17.999,-17.962,-17.945,-17.965,-18.023,-18.110,-18.212,-18.325,-18.455,-18.616,-18.818,-19.057,-19.316,-19.566,-19.782,
--19.950,-20.066,-20.134,-20.152,-20.115,-20.011,-19.837,-19.604,-19.340,-19.082,-18.861,-18.687,-18.554,-18.438,-18.314,-18.166,
--17.990,-17.794,-17.586,-17.375,-17.165,-16.959,-16.760,-16.573,-16.403,-16.250,-16.111,-15.979,-15.847,-15.710,-15.564,-15.406,
--15.239,-15.065,-14.892,-14.725,-14.569,-14.424,-14.285,-14.146,-14.002,-13.853,-13.702,-13.552,-13.405,-13.258,-13.109,-12.962,
--12.821,-12.694,-12.581,-12.479,-12.377,-12.267,-12.146,-12.022,-11.905,-11.802,-11.715,-11.637,-11.562,-11.492,-11.431,-11.384,
--11.351,-11.327,-11.300,-11.266,-11.231,-11.211,-11.220,-11.261,-11.322,-11.381,-11.417,-11.422,-11.402,-11.376,-11.361,-11.365,
--11.387,-11.417,-11.449,-11.478,-11.507,-11.533,-11.558,-11.579,-11.596,-11.614,-11.643,-11.685,-11.740,-11.796,-11.840,-11.862,
--11.859,-11.842,-11.824,-11.817,-11.825,-11.846,-11.872,-11.900,-11.928,-11.960,-12.001,-12.049,-12.099,-12.141,-12.165,-12.166,
--12.147,-12.115,-12.078,-12.040,-12.001,-11.959,-11.915,-11.874,-11.845,-11.831,-11.829,-11.822,-11.793,-11.728,-11.631,-11.520,
--11.416,-11.333,-11.262,-11.182,-11.067,-10.909,-10.720,-10.534,-10.379,-10.266,-10.179,-10.091,-9.976,-9.833,-9.680,-9.549,
--9.461,-9.414,-9.383,-9.338,-9.253,-9.125,-8.964,-8.795,-8.637,-8.509,-8.417,-8.365,-8.348,-8.354,-8.366,-8.367,
--8.347,-8.311,-8.275,-8.252,-8.248,-8.253,-8.245,-8.202,-8.113,-7.980,-7.817,-7.636,-7.445,-7.248,-7.048,-6.849,
--6.658,-6.480,-6.316,-6.164,-6.022,-5.893,-5.781,-5.683,-5.586,-5.469,-5.313,-5.116,-4.895,-4.678,-4.490,-4.335,
--4.200,-4.058,-3.892,-3.705,-3.512,-3.330,-3.159,-2.981,-2.773,-2.522,-2.237,-1.945,-1.667,-1.407,-1.147,-.859,
--.527,-.159,.212,.553,.848,1.109,1.361,1.628,1.911,2.196,2.463,2.706,2.938,3.181,3.449,3.731,
-4.006,4.249,4.450,4.620,4.772,4.907,5.001,5.019,4.936,4.763,4.552,4.381,4.334,4.476,4.849,5.472,
-6.333,7.380,8.504,9.549,10.343,10.763,10.793,10.545,10.216,10.001,9.999,10.173,10.371,10.420,10.218,9.790,
-9.270,8.835,8.617,8.661,8.926,9.330,9.800,10.294,10.793,11.282,11.728,12.089,12.333,12.458,12.498,12.503,
-12.519,12.570,12.650,12.737,12.806,12.841,12.839,12.802,12.742,12.668,12.591,12.512,12.427,12.323,12.190,12.025,
-11.843,11.666,11.510,11.374,11.238,11.071,10.853,10.586,10.298,10.026,9.794,9.604,9.438,9.280,9.132,9.013,
-8.947,8.944,8.980,9.008,8.975,8.850,8.638,8.372,8.095,7.828,7.570,7.295,6.977,6.605,6.191,5.767,
-5.369,5.028,4.766,4.598,4.537,4.600,4.798,5.131,5.577,6.092,6.613,7.079,7.452,7.728,7.939,8.133,
-8.337,8.537,8.667,8.639,8.388,7.918,7.328,6.784,6.464,6.495,6.912,7.657,8.618,9.672,10.712,11.650,
-12.395,12.849,12.919,12.559,11.806,10.791,9.706,8.739,8.008,7.534,7.262,7.115,7.045,7.061,7.210,7.531,
-8.010,8.569,9.080,9.413,9.471,9.220,8.687,7.940,7.068,6.166,5.322,4.611,4.083,3.758,3.625,3.649,
-3.794,4.040,4.393,4.884,5.542,6.371,7.329,8.331,9.263,10.026,10.560,10.874,11.028,11.115,11.219,11.393,
-11.646,11.964,12.330,12.738,13.193,13.691,14.202,14.665,15.009,15.190,15.219,15.162,15.117,15.162,15.321,15.555,
-15.788,15.949,16.006,15.971,15.885,15.786,15.691,15.596,15.496,15.400,15.331,15.316,15.366,15.470,15.596,15.712,
-15.795,15.839,15.848,15.838,15.836,15.878,16.015,16.286,16.702,17.223,17.771,18.258,18.632,18.896,19.102,19.314,
-19.559,19.815,20.025,20.140,20.154,20.110,20.073,20.091,20.168,20.279,20.395,20.509,20.641,20.811,21.017,21.225,
-21.387,21.478,21.519,21.560,21.655,21.821,22.029,22.225,22.368,22.451,22.507,22.571,22.660,22.759,22.840,22.890,
-22.927,22.989,23.107,23.283,23.486,23.674,23.825,23.942,24.050,24.171,24.305,24.433,24.539,24.625,24.718,24.848,
-25.031,25.250,25.468,25.647,25.772,25.854,25.920,25.990,26.065,26.135,26.186,26.219,26.250,26.298,26.376,26.482,
-26.605,26.730,26.845,26.946,27.033,27.110,27.191,27.292,27.428,27.600,27.789,27.959,28.072,28.107,28.072,27.998,
-27.922,27.862,27.813,27.756,27.677,27.582,27.494,27.439,27.424,27.432,27.433,27.404,27.344,27.274,27.338,27.350,
-27.409,27.485,27.536,27.520,27.421,27.246,27.025,26.796,26.598,26.463,26.419,26.470,26.600,26.761,26.901,26.984,
-27.009,27.015,27.044,27.115,27.197,27.229,27.164,27.015,26.858,26.799,26.902,27.139,27.391,27.511,27.409,27.113,
-26.752,26.495,26.451,26.623,26.913,27.196,27.388,27.487,27.549,27.640,27.787,27.970,28.149,28.307,28.459,28.639,
-28.861,29.091,29.260,29.311,29.233,29.084,28.966,28.968,29.127,29.413,29.755,30.078,30.344,30.557,30.750,30.960,
-31.209,31.502,31.829,32.173,32.512,32.822,33.085,33.292,33.455,33.604,33.776,33.990,34.243,34.505,34.745,34.943,
-35.113,35.289,35.506,35.776,36.074,36.351,36.561,36.683,36.739,36.776,36.844,36.954,37.077,37.148,37.111,36.958,
-36.744,36.577,36.564,36.755,37.103,37.473,37.691,37.622,37.229,36.604,35.931,35.417,35.213,35.357,35.769,36.287,
-36.738,36.999,37.033,36.891,36.672,36.477,36.366,36.351,36.402,36.483,36.574,36.681,36.823,37.015,37.254,37.518,
-37.784,38.043,38.307,38.591,38.901,39.222,39.528,39.800,40.044,40.289,40.568,40.892,41.240,41.573,41.866,42.129,
-42.405,42.739,43.147,43.597,44.028,44.389,44.674,44.926,45.204,45.547,45.944,46.349,46.710,47.008,47.255,47.477,
-47.684,47.854,47.955,47.971,47.924,47.856,47.796,47.732,47.618,47.417,47.154,46.925,46.859,47.036,47.427,47.882,
-48.206,48.254,48.000,47.540,47.022,46.557,46.178,45.860,45.583,45.390,45.375,45.620,46.109,46.689,47.117,47.164,
-46.729,45.892,44.872,43.927,43.243,42.873,42.753,42.772,42.835,42.908,43.002,43.140,43.318,43.493,43.604,43.598,
-43.452,43.186,42.845,42.482,42.142,41.846,41.598,41.390,41.212,41.061,40.941,40.863,40.829,40.831,40.843,40.831,
-40.760,40.604,40.353,40.013,39.605,39.162,38.725,38.336,38.028,37.818,37.702,37.659,37.659,37.673,37.680,37.661,
-37.597,37.474,37.287,37.053,36.808,36.594,36.432,36.305,36.166,35.960,35.666,35.315,34.982,34.742,34.633,34.630,
-34.666,34.674,34.629,34.561,34.525,34.565,34.678,34.820,34.931,34.977,34.964,34.928,34.908,34.913,34.927,34.921,
-34.881,34.814,34.744,34.687,34.644,34.603,34.556,34.518,34.520,34.598,34.766,35.014,35.313,35.635,35.965,36.299,
-36.625,36.910,37.107,37.173,37.098,36.914,36.683,36.464,36.286,36.139,35.990,35.804,35.567,35.280,34.944,34.555,
-34.102,33.586,33.034,32.486,31.966,31.455,30.883,30.172,29.293,28.315,27.399,26.732,26.429,26.465,26.672,26.817,
-26.717,26.323,25.730,25.107,24.592,24.220,23.917,23.570,23.108,22.553,22.010,21.591,21.348,21.240,21.159,20.997,
-20.704,20.309,19.885,19.496,19.164,18.860,18.536,18.166,17.762,17.366,17.017,16.725,16.469,16.211,15.922,15.597,
-15.257,14.925,14.616,14.323,14.027,13.709,13.363,12.996,12.625,12.266,11.928,11.609,11.301,10.990,10.665,10.323,
-9.969,9.618,9.284,8.978,8.697,8.428,8.150,7.849,7.523,7.184,6.847,6.521,6.204,5.883,5.548,5.199,
-4.847,4.509,4.193,3.898,3.607,3.301,2.969,2.609,2.228,1.839,1.451,1.071,.704,.355,.028,-.275,
--.560,-.838,-1.119,-1.411,-1.717,-2.035,-2.363,-2.700,-3.043,-3.383,-3.711,-4.014,-4.293,-4.557,-4.827,-5.125,
--5.457,-5.816,-6.180,-6.526,-6.847,-7.149,-7.448,-7.759,-8.083,-8.410,-8.729,-9.035,-9.337,-9.648,-9.978,-10.324,
--10.667,-10.988,-11.276,-11.538,-11.794,-12.064,-12.359,-12.675,-13.001,-13.327,-13.650,-13.972,-14.300,-14.629,-14.952,-15.258,
--15.544,-15.818,-16.091,-16.379,-16.687,-17.009,-17.331,-17.634,-17.905,-18.137,-18.332,-18.505,-18.672,-18.851,-19.048,-19.257,
--19.458,-19.631,-19.768,-19.884,-20.014,-20.192,-20.430,-20.706,-20.973,-21.182,-21.310,-21.373,-21.416,-21.486,-21.607,-21.767,
--21.932,-22.073,-22.181,-22.273,-22.376,-22.504,-22.653,-22.805,-22.944,-23.069,-23.193,-23.326,-23.468,-23.606,-23.721,-23.807,
--23.877,-23.952,-24.049,-24.163,-24.270,-24.338,-24.350,-24.307,-24.230,-24.144,-24.066,-24.001,-23.949,-23.908,-23.878,-23.860,
--23.844,-23.814,-23.758,-23.674,-23.575,-23.485,-23.422,-23.388,-23.371,-23.350,-23.313,-23.260,-23.202,-23.152,-23.113,-23.083,
--23.057,-23.033,-23.010,-22.989,-22.965,-22.932,-22.887,-22.837,-22.795,-22.770,-22.755,-22.731,-22.680,-22.597,-22.501,-22.416,
--22.357,-22.313,-22.248,-22.132,-21.962,-21.779,-21.640,-21.588,-21.615,-21.662,-21.653,-21.541,-21.333,-21.082,-20.856,-20.689,
--20.569,-20.456,-20.317,-20.153,-19.998,-19.887,-19.829,-19.794,-19.736,-19.623,-19.466,-19.311,-19.211,-19.188,-19.221,-19.258,
--19.248,-19.173,-19.058,-18.958,-18.932,-19.022,-19.242,-19.571,-19.961,-20.345,-20.647,-20.814,-20.826,-20.716,-20.548,-20.390,
--20.283,-20.225,-20.187,-20.144,-20.104,-20.104,-20.180,-20.335,-20.524,-20.674,-20.730,-20.687,-20.598,-20.534,-20.537,-20.597,
--20.662,-20.679,-20.635,-20.564,-20.516,-20.520,-20.560,-20.601,-20.619,-20.633,-20.690,-20.824,-21.016,-21.186,-21.244,-21.155,
--20.977,-20.839,-20.861,-21.066,-21.355,-21.547,-21.488,-21.144,-20.626,-20.136,-19.856,-19.855,-20.066,-20.338,-20.526,-20.556,
--20.450,-20.289,-20.159,-20.118,-20.182,-20.343,-20.578,-20.855,-21.137,-21.385,-21.580,-21.730,-21.870,-22.028,-22.196,-22.315,
--22.299,-22.093,-21.715,-21.271,-20.901,-20.714,-20.721,-20.839,-20.943,-20.942,-20.828,-20.674,-20.576,-20.594,-20.715,-20.873,
--20.994,-21.040,-21.025,-20.997,-21.003,-21.068,-21.187,-21.344,-21.522,-21.707,-21.885,-22.039,-22.160,-22.260,-22.373,-22.545,
--22.815,-23.194,-23.663,-24.188,-24.743,-25.316,-25.899,-26.476,-27.006,-27.443,-27.757,-27.958,-28.093,-28.221,-28.377,-28.554,
--28.716,-28.827,-28.881,-28.910,-28.955,-29.038,-29.142,-29.221,-29.242,-29.208,-29.167,-29.179,-29.283,-29.466,-29.672,-29.836,
--29.921,-29.937,-29.923,-29.922,-29.953,-30.000,-30.034,-30.031,-29.990,-29.930,-29.874,-29.839,-29.828,-29.835,-29.855,-29.885,
--29.922,-29.957,-29.975,-29.962,-29.911,-29.834,-29.746,-29.668,-29.607,-29.558,-29.509,-29.452,-29.385,-29.318,-29.257,-29.202,
--29.144,-29.069,-28.968,-28.840,-28.699,-28.564,-28.452,-28.370,-28.313,-28.267,-28.213,-28.136,-28.032,-27.909,-27.783,-27.670,
--27.580,-27.511,-27.450,-27.384,-27.306,-27.216,-27.124,-27.038,-26.962,-26.890,-26.814,-26.729,-26.635,-26.537,-26.438,-26.339,
--26.237,-26.129,-26.020,-25.917,-25.827,-25.748,-25.671,-25.581,-25.468,-25.332,-25.185,-25.044,-24.917,-24.805,-24.695,-24.578,
--24.450,-24.316,-24.187,-24.069,-23.964,-23.865,-23.766,-23.668,-23.574,-23.486,-23.402,-23.312,-23.206,-23.079,-22.941,-22.807,
--22.698,-22.631,-22.611,-22.637,-22.697,-22.779,-22.868,-22.951,-23.014,-23.048,-23.051,-23.027,-22.982,-22.914,-22.818,-22.684,
--22.505,-22.287,-22.052,-21.827,-21.637,-21.492,-21.386,-21.303,-21.223,-21.136,-21.039,-20.938,-20.839,-20.745,-20.660,-20.582,
--20.512,-20.449,-20.392,-20.335,-20.271,-20.197,-20.112,-20.021,-19.930,-19.844,-19.762,-19.681,-19.597,-19.507,-19.412,-19.313,
--19.216,-19.125,-19.045,-18.981,-18.934,-18.896,-18.854,-18.788,-18.681,-18.528,-18.344,-18.156,-17.996,-17.888,-17.835,-17.822,
--17.826,-17.828,-17.822,-17.816,-17.824,-17.851,-17.890,-17.925,-17.940,-17.931,-17.914,-17.914,-17.954,-18.044,-18.178,-18.342,
--18.523,-18.720,-18.935,-19.170,-19.410,-19.623,-19.771,-19.818,-19.756,-19.602,-19.396,-19.184,-18.999,-18.852,-18.737,-18.634,
--18.521,-18.382,-18.207,-17.994,-17.748,-17.478,-17.199,-16.927,-16.676,-16.455,-16.266,-16.102,-15.957,-15.822,-15.690,-15.554,
--15.408,-15.249,-15.079,-14.907,-14.745,-14.600,-14.474,-14.358,-14.238,-14.104,-13.957,-13.803,-13.655,-13.519,-13.396,-13.279,
--13.165,-13.050,-12.939,-12.834,-12.734,-12.633,-12.523,-12.399,-12.264,-12.127,-11.999,-11.884,-11.784,-11.694,-11.614,-11.547,
--11.497,-11.465,-11.446,-11.429,-11.407,-11.381,-11.362,-11.363,-11.393,-11.447,-11.510,-11.563,-11.591,-11.594,-11.582,-11.570,
--11.570,-11.586,-11.616,-11.654,-11.696,-11.737,-11.775,-11.806,-11.826,-11.834,-11.833,-11.833,-11.842,-11.867,-11.908,-11.956,
--12.001,-12.031,-12.045,-12.045,-12.037,-12.028,-12.026,-12.032,-12.047,-12.072,-12.106,-12.146,-12.189,-12.225,-12.249,-12.257,
--12.251,-12.237,-12.221,-12.203,-12.180,-12.144,-12.091,-12.023,-11.955,-11.902,-11.876,-11.873,-11.879,-11.872,-11.837,-11.774,
--11.694,-11.615,-11.544,-11.473,-11.384,-11.262,-11.107,-10.935,-10.771,-10.631,-10.513,-10.396,-10.255,-10.080,-9.883,-9.695,
--9.546,-9.450,-9.393,-9.348,-9.283,-9.184,-9.058,-8.923,-8.801,-8.704,-8.630,-8.574,-8.530,-8.497,-8.477,-8.474,
--8.486,-8.510,-8.541,-8.574,-8.600,-8.610,-8.591,-8.533,-8.433,-8.293,-8.121,-7.925,-7.710,-7.481,-7.244,-7.011,
--6.792,-6.597,-6.422,-6.260,-6.103,-5.950,-5.811,-5.698,-5.613,-5.542,-5.456,-5.329,-5.153,-4.945,-4.740,-4.564,
--4.423,-4.298,-4.159,-3.989,-3.794,-3.600,-3.431,-3.292,-3.162,-3.007,-2.799,-2.535,-2.237,-1.932,-1.637,-1.347,
--1.046,-.720,-.373,-.023,.310,.617,.907,1.195,1.489,1.784,2.062,2.310,2.531,2.745,2.975,3.232,
-3.507,3.782,4.039,4.275,4.495,4.697,4.867,4.974,4.991,4.913,4.770,4.607,4.467,4.372,4.330,4.365,
-4.541,4.950,5.673,6.713,7.956,9.186,10.160,10.711,10.825,10.638,10.366,10.191,10.176,10.253,10.277,10.127,
-9.776,9.308,8.870,8.604,8.589,8.821,9.243,9.781,10.370,10.964,11.519,11.994,12.348,12.563,12.651,12.658,
-12.646,12.665,12.740,12.858,12.986,13.081,13.111,13.063,12.942,12.765,12.555,12.332,12.102,11.863,11.606,11.331,
-11.050,10.790,10.577,10.426,10.321,10.227,10.102,9.923,9.693,9.438,9.183,8.939,8.695,8.434,8.158,7.898,
-7.708,7.627,7.658,7.751,7.822,7.790,7.622,7.338,7.004,6.686,6.420,6.193,5.962,5.686,5.353,4.995,
-4.674,4.451,4.367,4.427,4.614,4.906,5.294,5.788,6.403,7.138,7.952,8.762,9.462,9.960,10.218,10.272,
-10.214,10.150,10.145,10.192,10.216,10.124,9.865,9.477,9.080,8.833,8.870,9.244,9.923,10.813,11.806,12.805,
-13.729,14.492,14.999,15.157,14.916,14.304,13.444,12.517,11.700,11.101,10.734,10.537,10.424,10.342,10.297,10.344,
-10.544,10.922,11.447,12.032,12.557,12.900,12.961,12.684,12.065,11.165,10.106,9.043,8.134,7.492,7.162,7.115,
-7.277,7.565,7.921,8.324,8.777,9.292,9.864,10.466,11.053,11.576,11.986,12.251,12.355,12.305,12.136,11.908,
-11.701,11.594,11.648,11.889,12.304,12.845,13.442,14.014,14.489,14.817,14.980,15.006,14.953,14.898,14.902,14.994,
-15.154,15.333,15.475,15.544,15.540,15.488,15.421,15.361,15.308,15.253,15.187,15.116,15.061,15.043,15.075,15.152,
-15.255,15.359,15.444,15.509,15.568,15.650,15.787,16.006,16.314,16.694,17.114,17.540,17.952,18.355,18.767,19.200,
-19.640,20.039,20.339,20.498,20.522,20.463,20.395,20.374,20.411,20.477,20.534,20.564,20.590,20.654,20.787,20.979,
-21.185,21.351,21.448,21.496,21.542,21.630,21.772,21.942,22.099,22.218,22.308,22.393,22.493,22.603,22.691,22.733,
-22.732,22.725,22.764,22.882,23.069,23.281,23.468,23.605,23.704,23.800,23.919,24.061,24.203,24.320,24.411,24.501,
-24.624,24.801,25.021,25.249,25.446,25.591,25.689,25.758,25.813,25.859,25.892,25.911,25.928,25.962,26.032,26.139,
-26.270,26.405,26.526,26.632,26.728,26.822,26.916,27.009,27.102,27.201,27.315,27.445,27.583,27.710,27.810,27.874,
-27.905,27.914,27.903,27.871,27.811,27.725,27.629,27.548,27.499,27.482,27.477,27.460,27.420,27.369,27.338,27.292,
-27.340,27.438,27.536,27.576,27.517,27.354,27.124,26.887,26.697,26.592,26.585,26.667,26.815,26.999,27.181,27.330,
-27.428,27.484,27.521,27.564,27.613,27.637,27.587,27.434,27.202,26.965,26.813,26.801,26.901,27.017,27.032,26.883,
-26.605,26.316,26.152,26.192,26.413,26.711,26.965,27.109,27.157,27.186,27.276,27.456,27.701,27.947,28.146,28.283,
-28.375,28.447,28.500,28.518,28.484,28.411,28.347,28.351,28.464,28.680,28.952,29.221,29.449,29.641,29.832,30.060,
-30.343,30.666,30.998,31.311,31.594,31.852,32.092,32.316,32.517,32.692,32.854,33.024,33.228,33.474,33.749,34.025,
-34.282,34.520,34.759,35.023,35.318,35.619,35.883,36.076,36.195,36.277,36.380,36.536,36.728,36.884,36.919,36.781,
-36.504,36.202,36.024,36.079,36.371,36.780,37.115,37.190,36.921,36.360,35.681,35.104,34.805,34.854,35.197,35.693,
-36.178,36.521,36.664,36.621,36.456,36.253,36.085,35.994,35.993,36.067,36.190,36.337,36.496,36.663,36.846,37.054,
-37.291,37.560,37.857,38.177,38.507,38.832,39.135,39.406,39.647,39.876,40.118,40.390,40.694,41.013,41.323,41.615,
-41.899,42.198,42.534,42.907,43.294,43.667,44.006,44.318,44.627,44.959,45.316,45.683,46.033,46.357,46.661,46.961,
-47.258,47.523,47.713,47.793,47.768,47.683,47.596,47.533,47.469,47.341,47.101,46.759,46.395,46.126,46.031,46.109,
-46.270,46.394,46.395,46.265,46.059,45.846,45.656,45.469,45.252,45.013,44.828,44.806,45.018,45.429,45.888,46.184,
-46.147,45.731,45.033,44.240,43.538,43.039,42.758,42.647,42.653,42.755,42.958,43.262,43.629,43.974,44.194,44.213,
-44.014,43.646,43.196,42.751,42.363,42.045,41.777,41.532,41.296,41.072,40.881,40.744,40.670,40.649,40.649,40.631,
-40.558,40.407,40.175,39.876,39.530,39.163,38.801,38.471,38.195,37.992,37.869,37.813,37.802,37.806,37.802,37.774,
-37.710,37.602,37.441,37.226,36.973,36.717,36.498,36.340,36.232,36.128,35.971,35.726,35.408,35.075,34.803,34.639,
-34.580,34.578,34.578,34.553,34.519,34.519,34.589,34.725,34.884,35.010,35.067,35.061,35.026,35.003,35.007,35.021,
-35.015,34.968,34.887,34.797,34.723,34.674,34.639,34.603,34.569,34.559,34.607,34.736,34.941,35.186,35.425,35.621,
-35.753,35.823,35.837,35.806,35.739,35.657,35.587,35.555,35.570,35.615,35.646,35.619,35.507,35.308,35.039,34.713,
-34.327,33.869,33.340,32.769,32.210,31.704,31.242,30.750,30.120,29.276,28.238,27.141,26.183,25.530,25.228,25.174,
-25.177,25.060,24.763,24.363,24.015,23.843,23.854,23.919,23.851,23.512,22.899,22.146,21.451,20.970,20.739,20.670,
-20.614,20.450,20.140,19.732,19.312,18.944,18.636,18.349,18.035,17.678,17.296,16.935,16.625,16.369,16.135,15.881,
-15.583,15.242,14.887,14.545,14.231,13.935,13.633,13.302,12.938,12.554,12.175,11.824,11.509,11.220,10.936,10.634,
-10.307,9.959,9.609,9.275,8.965,8.673,8.383,8.080,7.761,7.435,7.116,6.811,6.519,6.223,5.911,5.580,
-5.239,4.909,4.602,4.315,4.029,3.719,3.369,2.980,2.568,2.154,1.752,1.366,.997,.647,.323,.035,
--.217,-.448,-.685,-.951,-1.259,-1.602,-1.958,-2.306,-2.635,-2.948,-3.255,-3.563,-3.873,-4.180,-4.481,-4.784,
--5.099,-5.432,-5.780,-6.127,-6.455,-6.758,-7.043,-7.330,-7.636,-7.965,-8.306,-8.641,-8.959,-9.266,-9.577,-9.906,
--10.250,-10.591,-10.904,-11.177,-11.415,-11.646,-11.901,-12.199,-12.536,-12.893,-13.246,-13.584,-13.906,-14.224,-14.545,-14.869,
--15.185,-15.485,-15.767,-16.042,-16.323,-16.622,-16.938,-17.257,-17.560,-17.830,-18.060,-18.257,-18.437,-18.617,-18.810,-19.014,
--19.217,-19.402,-19.554,-19.677,-19.789,-19.921,-20.096,-20.319,-20.570,-20.816,-21.025,-21.186,-21.312,-21.428,-21.555,-21.697,
--21.842,-21.968,-22.069,-22.153,-22.242,-22.357,-22.501,-22.659,-22.812,-22.950,-23.076,-23.205,-23.348,-23.500,-23.645,-23.767,
--23.861,-23.943,-24.034,-24.148,-24.278,-24.397,-24.476,-24.495,-24.458,-24.386,-24.302,-24.223,-24.155,-24.096,-24.047,-24.011,
--23.991,-23.982,-23.968,-23.934,-23.870,-23.781,-23.684,-23.599,-23.538,-23.503,-23.484,-23.470,-23.451,-23.423,-23.387,-23.343,
--23.295,-23.248,-23.211,-23.189,-23.182,-23.179,-23.169,-23.146,-23.113,-23.083,-23.063,-23.049,-23.025,-22.975,-22.896,-22.800,
--22.713,-22.648,-22.598,-22.537,-22.436,-22.291,-22.127,-21.989,-21.913,-21.899,-21.909,-21.887,-21.792,-21.623,-21.411,-21.199,
--21.016,-20.860,-20.712,-20.557,-20.400,-20.262,-20.162,-20.099,-20.046,-19.970,-19.855,-19.714,-19.583,-19.502,-19.483,-19.507,
--19.532,-19.517,-19.444,-19.325,-19.197,-19.112,-19.119,-19.250,-19.512,-19.879,-20.289,-20.663,-20.927,-21.043,-21.021,-20.912,
--20.775,-20.652,-20.551,-20.459,-20.373,-20.314,-20.321,-20.429,-20.627,-20.858,-21.043,-21.120,-21.081,-20.972,-20.859,-20.790,
--20.769,-20.771,-20.772,-20.774,-20.798,-20.862,-20.951,-21.023,-21.043,-21.018,-21.010,-21.097,-21.311,-21.598,-21.834,-21.898,
--21.761,-21.521,-21.354,-21.400,-21.657,-21.960,-22.059,-21.774,-21.120,-20.319,-19.704,-19.537,-19.877,-20.550,-21.251,-21.705,
--21.792,-21.586,-21.277,-21.057,-21.021,-21.151,-21.360,-21.562,-21.725,-21.873,-22.046,-22.269,-22.523,-22.756,-22.905,-22.925,
--22.800,-22.552,-22.235,-21.922,-21.687,-21.574,-21.582,-21.662,-21.736,-21.738,-21.648,-21.501,-21.367,-21.310,-21.357,-21.488,
--21.655,-21.814,-21.947,-22.063,-22.181,-22.308,-22.440,-22.562,-22.670,-22.775,-22.894,-23.043,-23.223,-23.426,-23.648,-23.898,
--24.196,-24.563,-25.002,-25.499,-26.027,-26.561,-27.081,-27.570,-28.005,-28.358,-28.608,-28.756,-28.838,-28.911,-29.029,-29.208,
--29.422,-29.616,-29.744,-29.795,-29.799,-29.805,-29.844,-29.913,-29.977,-30.003,-29.986,-29.959,-29.972,-30.063,-30.226,-30.418,
--30.582,-30.681,-30.715,-30.713,-30.712,-30.732,-30.766,-30.789,-30.783,-30.744,-30.687,-30.635,-30.603,-30.592,-30.595,-30.605,
--30.617,-30.631,-30.646,-30.654,-30.643,-30.602,-30.530,-30.437,-30.338,-30.250,-30.180,-30.125,-30.080,-30.036,-29.989,-29.941,
--29.890,-29.833,-29.761,-29.666,-29.542,-29.394,-29.239,-29.097,-28.988,-28.917,-28.876,-28.841,-28.789,-28.706,-28.597,-28.477,
--28.370,-28.285,-28.221,-28.158,-28.080,-27.978,-27.860,-27.743,-27.643,-27.566,-27.504,-27.442,-27.367,-27.275,-27.171,-27.060,
--26.946,-26.825,-26.699,-26.571,-26.450,-26.346,-26.259,-26.178,-26.085,-25.968,-25.823,-25.663,-25.506,-25.367,-25.250,-25.145,
--25.041,-24.929,-24.812,-24.696,-24.590,-24.494,-24.402,-24.303,-24.192,-24.070,-23.941,-23.814,-23.692,-23.579,-23.473,-23.375,
--23.281,-23.189,-23.097,-23.005,-22.920,-22.853,-22.817,-22.820,-22.862,-22.934,-23.025,-23.120,-23.210,-23.284,-23.327,-23.320,
--23.243,-23.091,-22.875,-22.626,-22.385,-22.181,-22.023,-21.898,-21.782,-21.654,-21.509,-21.358,-21.220,-21.107,-21.019,-20.945,
--20.869,-20.783,-20.687,-20.591,-20.502,-20.425,-20.356,-20.288,-20.216,-20.139,-20.061,-19.985,-19.913,-19.842,-19.765,-19.676,
--19.572,-19.454,-19.331,-19.218,-19.127,-19.068,-19.037,-19.018,-18.983,-18.905,-18.768,-18.576,-18.357,-18.149,-17.989,-17.894,
--17.859,-17.862,-17.878,-17.890,-17.895,-17.898,-17.903,-17.903,-17.890,-17.850,-17.781,-17.695,-17.608,-17.536,-17.487,-17.458,
--17.451,-17.472,-17.544,-17.693,-17.935,-18.259,-18.624,-18.968,-19.230,-19.372,-19.388,-19.306,-19.168,-19.017,-18.880,-18.767,
--18.670,-18.576,-18.467,-18.332,-18.163,-17.963,-17.740,-17.508,-17.277,-17.055,-16.843,-16.636,-16.429,-16.219,-16.009,-15.803,
--15.605,-15.416,-15.235,-15.062,-14.903,-14.764,-14.650,-14.554,-14.462,-14.357,-14.231,-14.084,-13.933,-13.795,-13.679,-13.583,
--13.496,-13.401,-13.293,-13.173,-13.051,-12.932,-12.817,-12.699,-12.573,-12.437,-12.298,-12.169,-12.056,-11.960,-11.879,-11.804,
--11.734,-11.671,-11.618,-11.578,-11.547,-11.520,-11.497,-11.481,-11.484,-11.513,-11.567,-11.638,-11.707,-11.760,-11.788,-11.796,
--11.795,-11.798,-11.813,-11.844,-11.886,-11.936,-11.986,-12.033,-12.071,-12.092,-12.095,-12.078,-12.049,-12.022,-12.009,-12.021,
--12.058,-12.112,-12.167,-12.211,-12.235,-12.239,-12.230,-12.219,-12.216,-12.227,-12.253,-12.292,-12.336,-12.374,-12.401,-12.413,
--12.412,-12.405,-12.398,-12.394,-12.388,-12.369,-12.325,-12.250,-12.151,-12.048,-11.962,-11.911,-11.896,-11.904,-11.912,-11.903,
--11.872,-11.825,-11.773,-11.722,-11.669,-11.602,-11.512,-11.396,-11.263,-11.123,-10.981,-10.832,-10.664,-10.472,-10.262,-10.056,
--9.877,-9.738,-9.634,-9.543,-9.439,-9.307,-9.154,-9.002,-8.877,-8.794,-8.752,-8.736,-8.727,-8.715,-8.701,-8.695,
--8.708,-8.744,-8.799,-8.860,-8.910,-8.932,-8.912,-8.844,-8.730,-8.578,-8.399,-8.201,-7.986,-7.752,-7.500,-7.239,
--6.985,-6.756,-6.560,-6.393,-6.237,-6.079,-5.914,-5.755,-5.618,-5.515,-5.436,-5.358,-5.254,-5.114,-4.949,-4.785,
--4.642,-4.521,-4.403,-4.263,-4.092,-3.899,-3.716,-3.565,-3.449,-3.345,-3.212,-3.020,-2.763,-2.458,-2.133,-1.811,
--1.499,-1.191,-.881,-.567,-.255,.053,.360,.675,1.000,1.325,1.630,1.895,2.118,2.319,2.530,2.772,
-3.045,3.329,3.601,3.853,4.098,4.350,4.608,4.836,4.983,5.008,4.912,4.746,4.574,4.439,4.333,4.215,
-4.065,3.938,3.978,4.365,5.220,6.516,8.052,9.515,10.607,11.165,11.219,10.954,10.607,10.349,10.223,10.156,
-10.035,9.788,9.429,9.055,8.789,8.727,8.905,9.295,9.827,10.422,11.009,11.532,11.951,12.249,12.427,12.510,
-12.536,12.544,12.566,12.611,12.672,12.729,12.754,12.726,12.628,12.457,12.223,11.946,11.648,11.343,11.034,10.719,
-10.396,10.083,9.813,9.624,9.542,9.559,9.635,9.712,9.739,9.691,9.567,9.381,9.148,8.873,8.567,8.255,
-7.987,7.818,7.786,7.876,8.025,8.136,8.124,7.954,7.652,7.289,6.934,6.625,6.353,6.078,5.768,5.429,
-5.109,4.885,4.828,4.970,5.299,5.766,6.319,6.929,7.597,8.346,9.188,10.093,10.972,11.703,12.166,12.302,
-12.143,11.806,11.445,11.184,11.069,11.051,11.030,10.918,10.693,10.416,10.203,10.165,10.361,10.780,11.364,12.039,
-12.745,13.431,14.047,14.526,14.794,14.802,14.556,14.133,13.654,13.241,12.961,12.814,12.747,12.696,12.628,12.560,
-12.547,12.655,12.930,13.375,13.950,14.574,15.137,15.515,15.602,15.337,14.742,13.927,13.065,12.343,11.895,11.770,
-11.927,12.269,12.693,13.128,13.537,13.910,14.241,14.521,14.741,14.901,15.012,15.077,15.074,14.951,14.642,14.115,
-13.403,12.617,11.922,11.477,11.380,11.632,12.147,12.792,13.432,13.968,14.350,14.572,14.656,14.641,14.575,14.508,
-14.480,14.512,14.601,14.719,14.832,14.913,14.950,14.948,14.919,14.868,14.792,14.688,14.560,14.427,14.318,14.261,
-14.272,14.342,14.450,14.576,14.714,14.877,15.095,15.389,15.764,16.197,16.649,17.088,17.508,17.932,18.397,18.926,
-19.500,20.055,20.501,20.766,20.834,20.756,20.626,20.540,20.543,20.624,20.727,20.798,20.817,20.807,20.815,20.872,
-20.978,21.099,21.201,21.269,21.322,21.393,21.501,21.639,21.780,21.896,21.983,22.063,22.163,22.289,22.421,22.523,
-22.571,22.579,22.588,22.647,22.776,22.954,23.134,23.274,23.364,23.430,23.513,23.634,23.787,23.940,24.064,24.158,
-24.249,24.375,24.557,24.786,25.028,25.245,25.414,25.531,25.608,25.654,25.672,25.666,25.649,25.646,25.681,25.770,
-25.906,26.064,26.218,26.357,26.485,26.616,26.753,26.885,26.992,27.061,27.095,27.120,27.167,27.254,27.381,27.527,
-27.663,27.770,27.837,27.865,27.858,27.823,27.768,27.707,27.653,27.611,27.572,27.524,27.455,27.374,27.309,27.292,
-27.238,27.235,27.262,27.276,27.236,27.125,26.964,26.807,26.714,26.725,26.841,27.030,27.246,27.443,27.592,27.680,
-27.707,27.683,27.631,27.578,27.547,27.540,27.536,27.495,27.382,27.191,26.956,26.730,26.556,26.441,26.349,26.233,
-26.074,25.902,25.786,25.793,25.942,26.183,26.426,26.591,26.653,26.658,26.687,26.808,27.029,27.298,27.537,27.682,
-27.722,27.689,27.634,27.599,27.599,27.634,27.703,27.814,27.974,28.178,28.399,28.600,28.757,28.879,29.008,29.193,
-29.464,29.807,30.171,30.500,30.759,30.953,31.118,31.293,31.495,31.717,31.937,32.141,32.334,32.537,32.772,33.041,
-33.330,33.616,33.883,34.132,34.373,34.608,34.830,35.019,35.168,35.294,35.435,35.628,35.879,36.139,36.322,36.350,
-36.201,35.944,35.713,35.648,35.811,36.148,36.496,36.662,36.510,36.039,35.385,34.761,34.366,34.306,34.557,34.996,
-35.466,35.835,36.039,36.080,36.004,35.869,35.726,35.616,35.569,35.603,35.720,35.904,36.125,36.349,36.554,36.744,
-36.937,37.161,37.433,37.749,38.088,38.420,38.720,38.979,39.207,39.424,39.651,39.899,40.169,40.450,40.733,41.014,
-41.298,41.594,41.910,42.243,42.585,42.924,43.259,43.597,43.950,44.321,44.700,45.061,45.382,45.662,45.924,46.202,
-46.516,46.848,47.147,47.347,47.414,47.362,47.251,47.148,47.087,47.047,46.970,46.804,46.543,46.235,45.951,45.747,
-45.625,45.548,45.468,45.364,45.258,45.185,45.155,45.135,45.061,44.892,44.645,44.406,44.282,44.334,44.525,44.734,
-44.809,44.654,44.278,43.786,43.322,42.999,42.852,42.857,42.965,43.151,43.417,43.773,44.195,44.604,44.885,44.936,
-44.714,44.259,43.676,43.087,42.582,42.193,41.898,41.647,41.400,41.144,40.895,40.684,40.537,40.457,40.422,40.391,
-40.320,40.178,39.957,39.674,39.357,39.039,38.743,38.484,38.272,38.109,37.998,37.933,37.901,37.880,37.849,37.794,
-37.710,37.599,37.461,37.293,37.090,36.854,36.606,36.377,36.194,36.062,35.958,35.836,35.660,35.422,35.151,34.901,
-34.713,34.600,34.544,34.513,34.485,34.469,34.490,34.566,34.692,34.836,34.956,35.026,35.050,35.056,35.067,35.089,
-35.102,35.077,35.003,34.895,34.790,34.718,34.690,34.689,34.691,34.682,34.675,34.700,34.780,34.914,35.073,35.209,
-35.283,35.280,35.213,35.112,35.008,34.928,34.893,34.914,34.994,35.117,35.244,35.324,35.315,35.197,34.986,34.710,
-34.395,34.039,33.622,33.129,32.575,32.011,31.493,31.039,30.598,30.064,29.333,28.374,27.270,26.193,25.321,24.747,
-24.432,24.235,24.003,23.672,23.306,23.047,23.019,23.223,23.514,23.662,23.476,22.907,22.085,21.248,20.620,20.305,
-20.247,20.280,20.231,20.004,19.619,19.170,18.761,18.438,18.182,17.931,17.633,17.281,16.908,16.562,16.270,16.023,
-15.781,15.508,15.186,14.832,14.476,14.144,13.839,13.541,13.224,12.873,12.494,12.110,11.749,11.422,11.125,10.835,
-10.534,10.210,9.872,9.536,9.216,8.914,8.618,8.315,7.996,7.670,7.350,7.051,6.773,6.504,6.224,5.922,
-5.602,5.282,4.978,4.692,4.404,4.085,3.713,3.288,2.835,2.390,1.981,1.613,1.273,.946,.626,.326,
-.065,-.153,-.344,-.547,-.801,-1.122,-1.498,-1.893,-2.271,-2.612,-2.923,-3.224,-3.536,-3.863,-4.195,-4.521,
--4.834,-5.140,-5.451,-5.769,-6.089,-6.398,-6.690,-6.968,-7.252,-7.558,-7.890,-8.238,-8.581,-8.905,-9.213,-9.519,
--9.842,-10.184,-10.530,-10.854,-11.138,-11.383,-11.616,-11.867,-12.160,-12.496,-12.856,-13.214,-13.554,-13.875,-14.187,-14.501,
--14.820,-15.136,-15.439,-15.727,-16.007,-16.291,-16.588,-16.896,-17.201,-17.484,-17.735,-17.954,-18.156,-18.358,-18.571,-18.795,
--19.017,-19.221,-19.394,-19.533,-19.652,-19.772,-19.911,-20.082,-20.280,-20.490,-20.696,-20.886,-21.061,-21.230,-21.399,-21.569,
--21.727,-21.859,-21.958,-22.034,-22.109,-22.207,-22.342,-22.506,-22.678,-22.839,-22.979,-23.108,-23.241,-23.389,-23.548,-23.704,
--23.841,-23.954,-24.052,-24.154,-24.270,-24.394,-24.507,-24.584,-24.611,-24.589,-24.533,-24.462,-24.388,-24.320,-24.258,-24.207,
--24.171,-24.152,-24.146,-24.138,-24.114,-24.062,-23.981,-23.885,-23.791,-23.716,-23.669,-23.651,-23.654,-23.669,-23.681,-23.678,
--23.651,-23.600,-23.536,-23.477,-23.436,-23.419,-23.416,-23.413,-23.398,-23.372,-23.344,-23.324,-23.313,-23.301,-23.271,-23.215,
--23.140,-23.060,-22.991,-22.931,-22.864,-22.770,-22.643,-22.496,-22.361,-22.266,-22.217,-22.192,-22.155,-22.071,-21.931,-21.747,
--21.547,-21.353,-21.172,-21.001,-20.836,-20.679,-20.538,-20.421,-20.321,-20.227,-20.123,-20.009,-19.897,-19.811,-19.767,-19.765,
--19.783,-19.792,-19.763,-19.682,-19.556,-19.412,-19.291,-19.244,-19.318,-19.536,-19.886,-20.315,-20.738,-21.071,-21.262,-21.307,
--21.246,-21.133,-21.004,-20.874,-20.739,-20.609,-20.519,-20.516,-20.637,-20.868,-21.145,-21.378,-21.495,-21.474,-21.351,-21.192,
--21.053,-20.962,-20.921,-20.925,-20.976,-21.080,-21.223,-21.365,-21.455,-21.467,-21.431,-21.427,-21.539,-21.786,-22.095,-22.326,
--22.365,-22.202,-21.959,-21.819,-21.904,-22.171,-22.409,-22.353,-21.848,-20.976,-20.048,-19.457,-19.480,-20.125,-21.130,-22.096,
--22.697,-22.823,-22.605,-22.300,-22.138,-22.201,-22.414,-22.634,-22.753,-22.776,-22.795,-22.921,-23.191,-23.541,-23.830,-23.917,
--23.737,-23.331,-22.824,-22.364,-22.069,-21.976,-22.048,-22.198,-22.329,-22.378,-22.331,-22.221,-22.110,-22.052,-22.075,-22.174,
--22.317,-22.474,-22.631,-22.792,-22.970,-23.171,-23.380,-23.574,-23.738,-23.876,-24.015,-24.193,-24.437,-24.752,-25.121,-25.520,
--25.931,-26.349,-26.776,-27.212,-27.648,-28.070,-28.467,-28.828,-29.145,-29.406,-29.596,-29.706,-29.746,-29.752,-29.778,-29.866,
--30.029,-30.238,-30.434,-30.564,-30.609,-30.590,-30.558,-30.557,-30.602,-30.677,-30.749,-30.793,-30.816,-30.842,-30.902,-31.010,
--31.151,-31.295,-31.412,-31.488,-31.530,-31.552,-31.566,-31.574,-31.569,-31.546,-31.505,-31.460,-31.423,-31.401,-31.395,-31.396,
--31.397,-31.394,-31.390,-31.383,-31.372,-31.347,-31.299,-31.223,-31.124,-31.016,-30.916,-30.836,-30.781,-30.744,-30.713,-30.677,
--30.630,-30.570,-30.499,-30.413,-30.308,-30.178,-30.024,-29.857,-29.699,-29.574,-29.492,-29.449,-29.421,-29.381,-29.311,-29.212,
--29.104,-29.011,-28.945,-28.902,-28.856,-28.782,-28.670,-28.528,-28.381,-28.255,-28.162,-28.096,-28.039,-27.973,-27.889,-27.789,
--27.679,-27.565,-27.443,-27.311,-27.170,-27.025,-26.885,-26.756,-26.635,-26.512,-26.377,-26.228,-26.072,-25.923,-25.792,-25.681,
--25.582,-25.483,-25.378,-25.266,-25.156,-25.055,-24.966,-24.884,-24.799,-24.700,-24.581,-24.444,-24.295,-24.144,-24.002,-23.877,
--23.772,-23.683,-23.601,-23.510,-23.404,-23.285,-23.165,-23.064,-22.998,-22.974,-22.987,-23.028,-23.085,-23.152,-23.220,-23.281,
--23.317,-23.312,-23.255,-23.149,-23.013,-22.873,-22.745,-22.629,-22.509,-22.364,-22.186,-21.984,-21.786,-21.619,-21.497,-21.412,
--21.341,-21.256,-21.146,-21.014,-20.880,-20.761,-20.668,-20.593,-20.523,-20.445,-20.351,-20.247,-20.142,-20.046,-19.962,-19.890,
--19.824,-19.755,-19.679,-19.593,-19.500,-19.407,-19.324,-19.255,-19.195,-19.133,-19.047,-18.922,-18.755,-18.562,-18.372,-18.217,
--18.119,-18.077,-18.074,-18.083,-18.082,-18.061,-18.022,-17.974,-17.924,-17.874,-17.823,-17.767,-17.706,-17.642,-17.573,-17.491,
--17.391,-17.273,-17.157,-17.080,-17.085,-17.205,-17.443,-17.767,-18.121,-18.438,-18.669,-18.792,-18.817,-18.773,-18.694,-18.606,
--18.522,-18.442,-18.361,-18.271,-18.168,-18.053,-17.933,-17.812,-17.697,-17.583,-17.460,-17.312,-17.124,-16.893,-16.626,-16.340,
--16.059,-15.799,-15.566,-15.359,-15.175,-15.012,-14.872,-14.756,-14.656,-14.561,-14.454,-14.330,-14.191,-14.053,-13.932,-13.835,
--13.755,-13.675,-13.575,-13.449,-13.303,-13.151,-13.006,-12.874,-12.750,-12.627,-12.504,-12.384,-12.280,-12.198,-12.139,-12.093,
--12.045,-11.987,-11.919,-11.849,-11.785,-11.733,-11.694,-11.668,-11.655,-11.658,-11.684,-11.734,-11.802,-11.873,-11.934,-11.974,
--11.993,-12.001,-12.009,-12.028,-12.061,-12.105,-12.154,-12.202,-12.246,-12.282,-12.304,-12.310,-12.296,-12.265,-12.228,-12.199,
--12.191,-12.212,-12.259,-12.319,-12.376,-12.413,-12.425,-12.416,-12.395,-12.377,-12.374,-12.391,-12.425,-12.469,-12.511,-12.542,
--12.559,-12.564,-12.564,-12.566,-12.570,-12.570,-12.551,-12.499,-12.410,-12.290,-12.159,-12.042,-11.961,-11.921,-11.913,-11.921,
--11.924,-11.915,-11.894,-11.868,-11.843,-11.818,-11.786,-11.735,-11.658,-11.549,-11.410,-11.244,-11.057,-10.857,-10.655,-10.467,
--10.303,-10.166,-10.046,-9.921,-9.775,-9.598,-9.402,-9.209,-9.048,-8.936,-8.874,-8.848,-8.842,-8.843,-8.852,-8.874,
--8.917,-8.980,-9.057,-9.132,-9.190,-9.217,-9.205,-9.149,-9.049,-8.910,-8.738,-8.540,-8.320,-8.079,-7.817,-7.540,
--7.261,-6.998,-6.768,-6.575,-6.411,-6.256,-6.092,-5.914,-5.734,-5.571,-5.442,-5.345,-5.265,-5.181,-5.080,-4.963,
--4.842,-4.724,-4.610,-4.487,-4.343,-4.180,-4.011,-3.857,-3.730,-3.624,-3.511,-3.362,-3.158,-2.899,-2.601,-2.285,
--1.968,-1.655,-1.349,-1.052,-.769,-.498,-.228,.063,.389,.746,1.104,1.426,1.686,1.892,2.080,2.298,
-2.567,2.876,3.183,3.451,3.678,3.895,4.144,4.440,4.741,4.972,5.060,4.988,4.807,4.604,4.445,4.330,
-4.200,3.995,3.736,3.556,3.676,4.294,5.475,7.081,8.809,10.297,11.276,11.663,11.568,11.217,10.831,10.533,
-10.327,10.139,9.895,9.582,9.264,9.049,9.034,9.260,9.695,10.252,10.821,11.312,11.675,11.909,12.045,12.126,
-12.190,12.251,12.304,12.332,12.319,12.263,12.171,12.056,11.918,11.748,11.536,11.278,10.988,10.694,10.423,10.187,
-9.979,9.786,9.604,9.455,9.384,9.433,9.620,9.919,10.268,10.592,10.827,10.942,10.938,10.834,10.659,10.444,
-10.228,10.054,9.967,9.989,10.109,10.272,10.402,10.427,10.312,10.067,9.737,9.376,9.014,8.655,8.281,7.883,
-7.479,7.117,6.866,6.782,6.894,7.190,7.631,8.169,8.774,9.439,10.170,10.966,11.788,12.551,13.141,13.453,
-13.436,13.128,12.647,12.149,11.769,11.565,11.506,11.499,11.451,11.318,11.127,10.959,10.900,10.999,11.254,11.622,
-12.050,12.498,12.943,13.362,13.723,13.985,14.115,14.110,14.008,13.870,13.753,13.686,13.657,13.637,13.598,13.539,
-13.487,13.483,13.565,13.755,14.061,14.472,14.961,15.475,15.932,16.239,16.325,16.175,15.852,15.482,15.208,15.137,
-15.305,15.675,16.167,16.700,17.216,17.679,18.061,18.335,18.483,18.507,18.448,18.362,18.282,18.178,17.950,17.463,
-16.624,15.453,14.102,12.814,11.834,11.312,11.256,11.544,11.996,12.450,12.811,13.056,13.206,13.287,13.312,13.288,
-13.232,13.182,13.184,13.272,13.444,13.663,13.869,14.010,14.057,14.017,13.910,13.764,13.599,13.431,13.277,13.162,
-13.107,13.127,13.217,13.359,13.533,13.737,13.990,14.322,14.756,15.285,15.873,16.467,17.025,17.542,18.046,18.581,
-19.165,19.772,20.325,20.735,20.940,20.944,20.816,20.663,20.578,20.602,20.714,20.857,20.972,21.031,21.043,21.035,
-21.032,21.038,21.048,21.059,21.081,21.134,21.233,21.369,21.514,21.636,21.721,21.780,21.848,21.950,22.088,22.236,
-22.359,22.441,22.494,22.554,22.652,22.791,22.942,23.067,23.144,23.184,23.224,23.299,23.421,23.570,23.712,23.824,
-23.914,24.011,24.149,24.340,24.567,24.798,25.001,25.162,25.286,25.380,25.447,25.482,25.487,25.476,25.480,25.526,
-25.628,25.772,25.932,26.086,26.229,26.375,26.541,26.725,26.901,27.030,27.088,27.082,27.051,27.047,27.102,27.220,
-27.370,27.511,27.614,27.670,27.690,27.694,27.695,27.699,27.705,27.705,27.691,27.654,27.587,27.491,27.383,27.290,
-27.238,27.384,27.286,27.163,27.007,26.821,26.633,26.491,26.449,26.544,26.775,27.098,27.441,27.734,27.926,28.002,
-27.967,27.845,27.661,27.446,27.239,27.078,26.991,26.980,27.012,27.032,26.986,26.843,26.611,26.326,26.032,25.769,
-25.560,25.424,25.375,25.425,25.570,25.778,25.992,26.150,26.217,26.206,26.174,26.187,26.286,26.459,26.648,26.783,
-26.824,26.776,26.690,26.629,26.639,26.731,26.890,27.089,27.305,27.525,27.736,27.922,28.072,28.189,28.299,28.444,
-28.662,28.961,29.309,29.650,29.931,30.132,30.275,30.411,30.589,30.826,31.106,31.391,31.650,31.876,32.090,32.318,
-32.573,32.848,33.118,33.356,33.553,33.711,33.846,33.969,34.090,34.218,34.366,34.554,34.786,35.042,35.272,35.414,
-35.431,35.342,35.226,35.190,35.310,35.580,35.894,36.090,36.025,35.654,35.064,34.437,33.977,33.815,33.966,34.331,
-34.756,35.107,35.315,35.387,35.372,35.324,35.275,35.237,35.216,35.229,35.302,35.453,35.677,35.941,36.203,36.432,
-36.628,36.818,37.042,37.321,37.648,37.989,38.303,38.566,38.783,38.979,39.185,39.420,39.683,39.956,40.220,40.470,
-40.714,40.970,41.251,41.557,41.877,42.200,42.522,42.852,43.205,43.587,43.984,44.366,44.698,44.968,45.195,45.422,
-45.691,46.016,46.364,46.671,46.871,46.938,46.894,46.801,46.718,46.674,46.648,46.595,46.477,46.289,46.063,45.843,
-45.656,45.499,45.355,45.214,45.093,45.025,45.030,45.086,45.129,45.085,44.911,44.632,44.329,44.092,43.963,43.911,
-43.847,43.685,43.396,43.030,42.694,42.490,42.472,42.625,42.893,43.224,43.593,44.000,44.434,44.847,45.149,45.239,
-45.053,44.603,43.976,43.300,42.693,42.218,41.875,41.620,41.395,41.163,40.919,40.683,40.484,40.338,40.243,40.172,
-40.090,39.963,39.771,39.517,39.226,38.930,38.663,38.442,38.273,38.148,38.059,37.994,37.944,37.899,37.842,37.762,
-37.651,37.515,37.366,37.215,37.063,36.901,36.716,36.508,36.288,36.079,35.902,35.758,35.630,35.493,35.327,35.135,
-34.937,34.758,34.614,34.505,34.423,34.363,34.330,34.338,34.398,34.502,34.628,34.748,34.846,34.923,34.991,35.055,
-35.106,35.121,35.079,34.981,34.854,34.742,34.681,34.681,34.724,34.778,34.821,34.853,34.889,34.944,35.011,35.068,
-35.082,35.038,34.945,34.836,34.745,34.696,34.693,34.729,34.791,34.869,34.950,35.011,35.019,34.945,34.781,34.544,
-34.269,33.982,33.679,33.327,32.889,32.353,31.753,31.156,30.615,30.126,29.621,29.003,28.212,27.278,26.318,25.486,
-24.885,24.504,24.235,23.935,23.524,23.042,22.623,22.405,22.434,22.609,22.724,22.578,22.088,21.343,20.561,19.976,
-19.717,19.753,19.917,20.006,19.887,19.550,19.091,18.638,18.281,18.025,17.812,17.570,17.259,16.893,16.520,16.188,
-15.909,15.660,15.401,15.103,14.762,14.400,14.045,13.712,13.396,13.077,12.740,12.386,12.027,11.682,11.361,11.056,
-10.752,10.435,10.100,9.761,9.432,9.123,8.833,8.547,8.252,7.942,7.629,7.325,7.042,6.776,6.512,6.235,
-5.940,5.640,5.347,5.068,4.787,4.472,4.093,3.644,3.152,2.665,2.233,1.878,1.585,1.316,1.038,.740,
-.443,.180,-.032,-.210,-.397,-.642,-.970,-1.367,-1.790,-2.195,-2.556,-2.881,-3.195,-3.523,-3.872,-4.227,
--4.566,-4.877,-5.165,-5.446,-5.734,-6.033,-6.334,-6.628,-6.915,-7.206,-7.515,-7.847,-8.193,-8.533,-8.854,-9.155,
--9.452,-9.764,-10.099,-10.450,-10.791,-11.103,-11.379,-11.635,-11.896,-12.184,-12.504,-12.847,-13.194,-13.529,-13.851,-14.164,
--14.475,-14.784,-15.087,-15.380,-15.666,-15.955,-16.256,-16.570,-16.886,-17.185,-17.449,-17.675,-17.876,-18.075,-18.290,-18.526,
--18.770,-19.002,-19.203,-19.367,-19.505,-19.635,-19.777,-19.939,-20.119,-20.304,-20.484,-20.652,-20.813,-20.976,-21.148,-21.328,
--21.505,-21.662,-21.788,-21.885,-21.969,-22.064,-22.188,-22.347,-22.527,-22.709,-22.873,-23.016,-23.146,-23.279,-23.426,-23.587,
--23.750,-23.901,-24.031,-24.143,-24.246,-24.346,-24.444,-24.533,-24.600,-24.637,-24.641,-24.617,-24.575,-24.524,-24.471,-24.424,
--24.389,-24.367,-24.357,-24.351,-24.338,-24.309,-24.259,-24.191,-24.112,-24.031,-23.957,-23.897,-23.859,-23.847,-23.857,-23.881,
--23.901,-23.899,-23.868,-23.812,-23.751,-23.701,-23.675,-23.665,-23.659,-23.642,-23.612,-23.578,-23.553,-23.545,-23.547,-23.544,
--23.521,-23.474,-23.409,-23.337,-23.263,-23.183,-23.086,-22.966,-22.834,-22.709,-22.613,-22.555,-22.521,-22.482,-22.408,-22.282,
--22.106,-21.897,-21.679,-21.469,-21.277,-21.103,-20.948,-20.807,-20.677,-20.555,-20.436,-20.321,-20.216,-20.130,-20.069,-20.033,
--20.014,-19.995,-19.963,-19.905,-19.819,-19.707,-19.584,-19.480,-19.438,-19.504,-19.709,-20.048,-20.472,-20.900,-21.246,-21.455,
--21.520,-21.475,-21.371,-21.244,-21.106,-20.957,-20.809,-20.701,-20.683,-20.791,-21.017,-21.299,-21.551,-21.695,-21.706,-21.609,
--21.463,-21.327,-21.235,-21.197,-21.212,-21.280,-21.398,-21.548,-21.693,-21.793,-21.831,-21.837,-21.874,-21.998,-22.211,-22.440,
--22.575,-22.542,-22.364,-22.168,-22.101,-22.232,-22.472,-22.602,-22.394,-21.765,-20.870,-20.058,-19.707,-20.033,-20.959,-22.155,
--23.198,-23.783,-23.860,-23.616,-23.348,-23.280,-23.454,-23.748,-23.984,-24.058,-24.003,-23.959,-24.063,-24.352,-24.725,-24.996,
--24.993,-24.657,-24.068,-23.406,-22.862,-22.557,-22.505,-22.626,-22.800,-22.926,-22.961,-22.920,-22.857,-22.826,-22.860,-22.960,
--23.102,-23.256,-23.407,-23.557,-23.720,-23.911,-24.133,-24.376,-24.625,-24.874,-25.137,-25.438,-25.801,-26.234,-26.720,-27.230,
--27.728,-28.195,-28.623,-29.015,-29.372,-29.689,-29.959,-30.178,-30.351,-30.490,-30.601,-30.685,-30.735,-30.752,-30.747,-30.751,
--30.795,-30.897,-31.042,-31.191,-31.297,-31.333,-31.306,-31.255,-31.229,-31.262,-31.354,-31.476,-31.589,-31.668,-31.710,-31.740,
--31.787,-31.872,-31.993,-32.132,-32.261,-32.359,-32.414,-32.427,-32.410,-32.375,-32.334,-32.295,-32.262,-32.236,-32.216,-32.202,
--32.189,-32.175,-32.160,-32.142,-32.119,-32.090,-32.050,-31.994,-31.920,-31.830,-31.733,-31.640,-31.559,-31.495,-31.446,-31.401,
--31.351,-31.289,-31.212,-31.124,-31.025,-30.915,-30.789,-30.646,-30.492,-30.343,-30.217,-30.128,-30.070,-30.025,-29.967,-29.882,
--29.771,-29.658,-29.569,-29.519,-29.500,-29.484,-29.437,-29.342,-29.202,-29.045,-28.902,-28.792,-28.715,-28.657,-28.597,-28.523,
--28.435,-28.337,-28.233,-28.118,-27.987,-27.833,-27.657,-27.469,-27.279,-27.096,-26.923,-26.759,-26.601,-26.453,-26.320,-26.205,
--26.105,-26.014,-25.921,-25.818,-25.706,-25.589,-25.475,-25.370,-25.276,-25.192,-25.111,-25.024,-24.922,-24.799,-24.654,-24.494,
--24.332,-24.182,-24.052,-23.942,-23.843,-23.745,-23.642,-23.537,-23.440,-23.359,-23.297,-23.248,-23.205,-23.163,-23.127,-23.104,
--23.101,-23.118,-23.146,-23.170,-23.181,-23.176,-23.157,-23.122,-23.064,-22.972,-22.835,-22.660,-22.466,-22.284,-22.138,-22.035,
--21.960,-21.886,-21.785,-21.650,-21.487,-21.320,-21.168,-21.041,-20.934,-20.834,-20.727,-20.607,-20.480,-20.352,-20.232,-20.126,
--20.039,-19.971,-19.920,-19.879,-19.838,-19.786,-19.716,-19.630,-19.535,-19.442,-19.355,-19.270,-19.174,-19.054,-18.910,-18.752,
--18.603,-18.484,-18.405,-18.357,-18.320,-18.274,-18.207,-18.122,-18.029,-17.947,-17.884,-17.844,-17.825,-17.818,-17.814,-17.802,
--17.765,-17.693,-17.583,-17.447,-17.317,-17.230,-17.222,-17.306,-17.470,-17.679,-17.889,-18.063,-18.181,-18.246,-18.273,-18.278,
--18.273,-18.258,-18.229,-18.178,-18.102,-18.007,-17.904,-17.807,-17.728,-17.667,-17.615,-17.551,-17.450,-17.296,-17.084,-16.830,
--16.559,-16.299,-16.064,-15.856,-15.663,-15.475,-15.285,-15.096,-14.918,-14.757,-14.613,-14.479,-14.350,-14.224,-14.107,-14.005,
--13.917,-13.833,-13.739,-13.619,-13.473,-13.310,-13.146,-12.996,-12.865,-12.747,-12.634,-12.526,-12.427,-12.351,-12.303,-12.282,
--12.274,-12.261,-12.227,-12.172,-12.104,-12.037,-11.983,-11.946,-11.925,-11.915,-11.918,-11.934,-11.967,-12.013,-12.064,-12.109,
--12.140,-12.157,-12.166,-12.178,-12.202,-12.239,-12.284,-12.331,-12.374,-12.410,-12.441,-12.468,-12.488,-12.497,-12.492,-12.475,
--12.454,-12.441,-12.449,-12.480,-12.529,-12.583,-12.626,-12.645,-12.637,-12.607,-12.570,-12.540,-12.529,-12.540,-12.570,-12.609,
--12.647,-12.675,-12.693,-12.703,-12.711,-12.718,-12.720,-12.704,-12.659,-12.576,-12.458,-12.321,-12.187,-12.076,-12.002,-11.963,
--11.949,-11.946,-11.943,-11.937,-11.931,-11.928,-11.927,-11.918,-11.888,-11.821,-11.709,-11.551,-11.361,-11.159,-10.966,-10.800,
--10.664,-10.547,-10.426,-10.277,-10.089,-9.866,-9.634,-9.427,-9.270,-9.171,-9.114,-9.076,-9.034,-8.986,-8.948,-8.945,
--8.996,-9.101,-9.235,-9.366,-9.465,-9.516,-9.521,-9.490,-9.433,-9.349,-9.231,-9.069,-8.856,-8.592,-8.291,-7.968,
--7.643,-7.338,-7.067,-6.836,-6.642,-6.468,-6.297,-6.115,-5.922,-5.729,-5.554,-5.411,-5.303,-5.218,-5.143,-5.065,
--4.978,-4.880,-4.772,-4.654,-4.524,-4.385,-4.247,-4.121,-4.011,-3.911,-3.801,-3.660,-3.475,-3.248,-2.994,-2.727,
--2.450,-2.162,-1.858,-1.547,-1.250,-.985,-.754,-.534,-.284,.030,.405,.801,1.161,1.442,1.651,1.835,
-2.058,2.351,2.696,3.035,3.313,3.517,3.692,3.907,4.202,4.553,4.874,5.064,5.071,4.924,4.712,4.522,
-4.384,4.253,4.056,3.772,3.495,3.423,3.780,4.699,6.133,7.853,9.524,10.841,11.634,11.911,11.815,11.529,
-11.190,10.853,10.504,10.124,9.736,9.419,9.283,9.412,9.816,10.420,11.085,11.660,12.038,12.193,12.174,12.078,
-12.003,12.004,12.077,12.172,12.225,12.192,12.070,11.889,11.684,11.474,11.254,11.003,10.710,10.397,10.110,9.899,
-9.790,9.773,9.806,9.852,9.904,9.994,10.181,10.510,10.984,11.555,12.141,12.659,13.053,13.308,13.439,13.477,
-13.454,13.399,13.341,13.309,13.332,13.419,13.558,13.710,13.824,13.851,13.765,13.562,13.258,12.874,12.431,11.947,
-11.438,10.929,10.450,10.038,9.726,9.541,9.495,9.591,9.829,10.202,10.700,11.303,11.974,12.647,13.236,13.651,
-13.823,13.732,13.425,13.004,12.591,12.284,12.120,12.068,12.056,12.015,11.920,11.797,11.713,11.731,11.880,12.146,
-12.482,12.833,13.161,13.450,13.691,13.878,14.001,14.054,14.048,14.005,13.958,13.923,13.901,13.873,13.826,13.762,
-13.705,13.685,13.722,13.815,13.945,14.098,14.275,14.493,14.764,15.081,15.405,15.682,15.873,15.980,16.049,16.149,
-16.342,16.659,17.095,17.627,18.225,18.860,19.495,20.073,20.529,20.819,20.941,20.953,20.934,20.928,20.894,20.697,
-20.166,19.187,17.784,16.137,14.527,13.216,12.345,11.888,11.686,11.549,11.350,11.068,10.770,10.548,10.449,10.459,
-10.523,10.593,10.666,10.778,10.975,11.270,11.623,11.954,12.180,12.255,12.185,12.019,11.817,11.628,11.480,11.385,
-11.351,11.389,11.506,11.703,11.967,12.284,12.647,13.064,13.555,14.134,14.792,15.495,16.195,16.853,17.461,18.041,
-18.623,19.222,19.812,20.331,20.708,20.901,20.920,20.825,20.705,20.633,20.646,20.735,20.861,20.983,21.076,21.131,
-21.152,21.146,21.118,21.080,21.054,21.064,21.128,21.244,21.387,21.519,21.615,21.675,21.723,21.795,21.907,22.054,
-22.205,22.335,22.434,22.517,22.611,22.726,22.852,22.960,23.028,23.054,23.067,23.103,23.184,23.304,23.433,23.543,
-23.628,23.709,23.818,23.976,24.175,24.385,24.575,24.727,24.853,24.972,25.096,25.218,25.320,25.387,25.427,25.465,
-25.530,25.636,25.769,25.904,26.026,26.140,26.271,26.439,26.641,26.843,26.996,27.068,27.065,27.030,27.017,27.060,
-27.156,27.271,27.365,27.413,27.423,27.421,27.435,27.476,27.537,27.597,27.640,27.659,27.654,27.629,27.588,27.533,
-27.465,27.384,27.669,27.499,27.233,26.906,26.570,26.294,26.139,26.147,26.324,26.632,27.005,27.363,27.643,27.813,
-27.866,27.814,27.671,27.448,27.165,26.859,26.589,26.415,26.372,26.445,26.571,26.661,26.637,26.469,26.185,25.851,
-25.547,25.333,25.235,25.246,25.340,25.476,25.614,25.718,25.765,25.752,25.700,25.647,25.628,25.658,25.721,25.783,
-25.810,25.793,25.756,25.744,25.798,25.935,26.138,26.370,26.596,26.795,26.970,27.134,27.301,27.474,27.657,27.853,
-28.071,28.317,28.587,28.863,29.117,29.329,29.501,29.660,29.844,30.082,30.374,30.697,31.011,31.289,31.529,31.751,
-31.979,32.227,32.483,32.720,32.909,33.041,33.128,33.199,33.284,33.402,33.557,33.743,33.944,34.139,34.305,34.418,
-34.466,34.465,34.457,34.506,34.659,34.916,35.207,35.414,35.415,35.151,34.663,34.090,33.612,33.376,33.431,33.715,
-34.094,34.428,34.634,34.710,34.713,34.713,34.751,34.822,34.901,34.969,35.034,35.127,35.280,35.501,35.763,36.025,
-36.255,36.452,36.646,36.875,37.161,37.493,37.831,38.134,38.377,38.573,38.754,38.957,39.198,39.468,39.742,39.998,
-40.228,40.446,40.674,40.928,41.211,41.516,41.833,42.162,42.507,42.874,43.256,43.629,43.962,44.236,44.457,44.661,
-44.891,45.179,45.515,45.852,46.128,46.295,46.347,46.321,46.271,46.239,46.230,46.214,46.154,46.031,45.856,45.667,
-45.499,45.364,45.254,45.152,45.056,44.987,44.974,45.022,45.101,45.147,45.100,44.934,44.678,44.400,44.159,43.973,
-43.804,43.587,43.280,42.895,42.505,42.205,42.068,42.114,42.309,42.596,42.931,43.296,43.680,44.057,44.368,44.531,
-44.473,44.173,43.680,43.090,42.516,42.035,41.675,41.412,41.198,40.994,40.781,40.566,40.366,40.198,40.065,39.958,
-39.856,39.736,39.578,39.375,39.134,38.879,38.640,38.441,38.292,38.188,38.109,38.037,37.960,37.873,37.777,37.669,
-37.545,37.403,37.247,37.089,36.941,36.809,36.686,36.555,36.396,36.206,35.995,35.785,35.594,35.432,35.293,35.164,
-35.034,34.899,34.764,34.633,34.508,34.393,34.293,34.221,34.191,34.212,34.283,34.388,34.508,34.631,34.750,34.864,
-34.966,35.038,35.060,35.018,34.919,34.796,34.691,34.636,34.644,34.699,34.775,34.852,34.921,34.982,35.031,35.051,
-35.021,34.929,34.789,34.643,34.540,34.515,34.567,34.663,34.756,34.811,34.817,34.782,34.717,34.618,34.475,34.281,
-34.045,33.793,33.549,33.307,33.029,32.660,32.164,31.551,30.885,30.240,29.660,29.124,28.564,27.911,27.153,26.358,
-25.642,25.098,24.737,24.469,24.159,23.706,23.111,22.484,21.975,21.679,21.570,21.509,21.323,20.907,20.299,19.661,
-19.196,19.034,19.165,19.442,19.663,19.672,19.429,19.008,18.544,18.151,17.867,17.655,17.443,17.173,16.836,16.468,
-16.117,15.813,15.551,15.298,15.021,14.702,14.347,13.978,13.615,13.266,12.929,12.595,12.264,11.940,11.628,11.327,
-11.028,10.716,10.383,10.034,9.684,9.350,9.043,8.759,8.484,8.205,7.916,7.624,7.335,7.055,6.779,6.498,
-6.208,5.915,5.632,5.366,5.107,4.824,4.481,4.057,3.565,3.055,2.589,2.216,1.940,1.724,1.507,1.248,
-.940,.618,.330,.102,-.081,-.269,-.516,-.853,-1.265,-1.707,-2.127,-2.498,-2.828,-3.147,-3.485,-3.847,
--4.218,-4.571,-4.887,-5.170,-5.437,-5.709,-5.996,-6.293,-6.592,-6.887,-7.186,-7.497,-7.828,-8.171,-8.512,-8.833,
--9.133,-9.423,-9.720,-10.036,-10.371,-10.707,-11.027,-11.321,-11.595,-11.865,-12.149,-12.456,-12.783,-13.120,-13.459,-13.794,
--14.121,-14.438,-14.740,-15.027,-15.304,-15.581,-15.875,-16.193,-16.529,-16.860,-17.163,-17.420,-17.634,-17.826,-18.023,-18.243,
--18.485,-18.730,-18.954,-19.142,-19.296,-19.436,-19.582,-19.751,-19.941,-20.141,-20.333,-20.506,-20.660,-20.804,-20.949,-21.102,
--21.261,-21.419,-21.566,-21.699,-21.821,-21.943,-22.078,-22.231,-22.401,-22.578,-22.750,-22.907,-23.049,-23.181,-23.316,-23.461,
--23.619,-23.783,-23.944,-24.091,-24.219,-24.325,-24.416,-24.494,-24.564,-24.624,-24.668,-24.692,-24.690,-24.665,-24.625,-24.584,
--24.554,-24.543,-24.547,-24.555,-24.554,-24.534,-24.497,-24.449,-24.400,-24.352,-24.304,-24.249,-24.185,-24.121,-24.072,-24.047,
--24.050,-24.066,-24.077,-24.066,-24.032,-23.988,-23.952,-23.934,-23.933,-23.932,-23.919,-23.887,-23.848,-23.817,-23.804,-23.810,
--23.819,-23.814,-23.786,-23.733,-23.666,-23.589,-23.504,-23.403,-23.285,-23.156,-23.034,-22.939,-22.883,-22.855,-22.831,-22.777,
--22.669,-22.499,-22.282,-22.042,-21.806,-21.593,-21.410,-21.254,-21.118,-20.993,-20.874,-20.762,-20.661,-20.575,-20.504,-20.444,
--20.383,-20.315,-20.236,-20.148,-20.059,-19.972,-19.888,-19.809,-19.747,-19.733,-19.802,-19.987,-20.288,-20.667,-21.054,-21.372,
--21.570,-21.639,-21.607,-21.518,-21.404,-21.278,-21.141,-21.005,-20.899,-20.869,-20.946,-21.125,-21.361,-21.582,-21.729,-21.780,
--21.755,-21.699,-21.651,-21.632,-21.638,-21.663,-21.702,-21.762,-21.845,-21.943,-22.039,-22.123,-22.205,-22.304,-22.435,-22.579,
--22.685,-22.695,-22.592,-22.431,-22.311,-22.322,-22.459,-22.603,-22.565,-22.201,-21.529,-20.767,-20.257,-20.299,-20.994,-22.169,
--23.451,-24.442,-24.910,-24.880,-24.589,-24.339,-24.329,-24.565,-24.903,-25.157,-25.235,-25.181,-25.137,-25.233,-25.493,-25.813,
--26.019,-25.962,-25.603,-25.031,-24.413,-23.910,-23.615,-23.522,-23.556,-23.625,-23.666,-23.661,-23.635,-23.624,-23.656,-23.742,
--23.872,-24.030,-24.203,-24.384,-24.575,-24.782,-25.010,-25.264,-25.547,-25.869,-26.242,-26.677,-27.178,-27.737,-28.322,-28.896,
--29.421,-29.872,-30.251,-30.572,-30.853,-31.102,-31.313,-31.472,-31.569,-31.615,-31.631,-31.645,-31.670,-31.704,-31.730,-31.737,
--31.727,-31.721,-31.742,-31.804,-31.893,-31.978,-32.025,-32.022,-31.987,-31.961,-31.985,-32.077,-32.217,-32.363,-32.472,-32.521,
--32.527,-32.528,-32.569,-32.671,-32.826,-32.996,-33.137,-33.218,-33.236,-33.207,-33.161,-33.122,-33.097,-33.082,-33.067,-33.044,
--33.014,-32.983,-32.955,-32.930,-32.903,-32.867,-32.818,-32.757,-32.688,-32.614,-32.537,-32.457,-32.373,-32.288,-32.206,-32.129,
--32.058,-31.988,-31.914,-31.832,-31.742,-31.645,-31.540,-31.427,-31.302,-31.168,-31.034,-30.911,-30.808,-30.723,-30.644,-30.553,
--30.438,-30.306,-30.177,-30.081,-30.031,-30.024,-30.032,-30.021,-29.964,-29.860,-29.726,-29.590,-29.475,-29.386,-29.315,-29.247,
--29.170,-29.082,-28.987,-28.887,-28.778,-28.649,-28.491,-28.300,-28.082,-27.851,-27.622,-27.407,-27.210,-27.033,-26.876,-26.739,
--26.619,-26.517,-26.425,-26.338,-26.248,-26.147,-26.033,-25.908,-25.779,-25.654,-25.545,-25.455,-25.382,-25.311,-25.224,-25.107,
--24.955,-24.778,-24.595,-24.429,-24.289,-24.176,-24.079,-23.989,-23.900,-23.814,-23.733,-23.659,-23.586,-23.506,-23.415,-23.317,
--23.226,-23.159,-23.125,-23.126,-23.151,-23.187,-23.219,-23.238,-23.235,-23.204,-23.142,-23.048,-22.932,-22.812,-22.705,-22.625,
--22.568,-22.520,-22.458,-22.366,-22.237,-22.081,-21.912,-21.743,-21.581,-21.427,-21.279,-21.138,-21.006,-20.885,-20.771,-20.659,
--20.543,-20.424,-20.311,-20.216,-20.144,-20.092,-20.046,-19.989,-19.912,-19.821,-19.729,-19.650,-19.587,-19.528,-19.453,-19.347,
--19.208,-19.050,-18.896,-18.762,-18.654,-18.560,-18.467,-18.364,-18.253,-18.146,-18.058,-17.999,-17.971,-17.966,-17.975,-17.987,
--17.996,-17.993,-17.972,-17.927,-17.858,-17.777,-17.699,-17.645,-17.628,-17.649,-17.699,-17.760,-17.820,-17.873,-17.923,-17.978,
--18.042,-18.111,-18.171,-18.206,-18.199,-18.142,-18.042,-17.913,-17.776,-17.649,-17.543,-17.452,-17.361,-17.250,-17.107,-16.930,
--16.735,-16.543,-16.372,-16.227,-16.093,-15.949,-15.773,-15.559,-15.317,-15.070,-14.844,-14.653,-14.501,-14.379,-14.277,-14.183,
--14.092,-13.996,-13.888,-13.763,-13.619,-13.462,-13.304,-13.157,-13.027,-12.914,-12.809,-12.703,-12.597,-12.500,-12.426,-12.384,
--12.372,-12.376,-12.379,-12.363,-12.328,-12.281,-12.237,-12.207,-12.196,-12.199,-12.209,-12.223,-12.239,-12.261,-12.289,-12.319,
--12.345,-12.361,-12.368,-12.372,-12.380,-12.401,-12.435,-12.476,-12.519,-12.557,-12.591,-12.627,-12.665,-12.707,-12.744,-12.769,
--12.774,-12.762,-12.742,-12.729,-12.734,-12.762,-12.807,-12.855,-12.890,-12.901,-12.885,-12.849,-12.806,-12.771,-12.755,-12.761,
--12.784,-12.814,-12.841,-12.859,-12.869,-12.873,-12.876,-12.878,-12.870,-12.843,-12.785,-12.692,-12.571,-12.439,-12.313,-12.209,
--12.134,-12.085,-12.054,-12.033,-12.018,-12.008,-12.004,-12.002,-11.993,-11.960,-11.886,-11.766,-11.604,-11.421,-11.245,-11.098,
--10.986,-10.889,-10.773,-10.603,-10.361,-10.065,-9.759,-9.505,-9.349,-9.301,-9.328,-9.371,-9.372,-9.308,-9.200,-9.101,
--9.071,-9.142,-9.303,-9.505,-9.689,-9.811,-9.860,-9.856,-9.831,-9.802,-9.765,-9.691,-9.548,-9.315,-8.995,-8.618,
--8.222,-7.847,-7.517,-7.241,-7.008,-6.801,-6.601,-6.396,-6.184,-5.972,-5.774,-5.598,-5.451,-5.330,-5.229,-5.141,
--5.059,-4.980,-4.896,-4.801,-4.694,-4.576,-4.457,-4.350,-4.261,-4.179,-4.085,-3.954,-3.774,-3.553,-3.313,-3.079,
--2.857,-2.630,-2.374,-2.073,-1.744,-1.427,-1.165,-.970,-.811,-.623,-.350,.023,.452,.859,1.182,1.409,
-1.591,1.804,2.101,2.472,2.853,3.170,3.390,3.548,3.720,3.974,4.316,4.675,4.946,5.048,4.975,4.793,
-4.593,4.428,4.279,4.086,3.807,3.485,3.268,3.358,3.919,4.988,6.442,8.040,9.512,10.654,11.383,11.725,
-11.771,11.612,11.308,10.900,10.437,10.001,9.708,9.674,9.960,10.541,11.296,12.047,12.623,12.915,12.919,12.722,
-12.463,12.269,12.207,12.266,12.378,12.458,12.455,12.361,12.211,12.040,11.862,11.656,11.392,11.059,10.690,10.354,
-10.132,10.068,10.152,10.329,10.532,10.725,10.925,11.188,11.575,12.111,12.769,13.480,14.161,14.751,15.223,15.580,
-15.837,16.005,16.089,16.102,16.071,16.043,16.069,16.184,16.390,16.645,16.881,17.021,17.006,16.811,16.449,15.959,
-15.393,14.797,14.203,13.622,13.059,12.517,12.014,11.586,11.281,11.146,11.210,11.474,11.899,12.418,12.944,13.388,
-13.682,13.793,13.730,13.543,13.309,13.101,12.963,12.903,12.887,12.874,12.833,12.773,12.730,12.757,12.889,13.124,
-13.429,13.750,14.038,14.265,14.422,14.511,14.538,14.509,14.436,14.344,14.259,14.204,14.183,14.177,14.160,14.115,
-14.051,13.999,13.990,14.038,14.125,14.213,14.273,14.303,14.335,14.419,14.591,14.853,15.170,15.491,15.771,15.995,
-16.178,16.353,16.563,16.853,17.263,17.821,18.526,19.335,20.163,20.907,21.486,21.883,22.147,22.353,22.545,22.679,
-22.623,22.215,21.358,20.088,18.579,17.078,15.783,14.759,13.916,13.079,12.102,10.958,9.761,8.708,7.975,7.630,
-7.613,7.786,8.009,8.211,8.399,8.621,8.908,9.240,9.543,9.734,9.761,9.634,9.409,9.159,8.940,8.776,
-8.672,8.628,8.660,8.795,9.064,9.480,10.040,10.722,11.499,12.344,13.230,14.125,14.993,15.802,16.535,17.197,
-17.815,18.418,19.021,19.605,20.129,20.541,20.807,20.928,20.935,20.879,20.810,20.762,20.750,20.775,20.829,20.903,
-20.981,21.049,21.092,21.109,21.110,21.122,21.168,21.257,21.375,21.494,21.586,21.646,21.689,21.747,21.844,21.979,
-22.131,22.268,22.374,22.455,22.530,22.620,22.722,22.816,22.877,22.896,22.892,22.900,22.951,23.048,23.168,23.277,
-23.357,23.420,23.501,23.632,23.819,24.033,24.231,24.385,24.495,24.595,24.719,24.883,25.066,25.234,25.356,25.434,
-25.491,25.562,25.662,25.780,25.891,25.981,26.061,26.161,26.307,26.501,26.708,26.878,26.975,26.997,26.980,26.970,
-26.997,27.057,27.122,27.166,27.181,27.188,27.216,27.282,27.376,27.470,27.535,27.559,27.561,27.568,27.602,27.663,
-27.722,27.737,27.669,27.677,27.467,27.125,26.715,26.318,26.013,25.851,25.848,25.982,26.205,26.456,26.687,26.871,
-27.004,27.094,27.141,27.128,27.030,26.837,26.570,26.291,26.079,25.996,26.051,26.194,26.332,26.379,26.293,26.093,
-25.841,25.611,25.451,25.369,25.338,25.319,25.287,25.235,25.170,25.107,25.054,25.013,24.981,24.955,24.935,24.918,
-24.904,24.899,24.916,24.975,25.097,25.284,25.522,25.773,25.999,26.176,26.307,26.423,26.563,26.754,27.000,27.283,
-27.570,27.832,28.057,28.248,28.419,28.585,28.762,28.962,29.192,29.458,29.754,30.065,30.369,30.648,30.895,31.121,
-31.345,31.581,31.829,32.071,32.278,32.429,32.526,32.592,32.664,32.775,32.940,33.143,33.354,33.535,33.659,33.717,
-33.722,33.706,33.711,33.778,33.930,34.155,34.403,34.590,34.629,34.467,34.117,33.663,33.241,32.979,32.948,33.134,
-33.443,33.758,33.983,34.090,34.119,34.138,34.206,34.336,34.502,34.657,34.777,34.869,34.970,35.118,35.329,35.582,
-35.841,36.074,36.278,36.476,36.703,36.978,37.291,37.610,37.897,38.132,38.323,38.498,38.691,38.916,39.170,39.432,
-39.682,39.913,40.133,40.358,40.603,40.876,41.176,41.502,41.850,42.218,42.594,42.958,43.284,43.555,43.772,43.962,
-44.164,44.412,44.707,45.019,45.292,45.476,45.553,45.546,45.507,45.484,45.500,45.534,45.547,45.501,45.388,45.233,
-45.074,44.943,44.846,44.771,44.703,44.640,44.602,44.608,44.657,44.722,44.753,44.712,44.594,44.430,44.268,44.139,
-44.031,43.897,43.681,43.361,42.962,42.551,42.207,41.975,41.864,41.846,41.891,41.984,42.128,42.323,42.543,42.733,
-42.825,42.771,42.566,42.254,41.905,41.584,41.319,41.102,40.905,40.702,40.484,40.265,40.064,39.897,39.765,39.659,
-39.564,39.464,39.346,39.200,39.025,38.827,38.627,38.447,38.307,38.210,38.142,38.074,37.983,37.857,37.704,37.541,
-37.385,37.241,37.105,36.969,36.830,36.694,36.567,36.451,36.337,36.210,36.056,35.873,35.671,35.469,35.286,35.133,
-35.014,34.922,34.848,34.783,34.715,34.636,34.544,34.443,34.347,34.277,34.247,34.262,34.317,34.400,34.498,34.603,
-34.709,34.805,34.878,34.909,34.889,34.824,34.738,34.662,34.622,34.624,34.662,34.720,34.782,34.841,34.888,34.909,
-34.882,34.789,34.632,34.446,34.288,34.216,34.254,34.381,34.533,34.638,34.652,34.570,34.425,34.258,34.091,33.925,
-33.744,33.544,33.337,33.139,32.952,32.742,32.454,32.036,31.480,30.832,30.169,29.559,29.015,28.489,27.913,27.245,
-26.512,25.799,25.197,24.744,24.393,24.035,23.567,22.958,22.280,21.664,21.222,20.979,20.847,20.681,20.363,19.879,
-19.330,18.884,18.676,18.737,18.975,19.220,19.315,19.184,18.857,18.439,18.040,17.723,17.483,17.269,17.025,16.724,
-16.382,16.035,15.718,15.440,15.184,14.922,14.631,14.306,13.955,13.594,13.235,12.885,12.547,12.222,11.911,11.612,
-11.317,11.015,10.694,10.351,9.995,9.640,9.304,8.994,8.709,8.437,8.168,7.894,7.613,7.327,7.034,6.734,
-6.424,6.114,5.816,5.542,5.289,5.034,4.741,4.375,3.930,3.436,2.954,2.545,2.243,2.032,1.855,1.648,
-1.372,1.034,.684,.376,.137,-.051,-.244,-.502,-.853,-1.279,-1.728,-2.147,-2.509,-2.824,-3.129,-3.459,
--3.823,-4.206,-4.578,-4.915,-5.211,-5.481,-5.744,-6.016,-6.297,-6.583,-6.872,-7.166,-7.477,-7.810,-8.160,-8.512,
--8.851,-9.167,-9.463,-9.753,-10.047,-10.349,-10.655,-10.954,-11.241,-11.517,-11.793,-12.079,-12.383,-12.705,-13.042,-13.389,
--13.739,-14.083,-14.411,-14.714,-14.993,-15.258,-15.526,-15.816,-16.134,-16.469,-16.797,-17.094,-17.346,-17.562,-17.764,-17.977,
--18.213,-18.464,-18.709,-18.924,-19.102,-19.252,-19.395,-19.555,-19.739,-19.944,-20.155,-20.356,-20.537,-20.699,-20.847,-20.989,
--21.129,-21.268,-21.407,-21.551,-21.701,-21.860,-22.026,-22.194,-22.359,-22.518,-22.671,-22.819,-22.966,-23.112,-23.257,-23.401,
--23.546,-23.697,-23.855,-24.017,-24.176,-24.321,-24.444,-24.543,-24.624,-24.694,-24.756,-24.807,-24.834,-24.829,-24.791,-24.734,
--24.681,-24.653,-24.658,-24.688,-24.720,-24.733,-24.717,-24.679,-24.637,-24.606,-24.590,-24.577,-24.550,-24.501,-24.435,-24.370,
--24.325,-24.308,-24.311,-24.316,-24.305,-24.276,-24.240,-24.215,-24.210,-24.221,-24.233,-24.231,-24.209,-24.176,-24.146,-24.132,
--24.133,-24.136,-24.129,-24.102,-24.058,-24.005,-23.947,-23.879,-23.790,-23.673,-23.534,-23.393,-23.277,-23.205,-23.175,-23.164,
--23.138,-23.062,-22.921,-22.721,-22.484,-22.240,-22.011,-21.811,-21.639,-21.490,-21.358,-21.240,-21.138,-21.054,-20.988,-20.932,
--20.874,-20.802,-20.708,-20.598,-20.484,-20.380,-20.294,-20.225,-20.169,-20.125,-20.110,-20.152,-20.280,-20.505,-20.806,-21.135,
--21.431,-21.646,-21.759,-21.780,-21.734,-21.646,-21.532,-21.405,-21.279,-21.181,-21.144,-21.189,-21.311,-21.477,-21.645,-21.777,
--21.865,-21.923,-21.977,-22.040,-22.106,-22.153,-22.167,-22.148,-22.117,-22.107,-22.139,-22.222,-22.348,-22.501,-22.661,-22.805,
--22.903,-22.927,-22.871,-22.761,-22.658,-22.626,-22.680,-22.763,-22.746,-22.502,-21.993,-21.334,-20.778,-20.621,-21.053,-22.051,
--23.366,-24.622,-25.489,-25.823,-25.717,-25.426,-25.224,-25.262,-25.519,-25.849,-26.093,-26.178,-26.149,-26.124,-26.204,-26.406,
--26.647,-26.803,-26.776,-26.549,-26.182,-25.778,-25.424,-25.157,-24.966,-24.817,-24.685,-24.567,-24.477,-24.433,-24.439,-24.494,
--24.590,-24.727,-24.910,-25.142,-25.419,-25.728,-26.051,-26.377,-26.711,-27.072,-27.485,-27.971,-28.531,-29.145,-29.773,-30.369,
--30.887,-31.301,-31.612,-31.844,-32.030,-32.203,-32.372,-32.528,-32.647,-32.707,-32.708,-32.671,-32.629,-32.607,-32.610,-32.621,
--32.617,-32.585,-32.538,-32.505,-32.512,-32.569,-32.655,-32.733,-32.775,-32.776,-32.764,-32.779,-32.852,-32.978,-33.124,-33.240,
--33.295,-33.294,-33.275,-33.290,-33.373,-33.523,-33.700,-33.854,-33.947,-33.971,-33.948,-33.912,-33.890,-33.888,-33.893,-33.888,
--33.865,-33.828,-33.792,-33.764,-33.741,-33.710,-33.659,-33.583,-33.490,-33.393,-33.305,-33.228,-33.152,-33.069,-32.974,-32.871,
--32.770,-32.679,-32.602,-32.530,-32.456,-32.373,-32.278,-32.175,-32.066,-31.951,-31.829,-31.704,-31.578,-31.460,-31.349,-31.244,
--31.132,-31.008,-30.872,-30.739,-30.631,-30.562,-30.536,-30.536,-30.536,-30.511,-30.450,-30.358,-30.250,-30.143,-30.043,-29.948,
--29.851,-29.747,-29.637,-29.525,-29.417,-29.308,-29.191,-29.052,-28.884,-28.686,-28.468,-28.240,-28.015,-27.801,-27.600,-27.414,
--27.242,-27.088,-26.952,-26.838,-26.744,-26.662,-26.581,-26.488,-26.374,-26.239,-26.092,-25.951,-25.829,-25.731,-25.650,-25.567,
--25.461,-25.324,-25.159,-24.985,-24.823,-24.685,-24.569,-24.464,-24.357,-24.243,-24.125,-24.016,-23.925,-23.852,-23.791,-23.728,
--23.656,-23.575,-23.494,-23.424,-23.371,-23.334,-23.308,-23.285,-23.258,-23.223,-23.180,-23.129,-23.074,-23.019,-22.970,-22.933,
--22.908,-22.891,-22.874,-22.845,-22.797,-22.729,-22.639,-22.528,-22.394,-22.238,-22.066,-21.891,-21.731,-21.598,-21.496,-21.409,
--21.315,-21.192,-21.036,-20.860,-20.688,-20.543,-20.435,-20.355,-20.285,-20.208,-20.120,-20.031,-19.952,-19.889,-19.835,-19.769,
--19.675,-19.547,-19.394,-19.234,-19.086,-18.956,-18.838,-18.721,-18.601,-18.480,-18.372,-18.291,-18.240,-18.216,-18.203,-18.190,
--18.171,-18.150,-18.133,-18.124,-18.122,-18.121,-18.113,-18.095,-18.069,-18.040,-18.013,-17.990,-17.971,-17.957,-17.953,-17.967,
--18.006,-18.070,-18.151,-18.231,-18.288,-18.303,-18.263,-18.170,-18.033,-17.874,-17.711,-17.560,-17.421,-17.289,-17.149,-16.993,
--16.822,-16.645,-16.482,-16.345,-16.233,-16.131,-16.014,-15.859,-15.659,-15.424,-15.182,-14.963,-14.788,-14.663,-14.576,-14.505,
--14.430,-14.334,-14.210,-14.060,-13.892,-13.717,-13.549,-13.399,-13.271,-13.165,-13.068,-12.970,-12.863,-12.750,-12.641,-12.551,
--12.493,-12.465,-12.457,-12.453,-12.441,-12.418,-12.391,-12.373,-12.374,-12.395,-12.432,-12.474,-12.515,-12.553,-12.588,-12.622,
--12.654,-12.679,-12.695,-12.701,-12.700,-12.698,-12.703,-12.715,-12.735,-12.760,-12.789,-12.824,-12.870,-12.926,-12.991,-13.052,
--13.098,-13.118,-13.109,-13.080,-13.046,-13.023,-13.024,-13.050,-13.093,-13.139,-13.172,-13.184,-13.173,-13.146,-13.115,-13.091,
--13.082,-13.086,-13.097,-13.108,-13.111,-13.105,-13.096,-13.088,-13.085,-13.083,-13.073,-13.043,-12.985,-12.896,-12.786,-12.667,
--12.553,-12.453,-12.370,-12.299,-12.236,-12.179,-12.128,-12.084,-12.047,-12.007,-11.953,-11.871,-11.757,-11.620,-11.481,-11.364,
--11.279,-11.212,-11.128,-10.978,-10.731,-10.389,-10.003,-9.654,-9.422,-9.351,-9.424,-9.570,-9.692,-9.716,-9.623,-9.461,
--9.315,-9.268,-9.357,-9.561,-9.809,-10.024,-10.155,-10.196,-10.182,-10.159,-10.151,-10.147,-10.105,-9.977,-9.735,-9.387,
--8.973,-8.547,-8.159,-7.830,-7.559,-7.322,-7.094,-6.856,-6.608,-6.361,-6.130,-5.925,-5.748,-5.592,-5.448,-5.314,
--5.193,-5.091,-5.011,-4.947,-4.885,-4.813,-4.727,-4.631,-4.536,-4.445,-4.345,-4.217,-4.041,-3.818,-3.569,-3.330,
--3.125,-2.950,-2.772,-2.546,-2.252,-1.909,-1.575,-1.311,-1.141,-1.032,-.903,-.676,-.320,.124,.569,.929,
-1.175,1.349,1.537,1.812,2.187,2.608,2.988,3.268,3.453,3.608,3.808,4.092,4.425,4.723,4.901,4.923,
-4.818,4.655,4.486,4.321,4.119,3.840,3.492,3.166,3.015,3.192,3.783,4.762,6.002,7.322,8.546,9.556,
-10.299,10.772,11.000,11.017,10.870,10.633,10.406,10.307,10.430,10.815,11.422,12.135,12.800,13.278,13.496,13.465,
-13.276,13.051,12.897,12.864,12.934,13.043,13.123,13.134,13.077,12.982,12.874,12.750,12.579,12.322,11.968,11.555,
-11.159,10.868,10.737,10.763,10.898,11.078,11.266,11.467,11.727,12.096,12.599,13.217,13.895,14.571,15.198,15.755,
-16.235,16.633,16.933,17.115,17.174,17.138,17.071,17.057,17.163,17.418,17.786,18.183,18.502,18.650,18.575,18.280,
-17.815,17.252,16.657,16.072,15.503,14.937,14.357,13.766,13.199,12.713,12.379,12.244,12.322,12.579,12.944,13.328,
-13.653,13.869,13.962,13.957,13.899,13.834,13.796,13.793,13.812,13.830,13.834,13.829,13.844,13.912,14.056,14.271,
-14.523,14.764,14.955,15.076,15.133,15.143,15.125,15.082,15.014,14.924,14.829,14.755,14.727,14.748,14.798,14.842,
-14.850,14.818,14.767,14.729,14.726,14.757,14.800,14.831,14.844,14.864,14.927,15.068,15.291,15.568,15.848,16.078,
-16.224,16.281,16.274,16.257,16.299,16.475,16.845,17.431,18.199,19.066,19.922,20.675,21.292,21.797,22.245,22.664,
-23.019,23.206,23.105,22.648,21.872,20.901,19.890,18.926,17.980,16.919,15.596,13.955,12.098,10.272,8.769,7.802,
-7.417,7.485,7.777,8.071,8.238,8.269,8.230,8.195,8.192,8.190,8.131,7.971,7.710,7.382,7.036,6.699,
-6.374,6.053,5.742,5.482,5.347,5.424,5.781,6.449,7.405,8.592,9.925,11.311,12.665,13.915,15.018,15.960,
-16.758,17.451,18.082,18.685,19.269,19.821,20.310,20.703,20.977,21.122,21.144,21.068,20.927,20.769,20.638,20.569,
-20.574,20.641,20.739,20.836,20.915,20.978,21.045,21.129,21.232,21.336,21.420,21.473,21.509,21.558,21.646,21.780,
-21.941,22.091,22.203,22.274,22.324,22.383,22.465,22.560,22.636,22.669,22.661,22.643,22.657,22.727,22.845,22.976,
-23.083,23.154,23.213,23.302,23.453,23.661,23.887,24.085,24.228,24.332,24.438,24.585,24.779,24.992,25.176,25.297,
-25.360,25.398,25.452,25.542,25.657,25.767,25.853,25.922,26.002,26.126,26.299,26.494,26.667,26.780,26.827,26.832,
-26.829,26.841,26.871,26.905,26.935,26.973,27.041,27.158,27.312,27.465,27.565,27.581,27.522,27.437,27.391,27.426,
-27.534,27.663,27.733,27.677,27.098,26.860,26.519,26.147,25.824,25.605,25.508,25.512,25.577,25.657,25.721,25.764,
-25.803,25.868,25.975,26.115,26.250,26.327,26.306,26.187,26.014,25.859,25.784,25.811,25.907,26.005,26.039,25.980,
-25.845,25.680,25.531,25.410,25.300,25.162,24.974,24.745,24.516,24.335,24.235,24.213,24.237,24.266,24.271,24.246,
-24.209,24.190,24.215,24.300,24.446,24.646,24.881,25.126,25.351,25.535,25.674,25.786,25.906,26.072,26.307,26.604,
-26.929,27.235,27.482,27.662,27.794,27.918,28.075,28.290,28.563,28.875,29.197,29.505,29.783,30.029,30.251,30.464,
-30.680,30.908,31.147,31.381,31.591,31.758,31.876,31.960,32.039,32.145,32.300,32.501,32.720,32.917,33.056,33.122,
-33.130,33.114,33.118,33.174,33.292,33.452,33.613,33.722,33.734,33.624,33.404,33.120,32.843,32.650,32.593,32.679,
-32.873,33.109,33.321,33.471,33.563,33.633,33.722,33.857,34.030,34.213,34.374,34.501,34.610,34.735,34.909,35.140,
-35.412,35.691,35.948,36.173,36.379,36.591,36.828,37.089,37.358,37.610,37.828,38.015,38.185,38.360,38.554,38.770,
-39.003,39.241,39.478,39.715,39.957,40.212,40.488,40.792,41.127,41.492,41.875,42.254,42.603,42.898,43.135,43.329,
-43.515,43.725,43.974,44.242,44.486,44.655,44.721,44.692,44.614,44.544,44.522,44.555,44.612,44.652,44.641,44.577,
-44.481,44.380,44.292,44.217,44.141,44.059,43.981,43.928,43.920,43.955,44.005,44.034,44.018,43.960,43.889,43.839,
-43.819,43.804,43.744,43.594,43.334,42.988,42.604,42.228,41.886,41.577,41.290,41.027,40.810,40.671,40.631,40.681,
-40.781,40.876,40.926,40.923,40.883,40.831,40.779,40.713,40.609,40.446,40.227,39.979,39.741,39.544,39.401,39.303,
-39.232,39.169,39.099,39.013,38.904,38.767,38.606,38.437,38.283,38.163,38.080,38.018,37.945,37.831,37.666,37.465,
-37.259,37.076,36.932,36.819,36.717,36.606,36.478,36.339,36.202,36.075,35.956,35.836,35.702,35.550,35.382,35.212,
-35.057,34.933,34.852,34.816,34.817,34.837,34.853,34.845,34.803,34.732,34.647,34.566,34.504,34.465,34.446,34.445,
-34.459,34.489,34.532,34.579,34.616,34.632,34.624,34.605,34.590,34.596,34.626,34.673,34.721,34.758,34.774,34.763,
-34.716,34.622,34.476,34.288,34.097,33.954,33.904,33.960,34.087,34.216,34.276,34.224,34.068,33.852,33.632,33.443,
-33.286,33.144,32.997,32.843,32.694,32.554,32.400,32.182,31.850,31.383,30.813,30.210,29.646,29.149,28.688,28.191,
-27.592,26.882,26.115,25.378,24.737,24.200,23.711,23.194,22.616,22.014,21.486,21.128,20.969,20.942,20.912,20.739,
-20.362,19.830,19.281,18.866,18.674,18.692,18.813,18.902,18.855,18.645,18.318,17.953,17.618,17.337,17.094,16.850,
-16.575,16.265,15.936,15.612,15.309,15.029,14.759,14.485,14.196,13.890,13.569,13.240,12.909,12.579,12.255,11.937,
-11.624,11.310,10.988,10.652,10.304,9.951,9.605,9.276,8.969,8.681,8.406,8.135,7.863,7.584,7.293,6.988,
-6.669,6.341,6.019,5.719,5.447,5.194,4.928,4.613,4.223,3.764,3.278,2.825,2.458,2.193,2.000,1.819,
-1.590,1.290,.938,.588,.291,.064,-.121,-.320,-.590,-.950,-1.376,-1.814,-2.214,-2.552,-2.844,-3.131,
--3.449,-3.814,-4.209,-4.602,-4.963,-5.278,-5.556,-5.811,-6.062,-6.316,-6.577,-6.848,-7.134,-7.444,-7.782,-8.141,
--8.509,-8.866,-9.202,-9.513,-9.804,-10.087,-10.367,-10.647,-10.928,-11.208,-11.492,-11.782,-12.082,-12.395,-12.719,-13.055,
--13.398,-13.744,-14.086,-14.412,-14.715,-14.996,-15.265,-15.537,-15.827,-16.134,-16.450,-16.752,-17.024,-17.264,-17.484,-17.706,
--17.947,-18.209,-18.477,-18.726,-18.941,-19.120,-19.277,-19.434,-19.606,-19.797,-20.001,-20.205,-20.399,-20.582,-20.754,-20.917,
--21.070,-21.213,-21.348,-21.483,-21.631,-21.799,-21.985,-22.175,-22.355,-22.513,-22.650,-22.779,-22.915,-23.067,-23.233,-23.401,
--23.560,-23.705,-23.842,-23.981,-24.129,-24.284,-24.436,-24.570,-24.682,-24.775,-24.857,-24.932,-24.993,-25.026,-25.018,-24.968,
--24.896,-24.829,-24.797,-24.810,-24.854,-24.904,-24.932,-24.926,-24.896,-24.861,-24.840,-24.835,-24.837,-24.826,-24.795,-24.748,
--24.703,-24.673,-24.663,-24.661,-24.649,-24.618,-24.569,-24.519,-24.487,-24.481,-24.494,-24.511,-24.516,-24.506,-24.488,-24.476,
--24.476,-24.481,-24.480,-24.461,-24.426,-24.385,-24.350,-24.322,-24.289,-24.226,-24.119,-23.968,-23.798,-23.645,-23.539,-23.490,
--23.480,-23.471,-23.427,-23.323,-23.155,-22.940,-22.702,-22.465,-22.242,-22.042,-21.862,-21.704,-21.568,-21.456,-21.371,-21.311,
--21.268,-21.229,-21.183,-21.118,-21.034,-20.939,-20.842,-20.753,-20.677,-20.610,-20.553,-20.513,-20.507,-20.561,-20.694,-20.909,
--21.185,-21.481,-21.751,-21.954,-22.068,-22.089,-22.029,-21.912,-21.769,-21.632,-21.533,-21.495,-21.523,-21.608,-21.725,-21.849,
--21.965,-22.075,-22.186,-22.304,-22.421,-22.514,-22.558,-22.539,-22.469,-22.381,-22.317,-22.314,-22.391,-22.540,-22.734,-22.935,
--23.101,-23.200,-23.219,-23.176,-23.115,-23.086,-23.115,-23.173,-23.176,-23.022,-22.651,-22.109,-21.567,-21.268,-21.427,-22.123,
--23.238,-24.494,-25.570,-26.232,-26.434,-26.316,-26.113,-26.032,-26.157,-26.436,-26.734,-26.933,-26.995,-26.974,-26.964,-27.037,
--27.200,-27.401,-27.567,-27.645,-27.624,-27.524,-27.365,-27.155,-26.885,-26.556,-26.190,-25.839,-25.558,-25.383,-25.319,-25.340,
--25.419,-25.542,-25.721,-25.976,-26.317,-26.730,-27.179,-27.626,-28.052,-28.467,-28.899,-29.377,-29.912,-30.487,-31.066,-31.603,
--32.064,-32.429,-32.698,-32.889,-33.027,-33.142,-33.257,-33.382,-33.508,-33.615,-33.678,-33.686,-33.645,-33.580,-33.516,-33.469,
--33.437,-33.404,-33.358,-33.305,-33.264,-33.261,-33.310,-33.398,-33.492,-33.557,-33.578,-33.573,-33.579,-33.631,-33.739,-33.879,
--34.005,-34.079,-34.095,-34.082,-34.086,-34.146,-34.267,-34.421,-34.563,-34.656,-34.691,-34.686,-34.669,-34.662,-34.667,-34.672,
--34.661,-34.632,-34.595,-34.567,-34.552,-34.542,-34.514,-34.452,-34.353,-34.230,-34.107,-34.002,-33.918,-33.840,-33.752,-33.645,
--33.524,-33.406,-33.304,-33.223,-33.152,-33.078,-32.989,-32.884,-32.770,-32.657,-32.548,-32.441,-32.329,-32.208,-32.083,-31.960,
--31.844,-31.735,-31.626,-31.511,-31.389,-31.269,-31.164,-31.084,-31.032,-30.998,-30.968,-30.928,-30.871,-30.797,-30.708,-30.608,
--30.497,-30.374,-30.240,-30.102,-29.966,-29.841,-29.729,-29.623,-29.515,-29.393,-29.251,-29.086,-28.901,-28.702,-28.494,-28.282,
--28.068,-27.857,-27.656,-27.472,-27.315,-27.188,-27.090,-27.009,-26.928,-26.832,-26.710,-26.565,-26.411,-26.262,-26.131,-26.017,
--25.910,-25.795,-25.665,-25.523,-25.380,-25.249,-25.135,-25.029,-24.915,-24.778,-24.618,-24.447,-24.288,-24.162,-24.079,-24.034,
--24.008,-23.982,-23.940,-23.878,-23.800,-23.713,-23.625,-23.538,-23.455,-23.376,-23.302,-23.235,-23.175,-23.123,-23.080,-23.045,
--23.017,-22.996,-22.981,-22.971,-22.967,-22.969,-22.973,-22.972,-22.953,-22.900,-22.806,-22.674,-22.520,-22.369,-22.242,-22.142,
--22.057,-21.959,-21.825,-21.646,-21.436,-21.222,-21.035,-20.889,-20.781,-20.692,-20.603,-20.501,-20.391,-20.279,-20.175,-20.078,
--19.980,-19.873,-19.754,-19.630,-19.510,-19.398,-19.293,-19.182,-19.058,-18.922,-18.786,-18.668,-18.584,-18.537,-18.515,-18.497,
--18.468,-18.423,-18.369,-18.323,-18.298,-18.299,-18.320,-18.349,-18.375,-18.392,-18.395,-18.388,-18.371,-18.347,-18.320,-18.294,
--18.276,-18.272,-18.284,-18.308,-18.334,-18.349,-18.341,-18.302,-18.232,-18.137,-18.030,-17.920,-17.815,-17.713,-17.604,-17.474,
--17.311,-17.112,-16.889,-16.661,-16.450,-16.270,-16.120,-15.988,-15.855,-15.707,-15.545,-15.379,-15.230,-15.113,-15.030,-14.970,
--14.911,-14.829,-14.708,-14.546,-14.351,-14.139,-13.932,-13.744,-13.585,-13.454,-13.344,-13.243,-13.140,-13.031,-12.919,-12.815,
--12.732,-12.677,-12.648,-12.636,-12.628,-12.615,-12.595,-12.574,-12.564,-12.574,-12.606,-12.656,-12.716,-12.778,-12.836,-12.889,
--12.937,-12.980,-13.016,-13.043,-13.059,-13.063,-13.057,-13.046,-13.034,-13.025,-13.024,-13.035,-13.065,-13.115,-13.183,-13.263,
--13.342,-13.407,-13.447,-13.459,-13.448,-13.423,-13.400,-13.388,-13.393,-13.413,-13.440,-13.465,-13.480,-13.483,-13.474,-13.460,
--13.447,-13.438,-13.434,-13.432,-13.425,-13.410,-13.388,-13.364,-13.343,-13.332,-13.328,-13.325,-13.314,-13.283,-13.227,-13.147,
--13.051,-12.946,-12.840,-12.733,-12.625,-12.514,-12.399,-12.286,-12.180,-12.084,-11.996,-11.909,-11.815,-11.712,-11.608,-11.519,
--11.456,-11.418,-11.378,-11.292,-11.119,-10.838,-10.473,-10.093,-9.786,-9.627,-9.640,-9.785,-9.967,-10.084,-10.068,-9.920,
--9.708,-9.535,-9.486,-9.594,-9.824,-10.094,-10.319,-10.448,-10.479,-10.452,-10.417,-10.400,-10.390,-10.346,-10.221,-9.989,
--9.660,-9.273,-8.883,-8.530,-8.231,-7.974,-7.732,-7.481,-7.210,-6.927,-6.653,-6.407,-6.195,-6.011,-5.839,-5.667,
--5.497,-5.341,-5.216,-5.134,-5.090,-5.062,-5.027,-4.967,-4.878,-4.765,-4.634,-4.481,-4.296,-4.070,-3.811,-3.547,
--3.313,-3.130,-2.990,-2.852,-2.666,-2.405,-2.088,-1.770,-1.516,-1.356,-1.259,-1.147,-.938,-.593,-.146,.315,
-.697,.958,1.126,1.287,1.526,1.877,2.306,2.732,3.079,3.322,3.496,3.668,3.893,4.174,4.465,4.696,
-4.819,4.829,4.757,4.643,4.502,4.317,4.060,3.726,3.359,3.052,2.916,3.039,3.454,4.129,4.986,5.929,
-6.869,7.743,8.508,9.142,9.641,10.020,10.315,10.583,10.882,11.257,11.717,12.231,12.736,13.161,13.453,13.598,
-13.628,13.606,13.601,13.660,13.788,13.952,14.096,14.172,14.157,14.062,13.913,13.737,13.538,13.300,13.003,12.644,
-12.251,11.876,11.572,11.373,11.280,11.266,11.303,11.381,11.515,11.738,12.073,12.517,13.041,13.599,14.156,14.692,
-15.209,15.705,16.163,16.547,16.815,16.946,16.958,16.913,16.897,16.986,17.215,17.564,17.958,18.303,18.510,18.525,
-18.344,18.005,17.568,17.098,16.638,16.202,15.780,15.355,14.916,14.477,14.077,13.768,13.595,13.580,13.705,13.921,
-14.163,14.372,14.511,14.578,14.594,14.592,14.600,14.628,14.671,14.713,14.747,14.779,14.834,14.941,15.116,15.347,
-15.591,15.793,15.907,15.919,15.851,15.754,15.676,15.642,15.646,15.660,15.657,15.628,15.592,15.576,15.600,15.659,
-15.725,15.765,15.758,15.706,15.631,15.560,15.515,15.501,15.514,15.552,15.621,15.730,15.882,16.066,16.259,16.425,
-16.536,16.574,16.535,16.436,16.306,16.193,16.156,16.254,16.529,16.982,17.577,18.245,18.919,19.560,20.167,20.760,
-21.351,21.911,22.377,22.673,22.755,22.633,22.358,21.977,21.478,20.778,19.756,18.338,16.571,14.652,12.881,11.555,
-10.845,10.732,11.016,11.414,11.667,11.637,11.325,10.833,10.284,9.767,9.307,8.884,8.469,8.043,7.606,7.158,
-6.682,6.148,5.528,4.822,4.085,3.418,2.952,2.814,3.092,3.823,4.981,6.486,8.224,10.058,11.854,13.499,
-14.917,16.079,17.001,17.735,18.347,18.898,19.430,19.953,20.445,20.862,21.149,21.266,21.203,20.996,20.714,20.446,
-20.263,20.202,20.249,20.361,20.486,20.592,20.672,20.743,20.818,20.901,20.979,21.037,21.078,21.121,21.196,21.322,
-21.492,21.672,21.821,21.919,21.975,22.023,22.098,22.209,22.332,22.429,22.472,22.467,22.453,22.474,22.559,22.694,
-22.841,22.960,23.039,23.103,23.191,23.334,23.526,23.733,23.915,24.053,24.165,24.287,24.449,24.648,24.847,25.002,
-25.086,25.113,25.126,25.170,25.263,25.390,25.516,25.614,25.685,25.753,25.849,25.984,26.142,26.291,26.402,26.469,
-26.506,26.536,26.572,26.612,26.650,26.693,26.762,26.881,27.057,27.261,27.434,27.513,27.469,27.325,27.151,27.028,
-27.003,27.069,27.161,27.193,27.098,26.145,25.895,25.608,25.353,25.186,25.124,25.142,25.192,25.226,25.210,25.142,
-25.048,24.971,24.953,25.019,25.159,25.336,25.495,25.591,25.609,25.567,25.509,25.472,25.471,25.486,25.477,25.414,
-25.291,25.133,24.976,24.840,24.716,24.570,24.368,24.107,23.822,23.577,23.431,23.406,23.477,23.586,23.672,23.702,
-23.682,23.649,23.647,23.704,23.822,23.985,24.170,24.359,24.543,24.720,24.888,25.051,25.216,25.398,25.612,25.866,
-26.152,26.443,26.710,26.930,27.106,27.263,27.441,27.670,27.958,28.288,28.625,28.935,29.202,29.431,29.641,29.854,
-30.080,30.319,30.555,30.772,30.954,31.096,31.202,31.287,31.373,31.481,31.625,31.805,32.005,32.194,32.344,32.438,
-32.482,32.506,32.543,32.619,32.732,32.856,32.946,32.966,32.902,32.771,32.610,32.465,32.371,32.341,32.369,32.437,
-32.527,32.626,32.731,32.846,32.974,33.119,33.279,33.447,33.612,33.766,33.903,34.026,34.148,34.288,34.464,34.688,
-34.957,35.253,35.553,35.834,36.084,36.304,36.505,36.701,36.900,37.105,37.310,37.505,37.687,37.857,38.020,38.187,
-38.366,38.564,38.780,39.011,39.253,39.502,39.759,40.029,40.323,40.648,41.003,41.374,41.740,42.072,42.356,42.590,
-42.795,42.996,43.213,43.443,43.660,43.827,43.911,43.906,43.836,43.745,43.677,43.657,43.680,43.719,43.744,43.740,
-43.710,43.667,43.624,43.578,43.517,43.433,43.330,43.232,43.169,43.161,43.202,43.265,43.314,43.328,43.310,43.283,
-43.270,43.275,43.276,43.234,43.117,42.916,42.646,42.334,41.999,41.644,41.260,40.844,40.418,40.025,39.716,39.527,
-39.463,39.497,39.589,39.704,39.826,39.951,40.071,40.167,40.207,40.163,40.024,39.812,39.569,39.343,39.166,39.046,
-38.971,38.920,38.876,38.827,38.765,38.680,38.565,38.419,38.255,38.095,37.963,37.866,37.792,37.712,37.595,37.428,
-37.222,37.007,36.817,36.670,36.562,36.471,36.372,36.253,36.114,35.972,35.842,35.734,35.645,35.560,35.465,35.347,
-35.206,35.056,34.920,34.826,34.796,34.835,34.928,35.044,35.145,35.198,35.188,35.117,34.999,34.852,34.690,34.528,
-34.376,34.249,34.162,34.121,34.123,34.154,34.196,34.237,34.278,34.332,34.408,34.508,34.617,34.709,34.758,34.750,
-34.681,34.560,34.397,34.208,34.012,33.833,33.703,33.642,33.652,33.703,33.743,33.720,33.605,33.405,33.160,32.920,
-32.719,32.564,32.440,32.331,32.229,32.134,32.044,31.938,31.771,31.495,31.090,30.579,30.026,29.504,29.052,28.656,
-28.250,27.759,27.142,26.417,25.646,24.899,24.215,23.586,22.980,22.380,21.816,21.360,21.088,21.026,21.115,21.224,
-21.202,20.950,20.466,19.850,19.253,18.808,18.573,18.514,18.536,18.528,18.417,18.189,17.879,17.543,17.224,16.938,
-16.676,16.416,16.138,15.837,15.517,15.193,14.875,14.571,14.281,14.002,13.729,13.454,13.173,12.882,12.580,12.270,
-11.951,11.626,11.294,10.956,10.614,10.270,9.931,9.602,9.285,8.981,8.687,8.400,8.118,7.839,7.557,7.266,
-6.958,6.636,6.308,5.991,5.699,5.435,5.184,4.912,4.584,4.182,3.720,3.238,2.793,2.426,2.145,1.920,
-1.699,1.441,1.132,.795,.474,.205,-.008,-.196,-.410,-.690,-1.046,-1.451,-1.858,-2.226,-2.543,-2.828,
--3.118,-3.443,-3.815,-4.215,-4.614,-4.982,-5.304,-5.584,-5.836,-6.076,-6.318,-6.570,-6.839,-7.130,-7.448,-7.791,
--8.152,-8.516,-8.868,-9.198,-9.503,-9.789,-10.066,-10.340,-10.619,-10.906,-11.202,-11.509,-11.825,-12.149,-12.476,-12.804,
--13.131,-13.455,-13.777,-14.093,-14.400,-14.697,-14.986,-15.274,-15.570,-15.877,-16.189,-16.493,-16.772,-17.021,-17.248,-17.471,
--17.708,-17.967,-18.240,-18.508,-18.750,-18.957,-19.137,-19.307,-19.485,-19.679,-19.883,-20.086,-20.278,-20.458,-20.629,-20.800,
--20.970,-21.134,-21.287,-21.430,-21.573,-21.729,-21.906,-22.099,-22.291,-22.465,-22.611,-22.737,-22.863,-23.010,-23.185,-23.378,
--23.568,-23.735,-23.873,-23.991,-24.106,-24.234,-24.375,-24.518,-24.649,-24.760,-24.855,-24.943,-25.030,-25.109,-25.166,-25.184,
--25.161,-25.111,-25.062,-25.041,-25.057,-25.101,-25.148,-25.177,-25.177,-25.157,-25.134,-25.118,-25.110,-25.100,-25.080,-25.047,
--25.013,-24.990,-24.985,-24.989,-24.986,-24.957,-24.901,-24.831,-24.768,-24.732,-24.725,-24.735,-24.745,-24.743,-24.733,-24.730,
--24.743,-24.770,-24.796,-24.802,-24.777,-24.731,-24.684,-24.657,-24.652,-24.649,-24.614,-24.523,-24.373,-24.189,-24.014,-23.886,
--23.820,-23.802,-23.797,-23.765,-23.678,-23.529,-23.327,-23.095,-22.852,-22.616,-22.397,-22.200,-22.027,-21.879,-21.754,-21.655,
--21.583,-21.538,-21.514,-21.502,-21.486,-21.450,-21.387,-21.299,-21.199,-21.101,-21.018,-20.955,-20.910,-20.885,-20.890,-20.945,
--21.073,-21.285,-21.567,-21.880,-22.169,-22.377,-22.468,-22.437,-22.314,-22.148,-21.994,-21.891,-21.856,-21.883,-21.953,-22.047,
--22.150,-22.260,-22.381,-22.509,-22.634,-22.737,-22.797,-22.803,-22.757,-22.681,-22.603,-22.558,-22.568,-22.648,-22.795,-22.989,
--23.200,-23.386,-23.516,-23.572,-23.570,-23.548,-23.546,-23.577,-23.610,-23.575,-23.405,-23.089,-22.706,-22.420,-22.419,-22.823,
--23.618,-24.643,-25.648,-26.399,-26.782,-26.840,-26.737,-26.665,-26.747,-26.992,-27.310,-27.583,-27.736,-27.776,-27.769,-27.799,
--27.913,-28.108,-28.345,-28.577,-28.775,-28.921,-28.997,-28.969,-28.797,-28.462,-27.992,-27.464,-26.983,-26.638,-26.466,-26.450,
--26.540,-26.689,-26.886,-27.148,-27.498,-27.940,-28.443,-28.955,-29.435,-29.872,-30.292,-30.732,-31.214,-31.727,-32.232,-32.682,
--33.047,-33.327,-33.542,-33.719,-33.877,-34.016,-34.134,-34.230,-34.312,-34.388,-34.461,-34.520,-34.550,-34.537,-34.483,-34.404,
--34.323,-34.255,-34.204,-34.167,-34.138,-34.123,-34.131,-34.170,-34.235,-34.304,-34.354,-34.372,-34.368,-34.372,-34.415,-34.512,
--34.645,-34.778,-34.873,-34.913,-34.914,-34.914,-34.948,-35.032,-35.152,-35.276,-35.373,-35.430,-35.451,-35.452,-35.445,-35.432,
--35.407,-35.366,-35.316,-35.274,-35.252,-35.250,-35.252,-35.231,-35.168,-35.064,-34.936,-34.812,-34.710,-34.628,-34.549,-34.453,
--34.332,-34.195,-34.059,-33.944,-33.850,-33.767,-33.677,-33.569,-33.446,-33.323,-33.215,-33.127,-33.048,-32.963,-32.859,-32.735,
--32.603,-32.480,-32.375,-32.283,-32.191,-32.083,-31.953,-31.806,-31.661,-31.533,-31.434,-31.363,-31.312,-31.267,-31.217,-31.154,
--31.075,-30.978,-30.864,-30.735,-30.596,-30.454,-30.316,-30.189,-30.073,-29.967,-29.862,-29.752,-29.627,-29.484,-29.320,-29.136,
--28.937,-28.726,-28.507,-28.289,-28.079,-27.887,-27.721,-27.583,-27.469,-27.366,-27.261,-27.142,-27.004,-26.853,-26.700,-26.554,
--26.420,-26.295,-26.172,-26.048,-25.925,-25.809,-25.703,-25.608,-25.511,-25.397,-25.254,-25.081,-24.890,-24.704,-24.546,-24.429,
--24.352,-24.301,-24.259,-24.210,-24.147,-24.071,-23.985,-23.895,-23.804,-23.715,-23.629,-23.546,-23.465,-23.388,-23.315,-23.245,
--23.180,-23.122,-23.072,-23.034,-23.008,-22.998,-23.005,-23.029,-23.062,-23.091,-23.101,-23.076,-23.012,-22.914,-22.799,-22.682,
--22.575,-22.472,-22.361,-22.229,-22.068,-21.888,-21.705,-21.540,-21.404,-21.292,-21.193,-21.090,-20.972,-20.837,-20.692,-20.543,
--20.398,-20.261,-20.133,-20.019,-19.923,-19.841,-19.765,-19.680,-19.571,-19.431,-19.270,-19.109,-18.972,-18.879,-18.830,-18.812,
--18.801,-18.779,-18.739,-18.686,-18.637,-18.604,-18.595,-18.609,-18.636,-18.668,-18.697,-18.720,-18.734,-18.737,-18.730,-18.711,
--18.684,-18.651,-18.615,-18.578,-18.538,-18.494,-18.443,-18.389,-18.335,-18.285,-18.245,-18.217,-18.199,-18.186,-18.167,-18.123,
--18.038,-17.893,-17.684,-17.422,-17.130,-16.843,-16.593,-16.397,-16.257,-16.155,-16.068,-15.977,-15.874,-15.763,-15.654,-15.552,
--15.456,-15.355,-15.232,-15.078,-14.889,-14.673,-14.447,-14.226,-14.021,-13.838,-13.674,-13.524,-13.383,-13.251,-13.132,-13.033,
--12.962,-12.921,-12.910,-12.919,-12.935,-12.945,-12.943,-12.927,-12.905,-12.888,-12.886,-12.905,-12.943,-12.994,-13.047,-13.097,
--13.138,-13.172,-13.201,-13.228,-13.255,-13.280,-13.300,-13.311,-13.312,-13.303,-13.290,-13.280,-13.282,-13.302,-13.342,-13.402,
--13.474,-13.550,-13.622,-13.685,-13.734,-13.771,-13.796,-13.814,-13.824,-13.829,-13.827,-13.821,-13.809,-13.794,-13.778,-13.764,
--13.753,-13.747,-13.744,-13.741,-13.734,-13.719,-13.695,-13.663,-13.630,-13.602,-13.583,-13.574,-13.570,-13.563,-13.543,-13.506,
--13.447,-13.368,-13.275,-13.168,-13.050,-12.919,-12.775,-12.621,-12.464,-12.310,-12.167,-12.035,-11.915,-11.803,-11.701,-11.614,
--11.552,-11.516,-11.495,-11.460,-11.374,-11.209,-10.960,-10.662,-10.380,-10.186,-10.127,-10.199,-10.344,-10.473,-10.501,-10.389,
--10.165,-9.909,-9.723,-9.680,-9.798,-10.034,-10.306,-10.534,-10.670,-10.711,-10.689,-10.645,-10.600,-10.551,-10.469,-10.324,
--10.100,-9.810,-9.484,-9.159,-8.864,-8.604,-8.366,-8.130,-7.875,-7.599,-7.313,-7.037,-6.789,-6.572,-6.378,-6.192,
--6.002,-5.811,-5.632,-5.489,-5.394,-5.344,-5.318,-5.286,-5.224,-5.119,-4.976,-4.802,-4.603,-4.378,-4.124,-3.852,
--3.582,-3.343,-3.157,-3.019,-2.899,-2.753,-2.554,-2.306,-2.046,-1.821,-1.656,-1.531,-1.387,-1.159,-.815,-.380,
-.074,.464,.744,.929,1.087,1.297,1.604,1.996,2.415,2.790,3.082,3.299,3.485,3.689,3.934,4.206,
-4.463,4.663,4.785,4.833,4.821,4.761,4.649,4.471,4.219,3.909,3.581,3.294,3.106,3.063,3.186,3.477,
-3.921,4.495,5.171,5.920,6.714,7.528,8.345,9.153,9.944,10.704,11.411,12.037,12.553,12.942,13.207,13.372,
-13.481,13.587,13.735,13.953,14.243,14.575,14.901,15.161,15.303,15.295,15.133,14.838,14.450,14.011,13.563,13.139,
-12.763,12.452,12.208,12.024,11.882,11.763,11.662,11.591,11.583,11.674,11.886,12.214,12.622,13.062,13.495,13.906,
-14.310,14.731,15.182,15.646,16.078,16.425,16.652,16.761,16.791,16.804,16.860,16.989,17.187,17.418,17.633,17.780,
-17.828,17.765,17.602,17.367,17.095,16.821,16.567,16.339,16.128,15.918,15.700,15.479,15.276,15.125,15.049,15.057,
-15.131,15.238,15.339,15.410,15.442,15.449,15.451,15.463,15.491,15.526,15.559,15.592,15.639,15.726,15.872,16.077,
-16.310,16.519,16.647,16.663,16.578,16.439,16.315,16.261,16.296,16.395,16.507,16.577,16.579,16.522,16.440,16.373,
-16.344,16.351,16.370,16.376,16.352,16.296,16.224,16.155,16.106,16.093,16.120,16.189,16.289,16.406,16.519,16.613,
-16.680,16.723,16.751,16.765,16.759,16.718,16.632,16.513,16.399,16.347,16.407,16.607,16.942,17.382,17.887,18.432,
-19.007,19.608,20.225,20.835,21.400,21.888,22.275,22.539,22.646,22.534,22.124,21.353,20.228,18.863,17.472,16.311,
-15.592,15.396,15.640,16.106,16.528,16.683,16.469,15.909,15.122,14.252,13.417,12.678,12.047,11.506,11.030,10.594,
-10.167,9.706,9.157,8.470,7.614,6.597,5.477,4.355,3.367,2.666,2.394,2.661,3.514,4.926,6.786,8.917,
-11.108,13.155,14.903,16.272,17.269,17.971,18.492,18.949,19.421,19.924,20.416,20.813,21.033,21.032,20.832,20.515,
-20.196,19.975,19.903,19.964,20.102,20.244,20.346,20.397,20.420,20.442,20.476,20.521,20.566,20.609,20.667,20.762,
-20.906,21.087,21.273,21.429,21.538,21.615,21.697,21.814,21.971,22.141,22.280,22.358,22.381,22.386,22.418,22.505,
-22.639,22.785,22.906,22.988,23.046,23.115,23.220,23.362,23.518,23.661,23.779,23.885,24.004,24.154,24.328,24.493,
-24.618,24.688,24.723,24.759,24.833,24.952,25.098,25.237,25.344,25.417,25.474,25.539,25.622,25.715,25.803,25.877,
-25.943,26.015,26.103,26.200,26.287,26.346,26.382,26.418,26.488,26.606,26.751,26.872,26.913,26.848,26.698,26.525,
-26.395,26.342,26.349,26.359,26.303,26.145,25.304,25.077,24.864,24.724,24.681,24.724,24.807,24.878,24.900,24.860,
-24.771,24.664,24.576,24.538,24.562,24.644,24.760,24.875,24.960,24.996,24.987,24.944,24.882,24.802,24.693,24.541,
-24.341,24.111,23.883,23.688,23.538,23.416,23.293,23.143,22.969,22.807,22.708,22.708,22.807,22.962,23.110,23.199,
-23.215,23.183,23.151,23.161,23.231,23.347,23.483,23.615,23.741,23.874,24.035,24.231,24.458,24.701,24.946,25.185,
-25.421,25.656,25.891,26.124,26.354,26.585,26.831,27.104,27.406,27.724,28.032,28.308,28.543,28.749,28.954,29.185,
-29.450,29.736,30.010,30.239,30.404,30.508,30.574,30.632,30.710,30.823,30.974,31.153,31.342,31.521,31.670,31.780,
-31.853,31.910,31.975,32.069,32.190,32.308,32.379,32.363,32.250,32.073,31.897,31.794,31.808,31.931,32.111,32.274,
-32.365,32.373,32.333,32.311,32.362,32.511,32.737,32.988,33.212,33.380,33.493,33.581,33.681,33.823,34.015,34.249,
-34.510,34.785,35.066,35.348,35.625,35.889,36.129,36.339,36.520,36.684,36.843,37.008,37.184,37.363,37.538,37.705,
-37.864,38.025,38.199,38.394,38.608,38.835,39.068,39.304,39.548,39.809,40.094,40.404,40.728,41.047,41.345,41.611,
-41.850,42.072,42.290,42.507,42.710,42.880,42.994,43.045,43.042,43.011,42.980,42.966,42.970,42.979,42.974,42.948,
-42.907,42.866,42.835,42.816,42.794,42.751,42.679,42.589,42.509,42.468,42.483,42.545,42.625,42.691,42.723,42.722,
-42.704,42.684,42.665,42.631,42.562,42.441,42.269,42.062,41.832,41.584,41.306,40.983,40.614,40.219,39.842,39.531,
-39.318,39.208,39.183,39.212,39.272,39.353,39.451,39.556,39.647,39.694,39.670,39.569,39.407,39.219,39.043,38.901,
-38.798,38.722,38.660,38.601,38.539,38.471,38.389,38.285,38.155,38.006,37.854,37.718,37.610,37.524,37.439,37.330,
-37.182,36.997,36.794,36.599,36.431,36.295,36.186,36.088,35.990,35.889,35.788,35.693,35.611,35.542,35.479,35.408,
-35.318,35.202,35.065,34.930,34.830,34.798,34.855,34.993,35.181,35.368,35.504,35.553,35.502,35.359,35.143,34.878,
-34.589,34.305,34.052,33.858,33.739,33.691,33.698,33.732,33.775,33.824,33.892,33.995,34.139,34.303,34.450,34.537,
-34.537,34.449,34.295,34.108,33.921,33.751,33.605,33.487,33.394,33.326,33.270,33.209,33.115,32.971,32.773,32.536,
-32.288,32.059,31.865,31.714,31.604,31.528,31.477,31.435,31.370,31.238,30.998,30.629,30.152,29.619,29.095,28.629,
-28.225,27.844,27.425,26.924,26.328,25.664,24.974,24.291,23.621,22.956,22.297,21.676,21.157,20.813,20.679,20.723,
-20.842,20.900,20.781,20.440,19.922,19.339,18.822,18.463,18.285,18.239,18.234,18.183,18.034,17.782,17.461,17.120,
-16.799,16.515,16.260,16.013,15.750,15.459,15.138,14.802,14.467,14.149,13.856,13.587,13.331,13.079,12.817,12.541,
-12.249,11.941,11.622,11.294,10.964,10.635,10.310,9.992,9.678,9.366,9.054,8.742,8.432,8.131,7.838,7.549,
-7.256,6.950,6.631,6.307,5.995,5.710,5.456,5.215,4.956,4.648,4.273,3.840,3.382,2.942,2.554,2.226,
-1.940,1.664,1.373,1.062,.746,.451,.194,-.030,-.248,-.491,-.783,-1.123,-1.489,-1.851,-2.190,-2.506,
--2.815,-3.139,-3.493,-3.873,-4.261,-4.632,-4.972,-5.276,-5.551,-5.810,-6.066,-6.328,-6.602,-6.893,-7.205,-7.538,
--7.888,-8.242,-8.585,-8.905,-9.199,-9.469,-9.727,-9.986,-10.255,-10.540,-10.843,-11.161,-11.492,-11.831,-12.173,-12.512,
--12.844,-13.165,-13.477,-13.778,-14.071,-14.359,-14.647,-14.941,-15.247,-15.569,-15.901,-16.229,-16.538,-16.815,-17.061,-17.290,
--17.520,-17.765,-18.025,-18.287,-18.530,-18.741,-18.923,-19.092,-19.269,-19.469,-19.691,-19.920,-20.138,-20.331,-20.503,-20.664,
--20.825,-20.991,-21.158,-21.321,-21.479,-21.636,-21.803,-21.984,-22.174,-22.358,-22.523,-22.665,-22.797,-22.938,-23.105,-23.299,
--23.503,-23.693,-23.852,-23.977,-24.083,-24.192,-24.317,-24.456,-24.595,-24.719,-24.820,-24.906,-24.990,-25.080,-25.175,-25.259,
--25.317,-25.342,-25.342,-25.337,-25.341,-25.362,-25.393,-25.418,-25.429,-25.426,-25.418,-25.414,-25.414,-25.409,-25.389,-25.350,
--25.301,-25.259,-25.237,-25.236,-25.238,-25.223,-25.178,-25.109,-25.039,-24.991,-24.976,-24.988,-25.003,-25.003,-24.983,-24.959,
--24.953,-24.980,-25.031,-25.079,-25.097,-25.073,-25.019,-24.965,-24.936,-24.938,-24.948,-24.930,-24.852,-24.713,-24.538,-24.371,
--24.250,-24.190,-24.175,-24.169,-24.135,-24.046,-23.894,-23.690,-23.451,-23.201,-22.959,-22.741,-22.554,-22.398,-22.268,-22.153,
--22.050,-21.961,-21.897,-21.864,-21.859,-21.863,-21.850,-21.795,-21.696,-21.570,-21.449,-21.365,-21.326,-21.319,-21.321,-21.316,
--21.314,-21.351,-21.468,-21.688,-21.991,-22.318,-22.593,-22.751,-22.767,-22.668,-22.512,-22.363,-22.265,-22.232,-22.251,-22.301,
--22.372,-22.461,-22.575,-22.711,-22.852,-22.972,-23.047,-23.068,-23.045,-23.004,-22.969,-22.957,-22.971,-23.011,-23.082,-23.192,
--23.347,-23.538,-23.735,-23.895,-23.981,-23.989,-23.947,-23.900,-23.885,-23.900,-23.908,-23.863,-23.760,-23.657,-23.665,-23.901,
--24.416,-25.153,-25.956,-26.635,-27.049,-27.177,-27.117,-27.034,-27.073,-27.287,-27.627,-27.982,-28.251,-28.396,-28.455,-28.510,
--28.632,-28.850,-29.142,-29.465,-29.777,-30.049,-30.259,-30.371,-30.335,-30.109,-29.693,-29.146,-28.583,-28.129,-27.868,-27.819,
--27.934,-28.140,-28.384,-28.657,-28.979,-29.376,-29.839,-30.327,-30.785,-31.182,-31.530,-31.874,-32.259,-32.701,-33.164,-33.588,
--33.920,-34.146,-34.298,-34.432,-34.590,-34.778,-34.965,-35.111,-35.192,-35.219,-35.225,-35.246,-35.294,-35.349,-35.381,-35.364,
--35.298,-35.206,-35.119,-35.061,-35.036,-35.033,-35.040,-35.049,-35.063,-35.087,-35.120,-35.153,-35.178,-35.195,-35.217,-35.261,
--35.339,-35.443,-35.552,-35.637,-35.680,-35.689,-35.686,-35.702,-35.757,-35.850,-35.963,-36.069,-36.150,-36.197,-36.211,-36.197,
--36.156,-36.093,-36.018,-35.946,-35.894,-35.872,-35.873,-35.877,-35.859,-35.804,-35.715,-35.609,-35.509,-35.426,-35.352,-35.268,
--35.156,-35.013,-34.852,-34.696,-34.565,-34.458,-34.361,-34.258,-34.138,-34.008,-33.888,-33.796,-33.733,-33.685,-33.627,-33.538,
--33.415,-33.273,-33.137,-33.024,-32.933,-32.848,-32.745,-32.606,-32.430,-32.236,-32.047,-31.888,-31.769,-31.687,-31.630,-31.583,
--31.536,-31.482,-31.421,-31.350,-31.266,-31.166,-31.047,-30.909,-30.758,-30.601,-30.447,-30.299,-30.160,-30.024,-29.886,-29.741,
--29.587,-29.422,-29.248,-29.067,-28.881,-28.694,-28.509,-28.330,-28.163,-28.007,-27.860,-27.717,-27.569,-27.415,-27.256,-27.096,
--26.943,-26.801,-26.671,-26.551,-26.436,-26.327,-26.224,-26.127,-26.036,-25.944,-25.843,-25.725,-25.588,-25.434,-25.274,-25.116,
--24.966,-24.829,-24.703,-24.587,-24.480,-24.383,-24.297,-24.220,-24.149,-24.081,-24.012,-23.939,-23.860,-23.775,-23.684,-23.591,
--23.500,-23.416,-23.344,-23.286,-23.241,-23.204,-23.172,-23.144,-23.121,-23.106,-23.101,-23.099,-23.089,-23.060,-23.005,-22.923,
--22.823,-22.717,-22.615,-22.520,-22.431,-22.342,-22.246,-22.143,-22.032,-21.918,-21.801,-21.682,-21.557,-21.426,-21.288,-21.142,
--20.990,-20.836,-20.687,-20.550,-20.432,-20.335,-20.252,-20.169,-20.068,-19.936,-19.773,-19.593,-19.421,-19.281,-19.187,-19.138,
--19.120,-19.114,-19.102,-19.080,-19.050,-19.022,-19.003,-18.997,-19.002,-19.014,-19.029,-19.043,-19.054,-19.058,-19.055,-19.042,
--19.021,-18.996,-18.969,-18.939,-18.902,-18.851,-18.786,-18.709,-18.629,-18.559,-18.510,-18.485,-18.482,-18.494,-18.508,-18.513,
--18.493,-18.434,-18.323,-18.155,-17.936,-17.689,-17.445,-17.238,-17.089,-16.998,-16.945,-16.899,-16.828,-16.714,-16.558,-16.373,
--16.181,-15.995,-15.820,-15.652,-15.481,-15.301,-15.113,-14.918,-14.719,-14.517,-14.309,-14.094,-13.872,-13.654,-13.456,-13.295,
--13.186,-13.134,-13.133,-13.169,-13.223,-13.274,-13.309,-13.322,-13.314,-13.295,-13.276,-13.269,-13.278,-13.303,-13.337,-13.370,
--13.393,-13.401,-13.396,-13.386,-13.381,-13.387,-13.409,-13.443,-13.481,-13.517,-13.545,-13.564,-13.579,-13.593,-13.612,-13.637,
--13.669,-13.707,-13.748,-13.794,-13.846,-13.905,-13.969,-14.035,-14.095,-14.142,-14.170,-14.177,-14.165,-14.137,-14.103,-14.069,
--14.042,-14.023,-14.014,-14.009,-14.005,-13.995,-13.976,-13.948,-13.914,-13.879,-13.850,-13.829,-13.818,-13.811,-13.801,-13.781,
--13.744,-13.686,-13.609,-13.514,-13.402,-13.276,-13.137,-12.985,-12.824,-12.658,-12.492,-12.331,-12.178,-12.036,-11.908,-11.799,
--11.716,-11.664,-11.638,-11.621,-11.585,-11.504,-11.362,-11.168,-10.960,-10.787,-10.697,-10.706,-10.788,-10.883,-10.917,-10.837,
--10.637,-10.362,-10.093,-9.914,-9.878,-9.989,-10.203,-10.453,-10.675,-10.828,-10.903,-10.913,-10.879,-10.811,-10.711,-10.569,
--10.378,-10.141,-9.872,-9.593,-9.325,-9.080,-8.861,-8.657,-8.454,-8.239,-8.006,-7.760,-7.511,-7.273,-7.053,-6.849,
--6.656,-6.464,-6.273,-6.092,-5.934,-5.811,-5.723,-5.657,-5.588,-5.494,-5.363,-5.193,-4.993,-4.772,-4.532,-4.274,
--4.002,-3.727,-3.470,-3.251,-3.078,-2.941,-2.814,-2.671,-2.501,-2.312,-2.126,-1.954,-1.790,-1.601,-1.352,-1.023,
--.627,-.211,.170,.478,.713,.912,1.127,1.396,1.726,2.089,2.442,2.753,3.014,3.241,3.459,3.690,
-3.934,4.177,4.400,4.586,4.728,4.825,4.877,4.879,4.824,4.706,4.526,4.296,4.032,3.760,3.511,3.317,
-3.212,3.229,3.388,3.699,4.162,4.767,5.502,6.358,7.318,8.355,9.424,10.462,11.401,12.181,12.772,13.176,
-13.430,13.593,13.731,13.902,14.148,14.482,14.889,15.325,15.721,15.999,16.085,15.935,15.547,14.970,14.293,13.622,
-13.058,12.664,12.452,12.387,12.403,12.429,12.422,12.378,12.334,12.349,12.472,12.717,13.060,13.447,13.823,14.156,
-14.452,14.744,15.071,15.455,15.880,16.304,16.678,16.965,17.155,17.267,17.331,17.376,17.419,17.466,17.512,17.551,
-17.576,17.579,17.552,17.486,17.385,17.262,17.143,17.053,17.005,16.990,16.980,16.940,16.844,16.693,16.510,16.336,
-16.207,16.140,16.130,16.155,16.188,16.213,16.227,16.238,16.254,16.279,16.312,16.349,16.389,16.440,16.517,16.626,
-16.760,16.896,17.000,17.040,17.007,16.922,16.826,16.770,16.785,16.872,16.998,17.111,17.162,17.128,17.016,16.862,
-16.710,16.597,16.542,16.541,16.574,16.616,16.645,16.650,16.630,16.597,16.570,16.566,16.595,16.651,16.719,16.778,
-16.818,16.848,16.892,16.975,17.105,17.255,17.377,17.415,17.341,17.171,16.965,16.806,16.764,16.873,17.118,17.454,
-17.835,18.230,18.639,19.080,19.571,20.115,20.687,21.240,21.709,22.020,22.110,21.935,21.496,20.849,20.110,19.434,
-18.971,18.817,18.977,19.357,19.796,20.118,20.189,19.957,19.453,18.771,18.021,17.299,16.662,16.129,15.694,15.334,
-15.029,14.753,14.481,14.173,13.774,13.207,12.390,11.257,9.790,8.051,6.200,4.482,3.184,2.569,2.807,3.921,
-5.778,8.118,10.615,12.957,14.912,16.373,17.362,17.997,18.444,18.849,19.293,19.771,20.208,20.507,20.600,20.486,
-20.241,19.979,19.810,19.789,19.901,20.079,20.239,20.329,20.339,20.303,20.263,20.249,20.264,20.296,20.334,20.382,
-20.458,20.576,20.734,20.911,21.076,21.214,21.327,21.441,21.579,21.748,21.929,22.087,22.198,22.259,22.294,22.336,
-22.410,22.513,22.623,22.715,22.778,22.822,22.871,22.945,23.049,23.167,23.282,23.385,23.480,23.582,23.703,23.839,
-23.976,24.098,24.202,24.300,24.411,24.548,24.705,24.866,25.009,25.124,25.215,25.291,25.359,25.413,25.444,25.451,
-25.449,25.469,25.537,25.658,25.803,25.927,25.988,25.974,25.909,25.840,25.803,25.808,25.830,25.834,25.797,25.726,
-25.654,25.613,25.609,25.617,25.589,25.487,25.304,24.789,24.611,24.460,24.371,24.353,24.382,24.425,24.451,24.450,
-24.431,24.409,24.401,24.412,24.440,24.476,24.512,24.539,24.545,24.521,24.459,24.355,24.212,24.034,23.824,23.584,
-23.318,23.038,22.764,22.524,22.340,22.220,22.152,22.113,22.084,22.065,22.073,22.128,22.240,22.393,22.546,22.657,
-22.701,22.684,22.644,22.625,22.656,22.737,22.847,22.960,23.062,23.166,23.297,23.480,23.720,23.999,24.287,24.554,
-24.788,24.995,25.194,25.406,25.646,25.916,26.215,26.532,26.853,27.160,27.433,27.660,27.842,28.004,28.181,28.406,
-28.692,29.021,29.348,29.624,29.814,29.917,29.963,29.999,30.065,30.182,30.346,30.535,30.727,30.903,31.055,31.184,
-31.292,31.387,31.480,31.578,31.683,31.779,31.836,31.822,31.718,31.543,31.353,31.229,31.237,31.396,31.660,31.937,
-32.125,32.168,32.079,31.935,31.843,31.880,32.067,32.355,32.662,32.912,33.073,33.168,33.252,33.378,33.572,33.822,
-34.095,34.358,34.596,34.820,35.050,35.299,35.563,35.822,36.051,36.239,36.391,36.527,36.668,36.827,37.003,37.183,
-37.358,37.524,37.687,37.857,38.043,38.244,38.453,38.663,38.871,39.079,39.296,39.528,39.774,40.028,40.281,40.525,
-40.761,40.991,41.221,41.447,41.659,41.840,41.976,42.064,42.113,42.143,42.172,42.211,42.256,42.291,42.298,42.267,
-42.206,42.132,42.067,42.026,42.007,41.996,41.976,41.941,41.898,41.866,41.863,41.895,41.953,42.016,42.065,42.089,
-42.092,42.083,42.067,42.041,41.991,41.903,41.775,41.616,41.442,41.265,41.087,40.894,40.673,40.420,40.149,39.890,
-39.670,39.507,39.396,39.319,39.255,39.197,39.146,39.115,39.109,39.119,39.125,39.104,39.041,38.939,38.813,38.683,
-38.563,38.458,38.365,38.276,38.190,38.105,38.023,37.943,37.859,37.767,37.666,37.559,37.453,37.353,37.257,37.158,
-37.045,36.909,36.747,36.564,36.371,36.184,36.018,35.885,35.789,35.725,35.682,35.642,35.593,35.529,35.451,35.368,
-35.284,35.200,35.109,35.011,34.916,34.850,34.845,34.926,35.093,35.319,35.550,35.731,35.814,35.782,35.638,35.403,
-35.107,34.779,34.450,34.151,33.913,33.753,33.670,33.640,33.631,33.617,33.593,33.578,33.600,33.677,33.797,33.924,
-34.010,34.020,33.950,33.827,33.692,33.577,33.489,33.414,33.328,33.216,33.081,32.939,32.804,32.676,32.541,32.376,
-32.164,31.910,31.637,31.378,31.165,31.015,30.926,30.880,30.845,30.783,30.659,30.443,30.126,29.717,29.244,28.746,
-28.254,27.783,27.326,26.863,26.373,25.849,25.295,24.723,24.137,23.532,22.898,22.235,21.571,20.960,20.471,20.155,
-20.017,20.009,20.037,20.000,19.828,19.511,19.096,18.671,18.320,18.092,17.983,17.945,17.906,17.804,17.609,17.329,
-17.000,16.668,16.367,16.106,15.873,15.642,15.389,15.104,14.791,14.468,14.154,13.863,13.597,13.346,13.098,12.839,
-12.563,12.269,11.961,11.644,11.326,11.011,10.704,10.403,10.104,9.800,9.486,9.158,8.821,8.483,8.154,7.840,
-7.538,7.239,6.930,6.608,6.279,5.961,5.667,5.406,5.166,4.923,4.650,4.326,3.951,3.544,3.130,2.734,
-2.366,2.021,1.689,1.361,1.038,.725,.433,.161,-.096,-.356,-.631,-.926,-1.236,-1.553,-1.872,-2.193,
--2.526,-2.880,-3.255,-3.642,-4.020,-4.373,-4.692,-4.981,-5.253,-5.523,-5.802,-6.090,-6.386,-6.688,-7.000,-7.326,
--7.667,-8.019,-8.368,-8.696,-8.992,-9.251,-9.483,-9.705,-9.937,-10.191,-10.474,-10.783,-11.112,-11.453,-11.797,-12.142,
--12.483,-12.818,-13.147,-13.467,-13.776,-14.073,-14.361,-14.645,-14.937,-15.242,-15.565,-15.897,-16.225,-16.533,-16.812,-17.066,
--17.308,-17.553,-17.809,-18.071,-18.320,-18.539,-18.722,-18.879,-19.034,-19.211,-19.423,-19.666,-19.917,-20.153,-20.360,-20.537,
--20.697,-20.852,-21.013,-21.181,-21.353,-21.526,-21.702,-21.885,-22.075,-22.265,-22.444,-22.606,-22.753,-22.897,-23.053,-23.228,
--23.417,-23.605,-23.772,-23.910,-24.027,-24.140,-24.266,-24.412,-24.570,-24.719,-24.846,-24.947,-25.031,-25.113,-25.204,-25.301,
--25.392,-25.465,-25.517,-25.552,-25.581,-25.611,-25.639,-25.659,-25.663,-25.654,-25.645,-25.647,-25.666,-25.691,-25.705,-25.692,
--25.650,-25.595,-25.547,-25.519,-25.508,-25.497,-25.465,-25.405,-25.334,-25.277,-25.258,-25.278,-25.317,-25.343,-25.335,-25.296,
--25.252,-25.233,-25.256,-25.311,-25.367,-25.390,-25.369,-25.317,-25.267,-25.245,-25.255,-25.272,-25.257,-25.184,-25.053,-24.893,
--24.747,-24.651,-24.612,-24.613,-24.617,-24.588,-24.501,-24.349,-24.139,-23.890,-23.624,-23.368,-23.143,-22.965,-22.832,-22.731,
--22.642,-22.550,-22.456,-22.374,-22.323,-22.308,-22.309,-22.292,-22.224,-22.098,-21.938,-21.795,-21.713,-21.708,-21.753,-21.799,
--21.802,-21.758,-21.708,-21.719,-21.846,-22.098,-22.424,-22.739,-22.961,-23.048,-23.012,-22.906,-22.791,-22.706,-22.661,-22.645,
--22.649,-22.677,-22.746,-22.867,-23.032,-23.205,-23.344,-23.419,-23.432,-23.414,-23.405,-23.430,-23.484,-23.544,-23.588,-23.618,
--23.663,-23.761,-23.925,-24.127,-24.305,-24.396,-24.374,-24.272,-24.166,-24.132,-24.206,-24.364,-24.543,-24.691,-24.808,-24.951,
--25.200,-25.602,-26.128,-26.673,-27.106,-27.340,-27.378,-27.317,-27.292,-27.405,-27.678,-28.047,-28.409,-28.685,-28.863,-28.992,
--29.148,-29.388,-29.717,-30.100,-30.487,-30.835,-31.119,-31.319,-31.401,-31.327,-31.071,-30.653,-30.152,-29.688,-29.379,-29.287,
--29.401,-29.650,-29.949,-30.243,-30.531,-30.842,-31.204,-31.607,-32.011,-32.363,-32.645,-32.881,-33.131,-33.446,-33.833,-34.250,
--34.622,-34.896,-35.063,-35.171,-35.287,-35.455,-35.670,-35.883,-36.033,-36.091,-36.075,-36.038,-36.034,-36.087,-36.175,-36.249,
--36.264,-36.208,-36.105,-35.999,-35.926,-35.896,-35.893,-35.895,-35.886,-35.870,-35.865,-35.886,-35.936,-36.003,-36.070,-36.125,
--36.169,-36.211,-36.257,-36.309,-36.355,-36.386,-36.400,-36.407,-36.425,-36.469,-36.545,-36.643,-36.745,-36.831,-36.884,-36.897,
--36.872,-36.813,-36.732,-36.646,-36.571,-36.521,-36.499,-36.495,-36.491,-36.470,-36.423,-36.355,-36.280,-36.209,-36.145,-36.073,
--35.975,-35.839,-35.669,-35.486,-35.316,-35.176,-35.064,-34.966,-34.862,-34.741,-34.613,-34.496,-34.407,-34.348,-34.306,-34.255,
--34.173,-34.057,-33.921,-33.787,-33.672,-33.578,-33.487,-33.374,-33.222,-33.029,-32.812,-32.597,-32.410,-32.261,-32.150,-32.065,
--31.995,-31.932,-31.876,-31.830,-31.792,-31.754,-31.702,-31.618,-31.493,-31.325,-31.123,-30.905,-30.688,-30.487,-30.308,-30.150,
--30.008,-29.876,-29.749,-29.624,-29.498,-29.369,-29.235,-29.092,-28.940,-28.777,-28.607,-28.431,-28.249,-28.062,-27.872,-27.680,
--27.492,-27.315,-27.152,-27.008,-26.880,-26.767,-26.662,-26.564,-26.469,-26.377,-26.289,-26.205,-26.122,-26.038,-25.946,-25.839,
--25.713,-25.564,-25.397,-25.221,-25.049,-24.894,-24.764,-24.660,-24.576,-24.501,-24.426,-24.347,-24.260,-24.167,-24.071,-23.973,
--23.876,-23.786,-23.709,-23.651,-23.611,-23.585,-23.559,-23.521,-23.464,-23.390,-23.308,-23.232,-23.169,-23.119,-23.070,-23.010,
--22.932,-22.839,-22.746,-22.672,-22.628,-22.617,-22.624,-22.626,-22.599,-22.529,-22.413,-22.263,-22.097,-21.933,-21.782,-21.644,
--21.515,-21.386,-21.251,-21.113,-20.978,-20.852,-20.739,-20.632,-20.520,-20.390,-20.239,-20.071,-19.902,-19.753,-19.637,-19.561,
--19.516,-19.492,-19.474,-19.457,-19.441,-19.428,-19.422,-19.424,-19.429,-19.435,-19.437,-19.436,-19.430,-19.419,-19.400,-19.373,
--19.341,-19.309,-19.285,-19.272,-19.269,-19.264,-19.245,-19.204,-19.142,-19.068,-18.995,-18.933,-18.886,-18.848,-18.811,-18.767,
--18.712,-18.648,-18.573,-18.485,-18.382,-18.265,-18.144,-18.034,-17.953,-17.912,-17.903,-17.903,-17.876,-17.794,-17.641,-17.425,
--17.171,-16.910,-16.670,-16.463,-16.290,-16.142,-16.009,-15.880,-15.746,-15.598,-15.424,-15.213,-14.959,-14.670,-14.367,-14.081,
--13.844,-13.678,-13.591,-13.571,-13.597,-13.641,-13.681,-13.703,-13.705,-13.692,-13.673,-13.660,-13.658,-13.671,-13.694,-13.721,
--13.743,-13.752,-13.745,-13.725,-13.700,-13.681,-13.674,-13.686,-13.716,-13.759,-13.808,-13.858,-13.906,-13.949,-13.987,-14.018,
--14.042,-14.057,-14.065,-14.069,-14.072,-14.081,-14.100,-14.129,-14.168,-14.212,-14.257,-14.295,-14.323,-14.339,-14.340,-14.331,
--14.316,-14.299,-14.285,-14.275,-14.266,-14.256,-14.240,-14.216,-14.185,-14.151,-14.121,-14.099,-14.086,-14.081,-14.078,-14.067,
--14.043,-14.000,-13.935,-13.851,-13.748,-13.630,-13.499,-13.356,-13.206,-13.049,-12.888,-12.726,-12.563,-12.403,-12.248,-12.109,
--11.995,-11.916,-11.874,-11.861,-11.856,-11.832,-11.764,-11.644,-11.487,-11.327,-11.204,-11.146,-11.154,-11.195,-11.217,-11.169,
--11.026,-10.799,-10.538,-10.306,-10.162,-10.134,-10.217,-10.379,-10.575,-10.764,-10.919,-11.024,-11.073,-11.063,-10.988,-10.851,
--10.656,-10.418,-10.156,-9.888,-9.632,-9.398,-9.192,-9.014,-8.861,-8.722,-8.582,-8.425,-8.242,-8.032,-7.805,-7.576,
--7.361,-7.165,-6.987,-6.819,-6.655,-6.496,-6.346,-6.212,-6.091,-5.973,-5.842,-5.683,-5.489,-5.263,-5.015,-4.752,
--4.479,-4.200,-3.917,-3.643,-3.392,-3.177,-3.005,-2.867,-2.746,-2.623,-2.484,-2.328,-2.157,-1.971,-1.763,-1.523,
--1.241,-.916,-.564,-.209,.125,.426,.697,.953,1.214,1.491,1.787,2.094,2.399,2.691,2.962,3.211,
-3.440,3.652,3.855,4.054,4.252,4.446,4.627,4.781,4.896,4.960,4.970,4.927,4.831,4.686,4.497,4.276,
-4.046,3.836,3.680,3.602,3.619,3.740,3.973,4.334,4.854,5.560,6.469,7.566,8.795,10.065,11.269,12.309,
-13.119,13.677,14.007,14.174,14.261,14.357,14.532,14.818,15.202,15.620,15.971,16.150,16.077,15.725,15.139,14.424,
-13.716,13.144,12.789,12.665,12.726,12.885,13.057,13.189,13.278,13.358,13.482,13.689,13.983,14.331,14.683,14.998,
-15.259,15.486,15.715,15.982,16.299,16.649,16.999,17.313,17.569,17.766,17.916,18.033,18.122,18.182,18.207,18.195,
-18.151,18.081,17.987,17.872,17.738,17.598,17.478,17.415,17.436,17.547,17.716,17.884,17.981,17.956,17.797,17.539,
-17.243,16.978,16.790,16.697,16.682,16.712,16.757,16.798,16.829,16.859,16.897,16.951,17.022,17.106,17.195,17.279,
-17.348,17.391,17.400,17.375,17.320,17.253,17.192,17.156,17.154,17.181,17.220,17.249,17.248,17.205,17.123,17.011,
-16.890,16.780,16.699,16.661,16.674,16.731,16.819,16.911,16.982,17.013,17.005,16.974,16.949,16.955,16.999,17.070,
-17.144,17.206,17.258,17.325,17.435,17.605,17.816,18.016,18.145,18.159,18.061,17.905,17.768,17.725,17.804,17.987,
-18.216,18.430,18.596,18.726,18.866,19.071,19.375,19.767,20.197,20.592,20.882,21.021,21.005,20.866,20.664,20.468,
-20.341,20.325,20.429,20.630,20.879,21.113,21.271,21.310,21.215,20.998,20.695,20.352,20.016,19.716,19.460,19.241,
-19.043,18.858,18.695,18.579,18.523,18.506,18.439,18.163,17.479,16.213,14.290,11.794,8.984,6.254,4.044,2.729,
-2.527,3.447,5.295,7.729,10.353,12.804,14.831,16.328,17.332,17.977,18.431,18.831,19.237,19.634,19.953,20.130,
-20.147,20.047,19.920,19.858,19.910,20.063,20.252,20.400,20.458,20.423,20.338,20.255,20.211,20.210,20.234,20.258,
-20.279,20.311,20.379,20.498,20.660,20.839,21.006,21.145,21.260,21.369,21.489,21.624,21.761,21.883,21.977,22.045,
-22.098,22.147,22.196,22.244,22.286,22.321,22.361,22.417,22.500,22.609,22.733,22.857,22.972,23.075,23.171,23.270,
-23.376,23.494,23.627,23.778,23.949,24.134,24.323,24.501,24.658,24.798,24.932,25.072,25.219,25.351,25.436,25.451,
-25.397,25.312,25.253,25.265,25.360,25.502,25.625,25.666,25.599,25.443,25.251,25.080,24.963,24.902,24.879,24.874,
-24.880,24.904,24.951,25.009,25.048,25.033,24.943,24.789,24.433,24.300,24.177,24.081,24.013,23.961,23.913,23.871,
-23.853,23.875,23.947,24.058,24.179,24.279,24.331,24.326,24.267,24.163,24.019,23.836,23.615,23.359,23.079,22.789,
-22.505,22.240,22.003,21.804,21.651,21.551,21.503,21.499,21.528,21.575,21.635,21.707,21.792,21.889,21.985,22.060,
-22.100,22.103,22.085,22.073,22.091,22.149,22.237,22.336,22.434,22.531,22.646,22.804,23.019,23.284,23.575,23.859,
-24.115,24.338,24.543,24.754,24.992,25.266,25.572,25.894,26.214,26.512,26.770,26.982,27.152,27.302,27.464,27.673,
-27.946,28.271,28.609,28.908,29.127,29.255,29.316,29.361,29.436,29.566,29.744,29.939,30.119,30.268,30.392,30.509,
-30.637,30.781,30.931,31.068,31.176,31.244,31.267,31.240,31.160,31.034,30.889,30.776,30.751,30.852,31.075,31.361,
-31.618,31.760,31.751,31.623,31.466,31.385,31.451,31.668,31.976,32.287,32.532,32.690,32.798,32.917,33.097,33.347,
-33.640,33.927,34.173,34.372,34.548,34.738,34.961,35.215,35.470,35.694,35.871,36.005,36.120,36.243,36.390,36.561,
-36.743,36.925,37.101,37.275,37.457,37.649,37.851,38.053,38.248,38.432,38.611,38.791,38.978,39.172,39.369,39.566,
-39.765,39.970,40.185,40.409,40.631,40.833,40.999,41.119,41.196,41.249,41.294,41.348,41.412,41.476,41.524,41.540,
-41.519,41.470,41.406,41.346,41.301,41.274,41.263,41.263,41.270,41.285,41.308,41.338,41.370,41.397,41.412,41.416,
-41.414,41.414,41.418,41.421,41.409,41.364,41.276,41.147,40.991,40.826,40.665,40.512,40.360,40.199,40.029,39.856,
-39.694,39.555,39.439,39.336,39.230,39.107,38.969,38.828,38.706,38.618,38.568,38.541,38.517,38.472,38.397,38.294,
-38.174,38.052,37.940,37.841,37.753,37.673,37.596,37.523,37.454,37.394,37.340,37.290,37.236,37.169,37.083,36.977,
-36.855,36.725,36.590,36.450,36.301,36.138,35.967,35.803,35.666,35.574,35.528,35.512,35.498,35.456,35.374,35.262,
-35.142,35.039,34.967,34.921,34.889,34.865,34.860,34.899,35.009,35.196,35.440,35.693,35.900,36.016,36.024,35.931,
-35.759,35.536,35.283,35.023,34.776,34.568,34.415,34.317,34.252,34.184,34.080,33.931,33.758,33.601,33.497,33.460,
-33.472,33.496,33.499,33.470,33.428,33.399,33.401,33.423,33.431,33.385,33.265,33.082,32.876,32.688,32.536,32.407,
-32.264,32.068,31.806,31.500,31.196,30.939,30.754,30.635,30.547,30.450,30.314,30.127,29.894,29.628,29.333,29.004,
-28.632,28.204,27.720,27.186,26.622,26.047,25.480,24.930,24.397,23.870,23.332,22.768,22.174,21.561,20.963,20.424,
-19.993,19.695,19.528,19.452,19.405,19.320,19.151,18.890,18.566,18.234,17.950,17.747,17.623,17.541,17.453,17.314,
-17.104,16.832,16.528,16.227,15.951,15.704,15.472,15.237,14.987,14.719,14.446,14.180,13.930,13.695,13.464,13.222,
-12.958,12.665,12.349,12.017,11.682,11.352,11.036,10.734,10.443,10.155,9.859,9.545,9.209,8.855,8.495,8.142,
-7.806,7.486,7.176,6.863,6.542,6.214,5.890,5.583,5.301,5.039,4.784,4.516,4.221,3.893,3.536,3.161,
-2.780,2.397,2.018,1.643,1.278,.929,.600,.293,.001,-.282,-.563,-.843,-1.120,-1.389,-1.657,-1.936,
--2.244,-2.594,-2.985,-3.398,-3.803,-4.171,-4.489,-4.763,-5.015,-5.273,-5.554,-5.860,-6.179,-6.495,-6.801,-7.101,
--7.407,-7.732,-8.075,-8.424,-8.757,-9.055,-9.310,-9.529,-9.735,-9.950,-10.196,-10.479,-10.795,-11.132,-11.476,-11.817,
--12.153,-12.485,-12.817,-13.152,-13.487,-13.817,-14.136,-14.442,-14.736,-15.026,-15.319,-15.619,-15.923,-16.221,-16.505,-16.770,
--17.022,-17.274,-17.534,-17.806,-18.079,-18.333,-18.553,-18.735,-18.892,-19.047,-19.225,-19.437,-19.680,-19.933,-20.176,-20.392,
--20.580,-20.746,-20.905,-21.066,-21.235,-21.412,-21.598,-21.792,-21.991,-22.191,-22.385,-22.566,-22.731,-22.885,-23.038,-23.199,
--23.368,-23.539,-23.699,-23.840,-23.964,-24.084,-24.215,-24.368,-24.537,-24.707,-24.862,-24.991,-25.100,-25.198,-25.299,-25.404,
--25.504,-25.589,-25.650,-25.692,-25.728,-25.770,-25.818,-25.864,-25.893,-25.898,-25.886,-25.875,-25.881,-25.909,-25.947,-25.974,
--25.974,-25.944,-25.901,-25.865,-25.847,-25.841,-25.828,-25.789,-25.723,-25.650,-25.598,-25.588,-25.619,-25.664,-25.690,-25.677,
--25.631,-25.580,-25.555,-25.573,-25.620,-25.665,-25.681,-25.660,-25.619,-25.590,-25.593,-25.625,-25.655,-25.645,-25.572,-25.442,
--25.289,-25.156,-25.076,-25.054,-25.070,-25.089,-25.076,-25.008,-24.875,-24.678,-24.427,-24.145,-23.860,-23.606,-23.406,-23.268,
--23.175,-23.100,-23.020,-22.931,-22.848,-22.795,-22.780,-22.786,-22.773,-22.701,-22.557,-22.371,-22.204,-22.113,-22.119,-22.190,
--22.261,-22.270,-22.199,-22.089,-22.021,-22.071,-22.268,-22.574,-22.907,-23.177,-23.330,-23.364,-23.318,-23.240,-23.162,-23.091,
--23.024,-22.968,-22.948,-22.997,-23.131,-23.332,-23.547,-23.718,-23.811,-23.835,-23.835,-23.858,-23.925,-24.014,-24.080,-24.093,
--24.065,-24.048,-24.102,-24.255,-24.467,-24.654,-24.731,-24.671,-24.533,-24.439,-24.507,-24.786,-25.220,-25.678,-26.022,-26.179,
--26.184,-26.146,-26.191,-26.381,-26.693,-27.035,-27.309,-27.473,-27.558,-27.643,-27.805,-28.070,-28.402,-28.739,-29.028,-29.264,
--29.485,-29.743,-30.067,-30.448,-30.848,-31.221,-31.540,-31.795,-31.979,-32.074,-32.050,-31.885,-31.598,-31.255,-30.959,-30.807,
--30.845,-31.050,-31.350,-31.661,-31.937,-32.182,-32.432,-32.722,-33.050,-33.380,-33.666,-33.886,-34.061,-34.247,-34.494,-34.814,
--35.171,-35.502,-35.755,-35.920,-36.036,-36.157,-36.320,-36.515,-36.700,-36.821,-36.859,-36.837,-36.811,-36.832,-36.915,-37.029,
--37.119,-37.138,-37.074,-36.957,-36.836,-36.750,-36.711,-36.699,-36.684,-36.652,-36.612,-36.593,-36.621,-36.701,-36.813,-36.924,
--37.004,-37.040,-37.043,-37.035,-37.037,-37.058,-37.091,-37.130,-37.167,-37.205,-37.251,-37.309,-37.378,-37.448,-37.502,-37.529,
--37.520,-37.478,-37.412,-37.336,-37.263,-37.206,-37.169,-37.150,-37.139,-37.123,-37.093,-37.049,-36.997,-36.945,-36.897,-36.845,
--36.774,-36.669,-36.523,-36.347,-36.163,-35.994,-35.855,-35.743,-35.642,-35.533,-35.407,-35.270,-35.136,-35.023,-34.937,-34.870,
--34.807,-34.733,-34.644,-34.546,-34.449,-34.359,-34.271,-34.167,-34.031,-33.854,-33.642,-33.416,-33.201,-33.016,-32.866,-32.744,
--32.635,-32.530,-32.426,-32.329,-32.251,-32.196,-32.157,-32.116,-32.049,-31.938,-31.772,-31.556,-31.310,-31.058,-30.822,-30.616,
--30.446,-30.305,-30.187,-30.081,-29.983,-29.887,-29.793,-29.695,-29.590,-29.472,-29.336,-29.180,-29.005,-28.814,-28.609,-28.397,
--28.179,-27.963,-27.754,-27.558,-27.381,-27.226,-27.093,-26.977,-26.874,-26.779,-26.689,-26.605,-26.528,-26.460,-26.400,-26.340,
--26.270,-26.179,-26.062,-25.921,-25.766,-25.610,-25.467,-25.341,-25.230,-25.125,-25.015,-24.896,-24.769,-24.641,-24.520,-24.408,
--24.305,-24.210,-24.122,-24.044,-23.983,-23.944,-23.922,-23.906,-23.881,-23.833,-23.758,-23.662,-23.558,-23.458,-23.368,-23.283,
--23.194,-23.098,-22.999,-22.915,-22.868,-22.871,-22.922,-22.998,-23.064,-23.082,-23.029,-22.902,-22.719,-22.511,-22.307,-22.127,
--21.975,-21.840,-21.711,-21.578,-21.440,-21.301,-21.170,-21.047,-20.930,-20.809,-20.678,-20.536,-20.393,-20.261,-20.152,-20.072,
--20.015,-19.973,-19.935,-19.899,-19.866,-19.844,-19.835,-19.841,-19.855,-19.869,-19.876,-19.874,-19.865,-19.850,-19.830,-19.802,
--19.767,-19.727,-19.690,-19.665,-19.657,-19.662,-19.670,-19.665,-19.639,-19.591,-19.527,-19.458,-19.392,-19.326,-19.253,-19.165,
--19.059,-18.942,-18.827,-18.724,-18.640,-18.575,-18.524,-18.484,-18.459,-18.453,-18.467,-18.494,-18.513,-18.497,-18.423,-18.285,
--18.093,-17.872,-17.652,-17.457,-17.298,-17.173,-17.074,-16.991,-16.915,-16.838,-16.747,-16.624,-16.452,-16.221,-15.934,-15.612,
--15.288,-14.998,-14.770,-14.611,-14.514,-14.456,-14.415,-14.373,-14.323,-14.267,-14.214,-14.170,-14.142,-14.126,-14.121,-14.120,
--14.121,-14.123,-14.127,-14.135,-14.148,-14.165,-14.185,-14.204,-14.219,-14.231,-14.241,-14.252,-14.269,-14.294,-14.328,-14.368,
--14.408,-14.446,-14.476,-14.499,-14.512,-14.516,-14.510,-14.492,-14.464,-14.431,-14.401,-14.382,-14.379,-14.393,-14.419,-14.451,
--14.479,-14.500,-14.512,-14.516,-14.515,-14.509,-14.497,-14.477,-14.448,-14.415,-14.385,-14.364,-14.356,-14.361,-14.372,-14.379,
--14.374,-14.349,-14.303,-14.237,-14.154,-14.053,-13.937,-13.804,-13.657,-13.497,-13.329,-13.159,-12.988,-12.818,-12.650,-12.489,
--12.343,-12.223,-12.142,-12.103,-12.097,-12.103,-12.094,-12.046,-11.949,-11.815,-11.672,-11.551,-11.473,-11.434,-11.411,-11.366,
--11.271,-11.116,-10.920,-10.720,-10.557,-10.461,-10.440,-10.486,-10.579,-10.699,-10.829,-10.957,-11.067,-11.139,-11.151,-11.086,
--10.940,-10.726,-10.469,-10.195,-9.928,-9.684,-9.469,-9.289,-9.146,-9.039,-8.960,-8.887,-8.793,-8.655,-8.465,-8.234,
--7.989,-7.762,-7.572,-7.420,-7.290,-7.161,-7.018,-6.863,-6.705,-6.554,-6.409,-6.259,-6.082,-5.862,-5.596,-5.294,
--4.976,-4.661,-4.360,-4.076,-3.808,-3.559,-3.333,-3.138,-2.976,-2.841,-2.719,-2.592,-2.448,-2.281,-2.095,-1.895,
--1.683,-1.455,-1.201,-.913,-.591,-.246,.103,.435,.736,1.005,1.253,1.501,1.765,2.053,2.357,2.658,
-2.935,3.172,3.373,3.552,3.733,3.933,4.157,4.394,4.620,4.814,4.961,5.058,5.112,5.127,5.106,5.050,
-4.961,4.847,4.723,4.606,4.506,4.423,4.354,4.304,4.303,4.408,4.696,5.245,6.096,7.239,8.599,10.048,
-11.438,12.632,13.537,14.126,14.435,14.552,14.588,14.642,14.777,15.004,15.276,15.514,15.627,15.552,15.272,14.830,
-14.310,13.816,13.439,13.228,13.186,13.274,13.434,13.615,13.789,13.960,14.150,14.382,14.665,14.983,15.307,15.605,
-15.861,16.081,16.290,16.515,16.770,17.049,17.326,17.574,17.776,17.933,18.063,18.191,18.332,18.489,18.648,18.784,
-18.874,18.895,18.832,18.676,18.436,18.139,17.836,17.595,17.482,17.532,17.738,18.038,18.335,18.532,18.560,18.407,
-18.118,17.774,17.460,17.238,17.126,17.109,17.146,17.194,17.226,17.237,17.238,17.256,17.314,17.423,17.579,17.755,
-17.916,18.023,18.052,18.003,17.901,17.787,17.701,17.664,17.670,17.689,17.681,17.620,17.502,17.352,17.207,17.101,
-17.052,17.052,17.078,17.108,17.132,17.155,17.188,17.236,17.292,17.334,17.342,17.309,17.252,17.205,17.203,17.263,
-17.373,17.504,17.622,17.712,17.783,17.866,17.986,18.146,18.321,18.468,18.549,18.558,18.527,18.512,18.562,18.696,
-18.887,19.077,19.208,19.250,19.219,19.168,19.159,19.238,19.407,19.634,19.863,20.051,20.179,20.262,20.334,20.426,
-20.555,20.712,20.871,21.006,21.105,21.172,21.225,21.279,21.341,21.404,21.451,21.471,21.464,21.441,21.410,21.369,
-21.300,21.180,21.004,20.804,20.646,20.609,20.732,20.965,21.148,21.026,20.325,18.845,16.545,13.588,10.323,7.212,
-4.718,3.206,2.860,3.659,5.398,7.743,10.310,12.750,14.807,16.364,17.431,18.120,18.577,18.929,19.245,19.531,
-19.759,19.904,19.974,20.009,20.061,20.163,20.306,20.445,20.526,20.516,20.424,20.295,20.186,20.131,20.134,20.167,
-20.199,20.215,20.230,20.274,20.377,20.539,20.737,20.930,21.080,21.175,21.228,21.270,21.330,21.419,21.532,21.647,
-21.741,21.802,21.828,21.832,21.830,21.839,21.870,21.929,22.018,22.132,22.264,22.406,22.549,22.685,22.809,22.918,
-23.014,23.106,23.212,23.346,23.518,23.723,23.941,24.145,24.314,24.450,24.572,24.716,24.902,25.123,25.338,25.490,
-25.535,25.473,25.347,25.229,25.184,25.233,25.345,25.454,25.490,25.419,25.252,25.038,24.835,24.681,24.585,24.536,
-24.515,24.512,24.528,24.562,24.603,24.629,24.614,24.546,24.433,24.045,23.929,23.805,23.680,23.556,23.437,23.333,
-23.268,23.263,23.333,23.467,23.632,23.777,23.860,23.856,23.768,23.615,23.421,23.204,22.969,22.718,22.455,22.193,
-21.951,21.748,21.592,21.482,21.409,21.362,21.333,21.320,21.322,21.336,21.360,21.387,21.412,21.433,21.448,21.460,
-21.469,21.478,21.492,21.517,21.556,21.610,21.675,21.743,21.811,21.885,21.980,22.115,22.302,22.536,22.801,23.071,
-23.328,23.565,23.793,24.030,24.294,24.587,24.901,25.219,25.522,25.798,26.040,26.254,26.447,26.636,26.837,27.071,
-27.345,27.652,27.965,28.244,28.457,28.592,28.669,28.731,28.825,28.977,29.176,29.384,29.557,29.671,29.735,29.788,
-29.875,30.021,30.216,30.420,30.584,30.674,30.683,30.629,30.543,30.453,30.378,30.332,30.333,30.399,30.539,30.738,
-30.955,31.131,31.218,31.200,31.113,31.028,31.021,31.136,31.364,31.651,31.928,32.148,32.306,32.440,32.601,32.821,
-33.100,33.404,33.688,33.927,34.123,34.303,34.495,34.710,34.938,35.150,35.320,35.441,35.531,35.618,35.730,35.878,
-36.055,36.246,36.437,36.624,36.813,37.010,37.217,37.428,37.631,37.817,37.987,38.146,38.304,38.469,38.640,38.817,
-38.997,39.181,39.370,39.568,39.770,39.966,40.143,40.289,40.399,40.478,40.538,40.589,40.639,40.689,40.736,40.775,
-40.801,40.810,40.803,40.779,40.741,40.695,40.651,40.623,40.622,40.652,40.707,40.773,40.831,40.865,40.869,40.851,
-40.824,40.804,40.800,40.808,40.813,40.797,40.745,40.650,40.520,40.368,40.208,40.053,39.904,39.759,39.615,39.470,
-39.329,39.197,39.078,38.969,38.862,38.746,38.615,38.471,38.326,38.195,38.094,38.025,37.982,37.945,37.895,37.817,
-37.709,37.584,37.463,37.363,37.295,37.253,37.224,37.191,37.144,37.084,37.021,36.968,36.928,36.892,36.843,36.767,
-36.658,36.525,36.388,36.264,36.158,36.061,35.957,35.836,35.702,35.575,35.473,35.407,35.363,35.315,35.237,35.121,
-34.983,34.856,34.770,34.738,34.748,34.774,34.799,34.825,34.880,34.994,35.186,35.442,35.720,35.967,36.143,36.231,
-36.242,36.198,36.116,36.007,35.876,35.731,35.588,35.467,35.372,35.289,35.179,35.006,34.749,34.425,34.083,33.782,
-33.564,33.443,33.399,33.401,33.427,33.472,33.540,33.626,33.708,33.743,33.689,33.531,33.290,33.018,32.769,32.571,
-32.414,32.256,32.054,31.792,31.492,31.203,30.971,30.808,30.687,30.554,30.360,30.089,29.766,29.444,29.171,28.964,
-28.796,28.610,28.344,27.963,27.465,26.883,26.262,25.640,25.035,24.450,23.874,23.301,22.729,22.165,21.619,21.100,
-20.623,20.202,19.854,19.593,19.418,19.304,19.209,19.081,18.879,18.591,18.238,17.871,17.543,17.293,17.126,17.015,
-16.915,16.783,16.599,16.362,16.092,15.813,15.541,15.281,15.030,14.783,14.541,14.309,14.094,13.895,13.704,13.506,
-13.284,13.026,12.729,12.398,12.045,11.684,11.330,10.990,10.671,10.371,10.081,9.790,9.486,9.159,8.809,8.444,
-8.077,7.720,7.381,7.058,6.745,6.435,6.127,5.821,5.521,5.228,4.939,4.649,4.352,4.042,3.720,3.388,
-3.045,2.690,2.319,1.931,1.533,1.136,.753,.397,.071,-.231,-.516,-.788,-1.048,-1.294,-1.527,-1.758,
--2.010,-2.304,-2.653,-3.049,-3.467,-3.870,-4.229,-4.534,-4.801,-5.058,-5.336,-5.646,-5.980,-6.315,-6.628,-6.910,
--7.172,-7.436,-7.725,-8.048,-8.393,-8.736,-9.048,-9.315,-9.543,-9.752,-9.972,-10.226,-10.526,-10.863,-11.220,-11.578,
--11.923,-12.249,-12.564,-12.877,-13.197,-13.525,-13.860,-14.193,-14.517,-14.829,-15.130,-15.423,-15.709,-15.986,-16.253,-16.507,
--16.752,-16.994,-17.246,-17.513,-17.793,-18.074,-18.338,-18.572,-18.772,-18.949,-19.121,-19.306,-19.516,-19.746,-19.986,-20.220,
--20.436,-20.631,-20.809,-20.977,-21.143,-21.313,-21.491,-21.680,-21.879,-22.084,-22.288,-22.483,-22.664,-22.832,-22.992,-23.151,
--23.315,-23.480,-23.639,-23.785,-23.917,-24.045,-24.180,-24.332,-24.499,-24.670,-24.827,-24.962,-25.077,-25.187,-25.307,-25.441,
--25.580,-25.703,-25.792,-25.843,-25.870,-25.896,-25.939,-26.003,-26.073,-26.128,-26.155,-26.157,-26.151,-26.154,-26.176,-26.206,
--26.228,-26.229,-26.208,-26.181,-26.166,-26.170,-26.184,-26.186,-26.157,-26.096,-26.020,-25.959,-25.933,-25.941,-25.964,-25.975,
--25.960,-25.924,-25.891,-25.883,-25.907,-25.946,-25.975,-25.974,-25.945,-25.912,-25.904,-25.935,-25.991,-26.037,-26.034,-25.964,
--25.837,-25.690,-25.565,-25.492,-25.473,-25.490,-25.513,-25.514,-25.469,-25.366,-25.197,-24.962,-24.678,-24.374,-24.090,-23.859,
--23.696,-23.589,-23.509,-23.429,-23.342,-23.263,-23.218,-23.217,-23.242,-23.248,-23.190,-23.048,-22.853,-22.667,-22.557,-22.550,
--22.619,-22.695,-22.707,-22.629,-22.494,-22.385,-22.383,-22.528,-22.796,-23.112,-23.391,-23.576,-23.655,-23.653,-23.603,-23.528,
--23.433,-23.325,-23.229,-23.184,-23.233,-23.389,-23.622,-23.866,-24.053,-24.151,-24.178,-24.186,-24.226,-24.309,-24.402,-24.452,
--24.428,-24.357,-24.309,-24.356,-24.521,-24.749,-24.934,-24.987,-24.904,-24.789,-24.813,-25.120,-25.739,-26.541,-27.289,-27.741,
--27.772,-27.429,-26.909,-26.465,-26.286,-26.425,-26.799,-27.255,-27.655,-27.937,-28.128,-28.294,-28.499,-28.762,-29.066,-29.380,
--29.690,-30.004,-30.339,-30.702,-31.076,-31.429,-31.734,-31.989,-32.207,-32.403,-32.574,-32.690,-32.718,-32.647,-32.509,-32.372,
--32.316,-32.388,-32.581,-32.846,-33.116,-33.352,-33.555,-33.758,-33.996,-34.277,-34.574,-34.843,-35.054,-35.213,-35.356,-35.529,
--35.756,-36.025,-36.298,-36.535,-36.719,-36.862,-36.992,-37.130,-37.273,-37.396,-37.474,-37.504,-37.508,-37.528,-37.593,-37.700,
--37.815,-37.890,-37.890,-37.816,-37.703,-37.598,-37.533,-37.511,-37.506,-37.488,-37.447,-37.395,-37.365,-37.387,-37.467,-37.582,
--37.695,-37.769,-37.793,-37.780,-37.759,-37.757,-37.790,-37.850,-37.921,-37.987,-38.041,-38.082,-38.117,-38.147,-38.170,-38.178,
--38.162,-38.122,-38.061,-37.990,-37.922,-37.867,-37.827,-37.801,-37.783,-37.762,-37.734,-37.696,-37.652,-37.608,-37.570,-37.535,
--37.495,-37.437,-37.349,-37.228,-37.082,-36.925,-36.775,-36.640,-36.517,-36.397,-36.267,-36.120,-35.961,-35.802,-35.656,-35.532,
--35.433,-35.353,-35.287,-35.230,-35.180,-35.132,-35.077,-34.999,-34.884,-34.722,-34.518,-34.289,-34.060,-33.855,-33.687,-33.552,
--33.437,-33.324,-33.198,-33.058,-32.914,-32.780,-32.667,-32.576,-32.498,-32.412,-32.299,-32.145,-31.950,-31.725,-31.490,-31.266,
--31.068,-30.902,-30.764,-30.645,-30.536,-30.432,-30.329,-30.228,-30.128,-30.026,-29.916,-29.792,-29.650,-29.489,-29.310,-29.118,
--28.919,-28.714,-28.507,-28.298,-28.092,-27.893,-27.708,-27.542,-27.399,-27.277,-27.171,-27.076,-26.987,-26.901,-26.818,-26.740,
--26.664,-26.589,-26.511,-26.427,-26.339,-26.248,-26.158,-26.070,-25.978,-25.875,-25.752,-25.608,-25.447,-25.281,-25.124,-24.987,
--24.872,-24.769,-24.670,-24.567,-24.460,-24.358,-24.274,-24.214,-24.178,-24.154,-24.128,-24.088,-24.029,-23.955,-23.873,-23.787,
--23.700,-23.606,-23.508,-23.412,-23.334,-23.294,-23.302,-23.357,-23.439,-23.512,-23.542,-23.506,-23.397,-23.231,-23.035,-22.834,
--22.647,-22.475,-22.314,-22.152,-21.985,-21.817,-21.656,-21.509,-21.380,-21.265,-21.154,-21.041,-20.924,-20.810,-20.708,-20.624,
--20.559,-20.506,-20.459,-20.410,-20.363,-20.322,-20.297,-20.290,-20.300,-20.316,-20.328,-20.331,-20.322,-20.307,-20.288,-20.269,
--20.247,-20.219,-20.188,-20.155,-20.126,-20.105,-20.089,-20.070,-20.040,-19.995,-19.935,-19.870,-19.805,-19.746,-19.687,-19.618,
--19.531,-19.426,-19.311,-19.197,-19.097,-19.014,-18.946,-18.884,-18.823,-18.764,-18.716,-18.684,-18.668,-18.661,-18.644,-18.604,
--18.533,-18.435,-18.323,-18.212,-18.114,-18.031,-17.958,-17.892,-17.830,-17.775,-17.728,-17.684,-17.631,-17.550,-17.425,-17.249,
--17.031,-16.789,-16.549,-16.329,-16.136,-15.967,-15.810,-15.656,-15.501,-15.350,-15.212,-15.095,-15.002,-14.926,-14.857,-14.785,
--14.707,-14.628,-14.562,-14.525,-14.528,-14.573,-14.649,-14.734,-14.807,-14.850,-14.857,-14.834,-14.794,-14.754,-14.727,-14.719,
--14.728,-14.752,-14.788,-14.835,-14.892,-14.955,-15.014,-15.055,-15.063,-15.030,-14.960,-14.867,-14.772,-14.696,-14.651,-14.639,
--14.652,-14.678,-14.706,-14.730,-14.747,-14.756,-14.756,-14.744,-14.720,-14.687,-14.651,-14.622,-14.610,-14.618,-14.641,-14.668,
--14.686,-14.686,-14.663,-14.619,-14.558,-14.484,-14.396,-14.289,-14.156,-13.997,-13.814,-13.618,-13.421,-13.232,-13.055,-12.890,
--12.736,-12.594,-12.470,-12.373,-12.309,-12.276,-12.260,-12.242,-12.201,-12.127,-12.023,-11.906,-11.795,-11.704,-11.632,-11.563,
--11.479,-11.364,-11.221,-11.066,-10.923,-10.816,-10.753,-10.734,-10.747,-10.783,-10.838,-10.912,-11.003,-11.097,-11.171,-11.194,
--11.144,-11.012,-10.811,-10.564,-10.300,-10.042,-9.804,-9.596,-9.424,-9.295,-9.209,-9.156,-9.110,-9.037,-8.907,-8.711,
--8.464,-8.203,-7.970,-7.790,-7.664,-7.569,-7.472,-7.351,-7.205,-7.048,-6.897,-6.758,-6.616,-6.444,-6.214,-5.917,
--5.566,-5.194,-4.838,-4.520,-4.247,-4.007,-3.785,-3.571,-3.363,-3.169,-2.995,-2.839,-2.694,-2.546,-2.384,-2.207,
--2.017,-1.819,-1.613,-1.387,-1.131,-.836,-.505,-.156,.185,.493,.759,.991,1.212,1.448,1.715,2.011,
-2.316,2.604,2.858,3.076,3.274,3.475,3.698,3.949,4.214,4.472,4.702,4.894,5.049,5.177,5.285,5.374,
-5.439,5.475,5.482,5.471,5.453,5.432,5.401,5.344,5.247,5.121,5.010,4.995,5.170,5.619,6.383,7.435,
-8.687,10.010,11.262,12.335,13.169,13.766,14.176,14.467,14.697,14.897,15.061,15.157,15.152,15.028,14.797,14.504,
-14.208,13.966,13.811,13.750,13.762,13.815,13.882,13.952,14.033,14.145,14.309,14.535,14.811,15.114,15.412,15.682,
-15.917,16.128,16.338,16.570,16.833,17.118,17.399,17.644,17.831,17.956,18.035,18.098,18.180,18.308,18.494,18.728,
-18.983,19.218,19.382,19.425,19.316,19.053,18.675,18.260,17.903,17.690,17.669,17.824,18.086,18.355,18.533,18.565,
-18.447,18.229,17.985,17.783,17.665,17.631,17.652,17.684,17.686,17.636,17.541,17.431,17.351,17.345,17.441,17.638,
-17.898,18.160,18.358,18.448,18.427,18.333,18.229,18.174,18.195,18.271,18.345,18.352,18.254,18.058,17.818,17.608,
-17.489,17.484,17.568,17.688,17.788,17.837,17.833,17.797,17.754,17.714,17.669,17.604,17.512,17.410,17.330,17.310,
-17.370,17.500,17.663,17.816,17.928,17.998,18.051,18.119,18.226,18.365,18.510,18.629,18.703,18.742,18.776,18.844,
-18.963,19.127,19.299,19.439,19.517,19.533,19.512,19.492,19.504,19.560,19.651,19.758,19.867,19.981,20.116,20.290,
-20.508,20.754,20.992,21.184,21.309,21.369,21.395,21.427,21.496,21.608,21.747,21.881,21.988,22.060,22.108,22.144,
-22.165,22.145,22.047,21.849,21.572,21.289,21.100,21.091,21.273,21.546,21.708,21.500,20.682,19.122,16.840,14.021,
-10.983,8.111,5.781,4.298,3.838,4.425,5.925,8.070,10.516,12.910,14.972,16.543,17.608,18.263,18.659,18.937,
-19.190,19.444,19.688,19.899,20.069,20.207,20.324,20.420,20.479,20.476,20.399,20.264,20.112,19.993,19.940,19.955,
-20.013,20.078,20.132,20.179,20.248,20.368,20.547,20.762,20.970,21.124,21.203,21.215,21.197,21.194,21.234,21.321,
-21.431,21.531,21.595,21.615,21.609,21.604,21.625,21.686,21.783,21.902,22.027,22.149,22.272,22.400,22.537,22.676,
-22.808,22.921,23.020,23.118,23.240,23.404,23.610,23.834,24.040,24.202,24.316,24.409,24.524,24.691,24.910,25.141,
-25.323,25.405,25.377,25.276,25.169,25.119,25.155,25.253,25.359,25.411,25.375,25.257,25.093,24.928,24.791,24.686,
-24.601,24.522,24.445,24.374,24.320,24.283,24.251,24.208,24.140,24.045,23.608,23.488,23.349,23.197,23.044,22.903,
-22.797,22.751,22.782,22.885,23.034,23.180,23.270,23.266,23.159,22.968,22.730,22.483,22.249,22.036,21.840,21.659,
-21.500,21.371,21.280,21.228,21.202,21.182,21.153,21.108,21.050,20.991,20.941,20.904,20.879,20.860,20.845,20.836,
-20.838,20.859,20.901,20.964,21.037,21.109,21.168,21.209,21.239,21.273,21.332,21.438,21.600,21.813,22.057,22.307,
-22.545,22.768,22.989,23.230,23.510,23.834,24.186,24.539,24.862,25.140,25.371,25.572,25.765,25.972,26.209,26.479,
-26.777,27.088,27.386,27.644,27.841,27.973,28.056,28.128,28.229,28.386,28.594,28.817,29.006,29.124,29.169,29.178,
-29.209,29.311,29.495,29.730,29.952,30.100,30.142,30.090,29.990,29.896,29.848,29.860,29.920,30.011,30.120,30.239,
-30.363,30.482,30.577,30.632,30.646,30.643,30.662,30.741,30.900,31.125,31.377,31.614,31.811,31.974,32.131,32.316,
-32.547,32.818,33.104,33.378,33.626,33.853,34.073,34.292,34.505,34.692,34.831,34.917,34.964,35.004,35.072,35.189,
-35.354,35.550,35.757,35.958,36.155,36.355,36.564,36.783,37.002,37.208,37.391,37.554,37.707,37.862,38.029,38.212,
-38.405,38.602,38.797,38.984,39.160,39.322,39.467,39.594,39.703,39.798,39.883,39.957,40.020,40.067,40.098,40.119,
-40.139,40.164,40.197,40.227,40.239,40.221,40.173,40.110,40.056,40.037,40.063,40.129,40.212,40.283,40.324,40.330,
-40.313,40.291,40.276,40.272,40.269,40.253,40.209,40.134,40.030,39.908,39.777,39.642,39.507,39.369,39.228,39.083,
-38.937,38.792,38.652,38.518,38.393,38.274,38.159,38.046,37.931,37.815,37.701,37.596,37.506,37.431,37.368,37.304,
-37.227,37.135,37.035,36.945,36.887,36.869,36.886,36.913,36.921,36.891,36.818,36.722,36.626,36.551,36.496,36.449,
-36.387,36.300,36.191,36.081,35.988,35.923,35.876,35.825,35.749,35.643,35.517,35.391,35.279,35.181,35.083,34.974,
-34.851,34.734,34.650,34.620,34.640,34.688,34.729,34.746,34.747,34.769,34.856,35.035,35.296,35.599,35.890,36.126,
-36.292,36.396,36.458,36.488,36.485,36.444,36.366,36.266,36.170,36.094,36.028,35.935,35.766,35.489,35.112,34.683,
-34.279,33.968,33.787,33.731,33.765,33.847,33.946,34.042,34.118,34.153,34.114,33.975,33.732,33.412,33.069,32.756,
-32.503,32.301,32.114,31.904,31.659,31.402,31.179,31.025,30.934,30.857,30.720,30.466,30.088,29.639,29.207,28.876,
-28.682,28.595,28.539,28.424,28.187,27.813,27.328,26.778,26.194,25.589,24.956,24.286,23.588,22.891,22.232,21.643,
-21.133,20.694,20.309,19.968,19.674,19.438,19.264,19.135,19.011,18.842,18.588,18.242,17.834,17.422,17.065,16.801,
-16.633,16.530,16.448,16.342,16.187,15.979,15.729,15.454,15.171,14.890,14.620,14.368,14.139,13.936,13.753,13.578,
-13.394,13.185,12.939,12.655,12.335,11.989,11.627,11.261,10.903,10.562,10.242,9.942,9.653,9.363,9.058,8.729,
-8.378,8.012,7.643,7.283,6.938,6.614,6.308,6.018,5.738,5.462,5.181,4.886,4.573,4.243,3.905,3.568,
-3.240,2.917,2.589,2.241,1.862,1.453,1.030,.614,.227,-.119,-.423,-.696,-.948,-1.187,-1.416,-1.640,
--1.868,-2.117,-2.405,-2.739,-3.115,-3.511,-3.897,-4.250,-4.565,-4.854,-5.143,-5.451,-5.784,-6.128,-6.459,-6.755,
--7.011,-7.243,-7.479,-7.745,-8.051,-8.386,-8.724,-9.035,-9.304,-9.534,-9.751,-9.983,-10.256,-10.579,-10.941,-11.321,
--11.693,-12.042,-12.361,-12.658,-12.945,-13.237,-13.541,-13.858,-14.185,-14.515,-14.841,-15.160,-15.467,-15.760,-16.035,-16.292,
--16.536,-16.773,-17.014,-17.268,-17.536,-17.814,-18.088,-18.347,-18.582,-18.793,-18.989,-19.182,-19.385,-19.599,-19.824,-20.052,
--20.275,-20.489,-20.691,-20.881,-21.063,-21.237,-21.409,-21.584,-21.767,-21.959,-22.158,-22.357,-22.547,-22.725,-22.892,-23.055,
--23.219,-23.387,-23.555,-23.715,-23.864,-24.004,-24.146,-24.300,-24.469,-24.642,-24.804,-24.940,-25.048,-25.142,-25.245,-25.376,
--25.536,-25.707,-25.860,-25.969,-26.030,-26.060,-26.087,-26.133,-26.205,-26.289,-26.362,-26.408,-26.426,-26.429,-26.437,-26.456,
--26.482,-26.501,-26.502,-26.488,-26.473,-26.471,-26.490,-26.519,-26.536,-26.523,-26.476,-26.407,-26.340,-26.295,-26.275,-26.270,
--26.264,-26.249,-26.231,-26.225,-26.240,-26.275,-26.310,-26.324,-26.306,-26.267,-26.235,-26.234,-26.273,-26.333,-26.379,-26.376,
--26.310,-26.195,-26.065,-25.957,-25.893,-25.874,-25.884,-25.900,-25.901,-25.869,-25.788,-25.646,-25.436,-25.169,-24.873,-24.588,
--24.352,-24.181,-24.066,-23.978,-23.888,-23.790,-23.702,-23.651,-23.652,-23.686,-23.706,-23.662,-23.531,-23.338,-23.145,-23.022,
--23.003,-23.065,-23.143,-23.165,-23.094,-22.956,-22.822,-22.771,-22.849,-23.047,-23.308,-23.560,-23.751,-23.861,-23.899,-23.880,
--23.816,-23.714,-23.591,-23.482,-23.439,-23.505,-23.685,-23.938,-24.190,-24.373,-24.460,-24.478,-24.487,-24.534,-24.625,-24.716,
--24.751,-24.709,-24.627,-24.585,-24.655,-24.845,-25.083,-25.252,-25.278,-25.190,-25.144,-25.347,-25.949,-26.929,-28.072,-29.035,
--29.498,-29.311,-28.570,-27.577,-26.711,-26.263,-26.330,-26.802,-27.448,-28.036,-28.432,-28.633,-28.731,-28.838,-29.030,-29.318,
--29.675,-30.063,-30.457,-30.851,-31.238,-31.604,-31.927,-32.192,-32.408,-32.605,-32.817,-33.057,-33.304,-33.513,-33.642,-33.683,
--33.670,-33.663,-33.720,-33.865,-34.079,-34.321,-34.551,-34.756,-34.952,-35.165,-35.409,-35.672,-35.920,-36.121,-36.263,-36.365,
--36.465,-36.599,-36.781,-36.998,-37.225,-37.434,-37.611,-37.755,-37.874,-37.968,-38.039,-38.087,-38.121,-38.158,-38.217,-38.304,
--38.405,-38.490,-38.530,-38.512,-38.447,-38.369,-38.312,-38.291,-38.301,-38.314,-38.307,-38.272,-38.223,-38.190,-38.196,-38.247,
--38.326,-38.404,-38.457,-38.478,-38.481,-38.489,-38.520,-38.579,-38.655,-38.729,-38.787,-38.824,-38.842,-38.851,-38.853,-38.847,
--38.826,-38.786,-38.726,-38.653,-38.577,-38.510,-38.458,-38.420,-38.392,-38.367,-38.340,-38.308,-38.271,-38.232,-38.193,-38.159,
--38.128,-38.095,-38.053,-37.996,-37.919,-37.821,-37.706,-37.579,-37.445,-37.304,-37.156,-37.000,-36.835,-36.666,-36.499,-36.341,
--36.198,-36.075,-35.973,-35.895,-35.838,-35.797,-35.761,-35.715,-35.641,-35.526,-35.365,-35.167,-34.951,-34.740,-34.552,-34.398,
--34.272,-34.161,-34.047,-33.918,-33.768,-33.603,-33.432,-33.267,-33.117,-32.981,-32.851,-32.717,-32.568,-32.399,-32.213,-32.017,
--31.824,-31.643,-31.481,-31.335,-31.202,-31.075,-30.950,-30.825,-30.702,-30.579,-30.457,-30.330,-30.194,-30.043,-29.880,-29.708,
--29.534,-29.364,-29.201,-29.040,-28.876,-28.703,-28.520,-28.332,-28.146,-27.972,-27.819,-27.685,-27.568,-27.459,-27.350,-27.237,
--27.121,-27.006,-26.899,-26.807,-26.734,-26.678,-26.635,-26.597,-26.552,-26.489,-26.398,-26.275,-26.125,-25.959,-25.795,-25.646,
--25.522,-25.418,-25.323,-25.221,-25.101,-24.964,-24.820,-24.687,-24.579,-24.504,-24.457,-24.428,-24.402,-24.369,-24.326,-24.275,
--24.222,-24.167,-24.111,-24.051,-23.988,-23.930,-23.886,-23.867,-23.877,-23.908,-23.944,-23.964,-23.951,-23.896,-23.801,-23.678,
--23.538,-23.389,-23.230,-23.060,-22.873,-22.672,-22.464,-22.263,-22.080,-21.920,-21.782,-21.658,-21.542,-21.428,-21.318,-21.216,
--21.128,-21.055,-20.993,-20.939,-20.889,-20.845,-20.811,-20.793,-20.791,-20.801,-20.813,-20.819,-20.812,-20.793,-20.766,-20.737,
--20.709,-20.683,-20.656,-20.626,-20.592,-20.553,-20.511,-20.465,-20.411,-20.349,-20.279,-20.207,-20.138,-20.078,-20.025,-19.977,
--19.924,-19.864,-19.795,-19.723,-19.652,-19.586,-19.519,-19.443,-19.348,-19.232,-19.103,-18.974,-18.864,-18.780,-18.725,-18.689,
--18.659,-18.626,-18.585,-18.537,-18.486,-18.432,-18.376,-18.314,-18.247,-18.180,-18.123,-18.086,-18.073,-18.082,-18.101,-18.115,
--18.109,-18.075,-18.011,-17.920,-17.803,-17.660,-17.490,-17.294,-17.079,-16.857,-16.645,-16.458,-16.301,-16.172,-16.055,-15.930,
--15.783,-15.611,-15.427,-15.257,-15.129,-15.066,-15.076,-15.146,-15.248,-15.350,-15.423,-15.456,-15.452,-15.424,-15.390,-15.358,
--15.333,-15.312,-15.293,-15.281,-15.287,-15.320,-15.384,-15.470,-15.557,-15.617,-15.628,-15.583,-15.489,-15.371,-15.253,-15.156,
--15.091,-15.057,-15.045,-15.049,-15.059,-15.071,-15.080,-15.080,-15.063,-15.029,-14.981,-14.930,-14.890,-14.874,-14.884,-14.913,
--14.947,-14.968,-14.967,-14.942,-14.896,-14.837,-14.768,-14.686,-14.580,-14.441,-14.264,-14.057,-13.835,-13.619,-13.424,-13.259,
--13.119,-12.996,-12.878,-12.760,-12.646,-12.541,-12.452,-12.380,-12.319,-12.260,-12.194,-12.118,-12.037,-11.958,-11.885,-11.815,
--11.739,-11.647,-11.533,-11.402,-11.269,-11.150,-11.058,-10.999,-10.968,-10.958,-10.964,-10.987,-11.030,-11.091,-11.160,-11.213,
--11.226,-11.176,-11.055,-10.873,-10.647,-10.400,-10.151,-9.916,-9.706,-9.533,-9.405,-9.325,-9.280,-9.241,-9.171,-9.041,
--8.840,-8.588,-8.322,-8.087,-7.908,-7.785,-7.692,-7.597,-7.475,-7.327,-7.170,-7.026,-6.903,-6.786,-6.643,-6.441,
--6.165,-5.825,-5.459,-5.107,-4.799,-4.541,-4.317,-4.101,-3.873,-3.629,-3.381,-3.148,-2.945,-2.772,-2.618,-2.466,
--2.300,-2.114,-1.908,-1.684,-1.444,-1.186,-.909,-.615,-.316,-.025,.244,.486,.705,.919,1.146,1.396,
-1.669,1.952,2.231,2.493,2.738,2.976,3.217,3.471,3.733,3.994,4.242,4.469,4.680,4.885,5.093,5.304,
-5.507,5.682,5.814,5.899,5.950,5.990,6.040,6.105,6.170,6.209,6.197,6.134,6.051,6.014,6.099,6.372,
-6.863,7.558,8.403,9.325,10.258,11.157,12.005,12.800,13.536,14.188,14.704,15.026,15.111,14.960,14.628,14.218,
-13.849,13.618,13.570,13.686,13.899,14.121,14.286,14.368,14.390,14.404,14.465,14.605,14.821,15.083,15.348,15.584,
-15.781,15.953,16.132,16.345,16.607,16.909,17.226,17.527,17.783,17.982,18.122,18.218,18.293,18.371,18.477,18.629,
-18.836,19.089,19.359,19.598,19.747,19.760,19.617,19.341,18.991,18.648,18.384,18.238,18.204,18.236,18.275,18.273,
-18.217,18.126,18.042,18.005,18.036,18.124,18.234,18.319,18.336,18.260,18.090,17.852,17.593,17.374,17.253,17.269,
-17.425,17.683,17.971,18.211,18.348,18.372,18.325,18.277,18.297,18.411,18.592,18.768,18.859,18.816,18.644,18.400,
-18.171,18.029,18.004,18.075,18.184,18.273,18.301,18.266,18.189,18.096,18.005,17.912,17.806,17.682,17.556,17.457,
-17.420,17.466,17.586,17.748,17.909,18.037,18.125,18.193,18.272,18.385,18.536,18.701,18.845,18.937,18.970,18.962,
-18.950,18.972,19.052,19.190,19.365,19.546,19.703,19.820,19.896,19.941,19.973,20.008,20.059,20.138,20.252,20.405,
-20.594,20.809,21.031,21.238,21.413,21.551,21.663,21.770,21.890,22.032,22.185,22.323,22.423,22.471,22.476,22.464,
-22.457,22.461,22.457,22.406,22.271,22.046,21.769,21.509,21.341,21.305,21.372,21.440,21.353,20.940,20.061,18.641,
-16.697,14.337,11.758,9.228,7.056,5.543,4.924,5.301,6.606,8.606,10.949,13.258,15.230,16.701,17.667,18.244,
-18.598,18.874,19.154,19.449,19.732,19.966,20.135,20.240,20.293,20.304,20.272,20.195,20.083,19.960,19.859,19.811,
-19.825,19.890,19.982,20.079,20.177,20.289,20.433,20.618,20.829,21.029,21.178,21.252,21.254,21.214,21.177,21.176,
-21.224,21.304,21.386,21.445,21.475,21.489,21.517,21.579,21.681,21.807,21.931,22.034,22.113,22.184,22.272,22.394,
-22.547,22.711,22.859,22.979,23.080,23.191,23.341,23.542,23.778,24.010,24.197,24.317,24.385,24.438,24.518,24.644,
-24.800,24.947,25.041,25.063,25.030,24.986,24.974,25.018,25.103,25.188,25.228,25.199,25.103,24.966,24.821,24.688,
-24.569,24.455,24.337,24.213,24.094,23.990,23.909,23.843,23.780,23.704,23.608,23.147,23.019,22.871,22.711,22.553,
-22.416,22.324,22.297,22.344,22.451,22.584,22.693,22.731,22.671,22.513,22.284,22.026,21.776,21.559,21.382,21.239,
-21.121,21.024,20.946,20.884,20.830,20.773,20.698,20.600,20.482,20.357,20.246,20.162,20.112,20.095,20.105,20.135,
-20.181,20.244,20.324,20.415,20.508,20.592,20.654,20.691,20.708,20.723,20.761,20.845,20.988,21.187,21.423,21.668,
-21.897,22.099,22.287,22.487,22.730,23.036,23.401,23.797,24.183,24.522,24.795,25.008,25.187,25.367,25.576,25.827,
-26.114,26.417,26.708,26.963,27.165,27.313,27.423,27.521,27.637,27.792,27.984,28.193,28.382,28.521,28.598,28.636,
-28.677,28.768,28.933,29.155,29.387,29.567,29.650,29.631,29.547,29.454,29.407,29.430,29.517,29.633,29.746,29.835,
-29.896,29.943,29.987,30.034,30.084,30.139,30.207,30.305,30.447,30.637,30.862,31.097,31.317,31.510,31.682,31.853,
-32.042,32.262,32.507,32.768,33.031,33.291,33.547,33.798,34.032,34.230,34.371,34.447,34.471,34.475,34.499,34.573,
-34.708,34.892,35.100,35.309,35.509,35.703,35.902,36.113,36.335,36.555,36.762,36.949,37.118,37.283,37.456,37.648,
-37.860,38.084,38.309,38.521,38.708,38.863,38.982,39.072,39.142,39.207,39.279,39.361,39.445,39.516,39.560,39.573,
-39.567,39.559,39.570,39.605,39.653,39.692,39.699,39.669,39.613,39.558,39.531,39.547,39.600,39.668,39.727,39.761,
-39.770,39.765,39.759,39.756,39.750,39.729,39.684,39.612,39.523,39.429,39.336,39.247,39.152,39.044,38.917,38.776,
-38.627,38.478,38.333,38.194,38.060,37.933,37.818,37.716,37.623,37.530,37.423,37.295,37.149,37.001,36.870,36.771,
-36.704,36.661,36.627,36.593,36.564,36.551,36.565,36.602,36.644,36.659,36.623,36.528,36.394,36.253,36.136,36.058,
-36.011,35.976,35.933,35.874,35.810,35.756,35.720,35.695,35.661,35.598,35.496,35.362,35.215,35.074,34.948,34.838,
-34.738,34.651,34.590,34.568,34.590,34.641,34.691,34.711,34.690,34.650,34.634,34.690,34.845,35.086,35.371,35.644,
-35.865,36.021,36.120,36.180,36.207,36.198,36.142,36.045,35.933,35.841,35.798,35.798,35.800,35.740,35.567,35.271,
-34.898,34.527,34.242,34.093,34.082,34.166,34.286,34.390,34.443,34.432,34.348,34.182,33.929,33.597,33.214,32.827,
-32.481,32.202,31.983,31.794,31.602,31.393,31.188,31.022,30.924,30.881,30.841,30.727,30.482,30.097,29.629,29.172,
-28.818,28.610,28.526,28.493,28.422,28.252,27.967,27.592,27.161,26.694,26.180,25.588,24.898,24.118,23.292,22.488,
-21.765,21.153,20.646,20.215,19.830,19.481,19.181,18.948,18.786,18.675,18.565,18.402,18.150,17.807,17.410,17.020,
-16.692,16.457,16.313,16.231,16.166,16.075,15.933,15.730,15.473,15.180,14.872,14.569,14.288,14.036,13.814,13.612,
-13.415,13.209,12.983,12.731,12.455,12.156,11.838,11.505,11.160,10.811,10.468,10.141,9.836,9.549,9.272,8.991,
-8.692,8.369,8.021,7.656,7.283,6.914,6.560,6.226,5.917,5.630,5.357,5.083,4.794,4.480,4.141,3.789,
-3.440,3.106,2.789,2.474,2.141,1.771,1.360,.921,.484,.078,-.276,-.573,-.827,-1.059,-1.286,-1.521,
--1.768,-2.028,-2.304,-2.603,-2.929,-3.280,-3.647,-4.012,-4.360,-4.687,-4.997,-5.303,-5.616,-5.938,-6.258,-6.561,
--6.835,-7.081,-7.314,-7.559,-7.833,-8.140,-8.467,-8.790,-9.086,-9.344,-9.573,-9.797,-10.044,-10.334,-10.669,-11.036,
--11.413,-11.776,-12.112,-12.420,-12.708,-12.988,-13.272,-13.566,-13.872,-14.188,-14.511,-14.838,-15.161,-15.474,-15.771,-16.047,
--16.304,-16.549,-16.792,-17.045,-17.312,-17.589,-17.865,-18.128,-18.370,-18.592,-18.799,-19.005,-19.219,-19.443,-19.675,-19.907,
--20.133,-20.352,-20.563,-20.769,-20.970,-21.164,-21.349,-21.527,-21.702,-21.880,-22.065,-22.257,-22.448,-22.633,-22.806,-22.971,
--23.134,-23.300,-23.471,-23.641,-23.804,-23.955,-24.100,-24.249,-24.413,-24.591,-24.775,-24.944,-25.084,-25.193,-25.285,-25.386,
--25.515,-25.674,-25.847,-26.007,-26.130,-26.208,-26.256,-26.297,-26.351,-26.423,-26.504,-26.573,-26.620,-26.646,-26.663,-26.687,
--26.725,-26.770,-26.809,-26.830,-26.834,-26.831,-26.837,-26.857,-26.885,-26.906,-26.903,-26.872,-26.822,-26.769,-26.726,-26.699,
--26.682,-26.665,-26.646,-26.632,-26.633,-26.654,-26.687,-26.715,-26.722,-26.700,-26.664,-26.635,-26.633,-26.662,-26.704,-26.730,
--26.712,-26.645,-26.543,-26.434,-26.346,-26.295,-26.279,-26.284,-26.296,-26.297,-26.272,-26.206,-26.081,-25.890,-25.641,-25.363,
--25.097,-24.879,-24.722,-24.615,-24.525,-24.425,-24.311,-24.203,-24.132,-24.118,-24.142,-24.161,-24.121,-23.998,-23.811,-23.621,
--23.495,-23.471,-23.533,-23.619,-23.657,-23.605,-23.471,-23.313,-23.206,-23.202,-23.310,-23.498,-23.714,-23.912,-24.064,-24.157,
--24.187,-24.149,-24.050,-23.916,-23.797,-23.753,-23.826,-24.017,-24.275,-24.522,-24.694,-24.772,-24.791,-24.810,-24.873,-24.975,
--25.070,-25.104,-25.065,-24.997,-24.982,-25.084,-25.294,-25.527,-25.671,-25.672,-25.599,-25.640,-26.020,-26.866,-28.103,-29.438,
--30.463,-30.824,-30.390,-29.325,-28.025,-26.949,-26.433,-26.564,-27.174,-27.956,-28.613,-28.986,-29.087,-29.056,-29.058,-29.199,
--29.498,-29.903,-30.347,-30.784,-31.203,-31.610,-32.006,-32.370,-32.680,-32.929,-33.136,-33.341,-33.579,-33.854,-34.137,-34.381,
--34.547,-34.637,-34.689,-34.759,-34.889,-35.090,-35.337,-35.591,-35.822,-36.025,-36.213,-36.405,-36.608,-36.805,-36.974,-37.098,
--37.181,-37.250,-37.341,-37.479,-37.670,-37.895,-38.122,-38.322,-38.477,-38.585,-38.656,-38.707,-38.751,-38.802,-38.863,-38.936,
--39.012,-39.079,-39.124,-39.137,-39.121,-39.090,-39.061,-39.047,-39.051,-39.063,-39.070,-39.059,-39.034,-39.006,-38.991,-39.000,
--39.034,-39.081,-39.129,-39.171,-39.206,-39.245,-39.294,-39.354,-39.418,-39.470,-39.502,-39.510,-39.503,-39.490,-39.481,-39.476,
--39.467,-39.446,-39.403,-39.340,-39.263,-39.181,-39.106,-39.042,-38.990,-38.950,-38.919,-38.895,-38.874,-38.853,-38.830,-38.802,
--38.769,-38.732,-38.693,-38.653,-38.609,-38.558,-38.492,-38.406,-38.295,-38.163,-38.012,-37.851,-37.686,-37.523,-37.364,-37.210,
--37.060,-36.913,-36.772,-36.639,-36.519,-36.417,-36.331,-36.258,-36.189,-36.113,-36.019,-35.904,-35.766,-35.612,-35.450,-35.289,
--35.135,-34.991,-34.854,-34.718,-34.578,-34.429,-34.267,-34.093,-33.910,-33.727,-33.548,-33.378,-33.218,-33.062,-32.907,-32.747,
--32.580,-32.407,-32.233,-32.063,-31.901,-31.748,-31.604,-31.465,-31.330,-31.198,-31.064,-30.926,-30.780,-30.621,-30.449,-30.266,
--30.081,-29.906,-29.748,-29.612,-29.494,-29.382,-29.263,-29.125,-28.966,-28.788,-28.604,-28.424,-28.259,-28.109,-27.970,-27.834,
--27.694,-27.549,-27.403,-27.267,-27.150,-27.061,-26.999,-26.957,-26.923,-26.882,-26.822,-26.738,-26.627,-26.499,-26.364,-26.233,
--26.117,-26.018,-25.929,-25.842,-25.744,-25.629,-25.497,-25.356,-25.221,-25.103,-25.009,-24.937,-24.881,-24.830,-24.777,-24.721,
--24.669,-24.628,-24.603,-24.591,-24.585,-24.574,-24.551,-24.513,-24.469,-24.427,-24.398,-24.386,-24.388,-24.393,-24.391,-24.374,
--24.336,-24.277,-24.197,-24.094,-23.963,-23.801,-23.607,-23.387,-23.154,-22.922,-22.704,-22.508,-22.335,-22.181,-22.040,-21.909,
--21.787,-21.679,-21.586,-21.511,-21.451,-21.404,-21.369,-21.344,-21.329,-21.325,-21.329,-21.334,-21.333,-21.321,-21.295,-21.258,
--21.213,-21.167,-21.121,-21.078,-21.035,-20.988,-20.935,-20.875,-20.807,-20.734,-20.659,-20.584,-20.514,-20.449,-20.388,-20.328,
--20.268,-20.207,-20.147,-20.091,-20.044,-20.006,-19.971,-19.930,-19.870,-19.784,-19.670,-19.538,-19.400,-19.272,-19.163,-19.076,
--19.003,-18.937,-18.867,-18.790,-18.706,-18.619,-18.531,-18.447,-18.367,-18.292,-18.227,-18.175,-18.144,-18.139,-18.163,-18.217,
--18.297,-18.392,-18.490,-18.576,-18.632,-18.644,-18.603,-18.505,-18.359,-18.179,-17.985,-17.800,-17.637,-17.502,-17.389,-17.280,
--17.157,-17.001,-16.806,-16.581,-16.349,-16.140,-15.982,-15.892,-15.870,-15.900,-15.961,-16.031,-16.097,-16.157,-16.214,-16.267,
--16.310,-16.330,-16.314,-16.259,-16.174,-16.082,-16.012,-15.984,-16.000,-16.047,-16.097,-16.121,-16.102,-16.038,-15.942,-15.835,
--15.734,-15.653,-15.594,-15.556,-15.536,-15.530,-15.531,-15.531,-15.520,-15.490,-15.436,-15.365,-15.290,-15.229,-15.195,-15.192,
--15.211,-15.236,-15.249,-15.239,-15.203,-15.148,-15.079,-15.000,-14.904,-14.783,-14.626,-14.434,-14.214,-13.986,-13.771,-13.589,
--13.445,-13.336,-13.245,-13.156,-13.056,-12.942,-12.819,-12.695,-12.580,-12.478,-12.390,-12.311,-12.239,-12.172,-12.111,-12.054,
--11.998,-11.936,-11.859,-11.764,-11.652,-11.531,-11.413,-11.310,-11.229,-11.173,-11.138,-11.124,-11.128,-11.146,-11.172,-11.196,
--11.202,-11.172,-11.096,-10.969,-10.797,-10.590,-10.361,-10.124,-9.894,-9.685,-9.513,-9.393,-9.326,-9.299,-9.282,-9.238,
--9.135,-8.961,-8.731,-8.479,-8.243,-8.047,-7.893,-7.762,-7.628,-7.475,-7.304,-7.133,-6.983,-6.865,-6.767,-6.661,
--6.516,-6.312,-6.053,-5.763,-5.471,-5.199,-4.950,-4.708,-4.451,-4.166,-3.854,-3.539,-3.247,-3.001,-2.809,-2.657,
--2.520,-2.371,-2.190,-1.972,-1.723,-1.458,-1.192,-.934,-.691,-.462,-.244,-.032,.181,.400,.628,.867,
-1.115,1.369,1.624,1.878,2.133,2.393,2.659,2.929,3.196,3.450,3.683,3.896,4.101,4.316,4.560,4.840,
-5.146,5.453,5.726,5.938,6.079,6.166,6.233,6.319,6.452,6.634,6.840,7.028,7.156,7.203,7.177,7.118,
-7.080,7.119,7.272,7.558,7.978,8.529,9.208,10.012,10.923,11.900,12.861,13.698,14.299,14.586,14.552,14.265,
-13.859,13.490,13.283,13.297,13.507,13.831,14.165,14.428,14.595,14.689,14.767,14.881,15.056,15.280,15.514,15.722,
-15.886,16.014,16.141,16.301,16.517,16.789,17.099,17.415,17.716,17.988,18.231,18.449,18.642,18.809,18.944,19.050,
-19.140,19.233,19.349,19.494,19.656,19.803,19.898,19.914,19.844,19.701,19.515,19.310,19.099,18.882,18.652,18.411,
-18.181,17.999,17.909,17.939,18.088,18.321,18.580,18.799,18.926,18.928,18.801,18.566,18.259,17.931,17.640,17.439,
-17.364,17.422,17.581,17.782,17.959,18.064,18.090,18.076,18.083,18.169,18.351,18.598,18.837,18.990,19.006,18.888,
-18.686,18.476,18.327,18.269,18.290,18.351,18.403,18.418,18.389,18.331,18.261,18.186,18.102,18.002,17.885,17.766,
-17.673,17.638,17.676,17.783,17.933,18.092,18.234,18.350,18.454,18.569,18.713,18.889,19.076,19.239,19.344,19.374,
-19.337,19.270,19.219,19.230,19.326,19.503,19.729,19.956,20.142,20.264,20.322,20.342,20.358,20.403,20.491,20.622,
-20.779,20.945,21.104,21.252,21.393,21.535,21.687,21.853,22.032,22.217,22.397,22.558,22.685,22.765,22.797,22.790,
-22.764,22.738,22.726,22.725,22.718,22.682,22.599,22.467,22.298,22.116,21.939,21.765,21.573,21.314,20.926,20.331,
-19.450,18.210,16.570,14.549,12.262,9.930,7.860,6.385,5.777,6.157,7.452,9.404,11.643,13.794,15.582,16.887,
-17.741,18.276,18.643,18.954,19.254,19.529,19.749,19.892,19.967,19.998,20.012,20.022,20.024,20.007,19.964,19.909,
-19.861,19.847,19.877,19.950,20.054,20.176,20.311,20.462,20.631,20.811,20.982,21.117,21.194,21.211,21.182,21.141,
-21.119,21.132,21.177,21.236,21.290,21.330,21.366,21.417,21.497,21.607,21.728,21.835,21.910,21.957,21.999,22.071,
-22.195,22.368,22.564,22.747,22.891,23.000,23.104,23.244,23.446,23.704,23.976,24.208,24.358,24.416,24.411,24.392,
-24.403,24.463,24.559,24.659,24.734,24.773,24.787,24.794,24.810,24.830,24.836,24.803,24.716,24.579,24.412,24.241,
-24.085,23.952,23.839,23.741,23.652,23.573,23.504,23.446,23.391,23.329,23.250,23.147,22.627,22.505,22.375,22.239,
-22.106,21.991,21.911,21.883,21.913,21.990,22.087,22.167,22.194,22.148,22.027,21.849,21.642,21.435,21.246,21.080,
-20.935,20.805,20.682,20.562,20.440,20.311,20.172,20.023,19.870,19.723,19.596,19.501,19.446,19.432,19.456,19.512,
-19.592,19.690,19.799,19.907,20.006,20.084,20.138,20.170,20.188,20.209,20.253,20.336,20.470,20.654,20.876,21.114,
-21.343,21.546,21.720,21.883,22.066,22.301,22.608,22.983,23.395,23.799,24.152,24.432,24.642,24.812,24.980,25.178,
-25.418,25.689,25.967,26.222,26.437,26.610,26.756,26.898,27.054,27.231,27.423,27.609,27.769,27.889,27.974,28.045,
-28.134,28.268,28.455,28.675,28.887,29.047,29.123,29.117,29.060,29.002,28.987,29.036,29.140,29.264,29.372,29.440,
-29.469,29.476,29.484,29.509,29.556,29.619,29.698,29.797,29.928,30.102,30.319,30.564,30.813,31.044,31.244,31.420,
-31.589,31.768,31.972,32.200,32.448,32.706,32.968,33.225,33.468,33.680,33.844,33.950,34.001,34.020,34.039,34.090,
-34.192,34.344,34.529,34.724,34.913,35.092,35.271,35.458,35.658,35.868,36.078,36.277,36.465,36.647,36.836,37.039,
-37.262,37.500,37.743,37.980,38.196,38.380,38.523,38.624,38.689,38.733,38.776,38.833,38.907,38.985,39.049,39.077,
-39.066,39.028,38.988,38.972,38.993,39.043,39.101,39.141,39.153,39.140,39.122,39.119,39.140,39.180,39.223,39.254,
-39.266,39.265,39.262,39.261,39.257,39.239,39.194,39.121,39.032,38.944,38.872,38.817,38.765,38.696,38.595,38.460,
-38.304,38.147,38.002,37.875,37.762,37.655,37.553,37.457,37.371,37.290,37.200,37.080,36.919,36.721,36.512,36.332,
-36.212,36.165,36.178,36.221,36.263,36.288,36.297,36.304,36.318,36.333,36.329,36.282,36.182,36.040,35.885,35.751,
-35.661,35.618,35.603,35.596,35.581,35.555,35.524,35.495,35.464,35.418,35.344,35.236,35.101,34.958,34.827,34.720,
-34.638,34.577,34.535,34.514,34.518,34.546,34.585,34.613,34.612,34.581,34.540,34.524,34.565,34.676,34.836,35.007,
-35.147,35.231,35.259,35.245,35.205,35.139,35.036,34.889,34.708,34.534,34.420,34.408,34.497,34.640,34.758,34.777,
-34.665,34.450,34.205,34.014,33.934,33.971,34.083,34.206,34.281,34.276,34.185,34.014,33.774,33.471,33.116,32.732,
-32.355,32.025,31.766,31.576,31.428,31.287,31.131,30.965,30.815,30.703,30.630,30.563,30.445,30.231,29.913,29.530,
-29.156,28.862,28.683,28.596,28.538,28.436,28.245,27.962,27.620,27.259,26.896,26.507,26.045,25.466,24.758,23.953,
-23.116,22.317,21.602,20.978,20.425,19.914,19.433,18.998,18.639,18.384,18.230,18.141,18.060,17.926,17.705,17.402,
-17.056,16.723,16.455,16.276,16.179,16.128,16.075,15.975,15.799,15.543,15.223,14.871,14.524,14.207,13.933,13.696,
-13.477,13.255,13.015,12.749,12.464,12.170,11.876,11.583,11.290,10.992,10.687,10.380,10.079,9.789,9.514,9.249,
-8.983,8.706,8.410,8.092,7.750,7.389,7.014,6.632,6.255,5.893,5.556,5.243,4.946,4.646,4.330,3.988,
-3.625,3.257,2.900,2.559,2.228,1.889,1.520,1.115,.684,.255,-.138,-.471,-.741,-.963,-1.168,-1.383,
--1.627,-1.903,-2.204,-2.519,-2.843,-3.173,-3.512,-3.858,-4.206,-4.547,-4.874,-5.185,-5.482,-5.770,-6.052,-6.328,
--6.593,-6.847,-7.095,-7.349,-7.622,-7.919,-8.238,-8.563,-8.875,-9.160,-9.415,-9.655,-9.901,-10.172,-10.478,-10.815,
--11.165,-11.509,-11.834,-12.140,-12.432,-12.722,-13.021,-13.330,-13.647,-13.967,-14.286,-14.602,-14.915,-15.221,-15.517,-15.797,
--16.057,-16.301,-16.539,-16.786,-17.051,-17.335,-17.628,-17.913,-18.175,-18.410,-18.622,-18.827,-19.042,-19.273,-19.518,-19.768,
--20.008,-20.234,-20.445,-20.648,-20.851,-21.056,-21.259,-21.457,-21.646,-21.827,-22.007,-22.192,-22.382,-22.572,-22.757,-22.931,
--23.096,-23.259,-23.425,-23.595,-23.764,-23.925,-24.072,-24.210,-24.351,-24.506,-24.682,-24.872,-25.060,-25.229,-25.371,-25.491,
--25.604,-25.726,-25.864,-26.012,-26.151,-26.268,-26.356,-26.425,-26.488,-26.557,-26.635,-26.713,-26.778,-26.825,-26.859,-26.892,
--26.937,-26.998,-27.068,-27.131,-27.177,-27.203,-27.217,-27.230,-27.250,-27.273,-27.290,-27.292,-27.275,-27.247,-27.218,-27.196,
--27.181,-27.166,-27.145,-27.118,-27.091,-27.075,-27.077,-27.093,-27.111,-27.118,-27.110,-27.092,-27.079,-27.082,-27.100,-27.120,
--27.121,-27.088,-27.016,-26.920,-26.820,-26.738,-26.684,-26.662,-26.664,-26.682,-26.699,-26.699,-26.656,-26.548,-26.367,-26.121,
--25.845,-25.584,-25.373,-25.226,-25.125,-25.036,-24.932,-24.809,-24.689,-24.606,-24.581,-24.599,-24.616,-24.581,-24.467,-24.288,
--24.101,-23.969,-23.934,-23.987,-24.076,-24.132,-24.104,-23.989,-23.827,-23.682,-23.609,-23.634,-23.751,-23.931,-24.136,-24.331,
--24.483,-24.563,-24.553,-24.453,-24.298,-24.150,-24.080,-24.134,-24.310,-24.555,-24.794,-24.964,-25.052,-25.091,-25.136,-25.223,
--25.342,-25.445,-25.487,-25.464,-25.423,-25.442,-25.569,-25.783,-25.995,-26.106,-26.090,-26.046,-26.179,-26.705,-27.712,-29.070,
--30.436,-31.376,-31.550,-30.881,-29.604,-28.180,-27.103,-26.698,-27.000,-27.772,-28.646,-29.296,-29.576,-29.544,-29.395,-29.334,
--29.475,-29.815,-30.262,-30.719,-31.133,-31.515,-31.906,-32.333,-32.781,-33.202,-33.545,-33.795,-33.981,-34.156,-34.368,-34.624,
--34.898,-35.145,-35.335,-35.473,-35.595,-35.744,-35.945,-36.191,-36.450,-36.688,-36.885,-37.048,-37.195,-37.348,-37.509,-37.667,
--37.807,-37.921,-38.020,-38.129,-38.270,-38.452,-38.662,-38.872,-39.054,-39.191,-39.283,-39.347,-39.404,-39.468,-39.542,-39.618,
--39.684,-39.732,-39.761,-39.777,-39.791,-39.808,-39.829,-39.847,-39.855,-39.846,-39.819,-39.782,-39.746,-39.724,-39.724,-39.745,
--39.780,-39.821,-39.861,-39.900,-39.944,-39.999,-40.067,-40.141,-40.207,-40.249,-40.258,-40.236,-40.197,-40.156,-40.128,-40.116,
--40.114,-40.107,-40.084,-40.038,-39.970,-39.886,-39.797,-39.709,-39.627,-39.557,-39.502,-39.465,-39.447,-39.444,-39.450,-39.452,
--39.442,-39.415,-39.374,-39.324,-39.271,-39.219,-39.165,-39.101,-39.021,-38.919,-38.796,-38.655,-38.504,-38.350,-38.197,-38.047,
--37.896,-37.744,-37.588,-37.427,-37.264,-37.102,-36.948,-36.806,-36.683,-36.582,-36.503,-36.441,-36.388,-36.330,-36.255,-36.151,
--36.017,-35.855,-35.675,-35.491,-35.312,-35.145,-34.986,-34.828,-34.662,-34.482,-34.290,-34.093,-33.900,-33.720,-33.555,-33.404,
--33.257,-33.105,-32.944,-32.774,-32.598,-32.425,-32.261,-32.109,-31.969,-31.836,-31.706,-31.570,-31.425,-31.266,-31.092,-30.904,
--30.706,-30.507,-30.318,-30.148,-30.005,-29.889,-29.793,-29.704,-29.606,-29.488,-29.344,-29.178,-29.000,-28.821,-28.650,-28.488,
--28.333,-28.178,-28.021,-27.863,-27.710,-27.571,-27.455,-27.362,-27.288,-27.224,-27.160,-27.086,-27.000,-26.904,-26.804,-26.705,
--26.612,-26.525,-26.443,-26.362,-26.280,-26.192,-26.097,-25.998,-25.896,-25.798,-25.706,-25.623,-25.545,-25.468,-25.386,-25.299,
--25.211,-25.132,-25.073,-25.045,-25.046,-25.065,-25.085,-25.089,-25.066,-25.016,-24.954,-24.896,-24.857,-24.845,-24.856,-24.877,
--24.897,-24.906,-24.900,-24.880,-24.843,-24.783,-24.689,-24.553,-24.368,-24.141,-23.889,-23.632,-23.391,-23.175,-22.988,-22.823,
--22.671,-22.529,-22.397,-22.279,-22.180,-22.100,-22.038,-21.988,-21.945,-21.909,-21.879,-21.858,-21.845,-21.835,-21.822,-21.798,
--21.761,-21.712,-21.658,-21.603,-21.551,-21.501,-21.449,-21.389,-21.318,-21.237,-21.153,-21.069,-20.991,-20.918,-20.846,-20.771,
--20.689,-20.600,-20.509,-20.424,-20.351,-20.293,-20.251,-20.217,-20.185,-20.146,-20.098,-20.038,-19.969,-19.893,-19.813,-19.729,
--19.638,-19.537,-19.424,-19.297,-19.158,-19.013,-18.870,-18.739,-18.630,-18.547,-18.490,-18.453,-18.426,-18.401,-18.377,-18.356,
--18.349,-18.369,-18.421,-18.503,-18.603,-18.700,-18.774,-18.810,-18.802,-18.756,-18.682,-18.594,-18.506,-18.425,-18.356,-18.297,
--18.241,-18.177,-18.092,-17.976,-17.823,-17.638,-17.437,-17.240,-17.069,-16.941,-16.863,-16.836,-16.855,-16.914,-17.008,-17.127,
--17.255,-17.370,-17.447,-17.462,-17.408,-17.295,-17.147,-16.998,-16.876,-16.794,-16.749,-16.723,-16.694,-16.648,-16.579,-16.494,
--16.402,-16.315,-16.239,-16.177,-16.130,-16.096,-16.074,-16.060,-16.044,-16.017,-15.970,-15.900,-15.814,-15.727,-15.655,-15.610,
--15.593,-15.596,-15.603,-15.599,-15.574,-15.525,-15.455,-15.367,-15.262,-15.136,-14.985,-14.807,-14.606,-14.392,-14.180,-13.984,
--13.816,-13.677,-13.564,-13.466,-13.376,-13.284,-13.187,-13.086,-12.984,-12.883,-12.784,-12.688,-12.594,-12.502,-12.414,-12.334,
--12.266,-12.208,-12.157,-12.104,-12.041,-11.959,-11.858,-11.744,-11.625,-11.514,-11.420,-11.348,-11.299,-11.264,-11.236,-11.202,
--11.155,-11.088,-10.998,-10.885,-10.750,-10.595,-10.418,-10.221,-10.006,-9.785,-9.575,-9.399,-9.275,-9.211,-9.196,-9.203,
--9.195,-9.138,-9.016,-8.835,-8.616,-8.388,-8.173,-7.979,-7.799,-7.620,-7.433,-7.241,-7.059,-6.900,-6.774,-6.675,
--6.585,-6.483,-6.352,-6.188,-5.995,-5.784,-5.559,-5.316,-5.045,-4.736,-4.393,-4.028,-3.670,-3.349,-3.086,-2.885,
--2.732,-2.600,-2.457,-2.281,-2.061,-1.807,-1.539,-1.280,-1.049,-.852,-.681,-.519,-.345,-.145,.088,.345,
-.613,.877,1.126,1.362,1.595,1.836,2.095,2.371,2.652,2.922,3.168,3.384,3.578,3.771,3.988,4.249,
-4.559,4.906,5.262,5.593,5.868,6.074,6.219,6.331,6.453,6.620,6.852,7.144,7.463,7.763,7.999,8.145,
-8.198,8.181,8.131,8.086,8.081,8.144,8.301,8.583,9.020,9.632,10.407,11.290,12.182,12.961,13.519,13.797,
-13.808,13.638,13.414,13.256,13.245,13.394,13.664,13.983,14.292,14.560,14.793,15.017,15.257,15.515,15.774,16.004,
-16.186,16.320,16.433,16.562,16.737,16.967,17.239,17.528,17.810,18.074,18.328,18.584,18.850,19.120,19.369,19.566,
-19.687,19.729,19.711,19.667,19.632,19.632,19.675,19.752,19.843,19.925,19.976,19.974,19.899,19.736,19.482,19.155,
-18.797,18.470,18.240,18.154,18.224,18.425,18.695,18.964,19.168,19.269,19.256,19.143,18.956,18.723,18.478,18.253,
-18.077,17.972,17.944,17.978,18.040,18.096,18.122,18.121,18.121,18.164,18.279,18.464,18.685,18.881,18.997,19.002,
-18.905,18.751,18.596,18.488,18.446,18.461,18.503,18.544,18.565,18.560,18.534,18.493,18.436,18.358,18.258,18.142,
-18.030,17.945,17.911,17.938,18.021,18.141,18.273,18.400,18.514,18.621,18.738,18.876,19.041,19.221,19.395,19.533,
-19.617,19.642,19.627,19.607,19.620,19.696,19.838,20.023,20.210,20.361,20.454,20.493,20.509,20.540,20.613,20.735,
-20.887,21.042,21.178,21.288,21.385,21.490,21.620,21.781,21.961,22.142,22.312,22.465,22.608,22.747,22.881,23.002,
-23.095,23.148,23.160,23.140,23.105,23.071,23.045,23.020,22.981,22.909,22.785,22.595,22.331,21.989,21.573,21.079,
-20.494,19.778,18.864,17.673,16.142,14.273,12.170,10.058,8.242,7.041,6.692,7.271,8.660,10.579,12.670,14.604,
-16.166,17.287,18.025,18.505,18.846,19.124,19.357,19.534,19.641,19.692,19.716,19.753,19.821,19.912,19.995,20.038,
-20.026,19.972,19.907,19.870,19.884,19.954,20.066,20.202,20.348,20.498,20.648,20.794,20.922,21.018,21.070,21.081,
-21.067,21.053,21.060,21.095,21.151,21.210,21.259,21.294,21.326,21.370,21.435,21.515,21.599,21.672,21.733,21.798,
-21.888,22.023,22.200,22.398,22.584,22.733,22.846,22.953,23.093,23.297,23.564,23.855,24.108,24.270,24.318,24.273,
-24.192,24.136,24.148,24.233,24.363,24.491,24.578,24.606,24.577,24.509,24.419,24.312,24.186,24.035,23.860,23.670,
-23.484,23.322,23.198,23.115,23.067,23.042,23.024,23.001,22.963,22.907,22.830,22.736,22.627,22.062,21.969,21.887,
-21.811,21.735,21.664,21.605,21.571,21.566,21.588,21.624,21.655,21.663,21.634,21.562,21.454,21.318,21.165,21.004,
-20.840,20.675,20.509,20.340,20.169,19.995,19.822,19.657,19.512,19.394,19.310,19.258,19.233,19.227,19.233,19.252,
-19.288,19.345,19.423,19.513,19.601,19.672,19.719,19.744,19.759,19.784,19.834,19.920,20.045,20.204,20.391,20.595,
-20.804,21.007,21.195,21.369,21.541,21.733,21.970,22.268,22.626,23.017,23.400,23.735,23.999,24.198,24.363,24.535,
-24.748,25.009,25.300,25.586,25.835,26.035,26.197,26.350,26.522,26.722,26.939,27.141,27.297,27.394,27.446,27.492,
-27.577,27.731,27.950,28.197,28.414,28.550,28.582,28.529,28.445,28.393,28.420,28.533,28.703,28.876,29.004,29.064,
-29.066,29.045,29.039,29.070,29.137,29.220,29.302,29.380,29.469,29.596,29.782,30.028,30.311,30.595,30.845,31.047,
-31.210,31.359,31.522,31.718,31.949,32.204,32.466,32.717,32.945,33.141,33.300,33.419,33.501,33.559,33.611,33.678,
-33.775,33.908,34.067,34.240,34.411,34.576,34.739,34.905,35.080,35.262,35.444,35.623,35.795,35.969,36.153,36.358,
-36.584,36.826,37.072,37.311,37.536,37.738,37.913,38.057,38.168,38.249,38.310,38.367,38.430,38.504,38.577,38.630,
-38.645,38.618,38.561,38.499,38.460,38.459,38.494,38.549,38.603,38.644,38.672,38.697,38.729,38.770,38.814,38.848,
-38.866,38.869,38.866,38.865,38.866,38.857,38.824,38.757,38.663,38.561,38.474,38.414,38.374,38.331,38.259,38.141,
-37.984,37.811,37.652,37.523,37.426,37.347,37.268,37.180,37.085,36.990,36.895,36.791,36.659,36.487,36.278,36.063,
-35.883,35.777,35.763,35.822,35.915,35.997,36.042,36.045,36.026,36.005,35.992,35.976,35.937,35.857,35.739,35.599,
-35.470,35.376,35.327,35.314,35.316,35.316,35.303,35.279,35.244,35.199,35.137,35.053,34.946,34.826,34.710,34.615,
-34.548,34.506,34.478,34.453,34.428,34.406,34.393,34.390,34.391,34.392,34.388,34.385,34.389,34.403,34.421,34.424,
-34.389,34.307,34.185,34.045,33.907,33.778,33.641,33.468,33.240,32.973,32.718,32.547,32.521,32.653,32.898,33.169,
-33.372,33.451,33.407,33.295,33.189,33.147,33.185,33.275,33.364,33.407,33.379,33.282,33.129,32.931,32.690,32.409,
-32.100,31.789,31.513,31.302,31.163,31.078,31.007,30.918,30.796,30.650,30.502,30.365,30.232,30.076,29.868,29.602,
-29.302,29.018,28.799,28.667,28.598,28.538,28.423,28.213,27.912,27.559,27.205,26.880,26.577,26.252,25.853,25.342,
-24.720,24.024,23.303,22.598,21.925,21.272,20.622,19.971,19.341,18.776,18.322,18.002,17.806,17.686,17.578,17.426,
-17.205,16.928,16.640,16.393,16.227,16.148,16.127,16.110,16.035,15.858,15.567,15.185,14.760,14.347,13.989,13.702,
-13.472,13.265,13.046,12.789,12.491,12.166,11.838,11.527,11.242,10.981,10.733,10.490,10.246,10.000,9.752,9.502,
-9.247,8.982,8.704,8.413,8.111,7.796,7.464,7.109,6.732,6.336,5.937,5.550,5.188,4.849,4.522,4.187,
-3.827,3.437,3.029,2.620,2.227,1.853,1.491,1.123,.740,.346,-.040,-.389,-.682,-.914,-1.103,-1.282,
--1.483,-1.726,-2.016,-2.339,-2.680,-3.022,-3.359,-3.693,-4.027,-4.360,-4.688,-5.004,-5.303,-5.584,-5.849,-6.103,
--6.352,-6.599,-6.849,-7.105,-7.376,-7.665,-7.972,-8.290,-8.607,-8.908,-9.188,-9.450,-9.710,-9.985,-10.286,-10.612,
--10.950,-11.282,-11.594,-11.881,-12.154,-12.431,-12.727,-13.048,-13.390,-13.738,-14.080,-14.406,-14.716,-15.014,-15.301,-15.577,
--15.839,-16.082,-16.312,-16.541,-16.784,-17.051,-17.343,-17.646,-17.940,-18.209,-18.446,-18.661,-18.871,-19.094,-19.338,-19.597,
--19.855,-20.097,-20.314,-20.512,-20.703,-20.899,-21.105,-21.318,-21.528,-21.730,-21.921,-22.106,-22.293,-22.486,-22.682,-22.874,
--23.058,-23.230,-23.397,-23.563,-23.732,-23.901,-24.061,-24.208,-24.341,-24.470,-24.609,-24.768,-24.948,-25.140,-25.328,-25.500,
--25.650,-25.784,-25.911,-26.037,-26.163,-26.281,-26.388,-26.481,-26.565,-26.650,-26.740,-26.836,-26.929,-27.012,-27.080,-27.136,
--27.189,-27.248,-27.313,-27.381,-27.441,-27.488,-27.520,-27.543,-27.565,-27.590,-27.616,-27.634,-27.640,-27.634,-27.622,-27.611,
--27.606,-27.605,-27.599,-27.581,-27.550,-27.512,-27.480,-27.462,-27.460,-27.470,-27.482,-27.488,-27.490,-27.491,-27.497,-27.508,
--27.515,-27.507,-27.472,-27.408,-27.320,-27.221,-27.125,-27.047,-27.000,-26.989,-27.015,-27.061,-27.103,-27.101,-27.024,-26.856,
--26.609,-26.322,-26.047,-25.826,-25.672,-25.568,-25.480,-25.378,-25.258,-25.140,-25.060,-25.036,-25.057,-25.082,-25.062,-24.965,
--24.800,-24.614,-24.467,-24.402,-24.424,-24.493,-24.554,-24.557,-24.485,-24.357,-24.217,-24.112,-24.075,-24.121,-24.243,-24.422,
--24.623,-24.803,-24.915,-24.925,-24.826,-24.654,-24.476,-24.370,-24.388,-24.532,-24.755,-24.985,-25.164,-25.276,-25.350,-25.430,
--25.541,-25.671,-25.780,-25.832,-25.830,-25.825,-25.878,-26.023,-26.225,-26.400,-26.468,-26.432,-26.416,-26.631,-27.272,-28.385,
--29.794,-31.123,-31.936,-31.928,-31.074,-29.669,-28.213,-27.204,-26.940,-27.403,-28.305,-29.241,-29.881,-30.101,-30.005,-29.825,
--29.786,-29.995,-30.413,-30.910,-31.360,-31.710,-32.001,-32.318,-32.724,-33.218,-33.730,-34.169,-34.476,-34.658,-34.775,-34.907,
--35.107,-35.376,-35.674,-35.948,-36.170,-36.344,-36.502,-36.675,-36.877,-37.097,-37.309,-37.497,-37.658,-37.809,-37.972,-38.155,
--38.354,-38.551,-38.730,-38.889,-39.037,-39.187,-39.347,-39.511,-39.664,-39.788,-39.880,-39.949,-40.014,-40.090,-40.182,-40.277,
--40.355,-40.402,-40.415,-40.412,-40.418,-40.451,-40.514,-40.591,-40.655,-40.679,-40.653,-40.588,-40.512,-40.455,-40.436,-40.458,
--40.506,-40.561,-40.607,-40.640,-40.671,-40.712,-40.772,-40.847,-40.920,-40.974,-40.993,-40.976,-40.936,-40.891,-40.857,-40.840,
--40.834,-40.827,-40.804,-40.759,-40.693,-40.612,-40.524,-40.432,-40.340,-40.248,-40.163,-40.092,-40.043,-40.021,-40.023,-40.039,
--40.055,-40.057,-40.039,-40.003,-39.953,-39.897,-39.837,-39.773,-39.701,-39.618,-39.523,-39.416,-39.300,-39.174,-39.037,-38.887,
--38.724,-38.550,-38.370,-38.190,-38.013,-37.840,-37.670,-37.502,-37.339,-37.190,-37.066,-36.974,-36.917,-36.886,-36.863,-36.824,
--36.750,-36.630,-36.465,-36.270,-36.063,-35.862,-35.677,-35.508,-35.346,-35.179,-34.997,-34.800,-34.592,-34.386,-34.193,-34.020,
--33.866,-33.724,-33.584,-33.437,-33.278,-33.111,-32.943,-32.782,-32.632,-32.493,-32.359,-32.223,-32.076,-31.915,-31.741,-31.556,
--31.366,-31.174,-30.982,-30.794,-30.615,-30.451,-30.308,-30.189,-30.089,-29.998,-29.905,-29.796,-29.665,-29.513,-29.348,-29.179,
--29.013,-28.853,-28.697,-28.540,-28.381,-28.222,-28.069,-27.929,-27.806,-27.700,-27.604,-27.512,-27.420,-27.327,-27.233,-27.143,
--27.060,-26.983,-26.909,-26.837,-26.763,-26.687,-26.611,-26.536,-26.461,-26.386,-26.312,-26.238,-26.165,-26.092,-26.016,-25.936,
--25.850,-25.759,-25.673,-25.600,-25.552,-25.532,-25.535,-25.545,-25.546,-25.526,-25.481,-25.423,-25.367,-25.328,-25.315,-25.323,
--25.341,-25.357,-25.366,-25.368,-25.369,-25.372,-25.369,-25.346,-25.283,-25.166,-24.995,-24.785,-24.560,-24.343,-24.150,-23.983,
--23.832,-23.685,-23.534,-23.380,-23.229,-23.089,-22.966,-22.858,-22.758,-22.663,-22.570,-22.485,-22.416,-22.364,-22.330,-22.303,
--22.274,-22.237,-22.190,-22.139,-22.092,-22.053,-22.018,-21.980,-21.930,-21.862,-21.777,-21.682,-21.584,-21.490,-21.398,-21.305,
--21.206,-21.100,-20.989,-20.880,-20.781,-20.694,-20.618,-20.550,-20.486,-20.425,-20.372,-20.330,-20.301,-20.279,-20.255,-20.219,
--20.162,-20.081,-19.978,-19.860,-19.732,-19.598,-19.463,-19.332,-19.215,-19.121,-19.060,-19.031,-19.024,-19.021,-18.999,-18.945,
--18.859,-18.754,-18.652,-18.577,-18.539,-18.540,-18.568,-18.610,-18.654,-18.695,-18.731,-18.763,-18.789,-18.804,-18.806,-18.794,
--18.775,-18.758,-18.749,-18.747,-18.741,-18.716,-18.657,-18.557,-18.423,-18.272,-18.124,-18.002,-17.918,-17.878,-17.881,-17.918,
--17.982,-18.057,-18.127,-18.177,-18.192,-18.167,-18.106,-18.022,-17.933,-17.851,-17.781,-17.718,-17.654,-17.577,-17.484,-17.377,
--17.262,-17.147,-17.038,-16.937,-16.846,-16.766,-16.699,-16.644,-16.598,-16.555,-16.504,-16.441,-16.365,-16.282,-16.205,-16.144,
--16.104,-16.085,-16.077,-16.067,-16.047,-16.009,-15.951,-15.872,-15.768,-15.636,-15.477,-15.292,-15.092,-14.887,-14.690,-14.508,
--14.339,-14.180,-14.024,-13.870,-13.721,-13.586,-13.474,-13.389,-13.328,-13.282,-13.237,-13.180,-13.103,-13.005,-12.891,-12.773,
--12.662,-12.568,-12.498,-12.448,-12.410,-12.370,-12.315,-12.235,-12.127,-11.999,-11.863,-11.734,-11.619,-11.520,-11.430,-11.336,
--11.229,-11.106,-10.971,-10.836,-10.710,-10.594,-10.483,-10.362,-10.214,-10.030,-9.815,-9.586,-9.371,-9.198,-9.083,-9.025,
--9.004,-8.990,-8.954,-8.876,-8.749,-8.583,-8.392,-8.192,-7.992,-7.797,-7.603,-7.413,-7.228,-7.053,-6.895,-6.756,
--6.635,-6.526,-6.422,-6.317,-6.203,-6.074,-5.921,-5.735,-5.507,-5.231,-4.911,-4.562,-4.202,-3.858,-3.549,-3.289,
--3.077,-2.901,-2.742,-2.577,-2.390,-2.175,-1.938,-1.694,-1.464,-1.263,-1.097,-.954,-.812,-.646,-.439,-.187,
-.097,.390,.668,.919,1.145,1.362,1.588,1.836,2.108,2.392,2.671,2.928,3.160,3.373,3.584,3.812,
-4.071,4.366,4.694,5.039,5.384,5.707,5.993,6.236,6.442,6.631,6.830,7.064,7.348,7.680,8.039,8.394,
-8.715,8.982,9.189,9.339,9.439,9.493,9.505,9.487,9.469,9.504,9.657,9.981,10.498,11.172,11.919,12.622,
-13.174,13.513,13.639,13.612,13.525,13.470,13.506,13.650,13.885,14.174,14.487,14.806,15.124,15.441,15.749,16.036,
-16.287,16.500,16.685,16.864,17.062,17.292,17.551,17.821,18.079,18.311,18.519,18.718,18.929,19.162,19.411,19.650,
-19.844,19.963,19.994,19.946,19.849,19.738,19.651,19.610,19.626,19.692,19.790,19.893,19.965,19.974,19.897,19.730,
-19.493,19.228,18.992,18.833,18.779,18.828,18.948,19.092,19.215,19.286,19.301,19.269,19.208,19.136,19.060,18.983,
-18.906,18.832,18.766,18.710,18.665,18.625,18.587,18.554,18.540,18.563,18.636,18.758,18.908,19.051,19.146,19.171,
-19.126,19.034,18.935,18.861,18.832,18.845,18.883,18.924,18.953,18.961,18.949,18.918,18.867,18.794,18.698,18.583,
-18.462,18.351,18.268,18.222,18.216,18.244,18.294,18.357,18.425,18.495,18.569,18.653,18.755,18.881,19.033,19.202,
-19.373,19.527,19.647,19.730,19.788,19.841,19.912,20.011,20.131,20.254,20.358,20.435,20.493,20.554,20.640,20.761,
-20.907,21.055,21.180,21.276,21.355,21.443,21.564,21.725,21.909,22.089,22.238,22.354,22.456,22.577,22.743,22.955,
-23.187,23.395,23.538,23.597,23.578,23.509,23.419,23.329,23.243,23.152,23.045,22.911,22.743,22.529,22.253,21.896,
-21.438,20.865,20.166,19.322,18.300,17.054,15.554,13.819,11.955,10.168,8.729,7.908,7.884,8.683,10.152,12.007,
-13.914,15.592,16.882,17.764,18.323,18.683,18.948,19.171,19.354,19.485,19.559,19.601,19.646,19.725,19.839,19.956,
-20.034,20.039,19.969,19.856,19.749,19.694,19.711,19.794,19.920,20.061,20.204,20.346,20.489,20.630,20.759,20.859,
-20.919,20.946,20.958,20.980,21.030,21.104,21.183,21.243,21.268,21.261,21.242,21.239,21.272,21.342,21.438,21.543,
-21.647,21.750,21.861,21.988,22.127,22.269,22.402,22.528,22.662,22.831,23.051,23.318,23.594,23.824,23.958,23.976,
-23.900,23.790,23.714,23.725,23.830,23.995,24.157,24.257,24.259,24.165,24.005,23.820,23.643,23.489,23.353,23.223,
-23.091,22.959,22.841,22.750,22.695,22.670,22.658,22.639,22.594,22.516,22.410,22.289,22.169,22.062,21.561,21.511,
-21.483,21.462,21.439,21.410,21.375,21.338,21.301,21.261,21.214,21.159,21.094,21.021,20.940,20.852,20.755,20.645,
-20.521,20.384,20.235,20.079,19.918,19.755,19.598,19.457,19.346,19.279,19.261,19.285,19.333,19.376,19.392,19.374,
-19.331,19.286,19.262,19.273,19.317,19.377,19.433,19.473,19.501,19.529,19.577,19.655,19.764,19.895,20.038,20.186,
-20.343,20.512,20.697,20.897,21.107,21.327,21.560,21.819,22.113,22.439,22.779,23.099,23.369,23.575,23.733,23.882,
-24.071,24.330,24.658,25.017,25.354,25.627,25.820,25.959,26.088,26.247,26.450,26.673,26.871,27.003,27.060,27.075,
-27.107,27.214,27.418,27.689,27.955,28.134,28.175,28.086,27.931,27.804,27.786,27.907,28.136,28.397,28.610,28.722,
-28.737,28.701,28.679,28.715,28.815,28.950,29.073,29.155,29.203,29.253,29.356,29.545,29.819,30.141,30.456,30.717,
-30.908,31.046,31.170,31.322,31.525,31.774,32.047,32.312,32.542,32.725,32.862,32.961,33.036,33.102,33.171,33.255,
-33.361,33.490,33.638,33.798,33.961,34.124,34.286,34.451,34.619,34.787,34.947,35.093,35.225,35.355,35.497,35.667,
-35.871,36.104,36.350,36.593,36.819,37.022,37.205,37.369,37.515,37.642,37.749,37.840,37.922,38.004,38.088,38.169,
-38.230,38.259,38.248,38.206,38.151,38.106,38.085,38.090,38.113,38.142,38.170,38.198,38.233,38.281,38.336,38.392,
-38.436,38.464,38.479,38.491,38.506,38.518,38.516,38.484,38.415,38.319,38.216,38.128,38.064,38.015,37.955,37.862,
-37.725,37.557,37.387,37.245,37.145,37.078,37.020,36.943,36.836,36.701,36.557,36.417,36.286,36.154,36.008,35.846,
-35.687,35.561,35.496,35.503,35.568,35.654,35.722,35.748,35.734,35.699,35.668,35.653,35.647,35.629,35.577,35.485,
-35.365,35.245,35.150,35.093,35.071,35.069,35.068,35.057,35.031,34.991,34.937,34.868,34.781,34.682,34.582,34.496,
-34.436,34.403,34.387,34.371,34.339,34.287,34.221,34.159,34.116,34.100,34.108,34.130,34.146,34.136,34.079,33.958,
-33.766,33.512,33.224,32.943,32.710,32.545,32.437,32.341,32.200,31.976,31.675,31.353,31.098,30.992,31.070,31.305,
-31.616,31.901,32.084,32.140,32.099,32.019,31.957,31.940,31.961,31.991,32.003,31.984,31.938,31.875,31.795,31.690,
-31.546,31.361,31.152,30.953,30.799,30.709,30.675,30.665,30.642,30.582,30.482,30.356,30.221,30.078,29.914,29.707,
-29.448,29.155,28.868,28.634,28.483,28.407,28.359,28.277,28.112,27.848,27.511,27.149,26.810,26.514,26.247,25.971,
-25.642,25.236,24.752,24.209,23.627,23.013,22.361,21.658,20.904,20.122,19.360,18.677,18.121,17.710,17.422,17.209,
-17.012,16.792,16.543,16.291,16.084,15.960,15.928,15.960,15.991,15.949,15.777,15.458,15.020,14.529,14.060,13.668,
-13.376,13.163,12.984,12.788,12.541,12.238,11.895,11.546,11.219,10.930,10.679,10.458,10.255,10.059,9.861,9.655,
-9.433,9.185,8.910,8.610,8.296,7.977,7.662,7.345,7.018,6.669,6.295,5.903,5.512,5.135,4.780,4.436,
-4.082,3.698,3.274,2.818,2.354,1.907,1.494,1.116,.763,.420,.079,-.252,-.556,-.820,-1.039,-1.226,
--1.407,-1.612,-1.857,-2.148,-2.474,-2.816,-3.159,-3.494,-3.821,-4.143,-4.459,-4.769,-5.067,-5.351,-5.621,-5.882,
--6.141,-6.400,-6.663,-6.929,-7.200,-7.477,-7.764,-8.059,-8.360,-8.656,-8.939,-9.207,-9.466,-9.730,-10.015,-10.328,
--10.666,-11.013,-11.347,-11.653,-11.930,-12.193,-12.460,-12.752,-13.074,-13.418,-13.768,-14.107,-14.426,-14.727,-15.016,-15.300,
--15.580,-15.850,-16.105,-16.345,-16.581,-16.825,-17.089,-17.376,-17.674,-17.963,-18.228,-18.464,-18.679,-18.892,-19.121,-19.371,
--19.635,-19.896,-20.135,-20.348,-20.539,-20.726,-20.923,-21.136,-21.361,-21.585,-21.796,-21.992,-22.178,-22.365,-22.561,-22.766,
--22.974,-23.175,-23.363,-23.537,-23.705,-23.871,-24.037,-24.201,-24.355,-24.498,-24.633,-24.768,-24.913,-25.072,-25.244,-25.422,
--25.595,-25.758,-25.911,-26.056,-26.196,-26.330,-26.454,-26.564,-26.661,-26.750,-26.838,-26.934,-27.041,-27.153,-27.265,-27.369,
--27.460,-27.539,-27.606,-27.663,-27.710,-27.746,-27.773,-27.796,-27.820,-27.849,-27.883,-27.916,-27.942,-27.954,-27.954,-27.949,
--27.945,-27.947,-27.952,-27.954,-27.946,-27.925,-27.896,-27.868,-27.850,-27.846,-27.853,-27.865,-27.873,-27.875,-27.871,-27.865,
--27.861,-27.858,-27.851,-27.833,-27.795,-27.731,-27.642,-27.537,-27.434,-27.355,-27.322,-27.345,-27.412,-27.489,-27.531,-27.490,
--27.347,-27.110,-26.824,-26.545,-26.318,-26.161,-26.058,-25.975,-25.882,-25.770,-25.658,-25.575,-25.544,-25.558,-25.584,-25.576,
--25.503,-25.362,-25.187,-25.027,-24.924,-24.895,-24.923,-24.969,-24.996,-24.977,-24.910,-24.811,-24.705,-24.623,-24.589,-24.622,
--24.725,-24.880,-25.048,-25.174,-25.211,-25.140,-24.985,-24.807,-24.683,-24.670,-24.778,-24.971,-25.189,-25.379,-25.523,-25.637,
--25.751,-25.881,-26.013,-26.115,-26.167,-26.181,-26.206,-26.291,-26.451,-26.642,-26.778,-26.798,-26.730,-26.719,-26.980,-27.692,
--28.876,-30.325,-31.649,-32.411,-32.322,-31.383,-29.910,-28.414,-27.395,-27.141,-27.624,-28.547,-29.503,-30.164,-30.415,-30.367,
--30.259,-30.316,-30.633,-31.151,-31.718,-32.188,-32.504,-32.719,-32.945,-33.276,-33.731,-34.246,-34.713,-35.050,-35.240,-35.339,
--35.436,-35.606,-35.872,-36.199,-36.526,-36.799,-37.000,-37.146,-37.274,-37.415,-37.579,-37.761,-37.950,-38.140,-38.339,-38.559,
--38.803,-39.062,-39.317,-39.548,-39.745,-39.909,-40.049,-40.175,-40.287,-40.383,-40.458,-40.520,-40.581,-40.657,-40.756,-40.869,
--40.973,-41.042,-41.062,-41.041,-41.009,-41.002,-41.043,-41.133,-41.245,-41.339,-41.383,-41.366,-41.305,-41.235,-41.190,-41.188,
--41.224,-41.278,-41.326,-41.355,-41.368,-41.381,-41.409,-41.458,-41.520,-41.576,-41.610,-41.615,-41.599,-41.576,-41.562,-41.562,
--41.568,-41.566,-41.542,-41.491,-41.419,-41.337,-41.257,-41.182,-41.109,-41.030,-40.944,-40.854,-40.771,-40.706,-40.665,-40.647,
--40.641,-40.635,-40.620,-40.594,-40.558,-40.518,-40.474,-40.424,-40.363,-40.289,-40.205,-40.117,-40.028,-39.939,-39.841,-39.724,
--39.578,-39.401,-39.200,-38.991,-38.790,-38.608,-38.444,-38.291,-38.140,-37.984,-37.829,-37.683,-37.560,-37.466,-37.397,-37.339,
--37.275,-37.187,-37.068,-36.918,-36.747,-36.569,-36.394,-36.227,-36.065,-35.901,-35.726,-35.535,-35.329,-35.112,-34.896,-34.691,
--34.504,-34.338,-34.188,-34.047,-33.907,-33.760,-33.607,-33.452,-33.301,-33.157,-33.018,-32.879,-32.729,-32.564,-32.381,-32.187,
--31.993,-31.806,-31.632,-31.467,-31.306,-31.142,-30.974,-30.810,-30.658,-30.525,-30.413,-30.314,-30.215,-30.105,-29.977,-29.831,
--29.675,-29.518,-29.364,-29.216,-29.068,-28.916,-28.761,-28.606,-28.457,-28.321,-28.199,-28.088,-27.981,-27.874,-27.764,-27.652,
--27.546,-27.448,-27.361,-27.285,-27.218,-27.155,-27.095,-27.035,-26.972,-26.903,-26.827,-26.744,-26.659,-26.577,-26.505,-26.444,
--26.392,-26.344,-26.292,-26.236,-26.178,-26.126,-26.085,-26.057,-26.036,-26.012,-25.976,-25.926,-25.869,-25.816,-25.779,-25.762,
--25.761,-25.764,-25.762,-25.751,-25.736,-25.726,-25.727,-25.737,-25.742,-25.725,-25.672,-25.579,-25.458,-25.327,-25.206,-25.101,
--25.009,-24.913,-24.800,-24.662,-24.501,-24.330,-24.161,-24.000,-23.847,-23.696,-23.544,-23.391,-23.248,-23.124,-23.025,-22.949,
--22.887,-22.826,-22.757,-22.683,-22.609,-22.547,-22.501,-22.468,-22.438,-22.398,-22.340,-22.263,-22.175,-22.082,-21.989,-21.896,
--21.797,-21.691,-21.580,-21.471,-21.369,-21.280,-21.198,-21.116,-21.024,-20.918,-20.807,-20.703,-20.619,-20.560,-20.520,-20.486,
--20.440,-20.374,-20.291,-20.201,-20.117,-20.047,-19.990,-19.937,-19.880,-19.819,-19.759,-19.713,-19.689,-19.682,-19.676,-19.648,
--19.580,-19.464,-19.310,-19.141,-18.979,-18.845,-18.747,-18.684,-18.654,-18.653,-18.681,-18.737,-18.814,-18.896,-18.965,-19.005,
--19.011,-18.992,-18.969,-18.962,-18.984,-19.032,-19.088,-19.131,-19.145,-19.125,-19.079,-19.021,-18.966,-18.918,-18.874,-18.823,
--18.759,-18.677,-18.584,-18.490,-18.411,-18.357,-18.337,-18.352,-18.399,-18.466,-18.539,-18.600,-18.633,-18.629,-18.582,-18.496,
--18.380,-18.244,-18.095,-17.939,-17.783,-17.632,-17.492,-17.370,-17.268,-17.182,-17.106,-17.029,-16.946,-16.859,-16.773,-16.698,
--16.641,-16.601,-16.575,-16.553,-16.528,-16.499,-16.461,-16.413,-16.346,-16.249,-16.112,-15.933,-15.722,-15.498,-15.286,-15.100,
--14.942,-14.800,-14.653,-14.484,-14.293,-14.092,-13.908,-13.764,-13.675,-13.636,-13.627,-13.621,-13.593,-13.529,-13.429,-13.304,
--13.172,-13.050,-12.948,-12.870,-12.814,-12.770,-12.725,-12.665,-12.582,-12.473,-12.340,-12.193,-12.045,-11.900,-11.759,-11.616,
--11.462,-11.295,-11.121,-10.955,-10.815,-10.713,-10.650,-10.607,-10.555,-10.463,-10.310,-10.095,-9.835,-9.562,-9.308,-9.099,
--8.942,-8.833,-8.754,-8.686,-8.614,-8.527,-8.422,-8.297,-8.155,-7.999,-7.832,-7.662,-7.492,-7.326,-7.166,-7.010,
--6.855,-6.702,-6.553,-6.414,-6.288,-6.173,-6.060,-5.932,-5.772,-5.569,-5.320,-5.033,-4.726,-4.416,-4.119,-3.840,
--3.583,-3.343,-3.117,-2.900,-2.689,-2.480,-2.272,-2.065,-1.865,-1.677,-1.509,-1.360,-1.218,-1.065,-.883,-.656,
--.387,-.092,.205,.480,.719,.929,1.125,1.330,1.559,1.817,2.097,2.383,2.662,2.927,3.179,3.425,
-3.670,3.924,4.192,4.480,4.795,5.138,5.503,5.876,6.238,6.569,6.862,7.122,7.370,7.630,7.924,8.258,
-8.625,9.008,9.392,9.764,10.115,10.432,10.693,10.871,10.946,10.918,10.826,10.745,10.766,10.962,11.364,11.937,
-12.590,13.205,13.678,13.955,14.045,14.013,13.947,13.927,14.000,14.172,14.419,14.703,14.993,15.273,15.543,15.810,
-16.081,16.359,16.644,16.935,17.228,17.521,17.808,18.079,18.326,18.541,18.723,18.880,19.025,19.173,19.330,19.493,
-19.649,19.782,19.876,19.925,19.933,19.912,19.877,19.844,19.824,19.821,19.834,19.857,19.878,19.883,19.860,19.803,
-19.715,19.612,19.513,19.439,19.402,19.398,19.411,19.420,19.405,19.360,19.292,19.217,19.156,19.123,19.120,19.141,
-19.171,19.197,19.207,19.196,19.162,19.108,19.041,18.976,18.933,18.932,18.982,19.082,19.209,19.333,19.421,19.455,
-19.436,19.385,19.333,19.305,19.311,19.345,19.387,19.418,19.426,19.410,19.375,19.329,19.274,19.208,19.128,19.035,
-18.936,18.842,18.761,18.697,18.646,18.602,18.563,18.529,18.508,18.507,18.531,18.579,18.646,18.732,18.837,18.964,
-19.113,19.276,19.439,19.582,19.691,19.767,19.820,19.871,19.936,20.023,20.128,20.245,20.368,20.497,20.638,20.789,
-20.942,21.078,21.180,21.243,21.287,21.342,21.444,21.606,21.814,22.029,22.209,22.333,22.411,22.486,22.606,22.796,
-23.049,23.319,23.551,23.705,23.773,23.776,23.742,23.689,23.612,23.492,23.315,23.093,22.865,22.672,22.535,22.428,
-22.280,22.007,21.545,20.873,20.016,19.014,17.891,16.634,15.215,13.639,11.992,10.463,9.313,8.792,9.048,10.058,
-11.618,13.413,15.115,16.489,17.447,18.043,18.409,18.684,18.946,19.208,19.434,19.591,19.673,19.709,19.743,19.802,
-19.878,19.936,19.934,19.854,19.714,19.561,19.447,19.408,19.446,19.540,19.661,19.788,19.919,20.060,20.210,20.359,
-20.485,20.566,20.599,20.604,20.612,20.652,20.730,20.827,20.909,20.945,20.928,20.880,20.842,20.851,20.922,21.041,
-21.176,21.291,21.367,21.408,21.438,21.485,21.566,21.689,21.852,22.052,22.286,22.548,22.823,23.078,23.271,23.368,
-23.356,23.261,23.141,23.062,23.074,23.183,23.350,23.506,23.585,23.548,23.401,23.189,22.975,22.807,22.709,22.669,
-22.659,22.648,22.618,22.569,22.514,22.463,22.417,22.366,22.294,22.191,22.057,21.907,21.763,21.644,21.561,21.167,
-21.154,21.146,21.133,21.110,21.080,21.045,21.001,20.941,20.854,20.736,20.592,20.436,20.286,20.156,20.052,19.968,
-19.895,19.819,19.735,19.641,19.539,19.431,19.323,19.223,19.145,19.108,19.124,19.197,19.311,19.432,19.520,19.545,
-19.497,19.398,19.283,19.194,19.157,19.173,19.226,19.290,19.348,19.398,19.450,19.520,19.615,19.729,19.850,19.967,
-20.080,20.201,20.348,20.533,20.757,21.012,21.284,21.564,21.852,22.148,22.450,22.738,22.987,23.174,23.298,23.387,
-23.495,23.678,23.966,24.348,24.766,25.147,25.434,25.610,25.708,25.791,25.915,26.098,26.316,26.513,26.639,26.686,
-26.693,26.731,26.864,27.108,27.419,27.704,27.871,27.871,27.728,27.531,27.393,27.399,27.567,27.843,28.131,28.343,
-28.439,28.442,28.420,28.444,28.548,28.716,28.894,29.022,29.073,29.073,29.080,29.162,29.358,29.656,30.003,30.330,
-30.585,30.757,30.873,30.986,31.141,31.358,31.625,31.906,32.161,32.363,32.505,32.597,32.661,32.716,32.778,32.855,
-32.952,33.068,33.201,33.349,33.506,33.669,33.835,34.005,34.175,34.341,34.495,34.629,34.738,34.831,34.923,35.036,
-35.187,35.382,35.611,35.857,36.097,36.318,36.516,36.693,36.853,36.999,37.130,37.245,37.344,37.434,37.524,37.619,
-37.714,37.799,37.858,37.884,37.877,37.848,37.812,37.781,37.761,37.750,37.743,37.741,37.749,37.773,37.815,37.870,
-37.927,37.976,38.009,38.031,38.049,38.070,38.090,38.101,38.087,38.042,37.970,37.887,37.807,37.738,37.671,37.589,
-37.477,37.331,37.169,37.017,36.900,36.825,36.775,36.721,36.632,36.494,36.317,36.125,35.945,35.796,35.677,35.579,
-35.490,35.411,35.351,35.320,35.325,35.353,35.386,35.403,35.395,35.369,35.342,35.329,35.333,35.340,35.329,35.280,
-35.191,35.077,34.963,34.876,34.826,34.811,34.814,34.818,34.808,34.781,34.736,34.675,34.599,34.511,34.418,34.332,
-34.265,34.225,34.210,34.205,34.191,34.152,34.083,33.995,33.909,33.847,33.818,33.818,33.826,33.810,33.738,33.583,
-33.334,33.002,32.621,32.242,31.926,31.719,31.634,31.641,31.673,31.650,31.515,31.257,30.925,30.611,30.406,30.368,
-30.493,30.719,30.955,31.121,31.175,31.124,31.011,30.888,30.789,30.723,30.682,30.653,30.629,30.616,30.617,30.630,
-30.639,30.623,30.569,30.480,30.378,30.294,30.247,30.241,30.256,30.271,30.267,30.242,30.207,30.169,30.121,30.037,
-29.883,29.639,29.316,28.956,28.622,28.370,28.219,28.147,28.095,27.996,27.805,27.514,27.155,26.777,26.424,26.118,
-25.848,25.585,25.300,24.971,24.589,24.154,23.661,23.100,22.456,21.722,20.914,20.071,19.253,18.519,17.909,17.429,
-17.052,16.733,16.433,16.136,15.858,15.637,15.508,15.483,15.534,15.595,15.587,15.447,15.152,14.728,14.241,13.772,
-13.382,13.095,12.893,12.729,12.551,12.324,12.040,11.718,11.384,11.066,10.776,10.514,10.276,10.054,9.844,9.643,
-9.443,9.230,8.989,8.711,8.396,8.055,7.707,7.366,7.037,6.715,6.386,6.042,5.685,5.324,4.972,4.632,
-4.295,3.940,3.545,3.103,2.622,2.129,1.658,1.234,.864,.539,.238,-.055,-.345,-.628,-.893,-1.135,
--1.357,-1.575,-1.808,-2.068,-2.360,-2.677,-3.007,-3.340,-3.668,-3.990,-4.304,-4.609,-4.901,-5.179,-5.443,-5.701,
--5.961,-6.229,-6.510,-6.797,-7.086,-7.371,-7.652,-7.932,-8.214,-8.499,-8.779,-9.047,-9.300,-9.542,-9.788,-10.056,
--10.357,-10.691,-11.045,-11.395,-11.722,-12.018,-12.290,-12.556,-12.834,-13.133,-13.449,-13.770,-14.083,-14.381,-14.669,-14.955,
--15.247,-15.544,-15.840,-16.126,-16.395,-16.653,-16.910,-17.176,-17.455,-17.740,-18.014,-18.265,-18.489,-18.697,-18.905,-19.133,
--19.385,-19.654,-19.921,-20.169,-20.390,-20.590,-20.786,-20.992,-21.215,-21.448,-21.679,-21.893,-22.087,-22.270,-22.455,-22.654,
--22.871,-23.098,-23.322,-23.529,-23.713,-23.880,-24.036,-24.191,-24.349,-24.511,-24.671,-24.828,-24.981,-25.133,-25.286,-25.441,
--25.599,-25.757,-25.916,-26.079,-26.246,-26.415,-26.580,-26.731,-26.858,-26.959,-27.040,-27.110,-27.186,-27.277,-27.385,-27.508,
--27.634,-27.753,-27.856,-27.939,-28.000,-28.044,-28.074,-28.096,-28.118,-28.144,-28.176,-28.213,-28.248,-28.276,-28.293,-28.300,
--28.300,-28.301,-28.305,-28.312,-28.320,-28.322,-28.318,-28.307,-28.296,-28.291,-28.294,-28.303,-28.313,-28.316,-28.309,-28.289,
--28.263,-28.237,-28.219,-28.210,-28.206,-28.195,-28.164,-28.103,-28.011,-27.905,-27.812,-27.761,-27.769,-27.832,-27.917,-27.975,
--27.959,-27.840,-27.628,-27.362,-27.099,-26.884,-26.736,-26.644,-26.574,-26.495,-26.394,-26.282,-26.186,-26.128,-26.110,-26.113,
--26.102,-26.048,-25.942,-25.796,-25.644,-25.518,-25.441,-25.415,-25.427,-25.454,-25.472,-25.461,-25.410,-25.320,-25.206,-25.097,
--25.030,-25.036,-25.120,-25.258,-25.396,-25.478,-25.466,-25.365,-25.221,-25.100,-25.063,-25.130,-25.283,-25.479,-25.674,-25.849,
--26.005,-26.156,-26.304,-26.431,-26.513,-26.544,-26.549,-26.580,-26.683,-26.860,-27.056,-27.181,-27.177,-27.082,-27.046,-27.290,
--27.996,-29.187,-30.662,-32.034,-32.868,-32.864,-31.996,-30.550,-29.014,-27.885,-27.473,-27.796,-28.603,-29.521,-30.227,-30.585,
--30.670,-30.686,-30.839,-31.227,-31.802,-32.424,-32.946,-33.300,-33.520,-33.709,-33.966,-34.328,-34.756,-35.162,-35.469,-35.655,
--35.761,-35.865,-36.040,-36.310,-36.649,-36.996,-37.296,-37.518,-37.672,-37.791,-37.909,-38.050,-38.220,-38.415,-38.631,-38.871,
--39.134,-39.419,-39.710,-39.986,-40.228,-40.425,-40.580,-40.704,-40.809,-40.902,-40.986,-41.060,-41.132,-41.212,-41.309,-41.423,
--41.542,-41.639,-41.692,-41.691,-41.648,-41.597,-41.572,-41.598,-41.673,-41.773,-41.861,-41.910,-41.913,-41.886,-41.859,-41.854,
--41.882,-41.930,-41.978,-42.010,-42.020,-42.019,-42.024,-42.047,-42.086,-42.128,-42.159,-42.168,-42.159,-42.147,-42.148,-42.166,
--42.195,-42.217,-42.212,-42.173,-42.105,-42.026,-41.954,-41.898,-41.853,-41.808,-41.750,-41.674,-41.587,-41.502,-41.430,-41.375,
--41.332,-41.289,-41.237,-41.176,-41.114,-41.059,-41.018,-40.985,-40.948,-40.895,-40.822,-40.734,-40.643,-40.561,-40.489,-40.418,
--40.330,-40.209,-40.048,-39.854,-39.648,-39.449,-39.270,-39.111,-38.963,-38.812,-38.652,-38.482,-38.314,-38.157,-38.018,-37.897,
--37.786,-37.674,-37.554,-37.426,-37.294,-37.163,-37.035,-36.908,-36.775,-36.631,-36.470,-36.292,-36.097,-35.891,-35.677,-35.461,
--35.249,-35.045,-34.855,-34.680,-34.518,-34.365,-34.213,-34.062,-33.910,-33.762,-33.620,-33.483,-33.345,-33.197,-33.031,-32.844,
--32.645,-32.446,-32.263,-32.102,-31.962,-31.830,-31.694,-31.544,-31.381,-31.214,-31.056,-30.914,-30.789,-30.673,-30.554,-30.422,
--30.276,-30.122,-29.968,-29.821,-29.681,-29.546,-29.408,-29.265,-29.120,-28.979,-28.849,-28.731,-28.622,-28.513,-28.397,-28.270,
--28.134,-27.998,-27.870,-27.759,-27.668,-27.596,-27.539,-27.490,-27.443,-27.390,-27.326,-27.248,-27.158,-27.064,-26.975,-26.902,
--26.853,-26.825,-26.811,-26.800,-26.782,-26.754,-26.718,-26.678,-26.640,-26.601,-26.557,-26.503,-26.437,-26.364,-26.295,-26.240,
--26.203,-26.183,-26.168,-26.150,-26.122,-26.088,-26.053,-26.026,-26.008,-25.995,-25.978,-25.949,-25.909,-25.865,-25.828,-25.803,
--25.789,-25.773,-25.738,-25.672,-25.570,-25.441,-25.297,-25.150,-25.006,-24.862,-24.711,-24.550,-24.384,-24.224,-24.080,-23.958,
--23.853,-23.752,-23.640,-23.510,-23.365,-23.217,-23.081,-22.967,-22.876,-22.801,-22.731,-22.663,-22.595,-22.533,-22.477,-22.427,
--22.373,-22.308,-22.226,-22.132,-22.035,-21.945,-21.868,-21.795,-21.715,-21.613,-21.486,-21.341,-21.196,-21.068,-20.963,-20.878,
--20.796,-20.704,-20.598,-20.487,-20.391,-20.329,-20.307,-20.317,-20.339,-20.350,-20.338,-20.304,-20.260,-20.220,-20.191,-20.166,
--20.129,-20.063,-19.961,-19.827,-19.676,-19.525,-19.387,-19.267,-19.166,-19.086,-19.031,-19.009,-19.026,-19.077,-19.147,-19.212,
--19.251,-19.253,-19.223,-19.180,-19.147,-19.140,-19.164,-19.208,-19.261,-19.311,-19.358,-19.406,-19.463,-19.527,-19.584,-19.609,
--19.578,-19.474,-19.300,-19.076,-18.840,-18.631,-18.486,-18.424,-18.449,-18.547,-18.692,-18.854,-19.004,-19.121,-19.193,-19.217,
--19.195,-19.133,-19.033,-18.899,-18.738,-18.559,-18.376,-18.206,-18.061,-17.945,-17.852,-17.768,-17.680,-17.577,-17.460,-17.338,
--17.224,-17.126,-17.045,-16.978,-16.919,-16.868,-16.827,-16.797,-16.775,-16.745,-16.686,-16.577,-16.409,-16.193,-15.955,-15.727,
--15.535,-15.383,-15.255,-15.123,-14.965,-14.773,-14.563,-14.366,-14.211,-14.116,-14.074,-14.062,-14.046,-14.001,-13.916,-13.798,
--13.664,-13.536,-13.424,-13.334,-13.259,-13.189,-13.117,-13.035,-12.940,-12.832,-12.712,-12.579,-12.437,-12.285,-12.121,-11.944,
--11.750,-11.541,-11.325,-11.121,-10.951,-10.835,-10.781,-10.779,-10.801,-10.807,-10.761,-10.639,-10.440,-10.180,-9.891,-9.602,
--9.337,-9.105,-8.909,-8.746,-8.613,-8.507,-8.422,-8.352,-8.285,-8.208,-8.109,-7.986,-7.842,-7.686,-7.525,-7.362,
--7.195,-7.021,-6.840,-6.658,-6.487,-6.335,-6.205,-6.089,-5.971,-5.830,-5.654,-5.440,-5.197,-4.939,-4.676,-4.415,
--4.151,-3.881,-3.602,-3.320,-3.044,-2.787,-2.559,-2.361,-2.188,-2.035,-1.892,-1.754,-1.612,-1.458,-1.280,-1.068,
--.818,-.536,-.242,.040,.292,.504,.685,.854,1.035,1.245,1.490,1.763,2.052,2.346,2.634,2.914,
-3.183,3.443,3.695,3.947,4.212,4.506,4.847,5.239,5.672,6.122,6.557,6.955,7.306,7.622,7.924,8.234,
-8.563,8.910,9.267,9.625,9.986,10.354,10.733,11.111,11.457,11.733,11.909,11.987,12.005,12.035,12.153,12.411,
-12.810,13.296,13.780,14.176,14.428,14.535,14.548,14.538,14.574,14.690,14.879,15.106,15.325,15.508,15.654,15.787,
-15.946,16.163,16.450,16.798,17.178,17.555,17.900,18.194,18.433,18.627,18.788,18.931,19.064,19.191,19.313,19.425,
-19.526,19.616,19.696,19.773,19.849,19.929,20.010,20.087,20.152,20.195,20.211,20.193,20.144,20.068,19.973,19.871,
-19.777,19.704,19.662,19.653,19.673,19.705,19.731,19.731,19.695,19.621,19.520,19.408,19.302,19.214,19.151,19.112,
-19.097,19.101,19.121,19.147,19.170,19.178,19.163,19.128,19.086,19.059,19.070,19.130,19.233,19.357,19.473,19.559,
-19.608,19.630,19.646,19.675,19.722,19.777,19.822,19.836,19.812,19.757,19.686,19.618,19.560,19.512,19.465,19.413,
-19.355,19.298,19.249,19.211,19.176,19.134,19.073,18.995,18.911,18.842,18.807,18.816,18.867,18.948,19.049,19.161,
-19.280,19.405,19.528,19.637,19.720,19.769,19.788,19.795,19.812,19.861,19.951,20.081,20.243,20.424,20.615,20.807,
-20.985,21.132,21.232,21.280,21.291,21.300,21.350,21.470,21.662,21.892,22.110,22.274,22.377,22.446,22.534,22.685,
-22.907,23.165,23.399,23.560,23.634,23.654,23.674,23.731,23.820,23.883,23.849,23.676,23.383,23.053,22.791,22.661,
-22.650,22.658,22.544,22.194,21.572,20.731,19.767,18.758,17.707,16.548,15.199,13.648,12.017,10.560,9.594,9.375,
-9.989,11.305,13.017,14.753,16.207,17.230,17.852,18.218,18.497,18.799,19.141,19.468,19.709,19.826,19.838,19.803,
-19.780,19.791,19.818,19.818,19.755,19.628,19.468,19.325,19.240,19.223,19.260,19.325,19.400,19.484,19.585,19.706,
-19.831,19.929,19.969,19.939,19.858,19.772,19.729,19.755,19.840,19.946,20.026,20.053,20.036,20.011,20.021,20.089,
-20.207,20.335,20.428,20.459,20.435,20.391,20.377,20.432,20.571,20.786,21.054,21.348,21.644,21.922,22.160,22.333,
-22.419,22.413,22.337,22.237,22.169,22.176,22.265,22.402,22.525,22.572,22.507,22.342,22.125,21.927,21.802,21.774,
-21.828,21.922,22.011,22.061,22.063,22.028,21.969,21.898,21.815,21.717,21.602,21.478,21.360,21.264,21.200,21.167,
-20.762,20.766,20.743,20.692,20.624,20.555,20.494,20.438,20.371,20.272,20.129,19.946,19.743,19.549,19.389,19.274,
-19.200,19.154,19.118,19.082,19.038,18.987,18.931,18.875,18.825,18.796,18.806,18.871,18.992,19.154,19.321,19.447,
-19.498,19.463,19.363,19.238,19.134,19.083,19.090,19.139,19.207,19.273,19.336,19.405,19.492,19.604,19.733,19.865,
-19.988,20.103,20.223,20.368,20.554,20.784,21.050,21.336,21.632,21.934,22.240,22.539,22.811,23.027,23.165,23.228,
-23.253,23.302,23.439,23.699,24.065,24.476,24.850,25.122,25.277,25.351,25.413,25.524,25.704,25.924,26.122,26.246,
-26.287,26.289,26.330,26.478,26.749,27.095,27.415,27.612,27.634,27.507,27.321,27.192,27.200,27.360,27.618,27.884,
-28.079,28.176,28.205,28.230,28.309,28.458,28.646,28.811,28.904,28.915,28.886,28.888,28.988,29.211,29.530,29.879,
-30.188,30.414,30.557,30.658,30.773,30.940,31.168,31.434,31.697,31.921,32.089,32.204,32.286,32.356,32.429,32.511,
-32.603,32.703,32.815,32.940,33.080,33.234,33.396,33.559,33.718,33.869,34.007,34.128,34.231,34.316,34.392,34.472,
-34.575,34.715,34.896,35.111,35.346,35.583,35.808,36.015,36.202,36.371,36.521,36.652,36.763,36.857,36.945,37.035,
-37.133,37.238,37.337,37.416,37.461,37.472,37.456,37.427,37.398,37.376,37.363,37.358,37.361,37.373,37.399,37.439,
-37.487,37.534,37.568,37.585,37.586,37.583,37.584,37.591,37.601,37.602,37.584,37.545,37.487,37.419,37.345,37.261,
-37.159,37.033,36.885,36.730,36.588,36.476,36.399,36.342,36.278,36.185,36.050,35.880,35.700,35.536,35.408,35.322,
-35.270,35.238,35.215,35.194,35.174,35.156,35.137,35.114,35.086,35.058,35.039,35.035,35.046,35.062,35.062,35.028,
-34.951,34.841,34.720,34.616,34.549,34.524,34.531,34.550,34.562,34.555,34.524,34.472,34.403,34.320,34.230,34.139,
-34.060,34.002,33.971,33.960,33.955,33.937,33.892,33.819,33.731,33.646,33.582,33.541,33.514,33.476,33.398,33.255,
-33.034,32.738,32.388,32.023,31.695,31.453,31.336,31.348,31.460,31.604,31.702,31.690,31.544,31.292,31.005,30.767,
-30.639,30.636,30.720,30.826,30.885,30.855,30.738,30.564,30.377,30.211,30.081,29.982,29.902,29.837,29.789,29.767,
-29.777,29.815,29.865,29.910,29.941,29.957,29.965,29.974,29.986,30.000,30.013,30.027,30.054,30.105,30.182,30.262,
-30.303,30.253,30.076,29.769,29.373,28.960,28.604,28.354,28.211,28.129,28.041,27.880,27.614,27.251,26.833,26.411,
-26.029,25.702,25.420,25.159,24.892,24.598,24.263,23.876,23.420,22.878,22.237,21.499,20.692,19.865,19.075,18.369,
-17.770,17.267,16.830,16.424,16.031,15.662,15.348,15.126,15.013,14.993,15.012,15.001,14.895,14.664,14.321,13.916,
-13.514,13.166,12.894,12.687,12.509,12.324,12.107,11.855,11.581,11.301,11.024,10.749,10.469,10.181,9.888,9.603,
-9.337,9.094,8.864,8.629,8.368,8.071,7.739,7.389,7.036,6.693,6.361,6.033,5.704,5.371,5.038,4.712,
-4.391,4.065,3.713,3.319,2.876,2.395,1.906,1.441,1.028,.674,.369,.094,-.174,-.446,-.723,-.998,
--1.264,-1.521,-1.774,-2.034,-2.308,-2.600,-2.907,-3.225,-3.547,-3.873,-4.200,-4.522,-4.834,-5.126,-5.395,-5.644,
--5.882,-6.124,-6.381,-6.656,-6.943,-7.232,-7.517,-7.794,-8.068,-8.346,-8.629,-8.911,-9.185,-9.440,-9.680,-9.915,
--10.166,-10.451,-10.774,-11.127,-11.487,-11.831,-12.145,-12.427,-12.690,-12.952,-13.227,-13.516,-13.813,-14.109,-14.398,-14.683,
--14.969,-15.264,-15.567,-15.873,-16.171,-16.457,-16.730,-17.000,-17.274,-17.555,-17.837,-18.105,-18.348,-18.565,-18.767,-18.971,
--19.196,-19.449,-19.725,-20.003,-20.266,-20.503,-20.717,-20.921,-21.129,-21.350,-21.580,-21.806,-22.017,-22.210,-22.392,-22.578,
--22.781,-23.008,-23.250,-23.492,-23.716,-23.912,-24.078,-24.225,-24.364,-24.508,-24.663,-24.830,-25.005,-25.184,-25.361,-25.531,
--25.694,-25.850,-26.001,-26.154,-26.316,-26.492,-26.679,-26.868,-27.043,-27.192,-27.304,-27.384,-27.443,-27.498,-27.566,-27.655,
--27.764,-27.886,-28.009,-28.123,-28.221,-28.303,-28.370,-28.425,-28.471,-28.510,-28.544,-28.573,-28.599,-28.623,-28.644,-28.663,
--28.678,-28.692,-28.704,-28.715,-28.726,-28.736,-28.743,-28.746,-28.746,-28.745,-28.746,-28.751,-28.761,-28.773,-28.781,-28.779,
--28.764,-28.736,-28.702,-28.670,-28.648,-28.637,-28.631,-28.615,-28.576,-28.509,-28.422,-28.337,-28.281,-28.274,-28.317,-28.384,
--28.433,-28.420,-28.319,-28.134,-27.897,-27.655,-27.452,-27.309,-27.219,-27.156,-27.092,-27.009,-26.908,-26.806,-26.722,-26.667,
--26.633,-26.605,-26.562,-26.489,-26.385,-26.262,-26.136,-26.027,-25.951,-25.916,-25.919,-25.944,-25.964,-25.951,-25.881,-25.755,
--25.598,-25.458,-25.383,-25.403,-25.508,-25.655,-25.780,-25.830,-25.791,-25.688,-25.578,-25.516,-25.536,-25.638,-25.797,-25.985,
--26.181,-26.378,-26.573,-26.748,-26.879,-26.942,-26.938,-26.907,-26.912,-27.005,-27.192,-27.412,-27.569,-27.591,-27.498,-27.425,
--27.590,-28.188,-29.279,-30.711,-32.141,-33.146,-33.399,-32.808,-31.571,-30.105,-28.883,-28.249,-28.302,-28.889,-29.702,-30.438,
--30.922,-31.157,-31.280,-31.464,-31.817,-32.337,-32.931,-33.481,-33.907,-34.208,-34.441,-34.678,-34.959,-35.273,-35.573,-35.812,
--35.976,-36.096,-36.227,-36.420,-36.693,-37.027,-37.375,-37.694,-37.955,-38.160,-38.328,-38.482,-38.641,-38.812,-39.000,-39.209,
--39.445,-39.709,-39.996,-40.286,-40.557,-40.789,-40.973,-41.114,-41.230,-41.335,-41.441,-41.550,-41.657,-41.763,-41.869,-41.977,
--42.088,-42.190,-42.268,-42.307,-42.301,-42.263,-42.217,-42.189,-42.196,-42.236,-42.293,-42.345,-42.375,-42.385,-42.388,-42.402,
--42.436,-42.489,-42.545,-42.588,-42.610,-42.618,-42.623,-42.639,-42.670,-42.704,-42.728,-42.729,-42.709,-42.682,-42.668,-42.681,
--42.718,-42.762,-42.789,-42.781,-42.736,-42.670,-42.603,-42.553,-42.520,-42.493,-42.452,-42.387,-42.298,-42.203,-42.120,-42.059,
--42.018,-41.979,-41.925,-41.845,-41.746,-41.646,-41.563,-41.507,-41.471,-41.436,-41.383,-41.301,-41.198,-41.089,-40.995,-40.923,
--40.867,-40.807,-40.725,-40.608,-40.459,-40.289,-40.113,-39.941,-39.773,-39.603,-39.422,-39.232,-39.040,-38.858,-38.695,-38.551,
--38.419,-38.289,-38.153,-38.011,-37.869,-37.738,-37.621,-37.515,-37.409,-37.290,-37.151,-36.991,-36.816,-36.632,-36.445,-36.255,
--36.057,-35.850,-35.635,-35.420,-35.212,-35.018,-34.838,-34.667,-34.500,-34.334,-34.173,-34.021,-33.880,-33.749,-33.618,-33.476,
--33.315,-33.137,-32.952,-32.775,-32.616,-32.480,-32.358,-32.236,-32.103,-31.954,-31.793,-31.630,-31.476,-31.332,-31.194,-31.053,
--30.902,-30.740,-30.572,-30.409,-30.257,-30.118,-29.988,-29.859,-29.728,-29.594,-29.464,-29.343,-29.235,-29.134,-29.031,-28.918,
--28.789,-28.645,-28.496,-28.352,-28.224,-28.115,-28.027,-27.956,-27.897,-27.844,-27.793,-27.739,-27.679,-27.612,-27.540,-27.470,
--27.409,-27.363,-27.336,-27.322,-27.315,-27.306,-27.291,-27.270,-27.244,-27.215,-27.181,-27.139,-27.082,-27.008,-26.923,-26.835,
--26.755,-26.693,-26.648,-26.614,-26.584,-26.547,-26.502,-26.449,-26.393,-26.339,-26.289,-26.242,-26.199,-26.164,-26.140,-26.132,
--26.139,-26.152,-26.159,-26.148,-26.112,-26.054,-25.982,-25.907,-25.835,-25.764,-25.687,-25.595,-25.485,-25.364,-25.244,-25.135,
--25.039,-24.946,-24.841,-24.706,-24.534,-24.329,-24.107,-23.885,-23.679,-23.494,-23.331,-23.189,-23.070,-22.978,-22.916,-22.883,
--22.869,-22.854,-22.821,-22.760,-22.674,-22.575,-22.479,-22.395,-22.321,-22.245,-22.154,-22.042,-21.912,-21.778,-21.652,-21.540,
--21.435,-21.323,-21.193,-21.045,-20.893,-20.762,-20.672,-20.636,-20.644,-20.675,-20.705,-20.717,-20.706,-20.681,-20.652,-20.625,
--20.596,-20.555,-20.494,-20.408,-20.305,-20.198,-20.096,-20.003,-19.916,-19.829,-19.738,-19.651,-19.581,-19.539,-19.532,-19.553,
--19.587,-19.612,-19.617,-19.599,-19.566,-19.531,-19.501,-19.480,-19.465,-19.453,-19.449,-19.465,-19.515,-19.607,-19.736,-19.877,
--19.995,-20.054,-20.029,-19.918,-19.737,-19.523,-19.315,-19.147,-19.042,-19.001,-19.015,-19.066,-19.132,-19.199,-19.257,-19.305,
--19.340,-19.361,-19.360,-19.328,-19.256,-19.144,-19.003,-18.852,-18.716,-18.612,-18.545,-18.503,-18.463,-18.400,-18.299,-18.159,
--17.994,-17.820,-17.654,-17.503,-17.368,-17.246,-17.141,-17.060,-17.010,-16.989,-16.982,-16.960,-16.893,-16.764,-16.573,-16.345,
--16.115,-15.914,-15.755,-15.628,-15.508,-15.369,-15.203,-15.020,-14.846,-14.708,-14.618,-14.570,-14.536,-14.488,-14.403,-14.280,
--14.134,-13.989,-13.863,-13.765,-13.686,-13.609,-13.520,-13.413,-13.289,-13.160,-13.034,-12.914,-12.796,-12.666,-12.510,-12.315,
--12.077,-11.802,-11.509,-11.225,-10.982,-10.808,-10.717,-10.707,-10.754,-10.819,-10.860,-10.844,-10.756,-10.601,-10.400,-10.177,
--9.951,-9.730,-9.513,-9.298,-9.085,-8.886,-8.715,-8.582,-8.489,-8.425,-8.367,-8.295,-8.195,-8.063,-7.905,-7.733,
--7.554,-7.370,-7.182,-6.989,-6.797,-6.617,-6.458,-6.324,-6.209,-6.098,-5.974,-5.823,-5.642,-5.435,-5.211,-4.977,
--4.732,-4.470,-4.184,-3.875,-3.553,-3.238,-2.952,-2.708,-2.513,-2.359,-2.231,-2.113,-1.990,-1.848,-1.681,-1.481,
--1.246,-.982,-.702,-.424,-.170,.047,.226,.381,.534,.710,.924,1.178,1.465,1.768,2.074,2.375,
-2.665,2.943,3.209,3.463,3.712,3.967,4.248,4.572,4.949,5.376,5.835,6.302,6.756,7.188,7.603,8.010,
-8.417,8.821,9.205,9.555,9.862,10.139,10.415,10.719,11.070,11.458,11.854,12.214,12.509,12.738,12.928,13.125,
-13.369,13.671,14.008,14.335,14.603,14.788,14.901,14.986,15.093,15.258,15.483,15.733,15.958,16.114,16.186,16.198,
-16.203,16.263,16.422,16.692,17.050,17.448,17.832,18.162,18.423,18.621,18.776,18.915,19.051,19.190,19.325,19.448,
-19.550,19.634,19.707,19.779,19.860,19.955,20.061,20.168,20.264,20.336,20.377,20.383,20.353,20.292,20.208,20.111,
-20.012,19.922,19.852,19.807,19.787,19.786,19.793,19.801,19.802,19.793,19.774,19.743,19.696,19.628,19.534,19.418,
-19.292,19.177,19.095,19.060,19.071,19.114,19.164,19.196,19.200,19.183,19.165,19.169,19.210,19.291,19.398,19.515,
-19.629,19.738,19.846,19.959,20.074,20.176,20.243,20.256,20.212,20.123,20.017,19.924,19.862,19.831,19.816,19.798,
-19.763,19.712,19.653,19.599,19.555,19.515,19.469,19.407,19.329,19.249,19.184,19.153,19.164,19.216,19.298,19.399,
-19.511,19.627,19.740,19.838,19.907,19.938,19.931,19.902,19.879,19.889,19.952,20.071,20.235,20.426,20.626,20.822,
-21.005,21.165,21.287,21.362,21.392,21.399,21.418,21.488,21.628,21.826,22.043,22.229,22.356,22.432,22.503,22.624,
-22.828,23.096,23.366,23.562,23.638,23.610,23.550,23.547,23.655,23.855,24.055,24.139,24.028,23.732,23.348,23.011,
-22.820,22.777,22.784,22.693,22.382,21.822,21.086,20.294,19.528,18.769,17.891,16.733,15.214,13.422,11.635,10.243,
-9.604,9.894,11.038,12.728,14.545,16.118,17.241,17.910,18.277,18.536,18.826,19.177,19.530,19.792,19.908,19.891,
-19.806,19.733,19.716,19.751,19.790,19.786,19.718,19.603,19.482,19.392,19.347,19.336,19.338,19.339,19.347,19.376,
-19.435,19.505,19.544,19.508,19.371,19.153,18.913,18.723,18.639,18.671,18.781,18.909,19.002,19.041,19.042,19.045,
-19.083,19.158,19.247,19.311,19.325,19.293,19.250,19.246,19.318,19.480,19.715,19.988,20.265,20.523,20.750,20.940,
-21.086,21.177,21.205,21.180,21.129,21.094,21.109,21.186,21.301,21.405,21.444,21.385,21.236,21.040,20.860,20.753,
-20.741,20.813,20.928,21.040,21.113,21.135,21.113,21.064,21.003,20.938,20.874,20.814,20.764,20.735,20.730,20.744,
-20.762,20.204,20.212,20.174,20.094,19.993,19.894,19.816,19.758,19.702,19.623,19.502,19.337,19.147,18.958,18.799,
-18.683,18.609,18.565,18.536,18.512,18.488,18.465,18.443,18.423,18.410,18.412,18.446,18.527,18.662,18.841,19.031,
-19.192,19.288,19.302,19.248,19.158,19.075,19.027,19.027,19.063,19.120,19.183,19.251,19.336,19.449,19.594,19.760,
-19.932,20.093,20.239,20.379,20.529,20.704,20.911,21.147,21.405,21.680,21.973,22.282,22.594,22.883,23.113,23.258,
-23.314,23.316,23.323,23.401,23.589,23.880,24.222,24.543,24.787,24.938,25.028,25.117,25.254,25.452,25.674,25.863,
-25.971,25.993,25.979,26.009,26.149,26.416,26.762,27.091,27.309,27.365,27.281,27.139,27.039,27.056,27.203,27.435,
-27.677,27.866,27.980,28.044,28.107,28.205,28.345,28.495,28.610,28.664,28.667,28.670,28.734,28.902,29.172,29.500,
-29.818,30.071,30.236,30.337,30.421,30.539,30.714,30.938,31.179,31.398,31.573,31.703,31.807,31.905,32.011,32.126,
-32.244,32.356,32.463,32.573,32.696,32.839,32.996,33.158,33.309,33.441,33.552,33.645,33.729,33.809,33.888,33.970,
-34.060,34.165,34.292,34.448,34.632,34.837,35.053,35.269,35.478,35.674,35.853,36.012,36.150,36.268,36.372,36.471,
-36.573,36.683,36.795,36.896,36.970,37.007,37.007,36.981,36.947,36.923,36.919,36.936,36.968,37.008,37.052,37.097,
-37.142,37.185,37.219,37.237,37.236,37.218,37.192,37.168,37.154,37.149,37.146,37.133,37.101,37.048,36.974,36.885,
-36.782,36.664,36.532,36.387,36.235,36.089,35.958,35.848,35.755,35.670,35.581,35.482,35.374,35.268,35.176,35.107,
-35.064,35.043,35.034,35.025,35.010,34.985,34.948,34.905,34.861,34.824,34.804,34.804,34.821,34.841,34.846,34.816,
-34.744,34.634,34.506,34.389,34.304,34.264,34.264,34.287,34.312,34.324,34.312,34.278,34.224,34.154,34.072,33.984,
-33.897,33.822,33.767,33.734,33.715,33.694,33.657,33.596,33.515,33.427,33.349,33.286,33.234,33.175,33.087,32.954,
-32.770,32.544,32.293,32.037,31.800,31.608,31.482,31.443,31.496,31.625,31.793,31.948,32.036,32.026,31.919,31.749,
-31.569,31.424,31.336,31.291,31.250,31.171,31.030,30.828,30.596,30.371,30.179,30.029,29.909,29.797,29.680,29.560,
-29.455,29.389,29.380,29.432,29.534,29.664,29.798,29.916,30.003,30.057,30.081,30.087,30.096,30.130,30.205,30.321,
-30.455,30.560,30.584,30.483,30.247,29.901,29.504,29.125,28.816,28.595,28.434,28.282,28.080,27.792,27.414,26.976,
-26.527,26.109,25.748,25.445,25.181,24.932,24.672,24.381,24.045,23.646,23.168,22.597,21.932,21.189,20.407,19.633,
-18.912,18.269,17.703,17.194,16.710,16.235,15.772,15.347,14.996,14.743,14.588,14.499,14.424,14.311,14.129,13.874,
-13.570,13.255,12.960,12.701,12.470,12.252,12.031,11.802,11.571,11.345,11.126,10.904,10.661,10.379,10.053,9.694,
-9.329,8.986,8.682,8.419,8.178,7.937,7.674,7.382,7.066,6.738,6.409,6.085,5.765,5.444,5.122,4.800,
-4.480,4.158,3.824,3.464,3.064,2.624,2.155,1.683,1.236,.835,.487,.182,-.095,-.362,-.628,-.896,
--1.161,-1.420,-1.676,-1.934,-2.201,-2.481,-2.773,-3.075,-3.383,-3.700,-4.026,-4.363,-4.705,-5.040,-5.356,-5.641,
--5.895,-6.125,-6.349,-6.579,-6.824,-7.082,-7.344,-7.603,-7.858,-8.115,-8.382,-8.663,-8.955,-9.246,-9.526,-9.791,
--10.048,-10.313,-10.601,-10.921,-11.266,-11.617,-11.952,-12.255,-12.525,-12.774,-13.022,-13.285,-13.569,-13.870,-14.178,-14.484,
--14.782,-15.077,-15.370,-15.664,-15.955,-16.240,-16.517,-16.789,-17.063,-17.345,-17.637,-17.930,-18.209,-18.463,-18.688,-18.894,
--19.099,-19.324,-19.577,-19.855,-20.141,-20.414,-20.661,-20.879,-21.080,-21.278,-21.483,-21.699,-21.919,-22.132,-22.333,-22.526,
--22.720,-22.926,-23.151,-23.390,-23.632,-23.862,-24.068,-24.245,-24.399,-24.538,-24.676,-24.822,-24.981,-25.155,-25.342,-25.535,
--25.728,-25.912,-26.084,-26.244,-26.398,-26.553,-26.718,-26.897,-27.083,-27.265,-27.430,-27.566,-27.673,-27.756,-27.828,-27.904,
--27.991,-28.090,-28.197,-28.305,-28.410,-28.509,-28.605,-28.696,-28.780,-28.854,-28.910,-28.948,-28.968,-28.977,-28.985,-28.998,
--29.020,-29.049,-29.080,-29.108,-29.130,-29.145,-29.156,-29.163,-29.169,-29.171,-29.171,-29.169,-29.169,-29.173,-29.186,-29.205,
--29.226,-29.240,-29.239,-29.222,-29.193,-29.159,-29.128,-29.101,-29.073,-29.035,-28.979,-28.908,-28.835,-28.781,-28.763,-28.784,
--28.828,-28.864,-28.856,-28.777,-28.626,-28.420,-28.197,-27.994,-27.834,-27.724,-27.650,-27.591,-27.531,-27.458,-27.376,-27.293,
--27.219,-27.157,-27.106,-27.060,-27.007,-26.937,-26.845,-26.732,-26.609,-26.496,-26.416,-26.382,-26.393,-26.424,-26.437,-26.393,
--26.278,-26.108,-25.930,-25.801,-25.764,-25.827,-25.955,-26.088,-26.170,-26.171,-26.103,-26.005,-25.929,-25.910,-25.962,-26.076,
--26.238,-26.438,-26.665,-26.905,-27.128,-27.294,-27.369,-27.351,-27.282,-27.238,-27.288,-27.455,-27.693,-27.902,-27.989,-27.934,
--27.833,-27.878,-28.280,-29.152,-30.429,-31.854,-33.053,-33.681,-33.559,-32.759,-31.576,-30.413,-29.628,-29.403,-29.705,-30.331,
--31.019,-31.572,-31.915,-32.105,-32.262,-32.501,-32.868,-33.339,-33.841,-34.305,-34.693,-35.009,-35.282,-35.536,-35.780,-36.002,
--36.192,-36.350,-36.496,-36.662,-36.874,-37.140,-37.451,-37.781,-38.104,-38.402,-38.669,-38.906,-39.115,-39.300,-39.468,-39.632,
--39.808,-40.016,-40.265,-40.547,-40.841,-41.117,-41.349,-41.528,-41.662,-41.772,-41.880,-41.999,-42.131,-42.269,-42.402,-42.523,
--42.629,-42.720,-42.794,-42.847,-42.873,-42.874,-42.859,-42.842,-42.835,-42.846,-42.871,-42.901,-42.927,-42.943,-42.958,-42.980,
--43.018,-43.072,-43.131,-43.180,-43.211,-43.223,-43.228,-43.238,-43.260,-43.288,-43.308,-43.305,-43.275,-43.229,-43.189,-43.177,
--43.202,-43.253,-43.305,-43.333,-43.322,-43.277,-43.216,-43.162,-43.124,-43.094,-43.052,-42.978,-42.868,-42.735,-42.608,-42.515,
--42.467,-42.453,-42.447,-42.419,-42.355,-42.259,-42.153,-42.063,-41.999,-41.957,-41.916,-41.853,-41.758,-41.635,-41.505,-41.390,
--41.302,-41.240,-41.187,-41.125,-41.042,-40.932,-40.803,-40.659,-40.505,-40.335,-40.148,-39.943,-39.733,-39.534,-39.360,-39.219,
--39.103,-38.995,-38.876,-38.737,-38.581,-38.421,-38.272,-38.141,-38.025,-37.911,-37.785,-37.640,-37.478,-37.310,-37.146,-36.988,
--36.830,-36.659,-36.466,-36.249,-36.019,-35.788,-35.570,-35.370,-35.182,-34.999,-34.814,-34.627,-34.448,-34.285,-34.143,-34.018,
--33.898,-33.769,-33.625,-33.467,-33.303,-33.145,-33.001,-32.869,-32.741,-32.609,-32.467,-32.317,-32.166,-32.021,-31.882,-31.745,
--31.602,-31.446,-31.276,-31.100,-30.926,-30.764,-30.615,-30.476,-30.341,-30.204,-30.067,-29.934,-29.810,-29.699,-29.597,-29.497,
--29.392,-29.275,-29.148,-29.017,-28.889,-28.769,-28.659,-28.557,-28.461,-28.373,-28.295,-28.230,-28.180,-28.142,-28.110,-28.078,
--28.041,-27.998,-27.953,-27.909,-27.869,-27.835,-27.806,-27.779,-27.755,-27.732,-27.710,-27.686,-27.654,-27.610,-27.549,-27.475,
--27.393,-27.312,-27.241,-27.184,-27.137,-27.096,-27.053,-27.004,-26.945,-26.880,-26.811,-26.742,-26.673,-26.609,-26.552,-26.504,
--26.467,-26.438,-26.412,-26.384,-26.348,-26.307,-26.266,-26.233,-26.214,-26.208,-26.206,-26.195,-26.166,-26.118,-26.056,-25.994,
--25.938,-25.891,-25.843,-25.775,-25.674,-25.532,-25.351,-25.143,-24.923,-24.701,-24.484,-24.273,-24.072,-23.888,-23.734,-23.615,
--23.533,-23.477,-23.426,-23.360,-23.268,-23.149,-23.019,-22.893,-22.787,-22.702,-22.631,-22.563,-22.489,-22.407,-22.322,-22.239,
--22.157,-22.069,-21.963,-21.828,-21.667,-21.491,-21.324,-21.187,-21.093,-21.044,-21.029,-21.034,-21.048,-21.067,-21.088,-21.111,
--21.127,-21.126,-21.097,-21.033,-20.942,-20.838,-20.739,-20.655,-20.586,-20.524,-20.455,-20.372,-20.277,-20.181,-20.100,-20.046,
--20.022,-20.019,-20.028,-20.038,-20.045,-20.046,-20.041,-20.027,-19.996,-19.944,-19.870,-19.788,-19.721,-19.692,-19.721,-19.813,
--19.952,-20.113,-20.261,-20.372,-20.430,-20.436,-20.399,-20.335,-20.256,-20.169,-20.076,-19.976,-19.867,-19.753,-19.643,-19.546,
--19.475,-19.433,-19.416,-19.410,-19.394,-19.352,-19.274,-19.170,-19.060,-18.970,-18.922,-18.918,-18.945,-18.971,-18.968,-18.912,
--18.801,-18.647,-18.471,-18.289,-18.108,-17.930,-17.750,-17.572,-17.409,-17.276,-17.183,-17.125,-17.082,-17.022,-16.920,-16.766,
--16.574,-16.370,-16.184,-16.033,-15.912,-15.802,-15.682,-15.542,-15.388,-15.242,-15.124,-15.047,-15.000,-14.960,-14.898,-14.797,
--14.658,-14.500,-14.348,-14.220,-14.118,-14.032,-13.939,-13.827,-13.694,-13.550,-13.414,-13.300,-13.208,-13.120,-13.006,-12.834,
--12.585,-12.257,-11.871,-11.468,-11.098,-10.806,-10.621,-10.550,-10.574,-10.652,-10.737,-10.788,-10.781,-10.714,-10.606,-10.483,
--10.364,-10.255,-10.143,-10.010,-9.837,-9.623,-9.382,-9.141,-8.929,-8.763,-8.644,-8.553,-8.468,-8.368,-8.241,-8.089,
--7.918,-7.738,-7.554,-7.367,-7.176,-6.986,-6.803,-6.636,-6.489,-6.362,-6.244,-6.124,-5.991,-5.840,-5.670,-5.485,
--5.285,-5.064,-4.815,-4.532,-4.218,-3.885,-3.554,-3.249,-2.986,-2.772,-2.601,-2.459,-2.329,-2.193,-2.040,-1.863,
--1.658,-1.427,-1.179,-.928,-.690,-.480,-.303,-.151,-.005,.160,.363,.615,.910,1.234,1.567,1.894,
-2.206,2.504,2.788,3.061,3.324,3.580,3.836,4.102,4.394,4.722,5.090,5.491,5.918,6.361,6.818,7.293,
-7.788,8.297,8.801,9.271,9.682,10.021,10.298,10.546,10.803,11.102,11.450,11.832,12.215,12.568,12.878,13.150,
-13.409,13.677,13.964,14.257,14.534,14.773,14.971,15.145,15.329,15.552,15.822,16.116,16.389,16.592,16.694,16.699,
-16.650,16.609,16.637,16.771,17.012,17.330,17.678,18.011,18.302,18.548,18.760,18.953,19.137,19.309,19.458,19.573,
-19.650,19.698,19.735,19.781,19.852,19.948,20.058,20.164,20.245,20.290,20.297,20.275,20.241,20.209,20.188,20.182,
-20.184,20.183,20.170,20.135,20.076,19.997,19.910,19.832,19.780,19.769,19.802,19.866,19.937,19.981,19.971,19.892,
-19.753,19.584,19.424,19.313,19.270,19.291,19.353,19.418,19.458,19.461,19.434,19.402,19.389,19.411,19.475,19.573,
-19.698,19.844,20.010,20.193,20.383,20.558,20.689,20.748,20.724,20.631,20.499,20.370,20.277,20.229,20.214,20.206,
-20.176,20.110,20.010,19.895,19.782,19.686,19.609,19.545,19.488,19.437,19.396,19.369,19.362,19.372,19.398,19.437,
-19.493,19.569,19.669,19.782,19.892,19.975,20.015,20.015,19.995,19.989,20.029,20.131,20.289,20.481,20.683,20.873,
-21.045,21.198,21.333,21.442,21.521,21.569,21.601,21.646,21.735,21.881,22.071,22.265,22.421,22.519,22.577,22.647,
-22.787,23.022,23.323,23.618,23.819,23.879,23.816,23.710,23.664,23.740,23.926,24.129,24.230,24.141,23.862,23.478,
-23.116,22.872,22.753,22.680,22.530,22.215,21.735,21.180,20.661,20.228,19.803,19.190,18.168,16.620,14.635,12.535,
-10.776,9.793,9.830,10.841,12.518,14.409,16.094,17.320,18.055,18.440,18.677,18.924,19.230,19.544,19.779,19.880,
-19.855,19.772,19.714,19.729,19.813,19.918,19.992,20.007,19.973,19.926,19.893,19.884,19.880,19.858,19.811,19.757,
-19.726,19.737,19.775,19.791,19.721,19.525,19.213,18.847,18.522,18.318,18.270,18.351,18.493,18.619,18.682,18.679,
-18.643,18.615,18.620,18.655,18.697,18.725,18.733,18.740,18.776,18.866,19.012,19.195,19.383,19.549,19.681,19.785,
-19.872,19.948,20.007,20.040,20.042,20.025,20.017,20.046,20.126,20.244,20.359,20.425,20.406,20.299,20.138,19.973,
-19.855,19.812,19.840,19.911,19.990,20.048,20.074,20.075,20.062,20.046,20.032,20.021,20.018,20.028,20.057,20.105,
-20.161,20.204,19.479,19.493,19.467,19.400,19.309,19.216,19.142,19.092,19.052,19.002,18.922,18.804,18.658,18.502,
-18.360,18.243,18.156,18.092,18.045,18.013,17.994,17.990,17.999,18.015,18.034,18.059,18.100,18.174,18.292,18.452,
-18.636,18.808,18.937,19.001,19.003,18.966,18.921,18.896,18.903,18.942,19.003,19.079,19.173,19.292,19.446,19.633,
-19.844,20.059,20.260,20.440,20.603,20.762,20.931,21.115,21.317,21.536,21.773,22.034,22.321,22.623,22.918,23.169,
-23.345,23.436,23.462,23.471,23.519,23.645,23.853,24.111,24.370,24.586,24.747,24.875,25.009,25.180,25.387,25.599,
-25.765,25.851,25.861,25.845,25.869,25.990,26.219,26.511,26.788,26.974,27.033,26.989,26.911,26.879,26.948,27.122,
-27.359,27.596,27.782,27.899,27.968,28.022,28.091,28.178,28.267,28.339,28.389,28.439,28.530,28.697,28.946,29.250,
-29.554,29.803,29.966,30.053,30.105,30.173,30.293,30.469,30.676,30.875,31.037,31.157,31.251,31.345,31.460,31.598,
-31.746,31.888,32.013,32.126,32.244,32.381,32.544,32.723,32.898,33.049,33.165,33.250,33.317,33.384,33.461,33.549,
-33.645,33.742,33.840,33.944,34.064,34.204,34.368,34.549,34.739,34.930,35.115,35.288,35.450,35.598,35.735,35.865,
-35.993,36.123,36.254,36.378,36.482,36.552,36.580,36.569,36.534,36.497,36.477,36.487,36.527,36.586,36.651,36.710,
-36.758,36.797,36.828,36.854,36.873,36.880,36.875,36.860,36.840,36.820,36.801,36.780,36.749,36.698,36.624,36.527,
-36.414,36.293,36.169,36.043,35.912,35.774,35.627,35.475,35.326,35.188,35.071,34.979,34.913,34.869,34.843,34.829,
-34.820,34.812,34.802,34.789,34.771,34.747,34.717,34.683,34.648,34.619,34.603,34.604,34.617,34.634,34.637,34.611,
-34.546,34.446,34.327,34.212,34.124,34.074,34.060,34.071,34.089,34.100,34.097,34.081,34.052,34.012,33.959,33.891,
-33.810,33.726,33.649,33.589,33.546,33.510,33.466,33.401,33.313,33.214,33.118,33.039,32.975,32.912,32.826,32.699,
-32.527,32.328,32.130,31.961,31.837,31.760,31.719,31.704,31.712,31.751,31.828,31.944,32.082,32.211,32.299,32.322,
-32.278,32.183,32.062,31.931,31.794,31.636,31.442,31.203,30.934,30.662,30.423,30.236,30.102,29.997,29.889,29.753,
-29.586,29.413,29.274,29.207,29.237,29.361,29.554,29.776,29.986,30.157,30.275,30.343,30.377,30.398,30.427,30.477,
-30.548,30.625,30.682,30.685,30.604,30.429,30.169,29.855,29.527,29.222,28.954,28.717,28.482,28.216,27.895,27.516,
-27.096,26.669,26.269,25.917,25.619,25.362,25.125,24.883,24.615,24.301,23.926,23.473,22.932,22.302,21.596,20.842,
-20.079,19.345,18.667,18.052,17.487,16.953,16.434,15.928,15.450,15.026,14.677,14.409,14.208,14.047,13.889,13.710,
-13.500,13.262,13.010,12.754,12.498,12.239,11.974,11.704,11.440,11.196,10.978,10.783,10.592,10.378,10.116,9.799,
-9.436,9.055,8.686,8.351,8.055,7.789,7.534,7.273,6.999,6.711,6.418,6.126,5.836,5.546,5.249,4.944,
-4.628,4.303,3.967,3.613,3.234,2.825,2.389,1.938,1.491,1.069,.683,.336,.020,-.273,-.552,-.819,
--1.074,-1.317,-1.551,-1.788,-2.037,-2.306,-2.596,-2.900,-3.209,-3.518,-3.828,-4.147,-4.482,-4.831,-5.186,-5.531,
--5.848,-6.128,-6.375,-6.599,-6.816,-7.036,-7.261,-7.488,-7.711,-7.932,-8.156,-8.394,-8.654,-8.938,-9.236,-9.540,
--9.841,-10.138,-10.438,-10.749,-11.074,-11.408,-11.736,-12.042,-12.316,-12.561,-12.792,-13.029,-13.290,-13.580,-13.896,-14.224,
--14.551,-14.869,-15.176,-15.472,-15.760,-16.039,-16.310,-16.574,-16.838,-17.108,-17.393,-17.692,-17.996,-18.292,-18.564,-18.807,
--19.026,-19.239,-19.463,-19.712,-19.985,-20.268,-20.542,-20.792,-21.012,-21.209,-21.398,-21.593,-21.802,-22.023,-22.251,-22.475,
--22.691,-22.900,-23.107,-23.317,-23.532,-23.751,-23.968,-24.177,-24.374,-24.556,-24.724,-24.881,-25.032,-25.183,-25.342,-25.512,
--25.697,-25.891,-26.088,-26.279,-26.455,-26.616,-26.767,-26.917,-27.072,-27.238,-27.410,-27.581,-27.743,-27.890,-28.021,-28.141,
--28.255,-28.365,-28.472,-28.573,-28.668,-28.758,-28.848,-28.941,-29.038,-29.133,-29.217,-29.282,-29.321,-29.339,-29.344,-29.349,
--29.365,-29.395,-29.435,-29.476,-29.511,-29.534,-29.549,-29.560,-29.573,-29.589,-29.605,-29.614,-29.614,-29.607,-29.600,-29.602,
--29.619,-29.649,-29.686,-29.716,-29.730,-29.722,-29.697,-29.661,-29.620,-29.575,-29.525,-29.465,-29.395,-29.323,-29.263,-29.230,
--29.231,-29.258,-29.289,-29.296,-29.255,-29.151,-28.991,-28.795,-28.594,-28.412,-28.269,-28.167,-28.099,-28.050,-28.005,-27.951,
--27.885,-27.809,-27.731,-27.660,-27.601,-27.551,-27.498,-27.427,-27.326,-27.200,-27.065,-26.952,-26.885,-26.876,-26.905,-26.935,
--26.921,-26.833,-26.676,-26.487,-26.321,-26.229,-26.228,-26.299,-26.396,-26.468,-26.484,-26.444,-26.374,-26.310,-26.281,-26.301,
--26.371,-26.492,-26.667,-26.899,-27.174,-27.459,-27.698,-27.838,-27.856,-27.783,-27.694,-27.675,-27.780,-27.991,-28.227,-28.378,
--28.384,-28.279,-28.210,-28.377,-28.946,-29.951,-31.250,-32.559,-33.549,-33.974,-33.767,-33.068,-32.163,-31.373,-30.934,-30.926,
--31.269,-31.787,-32.298,-32.682,-32.920,-33.070,-33.223,-33.452,-33.782,-34.191,-34.630,-35.051,-35.424,-35.742,-36.011,-36.244,
--36.454,-36.649,-36.838,-37.031,-37.238,-37.465,-37.714,-37.984,-38.271,-38.568,-38.867,-39.159,-39.429,-39.662,-39.853,-40.006,
--40.143,-40.294,-40.487,-40.737,-41.033,-41.348,-41.643,-41.889,-42.072,-42.204,-42.309,-42.415,-42.540,-42.686,-42.844,-42.998,
--43.133,-43.242,-43.324,-43.379,-43.412,-43.427,-43.431,-43.432,-43.440,-43.460,-43.492,-43.532,-43.573,-43.610,-43.644,-43.681,
--43.727,-43.783,-43.842,-43.892,-43.921,-43.926,-43.913,-43.896,-43.886,-43.885,-43.885,-43.871,-43.833,-43.774,-43.710,-43.667,
--43.663,-43.699,-43.759,-43.812,-43.834,-43.814,-43.763,-43.705,-43.658,-43.628,-43.598,-43.543,-43.440,-43.288,-43.109,-42.939,
--42.813,-42.747,-42.732,-42.738,-42.733,-42.697,-42.631,-42.552,-42.481,-42.428,-42.388,-42.342,-42.273,-42.171,-42.044,-41.909,
--41.787,-41.687,-41.608,-41.537,-41.459,-41.368,-41.263,-41.149,-41.031,-40.905,-40.764,-40.602,-40.421,-40.232,-40.056,-39.906,
--39.787,-39.687,-39.585,-39.461,-39.307,-39.131,-38.950,-38.784,-38.644,-38.524,-38.410,-38.286,-38.144,-37.987,-37.829,-37.680,
--37.541,-37.404,-37.251,-37.070,-36.858,-36.624,-36.388,-36.166,-35.964,-35.776,-35.591,-35.396,-35.188,-34.978,-34.777,-34.600,
--34.450,-34.320,-34.197,-34.069,-33.931,-33.784,-33.635,-33.490,-33.350,-33.211,-33.070,-32.924,-32.775,-32.631,-32.497,-32.373,
--32.255,-32.131,-31.995,-31.843,-31.679,-31.510,-31.345,-31.187,-31.035,-30.884,-30.733,-30.581,-30.432,-30.292,-30.164,-30.046,
--29.935,-29.825,-29.715,-29.606,-29.502,-29.405,-29.314,-29.223,-29.128,-29.025,-28.919,-28.820,-28.738,-28.682,-28.650,-28.636,
--28.625,-28.606,-28.571,-28.521,-28.462,-28.401,-28.346,-28.298,-28.257,-28.221,-28.187,-28.154,-28.120,-28.085,-28.048,-28.004,
--27.955,-27.901,-27.845,-27.788,-27.735,-27.684,-27.634,-27.585,-27.533,-27.480,-27.425,-27.369,-27.311,-27.251,-27.186,-27.118,
--27.047,-26.974,-26.900,-26.823,-26.744,-26.666,-26.593,-26.532,-26.491,-26.472,-26.470,-26.477,-26.480,-26.468,-26.440,-26.400,
--26.357,-26.320,-26.291,-26.265,-26.236,-26.192,-26.131,-26.051,-25.958,-25.852,-25.735,-25.599,-25.441,-25.259,-25.061,-24.859,
--24.664,-24.487,-24.325,-24.169,-24.010,-23.840,-23.662,-23.485,-23.325,-23.191,-23.087,-23.009,-22.946,-22.890,-22.837,-22.784,
--22.731,-22.676,-22.611,-22.527,-22.416,-22.279,-22.123,-21.963,-21.811,-21.680,-21.576,-21.501,-21.459,-21.451,-21.476,-21.530,
--21.599,-21.663,-21.698,-21.689,-21.631,-21.535,-21.420,-21.308,-21.213,-21.137,-21.070,-20.999,-20.915,-20.819,-20.718,-20.625,
--20.548,-20.492,-20.455,-20.434,-20.425,-20.429,-20.445,-20.467,-20.485,-20.484,-20.448,-20.373,-20.266,-20.148,-20.046,-19.988,
--19.993,-20.064,-20.194,-20.366,-20.560,-20.755,-20.934,-21.081,-21.184,-21.236,-21.231,-21.169,-21.055,-20.901,-20.720,-20.529,
--20.346,-20.183,-20.051,-19.946,-19.861,-19.777,-19.680,-19.561,-19.424,-19.288,-19.178,-19.113,-19.102,-19.134,-19.183,-19.222,
--19.229,-19.197,-19.132,-19.047,-18.947,-18.830,-18.684,-18.497,-18.271,-18.019,-17.769,-17.547,-17.370,-17.232,-17.114,-16.991,
--16.847,-16.682,-16.512,-16.358,-16.233,-16.135,-16.047,-15.950,-15.832,-15.697,-15.564,-15.455,-15.381,-15.339,-15.308,-15.261,
--15.180,-15.061,-14.917,-14.769,-14.633,-14.513,-14.400,-14.279,-14.141,-13.990,-13.843,-13.721,-13.635,-13.578,-13.521,-13.421,
--13.237,-12.945,-12.552,-12.092,-11.624,-11.211,-10.906,-10.734,-10.691,-10.741,-10.832,-10.910,-10.939,-10.904,-10.820,-10.714,
--10.621,-10.558,-10.524,-10.495,-10.437,-10.321,-10.135,-9.890,-9.615,-9.348,-9.116,-8.934,-8.795,-8.683,-8.577,-8.462,
--8.333,-8.188,-8.032,-7.866,-7.689,-7.499,-7.298,-7.090,-6.883,-6.688,-6.508,-6.347,-6.200,-6.064,-5.933,-5.803,
--5.667,-5.516,-5.341,-5.129,-4.876,-4.585,-4.269,-3.947,-3.640,-3.363,-3.122,-2.915,-2.730,-2.557,-2.384,-2.205,
--2.016,-1.817,-1.612,-1.406,-1.208,-1.026,-.865,-.719,-.576,-.415,-.217,.031,.329,.666,1.021,1.373,
-1.709,2.027,2.328,2.621,2.909,3.193,3.471,3.744,4.015,4.293,4.588,4.906,5.251,5.623,6.022,6.451,
-6.914,7.413,7.940,8.478,9.002,9.488,9.920,10.300,10.642,10.967,11.292,11.620,11.942,12.243,12.514,12.757,
-12.993,13.244,13.528,13.848,14.187,14.520,14.828,15.105,15.362,15.620,15.893,16.179,16.454,16.682,16.833,16.897,
-16.894,16.867,16.867,16.935,17.083,17.302,17.562,17.836,18.106,18.373,18.646,18.930,19.218,19.485,19.698,19.825,
-19.855,19.805,19.712,19.628,19.594,19.632,19.738,19.883,20.028,20.139,20.198,20.205,20.180,20.150,20.140,20.167,
-20.228,20.311,20.388,20.433,20.423,20.349,20.222,20.066,19.920,19.820,19.792,19.838,19.937,20.046,20.121,20.127,
-20.056,19.928,19.785,19.670,19.615,19.625,19.678,19.738,19.772,19.763,19.716,19.655,19.609,19.603,19.642,19.722,
-19.834,19.970,20.130,20.317,20.530,20.750,20.947,21.086,21.139,21.100,20.989,20.843,20.702,20.593,20.520,20.465,
-20.403,20.314,20.191,20.046,19.897,19.762,19.650,19.564,19.501,19.460,19.442,19.448,19.472,19.505,19.531,19.542,
-19.541,19.546,19.578,19.650,19.760,19.884,19.991,20.055,20.075,20.071,20.083,20.145,20.272,20.456,20.669,20.878,
-21.066,21.228,21.372,21.505,21.623,21.716,21.778,21.815,21.851,21.920,22.041,22.211,22.399,22.564,22.681,22.755,
-22.829,22.954,23.161,23.438,23.725,23.949,24.058,24.052,23.988,23.943,23.970,24.065,24.167,24.186,24.064,23.802,
-23.470,23.163,22.945,22.812,22.694,22.501,22.184,21.772,21.358,21.030,20.794,20.523,19.987,18.951,17.306,15.172,
-12.899,10.974,9.851,9.782,10.725,12.372,14.266,15.980,17.251,18.031,18.449,18.698,18.935,19.218,19.512,19.744,
-19.865,19.885,19.866,19.875,19.951,20.084,20.228,20.341,20.405,20.436,20.469,20.523,20.592,20.644,20.645,20.591,
-20.511,20.454,20.457,20.517,20.581,20.572,20.428,20.139,19.759,19.383,19.110,18.991,19.017,19.123,19.226,19.265,
-19.223,19.130,19.033,18.973,18.965,18.993,19.035,19.071,19.101,19.138,19.193,19.266,19.343,19.402,19.426,19.415,
-19.383,19.348,19.322,19.302,19.279,19.245,19.205,19.179,19.192,19.258,19.368,19.490,19.580,19.602,19.546,19.431,
-19.297,19.186,19.123,19.112,19.136,19.172,19.204,19.229,19.250,19.275,19.303,19.329,19.347,19.355,19.359,19.372,
-19.400,19.441,19.479,18.669,18.695,18.699,18.667,18.602,18.521,18.444,18.384,18.344,18.310,18.268,18.205,18.120,
-18.021,17.919,17.824,17.743,17.680,17.636,17.614,17.618,17.645,17.689,17.736,17.777,17.809,17.838,17.882,17.959,
-18.074,18.220,18.375,18.510,18.606,18.658,18.677,18.688,18.710,18.757,18.831,18.928,19.045,19.182,19.345,19.538,
-19.759,19.996,20.233,20.456,20.660,20.848,21.030,21.215,21.407,21.604,21.802,22.004,22.215,22.443,22.689,22.941,
-23.174,23.363,23.492,23.567,23.616,23.677,23.780,23.937,24.132,24.338,24.527,24.691,24.839,24.992,25.165,25.354,
-25.535,25.678,25.763,25.799,25.821,25.872,25.986,26.161,26.364,26.544,26.660,26.702,26.702,26.713,26.787,26.946,
-27.175,27.426,27.644,27.793,27.868,27.892,27.900,27.919,27.960,28.019,28.092,28.182,28.310,28.493,28.738,29.024,
-29.311,29.549,29.706,29.781,29.808,29.835,29.907,30.039,30.214,30.394,30.544,30.646,30.712,30.768,30.847,30.961,
-31.104,31.256,31.398,31.522,31.641,31.776,31.943,32.142,32.357,32.560,32.728,32.852,32.941,33.016,33.093,33.182,
-33.280,33.377,33.464,33.540,33.617,33.706,33.819,33.957,34.115,34.280,34.444,34.602,34.755,34.906,35.058,35.211,
-35.365,35.517,35.666,35.810,35.943,36.056,36.140,36.186,36.197,36.181,36.157,36.143,36.152,36.186,36.234,36.283,
-36.322,36.347,36.362,36.376,36.396,36.425,36.457,36.485,36.500,36.501,36.486,36.460,36.422,36.371,36.302,36.210,
-36.098,35.971,35.839,35.711,35.590,35.473,35.351,35.214,35.060,34.894,34.733,34.594,34.494,34.440,34.429,34.447,
-34.476,34.500,34.509,34.501,34.481,34.455,34.430,34.407,34.390,34.380,34.376,34.380,34.389,34.394,34.385,34.350,
-34.284,34.191,34.085,33.985,33.911,33.870,33.860,33.866,33.874,33.872,33.860,33.844,33.831,33.823,33.813,33.790,
-33.743,33.671,33.585,33.500,33.430,33.377,33.329,33.270,33.186,33.077,32.957,32.846,32.754,32.680,32.601,32.491,
-32.333,32.134,31.925,31.749,31.644,31.624,31.672,31.753,31.828,31.875,31.899,31.920,31.967,32.050,32.160,32.268,
-32.340,32.352,32.297,32.184,32.029,31.840,31.621,31.367,31.081,30.779,30.490,30.246,30.067,29.950,29.869,29.785,
-29.666,29.504,29.322,29.163,29.077,29.097,29.227,29.441,29.695,29.944,30.154,30.310,30.417,30.486,30.530,30.559,
-30.573,30.571,30.548,30.500,30.422,30.309,30.156,29.962,29.731,29.473,29.200,28.925,28.650,28.372,28.080,27.763,
-27.415,27.042,26.658,26.286,25.945,25.647,25.391,25.167,24.955,24.730,24.468,24.148,23.750,23.262,22.680,22.012,
-21.276,20.501,19.720,18.962,18.247,17.583,16.969,16.401,15.876,15.399,14.974,14.606,14.296,14.034,13.807,13.600,
-13.399,13.197,12.992,12.781,12.559,12.319,12.055,11.766,11.461,11.155,10.866,10.606,10.376,10.162,9.944,9.703,
-9.429,9.125,8.803,8.478,8.159,7.850,7.545,7.239,6.929,6.620,6.320,6.034,5.767,5.510,5.255,4.990,
-4.707,4.403,4.076,3.729,3.359,2.968,2.556,2.133,1.709,1.299,.914,.556,.222,-.094,-.399,-.692,
--.968,-1.223,-1.458,-1.682,-1.911,-2.163,-2.445,-2.756,-3.082,-3.409,-3.725,-4.030,-4.336,-4.653,-4.990,-5.344,
--5.698,-6.035,-6.340,-6.606,-6.841,-7.056,-7.262,-7.467,-7.670,-7.870,-8.065,-8.264,-8.475,-8.710,-8.974,-9.264,
--9.574,-9.893,-10.217,-10.543,-10.870,-11.199,-11.522,-11.831,-12.117,-12.376,-12.614,-12.846,-13.088,-13.352,-13.644,-13.958,
--14.282,-14.607,-14.925,-15.233,-15.534,-15.827,-16.111,-16.385,-16.650,-16.911,-17.177,-17.456,-17.751,-18.055,-18.358,-18.644,
--18.904,-19.141,-19.364,-19.591,-19.834,-20.097,-20.372,-20.645,-20.900,-21.131,-21.339,-21.536,-21.736,-21.950,-22.181,-22.424,
--22.671,-22.911,-23.138,-23.348,-23.545,-23.734,-23.923,-24.117,-24.320,-24.530,-24.742,-24.948,-25.139,-25.311,-25.465,-25.609,
--25.757,-25.917,-26.096,-26.290,-26.490,-26.683,-26.860,-27.019,-27.165,-27.308,-27.456,-27.615,-27.782,-27.954,-28.123,-28.285,
--28.438,-28.580,-28.711,-28.830,-28.936,-29.031,-29.119,-29.207,-29.299,-29.395,-29.493,-29.583,-29.657,-29.711,-29.747,-29.773,
--29.799,-29.832,-29.872,-29.913,-29.947,-29.968,-29.976,-29.981,-29.991,-30.014,-30.051,-30.092,-30.126,-30.142,-30.137,-30.120,
--30.102,-30.096,-30.109,-30.140,-30.178,-30.212,-30.233,-30.236,-30.223,-30.197,-30.160,-30.111,-30.049,-29.976,-29.897,-29.826,
--29.775,-29.753,-29.759,-29.781,-29.797,-29.784,-29.726,-29.615,-29.461,-29.281,-29.099,-28.937,-28.810,-28.720,-28.661,-28.617,
--28.570,-28.509,-28.430,-28.342,-28.259,-28.191,-28.142,-28.100,-28.046,-27.960,-27.839,-27.695,-27.559,-27.464,-27.430,-27.448,
--27.485,-27.495,-27.440,-27.312,-27.134,-26.953,-26.815,-26.746,-26.742,-26.774,-26.807,-26.815,-26.793,-26.757,-26.724,-26.710,
--26.719,-26.755,-26.827,-26.955,-27.159,-27.444,-27.779,-28.104,-28.344,-28.448,-28.415,-28.305,-28.213,-28.221,-28.356,-28.569,
--28.762,-28.840,-28.777,-28.650,-28.622,-28.876,-29.528,-30.558,-31.798,-32.985,-33.851,-34.226,-34.096,-33.604,-32.980,-32.458,
--32.195,-32.226,-32.486,-32.852,-33.210,-33.494,-33.704,-33.882,-34.085,-34.352,-34.688,-35.071,-35.464,-35.831,-36.153,-36.431,
--36.678,-36.910,-37.143,-37.384,-37.629,-37.873,-38.110,-38.339,-38.565,-38.799,-39.049,-39.315,-39.587,-39.844,-40.068,-40.247,
--40.389,-40.518,-40.666,-40.864,-41.122,-41.426,-41.746,-42.043,-42.289,-42.475,-42.614,-42.732,-42.857,-43.004,-43.175,-43.358,
--43.537,-43.696,-43.823,-43.916,-43.975,-44.007,-44.019,-44.020,-44.023,-44.038,-44.068,-44.116,-44.175,-44.239,-44.302,-44.365,
--44.430,-44.499,-44.567,-44.627,-44.665,-44.674,-44.653,-44.613,-44.568,-44.528,-44.495,-44.462,-44.415,-44.348,-44.268,-44.192,
--44.143,-44.134,-44.162,-44.207,-44.240,-44.239,-44.202,-44.144,-44.090,-44.059,-44.054,-44.053,-44.026,-43.945,-43.802,-43.616,
--43.420,-43.250,-43.129,-43.056,-43.016,-42.982,-42.940,-42.886,-42.829,-42.779,-42.740,-42.704,-42.657,-42.588,-42.492,-42.380,
--42.267,-42.166,-42.078,-41.996,-41.906,-41.800,-41.676,-41.546,-41.421,-41.310,-41.211,-41.112,-41.003,-40.877,-40.741,-40.604,
--40.478,-40.364,-40.250,-40.121,-39.962,-39.775,-39.571,-39.376,-39.209,-39.078,-38.976,-38.883,-38.779,-38.652,-38.506,-38.353,
--38.207,-38.072,-37.940,-37.794,-37.622,-37.419,-37.194,-36.966,-36.751,-36.558,-36.380,-36.204,-36.016,-35.809,-35.586,-35.363,
--35.153,-34.965,-34.799,-34.650,-34.508,-34.368,-34.228,-34.091,-33.957,-33.823,-33.685,-33.538,-33.381,-33.221,-33.066,-32.925,
--32.800,-32.688,-32.579,-32.464,-32.336,-32.195,-32.046,-31.893,-31.741,-31.590,-31.437,-31.282,-31.125,-30.970,-30.820,-30.678,
--30.542,-30.412,-30.285,-30.162,-30.049,-29.949,-29.864,-29.791,-29.721,-29.645,-29.559,-29.465,-29.372,-29.294,-29.238,-29.206,
--29.189,-29.174,-29.148,-29.104,-29.045,-28.979,-28.916,-28.864,-28.822,-28.785,-28.748,-28.703,-28.650,-28.592,-28.534,-28.481,
--28.435,-28.394,-28.357,-28.318,-28.275,-28.226,-28.173,-28.117,-28.062,-28.011,-27.967,-27.930,-27.897,-27.865,-27.829,-27.784,
--27.727,-27.660,-27.584,-27.500,-27.409,-27.312,-27.212,-27.112,-27.019,-26.939,-26.877,-26.834,-26.804,-26.778,-26.747,-26.704,
--26.648,-26.583,-26.516,-26.453,-26.401,-26.362,-26.338,-26.329,-26.334,-26.350,-26.370,-26.383,-26.372,-26.326,-26.234,-26.096,
--25.918,-25.712,-25.490,-25.263,-25.035,-24.810,-24.591,-24.379,-24.181,-24.002,-23.845,-23.711,-23.596,-23.497,-23.410,-23.333,
--23.262,-23.197,-23.133,-23.064,-22.988,-22.900,-22.803,-22.696,-22.584,-22.468,-22.349,-22.232,-22.124,-22.037,-21.986,-21.978,
--22.012,-22.074,-22.140,-22.185,-22.190,-22.149,-22.070,-21.972,-21.872,-21.781,-21.699,-21.621,-21.537,-21.443,-21.343,-21.240,
--21.144,-21.057,-20.978,-20.905,-20.838,-20.783,-20.747,-20.738,-20.754,-20.788,-20.821,-20.833,-20.808,-20.744,-20.650,-20.546,
--20.457,-20.408,-20.415,-20.486,-20.619,-20.803,-21.019,-21.243,-21.452,-21.624,-21.746,-21.814,-21.833,-21.811,-21.757,-21.676,
--21.571,-21.445,-21.300,-21.143,-20.978,-20.811,-20.638,-20.456,-20.259,-20.049,-19.836,-19.639,-19.476,-19.362,-19.298,-19.276,
--19.280,-19.297,-19.319,-19.344,-19.372,-19.393,-19.389,-19.334,-19.208,-19.003,-18.733,-18.429,-18.128,-17.860,-17.634,-17.443,
--17.266,-17.088,-16.905,-16.726,-16.571,-16.451,-16.364,-16.295,-16.221,-16.126,-16.007,-15.881,-15.767,-15.684,-15.636,-15.609,
--15.580,-15.526,-15.439,-15.320,-15.184,-15.044,-14.906,-14.766,-14.618,-14.456,-14.289,-14.134,-14.009,-13.925,-13.872,-13.820,
--13.724,-13.547,-13.268,-12.896,-12.473,-12.057,-11.708,-11.471,-11.358,-11.353,-11.411,-11.478,-11.508,-11.472,-11.370,-11.224,
--11.070,-10.942,-10.858,-10.816,-10.791,-10.752,-10.665,-10.514,-10.303,-10.051,-9.789,-9.545,-9.338,-9.172,-9.038,-8.925,
--8.819,-8.710,-8.593,-8.463,-8.316,-8.146,-7.949,-7.723,-7.473,-7.208,-6.939,-6.683,-6.449,-6.247,-6.079,-5.943,
--5.830,-5.728,-5.620,-5.488,-5.320,-5.111,-4.864,-4.593,-4.314,-4.042,-3.785,-3.546,-3.320,-3.100,-2.880,-2.659,
--2.441,-2.230,-2.029,-1.843,-1.672,-1.516,-1.372,-1.234,-1.090,-.928,-.733,-.495,-.211,.110,.453,.799,
-1.134,1.452,1.754,2.049,2.345,2.647,2.953,3.259,3.564,3.866,4.171,4.484,4.810,5.151,5.507,5.878,
-6.266,6.677,7.115,7.583,8.077,8.585,9.095,9.596,10.081,10.545,10.984,11.390,11.751,12.055,12.300,12.495,
-12.669,12.857,13.092,13.391,13.748,14.141,14.535,14.902,15.230,15.524,15.797,16.058,16.307,16.527,16.701,16.815,
-16.875,16.907,16.944,17.018,17.145,17.319,17.520,17.729,17.938,18.156,18.402,18.693,19.025,19.369,19.674,19.883,
-19.957,19.891,19.717,19.496,19.300,19.188,19.188,19.297,19.483,19.703,19.914,20.087,20.213,20.297,20.353,20.397,
-20.444,20.497,20.552,20.594,20.607,20.575,20.492,20.366,20.222,20.094,20.013,19.999,20.045,20.126,20.200,20.230,
-20.196,20.108,19.998,19.907,19.868,19.886,19.943,19.999,20.019,19.984,19.902,19.806,19.736,19.721,19.769,19.865,
-19.983,20.104,20.221,20.342,20.484,20.654,20.841,21.018,21.151,21.213,21.198,21.121,21.010,20.890,20.773,20.655,
-20.525,20.375,20.206,20.035,19.881,19.759,19.671,19.606,19.550,19.496,19.452,19.432,19.450,19.508,19.589,19.670,
-19.730,19.763,19.784,19.818,19.887,19.992,20.110,20.208,20.259,20.258,20.231,20.218,20.260,20.375,20.553,20.764,
-20.972,21.158,21.320,21.468,21.610,21.743,21.850,21.913,21.933,21.931,21.948,22.020,22.163,22.358,22.566,22.743,
-22.872,22.964,23.059,23.194,23.383,23.605,23.815,23.972,24.058,24.090,24.104,24.127,24.157,24.160,24.095,23.938,
-23.707,23.458,23.252,23.118,23.032,22.924,22.723,22.399,21.986,21.560,21.180,20.825,20.368,19.609,18.368,16.599,
-14.460,12.303,10.576,9.670,9.773,10.805,12.453,14.289,15.928,17.144,17.907,18.342,18.627,18.902,19.217,19.544,
-19.820,20.006,20.110,20.179,20.261,20.378,20.512,20.629,20.701,20.735,20.765,20.827,20.936,21.067,21.169,21.198,
-21.144,21.044,20.966,20.967,21.060,21.199,21.300,21.284,21.115,20.826,20.499,20.228,20.075,20.045,20.088,20.131,
-20.118,20.032,19.900,19.771,19.687,19.664,19.687,19.724,19.747,19.744,19.722,19.693,19.665,19.636,19.593,19.526,
-19.432,19.322,19.209,19.102,19.002,18.904,18.804,18.707,18.630,18.595,18.611,18.674,18.757,18.826,18.850,18.822,
-18.756,18.678,18.616,18.585,18.581,18.590,18.596,18.594,18.593,18.603,18.631,18.671,18.710,18.728,18.718,18.687,
-18.652,18.634,18.642,18.669,17.828,17.880,17.916,17.912,17.859,17.767,17.662,17.568,17.503,17.468,17.454,17.448,
-17.438,17.419,17.392,17.364,17.342,17.331,17.338,17.366,17.416,17.482,17.553,17.618,17.665,17.692,17.707,17.728,
-17.772,17.852,17.965,18.099,18.232,18.348,18.440,18.513,18.582,18.660,18.757,18.875,19.012,19.164,19.333,19.521,
-19.731,19.960,20.200,20.440,20.671,20.891,21.104,21.317,21.535,21.753,21.964,22.157,22.330,22.488,22.644,22.809,
-22.987,23.171,23.346,23.498,23.620,23.720,23.817,23.929,24.066,24.223,24.390,24.550,24.696,24.831,24.964,25.104,
-25.250,25.395,25.525,25.633,25.722,25.808,25.903,26.016,26.138,26.251,26.337,26.394,26.436,26.499,26.613,26.796,
-27.034,27.288,27.509,27.657,27.719,27.714,27.678,27.651,27.659,27.710,27.801,27.924,28.079,28.269,28.498,28.753,
-29.008,29.227,29.382,29.464,29.495,29.514,29.563,29.665,29.814,29.978,30.119,30.208,30.247,30.257,30.276,30.330,
-30.428,30.557,30.696,30.828,30.954,31.090,31.256,31.462,31.700,31.946,32.171,32.354,32.493,32.599,32.695,32.794,
-32.898,32.998,33.083,33.148,33.201,33.260,33.341,33.455,33.595,33.749,33.900,34.040,34.171,34.301,34.441,34.595,
-34.760,34.926,35.083,35.228,35.362,35.489,35.610,35.719,35.807,35.866,35.895,35.899,35.892,35.889,35.898,35.916,
-35.937,35.952,35.955,35.953,35.954,35.967,35.997,36.036,36.075,36.098,36.100,36.080,36.043,35.996,35.942,35.878,
-35.798,35.696,35.572,35.432,35.286,35.143,35.007,34.875,34.740,34.596,34.446,34.301,34.177,34.091,34.050,34.052,
-34.083,34.125,34.159,34.177,34.176,34.163,34.147,34.134,34.127,34.128,34.134,34.143,34.150,34.149,34.130,34.087,
-34.013,33.913,33.800,33.696,33.620,33.583,33.580,33.598,33.614,33.614,33.595,33.567,33.548,33.549,33.570,33.596,
-33.604,33.577,33.512,33.424,33.334,33.261,33.208,33.164,33.106,33.016,32.892,32.748,32.606,32.483,32.379,32.275,
-32.145,31.971,31.762,31.554,31.394,31.323,31.356,31.471,31.622,31.756,31.841,31.872,31.873,31.878,31.912,31.977,
-32.050,32.099,32.095,32.028,31.904,31.738,31.543,31.323,31.076,30.801,30.509,30.225,29.980,29.797,29.679,29.603,
-29.534,29.439,29.305,29.148,29.010,28.936,28.959,29.084,29.285,29.518,29.738,29.914,30.037,30.114,30.160,30.184,
-30.188,30.166,30.112,30.027,29.919,29.798,29.673,29.543,29.398,29.226,29.018,28.774,28.506,28.227,27.949,27.674,
-27.395,27.098,26.774,26.424,26.064,25.716,25.406,25.149,24.948,24.787,24.641,24.478,24.267,23.984,23.609,23.133,
-22.552,21.870,21.103,20.271,19.408,18.546,17.720,16.957,16.276,15.685,15.179,14.748,14.378,14.051,13.757,13.487,
-13.239,13.013,12.810,12.627,12.455,12.278,12.082,11.851,11.582,11.278,10.953,10.625,10.309,10.014,9.742,9.488,
-9.244,9.005,8.764,8.517,8.259,7.981,7.678,7.345,6.990,6.624,6.266,5.933,5.634,5.367,5.121,4.880,
-4.629,4.356,4.057,3.732,3.382,3.011,2.620,2.217,1.812,1.418,1.044,.696,.370,.059,-.249,-.558,
--.864,-1.158,-1.430,-1.678,-1.910,-2.144,-2.397,-2.680,-2.994,-3.325,-3.657,-3.979,-4.286,-4.589,-4.900,-5.229,
--5.574,-5.923,-6.255,-6.555,-6.813,-7.033,-7.228,-7.413,-7.597,-7.786,-7.979,-8.178,-8.383,-8.600,-8.838,-9.101,
--9.388,-9.695,-10.013,-10.336,-10.659,-10.980,-11.298,-11.609,-11.911,-12.199,-12.474,-12.739,-13.001,-13.270,-13.549,-13.841,
--14.139,-14.439,-14.736,-15.030,-15.323,-15.617,-15.911,-16.203,-16.486,-16.759,-17.024,-17.288,-17.560,-17.847,-18.146,-18.449,
--18.745,-19.021,-19.276,-19.514,-19.747,-19.987,-20.242,-20.509,-20.780,-21.044,-21.292,-21.522,-21.737,-21.949,-22.165,-22.393,
--22.634,-22.883,-23.132,-23.371,-23.594,-23.798,-23.986,-24.165,-24.347,-24.540,-24.748,-24.970,-25.194,-25.406,-25.597,-25.761,
--25.905,-26.040,-26.184,-26.348,-26.534,-26.735,-26.939,-27.131,-27.306,-27.463,-27.610,-27.757,-27.911,-28.075,-28.245,-28.416,
--28.581,-28.737,-28.880,-29.012,-29.132,-29.243,-29.347,-29.446,-29.544,-29.645,-29.749,-29.854,-29.957,-30.051,-30.135,-30.207,
--30.271,-30.329,-30.384,-30.431,-30.465,-30.482,-30.482,-30.473,-30.466,-30.473,-30.503,-30.553,-30.612,-30.665,-30.698,-30.704,
--30.688,-30.661,-30.638,-30.629,-30.641,-30.669,-30.706,-30.743,-30.772,-30.789,-30.791,-30.776,-30.744,-30.693,-30.627,-30.554,
--30.484,-30.427,-30.390,-30.373,-30.368,-30.362,-30.340,-30.290,-30.203,-30.083,-29.936,-29.778,-29.625,-29.491,-29.384,-29.302,
--29.236,-29.172,-29.098,-29.012,-28.920,-28.836,-28.775,-28.739,-28.716,-28.684,-28.620,-28.510,-28.366,-28.216,-28.095,-28.031,
--28.026,-28.055,-28.078,-28.055,-27.966,-27.822,-27.653,-27.498,-27.383,-27.314,-27.278,-27.254,-27.227,-27.197,-27.172,-27.159,
--27.160,-27.169,-27.184,-27.216,-27.293,-27.451,-27.711,-28.061,-28.442,-28.771,-28.969,-29.003,-28.904,-28.759,-28.669,-28.702,
--28.857,-29.065,-29.222,-29.254,-29.161,-29.041,-29.051,-29.345,-30.001,-30.973,-32.100,-33.159,-33.940,-34.322,-34.311,-34.018,
--33.619,-33.280,-33.112,-33.144,-33.336,-33.618,-33.923,-34.212,-34.481,-34.748,-35.034,-35.346,-35.678,-36.010,-36.321,-36.602,
--36.857,-37.099,-37.345,-37.606,-37.882,-38.163,-38.434,-38.682,-38.905,-39.111,-39.316,-39.531,-39.762,-40.001,-40.232,-40.438,
--40.614,-40.765,-40.912,-41.080,-41.286,-41.534,-41.809,-42.085,-42.339,-42.556,-42.739,-42.901,-43.063,-43.240,-43.436,-43.645,
--43.854,-44.047,-44.215,-44.352,-44.457,-44.531,-44.578,-44.604,-44.617,-44.628,-44.648,-44.685,-44.737,-44.802,-44.872,-44.942,
--45.010,-45.077,-45.145,-45.209,-45.261,-45.290,-45.290,-45.260,-45.211,-45.155,-45.105,-45.062,-45.019,-44.966,-44.894,-44.809,
--44.723,-44.655,-44.617,-44.606,-44.608,-44.602,-44.572,-44.518,-44.457,-44.413,-44.404,-44.431,-44.474,-44.499,-44.474,-44.383,
--44.231,-44.041,-43.844,-43.664,-43.514,-43.392,-43.291,-43.203,-43.128,-43.066,-43.020,-42.984,-42.949,-42.900,-42.833,-42.750,
--42.662,-42.582,-42.516,-42.458,-42.394,-42.309,-42.194,-42.054,-41.904,-41.762,-41.641,-41.543,-41.461,-41.379,-41.290,-41.191,
--41.085,-40.976,-40.863,-40.736,-40.584,-40.401,-40.193,-39.977,-39.778,-39.615,-39.493,-39.403,-39.322,-39.228,-39.109,-38.968,
--38.815,-38.667,-38.529,-38.397,-38.258,-38.098,-37.911,-37.703,-37.487,-37.279,-37.087,-36.911,-36.740,-36.564,-36.374,-36.171,
--35.961,-35.753,-35.553,-35.365,-35.186,-35.016,-34.855,-34.706,-34.569,-34.443,-34.320,-34.191,-34.047,-33.886,-33.715,-33.542,
--33.379,-33.232,-33.102,-32.982,-32.863,-32.740,-32.611,-32.476,-32.341,-32.206,-32.073,-31.937,-31.799,-31.659,-31.518,-31.378,
--31.241,-31.105,-30.967,-30.827,-30.687,-30.555,-30.437,-30.338,-30.256,-30.186,-30.119,-30.050,-29.979,-29.911,-29.855,-29.814,
--29.789,-29.769,-29.744,-29.704,-29.646,-29.577,-29.508,-29.450,-29.410,-29.385,-29.366,-29.341,-29.300,-29.241,-29.167,-29.086,
--29.007,-28.938,-28.878,-28.826,-28.777,-28.726,-28.671,-28.612,-28.552,-28.496,-28.447,-28.410,-28.384,-28.365,-28.349,-28.329,
--28.301,-28.263,-28.215,-28.161,-28.100,-28.032,-27.956,-27.867,-27.766,-27.656,-27.546,-27.443,-27.357,-27.290,-27.238,-27.190,
--27.137,-27.068,-26.981,-26.880,-26.773,-26.673,-26.591,-26.533,-26.503,-26.500,-26.520,-26.554,-26.594,-26.627,-26.643,-26.631,
--26.582,-26.492,-26.363,-26.202,-26.019,-25.825,-25.631,-25.443,-25.265,-25.094,-24.928,-24.764,-24.600,-24.439,-24.286,-24.146,
--24.021,-23.910,-23.808,-23.708,-23.607,-23.504,-23.403,-23.309,-23.225,-23.149,-23.073,-22.989,-22.894,-22.790,-22.690,-22.611,
--22.566,-22.558,-22.578,-22.610,-22.632,-22.629,-22.597,-22.543,-22.476,-22.407,-22.339,-22.270,-22.193,-22.105,-22.005,-21.901,
--21.797,-21.698,-21.602,-21.505,-21.401,-21.294,-21.192,-21.109,-21.060,-21.050,-21.075,-21.119,-21.162,-21.187,-21.184,-21.151,
--21.099,-21.043,-21.003,-20.994,-21.029,-21.113,-21.241,-21.399,-21.568,-21.727,-21.861,-21.965,-22.044,-22.111,-22.175,-22.239,
--22.294,-22.325,-22.312,-22.246,-22.129,-21.972,-21.792,-21.601,-21.402,-21.192,-20.963,-20.712,-20.448,-20.185,-19.943,-19.738,
--19.578,-19.465,-19.397,-19.370,-19.382,-19.425,-19.484,-19.536,-19.552,-19.507,-19.389,-19.206,-18.981,-18.745,-18.521,-18.319,
--18.127,-17.930,-17.712,-17.474,-17.233,-17.014,-16.839,-16.713,-16.624,-16.548,-16.462,-16.352,-16.226,-16.101,-15.997,-15.925,
--15.880,-15.845,-15.800,-15.730,-15.633,-15.514,-15.383,-15.248,-15.106,-14.953,-14.786,-14.608,-14.434,-14.279,-14.154,-14.054,
--13.961,-13.845,-13.679,-13.454,-13.180,-12.890,-12.628,-12.432,-12.322,-12.293,-12.315,-12.346,-12.346,-12.285,-12.156,-11.972,
--11.761,-11.553,-11.376,-11.240,-11.143,-11.067,-10.991,-10.891,-10.756,-10.581,-10.376,-10.156,-9.937,-9.734,-9.554,-9.400,
--9.268,-9.153,-9.046,-8.939,-8.824,-8.690,-8.529,-8.333,-8.100,-7.833,-7.537,-7.228,-6.921,-6.633,-6.379,-6.169,
--6.004,-5.875,-5.770,-5.667,-5.550,-5.405,-5.232,-5.035,-4.827,-4.619,-4.417,-4.219,-4.019,-3.807,-3.575,-3.326,
--3.065,-2.808,-2.567,-2.350,-2.162,-1.996,-1.845,-1.696,-1.537,-1.357,-1.149,-.909,-.636,-.337,-.022,.296,
-.608,.908,1.197,1.480,1.764,2.055,2.355,2.664,2.981,3.306,3.641,3.990,4.352,4.724,5.100,5.472,
-5.838,6.200,6.566,6.947,7.355,7.793,8.261,8.753,9.260,9.774,10.284,10.778,11.237,11.644,11.986,12.260,
-12.480,12.678,12.887,13.140,13.451,13.811,14.197,14.577,14.927,15.237,15.516,15.774,16.024,16.262,16.479,16.658,
-16.791,16.885,16.960,17.042,17.151,17.293,17.458,17.631,17.798,17.961,18.135,18.342,18.596,18.887,19.185,19.439,
-19.604,19.650,19.579,19.424,19.239,19.081,18.993,18.996,19.090,19.257,19.474,19.718,19.967,20.202,20.405,20.564,
-20.668,20.718,20.722,20.696,20.654,20.606,20.556,20.502,20.447,20.397,20.364,20.358,20.384,20.431,20.479,20.500,
-20.477,20.410,20.320,20.241,20.201,20.210,20.253,20.294,20.294,20.233,20.119,19.990,19.895,19.872,19.934,20.060,
-20.206,20.327,20.400,20.425,20.431,20.450,20.506,20.600,20.713,20.820,20.899,20.945,20.967,20.973,20.961,20.918,
-20.824,20.665,20.450,20.209,19.986,19.817,19.718,19.672,19.643,19.596,19.514,19.410,19.319,19.280,19.317,19.424,
-19.572,19.726,19.860,19.973,20.077,20.189,20.311,20.428,20.511,20.536,20.504,20.441,20.392,20.398,20.479,20.625,
-20.806,20.987,21.147,21.290,21.428,21.575,21.727,21.862,21.953,21.988,21.980,21.968,22.000,22.110,22.297,22.530,
-22.759,22.943,23.068,23.151,23.226,23.324,23.456,23.612,23.766,23.897,23.995,24.063,24.102,24.107,24.063,23.956,
-23.790,23.591,23.402,23.260,23.171,23.102,22.987,22.765,22.404,21.916,21.343,20.711,19.996,19.111,17.941,16.418,
-14.587,12.647,10.920,9.757,9.420,9.975,11.273,12.990,14.749,16.242,17.316,17.988,18.391,18.689,18.997,19.349,
-19.713,20.034,20.277,20.448,20.577,20.696,20.809,20.897,20.934,20.915,20.867,20.839,20.876,20.985,21.129,21.241,
-21.264,21.184,21.040,20.908,20.861,20.930,21.082,21.241,21.320,21.270,21.098,20.863,20.643,20.494,20.429,20.415,
-20.396,20.333,20.217,20.074,19.951,19.880,19.869,19.896,19.922,19.915,19.861,19.770,19.664,19.561,19.469,19.381,
-19.287,19.177,19.052,18.917,18.780,18.644,18.511,18.380,18.258,18.154,18.082,18.046,18.040,18.048,18.050,18.033,
-18.000,17.965,17.948,17.961,17.998,18.039,18.061,18.049,18.007,17.954,17.913,17.901,17.915,17.939,17.948,17.926,
-17.879,17.824,17.789,17.791,17.828,16.979,17.069,17.144,17.171,17.133,17.038,16.912,16.790,16.699,16.655,16.655,
-16.686,16.733,16.785,16.837,16.891,16.951,17.021,17.102,17.193,17.289,17.384,17.471,17.542,17.595,17.632,17.664,
-17.704,17.765,17.855,17.972,18.107,18.247,18.380,18.502,18.616,18.727,18.846,18.975,19.116,19.267,19.428,19.601,
-19.791,20.000,20.226,20.464,20.704,20.941,21.173,21.401,21.632,21.864,22.092,22.303,22.486,22.636,22.756,22.862,
-22.971,23.098,23.247,23.410,23.575,23.731,23.872,24.002,24.130,24.262,24.399,24.538,24.669,24.787,24.890,24.985,
-25.078,25.177,25.286,25.404,25.530,25.657,25.781,25.894,25.990,26.061,26.108,26.142,26.183,26.261,26.395,26.593,
-26.835,27.083,27.290,27.419,27.457,27.422,27.354,27.302,27.300,27.365,27.490,27.659,27.852,28.058,28.273,28.492,
-28.704,28.891,29.035,29.129,29.182,29.220,29.276,29.372,29.507,29.658,29.789,29.869,29.887,29.859,29.819,29.804,
-29.835,29.915,30.028,30.154,30.285,30.426,30.593,30.799,31.043,31.309,31.568,31.793,31.972,32.112,32.231,32.346,
-32.467,32.585,32.689,32.766,32.818,32.862,32.920,33.009,33.133,33.279,33.426,33.556,33.665,33.767,33.881,34.021,
-34.189,34.372,34.550,34.705,34.833,34.943,35.052,35.173,35.305,35.436,35.546,35.618,35.647,35.644,35.627,35.614,
-35.613,35.623,35.636,35.643,35.643,35.641,35.645,35.659,35.682,35.701,35.705,35.687,35.648,35.597,35.546,35.502,
-35.460,35.408,35.330,35.215,35.062,34.881,34.689,34.503,34.334,34.186,34.057,33.943,33.846,33.772,33.726,33.711,
-33.724,33.757,33.795,33.828,33.850,33.861,33.866,33.870,33.876,33.885,33.895,33.904,33.909,33.907,33.893,33.857,
-33.794,33.701,33.585,33.463,33.358,33.288,33.261,33.269,33.294,33.312,33.310,33.289,33.264,33.255,33.275,33.319,
-33.369,33.397,33.385,33.330,33.248,33.164,33.100,33.058,33.023,32.968,32.871,32.725,32.544,32.355,32.183,32.037,
-31.906,31.769,31.608,31.426,31.250,31.119,31.071,31.117,31.240,31.398,31.540,31.636,31.677,31.684,31.686,31.705,
-31.744,31.785,31.799,31.765,31.675,31.541,31.380,31.205,31.020,30.817,30.587,30.335,30.079,29.846,29.661,29.532,
-29.447,29.373,29.280,29.155,29.008,28.876,28.800,28.811,28.913,29.077,29.261,29.419,29.522,29.562,29.552,29.513,
-29.462,29.408,29.347,29.276,29.196,29.114,29.036,28.965,28.893,28.802,28.671,28.487,28.251,27.979,27.696,27.423,
-27.166,26.918,26.659,26.371,26.051,25.711,25.381,25.093,24.870,24.717,24.620,24.548,24.467,24.347,24.165,23.906,
-23.557,23.106,22.538,21.846,21.032,20.117,19.140,18.155,17.216,16.368,15.636,15.023,14.515,14.083,13.702,13.353,
-13.030,12.736,12.478,12.263,12.088,11.940,11.801,11.648,11.463,11.236,10.966,10.663,10.338,10.007,9.682,9.372,
-9.083,8.819,8.577,8.351,8.130,7.898,7.639,7.341,7.004,6.638,6.262,5.898,5.562,5.263,4.993,4.741,
-4.488,4.224,3.940,3.636,3.312,2.971,2.613,2.239,1.854,1.467,1.089,.733,.401,.089,-.214,-.519,
--.833,-1.153,-1.468,-1.765,-2.035,-2.278,-2.507,-2.738,-2.987,-3.261,-3.557,-3.867,-4.183,-4.502,-4.827,-5.164,
--5.512,-5.865,-6.207,-6.520,-6.787,-7.005,-7.179,-7.327,-7.468,-7.621,-7.794,-7.992,-8.211,-8.450,-8.707,-8.981,
--9.271,-9.572,-9.880,-10.188,-10.491,-10.789,-11.083,-11.376,-11.671,-11.969,-12.269,-12.570,-12.871,-13.173,-13.475,-13.777,
--14.076,-14.368,-14.652,-14.929,-15.202,-15.476,-15.754,-16.038,-16.322,-16.604,-16.880,-17.150,-17.421,-17.700,-17.990,-18.293,
--18.601,-18.904,-19.192,-19.461,-19.712,-19.954,-20.195,-20.445,-20.704,-20.971,-21.238,-21.497,-21.742,-21.971,-22.188,-22.398,
--22.609,-22.826,-23.054,-23.291,-23.534,-23.774,-24.005,-24.220,-24.421,-24.613,-24.804,-25.002,-25.210,-25.423,-25.632,-25.826,
--25.998,-26.151,-26.293,-26.439,-26.599,-26.779,-26.976,-27.178,-27.372,-27.551,-27.712,-27.864,-28.015,-28.173,-28.343,-28.520,
--28.699,-28.872,-29.032,-29.178,-29.312,-29.435,-29.551,-29.663,-29.771,-29.878,-29.984,-30.091,-30.201,-30.312,-30.425,-30.535,
--30.641,-30.739,-30.826,-30.897,-30.950,-30.983,-30.997,-30.997,-30.992,-30.992,-31.006,-31.037,-31.082,-31.132,-31.177,-31.207,
--31.219,-31.215,-31.202,-31.190,-31.186,-31.194,-31.215,-31.245,-31.280,-31.312,-31.336,-31.345,-31.337,-31.311,-31.270,-31.222,
--31.174,-31.133,-31.101,-31.076,-31.051,-31.019,-30.971,-30.905,-30.821,-30.719,-30.604,-30.479,-30.350,-30.222,-30.100,-29.991,
--29.895,-29.809,-29.725,-29.638,-29.547,-29.458,-29.383,-29.333,-29.311,-29.306,-29.295,-29.251,-29.161,-29.027,-28.873,-28.735,
--28.643,-28.610,-28.621,-28.644,-28.644,-28.594,-28.493,-28.358,-28.214,-28.083,-27.974,-27.882,-27.797,-27.717,-27.646,-27.595,
--27.572,-27.572,-27.584,-27.597,-27.614,-27.660,-27.773,-27.987,-28.305,-28.687,-29.055,-29.321,-29.426,-29.369,-29.212,-29.057,
--28.996,-29.074,-29.264,-29.480,-29.625,-29.639,-29.544,-29.437,-29.459,-29.734,-30.316,-31.157,-32.124,-33.041,-33.753,-34.174,
--34.305,-34.228,-34.059,-33.913,-33.868,-33.949,-34.142,-34.410,-34.714,-35.030,-35.346,-35.658,-35.964,-36.260,-36.536,-36.788,
--37.017,-37.233,-37.452,-37.689,-37.954,-38.243,-38.543,-38.837,-39.112,-39.362,-39.589,-39.803,-40.012,-40.222,-40.432,-40.635,
--40.828,-41.011,-41.192,-41.380,-41.585,-41.805,-42.033,-42.256,-42.463,-42.650,-42.825,-43.002,-43.194,-43.411,-43.648,-43.892,
--44.125,-44.334,-44.510,-44.656,-44.776,-44.877,-44.961,-45.029,-45.082,-45.125,-45.163,-45.208,-45.262,-45.328,-45.398,-45.466,
--45.525,-45.576,-45.621,-45.665,-45.708,-45.744,-45.764,-45.758,-45.728,-45.680,-45.628,-45.583,-45.549,-45.519,-45.483,-45.429,
--45.354,-45.265,-45.178,-45.105,-45.051,-45.010,-44.970,-44.921,-44.862,-44.804,-44.765,-44.757,-44.784,-44.831,-44.871,-44.874,
--44.821,-44.708,-44.547,-44.358,-44.163,-43.977,-43.808,-43.660,-43.535,-43.434,-43.360,-43.308,-43.271,-43.236,-43.192,-43.132,
--43.060,-42.986,-42.920,-42.867,-42.822,-42.773,-42.704,-42.607,-42.484,-42.345,-42.205,-42.075,-41.959,-41.855,-41.755,-41.653,
--41.550,-41.449,-41.349,-41.246,-41.132,-40.993,-40.825,-40.631,-40.426,-40.231,-40.063,-39.929,-39.822,-39.725,-39.621,-39.499,
--39.359,-39.212,-39.068,-38.933,-38.805,-38.674,-38.527,-38.358,-38.167,-37.961,-37.753,-37.550,-37.358,-37.175,-36.998,-36.823,
--36.650,-36.479,-36.308,-36.137,-35.961,-35.780,-35.596,-35.416,-35.248,-35.097,-34.963,-34.838,-34.712,-34.574,-34.418,-34.248,
--34.071,-33.897,-33.733,-33.580,-33.436,-33.295,-33.154,-33.015,-32.878,-32.747,-32.624,-32.506,-32.389,-32.271,-32.151,-32.029,
--31.907,-31.785,-31.663,-31.536,-31.405,-31.271,-31.139,-31.015,-30.905,-30.809,-30.725,-30.649,-30.579,-30.513,-30.457,-30.415,
--30.388,-30.372,-30.356,-30.330,-30.284,-30.219,-30.141,-30.065,-30.002,-29.961,-29.940,-29.930,-29.918,-29.892,-29.846,-29.780,
--29.701,-29.615,-29.529,-29.448,-29.372,-29.301,-29.232,-29.164,-29.099,-29.036,-28.979,-28.931,-28.892,-28.862,-28.840,-28.820,
--28.800,-28.776,-28.747,-28.715,-28.682,-28.648,-28.611,-28.565,-28.503,-28.420,-28.316,-28.197,-28.078,-27.969,-27.881,-27.815,
--27.763,-27.712,-27.650,-27.570,-27.470,-27.357,-27.243,-27.135,-27.040,-26.957,-26.883,-26.816,-26.757,-26.709,-26.675,-26.658,
--26.654,-26.652,-26.640,-26.606,-26.546,-26.462,-26.361,-26.252,-26.144,-26.036,-25.923,-25.798,-25.654,-25.493,-25.324,-25.159,
--25.010,-24.881,-24.766,-24.654,-24.531,-24.391,-24.236,-24.076,-23.926,-23.797,-23.692,-23.605,-23.524,-23.442,-23.356,-23.273,
--23.205,-23.162,-23.145,-23.148,-23.155,-23.153,-23.130,-23.087,-23.031,-22.970,-22.911,-22.854,-22.795,-22.727,-22.648,-22.558,
--22.462,-22.365,-22.269,-22.169,-22.061,-21.942,-21.817,-21.696,-21.595,-21.524,-21.492,-21.494,-21.519,-21.553,-21.584,-21.603,
--21.608,-21.603,-21.593,-21.588,-21.596,-21.627,-21.684,-21.769,-21.872,-21.980,-22.078,-22.156,-22.214,-22.260,-22.311,-22.379,
--22.464,-22.555,-22.629,-22.665,-22.647,-22.579,-22.474,-22.353,-22.231,-22.111,-21.981,-21.826,-21.628,-21.384,-21.103,-20.805,
--20.511,-20.239,-20.000,-19.801,-19.644,-19.531,-19.459,-19.425,-19.414,-19.410,-19.395,-19.359,-19.301,-19.232,-19.163,-19.099,
--19.030,-18.936,-18.793,-18.586,-18.319,-18.018,-17.721,-17.461,-17.260,-17.113,-16.999,-16.892,-16.770,-16.630,-16.483,-16.346,
--16.234,-16.151,-16.086,-16.025,-15.953,-15.866,-15.766,-15.660,-15.552,-15.441,-15.318,-15.176,-15.013,-14.833,-14.648,-14.468,
--14.297,-14.130,-13.958,-13.775,-13.581,-13.392,-13.231,-13.121,-13.071,-13.075,-13.106,-13.130,-13.110,-13.024,-12.871,-12.664,
--12.430,-12.195,-11.979,-11.791,-11.627,-11.480,-11.339,-11.196,-11.045,-10.883,-10.709,-10.522,-10.325,-10.119,-9.912,-9.712,
--9.527,-9.365,-9.228,-9.112,-9.009,-8.906,-8.792,-8.655,-8.488,-8.286,-8.049,-7.783,-7.496,-7.200,-6.912,-6.645,
--6.412,-6.217,-6.058,-5.922,-5.794,-5.660,-5.514,-5.355,-5.191,-5.032,-4.884,-4.744,-4.602,-4.442,-4.251,-4.022,
--3.763,-3.486,-3.212,-2.958,-2.734,-2.539,-2.364,-2.193,-2.011,-1.806,-1.575,-1.316,-1.035,-.740,-.438,-.136,
-.163,.457,.747,1.033,1.318,1.601,1.881,2.160,2.443,2.738,3.056,3.405,3.787,4.195,4.612,5.021,
-5.406,5.763,6.100,6.435,6.787,7.171,7.591,8.042,8.511,8.987,9.464,9.937,10.407,10.867,11.307,11.715,
-12.082,12.406,12.699,12.980,13.266,13.569,13.888,14.210,14.521,14.811,15.080,15.340,15.605,15.881,16.163,16.434,
-16.674,16.865,17.004,17.104,17.184,17.266,17.362,17.476,17.603,17.736,17.875,18.024,18.191,18.377,18.574,18.767,
-18.935,19.064,19.152,19.208,19.250,19.292,19.341,19.392,19.440,19.481,19.523,19.584,19.683,19.832,20.023,20.231,
-20.420,20.555,20.619,20.617,20.575,20.523,20.491,20.490,20.519,20.563,20.611,20.654,20.691,20.725,20.754,20.775,
-20.782,20.774,20.756,20.743,20.746,20.770,20.800,20.809,20.766,20.654,20.485,20.298,20.147,20.082,20.120,20.242,
-20.394,20.512,20.548,20.489,20.360,20.207,20.080,20.008,19.992,20.018,20.064,20.125,20.207,20.322,20.470,20.625,
-20.742,20.770,20.677,20.472,20.201,19.934,19.734,19.628,19.599,19.598,19.566,19.473,19.327,19.172,19.066,19.054,
-19.148,19.326,19.544,19.765,19.965,20.142,20.306,20.457,20.584,20.667,20.688,20.649,20.574,20.507,20.487,20.534,
-20.642,20.783,20.926,21.056,21.176,21.307,21.468,21.657,21.852,22.018,22.126,22.173,22.186,22.208,22.282,22.427,
-22.629,22.851,23.050,23.198,23.293,23.355,23.413,23.488,23.587,23.698,23.807,23.896,23.955,23.979,23.961,23.893,
-23.773,23.607,23.413,23.220,23.047,22.895,22.737,22.530,22.222,21.779,21.189,20.451,19.561,18.496,17.220,15.715,
-14.023,12.279,10.707,9.580,9.132,9.481,10.567,12.168,13.960,15.624,16.938,17.829,18.364,18.688,18.952,19.249,
-19.594,19.952,20.271,20.523,20.710,20.855,20.975,21.065,21.104,21.075,20.986,20.876,20.800,20.802,20.884,21.003,
-21.089,21.079,20.953,20.748,20.537,20.398,20.371,20.441,20.550,20.622,20.606,20.498,20.334,20.170,20.047,19.975,
-19.928,19.868,19.769,19.630,19.482,19.363,19.301,19.295,19.320,19.336,19.313,19.238,19.124,18.995,18.874,18.769,
-18.677,18.584,18.478,18.356,18.220,18.082,17.948,17.824,17.712,17.613,17.530,17.463,17.410,17.361,17.309,17.246,
-17.177,17.118,17.091,17.111,17.179,17.275,17.365,17.415,17.405,17.341,17.246,17.155,17.092,17.063,17.054,17.042,
-17.010,16.960,16.911,16.888,16.912,16.979,16.181,16.305,16.423,16.499,16.509,16.453,16.355,16.247,16.160,16.111,
-16.105,16.135,16.188,16.258,16.341,16.439,16.552,16.679,16.814,16.946,17.069,17.176,17.266,17.343,17.414,17.486,
-17.568,17.665,17.781,17.914,18.061,18.215,18.369,18.519,18.665,18.807,18.950,19.095,19.245,19.399,19.557,19.722,
-19.900,20.096,20.313,20.549,20.797,21.048,21.294,21.532,21.760,21.983,22.198,22.402,22.586,22.743,22.871,22.975,
-23.068,23.169,23.290,23.438,23.607,23.786,23.961,24.124,24.272,24.409,24.540,24.667,24.787,24.896,24.987,25.059,
-25.116,25.168,25.226,25.300,25.395,25.506,25.625,25.735,25.825,25.885,25.919,25.942,25.977,26.049,26.178,26.363,
-26.584,26.805,26.982,27.082,27.097,27.044,26.965,26.909,26.916,27.004,27.167,27.380,27.613,27.845,28.062,28.261,
-28.443,28.603,28.735,28.835,28.907,28.966,29.033,29.128,29.254,29.395,29.522,29.602,29.618,29.575,29.501,29.432,
-29.401,29.423,29.492,29.593,29.710,29.842,29.997,30.188,30.421,30.686,30.958,31.210,31.420,31.587,31.724,31.854,
-31.990,32.135,32.275,32.393,32.479,32.538,32.591,32.659,32.756,32.879,33.009,33.124,33.212,33.279,33.349,33.450,
-33.598,33.787,33.993,34.185,34.339,34.451,34.540,34.632,34.750,34.898,35.058,35.200,35.299,35.342,35.338,35.311,
-35.288,35.283,35.297,35.319,35.336,35.339,35.330,35.319,35.315,35.319,35.325,35.319,35.294,35.248,35.190,35.133,
-35.087,35.050,35.008,34.940,34.828,34.666,34.464,34.242,34.027,33.840,33.693,33.587,33.516,33.469,33.442,33.429,
-33.430,33.442,33.460,33.480,33.498,33.515,33.531,33.549,33.570,33.591,33.608,33.619,33.620,33.614,33.600,33.577,
-33.539,33.479,33.392,33.283,33.165,33.059,32.983,32.948,32.949,32.972,32.995,33.006,33.002,32.997,33.005,33.038,
-33.092,33.148,33.185,33.182,33.140,33.071,33.000,32.943,32.904,32.866,32.801,32.686,32.513,32.297,32.068,31.856,
-31.680,31.539,31.417,31.297,31.173,31.056,30.970,30.940,30.974,31.061,31.171,31.271,31.339,31.374,31.392,31.413,
-31.451,31.501,31.542,31.549,31.503,31.402,31.261,31.101,30.939,30.777,30.607,30.418,30.208,29.989,29.783,29.611,
-29.481,29.382,29.289,29.172,29.019,28.840,28.670,28.550,28.512,28.562,28.677,28.814,28.926,28.980,28.965,28.895,
-28.793,28.686,28.590,28.516,28.463,28.431,28.418,28.419,28.422,28.409,28.357,28.243,28.058,27.810,27.522,27.224,
-26.939,26.676,26.431,26.186,25.928,25.656,25.384,25.138,24.941,24.803,24.717,24.656,24.589,24.488,24.342,24.151,
-23.922,23.652,23.326,22.914,22.376,21.686,20.839,19.862,18.811,17.754,16.760,15.875,15.118,14.482,13.943,13.472,
-13.046,12.658,12.308,12.005,11.754,11.551,11.384,11.233,11.078,10.900,10.692,10.453,10.188,9.906,9.615,9.320,
-9.028,8.743,8.466,8.200,7.941,7.681,7.411,7.121,6.807,6.472,6.127,5.786,5.464,5.168,4.894,4.632,
-4.369,4.094,3.802,3.495,3.179,2.858,2.535,2.204,1.861,1.504,1.138,.771,.416,.080,-.239,-.549,
--.860,-1.182,-1.514,-1.847,-2.165,-2.455,-2.710,-2.934,-3.138,-3.341,-3.559,-3.802,-4.076,-4.381,-4.714,-5.070,
--5.442,-5.818,-6.182,-6.514,-6.798,-7.023,-7.192,-7.317,-7.421,-7.526,-7.654,-7.816,-8.018,-8.257,-8.527,-8.821,
--9.130,-9.447,-9.762,-10.069,-10.363,-10.643,-10.914,-11.180,-11.451,-11.731,-12.023,-12.326,-12.638,-12.953,-13.270,-13.585,
--13.898,-14.205,-14.506,-14.800,-15.085,-15.364,-15.639,-15.910,-16.181,-16.452,-16.725,-17.000,-17.281,-17.571,-17.872,-18.183,
--18.499,-18.812,-19.116,-19.404,-19.676,-19.933,-20.182,-20.430,-20.680,-20.936,-21.196,-21.457,-21.713,-21.962,-22.198,-22.420,
--22.629,-22.830,-23.030,-23.238,-23.459,-23.696,-23.946,-24.199,-24.445,-24.675,-24.887,-25.082,-25.270,-25.456,-25.645,-25.834,
--26.020,-26.196,-26.361,-26.518,-26.676,-26.844,-27.023,-27.213,-27.403,-27.584,-27.749,-27.898,-28.037,-28.179,-28.334,-28.509,
--28.701,-28.902,-29.103,-29.295,-29.471,-29.630,-29.774,-29.906,-30.028,-30.141,-30.246,-30.345,-30.443,-30.543,-30.650,-30.766,
--30.889,-31.014,-31.133,-31.238,-31.323,-31.387,-31.433,-31.466,-31.495,-31.525,-31.560,-31.598,-31.636,-31.668,-31.692,-31.706,
--31.713,-31.716,-31.720,-31.730,-31.745,-31.764,-31.787,-31.812,-31.837,-31.860,-31.877,-31.884,-31.876,-31.851,-31.813,-31.771,
--31.735,-31.716,-31.717,-31.732,-31.745,-31.741,-31.705,-31.633,-31.529,-31.405,-31.274,-31.147,-31.026,-30.912,-30.802,-30.695,
--30.591,-30.493,-30.400,-30.309,-30.219,-30.127,-30.038,-29.961,-29.906,-29.878,-29.870,-29.863,-29.833,-29.764,-29.652,-29.512,
--29.376,-29.271,-29.217,-29.209,-29.225,-29.235,-29.213,-29.147,-29.046,-28.923,-28.794,-28.667,-28.541,-28.412,-28.283,-28.164,
--28.071,-28.017,-28.002,-28.015,-28.039,-28.065,-28.106,-28.189,-28.351,-28.610,-28.947,-29.306,-29.608,-29.782,-29.798,-29.683,
--29.515,-29.388,-29.376,-29.496,-29.703,-29.913,-30.040,-30.045,-29.954,-29.854,-29.861,-30.071,-30.526,-31.192,-31.974,-32.752,
--33.415,-33.901,-34.201,-34.355,-34.428,-34.487,-34.577,-34.723,-34.924,-35.169,-35.443,-35.734,-36.030,-36.321,-36.597,-36.851,
--37.078,-37.284,-37.478,-37.679,-37.901,-38.156,-38.446,-38.761,-39.087,-39.409,-39.713,-39.989,-40.233,-40.447,-40.634,-40.802,
--40.962,-41.125,-41.307,-41.515,-41.749,-42.002,-42.254,-42.487,-42.688,-42.856,-43.004,-43.155,-43.330,-43.542,-43.788,-44.050,
--44.304,-44.528,-44.712,-44.858,-44.978,-45.085,-45.187,-45.286,-45.376,-45.454,-45.522,-45.585,-45.651,-45.728,-45.813,-45.900,
--45.978,-46.039,-46.084,-46.117,-46.145,-46.172,-46.193,-46.201,-46.187,-46.148,-46.091,-46.029,-45.977,-45.941,-45.918,-45.897,
--45.863,-45.807,-45.731,-45.645,-45.564,-45.495,-45.442,-45.395,-45.347,-45.292,-45.232,-45.178,-45.138,-45.118,-45.112,-45.105,
--45.078,-45.018,-44.920,-44.789,-44.637,-44.477,-44.319,-44.169,-44.032,-43.911,-43.810,-43.733,-43.681,-43.647,-43.622,-43.592,
--43.547,-43.484,-43.406,-43.323,-43.241,-43.165,-43.093,-43.019,-42.938,-42.846,-42.743,-42.632,-42.516,-42.395,-42.269,-42.139,
--42.007,-41.881,-41.766,-41.663,-41.568,-41.471,-41.357,-41.216,-41.049,-40.863,-40.673,-40.496,-40.339,-40.204,-40.085,-39.970,
--39.853,-39.730,-39.602,-39.474,-39.347,-39.219,-39.086,-38.941,-38.779,-38.601,-38.408,-38.205,-37.998,-37.791,-37.588,-37.395,
--37.217,-37.056,-36.912,-36.779,-36.647,-36.507,-36.351,-36.180,-36.000,-35.821,-35.652,-35.498,-35.354,-35.214,-35.070,-34.918,
--34.757,-34.592,-34.430,-34.271,-34.116,-33.962,-33.806,-33.647,-33.489,-33.338,-33.198,-33.071,-32.953,-32.839,-32.725,-32.608,
--32.488,-32.368,-32.251,-32.137,-32.026,-31.917,-31.810,-31.706,-31.608,-31.517,-31.432,-31.351,-31.271,-31.192,-31.118,-31.053,
--31.004,-30.972,-30.951,-30.934,-30.907,-30.861,-30.795,-30.713,-30.628,-30.552,-30.495,-30.458,-30.438,-30.424,-30.406,-30.378,
--30.336,-30.280,-30.214,-30.141,-30.065,-29.989,-29.914,-29.842,-29.771,-29.702,-29.635,-29.569,-29.507,-29.450,-29.401,-29.360,
--29.327,-29.298,-29.272,-29.246,-29.221,-29.198,-29.178,-29.158,-29.132,-29.093,-29.033,-28.948,-28.840,-28.721,-28.602,-28.497,
--28.412,-28.345,-28.288,-28.232,-28.168,-28.094,-28.011,-27.924,-27.836,-27.742,-27.639,-27.519,-27.382,-27.235,-27.091,-26.968,
--26.879,-26.827,-26.806,-26.801,-26.793,-26.770,-26.728,-26.672,-26.610,-26.548,-26.485,-26.415,-26.330,-26.226,-26.108,-25.987,
--25.879,-25.793,-25.728,-25.672,-25.603,-25.501,-25.355,-25.166,-24.952,-24.734,-24.531,-24.354,-24.203,-24.073,-23.957,-23.853,
--23.768,-23.710,-23.683,-23.684,-23.700,-23.715,-23.711,-23.679,-23.621,-23.546,-23.466,-23.389,-23.321,-23.258,-23.197,-23.133,
--23.065,-22.991,-22.912,-22.826,-22.729,-22.620,-22.501,-22.379,-22.265,-22.171,-22.103,-22.061,-22.039,-22.029,-22.023,-22.018,
--22.016,-22.018,-22.026,-22.039,-22.056,-22.078,-22.107,-22.150,-22.211,-22.288,-22.373,-22.455,-22.520,-22.563,-22.586,-22.599,
--22.613,-22.634,-22.660,-22.678,-22.679,-22.653,-22.606,-22.550,-22.501,-22.466,-22.443,-22.416,-22.360,-22.258,-22.099,-21.888,
--21.637,-21.365,-21.085,-20.806,-20.533,-20.270,-20.025,-19.807,-19.626,-19.488,-19.390,-19.328,-19.296,-19.291,-19.312,-19.359,
--19.420,-19.474,-19.490,-19.437,-19.296,-19.070,-18.781,-18.472,-18.181,-17.938,-17.747,-17.594,-17.455,-17.307,-17.143,-16.966,
--16.792,-16.637,-16.507,-16.400,-16.305,-16.214,-16.121,-16.028,-15.939,-15.858,-15.780,-15.698,-15.599,-15.475,-15.321,-15.142,
--14.942,-14.726,-14.499,-14.264,-14.029,-13.809,-13.626,-13.500,-13.445,-13.452,-13.498,-13.543,-13.548,-13.484,-13.344,-13.144,
--12.913,-12.683,-12.475,-12.295,-12.132,-11.972,-11.798,-11.605,-11.398,-11.187,-10.981,-10.782,-10.588,-10.388,-10.178,-9.955,
--9.729,-9.513,-9.322,-9.164,-9.040,-8.940,-8.850,-8.757,-8.647,-8.514,-8.354,-8.166,-7.954,-7.721,-7.474,-7.223,
--6.979,-6.753,-6.551,-6.373,-6.211,-6.055,-5.897,-5.732,-5.565,-5.402,-5.251,-5.116,-4.988,-4.856,-4.703,-4.517,
--4.294,-4.044,-3.783,-3.530,-3.299,-3.094,-2.909,-2.730,-2.539,-2.325,-2.080,-1.808,-1.515,-1.213,-.909,-.607,
--.307,-.005,.303,.615,.929,1.233,1.520,1.783,2.029,2.270,2.530,2.832,3.191,3.605,4.057,4.515,
-4.945,5.327,5.658,5.955,6.249,6.571,6.938,7.350,7.791,8.238,8.671,9.088,9.498,9.919,10.364,10.836,
-11.322,11.799,12.244,12.642,12.991,13.300,13.584,13.855,14.121,14.384,14.644,14.905,15.174,15.459,15.763,16.079,
-16.391,16.676,16.913,17.089,17.206,17.277,17.324,17.369,17.429,17.515,17.629,17.767,17.921,18.078,18.228,18.362,
-18.482,18.598,18.731,18.904,19.132,19.413,19.718,20.003,20.214,20.313,20.292,20.179,20.027,19.900,19.844,19.877,
-19.981,20.115,20.235,20.314,20.348,20.359,20.376,20.423,20.504,20.605,20.701,20.768,20.798,20.795,20.778,20.768,
-20.783,20.831,20.913,21.020,21.140,21.253,21.334,21.352,21.283,21.116,20.869,20.587,20.333,20.165,20.112,20.162,
-20.262,20.337,20.322,20.189,19.955,19.676,19.416,19.223,19.108,19.048,19.006,18.958,18.909,18.891,18.943,19.084,
-19.292,19.504,19.645,19.655,19.527,19.305,19.075,18.921,18.892,18.982,19.138,19.286,19.369,19.371,19.323,19.279,
-19.293,19.392,19.569,19.789,20.013,20.215,20.385,20.527,20.645,20.732,20.776,20.763,20.694,20.592,20.494,20.438,
-20.447,20.523,20.646,20.789,20.937,21.090,21.264,21.473,21.716,21.974,22.209,22.387,22.494,22.543,22.569,22.614,
-22.707,22.852,23.027,23.202,23.348,23.453,23.525,23.580,23.635,23.697,23.762,23.818,23.854,23.863,23.842,23.790,
-23.705,23.584,23.422,23.221,22.984,22.715,22.413,22.067,21.659,21.167,20.569,19.845,18.974,17.935,16.708,15.295,
-13.737,12.144,10.691,9.597,9.073,9.253,10.139,11.590,13.347,15.109,16.620,17.732,18.436,18.831,19.065,19.272,
-19.524,19.827,20.144,20.430,20.661,20.838,20.979,21.094,21.175,21.203,21.166,21.075,20.965,20.885,20.871,20.922,
-20.996,21.032,20.973,20.804,20.553,20.285,20.065,19.935,19.889,19.885,19.870,19.808,19.692,19.549,19.416,19.318,
-19.255,19.201,19.124,19.005,18.849,18.684,18.545,18.457,18.420,18.412,18.404,18.367,18.295,18.196,18.089,17.991,
-17.906,17.828,17.744,17.643,17.523,17.390,17.254,17.128,17.018,16.927,16.855,16.799,16.755,16.715,16.668,16.604,
-16.523,16.432,16.354,16.311,16.324,16.393,16.500,16.609,16.685,16.705,16.665,16.586,16.497,16.420,16.364,16.321,
-16.274,16.212,16.141,16.080,16.057,16.091,16.181,15.537,15.662,15.800,15.915,15.981,15.991,15.957,15.901,15.847,
-15.808,15.792,15.797,15.823,15.869,15.941,16.041,16.170,16.319,16.476,16.625,16.755,16.861,16.951,17.034,17.123,
-17.228,17.355,17.501,17.662,17.830,18.002,18.173,18.344,18.515,18.688,18.863,19.041,19.220,19.400,19.581,19.764,
-19.957,20.162,20.387,20.630,20.889,21.155,21.420,21.674,21.914,22.136,22.341,22.528,22.695,22.841,22.963,23.066,
-23.159,23.253,23.363,23.498,23.659,23.838,24.025,24.207,24.376,24.529,24.668,24.796,24.916,25.025,25.117,25.189,
-25.237,25.268,25.290,25.316,25.357,25.416,25.488,25.565,25.633,25.685,25.721,25.752,25.796,25.872,25.992,26.154,
-26.338,26.512,26.642,26.705,26.696,26.638,26.570,26.538,26.575,26.697,26.890,27.128,27.375,27.605,27.808,27.984,
-28.143,28.289,28.423,28.538,28.632,28.708,28.779,28.861,28.964,29.086,29.206,29.298,29.338,29.321,29.258,29.181,
-29.121,29.103,29.133,29.200,29.292,29.397,29.518,29.667,29.854,30.082,30.337,30.594,30.827,31.023,31.185,31.331,
-31.478,31.639,31.807,31.968,32.102,32.202,32.276,32.344,32.424,32.526,32.640,32.746,32.826,32.874,32.909,32.959,
-33.055,33.209,33.410,33.625,33.817,33.960,34.055,34.126,34.205,34.319,34.470,34.640,34.792,34.899,34.946,34.945,
-34.921,34.902,34.903,34.923,34.946,34.954,34.940,34.910,34.878,34.861,34.867,34.887,34.904,34.901,34.868,34.807,
-34.733,34.658,34.588,34.519,34.434,34.320,34.169,33.988,33.795,33.613,33.462,33.353,33.283,33.242,33.218,33.201,
-33.185,33.170,33.155,33.143,33.134,33.131,33.135,33.148,33.172,33.203,33.233,33.255,33.261,33.252,33.229,33.200,
-33.166,33.128,33.078,33.011,32.925,32.827,32.732,32.658,32.620,32.618,32.643,32.680,32.714,32.738,32.756,32.779,
-32.815,32.864,32.915,32.949,32.953,32.923,32.866,32.799,32.736,32.679,32.617,32.531,32.400,32.221,32.004,31.775,
-31.565,31.392,31.261,31.164,31.084,31.010,30.943,30.893,30.870,30.882,30.921,30.971,31.017,31.049,31.071,31.097,
-31.140,31.203,31.275,31.329,31.340,31.291,31.181,31.026,30.851,30.674,30.504,30.338,30.165,29.982,29.795,29.616,
-29.458,29.325,29.205,29.075,28.914,28.710,28.477,28.247,28.062,27.955,27.938,27.995,28.091,28.181,28.233,28.230,
-28.179,28.101,28.019,27.955,27.918,27.910,27.926,27.956,27.988,28.006,27.990,27.922,27.789,27.591,27.338,27.052,
-26.759,26.476,26.212,25.966,25.734,25.514,25.314,25.148,25.030,24.961,24.924,24.886,24.808,24.659,24.432,24.144,
-23.833,23.537,23.275,23.034,22.768,22.413,21.909,21.218,20.346,19.338,18.265,17.209,16.233,15.376,14.647,14.029,
-13.495,13.023,12.596,12.210,11.867,11.567,11.307,11.075,10.858,10.641,10.416,10.179,9.933,9.684,9.439,9.197,
-8.957,8.714,8.462,8.195,7.912,7.609,7.288,6.950,6.601,6.247,5.899,5.569,5.265,4.990,4.738,4.495,
-4.247,3.977,3.681,3.360,3.025,2.690,2.365,2.051,1.744,1.433,1.111,.774,.428,.082,-.256,-.581,
--.897,-1.211,-1.533,-1.864,-2.201,-2.531,-2.839,-3.114,-3.351,-3.558,-3.749,-3.944,-4.162,-4.416,-4.712,-5.048,
--5.411,-5.787,-6.153,-6.491,-6.783,-7.019,-7.200,-7.334,-7.438,-7.534,-7.642,-7.777,-7.949,-8.159,-8.407,-8.685,
--8.986,-9.300,-9.616,-9.927,-10.224,-10.504,-10.770,-11.028,-11.287,-11.555,-11.837,-12.133,-12.440,-12.750,-13.059,-13.363,
--13.663,-13.962,-14.263,-14.569,-14.878,-15.187,-15.491,-15.785,-16.067,-16.339,-16.606,-16.875,-17.155,-17.452,-17.766,-18.094,
--18.426,-18.753,-19.066,-19.360,-19.637,-19.901,-20.160,-20.419,-20.682,-20.945,-21.205,-21.461,-21.711,-21.955,-22.196,-22.434,
--22.668,-22.896,-23.115,-23.327,-23.539,-23.757,-23.988,-24.233,-24.486,-24.738,-24.977,-25.195,-25.390,-25.568,-25.736,-25.903,
--26.074,-26.248,-26.423,-26.596,-26.766,-26.938,-27.114,-27.298,-27.486,-27.671,-27.844,-27.997,-28.130,-28.250,-28.371,-28.507,
--28.667,-28.856,-29.067,-29.289,-29.511,-29.722,-29.916,-30.092,-30.250,-30.392,-30.518,-30.628,-30.726,-30.817,-30.908,-31.008,
--31.122,-31.249,-31.384,-31.516,-31.636,-31.735,-31.815,-31.879,-31.938,-32.001,-32.072,-32.147,-32.218,-32.274,-32.308,-32.317,
--32.308,-32.292,-32.280,-32.281,-32.297,-32.325,-32.357,-32.389,-32.417,-32.439,-32.455,-32.463,-32.458,-32.437,-32.399,-32.349,
--32.300,-32.266,-32.260,-32.285,-32.332,-32.379,-32.404,-32.388,-32.325,-32.221,-32.092,-31.956,-31.825,-31.705,-31.592,-31.482,
--31.373,-31.266,-31.164,-31.068,-30.978,-30.888,-30.793,-30.694,-30.598,-30.517,-30.461,-30.430,-30.415,-30.395,-30.348,-30.266,
--30.153,-30.030,-29.925,-29.858,-29.835,-29.842,-29.856,-29.851,-29.810,-29.733,-29.628,-29.508,-29.378,-29.241,-29.094,-28.940,
--28.790,-28.661,-28.571,-28.529,-28.529,-28.556,-28.593,-28.638,-28.706,-28.825,-29.020,-29.297,-29.625,-29.945,-30.190,-30.306,
--30.284,-30.160,-30.007,-29.907,-29.911,-30.026,-30.211,-30.394,-30.509,-30.525,-30.462,-30.381,-30.368,-30.495,-30.800,-31.274,
--31.867,-32.507,-33.123,-33.664,-34.105,-34.450,-34.715,-34.927,-35.112,-35.291,-35.480,-35.690,-35.926,-36.186,-36.463,-36.743,
--37.012,-37.258,-37.478,-37.677,-37.869,-38.075,-38.311,-38.587,-38.906,-39.255,-39.619,-39.973,-40.297,-40.571,-40.787,-40.949,
--41.071,-41.179,-41.299,-41.458,-41.668,-41.926,-42.212,-42.501,-42.765,-42.989,-43.173,-43.336,-43.499,-43.684,-43.899,-44.135,
--44.374,-44.595,-44.785,-44.943,-45.081,-45.212,-45.347,-45.487,-45.621,-45.737,-45.828,-45.895,-45.949,-46.007,-46.080,-46.170,
--46.270,-46.367,-46.450,-46.512,-46.558,-46.593,-46.621,-46.640,-46.644,-46.623,-46.576,-46.506,-46.428,-46.357,-46.302,-46.265,
--46.237,-46.205,-46.161,-46.103,-46.038,-45.977,-45.927,-45.889,-45.856,-45.816,-45.763,-45.693,-45.614,-45.533,-45.459,-45.392,
--45.326,-45.253,-45.164,-45.058,-44.939,-44.817,-44.698,-44.588,-44.485,-44.387,-44.294,-44.209,-44.138,-44.088,-44.059,-44.044,
--44.032,-44.005,-43.952,-43.866,-43.751,-43.619,-43.483,-43.354,-43.242,-43.147,-43.065,-42.990,-42.915,-42.831,-42.735,-42.625,
--42.504,-42.378,-42.253,-42.136,-42.028,-41.925,-41.820,-41.703,-41.566,-41.408,-41.232,-41.048,-40.869,-40.702,-40.556,-40.429,
--40.318,-40.216,-40.115,-40.009,-39.893,-39.765,-39.623,-39.471,-39.312,-39.150,-38.986,-38.820,-38.649,-38.468,-38.276,-38.075,
--37.872,-37.680,-37.506,-37.357,-37.229,-37.112,-36.993,-36.862,-36.714,-36.550,-36.376,-36.201,-36.029,-35.862,-35.696,-35.532,
--35.368,-35.207,-35.052,-34.905,-34.765,-34.626,-34.483,-34.331,-34.172,-34.010,-33.852,-33.705,-33.570,-33.445,-33.324,-33.203,
--33.076,-32.945,-32.814,-32.685,-32.565,-32.455,-32.358,-32.272,-32.199,-32.137,-32.082,-32.029,-31.974,-31.911,-31.841,-31.768,
--31.697,-31.636,-31.589,-31.553,-31.522,-31.485,-31.434,-31.367,-31.285,-31.197,-31.113,-31.041,-30.985,-30.944,-30.913,-30.886,
--30.858,-30.826,-30.789,-30.749,-30.705,-30.658,-30.610,-30.559,-30.505,-30.447,-30.380,-30.306,-30.223,-30.136,-30.051,-29.974,
--29.910,-29.862,-29.826,-29.799,-29.775,-29.751,-29.727,-29.704,-29.685,-29.667,-29.644,-29.609,-29.553,-29.473,-29.371,-29.256,
--29.139,-29.032,-28.939,-28.861,-28.793,-28.731,-28.672,-28.614,-28.557,-28.498,-28.431,-28.348,-28.241,-28.109,-27.956,-27.796,
--27.646,-27.518,-27.419,-27.343,-27.280,-27.217,-27.145,-27.062,-26.974,-26.889,-26.811,-26.740,-26.670,-26.596,-26.516,-26.439,
--26.375,-26.338,-26.332,-26.349,-26.370,-26.369,-26.324,-26.222,-26.067,-25.875,-25.666,-25.457,-25.255,-25.062,-24.874,-24.690,
--24.516,-24.367,-24.255,-24.189,-24.165,-24.170,-24.181,-24.180,-24.153,-24.098,-24.022,-23.937,-23.855,-23.782,-23.720,-23.667,
--23.618,-23.570,-23.518,-23.456,-23.380,-23.288,-23.181,-23.065,-22.951,-22.850,-22.769,-22.708,-22.662,-22.620,-22.576,-22.529,
--22.485,-22.453,-22.440,-22.446,-22.467,-22.491,-22.511,-22.526,-22.543,-22.572,-22.622,-22.691,-22.771,-22.846,-22.899,-22.922,
--22.915,-22.885,-22.842,-22.793,-22.744,-22.694,-22.645,-22.599,-22.563,-22.543,-22.542,-22.553,-22.562,-22.554,-22.514,-22.437,
--22.324,-22.180,-22.009,-21.815,-21.595,-21.348,-21.078,-20.795,-20.516,-20.260,-20.040,-19.864,-19.730,-19.636,-19.579,-19.558,
--19.573,-19.615,-19.667,-19.704,-19.695,-19.620,-19.471,-19.263,-19.023,-18.784,-18.571,-18.392,-18.239,-18.093,-17.937,-17.761,
--17.568,-17.371,-17.183,-17.014,-16.864,-16.729,-16.602,-16.480,-16.364,-16.258,-16.164,-16.083,-16.006,-15.926,-15.831,-15.716,
--15.576,-15.409,-15.211,-14.982,-14.726,-14.455,-14.191,-13.962,-13.794,-13.701,-13.676,-13.691,-13.708,-13.685,-13.599,-13.447,
--13.249,-13.038,-12.841,-12.674,-12.532,-12.395,-12.242,-12.058,-11.844,-11.614,-11.388,-11.181,-10.998,-10.828,-10.655,-10.464,
--10.248,-10.014,-9.780,-9.564,-9.381,-9.233,-9.113,-9.008,-8.902,-8.784,-8.649,-8.496,-8.325,-8.138,-7.938,-7.726,
--7.508,-7.293,-7.088,-6.899,-6.725,-6.560,-6.395,-6.224,-6.042,-5.853,-5.666,-5.487,-5.322,-5.165,-5.007,-4.838,
--4.649,-4.439,-4.217,-3.995,-3.784,-3.591,-3.412,-3.237,-3.049,-2.837,-2.594,-2.320,-2.025,-1.719,-1.412,-1.109,
--.807,-.501,-.185,.146,.485,.822,1.139,1.422,1.666,1.882,2.096,2.340,2.647,3.033,3.492,3.994,
-4.492,4.943,5.320,5.620,5.871,6.114,6.389,6.718,7.099,7.509,7.916,8.300,8.659,9.013,9.396,9.833,
-10.335,10.886,11.451,11.989,12.466,12.867,13.202,13.493,13.765,14.039,14.323,14.613,14.903,15.187,15.465,15.740,
-16.016,16.291,16.557,16.801,17.008,17.167,17.278,17.350,17.401,17.454,17.527,17.635,17.777,17.943,18.115,18.274,
-18.408,18.523,18.640,18.794,19.019,19.332,19.723,20.148,20.542,20.834,20.975,20.953,20.799,20.575,20.355,20.194,
-20.117,20.117,20.159,20.209,20.244,20.262,20.282,20.324,20.399,20.500,20.602,20.679,20.709,20.694,20.651,20.613,
-20.612,20.670,20.792,20.964,21.160,21.343,21.476,21.521,21.452,21.262,20.969,20.620,20.279,20.012,19.861,19.826,
-19.861,19.889,19.830,19.640,19.327,18.954,18.608,18.368,18.263,18.265,18.298,18.277,18.150,17.920,17.646,17.411,
-17.282,17.277,17.358,17.448,17.478,17.420,17.304,17.210,17.227,17.417,17.782,18.265,18.779,19.236,19.587,19.831,
-20.006,20.162,20.335,20.535,20.742,20.928,21.066,21.148,21.176,21.161,21.108,21.019,20.891,20.729,20.554,20.398,
-20.297,20.277,20.346,20.493,20.694,20.928,21.180,21.445,21.721,21.998,22.257,22.472,22.623,22.706,22.737,22.752,
-22.788,22.871,23.005,23.171,23.340,23.482,23.585,23.649,23.689,23.719,23.748,23.774,23.787,23.779,23.744,23.685,
-23.607,23.514,23.402,23.260,23.069,22.808,22.456,22.001,21.433,20.756,19.976,19.105,18.150,17.111,15.986,14.773,
-13.493,12.205,11.020,10.090,9.581,9.625,10.274,11.467,13.032,14.728,16.305,17.575,18.455,18.973,19.238,19.387,
-19.533,19.732,19.984,20.253,20.501,20.707,20.872,21.007,21.120,21.207,21.253,21.249,21.203,21.137,21.083,21.063,
-21.071,21.078,21.038,20.918,20.713,20.448,20.175,19.939,19.767,19.652,19.561,19.460,19.326,19.165,19.002,18.864,
-18.770,18.709,18.658,18.584,18.468,18.314,18.143,17.984,17.858,17.769,17.706,17.647,17.577,17.490,17.394,17.302,
-17.224,17.160,17.103,17.040,16.963,16.868,16.758,16.639,16.518,16.402,16.296,16.207,16.140,16.096,16.071,16.052,
-16.025,15.976,15.905,15.823,15.753,15.718,15.732,15.791,15.875,15.959,16.017,16.040,16.031,16.001,15.963,15.920,
-15.866,15.792,15.697,15.590,15.497,15.447,15.459,15.537,15.132,15.219,15.328,15.433,15.512,15.557,15.571,15.565,
-15.552,15.539,15.531,15.533,15.547,15.584,15.651,15.755,15.894,16.057,16.226,16.383,16.516,16.623,16.713,16.799,
-16.896,17.014,17.156,17.317,17.492,17.673,17.858,18.047,18.241,18.443,18.651,18.864,19.078,19.291,19.502,19.715,
-19.934,20.163,20.405,20.660,20.926,21.197,21.468,21.732,21.985,22.225,22.447,22.648,22.824,22.971,23.087,23.176,
-23.249,23.318,23.399,23.505,23.640,23.801,23.980,24.164,24.340,24.502,24.648,24.780,24.901,25.013,25.112,25.194,
-25.255,25.295,25.316,25.327,25.338,25.355,25.380,25.413,25.447,25.480,25.512,25.551,25.608,25.692,25.810,25.952,
-26.099,26.225,26.304,26.323,26.289,26.228,26.180,26.186,26.273,26.442,26.674,26.929,27.169,27.369,27.521,27.639,
-27.746,27.862,27.994,28.134,28.268,28.381,28.472,28.549,28.627,28.717,28.817,28.913,28.984,29.014,29.000,28.956,
-28.907,28.880,28.889,28.936,29.009,29.097,29.191,29.297,29.427,29.590,29.788,30.011,30.237,30.448,30.634,30.800,
-30.959,31.123,31.297,31.473,31.634,31.767,31.869,31.950,32.027,32.118,32.225,32.338,32.438,32.512,32.560,32.600,
-32.661,32.768,32.929,33.125,33.323,33.490,33.606,33.677,33.728,33.794,33.896,34.036,34.191,34.330,34.426,34.471,
-34.478,34.471,34.473,34.493,34.522,34.541,34.534,34.497,34.443,34.396,34.376,34.394,34.436,34.480,34.498,34.471,
-34.398,34.293,34.174,34.058,33.949,33.844,33.734,33.612,33.481,33.352,33.238,33.148,33.084,33.040,33.005,32.968,
-32.927,32.881,32.835,32.794,32.761,32.738,32.726,32.726,32.739,32.766,32.802,32.839,32.864,32.870,32.853,32.815,
-32.768,32.719,32.673,32.630,32.583,32.526,32.460,32.393,32.339,32.311,32.314,32.345,32.392,32.440,32.479,32.509,
-32.534,32.565,32.604,32.647,32.681,32.693,32.674,32.624,32.551,32.466,32.377,32.283,32.176,32.048,31.892,31.716,
-31.533,31.361,31.213,31.096,31.005,30.931,30.867,30.812,30.769,30.746,30.744,30.761,30.787,30.814,30.837,30.861,
-30.894,30.943,31.006,31.071,31.114,31.111,31.049,30.928,30.761,30.572,30.380,30.197,30.025,29.859,29.692,29.523,
-29.355,29.192,29.033,28.870,28.686,28.471,28.222,27.953,27.693,27.476,27.328,27.261,27.264,27.311,27.371,27.418,
-27.439,27.437,27.426,27.421,27.431,27.458,27.494,27.528,27.545,27.535,27.488,27.399,27.268,27.097,26.896,26.674,
-26.443,26.213,25.989,25.770,25.559,25.360,25.185,25.053,24.978,24.961,24.984,25.006,24.978,24.851,24.602,24.241,
-23.811,23.376,22.995,22.702,22.486,22.296,22.054,21.681,21.122,20.364,19.441,18.421,17.385,16.408,15.540,14.799,
-14.179,13.656,13.201,12.791,12.410,12.053,11.716,11.399,11.095,10.799,10.506,10.213,9.921,9.636,9.364,9.111,
-8.876,8.654,8.435,8.206,7.954,7.671,7.350,6.994,6.610,6.212,5.817,5.442,5.102,4.804,4.545,4.315,
-4.093,3.858,3.594,3.290,2.952,2.593,2.229,1.878,1.547,1.236,.937,.639,.333,.017,-.307,-.633,
--.956,-1.272,-1.586,-1.903,-2.225,-2.553,-2.878,-3.191,-3.480,-3.738,-3.967,-4.177,-4.385,-4.609,-4.864,-5.156,
--5.479,-5.819,-6.156,-6.467,-6.735,-6.954,-7.124,-7.258,-7.371,-7.483,-7.606,-7.753,-7.926,-8.128,-8.355,-8.605,
--8.876,-9.163,-9.462,-9.764,-10.063,-10.351,-10.627,-10.894,-11.158,-11.430,-11.716,-12.020,-12.338,-12.662,-12.982,-13.289,
--13.579,-13.857,-14.130,-14.407,-14.696,-15.001,-15.317,-15.637,-15.952,-16.253,-16.540,-16.817,-17.094,-17.383,-17.691,-18.020,
--18.363,-18.706,-19.037,-19.345,-19.630,-19.898,-20.159,-20.426,-20.702,-20.986,-21.269,-21.540,-21.793,-22.028,-22.253,-22.477,
--22.709,-22.951,-23.200,-23.451,-23.695,-23.930,-24.160,-24.391,-24.625,-24.865,-25.105,-25.335,-25.546,-25.736,-25.906,-26.062,
--26.216,-26.374,-26.539,-26.709,-26.882,-27.057,-27.234,-27.415,-27.603,-27.795,-27.987,-28.167,-28.328,-28.466,-28.584,-28.693,
--28.809,-28.944,-29.106,-29.295,-29.504,-29.721,-29.936,-30.143,-30.338,-30.519,-30.687,-30.840,-30.975,-31.094,-31.199,-31.299,
--31.401,-31.516,-31.646,-31.787,-31.932,-32.066,-32.181,-32.274,-32.350,-32.419,-32.493,-32.578,-32.671,-32.763,-32.841,-32.892,
--32.914,-32.912,-32.896,-32.880,-32.875,-32.883,-32.902,-32.925,-32.947,-32.967,-32.983,-32.998,-33.008,-33.010,-32.997,-32.967,
--32.922,-32.874,-32.838,-32.827,-32.848,-32.892,-32.943,-32.980,-32.984,-32.948,-32.875,-32.777,-32.666,-32.554,-32.441,-32.326,
--32.206,-32.084,-31.965,-31.855,-31.758,-31.669,-31.580,-31.481,-31.370,-31.252,-31.145,-31.064,-31.017,-31.000,-30.992,-30.970,
--30.913,-30.817,-30.698,-30.583,-30.497,-30.456,-30.456,-30.477,-30.493,-30.480,-30.430,-30.344,-30.233,-30.107,-29.968,-29.817,
--29.654,-29.486,-29.327,-29.196,-29.110,-29.073,-29.076,-29.105,-29.148,-29.206,-29.298,-29.447,-29.671,-29.963,-30.290,-30.594,
--30.815,-30.910,-30.876,-30.750,-30.599,-30.492,-30.478,-30.567,-30.728,-30.908,-31.050,-31.117,-31.111,-31.065,-31.035,-31.079,
--31.242,-31.541,-31.966,-32.484,-33.048,-33.612,-34.134,-34.587,-34.958,-35.250,-35.482,-35.680,-35.873,-36.086,-36.334,-36.617,
--36.922,-37.230,-37.518,-37.772,-37.988,-38.176,-38.357,-38.555,-38.790,-39.072,-39.401,-39.761,-40.129,-40.477,-40.781,-41.025,
--41.208,-41.342,-41.453,-41.570,-41.718,-41.912,-42.152,-42.421,-42.698,-42.962,-43.202,-43.418,-43.621,-43.824,-44.037,-44.257,
--44.474,-44.674,-44.849,-44.999,-45.138,-45.282,-45.446,-45.629,-45.819,-45.995,-46.136,-46.230,-46.282,-46.311,-46.340,-46.387,
--46.462,-46.557,-46.659,-46.753,-46.830,-46.889,-46.934,-46.970,-46.997,-47.012,-47.008,-46.981,-46.933,-46.872,-46.807,-46.746,
--46.691,-46.639,-46.583,-46.522,-46.458,-46.399,-46.354,-46.324,-46.305,-46.285,-46.251,-46.194,-46.116,-46.025,-45.932,-45.848,
--45.771,-45.696,-45.611,-45.507,-45.385,-45.251,-45.118,-44.997,-44.893,-44.806,-44.727,-44.651,-44.577,-44.509,-44.455,-44.423,
--44.411,-44.408,-44.396,-44.356,-44.276,-44.151,-43.992,-43.815,-43.639,-43.480,-43.346,-43.237,-43.148,-43.071,-43.001,-42.931,
--42.861,-42.790,-42.715,-42.636,-42.550,-42.453,-42.344,-42.222,-42.086,-41.938,-41.781,-41.617,-41.450,-41.285,-41.126,-40.978,
--40.845,-40.727,-40.620,-40.516,-40.405,-40.279,-40.132,-39.966,-39.789,-39.615,-39.453,-39.311,-39.186,-39.068,-38.943,-38.799,
--38.632,-38.446,-38.252,-38.064,-37.890,-37.736,-37.597,-37.466,-37.334,-37.193,-37.043,-36.884,-36.717,-36.545,-36.367,-36.184,
--35.998,-35.814,-35.639,-35.477,-35.332,-35.200,-35.075,-34.948,-34.814,-34.672,-34.525,-34.379,-34.239,-34.108,-33.983,-33.861,
--33.736,-33.605,-33.470,-33.333,-33.199,-33.072,-32.956,-32.855,-32.771,-32.704,-32.653,-32.614,-32.581,-32.547,-32.508,-32.459,
--32.403,-32.345,-32.289,-32.238,-32.191,-32.145,-32.093,-32.031,-31.958,-31.877,-31.793,-31.714,-31.642,-31.579,-31.523,-31.469,
--31.417,-31.366,-31.318,-31.275,-31.240,-31.214,-31.194,-31.176,-31.157,-31.130,-31.091,-31.036,-30.962,-30.872,-30.771,-30.668,
--30.575,-30.497,-30.440,-30.399,-30.368,-30.338,-30.305,-30.268,-30.231,-30.199,-30.177,-30.164,-30.151,-30.130,-30.090,-30.026,
--29.939,-29.837,-29.730,-29.628,-29.535,-29.453,-29.382,-29.317,-29.257,-29.199,-29.143,-29.085,-29.020,-28.942,-28.848,-28.737,
--28.614,-28.485,-28.353,-28.224,-28.095,-27.965,-27.832,-27.696,-27.563,-27.435,-27.318,-27.211,-27.109,-27.007,-26.904,-26.802,
--26.713,-26.650,-26.624,-26.636,-26.674,-26.721,-26.754,-26.758,-26.726,-26.664,-26.582,-26.490,-26.390,-26.275,-26.132,-25.953,
--25.739,-25.502,-25.266,-25.055,-24.888,-24.771,-24.696,-24.647,-24.606,-24.561,-24.506,-24.443,-24.380,-24.320,-24.267,-24.222,
--24.183,-24.147,-24.110,-24.068,-24.017,-23.949,-23.863,-23.760,-23.647,-23.536,-23.438,-23.358,-23.295,-23.239,-23.183,-23.120,
--23.052,-22.990,-22.948,-22.933,-22.945,-22.974,-23.004,-23.020,-23.016,-23.001,-22.987,-22.990,-23.018,-23.069,-23.127,-23.174,
--23.196,-23.184,-23.141,-23.079,-23.007,-22.937,-22.873,-22.817,-22.768,-22.728,-22.697,-22.673,-22.655,-22.638,-22.619,-22.594,
--22.560,-22.515,-22.457,-22.380,-22.274,-22.132,-21.951,-21.734,-21.497,-21.258,-21.033,-20.835,-20.663,-20.513,-20.377,-20.250,
--20.136,-20.041,-19.972,-19.926,-19.893,-19.852,-19.785,-19.678,-19.535,-19.369,-19.200,-19.044,-18.908,-18.786,-18.665,-18.530,
--18.373,-18.193,-17.999,-17.802,-17.612,-17.432,-17.261,-17.095,-16.932,-16.773,-16.621,-16.477,-16.344,-16.222,-16.108,-16.001,
--15.896,-15.790,-15.674,-15.537,-15.367,-15.159,-14.918,-14.660,-14.414,-14.208,-14.060,-13.972,-13.925,-13.887,-13.824,-13.716,
--13.560,-13.373,-13.179,-13.002,-12.849,-12.714,-12.577,-12.422,-12.240,-12.039,-11.841,-11.666,-11.530,-11.428,-11.344,-11.249,
--11.120,-10.944,-10.727,-10.485,-10.240,-10.011,-9.806,-9.624,-9.455,-9.290,-9.120,-8.943,-8.759,-8.569,-8.374,-8.173,
--7.968,-7.763,-7.563,-7.377,-7.206,-7.050,-6.900,-6.745,-6.575,-6.386,-6.179,-5.964,-5.752,-5.550,-5.360,-5.179,
--5.001,-4.819,-4.632,-4.443,-4.256,-4.073,-3.893,-3.709,-3.512,-3.292,-3.043,-2.767,-2.470,-2.164,-1.856,-1.552,
--1.251,-.949,-.637,-.310,.031,.378,.717,1.031,1.308,1.549,1.766,1.989,2.254,2.588,3.007,3.497,
-4.024,4.538,4.993,5.361,5.644,5.872,6.087,6.334,6.633,6.983,7.358,7.726,8.065,8.376,8.682,9.023,
-9.433,9.925,10.485,11.077,11.653,12.174,12.625,13.013,13.362,13.701,14.050,14.409,14.765,15.096,15.383,15.622,
-15.823,16.006,16.192,16.397,16.620,16.851,17.069,17.256,17.402,17.509,17.591,17.669,17.766,17.892,18.048,18.223,
-18.400,18.564,18.713,18.859,19.026,19.238,19.512,19.842,20.199,20.535,20.802,20.965,21.014,20.969,20.869,20.756,
-20.660,20.592,20.542,20.491,20.426,20.345,20.263,20.203,20.183,20.209,20.269,20.342,20.408,20.457,20.496,20.544,
-20.622,20.743,20.906,21.091,21.269,21.406,21.471,21.442,21.305,21.065,20.741,20.374,20.022,19.742,19.582,19.551,
-19.614,19.695,19.702,19.566,19.266,18.854,18.434,18.128,18.024,18.137,18.397,18.671,18.817,18.735,18.406,17.896,
-17.324,16.811,16.434,16.207,16.085,16.010,15.941,15.889,15.910,16.076,16.441,17.005,17.711,18.462,19.159,19.733,
-20.167,20.491,20.755,21.005,21.260,21.507,21.711,21.837,21.863,21.789,21.633,21.422,21.183,20.938,20.708,20.510,
-20.366,20.296,20.314,20.426,20.622,20.886,21.194,21.523,21.848,22.147,22.396,22.576,22.674,22.694,22.659,22.608,
-22.587,22.633,22.762,22.961,23.194,23.415,23.588,23.693,23.736,23.738,23.724,23.712,23.707,23.699,23.674,23.623,
-23.544,23.445,23.336,23.222,23.094,22.927,22.681,22.307,21.765,21.029,20.100,19.003,17.788,16.515,15.244,14.026,
-12.902,11.913,11.106,10.544,10.302,10.453,11.034,12.026,13.338,14.815,16.270,17.531,18.484,19.097,19.421,19.557,
-19.620,19.696,19.830,20.016,20.225,20.424,20.593,20.728,20.839,20.933,21.010,21.066,21.094,21.097,21.081,21.060,
-21.035,20.997,20.928,20.805,20.619,20.383,20.126,19.884,19.687,19.539,19.422,19.307,19.164,18.985,18.782,18.583,
-18.417,18.299,18.222,18.165,18.100,18.008,17.887,17.747,17.609,17.484,17.375,17.276,17.173,17.060,16.937,16.814,
-16.702,16.610,16.543,16.495,16.458,16.420,16.374,16.312,16.228,16.119,15.990,15.849,15.714,15.606,15.539,15.518,
-15.532,15.557,15.564,15.535,15.467,15.374,15.283,15.222,15.206,15.237,15.302,15.380,15.454,15.513,15.552,15.570,
-15.566,15.533,15.470,15.379,15.272,15.173,15.106,15.090,15.132,14.948,14.991,15.047,15.102,15.147,15.178,15.199,
-15.214,15.230,15.248,15.270,15.299,15.339,15.399,15.489,15.612,15.767,15.942,16.120,16.285,16.427,16.545,16.647,
-16.745,16.854,16.980,17.128,17.294,17.474,17.666,17.870,18.085,18.311,18.545,18.783,19.019,19.249,19.474,19.698,
-19.926,20.165,20.417,20.679,20.946,21.211,21.470,21.721,21.966,22.207,22.444,22.674,22.886,23.069,23.213,23.314,
-23.380,23.423,23.463,23.520,23.606,23.727,23.877,24.043,24.211,24.369,24.511,24.637,24.749,24.852,24.949,25.038,
-25.118,25.183,25.233,25.267,25.290,25.304,25.314,25.323,25.332,25.343,25.361,25.392,25.444,25.522,25.624,25.739,
-25.848,25.929,25.964,25.947,25.891,25.827,25.795,25.834,25.965,26.182,26.455,26.737,26.980,27.153,27.250,27.294,
-27.323,27.375,27.474,27.620,27.793,27.965,28.112,28.224,28.310,28.384,28.462,28.547,28.629,28.694,28.726,28.722,
-28.696,28.668,28.660,28.686,28.744,28.827,28.921,29.019,29.124,29.244,29.386,29.555,29.742,29.935,30.121,30.295,
-30.459,30.621,30.788,30.958,31.123,31.270,31.391,31.487,31.569,31.653,31.751,31.864,31.984,32.095,32.189,32.268,
-32.346,32.445,32.578,32.744,32.926,33.095,33.226,33.311,33.361,33.400,33.457,33.546,33.663,33.787,33.893,33.962,
-33.994,34.005,34.017,34.043,34.086,34.130,34.154,34.146,34.105,34.050,34.005,33.991,34.011,34.052,34.086,34.086,
-34.034,33.934,33.803,33.663,33.533,33.423,33.328,33.240,33.152,33.063,32.976,32.899,32.835,32.781,32.730,32.674,
-32.609,32.539,32.471,32.415,32.375,32.352,32.341,32.339,32.342,32.354,32.377,32.409,32.446,32.476,32.487,32.473,
-32.435,32.381,32.324,32.274,32.237,32.209,32.182,32.152,32.120,32.092,32.078,32.085,32.112,32.152,32.193,32.227,
-32.251,32.270,32.294,32.329,32.375,32.420,32.448,32.445,32.402,32.322,32.215,32.096,31.976,31.858,31.743,31.623,
-31.498,31.366,31.233,31.103,30.981,30.870,30.769,30.681,30.609,30.559,30.536,30.541,30.570,30.614,30.662,30.706,
-30.743,30.775,30.804,30.832,30.850,30.848,30.812,30.732,30.608,30.448,30.267,30.082,29.905,29.740,29.585,29.433,
-29.277,29.113,28.935,28.741,28.526,28.290,28.034,27.769,27.510,27.279,27.092,26.962,26.886,26.852,26.842,26.838,
-26.830,26.818,26.812,26.822,26.856,26.910,26.972,27.024,27.043,27.014,26.930,26.795,26.620,26.424,26.226,26.042,
-25.881,25.743,25.618,25.495,25.361,25.214,25.062,24.923,24.822,24.774,24.779,24.814,24.837,24.794,24.643,24.365,
-23.975,23.518,23.057,22.647,22.319,22.065,21.839,21.573,21.197,20.661,19.953,19.099,18.157,17.199,16.293,15.488,
-14.804,14.239,13.770,13.365,12.995,12.639,12.284,11.928,11.573,11.221,10.877,10.538,10.205,9.877,9.555,9.242,
-8.944,8.664,8.402,8.154,7.910,7.655,7.376,7.061,6.705,6.314,5.898,5.478,5.074,4.707,4.389,4.121,
-3.893,3.686,3.476,3.237,2.956,2.628,2.262,1.875,1.489,1.123,.786,.478,.189,-.094,-.383,-.685,
--1.002,-1.330,-1.663,-1.997,-2.327,-2.654,-2.976,-3.289,-3.588,-3.865,-4.116,-4.344,-4.556,-4.768,-4.995,-5.250,
--5.536,-5.844,-6.156,-6.450,-6.703,-6.904,-7.054,-7.166,-7.261,-7.362,-7.485,-7.641,-7.828,-8.041,-8.272,-8.517,
--8.772,-9.039,-9.321,-9.615,-9.917,-10.220,-10.518,-10.806,-11.086,-11.364,-11.650,-11.952,-12.272,-12.608,-12.952,-13.289,
--13.609,-13.905,-14.178,-14.435,-14.689,-14.952,-15.232,-15.533,-15.848,-16.169,-16.486,-16.791,-17.086,-17.377,-17.673,-17.985,
--18.314,-18.655,-18.999,-19.331,-19.643,-19.933,-20.208,-20.480,-20.759,-21.050,-21.348,-21.640,-21.915,-22.163,-22.385,-22.591,
--22.795,-23.012,-23.250,-23.505,-23.769,-24.032,-24.285,-24.527,-24.763,-24.998,-25.235,-25.473,-25.705,-25.921,-26.115,-26.286,
--26.441,-26.590,-26.741,-26.899,-27.066,-27.238,-27.411,-27.585,-27.761,-27.943,-28.130,-28.321,-28.509,-28.684,-28.840,-28.975,
--29.096,-29.212,-29.335,-29.476,-29.636,-29.813,-30.000,-30.191,-30.383,-30.572,-30.760,-30.946,-31.125,-31.293,-31.444,-31.576,
--31.693,-31.805,-31.921,-32.050,-32.193,-32.344,-32.490,-32.619,-32.724,-32.805,-32.872,-32.938,-33.012,-33.098,-33.191,-33.280,
--33.351,-33.398,-33.420,-33.423,-33.419,-33.416,-33.419,-33.428,-33.439,-33.450,-33.458,-33.466,-33.474,-33.481,-33.485,-33.480,
--33.461,-33.429,-33.392,-33.360,-33.345,-33.353,-33.381,-33.419,-33.451,-33.463,-33.450,-33.411,-33.351,-33.275,-33.187,-33.086,
--32.973,-32.849,-32.722,-32.603,-32.498,-32.411,-32.334,-32.253,-32.157,-32.041,-31.914,-31.796,-31.709,-31.665,-31.660,-31.671,
--31.667,-31.621,-31.521,-31.382,-31.234,-31.113,-31.046,-31.036,-31.070,-31.115,-31.142,-31.129,-31.070,-30.972,-30.847,-30.703,
--30.542,-30.367,-30.178,-29.987,-29.812,-29.672,-29.581,-29.542,-29.545,-29.578,-29.633,-29.714,-29.836,-30.020,-30.273,-30.582,
--30.907,-31.195,-31.392,-31.464,-31.415,-31.281,-31.127,-31.016,-30.997,-31.084,-31.252,-31.456,-31.641,-31.764,-31.810,-31.795,
--31.761,-31.760,-31.844,-32.047,-32.380,-32.826,-33.350,-33.900,-34.427,-34.892,-35.275,-35.575,-35.816,-36.030,-36.252,-36.508,
--36.807,-37.141,-37.488,-37.820,-38.114,-38.357,-38.551,-38.712,-38.864,-39.033,-39.238,-39.489,-39.784,-40.114,-40.459,-40.801,
--41.123,-41.415,-41.676,-41.910,-42.124,-42.328,-42.528,-42.725,-42.918,-43.105,-43.289,-43.475,-43.672,-43.888,-44.125,-44.375,
--44.624,-44.852,-45.045,-45.200,-45.328,-45.448,-45.581,-45.741,-45.927,-46.124,-46.308,-46.456,-46.556,-46.613,-46.644,-46.669,
--46.709,-46.770,-46.847,-46.930,-47.004,-47.063,-47.106,-47.139,-47.171,-47.204,-47.242,-47.279,-47.311,-47.333,-47.342,-47.335,
--47.309,-47.258,-47.181,-47.082,-46.969,-46.858,-46.766,-46.702,-46.666,-46.648,-46.631,-46.599,-46.544,-46.470,-46.391,-46.322,
--46.272,-46.236,-46.198,-46.140,-46.044,-45.906,-45.737,-45.557,-45.387,-45.243,-45.128,-45.037,-44.960,-44.889,-44.822,-44.766,
--44.726,-44.705,-44.697,-44.688,-44.662,-44.603,-44.504,-44.368,-44.206,-44.031,-43.856,-43.689,-43.532,-43.388,-43.258,-43.148,
--43.062,-43.002,-42.965,-42.942,-42.919,-42.881,-42.817,-42.726,-42.612,-42.484,-42.352,-42.223,-42.096,-41.968,-41.832,-41.687,
--41.533,-41.376,-41.222,-41.076,-40.933,-40.789,-40.635,-40.464,-40.278,-40.088,-39.906,-39.747,-39.619,-39.520,-39.438,-39.357,
--39.261,-39.138,-38.988,-38.815,-38.631,-38.446,-38.267,-38.095,-37.932,-37.774,-37.622,-37.473,-37.326,-37.178,-37.025,-36.861,
--36.685,-36.497,-36.305,-36.117,-35.943,-35.787,-35.649,-35.524,-35.406,-35.289,-35.168,-35.045,-34.921,-34.798,-34.677,-34.557,
--34.435,-34.309,-34.181,-34.051,-33.923,-33.800,-33.684,-33.577,-33.480,-33.393,-33.318,-33.255,-33.202,-33.157,-33.116,-33.075,
--33.033,-32.990,-32.946,-32.904,-32.862,-32.819,-32.769,-32.709,-32.640,-32.563,-32.484,-32.410,-32.343,-32.282,-32.224,-32.163,
--32.095,-32.018,-31.939,-31.863,-31.798,-31.751,-31.722,-31.708,-31.702,-31.697,-31.685,-31.661,-31.620,-31.561,-31.486,-31.401,
--31.311,-31.227,-31.153,-31.093,-31.045,-31.002,-30.958,-30.908,-30.851,-30.793,-30.743,-30.707,-30.690,-30.687,-30.689,-30.683,
--30.661,-30.617,-30.551,-30.472,-30.385,-30.300,-30.218,-30.140,-30.066,-29.992,-29.919,-29.845,-29.772,-29.699,-29.624,-29.541,
--29.447,-29.338,-29.212,-29.069,-28.911,-28.746,-28.580,-28.422,-28.277,-28.151,-28.040,-27.937,-27.832,-27.714,-27.577,-27.423,
--27.264,-27.117,-26.997,-26.916,-26.873,-26.859,-26.860,-26.864,-26.868,-26.874,-26.892,-26.930,-26.985,-27.043,-27.079,-27.067,
--26.990,-26.841,-26.634,-26.392,-26.142,-25.907,-25.698,-25.519,-25.363,-25.226,-25.105,-25.000,-24.914,-24.847,-24.797,-24.759,
--24.726,-24.694,-24.661,-24.627,-24.591,-24.549,-24.497,-24.429,-24.342,-24.241,-24.133,-24.030,-23.938,-23.859,-23.789,-23.721,
--23.651,-23.582,-23.521,-23.482,-23.471,-23.489,-23.523,-23.556,-23.571,-23.560,-23.526,-23.481,-23.442,-23.422,-23.422,-23.437,
--23.451,-23.453,-23.433,-23.393,-23.338,-23.278,-23.220,-23.168,-23.120,-23.072,-23.023,-22.972,-22.920,-22.871,-22.827,-22.792,
--22.763,-22.739,-22.712,-22.674,-22.613,-22.520,-22.389,-22.224,-22.037,-21.844,-21.665,-21.513,-21.391,-21.290,-21.195,-21.091,
--20.971,-20.836,-20.697,-20.565,-20.449,-20.346,-20.246,-20.135,-20.004,-19.851,-19.687,-19.527,-19.384,-19.264,-19.163,-19.069,
--18.965,-18.841,-18.692,-18.520,-18.333,-18.141,-17.950,-17.762,-17.578,-17.396,-17.213,-17.029,-16.843,-16.658,-16.475,-16.302,
--16.144,-16.008,-15.896,-15.801,-15.710,-15.608,-15.478,-15.315,-15.123,-14.922,-14.731,-14.570,-14.443,-14.341,-14.243,-14.126,
--13.978,-13.797,-13.596,-13.396,-13.211,-13.045,-12.894,-12.741,-12.579,-12.405,-12.234,-12.086,-11.980,-11.925,-11.909,-11.907,
--11.885,-11.813,-11.676,-11.475,-11.224,-10.948,-10.666,-10.394,-10.137,-9.894,-9.664,-9.443,-9.231,-9.026,-8.826,-8.628,
--8.427,-8.224,-8.022,-7.829,-7.651,-7.494,-7.354,-7.219,-7.078,-6.915,-6.725,-6.510,-6.280,-6.048,-5.827,-5.623,
--5.435,-5.259,-5.088,-4.917,-4.742,-4.562,-4.373,-4.172,-3.954,-3.714,-3.452,-3.169,-2.871,-2.567,-2.263,-1.962,
--1.664,-1.365,-1.058,-.739,-.407,-.066,.276,.607,.919,1.206,1.471,1.728,1.998,2.305,2.669,3.094,
-3.569,4.063,4.539,4.962,5.312,5.596,5.839,6.080,6.353,6.675,7.038,7.418,7.782,8.107,8.392,8.658,
-8.943,9.283,9.700,10.190,10.729,11.279,11.808,12.298,12.751,13.183,13.614,14.051,14.489,14.906,15.277,15.579,
-15.809,15.979,16.117,16.254,16.415,16.611,16.835,17.067,17.283,17.464,17.601,17.700,17.777,17.855,17.954,18.084,
-18.245,18.429,18.622,18.811,18.990,19.160,19.327,19.497,19.674,19.851,20.020,20.169,20.289,20.380,20.444,20.486,
-20.508,20.505,20.468,20.391,20.274,20.130,19.984,19.864,19.794,19.785,19.834,19.928,20.050,20.196,20.367,20.575,
-20.826,21.113,21.412,21.683,21.878,21.959,21.905,21.720,21.423,21.050,20.641,20.242,19.897,19.652,19.541,19.577,
-19.739,19.965,20.165,20.243,20.138,19.849,19.452,19.077,18.870,18.932,19.278,19.824,20.409,20.849,21.003,20.816,
-20.334,19.679,18.999,18.411,17.972,17.677,17.481,17.344,17.252,17.232,17.330,17.577,17.971,18.459,18.959,19.387,
-19.693,19.881,20.000,20.121,20.306,20.575,20.905,21.231,21.481,21.599,21.565,21.400,21.157,20.900,20.686,20.551,
-20.508,20.549,20.656,20.808,20.990,21.195,21.422,21.671,21.936,22.202,22.443,22.625,22.720,22.715,22.624,22.484,
-22.354,22.293,22.344,22.518,22.788,23.102,23.395,23.616,23.740,23.774,23.748,23.701,23.663,23.645,23.638,23.621,
-23.572,23.480,23.350,23.199,23.044,22.891,22.724,22.498,22.150,21.612,20.830,19.786,18.504,17.058,15.553,14.111,
-12.848,11.853,11.187,10.875,10.921,11.307,12.001,12.954,14.093,15.322,16.529,17.603,18.460,19.055,19.398,19.545,
-19.575,19.570,19.589,19.658,19.771,19.904,20.032,20.138,20.218,20.277,20.326,20.369,20.411,20.449,20.483,20.508,
-20.518,20.502,20.444,20.330,20.156,19.930,19.677,19.432,19.224,19.066,18.954,18.860,18.753,18.611,18.427,18.216,
-18.005,17.822,17.681,17.581,17.508,17.442,17.371,17.289,17.202,17.118,17.039,16.963,16.881,16.782,16.663,16.525,
-16.379,16.241,16.121,16.029,15.966,15.929,15.909,15.894,15.867,15.813,15.722,15.591,15.433,15.271,15.135,15.050,
-15.029,15.060,15.118,15.165,15.173,15.127,15.035,14.924,14.825,14.765,14.755,14.792,14.860,14.938,15.012,15.070,
-15.110,15.131,15.131,15.111,15.073,15.023,14.973,14.938,14.928,14.948,14.845,14.875,14.901,14.920,14.933,14.942,
-14.954,14.974,15.005,15.046,15.097,15.156,15.224,15.308,15.413,15.543,15.696,15.866,16.042,16.212,16.369,16.512,
-16.648,16.783,16.926,17.081,17.251,17.435,17.633,17.844,18.069,18.307,18.553,18.802,19.047,19.281,19.507,19.727,
-19.951,20.187,20.439,20.705,20.976,21.243,21.495,21.732,21.957,22.179,22.406,22.640,22.873,23.093,23.280,23.423,
-23.515,23.565,23.591,23.613,23.655,23.728,23.834,23.965,24.107,24.247,24.372,24.479,24.570,24.651,24.729,24.808,
-24.890,24.971,25.048,25.117,25.175,25.219,25.251,25.270,25.281,25.289,25.301,25.323,25.360,25.416,25.485,25.557,
-25.617,25.648,25.640,25.595,25.527,25.467,25.451,25.512,25.665,25.904,26.196,26.492,26.741,26.906,26.976,26.972,
-26.937,26.922,26.965,27.084,27.266,27.482,27.693,27.872,28.008,28.108,28.189,28.265,28.343,28.414,28.466,28.488,
-28.477,28.447,28.416,28.407,28.433,28.495,28.584,28.690,28.802,28.917,29.038,29.171,29.317,29.474,29.636,29.795,
-29.950,30.101,30.253,30.410,30.570,30.726,30.870,30.998,31.108,31.210,31.310,31.418,31.533,31.651,31.765,31.873,
-31.980,32.095,32.230,32.387,32.557,32.724,32.866,32.971,33.038,33.083,33.128,33.192,33.279,33.382,33.480,33.554,
-33.596,33.612,33.618,33.633,33.665,33.711,33.755,33.781,33.778,33.750,33.715,33.689,33.685,33.697,33.708,33.694,
-33.638,33.537,33.407,33.270,33.151,33.063,33.004,32.960,32.915,32.857,32.783,32.698,32.611,32.529,32.452,32.375,
-32.295,32.212,32.133,32.068,32.025,32.005,32.001,32.004,32.006,32.001,31.996,31.998,32.012,32.040,32.072,32.096,
-32.100,32.080,32.041,31.995,31.956,31.930,31.919,31.916,31.913,31.905,31.895,31.888,31.891,31.907,31.932,31.960,
-31.983,32.001,32.020,32.047,32.092,32.152,32.216,32.266,32.281,32.249,32.169,32.051,31.916,31.782,31.661,31.555,
-31.458,31.360,31.252,31.132,30.999,30.862,30.728,30.604,30.498,30.415,30.362,30.343,30.357,30.400,30.462,30.529,
-30.587,30.625,30.640,30.631,30.604,30.563,30.508,30.437,30.344,30.226,30.083,29.921,29.749,29.580,29.422,29.279,
-29.147,29.016,28.874,28.708,28.510,28.278,28.022,27.757,27.505,27.285,27.111,26.989,26.908,26.854,26.805,26.744,
-26.665,26.572,26.480,26.408,26.373,26.377,26.415,26.465,26.501,26.495,26.431,26.301,26.114,25.893,25.664,25.456,
-25.288,25.170,25.095,25.046,25.000,24.936,24.845,24.729,24.605,24.495,24.416,24.376,24.362,24.344,24.287,24.158,
-23.940,23.638,23.278,22.893,22.516,22.162,21.827,21.484,21.095,20.621,20.039,19.345,18.561,17.726,16.890,16.100,
-15.389,14.776,14.259,13.819,13.432,13.068,12.708,12.339,11.960,11.579,11.205,10.844,10.499,10.165,9.834,9.500,
-9.159,8.815,8.474,8.145,7.833,7.538,7.252,6.959,6.645,6.297,5.913,5.498,5.067,4.644,4.251,3.906,
-3.620,3.389,3.198,3.019,2.827,2.595,2.309,1.972,1.596,1.207,.829,.482,.173,-.106,-.370,-.639,
--.931,-1.254,-1.607,-1.981,-2.363,-2.740,-3.102,-3.443,-3.759,-4.045,-4.299,-4.521,-4.718,-4.901,-5.088,-5.294,
--5.534,-5.810,-6.109,-6.410,-6.687,-6.917,-7.089,-7.208,-7.293,-7.369,-7.463,-7.593,-7.763,-7.970,-8.203,-8.450,
--8.706,-8.970,-9.247,-9.539,-9.849,-10.172,-10.499,-10.821,-11.130,-11.423,-11.705,-11.986,-12.274,-12.578,-12.900,-13.235,
--13.574,-13.905,-14.217,-14.505,-14.771,-15.025,-15.277,-15.541,-15.825,-16.130,-16.451,-16.778,-17.101,-17.415,-17.721,-18.024,
--18.332,-18.652,-18.983,-19.321,-19.656,-19.979,-20.284,-20.575,-20.857,-21.140,-21.427,-21.716,-21.999,-22.265,-22.508,-22.728,
--22.934,-23.138,-23.353,-23.585,-23.835,-24.093,-24.350,-24.600,-24.842,-25.082,-25.327,-25.580,-25.839,-26.095,-26.335,-26.551,
--26.737,-26.901,-27.052,-27.203,-27.363,-27.533,-27.710,-27.888,-28.060,-28.227,-28.391,-28.556,-28.724,-28.895,-29.064,-29.224,
--29.373,-29.511,-29.643,-29.776,-29.917,-30.068,-30.229,-30.397,-30.566,-30.737,-30.911,-31.089,-31.274,-31.462,-31.646,-31.817,
--31.970,-32.104,-32.223,-32.340,-32.465,-32.603,-32.752,-32.902,-33.040,-33.157,-33.248,-33.319,-33.382,-33.449,-33.528,-33.616,
--33.705,-33.784,-33.842,-33.877,-33.892,-33.897,-33.900,-33.908,-33.924,-33.942,-33.959,-33.969,-33.971,-33.966,-33.956,-33.940,
--33.921,-33.897,-33.869,-33.842,-33.823,-33.816,-33.825,-33.848,-33.878,-33.907,-33.925,-33.926,-33.909,-33.873,-33.817,-33.743,
--33.650,-33.541,-33.425,-33.312,-33.213,-33.136,-33.078,-33.026,-32.963,-32.875,-32.759,-32.628,-32.506,-32.419,-32.381,-32.388,
--32.413,-32.420,-32.376,-32.265,-32.100,-31.915,-31.754,-31.653,-31.627,-31.665,-31.735,-31.799,-31.826,-31.800,-31.722,-31.602,
--31.453,-31.281,-31.090,-30.883,-30.666,-30.456,-30.272,-30.134,-30.053,-30.027,-30.046,-30.098,-30.175,-30.282,-30.431,-30.636,
--30.896,-31.193,-31.490,-31.738,-31.896,-31.943,-31.886,-31.764,-31.633,-31.547,-31.545,-31.638,-31.804,-32.005,-32.194,-32.335,
--32.412,-32.439,-32.446,-32.481,-32.586,-32.792,-33.105,-33.510,-33.971,-34.443,-34.883,-35.262,-35.571,-35.822,-36.043,-36.267,
--36.523,-36.826,-37.170,-37.538,-37.902,-38.235,-38.517,-38.742,-38.915,-39.051,-39.173,-39.301,-39.457,-39.656,-39.909,-40.222,
--40.591,-41.009,-41.459,-41.918,-42.360,-42.761,-43.098,-43.361,-43.546,-43.665,-43.739,-43.797,-43.869,-43.982,-44.150,-44.374,
--44.637,-44.916,-45.182,-45.412,-45.597,-45.741,-45.858,-45.968,-46.087,-46.223,-46.370,-46.518,-46.654,-46.769,-46.863,-46.940,
--47.008,-47.073,-47.136,-47.193,-47.239,-47.269,-47.284,-47.289,-47.293,-47.307,-47.337,-47.388,-47.461,-47.550,-47.648,-47.741,
--47.814,-47.848,-47.829,-47.751,-47.620,-47.456,-47.287,-47.140,-47.033,-46.968,-46.935,-46.911,-46.879,-46.829,-46.767,-46.707,
--46.665,-46.651,-46.655,-46.657,-46.629,-46.549,-46.408,-46.217,-46.001,-45.788,-45.603,-45.458,-45.350,-45.268,-45.200,-45.138,
--45.080,-45.029,-44.989,-44.961,-44.937,-44.910,-44.869,-44.808,-44.724,-44.619,-44.493,-44.348,-44.182,-43.998,-43.801,-43.604,
--43.422,-43.274,-43.170,-43.111,-43.084,-43.070,-43.050,-43.008,-42.941,-42.857,-42.768,-42.685,-42.613,-42.544,-42.468,-42.371,
--42.244,-42.087,-41.909,-41.724,-41.541,-41.367,-41.199,-41.029,-40.852,-40.665,-40.474,-40.289,-40.122,-39.980,-39.866,-39.771,
--39.684,-39.593,-39.488,-39.365,-39.224,-39.067,-38.898,-38.720,-38.537,-38.354,-38.175,-38.008,-37.856,-37.720,-37.594,-37.469,
--37.335,-37.185,-37.017,-36.836,-36.651,-36.472,-36.308,-36.161,-36.031,-35.913,-35.803,-35.695,-35.589,-35.481,-35.370,-35.255,
--35.132,-35.003,-34.869,-34.735,-34.607,-34.489,-34.384,-34.293,-34.211,-34.137,-34.066,-33.996,-33.926,-33.856,-33.786,-33.717,
--33.650,-33.587,-33.530,-33.481,-33.440,-33.404,-33.367,-33.323,-33.269,-33.206,-33.136,-33.068,-33.006,-32.954,-32.908,-32.861,
--32.804,-32.733,-32.649,-32.557,-32.469,-32.394,-32.338,-32.303,-32.282,-32.268,-32.253,-32.233,-32.205,-32.168,-32.125,-32.076,
--32.021,-31.962,-31.901,-31.839,-31.778,-31.720,-31.662,-31.603,-31.540,-31.473,-31.406,-31.343,-31.293,-31.260,-31.245,-31.243,
--31.247,-31.246,-31.232,-31.199,-31.149,-31.083,-31.009,-30.931,-30.853,-30.775,-30.698,-30.621,-30.542,-30.462,-30.378,-30.287,
--30.185,-30.068,-29.931,-29.773,-29.598,-29.414,-29.233,-29.068,-28.930,-28.824,-28.746,-28.684,-28.619,-28.532,-28.410,-28.249,
--28.058,-27.854,-27.659,-27.491,-27.356,-27.252,-27.171,-27.103,-27.043,-26.999,-26.982,-27.007,-27.082,-27.201,-27.345,-27.485,
--27.591,-27.641,-27.626,-27.550,-27.427,-27.269,-27.087,-26.885,-26.665,-26.431,-26.191,-25.959,-25.753,-25.582,-25.452,-25.357,
--25.285,-25.225,-25.169,-25.116,-25.069,-25.032,-25.003,-24.976,-24.939,-24.885,-24.807,-24.710,-24.603,-24.496,-24.398,-24.312,
--24.235,-24.164,-24.099,-24.044,-24.006,-23.989,-23.995,-24.016,-24.039,-24.050,-24.039,-24.006,-23.957,-23.903,-23.856,-23.822,
--23.798,-23.778,-23.756,-23.724,-23.684,-23.639,-23.593,-23.549,-23.507,-23.465,-23.420,-23.371,-23.318,-23.264,-23.215,-23.172,
--23.135,-23.101,-23.062,-23.008,-22.929,-22.818,-22.671,-22.491,-22.290,-22.085,-21.895,-21.737,-21.621,-21.546,-21.499,-21.464,
--21.425,-21.372,-21.302,-21.220,-21.130,-21.034,-20.929,-20.805,-20.655,-20.474,-20.269,-20.055,-19.852,-19.676,-19.536,-19.426,
--19.335,-19.244,-19.136,-19.004,-18.845,-18.667,-18.480,-18.294,-18.116,-17.947,-17.785,-17.625,-17.460,-17.284,-17.094,-16.891,
--16.683,-16.482,-16.301,-16.149,-16.028,-15.931,-15.845,-15.754,-15.645,-15.517,-15.374,-15.227,-15.084,-14.950,-14.817,-14.675,
--14.513,-14.325,-14.117,-13.901,-13.693,-13.503,-13.332,-13.173,-13.016,-12.853,-12.686,-12.528,-12.396,-12.307,-12.261,-12.249,
--12.245,-12.219,-12.144,-12.006,-11.806,-11.554,-11.270,-10.972,-10.676,-10.391,-10.122,-9.873,-9.647,-9.442,-9.254,-9.075,
--8.897,-8.712,-8.517,-8.319,-8.125,-7.947,-7.788,-7.648,-7.514,-7.372,-7.208,-7.016,-6.798,-6.565,-6.330,-6.105,
--5.898,-5.706,-5.526,-5.350,-5.170,-4.983,-4.785,-4.574,-4.348,-4.106,-3.846,-3.571,-3.287,-2.999,-2.711,-2.424,
--2.137,-1.845,-1.541,-1.223,-.893,-.555,-.216,.118,.441,.752,1.054,1.354,1.658,1.978,2.323,2.698,
-3.103,3.529,3.959,4.374,4.756,5.099,5.409,5.704,6.010,6.348,6.727,7.135,7.550,7.941,8.286,8.576,
-8.827,9.068,9.333,9.651,10.032,10.470,10.948,11.441,11.933,12.417,12.893,13.367,13.841,14.307,14.754,15.163,
-15.522,15.825,16.076,16.288,16.478,16.658,16.836,17.013,17.180,17.331,17.460,17.565,17.653,17.732,17.816,17.918,
-18.047,18.206,18.391,18.592,18.791,18.972,19.118,19.216,19.263,19.263,19.229,19.181,19.136,19.110,19.108,19.127,
-19.150,19.158,19.133,19.069,18.977,18.886,18.830,18.846,18.954,19.152,19.419,19.720,20.023,20.314,20.597,20.894,
-21.228,21.605,22.004,22.377,22.660,22.791,22.737,22.497,22.109,21.634,21.140,20.687,20.318,20.065,19.946,19.970,
-20.129,20.393,20.702,20.973,21.125,21.100,20.901,20.599,20.321,20.210,20.379,20.857,21.579,22.397,23.128,23.614,
-23.773,23.618,23.241,22.773,22.329,21.979,21.729,21.547,21.387,21.221,21.052,20.903,20.792,20.713,20.629,20.484,
-20.229,19.857,19.415,18.994,18.705,18.633,18.805,19.178,19.652,20.102,20.424,20.564,20.537,20.414,20.291,20.256,
-20.359,20.597,20.923,21.267,21.559,21.760,21.864,21.904,21.927,21.980,22.085,22.233,22.389,22.505,22.544,22.494,
-22.382,22.258,22.187,22.218,22.371,22.625,22.932,23.226,23.451,23.580,23.615,23.586,23.534,23.496,23.485,23.493,
-23.495,23.461,23.370,23.219,23.024,22.813,22.605,22.402,22.174,21.863,21.398,20.709,19.760,18.561,17.180,15.733,
-14.365,13.219,12.413,12.010,12.021,12.401,13.070,13.931,14.882,15.834,16.714,17.467,18.061,18.487,18.755,18.895,
-18.949,18.963,18.973,19.002,19.058,19.133,19.213,19.282,19.334,19.366,19.382,19.391,19.401,19.417,19.443,19.478,
-19.515,19.540,19.534,19.479,19.362,19.183,18.959,18.715,18.485,18.292,18.148,18.042,17.955,17.861,17.743,17.597,
-17.433,17.270,17.124,17.004,16.907,16.826,16.749,16.673,16.599,16.532,16.479,16.439,16.405,16.365,16.308,16.227,
-16.121,15.999,15.871,15.748,15.641,15.556,15.496,15.456,15.429,15.400,15.354,15.277,15.164,15.023,14.873,14.742,
-14.652,14.619,14.635,14.680,14.725,14.742,14.718,14.658,14.580,14.510,14.468,14.461,14.486,14.529,14.574,14.610,
-14.633,14.648,14.660,14.674,14.693,14.714,14.737,14.761,14.786,14.814,14.845,14.651,14.696,14.732,14.759,14.778,
-14.795,14.815,14.846,14.888,14.943,15.007,15.078,15.154,15.238,15.334,15.446,15.578,15.729,15.895,16.071,16.253,
-16.439,16.626,16.817,17.011,17.209,17.410,17.616,17.828,18.048,18.278,18.515,18.755,18.994,19.225,19.448,19.667,
-19.889,20.124,20.378,20.651,20.935,21.219,21.489,21.739,21.969,22.187,22.405,22.631,22.863,23.093,23.304,23.478,
-23.605,23.683,23.723,23.744,23.766,23.806,23.871,23.958,24.058,24.159,24.251,24.330,24.396,24.455,24.514,24.577,
-24.648,24.725,24.805,24.884,24.958,25.024,25.081,25.126,25.164,25.196,25.227,25.262,25.304,25.350,25.396,25.430,
-25.442,25.424,25.374,25.300,25.223,25.170,25.171,25.248,25.409,25.644,25.920,26.195,26.424,26.572,26.628,26.607,
-26.546,26.494,26.494,26.573,26.732,26.950,27.192,27.422,27.616,27.765,27.876,27.963,28.039,28.106,28.159,28.191,
-28.194,28.173,28.140,28.114,28.112,28.146,28.214,28.308,28.416,28.527,28.637,28.748,28.862,28.984,29.112,29.245,
-29.377,29.509,29.641,29.777,29.923,30.078,30.241,30.406,30.568,30.721,30.865,30.999,31.123,31.237,31.343,31.444,
-31.547,31.663,31.798,31.955,32.128,32.303,32.460,32.586,32.676,32.738,32.790,32.850,32.930,33.030,33.136,33.230,
-33.298,33.335,33.348,33.352,33.360,33.376,33.397,33.413,33.414,33.400,33.378,33.361,33.355,33.360,33.361,33.336,
-33.268,33.154,33.008,32.856,32.729,32.650,32.620,32.626,32.640,32.637,32.601,32.530,32.436,32.333,32.235,32.145,
-32.061,31.982,31.906,31.837,31.783,31.749,31.733,31.728,31.721,31.705,31.677,31.645,31.621,31.617,31.636,31.671,
-31.710,31.738,31.745,31.733,31.710,31.688,31.675,31.673,31.677,31.679,31.676,31.667,31.659,31.658,31.669,31.692,
-31.720,31.749,31.777,31.808,31.850,31.909,31.983,32.061,32.123,32.148,32.122,32.045,31.927,31.791,31.657,31.539,
-31.438,31.347,31.254,31.146,31.022,30.884,30.744,30.612,30.497,30.404,30.332,30.283,30.257,30.254,30.273,30.309,
-30.351,30.386,30.401,30.388,30.345,30.277,30.195,30.106,30.014,29.914,29.800,29.665,29.506,29.331,29.153,28.991,
-28.855,28.749,28.663,28.577,28.468,28.316,28.116,27.878,27.624,27.383,27.183,27.037,26.944,26.888,26.843,26.783,
-26.692,26.565,26.416,26.265,26.136,26.046,26.003,25.999,26.014,26.022,25.998,25.923,25.790,25.605,25.384,25.154,
-24.939,24.762,24.633,24.552,24.504,24.470,24.427,24.361,24.266,24.149,24.023,23.904,23.804,23.724,23.655,23.581,
-23.483,23.346,23.162,22.927,22.644,22.319,21.954,21.550,21.101,20.605,20.059,19.462,18.820,18.145,17.452,16.761,
-16.091,15.461,14.883,14.361,13.888,13.452,13.036,12.626,12.213,11.799,11.391,11.000,10.635,10.296,9.975,9.660,
-9.334,8.989,8.622,8.240,7.855,7.479,7.121,6.778,6.442,6.100,5.739,5.350,4.935,4.505,4.078,3.675,
-3.318,3.020,2.784,2.599,2.443,2.289,2.108,1.881,1.601,1.278,.932,.588,.268,-.019,-.277,-.523,
--.781,-1.071,-1.406,-1.785,-2.197,-2.626,-3.053,-3.463,-3.844,-4.189,-4.492,-4.752,-4.971,-5.155,-5.319,-5.483,
--5.667,-5.887,-6.145,-6.430,-6.719,-6.985,-7.204,-7.366,-7.476,-7.554,-7.628,-7.724,-7.859,-8.037,-8.254,-8.498,
--8.757,-9.026,-9.305,-9.599,-9.911,-10.242,-10.587,-10.935,-11.273,-11.593,-11.888,-12.161,-12.419,-12.673,-12.935,-13.213,
--13.509,-13.822,-14.144,-14.465,-14.776,-15.072,-15.354,-15.628,-15.905,-16.194,-16.502,-16.828,-17.166,-17.506,-17.840,-18.161,
--18.472,-18.778,-19.088,-19.406,-19.732,-20.063,-20.388,-20.700,-20.995,-21.276,-21.546,-21.812,-22.075,-22.336,-22.589,-22.834,
--23.069,-23.299,-23.529,-23.767,-24.014,-24.267,-24.519,-24.766,-25.004,-25.238,-25.476,-25.726,-25.993,-26.272,-26.552,-26.817,
--27.054,-27.258,-27.433,-27.593,-27.751,-27.920,-28.102,-28.295,-28.487,-28.669,-28.836,-28.988,-29.131,-29.272,-29.415,-29.561,
--29.707,-29.850,-29.989,-30.127,-30.266,-30.413,-30.569,-30.733,-30.900,-31.067,-31.230,-31.393,-31.557,-31.728,-31.905,-32.086,
--32.262,-32.427,-32.576,-32.710,-32.835,-32.960,-33.092,-33.231,-33.372,-33.505,-33.624,-33.723,-33.808,-33.885,-33.966,-34.054,
--34.149,-34.242,-34.321,-34.377,-34.406,-34.413,-34.411,-34.412,-34.425,-34.451,-34.487,-34.521,-34.545,-34.553,-34.542,-34.516,
--34.482,-34.446,-34.411,-34.383,-34.363,-34.352,-34.351,-34.361,-34.380,-34.404,-34.429,-34.450,-34.461,-34.458,-34.435,-34.389,
--34.320,-34.229,-34.126,-34.020,-33.928,-33.858,-33.815,-33.789,-33.764,-33.719,-33.639,-33.523,-33.386,-33.254,-33.158,-33.112,
--33.115,-33.142,-33.155,-33.119,-33.015,-32.850,-32.654,-32.472,-32.342,-32.288,-32.306,-32.371,-32.447,-32.499,-32.505,-32.457,
--32.361,-32.226,-32.062,-31.873,-31.663,-31.440,-31.215,-31.007,-30.837,-30.720,-30.660,-30.652,-30.685,-30.749,-30.838,-30.958,
--31.116,-31.318,-31.559,-31.818,-32.064,-32.261,-32.381,-32.415,-32.374,-32.289,-32.202,-32.150,-32.158,-32.232,-32.360,-32.516,
--32.674,-32.811,-32.922,-33.012,-33.104,-33.222,-33.390,-33.620,-33.908,-34.239,-34.586,-34.920,-35.221,-35.479,-35.702,-35.908,
--36.121,-36.364,-36.648,-36.972,-37.325,-37.686,-38.033,-38.348,-38.619,-38.840,-39.015,-39.151,-39.265,-39.375,-39.506,-39.687,
--39.944,-40.295,-40.746,-41.283,-41.877,-42.484,-43.055,-43.544,-43.921,-44.174,-44.312,-44.362,-44.365,-44.361,-44.389,-44.474,
--44.625,-44.836,-45.089,-45.359,-45.621,-45.854,-46.048,-46.201,-46.321,-46.422,-46.516,-46.616,-46.728,-46.854,-46.992,-47.134,
--47.270,-47.389,-47.484,-47.547,-47.578,-47.582,-47.567,-47.545,-47.524,-47.513,-47.516,-47.537,-47.578,-47.643,-47.732,-47.842,
--47.962,-48.074,-48.154,-48.180,-48.137,-48.027,-47.868,-47.690,-47.523,-47.392,-47.303,-47.249,-47.210,-47.168,-47.113,-47.048,
--46.988,-46.946,-46.933,-46.941,-46.951,-46.937,-46.876,-46.758,-46.589,-46.392,-46.192,-46.014,-45.870,-45.761,-45.679,-45.609,
--45.542,-45.473,-45.403,-45.335,-45.273,-45.216,-45.165,-45.117,-45.070,-45.021,-44.966,-44.897,-44.804,-44.677,-44.513,-44.313,
--44.092,-43.870,-43.669,-43.504,-43.381,-43.294,-43.226,-43.163,-43.094,-43.019,-42.944,-42.880,-42.834,-42.802,-42.774,-42.734,
--42.666,-42.562,-42.425,-42.265,-42.097,-41.933,-41.778,-41.630,-41.480,-41.321,-41.149,-40.967,-40.779,-40.597,-40.426,-40.270,
--40.128,-39.997,-39.872,-39.751,-39.631,-39.510,-39.382,-39.244,-39.092,-38.925,-38.749,-38.572,-38.406,-38.259,-38.134,-38.025,
--37.922,-37.811,-37.683,-37.534,-37.367,-37.191,-37.017,-36.854,-36.704,-36.570,-36.448,-36.335,-36.228,-36.125,-36.021,-35.913,
--35.798,-35.671,-35.535,-35.392,-35.250,-35.117,-35.002,-34.907,-34.832,-34.772,-34.722,-34.673,-34.621,-34.561,-34.491,-34.412,
--34.325,-34.234,-34.143,-34.059,-33.987,-33.928,-33.881,-33.842,-33.804,-33.761,-33.713,-33.662,-33.612,-33.569,-33.533,-33.501,
--33.466,-33.419,-33.356,-33.280,-33.199,-33.122,-33.060,-33.015,-32.984,-32.960,-32.934,-32.898,-32.853,-32.802,-32.751,-32.705,
--32.666,-32.629,-32.589,-32.539,-32.479,-32.410,-32.336,-32.264,-32.196,-32.134,-32.074,-32.015,-31.956,-31.898,-31.847,-31.808,
--31.784,-31.773,-31.771,-31.766,-31.749,-31.714,-31.659,-31.587,-31.504,-31.419,-31.339,-31.266,-31.200,-31.136,-31.068,-30.989,
--30.892,-30.772,-30.628,-30.462,-30.278,-30.088,-29.901,-29.732,-29.591,-29.486,-29.414,-29.366,-29.322,-29.264,-29.173,-29.041,
--28.871,-28.675,-28.474,-28.287,-28.126,-27.991,-27.876,-27.767,-27.658,-27.547,-27.447,-27.375,-27.347,-27.372,-27.449,-27.562,
--27.692,-27.818,-27.927,-28.014,-28.077,-28.116,-28.123,-28.088,-27.996,-27.837,-27.615,-27.344,-27.052,-26.768,-26.515,-26.304,
--26.132,-25.988,-25.858,-25.736,-25.624,-25.530,-25.462,-25.422,-25.404,-25.391,-25.366,-25.317,-25.239,-25.139,-25.028,-24.921,
--24.825,-24.743,-24.674,-24.614,-24.561,-24.517,-24.485,-24.467,-24.460,-24.459,-24.454,-24.438,-24.407,-24.363,-24.312,-24.260,
--24.212,-24.170,-24.133,-24.097,-24.061,-24.023,-23.985,-23.947,-23.910,-23.874,-23.837,-23.798,-23.755,-23.712,-23.668,-23.626,
--23.583,-23.535,-23.476,-23.398,-23.294,-23.160,-22.996,-22.804,-22.594,-22.376,-22.164,-21.972,-21.809,-21.682,-21.590,-21.528,
--21.488,-21.461,-21.443,-21.428,-21.412,-21.390,-21.352,-21.286,-21.182,-21.032,-20.840,-20.617,-20.384,-20.162,-19.969,-19.811,
--19.685,-19.576,-19.467,-19.343,-19.195,-19.025,-18.842,-18.658,-18.485,-18.332,-18.200,-18.084,-17.975,-17.862,-17.733,-17.582,
--17.407,-17.212,-17.008,-16.808,-16.622,-16.457,-16.314,-16.186,-16.065,-15.944,-15.818,-15.687,-15.555,-15.422,-15.288,-15.146,
--14.988,-14.812,-14.618,-14.415,-14.215,-14.030,-13.867,-13.721,-13.583,-13.441,-13.288,-13.123,-12.955,-12.798,-12.662,-12.552,
--12.461,-12.375,-12.276,-12.149,-11.987,-11.790,-11.566,-11.324,-11.073,-10.822,-10.575,-10.338,-10.117,-9.913,-9.729,-9.560,
--9.396,-9.228,-9.047,-8.853,-8.651,-8.450,-8.261,-8.089,-7.932,-7.779,-7.618,-7.438,-7.235,-7.014,-6.784,-6.557,
--6.340,-6.135,-5.939,-5.745,-5.546,-5.340,-5.127,-4.908,-4.683,-4.453,-4.215,-3.968,-3.712,-3.449,-3.183,-2.915,
--2.642,-2.361,-2.065,-1.750,-1.417,-1.073,-.727,-.390,-.067,.240,.536,.831,1.133,1.450,1.785,2.137,
-2.505,2.886,3.275,3.669,4.060,4.444,4.818,5.183,5.546,5.917,6.304,6.711,7.133,7.554,7.957,8.322,
-8.640,8.915,9.163,9.407,9.672,9.977,10.330,10.727,11.156,11.600,12.048,12.490,12.925,13.353,13.781,14.211,
-14.645,15.079,15.505,15.911,16.280,16.599,16.855,17.045,17.175,17.259,17.318,17.374,17.444,17.537,17.656,17.796,
-17.948,18.105,18.262,18.414,18.555,18.675,18.758,18.786,18.744,18.625,18.437,18.200,17.945,17.705,17.503,17.350,
-17.236,17.143,17.052,16.957,16.876,16.848,16.926,17.161,17.578,18.166,18.876,19.629,20.341,20.949,21.426,21.790,
-22.084,22.359,22.647,22.942,23.205,23.377,23.403,23.257,22.953,22.539,22.084,21.650,21.283,21.004,20.815,20.714,
-20.697,20.764,20.907,21.097,21.288,21.418,21.438,21.335,21.152,20.981,20.942,21.137,21.614,22.339,23.205,24.064,
-24.776,25.251,25.475,25.502,25.423,25.324,25.254,25.217,25.177,25.091,24.927,24.683,24.371,24.008,23.588,23.081,
-22.445,21.653,20.723,19.729,18.800,18.078,17.679,17.649,17.947,18.453,19.011,19.478,19.770,19.884,19.891,19.902,
-20.019,20.297,20.722,21.218,21.674,21.988,22.103,22.025,21.819,21.583,21.417,21.383,21.495,21.712,21.965,22.180,
-22.309,22.341,22.307,22.261,22.257,22.328,22.478,22.676,22.878,23.037,23.128,23.146,23.113,23.061,23.021,23.008,
-23.019,23.032,23.018,22.954,22.826,22.642,22.420,22.184,21.947,21.701,21.417,21.045,20.531,19.837,18.958,17.935,
-16.852,15.824,14.972,14.395,14.146,14.222,14.568,15.091,15.685,16.253,16.729,17.082,17.313,17.451,17.532,17.593,
-17.661,17.748,17.855,17.975,18.097,18.209,18.305,18.383,18.443,18.488,18.519,18.537,18.544,18.541,18.533,18.522,
-18.511,18.500,18.479,18.437,18.359,18.237,18.070,17.869,17.654,17.448,17.269,17.125,17.015,16.926,16.847,16.770,
-16.694,16.622,16.559,16.506,16.459,16.408,16.344,16.262,16.166,16.066,15.974,15.900,15.847,15.810,15.779,15.745,
-15.698,15.635,15.558,15.470,15.378,15.288,15.206,15.135,15.079,15.037,15.001,14.961,14.907,14.830,14.729,14.612,
-14.496,14.397,14.327,14.289,14.277,14.278,14.280,14.274,14.262,14.251,14.251,14.265,14.291,14.321,14.344,14.352,
-14.343,14.324,14.305,14.296,14.305,14.332,14.375,14.428,14.485,14.544,14.600,14.651,14.329,14.388,14.446,14.499,
-14.546,14.589,14.632,14.680,14.737,14.805,14.881,14.962,15.045,15.130,15.222,15.326,15.448,15.594,15.765,15.961,
-16.177,16.408,16.645,16.884,17.118,17.345,17.564,17.779,17.993,18.209,18.431,18.657,18.884,19.107,19.325,19.539,
-19.755,19.981,20.225,20.489,20.770,21.058,21.344,21.618,21.876,22.123,22.364,22.607,22.852,23.092,23.314,23.503,
-23.646,23.742,23.797,23.826,23.848,23.876,23.917,23.968,24.022,24.073,24.115,24.149,24.182,24.220,24.271,24.335,
-24.410,24.488,24.565,24.635,24.697,24.752,24.804,24.856,24.911,24.971,25.035,25.103,25.170,25.232,25.278,25.300,
-25.288,25.239,25.158,25.061,24.973,24.921,24.930,25.015,25.177,25.396,25.642,25.874,26.056,26.165,26.195,26.161,
-26.095,26.036,26.021,26.074,26.201,26.391,26.617,26.851,27.067,27.251,27.397,27.511,27.601,27.671,27.725,27.760,
-27.776,27.775,27.766,27.762,27.775,27.814,27.880,27.965,28.060,28.152,28.236,28.312,28.386,28.465,28.553,28.653,
-28.761,28.873,28.986,29.103,29.226,29.361,29.514,29.687,29.875,30.073,30.271,30.458,30.625,30.767,30.883,30.981,
-31.072,31.172,31.295,31.447,31.626,31.818,32.004,32.163,32.284,32.369,32.429,32.484,32.552,32.642,32.750,32.864,
-32.968,33.050,33.104,33.135,33.152,33.160,33.162,33.154,33.133,33.099,33.060,33.028,33.012,33.014,33.022,33.015,
-32.970,32.873,32.729,32.561,32.401,32.282,32.221,32.217,32.247,32.281,32.291,32.261,32.194,32.105,32.012,31.928,
-31.859,31.799,31.742,31.685,31.628,31.576,31.534,31.503,31.477,31.450,31.415,31.374,31.334,31.307,31.303,31.326,
-31.368,31.417,31.459,31.484,31.491,31.486,31.478,31.473,31.472,31.470,31.462,31.447,31.429,31.414,31.414,31.431,
-31.464,31.508,31.553,31.597,31.641,31.691,31.753,31.825,31.897,31.952,31.971,31.942,31.864,31.750,31.622,31.498,
-31.390,31.299,31.215,31.123,31.015,30.890,30.757,30.630,30.522,30.436,30.369,30.313,30.259,30.204,30.150,30.104,
-30.071,30.051,30.039,30.021,29.988,29.932,29.855,29.764,29.668,29.571,29.470,29.356,29.222,29.061,28.883,28.704,
-28.546,28.429,28.360,28.327,28.306,28.262,28.168,28.009,27.791,27.537,27.282,27.057,26.882,26.757,26.670,26.596,
-26.512,26.403,26.268,26.115,25.963,25.831,25.730,25.664,25.627,25.604,25.579,25.533,25.453,25.332,25.170,24.975,
-24.762,24.549,24.354,24.192,24.068,23.982,23.922,23.872,23.817,23.744,23.648,23.531,23.402,23.269,23.141,23.022,
-22.913,22.807,22.693,22.557,22.383,22.157,21.867,21.510,21.089,20.616,20.105,19.573,19.031,18.484,17.931,17.369,
-16.793,16.205,15.613,15.027,14.461,13.920,13.408,12.920,12.448,11.988,11.541,11.111,10.707,10.335,9.996,9.682,
-9.378,9.065,8.730,8.365,7.972,7.560,7.140,6.723,6.314,5.914,5.517,5.117,4.709,4.294,3.877,3.469,
-3.084,2.737,2.440,2.197,2.003,1.845,1.701,1.546,1.363,1.140,.879,.594,.302,.021,-.243,-.492,
--.739,-1.003,-1.302,-1.643,-2.026,-2.443,-2.877,-3.316,-3.744,-4.153,-4.533,-4.877,-5.179,-5.438,-5.655,-5.842,
--6.017,-6.199,-6.402,-6.633,-6.881,-7.128,-7.351,-7.530,-7.660,-7.750,-7.819,-7.896,-8.004,-8.156,-8.354,-8.593,
--8.859,-9.142,-9.436,-9.741,-10.060,-10.394,-10.740,-11.092,-11.440,-11.772,-12.082,-12.364,-12.622,-12.860,-13.088,-13.316,
--13.555,-13.812,-14.091,-14.391,-14.709,-15.037,-15.365,-15.687,-16.003,-16.316,-16.632,-16.959,-17.300,-17.652,-18.009,-18.362,
--18.702,-19.026,-19.336,-19.639,-19.942,-20.250,-20.561,-20.871,-21.173,-21.461,-21.733,-21.991,-22.240,-22.485,-22.730,-22.976,
--23.223,-23.471,-23.723,-23.980,-24.243,-24.511,-24.779,-25.041,-25.292,-25.530,-25.762,-25.996,-26.241,-26.502,-26.777,-27.054,
--27.319,-27.560,-27.771,-27.955,-28.125,-28.295,-28.477,-28.674,-28.883,-29.091,-29.289,-29.468,-29.628,-29.773,-29.912,-30.049,
--30.188,-30.327,-30.462,-30.592,-30.720,-30.849,-30.988,-31.141,-31.306,-31.480,-31.654,-31.824,-31.985,-32.141,-32.296,-32.456,
--32.623,-32.795,-32.967,-33.133,-33.287,-33.430,-33.562,-33.687,-33.807,-33.922,-34.029,-34.127,-34.218,-34.305,-34.396,-34.497,
--34.608,-34.724,-34.834,-34.924,-34.985,-35.014,-35.017,-35.007,-35.001,-35.008,-35.032,-35.068,-35.107,-35.136,-35.148,-35.142,
--35.123,-35.098,-35.073,-35.054,-35.039,-35.027,-35.014,-34.999,-34.983,-34.969,-34.962,-34.964,-34.974,-34.987,-34.994,-34.987,
--34.957,-34.900,-34.819,-34.723,-34.627,-34.545,-34.490,-34.462,-34.451,-34.441,-34.409,-34.341,-34.235,-34.103,-33.972,-33.867,
--33.808,-33.795,-33.812,-33.827,-33.808,-33.732,-33.599,-33.426,-33.247,-33.098,-33.005,-32.976,-33.000,-33.053,-33.107,-33.137,
--33.130,-33.080,-32.988,-32.857,-32.693,-32.499,-32.282,-32.055,-31.834,-31.636,-31.479,-31.372,-31.317,-31.310,-31.343,-31.411,
--31.512,-31.646,-31.812,-32.006,-32.216,-32.423,-32.606,-32.745,-32.830,-32.860,-32.848,-32.813,-32.778,-32.763,-32.781,-32.837,
--32.927,-33.042,-33.173,-33.310,-33.448,-33.591,-33.742,-33.908,-34.097,-34.309,-34.539,-34.779,-35.019,-35.250,-35.467,-35.673,
--35.877,-36.089,-36.320,-36.573,-36.849,-37.142,-37.446,-37.752,-38.053,-38.342,-38.613,-38.858,-39.072,-39.252,-39.404,-39.546,
--39.703,-39.909,-40.192,-40.574,-41.055,-41.618,-42.229,-42.841,-43.409,-43.899,-44.288,-44.571,-44.758,-44.871,-44.934,-44.974,
--45.016,-45.082,-45.184,-45.329,-45.516,-45.734,-45.965,-46.189,-46.388,-46.553,-46.683,-46.789,-46.887,-46.997,-47.129,-47.287,
--47.460,-47.629,-47.771,-47.869,-47.917,-47.919,-47.893,-47.858,-47.832,-47.825,-47.836,-47.858,-47.880,-47.899,-47.915,-47.938,
--47.977,-48.037,-48.112,-48.188,-48.243,-48.257,-48.222,-48.141,-48.032,-47.916,-47.811,-47.727,-47.660,-47.599,-47.533,-47.455,
--47.367,-47.283,-47.216,-47.174,-47.156,-47.149,-47.134,-47.093,-47.018,-46.909,-46.778,-46.640,-46.511,-46.397,-46.299,-46.212,
--46.128,-46.041,-45.949,-45.853,-45.755,-45.658,-45.565,-45.478,-45.399,-45.331,-45.275,-45.228,-45.181,-45.123,-45.042,-44.927,
--44.776,-44.595,-44.398,-44.200,-44.014,-43.844,-43.691,-43.549,-43.412,-43.281,-43.159,-43.055,-42.973,-42.915,-42.872,-42.834,
--42.785,-42.716,-42.625,-42.519,-42.407,-42.298,-42.197,-42.100,-42.001,-41.889,-41.758,-41.608,-41.442,-41.268,-41.092,-40.917,
--40.745,-40.576,-40.410,-40.252,-40.104,-39.971,-39.850,-39.737,-39.621,-39.493,-39.351,-39.194,-39.033,-38.879,-38.741,-38.622,
--38.518,-38.417,-38.308,-38.182,-38.035,-37.873,-37.704,-37.537,-37.379,-37.234,-37.100,-36.974,-36.854,-36.739,-36.628,-36.519,
--36.410,-36.298,-36.179,-36.053,-35.922,-35.792,-35.669,-35.561,-35.470,-35.396,-35.335,-35.283,-35.234,-35.183,-35.129,-35.067,
--34.996,-34.915,-34.825,-34.729,-34.633,-34.544,-34.466,-34.401,-34.349,-34.304,-34.264,-34.224,-34.187,-34.154,-34.126,-34.105,
--34.085,-34.060,-34.023,-33.972,-33.909,-33.843,-33.785,-33.741,-33.715,-33.698,-33.681,-33.653,-33.606,-33.543,-33.471,-33.401,
--33.343,-33.297,-33.259,-33.219,-33.166,-33.095,-33.010,-32.917,-32.829,-32.753,-32.692,-32.642,-32.594,-32.540,-32.478,-32.410,
--32.345,-32.293,-32.260,-32.246,-32.243,-32.237,-32.215,-32.170,-32.100,-32.014,-31.922,-31.836,-31.763,-31.704,-31.652,-31.595,
--31.522,-31.424,-31.298,-31.147,-30.979,-30.804,-30.634,-30.478,-30.345,-30.237,-30.154,-30.089,-30.030,-29.965,-29.880,-29.768,
--29.628,-29.469,-29.302,-29.143,-29.002,-28.882,-28.776,-28.674,-28.564,-28.442,-28.310,-28.182,-28.074,-27.999,-27.964,-27.967,
--27.997,-28.046,-28.105,-28.177,-28.263,-28.368,-28.486,-28.600,-28.686,-28.715,-28.668,-28.539,-28.341,-28.099,-27.843,-27.596,
--27.370,-27.162,-26.963,-26.761,-26.556,-26.355,-26.174,-26.030,-25.931,-25.873,-25.843,-25.819,-25.783,-25.724,-25.642,-25.546,
--25.448,-25.358,-25.281,-25.214,-25.156,-25.100,-25.048,-25.001,-24.960,-24.927,-24.900,-24.873,-24.841,-24.801,-24.750,-24.692,
--24.632,-24.574,-24.522,-24.476,-24.437,-24.402,-24.371,-24.342,-24.315,-24.288,-24.262,-24.235,-24.204,-24.169,-24.130,-24.083,
--24.026,-23.956,-23.869,-23.763,-23.637,-23.491,-23.330,-23.160,-22.984,-22.808,-22.635,-22.466,-22.303,-22.146,-21.998,-21.860,
--21.738,-21.633,-21.549,-21.488,-21.448,-21.423,-21.405,-21.379,-21.331,-21.250,-21.132,-20.979,-20.803,-20.617,-20.438,-20.275,
--20.129,-19.996,-19.863,-19.720,-19.559,-19.380,-19.190,-19.002,-18.827,-18.676,-18.553,-18.455,-18.374,-18.301,-18.222,-18.128,
--18.013,-17.873,-17.712,-17.535,-17.349,-17.161,-16.974,-16.790,-16.608,-16.429,-16.251,-16.077,-15.910,-15.752,-15.601,-15.454,
--15.304,-15.146,-14.978,-14.804,-14.632,-14.473,-14.333,-14.213,-14.106,-14.000,-13.883,-13.744,-13.582,-13.402,-13.214,-13.027,
--12.847,-12.675,-12.508,-12.342,-12.174,-12.007,-11.840,-11.677,-11.516,-11.353,-11.184,-11.004,-10.812,-10.613,-10.411,-10.210,
--10.012,-9.815,-9.614,-9.409,-9.199,-8.989,-8.785,-8.593,-8.412,-8.236,-8.056,-7.864,-7.656,-7.433,-7.206,-6.984,
--6.774,-6.578,-6.389,-6.198,-5.996,-5.779,-5.549,-5.312,-5.075,-4.841,-4.609,-4.375,-4.132,-3.879,-3.615,-3.343,
--3.067,-2.786,-2.496,-2.191,-1.868,-1.526,-1.173,-.821,-.483,-.168,.123,.395,.662,.935,1.224,1.534,
-1.864,2.212,2.576,2.955,3.349,3.758,4.178,4.604,5.028,5.443,5.844,6.234,6.615,6.993,7.368,7.740,
-8.103,8.448,8.772,9.075,9.364,9.650,9.947,10.265,10.608,10.972,11.346,11.718,12.080,12.429,12.772,13.124,
-13.504,13.926,14.397,14.905,15.426,15.924,16.359,16.703,16.941,17.084,17.161,17.211,17.274,17.379,17.533,17.726,
-17.931,18.120,18.266,18.352,18.376,18.339,18.246,18.098,17.894,17.634,17.322,16.974,16.616,16.280,15.997,15.783,
-15.639,15.547,15.484,15.434,15.404,15.429,15.568,15.890,16.447,17.249,18.258,19.383,20.504,21.503,22.293,22.841,
-23.171,23.348,23.447,23.529,23.618,23.697,23.728,23.672,23.508,23.250,22.932,22.602,22.296,22.027,21.789,21.564,
-21.343,21.132,20.953,20.835,20.790,20.806,20.846,20.863,20.826,20.743,20.665,20.674,20.854,21.256,21.872,22.633,
-23.434,24.162,24.740,25.142,25.395,25.556,25.683,25.804,25.916,25.989,25.989,25.897,25.721,25.482,25.198,24.860,
-24.433,23.861,23.100,22.150,21.074,19.998,19.075,18.443,18.180,18.272,18.623,19.085,19.510,19.797,19.927,19.951,
-19.971,20.082,20.339,20.726,21.164,21.541,21.757,21.757,21.556,21.236,20.910,20.690,20.650,20.800,21.098,21.459,
-21.797,22.044,22.175,22.206,22.179,22.146,22.147,22.195,22.280,22.377,22.454,22.490,22.479,22.430,22.364,22.301,
-22.257,22.237,22.232,22.225,22.198,22.132,22.019,21.858,21.658,21.429,21.181,20.913,20.614,20.264,19.843,19.340,
-18.765,18.150,17.552,17.034,16.653,16.442,16.399,16.486,16.640,16.793,16.885,16.889,16.811,16.683,16.557,16.482,
-16.491,16.591,16.767,16.987,17.213,17.415,17.577,17.698,17.788,17.859,17.923,17.980,18.026,18.050,18.043,18.003,
-17.930,17.833,17.719,17.594,17.459,17.312,17.152,16.978,16.797,16.617,16.450,16.303,16.179,16.079,16.000,15.938,
-15.896,15.874,15.873,15.892,15.920,15.944,15.949,15.922,15.861,15.772,15.665,15.557,15.459,15.376,15.307,15.247,
-15.189,15.129,15.064,14.996,14.926,14.859,14.796,14.740,14.696,14.666,14.650,14.647,14.648,14.641,14.612,14.554,
-14.464,14.348,14.220,14.095,13.989,13.910,13.864,13.850,13.863,13.898,13.948,14.005,14.062,14.109,14.138,14.148,
-14.138,14.117,14.092,14.073,14.067,14.074,14.092,14.118,14.150,14.185,14.227,14.275,14.329,14.012,14.075,14.144,
-14.212,14.273,14.327,14.379,14.438,14.508,14.594,14.692,14.801,14.914,15.029,15.147,15.273,15.416,15.581,15.774,
-15.995,16.238,16.495,16.757,17.014,17.260,17.494,17.718,17.938,18.161,18.390,18.626,18.864,19.099,19.324,19.536,
-19.738,19.935,20.137,20.351,20.581,20.828,21.087,21.353,21.623,21.897,22.176,22.461,22.747,23.024,23.276,23.487,
-23.644,23.747,23.804,23.833,23.852,23.876,23.910,23.950,23.985,24.004,24.004,23.991,23.978,23.981,24.013,24.077,
-24.166,24.264,24.356,24.429,24.482,24.518,24.548,24.585,24.637,24.708,24.794,24.887,24.976,25.051,25.100,25.114,
-25.089,25.026,24.934,24.829,24.736,24.683,24.692,24.773,24.924,25.122,25.336,25.527,25.666,25.734,25.734,25.685,
-25.616,25.561,25.548,25.591,25.695,25.847,26.030,26.227,26.420,26.599,26.761,26.902,27.022,27.120,27.194,27.243,
-27.271,27.284,27.295,27.316,27.358,27.426,27.517,27.620,27.721,27.808,27.874,27.919,27.952,27.984,28.026,28.086,
-28.164,28.258,28.361,28.469,28.580,28.698,28.828,28.976,29.147,29.341,29.551,29.766,29.973,30.158,30.313,30.439,
-30.543,30.641,30.753,30.894,31.069,31.273,31.489,31.694,31.868,32.001,32.094,32.161,32.221,32.291,32.378,32.482,
-32.591,32.693,32.778,32.844,32.891,32.924,32.944,32.950,32.937,32.906,32.859,32.808,32.766,32.742,32.736,32.736,
-32.721,32.671,32.575,32.437,32.280,32.132,32.020,31.959,31.944,31.954,31.965,31.955,31.914,31.847,31.767,31.691,
-31.628,31.580,31.541,31.501,31.455,31.402,31.348,31.298,31.255,31.220,31.188,31.158,31.131,31.111,31.106,31.119,
-31.150,31.193,31.239,31.276,31.302,31.316,31.325,31.334,31.343,31.350,31.348,31.335,31.311,31.283,31.265,31.264,
-31.286,31.328,31.378,31.426,31.467,31.501,31.535,31.578,31.629,31.681,31.719,31.725,31.688,31.607,31.496,31.375,
-31.264,31.171,31.095,31.024,30.942,30.841,30.722,30.596,30.478,30.380,30.305,30.245,30.183,30.107,30.009,29.896,
-29.780,29.678,29.600,29.548,29.511,29.477,29.432,29.371,29.294,29.208,29.118,29.023,28.921,28.803,28.668,28.521,
-28.379,28.262,28.185,28.154,28.155,28.161,28.137,28.053,27.894,27.668,27.396,27.113,26.851,26.629,26.453,26.312,
-26.191,26.073,25.949,25.818,25.689,25.569,25.467,25.382,25.312,25.248,25.181,25.105,25.015,24.906,24.779,24.630,
-24.462,24.279,24.089,23.905,23.738,23.601,23.498,23.427,23.379,23.341,23.298,23.237,23.151,23.040,22.906,22.757,
-22.601,22.442,22.283,22.121,21.947,21.749,21.513,21.228,20.887,20.494,20.058,19.593,19.114,18.631,18.146,17.654,
-17.147,16.615,16.057,15.477,14.887,14.303,13.737,13.196,12.683,12.193,11.723,11.270,10.838,10.432,10.055,9.710,
-9.390,9.085,8.779,8.457,8.107,7.726,7.314,6.876,6.422,5.959,5.497,5.041,4.596,4.165,3.748,3.349,
-2.969,2.612,2.285,1.992,1.739,1.525,1.344,1.184,1.028,.861,.669,.450,.206,-.053,-.318,-.583,
--.849,-1.123,-1.414,-1.729,-2.073,-2.443,-2.834,-3.237,-3.645,-4.053,-4.456,-4.846,-5.216,-5.555,-5.856,-6.116,
--6.339,-6.537,-6.725,-6.916,-7.113,-7.311,-7.495,-7.652,-7.771,-7.855,-7.917,-7.980,-8.068,-8.199,-8.380,-8.609,
--8.877,-9.172,-9.486,-9.814,-10.156,-10.510,-10.873,-11.237,-11.592,-11.928,-12.237,-12.518,-12.774,-13.010,-13.236,-13.457,
--13.680,-13.910,-14.154,-14.415,-14.699,-15.007,-15.336,-15.678,-16.027,-16.376,-16.723,-17.070,-17.421,-17.781,-18.151,-18.526,
--18.899,-19.261,-19.604,-19.926,-20.230,-20.522,-20.808,-21.095,-21.381,-21.666,-21.947,-22.220,-22.484,-22.741,-22.992,-23.238,
--23.480,-23.719,-23.957,-24.198,-24.446,-24.706,-24.977,-25.255,-25.533,-25.805,-26.065,-26.313,-26.554,-26.793,-27.037,-27.287,
--27.537,-27.781,-28.009,-28.219,-28.412,-28.596,-28.782,-28.978,-29.186,-29.402,-29.617,-29.822,-30.011,-30.184,-30.347,-30.505,
--30.663,-30.820,-30.973,-31.116,-31.248,-31.370,-31.493,-31.625,-31.774,-31.943,-32.126,-32.314,-32.495,-32.661,-32.812,-32.953,
--33.093,-33.240,-33.397,-33.564,-33.734,-33.898,-34.049,-34.182,-34.296,-34.393,-34.475,-34.547,-34.613,-34.680,-34.754,-34.844,
--34.951,-35.075,-35.209,-35.341,-35.456,-35.544,-35.600,-35.628,-35.638,-35.640,-35.645,-35.656,-35.671,-35.685,-35.692,-35.691,
--35.686,-35.683,-35.688,-35.705,-35.728,-35.751,-35.761,-35.749,-35.714,-35.659,-35.595,-35.537,-35.495,-35.476,-35.476,-35.485,
--35.491,-35.479,-35.441,-35.377,-35.293,-35.202,-35.120,-35.059,-35.021,-35.002,-34.990,-34.967,-34.922,-34.849,-34.754,-34.653,
--34.565,-34.505,-34.478,-34.477,-34.483,-34.471,-34.422,-34.327,-34.190,-34.029,-33.871,-33.741,-33.655,-33.620,-33.629,-33.666,
--33.711,-33.743,-33.746,-33.707,-33.621,-33.488,-33.312,-33.103,-32.874,-32.641,-32.420,-32.226,-32.071,-31.963,-31.908,-31.906,
--31.956,-32.053,-32.190,-32.354,-32.531,-32.705,-32.862,-32.991,-33.088,-33.156,-33.200,-33.230,-33.254,-33.280,-33.313,-33.355,
--33.408,-33.475,-33.556,-33.652,-33.762,-33.885,-34.020,-34.165,-34.321,-34.487,-34.664,-34.853,-35.052,-35.260,-35.473,-35.691,
--35.912,-36.136,-36.360,-36.584,-36.804,-37.019,-37.230,-37.441,-37.660,-37.895,-38.154,-38.435,-38.731,-39.029,-39.309,-39.560,
--39.778,-39.973,-40.165,-40.381,-40.646,-40.976,-41.376,-41.837,-42.343,-42.873,-43.403,-43.915,-44.391,-44.814,-45.170,-45.447,
--45.640,-45.756,-45.813,-45.840,-45.868,-45.926,-46.031,-46.182,-46.365,-46.557,-46.734,-46.884,-47.006,-47.113,-47.224,-47.355,
--47.511,-47.684,-47.853,-47.993,-48.086,-48.126,-48.123,-48.099,-48.081,-48.089,-48.129,-48.193,-48.261,-48.310,-48.326,-48.305,
--48.258,-48.205,-48.167,-48.157,-48.177,-48.217,-48.262,-48.296,-48.310,-48.302,-48.275,-48.235,-48.184,-48.124,-48.050,-47.962,
--47.860,-47.751,-47.646,-47.556,-47.487,-47.439,-47.406,-47.377,-47.343,-47.296,-47.236,-47.166,-47.088,-47.008,-46.925,-46.838,
--46.745,-46.644,-46.536,-46.424,-46.309,-46.195,-46.080,-45.966,-45.852,-45.743,-45.641,-45.550,-45.473,-45.406,-45.343,-45.274,
--45.193,-45.093,-44.974,-44.838,-44.689,-44.530,-44.364,-44.190,-44.010,-43.830,-43.656,-43.497,-43.359,-43.245,-43.149,-43.062,
--42.973,-42.876,-42.772,-42.666,-42.568,-42.486,-42.420,-42.365,-42.309,-42.239,-42.147,-42.034,-41.904,-41.769,-41.634,-41.503,
--41.371,-41.233,-41.083,-40.922,-40.756,-40.595,-40.449,-40.321,-40.207,-40.099,-39.984,-39.855,-39.711,-39.558,-39.407,-39.267,
--39.142,-39.027,-38.915,-38.796,-38.663,-38.515,-38.358,-38.199,-38.047,-37.904,-37.771,-37.643,-37.516,-37.388,-37.261,-37.137,
--37.018,-36.906,-36.799,-36.696,-36.595,-36.495,-36.399,-36.307,-36.222,-36.142,-36.066,-35.991,-35.914,-35.838,-35.762,-35.691,
--35.624,-35.560,-35.496,-35.428,-35.353,-35.272,-35.189,-35.109,-35.034,-34.967,-34.907,-34.854,-34.806,-34.764,-34.730,-34.704,
--34.687,-34.673,-34.655,-34.626,-34.582,-34.526,-34.465,-34.410,-34.370,-34.347,-34.337,-34.327,-34.307,-34.269,-34.212,-34.145,
--34.078,-34.022,-33.979,-33.946,-33.910,-33.860,-33.787,-33.694,-33.590,-33.487,-33.397,-33.326,-33.268,-33.215,-33.153,-33.077,
--32.988,-32.896,-32.814,-32.755,-32.724,-32.714,-32.713,-32.705,-32.676,-32.623,-32.548,-32.463,-32.379,-32.305,-32.243,-32.185,
--32.121,-32.038,-31.931,-31.800,-31.650,-31.494,-31.342,-31.204,-31.086,-30.987,-30.903,-30.829,-30.758,-30.682,-30.597,-30.499,
--30.389,-30.270,-30.146,-30.026,-29.912,-29.807,-29.707,-29.605,-29.494,-29.369,-29.233,-29.094,-28.964,-28.857,-28.780,-28.730,
--28.701,-28.682,-28.664,-28.647,-28.638,-28.650,-28.691,-28.764,-28.859,-28.954,-29.026,-29.053,-29.026,-28.949,-28.834,-28.698,
--28.554,-28.401,-28.234,-28.040,-27.813,-27.556,-27.283,-27.017,-26.783,-26.596,-26.460,-26.369,-26.304,-26.249,-26.191,-26.124,
--26.049,-25.973,-25.901,-25.834,-25.771,-25.709,-25.646,-25.582,-25.520,-25.463,-25.411,-25.364,-25.317,-25.267,-25.208,-25.140,
--25.066,-24.990,-24.919,-24.856,-24.803,-24.760,-24.726,-24.700,-24.678,-24.661,-24.646,-24.632,-24.616,-24.595,-24.564,-24.519,
--24.457,-24.375,-24.271,-24.146,-24.004,-23.852,-23.697,-23.547,-23.408,-23.281,-23.164,-23.051,-22.936,-22.810,-22.670,-22.516,
--22.352,-22.184,-22.023,-21.875,-21.746,-21.638,-21.549,-21.474,-21.404,-21.332,-21.252,-21.161,-21.060,-20.949,-20.835,-20.717,
--20.597,-20.470,-20.333,-20.180,-20.010,-19.826,-19.637,-19.453,-19.284,-19.138,-19.018,-18.922,-18.843,-18.770,-18.696,-18.610,
--18.510,-18.393,-18.261,-18.116,-17.960,-17.796,-17.622,-17.438,-17.242,-17.036,-16.821,-16.604,-16.390,-16.187,-15.995,-15.817,
--15.646,-15.477,-15.308,-15.138,-14.971,-14.816,-14.679,-14.563,-14.467,-14.380,-14.289,-14.184,-14.055,-13.901,-13.724,-13.533,
--13.332,-13.130,-12.929,-12.734,-12.549,-12.380,-12.233,-12.111,-12.012,-11.928,-11.844,-11.744,-11.614,-11.446,-11.242,-11.006,
--10.751,-10.488,-10.226,-9.973,-9.734,-9.514,-9.313,-9.130,-8.959,-8.789,-8.609,-8.408,-8.185,-7.943,-7.695,-7.456,
--7.239,-7.049,-6.878,-6.714,-6.540,-6.343,-6.120,-5.875,-5.619,-5.361,-5.105,-4.849,-4.586,-4.308,-4.014,-3.708,
--3.396,-3.089,-2.790,-2.496,-2.199,-1.889,-1.559,-1.211,-.855,-.505,-.177,.125,.401,.661,.920,1.189,
-1.476,1.784,2.112,2.456,2.819,3.200,3.603,4.025,4.459,4.895,5.319,5.717,6.087,6.429,6.756,7.079,
-7.411,7.758,8.118,8.482,8.843,9.192,9.527,9.852,10.173,10.497,10.825,11.154,11.477,11.787,12.082,12.370,
-12.667,12.995,13.373,13.812,14.305,14.829,15.346,15.817,16.210,16.509,16.723,16.879,17.016,17.167,17.353,17.571,
-17.798,17.997,18.128,18.160,18.077,17.882,17.593,17.234,16.831,16.408,15.987,15.591,15.244,14.974,14.805,14.750,
-14.807,14.952,15.150,15.361,15.563,15.756,15.976,16.281,16.737,17.392,18.256,19.287,20.397,21.473,22.405,23.116,
-23.580,23.823,23.910,23.916,23.901,23.893,23.887,23.858,23.775,23.626,23.415,23.167,22.905,22.643,22.378,22.092,
-21.768,21.404,21.023,20.665,20.378,20.192,20.108,20.093,20.102,20.093,20.054,20.014,20.036,20.188,20.519,21.031,
-21.675,22.367,23.013,23.542,23.926,24.178,24.341,24.458,24.555,24.633,24.674,24.664,24.604,24.519,24.443,24.400,
-24.381,24.336,24.187,23.855,23.295,22.527,21.639,20.768,20.054,19.601,19.440,19.523,19.745,19.986,20.152,20.209,
-20.186,20.150,20.176,20.309,20.541,20.816,21.053,21.179,21.160,21.017,20.813,20.634,20.556,20.617,20.807,21.076,
-21.356,21.582,21.717,21.756,21.727,21.670,21.623,21.612,21.639,21.692,21.751,21.795,21.811,21.795,21.751,21.687,
-21.614,21.542,21.482,21.437,21.410,21.393,21.374,21.335,21.259,21.133,20.956,20.737,20.494,20.244,20.000,19.764,
-19.529,19.283,19.017,18.734,18.446,18.173,17.935,17.743,17.590,17.459,17.323,17.162,16.968,16.755,16.554,16.403,
-16.335,16.366,16.489,16.679,16.896,17.102,17.270,17.391,17.469,17.523,17.568,17.616,17.663,17.699,17.707,17.672,
-17.586,17.452,17.278,17.080,16.869,16.658,16.453,16.258,16.078,15.916,15.775,15.655,15.555,15.470,15.394,15.324,
-15.258,15.202,15.161,15.142,15.146,15.166,15.193,15.213,15.217,15.198,15.161,15.111,15.056,15.001,14.947,14.889,
-14.821,14.741,14.646,14.541,14.434,14.333,14.247,14.181,14.140,14.128,14.145,14.189,14.250,14.316,14.367,14.386,
-14.357,14.274,14.144,13.982,13.812,13.660,13.547,13.486,13.479,13.516,13.583,13.662,13.736,13.793,13.827,13.840,
-13.839,13.833,13.830,13.838,13.854,13.876,13.897,13.910,13.915,13.915,13.918,13.932,13.962,14.012,13.834,13.911,
-13.988,14.056,14.111,14.158,14.205,14.262,14.339,14.441,14.565,14.706,14.856,15.008,15.163,15.321,15.490,15.676,
-15.885,16.116,16.364,16.623,16.881,17.131,17.371,17.603,17.833,18.070,18.321,18.587,18.863,19.138,19.399,19.632,
-19.833,20.004,20.154,20.296,20.446,20.615,20.811,21.034,21.285,21.562,21.862,22.180,22.507,22.829,23.124,23.373,
-23.561,23.682,23.744,23.768,23.778,23.795,23.829,23.879,23.929,23.963,23.968,23.944,23.903,23.866,23.856,23.885,
-23.953,24.048,24.147,24.232,24.291,24.326,24.348,24.375,24.423,24.498,24.595,24.701,24.797,24.867,24.897,24.883,
-24.829,24.743,24.640,24.539,24.460,24.421,24.438,24.516,24.650,24.821,24.999,25.154,25.260,25.302,25.285,25.227,
-25.159,25.109,25.099,25.139,25.226,25.345,25.481,25.621,25.761,25.899,26.041,26.187,26.334,26.475,26.597,26.690,
-26.752,26.786,26.807,26.831,26.875,26.946,27.044,27.159,27.274,27.374,27.446,27.489,27.508,27.515,27.524,27.547,
-27.592,27.661,27.749,27.853,27.965,28.085,28.212,28.349,28.501,28.671,28.860,29.065,29.278,29.486,29.678,29.845,
-29.986,30.108,30.225,30.354,30.509,30.697,30.911,31.138,31.357,31.549,31.705,31.824,31.917,31.999,32.083,32.174,
-32.271,32.366,32.449,32.516,32.567,32.604,32.634,32.657,32.672,32.674,32.660,32.631,32.591,32.552,32.519,32.495,
-32.474,32.442,32.388,32.305,32.198,32.079,31.969,31.884,31.832,31.808,31.798,31.784,31.752,31.697,31.623,31.542,
-31.463,31.394,31.336,31.286,31.237,31.187,31.136,31.088,31.045,31.010,30.983,30.961,30.945,30.934,30.933,30.942,
-30.962,30.991,31.022,31.050,31.073,31.093,31.115,31.145,31.184,31.227,31.265,31.287,31.289,31.272,31.246,31.227,
-31.225,31.243,31.276,31.312,31.338,31.349,31.348,31.346,31.355,31.377,31.408,31.432,31.431,31.391,31.310,31.202,
-31.085,30.979,30.897,30.834,30.778,30.712,30.623,30.510,30.382,30.255,30.141,30.046,29.960,29.871,29.762,29.628,
-29.474,29.317,29.177,29.069,28.998,28.958,28.934,28.908,28.869,28.814,28.745,28.670,28.592,28.512,28.428,28.340,
-28.252,28.171,28.108,28.069,28.054,28.046,28.022,27.956,27.829,27.635,27.386,27.106,26.825,26.566,26.341,26.151,
-25.986,25.834,25.688,25.546,25.415,25.300,25.206,25.127,25.056,24.977,24.881,24.761,24.621,24.466,24.305,24.145,
-23.986,23.829,23.671,23.514,23.362,23.224,23.109,23.022,22.965,22.931,22.910,22.888,22.854,22.797,22.714,22.601,
-22.459,22.291,22.100,21.889,21.660,21.414,21.151,20.868,20.560,20.223,19.853,19.450,19.014,18.552,18.067,17.564,
-17.046,16.516,15.975,15.427,14.879,14.339,13.814,13.311,12.830,12.371,11.928,11.498,11.078,10.669,10.274,9.898,
-9.543,9.207,8.887,8.574,8.256,7.921,7.560,7.167,6.740,6.281,5.798,5.304,4.810,4.330,3.872,3.440,
-3.034,2.654,2.296,1.962,1.654,1.377,1.134,.925,.741,.571,.400,.215,.009,-.220,-.469,-.732,
--1.005,-1.286,-1.576,-1.880,-2.201,-2.540,-2.893,-3.259,-3.633,-4.013,-4.397,-4.782,-5.160,-5.523,-5.860,-6.162,
--6.424,-6.651,-6.850,-7.035,-7.215,-7.390,-7.557,-7.705,-7.826,-7.916,-7.985,-8.049,-8.128,-8.241,-8.401,-8.607,
--8.855,-9.135,-9.441,-9.769,-10.121,-10.498,-10.895,-11.301,-11.700,-12.073,-12.405,-12.690,-12.934,-13.149,-13.353,-13.560,
--13.778,-14.011,-14.256,-14.514,-14.782,-15.064,-15.363,-15.681,-16.017,-16.366,-16.724,-17.086,-17.452,-17.822,-18.200,-18.588,
--18.982,-19.376,-19.760,-20.124,-20.461,-20.772,-21.061,-21.335,-21.603,-21.872,-22.145,-22.424,-22.707,-22.990,-23.269,-23.539,
--23.797,-24.038,-24.263,-24.477,-24.687,-24.904,-25.138,-25.393,-25.670,-25.963,-26.260,-26.552,-26.829,-27.088,-27.332,-27.566,
--27.793,-28.016,-28.235,-28.449,-28.656,-28.858,-29.059,-29.263,-29.475,-29.693,-29.912,-30.125,-30.327,-30.515,-30.690,-30.858,
--31.024,-31.191,-31.358,-31.520,-31.672,-31.814,-31.950,-32.088,-32.238,-32.409,-32.601,-32.807,-33.014,-33.207,-33.376,-33.518,
--33.640,-33.754,-33.871,-34.000,-34.143,-34.296,-34.448,-34.591,-34.716,-34.820,-34.904,-34.972,-35.029,-35.082,-35.137,-35.201,
--35.279,-35.375,-35.489,-35.617,-35.752,-35.884,-36.002,-36.101,-36.177,-36.231,-36.269,-36.292,-36.303,-36.302,-36.290,-36.269,
--36.248,-36.235,-36.241,-36.274,-36.333,-36.407,-36.482,-36.538,-36.561,-36.544,-36.490,-36.413,-36.328,-36.252,-36.195,-36.158,
--36.136,-36.117,-36.090,-36.046,-35.982,-35.903,-35.815,-35.730,-35.655,-35.598,-35.557,-35.530,-35.508,-35.485,-35.454,-35.413,
--35.365,-35.315,-35.271,-35.238,-35.215,-35.196,-35.171,-35.128,-35.055,-34.948,-34.812,-34.661,-34.513,-34.389,-34.308,-34.275,
--34.289,-34.336,-34.391,-34.431,-34.433,-34.383,-34.274,-34.112,-33.911,-33.685,-33.450,-33.222,-33.011,-32.829,-32.685,-32.592,
--32.559,-32.591,-32.687,-32.835,-33.013,-33.195,-33.355,-33.474,-33.546,-33.575,-33.578,-33.576,-33.587,-33.623,-33.685,-33.770,
--33.865,-33.963,-34.054,-34.138,-34.217,-34.297,-34.382,-34.478,-34.591,-34.722,-34.872,-35.041,-35.227,-35.427,-35.639,-35.860,
--36.085,-36.313,-36.541,-36.763,-36.975,-37.170,-37.345,-37.501,-37.646,-37.793,-37.960,-38.162,-38.409,-38.699,-39.019,-39.349,
--39.668,-39.957,-40.209,-40.427,-40.624,-40.817,-41.026,-41.266,-41.552,-41.892,-42.294,-42.762,-43.289,-43.862,-44.454,-45.028,
--45.542,-45.960,-46.261,-46.445,-46.533,-46.562,-46.576,-46.608,-46.678,-46.785,-46.912,-47.037,-47.144,-47.227,-47.293,-47.361,
--47.447,-47.562,-47.701,-47.851,-47.988,-48.094,-48.161,-48.193,-48.209,-48.232,-48.280,-48.361,-48.468,-48.580,-48.674,-48.728,
--48.733,-48.690,-48.616,-48.531,-48.456,-48.405,-48.386,-48.396,-48.427,-48.468,-48.510,-48.541,-48.555,-48.546,-48.511,-48.451,
--48.370,-48.273,-48.172,-48.074,-47.986,-47.910,-47.846,-47.788,-47.733,-47.678,-47.621,-47.563,-47.505,-47.446,-47.384,-47.315,
--47.235,-47.142,-47.038,-46.925,-46.809,-46.692,-46.576,-46.459,-46.340,-46.218,-46.095,-45.972,-45.852,-45.740,-45.635,-45.537,
--45.444,-45.353,-45.263,-45.171,-45.076,-44.972,-44.856,-44.724,-44.575,-44.413,-44.245,-44.082,-43.932,-43.799,-43.680,-43.567,
--43.447,-43.315,-43.170,-43.019,-42.876,-42.754,-42.657,-42.584,-42.521,-42.455,-42.374,-42.275,-42.164,-42.053,-41.953,-41.870,
--41.799,-41.727,-41.640,-41.526,-41.385,-41.226,-41.065,-40.917,-40.792,-40.686,-40.589,-40.487,-40.368,-40.229,-40.073,-39.911,
--39.755,-39.611,-39.479,-39.355,-39.232,-39.105,-38.973,-38.839,-38.709,-38.584,-38.466,-38.349,-38.229,-38.102,-37.968,-37.830,
--37.693,-37.564,-37.445,-37.337,-37.241,-37.154,-37.075,-37.005,-36.941,-36.882,-36.821,-36.753,-36.674,-36.583,-36.484,-36.382,
--36.288,-36.207,-36.140,-36.084,-36.033,-35.981,-35.923,-35.859,-35.789,-35.717,-35.647,-35.578,-35.511,-35.448,-35.390,-35.340,
--35.303,-35.278,-35.261,-35.246,-35.223,-35.185,-35.131,-35.066,-35.001,-34.945,-34.906,-34.883,-34.869,-34.856,-34.832,-34.797,
--34.753,-34.709,-34.674,-34.652,-34.639,-34.625,-34.596,-34.543,-34.465,-34.366,-34.261,-34.162,-34.077,-34.004,-33.937,-33.864,
--33.776,-33.670,-33.555,-33.444,-33.351,-33.284,-33.245,-33.226,-33.211,-33.190,-33.153,-33.099,-33.033,-32.965,-32.898,-32.835,
--32.770,-32.694,-32.598,-32.481,-32.343,-32.194,-32.045,-31.905,-31.781,-31.674,-31.582,-31.501,-31.424,-31.349,-31.275,-31.200,
--31.126,-31.052,-30.976,-30.897,-30.814,-30.724,-30.624,-30.512,-30.387,-30.248,-30.100,-29.949,-29.808,-29.687,-29.594,-29.531,
--29.493,-29.467,-29.440,-29.402,-29.350,-29.288,-29.227,-29.180,-29.155,-29.155,-29.173,-29.198,-29.220,-29.231,-29.229,-29.216,
--29.192,-29.155,-29.095,-29.002,-28.862,-28.671,-28.432,-28.161,-27.880,-27.609,-27.368,-27.166,-27.002,-26.870,-26.761,-26.667,
--26.585,-26.512,-26.447,-26.388,-26.332,-26.273,-26.209,-26.138,-26.062,-25.985,-25.911,-25.842,-25.777,-25.712,-25.644,-25.570,
--25.489,-25.406,-25.324,-25.248,-25.182,-25.126,-25.081,-25.044,-25.015,-24.993,-24.976,-24.963,-24.953,-24.941,-24.922,-24.890,
--24.841,-24.771,-24.680,-24.569,-24.442,-24.307,-24.169,-24.036,-23.912,-23.799,-23.696,-23.598,-23.498,-23.389,-23.268,-23.131,
--22.981,-22.820,-22.655,-22.489,-22.328,-22.172,-22.025,-21.886,-21.757,-21.639,-21.532,-21.436,-21.350,-21.270,-21.192,-21.110,
--21.017,-20.908,-20.781,-20.637,-20.478,-20.312,-20.145,-19.986,-19.842,-19.717,-19.610,-19.518,-19.436,-19.354,-19.268,-19.170,
--19.059,-18.933,-18.796,-18.649,-18.495,-18.335,-18.169,-17.994,-17.808,-17.611,-17.402,-17.186,-16.969,-16.756,-16.551,-16.356,
--16.167,-15.981,-15.792,-15.599,-15.406,-15.219,-15.047,-14.897,-14.770,-14.663,-14.566,-14.468,-14.359,-14.232,-14.085,-13.921,
--13.743,-13.556,-13.363,-13.167,-12.973,-12.789,-12.624,-12.487,-12.384,-12.314,-12.264,-12.218,-12.153,-12.049,-11.894,-11.685,
--11.428,-11.138,-10.834,-10.535,-10.257,-10.013,-9.806,-9.635,-9.489,-9.351,-9.202,-9.026,-8.813,-8.565,-8.294,-8.020,
--7.766,-7.544,-7.359,-7.199,-7.045,-6.878,-6.683,-6.454,-6.197,-5.923,-5.642,-5.357,-5.065,-4.759,-4.434,-4.091,
--3.738,-3.392,-3.065,-2.766,-2.489,-2.221,-1.944,-1.640,-1.305,-.943,-.571,-.205,.140,.460,.760,1.051,
-1.345,1.647,1.961,2.281,2.603,2.926,3.251,3.586,3.938,4.308,4.693,5.081,5.462,5.824,6.165,6.488,
-6.806,7.131,7.473,7.833,8.208,8.585,8.956,9.313,9.656,9.988,10.318,10.651,10.986,11.319,11.643,11.953,
-12.249,12.539,12.840,13.169,13.539,13.951,14.395,14.847,15.279,15.666,15.993,16.263,16.487,16.688,16.882,17.075,
-17.259,17.408,17.490,17.473,17.338,17.081,16.718,16.279,15.806,15.341,14.925,14.594,14.378,14.298,14.371,14.598,
-14.967,15.448,15.995,16.555,17.080,17.536,17.919,18.250,18.576,18.947,19.407,19.971,20.621,21.306,21.964,22.532,
-22.972,23.274,23.462,23.574,23.650,23.715,23.771,23.800,23.778,23.684,23.513,23.279,23.005,22.709,22.403,22.083,
-21.739,21.366,20.974,20.593,20.265,20.028,19.898,19.861,19.875,19.887,19.858,19.782,19.695,19.663,19.760,20.037,
-20.499,21.098,21.752,22.367,22.868,23.218,23.425,23.523,23.555,23.550,23.519,23.458,23.366,23.255,23.160,23.121,
-23.171,23.307,23.483,23.615,23.608,23.389,22.939,22.303,21.581,20.896,20.355,20.018,19.881,19.890,19.964,20.033,
-20.060,20.048,20.033,20.056,20.144,20.294,20.475,20.646,20.770,20.837,20.866,20.892,20.951,21.059,21.206,21.356,
-21.461,21.486,21.417,21.273,21.094,20.929,20.819,20.779,20.805,20.871,20.948,21.014,21.057,21.080,21.087,21.085,
-21.073,21.047,21.002,20.940,20.870,20.804,20.754,20.723,20.700,20.667,20.601,20.487,20.327,20.135,19.938,19.761,
-19.620,19.514,19.423,19.322,19.187,19.004,18.779,18.529,18.278,18.047,17.846,17.674,17.524,17.387,17.260,17.148,
-17.065,17.023,17.028,17.075,17.151,17.234,17.303,17.346,17.361,17.353,17.335,17.314,17.293,17.268,17.227,17.157,
-17.053,16.912,16.740,16.548,16.346,16.144,15.948,15.761,15.590,15.437,15.308,15.207,15.130,15.072,15.019,14.959,
-14.880,14.779,14.660,14.537,14.422,14.330,14.266,14.231,14.220,14.225,14.242,14.267,14.299,14.338,14.378,14.412,
-14.431,14.422,14.377,14.295,14.179,14.043,13.900,13.769,13.666,13.603,13.590,13.626,13.705,13.811,13.923,14.014,
-14.060,14.044,13.961,13.821,13.647,13.467,13.314,13.210,13.167,13.180,13.235,13.310,13.382,13.436,13.465,13.472,
-13.468,13.466,13.477,13.506,13.549,13.599,13.645,13.677,13.692,13.693,13.691,13.697,13.721,13.768,13.834,13.769,
-13.874,13.966,14.039,14.094,14.138,14.185,14.246,14.330,14.442,14.579,14.733,14.898,15.065,15.234,15.405,15.584,
-15.777,15.988,16.219,16.464,16.717,16.968,17.213,17.448,17.679,17.915,18.164,18.434,18.722,19.018,19.306,19.567,
-19.786,19.954,20.079,20.176,20.266,20.372,20.514,20.699,20.930,21.204,21.510,21.840,22.180,22.516,22.831,23.106,
-23.324,23.475,23.564,23.603,23.616,23.629,23.661,23.719,23.794,23.869,23.922,23.939,23.920,23.878,23.834,23.810,
-23.820,23.862,23.926,23.992,24.046,24.083,24.109,24.139,24.190,24.269,24.373,24.486,24.583,24.641,24.645,24.592,
-24.494,24.372,24.251,24.153,24.098,24.093,24.143,24.239,24.371,24.518,24.660,24.774,24.845,24.863,24.834,24.775,
-24.709,24.661,24.650,24.682,24.752,24.845,24.945,25.039,25.124,25.208,25.302,25.416,25.556,25.714,25.876,26.024,
-26.143,26.228,26.283,26.322,26.363,26.420,26.500,26.601,26.710,26.814,26.899,26.957,26.988,26.998,26.999,27.002,
-27.018,27.054,27.112,27.195,27.301,27.426,27.568,27.722,27.886,28.060,28.243,28.435,28.637,28.845,29.053,29.252,
-29.435,29.598,29.743,29.878,30.017,30.171,30.350,30.551,30.767,30.983,31.183,31.360,31.509,31.637,31.752,31.862,
-31.970,32.072,32.162,32.233,32.281,32.308,32.322,32.330,32.338,32.347,32.355,32.356,32.345,32.321,32.287,32.246,
-32.201,32.152,32.099,32.037,31.966,31.889,31.815,31.752,31.707,31.681,31.671,31.666,31.653,31.625,31.574,31.504,
-31.418,31.325,31.231,31.142,31.061,30.991,30.933,30.887,30.851,30.824,30.800,30.776,30.751,30.725,30.705,30.693,
-30.693,30.703,30.720,30.736,30.751,30.766,30.787,30.825,30.884,30.961,31.048,31.129,31.189,31.219,31.221,31.208,
-31.194,31.192,31.203,31.222,31.236,31.232,31.206,31.165,31.123,31.096,31.091,31.105,31.121,31.118,31.081,31.005,
-30.900,30.784,30.680,30.601,30.546,30.503,30.453,30.380,30.278,30.153,30.016,29.882,29.758,29.641,29.521,29.387,
-29.232,29.060,28.886,28.728,28.603,28.518,28.469,28.444,28.426,28.403,28.367,28.319,28.262,28.202,28.141,28.082,
-28.024,27.968,27.917,27.874,27.838,27.801,27.750,27.670,27.547,27.374,27.159,26.917,26.670,26.439,26.234,26.055,
-25.894,25.737,25.577,25.414,25.256,25.116,25.002,24.916,24.848,24.778,24.688,24.563,24.400,24.204,23.991,23.776,
-23.572,23.383,23.208,23.045,22.891,22.748,22.620,22.516,22.437,22.386,22.354,22.335,22.318,22.293,22.256,22.202,
-22.126,22.023,21.887,21.711,21.493,21.235,20.943,20.627,20.296,19.955,19.602,19.231,18.832,18.396,17.916,17.395,
-16.842,16.273,15.705,15.154,14.632,14.145,13.694,13.275,12.880,12.502,12.133,11.767,11.401,11.032,10.661,10.288,
-9.917,9.551,9.193,8.845,8.505,8.172,7.836,7.489,7.119,6.719,6.285,5.820,5.331,4.831,4.333,3.847,
-3.381,2.935,2.510,2.106,1.728,1.379,1.066,.793,.557,.351,.161,-.027,-.227,-.444,-.678,-.924,
--1.174,-1.425,-1.676,-1.932,-2.201,-2.490,-2.802,-3.138,-3.496,-3.871,-4.256,-4.646,-5.033,-5.406,-5.756,-6.072,
--6.348,-6.585,-6.791,-6.977,-7.155,-7.334,-7.514,-7.689,-7.848,-7.983,-8.094,-8.190,-8.285,-8.397,-8.539,-8.716,
--8.927,-9.165,-9.426,-9.712,-10.028,-10.383,-10.782,-11.217,-11.672,-12.117,-12.522,-12.866,-13.139,-13.351,-13.524,-13.685,
--13.861,-14.066,-14.306,-14.573,-14.859,-15.154,-15.455,-15.761,-16.076,-16.403,-16.743,-17.096,-17.460,-17.832,-18.214,-18.605,
--19.005,-19.411,-19.817,-20.212,-20.588,-20.936,-21.254,-21.545,-21.816,-22.076,-22.336,-22.601,-22.876,-23.159,-23.448,-23.737,
--24.018,-24.285,-24.534,-24.763,-24.975,-25.180,-25.388,-25.612,-25.860,-26.135,-26.433,-26.742,-27.050,-27.346,-27.621,-27.873,
--28.106,-28.324,-28.532,-28.736,-28.937,-29.139,-29.342,-29.551,-29.768,-29.992,-30.221,-30.450,-30.672,-30.881,-31.072,-31.246,
--31.405,-31.554,-31.696,-31.834,-31.970,-32.105,-32.242,-32.388,-32.551,-32.737,-32.947,-33.177,-33.411,-33.635,-33.832,-33.993,
--34.118,-34.215,-34.301,-34.390,-34.493,-34.614,-34.748,-34.888,-35.023,-35.147,-35.256,-35.352,-35.436,-35.513,-35.584,-35.652,
--35.720,-35.791,-35.868,-35.957,-36.059,-36.174,-36.296,-36.420,-36.539,-36.646,-36.738,-36.812,-36.869,-36.906,-36.926,-36.930,
--36.924,-36.917,-36.922,-36.949,-37.008,-37.100,-37.218,-37.347,-37.469,-37.566,-37.625,-37.640,-37.614,-37.554,-37.471,-37.373,
--37.268,-37.159,-37.049,-36.939,-36.832,-36.729,-36.632,-36.543,-36.460,-36.383,-36.314,-36.252,-36.202,-36.164,-36.140,-36.127,
--36.120,-36.113,-36.099,-36.076,-36.043,-36.003,-35.960,-35.914,-35.864,-35.802,-35.722,-35.619,-35.496,-35.362,-35.236,-35.136,
--35.079,-35.070,-35.103,-35.158,-35.209,-35.229,-35.200,-35.113,-34.972,-34.789,-34.582,-34.364,-34.146,-33.938,-33.744,-33.577,
--33.448,-33.375,-33.371,-33.440,-33.576,-33.756,-33.948,-34.118,-34.240,-34.298,-34.295,-34.251,-34.191,-34.144,-34.129,-34.158,
--34.229,-34.329,-34.444,-34.560,-34.665,-34.756,-34.834,-34.906,-34.981,-35.071,-35.183,-35.321,-35.487,-35.675,-35.879,-36.088,
--36.297,-36.501,-36.700,-36.895,-37.087,-37.278,-37.463,-37.638,-37.800,-37.949,-38.091,-38.238,-38.403,-38.597,-38.826,-39.087,
--39.369,-39.659,-39.941,-40.205,-40.447,-40.667,-40.870,-41.062,-41.251,-41.451,-41.675,-41.943,-42.275,-42.685,-43.179,-43.745,
--44.356,-44.969,-45.539,-46.029,-46.415,-46.696,-46.889,-47.025,-47.132,-47.232,-47.333,-47.430,-47.511,-47.564,-47.587,-47.589,
--47.585,-47.598,-47.642,-47.722,-47.834,-47.961,-48.086,-48.194,-48.279,-48.343,-48.398,-48.457,-48.531,-48.626,-48.736,-48.850,
--48.955,-49.034,-49.078,-49.081,-49.047,-48.985,-48.906,-48.827,-48.759,-48.714,-48.696,-48.700,-48.720,-48.742,-48.757,-48.753,
--48.727,-48.681,-48.622,-48.556,-48.489,-48.424,-48.360,-48.293,-48.220,-48.139,-48.051,-47.962,-47.876,-47.796,-47.724,-47.655,
--47.584,-47.508,-47.421,-47.324,-47.217,-47.104,-46.987,-46.867,-46.745,-46.621,-46.495,-46.369,-46.243,-46.117,-45.991,-45.864,
--45.736,-45.608,-45.486,-45.371,-45.266,-45.171,-45.080,-44.987,-44.885,-44.770,-44.644,-44.515,-44.392,-44.281,-44.182,-44.089,
--43.991,-43.875,-43.734,-43.572,-43.398,-43.229,-43.078,-42.950,-42.842,-42.745,-42.645,-42.535,-42.418,-42.304,-42.204,-42.130,
--42.079,-42.042,-41.999,-41.931,-41.828,-41.691,-41.535,-41.380,-41.245,-41.140,-41.060,-40.992,-40.916,-40.818,-40.689,-40.533,
--40.362,-40.190,-40.028,-39.883,-39.754,-39.638,-39.531,-39.428,-39.329,-39.233,-39.138,-39.041,-38.935,-38.818,-38.689,-38.550,
--38.408,-38.269,-38.139,-38.019,-37.909,-37.807,-37.713,-37.627,-37.552,-37.489,-37.435,-37.386,-37.333,-37.271,-37.194,-37.105,
--37.007,-36.912,-36.825,-36.751,-36.689,-36.634,-36.579,-36.523,-36.462,-36.398,-36.335,-36.274,-36.214,-36.153,-36.091,-36.028,
--35.969,-35.920,-35.883,-35.860,-35.844,-35.827,-35.800,-35.755,-35.693,-35.621,-35.549,-35.488,-35.443,-35.413,-35.391,-35.370,
--35.344,-35.313,-35.282,-35.258,-35.246,-35.245,-35.248,-35.241,-35.214,-35.162,-35.086,-34.995,-34.903,-34.820,-34.749,-34.687,
--34.622,-34.545,-34.448,-34.333,-34.207,-34.085,-33.977,-33.892,-33.829,-33.782,-33.743,-33.704,-33.660,-33.611,-33.558,-33.504,
--33.448,-33.386,-33.311,-33.218,-33.106,-32.977,-32.836,-32.693,-32.555,-32.426,-32.308,-32.202,-32.106,-32.019,-31.942,-31.875,
--31.820,-31.772,-31.726,-31.677,-31.617,-31.542,-31.450,-31.341,-31.219,-31.087,-30.950,-30.813,-30.680,-30.556,-30.447,-30.357,
--30.287,-30.235,-30.194,-30.156,-30.112,-30.055,-29.982,-29.897,-29.807,-29.718,-29.638,-29.572,-29.521,-29.485,-29.462,-29.449,
--29.442,-29.435,-29.421,-29.389,-29.331,-29.240,-29.113,-28.953,-28.766,-28.562,-28.349,-28.134,-27.923,-27.718,-27.524,-27.343,
--27.183,-27.046,-26.937,-26.853,-26.788,-26.734,-26.681,-26.622,-26.552,-26.473,-26.387,-26.299,-26.212,-26.126,-26.041,-25.955,
--25.868,-25.783,-25.701,-25.626,-25.559,-25.501,-25.451,-25.407,-25.367,-25.331,-25.299,-25.273,-25.251,-25.231,-25.211,-25.184,
--25.146,-25.095,-25.028,-24.948,-24.858,-24.761,-24.660,-24.557,-24.453,-24.347,-24.236,-24.120,-23.996,-23.864,-23.724,-23.580,
--23.434,-23.289,-23.148,-23.009,-22.872,-22.734,-22.592,-22.447,-22.299,-22.153,-22.015,-21.890,-21.779,-21.682,-21.592,-21.502,
--21.405,-21.295,-21.171,-21.035,-20.893,-20.754,-20.623,-20.505,-20.399,-20.303,-20.212,-20.121,-20.028,-19.929,-19.824,-19.712,
--19.595,-19.470,-19.337,-19.194,-19.039,-18.873,-18.694,-18.502,-18.300,-18.089,-17.873,-17.656,-17.444,-17.242,-17.051,-16.871,
--16.698,-16.525,-16.346,-16.156,-15.954,-15.745,-15.539,-15.345,-15.171,-15.020,-14.889,-14.772,-14.658,-14.539,-14.409,-14.266,
--14.110,-13.943,-13.765,-13.576,-13.377,-13.172,-12.969,-12.780,-12.616,-12.487,-12.395,-12.331,-12.280,-12.222,-12.135,-12.004,
--11.822,-11.594,-11.330,-11.049,-10.772,-10.515,-10.292,-10.107,-9.957,-9.828,-9.701,-9.556,-9.377,-9.155,-8.895,-8.612,
--8.327,-8.061,-7.827,-7.626,-7.448,-7.273,-7.083,-6.866,-6.618,-6.345,-6.058,-5.765,-5.468,-5.164,-4.845,-4.507,
--4.154,-3.797,-3.452,-3.134,-2.850,-2.592,-2.343,-2.081,-1.785,-1.447,-1.071,-.673,-.272,.115,.481,.828,
-1.166,1.504,1.844,2.185,2.516,2.826,3.112,3.375,3.628,3.887,4.167,4.476,4.814,5.172,5.537,5.900,
-6.254,6.600,6.944,7.291,7.646,8.005,8.365,8.719,9.066,9.408,9.749,10.099,10.461,10.836,11.215,11.588,
-11.942,12.272,12.580,12.875,13.175,13.494,13.841,14.213,14.597,14.971,15.313,15.604,15.834,16.005,16.124,16.203,
-16.249,16.262,16.236,16.157,16.016,15.809,15.542,15.237,14.925,14.645,14.439,14.345,14.391,14.595,14.961,15.478,
-16.118,16.844,17.606,18.353,19.037,19.623,20.093,20.449,20.711,20.912,21.086,21.261,21.450,21.656,21.867,22.071,
-22.259,22.431,22.595,22.762,22.938,23.116,23.276,23.387,23.419,23.351,23.182,22.929,22.622,22.293,21.966,21.652,
-21.346,21.042,20.740,20.455,20.215,20.051,19.982,20.002,20.075,20.145,20.157,20.079,19.919,19.729,19.592,19.594,
-19.792,20.196,20.761,21.400,22.019,22.535,22.908,23.137,23.249,23.285,23.276,23.232,23.151,23.030,22.876,22.715,
-22.585,22.520,22.531,22.592,22.646,22.618,22.445,22.096,21.594,21.003,20.413,19.911,19.552,19.353,19.289,19.313,
-19.380,19.459,19.543,19.639,19.761,19.914,20.088,20.264,20.423,20.557,20.675,20.796,20.936,21.101,21.268,21.399,
-21.446,21.375,21.179,20.888,20.561,20.265,20.057,19.961,19.970,20.044,20.136,20.207,20.240,20.243,20.238,20.251,
-20.291,20.351,20.409,20.437,20.418,20.351,20.252,20.147,20.057,19.994,19.949,19.904,19.840,19.745,19.622,19.489,
-19.368,19.275,19.215,19.174,19.127,19.050,18.927,18.758,18.560,18.360,18.185,18.050,17.958,17.897,17.848,17.794,
-17.724,17.636,17.537,17.437,17.346,17.269,17.206,17.153,17.107,17.062,17.015,16.960,16.892,16.803,16.685,16.537,
-16.361,16.165,15.964,15.771,15.597,15.444,15.311,15.190,15.074,14.961,14.855,14.764,14.694,14.646,14.612,14.578,
-14.525,14.438,14.310,14.147,13.964,13.783,13.625,13.504,13.426,13.387,13.381,13.397,13.432,13.482,13.549,13.629,
-13.719,13.807,13.878,13.918,13.913,13.858,13.758,13.624,13.479,13.344,13.244,13.195,13.205,13.270,13.374,13.491,
-13.590,13.646,13.641,13.571,13.449,13.299,13.151,13.032,12.959,12.938,12.959,13.003,13.052,13.088,13.105,13.105,
-13.099,13.100,13.118,13.156,13.211,13.273,13.329,13.371,13.397,13.410,13.423,13.448,13.495,13.568,13.663,13.769,
-13.701,13.827,13.935,14.022,14.094,14.161,14.232,14.317,14.419,14.539,14.674,14.822,14.977,15.137,15.302,15.475,
-15.661,15.862,16.083,16.324,16.579,16.841,17.102,17.354,17.593,17.823,18.050,18.284,18.531,18.789,19.050,19.297,
-19.514,19.688,19.814,19.904,19.977,20.061,20.181,20.352,20.579,20.856,21.168,21.495,21.822,22.135,22.424,22.679,
-22.895,23.064,23.186,23.266,23.315,23.351,23.393,23.454,23.536,23.632,23.724,23.793,23.826,23.820,23.785,23.739,
-23.701,23.683,23.689,23.712,23.742,23.773,23.802,23.837,23.888,23.962,24.056,24.156,24.240,24.283,24.267,24.188,
-24.062,23.913,23.777,23.683,23.652,23.688,23.782,23.916,24.066,24.207,24.322,24.398,24.428,24.415,24.368,24.302,
-24.233,24.181,24.160,24.174,24.222,24.293,24.371,24.445,24.507,24.562,24.620,24.694,24.795,24.924,25.075,25.235,
-25.386,25.516,25.620,25.702,25.774,25.847,25.932,26.030,26.137,26.243,26.337,26.410,26.458,26.481,26.485,26.479,
-26.472,26.474,26.495,26.542,26.622,26.737,26.887,27.064,27.260,27.464,27.669,27.870,28.067,28.263,28.463,28.666,
-28.868,29.064,29.247,29.413,29.565,29.712,29.863,30.029,30.213,30.412,30.617,30.817,31.001,31.165,31.309,31.438,
-31.559,31.676,31.785,31.883,31.962,32.018,32.049,32.061,32.060,32.054,32.047,32.042,32.034,32.020,31.996,31.960,
-31.913,31.857,31.796,31.732,31.668,31.606,31.549,31.499,31.461,31.436,31.425,31.425,31.430,31.432,31.422,31.394,
-31.343,31.268,31.174,31.066,30.957,30.855,30.772,30.710,30.669,30.643,30.621,30.594,30.555,30.506,30.452,30.403,
-30.370,30.357,30.361,30.375,30.393,30.410,30.429,30.460,30.511,30.590,30.694,30.811,30.923,31.012,31.068,31.093,
-31.096,31.094,31.097,31.110,31.125,31.128,31.108,31.062,30.996,30.926,30.871,30.841,30.834,30.837,30.831,30.797,
-30.727,30.629,30.518,30.416,30.338,30.285,30.249,30.213,30.160,30.081,29.975,29.851,29.721,29.592,29.465,29.333,
-29.187,29.022,28.840,28.651,28.472,28.319,28.200,28.119,28.068,28.036,28.011,27.984,27.951,27.910,27.861,27.805,
-27.743,27.675,27.603,27.531,27.460,27.390,27.314,27.223,27.109,26.964,26.790,26.598,26.401,26.218,26.055,25.915,
-25.786,25.656,25.511,25.349,25.176,25.009,24.864,24.752,24.670,24.606,24.536,24.436,24.293,24.103,23.875,23.627,
-23.377,23.137,22.912,22.700,22.498,22.303,22.120,21.953,21.813,21.704,21.626,21.574,21.539,21.514,21.492,21.470,
-21.448,21.419,21.376,21.303,21.185,21.009,20.773,20.481,20.148,19.791,19.427,19.062,18.693,18.307,17.888,17.426,
-16.917,16.370,15.805,15.244,14.710,14.220,13.778,13.381,13.020,12.683,12.358,12.038,11.717,11.394,11.064,10.727,
-10.378,10.016,9.643,9.262,8.882,8.507,8.144,7.790,7.440,7.083,6.709,6.308,5.877,5.417,4.936,4.442,
-3.944,3.450,2.964,2.494,2.045,1.628,1.250,.917,.628,.376,.146,-.077,-.308,-.554,-.813,-1.075,
--1.327,-1.558,-1.766,-1.957,-2.145,-2.348,-2.582,-2.856,-3.175,-3.533,-3.921,-4.328,-4.741,-5.148,-5.535,-5.892,
--6.210,-6.487,-6.726,-6.937,-7.134,-7.327,-7.525,-7.727,-7.925,-8.108,-8.268,-8.404,-8.523,-8.638,-8.763,-8.909,
--9.080,-9.273,-9.486,-9.717,-9.973,-10.266,-10.611,-11.012,-11.464,-11.945,-12.420,-12.852,-13.211,-13.486,-13.684,-13.832,
--13.964,-14.115,-14.307,-14.548,-14.834,-15.151,-15.485,-15.824,-16.162,-16.500,-16.842,-17.191,-17.549,-17.918,-18.295,-18.681,
--19.075,-19.475,-19.877,-20.277,-20.665,-21.033,-21.377,-21.693,-21.983,-22.253,-22.512,-22.765,-23.020,-23.280,-23.546,-23.819,
--24.095,-24.373,-24.647,-24.914,-25.173,-25.422,-25.665,-25.906,-26.152,-26.409,-26.680,-26.964,-27.256,-27.547,-27.831,-28.101,
--28.353,-28.588,-28.807,-29.016,-29.216,-29.411,-29.604,-29.799,-30.001,-30.214,-30.438,-30.674,-30.917,-31.160,-31.393,-31.607,
--31.796,-31.958,-32.093,-32.204,-32.299,-32.387,-32.478,-32.585,-32.719,-32.886,-33.090,-33.324,-33.574,-33.822,-34.046,-34.232,
--34.376,-34.480,-34.560,-34.634,-34.718,-34.822,-34.950,-35.094,-35.246,-35.397,-35.539,-35.670,-35.791,-35.902,-36.006,-36.102,
--36.190,-36.269,-36.342,-36.415,-36.494,-36.583,-36.684,-36.794,-36.906,-37.014,-37.112,-37.198,-37.273,-37.342,-37.407,-37.473,
--37.540,-37.610,-37.682,-37.760,-37.849,-37.956,-38.085,-38.237,-38.408,-38.586,-38.756,-38.901,-39.004,-39.051,-39.035,-38.953,
--38.809,-38.614,-38.387,-38.146,-37.914,-37.708,-37.540,-37.412,-37.319,-37.248,-37.185,-37.121,-37.050,-36.977,-36.910,-36.859,
--36.830,-36.820,-36.823,-36.826,-36.820,-36.799,-36.761,-36.713,-36.663,-36.613,-36.564,-36.510,-36.443,-36.358,-36.257,-36.151,
--36.054,-35.985,-35.954,-35.962,-35.996,-36.036,-36.058,-36.044,-35.983,-35.874,-35.726,-35.551,-35.359,-35.157,-34.949,-34.739,
--34.537,-34.357,-34.220,-34.146,-34.150,-34.234,-34.387,-34.580,-34.779,-34.947,-35.058,-35.100,-35.076,-35.006,-34.915,-34.830,
--34.775,-34.764,-34.800,-34.877,-34.983,-35.103,-35.223,-35.334,-35.434,-35.527,-35.622,-35.732,-35.865,-36.024,-36.207,-36.403,
--36.601,-36.789,-36.962,-37.123,-37.277,-37.435,-37.606,-37.791,-37.988,-38.188,-38.384,-38.567,-38.736,-38.895,-39.050,-39.207,
--39.373,-39.551,-39.742,-39.944,-40.158,-40.383,-40.618,-40.858,-41.097,-41.326,-41.538,-41.734,-41.924,-42.126,-42.365,-42.664,
--43.040,-43.493,-44.009,-44.560,-45.112,-45.632,-46.100,-46.504,-46.847,-47.139,-47.388,-47.602,-47.780,-47.918,-48.013,-48.062,
--48.072,-48.057,-48.035,-48.027,-48.047,-48.103,-48.193,-48.306,-48.426,-48.536,-48.625,-48.686,-48.723,-48.747,-48.772,-48.815,
--48.886,-48.988,-49.112,-49.241,-49.353,-49.425,-49.445,-49.408,-49.325,-49.214,-49.099,-49.001,-48.933,-48.899,-48.892,-48.899,
--48.909,-48.910,-48.899,-48.875,-48.843,-48.804,-48.759,-48.707,-48.644,-48.568,-48.479,-48.381,-48.280,-48.181,-48.090,-48.007,
--47.931,-47.857,-47.779,-47.695,-47.600,-47.494,-47.377,-47.249,-47.114,-46.975,-46.836,-46.700,-46.571,-46.449,-46.330,-46.211,
--46.086,-45.953,-45.814,-45.674,-45.540,-45.418,-45.310,-45.213,-45.121,-45.026,-44.924,-44.817,-44.709,-44.608,-44.521,-44.447,
--44.377,-44.301,-44.205,-44.083,-43.936,-43.775,-43.611,-43.458,-43.321,-43.198,-43.081,-42.962,-42.838,-42.711,-42.592,-42.492,
--42.416,-42.362,-42.316,-42.260,-42.178,-42.063,-41.922,-41.770,-41.628,-41.515,-41.435,-41.384,-41.344,-41.295,-41.219,-41.109,
--40.967,-40.805,-40.637,-40.476,-40.330,-40.202,-40.090,-39.991,-39.903,-39.821,-39.742,-39.660,-39.570,-39.467,-39.348,-39.218,
--39.082,-38.948,-38.823,-38.710,-38.606,-38.508,-38.409,-38.308,-38.206,-38.110,-38.026,-37.957,-37.902,-37.857,-37.812,-37.761,
--37.701,-37.631,-37.555,-37.478,-37.402,-37.327,-37.252,-37.173,-37.091,-37.011,-36.938,-36.876,-36.827,-36.787,-36.751,-36.712,
--36.665,-36.613,-36.561,-36.517,-36.484,-36.465,-36.452,-36.436,-36.409,-36.363,-36.302,-36.233,-36.164,-36.105,-36.056,-36.017,
--35.981,-35.942,-35.898,-35.852,-35.811,-35.780,-35.763,-35.755,-35.747,-35.729,-35.692,-35.636,-35.565,-35.492,-35.426,-35.375,
--35.335,-35.300,-35.256,-35.192,-35.103,-34.992,-34.867,-34.741,-34.625,-34.528,-34.450,-34.388,-34.336,-34.289,-34.242,-34.193,
--34.143,-34.090,-34.031,-33.964,-33.883,-33.787,-33.677,-33.555,-33.425,-33.293,-33.163,-33.039,-32.924,-32.819,-32.726,-32.646,
--32.578,-32.519,-32.465,-32.408,-32.341,-32.259,-32.162,-32.054,-31.941,-31.831,-31.729,-31.636,-31.550,-31.467,-31.381,-31.290,
--31.193,-31.096,-31.004,-30.920,-30.846,-30.780,-30.716,-30.647,-30.568,-30.477,-30.376,-30.269,-30.163,-30.063,-29.973,-29.893,
--29.821,-29.751,-29.680,-29.603,-29.520,-29.432,-29.344,-29.257,-29.175,-29.093,-29.005,-28.902,-28.774,-28.614,-28.422,-28.205,
--27.976,-27.754,-27.554,-27.389,-27.262,-27.169,-27.101,-27.045,-26.990,-26.928,-26.855,-26.770,-26.676,-26.575,-26.470,-26.364,
--26.260,-26.161,-26.071,-25.991,-25.923,-25.865,-25.815,-25.769,-25.725,-25.682,-25.639,-25.598,-25.560,-25.525,-25.490,-25.453,
--25.410,-25.360,-25.301,-25.237,-25.168,-25.098,-25.026,-24.952,-24.872,-24.782,-24.679,-24.561,-24.429,-24.285,-24.135,-23.983,
--23.833,-23.691,-23.556,-23.430,-23.307,-23.186,-23.061,-22.931,-22.794,-22.653,-22.512,-22.377,-22.249,-22.131,-22.019,-21.909,
--21.794,-21.671,-21.540,-21.405,-21.273,-21.152,-21.048,-20.961,-20.886,-20.815,-20.737,-20.643,-20.532,-20.403,-20.264,-20.124,
--19.988,-19.860,-19.738,-19.617,-19.486,-19.340,-19.171,-18.978,-18.763,-18.532,-18.291,-18.050,-17.817,-17.597,-17.395,-17.213,
--17.048,-16.894,-16.743,-16.587,-16.420,-16.240,-16.050,-15.856,-15.666,-15.488,-15.325,-15.178,-15.043,-14.912,-14.782,-14.647,
--14.504,-14.351,-14.186,-14.006,-13.809,-13.595,-13.366,-13.130,-12.901,-12.692,-12.514,-12.373,-12.266,-12.184,-12.110,-12.029,
--11.925,-11.790,-11.622,-11.427,-11.215,-10.997,-10.785,-10.588,-10.409,-10.248,-10.096,-9.942,-9.774,-9.580,-9.356,-9.105,
--8.837,-8.565,-8.303,-8.058,-7.831,-7.611,-7.388,-7.149,-6.890,-6.611,-6.319,-6.025,-5.735,-5.449,-5.162,-4.868,
--4.561,-4.244,-3.923,-3.609,-3.313,-3.035,-2.768,-2.497,-2.202,-1.871,-1.501,-1.098,-.680,-.267,.129,.503,
-.859,1.207,1.558,1.914,2.269,2.611,2.926,3.205,3.450,3.673,3.892,4.126,4.389,4.685,5.011,5.357,
-5.711,6.065,6.417,6.765,7.113,7.461,7.809,8.154,8.496,8.834,9.176,9.529,9.900,10.292,10.700,11.113,
-11.516,11.894,12.241,12.558,12.857,13.156,13.471,13.811,14.171,14.533,14.868,15.144,15.335,15.424,15.410,15.307,
-15.141,14.942,14.737,14.549,14.392,14.273,14.196,14.162,14.181,14.262,14.425,14.688,15.067,15.572,16.198,16.926,
-17.722,18.541,19.333,20.051,20.660,21.141,21.497,21.742,21.906,22.018,22.102,22.173,22.234,22.282,22.313,22.326,
-22.331,22.345,22.387,22.472,22.600,22.753,22.896,22.985,22.981,22.859,22.623,22.298,21.930,21.567,21.248,20.990,
-20.788,20.622,20.470,20.322,20.184,20.081,20.039,20.071,20.167,20.289,20.382,20.393,20.293,20.094,19.849,19.639,
-19.547,19.632,19.908,20.338,20.854,21.372,21.824,22.172,22.414,22.572,22.679,22.755,22.803,22.813,22.768,22.661,
-22.500,22.310,22.120,21.949,21.795,21.632,21.425,21.140,20.763,20.310,19.827,19.371,18.997,18.741,18.610,18.589,
-18.648,18.757,18.898,19.062,19.246,19.446,19.650,19.838,19.987,20.087,20.141,20.167,20.194,20.241,20.312,20.387,
-20.430,20.403,20.284,20.080,19.828,19.584,19.407,19.329,19.353,19.444,19.551,19.622,19.627,19.567,19.475,19.394,
-19.365,19.402,19.494,19.602,19.682,19.700,19.644,19.529,19.385,19.249,19.144,19.078,19.037,19.002,18.953,18.881,
-18.791,18.697,18.617,18.558,18.518,18.484,18.440,18.376,18.289,18.187,18.086,18.000,17.934,17.884,17.836,17.771,
-17.673,17.537,17.365,17.172,16.977,16.798,16.650,16.540,16.469,16.430,16.410,16.393,16.363,16.301,16.192,16.031,
-15.820,15.574,15.313,15.061,14.840,14.659,14.519,14.410,14.316,14.226,14.136,14.048,13.971,13.916,13.883,13.868,
-13.854,13.823,13.758,13.655,13.521,13.372,13.233,13.123,13.052,13.016,13.003,12.996,12.982,12.955,12.922,12.896,
-12.894,12.927,12.997,13.095,13.201,13.289,13.337,13.331,13.269,13.165,13.041,12.925,12.844,12.814,12.840,12.911,
-13.005,13.096,13.157,13.173,13.139,13.066,12.974,12.884,12.816,12.777,12.766,12.772,12.781,12.782,12.769,12.748,
-12.731,12.730,12.754,12.804,12.873,12.947,13.012,13.059,13.087,13.102,13.119,13.152,13.213,13.306,13.427,13.563,
-13.701,13.606,13.731,13.843,13.946,14.047,14.153,14.265,14.383,14.506,14.632,14.761,14.895,15.038,15.193,15.363,
-15.550,15.755,15.978,16.219,16.477,16.746,17.020,17.290,17.547,17.786,18.005,18.209,18.404,18.600,18.798,18.996,
-19.186,19.354,19.494,19.604,19.696,19.789,19.907,20.068,20.283,20.547,20.844,21.152,21.447,21.716,21.950,22.152,
-22.327,22.481,22.617,22.736,22.838,22.926,23.005,23.083,23.166,23.256,23.348,23.432,23.494,23.526,23.524,23.494,
-23.452,23.411,23.386,23.382,23.399,23.431,23.474,23.522,23.578,23.639,23.706,23.768,23.812,23.821,23.781,23.689,
-23.556,23.408,23.277,23.195,23.183,23.246,23.371,23.534,23.702,23.847,23.948,23.997,23.998,23.959,23.897,23.825,
-23.756,23.702,23.669,23.661,23.679,23.719,23.777,23.843,23.913,23.981,24.050,24.122,24.204,24.300,24.409,24.529,
-24.654,24.776,24.891,25.000,25.105,25.214,25.330,25.455,25.586,25.714,25.831,25.926,25.993,26.030,26.039,26.025,
-25.997,25.968,25.951,25.959,26.006,26.101,26.247,26.440,26.666,26.909,27.151,27.378,27.584,27.771,27.947,28.123,
-28.306,28.498,28.692,28.883,29.063,29.229,29.385,29.542,29.707,29.889,30.085,30.290,30.491,30.675,30.834,30.968,
-31.081,31.181,31.279,31.378,31.479,31.576,31.661,31.728,31.771,31.793,31.795,31.784,31.763,31.737,31.706,31.670,
-31.630,31.586,31.539,31.491,31.444,31.397,31.352,31.307,31.265,31.225,31.191,31.166,31.151,31.144,31.142,31.138,
-31.123,31.087,31.025,30.938,30.832,30.719,30.613,30.527,30.465,30.427,30.401,30.376,30.339,30.285,30.217,30.146,
-30.087,30.049,30.039,30.051,30.076,30.103,30.126,30.148,30.179,30.231,30.311,30.420,30.547,30.674,30.782,30.861,
-30.909,30.934,30.950,30.969,30.994,31.018,31.029,31.015,30.971,30.902,30.823,30.750,30.697,30.667,30.650,30.632,
-30.597,30.535,30.449,30.350,30.254,30.174,30.117,30.076,30.041,29.999,29.940,29.862,29.769,29.666,29.558,29.444,
-29.318,29.172,29.003,28.811,28.607,28.403,28.214,28.053,27.924,27.827,27.757,27.705,27.664,27.626,27.585,27.534,
-27.469,27.389,27.294,27.189,27.080,26.972,26.869,26.768,26.664,26.550,26.421,26.279,26.130,25.986,25.855,25.740,
-25.637,25.533,25.417,25.280,25.123,24.956,24.798,24.664,24.562,24.488,24.423,24.345,24.230,24.066,23.855,23.608,
-23.344,23.080,22.826,22.582,22.343,22.102,21.858,21.616,21.386,21.182,21.013,20.882,20.786,20.715,20.663,20.624,
-20.599,20.586,20.585,20.584,20.566,20.510,20.395,20.210,19.954,19.642,19.297,18.940,18.590,18.250,17.912,17.561,
-17.180,16.758,16.295,15.802,15.296,14.797,14.321,13.875,13.460,13.071,12.702,12.347,12.003,11.669,11.342,11.017,
-10.689,10.349,9.992,9.616,9.225,8.827,8.433,8.050,7.682,7.325,6.971,6.609,6.230,5.826,5.398,4.946,
-4.478,3.999,3.517,3.041,2.580,2.145,1.747,1.391,1.077,.798,.536,.274,-.005,-.309,-.633,-.961,
--1.273,-1.548,-1.774,-1.955,-2.107,-2.253,-2.422,-2.634,-2.899,-3.218,-3.581,-3.975,-4.385,-4.799,-5.209,-5.606,
--5.983,-6.334,-6.655,-6.946,-7.211,-7.458,-7.693,-7.921,-8.141,-8.347,-8.531,-8.686,-8.812,-8.918,-9.017,-9.123,
--9.249,-9.401,-9.578,-9.777,-9.998,-10.244,-10.526,-10.854,-11.235,-11.664,-12.122,-12.580,-13.003,-13.363,-13.647,-13.858,
--14.018,-14.159,-14.314,-14.508,-14.755,-15.053,-15.392,-15.758,-16.138,-16.521,-16.905,-17.287,-17.669,-18.051,-18.434,-18.818,
--19.202,-19.588,-19.973,-20.355,-20.731,-21.095,-21.441,-21.766,-22.068,-22.348,-22.612,-22.863,-23.106,-23.347,-23.588,-23.833,
--24.083,-24.343,-24.614,-24.896,-25.189,-25.487,-25.785,-26.078,-26.361,-26.633,-26.895,-27.150,-27.401,-27.651,-27.901,-28.151,
--28.400,-28.645,-28.885,-29.118,-29.343,-29.559,-29.767,-29.967,-30.163,-30.360,-30.563,-30.776,-31.002,-31.242,-31.488,-31.734,
--31.970,-32.183,-32.366,-32.513,-32.624,-32.704,-32.766,-32.824,-32.898,-33.003,-33.149,-33.338,-33.561,-33.801,-34.037,-34.248,
--34.422,-34.555,-34.657,-34.744,-34.834,-34.944,-35.081,-35.245,-35.427,-35.615,-35.799,-35.970,-36.124,-36.262,-36.386,-36.497,
--36.596,-36.688,-36.775,-36.864,-36.962,-37.075,-37.204,-37.343,-37.481,-37.604,-37.701,-37.767,-37.806,-37.832,-37.862,-37.915,
--38.003,-38.128,-38.285,-38.460,-38.641,-38.820,-38.992,-39.160,-39.331,-39.510,-39.695,-39.878,-40.046,-40.176,-40.247,-40.240,
--40.146,-39.965,-39.710,-39.405,-39.082,-38.773,-38.505,-38.297,-38.151,-38.058,-37.998,-37.951,-37.896,-37.825,-37.739,-37.649,
--37.569,-37.511,-37.480,-37.473,-37.480,-37.488,-37.487,-37.471,-37.442,-37.407,-37.370,-37.334,-37.295,-37.249,-37.188,-37.111,
--37.022,-36.933,-36.857,-36.806,-36.786,-36.792,-36.812,-36.828,-36.825,-36.789,-36.717,-36.609,-36.471,-36.307,-36.120,-35.912,
--35.685,-35.448,-35.214,-35.006,-34.848,-34.765,-34.771,-34.866,-35.035,-35.249,-35.472,-35.664,-35.796,-35.850,-35.825,-35.735,
--35.607,-35.473,-35.367,-35.311,-35.321,-35.393,-35.516,-35.669,-35.830,-35.982,-36.117,-36.239,-36.358,-36.487,-36.637,-36.810,
--37.001,-37.197,-37.386,-37.559,-37.715,-37.860,-38.006,-38.164,-38.343,-38.543,-38.757,-38.974,-39.180,-39.369,-39.534,-39.677,
--39.803,-39.918,-40.029,-40.145,-40.273,-40.422,-40.598,-40.804,-41.039,-41.292,-41.548,-41.789,-41.998,-42.169,-42.307,-42.431,
--42.569,-42.748,-42.993,-43.315,-43.712,-44.168,-44.660,-45.161,-45.649,-46.109,-46.535,-46.926,-47.282,-47.605,-47.892,-48.138,
--48.335,-48.479,-48.569,-48.614,-48.626,-48.627,-48.635,-48.668,-48.731,-48.821,-48.924,-49.019,-49.085,-49.112,-49.097,-49.055,
--49.009,-48.987,-49.009,-49.085,-49.207,-49.352,-49.490,-49.590,-49.633,-49.612,-49.537,-49.431,-49.316,-49.217,-49.146,-49.105,
--49.089,-49.086,-49.084,-49.077,-49.060,-49.032,-48.994,-48.949,-48.894,-48.832,-48.761,-48.685,-48.605,-48.525,-48.448,-48.375,
--48.306,-48.237,-48.165,-48.088,-48.002,-47.905,-47.796,-47.674,-47.539,-47.395,-47.244,-47.093,-46.948,-46.812,-46.687,-46.571,
--46.458,-46.342,-46.220,-46.091,-45.961,-45.834,-45.717,-45.611,-45.513,-45.417,-45.315,-45.206,-45.090,-44.975,-44.868,-44.776,
--44.700,-44.632,-44.563,-44.481,-44.379,-44.256,-44.120,-43.982,-43.851,-43.731,-43.621,-43.513,-43.400,-43.277,-43.149,-43.022,
--42.906,-42.807,-42.724,-42.649,-42.569,-42.475,-42.363,-42.237,-42.109,-41.993,-41.899,-41.832,-41.783,-41.740,-41.689,-41.618,
--41.524,-41.408,-41.278,-41.142,-41.005,-40.872,-40.743,-40.621,-40.506,-40.401,-40.304,-40.216,-40.131,-40.042,-39.944,-39.834,
--39.716,-39.595,-39.481,-39.380,-39.294,-39.219,-39.146,-39.067,-38.978,-38.878,-38.774,-38.676,-38.590,-38.520,-38.464,-38.417,
--38.370,-38.320,-38.264,-38.203,-38.137,-38.066,-37.989,-37.904,-37.809,-37.708,-37.609,-37.520,-37.451,-37.405,-37.378,-37.361,
--37.344,-37.316,-37.274,-37.222,-37.169,-37.124,-37.093,-37.075,-37.063,-37.050,-37.025,-36.985,-36.932,-36.871,-36.810,-36.752,
--36.698,-36.644,-36.587,-36.523,-36.454,-36.388,-36.329,-36.283,-36.250,-36.224,-36.196,-36.160,-36.110,-36.052,-35.991,-35.938,
--35.900,-35.875,-35.859,-35.838,-35.802,-35.742,-35.658,-35.554,-35.442,-35.334,-35.239,-35.161,-35.097,-35.042,-34.992,-34.940,
--34.887,-34.830,-34.771,-34.708,-34.639,-34.562,-34.473,-34.372,-34.259,-34.139,-34.016,-33.896,-33.784,-33.681,-33.589,-33.505,
--33.427,-33.352,-33.276,-33.193,-33.100,-32.995,-32.880,-32.760,-32.640,-32.530,-32.437,-32.362,-32.305,-32.257,-32.208,-32.147,
--32.069,-31.971,-31.859,-31.742,-31.628,-31.525,-31.434,-31.353,-31.276,-31.195,-31.105,-31.005,-30.897,-30.784,-30.671,-30.561,
--30.451,-30.336,-30.210,-30.072,-29.920,-29.763,-29.613,-29.482,-29.382,-29.317,-29.283,-29.265,-29.243,-29.198,-29.111,-28.975,
--28.794,-28.580,-28.352,-28.130,-27.932,-27.766,-27.634,-27.532,-27.450,-27.378,-27.307,-27.230,-27.144,-27.047,-26.941,-26.829,
--26.713,-26.601,-26.495,-26.400,-26.318,-26.249,-26.190,-26.137,-26.087,-26.037,-25.988,-25.938,-25.889,-25.841,-25.793,-25.741,
--25.685,-25.622,-25.555,-25.484,-25.412,-25.343,-25.275,-25.208,-25.136,-25.056,-24.963,-24.858,-24.742,-24.619,-24.492,-24.366,
--24.242,-24.119,-23.998,-23.874,-23.748,-23.619,-23.486,-23.350,-23.213,-23.076,-22.942,-22.810,-22.683,-22.560,-22.439,-22.318,
--22.195,-22.067,-21.936,-21.805,-21.679,-21.565,-21.467,-21.385,-21.314,-21.247,-21.171,-21.076,-20.956,-20.813,-20.652,-20.485,
--20.323,-20.174,-20.041,-19.918,-19.797,-19.668,-19.520,-19.350,-19.155,-18.940,-18.710,-18.472,-18.232,-17.997,-17.771,-17.557,
--17.360,-17.181,-17.019,-16.872,-16.733,-16.595,-16.454,-16.306,-16.149,-15.984,-15.817,-15.650,-15.487,-15.330,-15.179,-15.032,
--14.887,-14.740,-14.585,-14.419,-14.234,-14.029,-13.802,-13.557,-13.303,-13.051,-12.814,-12.603,-12.424,-12.276,-12.154,-12.050,
--11.954,-11.855,-11.748,-11.630,-11.498,-11.353,-11.195,-11.026,-10.848,-10.664,-10.476,-10.285,-10.092,-9.896,-9.692,-9.478,
--9.253,-9.017,-8.772,-8.522,-8.267,-8.007,-7.739,-7.461,-7.170,-6.869,-6.561,-6.256,-5.958,-5.673,-5.399,-5.133,
--4.868,-4.601,-4.330,-4.056,-3.781,-3.506,-3.226,-2.933,-2.617,-2.267,-1.880,-1.464,-1.031,-.600,-.188,.198,
-.555,.892,1.221,1.552,1.889,2.227,2.558,2.872,3.161,3.427,3.675,3.917,4.164,4.423,4.695,4.979,
-5.271,5.569,5.872,6.185,6.510,6.850,7.202,7.560,7.916,8.267,8.613,8.960,9.317,9.694,10.092,10.507,
-10.926,11.334,11.716,12.069,12.396,12.713,13.038,13.384,13.755,14.135,14.495,14.795,14.993,15.058,14.976,14.757,
-14.433,14.052,13.673,13.350,13.130,13.044,13.104,13.308,13.642,14.087,14.624,15.235,15.911,16.640,17.412,18.209,
-19.007,19.771,20.462,21.044,21.491,21.796,21.972,22.052,22.081,22.103,22.154,22.251,22.391,22.553,22.711,22.839,
-22.926,22.977,23.006,23.033,23.069,23.110,23.133,23.102,22.978,22.738,22.380,21.935,21.457,21.008,20.645,20.401,
-20.277,20.243,20.255,20.266,20.248,20.199,20.137,20.093,20.093,20.142,20.221,20.291,20.311,20.251,20.111,19.924,
-19.741,19.623,19.611,19.721,19.934,20.207,20.491,20.747,20.955,21.119,21.258,21.390,21.523,21.647,21.744,21.788,
-21.764,21.672,21.524,21.343,21.144,20.933,20.700,20.431,20.114,19.750,19.361,18.983,18.657,18.418,18.284,18.250,
-18.297,18.398,18.529,18.677,18.836,19.002,19.168,19.318,19.428,19.477,19.453,19.361,19.225,19.079,18.953,18.867,
-18.821,18.799,18.780,18.747,18.702,18.663,18.656,18.704,18.810,18.956,19.103,19.204,19.225,19.157,19.019,18.856,
-18.719,18.647,18.653,18.719,18.809,18.875,18.885,18.827,18.714,18.577,18.450,18.358,18.305,18.280,18.261,18.225,
-18.159,18.063,17.950,17.836,17.736,17.659,17.602,17.560,17.524,17.488,17.451,17.411,17.368,17.315,17.244,17.144,
-17.008,16.834,16.631,16.412,16.196,16.002,15.843,15.725,15.649,15.610,15.599,15.604,15.611,15.604,15.569,15.489,
-15.358,15.175,14.949,14.696,14.437,14.190,13.965,13.767,13.592,13.434,13.288,13.155,13.042,12.959,12.911,12.896,
-12.905,12.919,12.920,12.895,12.843,12.776,12.714,12.678,12.679,12.718,12.777,12.829,12.845,12.803,12.701,12.552,
-12.388,12.244,12.154,12.139,12.198,12.315,12.457,12.589,12.680,12.712,12.684,12.611,12.518,12.434,12.383,12.376,
-12.412,12.477,12.550,12.611,12.646,12.651,12.633,12.603,12.577,12.560,12.556,12.555,12.549,12.527,12.489,12.442,
-12.398,12.375,12.383,12.428,12.502,12.590,12.675,12.743,12.789,12.819,12.846,12.886,12.952,13.050,13.177,13.320,
-13.467,13.606,13.552,13.666,13.775,13.889,14.014,14.150,14.291,14.430,14.561,14.683,14.801,14.925,15.065,15.229,
-15.418,15.631,15.862,16.103,16.352,16.604,16.858,17.112,17.360,17.594,17.810,18.003,18.175,18.333,18.487,18.643,
-18.807,18.974,19.138,19.293,19.434,19.569,19.707,19.864,20.052,20.273,20.521,20.780,21.030,21.253,21.441,21.597,
-21.731,21.856,21.983,22.116,22.253,22.387,22.508,22.615,22.706,22.787,22.861,22.930,22.990,23.035,23.058,23.057,
-23.037,23.006,22.981,22.974,22.992,23.037,23.101,23.175,23.248,23.311,23.357,23.380,23.375,23.337,23.265,23.160,
-23.033,22.904,22.797,22.736,22.739,22.811,22.941,23.104,23.269,23.408,23.499,23.535,23.524,23.480,23.421,23.362,
-23.313,23.276,23.250,23.234,23.227,23.233,23.255,23.299,23.366,23.453,23.554,23.662,23.770,23.873,23.968,24.055,
-24.138,24.218,24.301,24.391,24.491,24.604,24.731,24.872,25.020,25.170,25.311,25.434,25.528,25.588,25.612,25.601,
-25.563,25.511,25.461,25.432,25.443,25.510,25.640,25.832,26.075,26.348,26.627,26.892,27.126,27.326,27.497,27.651,
-27.805,27.968,28.144,28.330,28.518,28.698,28.866,29.024,29.181,29.347,29.528,29.725,29.932,30.136,30.322,30.479,
-30.603,30.697,30.773,30.844,30.923,31.014,31.116,31.223,31.323,31.405,31.462,31.490,31.490,31.469,31.433,31.389,
-31.344,31.303,31.268,31.240,31.220,31.205,31.191,31.176,31.156,31.129,31.095,31.056,31.017,30.981,30.949,30.921,
-30.891,30.852,30.797,30.720,30.621,30.506,30.389,30.281,30.195,30.135,30.099,30.076,30.054,30.022,29.975,29.917,
-29.857,29.810,29.783,29.778,29.792,29.813,29.831,29.843,29.853,29.872,29.913,29.988,30.096,30.228,30.367,30.496,
-30.600,30.676,30.729,30.770,30.810,30.852,30.893,30.922,30.928,30.905,30.855,30.787,30.716,30.654,30.606,30.572,
-30.540,30.501,30.445,30.370,30.282,30.191,30.106,30.032,29.971,29.919,29.868,29.814,29.754,29.686,29.609,29.523,
-29.422,29.301,29.155,28.984,28.791,28.584,28.376,28.176,27.994,27.833,27.694,27.577,27.479,27.396,27.323,27.255,
-27.185,27.107,27.015,26.908,26.791,26.669,26.551,26.439,26.335,26.235,26.131,26.018,25.897,25.771,25.649,25.538,
-25.439,25.351,25.263,25.166,25.052,24.923,24.789,24.662,24.554,24.469,24.399,24.326,24.229,24.090,23.901,23.669,
-23.410,23.142,22.883,22.638,22.404,22.171,21.928,21.669,21.397,21.124,20.866,20.634,20.434,20.267,20.126,20.004,
-19.899,19.813,19.751,19.715,19.700,19.692,19.669,19.605,19.481,19.291,19.041,18.748,18.437,18.129,17.834,17.552,
-17.272,16.975,16.647,16.277,15.867,15.425,14.964,14.498,14.038,13.591,13.159,12.742,12.340,11.954,11.582,11.222,
-10.868,10.514,10.153,9.781,9.397,9.004,8.612,8.227,7.856,7.498,7.151,6.806,6.454,6.088,5.703,5.300,
-4.881,4.451,4.017,3.586,3.167,2.769,2.402,2.070,1.772,1.498,1.231,.951,.639,.286,-.102,-.507,
--.899,-1.250,-1.537,-1.757,-1.925,-2.069,-2.223,-2.417,-2.668,-2.978,-3.334,-3.718,-4.111,-4.502,-4.887,-5.269,
--5.650,-6.034,-6.415,-6.788,-7.143,-7.474,-7.779,-8.058,-8.314,-8.547,-8.753,-8.930,-9.075,-9.188,-9.280,-9.363,
--9.456,-9.573,-9.724,-9.911,-10.129,-10.373,-10.636,-10.920,-11.227,-11.561,-11.922,-12.302,-12.685,-13.054,-13.388,-13.677,
--13.919,-14.126,-14.317,-14.515,-14.740,-15.003,-15.311,-15.659,-16.041,-16.446,-16.865,-17.290,-17.714,-18.133,-18.541,-18.937,
--19.320,-19.693,-20.057,-20.415,-20.767,-21.111,-21.445,-21.763,-22.062,-22.340,-22.599,-22.842,-23.073,-23.298,-23.520,-23.744,
--23.974,-24.213,-24.468,-24.741,-25.034,-25.345,-25.668,-25.993,-26.311,-26.613,-26.892,-27.148,-27.384,-27.608,-27.827,-28.048,
--28.275,-28.512,-28.757,-29.008,-29.263,-29.519,-29.770,-30.016,-30.253,-30.480,-30.697,-30.905,-31.109,-31.310,-31.515,-31.725,
--31.939,-32.154,-32.362,-32.556,-32.724,-32.860,-32.964,-33.040,-33.101,-33.165,-33.250,-33.369,-33.528,-33.722,-33.938,-34.158,
--34.364,-34.544,-34.695,-34.825,-34.948,-35.081,-35.237,-35.420,-35.629,-35.852,-36.078,-36.292,-36.487,-36.658,-36.803,-36.925,
--37.029,-37.120,-37.209,-37.307,-37.425,-37.574,-37.757,-37.968,-38.190,-38.399,-38.569,-38.680,-38.726,-38.716,-38.675,-38.636,
--38.634,-38.692,-38.819,-39.007,-39.235,-39.478,-39.713,-39.924,-40.108,-40.268,-40.412,-40.547,-40.672,-40.780,-40.856,-40.885,
--40.850,-40.745,-40.569,-40.335,-40.062,-39.776,-39.501,-39.261,-39.067,-38.924,-38.825,-38.754,-38.694,-38.630,-38.554,-38.464,
--38.368,-38.278,-38.205,-38.158,-38.138,-38.138,-38.149,-38.162,-38.169,-38.166,-38.152,-38.130,-38.101,-38.065,-38.017,-37.957,
--37.883,-37.800,-37.714,-37.636,-37.576,-37.538,-37.522,-37.521,-37.525,-37.520,-37.497,-37.450,-37.377,-37.277,-37.151,-36.999,
--36.818,-36.609,-36.375,-36.129,-35.886,-35.673,-35.516,-35.437,-35.451,-35.557,-35.740,-35.968,-36.203,-36.401,-36.529,-36.566,
--36.510,-36.379,-36.208,-36.039,-35.913,-35.859,-35.891,-36.002,-36.170,-36.365,-36.558,-36.731,-36.878,-37.006,-37.130,-37.266,
--37.425,-37.608,-37.809,-38.013,-38.210,-38.391,-38.557,-38.714,-38.871,-39.036,-39.212,-39.398,-39.588,-39.776,-39.955,-40.122,
--40.277,-40.422,-40.559,-40.688,-40.813,-40.936,-41.063,-41.199,-41.352,-41.525,-41.718,-41.924,-42.130,-42.323,-42.490,-42.627,
--42.738,-42.836,-42.942,-43.077,-43.259,-43.497,-43.792,-44.133,-44.508,-44.900,-45.299,-45.698,-46.096,-46.498,-46.904,-47.313,
--47.715,-48.094,-48.428,-48.698,-48.891,-49.005,-49.054,-49.062,-49.059,-49.074,-49.124,-49.209,-49.315,-49.418,-49.491,-49.514,
--49.483,-49.411,-49.322,-49.248,-49.214,-49.233,-49.301,-49.403,-49.510,-49.598,-49.648,-49.654,-49.621,-49.562,-49.495,-49.432,
--49.381,-49.344,-49.316,-49.290,-49.262,-49.225,-49.178,-49.122,-49.058,-48.989,-48.917,-48.848,-48.783,-48.726,-48.675,-48.631,
--48.589,-48.544,-48.493,-48.433,-48.363,-48.283,-48.193,-48.094,-47.985,-47.866,-47.736,-47.597,-47.453,-47.308,-47.166,-47.031,
--46.903,-46.780,-46.659,-46.539,-46.421,-46.308,-46.201,-46.104,-46.012,-45.922,-45.826,-45.718,-45.597,-45.467,-45.338,-45.219,
--45.116,-45.030,-44.957,-44.884,-44.803,-44.705,-44.591,-44.468,-44.346,-44.233,-44.132,-44.040,-43.951,-43.853,-43.741,-43.615,
--43.480,-43.345,-43.220,-43.108,-43.012,-42.925,-42.843,-42.761,-42.677,-42.592,-42.509,-42.430,-42.354,-42.278,-42.200,-42.118,
--42.033,-41.947,-41.861,-41.777,-41.689,-41.593,-41.483,-41.357,-41.217,-41.070,-40.929,-40.802,-40.695,-40.605,-40.525,-40.447,
--40.363,-40.271,-40.175,-40.082,-39.998,-39.926,-39.865,-39.808,-39.747,-39.676,-39.594,-39.504,-39.414,-39.328,-39.249,-39.176,
--39.106,-39.034,-38.959,-38.884,-38.810,-38.742,-38.678,-38.615,-38.549,-38.474,-38.391,-38.303,-38.219,-38.148,-38.096,-38.063,
--38.042,-38.022,-37.993,-37.949,-37.890,-37.824,-37.761,-37.711,-37.677,-37.657,-37.642,-37.624,-37.595,-37.552,-37.498,-37.436,
--37.371,-37.307,-37.242,-37.175,-37.104,-37.032,-36.961,-36.896,-36.842,-36.798,-36.762,-36.727,-36.687,-36.639,-36.585,-36.529,
--36.479,-36.439,-36.411,-36.388,-36.364,-36.329,-36.276,-36.205,-36.121,-36.033,-35.949,-35.876,-35.815,-35.762,-35.714,-35.665,
--35.612,-35.555,-35.495,-35.434,-35.370,-35.302,-35.223,-35.130,-35.022,-34.902,-34.775,-34.652,-34.539,-34.441,-34.358,-34.287,
--34.220,-34.151,-34.072,-33.982,-33.879,-33.768,-33.650,-33.531,-33.415,-33.305,-33.203,-33.112,-33.029,-32.954,-32.883,-32.811,
--32.734,-32.649,-32.554,-32.453,-32.349,-32.245,-32.144,-32.047,-31.951,-31.854,-31.751,-31.642,-31.528,-31.410,-31.295,-31.183,
--31.074,-30.964,-30.844,-30.708,-30.549,-30.368,-30.173,-29.976,-29.796,-29.646,-29.537,-29.471,-29.439,-29.425,-29.410,-29.376,
--29.310,-29.206,-29.066,-28.900,-28.719,-28.536,-28.361,-28.200,-28.055,-27.926,-27.809,-27.701,-27.598,-27.496,-27.392,-27.286,
--27.177,-27.070,-26.966,-26.868,-26.780,-26.700,-26.629,-26.563,-26.501,-26.439,-26.378,-26.317,-26.256,-26.194,-26.131,-26.064,
--25.992,-25.913,-25.830,-25.746,-25.664,-25.587,-25.515,-25.445,-25.373,-25.295,-25.206,-25.107,-25.001,-24.894,-24.791,-24.694,
--24.602,-24.511,-24.413,-24.302,-24.177,-24.037,-23.888,-23.736,-23.589,-23.450,-23.320,-23.198,-23.079,-22.961,-22.842,-22.720,
--22.597,-22.473,-22.352,-22.233,-22.120,-22.012,-21.910,-21.815,-21.724,-21.633,-21.538,-21.433,-21.315,-21.181,-21.035,-20.881,
--20.725,-20.573,-20.425,-20.282,-20.138,-19.989,-19.829,-19.657,-19.474,-19.284,-19.091,-18.895,-18.697,-18.495,-18.285,-18.067,
--17.845,-17.625,-17.416,-17.227,-17.063,-16.924,-16.802,-16.689,-16.572,-16.442,-16.292,-16.125,-15.943,-15.756,-15.571,-15.396,
--15.231,-15.076,-14.923,-14.765,-14.593,-14.399,-14.182,-13.943,-13.690,-13.433,-13.184,-12.951,-12.742,-12.557,-12.394,-12.248,
--12.116,-11.992,-11.875,-11.765,-11.660,-11.557,-11.451,-11.332,-11.196,-11.037,-10.856,-10.658,-10.449,-10.238,-10.031,-9.830,
--9.631,-9.428,-9.214,-8.981,-8.725,-8.448,-8.151,-7.840,-7.522,-7.200,-6.882,-6.570,-6.267,-5.974,-5.691,-5.417,
--5.152,-4.894,-4.643,-4.397,-4.155,-3.911,-3.657,-3.385,-3.082,-2.743,-2.363,-1.948,-1.510,-1.065,-.629,-.215,
-.171,.530,.869,1.196,1.517,1.833,2.143,2.445,2.736,3.018,3.294,3.569,3.845,4.123,4.397,4.662,
-4.915,5.155,5.393,5.639,5.909,6.213,6.551,6.916,7.294,7.670,8.031,8.376,8.711,9.049,9.403,9.781,
-10.182,10.596,11.009,11.406,11.784,12.145,12.501,12.866,13.247,13.639,14.020,14.358,14.609,14.737,14.718,14.550,
-14.253,13.872,13.467,13.103,12.843,12.736,12.814,13.086,13.543,14.158,14.892,15.703,16.546,17.387,18.195,18.951,
-19.639,20.246,20.763,21.180,21.491,21.698,21.812,21.858,21.870,21.888,21.949,22.076,22.276,22.536,22.827,23.114,
-23.364,23.556,23.684,23.752,23.771,23.748,23.681,23.556,23.352,23.050,22.648,22.162,21.634,21.121,20.683,20.367,
-20.194,20.150,20.197,20.280,20.346,20.360,20.313,20.221,20.114,20.026,19.977,19.968,19.982,19.994,19.979,19.928,
-19.848,19.757,19.682,19.642,19.643,19.679,19.733,19.789,19.838,19.883,19.936,20.008,20.104,20.219,20.332,20.420,
-20.463,20.451,20.390,20.299,20.194,20.088,19.979,19.853,19.691,19.477,19.215,18.923,18.637,18.398,18.238,18.173,
-18.198,18.290,18.418,18.554,18.678,18.781,18.860,18.914,18.936,18.915,18.840,18.707,18.520,18.302,18.081,17.888,
-17.747,17.670,17.654,17.686,17.752,17.843,17.954,18.084,18.231,18.385,18.527,18.630,18.673,18.646,18.554,18.422,
-18.286,18.178,18.121,18.115,18.143,18.178,18.189,18.163,18.097,18.010,17.924,17.859,17.826,17.819,17.818,17.803,
-17.754,17.662,17.533,17.381,17.223,17.075,16.947,16.841,16.755,16.685,16.623,16.566,16.506,16.438,16.352,16.242,
-16.104,15.938,15.756,15.570,15.396,15.249,15.133,15.046,14.982,14.930,14.883,14.836,14.791,14.751,14.716,14.684,
-14.645,14.589,14.502,14.377,14.209,14.003,13.768,13.513,13.249,12.989,12.743,12.522,12.340,12.205,12.123,12.094,
-12.104,12.136,12.166,12.177,12.160,12.120,12.073,12.045,12.054,12.112,12.210,12.325,12.421,12.464,12.427,12.305,
-12.114,11.889,11.672,11.508,11.426,11.436,11.530,11.679,11.846,11.996,12.100,12.148,12.144,12.104,12.052,12.009,
-11.991,12.001,12.033,12.075,12.115,12.143,12.159,12.166,12.172,12.185,12.207,12.231,12.249,12.251,12.231,12.191,
-12.142,12.101,12.084,12.103,12.156,12.235,12.325,12.410,12.481,12.539,12.591,12.652,12.735,12.846,12.982,13.132,
-13.284,13.426,13.552,13.544,13.653,13.760,13.878,14.009,14.150,14.294,14.430,14.552,14.664,14.775,14.899,15.050,
-15.235,15.451,15.688,15.935,16.178,16.410,16.630,16.840,17.042,17.237,17.423,17.595,17.749,17.886,18.013,18.140,
-18.278,18.434,18.611,18.803,19.000,19.194,19.381,19.562,19.742,19.928,20.123,20.325,20.525,20.715,20.886,21.036,
-21.170,21.296,21.425,21.562,21.706,21.850,21.985,22.100,22.194,22.268,22.330,22.387,22.442,22.495,22.539,22.566,
-22.575,22.566,22.551,22.542,22.554,22.593,22.658,22.740,22.823,22.890,22.928,22.929,22.892,22.821,22.723,22.610,
-22.495,22.391,22.314,22.279,22.295,22.364,22.478,22.618,22.761,22.882,22.964,22.999,22.995,22.965,22.928,22.900,
-22.887,22.887,22.894,22.897,22.891,22.877,22.865,22.869,22.901,22.968,23.070,23.197,23.333,23.464,23.578,23.670,
-23.742,23.801,23.858,23.921,23.998,24.090,24.199,24.321,24.454,24.592,24.730,24.860,24.973,25.061,25.116,25.132,
-25.112,25.063,25.000,24.945,24.919,24.944,25.034,25.194,25.416,25.683,25.974,26.263,26.530,26.763,26.961,27.133,
-27.292,27.450,27.619,27.798,27.985,28.170,28.344,28.504,28.651,28.792,28.937,29.096,29.273,29.463,29.659,29.846,
-30.013,30.152,30.263,30.352,30.430,30.507,30.593,30.690,30.795,30.899,30.992,31.064,31.108,31.121,31.108,31.075,
-31.029,30.982,30.939,30.907,30.888,30.882,30.889,30.904,30.923,30.941,30.955,30.960,30.954,30.934,30.901,30.853,
-30.789,30.708,30.609,30.492,30.359,30.217,30.075,29.943,29.833,29.752,29.701,29.676,29.666,29.661,29.650,29.628,
-29.598,29.563,29.532,29.510,29.498,29.492,29.488,29.480,29.471,29.467,29.481,29.522,29.600,29.713,29.851,29.999,
-30.140,30.262,30.359,30.435,30.498,30.556,30.615,30.671,30.720,30.751,30.759,30.742,30.706,30.658,30.608,30.561,
-30.519,30.476,30.427,30.366,30.291,30.203,30.107,30.010,29.918,29.835,29.762,29.698,29.641,29.587,29.528,29.460,
-29.373,29.264,29.129,28.969,28.791,28.603,28.415,28.234,28.064,27.903,27.749,27.599,27.453,27.312,27.180,27.061,
-26.955,26.860,26.768,26.675,26.574,26.467,26.355,26.245,26.139,26.038,25.937,25.831,25.715,25.588,25.456,25.328,
-25.212,25.115,25.035,24.965,24.896,24.819,24.730,24.634,24.539,24.452,24.376,24.304,24.223,24.116,23.968,23.775,
-23.544,23.292,23.037,22.796,22.574,22.367,22.163,21.946,21.707,21.444,21.163,20.876,20.596,20.329,20.076,19.837,
-19.607,19.387,19.186,19.013,18.879,18.789,18.737,18.707,18.675,18.616,18.513,18.358,18.156,17.919,17.663,17.401,
-17.137,16.866,16.581,16.269,15.924,15.545,15.138,14.714,14.285,13.861,13.449,13.050,12.663,12.284,11.908,11.531,
-11.149,10.760,10.363,9.958,9.551,9.146,8.751,8.372,8.011,7.669,7.341,7.019,6.696,6.364,6.018,5.658,
-5.286,4.904,4.518,4.135,3.760,3.403,3.070,2.766,2.490,2.232,1.976,1.698,1.377,1.003,.577,.120,
--.335,-.749,-1.093,-1.351,-1.532,-1.668,-1.799,-1.967,-2.202,-2.512,-2.885,-3.295,-3.712,-4.113,-4.488,-4.842,
--5.187,-5.539,-5.907,-6.289,-6.676,-7.055,-7.414,-7.745,-8.048,-8.325,-8.581,-8.815,-9.025,-9.208,-9.361,-9.490,
--9.607,-9.731,-9.880,-10.067,-10.297,-10.564,-10.854,-11.153,-11.448,-11.732,-12.006,-12.274,-12.544,-12.818,-13.098,-13.379,
--13.658,-13.931,-14.197,-14.462,-14.732,-15.016,-15.323,-15.660,-16.028,-16.427,-16.851,-17.292,-17.741,-18.186,-18.618,-19.029,
--19.416,-19.777,-20.119,-20.447,-20.767,-21.082,-21.393,-21.694,-21.982,-22.251,-22.499,-22.724,-22.932,-23.130,-23.323,-23.519,
--23.723,-23.941,-24.176,-24.432,-24.708,-25.005,-25.319,-25.643,-25.969,-26.288,-26.592,-26.875,-27.139,-27.386,-27.623,-27.855,
--28.090,-28.330,-28.578,-28.833,-29.096,-29.367,-29.644,-29.927,-30.213,-30.496,-30.771,-31.028,-31.261,-31.466,-31.646,-31.805,
--31.953,-32.102,-32.258,-32.424,-32.597,-32.769,-32.928,-33.064,-33.175,-33.264,-33.344,-33.429,-33.536,-33.675,-33.848,-34.050,
--34.267,-34.484,-34.692,-34.885,-35.067,-35.248,-35.439,-35.649,-35.880,-36.128,-36.385,-36.638,-36.875,-37.088,-37.272,-37.426,
--37.554,-37.662,-37.758,-37.857,-37.972,-38.119,-38.308,-38.541,-38.808,-39.086,-39.345,-39.552,-39.684,-39.733,-39.707,-39.635,
--39.557,-39.510,-39.524,-39.611,-39.767,-39.970,-40.193,-40.409,-40.598,-40.751,-40.869,-40.958,-41.023,-41.069,-41.095,-41.098,
--41.074,-41.019,-40.934,-40.823,-40.691,-40.547,-40.395,-40.242,-40.092,-39.948,-39.812,-39.687,-39.572,-39.468,-39.372,-39.282,
--39.197,-39.115,-39.038,-38.968,-38.911,-38.867,-38.840,-38.827,-38.827,-38.834,-38.842,-38.847,-38.843,-38.827,-38.794,-38.745,
--38.681,-38.606,-38.526,-38.447,-38.378,-38.322,-38.281,-38.254,-38.234,-38.216,-38.194,-38.163,-38.120,-38.067,-38.002,-37.925,
--37.832,-37.717,-37.575,-37.401,-37.197,-36.974,-36.748,-36.547,-36.396,-36.320,-36.332,-36.433,-36.605,-36.816,-37.025,-37.189,
--37.275,-37.268,-37.172,-37.013,-36.832,-36.673,-36.575,-36.560,-36.632,-36.774,-36.959,-37.155,-37.338,-37.495,-37.628,-37.747,
--37.869,-38.009,-38.173,-38.360,-38.560,-38.764,-38.962,-39.148,-39.322,-39.488,-39.649,-39.809,-39.971,-40.133,-40.295,-40.457,
--40.621,-40.789,-40.964,-41.143,-41.324,-41.500,-41.667,-41.818,-41.952,-42.072,-42.184,-42.294,-42.408,-42.532,-42.664,-42.803,
--42.945,-43.087,-43.227,-43.366,-43.508,-43.657,-43.817,-43.992,-44.183,-44.388,-44.609,-44.846,-45.104,-45.391,-45.715,-46.082,
--46.495,-46.946,-47.415,-47.873,-48.289,-48.630,-48.876,-49.025,-49.092,-49.108,-49.111,-49.138,-49.210,-49.333,-49.489,-49.650,
--49.782,-49.859,-49.869,-49.817,-49.726,-49.623,-49.538,-49.491,-49.488,-49.523,-49.581,-49.643,-49.694,-49.724,-49.729,-49.714,
--49.683,-49.645,-49.603,-49.559,-49.515,-49.466,-49.411,-49.347,-49.274,-49.194,-49.109,-49.025,-48.948,-48.882,-48.830,-48.791,
--48.761,-48.734,-48.706,-48.670,-48.624,-48.569,-48.505,-48.435,-48.361,-48.280,-48.191,-48.092,-47.981,-47.857,-47.724,-47.582,
--47.437,-47.291,-47.147,-47.008,-46.877,-46.756,-46.649,-46.556,-46.473,-46.394,-46.312,-46.218,-46.109,-45.986,-45.855,-45.726,
--45.609,-45.509,-45.426,-45.351,-45.275,-45.187,-45.081,-44.959,-44.829,-44.702,-44.587,-44.489,-44.405,-44.328,-44.245,-44.148,
--44.034,-43.905,-43.769,-43.636,-43.516,-43.416,-43.335,-43.273,-43.224,-43.180,-43.134,-43.079,-43.010,-42.925,-42.825,-42.716,
--42.607,-42.509,-42.428,-42.367,-42.321,-42.277,-42.219,-42.134,-42.016,-41.867,-41.702,-41.536,-41.388,-41.267,-41.176,-41.107,
--41.048,-40.988,-40.918,-40.838,-40.753,-40.668,-40.588,-40.516,-40.450,-40.385,-40.320,-40.251,-40.182,-40.113,-40.045,-39.975,
--39.900,-39.814,-39.715,-39.605,-39.492,-39.387,-39.299,-39.233,-39.187,-39.154,-39.123,-39.086,-39.039,-38.984,-38.925,-38.871,
--38.824,-38.783,-38.744,-38.698,-38.641,-38.572,-38.495,-38.419,-38.351,-38.296,-38.256,-38.223,-38.190,-38.151,-38.098,-38.034,
--37.959,-37.880,-37.800,-37.724,-37.652,-37.585,-37.523,-37.467,-37.418,-37.376,-37.340,-37.308,-37.274,-37.236,-37.193,-37.146,
--37.099,-37.057,-37.023,-36.994,-36.967,-36.935,-36.893,-36.836,-36.766,-36.688,-36.610,-36.536,-36.470,-36.410,-36.354,-36.297,
--36.238,-36.177,-36.118,-36.064,-36.015,-35.968,-35.915,-35.849,-35.760,-35.649,-35.519,-35.381,-35.248,-35.131,-35.036,-34.960,
--34.897,-34.835,-34.764,-34.678,-34.578,-34.469,-34.360,-34.258,-34.166,-34.083,-34.003,-33.917,-33.820,-33.709,-33.586,-33.456,
--33.327,-33.206,-33.097,-33.001,-32.915,-32.834,-32.753,-32.665,-32.569,-32.463,-32.346,-32.222,-32.092,-31.961,-31.833,-31.709,
--31.592,-31.480,-31.369,-31.253,-31.124,-30.977,-30.808,-30.620,-30.420,-30.220,-30.033,-29.871,-29.742,-29.650,-29.591,-29.556,
--29.533,-29.509,-29.472,-29.414,-29.330,-29.219,-29.083,-28.930,-28.765,-28.597,-28.432,-28.274,-28.128,-27.993,-27.869,-27.754,
--27.647,-27.546,-27.452,-27.364,-27.283,-27.207,-27.136,-27.066,-26.997,-26.925,-26.852,-26.776,-26.699,-26.620,-26.538,-26.451,
--26.358,-26.258,-26.154,-26.052,-25.955,-25.869,-25.794,-25.728,-25.664,-25.596,-25.518,-25.426,-25.324,-25.219,-25.116,-25.021,
--24.933,-24.849,-24.759,-24.654,-24.529,-24.384,-24.225,-24.062,-23.907,-23.766,-23.641,-23.530,-23.425,-23.318,-23.206,-23.086,
--22.962,-22.840,-22.725,-22.619,-22.522,-22.428,-22.333,-22.232,-22.121,-22.002,-21.877,-21.749,-21.622,-21.498,-21.378,-21.259,
--21.139,-21.014,-20.881,-20.736,-20.575,-20.399,-20.208,-20.010,-19.810,-19.617,-19.437,-19.272,-19.117,-18.964,-18.802,-18.622,
--18.418,-18.195,-17.961,-17.733,-17.525,-17.347,-17.201,-17.080,-16.969,-16.852,-16.714,-16.548,-16.355,-16.143,-15.928,-15.722,
--15.535,-15.370,-15.221,-15.075,-14.919,-14.740,-14.531,-14.292,-14.032,-13.765,-13.505,-13.266,-13.055,-12.871,-12.710,-12.563,
--12.421,-12.279,-12.137,-11.998,-11.868,-11.750,-11.644,-11.544,-11.440,-11.322,-11.182,-11.018,-10.832,-10.633,-10.431,-10.231,
--10.035,-9.840,-9.636,-9.412,-9.161,-8.878,-8.567,-8.237,-7.900,-7.568,-7.249,-6.946,-6.659,-6.383,-6.110,-5.838,
--5.564,-5.291,-5.024,-4.765,-4.518,-4.281,-4.044,-3.799,-3.531,-3.230,-2.890,-2.513,-2.107,-1.683,-1.255,-.833,
--.425,-.031,.349,.717,1.073,1.415,1.736,2.036,2.313,2.573,2.825,3.081,3.348,3.629,3.918,4.204,
-4.476,4.727,4.960,5.185,5.421,5.685,5.989,6.334,6.707,7.091,7.464,7.814,8.136,8.441,8.744,9.064,
-9.412,9.793,10.199,10.618,11.035,11.444,11.842,12.235,12.628,13.023,13.410,13.770,14.077,14.303,14.426,14.438,
-14.347,14.177,13.966,13.758,13.600,13.532,13.589,13.792,14.152,14.663,15.307,16.051,16.851,17.660,18.432,19.127,
-19.720,20.202,20.579,20.866,21.086,21.263,21.415,21.558,21.703,21.861,22.037,22.240,22.472,22.731,23.008,23.286,
-23.546,23.768,23.933,24.033,24.063,24.026,23.926,23.766,23.548,23.270,22.936,22.553,22.141,21.727,21.343,21.020,
-20.780,20.627,20.549,20.519,20.504,20.474,20.409,20.307,20.176,20.036,19.905,19.797,19.716,19.655,19.606,19.561,
-19.516,19.473,19.437,19.411,19.394,19.381,19.361,19.329,19.285,19.239,19.206,19.201,19.233,19.296,19.371,19.434,
-19.458,19.430,19.355,19.251,19.149,19.075,19.041,19.041,19.049,19.033,18.963,18.827,18.636,18.424,18.233,18.103,
-18.061,18.109,18.226,18.380,18.530,18.646,18.707,18.708,18.653,18.553,18.418,18.257,18.079,17.896,17.719,17.564,
-17.445,17.373,17.350,17.373,17.431,17.511,17.598,17.684,17.759,17.819,17.859,17.874,17.862,17.824,17.766,17.700,
-17.638,17.593,17.572,17.572,17.581,17.585,17.572,17.537,17.484,17.427,17.381,17.359,17.362,17.383,17.403,17.403,
-17.367,17.288,17.170,17.027,16.873,16.722,16.580,16.447,16.319,16.192,16.063,15.932,15.803,15.677,15.553,15.428,
-15.297,15.158,15.013,14.871,14.743,14.638,14.560,14.505,14.461,14.412,14.345,14.252,14.137,14.014,13.900,13.812,
-13.759,13.740,13.740,13.739,13.714,13.645,13.520,13.337,13.105,12.840,12.564,12.299,12.068,11.890,11.773,11.719,
-11.716,11.746,11.783,11.803,11.790,11.737,11.655,11.564,11.490,11.455,11.470,11.531,11.619,11.705,11.756,11.749,
-11.674,11.537,11.363,11.184,11.036,10.947,10.933,10.993,11.113,11.269,11.431,11.575,11.683,11.751,11.782,11.787,
-11.781,11.775,11.775,11.781,11.788,11.793,11.792,11.787,11.784,11.788,11.804,11.833,11.867,11.897,11.914,11.913,
-11.896,11.873,11.858,11.864,11.898,11.958,12.037,12.122,12.202,12.274,12.341,12.416,12.510,12.631,12.780,12.948,
-13.120,13.281,13.423,13.544,13.503,13.608,13.710,13.819,13.940,14.072,14.208,14.339,14.464,14.584,14.712,14.860,
-15.039,15.251,15.492,15.747,16.001,16.239,16.454,16.646,16.820,16.984,17.139,17.286,17.421,17.539,17.641,17.732,
-17.824,17.931,18.065,18.229,18.421,18.632,18.848,19.057,19.253,19.436,19.608,19.776,19.944,20.114,20.284,20.454,
-20.620,20.783,20.943,21.100,21.250,21.389,21.512,21.613,21.692,21.754,21.808,21.864,21.927,21.997,22.069,22.131,
-22.175,22.194,22.194,22.185,22.181,22.195,22.233,22.290,22.353,22.404,22.427,22.412,22.355,22.266,22.157,22.044,
-21.941,21.860,21.809,21.793,21.813,21.870,21.957,22.065,22.179,22.283,22.364,22.415,22.436,22.437,22.431,22.433,
-22.449,22.481,22.521,22.554,22.571,22.568,22.548,22.526,22.521,22.546,22.612,22.713,22.840,22.973,23.096,23.199,
-23.278,23.340,23.394,23.452,23.522,23.606,23.703,23.809,23.920,24.032,24.146,24.261,24.372,24.476,24.561,24.619,
-24.642,24.629,24.586,24.531,24.483,24.468,24.504,24.604,24.767,24.985,25.240,25.512,25.782,26.036,26.268,26.477,
-26.671,26.858,27.046,27.237,27.431,27.624,27.809,27.980,28.134,28.271,28.396,28.518,28.645,28.784,28.937,29.103,
-29.277,29.453,29.621,29.777,29.917,30.042,30.154,30.257,30.354,30.445,30.530,30.603,30.660,30.696,30.708,30.698,
-30.669,30.627,30.580,30.534,30.497,30.472,30.462,30.470,30.495,30.537,30.593,30.655,30.717,30.765,30.790,30.778,
-30.724,30.624,30.483,30.307,30.111,29.910,29.719,29.550,29.413,29.311,29.245,29.209,29.196,29.197,29.203,29.208,
-29.207,29.201,29.190,29.175,29.159,29.142,29.124,29.107,29.093,29.088,29.099,29.134,29.196,29.287,29.401,29.530,
-29.660,29.782,29.890,29.982,30.060,30.132,30.202,30.273,30.342,30.405,30.457,30.492,30.510,30.509,30.495,30.469,
-30.434,30.389,30.334,30.266,30.184,30.089,29.983,29.872,29.763,29.661,29.573,29.500,29.442,29.395,29.350,29.296,
-29.221,29.116,28.977,28.808,28.618,28.422,28.237,28.072,27.933,27.812,27.701,27.586,27.459,27.317,27.165,27.014,
-26.874,26.752,26.648,26.557,26.470,26.378,26.279,26.172,26.063,25.954,25.848,25.741,25.628,25.505,25.368,25.224,
-25.082,24.951,24.842,24.754,24.683,24.619,24.551,24.471,24.381,24.286,24.195,24.114,24.040,23.965,23.874,23.754,
-23.597,23.405,23.188,22.962,22.743,22.538,22.348,22.164,21.970,21.756,21.514,21.245,20.955,20.653,20.345,20.034,
-19.718,19.398,19.076,18.762,18.471,18.221,18.027,17.894,17.818,17.782,17.762,17.732,17.670,17.563,17.406,17.199,
-16.950,16.665,16.348,16.002,15.632,15.241,14.839,14.436,14.044,13.673,13.329,13.013,12.717,12.431,12.141,11.835,
-11.503,11.139,10.747,10.330,9.901,9.470,9.049,8.649,8.273,7.922,7.593,7.278,6.971,6.665,6.355,6.039,
-5.717,5.389,5.055,4.717,4.379,4.047,3.728,3.430,3.156,2.902,2.654,2.392,2.093,1.736,1.316,.846,
-.354,-.117,-.526,-.843,-1.061,-1.198,-1.295,-1.400,-1.558,-1.797,-2.121,-2.511,-2.935,-3.360,-3.761,-4.128,
--4.468,-4.796,-5.129,-5.476,-5.836,-6.201,-6.559,-6.903,-7.229,-7.542,-7.848,-8.153,-8.454,-8.744,-9.012,-9.249,
--9.455,-9.639,-9.821,-10.023,-10.264,-10.551,-10.878,-11.227,-11.572,-11.890,-12.165,-12.394,-12.585,-12.756,-12.927,-13.117,
--13.336,-13.590,-13.876,-14.189,-14.525,-14.879,-15.250,-15.639,-16.047,-16.476,-16.924,-17.385,-17.850,-18.308,-18.748,-19.160,
--19.538,-19.882,-20.195,-20.486,-20.764,-21.039,-21.313,-21.586,-21.854,-22.108,-22.342,-22.552,-22.737,-22.903,-23.058,-23.212,
--23.374,-23.552,-23.751,-23.973,-24.219,-24.487,-24.776,-25.081,-25.397,-25.719,-26.041,-26.359,-26.670,-26.974,-27.269,-27.560,
--27.846,-28.128,-28.407,-28.682,-28.953,-29.222,-29.494,-29.772,-30.060,-30.357,-30.659,-30.957,-31.238,-31.490,-31.704,-31.877,
--32.014,-32.126,-32.231,-32.343,-32.472,-32.620,-32.783,-32.949,-33.105,-33.244,-33.361,-33.465,-33.567,-33.682,-33.822,-33.994,
--34.195,-34.419,-34.655,-34.893,-35.128,-35.362,-35.601,-35.851,-36.117,-36.398,-36.688,-36.978,-37.254,-37.507,-37.731,-37.923,
--38.085,-38.224,-38.345,-38.459,-38.576,-38.706,-38.861,-39.046,-39.262,-39.498,-39.739,-39.960,-40.137,-40.254,-40.304,-40.295,
--40.251,-40.199,-40.168,-40.179,-40.240,-40.346,-40.482,-40.626,-40.763,-40.878,-40.967,-41.032,-41.075,-41.100,-41.110,-41.104,
--41.085,-41.057,-41.025,-40.997,-40.978,-40.970,-40.968,-40.959,-40.930,-40.871,-40.775,-40.647,-40.499,-40.348,-40.212,-40.101,
--40.020,-39.962,-39.917,-39.870,-39.812,-39.740,-39.657,-39.573,-39.501,-39.450,-39.425,-39.424,-39.439,-39.458,-39.469,-39.462,
--39.433,-39.384,-39.321,-39.253,-39.188,-39.132,-39.088,-39.052,-39.020,-38.985,-38.944,-38.895,-38.840,-38.784,-38.731,-38.686,
--38.649,-38.612,-38.567,-38.499,-38.397,-38.254,-38.069,-37.855,-37.632,-37.430,-37.277,-37.199,-37.207,-37.301,-37.458,-37.646,
--37.825,-37.956,-38.013,-37.987,-37.889,-37.746,-37.596,-37.474,-37.409,-37.415,-37.489,-37.614,-37.770,-37.933,-38.087,-38.227,
--38.355,-38.478,-38.606,-38.747,-38.904,-39.074,-39.253,-39.437,-39.621,-39.803,-39.984,-40.163,-40.342,-40.519,-40.693,-40.862,
--41.028,-41.191,-41.355,-41.524,-41.701,-41.885,-42.075,-42.262,-42.441,-42.602,-42.740,-42.852,-42.941,-43.014,-43.083,-43.158,
--43.251,-43.368,-43.509,-43.669,-43.839,-44.008,-44.164,-44.303,-44.423,-44.528,-44.626,-44.726,-44.838,-44.973,-45.140,-45.350,
--45.610,-45.928,-46.303,-46.726,-47.177,-47.625,-48.036,-48.379,-48.631,-48.788,-48.868,-48.901,-48.928,-48.988,-49.104,-49.281,
--49.503,-49.738,-49.950,-50.105,-50.186,-50.190,-50.132,-50.039,-49.939,-49.856,-49.805,-49.788,-49.799,-49.826,-49.856,-49.877,
--49.884,-49.876,-49.855,-49.825,-49.787,-49.744,-49.695,-49.638,-49.572,-49.496,-49.411,-49.322,-49.232,-49.149,-49.077,-49.018,
--48.972,-48.936,-48.905,-48.874,-48.840,-48.800,-48.755,-48.707,-48.655,-48.602,-48.544,-48.480,-48.406,-48.319,-48.218,-48.102,
--47.971,-47.828,-47.677,-47.523,-47.372,-47.229,-47.101,-46.991,-46.899,-46.820,-46.746,-46.670,-46.582,-46.480,-46.366,-46.245,
--46.129,-46.023,-45.933,-45.856,-45.784,-45.706,-45.612,-45.498,-45.368,-45.229,-45.094,-44.971,-44.868,-44.783,-44.709,-44.637,
--44.559,-44.469,-44.367,-44.256,-44.145,-44.041,-43.949,-43.874,-43.816,-43.772,-43.735,-43.700,-43.656,-43.598,-43.522,-43.427,
--43.322,-43.215,-43.118,-43.041,-42.987,-42.950,-42.918,-42.875,-42.807,-42.706,-42.575,-42.423,-42.266,-42.122,-41.999,-41.902,
--41.825,-41.758,-41.690,-41.614,-41.529,-41.436,-41.341,-41.249,-41.161,-41.077,-40.998,-40.923,-40.853,-40.792,-40.740,-40.695,
--40.651,-40.599,-40.528,-40.433,-40.316,-40.185,-40.055,-39.942,-39.857,-39.805,-39.780,-39.772,-39.766,-39.753,-39.725,-39.685,
--39.636,-39.584,-39.532,-39.481,-39.427,-39.367,-39.298,-39.221,-39.140,-39.061,-38.987,-38.920,-38.859,-38.797,-38.731,-38.654,
--38.567,-38.471,-38.371,-38.272,-38.180,-38.098,-38.029,-37.973,-37.929,-37.893,-37.862,-37.833,-37.801,-37.764,-37.723,-37.681,
--37.641,-37.608,-37.586,-37.574,-37.568,-37.562,-37.547,-37.518,-37.473,-37.413,-37.343,-37.268,-37.192,-37.116,-37.039,-36.957,
--36.871,-36.783,-36.699,-36.626,-36.570,-36.531,-36.502,-36.473,-36.429,-36.360,-36.262,-36.139,-36.004,-35.871,-35.754,-35.658,
--35.579,-35.509,-35.434,-35.344,-35.235,-35.113,-34.988,-34.874,-34.779,-34.707,-34.650,-34.594,-34.525,-34.431,-34.308,-34.159,
--33.996,-33.835,-33.688,-33.562,-33.457,-33.367,-33.282,-33.194,-33.095,-32.985,-32.866,-32.741,-32.615,-32.491,-32.369,-32.247,
--32.124,-31.998,-31.868,-31.734,-31.598,-31.459,-31.316,-31.165,-31.004,-30.833,-30.654,-30.472,-30.296,-30.135,-29.998,-29.891,
--29.815,-29.767,-29.736,-29.712,-29.682,-29.636,-29.566,-29.469,-29.348,-29.208,-29.056,-28.900,-28.746,-28.599,-28.460,-28.331,
--28.212,-28.102,-28.001,-27.909,-27.825,-27.748,-27.675,-27.604,-27.531,-27.456,-27.376,-27.292,-27.205,-27.114,-27.018,-26.915,
--26.804,-26.685,-26.560,-26.434,-26.315,-26.210,-26.122,-26.051,-25.992,-25.936,-25.874,-25.798,-25.707,-25.605,-25.497,-25.391,
--25.290,-25.192,-25.093,-24.983,-24.856,-24.710,-24.549,-24.383,-24.223,-24.078,-23.953,-23.845,-23.745,-23.645,-23.536,-23.416,
--23.288,-23.160,-23.041,-22.935,-22.844,-22.761,-22.678,-22.584,-22.473,-22.346,-22.206,-22.063,-21.926,-21.801,-21.691,-21.591,
--21.494,-21.391,-21.273,-21.134,-20.972,-20.789,-20.590,-20.384,-20.179,-19.984,-19.806,-19.646,-19.503,-19.368,-19.230,-19.076,
--18.899,-18.696,-18.473,-18.242,-18.019,-17.817,-17.644,-17.498,-17.368,-17.237,-17.089,-16.910,-16.698,-16.460,-16.213,-15.977,
--15.768,-15.595,-15.455,-15.336,-15.217,-15.077,-14.900,-14.680,-14.421,-14.141,-13.858,-13.594,-13.363,-13.172,-13.017,-12.885,
--12.764,-12.639,-12.504,-12.357,-12.204,-12.053,-11.913,-11.785,-11.669,-11.557,-11.440,-11.310,-11.163,-10.998,-10.819,-10.633,
--10.442,-10.246,-10.041,-9.818,-9.569,-9.290,-8.981,-8.649,-8.307,-7.970,-7.650,-7.354,-7.082,-6.829,-6.585,-6.340,
--6.087,-5.823,-5.552,-5.279,-5.010,-4.746,-4.487,-4.225,-3.950,-3.653,-3.326,-2.970,-2.589,-2.194,-1.795,-1.401,
--1.016,-.637,-.261,.116,.496,.873,1.239,1.581,1.891,2.167,2.414,2.644,2.874,3.115,3.376,3.654,
-3.942,4.227,4.502,4.765,5.023,5.289,5.574,5.887,6.227,6.585,6.946,7.295,7.623,7.929,8.223,8.519,
-8.831,9.168,9.531,9.915,10.310,10.706,11.099,11.488,11.878,12.271,12.665,13.053,13.421,13.754,14.038,14.266,
-14.442,14.575,14.681,14.775,14.870,14.977,15.103,15.259,15.460,15.723,16.063,16.493,17.008,17.591,18.209,18.818,
-19.377,19.852,20.231,20.519,20.743,20.937,21.136,21.365,21.634,21.936,22.254,22.565,22.850,23.099,23.308,23.484,
-23.632,23.759,23.861,23.930,23.954,23.919,23.818,23.649,23.423,23.155,22.868,22.583,22.319,22.086,21.887,21.717,
-21.563,21.411,21.247,21.062,20.855,20.632,20.406,20.191,20.003,19.848,19.727,19.631,19.545,19.453,19.346,19.223,
-19.093,18.973,18.880,18.824,18.806,18.816,18.833,18.837,18.815,18.767,18.705,18.650,18.622,18.632,18.675,18.731,
-18.772,18.769,18.709,18.597,18.458,18.326,18.237,18.210,18.242,18.310,18.376,18.402,18.364,18.261,18.115,17.966,
-17.855,17.818,17.864,17.983,18.142,18.298,18.411,18.452,18.410,18.292,18.119,17.920,17.722,17.546,17.408,17.312,
-17.259,17.240,17.249,17.274,17.305,17.333,17.349,17.349,17.328,17.285,17.222,17.143,17.055,16.968,16.891,16.835,
-16.807,16.807,16.829,16.861,16.888,16.896,16.876,16.832,16.772,16.715,16.675,16.664,16.679,16.708,16.731,16.727,
-16.682,16.594,16.474,16.339,16.209,16.098,16.009,15.933,15.858,15.767,15.650,15.509,15.350,15.188,15.033,14.893,
-14.768,14.651,14.536,14.418,14.297,14.180,14.075,13.986,13.914,13.852,13.788,13.709,13.609,13.488,13.356,13.229,
-13.122,13.047,13.007,12.994,12.993,12.982,12.943,12.862,12.734,12.562,12.361,12.148,11.946,11.774,11.647,11.571,
-11.545,11.554,11.581,11.603,11.600,11.559,11.478,11.366,11.241,11.122,11.030,10.977,10.966,10.987,11.026,11.063,
-11.079,11.061,11.007,10.922,10.820,10.720,10.642,10.604,10.614,10.676,10.783,10.921,11.071,11.217,11.345,11.446,
-11.519,11.568,11.598,11.614,11.621,11.620,11.611,11.595,11.575,11.556,11.543,11.541,11.549,11.566,11.585,11.599,
-11.605,11.606,11.608,11.622,11.655,11.710,11.786,11.874,11.963,12.047,12.123,12.200,12.288,12.398,12.537,12.703,
-12.886,13.069,13.237,13.382,13.503,13.405,13.499,13.589,13.687,13.802,13.938,14.091,14.254,14.422,14.594,14.775,
-14.969,15.183,15.416,15.664,15.915,16.158,16.383,16.587,16.771,16.940,17.099,17.250,17.390,17.514,17.616,17.694,
-17.754,17.806,17.866,17.948,18.062,18.207,18.378,18.563,18.748,18.925,19.088,19.241,19.388,19.538,19.696,19.865,
-20.045,20.232,20.419,20.599,20.764,20.908,21.026,21.118,21.189,21.247,21.302,21.366,21.445,21.537,21.637,21.732,
-21.808,21.857,21.878,21.878,21.872,21.873,21.890,21.923,21.961,21.989,21.991,21.954,21.877,21.770,21.648,21.529,
-21.430,21.360,21.322,21.312,21.327,21.362,21.416,21.485,21.566,21.655,21.743,21.821,21.883,21.928,21.961,21.988,
-22.018,22.057,22.103,22.150,22.187,22.208,22.209,22.197,22.185,22.189,22.222,22.288,22.382,22.493,22.604,22.701,
-22.778,22.838,22.889,22.942,23.009,23.094,23.194,23.303,23.414,23.522,23.625,23.726,23.827,23.929,24.028,24.113,
-24.173,24.201,24.194,24.159,24.112,24.075,24.071,24.116,24.218,24.376,24.578,24.811,25.060,25.312,25.559,25.798,
-26.028,26.250,26.464,26.670,26.867,27.055,27.233,27.403,27.566,27.721,27.869,28.008,28.139,28.262,28.382,28.504,
-28.635,28.781,28.942,29.118,29.303,29.486,29.659,29.815,29.948,30.058,30.144,30.210,30.257,30.286,30.297,30.292,
-30.272,30.240,30.199,30.155,30.113,30.076,30.048,30.033,30.035,30.058,30.106,30.178,30.269,30.368,30.456,30.514,
-30.522,30.464,30.338,30.150,29.919,29.669,29.427,29.214,29.043,28.919,28.836,28.785,28.755,28.736,28.723,28.716,
-28.714,28.719,28.729,28.744,28.759,28.771,28.778,28.783,28.790,28.806,28.838,28.890,28.962,29.051,29.150,29.249,
-29.341,29.424,29.496,29.562,29.627,29.696,29.771,29.853,29.936,30.017,30.089,30.149,30.195,30.228,30.248,30.254,
-30.245,30.219,30.171,30.101,30.007,29.893,29.766,29.632,29.501,29.381,29.280,29.202,29.148,29.113,29.088,29.059,
-29.011,28.930,28.805,28.637,28.435,28.218,28.008,27.824,27.678,27.570,27.490,27.421,27.344,27.249,27.132,27.001,
-26.870,26.752,26.654,26.575,26.506,26.435,26.350,26.246,26.127,26.000,25.874,25.755,25.642,25.530,25.411,25.277,
-25.128,24.970,24.814,24.667,24.538,24.423,24.316,24.209,24.096,23.976,23.856,23.746,23.654,23.583,23.526,23.471,
-23.400,23.298,23.160,22.987,22.792,22.589,22.389,22.198,22.012,21.823,21.620,21.393,21.140,20.864,20.570,20.263,
-19.947,19.620,19.279,18.924,18.560,18.200,17.862,17.567,17.333,17.167,17.066,17.015,16.989,16.961,16.903,16.795,
-16.625,16.388,16.090,15.739,15.348,14.931,14.506,14.087,13.690,13.327,13.006,12.727,12.485,12.269,12.063,11.849,
-11.611,11.338,11.025,10.674,10.293,9.892,9.484,9.079,8.686,8.307,7.944,7.594,7.257,6.930,6.615,6.310,
-6.017,5.731,5.449,5.165,4.874,4.577,4.278,3.985,3.708,3.452,3.215,2.984,2.739,2.455,2.113,1.706,
-1.247,.762,.293,-.122,-.453,-.693,-.856,-.975,-1.093,-1.246,-1.458,-1.734,-2.063,-2.420,-2.783,-3.136,
--3.473,-3.799,-4.124,-4.456,-4.799,-5.148,-5.498,-5.844,-6.185,-6.528,-6.881,-7.250,-7.634,-8.023,-8.398,-8.740,
--9.034,-9.280,-9.492,-9.696,-9.923,-10.196,-10.526,-10.904,-11.305,-11.696,-12.044,-12.327,-12.540,-12.694,-12.813,-12.927,
--13.065,-13.248,-13.486,-13.783,-14.132,-14.528,-14.961,-15.425,-15.915,-16.424,-16.945,-17.467,-17.979,-18.466,-18.917,-19.324,
--19.683,-19.996,-20.272,-20.522,-20.758,-20.992,-21.230,-21.473,-21.717,-21.954,-22.174,-22.370,-22.538,-22.678,-22.799,-22.909,
--23.020,-23.144,-23.288,-23.459,-23.658,-23.886,-24.142,-24.422,-24.725,-25.047,-25.385,-25.734,-26.091,-26.451,-26.809,-27.164,
--27.511,-27.850,-28.178,-28.495,-28.802,-29.097,-29.384,-29.667,-29.948,-30.232,-30.518,-30.805,-31.086,-31.353,-31.596,-31.809,
--31.988,-32.137,-32.265,-32.384,-32.507,-32.642,-32.793,-32.956,-33.123,-33.284,-33.433,-33.569,-33.696,-33.823,-33.962,-34.124,
--34.312,-34.526,-34.759,-35.005,-35.256,-35.513,-35.776,-36.052,-36.345,-36.656,-36.981,-37.309,-37.625,-37.917,-38.172,-38.388,
--38.567,-38.717,-38.849,-38.972,-39.096,-39.226,-39.363,-39.507,-39.656,-39.806,-39.951,-40.082,-40.193,-40.276,-40.328,-40.353,
--40.359,-40.358,-40.363,-40.385,-40.426,-40.484,-40.551,-40.616,-40.671,-40.711,-40.737,-40.756,-40.774,-40.795,-40.821,-40.848,
--40.874,-40.897,-40.918,-40.944,-40.984,-41.042,-41.117,-41.201,-41.277,-41.326,-41.332,-41.289,-41.202,-41.088,-40.973,-40.878,
--40.820,-40.801,-40.808,-40.821,-40.815,-40.771,-40.680,-40.550,-40.396,-40.245,-40.119,-40.036,-40.000,-40.005,-40.035,-40.072,
--40.098,-40.102,-40.080,-40.039,-39.988,-39.935,-39.889,-39.852,-39.819,-39.786,-39.745,-39.691,-39.626,-39.553,-39.481,-39.419,
--39.373,-39.345,-39.329,-39.313,-39.281,-39.215,-39.105,-38.945,-38.742,-38.514,-38.288,-38.094,-37.960,-37.907,-37.940,-38.051,
--38.217,-38.405,-38.579,-38.708,-38.772,-38.765,-38.697,-38.590,-38.472,-38.370,-38.307,-38.295,-38.336,-38.423,-38.544,-38.684,
--38.832,-38.979,-39.122,-39.260,-39.397,-39.535,-39.677,-39.826,-39.983,-40.149,-40.325,-40.510,-40.704,-40.906,-41.112,-41.318,
--41.519,-41.707,-41.880,-42.036,-42.177,-42.311,-42.446,-42.590,-42.751,-42.928,-43.117,-43.305,-43.479,-43.629,-43.747,-43.837,
--43.907,-43.975,-44.054,-44.154,-44.279,-44.420,-44.566,-44.701,-44.815,-44.905,-44.974,-45.032,-45.091,-45.163,-45.254,-45.367,
--45.506,-45.673,-45.874,-46.117,-46.407,-46.744,-47.114,-47.496,-47.860,-48.173,-48.413,-48.574,-48.665,-48.717,-48.767,-48.851,
--48.994,-49.200,-49.457,-49.735,-49.996,-50.208,-50.349,-50.413,-50.410,-50.358,-50.283,-50.207,-50.143,-50.098,-50.073,-50.062,
--50.059,-50.057,-50.053,-50.045,-50.033,-50.014,-49.987,-49.951,-49.902,-49.841,-49.768,-49.687,-49.602,-49.519,-49.441,-49.371,
--49.308,-49.253,-49.202,-49.154,-49.106,-49.059,-49.012,-48.966,-48.921,-48.878,-48.833,-48.785,-48.732,-48.671,-48.601,-48.520,
--48.427,-48.321,-48.201,-48.069,-47.927,-47.782,-47.640,-47.509,-47.395,-47.299,-47.219,-47.148,-47.077,-46.998,-46.908,-46.806,
--46.698,-46.591,-46.491,-46.403,-46.324,-46.249,-46.169,-46.078,-45.974,-45.857,-45.735,-45.613,-45.501,-45.402,-45.316,-45.240,
--45.171,-45.104,-45.035,-44.965,-44.893,-44.820,-44.747,-44.673,-44.601,-44.530,-44.464,-44.402,-44.347,-44.294,-44.240,-44.181,
--44.112,-44.032,-43.945,-43.855,-43.770,-43.695,-43.632,-43.577,-43.522,-43.460,-43.385,-43.293,-43.189,-43.077,-42.965,-42.857,
--42.753,-42.653,-42.553,-42.450,-42.344,-42.238,-42.135,-42.038,-41.947,-41.860,-41.773,-41.684,-41.594,-41.509,-41.434,-41.376,
--41.337,-41.311,-41.289,-41.256,-41.201,-41.118,-41.009,-40.886,-40.764,-40.658,-40.577,-40.523,-40.491,-40.471,-40.452,-40.425,
--40.390,-40.346,-40.299,-40.253,-40.208,-40.164,-40.117,-40.061,-39.995,-39.918,-39.832,-39.741,-39.648,-39.556,-39.462,-39.366,
--39.265,-39.158,-39.045,-38.930,-38.818,-38.715,-38.625,-38.551,-38.495,-38.452,-38.419,-38.388,-38.354,-38.312,-38.261,-38.205,
--38.149,-38.101,-38.069,-38.054,-38.057,-38.072,-38.090,-38.101,-38.099,-38.080,-38.045,-37.997,-37.940,-37.877,-37.805,-37.722,
--37.627,-37.520,-37.406,-37.295,-37.195,-37.117,-37.061,-37.023,-36.992,-36.953,-36.895,-36.813,-36.711,-36.598,-36.486,-36.387,
--36.303,-36.229,-36.155,-36.067,-35.956,-35.820,-35.666,-35.510,-35.367,-35.247,-35.156,-35.086,-35.023,-34.953,-34.863,-34.748,
--34.611,-34.463,-34.315,-34.177,-34.052,-33.938,-33.827,-33.712,-33.588,-33.454,-33.317,-33.184,-33.062,-32.955,-32.861,-32.770,
--32.673,-32.561,-32.429,-32.277,-32.113,-31.944,-31.779,-31.622,-31.476,-31.336,-31.197,-31.054,-30.905,-30.754,-30.604,-30.464,
--30.340,-30.236,-30.151,-30.082,-30.019,-29.956,-29.887,-29.806,-29.715,-29.614,-29.508,-29.398,-29.289,-29.179,-29.069,-28.958,
--28.846,-28.734,-28.623,-28.515,-28.414,-28.318,-28.229,-28.142,-28.057,-27.971,-27.883,-27.792,-27.700,-27.606,-27.508,-27.405,
--27.294,-27.172,-27.041,-26.903,-26.766,-26.638,-26.525,-26.432,-26.356,-26.291,-26.229,-26.159,-26.076,-25.980,-25.873,-25.761,
--25.649,-25.541,-25.433,-25.322,-25.201,-25.067,-24.919,-24.765,-24.611,-24.467,-24.338,-24.223,-24.116,-24.010,-23.896,-23.771,
--23.637,-23.502,-23.373,-23.259,-23.159,-23.071,-22.984,-22.888,-22.778,-22.650,-22.511,-22.371,-22.239,-22.124,-22.026,-21.938,
--21.851,-21.751,-21.628,-21.479,-21.305,-21.113,-20.914,-20.717,-20.532,-20.361,-20.207,-20.065,-19.930,-19.795,-19.651,-19.493,
--19.316,-19.120,-18.908,-18.689,-18.473,-18.271,-18.090,-17.929,-17.780,-17.631,-17.463,-17.265,-17.032,-16.768,-16.490,-16.219,
--15.978,-15.782,-15.635,-15.528,-15.440,-15.346,-15.222,-15.051,-14.830,-14.568,-14.284,-14.003,-13.746,-13.527,-13.351,-13.210,
--13.091,-12.979,-12.859,-12.725,-12.574,-12.412,-12.247,-12.087,-11.937,-11.798,-11.667,-11.540,-11.408,-11.269,-11.120,-10.959,
--10.787,-10.602,-10.403,-10.187,-9.949,-9.686,-9.399,-9.092,-8.773,-8.451,-8.136,-7.837,-7.557,-7.295,-7.046,-6.805,
--6.563,-6.317,-6.064,-5.804,-5.539,-5.269,-4.994,-4.707,-4.403,-4.075,-3.721,-3.340,-2.940,-2.531,-2.128,-1.739,
--1.373,-1.027,-.694,-.365,-.028,.321,.681,1.042,1.392,1.719,2.014,2.277,2.516,2.742,2.971,3.214,
-3.475,3.754,4.045,4.341,4.636,4.930,5.223,5.521,5.825,6.138,6.457,6.781,7.105,7.429,7.755,8.085,
-8.424,8.771,9.123,9.473,9.815,10.146,10.468,10.789,11.121,11.477,11.863,12.280,12.719,13.168,13.612,14.041,
-14.452,14.847,15.231,15.606,15.966,16.298,16.583,16.808,16.966,17.068,17.142,17.228,17.366,17.591,17.916,18.330,
-18.802,19.290,19.752,20.159,20.500,20.788,21.049,21.311,21.598,21.916,22.254,22.588,22.887,23.128,23.299,23.405,
-23.464,23.500,23.533,23.570,23.605,23.618,23.581,23.472,23.281,23.017,22.708,22.393,22.115,21.906,21.778,21.721,
-21.702,21.674,21.591,21.416,21.137,20.768,20.346,19.922,19.548,19.263,19.085,19.003,18.986,18.992,18.980,18.921,
-18.809,18.660,18.502,18.369,18.285,18.259,18.279,18.319,18.347,18.340,18.289,18.202,18.103,18.020,17.976,17.978,
-18.015,18.063,18.092,18.080,18.020,17.925,17.820,17.735,17.696,17.710,17.766,17.839,17.896,17.909,17.868,17.781,
-17.674,17.580,17.530,17.541,17.609,17.714,17.823,17.898,17.911,17.850,17.719,17.538,17.338,17.150,16.997,16.894,
-16.841,16.826,16.834,16.847,16.849,16.832,16.793,16.735,16.664,16.586,16.505,16.426,16.350,16.282,16.224,16.183,
-16.162,16.161,16.178,16.201,16.220,16.220,16.195,16.143,16.074,16.003,15.944,15.910,15.903,15.910,15.915,15.895,
-15.833,15.726,15.582,15.421,15.268,15.146,15.064,15.018,14.994,14.970,14.926,14.853,14.752,14.636,14.522,14.424,
-14.348,14.289,14.234,14.164,14.066,13.935,13.776,13.603,13.436,13.290,13.175,13.093,13.034,12.989,12.942,12.887,
-12.816,12.733,12.641,12.546,12.453,12.365,12.279,12.192,12.101,12.001,11.890,11.772,11.652,11.536,11.435,11.356,
-11.301,11.272,11.262,11.262,11.259,11.243,11.207,11.148,11.070,10.980,10.888,10.803,10.735,10.687,10.662,10.656,
-10.663,10.674,10.679,10.667,10.633,10.575,10.497,10.412,10.335,10.284,10.273,10.312,10.399,10.524,10.671,10.823,
-10.964,11.084,11.179,11.252,11.307,11.349,11.380,11.402,11.413,11.415,11.408,11.396,11.383,11.372,11.364,11.358,
-11.353,11.349,11.348,11.356,11.380,11.427,11.497,11.588,11.691,11.798,11.900,11.997,12.093,12.197,12.320,12.466,
-12.634,12.815,12.994,13.156,13.294,13.405,13.330,13.419,13.510,13.621,13.765,13.946,14.162,14.402,14.656,14.910,
-15.158,15.396,15.625,15.845,16.057,16.260,16.452,16.631,16.799,16.958,17.112,17.263,17.409,17.547,17.669,17.769,
-17.845,17.899,17.938,17.976,18.024,18.093,18.186,18.302,18.432,18.569,18.703,18.830,18.950,19.068,19.189,19.321,
-19.465,19.623,19.789,19.958,20.119,20.266,20.391,20.496,20.582,20.659,20.735,20.821,20.921,21.033,21.152,21.264,
-21.359,21.427,21.467,21.486,21.496,21.512,21.540,21.581,21.624,21.652,21.647,21.598,21.502,21.370,21.222,21.082,
-20.969,20.893,20.856,20.848,20.859,20.879,20.905,20.939,20.988,21.055,21.141,21.239,21.340,21.431,21.505,21.559,
-21.599,21.633,21.668,21.708,21.751,21.791,21.823,21.843,21.854,21.866,21.889,21.932,22.000,22.087,22.181,22.271,
-22.346,22.404,22.448,22.490,22.542,22.614,22.707,22.818,22.937,23.055,23.166,23.268,23.364,23.457,23.548,23.632,
-23.701,23.745,23.757,23.737,23.695,23.647,23.617,23.623,23.679,23.791,23.953,24.155,24.386,24.634,24.893,25.157,
-25.423,25.687,25.939,26.173,26.382,26.561,26.715,26.853,26.986,27.126,27.281,27.449,27.624,27.796,27.954,28.094,
-28.217,28.330,28.446,28.576,28.726,28.896,29.079,29.265,29.440,29.594,29.720,29.814,29.877,29.912,29.922,29.910,
-29.882,29.842,29.797,29.752,29.712,29.680,29.656,29.639,29.629,29.630,29.645,29.681,29.743,29.830,29.934,30.036,
-30.113,30.140,30.097,29.978,29.791,29.557,29.306,29.069,28.870,28.720,28.618,28.551,28.503,28.461,28.418,28.375,
-28.341,28.325,28.332,28.364,28.413,28.468,28.519,28.560,28.591,28.621,28.658,28.712,28.786,28.877,28.974,29.065,
-29.140,29.193,29.228,29.255,29.286,29.333,29.402,29.491,29.594,29.698,29.793,29.871,29.930,29.970,29.997,30.014,
-30.020,30.012,29.984,29.929,29.844,29.729,29.589,29.435,29.278,29.131,29.005,28.906,28.837,28.797,28.776,28.762,
-28.739,28.691,28.603,28.469,28.293,28.088,27.874,27.674,27.507,27.382,27.296,27.235,27.182,27.118,27.035,26.935,
-26.827,26.728,26.650,26.596,26.560,26.526,26.477,26.398,26.285,26.146,25.993,25.842,25.705,25.584,25.472,25.355,
-25.221,25.063,24.880,24.681,24.480,24.286,24.106,23.940,23.785,23.635,23.492,23.357,23.241,23.149,23.084,23.041,
-23.008,22.965,22.896,22.791,22.648,22.475,22.285,22.092,21.904,21.721,21.536,21.340,21.123,20.881,20.617,20.337,
-20.047,19.753,19.452,19.140,18.808,18.454,18.080,17.699,17.330,16.997,16.719,16.505,16.355,16.253,16.176,16.097,
-15.989,15.832,15.618,15.346,15.024,14.666,14.288,13.906,13.535,13.186,12.866,12.578,12.322,12.092,11.880,11.676,
-11.470,11.250,11.009,10.743,10.451,10.136,9.801,9.451,9.089,8.717,8.338,7.954,7.570,7.191,6.826,6.482,
-6.164,5.873,5.605,5.350,5.099,4.841,4.574,4.301,4.030,3.773,3.540,3.331,3.139,2.946,2.729,2.465,
-2.144,1.766,1.346,.911,.491,.112,-.212,-.481,-.704,-.900,-1.087,-1.278,-1.480,-1.694,-1.917,-2.149,
--2.392,-2.653,-2.939,-3.251,-3.591,-3.953,-4.331,-4.719,-5.118,-5.535,-5.976,-6.448,-6.943,-7.448,-7.935,-8.374,
--8.741,-9.026,-9.238,-9.407,-9.574,-9.777,-10.046,-10.387,-10.785,-11.205,-11.608,-11.957,-12.231,-12.430,-12.572,-12.686,
--12.808,-12.968,-13.185,-13.467,-13.814,-14.218,-14.674,-15.172,-15.707,-16.270,-16.850,-17.433,-18.000,-18.530,-19.006,-19.417,
--19.760,-20.042,-20.276,-20.483,-20.679,-20.882,-21.099,-21.332,-21.575,-21.817,-22.043,-22.242,-22.404,-22.528,-22.618,-22.684,
--22.739,-22.799,-22.877,-22.984,-23.126,-23.308,-23.529,-23.788,-24.085,-24.416,-24.777,-25.163,-25.567,-25.979,-26.392,-26.797,
--27.190,-27.567,-27.929,-28.280,-28.622,-28.959,-29.294,-29.626,-29.953,-30.270,-30.576,-30.866,-31.139,-31.392,-31.627,-31.845,
--32.045,-32.232,-32.409,-32.579,-32.746,-32.915,-33.087,-33.260,-33.433,-33.601,-33.762,-33.914,-34.062,-34.210,-34.367,-34.541,
--34.735,-34.950,-35.182,-35.425,-35.671,-35.919,-36.171,-36.431,-36.708,-37.007,-37.327,-37.662,-37.997,-38.313,-38.596,-38.832,
--39.021,-39.168,-39.288,-39.396,-39.508,-39.632,-39.769,-39.914,-40.056,-40.183,-40.287,-40.360,-40.402,-40.417,-40.411,-40.394,
--40.377,-40.367,-40.372,-40.392,-40.425,-40.462,-40.496,-40.515,-40.514,-40.492,-40.454,-40.412,-40.379,-40.365,-40.377,-40.417,
--40.479,-40.555,-40.638,-40.723,-40.811,-40.904,-41.005,-41.116,-41.231,-41.341,-41.436,-41.504,-41.544,-41.560,-41.563,-41.571,
--41.599,-41.654,-41.731,-41.816,-41.884,-41.911,-41.877,-41.775,-41.612,-41.410,-41.196,-41.003,-40.852,-40.758,-40.719,-40.723,
--40.750,-40.781,-40.799,-40.797,-40.772,-40.732,-40.686,-40.641,-40.603,-40.570,-40.538,-40.501,-40.454,-40.395,-40.326,-40.254,
--40.187,-40.133,-40.093,-40.065,-40.040,-40.003,-39.939,-39.837,-39.692,-39.507,-39.296,-39.081,-38.886,-38.737,-38.653,-38.645,
--38.712,-38.842,-39.014,-39.199,-39.371,-39.504,-39.582,-39.598,-39.557,-39.473,-39.367,-39.265,-39.186,-39.149,-39.162,-39.225,
--39.331,-39.466,-39.618,-39.775,-39.928,-40.074,-40.216,-40.355,-40.496,-40.642,-40.794,-40.953,-41.119,-41.294,-41.480,-41.677,
--41.884,-42.097,-42.307,-42.503,-42.675,-42.818,-42.935,-43.036,-43.139,-43.262,-43.417,-43.610,-43.832,-44.066,-44.290,-44.483,
--44.635,-44.745,-44.826,-44.895,-44.967,-45.055,-45.157,-45.266,-45.370,-45.458,-45.525,-45.577,-45.624,-45.678,-45.750,-45.841,
--45.947,-46.059,-46.172,-46.285,-46.408,-46.555,-46.742,-46.980,-47.264,-47.579,-47.894,-48.179,-48.407,-48.569,-48.670,-48.736,
--48.797,-48.887,-49.026,-49.219,-49.457,-49.714,-49.961,-50.173,-50.332,-50.431,-50.476,-50.478,-50.452,-50.413,-50.369,-50.329,
--50.296,-50.271,-50.256,-50.250,-50.249,-50.252,-50.251,-50.240,-50.215,-50.173,-50.114,-50.043,-49.966,-49.890,-49.818,-49.753,
--49.692,-49.633,-49.572,-49.507,-49.438,-49.368,-49.301,-49.241,-49.189,-49.144,-49.105,-49.067,-49.027,-48.982,-48.932,-48.877,
--48.816,-48.749,-48.673,-48.586,-48.484,-48.369,-48.242,-48.112,-47.985,-47.871,-47.772,-47.690,-47.619,-47.551,-47.479,-47.397,
--47.303,-47.200,-47.094,-46.991,-46.895,-46.808,-46.728,-46.653,-46.579,-46.504,-46.428,-46.351,-46.273,-46.196,-46.118,-46.039,
--45.959,-45.881,-45.806,-45.740,-45.684,-45.638,-45.598,-45.557,-45.507,-45.442,-45.363,-45.273,-45.179,-45.091,-45.014,-44.949,
--44.894,-44.839,-44.777,-44.701,-44.610,-44.507,-44.400,-44.296,-44.204,-44.125,-44.060,-44.006,-43.957,-43.908,-43.854,-43.790,
--43.713,-43.621,-43.515,-43.397,-43.273,-43.151,-43.036,-42.933,-42.845,-42.766,-42.688,-42.604,-42.508,-42.399,-42.283,-42.172,
--42.077,-42.008,-41.967,-41.948,-41.939,-41.924,-41.892,-41.834,-41.751,-41.653,-41.548,-41.448,-41.361,-41.288,-41.226,-41.172,
--41.120,-41.069,-41.019,-40.972,-40.931,-40.896,-40.865,-40.832,-40.791,-40.738,-40.668,-40.582,-40.483,-40.374,-40.260,-40.143,
--40.025,-39.906,-39.786,-39.665,-39.545,-39.431,-39.327,-39.238,-39.167,-39.116,-39.080,-39.053,-39.026,-38.992,-38.944,-38.881,
--38.806,-38.726,-38.652,-38.592,-38.551,-38.532,-38.528,-38.534,-38.540,-38.540,-38.532,-38.517,-38.496,-38.471,-38.443,-38.407,
--38.358,-38.291,-38.202,-38.096,-37.979,-37.862,-37.754,-37.662,-37.584,-37.517,-37.451,-37.378,-37.295,-37.205,-37.113,-37.028,
--36.954,-36.892,-36.834,-36.767,-36.680,-36.564,-36.417,-36.247,-36.068,-35.894,-35.738,-35.605,-35.493,-35.394,-35.298,-35.195,
--35.082,-34.962,-34.838,-34.715,-34.597,-34.481,-34.361,-34.232,-34.089,-33.935,-33.775,-33.622,-33.484,-33.370,-33.280,-33.205,
--33.133,-33.049,-32.942,-32.807,-32.647,-32.470,-32.287,-32.111,-31.949,-31.801,-31.666,-31.539,-31.414,-31.289,-31.163,-31.040,
--30.923,-30.813,-30.711,-30.612,-30.513,-30.410,-30.300,-30.186,-30.070,-29.959,-29.856,-29.765,-29.684,-29.609,-29.536,-29.459,
--29.373,-29.279,-29.177,-29.071,-28.965,-28.862,-28.762,-28.664,-28.566,-28.466,-28.365,-28.262,-28.160,-28.060,-27.962,-27.864,
--27.763,-27.654,-27.534,-27.404,-27.267,-27.129,-26.998,-26.879,-26.774,-26.683,-26.599,-26.515,-26.425,-26.325,-26.216,-26.100,
--25.982,-25.867,-25.755,-25.644,-25.532,-25.414,-25.288,-25.155,-25.020,-24.888,-24.762,-24.643,-24.528,-24.412,-24.289,-24.159,
--24.023,-23.886,-23.756,-23.638,-23.532,-23.433,-23.333,-23.222,-23.096,-22.953,-22.804,-22.659,-22.533,-22.432,-22.357,-22.297,
--22.237,-22.158,-22.047,-21.898,-21.715,-21.511,-21.302,-21.104,-20.927,-20.774,-20.642,-20.522,-20.401,-20.270,-20.123,-19.958,
--19.775,-19.578,-19.372,-19.164,-18.959,-18.764,-18.579,-18.406,-18.237,-18.065,-17.878,-17.666,-17.423,-17.153,-16.866,-16.582,
--16.321,-16.100,-15.928,-15.800,-15.703,-15.614,-15.507,-15.363,-15.173,-14.939,-14.675,-14.402,-14.140,-13.906,-13.707,-13.542,
--13.402,-13.275,-13.148,-13.013,-12.866,-12.707,-12.541,-12.374,-12.209,-12.051,-11.900,-11.755,-11.616,-11.480,-11.344,-11.204,
--11.055,-10.892,-10.713,-10.512,-10.289,-10.045,-9.784,-9.511,-9.230,-8.946,-8.662,-8.377,-8.093,-7.808,-7.523,-7.239,
--6.958,-6.683,-6.416,-6.157,-5.904,-5.652,-5.394,-5.121,-4.825,-4.499,-4.140,-3.750,-3.335,-2.908,-2.481,-2.068,
--1.680,-1.324,-.996,-.691,-.397,-.102,.205,.528,.864,1.205,1.540,1.857,2.150,2.417,2.663,2.898,
-3.134,3.380,3.644,3.926,4.224,4.529,4.836,5.137,5.430,5.714,5.993,6.275,6.567,6.878,7.213,7.574,
-7.956,8.350,8.740,9.110,9.449,9.751,10.021,10.275,10.537,10.833,11.184,11.604,12.091,12.634,13.210,13.799,
-14.383,14.949,15.493,16.014,16.509,16.966,17.369,17.694,17.923,18.045,18.070,18.026,17.961,17.927,17.974,18.135,
-18.417,18.804,19.258,19.735,20.190,20.595,20.940,21.233,21.492,21.735,21.976,22.214,22.437,22.626,22.766,22.850,
-22.885,22.890,22.892,22.913,22.964,23.038,23.107,23.137,23.091,22.944,22.693,22.362,21.993,21.640,21.351,21.154,
-21.049,21.006,20.971,20.885,20.695,20.378,19.941,19.425,18.896,18.424,18.070,17.866,17.810,17.869,17.991,18.116,
-18.198,18.213,18.166,18.080,17.991,17.930,17.913,17.939,17.984,18.019,18.016,17.958,17.851,17.714,17.578,17.476,
-17.426,17.433,17.481,17.547,17.600,17.623,17.607,17.562,17.505,17.459,17.438,17.448,17.479,17.513,17.531,17.518,
-17.469,17.392,17.304,17.224,17.168,17.143,17.144,17.155,17.157,17.132,17.069,16.968,16.839,16.701,16.573,16.468,
-16.394,16.347,16.317,16.288,16.247,16.183,16.097,15.996,15.892,15.798,15.725,15.679,15.658,15.658,15.670,15.687,
-15.704,15.718,15.730,15.737,15.736,15.724,15.696,15.648,15.583,15.508,15.431,15.363,15.309,15.271,15.238,15.196,
-15.132,15.034,14.901,14.740,14.568,14.404,14.263,14.155,14.075,14.016,13.962,13.905,13.840,13.774,13.719,13.688,
-13.689,13.717,13.758,13.789,13.783,13.719,13.588,13.396,13.166,12.927,12.712,12.548,12.449,12.413,12.424,12.457,
-12.482,12.476,12.422,12.317,12.168,11.994,11.813,11.647,11.507,11.398,11.320,11.262,11.213,11.165,11.111,11.050,
-10.985,10.922,10.865,10.820,10.786,10.763,10.748,10.737,10.726,10.713,10.693,10.667,10.632,10.591,10.547,10.504,
-10.469,10.445,10.433,10.428,10.421,10.402,10.362,10.296,10.210,10.114,10.028,9.969,9.953,9.984,10.059,10.167,
-10.291,10.419,10.538,10.645,10.743,10.833,10.921,11.005,11.082,11.147,11.195,11.224,11.235,11.234,11.225,11.213,
-11.202,11.191,11.182,11.177,11.181,11.199,11.238,11.303,11.392,11.502,11.624,11.751,11.879,12.008,12.142,12.286,
-12.444,12.614,12.788,12.955,13.104,13.229,13.330,13.338,13.456,13.592,13.761,13.976,14.241,14.549,14.883,15.223,
-15.547,15.839,16.089,16.297,16.466,16.607,16.726,16.832,16.930,17.025,17.118,17.211,17.305,17.400,17.495,17.587,
-17.673,17.750,17.818,17.878,17.936,17.996,18.061,18.137,18.221,18.312,18.405,18.497,18.585,18.669,18.751,18.836,
-18.927,19.029,19.142,19.265,19.394,19.523,19.648,19.764,19.872,19.975,20.078,20.187,20.304,20.428,20.554,20.673,
-20.775,20.855,20.913,20.956,20.994,21.040,21.100,21.172,21.242,21.291,21.297,21.247,21.136,20.977,20.794,20.616,
-20.470,20.372,20.326,20.322,20.344,20.373,20.401,20.428,20.460,20.509,20.583,20.682,20.798,20.914,21.016,21.094,
-21.146,21.179,21.206,21.240,21.286,21.344,21.407,21.465,21.510,21.542,21.566,21.592,21.630,21.685,21.757,21.837,
-21.915,21.981,22.034,22.077,22.122,22.180,22.260,22.362,22.481,22.608,22.730,22.841,22.937,23.020,23.095,23.162,
-23.219,23.260,23.277,23.265,23.227,23.172,23.118,23.085,23.091,23.148,23.258,23.418,23.619,23.850,24.106,24.382,
-24.674,24.979,25.287,25.583,25.853,26.083,26.267,26.408,26.521,26.625,26.740,26.881,27.052,27.246,27.448,27.641,
-27.811,27.954,28.072,28.176,28.282,28.401,28.539,28.696,28.864,29.034,29.193,29.331,29.441,29.518,29.560,29.568,
-29.545,29.500,29.441,29.379,29.326,29.287,29.264,29.253,29.249,29.243,29.236,29.232,29.239,29.270,29.331,29.423,
-29.532,29.636,29.706,29.719,29.660,29.533,29.353,29.151,28.955,28.790,28.667,28.584,28.529,28.485,28.440,28.392,
-28.348,28.319,28.318,28.350,28.411,28.488,28.561,28.615,28.640,28.642,28.631,28.626,28.642,28.687,28.757,28.840,
-28.919,28.980,29.016,29.031,29.040,29.059,29.103,29.180,29.285,29.408,29.531,29.640,29.725,29.782,29.816,29.833,
-29.839,29.834,29.816,29.777,29.711,29.612,29.483,29.330,29.165,29.002,28.854,28.731,28.637,28.573,28.533,28.507,
-28.482,28.445,28.382,28.285,28.151,27.985,27.801,27.617,27.452,27.318,27.220,27.152,27.098,27.042,26.972,26.883,
-26.782,26.682,26.599,26.545,26.520,26.513,26.504,26.472,26.400,26.284,26.132,25.960,25.788,25.630,25.490,25.360,
-25.226,25.072,24.887,24.670,24.429,24.180,23.939,23.716,23.518,23.343,23.188,23.047,22.921,22.811,22.722,22.655,
-22.606,22.564,22.515,22.447,22.349,22.222,22.070,21.906,21.740,21.579,21.419,21.254,21.072,20.861,20.620,20.349,
-20.060,19.764,19.468,19.176,18.882,18.576,18.247,17.891,17.511,17.121,16.742,16.396,16.099,15.859,15.671,15.521,
-15.386,15.246,15.081,14.884,14.652,14.392,14.113,13.828,13.544,13.266,12.996,12.735,12.480,12.230,11.984,11.742,
-11.502,11.264,11.024,10.780,10.529,10.266,9.989,9.694,9.378,9.041,8.680,8.299,7.901,7.496,7.093,6.704,
-6.340,6.008,5.710,5.440,5.190,4.947,4.703,4.450,4.191,3.931,3.683,3.457,3.258,3.087,2.934,2.785,
-2.620,2.425,2.189,1.909,1.589,1.239,.875,.510,.161,-.161,-.443,-.679,-.866,-1.006,-1.111,-1.197,
--1.288,-1.406,-1.572,-1.795,-2.080,-2.421,-2.810,-3.241,-3.712,-4.228,-4.795,-5.417,-6.083,-6.771,-7.443,-8.054,
--8.564,-8.950,-9.212,-9.379,-9.497,-9.621,-9.799,-10.056,-10.389,-10.770,-11.158,-11.508,-11.791,-11.998,-12.144,-12.265,
--12.400,-12.585,-12.844,-13.182,-13.592,-14.058,-14.561,-15.088,-15.632,-16.190,-16.759,-17.332,-17.895,-18.428,-18.911,-19.324,
--19.660,-19.920,-20.120,-20.282,-20.433,-20.598,-20.793,-21.023,-21.282,-21.556,-21.825,-22.067,-22.266,-22.410,-22.501,-22.544,
--22.554,-22.552,-22.557,-22.590,-22.664,-22.790,-22.972,-23.213,-23.508,-23.855,-24.245,-24.672,-25.124,-25.592,-26.062,-26.521,
--26.961,-27.374,-27.762,-28.129,-28.484,-28.837,-29.195,-29.564,-29.940,-30.316,-30.680,-31.024,-31.337,-31.616,-31.863,-32.084,
--32.288,-32.483,-32.676,-32.872,-33.072,-33.275,-33.479,-33.680,-33.875,-34.064,-34.246,-34.420,-34.591,-34.762,-34.939,-35.127,
--35.330,-35.549,-35.782,-36.022,-36.264,-36.501,-36.733,-36.960,-37.190,-37.430,-37.686,-37.962,-38.251,-38.542,-38.819,-39.068,
--39.276,-39.443,-39.575,-39.684,-39.787,-39.899,-40.028,-40.173,-40.328,-40.478,-40.611,-40.714,-40.782,-40.815,-40.819,-40.802,
--40.775,-40.745,-40.719,-40.697,-40.679,-40.661,-40.638,-40.606,-40.562,-40.506,-40.441,-40.373,-40.310,-40.264,-40.243,-40.252,
--40.294,-40.367,-40.464,-40.577,-40.698,-40.821,-40.944,-41.066,-41.188,-41.314,-41.444,-41.579,-41.720,-41.865,-42.014,-42.168,
--42.327,-42.487,-42.645,-42.791,-42.913,-42.996,-43.026,-42.994,-42.897,-42.742,-42.543,-42.322,-42.104,-41.910,-41.757,-41.651,
--41.592,-41.570,-41.568,-41.573,-41.571,-41.555,-41.524,-41.482,-41.436,-41.392,-41.353,-41.320,-41.288,-41.254,-41.212,-41.162,
--41.104,-41.043,-40.985,-40.932,-40.885,-40.840,-40.789,-40.722,-40.631,-40.510,-40.361,-40.192,-40.015,-39.847,-39.705,-39.604,
--39.556,-39.564,-39.627,-39.738,-39.882,-40.042,-40.195,-40.322,-40.407,-40.438,-40.417,-40.350,-40.257,-40.159,-40.080,-40.036,
--40.038,-40.086,-40.174,-40.291,-40.423,-40.563,-40.706,-40.852,-41.001,-41.156,-41.314,-41.470,-41.621,-41.763,-41.897,-42.032,
--42.176,-42.339,-42.527,-42.735,-42.953,-43.164,-43.353,-43.511,-43.640,-43.751,-43.864,-43.999,-44.170,-44.378,-44.612,-44.850,
--45.071,-45.258,-45.405,-45.517,-45.610,-45.700,-45.800,-45.914,-46.035,-46.151,-46.252,-46.331,-46.392,-46.445,-46.503,-46.576,
--46.666,-46.766,-46.863,-46.944,-47.003,-47.045,-47.088,-47.153,-47.265,-47.434,-47.659,-47.923,-48.198,-48.453,-48.664,-48.820,
--48.928,-49.004,-49.071,-49.153,-49.263,-49.405,-49.572,-49.751,-49.927,-50.086,-50.221,-50.327,-50.406,-50.459,-50.490,-50.502,
--50.499,-50.487,-50.470,-50.456,-50.450,-50.451,-50.457,-50.463,-50.459,-50.439,-50.401,-50.346,-50.280,-50.211,-50.145,-50.087,
--50.035,-49.985,-49.931,-49.866,-49.790,-49.706,-49.621,-49.542,-49.477,-49.427,-49.391,-49.364,-49.339,-49.310,-49.275,-49.234,
--49.187,-49.139,-49.088,-49.033,-48.969,-48.893,-48.802,-48.698,-48.585,-48.471,-48.363,-48.267,-48.184,-48.110,-48.038,-47.963,
--47.879,-47.784,-47.680,-47.573,-47.468,-47.370,-47.282,-47.207,-47.144,-47.091,-47.049,-47.014,-46.984,-46.954,-46.918,-46.870,
--46.807,-46.728,-46.641,-46.552,-46.472,-46.410,-46.367,-46.339,-46.318,-46.289,-46.243,-46.174,-46.083,-45.979,-45.872,-45.775,
--45.692,-45.623,-45.562,-45.498,-45.422,-45.328,-45.217,-45.094,-44.969,-44.854,-44.756,-44.679,-44.623,-44.584,-44.555,-44.527,
--44.494,-44.449,-44.390,-44.316,-44.228,-44.132,-44.034,-43.940,-43.854,-43.776,-43.702,-43.624,-43.535,-43.426,-43.297,-43.151,
--43.000,-42.857,-42.736,-42.645,-42.588,-42.557,-42.543,-42.532,-42.512,-42.475,-42.418,-42.345,-42.260,-42.169,-42.078,-41.990,
--41.904,-41.823,-41.746,-41.675,-41.612,-41.557,-41.511,-41.473,-41.437,-41.400,-41.354,-41.297,-41.224,-41.137,-41.036,-40.924,
--40.804,-40.678,-40.548,-40.417,-40.286,-40.160,-40.043,-39.940,-39.857,-39.796,-39.759,-39.740,-39.732,-39.724,-39.706,-39.669,
--39.609,-39.528,-39.432,-39.329,-39.230,-39.143,-39.070,-39.013,-38.966,-38.928,-38.894,-38.866,-38.844,-38.833,-38.832,-38.841,
--38.852,-38.856,-38.844,-38.807,-38.744,-38.656,-38.551,-38.438,-38.323,-38.213,-38.106,-38.003,-37.902,-37.800,-37.701,-37.610,
--37.529,-37.461,-37.403,-37.348,-37.284,-37.202,-37.094,-36.957,-36.798,-36.625,-36.449,-36.281,-36.125,-35.981,-35.847,-35.717,
--35.588,-35.458,-35.328,-35.202,-35.080,-34.960,-34.841,-34.715,-34.578,-34.431,-34.275,-34.117,-33.968,-33.834,-33.718,-33.618,
--33.527,-33.435,-33.331,-33.209,-33.070,-32.916,-32.756,-32.596,-32.441,-32.294,-32.153,-32.015,-31.878,-31.743,-31.613,-31.492,
--31.385,-31.291,-31.209,-31.131,-31.050,-30.957,-30.848,-30.723,-30.588,-30.450,-30.318,-30.199,-30.094,-30.000,-29.914,-29.829,
--29.741,-29.648,-29.552,-29.455,-29.363,-29.276,-29.194,-29.114,-29.031,-28.941,-28.842,-28.736,-28.626,-28.515,-28.407,-28.304,
--28.203,-28.101,-27.993,-27.875,-27.747,-27.613,-27.476,-27.342,-27.217,-27.102,-26.995,-26.891,-26.786,-26.676,-26.560,-26.438,
--26.314,-26.191,-26.072,-25.956,-25.843,-25.729,-25.614,-25.496,-25.377,-25.258,-25.140,-25.024,-24.906,-24.785,-24.656,-24.521,
--24.383,-24.247,-24.120,-24.005,-23.903,-23.806,-23.705,-23.590,-23.454,-23.298,-23.131,-22.969,-22.829,-22.721,-22.650,-22.607,
--22.576,-22.534,-22.462,-22.350,-22.197,-22.013,-21.815,-21.620,-21.442,-21.285,-21.146,-21.016,-20.885,-20.743,-20.586,-20.415,
--20.235,-20.051,-19.867,-19.685,-19.504,-19.324,-19.140,-18.951,-18.755,-18.550,-18.332,-18.100,-17.852,-17.591,-17.326,-17.066,
--16.827,-16.619,-16.449,-16.313,-16.199,-16.087,-15.955,-15.787,-15.575,-15.320,-15.039,-14.750,-14.475,-14.230,-14.020,-13.844,
--13.691,-13.549,-13.406,-13.257,-13.099,-12.936,-12.773,-12.614,-12.460,-12.311,-12.162,-12.013,-11.864,-11.715,-11.569,-11.426,
--11.285,-11.139,-10.980,-10.801,-10.597,-10.368,-10.118,-9.857,-9.593,-9.332,-9.077,-8.823,-8.563,-8.288,-7.994,-7.681,
--7.356,-7.030,-6.715,-6.419,-6.146,-5.892,-5.647,-5.398,-5.132,-4.839,-4.513,-4.155,-3.770,-3.367,-2.955,-2.545,
--2.147,-1.767,-1.411,-1.079,-.770,-.476,-.189,.099,.397,.708,1.032,1.361,1.686,1.998,2.289,2.555,
-2.802,3.038,3.273,3.520,3.785,4.069,4.369,4.676,4.979,5.273,5.554,5.824,6.094,6.375,6.679,7.014,
-7.380,7.770,8.169,8.560,8.927,9.258,9.553,9.822,10.089,10.380,10.723,11.140,11.639,12.217,12.854,13.525,
-14.199,14.850,15.458,16.013,16.513,16.959,17.351,17.685,17.955,18.153,18.272,18.319,18.310,18.278,18.260,18.298,
-18.423,18.652,18.979,19.381,19.819,20.250,20.637,20.957,21.203,21.386,21.525,21.641,21.750,21.857,21.957,22.040,
-22.094,22.119,22.123,22.122,22.139,22.190,22.279,22.389,22.489,22.537,22.492,22.325,22.034,21.641,21.190,20.736,
-20.328,19.997,19.744,19.545,19.356,19.126,18.817,18.419,17.951,17.459,17.006,16.653,16.446,16.397,16.491,16.683,
-16.915,17.132,17.294,17.385,17.414,17.403,17.383,17.378,17.398,17.439,17.482,17.506,17.496,17.445,17.364,17.271,
-17.191,17.143,17.137,17.170,17.227,17.288,17.331,17.343,17.320,17.271,17.208,17.148,17.103,17.078,17.070,17.067,
-17.059,17.032,16.981,16.906,16.814,16.714,16.617,16.530,16.456,16.394,16.339,16.288,16.235,16.181,16.125,16.072,
-16.022,15.977,15.932,15.881,15.818,15.736,15.634,15.518,15.396,15.283,15.190,15.128,15.100,15.103,15.126,15.158,
-15.188,15.210,15.219,15.220,15.214,15.206,15.197,15.183,15.161,15.124,15.070,14.999,14.917,14.830,14.743,14.660,
-14.581,14.500,14.412,14.310,14.192,14.056,13.906,13.749,13.588,13.430,13.279,13.137,13.011,12.906,12.833,12.799,
-12.809,12.862,12.948,13.046,13.130,13.172,13.149,13.051,12.880,12.657,12.411,12.179,11.993,11.875,11.830,11.845,
-11.895,11.944,11.960,11.921,11.818,11.661,11.469,11.273,11.097,10.963,10.876,10.832,10.816,10.811,10.798,10.767,
-10.715,10.646,10.570,10.495,10.431,10.383,10.352,10.339,10.339,10.349,10.363,10.376,10.381,10.372,10.348,10.309,
-10.260,10.209,10.164,10.132,10.115,10.108,10.103,10.090,10.061,10.012,9.949,9.882,9.824,9.789,9.782,9.806,
-9.856,9.922,9.998,10.079,10.166,10.261,10.366,10.482,10.602,10.719,10.823,10.905,10.963,11.000,11.020,11.034,
-11.046,11.061,11.076,11.091,11.102,11.111,11.123,11.148,11.193,11.265,11.364,11.488,11.630,11.783,11.942,12.104,
-12.270,12.440,12.612,12.782,12.943,13.089,13.219,13.338,13.406,13.599,13.820,14.080,14.385,14.735,15.117,15.511,
-15.894,16.240,16.533,16.764,16.934,17.051,17.131,17.186,17.228,17.263,17.292,17.316,17.334,17.348,17.362,17.379,
-17.405,17.444,17.496,17.559,17.630,17.704,17.778,17.850,17.919,17.986,18.052,18.118,18.184,18.250,18.316,18.384,
-18.453,18.528,18.609,18.701,18.802,18.912,19.027,19.144,19.261,19.375,19.487,19.599,19.712,19.829,19.945,20.059,
-20.165,20.259,20.342,20.418,20.495,20.578,20.670,20.768,20.857,20.917,20.929,20.874,20.751,20.569,20.354,20.138,
-19.954,19.826,19.762,19.756,19.790,19.842,19.895,19.940,19.981,20.028,20.091,20.178,20.284,20.398,20.504,20.587,
-20.643,20.676,20.699,20.729,20.779,20.854,20.946,21.042,21.126,21.184,21.216,21.227,21.232,21.246,21.279,21.332,
-21.399,21.470,21.535,21.592,21.644,21.701,21.775,21.871,21.991,22.126,22.263,22.388,22.492,22.573,22.635,22.686,
-22.732,22.773,22.806,22.822,22.813,22.777,22.720,22.656,22.604,22.583,22.605,22.679,22.804,22.973,23.181,23.422,
-23.695,23.996,24.323,24.665,25.008,25.333,25.622,25.864,26.054,26.202,26.325,26.443,26.572,26.724,26.896,27.081,
-27.265,27.436,27.586,27.715,27.829,27.939,28.054,28.182,28.325,28.482,28.646,28.807,28.957,29.084,29.181,29.239,
-29.257,29.236,29.184,29.115,29.045,28.986,28.948,28.931,28.928,28.928,28.918,28.895,28.863,28.834,28.829,28.864,
-28.946,29.070,29.214,29.350,29.445,29.478,29.440,29.342,29.206,29.061,28.933,28.837,28.779,28.750,28.740,28.741,
-28.749,28.767,28.803,28.863,28.943,29.030,29.106,29.150,29.145,29.090,28.996,28.888,28.792,28.733,28.723,28.758,
-28.822,28.893,28.949,28.979,28.984,28.976,28.976,29.000,29.057,29.148,29.261,29.380,29.489,29.576,29.636,29.673,
-29.691,29.693,29.680,29.649,29.592,29.504,29.384,29.237,29.073,28.906,28.751,28.620,28.517,28.445,28.396,28.363,
-28.334,28.298,28.245,28.167,28.060,27.926,27.771,27.607,27.448,27.306,27.190,27.101,27.034,26.975,26.913,26.838,
-26.748,26.651,26.559,26.487,26.443,26.425,26.424,26.420,26.392,26.326,26.214,26.065,25.890,25.708,25.532,25.365,
-25.203,25.034,24.846,24.630,24.386,24.124,23.857,23.601,23.367,23.161,22.980,22.820,22.674,22.541,22.420,22.315,
-22.228,22.159,22.101,22.044,21.979,21.896,21.793,21.673,21.543,21.410,21.276,21.138,20.987,20.812,20.603,20.355,
-20.073,19.766,19.450,19.135,18.829,18.531,18.233,17.928,17.607,17.271,16.928,16.590,16.275,15.996,15.758,15.559,
-15.388,15.229,15.066,14.888,14.690,14.473,14.244,14.011,13.780,13.555,13.334,13.113,12.889,12.658,12.418,12.172,
-11.921,11.668,11.415,11.160,10.900,10.631,10.349,10.049,9.729,9.387,9.024,8.643,8.246,7.839,7.431,7.029,
-6.643,6.280,5.946,5.644,5.370,5.119,4.881,4.648,4.411,4.167,3.917,3.667,3.426,3.204,3.010,2.850,
-2.726,2.631,2.556,2.483,2.396,2.274,2.104,1.879,1.603,1.292,.970,.667,.411,.220,.101,.042,
-.019,-.002,-.053,-.160,-.337,-.589,-.910,-1.297,-1.750,-2.274,-2.882,-3.582,-4.371,-5.228,-6.110,-6.962,
--7.723,-8.346,-8.809,-9.122,-9.325,-9.478,-9.639,-9.855,-10.140,-10.480,-10.837,-11.162,-11.418,-11.589,-11.688,-11.755,
--11.844,-12.006,-12.279,-12.673,-13.174,-13.750,-14.361,-14.973,-15.562,-16.120,-16.651,-17.161,-17.655,-18.129,-18.572,-18.966,
--19.295,-19.553,-19.741,-19.876,-19.984,-20.093,-20.230,-20.410,-20.640,-20.912,-21.206,-21.498,-21.763,-21.980,-22.134,-22.225,
--22.258,-22.253,-22.232,-22.220,-22.243,-22.320,-22.464,-22.679,-22.965,-23.314,-23.719,-24.166,-24.647,-25.147,-25.656,-26.161,
--26.651,-27.117,-27.552,-27.955,-28.332,-28.691,-29.042,-29.395,-29.756,-30.122,-30.490,-30.849,-31.189,-31.502,-31.784,-32.037,
--32.265,-32.476,-32.678,-32.878,-33.079,-33.284,-33.493,-33.706,-33.925,-34.149,-34.378,-34.611,-34.844,-35.076,-35.302,-35.523,
--35.738,-35.950,-36.163,-36.378,-36.595,-36.812,-37.024,-37.226,-37.419,-37.602,-37.782,-37.964,-38.154,-38.356,-38.567,-38.780,
--38.987,-39.180,-39.353,-39.507,-39.646,-39.777,-39.909,-40.045,-40.187,-40.331,-40.469,-40.597,-40.710,-40.807,-40.890,-40.962,
--41.024,-41.077,-41.115,-41.135,-41.130,-41.100,-41.048,-40.979,-40.903,-40.832,-40.771,-40.727,-40.697,-40.682,-40.677,-40.682,
--40.698,-40.729,-40.779,-40.850,-40.943,-41.053,-41.173,-41.297,-41.419,-41.541,-41.666,-41.803,-41.963,-42.151,-42.371,-42.616,
--42.873,-43.127,-43.359,-43.555,-43.705,-43.805,-43.858,-43.866,-43.834,-43.765,-43.662,-43.527,-43.365,-43.186,-43.001,-42.827,
--42.676,-42.562,-42.487,-42.449,-42.436,-42.435,-42.431,-42.415,-42.382,-42.335,-42.279,-42.223,-42.172,-42.130,-42.093,-42.057,
--42.018,-41.970,-41.914,-41.851,-41.785,-41.720,-41.655,-41.590,-41.520,-41.440,-41.345,-41.235,-41.112,-40.979,-40.846,-40.721,
--40.613,-40.531,-40.482,-40.471,-40.504,-40.578,-40.689,-40.824,-40.966,-41.096,-41.195,-41.249,-41.256,-41.219,-41.155,-41.082,
--41.019,-40.981,-40.976,-41.002,-41.057,-41.132,-41.224,-41.332,-41.459,-41.606,-41.772,-41.950,-42.130,-42.298,-42.444,-42.565,
--42.667,-42.765,-42.877,-43.020,-43.199,-43.410,-43.640,-43.867,-44.073,-44.248,-44.392,-44.518,-44.643,-44.783,-44.949,-45.137,
--45.338,-45.536,-45.717,-45.873,-46.009,-46.133,-46.259,-46.398,-46.552,-46.716,-46.879,-47.029,-47.156,-47.261,-47.351,-47.435,
--47.522,-47.615,-47.708,-47.791,-47.852,-47.882,-47.886,-47.878,-47.878,-47.910,-47.991,-48.127,-48.311,-48.524,-48.744,-48.948,
--49.121,-49.257,-49.363,-49.446,-49.520,-49.594,-49.671,-49.753,-49.839,-49.927,-50.016,-50.108,-50.203,-50.297,-50.389,-50.470,
--50.534,-50.579,-50.602,-50.610,-50.608,-50.605,-50.605,-50.610,-50.615,-50.613,-50.600,-50.572,-50.530,-50.480,-50.428,-50.381,
--50.339,-50.302,-50.263,-50.214,-50.151,-50.075,-49.990,-49.906,-49.832,-49.775,-49.737,-49.715,-49.700,-49.685,-49.662,-49.627,
--49.583,-49.532,-49.480,-49.429,-49.378,-49.325,-49.265,-49.195,-49.114,-49.026,-48.934,-48.844,-48.759,-48.678,-48.599,-48.518,
--48.429,-48.334,-48.232,-48.128,-48.029,-47.938,-47.859,-47.790,-47.732,-47.683,-47.641,-47.607,-47.581,-47.562,-47.546,-47.528,
--47.499,-47.455,-47.391,-47.311,-47.223,-47.137,-47.065,-47.013,-46.981,-46.964,-46.949,-46.926,-46.884,-46.821,-46.739,-46.647,
--46.553,-46.465,-46.386,-46.313,-46.242,-46.164,-46.077,-45.977,-45.868,-45.755,-45.643,-45.537,-45.439,-45.352,-45.274,-45.206,
--45.148,-45.099,-45.059,-45.026,-44.996,-44.966,-44.931,-44.887,-44.833,-44.769,-44.698,-44.620,-44.534,-44.438,-44.330,-44.206,
--44.067,-43.916,-43.759,-43.608,-43.471,-43.358,-43.271,-43.210,-43.169,-43.139,-43.110,-43.075,-43.028,-42.968,-42.894,-42.810,
--42.718,-42.621,-42.522,-42.421,-42.323,-42.227,-42.139,-42.058,-41.988,-41.928,-41.877,-41.832,-41.789,-41.742,-41.687,-41.619,
--41.534,-41.433,-41.315,-41.183,-41.041,-40.896,-40.755,-40.626,-40.517,-40.434,-40.379,-40.353,-40.349,-40.360,-40.372,-40.376,
--40.359,-40.317,-40.247,-40.153,-40.043,-39.923,-39.803,-39.687,-39.578,-39.478,-39.388,-39.308,-39.243,-39.195,-39.169,-39.165,
--39.182,-39.212,-39.246,-39.271,-39.279,-39.262,-39.219,-39.153,-39.068,-38.972,-38.868,-38.759,-38.646,-38.530,-38.412,-38.294,
--38.180,-38.075,-37.979,-37.893,-37.812,-37.729,-37.639,-37.534,-37.414,-37.280,-37.135,-36.986,-36.837,-36.690,-36.545,-36.399,
--36.251,-36.100,-35.946,-35.792,-35.640,-35.493,-35.351,-35.212,-35.075,-34.936,-34.794,-34.651,-34.508,-34.367,-34.230,-34.097,
--33.964,-33.830,-33.691,-33.548,-33.403,-33.260,-33.122,-32.993,-32.871,-32.752,-32.629,-32.499,-32.357,-32.208,-32.056,-31.913,
--31.787,-31.684,-31.606,-31.544,-31.490,-31.432,-31.359,-31.267,-31.155,-31.028,-30.895,-30.760,-30.628,-30.499,-30.372,-30.244,
--30.113,-29.982,-29.856,-29.742,-29.644,-29.565,-29.504,-29.453,-29.404,-29.348,-29.278,-29.192,-29.091,-28.982,-28.869,-28.758,
--28.650,-28.543,-28.433,-28.317,-28.192,-28.059,-27.920,-27.780,-27.645,-27.517,-27.395,-27.279,-27.164,-27.046,-26.924,-26.797,
--26.667,-26.537,-26.410,-26.287,-26.168,-26.051,-25.936,-25.823,-25.711,-25.600,-25.491,-25.382,-25.269,-25.149,-25.020,-24.880,
--24.735,-24.589,-24.452,-24.329,-24.221,-24.123,-24.028,-23.924,-23.802,-23.659,-23.501,-23.339,-23.190,-23.065,-22.974,-22.913,
--22.871,-22.832,-22.777,-22.694,-22.580,-22.439,-22.283,-22.122,-21.967,-21.819,-21.676,-21.528,-21.369,-21.196,-21.011,-20.821,
--20.636,-20.464,-20.307,-20.163,-20.021,-19.872,-19.706,-19.516,-19.301,-19.066,-18.815,-18.556,-18.294,-18.035,-17.784,-17.549,
--17.339,-17.161,-17.020,-16.909,-16.818,-16.723,-16.600,-16.429,-16.197,-15.905,-15.572,-15.223,-14.887,-14.591,-14.346,-14.152,
--13.995,-13.856,-13.716,-13.563,-13.393,-13.213,-13.035,-12.868,-12.718,-12.581,-12.451,-12.317,-12.173,-12.015,-11.849,-11.680,
--11.516,-11.358,-11.204,-11.044,-10.866,-10.663,-10.431,-10.174,-9.904,-9.633,-9.370,-9.118,-8.873,-8.623,-8.358,-8.069,
--7.756,-7.426,-7.093,-6.770,-6.469,-6.194,-5.939,-5.692,-5.437,-5.161,-4.856,-4.520,-4.158,-3.778,-3.391,-3.005,
--2.623,-2.250,-1.886,-1.534,-1.197,-.875,-.570,-.278,.005,.287,.576,.876,1.187,1.502,1.814,2.112,
-2.389,2.644,2.881,3.111,3.345,3.594,3.864,4.154,4.459,4.770,5.079,5.380,5.673,5.961,6.253,6.556,
-6.875,7.211,7.561,7.919,8.277,8.629,8.974,9.316,9.663,10.030,10.431,10.881,11.386,11.950,12.564,13.211,
-13.871,14.515,15.119,15.662,16.133,16.528,16.855,17.124,17.350,17.545,17.715,17.865,17.994,18.105,18.205,18.306,
-18.427,18.587,18.802,19.077,19.405,19.761,20.114,20.431,20.685,20.862,20.970,21.027,21.061,21.100,21.159,21.239,
-21.328,21.405,21.450,21.456,21.431,21.398,21.387,21.423,21.515,21.647,21.780,21.858,21.822,21.630,21.267,20.752,
-20.133,19.477,18.850,18.303,17.858,17.505,17.213,16.942,16.655,16.339,16.001,15.675,15.404,15.230,15.179,15.253,
-15.430,15.669,15.921,16.141,16.300,16.390,16.420,16.412,16.395,16.389,16.409,16.456,16.520,16.590,16.653,16.702,
-16.733,16.752,16.765,16.778,16.793,16.808,16.819,16.817,16.796,16.753,16.690,16.613,16.533,16.461,16.405,16.370,
-16.355,16.352,16.352,16.342,16.313,16.259,16.182,16.088,15.987,15.890,15.807,15.745,15.702,15.676,15.659,15.643,
-15.622,15.592,15.550,15.499,15.437,15.368,15.292,15.209,15.121,15.032,14.946,14.869,14.804,14.753,14.715,14.685,
-14.657,14.625,14.589,14.550,14.513,14.488,14.478,14.485,14.504,14.523,14.529,14.509,14.454,14.366,14.253,14.129,
-14.010,13.909,13.832,13.775,13.728,13.675,13.601,13.494,13.350,13.173,12.975,12.770,12.574,12.403,12.266,12.172,
-12.121,12.112,12.140,12.194,12.259,12.320,12.357,12.353,12.295,12.182,12.020,11.828,11.632,11.459,11.330,11.258,
-11.238,11.254,11.281,11.290,11.262,11.186,11.069,10.928,10.786,10.664,10.579,10.532,10.516,10.516,10.514,10.497,
-10.459,10.401,10.332,10.262,10.200,10.153,10.120,10.098,10.084,10.073,10.065,10.058,10.051,10.041,10.025,9.999,
-9.962,9.914,9.861,9.810,9.770,9.746,9.740,9.749,9.763,9.775,9.778,9.768,9.747,9.721,9.698,9.682,
-9.678,9.686,9.706,9.738,9.782,9.844,9.925,10.026,10.144,10.269,10.392,10.500,10.588,10.653,10.701,10.740,
-10.781,10.829,10.885,10.945,11.001,11.046,11.077,11.099,11.120,11.154,11.211,11.298,11.415,11.557,11.717,11.884,
-12.053,12.222,12.389,12.556,12.724,12.892,13.060,13.230,13.406,13.516,13.800,14.111,14.453,14.824,15.218,15.623,
-16.020,16.390,16.714,16.978,17.179,17.322,17.417,17.480,17.525,17.560,17.589,17.608,17.616,17.606,17.581,17.544,
-17.503,17.468,17.447,17.443,17.458,17.486,17.521,17.557,17.591,17.623,17.655,17.691,17.737,17.794,17.863,17.943,
-18.030,18.123,18.220,18.322,18.429,18.541,18.658,18.777,18.896,19.011,19.119,19.221,19.317,19.412,19.507,19.607,
-19.710,19.818,19.929,20.043,20.158,20.274,20.387,20.490,20.571,20.614,20.605,20.533,20.397,20.209,19.989,19.770,
-19.580,19.443,19.371,19.360,19.393,19.451,19.511,19.564,19.606,19.645,19.694,19.760,19.845,19.940,20.033,20.108,
-20.158,20.184,20.198,20.219,20.262,20.337,20.440,20.557,20.668,20.754,20.804,20.818,20.811,20.799,20.802,20.829,
-20.880,20.947,21.016,21.079,21.133,21.185,21.247,21.331,21.445,21.583,21.734,21.880,22.003,22.096,22.159,22.203,
-22.243,22.289,22.346,22.405,22.453,22.471,22.449,22.386,22.292,22.191,22.109,22.070,22.090,22.174,22.318,22.513,
-22.748,23.015,23.309,23.627,23.966,24.317,24.669,25.007,25.318,25.589,25.818,26.008,26.168,26.310,26.445,26.580,
-26.718,26.857,26.996,27.131,27.262,27.392,27.524,27.661,27.807,27.963,28.127,28.297,28.465,28.624,28.763,28.873,
-28.943,28.970,28.954,28.904,28.835,28.766,28.711,28.681,28.676,28.686,28.698,28.697,28.676,28.639,28.601,28.584,
-28.612,28.696,28.836,29.014,29.200,29.360,29.466,29.504,29.475,29.399,29.301,29.211,29.149,29.128,29.147,29.201,
-29.282,29.382,29.498,29.624,29.753,29.873,29.966,30.013,29.997,29.913,29.769,29.590,29.406,29.251,29.150,29.113,
-29.131,29.181,29.235,29.269,29.269,29.235,29.181,29.129,29.097,29.100,29.138,29.205,29.286,29.366,29.435,29.487,
-29.521,29.540,29.541,29.522,29.476,29.395,29.276,29.122,28.942,28.754,28.576,28.425,28.312,28.238,28.199,28.183,
-28.177,28.169,28.146,28.102,28.032,27.936,27.814,27.672,27.517,27.359,27.207,27.069,26.949,26.848,26.761,26.682,
-26.606,26.531,26.460,26.398,26.352,26.325,26.316,26.314,26.306,26.277,26.214,26.112,25.974,25.808,25.625,25.434,
-25.240,25.042,24.835,24.612,24.371,24.115,23.850,23.586,23.331,23.093,22.870,22.662,22.463,22.273,22.094,21.932,
-21.796,21.691,21.619,21.574,21.544,21.515,21.472,21.406,21.313,21.197,21.063,20.915,20.758,20.588,20.400,20.190,
-19.954,19.692,19.411,19.118,18.823,18.530,18.243,17.960,17.679,17.399,17.122,16.855,16.605,16.381,16.188,16.023,
-15.881,15.748,15.612,15.460,15.285,15.087,14.869,14.637,14.397,14.156,13.916,13.676,13.435,13.194,12.951,12.709,
-12.469,12.231,11.994,11.753,11.500,11.230,10.934,10.610,10.258,9.881,9.484,9.074,8.659,8.242,7.828,7.422,
-7.027,6.648,6.290,5.957,5.654,5.383,5.140,4.922,4.718,4.520,4.317,4.102,3.875,3.638,3.404,3.189,
-3.012,2.889,2.831,2.836,2.889,2.965,3.031,3.054,3.008,2.881,2.680,2.427,2.155,1.899,1.687,1.533,
-1.431,1.365,1.305,1.225,1.105,.935,.714,.443,.120,-.266,-.736,-1.313,-2.014,-2.839,-3.765,-4.744,
--5.709,-6.595,-7.348,-7.944,-8.392,-8.732,-9.018,-9.304,-9.626,-9.988,-10.368,-10.724,-11.013,-11.207,-11.306,-11.344,
--11.375,-11.464,-11.668,-12.017,-12.512,-13.122,-13.798,-14.486,-15.139,-15.733,-16.260,-16.730,-17.160,-17.567,-17.955,-18.321,
--18.652,-18.932,-19.150,-19.306,-19.410,-19.482,-19.549,-19.635,-19.760,-19.932,-20.151,-20.403,-20.669,-20.927,-21.155,-21.340,
--21.474,-21.561,-21.615,-21.655,-21.707,-21.793,-21.934,-22.141,-22.418,-22.759,-23.155,-23.594,-24.062,-24.551,-25.051,-25.555,
--26.059,-26.555,-27.036,-27.496,-27.930,-28.334,-28.710,-29.060,-29.390,-29.705,-30.010,-30.307,-30.595,-30.874,-31.141,-31.395,
--31.637,-31.866,-32.083,-32.288,-32.483,-32.672,-32.860,-33.055,-33.267,-33.505,-33.773,-34.072,-34.393,-34.723,-35.045,-35.343,
--35.607,-35.833,-36.027,-36.200,-36.364,-36.530,-36.702,-36.878,-37.051,-37.212,-37.356,-37.480,-37.590,-37.696,-37.809,-37.938,
--38.087,-38.255,-38.435,-38.621,-38.803,-38.975,-39.134,-39.278,-39.408,-39.525,-39.632,-39.732,-39.832,-39.937,-40.058,-40.200,
--40.366,-40.551,-40.742,-40.924,-41.076,-41.185,-41.243,-41.257,-41.241,-41.217,-41.206,-41.222,-41.271,-41.346,-41.432,-41.512,
--41.574,-41.613,-41.633,-41.647,-41.668,-41.709,-41.772,-41.857,-41.953,-42.053,-42.150,-42.248,-42.358,-42.493,-42.667,-42.884,
--43.138,-43.411,-43.678,-43.911,-44.092,-44.210,-44.270,-44.286,-44.275,-44.254,-44.230,-44.202,-44.161,-44.097,-44.003,-43.880,
--43.740,-43.600,-43.483,-43.402,-43.364,-43.363,-43.384,-43.407,-43.412,-43.390,-43.338,-43.262,-43.177,-43.094,-43.023,-42.966,
--42.920,-42.877,-42.828,-42.768,-42.695,-42.611,-42.520,-42.427,-42.335,-42.243,-42.151,-42.057,-41.960,-41.860,-41.758,-41.656,
--41.557,-41.463,-41.378,-41.306,-41.256,-41.235,-41.251,-41.309,-41.407,-41.536,-41.682,-41.823,-41.940,-42.020,-42.057,-42.055,
--42.025,-41.984,-41.944,-41.917,-41.907,-41.914,-41.937,-41.977,-42.037,-42.124,-42.242,-42.394,-42.575,-42.772,-42.970,-43.151,
--43.305,-43.429,-43.533,-43.632,-43.745,-43.885,-44.056,-44.251,-44.457,-44.657,-44.835,-44.988,-45.120,-45.241,-45.367,-45.507,
--45.667,-45.843,-46.026,-46.204,-46.369,-46.522,-46.664,-46.805,-46.953,-47.111,-47.280,-47.455,-47.629,-47.797,-47.954,-48.103,
--48.243,-48.376,-48.500,-48.607,-48.690,-48.743,-48.765,-48.762,-48.747,-48.738,-48.752,-48.800,-48.885,-49.000,-49.134,-49.273,
--49.407,-49.529,-49.642,-49.747,-49.850,-49.952,-50.050,-50.137,-50.209,-50.260,-50.293,-50.315,-50.334,-50.360,-50.399,-50.452,
--50.512,-50.571,-50.622,-50.659,-50.681,-50.694,-50.703,-50.713,-50.726,-50.741,-50.751,-50.753,-50.744,-50.724,-50.698,-50.669,
--50.643,-50.621,-50.600,-50.574,-50.537,-50.486,-50.423,-50.352,-50.282,-50.223,-50.178,-50.149,-50.131,-50.115,-50.093,-50.060,
--50.013,-49.956,-49.894,-49.833,-49.778,-49.729,-49.683,-49.637,-49.587,-49.531,-49.471,-49.406,-49.339,-49.270,-49.195,-49.113,
--49.020,-48.917,-48.809,-48.703,-48.607,-48.527,-48.467,-48.424,-48.391,-48.361,-48.325,-48.280,-48.228,-48.173,-48.122,-48.078,
--48.043,-48.013,-47.980,-47.938,-47.884,-47.818,-47.745,-47.676,-47.618,-47.577,-47.552,-47.540,-47.532,-47.520,-47.497,-47.458,
--47.406,-47.342,-47.272,-47.197,-47.121,-47.044,-46.966,-46.886,-46.806,-46.724,-46.639,-46.548,-46.449,-46.338,-46.216,-46.085,
--45.954,-45.833,-45.732,-45.660,-45.619,-45.606,-45.608,-45.612,-45.606,-45.578,-45.527,-45.456,-45.373,-45.286,-45.203,-45.125,
--45.049,-44.968,-44.876,-44.768,-44.642,-44.506,-44.366,-44.233,-44.115,-44.017,-43.938,-43.874,-43.817,-43.761,-43.697,-43.624,
--43.539,-43.444,-43.340,-43.229,-43.113,-42.992,-42.868,-42.745,-42.625,-42.515,-42.418,-42.339,-42.280,-42.238,-42.207,-42.179,
--42.143,-42.091,-42.016,-41.915,-41.790,-41.646,-41.491,-41.338,-41.197,-41.077,-40.985,-40.925,-40.895,-40.891,-40.902,-40.920,
--40.933,-40.930,-40.907,-40.858,-40.786,-40.694,-40.586,-40.468,-40.345,-40.220,-40.096,-39.976,-39.865,-39.767,-39.687,-39.630,
--39.596,-39.584,-39.590,-39.606,-39.623,-39.635,-39.634,-39.620,-39.592,-39.553,-39.504,-39.445,-39.374,-39.291,-39.192,-39.078,
--38.950,-38.813,-38.672,-38.534,-38.403,-38.280,-38.164,-38.053,-37.944,-37.835,-37.722,-37.606,-37.487,-37.364,-37.237,-37.103,
--36.961,-36.809,-36.647,-36.477,-36.303,-36.127,-35.955,-35.788,-35.628,-35.474,-35.327,-35.183,-35.041,-34.898,-34.751,-34.600,
--34.442,-34.277,-34.107,-33.937,-33.771,-33.616,-33.477,-33.353,-33.243,-33.140,-33.036,-32.922,-32.794,-32.652,-32.502,-32.353,
--32.217,-32.101,-32.008,-31.935,-31.876,-31.819,-31.756,-31.680,-31.590,-31.488,-31.377,-31.262,-31.144,-31.022,-30.891,-30.748,
--30.593,-30.430,-30.267,-30.115,-29.983,-29.880,-29.804,-29.752,-29.713,-29.675,-29.628,-29.566,-29.487,-29.395,-29.295,-29.193,
--29.091,-28.988,-28.882,-28.768,-28.644,-28.509,-28.366,-28.221,-28.078,-27.941,-27.811,-27.688,-27.567,-27.444,-27.317,-27.183,
--27.046,-26.906,-26.769,-26.636,-26.509,-26.388,-26.272,-26.162,-26.058,-25.958,-25.862,-25.767,-25.669,-25.563,-25.444,-25.310,
--25.162,-25.007,-24.851,-24.703,-24.569,-24.448,-24.338,-24.231,-24.120,-23.998,-23.867,-23.730,-23.598,-23.478,-23.375,-23.290,
--23.215,-23.141,-23.057,-22.956,-22.838,-22.709,-22.577,-22.451,-22.333,-22.220,-22.104,-21.972,-21.817,-21.637,-21.439,-21.236,
--21.043,-20.874,-20.732,-20.612,-20.499,-20.376,-20.227,-20.045,-19.829,-19.585,-19.326,-19.061,-18.797,-18.537,-18.283,-18.037,
--17.804,-17.597,-17.426,-17.299,-17.214,-17.154,-17.093,-17.000,-16.843,-16.607,-16.294,-15.923,-15.532,-15.160,-14.839,-14.587,
--14.401,-14.260,-14.137,-14.004,-13.845,-13.656,-13.449,-13.241,-13.050,-12.884,-12.743,-12.614,-12.481,-12.331,-12.157,-11.964,
--11.762,-11.565,-11.381,-11.213,-11.053,-10.887,-10.701,-10.487,-10.242,-9.975,-9.697,-9.421,-9.154,-8.897,-8.643,-8.382,
--8.106,-7.813,-7.506,-7.197,-6.897,-6.615,-6.352,-6.101,-5.849,-5.580,-5.281,-4.948,-4.582,-4.193,-3.793,-3.395,
--3.006,-2.630,-2.267,-1.915,-1.574,-1.244,-.929,-.630,-.347,-.078,.185,.451,.725,1.013,1.310,1.610,
-1.905,2.184,2.445,2.688,2.922,3.154,3.397,3.658,3.939,4.238,4.551,4.869,5.189,5.508,5.823,6.137,
-6.451,6.767,7.087,7.414,7.752,8.107,8.484,8.890,9.327,9.795,10.289,10.804,11.333,11.870,12.412,12.956,
-13.500,14.039,14.562,15.054,15.498,15.879,16.190,16.432,16.619,16.770,16.910,17.057,17.223,17.407,17.603,17.800,
-17.990,18.174,18.359,18.560,18.790,19.055,19.346,19.645,19.921,20.149,20.309,20.400,20.439,20.452,20.472,20.519,
-20.599,20.697,20.787,20.839,20.835,20.778,20.693,20.620,20.601,20.665,20.810,20.999,21.166,21.230,21.119,20.787,
-20.233,19.497,18.656,17.805,17.031,16.395,15.921,15.596,15.380,15.221,15.074,14.915,14.741,14.573,14.441,14.377,
-14.397,14.499,14.666,14.865,15.059,15.219,15.326,15.378,15.385,15.367,15.348,15.346,15.375,15.438,15.531,15.641,
-15.755,15.859,15.941,15.994,16.019,16.018,15.998,15.966,15.927,15.886,15.842,15.796,15.746,15.693,15.640,15.593,
-15.558,15.542,15.545,15.565,15.593,15.618,15.628,15.616,15.580,15.523,15.457,15.391,15.335,15.293,15.264,15.239,
-15.212,15.173,15.119,15.052,14.977,14.903,14.836,14.781,14.735,14.695,14.655,14.608,14.552,14.485,14.411,14.330,
-14.246,14.160,14.072,13.983,13.897,13.821,13.762,13.724,13.712,13.721,13.741,13.756,13.750,13.711,13.635,13.528,
-13.405,13.283,13.181,13.110,13.069,13.050,13.032,12.998,12.930,12.821,12.675,12.504,12.326,12.159,12.014,11.898,
-11.811,11.747,11.699,11.663,11.636,11.616,11.602,11.588,11.567,11.530,11.466,11.372,11.251,11.114,10.978,10.860,
-10.776,10.728,10.712,10.713,10.713,10.696,10.653,10.585,10.502,10.418,10.345,10.293,10.260,10.239,10.218,10.186,
-10.138,10.076,10.009,9.946,9.899,9.870,9.857,9.854,9.850,9.839,9.817,9.786,9.752,9.722,9.698,9.681,
-9.666,9.647,9.619,9.582,9.538,9.495,9.461,9.441,9.438,9.449,9.468,9.488,9.503,9.511,9.512,9.509,
-9.506,9.507,9.512,9.525,9.547,9.582,9.632,9.700,9.786,9.886,9.994,10.099,10.195,10.276,10.342,10.399,
-10.456,10.520,10.597,10.686,10.779,10.867,10.941,10.998,11.040,11.077,11.120,11.182,11.270,11.385,11.523,11.675,
-11.831,11.986,12.138,12.291,12.450,12.622,12.813,13.024,13.258,13.516,13.673,14.025,14.395,14.777,15.168,15.560,
-15.944,16.309,16.641,16.927,17.158,17.334,17.460,17.546,17.606,17.654,17.698,17.740,17.779,17.808,17.821,17.813,
-17.786,17.743,17.690,17.635,17.581,17.532,17.486,17.443,17.401,17.362,17.332,17.317,17.324,17.358,17.421,17.512,
-17.623,17.749,17.881,18.015,18.147,18.276,18.402,18.526,18.645,18.759,18.866,18.965,19.057,19.145,19.234,19.331,
-19.438,19.559,19.691,19.831,19.971,20.103,20.215,20.297,20.340,20.335,20.278,20.169,20.016,19.834,19.644,19.470,
-19.332,19.245,19.213,19.226,19.269,19.321,19.364,19.388,19.394,19.392,19.397,19.421,19.469,19.537,19.613,19.682,
-19.730,19.756,19.767,19.777,19.805,19.861,19.950,20.059,20.171,20.265,20.326,20.352,20.351,20.341,20.343,20.371,
-20.427,20.503,20.585,20.656,20.708,20.745,20.778,20.828,20.908,21.024,21.170,21.326,21.472,21.587,21.667,21.716,
-21.754,21.800,21.866,21.954,22.048,22.120,22.142,22.096,21.979,21.810,21.627,21.473,21.389,21.403,21.520,21.728,
-22.002,22.310,22.626,22.935,23.231,23.521,23.813,24.115,24.426,24.742,25.051,25.339,25.595,25.812,25.991,26.136,
-26.257,26.363,26.465,26.570,26.683,26.807,26.941,27.085,27.239,27.400,27.567,27.740,27.914,28.087,28.251,28.395,
-28.511,28.587,28.618,28.606,28.560,28.495,28.431,28.385,28.368,28.382,28.419,28.465,28.505,28.530,28.540,28.547,
-28.567,28.622,28.723,28.873,29.059,29.258,29.441,29.584,29.670,29.698,29.681,29.638,29.595,29.572,29.582,29.632,
-29.719,29.838,29.981,30.137,30.297,30.445,30.565,30.640,30.655,30.603,30.490,30.332,30.157,29.996,29.875,29.807,
-29.792,29.811,29.840,29.851,29.826,29.759,29.659,29.544,29.439,29.362,29.320,29.313,29.330,29.355,29.377,29.390,
-29.392,29.387,29.376,29.357,29.323,29.261,29.159,29.012,28.823,28.604,28.378,28.169,27.998,27.877,27.809,27.786,
-27.793,27.814,27.836,27.846,27.840,27.813,27.766,27.696,27.602,27.483,27.342,27.182,27.011,26.840,26.677,26.532,
-26.409,26.311,26.237,26.187,26.157,26.145,26.145,26.151,26.155,26.146,26.116,26.055,25.960,25.831,25.669,25.480,
-25.270,25.043,24.803,24.552,24.292,24.025,23.756,23.488,23.226,22.970,22.719,22.472,22.225,21.980,21.742,21.522,
-21.333,21.187,21.093,21.051,21.048,21.068,21.086,21.080,21.033,20.937,20.795,20.615,20.412,20.199,19.989,19.786,
-19.590,19.400,19.208,19.010,18.801,18.578,18.339,18.086,17.822,17.552,17.283,17.024,16.786,16.575,16.394,16.245,
-16.120,16.010,15.904,15.792,15.665,15.520,15.354,15.168,14.963,14.741,14.501,14.245,13.975,13.695,13.414,13.137,
-12.873,12.624,12.389,12.160,11.927,11.677,11.398,11.086,10.738,10.358,9.956,9.540,9.120,8.700,8.286,7.877,
-7.474,7.079,6.697,6.333,5.994,5.689,5.422,5.193,5.000,4.833,4.681,4.532,4.374,4.201,4.016,3.825,
-3.646,3.497,3.398,3.362,3.392,3.476,3.592,3.706,3.785,3.798,3.728,3.576,3.356,3.095,2.824,2.567,
-2.339,2.143,1.968,1.802,1.632,1.450,1.259,1.063,.863,.652,.407,.095,-.320,-.869,-1.565,-2.394,
--3.314,-4.266,-5.185,-6.015,-6.725,-7.314,-7.805,-8.237,-8.649,-9.066,-9.490,-9.903,-10.272,-10.568,-10.777,-10.907,
--10.995,-11.091,-11.251,-11.518,-11.912,-12.423,-13.020,-13.656,-14.284,-14.868,-15.391,-15.854,-16.273,-16.665,-17.048,-17.426,
--17.792,-18.134,-18.431,-18.670,-18.844,-18.957,-19.021,-19.058,-19.089,-19.134,-19.209,-19.321,-19.471,-19.651,-19.850,-20.056,
--20.254,-20.437,-20.601,-20.751,-20.896,-21.052,-21.236,-21.461,-21.737,-22.064,-22.440,-22.854,-23.295,-23.754,-24.223,-24.699,
--25.183,-25.672,-26.167,-26.662,-27.151,-27.625,-28.073,-28.487,-28.864,-29.202,-29.505,-29.777,-30.026,-30.261,-30.487,-30.708,
--30.927,-31.143,-31.351,-31.548,-31.729,-31.893,-32.046,-32.197,-32.362,-32.557,-32.797,-33.090,-33.430,-33.803,-34.185,-34.547,
--34.866,-35.126,-35.326,-35.477,-35.600,-35.715,-35.842,-35.989,-36.151,-36.318,-36.473,-36.603,-36.702,-36.775,-36.833,-36.892,
--36.965,-37.064,-37.189,-37.335,-37.491,-37.649,-37.799,-37.936,-38.060,-38.172,-38.276,-38.375,-38.475,-38.583,-38.709,-38.865,
--39.059,-39.297,-39.577,-39.886,-40.204,-40.505,-40.768,-40.980,-41.142,-41.266,-41.374,-41.491,-41.635,-41.810,-42.008,-42.208,
--42.386,-42.522,-42.604,-42.639,-42.643,-42.637,-42.642,-42.672,-42.725,-42.793,-42.863,-42.925,-42.975,-43.024,-43.087,-43.182,
--43.321,-43.505,-43.719,-43.939,-44.136,-44.288,-44.384,-44.428,-44.435,-44.430,-44.431,-44.448,-44.480,-44.514,-44.531,-44.519,
--44.473,-44.400,-44.320,-44.256,-44.225,-44.238,-44.287,-44.355,-44.416,-44.449,-44.437,-44.379,-44.284,-44.170,-44.057,-43.960,
--43.886,-43.831,-43.788,-43.742,-43.684,-43.607,-43.510,-43.396,-43.271,-43.141,-43.010,-42.880,-42.755,-42.637,-42.530,-42.435,
--42.353,-42.284,-42.223,-42.168,-42.115,-42.065,-42.026,-42.005,-42.015,-42.062,-42.148,-42.267,-42.404,-42.541,-42.660,-42.747,
--42.798,-42.817,-42.812,-42.797,-42.780,-42.770,-42.767,-42.771,-42.784,-42.809,-42.852,-42.922,-43.027,-43.170,-43.347,-43.545,
--43.750,-43.946,-44.122,-44.274,-44.406,-44.527,-44.649,-44.780,-44.921,-45.070,-45.220,-45.364,-45.498,-45.623,-45.748,-45.880,
--46.029,-46.200,-46.390,-46.593,-46.798,-46.994,-47.172,-47.329,-47.465,-47.587,-47.702,-47.818,-47.945,-48.087,-48.250,-48.431,
--48.627,-48.829,-49.025,-49.200,-49.341,-49.441,-49.499,-49.523,-49.529,-49.535,-49.557,-49.606,-49.680,-49.772,-49.866,-49.949,
--50.011,-50.053,-50.084,-50.120,-50.177,-50.266,-50.386,-50.528,-50.672,-50.797,-50.885,-50.929,-50.929,-50.896,-50.847,-50.796,
--50.756,-50.732,-50.724,-50.729,-50.742,-50.760,-50.783,-50.812,-50.845,-50.882,-50.919,-50.951,-50.974,-50.984,-50.983,-50.974,
--50.963,-50.953,-50.945,-50.938,-50.926,-50.906,-50.873,-50.830,-50.779,-50.727,-50.680,-50.641,-50.610,-50.582,-50.551,-50.512,
--50.463,-50.405,-50.342,-50.280,-50.224,-50.178,-50.140,-50.106,-50.073,-50.038,-49.998,-49.954,-49.907,-49.856,-49.800,-49.734,
--49.655,-49.560,-49.454,-49.344,-49.240,-49.154,-49.094,-49.063,-49.053,-49.054,-49.050,-49.029,-48.983,-48.913,-48.826,-48.736,
--48.654,-48.589,-48.542,-48.509,-48.480,-48.449,-48.407,-48.355,-48.296,-48.238,-48.188,-48.153,-48.133,-48.127,-48.129,-48.131,
--48.127,-48.110,-48.077,-48.029,-47.965,-47.889,-47.807,-47.723,-47.642,-47.570,-47.505,-47.445,-47.384,-47.310,-47.218,-47.101,
--46.961,-46.806,-46.651,-46.511,-46.399,-46.324,-46.282,-46.264,-46.254,-46.236,-46.198,-46.135,-46.054,-45.966,-45.884,-45.821,
--45.781,-45.760,-45.748,-45.731,-45.694,-45.629,-45.534,-45.416,-45.284,-45.150,-45.025,-44.914,-44.815,-44.726,-44.639,-44.549,
--44.451,-44.345,-44.232,-44.114,-43.993,-43.869,-43.742,-43.608,-43.470,-43.329,-43.190,-43.059,-42.945,-42.852,-42.782,-42.732,
--42.695,-42.660,-42.615,-42.552,-42.464,-42.350,-42.215,-42.065,-41.912,-41.766,-41.637,-41.531,-41.453,-41.401,-41.373,-41.362,
--41.363,-41.366,-41.365,-41.355,-41.332,-41.294,-41.240,-41.170,-41.085,-40.987,-40.877,-40.759,-40.634,-40.509,-40.389,-40.280,
--40.187,-40.111,-40.053,-40.011,-39.980,-39.956,-39.936,-39.919,-39.904,-39.892,-39.883,-39.877,-39.869,-39.851,-39.817,-39.759,
--39.672,-39.557,-39.417,-39.260,-39.095,-38.931,-38.776,-38.635,-38.507,-38.391,-38.285,-38.184,-38.083,-37.978,-37.867,-37.746,
--37.613,-37.467,-37.307,-37.136,-36.955,-36.769,-36.581,-36.396,-36.215,-36.041,-35.874,-35.712,-35.553,-35.394,-35.232,-35.065,
--34.894,-34.718,-34.542,-34.368,-34.202,-34.047,-33.905,-33.775,-33.655,-33.540,-33.423,-33.299,-33.166,-33.027,-32.886,-32.751,
--32.628,-32.522,-32.433,-32.356,-32.283,-32.207,-32.121,-32.024,-31.916,-31.805,-31.697,-31.596,-31.503,-31.413,-31.318,-31.211,
--31.085,-30.939,-30.780,-30.617,-30.463,-30.328,-30.218,-30.132,-30.065,-30.007,-29.949,-29.885,-29.812,-29.732,-29.649,-29.567,
--29.487,-29.407,-29.323,-29.229,-29.120,-28.994,-28.855,-28.706,-28.557,-28.411,-28.274,-28.143,-28.016,-27.888,-27.755,-27.614,
--27.465,-27.312,-27.159,-27.009,-26.866,-26.731,-26.606,-26.490,-26.383,-26.285,-26.196,-26.112,-26.030,-25.943,-25.845,-25.732,
--25.601,-25.456,-25.301,-25.143,-24.990,-24.846,-24.712,-24.584,-24.460,-24.335,-24.209,-24.084,-23.964,-23.853,-23.754,-23.664,
--23.575,-23.478,-23.367,-23.237,-23.094,-22.945,-22.803,-22.679,-22.575,-22.487,-22.403,-22.307,-22.187,-22.038,-21.866,-21.683,
--21.507,-21.353,-21.225,-21.118,-21.016,-20.899,-20.749,-20.559,-20.332,-20.084,-19.831,-19.586,-19.355,-19.130,-18.897,-18.642,
--18.360,-18.060,-17.765,-17.504,-17.307,-17.187,-17.138,-17.128,-17.112,-17.042,-16.882,-16.620,-16.273,-15.880,-15.491,-15.152,
--14.891,-14.711,-14.590,-14.494,-14.383,-14.232,-14.032,-13.795,-13.543,-13.302,-13.091,-12.914,-12.760,-12.612,-12.449,-12.259,
--12.043,-11.811,-11.581,-11.369,-11.184,-11.024,-10.875,-10.721,-10.546,-10.338,-10.098,-9.835,-9.558,-9.281,-9.008,-8.740,
--8.471,-8.197,-7.914,-7.624,-7.332,-7.048,-6.776,-6.518,-6.267,-6.012,-5.738,-5.434,-5.096,-4.724,-4.328,-3.921,
--3.514,-3.119,-2.739,-2.375,-2.027,-1.693,-1.373,-1.067,-.776,-.499,-.235,.023,.281,.546,.821,1.103,
-1.389,1.672,1.945,2.207,2.459,2.705,2.952,3.208,3.476,3.757,4.050,4.351,4.659,4.972,5.289,5.611,
-5.939,6.273,6.614,6.966,7.333,7.725,8.151,8.618,9.130,9.683,10.262,10.846,11.413,11.943,12.427,12.864,
-13.265,13.647,14.025,14.405,14.783,15.146,15.472,15.746,15.960,16.119,16.243,16.359,16.490,16.653,16.850,17.070,
-17.295,17.506,17.695,17.865,18.031,18.213,18.430,18.684,18.964,19.245,19.496,19.690,19.814,19.873,19.888,19.889,
-19.900,19.933,19.985,20.036,20.063,20.049,19.995,19.925,19.874,19.880,19.969,20.134,20.337,20.508,20.564,20.431,
-20.062,19.458,18.663,17.763,16.859,16.047,15.398,14.940,14.662,14.519,14.452,14.405,14.339,14.237,14.111,13.983,
-13.885,13.842,13.865,13.952,14.087,14.249,14.413,14.560,14.678,14.762,14.816,14.847,14.864,14.877,14.895,14.921,
-14.956,14.996,15.035,15.064,15.078,15.074,15.055,15.026,14.998,14.979,14.974,14.983,15.000,15.017,15.025,15.018,
-14.997,14.968,14.941,14.928,14.933,14.958,14.996,15.036,15.065,15.077,15.066,15.038,14.999,14.959,14.922,14.891,
-14.860,14.822,14.770,14.702,14.620,14.531,14.446,14.372,14.316,14.274,14.240,14.203,14.156,14.092,14.014,13.925,
-13.834,13.745,13.662,13.584,13.506,13.426,13.340,13.253,13.170,13.098,13.043,13.006,12.982,12.960,12.929,12.882,
-12.815,12.733,12.646,12.566,12.502,12.456,12.425,12.397,12.358,12.299,12.213,12.106,11.987,11.870,11.766,11.680,
-11.611,11.552,11.493,11.425,11.348,11.263,11.179,11.105,11.046,11.000,10.962,10.921,10.867,10.794,10.705,10.608,
-10.517,10.444,10.395,10.371,10.362,10.356,10.340,10.306,10.254,10.189,10.119,10.055,9.999,9.950,9.903,9.850,
-9.785,9.710,9.631,9.558,9.503,9.473,9.467,9.477,9.493,9.502,9.495,9.473,9.439,9.405,9.379,9.369,
-9.374,9.386,9.397,9.397,9.379,9.345,9.300,9.252,9.211,9.184,9.171,9.171,9.180,9.192,9.205,9.218,
-9.235,9.255,9.282,9.313,9.349,9.388,9.429,9.476,9.529,9.591,9.665,9.747,9.834,9.923,10.008,10.090,
-10.170,10.252,10.338,10.432,10.531,10.631,10.726,10.809,10.880,10.941,11.001,11.067,11.149,11.251,11.372,11.507,
-11.648,11.788,11.925,12.061,12.205,12.367,12.558,12.783,13.047,13.345,13.673,13.806,14.186,14.572,14.957,15.338,
-15.710,16.069,16.407,16.713,16.976,17.188,17.343,17.444,17.499,17.522,17.529,17.532,17.542,17.561,17.587,17.614,
-17.635,17.642,17.631,17.601,17.553,17.489,17.413,17.329,17.241,17.155,17.079,17.022,16.991,16.996,17.038,17.119,
-17.232,17.370,17.521,17.675,17.824,17.964,18.093,18.211,18.320,18.424,18.524,18.622,18.720,18.821,18.928,19.045,
-19.174,19.316,19.469,19.627,19.777,19.909,20.008,20.060,20.058,19.998,19.883,19.723,19.539,19.350,19.183,19.059,
-18.991,18.984,19.029,19.109,19.198,19.272,19.312,19.309,19.270,19.210,19.151,19.112,19.108,19.138,19.193,19.257,
-19.313,19.352,19.375,19.389,19.410,19.451,19.519,19.607,19.702,19.786,19.843,19.868,19.867,19.856,19.858,19.888,
-19.953,20.046,20.150,20.244,20.310,20.345,20.359,20.371,20.405,20.478,20.594,20.740,20.896,21.036,21.144,21.217,
-21.267,21.315,21.381,21.475,21.587,21.689,21.742,21.712,21.581,21.358,21.081,20.810,20.612,20.543,20.636,20.890,
-21.270,21.723,22.187,22.611,22.963,23.238,23.453,23.636,23.820,24.028,24.271,24.542,24.827,25.103,25.352,25.562,
-25.730,25.862,25.968,26.062,26.155,26.255,26.366,26.488,26.619,26.758,26.904,27.058,27.219,27.386,27.557,27.725,
-27.879,28.007,28.099,28.147,28.153,28.123,28.072,28.018,27.980,27.971,27.997,28.056,28.138,28.231,28.324,28.412,
-28.497,28.587,28.692,28.823,28.981,29.164,29.359,29.550,29.722,29.862,29.964,30.029,30.064,30.077,30.080,30.083,
-30.094,30.120,30.165,30.231,30.315,30.410,30.505,30.586,30.638,30.652,30.627,30.572,30.503,30.442,30.406,30.403,
-30.430,30.470,30.500,30.496,30.442,30.337,30.193,30.036,29.891,29.782,29.716,29.689,29.683,29.676,29.648,29.588,
-29.501,29.398,29.296,29.207,29.134,29.067,28.989,28.879,28.722,28.514,28.266,28.001,27.747,27.529,27.366,27.264,
-27.215,27.207,27.225,27.254,27.288,27.324,27.361,27.398,27.427,27.440,27.423,27.365,27.258,27.103,26.910,26.696,
-26.480,26.281,26.116,25.991,25.910,25.866,25.853,25.858,25.870,25.879,25.873,25.845,25.788,25.695,25.564,25.395,
-25.188,24.948,24.681,24.393,24.093,23.789,23.489,23.197,22.917,22.648,22.389,22.135,21.884,21.635,21.393,21.164,
-20.963,20.801,20.689,20.629,20.617,20.637,20.668,20.685,20.664,20.590,20.457,20.272,20.047,19.804,19.564,19.344,
-19.154,18.997,18.865,18.747,18.626,18.485,18.313,18.103,17.855,17.574,17.273,16.967,16.670,16.393,16.145,15.927,
-15.737,15.569,15.419,15.281,15.153,15.036,14.927,14.826,14.726,14.619,14.492,14.336,14.143,13.913,13.651,13.371,
-13.086,12.809,12.546,12.299,12.059,11.815,11.555,11.269,10.953,10.609,10.245,9.868,9.488,9.108,8.729,8.350,
-7.968,7.584,7.200,6.824,6.466,6.136,5.840,5.583,5.363,5.174,5.010,4.860,4.717,4.576,4.436,4.300,
-4.171,4.057,3.965,3.900,3.864,3.855,3.861,3.869,3.860,3.816,3.722,3.572,3.366,3.117,2.839,2.550,
-2.263,1.986,1.720,1.461,1.208,.960,.724,.511,.331,.188,.072,-.041,-.188,-.415,-.759,-1.246,
--1.877,-2.628,-3.453,-4.300,-5.115,-5.859,-6.514,-7.082,-7.579,-8.027,-8.443,-8.838,-9.208,-9.545,-9.840,-10.094,
--10.317,-10.531,-10.763,-11.039,-11.373,-11.769,-12.214,-12.687,-13.163,-13.626,-14.067,-14.489,-14.903,-15.322,-15.758,-16.210,
--16.671,-17.122,-17.544,-17.916,-18.225,-18.464,-18.636,-18.750,-18.820,-18.860,-18.887,-18.913,-18.952,-19.011,-19.096,-19.210,
--19.351,-19.513,-19.688,-19.869,-20.051,-20.233,-20.420,-20.621,-20.846,-21.105,-21.405,-21.750,-22.136,-22.560,-23.013,-23.489,
--23.982,-24.488,-25.003,-25.525,-26.049,-26.570,-27.082,-27.579,-28.053,-28.499,-28.913,-29.294,-29.641,-29.957,-30.243,-30.505,
--30.743,-30.961,-31.160,-31.338,-31.494,-31.629,-31.744,-31.848,-31.953,-32.075,-32.228,-32.424,-32.667,-32.948,-33.250,-33.549,
--33.820,-34.046,-34.220,-34.348,-34.448,-34.544,-34.658,-34.801,-34.976,-35.170,-35.365,-35.541,-35.684,-35.789,-35.864,-35.921,
--35.976,-36.040,-36.119,-36.207,-36.296,-36.378,-36.449,-36.511,-36.576,-36.657,-36.765,-36.908,-37.082,-37.282,-37.498,-37.722,
--37.954,-38.199,-38.465,-38.759,-39.083,-39.431,-39.787,-40.133,-40.453,-40.739,-40.994,-41.230,-41.467,-41.719,-41.993,-42.282,
--42.569,-42.830,-43.044,-43.199,-43.297,-43.353,-43.390,-43.429,-43.485,-43.561,-43.645,-43.722,-43.776,-43.798,-43.796,-43.784,
--43.784,-43.818,-43.895,-44.012,-44.154,-44.298,-44.421,-44.509,-44.561,-44.587,-44.604,-44.627,-44.668,-44.724,-44.786,-44.839,
--44.870,-44.877,-44.868,-44.858,-44.869,-44.917,-45.004,-45.122,-45.248,-45.355,-45.419,-45.423,-45.367,-45.265,-45.139,-45.013,
--44.906,-44.828,-44.777,-44.744,-44.713,-44.672,-44.609,-44.521,-44.408,-44.275,-44.126,-43.966,-43.801,-43.636,-43.480,-43.340,
--43.224,-43.136,-43.077,-43.039,-43.014,-42.990,-42.960,-42.921,-42.880,-42.849,-42.841,-42.868,-42.933,-43.030,-43.148,-43.267,
--43.373,-43.453,-43.503,-43.529,-43.538,-43.542,-43.546,-43.554,-43.565,-43.576,-43.586,-43.597,-43.619,-43.661,-43.734,-43.845,
--43.994,-44.174,-44.374,-44.578,-44.774,-44.953,-45.111,-45.252,-45.381,-45.503,-45.624,-45.746,-45.870,-45.995,-46.123,-46.256,
--46.400,-46.560,-46.740,-46.941,-47.159,-47.385,-47.609,-47.817,-47.998,-48.145,-48.256,-48.340,-48.408,-48.479,-48.571,-48.698,
--48.868,-49.076,-49.309,-49.545,-49.760,-49.933,-50.056,-50.128,-50.167,-50.194,-50.235,-50.308,-50.419,-50.558,-50.705,-50.833,
--50.919,-50.950,-50.932,-50.882,-50.831,-50.809,-50.840,-50.932,-51.077,-51.252,-51.425,-51.567,-51.653,-51.676,-51.637,-51.552,
--51.439,-51.320,-51.211,-51.122,-51.059,-51.023,-51.012,-51.023,-51.052,-51.093,-51.139,-51.185,-51.223,-51.248,-51.260,-51.261,
--51.255,-51.248,-51.245,-51.245,-51.249,-51.251,-51.247,-51.234,-51.210,-51.178,-51.142,-51.105,-51.070,-51.037,-51.003,-50.966,
--50.922,-50.873,-50.822,-50.772,-50.728,-50.692,-50.664,-50.641,-50.616,-50.587,-50.550,-50.508,-50.463,-50.417,-50.372,-50.327,
--50.276,-50.214,-50.138,-50.048,-49.951,-49.858,-49.778,-49.723,-49.695,-49.691,-49.698,-49.703,-49.692,-49.655,-49.591,-49.506,
--49.412,-49.322,-49.245,-49.186,-49.144,-49.112,-49.080,-49.043,-48.996,-48.941,-48.882,-48.827,-48.782,-48.751,-48.734,-48.728,
--48.727,-48.724,-48.713,-48.689,-48.647,-48.588,-48.514,-48.428,-48.339,-48.254,-48.179,-48.118,-48.072,-48.036,-48.000,-47.953,
--47.887,-47.797,-47.683,-47.555,-47.423,-47.301,-47.195,-47.111,-47.043,-46.983,-46.921,-46.847,-46.759,-46.661,-46.562,-46.474,
--46.407,-46.367,-46.350,-46.347,-46.347,-46.335,-46.303,-46.247,-46.171,-46.081,-45.986,-45.894,-45.807,-45.724,-45.640,-45.550,
--45.450,-45.338,-45.215,-45.086,-44.957,-44.830,-44.706,-44.582,-44.456,-44.323,-44.181,-44.032,-43.880,-43.732,-43.596,-43.476,
--43.375,-43.290,-43.217,-43.147,-43.072,-42.985,-42.881,-42.762,-42.628,-42.485,-42.341,-42.202,-42.075,-41.964,-41.871,-41.799,
--41.746,-41.711,-41.690,-41.679,-41.675,-41.674,-41.670,-41.659,-41.637,-41.599,-41.543,-41.466,-41.370,-41.257,-41.133,-41.004,
--40.876,-40.757,-40.649,-40.555,-40.473,-40.401,-40.338,-40.282,-40.235,-40.198,-40.175,-40.168,-40.175,-40.190,-40.206,-40.212,
--40.196,-40.149,-40.067,-39.951,-39.808,-39.646,-39.476,-39.311,-39.156,-39.018,-38.895,-38.785,-38.683,-38.582,-38.476,-38.361,
--38.232,-38.087,-37.927,-37.752,-37.565,-37.372,-37.175,-36.980,-36.789,-36.603,-36.424,-36.248,-36.073,-35.896,-35.715,-35.530,
--35.343,-35.156,-34.975,-34.805,-34.648,-34.506,-34.376,-34.254,-34.135,-34.010,-33.875,-33.729,-33.573,-33.415,-33.263,-33.125,
--33.008,-32.914,-32.837,-32.770,-32.701,-32.621,-32.521,-32.403,-32.272,-32.138,-32.011,-31.901,-31.810,-31.735,-31.667,-31.595,
--31.509,-31.402,-31.275,-31.134,-30.989,-30.849,-30.722,-30.612,-30.516,-30.428,-30.343,-30.257,-30.168,-30.081,-29.998,-29.924,
--29.860,-29.801,-29.742,-29.673,-29.587,-29.481,-29.354,-29.211,-29.060,-28.907,-28.760,-28.619,-28.482,-28.346,-28.206,-28.059,
--27.904,-27.744,-27.580,-27.417,-27.258,-27.105,-26.958,-26.819,-26.688,-26.566,-26.454,-26.353,-26.260,-26.171,-26.080,-25.982,
--25.872,-25.750,-25.618,-25.480,-25.341,-25.206,-25.074,-24.945,-24.814,-24.679,-24.539,-24.397,-24.259,-24.131,-24.017,-23.916,
--23.823,-23.729,-23.624,-23.502,-23.365,-23.220,-23.077,-22.949,-22.843,-22.757,-22.682,-22.603,-22.508,-22.388,-22.245,-22.091,
--21.943,-21.814,-21.711,-21.627,-21.543,-21.435,-21.283,-21.078,-20.828,-20.553,-20.284,-20.045,-19.847,-19.677,-19.509,-19.304,
--19.031,-18.677,-18.260,-17.821,-17.421,-17.115,-16.939,-16.895,-16.947,-17.031,-17.073,-17.013,-16.818,-16.496,-16.092,-15.671,
--15.296,-15.016,-14.843,-14.758,-14.719,-14.672,-14.575,-14.406,-14.170,-13.891,-13.605,-13.342,-13.117,-12.928,-12.759,-12.587,
--12.392,-12.167,-11.918,-11.662,-11.420,-11.208,-11.030,-10.881,-10.744,-10.599,-10.430,-10.228,-9.994,-9.738,-9.469,-9.197,
--8.927,-8.657,-8.384,-8.103,-7.814,-7.519,-7.223,-6.935,-6.656,-6.388,-6.123,-5.854,-5.572,-5.269,-4.945,-4.601,
--4.244,-3.882,-3.520,-3.162,-2.811,-2.466,-2.127,-1.794,-1.468,-1.151,-.843,-.543,-.251,.035,.317,.595,
-.868,1.136,1.396,1.651,1.902,2.157,2.419,2.694,2.981,3.279,3.581,3.882,4.178,4.467,4.754,5.045,
-5.348,5.670,6.018,6.396,6.808,7.257,7.749,8.285,8.865,9.484,10.124,10.763,11.373,11.928,12.407,12.806,
-13.135,13.415,13.674,13.936,14.217,14.514,14.813,15.092,15.332,15.522,15.668,15.790,15.915,16.070,16.268,16.507,
-16.770,17.027,17.253,17.431,17.563,17.668,17.774,17.911,18.094,18.324,18.580,18.831,19.042,19.189,19.262,19.270,
-19.235,19.182,19.134,19.099,19.077,19.063,19.053,19.049,19.065,19.120,19.229,19.390,19.579,19.747,19.831,19.763,
-19.497,19.018,18.350,17.559,16.732,15.960,15.320,14.853,14.562,14.414,14.353,14.321,14.268,14.168,14.019,13.838,
-13.656,13.504,13.405,13.373,13.407,13.502,13.644,13.822,14.020,14.225,14.423,14.599,14.739,14.833,14.877,14.871,
-14.826,14.753,14.667,14.581,14.502,14.434,14.380,14.341,14.318,14.316,14.337,14.383,14.449,14.526,14.601,14.660,
-14.692,14.692,14.664,14.620,14.575,14.543,14.530,14.539,14.562,14.588,14.607,14.612,14.601,14.581,14.557,14.535,
-14.520,14.506,14.489,14.461,14.417,14.356,14.281,14.201,14.121,14.045,13.971,13.893,13.804,13.699,13.580,13.453,
-13.332,13.228,13.151,13.103,13.076,13.056,13.027,12.974,12.891,12.781,12.655,12.530,12.421,12.336,12.279,12.244,
-12.219,12.195,12.163,12.120,12.068,12.011,11.954,11.897,11.840,11.778,11.708,11.628,11.542,11.454,11.373,11.303,
-11.246,11.198,11.153,11.102,11.040,10.964,10.880,10.796,10.720,10.657,10.608,10.569,10.531,10.485,10.429,10.362,
-10.292,10.227,10.176,10.142,10.123,10.111,10.095,10.064,10.014,9.945,9.864,9.780,9.701,9.631,9.568,9.508,
-9.443,9.371,9.292,9.213,9.143,9.092,9.064,9.058,9.068,9.081,9.088,9.083,9.066,9.044,9.025,9.019,
-9.028,9.051,9.079,9.102,9.109,9.095,9.062,9.016,8.968,8.926,8.897,8.883,8.883,8.891,8.905,8.924,
-8.948,8.980,9.021,9.073,9.131,9.191,9.246,9.295,9.337,9.375,9.418,9.470,9.538,9.623,9.722,9.831,
-9.944,10.056,10.163,10.265,10.362,10.453,10.540,10.622,10.699,10.772,10.846,10.924,11.011,11.111,11.224,11.347,
-11.476,11.604,11.731,11.858,11.991,12.141,12.320,12.538,12.799,13.102,13.441,13.806,13.775,14.153,14.533,14.908,
-15.276,15.636,15.984,16.313,16.613,16.870,17.070,17.205,17.272,17.277,17.236,17.168,17.094,17.031,16.990,16.975,
-16.980,16.998,17.018,17.030,17.027,17.007,16.972,16.925,16.873,16.821,16.776,16.744,16.730,16.740,16.777,16.844,
-16.940,17.060,17.198,17.346,17.494,17.634,17.762,17.875,17.975,18.065,18.151,18.239,18.334,18.441,18.562,18.698,
-18.848,19.010,19.177,19.343,19.497,19.626,19.719,19.762,19.747,19.670,19.533,19.350,19.140,18.930,18.747,18.616,
-18.554,18.567,18.644,18.764,18.897,19.011,19.083,19.098,19.059,18.981,18.889,18.808,18.759,18.751,18.779,18.831,
-18.890,18.941,18.977,19.002,19.025,19.060,19.114,19.187,19.270,19.347,19.402,19.426,19.420,19.397,19.378,19.382,
-19.423,19.499,19.599,19.700,19.782,19.832,19.851,19.855,19.866,19.908,19.993,20.121,20.276,20.435,20.575,20.683,
-20.764,20.832,20.908,21.009,21.132,21.256,21.344,21.351,21.245,21.020,20.702,20.351,20.047,19.872,19.887,20.116,
-20.540,21.102,21.720,22.310,22.804,23.167,23.397,23.525,23.599,23.670,23.775,23.934,24.145,24.390,24.642,24.877,
-25.079,25.243,25.374,25.481,25.577,25.671,25.768,25.869,25.971,26.074,26.179,26.288,26.407,26.541,26.692,26.859,
-27.033,27.206,27.364,27.494,27.589,27.644,27.663,27.656,27.636,27.620,27.620,27.645,27.702,27.787,27.897,28.023,
-28.160,28.302,28.448,28.599,28.759,28.932,29.121,29.327,29.547,29.774,29.996,30.200,30.371,30.494,30.560,30.564,
-30.513,30.421,30.307,30.195,30.106,30.052,30.038,30.059,30.102,30.155,30.207,30.259,30.317,30.393,30.497,30.632,
-30.790,30.947,31.074,31.140,31.126,31.028,30.864,30.666,30.475,30.326,30.239,30.213,30.224,30.236,30.213,30.127,
-29.971,29.759,29.520,29.287,29.088,28.935,28.820,28.720,28.603,28.445,28.230,27.963,27.665,27.366,27.096,26.878,
-26.722,26.627,26.580,26.567,26.579,26.612,26.669,26.754,26.868,27.004,27.146,27.268,27.345,27.352,27.277,27.119,
-26.894,26.627,26.347,26.083,25.858,25.685,25.567,25.498,25.468,25.461,25.464,25.461,25.441,25.393,25.307,25.178,
-25.001,24.779,24.514,24.215,23.894,23.562,23.230,22.907,22.601,22.313,22.043,21.790,21.552,21.328,21.119,20.930,
-20.765,20.629,20.525,20.453,20.408,20.381,20.357,20.321,20.261,20.166,20.031,19.859,19.658,19.443,19.229,19.028,
-18.853,18.704,18.579,18.467,18.352,18.216,18.044,17.827,17.561,17.253,16.915,16.566,16.222,15.899,15.603,15.338,
-15.099,14.877,14.669,14.470,14.286,14.124,13.995,13.906,13.857,13.839,13.836,13.825,13.782,13.692,13.545,13.347,
-13.108,12.848,12.583,12.324,12.074,11.830,11.582,11.320,11.037,10.732,10.409,10.076,9.740,9.406,9.076,8.746,
-8.414,8.076,7.735,7.396,7.069,6.762,6.483,6.231,6.002,5.786,5.573,5.356,5.134,4.910,4.695,4.499,
-4.332,4.197,4.092,4.006,3.927,3.840,3.733,3.598,3.432,3.237,3.016,2.776,2.524,2.265,2.004,1.742,
-1.481,1.220,.957,.691,.421,.151,-.111,-.354,-.567,-.737,-.861,-.946,-1.012,-1.087,-1.211,-1.418,
--1.737,-2.181,-2.744,-3.403,-4.120,-4.855,-5.564,-6.215,-6.787,-7.272,-7.675,-8.007,-8.285,-8.531,-8.762,-8.997,
--9.251,-9.533,-9.849,-10.194,-10.559,-10.929,-11.288,-11.623,-11.930,-12.216,-12.497,-12.797,-13.140,-13.543,-14.012,-14.541,
--15.107,-15.684,-16.243,-16.758,-17.216,-17.609,-17.943,-18.224,-18.461,-18.660,-18.824,-18.955,-19.057,-19.133,-19.194,-19.250,
--19.314,-19.393,-19.489,-19.601,-19.717,-19.829,-19.929,-20.015,-20.094,-20.180,-20.294,-20.456,-20.685,-20.993,-21.381,-21.843,
--22.364,-22.924,-23.503,-24.084,-24.653,-25.204,-25.738,-26.260,-26.778,-27.298,-27.824,-28.353,-28.877,-29.384,-29.858,-30.285,
--30.655,-30.963,-31.212,-31.406,-31.556,-31.672,-31.768,-31.851,-31.932,-32.019,-32.117,-32.230,-32.357,-32.493,-32.630,-32.757,
--32.864,-32.946,-33.004,-33.050,-33.102,-33.180,-33.300,-33.471,-33.687,-33.933,-34.183,-34.414,-34.608,-34.758,-34.872,-34.965,
--35.056,-35.157,-35.270,-35.384,-35.483,-35.547,-35.567,-35.549,-35.515,-35.499,-35.537,-35.657,-35.871,-36.169,-36.524,-36.898,
--37.257,-37.576,-37.847,-38.082,-38.302,-38.530,-38.785,-39.071,-39.385,-39.712,-40.037,-40.351,-40.653,-40.951,-41.253,-41.567,
--41.894,-42.224,-42.541,-42.827,-43.070,-43.267,-43.426,-43.564,-43.698,-43.841,-43.994,-44.147,-44.282,-44.381,-44.433,-44.436,
--44.405,-44.360,-44.325,-44.321,-44.354,-44.421,-44.510,-44.603,-44.687,-44.755,-44.809,-44.856,-44.907,-44.967,-45.034,-45.102,
--45.162,-45.208,-45.240,-45.268,-45.309,-45.378,-45.486,-45.634,-45.807,-45.980,-46.127,-46.220,-46.246,-46.205,-46.111,-45.988,
--45.860,-45.749,-45.666,-45.612,-45.580,-45.557,-45.530,-45.490,-45.432,-45.353,-45.252,-45.129,-44.984,-44.816,-44.632,-44.439,
--44.251,-44.082,-43.946,-43.850,-43.792,-43.763,-43.750,-43.737,-43.714,-43.678,-43.638,-43.605,-43.596,-43.621,-43.684,-43.779,
--43.892,-44.007,-44.108,-44.185,-44.238,-44.271,-44.292,-44.310,-44.329,-44.348,-44.365,-44.373,-44.371,-44.363,-44.357,-44.368,
--44.408,-44.488,-44.612,-44.774,-44.965,-45.167,-45.368,-45.556,-45.726,-45.878,-46.018,-46.153,-46.289,-46.428,-46.572,-46.718,
--46.864,-47.010,-47.159,-47.314,-47.483,-47.669,-47.874,-48.092,-48.314,-48.524,-48.710,-48.861,-48.975,-49.057,-49.124,-49.197,
--49.295,-49.432,-49.613,-49.827,-50.055,-50.274,-50.461,-50.605,-50.706,-50.779,-50.849,-50.940,-51.071,-51.247,-51.454,-51.666,
--51.850,-51.976,-52.027,-52.002,-51.921,-51.815,-51.722,-51.674,-51.691,-51.773,-51.905,-52.062,-52.211,-52.325,-52.387,-52.389,
--52.336,-52.242,-52.122,-51.993,-51.869,-51.760,-51.671,-51.605,-51.562,-51.537,-51.527,-51.525,-51.524,-51.519,-51.508,-51.489,
--51.468,-51.448,-51.436,-51.435,-51.445,-51.462,-51.481,-51.497,-51.504,-51.501,-51.489,-51.472,-51.454,-51.436,-51.419,-51.402,
--51.383,-51.361,-51.335,-51.309,-51.285,-51.264,-51.248,-51.233,-51.215,-51.190,-51.153,-51.105,-51.051,-50.995,-50.943,-50.901,
--50.867,-50.838,-50.806,-50.765,-50.710,-50.642,-50.565,-50.490,-50.423,-50.372,-50.339,-50.319,-50.305,-50.287,-50.260,-50.219,
--50.166,-50.106,-50.045,-49.987,-49.934,-49.885,-49.837,-49.786,-49.729,-49.667,-49.602,-49.540,-49.484,-49.438,-49.403,-49.375,
--49.352,-49.330,-49.305,-49.273,-49.234,-49.186,-49.128,-49.061,-48.987,-48.907,-48.827,-48.753,-48.689,-48.641,-48.609,-48.589,
--48.573,-48.554,-48.522,-48.471,-48.398,-48.308,-48.206,-48.099,-47.995,-47.895,-47.800,-47.707,-47.612,-47.512,-47.408,-47.302,
--47.198,-47.102,-47.018,-46.946,-46.883,-46.826,-46.771,-46.716,-46.659,-46.603,-46.552,-46.509,-46.473,-46.443,-46.412,-46.373,
--46.319,-46.245,-46.152,-46.041,-45.918,-45.791,-45.665,-45.542,-45.422,-45.302,-45.176,-45.041,-44.893,-44.734,-44.566,-44.397,
--44.231,-44.077,-43.937,-43.814,-43.706,-43.607,-43.514,-43.419,-43.316,-43.202,-43.074,-42.934,-42.785,-42.632,-42.483,-42.343,
--42.220,-42.117,-42.037,-41.981,-41.946,-41.932,-41.932,-41.943,-41.957,-41.969,-41.972,-41.958,-41.923,-41.864,-41.781,-41.678,
--41.561,-41.437,-41.314,-41.198,-41.092,-40.997,-40.911,-40.832,-40.757,-40.688,-40.626,-40.575,-40.540,-40.522,-40.522,-40.532,
--40.546,-40.550,-40.535,-40.491,-40.415,-40.308,-40.174,-40.022,-39.864,-39.707,-39.558,-39.422,-39.297,-39.180,-39.066,-38.949,
--38.823,-38.683,-38.527,-38.354,-38.166,-37.967,-37.762,-37.556,-37.353,-37.157,-36.968,-36.785,-36.605,-36.423,-36.237,-36.044,
--35.847,-35.648,-35.455,-35.274,-35.111,-34.966,-34.840,-34.726,-34.615,-34.499,-34.370,-34.226,-34.067,-33.901,-33.738,-33.588,
--33.459,-33.354,-33.269,-33.197,-33.126,-33.045,-32.947,-32.830,-32.700,-32.565,-32.436,-32.323,-32.229,-32.153,-32.086,-32.019,
--31.941,-31.845,-31.730,-31.601,-31.465,-31.332,-31.209,-31.097,-30.997,-30.903,-30.810,-30.714,-30.616,-30.519,-30.427,-30.344,
--30.273,-30.212,-30.153,-30.089,-30.010,-29.912,-29.794,-29.657,-29.508,-29.355,-29.201,-29.051,-28.904,-28.757,-28.606,-28.451,
--28.292,-28.129,-27.966,-27.806,-27.648,-27.492,-27.336,-27.179,-27.020,-26.862,-26.708,-26.563,-26.429,-26.306,-26.193,-26.085,
--25.976,-25.864,-25.749,-25.632,-25.517,-25.407,-25.302,-25.199,-25.091,-24.973,-24.841,-24.694,-24.538,-24.383,-24.237,-24.107,
--23.995,-23.896,-23.802,-23.706,-23.601,-23.487,-23.371,-23.261,-23.162,-23.078,-23.003,-22.925,-22.834,-22.719,-22.582,-22.431,
--22.285,-22.159,-22.064,-21.996,-21.938,-21.862,-21.741,-21.555,-21.305,-21.010,-20.707,-20.434,-20.218,-20.062,-19.943,-19.814,
--19.621,-19.324,-18.909,-18.401,-17.863,-17.373,-17.007,-16.813,-16.793,-16.902,-17.055,-17.158,-17.130,-16.927,-16.557,-16.076,
--15.567,-15.120,-14.801,-14.636,-14.610,-14.667,-14.738,-14.757,-14.684,-14.509,-14.253,-13.957,-13.661,-13.397,-13.176,-12.988,
--12.810,-12.620,-12.400,-12.149,-11.880,-11.611,-11.364,-11.150,-10.970,-10.814,-10.665,-10.506,-10.324,-10.115,-9.885,-9.641,
--9.394,-9.149,-8.904,-8.657,-8.398,-8.123,-7.831,-7.524,-7.209,-6.897,-6.593,-6.302,-6.024,-5.756,-5.494,-5.231,
--4.965,-4.690,-4.407,-4.112,-3.804,-3.483,-3.148,-2.800,-2.440,-2.074,-1.705,-1.339,-.980,-.634,-.304,.008,
-.300,.572,.826,1.067,1.304,1.545,1.799,2.075,2.373,2.691,3.021,3.352,3.673,3.977,4.265,4.541,
-4.817,5.109,5.429,5.792,6.204,6.670,7.190,7.761,8.375,9.021,9.684,10.341,10.970,11.546,12.051,12.476,
-12.824,13.111,13.360,13.595,13.833,14.081,14.333,14.573,14.783,14.954,15.088,15.204,15.330,15.499,15.732,16.036,
-16.393,16.767,17.114,17.393,17.580,17.672,17.692,17.678,17.672,17.707,17.797,17.937,18.101,18.257,18.374,18.432,
-18.429,18.374,18.286,18.188,18.100,18.035,18.006,18.020,18.084,18.205,18.381,18.600,18.830,19.027,19.131,19.089,
-18.859,18.433,17.836,17.130,16.398,15.729,15.193,14.830,14.635,14.572,14.576,14.581,14.533,14.403,14.192,13.925,
-13.643,13.384,13.179,13.041,12.973,12.967,13.013,13.105,13.241,13.421,13.639,13.886,14.140,14.376,14.566,14.687,
-14.731,14.699,14.609,14.482,14.344,14.215,14.107,14.026,13.972,13.942,13.936,13.953,13.995,14.058,14.137,14.221,
-14.297,14.350,14.373,14.364,14.330,14.284,14.239,14.207,14.193,14.196,14.208,14.221,14.226,14.220,14.207,14.190,
-14.175,14.166,14.161,14.156,14.144,14.120,14.081,14.026,13.961,13.886,13.803,13.708,13.595,13.460,13.299,13.119,
-12.933,12.760,12.619,12.524,12.480,12.478,12.499,12.516,12.507,12.455,12.357,12.220,12.065,11.914,11.786,11.693,
-11.634,11.603,11.584,11.565,11.534,11.487,11.425,11.355,11.281,11.209,11.139,11.071,11.003,10.934,10.862,10.791,
-10.723,10.659,10.601,10.548,10.499,10.452,10.405,10.361,10.321,10.285,10.253,10.222,10.189,10.150,10.101,10.044,
-9.983,9.925,9.877,9.842,9.820,9.805,9.788,9.758,9.709,9.639,9.552,9.457,9.363,9.278,9.205,9.142,
-9.083,9.022,8.956,8.884,8.812,8.747,8.697,8.665,8.651,8.650,8.654,8.656,8.654,8.647,8.640,8.639,
-8.647,8.665,8.687,8.706,8.713,8.703,8.675,8.636,8.595,8.562,8.544,8.545,8.562,8.589,8.620,8.649,
-8.677,8.706,8.741,8.786,8.843,8.907,8.975,9.038,9.093,9.140,9.181,9.227,9.287,9.366,9.470,9.593,
-9.729,9.868,10.000,10.118,10.219,10.305,10.379,10.448,10.515,10.586,10.663,10.747,10.839,10.938,11.045,11.156,
-11.269,11.383,11.496,11.610,11.730,11.865,12.025,12.220,12.456,12.735,13.055,13.405,13.775,13.560,13.931,14.302,
-14.668,15.026,15.373,15.706,16.018,16.297,16.529,16.703,16.809,16.844,16.815,16.737,16.632,16.521,16.423,16.350,
-16.307,16.290,16.291,16.299,16.307,16.310,16.311,16.314,16.324,16.347,16.385,16.437,16.499,16.568,16.641,16.718,
-16.799,16.889,16.991,17.105,17.231,17.363,17.496,17.624,17.741,17.847,17.944,18.039,18.136,18.244,18.367,18.504,
-18.655,18.812,18.969,19.119,19.252,19.363,19.444,19.489,19.491,19.445,19.351,19.209,19.030,18.830,18.629,18.454,
-18.325,18.258,18.257,18.314,18.409,18.515,18.607,18.662,18.672,18.639,18.580,18.514,18.463,18.440,18.449,18.484,
-18.532,18.579,18.615,18.639,18.657,18.679,18.715,18.769,18.838,18.910,18.971,19.007,19.013,18.994,18.964,18.941,
-18.942,18.974,19.034,19.109,19.181,19.235,19.267,19.282,19.297,19.332,19.404,19.517,19.666,19.831,19.992,20.131,
-20.245,20.340,20.435,20.546,20.680,20.826,20.953,21.021,20.989,20.838,20.576,20.249,19.929,19.700,19.638,19.789,
-20.158,20.700,21.341,21.988,22.555,22.986,23.259,23.392,23.433,23.439,23.464,23.543,23.684,23.876,24.092,24.302,
-24.485,24.629,24.739,24.826,24.905,24.989,25.081,25.181,25.282,25.378,25.466,25.547,25.628,25.718,25.827,25.960,
-26.116,26.290,26.474,26.656,26.825,26.974,27.099,27.198,27.273,27.328,27.369,27.403,27.438,27.481,27.541,27.622,
-27.726,27.853,28.000,28.160,28.332,28.513,28.706,28.916,29.152,29.415,29.704,30.005,30.297,30.551,30.737,30.829,
-30.818,30.708,30.523,30.298,30.074,29.888,29.764,29.712,29.723,29.782,29.870,29.976,30.099,30.247,30.435,30.673,
-30.961,31.277,31.588,31.848,32.014,32.061,31.984,31.808,31.577,31.343,31.152,31.029,30.972,30.952,30.927,30.852,
-30.696,30.450,30.134,29.783,29.442,29.148,28.917,28.743,28.601,28.456,28.274,28.035,27.741,27.410,27.074,26.766,
-26.513,26.325,26.201,26.129,26.093,26.082,26.096,26.140,26.226,26.360,26.540,26.751,26.965,27.146,27.259,27.276,
-27.186,26.993,26.720,26.397,26.061,25.745,25.474,25.263,25.116,25.028,24.986,24.975,24.977,24.972,24.943,24.875,
-24.759,24.589,24.365,24.095,23.791,23.467,23.138,22.814,22.505,22.214,21.942,21.688,21.451,21.233,21.037,20.866,
-20.723,20.608,20.519,20.446,20.379,20.307,20.219,20.106,19.969,19.808,19.631,19.446,19.264,19.089,18.928,18.781,
-18.645,18.513,18.380,18.233,18.064,17.862,17.620,17.335,17.009,16.652,16.280,15.913,15.571,15.270,15.021,14.820,
-14.658,14.518,14.380,14.233,14.070,13.898,13.732,13.589,13.487,13.432,13.418,13.429,13.439,13.421,13.352,13.222,
-13.035,12.803,12.547,12.289,12.042,11.813,11.597,11.383,11.158,10.914,10.644,10.351,10.040,9.721,9.400,9.081,
-8.767,8.458,8.157,7.869,7.600,7.356,7.139,6.945,6.761,6.570,6.355,6.101,5.802,5.466,5.110,4.758,
-4.432,4.149,3.915,3.722,3.551,3.380,3.188,2.962,2.702,2.414,2.116,1.825,1.555,1.313,1.095,.895,
-.699,.497,.281,.050,-.193,-.439,-.677,-.899,-1.096,-1.265,-1.406,-1.520,-1.616,-1.705,-1.801,-1.923,
--2.094,-2.332,-2.656,-3.073,-3.584,-4.173,-4.816,-5.475,-6.111,-6.686,-7.171,-7.549,-7.822,-8.010,-8.146,-8.271,
--8.423,-8.634,-8.916,-9.263,-9.652,-10.048,-10.413,-10.720,-10.955,-11.128,-11.268,-11.415,-11.614,-11.899,-12.289,-12.780,
--13.351,-13.964,-14.581,-15.170,-15.710,-16.197,-16.639,-17.050,-17.445,-17.829,-18.202,-18.551,-18.863,-19.126,-19.333,-19.490,
--19.609,-19.705,-19.792,-19.878,-19.961,-20.030,-20.071,-20.071,-20.026,-19.943,-19.847,-19.771,-19.755,-19.833,-20.033,-20.362,
--20.813,-21.358,-21.961,-22.582,-23.184,-23.746,-24.260,-24.736,-25.197,-25.668,-26.175,-26.731,-27.336,-27.974,-28.615,-29.225,
--29.770,-30.224,-30.578,-30.833,-31.007,-31.126,-31.215,-31.300,-31.395,-31.508,-31.635,-31.767,-31.890,-31.990,-32.055,-32.078,
--32.061,-32.014,-31.953,-31.902,-31.888,-31.933,-32.055,-32.254,-32.519,-32.823,-33.134,-33.419,-33.653,-33.829,-33.957,-34.059,
--34.167,-34.304,-34.481,-34.687,-34.898,-35.077,-35.193,-35.229,-35.193,-35.119,-35.058,-35.064,-35.180,-35.424,-35.782,-36.216,
--36.669,-37.085,-37.422,-37.664,-37.823,-37.931,-38.029,-38.156,-38.336,-38.575,-38.863,-39.180,-39.505,-39.824,-40.134,-40.439,
--40.748,-41.067,-41.396,-41.727,-42.047,-42.343,-42.608,-42.844,-43.059,-43.264,-43.471,-43.683,-43.894,-44.090,-44.255,-44.375,
--44.445,-44.470,-44.467,-44.454,-44.452,-44.473,-44.523,-44.597,-44.687,-44.784,-44.880,-44.974,-45.068,-45.163,-45.260,-45.356,
--45.444,-45.518,-45.575,-45.619,-45.661,-45.717,-45.803,-45.928,-46.090,-46.276,-46.463,-46.624,-46.733,-46.777,-46.754,-46.674,
--46.557,-46.427,-46.304,-46.200,-46.121,-46.065,-46.027,-46.001,-45.983,-45.969,-45.956,-45.935,-45.898,-45.831,-45.724,-45.571,
--45.376,-45.151,-44.917,-44.700,-44.520,-44.392,-44.316,-44.284,-44.279,-44.283,-44.283,-44.274,-44.261,-44.255,-44.270,-44.316,
--44.395,-44.503,-44.626,-44.749,-44.860,-44.950,-45.017,-45.066,-45.103,-45.133,-45.159,-45.179,-45.191,-45.191,-45.181,-45.165,
--45.155,-45.164,-45.205,-45.285,-45.406,-45.561,-45.737,-45.922,-46.101,-46.268,-46.420,-46.563,-46.703,-46.848,-47.001,-47.161,
--47.323,-47.481,-47.628,-47.762,-47.888,-48.014,-48.151,-48.312,-48.500,-48.716,-48.947,-49.179,-49.393,-49.576,-49.720,-49.830,
--49.918,-50.003,-50.101,-50.225,-50.379,-50.555,-50.739,-50.918,-51.079,-51.221,-51.350,-51.482,-51.634,-51.820,-52.040,-52.285,
--52.534,-52.756,-52.923,-53.017,-53.032,-52.976,-52.874,-52.756,-52.652,-52.586,-52.571,-52.607,-52.684,-52.784,-52.890,-52.984,
--53.053,-53.090,-53.092,-53.061,-52.998,-52.910,-52.802,-52.682,-52.556,-52.430,-52.309,-52.195,-52.089,-51.989,-51.895,-51.807,
--51.728,-51.663,-51.616,-51.591,-51.589,-51.608,-51.642,-51.682,-51.721,-51.752,-51.773,-51.786,-51.794,-51.801,-51.811,-51.824,
--51.839,-51.853,-51.864,-51.869,-51.869,-51.865,-51.859,-51.852,-51.840,-51.823,-51.795,-51.755,-51.704,-51.646,-51.587,-51.533,
--51.491,-51.463,-51.446,-51.434,-51.420,-51.395,-51.356,-51.302,-51.236,-51.164,-51.091,-51.024,-50.966,-50.918,-50.878,-50.846,
--50.820,-50.798,-50.778,-50.758,-50.733,-50.700,-50.654,-50.595,-50.522,-50.441,-50.357,-50.278,-50.211,-50.159,-50.121,-50.092,
--50.067,-50.039,-50.003,-49.959,-49.908,-49.855,-49.801,-49.750,-49.700,-49.649,-49.592,-49.528,-49.458,-49.384,-49.313,-49.251,
--49.201,-49.165,-49.139,-49.117,-49.089,-49.050,-48.996,-48.925,-48.841,-48.750,-48.658,-48.569,-48.485,-48.403,-48.321,-48.235,
--48.140,-48.035,-47.921,-47.799,-47.673,-47.548,-47.428,-47.316,-47.217,-47.131,-47.063,-47.012,-46.977,-46.957,-46.945,-46.937,
--46.925,-46.901,-46.860,-46.799,-46.718,-46.620,-46.507,-46.387,-46.262,-46.137,-46.010,-45.882,-45.749,-45.607,-45.454,-45.288,
--45.112,-44.929,-44.747,-44.574,-44.415,-44.275,-44.156,-44.055,-43.964,-43.875,-43.779,-43.668,-43.537,-43.388,-43.224,-43.054,
--42.886,-42.730,-42.591,-42.474,-42.380,-42.308,-42.257,-42.225,-42.209,-42.207,-42.216,-42.229,-42.241,-42.244,-42.231,-42.195,
--42.137,-42.057,-41.961,-41.858,-41.754,-41.657,-41.567,-41.486,-41.410,-41.334,-41.256,-41.175,-41.095,-41.019,-40.954,-40.905,
--40.874,-40.857,-40.849,-40.840,-40.819,-40.780,-40.715,-40.623,-40.506,-40.371,-40.225,-40.074,-39.924,-39.779,-39.639,-39.501,
--39.364,-39.221,-39.069,-38.904,-38.725,-38.533,-38.330,-38.120,-37.909,-37.701,-37.499,-37.305,-37.118,-36.934,-36.751,-36.563,
--36.371,-36.175,-35.979,-35.789,-35.610,-35.448,-35.305,-35.177,-35.060,-34.947,-34.829,-34.703,-34.566,-34.421,-34.273,-34.130,
--33.998,-33.881,-33.777,-33.682,-33.589,-33.491,-33.383,-33.266,-33.143,-33.021,-32.908,-32.809,-32.726,-32.655,-32.587,-32.514,
--32.425,-32.316,-32.189,-32.048,-31.904,-31.767,-31.642,-31.534,-31.440,-31.355,-31.272,-31.186,-31.094,-30.999,-30.904,-30.813,
--30.729,-30.650,-30.572,-30.489,-30.394,-30.283,-30.156,-30.015,-29.867,-29.716,-29.566,-29.418,-29.270,-29.117,-28.958,-28.791,
--28.618,-28.445,-28.277,-28.117,-27.966,-27.821,-27.676,-27.524,-27.361,-27.188,-27.007,-26.826,-26.654,-26.496,-26.354,-26.227,
--26.110,-25.996,-25.884,-25.771,-25.661,-25.558,-25.462,-25.374,-25.290,-25.200,-25.097,-24.976,-24.837,-24.685,-24.531,-24.385,
--24.255,-24.145,-24.050,-23.963,-23.877,-23.785,-23.687,-23.587,-23.491,-23.404,-23.324,-23.246,-23.158,-23.051,-22.920,-22.767,
--22.607,-22.458,-22.336,-22.249,-22.189,-22.137,-22.061,-21.932,-21.735,-21.471,-21.166,-20.857,-20.585,-20.377,-20.232,-20.124,
--20.003,-19.815,-19.518,-19.105,-18.605,-18.083,-17.621,-17.292,-17.140,-17.156,-17.285,-17.433,-17.497,-17.394,-17.085,-16.587,
--15.973,-15.344,-14.809,-14.448,-14.296,-14.333,-14.497,-14.699,-14.854,-14.901,-14.816,-14.612,-14.330,-14.020,-13.726,-13.473,
--13.263,-13.078,-12.894,-12.690,-12.457,-12.196,-11.924,-11.659,-11.416,-11.202,-11.013,-10.837,-10.661,-10.473,-10.268,-10.051,
--9.827,-9.606,-9.392,-9.185,-8.978,-8.760,-8.522,-8.255,-7.960,-7.641,-7.309,-6.975,-6.653,-6.349,-6.067,-5.809,
--5.568,-5.339,-5.113,-4.882,-4.636,-4.371,-4.081,-3.763,-3.420,-3.054,-2.674,-2.285,-1.896,-1.514,-1.145,-.794,
--.462,-.150,.142,.417,.682,.941,1.202,1.473,1.758,2.060,2.378,2.704,3.034,3.359,3.676,3.986,
-4.294,4.610,4.947,5.317,5.730,6.193,6.707,7.267,7.864,8.486,9.116,9.737,10.330,10.879,11.372,11.806,
-12.184,12.517,12.821,13.111,13.395,13.674,13.940,14.176,14.367,14.506,14.598,14.668,14.750,14.886,15.111,15.441,
-15.867,16.353,16.844,17.280,17.608,17.796,17.842,17.771,17.627,17.463,17.323,17.234,17.206,17.225,17.269,17.312,
-17.334,17.325,17.285,17.225,17.157,17.099,17.066,17.074,17.136,17.263,17.457,17.708,17.986,18.248,18.435,18.488,
-18.359,18.028,17.514,16.870,16.181,15.539,15.028,14.698,14.557,14.567,14.660,14.753,14.775,14.681,14.465,14.152,
-13.793,13.441,13.140,12.915,12.766,12.679,12.632,12.609,12.607,12.635,12.708,12.838,13.029,13.267,13.527,13.773,
-13.975,14.108,14.167,14.158,14.101,14.018,13.930,13.848,13.777,13.715,13.659,13.609,13.569,13.545,13.545,13.572,
-13.624,13.690,13.757,13.812,13.844,13.852,13.842,13.822,13.805,13.798,13.804,13.820,13.840,13.857,13.864,13.859,
-13.844,13.820,13.792,13.758,13.720,13.674,13.619,13.558,13.492,13.427,13.363,13.300,13.230,13.144,13.031,12.886,
-12.709,12.512,12.313,12.136,11.999,11.915,11.881,11.883,11.900,11.904,11.876,11.805,11.693,11.553,11.404,11.265,
-11.150,11.063,11.000,10.950,10.901,10.842,10.770,10.687,10.601,10.519,10.449,10.392,10.347,10.307,10.266,10.218,
-10.161,10.096,10.026,9.958,9.898,9.851,9.818,9.799,9.792,9.792,9.793,9.791,9.779,9.755,9.717,9.667,
-9.610,9.552,9.499,9.456,9.424,9.399,9.375,9.346,9.303,9.245,9.171,9.087,8.999,8.914,8.836,8.765,
-8.699,8.634,8.564,8.490,8.414,8.342,8.280,8.234,8.207,8.196,8.197,8.204,8.213,8.221,8.230,8.242,
-8.260,8.283,8.309,8.330,8.339,8.332,8.306,8.268,8.227,8.194,8.179,8.187,8.217,8.262,8.313,8.360,
-8.396,8.421,8.440,8.460,8.489,8.531,8.586,8.650,8.718,8.787,8.854,8.923,9.000,9.092,9.204,9.336,
-9.482,9.632,9.775,9.902,10.008,10.092,10.159,10.217,10.276,10.341,10.418,10.507,10.605,10.710,10.817,10.923,
-11.026,11.126,11.223,11.320,11.422,11.534,11.666,11.827,12.023,12.260,12.538,12.853,13.197,13.560,13.322,13.688,
-14.052,14.404,14.738,15.048,15.332,15.583,15.796,15.964,16.080,16.143,16.153,16.120,16.058,15.983,15.912,15.857,
-15.823,15.808,15.806,15.808,15.808,15.804,15.800,15.805,15.830,15.884,15.970,16.085,16.218,16.355,16.482,16.590,
-16.675,16.744,16.807,16.876,16.962,17.072,17.206,17.357,17.517,17.677,17.830,17.974,18.112,18.250,18.392,18.539,
-18.690,18.838,18.974,19.088,19.175,19.232,19.261,19.267,19.254,19.225,19.177,19.106,19.007,18.876,18.716,18.537,
-18.356,18.191,18.063,17.984,17.958,17.978,18.029,18.092,18.149,18.188,18.204,18.203,18.195,18.190,18.196,18.216,
-18.246,18.279,18.305,18.323,18.331,18.337,18.348,18.370,18.406,18.451,18.497,18.534,18.553,18.553,18.541,18.527,
-18.523,18.539,18.576,18.628,18.685,18.736,18.773,18.798,18.820,18.854,18.915,19.011,19.142,19.295,19.455,19.606,
-19.739,19.855,19.965,20.084,20.219,20.367,20.508,20.611,20.639,20.571,20.404,20.168,19.919,19.731,19.675,19.803,
-20.127,20.620,21.217,21.831,22.376,22.790,23.044,23.152,23.159,23.127,23.116,23.167,23.294,23.481,23.697,23.902,
-24.065,24.172,24.226,24.247,24.261,24.291,24.351,24.442,24.553,24.672,24.784,24.882,24.967,25.047,25.132,25.231,
-25.350,25.488,25.642,25.804,25.972,26.141,26.312,26.484,26.656,26.823,26.978,27.113,27.220,27.299,27.355,27.399,
-27.445,27.509,27.600,27.724,27.878,28.058,28.258,28.476,28.713,28.972,29.257,29.565,29.884,30.189,30.450,30.634,
-30.717,30.692,30.571,30.386,30.183,30.008,29.901,29.880,29.943,30.068,30.224,30.384,30.533,30.677,30.837,31.046,
-31.328,31.694,32.127,32.582,33.001,33.321,33.493,33.497,33.345,33.081,32.762,32.447,32.179,31.973,31.815,31.673,
-31.506,31.281,30.986,30.631,30.246,29.866,29.525,29.239,29.003,28.796,28.586,28.343,28.051,27.712,27.345,26.983,
-26.657,26.392,26.197,26.067,25.985,25.934,25.898,25.874,25.870,25.898,25.972,26.098,26.268,26.462,26.648,26.790,
-26.857,26.827,26.696,26.474,26.184,25.857,25.525,25.217,24.955,24.753,24.616,24.539,24.511,24.512,24.522,24.516,
-24.474,24.379,24.222,24.004,23.736,23.434,23.117,22.804,22.508,22.235,21.985,21.753,21.533,21.321,21.120,20.931,
-20.763,20.619,20.500,20.402,20.312,20.217,20.104,19.964,19.794,19.600,19.393,19.189,18.998,18.828,18.680,18.545,
-18.414,18.272,18.107,17.909,17.675,17.403,17.096,16.760,16.403,16.036,15.675,15.337,15.042,14.807,14.643,14.554,
-14.529,14.550,14.588,14.615,14.606,14.550,14.447,14.312,14.165,14.027,13.912,13.823,13.747,13.664,13.552,13.390,
-13.172,12.904,12.605,12.300,12.017,11.772,11.572,11.410,11.268,11.122,10.952,10.742,10.485,10.186,9.854,9.503,
-9.149,8.804,8.481,8.189,7.935,7.721,7.545,7.397,7.262,7.117,6.937,6.702,6.399,6.028,5.600,5.140,
-4.675,4.232,3.828,3.468,3.144,2.840,2.541,2.235,1.919,1.603,1.305,1.041,.824,.657,.527,.413,
-.288,.131,-.071,-.316,-.587,-.860,-1.109,-1.313,-1.463,-1.563,-1.626,-1.674,-1.727,-1.799,-1.899,-2.027,
--2.181,-2.363,-2.576,-2.835,-3.156,-3.555,-4.039,-4.604,-5.227,-5.872,-6.492,-7.044,-7.494,-7.829,-8.060,-8.219,
--8.352,-8.508,-8.724,-9.018,-9.384,-9.792,-10.200,-10.563,-10.849,-11.045,-11.164,-11.240,-11.322,-11.454,-11.672,-11.991,
--12.403,-12.881,-13.390,-13.895,-14.372,-14.815,-15.230,-15.635,-16.051,-16.491,-16.955,-17.434,-17.904,-18.341,-18.727,-19.052,
--19.320,-19.545,-19.744,-19.934,-20.120,-20.297,-20.446,-20.547,-20.578,-20.532,-20.416,-20.258,-20.100,-19.993,-19.983,-20.104,
--20.369,-20.766,-21.262,-21.808,-22.356,-22.862,-23.302,-23.676,-24.004,-24.323,-24.675,-25.095,-25.602,-26.193,-26.842,-27.507,
--28.139,-28.691,-29.133,-29.454,-29.665,-29.794,-29.879,-29.958,-30.061,-30.203,-30.384,-30.589,-30.797,-30.981,-31.121,-31.203,
--31.227,-31.204,-31.155,-31.111,-31.103,-31.159,-31.298,-31.526,-31.832,-32.190,-32.562,-32.910,-33.202,-33.420,-33.568,-33.668,
--33.756,-33.870,-34.041,-34.278,-34.567,-34.874,-35.154,-35.365,-35.482,-35.508,-35.471,-35.422,-35.417,-35.502,-35.699,-36.001,
--36.372,-36.757,-37.102,-37.367,-37.535,-37.619,-37.655,-37.687,-37.758,-37.896,-38.109,-38.385,-38.701,-39.030,-39.352,-39.656,
--39.946,-40.230,-40.516,-40.810,-41.107,-41.398,-41.671,-41.914,-42.125,-42.309,-42.476,-42.639,-42.808,-42.985,-43.167,-43.345,
--43.507,-43.647,-43.764,-43.863,-43.955,-44.049,-44.155,-44.276,-44.411,-44.556,-44.704,-44.852,-44.999,-45.144,-45.289,-45.430,
--45.561,-45.677,-45.768,-45.834,-45.878,-45.911,-45.950,-46.011,-46.106,-46.236,-46.390,-46.551,-46.694,-46.796,-46.842,-46.828,
--46.759,-46.651,-46.522,-46.389,-46.266,-46.162,-46.082,-46.030,-46.011,-46.027,-46.082,-46.173,-46.287,-46.405,-46.500,-46.543,
--46.512,-46.396,-46.199,-45.944,-45.664,-45.398,-45.178,-45.025,-44.943,-44.922,-44.939,-44.972,-45.000,-45.013,-45.013,-45.010,
--45.018,-45.052,-45.118,-45.214,-45.333,-45.461,-45.586,-45.697,-45.788,-45.859,-45.912,-45.951,-45.979,-45.997,-46.007,-46.009,
--46.009,-46.011,-46.025,-46.061,-46.124,-46.219,-46.340,-46.480,-46.629,-46.773,-46.907,-47.028,-47.139,-47.248,-47.362,-47.490,
--47.632,-47.785,-47.943,-48.096,-48.238,-48.368,-48.491,-48.619,-48.762,-48.933,-49.137,-49.371,-49.622,-49.875,-50.109,-50.308,
--50.466,-50.582,-50.667,-50.736,-50.806,-50.892,-50.999,-51.131,-51.282,-51.446,-51.618,-51.796,-51.982,-52.181,-52.395,-52.625,
--52.867,-53.108,-53.331,-53.520,-53.658,-53.736,-53.754,-53.718,-53.642,-53.544,-53.444,-53.361,-53.308,-53.294,-53.323,-53.393,
--53.496,-53.620,-53.749,-53.865,-53.952,-53.995,-53.988,-53.926,-53.817,-53.667,-53.491,-53.299,-53.101,-52.906,-52.717,-52.537,
--52.372,-52.225,-52.102,-52.010,-51.954,-51.933,-51.945,-51.981,-52.032,-52.087,-52.138,-52.181,-52.215,-52.244,-52.271,-52.301,
--52.333,-52.367,-52.400,-52.426,-52.445,-52.454,-52.455,-52.451,-52.443,-52.433,-52.420,-52.402,-52.375,-52.339,-52.294,-52.242,
--52.189,-52.139,-52.096,-52.062,-52.036,-52.014,-51.993,-51.966,-51.931,-51.885,-51.829,-51.764,-51.694,-51.622,-51.554,-51.493,
--51.446,-51.413,-51.396,-51.392,-51.395,-51.396,-51.386,-51.357,-51.306,-51.233,-51.145,-51.051,-50.963,-50.890,-50.837,-50.803,
--50.783,-50.767,-50.747,-50.717,-50.676,-50.627,-50.576,-50.529,-50.490,-50.457,-50.425,-50.387,-50.336,-50.265,-50.175,-50.071,
--49.961,-49.856,-49.764,-49.689,-49.631,-49.585,-49.544,-49.501,-49.452,-49.395,-49.333,-49.268,-49.205,-49.146,-49.090,-49.034,
--48.974,-48.903,-48.818,-48.718,-48.606,-48.484,-48.360,-48.238,-48.122,-48.014,-47.914,-47.823,-47.740,-47.664,-47.595,-47.535,
--47.484,-47.439,-47.399,-47.359,-47.311,-47.251,-47.174,-47.077,-46.964,-46.836,-46.702,-46.565,-46.431,-46.300,-46.169,-46.035,
--45.890,-45.733,-45.561,-45.379,-45.195,-45.017,-44.855,-44.716,-44.600,-44.503,-44.417,-44.330,-44.233,-44.118,-43.984,-43.834,
--43.674,-43.514,-43.359,-43.215,-43.083,-42.962,-42.849,-42.745,-42.651,-42.572,-42.511,-42.475,-42.463,-42.472,-42.494,-42.519,
--42.532,-42.526,-42.494,-42.437,-42.361,-42.273,-42.185,-42.101,-42.024,-41.954,-41.884,-41.808,-41.723,-41.626,-41.521,-41.415,
--41.315,-41.229,-41.163,-41.116,-41.085,-41.062,-41.038,-41.003,-40.951,-40.877,-40.779,-40.661,-40.526,-40.378,-40.223,-40.064,
--39.903,-39.739,-39.572,-39.399,-39.219,-39.030,-38.833,-38.628,-38.417,-38.205,-37.994,-37.788,-37.589,-37.395,-37.206,-37.020,
--36.835,-36.650,-36.464,-36.281,-36.103,-35.935,-35.778,-35.633,-35.500,-35.374,-35.252,-35.129,-35.004,-34.877,-34.749,-34.623,
--34.502,-34.387,-34.277,-34.168,-34.058,-33.942,-33.819,-33.692,-33.565,-33.445,-33.338,-33.246,-33.170,-33.103,-33.036,-32.960,
--32.866,-32.752,-32.618,-32.473,-32.326,-32.188,-32.064,-31.959,-31.869,-31.789,-31.711,-31.629,-31.541,-31.447,-31.351,-31.256,
--31.164,-31.075,-30.985,-30.886,-30.775,-30.647,-30.505,-30.352,-30.198,-30.047,-29.903,-29.765,-29.629,-29.486,-29.330,-29.158,
--28.973,-28.781,-28.592,-28.414,-28.251,-28.102,-27.962,-27.819,-27.666,-27.498,-27.316,-27.126,-26.940,-26.767,-26.615,-26.485,
--26.371,-26.268,-26.165,-26.059,-25.947,-25.834,-25.724,-25.623,-25.532,-25.446,-25.359,-25.264,-25.155,-25.031,-24.898,-24.765,
--24.641,-24.533,-24.442,-24.362,-24.284,-24.199,-24.100,-23.990,-23.872,-23.755,-23.648,-23.552,-23.463,-23.371,-23.266,-23.140,
--22.995,-22.841,-22.691,-22.563,-22.464,-22.388,-22.320,-22.232,-22.099,-21.905,-21.651,-21.356,-21.053,-20.778,-20.555,-20.389,
--20.260,-20.130,-19.956,-19.705,-19.371,-18.980,-18.583,-18.244,-18.019,-17.933,-17.968,-18.066,-18.138,-18.094,-17.865,-17.427,
--16.811,-16.099,-15.398,-14.818,-14.440,-14.296,-14.363,-14.575,-14.837,-15.056,-15.163,-15.124,-14.948,-14.672,-14.349,-14.030,
--13.747,-13.513,-13.318,-13.140,-12.958,-12.756,-12.531,-12.289,-12.043,-11.807,-11.587,-11.384,-11.191,-10.997,-10.794,-10.579,
--10.355,-10.127,-9.905,-9.694,-9.492,-9.295,-9.093,-8.875,-8.632,-8.360,-8.060,-7.742,-7.414,-7.089,-6.775,-6.481,
--6.208,-5.954,-5.716,-5.485,-5.254,-5.014,-4.758,-4.481,-4.182,-3.862,-3.526,-3.179,-2.829,-2.482,-2.139,-1.803,
--1.469,-1.135,-.799,-.458,-.115,.228,.566,.893,1.207,1.508,1.797,2.080,2.364,2.657,2.967,3.299,
-3.658,4.048,4.470,4.925,5.410,5.924,6.464,7.025,7.599,8.177,8.749,9.300,9.818,10.295,10.724,11.107,
-11.452,11.771,12.082,12.397,12.720,13.049,13.368,13.656,13.892,14.062,14.167,14.226,14.275,14.361,14.525,14.799,
-15.187,15.667,16.192,16.699,17.125,17.420,17.559,17.546,17.409,17.194,16.950,16.720,16.530,16.390,16.295,16.234,
-16.192,16.160,16.135,16.118,16.113,16.125,16.158,16.217,16.308,16.438,16.615,16.842,17.107,17.387,17.639,17.809,
-17.843,17.702,17.372,16.877,16.276,15.651,15.092,14.671,14.426,14.352,14.404,14.507,14.582,14.563,14.419,14.154,
-13.806,13.431,13.083,12.802,12.602,12.472,12.385,12.313,12.237,12.155,12.084,12.048,12.075,12.178,12.355,12.585,
-12.835,13.071,13.265,13.402,13.481,13.515,13.517,13.501,13.474,13.434,13.380,13.306,13.216,13.119,13.029,12.964,
-12.935,12.947,12.993,13.060,13.130,13.186,13.219,13.229,13.222,13.208,13.201,13.207,13.229,13.262,13.299,13.331,
-13.350,13.350,13.329,13.286,13.223,13.140,13.041,12.933,12.823,12.721,12.637,12.575,12.536,12.512,12.490,12.452,
-12.385,12.278,12.134,11.963,11.784,11.619,11.485,11.390,11.333,11.302,11.279,11.245,11.189,11.105,10.998,10.878,
-10.757,10.646,10.549,10.463,10.384,10.303,10.214,10.116,10.015,9.918,9.833,9.768,9.725,9.699,9.684,9.669,
-9.646,9.610,9.560,9.501,9.440,9.384,9.341,9.313,9.301,9.302,9.311,9.319,9.322,9.316,9.297,9.266,
-9.226,9.178,9.128,9.078,9.030,8.984,8.938,8.890,8.839,8.783,8.723,8.661,8.597,8.533,8.469,8.403,
-8.332,8.254,8.169,8.077,7.985,7.898,7.826,7.775,7.746,7.738,7.747,7.765,7.787,7.808,7.830,7.853,
-7.881,7.916,7.956,7.997,8.031,8.051,8.051,8.034,8.004,7.973,7.951,7.947,7.965,8.003,8.051,8.101,
-8.142,8.169,8.182,8.187,8.193,8.207,8.236,8.282,8.344,8.417,8.499,8.589,8.686,8.794,8.916,9.053,
-9.199,9.349,9.493,9.622,9.729,9.813,9.879,9.934,9.988,10.051,10.129,10.221,10.327,10.440,10.556,10.668,
-10.774,10.874,10.968,11.059,11.151,11.249,11.358,11.486,11.641,11.829,12.056,12.323,12.629,12.965,13.322,13.156,
-13.504,13.844,14.161,14.447,14.696,14.905,15.074,15.204,15.297,15.354,15.379,15.379,15.363,15.342,15.326,15.324,
-15.340,15.370,15.409,15.446,15.473,15.484,15.484,15.481,15.490,15.524,15.593,15.700,15.836,15.988,16.135,16.262,
-16.357,16.421,16.463,16.500,16.551,16.633,16.754,16.915,17.107,17.317,17.531,17.739,17.937,18.126,18.309,18.489,
-18.664,18.827,18.966,19.068,19.122,19.125,19.081,19.004,18.910,18.818,18.738,18.674,18.618,18.556,18.475,18.361,
-18.212,18.036,17.852,17.682,17.550,17.471,17.451,17.483,17.554,17.643,17.732,17.805,17.858,17.891,17.908,17.919,
-17.929,17.942,17.956,17.971,17.982,17.990,17.995,17.997,17.999,18.001,18.002,18.000,17.996,17.990,17.986,17.992,
-18.013,18.053,18.112,18.183,18.259,18.327,18.382,18.420,18.449,18.479,18.522,18.590,18.686,18.808,18.946,19.089,
-19.230,19.366,19.501,19.641,19.790,19.944,20.085,20.188,20.224,20.174,20.037,19.837,19.626,19.471,19.439,19.582,
-19.919,20.426,21.041,21.678,22.247,22.676,22.930,23.016,22.979,22.888,22.816,22.816,22.911,23.093,23.322,23.548,
-23.726,23.829,23.852,23.817,23.759,23.714,23.711,23.762,23.861,23.991,24.131,24.262,24.377,24.477,24.571,24.669,
-24.778,24.900,25.030,25.162,25.293,25.422,25.558,25.711,25.891,26.099,26.331,26.570,26.797,26.989,27.134,27.229,
-27.285,27.322,27.367,27.439,27.555,27.718,27.922,28.157,28.411,28.677,28.948,29.224,29.500,29.765,30.004,30.194,
-30.317,30.361,30.332,30.251,30.161,30.106,30.130,30.259,30.493,30.808,31.157,31.492,31.770,31.975,32.120,32.243,
-32.400,32.640,32.992,33.452,33.979,34.504,34.943,35.225,35.304,35.173,34.862,34.430,33.949,33.481,33.069,32.724,
-32.436,32.174,31.907,31.613,31.284,30.931,30.571,30.226,29.908,29.616,29.337,29.053,28.744,28.402,28.030,27.646,
-27.275,26.943,26.667,26.453,26.294,26.172,26.071,25.974,25.877,25.785,25.710,25.667,25.667,25.710,25.789,25.885,
-25.973,26.030,26.036,25.978,25.853,25.668,25.436,25.175,24.907,24.652,24.430,24.258,24.143,24.086,24.076,24.094,
-24.112,24.102,24.039,23.905,23.698,23.427,23.115,22.787,22.472,22.187,21.942,21.734,21.554,21.387,21.222,21.049,
-20.870,20.689,20.514,20.350,20.199,20.057,19.916,19.769,19.608,19.434,19.250,19.062,18.879,18.704,18.535,18.364,
-18.179,17.968,17.722,17.439,17.125,16.792,16.454,16.126,15.819,15.540,15.290,15.074,14.896,14.762,14.682,14.662,
-14.706,14.806,14.944,15.095,15.227,15.315,15.338,15.291,15.182,15.030,14.856,14.678,14.505,14.333,14.147,13.930,
-13.667,13.355,13.002,12.632,12.274,11.960,11.711,11.534,11.420,11.343,11.270,11.168,11.007,10.773,10.465,10.098,
-9.693,9.277,8.877,8.515,8.204,7.949,7.745,7.580,7.435,7.285,7.108,6.881,6.590,6.232,5.812,5.346,
-4.854,4.360,3.879,3.421,2.986,2.570,2.166,1.771,1.390,1.039,.735,.497,.334,.240,.194,.159,
-.094,-.037,-.257,-.564,-.932,-1.319,-1.671,-1.942,-2.102,-2.146,-2.094,-1.982,-1.859,-1.768,-1.738,-1.780,
--1.888,-2.045,-2.234,-2.443,-2.674,-2.943,-3.273,-3.685,-4.190,-4.782,-5.433,-6.105,-6.749,-7.327,-7.814,-8.209,
--8.531,-8.817,-9.108,-9.437,-9.823,-10.260,-10.724,-11.177,-11.582,-11.909,-12.148,-12.310,-12.420,-12.516,-12.631,-12.791,
--13.004,-13.262,-13.548,-13.840,-14.120,-14.384,-14.638,-14.900,-15.191,-15.526,-15.911,-16.340,-16.794,-17.248,-17.678,-18.070,
--18.421,-18.741,-19.048,-19.361,-19.693,-20.044,-20.400,-20.734,-21.015,-21.215,-21.321,-21.336,-21.287,-21.213,-21.163,-21.183,
--21.305,-21.540,-21.875,-22.275,-22.697,-23.093,-23.428,-23.687,-23.879,-24.032,-24.191,-24.400,-24.696,-25.093,-25.583,-26.136,
--26.703,-27.236,-27.691,-28.043,-28.287,-28.443,-28.544,-28.630,-28.736,-28.886,-29.087,-29.331,-29.598,-29.862,-30.098,-30.290,
--30.431,-30.529,-30.598,-30.663,-30.749,-30.880,-31.075,-31.343,-31.682,-32.076,-32.501,-32.925,-33.315,-33.646,-33.903,-34.090,
--34.227,-34.343,-34.474,-34.645,-34.872,-35.146,-35.445,-35.735,-35.980,-36.156,-36.258,-36.302,-36.319,-36.347,-36.422,-36.561,
--36.763,-37.007,-37.258,-37.481,-37.652,-37.762,-37.825,-37.867,-37.923,-38.023,-38.184,-38.410,-38.686,-38.992,-39.305,-39.608,
--39.893,-40.164,-40.425,-40.685,-40.943,-41.194,-41.427,-41.627,-41.784,-41.894,-41.962,-42.002,-42.030,-42.065,-42.118,-42.196,
--42.299,-42.426,-42.572,-42.735,-42.915,-43.113,-43.329,-43.560,-43.801,-44.044,-44.279,-44.500,-44.703,-44.890,-45.062,-45.222,
--45.370,-45.503,-45.614,-45.698,-45.751,-45.778,-45.788,-45.797,-45.821,-45.872,-45.956,-46.065,-46.184,-46.294,-46.374,-46.409,
--46.393,-46.331,-46.232,-46.113,-45.989,-45.873,-45.776,-45.706,-45.674,-45.691,-45.770,-45.919,-46.140,-46.423,-46.743,-47.060,
--47.331,-47.512,-47.573,-47.503,-47.316,-47.046,-46.740,-46.451,-46.219,-46.067,-45.998,-45.993,-46.024,-46.059,-46.073,-46.054,
--46.005,-45.942,-45.888,-45.862,-45.878,-45.941,-46.041,-46.167,-46.300,-46.425,-46.533,-46.619,-46.683,-46.729,-46.762,-46.785,
--46.801,-46.811,-46.820,-46.832,-46.853,-46.888,-46.945,-47.026,-47.128,-47.246,-47.370,-47.492,-47.605,-47.706,-47.796,-47.881,
--47.970,-48.070,-48.186,-48.317,-48.461,-48.611,-48.763,-48.914,-49.066,-49.224,-49.396,-49.587,-49.800,-50.034,-50.278,-50.519,
--50.742,-50.934,-51.088,-51.201,-51.283,-51.344,-51.400,-51.467,-51.554,-51.668,-51.810,-51.975,-52.158,-52.352,-52.552,-52.755,
--52.958,-53.162,-53.365,-53.564,-53.753,-53.925,-54.070,-54.178,-54.242,-54.259,-54.232,-54.169,-54.087,-54.004,-53.942,-53.919,
--53.948,-54.032,-54.163,-54.325,-54.495,-54.647,-54.761,-54.820,-54.819,-54.760,-54.651,-54.507,-54.337,-54.153,-53.961,-53.762,
--53.559,-53.356,-53.159,-52.978,-52.823,-52.704,-52.627,-52.592,-52.596,-52.627,-52.674,-52.727,-52.777,-52.821,-52.858,-52.891,
--52.923,-52.955,-52.986,-53.014,-53.035,-53.046,-53.048,-53.042,-53.030,-53.018,-53.007,-52.998,-52.991,-52.980,-52.963,-52.935,
--52.894,-52.841,-52.779,-52.711,-52.643,-52.580,-52.524,-52.478,-52.442,-52.412,-52.386,-52.358,-52.325,-52.282,-52.228,-52.165,
--52.098,-52.035,-51.982,-51.946,-51.929,-51.928,-51.938,-51.948,-51.946,-51.925,-51.879,-51.812,-51.729,-51.642,-51.562,-51.497,
--51.450,-51.420,-51.400,-51.383,-51.363,-51.335,-51.302,-51.266,-51.233,-51.204,-51.181,-51.158,-51.127,-51.080,-51.010,-50.914,
--50.796,-50.662,-50.525,-50.395,-50.282,-50.190,-50.118,-50.062,-50.016,-49.972,-49.927,-49.877,-49.824,-49.769,-49.715,-49.661,
--49.606,-49.550,-49.489,-49.423,-49.352,-49.278,-49.204,-49.132,-49.063,-48.994,-48.923,-48.844,-48.752,-48.645,-48.526,-48.398,
--48.271,-48.153,-48.050,-47.966,-47.897,-47.837,-47.776,-47.702,-47.610,-47.498,-47.367,-47.226,-47.084,-46.949,-46.825,-46.711,
--46.601,-46.484,-46.354,-46.203,-46.032,-45.846,-45.656,-45.474,-45.310,-45.169,-45.050,-44.949,-44.855,-44.759,-44.654,-44.537,
--44.410,-44.277,-44.144,-44.014,-43.889,-43.763,-43.633,-43.495,-43.348,-43.197,-43.052,-42.926,-42.832,-42.778,-42.765,-42.787,
--42.830,-42.876,-42.908,-42.913,-42.885,-42.825,-42.743,-42.650,-42.557,-42.471,-42.396,-42.328,-42.259,-42.183,-42.095,-41.991,
--41.876,-41.757,-41.641,-41.537,-41.451,-41.385,-41.336,-41.298,-41.264,-41.225,-41.173,-41.103,-41.012,-40.900,-40.768,-40.618,
--40.453,-40.277,-40.093,-39.901,-39.704,-39.502,-39.297,-39.088,-38.876,-38.662,-38.448,-38.235,-38.025,-37.819,-37.618,-37.422,
--37.231,-37.046,-36.865,-36.691,-36.524,-36.365,-36.214,-36.072,-35.937,-35.806,-35.678,-35.549,-35.419,-35.288,-35.158,-35.030,
--34.908,-34.791,-34.678,-34.568,-34.457,-34.342,-34.223,-34.100,-33.977,-33.859,-33.750,-33.653,-33.567,-33.488,-33.409,-33.323,
--33.223,-33.109,-32.982,-32.849,-32.718,-32.599,-32.494,-32.405,-32.326,-32.251,-32.172,-32.083,-31.983,-31.874,-31.763,-31.656,
--31.558,-31.466,-31.378,-31.286,-31.180,-31.056,-30.914,-30.757,-30.595,-30.436,-30.287,-30.150,-30.020,-29.889,-29.746,-29.585,
--29.403,-29.205,-29.000,-28.800,-28.613,-28.444,-28.289,-28.141,-27.989,-27.826,-27.648,-27.461,-27.272,-27.096,-26.941,-26.812,
--26.708,-26.619,-26.535,-26.445,-26.342,-26.226,-26.105,-25.985,-25.874,-25.775,-25.686,-25.600,-25.508,-25.407,-25.294,-25.174,
--25.058,-24.952,-24.864,-24.791,-24.726,-24.656,-24.571,-24.463,-24.333,-24.190,-24.045,-23.911,-23.797,-23.701,-23.614,-23.526,
--23.423,-23.299,-23.159,-23.010,-22.867,-22.739,-22.628,-22.526,-22.413,-22.269,-22.079,-21.838,-21.559,-21.263,-20.979,-20.732,
--20.533,-20.374,-20.234,-20.087,-19.908,-19.689,-19.444,-19.202,-19.002,-18.874,-18.830,-18.848,-18.881,-18.861,-18.722,-18.417,
--17.939,-17.321,-16.635,-15.973,-15.427,-15.061,-14.900,-14.924,-15.072,-15.264,-15.419,-15.476,-15.407,-15.215,-14.934,-14.609,
--14.285,-13.996,-13.753,-13.554,-13.382,-13.216,-13.042,-12.851,-12.647,-12.435,-12.224,-12.020,-11.824,-11.629,-11.430,-11.221,
--10.998,-10.763,-10.521,-10.277,-10.037,-9.802,-9.570,-9.336,-9.096,-8.844,-8.580,-8.303,-8.019,-7.732,-7.447,-7.169,
--6.899,-6.636,-6.381,-6.130,-5.879,-5.625,-5.363,-5.091,-4.807,-4.512,-4.208,-3.901,-3.596,-3.298,-3.009,-2.726,
--2.443,-2.150,-1.835,-1.491,-1.115,-.712,-.295,.121,.517,.879,1.202,1.488,1.751,2.011,2.292,2.617,
-3.002,3.452,3.964,4.528,5.125,5.738,6.350,6.948,7.525,8.074,8.593,9.079,9.527,9.933,10.295,10.613,
-10.895,11.153,11.404,11.662,11.939,12.237,12.547,12.850,13.125,13.352,13.522,13.641,13.732,13.832,13.978,14.203,
-14.520,14.921,15.373,15.827,16.227,16.527,16.698,16.735,16.658,16.500,16.302,16.099,15.914,15.756,15.619,15.495,
-15.375,15.260,15.159,15.085,15.053,15.075,15.151,15.275,15.436,15.622,15.827,16.046,16.280,16.523,16.762,16.970,
-17.108,17.136,17.020,16.746,16.330,15.815,15.268,14.760,14.352,14.079,13.939,13.900,13.905,13.891,13.809,13.636,
-13.379,13.070,12.754,12.473,12.255,12.104,12.007,11.935,11.863,11.775,11.672,11.574,11.507,11.498,11.563,11.701,
-11.894,12.115,12.331,12.518,12.661,12.762,12.828,12.872,12.901,12.919,12.922,12.901,12.851,12.773,12.676,12.577,
-12.493,12.440,12.425,12.444,12.485,12.529,12.558,12.563,12.540,12.496,12.445,12.402,12.378,12.379,12.406,12.449,
-12.499,12.544,12.573,12.580,12.560,12.509,12.431,12.327,12.206,12.079,11.957,11.854,11.782,11.743,11.735,11.748,
-11.763,11.762,11.730,11.656,11.544,11.401,11.245,11.093,10.959,10.851,10.768,10.703,10.646,10.586,10.516,10.435,
-10.346,10.254,10.164,10.079,9.998,9.918,9.834,9.744,9.648,9.551,9.459,9.379,9.317,9.274,9.247,9.231,
-9.217,9.199,9.172,9.134,9.088,9.038,8.991,8.950,8.918,8.896,8.881,8.872,8.864,8.856,8.847,8.834,
-8.816,8.794,8.765,8.728,8.682,8.625,8.559,8.485,8.409,8.334,8.265,8.204,8.154,8.111,8.071,8.028,
-7.974,7.906,7.822,7.726,7.625,7.531,7.452,7.398,7.372,7.373,7.394,7.427,7.463,7.495,7.523,7.548,
-7.573,7.605,7.646,7.695,7.747,7.794,7.829,7.849,7.851,7.843,7.830,7.823,7.829,7.849,7.883,7.923,
-7.962,7.993,8.014,8.025,8.031,8.040,8.059,8.092,8.140,8.203,8.277,8.360,8.452,8.554,8.665,8.789,
-8.922,9.060,9.197,9.324,9.435,9.527,9.603,9.667,9.728,9.795,9.875,9.969,10.077,10.195,10.315,10.434,
-10.548,10.655,10.758,10.857,10.955,11.056,11.161,11.275,11.403,11.553,11.731,11.945,12.199,12.490,12.813,13.156,
-12.894,13.193,13.478,13.737,13.963,14.153,14.309,14.434,14.534,14.611,14.670,14.711,14.739,14.758,14.775,14.797,
-14.829,14.873,14.930,14.992,15.054,15.106,15.146,15.175,15.200,15.231,15.278,15.349,15.444,15.555,15.672,15.778,
-15.863,15.922,15.960,15.991,16.031,16.101,16.212,16.369,16.567,16.793,17.029,17.262,17.481,17.686,17.878,18.064,
-18.247,18.424,18.582,18.706,18.777,18.781,18.714,18.584,18.410,18.221,18.043,17.896,17.792,17.724,17.677,17.629,
-17.562,17.463,17.334,17.188,17.049,16.940,16.882,16.885,16.946,17.052,17.180,17.307,17.413,17.487,17.527,17.538,
-17.533,17.523,17.519,17.526,17.542,17.564,17.583,17.593,17.588,17.565,17.525,17.474,17.419,17.369,17.336,17.329,
-17.354,17.412,17.499,17.606,17.720,17.828,17.918,17.986,18.034,18.070,18.103,18.148,18.210,18.295,18.402,18.526,
-18.666,18.820,18.989,19.175,19.375,19.576,19.759,19.894,19.949,19.903,19.752,19.519,19.256,19.033,18.928,19.005,
-19.298,19.799,20.454,21.177,21.867,22.432,22.811,22.989,22.993,22.890,22.760,22.674,22.679,22.785,22.967,23.178,
-23.363,23.481,23.512,23.468,23.380,23.289,23.235,23.241,23.309,23.426,23.566,23.706,23.829,23.932,24.024,24.119,
-24.232,24.367,24.521,24.684,24.843,24.990,25.125,25.258,25.408,25.589,25.811,26.070,26.348,26.619,26.855,27.033,
-27.149,27.212,27.246,27.284,27.357,27.487,27.681,27.933,28.227,28.542,28.859,29.161,29.440,29.688,29.900,30.067,
-30.181,30.238,30.241,30.210,30.178,30.189,30.290,30.519,30.889,31.387,31.970,32.575,33.133,33.590,33.920,34.131,
-34.267,34.393,34.574,34.856,35.252,35.731,36.231,36.665,36.953,37.032,36.880,36.514,35.986,35.371,34.743,34.162,
-33.664,33.254,32.915,32.618,32.331,32.034,31.716,31.380,31.037,30.697,30.366,30.043,29.722,29.396,29.059,28.712,
-28.360,28.016,27.690,27.393,27.127,26.888,26.669,26.460,26.255,26.050,25.849,25.659,25.489,25.348,25.239,25.165,
-25.122,25.104,25.102,25.104,25.098,25.071,25.009,24.904,24.751,24.555,24.328,24.094,23.879,23.711,23.607,23.573,
-23.598,23.655,23.708,23.717,23.653,23.501,23.265,22.967,22.641,22.325,22.048,21.829,21.669,21.556,21.466,21.375,
-21.261,21.113,20.928,20.713,20.478,20.236,19.997,19.765,19.544,19.335,19.137,18.949,18.768,18.589,18.404,18.199,
-17.962,17.683,17.357,16.991,16.601,16.214,15.858,15.558,15.331,15.181,15.099,15.067,15.066,15.078,15.094,15.117,
-15.154,15.216,15.308,15.427,15.559,15.680,15.763,15.789,15.744,15.631,15.464,15.264,15.052,14.842,14.638,14.430,
-14.204,13.945,13.646,13.310,12.956,12.611,12.304,12.059,11.886,11.777,11.708,11.642,11.541,11.373,11.118,10.774,
-10.358,9.897,9.427,8.980,8.581,8.243,7.966,7.738,7.539,7.342,7.125,6.869,6.561,6.201,5.794,5.353,
-4.893,4.428,3.968,3.517,3.073,2.632,2.192,1.754,1.329,.934,.593,.324,.141,.038,-.007,-.033,
--.089,-.220,-.458,-.810,-1.257,-1.748,-2.219,-2.603,-2.843,-2.912,-2.813,-2.580,-2.271,-1.951,-1.682,-1.506,
--1.440,-1.480,-1.605,-1.787,-2.006,-2.251,-2.527,-2.852,-3.244,-3.718,-4.276,-4.903,-5.573,-6.252,-6.905,-7.513,
--8.066,-8.572,-9.052,-9.528,-10.020,-10.535,-11.067,-11.601,-12.111,-12.575,-12.977,-13.310,-13.583,-13.808,-14.005,-14.187,
--14.361,-14.528,-14.679,-14.808,-14.910,-14.988,-15.058,-15.137,-15.249,-15.411,-15.633,-15.913,-16.236,-16.583,-16.933,-17.271,
--17.592,-17.903,-18.221,-18.564,-18.949,-19.382,-19.855,-20.346,-20.825,-21.259,-21.619,-21.892,-22.080,-22.201,-22.289,-22.381,
--22.511,-22.704,-22.963,-23.276,-23.616,-23.946,-24.234,-24.455,-24.605,-24.694,-24.752,-24.816,-24.923,-25.100,-25.357,-25.685,
--26.059,-26.444,-26.805,-27.115,-27.363,-27.554,-27.708,-27.850,-28.009,-28.203,-28.439,-28.710,-29.001,-29.290,-29.559,-29.793,
--29.991,-30.157,-30.305,-30.451,-30.611,-30.800,-31.030,-31.309,-31.640,-32.022,-32.452,-32.918,-33.404,-33.888,-34.347,-34.758,
--35.108,-35.389,-35.605,-35.771,-35.904,-36.023,-36.144,-36.272,-36.408,-36.545,-36.675,-36.795,-36.905,-37.012,-37.126,-37.257,
--37.409,-37.580,-37.761,-37.940,-38.104,-38.245,-38.363,-38.465,-38.565,-38.677,-38.813,-38.977,-39.170,-39.383,-39.609,-39.841,
--40.077,-40.317,-40.565,-40.823,-41.088,-41.351,-41.596,-41.807,-41.967,-42.068,-42.106,-42.091,-42.038,-41.965,-41.890,-41.830,
--41.796,-41.794,-41.830,-41.910,-42.036,-42.213,-42.440,-42.712,-43.019,-43.343,-43.667,-43.971,-44.243,-44.475,-44.668,-44.828,
--44.962,-45.076,-45.173,-45.251,-45.307,-45.341,-45.354,-45.355,-45.358,-45.375,-45.417,-45.489,-45.584,-45.687,-45.780,-45.844,
--45.865,-45.838,-45.769,-45.670,-45.557,-45.446,-45.350,-45.280,-45.244,-45.252,-45.316,-45.453,-45.677,-45.995,-46.403,-46.879,
--47.382,-47.859,-48.254,-48.518,-48.622,-48.563,-48.368,-48.085,-47.772,-47.488,-47.274,-47.150,-47.110,-47.128,-47.168,-47.194,
--47.182,-47.124,-47.028,-46.916,-46.817,-46.752,-46.737,-46.774,-46.856,-46.965,-47.086,-47.203,-47.308,-47.399,-47.474,-47.537,
--47.588,-47.624,-47.641,-47.637,-47.612,-47.573,-47.531,-47.502,-47.503,-47.545,-47.633,-47.764,-47.924,-48.098,-48.267,-48.416,
--48.538,-48.635,-48.716,-48.792,-48.875,-48.977,-49.099,-49.240,-49.396,-49.558,-49.721,-49.885,-50.052,-50.226,-50.412,-50.614,
--50.830,-51.052,-51.272,-51.475,-51.653,-51.800,-51.915,-52.004,-52.080,-52.153,-52.237,-52.338,-52.460,-52.600,-52.753,-52.912,
--53.071,-53.229,-53.385,-53.544,-53.711,-53.886,-54.069,-54.252,-54.424,-54.571,-54.680,-54.743,-54.759,-54.736,-54.691,-54.645,
--54.618,-54.627,-54.680,-54.774,-54.900,-55.037,-55.167,-55.273,-55.345,-55.379,-55.379,-55.352,-55.306,-55.246,-55.171,-55.076,
--54.955,-54.804,-54.620,-54.412,-54.190,-53.972,-53.775,-53.615,-53.500,-53.432,-53.405,-53.409,-53.432,-53.465,-53.500,-53.534,
--53.565,-53.595,-53.624,-53.651,-53.675,-53.692,-53.700,-53.699,-53.688,-53.670,-53.648,-53.627,-53.607,-53.588,-53.570,-53.549,
--53.521,-53.483,-53.433,-53.371,-53.298,-53.219,-53.139,-53.063,-52.996,-52.944,-52.906,-52.882,-52.867,-52.854,-52.835,-52.803,
--52.756,-52.693,-52.620,-52.546,-52.481,-52.434,-52.411,-52.410,-52.426,-52.446,-52.460,-52.455,-52.427,-52.375,-52.303,-52.222,
--52.141,-52.068,-52.008,-51.962,-51.927,-51.899,-51.873,-51.847,-51.821,-51.797,-51.776,-51.757,-51.740,-51.718,-51.684,-51.632,
--51.559,-51.463,-51.350,-51.227,-51.103,-50.987,-50.884,-50.798,-50.726,-50.664,-50.607,-50.548,-50.486,-50.418,-50.345,-50.269,
--50.192,-50.116,-50.042,-49.971,-49.905,-49.846,-49.795,-49.753,-49.721,-49.695,-49.671,-49.640,-49.595,-49.529,-49.439,-49.326,
--49.197,-49.059,-48.926,-48.804,-48.699,-48.610,-48.531,-48.452,-48.362,-48.254,-48.127,-47.983,-47.832,-47.682,-47.545,-47.424,
--47.318,-47.220,-47.119,-47.004,-46.866,-46.702,-46.517,-46.319,-46.122,-45.936,-45.769,-45.625,-45.499,-45.385,-45.275,-45.164,
--45.049,-44.931,-44.813,-44.699,-44.590,-44.482,-44.370,-44.247,-44.107,-43.950,-43.779,-43.608,-43.453,-43.330,-43.251,-43.220,
--43.234,-43.278,-43.333,-43.379,-43.397,-43.378,-43.320,-43.230,-43.120,-43.004,-42.895,-42.800,-42.720,-42.651,-42.587,-42.519,
--42.442,-42.353,-42.254,-42.148,-42.042,-41.940,-41.846,-41.762,-41.686,-41.615,-41.545,-41.471,-41.388,-41.293,-41.182,-41.055,
--40.911,-40.750,-40.574,-40.384,-40.184,-39.975,-39.760,-39.543,-39.323,-39.103,-38.884,-38.666,-38.449,-38.234,-38.022,-37.813,
--37.610,-37.412,-37.222,-37.042,-36.872,-36.715,-36.570,-36.436,-36.310,-36.189,-36.070,-35.948,-35.822,-35.691,-35.556,-35.420,
--35.285,-35.155,-35.033,-34.917,-34.807,-34.702,-34.598,-34.495,-34.392,-34.291,-34.194,-34.100,-34.009,-33.918,-33.824,-33.723,
--33.613,-33.493,-33.368,-33.244,-33.128,-33.025,-32.939,-32.867,-32.802,-32.736,-32.659,-32.565,-32.453,-32.327,-32.195,-32.068,
--31.953,-31.855,-31.769,-31.688,-31.602,-31.500,-31.377,-31.232,-31.072,-30.905,-30.741,-30.586,-30.441,-30.301,-30.158,-30.004,
--29.832,-29.644,-29.444,-29.243,-29.049,-28.870,-28.705,-28.551,-28.399,-28.240,-28.068,-27.885,-27.698,-27.518,-27.357,-27.222,
--27.113,-27.025,-26.945,-26.861,-26.762,-26.645,-26.515,-26.381,-26.254,-26.144,-26.052,-25.974,-25.900,-25.819,-25.723,-25.611,
--25.488,-25.365,-25.254,-25.162,-25.090,-25.030,-24.969,-24.894,-24.794,-24.668,-24.523,-24.371,-24.228,-24.105,-24.003,-23.918,
--23.836,-23.744,-23.630,-23.493,-23.336,-23.172,-23.013,-22.864,-22.726,-22.588,-22.433,-22.247,-22.021,-21.757,-21.470,-21.182,
--20.914,-20.684,-20.496,-20.345,-20.214,-20.087,-19.952,-19.808,-19.666,-19.542,-19.451,-19.399,-19.372,-19.342,-19.267,-19.107,
--18.833,-18.440,-17.950,-17.410,-16.879,-16.418,-16.070,-15.854,-15.758,-15.745,-15.763,-15.762,-15.702,-15.565,-15.353,-15.087,
--14.798,-14.515,-14.257,-14.032,-13.839,-13.664,-13.496,-13.321,-13.136,-12.940,-12.738,-12.534,-12.333,-12.133,-11.934,-11.730,
--11.519,-11.298,-11.067,-10.827,-10.579,-10.325,-10.065,-9.800,-9.530,-9.256,-8.980,-8.707,-8.441,-8.186,-7.942,-7.707,
--7.479,-7.253,-7.023,-6.785,-6.538,-6.279,-6.009,-5.727,-5.433,-5.128,-4.814,-4.494,-4.173,-3.860,-3.561,-3.279,
--3.014,-2.760,-2.504,-2.234,-1.937,-1.604,-1.236,-.843,-.438,-.040,.336,.683,1.005,1.318,1.644,2.010,
-2.439,2.943,3.521,4.161,4.838,5.524,6.192,6.819,7.394,7.915,8.385,8.812,9.203,9.561,9.887,10.179,
-10.436,10.663,10.867,11.060,11.255,11.463,11.686,11.919,12.152,12.369,12.562,12.728,12.880,13.037,13.226,13.471,
-13.783,14.156,14.563,14.964,15.313,15.567,15.704,15.722,15.642,15.502,15.343,15.201,15.094,15.022,14.967,14.905,
-14.811,14.679,14.514,14.344,14.202,14.122,14.128,14.227,14.407,14.646,14.914,15.186,15.444,15.679,15.887,16.066,
-16.203,16.279,16.270,16.153,15.913,15.557,15.111,14.620,14.136,13.708,13.371,13.133,12.979,12.876,12.784,12.668,
-12.512,12.315,12.096,11.881,11.696,11.555,11.458,11.392,11.336,11.274,11.198,11.113,11.037,10.992,10.998,11.064,
-11.185,11.344,11.517,11.678,11.809,11.905,11.971,12.019,12.062,12.110,12.163,12.214,12.251,12.264,12.248,12.206,
-12.148,12.088,12.040,12.011,12.000,11.998,11.993,11.971,11.924,11.853,11.764,11.669,11.585,11.522,11.488,11.483,
-11.502,11.536,11.575,11.612,11.637,11.646,11.635,11.602,11.545,11.466,11.371,11.268,11.168,11.084,11.024,10.993,
-10.988,11.000,11.014,11.015,10.991,10.936,10.850,10.739,10.616,10.492,10.377,10.276,10.190,10.115,10.045,9.976,
-9.904,9.830,9.755,9.680,9.607,9.536,9.466,9.394,9.320,9.242,9.163,9.086,9.015,8.954,8.903,8.863,
-8.829,8.799,8.769,8.736,8.701,8.663,8.625,8.587,8.551,8.518,8.487,8.458,8.431,8.408,8.389,8.375,
-8.366,8.361,8.354,8.342,8.317,8.277,8.219,8.145,8.060,7.971,7.886,7.812,7.753,7.709,7.675,7.643,
-7.607,7.558,7.494,7.416,7.331,7.248,7.178,7.130,7.109,7.116,7.145,7.188,7.236,7.281,7.318,7.348,
-7.373,7.399,7.431,7.471,7.517,7.565,7.610,7.647,7.672,7.685,7.692,7.698,7.709,7.728,7.756,7.790,
-7.825,7.857,7.882,7.900,7.913,7.928,7.949,7.980,8.023,8.077,8.141,8.211,8.286,8.366,8.454,8.552,
-8.660,8.777,8.899,9.021,9.137,9.242,9.335,9.418,9.497,9.577,9.665,9.764,9.873,9.990,10.111,10.232,
-10.348,10.460,10.568,10.674,10.780,10.888,10.996,11.107,11.222,11.345,11.483,11.643,11.833,12.057,12.314,12.596,
-12.894,12.334,12.553,12.762,12.953,13.128,13.290,13.444,13.597,13.749,13.901,14.044,14.171,14.275,14.351,14.401,
-14.432,14.452,14.473,14.504,14.548,14.608,14.678,14.754,14.833,14.911,14.988,15.067,15.146,15.227,15.304,15.373,
-15.429,15.472,15.505,15.537,15.584,15.658,15.771,15.927,16.121,16.340,16.566,16.782,16.974,17.139,17.279,17.407,
-17.532,17.662,17.796,17.924,18.025,18.078,18.064,17.976,17.818,17.610,17.379,17.156,16.969,16.832,16.746,16.701,
-16.677,16.654,16.617,16.563,16.496,16.434,16.395,16.395,16.443,16.536,16.662,16.800,16.928,17.030,17.096,17.123,
-17.122,17.104,17.085,17.074,17.078,17.094,17.115,17.131,17.130,17.104,17.053,16.978,16.891,16.806,16.737,16.698,
-16.700,16.746,16.832,16.948,17.080,17.212,17.331,17.430,17.506,17.564,17.612,17.660,17.717,17.789,17.879,17.988,
-18.118,18.271,18.451,18.662,18.901,19.158,19.408,19.618,19.751,19.773,19.667,19.444,19.144,18.835,18.601,18.525,
-18.666,19.046,19.641,20.380,21.165,21.890,22.463,22.833,22.991,22.977,22.861,22.721,22.626,22.614,22.691,22.827,
-22.977,23.094,23.147,23.127,23.053,22.961,22.890,22.870,22.915,23.018,23.153,23.292,23.411,23.500,23.564,23.623,
-23.701,23.818,23.983,24.192,24.428,24.672,24.905,25.121,25.323,25.525,25.741,25.979,26.237,26.501,26.746,26.947,
-27.087,27.163,27.189,27.195,27.218,27.293,27.446,27.686,28.003,28.376,28.778,29.179,29.558,29.897,30.188,30.424,
-30.601,30.715,30.768,30.770,30.745,30.729,30.770,30.917,31.211,31.669,32.283,33.010,33.787,34.541,35.205,35.736,
-36.124,36.396,36.599,36.792,37.026,37.323,37.672,38.031,38.333,38.508,38.500,38.280,37.857,37.270,36.582,35.866,
-35.183,34.577,34.066,33.643,33.284,32.961,32.646,32.321,31.980,31.629,31.277,30.937,30.616,30.317,30.037,29.768,
-29.503,29.232,28.950,28.655,28.347,28.030,27.708,27.386,27.071,26.766,26.474,26.196,25.929,25.671,25.422,25.183,
-24.961,24.764,24.605,24.494,24.434,24.419,24.432,24.444,24.426,24.351,24.204,23.987,23.723,23.449,23.209,23.045,
-22.980,23.017,23.133,23.288,23.431,23.514,23.505,23.396,23.202,22.958,22.707,22.492,22.338,22.254,22.228,22.230,
-22.223,22.174,22.055,21.856,21.578,21.237,20.852,20.449,20.049,19.669,19.321,19.009,18.731,18.482,18.247,18.011,
-17.757,17.470,17.143,16.779,16.393,16.012,15.670,15.398,15.221,15.146,15.167,15.257,15.381,15.505,15.600,15.652,
-15.665,15.655,15.645,15.654,15.693,15.757,15.828,15.878,15.881,15.819,15.688,15.498,15.273,15.038,14.817,14.622,
-14.451,14.291,14.123,13.929,13.700,13.439,13.162,12.889,12.643,12.437,12.271,12.131,11.991,11.821,11.593,11.291,
-10.913,10.472,9.997,9.517,9.064,8.660,8.313,8.020,7.765,7.527,7.281,7.010,6.700,6.350,5.964,5.553,
-5.129,4.702,4.279,3.862,3.449,3.034,2.615,2.194,1.778,1.381,1.021,.715,.471,.290,.155,.038,
--.100,-.295,-.578,-.958,-1.424,-1.937,-2.445,-2.882,-3.190,-3.327,-3.278,-3.057,-2.705,-2.281,-1.851,-1.474,
--1.194,-1.034,-.997,-1.071,-1.235,-1.471,-1.763,-2.105,-2.496,-2.939,-3.435,-3.981,-4.568,-5.182,-5.806,-6.429,
--7.041,-7.641,-8.231,-8.816,-9.400,-9.983,-10.560,-11.122,-11.659,-12.162,-12.628,-13.060,-13.462,-13.841,-14.204,-14.549,
--14.869,-15.152,-15.385,-15.557,-15.664,-15.715,-15.726,-15.721,-15.728,-15.770,-15.861,-16.005,-16.196,-16.419,-16.661,-16.907,
--17.153,-17.405,-17.672,-17.971,-18.316,-18.714,-19.164,-19.652,-20.159,-20.657,-21.123,-21.538,-21.892,-22.189,-22.442,-22.670,
--22.897,-23.141,-23.414,-23.720,-24.048,-24.383,-24.703,-24.987,-25.221,-25.398,-25.523,-25.609,-25.675,-25.741,-25.823,-25.930,
--26.063,-26.217,-26.381,-26.549,-26.718,-26.890,-27.075,-27.284,-27.529,-27.814,-28.133,-28.475,-28.819,-29.146,-29.439,-29.689,
--29.895,-30.067,-30.220,-30.368,-30.525,-30.700,-30.898,-31.123,-31.381,-31.680,-32.031,-32.448,-32.939,-33.502,-34.123,-34.774,
--35.414,-35.997,-36.481,-36.833,-37.042,-37.113,-37.073,-36.961,-36.821,-36.695,-36.616,-36.602,-36.658,-36.779,-36.951,-37.156,
--37.378,-37.604,-37.825,-38.038,-38.241,-38.436,-38.623,-38.804,-38.975,-39.135,-39.279,-39.403,-39.506,-39.590,-39.665,-39.741,
--39.836,-39.963,-40.135,-40.355,-40.617,-40.907,-41.202,-41.477,-41.711,-41.888,-42.002,-42.057,-42.065,-42.038,-41.991,-41.936,
--41.879,-41.828,-41.788,-41.768,-41.780,-41.839,-41.958,-42.143,-42.394,-42.698,-43.035,-43.378,-43.703,-43.988,-44.224,-44.411,
--44.555,-44.670,-44.767,-44.852,-44.930,-44.998,-45.055,-45.102,-45.144,-45.192,-45.256,-45.343,-45.456,-45.584,-45.713,-45.822,
--45.890,-45.904,-45.862,-45.770,-45.647,-45.514,-45.389,-45.290,-45.226,-45.202,-45.224,-45.299,-45.438,-45.657,-45.967,-46.369,
--46.852,-47.384,-47.916,-48.392,-48.757,-48.968,-49.010,-48.893,-48.658,-48.361,-48.066,-47.828,-47.681,-47.635,-47.675,-47.767,
--47.873,-47.958,-47.998,-47.989,-47.940,-47.871,-47.804,-47.759,-47.744,-47.763,-47.808,-47.874,-47.952,-48.040,-48.136,-48.241,
--48.349,-48.452,-48.535,-48.582,-48.578,-48.515,-48.398,-48.246,-48.090,-47.964,-47.902,-47.927,-48.046,-48.248,-48.506,-48.786,
--49.052,-49.276,-49.443,-49.556,-49.628,-49.681,-49.738,-49.814,-49.919,-50.049,-50.195,-50.345,-50.489,-50.622,-50.749,-50.878,
--51.023,-51.193,-51.393,-51.620,-51.861,-52.101,-52.324,-52.515,-52.668,-52.785,-52.873,-52.944,-53.012,-53.088,-53.176,-53.279,
--53.392,-53.511,-53.633,-53.756,-53.882,-54.017,-54.163,-54.322,-54.493,-54.668,-54.836,-54.985,-55.106,-55.194,-55.250,-55.282,
--55.302,-55.322,-55.353,-55.398,-55.459,-55.527,-55.596,-55.658,-55.707,-55.746,-55.779,-55.813,-55.855,-55.906,-55.962,-56.013,
--56.041,-56.032,-55.972,-55.856,-55.687,-55.476,-55.242,-55.006,-54.788,-54.601,-54.453,-54.345,-54.274,-54.231,-54.211,-54.206,
--54.213,-54.229,-54.253,-54.285,-54.320,-54.356,-54.388,-54.412,-54.426,-54.425,-54.412,-54.385,-54.347,-54.300,-54.248,-54.193,
--54.138,-54.085,-54.033,-53.985,-53.937,-53.889,-53.838,-53.783,-53.725,-53.666,-53.609,-53.558,-53.517,-53.486,-53.463,-53.441,
--53.415,-53.376,-53.321,-53.250,-53.167,-53.081,-53.005,-52.948,-52.916,-52.910,-52.925,-52.949,-52.970,-52.976,-52.959,-52.917,
--52.852,-52.772,-52.686,-52.602,-52.526,-52.461,-52.407,-52.361,-52.322,-52.288,-52.260,-52.240,-52.226,-52.220,-52.217,-52.212,
--52.198,-52.169,-52.120,-52.051,-51.963,-51.862,-51.754,-51.646,-51.542,-51.446,-51.356,-51.269,-51.183,-51.096,-51.006,-50.914,
--50.820,-50.728,-50.639,-50.556,-50.479,-50.408,-50.344,-50.288,-50.239,-50.198,-50.164,-50.134,-50.107,-50.077,-50.040,-49.994,
--49.936,-49.868,-49.793,-49.713,-49.633,-49.552,-49.470,-49.382,-49.282,-49.166,-49.029,-48.875,-48.707,-48.536,-48.369,-48.216,
--48.080,-47.960,-47.849,-47.739,-47.617,-47.477,-47.315,-47.132,-46.937,-46.739,-46.548,-46.370,-46.210,-46.065,-45.932,-45.805,
--45.680,-45.556,-45.432,-45.313,-45.200,-45.093,-44.990,-44.886,-44.774,-44.650,-44.511,-44.362,-44.213,-44.076,-43.966,-43.892,
--43.860,-43.865,-43.897,-43.939,-43.972,-43.980,-43.952,-43.884,-43.782,-43.655,-43.516,-43.380,-43.257,-43.151,-43.065,-42.995,
--42.935,-42.878,-42.819,-42.753,-42.678,-42.592,-42.495,-42.389,-42.275,-42.155,-42.030,-41.901,-41.770,-41.638,-41.503,-41.366,
--41.225,-41.077,-40.920,-40.753,-40.575,-40.385,-40.184,-39.974,-39.757,-39.535,-39.311,-39.086,-38.861,-38.637,-38.416,-38.199,
--37.985,-37.777,-37.576,-37.383,-37.201,-37.031,-36.873,-36.730,-36.599,-36.478,-36.365,-36.254,-36.143,-36.029,-35.909,-35.786,
--35.659,-35.534,-35.412,-35.296,-35.187,-35.086,-34.991,-34.900,-34.813,-34.728,-34.644,-34.560,-34.476,-34.389,-34.298,-34.200,
--34.093,-33.980,-33.861,-33.742,-33.629,-33.526,-33.436,-33.357,-33.286,-33.215,-33.135,-33.039,-32.926,-32.796,-32.658,-32.520,
--32.391,-32.279,-32.183,-32.098,-32.017,-31.927,-31.820,-31.692,-31.543,-31.377,-31.205,-31.032,-30.864,-30.702,-30.541,-30.376,
--30.203,-30.020,-29.829,-29.636,-29.450,-29.276,-29.116,-28.969,-28.827,-28.682,-28.528,-28.363,-28.191,-28.021,-27.863,-27.725,
--27.612,-27.519,-27.436,-27.348,-27.244,-27.118,-26.971,-26.814,-26.662,-26.528,-26.422,-26.343,-26.285,-26.231,-26.167,-26.081,
--25.970,-25.839,-25.701,-25.572,-25.464,-25.380,-25.317,-25.263,-25.203,-25.123,-25.018,-24.890,-24.749,-24.607,-24.476,-24.360,
--24.259,-24.162,-24.057,-23.935,-23.790,-23.626,-23.453,-23.281,-23.118,-22.966,-22.820,-22.665,-22.488,-22.276,-22.028,-21.752,
--21.464,-21.184,-20.932,-20.718,-20.545,-20.404,-20.281,-20.162,-20.039,-19.910,-19.782,-19.665,-19.566,-19.484,-19.409,-19.322,
--19.199,-19.019,-18.770,-18.453,-18.086,-17.695,-17.311,-16.962,-16.666,-16.425,-16.232,-16.069,-15.916,-15.754,-15.574,-15.374,
--15.159,-14.937,-14.718,-14.507,-14.305,-14.110,-13.917,-13.723,-13.523,-13.318,-13.107,-12.894,-12.679,-12.462,-12.243,-12.023,
--11.801,-11.577,-11.355,-11.133,-10.913,-10.693,-10.468,-10.234,-9.989,-9.731,-9.462,-9.190,-8.920,-8.659,-8.413,-8.181,
--7.962,-7.748,-7.533,-7.310,-7.075,-6.826,-6.563,-6.287,-5.999,-5.696,-5.376,-5.038,-4.683,-4.316,-3.946,-3.586,
--3.247,-2.941,-2.672,-2.435,-2.222,-2.016,-1.803,-1.568,-1.304,-1.007,-.679,-.326,.052,.456,.893,1.373,
-1.906,2.497,3.142,3.828,4.534,5.232,5.895,6.504,7.046,7.522,7.941,8.317,8.665,8.994,9.310,9.607,
-9.881,10.124,10.334,10.512,10.667,10.811,10.952,11.096,11.246,11.397,11.545,11.689,11.838,12.005,12.209,12.471,
-12.799,13.190,13.620,14.049,14.430,14.715,14.874,14.897,14.802,14.627,14.425,14.244,14.120,14.064,14.061,14.080,
-14.080,14.028,13.909,13.735,13.536,13.358,13.245,13.234,13.337,13.544,13.828,14.149,14.469,14.756,14.992,15.171,
-15.289,15.346,15.339,15.256,15.087,14.824,14.472,14.047,13.579,13.108,12.673,12.304,12.015,11.805,11.655,11.542,
-11.441,11.336,11.223,11.107,10.999,10.910,10.845,10.801,10.768,10.732,10.684,10.623,10.555,10.496,10.463,10.468,
-10.518,10.604,10.713,10.825,10.922,10.993,11.040,11.070,11.100,11.141,11.205,11.289,11.385,11.480,11.558,11.608,
-11.626,11.617,11.589,11.552,11.516,11.482,11.449,11.411,11.363,11.298,11.219,11.130,11.037,10.951,10.878,10.821,
-10.781,10.754,10.736,10.725,10.718,10.715,10.713,10.710,10.704,10.687,10.656,10.608,10.542,10.465,10.385,10.312,
-10.255,10.221,10.209,10.215,10.227,10.236,10.231,10.206,10.160,10.094,10.014,9.929,9.842,9.759,9.679,9.603,
-9.529,9.454,9.379,9.302,9.226,9.150,9.076,9.002,8.929,8.856,8.784,8.712,8.642,8.575,8.513,8.456,
-8.404,8.357,8.314,8.276,8.241,8.211,8.185,8.163,8.143,8.124,8.104,8.082,8.056,8.027,7.998,7.972,
-7.950,7.933,7.920,7.909,7.893,7.869,7.833,7.783,7.721,7.651,7.579,7.511,7.452,7.401,7.359,7.320,
-7.280,7.233,7.178,7.114,7.047,6.983,6.931,6.896,6.883,6.893,6.921,6.963,7.012,7.061,7.108,7.150,
-7.191,7.232,7.276,7.323,7.372,7.419,7.460,7.493,7.515,7.529,7.539,7.550,7.567,7.592,7.624,7.660,
-7.694,7.722,7.739,7.746,7.746,7.745,7.749,7.765,7.794,7.838,7.894,7.959,8.030,8.105,8.185,8.272,
-8.367,8.472,8.585,8.702,8.820,8.932,9.037,9.133,9.225,9.316,9.411,9.514,9.627,9.748,9.874,10.000,
-10.124,10.243,10.358,10.468,10.576,10.682,10.785,10.885,10.981,11.076,11.172,11.276,11.396,11.539,11.707,11.901,
-12.113,12.334,11.590,11.734,11.875,12.014,12.157,12.315,12.495,12.704,12.939,13.190,13.440,13.668,13.855,13.989,
-14.067,14.095,14.091,14.074,14.065,14.081,14.130,14.214,14.327,14.458,14.596,14.730,14.853,14.957,15.042,15.107,
-15.153,15.185,15.210,15.239,15.282,15.353,15.460,15.606,15.788,15.993,16.203,16.399,16.563,16.684,16.763,16.809,
-16.839,16.871,16.918,16.986,17.068,17.150,17.208,17.222,17.178,17.072,16.914,16.724,16.527,16.349,16.208,16.112,
-16.060,16.041,16.041,16.048,16.053,16.056,16.063,16.083,16.124,16.190,16.280,16.384,16.491,16.586,16.659,16.704,
-16.722,16.719,16.705,16.688,16.676,16.669,16.666,16.659,16.641,16.605,16.548,16.473,16.386,16.300,16.228,16.183,
-16.175,16.207,16.279,16.382,16.505,16.635,16.759,16.871,16.968,17.052,17.131,17.210,17.297,17.393,17.501,17.618,
-17.745,17.884,18.040,18.221,18.431,18.669,18.922,19.162,19.356,19.466,19.462,19.334,19.101,18.809,18.530,18.348,
-18.339,18.552,18.998,19.642,20.406,21.191,21.894,22.434,22.765,22.889,22.849,22.715,22.562,22.453,22.423,22.473,
-22.576,22.691,22.777,22.807,22.781,22.716,22.647,22.610,22.630,22.712,22.845,23.002,23.152,23.273,23.355,23.409,
-23.459,23.533,23.656,23.842,24.090,24.385,24.703,25.023,25.328,25.611,25.874,26.122,26.358,26.578,26.773,26.928,
-27.029,27.072,27.066,27.034,27.010,27.034,27.138,27.343,27.652,28.053,28.517,29.012,29.508,29.980,30.412,30.794,
-31.119,31.384,31.583,31.712,31.776,31.790,31.784,31.802,31.893,32.107,32.478,33.016,33.703,34.495,35.330,36.139,
-36.868,37.481,37.969,38.351,38.657,38.923,39.173,39.410,39.614,39.749,39.770,39.636,39.326,38.841,38.209,37.477,
-36.702,35.940,35.236,34.615,34.083,33.630,33.235,32.874,32.528,32.185,31.845,31.513,31.199,30.913,30.660,30.439,
-30.241,30.054,29.861,29.646,29.399,29.116,28.801,28.465,28.123,27.791,27.479,27.191,26.921,26.658,26.385,26.091,
-25.771,25.432,25.095,24.786,24.535,24.360,24.269,24.244,24.253,24.253,24.200,24.063,23.832,23.527,23.190,22.877,
-22.646,22.539,22.573,22.737,22.988,23.271,23.525,23.704,23.785,23.771,23.689,23.581,23.488,23.440,23.449,23.501,
-23.567,23.604,23.570,23.433,23.176,22.802,22.327,21.781,21.198,20.612,20.050,19.532,19.071,18.668,18.319,18.013,
-17.734,17.468,17.202,16.929,16.650,16.378,16.130,15.930,15.797,15.741,15.760,15.837,15.942,16.041,16.104,16.112,
-16.061,15.968,15.858,15.765,15.714,15.718,15.768,15.842,15.905,15.921,15.863,15.723,15.510,15.251,14.981,14.732,
-14.529,14.378,14.268,14.176,14.074,13.936,13.750,13.513,13.239,12.946,12.655,12.378,12.121,11.877,11.630,11.364,
-11.066,10.728,10.356,9.960,9.560,9.171,8.809,8.480,8.183,7.910,7.650,7.390,7.121,6.835,6.530,6.205,
-5.862,5.502,5.126,4.734,4.327,3.909,3.486,3.068,2.666,2.293,1.957,1.663,1.407,1.179,.960,.727,
-.456,.130,-.262,-.714,-1.210,-1.718,-2.201,-2.616,-2.928,-3.109,-3.149,-3.052,-2.837,-2.537,-2.189,-1.834,
--1.507,-1.239,-1.053,-.966,-.986,-1.118,-1.357,-1.699,-2.128,-2.628,-3.177,-3.751,-4.330,-4.899,-5.450,-5.983,
--6.505,-7.030,-7.565,-8.117,-8.683,-9.252,-9.810,-10.339,-10.828,-11.273,-11.680,-12.063,-12.444,-12.841,-13.264,-13.713,
--14.175,-14.628,-15.044,-15.398,-15.675,-15.871,-15.996,-16.070,-16.119,-16.168,-16.234,-16.328,-16.449,-16.590,-16.742,-16.897,
--17.053,-17.215,-17.393,-17.599,-17.844,-18.137,-18.477,-18.861,-19.279,-19.720,-20.171,-20.621,-21.062,-21.488,-21.896,-22.284,
--22.652,-23.002,-23.337,-23.663,-23.984,-24.305,-24.630,-24.956,-25.277,-25.584,-25.864,-26.102,-26.289,-26.417,-26.487,-26.506,
--26.486,-26.446,-26.404,-26.381,-26.397,-26.466,-26.599,-26.802,-27.072,-27.399,-27.769,-28.159,-28.548,-28.913,-29.239,-29.518,
--29.750,-29.942,-30.108,-30.262,-30.413,-30.569,-30.731,-30.901,-31.083,-31.287,-31.530,-31.837,-32.235,-32.743,-33.369,-34.097,
--34.893,-35.699,-36.448,-37.072,-37.516,-37.749,-37.770,-37.610,-37.323,-36.978,-36.643,-36.378,-36.220,-36.184,-36.263,-36.433,
--36.663,-36.924,-37.191,-37.454,-37.708,-37.958,-38.210,-38.465,-38.718,-38.959,-39.169,-39.331,-39.433,-39.472,-39.458,-39.411,
--39.362,-39.341,-39.377,-39.486,-39.669,-39.912,-40.193,-40.480,-40.746,-40.971,-41.147,-41.276,-41.369,-41.442,-41.506,-41.568,
--41.628,-41.681,-41.722,-41.748,-41.767,-41.792,-41.844,-41.942,-42.101,-42.326,-42.606,-42.923,-43.250,-43.562,-43.838,-44.071,
--44.264,-44.428,-44.579,-44.729,-44.887,-45.051,-45.216,-45.375,-45.522,-45.659,-45.792,-45.932,-46.086,-46.256,-46.437,-46.611,
--46.756,-46.850,-46.877,-46.832,-46.723,-46.572,-46.402,-46.242,-46.110,-46.018,-45.971,-45.967,-46.005,-46.088,-46.222,-46.418,
--46.683,-47.015,-47.398,-47.801,-48.180,-48.488,-48.683,-48.742,-48.664,-48.474,-48.218,-47.952,-47.730,-47.597,-47.572,-47.653,
--47.819,-48.033,-48.259,-48.463,-48.624,-48.736,-48.800,-48.826,-48.826,-48.811,-48.789,-48.767,-48.753,-48.756,-48.788,-48.857,
--48.967,-49.114,-49.279,-49.437,-49.553,-49.597,-49.549,-49.405,-49.185,-48.925,-48.675,-48.487,-48.402,-48.443,-48.608,-48.872,
--49.194,-49.527,-49.828,-50.070,-50.243,-50.356,-50.432,-50.499,-50.580,-50.687,-50.823,-50.976,-51.130,-51.269,-51.384,-51.476,
--51.556,-51.641,-51.750,-51.896,-52.084,-52.308,-52.554,-52.800,-53.025,-53.215,-53.363,-53.470,-53.548,-53.611,-53.673,-53.745,
--53.832,-53.934,-54.046,-54.161,-54.275,-54.384,-54.490,-54.595,-54.703,-54.819,-54.942,-55.072,-55.204,-55.335,-55.460,-55.576,
--55.684,-55.784,-55.877,-55.963,-56.040,-56.106,-56.157,-56.192,-56.212,-56.225,-56.237,-56.260,-56.302,-56.370,-56.461,-56.570,
--56.682,-56.782,-56.853,-56.881,-56.859,-56.785,-56.665,-56.509,-56.329,-56.138,-55.946,-55.763,-55.593,-55.440,-55.308,-55.198,
--55.113,-55.053,-55.018,-55.005,-55.012,-55.033,-55.062,-55.094,-55.124,-55.146,-55.157,-55.154,-55.134,-55.095,-55.037,-54.963,
--54.876,-54.784,-54.696,-54.618,-54.557,-54.514,-54.486,-54.468,-54.451,-54.427,-54.391,-54.342,-54.282,-54.220,-54.161,-54.112,
--54.074,-54.043,-54.014,-53.977,-53.926,-53.858,-53.775,-53.684,-53.596,-53.521,-53.469,-53.440,-53.433,-53.440,-53.450,-53.452,
--53.439,-53.405,-53.352,-53.284,-53.206,-53.124,-53.044,-52.967,-52.895,-52.831,-52.775,-52.730,-52.700,-52.686,-52.688,-52.705,
--52.728,-52.750,-52.761,-52.751,-52.714,-52.649,-52.558,-52.447,-52.325,-52.199,-52.075,-51.957,-51.846,-51.741,-51.639,-51.542,
--51.447,-51.357,-51.273,-51.196,-51.127,-51.062,-51.000,-50.938,-50.871,-50.799,-50.724,-50.649,-50.579,-50.518,-50.471,-50.440,
--50.422,-50.415,-50.413,-50.409,-50.398,-50.374,-50.333,-50.270,-50.184,-50.075,-49.944,-49.792,-49.623,-49.445,-49.263,-49.083,
--48.912,-48.752,-48.603,-48.461,-48.322,-48.178,-48.026,-47.863,-47.688,-47.504,-47.318,-47.135,-46.958,-46.792,-46.637,-46.491,
--46.353,-46.219,-46.089,-45.963,-45.842,-45.726,-45.615,-45.509,-45.405,-45.299,-45.190,-45.078,-44.965,-44.857,-44.761,-44.683,
--44.629,-44.601,-44.593,-44.600,-44.609,-44.608,-44.587,-44.538,-44.458,-44.348,-44.216,-44.070,-43.920,-43.775,-43.643,-43.527,
--43.430,-43.349,-43.281,-43.220,-43.160,-43.095,-43.017,-42.924,-42.811,-42.679,-42.529,-42.365,-42.192,-42.016,-41.841,-41.671,
--41.507,-41.349,-41.195,-41.041,-40.884,-40.718,-40.543,-40.356,-40.155,-39.944,-39.722,-39.493,-39.259,-39.025,-38.793,-38.566,
--38.345,-38.133,-37.929,-37.733,-37.546,-37.368,-37.199,-37.040,-36.891,-36.752,-36.623,-36.503,-36.390,-36.282,-36.178,-36.075,
--35.974,-35.873,-35.775,-35.679,-35.587,-35.497,-35.409,-35.323,-35.236,-35.149,-35.061,-34.972,-34.885,-34.799,-34.715,-34.631,
--34.546,-34.458,-34.365,-34.268,-34.168,-34.066,-33.966,-33.867,-33.772,-33.677,-33.579,-33.476,-33.364,-33.244,-33.117,-32.988,
--32.861,-32.740,-32.628,-32.523,-32.421,-32.315,-32.199,-32.069,-31.924,-31.766,-31.599,-31.429,-31.258,-31.089,-30.919,-30.746,
--30.566,-30.379,-30.184,-29.989,-29.798,-29.619,-29.454,-29.305,-29.166,-29.031,-28.894,-28.751,-28.603,-28.455,-28.317,-28.196,
--28.097,-28.017,-27.947,-27.875,-27.785,-27.668,-27.521,-27.349,-27.167,-26.993,-26.844,-26.728,-26.648,-26.594,-26.550,-26.499,
--26.427,-26.330,-26.211,-26.082,-25.958,-25.850,-25.765,-25.700,-25.646,-25.590,-25.517,-25.420,-25.298,-25.158,-25.010,-24.865,
--24.729,-24.604,-24.485,-24.366,-24.237,-24.096,-23.943,-23.784,-23.626,-23.474,-23.329,-23.185,-23.030,-22.852,-22.643,-22.398,
--22.126,-21.840,-21.559,-21.300,-21.074,-20.885,-20.726,-20.584,-20.444,-20.295,-20.134,-19.963,-19.794,-19.638,-19.505,-19.396,
--19.304,-19.212,-19.101,-18.952,-18.751,-18.493,-18.183,-17.838,-17.475,-17.117,-16.780,-16.476,-16.210,-15.980,-15.779,-15.599,
--15.429,-15.259,-15.083,-14.894,-14.690,-14.474,-14.247,-14.016,-13.786,-13.563,-13.349,-13.142,-12.940,-12.736,-12.524,-12.299,
--12.060,-11.812,-11.561,-11.316,-11.084,-10.870,-10.672,-10.486,-10.303,-10.114,-9.913,-9.695,-9.464,-9.222,-8.977,-8.732,
--8.491,-8.251,-8.010,-7.764,-7.510,-7.248,-6.978,-6.704,-6.426,-6.144,-5.852,-5.543,-5.209,-4.844,-4.449,-4.032,
--3.609,-3.201,-2.829,-2.511,-2.256,-2.061,-1.914,-1.792,-1.669,-1.517,-1.313,-1.040,-.690,-.259,.246,.819,
-1.446,2.114,2.805,3.499,4.178,4.823,5.417,5.954,6.431,6.856,7.241,7.604,7.956,8.305,8.650,8.985,
-9.295,9.568,9.795,9.973,10.108,10.214,10.304,10.392,10.485,10.586,10.693,10.803,10.917,11.044,11.201,11.408,
-11.682,12.030,12.443,12.892,13.334,13.716,13.990,14.125,14.114,13.977,13.758,13.511,13.291,13.134,13.056,13.044,
-13.067,13.084,13.060,12.977,12.840,12.674,12.522,12.429,12.428,12.536,12.748,13.037,13.367,13.695,13.986,14.215,
-14.370,14.446,14.443,14.363,14.204,13.966,13.650,13.264,12.826,12.362,11.904,11.485,11.129,10.849,10.646,10.508,
-10.416,10.350,10.297,10.248,10.204,10.169,10.149,10.145,10.151,10.160,10.160,10.144,10.108,10.058,10.005,9.962,
-9.942,9.948,9.980,10.029,10.082,10.130,10.166,10.192,10.215,10.248,10.302,10.382,10.487,10.609,10.733,10.845,
-10.931,10.984,11.004,10.996,10.968,10.930,10.888,10.845,10.802,10.758,10.711,10.660,10.605,10.549,10.492,10.435,
-10.377,10.317,10.252,10.184,10.115,10.049,9.990,9.944,9.912,9.890,9.875,9.858,9.831,9.791,9.738,9.675,
-9.611,9.557,9.521,9.508,9.519,9.547,9.585,9.620,9.643,9.648,9.630,9.591,9.534,9.464,9.386,9.306,
-9.225,9.145,9.068,8.991,8.915,8.839,8.762,8.685,8.606,8.526,8.445,8.365,8.286,8.210,8.137,8.068,
-8.005,7.947,7.894,7.848,7.810,7.779,7.757,7.744,7.738,7.736,7.736,7.734,7.727,7.713,7.690,7.660,
-7.625,7.586,7.545,7.504,7.464,7.423,7.382,7.340,7.298,7.258,7.220,7.185,7.154,7.125,7.095,7.061,
-7.020,6.971,6.915,6.854,6.795,6.744,6.706,6.686,6.684,6.698,6.725,6.760,6.798,6.837,6.878,6.922,
-6.973,7.032,7.099,7.172,7.245,7.312,7.366,7.403,7.423,7.429,7.429,7.430,7.438,7.459,7.490,7.527,
-7.561,7.586,7.595,7.586,7.561,7.528,7.496,7.476,7.473,7.492,7.533,7.593,7.668,7.753,7.846,7.945,
-8.050,8.162,8.278,8.397,8.515,8.627,8.731,8.825,8.912,8.997,9.085,9.181,9.289,9.410,9.542,9.681,
-9.823,9.963,10.099,10.227,10.347,10.458,10.558,10.646,10.721,10.784,10.836,10.885,10.936,11.000,11.082,11.185,
-11.308,11.445,11.590,11.049,11.155,11.263,11.375,11.500,11.649,11.833,12.057,12.318,12.602,12.889,13.153,13.373,
-13.530,13.619,13.648,13.634,13.603,13.579,13.585,13.635,13.732,13.871,14.039,14.221,14.401,14.565,14.704,14.814,
-14.896,14.952,14.991,15.021,15.055,15.103,15.176,15.282,15.421,15.589,15.773,15.954,16.113,16.234,16.305,16.325,
-16.305,16.261,16.216,16.189,16.194,16.234,16.303,16.383,16.453,16.495,16.494,16.444,16.351,16.228,16.093,15.965,
-15.857,15.780,15.736,15.722,15.731,15.758,15.796,15.841,15.891,15.946,16.005,16.067,16.127,16.183,16.232,16.269,
-16.295,16.308,16.312,16.308,16.296,16.278,16.252,16.216,16.168,16.108,16.037,15.959,15.880,15.810,15.756,15.728,
-15.731,15.766,15.834,15.926,16.036,16.153,16.271,16.384,16.492,16.596,16.703,16.817,16.943,17.081,17.227,17.377,
-17.524,17.665,17.802,17.940,18.086,18.247,18.424,18.607,18.776,18.904,18.962,18.931,18.809,18.619,18.408,18.240,
-18.186,18.305,18.629,19.153,19.830,20.584,21.319,21.942,22.386,22.621,22.660,22.553,22.373,22.196,22.084,22.066,
-22.141,22.279,22.435,22.565,22.639,22.648,22.610,22.557,22.524,22.542,22.624,22.767,22.951,23.148,23.334,23.494,
-23.627,23.745,23.869,24.019,24.210,24.445,24.718,25.014,25.314,25.602,25.867,26.101,26.302,26.465,26.587,26.664,
-26.693,26.677,26.627,26.565,26.524,26.537,26.637,26.847,27.174,27.605,28.116,28.672,29.237,29.783,30.291,30.752,
-31.167,31.539,31.868,32.150,32.380,32.549,32.658,32.721,32.764,32.829,32.961,33.205,33.591,34.127,34.799,35.569,
-36.387,37.197,37.952,38.620,39.185,39.650,40.024,40.318,40.536,40.673,40.710,40.623,40.390,39.996,39.444,38.753,
-37.959,37.112,36.261,35.455,34.729,34.101,33.576,33.142,32.779,32.464,32.176,31.901,31.631,31.369,31.119,30.887,
-30.677,30.488,30.313,30.139,29.953,29.744,29.508,29.247,28.974,28.702,28.449,28.223,28.025,27.843,27.655,27.438,
-27.170,26.841,26.458,26.046,25.640,25.281,25.003,24.821,24.727,24.690,24.663,24.595,24.445,24.198,23.863,23.482,
-23.112,22.818,22.652,22.641,22.784,23.047,23.376,23.710,23.998,24.206,24.327,24.376,24.386,24.389,24.410,24.458,
-24.521,24.568,24.562,24.465,24.250,23.906,23.440,22.875,22.245,21.587,20.934,20.314,19.747,19.244,18.806,18.434,
-18.120,17.859,17.642,17.462,17.312,17.190,17.092,17.021,16.976,16.956,16.954,16.959,16.954,16.919,16.839,16.702,
-16.514,16.291,16.061,15.858,15.713,15.647,15.661,15.740,15.848,15.942,15.980,15.932,15.787,15.558,15.273,14.975,
-14.701,14.481,14.326,14.225,14.152,14.070,13.944,13.746,13.469,13.119,12.719,12.299,11.893,11.525,11.210,10.950,
-10.737,10.554,10.381,10.201,10.001,9.771,9.513,9.229,8.930,8.627,8.332,8.058,7.811,7.594,7.403,7.226,
-7.044,6.836,6.580,6.262,5.875,5.428,4.942,4.445,3.972,3.550,3.199,2.920,2.698,2.503,2.297,2.042,
-1.710,1.287,.782,.220,-.361,-.916,-1.405,-1.800,-2.088,-2.273,-2.370,-2.402,-2.392,-2.355,-2.301,-2.229,
--2.138,-2.028,-1.905,-1.791,-1.714,-1.710,-1.814,-2.052,-2.431,-2.939,-3.548,-4.212,-4.884,-5.524,-6.103,-6.613,
--7.066,-7.485,-7.897,-8.324,-8.779,-9.257,-9.741,-10.207,-10.634,-11.009,-11.333,-11.621,-11.901,-12.204,-12.553,-12.961,
--13.425,-13.925,-14.432,-14.913,-15.341,-15.702,-15.992,-16.224,-16.415,-16.583,-16.743,-16.900,-17.052,-17.192,-17.309,-17.398,
--17.457,-17.496,-17.526,-17.563,-17.623,-17.719,-17.858,-18.048,-18.292,-18.594,-18.960,-19.394,-19.898,-20.463,-21.076,-21.711,
--22.337,-22.922,-23.441,-23.878,-24.234,-24.527,-24.782,-25.032,-25.303,-25.608,-25.945,-26.295,-26.628,-26.909,-27.109,-27.211,
--27.215,-27.141,-27.020,-26.892,-26.797,-26.767,-26.820,-26.962,-27.183,-27.464,-27.781,-28.109,-28.427,-28.720,-28.982,-29.213,
--29.419,-29.608,-29.791,-29.975,-30.163,-30.355,-30.550,-30.743,-30.935,-31.132,-31.348,-31.605,-31.929,-32.345,-32.871,-33.510,
--34.244,-35.036,-35.831,-36.563,-37.168,-37.594,-37.812,-37.822,-37.653,-37.356,-36.997,-36.642,-36.348,-36.153,-36.072,-36.099,
--36.212,-36.384,-36.588,-36.805,-37.029,-37.261,-37.508,-37.777,-38.069,-38.373,-38.671,-38.938,-39.150,-39.290,-39.352,-39.346,
--39.299,-39.241,-39.207,-39.224,-39.305,-39.449,-39.639,-39.848,-40.049,-40.219,-40.347,-40.436,-40.499,-40.555,-40.625,-40.719,
--40.842,-40.985,-41.137,-41.283,-41.416,-41.537,-41.656,-41.790,-41.955,-42.165,-42.421,-42.713,-43.021,-43.325,-43.604,-43.850,
--44.064,-44.262,-44.462,-44.686,-44.945,-45.240,-45.562,-45.890,-46.205,-46.490,-46.737,-46.951,-47.144,-47.330,-47.522,-47.722,
--47.920,-48.098,-48.232,-48.302,-48.297,-48.219,-48.084,-47.917,-47.746,-47.594,-47.478,-47.402,-47.363,-47.353,-47.366,-47.401,
--47.461,-47.553,-47.685,-47.854,-48.049,-48.249,-48.423,-48.541,-48.579,-48.527,-48.394,-48.206,-48.001,-47.822,-47.706,-47.679,
--47.750,-47.913,-48.146,-48.422,-48.711,-48.989,-49.235,-49.437,-49.589,-49.686,-49.732,-49.730,-49.691,-49.632,-49.574,-49.543,
--49.560,-49.640,-49.786,-49.981,-50.196,-50.390,-50.521,-50.555,-50.477,-50.292,-50.030,-49.739,-49.472,-49.279,-49.193,-49.227,
--49.369,-49.590,-49.852,-50.115,-50.350,-50.547,-50.707,-50.847,-50.987,-51.143,-51.325,-51.527,-51.737,-51.933,-52.099,-52.222,
--52.301,-52.350,-52.386,-52.434,-52.512,-52.631,-52.791,-52.981,-53.184,-53.380,-53.554,-53.698,-53.812,-53.903,-53.986,-54.073,
--54.173,-54.290,-54.423,-54.563,-54.699,-54.823,-54.929,-55.014,-55.082,-55.141,-55.198,-55.263,-55.342,-55.438,-55.552,-55.681,
--55.823,-55.970,-56.118,-56.261,-56.392,-56.508,-56.604,-56.682,-56.740,-56.785,-56.821,-56.855,-56.894,-56.942,-57.001,-57.072,
--57.152,-57.237,-57.324,-57.406,-57.482,-57.548,-57.600,-57.633,-57.642,-57.620,-57.563,-57.467,-57.333,-57.167,-56.980,-56.785,
--56.595,-56.422,-56.275,-56.156,-56.064,-55.993,-55.937,-55.891,-55.851,-55.817,-55.789,-55.769,-55.754,-55.740,-55.721,-55.689,
--55.639,-55.568,-55.480,-55.382,-55.285,-55.201,-55.138,-55.098,-55.077,-55.066,-55.054,-55.029,-54.986,-54.924,-54.851,-54.775,
--54.709,-54.659,-54.629,-54.614,-54.604,-54.588,-54.555,-54.498,-54.417,-54.319,-54.212,-54.111,-54.025,-53.961,-53.919,-53.896,
--53.885,-53.877,-53.864,-53.842,-53.807,-53.759,-53.699,-53.630,-53.554,-53.474,-53.394,-53.319,-53.256,-53.209,-53.185,-53.183,
--53.203,-53.237,-53.273,-53.300,-53.306,-53.282,-53.224,-53.135,-53.022,-52.895,-52.764,-52.636,-52.518,-52.409,-52.308,-52.213,
--52.121,-52.032,-51.947,-51.870,-51.802,-51.745,-51.695,-51.648,-51.598,-51.538,-51.463,-51.374,-51.274,-51.171,-51.076,-50.998,
--50.942,-50.912,-50.905,-50.912,-50.923,-50.928,-50.917,-50.885,-50.828,-50.747,-50.646,-50.527,-50.395,-50.252,-50.101,-49.942,
--49.777,-49.607,-49.436,-49.265,-49.096,-48.931,-48.769,-48.609,-48.448,-48.286,-48.119,-47.947,-47.771,-47.594,-47.419,-47.250,
--47.090,-46.940,-46.802,-46.674,-46.555,-46.441,-46.331,-46.220,-46.109,-45.998,-45.886,-45.778,-45.676,-45.584,-45.504,-45.438,
--45.386,-45.347,-45.317,-45.292,-45.267,-45.236,-45.194,-45.137,-45.064,-44.973,-44.865,-44.742,-44.607,-44.464,-44.317,-44.172,
--44.032,-43.902,-43.782,-43.673,-43.574,-43.479,-43.383,-43.281,-43.168,-43.039,-42.895,-42.736,-42.565,-42.389,-42.211,-42.036,
--41.867,-41.705,-41.548,-41.394,-41.239,-41.080,-40.913,-40.735,-40.545,-40.341,-40.125,-39.897,-39.661,-39.420,-39.179,-38.941,
--38.712,-38.494,-38.288,-38.096,-37.915,-37.744,-37.580,-37.421,-37.267,-37.117,-36.971,-36.831,-36.699,-36.574,-36.459,-36.353,
--36.256,-36.168,-36.087,-36.012,-35.941,-35.872,-35.802,-35.728,-35.647,-35.558,-35.463,-35.362,-35.260,-35.160,-35.065,-34.980,
--34.902,-34.831,-34.762,-34.690,-34.612,-34.525,-34.427,-34.321,-34.207,-34.091,-33.974,-33.859,-33.747,-33.637,-33.528,-33.419,
--33.308,-33.193,-33.074,-32.949,-32.818,-32.679,-32.533,-32.380,-32.223,-32.063,-31.904,-31.747,-31.594,-31.444,-31.292,-31.134,
--30.966,-30.786,-30.593,-30.391,-30.186,-29.985,-29.793,-29.615,-29.450,-29.297,-29.151,-29.008,-28.870,-28.737,-28.615,-28.510,
--28.427,-28.366,-28.321,-28.280,-28.231,-28.158,-28.052,-27.912,-27.742,-27.558,-27.375,-27.209,-27.073,-26.969,-26.893,-26.835,
--26.782,-26.724,-26.654,-26.573,-26.487,-26.401,-26.323,-26.255,-26.192,-26.127,-26.051,-25.955,-25.834,-25.692,-25.534,-25.371,
--25.212,-25.064,-24.929,-24.805,-24.686,-24.567,-24.443,-24.312,-24.177,-24.038,-23.896,-23.749,-23.590,-23.412,-23.208,-22.973,
--22.710,-22.430,-22.146,-21.876,-21.632,-21.424,-21.249,-21.100,-20.960,-20.816,-20.655,-20.474,-20.276,-20.073,-19.878,-19.706,
--19.561,-19.441,-19.334,-19.223,-19.087,-18.908,-18.677,-18.392,-18.063,-17.706,-17.344,-16.997,-16.683,-16.410,-16.182,-15.989,
--15.821,-15.659,-15.488,-15.294,-15.071,-14.818,-14.543,-14.258,-13.979,-13.720,-13.491,-13.295,-13.126,-12.972,-12.817,-12.646,
--12.447,-12.215,-11.956,-11.679,-11.399,-11.134,-10.893,-10.683,-10.502,-10.341,-10.190,-10.036,-9.871,-9.688,-9.486,-9.269,
--9.038,-8.795,-8.543,-8.281,-8.008,-7.726,-7.437,-7.146,-6.857,-6.574,-6.296,-6.019,-5.733,-5.426,-5.089,-4.715,
--4.307,-3.877,-3.443,-3.028,-2.656,-2.340,-2.087,-1.888,-1.724,-1.565,-1.378,-1.134,-.810,-.395,.111,.694,
-1.331,1.993,2.653,3.281,3.860,4.379,4.836,5.241,5.610,5.966,6.328,6.712,7.124,7.560,8.005,8.435,
-8.823,9.146,9.389,9.549,9.639,9.679,9.697,9.718,9.760,9.832,9.930,10.043,10.160,10.275,10.391,10.521,
-10.688,10.910,11.202,11.560,11.963,12.371,12.738,13.016,13.172,13.192,13.089,12.898,12.666,12.443,12.267,12.157,
-12.112,12.110,12.121,12.114,12.072,11.994,11.897,11.808,11.763,11.787,11.895,12.085,12.338,12.625,12.912,13.169,
-13.370,13.501,13.552,13.519,13.402,13.200,12.917,12.560,12.143,11.689,11.225,10.782,10.390,10.068,9.826,9.660,
-9.557,9.495,9.458,9.430,9.404,9.382,9.369,9.373,9.395,9.434,9.480,9.524,9.553,9.560,9.546,9.514,
-9.476,9.442,9.421,9.415,9.425,9.444,9.468,9.492,9.516,9.546,9.588,9.649,9.733,9.839,9.960,10.086,
-10.204,10.301,10.370,10.408,10.416,10.401,10.370,10.329,10.286,10.244,10.204,10.166,10.129,10.093,10.056,10.017,
-9.974,9.923,9.864,9.795,9.717,9.634,9.551,9.473,9.405,9.351,9.309,9.276,9.248,9.218,9.181,9.138,
-9.090,9.044,9.007,8.985,8.984,9.004,9.042,9.089,9.137,9.175,9.195,9.191,9.163,9.113,9.044,8.964,
-8.879,8.795,8.715,8.642,8.577,8.517,8.461,8.406,8.349,8.287,8.220,8.148,8.070,7.989,7.908,7.827,
-7.750,7.678,7.612,7.554,7.503,7.461,7.428,7.405,7.390,7.382,7.379,7.379,7.378,7.372,7.360,7.338,
-7.305,7.261,7.208,7.147,7.080,7.012,6.945,6.885,6.833,6.794,6.769,6.757,6.756,6.760,6.764,6.762,
-6.748,6.723,6.686,6.644,6.602,6.568,6.548,6.547,6.563,6.592,6.629,6.668,6.703,6.733,6.759,6.787,
-6.823,6.872,6.935,7.012,7.095,7.176,7.245,7.295,7.322,7.330,7.324,7.314,7.308,7.315,7.335,7.365,
-7.397,7.422,7.431,7.420,7.388,7.341,7.290,7.245,7.217,7.214,7.239,7.291,7.367,7.460,7.566,7.680,
-7.799,7.921,8.045,8.166,8.283,8.390,8.486,8.570,8.643,8.710,8.778,8.853,8.943,9.051,9.178,9.320,
-9.474,9.634,9.794,9.951,10.099,10.236,10.358,10.461,10.543,10.601,10.637,10.654,10.661,10.668,10.684,10.718,
-10.774,10.852,10.946,11.049,10.931,11.034,11.137,11.239,11.346,11.467,11.611,11.786,11.990,12.218,12.452,12.675,
-12.865,13.008,13.098,13.138,13.143,13.133,13.130,13.154,13.218,13.327,13.478,13.661,13.861,14.064,14.258,14.430,
-14.576,14.691,14.777,14.837,14.877,14.907,14.938,14.982,15.049,15.146,15.272,15.421,15.578,15.723,15.838,15.907,
-15.922,15.884,15.807,15.712,15.624,15.565,15.551,15.589,15.671,15.782,15.899,15.999,16.062,16.075,16.037,15.956,
-15.846,15.726,15.616,15.530,15.479,15.466,15.486,15.533,15.595,15.661,15.723,15.775,15.814,15.841,15.859,15.872,
-15.883,15.893,15.903,15.910,15.909,15.897,15.869,15.825,15.764,15.690,15.608,15.526,15.451,15.389,15.347,15.328,
-15.335,15.368,15.424,15.500,15.593,15.697,15.808,15.924,16.043,16.166,16.295,16.432,16.580,16.739,16.905,17.074,
-17.239,17.395,17.539,17.669,17.791,17.910,18.031,18.153,18.271,18.372,18.438,18.455,18.415,18.328,18.219,18.131,
-18.117,18.228,18.503,18.952,19.553,20.252,20.969,21.617,22.119,22.423,22.518,22.433,22.228,21.985,21.783,21.685,
-21.717,21.873,22.115,22.386,22.630,22.801,22.881,22.876,22.819,22.752,22.720,22.756,22.876,23.075,23.335,23.627,
-23.923,24.201,24.450,24.668,24.860,25.035,25.200,25.360,25.516,25.665,25.800,25.916,26.007,26.067,26.091,26.076,
-26.025,25.944,25.850,25.765,25.721,25.752,25.887,26.147,26.537,27.042,27.633,28.268,28.901,29.492,30.015,30.460,
-30.834,31.153,31.442,31.719,31.995,32.271,32.538,32.785,33.005,33.200,33.383,33.580,33.821,34.138,34.552,35.072,
-35.690,36.383,37.120,37.864,38.580,39.242,39.828,40.327,40.727,41.019,41.190,41.225,41.107,40.823,40.366,39.745,
-38.981,38.113,37.189,36.264,35.391,34.613,33.959,33.438,33.043,32.751,32.531,32.347,32.170,31.980,31.768,31.536,
-31.292,31.050,30.817,30.600,30.397,30.200,30.002,29.797,29.585,29.372,29.169,28.988,28.838,28.718,28.615,28.508,
-28.369,28.175,27.911,27.580,27.201,26.810,26.446,26.145,25.926,25.789,25.709,25.645,25.550,25.383,25.125,24.781,
-24.384,23.987,23.648,23.417,23.327,23.378,23.548,23.790,24.053,24.287,24.461,24.562,24.598,24.591,24.564,24.536,
-24.511,24.479,24.415,24.292,24.084,23.778,23.374,22.887,22.345,21.780,21.222,20.694,20.211,19.778,19.394,19.058,
-18.766,18.519,18.321,18.176,18.085,18.049,18.060,18.106,18.171,18.234,18.274,18.271,18.209,18.076,17.868,17.590,
-17.258,16.896,16.535,16.209,15.949,15.776,15.698,15.704,15.769,15.854,15.918,15.923,15.847,15.686,15.455,15.185,
-14.912,14.672,14.488,14.364,14.283,14.214,14.115,13.946,13.679,13.306,12.837,12.304,11.753,11.234,10.793,10.463,
-10.259,10.174,10.185,10.253,10.332,10.379,10.359,10.250,10.050,9.775,9.455,9.131,8.843,8.623,8.488,8.432,
-8.429,8.434,8.394,8.261,7.997,7.593,7.064,6.453,5.818,5.222,4.717,4.332,4.065,3.885,3.737,3.559,
-3.295,2.911,2.404,1.800,1.152,.525,-.021,-.445,-.734,-.905,-1.000,-1.072,-1.169,-1.326,-1.549,-1.821,
--2.104,-2.358,-2.546,-2.655,-2.699,-2.717,-2.766,-2.905,-3.180,-3.614,-4.199,-4.896,-5.647,-6.390,-7.069,-7.650,
--8.125,-8.512,-8.842,-9.154,-9.480,-9.834,-10.215,-10.605,-10.980,-11.319,-11.610,-11.859,-12.085,-12.319,-12.588,-12.914,
--13.303,-13.746,-14.220,-14.696,-15.147,-15.557,-15.922,-16.248,-16.550,-16.844,-17.139,-17.434,-17.716,-17.966,-18.162,-18.287,
--18.332,-18.300,-18.204,-18.066,-17.908,-17.751,-17.618,-17.525,-17.493,-17.545,-17.706,-18.001,-18.452,-19.065,-19.828,-20.707,
--21.647,-22.579,-23.435,-24.157,-24.713,-25.102,-25.353,-25.517,-25.656,-25.824,-26.057,-26.363,-26.722,-27.092,-27.425,-27.677,
--27.824,-27.863,-27.820,-27.735,-27.657,-27.630,-27.681,-27.815,-28.019,-28.264,-28.513,-28.735,-28.908,-29.026,-29.097,-29.140,
--29.181,-29.242,-29.341,-29.483,-29.668,-29.887,-30.128,-30.382,-30.644,-30.914,-31.200,-31.516,-31.876,-32.296,-32.782,-33.335,
--33.944,-34.587,-35.234,-35.846,-36.387,-36.821,-37.125,-37.290,-37.323,-37.245,-37.091,-36.899,-36.708,-36.550,-36.446,-36.402,
--36.413,-36.469,-36.555,-36.661,-36.781,-36.919,-37.082,-37.283,-37.526,-37.813,-38.133,-38.467,-38.791,-39.080,-39.314,-39.485,
--39.597,-39.665,-39.711,-39.759,-39.826,-39.922,-40.041,-40.168,-40.285,-40.372,-40.416,-40.415,-40.380,-40.329,-40.285,-40.269,
--40.295,-40.368,-40.484,-40.633,-40.805,-40.992,-41.195,-41.417,-41.666,-41.947,-42.257,-42.587,-42.918,-43.229,-43.502,-43.728,
--43.913,-44.077,-44.249,-44.462,-44.743,-45.103,-45.537,-46.019,-46.514,-46.982,-47.391,-47.722,-47.976,-48.169,-48.328,-48.479,
--48.642,-48.822,-49.012,-49.192,-49.336,-49.426,-49.449,-49.409,-49.320,-49.203,-49.082,-48.975,-48.891,-48.832,-48.790,-48.758,
--48.729,-48.703,-48.684,-48.682,-48.704,-48.754,-48.827,-48.911,-48.987,-49.037,-49.043,-49.001,-48.913,-48.793,-48.664,-48.549,
--48.472,-48.449,-48.489,-48.594,-48.758,-48.971,-49.219,-49.484,-49.749,-49.996,-50.206,-50.364,-50.460,-50.494,-50.475,-50.425,
--50.372,-50.345,-50.370,-50.463,-50.622,-50.829,-51.051,-51.250,-51.386,-51.434,-51.382,-51.238,-51.030,-50.794,-50.569,-50.388,
--50.273,-50.228,-50.249,-50.320,-50.425,-50.550,-50.691,-50.848,-51.029,-51.239,-51.481,-51.748,-52.025,-52.293,-52.529,-52.717,
--52.849,-52.928,-52.967,-52.988,-53.013,-53.059,-53.137,-53.248,-53.383,-53.530,-53.674,-53.806,-53.923,-54.026,-54.126,-54.234,
--54.359,-54.506,-54.674,-54.855,-55.036,-55.204,-55.348,-55.460,-55.541,-55.596,-55.635,-55.670,-55.713,-55.772,-55.853,-55.956,
--56.077,-56.211,-56.350,-56.489,-56.622,-56.746,-56.863,-56.973,-57.080,-57.185,-57.288,-57.389,-57.482,-57.561,-57.622,-57.658,
--57.671,-57.667,-57.656,-57.653,-57.674,-57.733,-57.838,-57.986,-58.164,-58.353,-58.527,-58.660,-58.732,-58.734,-58.666,-58.540,
--58.374,-58.190,-58.004,-57.827,-57.661,-57.503,-57.344,-57.176,-56.999,-56.815,-56.636,-56.476,-56.349,-56.263,-56.218,-56.206,
--56.213,-56.218,-56.208,-56.172,-56.108,-56.025,-55.933,-55.846,-55.775,-55.724,-55.690,-55.663,-55.634,-55.592,-55.533,-55.460,
--55.381,-55.306,-55.247,-55.209,-55.194,-55.193,-55.197,-55.191,-55.164,-55.110,-55.028,-54.923,-54.806,-54.688,-54.580,-54.489,
--54.418,-54.365,-54.327,-54.299,-54.276,-54.253,-54.225,-54.190,-54.146,-54.092,-54.028,-53.958,-53.885,-53.817,-53.762,-53.726,
--53.713,-53.723,-53.748,-53.780,-53.806,-53.814,-53.796,-53.748,-53.673,-53.578,-53.473,-53.367,-53.269,-53.180,-53.100,-53.022,
--52.943,-52.857,-52.764,-52.666,-52.571,-52.485,-52.413,-52.356,-52.313,-52.276,-52.237,-52.186,-52.119,-52.035,-51.938,-51.836,
--51.739,-51.654,-51.585,-51.532,-51.491,-51.453,-51.411,-51.360,-51.295,-51.218,-51.133,-51.043,-50.952,-50.861,-50.768,-50.667,
--50.554,-50.425,-50.277,-50.113,-49.939,-49.762,-49.589,-49.425,-49.272,-49.127,-48.985,-48.839,-48.683,-48.514,-48.333,-48.145,
--47.958,-47.778,-47.614,-47.469,-47.342,-47.228,-47.122,-47.016,-46.904,-46.784,-46.656,-46.526,-46.400,-46.285,-46.188,-46.111,
--46.054,-46.011,-45.977,-45.944,-45.906,-45.858,-45.799,-45.728,-45.647,-45.557,-45.461,-45.358,-45.248,-45.129,-45.001,-44.863,
--44.717,-44.565,-44.410,-44.255,-44.102,-43.953,-43.806,-43.660,-43.513,-43.362,-43.208,-43.050,-42.890,-42.732,-42.578,-42.428,
--42.283,-42.140,-41.996,-41.848,-41.693,-41.526,-41.349,-41.159,-40.958,-40.747,-40.528,-40.301,-40.069,-39.833,-39.595,-39.358,
--39.127,-38.905,-38.694,-38.498,-38.317,-38.149,-37.992,-37.843,-37.698,-37.554,-37.411,-37.268,-37.126,-36.987,-36.854,-36.728,
--36.613,-36.508,-36.416,-36.335,-36.265,-36.201,-36.142,-36.082,-36.018,-35.946,-35.864,-35.772,-35.672,-35.568,-35.466,-35.369,
--35.280,-35.200,-35.126,-35.053,-34.977,-34.891,-34.792,-34.680,-34.557,-34.428,-34.298,-34.173,-34.056,-33.950,-33.852,-33.757,
--33.661,-33.557,-33.441,-33.310,-33.164,-33.004,-32.835,-32.661,-32.487,-32.319,-32.158,-32.008,-31.867,-31.733,-31.602,-31.469,
--31.327,-31.173,-31.003,-30.818,-30.621,-30.414,-30.205,-29.999,-29.801,-29.612,-29.435,-29.270,-29.117,-28.977,-28.854,-28.749,
--28.665,-28.603,-28.561,-28.531,-28.505,-28.471,-28.419,-28.341,-28.233,-28.099,-27.945,-27.782,-27.622,-27.475,-27.346,-27.239,
--27.153,-27.084,-27.027,-26.980,-26.939,-26.901,-26.863,-26.820,-26.766,-26.697,-26.605,-26.488,-26.346,-26.182,-26.005,-25.824,
--25.648,-25.486,-25.340,-25.209,-25.090,-24.977,-24.864,-24.747,-24.623,-24.493,-24.353,-24.201,-24.034,-23.844,-23.628,-23.383,
--23.112,-22.824,-22.532,-22.252,-22.000,-21.785,-21.612,-21.473,-21.357,-21.246,-21.123,-20.978,-20.807,-20.612,-20.404,-20.197,
--20.001,-19.822,-19.661,-19.508,-19.351,-19.176,-18.969,-18.726,-18.447,-18.141,-17.822,-17.507,-17.212,-16.947,-16.717,-16.517,
--16.339,-16.167,-15.985,-15.779,-15.539,-15.262,-14.953,-14.626,-14.298,-13.988,-13.713,-13.483,-13.302,-13.160,-13.043,-12.931,
--12.802,-12.640,-12.436,-12.191,-11.916,-11.626,-11.341,-11.075,-10.841,-10.640,-10.468,-10.317,-10.173,-10.025,-9.867,-9.693,
--9.503,-9.298,-9.081,-8.851,-8.608,-8.350,-8.077,-7.788,-7.489,-7.183,-6.877,-6.576,-6.280,-5.988,-5.692,-5.384,
--5.055,-4.700,-4.321,-3.922,-3.516,-3.114,-2.729,-2.366,-2.025,-1.694,-1.357,-.994,-.587,-.124,.397,.967,
-1.565,2.163,2.731,3.242,3.679,4.036,4.323,4.564,4.792,5.042,5.347,5.728,6.190,6.719,7.284,7.843,
-8.352,8.767,9.063,9.230,9.283,9.251,9.175,9.099,9.059,9.074,9.148,9.267,9.411,9.554,9.679,9.783,
-9.875,9.977,10.113,10.304,10.557,10.863,11.195,11.515,11.783,11.967,12.048,12.030,11.933,11.792,11.642,11.515,
-11.428,11.386,11.376,11.379,11.376,11.355,11.314,11.265,11.226,11.219,11.262,11.364,11.522,11.724,11.949,12.173,
-12.372,12.528,12.625,12.652,12.602,12.470,12.253,11.954,11.581,11.153,10.693,10.234,9.807,9.440,9.152,8.948,
-8.821,8.755,8.726,8.713,8.701,8.684,8.662,8.644,8.641,8.658,8.699,8.757,8.822,8.882,8.928,8.952,
-8.956,8.946,8.928,8.913,8.905,8.908,8.919,8.936,8.955,8.977,9.003,9.038,9.087,9.157,9.246,9.353,
-9.469,9.584,9.688,9.770,9.826,9.853,9.853,9.833,9.797,9.753,9.704,9.655,9.606,9.559,9.514,9.469,
-9.426,9.383,9.340,9.296,9.251,9.203,9.155,9.106,9.058,9.011,8.968,8.927,8.888,8.849,8.808,8.765,
-8.721,8.678,8.640,8.609,8.590,8.585,8.593,8.612,8.636,8.660,8.676,8.679,8.664,8.631,8.579,8.511,
-8.434,8.351,8.270,8.195,8.130,8.077,8.035,8.001,7.973,7.946,7.915,7.877,7.829,7.771,7.704,7.629,
-7.551,7.472,7.396,7.325,7.261,7.205,7.156,7.115,7.081,7.051,7.025,7.003,6.982,6.961,6.939,6.915,
-6.886,6.853,6.813,6.765,6.711,6.650,6.585,6.521,6.461,6.411,6.375,6.355,6.352,6.363,6.383,6.405,
-6.425,6.438,6.442,6.439,6.433,6.431,6.440,6.462,6.499,6.548,6.604,6.659,6.707,6.745,6.771,6.790,
-6.808,6.832,6.865,6.912,6.968,7.029,7.085,7.130,7.157,7.167,7.162,7.149,7.137,7.133,7.140,7.158,
-7.182,7.204,7.216,7.212,7.190,7.153,7.110,7.069,7.042,7.037,7.059,7.108,7.181,7.275,7.382,7.498,
-7.620,7.743,7.867,7.987,8.102,8.208,8.301,8.382,8.449,8.509,8.565,8.627,8.700,8.790,8.900,9.029,
-9.174,9.330,9.494,9.660,9.826,9.988,10.142,10.284,10.408,10.508,10.580,10.623,10.640,10.639,10.632,10.630,
-10.646,10.685,10.749,10.834,10.931,11.056,11.162,11.264,11.356,11.441,11.521,11.607,11.708,11.828,11.968,12.121,
-12.278,12.425,12.550,12.647,12.715,12.761,12.796,12.835,12.892,12.977,13.095,13.247,13.428,13.629,13.840,14.050,
-14.249,14.427,14.576,14.690,14.769,14.813,14.830,14.832,14.834,14.855,14.908,15.000,15.132,15.292,15.460,15.611,
-15.719,15.766,15.741,15.651,15.512,15.354,15.208,15.105,15.065,15.097,15.194,15.335,15.493,15.637,15.740,15.786,
-15.770,15.700,15.593,15.473,15.363,15.282,15.240,15.240,15.273,15.329,15.392,15.450,15.495,15.525,15.540,15.547,
-15.552,15.559,15.571,15.585,15.595,15.595,15.579,15.543,15.489,15.419,15.341,15.264,15.195,15.139,15.100,15.079,
-15.076,15.087,15.115,15.157,15.218,15.296,15.395,15.512,15.647,15.793,15.948,16.106,16.263,16.417,16.567,16.713,
-16.855,16.994,17.130,17.264,17.397,17.529,17.661,17.789,17.911,18.019,18.104,18.158,18.178,18.170,18.150,18.147,
-18.198,18.344,18.616,19.031,19.582,20.232,20.922,21.574,22.114,22.477,22.631,22.581,22.368,22.067,21.763,21.541,
-21.462,21.555,21.807,22.173,22.586,22.973,23.274,23.454,23.508,23.464,23.368,23.279,23.248,23.312,23.487,23.764,
-24.117,24.505,24.890,25.236,25.517,25.721,25.849,25.910,25.918,25.889,25.840,25.779,25.712,25.640,25.560,25.468,
-25.362,25.245,25.127,25.027,24.973,24.997,25.128,25.390,25.795,26.332,26.976,27.683,28.399,29.071,29.653,30.119,
-30.462,30.698,30.860,30.992,31.136,31.326,31.582,31.907,32.290,32.710,33.144,33.573,33.985,34.379,34.766,35.161,
-35.581,36.041,36.553,37.116,37.724,38.362,39.009,39.637,40.217,40.716,41.104,41.348,41.424,41.311,41.000,40.495,
-39.817,38.998,38.085,37.135,36.206,35.352,34.616,34.023,33.580,33.274,33.074,32.943,32.838,32.725,32.580,32.391,
-32.164,31.911,31.650,31.399,31.165,30.952,30.752,30.555,30.351,30.136,29.913,29.691,29.487,29.311,29.172,29.064,
-28.974,28.878,28.754,28.584,28.360,28.092,27.802,27.518,27.270,27.074,26.932,26.828,26.731,26.603,26.414,26.147,
-25.805,25.415,25.019,24.665,24.395,24.233,24.183,24.224,24.319,24.423,24.497,24.512,24.459,24.345,24.189,24.010,
-23.826,23.642,23.452,23.242,22.996,22.700,22.351,21.958,21.542,21.126,20.734,20.384,20.081,19.823,19.596,19.387,
-19.186,18.989,18.804,18.646,18.531,18.477,18.490,18.566,18.690,18.834,18.962,19.042,19.043,18.945,18.744,18.446,
-18.073,17.655,17.227,16.825,16.478,16.207,16.020,15.911,15.863,15.848,15.835,15.796,15.712,15.575,15.392,15.181,
-14.968,14.781,14.638,14.548,14.501,14.470,14.420,14.308,14.098,13.766,13.310,12.749,12.123,11.488,10.906,10.436,
-10.121,9.983,10.017,10.193,10.456,10.742,10.984,11.124,11.129,10.990,10.730,10.398,10.057,9.773,9.597,9.557,
-9.646,9.821,10.015,10.144,10.133,9.927,9.508,8.898,8.157,7.369,6.624,5.994,5.521,5.207,5.013,4.871,
-4.703,4.442,4.051,3.529,2.913,2.270,1.675,1.193,.859,.674,.597,.563,.498,.338,.046,-.376,
--.894,-1.448,-1.971,-2.411,-2.742,-2.973,-3.147,-3.328,-3.582,-3.962,-4.492,-5.161,-5.924,-6.720,-7.479,-8.148,
--8.693,-9.113,-9.431,-9.686,-9.920,-10.167,-10.442,-10.743,-11.056,-11.358,-11.633,-11.877,-12.097,-12.316,-12.557,-12.842,
--13.181,-13.569,-13.988,-14.412,-14.818,-15.189,-15.523,-15.834,-16.141,-16.467,-16.828,-17.224,-17.640,-18.047,-18.409,-18.689,
--18.861,-18.913,-18.849,-18.684,-18.443,-18.154,-17.843,-17.535,-17.259,-17.045,-16.932,-16.961,-17.177,-17.610,-18.273,-19.152,
--20.196,-21.330,-22.460,-23.491,-24.346,-24.982,-25.395,-25.624,-25.735,-25.808,-25.914,-26.098,-26.375,-26.724,-27.098,-27.444,
--27.716,-27.890,-27.970,-27.987,-27.989,-28.026,-28.135,-28.329,-28.595,-28.896,-29.183,-29.406,-29.530,-29.544,-29.459,-29.310,
--29.141,-28.999,-28.918,-28.920,-29.005,-29.165,-29.379,-29.631,-29.910,-30.214,-30.551,-30.930,-31.365,-31.858,-32.403,-32.985,
--33.579,-34.155,-34.686,-35.148,-35.530,-35.827,-36.045,-36.195,-36.293,-36.354,-36.394,-36.423,-36.450,-36.478,-36.511,-36.548,
--36.587,-36.629,-36.672,-36.716,-36.766,-36.828,-36.911,-37.025,-37.180,-37.383,-37.635,-37.932,-38.261,-38.605,-38.947,-39.267,
--39.554,-39.800,-40.006,-40.179,-40.328,-40.460,-40.581,-40.689,-40.777,-40.838,-40.862,-40.844,-40.787,-40.699,-40.593,-40.488,
--40.400,-40.342,-40.325,-40.354,-40.430,-40.554,-40.729,-40.956,-41.236,-41.566,-41.936,-42.329,-42.721,-43.085,-43.395,-43.637,
--43.811,-43.937,-44.046,-44.184,-44.392,-44.701,-45.123,-45.646,-46.235,-46.840,-47.407,-47.890,-48.261,-48.516,-48.673,-48.768,
--48.842,-48.935,-49.069,-49.251,-49.469,-49.699,-49.912,-50.081,-50.191,-50.236,-50.226,-50.177,-50.105,-50.028,-49.954,-49.888,
--49.828,-49.771,-49.717,-49.667,-49.628,-49.608,-49.614,-49.651,-49.714,-49.797,-49.883,-49.958,-50.003,-50.008,-49.968,-49.883,
--49.762,-49.621,-49.477,-49.352,-49.265,-49.236,-49.276,-49.393,-49.583,-49.835,-50.127,-50.432,-50.719,-50.961,-51.137,-51.241,
--51.277,-51.265,-51.234,-51.213,-51.231,-51.304,-51.435,-51.612,-51.814,-52.009,-52.170,-52.272,-52.304,-52.262,-52.156,-52.002,
--51.820,-51.629,-51.447,-51.286,-51.159,-51.076,-51.045,-51.075,-51.169,-51.327,-51.544,-51.805,-52.089,-52.373,-52.632,-52.849,
--53.014,-53.126,-53.198,-53.245,-53.290,-53.347,-53.428,-53.535,-53.662,-53.797,-53.927,-54.045,-54.146,-54.235,-54.321,-54.419,
--54.539,-54.689,-54.871,-55.076,-55.292,-55.502,-55.692,-55.850,-55.972,-56.061,-56.124,-56.175,-56.226,-56.288,-56.366,-56.463,
--56.573,-56.690,-56.805,-56.911,-57.005,-57.088,-57.165,-57.244,-57.334,-57.443,-57.572,-57.718,-57.870,-58.010,-58.119,-58.180,
--58.181,-58.122,-58.015,-57.884,-57.759,-57.676,-57.665,-57.744,-57.915,-58.167,-58.469,-58.786,-59.080,-59.318,-59.484,-59.571,
--59.590,-59.559,-59.496,-59.418,-59.330,-59.227,-59.099,-58.930,-58.710,-58.437,-58.124,-57.792,-57.471,-57.191,-56.976,-56.838,
--56.774,-56.767,-56.792,-56.823,-56.836,-56.818,-56.766,-56.690,-56.602,-56.518,-56.447,-56.394,-56.355,-56.323,-56.286,-56.237,
--56.172,-56.095,-56.011,-55.932,-55.867,-55.819,-55.789,-55.772,-55.759,-55.740,-55.707,-55.655,-55.582,-55.492,-55.390,-55.282,
--55.174,-55.070,-54.974,-54.887,-54.811,-54.747,-54.694,-54.651,-54.615,-54.582,-54.549,-54.511,-54.466,-54.416,-54.364,-54.318,
--54.282,-54.264,-54.265,-54.282,-54.308,-54.333,-54.347,-54.342,-54.313,-54.264,-54.199,-54.127,-54.056,-53.993,-53.937,-53.885,
--53.830,-53.763,-53.680,-53.580,-53.465,-53.346,-53.232,-53.134,-53.059,-53.008,-52.977,-52.957,-52.936,-52.906,-52.859,-52.794,
--52.714,-52.623,-52.526,-52.430,-52.334,-52.239,-52.141,-52.038,-51.930,-51.817,-51.705,-51.599,-51.504,-51.422,-51.351,-51.285,
--51.214,-51.129,-51.022,-50.891,-50.737,-50.568,-50.396,-50.230,-50.078,-49.944,-49.824,-49.710,-49.592,-49.459,-49.307,-49.134,
--48.945,-48.750,-48.560,-48.385,-48.231,-48.098,-47.981,-47.871,-47.758,-47.635,-47.497,-47.347,-47.191,-47.038,-46.900,-46.783,
--46.691,-46.624,-46.576,-46.539,-46.502,-46.460,-46.406,-46.339,-46.260,-46.172,-46.079,-45.981,-45.880,-45.772,-45.657,-45.530,
--45.391,-45.238,-45.075,-44.903,-44.725,-44.545,-44.364,-44.183,-44.002,-43.822,-43.643,-43.467,-43.297,-43.136,-42.984,-42.844,
--42.711,-42.583,-42.452,-42.313,-42.160,-41.988,-41.798,-41.591,-41.372,-41.145,-40.915,-40.686,-40.460,-40.237,-40.017,-39.800,
--39.585,-39.374,-39.167,-38.968,-38.779,-38.600,-38.433,-38.276,-38.128,-37.985,-37.846,-37.707,-37.569,-37.432,-37.295,-37.162,
--37.034,-36.913,-36.801,-36.699,-36.608,-36.528,-36.457,-36.392,-36.331,-36.270,-36.205,-36.135,-36.058,-35.975,-35.888,-35.799,
--35.711,-35.625,-35.540,-35.453,-35.360,-35.257,-35.143,-35.015,-34.876,-34.731,-34.585,-34.445,-34.316,-34.200,-34.094,-33.996,
--33.898,-33.794,-33.678,-33.547,-33.401,-33.242,-33.074,-32.903,-32.732,-32.567,-32.408,-32.256,-32.111,-31.971,-31.834,-31.698,
--31.562,-31.424,-31.282,-31.133,-30.975,-30.807,-30.628,-30.439,-30.244,-30.045,-29.849,-29.662,-29.487,-29.331,-29.195,-29.081,
--28.987,-28.912,-28.852,-28.804,-28.762,-28.722,-28.681,-28.633,-28.575,-28.504,-28.418,-28.317,-28.202,-28.076,-27.944,-27.812,
--27.687,-27.576,-27.485,-27.416,-27.369,-27.340,-27.319,-27.297,-27.259,-27.196,-27.100,-26.968,-26.804,-26.616,-26.417,-26.217,
--26.027,-25.855,-25.700,-25.561,-25.431,-25.304,-25.174,-25.039,-24.898,-24.753,-24.604,-24.451,-24.289,-24.113,-23.915,-23.689,
--23.435,-23.156,-22.864,-22.573,-22.301,-22.061,-21.862,-21.705,-21.581,-21.478,-21.377,-21.264,-21.129,-20.968,-20.784,-20.585,
--20.381,-20.180,-19.986,-19.799,-19.612,-19.418,-19.209,-18.979,-18.728,-18.459,-18.182,-17.905,-17.639,-17.390,-17.163,-16.955,
--16.762,-16.575,-16.384,-16.179,-15.953,-15.701,-15.422,-15.122,-14.808,-14.494,-14.193,-13.918,-13.679,-13.478,-13.314,-13.176,
--13.049,-12.918,-12.768,-12.589,-12.377,-12.138,-11.882,-11.622,-11.373,-11.144,-10.940,-10.760,-10.597,-10.443,-10.289,-10.129,
--9.961,-9.784,-9.601,-9.413,-9.220,-9.018,-8.802,-8.563,-8.298,-8.002,-7.678,-7.333,-6.979,-6.625,-6.283,-5.957,
--5.646,-5.346,-5.046,-4.735,-4.403,-4.041,-3.646,-3.219,-2.760,-2.275,-1.766,-1.234,-.681,-.110,.475,1.064,
-1.641,2.187,2.680,3.102,3.439,3.692,3.872,4.006,4.132,4.291,4.521,4.852,5.294,5.836,6.447,7.078,
-7.674,8.181,8.558,8.786,8.867,8.830,8.718,8.584,8.473,8.422,8.446,8.539,8.681,8.840,8.987,9.102,
-9.179,9.227,9.268,9.328,9.431,9.588,9.798,10.042,10.294,10.524,10.705,10.824,10.879,10.883,10.854,10.815,
-10.783,10.766,10.763,10.766,10.763,10.745,10.710,10.663,10.620,10.598,10.613,10.677,10.792,10.952,11.140,11.337,
-11.522,11.677,11.787,11.840,11.828,11.746,11.587,11.351,11.039,10.661,10.234,9.782,9.336,8.926,8.580,8.316,
-8.140,8.044,8.011,8.017,8.040,8.061,8.072,8.072,8.067,8.067,8.080,8.112,8.161,8.220,8.281,8.334,
-8.373,8.397,8.409,8.413,8.415,8.421,8.431,8.444,8.458,8.470,8.479,8.489,8.504,8.531,8.576,8.643,
-8.731,8.833,8.940,9.041,9.127,9.188,9.221,9.227,9.210,9.177,9.134,9.086,9.039,8.993,8.949,8.907,
-8.866,8.828,8.792,8.761,8.734,8.713,8.696,8.682,8.668,8.652,8.632,8.605,8.572,8.534,8.491,8.447,
-8.403,8.362,8.324,8.291,8.262,8.237,8.216,8.197,8.179,8.162,8.144,8.125,8.103,8.075,8.041,7.999,
-7.947,7.887,7.820,7.750,7.679,7.612,7.554,7.505,7.466,7.437,7.413,7.392,7.367,7.336,7.296,7.245,
-7.186,7.119,7.050,6.981,6.916,6.858,6.807,6.763,6.724,6.690,6.656,6.622,6.587,6.550,6.511,6.474,
-6.438,6.406,6.377,6.351,6.327,6.303,6.276,6.246,6.212,6.178,6.145,6.117,6.099,6.091,6.096,6.112,
-6.136,6.164,6.195,6.225,6.255,6.286,6.321,6.363,6.413,6.470,6.532,6.595,6.653,6.703,6.741,6.769,
-6.788,6.804,6.820,6.839,6.864,6.891,6.918,6.940,6.954,6.958,6.954,6.945,6.936,6.932,6.936,6.947,
-6.963,6.978,6.986,6.984,6.968,6.942,6.910,6.881,6.862,6.860,6.881,6.924,6.989,7.071,7.167,7.272,
-7.385,7.502,7.622,7.743,7.863,7.978,8.084,8.179,8.261,8.333,8.400,8.467,8.540,8.626,8.727,8.843,
-8.973,9.113,9.260,9.411,9.567,9.725,9.887,10.051,10.211,10.361,10.493,10.599,10.675,10.720,10.739,10.745,
-10.750,10.767,10.805,10.869,10.955,11.056,11.094,11.196,11.290,11.370,11.434,11.485,11.532,11.583,11.649,11.735,
-11.840,11.960,12.087,12.210,12.322,12.419,12.501,12.574,12.646,12.726,12.822,12.941,13.086,13.257,13.450,13.659,
-13.875,14.087,14.285,14.456,14.591,14.682,14.729,14.738,14.722,14.701,14.698,14.734,14.823,14.969,15.161,15.378,
-15.588,15.756,15.852,15.854,15.760,15.584,15.355,15.114,14.901,14.754,14.694,14.727,14.842,15.010,15.197,15.367,
-15.492,15.555,15.553,15.496,15.403,15.297,15.199,15.125,15.081,15.066,15.073,15.092,15.114,15.135,15.154,15.173,
-15.197,15.229,15.270,15.316,15.360,15.393,15.406,15.394,15.356,15.298,15.229,15.158,15.095,15.048,15.017,15.001,
-14.997,15.000,15.009,15.025,15.054,15.104,15.180,15.288,15.428,15.593,15.773,15.954,16.123,16.272,16.397,16.499,
-16.586,16.668,16.756,16.858,16.979,17.118,17.271,17.429,17.583,17.721,17.837,17.926,17.990,18.035,18.078,18.142,
-18.254,18.444,18.736,19.145,19.669,20.285,20.950,21.605,22.182,22.619,22.870,22.916,22.774,22.493,22.146,21.821,
-21.598,21.537,21.667,21.977,22.423,22.934,23.434,23.853,24.144,24.289,24.305,24.232,24.128,24.052,24.052,24.157,
-24.371,24.672,25.026,25.386,25.706,25.952,26.101,26.147,26.100,25.981,25.817,25.633,25.453,25.291,25.156,25.045,
-24.954,24.875,24.805,24.748,24.714,24.722,24.798,24.967,25.251,25.660,26.188,26.812,27.495,28.187,28.836,29.396,
-29.834,30.138,30.321,30.415,30.468,30.534,30.666,30.903,31.264,31.748,32.333,32.982,33.650,34.293,34.878,35.386,
-35.815,36.182,36.515,36.849,37.217,37.643,38.137,38.693,39.284,39.872,40.406,40.834,41.108,41.191,41.061,40.716,
-40.172,39.465,38.643,37.764,36.886,36.064,35.341,34.746,34.289,33.961,33.741,33.594,33.484,33.376,33.245,33.077,
-32.872,32.641,32.400,32.166,31.953,31.762,31.588,31.416,31.231,31.017,30.771,30.496,30.207,29.927,29.675,29.469,
-29.311,29.195,29.101,29.007,28.892,28.741,28.554,28.341,28.123,27.919,27.745,27.604,27.484,27.364,27.214,27.012,
-26.743,26.412,26.040,25.662,25.315,25.034,24.837,24.723,24.673,24.652,24.620,24.543,24.397,24.174,23.885,23.550,
-23.194,22.838,22.497,22.172,21.858,21.546,21.229,20.907,20.588,20.283,20.011,19.781,19.600,19.460,19.345,19.234,
-19.108,18.955,18.775,18.583,18.402,18.263,18.192,18.205,18.301,18.462,18.656,18.841,18.972,19.015,18.947,18.765,
-18.480,18.120,17.721,17.321,16.951,16.635,16.383,16.192,16.050,15.937,15.831,15.715,15.575,15.411,15.228,15.039,
-14.863,14.716,14.612,14.555,14.537,14.538,14.531,14.481,14.353,14.120,13.768,13.298,12.732,12.109,11.482,10.912,
-10.454,10.155,10.039,10.106,10.327,10.647,10.999,11.307,11.509,11.561,11.454,11.212,10.889,10.559,10.299,10.173,
-10.211,10.407,10.711,11.042,11.302,11.399,11.266,10.879,10.261,9.477,8.622,7.797,7.086,6.540,6.165,5.922,
-5.744,5.552,5.278,4.883,4.370,3.778,3.174,2.632,2.211,1.940,1.809,1.770,1.749,1.667,1.462,1.099,
-.587,-.033,-.696,-1.333,-1.890,-2.342,-2.700,-3.007,-3.323,-3.709,-4.209,-4.835,-5.570,-6.365,-7.157,-7.884,
--8.500,-8.984,-9.344,-9.608,-9.820,-10.018,-10.232,-10.472,-10.734,-11.001,-11.255,-11.485,-11.692,-11.891,-12.103,-12.350,
--12.646,-12.992,-13.373,-13.765,-14.140,-14.479,-14.775,-15.037,-15.290,-15.564,-15.887,-16.273,-16.717,-17.195,-17.668,-18.091,
--18.424,-18.639,-18.725,-18.688,-18.547,-18.330,-18.061,-17.765,-17.465,-17.183,-16.950,-16.802,-16.785,-16.945,-17.320,-17.926,
--18.752,-19.750,-20.844,-21.939,-22.940,-23.769,-24.386,-24.788,-25.015,-25.136,-25.227,-25.356,-25.564,-25.859,-26.214,-26.581,
--26.908,-27.155,-27.307,-27.379,-27.414,-27.464,-27.580,-27.791,-28.098,-28.472,-28.859,-29.195,-29.426,-29.518,-29.466,-29.298,
--29.062,-28.817,-28.617,-28.499,-28.479,-28.551,-28.696,-28.889,-29.112,-29.360,-29.642,-29.974,-30.378,-30.864,-31.432,-32.061,
--32.715,-33.348,-33.916,-34.383,-34.732,-34.966,-35.105,-35.182,-35.234,-35.292,-35.379,-35.501,-35.654,-35.825,-35.997,-36.155,
--36.288,-36.395,-36.477,-36.542,-36.599,-36.656,-36.719,-36.796,-36.891,-37.011,-37.163,-37.353,-37.587,-37.866,-38.185,-38.534,
--38.899,-39.261,-39.604,-39.911,-40.175,-40.390,-40.559,-40.686,-40.779,-40.844,-40.884,-40.901,-40.895,-40.866,-40.816,-40.748,
--40.668,-40.586,-40.513,-40.463,-40.447,-40.479,-40.570,-40.728,-40.957,-41.257,-41.617,-42.020,-42.443,-42.855,-43.229,-43.541,
--43.781,-43.953,-44.081,-44.198,-44.349,-44.574,-44.903,-45.345,-45.887,-46.494,-47.115,-47.694,-48.184,-48.552,-48.791,-48.917,
--48.968,-48.991,-49.033,-49.131,-49.303,-49.548,-49.844,-50.159,-50.456,-50.703,-50.879,-50.976,-51.001,-50.968,-50.899,-50.813,
--50.729,-50.656,-50.600,-50.562,-50.539,-50.531,-50.537,-50.556,-50.591,-50.640,-50.701,-50.768,-50.832,-50.881,-50.901,-50.882,
--50.813,-50.693,-50.524,-50.320,-50.101,-49.892,-49.724,-49.623,-49.613,-49.706,-49.900,-50.183,-50.527,-50.897,-51.254,-51.564,
--51.803,-51.959,-52.036,-52.051,-52.032,-52.009,-52.011,-52.058,-52.159,-52.313,-52.506,-52.716,-52.917,-53.086,-53.200,-53.246,
--53.217,-53.115,-52.950,-52.740,-52.508,-52.281,-52.087,-51.950,-51.887,-51.907,-52.007,-52.173,-52.382,-52.607,-52.821,-53.003,
--53.141,-53.236,-53.298,-53.346,-53.401,-53.479,-53.590,-53.735,-53.905,-54.082,-54.252,-54.398,-54.516,-54.606,-54.679,-54.753,
--54.843,-54.963,-55.121,-55.312,-55.527,-55.749,-55.961,-56.148,-56.301,-56.418,-56.506,-56.576,-56.642,-56.716,-56.806,-56.914,
--57.037,-57.165,-57.288,-57.396,-57.483,-57.548,-57.595,-57.637,-57.684,-57.752,-57.848,-57.975,-58.124,-58.280,-58.420,-58.519,
--58.553,-58.511,-58.391,-58.209,-57.995,-57.786,-57.627,-57.553,-57.589,-57.741,-57.996,-58.328,-58.696,-59.062,-59.393,-59.668,
--59.881,-60.040,-60.161,-60.258,-60.343,-60.414,-60.460,-60.461,-60.393,-60.239,-59.993,-59.664,-59.278,-58.870,-58.479,-58.139,
--57.876,-57.696,-57.592,-57.543,-57.524,-57.510,-57.482,-57.431,-57.360,-57.276,-57.193,-57.121,-57.067,-57.029,-57.002,-56.975,
--56.940,-56.889,-56.821,-56.738,-56.646,-56.555,-56.472,-56.401,-56.344,-56.301,-56.266,-56.236,-56.204,-56.166,-56.119,-56.059,
--55.985,-55.895,-55.791,-55.674,-55.550,-55.425,-55.307,-55.201,-55.114,-55.047,-54.998,-54.962,-54.934,-54.906,-54.876,-54.843,
--54.811,-54.787,-54.775,-54.780,-54.801,-54.836,-54.874,-54.907,-54.926,-54.925,-54.902,-54.862,-54.810,-54.755,-54.703,-54.656,
--54.611,-54.564,-54.506,-54.432,-54.341,-54.233,-54.117,-54.002,-53.900,-53.818,-53.761,-53.727,-53.709,-53.698,-53.684,-53.659,
--53.617,-53.559,-53.486,-53.401,-53.308,-53.207,-53.099,-52.982,-52.856,-52.722,-52.582,-52.442,-52.309,-52.188,-52.082,-51.989,
--51.903,-51.817,-51.721,-51.607,-51.473,-51.320,-51.157,-50.992,-50.837,-50.700,-50.583,-50.483,-50.391,-50.297,-50.190,-50.062,
--49.911,-49.740,-49.557,-49.374,-49.200,-49.040,-48.897,-48.767,-48.640,-48.510,-48.369,-48.213,-48.046,-47.872,-47.702,-47.545,
--47.410,-47.300,-47.214,-47.148,-47.093,-47.043,-46.991,-46.931,-46.861,-46.784,-46.699,-46.608,-46.510,-46.405,-46.290,-46.161,
--46.017,-45.859,-45.687,-45.505,-45.317,-45.127,-44.938,-44.751,-44.567,-44.383,-44.201,-44.019,-43.840,-43.665,-43.497,-43.339,
--43.188,-43.043,-42.899,-42.750,-42.589,-42.411,-42.214,-42.000,-41.772,-41.536,-41.299,-41.066,-40.843,-40.631,-40.428,-40.233,
--40.042,-39.854,-39.665,-39.478,-39.291,-39.108,-38.930,-38.758,-38.592,-38.432,-38.278,-38.127,-37.979,-37.834,-37.691,-37.553,
--37.419,-37.291,-37.170,-37.057,-36.951,-36.852,-36.762,-36.677,-36.598,-36.522,-36.448,-36.374,-36.300,-36.224,-36.149,-36.074,
--35.999,-35.925,-35.849,-35.769,-35.681,-35.581,-35.466,-35.336,-35.192,-35.039,-34.883,-34.729,-34.584,-34.449,-34.325,-34.209,
--34.094,-33.975,-33.847,-33.710,-33.562,-33.408,-33.252,-33.099,-32.951,-32.808,-32.667,-32.524,-32.376,-32.220,-32.057,-31.890,
--31.725,-31.568,-31.425,-31.296,-31.181,-31.072,-30.961,-30.839,-30.700,-30.542,-30.367,-30.182,-29.997,-29.824,-29.670,-29.541,
--29.437,-29.353,-29.283,-29.219,-29.156,-29.090,-29.022,-28.954,-28.888,-28.828,-28.773,-28.719,-28.660,-28.590,-28.505,-28.401,
--28.282,-28.155,-28.030,-27.919,-27.827,-27.759,-27.709,-27.669,-27.623,-27.558,-27.462,-27.330,-27.162,-26.968,-26.761,-26.556,
--26.363,-26.190,-26.037,-25.896,-25.758,-25.615,-25.458,-25.286,-25.104,-24.919,-24.740,-24.572,-24.418,-24.273,-24.126,-23.965,
--23.780,-23.564,-23.319,-23.053,-22.779,-22.514,-22.273,-22.064,-21.889,-21.742,-21.611,-21.483,-21.348,-21.196,-21.028,-20.845,
--20.655,-20.464,-20.276,-20.092,-19.909,-19.721,-19.521,-19.305,-19.071,-18.821,-18.560,-18.294,-18.029,-17.771,-17.523,-17.283,
--17.053,-16.829,-16.610,-16.394,-16.181,-15.968,-15.753,-15.533,-15.305,-15.067,-14.819,-14.565,-14.309,-14.059,-13.823,-13.606,
--13.410,-13.232,-13.066,-12.903,-12.734,-12.553,-12.357,-12.149,-11.936,-11.724,-11.521,-11.332,-11.156,-10.990,-10.829,-10.666,
--10.497,-10.322,-10.142,-9.961,-9.783,-9.609,-9.434,-9.251,-9.047,-8.812,-8.535,-8.214,-7.854,-7.467,-7.071,-6.683,
--6.320,-5.989,-5.690,-5.413,-5.139,-4.846,-4.514,-4.127,-3.675,-3.159,-2.586,-1.971,-1.331,-.685,-.049,.561,
-1.131,1.651,2.109,2.499,2.816,3.063,3.251,3.399,3.535,3.692,3.903,4.196,4.585,5.070,5.629,6.227,
-6.815,7.343,7.769,8.064,8.221,8.256,8.201,8.100,8.000,7.938,7.937,8.001,8.118,8.263,8.409,8.531,
-8.616,8.666,8.693,8.717,8.761,8.841,8.962,9.118,9.294,9.468,9.620,9.736,9.814,9.859,9.885,9.905,
-9.932,9.970,10.014,10.054,10.076,10.069,10.031,9.967,9.896,9.838,9.819,9.855,9.956,10.117,10.323,10.550,
-10.772,10.963,11.102,11.176,11.179,11.109,10.968,10.758,10.484,10.151,9.770,9.356,8.929,8.513,8.134,7.815,
-7.573,7.412,7.330,7.312,7.340,7.391,7.450,7.504,7.549,7.586,7.620,7.657,7.701,7.751,7.804,7.855,
-7.898,7.931,7.953,7.967,7.976,7.986,7.998,8.012,8.025,8.035,8.038,8.034,8.026,8.021,8.025,8.045,
-8.085,8.145,8.220,8.301,8.377,8.438,8.477,8.491,8.483,8.458,8.425,8.392,8.365,8.347,8.339,8.336,
-8.336,8.334,8.328,8.318,8.305,8.290,8.275,8.262,8.250,8.237,8.221,8.199,8.171,8.135,8.096,8.056,
-8.018,7.986,7.960,7.941,7.926,7.911,7.891,7.865,7.830,7.787,7.739,7.689,7.641,7.597,7.559,7.525,
-7.492,7.457,7.414,7.362,7.298,7.225,7.146,7.065,6.988,6.918,6.857,6.808,6.767,6.731,6.697,6.662,
-6.621,6.575,6.525,6.471,6.418,6.368,6.324,6.288,6.261,6.240,6.224,6.208,6.190,6.168,6.141,6.108,
-6.074,6.040,6.010,5.988,5.973,5.967,5.967,5.970,5.972,5.971,5.965,5.953,5.938,5.924,5.913,5.910,
-5.917,5.936,5.964,6.002,6.046,6.095,6.147,6.200,6.254,6.308,6.363,6.416,6.466,6.513,6.555,6.590,
-6.620,6.646,6.667,6.686,6.704,6.719,6.731,6.740,6.744,6.744,6.741,6.737,6.735,6.738,6.745,6.756,
-6.768,6.779,6.783,6.778,6.763,6.740,6.713,6.687,6.670,6.665,6.676,6.704,6.749,6.809,6.882,6.966,
-7.062,7.168,7.284,7.410,7.542,7.674,7.803,7.922,8.029,8.122,8.205,8.282,8.362,8.450,8.552,8.668,
-8.798,8.938,9.084,9.231,9.378,9.525,9.675,9.828,9.985,10.144,10.297,10.437,10.555,10.645,10.706,10.742,
-10.762,10.777,10.802,10.844,10.909,10.995,11.094,10.927,11.032,11.124,11.199,11.255,11.298,11.334,11.376,11.431,
-11.506,11.601,11.714,11.835,11.958,12.074,12.178,12.268,12.349,12.425,12.504,12.593,12.700,12.828,12.979,13.153,
-13.345,13.550,13.758,13.958,14.136,14.281,14.385,14.443,14.461,14.452,14.435,14.436,14.479,14.581,14.748,14.974,
-15.236,15.499,15.724,15.874,15.919,15.850,15.673,15.417,15.123,14.838,14.607,14.464,14.425,14.487,14.630,14.821,
-15.022,15.198,15.323,15.383,15.378,15.319,15.222,15.107,14.990,14.884,14.794,14.723,14.672,14.640,14.630,14.644,
-14.684,14.752,14.845,14.953,15.064,15.165,15.239,15.279,15.279,15.245,15.186,15.118,15.055,15.010,14.988,14.989,
-15.008,15.036,15.066,15.097,15.129,15.171,15.232,15.322,15.444,15.598,15.773,15.954,16.124,16.267,16.374,16.445,
-16.487,16.515,16.547,16.600,16.683,16.801,16.946,17.106,17.266,17.409,17.526,17.613,17.675,17.725,17.783,17.872,
-18.018,18.242,18.560,18.981,19.499,20.097,20.745,21.399,22.010,22.527,22.905,23.116,23.152,23.033,22.802,22.520,
-22.259,22.086,22.052,22.184,22.478,22.900,23.397,23.902,24.351,24.697,24.914,25.004,24.992,24.921,24.840,24.794,
-24.815,24.913,25.081,25.294,25.515,25.708,25.839,25.888,25.847,25.727,25.548,25.337,25.126,24.942,24.803,24.720,
-24.691,24.707,24.754,24.816,24.882,24.946,25.014,25.097,25.217,25.395,25.651,25.997,26.430,26.936,27.486,28.041,
-28.561,29.010,29.365,29.622,29.797,29.924,30.053,30.235,30.517,30.931,31.484,32.162,32.926,33.720,34.486,35.170,
-35.734,36.164,36.473,36.694,36.877,37.075,37.333,37.677,38.112,38.614,39.137,39.621,40.002,40.224,40.246,40.053,
-39.653,39.081,38.386,37.630,36.874,36.171,35.563,35.071,34.698,34.431,34.245,34.107,33.984,33.848,33.680,33.473,
-33.233,32.972,32.709,32.461,32.241,32.051,31.887,31.732,31.569,31.382,31.160,30.903,30.622,30.339,30.075,29.851,
-29.679,29.557,29.472,29.400,29.314,29.192,29.021,28.804,28.556,28.300,28.063,27.863,27.706,27.583,27.473,27.345,
-27.173,26.938,26.641,26.295,25.931,25.584,25.284,25.051,24.887,24.773,24.679,24.566,24.398,24.153,23.824,23.420,
-22.966,22.490,22.023,21.586,21.191,20.839,20.524,20.238,19.974,19.729,19.508,19.313,19.149,19.013,18.896,18.782,
-18.653,18.496,18.302,18.078,17.844,17.627,17.463,17.379,17.394,17.508,17.704,17.945,18.187,18.383,18.494,18.494,
-18.377,18.156,17.857,17.515,17.164,16.836,16.547,16.304,16.102,15.929,15.768,15.607,15.436,15.253,15.064,14.877,
-14.705,14.558,14.441,14.358,14.301,14.260,14.218,14.157,14.057,13.898,13.667,13.355,12.964,12.505,12.001,11.488,
-11.007,10.602,10.311,10.162,10.163,10.297,10.528,10.801,11.050,11.217,11.259,11.160,10.935,10.633,10.319,10.070,
-9.947,9.985,10.183,10.498,10.855,11.160,11.323,11.278,10.994,10.488,9.817,9.066,8.327,7.677,7.163,6.792,
-6.530,6.318,6.087,5.778,5.362,4.843,4.261,3.674,3.149,2.733,2.448,2.277,2.172,2.067,1.892,1.598,
-1.162,.598,-.048,-.716,-1.347,-1.896,-2.350,-2.727,-3.072,-3.439,-3.881,-4.428,-5.084,-5.822,-6.592,-7.336,
--8.001,-8.553,-8.985,-9.311,-9.567,-9.792,-10.021,-10.274,-10.553,-10.844,-11.128,-11.387,-11.613,-11.810,-11.996,-12.196,
--12.431,-12.715,-13.044,-13.402,-13.764,-14.106,-14.408,-14.670,-14.904,-15.136,-15.396,-15.709,-16.083,-16.509,-16.959,-17.393,
--17.769,-18.052,-18.224,-18.285,-18.249,-18.145,-18.000,-17.839,-17.682,-17.538,-17.419,-17.337,-17.315,-17.383,-17.577,-17.928,
--18.452,-19.143,-19.966,-20.861,-21.754,-22.568,-23.245,-23.755,-24.102,-24.324,-24.478,-24.627,-24.822,-25.086,-25.413,-25.771,
--26.112,-26.390,-26.574,-26.664,-26.686,-26.689,-26.732,-26.862,-27.104,-27.451,-27.865,-28.287,-28.653,-28.907,-29.023,-29.001,
--28.876,-28.699,-28.529,-28.414,-28.384,-28.442,-28.572,-28.746,-28.936,-29.126,-29.317,-29.529,-29.792,-30.136,-30.580,-31.125,
--31.748,-32.406,-33.046,-33.616,-34.078,-34.414,-34.632,-34.758,-34.831,-34.895,-34.981,-35.110,-35.284,-35.490,-35.710,-35.920,
--36.106,-36.259,-36.381,-36.477,-36.558,-36.631,-36.699,-36.762,-36.819,-36.871,-36.922,-36.984,-37.077,-37.218,-37.426,-37.708,
--38.063,-38.475,-38.918,-39.359,-39.768,-40.118,-40.395,-40.594,-40.723,-40.798,-40.835,-40.851,-40.855,-40.854,-40.846,-40.830,
--40.802,-40.763,-40.720,-40.682,-40.663,-40.679,-40.743,-40.867,-41.056,-41.309,-41.620,-41.978,-42.365,-42.763,-43.152,-43.513,
--43.835,-44.111,-44.346,-44.553,-44.755,-44.978,-45.247,-45.581,-45.987,-46.458,-46.971,-47.492,-47.984,-48.409,-48.743,-48.976,
--49.118,-49.195,-49.245,-49.308,-49.421,-49.604,-49.862,-50.182,-50.536,-50.886,-51.196,-51.437,-51.592,-51.661,-51.656,-51.603,
--51.529,-51.462,-51.422,-51.420,-51.455,-51.517,-51.592,-51.662,-51.713,-51.737,-51.730,-51.697,-51.645,-51.583,-51.517,-51.447,
--51.372,-51.282,-51.170,-51.027,-50.853,-50.653,-50.444,-50.249,-50.096,-50.012,-50.021,-50.133,-50.347,-50.647,-51.005,-51.387,
--51.756,-52.080,-52.336,-52.515,-52.621,-52.668,-52.682,-52.690,-52.717,-52.782,-52.896,-53.060,-53.263,-53.488,-53.710,-53.905,
--54.049,-54.124,-54.122,-54.042,-53.897,-53.709,-53.504,-53.315,-53.168,-53.084,-53.071,-53.127,-53.237,-53.378,-53.522,-53.648,
--53.740,-53.792,-53.813,-53.820,-53.832,-53.870,-53.948,-54.070,-54.229,-54.411,-54.595,-54.764,-54.903,-55.010,-55.090,-55.157,
--55.228,-55.320,-55.444,-55.604,-55.792,-55.997,-56.201,-56.387,-56.544,-56.666,-56.756,-56.824,-56.883,-56.947,-57.026,-57.125,
--57.245,-57.379,-57.516,-57.645,-57.758,-57.849,-57.919,-57.973,-58.023,-58.079,-58.151,-58.247,-58.364,-58.495,-58.623,-58.729,
--58.789,-58.788,-58.715,-58.576,-58.385,-58.172,-57.974,-57.827,-57.765,-57.807,-57.958,-58.206,-58.526,-58.883,-59.242,-59.576,
--59.866,-60.109,-60.314,-60.495,-60.668,-60.842,-61.017,-61.179,-61.307,-61.376,-61.361,-61.249,-61.039,-60.744,-60.389,-60.007,
--59.631,-59.287,-58.993,-58.754,-58.564,-58.411,-58.281,-58.162,-58.045,-57.930,-57.821,-57.722,-57.638,-57.574,-57.526,-57.491,
--57.462,-57.432,-57.394,-57.345,-57.286,-57.219,-57.148,-57.075,-57.006,-56.942,-56.885,-56.837,-56.796,-56.762,-56.733,-56.704,
--56.670,-56.625,-56.563,-56.478,-56.370,-56.241,-56.097,-55.948,-55.805,-55.676,-55.569,-55.484,-55.420,-55.371,-55.331,-55.295,
--55.262,-55.233,-55.215,-55.211,-55.229,-55.268,-55.326,-55.394,-55.461,-55.515,-55.548,-55.554,-55.534,-55.493,-55.438,-55.379,
--55.321,-55.267,-55.217,-55.165,-55.107,-55.040,-54.961,-54.875,-54.786,-54.701,-54.627,-54.566,-54.519,-54.483,-54.452,-54.419,
--54.380,-54.333,-54.276,-54.212,-54.143,-54.070,-53.994,-53.913,-53.822,-53.719,-53.601,-53.469,-53.326,-53.178,-53.030,-52.887,
--52.753,-52.626,-52.502,-52.377,-52.246,-52.104,-51.954,-51.800,-51.647,-51.503,-51.375,-51.263,-51.166,-51.078,-50.989,-50.892,
--50.778,-50.646,-50.494,-50.330,-50.159,-49.988,-49.823,-49.665,-49.514,-49.364,-49.212,-49.053,-48.888,-48.716,-48.544,-48.377,
--48.222,-48.084,-47.962,-47.858,-47.766,-47.682,-47.601,-47.520,-47.436,-47.350,-47.261,-47.171,-47.076,-46.976,-46.866,-46.741,
--46.600,-46.440,-46.264,-46.074,-45.877,-45.679,-45.485,-45.298,-45.119,-44.947,-44.779,-44.612,-44.443,-44.272,-44.098,-43.924,
--43.750,-43.576,-43.403,-43.227,-43.046,-42.855,-42.653,-42.438,-42.213,-41.982,-41.747,-41.516,-41.291,-41.076,-40.871,-40.676,
--40.489,-40.307,-40.129,-39.953,-39.779,-39.607,-39.438,-39.272,-39.107,-38.943,-38.779,-38.613,-38.447,-38.279,-38.112,-37.948,
--37.790,-37.641,-37.502,-37.374,-37.258,-37.152,-37.053,-36.959,-36.868,-36.775,-36.679,-36.581,-36.479,-36.376,-36.275,-36.178,
--36.089,-36.009,-35.937,-35.869,-35.801,-35.728,-35.643,-35.543,-35.426,-35.294,-35.151,-35.003,-34.856,-34.715,-34.580,-34.450,
--34.323,-34.194,-34.057,-33.913,-33.761,-33.606,-33.453,-33.308,-33.173,-33.048,-32.927,-32.802,-32.666,-32.512,-32.337,-32.146,
--31.947,-31.755,-31.584,-31.443,-31.337,-31.263,-31.211,-31.164,-31.105,-31.021,-30.903,-30.754,-30.581,-30.398,-30.222,-30.066,
--29.939,-29.840,-29.764,-29.702,-29.641,-29.572,-29.493,-29.403,-29.308,-29.216,-29.134,-29.065,-29.006,-28.950,-28.889,-28.814,
--28.719,-28.604,-28.476,-28.342,-28.216,-28.104,-28.010,-27.932,-27.859,-27.781,-27.683,-27.558,-27.403,-27.223,-27.031,-26.838,
--26.658,-26.498,-26.357,-26.229,-26.100,-25.958,-25.793,-25.600,-25.386,-25.161,-24.941,-24.741,-24.572,-24.434,-24.322,-24.219,
--24.108,-23.974,-23.803,-23.596,-23.357,-23.101,-22.844,-22.600,-22.379,-22.185,-22.013,-21.855,-21.701,-21.542,-21.375,-21.199,
--21.018,-20.836,-20.659,-20.486,-20.315,-20.141,-19.955,-19.751,-19.526,-19.279,-19.016,-18.740,-18.460,-18.180,-17.904,-17.633,
--17.367,-17.106,-16.853,-16.609,-16.379,-16.168,-15.976,-15.801,-15.638,-15.477,-15.309,-15.124,-14.918,-14.691,-14.451,-14.206,
--13.968,-13.746,-13.545,-13.364,-13.196,-13.032,-12.863,-12.682,-12.488,-12.283,-12.073,-11.867,-11.670,-11.487,-11.315,-11.151,
--10.987,-10.818,-10.640,-10.454,-10.265,-10.078,-9.897,-9.723,-9.551,-9.372,-9.173,-8.943,-8.674,-8.364,-8.019,-7.653,
--7.282,-6.922,-6.583,-6.267,-5.966,-5.663,-5.337,-4.966,-4.534,-4.034,-3.469,-2.853,-2.208,-1.557,-.924,-.328,
-.217,.707,1.139,1.517,1.846,2.134,2.389,2.622,2.846,3.078,3.336,3.638,3.995,4.413,4.885,5.391,
-5.903,6.387,6.808,7.141,7.372,7.504,7.554,7.551,7.529,7.520,7.545,7.613,7.721,7.854,7.992,8.118,
-8.220,8.298,8.361,8.423,8.500,8.603,8.733,8.881,9.029,9.157,9.245,9.283,9.271,9.222,9.158,9.101,
-9.072,9.082,9.126,9.192,9.258,9.301,9.306,9.268,9.196,9.114,9.050,9.035,9.089,9.221,9.425,9.679,
-9.951,10.205,10.411,10.541,10.584,10.535,10.401,10.193,9.925,9.611,9.262,8.891,8.510,8.134,7.777,7.455,
-7.183,6.971,6.824,6.741,6.713,6.729,6.775,6.838,6.908,6.981,7.055,7.130,7.206,7.283,7.358,7.428,
-7.489,7.536,7.571,7.592,7.606,7.616,7.625,7.636,7.648,7.658,7.661,7.655,7.639,7.615,7.588,7.565,
-7.553,7.556,7.575,7.605,7.639,7.670,7.689,7.691,7.677,7.651,7.620,7.594,7.580,7.586,7.610,7.651,
-7.701,7.753,7.798,7.831,7.849,7.853,7.845,7.830,7.810,7.789,7.767,7.743,7.716,7.686,7.653,7.620,
-7.590,7.566,7.551,7.545,7.547,7.553,7.557,7.553,7.536,7.504,7.456,7.396,7.328,7.259,7.193,7.134,
-7.082,7.034,6.987,6.937,6.878,6.807,6.725,6.633,6.534,6.436,6.341,6.256,6.183,6.123,6.075,6.035,
-6.002,5.970,5.937,5.902,5.865,5.826,5.789,5.757,5.732,5.716,5.708,5.709,5.714,5.721,5.726,5.726,
-5.720,5.706,5.688,5.668,5.650,5.637,5.631,5.632,5.638,5.648,5.658,5.665,5.668,5.666,5.662,5.658,
-5.658,5.666,5.685,5.716,5.758,5.809,5.866,5.926,5.985,6.042,6.096,6.145,6.189,6.231,6.270,6.307,
-6.343,6.377,6.410,6.440,6.467,6.490,6.508,6.520,6.528,6.532,6.534,6.535,6.537,6.541,6.548,6.556,
-6.564,6.568,6.567,6.560,6.547,6.530,6.511,6.496,6.488,6.489,6.502,6.527,6.563,6.609,6.666,6.733,
-6.813,6.907,7.017,7.143,7.281,7.425,7.569,7.705,7.825,7.926,8.009,8.080,8.146,8.218,8.305,8.412,
-8.542,8.692,8.858,9.032,9.205,9.374,9.535,9.686,9.828,9.961,10.084,10.195,10.291,10.367,10.424,10.462,
-10.488,10.509,10.536,10.577,10.639,10.721,10.820,10.927,10.660,10.782,10.883,10.961,11.018,11.063,11.104,11.153,
-11.217,11.300,11.400,11.513,11.632,11.748,11.857,11.953,12.038,12.114,12.185,12.258,12.338,12.429,12.535,12.656,
-12.795,12.950,13.118,13.296,13.473,13.642,13.790,13.907,13.988,14.033,14.050,14.055,14.070,14.119,14.222,14.388,
-14.615,14.886,15.171,15.431,15.627,15.727,15.714,15.588,15.369,15.094,14.807,14.553,14.371,14.284,14.295,14.393,
-14.549,14.730,14.900,15.030,15.101,15.106,15.050,14.945,14.808,14.655,14.503,14.364,14.248,14.163,14.115,14.109,
-14.150,14.237,14.366,14.526,14.702,14.873,15.021,15.129,15.187,15.196,15.164,15.107,15.046,14.998,14.977,14.989,
-15.033,15.098,15.174,15.251,15.322,15.388,15.453,15.526,15.614,15.723,15.848,15.981,16.108,16.215,16.291,16.332,
-16.344,16.340,16.339,16.360,16.417,16.515,16.649,16.805,16.964,17.105,17.215,17.289,17.333,17.366,17.412,17.500,
-17.658,17.903,18.247,18.688,19.213,19.803,20.431,21.064,21.672,22.222,22.688,23.048,23.292,23.420,23.442,23.386,
-23.286,23.182,23.117,23.123,23.221,23.417,23.696,24.030,24.382,24.710,24.980,25.169,25.269,25.288,25.250,25.182,
-25.116,25.076,25.075,25.116,25.187,25.270,25.340,25.376,25.362,25.291,25.168,25.008,24.834,24.671,24.545,24.476,
-24.474,24.541,24.666,24.833,25.016,25.194,25.345,25.460,25.537,25.590,25.638,25.711,25.834,26.028,26.303,26.655,
-27.065,27.503,27.937,28.338,28.687,28.983,29.242,29.498,29.791,30.165,30.649,31.257,31.976,32.771,33.587,34.364,
-35.043,35.582,35.965,36.202,36.330,36.404,36.485,36.624,36.854,37.179,37.575,37.993,38.369,38.638,38.745,38.658,
-38.374,37.915,37.331,36.684,36.042,35.463,34.991,34.646,34.427,34.313,34.267,34.249,34.218,34.142,34.002,33.793,
-33.521,33.206,32.867,32.529,32.206,31.908,31.635,31.380,31.135,30.889,30.640,30.393,30.159,29.958,29.808,29.723,
-29.707,29.748,29.820,29.889,29.914,29.861,29.711,29.461,29.130,28.755,28.379,28.047,27.787,27.614,27.514,27.460,
-27.410,27.322,27.164,26.923,26.605,26.235,25.850,25.487,25.172,24.916,24.711,24.532,24.343,24.110,23.807,23.424,
-22.967,22.459,21.932,21.418,20.945,20.530,20.175,19.874,19.615,19.382,19.164,18.954,18.751,18.556,18.367,18.184,
-17.999,17.807,17.599,17.375,17.143,16.920,16.729,16.599,16.553,16.606,16.757,16.991,17.274,17.565,17.820,17.999,
-18.076,18.040,17.899,17.673,17.390,17.080,16.769,16.476,16.210,15.969,15.748,15.540,15.340,15.143,14.952,14.770,
-14.600,14.444,14.302,14.171,14.044,13.916,13.781,13.637,13.483,13.320,13.146,12.958,12.751,12.518,12.252,11.951,
-11.622,11.279,10.947,10.657,10.438,10.310,10.281,10.338,10.449,10.569,10.650,10.649,10.540,10.324,10.030,9.705,
-9.412,9.207,9.130,9.192,9.371,9.614,9.851,10.011,10.036,9.895,9.592,9.166,8.673,8.181,7.743,7.390,
-7.123,6.912,6.708,6.460,6.126,5.689,5.160,4.576,3.989,3.451,2.998,2.640,2.357,2.107,1.834,1.487,
-1.033,.468,-.183,-.872,-1.543,-2.145,-2.648,-3.049,-3.376,-3.677,-4.007,-4.412,-4.917,-5.522,-6.197,-6.895,
--7.564,-8.162,-8.663,-9.068,-9.397,-9.684,-9.967,-10.273,-10.615,-10.987,-11.369,-11.738,-12.072,-12.362,-12.611,-12.837,
--13.064,-13.313,-13.598,-13.920,-14.267,-14.618,-14.953,-15.258,-15.532,-15.786,-16.038,-16.312,-16.621,-16.966,-17.333,-17.693,
--18.010,-18.249,-18.390,-18.426,-18.370,-18.253,-18.110,-17.978,-17.884,-17.843,-17.861,-17.934,-18.059,-18.238,-18.480,-18.800,
--19.212,-19.725,-20.332,-21.007,-21.711,-22.392,-23.002,-23.505,-23.886,-24.157,-24.350,-24.513,-24.689,-24.911,-25.189,-25.506,
--25.829,-26.115,-26.327,-26.448,-26.484,-26.470,-26.453,-26.488,-26.615,-26.853,-27.189,-27.585,-27.986,-28.335,-28.589,-28.728,
--28.761,-28.722,-28.661,-28.626,-28.654,-28.762,-28.940,-29.162,-29.395,-29.609,-29.788,-29.939,-30.085,-30.265,-30.516,-30.863,
--31.312,-31.849,-32.437,-33.029,-33.580,-34.054,-34.435,-34.726,-34.949,-35.134,-35.311,-35.503,-35.717,-35.951,-36.191,-36.419,
--36.619,-36.784,-36.914,-37.014,-37.093,-37.158,-37.209,-37.241,-37.245,-37.216,-37.153,-37.068,-36.988,-36.946,-36.979,-37.122,
--37.392,-37.791,-38.297,-38.872,-39.467,-40.033,-40.525,-40.916,-41.195,-41.368,-41.453,-41.474,-41.453,-41.410,-41.354,-41.292,
--41.223,-41.152,-41.085,-41.031,-41.005,-41.023,-41.097,-41.233,-41.432,-41.685,-41.979,-42.299,-42.631,-42.965,-43.295,-43.621,
--43.944,-44.264,-44.583,-44.900,-45.212,-45.517,-45.814,-46.105,-46.396,-46.693,-47.001,-47.322,-47.654,-47.987,-48.309,-48.608,
--48.871,-49.096,-49.286,-49.454,-49.619,-49.801,-50.016,-50.272,-50.563,-50.873,-51.179,-51.452,-51.667,-51.810,-51.878,-51.886,
--51.859,-51.828,-51.827,-51.877,-51.989,-52.156,-52.357,-52.560,-52.729,-52.832,-52.851,-52.779,-52.627,-52.420,-52.187,-51.959,
--51.760,-51.603,-51.487,-51.401,-51.325,-51.242,-51.136,-51.004,-50.855,-50.708,-50.590,-50.528,-50.545,-50.656,-50.859,-51.142,
--51.482,-51.846,-52.204,-52.530,-52.803,-53.017,-53.174,-53.286,-53.372,-53.452,-53.543,-53.661,-53.813,-53.996,-54.204,-54.421,
--54.629,-54.808,-54.940,-55.015,-55.027,-54.982,-54.893,-54.780,-54.666,-54.574,-54.520,-54.513,-54.550,-54.621,-54.710,-54.796,
--54.862,-54.899,-54.905,-54.887,-54.860,-54.840,-54.842,-54.875,-54.940,-55.031,-55.136,-55.241,-55.334,-55.410,-55.469,-55.521,
--55.577,-55.653,-55.757,-55.894,-56.060,-56.245,-56.433,-56.609,-56.760,-56.879,-56.966,-57.028,-57.077,-57.127,-57.187,-57.266,
--57.365,-57.482,-57.607,-57.732,-57.849,-57.951,-58.039,-58.114,-58.182,-58.252,-58.331,-58.424,-58.531,-58.649,-58.767,-58.873,
--58.952,-58.990,-58.979,-58.917,-58.811,-58.677,-58.539,-58.423,-58.358,-58.364,-58.455,-58.631,-58.880,-59.181,-59.504,-59.824,
--60.115,-60.365,-60.570,-60.737,-60.880,-61.016,-61.158,-61.312,-61.475,-61.634,-61.772,-61.867,-61.901,-61.862,-61.745,-61.556,
--61.307,-61.015,-60.698,-60.374,-60.054,-59.750,-59.466,-59.206,-58.970,-58.760,-58.575,-58.414,-58.277,-58.160,-58.061,-57.976,
--57.902,-57.838,-57.782,-57.735,-57.698,-57.670,-57.651,-57.637,-57.625,-57.610,-57.587,-57.555,-57.513,-57.465,-57.415,-57.365,
--57.319,-57.276,-57.231,-57.179,-57.113,-57.027,-56.919,-56.791,-56.649,-56.502,-56.359,-56.227,-56.111,-56.012,-55.928,-55.855,
--55.793,-55.739,-55.697,-55.672,-55.670,-55.696,-55.750,-55.831,-55.927,-56.027,-56.117,-56.185,-56.223,-56.228,-56.203,-56.157,
--56.099,-56.037,-55.979,-55.925,-55.876,-55.828,-55.777,-55.719,-55.654,-55.582,-55.508,-55.434,-55.363,-55.297,-55.234,-55.173,
--55.110,-55.043,-54.973,-54.902,-54.832,-54.766,-54.706,-54.651,-54.597,-54.540,-54.471,-54.386,-54.280,-54.153,-54.008,-53.850,
--53.687,-53.525,-53.367,-53.216,-53.072,-52.932,-52.794,-52.656,-52.519,-52.383,-52.253,-52.129,-52.014,-51.907,-51.805,-51.703,
--51.595,-51.478,-51.347,-51.202,-51.045,-50.878,-50.705,-50.530,-50.354,-50.180,-50.007,-49.834,-49.663,-49.494,-49.330,-49.172,
--49.024,-48.886,-48.759,-48.641,-48.528,-48.417,-48.305,-48.190,-48.071,-47.951,-47.831,-47.714,-47.599,-47.487,-47.374,-47.255,
--47.126,-46.982,-46.823,-46.649,-46.462,-46.269,-46.075,-45.885,-45.702,-45.528,-45.362,-45.200,-45.039,-44.876,-44.708,-44.534,
--44.354,-44.168,-43.978,-43.784,-43.587,-43.385,-43.179,-42.968,-42.751,-42.530,-42.305,-42.079,-41.853,-41.629,-41.407,-41.190,
--40.976,-40.768,-40.567,-40.374,-40.190,-40.018,-39.856,-39.704,-39.559,-39.417,-39.274,-39.126,-38.968,-38.800,-38.622,-38.438,
--38.252,-38.069,-37.896,-37.737,-37.596,-37.474,-37.369,-37.277,-37.193,-37.112,-37.025,-36.930,-36.822,-36.703,-36.575,-36.443,
--36.314,-36.194,-36.088,-35.996,-35.917,-35.846,-35.775,-35.699,-35.609,-35.503,-35.380,-35.245,-35.102,-34.959,-34.820,-34.687,
--34.561,-34.438,-34.314,-34.183,-34.044,-33.897,-33.747,-33.598,-33.455,-33.322,-33.196,-33.073,-32.944,-32.803,-32.642,-32.461,
--32.265,-32.065,-31.878,-31.717,-31.596,-31.518,-31.479,-31.465,-31.459,-31.439,-31.387,-31.295,-31.162,-30.997,-30.815,-30.635,
--30.474,-30.343,-30.243,-30.169,-30.111,-30.055,-29.990,-29.909,-29.813,-29.705,-29.593,-29.485,-29.385,-29.294,-29.206,-29.116,
--29.016,-28.902,-28.772,-28.633,-28.491,-28.355,-28.233,-28.126,-28.031,-27.940,-27.843,-27.730,-27.597,-27.443,-27.274,-27.103,
--26.939,-26.790,-26.658,-26.539,-26.421,-26.292,-26.138,-25.955,-25.742,-25.509,-25.274,-25.053,-24.863,-24.709,-24.592,-24.499,
--24.412,-24.313,-24.184,-24.016,-23.809,-23.574,-23.325,-23.080,-22.852,-22.651,-22.477,-22.324,-22.182,-22.039,-21.889,-21.726,
--21.551,-21.369,-21.183,-20.996,-20.807,-20.611,-20.400,-20.167,-19.907,-19.622,-19.314,-18.995,-18.675,-18.364,-18.070,-17.796,
--17.542,-17.302,-17.074,-16.852,-16.638,-16.431,-16.236,-16.055,-15.887,-15.729,-15.574,-15.414,-15.243,-15.055,-14.853,-14.641,
--14.428,-14.226,-14.039,-13.872,-13.719,-13.573,-13.419,-13.247,-13.049,-12.824,-12.579,-12.323,-12.072,-11.838,-11.628,-11.443,
--11.279,-11.124,-10.968,-10.801,-10.619,-10.423,-10.221,-10.019,-9.827,-9.649,-9.482,-9.320,-9.152,-8.966,-8.753,-8.509,
--8.233,-7.931,-7.608,-7.271,-6.920,-6.552,-6.158,-5.726,-5.249,-4.722,-4.148,-3.539,-2.912,-2.290,-1.694,-1.141,
--.641,-.195,.203,.564,.899,1.218,1.529,1.835,2.138,2.441,2.745,3.058,3.386,3.737,4.115,4.518,
-4.937,5.356,5.754,6.110,6.409,6.641,6.808,6.923,7.005,7.076,7.155,7.255,7.379,7.522,7.674,7.824,
-7.964,8.093,8.215,8.342,8.485,8.649,8.834,9.027,9.205,9.344,9.419,9.413,9.324,9.167,8.968,8.761,
-8.583,8.461,8.408,8.420,8.478,8.554,8.618,8.647,8.632,8.577,8.505,8.445,8.428,8.477,8.605,8.803,
-9.053,9.319,9.564,9.752,9.857,9.864,9.771,9.589,9.333,9.027,8.689,8.340,7.992,7.657,7.345,7.061,
-6.813,6.604,6.439,6.318,6.239,6.198,6.187,6.202,6.236,6.285,6.348,6.424,6.511,6.608,6.712,6.817,
-6.916,7.004,7.076,7.131,7.168,7.193,7.209,7.221,7.230,7.236,7.237,7.229,7.208,7.173,7.125,7.068,
-7.010,6.955,6.911,6.879,6.859,6.848,6.840,6.830,6.815,6.794,6.773,6.755,6.749,6.761,6.794,6.847,
-6.915,6.991,7.066,7.131,7.181,7.212,7.227,7.229,7.223,7.214,7.206,7.199,7.195,7.190,7.184,7.175,
-7.163,7.150,7.138,7.131,7.128,7.131,7.136,7.140,7.138,7.125,7.097,7.052,6.992,6.919,6.837,6.750,
-6.662,6.576,6.491,6.408,6.325,6.240,6.150,6.057,5.960,5.861,5.764,5.672,5.589,5.516,5.457,5.410,
-5.375,5.350,5.330,5.312,5.294,5.274,5.250,5.223,5.196,5.172,5.154,5.144,5.145,5.155,5.173,5.195,
-5.217,5.236,5.249,5.253,5.249,5.240,5.229,5.218,5.211,5.208,5.211,5.218,5.228,5.238,5.248,5.258,
-5.269,5.282,5.300,5.326,5.361,5.404,5.457,5.516,5.579,5.643,5.706,5.767,5.825,5.878,5.928,5.976,
-6.022,6.066,6.108,6.148,6.185,6.218,6.247,6.271,6.291,6.306,6.318,6.326,6.333,6.337,6.339,6.339,
-6.336,6.330,6.319,6.307,6.294,6.283,6.278,6.280,6.294,6.319,6.356,6.402,6.457,6.519,6.586,6.659,
-6.741,6.834,6.941,7.062,7.196,7.338,7.482,7.618,7.738,7.837,7.912,7.967,8.008,8.047,8.096,8.167,
-8.267,8.399,8.561,8.747,8.946,9.147,9.339,9.513,9.663,9.784,9.876,9.940,9.978,9.995,9.996,9.991,
-9.986,9.993,10.020,10.073,10.154,10.262,10.389,10.526,10.660,10.409,10.538,10.635,10.703,10.749,10.786,10.825,
-10.877,10.947,11.038,11.146,11.265,11.389,11.511,11.628,11.738,11.842,11.941,12.038,12.135,12.230,12.324,12.416,
-12.507,12.601,12.701,12.812,12.935,13.070,13.213,13.354,13.482,13.588,13.665,13.715,13.747,13.777,13.828,13.918,
-14.062,14.265,14.517,14.793,15.060,15.283,15.427,15.471,15.408,15.252,15.031,14.783,14.550,14.368,14.263,14.243,
-14.298,14.408,14.542,14.667,14.757,14.793,14.767,14.685,14.560,14.408,14.249,14.100,13.976,13.886,13.839,13.838,
-13.885,13.980,14.117,14.288,14.479,14.675,14.856,15.006,15.112,15.168,15.179,15.155,15.115,15.077,15.060,15.076,
-15.127,15.210,15.314,15.425,15.532,15.625,15.704,15.769,15.829,15.888,15.951,16.016,16.076,16.125,16.154,16.159,
-16.143,16.116,16.093,16.092,16.127,16.207,16.329,16.482,16.647,16.804,16.935,17.034,17.105,17.165,17.242,17.365,
-17.562,17.854,18.245,18.728,19.282,19.877,20.484,21.073,21.623,22.120,22.561,22.946,23.280,23.567,23.810,24.010,
-24.169,24.287,24.369,24.424,24.462,24.495,24.535,24.588,24.656,24.736,24.816,24.886,24.933,24.950,24.932,24.885,
-24.819,24.747,24.685,24.643,24.630,24.644,24.680,24.726,24.767,24.790,24.783,24.744,24.677,24.592,24.507,24.442,
-24.416,24.445,24.536,24.685,24.881,25.103,25.327,25.528,25.686,25.792,25.848,25.869,25.877,25.900,25.966,26.094,
-26.291,26.551,26.859,27.190,27.521,27.833,28.124,28.404,28.697,29.038,29.459,29.985,30.624,31.359,32.156,32.960,
-33.713,34.359,34.860,35.202,35.399,35.490,35.528,35.571,35.668,35.846,36.106,36.420,36.738,36.999,37.143,37.125,
-36.927,36.557,36.052,35.473,34.886,34.360,33.946,33.677,33.557,33.568,33.672,33.819,33.959,34.048,34.052,33.958,
-33.763,33.479,33.126,32.725,32.298,31.860,31.419,30.981,30.550,30.130,29.734,29.377,29.084,28.879,28.785,28.816,
-28.970,29.226,29.546,29.876,30.156,30.331,30.358,30.220,29.928,29.518,29.046,28.577,28.171,27.871,27.692,27.623,
-27.625,27.646,27.631,27.534,27.328,27.013,26.611,26.158,25.698,25.267,24.887,24.560,24.270,23.989,23.684,23.328,
-22.909,22.430,21.909,21.374,20.857,20.384,19.970,19.619,19.321,19.059,18.813,18.569,18.316,18.053,17.785,17.521,
-17.269,17.035,16.820,16.623,16.444,16.285,16.153,16.059,16.020,16.050,16.159,16.348,16.604,16.906,17.221,17.513,
-17.749,17.903,17.960,17.918,17.787,17.583,17.328,17.043,16.745,16.445,16.152,15.869,15.600,15.347,15.113,14.900,
-14.710,14.538,14.378,14.222,14.058,13.878,13.680,13.466,13.248,13.041,12.859,12.717,12.615,12.546,12.492,12.428,
-12.328,12.173,11.956,11.687,11.387,11.091,10.833,10.640,10.523,10.475,10.470,10.466,10.423,10.304,10.093,9.795,
-9.439,9.068,8.735,8.480,8.332,8.292,8.337,8.428,8.516,8.560,8.529,8.419,8.244,8.033,7.819,7.631,
-7.478,7.352,7.227,7.064,6.827,6.493,6.058,5.538,4.971,4.399,3.863,3.385,2.967,2.586,2.202,1.772,
-1.258,.645,-.059,-.818,-1.581,-2.292,-2.905,-3.397,-3.773,-4.064,-4.321,-4.598,-4.942,-5.377,-5.905,-6.499,
--7.119,-7.721,-8.267,-8.739,-9.137,-9.481,-9.804,-10.138,-10.508,-10.924,-11.377,-11.849,-12.314,-12.749,-13.142,-13.492,
--13.810,-14.113,-14.421,-14.746,-15.091,-15.450,-15.809,-16.155,-16.478,-16.777,-17.060,-17.340,-17.630,-17.935,-18.251,-18.560,
--18.834,-19.042,-19.157,-19.167,-19.075,-18.903,-18.688,-18.473,-18.300,-18.202,-18.199,-18.295,-18.485,-18.758,-19.100,-19.503,
--19.962,-20.473,-21.032,-21.624,-22.230,-22.821,-23.364,-23.832,-24.206,-24.486,-24.687,-24.838,-24.974,-25.128,-25.319,-25.550,
--25.805,-26.057,-26.273,-26.430,-26.519,-26.552,-26.557,-26.575,-26.644,-26.793,-27.030,-27.338,-27.685,-28.025,-28.318,-28.534,
--28.665,-28.727,-28.753,-28.785,-28.860,-29.002,-29.214,-29.481,-29.772,-30.053,-30.295,-30.485,-30.631,-30.755,-30.892,-31.077,
--31.337,-31.682,-32.105,-32.583,-33.085,-33.578,-34.041,-34.461,-34.840,-35.190,-35.526,-35.858,-36.192,-36.522,-36.835,-37.117,
--37.356,-37.544,-37.685,-37.787,-37.862,-37.917,-37.953,-37.963,-37.932,-37.846,-37.697,-37.490,-37.246,-37.008,-36.826,-36.755,
--36.842,-37.114,-37.570,-38.185,-38.910,-39.679,-40.427,-41.095,-41.643,-42.050,-42.317,-42.458,-42.496,-42.457,-42.362,-42.227,
--42.067,-41.894,-41.722,-41.570,-41.459,-41.411,-41.443,-41.561,-41.763,-42.031,-42.340,-42.663,-42.975,-43.261,-43.520,-43.762,
--44.005,-44.269,-44.569,-44.911,-45.284,-45.670,-46.042,-46.373,-46.645,-46.852,-47.005,-47.125,-47.242,-47.385,-47.576,-47.825,
--48.127,-48.468,-48.824,-49.173,-49.497,-49.787,-50.044,-50.276,-50.493,-50.701,-50.904,-51.093,-51.259,-51.388,-51.472,-51.511,
--51.518,-51.517,-51.539,-51.613,-51.762,-51.992,-52.290,-52.624,-52.950,-53.218,-53.386,-53.423,-53.325,-53.107,-52.806,-52.470,
--52.149,-51.885,-51.703,-51.608,-51.583,-51.599,-51.623,-51.621,-51.575,-51.480,-51.350,-51.211,-51.098,-51.043,-51.074,-51.203,
--51.428,-51.732,-52.089,-52.468,-52.838,-53.177,-53.469,-53.708,-53.900,-54.056,-54.192,-54.323,-54.462,-54.619,-54.798,-54.995,
--55.205,-55.415,-55.613,-55.785,-55.921,-56.015,-56.063,-56.073,-56.053,-56.016,-55.976,-55.946,-55.934,-55.943,-55.970,-56.008,
--56.046,-56.077,-56.095,-56.096,-56.083,-56.061,-56.037,-56.017,-56.002,-55.994,-55.988,-55.980,-55.967,-55.948,-55.928,-55.915,
--55.920,-55.952,-56.020,-56.127,-56.268,-56.433,-56.607,-56.777,-56.928,-57.054,-57.154,-57.231,-57.298,-57.364,-57.440,-57.532,
--57.641,-57.762,-57.886,-58.004,-58.108,-58.191,-58.254,-58.301,-58.340,-58.381,-58.433,-58.504,-58.595,-58.705,-58.827,-58.951,
--59.066,-59.160,-59.224,-59.252,-59.245,-59.207,-59.150,-59.090,-59.046,-59.035,-59.072,-59.168,-59.324,-59.535,-59.787,-60.062,
--60.339,-60.599,-60.826,-61.012,-61.157,-61.266,-61.350,-61.424,-61.500,-61.587,-61.689,-61.802,-61.919,-62.026,-62.108,-62.150,
--62.139,-62.065,-61.927,-61.726,-61.470,-61.174,-60.854,-60.527,-60.211,-59.919,-59.661,-59.440,-59.253,-59.094,-58.952,-58.819,
--58.690,-58.561,-58.436,-58.321,-58.226,-58.157,-58.121,-58.116,-58.136,-58.171,-58.207,-58.232,-58.237,-58.217,-58.173,-58.112,
--58.042,-57.970,-57.904,-57.844,-57.787,-57.729,-57.662,-57.582,-57.484,-57.371,-57.246,-57.115,-56.985,-56.862,-56.748,-56.645,
--56.553,-56.471,-56.401,-56.347,-56.312,-56.302,-56.322,-56.372,-56.448,-56.543,-56.645,-56.741,-56.821,-56.875,-56.900,-56.898,
--56.873,-56.835,-56.790,-56.743,-56.698,-56.652,-56.604,-56.548,-56.484,-56.409,-56.326,-56.237,-56.148,-56.062,-55.980,-55.904,
--55.831,-55.758,-55.683,-55.606,-55.527,-55.449,-55.376,-55.309,-55.250,-55.197,-55.145,-55.088,-55.018,-54.930,-54.821,-54.689,
--54.538,-54.375,-54.205,-54.036,-53.873,-53.718,-53.573,-53.437,-53.307,-53.182,-53.059,-52.937,-52.817,-52.699,-52.581,-52.464,
--52.346,-52.224,-52.096,-51.959,-51.813,-51.657,-51.492,-51.319,-51.140,-50.957,-50.772,-50.587,-50.405,-50.228,-50.059,-49.900,
--49.752,-49.617,-49.493,-49.378,-49.268,-49.158,-49.044,-48.922,-48.790,-48.650,-48.502,-48.350,-48.199,-48.050,-47.906,-47.765,
--47.626,-47.486,-47.341,-47.189,-47.028,-46.858,-46.680,-46.498,-46.314,-46.131,-45.950,-45.772,-45.597,-45.425,-45.252,-45.079,
--44.903,-44.723,-44.539,-44.352,-44.159,-43.963,-43.762,-43.558,-43.350,-43.138,-42.923,-42.705,-42.482,-42.254,-42.022,-41.786,
--41.546,-41.304,-41.065,-40.833,-40.611,-40.404,-40.216,-40.046,-39.894,-39.757,-39.629,-39.505,-39.377,-39.241,-39.094,-38.933,
--38.761,-38.581,-38.400,-38.224,-38.060,-37.914,-37.790,-37.688,-37.607,-37.541,-37.483,-37.424,-37.355,-37.271,-37.168,-37.046,
--36.910,-36.767,-36.624,-36.490,-36.368,-36.259,-36.160,-36.064,-35.963,-35.850,-35.720,-35.572,-35.411,-35.243,-35.078,-34.922,
--34.782,-34.658,-34.547,-34.443,-34.338,-34.225,-34.101,-33.964,-33.817,-33.665,-33.512,-33.363,-33.216,-33.071,-32.924,-32.770,
--32.610,-32.447,-32.287,-32.140,-32.017,-31.924,-31.866,-31.837,-31.828,-31.822,-31.803,-31.756,-31.673,-31.553,-31.402,-31.234,
--31.065,-30.909,-30.775,-30.668,-30.584,-30.515,-30.450,-30.379,-30.295,-30.197,-30.086,-29.967,-29.845,-29.724,-29.606,-29.487,
--29.364,-29.234,-29.095,-28.948,-28.798,-28.650,-28.511,-28.384,-28.271,-28.168,-28.068,-27.962,-27.844,-27.712,-27.566,-27.411,
--27.256,-27.105,-26.964,-26.831,-26.701,-26.564,-26.412,-26.239,-26.044,-25.833,-25.619,-25.415,-25.235,-25.085,-24.967,-24.871,
--24.781,-24.681,-24.553,-24.389,-24.188,-23.958,-23.715,-23.478,-23.263,-23.080,-22.931,-22.810,-22.703,-22.596,-22.475,-22.330,
--22.159,-21.964,-21.749,-21.520,-21.278,-21.019,-20.739,-20.429,-20.083,-19.701,-19.290,-18.865,-18.445,-18.050,-17.700,-17.406,
--17.172,-16.990,-16.848,-16.730,-16.619,-16.501,-16.368,-16.217,-16.051,-15.872,-15.685,-15.493,-15.299,-15.104,-14.911,-14.723,
--14.544,-14.380,-14.235,-14.108,-13.995,-13.886,-13.768,-13.627,-13.450,-13.233,-12.977,-12.694,-12.400,-12.113,-11.851,-11.624,
--11.433,-11.273,-11.129,-10.985,-10.827,-10.645,-10.438,-10.212,-9.980,-9.757,-9.554,-9.379,-9.230,-9.102,-8.979,-8.847,
--8.690,-8.494,-8.251,-7.956,-7.607,-7.206,-6.753,-6.252,-5.708,-5.129,-4.525,-3.912,-3.307,-2.728,-2.189,-1.701,
--1.264,-.874,-.518,-.179,.157,.501,.857,1.222,1.586,1.939,2.269,2.574,2.854,3.121,3.387,3.668,
-3.974,4.309,4.666,5.034,5.394,5.727,6.021,6.268,6.473,6.644,6.798,6.950,7.113,7.292,7.489,7.697,
-7.910,8.120,8.324,8.523,8.720,8.918,9.115,9.304,9.471,9.595,9.655,9.634,9.523,9.328,9.069,8.777,
-8.489,8.242,8.063,7.965,7.943,7.978,8.042,8.105,8.141,8.138,8.097,8.034,7.975,7.947,7.973,8.064,
-8.217,8.415,8.630,8.826,8.972,9.041,9.018,8.901,8.698,8.426,8.106,7.762,7.414,7.079,6.769,6.492,
-6.255,6.058,5.902,5.785,5.702,5.648,5.619,5.608,5.613,5.630,5.659,5.703,5.764,5.841,5.936,6.044,
-6.160,6.276,6.384,6.478,6.554,6.611,6.649,6.674,6.687,6.692,6.688,6.675,6.649,6.608,6.549,6.475,
-6.388,6.295,6.203,6.120,6.050,5.998,5.962,5.940,5.929,5.924,5.923,5.927,5.938,5.957,5.990,6.036,
-6.094,6.162,6.233,6.302,6.362,6.410,6.444,6.467,6.481,6.492,6.505,6.522,6.544,6.571,6.600,6.625,
-6.645,6.656,6.658,6.651,6.637,6.620,6.601,6.581,6.561,6.539,6.512,6.478,6.435,6.379,6.311,6.230,
-6.138,6.036,5.928,5.815,5.702,5.589,5.478,5.372,5.270,5.174,5.083,4.998,4.919,4.848,4.785,4.732,
-4.690,4.658,4.638,4.627,4.622,4.620,4.619,4.614,4.605,4.592,4.575,4.558,4.545,4.539,4.542,4.556,
-4.579,4.608,4.640,4.670,4.694,4.710,4.718,4.719,4.715,4.711,4.708,4.710,4.718,4.731,4.749,4.771,
-4.795,4.820,4.846,4.874,4.906,4.941,4.983,5.031,5.085,5.146,5.212,5.281,5.352,5.423,5.493,5.560,
-5.624,5.683,5.739,5.790,5.837,5.881,5.921,5.959,5.994,6.027,6.056,6.081,6.101,6.116,6.125,6.127,
-6.123,6.113,6.101,6.088,6.077,6.073,6.078,6.096,6.127,6.173,6.233,6.304,6.384,6.470,6.560,6.654,
-6.752,6.855,6.964,7.082,7.208,7.341,7.476,7.608,7.730,7.836,7.924,7.992,8.042,8.082,8.119,8.163,
-8.224,8.308,8.419,8.556,8.713,8.883,9.055,9.217,9.359,9.471,9.548,9.587,9.592,9.568,9.525,9.477,
-9.437,9.421,9.438,9.497,9.598,9.737,9.902,10.079,10.253,10.409,10.229,10.326,10.383,10.410,10.420,10.428,
-10.449,10.491,10.560,10.654,10.771,10.902,11.043,11.189,11.339,11.491,11.647,11.805,11.963,12.117,12.258,12.381,
-12.482,12.560,12.620,12.671,12.724,12.791,12.876,12.982,13.103,13.227,13.343,13.441,13.515,13.569,13.617,13.677,
-13.768,13.909,14.104,14.348,14.621,14.893,15.128,15.292,15.363,15.331,15.206,15.014,14.791,14.578,14.412,14.315,
-14.298,14.352,14.456,14.577,14.686,14.755,14.767,14.720,14.620,14.484,14.335,14.193,14.077,13.999,13.964,13.974,
-14.025,14.111,14.225,14.360,14.507,14.659,14.806,14.937,15.046,15.128,15.180,15.208,15.221,15.229,15.245,15.279,
-15.337,15.419,15.518,15.627,15.733,15.829,15.908,15.970,16.018,16.058,16.095,16.131,16.166,16.197,16.217,16.223,
-16.214,16.193,16.171,16.160,16.173,16.219,16.302,16.417,16.554,16.699,16.837,16.963,17.078,17.197,17.341,17.537,
-17.809,18.175,18.637,19.181,19.781,20.399,20.997,21.541,22.011,22.402,22.724,22.998,23.250,23.506,23.781,24.079,
-24.388,24.687,24.951,25.151,25.270,25.300,25.246,25.122,24.952,24.762,24.573,24.402,24.256,24.135,24.034,23.946,
-23.865,23.788,23.719,23.666,23.638,23.644,23.691,23.777,23.896,24.035,24.177,24.304,24.402,24.464,24.489,24.487,
-24.473,24.466,24.486,24.548,24.659,24.820,25.019,25.240,25.464,25.671,25.850,25.993,26.105,26.197,26.282,26.377,
-26.491,26.627,26.781,26.943,27.098,27.236,27.357,27.468,27.593,27.761,28.008,28.364,28.847,29.456,30.169,30.944,
-31.726,32.457,33.086,33.580,33.930,34.151,34.281,34.368,34.462,34.601,34.803,35.059,35.339,35.593,35.767,35.811,
-35.694,35.409,34.976,34.443,33.870,33.327,32.875,32.560,32.402,32.399,32.524,32.734,32.975,33.197,33.355,33.418,
-33.372,33.215,32.956,32.613,32.205,31.748,31.256,30.742,30.215,29.687,29.174,28.698,28.286,27.972,27.783,27.744,
-27.864,28.133,28.522,28.981,29.449,29.859,30.152,30.283,30.236,30.021,29.675,29.254,28.822,28.438,28.145,27.958,
-27.867,27.839,27.822,27.765,27.624,27.373,27.011,26.556,26.045,25.517,25.011,24.548,24.137,23.766,23.413,23.051,
-22.657,22.219,21.738,21.230,20.718,20.230,19.786,19.397,19.062,18.768,18.498,18.229,17.948,17.648,17.331,17.010,
-16.702,16.422,16.186,15.998,15.859,15.765,15.709,15.688,15.699,15.747,15.838,15.979,16.172,16.415,16.696,16.996,
-17.290,17.554,17.764,17.903,17.961,17.937,17.837,17.671,17.451,17.189,16.899,16.592,16.277,15.965,15.667,15.390,
-15.141,14.920,14.725,14.545,14.369,14.186,13.985,13.767,13.538,13.315,13.117,12.966,12.876,12.850,12.878,12.936,
-12.987,12.997,12.933,12.779,12.538,12.228,11.885,11.551,11.263,11.048,10.910,10.834,10.787,10.729,10.617,10.425,
-10.142,9.782,9.375,8.964,8.592,8.293,8.086,7.968,7.921,7.917,7.926,7.923,7.897,7.849,7.788,7.728,
-7.677,7.634,7.583,7.501,7.357,7.127,6.797,6.371,5.870,5.328,4.781,4.261,3.783,3.344,2.920,2.476,
-1.974,1.385,.700,-.066,-.878,-1.686,-2.435,-3.084,-3.610,-4.016,-4.332,-4.601,-4.875,-5.196,-5.591,-6.065,
--6.599,-7.163,-7.717,-8.232,-8.689,-9.088,-9.444,-9.785,-10.139,-10.527,-10.960,-11.434,-11.936,-12.442,-12.934,-13.395,
--13.821,-14.216,-14.590,-14.954,-15.317,-15.683,-16.047,-16.401,-16.738,-17.051,-17.342,-17.616,-17.885,-18.158,-18.437,-18.718,
--18.985,-19.214,-19.379,-19.459,-19.442,-19.335,-19.156,-18.941,-18.732,-18.569,-18.488,-18.512,-18.650,-18.898,-19.244,-19.671,
--20.159,-20.690,-21.249,-21.820,-22.386,-22.930,-23.432,-23.874,-24.243,-24.534,-24.753,-24.915,-25.042,-25.158,-25.286,-25.436,
--25.610,-25.797,-25.980,-26.142,-26.270,-26.364,-26.435,-26.501,-26.590,-26.721,-26.908,-27.149,-27.426,-27.714,-27.982,-28.207,
--28.375,-28.490,-28.569,-28.642,-28.739,-28.883,-29.087,-29.345,-29.640,-29.945,-30.231,-30.479,-30.682,-30.844,-30.987,-31.134,
--31.312,-31.537,-31.818,-32.151,-32.524,-32.923,-33.333,-33.748,-34.167,-34.592,-35.030,-35.480,-35.936,-36.383,-36.803,-37.174,
--37.479,-37.712,-37.876,-37.985,-38.057,-38.110,-38.154,-38.184,-38.187,-38.141,-38.023,-37.823,-37.545,-37.218,-36.890,-36.624,
--36.487,-36.532,-36.793,-37.273,-37.945,-38.754,-39.630,-40.496,-41.287,-41.952,-42.462,-42.811,-43.007,-43.071,-43.027,-42.898,
--42.707,-42.477,-42.229,-41.989,-41.787,-41.651,-41.605,-41.664,-41.829,-42.084,-42.400,-42.739,-43.065,-43.349,-43.580,-43.765,
--43.927,-44.098,-44.314,-44.595,-44.948,-45.357,-45.789,-46.201,-46.550,-46.808,-46.965,-47.036,-47.057,-47.075,-47.140,-47.292,
--47.551,-47.912,-48.350,-48.825,-49.292,-49.711,-50.055,-50.316,-50.500,-50.628,-50.721,-50.799,-50.874,-50.947,-51.013,-51.065,
--51.102,-51.128,-51.160,-51.223,-51.343,-51.539,-51.816,-52.161,-52.542,-52.913,-53.220,-53.418,-53.477,-53.388,-53.173,-52.871,
--52.540,-52.236,-52.005,-51.876,-51.852,-51.911,-52.016,-52.122,-52.190,-52.191,-52.122,-51.995,-51.843,-51.708,-51.630,-51.643,
--51.763,-51.989,-52.304,-52.675,-53.068,-53.448,-53.787,-54.070,-54.292,-54.462,-54.594,-54.707,-54.820,-54.949,-55.104,-55.289,
--55.502,-55.736,-55.982,-56.228,-56.460,-56.668,-56.842,-56.975,-57.064,-57.113,-57.125,-57.108,-57.073,-57.028,-56.983,-56.944,
--56.914,-56.895,-56.887,-56.887,-56.894,-56.903,-56.913,-56.919,-56.917,-56.903,-56.872,-56.823,-56.756,-56.673,-56.584,-56.498,
--56.428,-56.386,-56.382,-56.421,-56.500,-56.614,-56.750,-56.894,-57.034,-57.162,-57.275,-57.376,-57.472,-57.573,-57.690,-57.826,
--57.981,-58.150,-58.321,-58.481,-58.614,-58.713,-58.772,-58.793,-58.786,-58.765,-58.744,-58.737,-58.758,-58.812,-58.900,-59.019,
--59.158,-59.307,-59.452,-59.582,-59.686,-59.758,-59.795,-59.800,-59.777,-59.740,-59.702,-59.678,-59.683,-59.731,-59.830,-59.980,
--60.178,-60.411,-60.663,-60.915,-61.150,-61.351,-61.509,-61.622,-61.696,-61.741,-61.771,-61.804,-61.852,-61.922,-62.014,-62.120,
--62.226,-62.313,-62.359,-62.349,-62.271,-62.124,-61.914,-61.657,-61.375,-61.091,-60.824,-60.589,-60.391,-60.228,-60.089,-59.961,
--59.829,-59.682,-59.519,-59.342,-59.163,-58.996,-58.857,-58.756,-58.699,-58.683,-58.698,-58.729,-58.762,-58.781,-58.779,-58.752,
--58.703,-58.640,-58.570,-58.502,-58.438,-58.380,-58.324,-58.265,-58.199,-58.121,-58.032,-57.933,-57.828,-57.723,-57.623,-57.530,
--57.446,-57.370,-57.303,-57.245,-57.197,-57.161,-57.141,-57.139,-57.157,-57.192,-57.241,-57.297,-57.351,-57.397,-57.431,-57.450,
--57.455,-57.450,-57.438,-57.423,-57.404,-57.382,-57.350,-57.305,-57.243,-57.161,-57.063,-56.953,-56.837,-56.724,-56.621,-56.531,
--56.455,-56.391,-56.334,-56.277,-56.216,-56.147,-56.072,-55.991,-55.909,-55.829,-55.753,-55.681,-55.609,-55.533,-55.448,-55.348,
--55.231,-55.096,-54.946,-54.783,-54.615,-54.446,-54.282,-54.124,-53.974,-53.833,-53.698,-53.569,-53.443,-53.319,-53.196,-53.073,
--52.949,-52.823,-52.693,-52.560,-52.421,-52.278,-52.128,-51.973,-51.813,-51.649,-51.482,-51.312,-51.139,-50.966,-50.795,-50.626,
--50.464,-50.310,-50.166,-50.033,-49.911,-49.797,-49.687,-49.577,-49.461,-49.336,-49.199,-49.048,-48.885,-48.714,-48.537,-48.360,
--48.185,-48.016,-47.852,-47.693,-47.535,-47.376,-47.213,-47.042,-46.862,-46.674,-46.479,-46.281,-46.081,-45.884,-45.692,-45.508,
--45.331,-45.160,-44.993,-44.827,-44.658,-44.485,-44.305,-44.116,-43.920,-43.717,-43.508,-43.294,-43.075,-42.853,-42.625,-42.393,
--42.156,-41.913,-41.667,-41.420,-41.175,-40.935,-40.706,-40.491,-40.292,-40.111,-39.947,-39.800,-39.667,-39.543,-39.424,-39.307,
--39.186,-39.059,-38.925,-38.785,-38.640,-38.497,-38.359,-38.234,-38.126,-38.037,-37.966,-37.909,-37.857,-37.803,-37.736,-37.652,
--37.545,-37.419,-37.277,-37.127,-36.979,-36.837,-36.705,-36.582,-36.462,-36.336,-36.197,-36.038,-35.859,-35.662,-35.457,-35.256,
--35.069,-34.908,-34.775,-34.669,-34.583,-34.505,-34.423,-34.326,-34.207,-34.065,-33.903,-33.730,-33.555,-33.385,-33.228,-33.086,
--32.958,-32.844,-32.739,-32.643,-32.555,-32.476,-32.409,-32.352,-32.306,-32.265,-32.223,-32.173,-32.107,-32.021,-31.912,-31.786,
--31.646,-31.502,-31.361,-31.230,-31.110,-31.003,-30.904,-30.808,-30.712,-30.611,-30.505,-30.394,-30.279,-30.163,-30.046,-29.927,
--29.804,-29.675,-29.539,-29.393,-29.241,-29.087,-28.934,-28.786,-28.647,-28.517,-28.394,-28.272,-28.149,-28.020,-27.883,-27.739,
--27.589,-27.437,-27.284,-27.128,-26.969,-26.803,-26.626,-26.438,-26.241,-26.042,-25.850,-25.677,-25.531,-25.415,-25.328,-25.258,
--25.190,-25.107,-24.994,-24.844,-24.656,-24.440,-24.213,-23.995,-23.802,-23.646,-23.527,-23.436,-23.357,-23.269,-23.155,-23.001,
--22.803,-22.564,-22.293,-22.000,-21.691,-21.366,-21.022,-20.647,-20.230,-19.766,-19.255,-18.711,-18.158,-17.626,-17.147,-16.751,
--16.453,-16.259,-16.156,-16.122,-16.127,-16.138,-16.129,-16.081,-15.984,-15.841,-15.660,-15.455,-15.238,-15.023,-14.820,-14.634,
--14.469,-14.325,-14.204,-14.100,-14.009,-13.923,-13.830,-13.720,-13.580,-13.404,-13.188,-12.936,-12.661,-12.375,-12.096,-11.839,
--11.611,-11.414,-11.241,-11.079,-10.912,-10.725,-10.511,-10.268,-10.003,-9.730,-9.465,-9.226,-9.022,-8.857,-8.727,-8.618,
--8.510,-8.384,-8.217,-7.993,-7.701,-7.335,-6.897,-6.394,-5.840,-5.252,-4.650,-4.056,-3.490,-2.970,-2.507,-2.102,
--1.750,-1.435,-1.137,-.832,-.501,-.131,.280,.721,1.174,1.613,2.012,2.355,2.633,2.852,3.031,3.195,
-3.374,3.591,3.861,4.186,4.554,4.947,5.340,5.711,6.045,6.337,6.594,6.831,7.064,7.311,7.582,7.879,
-8.198,8.524,8.842,9.136,9.394,9.608,9.771,9.884,9.944,9.949,9.897,9.786,9.614,9.387,9.115,8.817,
-8.516,8.237,8.002,7.827,7.718,7.667,7.659,7.671,7.681,7.673,7.637,7.577,7.506,7.443,7.409,7.421,
-7.487,7.603,7.755,7.920,8.070,8.178,8.220,8.182,8.060,7.858,7.589,7.271,6.923,6.565,6.216,5.890,
-5.600,5.355,5.158,5.011,4.912,4.855,4.834,4.839,4.862,4.896,4.938,4.986,5.041,5.106,5.183,5.274,
-5.378,5.490,5.606,5.717,5.816,5.899,5.963,6.008,6.034,6.046,6.045,6.032,6.007,5.970,5.917,5.848,
-5.763,5.667,5.565,5.464,5.371,5.294,5.236,5.198,5.180,5.177,5.185,5.201,5.222,5.246,5.275,5.309,
-5.351,5.400,5.455,5.515,5.574,5.630,5.679,5.719,5.750,5.774,5.794,5.814,5.836,5.862,5.892,5.925,
-5.957,5.984,6.004,6.012,6.008,5.992,5.965,5.929,5.887,5.843,5.796,5.750,5.702,5.652,5.597,5.534,
-5.462,5.379,5.284,5.178,5.063,4.943,4.822,4.703,4.591,4.486,4.390,4.303,4.224,4.151,4.084,4.023,
-3.968,3.920,3.882,3.856,3.843,3.841,3.849,3.863,3.881,3.897,3.909,3.916,3.918,3.918,3.918,3.922,
-3.933,3.951,3.977,4.009,4.043,4.076,4.105,4.129,4.146,4.158,4.167,4.176,4.187,4.202,4.222,4.248,
-4.279,4.314,4.350,4.387,4.425,4.463,4.503,4.545,4.592,4.645,4.704,4.769,4.841,4.917,4.995,5.073,
-5.149,5.221,5.289,5.351,5.410,5.465,5.518,5.570,5.622,5.673,5.723,5.770,5.812,5.847,5.875,5.894,
-5.907,5.915,5.920,5.926,5.936,5.953,5.980,6.017,6.066,6.126,6.196,6.275,6.361,6.453,6.550,6.650,
-6.754,6.861,6.970,7.083,7.200,7.320,7.442,7.567,7.693,7.818,7.941,8.059,8.171,8.274,8.370,8.456,
-8.534,8.606,8.674,8.740,8.807,8.874,8.941,9.006,9.065,9.113,9.145,9.156,9.146,9.116,9.073,9.026,
-8.989,8.977,9.000,9.068,9.183,9.339,9.525,9.725,9.920,10.092,10.229,10.215,10.253,10.250,10.222,10.185,
-10.159,10.155,10.183,10.244,10.336,10.453,10.588,10.737,10.898,11.070,11.257,11.457,11.669,11.887,12.101,12.299,
-12.469,12.603,12.700,12.763,12.803,12.835,12.871,12.923,12.994,13.082,13.177,13.269,13.349,13.412,13.463,13.515,
-13.587,13.699,13.865,14.091,14.368,14.673,14.973,15.228,15.405,15.480,15.446,15.314,15.115,14.890,14.684,14.535,
-14.470,14.498,14.606,14.770,14.953,15.121,15.242,15.298,15.285,15.212,15.099,14.969,14.845,14.744,14.677,14.644,
-14.641,14.659,14.689,14.724,14.759,14.795,14.833,14.877,14.928,14.988,15.056,15.132,15.212,15.296,15.383,15.471,
-15.562,15.653,15.742,15.828,15.907,15.976,16.036,16.088,16.136,16.184,16.238,16.301,16.374,16.454,16.535,16.612,
-16.679,16.733,16.776,16.810,16.845,16.886,16.941,17.010,17.093,17.185,17.283,17.386,17.497,17.630,17.801,18.031,
-18.338,18.735,19.220,19.779,20.381,20.988,21.558,22.052,22.445,22.731,22.921,23.043,23.138,23.244,23.396,23.611,
-23.887,24.204,24.526,24.810,25.015,25.111,25.083,24.934,24.685,24.366,24.016,23.669,23.352,23.082,22.863,22.691,
-22.557,22.453,22.373,22.317,22.293,22.310,22.378,22.504,22.687,22.918,23.181,23.452,23.710,23.932,24.107,24.228,
-24.304,24.350,24.385,24.433,24.512,24.634,24.805,25.020,25.268,25.534,25.803,26.064,26.309,26.536,26.745,26.938,
-27.116,27.274,27.403,27.492,27.529,27.508,27.429,27.307,27.167,27.047,26.991,27.040,27.226,27.565,28.053,28.662,
-29.348,30.058,30.736,31.337,31.833,32.218,32.509,32.735,32.936,33.148,33.394,33.677,33.981,34.271,34.499,34.618,
-34.590,34.398,34.046,33.565,33.003,32.423,31.889,31.455,31.158,31.014,31.016,31.134,31.326,31.545,31.742,31.879,
-31.928,31.878,31.729,31.491,31.184,30.825,30.433,30.022,29.605,29.187,28.777,28.383,28.018,27.698,27.446,27.281,
-27.224,27.285,27.465,27.748,28.107,28.501,28.884,29.210,29.441,29.555,29.546,29.427,29.226,28.977,28.715,28.467,
-28.246,28.050,27.862,27.657,27.409,27.098,26.715,26.265,25.767,25.248,24.734,24.249,23.806,23.403,23.028,22.661,
-22.283,21.876,21.435,20.966,20.484,20.011,19.568,19.170,18.823,18.522,18.252,17.995,17.731,17.449,17.145,16.826,
-16.507,16.208,15.949,15.743,15.598,15.513,15.481,15.489,15.528,15.590,15.671,15.775,15.906,16.068,16.263,16.486,
-16.728,16.973,17.205,17.406,17.561,17.660,17.699,17.676,17.596,17.463,17.284,17.067,16.818,16.547,16.263,15.978,
-15.700,15.440,15.202,14.987,14.790,14.604,14.419,14.228,14.030,13.829,13.637,13.470,13.343,13.268,13.247,13.270,
-13.313,13.348,13.343,13.269,13.113,12.876,12.575,12.243,11.917,11.631,11.411,11.264,11.177,11.123,11.067,10.971,
-10.809,10.569,10.259,9.901,9.530,9.183,8.888,8.664,8.510,8.415,8.358,8.314,8.266,8.202,8.124,8.038,
-7.954,7.878,7.806,7.724,7.610,7.439,7.188,6.846,6.413,5.909,5.361,4.804,4.266,3.763,3.295,2.844,
-2.383,1.879,1.306,.651,-.076,-.850,-1.630,-2.373,-3.040,-3.609,-4.075,-4.456,-4.786,-5.101,-5.439,-5.823,
--6.262,-6.747,-7.258,-7.766,-8.249,-8.692,-9.093,-9.461,-9.816,-10.178,-10.566,-10.989,-11.445,-11.925,-12.414,-12.894,
--13.355,-13.788,-14.194,-14.578,-14.947,-15.305,-15.654,-15.990,-16.309,-16.604,-16.873,-17.118,-17.345,-17.565,-17.787,-18.017,
--18.253,-18.484,-18.694,-18.863,-18.972,-19.011,-18.982,-18.899,-18.789,-18.685,-18.623,-18.634,-18.741,-18.952,-19.264,-19.664,
--20.130,-20.638,-21.163,-21.685,-22.187,-22.655,-23.082,-23.460,-23.789,-24.068,-24.303,-24.500,-24.671,-24.826,-24.975,-25.126,
--25.281,-25.439,-25.595,-25.742,-25.877,-25.999,-26.115,-26.233,-26.366,-26.525,-26.716,-26.938,-27.182,-27.432,-27.672,-27.886,
--28.066,-28.211,-28.333,-28.448,-28.574,-28.730,-28.923,-29.154,-29.412,-29.683,-29.948,-30.194,-30.413,-30.607,-30.785,-30.962,
--31.152,-31.365,-31.605,-31.871,-32.155,-32.452,-32.759,-33.079,-33.420,-33.793,-34.207,-34.665,-35.157,-35.662,-36.152,-36.594,
--36.960,-37.231,-37.407,-37.501,-37.541,-37.559,-37.581,-37.622,-37.680,-37.737,-37.762,-37.724,-37.602,-37.393,-37.120,-36.829,
--36.583,-36.451,-36.492,-36.746,-37.221,-37.894,-38.714,-39.610,-40.504,-41.327,-42.021,-42.553,-42.909,-43.096,-43.134,-43.049,
--42.873,-42.635,-42.368,-42.101,-41.867,-41.694,-41.609,-41.629,-41.760,-41.990,-42.294,-42.634,-42.970,-43.265,-43.497,-43.662,
--43.777,-43.877,-44.002,-44.192,-44.471,-44.841,-45.284,-45.760,-46.220,-46.617,-46.921,-47.122,-47.239,-47.311,-47.390,-47.527,
--47.759,-48.100,-48.539,-49.040,-49.552,-50.021,-50.404,-50.677,-50.839,-50.908,-50.920,-50.914,-50.921,-50.963,-51.043,-51.153,
--51.275,-51.395,-51.503,-51.604,-51.711,-51.847,-52.030,-52.271,-52.564,-52.888,-53.203,-53.467,-53.637,-53.686,-53.608,-53.422,
--53.165,-52.890,-52.650,-52.488,-52.425,-52.461,-52.570,-52.712,-52.842,-52.918,-52.919,-52.842,-52.707,-52.554,-52.426,-52.369,
--52.414,-52.572,-52.836,-53.178,-53.559,-53.935,-54.267,-54.529,-54.709,-54.811,-54.854,-54.865,-54.871,-54.900,-54.972,-55.099,
--55.283,-55.518,-55.793,-56.094,-56.406,-56.712,-56.998,-57.252,-57.465,-57.630,-57.743,-57.805,-57.820,-57.794,-57.736,-57.659,
--57.573,-57.489,-57.416,-57.362,-57.329,-57.319,-57.329,-57.354,-57.385,-57.415,-57.434,-57.435,-57.414,-57.368,-57.301,-57.219,
--57.132,-57.052,-56.991,-56.957,-56.956,-56.988,-57.049,-57.132,-57.226,-57.325,-57.422,-57.518,-57.615,-57.720,-57.842,-57.986,
--58.156,-58.349,-58.557,-58.767,-58.964,-59.132,-59.258,-59.336,-59.365,-59.352,-59.309,-59.253,-59.202,-59.172,-59.177,-59.225,
--59.319,-59.455,-59.625,-59.815,-60.009,-60.189,-60.340,-60.448,-60.503,-60.504,-60.454,-60.365,-60.256,-60.150,-60.072,-60.042,
--60.080,-60.192,-60.377,-60.622,-60.908,-61.208,-61.494,-61.742,-61.935,-62.066,-62.138,-62.163,-62.162,-62.155,-62.161,-62.192,
--62.251,-62.332,-62.419,-62.491,-62.529,-62.515,-62.441,-62.306,-62.122,-61.906,-61.680,-61.465,-61.277,-61.123,-61.001,-60.901,
--60.808,-60.705,-60.579,-60.424,-60.239,-60.035,-59.826,-59.628,-59.458,-59.325,-59.235,-59.185,-59.166,-59.166,-59.173,-59.176,
--59.169,-59.150,-59.118,-59.077,-59.030,-58.978,-58.923,-58.864,-58.800,-58.729,-58.652,-58.572,-58.492,-58.416,-58.350,-58.295,
--58.252,-58.219,-58.194,-58.172,-58.149,-58.125,-58.099,-58.072,-58.046,-58.022,-58.001,-57.983,-57.968,-57.953,-57.937,-57.922,
--57.908,-57.899,-57.896,-57.901,-57.913,-57.927,-57.936,-57.932,-57.908,-57.856,-57.774,-57.665,-57.536,-57.397,-57.260,-57.135,
--57.029,-56.946,-56.883,-56.834,-56.791,-56.746,-56.691,-56.623,-56.542,-56.450,-56.351,-56.251,-56.154,-56.061,-55.971,-55.883,
--55.791,-55.691,-55.580,-55.455,-55.316,-55.165,-55.005,-54.838,-54.670,-54.503,-54.340,-54.182,-54.031,-53.887,-53.748,-53.614,
--53.482,-53.352,-53.220,-53.087,-52.950,-52.811,-52.669,-52.526,-52.383,-52.241,-52.101,-51.961,-51.819,-51.674,-51.523,-51.365,
--51.199,-51.029,-50.857,-50.688,-50.527,-50.377,-50.240,-50.116,-50.002,-49.891,-49.778,-49.656,-49.520,-49.367,-49.198,-49.015,
--48.823,-48.628,-48.435,-48.248,-48.067,-47.892,-47.719,-47.542,-47.359,-47.166,-46.960,-46.745,-46.524,-46.303,-46.087,-45.883,
--45.693,-45.519,-45.358,-45.207,-45.059,-44.909,-44.752,-44.583,-44.401,-44.207,-44.002,-43.789,-43.572,-43.353,-43.135,-42.918,
--42.702,-42.487,-42.271,-42.052,-41.831,-41.605,-41.377,-41.146,-40.916,-40.689,-40.471,-40.266,-40.080,-39.915,-39.775,-39.659,
--39.563,-39.482,-39.406,-39.329,-39.241,-39.138,-39.018,-38.884,-38.741,-38.596,-38.457,-38.328,-38.211,-38.103,-37.998,-37.889,
--37.768,-37.631,-37.478,-37.313,-37.145,-36.984,-36.836,-36.708,-36.599,-36.503,-36.409,-36.305,-36.181,-36.029,-35.851,-35.652,
--35.446,-35.247,-35.069,-34.923,-34.810,-34.726,-34.661,-34.599,-34.524,-34.427,-34.299,-34.145,-33.972,-33.792,-33.620,-33.469,
--33.345,-33.253,-33.188,-33.143,-33.107,-33.071,-33.027,-32.971,-32.901,-32.818,-32.727,-32.629,-32.528,-32.426,-32.321,-32.214,
--32.104,-31.989,-31.870,-31.746,-31.619,-31.490,-31.360,-31.231,-31.104,-30.980,-30.860,-30.746,-30.637,-30.532,-30.431,-30.331,
--30.228,-30.120,-30.002,-29.873,-29.732,-29.579,-29.417,-29.250,-29.080,-28.911,-28.745,-28.584,-28.428,-28.279,-28.134,-27.994,
--27.856,-27.718,-27.576,-27.425,-27.262,-27.081,-26.884,-26.671,-26.451,-26.234,-26.032,-25.858,-25.720,-25.622,-25.557,-25.515,
--25.479,-25.429,-25.352,-25.238,-25.089,-24.915,-24.733,-24.563,-24.422,-24.318,-24.250,-24.204,-24.157,-24.084,-23.961,-23.774,
--23.517,-23.199,-22.838,-22.454,-22.068,-21.690,-21.320,-20.946,-20.552,-20.117,-19.626,-19.078,-18.485,-17.875,-17.285,-16.757,
--16.325,-16.013,-15.826,-15.751,-15.761,-15.815,-15.875,-15.904,-15.881,-15.794,-15.649,-15.459,-15.246,-15.030,-14.828,-14.652,
--14.506,-14.386,-14.287,-14.201,-14.118,-14.031,-13.934,-13.820,-13.686,-13.527,-13.342,-13.131,-12.896,-12.643,-12.379,-12.113,
--11.851,-11.600,-11.358,-11.123,-10.888,-10.644,-10.384,-10.105,-9.809,-9.501,-9.194,-8.901,-8.635,-8.405,-8.216,-8.061,
--7.931,-7.808,-7.672,-7.502,-7.280,-6.994,-6.638,-6.215,-5.734,-5.212,-4.673,-4.139,-3.635,-3.180,-2.786,-2.454,
--2.176,-1.933,-1.698,-1.441,-1.135,-.761,-.314,.199,.755,1.319,1.855,2.328,2.714,3.004,3.207,3.347,
-3.458,3.578,3.740,3.965,4.262,4.621,5.024,5.444,5.856,6.245,6.602,6.933,7.253,7.581,7.935,8.325,
-8.750,9.200,9.650,10.073,10.438,10.718,10.897,10.966,10.926,10.789,10.572,10.294,9.974,9.633,9.287,8.951,
-8.638,8.356,8.114,7.915,7.757,7.633,7.536,7.452,7.370,7.280,7.179,7.070,6.961,6.865,6.798,6.773,
-6.796,6.869,6.983,7.122,7.263,7.384,7.462,7.480,7.425,7.294,7.091,6.825,6.509,6.158,5.790,5.423,
-5.071,4.748,4.468,4.238,4.064,3.947,3.884,3.869,3.892,3.944,4.015,4.096,4.182,4.272,4.364,4.461,
-4.564,4.672,4.784,4.896,5.003,5.100,5.183,5.248,5.294,5.323,5.336,5.335,5.323,5.300,5.267,5.222,
-5.165,5.099,5.024,4.945,4.867,4.796,4.737,4.692,4.663,4.648,4.645,4.649,4.657,4.667,4.677,4.690,
-4.708,4.732,4.767,4.812,4.866,4.926,4.988,5.047,5.098,5.138,5.165,5.181,5.188,5.190,5.190,5.193,
-5.201,5.214,5.231,5.249,5.265,5.274,5.273,5.260,5.234,5.195,5.145,5.086,5.022,4.955,4.886,4.815,
-4.743,4.666,4.583,4.493,4.394,4.287,4.174,4.058,3.943,3.831,3.727,3.632,3.547,3.470,3.401,3.337,
-3.278,3.224,3.175,3.133,3.102,3.082,3.076,3.083,3.101,3.128,3.160,3.193,3.225,3.252,3.274,3.293,
-3.309,3.326,3.346,3.368,3.395,3.425,3.456,3.486,3.515,3.540,3.562,3.581,3.599,3.619,3.641,3.668,
-3.700,3.738,3.782,3.829,3.880,3.932,3.987,4.042,4.100,4.161,4.225,4.294,4.367,4.443,4.522,4.603,
-4.682,4.758,4.832,4.901,4.968,5.032,5.096,5.160,5.226,5.292,5.358,5.421,5.478,5.529,5.571,5.605,
-5.633,5.657,5.684,5.715,5.755,5.807,5.870,5.943,6.025,6.112,6.202,6.293,6.384,6.475,6.569,6.665,
-6.766,6.870,6.976,7.085,7.193,7.301,7.409,7.518,7.633,7.757,7.895,8.049,8.217,8.397,8.581,8.759,
-8.920,9.053,9.152,9.211,9.233,9.221,9.184,9.131,9.071,9.011,8.955,8.906,8.862,8.824,8.792,8.770,
-8.764,8.782,8.833,8.922,9.053,9.222,9.417,9.624,9.823,9.997,10.130,10.215,10.528,10.526,10.486,10.425,
-10.363,10.317,10.300,10.317,10.369,10.450,10.553,10.672,10.803,10.946,11.106,11.286,11.489,11.714,11.957,12.207,
-12.449,12.671,12.861,13.012,13.127,13.210,13.273,13.326,13.377,13.429,13.480,13.525,13.556,13.571,13.571,13.569,
-13.581,13.632,13.741,13.923,14.179,14.497,14.846,15.189,15.483,15.689,15.784,15.762,15.637,15.444,15.229,15.041,
-14.923,14.902,14.989,15.172,15.423,15.703,15.972,16.196,16.351,16.430,16.437,16.389,16.305,16.203,16.098,15.995,
-15.894,15.790,15.676,15.547,15.404,15.256,15.115,14.995,14.913,14.879,14.898,14.969,15.082,15.225,15.382,15.538,
-15.681,15.802,15.899,15.972,16.026,16.066,16.100,16.137,16.184,16.246,16.329,16.432,16.557,16.699,16.854,17.015,
-17.175,17.330,17.473,17.605,17.725,17.834,17.936,18.031,18.122,18.209,18.295,18.382,18.480,18.599,18.755,18.962,
-19.236,19.583,20.002,20.478,20.986,21.492,21.958,22.348,22.637,22.816,22.894,22.896,22.862,22.833,22.850,22.939,
-23.108,23.345,23.622,23.894,24.116,24.248,24.261,24.146,23.912,23.584,23.197,22.790,22.397,22.044,21.743,21.497,
-21.301,21.148,21.032,20.952,20.912,20.924,20.998,21.146,21.367,21.657,21.997,22.364,22.729,23.065,23.352,23.581,
-23.756,23.892,24.010,24.136,24.295,24.503,24.766,25.079,25.430,25.800,26.168,26.519,26.841,27.129,27.385,27.613,
-27.814,27.988,28.127,28.218,28.243,28.190,28.048,27.822,27.529,27.201,26.881,26.618,26.456,26.432,26.563,26.848,
-27.265,27.776,28.336,28.900,29.431,29.909,30.329,30.701,31.048,31.394,31.755,32.138,32.532,32.908,33.229,33.451,
-33.533,33.451,33.197,32.786,32.256,31.657,31.050,30.493,30.034,29.705,29.517,29.461,29.509,29.623,29.757,29.870,
-29.927,29.908,29.803,29.620,29.375,29.092,28.800,28.521,28.274,28.069,27.905,27.775,27.667,27.567,27.465,27.355,
-27.243,27.139,27.062,27.032,27.067,27.177,27.363,27.617,27.915,28.232,28.534,28.790,28.975,29.069,29.065,28.961,
-28.762,28.479,28.122,27.705,27.239,26.736,26.212,25.680,25.155,24.654,24.187,23.762,23.377,23.025,22.692,22.360,
-22.010,21.630,21.214,20.766,20.298,19.830,19.381,18.968,18.604,18.290,18.019,17.776,17.546,17.314,17.070,16.814,
-16.551,16.295,16.061,15.864,15.714,15.615,15.564,15.554,15.575,15.618,15.677,15.750,15.836,15.940,16.063,16.203,
-16.357,16.515,16.668,16.802,16.910,16.984,17.023,17.028,17.005,16.957,16.889,16.802,16.694,16.565,16.411,16.233,
-16.034,15.820,15.599,15.380,15.169,14.969,14.782,14.604,14.431,14.259,14.089,13.923,13.767,13.629,13.514,13.423,
-13.352,13.288,13.215,13.116,12.977,12.790,12.560,12.299,12.028,11.772,11.550,11.375,11.248,11.159,11.085,11.003,
-10.889,10.729,10.522,10.279,10.021,9.773,9.561,9.398,9.288,9.220,9.175,9.128,9.056,8.945,8.792,8.606,
-8.402,8.201,8.015,7.847,7.689,7.520,7.313,7.042,6.687,6.243,5.718,5.136,4.526,3.921,3.343,2.804,
-2.299,1.812,1.316,.789,.210,-.423,-1.101,-1.802,-2.496,-3.152,-3.748,-4.272,-4.728,-5.131,-5.503,-5.869,
--6.247,-6.648,-7.073,-7.514,-7.957,-8.391,-8.808,-9.206,-9.590,-9.972,-10.362,-10.771,-11.201,-11.651,-12.112,-12.572,
--13.019,-13.445,-13.846,-14.222,-14.577,-14.916,-15.243,-15.560,-15.862,-16.147,-16.408,-16.645,-16.858,-17.054,-17.241,-17.429,
--17.624,-17.827,-18.031,-18.224,-18.392,-18.521,-18.600,-18.633,-18.630,-18.613,-18.612,-18.657,-18.776,-18.985,-19.290,-19.684,
--20.145,-20.645,-21.155,-21.643,-22.089,-22.479,-22.810,-23.089,-23.327,-23.540,-23.744,-23.949,-24.164,-24.390,-24.622,-24.853,
--25.074,-25.277,-25.456,-25.609,-25.742,-25.863,-25.984,-26.119,-26.278,-26.468,-26.690,-26.938,-27.199,-27.460,-27.706,-27.927,
--28.120,-28.287,-28.438,-28.587,-28.747,-28.928,-29.132,-29.357,-29.592,-29.825,-30.044,-30.243,-30.422,-30.590,-30.760,-30.944,
--31.154,-31.393,-31.658,-31.936,-32.214,-32.479,-32.726,-32.959,-33.194,-33.452,-33.754,-34.117,-34.542,-35.015,-35.507,-35.977,
--36.383,-36.690,-36.881,-36.958,-36.946,-36.886,-36.822,-36.795,-36.828,-36.924,-37.063,-37.208,-37.317,-37.357,-37.312,-37.191,
--37.030,-36.888,-36.830,-36.920,-37.202,-37.693,-38.375,-39.204,-40.109,-41.014,-41.841,-42.528,-43.035,-43.343,-43.459,-43.408,
--43.227,-42.959,-42.649,-42.339,-42.069,-41.869,-41.765,-41.769,-41.884,-42.097,-42.383,-42.707,-43.030,-43.313,-43.530,-43.671,
--43.744,-43.777,-43.813,-43.895,-44.062,-44.336,-44.717,-45.183,-45.696,-46.208,-46.677,-47.076,-47.397,-47.657,-47.888,-48.132,
--48.425,-48.791,-49.228,-49.713,-50.206,-50.656,-51.018,-51.262,-51.382,-51.397,-51.344,-51.274,-51.236,-51.267,-51.385,-51.585,
--51.843,-52.127,-52.401,-52.642,-52.839,-52.999,-53.141,-53.287,-53.456,-53.656,-53.878,-54.096,-54.280,-54.394,-54.415,-54.336,
--54.170,-53.946,-53.708,-53.500,-53.356,-53.296,-53.315,-53.393,-53.494,-53.579,-53.614,-53.585,-53.495,-53.366,-53.238,-53.152,
--53.147,-53.245,-53.452,-53.749,-54.101,-54.463,-54.790,-55.043,-55.200,-55.255,-55.222,-55.128,-55.009,-54.901,-54.836,-54.835,
--54.911,-55.063,-55.283,-55.555,-55.865,-56.193,-56.525,-56.848,-57.150,-57.423,-57.660,-57.855,-58.005,-58.110,-58.169,-58.188,
--58.172,-58.129,-58.069,-58.001,-57.935,-57.877,-57.833,-57.807,-57.797,-57.803,-57.820,-57.842,-57.862,-57.873,-57.872,-57.854,
--57.820,-57.773,-57.720,-57.666,-57.621,-57.592,-57.582,-57.593,-57.624,-57.671,-57.728,-57.792,-57.860,-57.931,-58.008,-58.096,
--58.202,-58.330,-58.483,-58.659,-58.852,-59.052,-59.247,-59.423,-59.567,-59.671,-59.730,-59.748,-59.733,-59.698,-59.659,-59.634,
--59.639,-59.686,-59.781,-59.924,-60.107,-60.316,-60.532,-60.735,-60.902,-61.019,-61.074,-61.066,-61.002,-60.899,-60.781,-60.675,
--60.607,-60.601,-60.671,-60.820,-61.041,-61.315,-61.618,-61.918,-62.190,-62.409,-62.563,-62.650,-62.678,-62.663,-62.625,-62.587,
--62.563,-62.564,-62.589,-62.630,-62.671,-62.695,-62.686,-62.632,-62.530,-62.386,-62.212,-62.023,-61.839,-61.674,-61.536,-61.428,
--61.342,-61.269,-61.193,-61.101,-60.985,-60.842,-60.673,-60.488,-60.300,-60.121,-59.964,-59.836,-59.741,-59.677,-59.640,-59.623,
--59.617,-59.615,-59.610,-59.598,-59.576,-59.541,-59.493,-59.432,-59.360,-59.280,-59.195,-59.113,-59.038,-58.978,-58.936,-58.915,
--58.915,-58.931,-58.957,-58.987,-59.012,-59.028,-59.030,-59.017,-58.990,-58.951,-58.902,-58.846,-58.785,-58.721,-58.655,-58.591,
--58.531,-58.481,-58.445,-58.427,-58.428,-58.446,-58.476,-58.509,-58.533,-58.537,-58.512,-58.452,-58.356,-58.229,-58.081,-57.925,
--57.774,-57.637,-57.522,-57.430,-57.359,-57.301,-57.248,-57.191,-57.123,-57.040,-56.943,-56.834,-56.719,-56.603,-56.491,-56.387,
--56.292,-56.204,-56.120,-56.035,-55.945,-55.844,-55.730,-55.601,-55.456,-55.298,-55.130,-54.955,-54.779,-54.605,-54.438,-54.278,
--54.127,-53.983,-53.844,-53.708,-53.572,-53.433,-53.292,-53.148,-53.003,-52.860,-52.721,-52.587,-52.456,-52.327,-52.195,-52.056,
--51.906,-51.744,-51.569,-51.384,-51.195,-51.008,-50.831,-50.668,-50.521,-50.391,-50.273,-50.160,-50.045,-49.921,-49.782,-49.627,
--49.455,-49.271,-49.079,-48.885,-48.691,-48.501,-48.312,-48.122,-47.927,-47.724,-47.509,-47.283,-47.048,-46.810,-46.575,-46.349,
--46.138,-45.945,-45.768,-45.605,-45.451,-45.299,-45.142,-44.976,-44.797,-44.606,-44.403,-44.192,-43.977,-43.761,-43.548,-43.339,
--43.137,-42.940,-42.749,-42.561,-42.374,-42.185,-41.992,-41.792,-41.583,-41.365,-41.142,-40.917,-40.698,-40.492,-40.309,-40.154,
--40.031,-39.938,-39.869,-39.814,-39.760,-39.694,-39.604,-39.484,-39.333,-39.155,-38.956,-38.747,-38.537,-38.329,-38.127,-37.926,
--37.723,-37.511,-37.289,-37.057,-36.824,-36.601,-36.402,-36.239,-36.121,-36.048,-36.014,-36.003,-35.997,-35.977,-35.927,-35.837,
--35.708,-35.548,-35.374,-35.202,-35.048,-34.922,-34.828,-34.758,-34.701,-34.642,-34.568,-34.468,-34.341,-34.193,-34.036,-33.885,
--33.754,-33.655,-33.591,-33.559,-33.549,-33.547,-33.539,-33.510,-33.452,-33.363,-33.246,-33.107,-32.957,-32.806,-32.661,-32.528,
--32.408,-32.298,-32.194,-32.091,-31.985,-31.872,-31.751,-31.625,-31.496,-31.368,-31.244,-31.127,-31.018,-30.916,-30.821,-30.728,
--30.635,-30.536,-30.428,-30.308,-30.174,-30.024,-29.858,-29.678,-29.486,-29.286,-29.082,-28.881,-28.689,-28.510,-28.348,-28.206,
--28.081,-27.968,-27.860,-27.745,-27.613,-27.455,-27.267,-27.051,-26.813,-26.566,-26.329,-26.116,-25.942,-25.812,-25.724,-25.668,
--25.626,-25.580,-25.514,-25.419,-25.296,-25.155,-25.014,-24.894,-24.813,-24.780,-24.788,-24.819,-24.844,-24.827,-24.734,-24.542,
--24.245,-23.852,-23.390,-22.895,-22.405,-21.953,-21.555,-21.210,-20.901,-20.599,-20.270,-19.890,-19.444,-18.938,-18.395,-17.853,
--17.354,-16.937,-16.627,-16.432,-16.340,-16.323,-16.341,-16.354,-16.327,-16.240,-16.088,-15.881,-15.640,-15.391,-15.160,-14.964,
--14.811,-14.699,-14.618,-14.553,-14.487,-14.407,-14.302,-14.171,-14.012,-13.828,-13.623,-13.399,-13.159,-12.903,-12.631,-12.343,
--12.040,-11.726,-11.403,-11.076,-10.748,-10.420,-10.095,-9.772,-9.452,-9.136,-8.827,-8.530,-8.249,-7.990,-7.756,-7.550,
--7.367,-7.202,-7.043,-6.877,-6.691,-6.469,-6.204,-5.889,-5.525,-5.121,-4.690,-4.251,-3.825,-3.431,-3.082,-2.786,
--2.539,-2.326,-2.123,-1.903,-1.633,-1.289,-.857,-.333,.266,.913,1.569,2.193,2.747,3.205,3.555,3.805,
-3.977,4.105,4.225,4.373,4.571,4.833,5.156,5.525,5.922,6.327,6.726,7.113,7.494,7.880,8.288,8.731,
-9.216,9.737,10.278,10.809,11.297,11.704,11.999,12.158,12.173,12.046,11.793,11.439,11.016,10.555,10.087,9.636,
-9.221,8.852,8.534,8.263,8.032,7.830,7.646,7.467,7.286,7.097,6.901,6.705,6.519,6.357,6.234,6.161,
-6.146,6.187,6.276,6.399,6.534,6.658,6.748,6.787,6.761,6.664,6.497,6.267,5.983,5.660,5.311,4.950,
-4.590,4.244,3.922,3.635,3.391,3.195,3.052,2.961,2.922,2.927,2.969,3.040,3.132,3.236,3.349,3.465,
-3.584,3.704,3.824,3.942,4.057,4.165,4.263,4.348,4.418,4.472,4.511,4.535,4.547,4.548,4.540,4.524,
-4.501,4.471,4.436,4.396,4.354,4.313,4.275,4.243,4.218,4.199,4.187,4.178,4.171,4.165,4.158,4.153,
-4.151,4.155,4.169,4.195,4.235,4.286,4.345,4.409,4.470,4.523,4.564,4.589,4.598,4.593,4.579,4.561,
-4.545,4.535,4.535,4.545,4.566,4.592,4.618,4.640,4.650,4.644,4.620,4.576,4.515,4.438,4.351,4.256,
-4.158,4.058,3.959,3.859,3.758,3.654,3.547,3.436,3.324,3.212,3.103,3.001,2.908,2.826,2.756,2.697,
-2.647,2.605,2.569,2.538,2.511,2.488,2.472,2.463,2.463,2.472,2.490,2.516,2.548,2.584,2.621,2.657,
-2.691,2.722,2.751,2.778,2.803,2.829,2.854,2.880,2.905,2.930,2.954,2.977,3.000,3.023,3.048,3.076,
-3.108,3.147,3.191,3.243,3.300,3.364,3.432,3.504,3.579,3.656,3.735,3.816,3.898,3.982,4.067,4.151,
-4.234,4.315,4.393,4.469,4.543,4.616,4.689,4.763,4.840,4.918,4.995,5.069,5.136,5.194,5.241,5.278,
-5.307,5.332,5.360,5.396,5.445,5.512,5.597,5.697,5.810,5.931,6.053,6.173,6.289,6.401,6.512,6.623,
-6.738,6.858,6.981,7.106,7.228,7.343,7.449,7.547,7.641,7.737,7.846,7.975,8.132,8.317,8.527,8.751,
-8.975,9.181,9.351,9.473,9.537,9.545,9.501,9.418,9.311,9.196,9.085,8.989,8.912,8.857,8.825,8.814,
-8.827,8.867,8.938,9.045,9.190,9.370,9.579,9.801,10.021,10.217,10.374,10.479,10.528,11.273,11.281,11.245,
-11.185,11.121,11.071,11.049,11.060,11.102,11.169,11.253,11.347,11.449,11.559,11.683,11.829,12.002,12.205,12.437,
-12.690,12.952,13.209,13.450,13.663,13.845,13.995,14.117,14.214,14.288,14.341,14.368,14.366,14.332,14.269,14.185,
-14.097,14.030,14.010,14.062,14.200,14.427,14.731,15.083,15.444,15.771,16.026,16.183,16.232,16.185,16.070,15.928,
-15.804,15.739,15.760,15.878,16.087,16.364,16.679,16.996,17.284,17.522,17.697,17.808,17.860,17.861,17.820,17.738,
-17.614,17.446,17.228,16.960,16.649,16.309,15.962,15.636,15.359,15.154,15.037,15.012,15.071,15.196,15.365,15.549,
-15.726,15.878,15.994,16.075,16.126,16.159,16.187,16.224,16.279,16.358,16.463,16.592,16.741,16.904,17.076,17.254,
-17.434,17.615,17.797,17.981,18.166,18.354,18.541,18.726,18.906,19.078,19.241,19.395,19.547,19.704,19.878,20.080,
-20.321,20.606,20.933,21.290,21.659,22.012,22.321,22.559,22.708,22.762,22.730,22.635,22.513,22.404,22.343,22.358,
-22.461,22.644,22.881,23.135,23.360,23.514,23.564,23.494,23.303,23.010,22.644,22.238,21.828,21.439,21.088,20.781,
-20.516,20.290,20.099,19.945,19.838,19.792,19.825,19.951,20.176,20.494,20.888,21.327,21.776,22.199,22.566,22.865,
-23.095,23.276,23.439,23.620,23.856,24.171,24.578,25.068,25.620,26.198,26.762,27.277,27.716,28.063,28.319,28.495,
-28.611,28.685,28.730,28.752,28.743,28.692,28.580,28.393,28.128,27.790,27.402,26.999,26.623,26.315,26.113,26.040,
-26.103,26.295,26.592,26.966,27.387,27.828,28.273,28.718,29.166,29.625,30.102,30.598,31.102,31.590,32.029,32.378,
-32.598,32.657,32.538,32.245,31.797,31.234,30.609,29.978,29.395,28.904,28.533,28.294,28.177,28.157,28.199,28.262,
-28.305,28.297,28.218,28.062,27.839,27.572,27.294,27.039,26.841,26.723,26.697,26.757,26.883,27.042,27.196,27.306,
-27.345,27.299,27.171,26.986,26.780,26.602,26.497,26.504,26.644,26.919,27.305,27.763,28.236,28.665,28.992,29.172,
-29.174,28.990,28.631,28.124,27.509,26.832,26.138,25.468,24.852,24.310,23.847,23.459,23.130,22.838,22.558,22.267,
-21.946,21.582,21.172,20.723,20.247,19.764,19.293,18.853,18.456,18.109,17.810,17.553,17.326,17.119,16.923,16.732,
-16.546,16.370,16.210,16.073,15.964,15.885,15.834,15.808,15.802,15.813,15.837,15.877,15.932,16.005,16.096,16.201,
-16.312,16.418,16.504,16.559,16.574,16.549,16.487,16.400,16.304,16.215,16.145,16.101,16.082,16.079,16.077,16.062,
-16.019,15.938,15.818,15.664,15.484,15.291,15.097,14.911,14.737,14.575,14.423,14.274,14.123,13.967,13.804,13.636,
-13.465,13.290,13.112,12.931,12.743,12.547,12.344,12.137,11.931,11.734,11.552,11.388,11.243,11.108,10.975,10.830,
-10.664,10.471,10.257,10.032,9.815,9.628,9.490,9.412,9.392,9.418,9.465,9.500,9.494,9.423,9.276,9.058,
-8.787,8.490,8.195,7.925,7.691,7.489,7.299,7.091,6.834,6.499,6.071,5.549,4.950,4.301,3.636,2.987,
-2.376,1.812,1.293,.800,.312,-.194,-.734,-1.314,-1.928,-2.562,-3.194,-3.804,-4.375,-4.898,-5.370,-5.800,
--6.197,-6.575,-6.945,-7.314,-7.686,-8.062,-8.442,-8.825,-9.215,-9.613,-10.025,-10.452,-10.897,-11.355,-11.820,-12.283,
--12.734,-13.165,-13.572,-13.953,-14.312,-14.653,-14.982,-15.302,-15.615,-15.917,-16.205,-16.475,-16.725,-16.957,-17.173,-17.381,
--17.587,-17.794,-18.001,-18.201,-18.383,-18.532,-18.638,-18.695,-18.708,-18.692,-18.673,-18.683,-18.755,-18.916,-19.182,-19.554,
--20.017,-20.540,-21.085,-21.612,-22.085,-22.479,-22.786,-23.012,-23.178,-23.312,-23.446,-23.607,-23.811,-24.063,-24.355,-24.669,
--24.980,-25.265,-25.506,-25.696,-25.837,-25.945,-26.041,-26.151,-26.295,-26.487,-26.731,-27.017,-27.328,-27.644,-27.942,-28.207,
--28.433,-28.621,-28.785,-28.941,-29.105,-29.290,-29.499,-29.728,-29.964,-30.191,-30.396,-30.571,-30.717,-30.847,-30.979,-31.133,
--31.326,-31.566,-31.848,-32.158,-32.472,-32.766,-33.022,-33.234,-33.412,-33.577,-33.760,-33.992,-34.294,-34.670,-35.104,-35.562,
--35.995,-36.356,-36.605,-36.723,-36.716,-36.615,-36.468,-36.332,-36.256,-36.273,-36.390,-36.588,-36.827,-37.060,-37.240,-37.341,
--37.361,-37.328,-37.292,-37.319,-37.475,-37.809,-38.344,-39.073,-39.951,-40.911,-41.870,-42.742,-43.458,-43.965,-44.242,-44.295,
--44.155,-43.871,-43.500,-43.105,-42.741,-42.452,-42.271,-42.213,-42.278,-42.451,-42.702,-42.996,-43.290,-43.547,-43.738,-43.847,
--43.877,-43.851,-43.802,-43.776,-43.815,-43.952,-44.205,-44.572,-45.031,-45.549,-46.086,-46.608,-47.092,-47.533,-47.940,-48.334,
--48.739,-49.172,-49.638,-50.123,-50.598,-51.025,-51.364,-51.589,-51.689,-51.680,-51.598,-51.496,-51.428,-51.445,-51.574,-51.824,
--52.175,-52.589,-53.020,-53.421,-53.759,-54.019,-54.204,-54.336,-54.443,-54.551,-54.678,-54.825,-54.978,-55.113,-55.199,-55.214,
--55.144,-54.995,-54.787,-54.551,-54.323,-54.135,-54.005,-53.937,-53.918,-53.926,-53.935,-53.922,-53.878,-53.807,-53.729,-53.671,
--53.665,-53.735,-53.895,-54.139,-54.447,-54.784,-55.109,-55.383,-55.577,-55.673,-55.673,-55.592,-55.459,-55.305,-55.163,-55.058,
--55.009,-55.023,-55.100,-55.231,-55.407,-55.616,-55.850,-56.101,-56.364,-56.635,-56.911,-57.186,-57.455,-57.713,-57.951,-58.163,
--58.344,-58.489,-58.596,-58.665,-58.699,-58.702,-58.679,-58.638,-58.586,-58.531,-58.480,-58.438,-58.408,-58.390,-58.382,-58.377,
--58.369,-58.354,-58.326,-58.285,-58.233,-58.176,-58.121,-58.077,-58.050,-58.044,-58.060,-58.093,-58.136,-58.183,-58.227,-58.265,
--58.297,-58.329,-58.370,-58.431,-58.522,-58.648,-58.812,-59.008,-59.224,-59.444,-59.650,-59.825,-59.956,-60.039,-60.074,-60.073,
--60.051,-60.027,-60.023,-60.055,-60.133,-60.259,-60.428,-60.627,-60.837,-61.038,-61.212,-61.346,-61.432,-61.473,-61.479,-61.466,
--61.454,-61.462,-61.507,-61.599,-61.741,-61.926,-62.143,-62.372,-62.594,-62.789,-62.941,-63.044,-63.095,-63.102,-63.075,-63.030,
--62.981,-62.940,-62.916,-62.907,-62.911,-62.916,-62.911,-62.884,-62.827,-62.736,-62.613,-62.463,-62.299,-62.131,-61.972,-61.831,
--61.712,-61.615,-61.535,-61.467,-61.400,-61.329,-61.247,-61.153,-61.048,-60.935,-60.819,-60.707,-60.604,-60.514,-60.439,-60.379,
--60.332,-60.295,-60.263,-60.231,-60.195,-60.151,-60.095,-60.026,-59.946,-59.857,-59.766,-59.680,-59.606,-59.552,-59.523,-59.523,
--59.548,-59.596,-59.658,-59.726,-59.789,-59.840,-59.874,-59.888,-59.883,-59.861,-59.825,-59.778,-59.722,-59.659,-59.589,-59.513,
--59.432,-59.350,-59.272,-59.204,-59.153,-59.124,-59.118,-59.133,-59.163,-59.196,-59.220,-59.224,-59.197,-59.133,-59.033,-58.901,
--58.747,-58.582,-58.420,-58.270,-58.138,-58.027,-57.933,-57.851,-57.772,-57.690,-57.596,-57.489,-57.367,-57.235,-57.097,-56.960,
--56.832,-56.717,-56.618,-56.535,-56.464,-56.400,-56.336,-56.262,-56.174,-56.064,-55.932,-55.777,-55.604,-55.418,-55.228,-55.041,
--54.862,-54.698,-54.548,-54.411,-54.283,-54.159,-54.035,-53.905,-53.769,-53.624,-53.474,-53.321,-53.167,-53.014,-52.862,-52.711,
--52.557,-52.398,-52.232,-52.056,-51.873,-51.685,-51.497,-51.315,-51.142,-50.983,-50.837,-50.702,-50.573,-50.446,-50.315,-50.175,
--50.024,-49.862,-49.691,-49.513,-49.330,-49.145,-48.957,-48.764,-48.565,-48.357,-48.138,-47.907,-47.668,-47.425,-47.181,-46.944,
--46.718,-46.504,-46.303,-46.113,-45.928,-45.745,-45.559,-45.366,-45.167,-44.962,-44.752,-44.543,-44.335,-44.132,-43.932,-43.737,
--43.543,-43.351,-43.158,-42.965,-42.773,-42.581,-42.391,-42.203,-42.016,-41.828,-41.638,-41.444,-41.250,-41.056,-40.869,-40.695,
--40.540,-40.407,-40.296,-40.205,-40.125,-40.046,-39.955,-39.843,-39.704,-39.535,-39.340,-39.124,-38.896,-38.662,-38.427,-38.189,
--37.945,-37.689,-37.415,-37.123,-36.815,-36.503,-36.203,-35.937,-35.722,-35.573,-35.496,-35.485,-35.526,-35.595,-35.665,-35.712,
--35.717,-35.671,-35.577,-35.446,-35.295,-35.143,-35.008,-34.898,-34.816,-34.753,-34.700,-34.642,-34.569,-34.475,-34.361,-34.236,
--34.112,-34.001,-33.915,-33.860,-33.833,-33.826,-33.826,-33.816,-33.784,-33.718,-33.615,-33.477,-33.313,-33.135,-32.955,-32.785,
--32.632,-32.501,-32.388,-32.292,-32.205,-32.122,-32.039,-31.953,-31.863,-31.770,-31.677,-31.584,-31.493,-31.402,-31.311,-31.216,
--31.114,-31.004,-30.884,-30.751,-30.606,-30.447,-30.276,-30.091,-29.894,-29.687,-29.474,-29.260,-29.053,-28.861,-28.690,-28.545,
--28.427,-28.332,-28.250,-28.169,-28.073,-27.947,-27.781,-27.573,-27.326,-27.053,-26.774,-26.508,-26.275,-26.087,-25.948,-25.851,
--25.781,-25.721,-25.651,-25.559,-25.444,-25.314,-25.187,-25.086,-25.033,-25.040,-25.105,-25.208,-25.317,-25.386,-25.370,-25.233,
--24.953,-24.534,-24.001,-23.398,-22.780,-22.202,-21.708,-21.320,-21.040,-20.844,-20.695,-20.548,-20.364,-20.117,-19.800,-19.427,
--19.029,-18.643,-18.305,-18.041,-17.859,-17.749,-17.687,-17.637,-17.562,-17.435,-17.238,-16.975,-16.659,-16.317,-15.981,-15.676,
--15.422,-15.226,-15.081,-14.974,-14.882,-14.786,-14.669,-14.519,-14.333,-14.113,-13.864,-13.594,-13.306,-13.003,-12.686,-12.353,
--12.003,-11.636,-11.258,-10.874,-10.494,-10.125,-9.777,-9.455,-9.160,-8.890,-8.640,-8.405,-8.177,-7.953,-7.729,-7.504,
--7.280,-7.058,-6.837,-6.617,-6.395,-6.165,-5.922,-5.658,-5.370,-5.058,-4.724,-4.378,-4.031,-3.696,-3.386,-3.109,
--2.867,-2.654,-2.455,-2.250,-2.011,-1.715,-1.341,-.878,-.326,.300,.973,1.660,2.323,2.927,3.449,3.873,
-4.203,4.452,4.644,4.809,4.976,5.168,5.400,5.677,5.996,6.349,6.724,7.115,7.517,7.931,8.364,8.822,
-9.311,9.833,10.378,10.933,11.474,11.972,12.398,12.724,12.929,12.998,12.929,12.729,12.413,12.003,11.525,11.007,
-10.475,9.952,9.456,8.999,8.587,8.218,7.888,7.588,7.307,7.037,6.773,6.513,6.265,6.037,5.843,5.696,
-5.606,5.578,5.610,5.690,5.800,5.915,6.011,6.064,6.055,5.974,5.818,5.592,5.309,4.985,4.637,4.280,
-3.929,3.594,3.281,2.996,2.742,2.520,2.334,2.186,2.078,2.010,1.983,1.994,2.039,2.114,2.211,2.325,
-2.450,2.580,2.712,2.841,2.966,3.084,3.194,3.295,3.385,3.463,3.529,3.584,3.626,3.658,3.680,3.693,
-3.699,3.700,3.695,3.688,3.678,3.668,3.659,3.650,3.643,3.638,3.634,3.633,3.632,3.633,3.635,3.640,
-3.649,3.663,3.683,3.710,3.744,3.785,3.829,3.876,3.921,3.962,3.997,4.022,4.039,4.047,4.047,4.043,
-4.038,4.034,4.035,4.043,4.057,4.078,4.102,4.127,4.146,4.156,4.152,4.130,4.089,4.027,3.947,3.852,
-3.745,3.631,3.515,3.398,3.283,3.171,3.061,2.952,2.843,2.734,2.627,2.522,2.423,2.333,2.255,2.191,
-2.142,2.107,2.085,2.072,2.066,2.064,2.062,2.060,2.057,2.054,2.054,2.058,2.069,2.086,2.111,2.142,
-2.179,2.219,2.259,2.298,2.334,2.367,2.395,2.421,2.443,2.464,2.485,2.505,2.528,2.552,2.579,2.610,
-2.645,2.684,2.729,2.778,2.833,2.893,2.956,3.024,3.094,3.166,3.241,3.318,3.397,3.479,3.562,3.648,
-3.735,3.821,3.908,3.993,4.078,4.162,4.246,4.331,4.417,4.504,4.592,4.676,4.755,4.825,4.884,4.930,
-4.966,4.993,5.018,5.048,5.088,5.144,5.219,5.314,5.427,5.553,5.688,5.828,5.968,6.109,6.251,6.396,
-6.549,6.709,6.876,7.047,7.215,7.374,7.516,7.637,7.737,7.821,7.896,7.976,8.072,8.193,8.344,8.523,
-8.722,8.927,9.121,9.288,9.413,9.489,9.515,9.497,9.445,9.374,9.296,9.223,9.163,9.119,9.093,9.085,
-9.097,9.132,9.196,9.297,9.439,9.625,9.852,10.110,10.383,10.649,10.886,11.077,11.207,11.273,12.381,12.428,
-12.414,12.361,12.294,12.235,12.201,12.199,12.231,12.288,12.363,12.446,12.532,12.621,12.716,12.825,12.956,13.116,
-13.305,13.520,13.754,13.994,14.229,14.448,14.643,14.811,14.951,15.063,15.146,15.200,15.220,15.204,15.148,15.055,
-14.933,14.798,14.672,14.579,14.546,14.591,14.723,14.938,15.220,15.541,15.868,16.169,16.416,16.593,16.700,16.746,
-16.754,16.751,16.764,16.813,16.911,17.060,17.254,17.480,17.722,17.965,18.198,18.410,18.596,18.748,18.861,18.923,
-18.922,18.843,18.676,18.416,18.068,17.647,17.180,16.702,16.252,15.867,15.576,15.395,15.326,15.358,15.468,15.626,
-15.803,15.974,16.121,16.238,16.328,16.401,16.471,16.550,16.651,16.775,16.922,17.085,17.254,17.418,17.572,17.710,
-17.835,17.953,18.073,18.204,18.355,18.530,18.730,18.951,19.186,19.427,19.665,19.894,20.112,20.321,20.527,20.739,
-20.964,21.209,21.471,21.744,22.012,22.255,22.449,22.575,22.619,22.578,22.463,22.298,22.114,21.950,21.843,21.819,
-21.892,22.057,22.292,22.563,22.824,23.034,23.155,23.164,23.056,22.840,22.540,22.185,21.807,21.430,21.073,20.740,
-20.430,20.139,19.865,19.609,19.386,19.215,19.124,19.138,19.274,19.537,19.915,20.379,20.887,21.391,21.848,22.227,
-22.517,22.728,22.891,23.054,23.266,23.574,24.006,24.569,25.244,25.992,26.757,27.478,28.101,28.586,28.914,29.089,
-29.135,29.088,28.987,28.868,28.752,28.648,28.550,28.438,28.292,28.092,27.829,27.508,27.146,26.772,26.422,26.131,
-25.929,25.834,25.853,25.981,26.203,26.503,26.863,27.268,27.709,28.183,28.685,29.212,29.751,30.286,30.789,31.228,
-31.567,31.773,31.823,31.704,31.422,30.997,30.466,29.873,29.270,28.704,28.215,27.833,27.568,27.415,27.357,27.362,
-27.393,27.413,27.390,27.302,27.143,26.920,26.656,26.384,26.145,25.974,25.900,25.937,26.080,26.305,26.573,26.834,
-27.041,27.152,27.146,27.022,26.807,26.546,26.299,26.126,26.084,26.205,26.497,26.941,27.486,28.064,28.598,29.012,
-29.245,29.258,29.041,28.610,28.007,27.288,26.516,25.752,25.045,24.427,23.911,23.490,23.145,22.845,22.559,22.257,
-21.917,21.527,21.089,20.611,20.110,19.608,19.124,18.675,18.273,17.922,17.622,17.367,17.148,16.958,16.790,16.642,
-16.511,16.400,16.309,16.239,16.188,16.153,16.128,16.107,16.087,16.068,16.051,16.044,16.055,16.090,16.153,16.241,
-16.346,16.451,16.537,16.584,16.579,16.512,16.388,16.221,16.032,15.849,15.698,15.598,15.559,15.579,15.643,15.729,
-15.810,15.862,15.866,15.812,15.702,15.547,15.362,15.166,14.976,14.800,14.644,14.503,14.370,14.236,14.089,13.923,
-13.736,13.528,13.306,13.076,12.846,12.624,12.414,12.220,12.043,11.881,11.731,11.586,11.439,11.279,11.099,10.890,
-10.649,10.378,10.087,9.791,9.511,9.270,9.089,8.980,8.947,8.978,9.051,9.134,9.192,9.194,9.117,8.954,
-8.712,8.412,8.085,7.761,7.465,7.212,6.998,6.808,6.612,6.379,6.077,5.688,5.204,4.637,4.011,3.355,
-2.705,2.086,1.517,.999,.524,.073,-.377,-.847,-1.352,-1.896,-2.476,-3.078,-3.684,-4.275,-4.835,-5.354,
--5.826,-6.255,-6.646,-7.010,-7.356,-7.695,-8.036,-8.386,-8.749,-9.131,-9.534,-9.956,-10.397,-10.852,-11.315,-11.776,
--12.230,-12.668,-13.088,-13.488,-13.869,-14.237,-14.594,-14.945,-15.289,-15.627,-15.955,-16.268,-16.564,-16.842,-17.104,-17.354,
--17.598,-17.840,-18.081,-18.314,-18.529,-18.712,-18.847,-18.923,-18.938,-18.900,-18.831,-18.763,-18.735,-18.787,-18.949,-19.238,
--19.652,-20.170,-20.754,-21.356,-21.925,-22.419,-22.810,-23.089,-23.270,-23.382,-23.465,-23.559,-23.701,-23.908,-24.184,-24.514,
--24.868,-25.213,-25.517,-25.757,-25.926,-26.034,-26.105,-26.170,-26.264,-26.412,-26.631,-26.918,-27.257,-27.622,-27.982,-28.309,
--28.584,-28.802,-28.971,-29.110,-29.243,-29.391,-29.568,-29.778,-30.013,-30.257,-30.489,-30.694,-30.864,-31.003,-31.126,-31.255,
--31.414,-31.619,-31.876,-32.178,-32.505,-32.828,-33.120,-33.361,-33.545,-33.683,-33.802,-33.937,-34.122,-34.383,-34.724,-35.132,
--35.568,-35.985,-36.332,-36.566,-36.668,-36.642,-36.519,-36.350,-36.192,-36.100,-36.108,-36.228,-36.443,-36.714,-36.992,-37.229,
--37.392,-37.474,-37.498,-37.511,-37.577,-37.762,-38.121,-38.680,-39.437,-40.351,-41.356,-42.365,-43.289,-44.048,-44.585,-44.873,
--44.915,-44.746,-44.419,-44.003,-43.568,-43.175,-42.875,-42.696,-42.650,-42.727,-42.902,-43.139,-43.398,-43.640,-43.832,-43.953,
--44.000,-43.982,-43.926,-43.864,-43.838,-43.880,-44.017,-44.260,-44.607,-45.039,-45.532,-46.055,-46.585,-47.104,-47.605,-48.092,
--48.572,-49.054,-49.539,-50.018,-50.475,-50.882,-51.211,-51.442,-51.564,-51.588,-51.542,-51.467,-51.414,-51.432,-51.555,-51.800,
--52.157,-52.599,-53.080,-53.553,-53.972,-54.308,-54.551,-54.710,-54.809,-54.880,-54.955,-55.053,-55.180,-55.326,-55.468,-55.577,
--55.627,-55.599,-55.489,-55.308,-55.078,-54.829,-54.589,-54.381,-54.219,-54.104,-54.029,-53.982,-53.952,-53.931,-53.920,-53.928,
--53.966,-54.049,-54.186,-54.378,-54.619,-54.889,-55.167,-55.425,-55.642,-55.802,-55.899,-55.935,-55.923,-55.878,-55.816,-55.753,
--55.698,-55.657,-55.631,-55.619,-55.620,-55.634,-55.664,-55.717,-55.798,-55.916,-56.075,-56.276,-56.518,-56.794,-57.097,-57.413,
--57.733,-58.044,-58.336,-58.600,-58.826,-59.011,-59.148,-59.238,-59.281,-59.284,-59.253,-59.201,-59.136,-59.070,-59.009,-58.957,
--58.911,-58.868,-58.821,-58.762,-58.688,-58.598,-58.497,-58.393,-58.299,-58.225,-58.180,-58.169,-58.188,-58.230,-58.283,-58.333,
--58.371,-58.390,-58.392,-58.386,-58.387,-58.412,-58.478,-58.596,-58.769,-58.992,-59.248,-59.517,-59.774,-59.996,-60.165,-60.275,
--60.327,-60.334,-60.315,-60.292,-60.287,-60.317,-60.392,-60.513,-60.673,-60.861,-61.059,-61.254,-61.433,-61.589,-61.723,-61.839,
--61.945,-62.050,-62.165,-62.293,-62.437,-62.594,-62.755,-62.913,-63.056,-63.177,-63.268,-63.329,-63.359,-63.364,-63.350,-63.325,
--63.296,-63.270,-63.249,-63.233,-63.221,-63.209,-63.190,-63.160,-63.114,-63.049,-62.964,-62.860,-62.740,-62.610,-62.474,-62.340,
--62.213,-62.098,-61.998,-61.915,-61.850,-61.800,-61.764,-61.738,-61.718,-61.698,-61.675,-61.644,-61.604,-61.552,-61.489,-61.415,
--61.332,-61.244,-61.151,-61.057,-60.962,-60.866,-60.769,-60.672,-60.574,-60.478,-60.388,-60.308,-60.244,-60.201,-60.185,-60.197,
--60.235,-60.294,-60.369,-60.449,-60.525,-60.589,-60.635,-60.662,-60.670,-60.661,-60.641,-60.613,-60.579,-60.539,-60.493,-60.436,
--60.367,-60.284,-60.189,-60.086,-59.983,-59.889,-59.812,-59.761,-59.738,-59.741,-59.762,-59.792,-59.818,-59.826,-59.807,-59.753,
--59.664,-59.543,-59.399,-59.243,-59.084,-58.931,-58.791,-58.665,-58.551,-58.442,-58.332,-58.214,-58.084,-57.938,-57.778,-57.610,
--57.441,-57.279,-57.133,-57.009,-56.910,-56.835,-56.778,-56.730,-56.680,-56.617,-56.532,-56.417,-56.272,-56.100,-55.907,-55.704,
--55.503,-55.314,-55.145,-55.001,-54.881,-54.780,-54.691,-54.604,-54.509,-54.400,-54.272,-54.123,-53.958,-53.778,-53.590,-53.399,
--53.208,-53.021,-52.838,-52.659,-52.484,-52.311,-52.141,-51.973,-51.808,-51.646,-51.488,-51.333,-51.181,-51.029,-50.875,-50.719,
--50.559,-50.394,-50.226,-50.055,-49.881,-49.703,-49.521,-49.333,-49.135,-48.927,-48.707,-48.476,-48.238,-47.997,-47.757,-47.523,
--47.298,-47.083,-46.875,-46.672,-46.468,-46.259,-46.041,-45.814,-45.582,-45.348,-45.120,-44.904,-44.704,-44.520,-44.350,-44.189,
--44.028,-43.859,-43.676,-43.475,-43.258,-43.027,-42.791,-42.557,-42.331,-42.119,-41.922,-41.740,-41.568,-41.404,-41.243,-41.085,
--40.928,-40.775,-40.627,-40.485,-40.349,-40.218,-40.088,-39.953,-39.812,-39.661,-39.502,-39.339,-39.175,-39.014,-38.858,-38.705,
--38.547,-38.375,-38.177,-37.943,-37.669,-37.355,-37.014,-36.665,-36.332,-36.039,-35.809,-35.654,-35.576,-35.567,-35.607,-35.669,
--35.728,-35.760,-35.750,-35.693,-35.595,-35.468,-35.328,-35.193,-35.075,-34.979,-34.903,-34.841,-34.781,-34.713,-34.631,-34.534,
--34.425,-34.313,-34.208,-34.120,-34.054,-34.011,-33.984,-33.962,-33.934,-33.886,-33.810,-33.701,-33.562,-33.399,-33.223,-33.046,
--32.879,-32.729,-32.602,-32.498,-32.414,-32.346,-32.289,-32.238,-32.190,-32.142,-32.093,-32.040,-31.982,-31.916,-31.839,-31.748,
--31.642,-31.519,-31.380,-31.228,-31.064,-30.892,-30.714,-30.531,-30.343,-30.152,-29.958,-29.764,-29.573,-29.391,-29.226,-29.081,
--28.960,-28.862,-28.778,-28.698,-28.606,-28.485,-28.322,-28.109,-27.846,-27.545,-27.223,-26.904,-26.612,-26.368,-26.182,-26.056,
--25.980,-25.935,-25.900,-25.858,-25.797,-25.718,-25.633,-25.562,-25.526,-25.544,-25.621,-25.747,-25.893,-26.017,-26.067,-25.995,
--25.766,-25.367,-24.809,-24.131,-23.391,-22.658,-21.998,-21.464,-21.084,-20.860,-20.767,-20.763,-20.794,-20.811,-20.776,-20.670,
--20.496,-20.271,-20.026,-19.791,-19.589,-19.430,-19.308,-19.203,-19.086,-18.927,-18.703,-18.403,-18.030,-17.600,-17.140,-16.682,
--16.252,-15.871,-15.548,-15.279,-15.053,-14.851,-14.655,-14.449,-14.221,-13.967,-13.686,-13.383,-13.063,-12.728,-12.382,-12.026,
--11.661,-11.290,-10.915,-10.547,-10.193,-9.866,-9.576,-9.328,-9.124,-8.959,-8.823,-8.703,-8.582,-8.448,-8.288,-8.097,
--7.874,-7.623,-7.351,-7.064,-6.770,-6.472,-6.174,-5.873,-5.569,-5.261,-4.947,-4.632,-4.320,-4.019,-3.737,-3.481,
--3.253,-3.050,-2.865,-2.681,-2.481,-2.242,-1.946,-1.577,-1.128,-.602,-.011,.627,1.283,1.929,2.540,3.091,
-3.571,3.975,4.307,4.580,4.812,5.023,5.234,5.460,5.715,6.006,6.337,6.707,7.114,7.554,8.021,8.512,
-9.020,9.541,10.067,10.592,11.107,11.600,12.061,12.476,12.830,13.108,13.296,13.378,13.344,13.185,12.901,12.499,
-11.992,11.402,10.758,10.090,9.432,8.809,8.242,7.742,7.312,6.943,6.625,6.342,6.084,5.842,5.616,5.413,
-5.242,5.115,5.041,5.022,5.053,5.118,5.196,5.261,5.285,5.247,5.132,4.936,4.664,4.331,3.957,3.565,
-3.176,2.806,2.469,2.169,1.909,1.684,1.492,1.330,1.196,1.091,1.016,.976,.972,1.004,1.071,1.167,
-1.286,1.420,1.561,1.702,1.838,1.964,2.081,2.187,2.284,2.373,2.454,2.529,2.598,2.658,2.710,2.754,
-2.790,2.819,2.842,2.861,2.878,2.895,2.913,2.932,2.951,2.970,2.988,3.007,3.027,3.048,3.074,3.106,
-3.146,3.193,3.247,3.306,3.365,3.421,3.470,3.509,3.536,3.552,3.559,3.561,3.561,3.564,3.571,3.585,
-3.605,3.629,3.656,3.681,3.702,3.717,3.725,3.726,3.720,3.707,3.687,3.661,3.626,3.581,3.525,3.457,
-3.376,3.284,3.183,3.076,2.966,2.857,2.749,2.646,2.546,2.449,2.355,2.263,2.172,2.085,2.003,1.930,
-1.868,1.820,1.787,1.769,1.763,1.768,1.779,1.792,1.804,1.814,1.820,1.823,1.828,1.835,1.848,1.868,
-1.897,1.933,1.974,2.018,2.062,2.103,2.138,2.168,2.191,2.209,2.225,2.239,2.255,2.275,2.298,2.327,
-2.361,2.399,2.441,2.486,2.533,2.581,2.628,2.675,2.721,2.768,2.815,2.865,2.919,2.979,3.045,3.120,
-3.202,3.291,3.385,3.483,3.581,3.680,3.777,3.872,3.965,4.056,4.145,4.232,4.315,4.394,4.467,4.532,
-4.588,4.638,4.683,4.727,4.775,4.831,4.899,4.982,5.081,5.194,5.320,5.457,5.602,5.755,5.917,6.090,
-6.277,6.477,6.691,6.914,7.140,7.359,7.563,7.743,7.894,8.014,8.108,8.184,8.253,8.327,8.415,8.524,
-8.654,8.800,8.952,9.098,9.228,9.334,9.410,9.457,9.480,9.485,9.481,9.473,9.465,9.458,9.452,9.448,
-9.447,9.456,9.485,9.549,9.659,9.829,10.064,10.359,10.702,11.070,11.438,11.774,12.053,12.258,12.381,13.579,
-13.661,13.659,13.601,13.516,13.436,13.381,13.364,13.387,13.445,13.524,13.613,13.701,13.781,13.855,13.928,14.008,
-14.100,14.211,14.340,14.481,14.628,14.770,14.899,15.008,15.095,15.161,15.210,15.244,15.266,15.275,15.268,15.241,
-15.189,15.111,15.011,14.899,14.791,14.706,14.664,14.681,14.769,14.929,15.156,15.435,15.746,16.066,16.375,16.653,
-16.890,17.081,17.225,17.329,17.401,17.452,17.493,17.536,17.591,17.669,17.778,17.920,18.097,18.301,18.517,18.724,
-18.895,19.001,19.015,18.919,18.704,18.375,17.955,17.477,16.981,16.513,16.114,15.813,15.628,15.560,15.599,15.721,
-15.899,16.107,16.322,16.531,16.728,16.917,17.107,17.305,17.519,17.749,17.990,18.233,18.464,18.668,18.835,18.961,
-19.046,19.100,19.137,19.173,19.224,19.300,19.408,19.547,19.709,19.885,20.060,20.226,20.375,20.506,20.624,20.739,
-20.860,20.998,21.156,21.333,21.519,21.697,21.848,21.949,21.984,21.946,21.839,21.678,21.492,21.313,21.179,21.118,
-21.150,21.279,21.491,21.759,22.045,22.308,22.508,22.619,22.625,22.531,22.350,22.109,21.835,21.552,21.277,21.015,
-20.762,20.508,20.245,19.967,19.681,19.406,19.170,19.007,18.951,19.027,19.241,19.583,20.022,20.513,21.006,21.452,
-21.818,22.094,22.290,22.442,22.598,22.814,23.138,23.598,24.201,24.922,25.715,26.515,27.254,27.870,28.319,28.582,
-28.666,28.602,28.440,28.231,28.026,27.859,27.747,27.687,27.661,27.638,27.589,27.489,27.325,27.101,26.834,26.551,
-26.286,26.071,25.931,25.881,25.928,26.064,26.280,26.558,26.884,27.245,27.632,28.038,28.455,28.875,29.285,29.667,
-29.999,30.257,30.417,30.462,30.380,30.173,29.853,29.443,28.977,28.490,28.021,27.603,27.262,27.012,26.854,26.778,
-26.763,26.778,26.794,26.782,26.720,26.601,26.426,26.214,25.992,25.794,25.652,25.592,25.626,25.753,25.949,26.180,
-26.403,26.574,26.658,26.637,26.515,26.317,26.091,25.892,25.781,25.805,25.993,26.348,26.843,27.423,28.017,28.547,
-28.937,29.132,29.097,28.831,28.358,27.726,26.996,26.234,25.497,24.827,24.247,23.759,23.345,22.978,22.622,22.248,
-21.831,21.362,20.843,20.289,19.724,19.173,18.662,18.210,17.829,17.521,17.282,17.100,16.962,16.857,16.774,16.706,
-16.652,16.611,16.584,16.568,16.561,16.557,16.548,16.527,16.487,16.428,16.354,16.275,16.203,16.154,16.139,16.162,
-16.221,16.305,16.394,16.465,16.497,16.473,16.385,16.239,16.050,15.844,15.650,15.496,15.403,15.378,15.417,15.505,
-15.615,15.719,15.787,15.800,15.748,15.632,15.465,15.264,15.051,14.846,14.661,14.501,14.365,14.242,14.122,13.992,
-13.843,13.669,13.471,13.256,13.032,12.809,12.595,12.397,12.218,12.056,11.905,11.759,11.606,11.438,11.243,11.016,
-10.752,10.455,10.130,9.792,9.456,9.143,8.871,8.655,8.505,8.417,8.383,8.381,8.385,8.367,8.302,8.174,
-7.976,7.715,7.407,7.075,6.742,6.429,6.146,5.893,5.659,5.423,5.160,4.848,4.472,4.026,3.517,2.961,
-2.383,1.809,1.259,.747,.278,-.154,-.566,-.974,-1.397,-1.849,-2.337,-2.859,-3.407,-3.966,-4.520,-5.055,
--5.557,-6.022,-6.447,-6.837,-7.201,-7.547,-7.886,-8.228,-8.579,-8.944,-9.326,-9.723,-10.133,-10.551,-10.972,-11.390,
--11.801,-12.202,-12.591,-12.970,-13.342,-13.711,-14.080,-14.451,-14.822,-15.190,-15.547,-15.888,-16.207,-16.499,-16.767,-17.016,
--17.252,-17.485,-17.719,-17.956,-18.191,-18.411,-18.601,-18.743,-18.827,-18.849,-18.820,-18.763,-18.713,-18.710,-18.796,-19.003,
--19.345,-19.821,-20.403,-21.049,-21.706,-22.318,-22.839,-23.240,-23.514,-23.675,-23.759,-23.811,-23.878,-23.996,-24.189,-24.458,
--24.786,-25.141,-25.486,-25.786,-26.018,-26.176,-26.273,-26.336,-26.400,-26.502,-26.668,-26.909,-27.222,-27.583,-27.960,-28.318,
--28.626,-28.868,-29.041,-29.158,-29.246,-29.332,-29.446,-29.604,-29.810,-30.055,-30.320,-30.582,-30.819,-31.020,-31.185,-31.325,
--31.462,-31.617,-31.808,-32.043,-32.315,-32.606,-32.893,-33.150,-33.358,-33.514,-33.629,-33.729,-33.847,-34.019,-34.266,-34.597,
--34.997,-35.433,-35.859,-36.226,-36.494,-36.641,-36.669,-36.602,-36.486,-36.372,-36.309,-36.332,-36.451,-36.655,-36.910,-37.174,
--37.401,-37.565,-37.656,-37.694,-37.721,-37.795,-37.977,-38.318,-38.846,-39.558,-40.421,-41.371,-42.331,-43.215,-43.947,-44.473,
--44.763,-44.822,-44.679,-44.386,-44.009,-43.611,-43.253,-42.979,-42.816,-42.770,-42.833,-42.981,-43.184,-43.410,-43.628,-43.815,
--43.958,-44.057,-44.119,-44.164,-44.215,-44.296,-44.430,-44.631,-44.908,-45.257,-45.669,-46.128,-46.618,-47.122,-47.627,-48.127,
--48.615,-49.089,-49.545,-49.976,-50.370,-50.713,-50.992,-51.194,-51.317,-51.368,-51.370,-51.351,-51.349,-51.401,-51.536,-51.770,
--52.102,-52.513,-52.971,-53.434,-53.863,-54.225,-54.503,-54.696,-54.818,-54.897,-54.962,-55.041,-55.152,-55.300,-55.475,-55.655,
--55.812,-55.921,-55.961,-55.921,-55.804,-55.624,-55.402,-55.166,-54.937,-54.737,-54.578,-54.465,-54.398,-54.373,-54.385,-54.428,
--54.499,-54.593,-54.707,-54.836,-54.974,-55.115,-55.252,-55.379,-55.496,-55.602,-55.701,-55.800,-55.904,-56.016,-56.135,-56.256,
--56.368,-56.460,-56.518,-56.535,-56.509,-56.444,-56.354,-56.255,-56.167,-56.110,-56.097,-56.137,-56.232,-56.377,-56.563,-56.781,
--57.019,-57.270,-57.527,-57.787,-58.045,-58.299,-58.543,-58.770,-58.972,-59.142,-59.274,-59.366,-59.420,-59.440,-59.435,-59.411,
--59.374,-59.327,-59.269,-59.195,-59.101,-58.983,-58.842,-58.684,-58.518,-58.360,-58.224,-58.127,-58.076,-58.074,-58.114,-58.186,
--58.271,-58.353,-58.420,-58.465,-58.490,-58.507,-58.531,-58.581,-58.672,-58.813,-59.005,-59.238,-59.493,-59.750,-59.984,-60.178,
--60.319,-60.407,-60.451,-60.465,-60.470,-60.486,-60.528,-60.606,-60.721,-60.869,-61.038,-61.216,-61.392,-61.558,-61.712,-61.857,
--61.997,-62.141,-62.294,-62.459,-62.636,-62.817,-62.995,-63.158,-63.298,-63.407,-63.484,-63.529,-63.549,-63.552,-63.547,-63.542,
--63.543,-63.550,-63.562,-63.575,-63.582,-63.578,-63.558,-63.520,-63.466,-63.396,-63.315,-63.226,-63.134,-63.041,-62.949,-62.859,
--62.771,-62.687,-62.609,-62.539,-62.481,-62.440,-62.419,-62.417,-62.435,-62.467,-62.507,-62.545,-62.572,-62.578,-62.556,-62.502,
--62.415,-62.299,-62.159,-62.004,-61.841,-61.678,-61.523,-61.381,-61.253,-61.143,-61.052,-60.981,-60.931,-60.903,-60.898,-60.915,
--60.952,-61.006,-61.071,-61.139,-61.203,-61.256,-61.293,-61.313,-61.315,-61.302,-61.279,-61.249,-61.217,-61.182,-61.145,-61.100,
--61.044,-60.972,-60.882,-60.773,-60.650,-60.521,-60.396,-60.285,-60.198,-60.143,-60.119,-60.125,-60.152,-60.189,-60.223,-60.240,
--60.231,-60.191,-60.117,-60.014,-59.886,-59.744,-59.595,-59.446,-59.300,-59.158,-59.018,-58.876,-58.727,-58.567,-58.393,-58.208,
--58.016,-57.823,-57.640,-57.474,-57.333,-57.220,-57.135,-57.072,-57.022,-56.975,-56.916,-56.835,-56.724,-56.581,-56.408,-56.212,
--56.005,-55.800,-55.611,-55.446,-55.312,-55.209,-55.132,-55.071,-55.016,-54.952,-54.871,-54.763,-54.627,-54.461,-54.272,-54.065,
--53.850,-53.634,-53.424,-53.224,-53.036,-52.862,-52.699,-52.544,-52.394,-52.246,-52.097,-51.944,-51.784,-51.619,-51.446,-51.269,
--51.087,-50.904,-50.721,-50.539,-50.358,-50.177,-49.993,-49.803,-49.604,-49.393,-49.170,-48.935,-48.694,-48.450,-48.210,-47.980,
--47.763,-47.560,-47.367,-47.179,-46.988,-46.786,-46.569,-46.335,-46.087,-45.833,-45.582,-45.345,-45.133,-44.950,-44.797,-44.667,
--44.549,-44.429,-44.292,-44.129,-43.931,-43.699,-43.439,-43.161,-42.879,-42.605,-42.350,-42.120,-41.915,-41.733,-41.566,-41.409,
--41.253,-41.093,-40.929,-40.760,-40.587,-40.413,-40.242,-40.075,-39.914,-39.762,-39.621,-39.495,-39.386,-39.298,-39.233,-39.186,
--39.152,-39.119,-39.071,-38.991,-38.865,-38.681,-38.436,-38.137,-37.800,-37.445,-37.099,-36.786,-36.527,-36.334,-36.206,-36.135,
--36.104,-36.094,-36.084,-36.058,-36.006,-35.926,-35.823,-35.705,-35.583,-35.466,-35.360,-35.264,-35.175,-35.087,-34.996,-34.895,
--34.786,-34.670,-34.554,-34.446,-34.351,-34.272,-34.211,-34.162,-34.116,-34.065,-34.000,-33.914,-33.805,-33.673,-33.526,-33.370,
--33.215,-33.069,-32.938,-32.826,-32.733,-32.658,-32.598,-32.549,-32.510,-32.476,-32.445,-32.414,-32.378,-32.334,-32.277,-32.202,
--32.105,-31.986,-31.845,-31.686,-31.514,-31.336,-31.156,-30.979,-30.806,-30.639,-30.476,-30.314,-30.152,-29.992,-29.835,-29.685,
--29.544,-29.414,-29.292,-29.171,-29.041,-28.889,-28.701,-28.470,-28.190,-27.870,-27.522,-27.168,-26.835,-26.546,-26.322,-26.172,
--26.095,-26.080,-26.106,-26.152,-26.199,-26.234,-26.256,-26.272,-26.297,-26.346,-26.431,-26.549,-26.684,-26.804,-26.865,-26.820,
--26.628,-26.262,-25.718,-25.018,-24.211,-23.363,-22.548,-21.836,-21.282,-20.918,-20.743,-20.734,-20.843,-21.015,-21.192,-21.326,
--21.389,-21.370,-21.277,-21.130,-20.953,-20.769,-20.588,-20.413,-20.231,-20.024,-19.771,-19.454,-19.064,-18.602,-18.082,-17.525,
--16.957,-16.402,-15.881,-15.405,-14.980,-14.600,-14.256,-13.938,-13.635,-13.337,-13.040,-12.741,-12.438,-12.133,-11.825,-11.514,
--11.204,-10.895,-10.595,-10.308,-10.046,-9.818,-9.632,-9.493,-9.399,-9.344,-9.316,-9.298,-9.272,-9.220,-9.129,-8.991,
--8.804,-8.572,-8.302,-8.004,-7.687,-7.358,-7.020,-6.676,-6.327,-5.972,-5.614,-5.258,-4.911,-4.583,-4.282,-4.016,
--3.788,-3.597,-3.434,-3.286,-3.135,-2.961,-2.745,-2.473,-2.135,-1.729,-1.258,-.734,-.171,.412,.997,1.566,
-2.105,2.604,3.053,3.453,3.804,4.113,4.390,4.650,4.908,5.181,5.486,5.837,6.243,6.707,7.225,7.786,
-8.375,8.973,9.560,10.120,10.641,11.120,11.556,11.954,12.321,12.659,12.964,13.224,13.420,13.525,13.512,13.355,
-13.039,12.563,11.940,11.201,10.391,9.558,8.753,8.020,7.388,6.871,6.465,6.152,5.907,5.701,5.510,5.317,
-5.120,4.923,4.741,4.591,4.485,4.429,4.419,4.440,4.466,4.470,4.425,4.307,4.107,3.822,3.466,3.058,
-2.623,2.189,1.777,1.403,1.078,.802,.573,.385,.230,.106,.011,-.053,-.084,-.079,-.034,.047,
-.161,.300,.452,.609,.761,.901,1.026,1.136,1.232,1.318,1.400,1.478,1.556,1.633,1.707,1.776,
-1.839,1.894,1.944,1.988,2.031,2.073,2.118,2.166,2.217,2.268,2.317,2.364,2.407,2.446,2.486,2.529,
-2.579,2.640,2.711,2.791,2.877,2.962,3.038,3.099,3.140,3.160,3.160,3.146,3.126,3.108,3.099,3.105,
-3.127,3.164,3.210,3.257,3.297,3.324,3.334,3.324,3.298,3.259,3.212,3.164,3.117,3.073,3.032,2.991,
-2.946,2.893,2.828,2.753,2.666,2.573,2.476,2.380,2.289,2.205,2.130,2.061,1.997,1.937,1.878,1.820,
-1.764,1.712,1.666,1.630,1.604,1.591,1.588,1.596,1.609,1.627,1.645,1.663,1.681,1.699,1.719,1.743,
-1.773,1.808,1.849,1.893,1.938,1.981,2.020,2.051,2.075,2.091,2.101,2.108,2.113,2.120,2.130,2.146,
-2.166,2.192,2.221,2.252,2.285,2.316,2.346,2.374,2.400,2.425,2.450,2.478,2.512,2.554,2.607,2.672,
-2.750,2.842,2.944,3.054,3.169,3.284,3.395,3.500,3.597,3.685,3.765,3.838,3.907,3.972,4.037,4.101,
-4.167,4.236,4.307,4.383,4.464,4.553,4.651,4.759,4.877,5.006,5.146,5.297,5.458,5.630,5.815,6.014,
-6.229,6.460,6.707,6.966,7.232,7.496,7.751,7.987,8.198,8.379,8.531,8.656,8.762,8.856,8.948,9.042,
-9.142,9.248,9.356,9.461,9.557,9.639,9.707,9.761,9.804,9.840,9.873,9.903,9.929,9.947,9.951,9.939,
-9.910,9.872,9.837,9.826,9.862,9.968,10.161,10.448,10.826,11.275,11.765,12.259,12.717,13.103,13.394,13.579,
-14.464,14.571,14.576,14.511,14.414,14.319,14.254,14.235,14.264,14.333,14.426,14.527,14.619,14.692,14.743,14.774,
-14.793,14.807,14.825,14.848,14.875,14.898,14.909,14.902,14.871,14.816,14.745,14.666,14.591,14.530,14.489,14.469,
-14.465,14.466,14.459,14.436,14.387,14.314,14.225,14.134,14.062,14.031,14.061,14.166,14.352,14.616,14.942,15.311,
-15.693,16.060,16.385,16.645,16.826,16.924,16.946,16.909,16.837,16.758,16.701,16.692,16.750,16.879,17.076,17.321,
-17.584,17.831,18.023,18.128,18.122,17.996,17.756,17.423,17.031,16.623,16.240,15.923,15.701,15.590,15.594,15.706,
-15.908,16.180,16.501,16.853,17.223,17.605,17.996,18.394,18.798,19.204,19.603,19.982,20.328,20.626,20.866,21.042,
-21.156,21.215,21.231,21.222,21.201,21.182,21.171,21.168,21.169,21.162,21.136,21.084,20.999,20.883,20.747,20.603,
-20.472,20.372,20.316,20.314,20.365,20.457,20.574,20.690,20.784,20.836,20.835,20.782,20.688,20.574,20.468,20.399,
-20.390,20.454,20.592,20.791,21.026,21.267,21.479,21.637,21.722,21.729,21.666,21.552,21.411,21.266,21.134,21.024,
-20.929,20.837,20.730,20.588,20.403,20.174,19.917,19.661,19.439,19.291,19.245,19.318,19.509,19.797,20.149,20.522,
-20.876,21.179,21.419,21.602,21.755,21.917,22.135,22.447,22.876,23.426,24.073,24.774,25.470,26.100,26.609,26.960,
-27.139,27.157,27.050,26.866,26.662,26.488,26.380,26.355,26.410,26.523,26.662,26.791,26.877,26.900,26.855,26.750,
-26.607,26.455,26.323,26.236,26.208,26.246,26.344,26.489,26.665,26.856,27.047,27.231,27.406,27.571,27.731,27.886,
-28.035,28.172,28.287,28.366,28.396,28.365,28.265,28.097,27.868,27.591,27.288,26.981,26.692,26.442,26.244,26.104,
-26.017,25.974,25.957,25.947,25.924,25.876,25.796,25.686,25.559,25.433,25.329,25.269,25.267,25.326,25.440,25.587,
-25.739,25.864,25.931,25.920,25.829,25.670,25.475,25.289,25.164,25.148,25.275,25.562,25.997,26.545,27.150,27.741,
-28.245,28.599,28.755,28.693,28.418,27.960,27.369,26.701,26.014,25.357,24.759,24.232,23.767,23.342,22.925,22.485,
-21.996,21.445,20.834,20.179,19.505,18.847,18.239,17.710,17.281,16.962,16.750,16.636,16.600,16.623,16.685,16.768,
-16.860,16.952,17.038,17.113,17.172,17.209,17.219,17.194,17.131,17.028,16.891,16.728,16.555,16.390,16.248,16.145,
-16.086,16.070,16.089,16.124,16.157,16.168,16.142,16.073,15.966,15.832,15.691,15.566,15.476,15.433,15.442,15.495,
-15.575,15.658,15.719,15.736,15.693,15.587,15.423,15.213,14.979,14.740,14.514,14.313,14.142,13.999,13.874,13.756,
-13.633,13.496,13.339,13.164,12.972,12.771,12.566,12.365,12.170,11.983,11.801,11.620,11.433,11.237,11.024,10.792,
-10.539,10.266,9.975,9.672,9.363,9.057,8.764,8.490,8.244,8.028,7.842,7.680,7.532,7.386,7.226,7.040,
-6.818,6.555,6.253,5.918,5.562,5.194,4.827,4.465,4.112,3.763,3.411,3.047,2.662,2.250,1.812,1.352,
-.880,.407,-.055,-.496,-.913,-1.307,-1.684,-2.054,-2.428,-2.817,-3.227,-3.660,-4.111,-4.574,-5.039,-5.494,
--5.931,-6.343,-6.729,-7.090,-7.434,-7.766,-8.095,-8.429,-8.773,-9.131,-9.501,-9.882,-10.269,-10.655,-11.034,-11.401,
--11.752,-12.087,-12.408,-12.721,-13.031,-13.347,-13.675,-14.019,-14.377,-14.745,-15.114,-15.472,-15.807,-16.110,-16.376,-16.606,
--16.805,-16.985,-17.158,-17.334,-17.521,-17.718,-17.919,-18.110,-18.279,-18.415,-18.514,-18.583,-18.641,-18.717,-18.845,-19.057,
--19.380,-19.822,-20.377,-21.017,-21.698,-22.369,-22.977,-23.479,-23.851,-24.088,-24.209,-24.251,-24.262,-24.289,-24.372,-24.534,
--24.779,-25.092,-25.442,-25.794,-26.114,-26.380,-26.584,-26.736,-26.860,-26.986,-27.144,-27.356,-27.628,-27.951,-28.303,-28.652,
--28.964,-29.214,-29.390,-29.496,-29.551,-29.585,-29.631,-29.719,-29.867,-30.077,-30.340,-30.632,-30.926,-31.195,-31.423,-31.603,
--31.743,-31.860,-31.975,-32.107,-32.267,-32.457,-32.667,-32.878,-33.073,-33.238,-33.369,-33.474,-33.576,-33.702,-33.879,-34.129,
--34.458,-34.855,-35.294,-35.736,-36.139,-36.467,-36.696,-36.824,-36.867,-36.855,-36.830,-36.829,-36.881,-36.999,-37.176,-37.391,
--37.613,-37.812,-37.967,-38.074,-38.148,-38.222,-38.341,-38.550,-38.887,-39.370,-39.995,-40.733,-41.532,-42.330,-43.059,-43.662,
--44.096,-44.343,-44.406,-44.312,-44.102,-43.826,-43.533,-43.267,-43.062,-42.937,-42.898,-42.942,-43.056,-43.224,-43.429,-43.656,
--43.893,-44.129,-44.363,-44.592,-44.822,-45.057,-45.305,-45.574,-45.870,-46.199,-46.563,-46.963,-47.395,-47.852,-48.324,-48.802,
--49.271,-49.718,-50.131,-50.496,-50.802,-51.040,-51.208,-51.307,-51.345,-51.338,-51.310,-51.286,-51.295,-51.362,-51.507,-51.740,
--52.058,-52.446,-52.880,-53.331,-53.765,-54.156,-54.485,-54.745,-54.940,-55.086,-55.202,-55.313,-55.436,-55.586,-55.763,-55.962,
--56.166,-56.356,-56.513,-56.618,-56.660,-56.638,-56.554,-56.420,-56.254,-56.073,-55.897,-55.743,-55.623,-55.545,-55.512,-55.521,
--55.562,-55.623,-55.688,-55.738,-55.759,-55.740,-55.679,-55.582,-55.464,-55.348,-55.261,-55.229,-55.273,-55.405,-55.623,-55.910,
--56.242,-56.582,-56.898,-57.158,-57.343,-57.446,-57.475,-57.447,-57.389,-57.325,-57.279,-57.263,-57.280,-57.322,-57.377,-57.429,
--57.465,-57.480,-57.474,-57.460,-57.451,-57.467,-57.523,-57.626,-57.780,-57.975,-58.198,-58.432,-58.657,-58.860,-59.031,-59.164,
--59.261,-59.323,-59.352,-59.352,-59.321,-59.259,-59.162,-59.032,-58.875,-58.699,-58.520,-58.355,-58.222,-58.135,-58.103,-58.125,
--58.193,-58.294,-58.410,-58.525,-58.626,-58.707,-58.771,-58.826,-58.886,-58.965,-59.073,-59.215,-59.386,-59.578,-59.776,-59.962,
--60.124,-60.253,-60.347,-60.413,-60.464,-60.513,-60.577,-60.664,-60.780,-60.921,-61.080,-61.245,-61.405,-61.549,-61.675,-61.785,
--61.886,-61.990,-62.107,-62.246,-62.411,-62.599,-62.804,-63.011,-63.207,-63.379,-63.517,-63.618,-63.684,-63.723,-63.746,-63.763,
--63.784,-63.815,-63.854,-63.900,-63.942,-63.974,-63.985,-63.971,-63.929,-63.862,-63.776,-63.679,-63.578,-63.482,-63.395,-63.321,
--63.259,-63.210,-63.172,-63.144,-63.127,-63.122,-63.132,-63.159,-63.204,-63.264,-63.335,-63.407,-63.471,-63.514,-63.526,-63.499,
--63.427,-63.312,-63.157,-62.973,-62.770,-62.562,-62.361,-62.176,-62.015,-61.882,-61.779,-61.704,-61.656,-61.631,-61.625,-61.635,
--61.659,-61.691,-61.728,-61.765,-61.799,-61.823,-61.836,-61.834,-61.818,-61.789,-61.748,-61.701,-61.649,-61.595,-61.539,-61.481,
--61.418,-61.346,-61.262,-61.165,-61.054,-60.933,-60.809,-60.689,-60.581,-60.494,-60.434,-60.402,-60.397,-60.414,-60.443,-60.475,
--60.498,-60.503,-60.483,-60.435,-60.358,-60.255,-60.131,-59.991,-59.842,-59.686,-59.527,-59.364,-59.198,-59.025,-58.845,-58.659,
--58.467,-58.274,-58.086,-57.908,-57.747,-57.609,-57.495,-57.404,-57.332,-57.271,-57.212,-57.144,-57.058,-56.949,-56.814,-56.654,
--56.476,-56.288,-56.102,-55.928,-55.773,-55.643,-55.537,-55.453,-55.382,-55.314,-55.241,-55.153,-55.043,-54.908,-54.748,-54.568,
--54.372,-54.167,-53.961,-53.760,-53.567,-53.385,-53.216,-53.056,-52.904,-52.756,-52.607,-52.456,-52.298,-52.132,-51.957,-51.775,
--51.588,-51.397,-51.207,-51.018,-50.831,-50.647,-50.462,-50.274,-50.078,-49.870,-49.648,-49.414,-49.169,-48.919,-48.672,-48.434,
--48.212,-48.009,-47.823,-47.650,-47.482,-47.308,-47.120,-46.911,-46.679,-46.428,-46.166,-45.906,-45.660,-45.441,-45.254,-45.103,
--44.981,-44.876,-44.776,-44.662,-44.523,-44.349,-44.138,-43.894,-43.625,-43.344,-43.064,-42.796,-42.546,-42.318,-42.110,-41.917,
--41.733,-41.553,-41.372,-41.187,-41.001,-40.816,-40.634,-40.459,-40.294,-40.142,-40.003,-39.880,-39.775,-39.691,-39.629,-39.592,
--39.576,-39.578,-39.587,-39.591,-39.574,-39.520,-39.415,-39.253,-39.030,-38.755,-38.441,-38.107,-37.776,-37.468,-37.200,-36.980,
--36.812,-36.689,-36.603,-36.539,-36.485,-36.429,-36.364,-36.285,-36.193,-36.090,-35.978,-35.861,-35.740,-35.616,-35.488,-35.358,
--35.226,-35.094,-34.968,-34.850,-34.745,-34.654,-34.578,-34.512,-34.453,-34.392,-34.324,-34.244,-34.148,-34.036,-33.911,-33.778,
--33.642,-33.509,-33.384,-33.268,-33.163,-33.068,-32.984,-32.909,-32.843,-32.786,-32.739,-32.699,-32.666,-32.633,-32.595,-32.545,
--32.476,-32.382,-32.262,-32.117,-31.952,-31.773,-31.590,-31.412,-31.243,-31.086,-30.941,-30.804,-30.667,-30.527,-30.377,-30.215,
--30.041,-29.857,-29.664,-29.463,-29.253,-29.031,-28.791,-28.528,-28.238,-27.923,-27.590,-27.250,-26.922,-26.627,-26.382,-26.204,
--26.098,-26.063,-26.089,-26.159,-26.254,-26.358,-26.460,-26.554,-26.642,-26.733,-26.830,-26.937,-27.045,-27.134,-27.174,-27.129,
--26.961,-26.641,-26.154,-25.509,-24.734,-23.880,-23.013,-22.205,-21.519,-21.006,-20.692,-20.578,-20.637,-20.824,-21.082,-21.352,
--21.583,-21.739,-21.800,-21.764,-21.642,-21.453,-21.219,-20.955,-20.670,-20.365,-20.033,-19.666,-19.251,-18.785,-18.266,-17.701,
--17.105,-16.493,-15.885,-15.297,-14.743,-14.231,-13.767,-13.352,-12.981,-12.653,-12.359,-12.096,-11.857,-11.635,-11.425,-11.223,
--11.024,-10.831,-10.643,-10.468,-10.312,-10.182,-10.085,-10.023,-9.994,-9.990,-9.998,-10.003,-9.989,-9.941,-9.851,-9.714,
--9.534,-9.317,-9.074,-8.813,-8.542,-8.264,-7.977,-7.677,-7.356,-7.012,-6.643,-6.254,-5.857,-5.467,-5.101,-4.774,
--4.497,-4.273,-4.097,-3.956,-3.831,-3.699,-3.542,-3.341,-3.088,-2.779,-2.419,-2.017,-1.582,-1.125,-.656,-.181,
-.296,.772,1.243,1.705,2.152,2.578,2.976,3.345,3.688,4.015,4.342,4.690,5.080,5.531,6.056,6.655,
-7.317,8.021,8.737,9.432,10.079,10.654,11.149,11.566,11.917,12.220,12.492,12.745,12.976,13.172,13.304,13.336,
-13.233,12.965,12.517,11.897,11.130,10.264,9.358,8.475,7.672,6.991,6.456,6.065,5.797,5.618,5.486,5.363,
-5.219,5.039,4.825,4.591,4.359,4.152,3.987,3.873,3.803,3.761,3.719,3.648,3.523,3.324,3.046,2.693,
-2.282,1.838,1.386,.953,.556,.209,-.085,-.328,-.525,-.683,-.808,-.901,-.961,-.986,-.973,-.919,
--.827,-.702,-.553,-.391,-.229,-.075,.061,.179,.278,.363,.439,.514,.590,.671,.754,.838,
-.919,.994,1.060,1.119,1.174,1.227,1.283,1.345,1.415,1.491,1.569,1.646,1.717,1.779,1.830,1.873,
-1.912,1.953,2.000,2.059,2.130,2.210,2.295,2.377,2.448,2.502,2.535,2.546,2.542,2.528,2.513,2.507,
-2.515,2.539,2.580,2.630,2.681,2.726,2.756,2.766,2.756,2.727,2.685,2.637,2.590,2.550,2.518,2.493,
-2.472,2.448,2.416,2.370,2.309,2.233,2.145,2.053,1.962,1.879,1.808,1.752,1.711,1.681,1.658,1.638,
-1.618,1.594,1.568,1.538,1.509,1.483,1.464,1.451,1.447,1.452,1.463,1.480,1.501,1.525,1.553,1.584,
-1.619,1.658,1.701,1.747,1.794,1.840,1.882,1.918,1.946,1.967,1.980,1.987,1.990,1.991,1.992,1.994,
-1.997,2.002,2.009,2.015,2.022,2.029,2.036,2.044,2.054,2.068,2.088,2.116,2.152,2.200,2.260,2.333,
-2.420,2.519,2.628,2.745,2.867,2.989,3.106,3.215,3.313,3.397,3.468,3.526,3.574,3.617,3.657,3.701,
-3.752,3.815,3.893,3.987,4.100,4.230,4.379,4.544,4.724,4.918,5.123,5.339,5.565,5.800,6.046,6.302,
-6.569,6.846,7.132,7.424,7.717,8.005,8.282,8.543,8.781,8.996,9.186,9.354,9.504,9.641,9.769,9.890,
-10.004,10.111,10.207,10.288,10.351,10.396,10.424,10.441,10.454,10.468,10.489,10.516,10.546,10.571,10.578,10.559,
-10.508,10.425,10.322,10.219,10.144,10.131,10.210,10.402,10.719,11.153,11.681,12.265,12.857,13.409,13.879,14.235,
-14.464,14.739,14.861,14.874,14.814,14.719,14.627,14.567,14.556,14.597,14.680,14.786,14.896,14.990,15.055,15.088,
-15.090,15.071,15.041,15.008,14.978,14.947,14.909,14.853,14.770,14.652,14.500,14.319,14.124,13.932,13.761,13.626,
-13.535,13.488,13.475,13.480,13.484,13.469,13.421,13.338,13.225,13.101,12.987,12.913,12.903,12.975,13.139,13.389,
-13.708,14.071,14.442,14.787,15.074,15.283,15.403,15.437,15.402,15.326,15.241,15.181,15.175,15.243,15.392,15.614,
-15.891,16.191,16.481,16.724,16.890,16.960,16.927,16.796,16.589,16.333,16.065,15.820,15.631,15.523,15.514,15.611,
-15.813,16.113,16.499,16.958,17.477,18.041,18.638,19.254,19.877,20.490,21.078,21.625,22.114,22.535,22.877,23.140,
-23.324,23.439,23.495,23.504,23.477,23.421,23.339,23.228,23.082,22.891,22.647,22.345,21.987,21.582,21.147,20.704,
-20.281,19.907,19.606,19.396,19.285,19.270,19.338,19.466,19.628,19.795,19.943,20.055,20.122,20.148,20.144,20.128,
-20.119,20.134,20.185,20.273,20.392,20.526,20.658,20.767,20.839,20.866,20.851,20.805,20.746,20.695,20.668,20.678,
-20.724,20.797,20.876,20.937,20.955,20.912,20.802,20.629,20.413,20.182,19.970,19.807,19.718,19.713,19.787,19.926,
-20.105,20.297,20.482,20.649,20.800,20.950,21.124,21.350,21.652,22.043,22.520,23.062,23.633,24.189,24.681,25.070,
-25.330,25.456,25.462,25.381,25.256,25.134,25.059,25.058,25.145,25.313,25.542,25.799,26.050,26.265,26.425,26.520,
-26.557,26.552,26.527,26.505,26.503,26.532,26.590,26.670,26.756,26.830,26.876,26.886,26.855,26.789,26.699,26.599,
-26.506,26.430,26.379,26.353,26.347,26.349,26.348,26.330,26.286,26.212,26.106,25.975,25.828,25.676,25.529,25.396,
-25.282,25.186,25.106,25.035,24.966,24.896,24.821,24.745,24.675,24.621,24.595,24.607,24.662,24.760,24.890,25.034,
-25.166,25.261,25.295,25.252,25.128,24.936,24.703,24.470,24.285,24.194,24.236,24.436,24.794,25.292,25.885,26.515,
-27.115,27.619,27.974,28.142,28.109,27.887,27.507,27.013,26.457,25.887,25.339,24.836,24.381,23.961,23.551,23.120,
-22.639,22.089,21.460,20.759,20.008,19.238,18.490,17.802,17.210,16.739,16.406,16.210,16.144,16.189,16.321,16.515,
-16.743,16.983,17.216,17.425,17.597,17.724,17.797,17.812,17.768,17.665,17.510,17.311,17.082,16.841,16.603,16.385,
-16.199,16.053,15.948,15.877,15.833,15.803,15.775,15.742,15.699,15.651,15.602,15.563,15.544,15.551,15.585,15.643,
-15.711,15.774,15.813,15.810,15.753,15.637,15.463,15.242,14.989,14.724,14.462,14.220,14.005,13.820,13.662,13.523,
-13.394,13.265,13.129,12.981,12.820,12.645,12.459,12.264,12.061,11.850,11.629,11.398,11.154,10.898,10.632,10.359,
-10.082,9.807,9.536,9.273,9.016,8.764,8.515,8.266,8.013,7.755,7.492,7.223,6.949,6.672,6.389,6.100,
-5.802,5.491,5.163,4.813,4.439,4.040,3.617,3.171,2.707,2.230,1.745,1.258,.774,.299,-.161,-.602,
--1.021,-1.414,-1.783,-2.128,-2.454,-2.767,-3.076,-3.386,-3.706,-4.039,-4.389,-4.752,-5.126,-5.504,-5.878,-6.241,
--6.587,-6.914,-7.221,-7.511,-7.789,-8.064,-8.342,-8.631,-8.936,-9.259,-9.600,-9.958,-10.325,-10.695,-11.058,-11.408,
--11.738,-12.045,-12.328,-12.593,-12.846,-13.098,-13.360,-13.641,-13.947,-14.278,-14.630,-14.992,-15.350,-15.688,-15.993,-16.256,
--16.473,-16.648,-16.793,-16.920,-17.046,-17.182,-17.338,-17.515,-17.709,-17.916,-18.126,-18.337,-18.551,-18.777,-19.031,-19.334,
--19.705,-20.156,-20.687,-21.288,-21.932,-22.579,-23.188,-23.717,-24.133,-24.419,-24.579,-24.634,-24.621,-24.586,-24.575,-24.624,
--24.758,-24.982,-25.282,-25.635,-26.008,-26.372,-26.704,-26.994,-27.247,-27.476,-27.703,-27.947,-28.222,-28.531,-28.862,-29.195,
--29.504,-29.764,-29.958,-30.080,-30.140,-30.160,-30.171,-30.205,-30.289,-30.438,-30.654,-30.924,-31.222,-31.521,-31.791,-32.014,
--32.180,-32.293,-32.369,-32.427,-32.487,-32.567,-32.671,-32.799,-32.940,-33.082,-33.213,-33.330,-33.437,-33.548,-33.682,-33.861,
--34.103,-34.415,-34.791,-35.214,-35.655,-36.083,-36.468,-36.785,-37.026,-37.195,-37.306,-37.383,-37.451,-37.532,-37.638,-37.771,
--37.924,-38.086,-38.246,-38.395,-38.537,-38.683,-38.857,-39.082,-39.382,-39.774,-40.261,-40.829,-41.451,-42.090,-42.701,-43.243,
--43.682,-43.998,-44.186,-44.256,-44.227,-44.129,-43.992,-43.844,-43.709,-43.603,-43.536,-43.514,-43.539,-43.614,-43.737,-43.911,
--44.132,-44.399,-44.704,-45.040,-45.395,-45.758,-46.119,-46.473,-46.817,-47.156,-47.499,-47.854,-48.232,-48.640,-49.077,-49.537,
--50.004,-50.458,-50.874,-51.227,-51.499,-51.676,-51.755,-51.745,-51.664,-51.540,-51.404,-51.290,-51.229,-51.245,-51.352,-51.555,
--51.848,-52.216,-52.638,-53.088,-53.541,-53.976,-54.376,-54.730,-55.037,-55.299,-55.524,-55.721,-55.902,-56.076,-56.251,-56.429,
--56.613,-56.797,-56.977,-57.145,-57.290,-57.404,-57.479,-57.507,-57.487,-57.422,-57.319,-57.191,-57.054,-56.925,-56.819,-56.746,
--56.709,-56.700,-56.703,-56.692,-56.643,-56.530,-56.338,-56.067,-55.729,-55.356,-54.990,-54.682,-54.478,-54.416,-54.518,-54.781,
--55.185,-55.690,-56.244,-56.795,-57.298,-57.720,-58.049,-58.288,-58.457,-58.581,-58.687,-58.793,-58.905,-59.015,-59.105,-59.148,
--59.120,-59.002,-58.791,-58.499,-58.152,-57.790,-57.454,-57.183,-57.009,-56.946,-56.994,-57.140,-57.358,-57.618,-57.890,-58.151,
--58.384,-58.580,-58.738,-58.861,-58.952,-59.015,-59.051,-59.057,-59.032,-58.978,-58.896,-58.795,-58.688,-58.588,-58.510,-58.465,
--58.461,-58.496,-58.565,-58.655,-58.753,-58.849,-58.932,-59.001,-59.060,-59.116,-59.178,-59.257,-59.359,-59.482,-59.623,-59.773,
--59.919,-60.053,-60.167,-60.259,-60.333,-60.399,-60.466,-60.545,-60.643,-60.762,-60.898,-61.042,-61.184,-61.314,-61.423,-61.511,
--61.582,-61.647,-61.720,-61.816,-61.945,-62.116,-62.325,-62.565,-62.821,-63.076,-63.311,-63.514,-63.675,-63.793,-63.874,-63.928,
--63.968,-64.005,-64.049,-64.103,-64.167,-64.234,-64.295,-64.339,-64.357,-64.344,-64.299,-64.226,-64.131,-64.024,-63.916,-63.817,
--63.734,-63.673,-63.637,-63.626,-63.640,-63.676,-63.733,-63.807,-63.894,-63.991,-64.090,-64.185,-64.265,-64.321,-64.344,-64.327,
--64.266,-64.160,-64.013,-63.832,-63.628,-63.413,-63.200,-62.999,-62.820,-62.669,-62.547,-62.455,-62.390,-62.347,-62.321,-62.309,
--62.305,-62.307,-62.311,-62.315,-62.315,-62.309,-62.294,-62.269,-62.233,-62.184,-62.124,-62.054,-61.977,-61.895,-61.811,-61.726,
--61.641,-61.557,-61.471,-61.385,-61.296,-61.206,-61.115,-61.026,-60.943,-60.868,-60.806,-60.758,-60.725,-60.706,-60.698,-60.697,
--60.696,-60.690,-60.673,-60.640,-60.588,-60.516,-60.423,-60.312,-60.185,-60.044,-59.893,-59.733,-59.567,-59.396,-59.221,-59.043,
--58.864,-58.686,-58.512,-58.345,-58.188,-58.043,-57.913,-57.799,-57.698,-57.608,-57.525,-57.444,-57.359,-57.267,-57.164,-57.049,
--56.922,-56.786,-56.644,-56.501,-56.360,-56.224,-56.095,-55.971,-55.852,-55.735,-55.615,-55.491,-55.359,-55.219,-55.069,-54.912,
--54.749,-54.581,-54.412,-54.242,-54.073,-53.906,-53.741,-53.578,-53.416,-53.254,-53.092,-52.928,-52.761,-52.591,-52.416,-52.237,
--52.054,-51.869,-51.684,-51.499,-51.316,-51.135,-50.956,-50.776,-50.591,-50.399,-50.196,-49.979,-49.750,-49.510,-49.266,-49.023,
--48.789,-48.569,-48.368,-48.184,-48.013,-47.848,-47.680,-47.498,-47.296,-47.070,-46.821,-46.555,-46.283,-46.016,-45.766,-45.542,
--45.349,-45.186,-45.047,-44.923,-44.802,-44.672,-44.524,-44.355,-44.163,-43.951,-43.726,-43.493,-43.260,-43.031,-42.808,-42.591,
--42.378,-42.170,-41.965,-41.763,-41.567,-41.380,-41.205,-41.045,-40.899,-40.768,-40.647,-40.535,-40.427,-40.322,-40.220,-40.122,
--40.031,-39.951,-39.883,-39.826,-39.775,-39.723,-39.659,-39.572,-39.452,-39.293,-39.094,-38.858,-38.595,-38.318,-38.042,-37.781,
--37.549,-37.352,-37.195,-37.074,-36.983,-36.914,-36.857,-36.800,-36.736,-36.660,-36.566,-36.455,-36.327,-36.186,-36.035,-35.879,
--35.725,-35.577,-35.441,-35.319,-35.214,-35.124,-35.047,-34.979,-34.914,-34.845,-34.769,-34.681,-34.581,-34.470,-34.351,-34.227,
--34.104,-33.983,-33.865,-33.751,-33.637,-33.524,-33.409,-33.295,-33.183,-33.079,-32.988,-32.914,-32.860,-32.823,-32.799,-32.777,
--32.747,-32.696,-32.615,-32.497,-32.344,-32.160,-31.957,-31.746,-31.542,-31.354,-31.189,-31.045,-30.917,-30.793,-30.663,-30.512,
--30.333,-30.119,-29.870,-29.590,-29.286,-28.966,-28.638,-28.309,-27.985,-27.667,-27.361,-27.068,-26.795,-26.546,-26.330,-26.151,
--26.016,-25.925,-25.875,-25.861,-25.874,-25.904,-25.945,-25.989,-26.035,-26.085,-26.139,-26.198,-26.256,-26.302,-26.316,-26.273,
--26.145,-25.907,-25.539,-25.038,-24.414,-23.698,-22.933,-22.174,-21.478,-20.897,-20.469,-20.214,-20.132,-20.200,-20.380,-20.624,
--20.880,-21.102,-21.253,-21.311,-21.267,-21.124,-20.894,-20.597,-20.248,-19.863,-19.453,-19.023,-18.574,-18.105,-17.616,-17.106,
--16.578,-16.037,-15.492,-14.954,-14.431,-13.937,-13.480,-13.069,-12.710,-12.404,-12.154,-11.953,-11.796,-11.674,-11.575,-11.490,
--11.409,-11.326,-11.240,-11.152,-11.066,-10.990,-10.928,-10.884,-10.856,-10.835,-10.812,-10.773,-10.703,-10.592,-10.436,-10.236,
--10.002,-9.747,-9.487,-9.237,-9.005,-8.791,-8.591,-8.389,-8.169,-7.916,-7.618,-7.273,-6.887,-6.478,-6.066,-5.677,
--5.330,-5.038,-4.805,-4.622,-4.473,-4.335,-4.185,-4.005,-3.784,-3.521,-3.221,-2.897,-2.562,-2.229,-1.901,-1.578,
--1.250,-.904,-.529,-.116,.338,.824,1.329,1.832,2.317,2.768,3.184,3.573,3.954,4.356,4.807,5.331,
-5.943,6.640,7.405,8.206,9.003,9.755,10.425,10.992,11.447,11.799,12.066,12.274,12.444,12.589,12.705,12.777,
-12.776,12.666,12.415,12.004,11.428,10.708,9.883,9.008,8.147,7.359,6.692,6.173,5.807,5.576,5.444,5.365,
-5.295,5.196,5.045,4.837,4.582,4.300,4.019,3.761,3.543,3.368,3.226,3.101,2.966,2.798,2.579,2.298,
-1.959,1.571,1.156,.737,.335,-.033,-.354,-.627,-.853,-1.038,-1.190,-1.313,-1.409,-1.478,-1.516,-1.518,
--1.483,-1.410,-1.305,-1.177,-1.035,-.892,-.757,-.638,-.537,-.452,-.378,-.307,-.235,-.155,-.068,.025,
-.119,.208,.287,.353,.407,.452,.493,.537,.590,.654,.731,.816,.905,.989,1.063,1.123,
-1.168,1.199,1.224,1.249,1.280,1.322,1.378,1.446,1.521,1.595,1.663,1.717,1.756,1.779,1.790,1.795,
-1.801,1.814,1.838,1.873,1.917,1.964,2.009,2.046,2.070,2.079,2.076,2.063,2.045,2.028,2.015,2.006,
-2.001,1.996,1.985,1.964,1.927,1.874,1.806,1.727,1.644,1.564,1.494,1.438,1.400,1.379,1.372,1.375,
-1.382,1.388,1.390,1.385,1.374,1.358,1.338,1.319,1.302,1.289,1.282,1.281,1.286,1.297,1.314,1.338,
-1.368,1.404,1.446,1.493,1.543,1.595,1.645,1.692,1.733,1.768,1.796,1.819,1.836,1.849,1.858,1.865,
-1.868,1.867,1.861,1.850,1.834,1.815,1.795,1.778,1.766,1.764,1.776,1.802,1.844,1.902,1.975,2.058,
-2.151,2.250,2.351,2.454,2.555,2.653,2.746,2.834,2.914,2.986,3.049,3.104,3.151,3.194,3.235,3.279,
-3.331,3.397,3.482,3.591,3.728,3.893,4.088,4.313,4.563,4.836,5.129,5.438,5.759,6.090,6.428,6.771,
-7.117,7.464,7.809,8.146,8.472,8.780,9.066,9.327,9.559,9.764,9.944,10.104,10.248,10.383,10.511,10.634,
-10.749,10.852,10.937,10.997,11.029,11.031,11.007,10.965,10.918,10.876,10.850,10.846,10.863,10.893,10.921,10.932,
-10.910,10.844,10.736,10.595,10.448,10.326,10.268,10.309,10.476,10.783,11.221,11.768,12.380,13.008,13.597,14.102,
-14.488,14.739,14.459,14.568,14.570,14.497,14.389,14.284,14.212,14.189,14.220,14.297,14.401,14.512,14.611,14.684,
-14.728,14.744,14.743,14.734,14.728,14.729,14.735,14.735,14.718,14.666,14.569,14.420,14.223,13.988,13.734,13.482,
-13.254,13.065,12.923,12.826,12.763,12.718,12.672,12.608,12.515,12.394,12.251,12.105,11.978,11.893,11.869,11.920,
-12.045,12.236,12.474,12.733,12.987,13.212,13.389,13.512,13.585,13.622,13.644,13.674,13.738,13.853,14.029,14.266,
-14.553,14.872,15.197,15.502,15.762,15.960,16.082,16.129,16.105,16.026,15.911,15.783,15.666,15.584,15.556,15.599,
-15.726,15.948,16.268,16.689,17.205,17.807,18.482,19.211,19.968,20.728,21.463,22.149,22.763,23.291,23.725,24.064,
-24.315,24.490,24.600,24.657,24.668,24.637,24.560,24.429,24.232,23.960,23.604,23.165,22.647,22.069,21.452,20.830,
-20.234,19.701,19.258,18.929,18.726,18.650,18.692,18.834,19.049,19.307,19.579,19.839,20.066,20.248,20.378,20.462,
-20.506,20.523,20.524,20.521,20.518,20.518,20.519,20.517,20.507,20.485,20.453,20.415,20.382,20.366,20.378,20.428,
-20.520,20.649,20.804,20.967,21.114,21.222,21.274,21.259,21.175,21.032,20.848,20.645,20.448,20.279,20.152,20.073,
-20.041,20.048,20.085,20.143,20.217,20.311,20.433,20.597,20.816,21.101,21.454,21.866,22.318,22.782,23.224,23.610,
-23.915,24.124,24.237,24.268,24.245,24.203,24.176,24.196,24.281,24.440,24.663,24.932,25.221,25.503,25.753,25.957,
-26.108,26.212,26.282,26.332,26.380,26.437,26.506,26.584,26.659,26.716,26.739,26.715,26.636,26.504,26.328,26.121,
-25.904,25.695,25.509,25.360,25.251,25.181,25.144,25.128,25.123,25.118,25.107,25.083,25.045,24.995,24.934,24.863,
-24.783,24.694,24.595,24.484,24.363,24.233,24.102,23.978,23.875,23.806,23.784,23.816,23.904,24.042,24.215,24.400,
-24.568,24.690,24.740,24.701,24.568,24.349,24.071,23.772,23.497,23.296,23.212,23.278,23.508,23.895,24.413,25.016,
-25.646,26.243,26.749,27.117,27.319,27.345,27.208,26.935,26.564,26.137,25.693,25.262,24.857,24.479,24.115,23.740,
-23.329,22.853,22.297,21.651,20.924,20.135,19.317,18.508,17.750,17.082,16.536,16.133,15.882,15.780,15.813,15.957,
-16.185,16.464,16.765,17.059,17.324,17.541,17.698,17.789,17.813,17.772,17.673,17.524,17.338,17.127,16.902,16.677,
-16.459,16.258,16.078,15.921,15.787,15.675,15.584,15.512,15.460,15.429,15.422,15.440,15.484,15.555,15.645,15.746,
-15.846,15.930,15.983,15.990,15.943,15.836,15.673,15.460,15.212,14.942,14.667,14.400,14.152,13.929,13.732,13.557,
-13.400,13.254,13.113,12.972,12.827,12.674,12.513,12.340,12.152,11.947,11.720,11.469,11.192,10.891,10.572,10.241,
-9.907,9.581,9.270,8.981,8.715,8.470,8.240,8.016,7.787,7.547,7.287,7.005,6.703,6.383,6.051,5.713,
-5.372,5.029,4.683,4.328,3.956,3.559,3.131,2.666,2.164,1.628,1.069,.496,-.074,-.627,-1.148,-1.628,
--2.059,-2.438,-2.769,-3.059,-3.316,-3.553,-3.783,-4.015,-4.258,-4.518,-4.796,-5.092,-5.401,-5.719,-6.039,-6.356,
--6.665,-6.962,-7.248,-7.521,-7.784,-8.041,-8.296,-8.554,-8.819,-9.096,-9.388,-9.697,-10.022,-10.360,-10.706,-11.053,
--11.394,-11.720,-12.026,-12.309,-12.570,-12.815,-13.053,-13.294,-13.551,-13.832,-14.143,-14.481,-14.840,-15.208,-15.569,-15.906,
--16.207,-16.462,-16.670,-16.837,-16.975,-17.100,-17.228,-17.374,-17.550,-17.761,-18.009,-18.291,-18.605,-18.947,-19.319,-19.723,
--20.163,-20.644,-21.166,-21.723,-22.301,-22.879,-23.429,-23.921,-24.329,-24.633,-24.826,-24.917,-24.928,-24.890,-24.843,-24.825,
--24.866,-24.987,-25.191,-25.472,-25.810,-26.180,-26.558,-26.924,-27.268,-27.588,-27.891,-28.189,-28.492,-28.807,-29.131,-29.456,
--29.766,-30.041,-30.264,-30.427,-30.529,-30.581,-30.606,-30.628,-30.676,-30.771,-30.925,-31.137,-31.394,-31.675,-31.952,-32.203,
--32.407,-32.557,-32.656,-32.715,-32.753,-32.788,-32.838,-32.910,-33.007,-33.123,-33.248,-33.374,-33.493,-33.606,-33.720,-33.849,
--34.008,-34.213,-34.474,-34.793,-35.162,-35.567,-35.986,-36.396,-36.775,-37.107,-37.385,-37.606,-37.778,-37.910,-38.014,-38.100,
--38.180,-38.260,-38.346,-38.448,-38.572,-38.732,-38.939,-39.205,-39.540,-39.946,-40.418,-40.941,-41.495,-42.050,-42.580,-43.057,
--43.463,-43.788,-44.032,-44.203,-44.315,-44.386,-44.432,-44.464,-44.489,-44.512,-44.533,-44.553,-44.574,-44.604,-44.653,-44.735,
--44.861,-45.041,-45.278,-45.568,-45.900,-46.255,-46.616,-46.966,-47.295,-47.601,-47.890,-48.178,-48.481,-48.819,-49.202,-49.632,
--50.099,-50.580,-51.044,-51.457,-51.785,-52.004,-52.102,-52.082,-51.963,-51.777,-51.564,-51.367,-51.224,-51.165,-51.208,-51.357,
--51.605,-51.936,-52.328,-52.758,-53.203,-53.646,-54.076,-54.482,-54.862,-55.212,-55.531,-55.815,-56.065,-56.280,-56.461,-56.615,
--56.748,-56.871,-56.995,-57.129,-57.276,-57.435,-57.597,-57.747,-57.869,-57.945,-57.963,-57.920,-57.821,-57.682,-57.525,-57.374,
--57.250,-57.164,-57.114,-57.083,-57.045,-56.963,-56.805,-56.546,-56.178,-55.716,-55.194,-54.667,-54.198,-53.851,-53.678,-53.713,
--53.960,-54.399,-54.987,-55.664,-56.367,-57.039,-57.640,-58.147,-58.560,-58.896,-59.181,-59.440,-59.690,-59.934,-60.159,-60.339,
--60.440,-60.429,-60.281,-59.992,-59.574,-59.061,-58.502,-57.951,-57.463,-57.080,-56.831,-56.721,-56.739,-56.858,-57.045,-57.263,
--57.482,-57.683,-57.855,-57.998,-58.120,-58.230,-58.338,-58.447,-58.557,-58.663,-58.757,-58.832,-58.884,-58.911,-58.919,-58.915,
--58.908,-58.906,-58.914,-58.935,-58.964,-58.998,-59.031,-59.059,-59.081,-59.100,-59.124,-59.161,-59.220,-59.306,-59.421,-59.562,
--59.720,-59.883,-60.040,-60.180,-60.298,-60.391,-60.463,-60.521,-60.574,-60.628,-60.689,-60.758,-60.830,-60.901,-60.966,-61.020,
--61.064,-61.103,-61.147,-61.211,-61.306,-61.447,-61.638,-61.880,-62.164,-62.475,-62.795,-63.102,-63.378,-63.610,-63.791,-63.923,
--64.014,-64.078,-64.128,-64.178,-64.239,-64.312,-64.397,-64.485,-64.566,-64.626,-64.657,-64.652,-64.608,-64.530,-64.427,-64.312,
--64.198,-64.101,-64.031,-63.999,-64.007,-64.057,-64.143,-64.257,-64.388,-64.525,-64.655,-64.767,-64.850,-64.896,-64.902,-64.864,
--64.784,-64.667,-64.520,-64.350,-64.168,-63.982,-63.801,-63.632,-63.478,-63.344,-63.229,-63.131,-63.049,-62.981,-62.924,-62.876,
--62.836,-62.802,-62.774,-62.750,-62.727,-62.704,-62.678,-62.644,-62.600,-62.543,-62.472,-62.388,-62.292,-62.188,-62.079,-61.970,
--61.864,-61.765,-61.673,-61.592,-61.519,-61.453,-61.394,-61.338,-61.286,-61.234,-61.184,-61.135,-61.088,-61.042,-60.998,-60.957,
--60.916,-60.876,-60.835,-60.791,-60.741,-60.684,-60.616,-60.538,-60.446,-60.342,-60.223,-60.092,-59.950,-59.799,-59.640,-59.478,
--59.313,-59.149,-58.988,-58.832,-58.682,-58.538,-58.401,-58.271,-58.146,-58.026,-57.911,-57.801,-57.693,-57.589,-57.489,-57.392,
--57.297,-57.204,-57.112,-57.018,-56.921,-56.817,-56.705,-56.581,-56.445,-56.296,-56.137,-55.970,-55.798,-55.626,-55.456,-55.293,
--55.136,-54.988,-54.845,-54.705,-54.565,-54.421,-54.271,-54.113,-53.947,-53.775,-53.597,-53.416,-53.234,-53.053,-52.873,-52.694,
--52.514,-52.334,-52.153,-51.970,-51.786,-51.603,-51.421,-51.240,-51.062,-50.883,-50.701,-50.514,-50.318,-50.113,-49.898,-49.675,
--49.448,-49.222,-49.002,-48.791,-48.591,-48.402,-48.220,-48.038,-47.850,-47.648,-47.429,-47.189,-46.932,-46.661,-46.384,-46.111,
--45.850,-45.607,-45.387,-45.189,-45.013,-44.852,-44.701,-44.553,-44.405,-44.251,-44.090,-43.921,-43.744,-43.560,-43.368,-43.170,
--42.965,-42.756,-42.544,-42.334,-42.131,-41.939,-41.764,-41.609,-41.476,-41.363,-41.264,-41.174,-41.085,-40.988,-40.878,-40.754,
--40.615,-40.467,-40.315,-40.166,-40.026,-39.900,-39.786,-39.681,-39.578,-39.471,-39.350,-39.210,-39.047,-38.863,-38.663,-38.454,
--38.246,-38.050,-37.873,-37.721,-37.597,-37.499,-37.420,-37.355,-37.293,-37.227,-37.148,-37.052,-36.938,-36.805,-36.658,-36.502,
--36.345,-36.194,-36.054,-35.930,-35.821,-35.727,-35.644,-35.564,-35.482,-35.392,-35.290,-35.176,-35.050,-34.918,-34.785,-34.655,
--34.534,-34.422,-34.316,-34.213,-34.105,-33.987,-33.854,-33.705,-33.544,-33.378,-33.219,-33.079,-32.967,-32.889,-32.844,-32.823,
--32.812,-32.793,-32.745,-32.652,-32.505,-32.301,-32.048,-31.761,-31.462,-31.173,-30.913,-30.695,-30.523,-30.390,-30.281,-30.177,
--30.055,-29.894,-29.680,-29.408,-29.079,-28.705,-28.303,-27.893,-27.494,-27.123,-26.793,-26.509,-26.271,-26.076,-25.916,-25.783,
--25.667,-25.560,-25.458,-25.354,-25.247,-25.138,-25.027,-24.918,-24.817,-24.727,-24.654,-24.599,-24.561,-24.534,-24.506,-24.462,
--24.381,-24.243,-24.032,-23.734,-23.346,-22.876,-22.343,-21.775,-21.207,-20.674,-20.211,-19.844,-19.588,-19.445,-19.405,-19.445,
--19.536,-19.646,-19.741,-19.794,-19.783,-19.697,-19.532,-19.292,-18.986,-18.627,-18.230,-17.810,-17.377,-16.942,-16.513,-16.092,
--15.683,-15.287,-14.904,-14.533,-14.178,-13.841,-13.525,-13.238,-12.985,-12.773,-12.604,-12.479,-12.396,-12.347,-12.322,-12.308,
--12.294,-12.270,-12.229,-12.170,-12.095,-12.012,-11.926,-11.844,-11.769,-11.697,-11.620,-11.529,-11.409,-11.250,-11.047,-10.801,
--10.521,-10.224,-9.928,-9.652,-9.409,-9.207,-9.039,-8.893,-8.748,-8.581,-8.372,-8.108,-7.786,-7.417,-7.019,-6.618,
--6.239,-5.903,-5.620,-5.389,-5.199,-5.028,-4.852,-4.650,-4.409,-4.125,-3.808,-3.475,-3.146,-2.843,-2.576,-2.345,
--2.139,-1.934,-1.701,-1.411,-1.045,-.593,-.065,.519,1.125,1.718,2.267,2.752,3.172,3.542,3.892,4.263,
-4.692,5.211,5.835,6.557,7.354,8.185,9.002,9.757,10.412,10.945,11.349,11.637,11.831,11.957,12.039,12.087,
-12.100,12.061,11.944,11.723,11.373,10.884,10.264,9.541,8.756,7.964,7.219,6.568,6.042,5.654,5.394,5.234,
-5.138,5.063,4.971,4.836,4.646,4.405,4.125,3.829,3.538,3.269,3.030,2.819,2.625,2.431,2.218,1.973,
-1.688,1.364,1.010,.642,.278,-.065,-.373,-.640,-.864,-1.051,-1.206,-1.338,-1.452,-1.550,-1.630,-1.688,
--1.718,-1.715,-1.680,-1.614,-1.524,-1.419,-1.310,-1.207,-1.115,-1.037,-.970,-.910,-.848,-.780,-.701,-.609,
--.509,-.408,-.311,-.228,-.163,-.116,-.086,-.066,-.048,-.024,.013,.066,.135,.216,.301,.382,
-.454,.512,.554,.583,.606,.628,.656,.694,.745,.807,.876,.946,1.011,1.066,1.109,1.139,
-1.159,1.173,1.187,1.204,1.228,1.260,1.299,1.341,1.384,1.424,1.458,1.485,1.506,1.521,1.533,1.543,
-1.550,1.556,1.557,1.552,1.539,1.517,1.484,1.444,1.398,1.351,1.306,1.268,1.239,1.220,1.209,1.204,
-1.204,1.204,1.202,1.196,1.185,1.171,1.153,1.134,1.114,1.096,1.080,1.067,1.058,1.054,1.057,1.067,
-1.086,1.114,1.152,1.199,1.254,1.313,1.373,1.432,1.487,1.536,1.578,1.615,1.645,1.672,1.696,1.717,
-1.734,1.746,1.751,1.747,1.733,1.711,1.681,1.649,1.619,1.597,1.589,1.599,1.627,1.674,1.737,1.810,
-1.888,1.966,2.037,2.099,2.152,2.195,2.231,2.265,2.299,2.337,2.382,2.436,2.498,2.569,2.649,2.739,
-2.841,2.957,3.090,3.247,3.430,3.643,3.889,4.167,4.477,4.816,5.179,5.562,5.959,6.367,6.780,7.195,
-7.609,8.016,8.414,8.795,9.154,9.483,9.778,10.033,10.246,10.419,10.557,10.666,10.755,10.834,10.910,10.987,
-11.064,11.136,11.196,11.233,11.239,11.209,11.141,11.044,10.928,10.810,10.708,10.635,10.602,10.608,10.645,10.696,
-10.742,10.761,10.739,10.670,10.563,10.439,10.328,10.269,10.298,10.443,10.720,11.125,11.636,12.214,12.810,13.373,
-13.855,14.222,14.459,13.962,14.010,13.954,13.825,13.662,13.500,13.372,13.299,13.287,13.333,13.422,13.536,13.656,
-13.769,13.864,13.943,14.009,14.072,14.137,14.209,14.285,14.357,14.410,14.430,14.401,14.315,14.168,13.968,13.728,
-13.467,13.206,12.964,12.753,12.580,12.443,12.333,12.238,12.145,12.042,11.926,11.797,11.662,11.533,11.424,11.348,
-11.313,11.323,11.376,11.463,11.574,11.697,11.824,11.948,12.069,12.193,12.327,12.480,12.663,12.881,13.135,13.420,
-13.729,14.049,14.365,14.664,14.935,15.169,15.362,15.514,15.625,15.700,15.744,15.762,15.760,15.747,15.733,15.733,
-15.763,15.843,15.994,16.234,16.578,17.032,17.593,18.247,18.970,19.731,20.492,21.218,21.878,22.449,22.919,23.287,
-23.562,23.760,23.898,23.992,24.054,24.087,24.084,24.033,23.919,23.724,23.438,23.056,22.584,22.040,21.450,20.847,
-20.269,19.751,19.322,19.004,18.810,18.740,18.786,18.932,19.156,19.435,19.742,20.054,20.351,20.617,20.838,21.008,
-21.123,21.183,21.193,21.158,21.089,20.995,20.887,20.775,20.669,20.577,20.508,20.465,20.455,20.479,20.538,20.630,
-20.751,20.894,21.050,21.206,21.349,21.469,21.553,21.593,21.587,21.537,21.448,21.330,21.197,21.059,20.927,20.809,
-20.710,20.631,20.571,20.529,20.508,20.509,20.540,20.610,20.727,20.899,21.128,21.411,21.735,22.082,22.429,22.751,
-23.025,23.236,23.378,23.455,23.482,23.483,23.483,23.509,23.582,23.711,23.900,24.137,24.406,24.684,24.950,25.184,
-25.376,25.523,25.631,25.710,25.776,25.841,25.913,25.998,26.089,26.179,26.253,26.297,26.300,26.253,26.155,26.011,
-25.832,25.632,25.424,25.223,25.039,24.880,24.747,24.641,24.559,24.496,24.450,24.415,24.391,24.372,24.357,24.339,
-24.314,24.275,24.214,24.127,24.012,23.870,23.709,23.543,23.386,23.257,23.173,23.147,23.184,23.280,23.423,23.591,
-23.755,23.885,23.953,23.937,23.828,23.629,23.359,23.049,22.739,22.476,22.302,22.254,22.353,22.606,23.000,23.505,
-24.079,24.672,25.231,25.710,26.074,26.299,26.380,26.326,26.157,25.901,25.589,25.247,24.894,24.542,24.189,23.824,
-23.431,22.991,22.486,21.905,21.244,20.514,19.732,18.928,18.135,17.392,16.733,16.188,15.777,15.512,15.388,15.395,
-15.509,15.703,15.946,16.207,16.459,16.681,16.858,16.981,17.050,17.069,17.045,16.988,16.906,16.808,16.700,16.584,
-16.462,16.336,16.204,16.066,15.926,15.786,15.651,15.529,15.427,15.353,15.314,15.313,15.352,15.426,15.529,15.648,
-15.770,15.880,15.962,16.003,15.995,15.932,15.816,15.650,15.445,15.210,14.958,14.702,14.449,14.208,13.981,13.770,
-13.575,13.393,13.222,13.060,12.905,12.753,12.602,12.447,12.284,12.107,11.910,11.686,11.432,11.147,10.832,10.493,
-10.138,9.779,9.424,9.084,8.766,8.471,8.198,7.942,7.696,7.451,7.199,6.937,6.660,6.370,6.069,5.762,
-5.453,5.143,4.831,4.513,4.181,3.826,3.441,3.016,2.549,2.041,1.497,.929,.350,-.223,-.774,-1.290,
--1.761,-2.180,-2.548,-2.868,-3.149,-3.398,-3.628,-3.847,-4.065,-4.286,-4.515,-4.755,-5.007,-5.272,-5.549,-5.839,
--6.141,-6.455,-6.777,-7.104,-7.434,-7.761,-8.080,-8.389,-8.687,-8.973,-9.252,-9.528,-9.809,-10.100,-10.406,-10.729,
--11.065,-11.411,-11.757,-12.095,-12.418,-12.721,-13.003,-13.269,-13.527,-13.789,-14.066,-14.367,-14.696,-15.053,-15.429,-15.811,
--16.184,-16.533,-16.845,-17.113,-17.337,-17.524,-17.689,-17.847,-18.017,-18.215,-18.453,-18.737,-19.070,-19.447,-19.864,-20.314,
--20.789,-21.284,-21.793,-22.309,-22.824,-23.328,-23.806,-24.245,-24.627,-24.941,-25.178,-25.338,-25.429,-25.467,-25.475,-25.480,
--25.507,-25.578,-25.706,-25.895,-26.142,-26.433,-26.754,-27.088,-27.421,-27.745,-28.058,-28.360,-28.656,-28.951,-29.246,-29.539,
--29.820,-30.080,-30.306,-30.488,-30.623,-30.712,-30.768,-30.807,-30.851,-30.919,-31.028,-31.185,-31.389,-31.631,-31.891,-32.151,
--32.390,-32.594,-32.756,-32.877,-32.965,-33.035,-33.101,-33.176,-33.269,-33.382,-33.512,-33.651,-33.790,-33.922,-34.043,-34.157,
--34.270,-34.394,-34.544,-34.730,-34.962,-35.243,-35.568,-35.928,-36.307,-36.690,-37.058,-37.395,-37.689,-37.931,-38.118,-38.251,
--38.338,-38.389,-38.419,-38.447,-38.493,-38.579,-38.722,-38.937,-39.232,-39.606,-40.050,-40.545,-41.067,-41.589,-42.086,-42.536,
--42.926,-43.254,-43.526,-43.756,-43.959,-44.154,-44.353,-44.562,-44.779,-44.997,-45.203,-45.387,-45.541,-45.664,-45.763,-45.852,
--45.947,-46.065,-46.220,-46.418,-46.653,-46.916,-47.189,-47.454,-47.697,-47.911,-48.100,-48.278,-48.466,-48.687,-48.962,-49.304,
--49.711,-50.167,-50.643,-51.102,-51.503,-51.810,-52.001,-52.066,-52.016,-51.878,-51.692,-51.503,-51.352,-51.277,-51.299,-51.427,
--51.652,-51.958,-52.322,-52.718,-53.125,-53.529,-53.920,-54.296,-54.657,-55.004,-55.334,-55.642,-55.919,-56.158,-56.349,-56.492,
--56.590,-56.657,-56.709,-56.769,-56.854,-56.976,-57.137,-57.326,-57.523,-57.700,-57.829,-57.887,-57.862,-57.759,-57.593,-57.396,
--57.200,-57.040,-56.935,-56.891,-56.894,-56.912,-56.903,-56.821,-56.631,-56.312,-55.870,-55.337,-54.768,-54.232,-53.802,-53.542,
--53.496,-53.679,-54.079,-54.652,-55.340,-56.074,-56.790,-57.438,-57.991,-58.441,-58.803,-59.102,-59.366,-59.618,-59.866,-60.103,
--60.307,-60.446,-60.487,-60.405,-60.188,-59.846,-59.405,-58.908,-58.407,-57.951,-57.582,-57.325,-57.186,-57.153,-57.200,-57.294,
--57.399,-57.488,-57.545,-57.568,-57.565,-57.553,-57.553,-57.584,-57.656,-57.774,-57.932,-58.117,-58.314,-58.504,-58.676,-58.820,
--58.934,-59.019,-59.079,-59.120,-59.147,-59.162,-59.166,-59.160,-59.145,-59.125,-59.105,-59.094,-59.104,-59.143,-59.221,-59.340,
--59.499,-59.689,-59.899,-60.111,-60.311,-60.486,-60.626,-60.728,-60.794,-60.830,-60.843,-60.842,-60.833,-60.820,-60.806,-60.790,
--60.774,-60.760,-60.753,-60.762,-60.797,-60.872,-60.996,-61.178,-61.418,-61.711,-62.045,-62.402,-62.762,-63.103,-63.408,-63.667,
--63.873,-64.031,-64.149,-64.239,-64.317,-64.393,-64.475,-64.564,-64.657,-64.744,-64.814,-64.855,-64.860,-64.823,-64.748,-64.644,
--64.526,-64.410,-64.315,-64.257,-64.248,-64.293,-64.389,-64.527,-64.690,-64.860,-65.016,-65.140,-65.216,-65.236,-65.197,-65.103,
--64.965,-64.795,-64.611,-64.426,-64.254,-64.104,-63.981,-63.884,-63.809,-63.750,-63.698,-63.646,-63.589,-63.523,-63.448,-63.367,
--63.285,-63.207,-63.138,-63.080,-63.035,-63.001,-62.973,-62.945,-62.911,-62.865,-62.803,-62.723,-62.625,-62.514,-62.394,-62.272,
--62.154,-62.046,-61.952,-61.873,-61.808,-61.756,-61.712,-61.671,-61.630,-61.586,-61.534,-61.476,-61.411,-61.342,-61.271,-61.200,
--61.132,-61.069,-61.012,-60.961,-60.914,-60.869,-60.824,-60.774,-60.716,-60.647,-60.564,-60.467,-60.355,-60.228,-60.089,-59.941,
--59.786,-59.628,-59.470,-59.316,-59.165,-59.020,-58.881,-58.746,-58.616,-58.488,-58.363,-58.240,-58.120,-58.004,-57.893,-57.789,
--57.693,-57.606,-57.525,-57.448,-57.373,-57.293,-57.205,-57.104,-56.988,-56.853,-56.703,-56.538,-56.364,-56.185,-56.008,-55.837,
--55.675,-55.522,-55.377,-55.236,-55.096,-54.951,-54.798,-54.634,-54.458,-54.273,-54.081,-53.886,-53.692,-53.503,-53.318,-53.139,
--52.963,-52.786,-52.608,-52.424,-52.235,-52.040,-51.844,-51.649,-51.458,-51.274,-51.098,-50.929,-50.763,-50.597,-50.426,-50.246,
--50.053,-49.849,-49.633,-49.410,-49.185,-48.961,-48.744,-48.534,-48.330,-48.132,-47.934,-47.731,-47.520,-47.299,-47.065,-46.820,
--46.569,-46.314,-46.062,-45.818,-45.583,-45.362,-45.154,-44.959,-44.775,-44.599,-44.429,-44.263,-44.097,-43.929,-43.759,-43.584,
--43.404,-43.218,-43.029,-42.839,-42.650,-42.468,-42.297,-42.140,-42.001,-41.878,-41.771,-41.675,-41.584,-41.490,-41.388,-41.273,
--41.141,-40.995,-40.837,-40.673,-40.511,-40.355,-40.213,-40.085,-39.971,-39.869,-39.772,-39.673,-39.567,-39.448,-39.315,-39.167,
--39.008,-38.844,-38.681,-38.527,-38.387,-38.263,-38.157,-38.066,-37.985,-37.908,-37.828,-37.739,-37.637,-37.520,-37.388,-37.246,
--37.097,-36.949,-36.806,-36.672,-36.548,-36.432,-36.320,-36.207,-36.086,-35.953,-35.805,-35.643,-35.471,-35.297,-35.129,-34.975,
--34.841,-34.729,-34.635,-34.551,-34.466,-34.366,-34.241,-34.084,-33.894,-33.676,-33.445,-33.217,-33.011,-32.841,-32.716,-32.635,
--32.587,-32.553,-32.507,-32.421,-32.272,-32.046,-31.739,-31.360,-30.933,-30.487,-30.057,-29.672,-29.358,-29.124,-28.968,-28.875,
--28.816,-28.760,-28.674,-28.532,-28.316,-28.024,-27.663,-27.253,-26.821,-26.395,-26.001,-25.662,-25.388,-25.180,-25.032,-24.930,
--24.854,-24.787,-24.710,-24.610,-24.482,-24.323,-24.138,-23.935,-23.725,-23.518,-23.326,-23.156,-23.012,-22.896,-22.804,-22.729,
--22.660,-22.585,-22.490,-22.365,-22.197,-21.982,-21.717,-21.405,-21.055,-20.677,-20.287,-19.903,-19.538,-19.208,-18.922,-18.685,
--18.497,-18.353,-18.242,-18.151,-18.065,-17.966,-17.842,-17.680,-17.473,-17.221,-16.926,-16.598,-16.248,-15.892,-15.543,-15.216,
--14.919,-14.658,-14.435,-14.245,-14.085,-13.947,-13.826,-13.717,-13.619,-13.533,-13.462,-13.408,-13.372,-13.353,-13.345,-13.341,
--13.331,-13.304,-13.254,-13.175,-13.069,-12.940,-12.795,-12.645,-12.496,-12.352,-12.215,-12.077,-11.930,-11.765,-11.574,-11.352,
--11.104,-10.837,-10.566,-10.307,-10.074,-9.876,-9.714,-9.579,-9.455,-9.322,-9.157,-8.945,-8.676,-8.353,-7.991,-7.610,
--7.236,-6.891,-6.591,-6.340,-6.130,-5.942,-5.750,-5.530,-5.260,-4.933,-4.553,-4.137,-3.713,-3.310,-2.953,-2.657,
--2.421,-2.227,-2.045,-1.836,-1.564,-1.201,-.734,-.172,.459,1.119,1.761,2.342,2.833,3.222,3.523,3.767,
-4.001,4.276,4.636,5.112,5.713,6.425,7.212,8.026,8.813,9.525,10.125,10.596,10.937,11.166,11.308,11.388,
-11.428,11.436,11.408,11.327,11.171,10.916,10.544,10.054,9.457,8.780,8.065,7.356,6.696,6.120,5.646,5.278,
-5.003,4.795,4.626,4.465,4.288,4.083,3.847,3.588,3.319,3.056,2.811,2.589,2.390,2.205,2.020,1.821,
-1.596,1.338,1.048,.734,.410,.090,-.211,-.480,-.712,-.907,-1.068,-1.204,-1.321,-1.426,-1.521,-1.604,
--1.671,-1.716,-1.735,-1.725,-1.687,-1.626,-1.550,-1.469,-1.391,-1.322,-1.267,-1.222,-1.183,-1.143,-1.095,-1.034,
--.956,-.866,-.768,-.670,-.581,-.508,-.456,-.424,-.408,-.402,-.397,-.384,-.357,-.312,-.251,-.178,
--.098,-.018,.056,.119,.170,.210,.245,.278,.314,.355,.405,.460,.518,.575,.626,.668,
-.700,.721,.734,.743,.753,.766,.786,.815,.852,.895,.942,.988,1.032,1.070,1.101,1.124,
-1.139,1.147,1.149,1.146,1.141,1.135,1.129,1.125,1.123,1.123,1.125,1.128,1.131,1.131,1.126,1.115,
-1.096,1.071,1.039,1.003,.965,.928,.894,.864,.840,.822,.808,.799,.793,.791,.794,.803,
-.820,.848,.887,.937,.997,1.064,1.134,1.201,1.262,1.314,1.355,1.386,1.409,1.426,1.441,1.457,
-1.474,1.494,1.513,1.529,1.538,1.540,1.532,1.515,1.493,1.471,1.453,1.445,1.451,1.471,1.504,1.546,
-1.592,1.634,1.667,1.687,1.692,1.684,1.667,1.649,1.638,1.641,1.665,1.715,1.793,1.899,2.031,2.187,
-2.363,2.559,2.774,3.010,3.268,3.551,3.862,4.200,4.565,4.955,5.364,5.789,6.223,6.662,7.102,7.540,
-7.972,8.397,8.810,9.207,9.582,9.925,10.229,10.485,10.687,10.834,10.927,10.975,10.989,10.983,10.972,10.967,
-10.977,11.003,11.040,11.078,11.104,11.103,11.066,10.987,10.871,10.728,10.575,10.432,10.318,10.248,10.228,10.254,
-10.315,10.391,10.462,10.509,10.522,10.501,10.458,10.416,10.406,10.459,10.601,10.847,11.197,11.633,12.125,12.631,
-13.104,13.502,13.793,13.962,13.448,13.409,13.279,13.083,12.856,12.634,12.450,12.326,12.278,12.304,12.398,12.541,
-12.716,12.903,13.087,13.260,13.417,13.558,13.685,13.802,13.906,13.996,14.063,14.099,14.096,14.048,13.952,13.811,
-13.633,13.431,13.219,13.010,12.815,12.641,12.491,12.363,12.250,12.145,12.042,11.936,11.825,11.709,11.591,11.478,
-11.374,11.285,11.216,11.168,11.145,11.150,11.183,11.250,11.353,11.496,11.681,11.907,12.169,12.461,12.769,13.082,
-13.385,13.666,13.918,14.139,14.331,14.501,14.660,14.817,14.980,15.150,15.325,15.496,15.651,15.779,15.869,15.922,
-15.943,15.950,15.969,16.028,16.160,16.389,16.730,17.184,17.738,18.365,19.026,19.681,20.288,20.816,21.244,21.567,
-21.793,21.942,22.040,22.112,22.179,22.252,22.331,22.406,22.456,22.459,22.396,22.251,22.022,21.717,21.356,20.967,
-20.584,20.237,19.955,19.755,19.645,19.625,19.684,19.808,19.979,20.181,20.399,20.621,20.839,21.047,21.238,21.406,
-21.542,21.640,21.691,21.689,21.635,21.533,21.392,21.229,21.064,20.918,20.813,20.765,20.783,20.870,21.020,21.220,
-21.450,21.690,21.917,22.112,22.263,22.359,22.401,22.394,22.345,22.268,22.176,22.081,21.993,21.918,21.858,21.811,
-21.774,21.740,21.705,21.666,21.625,21.584,21.553,21.540,21.556,21.610,21.706,21.843,22.013,22.203,22.396,22.572,
-22.714,22.808,22.849,22.840,22.793,22.727,22.666,22.635,22.654,22.737,22.889,23.104,23.366,23.655,23.946,24.218,
-24.451,24.637,24.773,24.868,24.934,24.988,25.045,25.118,25.213,25.330,25.460,25.590,25.706,25.790,25.830,25.817,
-25.745,25.619,25.443,25.229,24.990,24.738,24.488,24.249,24.032,23.845,23.692,23.577,23.500,23.458,23.446,23.455,
-23.475,23.491,23.492,23.466,23.406,23.309,23.178,23.023,22.859,22.702,22.571,22.480,22.439,22.449,22.504,22.587,
-22.676,22.747,22.775,22.741,22.634,22.454,22.214,21.937,21.654,21.403,21.219,21.133,21.168,21.333,21.626,22.028,
-22.512,23.042,23.580,24.087,24.531,24.886,25.137,25.277,25.311,25.247,25.097,24.877,24.598,24.268,23.893,23.473,
-23.005,22.484,21.908,21.277,20.594,19.869,19.119,18.366,17.634,16.952,16.344,15.833,15.436,15.160,15.004,14.959,
-15.005,15.119,15.276,15.449,15.614,15.755,15.859,15.925,15.955,15.959,15.946,15.929,15.918,15.919,15.932,15.956,
-15.983,16.003,16.008,15.989,15.942,15.868,15.771,15.661,15.548,15.445,15.365,15.315,15.302,15.325,15.381,15.460,
-15.550,15.640,15.716,15.767,15.783,15.760,15.696,15.593,15.454,15.285,15.093,14.883,14.663,14.436,14.206,13.977,
-13.751,13.529,13.314,13.108,12.910,12.723,12.545,12.373,12.205,12.034,11.855,11.661,11.446,11.207,10.942,10.651,
-10.339,10.010,9.671,9.329,8.991,8.661,8.342,8.035,7.740,7.453,7.174,6.901,6.633,6.370,6.113,5.863,
-5.619,5.379,5.140,4.894,4.635,4.354,4.042,3.693,3.304,2.875,2.410,1.918,1.407,.890,.378,-.121,
--.598,-1.052,-1.480,-1.885,-2.268,-2.634,-2.983,-3.319,-3.641,-3.948,-4.241,-4.519,-4.786,-5.047,-5.307,-5.575,
--5.860,-6.169,-6.505,-6.869,-7.256,-7.659,-8.067,-8.466,-8.847,-9.201,-9.526,-9.823,-10.100,-10.367,-10.636,-10.920,
--11.225,-11.556,-11.910,-12.281,-12.657,-13.028,-13.383,-13.716,-14.027,-14.321,-14.605,-14.892,-15.193,-15.516,-15.866,-16.239,
--16.627,-17.018,-17.397,-17.750,-18.069,-18.349,-18.594,-18.813,-19.020,-19.233,-19.468,-19.736,-20.047,-20.402,-20.798,-21.226,
--21.678,-22.141,-22.606,-23.063,-23.508,-23.934,-24.339,-24.717,-25.066,-25.381,-25.659,-25.896,-26.094,-26.255,-26.388,-26.503,
--26.612,-26.728,-26.862,-27.024,-27.216,-27.438,-27.685,-27.952,-28.229,-28.508,-28.785,-29.055,-29.317,-29.570,-29.815,-30.048,
--30.267,-30.466,-30.639,-30.782,-30.891,-30.968,-31.019,-31.055,-31.090,-31.140,-31.219,-31.339,-31.502,-31.707,-31.944,-32.201,
--32.459,-32.704,-32.923,-33.110,-33.263,-33.389,-33.495,-33.594,-33.697,-33.812,-33.942,-34.086,-34.240,-34.395,-34.546,-34.685,
--34.810,-34.923,-35.029,-35.137,-35.259,-35.406,-35.586,-35.805,-36.065,-36.360,-36.682,-37.017,-37.349,-37.663,-37.942,-38.173,
--38.351,-38.473,-38.548,-38.588,-38.613,-38.647,-38.713,-38.833,-39.022,-39.286,-39.622,-40.018,-40.453,-40.902,-41.340,-41.746,
--42.107,-42.420,-42.692,-42.937,-43.175,-43.427,-43.708,-44.029,-44.388,-44.776,-45.177,-45.573,-45.944,-46.278,-46.569,-46.820,
--47.041,-47.245,-47.446,-47.654,-47.872,-48.097,-48.317,-48.518,-48.688,-48.819,-48.912,-48.977,-49.035,-49.111,-49.231,-49.415,
--49.673,-50.000,-50.377,-50.775,-51.155,-51.479,-51.719,-51.855,-51.889,-51.837,-51.731,-51.610,-51.516,-51.485,-51.541,-51.695,
--51.941,-52.260,-52.628,-53.016,-53.401,-53.766,-54.103,-54.415,-54.709,-54.991,-55.269,-55.541,-55.803,-56.041,-56.244,-56.400,
--56.504,-56.562,-56.586,-56.599,-56.626,-56.688,-56.800,-56.963,-57.164,-57.377,-57.571,-57.709,-57.766,-57.727,-57.597,-57.396,
--57.162,-56.937,-56.762,-56.665,-56.657,-56.724,-56.832,-56.932,-56.969,-56.896,-56.681,-56.321,-55.838,-55.285,-54.730,-54.253,
--53.924,-53.796,-53.896,-54.219,-54.730,-55.371,-56.074,-56.769,-57.400,-57.930,-58.343,-58.647,-58.865,-59.027,-59.161,-59.286,
--59.410,-59.522,-59.605,-59.636,-59.595,-59.469,-59.264,-58.995,-58.693,-58.393,-58.130,-57.931,-57.811,-57.766,-57.780,-57.825,
--57.866,-57.875,-57.830,-57.722,-57.558,-57.358,-57.151,-56.970,-56.842,-56.791,-56.826,-56.944,-57.135,-57.377,-57.649,-57.928,
--58.197,-58.442,-58.657,-58.840,-58.993,-59.116,-59.212,-59.281,-59.325,-59.345,-59.343,-59.328,-59.308,-59.296,-59.305,-59.349,
--59.436,-59.568,-59.744,-59.954,-60.184,-60.416,-60.635,-60.825,-60.977,-61.087,-61.155,-61.185,-61.186,-61.165,-61.128,-61.082,
--61.030,-60.974,-60.917,-60.865,-60.824,-60.804,-60.817,-60.875,-60.988,-61.163,-61.402,-61.697,-62.038,-62.407,-62.785,-63.152,
--63.491,-63.789,-64.041,-64.247,-64.413,-64.547,-64.657,-64.753,-64.838,-64.912,-64.972,-65.011,-65.021,-64.999,-64.943,-64.857,
--64.752,-64.643,-64.548,-64.486,-64.472,-64.514,-64.615,-64.765,-64.949,-65.144,-65.323,-65.462,-65.538,-65.538,-65.459,-65.305,
--65.093,-64.845,-64.588,-64.348,-64.146,-63.999,-63.912,-63.882,-63.899,-63.945,-64.001,-64.047,-64.068,-64.054,-64.001,-63.913,
--63.800,-63.674,-63.548,-63.436,-63.343,-63.275,-63.229,-63.198,-63.174,-63.146,-63.107,-63.048,-62.969,-62.870,-62.758,-62.638,
--62.521,-62.413,-62.321,-62.246,-62.189,-62.145,-62.109,-62.075,-62.036,-61.987,-61.924,-61.849,-61.763,-61.669,-61.574,-61.483,
--61.399,-61.327,-61.267,-61.219,-61.181,-61.149,-61.118,-61.085,-61.043,-60.990,-60.922,-60.839,-60.739,-60.623,-60.493,-60.350,
--60.198,-60.041,-59.880,-59.721,-59.565,-59.415,-59.273,-59.140,-59.016,-58.901,-58.793,-58.691,-58.592,-58.496,-58.402,-58.308,
--58.214,-58.121,-58.028,-57.935,-57.841,-57.746,-57.648,-57.545,-57.436,-57.319,-57.193,-57.059,-56.917,-56.769,-56.618,-56.465,
--56.312,-56.158,-56.003,-55.845,-55.681,-55.509,-55.327,-55.135,-54.933,-54.724,-54.513,-54.303,-54.098,-53.902,-53.716,-53.539,
--53.368,-53.199,-53.027,-52.848,-52.660,-52.462,-52.258,-52.050,-51.846,-51.651,-51.469,-51.302,-51.151,-51.010,-50.875,-50.737,
--50.588,-50.423,-50.237,-50.031,-49.806,-49.569,-49.327,-49.086,-48.855,-48.637,-48.434,-48.246,-48.068,-47.896,-47.725,-47.549,
--47.364,-47.167,-46.958,-46.737,-46.507,-46.270,-46.029,-45.786,-45.543,-45.303,-45.068,-44.838,-44.616,-44.402,-44.198,-44.005,
--43.823,-43.652,-43.491,-43.339,-43.196,-43.058,-42.925,-42.795,-42.667,-42.540,-42.413,-42.285,-42.155,-42.021,-41.882,-41.738,
--41.589,-41.435,-41.279,-41.123,-40.970,-40.825,-40.690,-40.568,-40.458,-40.360,-40.271,-40.187,-40.102,-40.012,-39.913,-39.802,
--39.678,-39.543,-39.400,-39.253,-39.107,-38.968,-38.837,-38.717,-38.608,-38.506,-38.407,-38.308,-38.201,-38.084,-37.955,-37.812,
--37.658,-37.496,-37.331,-37.165,-37.001,-36.841,-36.681,-36.520,-36.353,-36.176,-35.987,-35.787,-35.581,-35.374,-35.176,-34.997,
--34.845,-34.722,-34.628,-34.555,-34.492,-34.420,-34.325,-34.192,-34.013,-33.788,-33.524,-33.238,-32.950,-32.683,-32.456,-32.279,
--32.152,-32.063,-31.991,-31.904,-31.771,-31.563,-31.261,-30.859,-30.367,-29.810,-29.223,-28.648,-28.127,-27.693,-27.368,-27.155,
--27.042,-27.003,-27.002,-27.000,-26.959,-26.853,-26.667,-26.401,-26.069,-25.694,-25.305,-24.934,-24.605,-24.335,-24.131,-23.991,
--23.901,-23.845,-23.803,-23.755,-23.688,-23.591,-23.462,-23.303,-23.122,-22.926,-22.727,-22.533,-22.351,-22.185,-22.039,-21.913,
--21.806,-21.717,-21.641,-21.574,-21.511,-21.443,-21.362,-21.256,-21.117,-20.934,-20.701,-20.415,-20.080,-19.703,-19.298,-18.883,
--18.476,-18.096,-17.757,-17.469,-17.233,-17.043,-16.889,-16.751,-16.613,-16.457,-16.272,-16.050,-15.796,-15.517,-15.229,-14.952,
--14.702,-14.495,-14.339,-14.237,-14.185,-14.173,-14.187,-14.214,-14.242,-14.262,-14.269,-14.265,-14.249,-14.226,-14.198,-14.164,
--14.122,-14.066,-13.991,-13.890,-13.762,-13.605,-13.423,-13.223,-13.014,-12.802,-12.595,-12.395,-12.202,-12.013,-11.824,-11.631,
--11.435,-11.237,-11.044,-10.865,-10.706,-10.574,-10.468,-10.382,-10.303,-10.212,-10.090,-9.921,-9.694,-9.406,-9.069,-8.699,
--8.320,-7.958,-7.633,-7.354,-7.121,-6.919,-6.724,-6.507,-6.240,-5.905,-5.493,-5.012,-4.484,-3.940,-3.414,-2.935,
--2.523,-2.179,-1.890,-1.627,-1.354,-1.035,-.643,-.165,.394,1.007,1.635,2.232,2.757,3.179,3.487,3.692,
-3.826,3.938,4.080,4.305,4.647,5.124,5.728,6.430,7.186,7.942,8.648,9.263,9.763,10.141,10.408,10.585,
-10.698,10.770,10.816,10.836,10.820,10.748,10.596,10.346,9.984,9.512,8.944,8.309,7.641,6.977,6.350,5.783,
-5.289,4.866,4.503,4.185,3.891,3.608,3.327,3.047,2.773,2.516,2.286,2.091,1.932,1.805,1.697,1.593,
-1.475,1.329,1.145,.922,.665,.386,.100,-.178,-.434,-.658,-.849,-1.006,-1.137,-1.247,-1.342,-1.427,
--1.503,-1.566,-1.613,-1.639,-1.640,-1.617,-1.572,-1.512,-1.446,-1.381,-1.327,-1.286,-1.260,-1.245,-1.234,-1.221,
--1.197,-1.159,-1.103,-1.032,-.951,-.868,-.790,-.724,-.674,-.641,-.622,-.610,-.601,-.586,-.560,-.521,
--.467,-.403,-.332,-.258,-.189,-.125,-.071,-.024,.016,.053,.089,.126,.166,.207,.249,.288,
-.323,.351,.371,.386,.396,.404,.414,.430,.453,.484,.523,.569,.616,.663,.706,.740,
-.763,.776,.778,.772,.762,.751,.743,.742,.750,.766,.790,.818,.846,.868,.881,.880,
-.864,.832,.788,.735,.678,.623,.575,.536,.509,.494,.489,.491,.499,.510,.524,.542,
-.565,.596,.636,.687,.747,.814,.884,.950,1.008,1.053,1.080,1.091,1.088,1.074,1.057,1.041,
-1.033,1.036,1.051,1.076,1.107,1.140,1.170,1.193,1.208,1.214,1.213,1.209,1.206,1.206,1.211,1.220,
-1.230,1.239,1.241,1.234,1.217,1.191,1.161,1.134,1.118,1.122,1.155,1.222,1.327,1.470,1.648,1.859,
-2.098,2.361,2.646,2.951,3.278,3.627,3.999,4.394,4.809,5.242,5.686,6.135,6.582,7.021,7.448,7.864,
-8.267,8.661,9.046,9.422,9.786,10.131,10.446,10.720,10.939,11.093,11.178,11.193,11.149,11.060,10.947,10.834,
-10.742,10.688,10.680,10.717,10.790,10.881,10.969,11.035,11.062,11.042,10.977,10.876,10.757,10.640,10.546,10.489,
-10.477,10.508,10.572,10.654,10.738,10.809,10.860,10.893,10.919,10.956,11.025,11.147,11.334,11.591,11.906,12.258,
-12.616,12.944,13.208,13.381,13.448,12.807,12.722,12.571,12.373,12.154,11.945,11.776,11.670,11.644,11.705,11.847,
-12.057,12.316,12.602,12.894,13.171,13.421,13.635,13.808,13.941,14.035,14.094,14.122,14.120,14.091,14.038,13.962,
-13.866,13.756,13.635,13.508,13.380,13.255,13.134,13.019,12.909,12.800,12.692,12.581,12.465,12.343,12.215,12.081,
-11.944,11.805,11.671,11.547,11.441,11.363,11.323,11.331,11.396,11.524,11.716,11.965,12.260,12.584,12.913,13.226,
-13.502,13.725,13.888,13.995,14.059,14.101,14.146,14.218,14.338,14.516,14.751,15.029,15.328,15.619,15.875,16.073,
-16.201,16.264,16.278,16.273,16.287,16.356,16.512,16.774,17.144,17.605,18.127,18.668,19.183,19.632,19.984,20.227,
-20.363,20.413,20.407,20.382,20.371,20.400,20.482,20.614,20.781,20.959,21.121,21.241,21.302,21.299,21.239,21.139,
-21.023,20.917,20.845,20.820,20.848,20.924,21.034,21.161,21.287,21.397,21.484,21.546,21.591,21.628,21.667,21.717,
-21.779,21.848,21.914,21.962,21.976,21.946,21.867,21.747,21.601,21.453,21.333,21.270,21.288,21.403,21.617,21.919,
-22.285,22.684,23.078,23.431,23.713,23.905,23.997,23.995,23.913,23.774,23.606,23.435,23.282,23.163,23.084,23.043,
-23.033,23.040,23.052,23.058,23.050,23.026,22.991,22.952,22.919,22.902,22.907,22.935,22.982,23.036,23.082,23.101,
-23.078,23.002,22.867,22.679,22.453,22.212,21.984,21.800,21.686,21.661,21.736,21.908,22.162,22.475,22.817,23.156,
-23.464,23.721,23.916,24.049,24.131,24.180,24.219,24.269,24.350,24.470,24.633,24.828,25.039,25.244,25.418,25.536,
-25.579,25.535,25.398,25.175,24.876,24.521,24.133,23.736,23.356,23.013,22.725,22.503,22.351,22.269,22.246,22.271,
-22.327,22.393,22.452,22.488,22.488,22.446,22.364,22.247,22.107,21.961,21.823,21.707,21.623,21.574,21.555,21.557,
-21.562,21.553,21.512,21.425,21.286,21.095,20.863,20.608,20.356,20.133,19.969,19.885,19.900,20.020,20.246,20.565,
-20.961,21.410,21.887,22.367,22.827,23.246,23.610,23.906,24.126,24.264,24.315,24.276,24.142,23.910,23.579,23.149,
-22.622,22.006,21.312,20.555,19.756,18.938,18.127,17.351,16.635,16.002,15.472,15.056,14.759,14.579,14.505,14.520,
-14.601,14.723,14.860,14.987,15.086,15.145,15.158,15.130,15.070,14.996,14.923,14.870,14.851,14.873,14.937,15.040,
-15.168,15.306,15.439,15.550,15.627,15.665,15.663,15.627,15.566,15.493,15.422,15.364,15.327,15.314,15.327,15.358,
-15.401,15.448,15.487,15.513,15.518,15.499,15.455,15.387,15.295,15.182,15.050,14.899,14.730,14.545,14.343,14.128,
-13.900,13.663,13.421,13.179,12.940,12.708,12.485,12.271,12.064,11.862,11.661,11.456,11.243,11.019,10.781,10.529,
-10.262,9.981,9.689,9.387,9.077,8.761,8.440,8.117,7.793,7.471,7.156,6.851,6.561,6.289,6.040,5.813,
-5.608,5.420,5.241,5.062,4.874,4.665,4.428,4.157,3.849,3.506,3.133,2.736,2.324,1.905,1.484,1.064,
-.644,.223,-.205,-.645,-1.101,-1.575,-2.063,-2.560,-3.058,-3.545,-4.009,-4.442,-4.838,-5.197,-5.523,-5.826,
--6.118,-6.415,-6.729,-7.070,-7.440,-7.839,-8.259,-8.687,-9.109,-9.512,-9.885,-10.224,-10.529,-10.808,-11.072,-11.335,
--11.611,-11.912,-12.242,-12.602,-12.985,-13.382,-13.781,-14.170,-14.539,-14.886,-15.211,-15.522,-15.828,-16.139,-16.465,-16.813,
--17.181,-17.567,-17.962,-18.353,-18.731,-19.086,-19.413,-19.715,-19.997,-20.270,-20.545,-20.834,-21.147,-21.488,-21.855,-22.245,
--22.647,-23.050,-23.444,-23.821,-24.176,-24.506,-24.815,-25.107,-25.387,-25.660,-25.928,-26.193,-26.453,-26.707,-26.952,-27.186,
--27.409,-27.622,-27.830,-28.037,-28.248,-28.468,-28.701,-28.948,-29.206,-29.475,-29.748,-30.019,-30.284,-30.535,-30.767,-30.974,
--31.152,-31.298,-31.409,-31.486,-31.532,-31.550,-31.550,-31.542,-31.540,-31.556,-31.602,-31.689,-31.822,-31.999,-32.216,-32.462,
--32.723,-32.984,-33.230,-33.451,-33.639,-33.794,-33.920,-34.025,-34.120,-34.217,-34.325,-34.450,-34.597,-34.760,-34.936,-35.115,
--35.288,-35.447,-35.585,-35.702,-35.801,-35.889,-35.976,-36.074,-36.196,-36.351,-36.545,-36.779,-37.047,-37.339,-37.639,-37.931,
--38.198,-38.426,-38.608,-38.744,-38.840,-38.911,-38.976,-39.057,-39.171,-39.335,-39.554,-39.827,-40.144,-40.488,-40.838,-41.176,
--41.488,-41.766,-42.014,-42.242,-42.469,-42.716,-43.003,-43.345,-43.749,-44.214,-44.726,-45.270,-45.824,-46.367,-46.883,-47.362,
--47.800,-48.201,-48.568,-48.909,-49.225,-49.516,-49.775,-49.994,-50.162,-50.273,-50.326,-50.329,-50.299,-50.258,-50.234,-50.249,
--50.323,-50.462,-50.661,-50.901,-51.155,-51.393,-51.584,-51.710,-51.762,-51.748,-51.688,-51.615,-51.564,-51.567,-51.650,-51.824,
--52.087,-52.422,-52.803,-53.202,-53.592,-53.952,-54.273,-54.555,-54.807,-55.042,-55.275,-55.511,-55.753,-55.993,-56.217,-56.410,
--56.559,-56.657,-56.709,-56.727,-56.735,-56.756,-56.813,-56.921,-57.078,-57.273,-57.477,-57.658,-57.781,-57.819,-57.758,-57.606,
--57.385,-57.134,-56.899,-56.723,-56.636,-56.650,-56.753,-56.908,-57.065,-57.164,-57.153,-56.995,-56.679,-56.222,-55.672,-55.096,
--54.572,-54.176,-53.968,-53.983,-54.225,-54.669,-55.264,-55.943,-56.636,-57.280,-57.828,-58.253,-58.551,-58.735,-58.830,-58.865,
--58.864,-58.844,-58.814,-58.769,-58.703,-58.607,-58.478,-58.320,-58.146,-57.974,-57.827,-57.723,-57.675,-57.683,-57.733,-57.801,
--57.857,-57.869,-57.809,-57.662,-57.428,-57.120,-56.768,-56.409,-56.083,-55.829,-55.675,-55.636,-55.715,-55.902,-56.176,-56.512,
--56.884,-57.268,-57.646,-58.005,-58.337,-58.639,-58.908,-59.142,-59.338,-59.495,-59.609,-59.682,-59.717,-59.721,-59.706,-59.687,
--59.680,-59.700,-59.757,-59.857,-59.998,-60.173,-60.371,-60.576,-60.775,-60.954,-61.106,-61.226,-61.314,-61.373,-61.406,-61.420,
--61.416,-61.397,-61.363,-61.317,-61.259,-61.196,-61.135,-61.089,-61.070,-61.095,-61.175,-61.319,-61.530,-61.805,-62.133,-62.499,
--62.883,-63.266,-63.629,-63.959,-64.246,-64.488,-64.685,-64.842,-64.966,-65.060,-65.130,-65.177,-65.200,-65.199,-65.173,-65.126,
--65.061,-64.991,-64.928,-64.887,-64.883,-64.926,-65.020,-65.163,-65.342,-65.537,-65.722,-65.871,-65.959,-65.966,-65.883,-65.711,
--65.466,-65.169,-64.854,-64.551,-64.294,-64.106,-64.000,-63.980,-64.035,-64.145,-64.284,-64.421,-64.532,-64.594,-64.596,-64.535,
--64.420,-64.265,-64.090,-63.914,-63.756,-63.627,-63.532,-63.471,-63.435,-63.412,-63.391,-63.360,-63.310,-63.240,-63.150,-63.047,
--62.938,-62.834,-62.742,-62.667,-62.610,-62.570,-62.539,-62.510,-62.476,-62.430,-62.366,-62.286,-62.190,-62.085,-61.978,-61.874,
--61.782,-61.704,-61.643,-61.598,-61.563,-61.535,-61.506,-61.471,-61.425,-61.364,-61.288,-61.195,-61.088,-60.968,-60.837,-60.699,
--60.554,-60.404,-60.251,-60.096,-59.942,-59.790,-59.644,-59.506,-59.380,-59.267,-59.167,-59.082,-59.007,-58.940,-58.877,-58.813,
--58.744,-58.666,-58.578,-58.478,-58.368,-58.250,-58.127,-58.001,-57.875,-57.751,-57.631,-57.514,-57.398,-57.282,-57.163,-57.039,
--56.906,-56.762,-56.605,-56.433,-56.247,-56.046,-55.833,-55.610,-55.380,-55.148,-54.918,-54.696,-54.484,-54.284,-54.097,-53.921,
--53.752,-53.587,-53.420,-53.247,-53.065,-52.873,-52.673,-52.468,-52.265,-52.069,-51.886,-51.720,-51.574,-51.444,-51.325,-51.212,
--51.094,-50.964,-50.815,-50.642,-50.446,-50.228,-49.995,-49.754,-49.514,-49.284,-49.068,-48.871,-48.692,-48.529,-48.378,-48.232,
--48.085,-47.930,-47.764,-47.581,-47.382,-47.163,-46.927,-46.675,-46.408,-46.130,-45.846,-45.559,-45.275,-45.000,-44.741,-44.504,
--44.292,-44.111,-43.960,-43.839,-43.742,-43.664,-43.597,-43.531,-43.459,-43.373,-43.268,-43.141,-42.991,-42.819,-42.628,-42.424,
--42.212,-41.996,-41.782,-41.573,-41.375,-41.188,-41.016,-40.860,-40.721,-40.597,-40.489,-40.393,-40.306,-40.224,-40.142,-40.055,
--39.959,-39.851,-39.729,-39.593,-39.446,-39.290,-39.130,-38.970,-38.813,-38.662,-38.515,-38.373,-38.229,-38.081,-37.922,-37.750,
--37.562,-37.359,-37.143,-36.918,-36.689,-36.461,-36.238,-36.023,-35.815,-35.615,-35.420,-35.229,-35.041,-34.857,-34.682,-34.520,
--34.376,-34.254,-34.157,-34.079,-34.016,-33.953,-33.878,-33.775,-33.633,-33.444,-33.208,-32.935,-32.639,-32.342,-32.064,-31.826,
--31.638,-31.503,-31.409,-31.337,-31.255,-31.133,-30.938,-30.647,-30.251,-29.753,-29.174,-28.546,-27.910,-27.311,-26.786,-26.365,
--26.061,-25.874,-25.785,-25.765,-25.779,-25.790,-25.765,-25.682,-25.531,-25.315,-25.046,-24.746,-24.438,-24.146,-23.888,-23.676,
--23.512,-23.394,-23.312,-23.252,-23.203,-23.153,-23.094,-23.020,-22.929,-22.823,-22.702,-22.570,-22.427,-22.275,-22.118,-21.958,
--21.799,-21.647,-21.509,-21.392,-21.302,-21.240,-21.202,-21.181,-21.162,-21.128,-21.057,-20.932,-20.737,-20.465,-20.119,-19.708,
--19.254,-18.782,-18.321,-17.896,-17.527,-17.227,-16.994,-16.820,-16.687,-16.572,-16.453,-16.310,-16.133,-15.919,-15.675,-15.416,
--15.163,-14.935,-14.752,-14.625,-14.557,-14.544,-14.574,-14.631,-14.696,-14.753,-14.790,-14.799,-14.779,-14.735,-14.672,-14.598,
--14.516,-14.431,-14.341,-14.243,-14.131,-13.999,-13.844,-13.663,-13.458,-13.232,-12.991,-12.741,-12.487,-12.236,-11.993,-11.762,
--11.547,-11.355,-11.191,-11.060,-10.966,-10.912,-10.892,-10.897,-10.912,-10.918,-10.892,-10.815,-10.670,-10.450,-10.158,-9.808,
--9.419,-9.019,-8.632,-8.279,-7.969,-7.702,-7.462,-7.226,-6.966,-6.655,-6.273,-5.812,-5.277,-4.687,-4.069,-3.457,
--2.878,-2.353,-1.891,-1.483,-1.112,-.751,-.373,.045,.512,1.024,1.561,2.093,2.585,3.004,3.329,3.552,
-3.687,3.764,3.825,3.919,4.089,4.368,4.770,5.290,5.903,6.571,7.247,7.887,8.453,8.924,9.291,9.563,
-9.757,9.896,9.998,10.078,10.136,10.164,10.143,10.053,9.874,9.590,9.201,8.714,8.150,7.536,6.902,6.279,
-5.687,5.140,4.641,4.186,3.766,3.371,2.992,2.627,2.279,1.959,1.676,1.443,1.266,1.147,1.076,1.041,
-1.021,.995,.944,.852,.714,.532,.314,.076,-.165,-.394,-.597,-.770,-.909,-1.019,-1.108,-1.182,
--1.249,-1.311,-1.370,-1.421,-1.460,-1.482,-1.483,-1.464,-1.426,-1.377,-1.323,-1.273,-1.235,-1.212,-1.205,-1.212,
--1.227,-1.242,-1.249,-1.243,-1.220,-1.182,-1.129,-1.069,-1.008,-.950,-.902,-.865,-.838,-.818,-.803,-.785,
--.763,-.732,-.692,-.644,-.590,-.534,-.480,-.431,-.387,-.350,-.319,-.291,-.264,-.237,-.208,-.177,
--.144,-.111,-.080,-.052,-.027,-.006,.011,.027,.045,.066,.093,.126,.165,.208,.253,.296,
-.334,.363,.382,.390,.387,.378,.366,.354,.347,.347,.355,.370,.391,.411,.428,.436,
-.433,.417,.389,.352,.310,.268,.231,.203,.187,.184,.191,.207,.228,.250,.273,.295,
-.318,.342,.371,.407,.449,.498,.549,.598,.639,.668,.679,.672,.647,.609,.564,.520,
-.485,.465,.465,.486,.525,.579,.640,.702,.759,.806,.840,.861,.871,.871,.866,.856,
-.844,.829,.811,.790,.769,.748,.732,.728,.743,.784,.858,.968,1.119,1.308,1.533,1.789,
-2.071,2.376,2.701,3.044,3.408,3.793,4.200,4.631,5.081,5.545,6.016,6.482,6.933,7.361,7.761,8.131,
-8.474,8.799,9.113,9.426,9.743,10.064,10.382,10.684,10.953,11.168,11.312,11.372,11.343,11.233,11.060,10.852,
-10.640,10.459,10.339,10.299,10.349,10.483,10.683,10.922,11.170,11.394,11.571,11.685,11.732,11.721,11.667,11.592,
-11.518,11.465,11.442,11.453,11.492,11.550,11.613,11.669,11.712,11.741,11.761,11.786,11.826,11.896,12.001,12.140,
-12.305,12.478,12.636,12.756,12.817,12.807,12.068,12.017,11.935,11.830,11.716,11.613,11.543,11.527,11.580,11.711,
-11.919,12.198,12.531,12.898,13.275,13.640,13.973,14.260,14.489,14.660,14.772,14.832,14.849,14.832,14.791,14.735,
-14.668,14.597,14.523,14.447,14.369,14.286,14.198,14.104,14.001,13.892,13.775,13.650,13.520,13.384,13.241,13.092,
-12.937,12.776,12.611,12.449,12.296,12.165,12.067,12.017,12.028,12.110,12.264,12.488,12.768,13.084,13.408,13.713,
-13.971,14.161,14.273,14.308,14.281,14.219,14.154,14.122,14.154,14.271,14.482,14.777,15.134,15.519,15.892,16.217,
-16.466,16.627,16.704,16.717,16.702,16.699,16.749,16.884,17.120,17.456,17.872,18.331,18.789,19.201,19.529,19.747,
-19.852,19.855,19.785,19.684,19.592,19.547,19.574,19.684,19.867,20.105,20.366,20.617,20.832,20.992,21.092,21.142,
-21.161,21.173,21.205,21.276,21.393,21.554,21.745,21.941,22.118,22.252,22.326,22.338,22.292,22.207,22.104,22.010,
-21.943,21.915,21.929,21.975,22.035,22.090,22.120,22.114,22.071,22.000,21.924,21.872,21.876,21.965,22.157,22.459,
-22.859,23.333,23.843,24.348,24.803,25.172,25.428,25.560,25.572,25.481,25.315,25.106,24.889,24.690,24.529,24.415,
-24.348,24.318,24.311,24.313,24.310,24.294,24.262,24.218,24.169,24.124,24.088,24.066,24.055,24.043,24.015,23.954,
-23.839,23.658,23.402,23.075,22.693,22.280,21.870,21.501,21.208,21.022,20.963,21.036,21.231,21.527,21.890,22.281,
-22.661,22.996,23.262,23.449,23.561,23.613,23.631,23.645,23.683,23.769,23.917,24.126,24.385,24.670,24.950,25.189,
-25.355,25.418,25.361,25.177,24.875,24.472,23.997,23.486,22.973,22.496,22.082,21.754,21.521,21.385,21.337,21.359,
-21.429,21.522,21.613,21.683,21.716,21.705,21.648,21.552,21.429,21.293,21.159,21.041,20.946,20.878,20.832,20.801,
-20.770,20.726,20.654,20.545,20.393,20.202,19.981,19.746,19.515,19.311,19.155,19.062,19.045,19.109,19.253,19.470,
-19.748,20.075,20.436,20.818,21.208,21.596,21.973,22.329,22.654,22.936,23.160,23.311,23.371,23.323,23.155,22.857,
-22.426,21.867,21.193,20.425,19.591,18.721,17.852,17.019,16.252,15.581,15.024,14.595,14.295,14.120,14.055,14.079,
-14.165,14.286,14.413,14.521,14.590,14.610,14.575,14.493,14.375,14.241,14.111,14.008,13.950,13.948,14.007,14.123,
-14.285,14.476,14.678,14.869,15.034,15.160,15.243,15.284,15.290,15.272,15.243,15.215,15.198,15.196,15.211,15.240,
-15.276,15.311,15.339,15.352,15.346,15.319,15.272,15.207,15.126,15.031,14.924,14.804,14.670,14.521,14.354,14.168,
-13.964,13.744,13.511,13.270,13.025,12.781,12.541,12.306,12.076,11.849,11.623,11.395,11.161,10.920,10.671,10.414,
-10.149,9.878,9.602,9.320,9.032,8.736,8.432,8.120,7.798,7.472,7.144,6.821,6.510,6.220,5.957,5.724,
-5.522,5.347,5.193,5.048,4.902,4.743,4.558,4.343,4.092,3.809,3.497,3.164,2.821,2.474,2.129,1.789,
-1.449,1.104,.744,.357,-.065,-.530,-1.039,-1.589,-2.168,-2.765,-3.360,-3.937,-4.480,-4.979,-5.428,-5.829,
--6.190,-6.523,-6.842,-7.160,-7.491,-7.840,-8.210,-8.596,-8.990,-9.383,-9.764,-10.123,-10.458,-10.768,-11.058,-11.338,
--11.618,-11.910,-12.222,-12.559,-12.921,-13.305,-13.702,-14.103,-14.499,-14.882,-15.249,-15.600,-15.938,-16.271,-16.605,-16.949,
--17.306,-17.677,-18.061,-18.453,-18.845,-19.233,-19.610,-19.975,-20.331,-20.681,-21.031,-21.389,-21.759,-22.143,-22.539,-22.940,
--23.338,-23.720,-24.077,-24.400,-24.685,-24.932,-25.147,-25.339,-25.521,-25.704,-25.900,-26.114,-26.351,-26.608,-26.881,-27.162,
--27.445,-27.722,-27.990,-28.247,-28.497,-28.744,-28.994,-29.253,-29.526,-29.814,-30.115,-30.425,-30.735,-31.034,-31.313,-31.558,
--31.763,-31.920,-32.026,-32.083,-32.097,-32.076,-32.034,-31.984,-31.942,-31.922,-31.937,-31.997,-32.105,-32.262,-32.462,-32.695,
--32.949,-33.207,-33.457,-33.684,-33.881,-34.043,-34.173,-34.276,-34.363,-34.446,-34.537,-34.649,-34.787,-34.954,-35.147,-35.357,
--35.573,-35.782,-35.970,-36.126,-36.246,-36.329,-36.382,-36.416,-36.449,-36.497,-36.577,-36.702,-36.880,-37.109,-37.382,-37.685,
--37.999,-38.303,-38.581,-38.818,-39.008,-39.154,-39.265,-39.358,-39.450,-39.562,-39.707,-39.893,-40.122,-40.386,-40.673,-40.966,
--41.251,-41.516,-41.758,-41.980,-42.195,-42.419,-42.674,-42.979,-43.350,-43.794,-44.310,-44.889,-45.514,-46.167,-46.825,-47.470,
--48.087,-48.664,-49.196,-49.679,-50.111,-50.489,-50.809,-51.066,-51.254,-51.371,-51.417,-51.400,-51.332,-51.233,-51.127,-51.039,
--50.988,-50.988,-51.042,-51.143,-51.274,-51.414,-51.539,-51.628,-51.669,-51.663,-51.621,-51.564,-51.520,-51.517,-51.580,-51.723,
--51.949,-52.249,-52.603,-52.986,-53.371,-53.736,-54.068,-54.362,-54.623,-54.863,-55.096,-55.333,-55.580,-55.836,-56.089,-56.324,
--56.525,-56.678,-56.778,-56.828,-56.843,-56.845,-56.859,-56.905,-56.998,-57.138,-57.312,-57.496,-57.658,-57.766,-57.795,-57.732,
--57.584,-57.373,-57.134,-56.909,-56.739,-56.652,-56.658,-56.746,-56.883,-57.021,-57.105,-57.082,-56.917,-56.596,-56.132,-55.566,
--54.960,-54.389,-53.927,-53.635,-53.556,-53.703,-54.061,-54.591,-55.234,-55.925,-56.600,-57.206,-57.705,-58.080,-58.327,-58.460,
--58.496,-58.459,-58.366,-58.234,-58.071,-57.886,-57.684,-57.473,-57.266,-57.077,-56.922,-56.816,-56.769,-56.780,-56.839,-56.925,
--57.007,-57.052,-57.029,-56.913,-56.695,-56.379,-55.987,-55.554,-55.124,-54.743,-54.453,-54.285,-54.257,-54.371,-54.617,-54.972,
--55.406,-55.888,-56.389,-56.885,-57.360,-57.803,-58.208,-58.572,-58.895,-59.175,-59.410,-59.598,-59.738,-59.831,-59.881,-59.897,
--59.892,-59.879,-59.874,-59.889,-59.934,-60.013,-60.126,-60.266,-60.424,-60.591,-60.755,-60.909,-61.048,-61.169,-61.272,-61.360,
--61.432,-61.490,-61.533,-61.557,-61.561,-61.544,-61.506,-61.452,-61.393,-61.340,-61.311,-61.319,-61.380,-61.503,-61.691,-61.942,
--62.245,-62.585,-62.945,-63.305,-63.649,-63.964,-64.241,-64.478,-64.675,-64.838,-64.973,-65.084,-65.177,-65.254,-65.316,-65.363,
--65.396,-65.420,-65.438,-65.458,-65.490,-65.541,-65.618,-65.724,-65.854,-65.999,-66.142,-66.264,-66.343,-66.361,-66.304,-66.168,
--65.958,-65.690,-65.387,-65.079,-64.797,-64.570,-64.418,-64.351,-64.369,-64.457,-64.593,-64.748,-64.893,-64.999,-65.048,-65.029,
--64.941,-64.795,-64.609,-64.403,-64.201,-64.022,-63.877,-63.774,-63.709,-63.675,-63.658,-63.645,-63.624,-63.585,-63.525,-63.445,
--63.350,-63.249,-63.152,-63.065,-62.994,-62.940,-62.898,-62.865,-62.832,-62.791,-62.738,-62.669,-62.584,-62.487,-62.385,-62.284,
--62.192,-62.112,-62.048,-61.998,-61.958,-61.923,-61.886,-61.841,-61.782,-61.706,-61.614,-61.508,-61.391,-61.267,-61.140,-61.014,
--60.889,-60.766,-60.643,-60.517,-60.388,-60.253,-60.114,-59.974,-59.835,-59.702,-59.579,-59.471,-59.378,-59.300,-59.234,-59.175,
--59.119,-59.057,-58.986,-58.902,-58.804,-58.691,-58.568,-58.438,-58.307,-58.179,-58.057,-57.943,-57.835,-57.731,-57.626,-57.515,
--57.393,-57.254,-57.096,-56.917,-56.718,-56.501,-56.271,-56.032,-55.790,-55.551,-55.319,-55.099,-54.891,-54.697,-54.514,-54.341,
--54.174,-54.008,-53.840,-53.666,-53.484,-53.294,-53.098,-52.899,-52.702,-52.511,-52.331,-52.166,-52.016,-51.882,-51.761,-51.647,
--51.535,-51.418,-51.289,-51.145,-50.984,-50.806,-50.613,-50.410,-50.203,-49.996,-49.795,-49.602,-49.418,-49.242,-49.073,-48.906,
--48.736,-48.561,-48.377,-48.180,-47.969,-47.744,-47.503,-47.248,-46.979,-46.698,-46.407,-46.110,-45.812,-45.520,-45.241,-44.982,
--44.752,-44.556,-44.399,-44.281,-44.201,-44.151,-44.123,-44.106,-44.088,-44.057,-44.004,-43.921,-43.805,-43.653,-43.469,-43.257,
--43.021,-42.769,-42.506,-42.238,-41.970,-41.706,-41.451,-41.208,-40.981,-40.774,-40.590,-40.431,-40.297,-40.186,-40.093,-40.011,
--39.932,-39.846,-39.745,-39.621,-39.470,-39.291,-39.088,-38.865,-38.629,-38.389,-38.151,-37.919,-37.695,-37.476,-37.258,-37.034,
--36.799,-36.548,-36.279,-35.995,-35.700,-35.403,-35.114,-34.843,-34.598,-34.383,-34.201,-34.050,-33.924,-33.818,-33.725,-33.639,
--33.557,-33.476,-33.396,-33.317,-33.237,-33.155,-33.066,-32.963,-32.840,-32.690,-32.509,-32.299,-32.065,-31.818,-31.573,-31.346,
--31.153,-31.006,-30.906,-30.848,-30.817,-30.791,-30.740,-30.637,-30.458,-30.187,-29.819,-29.363,-28.839,-28.279,-27.717,-27.188,
--26.724,-26.345,-26.061,-25.868,-25.752,-25.690,-25.655,-25.619,-25.560,-25.463,-25.319,-25.131,-24.906,-24.658,-24.402,-24.152,
--23.919,-23.713,-23.535,-23.387,-23.265,-23.166,-23.083,-23.013,-22.949,-22.886,-22.820,-22.744,-22.652,-22.540,-22.404,-22.243,
--22.060,-21.862,-21.661,-21.470,-21.304,-21.177,-21.097,-21.066,-21.077,-21.116,-21.162,-21.187,-21.166,-21.076,-20.900,-20.633,
--20.283,-19.865,-19.406,-18.936,-18.486,-18.082,-17.741,-17.470,-17.265,-17.113,-16.993,-16.883,-16.764,-16.620,-16.446,-16.243,
--16.024,-15.803,-15.600,-15.429,-15.301,-15.221,-15.184,-15.181,-15.197,-15.214,-15.218,-15.199,-15.150,-15.073,-14.972,-14.858,
--14.739,-14.623,-14.517,-14.420,-14.330,-14.240,-14.141,-14.026,-13.886,-13.716,-13.514,-13.283,-13.025,-12.749,-12.464,-12.179,
--11.907,-11.660,-11.447,-11.280,-11.166,-11.108,-11.103,-11.144,-11.215,-11.297,-11.364,-11.392,-11.359,-11.248,-11.050,-10.768,
--10.414,-10.010,-9.579,-9.147,-8.736,-8.358,-8.016,-7.702,-7.399,-7.086,-6.739,-6.342,-5.885,-5.368,-4.803,-4.209,
--3.610,-3.026,-2.477,-1.970,-1.503,-1.069,-.650,-.230,.203,.654,1.120,1.587,2.032,2.433,2.769,3.029,
-3.211,3.329,3.409,3.485,3.594,3.768,4.031,4.392,4.845,5.369,5.934,6.504,7.045,7.530,7.941,8.274,
-8.535,8.734,8.888,9.007,9.098,9.157,9.174,9.134,9.017,8.809,8.502,8.099,7.611,7.060,6.474,5.880,
-5.304,4.763,4.268,3.818,3.405,3.019,2.648,2.284,1.926,1.576,1.248,.955,.710,.526,.405,.344,
-.330,.345,.367,.374,.350,.285,.178,.034,-.134,-.309,-.476,-.621,-.738,-.824,-.885,-.928,
--.964,-1.003,-1.049,-1.107,-1.172,-1.239,-1.299,-1.344,-1.367,-1.366,-1.342,-1.302,-1.252,-1.203,-1.164,-1.142,
--1.138,-1.153,-1.182,-1.219,-1.255,-1.283,-1.298,-1.299,-1.284,-1.258,-1.224,-1.188,-1.155,-1.127,-1.105,-1.089,
--1.076,-1.063,-1.048,-1.028,-1.001,-.970,-.934,-.898,-.864,-.834,-.809,-.790,-.776,-.763,-.750,-.734,
--.714,-.688,-.658,-.624,-.588,-.554,-.523,-.496,-.473,-.452,-.433,-.412,-.388,-.358,-.323,-.282,
--.239,-.195,-.154,-.120,-.093,-.076,-.068,-.067,-.070,-.075,-.078,-.078,-.074,-.067,-.058,-.050,
--.045,-.045,-.051,-.062,-.077,-.092,-.106,-.114,-.115,-.108,-.093,-.073,-.050,-.027,-.006,.011,
-.025,.037,.048,.061,.076,.095,.115,.135,.151,.158,.154,.136,.104,.062,.013,-.034,
--.073,-.097,-.101,-.082,-.041,.019,.092,.173,.253,.326,.389,.437,.470,.490,.498,.497,
-.489,.477,.462,.446,.432,.424,.427,.447,.490,.565,.675,.825,1.016,1.247,1.511,1.805,
-2.122,2.456,2.805,3.166,3.543,3.937,4.351,4.788,5.245,5.717,6.195,6.665,7.114,7.526,7.893,8.210,
-8.479,8.710,8.917,9.120,9.334,9.574,9.844,10.140,10.448,10.744,11.000,11.189,11.288,11.283,11.176,10.982,
-10.731,10.462,10.218,10.042,9.967,10.014,10.186,10.470,10.838,11.252,11.670,12.052,12.366,12.594,12.729,12.780,
-12.764,12.705,12.629,12.557,12.503,12.473,12.464,12.467,12.470,12.462,12.434,12.384,12.316,12.238,12.161,12.098,
-12.056,12.039,12.044,12.063,12.081,12.087,12.068,11.778,11.807,11.834,11.856,11.876,11.903,11.948,12.024,12.146,
-12.323,12.559,12.853,13.198,13.580,13.982,14.384,14.768,15.117,15.420,15.667,15.857,15.991,16.074,16.113,16.115,
-16.088,16.037,15.967,15.880,15.777,15.661,15.531,15.391,15.243,15.092,14.942,14.798,14.663,14.539,14.425,14.318,
-14.214,14.109,13.997,13.878,13.753,13.628,13.513,13.424,13.374,13.378,13.445,13.577,13.770,14.008,14.270,14.529,
-14.758,14.931,15.034,15.061,15.021,14.935,14.834,14.751,14.723,14.774,14.920,15.160,15.476,15.840,16.212,16.552,
-16.824,17.008,17.096,17.101,17.051,16.985,16.946,16.974,17.096,17.324,17.649,18.046,18.476,18.895,19.258,19.536,
-19.712,19.789,19.789,19.747,19.705,19.702,19.768,19.920,20.153,20.445,20.764,21.067,21.316,21.481,21.547,21.518,
-21.416,21.273,21.129,21.024,20.988,21.037,21.170,21.369,21.605,21.843,22.048,22.191,22.259,22.250,22.177,22.066,
-21.943,21.838,21.772,21.756,21.789,21.861,21.954,22.049,22.128,22.184,22.218,22.244,22.283,22.361,22.504,22.730,
-23.046,23.448,23.916,24.418,24.918,25.374,25.753,26.029,26.189,26.236,26.184,26.059,25.890,25.708,25.539,25.401,
-25.303,25.244,25.216,25.204,25.195,25.178,25.144,25.094,25.030,24.960,24.893,24.834,24.783,24.736,24.680,24.598,
-24.469,24.275,24.004,23.652,23.227,22.749,22.250,21.767,21.341,21.013,20.811,20.754,20.843,21.065,21.392,21.783,
-22.197,22.588,22.923,23.176,23.339,23.418,23.432,23.412,23.391,23.401,23.468,23.605,23.813,24.076,24.367,24.652,
-24.891,25.048,25.093,25.010,24.794,24.456,24.021,23.522,22.998,22.489,22.031,21.651,21.366,21.181,21.090,21.076,
-21.118,21.188,21.262,21.318,21.340,21.320,21.257,21.157,21.033,20.897,20.766,20.650,20.557,20.490,20.447,20.419,
-20.396,20.365,20.317,20.241,20.136,20.002,19.845,19.677,19.511,19.359,19.236,19.151,19.110,19.116,19.168,19.260,
-19.387,19.543,19.724,19.925,20.145,20.384,20.639,20.909,21.188,21.466,21.731,21.965,22.149,22.261,22.283,22.197,
-21.992,21.665,21.217,20.661,20.013,19.298,18.543,17.777,17.031,16.330,15.699,15.155,14.708,14.365,14.120,13.964,
-13.882,13.854,13.858,13.872,13.877,13.857,13.805,13.719,13.606,13.478,13.354,13.251,13.189,13.180,13.234,13.351,
-13.523,13.736,13.971,14.209,14.428,14.614,14.756,14.851,14.904,14.922,14.918,14.906,14.899,14.903,14.924,14.961,
-15.009,15.059,15.104,15.133,15.142,15.126,15.084,15.018,14.933,14.831,14.717,14.592,14.459,14.315,14.159,13.990,
-13.806,13.608,13.397,13.177,12.951,12.722,12.495,12.272,12.051,11.834,11.616,11.394,11.166,10.928,10.678,10.418,
-10.147,9.867,9.581,9.289,8.992,8.691,8.385,8.073,7.756,7.434,7.111,6.792,6.484,6.193,5.928,5.694,
-5.492,5.322,5.178,5.052,4.931,4.804,4.658,4.483,4.273,4.027,3.747,3.440,3.116,2.784,2.453,2.128,
-1.811,1.500,1.186,.860,.510,.127,-.298,-.767,-1.279,-1.826,-2.397,-2.976,-3.548,-4.098,-4.616,-5.093,
--5.529,-5.926,-6.292,-6.637,-6.972,-7.306,-7.647,-7.998,-8.361,-8.732,-9.107,-9.480,-9.846,-10.203,-10.548,-10.884,
--11.214,-11.544,-11.879,-12.224,-12.580,-12.950,-13.332,-13.721,-14.115,-14.508,-14.899,-15.284,-15.663,-16.039,-16.412,-16.786,
--17.161,-17.539,-17.919,-18.300,-18.680,-19.059,-19.436,-19.813,-20.195,-20.586,-20.990,-21.414,-21.857,-22.318,-22.791,-23.267,
--23.731,-24.169,-24.568,-24.916,-25.206,-25.438,-25.617,-25.755,-25.866,-25.969,-26.078,-26.209,-26.371,-26.567,-26.795,-27.049,
--27.320,-27.597,-27.871,-28.137,-28.391,-28.637,-28.878,-29.122,-29.376,-29.645,-29.934,-30.240,-30.558,-30.878,-31.188,-31.475,
--31.726,-31.929,-32.079,-32.173,-32.216,-32.215,-32.185,-32.140,-32.097,-32.073,-32.081,-32.132,-32.231,-32.378,-32.568,-32.791,
--33.035,-33.286,-33.531,-33.757,-33.957,-34.127,-34.269,-34.390,-34.500,-34.610,-34.735,-34.883,-35.063,-35.275,-35.515,-35.772,
--36.032,-36.278,-36.492,-36.659,-36.769,-36.820,-36.818,-36.776,-36.716,-36.661,-36.636,-36.664,-36.762,-36.936,-37.185,-37.496,
--37.848,-38.216,-38.574,-38.897,-39.169,-39.380,-39.532,-39.638,-39.714,-39.784,-39.869,-39.988,-40.153,-40.365,-40.619,-40.903,
--41.201,-41.495,-41.773,-42.029,-42.265,-42.490,-42.721,-42.980,-43.287,-43.659,-44.107,-44.634,-45.235,-45.894,-46.592,-47.305,
--48.009,-48.681,-49.305,-49.863,-50.347,-50.750,-51.068,-51.300,-51.447,-51.514,-51.508,-51.441,-51.328,-51.189,-51.045,-50.919,
--50.830,-50.790,-50.806,-50.876,-50.988,-51.125,-51.265,-51.390,-51.482,-51.535,-51.550,-51.539,-51.520,-51.516,-51.549,-51.638,
--51.792,-52.013,-52.291,-52.612,-52.955,-53.303,-53.639,-53.956,-54.250,-54.529,-54.798,-55.067,-55.341,-55.620,-55.895,-56.156,
--56.385,-56.569,-56.698,-56.770,-56.792,-56.783,-56.764,-56.760,-56.792,-56.872,-57.002,-57.168,-57.347,-57.511,-57.629,-57.678,
--57.645,-57.534,-57.361,-57.157,-56.957,-56.797,-56.701,-56.681,-56.726,-56.813,-56.898,-56.937,-56.882,-56.702,-56.380,-55.926,
--55.370,-54.765,-54.173,-53.661,-53.287,-53.096,-53.108,-53.322,-53.713,-54.238,-54.845,-55.478,-56.085,-56.623,-57.064,-57.391,
--57.599,-57.693,-57.685,-57.588,-57.417,-57.190,-56.924,-56.637,-56.350,-56.086,-55.866,-55.708,-55.626,-55.622,-55.689,-55.806,
--55.944,-56.064,-56.130,-56.109,-55.977,-55.728,-55.373,-54.939,-54.470,-54.013,-53.622,-53.342,-53.207,-53.234,-53.425,-53.763,
--54.219,-54.756,-55.335,-55.919,-56.476,-56.987,-57.438,-57.827,-58.156,-58.432,-58.664,-58.857,-59.020,-59.156,-59.269,-59.365,
--59.446,-59.521,-59.594,-59.674,-59.766,-59.874,-60.000,-60.142,-60.294,-60.452,-60.607,-60.754,-60.889,-61.010,-61.118,-61.214,
--61.302,-61.384,-61.459,-61.528,-61.585,-61.627,-61.649,-61.648,-61.626,-61.587,-61.542,-61.501,-61.480,-61.493,-61.553,-61.665,
--61.832,-62.050,-62.309,-62.595,-62.893,-63.189,-63.472,-63.733,-63.971,-64.186,-64.383,-64.569,-64.748,-64.926,-65.102,-65.276,
--65.444,-65.600,-65.740,-65.862,-65.963,-66.048,-66.118,-66.180,-66.238,-66.292,-66.343,-66.384,-66.408,-66.404,-66.363,-66.278,
--66.145,-65.969,-65.759,-65.531,-65.305,-65.102,-64.940,-64.834,-64.790,-64.805,-64.868,-64.962,-65.065,-65.153,-65.207,-65.212,
--65.160,-65.054,-64.904,-64.724,-64.534,-64.353,-64.195,-64.072,-63.987,-63.937,-63.913,-63.904,-63.896,-63.878,-63.842,-63.784,
--63.705,-63.611,-63.509,-63.407,-63.314,-63.233,-63.167,-63.113,-63.067,-63.023,-62.975,-62.919,-62.851,-62.773,-62.688,-62.600,
--62.514,-62.435,-62.367,-62.310,-62.261,-62.217,-62.171,-62.118,-62.054,-61.974,-61.880,-61.773,-61.657,-61.537,-61.420,-61.308,
--61.205,-61.110,-61.019,-60.930,-60.837,-60.735,-60.622,-60.497,-60.360,-60.217,-60.071,-59.929,-59.797,-59.679,-59.575,-59.486,
--59.408,-59.337,-59.267,-59.192,-59.110,-59.019,-58.917,-58.807,-58.692,-58.576,-58.462,-58.351,-58.243,-58.136,-58.027,-57.910,
--57.781,-57.635,-57.469,-57.282,-57.076,-56.854,-56.622,-56.385,-56.149,-55.921,-55.704,-55.500,-55.310,-55.133,-54.966,-54.804,
--54.644,-54.481,-54.313,-54.139,-53.956,-53.767,-53.572,-53.376,-53.181,-52.991,-52.808,-52.633,-52.469,-52.315,-52.169,-52.029,
--51.893,-51.759,-51.623,-51.484,-51.341,-51.195,-51.045,-50.892,-50.737,-50.580,-50.421,-50.259,-50.091,-49.917,-49.734,-49.539,
--49.331,-49.111,-48.878,-48.634,-48.380,-48.119,-47.853,-47.583,-47.310,-47.035,-46.759,-46.483,-46.210,-45.942,-45.685,-45.443,
--45.222,-45.027,-44.863,-44.730,-44.629,-44.555,-44.503,-44.464,-44.430,-44.392,-44.341,-44.272,-44.182,-44.067,-43.929,-43.770,
--43.590,-43.392,-43.177,-42.946,-42.698,-42.435,-42.158,-41.871,-41.581,-41.294,-41.020,-40.768,-40.546,-40.358,-40.204,-40.080,
--39.976,-39.879,-39.775,-39.648,-39.485,-39.278,-39.026,-38.731,-38.403,-38.054,-37.699,-37.351,-37.021,-36.713,-36.427,-36.158,
--35.897,-35.635,-35.363,-35.075,-34.770,-34.454,-34.137,-33.833,-33.555,-33.317,-33.128,-32.991,-32.904,-32.859,-32.842,-32.840,
--32.837,-32.822,-32.786,-32.725,-32.641,-32.537,-32.417,-32.288,-32.153,-32.014,-31.870,-31.721,-31.564,-31.400,-31.231,-31.064,
--30.905,-30.765,-30.651,-30.570,-30.521,-30.500,-30.495,-30.490,-30.465,-30.400,-30.278,-30.088,-29.825,-29.495,-29.111,-28.694,
--28.266,-27.851,-27.470,-27.136,-26.856,-26.631,-26.451,-26.303,-26.173,-26.043,-25.900,-25.736,-25.543,-25.324,-25.082,-24.825,
--24.560,-24.298,-24.045,-23.810,-23.596,-23.407,-23.244,-23.106,-22.992,-22.897,-22.816,-22.739,-22.660,-22.568,-22.455,-22.315,
--22.146,-21.952,-21.741,-21.527,-21.326,-21.158,-21.039,-20.980,-20.988,-21.058,-21.174,-21.316,-21.453,-21.555,-21.592,-21.541,
--21.388,-21.132,-20.782,-20.359,-19.891,-19.409,-18.943,-18.519,-18.155,-17.856,-17.622,-17.442,-17.301,-17.183,-17.071,-16.956,
--16.831,-16.696,-16.556,-16.418,-16.289,-16.176,-16.081,-16.001,-15.933,-15.868,-15.799,-15.717,-15.617,-15.500,-15.367,-15.225,
--15.080,-14.940,-14.811,-14.697,-14.599,-14.512,-14.430,-14.346,-14.252,-14.140,-14.003,-13.839,-13.648,-13.430,-13.192,-12.940,
--12.684,-12.433,-12.199,-11.993,-11.824,-11.700,-11.624,-11.596,-11.609,-11.650,-11.703,-11.745,-11.756,-11.715,-11.606,-11.420,
--11.157,-10.824,-10.436,-10.011,-9.570,-9.133,-8.712,-8.315,-7.940,-7.580,-7.223,-6.854,-6.462,-6.039,-5.582,-5.097,
--4.592,-4.079,-3.569,-3.072,-2.592,-2.127,-1.673,-1.223,-.768,-.304,.166,.635,1.089,1.513,1.888,2.202,
-2.449,2.631,2.762,2.862,2.959,3.080,3.250,3.485,3.792,4.166,4.593,5.052,5.518,5.969,6.387,6.759,
-7.082,7.355,7.584,7.771,7.918,8.018,8.062,8.034,7.920,7.705,7.383,6.955,6.436,5.847,5.219,4.586,
-3.979,3.425,2.941,2.532,2.192,1.909,1.662,1.431,1.202,.965,.719,.472,.236,.027,-.141,-.259,
--.326,-.346,-.332,-.301,-.271,-.258,-.273,-.318,-.392,-.485,-.584,-.675,-.749,-.797,-.820,-.823,
--.814,-.807,-.811,-.835,-.883,-.951,-1.033,-1.119,-1.196,-1.253,-1.283,-1.283,-1.255,-1.205,-1.144,-1.084,
--1.035,-1.007,-1.003,-1.023,-1.065,-1.122,-1.185,-1.246,-1.299,-1.339,-1.366,-1.379,-1.383,-1.380,-1.375,-1.369,
--1.365,-1.362,-1.358,-1.353,-1.345,-1.332,-1.314,-1.294,-1.274,-1.256,-1.242,-1.236,-1.236,-1.243,-1.254,-1.266,
--1.275,-1.278,-1.273,-1.259,-1.237,-1.209,-1.176,-1.144,-1.113,-1.086,-1.063,-1.043,-1.025,-1.006,-.984,-.956,
--.923,-.883,-.840,-.794,-.749,-.707,-.672,-.642,-.620,-.603,-.590,-.579,-.568,-.556,-.542,-.526,
--.511,-.496,-.485,-.477,-.473,-.474,-.476,-.480,-.484,-.485,-.484,-.480,-.473,-.465,-.456,-.447,
--.439,-.432,-.425,-.418,-.411,-.403,-.395,-.389,-.386,-.389,-.400,-.420,-.447,-.481,-.517,-.550,
--.575,-.588,-.584,-.563,-.524,-.470,-.405,-.334,-.262,-.193,-.131,-.077,-.031,.008,.042,.073,
-.103,.131,.159,.187,.215,.245,.282,.330,.396,.488,.613,.777,.982,1.230,1.515,1.834,
-2.178,2.540,2.913,3.294,3.680,4.075,4.480,4.898,5.330,5.773,6.220,6.659,7.076,7.454,7.779,8.042,
-8.240,8.379,8.473,8.545,8.620,8.723,8.874,9.085,9.354,9.668,10.001,10.322,10.595,10.788,10.879,10.861,
-10.740,10.543,10.306,10.077,9.903,9.825,9.873,10.059,10.379,10.809,11.311,11.840,12.349,12.797,13.153,13.401,
-13.538,13.577,13.540,13.454,13.345,13.236,13.141,13.065,13.006,12.953,12.895,12.821,12.722,12.598,12.453,12.295,
-12.139,11.998,11.883,11.802,11.756,11.743,11.753,11.778,12.465,12.546,12.638,12.734,12.831,12.929,13.032,13.149,
-13.289,13.461,13.672,13.926,14.224,14.561,14.927,15.312,15.703,16.086,16.447,16.776,17.063,17.303,17.490,17.622,
-17.697,17.714,17.676,17.583,17.439,17.252,17.028,16.779,16.519,16.262,16.024,15.817,15.652,15.536,15.469,15.446,
-15.459,15.493,15.534,15.567,15.582,15.574,15.543,15.495,15.444,15.404,15.389,15.411,15.476,15.583,15.721,15.875,
-16.025,16.150,16.234,16.267,16.249,16.192,16.115,16.043,16.006,16.025,16.117,16.284,16.516,16.790,17.074,17.332,
-17.530,17.646,17.669,17.606,17.478,17.320,17.175,17.084,17.079,17.181,17.392,17.696,18.064,18.456,18.833,19.161,
-19.419,19.606,19.736,19.839,19.954,20.120,20.368,20.713,21.149,21.649,22.169,22.653,23.043,23.287,23.352,23.228,
-22.930,22.496,21.984,21.460,20.989,20.625,20.405,20.341,20.423,20.620,20.888,21.179,21.445,21.652,21.781,21.829,
-21.808,21.743,21.663,21.596,21.564,21.580,21.646,21.753,21.889,22.037,22.185,22.327,22.462,22.599,22.751,22.934,
-23.161,23.439,23.766,24.131,24.514,24.890,25.233,25.518,25.728,25.856,25.904,25.884,25.818,25.728,25.638,25.566,
-25.525,25.518,25.540,25.582,25.628,25.664,25.678,25.663,25.618,25.548,25.460,25.364,25.265,25.166,25.063,24.948,
-24.804,24.617,24.370,24.054,23.668,23.220,22.732,22.235,21.763,21.357,21.053,20.876,20.844,20.955,21.194,21.533,
-21.935,22.355,22.753,23.094,23.354,23.525,23.611,23.629,23.606,23.571,23.554,23.576,23.650,23.776,23.940,24.121,
-24.289,24.413,24.465,24.425,24.282,24.039,23.710,23.317,22.892,22.467,22.073,21.733,21.464,21.272,21.154,21.096,
-21.082,21.090,21.100,21.095,21.065,21.004,20.913,20.800,20.675,20.549,20.434,20.339,20.267,20.219,20.193,20.181,
-20.175,20.169,20.154,20.128,20.090,20.042,19.988,19.935,19.888,19.853,19.831,19.824,19.829,19.842,19.859,19.875,
-19.888,19.896,19.903,19.912,19.930,19.965,20.023,20.108,20.222,20.361,20.519,20.684,20.844,20.984,21.088,21.142,
-21.135,21.058,20.905,20.674,20.365,19.982,19.531,19.021,18.463,17.869,17.254,16.637,16.034,15.463,14.940,14.478,
-14.086,13.766,13.516,13.328,13.190,13.089,13.010,12.941,12.875,12.811,12.751,12.705,12.684,12.701,12.766,12.885,
-13.058,13.278,13.533,13.805,14.073,14.319,14.527,14.686,14.791,14.848,14.863,14.851,14.825,14.799,14.784,14.784,
-14.800,14.829,14.862,14.890,14.903,14.895,14.859,14.795,14.703,14.588,14.455,14.309,14.154,13.993,13.826,13.653,
-13.472,13.284,13.086,12.878,12.663,12.443,12.221,11.999,11.781,11.566,11.355,11.146,10.936,10.722,10.499,10.266,
-10.020,9.760,9.486,9.199,8.900,8.591,8.274,7.951,7.625,7.299,6.977,6.664,6.367,6.092,5.843,5.626,
-5.443,5.291,5.169,5.067,4.976,4.884,4.778,4.649,4.485,4.284,4.042,3.763,3.453,3.119,2.773,2.421,
-2.071,1.726,1.388,1.053,.716,.371,.009,-.374,-.783,-1.218,-1.678,-2.157,-2.647,-3.140,-3.627,-4.100,
--4.554,-4.985,-5.393,-5.781,-6.152,-6.514,-6.872,-7.232,-7.598,-7.975,-8.363,-8.762,-9.170,-9.585,-10.003,-10.421,
--10.837,-11.248,-11.653,-12.052,-12.446,-12.835,-13.222,-13.608,-13.997,-14.390,-14.788,-15.195,-15.609,-16.030,-16.456,-16.885,
--17.312,-17.732,-18.142,-18.538,-18.920,-19.289,-19.649,-20.007,-20.372,-20.754,-21.162,-21.603,-22.079,-22.590,-23.127,-23.678,
--24.226,-24.752,-25.237,-25.665,-26.022,-26.305,-26.515,-26.660,-26.757,-26.824,-26.881,-26.949,-27.041,-27.170,-27.338,-27.543,
--27.778,-28.032,-28.294,-28.552,-28.800,-29.032,-29.249,-29.455,-29.656,-29.861,-30.074,-30.302,-30.544,-30.798,-31.056,-31.309,
--31.545,-31.753,-31.924,-32.052,-32.137,-32.181,-32.195,-32.189,-32.178,-32.176,-32.199,-32.256,-32.353,-32.494,-32.675,-32.889,
--33.123,-33.368,-33.609,-33.836,-34.044,-34.230,-34.396,-34.551,-34.706,-34.874,-35.067,-35.296,-35.565,-35.873,-36.212,-36.564,
--36.909,-37.222,-37.480,-37.660,-37.750,-37.744,-37.650,-37.485,-37.278,-37.061,-36.873,-36.748,-36.714,-36.789,-36.976,-37.266,
--37.639,-38.062,-38.499,-38.914,-39.277,-39.566,-39.774,-39.905,-39.974,-40.009,-40.037,-40.087,-40.183,-40.339,-40.559,-40.836,
--41.154,-41.491,-41.828,-42.146,-42.433,-42.690,-42.924,-43.154,-43.402,-43.693,-44.048,-44.484,-45.007,-45.614,-46.289,-47.010,
--47.748,-48.471,-49.148,-49.752,-50.260,-50.658,-50.939,-51.103,-51.158,-51.115,-50.994,-50.815,-50.603,-50.383,-50.179,-50.015,
--49.909,-49.873,-49.911,-50.022,-50.193,-50.408,-50.645,-50.881,-51.097,-51.278,-51.416,-51.512,-51.576,-51.623,-51.672,-51.740,
--51.844,-51.994,-52.193,-52.437,-52.719,-53.027,-53.350,-53.678,-54.004,-54.325,-54.642,-54.955,-55.264,-55.568,-55.858,-56.126,
--56.359,-56.545,-56.676,-56.749,-56.770,-56.751,-56.713,-56.681,-56.676,-56.718,-56.815,-56.965,-57.156,-57.364,-57.559,-57.715,
--57.807,-57.823,-57.763,-57.640,-57.478,-57.307,-57.157,-57.051,-57.002,-57.005,-57.043,-57.085,-57.093,-57.031,-56.868,-56.588,
--56.191,-55.698,-55.145,-54.580,-54.056,-53.625,-53.327,-53.190,-53.223,-53.417,-53.749,-54.184,-54.678,-55.189,-55.676,-56.103,
--56.444,-56.681,-56.805,-56.813,-56.714,-56.519,-56.249,-55.928,-55.586,-55.257,-54.973,-54.765,-54.655,-54.656,-54.767,-54.970,
--55.237,-55.524,-55.786,-55.974,-56.051,-55.990,-55.784,-55.447,-55.012,-54.527,-54.049,-53.636,-53.341,-53.201,-53.238,-53.452,
--53.822,-54.314,-54.883,-55.481,-56.061,-56.586,-57.029,-57.378,-57.632,-57.802,-57.906,-57.966,-58.005,-58.042,-58.094,-58.173,
--58.286,-58.436,-58.623,-58.842,-59.090,-59.358,-59.639,-59.924,-60.203,-60.466,-60.706,-60.916,-61.093,-61.235,-61.346,-61.431,
--61.497,-61.550,-61.596,-61.639,-61.680,-61.716,-61.745,-61.763,-61.764,-61.748,-61.718,-61.678,-61.638,-61.608,-61.602,-61.628,
--61.695,-61.806,-61.959,-62.148,-62.362,-62.592,-62.827,-63.058,-63.281,-63.495,-63.703,-63.910,-64.124,-64.349,-64.588,-64.840,
--65.098,-65.355,-65.599,-65.817,-65.999,-66.138,-66.232,-66.281,-66.291,-66.270,-66.229,-66.176,-66.119,-66.060,-66.001,-65.939,
--65.872,-65.794,-65.706,-65.606,-65.498,-65.390,-65.288,-65.203,-65.140,-65.104,-65.095,-65.110,-65.138,-65.169,-65.191,-65.192,
--65.165,-65.105,-65.014,-64.898,-64.767,-64.632,-64.505,-64.395,-64.309,-64.247,-64.208,-64.184,-64.167,-64.146,-64.115,-64.067,
--64.000,-63.916,-63.818,-63.715,-63.612,-63.516,-63.431,-63.359,-63.299,-63.247,-63.199,-63.150,-63.095,-63.033,-62.963,-62.888,
--62.809,-62.731,-62.657,-62.589,-62.528,-62.473,-62.420,-62.365,-62.305,-62.235,-62.155,-62.063,-61.962,-61.855,-61.746,-61.639,
--61.538,-61.443,-61.354,-61.270,-61.185,-61.097,-61.001,-60.895,-60.778,-60.650,-60.516,-60.379,-60.244,-60.115,-59.997,-59.891,
--59.797,-59.712,-59.634,-59.558,-59.480,-59.397,-59.307,-59.209,-59.103,-58.991,-58.874,-58.753,-58.629,-58.500,-58.366,-58.223,
--58.069,-57.901,-57.720,-57.524,-57.317,-57.101,-56.881,-56.663,-56.450,-56.247,-56.057,-55.880,-55.714,-55.558,-55.409,-55.261,
--55.112,-54.959,-54.800,-54.634,-54.461,-54.283,-54.101,-53.917,-53.732,-53.548,-53.364,-53.180,-52.998,-52.816,-52.634,-52.454,
--52.277,-52.104,-51.937,-51.778,-51.629,-51.488,-51.357,-51.233,-51.112,-50.991,-50.865,-50.728,-50.577,-50.407,-50.217,-50.006,
--49.776,-49.530,-49.271,-49.004,-48.735,-48.465,-48.200,-47.939,-47.684,-47.433,-47.187,-46.943,-46.704,-46.469,-46.240,-46.021,
--45.815,-45.625,-45.454,-45.300,-45.164,-45.041,-44.926,-44.814,-44.700,-44.579,-44.448,-44.309,-44.163,-44.015,-43.868,-43.728,
--43.597,-43.474,-43.354,-43.233,-43.100,-42.946,-42.764,-42.549,-42.300,-42.022,-41.723,-41.417,-41.116,-40.835,-40.583,-40.365,
--40.177,-40.011,-39.853,-39.685,-39.489,-39.252,-38.962,-38.620,-38.229,-37.805,-37.364,-36.927,-36.514,-36.139,-35.810,-35.528,
--35.286,-35.071,-34.868,-34.662,-34.441,-34.200,-33.939,-33.667,-33.398,-33.148,-32.932,-32.763,-32.647,-32.583,-32.563,-32.572,
--32.595,-32.612,-32.610,-32.577,-32.509,-32.408,-32.283,-32.142,-31.999,-31.861,-31.736,-31.626,-31.529,-31.438,-31.346,-31.247,
--31.137,-31.015,-30.883,-30.747,-30.615,-30.496,-30.394,-30.313,-30.249,-30.195,-30.142,-30.076,-29.985,-29.859,-29.692,-29.482,
--29.234,-28.954,-28.655,-28.347,-28.042,-27.747,-27.467,-27.202,-26.951,-26.708,-26.466,-26.220,-25.965,-25.698,-25.421,-25.134,
--24.844,-24.555,-24.273,-24.004,-23.753,-23.523,-23.317,-23.135,-22.978,-22.842,-22.725,-22.621,-22.525,-22.428,-22.323,-22.204,
--22.066,-21.908,-21.733,-21.550,-21.369,-21.209,-21.085,-21.015,-21.010,-21.078,-21.217,-21.416,-21.654,-21.904,-22.134,-22.312,
--22.407,-22.397,-22.269,-22.021,-21.664,-21.217,-20.709,-20.172,-19.639,-19.137,-18.690,-18.312,-18.008,-17.777,-17.609,-17.491,
--17.407,-17.343,-17.285,-17.222,-17.149,-17.059,-16.953,-16.831,-16.694,-16.546,-16.390,-16.228,-16.065,-15.903,-15.746,-15.596,
--15.455,-15.324,-15.203,-15.090,-14.982,-14.877,-14.772,-14.662,-14.547,-14.425,-14.297,-14.162,-14.023,-13.880,-13.735,-13.588,
--13.439,-13.288,-13.135,-12.982,-12.831,-12.686,-12.549,-12.426,-12.318,-12.226,-12.148,-12.077,-12.004,-11.920,-11.813,-11.671,
--11.488,-11.259,-10.984,-10.668,-10.319,-9.947,-9.562,-9.173,-8.785,-8.401,-8.021,-7.642,-7.260,-6.871,-6.473,-6.065,
--5.647,-5.224,-4.796,-4.366,-3.932,-3.494,-3.045,-2.583,-2.102,-1.602,-1.086,-.564,-.047,.446,.898,1.294,
-1.621,1.876,2.064,2.196,2.293,2.377,2.474,2.604,2.783,3.019,3.309,3.648,4.021,4.413,4.809,5.197,
-5.567,5.912,6.229,6.513,6.757,6.951,7.080,7.126,7.070,6.896,6.593,6.159,5.604,4.951,4.230,3.481,
-2.747,2.065,1.467,.973,.590,.310,.117,-.014,-.111,-.196,-.289,-.399,-.526,-.662,-.796,-.913,
--1.000,-1.051,-1.064,-1.044,-1.001,-.950,-.902,-.870,-.857,-.866,-.891,-.924,-.955,-.973,-.975,-.956,
--.922,-.879,-.836,-.803,-.790,-.800,-.834,-.887,-.949,-1.011,-1.061,-1.090,-1.094,-1.071,-1.027,-.968,
--.905,-.850,-.811,-.795,-.807,-.845,-.905,-.980,-1.064,-1.149,-1.229,-1.299,-1.358,-1.407,-1.445,-1.477,
--1.504,-1.526,-1.546,-1.562,-1.575,-1.583,-1.586,-1.587,-1.585,-1.584,-1.588,-1.598,-1.617,-1.646,-1.683,-1.726,
--1.772,-1.815,-1.852,-1.880,-1.895,-1.897,-1.886,-1.866,-1.838,-1.807,-1.775,-1.745,-1.717,-1.692,-1.668,-1.645,
--1.621,-1.594,-1.564,-1.531,-1.496,-1.460,-1.425,-1.391,-1.360,-1.330,-1.302,-1.275,-1.246,-1.215,-1.182,-1.146,
--1.110,-1.075,-1.043,-1.017,-.998,-.988,-.988,-.996,-1.012,-1.032,-1.055,-1.078,-1.097,-1.112,-1.120,-1.121,
--1.113,-1.098,-1.077,-1.049,-1.018,-.985,-.953,-.925,-.903,-.889,-.884,-.888,-.901,-.919,-.939,-.958,
--.970,-.974,-.966,-.947,-.916,-.878,-.836,-.792,-.751,-.713,-.679,-.648,-.615,-.576,-.529,-.469,
--.397,-.311,-.216,-.115,-.011,.091,.191,.291,.396,.511,.648,.814,1.018,1.265,1.556,1.890,
-2.259,2.655,3.069,3.489,3.910,4.324,4.731,5.130,5.521,5.906,6.282,6.644,6.983,7.289,7.548,7.751,
-7.892,7.969,7.991,7.975,7.943,7.923,7.940,8.019,8.172,8.403,8.701,9.045,9.403,9.741,10.025,10.229,
-10.339,10.355,10.293,10.184,10.067,9.987,9.983,10.086,10.313,10.664,11.121,11.651,12.214,12.764,13.257,13.660,
-13.951,14.122,14.181,14.146,14.044,13.904,13.752,13.609,13.489,13.394,13.321,13.260,13.200,13.131,13.045,12.940,
-12.822,12.697,12.579,12.479,12.407,12.369,12.369,12.403,12.465,13.741,13.812,13.896,13.989,14.089,14.194,14.306,
-14.428,14.566,14.725,14.912,15.130,15.383,15.671,15.992,16.341,16.710,17.092,17.474,17.846,18.195,18.509,18.774,
-18.978,19.111,19.164,19.132,19.015,18.816,18.547,18.224,17.867,17.501,17.151,16.843,16.599,16.434,16.356,16.363,
-16.447,16.591,16.773,16.969,17.156,17.315,17.434,17.509,17.542,17.543,17.527,17.507,17.498,17.507,17.539,17.589,
-17.648,17.705,17.748,17.767,17.758,17.726,17.680,17.635,17.611,17.624,17.686,17.800,17.959,18.148,18.340,18.507,
-18.622,18.663,18.620,18.496,18.307,18.085,17.864,17.685,17.579,17.570,17.665,17.857,18.121,18.427,18.738,19.023,
-19.262,19.453,19.608,19.758,19.945,20.210,20.591,21.110,21.765,22.531,23.355,24.169,24.894,25.450,25.773,25.821,
-25.584,25.084,24.372,23.525,22.634,21.787,21.065,20.526,20.202,20.094,20.176,20.403,20.717,21.057,21.371,21.620,
-21.784,21.861,21.866,21.825,21.769,21.728,21.725,21.775,21.880,22.036,22.230,22.446,22.672,22.896,23.114,23.325,
-23.532,23.742,23.957,24.179,24.404,24.624,24.827,25.002,25.137,25.226,25.268,25.269,25.241,25.200,25.165,25.150,
-25.169,25.226,25.320,25.442,25.578,25.710,25.823,25.902,25.937,25.927,25.873,25.783,25.664,25.525,25.373,25.206,
-25.023,24.815,24.572,24.284,23.945,23.557,23.126,22.672,22.217,21.794,21.433,21.165,21.012,20.988,21.094,21.319,
-21.638,22.022,22.434,22.839,23.206,23.511,23.743,23.899,23.988,24.024,24.025,24.011,23.995,23.986,23.984,23.984,
-23.972,23.935,23.857,23.727,23.539,23.295,23.004,22.681,22.346,22.019,21.719,21.460,21.251,21.092,20.978,20.899,
-20.839,20.785,20.725,20.649,20.555,20.444,20.323,20.199,20.084,19.986,19.911,19.862,19.836,19.828,19.832,19.840,
-19.845,19.844,19.836,19.825,19.816,19.818,19.837,19.880,19.950,20.045,20.159,20.281,20.400,20.502,20.575,20.610,
-20.604,20.557,20.476,20.372,20.256,20.142,20.044,19.969,19.924,19.910,19.924,19.960,20.013,20.075,20.140,20.202,
-20.257,20.302,20.332,20.340,20.318,20.254,20.133,19.942,19.666,19.296,18.828,18.267,17.625,16.924,16.193,15.465,
-14.774,14.150,13.618,13.192,12.876,12.665,12.545,12.495,12.494,12.521,12.562,12.608,12.658,12.716,12.793,12.899,
-13.044,13.232,13.463,13.729,14.014,14.302,14.573,14.808,14.993,15.121,15.190,15.207,15.184,15.134,15.073,15.012,
-14.962,14.925,14.901,14.883,14.862,14.830,14.777,14.699,14.591,14.456,14.298,14.123,13.939,13.751,13.564,13.380,
-13.198,13.016,12.830,12.636,12.431,12.214,11.984,11.744,11.497,11.249,11.003,10.764,10.533,10.310,10.094,9.880,
-9.665,9.442,9.207,8.956,8.685,8.395,8.086,7.763,7.430,7.094,6.764,6.447,6.151,5.883,5.649,5.452,
-5.292,5.167,5.072,4.999,4.938,4.878,4.809,4.719,4.600,4.445,4.251,4.017,3.746,3.442,3.111,2.762,
-2.400,2.033,1.665,1.299,.936,.576,.215,-.148,-.517,-.896,-1.287,-1.691,-2.109,-2.539,-2.977,-3.420,
--3.863,-4.302,-4.733,-5.153,-5.560,-5.956,-6.342,-6.722,-7.102,-7.487,-7.882,-8.293,-8.722,-9.172,-9.639,-10.121,
--10.612,-11.105,-11.594,-12.070,-12.531,-12.973,-13.396,-13.803,-14.200,-14.594,-14.992,-15.402,-15.827,-16.271,-16.732,-17.206,
--17.686,-18.163,-18.629,-19.075,-19.499,-19.897,-20.275,-20.640,-21.003,-21.377,-21.777,-22.213,-22.692,-23.216,-23.778,-24.368,
--24.967,-25.555,-26.108,-26.606,-27.031,-27.372,-27.627,-27.800,-27.903,-27.956,-27.979,-27.997,-28.030,-28.094,-28.201,-28.356,
--28.554,-28.788,-29.047,-29.317,-29.583,-29.837,-30.068,-30.276,-30.460,-30.625,-30.778,-30.925,-31.073,-31.226,-31.385,-31.548,
--31.712,-31.868,-32.012,-32.134,-32.232,-32.304,-32.351,-32.378,-32.395,-32.412,-32.440,-32.490,-32.571,-32.687,-32.841,-33.027,
--33.241,-33.472,-33.709,-33.942,-34.165,-34.372,-34.565,-34.752,-34.942,-35.149,-35.388,-35.671,-36.005,-36.391,-36.819,-37.273,
--37.727,-38.151,-38.511,-38.778,-38.926,-38.943,-38.828,-38.595,-38.273,-37.902,-37.526,-37.196,-36.954,-36.835,-36.857,-37.024,
--37.322,-37.722,-38.184,-38.663,-39.116,-39.508,-39.814,-40.025,-40.148,-40.202,-40.219,-40.231,-40.272,-40.369,-40.536,-40.777,
--41.084,-41.437,-41.811,-42.182,-42.527,-42.832,-43.096,-43.327,-43.545,-43.776,-44.047,-44.386,-44.813,-45.335,-45.949,-46.640,
--47.380,-48.134,-48.863,-49.527,-50.093,-50.535,-50.834,-50.988,-51.000,-50.888,-50.676,-50.394,-50.074,-49.752,-49.458,-49.221,
--49.061,-48.992,-49.021,-49.143,-49.348,-49.618,-49.931,-50.264,-50.592,-50.897,-51.163,-51.384,-51.561,-51.699,-51.811,-51.913,
--52.021,-52.149,-52.307,-52.502,-52.735,-53.004,-53.303,-53.625,-53.962,-54.309,-54.658,-55.005,-55.344,-55.669,-55.972,-56.243,
--56.474,-56.657,-56.784,-56.857,-56.879,-56.862,-56.824,-56.787,-56.770,-56.795,-56.875,-57.012,-57.202,-57.429,-57.669,-57.897,
--58.085,-58.212,-58.267,-58.249,-58.168,-58.043,-57.900,-57.763,-57.655,-57.588,-57.561,-57.565,-57.578,-57.572,-57.517,-57.387,
--57.164,-56.845,-56.439,-55.967,-55.464,-54.970,-54.524,-54.165,-53.921,-53.809,-53.834,-53.986,-54.247,-54.587,-54.972,-55.364,
--55.728,-56.029,-56.242,-56.347,-56.332,-56.200,-55.959,-55.634,-55.255,-54.863,-54.501,-54.212,-54.035,-53.998,-54.113,-54.375,
--54.762,-55.232,-55.735,-56.210,-56.600,-56.856,-56.946,-56.859,-56.606,-56.221,-55.753,-55.266,-54.822,-54.481,-54.285,-54.261,
--54.411,-54.718,-55.147,-55.649,-56.172,-56.664,-57.084,-57.402,-57.604,-57.692,-57.680,-57.596,-57.471,-57.339,-57.234,-57.180,
--57.198,-57.298,-57.482,-57.747,-58.081,-58.468,-58.893,-59.335,-59.776,-60.198,-60.586,-60.930,-61.221,-61.456,-61.636,-61.766,
--61.852,-61.904,-61.931,-61.941,-61.941,-61.934,-61.921,-61.903,-61.877,-61.843,-61.799,-61.748,-61.696,-61.650,-61.618,-61.610,
--61.634,-61.695,-61.796,-61.933,-62.100,-62.290,-62.493,-62.700,-62.904,-63.102,-63.295,-63.486,-63.683,-63.892,-64.118,-64.364,
--64.629,-64.905,-65.181,-65.443,-65.676,-65.866,-66.002,-66.080,-66.100,-66.067,-65.994,-65.895,-65.786,-65.680,-65.588,-65.519,
--65.473,-65.449,-65.441,-65.442,-65.444,-65.441,-65.429,-65.408,-65.379,-65.346,-65.312,-65.282,-65.257,-65.239,-65.224,-65.209,
--65.191,-65.165,-65.127,-65.076,-65.012,-64.940,-64.861,-64.783,-64.708,-64.641,-64.581,-64.530,-64.484,-64.438,-64.390,-64.334,
--64.269,-64.194,-64.110,-64.021,-63.930,-63.843,-63.762,-63.692,-63.631,-63.580,-63.536,-63.494,-63.450,-63.400,-63.343,-63.276,
--63.202,-63.122,-63.039,-62.957,-62.879,-62.806,-62.739,-62.677,-62.618,-62.559,-62.496,-62.426,-62.348,-62.262,-62.166,-62.063,
--61.954,-61.841,-61.727,-61.613,-61.500,-61.387,-61.275,-61.164,-61.054,-60.944,-60.837,-60.732,-60.632,-60.538,-60.450,-60.370,
--60.295,-60.225,-60.156,-60.085,-60.009,-59.926,-59.832,-59.727,-59.609,-59.478,-59.336,-59.182,-59.018,-58.844,-58.662,-58.472,
--58.275,-58.073,-57.866,-57.659,-57.452,-57.250,-57.056,-56.870,-56.696,-56.533,-56.381,-56.237,-56.098,-55.962,-55.826,-55.686,
--55.541,-55.391,-55.237,-55.079,-54.920,-54.760,-54.602,-54.443,-54.284,-54.122,-53.954,-53.778,-53.592,-53.396,-53.189,-52.977,
--52.762,-52.550,-52.347,-52.158,-51.987,-51.835,-51.700,-51.579,-51.464,-51.349,-51.226,-51.086,-50.923,-50.736,-50.524,-50.289,
--50.037,-49.775,-49.512,-49.254,-49.008,-48.777,-48.560,-48.357,-48.163,-47.972,-47.780,-47.581,-47.375,-47.160,-46.939,-46.716,
--46.497,-46.286,-46.088,-45.903,-45.729,-45.563,-45.397,-45.223,-45.036,-44.830,-44.604,-44.360,-44.107,-43.854,-43.614,-43.400,
--43.221,-43.083,-42.985,-42.921,-42.877,-42.838,-42.785,-42.700,-42.571,-42.389,-42.153,-41.871,-41.554,-41.220,-40.883,-40.560,
--40.258,-39.981,-39.724,-39.476,-39.224,-38.950,-38.643,-38.293,-37.901,-37.472,-37.022,-36.570,-36.138,-35.748,-35.414,-35.146,
--34.943,-34.796,-34.689,-34.603,-34.517,-34.415,-34.283,-34.119,-33.927,-33.716,-33.501,-33.300,-33.125,-32.988,-32.890,-32.830,
--32.797,-32.780,-32.763,-32.733,-32.683,-32.608,-32.511,-32.400,-32.283,-32.173,-32.078,-32.004,-31.950,-31.911,-31.878,-31.838,
--31.781,-31.694,-31.572,-31.415,-31.226,-31.015,-30.792,-30.570,-30.361,-30.172,-30.008,-29.867,-29.745,-29.634,-29.524,-29.407,
--29.275,-29.123,-28.948,-28.749,-28.529,-28.290,-28.034,-27.763,-27.478,-27.180,-26.868,-26.545,-26.211,-25.871,-25.528,-25.190,
--24.862,-24.551,-24.263,-24.001,-23.767,-23.560,-23.377,-23.216,-23.072,-22.940,-22.817,-22.699,-22.584,-22.469,-22.353,-22.234,
--22.110,-21.981,-21.845,-21.706,-21.566,-21.435,-21.322,-21.239,-21.199,-21.215,-21.296,-21.446,-21.660,-21.927,-22.228,-22.536,
--22.819,-23.046,-23.186,-23.214,-23.114,-22.881,-22.521,-22.053,-21.505,-20.908,-20.301,-19.717,-19.188,-18.735,-18.371,-18.098,
--17.910,-17.790,-17.719,-17.673,-17.629,-17.569,-17.477,-17.346,-17.176,-16.972,-16.745,-16.508,-16.276,-16.061,-15.874,-15.720,
--15.600,-15.508,-15.436,-15.373,-15.306,-15.226,-15.123,-14.996,-14.845,-14.676,-14.498,-14.323,-14.163,-14.025,-13.916,-13.837,
--13.784,-13.748,-13.718,-13.682,-13.627,-13.545,-13.429,-13.279,-13.099,-12.895,-12.676,-12.452,-12.232,-12.021,-11.822,-11.636,
--11.457,-11.281,-11.100,-10.908,-10.697,-10.465,-10.208,-9.925,-9.618,-9.287,-8.937,-8.571,-8.192,-7.806,-7.415,-7.025,
--6.637,-6.254,-5.873,-5.494,-5.111,-4.716,-4.303,-3.863,-3.391,-2.885,-2.349,-1.791,-1.226,-.671,-.146,.327,
-.734,1.064,1.315,1.493,1.612,1.691,1.755,1.827,1.927,2.070,2.264,2.510,2.804,3.134,3.490,3.858,
-4.230,4.596,4.949,5.284,5.592,5.864,6.086,6.239,6.303,6.257,6.082,5.769,5.314,4.727,4.031,3.259,
-2.450,1.649,.898,.233,-.323,-.756,-1.070,-1.277,-1.401,-1.469,-1.508,-1.541,-1.583,-1.642,-1.715,-1.796,
--1.871,-1.928,-1.957,-1.952,-1.913,-1.845,-1.758,-1.664,-1.573,-1.496,-1.435,-1.394,-1.367,-1.348,-1.330,-1.305,
--1.268,-1.218,-1.157,-1.089,-1.022,-.960,-.910,-.876,-.857,-.850,-.851,-.853,-.851,-.839,-.817,-.784,
--.743,-.702,-.665,-.640,-.632,-.644,-.677,-.729,-.798,-.878,-.965,-1.054,-1.141,-1.225,-1.302,-1.374,
--1.441,-1.502,-1.559,-1.611,-1.659,-1.702,-1.740,-1.775,-1.808,-1.840,-1.874,-1.913,-1.959,-2.013,-2.075,-2.146,
--2.221,-2.297,-2.370,-2.435,-2.489,-2.529,-2.553,-2.561,-2.555,-2.537,-2.510,-2.478,-2.444,-2.410,-2.377,-2.348,
--2.321,-2.298,-2.277,-2.259,-2.243,-2.229,-2.216,-2.203,-2.190,-2.175,-2.157,-2.134,-2.105,-2.069,-2.025,-1.974,
--1.919,-1.862,-1.806,-1.756,-1.713,-1.682,-1.665,-1.660,-1.669,-1.689,-1.716,-1.747,-1.777,-1.802,-1.818,-1.821,
--1.811,-1.786,-1.746,-1.693,-1.631,-1.561,-1.490,-1.421,-1.359,-1.307,-1.267,-1.241,-1.227,-1.224,-1.229,-1.236,
--1.244,-1.247,-1.244,-1.233,-1.216,-1.196,-1.173,-1.153,-1.137,-1.126,-1.118,-1.110,-1.096,-1.071,-1.027,-.960,
--.867,-.747,-.605,-.446,-.278,-.108,.057,.213,.361,.506,.656,.823,1.019,1.255,1.540,1.878,
-2.268,2.702,3.169,3.655,4.144,4.621,5.074,5.494,5.878,6.223,6.531,6.804,7.042,7.247,7.415,7.544,
-7.632,7.678,7.683,7.655,7.606,7.552,7.513,7.509,7.558,7.670,7.851,8.094,8.385,8.703,9.022,9.316,
-9.566,9.757,9.889,9.971,10.023,10.074,10.157,10.300,10.527,10.851,11.270,11.771,12.326,12.899,13.451,13.945,
-14.347,14.637,14.806,14.859,14.812,14.689,14.519,14.331,14.152,13.998,13.882,13.805,13.763,13.747,13.746,13.748,
-13.745,13.733,13.713,13.686,13.661,13.643,13.639,13.653,13.688,13.741,14.482,14.523,14.577,14.647,14.735,14.840,
-14.965,15.109,15.272,15.457,15.663,15.892,16.143,16.418,16.715,17.035,17.373,17.727,18.090,18.453,18.806,19.134,
-19.423,19.657,19.820,19.900,19.888,19.781,19.583,19.306,18.968,18.593,18.211,17.850,17.540,17.304,17.158,17.109,
-17.155,17.284,17.477,17.709,17.956,18.194,18.402,18.568,18.687,18.762,18.802,18.817,18.822,18.827,18.841,18.865,
-18.898,18.932,18.961,18.976,18.974,18.955,18.923,18.889,18.867,18.870,18.907,18.984,19.098,19.237,19.383,19.513,
-19.604,19.637,19.600,19.492,19.324,19.118,18.904,18.714,18.578,18.519,18.546,18.655,18.828,19.038,19.252,19.439,
-19.579,19.665,19.710,19.742,19.805,19.948,20.222,20.663,21.287,22.086,23.023,24.034,25.036,25.936,26.646,27.092,
-27.224,27.027,26.523,25.764,24.832,23.821,22.831,21.951,21.252,20.775,20.531,20.502,20.649,20.912,21.232,21.549,
-21.818,22.010,22.116,22.145,22.118,22.067,22.023,22.013,22.058,22.165,22.333,22.551,22.803,23.071,23.335,23.584,
-23.807,24.002,24.169,24.311,24.431,24.531,24.612,24.672,24.710,24.723,24.711,24.679,24.632,24.581,24.539,24.520,
-24.535,24.592,24.693,24.835,25.007,25.195,25.381,25.548,25.680,25.764,25.795,25.772,25.697,25.580,25.428,25.248,
-25.047,24.827,24.585,24.320,24.026,23.702,23.348,22.969,22.578,22.192,21.831,21.521,21.282,21.133,21.086,21.145,
-21.305,21.551,21.863,22.216,22.583,22.941,23.267,23.547,23.773,23.941,24.054,24.117,24.137,24.117,24.063,23.974,
-23.850,23.689,23.488,23.249,22.975,22.672,22.352,22.028,21.715,21.426,21.172,20.958,20.786,20.652,20.545,20.456,
-20.370,20.277,20.171,20.049,19.914,19.772,19.635,19.513,19.417,19.353,19.322,19.323,19.347,19.382,19.418,19.442,
-19.448,19.433,19.403,19.366,19.337,19.330,19.361,19.439,19.569,19.749,19.966,20.205,20.444,20.660,20.833,20.946,
-20.992,20.968,20.884,20.752,20.589,20.416,20.250,20.104,19.986,19.899,19.842,19.807,19.790,19.783,19.785,19.795,
-19.816,19.853,19.907,19.981,20.067,20.152,20.218,20.239,20.184,20.027,19.744,19.323,18.760,18.071,17.283,16.434,
-15.572,14.746,14.002,13.377,12.896,12.567,12.387,12.334,12.381,12.495,12.643,12.799,12.945,13.072,13.182,13.285,
-13.395,13.527,13.691,13.894,14.133,14.398,14.672,14.935,15.167,15.352,15.477,15.539,15.543,15.497,15.416,15.317,
-15.214,15.119,15.038,14.970,14.910,14.849,14.778,14.685,14.564,14.413,14.234,14.031,13.815,13.594,13.379,13.176,
-12.988,12.814,12.649,12.485,12.315,12.130,11.923,11.692,11.438,11.166,10.882,10.595,10.315,10.047,9.797,9.566,
-9.349,9.143,8.937,8.723,8.492,8.239,7.958,7.653,7.326,6.986,6.644,6.313,6.003,5.726,5.490,5.298,
-5.150,5.043,4.968,4.916,4.874,4.831,4.774,4.695,4.585,4.441,4.260,4.043,3.793,3.514,3.213,2.893,
-2.561,2.221,1.878,1.533,1.188,.845,.501,.156,-.193,-.548,-.915,-1.295,-1.690,-2.104,-2.535,-2.982,
--3.441,-3.907,-4.374,-4.835,-5.285,-5.717,-6.131,-6.527,-6.908,-7.279,-7.651,-8.030,-8.427,-8.848,-9.296,-9.774,
--10.276,-10.797,-11.327,-11.855,-12.372,-12.869,-13.341,-13.787,-14.209,-14.615,-15.013,-15.414,-15.826,-16.257,-16.709,-17.182,
--17.672,-18.169,-18.666,-19.151,-19.618,-20.061,-20.483,-20.887,-21.283,-21.684,-22.104,-22.555,-23.048,-23.585,-24.165,-24.778,
--25.409,-26.035,-26.635,-27.184,-27.661,-28.052,-28.348,-28.549,-28.664,-28.707,-28.701,-28.669,-28.636,-28.624,-28.651,-28.729,
--28.863,-29.050,-29.283,-29.549,-29.834,-30.123,-30.401,-30.657,-30.885,-31.082,-31.248,-31.389,-31.511,-31.621,-31.726,-31.833,
--31.943,-32.058,-32.174,-32.288,-32.394,-32.488,-32.566,-32.627,-32.671,-32.705,-32.734,-32.768,-32.817,-32.890,-32.993,-33.131,
--33.303,-33.506,-33.731,-33.969,-34.211,-34.448,-34.675,-34.892,-35.105,-35.322,-35.557,-35.825,-36.139,-36.506,-36.927,-37.395,
--37.891,-38.389,-38.854,-39.250,-39.543,-39.706,-39.720,-39.586,-39.315,-38.939,-38.499,-38.046,-37.633,-37.309,-37.114,-37.071,
--37.187,-37.450,-37.831,-38.291,-38.783,-39.262,-39.688,-40.034,-40.287,-40.451,-40.543,-40.590,-40.624,-40.679,-40.781,-40.945,
--41.177,-41.469,-41.804,-42.161,-42.514,-42.843,-43.137,-43.393,-43.619,-43.836,-44.067,-44.342,-44.685,-45.115,-45.640,-46.254,
--46.939,-47.668,-48.402,-49.100,-49.723,-50.235,-50.611,-50.837,-50.910,-50.841,-50.652,-50.373,-50.039,-49.686,-49.351,-49.063,
--48.849,-48.725,-48.699,-48.772,-48.936,-49.177,-49.476,-49.812,-50.164,-50.511,-50.838,-51.134,-51.393,-51.616,-51.807,-51.976,
--52.134,-52.293,-52.464,-52.655,-52.873,-53.120,-53.397,-53.699,-54.022,-54.361,-54.708,-55.056,-55.398,-55.724,-56.028,-56.300,
--56.533,-56.720,-56.857,-56.945,-56.987,-56.992,-56.975,-56.951,-56.939,-56.955,-57.013,-57.120,-57.276,-57.474,-57.697,-57.927,
--58.142,-58.321,-58.448,-58.515,-58.521,-58.475,-58.390,-58.287,-58.184,-58.097,-58.035,-58.001,-57.986,-57.975,-57.949,-57.885,
--57.763,-57.568,-57.295,-56.947,-56.540,-56.096,-55.643,-55.214,-54.840,-54.548,-54.356,-54.275,-54.305,-54.435,-54.648,-54.914,
--55.203,-55.480,-55.711,-55.866,-55.921,-55.862,-55.687,-55.408,-55.047,-54.641,-54.234,-53.875,-53.613,-53.489,-53.533,-53.756,
--54.152,-54.694,-55.335,-56.018,-56.677,-57.248,-57.677,-57.927,-57.982,-57.848,-57.555,-57.152,-56.700,-56.261,-55.894,-55.647,
--55.549,-55.607,-55.809,-56.125,-56.511,-56.919,-57.299,-57.611,-57.825,-57.927,-57.918,-57.815,-57.645,-57.440,-57.238,-57.072,
--56.971,-56.956,-57.038,-57.219,-57.493,-57.846,-58.260,-58.715,-59.189,-59.661,-60.112,-60.527,-60.895,-61.208,-61.463,-61.660,
--61.803,-61.899,-61.954,-61.976,-61.974,-61.953,-61.918,-61.873,-61.820,-61.760,-61.697,-61.632,-61.571,-61.519,-61.484,-61.472,
--61.491,-61.546,-61.640,-61.771,-61.936,-62.127,-62.334,-62.549,-62.762,-62.968,-63.163,-63.348,-63.528,-63.708,-63.897,-64.099,
--64.319,-64.556,-64.805,-65.055,-65.294,-65.509,-65.685,-65.812,-65.884,-65.900,-65.867,-65.794,-65.697,-65.591,-65.492,-65.411,
--65.358,-65.336,-65.342,-65.371,-65.414,-65.459,-65.498,-65.523,-65.530,-65.518,-65.491,-65.453,-65.410,-65.368,-65.333,-65.306,
--65.288,-65.277,-65.269,-65.259,-65.244,-65.219,-65.183,-65.135,-65.077,-65.011,-64.941,-64.868,-64.796,-64.726,-64.658,-64.592,
--64.526,-64.460,-64.393,-64.326,-64.258,-64.191,-64.128,-64.070,-64.017,-63.971,-63.930,-63.892,-63.854,-63.812,-63.765,-63.708,
--63.641,-63.565,-63.480,-63.389,-63.295,-63.204,-63.116,-63.036,-62.963,-62.898,-62.837,-62.779,-62.719,-62.653,-62.579,-62.494,
--62.396,-62.286,-62.165,-62.036,-61.901,-61.764,-61.630,-61.502,-61.382,-61.272,-61.173,-61.086,-61.010,-60.944,-60.884,-60.829,
--60.776,-60.721,-60.662,-60.595,-60.520,-60.432,-60.330,-60.214,-60.082,-59.933,-59.768,-59.586,-59.388,-59.177,-58.954,-58.722,
--58.486,-58.250,-58.019,-57.797,-57.589,-57.397,-57.225,-57.072,-56.936,-56.814,-56.700,-56.589,-56.475,-56.355,-56.223,-56.080,
--55.925,-55.762,-55.595,-55.429,-55.268,-55.114,-54.971,-54.836,-54.706,-54.576,-54.439,-54.290,-54.123,-53.936,-53.729,-53.506,
--53.271,-53.034,-52.804,-52.588,-52.393,-52.221,-52.073,-51.942,-51.822,-51.702,-51.571,-51.420,-51.242,-51.033,-50.795,-50.535,
--50.260,-49.983,-49.716,-49.469,-49.250,-49.061,-48.902,-48.764,-48.639,-48.515,-48.379,-48.222,-48.036,-47.822,-47.580,-47.318,
--47.046,-46.776,-46.515,-46.272,-46.049,-45.842,-45.644,-45.446,-45.235,-45.000,-44.735,-44.438,-44.111,-43.767,-43.419,-43.088,
--42.791,-42.544,-42.358,-42.234,-42.168,-42.145,-42.146,-42.147,-42.124,-42.057,-41.932,-41.742,-41.488,-41.179,-40.832,-40.463,
--40.090,-39.727,-39.382,-39.057,-38.748,-38.447,-38.141,-37.821,-37.479,-37.114,-36.730,-36.340,-35.958,-35.602,-35.291,-35.038,
--34.849,-34.725,-34.657,-34.631,-34.627,-34.626,-34.608,-34.559,-34.472,-34.346,-34.187,-34.007,-33.819,-33.636,-33.471,-33.331,
--33.217,-33.129,-33.059,-33.001,-32.946,-32.888,-32.826,-32.758,-32.689,-32.624,-32.569,-32.527,-32.499,-32.483,-32.472,-32.458,
--32.429,-32.375,-32.285,-32.156,-31.986,-31.777,-31.538,-31.278,-31.007,-30.738,-30.478,-30.234,-30.009,-29.803,-29.614,-29.437,
--29.269,-29.104,-28.939,-28.769,-28.591,-28.402,-28.198,-27.975,-27.730,-27.461,-27.165,-26.843,-26.498,-26.136,-25.767,-25.402,
--25.052,-24.729,-24.443,-24.198,-23.996,-23.833,-23.703,-23.595,-23.498,-23.402,-23.298,-23.180,-23.048,-22.905,-22.754,-22.602,
--22.456,-22.319,-22.195,-22.083,-21.981,-21.887,-21.798,-21.716,-21.644,-21.588,-21.559,-21.568,-21.625,-21.739,-21.912,-22.138,
--22.402,-22.683,-22.951,-23.173,-23.318,-23.355,-23.265,-23.038,-22.677,-22.198,-21.630,-21.008,-20.373,-19.765,-19.218,-18.758,
--18.399,-18.140,-17.972,-17.873,-17.815,-17.770,-17.711,-17.616,-17.473,-17.280,-17.043,-16.778,-16.505,-16.245,-16.018,-15.838,
--15.711,-15.635,-15.602,-15.593,-15.591,-15.574,-15.526,-15.434,-15.297,-15.117,-14.907,-14.683,-14.466,-14.273,-14.122,-14.019,
--13.968,-13.960,-13.982,-14.016,-14.040,-14.034,-13.981,-13.872,-13.702,-13.475,-13.202,-12.898,-12.580,-12.267,-11.973,-11.708,
--11.480,-11.286,-11.123,-10.981,-10.849,-10.713,-10.562,-10.385,-10.176,-9.931,-9.650,-9.336,-8.996,-8.636,-8.264,-7.890,
--7.519,-7.156,-6.801,-6.453,-6.105,-5.749,-5.377,-4.977,-4.544,-4.072,-3.562,-3.020,-2.460,-1.896,-1.350,-.841,
--.387,-.003,.305,.540,.709,.829,.920,1.006,1.107,1.240,1.415,1.638,1.905,2.208,2.535,2.873,
-3.211,3.539,3.852,4.145,4.417,4.665,4.884,5.065,5.193,5.251,5.221,5.083,4.823,4.435,3.922,3.297,
-2.586,1.823,1.046,.295,-.394,-.993,-1.484,-1.863,-2.135,-2.317,-2.430,-2.500,-2.549,-2.596,-2.652,-2.718,
--2.792,-2.865,-2.923,-2.955,-2.953,-2.912,-2.833,-2.723,-2.592,-2.452,-2.314,-2.187,-2.079,-1.991,-1.920,-1.862,
--1.809,-1.754,-1.691,-1.617,-1.531,-1.435,-1.332,-1.229,-1.130,-1.041,-.964,-.901,-.851,-.812,-.781,-.755,
--.732,-.711,-.692,-.676,-.665,-.661,-.667,-.684,-.715,-.758,-.813,-.879,-.953,-1.033,-1.118,-1.204,
--1.291,-1.376,-1.459,-1.540,-1.617,-1.691,-1.764,-1.834,-1.905,-1.977,-2.051,-2.130,-2.214,-2.303,-2.397,-2.495,
--2.594,-2.693,-2.788,-2.876,-2.954,-3.020,-3.074,-3.114,-3.140,-3.155,-3.159,-3.155,-3.144,-3.130,-3.113,-3.095,
--3.077,-3.061,-3.048,-3.037,-3.030,-3.025,-3.024,-3.024,-3.024,-3.023,-3.016,-3.003,-2.980,-2.947,-2.902,-2.845,
--2.779,-2.706,-2.629,-2.553,-2.482,-2.419,-2.368,-2.330,-2.306,-2.294,-2.292,-2.298,-2.306,-2.314,-2.316,-2.309,
--2.291,-2.258,-2.211,-2.150,-2.077,-1.994,-1.904,-1.813,-1.725,-1.645,-1.575,-1.520,-1.480,-1.456,-1.444,-1.444,
--1.450,-1.460,-1.468,-1.472,-1.472,-1.465,-1.455,-1.441,-1.425,-1.409,-1.393,-1.373,-1.346,-1.306,-1.249,-1.169,
--1.063,-.928,-.768,-.587,-.392,-.193,.002,.187,.358,.516,.668,.823,.996,1.203,1.457,1.769,
-2.144,2.582,3.074,3.606,4.158,4.709,5.238,5.725,6.154,6.519,6.814,7.044,7.215,7.337,7.420,7.475,
-7.508,7.527,7.535,7.537,7.534,7.531,7.532,7.545,7.575,7.630,7.716,7.834,7.983,8.160,8.356,8.561,
-8.766,8.963,9.148,9.324,9.496,9.679,9.887,10.138,10.448,10.826,11.275,11.788,12.350,12.938,13.521,14.068,
-14.547,14.934,15.212,15.371,15.416,15.360,15.224,15.033,14.816,14.599,14.404,14.247,14.137,14.074,14.056,14.073,
-14.115,14.170,14.228,14.282,14.328,14.363,14.390,14.411,14.430,14.452,14.482,14.082,14.146,14.225,14.325,14.448,
-14.596,14.769,14.966,15.183,15.417,15.663,15.919,16.182,16.451,16.726,17.008,17.298,17.596,17.902,18.211,18.516,
-18.808,19.074,19.299,19.469,19.572,19.598,19.542,19.408,19.205,18.948,18.660,18.364,18.088,17.854,17.680,17.580,
-17.556,17.606,17.717,17.872,18.052,18.238,18.413,18.564,18.685,18.777,18.844,18.897,18.943,18.993,19.052,19.122,
-19.200,19.277,19.347,19.399,19.427,19.429,19.408,19.372,19.334,19.307,19.306,19.340,19.412,19.520,19.651,19.789,
-19.913,20.004,20.046,20.031,19.960,19.844,19.704,19.564,19.449,19.380,19.371,19.423,19.526,19.658,19.793,19.900,
-19.956,19.947,19.876,19.760,19.635,19.549,19.553,19.695,20.012,20.520,21.212,22.051,22.979,23.920,24.788,25.499,
-25.986,26.201,26.127,25.778,25.198,24.455,23.630,22.809,22.069,21.471,21.052,20.822,20.769,20.859,21.043,21.270,
-21.491,21.670,21.784,21.826,21.807,21.750,21.681,21.631,21.623,21.676,21.794,21.972,22.198,22.451,22.710,22.955,
-23.170,23.345,23.477,23.567,23.621,23.648,23.655,23.648,23.632,23.608,23.577,23.541,23.500,23.458,23.423,23.401,
-23.403,23.437,23.509,23.622,23.774,23.958,24.162,24.370,24.566,24.733,24.860,24.935,24.955,24.921,24.836,24.708,
-24.547,24.359,24.151,23.928,23.691,23.442,23.178,22.902,22.616,22.325,22.038,21.767,21.526,21.328,21.185,21.108,
-21.100,21.162,21.288,21.468,21.688,21.932,22.184,22.431,22.659,22.859,23.024,23.151,23.238,23.282,23.283,23.242,
-23.156,23.027,22.856,22.647,22.404,22.137,21.855,21.570,21.295,21.040,20.812,20.616,20.452,20.314,20.195,20.086,
-19.977,19.861,19.733,19.595,19.451,19.309,19.181,19.077,19.005,18.971,18.974,19.006,19.058,19.114,19.160,19.183,
-19.177,19.138,19.075,19.001,18.934,18.896,18.907,18.983,19.132,19.352,19.632,19.952,20.285,20.600,20.869,21.069,
-21.185,21.211,21.154,21.028,20.855,20.660,20.465,20.292,20.153,20.053,19.990,19.956,19.941,19.933,19.925,19.913,
-19.899,19.889,19.890,19.912,19.958,20.024,20.098,20.159,20.180,20.128,19.970,19.681,19.245,18.659,17.938,17.112,
-16.223,15.325,14.471,13.711,13.087,12.625,12.335,12.210,12.228,12.357,12.559,12.797,13.040,13.266,13.462,13.629,
-13.775,13.914,14.059,14.223,14.410,14.620,14.843,15.062,15.260,15.417,15.518,15.554,15.524,15.435,15.302,15.142,
-14.974,14.816,14.679,14.569,14.485,14.417,14.353,14.280,14.184,14.055,13.889,13.689,13.461,13.219,12.975,12.743,
-12.532,12.349,12.192,12.057,11.932,11.805,11.664,11.498,11.301,11.072,10.814,10.536,10.248,9.963,9.692,9.441,
-9.213,9.006,8.813,8.623,8.425,8.208,7.963,7.686,7.377,7.043,6.695,6.347,6.016,5.715,5.458,5.251,
-5.097,4.993,4.928,4.889,4.862,4.829,4.776,4.690,4.563,4.391,4.175,3.918,3.629,3.315,2.985,2.650,
-2.315,1.988,1.670,1.364,1.069,.783,.502,.222,-.063,-.357,-.668,-1.000,-1.359,-1.748,-2.167,-2.617,
--3.093,-3.589,-4.097,-4.607,-5.107,-5.588,-6.042,-6.464,-6.855,-7.217,-7.559,-7.890,-8.224,-8.572,-8.945,-9.350,
--9.791,-10.265,-10.766,-11.284,-11.808,-12.327,-12.830,-13.310,-13.766,-14.198,-14.612,-15.015,-15.417,-15.827,-16.251,-16.692,
--17.150,-17.619,-18.095,-18.569,-19.033,-19.482,-19.916,-20.336,-20.750,-21.167,-21.602,-22.064,-22.566,-23.112,-23.703,-24.332,
--24.986,-25.647,-26.293,-26.900,-27.445,-27.910,-28.281,-28.552,-28.726,-28.812,-28.826,-28.790,-28.726,-28.660,-28.612,-28.602,
--28.641,-28.736,-28.887,-29.089,-29.332,-29.602,-29.885,-30.167,-30.435,-30.680,-30.897,-31.083,-31.242,-31.378,-31.499,-31.612,
--31.726,-31.845,-31.974,-32.111,-32.254,-32.398,-32.537,-32.664,-32.775,-32.868,-32.943,-33.005,-33.062,-33.124,-33.201,-33.304,
--33.440,-33.613,-33.823,-34.062,-34.324,-34.596,-34.866,-35.127,-35.372,-35.603,-35.824,-36.046,-36.286,-36.556,-36.871,-37.235,
--37.649,-38.099,-38.566,-39.020,-39.427,-39.751,-39.962,-40.037,-39.969,-39.764,-39.444,-39.046,-38.617,-38.208,-37.870,-37.646,
--37.567,-37.646,-37.880,-38.249,-38.717,-39.242,-39.779,-40.285,-40.726,-41.081,-41.343,-41.517,-41.623,-41.685,-41.731,-41.786,
--41.871,-41.997,-42.166,-42.374,-42.609,-42.857,-43.105,-43.347,-43.581,-43.812,-44.054,-44.324,-44.639,-45.015,-45.462,-45.981,
--46.564,-47.193,-47.842,-48.477,-49.066,-49.577,-49.984,-50.269,-50.425,-50.455,-50.374,-50.203,-49.970,-49.706,-49.441,-49.203,
--49.014,-48.892,-48.845,-48.876,-48.982,-49.155,-49.381,-49.649,-49.942,-50.247,-50.553,-50.851,-51.134,-51.400,-51.650,-51.886,
--52.113,-52.336,-52.561,-52.793,-53.036,-53.293,-53.566,-53.852,-54.151,-54.460,-54.773,-55.088,-55.397,-55.696,-55.978,-56.236,
--56.465,-56.660,-56.816,-56.934,-57.015,-57.062,-57.086,-57.094,-57.100,-57.116,-57.150,-57.213,-57.306,-57.429,-57.577,-57.739,
--57.904,-58.058,-58.190,-58.292,-58.358,-58.389,-58.390,-58.369,-58.336,-58.301,-58.270,-58.247,-58.230,-58.212,-58.181,-58.124,
--58.027,-57.878,-57.670,-57.398,-57.068,-56.690,-56.280,-55.858,-55.447,-55.069,-54.744,-54.486,-54.305,-54.203,-54.176,-54.211,
--54.290,-54.391,-54.487,-54.554,-54.569,-54.514,-54.380,-54.168,-53.890,-53.570,-53.239,-52.940,-52.714,-52.603,-52.640,-52.848,
--53.230,-53.776,-54.454,-55.217,-56.010,-56.769,-57.435,-57.958,-58.303,-58.454,-58.419,-58.223,-57.910,-57.533,-57.149,-56.811,
--56.564,-56.435,-56.435,-56.555,-56.773,-57.056,-57.363,-57.654,-57.895,-58.063,-58.145,-58.142,-58.067,-57.942,-57.792,-57.648,
--57.537,-57.480,-57.492,-57.581,-57.746,-57.980,-58.273,-58.607,-58.967,-59.337,-59.701,-60.046,-60.362,-60.643,-60.883,-61.081,
--61.238,-61.356,-61.437,-61.487,-61.511,-61.512,-61.497,-61.470,-61.434,-61.393,-61.352,-61.314,-61.284,-61.267,-61.268,-61.293,
--61.345,-61.429,-61.546,-61.696,-61.875,-62.077,-62.296,-62.522,-62.747,-62.965,-63.170,-63.360,-63.537,-63.704,-63.868,-64.034,
--64.210,-64.398,-64.598,-64.808,-65.020,-65.226,-65.414,-65.574,-65.697,-65.778,-65.815,-65.813,-65.779,-65.723,-65.658,-65.596,
--65.546,-65.515,-65.505,-65.514,-65.538,-65.570,-65.599,-65.620,-65.627,-65.616,-65.589,-65.549,-65.501,-65.453,-65.409,-65.375,
--65.354,-65.344,-65.345,-65.350,-65.355,-65.352,-65.339,-65.311,-65.268,-65.211,-65.142,-65.068,-64.992,-64.918,-64.850,-64.788,
--64.734,-64.686,-64.641,-64.598,-64.553,-64.505,-64.454,-64.400,-64.345,-64.289,-64.235,-64.183,-64.135,-64.088,-64.041,-63.991,
--63.937,-63.876,-63.807,-63.729,-63.643,-63.552,-63.458,-63.365,-63.276,-63.192,-63.116,-63.047,-62.983,-62.923,-62.862,-62.796,
--62.723,-62.641,-62.547,-62.443,-62.329,-62.209,-62.087,-61.965,-61.848,-61.738,-61.638,-61.546,-61.464,-61.388,-61.316,-61.246,
--61.174,-61.099,-61.017,-60.927,-60.828,-60.721,-60.604,-60.476,-60.338,-60.187,-60.024,-59.846,-59.654,-59.447,-59.227,-58.995,
--58.757,-58.518,-58.284,-58.061,-57.854,-57.669,-57.507,-57.368,-57.250,-57.147,-57.051,-56.955,-56.852,-56.734,-56.597,-56.441,
--56.268,-56.081,-55.889,-55.699,-55.519,-55.354,-55.209,-55.083,-54.972,-54.870,-54.768,-54.656,-54.526,-54.372,-54.189,-53.980,
--53.749,-53.505,-53.257,-53.016,-52.792,-52.590,-52.413,-52.259,-52.122,-51.993,-51.860,-51.712,-51.543,-51.346,-51.121,-50.873,
--50.611,-50.346,-50.091,-49.856,-49.651,-49.479,-49.336,-49.217,-49.109,-48.997,-48.866,-48.702,-48.498,-48.248,-47.957,-47.631,
--47.285,-46.933,-46.592,-46.273,-45.985,-45.729,-45.500,-45.288,-45.077,-44.851,-44.596,-44.300,-43.961,-43.583,-43.175,-42.758,
--42.352,-41.980,-41.663,-41.415,-41.243,-41.144,-41.106,-41.110,-41.131,-41.144,-41.124,-41.054,-40.920,-40.721,-40.461,-40.153,
--39.813,-39.458,-39.106,-38.768,-38.452,-38.160,-37.887,-37.625,-37.368,-37.106,-36.835,-36.554,-36.269,-35.987,-35.720,-35.480,
--35.277,-35.118,-35.007,-34.938,-34.904,-34.892,-34.889,-34.880,-34.853,-34.799,-34.715,-34.602,-34.465,-34.311,-34.151,-33.992,
--33.843,-33.709,-33.591,-33.491,-33.406,-33.334,-33.271,-33.215,-33.164,-33.117,-33.075,-33.035,-32.998,-32.960,-32.920,-32.872,
--32.812,-32.736,-32.641,-32.524,-32.385,-32.227,-32.050,-31.859,-31.658,-31.449,-31.235,-31.015,-30.790,-30.559,-30.322,-30.079,
--29.831,-29.580,-29.330,-29.083,-28.843,-28.610,-28.383,-28.157,-27.928,-27.688,-27.431,-27.151,-26.847,-26.520,-26.178,-25.831,
--25.492,-25.177,-24.898,-24.666,-24.483,-24.350,-24.256,-24.190,-24.134,-24.071,-23.988,-23.873,-23.724,-23.543,-23.340,-23.129,
--22.923,-22.739,-22.587,-22.472,-22.392,-22.340,-22.304,-22.271,-22.228,-22.166,-22.083,-21.984,-21.879,-21.784,-21.717,-21.695,
--21.727,-21.815,-21.951,-22.118,-22.287,-22.426,-22.502,-22.485,-22.355,-22.102,-21.730,-21.259,-20.717,-20.144,-19.581,-19.065,
--18.629,-18.293,-18.062,-17.930,-17.876,-17.873,-17.889,-17.893,-17.859,-17.771,-17.624,-17.424,-17.187,-16.934,-16.689,-16.476,
--16.310,-16.199,-16.143,-16.131,-16.145,-16.164,-16.165,-16.130,-16.046,-15.909,-15.725,-15.505,-15.269,-15.038,-14.831,-14.665,
--14.547,-14.480,-14.455,-14.457,-14.467,-14.464,-14.428,-14.343,-14.201,-14.001,-13.747,-13.452,-13.132,-12.807,-12.492,-12.202,
--11.947,-11.730,-11.550,-11.399,-11.266,-11.140,-11.007,-10.857,-10.681,-10.474,-10.234,-9.966,-9.672,-9.361,-9.040,-8.716,
--8.395,-8.080,-7.772,-7.467,-7.161,-6.846,-6.513,-6.153,-5.759,-5.328,-4.859,-4.358,-3.834,-3.300,-2.774,-2.273,
--1.813,-1.407,-1.062,-.779,-.551,-.366,-.208,-.057,.105,.293,.516,.779,1.076,1.400,1.735,2.068,
-2.384,2.672,2.925,3.143,3.328,3.484,3.617,3.729,3.819,3.879,3.897,3.855,3.737,3.524,3.205,2.776,
-2.243,1.621,.936,.220,-.490,-1.160,-1.760,-2.267,-2.672,-2.972,-3.179,-3.310,-3.387,-3.434,-3.471,-3.512,
--3.566,-3.633,-3.707,-3.776,-3.829,-3.853,-3.840,-3.785,-3.690,-3.561,-3.408,-3.243,-3.076,-2.920,-2.779,-2.656,
--2.551,-2.459,-2.373,-2.287,-2.195,-2.094,-1.981,-1.859,-1.732,-1.605,-1.484,-1.375,-1.282,-1.207,-1.149,-1.107,
--1.076,-1.053,-1.033,-1.014,-.992,-.969,-.946,-.926,-.911,-.907,-.915,-.938,-.977,-1.030,-1.097,-1.173,
--1.256,-1.341,-1.427,-1.510,-1.591,-1.669,-1.747,-1.825,-1.908,-1.998,-2.095,-2.202,-2.319,-2.442,-2.572,-2.703,
--2.832,-2.957,-3.073,-3.179,-3.274,-3.357,-3.430,-3.494,-3.550,-3.601,-3.647,-3.690,-3.730,-3.767,-3.800,-3.827,
--3.849,-3.865,-3.874,-3.879,-3.878,-3.874,-3.867,-3.858,-3.846,-3.831,-3.811,-3.783,-3.746,-3.698,-3.639,-3.567,
--3.484,-3.391,-3.293,-3.193,-3.094,-3.000,-2.914,-2.838,-2.774,-2.720,-2.675,-2.639,-2.608,-2.580,-2.552,-2.522,
--2.489,-2.449,-2.402,-2.348,-2.286,-2.217,-2.142,-2.062,-1.981,-1.902,-1.828,-1.762,-1.710,-1.671,-1.649,-1.642,
--1.649,-1.666,-1.689,-1.714,-1.736,-1.751,-1.754,-1.745,-1.722,-1.684,-1.632,-1.566,-1.486,-1.391,-1.279,-1.149,
--1.000,-.832,-.646,-.446,-.236,-.023,.186,.385,.569,.737,.893,1.042,1.197,1.371,1.579,1.835,
-2.150,2.528,2.968,3.463,3.997,4.550,5.097,5.615,6.082,6.481,6.801,7.040,7.200,7.294,7.336,7.345,
-7.336,7.327,7.327,7.346,7.384,7.440,7.510,7.587,7.665,7.740,7.806,7.865,7.916,7.964,8.012,8.066,
-8.133,8.218,8.328,8.469,8.647,8.868,9.140,9.466,9.850,10.291,10.787,11.330,11.906,12.499,13.089,13.652,
-14.166,14.608,14.961,15.213,15.359,15.400,15.346,15.212,15.016,14.782,14.532,14.288,14.066,13.879,13.737,13.641,
-13.590,13.579,13.599,13.642,13.698,13.760,13.821,13.878,13.931,13.980,14.028,14.082,13.100,13.261,13.437,13.631,
-13.842,14.071,14.316,14.572,14.836,15.101,15.363,15.618,15.862,16.096,16.321,16.540,16.758,16.977,17.200,17.428,
-17.657,17.882,18.094,18.281,18.434,18.540,18.593,18.590,18.532,18.426,18.285,18.125,17.964,17.819,17.706,17.635,
-17.613,17.637,17.703,17.798,17.910,18.025,18.133,18.225,18.298,18.355,18.403,18.450,18.505,18.578,18.672,18.787,
-18.917,19.054,19.183,19.291,19.368,19.407,19.406,19.371,19.313,19.249,19.197,19.173,19.190,19.253,19.361,19.505,
-19.667,19.830,19.972,20.077,20.134,20.140,20.102,20.032,19.948,19.870,19.812,19.786,19.793,19.826,19.868,19.900,
-19.899,19.849,19.741,19.577,19.376,19.164,18.980,18.866,18.860,18.992,19.276,19.708,20.262,20.898,21.559,22.184,
-22.714,23.099,23.306,23.323,23.159,22.846,22.429,21.964,21.506,21.104,20.795,20.597,20.510,20.519,20.594,20.701,
-20.803,20.873,20.889,20.847,20.753,20.626,20.491,20.374,20.302,20.292,20.351,20.479,20.663,20.882,21.114,21.335,
-21.524,21.667,21.757,21.796,21.790,21.752,21.695,21.631,21.572,21.523,21.488,21.466,21.455,21.453,21.459,21.475,
-21.503,21.550,21.623,21.727,21.866,22.041,22.249,22.479,22.721,22.959,23.177,23.361,23.500,23.584,23.613,23.587,
-23.512,23.397,23.253,23.088,22.912,22.730,22.548,22.366,22.187,22.011,21.838,21.669,21.509,21.360,21.229,21.121,
-21.039,20.986,20.964,20.972,21.004,21.058,21.125,21.201,21.279,21.354,21.423,21.483,21.532,21.569,21.593,21.602,
-21.594,21.568,21.522,21.454,21.364,21.253,21.125,20.983,20.833,20.680,20.529,20.383,20.243,20.109,19.979,19.851,
-19.721,19.587,19.450,19.313,19.181,19.061,18.962,18.891,18.852,18.847,18.872,18.919,18.977,19.031,19.067,19.074,
-19.045,18.982,18.891,18.789,18.698,18.640,18.639,18.713,18.875,19.123,19.449,19.831,20.240,20.642,21.003,21.292,
-21.488,21.580,21.569,21.467,21.297,21.086,20.865,20.659,20.490,20.369,20.299,20.273,20.279,20.300,20.321,20.331,
-20.322,20.296,20.256,20.213,20.175,20.149,20.135,20.125,20.103,20.045,19.922,19.708,19.378,18.918,18.326,17.616,
-16.814,15.959,15.100,14.284,13.560,12.964,12.521,12.244,12.126,12.151,12.291,12.514,12.787,13.084,13.381,13.668,
-13.938,14.193,14.439,14.680,14.918,15.151,15.369,15.558,15.703,15.786,15.794,15.719,15.562,15.333,15.048,14.731,
-14.408,14.105,13.840,13.627,13.471,13.364,13.294,13.243,13.190,13.117,13.009,12.859,12.669,12.445,12.202,11.955,
-11.722,11.514,11.340,11.201,11.092,11.004,10.921,10.830,10.718,10.575,10.400,10.194,9.965,9.722,9.480,9.247,
-9.032,8.837,8.660,8.493,8.325,8.143,7.936,7.694,7.415,7.100,6.757,6.401,6.048,5.717,5.423,5.180,
-4.995,4.868,4.791,4.753,4.734,4.716,4.678,4.604,4.479,4.297,4.055,3.758,3.414,3.035,2.636,2.231,
-1.832,1.451,1.096,.769,.473,.205,-.040,-.269,-.489,-.711,-.944,-1.197,-1.478,-1.796,-2.153,-2.553,
--2.992,-3.467,-3.969,-4.487,-5.008,-5.518,-6.006,-6.461,-6.878,-7.256,-7.597,-7.910,-8.206,-8.499,-8.801,-9.126,
--9.481,-9.871,-10.297,-10.753,-11.231,-11.722,-12.216,-12.702,-13.174,-13.630,-14.069,-14.494,-14.913,-15.330,-15.751,-16.180,
--16.619,-17.065,-17.514,-17.961,-18.399,-18.823,-19.232,-19.627,-20.014,-20.401,-20.800,-21.224,-21.683,-22.186,-22.737,-23.333,
--23.969,-24.628,-25.294,-25.944,-26.558,-27.113,-27.593,-27.986,-28.286,-28.494,-28.617,-28.668,-28.664,-28.625,-28.571,-28.522,
--28.493,-28.500,-28.549,-28.644,-28.785,-28.965,-29.177,-29.410,-29.652,-29.892,-30.121,-30.332,-30.521,-30.690,-30.840,-30.979,
--31.114,-31.252,-31.401,-31.566,-31.748,-31.946,-32.155,-32.370,-32.581,-32.782,-32.966,-33.132,-33.280,-33.416,-33.547,-33.685,
--33.839,-34.020,-34.233,-34.479,-34.756,-35.055,-35.364,-35.670,-35.962,-36.228,-36.467,-36.679,-36.873,-37.063,-37.265,-37.495,
--37.765,-38.081,-38.440,-38.830,-39.228,-39.604,-39.928,-40.166,-40.294,-40.297,-40.174,-39.938,-39.617,-39.251,-38.889,-38.580,
--38.371,-38.297,-38.382,-38.631,-39.032,-39.558,-40.171,-40.824,-41.469,-42.062,-42.570,-42.968,-43.249,-43.415,-43.481,-43.470,
--43.408,-43.323,-43.240,-43.177,-43.149,-43.165,-43.226,-43.335,-43.490,-43.690,-43.936,-44.227,-44.567,-44.954,-45.389,-45.865,
--46.374,-46.901,-47.429,-47.937,-48.405,-48.813,-49.145,-49.391,-49.548,-49.619,-49.614,-49.549,-49.444,-49.318,-49.193,-49.086,
--49.012,-48.979,-48.993,-49.054,-49.160,-49.304,-49.481,-49.684,-49.905,-50.139,-50.383,-50.634,-50.890,-51.151,-51.417,-51.689,
--51.967,-52.250,-52.538,-52.831,-53.127,-53.425,-53.724,-54.023,-54.319,-54.611,-54.899,-55.180,-55.452,-55.715,-55.964,-56.199,
--56.416,-56.611,-56.784,-56.932,-57.054,-57.151,-57.226,-57.281,-57.323,-57.357,-57.388,-57.422,-57.464,-57.516,-57.580,-57.656,
--57.740,-57.830,-57.923,-58.015,-58.103,-58.187,-58.265,-58.337,-58.404,-58.464,-58.518,-58.561,-58.590,-58.600,-58.583,-58.532,
--58.441,-58.304,-58.120,-57.888,-57.610,-57.292,-56.943,-56.571,-56.186,-55.798,-55.417,-55.049,-54.700,-54.373,-54.068,-53.783,
--53.514,-53.257,-53.005,-52.751,-52.490,-52.220,-51.941,-51.659,-51.383,-51.130,-50.920,-50.780,-50.733,-50.806,-51.019,-51.382,
--51.899,-52.557,-53.332,-54.187,-55.077,-55.949,-56.751,-57.438,-57.971,-58.329,-58.506,-58.512,-58.375,-58.134,-57.834,-57.523,
--57.246,-57.036,-56.917,-56.896,-56.970,-57.121,-57.324,-57.551,-57.775,-57.970,-58.120,-58.219,-58.266,-58.272,-58.250,-58.219,
--58.195,-58.195,-58.230,-58.306,-58.424,-58.579,-58.766,-58.975,-59.195,-59.417,-59.633,-59.836,-60.021,-60.187,-60.331,-60.454,
--60.555,-60.637,-60.700,-60.746,-60.778,-60.799,-60.812,-60.820,-60.828,-60.840,-60.860,-60.892,-60.938,-61.003,-61.087,-61.193,
--61.320,-61.470,-61.639,-61.827,-62.030,-62.243,-62.461,-62.680,-62.894,-63.099,-63.292,-63.471,-63.637,-63.791,-63.936,-64.078,
--64.221,-64.367,-64.520,-64.679,-64.843,-65.007,-65.166,-65.314,-65.444,-65.552,-65.635,-65.692,-65.725,-65.740,-65.741,-65.735,
--65.729,-65.725,-65.728,-65.737,-65.749,-65.761,-65.769,-65.767,-65.753,-65.725,-65.685,-65.634,-65.579,-65.524,-65.474,-65.436,
--65.410,-65.398,-65.396,-65.401,-65.406,-65.407,-65.397,-65.373,-65.333,-65.279,-65.213,-65.141,-65.068,-64.999,-64.939,-64.890,
--64.853,-64.825,-64.803,-64.783,-64.759,-64.726,-64.682,-64.626,-64.559,-64.483,-64.403,-64.322,-64.245,-64.176,-64.115,-64.064,
--64.020,-63.980,-63.941,-63.898,-63.849,-63.792,-63.724,-63.648,-63.565,-63.478,-63.390,-63.303,-63.220,-63.143,-63.070,-63.001,
--62.934,-62.867,-62.797,-62.722,-62.643,-62.557,-62.467,-62.373,-62.276,-62.179,-62.082,-61.986,-61.890,-61.793,-61.694,-61.591,
--61.484,-61.370,-61.250,-61.124,-60.992,-60.855,-60.715,-60.572,-60.425,-60.275,-60.120,-59.958,-59.787,-59.606,-59.414,-59.212,
--59.003,-58.790,-58.579,-58.376,-58.185,-58.011,-57.857,-57.723,-57.607,-57.504,-57.408,-57.309,-57.201,-57.077,-56.931,-56.764,
--56.576,-56.374,-56.165,-55.958,-55.763,-55.587,-55.436,-55.311,-55.211,-55.129,-55.055,-54.980,-54.890,-54.778,-54.635,-54.459,
--54.251,-54.016,-53.763,-53.502,-53.244,-52.999,-52.773,-52.570,-52.389,-52.226,-52.075,-51.928,-51.777,-51.617,-51.443,-51.256,
--51.058,-50.855,-50.654,-50.459,-50.276,-50.105,-49.945,-49.788,-49.626,-49.446,-49.238,-48.992,-48.702,-48.368,-47.994,-47.591,
--47.172,-46.753,-46.352,-45.982,-45.650,-45.362,-45.111,-44.887,-44.674,-44.454,-44.209,-43.924,-43.588,-43.200,-42.767,-42.303,
--41.828,-41.367,-40.945,-40.582,-40.296,-40.094,-39.975,-39.927,-39.934,-39.971,-40.015,-40.040,-40.026,-39.962,-39.840,-39.664,
--39.442,-39.188,-38.918,-38.649,-38.394,-38.162,-37.957,-37.777,-37.617,-37.468,-37.322,-37.169,-37.005,-36.828,-36.639,-36.443,
--36.249,-36.064,-35.896,-35.753,-35.637,-35.548,-35.484,-35.439,-35.405,-35.374,-35.338,-35.291,-35.229,-35.149,-35.051,-34.938,
--34.812,-34.678,-34.541,-34.404,-34.272,-34.147,-34.030,-33.924,-33.826,-33.735,-33.649,-33.563,-33.473,-33.376,-33.268,-33.146,
--33.010,-32.861,-32.703,-32.539,-32.376,-32.218,-32.071,-31.938,-31.817,-31.707,-31.599,-31.487,-31.361,-31.211,-31.030,-30.814,
--30.563,-30.281,-29.976,-29.657,-29.337,-29.024,-28.725,-28.445,-28.181,-27.928,-27.680,-27.426,-27.159,-26.875,-26.575,-26.262,
--25.948,-25.645,-25.368,-25.130,-24.939,-24.798,-24.702,-24.640,-24.595,-24.547,-24.476,-24.366,-24.208,-24.001,-23.753,-23.479,
--23.200,-22.939,-22.718,-22.551,-22.446,-22.401,-22.403,-22.434,-22.468,-22.482,-22.456,-22.377,-22.241,-22.055,-21.835,-21.604,
--21.385,-21.201,-21.067,-20.990,-20.964,-20.974,-20.996,-21.001,-20.962,-20.854,-20.663,-20.386,-20.034,-19.629,-19.202,-18.787,
--18.420,-18.128,-17.929,-17.831,-17.824,-17.890,-18.002,-18.126,-18.232,-18.292,-18.289,-18.218,-18.082,-17.896,-17.682,-17.465,
--17.267,-17.106,-16.994,-16.932,-16.911,-16.918,-16.934,-16.939,-16.916,-16.853,-16.745,-16.597,-16.416,-16.217,-16.015,-15.827,
--15.661,-15.525,-15.417,-15.330,-15.252,-15.169,-15.066,-14.932,-14.760,-14.547,-14.297,-14.021,-13.730,-13.439,-13.161,-12.906,
--12.681,-12.487,-12.321,-12.174,-12.036,-11.897,-11.746,-11.576,-11.381,-11.162,-10.919,-10.660,-10.391,-10.118,-9.850,-9.590,
--9.340,-9.099,-8.863,-8.626,-8.379,-8.114,-7.822,-7.497,-7.133,-6.730,-6.289,-5.818,-5.325,-4.824,-4.327,-3.848,
--3.401,-2.993,-2.631,-2.314,-2.037,-1.790,-1.561,-1.336,-1.100,-.843,-.558,-.243,.096,.451,.809,1.153,
-1.471,1.751,1.985,2.173,2.317,2.425,2.506,2.569,2.619,2.655,2.672,2.658,2.596,2.466,2.251,1.937,
-1.518,.995,.384,-.293,-1.004,-1.713,-2.385,-2.987,-3.493,-3.889,-4.172,-4.349,-4.436,-4.458,-4.439,-4.406,
--4.378,-4.368,-4.384,-4.422,-4.475,-4.529,-4.571,-4.588,-4.570,-4.513,-4.416,-4.285,-4.130,-3.960,-3.786,-3.617,
--3.460,-3.316,-3.186,-3.066,-2.951,-2.837,-2.720,-2.597,-2.471,-2.342,-2.216,-2.098,-1.991,-1.900,-1.826,-1.767,
--1.722,-1.685,-1.652,-1.616,-1.575,-1.527,-1.473,-1.415,-1.359,-1.309,-1.272,-1.253,-1.255,-1.278,-1.321,-1.381,
--1.453,-1.530,-1.607,-1.680,-1.746,-1.806,-1.861,-1.916,-1.975,-2.045,-2.128,-2.228,-2.347,-2.482,-2.630,-2.786,
--2.943,-3.096,-3.240,-3.371,-3.487,-3.588,-3.677,-3.757,-3.833,-3.907,-3.984,-4.064,-4.147,-4.232,-4.316,-4.395,
--4.466,-4.525,-4.569,-4.598,-4.612,-4.611,-4.598,-4.574,-4.541,-4.500,-4.451,-4.393,-4.327,-4.249,-4.160,-4.060,
--3.948,-3.828,-3.700,-3.570,-3.441,-3.315,-3.197,-3.088,-2.989,-2.901,-2.822,-2.750,-2.686,-2.625,-2.569,-2.515,
--2.464,-2.416,-2.369,-2.324,-2.279,-2.235,-2.189,-2.141,-2.090,-2.038,-1.984,-1.932,-1.885,-1.847,-1.820,-1.809,
--1.815,-1.836,-1.871,-1.915,-1.961,-2.004,-2.034,-2.045,-2.031,-1.988,-1.915,-1.811,-1.678,-1.519,-1.337,-1.137,
--.923,-.697,-.464,-.226,.013,.251,.484,.710,.926,1.130,1.324,1.510,1.694,1.881,2.083,2.308,
-2.565,2.861,3.199,3.577,3.989,4.423,4.864,5.293,5.692,6.044,6.335,6.560,6.715,6.808,6.848,6.852,
-6.838,6.822,6.821,6.845,6.900,6.985,7.095,7.220,7.348,7.464,7.560,7.626,7.659,7.663,7.643,7.611,
-7.581,7.570,7.593,7.665,7.797,7.996,8.267,8.608,9.016,9.481,9.994,10.540,11.107,11.678,12.237,12.769,
-13.260,13.696,14.066,14.360,14.573,14.700,14.743,14.705,14.594,14.422,14.200,13.946,13.673,13.399,13.138,12.903,
-12.704,12.547,12.436,12.370,12.348,12.364,12.412,12.487,12.582,12.693,12.817,12.953,13.100,12.377,12.638,12.914,
-13.204,13.502,13.807,14.111,14.412,14.703,14.978,15.234,15.468,15.678,15.867,16.038,16.195,16.345,16.494,16.644,
-16.798,16.956,17.113,17.264,17.401,17.515,17.600,17.650,17.664,17.646,17.601,17.541,17.477,17.422,17.388,17.384,
-17.414,17.478,17.570,17.682,17.803,17.921,18.026,18.113,18.178,18.226,18.261,18.296,18.340,18.403,18.492,18.609,
-18.750,18.907,19.066,19.211,19.330,19.409,19.441,19.428,19.377,19.300,19.216,19.146,19.107,19.115,19.178,19.295,
-19.459,19.654,19.861,20.059,20.227,20.351,20.421,20.436,20.402,20.330,20.234,20.128,20.024,19.929,19.844,19.764,
-19.680,19.581,19.459,19.309,19.132,18.938,18.742,18.566,18.434,18.369,18.386,18.493,18.688,18.957,19.275,19.613,
-19.936,20.214,20.422,20.547,20.587,20.551,20.460,20.339,20.217,20.119,20.063,20.057,20.097,20.171,20.257,20.330,
-20.366,20.345,20.258,20.104,19.895,19.653,19.405,19.180,19.005,18.901,18.879,18.939,19.070,19.253,19.463,19.671,
-19.854,19.992,20.073,20.094,20.059,19.981,19.875,19.757,19.643,19.545,19.470,19.420,19.396,19.392,19.404,19.430,
-19.468,19.520,19.591,19.689,19.818,19.984,20.190,20.434,20.707,20.999,21.295,21.578,21.832,22.042,22.198,22.295,
-22.331,22.311,22.245,22.144,22.020,21.885,21.750,21.622,21.505,21.403,21.314,21.237,21.168,21.105,21.046,20.987,
-20.929,20.870,20.810,20.748,20.684,20.617,20.546,20.471,20.392,20.311,20.230,20.152,20.082,20.022,19.977,19.949,
-19.939,19.946,19.966,19.996,20.031,20.063,20.088,20.099,20.093,20.068,20.021,19.954,19.866,19.761,19.640,19.508,
-19.368,19.226,19.086,18.954,18.838,18.744,18.675,18.637,18.629,18.650,18.693,18.750,18.807,18.854,18.879,18.871,
-18.829,18.753,18.652,18.543,18.445,18.382,18.378,18.450,18.612,18.867,19.207,19.615,20.064,20.521,20.951,21.320,
-21.603,21.781,21.849,21.812,21.690,21.506,21.290,21.072,20.880,20.730,20.634,20.591,20.594,20.626,20.671,20.711,
-20.733,20.726,20.690,20.627,20.545,20.452,20.355,20.257,20.154,20.036,19.885,19.683,19.407,19.041,18.574,18.004,
-17.343,16.611,15.839,15.065,14.328,13.665,13.110,12.683,12.398,12.255,12.244,12.349,12.549,12.822,13.146,13.506,
-13.887,14.278,14.674,15.065,15.442,15.795,16.106,16.358,16.532,16.608,16.575,16.423,16.156,15.786,15.333,14.828,
-14.302,13.790,13.323,12.924,12.606,12.372,12.213,12.114,12.051,12.000,11.939,11.850,11.724,11.558,11.358,11.138,
-10.913,10.698,10.507,10.350,10.228,10.137,10.068,10.008,9.943,9.862,9.756,9.620,9.456,9.272,9.075,8.877,
-8.687,8.511,8.351,8.203,8.059,7.907,7.737,7.536,7.296,7.015,6.697,6.350,5.990,5.633,5.299,5.004,
-4.761,4.575,4.446,4.367,4.322,4.294,4.262,4.206,4.108,3.955,3.739,3.460,3.122,2.735,2.313,1.870,
-1.423,.986,.572,.188,-.160,-.470,-.745,-.990,-1.211,-1.418,-1.622,-1.832,-2.060,-2.315,-2.604,-2.932,
--3.301,-3.710,-4.154,-4.624,-5.110,-5.600,-6.081,-6.541,-6.971,-7.367,-7.725,-8.051,-8.351,-8.634,-8.913,-9.199,
--9.503,-9.832,-10.190,-10.578,-10.993,-11.428,-11.876,-12.330,-12.784,-13.233,-13.677,-14.115,-14.551,-14.988,-15.431,-15.880,
--16.336,-16.797,-17.259,-17.715,-18.158,-18.584,-18.987,-19.369,-19.731,-20.082,-20.431,-20.791,-21.176,-21.595,-22.058,-22.569,
--23.126,-23.723,-24.347,-24.983,-25.611,-26.213,-26.770,-27.267,-27.691,-28.037,-28.302,-28.489,-28.607,-28.666,-28.682,-28.669,
--28.642,-28.618,-28.607,-28.621,-28.666,-28.746,-28.861,-29.006,-29.177,-29.366,-29.562,-29.759,-29.948,-30.125,-30.288,-30.438,
--30.579,-30.718,-30.863,-31.022,-31.202,-31.407,-31.639,-31.896,-32.172,-32.461,-32.754,-33.042,-33.320,-33.583,-33.832,-34.070,
--34.304,-34.541,-34.790,-35.057,-35.344,-35.651,-35.971,-36.297,-36.616,-36.917,-37.192,-37.435,-37.646,-37.830,-37.999,-38.166,
--38.348,-38.558,-38.803,-39.087,-39.401,-39.730,-40.050,-40.333,-40.552,-40.681,-40.703,-40.614,-40.421,-40.146,-39.825,-39.502,
--39.223,-39.036,-38.981,-39.086,-39.365,-39.813,-40.409,-41.117,-41.890,-42.676,-43.422,-44.081,-44.615,-44.999,-45.222,-45.290,
--45.219,-45.037,-44.777,-44.478,-44.176,-43.904,-43.692,-43.561,-43.523,-43.587,-43.752,-44.013,-44.358,-44.773,-45.241,-45.743,
--46.257,-46.762,-47.241,-47.674,-48.049,-48.354,-48.585,-48.743,-48.833,-48.866,-48.856,-48.819,-48.771,-48.730,-48.707,-48.714,
--48.754,-48.831,-48.941,-49.079,-49.239,-49.413,-49.596,-49.782,-49.969,-50.157,-50.348,-50.545,-50.753,-50.975,-51.215,-51.475,
--51.757,-52.057,-52.375,-52.706,-53.044,-53.386,-53.726,-54.060,-54.384,-54.696,-54.994,-55.277,-55.545,-55.799,-56.037,-56.261,
--56.470,-56.665,-56.845,-57.009,-57.158,-57.289,-57.404,-57.502,-57.583,-57.648,-57.700,-57.740,-57.770,-57.795,-57.818,-57.843,
--57.874,-57.916,-57.971,-58.043,-58.133,-58.241,-58.366,-58.504,-58.649,-58.794,-58.930,-59.048,-59.138,-59.192,-59.203,-59.168,
--59.084,-58.954,-58.782,-58.574,-58.338,-58.081,-57.809,-57.525,-57.231,-56.925,-56.601,-56.252,-55.869,-55.446,-54.974,-54.450,
--53.874,-53.251,-52.590,-51.904,-51.211,-50.533,-49.893,-49.315,-48.826,-48.448,-48.205,-48.115,-48.192,-48.446,-48.876,-49.478,
--50.235,-51.123,-52.108,-53.150,-54.205,-55.225,-56.165,-56.986,-57.655,-58.154,-58.475,-58.626,-58.626,-58.506,-58.304,-58.058,
--57.808,-57.586,-57.419,-57.321,-57.296,-57.340,-57.439,-57.576,-57.732,-57.889,-58.033,-58.154,-58.250,-58.323,-58.381,-58.432,
--58.487,-58.553,-58.636,-58.740,-58.862,-59.000,-59.146,-59.294,-59.437,-59.570,-59.687,-59.788,-59.872,-59.939,-59.994,-60.037,
--60.071,-60.098,-60.121,-60.140,-60.158,-60.176,-60.198,-60.226,-60.266,-60.321,-60.395,-60.493,-60.615,-60.763,-60.936,-61.132,
--61.346,-61.573,-61.808,-62.045,-62.279,-62.507,-62.724,-62.929,-63.121,-63.299,-63.466,-63.621,-63.767,-63.904,-64.036,-64.163,
--64.285,-64.405,-64.521,-64.633,-64.741,-64.844,-64.940,-65.031,-65.114,-65.191,-65.262,-65.329,-65.393,-65.456,-65.521,-65.587,
--65.655,-65.724,-65.792,-65.854,-65.907,-65.947,-65.970,-65.973,-65.956,-65.919,-65.867,-65.804,-65.737,-65.672,-65.615,-65.571,
--65.543,-65.529,-65.528,-65.535,-65.542,-65.544,-65.535,-65.509,-65.465,-65.403,-65.326,-65.240,-65.151,-65.066,-64.991,-64.930,
--64.885,-64.856,-64.839,-64.828,-64.816,-64.798,-64.768,-64.721,-64.658,-64.579,-64.489,-64.393,-64.297,-64.208,-64.131,-64.070,
--64.025,-63.996,-63.978,-63.967,-63.958,-63.943,-63.919,-63.882,-63.830,-63.765,-63.687,-63.600,-63.508,-63.414,-63.322,-63.233,
--63.149,-63.070,-62.994,-62.919,-62.845,-62.768,-62.688,-62.604,-62.515,-62.421,-62.324,-62.223,-62.119,-62.012,-61.903,-61.791,
--61.676,-61.557,-61.434,-61.307,-61.174,-61.037,-60.895,-60.747,-60.594,-60.434,-60.267,-60.092,-59.909,-59.718,-59.520,-59.316,
--59.109,-58.904,-58.705,-58.517,-58.343,-58.187,-58.051,-57.933,-57.831,-57.739,-57.652,-57.562,-57.462,-57.346,-57.209,-57.052,
--56.876,-56.684,-56.485,-56.287,-56.098,-55.927,-55.778,-55.654,-55.555,-55.475,-55.407,-55.340,-55.265,-55.170,-55.048,-54.892,
--54.700,-54.475,-54.221,-53.946,-53.659,-53.371,-53.091,-52.827,-52.584,-52.365,-52.171,-51.999,-51.847,-51.711,-51.586,-51.469,
--51.356,-51.243,-51.128,-51.005,-50.870,-50.717,-50.540,-50.331,-50.084,-49.793,-49.455,-49.071,-48.643,-48.181,-47.696,-47.205,
--46.723,-46.266,-45.849,-45.480,-45.165,-44.899,-44.674,-44.476,-44.285,-44.081,-43.845,-43.562,-43.221,-42.821,-42.366,-41.871,
--41.355,-40.842,-40.357,-39.924,-39.561,-39.281,-39.087,-38.976,-38.934,-38.946,-38.987,-39.037,-39.073,-39.081,-39.048,-38.971,
--38.853,-38.701,-38.528,-38.347,-38.172,-38.015,-37.882,-37.777,-37.699,-37.641,-37.596,-37.554,-37.506,-37.443,-37.361,-37.257,
--37.133,-36.995,-36.850,-36.705,-36.569,-36.450,-36.354,-36.282,-36.234,-36.207,-36.196,-36.192,-36.188,-36.174,-36.141,-36.085,
--36.000,-35.885,-35.740,-35.570,-35.380,-35.176,-34.967,-34.758,-34.554,-34.360,-34.176,-34.000,-33.829,-33.658,-33.482,-33.296,
--33.099,-32.891,-32.674,-32.456,-32.245,-32.048,-31.875,-31.731,-31.618,-31.534,-31.473,-31.423,-31.371,-31.302,-31.201,-31.059,
--30.869,-30.631,-30.351,-30.039,-29.707,-29.371,-29.043,-28.734,-28.448,-28.186,-27.942,-27.708,-27.473,-27.228,-26.968,-26.691,
--26.400,-26.105,-25.818,-25.553,-25.321,-25.132,-24.987,-24.880,-24.801,-24.731,-24.651,-24.541,-24.385,-24.175,-23.912,-23.604,
--23.269,-22.933,-22.620,-22.354,-22.155,-22.029,-21.978,-21.986,-22.034,-22.094,-22.138,-22.138,-22.076,-21.941,-21.736,-21.472,
--21.169,-20.851,-20.543,-20.268,-20.039,-19.861,-19.729,-19.630,-19.544,-19.451,-19.333,-19.175,-18.974,-18.736,-18.475,-18.212,
--17.973,-17.782,-17.658,-17.612,-17.645,-17.746,-17.896,-18.068,-18.234,-18.366,-18.442,-18.449,-18.383,-18.253,-18.073,-17.866,
--17.656,-17.466,-17.315,-17.214,-17.164,-17.162,-17.194,-17.245,-17.298,-17.337,-17.349,-17.329,-17.274,-17.189,-17.079,-16.954,
--16.819,-16.680,-16.537,-16.389,-16.229,-16.050,-15.847,-15.613,-15.349,-15.058,-14.746,-14.427,-14.112,-13.816,-13.550,-13.321,
--13.132,-12.980,-12.857,-12.752,-12.651,-12.541,-12.410,-12.251,-12.061,-11.842,-11.600,-11.344,-11.085,-10.833,-10.596,-10.379,
--10.181,-9.998,-9.824,-9.648,-9.458,-9.243,-8.994,-8.703,-8.369,-7.993,-7.579,-7.137,-6.677,-6.210,-5.750,-5.306,
--4.886,-4.495,-4.136,-3.805,-3.497,-3.204,-2.917,-2.628,-2.327,-2.011,-1.676,-1.324,-.961,-.597,-.240,.097,
-.404,.675,.905,1.096,1.251,1.378,1.485,1.581,1.669,1.749,1.817,1.859,1.859,1.796,1.650,1.404,
-1.044,.569,-.015,-.689,-1.427,-2.194,-2.950,-3.657,-4.282,-4.798,-5.189,-5.453,-5.597,-5.640,-5.605,-5.522,
--5.419,-5.320,-5.242,-5.196,-5.182,-5.195,-5.224,-5.254,-5.272,-5.266,-5.228,-5.154,-5.046,-4.910,-4.753,-4.585,
--4.415,-4.248,-4.090,-3.941,-3.800,-3.665,-3.533,-3.401,-3.269,-3.137,-3.007,-2.883,-2.769,-2.668,-2.583,-2.513,
--2.457,-2.410,-2.368,-2.324,-2.275,-2.216,-2.147,-2.069,-1.988,-1.910,-1.841,-1.789,-1.758,-1.752,-1.770,-1.811,
--1.867,-1.933,-2.000,-2.063,-2.116,-2.157,-2.188,-2.212,-2.235,-2.265,-2.308,-2.371,-2.457,-2.567,-2.699,-2.848,
--3.008,-3.170,-3.327,-3.473,-3.604,-3.720,-3.821,-3.910,-3.994,-4.076,-4.160,-4.251,-4.348,-4.451,-4.555,-4.657,
--4.751,-4.832,-4.895,-4.938,-4.960,-4.962,-4.946,-4.914,-4.869,-4.813,-4.748,-4.675,-4.592,-4.497,-4.391,-4.271,
--4.138,-3.992,-3.836,-3.674,-3.509,-3.347,-3.191,-3.044,-2.910,-2.787,-2.678,-2.579,-2.490,-2.408,-2.333,-2.265,
--2.203,-2.148,-2.101,-2.063,-2.034,-2.014,-2.000,-1.990,-1.981,-1.971,-1.958,-1.942,-1.924,-1.905,-1.890,-1.884,
--1.889,-1.909,-1.944,-1.992,-2.050,-2.109,-2.160,-2.195,-2.204,-2.177,-2.111,-2.001,-1.850,-1.660,-1.438,-1.191,
--.930,-.660,-.389,-.122,.139,.393,.640,.883,1.123,1.364,1.605,1.850,2.098,2.348,2.602,2.859,
-3.119,3.382,3.648,3.915,4.182,4.445,4.700,4.941,5.161,5.354,5.516,5.643,5.735,5.795,5.829,5.847,
-5.860,5.880,5.916,5.978,6.069,6.190,6.336,6.498,6.665,6.822,6.958,7.062,7.129,7.156,7.148,7.116,
-7.073,7.039,7.030,7.065,7.158,7.321,7.559,7.871,8.252,8.691,9.176,9.689,10.215,10.739,11.246,11.727,
-12.170,12.571,12.923,13.223,13.470,13.659,13.790,13.861,13.871,13.820,13.712,13.550,13.342,13.098,12.829,12.549,
-12.273,12.015,11.786,11.599,11.461,11.377,11.348,11.372,11.447,11.566,11.725,11.916,12.135,12.377,11.995,12.251,
-12.531,12.832,13.148,13.474,13.801,14.124,14.434,14.726,14.993,15.232,15.442,15.623,15.779,15.915,16.038,16.153,
-16.266,16.379,16.493,16.607,16.716,16.815,16.899,16.962,17.002,17.018,17.015,16.998,16.978,16.963,16.964,16.990,
-17.046,17.133,17.250,17.390,17.542,17.697,17.844,17.973,18.081,18.164,18.228,18.278,18.325,18.379,18.447,18.538,
-18.651,18.785,18.930,19.077,19.211,19.321,19.396,19.430,19.424,19.386,19.325,19.260,19.207,19.183,19.203,19.274,
-19.397,19.567,19.771,19.991,20.209,20.404,20.559,20.663,20.709,20.697,20.632,20.524,20.384,20.224,20.054,19.882,
-19.713,19.547,19.385,19.225,19.067,18.913,18.767,18.635,18.525,18.445,18.404,18.404,18.446,18.526,18.633,18.757,
-18.884,19.000,19.097,19.170,19.219,19.252,19.278,19.312,19.366,19.451,19.569,19.720,19.891,20.066,20.223,20.338,
-20.391,20.366,20.255,20.062,19.800,19.492,19.166,18.853,18.585,18.385,18.269,18.243,18.301,18.429,18.605,18.801,
-18.991,19.152,19.265,19.322,19.321,19.268,19.174,19.054,18.923,18.796,18.681,18.584,18.508,18.451,18.409,18.380,
-18.362,18.356,18.366,18.400,18.465,18.570,18.722,18.922,19.169,19.455,19.768,20.093,20.410,20.702,20.952,21.149,
-21.284,21.356,21.370,21.334,21.261,21.165,21.059,20.955,20.863,20.788,20.733,20.697,20.675,20.664,20.656,20.647,
-20.631,20.603,20.561,20.504,20.429,20.336,20.227,20.103,19.965,19.818,19.666,19.514,19.368,19.236,19.123,19.035,
-18.977,18.951,18.957,18.990,19.047,19.118,19.196,19.270,19.331,19.371,19.384,19.366,19.316,19.236,19.129,19.002,
-18.862,18.717,18.575,18.445,18.334,18.248,18.190,18.161,18.160,18.183,18.223,18.273,18.320,18.357,18.373,18.362,
-18.323,18.256,18.170,18.076,17.991,17.934,17.922,17.973,18.098,18.303,18.585,18.932,19.326,19.741,20.149,20.522,
-20.834,21.067,21.210,21.262,21.231,21.133,20.991,20.829,20.672,20.539,20.444,20.394,20.387,20.415,20.465,20.522,
-20.571,20.599,20.599,20.566,20.503,20.413,20.301,20.171,20.026,19.863,19.675,19.452,19.181,18.850,18.450,17.976,
-17.430,16.822,16.170,15.498,14.835,14.209,13.648,13.177,12.811,12.562,12.431,12.414,12.502,12.682,12.940,13.263,
-13.636,14.048,14.485,14.936,15.386,15.817,16.209,16.542,16.792,16.938,16.964,16.858,16.618,16.254,15.781,15.227,
-14.624,14.009,13.415,12.873,12.405,12.025,11.735,11.526,11.382,11.283,11.205,11.128,11.035,10.916,10.770,10.599,
-10.413,10.225,10.048,9.891,9.760,9.657,9.578,9.514,9.455,9.388,9.305,9.198,9.066,8.911,8.739,8.559,
-8.379,8.207,8.048,7.902,7.766,7.631,7.487,7.321,7.126,6.892,6.620,6.311,5.974,5.623,5.273,4.941,
-4.641,4.384,4.176,4.016,3.897,3.808,3.732,3.653,3.552,3.417,3.234,2.998,2.709,2.370,1.990,1.580,
-1.154,.724,.303,-.100,-.477,-.823,-1.138,-1.424,-1.684,-1.924,-2.154,-2.380,-2.612,-2.859,-3.126,-3.422,
--3.747,-4.104,-4.491,-4.903,-5.333,-5.772,-6.210,-6.639,-7.050,-7.437,-7.797,-8.131,-8.442,-8.737,-9.023,-9.311,
--9.607,-9.919,-10.250,-10.603,-10.977,-11.367,-11.770,-12.180,-12.594,-13.009,-13.423,-13.839,-14.259,-14.687,-15.126,-15.578,
--16.043,-16.519,-17.001,-17.482,-17.953,-18.408,-18.840,-19.245,-19.623,-19.979,-20.320,-20.657,-21.002,-21.368,-21.765,-22.203,
--22.684,-23.206,-23.765,-24.349,-24.944,-25.535,-26.104,-26.636,-27.118,-27.538,-27.891,-28.175,-28.391,-28.544,-28.642,-28.695,
--28.717,-28.718,-28.712,-28.709,-28.721,-28.756,-28.818,-28.910,-29.033,-29.182,-29.353,-29.537,-29.727,-29.915,-30.096,-30.265,
--30.421,-30.567,-30.707,-30.851,-31.006,-31.181,-31.382,-31.616,-31.881,-32.178,-32.498,-32.836,-33.181,-33.525,-33.861,-34.183,
--34.491,-34.785,-35.070,-35.351,-35.633,-35.921,-36.217,-36.518,-36.823,-37.123,-37.413,-37.685,-37.935,-38.162,-38.368,-38.559,
--38.746,-38.938,-39.145,-39.375,-39.629,-39.902,-40.184,-40.455,-40.696,-40.882,-40.994,-41.017,-40.945,-40.783,-40.550,-40.273,
--39.990,-39.744,-39.578,-39.532,-39.634,-39.904,-40.341,-40.932,-41.647,-42.444,-43.273,-44.080,-44.813,-45.427,-45.888,-46.175,
--46.284,-46.223,-46.017,-45.699,-45.311,-44.898,-44.503,-44.167,-43.922,-43.792,-43.790,-43.921,-44.176,-44.540,-44.990,-45.500,
--46.039,-46.577,-47.088,-47.547,-47.936,-48.245,-48.469,-48.611,-48.681,-48.693,-48.665,-48.616,-48.567,-48.533,-48.528,-48.562,
--48.638,-48.755,-48.908,-49.089,-49.289,-49.497,-49.706,-49.908,-50.101,-50.284,-50.459,-50.631,-50.807,-50.992,-51.194,-51.416,
--51.664,-51.936,-52.234,-52.553,-52.889,-53.237,-53.591,-53.946,-54.295,-54.634,-54.960,-55.270,-55.561,-55.833,-56.086,-56.320,
--56.535,-56.733,-56.915,-57.083,-57.236,-57.377,-57.505,-57.620,-57.722,-57.810,-57.883,-57.942,-57.987,-58.020,-58.043,-58.061,
--58.080,-58.105,-58.143,-58.201,-58.283,-58.392,-58.528,-58.688,-58.863,-59.046,-59.222,-59.380,-59.506,-59.588,-59.618,-59.591,
--59.508,-59.373,-59.197,-58.989,-58.765,-58.537,-58.314,-58.103,-57.902,-57.705,-57.500,-57.269,-56.992,-56.648,-56.217,-55.684,
--55.042,-54.290,-53.440,-52.510,-51.530,-50.535,-49.566,-48.668,-47.882,-47.249,-46.805,-46.574,-46.574,-46.812,-47.281,-47.966,
--48.838,-49.862,-50.995,-52.186,-53.387,-54.547,-55.620,-56.569,-57.363,-57.985,-58.428,-58.700,-58.816,-58.804,-58.695,-58.523,
--58.324,-58.128,-57.960,-57.836,-57.764,-57.746,-57.776,-57.841,-57.931,-58.031,-58.130,-58.221,-58.300,-58.368,-58.427,-58.484,
--58.545,-58.616,-58.699,-58.797,-58.908,-59.029,-59.153,-59.276,-59.391,-59.494,-59.581,-59.652,-59.706,-59.745,-59.773,-59.791,
--59.803,-59.812,-59.818,-59.824,-59.832,-59.845,-59.865,-59.897,-59.944,-60.013,-60.108,-60.232,-60.388,-60.575,-60.792,-61.034,
--61.295,-61.566,-61.838,-62.105,-62.359,-62.594,-62.810,-63.004,-63.181,-63.342,-63.492,-63.635,-63.775,-63.915,-64.053,-64.190,
--64.322,-64.445,-64.556,-64.650,-64.726,-64.782,-64.819,-64.842,-64.855,-64.865,-64.880,-64.906,-64.950,-65.015,-65.105,-65.217,
--65.348,-65.491,-65.639,-65.781,-65.908,-66.010,-66.083,-66.120,-66.123,-66.092,-66.035,-65.960,-65.875,-65.791,-65.718,-65.661,
--65.626,-65.613,-65.619,-65.639,-65.665,-65.687,-65.698,-65.689,-65.656,-65.598,-65.515,-65.412,-65.296,-65.176,-65.061,-64.957,
--64.871,-64.806,-64.761,-64.734,-64.719,-64.709,-64.698,-64.679,-64.648,-64.603,-64.544,-64.473,-64.395,-64.317,-64.243,-64.179,
--64.128,-64.092,-64.070,-64.058,-64.054,-64.050,-64.041,-64.024,-63.993,-63.947,-63.886,-63.812,-63.728,-63.636,-63.541,-63.446,
--63.354,-63.266,-63.181,-63.099,-63.017,-62.934,-62.848,-62.755,-62.657,-62.552,-62.441,-62.328,-62.213,-62.099,-61.989,-61.885,
--61.786,-61.692,-61.603,-61.514,-61.423,-61.326,-61.217,-61.093,-60.950,-60.786,-60.599,-60.390,-60.160,-59.915,-59.659,-59.399,
--59.142,-58.897,-58.670,-58.467,-58.291,-58.146,-58.029,-57.938,-57.867,-57.810,-57.757,-57.701,-57.634,-57.550,-57.447,-57.322,
--57.178,-57.019,-56.850,-56.678,-56.510,-56.352,-56.206,-56.074,-55.956,-55.846,-55.740,-55.628,-55.505,-55.362,-55.194,-54.997,
--54.768,-54.510,-54.226,-53.922,-53.605,-53.283,-52.965,-52.658,-52.370,-52.107,-51.873,-51.674,-51.509,-51.379,-51.283,-51.216,
--51.172,-51.141,-51.113,-51.075,-51.011,-50.908,-50.750,-50.527,-50.230,-49.856,-49.408,-48.896,-48.333,-47.740,-47.140,-46.556,
--46.013,-45.529,-45.117,-44.784,-44.526,-44.335,-44.191,-44.073,-43.955,-43.811,-43.621,-43.368,-43.044,-42.649,-42.191,-41.687,
--41.159,-40.633,-40.132,-39.680,-39.295,-38.987,-38.760,-38.609,-38.524,-38.489,-38.484,-38.491,-38.492,-38.472,-38.424,-38.343,
--38.231,-38.095,-37.944,-37.790,-37.644,-37.515,-37.412,-37.338,-37.292,-37.273,-37.274,-37.288,-37.307,-37.323,-37.329,-37.323,
--37.302,-37.267,-37.221,-37.169,-37.117,-37.070,-37.034,-37.013,-37.007,-37.017,-37.039,-37.066,-37.092,-37.106,-37.099,-37.062,
--36.987,-36.869,-36.705,-36.496,-36.246,-35.964,-35.658,-35.340,-35.019,-34.705,-34.406,-34.125,-33.862,-33.617,-33.386,-33.163,
--32.943,-32.724,-32.504,-32.284,-32.069,-31.864,-31.678,-31.515,-31.381,-31.276,-31.197,-31.138,-31.087,-31.033,-30.961,-30.859,
--30.719,-30.537,-30.314,-30.056,-29.774,-29.481,-29.191,-28.915,-28.662,-28.435,-28.232,-28.046,-27.866,-27.683,-27.484,-27.264,
--27.018,-26.751,-26.469,-26.185,-25.911,-25.659,-25.438,-25.251,-25.096,-24.962,-24.836,-24.700,-24.537,-24.333,-24.080,-23.777,
--23.432,-23.060,-22.683,-22.323,-22.004,-21.741,-21.545,-21.418,-21.350,-21.326,-21.322,-21.315,-21.280,-21.200,-21.065,-20.871,
--20.626,-20.345,-20.044,-19.746,-19.467,-19.222,-19.016,-18.850,-18.716,-18.603,-18.498,-18.388,-18.265,-18.126,-17.976,-17.823,
--17.681,-17.564,-17.488,-17.460,-17.483,-17.552,-17.654,-17.771,-17.881,-17.961,-17.993,-17.964,-17.870,-17.714,-17.511,-17.278,
--17.041,-16.822,-16.644,-16.521,-16.462,-16.469,-16.534,-16.644,-16.784,-16.936,-17.083,-17.212,-17.313,-17.382,-17.415,-17.414,
--17.380,-17.313,-17.215,-17.081,-16.910,-16.698,-16.443,-16.143,-15.804,-15.432,-15.040,-14.644,-14.259,-13.904,-13.593,-13.335,
--13.134,-12.989,-12.889,-12.821,-12.769,-12.715,-12.644,-12.542,-12.405,-12.229,-12.022,-11.790,-11.546,-11.302,-11.069,-10.853,
--10.656,-10.478,-10.311,-10.145,-9.969,-9.771,-9.543,-9.277,-8.973,-8.631,-8.260,-7.868,-7.465,-7.063,-6.672,-6.298,
--5.945,-5.613,-5.299,-4.996,-4.697,-4.394,-4.080,-3.749,-3.399,-3.032,-2.651,-2.264,-1.880,-1.510,-1.164,-.850,
--.573,-.335,-.135,.033,.178,.308,.432,.558,.689,.822,.949,1.057,1.127,1.137,1.067,.895,
-.610,.203,-.320,-.947,-1.655,-2.413,-3.184,-3.931,-4.619,-5.218,-5.706,-6.072,-6.316,-6.448,-6.487,-6.456,
--6.381,-6.287,-6.196,-6.122,-6.072,-6.048,-6.043,-6.050,-6.055,-6.047,-6.017,-5.959,-5.872,-5.758,-5.621,-5.471,
--5.313,-5.156,-5.003,-4.857,-4.718,-4.583,-4.451,-4.318,-4.183,-4.044,-3.903,-3.764,-3.631,-3.508,-3.400,-3.308,
--3.234,-3.174,-3.125,-3.082,-3.038,-2.988,-2.930,-2.861,-2.784,-2.703,-2.624,-2.554,-2.498,-2.461,-2.447,-2.454,
--2.480,-2.519,-2.563,-2.607,-2.644,-2.669,-2.682,-2.685,-2.681,-2.678,-2.682,-2.701,-2.740,-2.802,-2.888,-2.995,
--3.118,-3.249,-3.381,-3.508,-3.625,-3.728,-3.819,-3.898,-3.971,-4.041,-4.114,-4.192,-4.278,-4.369,-4.465,-4.558,
--4.646,-4.720,-4.778,-4.815,-4.830,-4.824,-4.799,-4.760,-4.709,-4.650,-4.585,-4.515,-4.437,-4.351,-4.252,-4.138,
--4.005,-3.854,-3.685,-3.501,-3.306,-3.106,-2.907,-2.716,-2.536,-2.372,-2.225,-2.095,-1.981,-1.882,-1.795,-1.720,
--1.655,-1.602,-1.561,-1.534,-1.522,-1.525,-1.542,-1.572,-1.610,-1.653,-1.696,-1.736,-1.770,-1.797,-1.818,-1.836,
--1.854,-1.876,-1.907,-1.946,-1.993,-2.045,-2.095,-2.134,-2.152,-2.140,-2.090,-1.995,-1.854,-1.670,-1.446,-1.194,
--.922,-.643,-.367,-.101,.150,.385,.606,.819,1.031,1.249,1.480,1.729,1.996,2.280,2.576,2.877,
-3.173,3.455,3.713,3.940,4.131,4.282,4.393,4.468,4.510,4.527,4.525,4.513,4.498,4.490,4.494,4.517,
-4.566,4.644,4.753,4.894,5.066,5.262,5.477,5.702,5.926,6.138,6.328,6.487,6.610,6.693,6.741,6.758,
-6.756,6.749,6.752,6.781,6.849,6.969,7.147,7.387,7.687,8.040,8.436,8.863,9.309,9.760,10.206,10.636,
-11.044,11.427,11.780,12.103,12.395,12.655,12.879,13.066,13.209,13.306,13.352,13.344,13.280,13.164,13.001,12.798,
-12.567,12.320,12.072,11.837,11.627,11.452,11.322,11.241,11.211,11.231,11.301,11.417,11.573,11.767,11.995,11.528,
-11.637,11.790,11.988,12.228,12.505,12.811,13.136,13.467,13.792,14.101,14.384,14.634,14.849,15.028,15.175,15.296,
-15.398,15.488,15.574,15.659,15.746,15.834,15.922,16.005,16.080,16.145,16.196,16.236,16.267,16.294,16.325,16.366,
-16.424,16.503,16.604,16.727,16.868,17.019,17.173,17.322,17.458,17.577,17.676,17.758,17.827,17.888,17.950,18.019,
-18.101,18.197,18.307,18.427,18.550,18.668,18.771,18.854,18.911,18.941,18.949,18.941,18.927,18.920,18.929,18.966,
-19.035,19.139,19.276,19.437,19.612,19.788,19.952,20.090,20.193,20.255,20.271,20.243,20.175,20.073,19.943,19.795,
-19.634,19.468,19.301,19.138,18.983,18.840,18.712,18.603,18.517,18.458,18.427,18.423,18.446,18.490,18.549,18.614,
-18.679,18.737,18.783,18.817,18.841,18.863,18.890,18.934,19.003,19.103,19.238,19.402,19.587,19.776,19.950,20.089,
-20.173,20.187,20.123,19.980,19.766,19.498,19.200,18.898,18.618,18.386,18.220,18.130,18.117,18.176,18.290,18.441,
-18.607,18.766,18.900,18.998,19.052,19.062,19.033,18.975,18.896,18.807,18.716,18.628,18.545,18.467,18.390,18.314,
-18.237,18.162,18.093,18.039,18.008,18.013,18.062,18.164,18.320,18.528,18.781,19.065,19.364,19.659,19.933,20.168,
-20.352,20.481,20.551,20.569,20.543,20.486,20.412,20.333,20.261,20.204,20.167,20.149,20.149,20.160,20.175,20.187,
-20.189,20.177,20.144,20.090,20.014,19.917,19.801,19.669,19.525,19.373,19.218,19.065,18.919,18.785,18.671,18.579,
-18.516,18.482,18.479,18.505,18.555,18.624,18.703,18.783,18.854,18.907,18.935,18.934,18.899,18.832,18.736,18.616,
-18.479,18.334,18.190,18.054,17.932,17.830,17.751,17.695,17.660,17.645,17.642,17.648,17.655,17.657,17.650,17.631,
-17.597,17.549,17.493,17.434,17.381,17.343,17.331,17.354,17.418,17.528,17.683,17.879,18.107,18.354,18.605,18.845,
-19.059,19.235,19.363,19.442,19.472,19.461,19.418,19.358,19.293,19.236,19.196,19.180,19.190,19.222,19.273,19.332,
-19.392,19.445,19.482,19.500,19.496,19.467,19.415,19.337,19.233,19.098,18.928,18.716,18.453,18.133,17.751,17.307,
-16.806,16.256,15.673,15.077,14.490,13.936,13.436,13.011,12.673,12.431,12.287,12.239,12.277,12.392,12.572,12.803,
-13.076,13.379,13.703,14.041,14.382,14.715,15.028,15.307,15.534,15.693,15.769,15.749,15.626,15.401,15.079,14.677,
-14.213,13.713,13.203,12.711,12.257,11.858,11.523,11.254,11.044,10.882,10.753,10.642,10.535,10.421,10.294,10.154,
-10.003,9.849,9.700,9.562,9.443,9.343,9.263,9.196,9.135,9.072,8.998,8.906,8.793,8.659,8.507,8.343,
-8.175,8.010,7.855,7.711,7.578,7.453,7.328,7.194,7.042,6.863,6.651,6.407,6.131,5.832,5.519,5.204,
-4.900,4.617,4.364,4.144,3.956,3.794,3.649,3.510,3.364,3.198,3.002,2.768,2.493,2.178,1.827,1.447,
-1.047,.637,.229,-.170,-.552,-.911,-1.247,-1.557,-1.846,-2.117,-2.375,-2.627,-2.880,-3.140,-3.414,-3.706,
--4.020,-4.355,-4.712,-5.088,-5.476,-5.872,-6.267,-6.656,-7.032,-7.391,-7.731,-8.053,-8.359,-8.654,-8.946,-9.239,
--9.542,-9.858,-10.191,-10.541,-10.907,-11.284,-11.670,-12.057,-12.444,-12.827,-13.206,-13.584,-13.963,-14.348,-14.744,-15.155,
--15.583,-16.026,-16.483,-16.947,-17.410,-17.865,-18.305,-18.723,-19.118,-19.491,-19.847,-20.195,-20.544,-20.908,-21.296,-21.717,
--22.177,-22.677,-23.213,-23.777,-24.357,-24.939,-25.506,-26.045,-26.542,-26.987,-27.372,-27.695,-27.956,-28.160,-28.312,-28.422,
--28.500,-28.556,-28.599,-28.641,-28.690,-28.752,-28.835,-28.942,-29.074,-29.231,-29.411,-29.608,-29.818,-30.032,-30.246,-30.452,
--30.648,-30.831,-31.004,-31.169,-31.332,-31.501,-31.684,-31.886,-32.114,-32.368,-32.649,-32.952,-33.271,-33.597,-33.921,-34.237,
--34.539,-34.822,-35.088,-35.339,-35.580,-35.817,-36.055,-36.300,-36.555,-36.819,-37.091,-37.366,-37.639,-37.905,-38.162,-38.407,
--38.641,-38.869,-39.094,-39.323,-39.560,-39.807,-40.062,-40.319,-40.568,-40.794,-40.983,-41.119,-41.192,-41.194,-41.128,-41.003,
--40.837,-40.657,-40.494,-40.381,-40.351,-40.431,-40.639,-40.983,-41.458,-42.046,-42.719,-43.439,-44.164,-44.849,-45.453,-45.941,
--46.288,-46.482,-46.521,-46.419,-46.199,-45.893,-45.540,-45.181,-44.854,-44.594,-44.429,-44.378,-44.451,-44.645,-44.950,-45.348,
--45.814,-46.319,-46.835,-47.333,-47.789,-48.183,-48.503,-48.744,-48.907,-49.000,-49.036,-49.032,-49.006,-48.975,-48.956,-48.962,
--49.000,-49.075,-49.187,-49.332,-49.505,-49.696,-49.899,-50.106,-50.311,-50.511,-50.705,-50.894,-51.080,-51.269,-51.464,-51.671,
--51.894,-52.135,-52.395,-52.675,-52.972,-53.284,-53.607,-53.936,-54.267,-54.595,-54.915,-55.224,-55.517,-55.793,-56.048,-56.284,
--56.498,-56.693,-56.870,-57.031,-57.177,-57.312,-57.437,-57.553,-57.660,-57.757,-57.844,-57.920,-57.982,-58.032,-58.070,-58.098,
--58.120,-58.142,-58.170,-58.211,-58.272,-58.357,-58.469,-58.607,-58.766,-58.939,-59.113,-59.275,-59.411,-59.508,-59.554,-59.543,
--59.471,-59.342,-59.165,-58.951,-58.716,-58.474,-58.241,-58.025,-57.833,-57.660,-57.499,-57.333,-57.141,-56.899,-56.583,-56.171,
--55.648,-55.005,-54.245,-53.381,-52.435,-51.441,-50.440,-49.477,-48.599,-47.852,-47.277,-46.907,-46.765,-46.864,-47.202,-47.766,
--48.533,-49.466,-50.526,-51.663,-52.829,-53.975,-55.056,-56.035,-56.881,-57.575,-58.108,-58.482,-58.709,-58.808,-58.805,-58.729,
--58.610,-58.475,-58.347,-58.243,-58.174,-58.145,-58.153,-58.194,-58.257,-58.333,-58.412,-58.486,-58.550,-58.603,-58.645,-58.680,
--58.711,-58.744,-58.783,-58.831,-58.889,-58.957,-59.032,-59.112,-59.194,-59.274,-59.350,-59.420,-59.484,-59.540,-59.590,-59.635,
--59.674,-59.709,-59.740,-59.768,-59.794,-59.821,-59.852,-59.890,-59.941,-60.009,-60.102,-60.221,-60.371,-60.551,-60.761,-60.994,
--61.246,-61.506,-61.767,-62.020,-62.259,-62.477,-62.675,-62.852,-63.012,-63.162,-63.306,-63.452,-63.604,-63.765,-63.933,-64.106,
--64.278,-64.441,-64.586,-64.705,-64.792,-64.844,-64.862,-64.849,-64.813,-64.766,-64.720,-64.688,-64.681,-64.708,-64.774,-64.881,
--65.023,-65.194,-65.380,-65.568,-65.743,-65.892,-66.003,-66.070,-66.089,-66.062,-65.996,-65.901,-65.791,-65.677,-65.574,-65.493,
--65.440,-65.420,-65.430,-65.467,-65.520,-65.579,-65.633,-65.669,-65.679,-65.658,-65.602,-65.514,-65.399,-65.266,-65.125,-64.985,
--64.857,-64.749,-64.665,-64.608,-64.575,-64.562,-64.564,-64.574,-64.584,-64.589,-64.584,-64.567,-64.538,-64.499,-64.452,-64.402,
--64.351,-64.303,-64.260,-64.222,-64.188,-64.155,-64.121,-64.082,-64.035,-63.980,-63.915,-63.841,-63.760,-63.674,-63.588,-63.504,
--63.423,-63.348,-63.278,-63.212,-63.147,-63.081,-63.009,-62.930,-62.840,-62.740,-62.629,-62.510,-62.387,-62.264,-62.145,-62.035,
--61.936,-61.850,-61.776,-61.711,-61.650,-61.586,-61.512,-61.418,-61.298,-61.147,-60.960,-60.738,-60.483,-60.202,-59.904,-59.598,
--59.298,-59.015,-58.759,-58.538,-58.357,-58.217,-58.117,-58.049,-58.005,-57.976,-57.949,-57.915,-57.866,-57.795,-57.701,-57.582,
--57.442,-57.286,-57.119,-56.948,-56.778,-56.611,-56.449,-56.290,-56.131,-55.965,-55.786,-55.589,-55.368,-55.119,-54.842,-54.538,
--54.209,-53.861,-53.500,-53.133,-52.768,-52.410,-52.067,-51.743,-51.444,-51.172,-50.934,-50.731,-50.567,-50.445,-50.366,-50.326,
--50.322,-50.344,-50.381,-50.415,-50.426,-50.395,-50.301,-50.126,-49.857,-49.488,-49.021,-48.467,-47.846,-47.183,-46.510,-45.860,
--45.263,-44.745,-44.324,-44.007,-43.792,-43.664,-43.601,-43.574,-43.550,-43.500,-43.395,-43.217,-42.957,-42.614,-42.200,-41.733,
--41.238,-40.743,-40.275,-39.855,-39.500,-39.219,-39.012,-38.871,-38.783,-38.730,-38.692,-38.652,-38.594,-38.507,-38.388,-38.236,
--38.058,-37.863,-37.662,-37.466,-37.287,-37.132,-37.006,-36.911,-36.846,-36.808,-36.792,-36.792,-36.805,-36.826,-36.852,-36.883,
--36.920,-36.962,-37.012,-37.070,-37.138,-37.215,-37.299,-37.388,-37.478,-37.564,-37.640,-37.699,-37.735,-37.741,-37.711,-37.639,
--37.521,-37.355,-37.139,-36.876,-36.571,-36.229,-35.860,-35.473,-35.080,-34.691,-34.314,-33.957,-33.625,-33.319,-33.038,-32.782,
--32.544,-32.322,-32.112,-31.911,-31.720,-31.539,-31.370,-31.218,-31.084,-30.970,-30.874,-30.794,-30.723,-30.652,-30.573,-30.477,
--30.355,-30.204,-30.023,-29.816,-29.589,-29.353,-29.120,-28.899,-28.700,-28.528,-28.383,-28.261,-28.154,-28.049,-27.936,-27.803,
--27.641,-27.447,-27.222,-26.972,-26.705,-26.432,-26.166,-25.915,-25.684,-25.473,-25.279,-25.091,-24.897,-24.686,-24.447,-24.172,
--23.860,-23.515,-23.145,-22.766,-22.392,-22.040,-21.723,-21.450,-21.223,-21.038,-20.889,-20.760,-20.639,-20.511,-20.366,-20.198,
--20.005,-19.792,-19.567,-19.342,-19.128,-18.934,-18.765,-18.626,-18.511,-18.416,-18.332,-18.250,-18.163,-18.068,-17.963,-17.855,
--17.749,-17.655,-17.583,-17.537,-17.522,-17.532,-17.561,-17.595,-17.617,-17.611,-17.561,-17.459,-17.299,-17.087,-16.832,-16.553,
--16.271,-16.010,-15.790,-15.630,-15.542,-15.529,-15.588,-15.710,-15.881,-16.082,-16.297,-16.509,-16.704,-16.873,-17.007,-17.105,
--17.163,-17.179,-17.154,-17.083,-16.964,-16.793,-16.568,-16.290,-15.961,-15.588,-15.184,-14.765,-14.348,-13.954,-13.599,-13.297,
--13.059,-12.886,-12.773,-12.710,-12.679,-12.664,-12.644,-12.603,-12.528,-12.411,-12.251,-12.052,-11.821,-11.571,-11.312,-11.053,
--10.802,-10.561,-10.329,-10.102,-9.872,-9.631,-9.374,-9.095,-8.794,-8.473,-8.138,-7.798,-7.463,-7.141,-6.841,-6.565,
--6.315,-6.084,-5.865,-5.648,-5.421,-5.172,-4.894,-4.580,-4.230,-3.849,-3.445,-3.031,-2.619,-2.226,-1.865,-1.545,
--1.273,-1.051,-.876,-.741,-.635,-.549,-.471,-.393,-.313,-.230,-.151,-.088,-.055,-.071,-.154,-.318,
--.575,-.930,-1.379,-1.911,-2.509,-3.148,-3.799,-4.434,-5.025,-5.549,-5.990,-6.337,-6.592,-6.761,-6.857,-6.898,
--6.904,-6.892,-6.877,-6.869,-6.874,-6.891,-6.913,-6.934,-6.944,-6.933,-6.895,-6.827,-6.729,-6.605,-6.463,-6.310,
--6.156,-6.008,-5.870,-5.745,-5.632,-5.527,-5.424,-5.319,-5.207,-5.084,-4.952,-4.811,-4.666,-4.523,-4.389,-4.269,
--4.166,-4.083,-4.018,-3.968,-3.927,-3.890,-3.850,-3.805,-3.750,-3.687,-3.618,-3.547,-3.479,-3.419,-3.371,-3.339,
--3.321,-3.315,-3.319,-3.326,-3.332,-3.331,-3.323,-3.306,-3.281,-3.254,-3.229,-3.212,-3.207,-3.219,-3.249,-3.296,
--3.357,-3.428,-3.501,-3.573,-3.639,-3.696,-3.743,-3.782,-3.817,-3.852,-3.890,-3.936,-3.991,-4.054,-4.123,-4.194,
--4.260,-4.316,-4.356,-4.377,-4.377,-4.357,-4.320,-4.269,-4.209,-4.144,-4.078,-4.011,-3.942,-3.869,-3.787,-3.690,
--3.574,-3.435,-3.271,-3.083,-2.876,-2.654,-2.424,-2.196,-1.977,-1.773,-1.589,-1.427,-1.289,-1.174,-1.079,-1.002,
--.942,-.897,-.868,-.855,-.860,-.883,-.926,-.987,-1.064,-1.154,-1.250,-1.347,-1.440,-1.524,-1.596,-1.655,
--1.701,-1.739,-1.771,-1.801,-1.831,-1.862,-1.891,-1.916,-1.928,-1.920,-1.884,-1.813,-1.701,-1.548,-1.356,-1.131,
--.884,-.625,-.367,-.120,.107,.309,.487,.646,.792,.937,1.091,1.264,1.462,1.690,1.944,2.218,
-2.502,2.783,3.044,3.273,3.458,3.591,3.668,3.693,3.671,3.615,3.538,3.456,3.385,3.338,3.328,3.362,
-3.446,3.579,3.759,3.980,4.234,4.510,4.799,5.090,5.372,5.637,5.878,6.089,6.268,6.414,6.528,6.616,
-6.684,6.738,6.789,6.846,6.917,7.011,7.134,7.291,7.484,7.713,7.975,8.267,8.586,8.925,9.279,9.644,
-10.016,10.391,10.765,11.134,11.495,11.843,12.173,12.477,12.749,12.983,13.171,13.308,13.391,13.419,13.393,13.318,
-13.200,13.049,12.872,12.682,12.486,12.293,12.110,11.943,11.795,11.669,11.568,11.494,11.449,11.438,11.463,11.528,
-10.905,10.800,10.765,10.806,10.927,11.124,11.388,11.704,12.056,12.422,12.783,13.119,13.417,13.667,13.865,14.011,
-14.113,14.180,14.225,14.261,14.298,14.347,14.413,14.499,14.603,14.721,14.848,14.979,15.108,15.231,15.347,15.454,
-15.555,15.653,15.751,15.853,15.960,16.073,16.191,16.313,16.435,16.553,16.666,16.770,16.866,16.954,17.036,17.115,
-17.195,17.278,17.366,17.461,17.561,17.664,17.766,17.864,17.953,18.031,18.096,18.148,18.190,18.222,18.251,18.281,
-18.315,18.357,18.409,18.471,18.541,18.618,18.696,18.772,18.842,18.903,18.951,18.983,19.000,19.000,18.984,18.950,
-18.901,18.836,18.757,18.666,18.566,18.461,18.357,18.258,18.170,18.100,18.052,18.028,18.030,18.056,18.100,18.158,
-18.223,18.287,18.345,18.392,18.428,18.454,18.475,18.497,18.527,18.571,18.633,18.714,18.810,18.915,19.018,19.106,
-19.167,19.189,19.164,19.089,18.966,18.802,18.610,18.406,18.208,18.033,17.894,17.803,17.762,17.771,17.822,17.905,
-18.006,18.112,18.211,18.294,18.355,18.392,18.407,18.405,18.391,18.371,18.348,18.323,18.297,18.267,18.229,18.179,
-18.117,18.042,17.958,17.873,17.796,17.740,17.716,17.734,17.802,17.921,18.090,18.300,18.539,18.790,19.038,19.265,
-19.457,19.605,19.705,19.756,19.765,19.740,19.695,19.641,19.591,19.553,19.534,19.535,19.555,19.589,19.629,19.666,
-19.692,19.700,19.683,19.639,19.565,19.463,19.336,19.189,19.028,18.858,18.688,18.523,18.370,18.236,18.125,18.043,
-17.993,17.976,17.994,18.043,18.120,18.218,18.329,18.443,18.552,18.644,18.713,18.750,18.754,18.721,18.655,18.560,
-18.440,18.305,18.161,18.016,17.875,17.744,17.626,17.520,17.427,17.345,17.272,17.205,17.144,17.086,17.032,16.981,
-16.934,16.894,16.862,16.839,16.827,16.825,16.834,16.852,16.879,16.911,16.946,16.981,17.014,17.042,17.063,17.076,
-17.082,17.080,17.072,17.061,17.048,17.039,17.034,17.037,17.049,17.071,17.102,17.141,17.187,17.236,17.287,17.338,
-17.387,17.436,17.482,17.528,17.572,17.614,17.650,17.674,17.679,17.655,17.589,17.470,17.287,17.031,16.698,16.289,
-15.811,15.278,14.708,14.126,13.555,13.023,12.552,12.161,11.863,11.663,11.560,11.544,11.604,11.720,11.876,12.053,
-12.237,12.415,12.579,12.726,12.853,12.962,13.053,13.126,13.180,13.211,13.216,13.188,13.122,13.014,12.863,12.669,
-12.438,12.178,11.900,11.615,11.335,11.071,10.829,10.614,10.425,10.261,10.116,9.982,9.853,9.724,9.592,9.454,
-9.313,9.173,9.038,8.913,8.802,8.708,8.629,8.564,8.507,8.454,8.397,8.331,8.254,8.162,8.057,7.942,
-7.821,7.700,7.581,7.469,7.365,7.266,7.168,7.067,6.954,6.826,6.675,6.500,6.302,6.082,5.847,5.603,
-5.360,5.125,4.904,4.700,4.513,4.341,4.178,4.014,3.840,3.647,3.424,3.166,2.869,2.532,2.158,1.751,
-1.320,.875,.425,-.021,-.453,-.866,-1.254,-1.615,-1.949,-2.259,-2.549,-2.824,-3.090,-3.355,-3.625,-3.905,
--4.199,-4.509,-4.836,-5.178,-5.532,-5.892,-6.253,-6.610,-6.957,-7.291,-7.611,-7.916,-8.211,-8.499,-8.786,-9.079,
--9.383,-9.702,-10.039,-10.394,-10.764,-11.145,-11.532,-11.919,-12.300,-12.672,-13.035,-13.387,-13.733,-14.078,-14.426,-14.782,
--15.152,-15.535,-15.933,-16.340,-16.752,-17.163,-17.565,-17.953,-18.324,-18.679,-19.021,-19.358,-19.699,-20.056,-20.439,-20.859,
--21.321,-21.827,-22.374,-22.955,-23.556,-24.164,-24.762,-25.333,-25.864,-26.343,-26.764,-27.123,-27.422,-27.668,-27.869,-28.034,
--28.175,-28.303,-28.426,-28.552,-28.687,-28.835,-28.997,-29.173,-29.364,-29.567,-29.780,-30.001,-30.228,-30.456,-30.685,-30.911,
--31.133,-31.350,-31.563,-31.773,-31.982,-32.194,-32.411,-32.636,-32.871,-33.118,-33.375,-33.639,-33.907,-34.172,-34.429,-34.673,
--34.898,-35.104,-35.290,-35.460,-35.620,-35.776,-35.938,-36.113,-36.307,-36.525,-36.767,-37.032,-37.314,-37.608,-37.904,-38.196,
--38.478,-38.745,-38.996,-39.233,-39.460,-39.681,-39.903,-40.127,-40.357,-40.590,-40.822,-41.046,-41.253,-41.433,-41.579,-41.684,
--41.749,-41.778,-41.781,-41.772,-41.771,-41.798,-41.872,-42.012,-42.230,-42.531,-42.914,-43.369,-43.877,-44.415,-44.955,-45.468,
--45.926,-46.303,-46.581,-46.750,-46.807,-46.760,-46.624,-46.421,-46.178,-45.925,-45.691,-45.505,-45.389,-45.360,-45.428,-45.594,
--45.852,-46.190,-46.589,-47.029,-47.484,-47.932,-48.353,-48.729,-49.047,-49.303,-49.493,-49.624,-49.703,-49.742,-49.755,-49.756,
--49.759,-49.773,-49.809,-49.872,-49.965,-50.086,-50.236,-50.408,-50.600,-50.806,-51.023,-51.246,-51.474,-51.705,-51.938,-52.175,
--52.416,-52.661,-52.913,-53.171,-53.435,-53.704,-53.978,-54.253,-54.528,-54.800,-55.065,-55.320,-55.563,-55.792,-56.004,-56.200,
--56.379,-56.543,-56.694,-56.834,-56.966,-57.092,-57.215,-57.336,-57.454,-57.569,-57.679,-57.780,-57.871,-57.947,-58.009,-58.055,
--58.088,-58.110,-58.128,-58.149,-58.179,-58.225,-58.292,-58.383,-58.498,-58.633,-58.779,-58.928,-59.067,-59.182,-59.262,-59.297,
--59.280,-59.208,-59.084,-58.914,-58.708,-58.476,-58.232,-57.984,-57.741,-57.505,-57.273,-57.039,-56.789,-56.510,-56.184,-55.796,
--55.334,-54.790,-54.166,-53.468,-52.712,-51.923,-51.128,-50.363,-49.664,-49.064,-48.597,-48.289,-48.159,-48.218,-48.466,-48.896,
--49.490,-50.224,-51.067,-51.982,-52.935,-53.887,-54.803,-55.654,-56.413,-57.064,-57.596,-58.006,-58.299,-58.485,-58.581,-58.606,
--58.582,-58.529,-58.467,-58.412,-58.377,-58.367,-58.387,-58.434,-58.503,-58.589,-58.683,-58.776,-58.863,-58.937,-58.995,-59.037,
--59.064,-59.077,-59.081,-59.079,-59.075,-59.072,-59.075,-59.084,-59.102,-59.131,-59.169,-59.217,-59.275,-59.342,-59.415,-59.494,
--59.575,-59.656,-59.735,-59.811,-59.883,-59.951,-60.017,-60.084,-60.156,-60.239,-60.336,-60.453,-60.592,-60.754,-60.938,-61.140,
--61.355,-61.576,-61.796,-62.007,-62.204,-62.384,-62.546,-62.693,-62.829,-62.961,-63.096,-63.241,-63.402,-63.581,-63.777,-63.986,
--64.200,-64.409,-64.601,-64.765,-64.893,-64.977,-65.015,-65.011,-64.970,-64.905,-64.830,-64.759,-64.707,-64.686,-64.705,-64.768,
--64.873,-65.013,-65.177,-65.351,-65.518,-65.663,-65.773,-65.838,-65.854,-65.820,-65.742,-65.631,-65.498,-65.360,-65.232,-65.125,
--65.051,-65.016,-65.020,-65.060,-65.128,-65.213,-65.302,-65.383,-65.443,-65.474,-65.470,-65.428,-65.353,-65.250,-65.127,-64.995,
--64.865,-64.747,-64.649,-64.576,-64.530,-64.511,-64.514,-64.535,-64.565,-64.598,-64.627,-64.647,-64.655,-64.647,-64.625,-64.591,
--64.545,-64.493,-64.436,-64.376,-64.316,-64.254,-64.192,-64.127,-64.060,-63.987,-63.910,-63.829,-63.745,-63.659,-63.576,-63.496,
--63.424,-63.360,-63.304,-63.257,-63.216,-63.178,-63.138,-63.092,-63.036,-62.966,-62.882,-62.783,-62.671,-62.548,-62.421,-62.292,
--62.168,-62.052,-61.947,-61.851,-61.765,-61.681,-61.596,-61.500,-61.388,-61.252,-61.088,-60.894,-60.672,-60.426,-60.164,-59.897,
--59.635,-59.390,-59.171,-58.986,-58.839,-58.728,-58.649,-58.595,-58.553,-58.513,-58.460,-58.386,-58.282,-58.144,-57.972,-57.769,
--57.542,-57.300,-57.052,-56.806,-56.569,-56.343,-56.128,-55.919,-55.710,-55.492,-55.255,-54.992,-54.695,-54.363,-53.996,-53.599,
--53.179,-52.746,-52.311,-51.885,-51.477,-51.094,-50.741,-50.421,-50.134,-49.880,-49.660,-49.471,-49.316,-49.195,-49.109,-49.061,
--49.048,-49.066,-49.109,-49.163,-49.213,-49.237,-49.215,-49.125,-48.950,-48.676,-48.300,-47.826,-47.269,-46.651,-46.003,-45.358,
--44.751,-44.212,-43.767,-43.429,-43.200,-43.072,-43.025,-43.032,-43.058,-43.072,-43.042,-42.946,-42.769,-42.510,-42.176,-41.784,
--41.360,-40.931,-40.523,-40.161,-39.862,-39.633,-39.473,-39.374,-39.320,-39.290,-39.265,-39.223,-39.151,-39.038,-38.883,-38.688,
--38.464,-38.223,-37.978,-37.743,-37.529,-37.342,-37.187,-37.061,-36.961,-36.881,-36.816,-36.760,-36.710,-36.668,-36.636,-36.618,
--36.623,-36.655,-36.720,-36.821,-36.956,-37.122,-37.309,-37.506,-37.701,-37.877,-38.023,-38.125,-38.173,-38.162,-38.087,-37.949,
--37.751,-37.498,-37.198,-36.860,-36.492,-36.103,-35.702,-35.297,-34.894,-34.501,-34.121,-33.758,-33.414,-33.090,-32.785,-32.499,
--32.231,-31.978,-31.740,-31.515,-31.305,-31.109,-30.929,-30.766,-30.622,-30.497,-30.389,-30.295,-30.211,-30.130,-30.046,-29.952,
--29.841,-29.710,-29.556,-29.381,-29.189,-28.989,-28.788,-28.597,-28.424,-28.276,-28.157,-28.064,-27.995,-27.942,-27.894,-27.840,
--27.770,-27.674,-27.548,-27.389,-27.201,-26.986,-26.754,-26.513,-26.269,-26.029,-25.796,-25.569,-25.347,-25.123,-24.893,-24.649,
--24.388,-24.107,-23.807,-23.493,-23.168,-22.842,-22.520,-22.209,-21.913,-21.634,-21.371,-21.123,-20.884,-20.651,-20.422,-20.195,
--19.971,-19.753,-19.546,-19.357,-19.190,-19.048,-18.934,-18.844,-18.774,-18.716,-18.662,-18.604,-18.535,-18.451,-18.352,-18.241,
--18.126,-18.013,-17.913,-17.831,-17.774,-17.739,-17.723,-17.716,-17.706,-17.678,-17.619,-17.519,-17.370,-17.174,-16.936,-16.669,
--16.390,-16.117,-15.871,-15.669,-15.523,-15.442,-15.426,-15.470,-15.564,-15.695,-15.848,-16.009,-16.164,-16.304,-16.422,-16.512,
--16.573,-16.604,-16.602,-16.567,-16.496,-16.384,-16.228,-16.026,-15.777,-15.485,-15.156,-14.801,-14.435,-14.075,-13.738,-13.440,
--13.195,-13.008,-12.880,-12.807,-12.777,-12.773,-12.778,-12.773,-12.740,-12.666,-12.543,-12.370,-12.147,-11.882,-11.586,-11.267,
--10.937,-10.602,-10.269,-9.939,-9.612,-9.285,-8.956,-8.623,-8.286,-7.949,-7.615,-7.292,-6.989,-6.712,-6.469,-6.262,
--6.090,-5.947,-5.825,-5.711,-5.590,-5.448,-5.273,-5.055,-4.790,-4.478,-4.127,-3.745,-3.349,-2.952,-2.572,-2.222,
--1.912,-1.651,-1.440,-1.278,-1.162,-1.085,-1.040,-1.023,-1.029,-1.060,-1.118,-1.209,-1.342,-1.524,-1.763,-2.065,
--2.430,-2.855,-3.330,-3.842,-4.372,-4.899,-5.403,-5.864,-6.265,-6.596,-6.851,-7.033,-7.149,-7.213,-7.239,-7.246,
--7.250,-7.264,-7.297,-7.352,-7.426,-7.513,-7.602,-7.680,-7.736,-7.759,-7.743,-7.686,-7.589,-7.461,-7.310,-7.149,
--6.988,-6.839,-6.706,-6.595,-6.503,-6.427,-6.360,-6.294,-6.221,-6.136,-6.035,-5.917,-5.786,-5.646,-5.505,-5.371,
--5.248,-5.144,-5.058,-4.993,-4.943,-4.905,-4.873,-4.841,-4.805,-4.760,-4.707,-4.645,-4.579,-4.511,-4.447,-4.388,
--4.338,-4.296,-4.261,-4.232,-4.204,-4.174,-4.139,-4.098,-4.051,-4.000,-3.947,-3.897,-3.853,-3.819,-3.796,-3.785,
--3.784,-3.790,-3.799,-3.807,-3.811,-3.808,-3.798,-3.782,-3.764,-3.746,-3.733,-3.729,-3.735,-3.753,-3.780,-3.812,
--3.845,-3.873,-3.889,-3.890,-3.873,-3.837,-3.784,-3.718,-3.643,-3.565,-3.486,-3.409,-3.335,-3.261,-3.183,-3.096,
--2.993,-2.869,-2.720,-2.546,-2.347,-2.129,-1.897,-1.660,-1.428,-1.208,-1.007,-.831,-.682,-.560,-.464,-.391,
--.338,-.304,-.285,-.283,-.296,-.327,-.378,-.448,-.537,-.643,-.763,-.889,-1.016,-1.138,-1.247,-1.340,
--1.413,-1.468,-1.505,-1.529,-1.543,-1.553,-1.560,-1.565,-1.568,-1.564,-1.547,-1.511,-1.449,-1.356,-1.231,-1.073,
--.889,-.684,-.470,-.257,-.056,.126,.282,.412,.518,.608,.690,.776,.875,.995,1.143,1.317,
-1.514,1.726,1.942,2.148,2.332,2.484,2.598,2.670,2.704,2.707,2.691,2.671,2.660,2.674,2.725,2.821,
-2.967,3.161,3.399,3.672,3.970,4.280,4.591,4.893,5.178,5.440,5.677,5.889,6.078,6.249,6.406,6.553,
-6.695,6.834,6.973,7.113,7.253,7.395,7.538,7.682,7.829,7.981,8.142,8.314,8.504,8.716,8.954,9.221,
-9.521,9.852,10.212,10.596,10.996,11.402,11.804,12.189,12.547,12.866,13.139,13.359,13.524,13.634,13.692,13.704,
-13.676,13.615,13.529,13.422,13.300,13.163,13.012,12.844,12.659,12.456,12.233,11.996,11.750,11.504,11.272,11.067,
-10.905,10.412,10.149,9.973,9.898,9.931,10.071,10.308,10.625,10.998,11.400,11.802,12.179,12.509,12.775,12.970,
-13.094,13.155,13.165,13.144,13.109,13.082,13.077,13.108,13.181,13.299,13.457,13.648,13.861,14.085,14.308,14.519,
-14.711,14.881,15.027,15.150,15.256,15.350,15.437,15.523,15.613,15.709,15.813,15.924,16.042,16.163,16.286,16.407,
-16.525,16.639,16.746,16.848,16.944,17.035,17.122,17.206,17.286,17.363,17.437,17.507,17.571,17.629,17.680,17.721,
-17.753,17.773,17.783,17.782,17.771,17.753,17.729,17.705,17.682,17.666,17.659,17.663,17.680,17.710,17.750,17.796,
-17.845,17.890,17.926,17.947,17.951,17.935,17.900,17.849,17.787,17.720,17.655,17.600,17.560,17.539,17.538,17.558,
-17.594,17.641,17.695,17.749,17.797,17.837,17.867,17.886,17.897,17.902,17.905,17.909,17.915,17.923,17.931,17.936,
-17.934,17.920,17.890,17.841,17.774,17.691,17.596,17.497,17.400,17.314,17.244,17.196,17.172,17.170,17.186,17.216,
-17.254,17.291,17.324,17.349,17.364,17.370,17.371,17.370,17.373,17.382,17.399,17.423,17.453,17.483,17.506,17.518,
-17.512,17.487,17.443,17.385,17.318,17.255,17.206,17.184,17.197,17.253,17.354,17.498,17.679,17.885,18.103,18.318,
-18.517,18.686,18.819,18.910,18.961,18.976,18.964,18.935,18.900,18.870,18.853,18.853,18.874,18.914,18.968,19.028,
-19.088,19.137,19.169,19.175,19.150,19.093,19.002,18.879,18.728,18.555,18.367,18.172,17.980,17.799,17.639,17.509,
-17.416,17.366,17.362,17.403,17.489,17.612,17.765,17.936,18.114,18.285,18.438,18.561,18.647,18.691,18.690,18.647,
-18.566,18.454,18.318,18.167,18.009,17.848,17.690,17.538,17.393,17.255,17.123,16.997,16.877,16.765,16.664,16.575,
-16.503,16.450,16.420,16.412,16.424,16.453,16.491,16.531,16.563,16.578,16.566,16.522,16.441,16.324,16.174,15.998,
-15.806,15.610,15.421,15.252,15.112,15.009,14.945,14.919,14.929,14.966,15.022,15.088,15.153,15.212,15.259,15.294,
-15.319,15.339,15.360,15.390,15.436,15.501,15.586,15.686,15.791,15.887,15.958,15.985,15.948,15.832,15.626,15.326,
-14.936,14.466,13.938,13.375,12.807,12.265,11.777,11.367,11.053,10.843,10.737,10.726,10.794,10.919,11.076,11.241,
-11.391,11.508,11.580,11.602,11.574,11.502,11.395,11.265,11.124,10.983,10.850,10.729,10.622,10.528,10.445,10.366,
-10.288,10.207,10.120,10.025,9.922,9.813,9.700,9.583,9.464,9.345,9.224,9.102,8.977,8.848,8.716,8.581,
-8.444,8.308,8.176,8.051,7.936,7.832,7.742,7.665,7.600,7.545,7.496,7.451,7.407,7.363,7.316,7.266,
-7.214,7.161,7.107,7.051,6.995,6.936,6.871,6.798,6.715,6.617,6.504,6.375,6.232,6.076,5.912,5.746,
-5.582,5.425,5.278,5.142,5.016,4.895,4.775,4.646,4.501,4.329,4.123,3.875,3.581,3.238,2.848,2.416,
-1.946,1.449,.934,.411,-.108,-.614,-1.099,-1.556,-1.981,-2.373,-2.733,-3.063,-3.367,-3.653,-3.927,-4.195,
--4.463,-4.738,-5.022,-5.317,-5.622,-5.936,-6.256,-6.577,-6.897,-7.211,-7.518,-7.817,-8.111,-8.402,-8.695,-8.995,
--9.306,-9.632,-9.975,-10.334,-10.707,-11.090,-11.477,-11.863,-12.241,-12.607,-12.958,-13.295,-13.619,-13.936,-14.250,-14.568,
--14.893,-15.231,-15.581,-15.942,-16.310,-16.679,-17.043,-17.396,-17.734,-18.056,-18.364,-18.665,-18.968,-19.285,-19.627,-20.006,
--20.431,-20.906,-21.431,-22.000,-22.604,-23.227,-23.851,-24.460,-25.037,-25.568,-26.043,-26.459,-26.817,-27.122,-27.384,-27.615,
--27.828,-28.034,-28.244,-28.465,-28.700,-28.950,-29.211,-29.480,-29.751,-30.017,-30.276,-30.522,-30.755,-30.975,-31.185,-31.389,
--31.591,-31.797,-32.011,-32.236,-32.475,-32.730,-33.000,-33.282,-33.574,-33.869,-34.162,-34.447,-34.716,-34.965,-35.187,-35.379,
--35.541,-35.672,-35.778,-35.865,-35.942,-36.019,-36.106,-36.215,-36.354,-36.530,-36.744,-36.997,-37.284,-37.596,-37.924,-38.255,
--38.578,-38.884,-39.165,-39.417,-39.641,-39.841,-40.024,-40.199,-40.377,-40.566,-40.774,-41.004,-41.256,-41.527,-41.808,-42.091,
--42.364,-42.619,-42.845,-43.040,-43.202,-43.336,-43.450,-43.556,-43.668,-43.800,-43.965,-44.174,-44.431,-44.737,-45.086,-45.467,
--45.862,-46.253,-46.618,-46.937,-47.191,-47.368,-47.458,-47.461,-47.384,-47.239,-47.046,-46.827,-46.608,-46.415,-46.272,-46.198,
--46.209,-46.310,-46.503,-46.781,-47.131,-47.536,-47.973,-48.421,-48.856,-49.261,-49.618,-49.917,-50.153,-50.325,-50.439,-50.504,
--50.533,-50.539,-50.538,-50.542,-50.563,-50.611,-50.691,-50.807,-50.958,-51.142,-51.355,-51.592,-51.848,-52.115,-52.391,-52.669,
--52.947,-53.222,-53.493,-53.758,-54.017,-54.270,-54.515,-54.752,-54.979,-55.195,-55.398,-55.586,-55.760,-55.917,-56.059,-56.187,
--56.303,-56.411,-56.513,-56.614,-56.719,-56.829,-56.948,-57.077,-57.213,-57.355,-57.499,-57.640,-57.772,-57.890,-57.991,-58.070,
--58.129,-58.167,-58.191,-58.204,-58.216,-58.233,-58.262,-58.310,-58.379,-58.471,-58.583,-58.709,-58.841,-58.970,-59.086,-59.178,
--59.238,-59.260,-59.241,-59.179,-59.075,-58.934,-58.758,-58.552,-58.318,-58.058,-57.769,-57.448,-57.090,-56.691,-56.243,-55.744,
--55.193,-54.595,-53.957,-53.293,-52.621,-51.962,-51.341,-50.782,-50.309,-49.942,-49.699,-49.591,-49.622,-49.793,-50.095,-50.516,
--51.038,-51.642,-52.304,-53.002,-53.713,-54.415,-55.088,-55.717,-56.289,-56.793,-57.223,-57.578,-57.858,-58.067,-58.213,-58.305,
--58.355,-58.374,-58.375,-58.369,-58.368,-58.380,-58.411,-58.463,-58.538,-58.633,-58.744,-58.865,-58.988,-59.107,-59.213,-59.302,
--59.368,-59.410,-59.426,-59.417,-59.388,-59.343,-59.287,-59.229,-59.173,-59.127,-59.096,-59.085,-59.096,-59.130,-59.187,-59.265,
--59.359,-59.467,-59.583,-59.704,-59.825,-59.946,-60.065,-60.182,-60.300,-60.422,-60.550,-60.689,-60.838,-61.000,-61.174,-61.356,
--61.542,-61.728,-61.909,-62.079,-62.235,-62.375,-62.502,-62.618,-62.729,-62.841,-62.963,-63.101,-63.260,-63.442,-63.647,-63.870,
--64.103,-64.336,-64.556,-64.752,-64.913,-65.032,-65.103,-65.128,-65.112,-65.064,-64.996,-64.921,-64.855,-64.809,-64.793,-64.812,
--64.867,-64.954,-65.064,-65.186,-65.306,-65.411,-65.488,-65.529,-65.530,-65.488,-65.409,-65.300,-65.173,-65.041,-64.917,-64.812,
--64.737,-64.697,-64.694,-64.726,-64.786,-64.865,-64.953,-65.039,-65.112,-65.164,-65.188,-65.182,-65.148,-65.088,-65.010,-64.922,
--64.831,-64.747,-64.677,-64.624,-64.591,-64.578,-64.583,-64.600,-64.625,-64.651,-64.672,-64.684,-64.683,-64.667,-64.638,-64.595,
--64.543,-64.485,-64.424,-64.364,-64.306,-64.251,-64.201,-64.152,-64.104,-64.055,-64.002,-63.943,-63.878,-63.808,-63.733,-63.656,
--63.579,-63.506,-63.438,-63.378,-63.325,-63.279,-63.237,-63.197,-63.153,-63.103,-63.041,-62.965,-62.873,-62.764,-62.642,-62.507,
--62.365,-62.218,-62.072,-61.929,-61.792,-61.661,-61.534,-61.409,-61.282,-61.151,-61.012,-60.864,-60.706,-60.541,-60.372,-60.205,
--60.046,-59.901,-59.774,-59.669,-59.584,-59.516,-59.457,-59.396,-59.322,-59.223,-59.086,-58.903,-58.670,-58.384,-58.052,-57.681,
--57.283,-56.874,-56.469,-56.079,-55.716,-55.385,-55.087,-54.818,-54.568,-54.326,-54.078,-53.814,-53.522,-53.198,-52.838,-52.448,
--52.034,-51.608,-51.182,-50.769,-50.381,-50.024,-49.704,-49.421,-49.172,-48.954,-48.759,-48.583,-48.422,-48.274,-48.140,-48.025,
--47.930,-47.861,-47.818,-47.799,-47.797,-47.801,-47.796,-47.763,-47.683,-47.539,-47.318,-47.015,-46.631,-46.176,-45.671,-45.139,
--44.610,-44.112,-43.672,-43.309,-43.035,-42.849,-42.743,-42.698,-42.689,-42.687,-42.665,-42.598,-42.470,-42.274,-42.012,-41.695,
--41.343,-40.979,-40.629,-40.315,-40.054,-39.857,-39.724,-39.649,-39.618,-39.613,-39.612,-39.596,-39.550,-39.463,-39.332,-39.161,
--38.958,-38.736,-38.509,-38.291,-38.093,-37.920,-37.774,-37.651,-37.545,-37.446,-37.346,-37.238,-37.120,-36.993,-36.864,-36.745,
--36.648,-36.588,-36.579,-36.628,-36.739,-36.910,-37.131,-37.386,-37.654,-37.912,-38.136,-38.305,-38.399,-38.408,-38.325,-38.152,
--37.896,-37.569,-37.188,-36.770,-36.333,-35.893,-35.462,-35.050,-34.663,-34.303,-33.968,-33.655,-33.359,-33.074,-32.795,-32.517,
--32.240,-31.960,-31.681,-31.404,-31.133,-30.874,-30.630,-30.406,-30.206,-30.030,-29.879,-29.751,-29.640,-29.542,-29.449,-29.354,
--29.251,-29.133,-28.998,-28.844,-28.672,-28.487,-28.295,-28.104,-27.922,-27.757,-27.614,-27.498,-27.408,-27.344,-27.300,-27.270,
--27.244,-27.214,-27.173,-27.113,-27.030,-26.922,-26.790,-26.635,-26.461,-26.272,-26.074,-25.869,-25.660,-25.450,-25.238,-25.026,
--24.811,-24.594,-24.373,-24.149,-23.919,-23.685,-23.446,-23.200,-22.948,-22.688,-22.418,-22.139,-21.851,-21.554,-21.253,-20.952,
--20.659,-20.380,-20.124,-19.897,-19.706,-19.552,-19.435,-19.350,-19.292,-19.248,-19.209,-19.164,-19.104,-19.023,-18.918,-18.793,
--18.653,-18.507,-18.365,-18.239,-18.136,-18.060,-18.013,-17.991,-17.984,-17.982,-17.972,-17.941,-17.879,-17.779,-17.641,-17.468,
--17.267,-17.051,-16.834,-16.629,-16.448,-16.300,-16.190,-16.119,-16.084,-16.077,-16.089,-16.113,-16.139,-16.160,-16.172,-16.171,
--16.159,-16.133,-16.094,-16.042,-15.974,-15.886,-15.776,-15.638,-15.468,-15.265,-15.031,-14.771,-14.493,-14.210,-13.934,-13.681,
--13.462,-13.288,-13.164,-13.090,-13.058,-13.058,-13.073,-13.088,-13.083,-13.042,-12.954,-12.809,-12.605,-12.345,-12.034,-11.683,
--11.302,-10.903,-10.495,-10.085,-9.680,-9.281,-8.889,-8.505,-8.130,-7.763,-7.409,-7.072,-6.758,-6.473,-6.222,-6.012,
--5.842,-5.712,-5.617,-5.547,-5.490,-5.434,-5.365,-5.269,-5.138,-4.964,-4.746,-4.485,-4.188,-3.865,-3.526,-3.185,
--2.854,-2.544,-2.265,-2.024,-1.826,-1.676,-1.578,-1.534,-1.547,-1.621,-1.760,-1.968,-2.246,-2.596,-3.016,-3.499,
--4.034,-4.609,-5.203,-5.796,-6.366,-6.889,-7.347,-7.723,-8.007,-8.198,-8.299,-8.321,-8.280,-8.197,-8.093,-7.991,
--7.909,-7.859,-7.850,-7.884,-7.954,-8.050,-8.159,-8.265,-8.352,-8.408,-8.425,-8.397,-8.327,-8.221,-8.089,-7.942,
--7.793,-7.652,-7.528,-7.425,-7.344,-7.282,-7.232,-7.187,-7.139,-7.080,-7.005,-6.913,-6.804,-6.683,-6.555,-6.427,
--6.306,-6.197,-6.105,-6.031,-5.973,-5.929,-5.894,-5.861,-5.827,-5.787,-5.739,-5.683,-5.620,-5.554,-5.486,-5.421,
--5.362,-5.308,-5.261,-5.217,-5.175,-5.131,-5.082,-5.025,-4.960,-4.887,-4.807,-4.724,-4.641,-4.562,-4.490,-4.427,
--4.373,-4.327,-4.285,-4.246,-4.206,-4.161,-4.111,-4.055,-3.995,-3.932,-3.871,-3.815,-3.766,-3.727,-3.697,-3.675,
--3.657,-3.639,-3.616,-3.584,-3.540,-3.482,-3.409,-3.325,-3.233,-3.135,-3.037,-2.942,-2.850,-2.761,-2.674,-2.583,
--2.484,-2.372,-2.241,-2.091,-1.919,-1.728,-1.523,-1.311,-1.098,-.894,-.704,-.537,-.393,-.276,-.185,-.117,
--.069,-.038,-.021,-.016,-.024,-.045,-.081,-.134,-.205,-.295,-.401,-.519,-.644,-.769,-.886,-.989,
--1.073,-1.133,-1.171,-1.187,-1.187,-1.175,-1.157,-1.140,-1.126,-1.118,-1.113,-1.109,-1.100,-1.079,-1.040,-.979,
--.892,-.781,-.648,-.500,-.345,-.191,-.047,.080,.186,.271,.337,.389,.435,.482,.537,.607,
-.696,.803,.927,1.063,1.205,1.348,1.485,1.614,1.735,1.850,1.964,2.085,2.221,2.380,2.569,2.792,
-3.048,3.334,3.643,3.965,4.289,4.602,4.895,5.159,5.391,5.591,5.761,5.910,6.046,6.181,6.325,6.487,
-6.671,6.881,7.115,7.367,7.630,7.895,8.150,8.388,8.602,8.791,8.953,9.096,9.227,9.357,9.498,9.663,
-9.861,10.098,10.379,10.701,11.057,11.437,11.826,12.210,12.572,12.898,13.176,13.399,13.565,13.674,13.733,13.751,
-13.737,13.702,13.655,13.602,13.545,13.482,13.407,13.311,13.186,13.020,12.806,12.542,12.229,11.876,11.496,11.110,
-10.740,10.412,10.079,9.765,9.540,9.423,9.424,9.542,9.768,10.085,10.466,10.882,11.302,11.695,12.037,12.308,
-12.499,12.609,12.646,12.623,12.561,12.484,12.413,12.369,12.370,12.424,12.537,12.705,12.919,13.168,13.437,13.708,
-13.968,14.206,14.412,14.584,14.721,14.829,14.915,14.986,15.054,15.127,15.211,15.312,15.430,15.567,15.717,15.876,
-16.039,16.199,16.351,16.489,16.612,16.718,16.808,16.884,16.949,17.007,17.062,17.116,17.172,17.229,17.287,17.344,
-17.395,17.438,17.467,17.480,17.475,17.451,17.409,17.353,17.289,17.222,17.159,17.108,17.075,17.063,17.076,17.111,
-17.167,17.237,17.316,17.395,17.466,17.523,17.561,17.576,17.570,17.543,17.502,17.451,17.397,17.348,17.308,17.281,
-17.271,17.275,17.293,17.321,17.355,17.390,17.422,17.448,17.465,17.473,17.471,17.460,17.443,17.419,17.390,17.357,
-17.319,17.278,17.233,17.183,17.131,17.076,17.021,16.969,16.921,16.881,16.849,16.826,16.812,16.805,16.802,16.799,
-16.794,16.782,16.763,16.737,16.704,16.670,16.637,16.611,16.598,16.601,16.621,16.658,16.708,16.767,16.826,16.877,
-16.913,16.928,16.917,16.881,16.823,16.750,16.671,16.599,16.544,16.517,16.527,16.579,16.673,16.806,16.971,17.158,
-17.355,17.549,17.728,17.883,18.008,18.099,18.156,18.183,18.187,18.174,18.154,18.136,18.125,18.126,18.144,18.178,
-18.226,18.284,18.345,18.403,18.451,18.480,18.483,18.455,18.393,18.294,18.160,17.995,17.805,17.600,17.392,17.193,
-17.017,16.877,16.783,16.745,16.765,16.845,16.979,17.158,17.370,17.598,17.825,18.036,18.215,18.349,18.432,18.459,
-18.432,18.354,18.235,18.083,17.911,17.727,17.540,17.358,17.183,17.019,16.865,16.721,16.586,16.460,16.343,16.238,
-16.147,16.075,16.023,15.996,15.993,16.011,16.046,16.089,16.130,16.157,16.158,16.121,16.040,15.908,15.727,15.501,
-15.239,14.957,14.668,14.389,14.137,13.924,13.758,13.645,13.582,13.564,13.581,13.622,13.674,13.726,13.768,13.796,
-13.810,13.812,13.811,13.815,13.834,13.877,13.948,14.048,14.171,14.308,14.441,14.553,14.622,14.628,14.554,14.391,
-14.134,13.789,13.367,12.891,12.386,11.881,11.405,10.986,10.645,10.396,10.244,10.185,10.208,10.292,10.415,10.551,
-10.676,10.768,10.812,10.799,10.727,10.601,10.430,10.229,10.014,9.800,9.602,9.429,9.288,9.182,9.107,9.058,
-9.029,9.010,8.993,8.970,8.938,8.891,8.830,8.755,8.668,8.571,8.468,8.361,8.251,8.140,8.028,7.915,
-7.801,7.686,7.569,7.453,7.337,7.225,7.118,7.019,6.930,6.853,6.788,6.737,6.699,6.673,6.657,6.647,
-6.642,6.638,6.630,6.616,6.593,6.558,6.509,6.444,6.364,6.269,6.162,6.045,5.922,5.797,5.673,5.554,
-5.442,5.340,5.247,5.161,5.079,4.995,4.903,4.796,4.667,4.508,4.313,4.077,3.796,3.470,3.098,2.683,
-2.230,1.744,1.233,.705,.169,-.367,-.893,-1.403,-1.890,-2.348,-2.776,-3.171,-3.534,-3.867,-4.175,-4.462,
--4.733,-4.995,-5.253,-5.510,-5.771,-6.037,-6.308,-6.586,-6.868,-7.153,-7.442,-7.733,-8.029,-8.329,-8.638,-8.957,
--9.288,-9.635,-9.996,-10.370,-10.755,-11.145,-11.535,-11.919,-12.291,-12.645,-12.980,-13.296,-13.595,-13.881,-14.162,-14.443,
--14.731,-15.033,-15.350,-15.684,-16.031,-16.386,-16.742,-17.093,-17.431,-17.753,-18.057,-18.346,-18.627,-18.908,-19.202,-19.521,
--19.877,-20.278,-20.730,-21.231,-21.776,-22.354,-22.952,-23.552,-24.137,-24.693,-25.206,-25.669,-26.079,-26.440,-26.758,-27.045,
--27.314,-27.576,-27.844,-28.125,-28.424,-28.741,-29.071,-29.409,-29.745,-30.070,-30.375,-30.655,-30.906,-31.128,-31.327,-31.508,
--31.680,-31.854,-32.040,-32.245,-32.477,-32.738,-33.028,-33.344,-33.679,-34.024,-34.369,-34.703,-35.016,-35.298,-35.543,-35.746,
--35.907,-36.027,-36.113,-36.172,-36.215,-36.253,-36.300,-36.366,-36.463,-36.598,-36.777,-36.999,-37.263,-37.563,-37.889,-38.229,
--38.572,-38.905,-39.218,-39.503,-39.756,-39.976,-40.167,-40.337,-40.494,-40.651,-40.819,-41.008,-41.225,-41.475,-41.757,-42.067,
--42.396,-42.734,-43.068,-43.386,-43.677,-43.935,-44.154,-44.337,-44.487,-44.616,-44.736,-44.859,-45.001,-45.173,-45.383,-45.634,
--45.925,-46.246,-46.586,-46.927,-47.249,-47.532,-47.759,-47.914,-47.989,-47.980,-47.893,-47.740,-47.538,-47.311,-47.084,-46.884,
--46.736,-46.660,-46.671,-46.777,-46.979,-47.270,-47.634,-48.053,-48.504,-48.964,-49.408,-49.817,-50.175,-50.470,-50.700,-50.866,
--50.974,-51.036,-51.067,-51.081,-51.095,-51.121,-51.172,-51.255,-51.374,-51.531,-51.723,-51.946,-52.194,-52.459,-52.736,-53.019,
--53.301,-53.580,-53.853,-54.118,-54.375,-54.623,-54.860,-55.086,-55.300,-55.500,-55.683,-55.849,-55.995,-56.120,-56.227,-56.315,
--56.390,-56.455,-56.515,-56.578,-56.647,-56.729,-56.827,-56.943,-57.075,-57.222,-57.379,-57.539,-57.697,-57.844,-57.976,-58.086,
--58.174,-58.238,-58.280,-58.307,-58.322,-58.335,-58.351,-58.377,-58.419,-58.478,-58.555,-58.649,-58.756,-58.870,-58.984,-59.093,
--59.190,-59.270,-59.330,-59.366,-59.375,-59.357,-59.309,-59.226,-59.105,-58.939,-58.722,-58.445,-58.102,-57.688,-57.200,-56.640,
--56.014,-55.335,-54.621,-53.894,-53.180,-52.508,-51.905,-51.398,-51.007,-50.750,-50.634,-50.661,-50.824,-51.110,-51.501,-51.975,
--52.505,-53.070,-53.645,-54.211,-54.753,-55.258,-55.720,-56.135,-56.503,-56.825,-57.103,-57.341,-57.542,-57.710,-57.846,-57.954,
--58.038,-58.099,-58.143,-58.176,-58.202,-58.228,-58.262,-58.308,-58.372,-58.455,-58.559,-58.683,-58.821,-58.967,-59.114,-59.253,
--59.375,-59.473,-59.540,-59.574,-59.573,-59.538,-59.475,-59.391,-59.293,-59.192,-59.097,-59.016,-58.958,-58.927,-58.926,-58.957,
--59.017,-59.105,-59.216,-59.346,-59.489,-59.642,-59.802,-59.966,-60.134,-60.305,-60.479,-60.657,-60.837,-61.020,-61.203,-61.384,
--61.559,-61.724,-61.878,-62.016,-62.139,-62.247,-62.344,-62.434,-62.523,-62.619,-62.729,-62.858,-63.011,-63.189,-63.391,-63.612,
--63.843,-64.075,-64.297,-64.498,-64.668,-64.799,-64.888,-64.934,-64.941,-64.917,-64.872,-64.816,-64.761,-64.718,-64.695,-64.695,
--64.721,-64.770,-64.834,-64.907,-64.978,-65.037,-65.076,-65.090,-65.075,-65.032,-64.964,-64.879,-64.785,-64.692,-64.607,-64.541,
--64.497,-64.479,-64.486,-64.516,-64.562,-64.618,-64.676,-64.729,-64.769,-64.794,-64.800,-64.789,-64.762,-64.724,-64.681,-64.638,
--64.601,-64.574,-64.561,-64.561,-64.574,-64.596,-64.624,-64.651,-64.673,-64.684,-64.681,-64.661,-64.623,-64.570,-64.504,-64.429,
--64.352,-64.276,-64.208,-64.152,-64.109,-64.081,-64.068,-64.065,-64.070,-64.078,-64.083,-64.080,-64.066,-64.038,-63.995,-63.937,
--63.865,-63.783,-63.695,-63.604,-63.513,-63.426,-63.344,-63.268,-63.195,-63.124,-63.051,-62.974,-62.889,-62.794,-62.687,-62.570,
--62.441,-62.305,-62.163,-62.019,-61.876,-61.737,-61.603,-61.475,-61.353,-61.236,-61.123,-61.014,-60.906,-60.801,-60.698,-60.599,
--60.505,-60.417,-60.335,-60.256,-60.176,-60.091,-59.991,-59.866,-59.705,-59.499,-59.239,-58.918,-58.535,-58.094,-57.601,-57.070,
--56.517,-55.958,-55.413,-54.899,-54.427,-54.008,-53.643,-53.329,-53.058,-52.819,-52.595,-52.372,-52.138,-51.883,-51.602,-51.294,
--50.966,-50.626,-50.285,-49.957,-49.650,-49.374,-49.132,-48.922,-48.739,-48.575,-48.420,-48.263,-48.096,-47.913,-47.714,-47.502,
--47.285,-47.073,-46.877,-46.706,-46.567,-46.463,-46.389,-46.337,-46.294,-46.243,-46.167,-46.052,-45.886,-45.664,-45.389,-45.068,
--44.716,-44.351,-43.993,-43.660,-43.368,-43.126,-42.934,-42.787,-42.674,-42.577,-42.478,-42.359,-42.205,-42.008,-41.764,-41.479,
--41.166,-40.840,-40.522,-40.228,-39.977,-39.778,-39.634,-39.544,-39.497,-39.480,-39.475,-39.465,-39.436,-39.377,-39.283,-39.157,
--39.004,-38.835,-38.662,-38.498,-38.352,-38.229,-38.129,-38.047,-37.975,-37.899,-37.810,-37.696,-37.551,-37.377,-37.179,-36.970,
--36.766,-36.589,-36.458,-36.390,-36.399,-36.487,-36.653,-36.884,-37.158,-37.451,-37.734,-37.976,-38.151,-38.238,-38.223,-38.101,
--37.876,-37.559,-37.168,-36.725,-36.254,-35.779,-35.318,-34.887,-34.495,-34.147,-33.840,-33.568,-33.321,-33.089,-32.861,-32.627,
--32.380,-32.117,-31.838,-31.545,-31.244,-30.943,-30.649,-30.369,-30.111,-29.879,-29.675,-29.498,-29.347,-29.217,-29.100,-28.990,
--28.879,-28.761,-28.631,-28.485,-28.323,-28.146,-27.956,-27.759,-27.561,-27.370,-27.191,-27.030,-26.891,-26.778,-26.689,-26.624,
--26.580,-26.551,-26.531,-26.515,-26.496,-26.468,-26.428,-26.371,-26.296,-26.202,-26.089,-25.959,-25.813,-25.656,-25.491,-25.320,
--25.147,-24.975,-24.804,-24.637,-24.473,-24.310,-24.144,-23.973,-23.790,-23.591,-23.372,-23.128,-22.860,-22.568,-22.255,-21.929,
--21.598,-21.273,-20.964,-20.682,-20.436,-20.232,-20.070,-19.950,-19.865,-19.805,-19.759,-19.716,-19.663,-19.591,-19.495,-19.374,
--19.230,-19.070,-18.903,-18.742,-18.596,-18.474,-18.383,-18.323,-18.292,-18.284,-18.288,-18.295,-18.292,-18.269,-18.218,-18.137,
--18.025,-17.886,-17.727,-17.555,-17.380,-17.210,-17.053,-16.911,-16.787,-16.680,-16.588,-16.506,-16.431,-16.360,-16.290,-16.220,
--16.150,-16.078,-16.007,-15.934,-15.859,-15.777,-15.685,-15.578,-15.450,-15.299,-15.123,-14.923,-14.704,-14.474,-14.243,-14.024,
--13.828,-13.666,-13.545,-13.468,-13.434,-13.435,-13.459,-13.492,-13.515,-13.512,-13.468,-13.370,-13.212,-12.991,-12.709,-12.375,
--11.998,-11.591,-11.165,-10.732,-10.301,-9.879,-9.470,-9.075,-8.694,-8.326,-7.972,-7.630,-7.304,-6.996,-6.711,-6.454,
--6.229,-6.039,-5.886,-5.768,-5.682,-5.619,-5.572,-5.529,-5.480,-5.414,-5.321,-5.196,-5.035,-4.836,-4.604,-4.343,
--4.061,-3.769,-3.477,-3.197,-2.942,-2.723,-2.555,-2.446,-2.409,-2.451,-2.581,-2.802,-3.115,-3.517,-4.001,-4.556,
--5.163,-5.804,-6.454,-7.089,-7.685,-8.217,-8.667,-9.022,-9.275,-9.424,-9.477,-9.449,-9.356,-9.220,-9.065,-8.912,
--8.780,-8.681,-8.624,-8.610,-8.636,-8.691,-8.765,-8.841,-8.908,-8.954,-8.970,-8.952,-8.901,-8.821,-8.721,-8.608,
--8.494,-8.386,-8.291,-8.212,-8.149,-8.100,-8.059,-8.019,-7.975,-7.920,-7.850,-7.764,-7.664,-7.553,-7.437,-7.323,
--7.215,-7.120,-7.041,-6.978,-6.929,-6.892,-6.861,-6.832,-6.799,-6.758,-6.708,-6.648,-6.580,-6.507,-6.434,-6.363,
--6.299,-6.243,-6.195,-6.153,-6.113,-6.072,-6.024,-5.966,-5.896,-5.811,-5.713,-5.604,-5.488,-5.371,-5.256,-5.148,
--5.049,-4.961,-4.884,-4.814,-4.749,-4.685,-4.619,-4.549,-4.472,-4.389,-4.301,-4.210,-4.118,-4.029,-3.944,-3.865,
--3.790,-3.718,-3.646,-3.573,-3.495,-3.410,-3.317,-3.216,-3.109,-2.999,-2.887,-2.776,-2.670,-2.567,-2.469,-2.372,
--2.275,-2.172,-2.061,-1.937,-1.801,-1.651,-1.490,-1.321,-1.149,-.980,-.821,-.675,-.547,-.439,-.351,-.281,
--.228,-.188,-.160,-.140,-.129,-.128,-.137,-.161,-.200,-.257,-.332,-.422,-.525,-.635,-.743,-.844,
--.929,-.992,-1.031,-1.044,-1.034,-1.004,-.962,-.914,-.869,-.833,-.809,-.800,-.803,-.815,-.829,-.838,
--.836,-.816,-.775,-.712,-.629,-.530,-.421,-.309,-.202,-.107,-.027,.036,.081,.112,.133,.148,
-.166,.190,.226,.277,.347,.436,.545,.676,.829,1.006,1.209,1.441,1.703,1.997,2.322,2.675,
-3.051,3.442,3.837,4.225,4.593,4.929,5.224,5.472,5.671,5.825,5.941,6.031,6.111,6.197,6.305,6.449,
-6.639,6.879,7.169,7.502,7.867,8.249,8.630,8.994,9.327,9.616,9.857,10.048,10.196,10.310,10.405,10.496,
-10.599,10.728,10.892,11.095,11.337,11.611,11.906,12.207,12.497,12.761,12.984,13.156,13.274,13.337,13.351,13.326,
-13.275,13.212,13.149,13.096,13.057,13.033,13.016,12.998,12.963,12.895,12.780,12.606,12.366,12.061,11.699,11.296,
-10.873,10.458,10.079,9.683,9.383,9.161,9.034,9.012,9.099,9.286,9.559,9.895,10.268,10.650,11.013,11.333,
-11.593,11.782,11.899,11.947,11.939,11.893,11.828,11.765,11.724,11.720,11.764,11.860,12.007,12.199,12.425,12.672,
-12.924,13.168,13.392,13.588,13.752,13.883,13.985,14.064,14.130,14.191,14.256,14.334,14.430,14.545,14.681,14.835,
-15.000,15.171,15.340,15.501,15.649,15.778,15.888,15.979,16.053,16.114,16.167,16.216,16.267,16.323,16.386,16.456,
-16.531,16.609,16.686,16.755,16.814,16.857,16.882,16.889,16.878,16.853,16.819,16.781,16.745,16.719,16.706,16.710,
-16.732,16.772,16.828,16.893,16.963,17.033,17.095,17.145,17.180,17.199,17.201,17.189,17.166,17.137,17.106,17.078,
-17.056,17.043,17.041,17.048,17.065,17.089,17.118,17.148,17.178,17.204,17.227,17.243,17.254,17.258,17.256,17.247,
-17.231,17.209,17.181,17.147,17.107,17.062,17.014,16.964,16.912,16.860,16.809,16.759,16.710,16.661,16.611,16.559,
-16.502,16.441,16.377,16.309,16.241,16.177,16.122,16.081,16.059,16.059,16.083,16.131,16.201,16.285,16.376,16.465,
-16.542,16.596,16.621,16.610,16.561,16.477,16.362,16.226,16.080,15.938,15.813,15.717,15.660,15.649,15.687,15.773,
-15.901,16.065,16.251,16.449,16.646,16.829,16.989,17.118,17.212,17.268,17.291,17.284,17.254,17.210,17.162,17.118,
-17.087,17.075,17.084,17.114,17.164,17.227,17.294,17.356,17.401,17.420,17.403,17.344,17.242,17.100,16.922,16.722,
-16.514,16.313,16.139,16.007,15.930,15.918,15.975,16.098,16.279,16.504,16.756,17.014,17.258,17.470,17.633,17.737,
-17.777,17.753,17.670,17.539,17.372,17.183,16.985,16.790,16.606,16.439,16.290,16.159,16.043,15.937,15.837,15.741,
-15.648,15.557,15.472,15.396,15.332,15.283,15.250,15.233,15.228,15.227,15.223,15.205,15.163,15.088,14.975,14.819,
-14.624,14.393,14.138,13.870,13.603,13.351,13.128,12.942,12.801,12.706,12.655,12.642,12.659,12.696,12.743,12.792,
-12.839,12.880,12.915,12.949,12.986,13.032,13.090,13.162,13.246,13.338,13.427,13.501,13.546,13.546,13.489,13.363,
-13.165,12.896,12.563,12.180,11.766,11.343,10.935,10.563,10.246,9.999,9.826,9.729,9.698,9.722,9.780,9.854,
-9.924,9.971,9.982,9.949,9.870,9.748,9.591,9.413,9.227,9.048,8.887,8.754,8.653,8.586,8.550,8.536,
-8.536,8.541,8.540,8.526,8.494,8.440,8.367,8.276,8.172,8.063,7.952,7.846,7.748,7.659,7.578,7.504,
-7.432,7.360,7.283,7.199,7.106,7.004,6.897,6.788,6.680,6.581,6.494,6.424,6.372,6.340,6.325,6.323,
-6.330,6.340,6.344,6.338,6.316,6.274,6.211,6.128,6.028,5.915,5.794,5.673,5.557,5.450,5.355,5.275,
-5.206,5.146,5.088,5.024,4.948,4.850,4.724,4.562,4.360,4.117,3.832,3.508,3.148,2.758,2.343,1.910,
-1.465,1.013,.557,.102,-.349,-.795,-1.235,-1.665,-2.085,-2.494,-2.889,-3.268,-3.631,-3.976,-4.302,-4.610,
--4.901,-5.177,-5.440,-5.693,-5.938,-6.180,-6.419,-6.660,-6.904,-7.153,-7.410,-7.676,-7.953,-8.244,-8.551,-8.875,
--9.217,-9.579,-9.957,-10.350,-10.753,-11.160,-11.565,-11.960,-12.340,-12.698,-13.031,-13.338,-13.622,-13.886,-14.137,-14.383,
--14.632,-14.892,-15.169,-15.466,-15.784,-16.119,-16.466,-16.819,-17.169,-17.510,-17.836,-18.145,-18.438,-18.721,-19.001,-19.289,
--19.596,-19.931,-20.305,-20.720,-21.178,-21.675,-22.202,-22.747,-23.296,-23.835,-24.350,-24.831,-25.272,-25.671,-26.030,-26.355,
--26.657,-26.947,-27.234,-27.529,-27.838,-28.163,-28.503,-28.854,-29.208,-29.556,-29.890,-30.202,-30.486,-30.741,-30.968,-31.172,
--31.361,-31.545,-31.734,-31.937,-32.164,-32.418,-32.702,-33.013,-33.347,-33.694,-34.047,-34.393,-34.722,-35.025,-35.295,-35.526,
--35.718,-35.871,-35.989,-36.078,-36.148,-36.207,-36.264,-36.329,-36.410,-36.515,-36.648,-36.812,-37.008,-37.235,-37.488,-37.764,
--38.055,-38.354,-38.654,-38.949,-39.232,-39.501,-39.752,-39.987,-40.207,-40.416,-40.620,-40.823,-41.032,-41.251,-41.484,-41.730,
--41.990,-42.260,-42.534,-42.808,-43.074,-43.327,-43.562,-43.776,-43.971,-44.149,-44.316,-44.480,-44.651,-44.838,-45.050,-45.292,
--45.568,-45.875,-46.207,-46.555,-46.905,-47.240,-47.543,-47.799,-47.994,-48.119,-48.169,-48.147,-48.062,-47.927,-47.762,-47.588,
--47.429,-47.308,-47.243,-47.249,-47.335,-47.503,-47.749,-48.060,-48.422,-48.815,-49.220,-49.615,-49.984,-50.313,-50.593,-50.820,
--50.997,-51.130,-51.229,-51.307,-51.377,-51.451,-51.540,-51.652,-51.792,-51.960,-52.154,-52.372,-52.606,-52.851,-53.099,-53.347,
--53.590,-53.826,-54.054,-54.277,-54.494,-54.709,-54.922,-55.134,-55.345,-55.552,-55.752,-55.942,-56.118,-56.276,-56.414,-56.531,
--56.627,-56.704,-56.769,-56.824,-56.878,-56.935,-57.002,-57.081,-57.176,-57.286,-57.408,-57.538,-57.671,-57.801,-57.923,-58.030,
--58.120,-58.190,-58.243,-58.279,-58.304,-58.322,-58.337,-58.355,-58.380,-58.414,-58.457,-58.509,-58.568,-58.632,-58.697,-58.761,
--58.824,-58.883,-58.939,-58.993,-59.044,-59.092,-59.134,-59.164,-59.176,-59.158,-59.099,-58.984,-58.800,-58.536,-58.183,-57.739,
--57.208,-56.600,-55.934,-55.235,-54.532,-53.857,-53.245,-52.725,-52.324,-52.062,-51.949,-51.985,-52.163,-52.466,-52.870,-53.346,
--53.864,-54.395,-54.912,-55.393,-55.822,-56.191,-56.496,-56.742,-56.935,-57.086,-57.206,-57.305,-57.393,-57.476,-57.558,-57.639,
--57.719,-57.796,-57.868,-57.932,-57.988,-58.039,-58.086,-58.135,-58.191,-58.258,-58.340,-58.441,-58.560,-58.695,-58.840,-58.990,
--59.135,-59.266,-59.375,-59.454,-59.499,-59.506,-59.477,-59.415,-59.326,-59.219,-59.103,-58.989,-58.885,-58.801,-58.742,-58.713,
--58.717,-58.755,-58.823,-58.922,-59.046,-59.193,-59.358,-59.540,-59.734,-59.937,-60.147,-60.360,-60.573,-60.783,-60.985,-61.175,
--61.350,-61.505,-61.639,-61.751,-61.843,-61.917,-61.980,-62.037,-62.097,-62.167,-62.255,-62.366,-62.504,-62.669,-62.858,-63.065,
--63.282,-63.499,-63.705,-63.889,-64.044,-64.163,-64.243,-64.285,-64.293,-64.274,-64.236,-64.191,-64.148,-64.115,-64.098,-64.099,
--64.119,-64.155,-64.200,-64.248,-64.292,-64.323,-64.338,-64.333,-64.308,-64.265,-64.211,-64.150,-64.091,-64.040,-64.004,-63.986,
--63.988,-64.009,-64.045,-64.090,-64.138,-64.181,-64.215,-64.235,-64.237,-64.224,-64.196,-64.160,-64.122,-64.088,-64.065,-64.058,
--64.072,-64.108,-64.165,-64.237,-64.321,-64.408,-64.489,-64.558,-64.608,-64.632,-64.629,-64.597,-64.539,-64.460,-64.366,-64.264,
--64.163,-64.069,-63.990,-63.930,-63.892,-63.877,-63.882,-63.904,-63.938,-63.978,-64.017,-64.049,-64.068,-64.070,-64.053,-64.015,
--63.958,-63.884,-63.797,-63.699,-63.596,-63.491,-63.387,-63.287,-63.191,-63.100,-63.013,-62.928,-62.844,-62.758,-62.670,-62.580,
--62.486,-62.391,-62.296,-62.202,-62.112,-62.026,-61.945,-61.868,-61.796,-61.724,-61.652,-61.576,-61.493,-61.401,-61.297,-61.180,
--61.050,-60.905,-60.744,-60.566,-60.370,-60.151,-59.905,-59.628,-59.314,-58.958,-58.556,-58.107,-57.612,-57.076,-56.507,-55.916,
--55.319,-54.730,-54.165,-53.639,-53.164,-52.745,-52.385,-52.081,-51.825,-51.605,-51.407,-51.217,-51.021,-50.808,-50.573,-50.315,
--50.038,-49.749,-49.459,-49.181,-48.924,-48.698,-48.505,-48.345,-48.212,-48.096,-47.982,-47.858,-47.709,-47.526,-47.303,-47.041,
--46.746,-46.431,-46.110,-45.802,-45.523,-45.287,-45.104,-44.979,-44.908,-44.882,-44.888,-44.908,-44.925,-44.923,-44.889,-44.813,
--44.694,-44.534,-44.339,-44.119,-43.884,-43.646,-43.410,-43.182,-42.960,-42.742,-42.522,-42.291,-42.043,-41.773,-41.481,-41.169,
--40.844,-40.518,-40.203,-39.913,-39.659,-39.451,-39.291,-39.179,-39.108,-39.067,-39.044,-39.022,-38.990,-38.938,-38.860,-38.755,
--38.629,-38.489,-38.347,-38.215,-38.100,-38.011,-37.948,-37.908,-37.882,-37.857,-37.819,-37.755,-37.654,-37.510,-37.324,-37.102,
--36.858,-36.611,-36.383,-36.196,-36.069,-36.017,-36.046,-36.156,-36.335,-36.565,-36.821,-37.076,-37.300,-37.467,-37.555,-37.549,
--37.443,-37.240,-36.950,-36.589,-36.178,-35.739,-35.295,-34.865,-34.462,-34.098,-33.774,-33.488,-33.235,-33.006,-32.788,-32.573,
--32.352,-32.119,-31.870,-31.608,-31.334,-31.056,-30.779,-30.511,-30.258,-30.025,-29.816,-29.629,-29.465,-29.318,-29.185,-29.058,
--28.932,-28.802,-28.663,-28.513,-28.349,-28.173,-27.986,-27.793,-27.596,-27.401,-27.212,-27.033,-26.869,-26.722,-26.595,-26.488,
--26.400,-26.331,-26.279,-26.241,-26.214,-26.192,-26.174,-26.153,-26.127,-26.092,-26.044,-25.982,-25.904,-25.810,-25.702,-25.581,
--25.450,-25.312,-25.170,-25.027,-24.884,-24.741,-24.599,-24.453,-24.301,-24.137,-23.957,-23.757,-23.532,-23.283,-23.011,-22.718,
--22.412,-22.101,-21.796,-21.506,-21.241,-21.008,-20.813,-20.656,-20.534,-20.444,-20.375,-20.317,-20.261,-20.195,-20.113,-20.009,
--19.883,-19.737,-19.578,-19.412,-19.249,-19.097,-18.965,-18.857,-18.774,-18.714,-18.674,-18.645,-18.619,-18.586,-18.540,-18.474,
--18.385,-18.272,-18.137,-17.985,-17.822,-17.655,-17.489,-17.332,-17.186,-17.054,-16.937,-16.835,-16.745,-16.666,-16.597,-16.535,
--16.479,-16.428,-16.379,-16.331,-16.281,-16.225,-16.159,-16.077,-15.975,-15.850,-15.699,-15.524,-15.328,-15.117,-14.900,-14.689,
--14.496,-14.332,-14.205,-14.121,-14.082,-14.083,-14.117,-14.170,-14.227,-14.270,-14.282,-14.248,-14.157,-14.002,-13.782,-13.500,
--13.163,-12.784,-12.376,-11.953,-11.526,-11.107,-10.702,-10.317,-9.951,-9.603,-9.271,-8.951,-8.639,-8.333,-8.035,-7.744,
--7.465,-7.202,-6.960,-6.743,-6.555,-6.395,-6.262,-6.153,-6.062,-5.981,-5.900,-5.812,-5.708,-5.582,-5.431,-5.253,
--5.052,-4.833,-4.604,-4.378,-4.167,-3.985,-3.849,-3.771,-3.764,-3.837,-3.998,-4.249,-4.587,-5.006,-5.495,-6.038,
--6.616,-7.207,-7.788,-8.338,-8.834,-9.260,-9.603,-9.855,-10.015,-10.088,-10.084,-10.018,-9.908,-9.774,-9.633,-9.503,
--9.396,-9.322,-9.284,-9.280,-9.304,-9.348,-9.401,-9.450,-9.487,-9.504,-9.496,-9.462,-9.406,-9.331,-9.247,-9.160,
--9.079,-9.008,-8.952,-8.910,-8.880,-8.858,-8.837,-8.811,-8.773,-8.719,-8.647,-8.557,-8.453,-8.341,-8.226,-8.117,
--8.019,-7.938,-7.876,-7.833,-7.807,-7.793,-7.785,-7.775,-7.758,-7.729,-7.685,-7.626,-7.554,-7.472,-7.385,-7.299,
--7.219,-7.147,-7.085,-7.033,-6.986,-6.942,-6.894,-6.837,-6.766,-6.680,-6.576,-6.457,-6.326,-6.186,-6.045,-5.907,
--5.778,-5.661,-5.556,-5.464,-5.383,-5.307,-5.234,-5.159,-5.078,-4.989,-4.890,-4.782,-4.666,-4.546,-4.424,-4.303,
--4.185,-4.072,-3.964,-3.859,-3.757,-3.656,-3.554,-3.450,-3.343,-3.234,-3.124,-3.014,-2.906,-2.801,-2.700,-2.603,
--2.509,-2.416,-2.321,-2.224,-2.121,-2.011,-1.895,-1.773,-1.647,-1.521,-1.397,-1.279,-1.170,-1.073,-.987,-.914,
--.852,-.800,-.756,-.719,-.689,-.666,-.653,-.650,-.661,-.688,-.732,-.793,-.870,-.957,-1.050,-1.141,
--1.224,-1.291,-1.336,-1.356,-1.348,-1.315,-1.262,-1.193,-1.118,-1.044,-.978,-.927,-.893,-.878,-.879,-.892,
--.911,-.929,-.938,-.933,-.911,-.870,-.810,-.736,-.652,-.565,-.481,-.406,-.344,-.298,-.268,-.254,
--.251,-.255,-.260,-.260,-.247,-.215,-.158,-.070,.052,.214,.417,.663,.953,1.284,1.654,2.056,
-2.482,2.922,3.364,3.796,4.205,4.579,4.910,5.191,5.420,5.601,5.742,5.854,5.953,6.054,6.175,6.332,
-6.535,6.792,7.104,7.467,7.870,8.299,8.736,9.161,9.558,9.909,10.205,10.440,10.614,10.733,10.811,10.860,
-10.897,10.939,10.998,11.086,11.205,11.356,11.532,11.722,11.914,12.092,12.244,12.357,12.424,12.445,12.421,12.362,
-12.280,12.187,12.098,12.026,11.979,11.960,11.967,11.992,12.023,12.043,12.034,11.982,11.871,11.694,11.449,11.145,
-10.793,10.415,10.036,9.683,9.258,8.983,8.760,8.607,8.533,8.542,8.632,8.793,9.011,9.266,9.538,9.807,
-10.055,10.267,10.435,10.554,10.625,10.657,10.659,10.645,10.628,10.621,10.637,10.682,10.761,10.875,11.019,11.188,
-11.373,11.565,11.755,11.933,12.096,12.237,12.358,12.459,12.545,12.619,12.689,12.760,12.838,12.925,13.026,13.138,
-13.263,13.395,13.533,13.671,13.805,13.932,14.049,14.155,14.250,14.336,14.414,14.488,14.562,14.639,14.720,14.809,
-14.904,15.005,15.111,15.217,15.321,15.420,15.509,15.586,15.651,15.703,15.743,15.773,15.796,15.816,15.836,15.859,
-15.888,15.924,15.966,16.015,16.069,16.125,16.181,16.234,16.282,16.324,16.358,16.386,16.407,16.425,16.440,16.455,
-16.472,16.493,16.517,16.546,16.579,16.616,16.655,16.695,16.735,16.775,16.813,16.849,16.882,16.913,16.940,16.964,
-16.983,16.996,17.003,17.001,16.989,16.967,16.932,16.885,16.825,16.753,16.669,16.573,16.467,16.352,16.228,16.098,
-15.963,15.825,15.687,15.553,15.426,15.313,15.217,15.145,15.101,15.090,15.113,15.170,15.260,15.376,15.512,15.657,
-15.800,15.928,16.029,16.093,16.110,16.078,15.993,15.860,15.685,15.481,15.261,15.042,14.838,14.667,14.540,14.470,
-14.460,14.513,14.625,14.787,14.989,15.214,15.448,15.672,15.873,16.037,16.155,16.221,16.235,16.202,16.130,16.031,
-15.917,15.804,15.704,15.628,15.584,15.575,15.600,15.651,15.720,15.792,15.855,15.894,15.899,15.862,15.781,15.658,
-15.501,15.326,15.147,14.984,14.856,14.778,14.763,14.817,14.941,15.126,15.362,15.629,15.907,16.174,16.410,16.597,
-16.724,16.785,16.778,16.711,16.594,16.441,16.266,16.086,15.913,15.756,15.621,15.507,15.412,15.330,15.253,15.174,
-15.085,14.982,14.863,14.731,14.589,14.444,14.303,14.173,14.058,13.964,13.888,13.829,13.779,13.732,13.678,13.609,
-13.516,13.397,13.249,13.074,12.879,12.671,12.462,12.263,12.084,11.936,11.826,11.758,11.734,11.751,11.806,11.893,
-12.005,12.135,12.276,12.421,12.566,12.704,12.832,12.944,13.037,13.102,13.136,13.130,13.078,12.974,12.815,12.599,
-12.328,12.009,11.652,11.268,10.875,10.490,10.129,9.807,9.537,9.325,9.175,9.083,9.040,9.034,9.049,9.071,
-9.082,9.070,9.027,8.947,8.832,8.688,8.524,8.353,8.187,8.040,7.921,7.837,7.790,7.777,7.793,7.828,
-7.870,7.908,7.932,7.932,7.905,7.850,7.768,7.667,7.553,7.436,7.325,7.227,7.147,7.087,7.045,7.017,
-6.998,6.979,6.954,6.916,6.862,6.789,6.701,6.600,6.493,6.388,6.292,6.213,6.154,6.118,6.104,6.107,
-6.120,6.134,6.142,6.133,6.101,6.042,5.956,5.844,5.714,5.574,5.435,5.307,5.199,5.118,5.066,5.043,
-5.041,5.051,5.058,5.046,4.999,4.900,4.737,4.500,4.186,3.796,3.337,2.821,2.262,1.679,1.089,.510,
--.044,-.561,-1.033,-1.458,-1.836,-2.172,-2.474,-2.749,-3.008,-3.257,-3.504,-3.754,-4.010,-4.274,-4.543,-4.816,
--5.091,-5.363,-5.630,-5.890,-6.141,-6.383,-6.617,-6.844,-7.067,-7.289,-7.514,-7.745,-7.987,-8.243,-8.517,-8.811,
--9.127,-9.466,-9.827,-10.208,-10.604,-11.010,-11.420,-11.826,-12.222,-12.601,-12.958,-13.290,-13.595,-13.877,-14.138,-14.385,
--14.625,-14.866,-15.114,-15.375,-15.653,-15.948,-16.259,-16.582,-16.911,-17.241,-17.566,-17.881,-18.185,-18.478,-18.764,-19.047,
--19.337,-19.641,-19.968,-20.324,-20.714,-21.137,-21.593,-22.073,-22.571,-23.075,-23.574,-24.059,-24.520,-24.953,-25.355,-25.727,
--26.072,-26.398,-26.712,-27.020,-27.330,-27.645,-27.968,-28.299,-28.633,-28.967,-29.296,-29.614,-29.918,-30.204,-30.472,-30.725,
--30.967,-31.204,-31.442,-31.686,-31.943,-32.215,-32.504,-32.807,-33.120,-33.440,-33.757,-34.066,-34.359,-34.632,-34.880,-35.102,
--35.298,-35.469,-35.620,-35.753,-35.873,-35.984,-36.090,-36.193,-36.295,-36.398,-36.504,-36.612,-36.726,-36.846,-36.977,-37.120,
--37.280,-37.459,-37.660,-37.885,-38.134,-38.407,-38.699,-39.006,-39.324,-39.644,-39.961,-40.269,-40.561,-40.833,-41.082,-41.307,
--41.509,-41.690,-41.853,-42.001,-42.140,-42.275,-42.411,-42.552,-42.704,-42.870,-43.056,-43.263,-43.497,-43.759,-44.051,-44.373,
--44.723,-45.098,-45.493,-45.900,-46.310,-46.712,-47.095,-47.446,-47.755,-48.014,-48.215,-48.358,-48.443,-48.476,-48.468,-48.429,
--48.375,-48.322,-48.285,-48.276,-48.307,-48.383,-48.507,-48.676,-48.884,-49.123,-49.380,-49.645,-49.906,-50.153,-50.380,-50.584,
--50.765,-50.926,-51.073,-51.215,-51.359,-51.512,-51.681,-51.870,-52.080,-52.309,-52.552,-52.805,-53.058,-53.306,-53.542,-53.761,
--53.961,-54.143,-54.308,-54.461,-54.608,-54.756,-54.910,-55.074,-55.253,-55.445,-55.650,-55.863,-56.079,-56.291,-56.493,-56.678,
--56.842,-56.983,-57.099,-57.193,-57.268,-57.328,-57.379,-57.428,-57.477,-57.531,-57.591,-57.658,-57.731,-57.805,-57.879,-57.949,
--58.012,-58.065,-58.108,-58.140,-58.163,-58.178,-58.186,-58.191,-58.194,-58.196,-58.196,-58.194,-58.190,-58.183,-58.173,-58.160,
--58.147,-58.137,-58.134,-58.141,-58.164,-58.205,-58.264,-58.338,-58.421,-58.503,-58.571,-58.608,-58.598,-58.526,-58.376,-58.141,
--57.818,-57.410,-56.929,-56.396,-55.835,-55.277,-54.754,-54.297,-53.935,-53.690,-53.576,-53.599,-53.752,-54.024,-54.390,-54.825,
--55.297,-55.776,-56.231,-56.639,-56.984,-57.253,-57.445,-57.565,-57.622,-57.632,-57.610,-57.574,-57.538,-57.513,-57.508,-57.527,
--57.568,-57.629,-57.705,-57.790,-57.878,-57.964,-58.046,-58.124,-58.199,-58.274,-58.351,-58.435,-58.527,-58.629,-58.738,-58.853,
--58.967,-59.075,-59.169,-59.244,-59.293,-59.314,-59.304,-59.265,-59.200,-59.113,-59.013,-58.907,-58.803,-58.709,-58.631,-58.575,
--58.545,-58.544,-58.573,-58.632,-58.721,-58.838,-58.981,-59.149,-59.338,-59.545,-59.766,-59.997,-60.231,-60.462,-60.685,-60.891,
--61.076,-61.234,-61.363,-61.461,-61.530,-61.575,-61.602,-61.620,-61.638,-61.666,-61.712,-61.783,-61.882,-62.011,-62.165,-62.340,
--62.525,-62.710,-62.885,-63.037,-63.160,-63.247,-63.296,-63.308,-63.288,-63.244,-63.186,-63.124,-63.068,-63.025,-63.002,-63.000,
--63.019,-63.054,-63.099,-63.146,-63.188,-63.219,-63.233,-63.228,-63.206,-63.169,-63.124,-63.078,-63.038,-63.011,-63.002,-63.014,
--63.046,-63.095,-63.156,-63.220,-63.281,-63.331,-63.364,-63.377,-63.369,-63.344,-63.307,-63.267,-63.232,-63.212,-63.216,-63.250,
--63.317,-63.417,-63.546,-63.698,-63.862,-64.028,-64.184,-64.319,-64.425,-64.495,-64.527,-64.520,-64.479,-64.411,-64.323,-64.225,
--64.127,-64.036,-63.959,-63.901,-63.864,-63.847,-63.847,-63.859,-63.878,-63.897,-63.912,-63.916,-63.908,-63.884,-63.845,-63.791,
--63.726,-63.653,-63.575,-63.496,-63.419,-63.345,-63.276,-63.211,-63.150,-63.090,-63.030,-62.969,-62.904,-62.834,-62.761,-62.686,
--62.609,-62.536,-62.467,-62.406,-62.354,-62.313,-62.281,-62.255,-62.232,-62.206,-62.170,-62.117,-62.040,-61.933,-61.789,-61.606,
--61.381,-61.115,-60.807,-60.462,-60.082,-59.671,-59.232,-58.769,-58.284,-57.780,-57.260,-56.726,-56.183,-55.635,-55.089,-54.551,
--54.031,-53.536,-53.077,-52.659,-52.288,-51.964,-51.687,-51.451,-51.246,-51.060,-50.881,-50.695,-50.491,-50.260,-49.996,-49.700,
--49.376,-49.034,-48.686,-48.345,-48.025,-47.736,-47.487,-47.281,-47.113,-46.977,-46.860,-46.747,-46.622,-46.471,-46.283,-46.051,
--45.777,-45.465,-45.129,-44.784,-44.449,-44.145,-43.887,-43.690,-43.561,-43.502,-43.507,-43.567,-43.666,-43.787,-43.910,-44.018,
--44.097,-44.136,-44.126,-44.067,-43.959,-43.805,-43.610,-43.380,-43.119,-42.831,-42.521,-42.190,-41.841,-41.478,-41.105,-40.728,
--40.357,-40.000,-39.669,-39.374,-39.123,-38.922,-38.773,-38.674,-38.617,-38.593,-38.586,-38.584,-38.572,-38.539,-38.477,-38.385,
--38.263,-38.121,-37.968,-37.817,-37.682,-37.572,-37.494,-37.450,-37.436,-37.444,-37.462,-37.473,-37.463,-37.418,-37.330,-37.195,
--37.015,-36.800,-36.564,-36.326,-36.105,-35.921,-35.788,-35.719,-35.716,-35.776,-35.888,-36.037,-36.202,-36.360,-36.490,-36.572,
--36.592,-36.540,-36.414,-36.218,-35.959,-35.651,-35.309,-34.947,-34.580,-34.218,-33.871,-33.544,-33.236,-32.948,-32.676,-32.415,
--32.161,-31.912,-31.667,-31.424,-31.186,-30.955,-30.736,-30.531,-30.342,-30.171,-30.017,-29.878,-29.751,-29.631,-29.512,-29.390,
--29.261,-29.121,-28.968,-28.804,-28.628,-28.445,-28.257,-28.068,-27.883,-27.705,-27.536,-27.379,-27.234,-27.100,-26.978,-26.867,
--26.764,-26.669,-26.582,-26.501,-26.427,-26.358,-26.295,-26.237,-26.183,-26.131,-26.079,-26.025,-25.966,-25.900,-25.825,-25.740,
--25.643,-25.536,-25.419,-25.294,-25.162,-25.025,-24.885,-24.741,-24.594,-24.442,-24.284,-24.116,-23.938,-23.748,-23.544,-23.328,
--23.102,-22.870,-22.636,-22.406,-22.187,-21.983,-21.799,-21.637,-21.498,-21.378,-21.275,-21.182,-21.094,-21.004,-20.907,-20.798,
--20.676,-20.541,-20.395,-20.242,-20.088,-19.938,-19.796,-19.668,-19.554,-19.454,-19.366,-19.285,-19.206,-19.124,-19.031,-18.925,
--18.803,-18.663,-18.508,-18.341,-18.167,-17.992,-17.822,-17.663,-17.519,-17.393,-17.288,-17.203,-17.138,-17.091,-17.060,-17.041,
--17.032,-17.029,-17.028,-17.026,-17.019,-17.003,-16.971,-16.921,-16.848,-16.749,-16.623,-16.469,-16.293,-16.100,-15.897,-15.697,
--15.511,-15.349,-15.223,-15.140,-15.102,-15.110,-15.158,-15.236,-15.328,-15.420,-15.492,-15.527,-15.512,-15.434,-15.288,-15.072,
--14.792,-14.456,-14.076,-13.668,-13.247,-12.826,-12.417,-12.029,-11.667,-11.330,-11.016,-10.720,-10.436,-10.157,-9.876,-9.591,
--9.298,-8.998,-8.694,-8.390,-8.091,-7.803,-7.530,-7.275,-7.039,-6.822,-6.620,-6.432,-6.250,-6.072,-5.894,-5.714,
--5.534,-5.357,-5.191,-5.045,-4.930,-4.860,-4.848,-4.905,-5.041,-5.262,-5.569,-5.961,-6.427,-6.955,-7.527,-8.121,
--8.713,-9.280,-9.797,-10.244,-10.606,-10.871,-11.035,-11.100,-11.074,-10.971,-10.810,-10.611,-10.398,-10.189,-10.004,-9.857,
--9.756,-9.704,-9.699,-9.734,-9.797,-9.876,-9.956,-10.026,-10.074,-10.095,-10.086,-10.048,-9.987,-9.910,-9.826,-9.745,
--9.675,-9.620,-9.585,-9.568,-9.565,-9.570,-9.575,-9.573,-9.555,-9.517,-9.457,-9.374,-9.273,-9.159,-9.042,-8.929,
--8.827,-8.745,-8.684,-8.647,-8.631,-8.630,-8.640,-8.651,-8.656,-8.648,-8.624,-8.580,-8.517,-8.439,-8.348,-8.252,
--8.156,-8.063,-7.978,-7.902,-7.833,-7.770,-7.707,-7.640,-7.564,-7.475,-7.373,-7.255,-7.125,-6.986,-6.842,-6.699,
--6.561,-6.433,-6.317,-6.214,-6.121,-6.036,-5.955,-5.873,-5.786,-5.690,-5.583,-5.464,-5.335,-5.198,-5.057,-4.915,
--4.777,-4.646,-4.522,-4.408,-4.303,-4.205,-4.112,-4.021,-3.930,-3.838,-3.744,-3.647,-3.549,-3.450,-3.352,-3.257,
--3.166,-3.079,-2.996,-2.915,-2.837,-2.759,-2.680,-2.599,-2.517,-2.433,-2.348,-2.264,-2.183,-2.106,-2.035,-1.971,
--1.913,-1.862,-1.818,-1.779,-1.746,-1.719,-1.698,-1.685,-1.680,-1.685,-1.702,-1.731,-1.771,-1.821,-1.877,-1.936,
--1.991,-2.038,-2.071,-2.085,-2.077,-2.046,-1.993,-1.922,-1.837,-1.745,-1.653,-1.568,-1.495,-1.439,-1.401,-1.381,
--1.376,-1.383,-1.396,-1.408,-1.414,-1.409,-1.390,-1.356,-1.306,-1.244,-1.172,-1.097,-1.022,-.952,-.891,-.842,
--.804,-.777,-.759,-.744,-.728,-.704,-.666,-.607,-.521,-.403,-.248,-.053,.184,.462,.778,1.128,
-1.505,1.902,2.309,2.714,3.110,3.485,3.832,4.146,4.426,4.671,4.888,5.084,5.269,5.456,5.657,5.883,
-6.143,6.442,6.782,7.158,7.563,7.984,8.408,8.818,9.198,9.535,9.818,10.042,10.204,10.311,10.370,10.393,
-10.395,10.390,10.393,10.413,10.458,10.530,10.626,10.740,10.861,10.978,11.079,11.154,11.194,11.197,11.164,11.099,
-11.013,10.917,10.823,10.746,10.695,10.676,10.691,10.736,10.804,10.880,10.950,10.997,11.005,10.961,10.856,10.690,
-10.464,10.190,9.884,9.566,9.258,8.974,8.724,8.500,8.316,8.180,8.100,8.075,8.103,8.176,8.285,8.419,
-8.566,8.714,8.855,8.981,9.088,9.175,9.242,9.295,9.336,9.373,9.411,9.456,9.512,9.581,9.665,9.763,
-9.874,9.995,10.124,10.256,10.388,10.519,10.645,10.766,10.881,10.990,11.094,11.193,11.290,11.384,11.477,11.569,
-11.661,11.753,11.846,11.939,12.032,12.127,12.222,12.319,12.419,12.520,12.625,12.733,12.844,12.958,13.075,13.193,
-13.312,13.430,13.545,13.656,13.763,13.864,13.958,14.045,14.127,14.203,14.275,14.344,14.411,14.478,14.545,14.613,
-14.682,14.752,14.822,14.892,14.959,15.023,15.084,15.140,15.193,15.242,15.290,15.337,15.386,15.438,15.494,15.555,
-15.623,15.695,15.772,15.851,15.930,16.007,16.080,16.145,16.203,16.253,16.293,16.326,16.352,16.372,16.390,16.406,
-16.421,16.436,16.450,16.461,16.469,16.469,16.459,16.436,16.396,16.336,16.255,16.151,16.023,15.873,15.701,15.511,
-15.306,15.090,14.870,14.651,14.441,14.246,14.073,13.930,13.822,13.756,13.733,13.757,13.825,13.934,14.079,14.249,
-14.435,14.624,14.802,14.956,15.073,15.144,15.160,15.119,15.020,14.869,14.676,14.452,14.213,13.978,13.763,13.585,
-13.458,13.392,13.394,13.464,13.597,13.784,14.010,14.258,14.510,14.747,14.950,15.106,15.205,15.241,15.216,15.135,
-15.010,14.854,14.685,14.518,14.368,14.249,14.168,14.127,14.125,14.153,14.202,14.258,14.307,14.337,14.336,14.301,
-14.231,14.130,14.010,13.883,13.768,13.680,13.636,13.647,13.720,13.858,14.053,14.297,14.573,14.861,15.143,15.398,
-15.610,15.768,15.864,15.897,15.874,15.803,15.697,15.570,15.435,15.305,15.188,15.087,15.003,14.930,14.863,14.791,
-14.706,14.600,14.467,14.304,14.115,13.904,13.679,13.451,13.231,13.029,12.852,12.706,12.592,12.506,12.444,12.395,
-12.350,12.299,12.232,12.143,12.028,11.888,11.726,11.551,11.373,11.203,11.055,10.941,10.871,10.852,10.889,10.984,
-11.133,11.329,11.565,11.828,12.104,12.380,12.641,12.872,13.059,13.190,13.256,13.248,13.162,12.997,12.757,12.446,
-12.076,11.661,11.216,10.759,10.310,9.886,9.503,9.173,8.906,8.703,8.564,8.481,8.442,8.433,8.438,8.440,
-8.425,8.380,8.300,8.181,8.026,7.844,7.645,7.442,7.250,7.082,6.947,6.852,6.800,6.786,6.804,6.845,
-6.895,6.943,6.977,6.987,6.970,6.924,6.852,6.761,6.659,6.556,6.464,6.389,6.337,6.311,6.309,6.326,
-6.354,6.383,6.404,6.409,6.392,6.350,6.283,6.198,6.099,5.998,5.904,5.825,5.769,5.739,5.735,5.753,
-5.783,5.817,5.842,5.846,5.821,5.761,5.665,5.535,5.380,5.214,5.049,4.902,4.788,4.717,4.694,4.720,
-4.787,4.880,4.980,5.064,5.104,5.076,4.957,4.732,4.389,3.927,3.355,2.687,1.946,1.160,.356,-.433,
--1.181,-1.864,-2.466,-2.978,-3.395,-3.723,-3.973,-4.157,-4.294,-4.402,-4.497,-4.595,-4.706,-4.839,-4.997,-5.181,
--5.389,-5.615,-5.854,-6.100,-6.348,-6.592,-6.831,-7.062,-7.285,-7.503,-7.717,-7.931,-8.148,-8.374,-8.611,-8.862,
--9.131,-9.420,-9.728,-10.056,-10.402,-10.764,-11.138,-11.519,-11.902,-12.284,-12.657,-13.019,-13.367,-13.698,-14.013,-14.312,
--14.598,-14.875,-15.145,-15.414,-15.685,-15.959,-16.237,-16.521,-16.808,-17.097,-17.384,-17.669,-17.950,-18.227,-18.501,-18.774,
--19.052,-19.339,-19.641,-19.962,-20.307,-20.677,-21.075,-21.496,-21.939,-22.398,-22.866,-23.337,-23.803,-24.260,-24.703,-25.129,
--25.538,-25.931,-26.310,-26.676,-27.033,-27.382,-27.725,-28.062,-28.392,-28.715,-29.030,-29.334,-29.629,-29.914,-30.191,-30.463,
--30.733,-31.006,-31.283,-31.569,-31.864,-32.168,-32.479,-32.793,-33.105,-33.410,-33.701,-33.973,-34.224,-34.452,-34.656,-34.841,
--35.010,-35.167,-35.319,-35.468,-35.619,-35.772,-35.927,-36.080,-36.226,-36.361,-36.479,-36.576,-36.650,-36.703,-36.738,-36.764,
--36.790,-36.828,-36.891,-36.992,-37.139,-37.340,-37.598,-37.909,-38.268,-38.662,-39.077,-39.497,-39.905,-40.285,-40.623,-40.910,
--41.140,-41.313,-41.434,-41.511,-41.557,-41.586,-41.612,-41.651,-41.716,-41.817,-41.964,-42.160,-42.408,-42.706,-43.050,-43.434,
--43.853,-44.297,-44.758,-45.230,-45.702,-46.168,-46.621,-47.053,-47.458,-47.831,-48.167,-48.462,-48.716,-48.926,-49.095,-49.225,
--49.322,-49.390,-49.438,-49.472,-49.501,-49.529,-49.563,-49.608,-49.664,-49.734,-49.816,-49.910,-50.013,-50.124,-50.242,-50.367,
--50.501,-50.644,-50.800,-50.973,-51.166,-51.382,-51.620,-51.882,-52.163,-52.459,-52.763,-53.067,-53.362,-53.641,-53.895,-54.120,
--54.312,-54.473,-54.605,-54.714,-54.807,-54.895,-54.986,-55.090,-55.212,-55.359,-55.531,-55.728,-55.946,-56.177,-56.415,-56.650,
--56.873,-57.077,-57.256,-57.406,-57.525,-57.616,-57.680,-57.723,-57.750,-57.767,-57.780,-57.792,-57.808,-57.829,-57.855,-57.886,
--57.920,-57.954,-57.986,-58.013,-58.033,-58.044,-58.044,-58.032,-58.008,-57.971,-57.921,-57.859,-57.787,-57.706,-57.619,-57.530,
--57.445,-57.369,-57.308,-57.269,-57.256,-57.274,-57.322,-57.400,-57.502,-57.618,-57.737,-57.844,-57.922,-57.957,-57.933,-57.841,
--57.676,-57.437,-57.133,-56.777,-56.390,-55.996,-55.622,-55.296,-55.042,-54.882,-54.829,-54.890,-55.063,-55.336,-55.692,-56.105,
--56.549,-56.994,-57.412,-57.779,-58.076,-58.294,-58.426,-58.476,-58.455,-58.377,-58.259,-58.120,-57.979,-57.851,-57.749,-57.681,
--57.651,-57.658,-57.699,-57.769,-57.859,-57.963,-58.075,-58.189,-58.301,-58.410,-58.514,-58.614,-58.709,-58.800,-58.886,-58.965,
--59.034,-59.092,-59.133,-59.156,-59.159,-59.139,-59.098,-59.037,-58.959,-58.870,-58.774,-58.678,-58.586,-58.506,-58.440,-58.393,
--58.367,-58.364,-58.384,-58.429,-58.499,-58.593,-58.712,-58.855,-59.022,-59.212,-59.420,-59.645,-59.880,-60.120,-60.355,-60.579,
--60.784,-60.961,-61.107,-61.217,-61.292,-61.333,-61.348,-61.344,-61.330,-61.318,-61.317,-61.336,-61.380,-61.452,-61.551,-61.671,
--61.805,-61.942,-62.071,-62.181,-62.263,-62.311,-62.321,-62.293,-62.234,-62.150,-62.052,-61.951,-61.858,-61.782,-61.731,-61.707,
--61.711,-61.738,-61.784,-61.840,-61.897,-61.946,-61.983,-62.003,-62.005,-61.991,-61.966,-61.937,-61.910,-61.892,-61.890,-61.905,
--61.939,-61.988,-62.049,-62.114,-62.175,-62.226,-62.261,-62.277,-62.274,-62.256,-62.230,-62.203,-62.188,-62.195,-62.232,-62.308,
--62.425,-62.584,-62.779,-63.002,-63.242,-63.485,-63.717,-63.925,-64.099,-64.231,-64.317,-64.359,-64.361,-64.329,-64.274,-64.206,
--64.136,-64.073,-64.022,-63.987,-63.969,-63.965,-63.970,-63.978,-63.982,-63.976,-63.953,-63.912,-63.851,-63.771,-63.678,-63.577,
--63.475,-63.378,-63.292,-63.224,-63.174,-63.143,-63.130,-63.129,-63.135,-63.140,-63.138,-63.122,-63.089,-63.034,-62.958,-62.863,
--62.753,-62.634,-62.513,-62.396,-62.288,-62.194,-62.116,-62.051,-61.997,-61.945,-61.888,-61.815,-61.715,-61.578,-61.395,-61.161,
--60.870,-60.522,-60.120,-59.669,-59.176,-58.650,-58.100,-57.538,-56.971,-56.408,-55.857,-55.323,-54.812,-54.326,-53.869,-53.443,
--53.052,-52.696,-52.376,-52.094,-51.847,-51.632,-51.444,-51.277,-51.120,-50.962,-50.793,-50.600,-50.374,-50.106,-49.794,-49.437,
--49.040,-48.611,-48.162,-47.709,-47.267,-46.850,-46.471,-46.138,-45.856,-45.622,-45.432,-45.274,-45.134,-44.998,-44.852,-44.685,
--44.487,-44.257,-43.997,-43.714,-43.420,-43.130,-42.860,-42.625,-42.438,-42.308,-42.241,-42.236,-42.287,-42.384,-42.515,-42.663,
--42.812,-42.949,-43.057,-43.127,-43.150,-43.119,-43.032,-42.888,-42.688,-42.436,-42.136,-41.794,-41.417,-41.015,-40.598,-40.176,
--39.764,-39.375,-39.021,-38.714,-38.463,-38.275,-38.150,-38.086,-38.074,-38.104,-38.158,-38.219,-38.272,-38.300,-38.291,-38.239,
--38.142,-38.004,-37.836,-37.651,-37.465,-37.294,-37.152,-37.050,-36.992,-36.980,-37.006,-37.059,-37.123,-37.182,-37.220,-37.221,
--37.176,-37.079,-36.933,-36.743,-36.523,-36.287,-36.053,-35.838,-35.657,-35.521,-35.435,-35.400,-35.411,-35.458,-35.528,-35.605,
--35.673,-35.718,-35.728,-35.692,-35.605,-35.466,-35.276,-35.040,-34.764,-34.455,-34.123,-33.774,-33.417,-33.058,-32.702,-32.356,
--32.023,-31.709,-31.417,-31.151,-30.913,-30.706,-30.531,-30.386,-30.270,-30.178,-30.105,-30.043,-29.985,-29.923,-29.849,-29.758,
--29.645,-29.509,-29.350,-29.172,-28.979,-28.778,-28.576,-28.380,-28.196,-28.028,-27.880,-27.751,-27.641,-27.545,-27.461,-27.382,
--27.303,-27.221,-27.133,-27.036,-26.931,-26.819,-26.702,-26.583,-26.466,-26.353,-26.246,-26.147,-26.055,-25.969,-25.887,-25.806,
--25.723,-25.636,-25.542,-25.441,-25.331,-25.213,-25.087,-24.957,-24.822,-24.686,-24.549,-24.412,-24.277,-24.143,-24.009,-23.876,
--23.743,-23.608,-23.473,-23.337,-23.201,-23.064,-22.928,-22.792,-22.656,-22.521,-22.385,-22.248,-22.107,-21.964,-21.816,-21.665,
--21.511,-21.355,-21.201,-21.050,-20.905,-20.769,-20.643,-20.527,-20.421,-20.321,-20.226,-20.130,-20.030,-19.920,-19.796,-19.657,
--19.502,-19.331,-19.147,-18.954,-18.759,-18.566,-18.382,-18.213,-18.063,-17.936,-17.833,-17.755,-17.701,-17.668,-17.653,-17.653,
--17.664,-17.681,-17.702,-17.721,-17.734,-17.738,-17.728,-17.700,-17.651,-17.579,-17.482,-17.362,-17.219,-17.060,-16.890,-16.720,
--16.560,-16.419,-16.308,-16.235,-16.204,-16.219,-16.276,-16.367,-16.482,-16.606,-16.722,-16.813,-16.862,-16.856,-16.784,-16.642,
--16.429,-16.151,-15.818,-15.444,-15.044,-14.635,-14.231,-13.845,-13.486,-13.160,-12.865,-12.598,-12.352,-12.118,-11.886,-11.644,
--11.385,-11.103,-10.794,-10.458,-10.097,-9.716,-9.323,-8.923,-8.524,-8.134,-7.756,-7.396,-7.055,-6.737,-6.441,-6.172,
--5.931,-5.723,-5.554,-5.433,-5.369,-5.372,-5.452,-5.620,-5.880,-6.236,-6.687,-7.224,-7.835,-8.502,-9.201,-9.906,
--10.588,-11.220,-11.773,-12.226,-12.561,-12.768,-12.846,-12.799,-12.642,-12.395,-12.082,-11.731,-11.370,-11.027,-10.724,-10.478,
--10.300,-10.195,-10.159,-10.183,-10.254,-10.354,-10.467,-10.576,-10.667,-10.729,-10.757,-10.750,-10.712,-10.651,-10.575,-10.496,
--10.422,-10.362,-10.319,-10.297,-10.293,-10.301,-10.315,-10.327,-10.329,-10.314,-10.278,-10.219,-10.139,-10.042,-9.934,-9.822,
--9.716,-9.621,-9.544,-9.486,-9.449,-9.430,-9.425,-9.426,-9.429,-9.425,-9.410,-9.379,-9.332,-9.269,-9.191,-9.104,
--9.010,-8.915,-8.821,-8.731,-8.646,-8.564,-8.484,-8.402,-8.315,-8.221,-8.117,-8.003,-7.880,-7.750,-7.617,-7.484,
--7.355,-7.234,-7.122,-7.020,-6.926,-6.839,-6.755,-6.669,-6.578,-6.478,-6.367,-6.245,-6.113,-5.973,-5.829,-5.686,
--5.548,-5.418,-5.299,-5.194,-5.100,-5.017,-4.942,-4.872,-4.802,-4.730,-4.653,-4.570,-4.482,-4.389,-4.293,-4.198,
--4.105,-4.018,-3.938,-3.867,-3.803,-3.747,-3.696,-3.650,-3.606,-3.563,-3.520,-3.476,-3.431,-3.387,-3.345,-3.306,
--3.270,-3.240,-3.214,-3.193,-3.177,-3.165,-3.155,-3.147,-3.140,-3.134,-3.128,-3.123,-3.119,-3.115,-3.110,-3.104,
--3.096,-3.082,-3.062,-3.032,-2.992,-2.939,-2.874,-2.797,-2.711,-2.620,-2.527,-2.436,-2.354,-2.283,-2.227,-2.189,
--2.167,-2.162,-2.169,-2.185,-2.205,-2.223,-2.234,-2.234,-2.218,-2.186,-2.137,-2.071,-1.991,-1.901,-1.803,-1.703,
--1.604,-1.508,-1.418,-1.335,-1.257,-1.182,-1.108,-1.030,-.943,-.842,-.722,-.578,-.407,-.208,.022,.280,
-.564,.869,1.191,1.523,1.858,2.190,2.513,2.825,3.123,3.407,3.680,3.946,4.211,4.483,4.767,5.070,
-5.395,5.745,6.117,6.508,6.910,7.312,7.705,8.074,8.410,8.702,8.943,9.130,9.264,9.349,9.392,9.405,
-9.400,9.390,9.386,9.397,9.429,9.484,9.561,9.654,9.756,9.855,9.943,10.010,10.048,10.054,10.028,9.974,
-9.899,9.812,9.726,9.653,9.602,9.582,9.598,9.648,9.729,9.831,9.944,10.052,10.141,10.197,10.209,10.168,
-10.071,9.921,9.724,9.491,9.235,8.974,8.556,8.348,8.150,7.973,7.822,7.704,7.622,7.575,7.562,7.579,
-7.623,7.688,7.768,7.860,7.958,8.060,8.161,8.261,8.358,8.450,8.538,8.621,8.700,8.775,8.848,8.918,
-8.989,9.061,9.136,9.216,9.303,9.398,9.502,9.616,9.738,9.867,10.002,10.139,10.276,10.408,10.533,10.648,
-10.753,10.846,10.928,11.000,11.066,11.130,11.194,11.264,11.342,11.431,11.533,11.649,11.777,11.916,12.063,12.212,
-12.362,12.506,12.641,12.765,12.876,12.972,13.055,13.127,13.189,13.247,13.302,13.360,13.422,13.492,13.569,13.655,
-13.748,13.847,13.948,14.048,14.144,14.234,14.316,14.388,14.451,14.507,14.557,14.605,14.655,14.710,14.773,14.847,
-14.934,15.032,15.141,15.257,15.377,15.496,15.610,15.713,15.801,15.872,15.924,15.958,15.974,15.975,15.966,15.950,
-15.932,15.916,15.904,15.899,15.899,15.904,15.909,15.912,15.905,15.884,15.842,15.774,15.677,15.548,15.385,15.191,
-14.968,14.722,14.459,14.188,13.917,13.655,13.413,13.198,13.019,12.883,12.793,12.752,12.761,12.817,12.915,13.049,
-13.210,13.386,13.567,13.741,13.895,14.019,14.104,14.144,14.135,14.077,13.973,13.831,13.660,13.473,13.284,13.108,
-12.959,12.850,12.791,12.787,12.842,12.953,13.112,13.309,13.529,13.756,13.972,14.163,14.313,14.413,14.455,14.439,
-14.368,14.251,14.099,13.926,13.749,13.580,13.434,13.318,13.239,13.196,13.187,13.202,13.233,13.269,13.297,13.310,
-13.301,13.269,13.215,13.147,13.074,13.009,12.965,12.953,12.985,13.067,13.200,13.381,13.603,13.853,14.117,14.379,
-14.622,14.835,15.005,15.127,15.198,15.222,15.205,15.156,15.085,15.002,14.916,14.834,14.759,14.689,14.622,14.552,
-14.471,14.373,14.249,14.097,13.915,13.706,13.473,13.227,12.976,12.731,12.503,12.299,12.125,11.985,11.876,11.793,
-11.731,11.678,11.626,11.565,11.487,11.387,11.265,11.122,10.964,10.801,10.644,10.506,10.399,10.336,10.327,10.377,
-10.490,10.663,10.893,11.167,11.473,11.796,12.117,12.417,12.678,12.883,13.018,13.071,13.036,12.909,12.694,12.396,
-12.028,11.605,11.146,10.669,10.196,9.746,9.336,8.979,8.685,8.456,8.292,8.185,8.125,8.098,8.087,8.077,
-8.052,8.002,7.919,7.798,7.643,7.459,7.256,7.046,6.841,6.655,6.496,6.373,6.287,6.238,6.220,6.224,
-6.241,6.258,6.266,6.256,6.224,6.168,6.091,5.999,5.899,5.803,5.719,5.656,5.619,5.610,5.629,5.668,
-5.721,5.777,5.826,5.857,5.864,5.842,5.792,5.717,5.625,5.525,5.429,5.347,5.289,5.259,5.259,5.286,
-5.332,5.386,5.434,5.465,5.464,5.424,5.339,5.213,5.051,4.866,4.675,4.495,4.346,4.244,4.199,4.216,
-4.293,4.417,4.569,4.725,4.855,4.929,4.917,4.793,4.542,4.152,3.625,2.972,2.213,1.376,.492,-.401,
--1.270,-2.083,-2.815,-3.445,-3.965,-4.374,-4.676,-4.885,-5.019,-5.098,-5.144,-5.177,-5.213,-5.268,-5.348,-5.460,
--5.604,-5.778,-5.976,-6.192,-6.421,-6.655,-6.891,-7.125,-7.356,-7.583,-7.807,-8.029,-8.253,-8.481,-8.713,-8.954,
--9.202,-9.461,-9.730,-10.010,-10.301,-10.604,-10.918,-11.244,-11.579,-11.924,-12.277,-12.636,-12.999,-13.364,-13.727,-14.086,
--14.438,-14.782,-15.115,-15.436,-15.744,-16.039,-16.322,-16.593,-16.853,-17.104,-17.349,-17.587,-17.824,-18.060,-18.299,-18.544,
--18.797,-19.061,-19.339,-19.633,-19.945,-20.274,-20.622,-20.987,-21.369,-21.766,-22.175,-22.595,-23.024,-23.459,-23.899,-24.342,
--24.788,-25.233,-25.678,-26.118,-26.553,-26.979,-27.392,-27.789,-28.168,-28.525,-28.859,-29.171,-29.461,-29.734,-29.994,-30.247,
--30.499,-30.757,-31.026,-31.309,-31.608,-31.922,-32.247,-32.579,-32.911,-33.234,-33.540,-33.825,-34.083,-34.312,-34.513,-34.690,
--34.848,-34.995,-35.138,-35.284,-35.437,-35.602,-35.776,-35.956,-36.136,-36.307,-36.462,-36.591,-36.689,-36.752,-36.782,-36.784,
--36.767,-36.747,-36.737,-36.756,-36.819,-36.939,-37.124,-37.379,-37.700,-38.079,-38.502,-38.950,-39.403,-39.840,-40.241,-40.590,
--40.875,-41.092,-41.241,-41.329,-41.369,-41.376,-41.370,-41.370,-41.392,-41.454,-41.565,-41.733,-41.960,-42.245,-42.583,-42.965,
--43.382,-43.825,-44.283,-44.748,-45.214,-45.676,-46.131,-46.575,-47.007,-47.426,-47.830,-48.215,-48.579,-48.917,-49.225,-49.498,
--49.732,-49.924,-50.074,-50.181,-50.248,-50.279,-50.281,-50.261,-50.227,-50.187,-50.150,-50.123,-50.112,-50.123,-50.161,-50.227,
--50.324,-50.452,-50.613,-50.804,-51.025,-51.274,-51.548,-51.842,-52.152,-52.473,-52.798,-53.120,-53.432,-53.725,-53.995,-54.236,
--54.444,-54.619,-54.762,-54.877,-54.969,-55.047,-55.120,-55.196,-55.283,-55.390,-55.521,-55.679,-55.863,-56.070,-56.295,-56.530,
--56.766,-56.994,-57.205,-57.391,-57.548,-57.672,-57.763,-57.822,-57.853,-57.862,-57.856,-57.842,-57.825,-57.812,-57.807,-57.812,
--57.826,-57.849,-57.877,-57.907,-57.932,-57.948,-57.950,-57.933,-57.893,-57.830,-57.744,-57.636,-57.509,-57.369,-57.224,-57.079,
--56.945,-56.828,-56.737,-56.678,-56.655,-56.670,-56.721,-56.804,-56.912,-57.034,-57.157,-57.266,-57.349,-57.391,-57.381,-57.313,
--57.184,-56.997,-56.759,-56.485,-56.193,-55.903,-55.638,-55.422,-55.274,-55.210,-55.241,-55.370,-55.595,-55.903,-56.279,-56.700,
--57.143,-57.580,-57.988,-58.345,-58.632,-58.841,-58.964,-59.005,-58.970,-58.872,-58.726,-58.550,-58.361,-58.176,-58.007,-57.868,
--57.763,-57.698,-57.672,-57.683,-57.728,-57.802,-57.898,-58.012,-58.138,-58.272,-58.408,-58.544,-58.675,-58.797,-58.907,-58.999,
--59.071,-59.118,-59.138,-59.129,-59.091,-59.026,-58.937,-58.829,-58.709,-58.584,-58.460,-58.346,-58.246,-58.166,-58.109,-58.076,
--58.067,-58.082,-58.119,-58.175,-58.249,-58.340,-58.447,-58.571,-58.712,-58.871,-59.048,-59.241,-59.449,-59.668,-59.891,-60.113,
--60.325,-60.520,-60.689,-60.829,-60.934,-61.004,-61.042,-61.052,-61.043,-61.023,-61.001,-60.988,-60.990,-61.013,-61.057,-61.122,
--61.201,-61.287,-61.371,-61.443,-61.492,-61.511,-61.496,-61.446,-61.363,-61.253,-61.126,-60.992,-60.863,-60.749,-60.659,-60.599,
--60.572,-60.576,-60.608,-60.660,-60.725,-60.793,-60.856,-60.909,-60.947,-60.969,-60.976,-60.974,-60.966,-60.958,-60.955,-60.962,
--60.979,-61.006,-61.040,-61.077,-61.111,-61.136,-61.148,-61.145,-61.127,-61.098,-61.065,-61.036,-61.022,-61.034,-61.083,-61.175,
--61.316,-61.506,-61.741,-62.011,-62.306,-62.611,-62.910,-63.189,-63.434,-63.637,-63.792,-63.897,-63.956,-63.976,-63.968,-63.942,
--63.911,-63.884,-63.869,-63.870,-63.888,-63.921,-63.961,-64.003,-64.036,-64.054,-64.047,-64.014,-63.953,-63.865,-63.757,-63.637,
--63.514,-63.398,-63.299,-63.224,-63.178,-63.160,-63.168,-63.196,-63.234,-63.272,-63.297,-63.298,-63.266,-63.194,-63.079,-62.921,
--62.725,-62.498,-62.249,-61.990,-61.732,-61.484,-61.254,-61.045,-60.858,-60.689,-60.533,-60.380,-60.220,-60.040,-59.832,-59.585,
--59.293,-58.955,-58.570,-58.143,-57.681,-57.193,-56.690,-56.183,-55.682,-55.196,-54.734,-54.299,-53.896,-53.525,-53.187,-52.878,
--52.597,-52.342,-52.108,-51.894,-51.696,-51.511,-51.335,-51.164,-50.992,-50.813,-50.619,-50.403,-50.159,-49.879,-49.559,-49.198,
--48.797,-48.360,-47.895,-47.412,-46.924,-46.444,-45.987,-45.562,-45.181,-44.848,-44.565,-44.329,-44.134,-43.971,-43.828,-43.692,
--43.553,-43.401,-43.229,-43.035,-42.819,-42.587,-42.345,-42.105,-41.877,-41.673,-41.501,-41.370,-41.283,-41.243,-41.247,-41.290,
--41.363,-41.458,-41.561,-41.662,-41.747,-41.806,-41.828,-41.805,-41.729,-41.597,-41.406,-41.159,-40.860,-40.515,-40.135,-39.734,
--39.327,-38.929,-38.558,-38.228,-37.953,-37.744,-37.604,-37.534,-37.529,-37.577,-37.665,-37.773,-37.883,-37.976,-38.034,-38.047,
--38.006,-37.911,-37.768,-37.586,-37.383,-37.174,-36.980,-36.817,-36.698,-36.632,-36.621,-36.661,-36.742,-36.849,-36.964,-37.068,
--37.143,-37.173,-37.149,-37.064,-36.921,-36.726,-36.491,-36.232,-35.968,-35.715,-35.490,-35.307,-35.173,-35.092,-35.061,-35.075,
--35.122,-35.187,-35.257,-35.313,-35.343,-35.332,-35.271,-35.152,-34.975,-34.738,-34.447,-34.109,-33.732,-33.329,-32.912,-32.494,
--32.087,-31.704,-31.355,-31.049,-30.791,-30.586,-30.433,-30.330,-30.271,-30.249,-30.252,-30.270,-30.289,-30.298,-30.287,-30.247,
--30.173,-30.062,-29.915,-29.737,-29.534,-29.316,-29.093,-28.874,-28.668,-28.484,-28.325,-28.194,-28.089,-28.007,-27.943,-27.888,
--27.836,-27.778,-27.710,-27.625,-27.522,-27.400,-27.263,-27.113,-26.955,-26.796,-26.640,-26.492,-26.355,-26.232,-26.121,-26.023,
--25.933,-25.849,-25.767,-25.683,-25.594,-25.499,-25.395,-25.285,-25.168,-25.049,-24.928,-24.809,-24.695,-24.587,-24.488,-24.396,
--24.311,-24.232,-24.155,-24.078,-23.997,-23.909,-23.811,-23.700,-23.574,-23.433,-23.277,-23.107,-22.924,-22.733,-22.537,-22.340,
--22.147,-21.961,-21.787,-21.628,-21.486,-21.360,-21.252,-21.157,-21.072,-20.993,-20.913,-20.828,-20.732,-20.620,-20.489,-20.337,
--20.166,-19.976,-19.773,-19.561,-19.347,-19.138,-18.940,-18.760,-18.601,-18.466,-18.358,-18.276,-18.218,-18.182,-18.164,-18.161,
--18.167,-18.181,-18.196,-18.211,-18.223,-18.227,-18.221,-18.204,-18.171,-18.121,-18.054,-17.967,-17.864,-17.746,-17.618,-17.486,
--17.357,-17.240,-17.144,-17.075,-17.041,-17.045,-17.087,-17.163,-17.267,-17.387,-17.511,-17.623,-17.708,-17.751,-17.741,-17.670,
--17.534,-17.333,-17.076,-16.771,-16.434,-16.079,-15.722,-15.380,-15.064,-14.781,-14.537,-14.330,-14.154,-13.999,-13.854,-13.703,
--13.534,-13.333,-13.091,-12.801,-12.461,-12.071,-11.638,-11.169,-10.674,-10.166,-9.656,-9.156,-8.677,-8.227,-7.815,-7.446,
--7.126,-6.860,-6.652,-6.508,-6.433,-6.434,-6.515,-6.684,-6.942,-7.292,-7.732,-8.255,-8.852,-9.505,-10.196,-10.899,
--11.590,-12.239,-12.821,-13.310,-13.688,-13.940,-14.060,-14.049,-13.917,-13.679,-13.358,-12.979,-12.573,-12.167,-11.787,-11.456,
--11.189,-10.997,-10.882,-10.840,-10.862,-10.932,-11.035,-11.152,-11.268,-11.367,-11.441,-11.481,-11.489,-11.465,-11.417,-11.351,
--11.279,-11.208,-11.145,-11.096,-11.063,-11.046,-11.040,-11.042,-11.045,-11.042,-11.029,-11.002,-10.958,-10.898,-10.824,-10.740,
--10.651,-10.561,-10.477,-10.401,-10.335,-10.281,-10.236,-10.200,-10.167,-10.136,-10.101,-10.060,-10.012,-9.955,-9.889,-9.817,
--9.740,-9.659,-9.577,-9.495,-9.413,-9.330,-9.246,-9.157,-9.064,-8.963,-8.855,-8.739,-8.617,-8.490,-8.362,-8.234,
--8.112,-7.996,-7.889,-7.790,-7.699,-7.614,-7.532,-7.450,-7.363,-7.270,-7.169,-7.059,-6.941,-6.817,-6.692,-6.568,
--6.450,-6.342,-6.245,-6.160,-6.088,-6.025,-5.970,-5.918,-5.866,-5.809,-5.744,-5.671,-5.589,-5.499,-5.405,-5.309,
--5.215,-5.129,-5.052,-4.987,-4.935,-4.896,-4.869,-4.851,-4.839,-4.831,-4.823,-4.815,-4.804,-4.790,-4.775,-4.760,
--4.745,-4.734,-4.725,-4.721,-4.721,-4.723,-4.727,-4.729,-4.727,-4.719,-4.703,-4.677,-4.640,-4.592,-4.535,-4.468,
--4.394,-4.313,-4.228,-4.138,-4.046,-3.950,-3.852,-3.752,-3.651,-3.549,-3.449,-3.352,-3.260,-3.177,-3.105,-3.047,
--3.004,-2.977,-2.966,-2.969,-2.983,-3.003,-3.024,-3.041,-3.047,-3.038,-3.009,-2.956,-2.880,-2.779,-2.657,-2.516,
--2.363,-2.202,-2.040,-1.881,-1.730,-1.591,-1.465,-1.351,-1.248,-1.150,-1.054,-.953,-.841,-.713,-.564,-.390,
--.190,.036,.286,.557,.844,1.143,1.447,1.754,2.060,2.363,2.662,2.961,3.261,3.566,3.880,4.206,
-4.547,4.901,5.269,5.645,6.023,6.395,6.753,7.085,7.385,7.644,7.858,8.025,8.146,8.226,8.272,8.293,
-8.301,8.306,8.318,8.345,8.392,8.459,8.547,8.649,8.759,8.868,8.966,9.046,9.100,9.124,9.118,9.084,
-9.027,8.956,8.881,8.813,8.760,8.732,8.734,8.769,8.834,8.924,9.033,9.148,9.258,9.352,9.418,9.448,
-9.435,9.377,9.275,9.134,8.960,8.764,8.556,7.492,7.341,7.201,7.076,6.972,6.889,6.830,6.795,6.783,
-6.793,6.824,6.875,6.943,7.028,7.126,7.237,7.358,7.485,7.617,7.749,7.878,8.000,8.112,8.213,8.301,
-8.377,8.441,8.496,8.547,8.598,8.653,8.718,8.795,8.888,8.999,9.125,9.266,9.417,9.574,9.730,9.881,
-10.021,10.145,10.252,10.341,10.412,10.469,10.517,10.560,10.605,10.658,10.723,10.806,10.909,11.031,11.171,11.327,
-11.493,11.664,11.834,11.998,12.150,12.287,12.408,12.511,12.599,12.674,12.739,12.800,12.861,12.925,12.997,13.079,
-13.170,13.270,13.377,13.488,13.598,13.704,13.802,13.890,13.965,14.029,14.082,14.127,14.168,14.210,14.258,14.316,
-14.388,14.475,14.579,14.698,14.828,14.966,15.105,15.240,15.363,15.469,15.555,15.617,15.655,15.670,15.666,15.647,
-15.619,15.587,15.559,15.537,15.525,15.525,15.534,15.549,15.565,15.574,15.570,15.544,15.489,15.400,15.272,15.105,
-14.900,14.662,14.397,14.115,13.826,13.541,13.272,13.030,12.823,12.658,12.541,12.473,12.454,12.479,12.544,12.641,
-12.761,12.894,13.031,13.162,13.277,13.371,13.436,13.469,13.468,13.434,13.368,13.276,13.164,13.039,12.910,12.787,
-12.677,12.590,12.533,12.510,12.526,12.579,12.669,12.789,12.932,13.089,13.248,13.400,13.533,13.637,13.706,13.735,
-13.722,13.671,13.585,13.474,13.345,13.210,13.079,12.962,12.864,12.791,12.745,12.723,12.722,12.736,12.757,12.777,
-12.791,12.794,12.783,12.759,12.725,12.687,12.653,12.631,12.629,12.655,12.713,12.806,12.933,13.090,13.269,13.462,
-13.659,13.849,14.023,14.173,14.293,14.381,14.437,14.462,14.462,14.441,14.406,14.360,14.308,14.252,14.192,14.126,
-14.052,13.965,13.862,13.740,13.596,13.433,13.250,13.052,12.845,12.636,12.431,12.237,12.060,11.904,11.769,11.655,
-11.561,11.480,11.407,11.337,11.264,11.183,11.091,10.989,10.878,10.763,10.649,10.545,10.458,10.397,10.370,10.381,
-10.434,10.530,10.665,10.835,11.030,11.241,11.455,11.658,11.837,11.978,12.070,12.104,12.072,11.972,11.803,11.570,
-11.279,10.942,10.572,10.182,9.789,9.407,9.049,8.727,8.450,8.220,8.039,7.902,7.804,7.735,7.683,7.636,
-7.585,7.520,7.435,7.326,7.194,7.042,6.877,6.707,6.542,6.391,6.260,6.155,6.078,6.027,5.999,5.987,
-5.982,5.975,5.958,5.924,5.869,5.792,5.697,5.588,5.473,5.361,5.262,5.184,5.132,5.110,5.116,5.147,
-5.194,5.249,5.301,5.341,5.359,5.350,5.313,5.250,5.166,5.071,4.975,4.888,4.821,4.781,4.771,4.791,
-4.835,4.894,4.956,5.007,5.034,5.025,4.974,4.876,4.737,4.564,4.372,4.177,3.998,3.854,3.758,3.721,
-3.747,3.829,3.956,4.108,4.260,4.383,4.448,4.427,4.298,4.046,3.663,3.153,2.527,1.805,1.016,.190,
--.640,-1.442,-2.188,-2.855,-3.429,-3.902,-4.274,-4.554,-4.755,-4.893,-4.988,-5.059,-5.123,-5.195,-5.284,-5.397,
--5.537,-5.703,-5.891,-6.096,-6.313,-6.537,-6.764,-6.992,-7.220,-7.449,-7.679,-7.913,-8.153,-8.399,-8.654,-8.916,
--9.186,-9.462,-9.743,-10.027,-10.313,-10.602,-10.894,-11.190,-11.493,-11.805,-12.128,-12.465,-12.816,-13.180,-13.557,-13.942,
--14.330,-14.718,-15.097,-15.463,-15.810,-16.134,-16.432,-16.702,-16.946,-17.166,-17.367,-17.555,-17.735,-17.914,-18.098,-18.293,
--18.503,-18.731,-18.979,-19.245,-19.530,-19.831,-20.144,-20.469,-20.801,-21.140,-21.485,-21.836,-22.196,-22.566,-22.949,-23.348,
--23.764,-24.199,-24.652,-25.119,-25.598,-26.081,-26.562,-27.032,-27.484,-27.910,-28.305,-28.666,-28.992,-29.286,-29.551,-29.797,
--30.031,-30.263,-30.503,-30.758,-31.034,-31.333,-31.655,-31.996,-32.351,-32.709,-33.063,-33.403,-33.721,-34.011,-34.270,-34.498,
--34.698,-34.874,-35.036,-35.189,-35.342,-35.500,-35.666,-35.842,-36.025,-36.209,-36.389,-36.557,-36.705,-36.830,-36.927,-36.999,
--37.049,-37.086,-37.122,-37.169,-37.241,-37.350,-37.506,-37.715,-37.978,-38.290,-38.642,-39.021,-39.411,-39.793,-40.150,-40.468,
--40.735,-40.945,-41.098,-41.198,-41.257,-41.287,-41.306,-41.330,-41.376,-41.457,-41.584,-41.762,-41.992,-42.270,-42.592,-42.946,
--43.323,-43.713,-44.108,-44.501,-44.887,-45.267,-45.642,-46.013,-46.386,-46.763,-47.147,-47.537,-47.930,-48.321,-48.703,-49.066,
--49.400,-49.696,-49.943,-50.137,-50.274,-50.356,-50.385,-50.372,-50.325,-50.259,-50.186,-50.120,-50.073,-50.057,-50.078,-50.141,
--50.248,-50.399,-50.589,-50.815,-51.069,-51.345,-51.637,-51.939,-52.245,-52.550,-52.851,-53.144,-53.425,-53.692,-53.943,-54.176,
--54.389,-54.582,-54.753,-54.903,-55.035,-55.152,-55.258,-55.359,-55.459,-55.564,-55.681,-55.813,-55.962,-56.130,-56.315,-56.513,
--56.720,-56.929,-57.131,-57.321,-57.489,-57.632,-57.744,-57.824,-57.873,-57.893,-57.890,-57.870,-57.839,-57.806,-57.775,-57.753,
--57.741,-57.742,-57.752,-57.770,-57.788,-57.802,-57.803,-57.786,-57.745,-57.678,-57.582,-57.459,-57.314,-57.153,-56.985,-56.820,
--56.669,-56.540,-56.443,-56.384,-56.365,-56.388,-56.447,-56.535,-56.641,-56.753,-56.856,-56.935,-56.977,-56.972,-56.912,-56.795,
--56.622,-56.402,-56.146,-55.870,-55.595,-55.340,-55.127,-54.974,-54.896,-54.905,-55.006,-55.196,-55.470,-55.814,-56.209,-56.637,
--57.073,-57.495,-57.883,-58.219,-58.490,-58.687,-58.809,-58.856,-58.836,-58.759,-58.636,-58.483,-58.312,-58.136,-57.966,-57.810,
--57.677,-57.569,-57.489,-57.439,-57.419,-57.428,-57.464,-57.527,-57.615,-57.725,-57.854,-57.998,-58.153,-58.311,-58.465,-58.607,
--58.729,-58.823,-58.883,-58.905,-58.886,-58.827,-58.733,-58.610,-58.465,-58.310,-58.155,-58.011,-57.887,-57.789,-57.723,-57.690,
--57.690,-57.721,-57.777,-57.854,-57.946,-58.048,-58.158,-58.273,-58.393,-58.519,-58.651,-58.793,-58.944,-59.107,-59.278,-59.456,
--59.637,-59.814,-59.982,-60.133,-60.263,-60.368,-60.445,-60.496,-60.524,-60.534,-60.532,-60.526,-60.524,-60.530,-60.549,-60.582,
--60.627,-60.681,-60.736,-60.786,-60.821,-60.835,-60.821,-60.777,-60.702,-60.600,-60.476,-60.339,-60.199,-60.065,-59.948,-59.855,
--59.792,-59.760,-59.758,-59.783,-59.829,-59.889,-59.954,-60.018,-60.074,-60.120,-60.152,-60.171,-60.180,-60.181,-60.178,-60.174,
--60.170,-60.168,-60.166,-60.162,-60.152,-60.133,-60.103,-60.059,-60.002,-59.937,-59.869,-59.807,-59.761,-59.743,-59.763,-59.830,
--59.950,-60.126,-60.355,-60.632,-60.945,-61.281,-61.625,-61.960,-62.272,-62.548,-62.778,-62.959,-63.091,-63.177,-63.226,-63.249,
--63.257,-63.262,-63.274,-63.301,-63.346,-63.409,-63.486,-63.573,-63.659,-63.737,-63.797,-63.832,-63.840,-63.818,-63.770,-63.701,
--63.618,-63.531,-63.448,-63.379,-63.329,-63.300,-63.290,-63.296,-63.308,-63.316,-63.307,-63.269,-63.189,-63.059,-62.874,-62.631,
--62.334,-61.990,-61.609,-61.204,-60.789,-60.377,-59.982,-59.613,-59.275,-58.972,-58.701,-58.458,-58.235,-58.021,-57.808,-57.585,
--57.345,-57.082,-56.795,-56.483,-56.151,-55.805,-55.451,-55.099,-54.755,-54.426,-54.116,-53.829,-53.563,-53.316,-53.084,-52.862,
--52.646,-52.428,-52.207,-51.977,-51.739,-51.491,-51.235,-50.972,-50.705,-50.433,-50.158,-49.879,-49.594,-49.300,-48.994,-48.673,
--48.333,-47.973,-47.594,-47.197,-46.788,-46.373,-45.960,-45.558,-45.175,-44.821,-44.500,-44.218,-43.976,-43.771,-43.599,-43.452,
--43.322,-43.200,-43.075,-42.939,-42.786,-42.612,-42.416,-42.200,-41.968,-41.728,-41.488,-41.257,-41.046,-40.862,-40.713,-40.604,
--40.537,-40.511,-40.523,-40.567,-40.632,-40.708,-40.784,-40.845,-40.878,-40.873,-40.820,-40.711,-40.544,-40.317,-40.037,-39.711,
--39.352,-38.973,-38.593,-38.229,-37.896,-37.610,-37.380,-37.213,-37.111,-37.070,-37.080,-37.127,-37.198,-37.273,-37.336,-37.374,
--37.374,-37.332,-37.246,-37.122,-36.970,-36.803,-36.637,-36.489,-36.373,-36.302,-36.281,-36.313,-36.393,-36.511,-36.653,-36.801,
--36.938,-37.044,-37.105,-37.110,-37.052,-36.933,-36.758,-36.539,-36.290,-36.029,-35.776,-35.548,-35.358,-35.219,-35.134,-35.103,
--35.122,-35.179,-35.261,-35.349,-35.427,-35.476,-35.480,-35.428,-35.310,-35.122,-34.865,-34.544,-34.170,-33.754,-33.313,-32.864,
--32.423,-32.007,-31.632,-31.309,-31.047,-30.850,-30.721,-30.655,-30.646,-30.683,-30.753,-30.843,-30.936,-31.020,-31.080,-31.106,
--31.090,-31.028,-30.920,-30.769,-30.581,-30.365,-30.132,-29.892,-29.656,-29.434,-29.234,-29.058,-28.910,-28.789,-28.690,-28.608,
--28.536,-28.467,-28.394,-28.310,-28.212,-28.097,-27.965,-27.818,-27.660,-27.495,-27.328,-27.165,-27.010,-26.866,-26.736,-26.619,
--26.515,-26.420,-26.331,-26.244,-26.156,-26.063,-25.964,-25.856,-25.740,-25.618,-25.491,-25.362,-25.234,-25.111,-24.994,-24.885,
--24.785,-24.692,-24.605,-24.520,-24.434,-24.343,-24.243,-24.129,-24.000,-23.854,-23.691,-23.511,-23.318,-23.116,-22.909,-22.703,
--22.503,-22.315,-22.143,-21.990,-21.857,-21.745,-21.651,-21.572,-21.502,-21.435,-21.365,-21.284,-21.188,-21.071,-20.931,-20.766,
--20.579,-20.373,-20.153,-19.924,-19.695,-19.473,-19.265,-19.077,-18.914,-18.777,-18.669,-18.589,-18.534,-18.501,-18.485,-18.484,
--18.492,-18.505,-18.520,-18.533,-18.544,-18.549,-18.548,-18.537,-18.517,-18.485,-18.440,-18.381,-18.308,-18.222,-18.125,-18.020,
--17.911,-17.806,-17.711,-17.632,-17.577,-17.550,-17.555,-17.592,-17.659,-17.748,-17.853,-17.961,-18.059,-18.136,-18.179,-18.178,
--18.126,-18.020,-17.864,-17.661,-17.423,-17.163,-16.895,-16.634,-16.393,-16.185,-16.015,-15.887,-15.798,-15.741,-15.704,-15.673,
--15.631,-15.562,-15.450,-15.284,-15.055,-14.758,-14.396,-13.973,-13.501,-12.991,-12.460,-11.924,-11.400,-10.901,-10.442,-10.032,
--9.680,-9.390,-9.166,-9.009,-8.919,-8.896,-8.939,-9.048,-9.222,-9.459,-9.757,-10.113,-10.521,-10.973,-11.457,-11.959,
--12.464,-12.954,-13.407,-13.807,-14.136,-14.379,-14.526,-14.573,-14.520,-14.373,-14.146,-13.854,-13.518,-13.161,-12.805,-12.471,
--12.176,-11.936,-11.758,-11.645,-11.595,-11.602,-11.653,-11.735,-11.834,-11.936,-12.028,-12.100,-12.145,-12.161,-12.147,-12.108,
--12.049,-11.977,-11.900,-11.824,-11.756,-11.700,-11.656,-11.627,-11.608,-11.598,-11.593,-11.589,-11.581,-11.567,-11.545,-11.514,
--11.474,-11.427,-11.373,-11.314,-11.252,-11.189,-11.125,-11.061,-10.996,-10.932,-10.868,-10.802,-10.736,-10.669,-10.602,-10.534,
--10.466,-10.398,-10.330,-10.262,-10.191,-10.116,-10.037,-9.951,-9.857,-9.753,-9.641,-9.520,-9.393,-9.261,-9.128,-8.996,
--8.868,-8.748,-8.635,-8.532,-8.438,-8.351,-8.270,-8.191,-8.112,-8.031,-7.947,-7.858,-7.767,-7.673,-7.580,-7.490,
--7.406,-7.331,-7.265,-7.209,-7.163,-7.124,-7.089,-7.055,-7.018,-6.975,-6.923,-6.861,-6.789,-6.709,-6.624,-6.538,
--6.455,-6.380,-6.316,-6.265,-6.230,-6.210,-6.204,-6.207,-6.218,-6.233,-6.246,-6.256,-6.261,-6.259,-6.252,-6.239,
--6.223,-6.207,-6.193,-6.181,-6.174,-6.170,-6.168,-6.165,-6.160,-6.149,-6.128,-6.096,-6.050,-5.990,-5.916,-5.830,
--5.732,-5.627,-5.516,-5.402,-5.285,-5.168,-5.049,-4.930,-4.807,-4.682,-4.553,-4.419,-4.283,-4.145,-4.008,-3.876,
--3.752,-3.640,-3.543,-3.463,-3.400,-3.354,-3.321,-3.296,-3.274,-3.247,-3.208,-3.151,-3.072,-2.965,-2.832,-2.672,
--2.492,-2.297,-2.095,-1.895,-1.705,-1.535,-1.389,-1.272,-1.183,-1.121,-1.080,-1.052,-1.028,-.997,-.948,-.873,
--.763,-.614,-.423,-.192,.077,.376,.700,1.039,1.385,1.732,2.073,2.406,2.728,3.041,3.345,3.645,
-3.943,4.242,4.543,4.847,5.152,5.454,5.748,6.027,6.285,6.516,6.715,6.878,7.006,7.099,7.163,7.203,
-7.227,7.245,7.263,7.291,7.332,7.390,7.464,7.553,7.652,7.754,7.852,7.939,8.009,8.057,8.081,8.081,
-8.061,8.025,7.980,7.935,7.895,7.869,7.861,7.874,7.907,7.959,8.024,8.095,8.165,8.225,8.268,8.286,
-8.276,8.235,8.163,8.063,7.939,7.798,7.646,7.492,5.903,5.808,5.731,5.676,5.640,5.625,5.627,5.644,
-5.676,5.719,5.774,5.840,5.916,6.003,6.102,6.212,6.334,6.465,6.603,6.746,6.889,7.028,7.159,7.278,
-7.382,7.470,7.541,7.598,7.644,7.683,7.722,7.766,7.820,7.890,7.978,8.086,8.213,8.356,8.510,8.670,
-8.829,8.980,9.117,9.234,9.330,9.403,9.454,9.488,9.509,9.525,9.542,9.569,9.612,9.677,9.767,9.885,
-10.028,10.195,10.381,10.580,10.786,10.992,11.191,11.380,11.554,11.711,11.851,11.976,12.087,12.188,12.284,12.376,
-12.469,12.563,12.661,12.761,12.862,12.962,13.059,13.149,13.230,13.301,13.361,13.412,13.457,13.498,13.539,13.586,
-13.642,13.713,13.799,13.903,14.023,14.158,14.303,14.453,14.601,14.741,14.868,14.977,15.064,15.129,15.171,15.193,
-15.201,15.198,15.191,15.185,15.184,15.192,15.209,15.232,15.259,15.282,15.294,15.287,15.253,15.183,15.073,14.920,
-14.723,14.487,14.219,13.928,13.627,13.328,13.046,12.794,12.582,12.420,12.312,12.261,12.264,12.316,12.409,12.531,
-12.672,12.817,12.957,13.080,13.177,13.243,13.274,13.270,13.232,13.166,13.076,12.969,12.853,12.734,12.621,12.519,
-12.432,12.365,12.319,12.297,12.298,12.320,12.361,12.418,12.487,12.564,12.644,12.723,12.794,12.855,12.901,12.930,
-12.939,12.929,12.900,12.855,12.796,12.727,12.654,12.580,12.510,12.448,12.397,12.357,12.330,12.313,12.305,12.303,
-12.303,12.303,12.299,12.290,12.276,12.258,12.237,12.216,12.201,12.194,12.199,12.221,12.261,12.321,12.399,12.494,
-12.602,12.719,12.842,12.963,13.080,13.187,13.282,13.362,13.426,13.472,13.502,13.515,13.512,13.495,13.463,13.417,
-13.357,13.283,13.195,13.092,12.976,12.848,12.708,12.560,12.405,12.248,12.090,11.936,11.788,11.647,11.516,11.395,
-11.284,11.184,11.093,11.011,10.936,10.871,10.813,10.764,10.726,10.699,10.686,10.686,10.702,10.733,10.778,10.836,
-10.902,10.975,11.048,11.116,11.174,11.216,11.237,11.232,11.197,11.131,11.030,10.895,10.727,10.528,10.302,10.054,
-9.787,9.510,9.227,8.945,8.671,8.410,8.167,7.945,7.747,7.572,7.421,7.289,7.174,7.071,6.973,6.877,
-6.777,6.670,6.554,6.430,6.298,6.162,6.028,5.900,5.785,5.686,5.608,5.553,5.520,5.506,5.506,5.514,
-5.523,5.524,5.511,5.479,5.423,5.344,5.245,5.130,5.006,4.882,4.767,4.669,4.593,4.545,4.524,4.528,
-4.552,4.589,4.629,4.664,4.686,4.689,4.669,4.626,4.563,4.488,4.407,4.330,4.267,4.225,4.208,4.219,
-4.256,4.312,4.378,4.443,4.495,4.522,4.517,4.473,4.390,4.273,4.128,3.970,3.813,3.672,3.562,3.494,
-3.475,3.505,3.579,3.684,3.802,3.912,3.988,4.008,3.949,3.796,3.537,3.169,2.697,2.134,1.499,.815,
-.108,-.594,-1.267,-1.889,-2.446,-2.928,-3.331,-3.661,-3.925,-4.136,-4.308,-4.458,-4.599,-4.743,-4.899,-5.072,
--5.264,-5.473,-5.695,-5.925,-6.159,-6.392,-6.621,-6.844,-7.062,-7.277,-7.494,-7.715,-7.946,-8.190,-8.450,-8.725,
--9.017,-9.323,-9.640,-9.965,-10.294,-10.626,-10.958,-11.290,-11.624,-11.960,-12.302,-12.653,-13.014,-13.387,-13.772,-14.165,
--14.564,-14.962,-15.352,-15.727,-16.078,-16.398,-16.684,-16.930,-17.137,-17.308,-17.447,-17.562,-17.661,-17.756,-17.855,-17.969,
--18.104,-18.266,-18.459,-18.681,-18.932,-19.207,-19.501,-19.809,-20.123,-20.441,-20.759,-21.076,-21.394,-21.715,-22.044,-22.387,
--22.748,-23.132,-23.542,-23.979,-24.442,-24.924,-25.421,-25.922,-26.418,-26.899,-27.356,-27.781,-28.169,-28.520,-28.834,-29.117,
--29.377,-29.623,-29.867,-30.117,-30.385,-30.676,-30.993,-31.339,-31.708,-32.095,-32.491,-32.887,-33.272,-33.637,-33.975,-34.280,
--34.551,-34.788,-34.996,-35.181,-35.349,-35.507,-35.664,-35.824,-35.991,-36.165,-36.347,-36.533,-36.721,-36.905,-37.084,-37.255,
--37.418,-37.575,-37.729,-37.885,-38.050,-38.229,-38.427,-38.645,-38.885,-39.143,-39.413,-39.687,-39.955,-40.206,-40.430,-40.620,
--40.771,-40.880,-40.953,-40.994,-41.016,-41.032,-41.055,-41.100,-41.180,-41.303,-41.477,-41.701,-41.973,-42.285,-42.626,-42.986,
--43.352,-43.712,-44.057,-44.384,-44.689,-44.975,-45.249,-45.519,-45.793,-46.082,-46.392,-46.728,-47.091,-47.477,-47.878,-48.284,
--48.681,-49.055,-49.391,-49.676,-49.903,-50.067,-50.168,-50.212,-50.209,-50.171,-50.116,-50.061,-50.020,-50.009,-50.038,-50.116,
--50.244,-50.422,-50.645,-50.905,-51.193,-51.499,-51.811,-52.122,-52.425,-52.714,-52.988,-53.245,-53.487,-53.715,-53.933,-54.143,
--54.345,-54.542,-54.734,-54.919,-55.096,-55.266,-55.425,-55.576,-55.717,-55.850,-55.979,-56.107,-56.236,-56.369,-56.510,-56.659,
--56.816,-56.979,-57.145,-57.308,-57.463,-57.605,-57.728,-57.827,-57.899,-57.943,-57.961,-57.954,-57.927,-57.887,-57.838,-57.788,
--57.740,-57.699,-57.665,-57.638,-57.616,-57.595,-57.568,-57.531,-57.479,-57.407,-57.314,-57.199,-57.066,-56.920,-56.770,-56.623,
--56.490,-56.381,-56.301,-56.258,-56.252,-56.283,-56.344,-56.425,-56.516,-56.602,-56.667,-56.699,-56.685,-56.616,-56.489,-56.305,
--56.070,-55.797,-55.501,-55.201,-54.920,-54.679,-54.496,-54.388,-54.367,-54.439,-54.602,-54.851,-55.172,-55.550,-55.963,-56.390,
--56.810,-57.201,-57.547,-57.835,-58.057,-58.211,-58.298,-58.325,-58.299,-58.232,-58.136,-58.021,-57.897,-57.773,-57.654,-57.544,
--57.444,-57.356,-57.279,-57.215,-57.162,-57.124,-57.102,-57.099,-57.119,-57.164,-57.237,-57.337,-57.463,-57.609,-57.769,-57.934,
--58.092,-58.233,-58.347,-58.423,-58.456,-58.442,-58.382,-58.280,-58.145,-57.987,-57.820,-57.656,-57.508,-57.387,-57.301,-57.256,
--57.252,-57.288,-57.359,-57.457,-57.573,-57.700,-57.829,-57.955,-58.072,-58.181,-58.280,-58.374,-58.464,-58.556,-58.652,-58.755,
--58.866,-58.985,-59.109,-59.234,-59.357,-59.472,-59.575,-59.664,-59.737,-59.795,-59.839,-59.874,-59.902,-59.929,-59.959,-59.993,
--60.033,-60.078,-60.125,-60.169,-60.205,-60.228,-60.231,-60.211,-60.165,-60.094,-60.000,-59.888,-59.765,-59.638,-59.516,-59.406,
--59.315,-59.248,-59.205,-59.188,-59.193,-59.216,-59.251,-59.294,-59.337,-59.376,-59.407,-59.429,-59.440,-59.442,-59.436,-59.423,
--59.405,-59.383,-59.357,-59.325,-59.287,-59.239,-59.181,-59.111,-59.030,-58.941,-58.849,-58.760,-58.685,-58.632,-58.612,-58.635,
--58.708,-58.835,-59.018,-59.254,-59.536,-59.852,-60.191,-60.536,-60.873,-61.187,-61.466,-61.702,-61.891,-62.032,-62.128,-62.188,
--62.222,-62.240,-62.254,-62.274,-62.307,-62.358,-62.428,-62.516,-62.618,-62.725,-62.831,-62.928,-63.010,-63.071,-63.110,-63.126,
--63.122,-63.103,-63.074,-63.041,-63.008,-62.977,-62.950,-62.923,-62.892,-62.848,-62.783,-62.686,-62.548,-62.361,-62.119,-61.821,
--61.468,-61.066,-60.624,-60.155,-59.673,-59.192,-58.726,-58.287,-57.885,-57.527,-57.213,-56.943,-56.712,-56.512,-56.336,-56.172,
--56.013,-55.851,-55.681,-55.500,-55.308,-55.107,-54.899,-54.690,-54.484,-54.284,-54.092,-53.909,-53.733,-53.560,-53.384,-53.199,
--52.999,-52.777,-52.528,-52.250,-51.942,-51.606,-51.246,-50.869,-50.481,-50.090,-49.704,-49.328,-48.967,-48.622,-48.295,-47.983,
--47.683,-47.390,-47.100,-46.809,-46.514,-46.213,-45.906,-45.598,-45.290,-44.989,-44.701,-44.431,-44.184,-43.964,-43.770,-43.603,
--43.459,-43.332,-43.216,-43.103,-42.984,-42.854,-42.706,-42.536,-42.343,-42.130,-41.899,-41.657,-41.414,-41.178,-40.959,-40.767,
--40.609,-40.492,-40.419,-40.390,-40.401,-40.445,-40.514,-40.594,-40.673,-40.736,-40.769,-40.760,-40.699,-40.580,-40.398,-40.156,
--39.859,-39.515,-39.138,-38.741,-38.341,-37.952,-37.588,-37.262,-36.980,-36.748,-36.565,-36.428,-36.329,-36.260,-36.210,-36.169,
--36.128,-36.081,-36.025,-35.959,-35.888,-35.818,-35.758,-35.717,-35.704,-35.726,-35.787,-35.889,-36.027,-36.194,-36.379,-36.567,
--36.743,-36.893,-37.002,-37.060,-37.061,-37.003,-36.891,-36.731,-36.538,-36.326,-36.111,-35.912,-35.742,-35.613,-35.533,-35.502,
--35.519,-35.575,-35.657,-35.751,-35.838,-35.902,-35.926,-35.895,-35.801,-35.638,-35.405,-35.107,-34.753,-34.355,-33.931,-33.497,
--33.071,-32.672,-32.315,-32.013,-31.775,-31.606,-31.508,-31.477,-31.506,-31.585,-31.701,-31.840,-31.987,-32.126,-32.245,-32.331,
--32.377,-32.375,-32.324,-32.223,-32.078,-31.893,-31.678,-31.440,-31.190,-30.938,-30.690,-30.455,-30.236,-30.036,-29.857,-29.695,
--29.549,-29.415,-29.288,-29.165,-29.041,-28.913,-28.780,-28.641,-28.498,-28.350,-28.202,-28.055,-27.912,-27.774,-27.643,-27.519,
--27.402,-27.289,-27.178,-27.067,-26.953,-26.834,-26.706,-26.570,-26.425,-26.272,-26.112,-25.947,-25.780,-25.615,-25.454,-25.299,
--25.151,-25.011,-24.879,-24.754,-24.632,-24.511,-24.388,-24.261,-24.126,-23.982,-23.828,-23.664,-23.493,-23.316,-23.137,-22.960,
--22.790,-22.630,-22.483,-22.353,-22.238,-22.140,-22.055,-21.981,-21.911,-21.840,-21.762,-21.672,-21.564,-21.435,-21.283,-21.107,
--20.909,-20.693,-20.465,-20.232,-19.999,-19.776,-19.568,-19.381,-19.220,-19.087,-18.984,-18.908,-18.858,-18.831,-18.820,-18.823,
--18.835,-18.851,-18.868,-18.884,-18.895,-18.902,-18.902,-18.894,-18.878,-18.852,-18.815,-18.766,-18.703,-18.626,-18.536,-18.434,
--18.323,-18.208,-18.095,-17.990,-17.899,-17.831,-17.791,-17.783,-17.808,-17.866,-17.953,-18.062,-18.184,-18.308,-18.421,-18.513,
--18.575,-18.598,-18.578,-18.516,-18.416,-18.285,-18.133,-17.973,-17.818,-17.679,-17.569,-17.492,-17.453,-17.449,-17.475,-17.520,
--17.571,-17.613,-17.629,-17.604,-17.526,-17.385,-17.178,-16.904,-16.568,-16.179,-15.752,-15.302,-14.845,-14.400,-13.981,-13.602,
--13.273,-13.002,-12.792,-12.643,-12.554,-12.519,-12.533,-12.591,-12.687,-12.814,-12.969,-13.148,-13.346,-13.560,-13.787,-14.020,
--14.256,-14.485,-14.699,-14.889,-15.045,-15.157,-15.218,-15.220,-15.160,-15.039,-14.858,-14.627,-14.354,-14.053,-13.739,-13.428,
--13.134,-12.871,-12.650,-12.478,-12.359,-12.291,-12.271,-12.291,-12.341,-12.411,-12.487,-12.559,-12.619,-12.657,-12.671,-12.659,
--12.621,-12.561,-12.485,-12.399,-12.309,-12.223,-12.145,-12.080,-12.030,-11.998,-11.981,-11.979,-11.988,-12.004,-12.024,-12.044,
--12.060,-12.069,-12.069,-12.058,-12.037,-12.004,-11.960,-11.907,-11.846,-11.780,-11.708,-11.635,-11.561,-11.487,-11.416,-11.346,
--11.280,-11.215,-11.150,-11.086,-11.018,-10.946,-10.868,-10.782,-10.686,-10.581,-10.466,-10.343,-10.213,-10.079,-9.944,-9.811,
--9.683,-9.561,-9.447,-9.342,-9.247,-9.160,-9.080,-9.004,-8.932,-8.861,-8.791,-8.720,-8.650,-8.580,-8.513,-8.450,
--8.393,-8.343,-8.301,-8.266,-8.239,-8.216,-8.196,-8.175,-8.151,-8.122,-8.084,-8.039,-7.987,-7.928,-7.866,-7.805,
--7.748,-7.698,-7.658,-7.631,-7.617,-7.616,-7.625,-7.641,-7.661,-7.681,-7.696,-7.705,-7.703,-7.692,-7.670,-7.641,
--7.605,-7.567,-7.528,-7.491,-7.458,-7.430,-7.405,-7.382,-7.359,-7.332,-7.299,-7.258,-7.206,-7.142,-7.067,-6.982,
--6.888,-6.789,-6.685,-6.580,-6.473,-6.364,-6.251,-6.132,-6.003,-5.860,-5.700,-5.520,-5.319,-5.098,-4.858,-4.604,
--4.343,-4.082,-3.829,-3.590,-3.373,-3.180,-3.015,-2.875,-2.757,-2.655,-2.561,-2.467,-2.364,-2.245,-2.105,-1.943,
--1.759,-1.559,-1.350,-1.143,-.948,-.778,-.642,-.548,-.501,-.500,-.540,-.614,-.709,-.809,-.898,-.960,
--.980,-.945,-.847,-.682,-.451,-.159,.183,.563,.968,1.382,1.791,2.184,2.552,2.889,3.193,3.465,
-3.710,3.931,4.137,4.333,4.525,4.715,4.907,5.099,5.288,5.472,5.644,5.800,5.935,6.048,6.136,6.200,
-6.244,6.271,6.286,6.296,6.306,6.322,6.346,6.380,6.426,6.480,6.540,6.602,6.662,6.717,6.763,6.799,
-6.824,6.840,6.848,6.851,6.854,6.859,6.868,6.882,6.901,6.924,6.946,6.965,6.975,6.971,6.950,6.909,
-6.845,6.761,6.657,6.538,6.408,6.273,6.141,6.016,5.903,4.543,4.489,4.461,4.457,4.474,4.508,4.555,
-4.612,4.674,4.739,4.806,4.874,4.943,5.017,5.096,5.182,5.278,5.383,5.499,5.621,5.750,5.879,6.007,
-6.127,6.237,6.333,6.414,6.481,6.534,6.578,6.616,6.655,6.701,6.757,6.830,6.921,7.031,7.158,7.301,
-7.453,7.608,7.758,7.897,8.018,8.117,8.190,8.238,8.261,8.265,8.256,8.242,8.233,8.237,8.263,8.317,
-8.405,8.529,8.688,8.882,9.104,9.347,9.605,9.868,10.129,10.380,10.615,10.830,11.022,11.191,11.337,11.464,
-11.575,11.672,11.761,11.843,11.922,12.000,12.076,12.150,12.223,12.293,12.359,12.421,12.479,12.536,12.591,12.649,
-12.713,12.785,12.869,12.967,13.080,13.208,13.349,13.500,13.657,13.815,13.970,14.114,14.246,14.360,14.456,14.533,
-14.593,14.638,14.674,14.704,14.733,14.763,14.796,14.831,14.867,14.899,14.920,14.922,14.898,14.839,14.739,14.594,
-14.402,14.166,13.892,13.588,13.266,12.942,12.631,12.347,12.107,11.920,11.795,11.738,11.746,11.817,11.940,12.103,
-12.293,12.494,12.689,12.866,13.013,13.120,13.182,13.199,13.172,13.107,13.011,12.893,12.764,12.632,12.505,12.391,
-12.294,12.217,12.160,12.123,12.103,12.096,12.100,12.110,12.123,12.138,12.151,12.164,12.174,12.182,12.189,12.194,
-12.199,12.201,12.201,12.199,12.191,12.179,12.160,12.134,12.100,12.060,12.014,11.963,11.910,11.856,11.803,11.753,
-11.708,11.668,11.635,11.607,11.586,11.569,11.556,11.546,11.539,11.533,11.530,11.530,11.534,11.544,11.560,11.586,
-11.622,11.670,11.730,11.803,11.887,11.982,12.084,12.191,12.298,12.401,12.497,12.581,12.648,12.695,12.721,12.723,
-12.700,12.653,12.584,12.494,12.388,12.267,12.136,11.997,11.855,11.711,11.567,11.426,11.287,11.152,11.020,10.892,
-10.769,10.652,10.544,10.448,10.366,10.304,10.265,10.253,10.272,10.323,10.406,10.521,10.662,10.824,10.998,11.174,
-11.342,11.489,11.604,11.678,11.701,11.668,11.576,11.424,11.216,10.957,10.656,10.323,9.968,9.603,9.239,8.887,
-8.554,8.248,7.972,7.729,7.519,7.339,7.186,7.056,6.942,6.839,6.740,6.642,6.538,6.426,6.304,6.170,
-6.024,5.869,5.708,5.545,5.384,5.231,5.090,4.967,4.865,4.787,4.733,4.702,4.692,4.699,4.717,4.738,
-4.757,4.765,4.758,4.730,4.680,4.608,4.515,4.407,4.289,4.168,4.053,3.950,3.865,3.803,3.764,3.748,
-3.752,3.771,3.797,3.825,3.847,3.857,3.852,3.831,3.794,3.747,3.693,3.642,3.598,3.571,3.563,3.579,
-3.617,3.676,3.748,3.826,3.900,3.962,4.003,4.017,4.002,3.958,3.888,3.802,3.708,3.619,3.546,3.498,
-3.483,3.502,3.553,3.630,3.719,3.806,3.872,3.897,3.865,3.758,3.567,3.286,2.916,2.464,1.942,1.369,
-.764,.149,-.455,-1.029,-1.560,-2.036,-2.454,-2.815,-3.123,-3.388,-3.622,-3.837,-4.044,-4.255,-4.476,-4.712,
--4.964,-5.229,-5.503,-5.780,-6.053,-6.318,-6.570,-6.806,-7.026,-7.234,-7.434,-7.631,-7.833,-8.046,-8.277,-8.529,
--8.805,-9.107,-9.434,-9.783,-10.150,-10.533,-10.926,-11.328,-11.735,-12.147,-12.561,-12.979,-13.400,-13.824,-14.250,-14.675,
--15.095,-15.506,-15.900,-16.270,-16.608,-16.908,-17.163,-17.370,-17.528,-17.639,-17.707,-17.740,-17.749,-17.745,-17.741,-17.749,
--17.781,-17.845,-17.947,-18.091,-18.277,-18.503,-18.763,-19.050,-19.357,-19.676,-20.003,-20.331,-20.658,-20.985,-21.313,-21.646,
--21.990,-22.348,-22.727,-23.129,-23.555,-24.005,-24.475,-24.959,-25.449,-25.938,-26.415,-26.873,-27.305,-27.707,-28.078,-28.418,
--28.732,-29.028,-29.313,-29.597,-29.888,-30.195,-30.522,-30.874,-31.249,-31.645,-32.055,-32.472,-32.886,-33.289,-33.671,-34.025,
--34.346,-34.633,-34.885,-35.105,-35.299,-35.474,-35.636,-35.794,-35.953,-36.121,-36.299,-36.491,-36.697,-36.917,-37.149,-37.392,
--37.642,-37.899,-38.161,-38.426,-38.694,-38.964,-39.232,-39.497,-39.755,-40.001,-40.229,-40.433,-40.606,-40.743,-40.839,-40.893,
--40.907,-40.886,-40.837,-40.773,-40.707,-40.653,-40.628,-40.646,-40.716,-40.848,-41.043,-41.300,-41.613,-41.969,-42.355,-42.755,
--43.153,-43.535,-43.889,-44.209,-44.493,-44.742,-44.964,-45.171,-45.374,-45.589,-45.826,-46.098,-46.408,-46.759,-47.145,-47.559,
--47.987,-48.412,-48.818,-49.189,-49.510,-49.770,-49.965,-50.095,-50.165,-50.185,-50.170,-50.137,-50.104,-50.087,-50.102,-50.159,
--50.266,-50.424,-50.632,-50.882,-51.166,-51.473,-51.791,-52.110,-52.421,-52.716,-52.992,-53.249,-53.487,-53.710,-53.922,-54.128,
--54.333,-54.538,-54.745,-54.955,-55.164,-55.371,-55.571,-55.761,-55.937,-56.098,-56.243,-56.373,-56.490,-56.598,-56.701,-56.803,
--56.908,-57.018,-57.135,-57.258,-57.385,-57.512,-57.634,-57.745,-57.841,-57.917,-57.969,-57.997,-58.000,-57.980,-57.939,-57.884,
--57.817,-57.743,-57.666,-57.589,-57.511,-57.434,-57.356,-57.274,-57.185,-57.088,-56.981,-56.864,-56.740,-56.613,-56.487,-56.369,
--56.268,-56.189,-56.137,-56.117,-56.128,-56.168,-56.229,-56.302,-56.376,-56.435,-56.466,-56.457,-56.396,-56.278,-56.101,-55.867,
--55.588,-55.277,-54.953,-54.636,-54.350,-54.117,-53.955,-53.879,-53.899,-54.018,-54.231,-54.528,-54.892,-55.304,-55.740,-56.176,
--56.590,-56.962,-57.277,-57.525,-57.701,-57.807,-57.849,-57.838,-57.786,-57.707,-57.614,-57.518,-57.430,-57.354,-57.292,-57.245,
--57.208,-57.179,-57.153,-57.125,-57.093,-57.057,-57.020,-56.985,-56.959,-56.948,-56.957,-56.993,-57.058,-57.151,-57.269,-57.405,
--57.550,-57.691,-57.816,-57.914,-57.974,-57.989,-57.954,-57.872,-57.747,-57.589,-57.410,-57.224,-57.047,-56.893,-56.774,-56.699,
--56.673,-56.697,-56.766,-56.875,-57.012,-57.168,-57.330,-57.488,-57.633,-57.759,-57.864,-57.946,-58.009,-58.058,-58.099,-58.137,
--58.180,-58.232,-58.296,-58.372,-58.461,-58.559,-58.664,-58.770,-58.876,-58.976,-59.068,-59.152,-59.228,-59.296,-59.358,-59.416,
--59.470,-59.522,-59.572,-59.617,-59.655,-59.683,-59.698,-59.696,-59.675,-59.634,-59.573,-59.493,-59.398,-59.294,-59.185,-59.077,
--58.978,-58.890,-58.820,-58.767,-58.733,-58.716,-58.713,-58.722,-58.737,-58.755,-58.771,-58.784,-58.791,-58.790,-58.784,-58.771,
--58.752,-58.730,-58.703,-58.673,-58.639,-58.599,-58.553,-58.501,-58.442,-58.378,-58.311,-58.246,-58.187,-58.143,-58.120,-58.127,
--58.169,-58.252,-58.379,-58.550,-58.761,-59.006,-59.276,-59.559,-59.844,-60.117,-60.367,-60.584,-60.760,-60.893,-60.982,-61.030,
--61.045,-61.034,-61.007,-60.975,-60.948,-60.933,-60.936,-60.960,-61.005,-61.069,-61.147,-61.235,-61.325,-61.412,-61.491,-61.558,
--61.611,-61.649,-61.672,-61.683,-61.683,-61.673,-61.654,-61.624,-61.580,-61.518,-61.434,-61.320,-61.171,-60.981,-60.747,-60.468,
--60.144,-59.781,-59.384,-58.965,-58.535,-58.106,-57.691,-57.301,-56.947,-56.636,-56.370,-56.151,-55.975,-55.838,-55.732,-55.647,
--55.574,-55.505,-55.432,-55.350,-55.255,-55.145,-55.022,-54.886,-54.741,-54.589,-54.433,-54.272,-54.108,-53.937,-53.756,-53.560,
--53.344,-53.103,-52.831,-52.526,-52.185,-51.811,-51.406,-50.976,-50.529,-50.072,-49.614,-49.166,-48.733,-48.323,-47.939,-47.583,
--47.255,-46.952,-46.671,-46.407,-46.154,-45.909,-45.667,-45.426,-45.187,-44.949,-44.714,-44.487,-44.271,-44.069,-43.883,-43.716,
--43.568,-43.436,-43.319,-43.210,-43.106,-43.000,-42.887,-42.761,-42.620,-42.462,-42.287,-42.099,-41.902,-41.702,-41.507,-41.326,
--41.165,-41.032,-40.932,-40.867,-40.838,-40.842,-40.875,-40.926,-40.988,-41.047,-41.091,-41.109,-41.088,-41.020,-40.897,-40.716,
--40.475,-40.178,-39.830,-39.439,-39.016,-38.573,-38.121,-37.672,-37.236,-36.823,-36.439,-36.089,-35.775,-35.498,-35.257,-35.052,
--34.880,-34.740,-34.632,-34.556,-34.514,-34.508,-34.540,-34.612,-34.726,-34.880,-35.072,-35.298,-35.549,-35.816,-36.087,-36.347,
--36.585,-36.788,-36.945,-37.049,-37.095,-37.084,-37.020,-36.911,-36.769,-36.608,-36.441,-36.285,-36.151,-36.051,-35.989,-35.969,
--35.988,-36.040,-36.114,-36.197,-36.275,-36.332,-36.355,-36.331,-36.253,-36.114,-35.916,-35.663,-35.361,-35.023,-34.663,-34.296,
--33.938,-33.604,-33.308,-33.060,-32.868,-32.736,-32.665,-32.653,-32.693,-32.778,-32.895,-33.035,-33.184,-33.330,-33.463,-33.572,
--33.649,-33.687,-33.683,-33.635,-33.544,-33.410,-33.239,-33.035,-32.805,-32.554,-32.290,-32.019,-31.746,-31.477,-31.216,-30.966,
--30.729,-30.506,-30.299,-30.105,-29.926,-29.759,-29.603,-29.456,-29.318,-29.187,-29.061,-28.940,-28.821,-28.703,-28.585,-28.465,
--28.342,-28.214,-28.079,-27.936,-27.784,-27.621,-27.447,-27.264,-27.070,-26.869,-26.661,-26.450,-26.237,-26.027,-25.820,-25.621,
--25.431,-25.251,-25.082,-24.924,-24.776,-24.636,-24.504,-24.376,-24.250,-24.125,-23.999,-23.871,-23.741,-23.608,-23.474,-23.341,
--23.210,-23.082,-22.960,-22.844,-22.736,-22.634,-22.538,-22.445,-22.353,-22.257,-22.156,-22.044,-21.919,-21.779,-21.621,-21.447,
--21.258,-21.057,-20.847,-20.634,-20.422,-20.219,-20.028,-19.855,-19.702,-19.573,-19.468,-19.386,-19.326,-19.286,-19.262,-19.250,
--19.247,-19.251,-19.257,-19.264,-19.269,-19.272,-19.270,-19.263,-19.249,-19.225,-19.190,-19.142,-19.077,-18.996,-18.896,-18.778,
--18.644,-18.497,-18.342,-18.187,-18.038,-17.906,-17.800,-17.727,-17.694,-17.705,-17.763,-17.865,-18.008,-18.182,-18.379,-18.585,
--18.790,-18.980,-19.145,-19.278,-19.372,-19.428,-19.447,-19.433,-19.396,-19.345,-19.290,-19.241,-19.206,-19.190,-19.195,-19.221,
--19.262,-19.311,-19.358,-19.392,-19.402,-19.377,-19.310,-19.196,-19.033,-18.824,-18.573,-18.290,-17.986,-17.673,-17.364,-17.071,
--16.805,-16.573,-16.382,-16.234,-16.129,-16.064,-16.036,-16.038,-16.065,-16.110,-16.168,-16.233,-16.303,-16.374,-16.444,-16.510,
--16.570,-16.622,-16.661,-16.685,-16.687,-16.663,-16.608,-16.516,-16.385,-16.211,-15.997,-15.743,-15.456,-15.142,-14.813,-14.480,
--14.154,-13.847,-13.570,-13.332,-13.139,-12.995,-12.899,-12.849,-12.838,-12.858,-12.900,-12.952,-13.005,-13.050,-13.079,-13.087,
--13.071,-13.032,-12.971,-12.893,-12.804,-12.709,-12.617,-12.533,-12.462,-12.408,-12.374,-12.359,-12.363,-12.383,-12.415,-12.455,
--12.499,-12.540,-12.577,-12.604,-12.619,-12.622,-12.612,-12.589,-12.555,-12.512,-12.461,-12.406,-12.348,-12.289,-12.230,-12.172,
--12.114,-12.056,-11.996,-11.932,-11.863,-11.788,-11.704,-11.611,-11.508,-11.397,-11.278,-11.153,-11.024,-10.894,-10.767,-10.644,
--10.527,-10.419,-10.320,-10.231,-10.151,-10.078,-10.012,-9.949,-9.890,-9.831,-9.773,-9.714,-9.654,-9.596,-9.539,-9.484,
--9.434,-9.390,-9.351,-9.318,-9.291,-9.268,-9.247,-9.228,-9.207,-9.184,-9.157,-9.127,-9.094,-9.059,-9.025,-8.992,
--8.965,-8.944,-8.932,-8.928,-8.932,-8.943,-8.959,-8.975,-8.989,-8.997,-8.996,-8.985,-8.962,-8.927,-8.883,-8.830,
--8.773,-8.713,-8.655,-8.601,-8.551,-8.505,-8.464,-8.424,-8.382,-8.334,-8.279,-8.212,-8.132,-8.038,-7.932,-7.815,
--7.689,-7.559,-7.428,-7.297,-7.169,-7.042,-6.914,-6.782,-6.639,-6.480,-6.298,-6.087,-5.843,-5.564,-5.250,-4.905,
--4.536,-4.151,-3.762,-3.380,-3.015,-2.679,-2.377,-2.115,-1.892,-1.706,-1.550,-1.416,-1.293,-1.171,-1.042,-.899,
--.739,-.562,-.374,-.183,.001,.163,.292,.375,.405,.377,.291,.153,-.024,-.225,-.431,-.621,
--.773,-.869,-.892,-.833,-.686,-.453,-.141,.237,.663,1.118,1.581,2.033,2.456,2.837,3.166,3.441,
-3.661,3.833,3.965,4.067,4.151,4.228,4.307,4.395,4.496,4.609,4.734,4.865,4.997,5.123,5.236,5.332,
-5.406,5.457,5.486,5.495,5.488,5.469,5.446,5.422,5.403,5.392,5.392,5.404,5.427,5.461,5.502,5.551,
-5.603,5.656,5.710,5.763,5.814,5.861,5.904,5.941,5.972,5.993,6.003,5.998,5.976,5.935,5.872,5.789,
-5.685,5.563,5.426,5.280,5.130,4.983,4.846,4.724,4.621,4.543,3.724,3.692,3.683,3.697,3.730,3.777,
-3.836,3.901,3.969,4.038,4.105,4.170,4.233,4.297,4.363,4.434,4.512,4.599,4.695,4.800,4.912,5.029,
-5.147,5.264,5.374,5.475,5.565,5.642,5.708,5.765,5.814,5.862,5.912,5.971,6.041,6.126,6.228,6.346,
-6.479,6.621,6.769,6.915,7.053,7.175,7.277,7.355,7.406,7.433,7.437,7.426,7.405,7.385,7.375,7.384,
-7.421,7.492,7.602,7.752,7.942,8.168,8.423,8.700,8.989,9.281,9.566,9.836,10.085,10.307,10.501,10.664,
-10.800,10.910,11.000,11.074,11.137,11.194,11.248,11.302,11.358,11.418,11.481,11.547,11.616,11.687,11.760,11.836,
-11.915,12.000,12.091,12.191,12.302,12.424,12.557,12.701,12.853,13.010,13.169,13.326,13.476,13.615,13.741,13.851,
-13.945,14.024,14.089,14.144,14.192,14.235,14.277,14.318,14.357,14.394,14.423,14.440,14.436,14.406,14.342,14.238,
-14.090,13.899,13.665,13.395,13.097,12.784,12.469,12.168,11.895,11.665,11.489,11.375,11.327,11.345,11.425,11.558,
-11.732,11.933,12.144,12.352,12.541,12.699,12.819,12.895,12.925,12.913,12.862,12.781,12.679,12.565,12.448,12.335,
-12.233,12.145,12.072,12.015,11.971,11.936,11.908,11.883,11.858,11.832,11.804,11.774,11.744,11.718,11.696,11.682,
-11.678,11.683,11.698,11.720,11.746,11.772,11.794,11.806,11.804,11.786,11.750,11.695,11.623,11.536,11.440,11.339,
-11.240,11.146,11.064,10.997,10.946,10.913,10.897,10.895,10.905,10.922,10.942,10.962,10.979,10.992,11.001,11.006,
-11.010,11.017,11.031,11.056,11.095,11.152,11.227,11.321,11.431,11.554,11.685,11.817,11.943,12.057,12.151,12.221,
-12.263,12.273,12.252,12.200,12.120,12.017,11.894,11.756,11.609,11.456,11.301,11.146,10.993,10.842,10.693,10.547,
-10.404,10.266,10.135,10.014,9.909,9.824,9.767,9.743,9.758,9.815,9.918,10.064,10.251,10.471,10.714,10.967,
-11.216,11.445,11.638,11.779,11.857,11.862,11.788,11.633,11.402,11.100,10.739,10.334,9.899,9.453,9.011,8.589,
-8.198,7.850,7.549,7.298,7.096,6.939,6.818,6.726,6.651,6.585,6.518,6.441,6.349,6.236,6.103,5.948,
-5.776,5.590,5.398,5.204,5.017,4.843,4.688,4.555,4.448,4.369,4.315,4.284,4.272,4.273,4.282,4.291,
-4.293,4.284,4.258,4.213,4.149,4.065,3.965,3.853,3.736,3.618,3.507,3.409,3.328,3.266,3.226,3.206,
-3.204,3.215,3.234,3.254,3.271,3.280,3.277,3.261,3.233,3.195,3.152,3.110,3.075,3.052,3.046,3.059,
-3.094,3.148,3.217,3.295,3.376,3.451,3.514,3.558,3.580,3.579,3.556,3.515,3.464,3.410,3.363,3.331,
-3.320,3.333,3.372,3.432,3.504,3.579,3.642,3.677,3.670,3.605,3.473,3.266,2.981,2.621,2.194,1.711,
-1.189,.644,.095,-.443,-.954,-1.427,-1.857,-2.240,-2.578,-2.879,-3.149,-3.399,-3.641,-3.883,-4.133,-4.397,
--4.677,-4.972,-5.278,-5.591,-5.902,-6.206,-6.497,-6.769,-7.020,-7.251,-7.464,-7.663,-7.856,-8.050,-8.252,-8.472,
--8.715,-8.987,-9.290,-9.626,-9.995,-10.394,-10.819,-11.268,-11.734,-12.214,-12.704,-13.198,-13.693,-14.186,-14.672,-15.148,
--15.607,-16.046,-16.457,-16.836,-17.174,-17.468,-17.712,-17.903,-18.040,-18.124,-18.160,-18.154,-18.116,-18.056,-17.986,-17.920,
--17.868,-17.843,-17.853,-17.905,-18.001,-18.144,-18.332,-18.559,-18.822,-19.112,-19.425,-19.753,-20.091,-20.437,-20.789,-21.146,
--21.510,-21.882,-22.266,-22.663,-23.076,-23.503,-23.944,-24.396,-24.855,-25.315,-25.771,-26.217,-26.648,-27.059,-27.451,-27.821,
--28.173,-28.509,-28.836,-29.160,-29.485,-29.819,-30.166,-30.527,-30.904,-31.295,-31.696,-32.102,-32.506,-32.902,-33.281,-33.638,
--33.969,-34.271,-34.543,-34.786,-35.005,-35.204,-35.388,-35.565,-35.741,-35.922,-36.112,-36.315,-36.533,-36.767,-37.019,-37.286,
--37.567,-37.860,-38.163,-38.473,-38.787,-39.101,-39.410,-39.710,-39.995,-40.259,-40.493,-40.692,-40.850,-40.961,-41.023,-41.036,
--41.002,-40.928,-40.824,-40.702,-40.577,-40.466,-40.386,-40.351,-40.374,-40.465,-40.627,-40.860,-41.159,-41.512,-41.905,-42.322,
--42.746,-43.158,-43.545,-43.897,-44.207,-44.473,-44.702,-44.901,-45.084,-45.264,-45.457,-45.677,-45.933,-46.232,-46.576,-46.962,
--47.379,-47.815,-48.254,-48.679,-49.072,-49.420,-49.711,-49.938,-50.100,-50.202,-50.251,-50.261,-50.247,-50.227,-50.215,-50.228,
--50.276,-50.368,-50.506,-50.689,-50.915,-51.175,-51.460,-51.760,-52.066,-52.369,-52.664,-52.946,-53.214,-53.468,-53.711,-53.945,
--54.175,-54.402,-54.629,-54.856,-55.081,-55.304,-55.519,-55.724,-55.914,-56.086,-56.239,-56.371,-56.484,-56.581,-56.666,-56.744,
--56.819,-56.897,-56.982,-57.075,-57.177,-57.288,-57.403,-57.518,-57.629,-57.729,-57.815,-57.880,-57.922,-57.940,-57.934,-57.903,
--57.852,-57.783,-57.699,-57.605,-57.501,-57.392,-57.277,-57.157,-57.033,-56.903,-56.770,-56.633,-56.496,-56.360,-56.231,-56.114,
--56.014,-55.937,-55.885,-55.862,-55.866,-55.895,-55.942,-55.999,-56.054,-56.094,-56.106,-56.079,-56.003,-55.872,-55.683,-55.441,
--55.155,-54.839,-54.509,-54.188,-53.897,-53.658,-53.490,-53.408,-53.422,-53.535,-53.744,-54.038,-54.400,-54.812,-55.249,-55.687,
--56.103,-56.477,-56.793,-57.040,-57.214,-57.317,-57.356,-57.341,-57.287,-57.208,-57.120,-57.035,-56.963,-56.910,-56.879,-56.868,
--56.873,-56.888,-56.905,-56.919,-56.923,-56.916,-56.897,-56.870,-56.839,-56.812,-56.797,-56.800,-56.828,-56.882,-56.964,-57.069,
--57.190,-57.315,-57.435,-57.534,-57.602,-57.628,-57.605,-57.531,-57.407,-57.241,-57.043,-56.827,-56.609,-56.406,-56.232,-56.100,
--56.021,-55.998,-56.032,-56.118,-56.249,-56.412,-56.596,-56.786,-56.971,-57.139,-57.283,-57.398,-57.484,-57.544,-57.582,-57.606,
--57.623,-57.642,-57.668,-57.709,-57.766,-57.842,-57.935,-58.042,-58.160,-58.283,-58.407,-58.529,-58.643,-58.748,-58.842,-58.925,
--58.997,-59.059,-59.112,-59.155,-59.189,-59.213,-59.226,-59.228,-59.215,-59.189,-59.147,-59.091,-59.022,-58.942,-58.854,-58.763,
--58.672,-58.586,-58.508,-58.442,-58.390,-58.351,-58.326,-58.313,-58.310,-58.314,-58.322,-58.332,-58.340,-58.346,-58.349,-58.347,
--58.343,-58.336,-58.327,-58.318,-58.309,-58.300,-58.292,-58.284,-58.276,-58.269,-58.263,-58.259,-58.261,-58.269,-58.289,-58.322,
--58.374,-58.447,-58.542,-58.660,-58.799,-58.957,-59.129,-59.307,-59.483,-59.649,-59.797,-59.918,-60.007,-60.060,-60.075,-60.054,
--59.999,-59.918,-59.817,-59.705,-59.591,-59.483,-59.389,-59.314,-59.261,-59.233,-59.227,-59.241,-59.272,-59.315,-59.364,-59.415,
--59.465,-59.509,-59.545,-59.573,-59.591,-59.599,-59.596,-59.583,-59.557,-59.516,-59.459,-59.380,-59.278,-59.149,-58.990,-58.800,
--58.580,-58.332,-58.061,-57.772,-57.473,-57.174,-56.882,-56.608,-56.359,-56.142,-55.959,-55.814,-55.704,-55.627,-55.575,-55.544,
--55.522,-55.504,-55.480,-55.444,-55.391,-55.317,-55.221,-55.102,-54.964,-54.808,-54.637,-54.455,-54.262,-54.061,-53.851,-53.632,
--53.400,-53.153,-52.887,-52.599,-52.287,-51.949,-51.584,-51.195,-50.785,-50.358,-49.919,-49.476,-49.035,-48.601,-48.182,-47.781,
--47.401,-47.045,-46.713,-46.405,-46.118,-45.850,-45.599,-45.363,-45.140,-44.928,-44.727,-44.537,-44.357,-44.190,-44.033,-43.889,
--43.757,-43.635,-43.521,-43.414,-43.310,-43.207,-43.101,-42.989,-42.870,-42.741,-42.604,-42.460,-42.310,-42.159,-42.011,-41.870,
--41.741,-41.628,-41.534,-41.462,-41.412,-41.382,-41.370,-41.371,-41.380,-41.388,-41.389,-41.374,-41.335,-41.265,-41.157,-41.008,
--40.814,-40.573,-40.288,-39.960,-39.592,-39.191,-38.763,-38.314,-37.853,-37.386,-36.921,-36.465,-36.026,-35.610,-35.224,-34.873,
--34.565,-34.303,-34.094,-33.941,-33.849,-33.819,-33.853,-33.950,-34.107,-34.318,-34.576,-34.871,-35.190,-35.522,-35.852,-36.165,
--36.450,-36.694,-36.888,-37.028,-37.110,-37.136,-37.111,-37.042,-36.942,-36.821,-36.693,-36.570,-36.462,-36.378,-36.323,-36.300,
--36.306,-36.337,-36.385,-36.439,-36.490,-36.525,-36.536,-36.513,-36.450,-36.345,-36.198,-36.012,-35.793,-35.550,-35.293,-35.033,
--34.781,-34.546,-34.339,-34.164,-34.028,-33.933,-33.878,-33.861,-33.879,-33.925,-33.994,-34.079,-34.171,-34.265,-34.353,-34.430,
--34.490,-34.528,-34.540,-34.524,-34.477,-34.398,-34.286,-34.142,-33.966,-33.761,-33.529,-33.276,-33.004,-32.719,-32.427,-32.132,
--31.842,-31.561,-31.293,-31.043,-30.813,-30.604,-30.418,-30.253,-30.108,-29.980,-29.865,-29.759,-29.659,-29.559,-29.456,-29.346,
--29.226,-29.094,-28.948,-28.787,-28.610,-28.419,-28.215,-27.998,-27.770,-27.535,-27.294,-27.049,-26.804,-26.561,-26.322,-26.091,
--25.868,-25.657,-25.457,-25.272,-25.100,-24.942,-24.797,-24.665,-24.544,-24.431,-24.325,-24.223,-24.123,-24.023,-23.922,-23.817,
--23.708,-23.595,-23.477,-23.355,-23.229,-23.099,-22.967,-22.832,-22.695,-22.556,-22.414,-22.268,-22.119,-21.964,-21.805,-21.640,
--21.469,-21.294,-21.115,-20.933,-20.752,-20.573,-20.399,-20.232,-20.075,-19.929,-19.798,-19.681,-19.579,-19.494,-19.424,-19.370,
--19.330,-19.305,-19.292,-19.292,-19.301,-19.319,-19.343,-19.369,-19.395,-19.415,-19.426,-19.421,-19.395,-19.345,-19.265,-19.155,
--19.012,-18.840,-18.642,-18.424,-18.196,-17.968,-17.752,-17.562,-17.410,-17.306,-17.259,-17.277,-17.360,-17.508,-17.716,-17.976,
--18.275,-18.601,-18.938,-19.273,-19.590,-19.878,-20.128,-20.333,-20.492,-20.604,-20.673,-20.704,-20.706,-20.686,-20.652,-20.610,
--20.567,-20.526,-20.487,-20.451,-20.416,-20.377,-20.331,-20.273,-20.200,-20.110,-20.000,-19.871,-19.725,-19.564,-19.393,-19.217,
--19.040,-18.868,-18.704,-18.552,-18.414,-18.293,-18.189,-18.101,-18.031,-17.976,-17.935,-17.908,-17.892,-17.887,-17.891,-17.901,
--17.914,-17.927,-17.935,-17.933,-17.915,-17.874,-17.804,-17.700,-17.557,-17.372,-17.145,-16.876,-16.570,-16.234,-15.876,-15.508,
--15.140,-14.785,-14.454,-14.157,-13.903,-13.696,-13.539,-13.432,-13.369,-13.346,-13.353,-13.381,-13.419,-13.459,-13.491,-13.508,
--13.506,-13.483,-13.439,-13.377,-13.301,-13.217,-13.131,-13.049,-12.977,-12.920,-12.881,-12.860,-12.858,-12.873,-12.901,-12.939,
--12.982,-13.025,-13.065,-13.097,-13.120,-13.133,-13.134,-13.126,-13.110,-13.087,-13.060,-13.032,-13.002,-12.974,-12.946,-12.917,
--12.888,-12.855,-12.816,-12.769,-12.711,-12.642,-12.560,-12.464,-12.357,-12.238,-12.112,-11.981,-11.849,-11.718,-11.594,-11.478,
--11.372,-11.278,-11.195,-11.124,-11.063,-11.010,-10.963,-10.919,-10.875,-10.832,-10.786,-10.738,-10.687,-10.635,-10.582,-10.530,
--10.480,-10.433,-10.390,-10.352,-10.318,-10.288,-10.260,-10.235,-10.211,-10.188,-10.164,-10.141,-10.119,-10.099,-10.082,-10.070,
--10.064,-10.063,-10.069,-10.080,-10.095,-10.111,-10.124,-10.133,-10.133,-10.122,-10.099,-10.062,-10.012,-9.950,-9.880,-9.805,
--9.728,-9.654,-9.586,-9.525,-9.471,-9.424,-9.380,-9.336,-9.285,-9.223,-9.144,-9.043,-8.917,-8.766,-8.590,-8.392,
--8.177,-7.949,-7.716,-7.483,-7.255,-7.036,-6.825,-6.622,-6.422,-6.220,-6.009,-5.781,-5.529,-5.248,-4.934,-4.589,
--4.215,-3.819,-3.410,-2.999,-2.599,-2.220,-1.875,-1.570,-1.311,-1.098,-.927,-.793,-.686,-.595,-.509,-.419,
--.316,-.196,-.060,.088,.241,.388,.515,.610,.660,.658,.599,.483,.316,.111,-.118,-.348,
--.560,-.730,-.839,-.871,-.816,-.667,-.428,-.107,.282,.720,1.184,1.652,2.102,2.514,2.874,3.172,
-3.403,3.568,3.675,3.734,3.757,3.760,3.756,3.759,3.776,3.816,3.880,3.967,4.073,4.191,4.313,4.429,
-4.532,4.616,4.675,4.708,4.716,4.701,4.669,4.625,4.575,4.528,4.488,4.461,4.449,4.455,4.478,4.517,
-4.570,4.633,4.704,4.779,4.853,4.924,4.989,5.046,5.091,5.122,5.139,5.138,5.119,5.081,5.024,4.946,
-4.851,4.739,4.615,4.481,4.343,4.207,4.077,3.960,3.860,3.780,3.724,2.908,2.859,2.828,2.816,2.823,
-2.847,2.886,2.938,3.000,3.071,3.148,3.229,3.315,3.405,3.499,3.597,3.701,3.810,3.924,4.043,4.166,
-4.291,4.415,4.536,4.651,4.760,4.859,4.948,5.028,5.100,5.166,5.230,5.295,5.365,5.444,5.534,5.636,
-5.752,5.878,6.013,6.152,6.291,6.423,6.544,6.648,6.732,6.795,6.836,6.857,6.864,6.862,6.858,6.861,
-6.878,6.918,6.987,7.089,7.226,7.399,7.604,7.836,8.090,8.356,8.627,8.894,9.150,9.387,9.601,9.789,
-9.951,10.087,10.200,10.294,10.373,10.443,10.507,10.569,10.632,10.698,10.769,10.843,10.921,11.002,11.084,11.168,
-11.254,11.341,11.430,11.524,11.625,11.732,11.849,11.974,12.109,12.252,12.401,12.552,12.702,12.847,12.983,13.107,
-13.216,13.310,13.388,13.452,13.502,13.543,13.578,13.608,13.637,13.664,13.691,13.713,13.729,13.733,13.719,13.682,
-13.616,13.518,13.386,13.219,13.021,12.798,12.558,12.311,12.069,11.843,11.645,11.484,11.369,11.304,11.290,11.324,
-11.401,11.512,11.647,11.794,11.941,12.077,12.193,12.282,12.339,12.363,12.356,12.320,12.261,12.187,12.104,12.018,
-11.935,11.859,11.791,11.734,11.685,11.643,11.605,11.569,11.533,11.495,11.454,11.413,11.373,11.338,11.310,11.292,
-11.288,11.298,11.323,11.360,11.406,11.456,11.504,11.544,11.570,11.575,11.555,11.509,11.437,11.340,11.224,11.095,
-10.960,10.827,10.705,10.601,10.519,10.464,10.436,10.435,10.456,10.494,10.543,10.597,10.648,10.691,10.723,10.740,
-10.744,10.737,10.722,10.706,10.694,10.693,10.709,10.745,10.805,10.889,10.995,11.118,11.254,11.394,11.530,11.656,
-11.763,11.845,11.898,11.918,11.906,11.863,11.791,11.694,11.576,11.443,11.300,11.149,10.994,10.837,10.680,10.524,
-10.370,10.218,10.070,9.930,9.800,9.686,9.592,9.524,9.489,9.491,9.533,9.618,9.744,9.907,10.100,10.312,
-10.533,10.747,10.940,11.097,11.205,11.253,11.232,11.139,10.975,10.742,10.450,10.110,9.736,9.344,8.950,8.568,
-8.213,7.893,7.615,7.384,7.198,7.054,6.943,6.858,6.788,6.722,6.651,6.566,6.462,6.333,6.180,6.004,
-5.810,5.604,5.393,5.185,4.989,4.813,4.660,4.537,4.444,4.381,4.346,4.333,4.338,4.351,4.367,4.378,
-4.377,4.359,4.321,4.261,4.179,4.079,3.965,3.842,3.716,3.596,3.486,3.392,3.318,3.266,3.237,3.227,
-3.234,3.252,3.276,3.298,3.313,3.317,3.304,3.275,3.229,3.169,3.100,3.026,2.954,2.890,2.840,2.807,
-2.795,2.802,2.826,2.863,2.907,2.952,2.989,3.013,3.018,3.001,2.962,2.902,2.826,2.740,2.652,2.569,
-2.500,2.450,2.423,2.419,2.436,2.467,2.503,2.534,2.547,2.529,2.469,2.357,2.188,1.958,1.669,1.326,
-.939,.519,.079,-.368,-.808,-1.229,-1.625,-1.989,-2.320,-2.619,-2.892,-3.144,-3.386,-3.625,-3.869,-4.124,
--4.396,-4.684,-4.990,-5.309,-5.636,-5.965,-6.290,-6.604,-6.903,-7.183,-7.443,-7.685,-7.913,-8.132,-8.348,-8.571,
--8.808,-9.066,-9.352,-9.670,-10.023,-10.413,-10.837,-11.294,-11.779,-12.286,-12.810,-13.344,-13.882,-14.415,-14.940,-15.448,
--15.934,-16.393,-16.819,-17.209,-17.557,-17.861,-18.117,-18.325,-18.484,-18.596,-18.663,-18.691,-18.685,-18.653,-18.603,-18.544,
--18.487,-18.439,-18.409,-18.404,-18.429,-18.488,-18.584,-18.717,-18.885,-19.087,-19.321,-19.583,-19.870,-20.179,-20.508,-20.854,
--21.217,-21.595,-21.986,-22.390,-22.805,-23.230,-23.661,-24.095,-24.530,-24.962,-25.387,-25.802,-26.205,-26.595,-26.971,-27.334,
--27.687,-28.033,-28.375,-28.717,-29.063,-29.416,-29.778,-30.151,-30.532,-30.921,-31.314,-31.707,-32.095,-32.472,-32.835,-33.180,
--33.503,-33.805,-34.084,-34.343,-34.585,-34.813,-35.032,-35.246,-35.459,-35.674,-35.894,-36.122,-36.357,-36.600,-36.850,-37.108,
--37.373,-37.643,-37.919,-38.200,-38.485,-38.773,-39.062,-39.350,-39.633,-39.906,-40.165,-40.401,-40.610,-40.783,-40.917,-41.007,
--41.053,-41.056,-41.021,-40.957,-40.874,-40.786,-40.707,-40.652,-40.636,-40.668,-40.759,-40.912,-41.127,-41.399,-41.720,-42.078,
--42.457,-42.843,-43.220,-43.576,-43.901,-44.190,-44.440,-44.657,-44.847,-45.021,-45.192,-45.373,-45.577,-45.814,-46.091,-46.409,
--46.768,-47.159,-47.572,-47.994,-48.411,-48.805,-49.165,-49.477,-49.735,-49.936,-50.079,-50.172,-50.222,-50.243,-50.247,-50.250,
--50.264,-50.302,-50.371,-50.478,-50.624,-50.810,-51.030,-51.280,-51.552,-51.839,-52.134,-52.430,-52.722,-53.007,-53.283,-53.550,
--53.806,-54.054,-54.294,-54.526,-54.751,-54.967,-55.174,-55.370,-55.553,-55.721,-55.875,-56.013,-56.137,-56.249,-56.351,-56.446,
--56.539,-56.633,-56.730,-56.833,-56.942,-57.056,-57.175,-57.293,-57.409,-57.517,-57.613,-57.692,-57.752,-57.791,-57.807,-57.802,
--57.775,-57.730,-57.669,-57.593,-57.506,-57.410,-57.305,-57.191,-57.071,-56.942,-56.806,-56.663,-56.515,-56.365,-56.216,-56.072,
--55.938,-55.819,-55.720,-55.643,-55.591,-55.561,-55.550,-55.552,-55.558,-55.559,-55.544,-55.501,-55.422,-55.299,-55.130,-54.914,
--54.657,-54.369,-54.063,-53.757,-53.469,-53.218,-53.024,-52.900,-52.859,-52.905,-53.041,-53.258,-53.548,-53.892,-54.273,-54.669,
--55.060,-55.425,-55.749,-56.019,-56.229,-56.377,-56.465,-56.501,-56.496,-56.461,-56.410,-56.355,-56.304,-56.266,-56.243,-56.235,
--56.242,-56.257,-56.275,-56.292,-56.301,-56.301,-56.291,-56.273,-56.252,-56.233,-56.225,-56.236,-56.270,-56.332,-56.423,-56.541,
--56.679,-56.829,-56.979,-57.115,-57.224,-57.294,-57.316,-57.283,-57.193,-57.051,-56.863,-56.641,-56.400,-56.157,-55.929,-55.732,
--55.578,-55.478,-55.438,-55.457,-55.532,-55.654,-55.814,-55.998,-56.194,-56.387,-56.567,-56.727,-56.861,-56.967,-57.047,-57.105,
--57.148,-57.182,-57.217,-57.259,-57.312,-57.382,-57.469,-57.573,-57.691,-57.820,-57.954,-58.089,-58.219,-58.340,-58.450,-58.545,
--58.624,-58.689,-58.740,-58.777,-58.803,-58.819,-58.825,-58.823,-58.812,-58.793,-58.764,-58.726,-58.679,-58.624,-58.561,-58.493,
--58.422,-58.351,-58.282,-58.219,-58.164,-58.118,-58.083,-58.060,-58.047,-58.043,-58.047,-58.057,-58.070,-58.085,-58.100,-58.114,
--58.127,-58.138,-58.148,-58.159,-58.170,-58.184,-58.201,-58.222,-58.248,-58.279,-58.316,-58.357,-58.405,-58.458,-58.518,-58.584,
--58.657,-58.736,-58.822,-58.914,-59.009,-59.107,-59.203,-59.295,-59.376,-59.444,-59.493,-59.518,-59.516,-59.486,-59.425,-59.335,
--59.219,-59.079,-58.923,-58.755,-58.583,-58.414,-58.253,-58.107,-57.979,-57.873,-57.788,-57.725,-57.682,-57.656,-57.642,-57.638,
--57.640,-57.644,-57.648,-57.649,-57.647,-57.640,-57.628,-57.611,-57.590,-57.562,-57.528,-57.487,-57.437,-57.375,-57.301,-57.212,
--57.109,-56.990,-56.857,-56.712,-56.557,-56.398,-56.239,-56.084,-55.938,-55.806,-55.691,-55.594,-55.517,-55.457,-55.411,-55.377,
--55.348,-55.319,-55.284,-55.238,-55.176,-55.095,-54.992,-54.868,-54.724,-54.560,-54.380,-54.188,-53.986,-53.778,-53.566,-53.352,
--53.134,-52.914,-52.689,-52.456,-52.213,-51.957,-51.684,-51.394,-51.084,-50.754,-50.406,-50.041,-49.662,-49.275,-48.882,-48.490,
--48.103,-47.725,-47.361,-47.015,-46.689,-46.385,-46.104,-45.847,-45.613,-45.402,-45.211,-45.039,-44.883,-44.742,-44.611,-44.489,
--44.373,-44.260,-44.147,-44.032,-43.914,-43.791,-43.663,-43.529,-43.389,-43.246,-43.101,-42.955,-42.812,-42.674,-42.542,-42.420,
--42.309,-42.209,-42.122,-42.047,-41.982,-41.925,-41.874,-41.825,-41.775,-41.721,-41.658,-41.584,-41.494,-41.387,-41.259,-41.109,
--40.936,-40.737,-40.513,-40.263,-39.987,-39.686,-39.360,-39.010,-38.640,-38.251,-37.849,-37.437,-37.022,-36.610,-36.209,-35.829,
--35.477,-35.163,-34.895,-34.681,-34.527,-34.438,-34.416,-34.460,-34.568,-34.733,-34.947,-35.200,-35.479,-35.771,-36.062,-36.339,
--36.590,-36.805,-36.976,-37.099,-37.172,-37.198,-37.181,-37.128,-37.049,-36.951,-36.847,-36.745,-36.653,-36.578,-36.523,-36.488,
--36.474,-36.476,-36.489,-36.506,-36.521,-36.526,-36.516,-36.487,-36.434,-36.357,-36.258,-36.138,-36.002,-35.856,-35.705,-35.555,
--35.411,-35.278,-35.158,-35.056,-34.970,-34.902,-34.850,-34.812,-34.786,-34.770,-34.762,-34.760,-34.763,-34.769,-34.777,-34.786,
--34.794,-34.799,-34.800,-34.794,-34.776,-34.744,-34.694,-34.622,-34.524,-34.399,-34.245,-34.063,-33.854,-33.621,-33.369,-33.102,
--32.828,-32.553,-32.283,-32.025,-31.783,-31.561,-31.361,-31.185,-31.029,-30.894,-30.774,-30.665,-30.563,-30.463,-30.361,-30.252,
--30.133,-30.002,-29.858,-29.701,-29.530,-29.347,-29.152,-28.948,-28.736,-28.516,-28.291,-28.060,-27.826,-27.589,-27.349,-27.109,
--26.870,-26.633,-26.401,-26.175,-25.958,-25.752,-25.558,-25.377,-25.211,-25.058,-24.918,-24.789,-24.667,-24.550,-24.434,-24.316,
--24.193,-24.063,-23.922,-23.771,-23.609,-23.437,-23.258,-23.072,-22.882,-22.692,-22.504,-22.319,-22.138,-21.964,-21.794,-21.628,
--21.465,-21.302,-21.138,-20.969,-20.795,-20.614,-20.425,-20.231,-20.031,-19.829,-19.628,-19.433,-19.248,-19.078,-18.929,-18.804,
--18.709,-18.647,-18.619,-18.627,-18.669,-18.744,-18.846,-18.970,-19.109,-19.253,-19.393,-19.519,-19.621,-19.688,-19.712,-19.686,
--19.606,-19.469,-19.277,-19.035,-18.750,-18.435,-18.101,-17.767,-17.447,-17.160,-16.922,-16.748,-16.648,-16.633,-16.705,-16.864,
--17.106,-17.421,-17.798,-18.221,-18.671,-19.131,-19.582,-20.007,-20.392,-20.724,-20.994,-21.197,-21.331,-21.399,-21.406,-21.359,
--21.268,-21.142,-20.992,-20.828,-20.660,-20.495,-20.340,-20.198,-20.072,-19.962,-19.867,-19.785,-19.711,-19.643,-19.574,-19.502,
--19.421,-19.329,-19.224,-19.104,-18.970,-18.822,-18.665,-18.502,-18.338,-18.178,-18.029,-17.896,-17.785,-17.699,-17.640,-17.610,
--17.606,-17.626,-17.662,-17.708,-17.754,-17.791,-17.807,-17.794,-17.743,-17.648,-17.504,-17.312,-17.073,-16.793,-16.481,-16.145,
--15.799,-15.456,-15.127,-14.824,-14.556,-14.331,-14.152,-14.020,-13.933,-13.884,-13.868,-13.875,-13.895,-13.920,-13.940,-13.949,
--13.943,-13.918,-13.875,-13.816,-13.745,-13.668,-13.590,-13.517,-13.455,-13.407,-13.376,-13.364,-13.369,-13.388,-13.419,-13.457,
--13.497,-13.535,-13.568,-13.592,-13.605,-13.609,-13.604,-13.591,-13.575,-13.558,-13.542,-13.532,-13.527,-13.529,-13.536,-13.548,
--13.560,-13.570,-13.573,-13.565,-13.542,-13.503,-13.445,-13.367,-13.272,-13.160,-13.036,-12.903,-12.766,-12.629,-12.498,-12.375,
--12.263,-12.164,-12.078,-12.005,-11.943,-11.890,-11.844,-11.801,-11.761,-11.720,-11.678,-11.635,-11.590,-11.544,-11.499,-11.455,
--11.414,-11.377,-11.344,-11.315,-11.291,-11.269,-11.250,-11.233,-11.215,-11.198,-11.179,-11.161,-11.144,-11.129,-11.117,-11.111,
--11.109,-11.115,-11.125,-11.141,-11.159,-11.176,-11.189,-11.194,-11.189,-11.169,-11.133,-11.081,-11.012,-10.931,-10.839,-10.741,
--10.642,-10.546,-10.457,-10.377,-10.306,-10.243,-10.184,-10.124,-10.057,-9.973,-9.867,-9.730,-9.558,-9.348,-9.099,-8.813,
--8.496,-8.153,-7.796,-7.432,-7.072,-6.723,-6.393,-6.086,-5.802,-5.539,-5.295,-5.062,-4.833,-4.601,-4.359,-4.103,
--3.830,-3.540,-3.237,-2.926,-2.617,-2.317,-2.037,-1.784,-1.565,-1.384,-1.241,-1.133,-1.055,-.999,-.955,-.913,
--.865,-.803,-.724,-.627,-.516,-.397,-.280,-.175,-.094,-.047,-.043,-.084,-.172,-.300,-.459,-.634,
--.809,-.966,-1.084,-1.148,-1.143,-1.060,-.897,-.656,-.344,.024,.430,.856,1.279,1.681,2.043,2.352,
-2.599,2.782,2.902,2.966,2.985,2.970,2.937,2.899,2.868,2.854,2.863,2.898,2.957,3.036,3.129,3.227,
-3.322,3.406,3.472,3.516,3.536,3.532,3.508,3.468,3.418,3.365,3.317,3.278,3.254,3.248,3.262,3.295,
-3.344,3.408,3.482,3.562,3.643,3.722,3.795,3.860,3.914,3.957,3.987,4.003,4.006,3.996,3.972,3.934,
-3.883,3.819,3.743,3.656,3.560,3.458,3.353,3.248,3.147,3.055,2.974,2.908,1.642,1.533,1.438,1.363,
-1.310,1.282,1.281,1.306,1.357,1.431,1.527,1.641,1.769,1.908,2.056,2.209,2.365,2.521,2.677,2.829,
-2.978,3.121,3.259,3.390,3.514,3.631,3.740,3.843,3.940,4.032,4.122,4.212,4.303,4.397,4.496,4.602,
-4.715,4.834,4.959,5.087,5.216,5.342,5.462,5.572,5.670,5.753,5.821,5.873,5.911,5.938,5.959,5.979,
-6.003,6.036,6.085,6.153,6.245,6.361,6.502,6.667,6.853,7.055,7.268,7.488,7.709,7.925,8.133,8.330,
-8.513,8.683,8.840,8.985,9.120,9.248,9.371,9.491,9.608,9.725,9.840,9.953,10.064,10.170,10.271,10.366,
-10.455,10.539,10.619,10.697,10.776,10.860,10.950,11.049,11.158,11.279,11.411,11.551,11.696,11.844,11.989,12.127,
-12.255,12.367,12.463,12.541,12.601,12.645,12.676,12.696,12.710,12.720,12.730,12.742,12.756,12.771,12.784,12.793,
-12.793,12.779,12.749,12.697,12.622,12.525,12.406,12.269,12.119,11.963,11.808,11.662,11.531,11.421,11.337,11.281,
-11.252,11.250,11.268,11.303,11.347,11.393,11.436,11.469,11.489,11.493,11.479,11.450,11.407,11.355,11.296,11.237,
-11.179,11.127,11.083,11.046,11.018,10.995,10.977,10.962,10.947,10.932,10.915,10.896,10.879,10.863,10.854,10.852,
-10.861,10.882,10.915,10.961,11.015,11.074,11.132,11.184,11.223,11.242,11.237,11.204,11.142,11.052,10.938,10.804,
-10.659,10.510,10.368,10.240,10.134,10.057,10.010,9.997,10.014,10.057,10.119,10.194,10.272,10.346,10.407,10.450,
-10.471,10.470,10.449,10.410,10.360,10.307,10.258,10.221,10.203,10.209,10.242,10.303,10.391,10.500,10.627,10.763,
-10.901,11.032,11.149,11.246,11.318,11.361,11.375,11.358,11.314,11.244,11.153,11.045,10.922,10.789,10.649,10.504,
-10.356,10.209,10.063,9.921,9.786,9.660,9.548,9.454,9.380,9.332,9.312,9.323,9.363,9.432,9.526,9.639,
-9.763,9.889,10.006,10.105,10.174,10.204,10.189,10.125,10.010,9.846,9.637,9.393,9.121,8.835,8.544,8.261,
-7.996,7.756,7.548,7.372,7.228,7.113,7.020,6.941,6.867,6.790,6.699,6.589,6.454,6.293,6.105,5.895,
-5.667,5.431,5.194,4.966,4.757,4.574,4.425,4.314,4.241,4.206,4.205,4.232,4.279,4.337,4.396,4.448,
-4.484,4.499,4.488,4.449,4.383,4.295,4.188,4.070,3.948,3.832,3.727,3.642,3.579,3.542,3.530,3.542,
-3.572,3.615,3.662,3.705,3.738,3.752,3.742,3.706,3.642,3.552,3.439,3.308,3.168,3.025,2.887,2.760,
-2.648,2.556,2.483,2.427,2.384,2.349,2.315,2.275,2.221,2.149,2.054,1.935,1.794,1.634,1.461,1.281,
-1.104,.938,.789,.664,.566,.495,.450,.426,.415,.409,.397,.371,.320,.239,.123,-.031,
--.221,-.445,-.696,-.967,-1.250,-1.536,-1.819,-2.093,-2.354,-2.600,-2.833,-3.056,-3.272,-3.487,-3.709,-3.941,
--4.189,-4.455,-4.741,-5.046,-5.367,-5.699,-6.038,-6.378,-6.712,-7.037,-7.349,-7.646,-7.929,-8.200,-8.464,-8.725,
--8.992,-9.270,-9.566,-9.887,-10.237,-10.619,-11.035,-11.483,-11.960,-12.463,-12.984,-13.518,-14.056,-14.592,-15.117,-15.625,
--16.109,-16.566,-16.990,-17.378,-17.730,-18.044,-18.319,-18.558,-18.760,-18.928,-19.065,-19.172,-19.254,-19.312,-19.351,-19.374,
--19.385,-19.388,-19.386,-19.384,-19.386,-19.396,-19.418,-19.455,-19.511,-19.590,-19.696,-19.830,-19.996,-20.195,-20.429,-20.696,
--20.997,-21.331,-21.693,-22.081,-22.489,-22.913,-23.346,-23.784,-24.220,-24.649,-25.067,-25.472,-25.862,-26.236,-26.597,-26.946,
--27.287,-27.624,-27.962,-28.304,-28.655,-29.015,-29.386,-29.768,-30.159,-30.555,-30.954,-31.350,-31.739,-32.117,-32.480,-32.827,
--33.154,-33.464,-33.758,-34.038,-34.307,-34.569,-34.828,-35.085,-35.344,-35.605,-35.869,-36.133,-36.396,-36.656,-36.911,-37.159,
--37.399,-37.631,-37.855,-38.074,-38.292,-38.511,-38.734,-38.966,-39.207,-39.457,-39.716,-39.980,-40.242,-40.498,-40.739,-40.958,
--41.147,-41.302,-41.419,-41.498,-41.542,-41.555,-41.548,-41.529,-41.512,-41.507,-41.528,-41.582,-41.677,-41.817,-42.001,-42.226,
--42.485,-42.769,-43.067,-43.367,-43.659,-43.934,-44.187,-44.414,-44.616,-44.797,-44.963,-45.125,-45.291,-45.473,-45.678,-45.914,
--46.184,-46.489,-46.825,-47.186,-47.563,-47.945,-48.319,-48.674,-48.999,-49.286,-49.529,-49.727,-49.881,-49.995,-50.076,-50.136,
--50.183,-50.229,-50.285,-50.359,-50.459,-50.588,-50.749,-50.941,-51.163,-51.409,-51.675,-51.954,-52.240,-52.527,-52.810,-53.085,
--53.349,-53.600,-53.837,-54.059,-54.267,-54.462,-54.645,-54.817,-54.980,-55.136,-55.286,-55.432,-55.575,-55.719,-55.863,-56.009,
--56.158,-56.311,-56.466,-56.623,-56.779,-56.932,-57.078,-57.215,-57.339,-57.446,-57.533,-57.600,-57.646,-57.670,-57.674,-57.660,
--57.632,-57.592,-57.544,-57.489,-57.431,-57.370,-57.306,-57.237,-57.163,-57.081,-56.989,-56.884,-56.766,-56.635,-56.491,-56.338,
--56.178,-56.017,-55.860,-55.710,-55.573,-55.450,-55.343,-55.249,-55.166,-55.087,-55.006,-54.915,-54.806,-54.673,-54.512,-54.319,
--54.095,-53.846,-53.579,-53.305,-53.038,-52.791,-52.579,-52.417,-52.315,-52.282,-52.321,-52.432,-52.611,-52.847,-53.128,-53.439,
--53.765,-54.088,-54.394,-54.671,-54.909,-55.104,-55.252,-55.357,-55.423,-55.456,-55.465,-55.457,-55.441,-55.422,-55.405,-55.390,
--55.379,-55.369,-55.359,-55.346,-55.328,-55.304,-55.276,-55.246,-55.220,-55.202,-55.202,-55.225,-55.277,-55.362,-55.483,-55.637,
--55.820,-56.022,-56.233,-56.440,-56.628,-56.784,-56.896,-56.954,-56.953,-56.891,-56.773,-56.604,-56.397,-56.166,-55.927,-55.696,
--55.489,-55.318,-55.194,-55.123,-55.107,-55.144,-55.228,-55.350,-55.501,-55.669,-55.843,-56.013,-56.173,-56.317,-56.443,-56.550,
--56.643,-56.725,-56.801,-56.877,-56.957,-57.046,-57.146,-57.258,-57.379,-57.509,-57.643,-57.776,-57.905,-58.024,-58.132,-58.225,
--58.302,-58.363,-58.409,-58.442,-58.464,-58.477,-58.484,-58.486,-58.483,-58.478,-58.469,-58.455,-58.436,-58.411,-58.379,-58.340,
--58.294,-58.242,-58.187,-58.130,-58.073,-58.019,-57.970,-57.929,-57.896,-57.873,-57.859,-57.855,-57.859,-57.869,-57.885,-57.904,
--57.925,-57.948,-57.970,-57.991,-58.013,-58.034,-58.056,-58.079,-58.104,-58.132,-58.163,-58.198,-58.238,-58.283,-58.332,-58.385,
--58.442,-58.502,-58.564,-58.627,-58.689,-58.749,-58.805,-58.853,-58.892,-58.919,-58.931,-58.926,-58.902,-58.857,-58.791,-58.704,
--58.597,-58.474,-58.336,-58.188,-58.033,-57.877,-57.723,-57.576,-57.439,-57.314,-57.203,-57.105,-57.021,-56.948,-56.885,-56.829,
--56.778,-56.729,-56.680,-56.629,-56.576,-56.521,-56.463,-56.403,-56.343,-56.284,-56.226,-56.171,-56.119,-56.070,-56.024,-55.979,
--55.935,-55.890,-55.843,-55.793,-55.740,-55.684,-55.624,-55.561,-55.496,-55.430,-55.364,-55.299,-55.234,-55.171,-55.107,-55.042,
--54.975,-54.903,-54.824,-54.736,-54.637,-54.527,-54.404,-54.268,-54.121,-53.964,-53.799,-53.628,-53.454,-53.279,-53.106,-52.935,
--52.768,-52.603,-52.441,-52.278,-52.113,-51.942,-51.761,-51.567,-51.358,-51.130,-50.884,-50.617,-50.331,-50.028,-49.711,-49.383,
--49.050,-48.716,-48.386,-48.065,-47.758,-47.469,-47.200,-46.954,-46.730,-46.529,-46.349,-46.188,-46.041,-45.905,-45.775,-45.647,
--45.518,-45.384,-45.241,-45.089,-44.927,-44.755,-44.575,-44.388,-44.199,-44.011,-43.828,-43.653,-43.490,-43.342,-43.210,-43.094,
--42.995,-42.910,-42.838,-42.774,-42.715,-42.656,-42.594,-42.524,-42.443,-42.349,-42.239,-42.114,-41.973,-41.816,-41.645,-41.462,
--41.268,-41.063,-40.850,-40.627,-40.396,-40.154,-39.902,-39.638,-39.361,-39.071,-38.768,-38.455,-38.135,-37.811,-37.489,-37.177,
--36.882,-36.612,-36.375,-36.179,-36.029,-35.930,-35.884,-35.891,-35.948,-36.051,-36.192,-36.362,-36.550,-36.745,-36.935,-37.111,
--37.262,-37.383,-37.468,-37.514,-37.523,-37.496,-37.439,-37.357,-37.259,-37.152,-37.043,-36.938,-36.844,-36.763,-36.697,-36.646,
--36.609,-36.582,-36.561,-36.543,-36.523,-36.497,-36.464,-36.420,-36.366,-36.303,-36.232,-36.156,-36.078,-36.000,-35.925,-35.854,
--35.789,-35.729,-35.674,-35.622,-35.571,-35.518,-35.461,-35.400,-35.332,-35.259,-35.181,-35.101,-35.022,-34.946,-34.877,-34.819,
--34.773,-34.741,-34.722,-34.714,-34.715,-34.719,-34.723,-34.719,-34.701,-34.666,-34.607,-34.523,-34.412,-34.274,-34.111,-33.927,
--33.728,-33.518,-33.303,-33.090,-32.883,-32.685,-32.500,-32.329,-32.172,-32.026,-31.890,-31.760,-31.633,-31.507,-31.378,-31.244,
--31.105,-30.961,-30.812,-30.659,-30.504,-30.349,-30.195,-30.042,-29.890,-29.739,-29.585,-29.428,-29.264,-29.091,-28.905,-28.705,
--28.490,-28.260,-28.016,-27.760,-27.497,-27.229,-26.962,-26.699,-26.444,-26.200,-25.970,-25.752,-25.547,-25.353,-25.166,-24.982,
--24.797,-24.608,-24.412,-24.205,-23.988,-23.761,-23.525,-23.284,-23.040,-22.799,-22.564,-22.338,-22.125,-21.925,-21.737,-21.561,
--21.393,-21.228,-21.061,-20.885,-20.697,-20.492,-20.266,-20.018,-19.750,-19.465,-19.168,-18.867,-18.572,-18.293,-18.041,-17.826,
--17.660,-17.550,-17.502,-17.519,-17.603,-17.750,-17.955,-18.208,-18.498,-18.812,-19.134,-19.448,-19.737,-19.987,-20.182,-20.312,
--20.366,-20.340,-20.230,-20.040,-19.773,-19.441,-19.055,-18.632,-18.190,-17.749,-17.329,-16.950,-16.630,-16.385,-16.228,-16.167,
--16.209,-16.351,-16.590,-16.916,-17.315,-17.771,-18.265,-18.775,-19.280,-19.759,-20.195,-20.570,-20.871,-21.090,-21.222,-21.267,
--21.229,-21.115,-20.938,-20.710,-20.446,-20.162,-19.874,-19.595,-19.338,-19.111,-18.921,-18.770,-18.658,-18.581,-18.532,-18.504,
--18.487,-18.471,-18.445,-18.402,-18.335,-18.241,-18.117,-17.965,-17.790,-17.598,-17.399,-17.201,-17.016,-16.853,-16.721,-16.625,
--16.569,-16.554,-16.577,-16.632,-16.710,-16.802,-16.896,-16.978,-17.038,-17.066,-17.053,-16.994,-16.889,-16.739,-16.548,-16.326,
--16.080,-15.824,-15.568,-15.324,-15.101,-14.907,-14.746,-14.622,-14.533,-14.475,-14.443,-14.430,-14.427,-14.427,-14.422,-14.406,
--14.376,-14.330,-14.268,-14.194,-14.110,-14.024,-13.940,-13.864,-13.801,-13.755,-13.729,-13.721,-13.731,-13.756,-13.791,-13.831,
--13.872,-13.908,-13.936,-13.953,-13.958,-13.953,-13.938,-13.918,-13.896,-13.877,-13.864,-13.862,-13.872,-13.895,-13.930,-13.976,
--14.027,-14.080,-14.129,-14.169,-14.194,-14.200,-14.185,-14.146,-14.084,-14.001,-13.899,-13.783,-13.658,-13.527,-13.397,-13.271,
--13.152,-13.044,-12.946,-12.859,-12.782,-12.714,-12.652,-12.594,-12.540,-12.488,-12.437,-12.388,-12.341,-12.298,-12.260,-12.228,
--12.203,-12.186,-12.178,-12.176,-12.180,-12.188,-12.197,-12.205,-12.210,-12.211,-12.207,-12.198,-12.184,-12.167,-12.149,-12.134,
--12.122,-12.115,-12.115,-12.121,-12.133,-12.147,-12.161,-12.170,-12.171,-12.158,-12.130,-12.083,-12.017,-11.931,-11.829,-11.712,
--11.587,-11.456,-11.324,-11.195,-11.071,-10.952,-10.837,-10.722,-10.601,-10.468,-10.315,-10.135,-9.921,-9.669,-9.376,-9.043,
--8.672,-8.271,-7.847,-7.411,-6.976,-6.552,-6.150,-5.780,-5.449,-5.158,-4.910,-4.701,-4.527,-4.379,-4.250,-4.131,
--4.014,-3.894,-3.765,-3.627,-3.479,-3.324,-3.167,-3.012,-2.864,-2.728,-2.607,-2.503,-2.414,-2.339,-2.273,-2.210,
--2.147,-2.077,-1.996,-1.904,-1.799,-1.685,-1.567,-1.451,-1.346,-1.259,-1.197,-1.165,-1.166,-1.200,-1.261,-1.343,
--1.436,-1.525,-1.598,-1.642,-1.644,-1.595,-1.489,-1.324,-1.103,-.834,-.527,-.196,.145,.479,.791,1.069,
-1.304,1.490,1.625,1.711,1.754,1.763,1.747,1.717,1.685,1.657,1.641,1.641,1.658,1.690,1.733,1.781,
-1.828,1.868,1.896,1.907,1.899,1.873,1.831,1.776,1.715,1.653,1.596,1.551,1.523,1.514,1.526,1.558,
-1.611,1.679,1.759,1.847,1.938,2.028,2.114,2.193,2.265,2.328,2.382,2.428,2.467,2.498,2.522,2.539,
-2.546,2.544,2.529,2.500,2.456,2.395,2.319,2.226,2.121,2.005,1.884,1.761,1.642,.286,.108,-.055,
--.197,-.310,-.388,-.428,-.428,-.389,-.312,-.201,-.062,.099,.276,.463,.653,.843,1.027,1.204,
-1.371,1.527,1.673,1.810,1.939,2.063,2.182,2.300,2.417,2.536,2.657,2.780,2.907,3.036,3.168,3.302,
-3.436,3.570,3.702,3.831,3.955,4.073,4.183,4.283,4.374,4.454,4.523,4.582,4.632,4.674,4.712,4.747,
-4.782,4.820,4.865,4.919,4.985,5.064,5.157,5.265,5.387,5.523,5.671,5.829,5.996,6.170,6.350,6.534,
-6.721,6.911,7.103,7.297,7.494,7.692,7.890,8.089,8.285,8.478,8.664,8.842,9.008,9.161,9.299,9.421,
-9.526,9.617,9.695,9.765,9.828,9.891,9.957,10.031,10.116,10.215,10.328,10.456,10.596,10.745,10.899,11.054,
-11.203,11.343,11.467,11.574,11.662,11.729,11.777,11.807,11.825,11.832,11.835,11.836,11.839,11.847,11.860,11.878,
-11.900,11.922,11.941,11.954,11.957,11.945,11.918,11.873,11.810,11.732,11.640,11.539,11.432,11.324,11.219,11.120,
-11.031,10.952,10.885,10.828,10.779,10.736,10.696,10.657,10.616,10.571,10.523,10.470,10.415,10.359,10.304,10.253,
-10.209,10.173,10.147,10.132,10.127,10.132,10.145,10.163,10.185,10.208,10.232,10.256,10.279,10.303,10.328,10.356,
-10.389,10.428,10.473,10.525,10.581,10.640,10.696,10.746,10.785,10.807,10.807,10.783,10.731,10.652,10.547,10.420,
-10.278,10.127,9.975,9.831,9.704,9.601,9.526,9.483,9.473,9.493,9.540,9.607,9.686,9.769,9.846,9.911,
-9.957,9.979,9.975,9.946,9.896,9.828,9.751,9.673,9.601,9.543,9.507,9.498,9.519,9.570,9.650,9.756,
-9.881,10.019,10.163,10.304,10.435,10.549,10.641,10.706,10.743,10.750,10.728,10.679,10.605,10.510,10.398,10.273,
-10.139,9.999,9.858,9.720,9.587,9.464,9.353,9.257,9.180,9.123,9.087,9.074,9.083,9.112,9.158,9.217,
-9.283,9.350,9.410,9.458,9.484,9.485,9.454,9.389,9.289,9.155,8.991,8.802,8.596,8.379,8.161,7.949,
-7.751,7.572,7.415,7.282,7.171,7.078,6.997,6.922,6.845,6.757,6.650,6.520,6.361,6.172,5.955,5.713,
-5.453,5.183,4.912,4.652,4.412,4.202,4.030,3.901,3.818,3.780,3.784,3.825,3.893,3.980,4.076,4.168,
-4.249,4.309,4.343,4.347,4.320,4.266,4.188,4.093,3.990,3.887,3.793,3.716,3.662,3.635,3.637,3.666,
-3.718,3.787,3.865,3.942,4.009,4.057,4.077,4.063,4.012,3.921,3.793,3.632,3.443,3.236,3.018,2.798,
-2.584,2.383,2.199,2.035,1.889,1.760,1.641,1.528,1.412,1.288,1.147,.987,.803,.595,.365,.118,
--.139,-.400,-.655,-.896,-1.114,-1.303,-1.458,-1.577,-1.661,-1.712,-1.736,-1.738,-1.728,-1.712,-1.699,-1.696,
--1.709,-1.741,-1.795,-1.872,-1.969,-2.086,-2.219,-2.365,-2.521,-2.685,-2.856,-3.034,-3.219,-3.413,-3.619,-3.840,
--4.076,-4.332,-4.606,-4.899,-5.210,-5.536,-5.872,-6.215,-6.561,-6.905,-7.243,-7.573,-7.893,-8.204,-8.507,-8.807,
--9.107,-9.412,-9.729,-10.062,-10.416,-10.795,-11.200,-11.633,-12.091,-12.572,-13.070,-13.580,-14.096,-14.609,-15.113,-15.602,
--16.069,-16.512,-16.926,-17.311,-17.665,-17.991,-18.289,-18.563,-18.814,-19.045,-19.258,-19.455,-19.635,-19.800,-19.947,-20.076,
--20.185,-20.272,-20.336,-20.377,-20.396,-20.395,-20.377,-20.346,-20.311,-20.277,-20.253,-20.248,-20.271,-20.328,-20.427,-20.573,
--20.769,-21.015,-21.310,-21.650,-22.029,-22.440,-22.874,-23.323,-23.776,-24.226,-24.667,-25.092,-25.498,-25.885,-26.254,-26.607,
--26.948,-27.283,-27.617,-27.955,-28.302,-28.661,-29.033,-29.418,-29.815,-30.219,-30.628,-31.036,-31.437,-31.827,-32.204,-32.563,
--32.904,-33.228,-33.538,-33.835,-34.125,-34.410,-34.696,-34.985,-35.278,-35.577,-35.878,-36.181,-36.481,-36.774,-37.055,-37.319,
--37.565,-37.791,-37.997,-38.185,-38.360,-38.528,-38.695,-38.869,-39.056,-39.261,-39.488,-39.739,-40.011,-40.300,-40.600,-40.903,
--41.197,-41.474,-41.723,-41.938,-42.111,-42.241,-42.329,-42.378,-42.395,-42.390,-42.374,-42.358,-42.353,-42.370,-42.417,-42.498,
--42.616,-42.768,-42.952,-43.160,-43.385,-43.618,-43.851,-44.076,-44.288,-44.486,-44.667,-44.836,-44.996,-45.154,-45.318,-45.493,
--45.689,-45.908,-46.155,-46.430,-46.731,-47.053,-47.389,-47.732,-48.072,-48.400,-48.707,-48.988,-49.238,-49.454,-49.636,-49.789,
--49.916,-50.024,-50.122,-50.216,-50.317,-50.429,-50.560,-50.712,-50.889,-51.089,-51.312,-51.553,-51.808,-52.072,-52.338,-52.601,
--52.857,-53.101,-53.330,-53.542,-53.737,-53.917,-54.082,-54.237,-54.384,-54.528,-54.673,-54.823,-54.981,-55.150,-55.331,-55.524,
--55.728,-55.941,-56.159,-56.379,-56.594,-56.799,-56.988,-57.157,-57.301,-57.416,-57.502,-57.556,-57.582,-57.581,-57.558,-57.518,
--57.466,-57.409,-57.351,-57.297,-57.250,-57.211,-57.180,-57.155,-57.134,-57.110,-57.080,-57.039,-56.982,-56.905,-56.807,-56.686,
--56.544,-56.383,-56.207,-56.022,-55.831,-55.640,-55.452,-55.269,-55.094,-54.925,-54.760,-54.596,-54.428,-54.253,-54.065,-53.863,
--53.646,-53.415,-53.174,-52.928,-52.686,-52.457,-52.252,-52.081,-51.954,-51.878,-51.859,-51.899,-51.997,-52.148,-52.345,-52.579,
--52.837,-53.107,-53.377,-53.636,-53.874,-54.084,-54.260,-54.402,-54.508,-54.583,-54.629,-54.651,-54.656,-54.647,-54.629,-54.604,
--54.574,-54.541,-54.505,-54.465,-54.423,-54.378,-54.334,-54.292,-54.259,-54.238,-54.237,-54.261,-54.316,-54.406,-54.532,-54.694,
--54.889,-55.110,-55.348,-55.592,-55.830,-56.049,-56.236,-56.380,-56.472,-56.509,-56.488,-56.411,-56.286,-56.121,-55.928,-55.721,
--55.513,-55.318,-55.147,-55.010,-54.913,-54.860,-54.851,-54.882,-54.949,-55.046,-55.165,-55.297,-55.437,-55.579,-55.718,-55.852,
--55.980,-56.104,-56.224,-56.343,-56.463,-56.587,-56.716,-56.849,-56.986,-57.126,-57.265,-57.399,-57.527,-57.645,-57.749,-57.840,
--57.915,-57.976,-58.024,-58.061,-58.089,-58.112,-58.132,-58.151,-58.171,-58.191,-58.211,-58.230,-58.247,-58.258,-58.261,-58.255,
--58.237,-58.208,-58.167,-58.114,-58.054,-57.986,-57.916,-57.847,-57.781,-57.722,-57.673,-57.635,-57.611,-57.599,-57.599,-57.611,
--57.631,-57.659,-57.692,-57.727,-57.761,-57.795,-57.824,-57.850,-57.870,-57.885,-57.894,-57.899,-57.901,-57.899,-57.895,-57.891,
--57.887,-57.885,-57.885,-57.888,-57.894,-57.903,-57.915,-57.930,-57.946,-57.961,-57.975,-57.986,-57.991,-57.989,-57.977,-57.956,
--57.923,-57.879,-57.823,-57.757,-57.681,-57.597,-57.507,-57.413,-57.317,-57.221,-57.125,-57.031,-56.940,-56.851,-56.763,-56.676,
--56.588,-56.498,-56.405,-56.307,-56.205,-56.098,-55.987,-55.873,-55.757,-55.641,-55.528,-55.420,-55.319,-55.227,-55.146,-55.076,
--55.019,-54.974,-54.940,-54.916,-54.900,-54.890,-54.883,-54.878,-54.871,-54.860,-54.843,-54.818,-54.783,-54.737,-54.680,-54.610,
--54.527,-54.432,-54.326,-54.208,-54.082,-53.947,-53.807,-53.662,-53.516,-53.370,-53.227,-53.087,-52.954,-52.827,-52.707,-52.594,
--52.487,-52.385,-52.285,-52.185,-52.083,-51.974,-51.855,-51.725,-51.580,-51.419,-51.241,-51.046,-50.835,-50.610,-50.374,-50.130,
--49.882,-49.634,-49.392,-49.158,-48.936,-48.728,-48.536,-48.360,-48.199,-48.051,-47.912,-47.780,-47.649,-47.514,-47.371,-47.216,
--47.045,-46.856,-46.648,-46.421,-46.178,-45.922,-45.657,-45.389,-45.124,-44.869,-44.629,-44.410,-44.216,-44.051,-43.915,-43.808,
--43.728,-43.671,-43.632,-43.605,-43.582,-43.558,-43.525,-43.477,-43.411,-43.321,-43.206,-43.066,-42.901,-42.713,-42.505,-42.280,
--42.043,-41.795,-41.541,-41.283,-41.022,-40.759,-40.494,-40.227,-39.958,-39.687,-39.414,-39.140,-38.868,-38.599,-38.339,-38.093,
--37.866,-37.664,-37.493,-37.358,-37.262,-37.209,-37.197,-37.226,-37.292,-37.389,-37.510,-37.645,-37.786,-37.922,-38.045,-38.146,
--38.219,-38.260,-38.265,-38.236,-38.174,-38.082,-37.968,-37.836,-37.694,-37.549,-37.406,-37.271,-37.147,-37.036,-36.938,-36.854,
--36.779,-36.714,-36.653,-36.594,-36.535,-36.474,-36.411,-36.345,-36.278,-36.212,-36.148,-36.089,-36.038,-35.995,-35.961,-35.935,
--35.915,-35.898,-35.882,-35.862,-35.833,-35.792,-35.737,-35.665,-35.577,-35.474,-35.358,-35.234,-35.107,-34.984,-34.870,-34.770,
--34.690,-34.632,-34.597,-34.586,-34.596,-34.622,-34.659,-34.701,-34.742,-34.774,-34.792,-34.791,-34.769,-34.724,-34.655,-34.564,
--34.455,-34.331,-34.195,-34.053,-33.906,-33.757,-33.609,-33.462,-33.315,-33.167,-33.017,-32.862,-32.702,-32.536,-32.363,-32.185,
--32.004,-31.824,-31.647,-31.479,-31.322,-31.180,-31.055,-30.947,-30.856,-30.778,-30.708,-30.643,-30.573,-30.493,-30.396,-30.276,
--30.128,-29.949,-29.738,-29.497,-29.229,-28.937,-28.629,-28.310,-27.987,-27.666,-27.351,-27.045,-26.750,-26.466,-26.191,-25.921,
--25.654,-25.385,-25.110,-24.827,-24.534,-24.233,-23.923,-23.610,-23.298,-22.991,-22.696,-22.418,-22.160,-21.924,-21.711,-21.518,
--21.341,-21.173,-21.006,-20.832,-20.642,-20.427,-20.182,-19.903,-19.588,-19.243,-18.871,-18.484,-18.094,-17.716,-17.367,-17.062,
--16.817,-16.647,-16.560,-16.566,-16.666,-16.858,-17.136,-17.490,-17.903,-18.360,-18.838,-19.319,-19.779,-20.200,-20.562,-20.850,
--21.052,-21.158,-21.165,-21.073,-20.886,-20.612,-20.263,-19.852,-19.398,-18.918,-18.431,-17.959,-17.519,-17.128,-16.804,-16.557,
--16.399,-16.335,-16.368,-16.495,-16.711,-17.005,-17.366,-17.776,-18.219,-18.672,-19.118,-19.536,-19.908,-20.218,-20.453,-20.606,
--20.670,-20.647,-20.540,-20.358,-20.113,-19.820,-19.495,-19.155,-18.819,-18.501,-18.215,-17.971,-17.776,-17.632,-17.539,-17.490,
--17.478,-17.493,-17.522,-17.552,-17.573,-17.574,-17.547,-17.487,-17.393,-17.267,-17.113,-16.939,-16.756,-16.573,-16.402,-16.252,
--16.133,-16.050,-16.006,-16.001,-16.032,-16.093,-16.175,-16.269,-16.364,-16.449,-16.514,-16.553,-16.558,-16.529,-16.465,-16.369,
--16.246,-16.103,-15.949,-15.792,-15.639,-15.498,-15.374,-15.269,-15.185,-15.120,-15.071,-15.033,-15.001,-14.969,-14.932,-14.887,
--14.830,-14.760,-14.679,-14.589,-14.493,-14.397,-14.305,-14.223,-14.154,-14.102,-14.068,-14.051,-14.051,-14.064,-14.085,-14.111,
--14.136,-14.156,-14.167,-14.168,-14.157,-14.137,-14.109,-14.077,-14.046,-14.020,-14.004,-14.001,-14.015,-14.046,-14.094,-14.155,
--14.227,-14.304,-14.380,-14.449,-14.506,-14.546,-14.564,-14.559,-14.530,-14.478,-14.406,-14.317,-14.216,-14.108,-13.998,-13.889,
--13.785,-13.688,-13.600,-13.521,-13.450,-13.385,-13.326,-13.271,-13.217,-13.166,-13.116,-13.069,-13.025,-12.987,-12.957,-12.936,
--12.926,-12.928,-12.941,-12.963,-12.994,-13.029,-13.066,-13.100,-13.128,-13.148,-13.156,-13.152,-13.136,-13.110,-13.077,-13.040,
--13.002,-12.968,-12.940,-12.920,-12.909,-12.906,-12.909,-12.915,-12.919,-12.915,-12.899,-12.865,-12.809,-12.729,-12.624,-12.495,
--12.342,-12.171,-11.986,-11.790,-11.588,-11.385,-11.181,-10.978,-10.774,-10.568,-10.353,-10.126,-9.882,-9.614,-9.320,-8.998,
--8.648,-8.273,-7.879,-7.473,-7.065,-6.666,-6.286,-5.937,-5.628,-5.366,-5.155,-4.996,-4.889,-4.828,-4.807,-4.815,
--4.845,-4.884,-4.924,-4.956,-4.972,-4.969,-4.943,-4.894,-4.823,-4.732,-4.624,-4.503,-4.372,-4.233,-4.089,-3.940,
--3.789,-3.634,-3.476,-3.316,-3.155,-2.995,-2.838,-2.687,-2.546,-2.421,-2.313,-2.227,-2.164,-2.124,-2.105,-2.104,
--2.115,-2.130,-2.143,-2.144,-2.126,-2.082,-2.007,-1.898,-1.755,-1.581,-1.381,-1.163,-.935,-.705,-.485,-.281,
--.102,.050,.170,.260,.321,.359,.377,.383,.382,.380,.380,.385,.395,.409,.424,.437,
-.444,.440,.422,.388,.338,.273,.195,.109,.020,-.066,-.142,-.204,-.247,-.268,-.266,-.241,
--.194,-.128,-.049,.042,.138,.236,.333,.428,.518,.604,.687,.767,.845,.923,.998,1.072,
-1.141,1.202,1.252,1.286,1.300,1.290,1.252,1.185,1.088,.964,.815,.648,.469,.286,-.633,-.840,
--1.032,-1.200,-1.333,-1.426,-1.473,-1.474,-1.429,-1.341,-1.216,-1.060,-.882,-.690,-.491,-.293,-.102,.077,
-.243,.394,.531,.656,.773,.885,.996,1.110,1.230,1.359,1.497,1.645,1.802,1.966,2.135,2.305,
-2.474,2.638,2.794,2.939,3.072,3.191,3.296,3.388,3.466,3.534,3.591,3.641,3.686,3.728,3.769,3.811,
-3.856,3.904,3.958,4.017,4.083,4.155,4.233,4.318,4.410,4.508,4.615,4.729,4.851,4.983,5.125,5.279,
-5.445,5.624,5.815,6.020,6.236,6.462,6.696,6.935,7.176,7.414,7.645,7.865,8.070,8.258,8.425,8.570,
-8.694,8.797,8.883,8.953,9.014,9.070,9.127,9.189,9.261,9.346,9.447,9.564,9.697,9.842,9.997,10.156,
-10.315,10.469,10.612,10.740,10.850,10.940,11.010,11.060,11.093,11.113,11.123,11.127,11.131,11.137,11.148,11.165,
-11.189,11.219,11.253,11.287,11.318,11.341,11.354,11.353,11.336,11.301,11.249,11.180,11.096,11.000,10.896,10.786,
-10.674,10.563,10.456,10.353,10.256,10.164,10.079,9.998,9.921,9.848,9.777,9.710,9.645,9.585,9.530,9.482,
-9.442,9.412,9.393,9.385,9.389,9.404,9.429,9.463,9.503,9.548,9.596,9.646,9.696,9.747,9.797,9.848,
-9.901,9.954,10.010,10.068,10.127,10.185,10.241,10.291,10.332,10.359,10.370,10.360,10.326,10.269,10.187,10.083,
-9.960,9.823,9.678,9.533,9.394,9.269,9.163,9.082,9.029,9.005,9.009,9.038,9.086,9.147,9.215,9.281,
-9.339,9.383,9.407,9.410,9.391,9.352,9.296,9.229,9.158,9.089,9.031,8.990,8.972,8.981,9.019,9.086,
-9.181,9.299,9.436,9.584,9.736,9.885,10.022,10.142,10.239,10.307,10.345,10.351,10.325,10.269,10.186,10.080,
-9.955,9.818,9.673,9.526,9.383,9.250,9.129,9.027,8.944,8.885,8.850,8.838,8.849,8.880,8.928,8.988,
-9.054,9.120,9.180,9.228,9.257,9.263,9.242,9.192,9.111,9.001,8.865,8.707,8.532,8.347,8.159,7.974,
-7.799,7.638,7.493,7.367,7.258,7.164,7.080,7.000,6.918,6.826,6.718,6.587,6.431,6.246,6.033,5.795,
-5.536,5.264,4.986,4.712,4.453,4.218,4.015,3.851,3.730,3.653,3.620,3.627,3.667,3.734,3.816,3.905,
-3.990,4.063,4.116,4.143,4.143,4.116,4.063,3.990,3.904,3.812,3.723,3.645,3.586,3.551,3.544,3.566,
-3.614,3.684,3.769,3.862,3.951,4.027,4.081,4.104,4.088,4.031,3.930,3.786,3.604,3.390,3.151,2.897,
-2.636,2.379,2.131,1.899,1.687,1.495,1.323,1.166,1.018,.875,.727,.569,.394,.198,-.021,-.263,
--.525,-.803,-1.090,-1.378,-1.658,-1.920,-2.157,-2.361,-2.527,-2.653,-2.736,-2.780,-2.788,-2.765,-2.719,-2.658,
--2.589,-2.522,-2.462,-2.416,-2.390,-2.386,-2.407,-2.454,-2.528,-2.627,-2.750,-2.897,-3.066,-3.256,-3.467,-3.696,
--3.945,-4.212,-4.496,-4.796,-5.110,-5.436,-5.771,-6.112,-6.457,-6.801,-7.143,-7.481,-7.812,-8.137,-8.457,-8.773,
--9.087,-9.405,-9.728,-10.062,-10.409,-10.774,-11.157,-11.560,-11.983,-12.423,-12.878,-13.343,-13.813,-14.283,-14.748,-15.203,
--15.644,-16.067,-16.471,-16.855,-17.220,-17.567,-17.899,-18.218,-18.527,-18.828,-19.122,-19.409,-19.689,-19.958,-20.212,-20.448,
--20.659,-20.841,-20.987,-21.095,-21.162,-21.187,-21.172,-21.122,-21.044,-20.946,-20.840,-20.737,-20.651,-20.593,-20.575,-20.607,
--20.695,-20.844,-21.055,-21.327,-21.654,-22.028,-22.441,-22.882,-23.338,-23.800,-24.258,-24.702,-25.129,-25.534,-25.916,-26.278,
--26.623,-26.957,-27.286,-27.615,-27.951,-28.297,-28.658,-29.034,-29.424,-29.825,-30.233,-30.644,-31.051,-31.449,-31.833,-32.200,
--32.548,-32.876,-33.187,-33.484,-33.770,-34.051,-34.333,-34.618,-34.911,-35.213,-35.524,-35.843,-36.165,-36.487,-36.802,-37.105,
--37.391,-37.655,-37.896,-38.113,-38.308,-38.485,-38.651,-38.812,-38.977,-39.152,-39.345,-39.561,-39.802,-40.068,-40.355,-40.659,
--40.970,-41.280,-41.577,-41.852,-42.094,-42.296,-42.453,-42.564,-42.630,-42.656,-42.650,-42.621,-42.581,-42.541,-42.513,-42.508,
--42.531,-42.589,-42.684,-42.814,-42.975,-43.163,-43.369,-43.586,-43.805,-44.020,-44.226,-44.420,-44.600,-44.769,-44.929,-45.087,
--45.247,-45.418,-45.604,-45.810,-46.040,-46.295,-46.573,-46.872,-47.186,-47.508,-47.832,-48.150,-48.453,-48.738,-48.997,-49.230,
--49.435,-49.614,-49.770,-49.909,-50.036,-50.158,-50.281,-50.412,-50.556,-50.716,-50.895,-51.091,-51.305,-51.533,-51.771,-52.014,
--52.258,-52.497,-52.727,-52.946,-53.150,-53.340,-53.517,-53.681,-53.838,-53.990,-54.143,-54.301,-54.468,-54.647,-54.840,-55.049,
--55.272,-55.507,-55.750,-55.996,-56.238,-56.470,-56.686,-56.879,-57.044,-57.177,-57.276,-57.340,-57.371,-57.372,-57.348,-57.304,
--57.247,-57.185,-57.123,-57.066,-57.019,-56.985,-56.963,-56.953,-56.952,-56.955,-56.958,-56.954,-56.938,-56.905,-56.851,-56.774,
--56.671,-56.544,-56.394,-56.225,-56.040,-55.843,-55.638,-55.429,-55.218,-55.007,-54.796,-54.585,-54.372,-54.155,-53.932,-53.703,
--53.467,-53.226,-52.981,-52.738,-52.503,-52.283,-52.087,-51.921,-51.796,-51.716,-51.687,-51.711,-51.788,-51.916,-52.088,-52.297,
--52.532,-52.784,-53.040,-53.289,-53.522,-53.729,-53.905,-54.046,-54.151,-54.219,-54.254,-54.261,-54.243,-54.207,-54.159,-54.102,
--54.042,-53.981,-53.923,-53.868,-53.819,-53.775,-53.738,-53.711,-53.694,-53.690,-53.702,-53.734,-53.789,-53.869,-53.975,-54.108,
--54.267,-54.448,-54.645,-54.853,-55.062,-55.263,-55.448,-55.607,-55.733,-55.818,-55.861,-55.859,-55.813,-55.729,-55.611,-55.469,
--55.311,-55.147,-54.988,-54.841,-54.714,-54.613,-54.541,-54.501,-54.492,-54.512,-54.558,-54.627,-54.715,-54.817,-54.931,-55.054,
--55.183,-55.317,-55.456,-55.599,-55.746,-55.897,-56.050,-56.206,-56.363,-56.518,-56.669,-56.814,-56.950,-57.074,-57.186,-57.284,
--57.369,-57.441,-57.502,-57.554,-57.600,-57.643,-57.685,-57.728,-57.773,-57.821,-57.871,-57.921,-57.969,-58.012,-58.046,-58.068,
--58.076,-58.068,-58.042,-57.998,-57.938,-57.863,-57.778,-57.687,-57.594,-57.503,-57.420,-57.349,-57.292,-57.253,-57.232,-57.230,
--57.245,-57.275,-57.318,-57.370,-57.426,-57.484,-57.539,-57.588,-57.626,-57.653,-57.666,-57.664,-57.647,-57.616,-57.572,-57.518,
--57.455,-57.387,-57.316,-57.246,-57.181,-57.122,-57.072,-57.033,-57.006,-56.993,-56.991,-57.001,-57.021,-57.049,-57.081,-57.115,
--57.147,-57.175,-57.195,-57.205,-57.204,-57.189,-57.160,-57.118,-57.063,-56.995,-56.916,-56.828,-56.733,-56.631,-56.525,-56.414,
--56.300,-56.183,-56.063,-55.939,-55.811,-55.679,-55.543,-55.403,-55.261,-55.117,-54.973,-54.831,-54.693,-54.564,-54.445,-54.339,
--54.248,-54.175,-54.120,-54.083,-54.065,-54.063,-54.076,-54.099,-54.129,-54.162,-54.193,-54.218,-54.232,-54.233,-54.215,-54.179,
--54.122,-54.045,-53.947,-53.833,-53.703,-53.562,-53.414,-53.263,-53.113,-52.969,-52.832,-52.707,-52.594,-52.494,-52.408,-52.334,
--52.269,-52.210,-52.155,-52.098,-52.036,-51.966,-51.883,-51.787,-51.674,-51.546,-51.401,-51.243,-51.074,-50.898,-50.719,-50.542,
--50.372,-50.212,-50.067,-49.938,-49.829,-49.737,-49.663,-49.603,-49.552,-49.505,-49.457,-49.399,-49.325,-49.229,-49.104,-48.947,
--48.754,-48.524,-48.259,-47.962,-47.637,-47.292,-46.934,-46.572,-46.217,-45.877,-45.561,-45.276,-45.028,-44.822,-44.659,-44.537,
--44.454,-44.405,-44.383,-44.381,-44.389,-44.398,-44.401,-44.389,-44.355,-44.294,-44.203,-44.080,-43.926,-43.740,-43.527,-43.289,
--43.029,-42.753,-42.464,-42.165,-41.859,-41.549,-41.236,-40.922,-40.609,-40.297,-39.989,-39.687,-39.393,-39.112,-38.848,-38.606,
--38.390,-38.205,-38.057,-37.948,-37.881,-37.857,-37.873,-37.928,-38.015,-38.128,-38.260,-38.401,-38.541,-38.671,-38.783,-38.869,
--38.924,-38.944,-38.927,-38.875,-38.789,-38.673,-38.535,-38.378,-38.210,-38.037,-37.865,-37.697,-37.537,-37.386,-37.245,-37.114,
--36.990,-36.873,-36.760,-36.650,-36.541,-36.435,-36.330,-36.229,-36.135,-36.048,-35.972,-35.910,-35.861,-35.828,-35.810,-35.803,
--35.806,-35.815,-35.823,-35.826,-35.818,-35.795,-35.754,-35.691,-35.607,-35.504,-35.383,-35.251,-35.112,-34.974,-34.843,-34.725,
--34.628,-34.553,-34.505,-34.483,-34.486,-34.511,-34.555,-34.610,-34.671,-34.732,-34.787,-34.831,-34.861,-34.873,-34.867,-34.843,
--34.801,-34.745,-34.675,-34.594,-34.503,-34.403,-34.296,-34.179,-34.052,-33.915,-33.764,-33.599,-33.420,-33.228,-33.024,-32.811,
--32.594,-32.379,-32.170,-31.975,-31.799,-31.647,-31.521,-31.423,-31.353,-31.306,-31.278,-31.261,-31.247,-31.226,-31.191,-31.132,
--31.043,-30.918,-30.755,-30.554,-30.317,-30.047,-29.752,-29.437,-29.109,-28.776,-28.442,-28.112,-27.789,-27.471,-27.159,-26.848,
--26.534,-26.215,-25.884,-25.540,-25.181,-24.807,-24.421,-24.028,-23.634,-23.246,-22.873,-22.522,-22.199,-21.909,-21.653,-21.431,
--21.237,-21.066,-20.906,-20.746,-20.575,-20.380,-20.151,-19.880,-19.564,-19.202,-18.800,-18.367,-17.916,-17.467,-17.037,-16.649,
--16.323,-16.079,-15.932,-15.895,-15.974,-16.169,-16.476,-16.884,-17.376,-17.933,-18.529,-19.140,-19.740,-20.304,-20.808,-21.235,
--21.569,-21.798,-21.919,-21.931,-21.838,-21.648,-21.374,-21.031,-20.635,-20.203,-19.754,-19.306,-18.874,-18.473,-18.118,-17.817,
--17.580,-17.413,-17.318,-17.298,-17.349,-17.468,-17.648,-17.880,-18.152,-18.454,-18.770,-19.087,-19.389,-19.662,-19.895,-20.075,
--20.194,-20.246,-20.228,-20.142,-19.993,-19.787,-19.536,-19.253,-18.951,-18.646,-18.352,-18.082,-17.846,-17.654,-17.509,-17.413,
--17.363,-17.355,-17.379,-17.426,-17.485,-17.543,-17.590,-17.616,-17.615,-17.582,-17.515,-17.418,-17.293,-17.147,-16.990,-16.829,
--16.675,-16.535,-16.418,-16.327,-16.266,-16.236,-16.233,-16.255,-16.294,-16.344,-16.398,-16.449,-16.489,-16.514,-16.521,-16.507,
--16.474,-16.422,-16.354,-16.275,-16.190,-16.101,-16.013,-15.928,-15.849,-15.775,-15.707,-15.643,-15.581,-15.518,-15.453,-15.383,
--15.309,-15.229,-15.145,-15.059,-14.973,-14.890,-14.814,-14.746,-14.690,-14.646,-14.614,-14.594,-14.584,-14.580,-14.579,-14.577,
--14.571,-14.557,-14.534,-14.501,-14.459,-14.410,-14.356,-14.302,-14.253,-14.212,-14.185,-14.175,-14.184,-14.211,-14.256,-14.317,
--14.388,-14.465,-14.541,-14.610,-14.666,-14.705,-14.723,-14.718,-14.689,-14.639,-14.569,-14.484,-14.389,-14.289,-14.190,-14.096,
--14.010,-13.936,-13.874,-13.824,-13.785,-13.756,-13.734,-13.717,-13.702,-13.688,-13.674,-13.661,-13.648,-13.637,-13.631,-13.630,
--13.637,-13.653,-13.679,-13.712,-13.751,-13.794,-13.838,-13.877,-13.908,-13.928,-13.934,-13.924,-13.897,-13.856,-13.802,-13.739,
--13.671,-13.603,-13.539,-13.484,-13.439,-13.405,-13.382,-13.366,-13.354,-13.339,-13.316,-13.277,-13.217,-13.129,-13.011,-12.859,
--12.675,-12.459,-12.216,-11.952,-11.672,-11.383,-11.092,-10.804,-10.522,-10.251,-9.989,-9.737,-9.491,-9.247,-9.003,-8.753,
--8.495,-8.227,-7.949,-7.664,-7.374,-7.086,-6.807,-6.545,-6.309,-6.107,-5.945,-5.827,-5.757,-5.734,-5.756,-5.817,
--5.909,-6.024,-6.151,-6.281,-6.401,-6.504,-6.581,-6.625,-6.634,-6.604,-6.537,-6.433,-6.295,-6.129,-5.938,-5.729,
--5.506,-5.275,-5.041,-4.807,-4.579,-4.359,-4.151,-3.956,-3.778,-3.617,-3.475,-3.352,-3.247,-3.159,-3.087,-3.028,
--2.978,-2.933,-2.890,-2.843,-2.789,-2.725,-2.648,-2.558,-2.453,-2.335,-2.207,-2.072,-1.934,-1.796,-1.664,-1.541,
--1.429,-1.330,-1.246,-1.176,-1.117,-1.069,-1.027,-.990,-.956,-.921,-.886,-.850,-.814,-.781,-.753,-.734,
--.727,-.734,-.758,-.798,-.855,-.925,-1.007,-1.096,-1.186,-1.273,-1.350,-1.413,-1.458,-1.483,-1.488,-1.471,
--1.435,-1.382,-1.316,-1.241,-1.159,-1.074,-.988,-.902,-.817,-.731,-.643,-.552,-.456,-.354,-.247,-.134,
--.019,.095,.201,.295,.370,.419,.437,.419,.363,.268,.136,-.027,-.216,-.421,-.633,-1.250,
--1.443,-1.619,-1.767,-1.879,-1.947,-1.968,-1.941,-1.867,-1.752,-1.602,-1.425,-1.229,-1.024,-.819,-.621,-.436,
--.269,-.119,.011,.126,.229,.323,.416,.511,.614,.729,.858,1.003,1.162,1.333,1.514,1.701,
-1.888,2.071,2.244,2.405,2.551,2.678,2.787,2.878,2.952,3.013,3.063,3.106,3.145,3.185,3.228,3.277,
-3.333,3.397,3.469,3.549,3.636,3.728,3.823,3.922,4.022,4.123,4.225,4.328,4.434,4.544,4.661,4.785,
-4.920,5.067,5.226,5.400,5.586,5.785,5.993,6.208,6.427,6.645,6.859,7.063,7.253,7.428,7.584,7.720,
-7.837,7.935,8.017,8.087,8.148,8.206,8.265,8.330,8.405,8.492,8.594,8.712,8.843,8.986,9.137,9.293,
-9.447,9.596,9.735,9.859,9.965,10.052,10.119,10.167,10.197,10.214,10.221,10.222,10.221,10.224,10.232,10.248,
-10.273,10.306,10.346,10.391,10.437,10.479,10.514,10.539,10.549,10.542,10.517,10.473,10.411,10.333,10.241,10.139,
-10.031,9.918,9.806,9.697,9.593,9.496,9.407,9.326,9.254,9.188,9.130,9.078,9.032,8.991,8.955,8.925,
-8.901,8.883,8.871,8.868,8.871,8.882,8.900,8.925,8.955,8.990,9.028,9.068,9.111,9.155,9.199,9.245,
-9.293,9.343,9.395,9.449,9.506,9.565,9.624,9.682,9.736,9.783,9.820,9.844,9.852,9.841,9.810,9.758,
-9.686,9.597,9.493,9.380,9.261,9.144,9.033,8.933,8.850,8.787,8.745,8.726,8.727,8.746,8.779,8.822,
-8.868,8.913,8.953,8.981,8.998,9.000,8.988,8.965,8.933,8.898,8.864,8.838,8.824,8.828,8.854,8.903,
-8.978,9.076,9.196,9.334,9.483,9.639,9.793,9.939,10.070,10.180,10.263,10.316,10.336,10.323,10.277,10.200,
-10.097,9.971,9.829,9.677,9.520,9.366,9.221,9.090,8.977,8.886,8.819,8.777,8.758,8.763,8.786,8.824,
-8.872,8.924,8.973,9.015,9.043,9.052,9.038,9.000,8.934,8.843,8.727,8.589,8.435,8.269,8.096,7.923,
-7.755,7.596,7.450,7.319,7.203,7.101,7.010,6.928,6.848,6.765,6.673,6.568,6.445,6.302,6.136,5.948,
-5.740,5.517,5.284,5.047,4.815,4.596,4.395,4.221,4.078,3.969,3.895,3.855,3.847,3.865,3.903,3.953,
-4.009,4.061,4.104,4.132,4.140,4.127,4.093,4.040,3.973,3.896,3.817,3.742,3.678,3.629,3.602,3.598,
-3.616,3.657,3.714,3.783,3.855,3.923,3.978,4.011,4.016,3.986,3.919,3.812,3.668,3.490,3.282,3.054,
-2.811,2.564,2.320,2.085,1.867,1.667,1.488,1.328,1.184,1.052,.926,.798,.662,.512,.342,.150,
--.065,-.304,-.561,-.833,-1.111,-1.388,-1.656,-1.905,-2.127,-2.317,-2.470,-2.583,-2.655,-2.688,-2.687,-2.656,
--2.604,-2.537,-2.465,-2.395,-2.335,-2.293,-2.274,-2.281,-2.320,-2.390,-2.493,-2.629,-2.795,-2.991,-3.213,-3.460,
--3.728,-4.015,-4.319,-4.636,-4.965,-5.302,-5.645,-5.992,-6.341,-6.690,-7.036,-7.379,-7.718,-8.051,-8.380,-8.705,
--9.027,-9.349,-9.672,-9.998,-10.330,-10.670,-11.019,-11.378,-11.747,-12.125,-12.511,-12.904,-13.300,-13.697,-14.093,-14.485,
--14.871,-15.251,-15.624,-15.990,-16.352,-16.711,-17.069,-17.429,-17.793,-18.162,-18.535,-18.912,-19.290,-19.664,-20.029,-20.377,
--20.702,-20.996,-21.250,-21.459,-21.618,-21.724,-21.777,-21.780,-21.739,-21.661,-21.559,-21.443,-21.329,-21.229,-21.158,-21.127,
--21.147,-21.223,-21.361,-21.561,-21.819,-22.131,-22.487,-22.878,-23.293,-23.719,-24.147,-24.567,-24.971,-25.355,-25.717,-26.058,
--26.380,-26.689,-26.990,-27.289,-27.595,-27.911,-28.243,-28.593,-28.960,-29.344,-29.740,-30.144,-30.549,-30.948,-31.336,-31.707,
--32.058,-32.387,-32.694,-32.980,-33.250,-33.508,-33.760,-34.013,-34.271,-34.539,-34.820,-35.115,-35.422,-35.740,-36.064,-36.389,
--36.709,-37.018,-37.311,-37.585,-37.838,-38.070,-38.284,-38.481,-38.669,-38.854,-39.040,-39.235,-39.443,-39.667,-39.909,-40.165,
--40.434,-40.709,-40.983,-41.248,-41.495,-41.717,-41.907,-42.060,-42.175,-42.252,-42.295,-42.309,-42.303,-42.285,-42.265,-42.254,
--42.260,-42.291,-42.351,-42.443,-42.567,-42.720,-42.899,-43.096,-43.306,-43.521,-43.734,-43.941,-44.137,-44.322,-44.494,-44.657,
--44.815,-44.973,-45.137,-45.313,-45.506,-45.720,-45.957,-46.218,-46.502,-46.805,-47.121,-47.445,-47.769,-48.086,-48.390,-48.673,
--48.933,-49.167,-49.373,-49.554,-49.712,-49.852,-49.980,-50.101,-50.223,-50.350,-50.487,-50.638,-50.805,-50.988,-51.187,-51.400,
--51.622,-51.851,-52.082,-52.311,-52.536,-52.753,-52.961,-53.160,-53.351,-53.535,-53.716,-53.895,-54.076,-54.263,-54.456,-54.658,
--54.869,-55.088,-55.311,-55.537,-55.761,-55.978,-56.182,-56.370,-56.536,-56.678,-56.792,-56.878,-56.936,-56.969,-56.979,-56.970,
--56.947,-56.915,-56.879,-56.843,-56.811,-56.783,-56.762,-56.747,-56.736,-56.728,-56.717,-56.702,-56.677,-56.641,-56.590,-56.523,
--56.438,-56.336,-56.218,-56.086,-55.942,-55.788,-55.627,-55.458,-55.285,-55.106,-54.920,-54.728,-54.526,-54.313,-54.089,-53.852,
--53.604,-53.346,-53.083,-52.820,-52.565,-52.325,-52.111,-51.930,-51.792,-51.704,-51.671,-51.696,-51.780,-51.920,-52.110,-52.342,
--52.604,-52.885,-53.172,-53.452,-53.711,-53.940,-54.130,-54.275,-54.372,-54.420,-54.423,-54.386,-54.315,-54.217,-54.103,-53.980,
--53.857,-53.740,-53.636,-53.547,-53.477,-53.428,-53.398,-53.388,-53.396,-53.421,-53.461,-53.515,-53.582,-53.660,-53.751,-53.851,
--53.961,-54.080,-54.205,-54.334,-54.464,-54.590,-54.709,-54.817,-54.909,-54.982,-55.032,-55.057,-55.056,-55.030,-54.981,-54.911,
--54.824,-54.726,-54.621,-54.515,-54.414,-54.321,-54.241,-54.178,-54.133,-54.108,-54.103,-54.119,-54.155,-54.209,-54.281,-54.369,
--54.471,-54.587,-54.714,-54.852,-54.998,-55.151,-55.310,-55.472,-55.634,-55.795,-55.953,-56.104,-56.246,-56.379,-56.500,-56.610,
--56.708,-56.796,-56.875,-56.946,-57.012,-57.075,-57.137,-57.200,-57.264,-57.329,-57.395,-57.460,-57.523,-57.579,-57.626,-57.661,
--57.682,-57.685,-57.670,-57.635,-57.583,-57.514,-57.432,-57.340,-57.243,-57.146,-57.053,-56.969,-56.899,-56.846,-56.811,-56.797,
--56.804,-56.829,-56.872,-56.928,-56.995,-57.067,-57.140,-57.209,-57.270,-57.319,-57.353,-57.369,-57.367,-57.345,-57.303,-57.244,
--57.169,-57.081,-56.984,-56.882,-56.779,-56.679,-56.586,-56.504,-56.436,-56.384,-56.349,-56.332,-56.332,-56.348,-56.376,-56.415,
--56.458,-56.504,-56.546,-56.582,-56.606,-56.615,-56.608,-56.582,-56.537,-56.473,-56.391,-56.292,-56.180,-56.057,-55.925,-55.789,
--55.649,-55.508,-55.367,-55.229,-55.092,-54.957,-54.824,-54.693,-54.562,-54.433,-54.305,-54.179,-54.056,-53.938,-53.828,-53.727,
--53.640,-53.567,-53.513,-53.478,-53.464,-53.470,-53.495,-53.538,-53.594,-53.659,-53.729,-53.797,-53.858,-53.906,-53.936,-53.944,
--53.926,-53.881,-53.809,-53.711,-53.589,-53.447,-53.291,-53.126,-52.957,-52.792,-52.634,-52.490,-52.361,-52.251,-52.160,-52.087,
--52.029,-51.983,-51.946,-51.910,-51.873,-51.827,-51.770,-51.699,-51.610,-51.504,-51.381,-51.246,-51.100,-50.951,-50.803,-50.664,
--50.538,-50.433,-50.352,-50.299,-50.274,-50.278,-50.307,-50.356,-50.418,-50.487,-50.551,-50.601,-50.628,-50.622,-50.576,-50.482,
--50.337,-50.139,-49.890,-49.591,-49.250,-48.875,-48.475,-48.062,-47.647,-47.242,-46.858,-46.503,-46.187,-45.914,-45.687,-45.506,
--45.371,-45.276,-45.215,-45.180,-45.163,-45.155,-45.147,-45.131,-45.098,-45.044,-44.964,-44.856,-44.717,-44.549,-44.354,-44.132,
--43.888,-43.624,-43.344,-43.051,-42.748,-42.436,-42.119,-41.797,-41.472,-41.148,-40.825,-40.506,-40.195,-39.896,-39.614,-39.351,
--39.115,-38.910,-38.739,-38.606,-38.513,-38.460,-38.448,-38.472,-38.528,-38.611,-38.712,-38.824,-38.939,-39.047,-39.140,-39.213,
--39.260,-39.277,-39.262,-39.216,-39.139,-39.035,-38.907,-38.762,-38.602,-38.434,-38.261,-38.087,-37.914,-37.743,-37.575,-37.411,
--37.249,-37.089,-36.930,-36.772,-36.615,-36.461,-36.311,-36.168,-36.035,-35.915,-35.811,-35.726,-35.661,-35.616,-35.591,-35.583,
--35.589,-35.604,-35.623,-35.639,-35.646,-35.640,-35.615,-35.570,-35.501,-35.410,-35.300,-35.174,-35.036,-34.895,-34.756,-34.625,
--34.509,-34.412,-34.339,-34.291,-34.267,-34.268,-34.288,-34.326,-34.375,-34.431,-34.488,-34.542,-34.589,-34.626,-34.651,-34.662,
--34.660,-34.645,-34.616,-34.576,-34.523,-34.457,-34.379,-34.288,-34.181,-34.057,-33.916,-33.757,-33.580,-33.386,-33.179,-32.960,
--32.737,-32.514,-32.297,-32.094,-31.909,-31.747,-31.612,-31.505,-31.426,-31.370,-31.333,-31.309,-31.288,-31.264,-31.226,-31.167,
--31.080,-30.961,-30.808,-30.621,-30.401,-30.153,-29.883,-29.597,-29.302,-29.004,-28.709,-28.418,-28.134,-27.855,-27.578,-27.298,
--27.010,-26.707,-26.384,-26.037,-25.664,-25.263,-24.839,-24.397,-23.945,-23.493,-23.050,-22.629,-22.239,-21.887,-21.579,-21.315,
--21.092,-20.905,-20.741,-20.589,-20.433,-20.258,-20.049,-19.793,-19.483,-19.114,-18.688,-18.213,-17.702,-17.173,-16.649,-16.155,
--15.717,-15.362,-15.112,-14.986,-14.997,-15.153,-15.452,-15.886,-16.439,-17.090,-17.813,-18.577,-19.350,-20.101,-20.800,-21.422,
--21.944,-22.350,-22.633,-22.788,-22.819,-22.735,-22.549,-22.278,-21.942,-21.561,-21.155,-20.744,-20.344,-19.972,-19.638,-19.351,
--19.118,-18.942,-18.822,-18.759,-18.748,-18.785,-18.864,-18.979,-19.124,-19.290,-19.470,-19.657,-19.841,-20.016,-20.172,-20.304,
--20.404,-20.466,-20.487,-20.464,-20.396,-20.285,-20.135,-19.951,-19.740,-19.512,-19.275,-19.041,-18.819,-18.616,-18.442,-18.301,
--18.195,-18.126,-18.091,-18.086,-18.104,-18.137,-18.178,-18.216,-18.244,-18.254,-18.242,-18.203,-18.136,-18.041,-17.923,-17.785,
--17.634,-17.476,-17.318,-17.168,-17.030,-16.910,-16.810,-16.733,-16.679,-16.646,-16.630,-16.630,-16.640,-16.656,-16.674,-16.689,
--16.700,-16.702,-16.696,-16.680,-16.653,-16.616,-16.570,-16.516,-16.455,-16.388,-16.315,-16.238,-16.157,-16.073,-15.988,-15.902,
--15.817,-15.735,-15.657,-15.585,-15.521,-15.466,-15.422,-15.389,-15.366,-15.353,-15.348,-15.348,-15.349,-15.349,-15.344,-15.330,
--15.306,-15.269,-15.220,-15.159,-15.088,-15.011,-14.933,-14.857,-14.789,-14.733,-14.695,-14.675,-14.677,-14.699,-14.740,-14.795,
--14.859,-14.927,-14.992,-15.047,-15.085,-15.103,-15.095,-15.061,-15.001,-14.916,-14.811,-14.691,-14.561,-14.428,-14.300,-14.182,
--14.079,-13.996,-13.933,-13.893,-13.873,-13.873,-13.888,-13.916,-13.953,-13.994,-14.038,-14.082,-14.125,-14.166,-14.204,-14.242,
--14.279,-14.317,-14.355,-14.394,-14.432,-14.469,-14.501,-14.526,-14.542,-14.546,-14.535,-14.508,-14.465,-14.407,-14.337,-14.256,
--14.170,-14.082,-13.996,-13.917,-13.847,-13.788,-13.738,-13.696,-13.657,-13.615,-13.565,-13.499,-13.409,-13.290,-13.134,-12.941,
--12.708,-12.436,-12.131,-11.797,-11.444,-11.080,-10.716,-10.362,-10.025,-9.715,-9.435,-9.189,-8.977,-8.797,-8.646,-8.517,
--8.404,-8.300,-8.199,-8.096,-7.986,-7.868,-7.743,-7.613,-7.481,-7.353,-7.236,-7.135,-7.057,-7.006,-6.986,-6.996,
--7.037,-7.106,-7.197,-7.302,-7.416,-7.528,-7.631,-7.715,-7.774,-7.802,-7.795,-7.750,-7.668,-7.550,-7.399,-7.220,
--7.018,-6.799,-6.570,-6.338,-6.107,-5.883,-5.670,-5.471,-5.289,-5.124,-4.977,-4.846,-4.731,-4.629,-4.537,-4.453,
--4.374,-4.296,-4.218,-4.137,-4.053,-3.963,-3.868,-3.769,-3.666,-3.561,-3.455,-3.352,-3.252,-3.158,-3.070,-2.991,
--2.919,-2.854,-2.796,-2.743,-2.694,-2.645,-2.597,-2.546,-2.492,-2.436,-2.377,-2.317,-2.259,-2.203,-2.154,-2.114,
--2.085,-2.069,-2.067,-2.079,-2.104,-2.140,-2.183,-2.229,-2.276,-2.317,-2.351,-2.372,-2.380,-2.373,-2.351,-2.316,
--2.269,-2.213,-2.151,-2.086,-2.020,-1.957,-1.895,-1.835,-1.777,-1.716,-1.651,-1.579,-1.497,-1.403,-1.295,-1.175,
--1.043,-.905,-.765,-.630,-.507,-.404,-.329,-.288,-.286,-.325,-.405,-.525,-.677,-.855,-1.050,-1.250,
--2.015,-2.187,-2.339,-2.460,-2.543,-2.582,-2.572,-2.515,-2.412,-2.269,-2.092,-1.891,-1.675,-1.452,-1.233,-1.025,
--.833,-.661,-.511,-.382,-.272,-.176,-.089,-.006,.079,.171,.275,.392,.525,.672,.831,1.000,
-1.173,1.347,1.516,1.676,1.823,1.954,2.068,2.165,2.245,2.312,2.368,2.417,2.463,2.510,2.563,2.623,
-2.693,2.775,2.868,2.971,3.083,3.202,3.326,3.451,3.576,3.699,3.818,3.934,4.046,4.156,4.265,4.374,
-4.487,4.604,4.728,4.859,4.998,5.145,5.299,5.457,5.617,5.775,5.930,6.077,6.213,6.337,6.447,6.543,
-6.624,6.694,6.754,6.808,6.861,6.916,6.977,7.048,7.133,7.233,7.348,7.478,7.622,7.776,7.935,8.095,
-8.251,8.398,8.530,8.644,8.736,8.805,8.851,8.875,8.879,8.867,8.844,8.815,8.784,8.757,8.737,8.728,
-8.732,8.749,8.778,8.817,8.864,8.914,8.964,9.008,9.044,9.067,9.074,9.066,9.040,8.998,8.941,8.873,
-8.796,8.713,8.629,8.548,8.471,8.401,8.341,8.292,8.253,8.225,8.206,8.196,8.194,8.197,8.204,8.215,
-8.228,8.243,8.258,8.275,8.291,8.307,8.324,8.341,8.357,8.373,8.390,8.406,8.422,8.439,8.457,8.477,
-8.499,8.526,8.558,8.596,8.640,8.691,8.749,8.812,8.879,8.949,9.018,9.083,9.141,9.190,9.225,9.246,
-9.249,9.235,9.204,9.158,9.098,9.027,8.950,8.872,8.795,8.725,8.664,8.616,8.582,8.563,8.558,8.566,
-8.585,8.612,8.644,8.677,8.709,8.738,8.762,8.780,8.794,8.805,8.815,8.828,8.847,8.876,8.918,8.975,
-9.051,9.144,9.256,9.384,9.524,9.674,9.828,9.980,10.125,10.256,10.368,10.456,10.517,10.547,10.546,10.513,
-10.450,10.359,10.245,10.112,9.965,9.810,9.652,9.497,9.350,9.215,9.095,8.991,8.904,8.835,8.781,8.740,
-8.709,8.683,8.658,8.630,8.595,8.548,8.487,8.410,8.316,8.204,8.075,7.932,7.777,7.615,7.449,7.283,
-7.123,6.971,6.830,6.704,6.591,6.494,6.409,6.336,6.270,6.209,6.147,6.080,6.006,5.919,5.819,5.704,
-5.574,5.430,5.275,5.113,4.947,4.784,4.628,4.484,4.356,4.248,4.162,4.100,4.060,4.042,4.042,4.056,
-4.081,4.110,4.139,4.165,4.182,4.189,4.185,4.169,4.142,4.107,4.068,4.027,3.989,3.957,3.934,3.924,
-3.925,3.939,3.962,3.992,4.024,4.053,4.074,4.080,4.066,4.028,3.963,3.870,3.748,3.599,3.428,3.237,
-3.035,2.826,2.618,2.416,2.226,2.051,1.893,1.753,1.628,1.517,1.413,1.312,1.208,1.094,.964,.815,
-.644,.448,.230,-.009,-.264,-.529,-.797,-1.060,-1.311,-1.541,-1.746,-1.919,-2.057,-2.161,-2.229,-2.264,
--2.272,-2.258,-2.229,-2.192,-2.155,-2.126,-2.112,-2.118,-2.149,-2.210,-2.302,-2.427,-2.584,-2.773,-2.992,-3.237,
--3.508,-3.799,-4.110,-4.435,-4.773,-5.121,-5.476,-5.836,-6.199,-6.563,-6.926,-7.288,-7.647,-8.002,-8.353,-8.698,
--9.039,-9.374,-9.705,-10.032,-10.354,-10.674,-10.991,-11.305,-11.617,-11.927,-12.236,-12.542,-12.846,-13.148,-13.449,-13.748,
--14.048,-14.349,-14.654,-14.965,-15.284,-15.616,-15.961,-16.323,-16.704,-17.103,-17.521,-17.955,-18.401,-18.855,-19.310,-19.759,
--20.192,-20.601,-20.977,-21.312,-21.601,-21.838,-22.022,-22.152,-22.232,-22.267,-22.266,-22.239,-22.198,-22.154,-22.121,-22.109,
--22.130,-22.190,-22.296,-22.449,-22.650,-22.894,-23.176,-23.489,-23.823,-24.169,-24.518,-24.861,-25.191,-25.505,-25.800,-26.077,
--26.337,-26.586,-26.829,-27.073,-27.325,-27.591,-27.876,-28.184,-28.515,-28.870,-29.245,-29.635,-30.034,-30.436,-30.832,-31.216,
--31.582,-31.926,-32.245,-32.539,-32.809,-33.059,-33.295,-33.521,-33.744,-33.971,-34.206,-34.454,-34.718,-34.998,-35.293,-35.599,
--35.914,-36.232,-36.547,-36.855,-37.151,-37.431,-37.695,-37.941,-38.171,-38.387,-38.594,-38.795,-38.994,-39.196,-39.404,-39.619,
--39.842,-40.071,-40.304,-40.537,-40.764,-40.980,-41.181,-41.362,-41.519,-41.651,-41.758,-41.841,-41.903,-41.951,-41.989,-42.024,
--42.063,-42.112,-42.176,-42.258,-42.362,-42.486,-42.631,-42.792,-42.966,-43.150,-43.337,-43.524,-43.707,-43.885,-44.057,-44.223,
--44.385,-44.547,-44.714,-44.890,-45.080,-45.288,-45.517,-45.769,-46.044,-46.340,-46.655,-46.983,-47.319,-47.656,-47.986,-48.304,
--48.603,-48.879,-49.129,-49.350,-49.544,-49.712,-49.858,-49.986,-50.102,-50.212,-50.322,-50.437,-50.561,-50.697,-50.849,-51.017,
--51.200,-51.397,-51.606,-51.824,-52.048,-52.274,-52.501,-52.726,-52.947,-53.163,-53.375,-53.582,-53.785,-53.986,-54.184,-54.380,
--54.576,-54.770,-54.962,-55.151,-55.335,-55.512,-55.680,-55.837,-55.980,-56.108,-56.219,-56.315,-56.393,-56.457,-56.505,-56.542,
--56.567,-56.584,-56.593,-56.597,-56.596,-56.591,-56.581,-56.565,-56.544,-56.514,-56.476,-56.428,-56.370,-56.302,-56.223,-56.136,
--56.042,-55.943,-55.841,-55.739,-55.638,-55.538,-55.442,-55.346,-55.250,-55.150,-55.042,-54.922,-54.785,-54.628,-54.448,-54.242,
--54.010,-53.756,-53.484,-53.200,-52.914,-52.636,-52.378,-52.152,-51.969,-51.840,-51.773,-51.773,-51.843,-51.982,-52.183,-52.440,
--52.740,-53.069,-53.412,-53.752,-54.074,-54.363,-54.607,-54.795,-54.922,-54.985,-54.985,-54.926,-54.815,-54.664,-54.481,-54.281,
--54.074,-53.873,-53.687,-53.524,-53.389,-53.288,-53.219,-53.184,-53.178,-53.199,-53.241,-53.300,-53.371,-53.449,-53.529,-53.610,
--53.689,-53.764,-53.834,-53.900,-53.962,-54.019,-54.071,-54.120,-54.163,-54.201,-54.233,-54.257,-54.274,-54.281,-54.278,-54.264,
--54.241,-54.208,-54.167,-54.120,-54.068,-54.014,-53.960,-53.911,-53.867,-53.833,-53.809,-53.799,-53.805,-53.826,-53.865,-53.921,
--53.994,-54.083,-54.188,-54.306,-54.436,-54.576,-54.723,-54.874,-55.028,-55.180,-55.331,-55.476,-55.614,-55.744,-55.866,-55.978,
--56.082,-56.178,-56.266,-56.349,-56.428,-56.503,-56.576,-56.647,-56.717,-56.786,-56.852,-56.914,-56.970,-57.019,-57.059,-57.086,
--57.101,-57.100,-57.085,-57.054,-57.009,-56.951,-56.884,-56.809,-56.731,-56.652,-56.578,-56.511,-56.453,-56.409,-56.379,-56.365,
--56.366,-56.382,-56.411,-56.451,-56.500,-56.554,-56.610,-56.665,-56.715,-56.758,-56.791,-56.812,-56.820,-56.814,-56.793,-56.759,
--56.712,-56.654,-56.587,-56.514,-56.436,-56.358,-56.283,-56.212,-56.149,-56.096,-56.055,-56.027,-56.011,-56.007,-56.015,-56.031,
--56.053,-56.078,-56.102,-56.121,-56.132,-56.130,-56.114,-56.080,-56.028,-55.957,-55.867,-55.759,-55.636,-55.499,-55.353,-55.201,
--55.045,-54.889,-54.735,-54.586,-54.444,-54.308,-54.180,-54.059,-53.945,-53.838,-53.737,-53.641,-53.552,-53.470,-53.395,-53.330,
--53.276,-53.235,-53.210,-53.202,-53.213,-53.243,-53.293,-53.359,-53.441,-53.534,-53.633,-53.733,-53.828,-53.911,-53.976,-54.017,
--54.029,-54.010,-53.958,-53.872,-53.753,-53.606,-53.435,-53.245,-53.045,-52.841,-52.641,-52.450,-52.276,-52.122,-51.991,-51.884,
--51.800,-51.737,-51.691,-51.657,-51.629,-51.601,-51.568,-51.525,-51.468,-51.394,-51.304,-51.199,-51.081,-50.956,-50.830,-50.710,
--50.602,-50.513,-50.450,-50.417,-50.417,-50.451,-50.517,-50.613,-50.731,-50.864,-51.002,-51.136,-51.253,-51.343,-51.396,-51.403,
--51.359,-51.258,-51.100,-50.885,-50.617,-50.304,-49.952,-49.573,-49.176,-48.775,-48.379,-47.999,-47.644,-47.321,-47.034,-46.787,
--46.578,-46.407,-46.270,-46.160,-46.072,-45.998,-45.930,-45.863,-45.788,-45.702,-45.599,-45.478,-45.336,-45.172,-44.989,-44.787,
--44.568,-44.334,-44.088,-43.832,-43.568,-43.298,-43.022,-42.742,-42.460,-42.176,-41.893,-41.611,-41.333,-41.062,-40.801,-40.554,
--40.324,-40.116,-39.932,-39.776,-39.649,-39.553,-39.486,-39.447,-39.434,-39.442,-39.465,-39.499,-39.537,-39.573,-39.601,-39.616,
--39.614,-39.592,-39.549,-39.484,-39.398,-39.294,-39.172,-39.037,-38.892,-38.739,-38.580,-38.417,-38.253,-38.086,-37.917,-37.746,
--37.572,-37.395,-37.213,-37.029,-36.842,-36.654,-36.469,-36.290,-36.119,-35.961,-35.820,-35.698,-35.598,-35.520,-35.465,-35.431,
--35.415,-35.412,-35.418,-35.426,-35.430,-35.424,-35.404,-35.366,-35.306,-35.225,-35.122,-35.001,-34.864,-34.717,-34.566,-34.417,
--34.276,-34.148,-34.038,-33.949,-33.883,-33.840,-33.820,-33.821,-33.840,-33.873,-33.916,-33.965,-34.017,-34.067,-34.112,-34.150,
--34.179,-34.197,-34.203,-34.195,-34.173,-34.135,-34.080,-34.007,-33.915,-33.803,-33.671,-33.519,-33.349,-33.162,-32.962,-32.753,
--32.539,-32.327,-32.122,-31.929,-31.753,-31.597,-31.464,-31.354,-31.266,-31.195,-31.138,-31.087,-31.035,-30.975,-30.900,-30.803,
--30.679,-30.526,-30.343,-30.132,-29.896,-29.641,-29.374,-29.100,-28.828,-28.563,-28.309,-28.068,-27.841,-27.624,-27.413,-27.201,
--26.980,-26.741,-26.476,-26.180,-25.847,-25.477,-25.072,-24.635,-24.177,-23.706,-23.237,-22.781,-22.350,-21.957,-21.607,-21.304,
--21.049,-20.836,-20.654,-20.491,-20.330,-20.152,-19.940,-19.677,-19.350,-18.951,-18.478,-17.934,-17.331,-16.688,-16.028,-15.381,
--14.777,-14.250,-13.831,-13.548,-13.423,-13.474,-13.707,-14.120,-14.703,-15.437,-16.294,-17.242,-18.243,-19.257,-20.246,-21.171,
--22.002,-22.710,-23.276,-23.688,-23.943,-24.045,-24.006,-23.841,-23.573,-23.227,-22.828,-22.403,-21.973,-21.562,-21.187,-20.860,
--20.591,-20.385,-20.242,-20.160,-20.134,-20.157,-20.221,-20.316,-20.435,-20.568,-20.709,-20.851,-20.987,-21.113,-21.224,-21.317,
--21.388,-21.434,-21.455,-21.446,-21.408,-21.339,-21.241,-21.114,-20.960,-20.785,-20.591,-20.384,-20.171,-19.959,-19.752,-19.559,
--19.383,-19.229,-19.100,-18.997,-18.919,-18.864,-18.829,-18.809,-18.797,-18.788,-18.776,-18.755,-18.720,-18.668,-18.596,-18.504,
--18.392,-18.262,-18.119,-17.966,-17.808,-17.650,-17.498,-17.357,-17.230,-17.120,-17.030,-16.961,-16.912,-16.883,-16.871,-16.874,
--16.888,-16.910,-16.935,-16.961,-16.983,-16.998,-17.004,-16.998,-16.978,-16.944,-16.897,-16.836,-16.763,-16.681,-16.593,-16.501,
--16.409,-16.321,-16.240,-16.169,-16.111,-16.068,-16.040,-16.027,-16.028,-16.041,-16.062,-16.088,-16.113,-16.134,-16.147,-16.148,
--16.134,-16.103,-16.057,-15.996,-15.923,-15.841,-15.757,-15.674,-15.599,-15.537,-15.491,-15.466,-15.461,-15.478,-15.513,-15.564,
--15.624,-15.686,-15.745,-15.791,-15.820,-15.824,-15.800,-15.745,-15.658,-15.541,-15.399,-15.235,-15.058,-14.874,-14.692,-14.519,
--14.363,-14.229,-14.122,-14.044,-13.997,-13.980,-13.990,-14.024,-14.079,-14.150,-14.231,-14.320,-14.411,-14.502,-14.590,-14.673,
--14.750,-14.820,-14.883,-14.937,-14.983,-15.019,-15.044,-15.057,-15.058,-15.044,-15.016,-14.974,-14.918,-14.850,-14.772,-14.687,
--14.598,-14.508,-14.422,-14.342,-14.269,-14.205,-14.147,-14.093,-14.040,-13.980,-13.907,-13.815,-13.694,-13.539,-13.344,-13.106,
--12.824,-12.499,-12.135,-11.741,-11.325,-10.899,-10.476,-10.069,-9.691,-9.352,-9.064,-8.831,-8.658,-8.544,-8.486,-8.478,
--8.512,-8.577,-8.661,-8.753,-8.841,-8.917,-8.972,-9.002,-9.003,-8.976,-8.925,-8.853,-8.767,-8.674,-8.582,-8.497,
--8.425,-8.371,-8.337,-8.323,-8.329,-8.350,-8.383,-8.421,-8.457,-8.487,-8.503,-8.500,-8.476,-8.427,-8.353,-8.255,
--8.134,-7.995,-7.841,-7.678,-7.510,-7.342,-7.178,-7.023,-6.879,-6.746,-6.627,-6.520,-6.425,-6.338,-6.259,-6.183,
--6.110,-6.035,-5.958,-5.877,-5.792,-5.702,-5.607,-5.510,-5.411,-5.313,-5.216,-5.123,-5.035,-4.954,-4.879,-4.811,
--4.749,-4.692,-4.639,-4.588,-4.538,-4.486,-4.432,-4.376,-4.316,-4.254,-4.190,-4.126,-4.064,-4.006,-3.953,-3.909,
--3.873,-3.847,-3.830,-3.821,-3.818,-3.819,-3.820,-3.819,-3.812,-3.796,-3.769,-3.729,-3.676,-3.611,-3.535,-3.452,
--3.363,-3.272,-3.184,-3.101,-3.025,-2.958,-2.900,-2.849,-2.803,-2.759,-2.713,-2.659,-2.595,-2.515,-2.419,-2.305,
--2.173,-2.028,-1.874,-1.716,-1.564,-1.424,-1.305,-1.216,-1.162,-1.148,-1.176,-1.245,-1.353,-1.492,-1.656,-1.835,
--2.015,-2.915,-3.080,-3.225,-3.338,-3.412,-3.442,-3.424,-3.358,-3.247,-3.095,-2.910,-2.700,-2.474,-2.242,-2.013,
--1.793,-1.589,-1.405,-1.244,-1.104,-.985,-.882,-.791,-.708,-.626,-.542,-.450,-.349,-.237,-.113,.021,
-.163,.310,.458,.603,.742,.872,.991,1.097,1.192,1.275,1.349,1.417,1.482,1.548,1.618,1.694,
-1.779,1.875,1.981,2.097,2.223,2.355,2.493,2.632,2.770,2.906,3.038,3.163,3.282,3.395,3.503,3.606,
-3.707,3.808,3.909,4.013,4.119,4.229,4.341,4.454,4.567,4.678,4.784,4.883,4.973,5.053,5.122,5.180,
-5.227,5.268,5.303,5.337,5.373,5.416,5.470,5.539,5.623,5.727,5.849,5.988,6.143,6.309,6.482,6.656,
-6.826,6.986,7.129,7.252,7.350,7.422,7.465,7.481,7.472,7.441,7.392,7.332,7.265,7.197,7.134,7.079,
-7.037,7.010,6.997,7.000,7.017,7.045,7.080,7.119,7.158,7.194,7.223,7.242,7.251,7.248,7.233,7.209,
-7.177,7.140,7.100,7.061,7.026,6.997,6.976,6.966,6.966,6.977,6.999,7.031,7.071,7.117,7.169,7.223,
-7.278,7.332,7.384,7.433,7.478,7.517,7.552,7.581,7.604,7.622,7.636,7.645,7.650,7.654,7.656,7.658,
-7.663,7.671,7.684,7.704,7.733,7.771,7.820,7.879,7.947,8.025,8.109,8.198,8.289,8.379,8.464,8.542,
-8.609,8.663,8.702,8.725,8.732,8.724,8.702,8.669,8.627,8.580,8.530,8.483,8.439,8.403,8.375,8.358,
-8.351,8.354,8.367,8.388,8.417,8.450,8.488,8.529,8.572,8.618,8.666,8.718,8.775,8.839,8.911,8.993,
-9.087,9.191,9.308,9.435,9.572,9.716,9.863,10.011,10.154,10.288,10.410,10.513,10.596,10.656,10.689,10.694,
-10.673,10.625,10.552,10.458,10.344,10.215,10.075,9.927,9.775,9.623,9.472,9.326,9.184,9.048,8.918,8.792,
-8.669,8.548,8.426,8.302,8.173,8.038,7.896,7.747,7.589,7.425,7.255,7.081,6.906,6.732,6.561,6.397,
-6.243,6.100,5.970,5.855,5.755,5.670,5.599,5.540,5.490,5.448,5.411,5.374,5.336,5.293,5.243,5.185,
-5.117,5.040,4.954,4.861,4.761,4.658,4.555,4.455,4.360,4.273,4.197,4.133,4.082,4.046,4.023,4.012,
-4.013,4.024,4.042,4.066,4.092,4.121,4.149,4.176,4.202,4.225,4.248,4.269,4.290,4.311,4.333,4.355,
-4.378,4.399,4.418,4.433,4.441,4.438,4.423,4.393,4.344,4.276,4.186,4.076,3.946,3.798,3.634,3.459,
-3.278,3.093,2.911,2.736,2.570,2.417,2.278,2.153,2.041,1.939,1.845,1.752,1.657,1.554,1.439,1.307,
-1.155,.981,.785,.567,.331,.081,-.178,-.441,-.700,-.949,-1.182,-1.393,-1.578,-1.734,-1.860,-1.957,
--2.026,-2.070,-2.094,-2.103,-2.105,-2.104,-2.108,-2.123,-2.154,-2.205,-2.281,-2.384,-2.516,-2.677,-2.867,-3.086,
--3.332,-3.602,-3.896,-4.210,-4.542,-4.890,-5.250,-5.621,-6.001,-6.386,-6.775,-7.166,-7.556,-7.944,-8.327,-8.704,
--9.072,-9.431,-9.779,-10.115,-10.438,-10.747,-11.042,-11.324,-11.593,-11.849,-12.093,-12.327,-12.552,-12.771,-12.985,-13.198,
--13.412,-13.631,-13.858,-14.098,-14.353,-14.627,-14.923,-15.244,-15.591,-15.966,-16.367,-16.793,-17.242,-17.708,-18.186,-18.669,
--19.150,-19.620,-20.072,-20.498,-20.891,-21.246,-21.560,-21.830,-22.057,-22.243,-22.393,-22.513,-22.611,-22.694,-22.773,-22.855,
--22.948,-23.060,-23.195,-23.355,-23.542,-23.755,-23.990,-24.242,-24.506,-24.776,-25.044,-25.306,-25.556,-25.792,-26.012,-26.217,
--26.410,-26.595,-26.776,-26.961,-27.157,-27.369,-27.602,-27.862,-28.149,-28.465,-28.807,-29.173,-29.555,-29.949,-30.347,-30.741,
--31.124,-31.491,-31.836,-32.157,-32.452,-32.723,-32.973,-33.205,-33.425,-33.639,-33.852,-34.070,-34.298,-34.538,-34.792,-35.061,
--35.343,-35.636,-35.935,-36.238,-36.539,-36.834,-37.119,-37.393,-37.653,-37.899,-38.132,-38.354,-38.567,-38.775,-38.979,-39.183,
--39.389,-39.597,-39.809,-40.023,-40.236,-40.448,-40.654,-40.852,-41.038,-41.209,-41.364,-41.503,-41.624,-41.729,-41.822,-41.903,
--41.978,-42.050,-42.123,-42.199,-42.283,-42.376,-42.480,-42.593,-42.717,-42.849,-42.989,-43.134,-43.284,-43.437,-43.593,-43.752,
--43.915,-44.085,-44.264,-44.454,-44.658,-44.880,-45.121,-45.383,-45.666,-45.968,-46.288,-46.622,-46.966,-47.314,-47.661,-48.001,
--48.327,-48.636,-48.923,-49.185,-49.420,-49.628,-49.810,-49.970,-50.109,-50.234,-50.347,-50.455,-50.562,-50.672,-50.790,-50.918,
--51.058,-51.211,-51.378,-51.557,-51.748,-51.950,-52.159,-52.375,-52.594,-52.815,-53.037,-53.256,-53.473,-53.685,-53.891,-54.092,
--54.285,-54.470,-54.647,-54.813,-54.970,-55.116,-55.251,-55.374,-55.486,-55.587,-55.678,-55.760,-55.833,-55.899,-55.959,-56.013,
--56.062,-56.106,-56.146,-56.179,-56.207,-56.226,-56.235,-56.233,-56.218,-56.190,-56.147,-56.089,-56.019,-55.937,-55.847,-55.752,
--55.656,-55.562,-55.474,-55.395,-55.329,-55.274,-55.232,-55.199,-55.173,-55.147,-55.117,-55.074,-55.012,-54.924,-54.805,-54.651,
--54.461,-54.235,-53.977,-53.695,-53.397,-53.096,-52.804,-52.536,-52.306,-52.128,-52.012,-51.968,-52.001,-52.112,-52.299,-52.554,
--52.868,-53.225,-53.610,-54.005,-54.391,-54.751,-55.067,-55.326,-55.518,-55.637,-55.678,-55.645,-55.543,-55.379,-55.167,-54.918,
--54.648,-54.370,-54.098,-53.843,-53.615,-53.421,-53.266,-53.151,-53.075,-53.035,-53.026,-53.043,-53.078,-53.126,-53.181,-53.237,
--53.291,-53.340,-53.383,-53.418,-53.448,-53.472,-53.493,-53.513,-53.534,-53.555,-53.579,-53.604,-53.631,-53.658,-53.683,-53.705,
--53.722,-53.733,-53.735,-53.728,-53.713,-53.690,-53.661,-53.627,-53.592,-53.558,-53.530,-53.509,-53.500,-53.506,-53.527,-53.565,
--53.622,-53.697,-53.790,-53.897,-54.018,-54.150,-54.289,-54.432,-54.578,-54.722,-54.862,-54.997,-55.125,-55.246,-55.359,-55.464,
--55.562,-55.654,-55.741,-55.824,-55.904,-55.981,-56.056,-56.129,-56.198,-56.263,-56.323,-56.376,-56.421,-56.455,-56.479,-56.490,
--56.488,-56.474,-56.448,-56.412,-56.367,-56.315,-56.260,-56.204,-56.149,-56.099,-56.056,-56.020,-55.994,-55.977,-55.971,-55.973,
--55.983,-55.998,-56.018,-56.041,-56.063,-56.084,-56.101,-56.115,-56.124,-56.127,-56.125,-56.119,-56.108,-56.094,-56.078,-56.060,
--56.041,-56.023,-56.005,-55.988,-55.972,-55.958,-55.946,-55.936,-55.927,-55.919,-55.914,-55.909,-55.906,-55.904,-55.902,-55.900,
--55.897,-55.892,-55.883,-55.869,-55.848,-55.819,-55.781,-55.732,-55.671,-55.597,-55.511,-55.413,-55.304,-55.184,-55.055,-54.920,
--54.781,-54.639,-54.497,-54.357,-54.220,-54.087,-53.960,-53.839,-53.726,-53.619,-53.520,-53.428,-53.345,-53.271,-53.207,-53.154,
--53.114,-53.089,-53.080,-53.090,-53.118,-53.165,-53.232,-53.316,-53.416,-53.528,-53.647,-53.769,-53.887,-53.994,-54.084,-54.151,
--54.189,-54.194,-54.162,-54.092,-53.985,-53.841,-53.666,-53.465,-53.243,-53.010,-52.772,-52.539,-52.316,-52.112,-51.930,-51.774,
--51.647,-51.548,-51.474,-51.423,-51.389,-51.366,-51.350,-51.333,-51.310,-51.277,-51.232,-51.172,-51.098,-51.013,-50.920,-50.824,
--50.732,-50.649,-50.582,-50.537,-50.517,-50.528,-50.568,-50.638,-50.735,-50.854,-50.988,-51.128,-51.266,-51.391,-51.494,-51.567,
--51.600,-51.589,-51.529,-51.419,-51.258,-51.049,-50.799,-50.512,-50.198,-49.865,-49.522,-49.179,-48.843,-48.523,-48.224,-47.949,
--47.701,-47.482,-47.288,-47.119,-46.969,-46.835,-46.711,-46.592,-46.474,-46.351,-46.220,-46.079,-45.925,-45.758,-45.577,-45.384,
--45.179,-44.964,-44.741,-44.510,-44.275,-44.036,-43.795,-43.552,-43.309,-43.067,-42.827,-42.591,-42.359,-42.133,-41.916,-41.709,
--41.515,-41.336,-41.173,-41.028,-40.902,-40.795,-40.706,-40.634,-40.576,-40.530,-40.491,-40.457,-40.423,-40.386,-40.341,-40.286,
--40.219,-40.138,-40.043,-39.934,-39.813,-39.681,-39.539,-39.391,-39.239,-39.083,-38.925,-38.767,-38.607,-38.446,-38.283,-38.116,
--37.944,-37.767,-37.582,-37.391,-37.194,-36.991,-36.787,-36.583,-36.383,-36.191,-36.012,-35.847,-35.702,-35.576,-35.473,-35.391,
--35.328,-35.283,-35.251,-35.227,-35.206,-35.184,-35.153,-35.112,-35.054,-34.980,-34.886,-34.774,-34.645,-34.503,-34.352,-34.195,
--34.039,-33.889,-33.749,-33.624,-33.518,-33.432,-33.369,-33.329,-33.311,-33.314,-33.336,-33.373,-33.422,-33.480,-33.543,-33.607,
--33.668,-33.723,-33.768,-33.801,-33.817,-33.814,-33.789,-33.741,-33.669,-33.571,-33.447,-33.300,-33.132,-32.944,-32.743,-32.532,
--32.317,-32.104,-31.898,-31.705,-31.529,-31.373,-31.238,-31.123,-31.028,-30.947,-30.875,-30.807,-30.735,-30.653,-30.553,-30.430,
--30.281,-30.104,-29.899,-29.669,-29.418,-29.153,-28.880,-28.607,-28.342,-28.090,-27.856,-27.642,-27.448,-27.270,-27.104,-26.942,
--26.774,-26.592,-26.385,-26.145,-25.868,-25.548,-25.187,-24.788,-24.357,-23.905,-23.444,-22.987,-22.547,-22.135,-21.763,-21.435,
--21.154,-20.916,-20.713,-20.532,-20.358,-20.171,-19.953,-19.682,-19.344,-18.925,-18.419,-17.826,-17.154,-16.417,-15.639,-14.848,
--14.080,-13.371,-12.758,-12.278,-11.964,-11.841,-11.927,-12.230,-12.750,-13.474,-14.379,-15.435,-16.604,-17.841,-19.101,-20.338,
--21.506,-22.567,-23.486,-24.240,-24.811,-25.193,-25.389,-25.409,-25.273,-25.005,-24.634,-24.191,-23.707,-23.211,-22.732,-22.291,
--21.907,-21.592,-21.354,-21.195,-21.112,-21.099,-21.147,-21.245,-21.381,-21.542,-21.717,-21.896,-22.069,-22.229,-22.370,-22.488,
--22.579,-22.641,-22.674,-22.676,-22.648,-22.590,-22.503,-22.386,-22.241,-22.071,-21.876,-21.660,-21.427,-21.182,-20.928,-20.672,
--20.419,-20.175,-19.945,-19.735,-19.547,-19.385,-19.250,-19.141,-19.058,-18.997,-18.954,-18.924,-18.903,-18.883,-18.861,-18.829,
--18.786,-18.727,-18.651,-18.557,-18.446,-18.321,-18.185,-18.041,-17.896,-17.753,-17.617,-17.494,-17.387,-17.300,-17.233,-17.189,
--17.166,-17.163,-17.177,-17.205,-17.242,-17.284,-17.325,-17.362,-17.390,-17.405,-17.405,-17.389,-17.356,-17.306,-17.243,-17.168,
--17.086,-17.001,-16.918,-16.840,-16.773,-16.718,-16.678,-16.655,-16.647,-16.654,-16.674,-16.702,-16.734,-16.766,-16.794,-16.812,
--16.819,-16.810,-16.785,-16.745,-16.691,-16.625,-16.552,-16.477,-16.405,-16.340,-16.287,-16.250,-16.231,-16.230,-16.247,-16.279,
--16.322,-16.371,-16.418,-16.458,-16.483,-16.488,-16.467,-16.416,-16.334,-16.220,-16.076,-15.906,-15.716,-15.511,-15.301,-15.091,
--14.891,-14.707,-14.545,-14.412,-14.309,-14.239,-14.202,-14.197,-14.222,-14.273,-14.345,-14.436,-14.539,-14.650,-14.765,-14.879,
--14.990,-15.094,-15.189,-15.272,-15.342,-15.398,-15.437,-15.460,-15.466,-15.455,-15.427,-15.384,-15.327,-15.259,-15.182,-15.099,
--15.014,-14.930,-14.850,-14.776,-14.710,-14.650,-14.596,-14.545,-14.492,-14.432,-14.357,-14.261,-14.136,-13.976,-13.775,-13.529,
--13.238,-12.902,-12.525,-12.115,-11.681,-11.234,-10.790,-10.361,-9.962,-9.607,-9.308,-9.073,-8.910,-8.821,-8.805,-8.858,
--8.971,-9.133,-9.332,-9.552,-9.780,-9.999,-10.198,-10.366,-10.493,-10.574,-10.608,-10.594,-10.537,-10.443,-10.320,-10.176,
--10.020,-9.863,-9.711,-9.571,-9.449,-9.347,-9.266,-9.205,-9.161,-9.132,-9.111,-9.094,-9.076,-9.054,-9.022,-8.979,
--8.924,-8.855,-8.775,-8.684,-8.586,-8.483,-8.379,-8.275,-8.175,-8.081,-7.993,-7.912,-7.838,-7.771,-7.708,-7.648,
--7.590,-7.531,-7.472,-7.410,-7.345,-7.278,-7.208,-7.136,-7.064,-6.992,-6.922,-6.855,-6.791,-6.731,-6.675,-6.623,
--6.573,-6.524,-6.476,-6.426,-6.374,-6.319,-6.261,-6.199,-6.134,-6.067,-6.000,-5.934,-5.872,-5.816,-5.766,-5.723,
--5.690,-5.664,-5.646,-5.632,-5.621,-5.609,-5.593,-5.570,-5.536,-5.488,-5.426,-5.349,-5.256,-5.149,-5.032,-4.906,
--4.777,-4.648,-4.524,-4.408,-4.302,-4.209,-4.129,-4.060,-4.000,-3.945,-3.890,-3.832,-3.764,-3.683,-3.585,-3.468,
--3.333,-3.181,-3.015,-2.842,-2.668,-2.502,-2.352,-2.225,-2.131,-2.074,-2.059,-2.087,-2.157,-2.264,-2.403,-2.565,
--2.739,-2.915,-3.621,-3.777,-3.913,-4.019,-4.089,-4.116,-4.099,-4.038,-3.933,-3.790,-3.614,-3.414,-3.198,-2.974,
--2.750,-2.533,-2.329,-2.143,-1.976,-1.830,-1.702,-1.592,-1.495,-1.408,-1.325,-1.242,-1.157,-1.065,-.965,-.857,
--.741,-.617,-.488,-.356,-.225,-.096,.029,.146,.257,.360,.456,.546,.634,.719,.806,.896,
-.991,1.092,1.201,1.317,1.439,1.567,1.699,1.832,1.966,2.096,2.223,2.345,2.461,2.571,2.675,2.775,
-2.870,2.964,3.057,3.150,3.245,3.341,3.440,3.539,3.638,3.735,3.829,3.917,3.998,4.071,4.133,4.186,
-4.230,4.265,4.296,4.324,4.353,4.386,4.429,4.483,4.553,4.640,4.746,4.870,5.010,5.166,5.331,5.503,
-5.675,5.843,6.000,6.141,6.263,6.360,6.431,6.475,6.492,6.484,6.454,6.405,6.342,6.271,6.196,6.122,
-6.053,5.993,5.944,5.908,5.886,5.876,5.877,5.887,5.904,5.925,5.946,5.966,5.982,5.994,5.999,5.998,
-5.992,5.982,5.969,5.955,5.943,5.934,5.931,5.934,5.946,5.966,5.995,6.032,6.078,6.130,6.188,6.250,
-6.315,6.380,6.445,6.509,6.569,6.626,6.677,6.724,6.765,6.800,6.829,6.854,6.873,6.889,6.903,6.915,
-6.926,6.940,6.957,6.978,7.006,7.042,7.087,7.142,7.206,7.281,7.365,7.456,7.553,7.654,7.755,7.854,
-7.948,8.035,8.111,8.175,8.225,8.260,8.280,8.286,8.280,8.262,8.235,8.202,8.166,8.130,8.095,8.065,
-8.042,8.026,8.020,8.023,8.035,8.057,8.089,8.129,8.178,8.235,8.300,8.372,8.452,8.540,8.636,8.740,
-8.853,8.974,9.103,9.239,9.381,9.526,9.673,9.818,9.960,10.094,10.218,10.328,10.422,10.497,10.551,10.583,
-10.593,10.581,10.546,10.491,10.417,10.327,10.222,10.105,9.977,9.842,9.701,9.554,9.404,9.251,9.094,8.935,
-8.772,8.605,8.435,8.259,8.079,7.895,7.707,7.515,7.322,7.128,6.935,6.745,6.560,6.382,6.213,6.055,
-5.909,5.775,5.656,5.550,5.458,5.378,5.311,5.254,5.205,5.164,5.128,5.094,5.062,5.029,4.994,4.956,
-4.914,4.867,4.816,4.760,4.700,4.637,4.572,4.506,4.439,4.375,4.313,4.256,4.204,4.159,4.121,4.091,
-4.071,4.059,4.057,4.065,4.083,4.109,4.144,4.187,4.238,4.295,4.357,4.424,4.492,4.561,4.629,4.693,
-4.751,4.800,4.839,4.865,4.875,4.867,4.840,4.793,4.725,4.636,4.527,4.399,4.255,4.097,3.929,3.753,
-3.575,3.397,3.223,3.056,2.899,2.754,2.620,2.498,2.387,2.284,2.186,2.090,1.992,1.888,1.774,1.647,
-1.504,1.343,1.163,.965,.750,.521,.282,.036,-.212,-.456,-.692,-.914,-1.120,-1.305,-1.468,-1.607,
--1.723,-1.816,-1.890,-1.947,-1.991,-2.026,-2.058,-2.091,-2.131,-2.181,-2.245,-2.329,-2.433,-2.562,-2.716,-2.897,
--3.106,-3.342,-3.605,-3.894,-4.208,-4.545,-4.903,-5.279,-5.670,-6.075,-6.488,-6.908,-7.330,-7.751,-8.167,-8.574,
--8.970,-9.351,-9.715,-10.060,-10.385,-10.688,-10.970,-11.231,-11.472,-11.695,-11.902,-12.095,-12.278,-12.453,-12.624,-12.794,
--12.967,-13.147,-13.337,-13.540,-13.759,-13.997,-14.256,-14.537,-14.841,-15.170,-15.521,-15.895,-16.289,-16.700,-17.124,-17.558,
--17.995,-18.432,-18.863,-19.283,-19.686,-20.070,-20.431,-20.766,-21.076,-21.360,-21.619,-21.857,-22.077,-22.284,-22.481,-22.675,
--22.868,-23.065,-23.269,-23.482,-23.705,-23.936,-24.175,-24.418,-24.663,-24.906,-25.143,-25.372,-25.589,-25.793,-25.984,-26.162,
--26.331,-26.493,-26.654,-26.817,-26.989,-27.175,-27.380,-27.607,-27.859,-28.137,-28.441,-28.769,-29.116,-29.479,-29.851,-30.227,
--30.600,-30.965,-31.316,-31.650,-31.963,-32.257,-32.529,-32.784,-33.023,-33.250,-33.471,-33.689,-33.910,-34.136,-34.371,-34.616,
--34.873,-35.140,-35.416,-35.700,-35.987,-36.275,-36.561,-36.842,-37.116,-37.380,-37.635,-37.881,-38.117,-38.345,-38.568,-38.786,
--39.002,-39.217,-39.431,-39.646,-39.860,-40.072,-40.282,-40.486,-40.683,-40.870,-41.045,-41.206,-41.352,-41.482,-41.597,-41.699,
--41.787,-41.866,-41.937,-42.003,-42.068,-42.135,-42.205,-42.281,-42.365,-42.458,-42.561,-42.674,-42.797,-42.931,-43.076,-43.231,
--43.398,-43.576,-43.767,-43.972,-44.191,-44.424,-44.674,-44.940,-45.221,-45.518,-45.828,-46.149,-46.479,-46.814,-47.151,-47.485,
--47.813,-48.131,-48.434,-48.722,-48.990,-49.237,-49.464,-49.670,-49.856,-50.024,-50.177,-50.317,-50.446,-50.570,-50.690,-50.810,
--50.932,-51.059,-51.192,-51.334,-51.484,-51.644,-51.814,-51.993,-52.180,-52.374,-52.575,-52.780,-52.988,-53.196,-53.402,-53.605,
--53.801,-53.988,-54.165,-54.330,-54.481,-54.617,-54.738,-54.844,-54.935,-55.013,-55.078,-55.134,-55.181,-55.222,-55.258,-55.293,
--55.326,-55.358,-55.390,-55.422,-55.451,-55.476,-55.496,-55.509,-55.512,-55.504,-55.485,-55.453,-55.410,-55.356,-55.296,-55.230,
--55.163,-55.099,-55.041,-54.992,-54.955,-54.930,-54.918,-54.915,-54.920,-54.927,-54.930,-54.923,-54.898,-54.848,-54.769,-54.656,
--54.506,-54.319,-54.100,-53.852,-53.586,-53.311,-53.040,-52.786,-52.565,-52.389,-52.271,-52.220,-52.244,-52.345,-52.523,-52.773,
--53.086,-53.450,-53.850,-54.268,-54.686,-55.086,-55.449,-55.761,-56.007,-56.179,-56.271,-56.282,-56.213,-56.072,-55.868,-55.613,
--55.319,-55.003,-54.678,-54.358,-54.055,-53.778,-53.535,-53.330,-53.164,-53.038,-52.949,-52.892,-52.861,-52.852,-52.857,-52.872,
--52.891,-52.912,-52.931,-52.949,-52.964,-52.978,-52.991,-53.006,-53.025,-53.048,-53.076,-53.109,-53.146,-53.187,-53.228,-53.268,
--53.303,-53.331,-53.349,-53.357,-53.353,-53.337,-53.311,-53.276,-53.236,-53.194,-53.154,-53.121,-53.098,-53.090,-53.099,-53.128,
--53.178,-53.250,-53.341,-53.450,-53.575,-53.712,-53.857,-54.006,-54.156,-54.302,-54.443,-54.576,-54.700,-54.814,-54.918,-55.013,
--55.101,-55.183,-55.261,-55.336,-55.409,-55.482,-55.554,-55.624,-55.693,-55.757,-55.816,-55.868,-55.909,-55.940,-55.957,-55.961,
--55.952,-55.929,-55.896,-55.853,-55.804,-55.752,-55.700,-55.651,-55.609,-55.577,-55.554,-55.544,-55.545,-55.557,-55.578,-55.606,
--55.637,-55.670,-55.699,-55.723,-55.740,-55.746,-55.743,-55.728,-55.704,-55.671,-55.633,-55.592,-55.551,-55.513,-55.481,-55.458,
--55.446,-55.445,-55.456,-55.479,-55.512,-55.553,-55.599,-55.648,-55.696,-55.740,-55.778,-55.808,-55.826,-55.832,-55.825,-55.806,
--55.773,-55.730,-55.676,-55.614,-55.544,-55.469,-55.390,-55.308,-55.224,-55.140,-55.055,-54.969,-54.883,-54.797,-54.710,-54.622,
--54.532,-54.440,-54.346,-54.250,-54.152,-54.051,-53.948,-53.844,-53.739,-53.633,-53.529,-53.426,-53.328,-53.236,-53.152,-53.079,
--53.018,-52.972,-52.944,-52.934,-52.945,-52.978,-53.031,-53.104,-53.195,-53.301,-53.418,-53.541,-53.663,-53.780,-53.884,-53.969,
--54.030,-54.061,-54.057,-54.017,-53.940,-53.825,-53.675,-53.494,-53.286,-53.060,-52.821,-52.578,-52.337,-52.108,-51.895,-51.704,
--51.539,-51.402,-51.293,-51.212,-51.156,-51.121,-51.101,-51.092,-51.089,-51.085,-51.077,-51.062,-51.037,-51.001,-50.956,-50.903,
--50.845,-50.788,-50.734,-50.689,-50.657,-50.642,-50.647,-50.672,-50.718,-50.782,-50.862,-50.952,-51.048,-51.140,-51.224,-51.291,
--51.334,-51.349,-51.329,-51.271,-51.175,-51.039,-50.866,-50.660,-50.424,-50.166,-49.890,-49.605,-49.317,-49.032,-48.757,-48.495,
--48.250,-48.024,-47.817,-47.630,-47.461,-47.306,-47.164,-47.029,-46.899,-46.770,-46.638,-46.500,-46.354,-46.197,-46.029,-45.850,
--45.658,-45.455,-45.242,-45.020,-44.790,-44.554,-44.314,-44.073,-43.831,-43.591,-43.355,-43.125,-42.902,-42.690,-42.490,-42.303,
--42.131,-41.975,-41.836,-41.715,-41.610,-41.521,-41.446,-41.383,-41.328,-41.280,-41.234,-41.187,-41.135,-41.076,-41.006,-40.924,
--40.829,-40.719,-40.596,-40.461,-40.314,-40.159,-39.998,-39.832,-39.664,-39.496,-39.329,-39.164,-39.001,-38.839,-38.677,-38.513,
--38.346,-38.175,-37.996,-37.810,-37.616,-37.415,-37.207,-36.995,-36.781,-36.568,-36.361,-36.161,-35.974,-35.801,-35.646,-35.509,
--35.391,-35.292,-35.210,-35.143,-35.086,-35.036,-34.990,-34.942,-34.890,-34.829,-34.757,-34.673,-34.576,-34.466,-34.344,-34.214,
--34.078,-33.939,-33.802,-33.670,-33.547,-33.438,-33.344,-33.268,-33.212,-33.178,-33.164,-33.170,-33.195,-33.237,-33.292,-33.357,
--33.428,-33.500,-33.569,-33.630,-33.679,-33.709,-33.718,-33.701,-33.657,-33.583,-33.478,-33.344,-33.183,-32.997,-32.791,-32.571,
--32.343,-32.112,-31.886,-31.669,-31.468,-31.285,-31.122,-30.981,-30.859,-30.753,-30.660,-30.572,-30.485,-30.391,-30.284,-30.159,
--30.011,-29.840,-29.644,-29.425,-29.187,-28.936,-28.677,-28.417,-28.164,-27.923,-27.698,-27.493,-27.308,-27.141,-26.986,-26.839,
--26.690,-26.530,-26.350,-26.142,-25.899,-25.617,-25.293,-24.929,-24.530,-24.105,-23.663,-23.216,-22.778,-22.360,-21.973,-21.625,
--21.320,-21.058,-20.834,-20.639,-20.460,-20.278,-20.077,-19.836,-19.538,-19.167,-18.713,-18.169,-17.539,-16.832,-16.064,-15.261,
--14.451,-13.669,-12.955,-12.344,-11.875,-11.578,-11.481,-11.601,-11.947,-12.517,-13.299,-14.270,-15.399,-16.648,-17.971,-19.321,
--20.651,-21.914,-23.068,-24.077,-24.914,-25.559,-26.005,-26.251,-26.309,-26.194,-25.933,-25.554,-25.090,-24.575,-24.040,-23.517,
--23.030,-22.601,-22.246,-21.973,-21.788,-21.689,-21.670,-21.722,-21.832,-21.987,-22.173,-22.376,-22.583,-22.783,-22.967,-23.127,
--23.258,-23.357,-23.421,-23.450,-23.445,-23.405,-23.333,-23.229,-23.096,-22.934,-22.746,-22.532,-22.297,-22.042,-21.771,-21.487,
--21.197,-20.904,-20.616,-20.337,-20.073,-19.831,-19.614,-19.426,-19.271,-19.148,-19.057,-18.997,-18.963,-18.951,-18.955,-18.968,
--18.985,-18.998,-19.002,-18.992,-18.963,-18.913,-18.842,-18.750,-18.639,-18.513,-18.376,-18.233,-18.092,-17.956,-17.831,-17.723,
--17.634,-17.567,-17.523,-17.502,-17.502,-17.519,-17.551,-17.592,-17.637,-17.682,-17.721,-17.752,-17.769,-17.773,-17.761,-17.734,
--17.693,-17.642,-17.584,-17.521,-17.459,-17.401,-17.351,-17.312,-17.284,-17.269,-17.266,-17.274,-17.290,-17.312,-17.335,-17.355,
--17.370,-17.376,-17.371,-17.353,-17.322,-17.279,-17.225,-17.164,-17.100,-17.035,-16.974,-16.921,-16.877,-16.846,-16.828,-16.822,
--16.827,-16.839,-16.855,-16.870,-16.878,-16.875,-16.856,-16.815,-16.751,-16.661,-16.545,-16.404,-16.241,-16.059,-15.863,-15.660,
--15.456,-15.256,-15.068,-14.897,-14.748,-14.625,-14.531,-14.467,-14.433,-14.430,-14.454,-14.505,-14.577,-14.668,-14.772,-14.887,
--15.008,-15.130,-15.249,-15.362,-15.465,-15.556,-15.631,-15.689,-15.728,-15.748,-15.749,-15.732,-15.697,-15.647,-15.585,-15.514,
--15.438,-15.358,-15.280,-15.205,-15.135,-15.070,-15.011,-14.956,-14.901,-14.841,-14.773,-14.690,-14.585,-14.454,-14.290,-14.090,
--13.853,-13.577,-13.265,-12.922,-12.556,-12.175,-11.790,-11.414,-11.060,-10.739,-10.463,-10.242,-10.084,-9.992,-9.968,-10.010,
--10.112,-10.267,-10.464,-10.689,-10.929,-11.170,-11.398,-11.600,-11.765,-11.887,-11.958,-11.976,-11.943,-11.861,-11.736,-11.576,
--11.388,-11.184,-10.972,-10.760,-10.558,-10.371,-10.203,-10.059,-9.938,-9.841,-9.764,-9.706,-9.662,-9.628,-9.600,-9.574,
--9.547,-9.516,-9.481,-9.439,-9.391,-9.337,-9.279,-9.217,-9.153,-9.088,-9.023,-8.959,-8.896,-8.834,-8.774,-8.714,
--8.654,-8.594,-8.534,-8.473,-8.413,-8.353,-8.293,-8.236,-8.182,-8.131,-8.084,-8.043,-8.006,-7.974,-7.945,-7.919,
--7.894,-7.868,-7.840,-7.808,-7.771,-7.727,-7.676,-7.618,-7.553,-7.484,-7.412,-7.338,-7.266,-7.196,-7.132,-7.074,
--7.024,-6.982,-6.946,-6.916,-6.888,-6.861,-6.831,-6.794,-6.749,-6.692,-6.621,-6.535,-6.435,-6.321,-6.196,-6.063,
--5.925,-5.786,-5.649,-5.519,-5.398,-5.289,-5.190,-5.103,-5.025,-4.953,-4.884,-4.812,-4.734,-4.644,-4.541,-4.420,
--4.281,-4.126,-3.956,-3.776,-3.593,-3.412,-3.241,-3.090,-2.965,-2.872,-2.818,-2.804,-2.832,-2.900,-3.003,-3.136,
--3.290,-3.456,-3.621,-4.160,-4.277,-4.375,-4.448,-4.489,-4.495,-4.463,-4.394,-4.289,-4.152,-3.988,-3.803,-3.604,
--3.398,-3.192,-2.992,-2.802,-2.627,-2.467,-2.324,-2.198,-2.085,-1.984,-1.891,-1.802,-1.715,-1.625,-1.531,-1.430,
--1.322,-1.208,-1.086,-.960,-.831,-.701,-.572,-.446,-.324,-.208,-.098,.007,.106,.202,.296,.389,
-.483,.579,.679,.784,.892,1.005,1.121,1.240,1.360,1.479,1.596,1.711,1.822,1.930,2.033,2.133,
-2.230,2.325,2.419,2.513,2.609,2.706,2.806,2.907,3.010,3.114,3.216,3.316,3.412,3.502,3.585,3.660,
-3.726,3.784,3.835,3.881,3.923,3.964,4.007,4.055,4.111,4.177,4.256,4.348,4.454,4.573,4.704,4.843,
-4.989,5.137,5.283,5.423,5.554,5.671,5.771,5.853,5.914,5.956,5.978,5.982,5.970,5.946,5.912,5.872,
-5.830,5.787,5.748,5.714,5.687,5.667,5.654,5.648,5.648,5.651,5.657,5.664,5.669,5.672,5.672,5.667,
-5.657,5.643,5.624,5.603,5.579,5.555,5.532,5.510,5.492,5.479,5.470,5.468,5.471,5.481,5.497,5.518,
-5.545,5.577,5.612,5.651,5.692,5.735,5.779,5.823,5.867,5.910,5.953,5.995,6.035,6.075,6.114,6.152,
-6.191,6.231,6.274,6.319,6.368,6.423,6.483,6.549,6.622,6.702,6.789,6.881,6.977,7.077,7.178,7.278,
-7.375,7.467,7.551,7.626,7.690,7.742,7.780,7.806,7.818,7.819,7.809,7.789,7.763,7.732,7.698,7.665,
-7.633,7.605,7.583,7.568,7.561,7.563,7.575,7.596,7.628,7.669,7.721,7.784,7.856,7.939,8.032,8.136,
-8.249,8.372,8.503,8.642,8.788,8.939,9.094,9.249,9.402,9.551,9.694,9.827,9.947,10.054,10.143,10.215,
-10.268,10.301,10.313,10.307,10.281,10.237,10.176,10.100,10.010,9.908,9.795,9.672,9.540,9.401,9.255,9.102,
-8.944,8.780,8.612,8.440,8.264,8.086,7.906,7.725,7.546,7.368,7.194,7.025,6.861,6.705,6.556,6.416,
-6.285,6.162,6.049,5.943,5.846,5.755,5.671,5.593,5.519,5.449,5.382,5.319,5.258,5.200,5.144,5.090,
-5.039,4.990,4.943,4.899,4.856,4.815,4.775,4.737,4.699,4.662,4.625,4.589,4.553,4.518,4.484,4.452,
-4.423,4.399,4.380,4.368,4.364,4.369,4.383,4.409,4.444,4.490,4.545,4.609,4.678,4.751,4.825,4.897,
-4.963,5.022,5.069,5.102,5.117,5.114,5.091,5.046,4.980,4.893,4.787,4.663,4.524,4.373,4.214,4.049,
-3.882,3.716,3.554,3.399,3.251,3.113,2.984,2.864,2.752,2.646,2.544,2.444,2.343,2.238,2.126,2.005,
-1.873,1.728,1.570,1.399,1.215,1.020,.815,.603,.388,.171,-.044,-.253,-.455,-.645,-.823,-.987,
--1.135,-1.269,-1.387,-1.491,-1.584,-1.666,-1.740,-1.810,-1.879,-1.949,-2.025,-2.110,-2.208,-2.321,-2.453,-2.608,
--2.786,-2.991,-3.224,-3.486,-3.776,-4.096,-4.443,-4.816,-5.211,-5.626,-6.055,-6.496,-6.943,-7.389,-7.832,-8.264,
--8.682,-9.081,-9.459,-9.812,-10.138,-10.438,-10.712,-10.960,-11.186,-11.392,-11.583,-11.762,-11.933,-12.101,-12.271,-12.445,
--12.628,-12.822,-13.029,-13.252,-13.491,-13.746,-14.017,-14.304,-14.604,-14.918,-15.242,-15.576,-15.916,-16.261,-16.609,-16.958,
--17.305,-17.649,-17.989,-18.323,-18.650,-18.968,-19.278,-19.579,-19.872,-20.156,-20.432,-20.702,-20.968,-21.229,-21.489,-21.748,
--22.007,-22.269,-22.532,-22.798,-23.066,-23.335,-23.605,-23.873,-24.138,-24.398,-24.651,-24.896,-25.132,-25.358,-25.575,-25.783,
--25.984,-26.180,-26.375,-26.570,-26.770,-26.979,-27.198,-27.430,-27.678,-27.942,-28.223,-28.518,-28.827,-29.147,-29.474,-29.805,
--30.136,-30.463,-30.783,-31.092,-31.389,-31.674,-31.944,-32.202,-32.449,-32.687,-32.919,-33.147,-33.375,-33.606,-33.841,-34.083,
--34.333,-34.591,-34.856,-35.129,-35.407,-35.688,-35.970,-36.252,-36.531,-36.806,-37.076,-37.339,-37.596,-37.847,-38.092,-38.332,
--38.567,-38.798,-39.026,-39.250,-39.470,-39.686,-39.896,-40.099,-40.294,-40.479,-40.651,-40.811,-40.956,-41.086,-41.202,-41.303,
--41.392,-41.469,-41.538,-41.601,-41.661,-41.720,-41.783,-41.851,-41.927,-42.013,-42.110,-42.220,-42.344,-42.481,-42.631,-42.795,
--42.971,-43.158,-43.357,-43.566,-43.786,-44.014,-44.252,-44.499,-44.754,-45.018,-45.289,-45.567,-45.850,-46.139,-46.432,-46.726,
--47.022,-47.315,-47.606,-47.891,-48.170,-48.439,-48.699,-48.946,-49.181,-49.403,-49.611,-49.806,-49.987,-50.156,-50.314,-50.462,
--50.602,-50.736,-50.866,-50.994,-51.121,-51.251,-51.386,-51.526,-51.673,-51.827,-51.990,-52.161,-52.339,-52.523,-52.710,-52.899,
--53.087,-53.270,-53.445,-53.610,-53.762,-53.897,-54.015,-54.115,-54.195,-54.256,-54.300,-54.328,-54.342,-54.346,-54.342,-54.333,
--54.322,-54.312,-54.304,-54.299,-54.299,-54.302,-54.309,-54.319,-54.329,-54.339,-54.347,-54.351,-54.351,-54.346,-54.337,-54.324,
--54.308,-54.292,-54.275,-54.260,-54.248,-54.239,-54.234,-54.231,-54.227,-54.221,-54.209,-54.187,-54.151,-54.096,-54.021,-53.922,
--53.799,-53.653,-53.487,-53.306,-53.118,-52.930,-52.753,-52.598,-52.475,-52.394,-52.366,-52.398,-52.494,-52.656,-52.883,-53.171,
--53.511,-53.892,-54.302,-54.725,-55.144,-55.543,-55.905,-56.217,-56.467,-56.644,-56.744,-56.764,-56.705,-56.573,-56.374,-56.120,
--55.823,-55.496,-55.152,-54.805,-54.467,-54.147,-53.855,-53.595,-53.372,-53.186,-53.035,-52.919,-52.831,-52.768,-52.724,-52.695,
--52.675,-52.663,-52.654,-52.649,-52.645,-52.644,-52.646,-52.653,-52.665,-52.684,-52.711,-52.744,-52.783,-52.826,-52.871,-52.915,
--52.955,-52.987,-53.008,-53.018,-53.013,-52.995,-52.963,-52.921,-52.870,-52.815,-52.761,-52.711,-52.673,-52.649,-52.643,-52.660,
--52.700,-52.765,-52.853,-52.962,-53.090,-53.233,-53.386,-53.544,-53.703,-53.858,-54.006,-54.144,-54.270,-54.383,-54.483,-54.572,
--54.651,-54.722,-54.788,-54.851,-54.913,-54.975,-55.039,-55.105,-55.171,-55.236,-55.299,-55.356,-55.406,-55.445,-55.472,-55.486,
--55.485,-55.470,-55.442,-55.403,-55.356,-55.305,-55.253,-55.204,-55.162,-55.129,-55.110,-55.104,-55.112,-55.134,-55.167,-55.210,
--55.258,-55.308,-55.355,-55.396,-55.426,-55.445,-55.449,-55.438,-55.412,-55.375,-55.327,-55.273,-55.217,-55.164,-55.118,-55.082,
--55.060,-55.055,-55.066,-55.095,-55.140,-55.198,-55.266,-55.339,-55.412,-55.480,-55.539,-55.583,-55.609,-55.614,-55.597,-55.556,
--55.492,-55.408,-55.305,-55.187,-55.058,-54.924,-54.787,-54.652,-54.523,-54.404,-54.295,-54.199,-54.117,-54.047,-53.990,-53.943,
--53.904,-53.871,-53.840,-53.810,-53.777,-53.740,-53.696,-53.645,-53.585,-53.517,-53.441,-53.359,-53.273,-53.186,-53.099,-53.016,
--52.940,-52.875,-52.823,-52.786,-52.768,-52.768,-52.788,-52.828,-52.886,-52.959,-53.045,-53.139,-53.238,-53.336,-53.426,-53.505,
--53.566,-53.605,-53.617,-53.599,-53.550,-53.469,-53.357,-53.215,-53.046,-52.856,-52.649,-52.432,-52.211,-51.992,-51.780,-51.583,
--51.403,-51.244,-51.109,-50.999,-50.912,-50.848,-50.804,-50.777,-50.763,-50.758,-50.758,-50.760,-50.761,-50.759,-50.752,-50.741,
--50.726,-50.708,-50.690,-50.674,-50.662,-50.657,-50.660,-50.674,-50.698,-50.731,-50.773,-50.821,-50.871,-50.919,-50.961,-50.992,
--51.007,-51.001,-50.970,-50.912,-50.826,-50.709,-50.562,-50.388,-50.189,-49.968,-49.731,-49.483,-49.228,-48.972,-48.720,-48.476,
--48.244,-48.026,-47.825,-47.640,-47.472,-47.319,-47.179,-47.050,-46.929,-46.811,-46.694,-46.574,-46.449,-46.314,-46.168,-46.010,
--45.838,-45.651,-45.449,-45.234,-45.006,-44.768,-44.520,-44.267,-44.010,-43.752,-43.498,-43.249,-43.009,-42.782,-42.569,-42.373,
--42.197,-42.040,-41.905,-41.790,-41.696,-41.620,-41.560,-41.514,-41.479,-41.449,-41.423,-41.394,-41.361,-41.320,-41.267,-41.201,
--41.120,-41.023,-40.912,-40.787,-40.649,-40.501,-40.345,-40.185,-40.021,-39.857,-39.695,-39.535,-39.378,-39.224,-39.073,-38.923,
--38.772,-38.619,-38.462,-38.299,-38.129,-37.950,-37.763,-37.568,-37.367,-37.161,-36.952,-36.744,-36.540,-36.342,-36.155,-35.981,
--35.822,-35.680,-35.555,-35.447,-35.356,-35.280,-35.217,-35.163,-35.117,-35.074,-35.032,-34.987,-34.937,-34.880,-34.815,-34.740,
--34.656,-34.563,-34.463,-34.358,-34.250,-34.142,-34.036,-33.937,-33.846,-33.767,-33.701,-33.651,-33.617,-33.600,-33.599,-33.613,
--33.639,-33.674,-33.715,-33.757,-33.794,-33.823,-33.837,-33.833,-33.805,-33.751,-33.669,-33.557,-33.416,-33.247,-33.055,-32.842,
--32.614,-32.377,-32.137,-31.900,-31.671,-31.455,-31.255,-31.073,-30.910,-30.763,-30.631,-30.509,-30.393,-30.277,-30.155,-30.023,
--29.877,-29.714,-29.531,-29.331,-29.114,-28.883,-28.644,-28.402,-28.161,-27.928,-27.707,-27.500,-27.308,-27.132,-26.969,-26.813,
--26.659,-26.500,-26.326,-26.132,-25.910,-25.655,-25.365,-25.038,-24.676,-24.287,-23.875,-23.452,-23.029,-22.615,-22.223,-21.860,
--21.534,-21.247,-20.999,-20.787,-20.601,-20.430,-20.260,-20.075,-19.859,-19.596,-19.274,-18.883,-18.421,-17.888,-17.293,-16.651,
--15.981,-15.309,-14.665,-14.080,-13.586,-13.214,-12.992,-12.940,-13.074,-13.401,-13.921,-14.622,-15.485,-16.485,-17.587,-18.754,
--19.945,-21.120,-22.237,-23.261,-24.161,-24.911,-25.496,-25.907,-26.143,-26.214,-26.132,-25.921,-25.604,-25.209,-24.767,-24.305,
--23.849,-23.423,-23.045,-22.730,-22.486,-22.317,-22.221,-22.193,-22.226,-22.307,-22.426,-22.569,-22.723,-22.879,-23.026,-23.157,
--23.266,-23.349,-23.404,-23.431,-23.431,-23.405,-23.354,-23.281,-23.187,-23.073,-22.940,-22.788,-22.618,-22.430,-22.225,-22.004,
--21.767,-21.519,-21.262,-21.001,-20.739,-20.483,-20.239,-20.012,-19.806,-19.627,-19.478,-19.360,-19.275,-19.221,-19.195,-19.193,
--19.210,-19.240,-19.275,-19.309,-19.336,-19.348,-19.342,-19.314,-19.262,-19.186,-19.086,-18.966,-18.830,-18.684,-18.532,-18.381,
--18.237,-18.106,-17.992,-17.899,-17.829,-17.782,-17.758,-17.756,-17.772,-17.803,-17.844,-17.890,-17.938,-17.982,-18.020,-18.048,
--18.066,-18.072,-18.067,-18.052,-18.029,-18.001,-17.971,-17.941,-17.914,-17.892,-17.876,-17.868,-17.866,-17.871,-17.880,-17.892,
--17.904,-17.913,-17.918,-17.917,-17.907,-17.888,-17.861,-17.825,-17.782,-17.734,-17.683,-17.631,-17.581,-17.534,-17.492,-17.456,
--17.426,-17.401,-17.379,-17.359,-17.336,-17.308,-17.272,-17.224,-17.161,-17.080,-16.981,-16.862,-16.723,-16.567,-16.394,-16.210,
--16.016,-15.819,-15.622,-15.431,-15.251,-15.086,-14.940,-14.817,-14.719,-14.647,-14.604,-14.589,-14.601,-14.639,-14.700,-14.781,
--14.880,-14.992,-15.113,-15.239,-15.365,-15.488,-15.603,-15.707,-15.797,-15.870,-15.925,-15.960,-15.975,-15.971,-15.949,-15.911,
--15.859,-15.797,-15.727,-15.652,-15.576,-15.499,-15.424,-15.351,-15.280,-15.208,-15.135,-15.058,-14.972,-14.875,-14.763,-14.633,
--14.484,-14.314,-14.125,-13.917,-13.695,-13.464,-13.229,-12.997,-12.778,-12.577,-12.403,-12.263,-12.160,-12.100,-12.082,-12.106,
--12.169,-12.266,-12.389,-12.530,-12.679,-12.826,-12.960,-13.072,-13.154,-13.199,-13.202,-13.161,-13.075,-12.948,-12.782,-12.583,
--12.359,-12.117,-11.865,-11.612,-11.366,-11.133,-10.918,-10.726,-10.559,-10.418,-10.304,-10.215,-10.148,-10.101,-10.070,-10.052,
--10.043,-10.040,-10.040,-10.041,-10.041,-10.038,-10.032,-10.022,-10.008,-9.988,-9.963,-9.933,-9.896,-9.854,-9.805,-9.750,
--9.688,-9.621,-9.548,-9.471,-9.390,-9.308,-9.226,-9.147,-9.071,-9.001,-8.939,-8.885,-8.840,-8.804,-8.776,-8.756,
--8.742,-8.731,-8.721,-8.710,-8.695,-8.675,-8.647,-8.610,-8.565,-8.510,-8.447,-8.377,-8.302,-8.224,-8.145,-8.066,
--7.990,-7.917,-7.849,-7.783,-7.722,-7.661,-7.601,-7.539,-7.472,-7.400,-7.319,-7.230,-7.132,-7.025,-6.910,-6.788,
--6.663,-6.537,-6.412,-6.292,-6.178,-6.072,-5.974,-5.885,-5.804,-5.727,-5.654,-5.579,-5.500,-5.413,-5.315,-5.203,
--5.076,-4.935,-4.780,-4.614,-4.442,-4.269,-4.101,-3.944,-3.806,-3.691,-3.606,-3.554,-3.537,-3.554,-3.605,-3.685,
--3.788,-3.907,-4.034,-4.160,-4.850,-4.904,-4.942,-4.960,-4.953,-4.918,-4.855,-4.764,-4.647,-4.506,-4.347,-4.174,
--3.991,-3.805,-3.621,-3.442,-3.271,-3.112,-2.966,-2.832,-2.710,-2.598,-2.494,-2.396,-2.299,-2.203,-2.104,-2.000,
--1.891,-1.776,-1.655,-1.529,-1.399,-1.267,-1.136,-1.006,-.881,-.760,-.646,-.539,-.437,-.342,-.252,-.165,
--.081,.004,.089,.177,.269,.364,.464,.569,.676,.787,.899,1.013,1.126,1.237,1.348,1.456,
-1.561,1.665,1.767,1.867,1.967,2.067,2.168,2.270,2.372,2.476,2.580,2.685,2.788,2.889,2.987,3.081,
-3.170,3.254,3.332,3.405,3.473,3.538,3.601,3.663,3.726,3.792,3.863,3.939,4.023,4.114,4.213,4.318,
-4.430,4.547,4.666,4.785,4.903,5.016,5.123,5.222,5.311,5.389,5.455,5.510,5.554,5.588,5.612,5.630,
-5.641,5.649,5.654,5.658,5.662,5.666,5.671,5.677,5.683,5.689,5.694,5.696,5.694,5.688,5.677,5.658,
-5.633,5.601,5.562,5.516,5.464,5.407,5.346,5.283,5.218,5.154,5.091,5.031,4.975,4.925,4.880,4.843,
-4.813,4.791,4.778,4.772,4.775,4.786,4.805,4.830,4.863,4.901,4.946,4.995,5.049,5.107,5.169,5.235,
-5.304,5.377,5.453,5.532,5.616,5.703,5.794,5.890,5.989,6.092,6.198,6.306,6.415,6.525,6.633,6.738,
-6.838,6.932,7.018,7.095,7.161,7.216,7.259,7.289,7.308,7.315,7.312,7.300,7.281,7.256,7.226,7.195,
-7.163,7.133,7.105,7.081,7.062,7.048,7.042,7.042,7.050,7.065,7.089,7.121,7.163,7.214,7.276,7.349,
-7.433,7.529,7.637,7.757,7.890,8.034,8.188,8.351,8.521,8.696,8.873,9.050,9.223,9.390,9.547,9.691,
-9.820,9.931,10.022,10.092,10.140,10.164,10.166,10.145,10.102,10.038,9.955,9.855,9.739,9.609,9.468,9.318,
-9.160,8.997,8.831,8.664,8.497,8.332,8.170,8.012,7.858,7.711,7.569,7.432,7.301,7.175,7.054,6.935,
-6.819,6.704,6.589,6.474,6.358,6.240,6.120,5.999,5.876,5.753,5.631,5.512,5.396,5.286,5.183,5.089,
-5.006,4.933,4.871,4.822,4.784,4.757,4.739,4.729,4.726,4.727,4.731,4.735,4.739,4.741,4.740,4.736,
-4.729,4.720,4.710,4.700,4.691,4.685,4.683,4.688,4.700,4.719,4.746,4.780,4.820,4.865,4.913,4.960,
-5.005,5.045,5.077,5.098,5.106,5.098,5.075,5.035,4.977,4.903,4.814,4.711,4.596,4.473,4.342,4.208,
-4.072,3.937,3.805,3.677,3.554,3.437,3.325,3.219,3.117,3.017,2.919,2.821,2.720,2.616,2.507,2.391,
-2.267,2.135,1.995,1.846,1.689,1.524,1.353,1.176,.995,.812,.627,.442,.259,.078,-.098,-.270,
--.436,-.595,-.747,-.891,-1.028,-1.158,-1.280,-1.397,-1.508,-1.617,-1.724,-1.833,-1.947,-2.067,-2.199,-2.345,
--2.509,-2.695,-2.905,-3.142,-3.409,-3.706,-4.033,-4.389,-4.774,-5.183,-5.613,-6.058,-6.514,-6.974,-7.431,-7.881,
--8.316,-8.731,-9.122,-9.486,-9.820,-10.124,-10.399,-10.645,-10.868,-11.069,-11.256,-11.432,-11.605,-11.778,-11.959,-12.150,
--12.357,-12.581,-12.824,-13.087,-13.369,-13.669,-13.983,-14.309,-14.643,-14.981,-15.320,-15.655,-15.984,-16.303,-16.612,-16.908,
--17.192,-17.463,-17.723,-17.972,-18.213,-18.448,-18.679,-18.908,-19.138,-19.370,-19.606,-19.847,-20.094,-20.348,-20.609,-20.876,
--21.150,-21.428,-21.710,-21.995,-22.282,-22.568,-22.854,-23.138,-23.418,-23.695,-23.968,-24.236,-24.499,-24.758,-25.014,-25.267,
--25.518,-25.769,-26.020,-26.274,-26.530,-26.791,-27.057,-27.328,-27.605,-27.888,-28.175,-28.466,-28.760,-29.055,-29.349,-29.640,
--29.928,-30.210,-30.485,-30.752,-31.011,-31.262,-31.506,-31.743,-31.974,-32.202,-32.428,-32.654,-32.881,-33.112,-33.347,-33.589,
--33.836,-34.091,-34.352,-34.618,-34.890,-35.165,-35.443,-35.722,-36.001,-36.279,-36.554,-36.827,-37.095,-37.359,-37.619,-37.874,
--38.123,-38.368,-38.607,-38.840,-39.066,-39.285,-39.495,-39.695,-39.885,-40.063,-40.229,-40.381,-40.519,-40.644,-40.756,-40.856,
--40.945,-41.027,-41.102,-41.174,-41.245,-41.318,-41.395,-41.480,-41.574,-41.679,-41.796,-41.925,-42.067,-42.221,-42.386,-42.561,
--42.745,-42.937,-43.134,-43.335,-43.540,-43.747,-43.955,-44.165,-44.376,-44.590,-44.805,-45.024,-45.247,-45.476,-45.710,-45.951,
--46.199,-46.453,-46.715,-46.982,-47.254,-47.529,-47.805,-48.080,-48.352,-48.618,-48.877,-49.125,-49.361,-49.584,-49.791,-49.984,
--50.160,-50.323,-50.471,-50.608,-50.735,-50.855,-50.971,-51.085,-51.200,-51.319,-51.443,-51.574,-51.712,-51.858,-52.010,-52.167,
--52.327,-52.487,-52.643,-52.792,-52.931,-53.056,-53.164,-53.252,-53.320,-53.365,-53.389,-53.392,-53.375,-53.343,-53.296,-53.241,
--53.179,-53.115,-53.053,-52.995,-52.945,-52.905,-52.875,-52.857,-52.850,-52.853,-52.866,-52.886,-52.912,-52.941,-52.972,-53.003,
--53.032,-53.058,-53.079,-53.095,-53.104,-53.106,-53.101,-53.087,-53.064,-53.031,-52.987,-52.933,-52.867,-52.790,-52.702,-52.607,
--52.505,-52.400,-52.297,-52.201,-52.118,-52.056,-52.021,-52.020,-52.060,-52.147,-52.284,-52.475,-52.719,-53.015,-53.359,-53.742,
--54.157,-54.592,-55.034,-55.470,-55.885,-56.265,-56.598,-56.872,-57.079,-57.211,-57.266,-57.243,-57.144,-56.977,-56.748,-56.467,
--56.148,-55.802,-55.441,-55.078,-54.725,-54.389,-54.080,-53.801,-53.557,-53.348,-53.174,-53.032,-52.918,-52.827,-52.756,-52.699,
--52.652,-52.611,-52.575,-52.542,-52.511,-52.484,-52.459,-52.441,-52.428,-52.424,-52.429,-52.443,-52.465,-52.495,-52.529,-52.566,
--52.602,-52.633,-52.657,-52.671,-52.672,-52.660,-52.635,-52.597,-52.550,-52.496,-52.439,-52.385,-52.337,-52.302,-52.284,-52.285,
--52.309,-52.357,-52.430,-52.526,-52.643,-52.777,-52.924,-53.080,-53.239,-53.396,-53.547,-53.689,-53.819,-53.935,-54.037,-54.125,
--54.201,-54.266,-54.323,-54.376,-54.426,-54.476,-54.528,-54.583,-54.640,-54.699,-54.759,-54.818,-54.873,-54.922,-54.961,-54.989,
--55.005,-55.006,-54.995,-54.971,-54.936,-54.894,-54.847,-54.799,-54.755,-54.717,-54.689,-54.673,-54.671,-54.683,-54.709,-54.746,
--54.792,-54.843,-54.896,-54.946,-54.990,-55.024,-55.045,-55.053,-55.045,-55.023,-54.988,-54.943,-54.892,-54.838,-54.787,-54.742,
--54.708,-54.688,-54.683,-54.695,-54.724,-54.768,-54.824,-54.888,-54.955,-55.020,-55.078,-55.123,-55.151,-55.156,-55.136,-55.090,
--55.017,-54.918,-54.795,-54.652,-54.493,-54.324,-54.150,-53.976,-53.809,-53.652,-53.511,-53.389,-53.286,-53.206,-53.147,-53.108,
--53.087,-53.081,-53.087,-53.101,-53.119,-53.138,-53.154,-53.164,-53.167,-53.161,-53.145,-53.120,-53.087,-53.046,-53.002,-52.955,
--52.909,-52.866,-52.830,-52.802,-52.785,-52.779,-52.786,-52.806,-52.837,-52.878,-52.928,-52.983,-53.040,-53.095,-53.144,-53.184,
--53.211,-53.221,-53.212,-53.181,-53.127,-53.048,-52.947,-52.823,-52.678,-52.517,-52.341,-52.155,-51.963,-51.769,-51.579,-51.395,
--51.222,-51.062,-50.917,-50.790,-50.680,-50.588,-50.512,-50.453,-50.407,-50.373,-50.349,-50.333,-50.323,-50.317,-50.315,-50.315,
--50.318,-50.323,-50.331,-50.343,-50.359,-50.381,-50.408,-50.440,-50.477,-50.518,-50.562,-50.606,-50.648,-50.685,-50.712,-50.728,
--50.728,-50.709,-50.669,-50.605,-50.517,-50.403,-50.265,-50.103,-49.921,-49.720,-49.504,-49.278,-49.045,-48.810,-48.577,-48.350,
--48.132,-47.925,-47.732,-47.553,-47.389,-47.238,-47.100,-46.972,-46.851,-46.735,-46.620,-46.504,-46.382,-46.252,-46.111,-45.957,
--45.789,-45.605,-45.406,-45.191,-44.962,-44.721,-44.468,-44.209,-43.944,-43.678,-43.414,-43.155,-42.906,-42.669,-42.448,-42.244,
--42.061,-41.899,-41.759,-41.642,-41.545,-41.469,-41.411,-41.368,-41.336,-41.313,-41.295,-41.277,-41.257,-41.230,-41.195,-41.148,
--41.089,-41.016,-40.929,-40.830,-40.719,-40.598,-40.469,-40.335,-40.198,-40.060,-39.923,-39.790,-39.660,-39.535,-39.414,-39.296,
--39.180,-39.065,-38.949,-38.830,-38.705,-38.573,-38.434,-38.285,-38.128,-37.961,-37.788,-37.608,-37.426,-37.242,-37.061,-36.885,
--36.717,-36.560,-36.417,-36.289,-36.178,-36.084,-36.008,-35.947,-35.902,-35.868,-35.845,-35.829,-35.816,-35.804,-35.788,-35.767,
--35.737,-35.697,-35.645,-35.580,-35.503,-35.413,-35.313,-35.205,-35.090,-34.973,-34.856,-34.741,-34.633,-34.533,-34.443,-34.366,
--34.300,-34.247,-34.203,-34.168,-34.138,-34.109,-34.078,-34.040,-33.991,-33.927,-33.845,-33.743,-33.618,-33.471,-33.303,-33.116,
--32.912,-32.696,-32.472,-32.244,-32.017,-31.796,-31.584,-31.382,-31.194,-31.019,-30.855,-30.701,-30.553,-30.408,-30.261,-30.108,
--29.946,-29.771,-29.582,-29.377,-29.158,-28.925,-28.683,-28.434,-28.184,-27.936,-27.694,-27.463,-27.245,-27.040,-26.848,-26.667,
--26.493,-26.322,-26.148,-25.964,-25.765,-25.544,-25.300,-25.027,-24.727,-24.400,-24.051,-23.685,-23.310,-22.933,-22.564,-22.210,
--21.880,-21.578,-21.309,-21.073,-20.868,-20.688,-20.527,-20.374,-20.218,-20.048,-19.853,-19.624,-19.353,-19.037,-18.677,-18.276,
--17.844,-17.394,-16.944,-16.512,-16.121,-15.793,-15.547,-15.404,-15.379,-15.482,-15.720,-16.090,-16.588,-17.199,-17.907,-18.688,
--19.518,-20.367,-21.208,-22.014,-22.759,-23.422,-23.985,-24.439,-24.775,-24.995,-25.103,-25.109,-25.028,-24.875,-24.670,-24.432,
--24.177,-23.925,-23.688,-23.477,-23.302,-23.165,-23.068,-23.008,-22.982,-22.981,-22.999,-23.028,-23.061,-23.089,-23.109,-23.116,
--23.108,-23.084,-23.046,-22.996,-22.938,-22.873,-22.806,-22.738,-22.673,-22.610,-22.550,-22.491,-22.430,-22.364,-22.291,-22.205,
--22.105,-21.987,-21.851,-21.695,-21.521,-21.331,-21.129,-20.921,-20.710,-20.505,-20.309,-20.130,-19.972,-19.838,-19.731,-19.652,
--19.600,-19.572,-19.564,-19.572,-19.589,-19.609,-19.626,-19.634,-19.628,-19.603,-19.558,-19.489,-19.399,-19.288,-19.161,-19.020,
--18.871,-18.720,-18.572,-18.434,-18.309,-18.201,-18.115,-18.051,-18.010,-17.992,-17.994,-18.015,-18.050,-18.095,-18.148,-18.203,
--18.257,-18.307,-18.351,-18.388,-18.416,-18.435,-18.447,-18.451,-18.451,-18.447,-18.442,-18.437,-18.433,-18.431,-18.432,-18.437,
--18.444,-18.453,-18.463,-18.472,-18.481,-18.487,-18.490,-18.489,-18.484,-18.474,-18.461,-18.444,-18.424,-18.402,-18.378,-18.352,
--18.324,-18.294,-18.260,-18.223,-18.181,-18.130,-18.071,-18.000,-17.915,-17.816,-17.700,-17.567,-17.417,-17.250,-17.067,-16.870,
--16.662,-16.445,-16.225,-16.003,-15.786,-15.577,-15.381,-15.201,-15.041,-14.905,-14.795,-14.712,-14.659,-14.635,-14.639,-14.672,
--14.730,-14.812,-14.913,-15.031,-15.161,-15.299,-15.440,-15.580,-15.715,-15.840,-15.952,-16.049,-16.127,-16.186,-16.224,-16.241,
--16.239,-16.217,-16.179,-16.126,-16.061,-15.987,-15.905,-15.819,-15.731,-15.641,-15.552,-15.464,-15.377,-15.292,-15.209,-15.127,
--15.045,-14.965,-14.887,-14.810,-14.737,-14.669,-14.608,-14.556,-14.515,-14.487,-14.475,-14.478,-14.499,-14.535,-14.587,-14.651,
--14.723,-14.800,-14.875,-14.944,-14.999,-15.035,-15.047,-15.028,-14.975,-14.886,-14.759,-14.594,-14.394,-14.161,-13.900,-13.617,
--13.318,-13.011,-12.702,-12.398,-12.106,-11.831,-11.578,-11.350,-11.151,-10.981,-10.841,-10.729,-10.645,-10.586,-10.550,-10.533,
--10.533,-10.548,-10.573,-10.607,-10.647,-10.692,-10.738,-10.784,-10.828,-10.869,-10.904,-10.933,-10.952,-10.960,-10.957,-10.940,
--10.909,-10.864,-10.804,-10.731,-10.646,-10.551,-10.447,-10.339,-10.229,-10.121,-10.016,-9.919,-9.831,-9.754,-9.689,-9.637,
--9.598,-9.569,-9.549,-9.537,-9.529,-9.522,-9.515,-9.504,-9.488,-9.465,-9.433,-9.393,-9.344,-9.287,-9.222,-9.152,
--9.077,-8.999,-8.918,-8.836,-8.753,-8.669,-8.584,-8.498,-8.410,-8.319,-8.224,-8.126,-8.023,-7.916,-7.806,-7.692,
--7.577,-7.461,-7.347,-7.235,-7.128,-7.026,-6.929,-6.839,-6.753,-6.672,-6.593,-6.513,-6.432,-6.345,-6.251,-6.149,
--6.036,-5.912,-5.778,-5.636,-5.487,-5.336,-5.186,-5.042,-4.909,-4.791,-4.692,-4.615,-4.563,-4.537,-4.535,-4.557,
--4.597,-4.653,-4.718,-4.785,-4.850,-5.705,-5.706,-5.694,-5.665,-5.617,-5.548,-5.459,-5.351,-5.224,-5.082,-4.928,
--4.765,-4.598,-4.429,-4.263,-4.102,-3.948,-3.804,-3.668,-3.542,-3.425,-3.314,-3.208,-3.106,-3.003,-2.900,-2.794,
--2.683,-2.568,-2.448,-2.323,-2.194,-2.064,-1.933,-1.803,-1.676,-1.553,-1.437,-1.327,-1.224,-1.129,-1.039,-.956,
--.876,-.799,-.723,-.646,-.566,-.483,-.396,-.303,-.204,-.101,.007,.119,.234,.351,.468,.584,
-.699,.812,.922,1.029,1.133,1.234,1.332,1.428,1.523,1.616,1.709,1.801,1.893,1.985,2.076,2.168,
-2.258,2.348,2.437,2.525,2.611,2.697,2.782,2.866,2.951,3.036,3.123,3.211,3.302,3.395,3.492,3.592,
-3.694,3.799,3.905,4.012,4.119,4.225,4.328,4.428,4.524,4.614,4.699,4.777,4.849,4.914,4.974,5.028,
-5.077,5.121,5.161,5.197,5.231,5.261,5.288,5.312,5.332,5.349,5.360,5.365,5.364,5.355,5.338,5.311,
-5.275,5.230,5.175,5.110,5.037,4.956,4.868,4.774,4.677,4.578,4.479,4.381,4.286,4.196,4.113,4.038,
-3.973,3.917,3.873,3.840,3.819,3.810,3.813,3.827,3.853,3.889,3.934,3.989,4.052,4.123,4.201,4.287,
-4.378,4.476,4.579,4.688,4.802,4.921,5.044,5.171,5.301,5.434,5.568,5.702,5.835,5.964,6.090,6.209,
-6.321,6.423,6.515,6.594,6.662,6.716,6.757,6.785,6.802,6.807,6.803,6.791,6.773,6.751,6.726,6.700,
-6.675,6.652,6.632,6.615,6.602,6.593,6.588,6.587,6.589,6.595,6.604,6.616,6.632,6.653,6.680,6.714,
-6.757,6.810,6.876,6.955,7.051,7.164,7.295,7.444,7.611,7.795,7.994,8.206,8.427,8.654,8.883,9.108,
-9.325,9.529,9.716,9.882,10.022,10.134,10.214,10.262,10.277,10.259,10.209,10.128,10.021,9.889,9.737,9.569,
-9.389,9.201,9.010,8.819,8.632,8.452,8.281,8.120,7.971,7.834,7.707,7.590,7.481,7.376,7.275,7.174,
-7.071,6.962,6.846,6.721,6.586,6.441,6.285,6.119,5.946,5.767,5.586,5.406,5.230,5.061,4.904,4.762,
-4.636,4.530,4.444,4.380,4.337,4.314,4.310,4.323,4.348,4.385,4.428,4.476,4.524,4.571,4.614,4.652,
-4.683,4.708,4.726,4.738,4.746,4.751,4.755,4.759,4.765,4.775,4.788,4.805,4.827,4.852,4.878,4.905,
-4.930,4.952,4.967,4.975,4.973,4.959,4.933,4.895,4.843,4.780,4.706,4.622,4.530,4.433,4.332,4.230,
-4.127,4.026,3.928,3.833,3.741,3.653,3.568,3.484,3.400,3.316,3.229,3.139,3.044,2.942,2.834,2.719,
-2.596,2.465,2.328,2.185,2.036,1.881,1.723,1.562,1.398,1.233,1.066,.897,.729,.559,.389,.220,
-.050,-.119,-.286,-.452,-.615,-.776,-.932,-1.085,-1.234,-1.378,-1.520,-1.659,-1.798,-1.939,-2.084,-2.237,
--2.401,-2.580,-2.778,-2.997,-3.241,-3.513,-3.813,-4.143,-4.501,-4.886,-5.294,-5.723,-6.165,-6.617,-7.072,-7.522,
--7.962,-8.386,-8.788,-9.164,-9.512,-9.830,-10.117,-10.375,-10.607,-10.816,-11.008,-11.189,-11.365,-11.541,-11.725,-11.920,
--12.132,-12.365,-12.619,-12.896,-13.195,-13.515,-13.851,-14.200,-14.558,-14.919,-15.279,-15.633,-15.975,-16.304,-16.615,-16.908,
--17.183,-17.438,-17.676,-17.900,-18.111,-18.313,-18.511,-18.706,-18.903,-19.104,-19.313,-19.529,-19.756,-19.992,-20.238,-20.493,
--20.756,-21.025,-21.299,-21.575,-21.852,-22.129,-22.404,-22.677,-22.947,-23.215,-23.480,-23.744,-24.008,-24.273,-24.540,-24.810,
--25.085,-25.365,-25.651,-25.943,-26.240,-26.544,-26.851,-27.163,-27.475,-27.789,-28.100,-28.408,-28.711,-29.007,-29.295,-29.573,
--29.843,-30.102,-30.351,-30.590,-30.821,-31.045,-31.263,-31.477,-31.688,-31.898,-32.109,-32.322,-32.539,-32.761,-32.988,-33.222,
--33.462,-33.708,-33.959,-34.216,-34.478,-34.744,-35.012,-35.283,-35.554,-35.827,-36.099,-36.370,-36.641,-36.909,-37.174,-37.437,
--37.696,-37.950,-38.199,-38.441,-38.676,-38.901,-39.117,-39.322,-39.514,-39.693,-39.859,-40.011,-40.149,-40.274,-40.387,-40.490,
--40.584,-40.671,-40.755,-40.837,-40.920,-41.007,-41.100,-41.202,-41.313,-41.434,-41.567,-41.711,-41.866,-42.030,-42.203,-42.382,
--42.566,-42.752,-42.939,-43.126,-43.311,-43.492,-43.671,-43.846,-44.019,-44.190,-44.361,-44.534,-44.711,-44.894,-45.085,-45.286,
--45.499,-45.724,-45.962,-46.214,-46.478,-46.753,-47.037,-47.328,-47.623,-47.919,-48.212,-48.498,-48.776,-49.040,-49.290,-49.522,
--49.735,-49.930,-50.105,-50.262,-50.402,-50.528,-50.642,-50.746,-50.845,-50.940,-51.035,-51.132,-51.233,-51.339,-51.450,-51.566,
--51.686,-51.807,-51.927,-52.043,-52.152,-52.250,-52.334,-52.401,-52.449,-52.476,-52.481,-52.464,-52.425,-52.367,-52.292,-52.204,
--52.106,-52.002,-51.897,-51.795,-51.699,-51.613,-51.541,-51.484,-51.443,-51.420,-51.413,-51.422,-51.445,-51.479,-51.523,-51.572,
--51.624,-51.675,-51.722,-51.763,-51.794,-51.813,-51.819,-51.810,-51.786,-51.748,-51.695,-51.631,-51.556,-51.474,-51.389,-51.306,
--51.230,-51.166,-51.122,-51.102,-51.114,-51.163,-51.255,-51.394,-51.584,-51.827,-52.122,-52.469,-52.862,-53.297,-53.765,-54.256,
--54.760,-55.263,-55.753,-56.216,-56.640,-57.012,-57.322,-57.561,-57.723,-57.804,-57.804,-57.724,-57.571,-57.350,-57.072,-56.748,
--56.389,-56.009,-55.619,-55.231,-54.857,-54.504,-54.180,-53.889,-53.633,-53.414,-53.230,-53.077,-52.952,-52.851,-52.766,-52.695,
--52.631,-52.573,-52.516,-52.459,-52.401,-52.344,-52.288,-52.235,-52.188,-52.148,-52.117,-52.097,-52.088,-52.090,-52.102,-52.121,
--52.146,-52.172,-52.198,-52.220,-52.235,-52.241,-52.236,-52.220,-52.195,-52.161,-52.122,-52.080,-52.040,-52.007,-51.984,-51.975,
--51.983,-52.012,-52.061,-52.132,-52.224,-52.334,-52.460,-52.597,-52.742,-52.890,-53.037,-53.178,-53.311,-53.433,-53.543,-53.639,
--53.722,-53.793,-53.854,-53.907,-53.954,-53.997,-54.040,-54.083,-54.127,-54.172,-54.219,-54.267,-54.313,-54.356,-54.394,-54.424,
--54.445,-54.456,-54.456,-54.444,-54.423,-54.393,-54.356,-54.316,-54.275,-54.238,-54.205,-54.182,-54.169,-54.167,-54.178,-54.201,
--54.233,-54.274,-54.319,-54.367,-54.412,-54.453,-54.485,-54.506,-54.515,-54.511,-54.493,-54.465,-54.427,-54.382,-54.334,-54.288,
--54.245,-54.211,-54.187,-54.176,-54.180,-54.197,-54.227,-54.267,-54.315,-54.366,-54.415,-54.459,-54.492,-54.510,-54.510,-54.488,
--54.443,-54.374,-54.281,-54.168,-54.037,-53.890,-53.734,-53.573,-53.413,-53.257,-53.110,-52.978,-52.862,-52.765,-52.688,-52.631,
--52.594,-52.575,-52.571,-52.581,-52.600,-52.627,-52.658,-52.689,-52.720,-52.748,-52.772,-52.792,-52.808,-52.820,-52.829,-52.837,
--52.846,-52.855,-52.868,-52.886,-52.907,-52.934,-52.966,-53.002,-53.041,-53.081,-53.120,-53.155,-53.185,-53.205,-53.215,-53.211,
--53.191,-53.154,-53.099,-53.025,-52.932,-52.822,-52.694,-52.552,-52.397,-52.231,-52.059,-51.882,-51.703,-51.526,-51.353,-51.187,
--51.028,-50.879,-50.741,-50.615,-50.500,-50.396,-50.303,-50.220,-50.147,-50.083,-50.026,-49.976,-49.933,-49.897,-49.866,-49.843,
--49.826,-49.817,-49.816,-49.823,-49.838,-49.862,-49.895,-49.935,-49.981,-50.032,-50.085,-50.138,-50.189,-50.234,-50.270,-50.293,
--50.302,-50.293,-50.264,-50.214,-50.142,-50.048,-49.932,-49.796,-49.642,-49.472,-49.291,-49.100,-48.904,-48.707,-48.511,-48.320,
--48.135,-47.960,-47.795,-47.640,-47.496,-47.360,-47.233,-47.110,-46.991,-46.871,-46.749,-46.620,-46.483,-46.334,-46.172,-45.995,
--45.802,-45.593,-45.369,-45.130,-44.878,-44.615,-44.344,-44.068,-43.790,-43.514,-43.243,-42.980,-42.730,-42.494,-42.276,-42.076,
--41.897,-41.740,-41.604,-41.489,-41.394,-41.318,-41.258,-41.212,-41.176,-41.149,-41.126,-41.106,-41.083,-41.057,-41.025,-40.986,
--40.937,-40.878,-40.809,-40.731,-40.645,-40.551,-40.452,-40.349,-40.245,-40.140,-40.037,-39.937,-39.841,-39.749,-39.662,-39.579,
--39.499,-39.422,-39.345,-39.267,-39.187,-39.101,-39.010,-38.911,-38.805,-38.689,-38.565,-38.434,-38.296,-38.153,-38.008,-37.862,
--37.719,-37.581,-37.451,-37.331,-37.224,-37.131,-37.053,-36.991,-36.944,-36.913,-36.894,-36.887,-36.887,-36.893,-36.901,-36.907,
--36.907,-36.899,-36.879,-36.846,-36.796,-36.729,-36.644,-36.543,-36.425,-36.293,-36.149,-35.997,-35.838,-35.677,-35.516,-35.358,
--35.205,-35.060,-34.923,-34.794,-34.673,-34.559,-34.449,-34.342,-34.234,-34.122,-34.005,-33.879,-33.743,-33.596,-33.436,-33.265,
--33.083,-32.893,-32.696,-32.495,-32.293,-32.093,-31.897,-31.708,-31.526,-31.351,-31.183,-31.021,-30.862,-30.703,-30.542,-30.374,
--30.196,-30.006,-29.801,-29.581,-29.344,-29.092,-28.827,-28.552,-28.271,-27.987,-27.705,-27.430,-27.166,-26.913,-26.676,-26.454,
--26.246,-26.050,-25.864,-25.682,-25.500,-25.314,-25.118,-24.908,-24.682,-24.438,-24.175,-23.894,-23.599,-23.294,-22.983,-22.672,
--22.367,-22.074,-21.798,-21.543,-21.310,-21.100,-20.912,-20.742,-20.586,-20.439,-20.293,-20.142,-19.981,-19.803,-19.607,-19.390,
--19.154,-18.902,-18.641,-18.378,-18.124,-17.890,-17.689,-17.531,-17.427,-17.388,-17.419,-17.525,-17.706,-17.961,-18.284,-18.667,
--19.097,-19.564,-20.051,-20.546,-21.033,-21.501,-21.936,-22.332,-22.681,-22.979,-23.226,-23.424,-23.576,-23.689,-23.769,-23.823,
--23.858,-23.881,-23.898,-23.911,-23.924,-23.936,-23.947,-23.954,-23.954,-23.943,-23.916,-23.871,-23.805,-23.717,-23.605,-23.473,
--23.323,-23.160,-22.989,-22.817,-22.650,-22.496,-22.360,-22.247,-22.159,-22.100,-22.068,-22.060,-22.074,-22.104,-22.143,-22.183,
--22.217,-22.239,-22.241,-22.218,-22.166,-22.084,-21.971,-21.830,-21.664,-21.478,-21.278,-21.071,-20.865,-20.667,-20.483,-20.319,
--20.178,-20.062,-19.974,-19.911,-19.872,-19.852,-19.846,-19.850,-19.856,-19.860,-19.855,-19.837,-19.804,-19.752,-19.680,-19.590,
--19.484,-19.363,-19.233,-19.097,-18.961,-18.830,-18.708,-18.600,-18.509,-18.437,-18.385,-18.355,-18.345,-18.354,-18.380,-18.419,
--18.469,-18.526,-18.586,-18.648,-18.707,-18.762,-18.811,-18.853,-18.889,-18.917,-18.938,-18.955,-18.966,-18.976,-18.983,-18.991,
--18.999,-19.009,-19.022,-19.037,-19.056,-19.077,-19.101,-19.127,-19.154,-19.182,-19.210,-19.237,-19.262,-19.283,-19.300,-19.311,
--19.315,-19.311,-19.296,-19.269,-19.229,-19.173,-19.101,-19.010,-18.900,-18.770,-18.619,-18.448,-18.256,-18.045,-17.818,-17.575,
--17.321,-17.058,-16.790,-16.522,-16.257,-16.000,-15.756,-15.529,-15.322,-15.139,-14.983,-14.856,-14.759,-14.695,-14.662,-14.661,
--14.690,-14.747,-14.830,-14.936,-15.060,-15.199,-15.349,-15.506,-15.665,-15.821,-15.972,-16.112,-16.239,-16.350,-16.442,-16.514,
--16.565,-16.594,-16.602,-16.588,-16.556,-16.505,-16.439,-16.360,-16.270,-16.173,-16.072,-15.970,-15.869,-15.774,-15.685,-15.608,
--15.543,-15.493,-15.460,-15.446,-15.452,-15.479,-15.527,-15.596,-15.686,-15.794,-15.919,-16.057,-16.205,-16.359,-16.513,-16.662,
--16.801,-16.923,-17.022,-17.094,-17.132,-17.132,-17.091,-17.008,-16.880,-16.709,-16.496,-16.245,-15.959,-15.645,-15.308,-14.956,
--14.595,-14.233,-13.877,-13.533,-13.207,-12.903,-12.625,-12.376,-12.157,-11.970,-11.813,-11.685,-11.585,-11.511,-11.460,-11.429,
--11.417,-11.421,-11.438,-11.467,-11.505,-11.552,-11.606,-11.664,-11.726,-11.789,-11.852,-11.912,-11.967,-12.015,-12.054,-12.080,
--12.093,-12.090,-12.070,-12.032,-11.977,-11.905,-11.818,-11.717,-11.606,-11.488,-11.365,-11.242,-11.122,-11.008,-10.903,-10.809,
--10.728,-10.660,-10.606,-10.565,-10.536,-10.517,-10.505,-10.499,-10.496,-10.493,-10.489,-10.481,-10.468,-10.448,-10.421,-10.386,
--10.344,-10.294,-10.238,-10.174,-10.105,-10.030,-9.951,-9.866,-9.777,-9.684,-9.587,-9.485,-9.380,-9.272,-9.161,-9.047,
--8.932,-8.816,-8.700,-8.585,-8.472,-8.362,-8.254,-8.149,-8.047,-7.947,-7.849,-7.750,-7.650,-7.547,-7.441,-7.329,
--7.211,-7.088,-6.958,-6.824,-6.685,-6.546,-6.408,-6.273,-6.146,-6.029,-5.924,-5.835,-5.763,-5.708,-5.670,-5.649,
--5.643,-5.648,-5.661,-5.678,-5.694,-5.705,-6.405,-6.381,-6.347,-6.299,-6.237,-6.158,-6.064,-5.954,-5.831,-5.696,
--5.552,-5.401,-5.246,-5.090,-4.936,-4.786,-4.641,-4.503,-4.372,-4.248,-4.131,-4.019,-3.911,-3.806,-3.701,-3.596,
--3.489,-3.380,-3.266,-3.149,-3.028,-2.904,-2.778,-2.652,-2.526,-2.402,-2.281,-2.165,-2.054,-1.949,-1.850,-1.757,
--1.669,-1.585,-1.505,-1.426,-1.347,-1.268,-1.186,-1.101,-1.013,-.919,-.821,-.719,-.613,-.503,-.391,-.277,
--.163,-.050,.062,.171,.278,.381,.480,.576,.668,.757,.844,.928,1.010,1.092,1.173,1.253,
-1.335,1.417,1.500,1.585,1.671,1.759,1.850,1.942,2.036,2.133,2.232,2.333,2.437,2.543,2.650,2.760,
-2.870,2.982,3.094,3.206,3.317,3.427,3.534,3.638,3.739,3.835,3.928,4.015,4.097,4.174,4.245,4.312,
-4.374,4.431,4.483,4.532,4.576,4.616,4.652,4.683,4.709,4.729,4.743,4.750,4.750,4.740,4.722,4.693,
-4.655,4.605,4.546,4.475,4.396,4.307,4.211,4.109,4.002,3.893,3.783,3.674,3.569,3.469,3.377,3.293,
-3.220,3.159,3.110,3.074,3.051,3.041,3.045,3.062,3.090,3.130,3.181,3.242,3.312,3.390,3.477,3.571,
-3.673,3.781,3.896,4.018,4.146,4.280,4.420,4.564,4.712,4.863,5.016,5.168,5.317,5.463,5.603,5.734,
-5.855,5.964,6.059,6.140,6.206,6.256,6.290,6.311,6.318,6.314,6.301,6.280,6.256,6.230,6.204,6.181,
-6.163,6.150,6.144,6.144,6.151,6.164,6.182,6.203,6.226,6.249,6.272,6.293,6.311,6.328,6.342,6.357,
-6.373,6.393,6.421,6.458,6.510,6.578,6.666,6.776,6.910,7.070,7.254,7.462,7.692,7.940,8.202,8.473,
-8.746,9.015,9.274,9.515,9.733,9.921,10.075,10.190,10.264,10.295,10.283,10.229,10.137,10.009,9.850,9.667,
-9.464,9.250,9.029,8.807,8.592,8.386,8.195,8.020,7.863,7.725,7.605,7.500,7.407,7.324,7.246,7.168,
-7.087,6.997,6.896,6.780,6.648,6.497,6.329,6.145,5.946,5.737,5.520,5.301,5.084,4.875,4.678,4.498,
-4.339,4.205,4.097,4.016,3.963,3.937,3.936,3.957,3.996,4.051,4.116,4.188,4.262,4.335,4.405,4.468,
-4.523,4.569,4.606,4.636,4.658,4.676,4.690,4.703,4.716,4.731,4.750,4.772,4.798,4.828,4.860,4.893,
-4.925,4.953,4.976,4.991,4.996,4.990,4.971,4.939,4.894,4.837,4.768,4.689,4.603,4.511,4.415,4.318,
-4.221,4.127,4.037,3.950,3.868,3.791,3.716,3.643,3.571,3.497,3.421,3.339,3.252,3.157,3.053,2.940,
-2.819,2.688,2.549,2.403,2.251,2.094,1.932,1.769,1.603,1.437,1.270,1.104,.937,.772,.606,.440,
-.273,.106,-.062,-.230,-.399,-.567,-.736,-.903,-1.069,-1.233,-1.396,-1.558,-1.719,-1.880,-2.044,-2.213,
--2.388,-2.574,-2.772,-2.986,-3.219,-3.473,-3.751,-4.053,-4.380,-4.731,-5.105,-5.498,-5.908,-6.330,-6.759,-7.189,
--7.614,-8.030,-8.430,-8.810,-9.168,-9.499,-9.804,-10.082,-10.335,-10.565,-10.776,-10.972,-11.160,-11.344,-11.530,-11.723,
--11.928,-12.148,-12.387,-12.646,-12.925,-13.224,-13.540,-13.871,-14.213,-14.561,-14.912,-15.260,-15.602,-15.935,-16.254,-16.558,
--16.846,-17.118,-17.375,-17.617,-17.848,-18.070,-18.285,-18.498,-18.710,-18.925,-19.145,-19.371,-19.603,-19.844,-20.091,-20.345,
--20.603,-20.865,-21.129,-21.393,-21.654,-21.914,-22.170,-22.421,-22.670,-22.915,-23.159,-23.402,-23.647,-23.895,-24.149,-24.409,
--24.678,-24.956,-25.244,-25.541,-25.848,-26.164,-26.485,-26.812,-27.140,-27.468,-27.793,-28.113,-28.425,-28.728,-29.019,-29.299,
--29.566,-29.820,-30.062,-30.292,-30.514,-30.727,-30.933,-31.136,-31.336,-31.536,-31.738,-31.942,-32.150,-32.363,-32.581,-32.805,
--33.035,-33.270,-33.509,-33.754,-34.002,-34.253,-34.508,-34.765,-35.024,-35.285,-35.548,-35.812,-36.078,-36.345,-36.612,-36.880,
--37.146,-37.411,-37.673,-37.930,-38.181,-38.424,-38.658,-38.881,-39.091,-39.287,-39.468,-39.634,-39.785,-39.920,-40.042,-40.152,
--40.251,-40.341,-40.427,-40.509,-40.591,-40.676,-40.766,-40.864,-40.970,-41.086,-41.213,-41.350,-41.498,-41.656,-41.821,-41.992,
--42.168,-42.346,-42.524,-42.701,-42.875,-43.045,-43.211,-43.372,-43.531,-43.686,-43.841,-43.996,-44.155,-44.319,-44.491,-44.673,
--44.867,-45.075,-45.298,-45.536,-45.790,-46.057,-46.338,-46.629,-46.928,-47.232,-47.537,-47.840,-48.138,-48.426,-48.702,-48.963,
--49.206,-49.431,-49.636,-49.820,-49.985,-50.131,-50.261,-50.376,-50.478,-50.571,-50.657,-50.738,-50.816,-50.893,-50.971,-51.050,
--51.129,-51.209,-51.288,-51.364,-51.435,-51.498,-51.552,-51.594,-51.622,-51.633,-51.628,-51.604,-51.562,-51.502,-51.427,-51.339,
--51.239,-51.131,-51.020,-50.907,-50.798,-50.696,-50.605,-50.526,-50.463,-50.417,-50.389,-50.379,-50.386,-50.409,-50.447,-50.495,
--50.551,-50.612,-50.674,-50.734,-50.787,-50.831,-50.864,-50.882,-50.885,-50.872,-50.845,-50.804,-50.751,-50.692,-50.629,-50.569,
--50.518,-50.482,-50.468,-50.483,-50.534,-50.626,-50.765,-50.956,-51.199,-51.497,-51.848,-52.250,-52.696,-53.180,-53.692,-54.223,
--54.760,-55.290,-55.801,-56.279,-56.712,-57.088,-57.398,-57.634,-57.790,-57.864,-57.856,-57.768,-57.606,-57.377,-57.091,-56.758,
--56.391,-56.002,-55.602,-55.204,-54.818,-54.452,-54.113,-53.807,-53.536,-53.301,-53.100,-52.932,-52.793,-52.677,-52.579,-52.495,
--52.420,-52.349,-52.280,-52.209,-52.137,-52.062,-51.987,-51.912,-51.840,-51.774,-51.715,-51.667,-51.630,-51.606,-51.594,-51.595,
--51.605,-51.625,-51.650,-51.678,-51.705,-51.730,-51.749,-51.761,-51.765,-51.762,-51.751,-51.735,-51.716,-51.697,-51.681,-51.672,
--51.673,-51.687,-51.716,-51.761,-51.824,-51.904,-51.999,-52.108,-52.228,-52.356,-52.488,-52.621,-52.752,-52.878,-52.995,-53.103,
--53.201,-53.287,-53.362,-53.427,-53.483,-53.531,-53.574,-53.612,-53.647,-53.679,-53.710,-53.739,-53.766,-53.791,-53.811,-53.827,
--53.838,-53.841,-53.838,-53.827,-53.809,-53.785,-53.755,-53.723,-53.689,-53.657,-53.628,-53.605,-53.589,-53.582,-53.585,-53.598,
--53.620,-53.650,-53.687,-53.727,-53.769,-53.809,-53.845,-53.874,-53.894,-53.905,-53.904,-53.892,-53.871,-53.841,-53.805,-53.765,
--53.725,-53.687,-53.654,-53.629,-53.614,-53.609,-53.616,-53.633,-53.660,-53.694,-53.733,-53.773,-53.811,-53.843,-53.867,-53.879,
--53.876,-53.858,-53.823,-53.771,-53.703,-53.620,-53.526,-53.423,-53.313,-53.201,-53.089,-52.981,-52.880,-52.787,-52.705,-52.635,
--52.576,-52.530,-52.494,-52.469,-52.453,-52.445,-52.443,-52.446,-52.452,-52.462,-52.475,-52.490,-52.508,-52.530,-52.556,-52.587,
--52.623,-52.665,-52.713,-52.768,-52.828,-52.893,-52.960,-53.029,-53.096,-53.159,-53.214,-53.260,-53.294,-53.311,-53.311,-53.292,
--53.251,-53.190,-53.107,-53.003,-52.881,-52.742,-52.588,-52.423,-52.250,-52.071,-51.891,-51.712,-51.537,-51.368,-51.207,-51.056,
--50.915,-50.785,-50.664,-50.554,-50.452,-50.358,-50.270,-50.186,-50.106,-50.029,-49.954,-49.881,-49.810,-49.741,-49.675,-49.613,
--49.557,-49.508,-49.467,-49.435,-49.413,-49.402,-49.403,-49.413,-49.434,-49.462,-49.497,-49.535,-49.573,-49.610,-49.641,-49.664,
--49.675,-49.672,-49.653,-49.617,-49.563,-49.491,-49.401,-49.295,-49.174,-49.043,-48.902,-48.755,-48.606,-48.458,-48.312,-48.172,
--48.039,-47.914,-47.798,-47.690,-47.588,-47.492,-47.399,-47.306,-47.209,-47.106,-46.993,-46.867,-46.726,-46.567,-46.388,-46.189,
--45.969,-45.729,-45.471,-45.197,-44.909,-44.611,-44.306,-43.999,-43.693,-43.393,-43.102,-42.824,-42.562,-42.319,-42.097,-41.897,
--41.720,-41.567,-41.435,-41.325,-41.235,-41.162,-41.105,-41.060,-41.025,-40.998,-40.974,-40.953,-40.931,-40.907,-40.878,-40.845,
--40.806,-40.760,-40.708,-40.651,-40.587,-40.519,-40.447,-40.373,-40.297,-40.221,-40.145,-40.070,-39.996,-39.924,-39.854,-39.786,
--39.719,-39.652,-39.584,-39.516,-39.445,-39.371,-39.293,-39.210,-39.122,-39.030,-38.932,-38.830,-38.725,-38.617,-38.508,-38.399,
--38.292,-38.190,-38.093,-38.004,-37.924,-37.854,-37.796,-37.750,-37.716,-37.693,-37.681,-37.678,-37.683,-37.693,-37.705,-37.717,
--37.725,-37.727,-37.720,-37.700,-37.667,-37.617,-37.550,-37.466,-37.363,-37.243,-37.106,-36.955,-36.791,-36.617,-36.435,-36.248,
--36.057,-35.867,-35.677,-35.489,-35.305,-35.125,-34.947,-34.773,-34.601,-34.429,-34.258,-34.084,-33.908,-33.729,-33.546,-33.360,
--33.171,-32.979,-32.787,-32.595,-32.406,-32.220,-32.039,-31.864,-31.695,-31.531,-31.373,-31.218,-31.065,-30.910,-30.751,-30.584,
--30.407,-30.216,-30.010,-29.787,-29.546,-29.287,-29.012,-28.723,-28.423,-28.117,-27.808,-27.501,-27.201,-26.912,-26.636,-26.377,
--26.136,-25.914,-25.709,-25.519,-25.342,-25.173,-25.009,-24.845,-24.677,-24.501,-24.314,-24.114,-23.899,-23.671,-23.429,-23.178,
--22.919,-22.657,-22.396,-22.140,-21.893,-21.658,-21.437,-21.233,-21.045,-20.873,-20.715,-20.568,-20.430,-20.297,-20.167,-20.035,
--19.901,-19.762,-19.618,-19.471,-19.322,-19.175,-19.033,-18.901,-18.785,-18.689,-18.619,-18.578,-18.570,-18.597,-18.661,-18.761,
--18.896,-19.065,-19.263,-19.487,-19.732,-19.994,-20.269,-20.553,-20.842,-21.133,-21.425,-21.714,-22.001,-22.283,-22.560,-22.831,
--23.095,-23.350,-23.593,-23.821,-24.031,-24.219,-24.381,-24.512,-24.607,-24.664,-24.679,-24.651,-24.580,-24.466,-24.314,-24.128,
--23.913,-23.679,-23.432,-23.183,-22.940,-22.713,-22.509,-22.335,-22.197,-22.097,-22.037,-22.015,-22.028,-22.072,-22.138,-22.220,
--22.309,-22.395,-22.471,-22.527,-22.558,-22.559,-22.525,-22.456,-22.352,-22.217,-22.054,-21.868,-21.668,-21.460,-21.251,-21.050,
--20.861,-20.691,-20.544,-20.423,-20.328,-20.258,-20.212,-20.186,-20.175,-20.175,-20.180,-20.184,-20.184,-20.173,-20.149,-20.109,
--20.052,-19.978,-19.888,-19.784,-19.671,-19.550,-19.427,-19.306,-19.192,-19.087,-18.997,-18.922,-18.866,-18.830,-18.813,-18.815,
--18.834,-18.869,-18.917,-18.975,-19.041,-19.110,-19.182,-19.253,-19.321,-19.384,-19.442,-19.494,-19.539,-19.578,-19.611,-19.639,
--19.664,-19.686,-19.708,-19.729,-19.751,-19.776,-19.803,-19.833,-19.866,-19.903,-19.942,-19.982,-20.023,-20.063,-20.099,-20.130,
--20.154,-20.167,-20.168,-20.153,-20.121,-20.068,-19.993,-19.895,-19.771,-19.621,-19.445,-19.244,-19.018,-18.770,-18.502,-18.218,
--17.921,-17.616,-17.307,-16.999,-16.697,-16.406,-16.131,-15.876,-15.645,-15.442,-15.269,-15.128,-15.020,-14.947,-14.907,-14.901,
--14.925,-14.978,-15.057,-15.160,-15.281,-15.418,-15.567,-15.724,-15.885,-16.046,-16.204,-16.355,-16.497,-16.626,-16.740,-16.838,
--16.917,-16.977,-17.016,-17.034,-17.032,-17.010,-16.969,-16.911,-16.836,-16.749,-16.651,-16.546,-16.437,-16.328,-16.223,-16.127,
--16.043,-15.976,-15.929,-15.905,-15.908,-15.940,-16.001,-16.093,-16.213,-16.361,-16.533,-16.725,-16.932,-17.148,-17.366,-17.580,
--17.781,-17.962,-18.115,-18.235,-18.315,-18.351,-18.339,-18.278,-18.167,-18.007,-17.801,-17.553,-17.269,-16.956,-16.620,-16.270,
--15.913,-15.557,-15.210,-14.877,-14.565,-14.277,-14.017,-13.787,-13.588,-13.419,-13.278,-13.164,-13.074,-13.005,-12.954,-12.917,
--12.892,-12.876,-12.867,-12.863,-12.864,-12.868,-12.875,-12.885,-12.897,-12.912,-12.929,-12.948,-12.967,-12.986,-13.004,-13.018,
--13.027,-13.029,-13.021,-13.004,-12.974,-12.932,-12.876,-12.808,-12.727,-12.635,-12.534,-12.426,-12.314,-12.200,-12.087,-11.977,
--11.873,-11.778,-11.692,-11.617,-11.553,-11.500,-11.458,-11.426,-11.403,-11.386,-11.374,-11.365,-11.358,-11.350,-11.340,-11.326,
--11.308,-11.284,-11.253,-11.215,-11.170,-11.117,-11.056,-10.988,-10.913,-10.831,-10.742,-10.647,-10.547,-10.441,-10.331,-10.218,
--10.102,-9.983,-9.864,-9.744,-9.625,-9.506,-9.388,-9.272,-9.157,-9.042,-8.928,-8.813,-8.698,-8.580,-8.460,-8.336,
--8.208,-8.077,-7.943,-7.805,-7.665,-7.525,-7.387,-7.252,-7.122,-7.000,-6.888,-6.788,-6.701,-6.627,-6.568,-6.521,
--6.488,-6.464,-6.449,-6.439,-6.430,-6.420,-6.405,-6.805,-6.781,-6.748,-6.704,-6.648,-6.579,-6.495,-6.398,-6.288,
--6.166,-6.033,-5.894,-5.748,-5.600,-5.450,-5.303,-5.158,-5.018,-4.884,-4.756,-4.634,-4.518,-4.407,-4.301,-4.197,
--4.096,-3.994,-3.892,-3.788,-3.682,-3.573,-3.461,-3.347,-3.230,-3.112,-2.994,-2.875,-2.759,-2.644,-2.533,-2.426,
--2.323,-2.224,-2.130,-2.040,-1.953,-1.870,-1.788,-1.708,-1.628,-1.547,-1.465,-1.381,-1.295,-1.206,-1.113,-1.018,
--.920,-.819,-.716,-.611,-.505,-.399,-.293,-.187,-.082,.022,.124,.223,.321,.417,.510,.601,
-.690,.777,.863,.948,1.032,1.116,1.200,1.285,1.371,1.459,1.549,1.641,1.736,1.834,1.935,2.039,
-2.145,2.254,2.365,2.477,2.590,2.704,2.816,2.927,3.036,3.143,3.245,3.344,3.438,3.527,3.612,3.691,
-3.765,3.834,3.897,3.956,4.010,4.059,4.103,4.141,4.174,4.201,4.222,4.235,4.240,4.236,4.223,4.200,
-4.167,4.123,4.068,4.003,3.928,3.843,3.751,3.652,3.547,3.440,3.331,3.224,3.119,3.020,2.928,2.845,
-2.772,2.711,2.663,2.628,2.606,2.598,2.603,2.621,2.651,2.692,2.743,2.803,2.872,2.948,3.032,3.123,
-3.221,3.325,3.435,3.552,3.676,3.805,3.941,4.082,4.227,4.376,4.527,4.679,4.829,4.976,5.117,5.249,
-5.371,5.480,5.574,5.653,5.715,5.761,5.790,5.803,5.802,5.789,5.767,5.739,5.707,5.675,5.646,5.622,
-5.606,5.600,5.604,5.618,5.643,5.677,5.719,5.765,5.815,5.865,5.913,5.956,5.993,6.023,6.045,6.059,
-6.068,6.073,6.077,6.084,6.098,6.123,6.165,6.227,6.313,6.426,6.568,6.739,6.939,7.166,7.416,7.685,
-7.968,8.256,8.543,8.822,9.083,9.321,9.526,9.695,9.822,9.903,9.937,9.924,9.866,9.765,9.627,9.457,
-9.262,9.049,8.826,8.600,8.379,8.168,7.973,7.797,7.644,7.514,7.406,7.319,7.249,7.193,7.145,7.099,
-7.051,6.995,6.925,6.839,6.732,6.603,6.451,6.277,6.084,5.875,5.653,5.425,5.196,4.972,4.760,4.563,
-4.389,4.239,4.118,4.027,3.967,3.936,3.933,3.955,3.998,4.058,4.130,4.209,4.291,4.371,4.447,4.515,
-4.574,4.624,4.663,4.694,4.717,4.735,4.750,4.766,4.784,4.807,4.836,4.872,4.916,4.967,5.024,5.085,
-5.146,5.207,5.262,5.309,5.344,5.366,5.371,5.359,5.327,5.277,5.209,5.124,5.024,4.913,4.792,4.666,
-4.537,4.408,4.282,4.160,4.045,3.936,3.833,3.738,3.647,3.560,3.476,3.391,3.304,3.213,3.116,3.012,
-2.900,2.779,2.649,2.511,2.364,2.211,2.052,1.888,1.721,1.553,1.384,1.215,1.046,.880,.714,.551,
-.388,.226,.065,-.096,-.258,-.420,-.584,-.749,-.915,-1.083,-1.253,-1.425,-1.600,-1.778,-1.960,-2.147,
--2.341,-2.543,-2.756,-2.980,-3.217,-3.470,-3.740,-4.027,-4.333,-4.656,-4.997,-5.354,-5.725,-6.107,-6.496,-6.890,
--7.283,-7.672,-8.052,-8.421,-8.774,-9.110,-9.426,-9.722,-9.998,-10.255,-10.496,-10.721,-10.936,-11.144,-11.348,-11.553,
--11.763,-11.980,-12.207,-12.446,-12.699,-12.965,-13.245,-13.537,-13.838,-14.147,-14.461,-14.776,-15.091,-15.402,-15.707,-16.005,
--16.294,-16.574,-16.844,-17.106,-17.361,-17.610,-17.854,-18.096,-18.338,-18.580,-18.824,-19.072,-19.322,-19.577,-19.834,-20.093,
--20.353,-20.613,-20.872,-21.128,-21.381,-21.629,-21.873,-22.113,-22.349,-22.583,-22.815,-23.048,-23.284,-23.524,-23.771,-24.026,
--24.290,-24.565,-24.850,-25.146,-25.451,-25.765,-26.085,-26.410,-26.737,-27.062,-27.384,-27.700,-28.007,-28.305,-28.590,-28.862,
--29.122,-29.369,-29.603,-29.827,-30.041,-30.247,-30.448,-30.645,-30.840,-31.036,-31.233,-31.433,-31.636,-31.844,-32.056,-32.273,
--32.493,-32.717,-32.944,-33.174,-33.406,-33.640,-33.876,-34.113,-34.352,-34.593,-34.837,-35.084,-35.335,-35.589,-35.848,-36.111,
--36.377,-36.646,-36.917,-37.188,-37.457,-37.722,-37.982,-38.232,-38.472,-38.699,-38.911,-39.107,-39.286,-39.448,-39.592,-39.719,
--39.831,-39.930,-40.019,-40.099,-40.175,-40.248,-40.323,-40.402,-40.487,-40.581,-40.685,-40.800,-40.927,-41.065,-41.214,-41.372,
--41.539,-41.712,-41.889,-42.068,-42.248,-42.427,-42.604,-42.777,-42.947,-43.113,-43.277,-43.439,-43.601,-43.764,-43.931,-44.104,
--44.284,-44.474,-44.674,-44.887,-45.113,-45.352,-45.603,-45.867,-46.141,-46.424,-46.713,-47.005,-47.298,-47.589,-47.874,-48.150,
--48.415,-48.666,-48.902,-49.120,-49.321,-49.503,-49.666,-49.811,-49.940,-50.052,-50.151,-50.237,-50.312,-50.378,-50.437,-50.490,
--50.539,-50.583,-50.624,-50.662,-50.696,-50.727,-50.752,-50.771,-50.784,-50.789,-50.786,-50.773,-50.750,-50.717,-50.675,-50.624,
--50.565,-50.499,-50.428,-50.355,-50.282,-50.210,-50.144,-50.084,-50.033,-49.994,-49.968,-49.955,-49.957,-49.973,-50.003,-50.046,
--50.100,-50.163,-50.231,-50.303,-50.375,-50.443,-50.505,-50.558,-50.599,-50.627,-50.640,-50.639,-50.624,-50.598,-50.562,-50.522,
--50.481,-50.445,-50.421,-50.415,-50.432,-50.481,-50.565,-50.691,-50.861,-51.079,-51.345,-51.657,-52.013,-52.408,-52.835,-53.286,
--53.751,-54.219,-54.680,-55.121,-55.531,-55.899,-56.215,-56.472,-56.663,-56.784,-56.833,-56.811,-56.720,-56.565,-56.354,-56.094,
--55.796,-55.469,-55.124,-54.771,-54.421,-54.081,-53.758,-53.460,-53.188,-52.947,-52.736,-52.554,-52.400,-52.270,-52.160,-52.066,
--51.983,-51.909,-51.839,-51.770,-51.702,-51.633,-51.563,-51.493,-51.424,-51.359,-51.299,-51.246,-51.202,-51.170,-51.149,-51.140,
--51.143,-51.157,-51.180,-51.210,-51.244,-51.281,-51.317,-51.351,-51.381,-51.405,-51.424,-51.436,-51.444,-51.448,-51.451,-51.454,
--51.460,-51.472,-51.492,-51.521,-51.562,-51.615,-51.680,-51.757,-51.845,-51.942,-52.047,-52.157,-52.269,-52.381,-52.490,-52.595,
--52.694,-52.784,-52.866,-52.938,-53.002,-53.056,-53.102,-53.141,-53.173,-53.199,-53.220,-53.237,-53.249,-53.258,-53.263,-53.264,
--53.261,-53.254,-53.243,-53.228,-53.210,-53.188,-53.163,-53.137,-53.111,-53.086,-53.064,-53.046,-53.033,-53.027,-53.027,-53.035,
--53.049,-53.071,-53.097,-53.128,-53.160,-53.193,-53.225,-53.252,-53.275,-53.290,-53.298,-53.297,-53.289,-53.273,-53.250,-53.223,
--53.193,-53.162,-53.132,-53.106,-53.085,-53.071,-53.065,-53.068,-53.078,-53.097,-53.123,-53.153,-53.187,-53.221,-53.254,-53.284,
--53.308,-53.324,-53.331,-53.329,-53.317,-53.294,-53.262,-53.221,-53.173,-53.119,-53.061,-53.001,-52.940,-52.879,-52.819,-52.762,
--52.708,-52.657,-52.610,-52.566,-52.525,-52.486,-52.450,-52.417,-52.387,-52.359,-52.336,-52.316,-52.303,-52.295,-52.296,-52.305,
--52.323,-52.352,-52.391,-52.440,-52.498,-52.565,-52.637,-52.713,-52.790,-52.864,-52.933,-52.993,-53.042,-53.075,-53.090,-53.086,
--53.061,-53.014,-52.946,-52.857,-52.750,-52.625,-52.487,-52.337,-52.181,-52.021,-51.861,-51.703,-51.552,-51.408,-51.274,-51.151,
--51.039,-50.937,-50.845,-50.762,-50.685,-50.613,-50.544,-50.474,-50.403,-50.329,-50.251,-50.168,-50.080,-49.987,-49.891,-49.793,
--49.695,-49.599,-49.507,-49.420,-49.342,-49.274,-49.216,-49.169,-49.133,-49.108,-49.092,-49.083,-49.080,-49.079,-49.078,-49.074,
--49.063,-49.044,-49.014,-48.972,-48.916,-48.847,-48.764,-48.669,-48.563,-48.449,-48.329,-48.206,-48.083,-47.963,-47.848,-47.740,
--47.641,-47.552,-47.472,-47.401,-47.338,-47.280,-47.223,-47.166,-47.104,-47.032,-46.949,-46.849,-46.730,-46.589,-46.424,-46.234,
--46.020,-45.781,-45.520,-45.238,-44.940,-44.630,-44.310,-43.988,-43.666,-43.349,-43.043,-42.751,-42.476,-42.222,-41.991,-41.784,
--41.601,-41.444,-41.310,-41.198,-41.107,-41.034,-40.978,-40.934,-40.900,-40.874,-40.853,-40.835,-40.818,-40.800,-40.780,-40.758,
--40.732,-40.702,-40.668,-40.631,-40.590,-40.546,-40.498,-40.448,-40.396,-40.340,-40.283,-40.222,-40.159,-40.093,-40.023,-39.949,
--39.871,-39.789,-39.703,-39.612,-39.517,-39.418,-39.316,-39.211,-39.104,-38.997,-38.889,-38.784,-38.680,-38.581,-38.488,-38.400,
--38.321,-38.249,-38.187,-38.135,-38.093,-38.061,-38.039,-38.027,-38.023,-38.028,-38.038,-38.054,-38.073,-38.093,-38.113,-38.130,
--38.143,-38.149,-38.146,-38.132,-38.107,-38.068,-38.015,-37.947,-37.863,-37.764,-37.650,-37.521,-37.379,-37.225,-37.059,-36.884,
--36.700,-36.509,-36.313,-36.111,-35.906,-35.698,-35.487,-35.274,-35.059,-34.842,-34.623,-34.402,-34.181,-33.958,-33.735,-33.512,
--33.290,-33.071,-32.855,-32.644,-32.439,-32.241,-32.050,-31.867,-31.692,-31.523,-31.361,-31.203,-31.047,-30.891,-30.731,-30.566,
--30.391,-30.205,-30.005,-29.790,-29.558,-29.310,-29.047,-28.769,-28.480,-28.182,-27.880,-27.578,-27.279,-26.989,-26.710,-26.446,
--26.200,-25.973,-25.765,-25.576,-25.405,-25.248,-25.104,-24.967,-24.833,-24.700,-24.562,-24.416,-24.259,-24.090,-23.908,-23.713,
--23.505,-23.288,-23.063,-22.834,-22.606,-22.382,-22.166,-21.961,-21.770,-21.596,-21.439,-21.301,-21.180,-21.076,-20.986,-20.908,
--20.839,-20.777,-20.718,-20.660,-20.600,-20.538,-20.471,-20.401,-20.327,-20.250,-20.173,-20.098,-20.027,-19.963,-19.910,-19.870,
--19.846,-19.841,-19.857,-19.896,-19.960,-20.049,-20.165,-20.307,-20.476,-20.671,-20.891,-21.134,-21.398,-21.680,-21.978,-22.286,
--22.602,-22.919,-23.232,-23.537,-23.825,-24.093,-24.333,-24.540,-24.710,-24.838,-24.922,-24.959,-24.949,-24.894,-24.796,-24.660,
--24.491,-24.296,-24.083,-23.859,-23.633,-23.413,-23.207,-23.022,-22.862,-22.733,-22.636,-22.573,-22.541,-22.539,-22.561,-22.602,
--22.656,-22.716,-22.775,-22.825,-22.861,-22.876,-22.867,-22.831,-22.766,-22.674,-22.555,-22.414,-22.253,-22.079,-21.897,-21.713,
--21.533,-21.362,-21.204,-21.063,-20.942,-20.842,-20.764,-20.705,-20.664,-20.638,-20.622,-20.614,-20.609,-20.603,-20.591,-20.571,
--20.540,-20.497,-20.440,-20.371,-20.290,-20.199,-20.100,-19.997,-19.894,-19.793,-19.698,-19.613,-19.539,-19.481,-19.439,-19.415,
--19.409,-19.421,-19.450,-19.495,-19.553,-19.624,-19.703,-19.790,-19.880,-19.973,-20.064,-20.153,-20.238,-20.316,-20.388,-20.453,
--20.510,-20.560,-20.602,-20.639,-20.670,-20.697,-20.721,-20.742,-20.762,-20.782,-20.802,-20.822,-20.841,-20.860,-20.878,-20.892,
--20.901,-20.904,-20.897,-20.879,-20.846,-20.796,-20.726,-20.634,-20.519,-20.379,-20.213,-20.021,-19.804,-19.564,-19.303,-19.023,
--18.729,-18.425,-18.115,-17.805,-17.500,-17.205,-16.925,-16.665,-16.429,-16.221,-16.043,-15.898,-15.786,-15.708,-15.663,-15.650,
--15.667,-15.712,-15.781,-15.870,-15.977,-16.097,-16.226,-16.362,-16.500,-16.637,-16.771,-16.899,-17.019,-17.129,-17.227,-17.313,
--17.384,-17.441,-17.482,-17.507,-17.515,-17.507,-17.483,-17.444,-17.389,-17.320,-17.238,-17.147,-17.047,-16.942,-16.835,-16.731,
--16.632,-16.544,-16.470,-16.415,-16.382,-16.375,-16.395,-16.446,-16.527,-16.638,-16.778,-16.942,-17.128,-17.330,-17.542,-17.756,
--17.966,-18.164,-18.341,-18.491,-18.607,-18.684,-18.717,-18.703,-18.641,-18.531,-18.376,-18.179,-17.944,-17.678,-17.389,-17.084,
--16.770,-16.456,-16.150,-15.859,-15.588,-15.342,-15.124,-14.937,-14.782,-14.657,-14.560,-14.490,-14.441,-14.410,-14.393,-14.384,
--14.380,-14.376,-14.370,-14.358,-14.339,-14.312,-14.276,-14.233,-14.182,-14.126,-14.065,-14.002,-13.938,-13.875,-13.813,-13.753,
--13.696,-13.642,-13.590,-13.538,-13.487,-13.435,-13.380,-13.322,-13.259,-13.191,-13.118,-13.039,-12.954,-12.864,-12.771,-12.674,
--12.577,-12.479,-12.384,-12.291,-12.202,-12.119,-12.043,-11.973,-11.909,-11.853,-11.804,-11.760,-11.721,-11.687,-11.655,-11.625,
--11.595,-11.564,-11.530,-11.493,-11.452,-11.405,-11.351,-11.291,-11.224,-11.149,-11.067,-10.979,-10.884,-10.783,-10.677,-10.567,
--10.454,-10.340,-10.224,-10.108,-9.993,-9.879,-9.767,-9.658,-9.550,-9.444,-9.340,-9.236,-9.132,-9.027,-8.920,-8.810,
--8.697,-8.580,-8.459,-8.334,-8.207,-8.077,-7.946,-7.816,-7.688,-7.565,-7.448,-7.340,-7.241,-7.154,-7.078,-7.015,
--6.964,-6.924,-6.893,-6.870,-6.853,-6.838,-6.823,-6.805,-7.084,-7.068,-7.046,-7.016,-6.976,-6.924,-6.859,-6.781,
--6.689,-6.584,-6.467,-6.340,-6.205,-6.064,-5.920,-5.774,-5.629,-5.486,-5.348,-5.216,-5.090,-4.971,-4.859,-4.753,
--4.653,-4.557,-4.464,-4.374,-4.283,-4.193,-4.100,-4.005,-3.907,-3.805,-3.700,-3.591,-3.481,-3.368,-3.255,-3.142,
--3.031,-2.923,-2.817,-2.717,-2.621,-2.530,-2.444,-2.364,-2.288,-2.216,-2.148,-2.081,-2.015,-1.949,-1.881,-1.811,
--1.736,-1.657,-1.572,-1.482,-1.385,-1.282,-1.172,-1.057,-.938,-.814,-.687,-.559,-.429,-.301,-.174,-.050,
-.070,.186,.297,.402,.501,.595,.684,.769,.850,.928,1.004,1.080,1.156,1.233,1.313,1.396,
-1.482,1.573,1.668,1.767,1.870,1.977,2.088,2.200,2.314,2.429,2.544,2.657,2.769,2.878,2.983,3.085,
-3.181,3.274,3.361,3.442,3.518,3.589,3.653,3.711,3.762,3.807,3.843,3.872,3.891,3.902,3.902,3.891,
-3.869,3.836,3.791,3.734,3.667,3.589,3.501,3.406,3.304,3.197,3.088,2.978,2.870,2.766,2.669,2.579,
-2.499,2.431,2.375,2.332,2.302,2.287,2.285,2.295,2.318,2.352,2.397,2.450,2.512,2.582,2.658,2.740,
-2.828,2.922,3.021,3.125,3.234,3.349,3.469,3.594,3.724,3.857,3.993,4.130,4.266,4.400,4.530,4.653,
-4.768,4.871,4.962,5.039,5.101,5.148,5.180,5.196,5.200,5.192,5.176,5.153,5.127,5.102,5.079,5.062,
-5.052,5.053,5.065,5.089,5.123,5.168,5.220,5.279,5.341,5.404,5.463,5.517,5.562,5.597,5.621,5.634,
-5.635,5.628,5.614,5.597,5.582,5.573,5.575,5.594,5.634,5.700,5.795,5.921,6.080,6.270,6.490,6.737,
-7.005,7.290,7.583,7.876,8.163,8.434,8.682,8.900,9.080,9.219,9.314,9.362,9.363,9.319,9.235,9.114,
-8.962,8.787,8.597,8.398,8.199,8.005,7.824,7.661,7.517,7.396,7.298,7.222,7.164,7.121,7.089,7.062,
-7.034,6.998,6.951,6.887,6.802,6.694,6.561,6.405,6.226,6.027,5.814,5.590,5.363,5.138,4.921,4.719,
-4.537,4.379,4.250,4.151,4.084,4.047,4.040,4.059,4.101,4.161,4.235,4.317,4.402,4.487,4.566,4.638,
-4.700,4.752,4.793,4.824,4.848,4.867,4.885,4.904,4.928,4.959,5.000,5.052,5.116,5.192,5.279,5.374,
-5.474,5.576,5.675,5.766,5.846,5.909,5.952,5.972,5.966,5.934,5.873,5.786,5.675,5.540,5.387,5.219,
-5.039,4.853,4.665,4.478,4.297,4.123,3.959,3.806,3.665,3.535,3.415,3.304,3.200,3.100,3.002,2.904,
-2.803,2.697,2.585,2.466,2.340,2.205,2.063,1.915,1.760,1.601,1.439,1.274,1.109,.945,.781,.619,
-.460,.302,.146,-.009,-.163,-.318,-.473,-.631,-.792,-.956,-1.125,-1.300,-1.481,-1.669,-1.864,-2.068,
--2.281,-2.503,-2.735,-2.978,-3.231,-3.496,-3.773,-4.061,-4.361,-4.672,-4.994,-5.325,-5.664,-6.011,-6.362,-6.716,
--7.071,-7.423,-7.772,-8.115,-8.450,-8.775,-9.089,-9.391,-9.681,-9.960,-10.227,-10.484,-10.733,-10.974,-11.211,-11.445,
--11.679,-11.913,-12.151,-12.392,-12.639,-12.891,-13.150,-13.413,-13.682,-13.954,-14.230,-14.507,-14.784,-15.061,-15.336,-15.609,
--15.878,-16.144,-16.407,-16.667,-16.924,-17.180,-17.434,-17.688,-17.943,-18.198,-18.454,-18.711,-18.970,-19.229,-19.488,-19.747,
--20.005,-20.261,-20.514,-20.764,-21.011,-21.255,-21.495,-21.733,-21.970,-22.207,-22.446,-22.687,-22.934,-23.187,-23.448,-23.718,
--23.998,-24.288,-24.588,-24.897,-25.214,-25.536,-25.863,-26.192,-26.519,-26.843,-27.160,-27.470,-27.768,-28.055,-28.328,-28.588,
--28.834,-29.068,-29.289,-29.501,-29.703,-29.900,-30.091,-30.281,-30.470,-30.660,-30.852,-31.047,-31.246,-31.449,-31.655,-31.864,
--32.076,-32.288,-32.501,-32.713,-32.924,-33.134,-33.342,-33.549,-33.756,-33.962,-34.170,-34.381,-34.595,-34.815,-35.042,-35.276,
--35.518,-35.769,-36.027,-36.291,-36.561,-36.834,-37.107,-37.379,-37.646,-37.904,-38.152,-38.386,-38.605,-38.805,-38.987,-39.150,
--39.294,-39.419,-39.528,-39.623,-39.705,-39.780,-39.849,-39.916,-39.986,-40.060,-40.142,-40.234,-40.337,-40.454,-40.585,-40.729,
--40.885,-41.054,-41.232,-41.418,-41.610,-41.805,-42.002,-42.198,-42.391,-42.581,-42.766,-42.947,-43.122,-43.293,-43.462,-43.628,
--43.794,-43.963,-44.135,-44.313,-44.499,-44.693,-44.899,-45.116,-45.344,-45.584,-45.834,-46.094,-46.362,-46.635,-46.911,-47.188,
--47.463,-47.732,-47.992,-48.242,-48.477,-48.697,-48.899,-49.081,-49.244,-49.385,-49.507,-49.608,-49.691,-49.757,-49.807,-49.843,
--49.868,-49.884,-49.893,-49.898,-49.899,-49.899,-49.899,-49.900,-49.902,-49.907,-49.914,-49.922,-49.932,-49.942,-49.952,-49.962,
--49.969,-49.975,-49.977,-49.977,-49.975,-49.970,-49.964,-49.958,-49.953,-49.950,-49.952,-49.959,-49.974,-49.997,-50.029,-50.071,
--50.124,-50.186,-50.256,-50.334,-50.417,-50.503,-50.589,-50.671,-50.747,-50.813,-50.867,-50.907,-50.930,-50.937,-50.926,-50.899,
--50.859,-50.807,-50.749,-50.688,-50.631,-50.584,-50.551,-50.540,-50.555,-50.602,-50.685,-50.805,-50.965,-51.164,-51.400,-51.670,
--51.967,-52.286,-52.619,-52.958,-53.293,-53.614,-53.914,-54.183,-54.414,-54.601,-54.739,-54.824,-54.856,-54.835,-54.764,-54.646,
--54.486,-54.292,-54.070,-53.828,-53.574,-53.315,-53.058,-52.810,-52.575,-52.358,-52.162,-51.987,-51.834,-51.702,-51.591,-51.497,
--51.417,-51.350,-51.292,-51.241,-51.194,-51.150,-51.107,-51.065,-51.024,-50.985,-50.948,-50.915,-50.887,-50.865,-50.850,-50.843,
--50.844,-50.854,-50.873,-50.899,-50.931,-50.968,-51.008,-51.050,-51.093,-51.135,-51.174,-51.211,-51.245,-51.276,-51.304,-51.330,
--51.355,-51.381,-51.409,-51.439,-51.474,-51.513,-51.559,-51.610,-51.667,-51.730,-51.797,-51.869,-51.942,-52.017,-52.092,-52.165,
--52.235,-52.301,-52.362,-52.418,-52.467,-52.511,-52.549,-52.581,-52.608,-52.630,-52.648,-52.663,-52.674,-52.683,-52.689,-52.692,
--52.694,-52.694,-52.691,-52.687,-52.681,-52.674,-52.666,-52.657,-52.647,-52.638,-52.630,-52.624,-52.619,-52.617,-52.618,-52.622,
--52.629,-52.639,-52.651,-52.665,-52.679,-52.693,-52.705,-52.715,-52.721,-52.723,-52.720,-52.711,-52.698,-52.679,-52.656,-52.630,
--52.602,-52.572,-52.543,-52.516,-52.492,-52.473,-52.459,-52.451,-52.450,-52.455,-52.467,-52.483,-52.505,-52.530,-52.557,-52.585,
--52.612,-52.638,-52.661,-52.681,-52.697,-52.708,-52.714,-52.716,-52.714,-52.709,-52.701,-52.690,-52.677,-52.663,-52.648,-52.631,
--52.614,-52.596,-52.576,-52.555,-52.531,-52.506,-52.478,-52.448,-52.415,-52.381,-52.346,-52.311,-52.277,-52.246,-52.219,-52.197,
--52.182,-52.174,-52.175,-52.186,-52.205,-52.233,-52.269,-52.312,-52.359,-52.409,-52.458,-52.505,-52.547,-52.581,-52.605,-52.617,
--52.615,-52.599,-52.568,-52.522,-52.462,-52.390,-52.307,-52.216,-52.119,-52.020,-51.920,-51.822,-51.729,-51.641,-51.561,-51.488,
--51.422,-51.364,-51.312,-51.264,-51.218,-51.171,-51.122,-51.069,-51.008,-50.938,-50.858,-50.766,-50.663,-50.550,-50.426,-50.294,
--50.155,-50.013,-49.869,-49.727,-49.588,-49.456,-49.333,-49.220,-49.118,-49.027,-48.948,-48.879,-48.820,-48.767,-48.719,-48.674,
--48.628,-48.579,-48.524,-48.463,-48.392,-48.312,-48.223,-48.124,-48.016,-47.901,-47.782,-47.660,-47.538,-47.418,-47.304,-47.197,
--47.098,-47.010,-46.931,-46.863,-46.803,-46.751,-46.703,-46.656,-46.607,-46.553,-46.489,-46.412,-46.318,-46.205,-46.070,-45.911,
--45.728,-45.521,-45.292,-45.041,-44.772,-44.489,-44.195,-43.895,-43.593,-43.293,-43.001,-42.721,-42.455,-42.208,-41.981,-41.777,
--41.595,-41.436,-41.300,-41.186,-41.091,-41.014,-40.952,-40.902,-40.863,-40.832,-40.807,-40.785,-40.765,-40.745,-40.725,-40.704,
--40.681,-40.655,-40.628,-40.598,-40.567,-40.533,-40.497,-40.459,-40.417,-40.373,-40.324,-40.271,-40.212,-40.147,-40.075,-39.996,
--39.908,-39.813,-39.710,-39.599,-39.482,-39.359,-39.232,-39.103,-38.973,-38.844,-38.719,-38.600,-38.489,-38.387,-38.296,-38.218,
--38.153,-38.103,-38.066,-38.044,-38.035,-38.038,-38.053,-38.077,-38.110,-38.148,-38.190,-38.234,-38.278,-38.319,-38.357,-38.388,
--38.412,-38.427,-38.431,-38.425,-38.407,-38.376,-38.332,-38.274,-38.204,-38.120,-38.022,-37.912,-37.790,-37.655,-37.508,-37.349,
--37.180,-37.001,-36.811,-36.612,-36.403,-36.187,-35.962,-35.730,-35.491,-35.247,-34.998,-34.746,-34.490,-34.234,-33.977,-33.722,
--33.470,-33.222,-32.980,-32.745,-32.518,-32.300,-32.090,-31.889,-31.696,-31.511,-31.332,-31.157,-30.985,-30.812,-30.637,-30.458,
--30.270,-30.074,-29.866,-29.647,-29.415,-29.170,-28.913,-28.646,-28.371,-28.090,-27.808,-27.527,-27.251,-26.983,-26.727,-26.486,
--26.262,-26.056,-25.870,-25.702,-25.552,-25.419,-25.298,-25.188,-25.084,-24.983,-24.881,-24.776,-24.663,-24.541,-24.408,-24.264,
--24.110,-23.946,-23.775,-23.600,-23.424,-23.251,-23.086,-22.932,-22.793,-22.671,-22.571,-22.492,-22.436,-22.402,-22.390,-22.397,
--22.420,-22.456,-22.501,-22.551,-22.601,-22.648,-22.688,-22.717,-22.734,-22.736,-22.723,-22.694,-22.651,-22.596,-22.529,-22.455,
--22.377,-22.299,-22.223,-22.155,-22.098,-22.056,-22.031,-22.027,-22.045,-22.088,-22.155,-22.248,-22.364,-22.504,-22.665,-22.844,
--23.038,-23.244,-23.455,-23.669,-23.880,-24.084,-24.275,-24.449,-24.603,-24.732,-24.833,-24.906,-24.948,-24.959,-24.941,-24.894,
--24.823,-24.729,-24.617,-24.491,-24.357,-24.218,-24.081,-23.948,-23.824,-23.712,-23.615,-23.533,-23.467,-23.416,-23.379,-23.354,
--23.338,-23.328,-23.319,-23.309,-23.293,-23.268,-23.233,-23.183,-23.118,-23.038,-22.942,-22.832,-22.709,-22.575,-22.434,-22.288,
--22.141,-21.996,-21.856,-21.723,-21.600,-21.488,-21.389,-21.302,-21.228,-21.166,-21.114,-21.072,-21.036,-21.004,-20.976,-20.948,
--20.918,-20.886,-20.850,-20.809,-20.763,-20.712,-20.658,-20.601,-20.542,-20.483,-20.427,-20.375,-20.329,-20.291,-20.262,-20.245,
--20.240,-20.248,-20.270,-20.306,-20.355,-20.416,-20.489,-20.572,-20.663,-20.761,-20.864,-20.968,-21.072,-21.175,-21.273,-21.366,
--21.451,-21.528,-21.595,-21.652,-21.699,-21.736,-21.764,-21.782,-21.792,-21.796,-21.795,-21.788,-21.779,-21.767,-21.753,-21.738,
--21.721,-21.702,-21.680,-21.653,-21.620,-21.579,-21.528,-21.464,-21.385,-21.290,-21.176,-21.042,-20.888,-20.713,-20.517,-20.304,
--20.073,-19.828,-19.572,-19.310,-19.045,-18.781,-18.524,-18.278,-18.047,-17.834,-17.644,-17.478,-17.339,-17.228,-17.144,-17.088,
--17.057,-17.051,-17.067,-17.101,-17.151,-17.214,-17.285,-17.363,-17.443,-17.524,-17.603,-17.678,-17.747,-17.809,-17.864,-17.910,
--17.947,-17.975,-17.994,-18.003,-18.002,-17.991,-17.970,-17.940,-17.899,-17.849,-17.789,-17.721,-17.645,-17.563,-17.477,-17.389,
--17.302,-17.218,-17.142,-17.077,-17.026,-16.992,-16.979,-16.989,-17.024,-17.083,-17.169,-17.278,-17.408,-17.557,-17.720,-17.891,
--18.064,-18.232,-18.388,-18.526,-18.640,-18.722,-18.767,-18.773,-18.736,-18.656,-18.532,-18.368,-18.165,-17.930,-17.669,-17.387,
--17.094,-16.797,-16.504,-16.221,-15.957,-15.717,-15.505,-15.324,-15.178,-15.065,-14.984,-14.934,-14.911,-14.911,-14.927,-14.955,
--14.989,-15.024,-15.054,-15.074,-15.082,-15.074,-15.049,-15.006,-14.944,-14.865,-14.771,-14.665,-14.548,-14.423,-14.295,-14.166,
--14.038,-13.914,-13.795,-13.683,-13.579,-13.482,-13.393,-13.310,-13.233,-13.160,-13.089,-13.020,-12.951,-12.880,-12.807,-12.731,
--12.651,-12.567,-12.481,-12.391,-12.299,-12.206,-12.112,-12.020,-11.930,-11.842,-11.758,-11.679,-11.605,-11.536,-11.471,-11.412,
--11.356,-11.304,-11.254,-11.205,-11.156,-11.105,-11.052,-10.996,-10.935,-10.869,-10.798,-10.720,-10.637,-10.549,-10.455,-10.358,
--10.258,-10.156,-10.053,-9.952,-9.851,-9.754,-9.660,-9.570,-9.484,-9.403,-9.324,-9.249,-9.176,-9.104,-9.031,-8.956,
--8.878,-8.797,-8.710,-8.618,-8.520,-8.417,-8.309,-8.197,-8.083,-7.968,-7.855,-7.745,-7.640,-7.542,-7.454,-7.375,
--7.307,-7.251,-7.205,-7.170,-7.143,-7.123,-7.109,-7.096,-7.084,-7.426,-7.416,-7.404,-7.388,-7.364,-7.330,-7.286,
--7.229,-7.160,-7.077,-6.982,-6.876,-6.760,-6.635,-6.504,-6.369,-6.232,-6.096,-5.962,-5.833,-5.709,-5.591,-5.481,
--5.378,-5.281,-5.191,-5.106,-5.024,-4.945,-4.867,-4.788,-4.707,-4.624,-4.537,-4.446,-4.350,-4.251,-4.148,-4.042,
--3.934,-3.826,-3.719,-3.613,-3.511,-3.414,-3.322,-3.236,-3.156,-3.082,-3.015,-2.952,-2.894,-2.838,-2.784,-2.729,
--2.672,-2.611,-2.545,-2.471,-2.390,-2.300,-2.201,-2.092,-1.974,-1.848,-1.713,-1.573,-1.427,-1.278,-1.128,-.978,
--.830,-.686,-.548,-.416,-.291,-.174,-.065,.036,.129,.216,.298,.375,.450,.523,.597,.673,
-.751,.833,.921,1.014,1.113,1.219,1.330,1.446,1.568,1.693,1.821,1.952,2.083,2.214,2.343,2.471,
-2.595,2.715,2.830,2.940,3.044,3.141,3.231,3.313,3.387,3.453,3.509,3.555,3.591,3.615,3.628,3.628,
-3.615,3.590,3.551,3.499,3.435,3.358,3.271,3.174,3.068,2.957,2.841,2.724,2.607,2.492,2.383,2.282,
-2.189,2.108,2.039,1.983,1.942,1.915,1.903,1.905,1.921,1.949,1.988,2.038,2.097,2.163,2.237,2.317,
-2.401,2.490,2.583,2.679,2.779,2.882,2.988,3.097,3.209,3.322,3.437,3.553,3.668,3.781,3.891,3.997,
-4.096,4.188,4.271,4.343,4.405,4.455,4.493,4.521,4.539,4.548,4.550,4.548,4.543,4.539,4.536,4.539,
-4.548,4.565,4.591,4.626,4.670,4.722,4.780,4.842,4.905,4.967,5.024,5.074,5.114,5.143,5.159,5.161,
-5.151,5.129,5.098,5.061,5.022,4.987,4.960,4.947,4.953,4.983,5.041,5.131,5.254,5.412,5.604,5.828,
-6.080,6.356,6.649,6.952,7.259,7.560,7.847,8.114,8.352,8.556,8.721,8.843,8.922,8.956,8.947,8.899,
-8.815,8.702,8.565,8.412,8.249,8.084,7.921,7.767,7.627,7.501,7.394,7.303,7.229,7.169,7.118,7.074,
-7.030,6.982,6.925,6.854,6.765,6.657,6.526,6.374,6.200,6.008,5.800,5.581,5.357,5.133,4.915,4.709,
-4.521,4.355,4.216,4.105,4.025,3.976,3.956,3.964,3.997,4.050,4.118,4.198,4.283,4.370,4.455,4.534,
-4.605,4.667,4.719,4.762,4.797,4.828,4.857,4.887,4.922,4.965,5.019,5.086,5.166,5.261,5.369,5.488,
-5.616,5.749,5.882,6.009,6.127,6.228,6.309,6.365,6.392,6.387,6.349,6.276,6.171,6.034,5.868,5.678,
-5.467,5.242,5.007,4.767,4.527,4.293,4.067,3.854,3.655,3.473,3.306,3.155,3.019,2.896,2.783,2.678,
-2.577,2.479,2.380,2.278,2.172,2.059,1.939,1.811,1.676,1.534,1.386,1.234,1.077,.919,.760,.600,
-.442,.286,.131,-.022,-.174,-.326,-.478,-.631,-.788,-.950,-1.117,-1.292,-1.475,-1.668,-1.872,-2.086,
--2.312,-2.550,-2.799,-3.059,-3.330,-3.611,-3.900,-4.198,-4.504,-4.815,-5.131,-5.450,-5.772,-6.096,-6.420,-6.743,
--7.065,-7.384,-7.700,-8.012,-8.319,-8.622,-8.919,-9.212,-9.499,-9.781,-10.059,-10.332,-10.602,-10.869,-11.133,-11.394,
--11.654,-11.913,-12.171,-12.428,-12.685,-12.941,-13.196,-13.450,-13.704,-13.956,-14.207,-14.456,-14.703,-14.949,-15.194,-15.437,
--15.680,-15.922,-16.164,-16.406,-16.650,-16.895,-17.142,-17.391,-17.642,-17.895,-18.150,-18.407,-18.664,-18.922,-19.179,-19.435,
--19.689,-19.940,-20.189,-20.436,-20.680,-20.922,-21.163,-21.403,-21.645,-21.890,-22.139,-22.393,-22.655,-22.926,-23.206,-23.496,
--23.797,-24.107,-24.427,-24.755,-25.089,-25.428,-25.768,-26.107,-26.443,-26.772,-27.093,-27.403,-27.700,-27.984,-28.252,-28.506,
--28.746,-28.972,-29.186,-29.389,-29.585,-29.774,-29.960,-30.144,-30.328,-30.514,-30.703,-30.895,-31.090,-31.289,-31.490,-31.693,
--31.895,-32.097,-32.296,-32.492,-32.682,-32.867,-33.046,-33.220,-33.389,-33.554,-33.716,-33.879,-34.044,-34.213,-34.389,-34.573,
--34.768,-34.974,-35.193,-35.425,-35.669,-35.925,-36.189,-36.460,-36.735,-37.011,-37.283,-37.549,-37.805,-38.049,-38.276,-38.485,
--38.675,-38.845,-38.995,-39.126,-39.240,-39.338,-39.424,-39.501,-39.572,-39.642,-39.713,-39.789,-39.874,-39.969,-40.076,-40.197,
--40.333,-40.482,-40.646,-40.822,-41.008,-41.202,-41.402,-41.606,-41.810,-42.013,-42.213,-42.408,-42.596,-42.778,-42.953,-43.122,
--43.286,-43.446,-43.604,-43.762,-43.923,-44.089,-44.262,-44.444,-44.637,-44.842,-45.059,-45.289,-45.531,-45.783,-46.045,-46.313,
--46.585,-46.858,-47.128,-47.391,-47.644,-47.884,-48.107,-48.311,-48.493,-48.651,-48.785,-48.894,-48.979,-49.041,-49.082,-49.103,
--49.109,-49.101,-49.085,-49.063,-49.039,-49.016,-48.997,-48.986,-48.983,-48.991,-49.010,-49.040,-49.082,-49.134,-49.194,-49.261,
--49.332,-49.406,-49.480,-49.552,-49.620,-49.683,-49.741,-49.792,-49.836,-49.876,-49.911,-49.945,-49.977,-50.012,-50.051,-50.096,
--50.149,-50.211,-50.283,-50.365,-50.457,-50.556,-50.662,-50.770,-50.878,-50.982,-51.077,-51.159,-51.225,-51.271,-51.293,-51.291,
--51.262,-51.207,-51.127,-51.025,-50.905,-50.771,-50.628,-50.484,-50.344,-50.216,-50.106,-50.021,-49.966,-49.945,-49.962,-50.017,
--50.112,-50.243,-50.409,-50.605,-50.826,-51.063,-51.311,-51.560,-51.804,-52.034,-52.243,-52.425,-52.575,-52.689,-52.765,-52.801,
--52.798,-52.759,-52.685,-52.582,-52.454,-52.307,-52.147,-51.979,-51.808,-51.641,-51.481,-51.332,-51.197,-51.078,-50.975,-50.889,
--50.819,-50.763,-50.721,-50.689,-50.667,-50.651,-50.639,-50.631,-50.625,-50.618,-50.612,-50.606,-50.599,-50.593,-50.588,-50.584,
--50.583,-50.586,-50.592,-50.603,-50.620,-50.641,-50.668,-50.699,-50.736,-50.776,-50.820,-50.866,-50.915,-50.965,-51.016,-51.067,
--51.117,-51.168,-51.217,-51.265,-51.312,-51.358,-51.402,-51.445,-51.487,-51.526,-51.564,-51.600,-51.634,-51.665,-51.694,-51.721,
--51.745,-51.766,-51.786,-51.803,-51.819,-51.834,-51.848,-51.862,-51.876,-51.891,-51.906,-51.923,-51.942,-51.962,-51.984,-52.007,
--52.031,-52.057,-52.082,-52.108,-52.134,-52.158,-52.182,-52.204,-52.225,-52.243,-52.260,-52.275,-52.289,-52.300,-52.309,-52.317,
--52.323,-52.326,-52.328,-52.327,-52.324,-52.317,-52.307,-52.293,-52.276,-52.254,-52.229,-52.199,-52.166,-52.129,-52.089,-52.048,
--52.005,-51.962,-51.921,-51.881,-51.843,-51.810,-51.781,-51.757,-51.739,-51.726,-51.719,-51.718,-51.721,-51.730,-51.742,-51.757,
--51.775,-51.795,-51.816,-51.838,-51.860,-51.883,-51.906,-51.929,-51.953,-51.977,-52.002,-52.028,-52.054,-52.082,-52.110,-52.139,
--52.168,-52.196,-52.223,-52.248,-52.270,-52.289,-52.303,-52.312,-52.315,-52.313,-52.305,-52.291,-52.273,-52.251,-52.225,-52.198,
--52.169,-52.142,-52.116,-52.093,-52.073,-52.058,-52.048,-52.043,-52.042,-52.045,-52.052,-52.060,-52.070,-52.079,-52.087,-52.092,
--52.093,-52.090,-52.081,-52.068,-52.049,-52.026,-51.999,-51.970,-51.939,-51.907,-51.876,-51.847,-51.820,-51.797,-51.777,-51.761,
--51.747,-51.735,-51.723,-51.710,-51.692,-51.669,-51.638,-51.597,-51.543,-51.475,-51.392,-51.293,-51.178,-51.048,-50.903,-50.744,
--50.575,-50.397,-50.214,-50.028,-49.842,-49.659,-49.482,-49.314,-49.156,-49.009,-48.874,-48.752,-48.641,-48.540,-48.449,-48.365,
--48.286,-48.210,-48.134,-48.057,-47.976,-47.890,-47.799,-47.701,-47.597,-47.488,-47.374,-47.257,-47.139,-47.021,-46.906,-46.796,
--46.691,-46.594,-46.504,-46.423,-46.349,-46.282,-46.220,-46.160,-46.101,-46.039,-45.972,-45.895,-45.807,-45.705,-45.585,-45.448,
--45.290,-45.114,-44.917,-44.703,-44.473,-44.229,-43.974,-43.712,-43.447,-43.183,-42.924,-42.672,-42.432,-42.206,-41.997,-41.805,
--41.633,-41.481,-41.348,-41.233,-41.135,-41.053,-40.983,-40.925,-40.876,-40.834,-40.796,-40.762,-40.728,-40.696,-40.662,-40.628,
--40.592,-40.555,-40.516,-40.476,-40.435,-40.393,-40.350,-40.305,-40.260,-40.213,-40.163,-40.110,-40.053,-39.991,-39.923,-39.848,
--39.766,-39.676,-39.579,-39.474,-39.363,-39.246,-39.124,-39.000,-38.875,-38.752,-38.632,-38.518,-38.413,-38.318,-38.235,-38.166,
--38.112,-38.073,-38.049,-38.041,-38.047,-38.066,-38.098,-38.139,-38.188,-38.243,-38.301,-38.361,-38.419,-38.474,-38.524,-38.566,
--38.600,-38.625,-38.638,-38.640,-38.631,-38.608,-38.574,-38.526,-38.466,-38.393,-38.307,-38.208,-38.097,-37.973,-37.835,-37.685,
--37.522,-37.347,-37.158,-36.957,-36.744,-36.519,-36.283,-36.038,-35.784,-35.522,-35.255,-34.984,-34.711,-34.438,-34.166,-33.898,
--33.636,-33.380,-33.132,-32.894,-32.665,-32.446,-32.237,-32.037,-31.844,-31.657,-31.475,-31.294,-31.114,-30.930,-30.742,-30.547,
--30.342,-30.127,-29.901,-29.663,-29.413,-29.152,-28.881,-28.604,-28.321,-28.037,-27.755,-27.478,-27.209,-26.953,-26.711,-26.487,
--26.281,-26.096,-25.932,-25.788,-25.663,-25.555,-25.462,-25.380,-25.306,-25.238,-25.170,-25.101,-25.028,-24.948,-24.860,-24.764,
--24.660,-24.550,-24.435,-24.318,-24.203,-24.093,-23.992,-23.905,-23.835,-23.786,-23.760,-23.759,-23.783,-23.834,-23.911,-24.010,
--24.130,-24.266,-24.414,-24.570,-24.729,-24.884,-25.032,-25.167,-25.286,-25.384,-25.460,-25.511,-25.537,-25.537,-25.513,-25.466,
--25.399,-25.316,-25.218,-25.111,-24.997,-24.882,-24.768,-24.660,-24.561,-24.472,-24.397,-24.337,-24.292,-24.265,-24.253,-24.258,
--24.278,-24.311,-24.356,-24.410,-24.472,-24.540,-24.610,-24.681,-24.751,-24.817,-24.877,-24.930,-24.974,-25.009,-25.033,-25.047,
--25.049,-25.041,-25.022,-24.993,-24.955,-24.909,-24.857,-24.798,-24.735,-24.669,-24.601,-24.531,-24.460,-24.389,-24.318,-24.248,
--24.178,-24.108,-24.038,-23.967,-23.895,-23.821,-23.744,-23.664,-23.579,-23.491,-23.398,-23.300,-23.198,-23.091,-22.979,-22.865,
--22.747,-22.627,-22.505,-22.384,-22.263,-22.145,-22.029,-21.918,-21.811,-21.711,-21.617,-21.531,-21.453,-21.383,-21.321,-21.268,
--21.224,-21.187,-21.158,-21.135,-21.120,-21.109,-21.104,-21.104,-21.106,-21.112,-21.121,-21.132,-21.146,-21.161,-21.179,-21.200,
--21.225,-21.253,-21.285,-21.323,-21.367,-21.417,-21.473,-21.536,-21.606,-21.683,-21.765,-21.852,-21.942,-22.035,-22.128,-22.220,
--22.309,-22.392,-22.469,-22.538,-22.597,-22.646,-22.684,-22.710,-22.726,-22.731,-22.726,-22.714,-22.695,-22.671,-22.644,-22.615,
--22.586,-22.557,-22.530,-22.505,-22.481,-22.458,-22.435,-22.409,-22.380,-22.345,-22.301,-22.247,-22.180,-22.098,-22.000,-21.885,
--21.752,-21.602,-21.436,-21.254,-21.061,-20.857,-20.646,-20.432,-20.217,-20.007,-19.804,-19.611,-19.431,-19.267,-19.119,-18.990,
--18.880,-18.788,-18.714,-18.657,-18.614,-18.585,-18.566,-18.556,-18.552,-18.552,-18.554,-18.557,-18.559,-18.560,-18.558,-18.552,
--18.543,-18.531,-18.515,-18.496,-18.473,-18.446,-18.417,-18.383,-18.347,-18.306,-18.262,-18.214,-18.162,-18.108,-18.051,-17.992,
--17.933,-17.875,-17.821,-17.772,-17.731,-17.699,-17.681,-17.676,-17.688,-17.717,-17.765,-17.830,-17.911,-18.008,-18.116,-18.233,
--18.354,-18.474,-18.587,-18.687,-18.770,-18.828,-18.858,-18.855,-18.816,-18.738,-18.621,-18.464,-18.271,-18.043,-17.786,-17.505,
--17.206,-16.897,-16.584,-16.276,-15.980,-15.702,-15.448,-15.223,-15.031,-14.874,-14.752,-14.665,-14.612,-14.589,-14.592,-14.616,
--14.655,-14.704,-14.757,-14.808,-14.851,-14.882,-14.897,-14.893,-14.869,-14.823,-14.756,-14.669,-14.563,-14.442,-14.308,-14.166,
--14.017,-13.866,-13.716,-13.571,-13.431,-13.300,-13.178,-13.067,-12.965,-12.874,-12.790,-12.714,-12.644,-12.577,-12.512,-12.447,
--12.381,-12.313,-12.240,-12.164,-12.083,-11.998,-11.909,-11.817,-11.723,-11.629,-11.536,-11.445,-11.357,-11.274,-11.196,-11.124,
--11.058,-10.998,-10.944,-10.896,-10.852,-10.811,-10.772,-10.733,-10.694,-10.652,-10.608,-10.559,-10.506,-10.448,-10.385,-10.317,
--10.246,-10.171,-10.093,-10.015,-9.937,-9.860,-9.786,-9.715,-9.648,-9.585,-9.526,-9.470,-9.418,-9.368,-9.319,-9.269,
--9.217,-9.162,-9.102,-9.037,-8.964,-8.884,-8.797,-8.703,-8.603,-8.497,-8.388,-8.278,-8.168,-8.060,-7.957,-7.861,
--7.773,-7.696,-7.628,-7.572,-7.527,-7.492,-7.467,-7.449,-7.436,-7.426,-7.894,-7.881,-7.869,-7.856,-7.839,-7.816,
--7.785,-7.745,-7.695,-7.633,-7.560,-7.476,-7.381,-7.278,-7.167,-7.050,-6.929,-6.807,-6.684,-6.564,-6.447,-6.334,
--6.227,-6.127,-6.032,-5.944,-5.861,-5.782,-5.707,-5.635,-5.563,-5.492,-5.418,-5.343,-5.264,-5.181,-5.095,-5.004,
--4.911,-4.814,-4.716,-4.617,-4.519,-4.422,-4.328,-4.237,-4.151,-4.070,-3.993,-3.922,-3.856,-3.793,-3.733,-3.675,
--3.617,-3.558,-3.496,-3.429,-3.357,-3.277,-3.190,-3.094,-2.989,-2.875,-2.753,-2.623,-2.486,-2.343,-2.196,-2.047,
--1.898,-1.749,-1.602,-1.459,-1.322,-1.190,-1.064,-.945,-.833,-.726,-.625,-.528,-.435,-.344,-.253,-.161,
--.067,.030,.131,.238,.351,.470,.595,.726,.863,1.004,1.150,1.300,1.451,1.603,1.756,1.907,
-2.055,2.201,2.341,2.477,2.606,2.728,2.841,2.947,3.043,3.128,3.203,3.266,3.317,3.355,3.380,3.391,
-3.387,3.368,3.335,3.288,3.226,3.151,3.064,2.966,2.858,2.743,2.623,2.499,2.375,2.253,2.135,2.023,
-1.920,1.828,1.748,1.681,1.630,1.593,1.572,1.566,1.575,1.597,1.632,1.679,1.736,1.801,1.874,1.953,
-2.037,2.124,2.213,2.305,2.398,2.492,2.586,2.680,2.774,2.868,2.960,3.051,3.141,3.228,3.312,3.392,
-3.467,3.537,3.600,3.657,3.707,3.750,3.786,3.815,3.838,3.856,3.870,3.883,3.895,3.908,3.924,3.944,
-3.970,4.003,4.043,4.090,4.144,4.203,4.266,4.332,4.397,4.460,4.518,4.569,4.609,4.638,4.655,4.657,
-4.647,4.625,4.592,4.553,4.510,4.467,4.430,4.403,4.392,4.401,4.435,4.498,4.592,4.720,4.881,5.075,
-5.300,5.553,5.829,6.121,6.425,6.732,7.035,7.326,7.600,7.848,8.066,8.249,8.394,8.498,8.562,8.586,
-8.573,8.526,8.450,8.349,8.230,8.097,7.958,7.817,7.678,7.545,7.421,7.308,7.205,7.113,7.028,6.949,
-6.873,6.796,6.715,6.625,6.523,6.408,6.277,6.130,5.966,5.788,5.597,5.396,5.190,4.983,4.780,4.585,
-4.405,4.242,4.101,3.985,3.895,3.832,3.797,3.788,3.802,3.837,3.890,3.956,4.031,4.110,4.192,4.271,
-4.346,4.415,4.476,4.531,4.579,4.623,4.665,4.707,4.752,4.803,4.863,4.934,5.017,5.113,5.221,5.341,
-5.470,5.605,5.742,5.876,6.004,6.119,6.216,6.291,6.339,6.357,6.343,6.294,6.210,6.093,5.943,5.764,
-5.560,5.335,5.094,4.842,4.585,4.329,4.076,3.833,3.602,3.385,3.185,3.003,2.837,2.688,2.554,2.432,
-2.319,2.214,2.113,2.013,1.913,1.809,1.700,1.585,1.463,1.334,1.199,1.058,.911,.761,.609,.455,
-.301,.147,-.005,-.156,-.306,-.455,-.604,-.755,-.909,-1.067,-1.232,-1.405,-1.588,-1.782,-1.988,-2.208,
--2.441,-2.687,-2.947,-3.220,-3.504,-3.798,-4.102,-4.412,-4.727,-5.045,-5.365,-5.685,-6.002,-6.317,-6.627,-6.933,
--7.233,-7.528,-7.817,-8.101,-8.380,-8.656,-8.928,-9.198,-9.467,-9.734,-10.002,-10.270,-10.538,-10.808,-11.078,-11.348,
--11.619,-11.890,-12.160,-12.427,-12.693,-12.955,-13.214,-13.468,-13.717,-13.961,-14.200,-14.434,-14.663,-14.889,-15.111,-15.332,
--15.551,-15.770,-15.990,-16.212,-16.436,-16.665,-16.897,-17.133,-17.374,-17.619,-17.868,-18.120,-18.374,-18.629,-18.885,-19.140,
--19.394,-19.646,-19.895,-20.143,-20.387,-20.630,-20.872,-21.115,-21.358,-21.605,-21.855,-22.112,-22.376,-22.649,-22.931,-23.224,
--23.526,-23.839,-24.160,-24.490,-24.825,-25.165,-25.506,-25.846,-26.183,-26.513,-26.835,-27.147,-27.446,-27.731,-28.002,-28.259,
--28.501,-28.730,-28.947,-29.154,-29.352,-29.544,-29.732,-29.918,-30.104,-30.291,-30.480,-30.672,-30.868,-31.066,-31.266,-31.467,
--31.667,-31.866,-32.060,-32.248,-32.430,-32.604,-32.769,-32.926,-33.074,-33.215,-33.350,-33.482,-33.612,-33.743,-33.879,-34.021,
--34.173,-34.337,-34.515,-34.708,-34.917,-35.143,-35.383,-35.637,-35.903,-36.178,-36.458,-36.740,-37.020,-37.295,-37.560,-37.813,
--38.050,-38.269,-38.469,-38.648,-38.808,-38.947,-39.069,-39.175,-39.267,-39.349,-39.425,-39.497,-39.568,-39.644,-39.725,-39.814,
--39.915,-40.027,-40.151,-40.288,-40.437,-40.597,-40.766,-40.943,-41.126,-41.312,-41.500,-41.688,-41.875,-42.058,-42.237,-42.413,
--42.585,-42.754,-42.921,-43.087,-43.255,-43.426,-43.603,-43.786,-43.978,-44.179,-44.392,-44.616,-44.851,-45.095,-45.349,-45.609,
--45.873,-46.138,-46.401,-46.657,-46.904,-47.138,-47.354,-47.551,-47.725,-47.875,-48.000,-48.099,-48.172,-48.221,-48.248,-48.255,
--48.245,-48.224,-48.194,-48.159,-48.125,-48.095,-48.073,-48.062,-48.064,-48.082,-48.116,-48.167,-48.233,-48.314,-48.408,-48.511,
--48.621,-48.735,-48.849,-48.961,-49.067,-49.165,-49.253,-49.331,-49.399,-49.456,-49.504,-49.546,-49.583,-49.618,-49.655,-49.698,
--49.748,-49.809,-49.882,-49.969,-50.071,-50.186,-50.313,-50.450,-50.592,-50.736,-50.875,-51.006,-51.121,-51.216,-51.284,-51.322,
--51.326,-51.293,-51.223,-51.114,-50.970,-50.792,-50.587,-50.360,-50.118,-49.868,-49.620,-49.382,-49.161,-48.967,-48.806,-48.683,
--48.604,-48.571,-48.585,-48.646,-48.751,-48.897,-49.079,-49.289,-49.520,-49.765,-50.014,-50.261,-50.496,-50.713,-50.906,-51.070,
--51.201,-51.297,-51.358,-51.383,-51.375,-51.337,-51.273,-51.188,-51.086,-50.974,-50.856,-50.737,-50.623,-50.516,-50.420,-50.338,
--50.270,-50.217,-50.180,-50.156,-50.145,-50.144,-50.151,-50.164,-50.181,-50.199,-50.216,-50.231,-50.242,-50.250,-50.252,-50.251,
--50.246,-50.239,-50.229,-50.220,-50.213,-50.208,-50.208,-50.213,-50.224,-50.243,-50.270,-50.304,-50.346,-50.394,-50.449,-50.509,
--50.573,-50.639,-50.706,-50.773,-50.837,-50.899,-50.955,-51.006,-51.050,-51.087,-51.117,-51.139,-51.153,-51.161,-51.162,-51.159,
--51.150,-51.139,-51.126,-51.113,-51.101,-51.090,-51.083,-51.080,-51.082,-51.090,-51.105,-51.125,-51.152,-51.184,-51.222,-51.265,
--51.312,-51.362,-51.414,-51.467,-51.520,-51.572,-51.623,-51.672,-51.717,-51.759,-51.797,-51.831,-51.861,-51.886,-51.907,-51.924,
--51.937,-51.945,-51.950,-51.950,-51.946,-51.938,-51.926,-51.910,-51.889,-51.864,-51.834,-51.800,-51.763,-51.721,-51.676,-51.629,
--51.579,-51.528,-51.476,-51.424,-51.374,-51.325,-51.279,-51.235,-51.196,-51.161,-51.131,-51.106,-51.086,-51.070,-51.060,-51.054,
--51.052,-51.055,-51.061,-51.071,-51.084,-51.101,-51.121,-51.144,-51.170,-51.199,-51.231,-51.267,-51.305,-51.347,-51.391,-51.438,
--51.487,-51.537,-51.588,-51.639,-51.688,-51.735,-51.780,-51.820,-51.855,-51.885,-51.909,-51.927,-51.937,-51.941,-51.939,-51.930,
--51.916,-51.898,-51.876,-51.851,-51.824,-51.796,-51.768,-51.740,-51.714,-51.689,-51.666,-51.645,-51.627,-51.610,-51.595,-51.582,
--51.570,-51.559,-51.550,-51.541,-51.534,-51.527,-51.522,-51.518,-51.516,-51.516,-51.518,-51.523,-51.529,-51.538,-51.549,-51.560,
--51.571,-51.580,-51.587,-51.589,-51.585,-51.572,-51.550,-51.516,-51.468,-51.405,-51.327,-51.232,-51.121,-50.993,-50.850,-50.693,
--50.524,-50.344,-50.157,-49.964,-49.769,-49.574,-49.382,-49.195,-49.015,-48.844,-48.683,-48.533,-48.394,-48.267,-48.149,-48.041,
--47.940,-47.846,-47.756,-47.670,-47.585,-47.500,-47.414,-47.326,-47.236,-47.143,-47.048,-46.951,-46.854,-46.757,-46.661,-46.568,
--46.477,-46.391,-46.309,-46.232,-46.160,-46.091,-46.024,-45.959,-45.893,-45.824,-45.749,-45.668,-45.576,-45.472,-45.355,-45.223,
--45.074,-44.909,-44.728,-44.532,-44.321,-44.099,-43.867,-43.629,-43.386,-43.144,-42.904,-42.670,-42.445,-42.231,-42.031,-41.846,
--41.677,-41.525,-41.390,-41.271,-41.167,-41.078,-41.000,-40.932,-40.873,-40.821,-40.773,-40.727,-40.683,-40.639,-40.595,-40.549,
--40.502,-40.453,-40.402,-40.351,-40.298,-40.245,-40.191,-40.138,-40.084,-40.030,-39.976,-39.922,-39.866,-39.807,-39.747,-39.683,
--39.614,-39.541,-39.464,-39.381,-39.293,-39.201,-39.105,-39.006,-38.906,-38.805,-38.707,-38.611,-38.521,-38.437,-38.362,-38.296,
--38.241,-38.197,-38.165,-38.145,-38.136,-38.138,-38.149,-38.170,-38.197,-38.229,-38.266,-38.304,-38.342,-38.379,-38.413,-38.442,
--38.465,-38.482,-38.492,-38.492,-38.484,-38.467,-38.439,-38.401,-38.353,-38.293,-38.222,-38.138,-38.043,-37.933,-37.811,-37.674,
--37.523,-37.357,-37.176,-36.980,-36.770,-36.546,-36.310,-36.063,-35.806,-35.541,-35.271,-34.997,-34.723,-34.451,-34.182,-33.921,
--33.667,-33.424,-33.192,-32.973,-32.765,-32.570,-32.386,-32.212,-32.045,-31.885,-31.727,-31.569,-31.408,-31.242,-31.067,-30.881,
--30.682,-30.470,-30.242,-29.999,-29.742,-29.472,-29.191,-28.902,-28.607,-28.311,-28.018,-27.731,-27.454,-27.190,-26.944,-26.716,
--26.511,-26.328,-26.168,-26.030,-25.914,-25.817,-25.738,-25.672,-25.616,-25.568,-25.524,-25.479,-25.433,-25.382,-25.324,-25.260,
--25.190,-25.113,-25.032,-24.950,-24.868,-24.792,-24.724,-24.669,-24.630,-24.610,-24.612,-24.639,-24.692,-24.771,-24.876,-25.005,
--25.157,-25.327,-25.512,-25.708,-25.909,-26.111,-26.308,-26.496,-26.669,-26.825,-26.958,-27.068,-27.151,-27.208,-27.237,-27.239,
--27.216,-27.169,-27.102,-27.016,-26.915,-26.802,-26.681,-26.555,-26.426,-26.298,-26.172,-26.051,-25.937,-25.831,-25.733,-25.646,
--25.568,-25.500,-25.443,-25.396,-25.359,-25.331,-25.313,-25.303,-25.301,-25.306,-25.317,-25.335,-25.356,-25.382,-25.410,-25.438,
--25.467,-25.493,-25.516,-25.535,-25.547,-25.552,-25.548,-25.535,-25.512,-25.477,-25.433,-25.377,-25.311,-25.237,-25.153,-25.063,
--24.967,-24.867,-24.764,-24.660,-24.556,-24.453,-24.352,-24.254,-24.159,-24.067,-23.978,-23.890,-23.804,-23.717,-23.630,-23.540,
--23.448,-23.350,-23.248,-23.139,-23.026,-22.906,-22.782,-22.653,-22.522,-22.390,-22.260,-22.133,-22.011,-21.898,-21.794,-21.703,
--21.626,-21.563,-21.517,-21.487,-21.473,-21.475,-21.491,-21.521,-21.562,-21.612,-21.670,-21.733,-21.799,-21.866,-21.932,-21.996,
--22.058,-22.116,-22.171,-22.222,-22.271,-22.319,-22.365,-22.412,-22.461,-22.512,-22.566,-22.625,-22.688,-22.755,-22.826,-22.900,
--22.976,-23.051,-23.125,-23.196,-23.262,-23.322,-23.373,-23.415,-23.448,-23.470,-23.483,-23.485,-23.480,-23.467,-23.449,-23.427,
--23.403,-23.379,-23.357,-23.338,-23.322,-23.311,-23.305,-23.302,-23.302,-23.304,-23.304,-23.302,-23.295,-23.279,-23.253,-23.214,
--23.160,-23.090,-23.002,-22.897,-22.773,-22.633,-22.477,-22.308,-22.127,-21.938,-21.743,-21.546,-21.350,-21.157,-20.971,-20.793,
--20.625,-20.469,-20.325,-20.194,-20.076,-19.970,-19.874,-19.788,-19.711,-19.640,-19.575,-19.514,-19.456,-19.399,-19.343,-19.288,
--19.233,-19.177,-19.122,-19.067,-19.012,-18.958,-18.906,-18.854,-18.805,-18.757,-18.711,-18.667,-18.625,-18.585,-18.546,-18.510,
--18.475,-18.442,-18.413,-18.387,-18.365,-18.349,-18.339,-18.336,-18.341,-18.355,-18.378,-18.411,-18.452,-18.501,-18.556,-18.616,
--18.678,-18.738,-18.793,-18.839,-18.872,-18.888,-18.884,-18.855,-18.799,-18.713,-18.596,-18.447,-18.267,-18.058,-17.821,-17.560,
--17.281,-16.987,-16.686,-16.382,-16.083,-15.793,-15.520,-15.268,-15.041,-14.843,-14.677,-14.542,-14.441,-14.370,-14.329,-14.313,
--14.319,-14.342,-14.377,-14.419,-14.462,-14.502,-14.533,-14.553,-14.558,-14.545,-14.513,-14.462,-14.392,-14.303,-14.199,-14.082,
--13.954,-13.819,-13.679,-13.539,-13.400,-13.266,-13.139,-13.021,-12.911,-12.812,-12.722,-12.642,-12.569,-12.503,-12.441,-12.383,
--12.326,-12.268,-12.208,-12.145,-12.078,-12.006,-11.929,-11.848,-11.764,-11.677,-11.588,-11.500,-11.414,-11.331,-11.253,-11.181,
--11.116,-11.058,-11.009,-10.968,-10.935,-10.908,-10.887,-10.871,-10.858,-10.846,-10.834,-10.820,-10.804,-10.783,-10.758,-10.727,
--10.691,-10.649,-10.601,-10.550,-10.495,-10.437,-10.378,-10.319,-10.260,-10.203,-10.147,-10.094,-10.043,-9.993,-9.945,-9.897,
--9.848,-9.798,-9.744,-9.686,-9.622,-9.552,-9.476,-9.391,-9.300,-9.202,-9.098,-8.990,-8.879,-8.766,-8.654,-8.545,
--8.441,-8.344,-8.255,-8.175,-8.105,-8.047,-7.999,-7.961,-7.932,-7.910,-7.894,-8.536,-8.508,-8.482,-8.457,-8.431,
--8.402,-8.368,-8.328,-8.281,-8.226,-8.162,-8.089,-8.007,-7.917,-7.820,-7.716,-7.608,-7.497,-7.384,-7.272,-7.160,
--7.051,-6.947,-6.846,-6.751,-6.662,-6.578,-6.500,-6.426,-6.356,-6.290,-6.225,-6.162,-6.100,-6.037,-5.973,-5.907,
--5.840,-5.770,-5.698,-5.624,-5.549,-5.472,-5.395,-5.318,-5.241,-5.165,-5.090,-5.016,-4.943,-4.872,-4.801,-4.730,
--4.658,-4.585,-4.509,-4.431,-4.348,-4.260,-4.166,-4.066,-3.960,-3.846,-3.727,-3.601,-3.469,-3.332,-3.192,-3.048,
--2.903,-2.757,-2.612,-2.469,-2.328,-2.190,-2.056,-1.927,-1.801,-1.680,-1.563,-1.449,-1.337,-1.227,-1.118,-1.009,
--.898,-.784,-.668,-.547,-.422,-.292,-.157,-.016,.129,.280,.435,.593,.755,.918,1.083,1.248,
-1.412,1.575,1.734,1.890,2.041,2.186,2.324,2.454,2.576,2.688,2.790,2.879,2.957,3.021,3.071,3.106,
-3.127,3.131,3.121,3.094,3.053,2.997,2.928,2.846,2.753,2.651,2.542,2.428,2.312,2.195,2.080,1.969,
-1.864,1.769,1.683,1.609,1.548,1.500,1.466,1.446,1.440,1.447,1.466,1.497,1.537,1.586,1.643,1.705,
-1.772,1.842,1.915,1.989,2.063,2.138,2.211,2.284,2.355,2.425,2.492,2.557,2.620,2.679,2.736,2.788,
-2.837,2.881,2.921,2.956,2.985,3.010,3.029,3.045,3.056,3.064,3.071,3.076,3.082,3.090,3.100,3.116,
-3.136,3.163,3.196,3.237,3.284,3.337,3.395,3.457,3.520,3.584,3.645,3.702,3.753,3.796,3.830,3.853,
-3.866,3.869,3.862,3.848,3.829,3.807,3.787,3.771,3.765,3.772,3.796,3.840,3.907,4.001,4.121,4.268,
-4.442,4.641,4.862,5.101,5.354,5.616,5.881,6.143,6.397,6.636,6.855,7.050,7.217,7.353,7.456,7.526,
-7.564,7.570,7.547,7.499,7.429,7.341,7.240,7.130,7.015,6.899,6.785,6.674,6.569,6.470,6.377,6.289,
-6.206,6.123,6.041,5.956,5.866,5.769,5.664,5.549,5.424,5.289,5.146,4.995,4.840,4.683,4.528,4.377,
-4.235,4.104,3.988,3.889,3.808,3.748,3.709,3.690,3.690,3.708,3.741,3.788,3.844,3.907,3.975,4.044,
-4.112,4.178,4.241,4.299,4.353,4.405,4.454,4.502,4.553,4.606,4.665,4.730,4.804,4.887,4.978,5.078,
-5.184,5.295,5.409,5.520,5.627,5.725,5.809,5.876,5.922,5.943,5.938,5.903,5.839,5.745,5.622,5.471,
-5.295,5.098,4.883,4.655,4.417,4.174,3.931,3.691,3.459,3.236,3.024,2.826,2.643,2.473,2.316,2.171,
-2.037,1.911,1.792,1.676,1.562,1.448,1.332,1.213,1.091,.964,.833,.698,.560,.420,.278,.136,
--.006,-.147,-.286,-.423,-.559,-.695,-.831,-.968,-1.109,-1.256,-1.409,-1.572,-1.745,-1.932,-2.133,-2.349,
--2.581,-2.829,-3.093,-3.372,-3.665,-3.970,-4.284,-4.607,-4.934,-5.264,-5.594,-5.922,-6.246,-6.563,-6.873,-7.174,
--7.466,-7.749,-8.022,-8.287,-8.545,-8.797,-9.044,-9.288,-9.530,-9.773,-10.016,-10.262,-10.512,-10.765,-11.022,-11.283,
--11.547,-11.813,-12.081,-12.350,-12.618,-12.883,-13.145,-13.403,-13.654,-13.900,-14.139,-14.371,-14.597,-14.817,-15.031,-15.241,
--15.447,-15.652,-15.856,-16.062,-16.269,-16.479,-16.694,-16.913,-17.137,-17.367,-17.601,-17.840,-18.082,-18.328,-18.575,-18.823,
--19.071,-19.318,-19.564,-19.807,-20.048,-20.288,-20.525,-20.762,-21.000,-21.238,-21.480,-21.725,-21.976,-22.234,-22.499,-22.773,
--23.057,-23.349,-23.650,-23.959,-24.274,-24.595,-24.919,-25.244,-25.568,-25.888,-26.203,-26.510,-26.807,-27.093,-27.368,-27.630,
--27.880,-28.117,-28.343,-28.559,-28.766,-28.967,-29.162,-29.355,-29.545,-29.736,-29.928,-30.122,-30.318,-30.517,-30.718,-30.920,
--31.122,-31.324,-31.522,-31.717,-31.906,-32.088,-32.262,-32.428,-32.586,-32.735,-32.877,-33.014,-33.146,-33.277,-33.408,-33.543,
--33.684,-33.833,-33.993,-34.166,-34.354,-34.557,-34.776,-35.011,-35.260,-35.522,-35.794,-36.075,-36.360,-36.646,-36.931,-37.209,
--37.479,-37.737,-37.979,-38.206,-38.413,-38.602,-38.771,-38.921,-39.053,-39.169,-39.271,-39.361,-39.443,-39.518,-39.590,-39.661,
--39.734,-39.811,-39.894,-39.985,-40.083,-40.190,-40.307,-40.431,-40.564,-40.704,-40.851,-41.004,-41.161,-41.322,-41.486,-41.654,
--41.825,-41.998,-42.175,-42.357,-42.543,-42.734,-42.933,-43.138,-43.351,-43.573,-43.802,-44.040,-44.285,-44.535,-44.790,-45.047,
--45.303,-45.556,-45.803,-46.041,-46.266,-46.475,-46.667,-46.838,-46.987,-47.112,-47.213,-47.291,-47.345,-47.378,-47.393,-47.391,
--47.377,-47.354,-47.326,-47.298,-47.272,-47.254,-47.245,-47.249,-47.268,-47.302,-47.353,-47.420,-47.501,-47.595,-47.699,-47.811,
--47.926,-48.042,-48.154,-48.261,-48.359,-48.446,-48.520,-48.581,-48.630,-48.666,-48.693,-48.713,-48.728,-48.743,-48.762,-48.789,
--48.827,-48.880,-48.950,-49.039,-49.148,-49.277,-49.424,-49.585,-49.758,-49.937,-50.116,-50.288,-50.447,-50.586,-50.697,-50.774,
--50.813,-50.808,-50.757,-50.658,-50.512,-50.320,-50.087,-49.818,-49.520,-49.202,-48.871,-48.540,-48.217,-47.912,-47.636,-47.396,
--47.201,-47.056,-46.966,-46.933,-46.957,-47.038,-47.172,-47.354,-47.578,-47.835,-48.117,-48.415,-48.720,-49.023,-49.314,-49.586,
--49.833,-50.048,-50.228,-50.370,-50.474,-50.539,-50.569,-50.566,-50.534,-50.478,-50.404,-50.317,-50.223,-50.127,-50.034,-49.949,
--49.873,-49.811,-49.763,-49.731,-49.713,-49.709,-49.717,-49.735,-49.760,-49.790,-49.821,-49.852,-49.880,-49.903,-49.920,-49.930,
--49.932,-49.927,-49.916,-49.900,-49.880,-49.858,-49.837,-49.817,-49.802,-49.793,-49.791,-49.797,-49.812,-49.836,-49.869,-49.910,
--49.958,-50.013,-50.071,-50.132,-50.194,-50.254,-50.311,-50.363,-50.409,-50.447,-50.478,-50.500,-50.514,-50.520,-50.519,-50.511,
--50.500,-50.485,-50.468,-50.452,-50.438,-50.427,-50.421,-50.421,-50.428,-50.442,-50.465,-50.494,-50.532,-50.575,-50.625,-50.679,
--50.736,-50.796,-50.856,-50.916,-50.974,-51.029,-51.080,-51.127,-51.170,-51.208,-51.241,-51.269,-51.293,-51.313,-51.330,-51.345,
--51.357,-51.368,-51.378,-51.387,-51.395,-51.403,-51.410,-51.416,-51.421,-51.423,-51.424,-51.422,-51.416,-51.406,-51.393,-51.374,
--51.351,-51.324,-51.292,-51.257,-51.217,-51.175,-51.131,-51.085,-51.039,-50.993,-50.948,-50.905,-50.865,-50.827,-50.793,-50.763,
--50.737,-50.715,-50.698,-50.685,-50.677,-50.673,-50.672,-50.676,-50.683,-50.693,-50.707,-50.723,-50.743,-50.764,-50.788,-50.814,
--50.842,-50.872,-50.902,-50.933,-50.964,-50.995,-51.026,-51.055,-51.083,-51.109,-51.132,-51.153,-51.171,-51.185,-51.196,-51.204,
--51.208,-51.210,-51.208,-51.204,-51.197,-51.188,-51.177,-51.165,-51.152,-51.138,-51.123,-51.108,-51.092,-51.076,-51.060,-51.043,
--51.027,-51.010,-50.993,-50.976,-50.959,-50.943,-50.927,-50.911,-50.896,-50.882,-50.869,-50.857,-50.846,-50.836,-50.827,-50.817,
--50.807,-50.796,-50.783,-50.766,-50.746,-50.719,-50.687,-50.647,-50.598,-50.539,-50.471,-50.391,-50.301,-50.199,-50.088,-49.966,
--49.835,-49.696,-49.551,-49.401,-49.247,-49.093,-48.938,-48.784,-48.634,-48.489,-48.348,-48.214,-48.086,-47.965,-47.850,-47.741,
--47.639,-47.541,-47.447,-47.357,-47.270,-47.184,-47.100,-47.017,-46.934,-46.852,-46.771,-46.690,-46.611,-46.534,-46.458,-46.386,
--46.317,-46.251,-46.188,-46.129,-46.072,-46.016,-45.962,-45.906,-45.848,-45.786,-45.718,-45.641,-45.555,-45.457,-45.346,-45.221,
--45.081,-44.926,-44.756,-44.571,-44.373,-44.164,-43.945,-43.718,-43.487,-43.255,-43.023,-42.796,-42.575,-42.363,-42.163,-41.975,
--41.802,-41.644,-41.501,-41.374,-41.261,-41.163,-41.077,-41.002,-40.937,-40.880,-40.829,-40.783,-40.739,-40.697,-40.656,-40.615,
--40.573,-40.529,-40.485,-40.438,-40.391,-40.343,-40.294,-40.244,-40.195,-40.145,-40.095,-40.045,-39.994,-39.942,-39.889,-39.834,
--39.777,-39.717,-39.653,-39.585,-39.513,-39.438,-39.358,-39.274,-39.187,-39.098,-39.007,-38.916,-38.824,-38.734,-38.647,-38.563,
--38.483,-38.408,-38.338,-38.275,-38.217,-38.166,-38.121,-38.081,-38.046,-38.015,-37.988,-37.964,-37.942,-37.921,-37.901,-37.881,
--37.860,-37.838,-37.814,-37.788,-37.758,-37.725,-37.689,-37.647,-37.600,-37.547,-37.487,-37.418,-37.341,-37.253,-37.153,-37.042,
--36.917,-36.778,-36.624,-36.456,-36.274,-36.077,-35.867,-35.646,-35.413,-35.173,-34.927,-34.677,-34.427,-34.178,-33.934,-33.697,
--33.469,-33.253,-33.049,-32.859,-32.682,-32.519,-32.369,-32.230,-32.100,-31.976,-31.857,-31.738,-31.616,-31.489,-31.353,-31.205,
--31.044,-30.867,-30.674,-30.464,-30.238,-29.996,-29.742,-29.476,-29.203,-28.927,-28.649,-28.376,-28.111,-27.857,-27.617,-27.396,
--27.194,-27.013,-26.855,-26.719,-26.604,-26.508,-26.430,-26.367,-26.315,-26.271,-26.232,-26.194,-26.156,-26.113,-26.064,-26.008,
--25.944,-25.873,-25.795,-25.712,-25.627,-25.542,-25.460,-25.385,-25.320,-25.269,-25.234,-25.218,-25.222,-25.249,-25.298,-25.370,
--25.462,-25.574,-25.702,-25.844,-25.997,-26.155,-26.316,-26.475,-26.628,-26.772,-26.904,-27.021,-27.121,-27.202,-27.264,-27.307,
--27.330,-27.335,-27.323,-27.296,-27.256,-27.204,-27.143,-27.075,-27.002,-26.926,-26.848,-26.770,-26.693,-26.618,-26.547,-26.479,
--26.416,-26.358,-26.305,-26.257,-26.216,-26.180,-26.151,-26.129,-26.114,-26.106,-26.104,-26.109,-26.120,-26.136,-26.157,-26.181,
--26.207,-26.234,-26.259,-26.280,-26.297,-26.306,-26.307,-26.298,-26.277,-26.243,-26.197,-26.138,-26.066,-25.982,-25.887,-25.784,
--25.673,-25.557,-25.439,-25.319,-25.202,-25.088,-24.980,-24.878,-24.783,-24.696,-24.617,-24.545,-24.478,-24.415,-24.355,-24.294,
--24.232,-24.165,-24.092,-24.011,-23.920,-23.820,-23.709,-23.587,-23.457,-23.318,-23.174,-23.026,-22.878,-22.733,-22.593,-22.462,
--22.343,-22.238,-22.150,-22.080,-22.029,-21.998,-21.987,-21.995,-22.020,-22.060,-22.114,-22.178,-22.251,-22.328,-22.409,-22.489,
--22.569,-22.645,-22.716,-22.783,-22.845,-22.902,-22.955,-23.005,-23.054,-23.102,-23.150,-23.201,-23.255,-23.313,-23.374,-23.441,
--23.510,-23.583,-23.658,-23.734,-23.809,-23.881,-23.949,-24.011,-24.066,-24.113,-24.151,-24.180,-24.200,-24.211,-24.215,-24.212,
--24.204,-24.192,-24.178,-24.164,-24.150,-24.139,-24.130,-24.124,-24.120,-24.119,-24.119,-24.119,-24.117,-24.111,-24.098,-24.078,
--24.047,-24.004,-23.947,-23.875,-23.788,-23.686,-23.568,-23.436,-23.291,-23.136,-22.971,-22.800,-22.626,-22.450,-22.275,-22.103,
--21.937,-21.778,-21.626,-21.484,-21.350,-21.226,-21.109,-21.000,-20.897,-20.799,-20.704,-20.612,-20.521,-20.430,-20.339,-20.246,
--20.152,-20.057,-19.961,-19.865,-19.771,-19.678,-19.588,-19.502,-19.421,-19.347,-19.280,-19.219,-19.167,-19.122,-19.086,-19.056,
--19.033,-19.017,-19.005,-18.998,-18.995,-18.995,-18.997,-19.000,-19.004,-19.009,-19.012,-19.015,-19.017,-19.016,-19.012,-19.004,
--18.992,-18.974,-18.949,-18.915,-18.871,-18.815,-18.747,-18.664,-18.565,-18.449,-18.316,-18.166,-17.999,-17.815,-17.617,-17.405,
--17.184,-16.955,-16.721,-16.487,-16.256,-16.032,-15.819,-15.619,-15.436,-15.273,-15.131,-15.011,-14.914,-14.839,-14.785,-14.750,
--14.733,-14.729,-14.735,-14.748,-14.764,-14.779,-14.790,-14.793,-14.785,-14.765,-14.730,-14.681,-14.617,-14.538,-14.445,-14.341,
--14.227,-14.106,-13.980,-13.853,-13.727,-13.603,-13.485,-13.375,-13.273,-13.179,-13.096,-13.021,-12.955,-12.896,-12.843,-12.795,
--12.748,-12.702,-12.656,-12.606,-12.552,-12.494,-12.430,-12.361,-12.287,-12.208,-12.126,-12.041,-11.956,-11.872,-11.791,-11.714,
--11.643,-11.579,-11.523,-11.476,-11.437,-11.407,-11.385,-11.370,-11.361,-11.357,-11.355,-11.354,-11.353,-11.349,-11.342,-11.330,
--11.313,-11.289,-11.259,-11.222,-11.178,-11.130,-11.076,-11.019,-10.959,-10.897,-10.835,-10.773,-10.713,-10.653,-10.595,-10.539,
--10.484,-10.430,-10.375,-10.320,-10.263,-10.203,-10.140,-10.072,-9.999,-9.921,-9.838,-9.749,-9.657,-9.561,-9.463,-9.363,
--9.265,-9.168,-9.075,-8.986,-8.904,-8.829,-8.761,-8.702,-8.650,-8.606,-8.568,-8.536,-9.301,-9.253,-9.207,-9.162,
--9.116,-9.068,-9.018,-8.964,-8.906,-8.842,-8.772,-8.696,-8.614,-8.526,-8.433,-8.334,-8.231,-8.125,-8.018,-7.909,
--7.801,-7.696,-7.593,-7.494,-7.400,-7.312,-7.230,-7.154,-7.085,-7.022,-6.966,-6.915,-6.869,-6.828,-6.790,-6.755,
--6.722,-6.691,-6.660,-6.629,-6.597,-6.563,-6.528,-6.490,-6.449,-6.405,-6.357,-6.306,-6.249,-6.189,-6.123,-6.051,
--5.974,-5.890,-5.800,-5.703,-5.599,-5.488,-5.369,-5.243,-5.111,-4.972,-4.826,-4.675,-4.520,-4.360,-4.198,-4.033,
--3.868,-3.703,-3.539,-3.377,-3.218,-3.063,-2.913,-2.767,-2.626,-2.491,-2.360,-2.234,-2.112,-1.994,-1.879,-1.765,
--1.653,-1.542,-1.430,-1.316,-1.201,-1.082,-.961,-.835,-.705,-.571,-.432,-.288,-.140,.012,.168,.327,
-.489,.653,.818,.983,1.147,1.310,1.470,1.625,1.775,1.919,2.055,2.182,2.298,2.403,2.495,2.574,
-2.638,2.687,2.720,2.738,2.740,2.727,2.699,2.657,2.602,2.537,2.461,2.378,2.289,2.196,2.102,2.008,
-1.916,1.827,1.745,1.669,1.602,1.543,1.494,1.455,1.425,1.405,1.394,1.392,1.398,1.410,1.428,1.452,
-1.480,1.511,1.545,1.581,1.619,1.658,1.698,1.739,1.780,1.821,1.862,1.903,1.944,1.983,2.021,2.058,
-2.092,2.123,2.151,2.175,2.195,2.210,2.220,2.225,2.226,2.222,2.215,2.205,2.192,2.179,2.167,2.156,
-2.149,2.146,2.147,2.155,2.170,2.192,2.220,2.255,2.296,2.341,2.390,2.441,2.493,2.544,2.593,2.638,
-2.678,2.714,2.743,2.767,2.787,2.803,2.817,2.831,2.846,2.866,2.893,2.929,2.976,3.037,3.112,3.204,
-3.312,3.436,3.575,3.728,3.892,4.066,4.245,4.426,4.606,4.781,4.946,5.100,5.238,5.358,5.458,5.537,
-5.595,5.632,5.647,5.644,5.623,5.587,5.539,5.481,5.417,5.349,5.279,5.209,5.141,5.077,5.016,4.959,
-4.906,4.856,4.807,4.759,4.711,4.660,4.606,4.547,4.483,4.414,4.339,4.260,4.176,4.091,4.004,3.918,
-3.835,3.757,3.686,3.624,3.573,3.532,3.505,3.490,3.487,3.497,3.518,3.549,3.589,3.636,3.688,3.744,
-3.802,3.862,3.921,3.981,4.039,4.097,4.154,4.212,4.271,4.331,4.395,4.462,4.534,4.609,4.690,4.774,
-4.860,4.949,5.037,5.122,5.202,5.275,5.336,5.384,5.415,5.428,5.419,5.388,5.334,5.255,5.153,5.028,
-4.882,4.716,4.533,4.336,4.128,3.912,3.691,3.468,3.246,3.028,2.814,2.608,2.409,2.219,2.037,1.863,
-1.697,1.538,1.385,1.236,1.090,.947,.806,.666,.526,.387,.249,.112,-.023,-.156,-.286,-.412,
--.535,-.654,-.768,-.879,-.987,-1.094,-1.200,-1.308,-1.419,-1.537,-1.663,-1.800,-1.949,-2.114,-2.296,-2.495,
--2.714,-2.952,-3.209,-3.485,-3.777,-4.085,-4.405,-4.735,-5.072,-5.414,-5.756,-6.096,-6.432,-6.760,-7.078,-7.386,
--7.681,-7.964,-8.234,-8.492,-8.739,-8.976,-9.205,-9.429,-9.648,-9.866,-10.083,-10.303,-10.527,-10.755,-10.990,-11.230,
--11.477,-11.729,-11.986,-12.248,-12.512,-12.778,-13.043,-13.306,-13.566,-13.822,-14.071,-14.314,-14.550,-14.779,-15.001,-15.216,
--15.425,-15.630,-15.830,-16.028,-16.225,-16.422,-16.620,-16.820,-17.022,-17.229,-17.438,-17.652,-17.869,-18.088,-18.311,-18.535,
--18.760,-18.986,-19.211,-19.436,-19.659,-19.881,-20.103,-20.324,-20.544,-20.766,-20.990,-21.216,-21.447,-21.684,-21.927,-22.177,
--22.435,-22.702,-22.977,-23.261,-23.552,-23.850,-24.153,-24.459,-24.768,-25.076,-25.382,-25.684,-25.981,-26.270,-26.550,-26.821,
--27.081,-27.330,-27.569,-27.798,-28.017,-28.229,-28.434,-28.634,-28.830,-29.023,-29.216,-29.410,-29.604,-29.800,-29.999,-30.199,
--30.401,-30.605,-30.808,-31.011,-31.212,-31.410,-31.603,-31.792,-31.976,-32.153,-32.324,-32.490,-32.652,-32.809,-32.964,-33.119,
--33.274,-33.433,-33.597,-33.768,-33.948,-34.138,-34.340,-34.554,-34.779,-35.017,-35.266,-35.525,-35.793,-36.067,-36.345,-36.625,
--36.903,-37.178,-37.447,-37.706,-37.955,-38.191,-38.412,-38.619,-38.809,-38.984,-39.142,-39.286,-39.415,-39.531,-39.636,-39.732,
--39.819,-39.901,-39.978,-40.053,-40.127,-40.202,-40.278,-40.358,-40.442,-40.531,-40.625,-40.727,-40.835,-40.951,-41.075,-41.207,
--41.349,-41.501,-41.662,-41.834,-42.017,-42.210,-42.414,-42.629,-42.854,-43.088,-43.330,-43.579,-43.834,-44.091,-44.349,-44.606,
--44.858,-45.102,-45.337,-45.559,-45.766,-45.955,-46.124,-46.273,-46.400,-46.505,-46.589,-46.651,-46.695,-46.721,-46.732,-46.732,
--46.724,-46.711,-46.696,-46.684,-46.676,-46.677,-46.687,-46.709,-46.744,-46.791,-46.851,-46.922,-47.002,-47.089,-47.180,-47.273,
--47.363,-47.448,-47.524,-47.590,-47.644,-47.683,-47.708,-47.719,-47.717,-47.704,-47.683,-47.657,-47.631,-47.609,-47.594,-47.593,
--47.608,-47.643,-47.701,-47.783,-47.890,-48.021,-48.174,-48.346,-48.532,-48.727,-48.924,-49.115,-49.293,-49.451,-49.579,-49.672,
--49.722,-49.725,-49.676,-49.574,-49.419,-49.211,-48.955,-48.654,-48.318,-47.953,-47.570,-47.179,-46.791,-46.417,-46.070,-45.758,
--45.493,-45.280,-45.128,-45.040,-45.019,-45.066,-45.178,-45.353,-45.584,-45.866,-46.188,-46.542,-46.917,-47.304,-47.691,-48.070,
--48.430,-48.764,-49.066,-49.330,-49.552,-49.731,-49.867,-49.960,-50.013,-50.031,-50.018,-49.979,-49.921,-49.849,-49.769,-49.687,
--49.609,-49.537,-49.477,-49.429,-49.397,-49.380,-49.377,-49.389,-49.413,-49.446,-49.487,-49.532,-49.578,-49.623,-49.665,-49.701,
--49.729,-49.750,-49.762,-49.766,-49.762,-49.751,-49.734,-49.714,-49.692,-49.670,-49.649,-49.631,-49.617,-49.609,-49.606,-49.610,
--49.619,-49.635,-49.654,-49.678,-49.704,-49.730,-49.757,-49.782,-49.804,-49.822,-49.836,-49.846,-49.851,-49.852,-49.849,-49.844,
--49.837,-49.830,-49.825,-49.822,-49.823,-49.830,-49.843,-49.863,-49.891,-49.927,-49.969,-50.019,-50.075,-50.136,-50.200,-50.265,
--50.331,-50.396,-50.457,-50.514,-50.566,-50.610,-50.648,-50.678,-50.700,-50.715,-50.723,-50.726,-50.724,-50.720,-50.714,-50.708,
--50.703,-50.701,-50.703,-50.709,-50.721,-50.738,-50.761,-50.789,-50.822,-50.858,-50.897,-50.937,-50.977,-51.016,-51.052,-51.084,
--51.111,-51.132,-51.145,-51.151,-51.150,-51.141,-51.125,-51.101,-51.072,-51.038,-51.000,-50.959,-50.916,-50.873,-50.830,-50.788,
--50.748,-50.711,-50.676,-50.646,-50.619,-50.595,-50.575,-50.557,-50.543,-50.530,-50.519,-50.509,-50.500,-50.490,-50.481,-50.471,
--50.461,-50.450,-50.438,-50.425,-50.412,-50.399,-50.385,-50.372,-50.360,-50.348,-50.338,-50.329,-50.323,-50.318,-50.316,-50.316,
--50.319,-50.324,-50.332,-50.342,-50.353,-50.366,-50.380,-50.394,-50.408,-50.422,-50.434,-50.445,-50.453,-50.458,-50.460,-50.457,
--50.450,-50.439,-50.423,-50.402,-50.375,-50.344,-50.309,-50.269,-50.225,-50.177,-50.127,-50.074,-50.018,-49.961,-49.903,-49.845,
--49.785,-49.726,-49.666,-49.606,-49.545,-49.485,-49.424,-49.362,-49.299,-49.234,-49.168,-49.100,-49.030,-48.958,-48.883,-48.806,
--48.726,-48.645,-48.562,-48.477,-48.392,-48.305,-48.219,-48.132,-48.046,-47.960,-47.875,-47.791,-47.708,-47.625,-47.544,-47.463,
--47.382,-47.301,-47.220,-47.139,-47.057,-46.974,-46.892,-46.809,-46.726,-46.643,-46.561,-46.480,-46.401,-46.324,-46.250,-46.179,
--46.111,-46.046,-45.985,-45.927,-45.871,-45.817,-45.763,-45.709,-45.652,-45.592,-45.527,-45.455,-45.375,-45.285,-45.185,-45.072,
--44.947,-44.809,-44.659,-44.496,-44.321,-44.137,-43.943,-43.743,-43.538,-43.331,-43.123,-42.918,-42.717,-42.523,-42.338,-42.163,
--41.999,-41.849,-41.711,-41.587,-41.477,-41.380,-41.295,-41.221,-41.158,-41.104,-41.057,-41.016,-40.980,-40.947,-40.917,-40.888,
--40.860,-40.831,-40.802,-40.772,-40.741,-40.709,-40.675,-40.640,-40.604,-40.566,-40.527,-40.486,-40.443,-40.398,-40.350,-40.300,
--40.246,-40.187,-40.125,-40.057,-39.985,-39.906,-39.822,-39.733,-39.638,-39.537,-39.432,-39.322,-39.208,-39.092,-38.972,-38.852,
--38.730,-38.607,-38.486,-38.365,-38.245,-38.128,-38.013,-37.900,-37.789,-37.682,-37.577,-37.476,-37.377,-37.281,-37.188,-37.098,
--37.010,-36.926,-36.844,-36.765,-36.689,-36.615,-36.542,-36.472,-36.402,-36.332,-36.261,-36.189,-36.113,-36.034,-35.949,-35.857,
--35.758,-35.650,-35.532,-35.404,-35.265,-35.115,-34.955,-34.785,-34.606,-34.419,-34.227,-34.030,-33.832,-33.634,-33.438,-33.247,
--33.063,-32.888,-32.722,-32.567,-32.424,-32.293,-32.173,-32.064,-31.963,-31.869,-31.780,-31.694,-31.607,-31.517,-31.421,-31.318,
--31.204,-31.078,-30.939,-30.787,-30.620,-30.441,-30.249,-30.047,-29.837,-29.622,-29.405,-29.188,-28.976,-28.771,-28.576,-28.393,
--28.225,-28.073,-27.939,-27.821,-27.720,-27.634,-27.563,-27.503,-27.452,-27.408,-27.368,-27.328,-27.286,-27.239,-27.186,-27.124,
--27.053,-26.972,-26.882,-26.783,-26.677,-26.566,-26.451,-26.337,-26.225,-26.118,-26.020,-25.933,-25.859,-25.800,-25.758,-25.732,
--25.724,-25.734,-25.759,-25.800,-25.854,-25.919,-25.993,-26.073,-26.158,-26.244,-26.329,-26.412,-26.490,-26.563,-26.629,-26.688,
--26.739,-26.783,-26.819,-26.849,-26.873,-26.891,-26.905,-26.915,-26.923,-26.928,-26.931,-26.934,-26.935,-26.936,-26.937,-26.937,
--26.937,-26.937,-26.937,-26.937,-26.938,-26.940,-26.943,-26.948,-26.954,-26.963,-26.974,-26.988,-27.004,-27.022,-27.042,-27.063,
--27.084,-27.103,-27.121,-27.134,-27.141,-27.141,-27.132,-27.113,-27.082,-27.039,-26.982,-26.912,-26.830,-26.734,-26.628,-26.512,
--26.389,-26.260,-26.128,-25.995,-25.865,-25.739,-25.619,-25.508,-25.407,-25.316,-25.236,-25.167,-25.107,-25.057,-25.013,-24.973,
--24.936,-24.898,-24.858,-24.812,-24.758,-24.695,-24.621,-24.535,-24.436,-24.326,-24.204,-24.074,-23.935,-23.792,-23.647,-23.502,
--23.362,-23.228,-23.104,-22.993,-22.896,-22.816,-22.752,-22.707,-22.680,-22.671,-22.678,-22.700,-22.735,-22.782,-22.837,-22.900,
--22.968,-23.038,-23.111,-23.183,-23.254,-23.325,-23.393,-23.460,-23.525,-23.590,-23.654,-23.719,-23.785,-23.854,-23.924,-23.997,
--24.072,-24.150,-24.229,-24.309,-24.389,-24.468,-24.544,-24.617,-24.685,-24.747,-24.802,-24.851,-24.891,-24.924,-24.950,-24.968,
--24.980,-24.985,-24.987,-24.984,-24.978,-24.970,-24.960,-24.949,-24.936,-24.923,-24.907,-24.889,-24.867,-24.841,-24.810,-24.771,
--24.724,-24.668,-24.602,-24.525,-24.438,-24.339,-24.231,-24.113,-23.987,-23.854,-23.717,-23.576,-23.435,-23.294,-23.156,-23.021,
--22.893,-22.770,-22.654,-22.545,-22.443,-22.346,-22.254,-22.166,-22.079,-21.992,-21.903,-21.811,-21.715,-21.613,-21.504,-21.389,
--21.267,-21.139,-21.006,-20.870,-20.732,-20.594,-20.459,-20.329,-20.206,-20.093,-19.990,-19.901,-19.825,-19.765,-19.718,-19.687,
--19.669,-19.663,-19.667,-19.680,-19.699,-19.721,-19.743,-19.764,-19.779,-19.788,-19.786,-19.774,-19.748,-19.708,-19.653,-19.583,
--19.497,-19.396,-19.279,-19.149,-19.007,-18.852,-18.688,-18.514,-18.334,-18.148,-17.959,-17.768,-17.577,-17.387,-17.200,-17.018,
--16.842,-16.674,-16.515,-16.367,-16.230,-16.106,-15.995,-15.898,-15.815,-15.747,-15.691,-15.648,-15.617,-15.597,-15.585,-15.579,
--15.578,-15.579,-15.579,-15.577,-15.570,-15.555,-15.532,-15.497,-15.450,-15.391,-15.319,-15.234,-15.136,-15.028,-14.910,-14.784,
--14.653,-14.518,-14.383,-14.250,-14.120,-13.997,-13.881,-13.775,-13.679,-13.594,-13.520,-13.456,-13.402,-13.357,-13.318,-13.285,
--13.255,-13.227,-13.198,-13.167,-13.131,-13.091,-13.044,-12.991,-12.931,-12.864,-12.792,-12.714,-12.633,-12.550,-12.467,-12.384,
--12.305,-12.230,-12.160,-12.098,-12.043,-11.995,-11.956,-11.923,-11.898,-11.878,-11.863,-11.850,-11.839,-11.828,-11.815,-11.798,
--11.777,-11.750,-11.717,-11.677,-11.631,-11.578,-11.519,-11.455,-11.386,-11.315,-11.242,-11.169,-11.097,-11.026,-10.958,-10.894,
--10.834,-10.778,-10.726,-10.678,-10.632,-10.590,-10.549,-10.508,-10.467,-10.425,-10.381,-10.334,-10.284,-10.230,-10.173,-10.112,
--10.048,-9.982,-9.914,-9.845,-9.776,-9.708,-9.642,-9.578,-9.516,-9.458,-9.402,-9.350,-9.301,-9.919,-9.862,-9.804,
--9.746,-9.686,-9.625,-9.562,-9.496,-9.428,-9.357,-9.282,-9.203,-9.120,-9.033,-8.943,-8.849,-8.753,-8.654,-8.554,
--8.454,-8.354,-8.256,-8.161,-8.070,-7.984,-7.903,-7.830,-7.763,-7.705,-7.655,-7.613,-7.580,-7.554,-7.537,-7.526,
--7.522,-7.523,-7.528,-7.537,-7.547,-7.558,-7.568,-7.576,-7.580,-7.580,-7.573,-7.559,-7.537,-7.506,-7.464,-7.412,
--7.348,-7.271,-7.183,-7.082,-6.968,-6.842,-6.705,-6.556,-6.396,-6.227,-6.049,-5.863,-5.671,-5.475,-5.274,-5.072,
--4.868,-4.666,-4.466,-4.268,-4.076,-3.889,-3.708,-3.535,-3.369,-3.211,-3.062,-2.921,-2.787,-2.661,-2.542,-2.429,
--2.322,-2.219,-2.119,-2.022,-1.926,-1.830,-1.733,-1.634,-1.532,-1.426,-1.315,-1.199,-1.078,-.950,-.815,-.675,
--.528,-.375,-.217,-.054,.113,.283,.454,.625,.795,.963,1.126,1.283,1.432,1.573,1.703,1.821,
-1.927,2.018,2.095,2.157,2.203,2.235,2.251,2.252,2.240,2.216,2.180,2.135,2.081,2.021,1.955,1.886,
-1.815,1.744,1.673,1.605,1.539,1.477,1.419,1.365,1.317,1.272,1.233,1.198,1.166,1.139,1.115,1.094,
-1.076,1.061,1.050,1.041,1.035,1.032,1.033,1.038,1.047,1.060,1.077,1.099,1.124,1.153,1.185,1.220,
-1.256,1.293,1.329,1.364,1.396,1.425,1.448,1.466,1.478,1.483,1.481,1.473,1.458,1.438,1.413,1.384,
-1.353,1.322,1.291,1.262,1.237,1.217,1.203,1.196,1.196,1.204,1.220,1.243,1.273,1.309,1.350,1.394,
-1.442,1.491,1.540,1.588,1.635,1.681,1.724,1.764,1.803,1.841,1.878,1.915,1.954,1.995,2.039,2.088,
-2.143,2.203,2.270,2.343,2.422,2.507,2.597,2.690,2.785,2.881,2.975,3.067,3.155,3.236,3.311,3.377,
-3.434,3.481,3.518,3.546,3.565,3.575,3.578,3.575,3.566,3.554,3.539,3.523,3.506,3.490,3.475,3.462,
-3.450,3.439,3.430,3.421,3.412,3.402,3.391,3.378,3.362,3.343,3.321,3.296,3.268,3.238,3.205,3.172,
-3.138,3.106,3.075,3.047,3.024,3.005,2.993,2.987,2.987,2.995,3.010,3.031,3.059,3.093,3.133,3.178,
-3.227,3.281,3.337,3.397,3.459,3.524,3.592,3.662,3.735,3.810,3.888,3.969,4.052,4.137,4.224,4.311,
-4.398,4.484,4.566,4.644,4.715,4.777,4.829,4.869,4.894,4.904,4.895,4.869,4.823,4.757,4.672,4.568,
-4.445,4.305,4.149,3.979,3.796,3.604,3.403,3.196,2.985,2.772,2.558,2.344,2.132,1.922,1.715,1.512,
-1.312,1.116,.924,.736,.551,.371,.194,.022,-.146,-.308,-.464,-.614,-.757,-.892,-1.019,-1.137,
--1.247,-1.348,-1.441,-1.528,-1.608,-1.685,-1.760,-1.835,-1.912,-1.995,-2.087,-2.190,-2.306,-2.439,-2.590,-2.761,
--2.954,-3.168,-3.405,-3.662,-3.940,-4.236,-4.548,-4.873,-5.209,-5.551,-5.897,-6.244,-6.587,-6.924,-7.252,-7.569,
--7.873,-8.164,-8.440,-8.701,-8.949,-9.184,-9.407,-9.622,-9.829,-10.032,-10.232,-10.431,-10.633,-10.839,-11.050,-11.267,
--11.492,-11.724,-11.964,-12.211,-12.464,-12.721,-12.983,-13.246,-13.509,-13.771,-14.030,-14.284,-14.533,-14.776,-15.011,-15.239,
--15.460,-15.673,-15.879,-16.080,-16.275,-16.467,-16.655,-16.841,-17.026,-17.210,-17.395,-17.581,-17.768,-17.957,-18.147,-18.339,
--18.532,-18.726,-18.921,-19.116,-19.312,-19.508,-19.705,-19.903,-20.103,-20.304,-20.509,-20.717,-20.929,-21.147,-21.372,-21.604,
--21.844,-22.092,-22.349,-22.615,-22.890,-23.172,-23.461,-23.756,-24.055,-24.357,-24.660,-24.961,-25.261,-25.556,-25.844,-26.126,
--26.399,-26.662,-26.916,-27.160,-27.394,-27.619,-27.836,-28.045,-28.248,-28.446,-28.641,-28.834,-29.026,-29.219,-29.412,-29.608,
--29.806,-30.007,-30.210,-30.415,-30.621,-30.828,-31.035,-31.240,-31.444,-31.644,-31.840,-32.032,-32.220,-32.403,-32.581,-32.755,
--32.926,-33.095,-33.263,-33.431,-33.601,-33.774,-33.952,-34.136,-34.328,-34.528,-34.737,-34.956,-35.184,-35.422,-35.669,-35.924,
--36.186,-36.454,-36.725,-36.999,-37.272,-37.544,-37.812,-38.074,-38.328,-38.572,-38.806,-39.027,-39.235,-39.428,-39.607,-39.771,
--39.919,-40.053,-40.173,-40.279,-40.374,-40.457,-40.532,-40.599,-40.660,-40.717,-40.773,-40.830,-40.889,-40.953,-41.024,-41.104,
--41.195,-41.299,-41.416,-41.548,-41.696,-41.860,-42.041,-42.237,-42.448,-42.673,-42.909,-43.156,-43.410,-43.669,-43.930,-44.189,
--44.443,-44.690,-44.927,-45.149,-45.356,-45.544,-45.712,-45.860,-45.986,-46.091,-46.175,-46.240,-46.287,-46.319,-46.338,-46.347,
--46.349,-46.347,-46.345,-46.345,-46.349,-46.359,-46.378,-46.405,-46.441,-46.485,-46.537,-46.595,-46.657,-46.720,-46.782,-46.839,
--46.890,-46.931,-46.960,-46.975,-46.976,-46.962,-46.933,-46.891,-46.837,-46.774,-46.706,-46.636,-46.570,-46.510,-46.463,-46.431,
--46.420,-46.432,-46.469,-46.533,-46.624,-46.741,-46.881,-47.041,-47.216,-47.399,-47.585,-47.765,-47.932,-48.077,-48.193,-48.273,
--48.309,-48.298,-48.233,-48.114,-47.940,-47.712,-47.432,-47.107,-46.742,-46.346,-45.929,-45.501,-45.073,-44.658,-44.267,-43.910,
--43.598,-43.341,-43.146,-43.018,-42.963,-42.981,-43.072,-43.235,-43.464,-43.755,-44.098,-44.486,-44.908,-45.353,-45.811,-46.271,
--46.723,-47.156,-47.563,-47.937,-48.271,-48.562,-48.807,-49.006,-49.158,-49.267,-49.335,-49.367,-49.369,-49.346,-49.305,-49.251,
--49.190,-49.128,-49.070,-49.020,-48.981,-48.955,-48.944,-48.949,-48.968,-49.000,-49.045,-49.099,-49.160,-49.226,-49.293,-49.359,
--49.422,-49.479,-49.529,-49.571,-49.603,-49.626,-49.640,-49.645,-49.642,-49.632,-49.616,-49.597,-49.574,-49.549,-49.523,-49.497,
--49.471,-49.447,-49.424,-49.401,-49.380,-49.359,-49.338,-49.318,-49.296,-49.274,-49.252,-49.229,-49.206,-49.183,-49.161,-49.141,
--49.125,-49.112,-49.105,-49.105,-49.112,-49.128,-49.152,-49.186,-49.229,-49.281,-49.342,-49.410,-49.484,-49.563,-49.644,-49.727,
--49.808,-49.886,-49.960,-50.027,-50.085,-50.135,-50.175,-50.205,-50.225,-50.235,-50.236,-50.230,-50.217,-50.201,-50.182,-50.162,
--50.144,-50.130,-50.121,-50.118,-50.122,-50.136,-50.157,-50.188,-50.227,-50.274,-50.327,-50.385,-50.447,-50.510,-50.574,-50.635,
--50.693,-50.746,-50.792,-50.831,-50.861,-50.882,-50.895,-50.898,-50.893,-50.880,-50.860,-50.834,-50.804,-50.771,-50.736,-50.699,
--50.663,-50.629,-50.596,-50.565,-50.537,-50.512,-50.489,-50.469,-50.450,-50.433,-50.415,-50.398,-50.379,-50.358,-50.335,-50.309,
--50.279,-50.246,-50.209,-50.169,-50.125,-50.080,-50.032,-49.983,-49.934,-49.886,-49.839,-49.796,-49.756,-49.720,-49.690,-49.665,
--49.646,-49.634,-49.627,-49.627,-49.633,-49.643,-49.658,-49.676,-49.697,-49.719,-49.741,-49.762,-49.781,-49.796,-49.807,-49.812,
--49.811,-49.803,-49.787,-49.763,-49.730,-49.689,-49.640,-49.583,-49.518,-49.446,-49.368,-49.284,-49.196,-49.104,-49.009,-48.913,
--48.815,-48.718,-48.621,-48.526,-48.433,-48.342,-48.255,-48.171,-48.092,-48.016,-47.944,-47.877,-47.814,-47.754,-47.699,-47.647,
--47.599,-47.553,-47.511,-47.471,-47.432,-47.396,-47.361,-47.327,-47.293,-47.259,-47.224,-47.189,-47.152,-47.113,-47.072,-47.028,
--46.982,-46.932,-46.878,-46.821,-46.761,-46.696,-46.629,-46.559,-46.486,-46.410,-46.333,-46.255,-46.176,-46.097,-46.018,-45.939,
--45.862,-45.785,-45.710,-45.636,-45.562,-45.489,-45.416,-45.342,-45.266,-45.187,-45.105,-45.019,-44.927,-44.830,-44.725,-44.614,
--44.494,-44.367,-44.233,-44.092,-43.943,-43.790,-43.631,-43.470,-43.306,-43.142,-42.979,-42.818,-42.662,-42.511,-42.366,-42.230,
--42.103,-41.985,-41.876,-41.778,-41.690,-41.611,-41.541,-41.480,-41.426,-41.379,-41.338,-41.302,-41.269,-41.240,-41.212,-41.186,
--41.160,-41.134,-41.108,-41.081,-41.053,-41.023,-40.992,-40.959,-40.924,-40.887,-40.848,-40.806,-40.761,-40.712,-40.660,-40.604,
--40.543,-40.477,-40.405,-40.327,-40.242,-40.151,-40.053,-39.948,-39.837,-39.718,-39.593,-39.461,-39.324,-39.182,-39.036,-38.885,
--38.732,-38.576,-38.418,-38.258,-38.098,-37.938,-37.779,-37.620,-37.462,-37.306,-37.151,-36.999,-36.848,-36.700,-36.555,-36.412,
--36.273,-36.137,-36.005,-35.876,-35.751,-35.631,-35.514,-35.402,-35.294,-35.189,-35.089,-34.991,-34.895,-34.802,-34.710,-34.617,
--34.525,-34.430,-34.334,-34.234,-34.131,-34.024,-33.912,-33.796,-33.676,-33.551,-33.423,-33.293,-33.161,-33.028,-32.895,-32.765,
--32.637,-32.514,-32.395,-32.283,-32.176,-32.076,-31.983,-31.896,-31.815,-31.739,-31.666,-31.595,-31.526,-31.455,-31.383,-31.306,
--31.224,-31.136,-31.040,-30.937,-30.826,-30.707,-30.581,-30.448,-30.310,-30.169,-30.026,-29.883,-29.742,-29.605,-29.474,-29.350,
--29.235,-29.129,-29.033,-28.947,-28.871,-28.804,-28.745,-28.693,-28.646,-28.601,-28.557,-28.511,-28.462,-28.408,-28.346,-28.276,
--28.197,-28.108,-28.009,-27.901,-27.783,-27.658,-27.528,-27.393,-27.256,-27.120,-26.985,-26.856,-26.733,-26.620,-26.516,-26.424,
--26.345,-26.279,-26.226,-26.187,-26.162,-26.149,-26.147,-26.156,-26.175,-26.202,-26.236,-26.276,-26.321,-26.370,-26.421,-26.475,
--26.531,-26.588,-26.646,-26.704,-26.763,-26.822,-26.880,-26.938,-26.995,-27.051,-27.105,-27.158,-27.208,-27.256,-27.301,-27.343,
--27.381,-27.415,-27.446,-27.473,-27.497,-27.519,-27.538,-27.555,-27.571,-27.587,-27.603,-27.619,-27.636,-27.655,-27.674,-27.694,
--27.715,-27.735,-27.753,-27.769,-27.780,-27.785,-27.783,-27.773,-27.752,-27.719,-27.674,-27.616,-27.544,-27.459,-27.361,-27.251,
--27.131,-27.003,-26.867,-26.728,-26.587,-26.447,-26.310,-26.178,-26.054,-25.940,-25.836,-25.743,-25.662,-25.593,-25.534,-25.484,
--25.443,-25.407,-25.375,-25.345,-25.313,-25.278,-25.238,-25.190,-25.133,-25.067,-24.991,-24.904,-24.807,-24.701,-24.588,-24.469,
--24.347,-24.224,-24.102,-23.984,-23.873,-23.769,-23.677,-23.596,-23.530,-23.478,-23.440,-23.419,-23.412,-23.419,-23.439,-23.472,
--23.516,-23.569,-23.630,-23.698,-23.771,-23.847,-23.927,-24.007,-24.089,-24.171,-24.252,-24.332,-24.412,-24.490,-24.567,-24.642,
--24.715,-24.787,-24.857,-24.925,-24.990,-25.053,-25.112,-25.169,-25.222,-25.271,-25.317,-25.359,-25.397,-25.431,-25.462,-25.490,
--25.514,-25.535,-25.554,-25.570,-25.584,-25.595,-25.603,-25.609,-25.610,-25.608,-25.601,-25.588,-25.568,-25.541,-25.505,-25.460,
--25.406,-25.341,-25.267,-25.182,-25.087,-24.984,-24.873,-24.755,-24.633,-24.508,-24.382,-24.256,-24.133,-24.014,-23.901,-23.795,
--23.696,-23.605,-23.522,-23.446,-23.376,-23.310,-23.247,-23.185,-23.121,-23.053,-22.979,-22.897,-22.805,-22.701,-22.585,-22.456,
--22.315,-22.162,-21.999,-21.828,-21.652,-21.473,-21.295,-21.121,-20.955,-20.800,-20.659,-20.534,-20.429,-20.344,-20.281,-20.240,
--20.219,-20.217,-20.233,-20.263,-20.304,-20.352,-20.403,-20.452,-20.495,-20.528,-20.546,-20.546,-20.525,-20.480,-20.409,-20.311,
--20.187,-20.035,-19.859,-19.659,-19.439,-19.200,-18.948,-18.685,-18.416,-18.146,-17.877,-17.615,-17.363,-17.124,-16.902,-16.699,
--16.517,-16.358,-16.222,-16.110,-16.022,-15.957,-15.913,-15.889,-15.882,-15.891,-15.911,-15.941,-15.977,-16.016,-16.055,-16.090,
--16.119,-16.139,-16.147,-16.142,-16.122,-16.086,-16.032,-15.961,-15.872,-15.767,-15.647,-15.513,-15.367,-15.212,-15.049,-14.882,
--14.714,-14.547,-14.383,-14.226,-14.077,-13.939,-13.814,-13.701,-13.603,-13.519,-13.448,-13.392,-13.347,-13.313,-13.288,-13.270,
--13.257,-13.246,-13.236,-13.224,-13.208,-13.188,-13.161,-13.128,-13.086,-13.037,-12.981,-12.918,-12.849,-12.776,-12.700,-12.622,
--12.545,-12.469,-12.397,-12.329,-12.266,-12.210,-12.160,-12.117,-12.081,-12.049,-12.023,-12.000,-11.980,-11.960,-11.940,-11.918,
--11.892,-11.862,-11.826,-11.784,-11.735,-11.680,-11.618,-11.550,-11.477,-11.400,-11.321,-11.240,-11.160,-11.081,-11.006,-10.934,
--10.869,-10.809,-10.756,-10.710,-10.672,-10.640,-10.615,-10.595,-10.579,-10.568,-10.558,-10.550,-10.541,-10.532,-10.520,-10.505,
--10.486,-10.464,-10.437,-10.406,-10.370,-10.330,-10.287,-10.240,-10.191,-10.139,-10.086,-10.031,-9.976,-9.919,-10.193,-10.142,
--10.089,-10.034,-9.977,-9.918,-9.858,-9.795,-9.730,-9.663,-9.594,-9.522,-9.448,-9.372,-9.293,-9.213,-9.131,-9.047,
--8.963,-8.880,-8.797,-8.715,-8.637,-8.561,-8.491,-8.426,-8.366,-8.314,-8.270,-8.234,-8.206,-8.186,-8.175,-8.172,
--8.177,-8.189,-8.206,-8.229,-8.255,-8.283,-8.313,-8.341,-8.368,-8.390,-8.406,-8.416,-8.416,-8.407,-8.387,-8.354,
--8.307,-8.247,-8.172,-8.083,-7.979,-7.860,-7.727,-7.580,-7.421,-7.250,-7.068,-6.877,-6.678,-6.473,-6.263,-6.050,
--5.835,-5.620,-5.406,-5.196,-4.989,-4.788,-4.593,-4.406,-4.227,-4.056,-3.894,-3.742,-3.598,-3.463,-3.336,-3.216,
--3.104,-2.997,-2.896,-2.798,-2.702,-2.608,-2.514,-2.419,-2.322,-2.221,-2.115,-2.004,-1.887,-1.763,-1.631,-1.492,
--1.346,-1.192,-1.032,-.865,-.693,-.516,-.337,-.156,.026,.205,.382,.554,.719,.876,1.023,1.160,
-1.284,1.395,1.492,1.574,1.642,1.695,1.734,1.759,1.770,1.770,1.758,1.736,1.705,1.668,1.624,1.575,
-1.522,1.467,1.411,1.354,1.296,1.239,1.183,1.127,1.072,1.018,.964,.912,.859,.807,.756,.705,
-.655,.606,.559,.514,.472,.434,.400,.372,.350,.335,.327,.327,.335,.351,.374,.404,
-.441,.482,.528,.575,.624,.672,.717,.758,.794,.823,.845,.858,.862,.857,.844,.822,
-.793,.759,.719,.677,.634,.591,.550,.513,.482,.457,.440,.432,.432,.441,.459,.485,
-.519,.559,.604,.654,.706,.760,.815,.869,.921,.971,1.018,1.063,1.104,1.142,1.178,1.213,
-1.246,1.278,1.311,1.344,1.379,1.416,1.456,1.499,1.545,1.593,1.644,1.698,1.753,1.810,1.867,1.923,
-1.979,2.033,2.085,2.134,2.179,2.221,2.259,2.292,2.322,2.347,2.369,2.387,2.402,2.414,2.423,2.430,
-2.435,2.438,2.440,2.440,2.438,2.435,2.431,2.426,2.419,2.411,2.402,2.392,2.381,2.369,2.357,2.344,
-2.332,2.321,2.311,2.302,2.295,2.291,2.290,2.292,2.298,2.307,2.321,2.340,2.362,2.390,2.422,2.459,
-2.500,2.547,2.598,2.654,2.714,2.779,2.848,2.922,2.999,3.081,3.165,3.253,3.342,3.433,3.524,3.615,
-3.705,3.791,3.872,3.948,4.016,4.076,4.124,4.161,4.185,4.194,4.188,4.166,4.127,4.072,3.999,3.910,
-3.805,3.685,3.550,3.402,3.242,3.071,2.891,2.703,2.508,2.307,2.103,1.894,1.684,1.472,1.258,1.045,
-.832,.620,.409,.201,-.005,-.208,-.406,-.600,-.788,-.970,-1.143,-1.309,-1.465,-1.611,-1.747,-1.872,
--1.986,-2.090,-2.183,-2.267,-2.344,-2.414,-2.480,-2.544,-2.610,-2.678,-2.753,-2.837,-2.933,-3.043,-3.170,-3.315,
--3.481,-3.667,-3.875,-4.104,-4.354,-4.622,-4.909,-5.211,-5.525,-5.849,-6.179,-6.513,-6.847,-7.179,-7.504,-7.821,
--8.128,-8.423,-8.705,-8.974,-9.229,-9.471,-9.700,-9.919,-10.129,-10.331,-10.528,-10.722,-10.915,-11.110,-11.307,-11.509,
--11.716,-11.930,-12.150,-12.378,-12.612,-12.852,-13.098,-13.347,-13.599,-13.852,-14.105,-14.356,-14.604,-14.847,-15.085,-15.317,
--15.541,-15.759,-15.969,-16.173,-16.369,-16.560,-16.745,-16.925,-17.102,-17.275,-17.447,-17.617,-17.786,-17.955,-18.124,-18.293,
--18.464,-18.635,-18.808,-18.982,-19.158,-19.335,-19.514,-19.695,-19.878,-20.065,-20.255,-20.450,-20.649,-20.854,-21.066,-21.284,
--21.511,-21.745,-21.987,-22.238,-22.497,-22.765,-23.039,-23.320,-23.607,-23.897,-24.191,-24.485,-24.779,-25.072,-25.360,-25.644,
--25.921,-26.191,-26.453,-26.706,-26.950,-27.185,-27.411,-27.629,-27.841,-28.046,-28.246,-28.442,-28.636,-28.829,-29.022,-29.216,
--29.412,-29.610,-29.811,-30.015,-30.222,-30.430,-30.640,-30.851,-31.062,-31.271,-31.478,-31.681,-31.880,-32.073,-32.260,-32.441,
--32.616,-32.784,-32.947,-33.105,-33.259,-33.411,-33.562,-33.714,-33.868,-34.027,-34.192,-34.366,-34.549,-34.743,-34.949,-35.167,
--35.399,-35.644,-35.901,-36.170,-36.449,-36.737,-37.031,-37.330,-37.631,-37.931,-38.227,-38.517,-38.798,-39.067,-39.321,-39.559,
--39.779,-39.979,-40.158,-40.315,-40.451,-40.566,-40.661,-40.737,-40.797,-40.843,-40.877,-40.903,-40.924,-40.943,-40.965,-40.991,
--41.027,-41.074,-41.136,-41.215,-41.313,-41.431,-41.570,-41.731,-41.912,-42.113,-42.331,-42.566,-42.813,-43.070,-43.333,-43.598,
--43.863,-44.122,-44.373,-44.612,-44.835,-45.041,-45.228,-45.393,-45.536,-45.656,-45.755,-45.833,-45.892,-45.934,-45.961,-45.976,
--45.982,-45.982,-45.979,-45.975,-45.973,-45.975,-45.982,-45.995,-46.014,-46.038,-46.069,-46.102,-46.138,-46.174,-46.208,-46.237,
--46.258,-46.271,-46.272,-46.261,-46.237,-46.199,-46.148,-46.086,-46.014,-45.934,-45.851,-45.766,-45.685,-45.611,-45.549,-45.501,
--45.472,-45.464,-45.479,-45.518,-45.581,-45.667,-45.774,-45.898,-46.036,-46.181,-46.328,-46.470,-46.601,-46.711,-46.796,-46.848,
--46.861,-46.830,-46.751,-46.623,-46.443,-46.214,-45.938,-45.617,-45.260,-44.872,-44.462,-44.039,-43.614,-43.198,-42.801,-42.433,
--42.106,-41.826,-41.604,-41.444,-41.351,-41.329,-41.379,-41.500,-41.688,-41.941,-42.251,-42.611,-43.013,-43.447,-43.903,-44.372,
--44.843,-45.307,-45.756,-46.180,-46.573,-46.931,-47.249,-47.524,-47.755,-47.944,-48.090,-48.198,-48.271,-48.314,-48.331,-48.329,
--48.312,-48.285,-48.256,-48.226,-48.202,-48.186,-48.180,-48.186,-48.205,-48.238,-48.283,-48.339,-48.406,-48.479,-48.559,-48.641,
--48.723,-48.804,-48.880,-48.951,-49.014,-49.069,-49.114,-49.150,-49.176,-49.192,-49.199,-49.198,-49.189,-49.174,-49.152,-49.126,
--49.095,-49.061,-49.024,-48.985,-48.944,-48.901,-48.857,-48.812,-48.766,-48.719,-48.673,-48.626,-48.581,-48.537,-48.495,-48.457,
--48.424,-48.395,-48.373,-48.359,-48.353,-48.356,-48.369,-48.393,-48.427,-48.471,-48.524,-48.587,-48.658,-48.735,-48.817,-48.903,
--48.991,-49.078,-49.163,-49.245,-49.321,-49.391,-49.453,-49.507,-49.552,-49.588,-49.616,-49.636,-49.649,-49.656,-49.660,-49.660,
--49.659,-49.659,-49.661,-49.666,-49.676,-49.691,-49.712,-49.740,-49.774,-49.814,-49.859,-49.909,-49.962,-50.017,-50.073,-50.128,
--50.181,-50.230,-50.274,-50.312,-50.343,-50.367,-50.383,-50.392,-50.393,-50.388,-50.376,-50.360,-50.339,-50.315,-50.289,-50.262,
--50.236,-50.211,-50.187,-50.166,-50.148,-50.133,-50.120,-50.110,-50.101,-50.094,-50.087,-50.079,-50.070,-50.059,-50.044,-50.025,
--50.002,-49.974,-49.941,-49.903,-49.859,-49.812,-49.760,-49.705,-49.647,-49.589,-49.530,-49.472,-49.416,-49.363,-49.315,-49.270,
--49.231,-49.198,-49.171,-49.150,-49.135,-49.125,-49.120,-49.119,-49.121,-49.125,-49.130,-49.134,-49.137,-49.137,-49.134,-49.125,
--49.111,-49.090,-49.062,-49.026,-48.982,-48.931,-48.871,-48.804,-48.730,-48.650,-48.563,-48.472,-48.376,-48.278,-48.177,-48.074,
--47.972,-47.870,-47.769,-47.670,-47.574,-47.482,-47.393,-47.309,-47.229,-47.153,-47.083,-47.017,-46.957,-46.901,-46.849,-46.802,
--46.758,-46.719,-46.683,-46.650,-46.620,-46.592,-46.566,-46.541,-46.518,-46.496,-46.474,-46.452,-46.430,-46.407,-46.383,-46.358,
--46.332,-46.303,-46.272,-46.239,-46.204,-46.166,-46.125,-46.081,-46.035,-45.986,-45.933,-45.879,-45.821,-45.761,-45.697,-45.632,
--45.563,-45.492,-45.418,-45.340,-45.260,-45.176,-45.089,-44.998,-44.903,-44.804,-44.700,-44.593,-44.481,-44.364,-44.244,-44.120,
--43.992,-43.861,-43.727,-43.592,-43.456,-43.320,-43.184,-43.050,-42.918,-42.790,-42.667,-42.548,-42.435,-42.329,-42.230,-42.137,
--42.052,-41.973,-41.902,-41.837,-41.778,-41.725,-41.676,-41.631,-41.590,-41.551,-41.514,-41.477,-41.441,-41.405,-41.367,-41.328,
--41.288,-41.246,-41.202,-41.155,-41.107,-41.056,-41.003,-40.949,-40.891,-40.832,-40.770,-40.706,-40.639,-40.568,-40.495,-40.417,
--40.336,-40.249,-40.158,-40.062,-39.959,-39.852,-39.738,-39.618,-39.492,-39.360,-39.223,-39.081,-38.935,-38.784,-38.630,-38.474,
--38.315,-38.155,-37.993,-37.832,-37.671,-37.510,-37.350,-37.192,-37.034,-36.878,-36.724,-36.571,-36.419,-36.269,-36.120,-35.972,
--35.826,-35.680,-35.536,-35.394,-35.253,-35.114,-34.977,-34.843,-34.711,-34.583,-34.458,-34.337,-34.219,-34.106,-33.996,-33.890,
--33.788,-33.690,-33.595,-33.503,-33.414,-33.327,-33.241,-33.158,-33.075,-32.992,-32.911,-32.829,-32.748,-32.666,-32.585,-32.504,
--32.424,-32.343,-32.264,-32.185,-32.107,-32.031,-31.956,-31.882,-31.809,-31.737,-31.665,-31.594,-31.523,-31.452,-31.380,-31.306,
--31.231,-31.155,-31.076,-30.995,-30.912,-30.827,-30.740,-30.652,-30.563,-30.474,-30.386,-30.298,-30.213,-30.129,-30.049,-29.973,
--29.901,-29.832,-29.768,-29.708,-29.651,-29.597,-29.545,-29.494,-29.444,-29.393,-29.339,-29.282,-29.221,-29.154,-29.082,-29.002,
--28.916,-28.822,-28.720,-28.612,-28.498,-28.378,-28.253,-28.126,-27.996,-27.867,-27.738,-27.612,-27.490,-27.374,-27.264,-27.161,
--27.068,-26.983,-26.909,-26.845,-26.792,-26.749,-26.716,-26.694,-26.681,-26.678,-26.684,-26.698,-26.720,-26.750,-26.787,-26.830,
--26.878,-26.932,-26.990,-27.052,-27.116,-27.183,-27.252,-27.321,-27.390,-27.457,-27.522,-27.584,-27.643,-27.696,-27.744,-27.786,
--27.822,-27.851,-27.874,-27.891,-27.903,-27.909,-27.911,-27.910,-27.908,-27.904,-27.900,-27.898,-27.899,-27.902,-27.909,-27.920,
--27.934,-27.953,-27.974,-27.997,-28.021,-28.044,-28.065,-28.082,-28.092,-28.095,-28.088,-28.070,-28.040,-27.996,-27.939,-27.868,
--27.783,-27.686,-27.576,-27.456,-27.328,-27.194,-27.055,-26.915,-26.776,-26.639,-26.508,-26.383,-26.267,-26.161,-26.064,-25.979,
--25.904,-25.838,-25.782,-25.733,-25.690,-25.651,-25.615,-25.579,-25.541,-25.501,-25.456,-25.405,-25.348,-25.283,-25.212,-25.134,
--25.050,-24.961,-24.868,-24.773,-24.679,-24.586,-24.496,-24.412,-24.336,-24.269,-24.212,-24.167,-24.134,-24.115,-24.109,-24.117,
--24.137,-24.170,-24.214,-24.268,-24.331,-24.402,-24.479,-24.560,-24.643,-24.728,-24.813,-24.896,-24.976,-25.052,-25.124,-25.190,
--25.250,-25.304,-25.351,-25.392,-25.428,-25.457,-25.481,-25.501,-25.517,-25.531,-25.542,-25.552,-25.562,-25.573,-25.585,-25.598,
--25.614,-25.632,-25.653,-25.675,-25.700,-25.726,-25.752,-25.777,-25.800,-25.820,-25.835,-25.844,-25.845,-25.837,-25.819,-25.790,
--25.750,-25.698,-25.634,-25.558,-25.472,-25.376,-25.272,-25.162,-25.047,-24.930,-24.813,-24.698,-24.587,-24.482,-24.384,-24.294,
--24.213,-24.142,-24.079,-24.023,-23.975,-23.931,-23.889,-23.847,-23.802,-23.752,-23.693,-23.624,-23.541,-23.443,-23.329,-23.198,
--23.051,-22.887,-22.708,-22.516,-22.315,-22.107,-21.896,-21.686,-21.482,-21.287,-21.105,-20.941,-20.796,-20.675,-20.578,-20.507,
--20.462,-20.442,-20.445,-20.468,-20.509,-20.564,-20.627,-20.693,-20.758,-20.815,-20.861,-20.889,-20.896,-20.877,-20.829,-20.751,
--20.641,-20.498,-20.323,-20.118,-19.886,-19.628,-19.351,-19.057,-18.753,-18.444,-18.134,-17.830,-17.536,-17.257,-16.998,-16.763,
--16.554,-16.373,-16.222,-16.101,-16.011,-15.950,-15.916,-15.906,-15.918,-15.948,-15.992,-16.045,-16.104,-16.163,-16.218,-16.267,
--16.303,-16.326,-16.331,-16.316,-16.280,-16.222,-16.141,-16.039,-15.914,-15.771,-15.609,-15.432,-15.243,-15.044,-14.839,-14.631,
--14.424,-14.221,-14.025,-13.838,-13.664,-13.503,-13.358,-13.230,-13.119,-13.025,-12.948,-12.886,-12.839,-12.805,-12.782,-12.767,
--12.758,-12.753,-12.750,-12.746,-12.740,-12.729,-12.712,-12.689,-12.658,-12.620,-12.574,-12.521,-12.461,-12.396,-12.328,-12.256,
--12.184,-12.112,-12.043,-11.976,-11.915,-11.858,-11.808,-11.765,-11.728,-11.697,-11.671,-11.651,-11.634,-11.619,-11.606,-11.592,
--11.576,-11.557,-11.534,-11.506,-11.472,-11.431,-11.384,-11.330,-11.270,-11.205,-11.135,-11.063,-10.988,-10.914,-10.840,-10.769,
--10.702,-10.640,-10.584,-10.536,-10.495,-10.462,-10.437,-10.420,-10.410,-10.407,-10.409,-10.416,-10.426,-10.439,-10.452,-10.466,
--10.477,-10.486,-10.492,-10.494,-10.491,-10.483,-10.470,-10.451,-10.427,-10.398,-10.365,-10.327,-10.286,-10.241,-10.193,-10.320,
--10.285,-10.246,-10.204,-10.159,-10.111,-10.060,-10.007,-9.952,-9.894,-9.835,-9.774,-9.712,-9.648,-9.584,-9.518,-9.453,
--9.387,-9.322,-9.257,-9.195,-9.134,-9.077,-9.022,-8.972,-8.926,-8.886,-8.851,-8.822,-8.799,-8.783,-8.772,-8.768,
--8.769,-8.775,-8.785,-8.799,-8.815,-8.833,-8.852,-8.869,-8.884,-8.896,-8.903,-8.903,-8.897,-8.883,-8.859,-8.825,
--8.781,-8.725,-8.658,-8.580,-8.489,-8.388,-8.275,-8.153,-8.020,-7.879,-7.729,-7.573,-7.411,-7.244,-7.074,-6.901,
--6.727,-6.552,-6.379,-6.206,-6.037,-5.870,-5.707,-5.549,-5.395,-5.246,-5.102,-4.962,-4.827,-4.697,-4.570,-4.446,
--4.325,-4.205,-4.087,-3.969,-3.850,-3.729,-3.606,-3.480,-3.349,-3.214,-3.073,-2.926,-2.772,-2.612,-2.445,-2.271,
--2.092,-1.906,-1.715,-1.519,-1.320,-1.119,-.917,-.716,-.517,-.321,-.131,.053,.228,.394,.549,.692,
-.822,.938,1.041,1.128,1.201,1.260,1.305,1.337,1.356,1.364,1.362,1.350,1.331,1.304,1.272,1.236,
-1.196,1.153,1.108,1.062,1.015,.966,.917,.867,.816,.764,.710,.654,.596,.536,.474,.410,
-.344,.276,.208,.140,.073,.007,-.056,-.115,-.169,-.216,-.257,-.290,-.314,-.329,-.335,-.332,
--.321,-.301,-.275,-.243,-.206,-.167,-.126,-.085,-.046,-.011,.019,.044,.061,.070,.071,.064,
-.050,.027,-.001,-.035,-.073,-.113,-.154,-.195,-.233,-.267,-.295,-.318,-.332,-.339,-.337,-.327,
--.308,-.281,-.247,-.206,-.160,-.110,-.056,-.001,.054,.110,.164,.216,.266,.313,.357,.398,
-.437,.474,.510,.545,.580,.616,.654,.695,.738,.785,.836,.891,.949,1.011,1.076,1.143,
-1.212,1.282,1.352,1.420,1.487,1.550,1.609,1.663,1.711,1.753,1.788,1.816,1.837,1.851,1.857,1.857,
-1.851,1.839,1.823,1.802,1.778,1.752,1.724,1.695,1.666,1.638,1.612,1.587,1.565,1.546,1.530,1.518,
-1.509,1.504,1.503,1.506,1.513,1.523,1.537,1.554,1.574,1.597,1.623,1.653,1.684,1.719,1.756,1.797,
-1.840,1.885,1.934,1.986,2.041,2.100,2.161,2.225,2.292,2.362,2.433,2.506,2.580,2.655,2.728,2.800,
-2.869,2.933,2.993,3.047,3.092,3.129,3.156,3.172,3.176,3.168,3.146,3.111,3.062,2.999,2.923,2.834,
-2.732,2.618,2.493,2.358,2.214,2.062,1.902,1.736,1.565,1.390,1.211,1.029,.845,.659,.471,.283,
-.094,-.096,-.285,-.474,-.663,-.850,-1.035,-1.218,-1.398,-1.574,-1.746,-1.912,-2.072,-2.226,-2.373,-2.512,
--2.643,-2.766,-2.882,-2.991,-3.093,-3.189,-3.282,-3.372,-3.461,-3.552,-3.646,-3.745,-3.851,-3.968,-4.095,-4.236,
--4.390,-4.561,-4.747,-4.950,-5.170,-5.405,-5.654,-5.918,-6.193,-6.478,-6.770,-7.068,-7.369,-7.671,-7.971,-8.268,
--8.559,-8.843,-9.119,-9.386,-9.644,-9.891,-10.130,-10.360,-10.582,-10.797,-11.007,-11.212,-11.415,-11.617,-11.820,-12.024,
--12.230,-12.439,-12.653,-12.870,-13.092,-13.318,-13.547,-13.779,-14.013,-14.248,-14.483,-14.717,-14.948,-15.177,-15.402,-15.621,
--15.836,-16.045,-16.248,-16.445,-16.637,-16.823,-17.004,-17.181,-17.354,-17.524,-17.692,-17.858,-18.023,-18.187,-18.352,-18.516,
--18.682,-18.849,-19.016,-19.186,-19.357,-19.529,-19.704,-19.880,-20.059,-20.240,-20.424,-20.612,-20.802,-20.998,-21.197,-21.402,
--21.612,-21.828,-22.050,-22.279,-22.514,-22.755,-23.002,-23.255,-23.513,-23.775,-24.040,-24.307,-24.575,-24.843,-25.110,-25.375,
--25.636,-25.892,-26.143,-26.389,-26.628,-26.860,-27.086,-27.306,-27.520,-27.729,-27.933,-28.134,-28.333,-28.531,-28.728,-28.925,
--29.124,-29.325,-29.528,-29.734,-29.942,-30.152,-30.364,-30.577,-30.790,-31.002,-31.212,-31.419,-31.621,-31.818,-32.008,-32.192,
--32.367,-32.536,-32.696,-32.849,-32.996,-33.138,-33.275,-33.411,-33.546,-33.684,-33.825,-33.973,-34.130,-34.297,-34.477,-34.671,
--34.880,-35.105,-35.346,-35.604,-35.878,-36.166,-36.466,-36.777,-37.096,-37.419,-37.744,-38.067,-38.384,-38.692,-38.987,-39.265,
--39.524,-39.761,-39.974,-40.161,-40.322,-40.455,-40.561,-40.642,-40.698,-40.733,-40.750,-40.750,-40.740,-40.722,-40.702,-40.682,
--40.669,-40.666,-40.677,-40.705,-40.754,-40.825,-40.921,-41.041,-41.187,-41.358,-41.552,-41.767,-42.000,-42.248,-42.508,-42.775,
--43.045,-43.314,-43.577,-43.830,-44.070,-44.293,-44.496,-44.678,-44.836,-44.971,-45.081,-45.167,-45.231,-45.274,-45.298,-45.307,
--45.303,-45.289,-45.268,-45.243,-45.217,-45.193,-45.172,-45.156,-45.146,-45.142,-45.146,-45.155,-45.169,-45.187,-45.207,-45.226,
--45.244,-45.257,-45.265,-45.265,-45.257,-45.239,-45.212,-45.176,-45.131,-45.078,-45.021,-44.961,-44.900,-44.842,-44.790,-44.745,
--44.711,-44.690,-44.684,-44.693,-44.719,-44.760,-44.816,-44.884,-44.961,-45.045,-45.130,-45.212,-45.286,-45.346,-45.387,-45.404,
--45.393,-45.349,-45.270,-45.153,-44.997,-44.802,-44.570,-44.304,-44.007,-43.685,-43.344,-42.991,-42.634,-42.281,-41.940,-41.620,
--41.328,-41.074,-40.862,-40.699,-40.590,-40.538,-40.544,-40.610,-40.733,-40.912,-41.142,-41.419,-41.737,-42.089,-42.466,-42.863,
--43.269,-43.679,-44.083,-44.476,-44.851,-45.203,-45.527,-45.821,-46.082,-46.309,-46.503,-46.664,-46.794,-46.897,-46.976,-47.033,
--47.074,-47.102,-47.121,-47.136,-47.149,-47.164,-47.182,-47.207,-47.239,-47.279,-47.328,-47.385,-47.448,-47.518,-47.592,-47.670,
--47.748,-47.826,-47.902,-47.975,-48.042,-48.103,-48.158,-48.205,-48.244,-48.276,-48.300,-48.318,-48.328,-48.333,-48.333,-48.328,
--48.319,-48.307,-48.292,-48.275,-48.257,-48.236,-48.214,-48.190,-48.165,-48.139,-48.112,-48.084,-48.054,-48.025,-47.995,-47.966,
--47.938,-47.911,-47.887,-47.866,-47.850,-47.839,-47.833,-47.834,-47.842,-47.857,-47.880,-47.911,-47.949,-47.994,-48.046,-48.104,
--48.166,-48.233,-48.302,-48.373,-48.445,-48.516,-48.585,-48.652,-48.716,-48.777,-48.833,-48.886,-48.934,-48.979,-49.020,-49.059,
--49.095,-49.130,-49.163,-49.197,-49.231,-49.266,-49.302,-49.339,-49.378,-49.418,-49.459,-49.501,-49.543,-49.584,-49.624,-49.661,
--49.696,-49.727,-49.754,-49.775,-49.792,-49.802,-49.808,-49.807,-49.802,-49.792,-49.777,-49.759,-49.739,-49.717,-49.693,-49.670,
--49.648,-49.627,-49.608,-49.591,-49.577,-49.566,-49.557,-49.551,-49.547,-49.544,-49.542,-49.539,-49.536,-49.531,-49.524,-49.514,
--49.500,-49.482,-49.460,-49.434,-49.402,-49.367,-49.328,-49.285,-49.240,-49.193,-49.144,-49.096,-49.048,-49.001,-48.957,-48.915,
--48.876,-48.841,-48.810,-48.783,-48.759,-48.739,-48.722,-48.707,-48.693,-48.680,-48.667,-48.652,-48.636,-48.616,-48.592,-48.564,
--48.531,-48.491,-48.446,-48.394,-48.336,-48.272,-48.202,-48.126,-48.046,-47.961,-47.873,-47.783,-47.690,-47.597,-47.503,-47.411,
--47.319,-47.230,-47.143,-47.060,-46.980,-46.904,-46.831,-46.763,-46.698,-46.637,-46.579,-46.525,-46.473,-46.424,-46.377,-46.332,
--46.288,-46.246,-46.204,-46.162,-46.121,-46.081,-46.040,-46.000,-45.960,-45.920,-45.880,-45.841,-45.802,-45.764,-45.727,-45.690,
--45.655,-45.621,-45.589,-45.557,-45.527,-45.497,-45.469,-45.441,-45.413,-45.385,-45.357,-45.328,-45.297,-45.264,-45.229,-45.191,
--45.149,-45.102,-45.051,-44.995,-44.933,-44.864,-44.789,-44.708,-44.620,-44.526,-44.424,-44.317,-44.204,-44.086,-43.963,-43.837,
--43.708,-43.577,-43.445,-43.313,-43.183,-43.055,-42.930,-42.809,-42.694,-42.585,-42.483,-42.387,-42.299,-42.219,-42.146,-42.080,
--42.021,-41.968,-41.922,-41.880,-41.842,-41.807,-41.774,-41.742,-41.710,-41.678,-41.643,-41.607,-41.567,-41.524,-41.476,-41.425,
--41.369,-41.308,-41.243,-41.173,-41.100,-41.022,-40.941,-40.856,-40.768,-40.677,-40.582,-40.485,-40.385,-40.283,-40.177,-40.068,
--39.956,-39.841,-39.722,-39.599,-39.473,-39.343,-39.210,-39.073,-38.932,-38.789,-38.643,-38.495,-38.345,-38.195,-38.044,-37.893,
--37.744,-37.596,-37.450,-37.306,-37.166,-37.028,-36.894,-36.764,-36.636,-36.512,-36.390,-36.270,-36.153,-36.036,-35.921,-35.805,
--35.689,-35.573,-35.456,-35.337,-35.217,-35.096,-34.973,-34.849,-34.725,-34.600,-34.476,-34.352,-34.230,-34.110,-33.993,-33.878,
--33.768,-33.661,-33.559,-33.461,-33.367,-33.278,-33.194,-33.113,-33.036,-32.962,-32.890,-32.820,-32.751,-32.683,-32.615,-32.547,
--32.477,-32.405,-32.332,-32.257,-32.179,-32.098,-32.015,-31.930,-31.843,-31.754,-31.663,-31.571,-31.479,-31.386,-31.294,-31.203,
--31.113,-31.024,-30.938,-30.855,-30.774,-30.697,-30.623,-30.553,-30.487,-30.425,-30.367,-30.312,-30.260,-30.212,-30.167,-30.124,
--30.083,-30.043,-30.004,-29.964,-29.924,-29.883,-29.839,-29.793,-29.743,-29.690,-29.632,-29.569,-29.501,-29.428,-29.349,-29.266,
--29.177,-29.085,-28.988,-28.888,-28.785,-28.680,-28.574,-28.468,-28.363,-28.259,-28.158,-28.060,-27.965,-27.876,-27.791,-27.713,
--27.640,-27.574,-27.515,-27.463,-27.418,-27.381,-27.351,-27.328,-27.313,-27.306,-27.306,-27.314,-27.329,-27.351,-27.380,-27.416,
--27.459,-27.508,-27.562,-27.622,-27.685,-27.752,-27.820,-27.890,-27.960,-28.029,-28.095,-28.157,-28.214,-28.265,-28.308,-28.344,
--28.371,-28.389,-28.398,-28.398,-28.390,-28.374,-28.351,-28.323,-28.291,-28.256,-28.220,-28.185,-28.152,-28.123,-28.099,-28.081,
--28.070,-28.066,-28.070,-28.081,-28.098,-28.121,-28.148,-28.177,-28.208,-28.237,-28.263,-28.284,-28.297,-28.302,-28.296,-28.279,
--28.248,-28.205,-28.147,-28.077,-27.994,-27.900,-27.796,-27.683,-27.564,-27.440,-27.314,-27.188,-27.063,-26.942,-26.827,-26.718,
--26.617,-26.524,-26.439,-26.364,-26.296,-26.236,-26.182,-26.134,-26.089,-26.046,-26.004,-25.962,-25.917,-25.869,-25.816,-25.759,
--25.696,-25.628,-25.555,-25.477,-25.396,-25.312,-25.226,-25.141,-25.058,-24.979,-24.904,-24.837,-24.778,-24.728,-24.689,-24.662,
--24.647,-24.643,-24.652,-24.673,-24.705,-24.746,-24.796,-24.854,-24.917,-24.984,-25.054,-25.124,-25.193,-25.259,-25.320,-25.377,
--25.427,-25.469,-25.503,-25.530,-25.548,-25.559,-25.562,-25.559,-25.551,-25.537,-25.521,-25.503,-25.483,-25.464,-25.447,-25.432,
--25.420,-25.411,-25.406,-25.404,-25.406,-25.411,-25.418,-25.425,-25.432,-25.437,-25.439,-25.436,-25.427,-25.411,-25.386,-25.352,
--25.308,-25.254,-25.191,-25.118,-25.037,-24.948,-24.854,-24.757,-24.657,-24.558,-24.462,-24.370,-24.284,-24.207,-24.139,-24.082,
--24.036,-24.000,-23.975,-23.958,-23.949,-23.946,-23.945,-23.943,-23.939,-23.928,-23.908,-23.874,-23.826,-23.759,-23.674,-23.567,
--23.439,-23.289,-23.120,-22.931,-22.727,-22.509,-22.281,-22.048,-21.814,-21.582,-21.359,-21.147,-20.951,-20.774,-20.620,-20.490,
--20.386,-20.308,-20.256,-20.229,-20.224,-20.239,-20.269,-20.310,-20.359,-20.409,-20.456,-20.494,-20.519,-20.526,-20.512,-20.473,
--20.408,-20.314,-20.190,-20.039,-19.860,-19.656,-19.430,-19.185,-18.927,-18.659,-18.387,-18.116,-17.850,-17.596,-17.356,-17.136,
--16.938,-16.766,-16.620,-16.503,-16.414,-16.352,-16.317,-16.305,-16.314,-16.341,-16.380,-16.429,-16.482,-16.536,-16.584,-16.624,
--16.652,-16.663,-16.654,-16.624,-16.571,-16.493,-16.390,-16.263,-16.113,-15.941,-15.750,-15.542,-15.320,-15.088,-14.849,-14.607,
--14.365,-14.128,-13.898,-13.679,-13.472,-13.280,-13.105,-12.949,-12.810,-12.691,-12.589,-12.505,-12.437,-12.383,-12.342,-12.311,
--12.288,-12.271,-12.256,-12.243,-12.229,-12.211,-12.189,-12.161,-12.127,-12.085,-12.037,-11.981,-11.919,-11.851,-11.779,-11.703,
--11.626,-11.549,-11.473,-11.400,-11.331,-11.267,-11.209,-11.157,-11.113,-11.076,-11.046,-11.023,-11.005,-10.992,-10.984,-10.977,
--10.972,-10.967,-10.961,-10.952,-10.940,-10.923,-10.902,-10.875,-10.843,-10.806,-10.764,-10.717,-10.667,-10.615,-10.561,-10.507,
--10.455,-10.404,-10.357,-10.315,-10.278,-10.247,-10.222,-10.205,-10.194,-10.190,-10.193,-10.202,-10.215,-10.234,-10.255,-10.279,
--10.304,-10.330,-10.354,-10.377,-10.397,-10.414,-10.427,-10.435,-10.438,-10.437,-10.430,-10.417,-10.400,-10.378,-10.351,-10.320,
--10.648,-10.626,-10.599,-10.566,-10.529,-10.487,-10.441,-10.391,-10.339,-10.283,-10.226,-10.167,-10.107,-10.046,-9.986,-9.927,
--9.869,-9.812,-9.759,-9.708,-9.660,-9.616,-9.576,-9.541,-9.510,-9.484,-9.462,-9.445,-9.433,-9.424,-9.419,-9.418,
--9.418,-9.421,-9.425,-9.429,-9.432,-9.434,-9.434,-9.430,-9.422,-9.410,-9.392,-9.368,-9.337,-9.299,-9.254,-9.202,
--9.143,-9.077,-9.004,-8.924,-8.839,-8.749,-8.654,-8.556,-8.454,-8.350,-8.244,-8.138,-8.031,-7.925,-7.819,-7.715,
--7.612,-7.511,-7.411,-7.313,-7.216,-7.121,-7.026,-6.932,-6.838,-6.743,-6.646,-6.547,-6.446,-6.341,-6.232,-6.118,
--5.999,-5.874,-5.742,-5.603,-5.456,-5.302,-5.140,-4.969,-4.791,-4.604,-4.409,-4.206,-3.996,-3.779,-3.556,-3.327,
--3.093,-2.857,-2.617,-2.376,-2.135,-1.895,-1.657,-1.423,-1.195,-.973,-.759,-.555,-.360,-.177,-.007,.150,
-.294,.423,.538,.639,.725,.798,.857,.904,.938,.962,.976,.981,.979,.969,.954,.934,
-.910,.882,.852,.819,.784,.747,.708,.666,.622,.575,.526,.472,.415,.355,.290,.221,
-.148,.071,-.009,-.092,-.176,-.262,-.348,-.434,-.517,-.598,-.674,-.746,-.811,-.870,-.923,-.967,
--1.005,-1.035,-1.057,-1.074,-1.084,-1.090,-1.092,-1.091,-1.088,-1.085,-1.083,-1.082,-1.084,-1.090,-1.100,-1.113,
--1.132,-1.154,-1.181,-1.210,-1.243,-1.276,-1.311,-1.344,-1.376,-1.406,-1.431,-1.451,-1.465,-1.473,-1.474,-1.468,
--1.454,-1.434,-1.406,-1.373,-1.333,-1.289,-1.241,-1.190,-1.136,-1.082,-1.026,-.970,-.915,-.861,-.808,-.755,
--.703,-.652,-.600,-.547,-.494,-.438,-.379,-.318,-.252,-.183,-.108,-.030,.053,.139,.229,.322,
-.416,.511,.605,.697,.786,.870,.947,1.018,1.080,1.133,1.175,1.207,1.228,1.238,1.237,1.225,
-1.204,1.174,1.136,1.092,1.042,.989,.934,.878,.823,.770,.720,.676,.637,.604,.579,.561,
-.552,.550,.556,.569,.590,.618,.651,.690,.734,.782,.833,.887,.942,1.000,1.058,1.118,
-1.177,1.237,1.297,1.356,1.415,1.474,1.533,1.590,1.647,1.703,1.757,1.810,1.860,1.908,1.952,1.991,
-2.026,2.055,2.077,2.092,2.098,2.095,2.083,2.060,2.026,1.981,1.924,1.857,1.778,1.689,1.589,1.480,
-1.363,1.238,1.106,.969,.827,.681,.533,.384,.234,.084,-.065,-.214,-.360,-.506,-.650,-.792,
--.934,-1.074,-1.214,-1.353,-1.493,-1.632,-1.773,-1.915,-2.057,-2.201,-2.345,-2.490,-2.636,-2.783,-2.929,-3.075,
--3.221,-3.366,-3.510,-3.652,-3.794,-3.934,-4.073,-4.212,-4.351,-4.490,-4.631,-4.774,-4.920,-5.070,-5.225,-5.385,
--5.552,-5.726,-5.908,-6.098,-6.296,-6.502,-6.717,-6.939,-7.168,-7.404,-7.646,-7.892,-8.141,-8.394,-8.648,-8.902,
--9.156,-9.408,-9.659,-9.907,-10.152,-10.394,-10.632,-10.868,-11.100,-11.330,-11.558,-11.784,-12.009,-12.234,-12.458,-12.683,
--12.908,-13.134,-13.362,-13.590,-13.819,-14.048,-14.278,-14.507,-14.735,-14.962,-15.186,-15.407,-15.625,-15.840,-16.049,-16.254,
--16.455,-16.650,-16.840,-17.026,-17.207,-17.384,-17.558,-17.729,-17.897,-18.063,-18.229,-18.394,-18.558,-18.723,-18.889,-19.056,
--19.224,-19.393,-19.564,-19.737,-19.910,-20.086,-20.262,-20.440,-20.618,-20.798,-20.979,-21.161,-21.345,-21.530,-21.717,-21.906,
--22.097,-22.291,-22.487,-22.687,-22.890,-23.097,-23.307,-23.520,-23.737,-23.957,-24.180,-24.405,-24.631,-24.859,-25.088,-25.316,
--25.543,-25.769,-25.993,-26.215,-26.435,-26.651,-26.864,-27.075,-27.283,-27.488,-27.691,-27.893,-28.094,-28.295,-28.496,-28.698,
--28.901,-29.106,-29.313,-29.522,-29.732,-29.945,-30.159,-30.373,-30.588,-30.802,-31.014,-31.223,-31.428,-31.629,-31.824,-32.012,
--32.194,-32.370,-32.538,-32.699,-32.854,-33.004,-33.150,-33.293,-33.436,-33.579,-33.726,-33.878,-34.037,-34.205,-34.385,-34.577,
--34.784,-35.006,-35.244,-35.497,-35.766,-36.049,-36.346,-36.653,-36.969,-37.290,-37.614,-37.937,-38.255,-38.565,-38.862,-39.143,
--39.405,-39.645,-39.860,-40.048,-40.207,-40.338,-40.439,-40.512,-40.558,-40.579,-40.578,-40.559,-40.524,-40.479,-40.428,-40.375,
--40.326,-40.284,-40.255,-40.242,-40.248,-40.277,-40.330,-40.409,-40.516,-40.648,-40.807,-40.989,-41.193,-41.415,-41.652,-41.899,
--42.154,-42.410,-42.663,-42.910,-43.145,-43.366,-43.568,-43.749,-43.907,-44.040,-44.148,-44.231,-44.289,-44.324,-44.337,-44.331,
--44.309,-44.274,-44.230,-44.179,-44.124,-44.070,-44.018,-43.971,-43.932,-43.900,-43.878,-43.866,-43.863,-43.869,-43.883,-43.903,
--43.928,-43.956,-43.985,-44.013,-44.039,-44.060,-44.075,-44.083,-44.085,-44.079,-44.065,-44.045,-44.019,-43.989,-43.956,-43.922,
--43.888,-43.856,-43.827,-43.803,-43.785,-43.772,-43.766,-43.765,-43.769,-43.776,-43.784,-43.792,-43.795,-43.793,-43.781,-43.757,
--43.718,-43.662,-43.587,-43.490,-43.372,-43.231,-43.070,-42.887,-42.687,-42.472,-42.245,-42.010,-41.772,-41.537,-41.309,-41.093,
--40.896,-40.723,-40.577,-40.463,-40.384,-40.344,-40.343,-40.384,-40.465,-40.585,-40.744,-40.938,-41.163,-41.416,-41.692,-41.986,
--42.293,-42.607,-42.925,-43.239,-43.548,-43.845,-44.128,-44.394,-44.642,-44.868,-45.074,-45.258,-45.421,-45.565,-45.691,-45.801,
--45.896,-45.980,-46.054,-46.120,-46.182,-46.240,-46.297,-46.353,-46.410,-46.468,-46.528,-46.590,-46.652,-46.716,-46.779,-46.842,
--46.903,-46.962,-47.018,-47.070,-47.117,-47.160,-47.198,-47.231,-47.260,-47.284,-47.304,-47.322,-47.336,-47.349,-47.362,-47.373,
--47.386,-47.399,-47.414,-47.430,-47.447,-47.467,-47.487,-47.509,-47.531,-47.554,-47.576,-47.597,-47.616,-47.633,-47.648,-47.659,
--47.668,-47.674,-47.677,-47.677,-47.674,-47.670,-47.664,-47.658,-47.652,-47.647,-47.643,-47.642,-47.643,-47.648,-47.657,-47.670,
--47.687,-47.709,-47.735,-47.766,-47.800,-47.839,-47.880,-47.925,-47.973,-48.022,-48.074,-48.127,-48.180,-48.235,-48.290,-48.344,
--48.399,-48.454,-48.509,-48.563,-48.617,-48.670,-48.722,-48.774,-48.824,-48.873,-48.920,-48.966,-49.009,-49.049,-49.087,-49.121,
--49.151,-49.178,-49.200,-49.218,-49.231,-49.241,-49.245,-49.246,-49.242,-49.236,-49.226,-49.213,-49.199,-49.183,-49.166,-49.149,
--49.132,-49.115,-49.100,-49.085,-49.072,-49.060,-49.049,-49.039,-49.030,-49.021,-49.013,-49.004,-48.995,-48.984,-48.972,-48.958,
--48.942,-48.923,-48.902,-48.878,-48.853,-48.825,-48.795,-48.764,-48.732,-48.700,-48.668,-48.637,-48.607,-48.579,-48.553,-48.531,
--48.511,-48.493,-48.479,-48.468,-48.459,-48.452,-48.446,-48.441,-48.436,-48.430,-48.422,-48.411,-48.397,-48.378,-48.354,-48.325,
--48.289,-48.247,-48.197,-48.141,-48.078,-48.008,-47.933,-47.851,-47.765,-47.675,-47.582,-47.486,-47.389,-47.291,-47.194,-47.099,
--47.006,-46.915,-46.829,-46.746,-46.668,-46.594,-46.525,-46.461,-46.401,-46.345,-46.294,-46.246,-46.200,-46.157,-46.116,-46.075,
--46.036,-45.996,-45.956,-45.914,-45.872,-45.828,-45.782,-45.734,-45.684,-45.633,-45.580,-45.525,-45.470,-45.414,-45.357,-45.301,
--45.245,-45.190,-45.136,-45.084,-45.035,-44.987,-44.942,-44.899,-44.858,-44.820,-44.784,-44.749,-44.716,-44.683,-44.650,-44.617,
--44.583,-44.547,-44.509,-44.467,-44.422,-44.372,-44.317,-44.257,-44.192,-44.120,-44.043,-43.961,-43.873,-43.780,-43.683,-43.582,
--43.478,-43.372,-43.265,-43.158,-43.051,-42.946,-42.845,-42.746,-42.653,-42.564,-42.482,-42.406,-42.336,-42.273,-42.217,-42.168,
--42.124,-42.087,-42.054,-42.025,-42.000,-41.977,-41.955,-41.934,-41.912,-41.889,-41.863,-41.833,-41.800,-41.762,-41.719,-41.670,
--41.615,-41.554,-41.487,-41.414,-41.335,-41.249,-41.158,-41.061,-40.959,-40.852,-40.740,-40.623,-40.502,-40.377,-40.248,-40.114,
--39.977,-39.837,-39.693,-39.546,-39.396,-39.243,-39.089,-38.932,-38.774,-38.615,-38.456,-38.298,-38.141,-37.985,-37.832,-37.682,
--37.536,-37.394,-37.258,-37.126,-37.001,-36.881,-36.766,-36.658,-36.554,-36.456,-36.362,-36.271,-36.183,-36.098,-36.014,-35.930,
--35.846,-35.760,-35.673,-35.583,-35.490,-35.394,-35.295,-35.192,-35.086,-34.976,-34.864,-34.750,-34.635,-34.518,-34.401,-34.285,
--34.169,-34.056,-33.944,-33.836,-33.730,-33.627,-33.527,-33.430,-33.336,-33.244,-33.154,-33.065,-32.975,-32.886,-32.795,-32.703,
--32.607,-32.509,-32.407,-32.300,-32.190,-32.075,-31.956,-31.833,-31.707,-31.578,-31.447,-31.316,-31.184,-31.053,-30.925,-30.800,
--30.679,-30.564,-30.456,-30.355,-30.262,-30.178,-30.103,-30.037,-29.981,-29.934,-29.895,-29.864,-29.841,-29.824,-29.812,-29.804,
--29.800,-29.797,-29.794,-29.792,-29.787,-29.779,-29.768,-29.752,-29.730,-29.703,-29.670,-29.631,-29.585,-29.534,-29.477,-29.414,
--29.347,-29.276,-29.202,-29.126,-29.048,-28.970,-28.891,-28.814,-28.738,-28.664,-28.592,-28.524,-28.460,-28.398,-28.341,-28.288,
--28.239,-28.195,-28.154,-28.118,-28.086,-28.059,-28.037,-28.019,-28.007,-28.000,-27.999,-28.004,-28.015,-28.033,-28.058,-28.090,
--28.129,-28.175,-28.227,-28.287,-28.352,-28.422,-28.496,-28.574,-28.653,-28.732,-28.811,-28.886,-28.958,-29.023,-29.081,-29.131,
--29.170,-29.199,-29.217,-29.222,-29.216,-29.198,-29.170,-29.131,-29.084,-29.029,-28.968,-28.903,-28.837,-28.770,-28.705,-28.643,
--28.587,-28.537,-28.496,-28.462,-28.437,-28.422,-28.415,-28.416,-28.425,-28.439,-28.458,-28.480,-28.503,-28.524,-28.543,-28.558,
--28.567,-28.568,-28.560,-28.543,-28.516,-28.479,-28.432,-28.375,-28.310,-28.237,-28.157,-28.072,-27.983,-27.893,-27.801,-27.711,
--27.623,-27.538,-27.456,-27.380,-27.309,-27.242,-27.181,-27.123,-27.069,-27.018,-26.968,-26.919,-26.868,-26.816,-26.760,-26.700,
--26.634,-26.563,-26.486,-26.403,-26.313,-26.218,-26.118,-26.014,-25.907,-25.799,-25.691,-25.585,-25.482,-25.385,-25.294,-25.211,
--25.137,-25.074,-25.022,-24.982,-24.954,-24.938,-24.933,-24.939,-24.956,-24.981,-25.014,-25.053,-25.096,-25.143,-25.191,-25.239,
--25.285,-25.329,-25.368,-25.402,-25.430,-25.451,-25.465,-25.472,-25.472,-25.465,-25.452,-25.433,-25.408,-25.379,-25.345,-25.307,
--25.267,-25.224,-25.178,-25.130,-25.079,-25.027,-24.971,-24.913,-24.852,-24.786,-24.716,-24.641,-24.562,-24.477,-24.386,-24.291,
--24.190,-24.086,-23.978,-23.869,-23.759,-23.650,-23.544,-23.443,-23.348,-23.263,-23.188,-23.126,-23.078,-23.044,-23.027,-23.026,
--23.040,-23.070,-23.114,-23.169,-23.235,-23.307,-23.382,-23.458,-23.531,-23.596,-23.650,-23.689,-23.710,-23.709,-23.685,-23.635,
--23.558,-23.453,-23.321,-23.163,-22.980,-22.775,-22.550,-22.311,-22.060,-21.801,-21.541,-21.283,-21.031,-20.791,-20.565,-20.358,
--20.172,-20.008,-19.869,-19.754,-19.664,-19.596,-19.549,-19.520,-19.507,-19.505,-19.511,-19.521,-19.530,-19.534,-19.530,-19.514,
--19.484,-19.437,-19.372,-19.289,-19.186,-19.065,-18.927,-18.774,-18.610,-18.436,-18.258,-18.077,-17.899,-17.728,-17.566,-17.417,
--17.284,-17.169,-17.075,-17.002,-16.951,-16.921,-16.912,-16.921,-16.946,-16.985,-17.034,-17.089,-17.146,-17.201,-17.251,-17.290,
--17.316,-17.325,-17.313,-17.279,-17.221,-17.137,-17.027,-16.891,-16.730,-16.545,-16.338,-16.112,-15.870,-15.614,-15.349,-15.078,
--14.805,-14.532,-14.265,-14.006,-13.757,-13.522,-13.303,-13.101,-12.917,-12.752,-12.607,-12.479,-12.370,-12.277,-12.200,-12.135,
--12.082,-12.038,-12.000,-11.967,-11.937,-11.906,-11.875,-11.840,-11.802,-11.758,-11.708,-11.653,-11.592,-11.525,-11.453,-11.377,
--11.299,-11.218,-11.137,-11.056,-10.978,-10.903,-10.832,-10.767,-10.708,-10.655,-10.609,-10.570,-10.538,-10.513,-10.493,-10.479,
--10.469,-10.463,-10.459,-10.457,-10.455,-10.453,-10.449,-10.444,-10.436,-10.426,-10.413,-10.396,-10.377,-10.356,-10.333,-10.309,
--10.284,-10.259,-10.236,-10.215,-10.196,-10.181,-10.170,-10.164,-10.163,-10.167,-10.176,-10.191,-10.211,-10.236,-10.265,-10.297,
--10.332,-10.370,-10.408,-10.447,-10.485,-10.522,-10.556,-10.588,-10.615,-10.638,-10.657,-10.670,-10.677,-10.679,-10.675,-10.664,
--10.648,-11.202,-11.189,-11.169,-11.141,-11.107,-11.067,-11.020,-10.969,-10.913,-10.853,-10.791,-10.727,-10.662,-10.596,-10.532,
--10.470,-10.410,-10.354,-10.302,-10.255,-10.213,-10.177,-10.146,-10.121,-10.102,-10.088,-10.079,-10.074,-10.073,-10.075,-10.079,
--10.084,-10.089,-10.092,-10.094,-10.093,-10.088,-10.077,-10.062,-10.039,-10.010,-9.974,-9.931,-9.881,-9.823,-9.759,-9.689,
--9.614,-9.534,-9.451,-9.365,-9.278,-9.190,-9.104,-9.019,-8.937,-8.859,-8.785,-8.716,-8.653,-8.595,-8.543,-8.497,
--8.456,-8.420,-8.387,-8.357,-8.329,-8.302,-8.274,-8.244,-8.211,-8.173,-8.128,-8.076,-8.016,-7.945,-7.863,-7.769,
--7.663,-7.544,-7.411,-7.264,-7.103,-6.928,-6.741,-6.540,-6.327,-6.103,-5.868,-5.623,-5.371,-5.110,-4.844,-4.574,
--4.300,-4.024,-3.747,-3.471,-3.198,-2.927,-2.662,-2.403,-2.150,-1.906,-1.672,-1.447,-1.233,-1.031,-.841,-.664,
--.499,-.348,-.210,-.085,.028,.128,.216,.292,.357,.412,.457,.493,.521,.542,.555,.563,
-.564,.561,.552,.539,.521,.499,.473,.442,.407,.368,.324,.275,.221,.162,.098,.029,
--.046,-.125,-.208,-.296,-.387,-.481,-.578,-.676,-.776,-.875,-.973,-1.070,-1.165,-1.257,-1.346,-1.430,
--1.511,-1.587,-1.659,-1.727,-1.790,-1.850,-1.906,-1.959,-2.010,-2.059,-2.106,-2.152,-2.198,-2.243,-2.289,-2.335,
--2.380,-2.426,-2.472,-2.517,-2.560,-2.603,-2.643,-2.680,-2.714,-2.743,-2.768,-2.787,-2.801,-2.808,-2.809,-2.804,
--2.793,-2.775,-2.752,-2.724,-2.690,-2.653,-2.611,-2.567,-2.520,-2.472,-2.422,-2.370,-2.319,-2.266,-2.213,-2.159,
--2.104,-2.048,-1.989,-1.929,-1.865,-1.798,-1.727,-1.651,-1.570,-1.484,-1.392,-1.296,-1.194,-1.088,-.978,-.865,
--.751,-.635,-.521,-.408,-.300,-.196,-.100,-.011,.068,.136,.192,.236,.268,.286,.291,.283,
-.264,.234,.193,.144,.089,.027,-.037,-.104,-.170,-.235,-.295,-.351,-.401,-.443,-.476,-.499,
--.513,-.517,-.510,-.493,-.467,-.432,-.387,-.336,-.277,-.213,-.144,-.071,.005,.082,.161,.240,
-.319,.396,.472,.546,.617,.686,.751,.813,.871,.925,.975,1.020,1.060,1.094,1.122,1.143,
-1.156,1.162,1.160,1.148,1.127,1.096,1.055,1.003,.940,.867,.782,.688,.584,.471,.349,.221,
-.086,-.054,-.198,-.344,-.491,-.639,-.785,-.929,-1.069,-1.205,-1.337,-1.464,-1.585,-1.701,-1.811,-1.917,
--2.019,-2.117,-2.212,-2.306,-2.398,-2.492,-2.587,-2.684,-2.784,-2.889,-2.999,-3.115,-3.236,-3.364,-3.499,-3.641,
--3.789,-3.943,-4.103,-4.269,-4.439,-4.614,-4.793,-4.974,-5.158,-5.344,-5.531,-5.719,-5.908,-6.096,-6.285,-6.474,
--6.662,-6.850,-7.038,-7.227,-7.415,-7.603,-7.792,-7.982,-8.173,-8.365,-8.559,-8.754,-8.951,-9.150,-9.352,-9.556,
--9.762,-9.971,-10.183,-10.398,-10.615,-10.836,-11.060,-11.287,-11.518,-11.751,-11.988,-12.227,-12.469,-12.714,-12.961,-13.210,
--13.460,-13.711,-13.962,-14.213,-14.463,-14.712,-14.958,-15.201,-15.440,-15.675,-15.905,-16.130,-16.349,-16.562,-16.769,-16.971,
--17.166,-17.356,-17.540,-17.719,-17.894,-18.065,-18.232,-18.398,-18.561,-18.723,-18.884,-19.046,-19.207,-19.370,-19.534,-19.699,
--19.865,-20.034,-20.203,-20.375,-20.547,-20.720,-20.895,-21.069,-21.244,-21.419,-21.594,-21.769,-21.943,-22.117,-22.290,-22.464,
--22.637,-22.810,-22.984,-23.159,-23.334,-23.511,-23.689,-23.868,-24.050,-24.233,-24.418,-24.605,-24.794,-24.985,-25.178,-25.371,
--25.566,-25.762,-25.958,-26.155,-26.352,-26.549,-26.746,-26.943,-27.140,-27.337,-27.534,-27.732,-27.930,-28.129,-28.329,-28.530,
--28.732,-28.936,-29.142,-29.349,-29.558,-29.767,-29.978,-30.189,-30.399,-30.609,-30.817,-31.023,-31.225,-31.425,-31.620,-31.810,
--31.996,-32.176,-32.351,-32.522,-32.688,-32.850,-33.010,-33.168,-33.326,-33.485,-33.647,-33.814,-33.987,-34.168,-34.359,-34.560,
--34.773,-34.999,-35.239,-35.491,-35.756,-36.034,-36.322,-36.620,-36.924,-37.233,-37.544,-37.854,-38.159,-38.456,-38.742,-39.014,
--39.267,-39.500,-39.710,-39.895,-40.053,-40.183,-40.286,-40.361,-40.409,-40.433,-40.433,-40.414,-40.378,-40.329,-40.271,-40.208,
--40.145,-40.085,-40.034,-39.995,-39.971,-39.965,-39.980,-40.018,-40.080,-40.166,-40.275,-40.408,-40.562,-40.735,-40.924,-41.126,
--41.337,-41.553,-41.770,-41.984,-42.191,-42.387,-42.569,-42.734,-42.880,-43.005,-43.107,-43.186,-43.241,-43.275,-43.287,-43.280,
--43.256,-43.218,-43.168,-43.109,-43.046,-42.979,-42.914,-42.851,-42.794,-42.745,-42.705,-42.675,-42.655,-42.647,-42.649,-42.661,
--42.681,-42.708,-42.740,-42.776,-42.814,-42.851,-42.885,-42.916,-42.941,-42.959,-42.969,-42.971,-42.964,-42.948,-42.924,-42.892,
--42.852,-42.807,-42.756,-42.702,-42.644,-42.585,-42.525,-42.464,-42.403,-42.343,-42.282,-42.222,-42.162,-42.101,-42.037,-41.971,
--41.902,-41.828,-41.748,-41.662,-41.570,-41.472,-41.367,-41.255,-41.139,-41.019,-40.896,-40.773,-40.651,-40.533,-40.423,-40.321,
--40.232,-40.157,-40.099,-40.061,-40.044,-40.051,-40.081,-40.136,-40.215,-40.320,-40.448,-40.599,-40.770,-40.961,-41.167,-41.387,
--41.619,-41.858,-42.101,-42.348,-42.593,-42.835,-43.072,-43.302,-43.522,-43.733,-43.932,-44.120,-44.296,-44.461,-44.614,-44.756,
--44.889,-45.012,-45.128,-45.236,-45.337,-45.433,-45.525,-45.611,-45.694,-45.773,-45.849,-45.921,-45.989,-46.053,-46.113,-46.168,
--46.219,-46.264,-46.304,-46.339,-46.369,-46.394,-46.414,-46.430,-46.443,-46.453,-46.461,-46.468,-46.476,-46.484,-46.494,-46.508,
--46.524,-46.545,-46.570,-46.601,-46.636,-46.676,-46.720,-46.769,-46.821,-46.875,-46.932,-46.989,-47.046,-47.103,-47.157,-47.208,
--47.256,-47.299,-47.338,-47.370,-47.398,-47.420,-47.436,-47.447,-47.452,-47.454,-47.452,-47.446,-47.439,-47.429,-47.420,-47.410,
--47.401,-47.393,-47.387,-47.385,-47.385,-47.389,-47.396,-47.407,-47.423,-47.442,-47.466,-47.493,-47.523,-47.557,-47.594,-47.634,
--47.676,-47.721,-47.767,-47.814,-47.863,-47.912,-47.961,-48.011,-48.060,-48.108,-48.156,-48.202,-48.246,-48.289,-48.329,-48.367,
--48.402,-48.434,-48.464,-48.490,-48.514,-48.534,-48.551,-48.566,-48.577,-48.587,-48.593,-48.598,-48.600,-48.601,-48.601,-48.599,
--48.596,-48.593,-48.588,-48.583,-48.578,-48.572,-48.565,-48.557,-48.549,-48.540,-48.530,-48.519,-48.507,-48.493,-48.478,-48.461,
--48.443,-48.423,-48.402,-48.380,-48.358,-48.334,-48.311,-48.288,-48.266,-48.245,-48.226,-48.209,-48.195,-48.184,-48.176,-48.171,
--48.169,-48.171,-48.177,-48.185,-48.196,-48.209,-48.223,-48.238,-48.252,-48.266,-48.278,-48.287,-48.292,-48.292,-48.287,-48.275,
--48.256,-48.230,-48.195,-48.153,-48.102,-48.042,-47.974,-47.899,-47.816,-47.726,-47.630,-47.529,-47.424,-47.316,-47.206,-47.094,
--46.983,-46.872,-46.764,-46.658,-46.555,-46.457,-46.364,-46.276,-46.193,-46.117,-46.045,-45.980,-45.920,-45.865,-45.815,-45.769,
--45.726,-45.687,-45.649,-45.614,-45.579,-45.544,-45.509,-45.473,-45.435,-45.396,-45.354,-45.309,-45.262,-45.211,-45.158,-45.101,
--45.042,-44.980,-44.915,-44.849,-44.781,-44.711,-44.641,-44.570,-44.500,-44.429,-44.359,-44.290,-44.222,-44.156,-44.090,-44.026,
--43.964,-43.903,-43.843,-43.784,-43.725,-43.667,-43.610,-43.552,-43.494,-43.436,-43.377,-43.317,-43.256,-43.194,-43.132,-43.069,
--43.005,-42.941,-42.877,-42.813,-42.750,-42.689,-42.629,-42.572,-42.517,-42.465,-42.416,-42.371,-42.330,-42.293,-42.260,-42.231,
--42.206,-42.185,-42.166,-42.151,-42.138,-42.126,-42.116,-42.105,-42.095,-42.084,-42.070,-42.055,-42.036,-42.013,-41.986,-41.955,
--41.917,-41.874,-41.825,-41.769,-41.707,-41.638,-41.562,-41.478,-41.388,-41.291,-41.187,-41.076,-40.958,-40.834,-40.704,-40.567,
--40.425,-40.278,-40.126,-39.970,-39.810,-39.647,-39.481,-39.313,-39.144,-38.975,-38.806,-38.639,-38.473,-38.311,-38.152,-37.998,
--37.848,-37.704,-37.566,-37.435,-37.310,-37.191,-37.079,-36.973,-36.872,-36.777,-36.687,-36.600,-36.517,-36.435,-36.355,-36.275,
--36.195,-36.113,-36.028,-35.941,-35.850,-35.756,-35.657,-35.554,-35.447,-35.335,-35.220,-35.102,-34.981,-34.857,-34.732,-34.606,
--34.479,-34.353,-34.228,-34.104,-33.981,-33.860,-33.741,-33.623,-33.507,-33.392,-33.277,-33.162,-33.046,-32.928,-32.809,-32.686,
--32.559,-32.429,-32.293,-32.153,-32.007,-31.856,-31.700,-31.540,-31.376,-31.209,-31.040,-30.871,-30.703,-30.537,-30.374,-30.217,
--30.067,-29.926,-29.794,-29.673,-29.565,-29.469,-29.388,-29.320,-29.266,-29.227,-29.201,-29.188,-29.187,-29.197,-29.217,-29.245,
--29.279,-29.319,-29.361,-29.406,-29.450,-29.494,-29.534,-29.571,-29.602,-29.628,-29.648,-29.660,-29.666,-29.665,-29.656,-29.641,
--29.620,-29.594,-29.563,-29.528,-29.489,-29.448,-29.405,-29.360,-29.316,-29.271,-29.226,-29.182,-29.139,-29.098,-29.058,-29.019,
--28.982,-28.946,-28.912,-28.880,-28.850,-28.822,-28.796,-28.774,-28.755,-28.739,-28.728,-28.723,-28.723,-28.729,-28.743,-28.764,
--28.793,-28.831,-28.877,-28.932,-28.994,-29.064,-29.141,-29.225,-29.313,-29.404,-29.497,-29.590,-29.682,-29.770,-29.852,-29.927,
--29.993,-30.049,-30.093,-30.123,-30.140,-30.142,-30.130,-30.104,-30.064,-30.011,-29.946,-29.872,-29.789,-29.699,-29.606,-29.509,
--29.413,-29.319,-29.228,-29.143,-29.064,-28.994,-28.933,-28.882,-28.841,-28.810,-28.789,-28.777,-28.772,-28.774,-28.782,-28.794,
--28.808,-28.824,-28.838,-28.851,-28.860,-28.866,-28.866,-28.860,-28.848,-28.830,-28.805,-28.774,-28.738,-28.696,-28.651,-28.602,
--28.550,-28.496,-28.441,-28.385,-28.330,-28.274,-28.219,-28.165,-28.111,-28.056,-28.002,-27.946,-27.888,-27.827,-27.762,-27.694,
--27.620,-27.540,-27.454,-27.361,-27.261,-27.154,-27.040,-26.921,-26.796,-26.666,-26.533,-26.397,-26.261,-26.126,-25.993,-25.864,
--25.740,-25.624,-25.516,-25.417,-25.330,-25.253,-25.189,-25.136,-25.097,-25.069,-25.053,-25.048,-25.053,-25.068,-25.090,-25.118,
--25.152,-25.189,-25.228,-25.267,-25.305,-25.340,-25.372,-25.398,-25.418,-25.430,-25.434,-25.429,-25.414,-25.389,-25.353,-25.307,
--25.249,-25.180,-25.100,-25.008,-24.906,-24.792,-24.668,-24.534,-24.390,-24.237,-24.076,-23.908,-23.733,-23.554,-23.371,-23.186,
--23.001,-22.818,-22.640,-22.467,-22.303,-22.150,-22.010,-21.886,-21.779,-21.692,-21.626,-21.582,-21.562,-21.566,-21.594,-21.645,
--21.719,-21.814,-21.927,-22.056,-22.198,-22.349,-22.506,-22.663,-22.817,-22.964,-23.098,-23.215,-23.313,-23.386,-23.432,-23.448,
--23.433,-23.385,-23.304,-23.190,-23.045,-22.869,-22.666,-22.438,-22.190,-21.926,-21.649,-21.365,-21.078,-20.792,-20.512,-20.243,
--19.987,-19.748,-19.528,-19.329,-19.152,-18.997,-18.866,-18.755,-18.665,-18.592,-18.536,-18.492,-18.458,-18.431,-18.407,-18.385,
--18.361,-18.333,-18.299,-18.258,-18.209,-18.151,-18.085,-18.011,-17.930,-17.845,-17.757,-17.668,-17.581,-17.498,-17.422,-17.355,
--17.300,-17.257,-17.228,-17.215,-17.217,-17.234,-17.266,-17.312,-17.368,-17.434,-17.506,-17.582,-17.657,-17.729,-17.794,-17.847,
--17.887,-17.909,-17.911,-17.890,-17.844,-17.772,-17.673,-17.547,-17.394,-17.214,-17.009,-16.782,-16.535,-16.270,-15.990,-15.700,
--15.403,-15.102,-14.800,-14.502,-14.211,-13.930,-13.661,-13.406,-13.169,-12.949,-12.749,-12.568,-12.406,-12.264,-12.140,-12.034,
--11.943,-11.867,-11.803,-11.750,-11.704,-11.665,-11.631,-11.599,-11.567,-11.535,-11.501,-11.464,-11.423,-11.378,-11.329,-11.275,
--11.217,-11.156,-11.092,-11.027,-10.960,-10.893,-10.827,-10.763,-10.701,-10.643,-10.590,-10.541,-10.498,-10.460,-10.428,-10.401,
--10.380,-10.364,-10.353,-10.345,-10.341,-10.340,-10.341,-10.344,-10.348,-10.352,-10.356,-10.360,-10.363,-10.366,-10.367,-10.368,
--10.369,-10.369,-10.370,-10.371,-10.374,-10.378,-10.384,-10.393,-10.404,-10.420,-10.438,-10.461,-10.488,-10.519,-10.554,-10.592,
--10.634,-10.679,-10.725,-10.774,-10.824,-10.873,-10.923,-10.970,-11.016,-11.058,-11.096,-11.130,-11.158,-11.181,-11.196,-11.205,
--11.207,-11.202,-11.744,-11.743,-11.734,-11.717,-11.692,-11.661,-11.622,-11.577,-11.526,-11.471,-11.412,-11.350,-11.286,-11.221,
--11.157,-11.095,-11.035,-10.978,-10.925,-10.877,-10.834,-10.797,-10.765,-10.740,-10.719,-10.704,-10.694,-10.687,-10.684,-10.682,
--10.682,-10.681,-10.679,-10.674,-10.666,-10.654,-10.636,-10.612,-10.581,-10.542,-10.497,-10.444,-10.383,-10.316,-10.243,-10.164,
--10.082,-9.995,-9.907,-9.819,-9.731,-9.645,-9.563,-9.486,-9.415,-9.351,-9.295,-9.247,-9.208,-9.177,-9.156,-9.143,
--9.138,-9.139,-9.146,-9.157,-9.172,-9.187,-9.201,-9.212,-9.219,-9.219,-9.211,-9.193,-9.163,-9.119,-9.061,-8.987,
--8.896,-8.789,-8.663,-8.521,-8.360,-8.183,-7.989,-7.780,-7.556,-7.319,-7.070,-6.810,-6.541,-6.266,-5.984,-5.698,
--5.410,-5.122,-4.833,-4.547,-4.265,-3.987,-3.715,-3.449,-3.192,-2.943,-2.703,-2.473,-2.253,-2.044,-1.846,-1.658,
--1.481,-1.315,-1.160,-1.016,-.882,-.759,-.646,-.542,-.448,-.363,-.288,-.220,-.161,-.110,-.067,-.031,
--.002,.019,.034,.042,.044,.039,.028,.010,-.013,-.043,-.078,-.119,-.167,-.219,-.277,-.340,
--.408,-.481,-.557,-.638,-.722,-.810,-.900,-.992,-1.086,-1.182,-1.278,-1.375,-1.473,-1.570,-1.666,-1.762,
--1.858,-1.952,-2.045,-2.137,-2.228,-2.318,-2.407,-2.495,-2.581,-2.667,-2.752,-2.836,-2.919,-3.000,-3.080,-3.159,
--3.235,-3.309,-3.380,-3.447,-3.511,-3.570,-3.625,-3.674,-3.718,-3.756,-3.787,-3.811,-3.829,-3.841,-3.845,-3.843,
--3.835,-3.822,-3.802,-3.779,-3.751,-3.719,-3.684,-3.647,-3.608,-3.567,-3.525,-3.482,-3.438,-3.394,-3.349,-3.303,
--3.255,-3.206,-3.154,-3.100,-3.042,-2.980,-2.914,-2.843,-2.766,-2.684,-2.596,-2.502,-2.403,-2.299,-2.190,-2.078,
--1.963,-1.846,-1.729,-1.613,-1.500,-1.390,-1.286,-1.189,-1.100,-1.020,-.951,-.894,-.848,-.814,-.794,-.785,
--.789,-.804,-.829,-.864,-.906,-.955,-1.009,-1.067,-1.126,-1.184,-1.241,-1.295,-1.343,-1.385,-1.420,-1.447,
--1.464,-1.473,-1.471,-1.459,-1.438,-1.407,-1.368,-1.320,-1.265,-1.203,-1.136,-1.064,-.988,-.910,-.831,-.750,
--.670,-.590,-.512,-.437,-.364,-.295,-.229,-.168,-.111,-.060,-.013,.027,.061,.089,.110,.123,
-.129,.126,.115,.095,.065,.026,-.023,-.083,-.152,-.231,-.321,-.419,-.527,-.643,-.766,-.896,
--1.032,-1.172,-1.315,-1.460,-1.605,-1.750,-1.893,-2.033,-2.169,-2.300,-2.425,-2.544,-2.657,-2.763,-2.863,-2.956,
--3.044,-3.126,-3.205,-3.280,-3.354,-3.427,-3.500,-3.576,-3.655,-3.738,-3.828,-3.924,-4.027,-4.139,-4.261,-4.391,
--4.531,-4.681,-4.839,-5.007,-5.183,-5.366,-5.555,-5.750,-5.950,-6.153,-6.358,-6.564,-6.771,-6.976,-7.180,-7.381,
--7.578,-7.772,-7.961,-8.146,-8.327,-8.503,-8.675,-8.844,-9.009,-9.171,-9.331,-9.491,-9.650,-9.809,-9.970,-10.134,
--10.301,-10.471,-10.647,-10.828,-11.015,-11.208,-11.409,-11.616,-11.830,-12.052,-12.280,-12.515,-12.756,-13.002,-13.253,-13.509,
--13.767,-14.027,-14.289,-14.551,-14.812,-15.072,-15.329,-15.582,-15.831,-16.075,-16.313,-16.545,-16.771,-16.990,-17.202,-17.407,
--17.605,-17.797,-17.983,-18.164,-18.339,-18.510,-18.678,-18.843,-19.005,-19.165,-19.325,-19.483,-19.642,-19.801,-19.960,-20.121,
--20.282,-20.445,-20.608,-20.773,-20.938,-21.103,-21.269,-21.436,-21.602,-21.767,-21.932,-22.097,-22.260,-22.423,-22.585,-22.746,
--22.906,-23.066,-23.225,-23.385,-23.544,-23.704,-23.865,-24.026,-24.189,-24.353,-24.519,-24.687,-24.857,-25.029,-25.202,-25.378,
--25.556,-25.735,-25.917,-26.100,-26.284,-26.470,-26.656,-26.845,-27.034,-27.224,-27.415,-27.607,-27.800,-27.993,-28.188,-28.384,
--28.580,-28.778,-28.976,-29.175,-29.375,-29.575,-29.774,-29.974,-30.172,-30.370,-30.566,-30.760,-30.951,-31.140,-31.325,-31.507,
--31.685,-31.859,-32.030,-32.198,-32.362,-32.524,-32.685,-32.845,-33.005,-33.167,-33.331,-33.500,-33.674,-33.854,-34.042,-34.239,
--34.446,-34.663,-34.891,-35.129,-35.379,-35.639,-35.908,-36.185,-36.469,-36.758,-37.049,-37.340,-37.628,-37.911,-38.186,-38.451,
--38.701,-38.936,-39.152,-39.347,-39.521,-39.671,-39.797,-39.899,-39.977,-40.032,-40.065,-40.078,-40.073,-40.053,-40.021,-39.979,
--39.932,-39.884,-39.836,-39.793,-39.758,-39.734,-39.723,-39.728,-39.750,-39.789,-39.848,-39.925,-40.020,-40.132,-40.259,-40.400,
--40.551,-40.711,-40.876,-41.044,-41.211,-41.373,-41.529,-41.676,-41.811,-41.932,-42.038,-42.127,-42.199,-42.254,-42.291,-42.312,
--42.318,-42.310,-42.289,-42.258,-42.220,-42.175,-42.127,-42.077,-42.027,-41.980,-41.937,-41.899,-41.868,-41.843,-41.825,-41.814,
--41.810,-41.812,-41.819,-41.831,-41.844,-41.859,-41.874,-41.888,-41.898,-41.904,-41.905,-41.900,-41.888,-41.868,-41.840,-41.805,
--41.761,-41.710,-41.652,-41.588,-41.518,-41.442,-41.363,-41.280,-41.194,-41.107,-41.017,-40.927,-40.837,-40.746,-40.654,-40.563,
--40.472,-40.381,-40.290,-40.200,-40.109,-40.019,-39.929,-39.841,-39.754,-39.669,-39.587,-39.509,-39.437,-39.370,-39.311,-39.261,
--39.222,-39.194,-39.178,-39.177,-39.191,-39.220,-39.266,-39.329,-39.409,-39.506,-39.619,-39.748,-39.891,-40.049,-40.218,-40.399,
--40.588,-40.785,-40.987,-41.193,-41.402,-41.610,-41.817,-42.021,-42.222,-42.417,-42.606,-42.789,-42.964,-43.132,-43.293,-43.446,
--43.591,-43.729,-43.861,-43.986,-44.104,-44.217,-44.324,-44.426,-44.524,-44.616,-44.704,-44.787,-44.866,-44.940,-45.010,-45.075,
--45.135,-45.191,-45.242,-45.289,-45.331,-45.369,-45.403,-45.434,-45.462,-45.487,-45.511,-45.533,-45.555,-45.577,-45.599,-45.624,
--45.650,-45.679,-45.711,-45.746,-45.785,-45.827,-45.873,-45.922,-45.974,-46.028,-46.085,-46.143,-46.202,-46.262,-46.321,-46.379,
--46.435,-46.488,-46.539,-46.586,-46.630,-46.669,-46.704,-46.735,-46.762,-46.785,-46.803,-46.818,-46.830,-46.839,-46.846,-46.851,
--46.855,-46.858,-46.860,-46.862,-46.865,-46.869,-46.874,-46.881,-46.889,-46.899,-46.911,-46.926,-46.942,-46.961,-46.981,-47.004,
--47.028,-47.054,-47.082,-47.111,-47.142,-47.174,-47.207,-47.240,-47.274,-47.309,-47.344,-47.378,-47.413,-47.447,-47.481,-47.514,
--47.547,-47.578,-47.608,-47.636,-47.663,-47.689,-47.713,-47.735,-47.756,-47.775,-47.792,-47.808,-47.821,-47.834,-47.845,-47.854,
--47.862,-47.869,-47.875,-47.879,-47.883,-47.885,-47.887,-47.887,-47.887,-47.886,-47.883,-47.880,-47.876,-47.871,-47.865,-47.858,
--47.850,-47.842,-47.833,-47.823,-47.813,-47.803,-47.793,-47.783,-47.773,-47.765,-47.758,-47.752,-47.748,-47.746,-47.746,-47.749,
--47.754,-47.761,-47.771,-47.784,-47.798,-47.815,-47.833,-47.853,-47.873,-47.892,-47.912,-47.930,-47.945,-47.958,-47.967,-47.971,
--47.970,-47.963,-47.950,-47.928,-47.900,-47.862,-47.817,-47.762,-47.699,-47.627,-47.547,-47.458,-47.363,-47.260,-47.151,-47.036,
--46.918,-46.796,-46.671,-46.545,-46.420,-46.295,-46.172,-46.052,-45.936,-45.825,-45.720,-45.621,-45.529,-45.443,-45.366,-45.296,
--45.233,-45.177,-45.128,-45.086,-45.049,-45.017,-44.990,-44.965,-44.943,-44.923,-44.902,-44.881,-44.858,-44.833,-44.805,-44.772,
--44.735,-44.693,-44.645,-44.592,-44.532,-44.467,-44.396,-44.320,-44.239,-44.153,-44.064,-43.971,-43.876,-43.780,-43.682,-43.584,
--43.488,-43.392,-43.298,-43.208,-43.120,-43.036,-42.957,-42.881,-42.810,-42.744,-42.683,-42.626,-42.574,-42.526,-42.482,-42.443,
--42.406,-42.373,-42.343,-42.316,-42.291,-42.268,-42.247,-42.228,-42.210,-42.193,-42.178,-42.163,-42.150,-42.137,-42.125,-42.114,
--42.104,-42.095,-42.086,-42.078,-42.071,-42.063,-42.056,-42.049,-42.042,-42.034,-42.025,-42.015,-42.003,-41.990,-41.974,-41.955,
--41.932,-41.906,-41.875,-41.839,-41.798,-41.751,-41.699,-41.639,-41.573,-41.499,-41.418,-41.329,-41.233,-41.129,-41.018,-40.899,
--40.774,-40.641,-40.502,-40.358,-40.208,-40.054,-39.897,-39.737,-39.574,-39.411,-39.247,-39.085,-38.924,-38.765,-38.609,-38.458,
--38.311,-38.169,-38.032,-37.901,-37.775,-37.655,-37.540,-37.430,-37.324,-37.222,-37.124,-37.028,-36.933,-36.839,-36.744,-36.649,
--36.552,-36.451,-36.348,-36.240,-36.128,-36.012,-35.890,-35.764,-35.633,-35.497,-35.358,-35.215,-35.069,-34.921,-34.771,-34.621,
--34.470,-34.321,-34.172,-34.025,-33.880,-33.738,-33.598,-33.460,-33.324,-33.191,-33.059,-32.927,-32.796,-32.665,-32.532,-32.397,
--32.260,-32.120,-31.975,-31.827,-31.674,-31.516,-31.354,-31.188,-31.019,-30.847,-30.674,-30.500,-30.326,-30.155,-29.988,-29.826,
--29.671,-29.524,-29.387,-29.262,-29.150,-29.051,-28.967,-28.898,-28.844,-28.807,-28.784,-28.777,-28.784,-28.805,-28.837,-28.881,
--28.933,-28.994,-29.061,-29.132,-29.205,-29.280,-29.354,-29.426,-29.495,-29.560,-29.619,-29.672,-29.718,-29.757,-29.789,-29.814,
--29.832,-29.843,-29.847,-29.846,-29.839,-29.827,-29.811,-29.791,-29.768,-29.743,-29.715,-29.685,-29.653,-29.621,-29.587,-29.552,
--29.517,-29.482,-29.446,-29.410,-29.374,-29.339,-29.305,-29.273,-29.243,-29.216,-29.192,-29.172,-29.158,-29.149,-29.147,-29.153,
--29.166,-29.188,-29.219,-29.259,-29.308,-29.366,-29.433,-29.507,-29.588,-29.675,-29.766,-29.859,-29.954,-30.048,-30.139,-30.225,
--30.305,-30.377,-30.438,-30.488,-30.525,-30.548,-30.557,-30.550,-30.528,-30.492,-30.441,-30.376,-30.300,-30.213,-30.118,-30.015,
--29.908,-29.798,-29.687,-29.578,-29.473,-29.372,-29.279,-29.194,-29.119,-29.054,-29.000,-28.956,-28.924,-28.902,-28.890,-28.886,
--28.891,-28.901,-28.917,-28.936,-28.957,-28.978,-28.999,-29.017,-29.032,-29.042,-29.047,-29.047,-29.039,-29.026,-29.005,-28.978,
--28.945,-28.906,-28.861,-28.812,-28.758,-28.701,-28.640,-28.576,-28.510,-28.442,-28.373,-28.301,-28.228,-28.153,-28.076,-27.997,
--27.916,-27.832,-27.745,-27.654,-27.560,-27.463,-27.361,-27.256,-27.147,-27.035,-26.920,-26.802,-26.683,-26.563,-26.443,-26.324,
--26.206,-26.092,-25.981,-25.876,-25.776,-25.684,-25.599,-25.522,-25.454,-25.396,-25.347,-25.307,-25.276,-25.254,-25.240,-25.234,
--25.234,-25.239,-25.249,-25.262,-25.277,-25.291,-25.305,-25.315,-25.321,-25.322,-25.315,-25.300,-25.275,-25.239,-25.191,-25.130,
--25.056,-24.968,-24.864,-24.746,-24.614,-24.466,-24.305,-24.130,-23.943,-23.744,-23.535,-23.318,-23.094,-22.865,-22.634,-22.403,
--22.175,-21.952,-21.737,-21.532,-21.341,-21.165,-21.008,-20.872,-20.759,-20.670,-20.607,-20.571,-20.562,-20.581,-20.628,-20.700,
--20.797,-20.917,-21.057,-21.214,-21.385,-21.566,-21.753,-21.941,-22.126,-22.305,-22.472,-22.623,-22.754,-22.862,-22.943,-22.996,
--23.018,-23.007,-22.962,-22.885,-22.775,-22.633,-22.462,-22.264,-22.042,-21.800,-21.541,-21.269,-20.988,-20.704,-20.418,-20.137,
--19.863,-19.599,-19.349,-19.114,-18.897,-18.700,-18.521,-18.363,-18.224,-18.104,-18.001,-17.914,-17.841,-17.780,-17.728,-17.685,
--17.646,-17.612,-17.579,-17.547,-17.514,-17.479,-17.443,-17.405,-17.366,-17.325,-17.285,-17.246,-17.211,-17.179,-17.154,-17.136,
--17.126,-17.127,-17.139,-17.163,-17.198,-17.245,-17.304,-17.372,-17.449,-17.533,-17.622,-17.713,-17.803,-17.890,-17.969,-18.039,
--18.096,-18.137,-18.159,-18.160,-18.138,-18.091,-18.017,-17.917,-17.789,-17.634,-17.452,-17.246,-17.017,-16.768,-16.499,-16.216,
--15.921,-15.616,-15.307,-14.996,-14.686,-14.381,-14.084,-13.798,-13.525,-13.268,-13.028,-12.807,-12.605,-12.423,-12.262,-12.120,
--11.998,-11.893,-11.806,-11.734,-11.675,-11.628,-11.592,-11.562,-11.539,-11.520,-11.504,-11.488,-11.472,-11.454,-11.433,-11.409,
--11.381,-11.349,-11.314,-11.274,-11.231,-11.185,-11.138,-11.088,-11.038,-10.989,-10.941,-10.894,-10.851,-10.810,-10.774,-10.742,
--10.715,-10.693,-10.676,-10.664,-10.656,-10.653,-10.654,-10.659,-10.667,-10.677,-10.689,-10.703,-10.718,-10.733,-10.749,-10.764,
--10.779,-10.793,-10.806,-10.819,-10.832,-10.845,-10.857,-10.870,-10.884,-10.899,-10.916,-10.935,-10.956,-10.980,-11.007,-11.037,
--11.070,-11.106,-11.146,-11.188,-11.233,-11.280,-11.328,-11.377,-11.426,-11.475,-11.522,-11.566,-11.608,-11.645,-11.677,-11.704,
--11.724,-11.738,-11.744,-12.193,-12.209,-12.219,-12.222,-12.218,-12.207,-12.189,-12.164,-12.133,-12.096,-12.054,-12.008,-11.958,
--11.906,-11.852,-11.798,-11.744,-11.690,-11.639,-11.590,-11.545,-11.502,-11.463,-11.428,-11.397,-11.369,-11.344,-11.321,-11.300,
--11.280,-11.259,-11.238,-11.216,-11.190,-11.161,-11.128,-11.090,-11.047,-10.997,-10.942,-10.881,-10.814,-10.742,-10.666,-10.585,
--10.502,-10.417,-10.331,-10.246,-10.163,-10.083,-10.008,-9.939,-9.877,-9.824,-9.779,-9.744,-9.718,-9.703,-9.697,-9.701,
--9.713,-9.734,-9.760,-9.792,-9.827,-9.863,-9.899,-9.933,-9.962,-9.984,-9.998,-10.002,-9.993,-9.969,-9.931,-9.875,
--9.802,-9.711,-9.600,-9.471,-9.322,-9.156,-8.971,-8.770,-8.553,-8.322,-8.078,-7.822,-7.557,-7.285,-7.006,-6.723,
--6.438,-6.152,-5.867,-5.585,-5.306,-5.032,-4.765,-4.504,-4.252,-4.008,-3.772,-3.547,-3.331,-3.125,-2.928,-2.742,
--2.565,-2.397,-2.239,-2.090,-1.950,-1.819,-1.696,-1.581,-1.474,-1.376,-1.285,-1.201,-1.126,-1.057,-.997,-.943,
--.897,-.858,-.827,-.803,-.785,-.775,-.772,-.776,-.786,-.803,-.826,-.855,-.890,-.930,-.975,-1.025,
--1.079,-1.138,-1.200,-1.265,-1.334,-1.405,-1.478,-1.554,-1.632,-1.711,-1.792,-1.875,-1.959,-2.044,-2.130,-2.218,
--2.307,-2.397,-2.489,-2.581,-2.675,-2.771,-2.867,-2.964,-3.062,-3.160,-3.259,-3.357,-3.456,-3.553,-3.648,-3.742,
--3.833,-3.921,-4.005,-4.085,-4.159,-4.228,-4.291,-4.347,-4.396,-4.438,-4.473,-4.500,-4.520,-4.532,-4.537,-4.536,
--4.528,-4.514,-4.495,-4.472,-4.444,-4.414,-4.380,-4.345,-4.308,-4.269,-4.231,-4.192,-4.152,-4.113,-4.073,-4.033,
--3.993,-3.952,-3.909,-3.864,-3.818,-3.768,-3.715,-3.658,-3.597,-3.531,-3.461,-3.386,-3.307,-3.223,-3.134,-3.043,
--2.949,-2.852,-2.755,-2.658,-2.562,-2.469,-2.379,-2.295,-2.216,-2.144,-2.080,-2.025,-1.979,-1.943,-1.916,-1.900,
--1.894,-1.896,-1.908,-1.927,-1.954,-1.986,-2.022,-2.062,-2.103,-2.144,-2.185,-2.222,-2.256,-2.285,-2.308,-2.325,
--2.333,-2.334,-2.326,-2.310,-2.286,-2.254,-2.214,-2.167,-2.113,-2.055,-1.991,-1.924,-1.855,-1.783,-1.711,-1.640,
--1.570,-1.502,-1.436,-1.375,-1.317,-1.265,-1.217,-1.175,-1.139,-1.109,-1.086,-1.069,-1.059,-1.056,-1.060,-1.071,
--1.090,-1.115,-1.148,-1.189,-1.237,-1.293,-1.356,-1.428,-1.506,-1.592,-1.686,-1.786,-1.892,-2.005,-2.123,-2.246,
--2.373,-2.503,-2.636,-2.770,-2.904,-3.039,-3.172,-3.303,-3.432,-3.556,-3.677,-3.793,-3.904,-4.010,-4.110,-4.206,
--4.297,-4.383,-4.466,-4.546,-4.624,-4.700,-4.777,-4.854,-4.934,-5.016,-5.103,-5.195,-5.292,-5.396,-5.508,-5.627,
--5.754,-5.889,-6.032,-6.183,-6.341,-6.506,-6.677,-6.854,-7.035,-7.219,-7.406,-7.594,-7.783,-7.971,-8.158,-8.342,
--8.523,-8.700,-8.873,-9.041,-9.205,-9.364,-9.519,-9.670,-9.816,-9.960,-10.101,-10.240,-10.378,-10.517,-10.656,-10.797,
--10.942,-11.090,-11.243,-11.401,-11.565,-11.736,-11.913,-12.098,-12.290,-12.490,-12.697,-12.910,-13.130,-13.356,-13.587,-13.823,
--14.062,-14.305,-14.548,-14.793,-15.038,-15.282,-15.524,-15.764,-16.000,-16.233,-16.461,-16.683,-16.901,-17.113,-17.320,-17.520,
--17.716,-17.906,-18.091,-18.271,-18.448,-18.620,-18.789,-18.955,-19.119,-19.281,-19.441,-19.600,-19.759,-19.917,-20.074,-20.232,
--20.389,-20.547,-20.704,-20.862,-21.020,-21.177,-21.334,-21.491,-21.647,-21.803,-21.958,-22.112,-22.266,-22.419,-22.571,-22.723,
--22.875,-23.027,-23.180,-23.332,-23.486,-23.640,-23.796,-23.953,-24.112,-24.273,-24.436,-24.601,-24.768,-24.938,-25.110,-25.284,
--25.461,-25.640,-25.820,-26.003,-26.186,-26.372,-26.558,-26.746,-26.934,-27.123,-27.313,-27.503,-27.693,-27.884,-28.075,-28.266,
--28.457,-28.648,-28.838,-29.029,-29.219,-29.408,-29.597,-29.785,-29.971,-30.156,-30.339,-30.520,-30.699,-30.875,-31.048,-31.218,
--31.385,-31.549,-31.710,-31.868,-32.023,-32.176,-32.327,-32.477,-32.627,-32.777,-32.929,-33.083,-33.240,-33.402,-33.569,-33.743,
--33.923,-34.112,-34.308,-34.514,-34.728,-34.951,-35.182,-35.421,-35.666,-35.918,-36.173,-36.432,-36.691,-36.949,-37.203,-37.453,
--37.694,-37.926,-38.147,-38.353,-38.545,-38.720,-38.876,-39.014,-39.133,-39.232,-39.313,-39.375,-39.420,-39.448,-39.463,-39.465,
--39.457,-39.441,-39.420,-39.396,-39.372,-39.351,-39.334,-39.324,-39.322,-39.331,-39.352,-39.385,-39.431,-39.491,-39.563,-39.648,
--39.744,-39.850,-39.966,-40.088,-40.216,-40.347,-40.479,-40.610,-40.738,-40.861,-40.978,-41.087,-41.187,-41.276,-41.354,-41.420,
--41.474,-41.516,-41.547,-41.567,-41.576,-41.576,-41.567,-41.552,-41.530,-41.503,-41.473,-41.440,-41.406,-41.371,-41.336,-41.302,
--41.269,-41.238,-41.208,-41.181,-41.156,-41.132,-41.110,-41.088,-41.067,-41.047,-41.026,-41.005,-40.982,-40.958,-40.932,-40.903,
--40.872,-40.838,-40.801,-40.761,-40.718,-40.671,-40.620,-40.566,-40.508,-40.446,-40.380,-40.310,-40.236,-40.157,-40.073,-39.986,
--39.893,-39.796,-39.695,-39.590,-39.481,-39.368,-39.253,-39.135,-39.016,-38.897,-38.779,-38.662,-38.549,-38.441,-38.339,-38.244,
--38.159,-38.085,-38.022,-37.973,-37.939,-37.920,-37.918,-37.932,-37.964,-38.013,-38.080,-38.163,-38.263,-38.378,-38.507,-38.649,
--38.802,-38.966,-39.138,-39.316,-39.499,-39.685,-39.873,-40.060,-40.245,-40.428,-40.606,-40.779,-40.946,-41.107,-41.261,-41.407,
--41.547,-41.679,-41.805,-41.924,-42.037,-42.146,-42.249,-42.349,-42.446,-42.539,-42.631,-42.722,-42.811,-42.900,-42.989,-43.077,
--43.167,-43.256,-43.346,-43.435,-43.526,-43.616,-43.706,-43.795,-43.884,-43.972,-44.059,-44.144,-44.228,-44.310,-44.389,-44.467,
--44.542,-44.615,-44.685,-44.752,-44.817,-44.879,-44.939,-44.996,-45.051,-45.103,-45.153,-45.201,-45.247,-45.291,-45.333,-45.374,
--45.413,-45.451,-45.487,-45.523,-45.557,-45.591,-45.624,-45.657,-45.690,-45.722,-45.755,-45.787,-45.819,-45.851,-45.883,-45.916,
--45.948,-45.980,-46.013,-46.045,-46.076,-46.108,-46.139,-46.170,-46.200,-46.229,-46.258,-46.286,-46.313,-46.340,-46.366,-46.391,
--46.416,-46.441,-46.465,-46.489,-46.513,-46.537,-46.561,-46.585,-46.610,-46.635,-46.660,-46.686,-46.713,-46.739,-46.766,-46.792,
--46.819,-46.845,-46.871,-46.896,-46.920,-46.943,-46.964,-46.984,-47.002,-47.018,-47.032,-47.044,-47.054,-47.062,-47.068,-47.072,
--47.074,-47.075,-47.074,-47.072,-47.070,-47.066,-47.063,-47.059,-47.056,-47.052,-47.050,-47.048,-47.046,-47.046,-47.046,-47.048,
--47.050,-47.053,-47.057,-47.061,-47.066,-47.070,-47.076,-47.081,-47.086,-47.091,-47.095,-47.099,-47.103,-47.107,-47.110,-47.113,
--47.116,-47.119,-47.122,-47.125,-47.129,-47.133,-47.137,-47.142,-47.148,-47.154,-47.160,-47.167,-47.173,-47.179,-47.185,-47.189,
--47.192,-47.193,-47.190,-47.185,-47.175,-47.160,-47.141,-47.115,-47.082,-47.043,-46.996,-46.942,-46.879,-46.808,-46.730,-46.643,
--46.549,-46.448,-46.341,-46.228,-46.110,-45.989,-45.864,-45.738,-45.611,-45.485,-45.362,-45.241,-45.124,-45.013,-44.908,-44.810,
--44.719,-44.637,-44.564,-44.499,-44.443,-44.395,-44.356,-44.324,-44.298,-44.279,-44.264,-44.253,-44.245,-44.238,-44.231,-44.223,
--44.213,-44.199,-44.181,-44.158,-44.128,-44.092,-44.049,-43.998,-43.940,-43.875,-43.803,-43.725,-43.640,-43.551,-43.457,-43.360,
--43.261,-43.161,-43.061,-42.962,-42.865,-42.771,-42.680,-42.595,-42.515,-42.440,-42.372,-42.310,-42.255,-42.206,-42.164,-42.127,
--42.097,-42.071,-42.050,-42.033,-42.020,-42.009,-42.000,-41.993,-41.986,-41.979,-41.972,-41.965,-41.956,-41.946,-41.934,-41.921,
--41.906,-41.889,-41.871,-41.851,-41.830,-41.808,-41.785,-41.762,-41.738,-41.714,-41.690,-41.665,-41.641,-41.617,-41.592,-41.567,
--41.541,-41.514,-41.485,-41.455,-41.421,-41.385,-41.346,-41.302,-41.253,-41.199,-41.140,-41.074,-41.002,-40.923,-40.837,-40.744,
--40.644,-40.538,-40.424,-40.305,-40.180,-40.050,-39.915,-39.777,-39.636,-39.493,-39.349,-39.205,-39.061,-38.919,-38.779,-38.642,
--38.509,-38.379,-38.253,-38.132,-38.015,-37.902,-37.793,-37.688,-37.586,-37.486,-37.388,-37.291,-37.194,-37.096,-36.996,-36.894,
--36.789,-36.679,-36.564,-36.445,-36.319,-36.187,-36.050,-35.906,-35.756,-35.601,-35.441,-35.276,-35.107,-34.935,-34.761,-34.586,
--34.410,-34.234,-34.059,-33.885,-33.714,-33.546,-33.381,-33.220,-33.062,-32.907,-32.756,-32.608,-32.463,-32.320,-32.178,-32.038,
--31.899,-31.759,-31.619,-31.478,-31.337,-31.193,-31.049,-30.903,-30.756,-30.609,-30.461,-30.315,-30.170,-30.027,-29.888,-29.754,
--29.626,-29.505,-29.392,-29.289,-29.196,-29.114,-29.044,-28.987,-28.943,-28.912,-28.893,-28.888,-28.894,-28.912,-28.941,-28.979,
--29.025,-29.078,-29.137,-29.200,-29.266,-29.333,-29.400,-29.466,-29.529,-29.589,-29.644,-29.693,-29.737,-29.775,-29.805,-29.829,
--29.847,-29.857,-29.862,-29.860,-29.853,-29.841,-29.824,-29.803,-29.779,-29.751,-29.721,-29.689,-29.655,-29.620,-29.584,-29.547,
--29.509,-29.472,-29.434,-29.396,-29.359,-29.322,-29.287,-29.253,-29.221,-29.192,-29.165,-29.142,-29.124,-29.109,-29.101,-29.098,
--29.101,-29.112,-29.129,-29.154,-29.187,-29.227,-29.274,-29.327,-29.387,-29.452,-29.522,-29.594,-29.668,-29.742,-29.816,-29.886,
--29.952,-30.012,-30.065,-30.108,-30.142,-30.165,-30.175,-30.173,-30.158,-30.130,-30.090,-30.037,-29.973,-29.898,-29.815,-29.724,
--29.627,-29.526,-29.423,-29.320,-29.218,-29.120,-29.027,-28.941,-28.862,-28.793,-28.733,-28.684,-28.645,-28.616,-28.598,-28.589,
--28.589,-28.597,-28.611,-28.629,-28.651,-28.675,-28.698,-28.721,-28.739,-28.754,-28.762,-28.764,-28.757,-28.742,-28.718,-28.684,
--28.641,-28.589,-28.527,-28.458,-28.381,-28.297,-28.207,-28.113,-28.015,-27.914,-27.812,-27.709,-27.607,-27.507,-27.408,-27.312,
--27.220,-27.131,-27.046,-26.965,-26.889,-26.816,-26.747,-26.681,-26.619,-26.560,-26.503,-26.448,-26.395,-26.344,-26.293,-26.243,
--26.194,-26.145,-26.096,-26.047,-25.998,-25.949,-25.900,-25.852,-25.803,-25.754,-25.706,-25.658,-25.610,-25.563,-25.516,-25.468,
--25.421,-25.374,-25.326,-25.277,-25.226,-25.174,-25.119,-25.062,-25.001,-24.935,-24.865,-24.790,-24.708,-24.620,-24.524,-24.420,
--24.309,-24.189,-24.060,-23.922,-23.775,-23.619,-23.456,-23.284,-23.106,-22.921,-22.731,-22.537,-22.341,-22.144,-21.947,-21.754,
--21.564,-21.382,-21.208,-21.044,-20.893,-20.756,-20.636,-20.533,-20.450,-20.387,-20.344,-20.324,-20.325,-20.348,-20.392,-20.456,
--20.538,-20.637,-20.751,-20.878,-21.014,-21.157,-21.303,-21.449,-21.593,-21.730,-21.857,-21.971,-22.070,-22.150,-22.210,-22.246,
--22.259,-22.247,-22.208,-22.144,-22.055,-21.941,-21.805,-21.647,-21.470,-21.276,-21.069,-20.850,-20.624,-20.393,-20.160,-19.929,
--19.701,-19.479,-19.266,-19.064,-18.873,-18.696,-18.533,-18.384,-18.249,-18.128,-18.020,-17.925,-17.840,-17.766,-17.700,-17.642,
--17.589,-17.540,-17.495,-17.452,-17.411,-17.370,-17.331,-17.292,-17.254,-17.217,-17.182,-17.151,-17.123,-17.101,-17.085,-17.076,
--17.076,-17.085,-17.103,-17.133,-17.173,-17.224,-17.284,-17.354,-17.433,-17.518,-17.608,-17.701,-17.794,-17.886,-17.973,-18.053,
--18.123,-18.181,-18.223,-18.248,-18.254,-18.238,-18.199,-18.137,-18.050,-17.938,-17.802,-17.643,-17.461,-17.257,-17.035,-16.796,
--16.543,-16.279,-16.006,-15.727,-15.447,-15.167,-14.890,-14.620,-14.359,-14.109,-13.873,-13.652,-13.447,-13.259,-13.090,-12.938,
--12.805,-12.689,-12.590,-12.506,-12.436,-12.380,-12.334,-12.298,-12.269,-12.246,-12.226,-12.209,-12.193,-12.176,-12.156,-12.134,
--12.109,-12.079,-12.045,-12.006,-11.962,-11.915,-11.865,-11.811,-11.756,-11.699,-11.643,-11.587,-11.533,-11.482,-11.434,-11.390,
--11.352,-11.319,-11.292,-11.271,-11.256,-11.247,-11.244,-11.246,-11.253,-11.264,-11.279,-11.297,-11.317,-11.338,-11.361,-11.383,
--11.404,-11.425,-11.444,-11.461,-11.476,-11.489,-11.500,-11.508,-11.515,-11.521,-11.526,-11.531,-11.536,-11.541,-11.548,-11.557,
--11.568,-11.582,-11.600,-11.621,-11.645,-11.673,-11.705,-11.740,-11.778,-11.818,-11.861,-11.904,-11.948,-11.991,-12.033,-12.073,
--12.110,-12.142,-12.170,-12.193,-12.657,-12.690,-12.719,-12.742,-12.758,-12.769,-12.772,-12.769,-12.759,-12.743,-12.720,-12.692,
--12.659,-12.621,-12.579,-12.535,-12.487,-12.438,-12.389,-12.339,-12.289,-12.239,-12.191,-12.144,-12.098,-12.054,-12.011,-11.968,
--11.927,-11.885,-11.843,-11.800,-11.756,-11.710,-11.661,-11.610,-11.555,-11.497,-11.435,-11.369,-11.301,-11.229,-11.154,-11.077,
--11.000,-10.921,-10.844,-10.768,-10.694,-10.625,-10.560,-10.502,-10.450,-10.406,-10.371,-10.345,-10.329,-10.322,-10.324,-10.336,
--10.356,-10.384,-10.419,-10.459,-10.502,-10.549,-10.595,-10.641,-10.682,-10.719,-10.748,-10.768,-10.776,-10.772,-10.754,-10.719,
--10.668,-10.599,-10.511,-10.405,-10.280,-10.136,-9.974,-9.794,-9.598,-9.386,-9.160,-8.922,-8.672,-8.413,-8.147,-7.875,
--7.599,-7.320,-7.041,-6.764,-6.489,-6.218,-5.953,-5.693,-5.442,-5.198,-4.963,-4.737,-4.521,-4.315,-4.119,-3.932,
--3.755,-3.588,-3.430,-3.281,-3.142,-3.010,-2.887,-2.772,-2.664,-2.563,-2.470,-2.384,-2.305,-2.232,-2.165,-2.106,
--2.052,-2.005,-1.964,-1.930,-1.902,-1.880,-1.863,-1.853,-1.849,-1.851,-1.858,-1.871,-1.889,-1.912,-1.939,-1.972,
--2.008,-2.049,-2.094,-2.143,-2.195,-2.250,-2.308,-2.370,-2.434,-2.502,-2.572,-2.644,-2.720,-2.798,-2.879,-2.962,
--3.048,-3.137,-3.228,-3.322,-3.418,-3.516,-3.615,-3.717,-3.819,-3.923,-4.027,-4.130,-4.233,-4.334,-4.434,-4.531,
--4.624,-4.714,-4.799,-4.879,-4.952,-5.020,-5.080,-5.133,-5.179,-5.217,-5.248,-5.270,-5.285,-5.292,-5.292,-5.286,
--5.273,-5.255,-5.231,-5.203,-5.172,-5.137,-5.100,-5.061,-5.021,-4.980,-4.939,-4.897,-4.856,-4.816,-4.775,-4.736,
--4.696,-4.656,-4.616,-4.576,-4.535,-4.492,-4.448,-4.401,-4.353,-4.302,-4.248,-4.192,-4.133,-4.072,-4.008,-3.943,
--3.877,-3.810,-3.742,-3.676,-3.611,-3.549,-3.489,-3.434,-3.384,-3.339,-3.301,-3.268,-3.243,-3.225,-3.214,-3.211,
--3.214,-3.223,-3.238,-3.257,-3.281,-3.307,-3.335,-3.364,-3.392,-3.418,-3.441,-3.460,-3.474,-3.481,-3.481,-3.474,
--3.458,-3.434,-3.401,-3.360,-3.311,-3.254,-3.190,-3.120,-3.045,-2.965,-2.883,-2.798,-2.713,-2.629,-2.547,-2.469,
--2.394,-2.326,-2.264,-2.209,-2.163,-2.125,-2.097,-2.079,-2.070,-2.072,-2.084,-2.106,-2.138,-2.179,-2.230,-2.289,
--2.357,-2.432,-2.515,-2.605,-2.701,-2.803,-2.910,-3.021,-3.137,-3.257,-3.380,-3.506,-3.633,-3.763,-3.894,-4.026,
--4.159,-4.291,-4.423,-4.554,-4.684,-4.812,-4.938,-5.061,-5.182,-5.300,-5.414,-5.525,-5.633,-5.738,-5.839,-5.937,
--6.032,-6.125,-6.215,-6.304,-6.391,-6.477,-6.564,-6.650,-6.738,-6.827,-6.919,-7.013,-7.110,-7.211,-7.315,-7.424,
--7.537,-7.655,-7.777,-7.904,-8.034,-8.169,-8.307,-8.448,-8.591,-8.736,-8.883,-9.031,-9.179,-9.327,-9.474,-9.620,
--9.764,-9.907,-10.047,-10.185,-10.321,-10.455,-10.586,-10.716,-10.844,-10.972,-11.098,-11.225,-11.351,-11.479,-11.609,-11.740,
--11.875,-12.013,-12.154,-12.300,-12.451,-12.606,-12.766,-12.931,-13.102,-13.277,-13.458,-13.643,-13.832,-14.025,-14.221,-14.420,
--14.621,-14.824,-15.028,-15.233,-15.437,-15.642,-15.845,-16.046,-16.246,-16.443,-16.639,-16.831,-17.021,-17.207,-17.391,-17.572,
--17.750,-17.926,-18.099,-18.270,-18.439,-18.606,-18.772,-18.936,-19.099,-19.260,-19.421,-19.581,-19.740,-19.898,-20.055,-20.212,
--20.367,-20.522,-20.676,-20.829,-20.981,-21.131,-21.281,-21.429,-21.577,-21.723,-21.869,-22.013,-22.158,-22.301,-22.445,-22.589,
--22.734,-22.880,-23.026,-23.175,-23.325,-23.477,-23.632,-23.789,-23.950,-24.113,-24.280,-24.449,-24.622,-24.798,-24.976,-25.158,
--25.342,-25.528,-25.716,-25.906,-26.098,-26.290,-26.484,-26.678,-26.872,-27.066,-27.260,-27.454,-27.646,-27.839,-28.030,-28.221,
--28.411,-28.600,-28.788,-28.975,-29.161,-29.345,-29.529,-29.711,-29.892,-30.072,-30.250,-30.426,-30.600,-30.772,-30.942,-31.109,
--31.273,-31.435,-31.593,-31.749,-31.902,-32.053,-32.200,-32.346,-32.490,-32.633,-32.774,-32.916,-33.058,-33.201,-33.346,-33.494,
--33.645,-33.801,-33.960,-34.126,-34.296,-34.473,-34.655,-34.843,-35.037,-35.236,-35.440,-35.647,-35.857,-36.069,-36.282,-36.494,
--36.703,-36.908,-37.108,-37.301,-37.486,-37.661,-37.825,-37.977,-38.116,-38.241,-38.352,-38.449,-38.532,-38.601,-38.657,-38.700,
--38.732,-38.754,-38.767,-38.774,-38.775,-38.773,-38.769,-38.766,-38.765,-38.767,-38.775,-38.789,-38.812,-38.843,-38.883,-38.933,
--38.993,-39.063,-39.143,-39.232,-39.329,-39.433,-39.543,-39.657,-39.775,-39.894,-40.014,-40.132,-40.246,-40.357,-40.461,-40.558,
--40.647,-40.727,-40.797,-40.856,-40.904,-40.941,-40.967,-40.982,-40.986,-40.981,-40.966,-40.942,-40.911,-40.873,-40.830,-40.782,
--40.731,-40.678,-40.624,-40.570,-40.517,-40.466,-40.417,-40.373,-40.332,-40.296,-40.266,-40.240,-40.220,-40.206,-40.196,-40.191,
--40.190,-40.193,-40.198,-40.205,-40.213,-40.220,-40.226,-40.228,-40.226,-40.219,-40.204,-40.181,-40.149,-40.105,-40.050,-39.983,
--39.902,-39.808,-39.699,-39.577,-39.441,-39.292,-39.130,-38.957,-38.774,-38.583,-38.385,-38.183,-37.978,-37.773,-37.570,-37.372,
--37.182,-37.000,-36.831,-36.677,-36.538,-36.417,-36.316,-36.236,-36.177,-36.141,-36.127,-36.136,-36.167,-36.220,-36.293,-36.385,
--36.494,-36.619,-36.757,-36.907,-37.066,-37.232,-37.403,-37.576,-37.750,-37.922,-38.092,-38.257,-38.416,-38.568,-38.714,-38.851,
--38.980,-39.101,-39.215,-39.323,-39.424,-39.520,-39.612,-39.702,-39.790,-39.878,-39.967,-40.059,-40.155,-40.255,-40.361,-40.473,
--40.592,-40.719,-40.852,-40.993,-41.141,-41.295,-41.455,-41.619,-41.788,-41.960,-42.134,-42.308,-42.481,-42.652,-42.820,-42.983,
--43.141,-43.292,-43.435,-43.570,-43.696,-43.813,-43.921,-44.018,-44.106,-44.184,-44.253,-44.314,-44.367,-44.412,-44.451,-44.485,
--44.514,-44.540,-44.563,-44.584,-44.605,-44.625,-44.646,-44.669,-44.694,-44.721,-44.750,-44.783,-44.819,-44.857,-44.898,-44.942,
--44.989,-45.037,-45.086,-45.137,-45.188,-45.239,-45.290,-45.340,-45.389,-45.436,-45.481,-45.524,-45.565,-45.604,-45.641,-45.675,
--45.708,-45.739,-45.768,-45.797,-45.824,-45.852,-45.879,-45.907,-45.935,-45.964,-45.994,-46.026,-46.058,-46.091,-46.126,-46.161,
--46.197,-46.233,-46.269,-46.304,-46.338,-46.371,-46.402,-46.430,-46.455,-46.477,-46.495,-46.509,-46.519,-46.525,-46.526,-46.524,
--46.517,-46.507,-46.493,-46.477,-46.458,-46.437,-46.415,-46.392,-46.369,-46.346,-46.324,-46.304,-46.286,-46.270,-46.256,-46.246,
--46.238,-46.233,-46.231,-46.231,-46.234,-46.239,-46.246,-46.254,-46.263,-46.273,-46.282,-46.291,-46.300,-46.307,-46.313,-46.317,
--46.319,-46.320,-46.318,-46.315,-46.310,-46.303,-46.295,-46.287,-46.277,-46.268,-46.258,-46.249,-46.241,-46.233,-46.226,-46.221,
--46.216,-46.213,-46.210,-46.207,-46.205,-46.202,-46.198,-46.192,-46.184,-46.172,-46.157,-46.137,-46.112,-46.080,-46.043,-45.998,
--45.946,-45.886,-45.819,-45.744,-45.662,-45.573,-45.477,-45.376,-45.270,-45.160,-45.048,-44.934,-44.819,-44.705,-44.594,-44.485,
--44.381,-44.282,-44.189,-44.103,-44.024,-43.954,-43.892,-43.839,-43.794,-43.757,-43.727,-43.704,-43.687,-43.675,-43.668,-43.663,
--43.661,-43.658,-43.656,-43.652,-43.645,-43.634,-43.620,-43.600,-43.574,-43.542,-43.504,-43.460,-43.410,-43.354,-43.292,-43.226,
--43.156,-43.082,-43.007,-42.930,-42.852,-42.775,-42.699,-42.625,-42.555,-42.488,-42.425,-42.366,-42.313,-42.264,-42.220,-42.181,
--42.147,-42.116,-42.090,-42.066,-42.045,-42.026,-42.007,-41.989,-41.971,-41.951,-41.930,-41.907,-41.881,-41.853,-41.821,-41.786,
--41.748,-41.707,-41.663,-41.616,-41.567,-41.516,-41.464,-41.411,-41.358,-41.304,-41.251,-41.199,-41.148,-41.099,-41.052,-41.006,
--40.962,-40.919,-40.878,-40.838,-40.798,-40.759,-40.719,-40.679,-40.636,-40.591,-40.543,-40.492,-40.436,-40.376,-40.310,-40.238,
--40.161,-40.078,-39.989,-39.894,-39.794,-39.688,-39.578,-39.463,-39.344,-39.223,-39.100,-38.975,-38.850,-38.725,-38.602,-38.480,
--38.361,-38.245,-38.132,-38.024,-37.919,-37.818,-37.721,-37.629,-37.539,-37.452,-37.368,-37.285,-37.203,-37.121,-37.038,-36.954,
--36.866,-36.775,-36.680,-36.579,-36.473,-36.360,-36.241,-36.114,-35.981,-35.840,-35.692,-35.537,-35.376,-35.209,-35.037,-34.860,
--34.679,-34.494,-34.307,-34.119,-33.929,-33.739,-33.550,-33.362,-33.175,-32.990,-32.808,-32.628,-32.452,-32.278,-32.108,-31.940,
--31.776,-31.616,-31.458,-31.304,-31.152,-31.004,-30.860,-30.718,-30.581,-30.447,-30.318,-30.194,-30.075,-29.961,-29.854,-29.753,
--29.660,-29.575,-29.499,-29.431,-29.372,-29.323,-29.284,-29.255,-29.235,-29.225,-29.224,-29.231,-29.247,-29.270,-29.300,-29.335,
--29.374,-29.417,-29.462,-29.508,-29.554,-29.599,-29.642,-29.681,-29.717,-29.748,-29.773,-29.793,-29.807,-29.814,-29.814,-29.809,
--29.797,-29.779,-29.756,-29.728,-29.696,-29.660,-29.621,-29.579,-29.536,-29.491,-29.445,-29.400,-29.354,-29.310,-29.267,-29.225,
--29.184,-29.146,-29.109,-29.075,-29.043,-29.014,-28.987,-28.962,-28.941,-28.922,-28.906,-28.894,-28.884,-28.879,-28.877,-28.879,
--28.884,-28.895,-28.909,-28.928,-28.951,-28.978,-29.009,-29.043,-29.081,-29.121,-29.163,-29.206,-29.249,-29.291,-29.331,-29.369,
--29.402,-29.431,-29.453,-29.469,-29.476,-29.475,-29.465,-29.444,-29.414,-29.374,-29.324,-29.265,-29.197,-29.120,-29.037,-28.948,
--28.854,-28.756,-28.657,-28.558,-28.460,-28.365,-28.274,-28.189,-28.111,-28.040,-27.979,-27.926,-27.883,-27.849,-27.825,-27.810,
--27.803,-27.803,-27.810,-27.821,-27.836,-27.854,-27.871,-27.887,-27.901,-27.910,-27.913,-27.909,-27.896,-27.874,-27.843,-27.800,
--27.747,-27.683,-27.608,-27.523,-27.429,-27.327,-27.218,-27.103,-26.984,-26.862,-26.739,-26.616,-26.496,-26.380,-26.269,-26.165,
--26.069,-25.982,-25.905,-25.838,-25.783,-25.739,-25.706,-25.684,-25.673,-25.672,-25.679,-25.695,-25.718,-25.746,-25.778,-25.812,
--25.848,-25.884,-25.918,-25.948,-25.974,-25.993,-26.005,-26.009,-26.004,-25.988,-25.962,-25.924,-25.875,-25.814,-25.742,-25.657,
--25.562,-25.455,-25.338,-25.211,-25.076,-24.931,-24.780,-24.622,-24.458,-24.289,-24.117,-23.941,-23.764,-23.585,-23.405,-23.226,
--23.048,-22.872,-22.697,-22.526,-22.358,-22.194,-22.034,-21.878,-21.728,-21.584,-21.445,-21.313,-21.187,-21.069,-20.958,-20.855,
--20.761,-20.675,-20.599,-20.532,-20.475,-20.428,-20.391,-20.365,-20.350,-20.345,-20.350,-20.366,-20.391,-20.425,-20.467,-20.517,
--20.574,-20.635,-20.701,-20.769,-20.838,-20.907,-20.973,-21.036,-21.094,-21.145,-21.187,-21.220,-21.242,-21.252,-21.250,-21.234,
--21.204,-21.160,-21.102,-21.031,-20.946,-20.849,-20.742,-20.624,-20.497,-20.363,-20.224,-20.080,-19.934,-19.787,-19.641,-19.497,
--19.356,-19.220,-19.089,-18.965,-18.847,-18.737,-18.633,-18.537,-18.448,-18.365,-18.288,-18.216,-18.148,-18.084,-18.023,-17.964,
--17.906,-17.849,-17.792,-17.736,-17.679,-17.622,-17.565,-17.509,-17.454,-17.401,-17.351,-17.304,-17.263,-17.227,-17.198,-17.178,
--17.166,-17.164,-17.172,-17.191,-17.221,-17.261,-17.312,-17.373,-17.442,-17.519,-17.602,-17.690,-17.780,-17.870,-17.959,-18.044,
--18.122,-18.192,-18.251,-18.298,-18.329,-18.345,-18.342,-18.321,-18.281,-18.220,-18.140,-18.040,-17.921,-17.785,-17.631,-17.463,
--17.282,-17.090,-16.889,-16.682,-16.471,-16.259,-16.047,-15.838,-15.635,-15.439,-15.251,-15.074,-14.908,-14.755,-14.614,-14.487,
--14.373,-14.271,-14.181,-14.102,-14.034,-13.974,-13.921,-13.874,-13.832,-13.792,-13.754,-13.716,-13.675,-13.633,-13.586,-13.536,
--13.480,-13.418,-13.352,-13.279,-13.202,-13.120,-13.034,-12.945,-12.854,-12.762,-12.670,-12.580,-12.492,-12.408,-12.328,-12.254,
--12.187,-12.127,-12.075,-12.031,-11.996,-11.969,-11.950,-11.939,-11.935,-11.937,-11.946,-11.959,-11.976,-11.997,-12.019,-12.042,
--12.066,-12.088,-12.109,-12.127,-12.143,-12.156,-12.165,-12.170,-12.173,-12.172,-12.168,-12.162,-12.154,-12.145,-12.135,-12.127,
--12.119,-12.113,-12.110,-12.110,-12.115,-12.123,-12.136,-12.154,-12.177,-12.204,-12.236,-12.272,-12.311,-12.354,-12.398,-12.444,
--12.489,-12.535,-12.578,-12.619,-12.657,-13.163,-13.205,-13.242,-13.274,-13.300,-13.319,-13.332,-13.338,-13.337,-13.328,-13.313,
--13.291,-13.263,-13.230,-13.191,-13.148,-13.101,-13.050,-12.998,-12.943,-12.888,-12.831,-12.775,-12.718,-12.662,-12.607,-12.553,
--12.499,-12.446,-12.393,-12.341,-12.288,-12.236,-12.182,-12.128,-12.073,-12.016,-11.958,-11.898,-11.837,-11.774,-11.710,-11.644,
--11.579,-11.513,-11.449,-11.385,-11.324,-11.266,-11.212,-11.163,-11.119,-11.081,-11.050,-11.026,-11.010,-11.002,-11.003,-11.011,
--11.027,-11.049,-11.079,-11.113,-11.153,-11.195,-11.239,-11.283,-11.326,-11.366,-11.401,-11.429,-11.450,-11.460,-11.458,-11.444,
--11.415,-11.372,-11.311,-11.234,-11.140,-11.028,-10.898,-10.751,-10.588,-10.408,-10.213,-10.003,-9.781,-9.548,-9.304,-9.052,
--8.794,-8.530,-8.264,-7.995,-7.727,-7.460,-7.196,-6.936,-6.682,-6.435,-6.195,-5.963,-5.740,-5.527,-5.324,-5.131,
--4.947,-4.775,-4.612,-4.459,-4.316,-4.182,-4.057,-3.941,-3.833,-3.732,-3.639,-3.553,-3.474,-3.401,-3.334,-3.272,
--3.216,-3.165,-3.120,-3.079,-3.042,-3.011,-2.983,-2.961,-2.943,-2.929,-2.920,-2.916,-2.916,-2.920,-2.929,-2.943,
--2.962,-2.985,-3.013,-3.046,-3.083,-3.126,-3.173,-3.226,-3.283,-3.345,-3.412,-3.484,-3.561,-3.642,-3.727,-3.817,
--3.911,-4.009,-4.110,-4.215,-4.322,-4.431,-4.543,-4.655,-4.768,-4.882,-4.994,-5.105,-5.215,-5.321,-5.425,-5.524,
--5.618,-5.707,-5.791,-5.867,-5.937,-6.000,-6.055,-6.102,-6.141,-6.173,-6.197,-6.212,-6.221,-6.223,-6.217,-6.206,
--6.189,-6.167,-6.141,-6.111,-6.077,-6.041,-6.003,-5.963,-5.923,-5.882,-5.840,-5.799,-5.757,-5.716,-5.676,-5.636,
--5.596,-5.556,-5.516,-5.476,-5.436,-5.395,-5.353,-5.311,-5.267,-5.222,-5.176,-5.129,-5.080,-5.032,-4.983,-4.934,
--4.885,-4.838,-4.793,-4.749,-4.709,-4.673,-4.640,-4.612,-4.590,-4.573,-4.563,-4.558,-4.560,-4.568,-4.582,-4.602,
--4.626,-4.655,-4.687,-4.722,-4.759,-4.795,-4.831,-4.865,-4.895,-4.920,-4.939,-4.952,-4.956,-4.951,-4.936,-4.911,
--4.875,-4.829,-4.772,-4.704,-4.626,-4.539,-4.443,-4.340,-4.232,-4.118,-4.002,-3.884,-3.766,-3.651,-3.539,-3.433,
--3.333,-3.243,-3.162,-3.093,-3.037,-2.993,-2.964,-2.950,-2.951,-2.968,-2.999,-3.046,-3.108,-3.183,-3.272,-3.374,
--3.488,-3.612,-3.745,-3.887,-4.036,-4.191,-4.351,-4.515,-4.681,-4.848,-5.016,-5.183,-5.349,-5.513,-5.675,-5.833,
--5.987,-6.138,-6.284,-6.425,-6.562,-6.694,-6.822,-6.945,-7.064,-7.178,-7.289,-7.396,-7.500,-7.601,-7.699,-7.795,
--7.890,-7.983,-8.075,-8.166,-8.257,-8.348,-8.439,-8.530,-8.623,-8.716,-8.811,-8.907,-9.004,-9.103,-9.204,-9.306,
--9.409,-9.514,-9.620,-9.727,-9.835,-9.944,-10.053,-10.163,-10.273,-10.383,-10.494,-10.604,-10.713,-10.823,-10.932,-11.040,
--11.148,-11.256,-11.363,-11.471,-11.579,-11.687,-11.795,-11.904,-12.015,-12.127,-12.240,-12.356,-12.473,-12.593,-12.716,-12.841,
--12.970,-13.101,-13.236,-13.374,-13.515,-13.658,-13.805,-13.954,-14.106,-14.260,-14.416,-14.574,-14.733,-14.893,-15.053,-15.215,
--15.376,-15.537,-15.698,-15.859,-16.019,-16.179,-16.337,-16.495,-16.652,-16.809,-16.964,-17.120,-17.274,-17.429,-17.583,-17.738,
--17.893,-18.048,-18.203,-18.359,-18.515,-18.672,-18.829,-18.987,-19.145,-19.303,-19.461,-19.619,-19.776,-19.933,-20.089,-20.243,
--20.396,-20.548,-20.698,-20.845,-20.991,-21.135,-21.276,-21.416,-21.554,-21.690,-21.824,-21.958,-22.091,-22.224,-22.356,-22.490,
--22.624,-22.760,-22.898,-23.039,-23.183,-23.330,-23.481,-23.636,-23.795,-23.959,-24.127,-24.299,-24.476,-24.657,-24.841,-25.030,
--25.221,-25.416,-25.613,-25.812,-26.013,-26.214,-26.416,-26.619,-26.821,-27.022,-27.223,-27.422,-27.620,-27.816,-28.011,-28.203,
--28.394,-28.584,-28.771,-28.957,-29.142,-29.325,-29.506,-29.687,-29.866,-30.045,-30.222,-30.398,-30.573,-30.747,-30.920,-31.091,
--31.261,-31.429,-31.595,-31.760,-31.922,-32.081,-32.239,-32.394,-32.546,-32.696,-32.844,-32.989,-33.132,-33.274,-33.414,-33.554,
--33.692,-33.831,-33.969,-34.108,-34.249,-34.390,-34.533,-34.678,-34.825,-34.975,-35.126,-35.279,-35.434,-35.590,-35.747,-35.905,
--36.062,-36.218,-36.372,-36.523,-36.670,-36.813,-36.951,-37.082,-37.206,-37.323,-37.431,-37.531,-37.621,-37.703,-37.775,-37.839,
--37.894,-37.940,-37.980,-38.013,-38.040,-38.063,-38.082,-38.099,-38.115,-38.131,-38.149,-38.170,-38.194,-38.223,-38.258,-38.299,
--38.347,-38.402,-38.465,-38.535,-38.613,-38.697,-38.787,-38.882,-38.983,-39.086,-39.192,-39.298,-39.404,-39.509,-39.610,-39.707,
--39.798,-39.881,-39.957,-40.024,-40.081,-40.127,-40.162,-40.186,-40.199,-40.201,-40.192,-40.174,-40.145,-40.109,-40.065,-40.015,
--39.961,-39.903,-39.843,-39.783,-39.725,-39.669,-39.617,-39.570,-39.530,-39.497,-39.472,-39.457,-39.450,-39.452,-39.463,-39.483,
--39.511,-39.545,-39.586,-39.631,-39.678,-39.726,-39.774,-39.818,-39.857,-39.889,-39.911,-39.921,-39.918,-39.899,-39.864,-39.809,
--39.735,-39.640,-39.524,-39.386,-39.228,-39.048,-38.849,-38.631,-38.396,-38.147,-37.884,-37.612,-37.333,-37.049,-36.765,-36.482,
--36.204,-35.936,-35.678,-35.436,-35.210,-35.004,-34.820,-34.660,-34.525,-34.416,-34.334,-34.280,-34.252,-34.250,-34.274,-34.321,
--34.391,-34.481,-34.590,-34.713,-34.850,-34.998,-35.153,-35.314,-35.478,-35.642,-35.804,-35.963,-36.117,-36.265,-36.405,-36.537,
--36.661,-36.777,-36.885,-36.986,-37.080,-37.170,-37.256,-37.340,-37.423,-37.508,-37.596,-37.689,-37.788,-37.895,-38.011,-38.138,
--38.275,-38.424,-38.586,-38.759,-38.944,-39.141,-39.348,-39.564,-39.788,-40.019,-40.255,-40.494,-40.734,-40.974,-41.211,-41.444,
--41.670,-41.888,-42.097,-42.296,-42.482,-42.655,-42.815,-42.961,-43.093,-43.211,-43.316,-43.407,-43.486,-43.554,-43.611,-43.660,
--43.700,-43.734,-43.763,-43.788,-43.811,-43.832,-43.854,-43.876,-43.900,-43.927,-43.956,-43.989,-44.025,-44.065,-44.108,-44.154,
--44.203,-44.254,-44.307,-44.361,-44.416,-44.470,-44.523,-44.575,-44.624,-44.672,-44.716,-44.757,-44.795,-44.830,-44.862,-44.891,
--44.918,-44.942,-44.965,-44.988,-45.009,-45.032,-45.055,-45.080,-45.107,-45.136,-45.169,-45.205,-45.245,-45.288,-45.335,-45.385,
--45.438,-45.493,-45.551,-45.610,-45.670,-45.729,-45.787,-45.843,-45.896,-45.946,-45.991,-46.031,-46.065,-46.093,-46.114,-46.128,
--46.135,-46.135,-46.128,-46.115,-46.095,-46.070,-46.041,-46.007,-45.970,-45.931,-45.890,-45.849,-45.808,-45.768,-45.729,-45.694,
--45.661,-45.632,-45.607,-45.585,-45.568,-45.555,-45.546,-45.540,-45.538,-45.539,-45.542,-45.547,-45.553,-45.560,-45.567,-45.573,
--45.579,-45.584,-45.587,-45.589,-45.589,-45.586,-45.582,-45.576,-45.568,-45.559,-45.549,-45.538,-45.526,-45.514,-45.503,-45.492,
--45.482,-45.472,-45.464,-45.457,-45.451,-45.446,-45.441,-45.437,-45.432,-45.427,-45.421,-45.413,-45.402,-45.388,-45.370,-45.348,
--45.321,-45.288,-45.249,-45.204,-45.153,-45.095,-45.031,-44.960,-44.884,-44.802,-44.716,-44.625,-44.531,-44.435,-44.338,-44.240,
--44.143,-44.048,-43.956,-43.867,-43.782,-43.703,-43.630,-43.562,-43.502,-43.448,-43.401,-43.360,-43.326,-43.298,-43.275,-43.257,
--43.242,-43.231,-43.222,-43.215,-43.207,-43.200,-43.191,-43.180,-43.167,-43.150,-43.130,-43.106,-43.077,-43.045,-43.008,-42.967,
--42.923,-42.876,-42.826,-42.773,-42.720,-42.665,-42.610,-42.555,-42.502,-42.449,-42.399,-42.351,-42.306,-42.263,-42.223,-42.185,
--42.150,-42.118,-42.087,-42.058,-42.029,-42.001,-41.973,-41.944,-41.914,-41.881,-41.846,-41.808,-41.767,-41.722,-41.673,-41.620,
--41.564,-41.503,-41.439,-41.371,-41.301,-41.228,-41.154,-41.078,-41.002,-40.925,-40.850,-40.775,-40.702,-40.632,-40.564,-40.499,
--40.437,-40.378,-40.322,-40.270,-40.220,-40.172,-40.126,-40.082,-40.038,-39.995,-39.951,-39.905,-39.857,-39.807,-39.752,-39.694,
--39.632,-39.564,-39.491,-39.412,-39.328,-39.239,-39.144,-39.045,-38.940,-38.832,-38.721,-38.607,-38.491,-38.375,-38.258,-38.142,
--38.028,-37.916,-37.807,-37.702,-37.601,-37.505,-37.414,-37.327,-37.246,-37.170,-37.099,-37.032,-36.969,-36.909,-36.852,-36.796,
--36.741,-36.685,-36.629,-36.570,-36.508,-36.441,-36.370,-36.293,-36.209,-36.118,-36.018,-35.911,-35.795,-35.670,-35.536,-35.393,
--35.241,-35.081,-34.912,-34.736,-34.553,-34.363,-34.167,-33.966,-33.761,-33.552,-33.340,-33.127,-32.912,-32.698,-32.483,-32.271,
--32.060,-31.853,-31.649,-31.451,-31.257,-31.070,-30.889,-30.716,-30.551,-30.395,-30.248,-30.111,-29.984,-29.868,-29.763,-29.669,
--29.586,-29.516,-29.456,-29.409,-29.372,-29.347,-29.332,-29.327,-29.332,-29.345,-29.366,-29.394,-29.428,-29.467,-29.509,-29.554,
--29.601,-29.647,-29.693,-29.737,-29.778,-29.815,-29.847,-29.874,-29.894,-29.908,-29.916,-29.916,-29.908,-29.894,-29.873,-29.846,
--29.812,-29.773,-29.728,-29.680,-29.628,-29.574,-29.517,-29.460,-29.402,-29.344,-29.288,-29.233,-29.180,-29.130,-29.083,-29.040,
--29.000,-28.964,-28.931,-28.903,-28.878,-28.857,-28.840,-28.826,-28.816,-28.808,-28.804,-28.803,-28.804,-28.808,-28.814,-28.822,
--28.832,-28.845,-28.859,-28.875,-28.892,-28.911,-28.930,-28.950,-28.971,-28.991,-29.011,-29.030,-29.047,-29.062,-29.074,-29.083,
--29.088,-29.087,-29.081,-29.069,-29.050,-29.024,-28.990,-28.948,-28.898,-28.840,-28.774,-28.700,-28.618,-28.530,-28.435,-28.335,
--28.230,-28.122,-28.012,-27.900,-27.789,-27.679,-27.572,-27.469,-27.370,-27.277,-27.191,-27.112,-27.041,-26.978,-26.924,-26.878,
--26.839,-26.809,-26.785,-26.767,-26.754,-26.744,-26.738,-26.733,-26.727,-26.721,-26.711,-26.698,-26.680,-26.656,-26.625,-26.586,
--26.539,-26.484,-26.421,-26.350,-26.271,-26.185,-26.093,-25.996,-25.896,-25.793,-25.689,-25.587,-25.487,-25.391,-25.302,-25.219,
--25.146,-25.083,-25.031,-24.992,-24.966,-24.954,-24.955,-24.971,-24.999,-25.041,-25.094,-25.159,-25.232,-25.314,-25.402,-25.493,
--25.587,-25.680,-25.771,-25.857,-25.936,-26.006,-26.064,-26.109,-26.139,-26.152,-26.146,-26.122,-26.077,-26.011,-25.925,-25.817,
--25.688,-25.539,-25.370,-25.183,-24.979,-24.759,-24.525,-24.280,-24.025,-23.762,-23.493,-23.222,-22.949,-22.678,-22.411,-22.149,
--21.895,-21.650,-21.416,-21.196,-20.989,-20.797,-20.622,-20.463,-20.321,-20.197,-20.091,-20.001,-19.929,-19.874,-19.834,-19.810,
--19.799,-19.801,-19.816,-19.840,-19.875,-19.917,-19.965,-20.019,-20.077,-20.137,-20.198,-20.260,-20.320,-20.378,-20.432,-20.482,
--20.526,-20.565,-20.597,-20.621,-20.637,-20.645,-20.645,-20.635,-20.618,-20.591,-20.556,-20.513,-20.461,-20.403,-20.337,-20.266,
--20.189,-20.107,-20.021,-19.933,-19.842,-19.750,-19.658,-19.566,-19.475,-19.386,-19.300,-19.217,-19.138,-19.063,-18.993,-18.926,
--18.865,-18.807,-18.754,-18.704,-18.658,-18.614,-18.573,-18.532,-18.493,-18.453,-18.413,-18.372,-18.328,-18.282,-18.232,-18.180,
--18.124,-18.065,-18.002,-17.936,-17.868,-17.797,-17.726,-17.654,-17.583,-17.514,-17.448,-17.385,-17.329,-17.278,-17.236,-17.202,
--17.177,-17.162,-17.158,-17.166,-17.184,-17.213,-17.253,-17.302,-17.361,-17.428,-17.501,-17.580,-17.662,-17.747,-17.831,-17.914,
--17.993,-18.066,-18.132,-18.189,-18.235,-18.270,-18.291,-18.299,-18.292,-18.270,-18.233,-18.181,-18.115,-18.036,-17.943,-17.840,
--17.726,-17.603,-17.474,-17.339,-17.201,-17.061,-16.921,-16.783,-16.647,-16.517,-16.391,-16.272,-16.161,-16.057,-15.961,-15.873,
--15.793,-15.720,-15.654,-15.594,-15.538,-15.487,-15.438,-15.390,-15.342,-15.293,-15.242,-15.187,-15.127,-15.063,-14.992,-14.915,
--14.831,-14.740,-14.643,-14.539,-14.430,-14.315,-14.197,-14.075,-13.951,-13.827,-13.703,-13.581,-13.462,-13.348,-13.239,-13.137,
--13.042,-12.956,-12.878,-12.810,-12.752,-12.703,-12.664,-12.634,-12.613,-12.600,-12.594,-12.595,-12.600,-12.610,-12.624,-12.639,
--12.656,-12.673,-12.688,-12.703,-12.715,-12.724,-12.729,-12.732,-12.731,-12.726,-12.718,-12.708,-12.695,-12.680,-12.665,-12.649,
--12.634,-12.621,-12.609,-12.601,-12.597,-12.596,-12.601,-12.611,-12.626,-12.646,-12.673,-12.704,-12.740,-12.780,-12.824,-12.871,
--12.920,-12.971,-13.021,-13.071,-13.118,-13.163,-13.647,-13.690,-13.727,-13.758,-13.784,-13.802,-13.814,-13.818,-13.815,-13.804,
--13.787,-13.762,-13.731,-13.695,-13.653,-13.606,-13.555,-13.501,-13.445,-13.386,-13.327,-13.267,-13.207,-13.147,-13.088,-13.030,
--12.974,-12.918,-12.865,-12.812,-12.761,-12.710,-12.661,-12.612,-12.563,-12.514,-12.465,-12.415,-12.364,-12.312,-12.260,-12.206,
--12.152,-12.097,-12.042,-11.988,-11.934,-11.881,-11.829,-11.781,-11.735,-11.693,-11.655,-11.621,-11.593,-11.571,-11.555,-11.545,
--11.541,-11.543,-11.551,-11.564,-11.583,-11.605,-11.631,-11.659,-11.688,-11.716,-11.744,-11.768,-11.789,-11.803,-11.810,-11.809,
--11.798,-11.775,-11.741,-11.693,-11.631,-11.555,-11.463,-11.356,-11.233,-11.095,-10.942,-10.775,-10.594,-10.400,-10.194,-9.977,
--9.751,-9.517,-9.277,-9.031,-8.782,-8.531,-8.280,-8.030,-7.782,-7.538,-7.298,-7.065,-6.839,-6.621,-6.412,-6.211,
--6.021,-5.840,-5.670,-5.510,-5.360,-5.220,-5.090,-4.969,-4.858,-4.755,-4.660,-4.573,-4.493,-4.420,-4.353,-4.291,
--4.234,-4.182,-4.134,-4.091,-4.051,-4.014,-3.981,-3.950,-3.923,-3.899,-3.879,-3.861,-3.848,-3.837,-3.831,-3.829,
--3.832,-3.839,-3.851,-3.869,-3.893,-3.922,-3.957,-3.999,-4.047,-4.101,-4.162,-4.230,-4.303,-4.384,-4.470,-4.562,
--4.659,-4.761,-4.868,-4.978,-5.092,-5.208,-5.326,-5.444,-5.564,-5.682,-5.799,-5.914,-6.026,-6.134,-6.238,-6.336,
--6.429,-6.515,-6.594,-6.666,-6.731,-6.788,-6.837,-6.878,-6.911,-6.937,-6.955,-6.966,-6.970,-6.969,-6.961,-6.948,
--6.931,-6.910,-6.885,-6.857,-6.827,-6.796,-6.762,-6.728,-6.694,-6.659,-6.624,-6.589,-6.554,-6.520,-6.485,-6.450,
--6.416,-6.380,-6.345,-6.308,-6.271,-6.233,-6.193,-6.153,-6.111,-6.067,-6.023,-5.978,-5.932,-5.885,-5.839,-5.793,
--5.749,-5.707,-5.666,-5.629,-5.596,-5.567,-5.543,-5.524,-5.512,-5.506,-5.506,-5.514,-5.528,-5.549,-5.576,-5.608,
--5.646,-5.689,-5.735,-5.784,-5.834,-5.884,-5.932,-5.979,-6.021,-6.058,-6.088,-6.111,-6.125,-6.128,-6.121,-6.102,
--6.071,-6.028,-5.972,-5.905,-5.825,-5.735,-5.634,-5.524,-5.406,-5.282,-5.154,-5.022,-4.889,-4.757,-4.627,-4.503,
--4.385,-4.275,-4.176,-4.088,-4.014,-3.954,-3.910,-3.883,-3.873,-3.880,-3.906,-3.949,-4.010,-4.088,-4.182,-4.291,
--4.415,-4.553,-4.702,-4.862,-5.030,-5.207,-5.389,-5.576,-5.765,-5.956,-6.147,-6.337,-6.525,-6.709,-6.890,-7.065,
--7.234,-7.397,-7.554,-7.705,-7.848,-7.985,-8.116,-8.240,-8.358,-8.472,-8.580,-8.684,-8.784,-8.881,-8.976,-9.069,
--9.160,-9.250,-9.340,-9.429,-9.519,-9.610,-9.702,-9.794,-9.888,-9.983,-10.079,-10.176,-10.274,-10.374,-10.473,-10.574,
--10.674,-10.775,-10.876,-10.976,-11.075,-11.174,-11.272,-11.369,-11.465,-11.560,-11.654,-11.746,-11.838,-11.930,-12.020,-12.111,
--12.201,-12.292,-12.383,-12.475,-12.569,-12.664,-12.761,-12.860,-12.961,-13.065,-13.172,-13.282,-13.394,-13.510,-13.629,-13.751,
--13.876,-14.003,-14.133,-14.265,-14.399,-14.535,-14.672,-14.810,-14.948,-15.087,-15.225,-15.364,-15.501,-15.638,-15.774,-15.909,
--16.042,-16.174,-16.305,-16.435,-16.564,-16.692,-16.820,-16.947,-17.074,-17.201,-17.329,-17.458,-17.588,-17.719,-17.853,-17.988,
--18.125,-18.265,-18.407,-18.551,-18.697,-18.845,-18.996,-19.147,-19.301,-19.455,-19.609,-19.764,-19.919,-20.072,-20.225,-20.376,
--20.525,-20.672,-20.816,-20.958,-21.096,-21.231,-21.364,-21.493,-21.620,-21.745,-21.867,-21.988,-22.108,-22.227,-22.346,-22.465,
--22.586,-22.709,-22.835,-22.963,-23.096,-23.232,-23.374,-23.520,-23.672,-23.829,-23.992,-24.160,-24.334,-24.513,-24.698,-24.887,
--25.080,-25.276,-25.476,-25.679,-25.883,-26.089,-26.295,-26.501,-26.707,-26.912,-27.115,-27.317,-27.516,-27.713,-27.908,-28.100,
--28.289,-28.475,-28.659,-28.840,-29.020,-29.197,-29.373,-29.548,-29.721,-29.894,-30.066,-30.238,-30.410,-30.582,-30.754,-30.926,
--31.098,-31.271,-31.443,-31.616,-31.788,-31.959,-32.129,-32.298,-32.466,-32.632,-32.796,-32.957,-33.116,-33.273,-33.426,-33.576,
--33.723,-33.867,-34.008,-34.145,-34.280,-34.412,-34.541,-34.667,-34.791,-34.913,-35.033,-35.151,-35.267,-35.381,-35.494,-35.605,
--35.714,-35.822,-35.928,-36.031,-36.132,-36.231,-36.327,-36.420,-36.509,-36.595,-36.678,-36.756,-36.830,-36.900,-36.965,-37.026,
--37.083,-37.136,-37.185,-37.230,-37.273,-37.313,-37.351,-37.387,-37.423,-37.458,-37.494,-37.531,-37.569,-37.610,-37.654,-37.701,
--37.752,-37.807,-37.866,-37.929,-37.996,-38.067,-38.141,-38.219,-38.299,-38.382,-38.465,-38.549,-38.632,-38.713,-38.792,-38.867,
--38.938,-39.003,-39.063,-39.115,-39.159,-39.196,-39.223,-39.242,-39.252,-39.253,-39.246,-39.231,-39.208,-39.179,-39.144,-39.104,
--39.060,-39.015,-38.968,-38.921,-38.876,-38.834,-38.796,-38.764,-38.737,-38.717,-38.705,-38.702,-38.706,-38.720,-38.741,-38.770,
--38.806,-38.849,-38.896,-38.946,-38.999,-39.051,-39.102,-39.148,-39.188,-39.221,-39.243,-39.252,-39.247,-39.227,-39.188,-39.130,
--39.052,-38.953,-38.833,-38.691,-38.527,-38.342,-38.138,-37.914,-37.674,-37.418,-37.150,-36.871,-36.584,-36.293,-36.000,-35.708,
--35.421,-35.141,-34.871,-34.615,-34.375,-34.153,-33.952,-33.772,-33.617,-33.486,-33.380,-33.300,-33.246,-33.217,-33.212,-33.230,
--33.269,-33.329,-33.406,-33.499,-33.604,-33.721,-33.847,-33.979,-34.114,-34.252,-34.389,-34.525,-34.658,-34.786,-34.909,-35.026,
--35.137,-35.243,-35.342,-35.437,-35.528,-35.617,-35.703,-35.790,-35.879,-35.971,-36.068,-36.171,-36.283,-36.403,-36.535,-36.678,
--36.833,-37.001,-37.183,-37.377,-37.584,-37.802,-38.032,-38.271,-38.519,-38.773,-39.032,-39.295,-39.558,-39.820,-40.079,-40.333,
--40.580,-40.818,-41.046,-41.262,-41.465,-41.654,-41.829,-41.989,-42.135,-42.265,-42.381,-42.483,-42.573,-42.651,-42.718,-42.776,
--42.827,-42.871,-42.910,-42.947,-42.982,-43.016,-43.051,-43.088,-43.127,-43.170,-43.217,-43.267,-43.322,-43.382,-43.445,-43.511,
--43.580,-43.651,-43.723,-43.795,-43.866,-43.936,-44.003,-44.067,-44.126,-44.181,-44.230,-44.274,-44.311,-44.343,-44.368,-44.388,
--44.403,-44.414,-44.420,-44.424,-44.425,-44.425,-44.426,-44.427,-44.431,-44.437,-44.447,-44.462,-44.482,-44.507,-44.539,-44.577,
--44.621,-44.671,-44.726,-44.787,-44.852,-44.920,-44.991,-45.063,-45.136,-45.208,-45.278,-45.346,-45.409,-45.467,-45.520,-45.565,
--45.604,-45.634,-45.657,-45.671,-45.676,-45.674,-45.664,-45.646,-45.622,-45.591,-45.556,-45.516,-45.473,-45.428,-45.381,-45.334,
--45.288,-45.243,-45.200,-45.160,-45.124,-45.091,-45.063,-45.039,-45.020,-45.005,-44.994,-44.988,-44.986,-44.986,-44.990,-44.996,
--45.005,-45.014,-45.025,-45.035,-45.046,-45.056,-45.066,-45.074,-45.081,-45.086,-45.090,-45.092,-45.092,-45.091,-45.088,-45.084,
--45.078,-45.071,-45.064,-45.055,-45.046,-45.035,-45.024,-45.012,-44.999,-44.985,-44.969,-44.952,-44.933,-44.912,-44.888,-44.862,
--44.832,-44.800,-44.763,-44.723,-44.678,-44.630,-44.577,-44.520,-44.459,-44.394,-44.326,-44.255,-44.181,-44.105,-44.028,-43.949,
--43.870,-43.792,-43.714,-43.638,-43.564,-43.493,-43.425,-43.360,-43.299,-43.243,-43.190,-43.142,-43.098,-43.058,-43.021,-42.988,
--42.958,-42.931,-42.905,-42.881,-42.858,-42.834,-42.811,-42.787,-42.762,-42.735,-42.706,-42.674,-42.641,-42.605,-42.566,-42.526,
--42.483,-42.438,-42.392,-42.344,-42.296,-42.247,-42.198,-42.150,-42.103,-42.058,-42.013,-41.971,-41.931,-41.893,-41.857,-41.824,
--41.792,-41.763,-41.734,-41.707,-41.680,-41.654,-41.627,-41.599,-41.570,-41.538,-41.504,-41.467,-41.426,-41.382,-41.334,-41.281,
--41.225,-41.164,-41.099,-41.030,-40.958,-40.883,-40.805,-40.726,-40.645,-40.563,-40.481,-40.400,-40.320,-40.242,-40.166,-40.093,
--40.023,-39.956,-39.892,-39.833,-39.776,-39.723,-39.673,-39.626,-39.580,-39.536,-39.493,-39.451,-39.407,-39.363,-39.316,-39.267,
--39.214,-39.158,-39.096,-39.030,-38.959,-38.882,-38.799,-38.711,-38.618,-38.519,-38.416,-38.309,-38.198,-38.085,-37.970,-37.854,
--37.737,-37.622,-37.508,-37.397,-37.290,-37.187,-37.089,-36.996,-36.910,-36.830,-36.756,-36.690,-36.629,-36.576,-36.528,-36.486,
--36.448,-36.415,-36.385,-36.356,-36.329,-36.302,-36.274,-36.243,-36.208,-36.169,-36.123,-36.071,-36.010,-35.941,-35.862,-35.772,
--35.671,-35.559,-35.435,-35.299,-35.151,-34.991,-34.820,-34.639,-34.447,-34.245,-34.035,-33.816,-33.592,-33.362,-33.127,-32.890,
--32.651,-32.412,-32.174,-31.939,-31.708,-31.482,-31.263,-31.051,-30.849,-30.657,-30.477,-30.308,-30.152,-30.010,-29.881,-29.767,
--29.667,-29.582,-29.511,-29.454,-29.411,-29.380,-29.363,-29.356,-29.360,-29.374,-29.396,-29.425,-29.460,-29.500,-29.543,-29.588,
--29.634,-29.679,-29.723,-29.764,-29.801,-29.833,-29.860,-29.882,-29.896,-29.904,-29.904,-29.898,-29.884,-29.864,-29.837,-29.804,
--29.766,-29.723,-29.675,-29.625,-29.571,-29.516,-29.460,-29.403,-29.347,-29.292,-29.238,-29.187,-29.139,-29.094,-29.052,-29.014,
--28.980,-28.950,-28.923,-28.901,-28.882,-28.866,-28.853,-28.844,-28.837,-28.832,-28.829,-28.829,-28.830,-28.832,-28.835,-28.839,
--28.844,-28.850,-28.856,-28.862,-28.869,-28.875,-28.882,-28.889,-28.896,-28.902,-28.907,-28.912,-28.915,-28.917,-28.917,-28.915,
--28.910,-28.902,-28.890,-28.874,-28.853,-28.827,-28.795,-28.757,-28.713,-28.662,-28.605,-28.540,-28.469,-28.390,-28.305,-28.214,
--28.117,-28.014,-27.907,-27.796,-27.682,-27.566,-27.448,-27.330,-27.212,-27.096,-26.982,-26.872,-26.765,-26.662,-26.565,-26.473,
--26.387,-26.307,-26.233,-26.164,-26.101,-26.043,-25.990,-25.940,-25.894,-25.851,-25.809,-25.769,-25.728,-25.687,-25.645,-25.601,
--25.554,-25.505,-25.453,-25.397,-25.338,-25.277,-25.213,-25.146,-25.079,-25.011,-24.944,-24.878,-24.814,-24.755,-24.701,-24.653,
--24.612,-24.580,-24.558,-24.546,-24.545,-24.556,-24.579,-24.615,-24.663,-24.722,-24.793,-24.874,-24.965,-25.064,-25.169,-25.279,
--25.391,-25.505,-25.617,-25.725,-25.827,-25.920,-26.003,-26.073,-26.128,-26.166,-26.185,-26.183,-26.159,-26.113,-26.043,-25.949,
--25.831,-25.688,-25.522,-25.334,-25.124,-24.894,-24.645,-24.381,-24.102,-23.812,-23.512,-23.207,-22.898,-22.588,-22.280,-21.978,
--21.683,-21.398,-21.126,-20.869,-20.629,-20.407,-20.206,-20.026,-19.868,-19.733,-19.621,-19.533,-19.467,-19.424,-19.401,-19.399,
--19.416,-19.449,-19.498,-19.560,-19.634,-19.716,-19.806,-19.900,-19.997,-20.095,-20.190,-20.283,-20.369,-20.449,-20.520,-20.582,
--20.632,-20.671,-20.697,-20.710,-20.710,-20.697,-20.671,-20.633,-20.583,-20.521,-20.450,-20.370,-20.281,-20.186,-20.086,-19.981,
--19.874,-19.766,-19.657,-19.550,-19.445,-19.344,-19.246,-19.154,-19.067,-18.987,-18.913,-18.846,-18.786,-18.733,-18.685,-18.644,
--18.608,-18.576,-18.548,-18.524,-18.501,-18.480,-18.459,-18.437,-18.413,-18.387,-18.358,-18.325,-18.288,-18.247,-18.200,-18.148,
--18.092,-18.031,-17.966,-17.897,-17.825,-17.752,-17.677,-17.602,-17.528,-17.456,-17.388,-17.324,-17.266,-17.215,-17.171,-17.136,
--17.110,-17.093,-17.087,-17.091,-17.105,-17.129,-17.163,-17.205,-17.256,-17.314,-17.377,-17.445,-17.517,-17.590,-17.664,-17.736,
--17.806,-17.871,-17.930,-17.983,-18.027,-18.062,-18.087,-18.102,-18.105,-18.097,-18.077,-18.047,-18.005,-17.954,-17.892,-17.823,
--17.745,-17.661,-17.572,-17.480,-17.384,-17.287,-17.190,-17.094,-16.999,-16.908,-16.820,-16.737,-16.658,-16.584,-16.514,-16.450,
--16.390,-16.335,-16.283,-16.234,-16.187,-16.141,-16.095,-16.048,-16.000,-15.949,-15.895,-15.836,-15.772,-15.703,-15.628,-15.547,
--15.460,-15.367,-15.267,-15.163,-15.053,-14.940,-14.823,-14.704,-14.583,-14.462,-14.343,-14.225,-14.110,-14.000,-13.894,-13.795,
--13.702,-13.617,-13.540,-13.471,-13.410,-13.358,-13.314,-13.278,-13.250,-13.228,-13.213,-13.203,-13.197,-13.196,-13.197,-13.199,
--13.203,-13.207,-13.211,-13.213,-13.213,-13.211,-13.207,-13.199,-13.189,-13.177,-13.162,-13.145,-13.127,-13.108,-13.088,-13.069,
--13.052,-13.036,-13.023,-13.013,-13.008,-13.007,-13.011,-13.021,-13.036,-13.057,-13.083,-13.115,-13.152,-13.194,-13.240,-13.289,
--13.340,-13.393,-13.446,-13.500,-13.551,-13.601,-13.647,-14.130,-14.172,-14.210,-14.241,-14.267,-14.286,-14.299,-14.304,-14.303,
--14.295,-14.280,-14.259,-14.232,-14.199,-14.162,-14.121,-14.076,-14.028,-13.977,-13.925,-13.872,-13.819,-13.765,-13.711,-13.659,
--13.607,-13.556,-13.506,-13.458,-13.410,-13.363,-13.317,-13.271,-13.225,-13.178,-13.131,-13.083,-13.034,-12.983,-12.931,-12.876,
--12.820,-12.762,-12.702,-12.641,-12.578,-12.515,-12.451,-12.388,-12.325,-12.263,-12.204,-12.147,-12.093,-12.043,-11.998,-11.957,
--11.922,-11.892,-11.868,-11.850,-11.837,-11.830,-11.828,-11.831,-11.837,-11.847,-11.859,-11.872,-11.886,-11.898,-11.909,-11.915,
--11.918,-11.914,-11.902,-11.883,-11.853,-11.814,-11.763,-11.699,-11.623,-11.534,-11.432,-11.316,-11.187,-11.045,-10.890,-10.723,
--10.545,-10.356,-10.159,-9.953,-9.740,-9.522,-9.300,-9.075,-8.848,-8.621,-8.396,-8.174,-7.955,-7.741,-7.533,-7.332,
--7.139,-6.954,-6.778,-6.612,-6.455,-6.308,-6.171,-6.044,-5.926,-5.817,-5.718,-5.626,-5.543,-5.467,-5.398,-5.334,
--5.277,-5.225,-5.177,-5.133,-5.092,-5.055,-5.020,-4.988,-4.959,-4.931,-4.906,-4.883,-4.862,-4.844,-4.828,-4.816,
--4.807,-4.801,-4.800,-4.803,-4.811,-4.824,-4.843,-4.868,-4.899,-4.936,-4.980,-5.030,-5.087,-5.150,-5.220,-5.296,
--5.378,-5.464,-5.556,-5.652,-5.751,-5.854,-5.958,-6.064,-6.170,-6.275,-6.380,-6.482,-6.582,-6.678,-6.769,-6.856,
--6.936,-7.011,-7.079,-7.140,-7.194,-7.241,-7.280,-7.312,-7.337,-7.355,-7.367,-7.372,-7.372,-7.366,-7.356,-7.341,
--7.323,-7.302,-7.278,-7.252,-7.225,-7.198,-7.169,-7.140,-7.111,-7.082,-7.054,-7.026,-6.998,-6.971,-6.943,-6.916,
--6.888,-6.859,-6.830,-6.800,-6.768,-6.735,-6.701,-6.664,-6.626,-6.586,-6.545,-6.501,-6.457,-6.412,-6.366,-6.320,
--6.274,-6.229,-6.187,-6.146,-6.109,-6.075,-6.046,-6.022,-6.003,-5.990,-5.984,-5.984,-5.990,-6.004,-6.024,-6.050,
--6.082,-6.119,-6.161,-6.206,-6.254,-6.304,-6.355,-6.405,-6.452,-6.497,-6.538,-6.573,-6.601,-6.621,-6.633,-6.635,
--6.627,-6.608,-6.579,-6.539,-6.487,-6.426,-6.354,-6.273,-6.183,-6.087,-5.984,-5.877,-5.767,-5.655,-5.544,-5.435,
--5.330,-5.230,-5.137,-5.053,-4.979,-4.917,-4.867,-4.831,-4.810,-4.804,-4.814,-4.840,-4.881,-4.939,-5.011,-5.099,
--5.200,-5.314,-5.440,-5.578,-5.724,-5.879,-6.041,-6.208,-6.379,-6.552,-6.727,-6.902,-7.076,-7.247,-7.416,-7.580,
--7.740,-7.895,-8.043,-8.187,-8.324,-8.455,-8.580,-8.699,-8.814,-8.923,-9.028,-9.129,-9.226,-9.321,-9.413,-9.504,
--9.594,-9.684,-9.773,-9.863,-9.953,-10.045,-10.138,-10.232,-10.327,-10.424,-10.523,-10.623,-10.724,-10.826,-10.929,-11.033,
--11.137,-11.241,-11.344,-11.447,-11.550,-11.652,-11.752,-11.852,-11.950,-12.047,-12.143,-12.239,-12.333,-12.427,-12.520,-12.613,
--12.706,-12.800,-12.895,-12.990,-13.088,-13.187,-13.288,-13.391,-13.497,-13.605,-13.716,-13.831,-13.947,-14.067,-14.190,-14.314,
--14.442,-14.571,-14.702,-14.834,-14.967,-15.101,-15.235,-15.369,-15.503,-15.636,-15.767,-15.898,-16.026,-16.153,-16.279,-16.402,
--16.523,-16.643,-16.761,-16.878,-16.993,-17.108,-17.222,-17.336,-17.450,-17.565,-17.681,-17.799,-17.918,-18.040,-18.164,-18.290,
--18.420,-18.552,-18.687,-18.825,-18.966,-19.109,-19.255,-19.403,-19.552,-19.702,-19.853,-20.004,-20.154,-20.304,-20.452,-20.598,
--20.742,-20.883,-21.021,-21.156,-21.287,-21.414,-21.538,-21.658,-21.775,-21.889,-22.000,-22.109,-22.217,-22.323,-22.429,-22.535,
--22.642,-22.751,-22.862,-22.977,-23.095,-23.218,-23.345,-23.478,-23.617,-23.761,-23.912,-24.069,-24.232,-24.401,-24.576,-24.756,
--24.941,-25.130,-25.323,-25.520,-25.719,-25.919,-26.121,-26.324,-26.526,-26.727,-26.927,-27.124,-27.320,-27.513,-27.702,-27.889,
--28.072,-28.252,-28.429,-28.603,-28.774,-28.943,-29.109,-29.274,-29.438,-29.600,-29.763,-29.925,-30.088,-30.251,-30.416,-30.582,
--30.749,-30.918,-31.089,-31.261,-31.435,-31.611,-31.787,-31.965,-32.143,-32.321,-32.498,-32.675,-32.851,-33.024,-33.196,-33.364,
--33.530,-33.691,-33.849,-34.002,-34.150,-34.294,-34.432,-34.566,-34.693,-34.816,-34.933,-35.045,-35.152,-35.254,-35.351,-35.443,
--35.531,-35.615,-35.696,-35.772,-35.845,-35.915,-35.982,-36.046,-36.108,-36.168,-36.225,-36.280,-36.333,-36.385,-36.435,-36.483,
--36.531,-36.577,-36.622,-36.666,-36.710,-36.754,-36.797,-36.840,-36.883,-36.927,-36.971,-37.016,-37.062,-37.109,-37.158,-37.208,
--37.259,-37.313,-37.367,-37.424,-37.481,-37.540,-37.600,-37.661,-37.722,-37.784,-37.845,-37.905,-37.964,-38.021,-38.077,-38.129,
--38.178,-38.224,-38.266,-38.303,-38.335,-38.362,-38.384,-38.401,-38.413,-38.419,-38.420,-38.417,-38.410,-38.398,-38.384,-38.367,
--38.348,-38.327,-38.307,-38.286,-38.267,-38.250,-38.235,-38.223,-38.215,-38.212,-38.212,-38.217,-38.227,-38.242,-38.261,-38.283,
--38.309,-38.337,-38.367,-38.398,-38.428,-38.456,-38.481,-38.502,-38.516,-38.523,-38.522,-38.510,-38.487,-38.451,-38.403,-38.339,
--38.261,-38.168,-38.059,-37.934,-37.795,-37.640,-37.472,-37.291,-37.098,-36.895,-36.683,-36.465,-36.242,-36.015,-35.788,-35.562,
--35.340,-35.123,-34.913,-34.713,-34.523,-34.346,-34.183,-34.035,-33.902,-33.786,-33.687,-33.605,-33.539,-33.489,-33.456,-33.437,
--33.432,-33.439,-33.459,-33.488,-33.527,-33.573,-33.624,-33.681,-33.742,-33.805,-33.869,-33.935,-34.001,-34.067,-34.133,-34.200,
--34.267,-34.335,-34.404,-34.476,-34.552,-34.633,-34.719,-34.812,-34.914,-35.024,-35.146,-35.279,-35.424,-35.582,-35.754,-35.939,
--36.137,-36.349,-36.574,-36.810,-37.057,-37.314,-37.579,-37.851,-38.127,-38.405,-38.684,-38.961,-39.235,-39.503,-39.763,-40.013,
--40.252,-40.478,-40.690,-40.886,-41.067,-41.231,-41.378,-41.509,-41.624,-41.723,-41.808,-41.880,-41.940,-41.989,-42.030,-42.064,
--42.094,-42.121,-42.146,-42.173,-42.202,-42.235,-42.273,-42.318,-42.371,-42.431,-42.500,-42.579,-42.665,-42.760,-42.863,-42.972,
--43.087,-43.207,-43.330,-43.454,-43.579,-43.702,-43.822,-43.937,-44.047,-44.149,-44.243,-44.328,-44.402,-44.466,-44.518,-44.560,
--44.590,-44.609,-44.619,-44.619,-44.610,-44.594,-44.572,-44.545,-44.515,-44.483,-44.450,-44.418,-44.388,-44.362,-44.339,-44.322,
--44.311,-44.307,-44.310,-44.320,-44.337,-44.361,-44.392,-44.429,-44.472,-44.519,-44.570,-44.624,-44.679,-44.734,-44.789,-44.843,
--44.894,-44.941,-44.983,-45.021,-45.052,-45.077,-45.096,-45.108,-45.113,-45.111,-45.103,-45.088,-45.069,-45.044,-45.015,-44.982,
--44.947,-44.909,-44.871,-44.832,-44.794,-44.757,-44.722,-44.689,-44.660,-44.633,-44.611,-44.592,-44.577,-44.567,-44.560,-44.558,
--44.559,-44.564,-44.571,-44.581,-44.594,-44.608,-44.624,-44.641,-44.659,-44.676,-44.694,-44.711,-44.726,-44.741,-44.754,-44.766,
--44.776,-44.783,-44.789,-44.792,-44.793,-44.792,-44.787,-44.781,-44.772,-44.760,-44.745,-44.728,-44.708,-44.685,-44.659,-44.630,
--44.598,-44.563,-44.526,-44.485,-44.441,-44.395,-44.345,-44.294,-44.239,-44.182,-44.123,-44.063,-44.000,-43.937,-43.872,-43.807,
--43.741,-43.675,-43.609,-43.544,-43.480,-43.417,-43.355,-43.295,-43.236,-43.178,-43.123,-43.069,-43.016,-42.965,-42.916,-42.867,
--42.819,-42.772,-42.725,-42.678,-42.631,-42.583,-42.534,-42.485,-42.434,-42.382,-42.329,-42.274,-42.218,-42.161,-42.103,-42.044,
--41.984,-41.924,-41.864,-41.804,-41.745,-41.688,-41.631,-41.577,-41.525,-41.476,-41.429,-41.385,-41.345,-41.307,-41.273,-41.241,
--41.212,-41.186,-41.161,-41.139,-41.118,-41.097,-41.077,-41.056,-41.035,-41.011,-40.986,-40.959,-40.928,-40.894,-40.856,-40.814,
--40.768,-40.717,-40.663,-40.604,-40.542,-40.476,-40.407,-40.335,-40.261,-40.186,-40.109,-40.032,-39.956,-39.881,-39.807,-39.735,
--39.665,-39.599,-39.536,-39.476,-39.420,-39.368,-39.319,-39.274,-39.232,-39.193,-39.155,-39.120,-39.085,-39.051,-39.017,-38.981,
--38.943,-38.903,-38.860,-38.812,-38.760,-38.704,-38.641,-38.574,-38.500,-38.421,-38.335,-38.245,-38.149,-38.048,-37.944,-37.835,
--37.724,-37.611,-37.497,-37.383,-37.270,-37.158,-37.049,-36.944,-36.843,-36.747,-36.656,-36.571,-36.493,-36.422,-36.358,-36.300,
--36.249,-36.204,-36.165,-36.131,-36.102,-36.076,-36.052,-36.031,-36.009,-35.987,-35.963,-35.935,-35.903,-35.866,-35.821,-35.769,
--35.708,-35.638,-35.557,-35.465,-35.362,-35.247,-35.120,-34.981,-34.831,-34.669,-34.496,-34.314,-34.122,-33.921,-33.714,-33.500,
--33.282,-33.060,-32.837,-32.612,-32.389,-32.168,-31.951,-31.739,-31.534,-31.336,-31.147,-30.969,-30.801,-30.644,-30.500,-30.368,
--30.249,-30.143,-30.049,-29.969,-29.900,-29.844,-29.799,-29.764,-29.738,-29.721,-29.711,-29.708,-29.710,-29.716,-29.725,-29.735,
--29.746,-29.757,-29.766,-29.773,-29.777,-29.778,-29.774,-29.765,-29.752,-29.733,-29.709,-29.680,-29.647,-29.609,-29.566,-29.520,
--29.471,-29.420,-29.367,-29.313,-29.258,-29.203,-29.150,-29.098,-29.047,-29.000,-28.955,-28.913,-28.875,-28.841,-28.810,-28.783,
--28.759,-28.739,-28.723,-28.709,-28.698,-28.690,-28.683,-28.678,-28.675,-28.672,-28.670,-28.669,-28.667,-28.666,-28.664,-28.662,
--28.660,-28.658,-28.656,-28.653,-28.651,-28.648,-28.646,-28.645,-28.644,-28.644,-28.645,-28.648,-28.651,-28.655,-28.660,-28.666,
--28.672,-28.678,-28.685,-28.691,-28.695,-28.699,-28.700,-28.698,-28.693,-28.685,-28.672,-28.654,-28.630,-28.601,-28.565,-28.524,
--28.475,-28.419,-28.357,-28.288,-28.213,-28.131,-28.044,-27.951,-27.854,-27.752,-27.646,-27.538,-27.428,-27.316,-27.203,-27.090,
--26.977,-26.866,-26.756,-26.648,-26.543,-26.440,-26.340,-26.243,-26.148,-26.057,-25.968,-25.882,-25.798,-25.716,-25.636,-25.557,
--25.479,-25.402,-25.325,-25.249,-25.174,-25.098,-25.023,-24.949,-24.875,-24.802,-24.731,-24.663,-24.597,-24.534,-24.476,-24.423,
--24.376,-24.336,-24.303,-24.279,-24.263,-24.258,-24.262,-24.278,-24.303,-24.340,-24.388,-24.446,-24.514,-24.591,-24.676,-24.769,
--24.868,-24.971,-25.078,-25.186,-25.293,-25.397,-25.497,-25.591,-25.676,-25.751,-25.813,-25.862,-25.894,-25.910,-25.907,-25.885,
--25.842,-25.778,-25.694,-25.588,-25.462,-25.316,-25.150,-24.966,-24.766,-24.550,-24.322,-24.082,-23.834,-23.579,-23.320,-23.060,
--22.801,-22.545,-22.295,-22.054,-21.823,-21.605,-21.402,-21.215,-21.045,-20.894,-20.763,-20.652,-20.562,-20.492,-20.442,-20.412,
--20.401,-20.408,-20.431,-20.470,-20.521,-20.584,-20.656,-20.736,-20.821,-20.909,-20.999,-21.087,-21.172,-21.253,-21.327,-21.394,
--21.450,-21.496,-21.531,-21.553,-21.562,-21.558,-21.540,-21.509,-21.466,-21.410,-21.342,-21.263,-21.174,-21.077,-20.972,-20.860,
--20.743,-20.622,-20.499,-20.374,-20.249,-20.125,-20.003,-19.883,-19.767,-19.656,-19.548,-19.446,-19.349,-19.258,-19.172,-19.090,
--19.014,-18.942,-18.874,-18.809,-18.747,-18.688,-18.630,-18.573,-18.516,-18.459,-18.402,-18.344,-18.285,-18.225,-18.162,-18.099,
--18.034,-17.969,-17.903,-17.836,-17.770,-17.705,-17.642,-17.581,-17.524,-17.470,-17.422,-17.379,-17.342,-17.312,-17.289,-17.274,
--17.267,-17.268,-17.277,-17.295,-17.320,-17.353,-17.393,-17.439,-17.490,-17.546,-17.605,-17.666,-17.729,-17.792,-17.854,-17.913,
--17.969,-18.021,-18.067,-18.107,-18.139,-18.163,-18.179,-18.186,-18.184,-18.172,-18.152,-18.122,-18.084,-18.038,-17.984,-17.923,
--17.857,-17.785,-17.709,-17.629,-17.548,-17.464,-17.380,-17.296,-17.213,-17.131,-17.051,-16.974,-16.899,-16.827,-16.758,-16.691,
--16.627,-16.566,-16.506,-16.448,-16.391,-16.334,-16.277,-16.220,-16.161,-16.100,-16.037,-15.971,-15.902,-15.829,-15.753,-15.674,
--15.591,-15.505,-15.416,-15.324,-15.230,-15.135,-15.038,-14.942,-14.846,-14.751,-14.659,-14.569,-14.482,-14.400,-14.323,-14.250,
--14.184,-14.123,-14.068,-14.019,-13.977,-13.941,-13.910,-13.884,-13.863,-13.847,-13.834,-13.825,-13.817,-13.811,-13.806,-13.801,
--13.796,-13.790,-13.782,-13.773,-13.761,-13.747,-13.731,-13.712,-13.690,-13.667,-13.642,-13.616,-13.590,-13.563,-13.537,-13.513,
--13.490,-13.470,-13.454,-13.441,-13.434,-13.431,-13.434,-13.442,-13.456,-13.477,-13.503,-13.535,-13.572,-13.613,-13.659,-13.709,
--13.761,-13.815,-13.870,-13.926,-13.980,-14.033,-14.083,-14.130,-14.636,-14.676,-14.713,-14.747,-14.776,-14.800,-14.820,-14.834,
--14.844,-14.849,-14.849,-14.844,-14.835,-14.822,-14.806,-14.786,-14.763,-14.738,-14.711,-14.681,-14.651,-14.619,-14.586,-14.552,
--14.517,-14.482,-14.445,-14.408,-14.370,-14.330,-14.289,-14.246,-14.200,-14.153,-14.102,-14.048,-13.991,-13.931,-13.866,-13.798,
--13.726,-13.650,-13.571,-13.488,-13.402,-13.314,-13.223,-13.131,-13.039,-12.946,-12.853,-12.763,-12.674,-12.589,-12.507,-12.430,
--12.359,-12.293,-12.234,-12.182,-12.137,-12.099,-12.069,-12.046,-12.031,-12.021,-12.018,-12.021,-12.028,-12.038,-12.051,-12.066,
--12.081,-12.095,-12.107,-12.115,-12.118,-12.116,-12.106,-12.088,-12.061,-12.023,-11.975,-11.915,-11.843,-11.759,-11.663,-11.554,
--11.433,-11.300,-11.157,-11.002,-10.839,-10.666,-10.486,-10.299,-10.107,-9.911,-9.712,-9.512,-9.311,-9.112,-8.915,-8.721,
--8.532,-8.349,-8.171,-8.001,-7.839,-7.685,-7.540,-7.403,-7.275,-7.157,-7.047,-6.946,-6.854,-6.769,-6.692,-6.622,
--6.558,-6.500,-6.448,-6.401,-6.357,-6.317,-6.281,-6.247,-6.216,-6.187,-6.159,-6.133,-6.109,-6.087,-6.066,-6.046,
--6.029,-6.014,-6.002,-5.992,-5.985,-5.982,-5.983,-5.988,-5.997,-6.011,-6.031,-6.055,-6.085,-6.121,-6.161,-6.208,
--6.259,-6.315,-6.376,-6.442,-6.510,-6.583,-6.657,-6.734,-6.812,-6.891,-6.969,-7.046,-7.122,-7.196,-7.266,-7.333,
--7.396,-7.454,-7.507,-7.554,-7.596,-7.632,-7.661,-7.685,-7.702,-7.714,-7.720,-7.721,-7.716,-7.707,-7.694,-7.677,
--7.657,-7.634,-7.608,-7.581,-7.553,-7.524,-7.494,-7.464,-7.434,-7.404,-7.375,-7.346,-7.318,-7.290,-7.262,-7.235,
--7.208,-7.181,-7.153,-7.125,-7.096,-7.067,-7.036,-7.004,-6.970,-6.936,-6.899,-6.862,-6.823,-6.783,-6.742,-6.701,
--6.660,-6.619,-6.579,-6.540,-6.503,-6.468,-6.436,-6.407,-6.382,-6.361,-6.345,-6.334,-6.328,-6.327,-6.332,-6.342,
--6.357,-6.376,-6.400,-6.428,-6.460,-6.494,-6.530,-6.567,-6.604,-6.641,-6.676,-6.709,-6.738,-6.763,-6.783,-6.798,
--6.806,-6.807,-6.801,-6.788,-6.767,-6.739,-6.703,-6.660,-6.610,-6.555,-6.494,-6.429,-6.361,-6.290,-6.219,-6.147,
--6.076,-6.008,-5.944,-5.884,-5.831,-5.784,-5.746,-5.716,-5.697,-5.687,-5.689,-5.701,-5.726,-5.761,-5.808,-5.866,
--5.935,-6.015,-6.104,-6.201,-6.307,-6.421,-6.540,-6.665,-6.795,-6.928,-7.063,-7.200,-7.338,-7.475,-7.612,-7.747,
--7.880,-8.011,-8.139,-8.263,-8.384,-8.502,-8.616,-8.727,-8.835,-8.940,-9.042,-9.142,-9.239,-9.336,-9.431,-9.525,
--9.619,-9.713,-9.808,-9.903,-9.998,-10.095,-10.193,-10.292,-10.393,-10.495,-10.598,-10.702,-10.808,-10.914,-11.021,-11.129,
--11.237,-11.345,-11.453,-11.561,-11.669,-11.776,-11.882,-11.988,-12.093,-12.197,-12.301,-12.405,-12.508,-12.611,-12.715,-12.818,
--12.922,-13.028,-13.134,-13.241,-13.351,-13.462,-13.575,-13.690,-13.808,-13.928,-14.051,-14.176,-14.303,-14.433,-14.565,-14.699,
--14.834,-14.971,-15.109,-15.248,-15.387,-15.526,-15.664,-15.802,-15.939,-16.074,-16.208,-16.339,-16.469,-16.597,-16.722,-16.845,
--16.965,-17.084,-17.200,-17.315,-17.429,-17.541,-17.652,-17.763,-17.874,-17.986,-18.098,-18.211,-18.326,-18.442,-18.561,-18.681,
--18.805,-18.931,-19.059,-19.190,-19.323,-19.459,-19.597,-19.736,-19.877,-20.019,-20.161,-20.303,-20.445,-20.586,-20.725,-20.863,
--20.998,-21.131,-21.261,-21.387,-21.510,-21.629,-21.745,-21.857,-21.965,-22.071,-22.174,-22.274,-22.372,-22.469,-22.565,-22.661,
--22.757,-22.855,-22.954,-23.056,-23.161,-23.270,-23.383,-23.502,-23.625,-23.754,-23.889,-24.030,-24.176,-24.329,-24.488,-24.652,
--24.822,-24.996,-25.175,-25.358,-25.544,-25.732,-25.923,-26.114,-26.307,-26.499,-26.691,-26.882,-27.071,-27.258,-27.443,-27.625,
--27.804,-27.980,-28.153,-28.323,-28.491,-28.656,-28.818,-28.979,-29.137,-29.295,-29.452,-29.609,-29.766,-29.924,-30.082,-30.242,
--30.404,-30.568,-30.734,-30.902,-31.073,-31.246,-31.421,-31.599,-31.778,-31.959,-32.142,-32.325,-32.508,-32.691,-32.873,-33.054,
--33.232,-33.409,-33.582,-33.751,-33.917,-34.078,-34.233,-34.384,-34.528,-34.667,-34.799,-34.925,-35.045,-35.159,-35.266,-35.367,
--35.461,-35.551,-35.634,-35.713,-35.786,-35.855,-35.919,-35.980,-36.037,-36.091,-36.142,-36.191,-36.237,-36.282,-36.325,-36.366,
--36.407,-36.447,-36.486,-36.525,-36.563,-36.602,-36.640,-36.678,-36.716,-36.755,-36.794,-36.833,-36.872,-36.911,-36.951,-36.991,
--37.031,-37.072,-37.112,-37.153,-37.194,-37.235,-37.276,-37.317,-37.357,-37.397,-37.437,-37.476,-37.514,-37.551,-37.588,-37.623,
--37.657,-37.689,-37.720,-37.750,-37.777,-37.803,-37.827,-37.850,-37.870,-37.889,-37.906,-37.921,-37.935,-37.947,-37.958,-37.968,
--37.977,-37.986,-37.993,-38.001,-38.008,-38.015,-38.023,-38.031,-38.039,-38.047,-38.056,-38.065,-38.075,-38.084,-38.094,-38.103,
--38.112,-38.119,-38.125,-38.130,-38.131,-38.130,-38.126,-38.118,-38.105,-38.087,-38.065,-38.036,-38.001,-37.959,-37.911,-37.856,
--37.793,-37.724,-37.647,-37.564,-37.474,-37.378,-37.275,-37.168,-37.055,-36.939,-36.819,-36.696,-36.571,-36.445,-36.318,-36.191,
--36.065,-35.940,-35.817,-35.696,-35.579,-35.465,-35.354,-35.246,-35.143,-35.043,-34.947,-34.854,-34.765,-34.679,-34.595,-34.514,
--34.436,-34.359,-34.284,-34.212,-34.140,-34.071,-34.003,-33.938,-33.875,-33.816,-33.760,-33.709,-33.663,-33.624,-33.593,-33.570,
--33.558,-33.557,-33.570,-33.596,-33.638,-33.696,-33.773,-33.868,-33.982,-34.117,-34.272,-34.448,-34.645,-34.861,-35.097,-35.352,
--35.623,-35.911,-36.213,-36.526,-36.850,-37.180,-37.516,-37.854,-38.192,-38.526,-38.854,-39.174,-39.483,-39.778,-40.057,-40.318,
--40.560,-40.781,-40.981,-41.158,-41.311,-41.442,-41.551,-41.638,-41.704,-41.751,-41.780,-41.795,-41.796,-41.786,-41.768,-41.745,
--41.719,-41.692,-41.669,-41.650,-41.639,-41.638,-41.648,-41.672,-41.710,-41.764,-41.834,-41.921,-42.024,-42.144,-42.279,-42.428,
--42.591,-42.764,-42.948,-43.139,-43.335,-43.534,-43.734,-43.932,-44.126,-44.313,-44.492,-44.660,-44.815,-44.957,-45.083,-45.193,
--45.285,-45.360,-45.417,-45.456,-45.478,-45.484,-45.473,-45.448,-45.410,-45.360,-45.300,-45.232,-45.157,-45.078,-44.996,-44.912,
--44.829,-44.749,-44.671,-44.599,-44.533,-44.473,-44.421,-44.377,-44.342,-44.315,-44.296,-44.286,-44.283,-44.287,-44.298,-44.315,
--44.336,-44.360,-44.388,-44.417,-44.447,-44.477,-44.506,-44.533,-44.557,-44.578,-44.596,-44.609,-44.617,-44.621,-44.620,-44.615,
--44.605,-44.590,-44.572,-44.550,-44.525,-44.498,-44.469,-44.438,-44.406,-44.375,-44.344,-44.313,-44.284,-44.258,-44.233,-44.211,
--44.193,-44.177,-44.165,-44.157,-44.152,-44.151,-44.153,-44.160,-44.169,-44.181,-44.197,-44.215,-44.235,-44.257,-44.281,-44.307,
--44.333,-44.360,-44.387,-44.414,-44.441,-44.466,-44.491,-44.514,-44.535,-44.554,-44.570,-44.584,-44.595,-44.602,-44.607,-44.607,
--44.604,-44.597,-44.587,-44.572,-44.553,-44.530,-44.503,-44.472,-44.437,-44.398,-44.356,-44.310,-44.261,-44.208,-44.153,-44.095,
--44.034,-43.971,-43.906,-43.839,-43.770,-43.700,-43.628,-43.556,-43.482,-43.407,-43.332,-43.256,-43.179,-43.102,-43.024,-42.946,
--42.867,-42.787,-42.707,-42.627,-42.545,-42.464,-42.381,-42.299,-42.216,-42.133,-42.050,-41.966,-41.884,-41.801,-41.720,-41.639,
--41.560,-41.483,-41.407,-41.334,-41.264,-41.196,-41.131,-41.070,-41.012,-40.958,-40.908,-40.862,-40.819,-40.781,-40.746,-40.714,
--40.685,-40.660,-40.636,-40.615,-40.595,-40.576,-40.558,-40.539,-40.520,-40.499,-40.477,-40.452,-40.425,-40.395,-40.361,-40.324,
--40.283,-40.238,-40.190,-40.137,-40.081,-40.022,-39.960,-39.895,-39.828,-39.760,-39.691,-39.621,-39.552,-39.484,-39.417,-39.352,
--39.290,-39.232,-39.176,-39.125,-39.078,-39.035,-38.997,-38.963,-38.933,-38.907,-38.885,-38.866,-38.849,-38.834,-38.821,-38.808,
--38.794,-38.780,-38.764,-38.745,-38.723,-38.697,-38.666,-38.630,-38.589,-38.541,-38.486,-38.426,-38.358,-38.284,-38.204,-38.118,
--38.026,-37.929,-37.827,-37.722,-37.614,-37.504,-37.392,-37.280,-37.168,-37.057,-36.949,-36.843,-36.741,-36.642,-36.549,-36.460,
--36.376,-36.298,-36.226,-36.158,-36.096,-36.039,-35.986,-35.937,-35.891,-35.848,-35.806,-35.764,-35.723,-35.680,-35.635,-35.588,
--35.536,-35.479,-35.417,-35.348,-35.272,-35.189,-35.097,-34.998,-34.890,-34.774,-34.649,-34.516,-34.375,-34.228,-34.073,-33.913,
--33.747,-33.578,-33.405,-33.230,-33.053,-32.877,-32.701,-32.528,-32.357,-32.190,-32.028,-31.871,-31.720,-31.577,-31.440,-31.311,
--31.190,-31.077,-30.971,-30.874,-30.783,-30.700,-30.624,-30.553,-30.488,-30.428,-30.372,-30.318,-30.268,-30.218,-30.170,-30.122,
--30.073,-30.023,-29.971,-29.916,-29.860,-29.800,-29.737,-29.671,-29.602,-29.531,-29.456,-29.379,-29.301,-29.221,-29.140,-29.058,
--28.978,-28.898,-28.820,-28.745,-28.672,-28.603,-28.538,-28.478,-28.423,-28.373,-28.328,-28.289,-28.256,-28.229,-28.207,-28.191,
--28.179,-28.172,-28.170,-28.171,-28.176,-28.183,-28.193,-28.205,-28.218,-28.232,-28.246,-28.260,-28.274,-28.288,-28.301,-28.313,
--28.324,-28.335,-28.345,-28.355,-28.364,-28.373,-28.383,-28.393,-28.405,-28.418,-28.432,-28.449,-28.467,-28.489,-28.512,-28.539,
--28.568,-28.600,-28.634,-28.670,-28.708,-28.748,-28.788,-28.829,-28.870,-28.909,-28.948,-28.984,-29.016,-29.045,-29.070,-29.090,
--29.104,-29.111,-29.112,-29.106,-29.092,-29.071,-29.042,-29.005,-28.960,-28.907,-28.847,-28.779,-28.705,-28.625,-28.538,-28.446,
--28.349,-28.248,-28.143,-28.035,-27.924,-27.811,-27.696,-27.579,-27.461,-27.343,-27.223,-27.103,-26.983,-26.862,-26.742,-26.620,
--26.498,-26.376,-26.254,-26.131,-26.007,-25.883,-25.758,-25.634,-25.509,-25.384,-25.260,-25.137,-25.015,-24.895,-24.778,-24.665,
--24.555,-24.451,-24.353,-24.261,-24.177,-24.102,-24.037,-23.981,-23.937,-23.904,-23.883,-23.875,-23.879,-23.896,-23.926,-23.969,
--24.024,-24.090,-24.167,-24.253,-24.348,-24.451,-24.559,-24.672,-24.788,-24.905,-25.021,-25.134,-25.243,-25.346,-25.442,-25.528,
--25.603,-25.665,-25.714,-25.749,-25.768,-25.771,-25.757,-25.727,-25.680,-25.617,-25.538,-25.444,-25.335,-25.214,-25.081,-24.938,
--24.786,-24.628,-24.464,-24.298,-24.130,-23.964,-23.799,-23.639,-23.486,-23.339,-23.202,-23.076,-22.961,-22.858,-22.768,-22.692,
--22.630,-22.581,-22.546,-22.524,-22.515,-22.518,-22.532,-22.555,-22.587,-22.626,-22.670,-22.719,-22.770,-22.822,-22.873,-22.922,
--22.968,-23.009,-23.043,-23.070,-23.088,-23.096,-23.095,-23.082,-23.058,-23.022,-22.975,-22.916,-22.845,-22.763,-22.670,-22.566,
--22.453,-22.331,-22.200,-22.062,-21.918,-21.768,-21.614,-21.456,-21.295,-21.132,-20.968,-20.804,-20.640,-20.477,-20.316,-20.158,
--20.002,-19.849,-19.700,-19.554,-19.413,-19.276,-19.144,-19.016,-18.894,-18.776,-18.663,-18.556,-18.454,-18.358,-18.267,-18.183,
--18.104,-18.031,-17.965,-17.905,-17.852,-17.806,-17.767,-17.735,-17.711,-17.694,-17.685,-17.683,-17.688,-17.701,-17.721,-17.748,
--17.781,-17.820,-17.866,-17.916,-17.971,-18.029,-18.091,-18.154,-18.220,-18.286,-18.351,-18.415,-18.477,-18.537,-18.592,-18.643,
--18.689,-18.729,-18.762,-18.788,-18.807,-18.818,-18.822,-18.818,-18.806,-18.786,-18.758,-18.724,-18.682,-18.635,-18.581,-18.523,
--18.459,-18.392,-18.322,-18.249,-18.173,-18.097,-18.019,-17.941,-17.862,-17.784,-17.707,-17.631,-17.555,-17.480,-17.406,-17.333,
--17.261,-17.189,-17.118,-17.046,-16.975,-16.902,-16.829,-16.754,-16.678,-16.600,-16.521,-16.439,-16.355,-16.270,-16.182,-16.093,
--16.002,-15.910,-15.817,-15.724,-15.631,-15.538,-15.447,-15.357,-15.270,-15.186,-15.105,-15.027,-14.954,-14.886,-14.823,-14.765,
--14.713,-14.666,-14.625,-14.589,-14.558,-14.532,-14.511,-14.494,-14.480,-14.470,-14.462,-14.455,-14.451,-14.446,-14.442,-14.438,
--14.432,-14.425,-14.416,-14.405,-14.392,-14.376,-14.358,-14.337,-14.315,-14.290,-14.264,-14.236,-14.208,-14.180,-14.153,-14.126,
--14.101,-14.079,-14.059,-14.043,-14.031,-14.023,-14.019,-14.021,-14.028,-14.040,-14.058,-14.080,-14.108,-14.140,-14.176,-14.216,
--14.259,-14.305,-14.352,-14.401,-14.450,-14.498,-14.546,-14.592,-14.636,-15.040,-15.067,-15.094,-15.120,-15.145,-15.169,-15.192,
--15.213,-15.233,-15.252,-15.268,-15.284,-15.298,-15.311,-15.322,-15.332,-15.341,-15.348,-15.353,-15.357,-15.360,-15.360,-15.359,
--15.355,-15.348,-15.339,-15.326,-15.310,-15.289,-15.265,-15.235,-15.200,-15.160,-15.113,-15.061,-15.002,-14.936,-14.864,-14.786,
--14.700,-14.609,-14.511,-14.408,-14.299,-14.186,-14.069,-13.949,-13.827,-13.703,-13.579,-13.455,-13.333,-13.214,-13.098,-12.987,
--12.881,-12.782,-12.691,-12.607,-12.532,-12.466,-12.409,-12.362,-12.325,-12.296,-12.278,-12.268,-12.266,-12.272,-12.284,-12.302,
--12.325,-12.351,-12.379,-12.408,-12.437,-12.463,-12.487,-12.506,-12.520,-12.527,-12.526,-12.516,-12.496,-12.465,-12.424,-12.371,
--12.306,-12.229,-12.141,-12.041,-11.929,-11.807,-11.675,-11.534,-11.385,-11.228,-11.064,-10.896,-10.723,-10.548,-10.372,-10.194,
--10.018,-9.844,-9.672,-9.505,-9.342,-9.184,-9.033,-8.889,-8.752,-8.623,-8.501,-8.388,-8.282,-8.184,-8.093,-8.010,
--7.933,-7.864,-7.800,-7.741,-7.688,-7.639,-7.595,-7.553,-7.515,-7.479,-7.446,-7.414,-7.384,-7.355,-7.328,-7.301,
--7.276,-7.252,-7.230,-7.208,-7.189,-7.172,-7.156,-7.144,-7.134,-7.127,-7.123,-7.124,-7.128,-7.136,-7.149,-7.166,
--7.187,-7.213,-7.243,-7.277,-7.315,-7.357,-7.402,-7.450,-7.500,-7.553,-7.606,-7.661,-7.716,-7.771,-7.825,-7.878,
--7.928,-7.977,-8.022,-8.064,-8.102,-8.136,-8.165,-8.190,-8.211,-8.226,-8.237,-8.243,-8.244,-8.241,-8.233,-8.222,
--8.207,-8.188,-8.167,-8.143,-8.116,-8.088,-8.058,-8.027,-7.994,-7.961,-7.928,-7.894,-7.861,-7.827,-7.794,-7.761,
--7.728,-7.696,-7.664,-7.632,-7.601,-7.570,-7.538,-7.507,-7.476,-7.444,-7.413,-7.382,-7.350,-7.319,-7.287,-7.256,
--7.226,-7.195,-7.166,-7.138,-7.110,-7.085,-7.061,-7.039,-7.019,-7.002,-6.988,-6.976,-6.968,-6.962,-6.960,-6.961,
--6.965,-6.972,-6.982,-6.994,-7.009,-7.025,-7.043,-7.062,-7.082,-7.102,-7.121,-7.139,-7.157,-7.172,-7.184,-7.194,
--7.201,-7.204,-7.203,-7.198,-7.189,-7.175,-7.157,-7.136,-7.110,-7.080,-7.048,-7.012,-6.975,-6.935,-6.895,-6.854,
--6.814,-6.774,-6.736,-6.701,-6.669,-6.641,-6.618,-6.600,-6.587,-6.581,-6.581,-6.589,-6.603,-6.625,-6.654,-6.691,
--6.734,-6.785,-6.843,-6.908,-6.978,-7.054,-7.136,-7.223,-7.313,-7.408,-7.506,-7.606,-7.709,-7.813,-7.919,-8.026,
--8.133,-8.240,-8.348,-8.455,-8.561,-8.667,-8.772,-8.877,-8.981,-9.084,-9.187,-9.290,-9.392,-9.494,-9.595,-9.697,
--9.800,-9.902,-10.005,-10.109,-10.213,-10.318,-10.424,-10.530,-10.637,-10.744,-10.852,-10.961,-11.070,-11.179,-11.288,-11.397,
--11.506,-11.615,-11.724,-11.832,-11.940,-12.048,-12.155,-12.262,-12.368,-12.474,-12.581,-12.687,-12.794,-12.901,-13.009,-13.118,
--13.228,-13.339,-13.452,-13.567,-13.684,-13.803,-13.925,-14.049,-14.175,-14.304,-14.435,-14.568,-14.704,-14.842,-14.982,-15.124,
--15.267,-15.411,-15.556,-15.701,-15.846,-15.991,-16.135,-16.279,-16.421,-16.561,-16.699,-16.835,-16.969,-17.100,-17.228,-17.354,
--17.477,-17.598,-17.716,-17.831,-17.945,-18.057,-18.167,-18.276,-18.384,-18.492,-18.599,-18.707,-18.815,-18.923,-19.033,-19.144,
--19.256,-19.370,-19.486,-19.603,-19.723,-19.843,-19.966,-20.089,-20.214,-20.340,-20.466,-20.592,-20.719,-20.844,-20.969,-21.092,
--21.214,-21.334,-21.452,-21.567,-21.680,-21.790,-21.897,-22.001,-22.103,-22.202,-22.298,-22.393,-22.485,-22.576,-22.667,-22.756,
--22.846,-22.937,-23.028,-23.122,-23.217,-23.316,-23.418,-23.523,-23.633,-23.748,-23.867,-23.992,-24.122,-24.258,-24.398,-24.545,
--24.696,-24.852,-25.013,-25.178,-25.348,-25.520,-25.696,-25.874,-26.054,-26.236,-26.418,-26.601,-26.784,-26.966,-27.148,-27.328,
--27.507,-27.684,-27.859,-28.032,-28.203,-28.372,-28.539,-28.705,-28.868,-29.031,-29.192,-29.353,-29.513,-29.673,-29.834,-29.995,
--30.156,-30.319,-30.483,-30.649,-30.816,-30.985,-31.156,-31.328,-31.503,-31.678,-31.855,-32.033,-32.212,-32.391,-32.570,-32.749,
--32.927,-33.104,-33.279,-33.452,-33.622,-33.789,-33.952,-34.111,-34.266,-34.417,-34.562,-34.702,-34.837,-34.966,-35.090,-35.208,
--35.320,-35.427,-35.528,-35.624,-35.715,-35.800,-35.881,-35.957,-36.029,-36.097,-36.160,-36.221,-36.278,-36.332,-36.383,-36.431,
--36.477,-36.521,-36.563,-36.603,-36.641,-36.678,-36.713,-36.746,-36.778,-36.809,-36.839,-36.867,-36.895,-36.921,-36.946,-36.971,
--36.994,-37.017,-37.039,-37.060,-37.081,-37.101,-37.121,-37.141,-37.160,-37.180,-37.199,-37.219,-37.239,-37.260,-37.281,-37.303,
--37.325,-37.348,-37.372,-37.397,-37.422,-37.449,-37.476,-37.503,-37.531,-37.560,-37.589,-37.618,-37.648,-37.677,-37.706,-37.734,
--37.762,-37.788,-37.814,-37.838,-37.861,-37.882,-37.900,-37.917,-37.931,-37.943,-37.952,-37.958,-37.962,-37.962,-37.959,-37.954,
--37.945,-37.933,-37.919,-37.901,-37.881,-37.858,-37.833,-37.806,-37.776,-37.745,-37.712,-37.678,-37.643,-37.607,-37.570,-37.533,
--37.496,-37.460,-37.423,-37.387,-37.351,-37.316,-37.281,-37.247,-37.213,-37.180,-37.146,-37.113,-37.078,-37.043,-37.007,-36.968,
--36.927,-36.882,-36.834,-36.782,-36.724,-36.661,-36.591,-36.515,-36.431,-36.339,-36.238,-36.129,-36.011,-35.884,-35.748,-35.604,
--35.451,-35.291,-35.124,-34.951,-34.773,-34.592,-34.409,-34.226,-34.044,-33.865,-33.692,-33.527,-33.372,-33.229,-33.100,-32.988,
--32.895,-32.823,-32.774,-32.749,-32.751,-32.781,-32.840,-32.928,-33.047,-33.196,-33.375,-33.584,-33.822,-34.087,-34.379,-34.694,
--35.032,-35.388,-35.761,-36.147,-36.544,-36.947,-37.353,-37.758,-38.159,-38.553,-38.936,-39.304,-39.654,-39.984,-40.292,-40.573,
--40.828,-41.054,-41.251,-41.417,-41.553,-41.658,-41.734,-41.782,-41.803,-41.800,-41.774,-41.729,-41.666,-41.590,-41.504,-41.411,
--41.315,-41.219,-41.126,-41.041,-40.966,-40.904,-40.857,-40.829,-40.822,-40.836,-40.873,-40.935,-41.020,-41.131,-41.265,-41.422,
--41.602,-41.801,-42.019,-42.253,-42.500,-42.758,-43.024,-43.294,-43.566,-43.837,-44.104,-44.363,-44.611,-44.847,-45.068,-45.271,
--45.455,-45.618,-45.759,-45.877,-45.972,-46.043,-46.090,-46.114,-46.116,-46.097,-46.058,-46.001,-45.928,-45.840,-45.739,-45.629,
--45.510,-45.385,-45.257,-45.127,-44.998,-44.871,-44.748,-44.631,-44.522,-44.420,-44.328,-44.245,-44.173,-44.112,-44.062,-44.023,
--43.994,-43.974,-43.965,-43.963,-43.969,-43.982,-44.000,-44.022,-44.047,-44.075,-44.103,-44.132,-44.159,-44.184,-44.206,-44.224,
--44.239,-44.248,-44.253,-44.252,-44.245,-44.233,-44.216,-44.193,-44.166,-44.134,-44.098,-44.059,-44.017,-43.974,-43.929,-43.883,
--43.838,-43.794,-43.752,-43.712,-43.675,-43.642,-43.613,-43.590,-43.571,-43.558,-43.551,-43.550,-43.556,-43.567,-43.585,-43.609,
--43.639,-43.675,-43.715,-43.761,-43.811,-43.865,-43.922,-43.982,-44.044,-44.107,-44.171,-44.235,-44.298,-44.359,-44.418,-44.475,
--44.528,-44.576,-44.620,-44.659,-44.692,-44.718,-44.738,-44.751,-44.757,-44.756,-44.747,-44.730,-44.706,-44.675,-44.635,-44.589,
--44.535,-44.474,-44.406,-44.333,-44.253,-44.167,-44.076,-43.981,-43.881,-43.776,-43.669,-43.558,-43.444,-43.328,-43.211,-43.091,
--42.971,-42.850,-42.729,-42.608,-42.487,-42.368,-42.249,-42.132,-42.017,-41.903,-41.792,-41.684,-41.579,-41.477,-41.378,-41.282,
--41.191,-41.103,-41.019,-40.940,-40.865,-40.794,-40.727,-40.665,-40.606,-40.552,-40.502,-40.456,-40.414,-40.374,-40.338,-40.304,
--40.273,-40.244,-40.216,-40.189,-40.163,-40.137,-40.111,-40.084,-40.057,-40.027,-39.996,-39.963,-39.927,-39.888,-39.847,-39.803,
--39.756,-39.707,-39.654,-39.599,-39.542,-39.483,-39.423,-39.361,-39.299,-39.237,-39.175,-39.114,-39.055,-38.998,-38.944,-38.893,
--38.845,-38.801,-38.762,-38.727,-38.698,-38.673,-38.653,-38.638,-38.627,-38.621,-38.619,-38.621,-38.625,-38.633,-38.641,-38.651,
--38.662,-38.671,-38.680,-38.686,-38.689,-38.688,-38.683,-38.673,-38.657,-38.635,-38.606,-38.570,-38.526,-38.475,-38.417,-38.351,
--38.278,-38.198,-38.111,-38.018,-37.920,-37.817,-37.710,-37.600,-37.487,-37.372,-37.256,-37.141,-37.025,-36.912,-36.800,-36.691,
--36.585,-36.483,-36.385,-36.291,-36.202,-36.117,-36.037,-35.961,-35.890,-35.822,-35.757,-35.696,-35.636,-35.579,-35.522,-35.466,
--35.409,-35.351,-35.292,-35.230,-35.166,-35.097,-35.025,-34.948,-34.867,-34.780,-34.689,-34.592,-34.489,-34.382,-34.270,-34.153,
--34.032,-33.907,-33.779,-33.648,-33.515,-33.380,-33.244,-33.108,-32.972,-32.837,-32.703,-32.572,-32.442,-32.315,-32.191,-32.071,
--31.953,-31.839,-31.729,-31.622,-31.517,-31.416,-31.317,-31.220,-31.125,-31.032,-30.939,-30.846,-30.754,-30.660,-30.566,-30.470,
--30.372,-30.272,-30.170,-30.065,-29.957,-29.847,-29.734,-29.619,-29.502,-29.384,-29.263,-29.143,-29.022,-28.901,-28.781,-28.663,
--28.548,-28.436,-28.328,-28.224,-28.125,-28.033,-27.947,-27.868,-27.796,-27.732,-27.676,-27.628,-27.589,-27.557,-27.534,-27.518,
--27.511,-27.510,-27.516,-27.529,-27.548,-27.572,-27.601,-27.634,-27.670,-27.710,-27.752,-27.796,-27.841,-27.888,-27.935,-27.983,
--28.031,-28.079,-28.127,-28.174,-28.222,-28.269,-28.316,-28.363,-28.411,-28.459,-28.507,-28.557,-28.607,-28.659,-28.712,-28.766,
--28.822,-28.879,-28.937,-28.997,-29.058,-29.120,-29.182,-29.244,-29.307,-29.368,-29.429,-29.487,-29.544,-29.597,-29.648,-29.694,
--29.736,-29.773,-29.804,-29.830,-29.849,-29.861,-29.867,-29.865,-29.857,-29.840,-29.817,-29.786,-29.748,-29.704,-29.652,-29.593,
--29.529,-29.458,-29.382,-29.300,-29.213,-29.121,-29.025,-28.924,-28.819,-28.710,-28.597,-28.480,-28.359,-28.235,-28.107,-27.975,
--27.839,-27.699,-27.555,-27.407,-27.256,-27.100,-26.940,-26.776,-26.609,-26.438,-26.264,-26.088,-25.909,-25.730,-25.549,-25.369,
--25.189,-25.012,-24.838,-24.669,-24.505,-24.347,-24.198,-24.058,-23.928,-23.811,-23.706,-23.615,-23.539,-23.479,-23.435,-23.408,
--23.399,-23.408,-23.434,-23.477,-23.538,-23.615,-23.708,-23.815,-23.936,-24.070,-24.214,-24.367,-24.528,-24.694,-24.864,-25.036,
--25.207,-25.375,-25.540,-25.698,-25.848,-25.989,-26.118,-26.234,-26.337,-26.424,-26.496,-26.551,-26.590,-26.611,-26.616,-26.604,
--26.576,-26.533,-26.475,-26.403,-26.320,-26.226,-26.122,-26.010,-25.893,-25.771,-25.646,-25.520,-25.395,-25.272,-25.152,-25.037,
--24.929,-24.827,-24.734,-24.650,-24.575,-24.510,-24.456,-24.411,-24.376,-24.351,-24.334,-24.326,-24.325,-24.331,-24.342,-24.357,
--24.375,-24.395,-24.414,-24.433,-24.449,-24.460,-24.467,-24.467,-24.459,-24.442,-24.415,-24.378,-24.329,-24.268,-24.194,-24.108,
--24.008,-23.896,-23.770,-23.632,-23.481,-23.319,-23.145,-22.961,-22.767,-22.565,-22.355,-22.138,-21.916,-21.690,-21.461,-21.231,
--21.000,-20.769,-20.541,-20.317,-20.096,-19.882,-19.674,-19.474,-19.283,-19.101,-18.931,-18.771,-18.623,-18.488,-18.366,-18.257,
--18.162,-18.081,-18.013,-17.959,-17.920,-17.893,-17.880,-17.880,-17.892,-17.915,-17.950,-17.995,-18.049,-18.112,-18.182,-18.259,
--18.341,-18.428,-18.519,-18.611,-18.705,-18.799,-18.893,-18.984,-19.073,-19.157,-19.237,-19.312,-19.380,-19.442,-19.497,-19.543,
--19.582,-19.612,-19.634,-19.648,-19.653,-19.650,-19.639,-19.620,-19.594,-19.562,-19.523,-19.478,-19.428,-19.374,-19.316,-19.255,
--19.191,-19.126,-19.058,-18.990,-18.922,-18.853,-18.785,-18.717,-18.650,-18.584,-18.518,-18.454,-18.390,-18.326,-18.263,-18.200,
--18.137,-18.073,-18.009,-17.943,-17.875,-17.806,-17.734,-17.659,-17.582,-17.502,-17.419,-17.333,-17.244,-17.152,-17.057,-16.959,
--16.859,-16.757,-16.654,-16.550,-16.445,-16.341,-16.237,-16.135,-16.034,-15.937,-15.842,-15.751,-15.664,-15.582,-15.505,-15.433,
--15.367,-15.306,-15.252,-15.203,-15.160,-15.123,-15.091,-15.064,-15.042,-15.024,-15.010,-14.999,-14.991,-14.986,-14.982,-14.979,
--14.978,-14.976,-14.974,-14.972,-14.969,-14.964,-14.958,-14.951,-14.942,-14.932,-14.920,-14.907,-14.893,-14.877,-14.861,-14.845,
--14.829,-14.813,-14.798,-14.783,-14.771,-14.760,-14.751,-14.744,-14.740,-14.739,-14.741,-14.745,-14.752,-14.763,-14.776,-14.791,
--14.809,-14.830,-14.852,-14.876,-14.902,-14.928,-14.956,-14.984,-15.012,-15.040,-15.244,-15.246,-15.250,-15.256,-15.265,-15.276,
--15.290,-15.306,-15.324,-15.345,-15.369,-15.394,-15.422,-15.452,-15.483,-15.515,-15.548,-15.582,-15.616,-15.649,-15.681,-15.712,
--15.740,-15.766,-15.789,-15.807,-15.820,-15.829,-15.831,-15.826,-15.815,-15.796,-15.768,-15.733,-15.688,-15.635,-15.572,-15.501,
--15.420,-15.331,-15.234,-15.128,-15.015,-14.896,-14.770,-14.639,-14.504,-14.366,-14.226,-14.085,-13.945,-13.805,-13.668,-13.535,
--13.406,-13.284,-13.168,-13.060,-12.960,-12.870,-12.789,-12.719,-12.659,-12.609,-12.571,-12.542,-12.524,-12.516,-12.516,-12.525,
--12.541,-12.563,-12.591,-12.623,-12.658,-12.695,-12.732,-12.768,-12.802,-12.833,-12.859,-12.879,-12.892,-12.897,-12.894,-12.881,
--12.859,-12.826,-12.782,-12.727,-12.661,-12.585,-12.498,-12.400,-12.294,-12.178,-12.054,-11.923,-11.785,-11.642,-11.494,-11.343,
--11.190,-11.035,-10.880,-10.726,-10.573,-10.423,-10.276,-10.133,-9.995,-9.863,-9.735,-9.614,-9.500,-9.391,-9.290,-9.194,
--9.105,-9.022,-8.945,-8.874,-8.808,-8.746,-8.689,-8.636,-8.586,-8.540,-8.496,-8.454,-8.414,-8.376,-8.339,-8.304,
--8.269,-8.236,-8.203,-8.172,-8.141,-8.111,-8.083,-8.056,-8.031,-8.008,-7.988,-7.970,-7.954,-7.942,-7.933,-7.928,
--7.926,-7.929,-7.935,-7.946,-7.960,-7.979,-8.002,-8.029,-8.059,-8.093,-8.130,-8.169,-8.211,-8.255,-8.301,-8.347,
--8.394,-8.441,-8.488,-8.533,-8.577,-8.620,-8.660,-8.697,-8.731,-8.762,-8.789,-8.813,-8.833,-8.848,-8.859,-8.867,
--8.870,-8.869,-8.864,-8.855,-8.843,-8.828,-8.809,-8.787,-8.763,-8.737,-8.709,-8.679,-8.647,-8.615,-8.581,-8.547,
--8.512,-8.478,-8.443,-8.409,-8.375,-8.341,-8.309,-8.277,-8.246,-8.216,-8.187,-8.159,-8.133,-8.108,-8.084,-8.062,
--8.041,-8.021,-8.004,-7.987,-7.973,-7.960,-7.949,-7.939,-7.932,-7.926,-7.922,-7.919,-7.919,-7.919,-7.922,-7.926,
--7.931,-7.938,-7.946,-7.954,-7.964,-7.973,-7.984,-7.994,-8.004,-8.014,-8.023,-8.031,-8.038,-8.043,-8.047,-8.049,
--8.049,-8.047,-8.043,-8.037,-8.028,-8.017,-8.004,-7.989,-7.972,-7.952,-7.932,-7.910,-7.886,-7.862,-7.838,-7.814,
--7.790,-7.767,-7.745,-7.724,-7.706,-7.690,-7.677,-7.667,-7.661,-7.658,-7.660,-7.665,-7.676,-7.691,-7.710,-7.735,
--7.764,-7.799,-7.838,-7.882,-7.930,-7.983,-8.041,-8.102,-8.168,-8.237,-8.310,-8.386,-8.465,-8.546,-8.631,-8.718,
--8.807,-8.898,-8.991,-9.085,-9.181,-9.279,-9.377,-9.477,-9.578,-9.681,-9.784,-9.888,-9.993,-10.098,-10.205,-10.312,
--10.420,-10.528,-10.637,-10.746,-10.856,-10.966,-11.076,-11.186,-11.296,-11.405,-11.515,-11.624,-11.732,-11.841,-11.948,-12.055,
--12.161,-12.266,-12.371,-12.474,-12.578,-12.680,-12.782,-12.884,-12.986,-13.087,-13.189,-13.291,-13.393,-13.497,-13.601,-13.707,
--13.814,-13.923,-14.034,-14.147,-14.263,-14.380,-14.501,-14.623,-14.749,-14.877,-15.008,-15.141,-15.276,-15.414,-15.553,-15.694,
--15.837,-15.981,-16.125,-16.270,-16.415,-16.560,-16.704,-16.847,-16.989,-17.129,-17.267,-17.403,-17.537,-17.668,-17.796,-17.922,
--18.045,-18.164,-18.281,-18.395,-18.507,-18.616,-18.723,-18.828,-18.931,-19.032,-19.132,-19.232,-19.331,-19.429,-19.528,-19.626,
--19.725,-19.825,-19.926,-20.027,-20.129,-20.233,-20.337,-20.443,-20.549,-20.657,-20.765,-20.873,-20.982,-21.091,-21.200,-21.309,
--21.417,-21.524,-21.630,-21.734,-21.838,-21.940,-22.040,-22.138,-22.235,-22.330,-22.424,-22.516,-22.607,-22.696,-22.785,-22.874,
--22.962,-23.050,-23.139,-23.229,-23.320,-23.414,-23.509,-23.607,-23.708,-23.812,-23.920,-24.031,-24.147,-24.267,-24.392,-24.521,
--24.654,-24.792,-24.935,-25.081,-25.232,-25.387,-25.545,-25.706,-25.871,-26.038,-26.208,-26.379,-26.552,-26.726,-26.901,-27.076,
--27.252,-27.427,-27.603,-27.777,-27.951,-28.124,-28.296,-28.466,-28.636,-28.804,-28.972,-29.138,-29.304,-29.468,-29.632,-29.795,
--29.958,-30.120,-30.282,-30.445,-30.607,-30.769,-30.931,-31.094,-31.257,-31.420,-31.583,-31.746,-31.910,-32.073,-32.235,-32.398,
--32.559,-32.720,-32.880,-33.038,-33.195,-33.349,-33.502,-33.652,-33.800,-33.944,-34.086,-34.225,-34.360,-34.491,-34.619,-34.743,
--34.863,-34.980,-35.092,-35.200,-35.304,-35.404,-35.500,-35.592,-35.680,-35.765,-35.845,-35.922,-35.995,-36.064,-36.130,-36.192,
--36.251,-36.306,-36.358,-36.407,-36.453,-36.495,-36.534,-36.571,-36.604,-36.635,-36.662,-36.687,-36.710,-36.730,-36.748,-36.763,
--36.777,-36.789,-36.800,-36.809,-36.817,-36.825,-36.832,-36.839,-36.845,-36.852,-36.860,-36.868,-36.878,-36.889,-36.901,-36.915,
--36.931,-36.949,-36.969,-36.991,-37.015,-37.041,-37.069,-37.099,-37.131,-37.164,-37.198,-37.233,-37.269,-37.305,-37.340,-37.376,
--37.410,-37.442,-37.473,-37.502,-37.528,-37.550,-37.570,-37.586,-37.598,-37.605,-37.609,-37.608,-37.602,-37.592,-37.578,-37.560,
--37.538,-37.512,-37.482,-37.450,-37.416,-37.380,-37.342,-37.304,-37.266,-37.228,-37.192,-37.157,-37.125,-37.096,-37.070,-37.048,
--37.030,-37.016,-37.007,-37.004,-37.004,-37.010,-37.020,-37.034,-37.051,-37.071,-37.094,-37.118,-37.143,-37.166,-37.189,-37.208,
--37.224,-37.234,-37.237,-37.233,-37.220,-37.196,-37.162,-37.115,-37.054,-36.980,-36.892,-36.789,-36.670,-36.537,-36.389,-36.227,
--36.050,-35.862,-35.662,-35.451,-35.233,-35.008,-34.779,-34.547,-34.316,-34.088,-33.865,-33.650,-33.447,-33.257,-33.084,-32.930,
--32.797,-32.689,-32.607,-32.553,-32.529,-32.537,-32.577,-32.650,-32.756,-32.896,-33.069,-33.275,-33.511,-33.777,-34.071,-34.389,
--34.731,-35.091,-35.469,-35.859,-36.259,-36.664,-37.071,-37.476,-37.875,-38.265,-38.640,-38.999,-39.338,-39.653,-39.943,-40.204,
--40.435,-40.635,-40.802,-40.935,-41.035,-41.102,-41.137,-41.141,-41.115,-41.062,-40.984,-40.884,-40.765,-40.631,-40.484,-40.330,
--40.171,-40.011,-39.855,-39.705,-39.566,-39.441,-39.334,-39.246,-39.180,-39.140,-39.125,-39.139,-39.181,-39.253,-39.353,-39.483,
--39.640,-39.825,-40.034,-40.266,-40.519,-40.790,-41.077,-41.375,-41.682,-41.994,-42.309,-42.623,-42.932,-43.233,-43.523,-43.800,
--44.061,-44.303,-44.524,-44.723,-44.898,-45.048,-45.172,-45.271,-45.344,-45.391,-45.414,-45.413,-45.390,-45.345,-45.282,-45.201,
--45.106,-44.997,-44.879,-44.752,-44.620,-44.484,-44.347,-44.211,-44.079,-43.951,-43.830,-43.718,-43.614,-43.521,-43.440,-43.370,
--43.312,-43.267,-43.234,-43.212,-43.202,-43.202,-43.211,-43.230,-43.255,-43.287,-43.324,-43.365,-43.407,-43.451,-43.494,-43.536,
--43.574,-43.609,-43.640,-43.664,-43.682,-43.694,-43.697,-43.694,-43.683,-43.664,-43.638,-43.605,-43.565,-43.520,-43.469,-43.415,
--43.356,-43.296,-43.233,-43.171,-43.109,-43.049,-42.992,-42.939,-42.890,-42.848,-42.812,-42.783,-42.762,-42.750,-42.747,-42.753,
--42.768,-42.793,-42.827,-42.871,-42.923,-42.984,-43.052,-43.128,-43.210,-43.298,-43.390,-43.486,-43.585,-43.685,-43.786,-43.886,
--43.985,-44.081,-44.172,-44.259,-44.340,-44.415,-44.481,-44.539,-44.588,-44.627,-44.656,-44.675,-44.682,-44.678,-44.663,-44.637,
--44.600,-44.552,-44.493,-44.423,-44.344,-44.256,-44.158,-44.053,-43.940,-43.820,-43.695,-43.564,-43.429,-43.290,-43.149,-43.005,
--42.861,-42.716,-42.571,-42.427,-42.284,-42.144,-42.006,-41.872,-41.741,-41.614,-41.492,-41.374,-41.261,-41.154,-41.051,-40.954,
--40.862,-40.775,-40.693,-40.616,-40.543,-40.476,-40.412,-40.353,-40.297,-40.245,-40.195,-40.149,-40.104,-40.061,-40.020,-39.979,
--39.940,-39.900,-39.861,-39.821,-39.780,-39.738,-39.695,-39.651,-39.605,-39.557,-39.508,-39.457,-39.404,-39.349,-39.293,-39.235,
--39.177,-39.117,-39.057,-38.997,-38.936,-38.877,-38.818,-38.761,-38.705,-38.652,-38.601,-38.554,-38.510,-38.470,-38.434,-38.402,
--38.375,-38.353,-38.335,-38.322,-38.314,-38.310,-38.310,-38.314,-38.322,-38.333,-38.346,-38.362,-38.379,-38.396,-38.414,-38.431,
--38.446,-38.459,-38.469,-38.475,-38.477,-38.474,-38.465,-38.451,-38.429,-38.401,-38.365,-38.322,-38.271,-38.213,-38.147,-38.074,
--37.994,-37.907,-37.815,-37.716,-37.613,-37.506,-37.395,-37.282,-37.167,-37.050,-36.934,-36.817,-36.703,-36.590,-36.480,-36.374,
--36.271,-36.173,-36.080,-35.991,-35.908,-35.830,-35.758,-35.691,-35.629,-35.572,-35.518,-35.469,-35.423,-35.380,-35.339,-35.299,
--35.260,-35.221,-35.181,-35.140,-35.096,-35.050,-35.000,-34.946,-34.887,-34.824,-34.755,-34.681,-34.602,-34.516,-34.425,-34.328,
--34.226,-34.119,-34.007,-33.890,-33.769,-33.645,-33.518,-33.388,-33.256,-33.123,-32.988,-32.854,-32.719,-32.586,-32.453,-32.321,
--32.191,-32.063,-31.937,-31.813,-31.692,-31.572,-31.454,-31.338,-31.224,-31.112,-31.000,-30.889,-30.779,-30.669,-30.559,-30.448,
--30.337,-30.224,-30.110,-29.995,-29.878,-29.759,-29.639,-29.517,-29.393,-29.269,-29.143,-29.016,-28.889,-28.761,-28.635,-28.509,
--28.385,-28.263,-28.145,-28.029,-27.918,-27.811,-27.710,-27.615,-27.526,-27.444,-27.369,-27.302,-27.244,-27.193,-27.151,-27.118,
--27.093,-27.077,-27.070,-27.071,-27.080,-27.097,-27.122,-27.154,-27.193,-27.239,-27.291,-27.348,-27.410,-27.477,-27.548,-27.623,
--27.701,-27.782,-27.866,-27.951,-28.039,-28.127,-28.217,-28.307,-28.398,-28.489,-28.579,-28.670,-28.760,-28.849,-28.937,-29.024,
--29.109,-29.193,-29.274,-29.354,-29.431,-29.506,-29.578,-29.646,-29.711,-29.773,-29.830,-29.883,-29.932,-29.976,-30.015,-30.048,
--30.077,-30.100,-30.117,-30.129,-30.135,-30.135,-30.130,-30.119,-30.102,-30.080,-30.053,-30.020,-29.983,-29.941,-29.895,-29.844,
--29.789,-29.731,-29.669,-29.603,-29.534,-29.462,-29.386,-29.307,-29.225,-29.140,-29.051,-28.958,-28.862,-28.761,-28.657,-28.547,
--28.433,-28.313,-28.188,-28.057,-27.920,-27.776,-27.627,-27.470,-27.308,-27.139,-26.963,-26.782,-26.596,-26.404,-26.208,-26.009,
--25.807,-25.604,-25.399,-25.196,-24.995,-24.797,-24.604,-24.417,-24.238,-24.069,-23.910,-23.763,-23.631,-23.513,-23.411,-23.327,
--23.261,-23.215,-23.187,-23.181,-23.194,-23.228,-23.282,-23.355,-23.448,-23.559,-23.688,-23.832,-23.991,-24.163,-24.345,-24.537,
--24.736,-24.941,-25.148,-25.356,-25.562,-25.765,-25.962,-26.152,-26.332,-26.500,-26.655,-26.796,-26.921,-27.029,-27.120,-27.192,
--27.246,-27.280,-27.296,-27.294,-27.274,-27.237,-27.184,-27.116,-27.035,-26.941,-26.837,-26.724,-26.604,-26.479,-26.350,-26.220,
--26.089,-25.960,-25.835,-25.714,-25.599,-25.492,-25.392,-25.302,-25.222,-25.151,-25.092,-25.042,-25.003,-24.973,-24.953,-24.941,
--24.937,-24.939,-24.947,-24.958,-24.972,-24.987,-25.002,-25.014,-25.022,-25.025,-25.022,-25.009,-24.987,-24.954,-24.909,-24.850,
--24.778,-24.690,-24.587,-24.468,-24.333,-24.182,-24.016,-23.834,-23.637,-23.427,-23.204,-22.968,-22.723,-22.468,-22.205,-21.936,
--21.663,-21.387,-21.111,-20.835,-20.563,-20.295,-20.034,-19.781,-19.537,-19.305,-19.086,-18.882,-18.692,-18.519,-18.364,-18.226,
--18.108,-18.008,-17.927,-17.866,-17.823,-17.799,-17.794,-17.805,-17.834,-17.878,-17.936,-18.008,-18.092,-18.187,-18.290,-18.401,
--18.518,-18.640,-18.764,-18.890,-19.015,-19.138,-19.258,-19.374,-19.484,-19.587,-19.683,-19.769,-19.846,-19.913,-19.970,-20.016,
--20.051,-20.074,-20.087,-20.090,-20.082,-20.064,-20.037,-20.002,-19.959,-19.909,-19.852,-19.791,-19.725,-19.656,-19.584,-19.511,
--19.436,-19.362,-19.288,-19.215,-19.144,-19.076,-19.010,-18.946,-18.886,-18.828,-18.774,-18.723,-18.674,-18.627,-18.582,-18.539,
--18.497,-18.456,-18.414,-18.372,-18.328,-18.283,-18.236,-18.185,-18.132,-18.075,-18.014,-17.949,-17.879,-17.805,-17.727,-17.644,
--17.557,-17.466,-17.371,-17.272,-17.171,-17.067,-16.962,-16.856,-16.748,-16.642,-16.536,-16.431,-16.329,-16.229,-16.133,-16.041,
--15.953,-15.870,-15.793,-15.721,-15.655,-15.596,-15.542,-15.495,-15.454,-15.420,-15.391,-15.368,-15.350,-15.337,-15.329,-15.325,
--15.324,-15.327,-15.333,-15.341,-15.351,-15.362,-15.374,-15.386,-15.399,-15.411,-15.422,-15.432,-15.442,-15.449,-15.456,-15.460,
--15.463,-15.464,-15.463,-15.460,-15.456,-15.450,-15.442,-15.433,-15.423,-15.412,-15.400,-15.387,-15.374,-15.361,-15.347,-15.333,
--15.320,-15.307,-15.295,-15.284,-15.274,-15.265,-15.257,-15.251,-15.247,-15.245,-15.244,-15.360,-15.338,-15.319,-15.305,-15.294,
--15.289,-15.289,-15.293,-15.302,-15.317,-15.336,-15.360,-15.389,-15.421,-15.458,-15.498,-15.540,-15.585,-15.632,-15.679,-15.726,
--15.773,-15.819,-15.862,-15.902,-15.939,-15.970,-15.997,-16.016,-16.029,-16.035,-16.032,-16.021,-16.000,-15.971,-15.931,-15.882,
--15.823,-15.755,-15.677,-15.591,-15.495,-15.392,-15.281,-15.164,-15.041,-14.914,-14.783,-14.648,-14.513,-14.376,-14.241,-14.107,
--13.976,-13.848,-13.726,-13.609,-13.500,-13.397,-13.303,-13.218,-13.142,-13.075,-13.018,-12.971,-12.934,-12.906,-12.887,-12.877,
--12.875,-12.881,-12.893,-12.911,-12.934,-12.960,-12.990,-13.020,-13.052,-13.082,-13.111,-13.137,-13.159,-13.177,-13.188,-13.193,
--13.191,-13.181,-13.163,-13.135,-13.099,-13.054,-13.000,-12.936,-12.864,-12.783,-12.694,-12.597,-12.493,-12.383,-12.267,-12.147,
--12.022,-11.895,-11.765,-11.633,-11.501,-11.369,-11.238,-11.108,-10.981,-10.856,-10.735,-10.618,-10.505,-10.397,-10.293,-10.194,
--10.101,-10.012,-9.928,-9.848,-9.774,-9.703,-9.637,-9.575,-9.515,-9.459,-9.406,-9.355,-9.306,-9.259,-9.214,-9.169,
--9.126,-9.084,-9.042,-9.002,-8.962,-8.922,-8.884,-8.846,-8.809,-8.774,-8.740,-8.708,-8.677,-8.649,-8.624,-8.601,
--8.581,-8.565,-8.552,-8.543,-8.538,-8.537,-8.540,-8.547,-8.558,-8.574,-8.594,-8.617,-8.645,-8.676,-8.710,-8.747,
--8.787,-8.829,-8.873,-8.918,-8.964,-9.011,-9.058,-9.104,-9.150,-9.194,-9.237,-9.277,-9.316,-9.351,-9.384,-9.413,
--9.439,-9.462,-9.481,-9.496,-9.507,-9.514,-9.518,-9.518,-9.515,-9.508,-9.498,-9.485,-9.470,-9.452,-9.432,-9.410,
--9.386,-9.361,-9.335,-9.308,-9.281,-9.253,-9.226,-9.199,-9.173,-9.147,-9.123,-9.100,-9.078,-9.058,-9.039,-9.022,
--9.007,-8.994,-8.983,-8.974,-8.966,-8.961,-8.958,-8.956,-8.957,-8.959,-8.962,-8.968,-8.974,-8.982,-8.991,-9.001,
--9.012,-9.023,-9.035,-9.047,-9.060,-9.072,-9.084,-9.096,-9.107,-9.118,-9.127,-9.136,-9.144,-9.150,-9.156,-9.159,
--9.162,-9.163,-9.163,-9.161,-9.158,-9.154,-9.148,-9.141,-9.133,-9.124,-9.115,-9.105,-9.094,-9.083,-9.073,-9.062,
--9.052,-9.043,-9.035,-9.028,-9.022,-9.018,-9.016,-9.016,-9.018,-9.022,-9.030,-9.040,-9.053,-9.069,-9.088,-9.110,
--9.136,-9.165,-9.197,-9.233,-9.272,-9.315,-9.361,-9.411,-9.463,-9.519,-9.578,-9.641,-9.706,-9.774,-9.845,-9.919,
--9.996,-10.075,-10.157,-10.241,-10.327,-10.416,-10.507,-10.599,-10.694,-10.791,-10.889,-10.988,-11.089,-11.192,-11.295,-11.400,
--11.505,-11.611,-11.717,-11.824,-11.931,-12.039,-12.146,-12.253,-12.359,-12.466,-12.571,-12.676,-12.780,-12.883,-12.985,-13.087,
--13.187,-13.286,-13.385,-13.482,-13.579,-13.675,-13.771,-13.866,-13.961,-14.056,-14.151,-14.246,-14.342,-14.439,-14.537,-14.636,
--14.736,-14.838,-14.942,-15.048,-15.155,-15.266,-15.378,-15.493,-15.610,-15.729,-15.851,-15.975,-16.102,-16.230,-16.360,-16.491,
--16.624,-16.758,-16.893,-17.028,-17.164,-17.299,-17.434,-17.568,-17.701,-17.833,-17.963,-18.091,-18.217,-18.341,-18.462,-18.581,
--18.698,-18.811,-18.922,-19.030,-19.136,-19.239,-19.340,-19.438,-19.535,-19.629,-19.722,-19.814,-19.905,-19.994,-20.084,-20.172,
--20.261,-20.350,-20.439,-20.529,-20.619,-20.710,-20.802,-20.895,-20.989,-21.084,-21.180,-21.276,-21.374,-21.472,-21.571,-21.670,
--21.770,-21.870,-21.970,-22.070,-22.169,-22.268,-22.367,-22.465,-22.562,-22.658,-22.754,-22.849,-22.943,-23.036,-23.129,-23.221,
--23.313,-23.405,-23.497,-23.589,-23.681,-23.775,-23.869,-23.964,-24.062,-24.161,-24.262,-24.365,-24.471,-24.580,-24.691,-24.806,
--24.924,-25.046,-25.170,-25.299,-25.430,-25.566,-25.704,-25.846,-25.990,-26.138,-26.289,-26.442,-26.597,-26.755,-26.914,-27.075,
--27.238,-27.402,-27.566,-27.731,-27.897,-28.062,-28.228,-28.393,-28.558,-28.722,-28.886,-29.048,-29.210,-29.371,-29.530,-29.689,
--29.846,-30.002,-30.156,-30.310,-30.462,-30.612,-30.762,-30.910,-31.057,-31.203,-31.348,-31.491,-31.633,-31.775,-31.914,-32.053,
--32.191,-32.327,-32.462,-32.595,-32.728,-32.858,-32.988,-33.115,-33.242,-33.366,-33.489,-33.610,-33.729,-33.846,-33.961,-34.074,
--34.185,-34.294,-34.400,-34.504,-34.605,-34.704,-34.800,-34.893,-34.984,-35.072,-35.156,-35.238,-35.316,-35.392,-35.464,-35.532,
--35.597,-35.659,-35.717,-35.772,-35.823,-35.871,-35.914,-35.955,-35.992,-36.025,-36.055,-36.082,-36.106,-36.127,-36.145,-36.161,
--36.174,-36.186,-36.195,-36.204,-36.211,-36.217,-36.223,-36.229,-36.235,-36.241,-36.249,-36.257,-36.267,-36.279,-36.292,-36.308,
--36.326,-36.346,-36.369,-36.394,-36.422,-36.452,-36.485,-36.519,-36.555,-36.593,-36.633,-36.673,-36.713,-36.754,-36.794,-36.834,
--36.872,-36.908,-36.942,-36.974,-37.002,-37.027,-37.047,-37.064,-37.076,-37.083,-37.086,-37.083,-37.076,-37.063,-37.046,-37.025,
--36.999,-36.970,-36.937,-36.901,-36.864,-36.825,-36.785,-36.744,-36.705,-36.667,-36.630,-36.597,-36.567,-36.541,-36.520,-36.504,
--36.493,-36.489,-36.491,-36.499,-36.514,-36.535,-36.561,-36.594,-36.632,-36.674,-36.720,-36.769,-36.820,-36.871,-36.923,-36.973,
--37.020,-37.063,-37.101,-37.132,-37.155,-37.169,-37.173,-37.166,-37.146,-37.114,-37.067,-37.007,-36.932,-36.843,-36.739,-36.622,
--36.491,-36.347,-36.192,-36.027,-35.853,-35.671,-35.485,-35.294,-35.103,-34.912,-34.725,-34.544,-34.370,-34.207,-34.057,-33.922,
--33.805,-33.706,-33.629,-33.575,-33.545,-33.540,-33.562,-33.610,-33.686,-33.789,-33.918,-34.074,-34.254,-34.457,-34.683,-34.928,
--35.190,-35.467,-35.757,-36.056,-36.361,-36.668,-36.976,-37.280,-37.577,-37.864,-38.138,-38.395,-38.634,-38.852,-39.046,-39.215,
--39.357,-39.471,-39.556,-39.611,-39.637,-39.634,-39.602,-39.543,-39.459,-39.350,-39.220,-39.071,-38.905,-38.726,-38.537,-38.342,
--38.143,-37.943,-37.748,-37.560,-37.381,-37.217,-37.068,-36.939,-36.832,-36.749,-36.691,-36.660,-36.658,-36.685,-36.741,-36.827,
--36.942,-37.084,-37.253,-37.448,-37.666,-37.905,-38.163,-38.437,-38.724,-39.022,-39.327,-39.636,-39.946,-40.254,-40.557,-40.852,
--41.136,-41.407,-41.662,-41.899,-42.118,-42.315,-42.490,-42.643,-42.772,-42.877,-42.959,-43.017,-43.053,-43.068,-43.063,-43.039,
--42.998,-42.942,-42.872,-42.792,-42.702,-42.606,-42.505,-42.402,-42.298,-42.197,-42.098,-42.005,-41.919,-41.841,-41.773,-41.715,
--41.668,-41.632,-41.609,-41.597,-41.598,-41.610,-41.633,-41.666,-41.709,-41.760,-41.819,-41.883,-41.952,-42.025,-42.099,-42.175,
--42.249,-42.322,-42.391,-42.456,-42.516,-42.569,-42.615,-42.653,-42.684,-42.705,-42.718,-42.722,-42.718,-42.705,-42.685,-42.657,
--42.622,-42.582,-42.537,-42.489,-42.437,-42.384,-42.330,-42.277,-42.226,-42.178,-42.134,-42.094,-42.061,-42.034,-42.015,-42.004,
--42.002,-42.009,-42.025,-42.051,-42.086,-42.130,-42.183,-42.245,-42.315,-42.392,-42.476,-42.566,-42.660,-42.758,-42.858,-42.961,
--43.063,-43.165,-43.265,-43.362,-43.454,-43.542,-43.623,-43.696,-43.762,-43.819,-43.866,-43.903,-43.929,-43.944,-43.948,-43.941,
--43.922,-43.892,-43.851,-43.799,-43.736,-43.664,-43.582,-43.491,-43.393,-43.287,-43.175,-43.058,-42.935,-42.809,-42.680,-42.549,
--42.417,-42.284,-42.151,-42.020,-41.891,-41.763,-41.639,-41.518,-41.401,-41.289,-41.180,-41.076,-40.977,-40.883,-40.793,-40.708,
--40.628,-40.551,-40.479,-40.410,-40.345,-40.282,-40.222,-40.164,-40.108,-40.053,-39.999,-39.945,-39.892,-39.838,-39.783,-39.728,
--39.671,-39.613,-39.553,-39.492,-39.429,-39.364,-39.298,-39.230,-39.161,-39.090,-39.019,-38.947,-38.874,-38.802,-38.731,-38.660,
--38.591,-38.523,-38.458,-38.395,-38.336,-38.280,-38.228,-38.180,-38.137,-38.098,-38.065,-38.037,-38.014,-37.996,-37.983,-37.975,
--37.972,-37.974,-37.980,-37.989,-38.002,-38.017,-38.035,-38.054,-38.074,-38.093,-38.112,-38.129,-38.144,-38.156,-38.164,-38.168,
--38.166,-38.158,-38.144,-38.122,-38.093,-38.056,-38.011,-37.957,-37.895,-37.825,-37.746,-37.659,-37.564,-37.462,-37.354,-37.239,
--37.118,-36.993,-36.864,-36.732,-36.599,-36.464,-36.329,-36.196,-36.064,-35.936,-35.811,-35.691,-35.577,-35.470,-35.369,-35.276,
--35.191,-35.115,-35.047,-34.988,-34.938,-34.896,-34.862,-34.837,-34.819,-34.808,-34.803,-34.803,-34.808,-34.816,-34.827,-34.839,
--34.851,-34.863,-34.873,-34.880,-34.884,-34.882,-34.875,-34.861,-34.840,-34.811,-34.773,-34.727,-34.671,-34.605,-34.530,-34.445,
--34.351,-34.247,-34.135,-34.014,-33.885,-33.749,-33.606,-33.458,-33.304,-33.147,-32.986,-32.822,-32.657,-32.492,-32.326,-32.161,
--31.998,-31.837,-31.679,-31.525,-31.374,-31.227,-31.085,-30.948,-30.816,-30.688,-30.566,-30.448,-30.334,-30.225,-30.119,-30.017,
--29.919,-29.822,-29.729,-29.637,-29.546,-29.456,-29.366,-29.277,-29.187,-29.097,-29.006,-28.914,-28.820,-28.726,-28.630,-28.532,
--28.434,-28.334,-28.234,-28.133,-28.033,-27.932,-27.833,-27.734,-27.638,-27.543,-27.452,-27.364,-27.280,-27.201,-27.126,-27.058,
--26.996,-26.940,-26.891,-26.850,-26.817,-26.792,-26.776,-26.768,-26.768,-26.778,-26.796,-26.824,-26.859,-26.904,-26.957,-27.017,
--27.086,-27.162,-27.245,-27.334,-27.429,-27.530,-27.635,-27.745,-27.859,-27.975,-28.093,-28.214,-28.335,-28.456,-28.577,-28.696,
--28.814,-28.929,-29.041,-29.149,-29.253,-29.352,-29.445,-29.532,-29.613,-29.687,-29.754,-29.813,-29.865,-29.909,-29.944,-29.972,
--29.992,-30.004,-30.008,-30.004,-29.994,-29.975,-29.951,-29.919,-29.882,-29.840,-29.792,-29.739,-29.682,-29.622,-29.558,-29.491,
--29.422,-29.350,-29.277,-29.202,-29.126,-29.049,-28.970,-28.891,-28.810,-28.729,-28.645,-28.561,-28.474,-28.385,-28.294,-28.200,
--28.102,-28.001,-27.896,-27.785,-27.670,-27.549,-27.423,-27.290,-27.151,-27.006,-26.855,-26.697,-26.533,-26.363,-26.187,-26.007,
--25.822,-25.634,-25.443,-25.251,-25.058,-24.866,-24.675,-24.488,-24.306,-24.129,-23.961,-23.801,-23.651,-23.513,-23.388,-23.278,
--23.183,-23.104,-23.042,-22.999,-22.973,-22.967,-22.980,-23.012,-23.062,-23.131,-23.218,-23.322,-23.441,-23.576,-23.723,-23.883,
--24.052,-24.230,-24.415,-24.604,-24.796,-24.988,-25.179,-25.366,-25.548,-25.723,-25.889,-26.044,-26.187,-26.316,-26.430,-26.529,
--26.612,-26.677,-26.726,-26.756,-26.770,-26.766,-26.747,-26.711,-26.661,-26.597,-26.521,-26.435,-26.338,-26.234,-26.124,-26.010,
--25.893,-25.775,-25.658,-25.544,-25.434,-25.329,-25.230,-25.140,-25.059,-24.987,-24.925,-24.875,-24.835,-24.806,-24.788,-24.780,
--24.782,-24.792,-24.810,-24.835,-24.866,-24.900,-24.936,-24.973,-25.009,-25.042,-25.071,-25.094,-25.108,-25.113,-25.106,-25.087,
--25.054,-25.006,-24.941,-24.860,-24.761,-24.644,-24.509,-24.355,-24.184,-23.995,-23.789,-23.567,-23.330,-23.079,-22.817,-22.543,
--22.261,-21.971,-21.677,-21.379,-21.080,-20.782,-20.488,-20.198,-19.917,-19.644,-19.382,-19.134,-18.900,-18.682,-18.481,-18.299,
--18.136,-17.993,-17.871,-17.770,-17.691,-17.632,-17.594,-17.576,-17.578,-17.598,-17.636,-17.690,-17.759,-17.842,-17.936,-18.040,
--18.153,-18.272,-18.396,-18.524,-18.652,-18.780,-18.906,-19.028,-19.145,-19.256,-19.359,-19.452,-19.536,-19.610,-19.672,-19.722,
--19.761,-19.787,-19.802,-19.804,-19.795,-19.775,-19.744,-19.703,-19.654,-19.596,-19.532,-19.461,-19.385,-19.306,-19.223,-19.138,
--19.053,-18.968,-18.884,-18.801,-18.721,-18.645,-18.572,-18.504,-18.440,-18.381,-18.327,-18.278,-18.233,-18.194,-18.158,-18.127,
--18.099,-18.074,-18.051,-18.031,-18.011,-17.991,-17.972,-17.951,-17.928,-17.904,-17.876,-17.845,-17.811,-17.772,-17.728,-17.680,
--17.626,-17.568,-17.505,-17.436,-17.363,-17.286,-17.205,-17.120,-17.031,-16.941,-16.848,-16.754,-16.659,-16.565,-16.471,-16.378,
--16.288,-16.200,-16.116,-16.036,-15.960,-15.889,-15.824,-15.764,-15.711,-15.663,-15.622,-15.588,-15.560,-15.539,-15.523,-15.514,
--15.511,-15.513,-15.520,-15.531,-15.547,-15.566,-15.588,-15.612,-15.639,-15.667,-15.695,-15.724,-15.752,-15.780,-15.806,-15.830,
--15.852,-15.871,-15.887,-15.899,-15.909,-15.914,-15.916,-15.913,-15.907,-15.897,-15.882,-15.865,-15.843,-15.819,-15.792,-15.762,
--15.729,-15.695,-15.660,-15.624,-15.587,-15.550,-15.514,-15.479,-15.446,-15.415,-15.386,-15.360,-15.493,-15.464,-15.439,-15.418,
--15.402,-15.390,-15.383,-15.382,-15.386,-15.395,-15.409,-15.428,-15.452,-15.481,-15.514,-15.551,-15.590,-15.633,-15.678,-15.724,
--15.771,-15.817,-15.864,-15.908,-15.950,-15.989,-16.024,-16.055,-16.080,-16.100,-16.113,-16.119,-16.117,-16.108,-16.091,-16.065,
--16.031,-15.988,-15.937,-15.878,-15.811,-15.737,-15.655,-15.567,-15.473,-15.375,-15.271,-15.164,-15.055,-14.943,-14.831,-14.719,
--14.608,-14.498,-14.391,-14.288,-14.189,-14.095,-14.007,-13.925,-13.850,-13.782,-13.721,-13.668,-13.622,-13.584,-13.554,-13.531,
--13.515,-13.505,-13.502,-13.504,-13.510,-13.521,-13.535,-13.551,-13.569,-13.588,-13.607,-13.625,-13.641,-13.654,-13.664,-13.670,
--13.672,-13.668,-13.658,-13.642,-13.619,-13.589,-13.553,-13.509,-13.458,-13.400,-13.335,-13.264,-13.186,-13.103,-13.014,-12.921,
--12.823,-12.721,-12.616,-12.509,-12.400,-12.290,-12.179,-12.068,-11.958,-11.849,-11.741,-11.636,-11.533,-11.433,-11.336,-11.242,
--11.152,-11.065,-10.982,-10.903,-10.827,-10.755,-10.686,-10.620,-10.557,-10.497,-10.439,-10.383,-10.330,-10.278,-10.228,-10.178,
--10.130,-10.083,-10.036,-9.990,-9.944,-9.899,-9.854,-9.810,-9.765,-9.722,-9.679,-9.637,-9.596,-9.556,-9.518,-9.481,
--9.446,-9.413,-9.383,-9.356,-9.331,-9.310,-9.292,-9.278,-9.267,-9.260,-9.257,-9.258,-9.263,-9.272,-9.285,-9.302,
--9.322,-9.346,-9.373,-9.403,-9.435,-9.471,-9.508,-9.547,-9.587,-9.629,-9.671,-9.713,-9.755,-9.797,-9.838,-9.878,
--9.917,-9.954,-9.988,-10.021,-10.052,-10.079,-10.105,-10.127,-10.146,-10.163,-10.177,-10.188,-10.196,-10.202,-10.205,-10.206,
--10.204,-10.201,-10.195,-10.188,-10.180,-10.171,-10.160,-10.149,-10.137,-10.126,-10.114,-10.102,-10.091,-10.080,-10.070,-10.061,
--10.053,-10.046,-10.041,-10.037,-10.034,-10.032,-10.032,-10.034,-10.037,-10.041,-10.047,-10.054,-10.062,-10.071,-10.081,-10.092,
--10.104,-10.117,-10.130,-10.144,-10.158,-10.172,-10.186,-10.201,-10.215,-10.229,-10.242,-10.255,-10.268,-10.280,-10.292,-10.303,
--10.313,-10.323,-10.332,-10.340,-10.348,-10.355,-10.362,-10.368,-10.374,-10.380,-10.386,-10.391,-10.396,-10.402,-10.408,-10.414,
--10.421,-10.428,-10.436,-10.445,-10.455,-10.466,-10.478,-10.492,-10.507,-10.524,-10.542,-10.562,-10.584,-10.608,-10.634,-10.662,
--10.692,-10.724,-10.758,-10.795,-10.834,-10.876,-10.919,-10.966,-11.014,-11.066,-11.119,-11.175,-11.234,-11.295,-11.358,-11.424,
--11.492,-11.563,-11.636,-11.711,-11.788,-11.868,-11.950,-12.034,-12.119,-12.207,-12.296,-12.388,-12.480,-12.574,-12.669,-12.766,
--12.863,-12.961,-13.060,-13.160,-13.260,-13.360,-13.461,-13.561,-13.661,-13.762,-13.861,-13.960,-14.059,-14.157,-14.255,-14.351,
--14.448,-14.543,-14.638,-14.732,-14.825,-14.918,-15.010,-15.102,-15.194,-15.286,-15.378,-15.470,-15.563,-15.656,-15.750,-15.844,
--15.940,-16.037,-16.135,-16.234,-16.335,-16.437,-16.541,-16.647,-16.754,-16.863,-16.974,-17.086,-17.199,-17.314,-17.430,-17.547,
--17.665,-17.784,-17.903,-18.023,-18.142,-18.261,-18.380,-18.498,-18.616,-18.732,-18.847,-18.960,-19.072,-19.182,-19.290,-19.396,
--19.500,-19.602,-19.701,-19.799,-19.894,-19.988,-20.079,-20.169,-20.256,-20.343,-20.428,-20.512,-20.595,-20.677,-20.759,-20.840,
--20.921,-21.003,-21.085,-21.167,-21.250,-21.334,-21.418,-21.504,-21.591,-21.679,-21.769,-21.860,-21.952,-22.045,-22.139,-22.235,
--22.332,-22.429,-22.528,-22.627,-22.726,-22.826,-22.927,-23.027,-23.128,-23.228,-23.329,-23.429,-23.529,-23.628,-23.727,-23.826,
--23.924,-24.022,-24.120,-24.217,-24.314,-24.411,-24.509,-24.606,-24.704,-24.802,-24.901,-25.001,-25.102,-25.205,-25.309,-25.414,
--25.521,-25.630,-25.741,-25.854,-25.969,-26.087,-26.207,-26.329,-26.454,-26.581,-26.710,-26.842,-26.976,-27.113,-27.251,-27.391,
--27.533,-27.677,-27.822,-27.968,-28.115,-28.263,-28.412,-28.562,-28.711,-28.861,-29.011,-29.160,-29.309,-29.457,-29.604,-29.750,
--29.896,-30.040,-30.182,-30.323,-30.463,-30.601,-30.737,-30.871,-31.004,-31.134,-31.263,-31.390,-31.515,-31.639,-31.760,-31.880,
--31.997,-32.113,-32.228,-32.340,-32.451,-32.561,-32.668,-32.774,-32.879,-32.982,-33.084,-33.184,-33.283,-33.380,-33.475,-33.570,
--33.662,-33.753,-33.843,-33.931,-34.017,-34.101,-34.183,-34.263,-34.342,-34.418,-34.492,-34.563,-34.632,-34.698,-34.762,-34.823,
--34.881,-34.936,-34.988,-35.038,-35.084,-35.127,-35.167,-35.204,-35.238,-35.269,-35.297,-35.323,-35.346,-35.366,-35.385,-35.401,
--35.416,-35.430,-35.442,-35.453,-35.464,-35.474,-35.485,-35.496,-35.507,-35.520,-35.533,-35.548,-35.565,-35.584,-35.605,-35.629,
--35.654,-35.683,-35.714,-35.747,-35.783,-35.821,-35.862,-35.905,-35.949,-35.995,-36.042,-36.090,-36.139,-36.187,-36.235,-36.283,
--36.329,-36.373,-36.415,-36.455,-36.492,-36.525,-36.554,-36.580,-36.601,-36.617,-36.629,-36.637,-36.639,-36.637,-36.630,-36.619,
--36.604,-36.586,-36.563,-36.538,-36.511,-36.482,-36.452,-36.421,-36.390,-36.360,-36.332,-36.305,-36.282,-36.262,-36.245,-36.234,
--36.227,-36.226,-36.230,-36.240,-36.257,-36.279,-36.307,-36.342,-36.381,-36.426,-36.476,-36.529,-36.586,-36.646,-36.707,-36.769,
--36.832,-36.893,-36.952,-37.008,-37.060,-37.107,-37.148,-37.182,-37.208,-37.226,-37.235,-37.234,-37.223,-37.203,-37.172,-37.131,
--37.079,-37.018,-36.949,-36.870,-36.784,-36.692,-36.594,-36.491,-36.386,-36.279,-36.172,-36.066,-35.963,-35.864,-35.772,-35.687,
--35.611,-35.544,-35.490,-35.448,-35.419,-35.404,-35.404,-35.419,-35.449,-35.495,-35.555,-35.630,-35.719,-35.821,-35.934,-36.057,
--36.190,-36.330,-36.475,-36.623,-36.773,-36.923,-37.070,-37.212,-37.347,-37.473,-37.588,-37.691,-37.779,-37.851,-37.905,-37.941,
--37.958,-37.954,-37.930,-37.885,-37.820,-37.735,-37.631,-37.508,-37.369,-37.214,-37.045,-36.864,-36.673,-36.475,-36.272,-36.066,
--35.861,-35.657,-35.460,-35.270,-35.090,-34.923,-34.771,-34.636,-34.520,-34.425,-34.352,-34.302,-34.276,-34.274,-34.298,-34.347,
--34.420,-34.518,-34.639,-34.782,-34.946,-35.129,-35.330,-35.546,-35.775,-36.015,-36.263,-36.517,-36.775,-37.034,-37.291,-37.545,
--37.793,-38.032,-38.261,-38.479,-38.682,-38.871,-39.043,-39.199,-39.336,-39.455,-39.556,-39.639,-39.704,-39.751,-39.782,-39.797,
--39.797,-39.784,-39.760,-39.726,-39.683,-39.634,-39.580,-39.523,-39.464,-39.407,-39.351,-39.299,-39.252,-39.212,-39.179,-39.155,
--39.141,-39.137,-39.144,-39.163,-39.192,-39.233,-39.285,-39.347,-39.420,-39.502,-39.592,-39.690,-39.795,-39.905,-40.020,-40.137,
--40.257,-40.377,-40.496,-40.614,-40.728,-40.839,-40.945,-41.045,-41.138,-41.225,-41.303,-41.374,-41.436,-41.490,-41.536,-41.573,
--41.603,-41.625,-41.640,-41.648,-41.651,-41.649,-41.642,-41.633,-41.621,-41.607,-41.593,-41.580,-41.567,-41.556,-41.549,-41.544,
--41.544,-41.549,-41.558,-41.573,-41.594,-41.620,-41.652,-41.689,-41.733,-41.781,-41.834,-41.891,-41.952,-42.017,-42.083,-42.152,
--42.221,-42.290,-42.358,-42.425,-42.489,-42.550,-42.606,-42.658,-42.705,-42.745,-42.779,-42.805,-42.824,-42.834,-42.837,-42.831,
--42.817,-42.795,-42.764,-42.725,-42.679,-42.625,-42.564,-42.497,-42.424,-42.345,-42.262,-42.175,-42.084,-41.990,-41.894,-41.797,
--41.699,-41.600,-41.502,-41.405,-41.308,-41.214,-41.121,-41.031,-40.943,-40.857,-40.775,-40.695,-40.617,-40.542,-40.470,-40.400,
--40.331,-40.264,-40.199,-40.135,-40.071,-40.007,-39.943,-39.879,-39.814,-39.748,-39.680,-39.610,-39.539,-39.466,-39.390,-39.312,
--39.232,-39.150,-39.065,-38.979,-38.891,-38.802,-38.712,-38.622,-38.531,-38.441,-38.352,-38.264,-38.178,-38.095,-38.015,-37.939,
--37.867,-37.799,-37.737,-37.681,-37.631,-37.587,-37.550,-37.520,-37.496,-37.479,-37.470,-37.467,-37.470,-37.479,-37.494,-37.514,
--37.538,-37.566,-37.598,-37.631,-37.666,-37.701,-37.735,-37.768,-37.799,-37.826,-37.848,-37.865,-37.875,-37.878,-37.873,-37.860,
--37.836,-37.803,-37.759,-37.704,-37.639,-37.562,-37.473,-37.374,-37.264,-37.144,-37.014,-36.875,-36.728,-36.573,-36.412,-36.245,
--36.074,-35.900,-35.725,-35.549,-35.374,-35.201,-35.033,-34.869,-34.711,-34.561,-34.419,-34.287,-34.165,-34.055,-33.957,-33.871,
--33.799,-33.740,-33.694,-33.661,-33.642,-33.635,-33.641,-33.658,-33.686,-33.724,-33.771,-33.825,-33.885,-33.950,-34.019,-34.090,
--34.161,-34.232,-34.300,-34.364,-34.423,-34.475,-34.519,-34.553,-34.578,-34.591,-34.592,-34.580,-34.555,-34.515,-34.462,-34.394,
--34.313,-34.217,-34.108,-33.985,-33.850,-33.704,-33.546,-33.379,-33.203,-33.020,-32.830,-32.635,-32.437,-32.235,-32.033,-31.830,
--31.629,-31.431,-31.235,-31.045,-30.860,-30.682,-30.510,-30.347,-30.191,-30.045,-29.907,-29.779,-29.660,-29.549,-29.448,-29.355,
--29.270,-29.192,-29.122,-29.057,-28.999,-28.945,-28.894,-28.847,-28.803,-28.759,-28.717,-28.674,-28.630,-28.584,-28.537,-28.486,
--28.432,-28.375,-28.313,-28.247,-28.177,-28.102,-28.023,-27.940,-27.853,-27.763,-27.669,-27.573,-27.474,-27.375,-27.275,-27.175,
--27.076,-26.979,-26.884,-26.793,-26.706,-26.625,-26.549,-26.480,-26.419,-26.366,-26.322,-26.287,-26.262,-26.248,-26.244,-26.251,
--26.269,-26.298,-26.338,-26.388,-26.450,-26.522,-26.604,-26.695,-26.795,-26.903,-27.018,-27.140,-27.268,-27.400,-27.537,-27.676,
--27.818,-27.960,-28.102,-28.243,-28.382,-28.518,-28.650,-28.777,-28.899,-29.014,-29.122,-29.223,-29.315,-29.398,-29.472,-29.537,
--29.592,-29.637,-29.672,-29.697,-29.713,-29.719,-29.715,-29.702,-29.681,-29.651,-29.613,-29.568,-29.516,-29.458,-29.393,-29.323,
--29.249,-29.170,-29.087,-29.000,-28.911,-28.818,-28.723,-28.626,-28.527,-28.426,-28.322,-28.217,-28.110,-28.001,-27.890,-27.776,
--27.659,-27.540,-27.418,-27.292,-27.163,-27.030,-26.892,-26.751,-26.605,-26.455,-26.300,-26.141,-25.977,-25.810,-25.638,-25.463,
--25.286,-25.105,-24.924,-24.741,-24.557,-24.375,-24.194,-24.016,-23.842,-23.673,-23.509,-23.353,-23.206,-23.067,-22.939,-22.823,
--22.719,-22.628,-22.552,-22.490,-22.443,-22.412,-22.397,-22.399,-22.416,-22.449,-22.498,-22.561,-22.639,-22.730,-22.834,-22.949,
--23.074,-23.208,-23.350,-23.497,-23.649,-23.804,-23.959,-24.114,-24.267,-24.417,-24.561,-24.698,-24.828,-24.949,-25.059,-25.158,
--25.245,-25.320,-25.382,-25.430,-25.465,-25.487,-25.496,-25.493,-25.477,-25.451,-25.415,-25.369,-25.315,-25.255,-25.190,-25.121,
--25.049,-24.976,-24.904,-24.833,-24.766,-24.704,-24.647,-24.596,-24.554,-24.520,-24.495,-24.480,-24.475,-24.480,-24.494,-24.519,
--24.553,-24.595,-24.645,-24.702,-24.765,-24.832,-24.902,-24.974,-25.045,-25.115,-25.181,-25.242,-25.296,-25.341,-25.376,-25.399,
--25.409,-25.404,-25.382,-25.344,-25.287,-25.212,-25.117,-25.003,-24.869,-24.715,-24.542,-24.349,-24.139,-23.911,-23.666,-23.407,
--23.135,-22.850,-22.556,-22.253,-21.944,-21.630,-21.315,-20.999,-20.686,-20.376,-20.073,-19.778,-19.492,-19.219,-18.959,-18.714,
--18.485,-18.274,-18.081,-17.908,-17.754,-17.620,-17.507,-17.415,-17.342,-17.289,-17.255,-17.240,-17.241,-17.260,-17.293,-17.339,
--17.398,-17.468,-17.547,-17.633,-17.724,-17.820,-17.919,-18.018,-18.116,-18.212,-18.305,-18.393,-18.474,-18.549,-18.616,-18.674,
--18.722,-18.761,-18.790,-18.808,-18.816,-18.814,-18.803,-18.781,-18.751,-18.712,-18.666,-18.613,-18.553,-18.489,-18.420,-18.348,
--18.274,-18.198,-18.122,-18.046,-17.972,-17.899,-17.829,-17.763,-17.700,-17.642,-17.588,-17.539,-17.496,-17.457,-17.423,-17.394,
--17.370,-17.350,-17.334,-17.322,-17.312,-17.305,-17.300,-17.296,-17.292,-17.289,-17.285,-17.279,-17.272,-17.262,-17.250,-17.234,
--17.215,-17.191,-17.164,-17.132,-17.095,-17.054,-17.009,-16.959,-16.906,-16.848,-16.787,-16.724,-16.657,-16.589,-16.519,-16.448,
--16.377,-16.307,-16.237,-16.168,-16.102,-16.039,-15.978,-15.921,-15.869,-15.821,-15.777,-15.739,-15.706,-15.679,-15.657,-15.641,
--15.631,-15.626,-15.626,-15.631,-15.641,-15.655,-15.673,-15.695,-15.719,-15.746,-15.775,-15.805,-15.836,-15.868,-15.898,-15.928,
--15.957,-15.983,-16.008,-16.029,-16.047,-16.061,-16.072,-16.078,-16.080,-16.078,-16.072,-16.061,-16.045,-16.026,-16.003,-15.976,
--15.945,-15.912,-15.876,-15.839,-15.799,-15.759,-15.718,-15.677,-15.637,-15.598,-15.560,-15.525,-15.493,-15.604,-15.586,-15.570,
--15.558,-15.549,-15.544,-15.542,-15.544,-15.551,-15.561,-15.574,-15.592,-15.612,-15.637,-15.664,-15.693,-15.725,-15.759,-15.794,
--15.830,-15.866,-15.902,-15.937,-15.971,-16.003,-16.032,-16.058,-16.081,-16.100,-16.114,-16.123,-16.127,-16.126,-16.119,-16.106,
--16.086,-16.061,-16.030,-15.992,-15.949,-15.900,-15.846,-15.787,-15.723,-15.655,-15.584,-15.509,-15.433,-15.354,-15.274,-15.194,
--15.114,-15.035,-14.957,-14.881,-14.808,-14.738,-14.671,-14.609,-14.551,-14.497,-14.449,-14.406,-14.368,-14.335,-14.308,-14.286,
--14.269,-14.256,-14.248,-14.244,-14.244,-14.247,-14.253,-14.260,-14.269,-14.279,-14.289,-14.299,-14.308,-14.316,-14.321,-14.324,
--14.323,-14.319,-14.311,-14.298,-14.280,-14.258,-14.230,-14.197,-14.158,-14.114,-14.064,-14.009,-13.949,-13.884,-13.814,-13.740,
--13.662,-13.581,-13.496,-13.409,-13.319,-13.228,-13.135,-13.042,-12.948,-12.854,-12.761,-12.669,-12.578,-12.488,-12.400,-12.315,
--12.231,-12.150,-12.072,-11.996,-11.924,-11.853,-11.786,-11.721,-11.658,-11.598,-11.540,-11.484,-11.430,-11.378,-11.327,-11.278,
--11.229,-11.181,-11.134,-11.088,-11.042,-10.996,-10.951,-10.906,-10.860,-10.815,-10.771,-10.726,-10.681,-10.637,-10.594,-10.551,
--10.509,-10.468,-10.428,-10.389,-10.352,-10.317,-10.284,-10.253,-10.225,-10.199,-10.177,-10.157,-10.140,-10.126,-10.116,-10.109,
--10.106,-10.106,-10.110,-10.116,-10.127,-10.140,-10.156,-10.175,-10.197,-10.222,-10.249,-10.278,-10.308,-10.341,-10.374,-10.409,
--10.445,-10.481,-10.517,-10.554,-10.590,-10.626,-10.661,-10.696,-10.729,-10.761,-10.792,-10.822,-10.850,-10.877,-10.902,-10.925,
--10.947,-10.967,-10.985,-11.002,-11.017,-11.031,-11.044,-11.055,-11.065,-11.074,-11.082,-11.090,-11.096,-11.102,-11.108,-11.113,
--11.118,-11.123,-11.128,-11.133,-11.139,-11.144,-11.150,-11.156,-11.163,-11.170,-11.177,-11.185,-11.193,-11.202,-11.212,-11.221,
--11.232,-11.243,-11.254,-11.265,-11.277,-11.289,-11.302,-11.314,-11.327,-11.340,-11.354,-11.367,-11.381,-11.394,-11.408,-11.422,
--11.435,-11.449,-11.463,-11.477,-11.491,-11.505,-11.520,-11.534,-11.549,-11.564,-11.580,-11.595,-11.611,-11.628,-11.645,-11.663,
--11.681,-11.699,-11.719,-11.739,-11.760,-11.782,-11.805,-11.829,-11.854,-11.880,-11.907,-11.935,-11.964,-11.995,-12.027,-12.060,
--12.095,-12.131,-12.169,-12.208,-12.249,-12.292,-12.336,-12.382,-12.429,-12.479,-12.530,-12.583,-12.638,-12.695,-12.754,-12.815,
--12.878,-12.943,-13.010,-13.078,-13.149,-13.222,-13.296,-13.373,-13.451,-13.531,-13.613,-13.696,-13.781,-13.868,-13.956,-14.045,
--14.135,-14.227,-14.319,-14.413,-14.507,-14.602,-14.697,-14.793,-14.889,-14.985,-15.082,-15.178,-15.275,-15.372,-15.468,-15.564,
--15.660,-15.756,-15.851,-15.946,-16.041,-16.136,-16.230,-16.325,-16.419,-16.513,-16.607,-16.701,-16.795,-16.890,-16.984,-17.079,
--17.175,-17.271,-17.367,-17.465,-17.562,-17.661,-17.760,-17.860,-17.960,-18.061,-18.163,-18.265,-18.368,-18.472,-18.575,-18.679,
--18.783,-18.887,-18.991,-19.095,-19.198,-19.301,-19.403,-19.504,-19.604,-19.704,-19.802,-19.898,-19.993,-20.087,-20.179,-20.270,
--20.359,-20.446,-20.532,-20.616,-20.699,-20.780,-20.859,-20.937,-21.015,-21.091,-21.166,-21.240,-21.314,-21.387,-21.460,-21.534,
--21.607,-21.680,-21.754,-21.829,-21.904,-21.981,-22.058,-22.137,-22.217,-22.299,-22.381,-22.466,-22.552,-22.639,-22.728,-22.818,
--22.910,-23.003,-23.098,-23.193,-23.290,-23.388,-23.487,-23.586,-23.686,-23.787,-23.888,-23.989,-24.091,-24.192,-24.294,-24.395,
--24.496,-24.597,-24.698,-24.799,-24.899,-24.999,-25.098,-25.198,-25.297,-25.396,-25.495,-25.595,-25.694,-25.793,-25.893,-25.994,
--26.095,-26.197,-26.300,-26.404,-26.509,-26.615,-26.722,-26.831,-26.941,-27.053,-27.167,-27.282,-27.399,-27.517,-27.637,-27.759,
--27.882,-28.007,-28.134,-28.261,-28.390,-28.520,-28.651,-28.783,-28.916,-29.049,-29.183,-29.317,-29.451,-29.586,-29.719,-29.853,
--29.986,-30.118,-30.250,-30.380,-30.509,-30.637,-30.764,-30.889,-31.013,-31.134,-31.255,-31.373,-31.489,-31.604,-31.716,-31.827,
--31.935,-32.042,-32.146,-32.249,-32.349,-32.448,-32.544,-32.639,-32.732,-32.822,-32.911,-32.998,-33.084,-33.167,-33.248,-33.328,
--33.406,-33.482,-33.556,-33.629,-33.699,-33.768,-33.834,-33.899,-33.961,-34.022,-34.080,-34.136,-34.190,-34.242,-34.292,-34.339,
--34.383,-34.426,-34.466,-34.504,-34.539,-34.572,-34.603,-34.631,-34.658,-34.682,-34.705,-34.726,-34.745,-34.763,-34.779,-34.795,
--34.809,-34.824,-34.837,-34.851,-34.865,-34.879,-34.894,-34.909,-34.926,-34.944,-34.964,-34.986,-35.009,-35.034,-35.062,-35.092,
--35.125,-35.159,-35.197,-35.236,-35.278,-35.322,-35.368,-35.416,-35.466,-35.517,-35.569,-35.622,-35.676,-35.729,-35.783,-35.836,
--35.888,-35.938,-35.987,-36.034,-36.078,-36.120,-36.159,-36.194,-36.226,-36.255,-36.279,-36.300,-36.316,-36.329,-36.338,-36.343,
--36.344,-36.342,-36.338,-36.330,-36.320,-36.308,-36.295,-36.280,-36.266,-36.251,-36.236,-36.223,-36.212,-36.202,-36.195,-36.191,
--36.191,-36.194,-36.202,-36.214,-36.231,-36.253,-36.279,-36.311,-36.347,-36.389,-36.434,-36.484,-36.538,-36.595,-36.656,-36.718,
--36.783,-36.849,-36.916,-36.982,-37.048,-37.113,-37.175,-37.235,-37.291,-37.344,-37.392,-37.435,-37.472,-37.504,-37.529,-37.549,
--37.562,-37.568,-37.568,-37.562,-37.550,-37.532,-37.509,-37.481,-37.449,-37.413,-37.374,-37.332,-37.288,-37.244,-37.199,-37.155,
--37.111,-37.070,-37.030,-36.994,-36.961,-36.931,-36.906,-36.885,-36.868,-36.856,-36.848,-36.844,-36.844,-36.847,-36.853,-36.861,
--36.871,-36.882,-36.893,-36.903,-36.910,-36.915,-36.916,-36.913,-36.903,-36.887,-36.863,-36.831,-36.790,-36.739,-36.678,-36.606,
--36.523,-36.430,-36.325,-36.209,-36.083,-35.948,-35.802,-35.649,-35.487,-35.319,-35.146,-34.968,-34.788,-34.607,-34.426,-34.247,
--34.072,-33.901,-33.738,-33.583,-33.437,-33.303,-33.182,-33.074,-32.982,-32.905,-32.845,-32.803,-32.778,-32.771,-32.783,-32.813,
--32.860,-32.925,-33.007,-33.104,-33.217,-33.343,-33.482,-33.631,-33.791,-33.958,-34.132,-34.310,-34.492,-34.675,-34.857,-35.038,
--35.215,-35.387,-35.553,-35.711,-35.860,-35.999,-36.128,-36.245,-36.350,-36.444,-36.525,-36.593,-36.650,-36.694,-36.728,-36.750,
--36.763,-36.767,-36.763,-36.753,-36.737,-36.716,-36.693,-36.668,-36.642,-36.618,-36.595,-36.577,-36.563,-36.554,-36.553,-36.559,
--36.573,-36.596,-36.629,-36.672,-36.726,-36.789,-36.863,-36.947,-37.041,-37.144,-37.256,-37.376,-37.505,-37.639,-37.780,-37.926,
--38.076,-38.229,-38.384,-38.540,-38.697,-38.852,-39.005,-39.156,-39.304,-39.447,-39.585,-39.717,-39.844,-39.964,-40.078,-40.184,
--40.284,-40.376,-40.462,-40.540,-40.612,-40.677,-40.737,-40.790,-40.839,-40.883,-40.922,-40.958,-40.991,-41.021,-41.048,-41.075,
--41.100,-41.124,-41.148,-41.172,-41.197,-41.222,-41.247,-41.274,-41.301,-41.329,-41.358,-41.388,-41.418,-41.448,-41.479,-41.509,
--41.538,-41.566,-41.593,-41.618,-41.641,-41.662,-41.679,-41.693,-41.704,-41.710,-41.713,-41.710,-41.703,-41.692,-41.675,-41.653,
--41.627,-41.595,-41.559,-41.518,-41.472,-41.422,-41.368,-41.311,-41.250,-41.186,-41.119,-41.050,-40.979,-40.907,-40.833,-40.758,
--40.683,-40.607,-40.531,-40.456,-40.380,-40.306,-40.231,-40.158,-40.085,-40.012,-39.941,-39.869,-39.798,-39.727,-39.657,-39.586,
--39.514,-39.442,-39.368,-39.294,-39.218,-39.140,-39.061,-38.979,-38.895,-38.809,-38.720,-38.629,-38.536,-38.441,-38.343,-38.243,
--38.142,-38.040,-37.936,-37.832,-37.728,-37.624,-37.521,-37.420,-37.321,-37.225,-37.132,-37.044,-36.960,-36.881,-36.808,-36.742,
--36.682,-36.630,-36.586,-36.549,-36.521,-36.502,-36.490,-36.488,-36.493,-36.507,-36.528,-36.557,-36.592,-36.634,-36.681,-36.733,
--36.788,-36.846,-36.906,-36.967,-37.028,-37.087,-37.143,-37.195,-37.243,-37.284,-37.318,-37.344,-37.361,-37.368,-37.363,-37.348,
--37.319,-37.279,-37.225,-37.157,-37.077,-36.983,-36.876,-36.756,-36.623,-36.479,-36.325,-36.160,-35.986,-35.804,-35.616,-35.422,
--35.224,-35.024,-34.823,-34.622,-34.424,-34.229,-34.040,-33.857,-33.682,-33.516,-33.362,-33.219,-33.089,-32.972,-32.870,-32.784,
--32.712,-32.657,-32.617,-32.594,-32.586,-32.593,-32.615,-32.651,-32.699,-32.760,-32.831,-32.912,-33.000,-33.095,-33.195,-33.299,
--33.403,-33.508,-33.610,-33.710,-33.803,-33.890,-33.969,-34.038,-34.095,-34.141,-34.172,-34.190,-34.192,-34.178,-34.148,-34.101,
--34.038,-33.958,-33.861,-33.749,-33.621,-33.479,-33.322,-33.153,-32.972,-32.781,-32.580,-32.372,-32.157,-31.938,-31.715,-31.491,
--31.266,-31.042,-30.822,-30.605,-30.394,-30.189,-29.992,-29.804,-29.625,-29.457,-29.300,-29.154,-29.020,-28.897,-28.787,-28.689,
--28.602,-28.526,-28.462,-28.407,-28.361,-28.324,-28.295,-28.272,-28.255,-28.243,-28.234,-28.227,-28.222,-28.216,-28.210,-28.202,
--28.191,-28.177,-28.158,-28.133,-28.103,-28.067,-28.024,-27.974,-27.917,-27.853,-27.782,-27.704,-27.620,-27.530,-27.434,-27.333,
--27.229,-27.121,-27.010,-26.898,-26.786,-26.674,-26.563,-26.456,-26.352,-26.253,-26.159,-26.073,-25.994,-25.924,-25.863,-25.812,
--25.772,-25.744,-25.727,-25.723,-25.730,-25.751,-25.784,-25.829,-25.887,-25.957,-26.038,-26.130,-26.233,-26.346,-26.467,-26.597,
--26.733,-26.876,-27.025,-27.177,-27.333,-27.490,-27.649,-27.807,-27.964,-28.119,-28.270,-28.417,-28.559,-28.695,-28.824,-28.945,
--29.059,-29.163,-29.258,-29.343,-29.418,-29.483,-29.537,-29.581,-29.613,-29.635,-29.646,-29.647,-29.637,-29.617,-29.587,-29.548,
--29.500,-29.442,-29.376,-29.302,-29.220,-29.130,-29.034,-28.930,-28.820,-28.704,-28.583,-28.455,-28.322,-28.184,-28.041,-27.893,
--27.741,-27.583,-27.422,-27.256,-27.087,-26.913,-26.736,-26.554,-26.370,-26.182,-25.992,-25.798,-25.603,-25.405,-25.206,-25.006,
--24.806,-24.605,-24.405,-24.207,-24.011,-23.817,-23.627,-23.442,-23.262,-23.088,-22.920,-22.761,-22.610,-22.469,-22.337,-22.217,
--22.108,-22.011,-21.927,-21.856,-21.798,-21.755,-21.725,-21.709,-21.706,-21.718,-21.743,-21.781,-21.831,-21.893,-21.966,-22.050,
--22.143,-22.244,-22.352,-22.467,-22.586,-22.709,-22.835,-22.962,-23.089,-23.215,-23.339,-23.459,-23.575,-23.686,-23.790,-23.888,
--23.977,-24.059,-24.132,-24.196,-24.251,-24.297,-24.335,-24.364,-24.384,-24.397,-24.403,-24.402,-24.396,-24.385,-24.371,-24.354,
--24.335,-24.316,-24.297,-24.280,-24.266,-24.255,-24.249,-24.248,-24.253,-24.265,-24.285,-24.312,-24.347,-24.390,-24.441,-24.500,
--24.566,-24.639,-24.719,-24.804,-24.894,-24.987,-25.083,-25.180,-25.276,-25.371,-25.463,-25.550,-25.631,-25.704,-25.767,-25.820,
--25.861,-25.888,-25.900,-25.896,-25.875,-25.836,-25.778,-25.701,-25.604,-25.487,-25.350,-25.193,-25.017,-24.822,-24.608,-24.376,
--24.128,-23.865,-23.588,-23.298,-22.997,-22.687,-22.369,-22.046,-21.719,-21.390,-21.062,-20.735,-20.412,-20.094,-19.784,-19.483,
--19.193,-18.915,-18.650,-18.399,-18.165,-17.947,-17.745,-17.562,-17.397,-17.250,-17.121,-17.010,-16.918,-16.842,-16.783,-16.741,
--16.713,-16.699,-16.699,-16.710,-16.732,-16.764,-16.803,-16.850,-16.902,-16.957,-17.016,-17.076,-17.137,-17.197,-17.255,-17.310,
--17.361,-17.408,-17.451,-17.487,-17.518,-17.542,-17.559,-17.570,-17.574,-17.572,-17.563,-17.549,-17.528,-17.503,-17.473,-17.438,
--17.400,-17.359,-17.316,-17.271,-17.226,-17.179,-17.133,-17.088,-17.044,-17.002,-16.962,-16.925,-16.890,-16.859,-16.831,-16.807,
--16.786,-16.768,-16.754,-16.743,-16.735,-16.730,-16.727,-16.726,-16.727,-16.729,-16.732,-16.735,-16.738,-16.741,-16.743,-16.744,
--16.743,-16.740,-16.734,-16.726,-16.716,-16.702,-16.685,-16.665,-16.642,-16.616,-16.586,-16.554,-16.519,-16.481,-16.442,-16.400,
--16.357,-16.313,-16.268,-16.222,-16.177,-16.132,-16.088,-16.045,-16.004,-15.965,-15.928,-15.895,-15.864,-15.836,-15.811,-15.790,
--15.773,-15.760,-15.750,-15.744,-15.741,-15.742,-15.746,-15.752,-15.762,-15.774,-15.788,-15.804,-15.821,-15.839,-15.858,-15.877,
--15.896,-15.914,-15.931,-15.946,-15.961,-15.973,-15.982,-15.990,-15.994,-15.996,-15.995,-15.991,-15.984,-15.974,-15.961,-15.945,
--15.927,-15.907,-15.884,-15.860,-15.834,-15.807,-15.780,-15.752,-15.725,-15.698,-15.672,-15.647,-15.624,-15.604,-15.841,-15.837,
--15.835,-15.835,-15.837,-15.841,-15.847,-15.855,-15.865,-15.878,-15.892,-15.908,-15.926,-15.945,-15.965,-15.986,-16.008,-16.030,
--16.052,-16.074,-16.095,-16.116,-16.135,-16.152,-16.167,-16.181,-16.191,-16.199,-16.203,-16.204,-16.201,-16.195,-16.185,-16.171,
--16.153,-16.130,-16.104,-16.074,-16.041,-16.004,-15.963,-15.919,-15.873,-15.824,-15.772,-15.719,-15.665,-15.610,-15.554,-15.498,
--15.442,-15.387,-15.333,-15.280,-15.230,-15.181,-15.135,-15.092,-15.052,-15.016,-14.983,-14.953,-14.927,-14.905,-14.886,-14.871,
--14.859,-14.851,-14.845,-14.843,-14.842,-14.845,-14.848,-14.854,-14.860,-14.867,-14.875,-14.882,-14.888,-14.893,-14.897,-14.898,
--14.898,-14.894,-14.888,-14.878,-14.865,-14.848,-14.827,-14.801,-14.772,-14.738,-14.699,-14.657,-14.610,-14.559,-14.504,-14.445,
--14.383,-14.317,-14.248,-14.177,-14.103,-14.027,-13.950,-13.871,-13.791,-13.710,-13.629,-13.548,-13.467,-13.387,-13.308,-13.230,
--13.153,-13.078,-13.004,-12.933,-12.863,-12.795,-12.730,-12.667,-12.605,-12.546,-12.489,-12.434,-12.381,-12.330,-12.280,-12.232,
--12.185,-12.140,-12.095,-12.052,-12.009,-11.968,-11.926,-11.886,-11.846,-11.806,-11.767,-11.727,-11.689,-11.650,-11.612,-11.574,
--11.536,-11.499,-11.462,-11.426,-11.391,-11.357,-11.324,-11.292,-11.262,-11.233,-11.205,-11.180,-11.156,-11.135,-11.115,-11.098,
--11.084,-11.072,-11.063,-11.056,-11.053,-11.051,-11.053,-11.058,-11.065,-11.075,-11.087,-11.103,-11.120,-11.140,-11.162,-11.186,
--11.212,-11.240,-11.270,-11.301,-11.333,-11.366,-11.400,-11.435,-11.470,-11.506,-11.542,-11.578,-11.614,-11.649,-11.684,-11.719,
--11.753,-11.786,-11.819,-11.851,-11.881,-11.911,-11.940,-11.967,-11.994,-12.019,-12.044,-12.067,-12.089,-12.110,-12.130,-12.149,
--12.167,-12.184,-12.201,-12.216,-12.231,-12.245,-12.259,-12.272,-12.284,-12.296,-12.308,-12.319,-12.330,-12.341,-12.352,-12.362,
--12.373,-12.383,-12.393,-12.403,-12.414,-12.424,-12.435,-12.445,-12.456,-12.467,-12.478,-12.490,-12.502,-12.514,-12.526,-12.539,
--12.552,-12.565,-12.579,-12.593,-12.608,-12.623,-12.638,-12.654,-12.671,-12.688,-12.705,-12.724,-12.742,-12.762,-12.782,-12.802,
--12.823,-12.845,-12.868,-12.891,-12.915,-12.940,-12.965,-12.991,-13.019,-13.047,-13.075,-13.105,-13.136,-13.167,-13.200,-13.234,
--13.268,-13.304,-13.341,-13.379,-13.419,-13.459,-13.501,-13.545,-13.589,-13.636,-13.683,-13.733,-13.783,-13.836,-13.890,-13.945,
--14.003,-14.062,-14.123,-14.186,-14.250,-14.316,-14.384,-14.454,-14.525,-14.598,-14.673,-14.750,-14.828,-14.907,-14.989,-15.071,
--15.155,-15.241,-15.327,-15.415,-15.504,-15.594,-15.685,-15.776,-15.869,-15.962,-16.056,-16.150,-16.245,-16.340,-16.435,-16.531,
--16.627,-16.723,-16.819,-16.916,-17.012,-17.109,-17.205,-17.301,-17.398,-17.494,-17.591,-17.687,-17.783,-17.880,-17.976,-18.072,
--18.168,-18.265,-18.361,-18.457,-18.554,-18.650,-18.746,-18.842,-18.939,-19.035,-19.131,-19.226,-19.322,-19.417,-19.512,-19.607,
--19.701,-19.794,-19.887,-19.979,-20.070,-20.161,-20.251,-20.339,-20.427,-20.513,-20.598,-20.682,-20.765,-20.846,-20.926,-21.004,
--21.082,-21.158,-21.232,-21.306,-21.378,-21.449,-21.519,-21.588,-21.656,-21.724,-21.790,-21.856,-21.922,-21.988,-22.053,-22.119,
--22.184,-22.250,-22.317,-22.384,-22.451,-22.520,-22.590,-22.660,-22.732,-22.805,-22.880,-22.955,-23.032,-23.111,-23.191,-23.273,
--23.356,-23.441,-23.527,-23.614,-23.703,-23.792,-23.883,-23.976,-24.069,-24.163,-24.258,-24.353,-24.449,-24.546,-24.643,-24.740,
--24.838,-24.936,-25.034,-25.132,-25.230,-25.328,-25.426,-25.524,-25.621,-25.719,-25.817,-25.914,-26.012,-26.109,-26.207,-26.304,
--26.402,-26.500,-26.599,-26.698,-26.797,-26.898,-26.998,-27.100,-27.202,-27.305,-27.409,-27.515,-27.621,-27.728,-27.836,-27.946,
--28.057,-28.168,-28.281,-28.395,-28.510,-28.627,-28.744,-28.862,-28.980,-29.100,-29.220,-29.340,-29.461,-29.582,-29.704,-29.825,
--29.947,-30.068,-30.188,-30.308,-30.428,-30.547,-30.664,-30.781,-30.897,-31.011,-31.124,-31.236,-31.346,-31.454,-31.561,-31.666,
--31.769,-31.870,-31.969,-32.066,-32.161,-32.254,-32.345,-32.434,-32.521,-32.605,-32.688,-32.768,-32.846,-32.922,-32.996,-33.068,
--33.137,-33.205,-33.270,-33.333,-33.394,-33.454,-33.510,-33.565,-33.618,-33.669,-33.717,-33.764,-33.808,-33.851,-33.892,-33.930,
--33.967,-34.002,-34.035,-34.066,-34.096,-34.124,-34.151,-34.176,-34.199,-34.222,-34.243,-34.264,-34.283,-34.302,-34.321,-34.339,
--34.356,-34.374,-34.392,-34.410,-34.429,-34.449,-34.469,-34.490,-34.512,-34.536,-34.561,-34.587,-34.615,-34.645,-34.676,-34.709,
--34.744,-34.781,-34.819,-34.860,-34.902,-34.945,-34.990,-35.036,-35.083,-35.131,-35.180,-35.229,-35.279,-35.328,-35.377,-35.426,
--35.474,-35.521,-35.567,-35.611,-35.654,-35.694,-35.733,-35.769,-35.802,-35.833,-35.861,-35.887,-35.909,-35.929,-35.946,-35.960,
--35.972,-35.981,-35.988,-35.993,-35.997,-35.998,-35.999,-35.998,-35.997,-35.996,-35.994,-35.994,-35.994,-35.995,-35.998,-36.003,
--36.011,-36.020,-36.033,-36.048,-36.067,-36.090,-36.115,-36.145,-36.178,-36.215,-36.255,-36.299,-36.346,-36.397,-36.450,-36.506,
--36.564,-36.624,-36.686,-36.749,-36.813,-36.877,-36.941,-37.004,-37.066,-37.127,-37.186,-37.242,-37.296,-37.346,-37.393,-37.436,
--37.475,-37.510,-37.540,-37.566,-37.587,-37.603,-37.614,-37.621,-37.622,-37.619,-37.612,-37.600,-37.584,-37.564,-37.540,-37.513,
--37.483,-37.450,-37.413,-37.375,-37.334,-37.291,-37.246,-37.199,-37.150,-37.100,-37.049,-36.996,-36.941,-36.885,-36.827,-36.767,
--36.705,-36.641,-36.575,-36.506,-36.435,-36.360,-36.282,-36.201,-36.116,-36.027,-35.934,-35.837,-35.736,-35.630,-35.520,-35.405,
--35.287,-35.164,-35.038,-34.908,-34.775,-34.639,-34.501,-34.362,-34.221,-34.080,-33.939,-33.799,-33.661,-33.526,-33.394,-33.266,
--33.143,-33.027,-32.917,-32.814,-32.719,-32.634,-32.557,-32.491,-32.435,-32.390,-32.356,-32.333,-32.322,-32.323,-32.334,-32.357,
--32.391,-32.435,-32.489,-32.553,-32.625,-32.705,-32.793,-32.887,-32.987,-33.091,-33.198,-33.308,-33.420,-33.532,-33.644,-33.754,
--33.863,-33.968,-34.069,-34.165,-34.256,-34.341,-34.420,-34.493,-34.558,-34.616,-34.667,-34.711,-34.747,-34.777,-34.801,-34.818,
--34.831,-34.838,-34.840,-34.840,-34.836,-34.831,-34.824,-34.818,-34.811,-34.806,-34.804,-34.804,-34.809,-34.818,-34.832,-34.853,
--34.880,-34.913,-34.955,-35.003,-35.060,-35.125,-35.198,-35.280,-35.369,-35.466,-35.571,-35.683,-35.801,-35.927,-36.058,-36.194,
--36.335,-36.479,-36.628,-36.778,-36.931,-37.085,-37.239,-37.393,-37.546,-37.698,-37.848,-37.996,-38.140,-38.280,-38.417,-38.549,
--38.677,-38.800,-38.918,-39.031,-39.138,-39.241,-39.338,-39.429,-39.516,-39.598,-39.674,-39.746,-39.814,-39.877,-39.936,-39.992,
--40.044,-40.092,-40.137,-40.179,-40.219,-40.256,-40.290,-40.322,-40.351,-40.379,-40.404,-40.427,-40.448,-40.466,-40.482,-40.496,
--40.508,-40.517,-40.523,-40.527,-40.528,-40.526,-40.521,-40.512,-40.501,-40.486,-40.467,-40.445,-40.420,-40.391,-40.359,-40.323,
--40.283,-40.241,-40.195,-40.145,-40.093,-40.038,-39.979,-39.919,-39.856,-39.790,-39.722,-39.653,-39.581,-39.509,-39.434,-39.358,
--39.281,-39.203,-39.125,-39.045,-38.964,-38.882,-38.800,-38.717,-38.633,-38.548,-38.462,-38.376,-38.288,-38.199,-38.109,-38.017,
--37.924,-37.830,-37.734,-37.636,-37.537,-37.436,-37.333,-37.229,-37.123,-37.016,-36.908,-36.798,-36.688,-36.578,-36.467,-36.357,
--36.247,-36.138,-36.031,-35.926,-35.823,-35.724,-35.628,-35.537,-35.450,-35.369,-35.293,-35.225,-35.163,-35.108,-35.062,-35.024,
--34.994,-34.973,-34.961,-34.958,-34.965,-34.980,-35.004,-35.037,-35.078,-35.128,-35.184,-35.247,-35.317,-35.392,-35.471,-35.554,
--35.639,-35.726,-35.813,-35.900,-35.985,-36.068,-36.146,-36.219,-36.286,-36.345,-36.396,-36.438,-36.469,-36.490,-36.498,-36.494,
--36.477,-36.447,-36.403,-36.346,-36.274,-36.189,-36.091,-35.979,-35.855,-35.720,-35.573,-35.416,-35.250,-35.076,-34.895,-34.709,
--34.519,-34.326,-34.132,-33.937,-33.745,-33.556,-33.372,-33.193,-33.022,-32.860,-32.708,-32.567,-32.438,-32.322,-32.221,-32.133,
--32.060,-32.003,-31.961,-31.935,-31.923,-31.927,-31.945,-31.977,-32.023,-32.080,-32.148,-32.227,-32.314,-32.408,-32.509,-32.613,
--32.721,-32.829,-32.937,-33.043,-33.145,-33.242,-33.332,-33.413,-33.486,-33.547,-33.596,-33.632,-33.654,-33.661,-33.652,-33.628,
--33.588,-33.531,-33.457,-33.368,-33.263,-33.142,-33.007,-32.858,-32.695,-32.521,-32.336,-32.141,-31.938,-31.728,-31.512,-31.292,
--31.070,-30.846,-30.623,-30.402,-30.184,-29.970,-29.762,-29.561,-29.368,-29.185,-29.011,-28.848,-28.696,-28.556,-28.428,-28.312,
--28.209,-28.117,-28.039,-27.971,-27.916,-27.871,-27.836,-27.810,-27.794,-27.784,-27.782,-27.785,-27.792,-27.803,-27.817,-27.831,
--27.847,-27.861,-27.873,-27.883,-27.890,-27.892,-27.889,-27.880,-27.865,-27.844,-27.816,-27.780,-27.738,-27.689,-27.632,-27.569,
--27.499,-27.424,-27.343,-27.257,-27.168,-27.075,-26.980,-26.883,-26.785,-26.688,-26.593,-26.499,-26.409,-26.323,-26.243,-26.168,
--26.101,-26.041,-25.989,-25.947,-25.915,-25.892,-25.881,-25.880,-25.890,-25.912,-25.945,-25.989,-26.045,-26.111,-26.188,-26.274,
--26.371,-26.476,-26.589,-26.710,-26.838,-26.971,-27.110,-27.252,-27.398,-27.546,-27.695,-27.844,-27.993,-28.140,-28.284,-28.424,
--28.561,-28.692,-28.817,-28.935,-29.046,-29.149,-29.243,-29.328,-29.403,-29.468,-29.523,-29.567,-29.601,-29.623,-29.635,-29.635,
--29.623,-29.601,-29.567,-29.523,-29.467,-29.401,-29.324,-29.237,-29.140,-29.033,-28.917,-28.792,-28.657,-28.515,-28.364,-28.205,
--28.039,-27.866,-27.687,-27.501,-27.310,-27.113,-26.912,-26.706,-26.497,-26.284,-26.069,-25.851,-25.632,-25.412,-25.191,-24.971,
--24.752,-24.534,-24.319,-24.107,-23.898,-23.694,-23.495,-23.302,-23.116,-22.937,-22.765,-22.603,-22.450,-22.306,-22.173,-22.050,
--21.939,-21.840,-21.752,-21.677,-21.614,-21.564,-21.526,-21.500,-21.487,-21.486,-21.497,-21.519,-21.552,-21.595,-21.648,-21.710,
--21.781,-21.859,-21.944,-22.035,-22.131,-22.231,-22.334,-22.439,-22.545,-22.652,-22.759,-22.864,-22.967,-23.067,-23.163,-23.256,
--23.344,-23.427,-23.504,-23.576,-23.642,-23.703,-23.757,-23.806,-23.850,-23.888,-23.921,-23.951,-23.976,-23.999,-24.018,-24.036,
--24.053,-24.070,-24.087,-24.105,-24.125,-24.147,-24.173,-24.202,-24.235,-24.274,-24.317,-24.367,-24.421,-24.482,-24.548,-24.620,
--24.697,-24.779,-24.866,-24.957,-25.052,-25.149,-25.247,-25.347,-25.446,-25.544,-25.639,-25.730,-25.817,-25.897,-25.970,-26.034,
--26.088,-26.131,-26.162,-26.180,-26.183,-26.171,-26.143,-26.098,-26.036,-25.957,-25.859,-25.744,-25.610,-25.459,-25.290,-25.103,
--24.900,-24.681,-24.447,-24.198,-23.937,-23.663,-23.379,-23.086,-22.785,-22.478,-22.165,-21.850,-21.533,-21.216,-20.900,-20.587,
--20.279,-19.977,-19.682,-19.396,-19.120,-18.854,-18.601,-18.360,-18.133,-17.920,-17.721,-17.538,-17.370,-17.217,-17.080,-16.958,
--16.851,-16.758,-16.680,-16.615,-16.563,-16.523,-16.495,-16.477,-16.469,-16.470,-16.478,-16.493,-16.514,-16.539,-16.568,-16.601,
--16.635,-16.671,-16.707,-16.742,-16.777,-16.810,-16.841,-16.870,-16.896,-16.918,-16.937,-16.952,-16.964,-16.972,-16.976,-16.977,
--16.974,-16.968,-16.959,-16.948,-16.934,-16.918,-16.900,-16.881,-16.861,-16.840,-16.819,-16.798,-16.777,-16.757,-16.738,-16.720,
--16.702,-16.687,-16.673,-16.660,-16.649,-16.640,-16.632,-16.626,-16.621,-16.617,-16.615,-16.614,-16.613,-16.613,-16.614,-16.615,
--16.615,-16.616,-16.615,-16.615,-16.613,-16.610,-16.606,-16.601,-16.595,-16.586,-16.577,-16.565,-16.553,-16.538,-16.522,-16.505,
--16.486,-16.466,-16.445,-16.423,-16.401,-16.377,-16.354,-16.330,-16.307,-16.283,-16.260,-16.238,-16.216,-16.195,-16.176,-16.158,
--16.141,-16.125,-16.111,-16.098,-16.087,-16.078,-16.070,-16.064,-16.059,-16.055,-16.052,-16.051,-16.050,-16.051,-16.051,-16.053,
--16.054,-16.055,-16.057,-16.058,-16.059,-16.059,-16.058,-16.057,-16.055,-16.051,-16.047,-16.041,-16.035,-16.027,-16.018,-16.008,
--15.998,-15.986,-15.974,-15.962,-15.949,-15.935,-15.922,-15.909,-15.897,-15.885,-15.874,-15.863,-15.855,-15.847,-15.841,-16.658,
--16.661,-16.665,-16.671,-16.677,-16.684,-16.692,-16.701,-16.711,-16.721,-16.731,-16.742,-16.753,-16.763,-16.774,-16.783,-16.793,
--16.801,-16.808,-16.814,-16.818,-16.820,-16.821,-16.820,-16.816,-16.810,-16.801,-16.790,-16.775,-16.759,-16.739,-16.716,-16.690,
--16.662,-16.631,-16.597,-16.560,-16.521,-16.480,-16.437,-16.392,-16.345,-16.297,-16.247,-16.197,-16.146,-16.095,-16.044,-15.994,
--15.944,-15.895,-15.847,-15.800,-15.756,-15.713,-15.673,-15.635,-15.599,-15.567,-15.537,-15.510,-15.485,-15.464,-15.446,-15.430,
--15.418,-15.408,-15.400,-15.395,-15.392,-15.391,-15.392,-15.394,-15.397,-15.400,-15.405,-15.409,-15.413,-15.417,-15.420,-15.422,
--15.422,-15.420,-15.417,-15.411,-15.402,-15.391,-15.377,-15.360,-15.340,-15.316,-15.289,-15.258,-15.224,-15.186,-15.146,-15.101,
--15.054,-15.004,-14.950,-14.894,-14.835,-14.774,-14.711,-14.646,-14.580,-14.512,-14.443,-14.373,-14.303,-14.232,-14.161,-14.091,
--14.021,-13.951,-13.882,-13.814,-13.748,-13.683,-13.619,-13.556,-13.496,-13.437,-13.380,-13.325,-13.271,-13.220,-13.170,-13.122,
--13.076,-13.032,-12.989,-12.948,-12.909,-12.871,-12.834,-12.799,-12.766,-12.733,-12.702,-12.672,-12.642,-12.614,-12.587,-12.561,
--12.536,-12.512,-12.488,-12.466,-12.445,-12.424,-12.405,-12.387,-12.370,-12.354,-12.339,-12.326,-12.314,-12.303,-12.294,-12.286,
--12.280,-12.276,-12.273,-12.272,-12.273,-12.276,-12.280,-12.287,-12.295,-12.305,-12.316,-12.330,-12.345,-12.362,-12.381,-12.401,
--12.423,-12.446,-12.470,-12.496,-12.523,-12.551,-12.579,-12.609,-12.639,-12.670,-12.701,-12.732,-12.764,-12.796,-12.827,-12.859,
--12.890,-12.921,-12.952,-12.982,-13.011,-13.040,-13.067,-13.095,-13.121,-13.146,-13.171,-13.194,-13.217,-13.239,-13.260,-13.279,
--13.298,-13.316,-13.333,-13.350,-13.365,-13.380,-13.394,-13.408,-13.421,-13.433,-13.445,-13.456,-13.468,-13.479,-13.489,-13.500,
--13.510,-13.521,-13.531,-13.542,-13.553,-13.564,-13.575,-13.587,-13.599,-13.611,-13.624,-13.637,-13.651,-13.665,-13.680,-13.696,
--13.712,-13.729,-13.746,-13.764,-13.783,-13.802,-13.822,-13.843,-13.864,-13.886,-13.909,-13.932,-13.956,-13.980,-14.005,-14.031,
--14.057,-14.084,-14.112,-14.139,-14.168,-14.197,-14.227,-14.257,-14.287,-14.319,-14.350,-14.383,-14.416,-14.449,-14.483,-14.518,
--14.554,-14.590,-14.627,-14.664,-14.703,-14.742,-14.782,-14.823,-14.865,-14.908,-14.951,-14.996,-15.042,-15.090,-15.138,-15.188,
--15.238,-15.291,-15.344,-15.399,-15.455,-15.513,-15.572,-15.632,-15.694,-15.757,-15.822,-15.888,-15.955,-16.024,-16.095,-16.166,
--16.239,-16.313,-16.389,-16.465,-16.543,-16.622,-16.702,-16.783,-16.865,-16.947,-17.031,-17.115,-17.200,-17.286,-17.372,-17.459,
--17.547,-17.634,-17.723,-17.811,-17.900,-17.989,-18.079,-18.168,-18.258,-18.348,-18.438,-18.528,-18.618,-18.708,-18.798,-18.889,
--18.979,-19.069,-19.159,-19.248,-19.338,-19.428,-19.517,-19.606,-19.695,-19.783,-19.872,-19.960,-20.047,-20.134,-20.221,-20.307,
--20.392,-20.477,-20.561,-20.645,-20.728,-20.810,-20.891,-20.972,-21.051,-21.130,-21.207,-21.284,-21.360,-21.435,-21.509,-21.582,
--21.654,-21.725,-21.795,-21.864,-21.932,-22.000,-22.067,-22.133,-22.198,-22.264,-22.328,-22.392,-22.456,-22.520,-22.584,-22.648,
--22.712,-22.776,-22.840,-22.905,-22.970,-23.036,-23.103,-23.170,-23.239,-23.308,-23.378,-23.449,-23.522,-23.595,-23.669,-23.745,
--23.822,-23.900,-23.979,-24.060,-24.141,-24.224,-24.307,-24.392,-24.478,-24.565,-24.652,-24.741,-24.830,-24.919,-25.010,-25.101,
--25.192,-25.284,-25.377,-25.469,-25.562,-25.656,-25.749,-25.842,-25.936,-26.030,-26.124,-26.218,-26.312,-26.406,-26.500,-26.594,
--26.688,-26.783,-26.877,-26.972,-27.067,-27.162,-27.258,-27.354,-27.450,-27.546,-27.643,-27.741,-27.839,-27.937,-28.036,-28.136,
--28.236,-28.336,-28.438,-28.539,-28.642,-28.745,-28.848,-28.952,-29.056,-29.161,-29.265,-29.371,-29.476,-29.581,-29.687,-29.792,
--29.897,-30.002,-30.107,-30.211,-30.315,-30.418,-30.521,-30.622,-30.723,-30.823,-30.922,-31.019,-31.116,-31.211,-31.304,-31.396,
--31.487,-31.576,-31.663,-31.749,-31.833,-31.915,-31.995,-32.074,-32.151,-32.225,-32.298,-32.369,-32.439,-32.506,-32.571,-32.635,
--32.696,-32.756,-32.814,-32.870,-32.925,-32.978,-33.029,-33.078,-33.126,-33.172,-33.216,-33.259,-33.301,-33.341,-33.380,-33.417,
--33.453,-33.488,-33.522,-33.555,-33.587,-33.618,-33.648,-33.677,-33.706,-33.734,-33.762,-33.789,-33.816,-33.842,-33.868,-33.895,
--33.921,-33.947,-33.974,-34.001,-34.028,-34.056,-34.084,-34.113,-34.142,-34.172,-34.203,-34.235,-34.267,-34.300,-34.334,-34.369,
--34.405,-34.441,-34.478,-34.516,-34.554,-34.593,-34.632,-34.671,-34.711,-34.751,-34.790,-34.830,-34.869,-34.908,-34.946,-34.984,
--35.020,-35.056,-35.091,-35.124,-35.156,-35.187,-35.216,-35.243,-35.269,-35.293,-35.316,-35.336,-35.355,-35.372,-35.388,-35.402,
--35.414,-35.426,-35.435,-35.444,-35.452,-35.459,-35.466,-35.472,-35.478,-35.484,-35.491,-35.498,-35.505,-35.514,-35.524,-35.535,
--35.548,-35.563,-35.579,-35.598,-35.618,-35.642,-35.667,-35.695,-35.726,-35.759,-35.794,-35.832,-35.872,-35.914,-35.959,-36.005,
--36.053,-36.103,-36.153,-36.205,-36.258,-36.311,-36.364,-36.417,-36.470,-36.522,-36.572,-36.622,-36.669,-36.715,-36.758,-36.799,
--36.837,-36.872,-36.903,-36.931,-36.955,-36.976,-36.992,-37.004,-37.013,-37.016,-37.016,-37.011,-37.002,-36.989,-36.972,-36.950,
--36.924,-36.895,-36.861,-36.824,-36.782,-36.738,-36.689,-36.638,-36.583,-36.525,-36.465,-36.401,-36.334,-36.265,-36.194,-36.120,
--36.043,-35.965,-35.884,-35.801,-35.716,-35.629,-35.540,-35.449,-35.356,-35.262,-35.167,-35.070,-34.971,-34.872,-34.771,-34.670,
--34.568,-34.465,-34.362,-34.259,-34.157,-34.055,-33.954,-33.854,-33.756,-33.659,-33.564,-33.472,-33.383,-33.297,-33.215,-33.136,
--33.062,-32.993,-32.928,-32.869,-32.815,-32.767,-32.724,-32.688,-32.658,-32.635,-32.618,-32.607,-32.603,-32.605,-32.613,-32.627,
--32.647,-32.673,-32.704,-32.739,-32.780,-32.825,-32.873,-32.925,-32.980,-33.037,-33.096,-33.157,-33.218,-33.280,-33.342,-33.403,
--33.464,-33.523,-33.580,-33.636,-33.689,-33.739,-33.787,-33.831,-33.872,-33.910,-33.945,-33.977,-34.005,-34.030,-34.053,-34.072,
--34.089,-34.104,-34.117,-34.129,-34.139,-34.149,-34.158,-34.168,-34.178,-34.189,-34.201,-34.215,-34.231,-34.249,-34.271,-34.295,
--34.324,-34.356,-34.391,-34.432,-34.476,-34.525,-34.578,-34.636,-34.698,-34.765,-34.836,-34.911,-34.990,-35.073,-35.159,-35.249,
--35.342,-35.437,-35.535,-35.635,-35.736,-35.839,-35.943,-36.047,-36.152,-36.257,-36.361,-36.465,-36.568,-36.670,-36.770,-36.869,
--36.966,-37.060,-37.153,-37.243,-37.331,-37.417,-37.500,-37.580,-37.658,-37.733,-37.806,-37.876,-37.943,-38.008,-38.070,-38.130,
--38.188,-38.243,-38.296,-38.347,-38.396,-38.442,-38.486,-38.528,-38.568,-38.606,-38.641,-38.674,-38.704,-38.733,-38.758,-38.782,
--38.802,-38.820,-38.835,-38.847,-38.856,-38.862,-38.865,-38.864,-38.860,-38.853,-38.842,-38.827,-38.808,-38.786,-38.760,-38.731,
--38.697,-38.660,-38.619,-38.574,-38.525,-38.473,-38.417,-38.357,-38.294,-38.228,-38.158,-38.085,-38.009,-37.930,-37.847,-37.762,
--37.674,-37.584,-37.490,-37.395,-37.297,-37.196,-37.094,-36.989,-36.882,-36.774,-36.663,-36.551,-36.437,-36.322,-36.205,-36.087,
--35.968,-35.847,-35.726,-35.605,-35.483,-35.361,-35.239,-35.117,-34.996,-34.875,-34.756,-34.639,-34.523,-34.410,-34.300,-34.192,
--34.089,-33.989,-33.894,-33.803,-33.718,-33.639,-33.566,-33.500,-33.441,-33.389,-33.345,-33.309,-33.282,-33.262,-33.252,-33.251,
--33.258,-33.274,-33.299,-33.333,-33.375,-33.425,-33.484,-33.549,-33.622,-33.701,-33.786,-33.876,-33.970,-34.068,-34.168,-34.270,
--34.374,-34.477,-34.579,-34.678,-34.775,-34.868,-34.956,-35.038,-35.112,-35.179,-35.237,-35.286,-35.325,-35.353,-35.369,-35.374,
--35.367,-35.347,-35.314,-35.269,-35.211,-35.141,-35.059,-34.964,-34.859,-34.743,-34.617,-34.482,-34.339,-34.189,-34.032,-33.870,
--33.705,-33.537,-33.367,-33.197,-33.028,-32.862,-32.699,-32.541,-32.390,-32.245,-32.109,-31.982,-31.865,-31.759,-31.665,-31.583,
--31.513,-31.457,-31.414,-31.385,-31.369,-31.366,-31.376,-31.399,-31.433,-31.479,-31.536,-31.601,-31.676,-31.758,-31.846,-31.940,
--32.037,-32.137,-32.238,-32.339,-32.438,-32.535,-32.627,-32.713,-32.793,-32.865,-32.928,-32.981,-33.022,-33.052,-33.070,-33.074,
--33.064,-33.041,-33.003,-32.951,-32.885,-32.804,-32.710,-32.603,-32.482,-32.350,-32.206,-32.052,-31.888,-31.716,-31.536,-31.349,
--31.158,-30.963,-30.765,-30.565,-30.366,-30.167,-29.971,-29.778,-29.590,-29.407,-29.230,-29.061,-28.900,-28.748,-28.605,-28.473,
--28.350,-28.239,-28.138,-28.048,-27.969,-27.901,-27.844,-27.796,-27.759,-27.731,-27.711,-27.700,-27.695,-27.698,-27.706,-27.720,
--27.737,-27.758,-27.781,-27.806,-27.832,-27.857,-27.882,-27.905,-27.926,-27.945,-27.960,-27.971,-27.977,-27.980,-27.977,-27.970,
--27.957,-27.939,-27.916,-27.889,-27.856,-27.819,-27.778,-27.734,-27.686,-27.636,-27.583,-27.529,-27.475,-27.420,-27.365,-27.311,
--27.259,-27.210,-27.164,-27.121,-27.082,-27.048,-27.019,-26.996,-26.979,-26.969,-26.965,-26.968,-26.978,-26.996,-27.020,-27.052,
--27.091,-27.136,-27.189,-27.247,-27.312,-27.383,-27.458,-27.538,-27.623,-27.710,-27.801,-27.894,-27.989,-28.085,-28.181,-28.277,
--28.372,-28.464,-28.555,-28.642,-28.726,-28.805,-28.880,-28.948,-29.011,-29.067,-29.116,-29.157,-29.191,-29.216,-29.233,-29.240,
--29.239,-29.228,-29.208,-29.178,-29.138,-29.089,-29.030,-28.961,-28.883,-28.796,-28.699,-28.593,-28.478,-28.354,-28.222,-28.083,
--27.935,-27.781,-27.619,-27.451,-27.277,-27.098,-26.914,-26.725,-26.533,-26.337,-26.138,-25.938,-25.736,-25.533,-25.330,-25.128,
--24.926,-24.726,-24.529,-24.335,-24.145,-23.959,-23.778,-23.603,-23.434,-23.271,-23.116,-22.969,-22.830,-22.700,-22.579,-22.468,
--22.366,-22.274,-22.193,-22.122,-22.061,-22.011,-21.971,-21.941,-21.922,-21.913,-21.913,-21.923,-21.942,-21.969,-22.005,-22.048,
--22.098,-22.154,-22.216,-22.283,-22.355,-22.431,-22.510,-22.591,-22.674,-22.758,-22.843,-22.928,-23.012,-23.094,-23.175,-23.255,
--23.331,-23.405,-23.475,-23.543,-23.606,-23.667,-23.724,-23.777,-23.827,-23.873,-23.917,-23.958,-23.996,-24.032,-24.067,-24.100,
--24.133,-24.165,-24.198,-24.230,-24.265,-24.300,-24.338,-24.378,-24.420,-24.466,-24.515,-24.568,-24.624,-24.684,-24.748,-24.816,
--24.887,-24.962,-25.040,-25.120,-25.203,-25.288,-25.374,-25.461,-25.548,-25.633,-25.718,-25.799,-25.878,-25.952,-26.021,-26.084,
--26.140,-26.188,-26.227,-26.257,-26.276,-26.285,-26.281,-26.265,-26.236,-26.194,-26.138,-26.068,-25.983,-25.884,-25.770,-25.643,
--25.501,-25.345,-25.176,-24.995,-24.800,-24.595,-24.379,-24.152,-23.917,-23.674,-23.424,-23.168,-22.907,-22.643,-22.376,-22.108,
--21.840,-21.573,-21.308,-21.047,-20.790,-20.538,-20.293,-20.055,-19.825,-19.603,-19.392,-19.190,-18.999,-18.819,-18.650,-18.493,
--18.348,-18.214,-18.093,-17.982,-17.883,-17.796,-17.719,-17.652,-17.596,-17.549,-17.511,-17.481,-17.458,-17.443,-17.434,-17.431,
--17.432,-17.438,-17.447,-17.459,-17.474,-17.490,-17.507,-17.525,-17.543,-17.561,-17.577,-17.593,-17.606,-17.619,-17.629,-17.636,
--17.642,-17.645,-17.645,-17.643,-17.639,-17.632,-17.622,-17.611,-17.598,-17.582,-17.565,-17.547,-17.527,-17.506,-17.485,-17.463,
--17.440,-17.417,-17.394,-17.372,-17.349,-17.327,-17.306,-17.286,-17.266,-17.248,-17.230,-17.214,-17.198,-17.184,-17.171,-17.159,
--17.148,-17.137,-17.128,-17.120,-17.113,-17.106,-17.100,-17.094,-17.089,-17.084,-17.080,-17.076,-17.072,-17.068,-17.064,-17.060,
--17.056,-17.052,-17.048,-17.043,-17.038,-17.034,-17.028,-17.023,-17.017,-17.012,-17.006,-17.000,-16.993,-16.987,-16.980,-16.974,
--16.967,-16.960,-16.954,-16.947,-16.940,-16.933,-16.927,-16.920,-16.913,-16.906,-16.900,-16.893,-16.886,-16.879,-16.872,-16.865,
--16.858,-16.850,-16.843,-16.835,-16.827,-16.819,-16.810,-16.802,-16.793,-16.784,-16.775,-16.766,-16.757,-16.748,-16.739,-16.730,
--16.721,-16.712,-16.704,-16.696,-16.689,-16.682,-16.675,-16.670,-16.665,-16.661,-16.658,-16.656,-16.655,-16.655,-16.656,-16.658,
--18.154,-18.159,-18.163,-18.168,-18.173,-18.177,-18.182,-18.186,-18.189,-18.192,-18.194,-18.195,-18.195,-18.194,-18.191,-18.187,
--18.181,-18.174,-18.164,-18.152,-18.139,-18.122,-18.104,-18.083,-18.059,-18.033,-18.004,-17.972,-17.938,-17.901,-17.862,-17.820,
--17.776,-17.729,-17.680,-17.629,-17.576,-17.522,-17.465,-17.408,-17.349,-17.290,-17.229,-17.169,-17.108,-17.047,-16.986,-16.927,
--16.868,-16.810,-16.753,-16.698,-16.644,-16.593,-16.544,-16.496,-16.452,-16.410,-16.371,-16.334,-16.300,-16.269,-16.241,-16.216,
--16.194,-16.174,-16.157,-16.142,-16.130,-16.120,-16.112,-16.107,-16.102,-16.099,-16.098,-16.097,-16.097,-16.097,-16.098,-16.099,
--16.099,-16.098,-16.097,-16.095,-16.091,-16.086,-16.079,-16.070,-16.059,-16.046,-16.030,-16.012,-15.991,-15.968,-15.942,-15.913,
--15.881,-15.847,-15.810,-15.770,-15.728,-15.683,-15.636,-15.587,-15.535,-15.482,-15.427,-15.370,-15.312,-15.253,-15.192,-15.131,
--15.070,-15.007,-14.945,-14.883,-14.821,-14.759,-14.698,-14.638,-14.578,-14.520,-14.463,-14.407,-14.353,-14.300,-14.249,-14.200,
--14.153,-14.107,-14.064,-14.022,-13.983,-13.946,-13.911,-13.878,-13.847,-13.819,-13.793,-13.768,-13.746,-13.726,-13.708,-13.692,
--13.679,-13.667,-13.657,-13.649,-13.643,-13.638,-13.636,-13.635,-13.636,-13.638,-13.643,-13.648,-13.656,-13.664,-13.675,-13.686,
--13.699,-13.713,-13.729,-13.745,-13.763,-13.782,-13.802,-13.822,-13.844,-13.867,-13.890,-13.913,-13.938,-13.963,-13.988,-14.014,
--14.040,-14.066,-14.092,-14.118,-14.144,-14.170,-14.196,-14.222,-14.247,-14.271,-14.295,-14.319,-14.341,-14.363,-14.385,-14.405,
--14.425,-14.443,-14.461,-14.477,-14.493,-14.508,-14.521,-14.534,-14.546,-14.556,-14.566,-14.575,-14.583,-14.590,-14.596,-14.602,
--14.607,-14.612,-14.616,-14.619,-14.622,-14.625,-14.628,-14.631,-14.634,-14.637,-14.640,-14.644,-14.648,-14.652,-14.658,-14.663,
--14.670,-14.677,-14.686,-14.695,-14.705,-14.717,-14.729,-14.743,-14.758,-14.775,-14.792,-14.811,-14.832,-14.853,-14.877,-14.901,
--14.927,-14.954,-14.983,-15.013,-15.044,-15.076,-15.109,-15.144,-15.180,-15.217,-15.254,-15.293,-15.332,-15.373,-15.414,-15.455,
--15.498,-15.541,-15.584,-15.628,-15.672,-15.716,-15.761,-15.806,-15.851,-15.896,-15.942,-15.987,-16.032,-16.078,-16.123,-16.169,
--16.214,-16.259,-16.305,-16.350,-16.395,-16.440,-16.485,-16.530,-16.576,-16.621,-16.666,-16.712,-16.757,-16.803,-16.850,-16.896,
--16.943,-16.990,-17.037,-17.085,-17.134,-17.183,-17.232,-17.282,-17.333,-17.384,-17.436,-17.489,-17.542,-17.597,-17.651,-17.707,
--17.764,-17.821,-17.879,-17.937,-17.997,-18.057,-18.118,-18.180,-18.243,-18.306,-18.370,-18.434,-18.500,-18.566,-18.632,-18.699,
--18.767,-18.835,-18.904,-18.973,-19.043,-19.113,-19.183,-19.254,-19.326,-19.397,-19.469,-19.542,-19.614,-19.687,-19.760,-19.833,
--19.907,-19.980,-20.054,-20.128,-20.202,-20.277,-20.351,-20.425,-20.500,-20.574,-20.648,-20.723,-20.797,-20.871,-20.945,-21.019,
--21.093,-21.167,-21.240,-21.314,-21.387,-21.460,-21.532,-21.604,-21.676,-21.748,-21.819,-21.890,-21.961,-22.032,-22.102,-22.171,
--22.241,-22.310,-22.379,-22.447,-22.515,-22.583,-22.651,-22.719,-22.787,-22.854,-22.922,-22.989,-23.056,-23.124,-23.192,-23.260,
--23.328,-23.396,-23.465,-23.534,-23.604,-23.674,-23.745,-23.816,-23.888,-23.960,-24.033,-24.107,-24.182,-24.258,-24.334,-24.411,
--24.489,-24.567,-24.647,-24.727,-24.808,-24.890,-24.973,-25.056,-25.141,-25.225,-25.311,-25.397,-25.484,-25.571,-25.658,-25.746,
--25.835,-25.924,-26.013,-26.102,-26.192,-26.282,-26.372,-26.462,-26.552,-26.643,-26.733,-26.823,-26.913,-27.003,-27.093,-27.183,
--27.273,-27.363,-27.453,-27.542,-27.631,-27.721,-27.810,-27.899,-27.988,-28.076,-28.165,-28.254,-28.342,-28.430,-28.519,-28.607,
--28.695,-28.783,-28.870,-28.958,-29.046,-29.133,-29.221,-29.308,-29.395,-29.481,-29.568,-29.654,-29.740,-29.825,-29.910,-29.995,
--30.079,-30.163,-30.246,-30.328,-30.410,-30.491,-30.572,-30.651,-30.730,-30.808,-30.884,-30.960,-31.035,-31.108,-31.181,-31.252,
--31.323,-31.392,-31.459,-31.526,-31.591,-31.655,-31.718,-31.779,-31.839,-31.898,-31.955,-32.012,-32.067,-32.120,-32.173,-32.224,
--32.275,-32.324,-32.372,-32.418,-32.464,-32.509,-32.553,-32.596,-32.638,-32.679,-32.720,-32.760,-32.799,-32.837,-32.875,-32.912,
--32.949,-32.985,-33.021,-33.057,-33.092,-33.127,-33.162,-33.196,-33.230,-33.265,-33.299,-33.333,-33.366,-33.400,-33.434,-33.468,
--33.502,-33.536,-33.571,-33.605,-33.639,-33.674,-33.708,-33.743,-33.778,-33.813,-33.848,-33.883,-33.918,-33.953,-33.988,-34.023,
--34.058,-34.092,-34.127,-34.161,-34.195,-34.229,-34.262,-34.295,-34.327,-34.358,-34.389,-34.420,-34.449,-34.478,-34.506,-34.533,
--34.559,-34.584,-34.608,-34.631,-34.652,-34.673,-34.693,-34.712,-34.729,-34.746,-34.761,-34.776,-34.789,-34.802,-34.814,-34.825,
--34.836,-34.846,-34.856,-34.865,-34.874,-34.883,-34.892,-34.901,-34.910,-34.920,-34.930,-34.941,-34.953,-34.966,-34.979,-34.994,
--35.010,-35.027,-35.045,-35.065,-35.087,-35.110,-35.134,-35.160,-35.187,-35.216,-35.246,-35.278,-35.311,-35.345,-35.381,-35.417,
--35.455,-35.493,-35.531,-35.571,-35.610,-35.650,-35.689,-35.728,-35.767,-35.804,-35.841,-35.877,-35.912,-35.945,-35.976,-36.006,
--36.034,-36.059,-36.082,-36.102,-36.120,-36.135,-36.148,-36.157,-36.164,-36.167,-36.167,-36.164,-36.158,-36.149,-36.137,-36.121,
--36.103,-36.081,-36.057,-36.029,-35.999,-35.966,-35.930,-35.891,-35.851,-35.807,-35.762,-35.714,-35.664,-35.613,-35.559,-35.504,
--35.447,-35.389,-35.329,-35.268,-35.206,-35.142,-35.078,-35.013,-34.947,-34.880,-34.813,-34.746,-34.678,-34.610,-34.541,-34.473,
--34.405,-34.337,-34.269,-34.202,-34.135,-34.070,-34.005,-33.941,-33.878,-33.816,-33.756,-33.697,-33.640,-33.585,-33.532,-33.482,
--33.433,-33.387,-33.343,-33.302,-33.264,-33.228,-33.196,-33.167,-33.140,-33.117,-33.097,-33.080,-33.067,-33.056,-33.049,-33.045,
--33.044,-33.046,-33.051,-33.059,-33.070,-33.084,-33.099,-33.118,-33.138,-33.161,-33.185,-33.211,-33.239,-33.268,-33.298,-33.329,
--33.361,-33.394,-33.428,-33.461,-33.495,-33.529,-33.563,-33.597,-33.631,-33.665,-33.698,-33.730,-33.762,-33.794,-33.825,-33.856,
--33.886,-33.916,-33.945,-33.974,-34.002,-34.030,-34.058,-34.086,-34.114,-34.141,-34.169,-34.196,-34.224,-34.252,-34.280,-34.309,
--34.338,-34.367,-34.397,-34.427,-34.458,-34.490,-34.522,-34.554,-34.587,-34.621,-34.655,-34.689,-34.724,-34.759,-34.795,-34.831,
--34.867,-34.904,-34.940,-34.977,-35.014,-35.051,-35.088,-35.125,-35.162,-35.199,-35.236,-35.273,-35.311,-35.348,-35.385,-35.422,
--35.459,-35.496,-35.534,-35.571,-35.609,-35.647,-35.686,-35.725,-35.765,-35.805,-35.845,-35.886,-35.928,-35.971,-36.014,-36.057,
--36.102,-36.147,-36.192,-36.238,-36.285,-36.332,-36.379,-36.426,-36.474,-36.521,-36.568,-36.615,-36.662,-36.707,-36.752,-36.795,
--36.837,-36.877,-36.916,-36.952,-36.986,-37.018,-37.047,-37.073,-37.096,-37.115,-37.130,-37.142,-37.150,-37.153,-37.152,-37.146,
--37.136,-37.121,-37.101,-37.075,-37.045,-37.009,-36.968,-36.922,-36.871,-36.814,-36.752,-36.685,-36.613,-36.535,-36.453,-36.366,
--36.274,-36.177,-36.076,-35.971,-35.862,-35.749,-35.633,-35.513,-35.390,-35.264,-35.136,-35.006,-34.873,-34.739,-34.604,-34.467,
--34.331,-34.193,-34.057,-33.920,-33.785,-33.651,-33.518,-33.388,-33.260,-33.136,-33.014,-32.897,-32.784,-32.675,-32.572,-32.473,
--32.381,-32.295,-32.216,-32.143,-32.078,-32.020,-31.970,-31.928,-31.894,-31.868,-31.851,-31.842,-31.842,-31.850,-31.867,-31.892,
--31.925,-31.966,-32.015,-32.071,-32.134,-32.204,-32.279,-32.361,-32.447,-32.537,-32.632,-32.729,-32.828,-32.929,-33.031,-33.133,
--33.234,-33.333,-33.430,-33.523,-33.612,-33.696,-33.775,-33.847,-33.912,-33.969,-34.018,-34.058,-34.089,-34.110,-34.121,-34.121,
--34.111,-34.089,-34.058,-34.015,-33.962,-33.898,-33.824,-33.741,-33.649,-33.547,-33.438,-33.321,-33.198,-33.069,-32.935,-32.798,
--32.657,-32.514,-32.370,-32.226,-32.083,-31.942,-31.804,-31.670,-31.541,-31.418,-31.302,-31.193,-31.092,-31.001,-30.919,-30.847,
--30.786,-30.736,-30.697,-30.669,-30.653,-30.647,-30.653,-30.670,-30.698,-30.735,-30.782,-30.838,-30.902,-30.974,-31.052,-31.136,
--31.225,-31.317,-31.412,-31.509,-31.607,-31.704,-31.799,-31.892,-31.980,-32.065,-32.143,-32.215,-32.279,-32.336,-32.383,-32.420,
--32.447,-32.463,-32.469,-32.462,-32.444,-32.415,-32.373,-32.320,-32.255,-32.180,-32.093,-31.996,-31.889,-31.772,-31.648,-31.515,
--31.375,-31.229,-31.078,-30.922,-30.763,-30.602,-30.439,-30.275,-30.112,-29.950,-29.790,-29.633,-29.480,-29.332,-29.189,-29.053,
--28.923,-28.800,-28.685,-28.578,-28.480,-28.390,-28.309,-28.237,-28.174,-28.120,-28.075,-28.038,-28.010,-27.989,-27.977,-27.972,
--27.973,-27.981,-27.995,-28.014,-28.038,-28.066,-28.097,-28.132,-28.168,-28.207,-28.247,-28.287,-28.327,-28.367,-28.407,-28.445,
--28.481,-28.516,-28.548,-28.577,-28.604,-28.628,-28.650,-28.668,-28.682,-28.694,-28.703,-28.709,-28.712,-28.713,-28.711,-28.707,
--28.700,-28.693,-28.683,-28.673,-28.662,-28.650,-28.638,-28.625,-28.614,-28.602,-28.592,-28.582,-28.574,-28.567,-28.562,-28.558,
--28.557,-28.557,-28.559,-28.563,-28.569,-28.577,-28.587,-28.598,-28.611,-28.625,-28.641,-28.658,-28.675,-28.693,-28.711,-28.729,
--28.747,-28.764,-28.780,-28.795,-28.808,-28.819,-28.827,-28.833,-28.836,-28.836,-28.832,-28.824,-28.812,-28.795,-28.773,-28.747,
--28.715,-28.678,-28.636,-28.588,-28.533,-28.474,-28.408,-28.336,-28.258,-28.174,-28.084,-27.988,-27.887,-27.780,-27.667,-27.549,
--27.426,-27.298,-27.165,-27.029,-26.888,-26.743,-26.595,-26.444,-26.291,-26.136,-25.978,-25.820,-25.660,-25.500,-25.340,-25.181,
--25.023,-24.866,-24.712,-24.559,-24.410,-24.264,-24.122,-23.984,-23.851,-23.723,-23.600,-23.483,-23.372,-23.268,-23.170,-23.080,
--22.996,-22.920,-22.852,-22.791,-22.737,-22.691,-22.653,-22.622,-22.599,-22.583,-22.575,-22.573,-22.578,-22.589,-22.607,-22.630,
--22.659,-22.693,-22.732,-22.775,-22.822,-22.872,-22.925,-22.981,-23.039,-23.099,-23.161,-23.223,-23.286,-23.349,-23.412,-23.475,
--23.537,-23.599,-23.659,-23.718,-23.776,-23.833,-23.888,-23.942,-23.994,-24.045,-24.095,-24.143,-24.191,-24.237,-24.283,-24.329,
--24.374,-24.420,-24.465,-24.512,-24.559,-24.607,-24.656,-24.706,-24.759,-24.813,-24.869,-24.927,-24.987,-25.049,-25.114,-25.180,
--25.249,-25.319,-25.391,-25.465,-25.540,-25.615,-25.691,-25.767,-25.843,-25.918,-25.992,-26.064,-26.133,-26.200,-26.263,-26.321,
--26.375,-26.424,-26.467,-26.503,-26.532,-26.553,-26.566,-26.571,-26.567,-26.553,-26.529,-26.496,-26.452,-26.398,-26.334,-26.259,
--26.174,-26.078,-25.972,-25.856,-25.730,-25.595,-25.452,-25.299,-25.139,-24.972,-24.797,-24.617,-24.431,-24.241,-24.047,-23.850,
--23.650,-23.449,-23.247,-23.045,-22.844,-22.645,-22.448,-22.253,-22.063,-21.877,-21.695,-21.519,-21.349,-21.186,-21.029,-20.879,
--20.737,-20.602,-20.475,-20.356,-20.245,-20.142,-20.047,-19.959,-19.879,-19.806,-19.740,-19.682,-19.629,-19.583,-19.542,-19.507,
--19.476,-19.450,-19.428,-19.410,-19.394,-19.381,-19.370,-19.361,-19.352,-19.345,-19.338,-19.331,-19.324,-19.316,-19.307,-19.297,
--19.286,-19.273,-19.258,-19.242,-19.223,-19.203,-19.180,-19.156,-19.129,-19.100,-19.070,-19.037,-19.003,-18.968,-18.931,-18.892,
--18.853,-18.813,-18.772,-18.731,-18.690,-18.648,-18.607,-18.566,-18.526,-18.486,-18.447,-18.409,-18.373,-18.338,-18.304,-18.272,
--18.241,-18.212,-18.186,-18.161,-18.138,-18.116,-18.097,-18.080,-18.065,-18.051,-18.040,-18.030,-18.022,-18.016,-18.012,-18.009,
--18.007,-18.007,-18.008,-18.011,-18.014,-18.018,-18.023,-18.029,-18.036,-18.043,-18.051,-18.059,-18.067,-18.075,-18.084,-18.092,
--18.100,-18.109,-18.116,-18.124,-18.131,-18.138,-18.145,-18.151,-18.156,-18.161,-18.165,-18.169,-18.172,-18.174,-18.176,-18.177,
--18.178,-18.178,-18.178,-18.177,-18.175,-18.174,-18.171,-18.169,-18.166,-18.163,-18.160,-18.157,-18.154,-18.150,-18.147,-18.144,
--18.141,-18.139,-18.137,-18.135,-18.133,-18.132,-18.132,-18.132,-18.132,-18.133,-18.135,-18.137,-18.140,-18.143,-18.146,-18.150,
--18.154,-19.673,-19.677,-19.681,-19.683,-19.685,-19.685,-19.684,-19.682,-19.678,-19.672,-19.665,-19.656,-19.645,-19.632,-19.617,
--19.599,-19.579,-19.557,-19.532,-19.505,-19.475,-19.443,-19.408,-19.370,-19.329,-19.286,-19.241,-19.192,-19.141,-19.088,-19.032,
--18.975,-18.915,-18.853,-18.789,-18.723,-18.657,-18.588,-18.519,-18.449,-18.378,-18.306,-18.234,-18.163,-18.091,-18.020,-17.950,
--17.880,-17.812,-17.745,-17.679,-17.615,-17.553,-17.493,-17.436,-17.381,-17.328,-17.278,-17.231,-17.186,-17.145,-17.106,-17.071,
--17.038,-17.008,-16.981,-16.957,-16.936,-16.917,-16.901,-16.888,-16.876,-16.867,-16.860,-16.854,-16.850,-16.848,-16.846,-16.845,
--16.845,-16.846,-16.847,-16.847,-16.848,-16.848,-16.847,-16.846,-16.843,-16.839,-16.834,-16.827,-16.818,-16.808,-16.795,-16.780,
--16.763,-16.744,-16.723,-16.699,-16.672,-16.644,-16.613,-16.579,-16.543,-16.505,-16.465,-16.423,-16.379,-16.333,-16.285,-16.236,
--16.185,-16.133,-16.080,-16.026,-15.972,-15.916,-15.861,-15.805,-15.750,-15.695,-15.640,-15.586,-15.532,-15.480,-15.429,-15.379,
--15.331,-15.284,-15.239,-15.197,-15.156,-15.117,-15.081,-15.047,-15.016,-14.987,-14.961,-14.938,-14.917,-14.899,-14.884,-14.872,
--14.863,-14.856,-14.852,-14.851,-14.853,-14.857,-14.864,-14.874,-14.886,-14.900,-14.917,-14.935,-14.956,-14.979,-15.004,-15.030,
--15.059,-15.088,-15.119,-15.151,-15.184,-15.218,-15.253,-15.288,-15.324,-15.360,-15.396,-15.433,-15.469,-15.504,-15.540,-15.575,
--15.609,-15.642,-15.675,-15.706,-15.736,-15.765,-15.793,-15.819,-15.843,-15.866,-15.887,-15.907,-15.925,-15.941,-15.955,-15.967,
--15.978,-15.987,-15.994,-15.999,-16.002,-16.004,-16.004,-16.003,-16.000,-15.996,-15.990,-15.983,-15.976,-15.967,-15.957,-15.947,
--15.936,-15.925,-15.914,-15.902,-15.891,-15.879,-15.868,-15.858,-15.848,-15.839,-15.830,-15.823,-15.817,-15.813,-15.810,-15.808,
--15.808,-15.810,-15.814,-15.820,-15.828,-15.839,-15.851,-15.866,-15.883,-15.902,-15.924,-15.948,-15.975,-16.004,-16.036,-16.069,
--16.106,-16.144,-16.185,-16.228,-16.272,-16.319,-16.368,-16.419,-16.472,-16.526,-16.581,-16.639,-16.697,-16.757,-16.817,-16.879,
--16.941,-17.005,-17.068,-17.133,-17.197,-17.262,-17.327,-17.392,-17.457,-17.522,-17.586,-17.651,-17.714,-17.778,-17.840,-17.902,
--17.963,-18.024,-18.083,-18.142,-18.200,-18.257,-18.313,-18.368,-18.423,-18.476,-18.528,-18.580,-18.631,-18.680,-18.729,-18.777,
--18.825,-18.871,-18.917,-18.962,-19.007,-19.051,-19.095,-19.138,-19.181,-19.223,-19.265,-19.307,-19.349,-19.390,-19.432,-19.473,
--19.515,-19.556,-19.598,-19.639,-19.681,-19.723,-19.765,-19.808,-19.851,-19.894,-19.938,-19.981,-20.026,-20.070,-20.116,-20.161,
--20.207,-20.254,-20.300,-20.348,-20.396,-20.444,-20.493,-20.542,-20.592,-20.642,-20.693,-20.744,-20.795,-20.847,-20.900,-20.953,
--21.006,-21.060,-21.114,-21.169,-21.224,-21.279,-21.335,-21.392,-21.448,-21.505,-21.563,-21.620,-21.678,-21.737,-21.796,-21.855,
--21.914,-21.974,-22.034,-22.094,-22.155,-22.216,-22.277,-22.338,-22.400,-22.462,-22.525,-22.587,-22.650,-22.713,-22.777,-22.841,
--22.905,-22.969,-23.034,-23.099,-23.164,-23.230,-23.296,-23.363,-23.430,-23.497,-23.565,-23.634,-23.703,-23.772,-23.842,-23.912,
--23.983,-24.054,-24.127,-24.199,-24.272,-24.346,-24.421,-24.496,-24.572,-24.649,-24.726,-24.804,-24.882,-24.961,-25.041,-25.122,
--25.203,-25.285,-25.367,-25.450,-25.534,-25.618,-25.702,-25.788,-25.873,-25.959,-26.046,-26.133,-26.220,-26.307,-26.395,-26.483,
--26.571,-26.659,-26.747,-26.835,-26.923,-27.012,-27.100,-27.188,-27.276,-27.363,-27.450,-27.538,-27.624,-27.711,-27.797,-27.883,
--27.968,-28.053,-28.137,-28.221,-28.304,-28.387,-28.469,-28.551,-28.632,-28.713,-28.793,-28.872,-28.951,-29.029,-29.106,-29.183,
--29.259,-29.335,-29.410,-29.484,-29.557,-29.630,-29.702,-29.774,-29.845,-29.915,-29.984,-30.053,-30.121,-30.188,-30.254,-30.320,
--30.385,-30.449,-30.512,-30.574,-30.636,-30.697,-30.756,-30.815,-30.874,-30.931,-30.987,-31.043,-31.098,-31.151,-31.204,-31.256,
--31.307,-31.357,-31.407,-31.455,-31.503,-31.549,-31.595,-31.640,-31.685,-31.728,-31.771,-31.813,-31.854,-31.895,-31.935,-31.975,
--32.013,-32.052,-32.089,-32.127,-32.164,-32.200,-32.236,-32.272,-32.307,-32.343,-32.378,-32.412,-32.447,-32.481,-32.516,-32.550,
--32.584,-32.618,-32.652,-32.687,-32.721,-32.755,-32.789,-32.823,-32.858,-32.892,-32.927,-32.961,-32.996,-33.030,-33.065,-33.100,
--33.135,-33.169,-33.204,-33.239,-33.274,-33.308,-33.343,-33.377,-33.411,-33.445,-33.479,-33.512,-33.545,-33.578,-33.610,-33.642,
--33.673,-33.704,-33.735,-33.765,-33.794,-33.823,-33.851,-33.878,-33.905,-33.930,-33.956,-33.980,-34.003,-34.026,-34.048,-34.069,
--34.090,-34.109,-34.128,-34.146,-34.163,-34.180,-34.196,-34.211,-34.225,-34.239,-34.252,-34.265,-34.278,-34.290,-34.301,-34.313,
--34.324,-34.335,-34.346,-34.356,-34.367,-34.378,-34.389,-34.401,-34.413,-34.425,-34.437,-34.450,-34.463,-34.477,-34.492,-34.507,
--34.523,-34.540,-34.557,-34.575,-34.594,-34.614,-34.634,-34.655,-34.677,-34.699,-34.722,-34.745,-34.769,-34.793,-34.818,-34.843,
--34.868,-34.893,-34.918,-34.943,-34.968,-34.993,-35.017,-35.041,-35.064,-35.087,-35.109,-35.130,-35.150,-35.168,-35.186,-35.203,
--35.218,-35.232,-35.244,-35.255,-35.265,-35.272,-35.278,-35.283,-35.286,-35.287,-35.286,-35.284,-35.279,-35.274,-35.266,-35.257,
--35.246,-35.233,-35.219,-35.204,-35.187,-35.168,-35.148,-35.127,-35.104,-35.080,-35.055,-35.029,-35.001,-34.973,-34.944,-34.913,
--34.882,-34.850,-34.817,-34.783,-34.748,-34.713,-34.677,-34.640,-34.603,-34.565,-34.526,-34.487,-34.447,-34.407,-34.366,-34.324,
--34.283,-34.240,-34.198,-34.155,-34.111,-34.068,-34.024,-33.979,-33.935,-33.891,-33.846,-33.802,-33.757,-33.713,-33.669,-33.625,
--33.581,-33.538,-33.496,-33.454,-33.413,-33.373,-33.334,-33.296,-33.259,-33.223,-33.189,-33.156,-33.125,-33.095,-33.067,-33.041,
--33.017,-32.995,-32.975,-32.957,-32.942,-32.929,-32.918,-32.909,-32.903,-32.900,-32.899,-32.900,-32.904,-32.911,-32.920,-32.931,
--32.945,-32.961,-32.979,-33.000,-33.022,-33.047,-33.074,-33.103,-33.134,-33.166,-33.200,-33.236,-33.273,-33.311,-33.350,-33.390,
--33.431,-33.472,-33.515,-33.557,-33.600,-33.643,-33.685,-33.728,-33.770,-33.811,-33.852,-33.892,-33.932,-33.970,-34.007,-34.042,
--34.076,-34.109,-34.140,-34.169,-34.196,-34.222,-34.245,-34.267,-34.286,-34.304,-34.320,-34.333,-34.345,-34.354,-34.362,-34.368,
--34.372,-34.374,-34.374,-34.374,-34.371,-34.368,-34.363,-34.358,-34.352,-34.345,-34.338,-34.331,-34.323,-34.316,-34.309,-34.303,
--34.298,-34.294,-34.291,-34.289,-34.289,-34.291,-34.295,-34.301,-34.309,-34.319,-34.333,-34.348,-34.367,-34.388,-34.412,-34.439,
--34.468,-34.501,-34.536,-34.574,-34.615,-34.658,-34.704,-34.751,-34.801,-34.853,-34.906,-34.961,-35.017,-35.074,-35.131,-35.188,
--35.246,-35.303,-35.360,-35.415,-35.469,-35.522,-35.572,-35.620,-35.665,-35.707,-35.745,-35.780,-35.811,-35.837,-35.859,-35.875,
--35.887,-35.893,-35.893,-35.888,-35.876,-35.858,-35.835,-35.804,-35.768,-35.725,-35.675,-35.619,-35.556,-35.487,-35.412,-35.331,
--35.244,-35.151,-35.053,-34.949,-34.840,-34.726,-34.608,-34.486,-34.360,-34.230,-34.098,-33.963,-33.826,-33.686,-33.546,-33.405,
--33.263,-33.122,-32.981,-32.841,-32.702,-32.566,-32.432,-32.301,-32.173,-32.049,-31.930,-31.815,-31.705,-31.601,-31.503,-31.411,
--31.326,-31.247,-31.176,-31.112,-31.055,-31.007,-30.966,-30.933,-30.908,-30.891,-30.883,-30.882,-30.889,-30.903,-30.925,-30.955,
--30.991,-31.034,-31.083,-31.138,-31.199,-31.264,-31.334,-31.408,-31.485,-31.565,-31.648,-31.732,-31.816,-31.901,-31.986,-32.069,
--32.151,-32.230,-32.307,-32.379,-32.448,-32.511,-32.570,-32.622,-32.668,-32.707,-32.738,-32.762,-32.779,-32.787,-32.786,-32.777,
--32.760,-32.734,-32.699,-32.656,-32.605,-32.545,-32.478,-32.404,-32.322,-32.234,-32.140,-32.041,-31.937,-31.829,-31.717,-31.602,
--31.485,-31.368,-31.249,-31.131,-31.014,-30.899,-30.786,-30.677,-30.572,-30.472,-30.377,-30.288,-30.206,-30.131,-30.064,-30.005,
--29.955,-29.913,-29.880,-29.857,-29.843,-29.838,-29.842,-29.856,-29.878,-29.910,-29.949,-29.996,-30.051,-30.113,-30.181,-30.255,
--30.334,-30.417,-30.504,-30.593,-30.685,-30.778,-30.871,-30.964,-31.055,-31.144,-31.231,-31.314,-31.392,-31.466,-31.533,-31.594,
--31.648,-31.695,-31.734,-31.764,-31.785,-31.798,-31.801,-31.795,-31.779,-31.754,-31.720,-31.676,-31.624,-31.562,-31.492,-31.415,
--31.329,-31.237,-31.137,-31.032,-30.922,-30.807,-30.687,-30.565,-30.440,-30.312,-30.184,-30.055,-29.927,-29.799,-29.673,-29.550,
--29.429,-29.312,-29.200,-29.091,-28.989,-28.891,-28.800,-28.716,-28.638,-28.567,-28.503,-28.447,-28.398,-28.357,-28.323,-28.297,
--28.278,-28.267,-28.262,-28.265,-28.274,-28.289,-28.311,-28.338,-28.371,-28.408,-28.450,-28.496,-28.546,-28.599,-28.655,-28.713,
--28.773,-28.835,-28.897,-28.960,-29.024,-29.087,-29.150,-29.211,-29.272,-29.331,-29.389,-29.444,-29.497,-29.548,-29.595,-29.641,
--29.683,-29.722,-29.758,-29.791,-29.820,-29.846,-29.869,-29.889,-29.905,-29.918,-29.928,-29.935,-29.938,-29.939,-29.937,-29.932,
--29.924,-29.914,-29.901,-29.885,-29.867,-29.847,-29.825,-29.800,-29.773,-29.745,-29.714,-29.681,-29.646,-29.610,-29.571,-29.531,
--29.489,-29.445,-29.399,-29.351,-29.301,-29.250,-29.196,-29.140,-29.083,-29.023,-28.961,-28.897,-28.831,-28.762,-28.691,-28.618,
--28.542,-28.464,-28.384,-28.301,-28.215,-28.127,-28.037,-27.944,-27.848,-27.750,-27.649,-27.547,-27.441,-27.334,-27.224,-27.112,
--26.999,-26.883,-26.766,-26.647,-26.526,-26.405,-26.282,-26.158,-26.034,-25.909,-25.784,-25.659,-25.534,-25.410,-25.286,-25.163,
--25.041,-24.921,-24.803,-24.686,-24.572,-24.460,-24.351,-24.245,-24.142,-24.043,-23.947,-23.855,-23.767,-23.684,-23.605,-23.530,
--23.461,-23.396,-23.336,-23.281,-23.231,-23.186,-23.147,-23.112,-23.083,-23.059,-23.039,-23.025,-23.016,-23.011,-23.011,-23.016,
--23.025,-23.038,-23.055,-23.076,-23.100,-23.128,-23.159,-23.193,-23.230,-23.270,-23.312,-23.356,-23.402,-23.450,-23.500,-23.551,
--23.604,-23.657,-23.712,-23.768,-23.824,-23.882,-23.940,-23.999,-24.058,-24.118,-24.178,-24.239,-24.301,-24.363,-24.426,-24.490,
--24.554,-24.619,-24.684,-24.751,-24.818,-24.886,-24.956,-25.026,-25.097,-25.169,-25.242,-25.315,-25.390,-25.465,-25.541,-25.618,
--25.695,-25.772,-25.849,-25.927,-26.004,-26.080,-26.156,-26.230,-26.303,-26.374,-26.444,-26.511,-26.575,-26.636,-26.694,-26.748,
--26.797,-26.843,-26.883,-26.918,-26.947,-26.971,-26.988,-26.999,-27.004,-27.001,-26.991,-26.974,-26.949,-26.917,-26.877,-26.830,
--26.775,-26.712,-26.642,-26.565,-26.480,-26.388,-26.290,-26.185,-26.074,-25.957,-25.835,-25.707,-25.575,-25.439,-25.299,-25.156,
--25.011,-24.863,-24.713,-24.562,-24.411,-24.259,-24.107,-23.957,-23.807,-23.660,-23.514,-23.372,-23.232,-23.095,-22.962,-22.833,
--22.708,-22.588,-22.472,-22.361,-22.255,-22.153,-22.057,-21.966,-21.879,-21.798,-21.721,-21.650,-21.582,-21.519,-21.460,-21.406,
--21.354,-21.307,-21.262,-21.220,-21.181,-21.144,-21.109,-21.076,-21.044,-21.013,-20.983,-20.953,-20.924,-20.894,-20.865,-20.834,
--20.803,-20.771,-20.739,-20.704,-20.669,-20.632,-20.594,-20.554,-20.512,-20.469,-20.425,-20.379,-20.331,-20.282,-20.232,-20.180,
--20.128,-20.074,-20.020,-19.965,-19.910,-19.855,-19.799,-19.744,-19.689,-19.634,-19.580,-19.527,-19.475,-19.424,-19.375,-19.327,
--19.281,-19.237,-19.195,-19.155,-19.117,-19.081,-19.048,-19.018,-18.990,-18.964,-18.941,-18.920,-18.903,-18.887,-18.875,-18.864,
--18.857,-18.851,-18.848,-18.848,-18.849,-18.852,-18.858,-18.865,-18.874,-18.884,-18.897,-18.910,-18.925,-18.940,-18.957,-18.975,
--18.993,-19.012,-19.032,-19.052,-19.072,-19.092,-19.113,-19.133,-19.154,-19.174,-19.194,-19.214,-19.233,-19.252,-19.271,-19.289,
--19.307,-19.324,-19.341,-19.357,-19.373,-19.388,-19.403,-19.417,-19.431,-19.444,-19.457,-19.470,-19.482,-19.494,-19.506,-19.517,
--19.528,-19.539,-19.549,-19.559,-19.569,-19.579,-19.589,-19.598,-19.607,-19.616,-19.625,-19.633,-19.641,-19.649,-19.656,-19.662,
--19.668,-19.673,-20.577,-20.580,-20.582,-20.582,-20.580,-20.576,-20.571,-20.563,-20.553,-20.541,-20.527,-20.510,-20.492,-20.471,
--20.447,-20.421,-20.392,-20.361,-20.328,-20.292,-20.253,-20.212,-20.168,-20.122,-20.073,-20.023,-19.969,-19.914,-19.857,-19.797,
--19.736,-19.673,-19.608,-19.541,-19.474,-19.405,-19.335,-19.265,-19.193,-19.122,-19.049,-18.977,-18.905,-18.834,-18.762,-18.692,
--18.622,-18.554,-18.486,-18.421,-18.356,-18.294,-18.233,-18.175,-18.118,-18.065,-18.013,-17.964,-17.918,-17.874,-17.833,-17.795,
--17.759,-17.727,-17.697,-17.670,-17.645,-17.624,-17.604,-17.588,-17.573,-17.561,-17.551,-17.543,-17.537,-17.533,-17.530,-17.528,
--17.528,-17.529,-17.530,-17.532,-17.534,-17.536,-17.539,-17.541,-17.543,-17.544,-17.544,-17.544,-17.542,-17.539,-17.535,-17.529,
--17.521,-17.512,-17.501,-17.487,-17.472,-17.454,-17.435,-17.413,-17.389,-17.363,-17.334,-17.304,-17.271,-17.236,-17.200,-17.161,
--17.121,-17.079,-17.036,-16.991,-16.945,-16.898,-16.850,-16.801,-16.752,-16.703,-16.653,-16.603,-16.553,-16.504,-16.455,-16.407,
--16.360,-16.315,-16.270,-16.227,-16.186,-16.146,-16.109,-16.073,-16.040,-16.009,-15.981,-15.956,-15.933,-15.913,-15.895,-15.881,
--15.870,-15.861,-15.856,-15.853,-15.854,-15.858,-15.864,-15.874,-15.886,-15.901,-15.919,-15.939,-15.962,-15.987,-16.014,-16.044,
--16.075,-16.109,-16.144,-16.180,-16.218,-16.257,-16.296,-16.337,-16.378,-16.420,-16.462,-16.504,-16.546,-16.587,-16.628,-16.669,
--16.708,-16.747,-16.784,-16.821,-16.856,-16.889,-16.921,-16.951,-16.979,-17.005,-17.030,-17.052,-17.072,-17.090,-17.106,-17.119,
--17.131,-17.140,-17.147,-17.152,-17.155,-17.156,-17.155,-17.152,-17.147,-17.141,-17.133,-17.124,-17.114,-17.102,-17.090,-17.076,
--17.062,-17.048,-17.033,-17.018,-17.003,-16.988,-16.974,-16.960,-16.947,-16.935,-16.923,-16.914,-16.905,-16.898,-16.893,-16.889,
--16.888,-16.888,-16.891,-16.896,-16.904,-16.914,-16.926,-16.941,-16.959,-16.980,-17.003,-17.030,-17.059,-17.090,-17.125,-17.162,
--17.202,-17.245,-17.290,-17.338,-17.388,-17.441,-17.496,-17.553,-17.612,-17.674,-17.737,-17.801,-17.868,-17.935,-18.004,-18.074,
--18.146,-18.218,-18.290,-18.364,-18.437,-18.511,-18.586,-18.660,-18.734,-18.808,-18.881,-18.955,-19.027,-19.099,-19.170,-19.240,
--19.309,-19.377,-19.444,-19.510,-19.574,-19.637,-19.699,-19.760,-19.819,-19.877,-19.933,-19.988,-20.041,-20.093,-20.144,-20.193,
--20.241,-20.288,-20.333,-20.377,-20.420,-20.462,-20.503,-20.543,-20.581,-20.619,-20.656,-20.692,-20.728,-20.763,-20.797,-20.831,
--20.864,-20.897,-20.930,-20.962,-20.995,-21.027,-21.059,-21.091,-21.122,-21.155,-21.187,-21.219,-21.251,-21.284,-21.317,-21.350,
--21.384,-21.418,-21.452,-21.487,-21.522,-21.558,-21.594,-21.631,-21.668,-21.705,-21.743,-21.782,-21.821,-21.861,-21.901,-21.941,
--21.982,-22.024,-22.066,-22.108,-22.151,-22.195,-22.239,-22.283,-22.328,-22.373,-22.419,-22.465,-22.512,-22.559,-22.607,-22.654,
--22.703,-22.752,-22.801,-22.851,-22.901,-22.952,-23.003,-23.054,-23.106,-23.158,-23.211,-23.265,-23.319,-23.373,-23.428,-23.483,
--23.539,-23.596,-23.653,-23.711,-23.769,-23.828,-23.887,-23.947,-24.008,-24.069,-24.132,-24.194,-24.258,-24.322,-24.387,-24.453,
--24.519,-24.587,-24.655,-24.723,-24.793,-24.863,-24.934,-25.006,-25.078,-25.152,-25.226,-25.301,-25.376,-25.452,-25.529,-25.607,
--25.685,-25.764,-25.844,-25.924,-26.004,-26.086,-26.167,-26.249,-26.332,-26.415,-26.498,-26.581,-26.665,-26.749,-26.833,-26.917,
--27.001,-27.086,-27.170,-27.254,-27.338,-27.422,-27.506,-27.590,-27.673,-27.756,-27.838,-27.920,-28.002,-28.083,-28.164,-28.244,
--28.324,-28.403,-28.481,-28.559,-28.635,-28.712,-28.787,-28.862,-28.936,-29.009,-29.081,-29.152,-29.223,-29.293,-29.362,-29.430,
--29.497,-29.563,-29.628,-29.693,-29.756,-29.819,-29.881,-29.941,-30.001,-30.060,-30.119,-30.176,-30.232,-30.288,-30.342,-30.396,
--30.449,-30.501,-30.552,-30.603,-30.652,-30.701,-30.749,-30.796,-30.842,-30.888,-30.933,-30.977,-31.020,-31.063,-31.105,-31.146,
--31.186,-31.226,-31.265,-31.304,-31.342,-31.379,-31.416,-31.453,-31.488,-31.524,-31.558,-31.593,-31.627,-31.660,-31.693,-31.726,
--31.758,-31.791,-31.822,-31.854,-31.885,-31.916,-31.947,-31.978,-32.009,-32.039,-32.070,-32.100,-32.130,-32.160,-32.190,-32.220,
--32.250,-32.280,-32.311,-32.341,-32.371,-32.401,-32.431,-32.461,-32.491,-32.521,-32.551,-32.582,-32.612,-32.642,-32.672,-32.702,
--32.732,-32.762,-32.792,-32.821,-32.851,-32.880,-32.910,-32.939,-32.968,-32.996,-33.025,-33.053,-33.080,-33.108,-33.135,-33.162,
--33.188,-33.214,-33.240,-33.265,-33.290,-33.314,-33.338,-33.361,-33.384,-33.406,-33.428,-33.450,-33.471,-33.491,-33.511,-33.530,
--33.549,-33.567,-33.585,-33.603,-33.620,-33.636,-33.653,-33.668,-33.684,-33.699,-33.714,-33.728,-33.742,-33.756,-33.770,-33.783,
--33.797,-33.810,-33.823,-33.836,-33.849,-33.861,-33.874,-33.887,-33.899,-33.912,-33.925,-33.937,-33.950,-33.963,-33.975,-33.988,
--34.001,-34.014,-34.027,-34.039,-34.052,-34.065,-34.078,-34.090,-34.103,-34.116,-34.128,-34.140,-34.152,-34.164,-34.175,-34.187,
--34.197,-34.208,-34.218,-34.228,-34.237,-34.246,-34.254,-34.262,-34.269,-34.276,-34.282,-34.287,-34.292,-34.296,-34.299,-34.302,
--34.304,-34.305,-34.306,-34.306,-34.305,-34.304,-34.302,-34.299,-34.295,-34.291,-34.287,-34.282,-34.276,-34.269,-34.263,-34.255,
--34.247,-34.239,-34.230,-34.221,-34.211,-34.201,-34.191,-34.180,-34.168,-34.157,-34.145,-34.132,-34.120,-34.106,-34.093,-34.079,
--34.064,-34.049,-34.034,-34.018,-34.001,-33.984,-33.966,-33.947,-33.928,-33.908,-33.887,-33.866,-33.843,-33.820,-33.795,-33.770,
--33.743,-33.716,-33.687,-33.658,-33.627,-33.595,-33.562,-33.528,-33.493,-33.457,-33.419,-33.381,-33.342,-33.302,-33.261,-33.219,
--33.176,-33.133,-33.089,-33.045,-33.001,-32.956,-32.911,-32.866,-32.822,-32.777,-32.734,-32.690,-32.648,-32.606,-32.566,-32.527,
--32.489,-32.452,-32.417,-32.384,-32.353,-32.324,-32.298,-32.273,-32.251,-32.232,-32.215,-32.201,-32.190,-32.181,-32.176,-32.173,
--32.174,-32.177,-32.184,-32.193,-32.205,-32.221,-32.239,-32.260,-32.283,-32.309,-32.338,-32.369,-32.402,-32.437,-32.474,-32.513,
--32.554,-32.595,-32.638,-32.682,-32.727,-32.772,-32.818,-32.864,-32.909,-32.955,-32.999,-33.044,-33.087,-33.129,-33.170,-33.209,
--33.247,-33.283,-33.317,-33.349,-33.379,-33.406,-33.431,-33.454,-33.474,-33.491,-33.506,-33.518,-33.528,-33.535,-33.540,-33.542,
--33.542,-33.539,-33.535,-33.528,-33.520,-33.510,-33.498,-33.485,-33.471,-33.456,-33.441,-33.425,-33.409,-33.392,-33.377,-33.361,
--33.346,-33.333,-33.320,-33.309,-33.300,-33.292,-33.287,-33.284,-33.283,-33.285,-33.289,-33.297,-33.307,-33.320,-33.337,-33.357,
--33.380,-33.406,-33.435,-33.467,-33.502,-33.540,-33.581,-33.625,-33.671,-33.720,-33.770,-33.823,-33.877,-33.932,-33.989,-34.046,
--34.104,-34.162,-34.220,-34.277,-34.333,-34.389,-34.442,-34.494,-34.543,-34.590,-34.634,-34.674,-34.711,-34.744,-34.773,-34.797,
--34.816,-34.830,-34.839,-34.843,-34.840,-34.832,-34.818,-34.798,-34.771,-34.739,-34.700,-34.655,-34.603,-34.545,-34.482,-34.412,
--34.336,-34.255,-34.168,-34.076,-33.978,-33.876,-33.770,-33.659,-33.545,-33.427,-33.307,-33.183,-33.057,-32.930,-32.801,-32.671,
--32.541,-32.411,-32.281,-32.151,-32.024,-31.898,-31.774,-31.653,-31.535,-31.420,-31.309,-31.203,-31.101,-31.004,-30.912,-30.826,
--30.745,-30.671,-30.603,-30.541,-30.486,-30.438,-30.396,-30.361,-30.332,-30.311,-30.296,-30.288,-30.286,-30.291,-30.301,-30.318,
--30.340,-30.367,-30.399,-30.436,-30.477,-30.522,-30.570,-30.621,-30.675,-30.731,-30.788,-30.846,-30.905,-30.963,-31.022,-31.079,
--31.135,-31.189,-31.240,-31.289,-31.334,-31.375,-31.413,-31.445,-31.474,-31.496,-31.514,-31.526,-31.532,-31.532,-31.526,-31.514,
--31.495,-31.471,-31.440,-31.404,-31.361,-31.313,-31.260,-31.201,-31.137,-31.069,-30.997,-30.921,-30.841,-30.759,-30.674,-30.588,
--30.500,-30.412,-30.323,-30.235,-30.147,-30.061,-29.976,-29.895,-29.816,-29.740,-29.669,-29.602,-29.540,-29.483,-29.432,-29.386,
--29.347,-29.314,-29.288,-29.268,-29.256,-29.250,-29.251,-29.259,-29.274,-29.296,-29.323,-29.358,-29.398,-29.443,-29.494,-29.550,
--29.610,-29.674,-29.741,-29.812,-29.884,-29.959,-30.035,-30.112,-30.188,-30.264,-30.340,-30.413,-30.484,-30.553,-30.618,-30.680,
--30.737,-30.789,-30.836,-30.878,-30.914,-30.944,-30.967,-30.983,-30.993,-30.996,-30.991,-30.980,-30.961,-30.936,-30.903,-30.864,
--30.818,-30.766,-30.708,-30.644,-30.574,-30.500,-30.421,-30.338,-30.251,-30.161,-30.068,-29.973,-29.877,-29.779,-29.681,-29.583,
--29.485,-29.388,-29.293,-29.200,-29.109,-29.022,-28.937,-28.857,-28.781,-28.710,-28.643,-28.582,-28.526,-28.476,-28.433,-28.395,
--28.363,-28.338,-28.319,-28.306,-28.300,-28.300,-28.307,-28.319,-28.338,-28.362,-28.391,-28.426,-28.466,-28.511,-28.561,-28.614,
--28.671,-28.732,-28.795,-28.862,-28.930,-29.001,-29.073,-29.146,-29.220,-29.295,-29.369,-29.443,-29.517,-29.589,-29.660,-29.729,
--29.796,-29.861,-29.923,-29.982,-30.038,-30.091,-30.140,-30.186,-30.227,-30.264,-30.298,-30.326,-30.351,-30.371,-30.386,-30.397,
--30.403,-30.405,-30.402,-30.394,-30.381,-30.365,-30.343,-30.318,-30.287,-30.253,-30.215,-30.172,-30.126,-30.076,-30.022,-29.964,
--29.903,-29.839,-29.771,-29.701,-29.627,-29.551,-29.472,-29.390,-29.306,-29.220,-29.132,-29.041,-28.949,-28.855,-28.759,-28.661,
--28.562,-28.462,-28.360,-28.257,-28.153,-28.048,-27.942,-27.835,-27.728,-27.619,-27.510,-27.401,-27.291,-27.181,-27.070,-26.960,
--26.849,-26.738,-26.627,-26.516,-26.405,-26.295,-26.185,-26.075,-25.966,-25.857,-25.750,-25.643,-25.537,-25.432,-25.328,-25.225,
--25.124,-25.024,-24.926,-24.829,-24.734,-24.641,-24.551,-24.462,-24.376,-24.291,-24.210,-24.131,-24.055,-23.981,-23.911,-23.843,
--23.778,-23.717,-23.659,-23.604,-23.553,-23.505,-23.460,-23.420,-23.382,-23.349,-23.319,-23.292,-23.270,-23.251,-23.235,-23.224,
--23.216,-23.211,-23.211,-23.213,-23.220,-23.229,-23.243,-23.259,-23.279,-23.302,-23.329,-23.358,-23.391,-23.426,-23.465,-23.506,
--23.550,-23.597,-23.646,-23.698,-23.752,-23.809,-23.868,-23.929,-23.992,-24.057,-24.125,-24.194,-24.265,-24.338,-24.412,-24.488,
--24.566,-24.645,-24.725,-24.806,-24.889,-24.972,-25.056,-25.141,-25.227,-25.313,-25.399,-25.485,-25.572,-25.658,-25.744,-25.829,
--25.914,-25.997,-26.080,-26.161,-26.240,-26.318,-26.393,-26.467,-26.537,-26.605,-26.670,-26.731,-26.790,-26.844,-26.894,-26.940,
--26.982,-27.019,-27.051,-27.077,-27.099,-27.115,-27.126,-27.131,-27.130,-27.123,-27.110,-27.091,-27.066,-27.034,-26.997,-26.953,
--26.904,-26.848,-26.787,-26.719,-26.647,-26.568,-26.485,-26.396,-26.303,-26.205,-26.103,-25.997,-25.887,-25.774,-25.658,-25.539,
--25.418,-25.295,-25.170,-25.044,-24.917,-24.790,-24.662,-24.534,-24.407,-24.281,-24.155,-24.031,-23.909,-23.789,-23.671,-23.555,
--23.442,-23.331,-23.224,-23.120,-23.019,-22.921,-22.827,-22.737,-22.649,-22.566,-22.485,-22.409,-22.335,-22.265,-22.199,-22.135,
--22.074,-22.016,-21.961,-21.909,-21.858,-21.810,-21.764,-21.719,-21.676,-21.635,-21.595,-21.555,-21.516,-21.478,-21.441,-21.403,
--21.366,-21.328,-21.291,-21.252,-21.214,-21.175,-21.135,-21.094,-21.052,-21.010,-20.967,-20.922,-20.877,-20.831,-20.784,-20.737,
--20.688,-20.639,-20.589,-20.539,-20.488,-20.437,-20.385,-20.334,-20.283,-20.231,-20.181,-20.130,-20.081,-20.032,-19.984,-19.937,
--19.891,-19.846,-19.803,-19.762,-19.722,-19.684,-19.648,-19.614,-19.582,-19.552,-19.525,-19.499,-19.476,-19.456,-19.437,-19.421,
--19.408,-19.397,-19.388,-19.382,-19.378,-19.376,-19.376,-19.379,-19.383,-19.390,-19.399,-19.409,-19.422,-19.436,-19.451,-19.468,
--19.487,-19.507,-19.528,-19.550,-19.573,-19.597,-19.622,-19.648,-19.674,-19.701,-19.728,-19.756,-19.783,-19.812,-19.840,-19.868,
--19.897,-19.925,-19.953,-19.981,-20.009,-20.037,-20.064,-20.091,-20.118,-20.144,-20.170,-20.195,-20.220,-20.244,-20.268,-20.292,
--20.314,-20.336,-20.358,-20.378,-20.398,-20.418,-20.436,-20.454,-20.470,-20.486,-20.501,-20.515,-20.527,-20.539,-20.549,-20.558,
--20.566,-20.572,-20.577,-21.129,-21.127,-21.123,-21.118,-21.111,-21.102,-21.091,-21.078,-21.064,-21.047,-21.029,-21.009,-20.986,
--20.962,-20.935,-20.907,-20.876,-20.844,-20.809,-20.773,-20.735,-20.695,-20.652,-20.609,-20.563,-20.516,-20.467,-20.417,-20.365,
--20.312,-20.258,-20.203,-20.147,-20.090,-20.032,-19.973,-19.914,-19.855,-19.796,-19.736,-19.677,-19.618,-19.559,-19.500,-19.443,
--19.386,-19.330,-19.274,-19.221,-19.168,-19.117,-19.067,-19.019,-18.973,-18.928,-18.886,-18.845,-18.806,-18.769,-18.735,-18.702,
--18.672,-18.643,-18.617,-18.593,-18.571,-18.551,-18.533,-18.516,-18.502,-18.489,-18.479,-18.469,-18.461,-18.455,-18.449,-18.445,
--18.442,-18.439,-18.438,-18.436,-18.435,-18.435,-18.434,-18.433,-18.432,-18.431,-18.429,-18.427,-18.423,-18.419,-18.414,-18.407,
--18.400,-18.391,-18.380,-18.368,-18.354,-18.339,-18.321,-18.302,-18.282,-18.259,-18.235,-18.208,-18.180,-18.150,-18.119,-18.085,
--18.051,-18.014,-17.976,-17.937,-17.897,-17.855,-17.813,-17.769,-17.725,-17.680,-17.635,-17.590,-17.544,-17.499,-17.453,-17.408,
--17.364,-17.320,-17.277,-17.235,-17.195,-17.155,-17.117,-17.081,-17.047,-17.014,-16.984,-16.955,-16.929,-16.905,-16.884,-16.865,
--16.849,-16.835,-16.824,-16.816,-16.810,-16.807,-16.807,-16.810,-16.815,-16.823,-16.833,-16.846,-16.862,-16.880,-16.900,-16.922,
--16.947,-16.973,-17.001,-17.031,-17.063,-17.096,-17.131,-17.166,-17.203,-17.240,-17.278,-17.317,-17.355,-17.395,-17.434,-17.473,
--17.512,-17.550,-17.588,-17.625,-17.661,-17.697,-17.731,-17.764,-17.796,-17.827,-17.856,-17.883,-17.909,-17.934,-17.957,-17.978,
--17.997,-18.014,-18.030,-18.044,-18.057,-18.068,-18.077,-18.084,-18.091,-18.095,-18.098,-18.101,-18.101,-18.101,-18.100,-18.098,
--18.096,-18.092,-18.089,-18.085,-18.081,-18.077,-18.073,-18.069,-18.065,-18.063,-18.060,-18.059,-18.059,-18.059,-18.061,-18.064,
--18.069,-18.075,-18.083,-18.092,-18.103,-18.116,-18.132,-18.149,-18.168,-18.189,-18.213,-18.238,-18.266,-18.296,-18.328,-18.363,
--18.399,-18.438,-18.478,-18.521,-18.566,-18.612,-18.660,-18.711,-18.762,-18.816,-18.871,-18.927,-18.984,-19.043,-19.103,-19.163,
--19.225,-19.287,-19.350,-19.413,-19.477,-19.541,-19.605,-19.669,-19.733,-19.797,-19.860,-19.923,-19.986,-20.048,-20.109,-20.169,
--20.229,-20.288,-20.346,-20.403,-20.459,-20.513,-20.567,-20.619,-20.671,-20.721,-20.770,-20.817,-20.864,-20.909,-20.953,-20.996,
--21.038,-21.078,-21.118,-21.156,-21.194,-21.230,-21.266,-21.301,-21.335,-21.368,-21.401,-21.433,-21.465,-21.496,-21.526,-21.556,
--21.586,-21.616,-21.645,-21.675,-21.704,-21.733,-21.762,-21.792,-21.821,-21.851,-21.881,-21.911,-21.942,-21.972,-22.004,-22.035,
--22.067,-22.100,-22.133,-22.166,-22.200,-22.235,-22.270,-22.305,-22.341,-22.378,-22.415,-22.452,-22.490,-22.529,-22.568,-22.608,
--22.648,-22.688,-22.729,-22.770,-22.812,-22.854,-22.897,-22.940,-22.983,-23.027,-23.070,-23.115,-23.159,-23.204,-23.249,-23.294,
--23.340,-23.386,-23.432,-23.478,-23.525,-23.571,-23.618,-23.666,-23.713,-23.761,-23.809,-23.857,-23.905,-23.954,-24.003,-24.053,
--24.103,-24.153,-24.203,-24.254,-24.305,-24.357,-24.409,-24.462,-24.515,-24.568,-24.622,-24.677,-24.732,-24.788,-24.844,-24.901,
--24.958,-25.017,-25.075,-25.135,-25.195,-25.256,-25.317,-25.379,-25.442,-25.506,-25.570,-25.635,-25.700,-25.767,-25.834,-25.901,
--25.969,-26.038,-26.107,-26.177,-26.248,-26.319,-26.390,-26.462,-26.535,-26.607,-26.681,-26.754,-26.828,-26.902,-26.976,-27.051,
--27.125,-27.200,-27.274,-27.349,-27.424,-27.499,-27.573,-27.647,-27.722,-27.795,-27.869,-27.942,-28.015,-28.088,-28.160,-28.232,
--28.303,-28.374,-28.444,-28.513,-28.582,-28.650,-28.718,-28.785,-28.851,-28.916,-28.981,-29.045,-29.108,-29.170,-29.232,-29.292,
--29.352,-29.411,-29.469,-29.527,-29.583,-29.639,-29.694,-29.748,-29.801,-29.853,-29.905,-29.955,-30.005,-30.054,-30.103,-30.150,
--30.197,-30.243,-30.288,-30.333,-30.376,-30.419,-30.462,-30.504,-30.545,-30.585,-30.625,-30.664,-30.703,-30.741,-30.778,-30.815,
--30.851,-30.887,-30.922,-30.957,-30.991,-31.025,-31.059,-31.092,-31.124,-31.156,-31.188,-31.220,-31.251,-31.281,-31.312,-31.342,
--31.372,-31.401,-31.431,-31.460,-31.488,-31.517,-31.545,-31.573,-31.601,-31.629,-31.657,-31.684,-31.711,-31.738,-31.765,-31.792,
--31.819,-31.846,-31.872,-31.898,-31.925,-31.951,-31.977,-32.003,-32.029,-32.054,-32.080,-32.106,-32.131,-32.157,-32.182,-32.207,
--32.232,-32.257,-32.282,-32.307,-32.332,-32.356,-32.381,-32.405,-32.429,-32.453,-32.477,-32.501,-32.524,-32.548,-32.571,-32.594,
--32.617,-32.640,-32.662,-32.685,-32.707,-32.729,-32.751,-32.772,-32.794,-32.815,-32.836,-32.857,-32.877,-32.898,-32.918,-32.937,
--32.957,-32.976,-32.996,-33.015,-33.033,-33.052,-33.070,-33.088,-33.105,-33.123,-33.140,-33.157,-33.173,-33.189,-33.205,-33.221,
--33.237,-33.252,-33.266,-33.281,-33.295,-33.309,-33.322,-33.335,-33.348,-33.360,-33.372,-33.383,-33.394,-33.405,-33.415,-33.424,
--33.434,-33.442,-33.450,-33.458,-33.465,-33.472,-33.478,-33.483,-33.488,-33.492,-33.496,-33.499,-33.502,-33.504,-33.505,-33.506,
--33.506,-33.506,-33.505,-33.504,-33.502,-33.499,-33.496,-33.492,-33.488,-33.484,-33.479,-33.474,-33.468,-33.462,-33.456,-33.449,
--33.442,-33.435,-33.428,-33.420,-33.413,-33.405,-33.397,-33.390,-33.382,-33.374,-33.366,-33.359,-33.351,-33.344,-33.336,-33.329,
--33.323,-33.316,-33.309,-33.303,-33.297,-33.291,-33.285,-33.280,-33.274,-33.269,-33.264,-33.259,-33.254,-33.249,-33.244,-33.239,
--33.234,-33.228,-33.222,-33.216,-33.210,-33.203,-33.196,-33.188,-33.180,-33.171,-33.161,-33.151,-33.139,-33.127,-33.114,-33.099,
--33.084,-33.067,-33.049,-33.030,-33.010,-32.989,-32.966,-32.942,-32.916,-32.890,-32.862,-32.832,-32.802,-32.770,-32.737,-32.703,
--32.668,-32.632,-32.595,-32.557,-32.518,-32.479,-32.439,-32.399,-32.359,-32.318,-32.277,-32.236,-32.196,-32.155,-32.116,-32.076,
--32.038,-32.001,-31.964,-31.929,-31.895,-31.862,-31.831,-31.802,-31.775,-31.749,-31.726,-31.704,-31.685,-31.668,-31.653,-31.641,
--31.631,-31.624,-31.619,-31.617,-31.617,-31.620,-31.625,-31.633,-31.643,-31.655,-31.669,-31.686,-31.705,-31.725,-31.748,-31.772,
--31.797,-31.825,-31.853,-31.882,-31.913,-31.944,-31.976,-32.008,-32.040,-32.073,-32.106,-32.138,-32.170,-32.201,-32.232,-32.261,
--32.290,-32.318,-32.344,-32.369,-32.392,-32.414,-32.433,-32.452,-32.468,-32.483,-32.495,-32.506,-32.515,-32.522,-32.526,-32.530,
--32.531,-32.531,-32.529,-32.525,-32.520,-32.514,-32.506,-32.498,-32.488,-32.478,-32.467,-32.456,-32.445,-32.433,-32.422,-32.411,
--32.400,-32.390,-32.381,-32.373,-32.366,-32.361,-32.357,-32.354,-32.354,-32.355,-32.359,-32.364,-32.372,-32.382,-32.395,-32.410,
--32.427,-32.446,-32.469,-32.493,-32.520,-32.549,-32.580,-32.614,-32.649,-32.686,-32.725,-32.766,-32.808,-32.851,-32.894,-32.939,
--32.984,-33.030,-33.075,-33.121,-33.166,-33.210,-33.253,-33.295,-33.335,-33.373,-33.410,-33.444,-33.475,-33.504,-33.529,-33.551,
--33.570,-33.585,-33.596,-33.603,-33.606,-33.604,-33.598,-33.587,-33.572,-33.552,-33.527,-33.497,-33.463,-33.424,-33.380,-33.331,
--33.278,-33.221,-33.159,-33.093,-33.024,-32.950,-32.873,-32.793,-32.709,-32.623,-32.534,-32.444,-32.351,-32.256,-32.161,-32.064,
--31.966,-31.869,-31.771,-31.674,-31.577,-31.482,-31.388,-31.295,-31.205,-31.116,-31.031,-30.948,-30.868,-30.792,-30.719,-30.650,
--30.585,-30.524,-30.468,-30.416,-30.368,-30.325,-30.287,-30.253,-30.224,-30.200,-30.181,-30.165,-30.155,-30.149,-30.146,-30.148,
--30.154,-30.164,-30.177,-30.193,-30.212,-30.234,-30.258,-30.284,-30.312,-30.341,-30.372,-30.403,-30.435,-30.467,-30.498,-30.530,
--30.560,-30.589,-30.617,-30.643,-30.666,-30.688,-30.707,-30.723,-30.736,-30.746,-30.753,-30.756,-30.755,-30.751,-30.743,-30.731,
--30.715,-30.695,-30.671,-30.644,-30.613,-30.578,-30.540,-30.498,-30.453,-30.406,-30.356,-30.303,-30.249,-30.192,-30.134,-30.074,
--30.014,-29.953,-29.892,-29.831,-29.770,-29.710,-29.651,-29.593,-29.538,-29.484,-29.432,-29.384,-29.338,-29.295,-29.256,-29.220,
--29.188,-29.160,-29.136,-29.116,-29.101,-29.090,-29.083,-29.080,-29.082,-29.089,-29.099,-29.114,-29.132,-29.155,-29.180,-29.210,
--29.242,-29.277,-29.315,-29.355,-29.397,-29.441,-29.486,-29.532,-29.578,-29.625,-29.672,-29.718,-29.763,-29.807,-29.850,-29.890,
--29.928,-29.964,-29.997,-30.027,-30.054,-30.076,-30.095,-30.110,-30.121,-30.128,-30.130,-30.127,-30.120,-30.109,-30.093,-30.072,
--30.046,-30.017,-29.983,-29.945,-29.902,-29.856,-29.807,-29.754,-29.698,-29.639,-29.578,-29.515,-29.449,-29.382,-29.314,-29.245,
--29.176,-29.106,-29.037,-28.968,-28.901,-28.834,-28.769,-28.706,-28.645,-28.587,-28.532,-28.480,-28.431,-28.386,-28.344,-28.307,
--28.274,-28.245,-28.221,-28.201,-28.185,-28.175,-28.169,-28.168,-28.171,-28.179,-28.192,-28.209,-28.230,-28.256,-28.285,-28.319,
--28.355,-28.396,-28.439,-28.486,-28.535,-28.586,-28.640,-28.696,-28.753,-28.811,-28.870,-28.930,-28.990,-29.050,-29.110,-29.169,
--29.228,-29.285,-29.340,-29.394,-29.446,-29.496,-29.543,-29.588,-29.630,-29.668,-29.703,-29.735,-29.763,-29.787,-29.808,-29.824,
--29.836,-29.845,-29.849,-29.848,-29.843,-29.835,-29.821,-29.804,-29.782,-29.756,-29.726,-29.691,-29.653,-29.611,-29.565,-29.515,
--29.462,-29.405,-29.345,-29.281,-29.215,-29.145,-29.073,-28.998,-28.921,-28.842,-28.760,-28.676,-28.591,-28.503,-28.414,-28.324,
--28.233,-28.140,-28.046,-27.952,-27.856,-27.761,-27.664,-27.567,-27.470,-27.373,-27.276,-27.179,-27.082,-26.985,-26.888,-26.792,
--26.696,-26.601,-26.506,-26.412,-26.318,-26.225,-26.133,-26.042,-25.951,-25.862,-25.773,-25.686,-25.599,-25.514,-25.429,-25.346,
--25.264,-25.183,-25.103,-25.025,-24.948,-24.873,-24.798,-24.726,-24.655,-24.585,-24.517,-24.451,-24.386,-24.324,-24.263,-24.204,
--24.147,-24.092,-24.039,-23.988,-23.939,-23.893,-23.849,-23.807,-23.768,-23.731,-23.697,-23.665,-23.636,-23.610,-23.587,-23.566,
--23.548,-23.533,-23.521,-23.513,-23.507,-23.504,-23.504,-23.507,-23.514,-23.523,-23.536,-23.551,-23.570,-23.592,-23.617,-23.646,
--23.677,-23.711,-23.748,-23.789,-23.832,-23.878,-23.926,-23.978,-24.032,-24.089,-24.148,-24.209,-24.273,-24.339,-24.407,-24.477,
--24.548,-24.622,-24.696,-24.773,-24.850,-24.928,-25.007,-25.087,-25.168,-25.249,-25.329,-25.410,-25.491,-25.571,-25.650,-25.728,
--25.805,-25.881,-25.956,-26.028,-26.099,-26.167,-26.233,-26.296,-26.357,-26.414,-26.468,-26.519,-26.566,-26.609,-26.648,-26.683,
--26.714,-26.740,-26.762,-26.778,-26.790,-26.797,-26.799,-26.796,-26.788,-26.775,-26.756,-26.732,-26.703,-26.669,-26.629,-26.585,
--26.536,-26.481,-26.422,-26.358,-26.290,-26.217,-26.140,-26.059,-25.974,-25.886,-25.794,-25.699,-25.601,-25.500,-25.397,-25.292,
--25.185,-25.076,-24.965,-24.854,-24.742,-24.629,-24.516,-24.403,-24.290,-24.177,-24.065,-23.954,-23.844,-23.736,-23.629,-23.524,
--23.420,-23.319,-23.220,-23.124,-23.030,-22.939,-22.850,-22.764,-22.681,-22.601,-22.523,-22.449,-22.377,-22.309,-22.243,-22.180,
--22.120,-22.062,-22.008,-21.955,-21.906,-21.858,-21.813,-21.770,-21.729,-21.689,-21.652,-21.616,-21.581,-21.548,-21.516,-21.485,
--21.455,-21.426,-21.398,-21.370,-21.342,-21.315,-21.288,-21.261,-21.235,-21.208,-21.181,-21.154,-21.127,-21.100,-21.073,-21.045,
--21.017,-20.989,-20.960,-20.931,-20.902,-20.873,-20.844,-20.814,-20.784,-20.755,-20.725,-20.695,-20.666,-20.637,-20.608,-20.580,
--20.552,-20.524,-20.497,-20.471,-20.446,-20.421,-20.398,-20.375,-20.354,-20.333,-20.314,-20.296,-20.279,-20.264,-20.250,-20.237,
--20.226,-20.217,-20.208,-20.202,-20.196,-20.193,-20.191,-20.190,-20.191,-20.193,-20.197,-20.202,-20.208,-20.216,-20.225,-20.236,
--20.247,-20.260,-20.274,-20.289,-20.305,-20.322,-20.340,-20.358,-20.378,-20.398,-20.419,-20.440,-20.462,-20.484,-20.507,-20.530,
--20.553,-20.577,-20.601,-20.624,-20.648,-20.672,-20.696,-20.720,-20.743,-20.766,-20.789,-20.812,-20.834,-20.856,-20.878,-20.899,
--20.919,-20.939,-20.958,-20.976,-20.994,-21.010,-21.026,-21.041,-21.055,-21.068,-21.080,-21.091,-21.100,-21.108,-21.115,-21.121,
--21.125,-21.128,-21.129,-21.129,-21.973,-21.961,-21.947,-21.933,-21.917,-21.900,-21.883,-21.864,-21.844,-21.823,-21.801,-21.777,
--21.753,-21.728,-21.701,-21.673,-21.645,-21.615,-21.584,-21.552,-21.520,-21.486,-21.452,-21.416,-21.380,-21.343,-21.306,-21.268,
--21.229,-21.190,-21.150,-21.110,-21.070,-21.029,-20.988,-20.947,-20.906,-20.865,-20.825,-20.784,-20.744,-20.704,-20.664,-20.625,
--20.587,-20.549,-20.512,-20.476,-20.440,-20.405,-20.372,-20.339,-20.307,-20.276,-20.247,-20.218,-20.191,-20.165,-20.140,-20.116,
--20.093,-20.072,-20.051,-20.032,-20.014,-19.996,-19.980,-19.965,-19.951,-19.938,-19.925,-19.913,-19.902,-19.891,-19.881,-19.872,
--19.863,-19.854,-19.845,-19.836,-19.827,-19.819,-19.810,-19.800,-19.791,-19.781,-19.770,-19.758,-19.746,-19.734,-19.720,-19.705,
--19.690,-19.673,-19.655,-19.636,-19.616,-19.594,-19.571,-19.547,-19.522,-19.495,-19.467,-19.438,-19.407,-19.375,-19.342,-19.308,
--19.272,-19.236,-19.198,-19.160,-19.121,-19.080,-19.040,-18.998,-18.956,-18.914,-18.871,-18.828,-18.785,-18.742,-18.700,-18.657,
--18.615,-18.574,-18.533,-18.493,-18.453,-18.415,-18.378,-18.342,-18.308,-18.275,-18.243,-18.213,-18.185,-18.159,-18.135,-18.112,
--18.092,-18.073,-18.057,-18.043,-18.031,-18.022,-18.014,-18.009,-18.006,-18.006,-18.007,-18.011,-18.017,-18.025,-18.035,-18.048,
--18.062,-18.078,-18.096,-18.116,-18.137,-18.160,-18.184,-18.210,-18.237,-18.265,-18.295,-18.325,-18.356,-18.388,-18.420,-18.453,
--18.487,-18.520,-18.554,-18.588,-18.622,-18.656,-18.689,-18.723,-18.756,-18.788,-18.820,-18.852,-18.882,-18.912,-18.941,-18.970,
--18.997,-19.024,-19.050,-19.074,-19.098,-19.121,-19.143,-19.164,-19.184,-19.204,-19.222,-19.240,-19.256,-19.273,-19.288,-19.303,
--19.317,-19.330,-19.344,-19.357,-19.369,-19.381,-19.394,-19.406,-19.418,-19.430,-19.442,-19.455,-19.468,-19.481,-19.494,-19.509,
--19.523,-19.539,-19.555,-19.572,-19.589,-19.608,-19.627,-19.648,-19.669,-19.691,-19.715,-19.739,-19.765,-19.791,-19.819,-19.847,
--19.877,-19.908,-19.939,-19.972,-20.006,-20.040,-20.075,-20.112,-20.149,-20.187,-20.225,-20.264,-20.304,-20.344,-20.385,-20.426,
--20.467,-20.509,-20.550,-20.592,-20.634,-20.677,-20.719,-20.760,-20.802,-20.844,-20.885,-20.926,-20.966,-21.006,-21.046,-21.085,
--21.123,-21.161,-21.199,-21.235,-21.271,-21.307,-21.341,-21.375,-21.409,-21.442,-21.474,-21.505,-21.536,-21.566,-21.596,-21.625,
--21.653,-21.681,-21.708,-21.735,-21.762,-21.788,-21.814,-21.840,-21.866,-21.891,-21.916,-21.941,-21.966,-21.992,-22.017,-22.042,
--22.068,-22.094,-22.120,-22.146,-22.173,-22.200,-22.228,-22.256,-22.284,-22.313,-22.343,-22.373,-22.404,-22.435,-22.468,-22.500,
--22.534,-22.568,-22.603,-22.638,-22.674,-22.711,-22.749,-22.787,-22.826,-22.866,-22.906,-22.947,-22.988,-23.030,-23.072,-23.115,
--23.159,-23.203,-23.247,-23.292,-23.337,-23.383,-23.429,-23.475,-23.522,-23.568,-23.615,-23.662,-23.710,-23.757,-23.805,-23.853,
--23.900,-23.948,-23.996,-24.044,-24.092,-24.140,-24.188,-24.236,-24.284,-24.332,-24.380,-24.427,-24.475,-24.523,-24.571,-24.619,
--24.667,-24.715,-24.763,-24.811,-24.859,-24.907,-24.955,-25.003,-25.052,-25.100,-25.149,-25.198,-25.247,-25.297,-25.346,-25.396,
--25.447,-25.497,-25.548,-25.599,-25.651,-25.703,-25.755,-25.808,-25.861,-25.915,-25.969,-26.023,-26.078,-26.134,-26.190,-26.246,
--26.303,-26.360,-26.417,-26.475,-26.534,-26.593,-26.652,-26.712,-26.772,-26.832,-26.893,-26.954,-27.015,-27.076,-27.138,-27.200,
--27.262,-27.324,-27.387,-27.449,-27.512,-27.574,-27.637,-27.699,-27.761,-27.824,-27.886,-27.948,-28.009,-28.071,-28.132,-28.193,
--28.254,-28.314,-28.374,-28.433,-28.492,-28.551,-28.609,-28.666,-28.723,-28.780,-28.836,-28.891,-28.946,-29.000,-29.053,-29.106,
--29.158,-29.210,-29.261,-29.311,-29.360,-29.409,-29.457,-29.504,-29.551,-29.597,-29.643,-29.687,-29.731,-29.775,-29.818,-29.860,
--29.901,-29.942,-29.982,-30.022,-30.060,-30.099,-30.137,-30.174,-30.210,-30.246,-30.282,-30.317,-30.352,-30.386,-30.419,-30.452,
--30.485,-30.517,-30.549,-30.580,-30.611,-30.641,-30.672,-30.701,-30.731,-30.760,-30.789,-30.817,-30.845,-30.873,-30.900,-30.928,
--30.955,-30.981,-31.008,-31.034,-31.060,-31.086,-31.111,-31.137,-31.162,-31.187,-31.211,-31.236,-31.260,-31.285,-31.309,-31.333,
--31.356,-31.380,-31.403,-31.427,-31.450,-31.473,-31.496,-31.519,-31.542,-31.565,-31.588,-31.610,-31.633,-31.655,-31.678,-31.700,
--31.722,-31.745,-31.767,-31.789,-31.811,-31.833,-31.855,-31.878,-31.900,-31.922,-31.944,-31.966,-31.987,-32.009,-32.031,-32.053,
--32.075,-32.097,-32.119,-32.141,-32.162,-32.184,-32.206,-32.228,-32.249,-32.271,-32.292,-32.314,-32.335,-32.357,-32.378,-32.399,
--32.420,-32.441,-32.462,-32.482,-32.503,-32.523,-32.543,-32.563,-32.583,-32.602,-32.621,-32.640,-32.659,-32.677,-32.695,-32.713,
--32.730,-32.747,-32.763,-32.779,-32.795,-32.810,-32.825,-32.839,-32.852,-32.866,-32.878,-32.890,-32.902,-32.912,-32.923,-32.932,
--32.941,-32.949,-32.957,-32.964,-32.971,-32.976,-32.982,-32.986,-32.990,-32.993,-32.996,-32.998,-32.999,-33.000,-33.000,-32.999,
--32.998,-32.997,-32.995,-32.993,-32.990,-32.986,-32.983,-32.979,-32.974,-32.970,-32.965,-32.960,-32.954,-32.949,-32.944,-32.938,
--32.932,-32.927,-32.921,-32.916,-32.910,-32.905,-32.900,-32.895,-32.891,-32.886,-32.882,-32.879,-32.875,-32.872,-32.869,-32.867,
--32.865,-32.864,-32.862,-32.861,-32.861,-32.861,-32.861,-32.862,-32.862,-32.864,-32.865,-32.866,-32.868,-32.870,-32.872,-32.874,
--32.876,-32.878,-32.879,-32.881,-32.882,-32.883,-32.884,-32.884,-32.884,-32.883,-32.882,-32.880,-32.877,-32.874,-32.870,-32.865,
--32.859,-32.852,-32.844,-32.835,-32.824,-32.813,-32.801,-32.787,-32.773,-32.757,-32.740,-32.722,-32.702,-32.682,-32.660,-32.637,
--32.613,-32.589,-32.563,-32.536,-32.508,-32.479,-32.450,-32.420,-32.389,-32.358,-32.326,-32.294,-32.262,-32.229,-32.196,-32.163,
--32.131,-32.098,-32.066,-32.034,-32.002,-31.971,-31.941,-31.912,-31.883,-31.855,-31.828,-31.802,-31.777,-31.753,-31.730,-31.709,
--31.689,-31.670,-31.653,-31.637,-31.622,-31.609,-31.597,-31.587,-31.578,-31.570,-31.563,-31.558,-31.554,-31.551,-31.549,-31.549,
--31.549,-31.550,-31.552,-31.555,-31.558,-31.562,-31.566,-31.571,-31.576,-31.581,-31.586,-31.591,-31.596,-31.601,-31.606,-31.610,
--31.613,-31.617,-31.619,-31.621,-31.622,-31.622,-31.622,-31.620,-31.618,-31.614,-31.610,-31.605,-31.598,-31.591,-31.583,-31.573,
--31.563,-31.552,-31.540,-31.528,-31.514,-31.500,-31.486,-31.471,-31.456,-31.440,-31.424,-31.408,-31.393,-31.377,-31.361,-31.346,
--31.332,-31.318,-31.305,-31.292,-31.281,-31.270,-31.261,-31.253,-31.246,-31.240,-31.237,-31.234,-31.233,-31.234,-31.237,-31.241,
--31.247,-31.255,-31.265,-31.277,-31.290,-31.305,-31.322,-31.340,-31.360,-31.382,-31.405,-31.429,-31.455,-31.481,-31.509,-31.538,
--31.568,-31.598,-31.628,-31.659,-31.691,-31.722,-31.753,-31.784,-31.815,-31.845,-31.874,-31.902,-31.929,-31.955,-31.979,-32.002,
--32.024,-32.043,-32.061,-32.076,-32.089,-32.100,-32.109,-32.115,-32.119,-32.120,-32.118,-32.114,-32.107,-32.098,-32.085,-32.070,
--32.053,-32.033,-32.010,-31.985,-31.958,-31.928,-31.896,-31.862,-31.826,-31.788,-31.748,-31.707,-31.665,-31.621,-31.576,-31.531,
--31.484,-31.437,-31.390,-31.342,-31.295,-31.248,-31.201,-31.154,-31.109,-31.064,-31.020,-30.978,-30.936,-30.896,-30.858,-30.822,
--30.787,-30.754,-30.723,-30.695,-30.668,-30.643,-30.621,-30.601,-30.583,-30.568,-30.554,-30.543,-30.534,-30.527,-30.522,-30.519,
--30.518,-30.518,-30.520,-30.524,-30.529,-30.535,-30.542,-30.550,-30.558,-30.567,-30.577,-30.587,-30.597,-30.606,-30.616,-30.624,
--30.633,-30.640,-30.646,-30.652,-30.656,-30.658,-30.659,-30.658,-30.656,-30.651,-30.645,-30.636,-30.626,-30.613,-30.598,-30.581,
--30.561,-30.540,-30.516,-30.490,-30.461,-30.431,-30.399,-30.364,-30.328,-30.290,-30.251,-30.210,-30.168,-30.125,-30.080,-30.035,
--29.989,-29.943,-29.896,-29.850,-29.803,-29.757,-29.711,-29.665,-29.621,-29.577,-29.535,-29.493,-29.454,-29.416,-29.379,-29.345,
--29.312,-29.282,-29.253,-29.227,-29.204,-29.182,-29.163,-29.147,-29.133,-29.121,-29.112,-29.105,-29.100,-29.098,-29.097,-29.099,
--29.103,-29.108,-29.115,-29.124,-29.134,-29.146,-29.158,-29.172,-29.186,-29.201,-29.216,-29.231,-29.246,-29.261,-29.276,-29.290,
--29.303,-29.315,-29.327,-29.336,-29.345,-29.352,-29.357,-29.361,-29.363,-29.362,-29.360,-29.355,-29.348,-29.339,-29.327,-29.314,
--29.297,-29.279,-29.258,-29.236,-29.211,-29.183,-29.154,-29.123,-29.091,-29.056,-29.020,-28.983,-28.944,-28.905,-28.864,-28.823,
--28.781,-28.739,-28.697,-28.655,-28.613,-28.571,-28.530,-28.490,-28.450,-28.412,-28.375,-28.340,-28.306,-28.274,-28.244,-28.215,
--28.189,-28.165,-28.144,-28.125,-28.108,-28.094,-28.082,-28.073,-28.067,-28.063,-28.062,-28.063,-28.067,-28.073,-28.081,-28.092,
--28.105,-28.120,-28.137,-28.156,-28.176,-28.198,-28.222,-28.246,-28.272,-28.299,-28.326,-28.354,-28.382,-28.410,-28.438,-28.466,
--28.494,-28.521,-28.547,-28.573,-28.597,-28.620,-28.641,-28.661,-28.679,-28.696,-28.710,-28.722,-28.732,-28.739,-28.744,-28.747,
--28.747,-28.744,-28.738,-28.730,-28.719,-28.705,-28.688,-28.669,-28.646,-28.621,-28.593,-28.562,-28.528,-28.492,-28.454,-28.412,
--28.369,-28.323,-28.275,-28.224,-28.172,-28.117,-28.061,-28.003,-27.944,-27.883,-27.820,-27.756,-27.691,-27.626,-27.559,-27.491,
--27.423,-27.354,-27.284,-27.214,-27.144,-27.074,-27.003,-26.933,-26.863,-26.792,-26.722,-26.653,-26.583,-26.515,-26.446,-26.378,
--26.311,-26.245,-26.179,-26.113,-26.049,-25.985,-25.922,-25.860,-25.799,-25.738,-25.678,-25.620,-25.562,-25.504,-25.448,-25.393,
--25.338,-25.285,-25.232,-25.180,-25.129,-25.079,-25.030,-24.981,-24.934,-24.887,-24.842,-24.797,-24.754,-24.711,-24.670,-24.629,
--24.589,-24.551,-24.514,-24.478,-24.443,-24.409,-24.377,-24.346,-24.316,-24.288,-24.261,-24.235,-24.212,-24.190,-24.169,-24.150,
--24.133,-24.118,-24.105,-24.094,-24.084,-24.077,-24.072,-24.068,-24.067,-24.069,-24.072,-24.078,-24.085,-24.096,-24.108,-24.123,
--24.140,-24.160,-24.181,-24.206,-24.232,-24.261,-24.292,-24.325,-24.360,-24.397,-24.437,-24.478,-24.521,-24.566,-24.613,-24.662,
--24.712,-24.763,-24.816,-24.870,-24.925,-24.981,-25.038,-25.095,-25.153,-25.211,-25.269,-25.328,-25.386,-25.444,-25.502,-25.558,
--25.614,-25.669,-25.723,-25.776,-25.827,-25.876,-25.923,-25.968,-26.012,-26.052,-26.090,-26.126,-26.159,-26.188,-26.215,-26.239,
--26.259,-26.275,-26.288,-26.298,-26.304,-26.306,-26.304,-26.298,-26.289,-26.275,-26.258,-26.236,-26.211,-26.182,-26.149,-26.112,
--26.071,-26.026,-25.978,-25.926,-25.871,-25.813,-25.751,-25.686,-25.619,-25.548,-25.475,-25.400,-25.322,-25.242,-25.160,-25.076,
--24.991,-24.904,-24.816,-24.727,-24.638,-24.547,-24.457,-24.366,-24.275,-24.184,-24.094,-24.004,-23.915,-23.826,-23.739,-23.653,
--23.569,-23.485,-23.404,-23.324,-23.246,-23.170,-23.096,-23.025,-22.955,-22.888,-22.823,-22.761,-22.701,-22.643,-22.588,-22.536,
--22.486,-22.438,-22.393,-22.351,-22.310,-22.273,-22.237,-22.204,-22.173,-22.144,-22.117,-22.092,-22.069,-22.048,-22.029,-22.011,
--21.995,-21.980,-21.967,-21.955,-21.944,-21.935,-21.926,-21.918,-21.912,-21.906,-21.900,-21.895,-21.891,-21.888,-21.884,-21.881,
--21.879,-21.876,-21.874,-21.872,-21.870,-21.868,-21.866,-21.865,-21.863,-21.861,-21.859,-21.857,-21.855,-21.854,-21.852,-21.850,
--21.847,-21.845,-21.843,-21.841,-21.839,-21.837,-21.835,-21.833,-21.831,-21.830,-21.828,-21.827,-21.825,-21.824,-21.823,-21.823,
--21.822,-21.822,-21.822,-21.822,-21.823,-21.824,-21.825,-21.827,-21.829,-21.831,-21.834,-21.836,-21.840,-21.843,-21.847,-21.851,
--21.856,-21.860,-21.865,-21.871,-21.876,-21.882,-21.888,-21.894,-21.900,-21.907,-21.913,-21.920,-21.927,-21.934,-21.941,-21.948,
--21.955,-21.962,-21.968,-21.975,-21.982,-21.988,-21.995,-22.001,-22.007,-22.013,-22.018,-22.023,-22.028,-22.033,-22.037,-22.041,
--22.044,-22.047,-22.049,-22.051,-22.052,-22.053,-22.053,-22.052,-22.051,-22.049,-22.046,-22.043,-22.039,-22.033,-22.028,-22.021,
--22.013,-22.005,-21.995,-21.985,-21.973,-23.055,-23.031,-23.006,-22.981,-22.955,-22.929,-22.904,-22.877,-22.851,-22.824,-22.798,
--22.771,-22.744,-22.716,-22.689,-22.662,-22.634,-22.606,-22.578,-22.550,-22.523,-22.495,-22.467,-22.439,-22.411,-22.383,-22.355,
--22.327,-22.299,-22.272,-22.244,-22.217,-22.190,-22.163,-22.136,-22.110,-22.084,-22.058,-22.032,-22.007,-21.982,-21.958,-21.934,
--21.910,-21.887,-21.864,-21.841,-21.819,-21.798,-21.777,-21.756,-21.736,-21.716,-21.696,-21.678,-21.659,-21.641,-21.623,-21.606,
--21.589,-21.572,-21.556,-21.540,-21.524,-21.509,-21.494,-21.479,-21.464,-21.449,-21.434,-21.419,-21.404,-21.390,-21.375,-21.359,
--21.344,-21.328,-21.313,-21.296,-21.280,-21.263,-21.245,-21.227,-21.209,-21.189,-21.170,-21.149,-21.128,-21.106,-21.083,-21.060,
--21.036,-21.011,-20.985,-20.958,-20.930,-20.902,-20.872,-20.842,-20.811,-20.779,-20.747,-20.713,-20.679,-20.644,-20.608,-20.572,
--20.535,-20.497,-20.459,-20.421,-20.382,-20.343,-20.303,-20.263,-20.223,-20.183,-20.143,-20.103,-20.064,-20.024,-19.985,-19.946,
--19.908,-19.870,-19.833,-19.796,-19.761,-19.726,-19.692,-19.659,-19.628,-19.597,-19.568,-19.540,-19.514,-19.488,-19.465,-19.443,
--19.422,-19.403,-19.386,-19.371,-19.357,-19.345,-19.335,-19.326,-19.320,-19.315,-19.312,-19.310,-19.311,-19.313,-19.317,-19.323,
--19.331,-19.340,-19.351,-19.363,-19.377,-19.393,-19.409,-19.428,-19.447,-19.468,-19.491,-19.514,-19.538,-19.564,-19.590,-19.617,
--19.645,-19.674,-19.704,-19.734,-19.765,-19.796,-19.828,-19.860,-19.892,-19.924,-19.957,-19.990,-20.023,-20.055,-20.088,-20.121,
--20.153,-20.186,-20.218,-20.250,-20.282,-20.313,-20.344,-20.375,-20.406,-20.436,-20.466,-20.495,-20.524,-20.552,-20.581,-20.608,
--20.636,-20.663,-20.690,-20.716,-20.742,-20.768,-20.794,-20.819,-20.844,-20.869,-20.893,-20.918,-20.942,-20.966,-20.990,-21.014,
--21.038,-21.062,-21.086,-21.109,-21.133,-21.157,-21.181,-21.205,-21.229,-21.252,-21.277,-21.301,-21.325,-21.349,-21.373,-21.398,
--21.422,-21.447,-21.472,-21.496,-21.521,-21.546,-21.570,-21.595,-21.620,-21.644,-21.669,-21.694,-21.718,-21.742,-21.767,-21.791,
--21.815,-21.838,-21.862,-21.885,-21.908,-21.931,-21.953,-21.975,-21.997,-22.019,-22.040,-22.060,-22.081,-22.101,-22.121,-22.140,
--22.159,-22.178,-22.196,-22.214,-22.232,-22.249,-22.266,-22.283,-22.299,-22.316,-22.331,-22.347,-22.363,-22.378,-22.394,-22.409,
--22.424,-22.439,-22.455,-22.470,-22.485,-22.501,-22.517,-22.532,-22.549,-22.565,-22.582,-22.599,-22.617,-22.635,-22.653,-22.672,
--22.692,-22.712,-22.733,-22.754,-22.776,-22.799,-22.822,-22.847,-22.872,-22.898,-22.924,-22.952,-22.980,-23.009,-23.039,-23.070,
--23.101,-23.134,-23.167,-23.201,-23.236,-23.272,-23.308,-23.346,-23.384,-23.422,-23.462,-23.502,-23.543,-23.585,-23.627,-23.670,
--23.713,-23.757,-23.802,-23.846,-23.892,-23.938,-23.984,-24.030,-24.077,-24.124,-24.171,-24.219,-24.267,-24.314,-24.362,-24.411,
--24.459,-24.507,-24.555,-24.604,-24.652,-24.700,-24.749,-24.797,-24.845,-24.893,-24.941,-24.989,-25.036,-25.084,-25.131,-25.178,
--25.226,-25.273,-25.320,-25.366,-25.413,-25.460,-25.506,-25.553,-25.599,-25.645,-25.691,-25.737,-25.783,-25.830,-25.876,-25.922,
--25.968,-26.014,-26.060,-26.106,-26.153,-26.199,-26.246,-26.292,-26.339,-26.386,-26.433,-26.480,-26.528,-26.575,-26.623,-26.671,
--26.719,-26.767,-26.816,-26.865,-26.914,-26.963,-27.012,-27.062,-27.112,-27.162,-27.212,-27.262,-27.312,-27.363,-27.414,-27.465,
--27.515,-27.566,-27.618,-27.669,-27.720,-27.771,-27.822,-27.873,-27.924,-27.975,-28.026,-28.077,-28.128,-28.178,-28.228,-28.279,
--28.328,-28.378,-28.427,-28.477,-28.525,-28.574,-28.622,-28.670,-28.717,-28.764,-28.811,-28.857,-28.903,-28.948,-28.993,-29.037,
--29.081,-29.124,-29.167,-29.209,-29.251,-29.292,-29.333,-29.373,-29.413,-29.452,-29.491,-29.529,-29.566,-29.603,-29.639,-29.675,
--29.711,-29.746,-29.780,-29.814,-29.847,-29.880,-29.912,-29.944,-29.975,-30.006,-30.037,-30.066,-30.096,-30.125,-30.154,-30.182,
--30.210,-30.238,-30.265,-30.291,-30.318,-30.344,-30.370,-30.395,-30.420,-30.445,-30.470,-30.494,-30.518,-30.542,-30.565,-30.588,
--30.612,-30.634,-30.657,-30.679,-30.702,-30.724,-30.746,-30.767,-30.789,-30.810,-30.832,-30.853,-30.874,-30.895,-30.916,-30.937,
--30.957,-30.978,-30.998,-31.019,-31.039,-31.060,-31.080,-31.100,-31.120,-31.141,-31.161,-31.181,-31.201,-31.221,-31.242,-31.262,
--31.282,-31.302,-31.322,-31.343,-31.363,-31.383,-31.404,-31.424,-31.445,-31.465,-31.486,-31.506,-31.527,-31.548,-31.568,-31.589,
--31.610,-31.631,-31.652,-31.673,-31.694,-31.715,-31.736,-31.757,-31.778,-31.799,-31.820,-31.841,-31.862,-31.883,-31.904,-31.925,
--31.945,-31.966,-31.987,-32.007,-32.028,-32.048,-32.068,-32.089,-32.108,-32.128,-32.148,-32.167,-32.186,-32.205,-32.223,-32.242,
--32.260,-32.278,-32.295,-32.312,-32.329,-32.345,-32.361,-32.377,-32.392,-32.407,-32.421,-32.435,-32.449,-32.462,-32.474,-32.487,
--32.498,-32.510,-32.521,-32.531,-32.541,-32.550,-32.559,-32.568,-32.576,-32.584,-32.591,-32.598,-32.605,-32.611,-32.617,-32.622,
--32.627,-32.632,-32.636,-32.641,-32.645,-32.648,-32.652,-32.655,-32.658,-32.662,-32.664,-32.667,-32.670,-32.673,-32.676,-32.678,
--32.681,-32.684,-32.687,-32.690,-32.693,-32.696,-32.700,-32.703,-32.707,-32.711,-32.715,-32.719,-32.724,-32.729,-32.734,-32.739,
--32.745,-32.750,-32.756,-32.762,-32.768,-32.775,-32.781,-32.788,-32.795,-32.802,-32.808,-32.815,-32.822,-32.829,-32.836,-32.843,
--32.849,-32.856,-32.862,-32.867,-32.873,-32.878,-32.883,-32.887,-32.891,-32.894,-32.897,-32.899,-32.900,-32.901,-32.901,-32.900,
--32.899,-32.896,-32.893,-32.888,-32.883,-32.877,-32.870,-32.862,-32.852,-32.842,-32.831,-32.818,-32.805,-32.790,-32.775,-32.758,
--32.741,-32.722,-32.702,-32.682,-32.660,-32.637,-32.614,-32.590,-32.565,-32.539,-32.512,-32.484,-32.456,-32.428,-32.399,-32.369,
--32.338,-32.308,-32.277,-32.245,-32.214,-32.182,-32.150,-32.118,-32.086,-32.054,-32.021,-31.989,-31.957,-31.925,-31.894,-31.862,
--31.831,-31.800,-31.770,-31.739,-31.709,-31.680,-31.651,-31.622,-31.593,-31.565,-31.538,-31.510,-31.483,-31.457,-31.430,-31.404,
--31.379,-31.353,-31.328,-31.303,-31.278,-31.254,-31.229,-31.205,-31.181,-31.157,-31.132,-31.108,-31.084,-31.059,-31.035,-31.010,
--30.985,-30.960,-30.934,-30.909,-30.883,-30.857,-30.830,-30.804,-30.777,-30.749,-30.721,-30.693,-30.665,-30.637,-30.608,-30.579,
--30.550,-30.520,-30.491,-30.461,-30.432,-30.402,-30.373,-30.343,-30.314,-30.285,-30.256,-30.228,-30.200,-30.173,-30.146,-30.120,
--30.094,-30.069,-30.046,-30.023,-30.001,-29.980,-29.960,-29.941,-29.924,-29.908,-29.893,-29.880,-29.868,-29.857,-29.848,-29.841,
--29.835,-29.831,-29.828,-29.828,-29.828,-29.831,-29.835,-29.840,-29.848,-29.857,-29.867,-29.879,-29.892,-29.907,-29.924,-29.941,
--29.960,-29.980,-30.001,-30.024,-30.047,-30.071,-30.096,-30.122,-30.149,-30.176,-30.203,-30.231,-30.260,-30.288,-30.317,-30.345,
--30.374,-30.403,-30.431,-30.459,-30.486,-30.514,-30.540,-30.566,-30.592,-30.616,-30.640,-30.663,-30.686,-30.707,-30.727,-30.747,
--30.765,-30.783,-30.799,-30.814,-30.829,-30.842,-30.854,-30.865,-30.875,-30.885,-30.893,-30.900,-30.907,-30.913,-30.917,-30.921,
--30.925,-30.927,-30.930,-30.931,-30.932,-30.933,-30.933,-30.932,-30.932,-30.931,-30.930,-30.929,-30.928,-30.926,-30.925,-30.924,
--30.922,-30.921,-30.920,-30.919,-30.918,-30.917,-30.917,-30.916,-30.916,-30.916,-30.916,-30.916,-30.917,-30.917,-30.917,-30.918,
--30.918,-30.919,-30.919,-30.919,-30.919,-30.918,-30.918,-30.917,-30.915,-30.913,-30.910,-30.907,-30.903,-30.899,-30.893,-30.887,
--30.879,-30.871,-30.861,-30.851,-30.839,-30.826,-30.812,-30.796,-30.780,-30.761,-30.742,-30.721,-30.699,-30.675,-30.650,-30.623,
--30.595,-30.566,-30.536,-30.504,-30.470,-30.436,-30.400,-30.364,-30.326,-30.287,-30.247,-30.207,-30.166,-30.123,-30.081,-30.038,
--29.994,-29.950,-29.906,-29.862,-29.818,-29.773,-29.729,-29.685,-29.642,-29.599,-29.556,-29.515,-29.473,-29.433,-29.394,-29.355,
--29.318,-29.281,-29.246,-29.212,-29.179,-29.147,-29.117,-29.088,-29.060,-29.034,-29.009,-28.986,-28.964,-28.943,-28.924,-28.905,
--28.889,-28.873,-28.859,-28.845,-28.833,-28.822,-28.812,-28.803,-28.794,-28.787,-28.780,-28.773,-28.768,-28.762,-28.757,-28.752,
--28.748,-28.743,-28.739,-28.735,-28.730,-28.726,-28.721,-28.715,-28.710,-28.704,-28.697,-28.690,-28.683,-28.675,-28.666,-28.656,
--28.646,-28.635,-28.624,-28.612,-28.599,-28.585,-28.571,-28.556,-28.540,-28.524,-28.508,-28.490,-28.473,-28.455,-28.436,-28.417,
--28.398,-28.379,-28.360,-28.340,-28.321,-28.301,-28.282,-28.263,-28.244,-28.225,-28.207,-28.189,-28.172,-28.155,-28.139,-28.123,
--28.108,-28.094,-28.081,-28.068,-28.056,-28.045,-28.035,-28.025,-28.016,-28.008,-28.001,-27.995,-27.989,-27.985,-27.980,-27.977,
--27.974,-27.972,-27.970,-27.969,-27.968,-27.968,-27.967,-27.967,-27.967,-27.968,-27.968,-27.968,-27.968,-27.967,-27.966,-27.965,
--27.963,-27.961,-27.958,-27.954,-27.950,-27.944,-27.938,-27.931,-27.922,-27.913,-27.902,-27.890,-27.876,-27.862,-27.846,-27.828,
--27.809,-27.789,-27.767,-27.744,-27.720,-27.694,-27.666,-27.637,-27.607,-27.575,-27.542,-27.508,-27.472,-27.436,-27.397,-27.358,
--27.318,-27.277,-27.235,-27.192,-27.148,-27.103,-27.058,-27.012,-26.965,-26.918,-26.871,-26.823,-26.775,-26.727,-26.679,-26.631,
--26.583,-26.535,-26.487,-26.439,-26.392,-26.345,-26.298,-26.252,-26.206,-26.161,-26.117,-26.073,-26.030,-25.987,-25.945,-25.904,
--25.864,-25.824,-25.785,-25.748,-25.710,-25.674,-25.639,-25.604,-25.570,-25.537,-25.504,-25.473,-25.442,-25.412,-25.383,-25.354,
--25.326,-25.299,-25.273,-25.247,-25.222,-25.197,-25.173,-25.150,-25.127,-25.104,-25.083,-25.062,-25.041,-25.021,-25.001,-24.982,
--24.963,-24.945,-24.928,-24.911,-24.894,-24.878,-24.863,-24.848,-24.834,-24.820,-24.807,-24.795,-24.784,-24.773,-24.763,-24.753,
--24.745,-24.737,-24.730,-24.724,-24.719,-24.716,-24.713,-24.711,-24.710,-24.710,-24.712,-24.714,-24.718,-24.723,-24.729,-24.737,
--24.745,-24.755,-24.767,-24.779,-24.793,-24.808,-24.825,-24.842,-24.861,-24.882,-24.903,-24.926,-24.949,-24.974,-25.000,-25.027,
--25.055,-25.084,-25.113,-25.144,-25.175,-25.207,-25.239,-25.272,-25.305,-25.338,-25.372,-25.406,-25.439,-25.473,-25.506,-25.539,
--25.572,-25.604,-25.635,-25.665,-25.695,-25.724,-25.751,-25.778,-25.803,-25.826,-25.849,-25.869,-25.888,-25.905,-25.920,-25.933,
--25.944,-25.953,-25.959,-25.964,-25.966,-25.965,-25.963,-25.957,-25.950,-25.939,-25.927,-25.911,-25.893,-25.873,-25.850,-25.824,
--25.796,-25.766,-25.733,-25.698,-25.660,-25.620,-25.578,-25.534,-25.488,-25.440,-25.390,-25.338,-25.284,-25.229,-25.173,-25.115,
--25.056,-24.996,-24.935,-24.873,-24.810,-24.747,-24.684,-24.620,-24.556,-24.491,-24.427,-24.363,-24.300,-24.236,-24.174,-24.112,
--24.051,-23.990,-23.931,-23.873,-23.816,-23.761,-23.706,-23.654,-23.603,-23.553,-23.505,-23.459,-23.415,-23.373,-23.333,-23.294,
--23.258,-23.224,-23.191,-23.161,-23.133,-23.107,-23.083,-23.061,-23.041,-23.023,-23.007,-22.993,-22.981,-22.971,-22.963,-22.957,
--22.952,-22.949,-22.948,-22.949,-22.951,-22.954,-22.959,-22.966,-22.973,-22.982,-22.992,-23.003,-23.016,-23.029,-23.043,-23.058,
--23.074,-23.090,-23.107,-23.125,-23.143,-23.161,-23.180,-23.199,-23.219,-23.239,-23.259,-23.279,-23.299,-23.319,-23.339,-23.358,
--23.378,-23.398,-23.417,-23.436,-23.455,-23.473,-23.491,-23.509,-23.526,-23.543,-23.559,-23.575,-23.591,-23.605,-23.620,-23.633,
--23.646,-23.659,-23.670,-23.682,-23.692,-23.702,-23.711,-23.720,-23.728,-23.735,-23.741,-23.747,-23.752,-23.756,-23.760,-23.763,
--23.765,-23.767,-23.768,-23.768,-23.768,-23.766,-23.764,-23.762,-23.759,-23.755,-23.750,-23.745,-23.739,-23.733,-23.725,-23.718,
--23.709,-23.700,-23.691,-23.681,-23.670,-23.658,-23.647,-23.634,-23.621,-23.608,-23.594,-23.579,-23.564,-23.549,-23.533,-23.516,
--23.499,-23.482,-23.464,-23.446,-23.427,-23.408,-23.389,-23.369,-23.349,-23.328,-23.307,-23.286,-23.264,-23.242,-23.220,-23.198,
--23.175,-23.151,-23.128,-23.104,-23.080,-23.055,-23.814,-23.782,-23.750,-23.719,-23.687,-23.656,-23.625,-23.595,-23.564,-23.534,
--23.505,-23.475,-23.446,-23.417,-23.389,-23.361,-23.333,-23.306,-23.279,-23.252,-23.226,-23.201,-23.176,-23.151,-23.126,-23.103,
--23.079,-23.056,-23.034,-23.011,-22.990,-22.968,-22.947,-22.927,-22.907,-22.887,-22.868,-22.849,-22.830,-22.812,-22.794,-22.777,
--22.760,-22.743,-22.726,-22.710,-22.694,-22.678,-22.662,-22.647,-22.631,-22.616,-22.601,-22.586,-22.571,-22.557,-22.542,-22.527,
--22.512,-22.497,-22.483,-22.468,-22.452,-22.437,-22.422,-22.406,-22.390,-22.374,-22.358,-22.341,-22.324,-22.306,-22.289,-22.270,
--22.252,-22.233,-22.213,-22.193,-22.173,-22.152,-22.130,-22.108,-22.086,-22.062,-22.039,-22.014,-21.989,-21.964,-21.938,-21.911,
--21.884,-21.856,-21.828,-21.799,-21.769,-21.739,-21.708,-21.677,-21.646,-21.614,-21.581,-21.549,-21.515,-21.482,-21.448,-21.414,
--21.380,-21.345,-21.311,-21.276,-21.241,-21.206,-21.172,-21.137,-21.102,-21.068,-21.034,-21.000,-20.967,-20.934,-20.901,-20.869,
--20.837,-20.807,-20.776,-20.747,-20.718,-20.690,-20.663,-20.637,-20.611,-20.587,-20.564,-20.542,-20.521,-20.501,-20.482,-20.465,
--20.449,-20.434,-20.421,-20.408,-20.398,-20.388,-20.380,-20.373,-20.368,-20.364,-20.362,-20.361,-20.362,-20.364,-20.367,-20.372,
--20.378,-20.386,-20.394,-20.405,-20.416,-20.429,-20.443,-20.459,-20.475,-20.493,-20.512,-20.532,-20.553,-20.576,-20.599,-20.623,
--20.648,-20.674,-20.701,-20.729,-20.757,-20.786,-20.816,-20.846,-20.877,-20.909,-20.941,-20.973,-21.006,-21.039,-21.073,-21.107,
--21.141,-21.175,-21.210,-21.244,-21.279,-21.314,-21.349,-21.384,-21.419,-21.454,-21.488,-21.523,-21.558,-21.592,-21.626,-21.661,
--21.694,-21.728,-21.762,-21.795,-21.828,-21.861,-21.893,-21.925,-21.957,-21.989,-22.020,-22.051,-22.081,-22.112,-22.142,-22.171,
--22.200,-22.229,-22.257,-22.286,-22.313,-22.341,-22.367,-22.394,-22.420,-22.446,-22.471,-22.496,-22.521,-22.545,-22.569,-22.592,
--22.615,-22.637,-22.659,-22.681,-22.702,-22.723,-22.743,-22.763,-22.782,-22.801,-22.820,-22.838,-22.856,-22.873,-22.890,-22.906,
--22.922,-22.938,-22.953,-22.968,-22.982,-22.996,-23.009,-23.022,-23.035,-23.047,-23.059,-23.070,-23.082,-23.092,-23.103,-23.113,
--23.123,-23.133,-23.143,-23.152,-23.161,-23.170,-23.179,-23.187,-23.196,-23.205,-23.213,-23.222,-23.230,-23.239,-23.247,-23.256,
--23.265,-23.274,-23.284,-23.293,-23.303,-23.313,-23.323,-23.334,-23.345,-23.357,-23.369,-23.382,-23.395,-23.408,-23.423,-23.437,
--23.453,-23.469,-23.486,-23.503,-23.521,-23.540,-23.559,-23.579,-23.600,-23.622,-23.645,-23.668,-23.692,-23.717,-23.743,-23.769,
--23.796,-23.824,-23.853,-23.883,-23.913,-23.944,-23.976,-24.009,-24.042,-24.076,-24.111,-24.146,-24.182,-24.219,-24.256,-24.294,
--24.332,-24.371,-24.411,-24.450,-24.491,-24.532,-24.573,-24.615,-24.657,-24.699,-24.741,-24.784,-24.828,-24.871,-24.914,-24.958,
--25.002,-25.046,-25.090,-25.135,-25.179,-25.223,-25.268,-25.312,-25.356,-25.401,-25.445,-25.490,-25.534,-25.578,-25.622,-25.666,
--25.710,-25.754,-25.798,-25.841,-25.885,-25.928,-25.971,-26.014,-26.057,-26.100,-26.143,-26.186,-26.228,-26.271,-26.313,-26.355,
--26.397,-26.439,-26.481,-26.523,-26.565,-26.607,-26.649,-26.691,-26.732,-26.774,-26.815,-26.857,-26.899,-26.940,-26.982,-27.023,
--27.065,-27.106,-27.148,-27.190,-27.231,-27.273,-27.315,-27.356,-27.398,-27.440,-27.482,-27.523,-27.565,-27.607,-27.649,-27.690,
--27.732,-27.774,-27.816,-27.857,-27.899,-27.940,-27.982,-28.023,-28.065,-28.106,-28.147,-28.188,-28.229,-28.270,-28.311,-28.351,
--28.391,-28.432,-28.472,-28.511,-28.551,-28.590,-28.629,-28.668,-28.706,-28.744,-28.782,-28.820,-28.857,-28.894,-28.931,-28.967,
--29.003,-29.039,-29.074,-29.109,-29.144,-29.178,-29.212,-29.245,-29.278,-29.311,-29.343,-29.375,-29.406,-29.438,-29.468,-29.499,
--29.528,-29.558,-29.587,-29.616,-29.644,-29.672,-29.700,-29.727,-29.754,-29.780,-29.806,-29.832,-29.858,-29.883,-29.908,-29.932,
--29.956,-29.980,-30.004,-30.027,-30.050,-30.073,-30.095,-30.117,-30.139,-30.161,-30.182,-30.203,-30.224,-30.245,-30.266,-30.286,
--30.306,-30.326,-30.346,-30.366,-30.385,-30.405,-30.424,-30.443,-30.462,-30.481,-30.500,-30.518,-30.537,-30.555,-30.574,-30.592,
--30.610,-30.628,-30.646,-30.665,-30.683,-30.700,-30.718,-30.736,-30.754,-30.772,-30.790,-30.808,-30.825,-30.843,-30.861,-30.879,
--30.896,-30.914,-30.932,-30.950,-30.967,-30.985,-31.003,-31.021,-31.039,-31.057,-31.074,-31.092,-31.110,-31.128,-31.146,-31.164,
--31.182,-31.200,-31.218,-31.236,-31.254,-31.272,-31.290,-31.308,-31.326,-31.344,-31.362,-31.380,-31.398,-31.415,-31.433,-31.451,
--31.469,-31.487,-31.504,-31.522,-31.539,-31.557,-31.574,-31.591,-31.608,-31.625,-31.642,-31.659,-31.676,-31.692,-31.708,-31.725,
--31.741,-31.757,-31.772,-31.788,-31.803,-31.818,-31.833,-31.848,-31.863,-31.877,-31.891,-31.905,-31.919,-31.933,-31.946,-31.959,
--31.972,-31.985,-31.997,-32.010,-32.022,-32.034,-32.045,-32.057,-32.068,-32.079,-32.090,-32.101,-32.111,-32.122,-32.132,-32.142,
--32.152,-32.162,-32.171,-32.181,-32.190,-32.199,-32.209,-32.218,-32.227,-32.236,-32.245,-32.253,-32.262,-32.271,-32.280,-32.288,
--32.297,-32.305,-32.314,-32.322,-32.331,-32.339,-32.348,-32.356,-32.365,-32.373,-32.382,-32.390,-32.399,-32.407,-32.415,-32.423,
--32.432,-32.440,-32.448,-32.455,-32.463,-32.471,-32.478,-32.486,-32.493,-32.500,-32.506,-32.513,-32.519,-32.524,-32.530,-32.535,
--32.540,-32.544,-32.548,-32.551,-32.554,-32.557,-32.559,-32.560,-32.561,-32.561,-32.560,-32.559,-32.557,-32.554,-32.551,-32.547,
--32.542,-32.536,-32.530,-32.522,-32.514,-32.505,-32.495,-32.484,-32.472,-32.459,-32.445,-32.431,-32.415,-32.399,-32.382,-32.363,
--32.344,-32.324,-32.303,-32.281,-32.258,-32.234,-32.210,-32.184,-32.158,-32.131,-32.103,-32.075,-32.045,-32.015,-31.985,-31.953,
--31.921,-31.889,-31.855,-31.822,-31.787,-31.752,-31.717,-31.681,-31.645,-31.609,-31.572,-31.534,-31.497,-31.459,-31.421,-31.383,
--31.344,-31.305,-31.266,-31.227,-31.188,-31.149,-31.109,-31.070,-31.030,-30.990,-30.950,-30.911,-30.871,-30.831,-30.791,-30.751,
--30.711,-30.671,-30.631,-30.591,-30.552,-30.512,-30.472,-30.432,-30.392,-30.352,-30.312,-30.272,-30.232,-30.192,-30.152,-30.112,
--30.072,-30.033,-29.993,-29.953,-29.913,-29.873,-29.834,-29.794,-29.754,-29.715,-29.676,-29.637,-29.597,-29.559,-29.520,-29.481,
--29.443,-29.405,-29.368,-29.330,-29.293,-29.257,-29.221,-29.185,-29.150,-29.116,-29.082,-29.048,-29.016,-28.984,-28.953,-28.923,
--28.893,-28.865,-28.837,-28.811,-28.785,-28.761,-28.737,-28.715,-28.694,-28.675,-28.656,-28.639,-28.623,-28.609,-28.596,-28.585,
--28.574,-28.566,-28.559,-28.553,-28.549,-28.547,-28.546,-28.546,-28.548,-28.552,-28.557,-28.564,-28.573,-28.582,-28.594,-28.607,
--28.621,-28.637,-28.654,-28.672,-28.692,-28.713,-28.736,-28.759,-28.784,-28.810,-28.837,-28.865,-28.895,-28.925,-28.955,-28.987,
--29.020,-29.053,-29.087,-29.121,-29.157,-29.192,-29.228,-29.265,-29.301,-29.338,-29.376,-29.413,-29.451,-29.488,-29.526,-29.563,
--29.601,-29.638,-29.676,-29.713,-29.749,-29.786,-29.822,-29.858,-29.893,-29.928,-29.963,-29.997,-30.030,-30.063,-30.096,-30.127,
--30.159,-30.189,-30.219,-30.249,-30.277,-30.305,-30.332,-30.359,-30.385,-30.410,-30.434,-30.457,-30.480,-30.502,-30.523,-30.544,
--30.563,-30.582,-30.600,-30.617,-30.633,-30.649,-30.663,-30.677,-30.689,-30.701,-30.712,-30.722,-30.731,-30.739,-30.746,-30.752,
--30.758,-30.762,-30.765,-30.767,-30.768,-30.768,-30.767,-30.764,-30.761,-30.757,-30.751,-30.745,-30.737,-30.728,-30.718,-30.706,
--30.694,-30.680,-30.665,-30.649,-30.632,-30.614,-30.594,-30.573,-30.552,-30.529,-30.504,-30.479,-30.453,-30.425,-30.397,-30.367,
--30.337,-30.305,-30.273,-30.240,-30.206,-30.171,-30.135,-30.098,-30.061,-30.023,-29.985,-29.946,-29.906,-29.866,-29.826,-29.785,
--29.744,-29.703,-29.662,-29.621,-29.579,-29.538,-29.496,-29.455,-29.414,-29.373,-29.332,-29.292,-29.252,-29.212,-29.173,-29.135,
--29.097,-29.059,-29.023,-28.987,-28.952,-28.917,-28.883,-28.850,-28.818,-28.787,-28.757,-28.727,-28.699,-28.671,-28.644,-28.618,
--28.593,-28.569,-28.546,-28.524,-28.503,-28.482,-28.462,-28.444,-28.426,-28.409,-28.392,-28.377,-28.362,-28.348,-28.334,-28.322,
--28.309,-28.298,-28.287,-28.276,-28.267,-28.257,-28.248,-28.239,-28.231,-28.223,-28.216,-28.208,-28.201,-28.195,-28.188,-28.182,
--28.176,-28.170,-28.164,-28.158,-28.153,-28.147,-28.142,-28.136,-28.131,-28.126,-28.120,-28.115,-28.110,-28.105,-28.100,-28.094,
--28.089,-28.084,-28.079,-28.074,-28.069,-28.064,-28.058,-28.053,-28.048,-28.043,-28.038,-28.033,-28.028,-28.023,-28.017,-28.012,
--28.007,-28.002,-27.997,-27.992,-27.986,-27.981,-27.976,-27.970,-27.964,-27.959,-27.953,-27.947,-27.941,-27.934,-27.928,-27.921,
--27.914,-27.907,-27.899,-27.891,-27.882,-27.874,-27.865,-27.855,-27.845,-27.834,-27.823,-27.811,-27.799,-27.786,-27.772,-27.758,
--27.743,-27.728,-27.711,-27.694,-27.676,-27.657,-27.638,-27.617,-27.596,-27.574,-27.551,-27.528,-27.503,-27.478,-27.452,-27.424,
--27.397,-27.368,-27.338,-27.308,-27.277,-27.245,-27.213,-27.180,-27.146,-27.111,-27.076,-27.041,-27.005,-26.968,-26.931,-26.893,
--26.856,-26.817,-26.779,-26.740,-26.702,-26.663,-26.624,-26.585,-26.546,-26.507,-26.468,-26.429,-26.391,-26.353,-26.315,-26.277,
--26.240,-26.203,-26.167,-26.131,-26.096,-26.061,-26.027,-25.994,-25.961,-25.929,-25.898,-25.867,-25.837,-25.808,-25.779,-25.752,
--25.725,-25.699,-25.674,-25.649,-25.626,-25.603,-25.581,-25.560,-25.539,-25.520,-25.501,-25.483,-25.466,-25.449,-25.433,-25.418,
--25.403,-25.389,-25.376,-25.363,-25.351,-25.340,-25.329,-25.318,-25.308,-25.299,-25.290,-25.282,-25.274,-25.266,-25.259,-25.252,
--25.246,-25.240,-25.235,-25.230,-25.225,-25.220,-25.216,-25.212,-25.209,-25.206,-25.203,-25.201,-25.199,-25.197,-25.196,-25.195,
--25.195,-25.195,-25.195,-25.196,-25.197,-25.198,-25.200,-25.203,-25.206,-25.209,-25.213,-25.218,-25.223,-25.228,-25.234,-25.241,
--25.248,-25.256,-25.264,-25.273,-25.282,-25.292,-25.302,-25.313,-25.325,-25.337,-25.350,-25.363,-25.377,-25.391,-25.405,-25.420,
--25.436,-25.452,-25.468,-25.484,-25.501,-25.518,-25.535,-25.552,-25.570,-25.587,-25.604,-25.622,-25.639,-25.656,-25.673,-25.690,
--25.706,-25.722,-25.738,-25.753,-25.767,-25.781,-25.794,-25.807,-25.818,-25.829,-25.839,-25.848,-25.855,-25.862,-25.868,-25.872,
--25.875,-25.877,-25.877,-25.876,-25.874,-25.870,-25.865,-25.858,-25.850,-25.840,-25.829,-25.816,-25.802,-25.786,-25.768,-25.749,
--25.728,-25.706,-25.682,-25.656,-25.629,-25.601,-25.571,-25.540,-25.508,-25.474,-25.439,-25.402,-25.365,-25.326,-25.287,-25.246,
--25.205,-25.162,-25.119,-25.076,-25.031,-24.987,-24.941,-24.896,-24.850,-24.804,-24.758,-24.712,-24.665,-24.620,-24.574,-24.529,
--24.484,-24.439,-24.395,-24.352,-24.309,-24.268,-24.227,-24.187,-24.148,-24.111,-24.074,-24.039,-24.004,-23.972,-23.940,-23.910,
--23.882,-23.855,-23.830,-23.806,-23.784,-23.763,-23.744,-23.727,-23.712,-23.698,-23.686,-23.675,-23.667,-23.660,-23.655,-23.651,
--23.650,-23.650,-23.651,-23.654,-23.659,-23.666,-23.673,-23.683,-23.694,-23.706,-23.719,-23.734,-23.751,-23.768,-23.787,-23.806,
--23.827,-23.849,-23.871,-23.895,-23.919,-23.945,-23.970,-23.997,-24.024,-24.052,-24.080,-24.108,-24.137,-24.166,-24.195,-24.224,
--24.253,-24.282,-24.312,-24.341,-24.370,-24.398,-24.427,-24.455,-24.482,-24.509,-24.536,-24.562,-24.587,-24.612,-24.636,-24.659,
--24.682,-24.703,-24.724,-24.744,-24.763,-24.780,-24.797,-24.813,-24.828,-24.842,-24.854,-24.866,-24.876,-24.885,-24.893,-24.900,
--24.905,-24.910,-24.913,-24.915,-24.915,-24.915,-24.913,-24.910,-24.906,-24.901,-24.894,-24.887,-24.878,-24.868,-24.857,-24.845,
--24.831,-24.817,-24.802,-24.785,-24.768,-24.750,-24.730,-24.710,-24.689,-24.667,-24.644,-24.621,-24.597,-24.572,-24.546,-24.520,
--24.493,-24.465,-24.437,-24.409,-24.380,-24.350,-24.320,-24.290,-24.259,-24.229,-24.197,-24.166,-24.134,-24.103,-24.071,-24.039,
--24.007,-23.974,-23.942,-23.910,-23.878,-23.846,-23.814,-24.246,-24.217,-24.188,-24.159,-24.130,-24.101,-24.073,-24.045,-24.017,
--23.989,-23.962,-23.935,-23.909,-23.882,-23.857,-23.831,-23.806,-23.781,-23.757,-23.733,-23.710,-23.687,-23.664,-23.642,-23.621,
--23.599,-23.579,-23.558,-23.538,-23.518,-23.499,-23.480,-23.462,-23.444,-23.426,-23.409,-23.392,-23.375,-23.358,-23.342,-23.326,
--23.310,-23.295,-23.280,-23.265,-23.250,-23.235,-23.220,-23.206,-23.191,-23.177,-23.163,-23.148,-23.134,-23.120,-23.105,-23.091,
--23.076,-23.061,-23.047,-23.032,-23.017,-23.001,-22.986,-22.970,-22.954,-22.938,-22.921,-22.904,-22.887,-22.870,-22.852,-22.834,
--22.815,-22.797,-22.777,-22.758,-22.738,-22.718,-22.697,-22.676,-22.654,-22.632,-22.610,-22.587,-22.564,-22.541,-22.517,-22.493,
--22.468,-22.444,-22.418,-22.393,-22.367,-22.341,-22.315,-22.289,-22.262,-22.235,-22.208,-22.181,-22.153,-22.126,-22.098,-22.071,
--22.043,-22.016,-21.988,-21.961,-21.934,-21.907,-21.880,-21.853,-21.827,-21.801,-21.775,-21.749,-21.724,-21.700,-21.676,-21.652,
--21.629,-21.606,-21.584,-21.563,-21.542,-21.522,-21.503,-21.484,-21.467,-21.450,-21.434,-21.418,-21.404,-21.390,-21.378,-21.366,
--21.356,-21.346,-21.337,-21.330,-21.323,-21.318,-21.313,-21.310,-21.307,-21.306,-21.306,-21.307,-21.309,-21.312,-21.316,-21.321,
--21.328,-21.335,-21.344,-21.353,-21.364,-21.375,-21.388,-21.401,-21.416,-21.431,-21.448,-21.465,-21.484,-21.503,-21.523,-21.544,
--21.566,-21.588,-21.611,-21.635,-21.660,-21.685,-21.712,-21.738,-21.765,-21.793,-21.822,-21.851,-21.880,-21.910,-21.940,-21.971,
--22.002,-22.033,-22.065,-22.097,-22.129,-22.161,-22.194,-22.227,-22.259,-22.292,-22.326,-22.359,-22.392,-22.425,-22.458,-22.491,
--22.524,-22.557,-22.590,-22.623,-22.655,-22.688,-22.720,-22.752,-22.784,-22.815,-22.846,-22.877,-22.908,-22.938,-22.968,-22.998,
--23.028,-23.057,-23.085,-23.113,-23.141,-23.169,-23.196,-23.222,-23.249,-23.274,-23.300,-23.324,-23.349,-23.373,-23.396,-23.419,
--23.442,-23.464,-23.485,-23.506,-23.527,-23.547,-23.567,-23.586,-23.604,-23.623,-23.640,-23.658,-23.675,-23.691,-23.707,-23.722,
--23.738,-23.752,-23.767,-23.780,-23.794,-23.807,-23.820,-23.832,-23.844,-23.856,-23.867,-23.878,-23.889,-23.900,-23.910,-23.920,
--23.930,-23.940,-23.950,-23.959,-23.968,-23.978,-23.987,-23.996,-24.005,-24.014,-24.023,-24.032,-24.041,-24.050,-24.060,-24.069,
--24.079,-24.088,-24.098,-24.108,-24.119,-24.130,-24.140,-24.152,-24.163,-24.175,-24.187,-24.200,-24.213,-24.227,-24.241,-24.255,
--24.270,-24.285,-24.301,-24.317,-24.334,-24.351,-24.369,-24.388,-24.407,-24.426,-24.446,-24.467,-24.488,-24.510,-24.533,-24.556,
--24.579,-24.604,-24.628,-24.654,-24.680,-24.706,-24.733,-24.761,-24.789,-24.818,-24.847,-24.877,-24.907,-24.937,-24.969,-25.000,
--25.032,-25.065,-25.098,-25.131,-25.165,-25.199,-25.233,-25.268,-25.303,-25.338,-25.374,-25.410,-25.446,-25.483,-25.519,-25.556,
--25.593,-25.630,-25.667,-25.705,-25.742,-25.780,-25.818,-25.856,-25.893,-25.931,-25.969,-26.007,-26.045,-26.083,-26.121,-26.159,
--26.197,-26.235,-26.273,-26.310,-26.348,-26.386,-26.423,-26.461,-26.498,-26.535,-26.572,-26.610,-26.646,-26.683,-26.720,-26.757,
--26.793,-26.830,-26.866,-26.903,-26.939,-26.975,-27.011,-27.047,-27.082,-27.118,-27.153,-27.189,-27.224,-27.260,-27.295,-27.330,
--27.365,-27.400,-27.435,-27.469,-27.504,-27.538,-27.573,-27.607,-27.642,-27.676,-27.710,-27.744,-27.778,-27.812,-27.846,-27.880,
--27.913,-27.947,-27.981,-28.014,-28.047,-28.080,-28.114,-28.147,-28.180,-28.212,-28.245,-28.278,-28.310,-28.342,-28.375,-28.407,
--28.439,-28.471,-28.502,-28.534,-28.565,-28.596,-28.627,-28.658,-28.689,-28.719,-28.750,-28.780,-28.810,-28.840,-28.869,-28.898,
--28.928,-28.957,-28.985,-29.014,-29.042,-29.070,-29.098,-29.126,-29.153,-29.180,-29.207,-29.234,-29.260,-29.286,-29.312,-29.338,
--29.364,-29.389,-29.414,-29.439,-29.463,-29.488,-29.512,-29.536,-29.559,-29.583,-29.606,-29.629,-29.652,-29.674,-29.696,-29.719,
--29.740,-29.762,-29.784,-29.805,-29.826,-29.847,-29.867,-29.888,-29.908,-29.928,-29.948,-29.968,-29.988,-30.007,-30.026,-30.046,
--30.065,-30.083,-30.102,-30.121,-30.139,-30.157,-30.175,-30.193,-30.211,-30.229,-30.246,-30.264,-30.281,-30.299,-30.316,-30.333,
--30.350,-30.367,-30.383,-30.400,-30.417,-30.433,-30.449,-30.466,-30.482,-30.498,-30.514,-30.530,-30.546,-30.562,-30.578,-30.593,
--30.609,-30.624,-30.640,-30.655,-30.671,-30.686,-30.701,-30.716,-30.731,-30.746,-30.761,-30.776,-30.791,-30.806,-30.820,-30.835,
--30.849,-30.864,-30.878,-30.893,-30.907,-30.921,-30.935,-30.949,-30.963,-30.977,-30.991,-31.005,-31.019,-31.032,-31.046,-31.060,
--31.073,-31.086,-31.100,-31.113,-31.126,-31.139,-31.152,-31.165,-31.178,-31.191,-31.204,-31.216,-31.229,-31.241,-31.253,-31.266,
--31.278,-31.290,-31.302,-31.314,-31.326,-31.337,-31.349,-31.361,-31.372,-31.383,-31.395,-31.406,-31.417,-31.428,-31.439,-31.449,
--31.460,-31.471,-31.481,-31.492,-31.502,-31.512,-31.522,-31.532,-31.542,-31.552,-31.562,-31.571,-31.581,-31.591,-31.600,-31.609,
--31.618,-31.627,-31.636,-31.645,-31.654,-31.663,-31.671,-31.680,-31.688,-31.696,-31.704,-31.712,-31.720,-31.728,-31.736,-31.743,
--31.750,-31.758,-31.765,-31.772,-31.778,-31.785,-31.791,-31.798,-31.804,-31.809,-31.815,-31.820,-31.825,-31.830,-31.835,-31.839,
--31.843,-31.847,-31.851,-31.854,-31.857,-31.859,-31.861,-31.863,-31.865,-31.866,-31.866,-31.867,-31.866,-31.866,-31.864,-31.863,
--31.861,-31.858,-31.855,-31.851,-31.847,-31.842,-31.837,-31.831,-31.824,-31.817,-31.809,-31.801,-31.791,-31.782,-31.771,-31.760,
--31.748,-31.736,-31.723,-31.709,-31.694,-31.679,-31.663,-31.647,-31.629,-31.611,-31.592,-31.573,-31.553,-31.532,-31.510,-31.488,
--31.465,-31.442,-31.417,-31.393,-31.367,-31.341,-31.314,-31.287,-31.259,-31.230,-31.201,-31.171,-31.141,-31.110,-31.079,-31.047,
--31.015,-30.982,-30.949,-30.916,-30.882,-30.848,-30.813,-30.778,-30.743,-30.707,-30.671,-30.635,-30.599,-30.562,-30.525,-30.488,
--30.451,-30.413,-30.376,-30.338,-30.300,-30.263,-30.225,-30.187,-30.148,-30.110,-30.072,-30.034,-29.996,-29.958,-29.919,-29.881,
--29.843,-29.805,-29.767,-29.729,-29.691,-29.654,-29.616,-29.579,-29.541,-29.504,-29.467,-29.430,-29.393,-29.356,-29.320,-29.284,
--29.247,-29.212,-29.176,-29.140,-29.105,-29.070,-29.035,-29.001,-28.967,-28.933,-28.899,-28.866,-28.833,-28.801,-28.769,-28.737,
--28.706,-28.675,-28.644,-28.614,-28.585,-28.556,-28.528,-28.500,-28.472,-28.446,-28.420,-28.394,-28.369,-28.345,-28.322,-28.299,
--28.277,-28.256,-28.236,-28.216,-28.198,-28.180,-28.163,-28.147,-28.132,-28.118,-28.105,-28.093,-28.082,-28.072,-28.063,-28.055,
--28.048,-28.042,-28.037,-28.034,-28.031,-28.030,-28.030,-28.031,-28.033,-28.037,-28.041,-28.047,-28.053,-28.061,-28.070,-28.081,
--28.092,-28.104,-28.118,-28.133,-28.148,-28.165,-28.183,-28.202,-28.222,-28.242,-28.264,-28.287,-28.311,-28.335,-28.360,-28.387,
--28.414,-28.441,-28.470,-28.499,-28.529,-28.559,-28.590,-28.622,-28.654,-28.686,-28.719,-28.753,-28.786,-28.820,-28.855,-28.889,
--28.924,-28.959,-28.994,-29.029,-29.064,-29.100,-29.135,-29.170,-29.205,-29.240,-29.275,-29.309,-29.344,-29.378,-29.411,-29.445,
--29.478,-29.510,-29.543,-29.574,-29.606,-29.636,-29.666,-29.696,-29.725,-29.753,-29.781,-29.808,-29.834,-29.860,-29.884,-29.908,
--29.932,-29.954,-29.976,-29.996,-30.016,-30.035,-30.053,-30.070,-30.087,-30.102,-30.116,-30.130,-30.142,-30.154,-30.164,-30.174,
--30.182,-30.190,-30.196,-30.202,-30.206,-30.210,-30.212,-30.213,-30.214,-30.213,-30.211,-30.209,-30.205,-30.200,-30.194,-30.188,
--30.180,-30.171,-30.161,-30.151,-30.139,-30.126,-30.113,-30.098,-30.083,-30.067,-30.050,-30.032,-30.013,-29.994,-29.973,-29.952,
--29.931,-29.908,-29.885,-29.861,-29.837,-29.812,-29.786,-29.760,-29.733,-29.706,-29.678,-29.650,-29.622,-29.593,-29.564,-29.534,
--29.505,-29.475,-29.445,-29.414,-29.384,-29.354,-29.323,-29.293,-29.262,-29.231,-29.201,-29.171,-29.140,-29.110,-29.080,-29.051,
--29.021,-28.992,-28.963,-28.934,-28.906,-28.878,-28.851,-28.824,-28.797,-28.771,-28.745,-28.720,-28.695,-28.671,-28.647,-28.624,
--28.601,-28.579,-28.557,-28.536,-28.516,-28.496,-28.476,-28.458,-28.439,-28.422,-28.405,-28.389,-28.373,-28.357,-28.343,-28.329,
--28.315,-28.302,-28.290,-28.278,-28.266,-28.255,-28.245,-28.235,-28.226,-28.217,-28.209,-28.201,-28.193,-28.186,-28.180,-28.173,
--28.167,-28.162,-28.157,-28.152,-28.148,-28.144,-28.140,-28.136,-28.133,-28.130,-28.128,-28.125,-28.123,-28.121,-28.119,-28.118,
--28.116,-28.115,-28.113,-28.112,-28.111,-28.110,-28.110,-28.109,-28.108,-28.107,-28.106,-28.106,-28.105,-28.104,-28.103,-28.102,
--28.101,-28.099,-28.098,-28.096,-28.094,-28.092,-28.090,-28.088,-28.085,-28.082,-28.078,-28.075,-28.071,-28.066,-28.061,-28.056,
--28.050,-28.044,-28.038,-28.031,-28.023,-28.015,-28.007,-27.998,-27.988,-27.978,-27.967,-27.955,-27.943,-27.931,-27.917,-27.903,
--27.889,-27.873,-27.857,-27.841,-27.824,-27.806,-27.787,-27.768,-27.748,-27.727,-27.706,-27.684,-27.661,-27.638,-27.614,-27.589,
--27.564,-27.539,-27.512,-27.485,-27.458,-27.430,-27.402,-27.373,-27.343,-27.313,-27.283,-27.253,-27.222,-27.190,-27.159,-27.127,
--27.095,-27.062,-27.030,-26.997,-26.964,-26.931,-26.898,-26.866,-26.833,-26.800,-26.767,-26.734,-26.701,-26.669,-26.637,-26.605,
--26.573,-26.541,-26.510,-26.479,-26.449,-26.419,-26.389,-26.360,-26.331,-26.303,-26.275,-26.247,-26.220,-26.194,-26.168,-26.143,
--26.119,-26.094,-26.071,-26.048,-26.026,-26.004,-25.983,-25.963,-25.943,-25.924,-25.906,-25.888,-25.871,-25.854,-25.839,-25.823,
--25.809,-25.795,-25.781,-25.768,-25.756,-25.744,-25.733,-25.723,-25.713,-25.704,-25.695,-25.687,-25.679,-25.672,-25.665,-25.659,
--25.653,-25.648,-25.643,-25.639,-25.636,-25.632,-25.630,-25.627,-25.625,-25.624,-25.623,-25.622,-25.622,-25.623,-25.623,-25.624,
--25.626,-25.628,-25.630,-25.633,-25.636,-25.640,-25.644,-25.648,-25.653,-25.658,-25.663,-25.669,-25.675,-25.682,-25.689,-25.696,
--25.704,-25.712,-25.720,-25.729,-25.737,-25.747,-25.756,-25.766,-25.776,-25.786,-25.796,-25.807,-25.818,-25.829,-25.840,-25.851,
--25.862,-25.874,-25.885,-25.897,-25.908,-25.920,-25.931,-25.943,-25.954,-25.965,-25.976,-25.987,-25.997,-26.007,-26.017,-26.027,
--26.036,-26.045,-26.053,-26.061,-26.068,-26.075,-26.081,-26.087,-26.092,-26.096,-26.100,-26.102,-26.104,-26.105,-26.106,-26.105,
--26.103,-26.101,-26.097,-26.093,-26.087,-26.081,-26.073,-26.065,-26.055,-26.044,-26.032,-26.019,-26.005,-25.990,-25.974,-25.956,
--25.937,-25.918,-25.897,-25.875,-25.852,-25.828,-25.803,-25.777,-25.750,-25.722,-25.693,-25.663,-25.633,-25.601,-25.569,-25.536,
--25.502,-25.468,-25.433,-25.397,-25.361,-25.324,-25.287,-25.250,-25.212,-25.174,-25.136,-25.098,-25.059,-25.021,-24.983,-24.944,
--24.906,-24.869,-24.831,-24.794,-24.757,-24.720,-24.684,-24.649,-24.614,-24.580,-24.547,-24.515,-24.483,-24.452,-24.422,-24.393,
--24.365,-24.339,-24.313,-24.288,-24.265,-24.243,-24.222,-24.202,-24.184,-24.167,-24.151,-24.137,-24.124,-24.112,-24.102,-24.093,
--24.086,-24.080,-24.076,-24.072,-24.071,-24.070,-24.071,-24.074,-24.077,-24.082,-24.089,-24.096,-24.105,-24.115,-24.126,-24.139,
--24.152,-24.167,-24.182,-24.199,-24.217,-24.235,-24.255,-24.275,-24.296,-24.317,-24.340,-24.363,-24.386,-24.410,-24.435,-24.459,
--24.485,-24.510,-24.536,-24.562,-24.588,-24.614,-24.640,-24.666,-24.692,-24.717,-24.743,-24.768,-24.793,-24.818,-24.842,-24.866,
--24.889,-24.911,-24.933,-24.955,-24.975,-24.995,-25.014,-25.033,-25.050,-25.067,-25.082,-25.097,-25.111,-25.123,-25.135,-25.146,
--25.155,-25.164,-25.171,-25.178,-25.183,-25.187,-25.190,-25.192,-25.192,-25.192,-25.190,-25.187,-25.183,-25.178,-25.172,-25.165,
--25.156,-25.147,-25.136,-25.125,-25.112,-25.098,-25.084,-25.068,-25.051,-25.034,-25.016,-24.996,-24.976,-24.956,-24.934,-24.912,
--24.889,-24.865,-24.841,-24.816,-24.790,-24.764,-24.738,-24.711,-24.683,-24.655,-24.627,-24.599,-24.570,-24.541,-24.512,-24.483,
--24.453,-24.424,-24.394,-24.365,-24.335,-24.305,-24.276,-24.246,-24.897,-24.877,-24.857,-24.838,-24.818,-24.799,-24.779,-24.760,
--24.741,-24.721,-24.702,-24.683,-24.665,-24.646,-24.628,-24.609,-24.591,-24.573,-24.556,-24.538,-24.521,-24.504,-24.487,-24.470,
--24.454,-24.438,-24.422,-24.406,-24.390,-24.375,-24.360,-24.345,-24.330,-24.315,-24.301,-24.286,-24.272,-24.258,-24.245,-24.231,
--24.217,-24.204,-24.190,-24.177,-24.164,-24.151,-24.138,-24.125,-24.112,-24.099,-24.086,-24.073,-24.060,-24.047,-24.033,-24.020,
--24.007,-23.994,-23.980,-23.967,-23.953,-23.939,-23.925,-23.911,-23.897,-23.883,-23.868,-23.854,-23.839,-23.823,-23.808,-23.793,
--23.777,-23.761,-23.745,-23.729,-23.712,-23.695,-23.678,-23.661,-23.644,-23.626,-23.608,-23.590,-23.572,-23.554,-23.535,-23.516,
--23.497,-23.478,-23.459,-23.440,-23.420,-23.400,-23.381,-23.361,-23.341,-23.321,-23.301,-23.281,-23.261,-23.241,-23.221,-23.201,
--23.182,-23.162,-23.142,-23.123,-23.103,-23.084,-23.065,-23.046,-23.028,-23.010,-22.991,-22.974,-22.956,-22.939,-22.922,-22.906,
--22.890,-22.874,-22.859,-22.845,-22.830,-22.817,-22.803,-22.791,-22.779,-22.767,-22.756,-22.746,-22.736,-22.727,-22.718,-22.710,
--22.703,-22.696,-22.690,-22.685,-22.681,-22.677,-22.674,-22.672,-22.670,-22.669,-22.669,-22.670,-22.671,-22.673,-22.676,-22.679,
--22.684,-22.689,-22.694,-22.701,-22.708,-22.716,-22.725,-22.734,-22.744,-22.755,-22.767,-22.779,-22.792,-22.805,-22.819,-22.834,
--22.849,-22.865,-22.882,-22.899,-22.916,-22.934,-22.953,-22.972,-22.992,-23.012,-23.033,-23.054,-23.075,-23.097,-23.119,-23.142,
--23.164,-23.188,-23.211,-23.235,-23.259,-23.283,-23.308,-23.332,-23.357,-23.382,-23.407,-23.433,-23.458,-23.484,-23.509,-23.535,
--23.561,-23.586,-23.612,-23.638,-23.663,-23.689,-23.714,-23.740,-23.765,-23.790,-23.815,-23.840,-23.865,-23.890,-23.914,-23.939,
--23.963,-23.987,-24.010,-24.034,-24.057,-24.080,-24.102,-24.125,-24.147,-24.169,-24.191,-24.212,-24.233,-24.254,-24.274,-24.294,
--24.314,-24.333,-24.352,-24.371,-24.390,-24.408,-24.426,-24.444,-24.461,-24.478,-24.495,-24.511,-24.527,-24.543,-24.558,-24.574,
--24.589,-24.603,-24.618,-24.632,-24.646,-24.660,-24.673,-24.686,-24.699,-24.712,-24.725,-24.738,-24.750,-24.762,-24.774,-24.786,
--24.798,-24.810,-24.821,-24.833,-24.844,-24.856,-24.867,-24.879,-24.890,-24.902,-24.913,-24.925,-24.936,-24.948,-24.959,-24.971,
--24.983,-24.995,-25.007,-25.020,-25.032,-25.045,-25.058,-25.071,-25.084,-25.097,-25.111,-25.125,-25.139,-25.154,-25.169,-25.184,
--25.199,-25.215,-25.231,-25.247,-25.264,-25.281,-25.298,-25.316,-25.334,-25.352,-25.371,-25.390,-25.409,-25.429,-25.449,-25.470,
--25.490,-25.512,-25.533,-25.555,-25.578,-25.600,-25.623,-25.647,-25.671,-25.695,-25.719,-25.744,-25.769,-25.794,-25.820,-25.846,
--25.873,-25.899,-25.926,-25.953,-25.981,-26.008,-26.036,-26.065,-26.093,-26.122,-26.150,-26.179,-26.209,-26.238,-26.268,-26.297,
--26.327,-26.357,-26.387,-26.418,-26.448,-26.478,-26.509,-26.540,-26.570,-26.601,-26.632,-26.663,-26.693,-26.724,-26.755,-26.786,
--26.817,-26.848,-26.879,-26.910,-26.940,-26.971,-27.002,-27.033,-27.063,-27.094,-27.124,-27.155,-27.185,-27.215,-27.246,-27.276,
--27.306,-27.336,-27.366,-27.395,-27.425,-27.455,-27.484,-27.513,-27.543,-27.572,-27.601,-27.630,-27.659,-27.687,-27.716,-27.745,
--27.773,-27.801,-27.829,-27.858,-27.885,-27.913,-27.941,-27.969,-27.996,-28.024,-28.051,-28.078,-28.105,-28.132,-28.159,-28.186,
--28.213,-28.239,-28.266,-28.292,-28.318,-28.344,-28.370,-28.396,-28.422,-28.448,-28.474,-28.499,-28.525,-28.550,-28.575,-28.600,
--28.625,-28.650,-28.675,-28.700,-28.724,-28.749,-28.773,-28.798,-28.822,-28.846,-28.870,-28.894,-28.917,-28.941,-28.965,-28.988,
--29.011,-29.035,-29.058,-29.081,-29.104,-29.126,-29.149,-29.172,-29.194,-29.216,-29.239,-29.261,-29.283,-29.304,-29.326,-29.348,
--29.369,-29.391,-29.412,-29.433,-29.454,-29.475,-29.496,-29.517,-29.537,-29.558,-29.578,-29.598,-29.619,-29.639,-29.658,-29.678,
--29.698,-29.717,-29.737,-29.756,-29.775,-29.794,-29.813,-29.832,-29.851,-29.870,-29.888,-29.907,-29.925,-29.943,-29.961,-29.979,
--29.997,-30.015,-30.032,-30.050,-30.067,-30.085,-30.102,-30.119,-30.136,-30.153,-30.169,-30.186,-30.203,-30.219,-30.235,-30.251,
--30.267,-30.283,-30.299,-30.315,-30.331,-30.346,-30.362,-30.377,-30.392,-30.407,-30.422,-30.437,-30.452,-30.466,-30.481,-30.495,
--30.509,-30.524,-30.538,-30.552,-30.565,-30.579,-30.593,-30.606,-30.620,-30.633,-30.646,-30.659,-30.672,-30.685,-30.698,-30.710,
--30.723,-30.735,-30.748,-30.760,-30.772,-30.784,-30.796,-30.808,-30.819,-30.831,-30.842,-30.854,-30.865,-30.876,-30.887,-30.898,
--30.909,-30.920,-30.930,-30.941,-30.951,-30.962,-30.972,-30.982,-30.992,-31.002,-31.012,-31.022,-31.032,-31.042,-31.051,-31.061,
--31.070,-31.079,-31.088,-31.098,-31.107,-31.116,-31.124,-31.133,-31.142,-31.150,-31.159,-31.167,-31.176,-31.184,-31.192,-31.200,
--31.208,-31.216,-31.224,-31.231,-31.239,-31.246,-31.254,-31.261,-31.268,-31.275,-31.282,-31.289,-31.295,-31.302,-31.308,-31.315,
--31.321,-31.327,-31.333,-31.338,-31.344,-31.349,-31.355,-31.360,-31.365,-31.369,-31.374,-31.378,-31.382,-31.386,-31.390,-31.394,
--31.397,-31.400,-31.403,-31.406,-31.408,-31.410,-31.412,-31.414,-31.415,-31.416,-31.417,-31.418,-31.418,-31.418,-31.417,-31.416,
--31.415,-31.414,-31.412,-31.410,-31.407,-31.404,-31.401,-31.397,-31.393,-31.388,-31.384,-31.378,-31.372,-31.366,-31.360,-31.353,
--31.345,-31.337,-31.329,-31.320,-31.310,-31.301,-31.290,-31.280,-31.268,-31.257,-31.244,-31.232,-31.219,-31.205,-31.191,-31.176,
--31.161,-31.146,-31.130,-31.113,-31.096,-31.079,-31.061,-31.043,-31.024,-31.005,-30.985,-30.965,-30.944,-30.923,-30.902,-30.880,
--30.858,-30.836,-30.813,-30.789,-30.766,-30.742,-30.718,-30.693,-30.668,-30.643,-30.617,-30.592,-30.566,-30.539,-30.513,-30.486,
--30.459,-30.432,-30.405,-30.377,-30.350,-30.322,-30.294,-30.266,-30.238,-30.210,-30.181,-30.153,-30.125,-30.096,-30.068,-30.039,
--30.011,-29.982,-29.954,-29.926,-29.897,-29.869,-29.841,-29.813,-29.785,-29.757,-29.729,-29.701,-29.674,-29.647,-29.619,-29.592,
--29.565,-29.539,-29.512,-29.486,-29.459,-29.433,-29.408,-29.382,-29.357,-29.332,-29.307,-29.282,-29.258,-29.233,-29.210,-29.186,
--29.163,-29.139,-29.117,-29.094,-29.072,-29.050,-29.028,-29.007,-28.986,-28.965,-28.945,-28.925,-28.905,-28.886,-28.866,-28.848,
--28.829,-28.811,-28.794,-28.777,-28.760,-28.743,-28.727,-28.712,-28.696,-28.681,-28.667,-28.653,-28.640,-28.626,-28.614,-28.602,
--28.590,-28.579,-28.568,-28.558,-28.548,-28.539,-28.530,-28.522,-28.514,-28.507,-28.501,-28.494,-28.489,-28.484,-28.480,-28.476,
--28.473,-28.470,-28.468,-28.467,-28.466,-28.465,-28.466,-28.467,-28.468,-28.470,-28.473,-28.476,-28.480,-28.485,-28.490,-28.496,
--28.502,-28.509,-28.517,-28.525,-28.533,-28.543,-28.552,-28.563,-28.574,-28.585,-28.597,-28.609,-28.622,-28.636,-28.650,-28.664,
--28.679,-28.695,-28.710,-28.727,-28.743,-28.760,-28.778,-28.795,-28.814,-28.832,-28.851,-28.870,-28.889,-28.909,-28.928,-28.948,
--28.969,-28.989,-29.009,-29.030,-29.051,-29.072,-29.093,-29.114,-29.135,-29.156,-29.177,-29.199,-29.220,-29.241,-29.262,-29.283,
--29.303,-29.324,-29.345,-29.365,-29.385,-29.405,-29.425,-29.444,-29.464,-29.483,-29.501,-29.520,-29.538,-29.556,-29.573,-29.590,
--29.607,-29.623,-29.639,-29.654,-29.669,-29.684,-29.698,-29.712,-29.725,-29.738,-29.750,-29.762,-29.773,-29.784,-29.794,-29.804,
--29.813,-29.822,-29.830,-29.837,-29.844,-29.851,-29.856,-29.862,-29.866,-29.870,-29.874,-29.877,-29.879,-29.881,-29.883,-29.883,
--29.883,-29.883,-29.882,-29.881,-29.878,-29.876,-29.873,-29.869,-29.865,-29.860,-29.855,-29.849,-29.843,-29.836,-29.829,-29.821,
--29.813,-29.804,-29.795,-29.785,-29.775,-29.765,-29.754,-29.743,-29.731,-29.719,-29.707,-29.694,-29.681,-29.668,-29.654,-29.640,
--29.626,-29.612,-29.597,-29.582,-29.567,-29.552,-29.536,-29.520,-29.505,-29.488,-29.472,-29.456,-29.440,-29.423,-29.407,-29.390,
--29.373,-29.357,-29.340,-29.323,-29.307,-29.290,-29.273,-29.257,-29.240,-29.224,-29.207,-29.191,-29.175,-29.158,-29.143,-29.127,
--29.111,-29.095,-29.080,-29.065,-29.050,-29.035,-29.020,-29.006,-28.992,-28.978,-28.964,-28.951,-28.937,-28.924,-28.912,-28.899,
--28.887,-28.875,-28.863,-28.852,-28.841,-28.830,-28.819,-28.809,-28.799,-28.789,-28.779,-28.770,-28.761,-28.753,-28.744,-28.736,
--28.728,-28.721,-28.713,-28.706,-28.700,-28.693,-28.687,-28.681,-28.675,-28.670,-28.664,-28.659,-28.654,-28.650,-28.645,-28.641,
--28.637,-28.633,-28.629,-28.625,-28.622,-28.618,-28.615,-28.612,-28.609,-28.606,-28.603,-28.600,-28.597,-28.594,-28.591,-28.589,
--28.586,-28.583,-28.580,-28.577,-28.574,-28.571,-28.568,-28.564,-28.561,-28.557,-28.554,-28.550,-28.545,-28.541,-28.536,-28.532,
--28.526,-28.521,-28.515,-28.510,-28.503,-28.497,-28.490,-28.482,-28.475,-28.467,-28.458,-28.450,-28.440,-28.431,-28.421,-28.410,
--28.399,-28.388,-28.376,-28.364,-28.351,-28.338,-28.324,-28.310,-28.295,-28.280,-28.264,-28.248,-28.231,-28.214,-28.196,-28.178,
--28.159,-28.140,-28.121,-28.101,-28.080,-28.060,-28.038,-28.016,-27.994,-27.972,-27.949,-27.925,-27.902,-27.878,-27.853,-27.828,
--27.803,-27.778,-27.752,-27.726,-27.700,-27.674,-27.647,-27.621,-27.594,-27.567,-27.539,-27.512,-27.485,-27.457,-27.430,-27.402,
--27.374,-27.347,-27.319,-27.292,-27.264,-27.237,-27.209,-27.182,-27.155,-27.128,-27.101,-27.075,-27.049,-27.023,-26.997,-26.971,
--26.946,-26.921,-26.896,-26.872,-26.848,-26.824,-26.801,-26.778,-26.755,-26.733,-26.711,-26.690,-26.669,-26.649,-26.629,-26.610,
--26.591,-26.572,-26.554,-26.537,-26.520,-26.503,-26.487,-26.472,-26.457,-26.443,-26.429,-26.416,-26.403,-26.391,-26.379,-26.368,
--26.358,-26.348,-26.339,-26.330,-26.322,-26.314,-26.307,-26.301,-26.295,-26.290,-26.285,-26.281,-26.277,-26.274,-26.271,-26.269,
--26.268,-26.267,-26.266,-26.267,-26.267,-26.268,-26.270,-26.272,-26.275,-26.278,-26.281,-26.285,-26.289,-26.294,-26.299,-26.305,
--26.311,-26.318,-26.324,-26.331,-26.339,-26.346,-26.355,-26.363,-26.371,-26.380,-26.389,-26.398,-26.408,-26.417,-26.427,-26.437,
--26.446,-26.456,-26.466,-26.476,-26.486,-26.496,-26.506,-26.516,-26.525,-26.535,-26.544,-26.553,-26.562,-26.571,-26.579,-26.587,
--26.595,-26.603,-26.610,-26.616,-26.622,-26.628,-26.633,-26.638,-26.642,-26.646,-26.649,-26.651,-26.653,-26.654,-26.654,-26.654,
--26.653,-26.651,-26.649,-26.646,-26.642,-26.637,-26.631,-26.625,-26.617,-26.609,-26.600,-26.591,-26.580,-26.568,-26.556,-26.543,
--26.529,-26.514,-26.498,-26.482,-26.464,-26.446,-26.427,-26.407,-26.386,-26.365,-26.343,-26.320,-26.296,-26.272,-26.247,-26.222,
--26.195,-26.169,-26.141,-26.114,-26.085,-26.056,-26.027,-25.998,-25.968,-25.937,-25.907,-25.876,-25.845,-25.814,-25.782,-25.751,
--25.719,-25.688,-25.656,-25.625,-25.594,-25.563,-25.532,-25.501,-25.471,-25.441,-25.411,-25.381,-25.352,-25.324,-25.296,-25.269,
--25.242,-25.215,-25.190,-25.165,-25.141,-25.117,-25.094,-25.072,-25.051,-25.031,-25.011,-24.993,-24.975,-24.958,-24.943,-24.928,
--24.914,-24.901,-24.889,-24.878,-24.868,-24.858,-24.850,-24.843,-24.837,-24.832,-24.828,-24.825,-24.822,-24.821,-24.821,-24.821,
--24.823,-24.825,-24.829,-24.833,-24.838,-24.843,-24.850,-24.857,-24.865,-24.874,-24.883,-24.893,-24.904,-24.915,-24.927,-24.939,
--24.952,-24.965,-24.978,-24.992,-25.006,-25.021,-25.036,-25.051,-25.066,-25.081,-25.096,-25.112,-25.127,-25.143,-25.158,-25.174,
--25.189,-25.204,-25.219,-25.233,-25.248,-25.262,-25.276,-25.289,-25.302,-25.315,-25.327,-25.338,-25.350,-25.360,-25.370,-25.380,
--25.389,-25.397,-25.405,-25.412,-25.419,-25.425,-25.430,-25.434,-25.438,-25.441,-25.443,-25.445,-25.445,-25.445,-25.445,-25.443,
--25.441,-25.438,-25.435,-25.431,-25.426,-25.420,-25.413,-25.406,-25.399,-25.390,-25.381,-25.371,-25.361,-25.350,-25.338,-25.326,
--25.313,-25.300,-25.286,-25.272,-25.257,-25.242,-25.227,-25.211,-25.194,-25.177,-25.160,-25.143,-25.125,-25.107,-25.089,-25.070,
--25.051,-25.032,-25.013,-24.994,-24.975,-24.955,-24.936,-24.916,-24.897,-25.836,-25.826,-25.816,-25.806,-25.795,-25.785,-25.775,
--25.764,-25.754,-25.744,-25.733,-25.723,-25.713,-25.702,-25.692,-25.682,-25.671,-25.661,-25.651,-25.641,-25.631,-25.621,-25.611,
--25.601,-25.591,-25.581,-25.571,-25.562,-25.552,-25.542,-25.533,-25.523,-25.514,-25.504,-25.495,-25.485,-25.476,-25.467,-25.457,
--25.448,-25.439,-25.429,-25.420,-25.411,-25.402,-25.392,-25.383,-25.374,-25.364,-25.355,-25.346,-25.336,-25.327,-25.317,-25.308,
--25.298,-25.289,-25.279,-25.269,-25.259,-25.249,-25.239,-25.229,-25.219,-25.209,-25.198,-25.188,-25.177,-25.167,-25.156,-25.145,
--25.134,-25.123,-25.112,-25.100,-25.089,-25.078,-25.066,-25.054,-25.043,-25.031,-25.019,-25.007,-24.994,-24.982,-24.970,-24.958,
--24.945,-24.933,-24.920,-24.907,-24.895,-24.882,-24.869,-24.857,-24.844,-24.831,-24.818,-24.806,-24.793,-24.780,-24.768,-24.755,
--24.742,-24.730,-24.717,-24.705,-24.693,-24.681,-24.669,-24.657,-24.645,-24.634,-24.622,-24.611,-24.600,-24.589,-24.579,-24.568,
--24.558,-24.548,-24.539,-24.529,-24.520,-24.511,-24.503,-24.495,-24.487,-24.479,-24.472,-24.465,-24.458,-24.452,-24.446,-24.441,
--24.435,-24.431,-24.426,-24.422,-24.419,-24.416,-24.413,-24.411,-24.409,-24.407,-24.406,-24.406,-24.405,-24.406,-24.406,-24.407,
--24.409,-24.411,-24.413,-24.416,-24.419,-24.423,-24.427,-24.432,-24.437,-24.442,-24.448,-24.454,-24.461,-24.468,-24.475,-24.483,
--24.492,-24.500,-24.509,-24.518,-24.528,-24.538,-24.548,-24.559,-24.570,-24.582,-24.593,-24.605,-24.617,-24.630,-24.643,-24.656,
--24.669,-24.682,-24.696,-24.710,-24.724,-24.739,-24.753,-24.768,-24.783,-24.798,-24.813,-24.828,-24.844,-24.860,-24.875,-24.891,
--24.907,-24.923,-24.939,-24.955,-24.971,-24.987,-25.003,-25.019,-25.035,-25.052,-25.068,-25.084,-25.100,-25.116,-25.132,-25.148,
--25.164,-25.180,-25.195,-25.211,-25.227,-25.242,-25.258,-25.273,-25.288,-25.303,-25.319,-25.333,-25.348,-25.363,-25.377,-25.392,
--25.406,-25.420,-25.434,-25.448,-25.462,-25.476,-25.489,-25.503,-25.516,-25.529,-25.542,-25.555,-25.567,-25.580,-25.593,-25.605,
--25.617,-25.629,-25.641,-25.653,-25.665,-25.677,-25.689,-25.700,-25.712,-25.723,-25.734,-25.746,-25.757,-25.768,-25.779,-25.790,
--25.801,-25.812,-25.824,-25.835,-25.846,-25.857,-25.868,-25.879,-25.890,-25.901,-25.912,-25.923,-25.934,-25.946,-25.957,-25.969,
--25.980,-25.992,-26.004,-26.015,-26.027,-26.039,-26.052,-26.064,-26.076,-26.089,-26.102,-26.115,-26.128,-26.141,-26.154,-26.168,
--26.182,-26.196,-26.210,-26.224,-26.239,-26.253,-26.268,-26.283,-26.299,-26.314,-26.330,-26.346,-26.362,-26.379,-26.395,-26.412,
--26.429,-26.446,-26.464,-26.482,-26.499,-26.518,-26.536,-26.555,-26.573,-26.592,-26.611,-26.631,-26.651,-26.670,-26.690,-26.711,
--26.731,-26.751,-26.772,-26.793,-26.814,-26.835,-26.857,-26.878,-26.900,-26.922,-26.944,-26.966,-26.989,-27.011,-27.034,-27.056,
--27.079,-27.102,-27.125,-27.148,-27.171,-27.194,-27.218,-27.241,-27.265,-27.288,-27.312,-27.335,-27.359,-27.383,-27.407,-27.430,
--27.454,-27.478,-27.502,-27.526,-27.549,-27.573,-27.597,-27.621,-27.645,-27.668,-27.692,-27.716,-27.740,-27.763,-27.787,-27.811,
--27.834,-27.858,-27.881,-27.904,-27.928,-27.951,-27.974,-27.997,-28.020,-28.043,-28.066,-28.089,-28.112,-28.135,-28.158,-28.180,
--28.203,-28.225,-28.247,-28.270,-28.292,-28.314,-28.336,-28.358,-28.380,-28.401,-28.423,-28.445,-28.466,-28.488,-28.509,-28.530,
--28.551,-28.573,-28.594,-28.615,-28.635,-28.656,-28.677,-28.697,-28.718,-28.738,-28.759,-28.779,-28.799,-28.819,-28.840,-28.860,
--28.879,-28.899,-28.919,-28.939,-28.958,-28.978,-28.998,-29.017,-29.036,-29.056,-29.075,-29.094,-29.113,-29.132,-29.151,-29.170,
--29.189,-29.208,-29.226,-29.245,-29.264,-29.282,-29.301,-29.319,-29.338,-29.356,-29.374,-29.392,-29.410,-29.428,-29.447,-29.464,
--29.482,-29.500,-29.518,-29.536,-29.553,-29.571,-29.589,-29.606,-29.624,-29.641,-29.658,-29.676,-29.693,-29.710,-29.727,-29.744,
--29.761,-29.778,-29.795,-29.812,-29.829,-29.845,-29.862,-29.879,-29.895,-29.912,-29.928,-29.944,-29.961,-29.977,-29.993,-30.009,
--30.025,-30.041,-30.057,-30.072,-30.088,-30.104,-30.119,-30.135,-30.150,-30.165,-30.181,-30.196,-30.211,-30.226,-30.241,-30.256,
--30.271,-30.285,-30.300,-30.314,-30.329,-30.343,-30.357,-30.372,-30.386,-30.400,-30.414,-30.427,-30.441,-30.455,-30.468,-30.482,
--30.495,-30.508,-30.521,-30.535,-30.548,-30.560,-30.573,-30.586,-30.598,-30.611,-30.623,-30.636,-30.648,-30.660,-30.672,-30.684,
--30.696,-30.707,-30.719,-30.731,-30.742,-30.753,-30.765,-30.776,-30.787,-30.798,-30.808,-30.819,-30.830,-30.840,-30.851,-30.861,
--30.871,-30.881,-30.891,-30.901,-30.911,-30.921,-30.931,-30.940,-30.950,-30.959,-30.968,-30.977,-30.987,-30.995,-31.004,-31.013,
--31.022,-31.030,-31.039,-31.047,-31.055,-31.063,-31.071,-31.079,-31.087,-31.095,-31.103,-31.110,-31.117,-31.125,-31.132,-31.139,
--31.146,-31.152,-31.159,-31.166,-31.172,-31.178,-31.184,-31.190,-31.196,-31.202,-31.207,-31.213,-31.218,-31.223,-31.228,-31.233,
--31.237,-31.242,-31.246,-31.250,-31.254,-31.258,-31.261,-31.264,-31.268,-31.271,-31.273,-31.276,-31.278,-31.280,-31.282,-31.284,
--31.285,-31.286,-31.287,-31.288,-31.288,-31.289,-31.289,-31.288,-31.288,-31.287,-31.286,-31.284,-31.283,-31.281,-31.278,-31.276,
--31.273,-31.270,-31.267,-31.263,-31.259,-31.254,-31.250,-31.245,-31.240,-31.234,-31.228,-31.222,-31.215,-31.208,-31.201,-31.194,
--31.186,-31.178,-31.169,-31.161,-31.151,-31.142,-31.132,-31.122,-31.112,-31.101,-31.090,-31.079,-31.067,-31.055,-31.043,-31.031,
--31.018,-31.005,-30.991,-30.978,-30.964,-30.950,-30.935,-30.920,-30.905,-30.890,-30.875,-30.859,-30.843,-30.827,-30.811,-30.794,
--30.777,-30.761,-30.743,-30.726,-30.709,-30.691,-30.674,-30.656,-30.638,-30.620,-30.601,-30.583,-30.565,-30.546,-30.528,-30.509,
--30.490,-30.471,-30.453,-30.434,-30.415,-30.396,-30.377,-30.359,-30.340,-30.321,-30.302,-30.283,-30.265,-30.246,-30.227,-30.209,
--30.190,-30.172,-30.154,-30.136,-30.118,-30.100,-30.082,-30.064,-30.046,-30.029,-30.012,-29.994,-29.977,-29.961,-29.944,-29.927,
--29.911,-29.895,-29.879,-29.863,-29.847,-29.832,-29.816,-29.801,-29.786,-29.771,-29.757,-29.743,-29.728,-29.714,-29.701,-29.687,
--29.674,-29.661,-29.648,-29.635,-29.622,-29.610,-29.598,-29.586,-29.575,-29.563,-29.552,-29.541,-29.530,-29.519,-29.509,-29.499,
--29.489,-29.479,-29.469,-29.460,-29.451,-29.442,-29.433,-29.425,-29.417,-29.408,-29.401,-29.393,-29.386,-29.378,-29.371,-29.364,
--29.358,-29.351,-29.345,-29.339,-29.334,-29.328,-29.323,-29.318,-29.313,-29.308,-29.304,-29.299,-29.295,-29.292,-29.288,-29.285,
--29.282,-29.279,-29.276,-29.274,-29.271,-29.269,-29.268,-29.266,-29.265,-29.264,-29.263,-29.262,-29.262,-29.261,-29.262,-29.262,
--29.262,-29.263,-29.264,-29.265,-29.266,-29.268,-29.270,-29.272,-29.274,-29.277,-29.280,-29.282,-29.286,-29.289,-29.293,-29.296,
--29.300,-29.305,-29.309,-29.314,-29.319,-29.324,-29.329,-29.334,-29.340,-29.346,-29.352,-29.358,-29.364,-29.370,-29.377,-29.384,
--29.391,-29.398,-29.405,-29.413,-29.420,-29.428,-29.436,-29.443,-29.451,-29.460,-29.468,-29.476,-29.485,-29.493,-29.502,-29.510,
--29.519,-29.528,-29.537,-29.546,-29.555,-29.564,-29.573,-29.582,-29.591,-29.600,-29.609,-29.618,-29.628,-29.637,-29.646,-29.655,
--29.664,-29.673,-29.682,-29.691,-29.699,-29.708,-29.717,-29.726,-29.734,-29.743,-29.751,-29.759,-29.767,-29.776,-29.783,-29.791,
--29.799,-29.807,-29.814,-29.821,-29.828,-29.835,-29.842,-29.849,-29.855,-29.861,-29.868,-29.873,-29.879,-29.885,-29.890,-29.895,
--29.900,-29.905,-29.909,-29.914,-29.918,-29.922,-29.925,-29.929,-29.932,-29.935,-29.937,-29.940,-29.942,-29.944,-29.946,-29.947,
--29.948,-29.949,-29.950,-29.951,-29.951,-29.951,-29.951,-29.950,-29.949,-29.948,-29.947,-29.946,-29.944,-29.942,-29.940,-29.937,
--29.934,-29.931,-29.928,-29.925,-29.921,-29.917,-29.913,-29.909,-29.904,-29.899,-29.894,-29.889,-29.884,-29.878,-29.872,-29.866,
--29.860,-29.854,-29.847,-29.840,-29.833,-29.826,-29.819,-29.812,-29.804,-29.797,-29.789,-29.781,-29.773,-29.765,-29.757,-29.748,
--29.740,-29.731,-29.723,-29.714,-29.705,-29.697,-29.688,-29.679,-29.670,-29.661,-29.652,-29.643,-29.634,-29.625,-29.616,-29.607,
--29.598,-29.589,-29.580,-29.571,-29.562,-29.553,-29.544,-29.536,-29.527,-29.518,-29.510,-29.501,-29.493,-29.484,-29.476,-29.468,
--29.460,-29.452,-29.444,-29.436,-29.428,-29.420,-29.413,-29.405,-29.398,-29.391,-29.384,-29.377,-29.370,-29.363,-29.356,-29.350,
--29.343,-29.337,-29.330,-29.324,-29.318,-29.312,-29.306,-29.300,-29.294,-29.288,-29.283,-29.277,-29.271,-29.266,-29.260,-29.255,
--29.249,-29.244,-29.238,-29.233,-29.228,-29.222,-29.217,-29.211,-29.206,-29.200,-29.194,-29.189,-29.183,-29.177,-29.171,-29.165,
--29.159,-29.153,-29.146,-29.140,-29.133,-29.126,-29.119,-29.112,-29.104,-29.097,-29.089,-29.081,-29.072,-29.064,-29.055,-29.046,
--29.037,-29.027,-29.017,-29.007,-28.997,-28.986,-28.975,-28.964,-28.952,-28.940,-28.928,-28.916,-28.903,-28.890,-28.876,-28.862,
--28.848,-28.833,-28.818,-28.803,-28.787,-28.771,-28.755,-28.738,-28.722,-28.704,-28.687,-28.669,-28.650,-28.632,-28.613,-28.593,
--28.574,-28.554,-28.534,-28.513,-28.493,-28.472,-28.450,-28.429,-28.407,-28.385,-28.363,-28.340,-28.318,-28.295,-28.272,-28.249,
--28.225,-28.202,-28.178,-28.155,-28.131,-28.107,-28.083,-28.059,-28.035,-28.011,-27.987,-27.962,-27.938,-27.914,-27.890,-27.866,
--27.842,-27.819,-27.795,-27.771,-27.748,-27.724,-27.701,-27.678,-27.655,-27.633,-27.611,-27.588,-27.567,-27.545,-27.524,-27.503,
--27.482,-27.461,-27.441,-27.422,-27.402,-27.383,-27.365,-27.346,-27.329,-27.311,-27.294,-27.278,-27.262,-27.246,-27.231,-27.216,
--27.202,-27.188,-27.175,-27.162,-27.150,-27.138,-27.127,-27.116,-27.106,-27.096,-27.087,-27.078,-27.070,-27.063,-27.056,-27.049,
--27.043,-27.038,-27.033,-27.028,-27.024,-27.021,-27.018,-27.016,-27.014,-27.013,-27.012,-27.011,-27.011,-27.012,-27.013,-27.014,
--27.016,-27.019,-27.021,-27.024,-27.028,-27.032,-27.036,-27.040,-27.045,-27.050,-27.056,-27.062,-27.068,-27.074,-27.080,-27.087,
--27.094,-27.101,-27.108,-27.115,-27.123,-27.130,-27.138,-27.145,-27.153,-27.161,-27.168,-27.176,-27.184,-27.191,-27.199,-27.206,
--27.213,-27.220,-27.227,-27.234,-27.240,-27.246,-27.252,-27.258,-27.263,-27.268,-27.273,-27.278,-27.282,-27.285,-27.289,-27.291,
--27.294,-27.296,-27.297,-27.298,-27.299,-27.299,-27.299,-27.298,-27.296,-27.294,-27.292,-27.289,-27.285,-27.281,-27.276,-27.271,
--27.265,-27.259,-27.252,-27.244,-27.236,-27.228,-27.218,-27.209,-27.198,-27.188,-27.176,-27.164,-27.152,-27.139,-27.125,-27.111,
--27.097,-27.082,-27.067,-27.051,-27.035,-27.018,-27.001,-26.984,-26.966,-26.948,-26.930,-26.911,-26.892,-26.873,-26.853,-26.834,
--26.814,-26.794,-26.774,-26.753,-26.733,-26.712,-26.692,-26.671,-26.651,-26.630,-26.610,-26.589,-26.569,-26.548,-26.528,-26.508,
--26.488,-26.468,-26.449,-26.430,-26.411,-26.392,-26.373,-26.355,-26.337,-26.320,-26.303,-26.286,-26.269,-26.253,-26.238,-26.223,
--26.208,-26.194,-26.180,-26.166,-26.154,-26.141,-26.129,-26.118,-26.107,-26.096,-26.087,-26.077,-26.068,-26.060,-26.052,-26.045,
--26.038,-26.031,-26.026,-26.020,-26.015,-26.011,-26.007,-26.003,-26.000,-25.998,-25.996,-25.994,-25.993,-25.992,-25.992,-25.991,
--25.992,-25.992,-25.993,-25.994,-25.996,-25.998,-26.000,-26.002,-26.005,-26.008,-26.011,-26.014,-26.017,-26.021,-26.024,-26.028,
--26.032,-26.036,-26.039,-26.043,-26.047,-26.051,-26.055,-26.059,-26.063,-26.067,-26.071,-26.074,-26.078,-26.081,-26.085,-26.088,
--26.091,-26.094,-26.096,-26.098,-26.101,-26.103,-26.104,-26.106,-26.107,-26.108,-26.109,-26.109,-26.109,-26.109,-26.108,-26.108,
--26.107,-26.105,-26.104,-26.102,-26.099,-26.097,-26.094,-26.091,-26.087,-26.084,-26.079,-26.075,-26.070,-26.065,-26.060,-26.055,
--26.049,-26.043,-26.036,-26.030,-26.023,-26.016,-26.009,-26.001,-25.993,-25.985,-25.977,-25.969,-25.960,-25.951,-25.943,-25.934,
--25.924,-25.915,-25.906,-25.896,-25.886,-25.876,-25.867,-25.857,-25.847,-25.836,-26.581,-26.576,-26.570,-26.564,-26.558,-26.553,
--26.547,-26.541,-26.536,-26.530,-26.524,-26.519,-26.513,-26.507,-26.502,-26.496,-26.491,-26.485,-26.480,-26.474,-26.469,-26.463,
--26.458,-26.452,-26.447,-26.442,-26.436,-26.431,-26.426,-26.420,-26.415,-26.410,-26.405,-26.399,-26.394,-26.389,-26.384,-26.379,
--26.374,-26.368,-26.363,-26.358,-26.353,-26.348,-26.343,-26.338,-26.333,-26.328,-26.323,-26.317,-26.312,-26.307,-26.302,-26.297,
--26.292,-26.287,-26.281,-26.276,-26.271,-26.266,-26.261,-26.255,-26.250,-26.245,-26.239,-26.234,-26.229,-26.223,-26.218,-26.212,
--26.207,-26.201,-26.196,-26.190,-26.185,-26.179,-26.173,-26.168,-26.162,-26.156,-26.151,-26.145,-26.139,-26.133,-26.128,-26.122,
--26.116,-26.110,-26.104,-26.099,-26.093,-26.087,-26.081,-26.076,-26.070,-26.064,-26.058,-26.053,-26.047,-26.041,-26.036,-26.030,
--26.025,-26.019,-26.014,-26.009,-26.003,-25.998,-25.993,-25.988,-25.983,-25.978,-25.973,-25.969,-25.964,-25.960,-25.955,-25.951,
--25.947,-25.943,-25.939,-25.935,-25.931,-25.928,-25.924,-25.921,-25.918,-25.915,-25.912,-25.910,-25.907,-25.905,-25.903,-25.901,
--25.899,-25.898,-25.896,-25.895,-25.894,-25.893,-25.892,-25.892,-25.892,-25.892,-25.892,-25.892,-25.893,-25.893,-25.894,-25.896,
--25.897,-25.899,-25.900,-25.902,-25.904,-25.907,-25.910,-25.912,-25.915,-25.919,-25.922,-25.926,-25.929,-25.933,-25.938,-25.942,
--25.947,-25.951,-25.956,-25.961,-25.967,-25.972,-25.978,-25.984,-25.990,-25.996,-26.002,-26.009,-26.015,-26.022,-26.029,-26.036,
--26.043,-26.050,-26.058,-26.065,-26.073,-26.081,-26.089,-26.097,-26.105,-26.113,-26.121,-26.130,-26.138,-26.147,-26.155,-26.164,
--26.173,-26.182,-26.190,-26.199,-26.208,-26.217,-26.226,-26.235,-26.244,-26.253,-26.263,-26.272,-26.281,-26.290,-26.299,-26.308,
--26.318,-26.327,-26.336,-26.345,-26.354,-26.363,-26.372,-26.381,-26.391,-26.400,-26.409,-26.418,-26.426,-26.435,-26.444,-26.453,
--26.462,-26.471,-26.479,-26.488,-26.497,-26.505,-26.514,-26.522,-26.531,-26.539,-26.548,-26.556,-26.565,-26.573,-26.581,-26.589,
--26.598,-26.606,-26.614,-26.622,-26.630,-26.638,-26.646,-26.654,-26.662,-26.670,-26.678,-26.686,-26.694,-26.702,-26.710,-26.718,
--26.726,-26.734,-26.742,-26.750,-26.758,-26.766,-26.774,-26.782,-26.790,-26.799,-26.807,-26.815,-26.823,-26.832,-26.840,-26.848,
--26.857,-26.865,-26.874,-26.883,-26.891,-26.900,-26.909,-26.918,-26.927,-26.936,-26.946,-26.955,-26.964,-26.974,-26.983,-26.993,
--27.003,-27.013,-27.023,-27.033,-27.043,-27.054,-27.064,-27.075,-27.085,-27.096,-27.107,-27.118,-27.130,-27.141,-27.152,-27.164,
--27.176,-27.188,-27.200,-27.212,-27.224,-27.236,-27.249,-27.262,-27.274,-27.287,-27.300,-27.314,-27.327,-27.340,-27.354,-27.368,
--27.381,-27.395,-27.409,-27.424,-27.438,-27.452,-27.467,-27.482,-27.496,-27.511,-27.526,-27.541,-27.557,-27.572,-27.587,-27.603,
--27.618,-27.634,-27.650,-27.666,-27.682,-27.698,-27.714,-27.730,-27.746,-27.763,-27.779,-27.796,-27.812,-27.829,-27.846,-27.862,
--27.879,-27.896,-27.913,-27.930,-27.947,-27.964,-27.981,-27.998,-28.015,-28.032,-28.049,-28.066,-28.084,-28.101,-28.118,-28.135,
--28.153,-28.170,-28.187,-28.205,-28.222,-28.239,-28.257,-28.274,-28.291,-28.309,-28.326,-28.343,-28.360,-28.378,-28.395,-28.412,
--28.429,-28.447,-28.464,-28.481,-28.498,-28.515,-28.532,-28.549,-28.566,-28.583,-28.600,-28.617,-28.634,-28.651,-28.668,-28.685,
--28.702,-28.718,-28.735,-28.752,-28.768,-28.785,-28.802,-28.818,-28.835,-28.851,-28.868,-28.884,-28.901,-28.917,-28.933,-28.950,
--28.966,-28.982,-28.998,-29.014,-29.030,-29.046,-29.062,-29.078,-29.094,-29.110,-29.126,-29.142,-29.158,-29.174,-29.189,-29.205,
--29.221,-29.236,-29.252,-29.267,-29.283,-29.298,-29.314,-29.329,-29.345,-29.360,-29.375,-29.390,-29.406,-29.421,-29.436,-29.451,
--29.466,-29.481,-29.496,-29.511,-29.526,-29.541,-29.556,-29.571,-29.586,-29.600,-29.615,-29.630,-29.645,-29.659,-29.674,-29.688,
--29.703,-29.717,-29.732,-29.746,-29.760,-29.775,-29.789,-29.803,-29.817,-29.831,-29.845,-29.859,-29.873,-29.887,-29.901,-29.915,
--29.929,-29.943,-29.956,-29.970,-29.984,-29.997,-30.011,-30.024,-30.038,-30.051,-30.064,-30.078,-30.091,-30.104,-30.117,-30.130,
--30.143,-30.156,-30.169,-30.182,-30.194,-30.207,-30.220,-30.232,-30.245,-30.257,-30.269,-30.282,-30.294,-30.306,-30.318,-30.330,
--30.342,-30.354,-30.366,-30.378,-30.389,-30.401,-30.412,-30.424,-30.435,-30.447,-30.458,-30.469,-30.480,-30.491,-30.502,-30.513,
--30.524,-30.534,-30.545,-30.555,-30.566,-30.576,-30.587,-30.597,-30.607,-30.617,-30.627,-30.637,-30.647,-30.656,-30.666,-30.676,
--30.685,-30.694,-30.704,-30.713,-30.722,-30.731,-30.740,-30.749,-30.757,-30.766,-30.774,-30.783,-30.791,-30.799,-30.807,-30.815,
--30.823,-30.831,-30.839,-30.846,-30.854,-30.861,-30.869,-30.876,-30.883,-30.890,-30.896,-30.903,-30.910,-30.916,-30.923,-30.929,
--30.935,-30.941,-30.946,-30.952,-30.958,-30.963,-30.968,-30.973,-30.978,-30.983,-30.988,-30.993,-30.997,-31.001,-31.005,-31.009,
--31.013,-31.017,-31.020,-31.023,-31.026,-31.029,-31.032,-31.035,-31.037,-31.039,-31.042,-31.043,-31.045,-31.047,-31.048,-31.049,
--31.050,-31.051,-31.051,-31.052,-31.052,-31.052,-31.052,-31.051,-31.051,-31.050,-31.049,-31.048,-31.046,-31.044,-31.043,-31.041,
--31.038,-31.036,-31.033,-31.030,-31.027,-31.024,-31.020,-31.016,-31.012,-31.008,-31.004,-30.999,-30.994,-30.989,-30.984,-30.978,
--30.973,-30.967,-30.961,-30.954,-30.948,-30.941,-30.934,-30.927,-30.920,-30.912,-30.905,-30.897,-30.889,-30.881,-30.872,-30.864,
--30.855,-30.846,-30.837,-30.828,-30.818,-30.809,-30.799,-30.789,-30.780,-30.769,-30.759,-30.749,-30.738,-30.728,-30.717,-30.706,
--30.695,-30.684,-30.673,-30.662,-30.651,-30.639,-30.628,-30.616,-30.605,-30.593,-30.582,-30.570,-30.558,-30.546,-30.534,-30.523,
--30.511,-30.499,-30.487,-30.475,-30.463,-30.451,-30.439,-30.427,-30.415,-30.403,-30.391,-30.380,-30.368,-30.356,-30.344,-30.333,
--30.321,-30.309,-30.298,-30.286,-30.275,-30.263,-30.252,-30.241,-30.230,-30.219,-30.208,-30.197,-30.186,-30.175,-30.165,-30.154,
--30.144,-30.133,-30.123,-30.113,-30.103,-30.093,-30.083,-30.073,-30.064,-30.054,-30.045,-30.036,-30.026,-30.017,-30.008,-29.999,
--29.991,-29.982,-29.973,-29.965,-29.957,-29.948,-29.940,-29.932,-29.924,-29.917,-29.909,-29.902,-29.894,-29.887,-29.880,-29.872,
--29.865,-29.858,-29.852,-29.845,-29.838,-29.832,-29.825,-29.819,-29.813,-29.807,-29.801,-29.795,-29.789,-29.783,-29.778,-29.772,
--29.767,-29.761,-29.756,-29.751,-29.746,-29.741,-29.736,-29.731,-29.727,-29.722,-29.718,-29.713,-29.709,-29.705,-29.700,-29.696,
--29.692,-29.688,-29.685,-29.681,-29.677,-29.674,-29.670,-29.667,-29.664,-29.661,-29.658,-29.655,-29.652,-29.649,-29.646,-29.644,
--29.641,-29.639,-29.637,-29.635,-29.633,-29.631,-29.629,-29.627,-29.625,-29.624,-29.622,-29.621,-29.620,-29.619,-29.618,-29.617,
--29.616,-29.616,-29.615,-29.615,-29.615,-29.615,-29.615,-29.615,-29.615,-29.615,-29.616,-29.616,-29.617,-29.618,-29.619,-29.620,
--29.621,-29.623,-29.624,-29.626,-29.628,-29.629,-29.631,-29.634,-29.636,-29.638,-29.641,-29.643,-29.646,-29.649,-29.652,-29.655,
--29.658,-29.662,-29.665,-29.669,-29.673,-29.677,-29.681,-29.685,-29.689,-29.693,-29.697,-29.702,-29.707,-29.711,-29.716,-29.721,
--29.726,-29.731,-29.736,-29.741,-29.747,-29.752,-29.757,-29.763,-29.769,-29.774,-29.780,-29.786,-29.791,-29.797,-29.803,-29.809,
--29.815,-29.821,-29.827,-29.833,-29.839,-29.845,-29.851,-29.857,-29.863,-29.869,-29.875,-29.881,-29.887,-29.893,-29.899,-29.905,
--29.911,-29.917,-29.923,-29.929,-29.934,-29.940,-29.945,-29.951,-29.956,-29.962,-29.967,-29.972,-29.977,-29.982,-29.987,-29.992,
--29.996,-30.001,-30.005,-30.010,-30.014,-30.018,-30.022,-30.025,-30.029,-30.033,-30.036,-30.039,-30.042,-30.045,-30.048,-30.051,
--30.053,-30.055,-30.057,-30.059,-30.061,-30.063,-30.064,-30.066,-30.067,-30.068,-30.069,-30.069,-30.070,-30.070,-30.070,-30.070,
--30.070,-30.069,-30.069,-30.068,-30.067,-30.066,-30.065,-30.064,-30.062,-30.060,-30.059,-30.057,-30.054,-30.052,-30.050,-30.047,
--30.044,-30.041,-30.038,-30.035,-30.032,-30.029,-30.025,-30.022,-30.018,-30.014,-30.010,-30.006,-30.002,-29.997,-29.993,-29.989,
--29.984,-29.979,-29.975,-29.970,-29.965,-29.960,-29.955,-29.950,-29.945,-29.940,-29.935,-29.929,-29.924,-29.919,-29.913,-29.908,
--29.903,-29.897,-29.892,-29.886,-29.881,-29.875,-29.870,-29.864,-29.858,-29.853,-29.847,-29.841,-29.836,-29.830,-29.825,-29.819,
--29.813,-29.808,-29.802,-29.796,-29.791,-29.785,-29.779,-29.774,-29.768,-29.762,-29.756,-29.751,-29.745,-29.739,-29.733,-29.728,
--29.722,-29.716,-29.710,-29.704,-29.698,-29.692,-29.686,-29.680,-29.674,-29.667,-29.661,-29.655,-29.648,-29.642,-29.635,-29.628,
--29.622,-29.615,-29.608,-29.601,-29.594,-29.586,-29.579,-29.571,-29.563,-29.556,-29.548,-29.540,-29.531,-29.523,-29.514,-29.505,
--29.496,-29.487,-29.478,-29.468,-29.459,-29.449,-29.439,-29.428,-29.418,-29.407,-29.396,-29.385,-29.374,-29.362,-29.350,-29.338,
--29.326,-29.313,-29.300,-29.287,-29.274,-29.261,-29.247,-29.233,-29.218,-29.204,-29.189,-29.174,-29.159,-29.144,-29.128,-29.112,
--29.096,-29.079,-29.063,-29.046,-29.029,-29.011,-28.994,-28.976,-28.958,-28.940,-28.922,-28.903,-28.884,-28.865,-28.846,-28.827,
--28.808,-28.788,-28.769,-28.749,-28.729,-28.709,-28.689,-28.668,-28.648,-28.628,-28.607,-28.587,-28.566,-28.545,-28.525,-28.504,
--28.483,-28.463,-28.442,-28.421,-28.401,-28.380,-28.359,-28.339,-28.318,-28.298,-28.278,-28.258,-28.238,-28.218,-28.198,-28.179,
--28.159,-28.140,-28.121,-28.102,-28.083,-28.065,-28.047,-28.029,-28.011,-27.993,-27.976,-27.959,-27.943,-27.926,-27.910,-27.894,
--27.879,-27.864,-27.849,-27.835,-27.820,-27.807,-27.793,-27.780,-27.767,-27.755,-27.743,-27.732,-27.720,-27.710,-27.699,-27.689,
--27.680,-27.670,-27.662,-27.653,-27.645,-27.638,-27.630,-27.623,-27.617,-27.611,-27.605,-27.600,-27.595,-27.591,-27.587,-27.583,
--27.580,-27.577,-27.574,-27.572,-27.570,-27.568,-27.567,-27.566,-27.566,-27.565,-27.565,-27.566,-27.566,-27.567,-27.568,-27.570,
--27.571,-27.573,-27.576,-27.578,-27.581,-27.583,-27.586,-27.589,-27.593,-27.596,-27.600,-27.604,-27.607,-27.611,-27.615,-27.619,
--27.624,-27.628,-27.632,-27.636,-27.641,-27.645,-27.649,-27.653,-27.658,-27.662,-27.666,-27.670,-27.674,-27.678,-27.682,-27.685,
--27.689,-27.692,-27.696,-27.699,-27.702,-27.704,-27.707,-27.709,-27.711,-27.713,-27.715,-27.717,-27.718,-27.719,-27.720,-27.721,
--27.721,-27.721,-27.721,-27.720,-27.720,-27.719,-27.717,-27.716,-27.714,-27.712,-27.709,-27.707,-27.704,-27.701,-27.697,-27.693,
--27.689,-27.685,-27.680,-27.675,-27.670,-27.665,-27.659,-27.653,-27.647,-27.640,-27.633,-27.627,-27.619,-27.612,-27.604,-27.596,
--27.588,-27.580,-27.572,-27.563,-27.554,-27.545,-27.536,-27.527,-27.518,-27.508,-27.498,-27.489,-27.479,-27.469,-27.459,-27.449,
--27.438,-27.428,-27.418,-27.407,-27.397,-27.386,-27.376,-27.366,-27.355,-27.345,-27.334,-27.324,-27.313,-27.303,-27.293,-27.282,
--27.272,-27.262,-27.252,-27.242,-27.232,-27.222,-27.213,-27.203,-27.194,-27.184,-27.175,-27.166,-27.157,-27.148,-27.139,-27.131,
--27.122,-27.114,-27.106,-27.098,-27.090,-27.082,-27.074,-27.067,-27.060,-27.052,-27.045,-27.038,-27.032,-27.025,-27.019,-27.012,
--27.006,-27.000,-26.994,-26.988,-26.983,-26.977,-26.972,-26.966,-26.961,-26.956,-26.951,-26.946,-26.942,-26.937,-26.932,-26.928,
--26.923,-26.919,-26.915,-26.911,-26.906,-26.902,-26.898,-26.894,-26.890,-26.886,-26.883,-26.879,-26.875,-26.871,-26.867,-26.863,
--26.860,-26.856,-26.852,-26.848,-26.845,-26.841,-26.837,-26.833,-26.829,-26.825,-26.821,-26.817,-26.813,-26.809,-26.805,-26.801,
--26.797,-26.793,-26.789,-26.784,-26.780,-26.776,-26.771,-26.767,-26.762,-26.757,-26.753,-26.748,-26.743,-26.738,-26.734,-26.729,
--26.724,-26.719,-26.714,-26.709,-26.703,-26.698,-26.693,-26.688,-26.682,-26.677,-26.671,-26.666,-26.661,-26.655,-26.649,-26.644,
--26.638,-26.633,-26.627,-26.621,-26.616,-26.610,-26.604,-26.599,-26.593,-26.587,-26.581,-27.088,-27.084,-27.080,-27.075,-27.071,
--27.067,-27.063,-27.059,-27.055,-27.051,-27.047,-27.044,-27.040,-27.036,-27.032,-27.029,-27.025,-27.022,-27.018,-27.015,-27.012,
--27.008,-27.005,-27.002,-26.999,-26.996,-26.993,-26.990,-26.987,-26.984,-26.981,-26.979,-26.976,-26.973,-26.971,-26.968,-26.966,
--26.963,-26.961,-26.959,-26.956,-26.954,-26.952,-26.950,-26.948,-26.946,-26.943,-26.942,-26.940,-26.938,-26.936,-26.934,-26.932,
--26.931,-26.929,-26.927,-26.926,-26.924,-26.923,-26.921,-26.920,-26.918,-26.917,-26.916,-26.914,-26.913,-26.912,-26.911,-26.910,
--26.908,-26.907,-26.906,-26.905,-26.904,-26.904,-26.903,-26.902,-26.901,-26.900,-26.899,-26.899,-26.898,-26.897,-26.897,-26.896,
--26.896,-26.895,-26.895,-26.894,-26.894,-26.894,-26.893,-26.893,-26.893,-26.893,-26.893,-26.892,-26.892,-26.892,-26.892,-26.893,
--26.893,-26.893,-26.893,-26.893,-26.894,-26.894,-26.895,-26.895,-26.896,-26.896,-26.897,-26.898,-26.898,-26.899,-26.900,-26.901,
--26.902,-26.903,-26.904,-26.905,-26.907,-26.908,-26.909,-26.911,-26.912,-26.914,-26.916,-26.917,-26.919,-26.921,-26.923,-26.925,
--26.927,-26.929,-26.931,-26.934,-26.936,-26.938,-26.941,-26.944,-26.946,-26.949,-26.952,-26.955,-26.958,-26.961,-26.964,-26.967,
--26.970,-26.973,-26.977,-26.980,-26.984,-26.988,-26.991,-26.995,-26.999,-27.003,-27.007,-27.011,-27.015,-27.019,-27.023,-27.027,
--27.032,-27.036,-27.041,-27.045,-27.050,-27.054,-27.059,-27.064,-27.069,-27.073,-27.078,-27.083,-27.088,-27.093,-27.098,-27.103,
--27.108,-27.114,-27.119,-27.124,-27.129,-27.135,-27.140,-27.145,-27.151,-27.156,-27.162,-27.167,-27.173,-27.178,-27.184,-27.189,
--27.195,-27.200,-27.206,-27.211,-27.217,-27.223,-27.228,-27.234,-27.239,-27.245,-27.250,-27.256,-27.262,-27.267,-27.273,-27.278,
--27.284,-27.289,-27.295,-27.300,-27.306,-27.311,-27.316,-27.322,-27.327,-27.333,-27.338,-27.343,-27.349,-27.354,-27.359,-27.364,
--27.370,-27.375,-27.380,-27.385,-27.390,-27.395,-27.400,-27.406,-27.411,-27.416,-27.421,-27.426,-27.430,-27.435,-27.440,-27.445,
--27.450,-27.455,-27.460,-27.465,-27.469,-27.474,-27.479,-27.484,-27.488,-27.493,-27.498,-27.503,-27.507,-27.512,-27.517,-27.521,
--27.526,-27.531,-27.535,-27.540,-27.545,-27.550,-27.554,-27.559,-27.564,-27.569,-27.573,-27.578,-27.583,-27.588,-27.593,-27.597,
--27.602,-27.607,-27.612,-27.617,-27.622,-27.627,-27.632,-27.637,-27.643,-27.648,-27.653,-27.658,-27.664,-27.669,-27.675,-27.680,
--27.686,-27.691,-27.697,-27.703,-27.708,-27.714,-27.720,-27.726,-27.732,-27.738,-27.744,-27.751,-27.757,-27.763,-27.770,-27.776,
--27.783,-27.789,-27.796,-27.803,-27.810,-27.817,-27.824,-27.831,-27.838,-27.846,-27.853,-27.861,-27.868,-27.876,-27.883,-27.891,
--27.899,-27.907,-27.915,-27.923,-27.932,-27.940,-27.948,-27.957,-27.965,-27.974,-27.983,-27.992,-28.001,-28.010,-28.019,-28.028,
--28.037,-28.047,-28.056,-28.065,-28.075,-28.085,-28.094,-28.104,-28.114,-28.124,-28.134,-28.144,-28.155,-28.165,-28.175,-28.186,
--28.196,-28.207,-28.217,-28.228,-28.239,-28.250,-28.261,-28.272,-28.283,-28.294,-28.305,-28.316,-28.327,-28.339,-28.350,-28.361,
--28.373,-28.385,-28.396,-28.408,-28.419,-28.431,-28.443,-28.455,-28.467,-28.479,-28.491,-28.503,-28.515,-28.527,-28.539,-28.551,
--28.563,-28.576,-28.588,-28.600,-28.613,-28.625,-28.637,-28.650,-28.662,-28.675,-28.687,-28.700,-28.712,-28.725,-28.737,-28.750,
--28.763,-28.775,-28.788,-28.801,-28.813,-28.826,-28.839,-28.852,-28.864,-28.877,-28.890,-28.903,-28.915,-28.928,-28.941,-28.954,
--28.966,-28.979,-28.992,-29.005,-29.018,-29.030,-29.043,-29.056,-29.069,-29.082,-29.094,-29.107,-29.120,-29.133,-29.145,-29.158,
--29.171,-29.184,-29.196,-29.209,-29.222,-29.234,-29.247,-29.260,-29.272,-29.285,-29.298,-29.310,-29.323,-29.335,-29.348,-29.360,
--29.373,-29.385,-29.398,-29.410,-29.423,-29.435,-29.447,-29.460,-29.472,-29.484,-29.496,-29.509,-29.521,-29.533,-29.545,-29.557,
--29.569,-29.581,-29.593,-29.605,-29.617,-29.629,-29.641,-29.653,-29.665,-29.676,-29.688,-29.700,-29.711,-29.723,-29.734,-29.746,
--29.757,-29.769,-29.780,-29.792,-29.803,-29.814,-29.825,-29.836,-29.848,-29.859,-29.870,-29.881,-29.891,-29.902,-29.913,-29.924,
--29.935,-29.945,-29.956,-29.966,-29.977,-29.987,-29.998,-30.008,-30.018,-30.028,-30.038,-30.048,-30.058,-30.068,-30.078,-30.088,
--30.098,-30.107,-30.117,-30.127,-30.136,-30.145,-30.155,-30.164,-30.173,-30.182,-30.191,-30.200,-30.209,-30.218,-30.227,-30.236,
--30.244,-30.253,-30.261,-30.270,-30.278,-30.286,-30.294,-30.302,-30.310,-30.318,-30.326,-30.334,-30.341,-30.349,-30.356,-30.364,
--30.371,-30.378,-30.385,-30.393,-30.399,-30.406,-30.413,-30.420,-30.426,-30.433,-30.439,-30.446,-30.452,-30.458,-30.464,-30.470,
--30.476,-30.481,-30.487,-30.492,-30.498,-30.503,-30.508,-30.513,-30.518,-30.523,-30.528,-30.533,-30.537,-30.542,-30.546,-30.550,
--30.554,-30.558,-30.562,-30.566,-30.570,-30.573,-30.576,-30.580,-30.583,-30.586,-30.589,-30.592,-30.594,-30.597,-30.599,-30.602,
--30.604,-30.606,-30.608,-30.610,-30.611,-30.613,-30.614,-30.615,-30.617,-30.618,-30.618,-30.619,-30.620,-30.620,-30.621,-30.621,
--30.621,-30.621,-30.621,-30.620,-30.620,-30.619,-30.619,-30.618,-30.617,-30.616,-30.614,-30.613,-30.611,-30.610,-30.608,-30.606,
--30.604,-30.602,-30.599,-30.597,-30.594,-30.591,-30.589,-30.586,-30.582,-30.579,-30.576,-30.572,-30.569,-30.565,-30.561,-30.557,
--30.553,-30.549,-30.544,-30.540,-30.535,-30.531,-30.526,-30.521,-30.516,-30.511,-30.506,-30.500,-30.495,-30.489,-30.484,-30.478,
--30.472,-30.466,-30.460,-30.454,-30.448,-30.442,-30.435,-30.429,-30.422,-30.416,-30.409,-30.403,-30.396,-30.389,-30.382,-30.375,
--30.368,-30.361,-30.354,-30.347,-30.340,-30.332,-30.325,-30.318,-30.310,-30.303,-30.296,-30.288,-30.281,-30.273,-30.266,-30.258,
--30.251,-30.243,-30.236,-30.228,-30.220,-30.213,-30.205,-30.198,-30.190,-30.183,-30.175,-30.168,-30.160,-30.153,-30.145,-30.138,
--30.130,-30.123,-30.115,-30.108,-30.101,-30.093,-30.086,-30.079,-30.072,-30.065,-30.058,-30.050,-30.043,-30.037,-30.030,-30.023,
--30.016,-30.009,-30.002,-29.996,-29.989,-29.983,-29.976,-29.970,-29.963,-29.957,-29.951,-29.945,-29.938,-29.932,-29.926,-29.921,
--29.915,-29.909,-29.903,-29.897,-29.892,-29.886,-29.881,-29.875,-29.870,-29.865,-29.860,-29.855,-29.850,-29.845,-29.840,-29.835,
--29.830,-29.825,-29.821,-29.816,-29.812,-29.807,-29.803,-29.799,-29.795,-29.791,-29.787,-29.783,-29.779,-29.775,-29.771,-29.767,
--29.764,-29.760,-29.757,-29.753,-29.750,-29.747,-29.744,-29.741,-29.738,-29.735,-29.732,-29.729,-29.726,-29.724,-29.721,-29.719,
--29.716,-29.714,-29.711,-29.709,-29.707,-29.705,-29.703,-29.701,-29.699,-29.698,-29.696,-29.694,-29.693,-29.691,-29.690,-29.689,
--29.688,-29.687,-29.686,-29.685,-29.684,-29.683,-29.682,-29.682,-29.681,-29.681,-29.680,-29.680,-29.680,-29.680,-29.680,-29.680,
--29.680,-29.680,-29.681,-29.681,-29.682,-29.682,-29.683,-29.684,-29.685,-29.686,-29.687,-29.688,-29.689,-29.690,-29.692,-29.693,
--29.695,-29.697,-29.699,-29.701,-29.703,-29.705,-29.707,-29.709,-29.712,-29.714,-29.717,-29.719,-29.722,-29.725,-29.728,-29.731,
--29.734,-29.737,-29.740,-29.744,-29.747,-29.751,-29.754,-29.758,-29.762,-29.766,-29.770,-29.774,-29.778,-29.782,-29.786,-29.791,
--29.795,-29.799,-29.804,-29.809,-29.813,-29.818,-29.823,-29.828,-29.833,-29.837,-29.842,-29.848,-29.853,-29.858,-29.863,-29.868,
--29.873,-29.879,-29.884,-29.889,-29.895,-29.900,-29.906,-29.911,-29.916,-29.922,-29.927,-29.933,-29.938,-29.944,-29.949,-29.955,
--29.960,-29.966,-29.971,-29.977,-29.982,-29.988,-29.993,-29.998,-30.004,-30.009,-30.014,-30.019,-30.025,-30.030,-30.035,-30.040,
--30.045,-30.050,-30.055,-30.059,-30.064,-30.069,-30.073,-30.078,-30.082,-30.087,-30.091,-30.095,-30.100,-30.104,-30.108,-30.112,
--30.115,-30.119,-30.123,-30.126,-30.130,-30.133,-30.136,-30.140,-30.143,-30.146,-30.148,-30.151,-30.154,-30.156,-30.159,-30.161,
--30.163,-30.165,-30.167,-30.169,-30.171,-30.173,-30.174,-30.176,-30.177,-30.178,-30.179,-30.180,-30.181,-30.182,-30.183,-30.183,
--30.184,-30.184,-30.184,-30.184,-30.184,-30.184,-30.184,-30.184,-30.183,-30.183,-30.182,-30.181,-30.181,-30.180,-30.179,-30.177,
--30.176,-30.175,-30.174,-30.172,-30.170,-30.169,-30.167,-30.165,-30.163,-30.161,-30.159,-30.157,-30.154,-30.152,-30.149,-30.147,
--30.144,-30.141,-30.138,-30.136,-30.133,-30.129,-30.126,-30.123,-30.120,-30.116,-30.113,-30.109,-30.106,-30.102,-30.098,-30.094,
--30.090,-30.086,-30.082,-30.078,-30.074,-30.070,-30.065,-30.061,-30.056,-30.051,-30.047,-30.042,-30.037,-30.032,-30.027,-30.022,
--30.016,-30.011,-30.006,-30.000,-29.995,-29.989,-29.983,-29.977,-29.971,-29.965,-29.959,-29.952,-29.946,-29.939,-29.933,-29.926,
--29.919,-29.912,-29.905,-29.898,-29.890,-29.883,-29.875,-29.867,-29.859,-29.851,-29.843,-29.835,-29.827,-29.818,-29.809,-29.800,
--29.791,-29.782,-29.773,-29.763,-29.754,-29.744,-29.734,-29.724,-29.714,-29.703,-29.693,-29.682,-29.671,-29.660,-29.649,-29.637,
--29.626,-29.614,-29.602,-29.590,-29.578,-29.565,-29.553,-29.540,-29.527,-29.514,-29.501,-29.488,-29.474,-29.460,-29.446,-29.432,
--29.418,-29.404,-29.389,-29.375,-29.360,-29.345,-29.330,-29.315,-29.299,-29.284,-29.268,-29.252,-29.237,-29.221,-29.204,-29.188,
--29.172,-29.155,-29.139,-29.122,-29.105,-29.089,-29.072,-29.055,-29.038,-29.021,-29.003,-28.986,-28.969,-28.952,-28.934,-28.917,
--28.899,-28.882,-28.865,-28.847,-28.830,-28.812,-28.795,-28.777,-28.760,-28.743,-28.725,-28.708,-28.691,-28.674,-28.656,-28.639,
--28.622,-28.605,-28.589,-28.572,-28.555,-28.539,-28.522,-28.506,-28.490,-28.474,-28.458,-28.442,-28.427,-28.411,-28.396,-28.381,
--28.366,-28.351,-28.337,-28.322,-28.308,-28.294,-28.280,-28.267,-28.253,-28.240,-28.227,-28.214,-28.202,-28.190,-28.177,-28.166,
--28.154,-28.143,-28.132,-28.121,-28.110,-28.100,-28.090,-28.080,-28.070,-28.061,-28.052,-28.043,-28.034,-28.026,-28.018,-28.010,
--28.003,-27.995,-27.988,-27.982,-27.975,-27.969,-27.963,-27.957,-27.951,-27.946,-27.941,-27.936,-27.932,-27.927,-27.923,-27.919,
--27.915,-27.912,-27.909,-27.906,-27.903,-27.900,-27.898,-27.896,-27.893,-27.892,-27.890,-27.888,-27.887,-27.886,-27.885,-27.884,
--27.883,-27.883,-27.882,-27.882,-27.882,-27.882,-27.882,-27.882,-27.882,-27.882,-27.883,-27.883,-27.884,-27.884,-27.885,-27.886,
--27.887,-27.888,-27.889,-27.890,-27.891,-27.892,-27.893,-27.894,-27.895,-27.896,-27.897,-27.898,-27.899,-27.900,-27.901,-27.902,
--27.903,-27.904,-27.905,-27.905,-27.906,-27.907,-27.907,-27.908,-27.909,-27.909,-27.909,-27.910,-27.910,-27.910,-27.910,-27.910,
--27.910,-27.910,-27.909,-27.909,-27.909,-27.908,-27.907,-27.906,-27.905,-27.904,-27.903,-27.902,-27.901,-27.899,-27.898,-27.896,
--27.894,-27.892,-27.890,-27.888,-27.886,-27.884,-27.881,-27.879,-27.876,-27.873,-27.870,-27.867,-27.864,-27.861,-27.858,-27.854,
--27.851,-27.847,-27.843,-27.840,-27.836,-27.832,-27.828,-27.823,-27.819,-27.815,-27.810,-27.806,-27.801,-27.797,-27.792,-27.787,
--27.782,-27.777,-27.772,-27.767,-27.762,-27.757,-27.752,-27.746,-27.741,-27.735,-27.730,-27.725,-27.719,-27.713,-27.708,-27.702,
--27.696,-27.691,-27.685,-27.679,-27.673,-27.667,-27.661,-27.655,-27.649,-27.644,-27.638,-27.632,-27.625,-27.619,-27.613,-27.607,
--27.601,-27.595,-27.589,-27.583,-27.577,-27.571,-27.565,-27.558,-27.552,-27.546,-27.540,-27.534,-27.528,-27.521,-27.515,-27.509,
--27.503,-27.497,-27.491,-27.485,-27.479,-27.472,-27.466,-27.460,-27.454,-27.448,-27.442,-27.436,-27.430,-27.424,-27.418,-27.412,
--27.406,-27.400,-27.394,-27.388,-27.382,-27.376,-27.370,-27.364,-27.358,-27.352,-27.346,-27.340,-27.334,-27.328,-27.322,-27.317,
--27.311,-27.305,-27.299,-27.294,-27.288,-27.282,-27.277,-27.271,-27.265,-27.260,-27.254,-27.248,-27.243,-27.237,-27.232,-27.227,
--27.221,-27.216,-27.210,-27.205,-27.200,-27.194,-27.189,-27.184,-27.179,-27.174,-27.169,-27.164,-27.159,-27.154,-27.149,-27.144,
--27.139,-27.134,-27.129,-27.125,-27.120,-27.115,-27.111,-27.106,-27.102,-27.097,-27.093,-27.088,-27.880,-27.878,-27.876,-27.874,
--27.872,-27.870,-27.868,-27.866,-27.865,-27.863,-27.861,-27.860,-27.858,-27.857,-27.855,-27.854,-27.853,-27.851,-27.850,-27.849,
--27.848,-27.847,-27.846,-27.845,-27.844,-27.843,-27.842,-27.841,-27.841,-27.840,-27.839,-27.839,-27.838,-27.838,-27.837,-27.837,
--27.837,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.836,-27.837,-27.837,-27.837,-27.838,
--27.838,-27.839,-27.840,-27.840,-27.841,-27.842,-27.842,-27.843,-27.844,-27.845,-27.846,-27.847,-27.848,-27.849,-27.850,-27.852,
--27.853,-27.854,-27.856,-27.857,-27.858,-27.860,-27.861,-27.863,-27.865,-27.866,-27.868,-27.870,-27.871,-27.873,-27.875,-27.877,
--27.879,-27.881,-27.883,-27.885,-27.887,-27.889,-27.892,-27.894,-27.896,-27.898,-27.901,-27.903,-27.906,-27.908,-27.911,-27.913,
--27.916,-27.918,-27.921,-27.924,-27.926,-27.929,-27.932,-27.935,-27.938,-27.940,-27.943,-27.946,-27.949,-27.952,-27.955,-27.958,
--27.961,-27.965,-27.968,-27.971,-27.974,-27.977,-27.981,-27.984,-27.987,-27.991,-27.994,-27.997,-28.001,-28.004,-28.008,-28.011,
--28.015,-28.018,-28.022,-28.025,-28.029,-28.032,-28.036,-28.040,-28.043,-28.047,-28.051,-28.054,-28.058,-28.062,-28.066,-28.069,
--28.073,-28.077,-28.081,-28.085,-28.088,-28.092,-28.096,-28.100,-28.104,-28.108,-28.112,-28.115,-28.119,-28.123,-28.127,-28.131,
--28.135,-28.139,-28.143,-28.147,-28.150,-28.154,-28.158,-28.162,-28.166,-28.170,-28.174,-28.178,-28.181,-28.185,-28.189,-28.193,
--28.197,-28.201,-28.204,-28.208,-28.212,-28.216,-28.219,-28.223,-28.227,-28.230,-28.234,-28.238,-28.241,-28.245,-28.249,-28.252,
--28.256,-28.259,-28.263,-28.266,-28.270,-28.273,-28.277,-28.280,-28.284,-28.287,-28.290,-28.294,-28.297,-28.300,-28.303,-28.307,
--28.310,-28.313,-28.316,-28.319,-28.322,-28.325,-28.328,-28.331,-28.334,-28.337,-28.340,-28.343,-28.346,-28.349,-28.351,-28.354,
--28.357,-28.360,-28.362,-28.365,-28.368,-28.370,-28.373,-28.375,-28.378,-28.380,-28.383,-28.385,-28.388,-28.390,-28.393,-28.395,
--28.397,-28.400,-28.402,-28.404,-28.406,-28.409,-28.411,-28.413,-28.415,-28.417,-28.420,-28.422,-28.424,-28.426,-28.428,-28.430,
--28.432,-28.434,-28.436,-28.438,-28.441,-28.443,-28.445,-28.447,-28.449,-28.451,-28.453,-28.455,-28.457,-28.459,-28.461,-28.463,
--28.465,-28.467,-28.469,-28.471,-28.473,-28.476,-28.478,-28.480,-28.482,-28.484,-28.486,-28.489,-28.491,-28.493,-28.495,-28.498,
--28.500,-28.502,-28.505,-28.507,-28.509,-28.512,-28.514,-28.517,-28.520,-28.522,-28.525,-28.527,-28.530,-28.533,-28.536,-28.538,
--28.541,-28.544,-28.547,-28.550,-28.553,-28.556,-28.559,-28.563,-28.566,-28.569,-28.572,-28.576,-28.579,-28.583,-28.586,-28.590,
--28.593,-28.597,-28.601,-28.605,-28.609,-28.613,-28.617,-28.621,-28.625,-28.629,-28.633,-28.637,-28.642,-28.646,-28.651,-28.655,
--28.660,-28.664,-28.669,-28.674,-28.679,-28.684,-28.689,-28.694,-28.699,-28.704,-28.709,-28.714,-28.720,-28.725,-28.731,-28.736,
--28.742,-28.748,-28.753,-28.759,-28.765,-28.771,-28.777,-28.783,-28.789,-28.795,-28.802,-28.808,-28.814,-28.821,-28.827,-28.834,
--28.841,-28.847,-28.854,-28.861,-28.868,-28.875,-28.882,-28.889,-28.896,-28.903,-28.910,-28.917,-28.925,-28.932,-28.940,-28.947,
--28.955,-28.962,-28.970,-28.978,-28.985,-28.993,-29.001,-29.009,-29.017,-29.025,-29.033,-29.041,-29.049,-29.057,-29.065,-29.074,
--29.082,-29.090,-29.099,-29.107,-29.116,-29.124,-29.133,-29.141,-29.150,-29.158,-29.167,-29.176,-29.184,-29.193,-29.202,-29.211,
--29.220,-29.228,-29.237,-29.246,-29.255,-29.264,-29.273,-29.282,-29.291,-29.300,-29.309,-29.318,-29.327,-29.337,-29.346,-29.355,
--29.364,-29.373,-29.382,-29.391,-29.401,-29.410,-29.419,-29.428,-29.437,-29.447,-29.456,-29.465,-29.474,-29.483,-29.493,-29.502,
--29.511,-29.520,-29.529,-29.538,-29.548,-29.557,-29.566,-29.575,-29.584,-29.593,-29.602,-29.612,-29.621,-29.630,-29.639,-29.648,
--29.657,-29.666,-29.675,-29.684,-29.693,-29.702,-29.710,-29.719,-29.728,-29.737,-29.746,-29.754,-29.763,-29.772,-29.780,-29.789,
--29.798,-29.806,-29.815,-29.823,-29.832,-29.840,-29.848,-29.857,-29.865,-29.873,-29.882,-29.890,-29.898,-29.906,-29.914,-29.922,
--29.930,-29.938,-29.946,-29.953,-29.961,-29.969,-29.977,-29.984,-29.992,-29.999,-30.007,-30.014,-30.021,-30.029,-30.036,-30.043,
--30.050,-30.057,-30.064,-30.071,-30.078,-30.085,-30.092,-30.098,-30.105,-30.111,-30.118,-30.124,-30.131,-30.137,-30.143,-30.150,
--30.156,-30.162,-30.168,-30.174,-30.179,-30.185,-30.191,-30.196,-30.202,-30.208,-30.213,-30.218,-30.224,-30.229,-30.234,-30.239,
--30.244,-30.249,-30.254,-30.258,-30.263,-30.268,-30.272,-30.277,-30.281,-30.285,-30.289,-30.294,-30.298,-30.302,-30.305,-30.309,
--30.313,-30.317,-30.320,-30.324,-30.327,-30.330,-30.334,-30.337,-30.340,-30.343,-30.346,-30.348,-30.351,-30.354,-30.356,-30.359,
--30.361,-30.364,-30.366,-30.368,-30.370,-30.372,-30.374,-30.376,-30.378,-30.379,-30.381,-30.382,-30.384,-30.385,-30.386,-30.387,
--30.388,-30.389,-30.390,-30.391,-30.392,-30.392,-30.393,-30.394,-30.394,-30.394,-30.394,-30.395,-30.395,-30.395,-30.395,-30.394,
--30.394,-30.394,-30.393,-30.393,-30.392,-30.392,-30.391,-30.390,-30.389,-30.389,-30.388,-30.386,-30.385,-30.384,-30.383,-30.381,
--30.380,-30.378,-30.377,-30.375,-30.373,-30.372,-30.370,-30.368,-30.366,-30.364,-30.362,-30.360,-30.357,-30.355,-30.353,-30.350,
--30.348,-30.345,-30.343,-30.340,-30.338,-30.335,-30.332,-30.329,-30.326,-30.323,-30.320,-30.317,-30.314,-30.311,-30.308,-30.305,
--30.302,-30.299,-30.295,-30.292,-30.289,-30.285,-30.282,-30.278,-30.275,-30.271,-30.268,-30.264,-30.261,-30.257,-30.254,-30.250,
--30.246,-30.243,-30.239,-30.235,-30.232,-30.228,-30.224,-30.220,-30.217,-30.213,-30.209,-30.206,-30.202,-30.198,-30.194,-30.191,
--30.187,-30.183,-30.179,-30.176,-30.172,-30.168,-30.165,-30.161,-30.157,-30.154,-30.150,-30.147,-30.143,-30.139,-30.136,-30.132,
--30.129,-30.125,-30.122,-30.119,-30.115,-30.112,-30.109,-30.105,-30.102,-30.099,-30.096,-30.093,-30.089,-30.086,-30.083,-30.080,
--30.078,-30.075,-30.072,-30.069,-30.066,-30.063,-30.061,-30.058,-30.056,-30.053,-30.051,-30.048,-30.046,-30.043,-30.041,-30.039,
--30.037,-30.035,-30.033,-30.031,-30.029,-30.027,-30.025,-30.023,-30.021,-30.020,-30.018,-30.016,-30.015,-30.013,-30.012,-30.011,
--30.009,-30.008,-30.007,-30.006,-30.005,-30.004,-30.003,-30.002,-30.001,-30.001,-30.000,-29.999,-29.999,-29.998,-29.998,-29.998,
--29.997,-29.997,-29.997,-29.997,-29.997,-29.997,-29.997,-29.997,-29.997,-29.998,-29.998,-29.998,-29.999,-29.999,-30.000,-30.001,
--30.001,-30.002,-30.003,-30.004,-30.005,-30.006,-30.007,-30.008,-30.009,-30.010,-30.012,-30.013,-30.015,-30.016,-30.018,-30.019,
--30.021,-30.023,-30.025,-30.027,-30.028,-30.030,-30.032,-30.035,-30.037,-30.039,-30.041,-30.044,-30.046,-30.048,-30.051,-30.053,
--30.056,-30.059,-30.061,-30.064,-30.067,-30.070,-30.073,-30.076,-30.079,-30.082,-30.085,-30.088,-30.092,-30.095,-30.098,-30.102,
--30.105,-30.109,-30.112,-30.116,-30.119,-30.123,-30.127,-30.130,-30.134,-30.138,-30.142,-30.146,-30.150,-30.154,-30.158,-30.162,
--30.166,-30.170,-30.174,-30.178,-30.183,-30.187,-30.191,-30.195,-30.200,-30.204,-30.208,-30.213,-30.217,-30.222,-30.226,-30.231,
--30.235,-30.240,-30.244,-30.249,-30.253,-30.258,-30.263,-30.267,-30.272,-30.276,-30.281,-30.286,-30.290,-30.295,-30.300,-30.304,
--30.309,-30.314,-30.318,-30.323,-30.327,-30.332,-30.337,-30.341,-30.346,-30.350,-30.355,-30.359,-30.364,-30.368,-30.373,-30.377,
--30.382,-30.386,-30.390,-30.395,-30.399,-30.403,-30.408,-30.412,-30.416,-30.420,-30.424,-30.428,-30.432,-30.436,-30.440,-30.444,
--30.448,-30.452,-30.455,-30.459,-30.463,-30.466,-30.470,-30.473,-30.476,-30.480,-30.483,-30.486,-30.489,-30.493,-30.496,-30.499,
--30.501,-30.504,-30.507,-30.510,-30.512,-30.515,-30.517,-30.520,-30.522,-30.524,-30.527,-30.529,-30.531,-30.533,-30.534,-30.536,
--30.538,-30.540,-30.541,-30.543,-30.544,-30.545,-30.546,-30.548,-30.549,-30.550,-30.550,-30.551,-30.552,-30.553,-30.553,-30.554,
--30.554,-30.554,-30.554,-30.554,-30.554,-30.554,-30.554,-30.554,-30.553,-30.553,-30.552,-30.552,-30.551,-30.550,-30.549,-30.548,
--30.547,-30.546,-30.544,-30.543,-30.541,-30.540,-30.538,-30.536,-30.534,-30.532,-30.530,-30.528,-30.526,-30.524,-30.521,-30.519,
--30.516,-30.513,-30.510,-30.507,-30.504,-30.501,-30.498,-30.495,-30.491,-30.488,-30.484,-30.480,-30.476,-30.472,-30.468,-30.464,
--30.460,-30.456,-30.451,-30.447,-30.442,-30.437,-30.432,-30.427,-30.422,-30.417,-30.412,-30.407,-30.401,-30.396,-30.390,-30.384,
--30.378,-30.372,-30.366,-30.360,-30.354,-30.347,-30.341,-30.334,-30.327,-30.321,-30.314,-30.307,-30.299,-30.292,-30.285,-30.277,
--30.270,-30.262,-30.254,-30.246,-30.238,-30.230,-30.222,-30.213,-30.205,-30.196,-30.187,-30.179,-30.170,-30.161,-30.151,-30.142,
--30.133,-30.123,-30.114,-30.104,-30.094,-30.084,-30.074,-30.064,-30.053,-30.043,-30.033,-30.022,-30.011,-30.000,-29.989,-29.978,
--29.967,-29.956,-29.945,-29.933,-29.922,-29.910,-29.898,-29.886,-29.874,-29.862,-29.850,-29.838,-29.825,-29.813,-29.800,-29.788,
--29.775,-29.762,-29.749,-29.736,-29.723,-29.710,-29.697,-29.684,-29.670,-29.657,-29.643,-29.630,-29.616,-29.602,-29.589,-29.575,
--29.561,-29.547,-29.533,-29.519,-29.505,-29.491,-29.477,-29.463,-29.448,-29.434,-29.420,-29.406,-29.391,-29.377,-29.362,-29.348,
--29.334,-29.319,-29.305,-29.290,-29.276,-29.262,-29.247,-29.233,-29.219,-29.204,-29.190,-29.176,-29.161,-29.147,-29.133,-29.119,
--29.104,-29.090,-29.076,-29.062,-29.048,-29.034,-29.021,-29.007,-28.993,-28.980,-28.966,-28.952,-28.939,-28.926,-28.912,-28.899,
--28.886,-28.873,-28.860,-28.848,-28.835,-28.822,-28.810,-28.798,-28.785,-28.773,-28.761,-28.749,-28.737,-28.726,-28.714,-28.703,
--28.692,-28.680,-28.669,-28.659,-28.648,-28.637,-28.627,-28.616,-28.606,-28.596,-28.586,-28.577,-28.567,-28.558,-28.548,-28.539,
--28.530,-28.521,-28.513,-28.504,-28.496,-28.488,-28.479,-28.472,-28.464,-28.456,-28.449,-28.441,-28.434,-28.427,-28.420,-28.414,
--28.407,-28.401,-28.395,-28.388,-28.383,-28.377,-28.371,-28.366,-28.360,-28.355,-28.350,-28.345,-28.340,-28.336,-28.331,-28.327,
--28.323,-28.319,-28.315,-28.311,-28.307,-28.303,-28.300,-28.297,-28.293,-28.290,-28.287,-28.284,-28.282,-28.279,-28.276,-28.274,
--28.272,-28.269,-28.267,-28.265,-28.263,-28.261,-28.260,-28.258,-28.256,-28.255,-28.253,-28.252,-28.250,-28.249,-28.248,-28.247,
--28.246,-28.245,-28.244,-28.243,-28.242,-28.241,-28.241,-28.240,-28.239,-28.239,-28.238,-28.237,-28.237,-28.236,-28.236,-28.236,
--28.235,-28.235,-28.234,-28.234,-28.234,-28.233,-28.233,-28.233,-28.232,-28.232,-28.232,-28.231,-28.231,-28.231,-28.231,-28.230,
--28.230,-28.230,-28.229,-28.229,-28.229,-28.228,-28.228,-28.227,-28.227,-28.226,-28.226,-28.225,-28.225,-28.224,-28.224,-28.223,
--28.222,-28.222,-28.221,-28.220,-28.219,-28.219,-28.218,-28.217,-28.216,-28.215,-28.214,-28.213,-28.212,-28.211,-28.209,-28.208,
--28.207,-28.206,-28.204,-28.203,-28.202,-28.200,-28.199,-28.197,-28.196,-28.194,-28.192,-28.191,-28.189,-28.187,-28.185,-28.184,
--28.182,-28.180,-28.178,-28.176,-28.174,-28.172,-28.169,-28.167,-28.165,-28.163,-28.161,-28.158,-28.156,-28.154,-28.151,-28.149,
--28.146,-28.144,-28.141,-28.138,-28.136,-28.133,-28.130,-28.128,-28.125,-28.122,-28.119,-28.117,-28.114,-28.111,-28.108,-28.105,
--28.102,-28.099,-28.096,-28.093,-28.090,-28.087,-28.084,-28.081,-28.078,-28.075,-28.072,-28.068,-28.065,-28.062,-28.059,-28.056,
--28.053,-28.049,-28.046,-28.043,-28.040,-28.036,-28.033,-28.030,-28.027,-28.024,-28.020,-28.017,-28.014,-28.011,-28.007,-28.004,
--28.001,-27.998,-27.995,-27.991,-27.988,-27.985,-27.982,-27.979,-27.976,-27.972,-27.969,-27.966,-27.963,-27.960,-27.957,-27.954,
--27.951,-27.948,-27.945,-27.942,-27.940,-27.937,-27.934,-27.931,-27.928,-27.925,-27.923,-27.920,-27.917,-27.915,-27.912,-27.910,
--27.907,-27.905,-27.902,-27.900,-27.897,-27.895,-27.893,-27.890,-27.888,-27.886,-27.884,-27.882,-27.880,-28.964,-28.965,-28.966,
--28.967,-28.968,-28.969,-28.970,-28.972,-28.973,-28.974,-28.975,-28.976,-28.977,-28.979,-28.980,-28.981,-28.982,-28.983,-28.985,
--28.986,-28.987,-28.989,-28.990,-28.991,-28.993,-28.994,-28.995,-28.997,-28.998,-29.000,-29.001,-29.003,-29.004,-29.006,-29.007,
--29.009,-29.010,-29.012,-29.013,-29.015,-29.017,-29.018,-29.020,-29.022,-29.023,-29.025,-29.027,-29.028,-29.030,-29.032,-29.034,
--29.035,-29.037,-29.039,-29.041,-29.043,-29.045,-29.047,-29.048,-29.050,-29.052,-29.054,-29.056,-29.058,-29.060,-29.062,-29.064,
--29.066,-29.068,-29.070,-29.072,-29.074,-29.076,-29.078,-29.081,-29.083,-29.085,-29.087,-29.089,-29.091,-29.093,-29.096,-29.098,
--29.100,-29.102,-29.105,-29.107,-29.109,-29.111,-29.114,-29.116,-29.118,-29.120,-29.123,-29.125,-29.127,-29.130,-29.132,-29.134,
--29.137,-29.139,-29.141,-29.144,-29.146,-29.148,-29.151,-29.153,-29.155,-29.158,-29.160,-29.163,-29.165,-29.167,-29.170,-29.172,
--29.174,-29.177,-29.179,-29.181,-29.184,-29.186,-29.189,-29.191,-29.193,-29.196,-29.198,-29.200,-29.203,-29.205,-29.207,-29.210,
--29.212,-29.214,-29.217,-29.219,-29.221,-29.224,-29.226,-29.228,-29.231,-29.233,-29.235,-29.237,-29.240,-29.242,-29.244,-29.246,
--29.248,-29.251,-29.253,-29.255,-29.257,-29.259,-29.261,-29.263,-29.265,-29.268,-29.270,-29.272,-29.274,-29.276,-29.278,-29.280,
--29.282,-29.284,-29.286,-29.287,-29.289,-29.291,-29.293,-29.295,-29.297,-29.299,-29.300,-29.302,-29.304,-29.306,-29.307,-29.309,
--29.311,-29.312,-29.314,-29.316,-29.317,-29.319,-29.320,-29.322,-29.323,-29.325,-29.326,-29.328,-29.329,-29.330,-29.332,-29.333,
--29.334,-29.336,-29.337,-29.338,-29.340,-29.341,-29.342,-29.343,-29.344,-29.345,-29.347,-29.348,-29.349,-29.350,-29.351,-29.352,
--29.353,-29.354,-29.355,-29.355,-29.356,-29.357,-29.358,-29.359,-29.360,-29.360,-29.361,-29.362,-29.363,-29.363,-29.364,-29.365,
--29.365,-29.366,-29.366,-29.367,-29.368,-29.368,-29.369,-29.369,-29.370,-29.370,-29.371,-29.371,-29.371,-29.372,-29.372,-29.373,
--29.373,-29.373,-29.374,-29.374,-29.374,-29.375,-29.375,-29.375,-29.375,-29.376,-29.376,-29.376,-29.376,-29.377,-29.377,-29.377,
--29.377,-29.377,-29.378,-29.378,-29.378,-29.378,-29.378,-29.379,-29.379,-29.379,-29.379,-29.379,-29.379,-29.380,-29.380,-29.380,
--29.380,-29.380,-29.381,-29.381,-29.381,-29.381,-29.381,-29.382,-29.382,-29.382,-29.382,-29.383,-29.383,-29.383,-29.384,-29.384,
--29.384,-29.385,-29.385,-29.385,-29.386,-29.386,-29.386,-29.387,-29.387,-29.388,-29.388,-29.389,-29.389,-29.390,-29.391,-29.391,
--29.392,-29.393,-29.393,-29.394,-29.395,-29.395,-29.396,-29.397,-29.398,-29.399,-29.400,-29.401,-29.402,-29.403,-29.404,-29.405,
--29.406,-29.407,-29.408,-29.409,-29.410,-29.412,-29.413,-29.414,-29.416,-29.417,-29.418,-29.420,-29.421,-29.423,-29.425,-29.426,
--29.428,-29.430,-29.431,-29.433,-29.435,-29.437,-29.439,-29.441,-29.443,-29.445,-29.447,-29.449,-29.451,-29.453,-29.456,-29.458,
--29.460,-29.462,-29.465,-29.467,-29.470,-29.472,-29.475,-29.478,-29.480,-29.483,-29.486,-29.489,-29.491,-29.494,-29.497,-29.500,
--29.503,-29.506,-29.509,-29.513,-29.516,-29.519,-29.522,-29.526,-29.529,-29.532,-29.536,-29.539,-29.543,-29.546,-29.550,-29.554,
--29.557,-29.561,-29.565,-29.569,-29.573,-29.577,-29.581,-29.585,-29.589,-29.593,-29.597,-29.601,-29.605,-29.609,-29.614,-29.618,
--29.622,-29.626,-29.631,-29.635,-29.640,-29.644,-29.649,-29.653,-29.658,-29.663,-29.667,-29.672,-29.677,-29.681,-29.686,-29.691,
--29.696,-29.701,-29.706,-29.711,-29.716,-29.721,-29.726,-29.731,-29.736,-29.741,-29.746,-29.751,-29.756,-29.761,-29.766,-29.772,
--29.777,-29.782,-29.787,-29.793,-29.798,-29.803,-29.809,-29.814,-29.819,-29.825,-29.830,-29.835,-29.841,-29.846,-29.852,-29.857,
--29.863,-29.868,-29.874,-29.879,-29.884,-29.890,-29.895,-29.901,-29.906,-29.912,-29.917,-29.923,-29.928,-29.934,-29.940,-29.945,
--29.951,-29.956,-29.962,-29.967,-29.973,-29.978,-29.984,-29.989,-29.995,-30.000,-30.005,-30.011,-30.016,-30.022,-30.027,-30.033,
--30.038,-30.043,-30.049,-30.054,-30.059,-30.065,-30.070,-30.075,-30.081,-30.086,-30.091,-30.097,-30.102,-30.107,-30.112,-30.117,
--30.122,-30.128,-30.133,-30.138,-30.143,-30.148,-30.153,-30.158,-30.163,-30.168,-30.173,-30.177,-30.182,-30.187,-30.192,-30.197,
--30.201,-30.206,-30.211,-30.215,-30.220,-30.225,-30.229,-30.234,-30.238,-30.243,-30.247,-30.251,-30.256,-30.260,-30.264,-30.269,
--30.273,-30.277,-30.281,-30.285,-30.289,-30.293,-30.297,-30.301,-30.305,-30.309,-30.313,-30.317,-30.320,-30.324,-30.328,-30.331,
--30.335,-30.339,-30.342,-30.346,-30.349,-30.352,-30.356,-30.359,-30.362,-30.366,-30.369,-30.372,-30.375,-30.378,-30.381,-30.384,
--30.387,-30.390,-30.393,-30.396,-30.399,-30.401,-30.404,-30.407,-30.409,-30.412,-30.414,-30.417,-30.419,-30.422,-30.424,-30.426,
--30.429,-30.431,-30.433,-30.435,-30.437,-30.439,-30.441,-30.443,-30.445,-30.447,-30.449,-30.451,-30.453,-30.455,-30.456,-30.458,
--30.460,-30.461,-30.463,-30.464,-30.466,-30.467,-30.469,-30.470,-30.471,-30.472,-30.474,-30.475,-30.476,-30.477,-30.478,-30.479,
--30.481,-30.482,-30.483,-30.483,-30.484,-30.485,-30.486,-30.487,-30.488,-30.488,-30.489,-30.490,-30.491,-30.491,-30.492,-30.492,
--30.493,-30.493,-30.494,-30.494,-30.495,-30.495,-30.496,-30.496,-30.496,-30.497,-30.497,-30.497,-30.498,-30.498,-30.498,-30.498,
--30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.500,-30.500,-30.500,-30.500,-30.500,-30.500,-30.500,
--30.500,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.499,-30.498,-30.498,
--30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.497,-30.497,-30.497,-30.497,-30.497,
--30.497,-30.497,-30.497,-30.497,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.498,-30.499,-30.499,-30.499,
--30.499,-30.500,-30.500,-30.500,-30.500,-30.501,-30.501,-30.502,-30.502,-30.502,-30.503,-30.503,-30.504,-30.504,-30.505,-30.505,
--30.506,-30.507,-30.507,-30.508,-30.509,-30.509,-30.510,-30.511,-30.512,-30.513,-30.513,-30.514,-30.515,-30.516,-30.517,-30.518,
--30.519,-30.520,-30.521,-30.522,-30.524,-30.525,-30.526,-30.527,-30.529,-30.530,-30.531,-30.533,-30.534,-30.535,-30.537,-30.538,
--30.540,-30.541,-30.543,-30.545,-30.546,-30.548,-30.550,-30.551,-30.553,-30.555,-30.557,-30.559,-30.561,-30.562,-30.564,-30.566,
--30.568,-30.570,-30.572,-30.575,-30.577,-30.579,-30.581,-30.583,-30.586,-30.588,-30.590,-30.592,-30.595,-30.597,-30.600,-30.602,
--30.604,-30.607,-30.610,-30.612,-30.615,-30.617,-30.620,-30.622,-30.625,-30.628,-30.631,-30.633,-30.636,-30.639,-30.642,-30.644,
--30.647,-30.650,-30.653,-30.656,-30.659,-30.662,-30.665,-30.668,-30.671,-30.674,-30.677,-30.680,-30.683,-30.686,-30.689,-30.692,
--30.695,-30.698,-30.702,-30.705,-30.708,-30.711,-30.714,-30.717,-30.721,-30.724,-30.727,-30.730,-30.733,-30.737,-30.740,-30.743,
--30.746,-30.750,-30.753,-30.756,-30.759,-30.763,-30.766,-30.769,-30.772,-30.776,-30.779,-30.782,-30.785,-30.789,-30.792,-30.795,
--30.798,-30.802,-30.805,-30.808,-30.811,-30.814,-30.817,-30.821,-30.824,-30.827,-30.830,-30.833,-30.836,-30.839,-30.842,-30.845,
--30.848,-30.851,-30.854,-30.857,-30.860,-30.863,-30.866,-30.869,-30.872,-30.875,-30.877,-30.880,-30.883,-30.886,-30.888,-30.891,
--30.893,-30.896,-30.899,-30.901,-30.904,-30.906,-30.909,-30.911,-30.913,-30.916,-30.918,-30.920,-30.922,-30.924,-30.927,-30.929,
--30.931,-30.933,-30.935,-30.937,-30.938,-30.940,-30.942,-30.944,-30.945,-30.947,-30.949,-30.950,-30.952,-30.953,-30.955,-30.956,
--30.957,-30.958,-30.960,-30.961,-30.962,-30.963,-30.964,-30.965,-30.966,-30.966,-30.967,-30.968,-30.968,-30.969,-30.969,-30.970,
--30.970,-30.971,-30.971,-30.971,-30.971,-30.971,-30.971,-30.971,-30.971,-30.971,-30.970,-30.970,-30.970,-30.969,-30.969,-30.968,
--30.967,-30.967,-30.966,-30.965,-30.964,-30.963,-30.962,-30.961,-30.960,-30.958,-30.957,-30.956,-30.954,-30.952,-30.951,-30.949,
--30.947,-30.945,-30.943,-30.941,-30.939,-30.937,-30.935,-30.933,-30.930,-30.928,-30.925,-30.922,-30.920,-30.917,-30.914,-30.911,
--30.908,-30.905,-30.902,-30.899,-30.895,-30.892,-30.888,-30.885,-30.881,-30.878,-30.874,-30.870,-30.866,-30.862,-30.858,-30.854,
--30.849,-30.845,-30.841,-30.836,-30.832,-30.827,-30.822,-30.818,-30.813,-30.808,-30.803,-30.798,-30.792,-30.787,-30.782,-30.776,
--30.771,-30.765,-30.760,-30.754,-30.748,-30.742,-30.736,-30.730,-30.724,-30.718,-30.712,-30.705,-30.699,-30.692,-30.686,-30.679,
--30.673,-30.666,-30.659,-30.652,-30.645,-30.638,-30.631,-30.624,-30.616,-30.609,-30.601,-30.594,-30.586,-30.579,-30.571,-30.563,
--30.555,-30.547,-30.539,-30.531,-30.523,-30.515,-30.507,-30.498,-30.490,-30.482,-30.473,-30.464,-30.456,-30.447,-30.438,-30.429,
--30.421,-30.412,-30.403,-30.393,-30.384,-30.375,-30.366,-30.357,-30.347,-30.338,-30.328,-30.319,-30.309,-30.300,-30.290,-30.280,
--30.270,-30.261,-30.251,-30.241,-30.231,-30.221,-30.211,-30.201,-30.191,-30.181,-30.170,-30.160,-30.150,-30.139,-30.129,-30.119,
--30.108,-30.098,-30.087,-30.077,-30.066,-30.056,-30.045,-30.035,-30.024,-30.013,-30.003,-29.992,-29.981,-29.971,-29.960,-29.949,
--29.938,-29.927,-29.917,-29.906,-29.895,-29.884,-29.873,-29.863,-29.852,-29.841,-29.830,-29.819,-29.809,-29.798,-29.787,-29.776,
--29.765,-29.755,-29.744,-29.733,-29.722,-29.712,-29.701,-29.690,-29.680,-29.669,-29.658,-29.648,-29.637,-29.627,-29.616,-29.606,
--29.595,-29.585,-29.575,-29.564,-29.554,-29.544,-29.534,-29.523,-29.513,-29.503,-29.493,-29.483,-29.473,-29.463,-29.454,-29.444,
--29.434,-29.424,-29.415,-29.405,-29.396,-29.386,-29.377,-29.368,-29.359,-29.349,-29.340,-29.331,-29.322,-29.313,-29.305,-29.296,
--29.287,-29.279,-29.270,-29.262,-29.253,-29.245,-29.237,-29.229,-29.221,-29.213,-29.205,-29.197,-29.189,-29.181,-29.174,-29.166,
--29.159,-29.152,-29.145,-29.137,-29.130,-29.123,-29.117,-29.110,-29.103,-29.097,-29.090,-29.084,-29.077,-29.071,-29.065,-29.059,
--29.053,-29.047,-29.041,-29.036,-29.030,-29.025,-29.019,-29.014,-29.009,-29.003,-28.998,-28.994,-28.989,-28.984,-28.979,-28.975,
--28.970,-28.966,-28.962,-28.957,-28.953,-28.949,-28.945,-28.941,-28.938,-28.934,-28.930,-28.927,-28.923,-28.920,-28.917,-28.914,
--28.911,-28.908,-28.905,-28.902,-28.899,-28.896,-28.894,-28.891,-28.889,-28.886,-28.884,-28.882,-28.880,-28.878,-28.876,-28.874,
--28.872,-28.870,-28.868,-28.867,-28.865,-28.864,-28.862,-28.861,-28.860,-28.858,-28.857,-28.856,-28.855,-28.854,-28.853,-28.852,
--28.851,-28.851,-28.850,-28.849,-28.849,-28.848,-28.847,-28.847,-28.847,-28.846,-28.846,-28.846,-28.845,-28.845,-28.845,-28.845,
--28.845,-28.845,-28.845,-28.845,-28.845,-28.845,-28.845,-28.845,-28.846,-28.846,-28.846,-28.846,-28.847,-28.847,-28.848,-28.848,
--28.848,-28.849,-28.849,-28.850,-28.850,-28.851,-28.852,-28.852,-28.853,-28.853,-28.854,-28.855,-28.855,-28.856,-28.857,-28.858,
--28.858,-28.859,-28.860,-28.861,-28.861,-28.862,-28.863,-28.864,-28.865,-28.866,-28.866,-28.867,-28.868,-28.869,-28.870,-28.871,
--28.872,-28.872,-28.873,-28.874,-28.875,-28.876,-28.877,-28.878,-28.879,-28.880,-28.880,-28.881,-28.882,-28.883,-28.884,-28.885,
--28.886,-28.887,-28.888,-28.888,-28.889,-28.890,-28.891,-28.892,-28.893,-28.894,-28.895,-28.895,-28.896,-28.897,-28.898,-28.899,
--28.900,-28.901,-28.901,-28.902,-28.903,-28.904,-28.905,-28.906,-28.906,-28.907,-28.908,-28.909,-28.910,-28.910,-28.911,-28.912,
--28.913,-28.914,-28.914,-28.915,-28.916,-28.917,-28.917,-28.918,-28.919,-28.920,-28.921,-28.921,-28.922,-28.923,-28.924,-28.924,
--28.925,-28.926,-28.927,-28.927,-28.928,-28.929,-28.930,-28.931,-28.931,-28.932,-28.933,-28.934,-28.935,-28.935,-28.936,-28.937,
--28.938,-28.939,-28.939,-28.940,-28.941,-28.942,-28.943,-28.943,-28.944,-28.945,-28.946,-28.947,-28.948,-28.949,-28.950,-28.950,
--28.951,-28.952,-28.953,-28.954,-28.955,-28.956,-28.957,-28.958,-28.959,-28.960,-28.961,-28.962,-28.963,-28.964,-29.605,-29.607,
--29.610,-29.612,-29.614,-29.616,-29.618,-29.620,-29.622,-29.624,-29.627,-29.629,-29.631,-29.633,-29.635,-29.637,-29.639,-29.641,
--29.643,-29.645,-29.647,-29.649,-29.651,-29.654,-29.656,-29.658,-29.660,-29.662,-29.664,-29.666,-29.668,-29.670,-29.672,-29.674,
--29.676,-29.678,-29.680,-29.682,-29.684,-29.686,-29.688,-29.689,-29.691,-29.693,-29.695,-29.697,-29.699,-29.701,-29.703,-29.705,
--29.707,-29.709,-29.710,-29.712,-29.714,-29.716,-29.718,-29.720,-29.721,-29.723,-29.725,-29.727,-29.729,-29.730,-29.732,-29.734,
--29.736,-29.737,-29.739,-29.741,-29.743,-29.744,-29.746,-29.748,-29.749,-29.751,-29.753,-29.754,-29.756,-29.758,-29.759,-29.761,
--29.762,-29.764,-29.766,-29.767,-29.769,-29.770,-29.772,-29.773,-29.775,-29.776,-29.778,-29.779,-29.781,-29.782,-29.784,-29.785,
--29.787,-29.788,-29.789,-29.791,-29.792,-29.794,-29.795,-29.796,-29.798,-29.799,-29.800,-29.801,-29.803,-29.804,-29.805,-29.807,
--29.808,-29.809,-29.810,-29.811,-29.813,-29.814,-29.815,-29.816,-29.817,-29.818,-29.819,-29.820,-29.821,-29.822,-29.824,-29.825,
--29.826,-29.827,-29.828,-29.828,-29.829,-29.830,-29.831,-29.832,-29.833,-29.834,-29.835,-29.836,-29.837,-29.837,-29.838,-29.839,
--29.840,-29.841,-29.841,-29.842,-29.843,-29.843,-29.844,-29.845,-29.846,-29.846,-29.847,-29.847,-29.848,-29.849,-29.849,-29.850,
--29.850,-29.851,-29.851,-29.852,-29.852,-29.853,-29.853,-29.854,-29.854,-29.855,-29.855,-29.855,-29.856,-29.856,-29.857,-29.857,
--29.857,-29.857,-29.858,-29.858,-29.858,-29.859,-29.859,-29.859,-29.859,-29.859,-29.860,-29.860,-29.860,-29.860,-29.860,-29.860,
--29.860,-29.860,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.861,-29.860,
--29.860,-29.860,-29.860,-29.860,-29.860,-29.860,-29.860,-29.860,-29.859,-29.859,-29.859,-29.859,-29.859,-29.858,-29.858,-29.858,
--29.858,-29.857,-29.857,-29.857,-29.857,-29.856,-29.856,-29.856,-29.856,-29.855,-29.855,-29.855,-29.854,-29.854,-29.854,-29.853,
--29.853,-29.853,-29.852,-29.852,-29.852,-29.851,-29.851,-29.850,-29.850,-29.850,-29.849,-29.849,-29.849,-29.848,-29.848,-29.847,
--29.847,-29.847,-29.846,-29.846,-29.846,-29.845,-29.845,-29.844,-29.844,-29.844,-29.843,-29.843,-29.842,-29.842,-29.842,-29.841,
--29.841,-29.841,-29.840,-29.840,-29.840,-29.839,-29.839,-29.839,-29.838,-29.838,-29.838,-29.837,-29.837,-29.837,-29.836,-29.836,
--29.836,-29.836,-29.835,-29.835,-29.835,-29.835,-29.834,-29.834,-29.834,-29.834,-29.834,-29.833,-29.833,-29.833,-29.833,-29.833,
--29.833,-29.833,-29.833,-29.833,-29.832,-29.832,-29.832,-29.832,-29.832,-29.832,-29.832,-29.832,-29.832,-29.832,-29.833,-29.833,
--29.833,-29.833,-29.833,-29.833,-29.833,-29.833,-29.834,-29.834,-29.834,-29.834,-29.835,-29.835,-29.835,-29.835,-29.836,-29.836,
--29.837,-29.837,-29.837,-29.838,-29.838,-29.839,-29.839,-29.840,-29.840,-29.841,-29.841,-29.842,-29.842,-29.843,-29.844,-29.844,
--29.845,-29.846,-29.847,-29.847,-29.848,-29.849,-29.850,-29.850,-29.851,-29.852,-29.853,-29.854,-29.855,-29.856,-29.857,-29.858,
--29.859,-29.860,-29.861,-29.862,-29.863,-29.864,-29.865,-29.866,-29.868,-29.869,-29.870,-29.871,-29.873,-29.874,-29.875,-29.877,
--29.878,-29.879,-29.881,-29.882,-29.884,-29.885,-29.886,-29.888,-29.890,-29.891,-29.893,-29.894,-29.896,-29.897,-29.899,-29.901,
--29.902,-29.904,-29.906,-29.908,-29.909,-29.911,-29.913,-29.915,-29.917,-29.919,-29.920,-29.922,-29.924,-29.926,-29.928,-29.930,
--29.932,-29.934,-29.936,-29.938,-29.940,-29.942,-29.944,-29.947,-29.949,-29.951,-29.953,-29.955,-29.957,-29.960,-29.962,-29.964,
--29.966,-29.969,-29.971,-29.973,-29.976,-29.978,-29.980,-29.983,-29.985,-29.987,-29.990,-29.992,-29.995,-29.997,-30.000,-30.002,
--30.005,-30.007,-30.010,-30.012,-30.015,-30.017,-30.020,-30.022,-30.025,-30.027,-30.030,-30.033,-30.035,-30.038,-30.040,-30.043,
--30.046,-30.048,-30.051,-30.054,-30.056,-30.059,-30.062,-30.065,-30.067,-30.070,-30.073,-30.075,-30.078,-30.081,-30.084,-30.086,
--30.089,-30.092,-30.095,-30.097,-30.100,-30.103,-30.106,-30.109,-30.111,-30.114,-30.117,-30.120,-30.122,-30.125,-30.128,-30.131,
--30.134,-30.136,-30.139,-30.142,-30.145,-30.148,-30.150,-30.153,-30.156,-30.159,-30.162,-30.164,-30.167,-30.170,-30.173,-30.176,
--30.178,-30.181,-30.184,-30.187,-30.190,-30.192,-30.195,-30.198,-30.201,-30.203,-30.206,-30.209,-30.212,-30.214,-30.217,-30.220,
--30.223,-30.225,-30.228,-30.231,-30.234,-30.236,-30.239,-30.242,-30.244,-30.247,-30.250,-30.252,-30.255,-30.258,-30.260,-30.263,
--30.266,-30.268,-30.271,-30.273,-30.276,-30.279,-30.281,-30.284,-30.286,-30.289,-30.292,-30.294,-30.297,-30.299,-30.302,-30.304,
--30.307,-30.309,-30.312,-30.314,-30.317,-30.319,-30.322,-30.324,-30.327,-30.329,-30.332,-30.334,-30.336,-30.339,-30.341,-30.344,
--30.346,-30.348,-30.351,-30.353,-30.355,-30.358,-30.360,-30.362,-30.365,-30.367,-30.369,-30.372,-30.374,-30.376,-30.378,-30.381,
--30.383,-30.385,-30.387,-30.390,-30.392,-30.394,-30.396,-30.398,-30.401,-30.403,-30.405,-30.407,-30.409,-30.411,-30.413,-30.416,
--30.418,-30.420,-30.422,-30.424,-30.426,-30.428,-30.430,-30.432,-30.434,-30.436,-30.438,-30.440,-30.442,-30.444,-30.446,-30.448,
--30.450,-30.452,-30.454,-30.456,-30.458,-30.460,-30.462,-30.464,-30.466,-30.468,-30.470,-30.472,-30.474,-30.476,-30.478,-30.480,
--30.482,-30.484,-30.485,-30.487,-30.489,-30.491,-30.493,-30.495,-30.497,-30.499,-30.501,-30.502,-30.504,-30.506,-30.508,-30.510,
--30.512,-30.514,-30.515,-30.517,-30.519,-30.521,-30.523,-30.525,-30.526,-30.528,-30.530,-30.532,-30.534,-30.536,-30.537,-30.539,
--30.541,-30.543,-30.545,-30.547,-30.548,-30.550,-30.552,-30.554,-30.556,-30.557,-30.559,-30.561,-30.563,-30.565,-30.567,-30.568,
--30.570,-30.572,-30.574,-30.576,-30.577,-30.579,-30.581,-30.583,-30.585,-30.587,-30.588,-30.590,-30.592,-30.594,-30.596,-30.598,
--30.599,-30.601,-30.603,-30.605,-30.607,-30.609,-30.610,-30.612,-30.614,-30.616,-30.618,-30.620,-30.622,-30.623,-30.625,-30.627,
--30.629,-30.631,-30.633,-30.635,-30.636,-30.638,-30.640,-30.642,-30.644,-30.646,-30.648,-30.650,-30.651,-30.653,-30.655,-30.657,
--30.659,-30.661,-30.663,-30.665,-30.667,-30.668,-30.670,-30.672,-30.674,-30.676,-30.678,-30.680,-30.682,-30.684,-30.686,-30.687,
--30.689,-30.691,-30.693,-30.695,-30.697,-30.699,-30.701,-30.703,-30.705,-30.706,-30.708,-30.710,-30.712,-30.714,-30.716,-30.718,
--30.720,-30.722,-30.723,-30.725,-30.727,-30.729,-30.731,-30.733,-30.735,-30.737,-30.738,-30.740,-30.742,-30.744,-30.746,-30.748,
--30.749,-30.751,-30.753,-30.755,-30.757,-30.759,-30.760,-30.762,-30.764,-30.766,-30.767,-30.769,-30.771,-30.773,-30.774,-30.776,
--30.778,-30.780,-30.781,-30.783,-30.785,-30.786,-30.788,-30.790,-30.791,-30.793,-30.795,-30.796,-30.798,-30.799,-30.801,-30.803,
--30.804,-30.806,-30.807,-30.809,-30.810,-30.812,-30.813,-30.815,-30.816,-30.817,-30.819,-30.820,-30.822,-30.823,-30.824,-30.826,
--30.827,-30.828,-30.830,-30.831,-30.832,-30.833,-30.834,-30.836,-30.837,-30.838,-30.839,-30.840,-30.841,-30.842,-30.843,-30.844,
--30.845,-30.846,-30.847,-30.848,-30.849,-30.850,-30.851,-30.852,-30.852,-30.853,-30.854,-30.855,-30.855,-30.856,-30.857,-30.857,
--30.858,-30.859,-30.859,-30.860,-30.860,-30.861,-30.861,-30.861,-30.862,-30.862,-30.863,-30.863,-30.863,-30.863,-30.864,-30.864,
--30.864,-30.864,-30.864,-30.864,-30.864,-30.864,-30.864,-30.864,-30.864,-30.864,-30.863,-30.863,-30.863,-30.863,-30.862,-30.862,
--30.862,-30.861,-30.861,-30.860,-30.860,-30.859,-30.859,-30.858,-30.857,-30.857,-30.856,-30.855,-30.854,-30.853,-30.852,-30.852,
--30.851,-30.850,-30.849,-30.847,-30.846,-30.845,-30.844,-30.843,-30.841,-30.840,-30.839,-30.837,-30.836,-30.834,-30.833,-30.831,
--30.830,-30.828,-30.826,-30.825,-30.823,-30.821,-30.819,-30.817,-30.815,-30.813,-30.811,-30.809,-30.807,-30.805,-30.803,-30.801,
--30.798,-30.796,-30.794,-30.791,-30.789,-30.787,-30.784,-30.781,-30.779,-30.776,-30.774,-30.771,-30.768,-30.765,-30.762,-30.760,
--30.757,-30.754,-30.751,-30.748,-30.744,-30.741,-30.738,-30.735,-30.732,-30.728,-30.725,-30.722,-30.718,-30.715,-30.711,-30.708,
--30.704,-30.700,-30.697,-30.693,-30.689,-30.685,-30.681,-30.678,-30.674,-30.670,-30.666,-30.662,-30.658,-30.653,-30.649,-30.645,
--30.641,-30.637,-30.632,-30.628,-30.623,-30.619,-30.615,-30.610,-30.605,-30.601,-30.596,-30.592,-30.587,-30.582,-30.577,-30.573,
--30.568,-30.563,-30.558,-30.553,-30.548,-30.543,-30.538,-30.533,-30.528,-30.523,-30.517,-30.512,-30.507,-30.502,-30.496,-30.491,
--30.486,-30.480,-30.475,-30.469,-30.464,-30.458,-30.453,-30.447,-30.441,-30.436,-30.430,-30.424,-30.419,-30.413,-30.407,-30.401,
--30.396,-30.390,-30.384,-30.378,-30.372,-30.366,-30.360,-30.354,-30.348,-30.342,-30.336,-30.330,-30.324,-30.318,-30.312,-30.305,
--30.299,-30.293,-30.287,-30.281,-30.274,-30.268,-30.262,-30.255,-30.249,-30.243,-30.236,-30.230,-30.224,-30.217,-30.211,-30.205,
--30.198,-30.192,-30.185,-30.179,-30.172,-30.166,-30.159,-30.153,-30.146,-30.140,-30.133,-30.127,-30.120,-30.114,-30.107,-30.101,
--30.094,-30.088,-30.081,-30.075,-30.068,-30.062,-30.055,-30.049,-30.042,-30.036,-30.029,-30.023,-30.016,-30.010,-30.003,-29.997,
--29.990,-29.984,-29.977,-29.971,-29.964,-29.958,-29.952,-29.945,-29.939,-29.932,-29.926,-29.920,-29.913,-29.907,-29.901,-29.894,
--29.888,-29.882,-29.876,-29.869,-29.863,-29.857,-29.851,-29.844,-29.838,-29.832,-29.826,-29.820,-29.814,-29.808,-29.802,-29.796,
--29.790,-29.784,-29.778,-29.772,-29.766,-29.760,-29.755,-29.749,-29.743,-29.737,-29.732,-29.726,-29.720,-29.715,-29.709,-29.704,
--29.698,-29.693,-29.687,-29.682,-29.676,-29.671,-29.666,-29.661,-29.655,-29.650,-29.645,-29.640,-29.635,-29.630,-29.625,-29.620,
--29.615,-29.610,-29.605,-29.600,-29.595,-29.591,-29.586,-29.581,-29.577,-29.572,-29.568,-29.563,-29.559,-29.554,-29.550,-29.546,
--29.541,-29.537,-29.533,-29.529,-29.525,-29.521,-29.517,-29.513,-29.509,-29.505,-29.501,-29.497,-29.493,-29.490,-29.486,-29.483,
--29.479,-29.476,-29.472,-29.469,-29.465,-29.462,-29.459,-29.456,-29.452,-29.449,-29.446,-29.443,-29.440,-29.437,-29.434,-29.432,
--29.429,-29.426,-29.423,-29.421,-29.418,-29.416,-29.413,-29.411,-29.408,-29.406,-29.404,-29.401,-29.399,-29.397,-29.395,-29.393,
--29.391,-29.389,-29.387,-29.385,-29.383,-29.382,-29.380,-29.378,-29.377,-29.375,-29.373,-29.372,-29.370,-29.369,-29.368,-29.366,
--29.365,-29.364,-29.363,-29.362,-29.361,-29.360,-29.359,-29.358,-29.357,-29.356,-29.355,-29.354,-29.353,-29.353,-29.352,-29.351,
--29.351,-29.350,-29.350,-29.349,-29.349,-29.349,-29.348,-29.348,-29.348,-29.348,-29.347,-29.347,-29.347,-29.347,-29.347,-29.347,
--29.347,-29.347,-29.347,-29.348,-29.348,-29.348,-29.348,-29.349,-29.349,-29.349,-29.350,-29.350,-29.351,-29.351,-29.352,-29.352,
--29.353,-29.353,-29.354,-29.355,-29.356,-29.356,-29.357,-29.358,-29.359,-29.360,-29.360,-29.361,-29.362,-29.363,-29.364,-29.365,
--29.366,-29.367,-29.369,-29.370,-29.371,-29.372,-29.373,-29.374,-29.376,-29.377,-29.378,-29.380,-29.381,-29.382,-29.384,-29.385,
--29.386,-29.388,-29.389,-29.391,-29.392,-29.394,-29.395,-29.397,-29.399,-29.400,-29.402,-29.403,-29.405,-29.407,-29.408,-29.410,
--29.412,-29.413,-29.415,-29.417,-29.419,-29.420,-29.422,-29.424,-29.426,-29.428,-29.429,-29.431,-29.433,-29.435,-29.437,-29.439,
--29.441,-29.443,-29.445,-29.447,-29.448,-29.450,-29.452,-29.454,-29.456,-29.458,-29.460,-29.462,-29.464,-29.466,-29.468,-29.470,
--29.473,-29.475,-29.477,-29.479,-29.481,-29.483,-29.485,-29.487,-29.489,-29.491,-29.493,-29.495,-29.498,-29.500,-29.502,-29.504,
--29.506,-29.508,-29.510,-29.512,-29.515,-29.517,-29.519,-29.521,-29.523,-29.525,-29.527,-29.530,-29.532,-29.534,-29.536,-29.538,
--29.540,-29.543,-29.545,-29.547,-29.549,-29.551,-29.553,-29.556,-29.558,-29.560,-29.562,-29.564,-29.566,-29.569,-29.571,-29.573,
--29.575,-29.577,-29.579,-29.582,-29.584,-29.586,-29.588,-29.590,-29.592,-29.595,-29.597,-29.599,-29.601,-29.603,-29.605,-29.547,
--29.548,-29.549,-29.550,-29.551,-29.552,-29.553,-29.554,-29.555,-29.556,-29.557,-29.557,-29.558,-29.559,-29.560,-29.561,-29.562,
--29.563,-29.564,-29.565,-29.566,-29.567,-29.567,-29.568,-29.569,-29.570,-29.571,-29.572,-29.573,-29.574,-29.575,-29.576,-29.576,
--29.577,-29.578,-29.579,-29.580,-29.581,-29.582,-29.583,-29.583,-29.584,-29.585,-29.586,-29.587,-29.588,-29.589,-29.589,-29.590,
--29.591,-29.592,-29.593,-29.594,-29.595,-29.595,-29.596,-29.597,-29.598,-29.599,-29.599,-29.600,-29.601,-29.602,-29.603,-29.604,
--29.604,-29.605,-29.606,-29.607,-29.608,-29.608,-29.609,-29.610,-29.611,-29.611,-29.612,-29.613,-29.614,-29.614,-29.615,-29.616,
--29.617,-29.617,-29.618,-29.619,-29.620,-29.620,-29.621,-29.622,-29.622,-29.623,-29.624,-29.624,-29.625,-29.626,-29.627,-29.627,
--29.628,-29.629,-29.629,-29.630,-29.631,-29.631,-29.632,-29.632,-29.633,-29.634,-29.634,-29.635,-29.636,-29.636,-29.637,-29.637,
--29.638,-29.639,-29.639,-29.640,-29.640,-29.641,-29.642,-29.642,-29.643,-29.643,-29.644,-29.644,-29.645,-29.645,-29.646,-29.646,
--29.647,-29.648,-29.648,-29.649,-29.649,-29.650,-29.650,-29.651,-29.651,-29.652,-29.652,-29.652,-29.653,-29.653,-29.654,-29.654,
--29.655,-29.655,-29.656,-29.656,-29.657,-29.657,-29.657,-29.658,-29.658,-29.659,-29.659,-29.659,-29.660,-29.660,-29.661,-29.661,
--29.661,-29.662,-29.662,-29.663,-29.663,-29.663,-29.664,-29.664,-29.664,-29.665,-29.665,-29.665,-29.666,-29.666,-29.666,-29.667,
--29.667,-29.667,-29.668,-29.668,-29.668,-29.668,-29.669,-29.669,-29.669,-29.670,-29.670,-29.670,-29.670,-29.671,-29.671,-29.671,
--29.671,-29.672,-29.672,-29.672,-29.672,-29.673,-29.673,-29.673,-29.673,-29.674,-29.674,-29.674,-29.674,-29.675,-29.675,-29.675,
--29.675,-29.675,-29.676,-29.676,-29.676,-29.676,-29.676,-29.677,-29.677,-29.677,-29.677,-29.677,-29.678,-29.678,-29.678,-29.678,
--29.678,-29.679,-29.679,-29.679,-29.679,-29.679,-29.679,-29.680,-29.680,-29.680,-29.680,-29.680,-29.680,-29.681,-29.681,-29.681,
--29.681,-29.681,-29.681,-29.681,-29.682,-29.682,-29.682,-29.682,-29.682,-29.682,-29.683,-29.683,-29.683,-29.683,-29.683,-29.683,
--29.683,-29.684,-29.684,-29.684,-29.684,-29.684,-29.684,-29.685,-29.685,-29.685,-29.685,-29.685,-29.685,-29.685,-29.686,-29.686,
--29.686,-29.686,-29.686,-29.686,-29.687,-29.687,-29.687,-29.687,-29.687,-29.687,-29.688,-29.688,-29.688,-29.688,-29.688,-29.689,
--29.689,-29.689,-29.689,-29.689,-29.689,-29.690,-29.690,-29.690,-29.690,-29.691,-29.691,-29.691,-29.691,-29.691,-29.692,-29.692,
--29.692,-29.692,-29.692,-29.693,-29.693,-29.693,-29.693,-29.694,-29.694,-29.694,-29.694,-29.695,-29.695,-29.695,-29.695,-29.696,
--29.696,-29.696,-29.697,-29.697,-29.697,-29.697,-29.698,-29.698,-29.698,-29.699,-29.699,-29.699,-29.700,-29.700,-29.700,-29.701,
--29.701,-29.701,-29.702,-29.702,-29.702,-29.703,-29.703,-29.703,-29.704,-29.704,-29.705,-29.705,-29.705,-29.706,-29.706,-29.707,
--29.707,-29.707,-29.708,-29.708,-29.709,-29.709,-29.710,-29.710,-29.711,-29.711,-29.711,-29.712,-29.712,-29.713,-29.713,-29.714,
--29.714,-29.715,-29.715,-29.716,-29.716,-29.717,-29.717,-29.718,-29.718,-29.719,-29.720,-29.720,-29.721,-29.721,-29.722,-29.722,
--29.723,-29.724,-29.724,-29.725,-29.725,-29.726,-29.727,-29.727,-29.728,-29.728,-29.729,-29.730,-29.730,-29.731,-29.732,-29.732,
--29.733,-29.734,-29.734,-29.735,-29.736,-29.736,-29.737,-29.738,-29.739,-29.739,-29.740,-29.741,-29.742,-29.742,-29.743,-29.744,
--29.745,-29.745,-29.746,-29.747,-29.748,-29.748,-29.749,-29.750,-29.751,-29.752,-29.752,-29.753,-29.754,-29.755,-29.756,-29.757,
--29.757,-29.758,-29.759,-29.760,-29.761,-29.762,-29.763,-29.764,-29.764,-29.765,-29.766,-29.767,-29.768,-29.769,-29.770,-29.771,
--29.772,-29.773,-29.774,-29.775,-29.776,-29.777,-29.777,-29.778,-29.779,-29.780,-29.781,-29.782,-29.783,-29.784,-29.785,-29.786,
--29.787,-29.788,-29.789,-29.790,-29.791,-29.792,-29.793,-29.795,-29.796,-29.797,-29.798,-29.799,-29.800,-29.801,-29.802,-29.803,
--29.804,-29.805,-29.806,-29.807,-29.808,-29.810,-29.811,-29.812,-29.813,-29.814,-29.815,-29.816,-29.817,-29.818,-29.820,-29.821,
--29.822,-29.823,-29.824,-29.825,-29.826,-29.828,-29.829,-29.830,-29.831,-29.832,-29.833,-29.835,-29.836,-29.837,-29.838,-29.839,
--29.840,-29.842,-29.843,-29.844,-29.845,-29.846,-29.848,-29.849,-29.850,-29.851,-29.852,-29.854,-29.855,-29.856,-29.857,-29.859,
--29.860,-29.861,-29.862,-29.863,-29.865,-29.866,-29.867,-29.868,-29.870,-29.871,-29.872,-29.873,-29.875,-29.876,-29.877,-29.878,
--29.880,-29.881,-29.882,-29.883,-29.885,-29.886,-29.887,-29.888,-29.890,-29.891,-29.892,-29.894,-29.895,-29.896,-29.897,-29.899,
--29.900,-29.901,-29.902,-29.904,-29.905,-29.906,-29.907,-29.909,-29.910,-29.911,-29.913,-29.914,-29.915,-29.916,-29.918,-29.919,
--29.920,-29.922,-29.923,-29.924,-29.925,-29.927,-29.928,-29.929,-29.930,-29.932,-29.933,-29.934,-29.936,-29.937,-29.938,-29.939,
--29.941,-29.942,-29.943,-29.944,-29.946,-29.947,-29.948,-29.950,-29.951,-29.952,-29.953,-29.955,-29.956,-29.957,-29.958,-29.960,
--29.961,-29.962,-29.963,-29.965,-29.966,-29.967,-29.968,-29.970,-29.971,-29.972,-29.973,-29.975,-29.976,-29.977,-29.978,-29.980,
--29.981,-29.982,-29.983,-29.985,-29.986,-29.987,-29.988,-29.989,-29.991,-29.992,-29.993,-29.994,-29.996,-29.997,-29.998,-29.999,
--30.000,-30.002,-30.003,-30.004,-30.005,-30.006,-30.008,-30.009,-30.010,-30.011,-30.012,-30.013,-30.015,-30.016,-30.017,-30.018,
--30.019,-30.020,-30.022,-30.023,-30.024,-30.025,-30.026,-30.027,-30.028,-30.030,-30.031,-30.032,-30.033,-30.034,-30.035,-30.036,
--30.037,-30.038,-30.040,-30.041,-30.042,-30.043,-30.044,-30.045,-30.046,-30.047,-30.048,-30.049,-30.050,-30.051,-30.052,-30.054,
--30.055,-30.056,-30.057,-30.058,-30.059,-30.060,-30.061,-30.062,-30.063,-30.064,-30.065,-30.066,-30.067,-30.068,-30.069,-30.070,
--30.071,-30.072,-30.073,-30.073,-30.074,-30.075,-30.076,-30.077,-30.078,-30.079,-30.080,-30.081,-30.082,-30.083,-30.084,-30.084,
--30.085,-30.086,-30.087,-30.088,-30.089,-30.090,-30.091,-30.091,-30.092,-30.093,-30.094,-30.095,-30.095,-30.096,-30.097,-30.098,
--30.099,-30.099,-30.100,-30.101,-30.102,-30.102,-30.103,-30.104,-30.105,-30.105,-30.106,-30.107,-30.108,-30.108,-30.109,-30.110,
--30.110,-30.111,-30.112,-30.112,-30.113,-30.114,-30.114,-30.115,-30.115,-30.116,-30.117,-30.117,-30.118,-30.118,-30.119,-30.119,
--30.120,-30.121,-30.121,-30.122,-30.122,-30.123,-30.123,-30.124,-30.124,-30.125,-30.125,-30.125,-30.126,-30.126,-30.127,-30.127,
--30.128,-30.128,-30.128,-30.129,-30.129,-30.129,-30.130,-30.130,-30.131,-30.131,-30.131,-30.131,-30.132,-30.132,-30.132,-30.133,
--30.133,-30.133,-30.133,-30.134,-30.134,-30.134,-30.134,-30.134,-30.135,-30.135,-30.135,-30.135,-30.135,-30.135,-30.135,-30.135,
--30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,-30.136,
--30.136,-30.135,-30.135,-30.135,-30.135,-30.135,-30.135,-30.135,-30.134,-30.134,-30.134,-30.134,-30.134,-30.133,-30.133,-30.133,
--30.133,-30.132,-30.132,-30.132,-30.131,-30.131,-30.131,-30.130,-30.130,-30.130,-30.129,-30.129,-30.128,-30.128,-30.128,-30.127,
--30.127,-30.126,-30.126,-30.125,-30.125,-30.124,-30.124,-30.123,-30.122,-30.122,-30.121,-30.121,-30.120,-30.119,-30.119,-30.118,
--30.117,-30.117,-30.116,-30.115,-30.115,-30.114,-30.113,-30.112,-30.111,-30.111,-30.110,-30.109,-30.108,-30.107,-30.107,-30.106,
--30.105,-30.104,-30.103,-30.102,-30.101,-30.100,-30.099,-30.098,-30.097,-30.096,-30.095,-30.094,-30.093,-30.092,-30.091,-30.090,
--30.089,-30.088,-30.087,-30.085,-30.084,-30.083,-30.082,-30.081,-30.080,-30.078,-30.077,-30.076,-30.075,-30.073,-30.072,-30.071,
--30.070,-30.068,-30.067,-30.066,-30.064,-30.063,-30.062,-30.060,-30.059,-30.057,-30.056,-30.054,-30.053,-30.052,-30.050,-30.049,
--30.047,-30.046,-30.044,-30.042,-30.041,-30.039,-30.038,-30.036,-30.035,-30.033,-30.031,-30.030,-30.028,-30.026,-30.025,-30.023,
--30.021,-30.020,-30.018,-30.016,-30.015,-30.013,-30.011,-30.009,-30.008,-30.006,-30.004,-30.002,-30.000,-29.998,-29.997,-29.995,
--29.993,-29.991,-29.989,-29.987,-29.985,-29.983,-29.982,-29.980,-29.978,-29.976,-29.974,-29.972,-29.970,-29.968,-29.966,-29.964,
--29.962,-29.960,-29.958,-29.956,-29.954,-29.952,-29.950,-29.947,-29.945,-29.943,-29.941,-29.939,-29.937,-29.935,-29.933,-29.931,
--29.928,-29.926,-29.924,-29.922,-29.920,-29.918,-29.915,-29.913,-29.911,-29.909,-29.906,-29.904,-29.902,-29.900,-29.898,-29.895,
--29.893,-29.891,-29.889,-29.886,-29.884,-29.882,-29.879,-29.877,-29.875,-29.873,-29.870,-29.868,-29.866,-29.863,-29.861,-29.859,
--29.856,-29.854,-29.852,-29.849,-29.847,-29.845,-29.842,-29.840,-29.838,-29.835,-29.833,-29.830,-29.828,-29.826,-29.823,-29.821,
--29.819,-29.816,-29.814,-29.811,-29.809,-29.807,-29.804,-29.802,-29.800,-29.797,-29.795,-29.792,-29.790,-29.788,-29.785,-29.783,
--29.781,-29.778,-29.776,-29.773,-29.771,-29.769,-29.766,-29.764,-29.761,-29.759,-29.757,-29.754,-29.752,-29.750,-29.747,-29.745,
--29.743,-29.740,-29.738,-29.735,-29.733,-29.731,-29.728,-29.726,-29.724,-29.721,-29.719,-29.717,-29.714,-29.712,-29.710,-29.708,
--29.705,-29.703,-29.701,-29.698,-29.696,-29.694,-29.692,-29.689,-29.687,-29.685,-29.683,-29.680,-29.678,-29.676,-29.674,-29.671,
--29.669,-29.667,-29.665,-29.663,-29.660,-29.658,-29.656,-29.654,-29.652,-29.650,-29.647,-29.645,-29.643,-29.641,-29.639,-29.637,
--29.635,-29.633,-29.631,-29.629,-29.627,-29.625,-29.622,-29.620,-29.618,-29.616,-29.614,-29.612,-29.611,-29.609,-29.607,-29.605,
--29.603,-29.601,-29.599,-29.597,-29.595,-29.593,-29.591,-29.589,-29.588,-29.586,-29.584,-29.582,-29.580,-29.579,-29.577,-29.575,
--29.573,-29.571,-29.570,-29.568,-29.566,-29.565,-29.563,-29.561,-29.560,-29.558,-29.556,-29.555,-29.553,-29.551,-29.550,-29.548,
--29.547,-29.545,-29.544,-29.542,-29.541,-29.539,-29.538,-29.536,-29.535,-29.533,-29.532,-29.531,-29.529,-29.528,-29.526,-29.525,
--29.524,-29.522,-29.521,-29.520,-29.518,-29.517,-29.516,-29.515,-29.513,-29.512,-29.511,-29.510,-29.509,-29.507,-29.506,-29.505,
--29.504,-29.503,-29.502,-29.501,-29.500,-29.499,-29.498,-29.497,-29.496,-29.495,-29.494,-29.493,-29.492,-29.491,-29.490,-29.489,
--29.488,-29.487,-29.486,-29.486,-29.485,-29.484,-29.483,-29.482,-29.481,-29.481,-29.480,-29.479,-29.479,-29.478,-29.477,-29.476,
--29.476,-29.475,-29.475,-29.474,-29.473,-29.473,-29.472,-29.472,-29.471,-29.471,-29.470,-29.470,-29.469,-29.469,-29.468,-29.468,
--29.467,-29.467,-29.466,-29.466,-29.466,-29.465,-29.465,-29.465,-29.464,-29.464,-29.464,-29.463,-29.463,-29.463,-29.463,-29.462,
--29.462,-29.462,-29.462,-29.462,-29.462,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,
--29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.461,-29.462,-29.462,-29.462,-29.462,
--29.462,-29.462,-29.463,-29.463,-29.463,-29.463,-29.464,-29.464,-29.464,-29.464,-29.465,-29.465,-29.465,-29.466,-29.466,-29.466,
--29.467,-29.467,-29.467,-29.468,-29.468,-29.469,-29.469,-29.469,-29.470,-29.470,-29.471,-29.471,-29.472,-29.472,-29.473,-29.473,
--29.474,-29.474,-29.475,-29.475,-29.476,-29.476,-29.477,-29.477,-29.478,-29.478,-29.479,-29.480,-29.480,-29.481,-29.481,-29.482,
--29.483,-29.483,-29.484,-29.485,-29.485,-29.486,-29.487,-29.487,-29.488,-29.489,-29.489,-29.490,-29.491,-29.492,-29.492,-29.493,
--29.494,-29.494,-29.495,-29.496,-29.497,-29.497,-29.498,-29.499,-29.500,-29.501,-29.501,-29.502,-29.503,-29.504,-29.504,-29.505,
--29.506,-29.507,-29.508,-29.509,-29.509,-29.510,-29.511,-29.512,-29.513,-29.514,-29.514,-29.515,-29.516,-29.517,-29.518,-29.519,
--29.520,-29.520,-29.521,-29.522,-29.523,-29.524,-29.525,-29.526,-29.527,-29.527,-29.528,-29.529,-29.530,-29.531,-29.532,-29.533,
--29.534,-29.535,-29.536,-29.536,-29.537,-29.538,-29.539,-29.540,-29.541,-29.542,-29.543,-29.544,-29.545,-29.546,-29.546,-29.547,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,-29.534,
--29.534 };
-
-struct EGM96HF : public osg::HeightField
-{
-    EGM96HF()
-    {
-        _columns = EGM96_COLS;
-        _rows = EGM96_ROWS;
-        _origin.set( 0, -90, 0 );
-        _dx = EGM96_INTERVAL;
-        _dy = EGM96_INTERVAL;
-        _heights = new osg::FloatArray( EGM96_COLS*EGM96_ROWS, &egm96[0] );
-    }
-};
-
-EGM96Geoid::EGM96Geoid()
-{
-    GeoExtent e( SpatialReference::create( "epsg:4326" ), 0.0, -90.0, 360.0, 90.0 );
-    setName( "egm96-meters" );
-    setHeightField( GeoHeightField( new EGM96HF(), e, 0L ) );
-    setUnits( Units::METERS );
-}
-
-// automatically registers the geoid on startup.
-//GeoidRegisterProxy<EGM96Geoid> g_EGM96_register;
-
diff --git a/src/osgEarth/ElevationLOD b/src/osgEarth/ElevationLOD
new file mode 100644
index 0000000..a648936
--- /dev/null
+++ b/src/osgEarth/ElevationLOD
@@ -0,0 +1,59 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_ELEVATIONLOD_H
+#define OSGEARTH_ELEVATIONLOD_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/SpatialReference>
+#include <osg/Group>
+
+namespace osgEarth
+{
+    /**
+     * Decorator node that will only display it's children when the camera is within a given elevation range
+     */
+    class OSGEARTH_EXPORT ElevationLOD : public osg::Group
+    {
+    public:
+        ElevationLOD(const SpatialReference* srs);
+        ElevationLOD(const SpatialReference* srs, double minElevation, double maxElevation);
+
+        virtual ~ElevationLOD();
+
+        double getMinElevation() const;
+        void setMinElevation( double minElevation );
+
+        double getMaxElevation() const;
+        void setMaxElevation(double maxElevation );
+
+        void setElevations( double minElevation, double maxElevation );
+
+        virtual void traverse( osg::NodeVisitor& nv);       
+               
+
+    private:
+        osg::ref_ptr< const SpatialReference > _srs;
+        double _minElevation;
+        double _maxElevation;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_ELEVATIONLOD_H
diff --git a/src/osgEarth/ElevationLOD.cpp b/src/osgEarth/ElevationLOD.cpp
new file mode 100644
index 0000000..b6a4913
--- /dev/null
+++ b/src/osgEarth/ElevationLOD.cpp
@@ -0,0 +1,104 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/ElevationLOD>
+#include <osgEarth/GeoData>
+
+#include <osgUtil/CullVisitor>
+#include <osg/CoordinateSystemNode>
+
+using namespace osgEarth;
+
+
+
+ElevationLOD::ElevationLOD(const SpatialReference* srs):
+_minElevation(-DBL_MAX),
+_maxElevation(DBL_MAX),
+_srs( srs )
+{
+}
+
+ElevationLOD::ElevationLOD(const SpatialReference* srs, double minElevation, double maxElevation):
+_minElevation( minElevation ),
+_maxElevation( maxElevation ),
+_srs( srs )
+{
+}
+
+ElevationLOD::~ElevationLOD()
+{
+}
+
+double ElevationLOD::getMinElevation() const
+{
+    return _minElevation;
+}
+        
+void ElevationLOD::setMinElevation( double minElevation )
+{
+    _minElevation = minElevation;
+}
+
+double ElevationLOD::getMaxElevation() const
+{
+    return _maxElevation;
+}
+
+void ElevationLOD::setMaxElevation(double maxElevation )
+{
+    _maxElevation = maxElevation;
+}
+
+void ElevationLOD::setElevations( double minElevation, double maxElevation )
+{
+    _minElevation = minElevation;
+    _maxElevation = maxElevation;
+}
+
+void ElevationLOD::traverse( osg::NodeVisitor& nv)
+{
+    if (nv.getVisitorType() ==  osg::NodeVisitor::CULL_VISITOR)
+    {
+        osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( &nv );
+        osg::Vec3d eye, center, up;        
+        eye = cv->getViewPoint();
+
+        float height = eye.z();
+        if (_srs)
+        {
+            GeoPoint mapPoint;
+            mapPoint.fromWorld( _srs, eye );        
+            height = mapPoint.z();
+        }
+
+        //OE_NOTICE << "Height " << height << std::endl;
+
+        if (height >= _minElevation && height <= _maxElevation)
+        {
+            osg::Group::traverse( nv );
+        }
+        else
+        {
+            //OE_NOTICE << "Elevation " << height << " outside of range " << _minElevation << " to " << _maxElevation << std::endl;
+        }
+    }
+    else
+    {
+        osg::Group::traverse( nv );
+    }
+}
diff --git a/src/osgEarth/ElevationLayer b/src/osgEarth/ElevationLayer
index 056c4a2..f2cb239 100644
--- a/src/osgEarth/ElevationLayer
+++ b/src/osgEarth/ElevationLayer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,11 +20,6 @@
 #ifndef OSGEARTH_ELEVATION_TERRAIN_LAYER_H
 #define OSGEARTH_ELEVATION_TERRAIN_LAYER_H 1
 
-#include <osgEarth/Common>
-#include <osgEarth/Config>
-#include <osgEarth/Caching>
-#include <osgEarth/Profile>
-#include <osgEarth/TileSource>
 #include <osgEarth/TerrainLayer>
 
 namespace osgEarth
@@ -41,8 +36,12 @@ namespace osgEarth
         /** Constructs new elevation layer options, given the underlying driver options. */
         ElevationLayerOptions( const std::string& name, const TileSourceOptions& driverOptions );
 
+        /** dtor */
+        virtual ~ElevationLayerOptions() { }
+
     public:
-        virtual Config getConfig() const;
+        virtual Config getConfig() const { return getConfig(false); }
+        virtual Config getConfig( bool isolate ) const;
         virtual void mergeConfig( const Config& conf );
         
     private:
@@ -91,9 +90,12 @@ namespace osgEarth
          */
         ElevationLayer( const ElevationLayerOptions& options, TileSource* tileSource );
 
+        /** dtor */
+        virtual ~ElevationLayer() { }
+
         /** Gets the initialization options with which the layer was created. */
         const ElevationLayerOptions& getElevationLayerOptions() const { return _runtimeOptions; }
-        virtual const TerrainLayerOptions& getTerrainLayerOptions() const { return _runtimeOptions; }
+        virtual const TerrainLayerOptions& getTerrainLayerRuntimeOptions() const { return _runtimeOptions; }
 
         /** Adds a property notification callback to this layer */
         void addCallback( ElevationLayerCallback* cb );
@@ -108,13 +110,22 @@ namespace osgEarth
          * in the specified TileKey. The returned HeightField will always match the geospatial
          * extents of that TileKey.
          */
-        osg::HeightField* createHeightField(
+        virtual GeoHeightField createHeightField(
             const TileKey&    key,
             ProgressCallback* progress =0L );
 
     protected:
         
-		virtual GeoHeightField createGeoHeightField( const TileKey& key, ProgressCallback* progress);
+        // creates a geoHF directly from the tile source
+        osg::HeightField* createHeightFieldFromTileSource( 
+            const TileKey&    key, 
+            ProgressCallback* progress);
+
+        // assembles tiles from a layer that is not in the same profile as the map, and
+        // returns a single tile in the map's profile.
+        osg::HeightField* assembleHeightFieldFromTileSource(
+            const TileKey&     key,
+            ProgressCallback*  progress );
         
         virtual std::string suggestCacheFormat() const;
 
diff --git a/src/osgEarth/ElevationLayer.cpp b/src/osgEarth/ElevationLayer.cpp
index a4fdcee..a9dc133 100644
--- a/src/osgEarth/ElevationLayer.cpp
+++ b/src/osgEarth/ElevationLayer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,14 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/ElevationLayer>
-#include <osgEarth/Registry>
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/HeightFieldUtils>
 #include <osg/Version>
 
 using namespace osgEarth;
 using namespace OpenThreads;
 
-#define LC "[ElevationLayer] "
+#define LC "[ElevationLayer] \"" << getName() << "\" : "
 
 //------------------------------------------------------------------------
 
@@ -48,11 +49,9 @@ ElevationLayerOptions::setDefaults()
 }
 
 Config
-ElevationLayerOptions::getConfig() const
+ElevationLayerOptions::getConfig( bool isolate ) const
 {
-    Config conf = TerrainLayerOptions::getConfig();
-    //NOP
-    return conf;
+    return TerrainLayerOptions::getConfig( isolate );
 }
 
 void
@@ -78,18 +77,18 @@ namespace
 
         ElevationLayerPreCacheOperation( TileSource* source )
         {
-		    ops = new CompositeValidValueOperator;
-		    ops->getOperators().push_back(new osgTerrain::NoDataValue(source->getNoDataValue()));
-		    ops->getOperators().push_back(new osgTerrain::ValidRange(source->getNoDataMinValue(), source->getNoDataMaxValue()));
+            ops = new CompositeValidValueOperator;
+            ops->getOperators().push_back(new osgTerrain::NoDataValue(source->getNoDataValue()));
+            ops->getOperators().push_back(new osgTerrain::ValidRange(source->getNoDataMinValue(), source->getNoDataMaxValue()));
         }
 
         void operator()( osg::ref_ptr<osg::HeightField>& hf )
         {
-		    //Modify the heightfield data so that is contains a standard value for NO_DATA
-		    ReplaceInvalidDataOperator op;
-		    op.setReplaceWith(NO_DATA_VALUE);
-		    op.setValidDataOperator(ops.get());
-		    op( hf.get() );
+            //Modify the heightfield data so that is contains a standard value for NO_DATA
+            ReplaceInvalidDataOperator op;
+            op.setReplaceWith(NO_DATA_VALUE);
+            op.setValidDataOperator(ops.get());
+            op( hf.get() );
         }
     };
 }
@@ -97,21 +96,21 @@ namespace
 //------------------------------------------------------------------------
 
 ElevationLayer::ElevationLayer( const ElevationLayerOptions& options ) :
-TerrainLayer   ( &_runtimeOptions ),
+TerrainLayer   ( options, &_runtimeOptions ),
 _runtimeOptions( options )
 {
     init();
 }
 
 ElevationLayer::ElevationLayer( const std::string& name, const TileSourceOptions& driverOptions ) :
-TerrainLayer   ( &_runtimeOptions ),
+TerrainLayer   ( ElevationLayerOptions(name, driverOptions), &_runtimeOptions ),
 _runtimeOptions( ElevationLayerOptions(name, driverOptions) )
 {
     init();
 }
 
 ElevationLayer::ElevationLayer( const ElevationLayerOptions& options, TileSource* tileSource ) :
-TerrainLayer   ( &_runtimeOptions, tileSource ),
+TerrainLayer   ( options, &_runtimeOptions, tileSource ),
 _runtimeOptions( options )
 {
     init();
@@ -179,200 +178,264 @@ ElevationLayer::initTileSource()
         _preCacheOp = new ElevationLayerPreCacheOperation( _tileSource.get() );
 }
 
-GeoHeightField
-ElevationLayer::createGeoHeightField(const TileKey& key, ProgressCallback* progress)
+
+osg::HeightField*
+ElevationLayer::createHeightFieldFromTileSource(const TileKey&    key,
+                                                ProgressCallback* progress)
 {
-    osg::HeightField* hf = 0L;
-    //osg::ref_ptr<osg::HeightField> hf;
+    osg::HeightField* result = 0L;
 
     TileSource* source = getTileSource();
+    if ( !source )
+        return 0L;
+
+    // If the key is blacklisted, fail.
+    if ( source->getBlacklist()->contains( key.getTileId() ) )
+    {
+        OE_DEBUG << LC << "Tile " << key.str() << " is blacklisted " << std::endl;
+        return 0L;
+    }
 
-    //Only try to get the tile if it isn't blacklisted
-    if (!source->getBlacklist()->contains( key.getTileId() ))
+    // If the profiles are horizontally equivalent (different vdatums is OK), take the
+    // quick route:
+    if ( key.getProfile()->isHorizEquivalentTo( getProfile() ) )
     {
-        //Only try to get data if the source actually has data
-        if (source->hasData( key ) )
+        // Only try to get data if the source actually has data
+        if ( !source->hasData(key) )
         {
-            hf = source->createHeightField( key, _preCacheOp.get(), progress );
+            OE_DEBUG << LC << "Source for layer has no data at " << key.str() << std::endl;
+            return 0L;
+        }
+
+        // Make it from the source:
+        result = source->createHeightField( key, _preCacheOp.get(), progress );
 
-            //Blacklist the tile if we can't get it and it wasn't cancelled
-            if ( !hf && (!progress || !progress->isCanceled()))
+        // If the result is good, we how have a heightfield but it's vertical values
+        // are still relative to the tile source's vertical datum. Convert them.
+        if ( result )
+        {
+            if ( ! key.getExtent().getSRS()->isVertEquivalentTo( getProfile()->getSRS() ) )
             {
-                source->getBlacklist()->add(key.getTileId());
+                VerticalDatum::transform(
+                    getProfile()->getSRS()->getVerticalDatum(),    // from
+                    key.getExtent().getSRS()->getVerticalDatum(),  // to
+                    key.getExtent(),
+                    result );
             }
         }
-        else
+        
+        // Blacklist the tile if it is the same projection as the source and we can't get it and it wasn't cancelled
+        if ( !result && (!progress || !progress->isCanceled()))
         {
-            OE_DEBUG << LC << "Source for layer \"" << getName() << "\" has no data at " << key.str() << std::endl;
+            source->getBlacklist()->add( key.getTileId() );
         }
     }
+
+    // Otherwise, profiles don't match so we need to composite:
     else
     {
-        OE_DEBUG << LC << "Tile " << key.str() << " is blacklisted " << std::endl;
+        // note: this method takes care of the vertical datum shift internally.
+        result = assembleHeightFieldFromTileSource( key, progress );
     }
 
-    return hf ?
-        GeoHeightField( hf, key.getExtent(), getProfile()->getVerticalSRS() ) :
-        GeoHeightField::INVALID;
+#if 0
+    // If the profiles don't match, use a more complicated technique to assemble the tile:
+    if ( !key.getProfile()->isEquivalentTo( getProfile() ) )
+    {
+        result = assembleHeightFieldFromTileSource( key, progress );
+    }
+    else
+    {
+        // Only try to get data if the source actually has data
+        if ( !source->hasData( key ) )
+        {
+            OE_DEBUG << LC << "Source for layer has no data at " << key.str() << std::endl;
+            return 0L;
+        }
+
+        // Make it from the source:
+        result = source->createHeightField( key, _preCacheOp.get(), progress );
+    }
+#endif
+
+
+
+    return result;
 }
 
+
 osg::HeightField*
-ElevationLayer::createHeightField(const osgEarth::TileKey& key, ProgressCallback* progress )
-{
+ElevationLayer::assembleHeightFieldFromTileSource(const TileKey&    key,
+                                                  ProgressCallback* progress)
+{			
     osg::HeightField* result = 0L;
-    //osg::ref_ptr<osg::HeightField> result;
 
-    const Profile* layerProfile = getProfile();
-    const Profile* mapProfile = key.getProfile();
+    // Collect the heightfields for each of the intersecting tiles.
+    GeoHeightFieldVector heightFields;
 
-	if ( !layerProfile )
-	{
-		OE_WARN << LC << "Could not get a valid profile for Layer \"" << getName() << "\"" << std::endl;
-        return 0L;
-	}
-
-	if ( !isCacheOnly() && !getTileSource() )
-	{
-		OE_WARN << LC << "Error: ElevationLayer does not have a valid TileSource, cannot create heightfield " << std::endl;
-		return 0L;
-	}
+    //Determine the intersecting keys
+    std::vector< TileKey > intersectingTiles;
+    getProfile()->getIntersectingTiles( key, intersectingTiles );
 
-    //Write the layer properties if they haven't been written yet.  Heightfields are always stored in the map profile.
-    if (!_cacheProfile.valid() && _cache.valid() && _runtimeOptions.cacheEnabled() == true && _tileSource.valid())
+    // collect heightfield for each intersecting key. Note, we're hitting the
+    // underlying tile source here, so there's no vetical datum shifts happening yet.
+    // we will do that later.
+    if ( intersectingTiles.size() > 0 )
     {
-        _cacheProfile = mapProfile;
-        if ( _tileSource->isOK() )
+        for (unsigned int i = 0; i < intersectingTiles.size(); ++i)
         {
-            _cache->storeProperties( _cacheSpec, _cacheProfile.get(),  _tileSource->getPixelsPerTile() );
+            const TileKey& layerKey = intersectingTiles[i];
+
+            if ( isKeyValid(layerKey) )
+            {
+                osg::HeightField* hf = createHeightFieldFromTileSource( layerKey, progress );
+                if ( hf )
+                {
+                    heightFields.push_back( GeoHeightField(hf, layerKey.getExtent()) );
+                }
+            }
         }
     }
 
-	//See if we can get it from the cache.
-	if (_cache.valid() && _runtimeOptions.cacheEnabled() == true )
-	{
-        osg::ref_ptr<const osg::HeightField> cachedHF;
-		if ( _cache->getHeightField( key, _cacheSpec, cachedHF ) )
-		{
-			OE_DEBUG << LC << "ElevationLayer::createHeightField got tile " << key.str() << " from layer \"" << getName() << "\" from cache " << std::endl;
-
-            // make a copy:
-            result = new osg::HeightField( *cachedHF.get() );
-		}
-	}
-
-    //in cache-only mode, if the cache fetch failed, bail out.
-    if ( result == 0L && isCacheOnly() )
+    // If we actually got a HeightField, resample/reproject it to match the incoming TileKey's extents.
+    if (heightFields.size() > 0)
+    {		
+        unsigned int width = 0;
+        unsigned int height = 0;
+
+        for (GeoHeightFieldVector::iterator itr = heightFields.begin(); itr != heightFields.end(); ++itr)
+        {
+            if (itr->getHeightField()->getNumColumns() > width)
+                width = itr->getHeightField()->getNumColumns();
+            if (itr->getHeightField()->getNumRows() > height) 
+                height = itr->getHeightField()->getNumRows();
+        }
+
+        result = new osg::HeightField();
+        result->allocate(width, height);
+
+        //Go ahead and set up the heightfield so we don't have to worry about it later
+        double minx, miny, maxx, maxy;
+        key.getExtent().getBounds(minx, miny, maxx, maxy);
+        double dx = (maxx - minx)/(double)(width-1);
+        double dy = (maxy - miny)/(double)(height-1);
+
+        //Create the new heightfield by sampling all of them.
+        for (unsigned int c = 0; c < width; ++c)
+        {
+            double x = minx + (dx * (double)c);
+            for (unsigned r = 0; r < height; ++r)
+            {
+                double y = miny + (dy * (double)r);
+
+                //For each sample point, try each heightfield.  The first one with a valid elevation wins.
+                float elevation = NO_DATA_VALUE;
+                for (GeoHeightFieldVector::iterator itr = heightFields.begin(); itr != heightFields.end(); ++itr)
+                {
+                    // get the elevation value, at the same time transforming it vertically into the 
+                    // requesting key's vertical datum.
+                    float e = 0.0;
+                    if (itr->getElevation(key.getExtent().getSRS(), x, y, INTERP_BILINEAR, key.getExtent().getSRS(), e))
+                    {
+                        elevation = e;
+                        break;
+                    }
+                }
+                result->setHeight( c, r, elevation );                
+            }
+        }
+    }
+
+    return result;
+}
+
+
+GeoHeightField
+ElevationLayer::createHeightField(const TileKey&    key, 
+                                  ProgressCallback* progress )
+{
+    osg::HeightField* result = 0L;
+
+    // If the layer is disabled, bail out.
+    if ( _runtimeOptions.enabled().isSetTo( false ) )
     {
-        return 0L;
+        return GeoHeightField::INVALID;
     }
 
-	if ( result == 0L && getTileSource() && getTileSource()->isOK() )
+    CacheBin* cacheBin = getCacheBin( key.getProfile() );
+
+    // validate that we have either a valid tile source, or we're cache-only.
+    if ( ! (getTileSource() || (isCacheOnly() && cacheBin) ) )
     {
-		//If the profiles are equivalent, get the HF from the TileSource.
-		if (key.getProfile()->isEquivalentTo( getProfile() ))
-		{
-			if (isKeyValid( key ) )
-			{
-				GeoHeightField hf = createGeoHeightField( key, progress );
-				if (hf.valid())
-				{
-					result = hf.takeHeightField();
-				}
-			}
-		}
-
-		else
-		{
-			//Collect the heightfields for each of the intersecting tiles.
-			//typedef std::vector< GeoHeightField > HeightFields;
-			GeoHeightFieldVector heightFields;
-
-			//Determine the intersecting keys
-			std::vector< TileKey > intersectingTiles;
-			getProfile()->getIntersectingTiles(key, intersectingTiles);
-			if (intersectingTiles.size() > 0)
-			{
-				for (unsigned int i = 0; i < intersectingTiles.size(); ++i)
-				{
-					if (isKeyValid( intersectingTiles[i] ) )
-					{
-                        GeoHeightField hf = createGeoHeightField( intersectingTiles[i], progress );
-						if (hf.valid())
-						{
-							heightFields.push_back(hf);
-						}
-					}
-				}
-			}
-
-			//If we actually got a HeightField, resample/reproject it to match the incoming TileKey's extents.
-			if (heightFields.size() > 0)
-			{		
-				unsigned int width = 0;
-				unsigned int height = 0;
+        OE_WARN << LC << "Error: layer does not have a valid TileSource, cannot create heightfield" << std::endl;
+        _runtimeOptions.enabled() = false;
+        return GeoHeightField::INVALID;
+    }
 
-                for (GeoHeightFieldVector::iterator itr = heightFields.begin(); itr != heightFields.end(); ++itr)
-				{
-					if (itr->getHeightField()->getNumColumns() > width)
-                        width = itr->getHeightField()->getNumColumns();
-					if (itr->getHeightField()->getNumRows() > height) 
-                        height = itr->getHeightField()->getNumRows();
-				}
-
-                result = new osg::HeightField();
-				result->allocate(width, height);
-
-				//Go ahead and set up the heightfield so we don't have to worry about it later
-				double minx, miny, maxx, maxy;
-				key.getExtent().getBounds(minx, miny, maxx, maxy);
-				double dx = (maxx - minx)/(double)(width-1);
-				double dy = (maxy - miny)/(double)(height-1);
-
-				//Create the new heightfield by sampling all of them.
-				for (unsigned int c = 0; c < width; ++c)
-				{
-					double geoX = minx + (dx * (double)c);
-					for (unsigned r = 0; r < height; ++r)
-					{
-						double geoY = miny + (dy * (double)r);
-
-						//For each sample point, try each heightfield.  The first one with a valid elevation wins.
-						float elevation = NO_DATA_VALUE;
-						for (GeoHeightFieldVector::iterator itr = heightFields.begin(); itr != heightFields.end(); ++itr)
-						{
-							float e = 0.0;
-                            if (itr->getElevation(key.getExtent().getSRS(), geoX, geoY, INTERP_BILINEAR, _profile->getVerticalSRS(), e))
-							{
-								elevation = e;
-								break;
-							}
-						}
-						result->setHeight( c, r, elevation );                
-					}
-				}
-			}
-		}
-    
-        //Write the result to the cache.
-        if (result && _cache.valid() && _runtimeOptions.cacheEnabled() == true )
+    // validate the existance of a valid layer profile.
+    if ( !isCacheOnly() && !getProfile() )
+    {
+        OE_WARN << LC << "Could not establish a valid profile" << std::endl;
+        _runtimeOptions.enabled() = false;
+        return GeoHeightField::INVALID;
+    }
+
+    // First, attempt to read from the cache. Since the cached data is stored in the
+    // map profile, we can try this first.
+    bool fromCache = false;
+    if ( cacheBin && getCachePolicy().isCacheReadable() )
+    {
+        ReadResult r = cacheBin->readObject( key.str() );
+        if ( r.succeeded() )
         {
-            _cache->setHeightField( key, _cacheSpec, result );
+            result = r.release<osg::HeightField>();
+            if ( result )
+                fromCache = true;
         }
     }
 
-	//Initialize the HF values for osgTerrain
-	if ( result )
-	{	
-		//Go ahead and set up the heightfield so we don't have to worry about it later
-		double minx, miny, maxx, maxy;
-		key.getExtent().getBounds(minx, miny, maxx, maxy);
-		result->setOrigin( osg::Vec3d( minx, miny, 0.0 ) );
-		double dx = (maxx - minx)/(double)(result->getNumColumns()-1);
-		double dy = (maxy - miny)/(double)(result->getNumRows()-1);
-		result->setXInterval( dx );
-		result->setYInterval( dy );
-		result->setBorderWidth( 0 );
-	}
-	
-    return result;
+    // if we're cache-only, but didn't get data from the cache, fail silently.
+    if ( !result && isCacheOnly() )
+    {
+        return GeoHeightField::INVALID;
+    }
+
+    if ( !result )
+    {
+        // bad tilesource? fail
+        if ( !getTileSource() || !getTileSource()->isOK() )
+            return GeoHeightField::INVALID;
+
+        if ( !isKeyValid(key) )
+            return GeoHeightField::INVALID;
+
+        // build a HF from the TileSource.
+        result = createHeightFieldFromTileSource( key, progress );
+    }
+
+    // cache if necessary
+    if ( result        && 
+         cacheBin      && 
+         !fromCache    &&
+         getCachePolicy().isCacheWriteable() )
+    {
+        cacheBin->write( key.str(), result );
+    }
+
+    if ( result )
+    {
+        // Set up the heightfield so we don't have to worry about it later
+        double minx, miny, maxx, maxy;
+        key.getExtent().getBounds(minx, miny, maxx, maxy);
+        result->setOrigin( osg::Vec3d( minx, miny, 0.0 ) );
+        double dx = (maxx - minx)/(double)(result->getNumColumns()-1);
+        double dy = (maxy - miny)/(double)(result->getNumRows()-1);
+        result->setXInterval( dx );
+        result->setYInterval( dy );
+        result->setBorderWidth( 0 );
+    }
+
+    return result ?
+        GeoHeightField( result, key.getExtent() ) :
+        GeoHeightField::INVALID;
 }
diff --git a/src/osgEarth/ElevationQuery b/src/osgEarth/ElevationQuery
index c924ada..06bc752 100644
--- a/src/osgEarth/ElevationQuery
+++ b/src/osgEarth/ElevationQuery
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,8 +20,7 @@
 #define OSGEARTH_ELEVATION_QUERY_H 1
 
 #include <osgEarth/Map>
-#include <osgEarth/MapNode>
-#include <osgEarth/Utils>
+#include <osgEarth/Containers>
 
 namespace osgEarth
 {
@@ -50,18 +49,6 @@ namespace osgEarth
     class OSGEARTH_EXPORT ElevationQuery
     {
     public:
-        /** Technique for elevation data sampling - see setTechnique */
-        enum Technique
-        {
-            /** Intersect with triangulated geometry - using the highest resolution
-                data available from the Map source layers */
-            TECHNIQUE_GEOMETRIC,
-
-            /** Sample height from the parametric heightfield directly (bilinear) */
-            TECHNIQUE_PARAMETRIC
-        };
-
-    public:
         /**
          * Constructs a new elevation manager. If you are not using a MapNode,
          * use this constructor to perform elevation queries against a Map. If
@@ -75,14 +62,14 @@ namespace osgEarth
         ElevationQuery( const Map* map );
         ElevationQuery( const MapFrame& mapFrame );
 
+        /** dtor */
+        virtual ~ElevationQuery() { }
+
         /**
          * Gets the terrain elevation at a point, given a terrain resolution.
          *
          * @param point
-         *      Map coordinates for which to query elevation.
-         * @param pointSRS
-         *      Spatial reference of "point" and "desiredResolution" If this is NULL, assume that 
-         *      the input values are expressed in terms of the Map's SRS.
+         *      Coordinates for which to query elevation.
          * @param out_elevation
          *      Stores the elevation result in this variable upon success.
          * @param desiredResolution
@@ -94,11 +81,10 @@ namespace osgEarth
          * @return True if the query succeeded, false upon failure.
          */
         bool getElevation(
-            const osg::Vec3d&       point,
-            const SpatialReference* pointSRS,
-            double&                 out_elevation,
-            double                  desiredResolution    =0.0,
-            double*                 out_actualResolution =0L );
+            const GeoPoint& point,
+            double&         out_elevation,
+            double          desiredResolution    =0.0,
+            double*         out_actualResolution =0L );
 
         /** 
          * Gets elevations for a whole array of points, storing the result in the
@@ -122,18 +108,6 @@ namespace osgEarth
             double                         desiredResolution = 0.0 );
 
         /**
-         * Sets the technique to use for height determination. See the Technique
-         * enum in this class. The default is TECHNIQUE_PARAMETRIC.
-         */
-        void setTechnique( Technique technique );
-
-        /**
-         * Gets the technique to use for height determination. See the Technique
-         * enum in this class.
-         */
-        Technique getTechnique() const;
-
-        /**
          * Sets the maximum cache size for elevation tiles.
          */
         void setMaxTilesToCache( int value );
@@ -142,17 +116,7 @@ namespace osgEarth
          * Gets the maximum cache size for elevation tiles.
          */
         int getMaxTilesToCache() const;
-
-        /**
-         * Sets the elevation interpolation to use when sampling data
-         */
-        void setInterpolation( ElevationInterpolation interp );
-
-        /**
-         * Gets the elevation interpolation to use when sampling data
-         */
-        ElevationInterpolation getElevationInterpolation() const;
-
+        
         /**
         * Sets the maximum level override for elevation queries.
         * A value of -1 turns off the override.
@@ -164,29 +128,35 @@ namespace osgEarth
         */
         int getMaxLevelOverride() const;
 
+        /**
+         * Gets the average time per query
+         */
+        double getAverageQueryTime() const { return _queries > 0.0 ? _totalTime/_queries : 0.0; }
+
+        unsigned int getMaxLevel(double x, double y, const SpatialReference* srs, const Profile* profile ) const;
+
     private:
-        MapFrame _mapf;
-        unsigned _maxCacheSize;
-        int _tileSize;
-        unsigned int _maxDataLevel;
-        int _maxLevelOverride;
-        Technique _technique;
-        ElevationInterpolation _interpolation;
-
-        typedef LRUCache< TileKey, osg::ref_ptr<osgTerrain::TerrainTile> > TileCache;
+        MapFrame  _mapf;
+        unsigned  _maxCacheSize;
+        int       _tileSize;
+        unsigned  _maxDataLevel;
+        int       _maxLevelOverride;
+
+        typedef LRUCache< TileKey, osg::ref_ptr<osg::HeightField> > TileCache;
         TileCache _tileCache;
 
+        double _queries;
+        double _totalTime;
 
     private:
         void postCTOR();
         void sync();
 
         bool getElevationImpl(
-            const osg::Vec3d&       point,
-            const SpatialReference* pointSRS,
-            double&                 out_elevation,
-            double                  desiredResolution,
-            double*                 out_actualResolution =0L );
+            const GeoPoint& point,
+            double&         out_elevation,
+            double          desiredResolution,
+            double*         out_actualResolution =0L );
     };
 
 } // namespace osgEarth
diff --git a/src/osgEarth/ElevationQuery.cpp b/src/osgEarth/ElevationQuery.cpp
index 06c0764..be1f7fa 100644
--- a/src/osgEarth/ElevationQuery.cpp
+++ b/src/osgEarth/ElevationQuery.cpp
@@ -1,7 +1,6 @@
 #include <osgEarth/ElevationQuery>
 #include <osgEarth/Locators>
-#include <osgTerrain/TerrainTile>
-#include <osgTerrain/GeometryTechnique>
+#include <osgEarth/HeightFieldUtils>
 #include <osgUtil/IntersectionVisitor>
 #include <osgUtil/LineSegmentIntersector>
 
@@ -11,7 +10,7 @@ using namespace osgEarth;
 using namespace OpenThreads;
 
 ElevationQuery::ElevationQuery( const Map* map ) :
-_mapf( map, Map::ELEVATION_LAYERS )
+_mapf( map, Map::TERRAIN_LAYERS )
 {
     postCTOR();
 }
@@ -27,9 +26,10 @@ ElevationQuery::postCTOR()
 {
     _tileSize         = 0;
     _maxDataLevel     = 0;
-    _technique        = TECHNIQUE_PARAMETRIC;
-    _interpolation    = INTERP_BILINEAR;
+    //_technique        = TECHNIQUE_PARAMETRIC;
     _maxLevelOverride = -1;
+    _queries          = 0.0;
+    _totalTime        = 0.0;
 
     // Limit the size of the cache we'll use to cache heightfields. This is an
     // LRU cache.
@@ -59,16 +59,87 @@ ElevationQuery::sync()
     }
 }
 
-ElevationQuery::Technique
-ElevationQuery::getTechnique() const
+unsigned int
+ElevationQuery::getMaxLevel( double x, double y, const SpatialReference* srs, const Profile* profile ) const
 {
-    return _technique;
-}
+    unsigned int maxLevel = 0;
+    for( ElevationLayerVector::const_iterator i = _mapf.elevationLayers().begin(); i != _mapf.elevationLayers().end(); ++i )
+    {
+        unsigned int layerMax = 0;
+        osgEarth::TileSource* ts = i->get()->getTileSource();
+        if ( ts && ts->getDataExtents().size() > 0 )
+        {
+            osg::Vec3d tsCoord(x, y, 0);
+
+            const SpatialReference* tsSRS = ts->getProfile() ? ts->getProfile()->getSRS() : 0L;
+            if ( srs && tsSRS )
+                srs->transform(tsCoord, tsSRS, tsCoord);
+            else
+                tsSRS = srs;
+            
+            for (osgEarth::DataExtentList::iterator j = ts->getDataExtents().begin(); j != ts->getDataExtents().end(); j++)
+            {
+                if (j->maxLevel().isSet() && j->maxLevel() > layerMax && j->contains( tsCoord.x(), tsCoord.y(), tsSRS ))
+                {
+                    layerMax = j->maxLevel().value();
+                }
+            }
+
+            //Need to convert the layer max of this TileSource to that of the actual profile
+            layerMax = profile->getEquivalentLOD( ts->getProfile(), layerMax );
+        }
+        else
+        {
+            layerMax = i->get()->getMaxDataLevel();
+        }        
 
-void
-ElevationQuery::setTechnique( ElevationQuery::Technique technique )
-{
-    _technique = technique;
+        if ( i->get()->getTerrainLayerRuntimeOptions().maxLevel().isSet() )
+            layerMax = std::min( layerMax, *i->get()->getTerrainLayerRuntimeOptions().maxLevel() );
+
+        if (layerMax > maxLevel) maxLevel = layerMax;
+    }    
+
+    // need to check the image layers too, because if image layers do deeper than elevation layers,
+    // upsampling occurs that can change the formation of the terrain skin.
+    // NOTE: this probably doesn't happen in "triangulation" interpolation mode.. -gw
+    for( ImageLayerVector::const_iterator i = _mapf.imageLayers().begin(); i != _mapf.imageLayers().end(); ++i )
+    {
+        unsigned int layerMax = 0;
+        osgEarth::TileSource* ts = i->get()->getTileSource();
+        if ( ts && ts->getDataExtents().size() > 0 )
+        {
+            osg::Vec3d tsCoord(x, y, 0);
+            const SpatialReference* tsSRS = ts->getProfile() ? ts->getProfile()->getSRS() : 0L;
+            if ( srs && tsSRS )
+                srs->transform(tsCoord, tsSRS, tsCoord);
+            else
+                tsSRS = srs;
+            
+            for (osgEarth::DataExtentList::iterator j = ts->getDataExtents().begin(); j != ts->getDataExtents().end(); j++)
+            {
+                if (j->maxLevel().isSet()  && j->maxLevel() > layerMax && j->contains( tsCoord.x(), tsCoord.y(), tsSRS ))
+                {
+                    layerMax = j->maxLevel().value();
+                }
+            }
+
+            //Need to convert the layer max of this TileSource to that of the actual profile
+            layerMax = profile->getEquivalentLOD( ts->getProfile(), layerMax );
+        }
+        else
+        {
+            layerMax = i->get()->getMaxDataLevel();
+        }
+        
+        
+        if ( i->get()->getTerrainLayerRuntimeOptions().maxLevel().isSet() )
+            layerMax = std::min( layerMax, *i->get()->getTerrainLayerRuntimeOptions().maxLevel() );
+
+        if (layerMax > maxLevel)
+            maxLevel = layerMax;
+    }    
+
+    return maxLevel;
 }
 
 void
@@ -82,28 +153,27 @@ ElevationQuery::getMaxTilesToCache() const
 {
     return _tileCache.getMaxSize();
 }
-
+        
 void
-ElevationQuery::setInterpolation( ElevationInterpolation interp)
+ElevationQuery::setMaxLevelOverride(int maxLevelOverride)
 {
-    _interpolation = interp;
+    _maxLevelOverride = maxLevelOverride;
 }
 
-ElevationInterpolation
-ElevationQuery::getElevationInterpolation() const
+int
+ElevationQuery::getMaxLevelOverride() const
 {
-    return _interpolation;
+    return _maxLevelOverride;
 }
 
 bool
-ElevationQuery::getElevation(const osg::Vec3d&       point,
-                             const SpatialReference* pointSRS,
+ElevationQuery::getElevation(const GeoPoint&         point,
                              double&                 out_elevation,
                              double                  desiredResolution,
                              double*                 out_actualResolution)
 {
     sync();
-    return getElevationImpl( point, pointSRS, out_elevation, desiredResolution, out_actualResolution );
+    return getElevationImpl( point, out_elevation, desiredResolution, out_actualResolution );
 }
 
 bool
@@ -117,7 +187,8 @@ ElevationQuery::getElevations(std::vector<osg::Vec3d>& points,
     {
         double elevation;
         double z = (*i).z();
-        if ( getElevationImpl( *i, pointsSRS, elevation, desiredResolution ) )
+        GeoPoint p(pointsSRS, *i, ALTMODE_ABSOLUTE);
+        if ( getElevationImpl( p, elevation, desiredResolution ) )
         {
             (*i).z() = ignoreZ ? elevation : elevation + z;
         }
@@ -135,53 +206,60 @@ ElevationQuery::getElevations(const std::vector<osg::Vec3d>& points,
     for( osg::Vec3dArray::const_iterator i = points.begin(); i != points.end(); ++i )
     {
         double elevation;
-        if ( getElevationImpl( *i, pointsSRS, elevation, desiredResolution ) )
+        GeoPoint p(pointsSRS, *i, ALTMODE_ABSOLUTE);
+
+        if ( getElevationImpl(p, elevation, desiredResolution) )
         {
             out_elevations.push_back( elevation );
         }
+        else
+        {
+            out_elevations.push_back( 0.0 );
+        }
     }
     return true;
 }
 
 bool
-ElevationQuery::getElevationImpl(const osg::Vec3d&       point,
-                                 const SpatialReference* pointSRS,
-                                 double&                 out_elevation,
-                                 double                  desiredResolution,
-                                 double*                 out_actualResolution)
+ElevationQuery::getElevationImpl(const GeoPoint& point,
+                                 double&         out_elevation,
+                                 double          desiredResolution,
+                                 double*         out_actualResolution)
 {
+    osg::Timer_t start = osg::Timer::instance()->tick();
+
     if ( _maxDataLevel == 0 || _tileSize == 0 )
     {
         // this means there are no heightfields.
         out_elevation = 0.0;
         return true;
     }
-   
-    // this is the ideal LOD for the requested resolution:
-    unsigned int idealLevel = desiredResolution > 0.0
-        ? _mapf.getProfile()->getLevelOfDetailForHorizResolution( desiredResolution, _tileSize )
-        : _maxDataLevel;        
-
-    // based on the heightfields available, this is the best we can theorically do:
-    unsigned int bestAvailLevel = osg::minimum( idealLevel, _maxDataLevel );
-    if (_maxLevelOverride >= 0)
+
+    
+    //This is the max resolution that we actually have data at this point
+    unsigned int bestAvailLevel = getMaxLevel( point.x(), point.y(), point.getSRS(), _mapf.getProfile());
+
+    if (desiredResolution > 0.0)
     {
-        bestAvailLevel = osg::minimum(bestAvailLevel, (unsigned int)_maxLevelOverride);
+        unsigned int desiredLevel = _mapf.getProfile()->getLevelOfDetailForHorizResolution( desiredResolution, _tileSize );
+        if (desiredLevel < bestAvailLevel) bestAvailLevel = desiredLevel;
     }
-    
+
+    OE_DEBUG << "Best available data level " << point.x() << ", " << point.y() << " = "  << bestAvailLevel << std::endl;
+
     // transform the input coords to map coords:
-    osg::Vec3d mapPoint = point;
-    if ( pointSRS && !pointSRS->isEquivalentTo( _mapf.getProfile()->getSRS() ) )
+    GeoPoint mapPoint = point;
+    if ( point.isValid() && !point.getSRS()->isEquivalentTo( _mapf.getProfile()->getSRS() ) )
     {
-        if ( !pointSRS->transform2D( point.x(), point.y(), _mapf.getProfile()->getSRS(), mapPoint.x(), mapPoint.y() ) )
+        mapPoint = point.transform(_mapf.getProfile()->getSRS());
+        if ( !mapPoint.isValid() )
         {
             OE_WARN << LC << "Fail: coord transform failed" << std::endl;
             return false;
         }
     }
 
-    osg::ref_ptr<osg::HeightField> hf;
-    osg::ref_ptr<osgTerrain::TerrainTile> tile;
+    osg::ref_ptr<osg::HeightField> tile;
 
     // get the tilekey corresponding to the tile we need:
     TileKey key = _mapf.getProfile()->createTileKey( mapPoint.x(), mapPoint.y(), bestAvailLevel );
@@ -196,107 +274,50 @@ ElevationQuery::getElevationImpl(const osg::Vec3d&       point,
     // cache will store not only the heightfield, but also the tesselated tile in the event
     // that we're using GEOMETRIC mode. Second, since the call the getHeightField can 
     // fallback on a lower resolution, this cache will hold the final resolution heightfield
-    // instead of trying to fetch the higher resolution one each tiem.
+    // instead of trying to fetch the higher resolution one each item.
 
     TileCache::Record record = _tileCache.get( key );
     if ( record.valid() )
         tile = record.value().get();
-         
-    // if we found it, make sure it has a heightfield in it:
-    if ( tile.valid() )
-    {
-        osgTerrain::HeightFieldLayer* layer = dynamic_cast<osgTerrain::HeightFieldLayer*>(tile->getElevationLayer());
-        if ( layer )
-            hf = layer->getHeightField();
 
-        if ( !hf.valid() )
-            tile = 0L;
-    }
-
-    // if we didn't find it (or it didn't have heightfield data), build it.
+    // if we didn't find it, build it.
     if ( !tile.valid() )
     {
         // generate the heightfield corresponding to the tile key, automatically falling back
         // on lower resolution if necessary:
-        _mapf.getHeightField( key, true, hf, 0L, _interpolation );
+        _mapf.getHeightField( key, true, tile, 0L );
 
         // bail out if we could not make a heightfield a all.
-        if ( !hf.valid() )
+        if ( !tile.valid() )
         {
             OE_WARN << LC << "Unable to create heightfield for key " << key.str() << std::endl;
             return false;
         }
 
-        // All this stuff is requires for GEOMETRIC mode. An optimization would be to
-        // defer this so that PARAMETRIC mode doesn't waste time
-        GeoLocator* locator = GeoLocator::createForKey( key, _mapf.getMapInfo() );
-
-        tile = new osgTerrain::TerrainTile();
-
-        osgTerrain::HeightFieldLayer* layer = new osgTerrain::HeightFieldLayer( hf.get() );
-        layer->setLocator( locator );
-
-        tile->setElevationLayer( layer );
-        tile->setRequiresNormals( false );
-        tile->setTerrainTechnique( new osgTerrain::GeometryTechnique );
-
-        // store it in the local tile cache.
-        _tileCache.insert( key, tile.get() );
+        _tileCache.insert(key, tile.get());
     }
 
     OE_DEBUG << LC << "LRU Cache, hit ratio = " << _tileCache.getStats()._hitRatio << std::endl;
 
     // see what the actual resolution of the heightfield is.
     if ( out_actualResolution )
-        *out_actualResolution = (double)hf->getXInterval();
+        *out_actualResolution = (double)tile->getXInterval();
 
-    // finally it's time to get a height value:
-    if ( _technique == TECHNIQUE_PARAMETRIC )
-    {
-        const GeoExtent& extent = key.getExtent();
-        double xInterval = extent.width()  / (double)(hf->getNumColumns()-1);
-        double yInterval = extent.height() / (double)(hf->getNumRows()-1);
-        out_elevation = (double) HeightFieldUtils::getHeightAtLocation( 
-            hf.get(), mapPoint.x(), mapPoint.y(), extent.xMin(), extent.yMin(), xInterval, yInterval );
-        return true;
-    }
-    else // ( _technique == TECHNIQUE_GEOMETRIC )
-    {
-        osg::Vec3d start, end, zero;
+    bool result = true;
 
-        if ( _mapf.getMapInfo().isGeocentric() )
-        {
-            const SpatialReference* mapSRS = _mapf.getProfile()->getSRS();
-
-            mapSRS->transformToECEF( osg::Vec3d(mapPoint.y(), mapPoint.x(),  50000.0), start );
-            mapSRS->transformToECEF( osg::Vec3d(mapPoint.y(), mapPoint.x(), -50000.0), end );
-            mapSRS->transformToECEF( osg::Vec3d(mapPoint.y(), mapPoint.x(),      0.0), zero );
-        }
-        else // PROJECTED
-        {
-            start.set( mapPoint.x(), mapPoint.y(),  50000.0 );
-            end.set  ( mapPoint.x(), mapPoint.y(), -50000.0 );
-            zero.set ( mapPoint.x(), mapPoint.y(),      0.0 );
-        }
-
-        osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
-        osgUtil::IntersectionVisitor iv;
-        iv.setIntersector( i );
-
-        tile->accept( iv );
+    const GeoExtent& extent = key.getExtent();
+    double xInterval = extent.width()  / (double)(tile->getNumColumns()-1);
+    double yInterval = extent.height() / (double)(tile->getNumRows()-1);
+    
+    out_elevation = (double) HeightFieldUtils::getHeightAtLocation( 
+        tile.get(), 
+        mapPoint.x(), mapPoint.y(), 
+        extent.xMin(), extent.yMin(), 
+        xInterval, yInterval );
 
-        osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
-        if ( !results.empty() )
-        {
-            const osgUtil::LineSegmentIntersector::Intersection& result = *results.begin();
-            osg::Vec3d isectPoint = result.getWorldIntersectPoint();
-            out_elevation = (isectPoint-end).length2() > (zero-end).length2()
-                ? (isectPoint-zero).length()
-                : -(isectPoint-zero).length();
-            return true;            
-        }
+    osg::Timer_t end = osg::Timer::instance()->tick();
+    _queries++;
+    _totalTime += osg::Timer::instance()->delta_s( start, end );
 
-        OE_DEBUG << LC << "No intersection" << std::endl;
-        return false;
-    }
+    return result;
 }
diff --git a/src/osgEarth/Export b/src/osgEarth/Export
index bd6568b..2fcc376 100644
--- a/src/osgEarth/Export
+++ b/src/osgEarth/Export
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/FadeEffect b/src/osgEarth/FadeEffect
new file mode 100644
index 0000000..278db4b
--- /dev/null
+++ b/src/osgEarth/FadeEffect
@@ -0,0 +1,94 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_FADE_EFFECT_H
+#define OSGEARTH_FADE_EFFECT_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Group>
+#include <osg/Uniform>
+
+namespace osgEarth
+{
+    /**
+     * Decorator node that will only display it's children when the camera is within a given elevation range
+     */
+    class OSGEARTH_EXPORT FadeEffect : public osg::Group
+    {
+    public:
+        /**
+         * Creates a uniform that set the start time for a timed fade. Typically you
+         * will set this right after adding the node to the scene graph. The value
+         * is a FLOAT in seconds. You can apply this uniform to the FadeEffect node
+         * or elsewhere in the scene graph.
+         */
+        static osg::Uniform* createStartTimeUniform();
+
+    public:
+        FadeEffect();
+        virtual ~FadeEffect() { }
+
+        void setFadeDuration( float seconds );
+        float getFadeDuration() const;
+
+    private:
+        osg::ref_ptr<osg::Uniform> _fadeDuration;
+    };
+
+
+    class OSGEARTH_EXPORT FadeLOD : public osg::Group
+    {
+    public:
+        FadeLOD();
+        virtual ~FadeLOD() { }
+
+        void setMinPixelExtent( float value ) { _minPixelExtent = value; }
+        float getMinPixelExtent() const { return _minPixelExtent; }
+
+        void setMaxPixelExtent( float value ) { _maxPixelExtent = value; }
+        float getMaxPixelExtent() const { return _maxPixelExtent; }
+
+        void setMinFadeExtent( float value ) { _minFadeExtent = value; }
+        float getMinFadeExtent() const { return _minFadeExtent; }
+
+        void setMaxFadeExtent( float value ) { _maxFadeExtent = value; }
+        float getMaxFadeExtent() const { return _maxFadeExtent; }
+
+    public: // osg::Node
+
+        virtual void traverse(osg::NodeVisitor& nv );
+
+    protected:
+        struct PerViewData
+        {
+            osg::ref_ptr<osg::StateSet> _stateSet;
+            osg::ref_ptr<osg::Uniform>  _opacity;
+        };
+        Threading::PerObjectMap<osg::NodeVisitor*, PerViewData> _perViewData;
+
+        float _minPixelExtent;
+        float _maxPixelExtent;
+        float _minFadeExtent;
+        float _maxFadeExtent;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_FADE_EFFECT_H
diff --git a/src/osgEarth/FadeEffect.cpp b/src/osgEarth/FadeEffect.cpp
new file mode 100644
index 0000000..923e0ff
--- /dev/null
+++ b/src/osgEarth/FadeEffect.cpp
@@ -0,0 +1,241 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/FadeEffect>
+#include <osgEarth/ShaderComposition>
+#include <osgUtil/CullVisitor>
+
+using namespace osgEarth;
+
+//--------------------------------------------------------------------
+
+namespace
+{
+    char* FadeEffectVertexShader =
+        "#version " GLSL_VERSION_STR "\n"
+        "uniform float osgearth_FadeEffect_duration; \n"
+        "uniform float osgearth_FadeEffect_startTime; \n"
+        "uniform float osg_FrameTime; \n"
+        "varying float osgearth_FadeEffect_opacity; \n"
+
+        "void vertFadeEffect() \n"
+        "{ \n"
+        "    float t = (osg_FrameTime-osgearth_FadeEffect_startTime)/osgearth_FadeEffect_duration; \n"
+        "    osgearth_FadeEffect_opacity = clamp( t, 0.0, 1.0 ); \n"
+        "} \n";
+
+    char* FadeEffectFragmentShader = 
+        "#version " GLSL_VERSION_STR "\n"
+        "varying float osgearth_FadeEffect_opacity; \n"
+
+        "void fragFadeEffect( inout vec4 color ) \n"
+        "{ \n"
+        "    color.a *= osgearth_FadeEffect_opacity; \n"
+        "} \n";
+}
+
+//--------------------------------------------------------------------
+
+osg::Uniform*
+FadeEffect::createStartTimeUniform()
+{
+    return new osg::Uniform( osg::Uniform::FLOAT, "osgearth_FadeEffect_startTime" );
+}
+
+FadeEffect::FadeEffect()
+{
+    osg::StateSet* ss = this->getOrCreateStateSet();
+
+    VirtualProgram* vp = new VirtualProgram();
+
+    vp->setFunction( "vertFadeEffect", FadeEffectVertexShader,   ShaderComp::LOCATION_VERTEX_POST_LIGHTING );
+    vp->setFunction( "fragFadeEffect", FadeEffectFragmentShader, ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+
+    ss->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+    _fadeDuration = new osg::Uniform( osg::Uniform::FLOAT, "osgearth_FadeEffect_duration" );
+    _fadeDuration->set( 1.0f );
+    ss->addUniform( _fadeDuration );
+
+    ss->setMode( GL_BLEND, 1 );
+}
+
+void
+FadeEffect::setFadeDuration( float seconds )
+{
+    _fadeDuration->set(seconds);
+}
+
+float
+FadeEffect::getFadeDuration() const
+{
+    float value = 0.0f;
+    _fadeDuration->get(value);
+    return value;
+}
+
+//--------------------------------------------------------------------
+
+namespace
+{
+    char* FadeLODFragmentShader = 
+        "#version " GLSL_VERSION_STR "\n"
+        "varying float osgearth_FadeLOD_opacity; \n"
+        "void fragFadeLOD( inout vec4 color ) \n"
+        "{ \n"
+        "    color.a *= osgearth_FadeLOD_opacity; \n"
+        "} \n";
+}
+
+//--------------------------------------------------------------------
+
+#undef  LC
+#define LC "[FadeLOD] "
+
+FadeLOD::FadeLOD() :
+_minPixelExtent( 0.0f ),
+_maxPixelExtent( FLT_MAX ),
+_minFadeExtent ( 0.0f ),
+_maxFadeExtent ( 0.0f )
+{
+    VirtualProgram* vp = new VirtualProgram();
+
+    vp->setFunction(
+        "fragFadeLOD",
+        FadeLODFragmentShader,
+        ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+
+    osg::StateSet* ss = getOrCreateStateSet();
+
+    ss->setAttributeAndModes( vp, osg::StateAttribute::ON );
+}
+
+
+void
+FadeLOD::traverse( osg::NodeVisitor& nv )
+{
+    if ( nv.getVisitorType() == nv.CULL_VISITOR )
+    {
+        osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>(&nv);
+        PerViewData& data = _perViewData.get(cv);
+        if ( !data._opacity.valid() )
+        {
+            data._opacity = new osg::Uniform(osg::Uniform::FLOAT, "osgearth_FadeLOD_opacity");
+            data._stateSet = new osg::StateSet();
+            data._stateSet->addUniform( data._opacity.get() );
+        }
+        
+        float p = cv->clampedPixelSize(getBound()) / cv->getLODScale();
+        
+        float opacity;
+
+        if ( p < _minPixelExtent )
+            opacity = 0.0f;
+        else if ( p < _minPixelExtent + _minFadeExtent )
+            opacity = (p - _minPixelExtent) / _minFadeExtent;
+        else if ( p < _maxPixelExtent - _maxFadeExtent )
+            opacity = 1.0f;
+        else if ( p < _maxPixelExtent )
+            opacity = (_maxPixelExtent - p) / _maxFadeExtent;
+        else
+            opacity = 0.0f;
+
+        data._opacity->set( opacity );
+
+        //OE_INFO << LC << "r = " << getBound().radius() << ", p = " << p << ", o = " << opacity << std::endl;
+
+        cv->pushStateSet( data._stateSet.get() );
+        osg::Group::traverse( nv );
+        cv->popStateSet();
+    }
+    else
+    {
+        osg::Group::traverse( nv );
+    }
+}
+
+
+#if 0
+void 
+FadeLOD::setMinPixelExtent( float value )
+{
+    osg::Vec4f value;
+    _params->get( value );
+    value[0] = value;
+    _params->set( value );
+}
+
+float 
+FadeLOD::getMinPixelExtent() const
+{
+    osg::Vec4f value;
+    _params->get( value );
+    return value[0];
+}
+
+void 
+FadeLOD::setMaxPixelExtent( float value )
+{
+    osg::Vec4f value;
+    _params->get( value );
+    value[1] = value;
+    _params->set( value );
+}
+
+float 
+FadeLOD::getMaxPixelExtent() const
+{
+    osg::Vec4f value;
+    _params->get( value );
+    return value[1];
+}
+
+void
+FadeLOD::setMinFadeExtent( float value )
+{
+    osg::Vec4f value;
+    _params->get( value );
+    value[2] = value;
+    _params->set( value );
+}
+
+float
+FadeLOD::getMinFadeExtent() const
+{
+    osg::Vec4f value;
+    _params->get( value );
+    return value[2];
+}
+
+void
+FadeLOD::setMaxFadeExtent( float value )
+{
+    osg::Vec4f value;
+    _params->get( value );
+    value[3] = value;
+    _params->set( value );
+}
+
+float
+FadeLOD::getMaxFadeExtent() const
+{
+    osg::Vec4f value;
+    _params->get( value );
+    return value[3];
+}
+#endif
diff --git a/src/osgEarth/FileUtils b/src/osgEarth/FileUtils
index 0675140..daf4c3a 100644
--- a/src/osgEarth/FileUtils
+++ b/src/osgEarth/FileUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -46,9 +46,30 @@ namespace osgEarth
         const std::string& relativePath );
 
     /**
+     * whether the given path ends with an Archive.
+     */
+    extern OSGEARTH_EXPORT bool isArchive(const std::string& path);
+
+    /**
      * Gets whether or not the given path contains a zip file within the path
      */
     extern OSGEARTH_EXPORT bool isZipPath(const std::string& path);
+
+    /**
+     * Gets the path to the temp directory
+     */
+    extern OSGEARTH_EXPORT std::string getTempPath();
+
+    /**
+     * Gets a temporary filename
+     * @param prefix
+     *        The prefix of the temporary filename
+     * @param suffix
+     *        The suffix of the temporary filename
+     */
+     extern OSGEARTH_EXPORT std::string getTempName(const std::string& prefix="", const std::string& suffix="");
+
+
 }
 
 #endif
diff --git a/src/osgEarth/FileUtils.cpp b/src/osgEarth/FileUtils.cpp
index 3d9d355..6c14f46 100644
--- a/src/osgEarth/FileUtils.cpp
+++ b/src/osgEarth/FileUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,9 +18,17 @@
  */
 
 #include <osgEarth/FileUtils>
+#include <osgEarth/StringUtils>
+#include <osgDB/FileUtils>
 #include <osgDB/FileNameUtils>
+#include <osgDB/Registry>
 #include <osg/Notify>
 #include <list>
+#include <sstream>
+
+#ifdef WIN32
+#include <windows.h>
+#endif
 
 using namespace osgEarth;
 
@@ -106,7 +114,56 @@ std::string osgEarth::getFullPath(const std::string& relativeTo, const std::stri
     return path;
 }
 
+bool
+osgEarth::isArchive(const std::string& path)
+{
+    osgDB::Registry::ArchiveExtensionList list = osgDB::Registry::instance()->getArchiveExtensions();
+    for( osgDB::Registry::ArchiveExtensionList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        if ( osgEarth::endsWith(path, ("."+*i), false) )
+            return true;
+    }
+    return false;
+}
+
 bool osgEarth::isZipPath(const std::string &path)
 {
     return (path.find(".zip") != std::string::npos);
 }
+
+std::string osgEarth::getTempPath()
+{
+#if defined(WIN32)  && !defined(__CYGWIN__)
+    BOOL fSuccess  = FALSE;
+
+    TCHAR lpTempPathBuffer[MAX_PATH];    
+
+    //  Gets the temp path env string (no guarantee it's a valid path).
+    DWORD dwRetVal = ::GetTempPath(MAX_PATH,          // length of the buffer
+        lpTempPathBuffer); // buffer for path     
+
+    if (dwRetVal > MAX_PATH || (dwRetVal == 0))
+    {
+        OE_NOTICE << "GetTempPath failed" << std::endl;
+        return ".";
+    }
+
+    return std::string(lpTempPathBuffer);
+#else
+    return "/tmp/";
+#endif
+}
+
+std::string osgEarth::getTempName(const std::string& prefix, const std::string& suffix)
+{
+    //tmpname is kind of busted on Windows, it always returns a file of the form \blah which gets put in your root directory but
+    //oftentimes can't get opened by some drivers b/c it doesn't have a drive letter in front of it.
+    bool valid = false;
+    while (!valid)
+    {
+        std::stringstream ss;
+        ss << prefix << "~" << rand() << suffix;
+        if (!osgDB::fileExists(ss.str())) return ss.str();
+    }
+    return "";
+}
diff --git a/src/osgEarth/FindNode b/src/osgEarth/FindNode
deleted file mode 100644
index 9cea8d4..0000000
--- a/src/osgEarth/FindNode
+++ /dev/null
@@ -1,111 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#ifndef OSGEARTH_FINDNODE
-#define OSGEARTH_FINDNODE 1
-
-namespace osgEarth 
-{
-    /**
-     * Visitor that locates a node by its type
-     */
-    template<typename T>
-    class FindTopMostNodeOfTypeVisitor : public osg::NodeVisitor
-    {
-    public:
-        FindTopMostNodeOfTypeVisitor():
-          osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
-              _foundNode(0)
-          {}
-
-          void apply(osg::Node& node)
-          {
-              T* result = dynamic_cast<T*>(&node);
-              if (result)
-              {
-                  _foundNode = result;
-              }
-              else
-              {
-                  traverse(node);
-              }
-          }
-
-          T* _foundNode;
-    };
-
-    /**
-     * Searchs the scene graph downward starting at [node] and returns the first node found
-     * that matches the template parameter type.
-     */
-    template<typename T>
-    T* findTopMostNodeOfType(osg::Node* node)
-    {
-        if (!node) return 0;
-
-        FindTopMostNodeOfTypeVisitor<T> fnotv;
-        fnotv.setTraversalMode(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN);
-        node->accept(fnotv);
-
-        return fnotv._foundNode;
-    }    
-
-    /**
-     * Searchs the scene graph upward starting at [node] and returns the first node found
-     * that matches the template parameter type.
-     */
-    template<typename T>
-    T* findFirstParentOfType(osg::Node* node)
-    {
-        if (!node) return 0;
-
-        FindTopMostNodeOfTypeVisitor<T> fnotv;
-        fnotv.setTraversalMode(osg::NodeVisitor::TRAVERSE_PARENTS);
-        node->accept(fnotv);
-
-        return fnotv._foundNode;
-    }
-
-    /**
-     * Searchs the scene graph starting at [node] and returns the first node found
-     * that matches the template parameter type. First searched upward, then downward.
-     */
-    template<typename T>
-    T* findRelativeNodeOfType(osg::Node* node)
-    {
-        if ( !node ) return 0;
-        T* result = findFirstParentOfType<T>( node );
-        if ( !result )
-            result = findTopMostNodeOfType<T>( node );
-        return result;
-    }
-
-    /**
-     * Adjusts a node's update traversal count by a delta.
-     * Only safe to call from the UPDATE thread
-     */
-#define ADJUST_UPDATE_TRAV_COUNT( NODE, DELTA ) \
-    { \
-        int oldCount = NODE ->getNumChildrenRequiringUpdateTraversal(); \
-        if ( oldCount + DELTA >= 0 ) \
-            NODE ->setNumChildrenRequiringUpdateTraversal( (unsigned int)(oldCount + DELTA ) ); \
-    }
-}
-
-#endif //OSGEARTH_FINDNODE
diff --git a/src/osgEarth/GeoCommon b/src/osgEarth/GeoCommon
new file mode 100644
index 0000000..dc4d106
--- /dev/null
+++ b/src/osgEarth/GeoCommon
@@ -0,0 +1,58 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_GEOCOMMON_H
+#define OSGEARTH_GEOCOMMON_H 1
+
+namespace osgEarth
+{
+#define NO_DATA_VALUE -FLT_MAX
+
+    /**
+     * Elevation interpolation methods.
+     */
+    enum ElevationInterpolation
+    {
+        INTERP_AVERAGE,
+        INTERP_NEAREST,
+        INTERP_BILINEAR,
+        INTERP_TRIANGULATE        
+    };
+
+    /**
+     * Elevation stack sampling policy
+     */
+    enum ElevationSamplePolicy
+    {
+        SAMPLE_FIRST_VALID,
+        SAMPLE_HIGHEST,
+        SAMPLE_LOWEST,
+        SAMPLE_AVERAGE
+    };
+
+    /**
+     * Indicates how to interpret a Z coordinate.
+     */
+    enum AltitudeMode
+    {
+        ALTMODE_ABSOLUTE,  // Z value is the absolute height above MSL/HAE.
+        ALTMODE_RELATIVE   // Z value is the height above the terrain elevation.
+    };
+}
+
+#endif // OSGEARTH_GEODATA_H
diff --git a/src/osgEarth/GeoData b/src/osgEarth/GeoData
index 790fd10..b1386d2 100644
--- a/src/osgEarth/GeoData
+++ b/src/osgEarth/GeoData
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,51 +19,263 @@
 #ifndef OSGEARTH_GEODATA_H
 #define OSGEARTH_GEODATA_H 1
 
-#include <osg/Referenced>
-#include <osg/Image>
-#include <osg/Shape>
-#include <osgTerrain/Locator>
 #include <osgEarth/Common>
+#include <osgEarth/GeoCommon>
+#include <osgEarth/Bounds>
 #include <osgEarth/SpatialReference>
-#include <osgEarth/VerticalSpatialReference>
-#include <osgEarth/HeightFieldUtils>
 #include <osgEarth/Units>
 
+#include <osg/Referenced>
+#include <osg/Image>
+#include <osg/Shape>
+
 namespace osgEarth
 {
+    class TerrainHeightProvider;
+    class GeoExtent;
+
     /**
-     * An "anonymous" bounding extent (i.e., no geo reference information)
+     * A georeferenced 3D point.
      */
-    class OSGEARTH_EXPORT Bounds : public osg::BoundingBoxImpl<osg::Vec3d>
+    class OSGEARTH_EXPORT GeoPoint
     {
     public:
-        Bounds();
-        Bounds(double xmin, double ymin, double xmax, double ymax );
 
-        double width() const;
-        double height() const;
-        double depth() const;
-        bool contains(double x, double y ) const;
-        bool contains(const Bounds& rhs) const;
-        Bounds unionWith(const Bounds& rhs) const; 
-        Bounds intersectionWith(const Bounds& rhs) const;
-        void expandBy( double x, double y );
-        void expandBy( double x, double y, double z );
-        void expandBy( const Bounds& rhs );
-        osg::Vec2d center2d() const;
-        double radius2d() const;
-        std::string toString() const;
-        bool isValid() const;
-        bool isEmpty() const { return !isValid(); }
-        void transform( const SpatialReference* fromSRS, const SpatialReference* toSRS );
+        /**
+         * Constructs a GeoPoint.
+         */
+        GeoPoint(
+            const SpatialReference* srs,
+            double x,
+            double y,
+            double z,
+            const AltitudeMode& mode );
+
+        /**
+         * Constructs a GeoPoint with X and Y coordinates. The Z defaults
+         * to zero with an ALTMODE_RELATIVE altitude mode (i.e., 0 meters
+         * above the terrain).
+         */
+        GeoPoint(
+            const SpatialReference* srs,
+            double x,
+            double y );
+
+        /**
+         * Constructs a GeoPoint from a vec3.
+         */
+        GeoPoint(
+            const SpatialReference* srs,
+            const osg::Vec3d&       xyz,
+            const AltitudeMode&     mode );
+
+        /**
+         * Constructs a new GeoPoint by transforming an existing GeoPoint into
+         * the specified spatial reference.
+         */
+        GeoPoint(
+            const SpatialReference* srs,
+            const GeoPoint&         rhs );
+
+        /**
+         * Copy constructor
+         */
+        GeoPoint(const GeoPoint& rhs);
+
+        /**
+         * Constructs an empty (and invalid) geopoint.
+         */
+        GeoPoint();
+
+        /**
+         * Constructs a geopoint from serialization
+         */
+        GeoPoint( const Config& conf, const SpatialReference* srs =0L );
+
+        /** dtor */
+        virtual ~GeoPoint() { }
+
+        /**
+         * Sets the SRS and coords 
+         */
+        void set(
+            const SpatialReference* srs,
+            const osg::Vec3d&       xyz,
+            const AltitudeMode&     mode );
+
+        void set(
+            const SpatialReference* srs,
+            double                  x,
+            double                  y,
+            double                  z,
+            const AltitudeMode&     mode );
+
+        // component getter/setters
+
+        double& x() { return _p.x(); }
+        double  x() const { return _p.x(); }
+
+        double& y() { return _p.y(); }
+        double  y() const { return _p.y(); }
+
+        double& z() { return _p.z(); }
+        double  z() const { return _p.z(); }
+
+        double& alt() { return _p.z(); }
+        double  alt() const { return _p.z(); }
+
+        osg::Vec3d& vec3d() { return _p; }
+        const osg::Vec3d& vec3d() const { return _p; }
+
+        const SpatialReference* getSRS() const { return _srs.get(); }
+
+        AltitudeMode& altitudeMode() { return _altMode; }
+        const AltitudeMode& altitudeMode() const { return _altMode; }
+
+        /**
+         * Returns a copy of this geopoint transformed into another SRS.
+         */
+        GeoPoint transform(const SpatialReference* outSRS) const;
+
+        /**
+         * Transforms this geopoint into another SRS.
+         */
+        bool transform(const SpatialReference* outSRS, GeoPoint& output) const;
+
+        /**
+         * Transforms this geopoint's Z coordinate (in place)
+         */
+        bool transformZ(const AltitudeMode& altMode, const TerrainHeightProvider* t );
+
+        /**
+         * Transforms and returns the geopoints Z coordinate.
+         */
+        bool transformZ(const AltitudeMode& altMode, const TerrainHeightProvider* t, double& out_z) const;
+
+        /**
+         * Transforms this geopoint's Z to be absolute w.r.t. the vertical datum
+         */
+        bool makeAbsolute(const TerrainHeightProvider* t) { return transformZ(ALTMODE_ABSOLUTE, t); }
+
+        /**
+         * Transforms this geopoint's Z to be terrain-relative.
+         */
+        bool makeRelative(const TerrainHeightProvider* t) { return transformZ(ALTMODE_RELATIVE, t); }
+
+        /**
+         * Transforms this GeoPoint to geographic (lat/long) coords in place.
+         */
+        bool makeGeographic();
+
+        /**
+         * Outputs world coordinates corresponding to this point. If the point
+         * is ALTMODE_RELATIVE, this will fail because there's no way to resolve
+         * the actual Z coordinate. Use the variant of toWorld that takes a
+         * Terrain* instead.
+         */
+        bool toWorld( osg::Vec3d& out_world ) const;
+
+        /**
+         * Outputs world coordinates corresponding to this point, passing in a Terrain
+         * object that will be used if the point needs to be converted to absolute
+         * altitude
+         */
+        bool toWorld( osg::Vec3d& out_world, const TerrainHeightProvider* terrain ) const;
+
+        /**
+         * Converts world coordinates into a geopoint
+         */
+        bool fromWorld(const SpatialReference* srs, const osg::Vec3d& world);
+
+        /**
+         * geopoint into absolute world coords.
+         */
+        bool createLocalToWorld( osg::Matrixd& out_local2world ) const;
+
+        /**
+         * Outputs a matrix that will transform absolute world coordiantes so they are
+         * localized into a local tangent place around this geopoint.
+         */
+        bool createWorldToLocal( osg::Matrixd& out_world2local ) const;
+
+
+        bool operator == (const GeoPoint& rhs) const;
+        bool operator != (const GeoPoint& rhs) const { return !operator==(rhs); }
+        bool isValid() const { return _srs.valid(); }
+
+        Config getConfig() const;
+
+    public:
+        static GeoPoint INVALID;
+
+    protected:
+        osg::ref_ptr<const SpatialReference> _srs;
+        osg::Vec3d       _p;
+        AltitudeMode _altMode;
     };
 
+
+    /**
+     * A simple circular bounding area consiting of a GeoPoint and a linear radius.
+     */
+     class OSGEARTH_EXPORT GeoCircle
+     {
+     public:
+         /** Construct an INVALID GeoCircle */
+        GeoCircle();
+
+        /** Copy another GoeCircle */
+        GeoCircle(const GeoCircle& rhs);
+
+        /** Construct a new GeoCircle */
+        GeoCircle(
+             const GeoPoint& center,
+             double          radius );
+
+        virtual ~GeoCircle() { }
+
+        /** The center point of the circle */
+        const GeoPoint& getCenter() const { return _center; }
+        void setCenter( const GeoPoint& value ) { _center = value; }
+
+        /** Circle's radius, in linear map units (or meters for a geographic SRS) */
+        double getRadius() const { return _radius; }
+        void setRadius( double value ) { _radius = value; }
+
+        /** SRS of the center point */
+        const SpatialReference* getSRS() const { return _center.getSRS(); }
+
+        /** equality test */
+        bool operator == ( const GeoCircle& rhs ) const;
+
+        /** inequality test */
+        bool operator != ( const GeoCircle& rhs ) const { return !operator==(rhs); }
+
+        /** validity test */
+        bool isValid() const { return _center.isValid() && _radius > 0.0; }
+
+        /** transform the GeoCircle to another SRS */
+        GeoCircle transform( const SpatialReference* srs ) const;
+
+        /** transform the GeoCircle to another SRS */
+        bool transform( const SpatialReference* srs, GeoCircle& out_circle ) const;
+
+        /** does this GeoCircle intersect another? */
+        bool intersects( const GeoCircle& rhs ) const;
+
+     public:
+
+         static GeoCircle INVALID;
+
+     protected:
+         GeoPoint _center;
+         double   _radius;
+     };
+
+
     /**
-     * A georeferenced extent. A bounding box that is aligned with a
+     * An axis-aligned geospatial extent. A bounding box that is aligned with a
      * spatial reference's coordinate system.
-     *
-     * TODO: this class needs better integrated support for geographic extents
-     * that cross the date line.
      */
     class OSGEARTH_EXPORT GeoExtent
     {
@@ -74,8 +286,11 @@ namespace osgEarth
         /** Contructs a valid extent */
         GeoExtent(
             const SpatialReference* srs,
-            double xmin = FLT_MAX, double ymin = FLT_MAX,
-            double xmax = -FLT_MAX, double ymax = -FLT_MAX );
+            double west, double south,
+            double east, double north );
+
+        /** Contructs an invalid extent that you can grow with the expandToInclude method */
+        GeoExtent( const SpatialReference* srs );
 
         /** Copy ctor */
         GeoExtent( const GeoExtent& rhs );
@@ -83,31 +298,39 @@ namespace osgEarth
         /** create from Bounds object */
         GeoExtent( const SpatialReference* srs, const Bounds& bounds );
 
+        /** dtor */
+        virtual ~GeoExtent() { }
+
         bool operator == ( const GeoExtent& rhs ) const;
         bool operator != ( const GeoExtent& rhs ) const;
 
         /** Gets the spatial reference system underlying this extent. */
-        const SpatialReference* getSRS() const;
+        const SpatialReference* getSRS() const { return _srs.get(); }
+
+        double west() const { return _west; }
+        double east() const { return _east; }
+        double south() const { return _south; }
+        double north() const { return _north; }
 
-        double xMin() const { return _xmin; }
-        double& xMin() { return _xmin; }
-        double yMin() const { return _ymin; }
-        double& yMin() { return _ymin; }
-        double xMax() const { return _xmax; }
-        double& xMax() { return _xmax; }
-        double yMax() const { return _ymax; }
-        double& yMax() { return _ymax; }
+        double xMin() const { return west(); }
+        double xMax() const { return east(); }
+        double yMin() const { return south(); }
+        double yMax() const { return north(); }
 
         double width() const;
         double height() const;
 
-        void getCentroid( double& out_x, double& out_y ) const;
+        /**
+         * Gets the centroid of the bounds
+         */
+        bool getCentroid( double& out_x, double& out_y ) const;
+        osg::Vec3d getCentroid() const { osg::Vec3d r; getCentroid(r.x(), r.y()); return r; }
 
         /**
          * Returns true is that extent is in a Geographic (lat/long) SRS that spans
-         * the international date line.
+         * the antimedirian (180 degrees east/west).
          */
-        bool crossesDateLine() const;
+        bool crossesAntimeridian() const;
 
         /**
          * Returns the raw bounds in a single function call
@@ -117,13 +340,14 @@ namespace osgEarth
         /** True if this object defines a real, valid extent with positive area */
         bool isValid() const;
         bool defined() const { return isValid(); }
+        bool isInvalid() const { return !isValid(); }
 
         /**
          * If this extent crosses the international date line, populates two extents, one for
          * each side, and returns true. Otherwise returns false and leaves the reference
          * parameters untouched.
          */
-        bool splitAcrossDateLine( GeoExtent& first, GeoExtent& second ) const;
+        bool splitAcrossAntimeridian( GeoExtent& first, GeoExtent& second ) const;
 
         /**
          * Returns this extent transformed into another spatial reference. 
@@ -137,6 +361,11 @@ namespace osgEarth
         GeoExtent transform( const SpatialReference* to_srs ) const;
 
         /**
+         * Same as transform(srs) but puts the result in the output extent
+         */
+        bool transform( const SpatialReference* to_srs, GeoExtent& output ) const;
+
+        /**
          * Returns true if the specified point falls within the bounds of the extent.
          *
          * @param x, y
@@ -145,7 +374,19 @@ namespace osgEarth
          *      SRS of input x and y coordinates; if null, the method assumes x and y
          *      are in the same SRS as this object.
          */
-        bool contains(double x, double y, const SpatialReference* xy_srs =0L) const;
+        bool contains(double x, double y, const SpatialReference* srs =0L) const;
+
+        bool contains(const osg::Vec3d& xy, const SpatialReference* srs =0L) const { return contains(xy.x(),xy.y(),srs); }
+
+        /**
+         * Returns true if the point falls within this extent.
+         */
+        bool contains( const GeoPoint& rhs ) const;
+
+        /**
+         * Returns true if this extent fully contains another extent.
+         */
+        bool contains( const GeoExtent& rhs ) const;
 
         /**
          * Returns true if this extent fully contains the target bounds.
@@ -154,29 +395,39 @@ namespace osgEarth
 
         /**
          * Returns TRUE if this extent intersects another extent.
+         * @param[in ] rhs      Extent against which to perform intersect test
+         * @param[in ] checkSRS If false, assume the extents have the same SRS (don't check).
          */
-        bool intersects( const GeoExtent& rhs ) const;
+        bool intersects( const GeoExtent& rhs, bool checkSRS =true ) const;
 
-        /** Direct access to the anonymous bounding box */
+        /**
+         * Copy of the anonymous bounding box
+         */
         Bounds bounds() const;
 
         /**
+         * Gets a geo circle bounding this extent.
+         */
+        const GeoCircle& getBoundingGeoCircle() const { return _circle; }
+
+        /**
          * Grow this extent to include the specified point (which is assumed to be
          * in the extent's SRS.
          */
-        void expandToInclude( double x, double y );
+        void expandToInclude( double x, double y ); 
+        void expandToInclude( const osg::Vec3d& v ) { expandToInclude(v.x(), v.y()); }
+        void expandToInclude( const Bounds& bounds );
 
         /**
-         * Grow this extent to include the specified GeoExtent (which is assumed to be
-         * in the extent's SRS.
+         * Expand this extent to include the bounds of another extent.
          */
-        void expandToInclude( const Bounds& rhs );
+        bool expandToInclude( const GeoExtent& rhs );
         
         /**
          * Intersect this extent with another extent in the same SRS and return the
          * result.
          */
-        GeoExtent intersectionSameSRS( const Bounds& rhs ) const;
+        GeoExtent intersectionSameSRS( const GeoExtent& rhs ) const; //const Bounds& rhs ) const;
 
         /**
          * Returns a human-readable string containing the extent data (without the SRS)
@@ -188,22 +439,36 @@ namespace osgEarth
          */
         void scale(double x_scale, double y_scale);
 
-		/**
-		 * Expands the extent by x and y.
-		 */
-		void expand( double x, double y );
+        /**
+         * Expands the extent by x and y.
+         */
+        void expand( double x, double y );
 
         /**
          *Gets the area of this GeoExtent
          */
         double area() const;
 
+
+        /**
+         * Normalize the longitude values in this GeoExtent
+         */
+        void normalize();
+
+        /**
+         * Given a longitude value, normalize it so that it exists within the GeoExtents longitude frame.
+         */
+        double normalizeLongitude( double longitude ) const;
+
     public:
         static GeoExtent INVALID;
 
     private:
         osg::ref_ptr<const SpatialReference> _srs;
-        double _xmin, _ymin, _xmax, _ymax;
+        double _west, _east, _south, _north;
+        GeoCircle _circle;
+
+        void recomputeCircle();
     };
 
     /**
@@ -212,17 +477,22 @@ namespace osgEarth
     class OSGEARTH_EXPORT DataExtent : public GeoExtent
     {
     public:
-        DataExtent(const GeoExtent& extent, unsigned int minLevel, unsigned int maxLevel);
+        DataExtent(const GeoExtent& extent);
+        DataExtent(const GeoExtent& extent, unsigned minLevel );
+        DataExtent(const GeoExtent& extent, unsigned minLevel, unsigned maxLevel);
+
+        /** dtor */
+        virtual ~DataExtent() { }
 
         /** The minimum LOD of the extent */
-        unsigned int getMinLevel() const;
+        const optional<unsigned>& minLevel() const { return _minLevel; }
 
         /** The maximum LOD of the extent */
-        unsigned int getMaxLevel() const;
+        const optional<unsigned>& maxLevel() const { return _maxLevel; }
 
     private:
-        unsigned int _minLevel;
-        unsigned int _maxLevel;
+        optional<unsigned> _minLevel;
+        optional<unsigned> _maxLevel;
     };
 
     typedef std::vector< DataExtent > DataExtentList;
@@ -242,13 +512,16 @@ namespace osgEarth
          */
         GeoImage( osg::Image* image, const GeoExtent& extent );
 
+        /** dtor */
+        virtual ~GeoImage() { }
+
         static GeoImage INVALID;
 
     public:
         /**
          * True if this is a valid geo image. 
          */
-        bool valid() const { return _image.valid(); }
+        bool valid() const;
 
         /**
          * Gets a pointer to the underlying OSG image.
@@ -345,15 +618,17 @@ namespace osgEarth
          */
         GeoHeightField(
             osg::HeightField* heightField,
-            const GeoExtent& extent,
-            const VerticalSpatialReference* vsrs);
+            const GeoExtent&  extent );
+
+        /** dtor */
+        virtual ~GeoHeightField() { }
 
         static GeoHeightField INVALID;
 
         /**
          * True if this is a valid heightfield. 
          */
-        bool valid() const { return _heightField.valid(); }
+        bool valid() const;
 
         /**
          * Gets the elevation value at a specified point.
@@ -366,8 +641,10 @@ namespace osgEarth
          *      Coordinates at which to query the elevation value.
          * @param interp
          *      Interpolation method for the elevation query.
-         * @param outputVSRS
-         *      Convert the output elevation value to this VSRS (NULL to ignore)
+         * @param srsWithOutputVerticalDatum
+         *      Transform the output elevation value according to the vertical datum 
+         *      associated with this SRS. If the SRS is NULL, assume a geodetic vertical datum
+         *      relative to this object's reference ellipsoid.
          * @param out_elevation
          *      Output: the elevation value
          * @return
@@ -376,10 +653,11 @@ namespace osgEarth
          */
         bool getElevation(
             const SpatialReference* inputSRS, 
-            double x, double y,
-            ElevationInterpolation interp,
-            const VerticalSpatialReference* outputVSRS,
-            float& out_elevation ) const;
+            double                  x,
+            double                  y,
+            ElevationInterpolation  interp,
+            const SpatialReference* srsWithOutputVerticalDatum,
+            float&                  out_elevation ) const;
         
         /**
          * Subsamples the heightfield, returning a new heightfield corresponding to
@@ -405,52 +683,10 @@ namespace osgEarth
 
     protected:
         osg::ref_ptr<osg::HeightField> _heightField;
-        GeoExtent _extent;
-        osg::ref_ptr<const VerticalSpatialReference> _vsrs;
+        GeoExtent                      _extent;
     };
 
 	typedef std::vector<GeoHeightField> GeoHeightFieldVector;
-
-    
-    /**
-     * A representation of the surface of the earth based on a grid of
-     * height values that are relative to a reference ellipsoid.
-     */
-    class OSGEARTH_EXPORT Geoid : public osg::Referenced
-    {
-    public:
-        Geoid();
-
-        /** Gets the readable name of this geoid. */
-        void setName( const std::string& value );
-        const std::string& getName() const { return _name; }
-
-        /** Sets the underlying heightfield data */
-        void setHeightField( const GeoHeightField& hf );
-
-        /** Queries to geoid for the height offset at the specified coordinates. */
-        float getOffset(
-            double lat_deg, double lon_deg, 
-            const ElevationInterpolation& interp =INTERP_BILINEAR) const;
-
-        /** The linear units in which height values are expressed. */
-        const Units& getUnits() const { return _units; }
-        void setUnits( const Units& value );
-
-        /** Whether this is a valid object to use */
-        bool isValid() const { return _valid; }
-
-        /** True if two geoids are mathmatically equivalent. */
-        bool isEquivalentTo( const Geoid& rhs ) const;
-
-    private:
-        std::string _name;
-        GeoHeightField _hf;
-        Units _units;
-        bool _valid;
-        void validate();
-    };
-
 }
 
 #endif // OSGEARTH_GEODATA_H
diff --git a/src/osgEarth/GeoData.cpp b/src/osgEarth/GeoData.cpp
index 1eb4475..13b4714 100644
--- a/src/osgEarth/GeoData.cpp
+++ b/src/osgEarth/GeoData.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,9 +18,13 @@
  */
 
 #include <osgEarth/GeoData>
+#include <osgEarth/GeoMath>
 #include <osgEarth/ImageUtils>
+#include <osgEarth/HeightFieldUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/Cube>
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/Terrain>
 
 #include <osg/Notify>
 #include <osg/Timer>
@@ -32,180 +36,545 @@
 
 #include <sstream>
 #include <iomanip>
+#include <cmath>
 
 #define LC "[GeoData] "
 
 using namespace osgEarth;
 
 
-Bounds::Bounds() :
-osg::BoundingBoxImpl<osg::Vec3d>( DBL_MAX, DBL_MAX, DBL_MAX, -DBL_MAX, -DBL_MAX, -DBL_MAX )
+namespace
+{
+    double s_cint( double x )
+    {
+        double dummy;
+        if (modf(x,&dummy) >= .5)
+            return x >= 0.0 ? ceil(x) : floor(x);
+        else
+            return x < 0.0 ? ceil(x) : floor(x);
+    }
+
+    double s_roundNplaces( double x, int n )
+    {
+        double off = pow(10.0, n);
+        return s_cint(x*off)/off;
+    }
+
+    double s_normalizeLongitude( double x, double minLon = -180.0, double maxLon = 180.0 )
+    {
+        double result = x;
+        while( result < minLon ) result += 360.;
+        while( result >  maxLon ) result -= 360.;
+        return result;
+    }
+
+    bool s_crossesAntimeridian( double x0, double x1 )
+    {
+        return ((x0 < 0.0 && x1 > 0.0 && x0-x1 < -180.0) ||
+                (x1 < 0.0 && x0 > 0.0 && x1-x0 < -180.0));
+    }
+
+    double s_westToEastLongitudeDistance( double west, double east )
+    {
+        return west < east ? east-west : fmod(east,360.)-west;
+    }
+
+    /**
+     * Given a longitude value determine what longitude frame it is in.
+     * The base longitude frame is -180 to 180.  As values cross the antimeridian the frame is offset by 360 degrees.
+     */
+    void s_getLongitudeFrame( double longitude, double &minLongitude, double &maxLongitude)
+    {
+        minLongitude = -180.0;
+        maxLongitude = 180.0;
+
+        while ( longitude < minLongitude || longitude > maxLongitude)
+        {
+            if (longitude < minLongitude)
+            {
+                minLongitude -= 360.0;
+                maxLongitude -= 360.0;
+            }
+            else if (longitude > maxLongitude)
+            {
+                minLongitude += 360.0;
+                maxLongitude += 360.0;
+            }
+        }
+    }
+}
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[GeoPoint] "
+
+GeoPoint GeoPoint::INVALID;
+
+
+GeoPoint::GeoPoint(const SpatialReference* srs,
+                   double x,
+                   double y ) :
+_srs    ( srs ),
+_p      ( x, y, 0.0 ),
+_altMode( ALTMODE_RELATIVE )
 {
     //nop
 }
 
-Bounds::Bounds(double xmin, double ymin, double xmax, double ymax ) :
-osg::BoundingBoxImpl<osg::Vec3d>( xmin, ymin, -DBL_MAX, xmax, ymax, DBL_MAX )
+GeoPoint::GeoPoint(const SpatialReference* srs,
+                   double x,
+                   double y,
+                   double z,
+                   const AltitudeMode& altMode) :
+_srs    ( srs ),
+_p      ( x, y, z ),
+_altMode( altMode )
 {
     //nop
 }
 
-bool
-Bounds::isValid() const
+GeoPoint::GeoPoint(const SpatialReference* srs,
+                   const osg::Vec3d&       xyz,
+                   const AltitudeMode&     altMode) :
+_srs(srs),
+_p  (xyz),
+_altMode( altMode )
 {
-    return xMin() <= xMax() && yMin() <= yMax();
+    //nop
 }
 
-bool 
-Bounds::contains(double x, double y ) const
+GeoPoint::GeoPoint(const SpatialReference* srs,
+                   const GeoPoint&         rhs)
 {
-    return 
-        isValid() &&
-        x >= xMin() && x <= xMax() && y >= yMin() && y <= yMax();
+     rhs.transform(srs, *this);
 }
 
-bool
-Bounds::contains(const Bounds& rhs) const
+GeoPoint::GeoPoint(const GeoPoint& rhs) :
+_srs    ( rhs._srs.get() ),
+_p      ( rhs._p ),
+_altMode( rhs._altMode )
 {
-    return 
-        isValid() && rhs.isValid() && 
-        xMin() <= rhs.xMin() && xMax() >= rhs.xMax() &&
-        yMin() <= rhs.yMin() && yMax() >= rhs.yMax();
+    //nop
 }
 
-void
-Bounds::expandBy( double x, double y )
+GeoPoint::GeoPoint() :
+_srs    ( 0L ),
+_altMode( ALTMODE_ABSOLUTE )
+{
+    //nop
+}
+
+GeoPoint::GeoPoint(const Config& conf, const SpatialReference* srs) :
+_srs    ( srs ),
+_altMode( ALTMODE_ABSOLUTE )
+{
+    conf.getIfSet( "x", _p.x() );
+    conf.getIfSet( "y", _p.y() );
+    conf.getIfSet( "z", _p.z() );
+    conf.getIfSet( "alt", _p.z() );
+    conf.getIfSet( "hat", _p.z() ); // height above terrain (relative)
+
+    if ( !_srs.valid() )
+        _srs = SpatialReference::create( conf.value("srs"), conf.value("vdatum") );
+
+    if ( conf.hasValue("lat") && (!_srs.valid() || _srs->isGeographic()) )
+    {
+        conf.getIfSet( "lat", _p.y() );
+        if ( !_srs.valid() ) 
+            _srs = SpatialReference::create("wgs84");
+    }
+    if ( conf.hasValue("long") && (!_srs.valid() || _srs->isGeographic()) )
+    {
+        conf.getIfSet("long", _p.x());
+        if ( !_srs.valid() ) 
+            _srs = SpatialReference::create("wgs84");
+    }
+
+    if ( conf.hasValue("mode") )
+    {
+        conf.getIfSet( "mode", "relative",            _altMode, ALTMODE_RELATIVE );
+        conf.getIfSet( "mode", "relative_to_terrain", _altMode, ALTMODE_RELATIVE );
+        conf.getIfSet( "mode", "absolute",            _altMode, ALTMODE_ABSOLUTE );
+    }
+    else
+    {
+        if ( conf.hasValue("alt") || conf.hasValue("z") )
+            _altMode = ALTMODE_ABSOLUTE;
+        else
+            _altMode = ALTMODE_RELATIVE;
+    }
+}
+
+Config
+GeoPoint::getConfig() const
 {
-    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( x, y, 0 );
+    Config conf;
+    if ( _srs.valid() && _srs->isGeographic() )
+    {
+        conf.set( "lat", _p.y() );
+        conf.set( "long", _p.x() );
+        if ( _p.z() != 0.0 )
+        {
+            if ( _altMode == ALTMODE_ABSOLUTE )
+                conf.set( "alt", _p.z() );
+            else
+                conf.set( "hat", _p.z() );
+        }
+    }
+    else
+    {
+        conf.set( "x", _p.x() );
+        conf.set( "y", _p.y() );
+        if ( _altMode == ALTMODE_ABSOLUTE )
+            conf.set( "z", _p.z() );
+        else
+            conf.set( "hat", _p.z() );
+    }
+
+    if ( _srs.valid() )
+    {
+        conf.set("srs", _srs->getHorizInitString());
+        if ( _srs->getVerticalDatum() )
+            conf.set("vdatum", _srs->getVertInitString());
+    }
+
+    return conf;
 }
 
 void
-Bounds::expandBy( double x, double y, double z )
+GeoPoint::set(const SpatialReference* srs,
+              const osg::Vec3d&       xyz,
+              const AltitudeMode&     altMode)
 {
-    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( x, y, z );
+    _srs = srs;
+    _p   = xyz;
+    _altMode = altMode;
 }
 
 void
-Bounds::expandBy( const Bounds& rhs )
+GeoPoint::set(const SpatialReference* srs,
+              double                  x,
+              double                  y,
+              double                  z,
+              const AltitudeMode&     altMode)
 {
-    osg::BoundingBoxImpl<osg::Vec3d>::expandBy( rhs );
+    _srs = srs;
+    _p.set(x, y, z);
+    _altMode = altMode;
 }
 
-Bounds 
-Bounds::unionWith(const Bounds& rhs) const
+bool 
+GeoPoint::operator == (const GeoPoint& rhs) const
 {
-    if ( valid() && !rhs.valid() ) return *this;
-    if ( !valid() && rhs.valid() ) return rhs;
+    return
+        isValid() && rhs.isValid() &&
+        _p        == rhs._p        &&
+        _altMode  == rhs._altMode  &&
+        ((_altMode == ALTMODE_ABSOLUTE && _srs->isEquivalentTo(rhs._srs.get())) ||
+         (_altMode == ALTMODE_RELATIVE && _srs->isHorizEquivalentTo(rhs._srs.get())));
+}
 
-    Bounds u;
-    if ( intersects(rhs) ) {
-        u.xMin() = xMin() >= rhs.xMin() && xMin() <= rhs.xMax() ? xMin() : rhs.xMin();
-        u.xMax() = xMax() >= rhs.xMin() && xMax() <= rhs.xMax() ? xMax() : rhs.xMax();
-        u.yMin() = yMin() >= rhs.yMin() && yMin() <= rhs.yMax() ? yMin() : rhs.yMin();
-        u.yMax() = yMax() >= rhs.yMin() && yMax() <= rhs.yMax() ? yMax() : rhs.yMax();
-        u.zMin() = zMin() >= rhs.zMin() && zMin() <= rhs.zMax() ? zMin() : rhs.zMin();
-        u.zMax() = zMax() >= rhs.zMin() && zMax() <= rhs.zMax() ? zMax() : rhs.zMax();
+GeoPoint
+GeoPoint::transform(const SpatialReference* outSRS) const
+{
+    if ( isValid() && outSRS )
+    {
+        osg::Vec3d out;
+        if ( _altMode == ALTMODE_ABSOLUTE )
+        {
+            if ( _srs->transform(_p, outSRS, out) )
+                return GeoPoint(outSRS, out, ALTMODE_ABSOLUTE);
+        }
+        else // if ( _altMode == ALTMODE_RELATIVE )
+        {
+            if ( _srs->transform2D(_p.x(), _p.y(), outSRS, out.x(), out.y()) )
+            {
+                out.z() = _p.z();
+                return GeoPoint(outSRS, out, ALTMODE_RELATIVE);
+            }
+        }
     }
-    return u;
+    return GeoPoint::INVALID;
 }
 
-Bounds
-Bounds::intersectionWith(const Bounds& rhs) const 
+bool
+GeoPoint::transformZ(const AltitudeMode& altMode, const TerrainHeightProvider* terrain ) 
 {
-    if ( valid() && !rhs.valid() ) return *this;
-    if ( !valid() && rhs.valid() ) return rhs;
+    double z;
+    if ( transformZ(altMode, terrain, z) )
+    {
+        _p.z() = z;
+        _altMode = altMode;
+        return true;
+    }
+    return false;
+}
 
-    if ( this->contains(rhs) ) return rhs;
-    if ( rhs.contains(*this) ) return *this;
+bool
+GeoPoint::transformZ(const AltitudeMode& altMode, const TerrainHeightProvider* terrain, double& out_z ) const
+{
+    if ( !isValid() ) return false;
+    
+    // already in the target mode? just return z.
+    if ( _altMode == altMode ) 
+    {
+        out_z = z();
+        return true;
+    }
 
-    if ( !intersects(rhs) ) return Bounds();
+    if ( !terrain ) return false;
 
-    double xmin, xmax, ymin, ymax;
+    // convert to geographic if necessary and sample the MSL height under the point.
+    double out_hamsl;
+    if ( !terrain->getHeight(_srs.get(), x(), y(), &out_hamsl) )
+    {
+        return false;
+    }
 
-    xmin = ( xMin() > rhs.xMin() && xMin() < rhs.xMax() ) ? xMin() : rhs.xMin();
-    xmax = ( xMax() > rhs.xMin() && xMax() < rhs.xMax() ) ? xMax() : rhs.xMax();
-    ymin = ( yMin() > rhs.yMin() && yMin() < rhs.yMax() ) ? yMin() : rhs.yMin();
-    ymax = ( yMax() > rhs.yMin() && yMax() < rhs.yMax() ) ? yMax() : rhs.yMax();
+    // convert the Z value as appropriate.
+    if ( altMode == ALTMODE_RELATIVE )
+    {
+        out_z = z() - out_hamsl;
+    }
+    else // if ( altMode == ALTMODE_ABSOLUTE )
+    {
+        out_z = z() + out_hamsl;
+    }
+    return true;
+}
 
-    return Bounds(xmin, ymin, xmax, ymax);
+bool
+GeoPoint::makeGeographic()
+{
+    if ( !isValid() ) return false;
+    if ( !_srs->isGeographic() )
+        return _srs->transform( _p, _srs->getGeographicSRS(), _p);
+    return true;
 }
 
-double
-Bounds::width() const {
-    return xMax()-xMin();
+bool
+GeoPoint::transform(const SpatialReference* outSRS, GeoPoint& output) const
+{
+    output = transform(outSRS);
+    return output.isValid();
 }
 
-double
-Bounds::height() const {
-    return yMax()-yMin();
+bool
+GeoPoint::toWorld( osg::Vec3d& out_world ) const
+{
+    if ( !isValid() ) return false;
+    if ( _altMode != ALTMODE_ABSOLUTE )
+    {
+        OE_WARN << LC << "ILLEGAL: called GeoPoint::toWorld with AltitudeMode = RELATIVE_TO_TERRAIN" << std::endl;
+        return false;
+    }
+    return _srs->transformToWorld( _p, out_world );
 }
 
-double
-Bounds::depth() const {
-    return zMax()-zMin();
+bool
+GeoPoint::toWorld( osg::Vec3d& out_world, const TerrainHeightProvider* terrain ) const
+{
+    if ( !isValid() ) return false;
+    if ( _altMode == ALTMODE_ABSOLUTE )
+    {
+        return _srs->transformToWorld( _p, out_world );
+    }
+    else if ( terrain != 0L )
+    {
+        GeoPoint absPoint = *this;
+        absPoint.makeAbsolute( terrain );
+        return absPoint.toWorld( out_world );
+    }
+    else
+    {
+        OE_WARN << LC << "ILLEGAL: called GeoPoint::toWorld with AltitudeMode = RELATIVE_TO_TERRAIN" << std::endl;
+        return false;
+    }
 }
 
-osg::Vec2d
-Bounds::center2d() const {
-    osg::Vec3d c = center();
-    return osg::Vec2d( c.x(), c.y() );
+
+bool
+GeoPoint::fromWorld(const SpatialReference* srs, const osg::Vec3d& world)
+{
+    if ( srs )
+    {
+        osg::Vec3d p;
+        if ( srs->transformFromWorld(world, p) )
+        {
+            set( srs, p, ALTMODE_ABSOLUTE );
+            return true;
+        }
+    }
+    return false;
 }
 
-double
-Bounds::radius2d() const {
-    return (center2d() - osg::Vec2d(xMin(),yMin())).length();
+bool
+GeoPoint::createLocalToWorld( osg::Matrixd& out_l2w ) const
+{
+    if ( !isValid() ) return false;
+    if ( _altMode != ALTMODE_ABSOLUTE )
+    {
+        OE_WARN << LC << "ILLEGAL: called GeoPoint::createLocal2World with AltitudeMode = RELATIVE_TO_TERRAIN" << std::endl;
+        return false;
+    }
+    return _srs->createLocalToWorld( _p, out_l2w );
 }
 
-std::string
-Bounds::toString() const {
-    std::stringstream buf;
-    buf << "(" << xMin() << "," << yMin() << " => " << xMax() << "," << yMax() << ")";
-    std::string result = buf.str();
-    return result;
+bool
+GeoPoint::createWorldToLocal( osg::Matrixd& out_w2l ) const
+{
+    if ( !isValid() ) return false;
+    if ( _altMode != ALTMODE_ABSOLUTE )
+    {
+        OE_WARN << LC << "ILLEGAL: called GeoPoint::createLocal2World with AltitudeMode = RELATIVE_TO_TERRAIN" << std::endl;
+        return false;
+    }
+    return _srs->createWorldToLocal( _p, out_w2l );
 }
 
-void
-Bounds::transform( const SpatialReference* from, const SpatialReference* to )
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[GeoCircle] "
+
+GeoCircle GeoCircle::INVALID = GeoCircle();
+
+
+GeoCircle::GeoCircle() :
+_center( GeoPoint::INVALID ),
+_radius( -1.0 )
+{
+    //nop
+}
+
+
+GeoCircle::GeoCircle(const GeoCircle& rhs) :
+_center( rhs._center ),
+_radius( rhs._radius )
+{
+    //nop
+}
+
+
+GeoCircle::GeoCircle(const GeoPoint& center,
+                     double          radius ) :
+_center( center ),
+_radius( radius )
+{
+    //nop
+}
+
+
+bool
+GeoCircle::operator == ( const GeoCircle& rhs ) const
+{
+    return 
+        _center == rhs._center && 
+        osg::equivalent(_radius, rhs._radius);
+}
+
+
+GeoCircle
+GeoCircle::transform( const SpatialReference* srs ) const
 {
-    from->transformExtent( to, _min.x(), _min.y(), _max.x(), _max.y() );
+    return GeoCircle(
+        getCenter().transform( srs ),
+        getRadius() );
 }
 
-/*************************************************************/
+
+bool
+GeoCircle::transform( const SpatialReference* srs, GeoCircle& output ) const
+{
+    output._radius = _radius;
+    return getCenter().transform( srs, output._center );
+}
+
+
+bool 
+GeoCircle::intersects( const GeoCircle& rhs ) const
+{
+    if ( !isValid() || !rhs.isValid() )
+        return false;
+
+    if ( !getSRS()->isHorizEquivalentTo( rhs.getSRS() ) )
+    {
+        return intersects( rhs.transform(getSRS()) );
+    }
+    else
+    {
+        if ( getSRS()->isProjected() )
+        {
+            osg::Vec2d vec = osg::Vec2d(_center.x(), _center.y()) - osg::Vec2d(rhs.getCenter().x(), rhs.getCenter().y());
+            return vec.length2() <= (_radius + rhs.getRadius())*(_radius + rhs.getRadius());
+        }
+        else // if ( isGeographic() )
+        {
+            osg::Vec3d p0( _center.x(), _center.y(), 0.0 );
+            osg::Vec3d p1( rhs.getCenter().x(), rhs.getCenter().y(), 0.0 );
+            return GeoMath::distance( p0, p1, getSRS() ) <= (_radius + rhs.getRadius());
+        }
+    }
+}
+
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[GeoExtent] "
 
 GeoExtent GeoExtent::INVALID = GeoExtent();
 
 
 GeoExtent::GeoExtent():
-_xmin(FLT_MAX),
-_ymin(FLT_MAX),
-_xmax(-FLT_MAX),
-_ymax(-FLT_MAX)
+_west   ( DBL_MAX ),
+_east   ( DBL_MAX ),
+_south  ( DBL_MAX ),
+_north  ( DBL_MAX )
 {
     //NOP - invalid
 }
 
-GeoExtent::GeoExtent(const SpatialReference* srs,
-                     double xmin, double ymin, double xmax, double ymax) :
-_srs( srs ),
-_xmin(xmin),_ymin(ymin),_xmax(xmax),_ymax(ymax)
+GeoExtent::GeoExtent(const SpatialReference* srs) :
+_srs    ( srs ),
+_west   ( DBL_MAX ),
+_east   ( DBL_MAX ),
+_south  ( DBL_MAX ),
+_north  ( DBL_MAX )
 {
-    //NOP
+    //nop
+}
+
+GeoExtent::GeoExtent(const SpatialReference* srs,
+                     double west, double south, double east, double north ) :
+_srs    ( srs ),
+_west   ( west ),
+_east   ( east ),
+_south  ( south ),
+_north  ( north )
+{    
+    recomputeCircle();
 }
 
 
 GeoExtent::GeoExtent( const SpatialReference* srs, const Bounds& bounds ) :
-_srs( srs ),
-_xmin( bounds.xMin() ),
-_ymin( bounds.yMin() ),
-_xmax( bounds.xMax() ),
-_ymax( bounds.yMax() )
-{
-    //nop
+_srs    ( srs ),
+_west   ( bounds.xMin() ),
+_east   ( bounds.xMax() ),
+_south  ( bounds.yMin() ),
+_north  ( bounds.yMax() )
+{    
+    recomputeCircle();
 }
 
 GeoExtent::GeoExtent( const GeoExtent& rhs ) :
-_srs( rhs._srs ),
-_xmin( rhs._xmin ), _ymin( rhs._ymin ), _xmax( rhs._xmax ), _ymax( rhs._ymax )
+_srs   ( rhs._srs ),
+_east  ( rhs._east ),
+_west  ( rhs._west ),
+_south ( rhs._south ),
+_north ( rhs._north ),
+_circle( rhs._circle )
 {
     //NOP
 }
@@ -216,13 +585,14 @@ GeoExtent::operator == ( const GeoExtent& rhs ) const
     if ( !isValid() && !rhs.isValid() )
         return true;
 
-    else return
-        isValid() && rhs.isValid() &&
-        _xmin == rhs._xmin &&
-        _ymin == rhs._ymin &&
-        _xmax == rhs._xmax &&
-        _ymax == rhs._ymax &&
-        _srs.valid() && rhs._srs.valid() &&
+    if ( !isValid() || !rhs.isValid() )
+        return false;
+
+    return
+        west()  == rhs.west()  &&
+        east()  == rhs.east()  &&
+        south() == rhs.south() &&
+        north() == rhs.north() &&
         _srs->isEquivalentTo( rhs._srs.get() );
 }
 
@@ -235,65 +605,80 @@ GeoExtent::operator != ( const GeoExtent& rhs ) const
 bool
 GeoExtent::isValid() const
 {
-    return _srs.valid() && width() > 0 && height() > 0;
-}
-
-const SpatialReference*
-GeoExtent::getSRS() const {
-    return _srs.get(); 
+    return 
+        _srs.valid()       && 
+        _east  != DBL_MAX  &&
+        _west  != DBL_MAX  &&
+        _north != DBL_MAX  &&
+        _south != DBL_MAX;
 }
 
 double
 GeoExtent::width() const
-{
-    return crossesDateLine()?
-        (180-_xmin) + (_xmax+180) :
-        _xmax - _xmin;
+{    
+    return crossesAntimeridian() ?
+        (180.0-_west) + (_east+180.0) :
+        _east - _west;
 }
 
 double
 GeoExtent::height() const
 {
-    return _ymax - _ymin;
+    return _north - _south;
 }
 
-void
+bool
 GeoExtent::getCentroid( double& out_x, double& out_y ) const
 {
-    out_x = _xmin+width()/2.0;
-    out_y = _ymin+height()/2.0;
+    if ( isInvalid() ) return false;
+
+    out_y = south() + 0.5*height();
+    out_x = west() + 0.5*width();
+
+    if ( _srs->isGeographic() )
+        out_x = normalizeLongitude( out_x );        
+    return true;
 }
 
 bool
-GeoExtent::crossesDateLine() const
+GeoExtent::crossesAntimeridian() const
 {
-    return _xmax < _xmin;
-    //return _srs.valid() && _srs->isGeographic() && _xmax < _xmin;
+    return _srs.valid() && _srs->isGeographic() && east() < west();
 }
 
 bool
-GeoExtent::splitAcrossDateLine( GeoExtent& out_first, GeoExtent& out_second ) const
+GeoExtent::splitAcrossAntimeridian( GeoExtent& out_west, GeoExtent& out_east ) const
 {
     bool success = false;
 
-    if ( crossesDateLine() )
+    if ( crossesAntimeridian() )
     {
-        if ( _srs->isGeographic() )
-        {
-            out_first = GeoExtent( _srs.get(), _xmin, _ymin, 180.0, _ymax );
-            out_second = GeoExtent( _srs.get(), -180.0, _ymin, _xmax, _ymax );
-            success = true;
-        }
-        else
+        double minLon, maxLon;
+        s_getLongitudeFrame( west(), minLon, maxLon );
+        out_west._srs   = _srs.get();
+        out_west._west  = west();
+        out_west._south = south();
+        out_west._east  = maxLon;
+        out_west._north = north();
+
+        out_east._srs   = _srs.get();
+        out_east._west  = minLon;
+        out_east._south = south();
+        out_east._east  = east();
+        out_east._north = north();
+
+        success = true;
+    }
+    else if ( !_srs->isGeographic() )
+    {
+        //note: may not actually work.
+        GeoExtent latlong_extent = transform( _srs->getGeographicSRS() );
+        GeoExtent w, e;
+        if ( latlong_extent.splitAcrossAntimeridian( w, e ) )
         {
-            GeoExtent latlong_extent = transform( _srs->getGeographicSRS() );
-            GeoExtent first, second;
-            if ( latlong_extent.splitAcrossDateLine( first, second ) )
-            {
-                out_first = first.transform( _srs.get() );
-                out_second = second.transform( _srs.get() );
-                success = out_first.isValid() && out_second.isValid();
-            }
+            out_west = w.transform( _srs.get() );
+            out_east = e.transform( _srs.get() );
+            success = out_west.isValid() && out_east.isValid();
         }
     }
     return success;
@@ -302,12 +687,13 @@ GeoExtent::splitAcrossDateLine( GeoExtent& out_first, GeoExtent& out_second ) co
 GeoExtent
 GeoExtent::transform( const SpatialReference* to_srs ) const 
 {       
+    //TODO: this probably doesn't work across the antimeridian
     if ( _srs.valid() && to_srs )
     {
-        double xmin = _xmin, ymin = _ymin;
-        double xmax = _xmax, ymax = _ymax;
+        double xmin = west(), ymin = south();
+        double xmax = east(), ymax = north();
         
-        if ( _srs->transformExtent( to_srs, xmin, ymin, xmax, ymax ) )
+        if ( _srs->transformExtentToMBR( to_srs, xmin, ymin, xmax, ymax ) )
         {
             return GeoExtent( to_srs, xmin, ymin, xmax, ymax );
         }
@@ -319,93 +705,331 @@ GeoExtent::transform( const SpatialReference* to_srs ) const
 void
 GeoExtent::getBounds(double &xmin, double &ymin, double &xmax, double &ymax) const
 {
-    xmin = _xmin;
-    ymin = _ymin;
-    xmax = _xmax;
-    ymax = _ymax;
+    xmin = west();
+    ymin = south();
+    xmax = east();
+    ymax = north();
 }
 
 Bounds
 GeoExtent::bounds() const
 {
-    return Bounds( _xmin, _ymin, _xmax, _ymax );
+    return Bounds( _west, _south, _east, _north );
 }
 
-//TODO:: support crossesDateLine!
 bool
 GeoExtent::contains(double x, double y, const SpatialReference* srs) const
 {
+    if ( isInvalid() )
+        return false;
+
     double local_x = x, local_y = y;
+
+    osg::Vec3d xy( x, y, 0 );
+    osg::Vec3d localxy = xy;
+
     if (srs &&
         !srs->isEquivalentTo( _srs.get() ) &&
-        !srs->transform2D(x, y, _srs.get(), local_x, local_y) )
+        !srs->transform(xy, _srs.get(), localxy) )
     {
         return false;
     }
     else
     {
+        // normalize a geographic longitude to -180:+180
+        if ( _srs->isGeographic() )
+            local_x = normalizeLongitude( local_x );            
+
         //Account for small rounding errors along the edges of the extent
-        if (osg::equivalent(_xmin, local_x)) local_x = _xmin;
-        if (osg::equivalent(_xmax, local_x)) local_x = _xmax;
-        if (osg::equivalent(_ymin, local_y)) local_y = _ymin;
-        if (osg::equivalent(_ymax, local_y)) local_y = _ymax;
-        return local_x >= _xmin && local_x <= _xmax && local_y >= _ymin && local_y <= _ymax;
+        if (osg::equivalent(_west, local_x)) local_x = _west;
+        if (osg::equivalent(_east, local_x)) local_x = _east;
+        if (osg::equivalent(_south, local_y)) local_y = _south;
+        if (osg::equivalent(_north, local_y)) local_y = _north;
+
+        if ( crossesAntimeridian() )
+        {
+            if ( local_x > 0.0 )
+            {
+                return local_x >= _west && local_x <= 180.0 && local_y >= _south && local_y <= _north;
+            }
+            else
+            {
+                return local_x >= -180.0 && local_x <= _east && local_y >= _south && local_y <= _north;
+            }
+        }
+        else
+        {
+            return local_x >= _west && local_x <= _east && local_y >= _south && local_y <= _north;
+        }
     }
 }
 
 bool
+GeoExtent::contains( const GeoPoint& rhs ) const
+{
+    return contains( rhs.x(), rhs.y(), rhs.getSRS() );
+}
+
+bool
 GeoExtent::contains( const Bounds& rhs ) const
 {
-    return 
-        rhs.xMin() >= _xmin &&
-        rhs.yMin() >= _ymin &&
-        rhs.xMax() <= _xmax &&
-        rhs.yMax() <= _ymax;
+    return
+        isValid() &&
+        rhs.isValid() &&
+        contains( rhs.xMin(), rhs.yMin() ) &&
+        contains( rhs.xMax(), rhs.yMax() ) &&
+        contains( rhs.center() );
 }
 
 bool
-GeoExtent::intersects( const GeoExtent& rhs ) const
+GeoExtent::contains( const GeoExtent& rhs ) const
 {
-    bool valid = isValid();
-    if ( !valid ) return false;
-    bool exclusive =
-        _xmin > rhs.xMax() ||
-        _xmax < rhs.xMin() ||
-        _ymin > rhs.yMax() ||
-        _ymax < rhs.yMin();
-    return !exclusive;
+    return
+        isValid() &&
+        rhs.isValid() &&
+        contains( rhs.west(), rhs.south() ) &&
+        contains( rhs.east(), rhs.north() ) &&
+        contains( rhs.getCentroid() );   // this accounts for the antimeridian
 }
 
+bool
+GeoExtent::intersects( const GeoExtent& rhs, bool checkSRS ) const
+{
+    if ( !isValid() || !rhs.isValid() )
+        return false;
+
+    if ( checkSRS && !_srs->isHorizEquivalentTo(rhs.getSRS()) )
+    {
+        GeoExtent rhsExt = rhs.transform(getSRS());
+        return this->intersects( rhsExt );
+    }
+
+    if ( rhs.crossesAntimeridian() )
+    {
+        GeoExtent rhsWest, rhsEast;
+        rhs.splitAcrossAntimeridian( rhsWest, rhsEast );
+        return rhsWest.intersects(*this) || rhsEast.intersects(*this);
+    }
+    else if ( crossesAntimeridian() )
+    {
+        GeoExtent west, east;
+        splitAcrossAntimeridian(west, east);
+        return rhs.intersects(west) || rhs.intersects(east);
+    }
+    else
+    {
+        bool exclusive =
+            _west >= rhs.east() ||
+            _east <= rhs.west() ||
+            _south >= rhs.north() ||
+            _north <= rhs.south();
+
+        return !exclusive;
+    }
+}
+
+
+void
+GeoExtent::recomputeCircle()
+{
+    if ( !isValid() )
+    {
+        _circle.setRadius( -1.0 );
+    }
+    else 
+    {
+        double x, y;
+        getCentroid( x, y );
+
+        if ( getSRS()->isProjected() )
+        {
+            _circle.setRadius( (osg::Vec2d(x,y)-osg::Vec2d(_west,_south)).length() );
+        }
+        else // isGeographic
+        {
+            // find the longest east-west edge.
+            double cx = west();
+            double cy =
+                north() > 0.0 && south() > 0.0 ? south() :
+                north() < 0.0 && south() < 0.0 ? north() :
+                north() < fabs(south()) ? north() : south();
+
+            osg::Vec3d p0(x, y, 0.0);
+            osg::Vec3d p1(cx, cy, 0.0);
+
+            _circle.setRadius( GeoMath::distance(p0, p1, getSRS()) );
+        }
+
+        _circle.setCenter( GeoPoint(getSRS(), x, y, 0.0, ALTMODE_ABSOLUTE) );
+    }
+}
+
+
 void
 GeoExtent::expandToInclude( double x, double y )
 {
-    if ( x < _xmin ) _xmin = x;
-    if ( x > _xmax ) _xmax = x;
-    if ( y < _ymin ) _ymin = y;
-    if ( y > _ymax ) _ymax = y;
+    if ( west() == DBL_MAX )
+    {
+        _west = x;
+        _east = x;
+        _south = y;
+        _north = y;
+    }
+    else if ( getSRS() && getSRS()->isGeographic() )
+    {
+        x = normalizeLongitude( x );
+
+        // calculate possible expansion distances. The lesser of the two
+        // will be the direction in which we expand.
+
+        // west:
+        double dw;
+        if ( x > west() )
+            dw = west() - (x-360.);
+        else
+            dw = west() - x;
+
+        // east:
+        double de;
+        if ( x < east() )
+            de = (x+360.) - east();
+        else
+            de = x - east();
+
+        // this is the empty space available - growth beyond this 
+        // automatically yields full extent [-180..180]
+        double maxWidth = 360.0-width();
+
+        // if both are > 180, then the point is already in our extent.
+        if ( dw <= 180. || de <= 180. )
+        {
+            if ( dw < de )
+            {
+                if ( dw < maxWidth )
+                {
+                    // expand westward
+                    _west -= dw;                    
+                    _west = normalizeLongitude( _west );
+                }
+                else
+                {
+                    // reached full extent
+                    _west = -180.0;
+                    _east =  180.0;
+                }
+            }
+            else
+            {
+                if ( de < maxWidth )
+                {
+                    // expand eastward
+                    _east += de;
+                    _east = normalizeLongitude(_east);
+                }
+                else
+                {
+                    // reached full extent.
+                    _west = -180.0;
+                    _east =  180.0;
+                }
+            }
+        }
+        //else already inside longitude extent
+    }
+    else
+    {
+        _west = std::min(_west, x);
+        _east = std::max(_east, x);
+    }
+
+    _south = std::min(_south, y);
+    _north = std::max(_north, y);
+
+    recomputeCircle();
 }
 
-void GeoExtent::expandToInclude(const Bounds& rhs)
+void
+GeoExtent::expandToInclude(const Bounds& rhs)
 {
+    expandToInclude( rhs.center() );
     expandToInclude( rhs.xMin(), rhs.yMin() );
     expandToInclude( rhs.xMax(), rhs.yMax() );
 }
 
+bool
+GeoExtent::expandToInclude( const GeoExtent& rhs )
+{
+    if ( isInvalid() || rhs.isInvalid() ) return false;
+
+    if ( !rhs.getSRS()->isEquivalentTo( _srs.get() ) )
+    {
+        return expandToInclude( transform(rhs.getSRS()) );
+    }
+    else
+    {
+        // include the centroid first in order to honor an 
+        // antimeridian-crossing profile
+        expandToInclude( rhs.getCentroid() );
+        expandToInclude( rhs.west(), rhs.south() );
+        expandToInclude( rhs.east(), rhs.north() );
+        return true;
+    }
+}
+
 GeoExtent
-GeoExtent::intersectionSameSRS( const Bounds& rhs ) const
+GeoExtent::intersectionSameSRS( const GeoExtent& rhs ) const
 {
-    Bounds b(
-        osg::maximum( xMin(), rhs.xMin() ),
-        osg::maximum( yMin(), rhs.yMin() ),
-        osg::minimum( xMax(), rhs.xMax() ),
-        osg::minimum( yMax(), rhs.yMax() ) );
+    if ( isInvalid() || rhs.isInvalid() || !_srs->isEquivalentTo( rhs.getSRS() ) )
+        return GeoExtent::INVALID;
 
-    return b.width() > 0 && b.height() > 0 ? GeoExtent( getSRS(), b ) : GeoExtent::INVALID;
+    if ( !intersects(rhs) )
+    {
+        OE_DEBUG << "Extents " << toString() << " and " << rhs.toString() << " do not intersect."
+            << std::endl;
+        return GeoExtent::INVALID;
+    }
+
+    GeoExtent result( *this );
+
+    double westAngle, eastAngle;
+    
+    // see if the rhs western boundary intersects our extent:
+    westAngle = s_westToEastLongitudeDistance( west(), rhs.west() );
+    eastAngle = s_westToEastLongitudeDistance( rhs.west(), east() );
+    if ( westAngle < width() && eastAngle < width() ) // yes, so adjust the result eastward:
+    {
+        result._west += westAngle;
+    }
+
+    // now see if the rhs eastern boundary intersects out extent:
+    westAngle = s_westToEastLongitudeDistance( west(), rhs.east() );
+    eastAngle = s_westToEastLongitudeDistance( rhs.east(), east() );
+    if ( westAngle < width() && eastAngle < width() ) // yes, so adjust again:
+    {
+        result._east -= eastAngle;
+    }
+
+    // normalize our new longitudes
+    result._west = normalizeLongitude( result._west );
+    result._east = normalizeLongitude( result._east );
+
+    // latitude is easy, just clamp it
+    result._south = std::max( south(), rhs.south() );
+    result._north = std::min( north(), rhs.north() );
+
+    OE_DEBUG << "Intersection of " << this->toString() << " and " << rhs.toString() << " is: " 
+        << result.toString()
+        << std::endl;
+
+    return result;
 }
 
 void
 GeoExtent::scale(double x_scale, double y_scale)
 {
+    if ( isInvalid() )
+        return;
+
     double orig_width = width();
     double orig_height = height();
 
@@ -415,25 +1039,54 @@ GeoExtent::scale(double x_scale, double y_scale)
     double halfXDiff = (new_width - orig_width) / 2.0;
     double halfYDiff = (new_height - orig_height) /2.0;
 
-    _xmin -= halfXDiff;
-    _xmax += halfXDiff;
-    _ymin -= halfYDiff;
-    _ymax += halfYDiff;
+    _west  -= halfXDiff;
+    _east  += halfXDiff;
+    _south -= halfYDiff;
+    _north += halfYDiff;
+
+    recomputeCircle();
 }
 
 void
 GeoExtent::expand( double x, double y )
 {
-    _xmin -= .5*x;
-    _xmax += .5*x;
-    _ymin -= .5*y;
-    _ymax += .5*y;
+    if ( isInvalid() )
+        return;
+
+    _west  -= .5*x;
+    _east  += .5*x;
+    _south -= .5*y;
+    _north += .5*y;
+
+    recomputeCircle();
 }
 
 double
 GeoExtent::area() const
 {
-    return width() * height();
+    return isValid() ? width() * height() : 0.0;
+}
+
+void
+GeoExtent::normalize()
+{
+    if (isValid() && _srs->isGeographic())
+    {
+        _west = s_normalizeLongitude( _west );
+        _east = s_normalizeLongitude( _east );
+    }
+}
+
+double
+GeoExtent::normalizeLongitude( double longitude ) const
+{
+    if (isValid() && _srs->isGeographic())
+    {
+        double minLon, maxLon;
+        s_getLongitudeFrame( _west, minLon, maxLon );        
+        return s_normalizeLongitude( longitude, minLon, maxLon );
+    }
+    return longitude;
 }
 
 std::string
@@ -443,45 +1096,58 @@ GeoExtent::toString() const
     if ( !isValid() )
         buf << "INVALID";
     else
-        buf << "MIN=" << _xmin << "," << _ymin << " MAX=" << _xmax << "," << _ymax;
+        buf << std::setprecision(12) << "SW=" << west() << "," << south() << " NE=" << east() << "," << north();
 
-    buf << ", SRS=" << _srs->getName();
+    if (_srs.valid() == true)
+    {
+        buf << ", SRS=" << _srs->getName();
+    }
+    else
+    {
+        buf << ", SRS=NULL";
+    }
 
-	std::string bufStr;
-	bufStr = buf.str();
+    std::string bufStr;
+    bufStr = buf.str();
     return bufStr;
 }
 
 
 /***************************************************************************/
 
-DataExtent::DataExtent(const osgEarth::GeoExtent &extent, unsigned int minLevel,  unsigned int maxLevel):
-GeoExtent(extent),
-_minLevel(minLevel),
-_maxLevel(maxLevel)
+DataExtent::DataExtent(const osgEarth::GeoExtent& extent, unsigned minLevel,  unsigned maxLevel) :
+GeoExtent(extent)
 {
+    _minLevel = minLevel;
+    _maxLevel = maxLevel;
 }
 
-unsigned int
-DataExtent::getMinLevel() const
+DataExtent::DataExtent(const osgEarth::GeoExtent& extent, unsigned minLevel) :
+GeoExtent(extent),
+_maxLevel( 0 )
 {
-    return _minLevel;
+    _minLevel = minLevel;
 }
 
-unsigned int
-DataExtent::getMaxLevel() const
+DataExtent::DataExtent(const osgEarth::GeoExtent& extent ) :
+GeoExtent(extent),
+_minLevel( 0 ),
+_maxLevel( 0 )
 {
-    return _maxLevel;
+    //nop
 }
 
 
 /***************************************************************************/
 
+#undef  LC
+#define LC "[GeoImage] "
+
 // static
 GeoImage GeoImage::INVALID( 0L, GeoExtent::INVALID );
 
 GeoImage::GeoImage() :
-_image(0L),
+_image ( 0L ),
 _extent( GeoExtent::INVALID )
 {
     //nop
@@ -492,7 +1158,16 @@ GeoImage::GeoImage( osg::Image* image, const GeoExtent& extent ) :
 _image(image),
 _extent(extent)
 {
-    //NOP
+    if ( _image.valid() && extent.isInvalid() )
+    {
+        OE_WARN << LC << "ILLEGAL: created a GeoImage with a valid image and an invalid extent" << std::endl;
+    }
+}
+
+bool
+GeoImage::valid() const 
+{
+    return _image.valid() && _extent.isValid();
 }
 
 osg::Image*
@@ -531,11 +1206,13 @@ GeoImage::crop( const GeoExtent& extent, bool exact, unsigned int width, unsigne
             //Suggest an output image size
             if (width == 0 || height == 0)
             {
-                double xRes = (getExtent().xMax() - getExtent().xMin()) / (double)_image->s();
-                double yRes = (getExtent().yMax() - getExtent().yMin()) / (double)_image->t();
+                double xRes = getExtent().width() / (double)_image->s(); //(getExtent().xMax() - getExtent().xMin()) / (double)_image->s();
+                double yRes = getExtent().height() / (double)_image->t(); //(getExtent().yMax() - getExtent().yMin()) / (double)_image->t();
 
-                width =  osg::maximum(1u, (unsigned int)((extent.xMax() - extent.xMin()) / xRes));
-                height = osg::maximum(1u, (unsigned int)((extent.yMax() - extent.yMin()) / yRes));
+                width =  osg::maximum(1u, (unsigned int)(extent.width() / xRes));
+                height = osg::maximum(1u, (unsigned int)(extent.height() / yRes));
+                //width =  osg::maximum(1u, (unsigned int)((extent.xMax() - extent.xMin()) / xRes));
+                //height = osg::maximum(1u, (unsigned int)((extent.yMax() - extent.yMin()) / yRes));
 
                 OE_DEBUG << "[osgEarth::GeoImage::crop] Computed output image size " << width << "x" << height << std::endl;
             }
@@ -702,7 +1379,6 @@ reprojectImage(osg::Image* srcImage, const std::string srcWKT, double srcMinX, d
                const std::string destWKT, double destMinX, double destMinY, double destMaxX, double destMaxY,
                int width = 0, int height = 0)
 {
-    //OE_NOTICE << "Reprojecting..." << std::endl;
     GDAL_SCOPED_LOCK;
 	osg::Timer_t start = osg::Timer::instance()->tick();
 
@@ -748,180 +1424,194 @@ reprojectImage(osg::Image* srcImage, const std::string srcWKT, double srcMinX, d
     return result;
 }    
 
-static osg::Image*
-manualReproject(const osg::Image* image, const GeoExtent& src_extent, const GeoExtent& dest_extent,
-                unsigned int width = 0, unsigned int height = 0)
+namespace
 {
-    //TODO:  Compute the optimal destination size
-    if (width == 0 || height == 0)
+    osg::Image* manualReproject(
+        const osg::Image* image, 
+        const GeoExtent&  src_extent, 
+        const GeoExtent&  dest_extent,
+        unsigned int      width = 0, 
+        unsigned int      height = 0)
     {
-        //If no width and height are specified, just use the minimum dimension for the image
-        width = osg::minimum(image->s(), image->t());
-        height = osg::minimum(image->s(), image->t());        
-    }
-
-    // need to know this in order to choose the right interpolation algorithm
-    const bool isSrcContiguous = src_extent.getSRS()->isContiguous();
-
-    osg::Image *result = new osg::Image();
-    result->allocateImage(width, height, 1, GL_RGBA, GL_UNSIGNED_BYTE);
-    //Initialize the image to be completely transparent
-    memset(result->data(), 0, result->getImageSizeInBytes());
-
-    ImageUtils::PixelReader ra(result);
-    const double dx = dest_extent.width() / (double)width;
-    const double dy = dest_extent.height() / (double)height;
-
-    // offset the sample points by 1/2 a pixel so we are sampling "pixel center".
-    // (This is especially useful in the UnifiedCubeProfile since it nullifes the chances for
-    // edge ambiguity.)
-
-    unsigned int numPixels = width * height;
-
-    // Start by creating a sample grid over the destination
-    // extent. These will be the source coordinates. Then, reproject
-    // the sample grid into the source coordinate system.
-    double *srcPointsX = new double[numPixels * 2];
-    double *srcPointsY = srcPointsX + numPixels;
-    dest_extent.getSRS()->transformExtentPoints(
-        src_extent.getSRS(),
-        dest_extent.xMin() + .5 * dx, dest_extent.yMin() + .5 * dy,
-        dest_extent.xMax() - .5 * dx, dest_extent.yMax() - .5 * dy,
-        srcPointsX, srcPointsY, width, height, 0, true);
-
-    // Next, go through the source-SRS sample grid, read the color at each point from the source image,
-    // and write it to the corresponding pixel in the destination image.
-    int pixel = 0;
-    ImageUtils::PixelReader ia(image);
-    double xfac = (image->s() - 1) / src_extent.width();
-    double yfac = (image->t() - 1) / src_extent.height();
-    for (unsigned int c = 0; c < width; ++c)
-    {
-        for (unsigned int r = 0; r < height; ++r)
-        {   
-            double src_x = srcPointsX[pixel];
-            double src_y = srcPointsY[pixel];
-
-            if ( src_x < src_extent.xMin() || src_x > src_extent.xMax() || src_y < src_extent.yMin() || src_y > src_extent.yMax() )
-            {
-                //If the sample point is outside of the bound of the source extent, increment the pixel and keep looping through.
-                //OE_WARN << LC << "ERROR: sample point out of bounds: " << src_x << ", " << src_y << std::endl;
-                pixel++;
-                continue;
-            }
+        //TODO:  Compute the optimal destination size
+        if (width == 0 || height == 0)
+        {
+            //If no width and height are specified, just use the minimum dimension for the image
+            width = osg::minimum(image->s(), image->t());
+            height = osg::minimum(image->s(), image->t());
+        }
 
-            float px = (src_x - src_extent.xMin()) * xfac;
-            float py = (src_y - src_extent.yMin()) * yfac;
+        // need to know this in order to choose the right interpolation algorithm
+        const bool isSrcContiguous = src_extent.getSRS()->isContiguous();
+
+        osg::Image *result = new osg::Image();
+        //result->allocateImage(width, height, 1, GL_RGBA, GL_UNSIGNED_BYTE);
+        result->allocateImage(width, height, 1, image->getPixelFormat(), GL_UNSIGNED_BYTE);
+
+        //Initialize the image to be completely transparent/black
+        memset(result->data(), 0, result->getImageSizeInBytes());
+
+        //ImageUtils::PixelReader ra(result);
+        ImageUtils::PixelWriter writer(result);
+        const double dx = dest_extent.width() / (double)width;
+        const double dy = dest_extent.height() / (double)height;
+
+        // offset the sample points by 1/2 a pixel so we are sampling "pixel center".
+        // (This is especially useful in the UnifiedCubeProfile since it nullifes the chances for
+        // edge ambiguity.)
+
+        unsigned int numPixels = width * height;
+
+        // Start by creating a sample grid over the destination
+        // extent. These will be the source coordinates. Then, reproject
+        // the sample grid into the source coordinate system.
+        double *srcPointsX = new double[numPixels * 2];
+        double *srcPointsY = srcPointsX + numPixels;
+        dest_extent.getSRS()->transformExtentPoints(
+            src_extent.getSRS(),
+            dest_extent.xMin() + .5 * dx, dest_extent.yMin() + .5 * dy,
+            dest_extent.xMax() - .5 * dx, dest_extent.yMax() - .5 * dy,
+            srcPointsX, srcPointsY, width, height);
+
+        // Next, go through the source-SRS sample grid, read the color at each point from the source image,
+        // and write it to the corresponding pixel in the destination image.
+        int pixel = 0;
+        ImageUtils::PixelReader ia(image);
+        double xfac = (image->s() - 1) / src_extent.width();
+        double yfac = (image->t() - 1) / src_extent.height();
+        for (unsigned int c = 0; c < width; ++c)
+        {
+            for (unsigned int r = 0; r < height; ++r)
+            {   
+                double src_x = srcPointsX[pixel];
+                double src_y = srcPointsY[pixel];
 
-            int px_i = osg::clampBetween( (int)osg::round(px), 0, image->s()-1 );
-            int py_i = osg::clampBetween( (int)osg::round(py), 0, image->t()-1 );
+                if ( src_x < src_extent.xMin() || src_x > src_extent.xMax() || src_y < src_extent.yMin() || src_y > src_extent.yMax() )
+                {
+                    //If the sample point is outside of the bound of the source extent, increment the pixel and keep looping through.
+                    //OE_WARN << LC << "ERROR: sample point out of bounds: " << src_x << ", " << src_y << std::endl;
+                    pixel++;
+                    continue;
+                }
 
-            osg::Vec4 color(0,0,0,0);
+                float px = (src_x - src_extent.xMin()) * xfac;
+                float py = (src_y - src_extent.yMin()) * yfac;
 
-            if ( ! isSrcContiguous ) // non-contiguous space- use nearest neighbot
-            {
-                color = ia(px_i, py_i);
-            }
+                int px_i = osg::clampBetween( (int)osg::round(px), 0, image->s()-1 );
+                int py_i = osg::clampBetween( (int)osg::round(py), 0, image->t()-1 );
 
-            else // contiguous space - use bilinear sampling
-            {
-                int rowMin = osg::maximum((int)floor(py), 0);
-                int rowMax = osg::maximum(osg::minimum((int)ceil(py), (int)(image->t()-1)), 0);
-                int colMin = osg::maximum((int)floor(px), 0);
-                int colMax = osg::maximum(osg::minimum((int)ceil(px), (int)(image->s()-1)), 0);
-
-                if (rowMin > rowMax) rowMin = rowMax;
-                if (colMin > colMax) colMin = colMax;
-
-                osg::Vec4 urColor = ia(colMax, rowMax);
-                osg::Vec4 llColor = ia(colMin, rowMin);
-                osg::Vec4 ulColor = ia(colMin, rowMax);
-                osg::Vec4 lrColor = ia(colMax, rowMin);
-
-                /*Average Interpolation*/
-                /*double x_rem = px - (int)px;
-                double y_rem = py - (int)py;
-
-                double w00 = (1.0 - y_rem) * (1.0 - x_rem);
-                double w01 = (1.0 - y_rem) * x_rem;
-                double w10 = y_rem * (1.0 - x_rem);
-                double w11 = y_rem * x_rem;
-                double wsum = w00 + w01 + w10 + w11;
-                wsum = 1.0/wsum;
-
-                color.r() = (w00 * llColor.r() + w01 * lrColor.r() + w10 * ulColor.r() + w11 * urColor.r()) * wsum;
-                color.g() = (w00 * llColor.g() + w01 * lrColor.g() + w10 * ulColor.g() + w11 * urColor.g()) * wsum;
-                color.b() = (w00 * llColor.b() + w01 * lrColor.b() + w10 * ulColor.b() + w11 * urColor.b()) * wsum;
-                color.a() = (w00 * llColor.a() + w01 * lrColor.a() + w10 * ulColor.a() + w11 * urColor.a()) * wsum;*/
-
-                /*Nearest Neighbor Interpolation*/
-                /*if (px_i >= 0 && px_i < image->s() &&
-                py_i >= 0 && py_i < image->t())
-                {
-                //OE_NOTICE << "[osgEarth::GeoData] Sampling pixel " << px << "," << py << std::endl;
-                color = ImageUtils::getColor(image, px_i, py_i);
-                }
-                else
-                {
-                OE_NOTICE << "[osgEarth::GeoData] Pixel out of range " << px_i << "," << py_i << "  image is " << image->s() << "x" << image->t() << std::endl;
-                }*/
+                osg::Vec4 color(0,0,0,0);
 
-                /*Bilinear interpolation*/
-                //Check for exact value
-                if ((colMax == colMin) && (rowMax == rowMin))
+                // TODO: consider this again later. Causes blockiness.
+                if ( false ) //! isSrcContiguous ) // non-contiguous space- use nearest neighbot
                 {
-                    //OE_NOTICE << "[osgEarth::GeoData] Exact value" << std::endl;
                     color = ia(px_i, py_i);
                 }
-                else if (colMax == colMin)
+
+                else // contiguous space - use bilinear sampling
                 {
-                    //OE_NOTICE << "[osgEarth::GeoData] Vertically" << std::endl;
-                    //Linear interpolate vertically
-                    for (unsigned int i = 0; i < 4; ++i)
+                    int rowMin = osg::maximum((int)floor(py), 0);
+                    int rowMax = osg::maximum(osg::minimum((int)ceil(py), (int)(image->t()-1)), 0);
+                    int colMin = osg::maximum((int)floor(px), 0);
+                    int colMax = osg::maximum(osg::minimum((int)ceil(px), (int)(image->s()-1)), 0);
+
+                    if (rowMin > rowMax) rowMin = rowMax;
+                    if (colMin > colMax) colMin = colMax;
+
+                    osg::Vec4 urColor = ia(colMax, rowMax);
+                    osg::Vec4 llColor = ia(colMin, rowMin);
+                    osg::Vec4 ulColor = ia(colMin, rowMax);
+                    osg::Vec4 lrColor = ia(colMax, rowMin);
+
+                    /*Average Interpolation*/
+                    /*double x_rem = px - (int)px;
+                    double y_rem = py - (int)py;
+
+                    double w00 = (1.0 - y_rem) * (1.0 - x_rem);
+                    double w01 = (1.0 - y_rem) * x_rem;
+                    double w10 = y_rem * (1.0 - x_rem);
+                    double w11 = y_rem * x_rem;
+                    double wsum = w00 + w01 + w10 + w11;
+                    wsum = 1.0/wsum;
+
+                    color.r() = (w00 * llColor.r() + w01 * lrColor.r() + w10 * ulColor.r() + w11 * urColor.r()) * wsum;
+                    color.g() = (w00 * llColor.g() + w01 * lrColor.g() + w10 * ulColor.g() + w11 * urColor.g()) * wsum;
+                    color.b() = (w00 * llColor.b() + w01 * lrColor.b() + w10 * ulColor.b() + w11 * urColor.b()) * wsum;
+                    color.a() = (w00 * llColor.a() + w01 * lrColor.a() + w10 * ulColor.a() + w11 * urColor.a()) * wsum;*/
+
+                    /*Nearest Neighbor Interpolation*/
+                    /*if (px_i >= 0 && px_i < image->s() &&
+                    py_i >= 0 && py_i < image->t())
                     {
-                        color[i] = ((float)rowMax - py) * llColor[i] + (py - (float)rowMin) * ulColor[i];
+                    //OE_NOTICE << "[osgEarth::GeoData] Sampling pixel " << px << "," << py << std::endl;
+                    color = ImageUtils::getColor(image, px_i, py_i);
                     }
-                }
-                else if (rowMax == rowMin)
-                {
-                    //OE_NOTICE << "[osgEarth::GeoData] Horizontally" << std::endl;
-                    //Linear interpolate horizontally
-                    for (unsigned int i = 0; i < 4; ++i)
+                    else
                     {
-                        color[i] = ((float)colMax - px) * llColor[i] + (px - (float)colMin) * lrColor[i];
+                    OE_NOTICE << "[osgEarth::GeoData] Pixel out of range " << px_i << "," << py_i << "  image is " << image->s() << "x" << image->t() << std::endl;
+                    }*/
+
+                    /*Bilinear interpolation*/
+                    //Check for exact value
+                    if ((colMax == colMin) && (rowMax == rowMin))
+                    {
+                        //OE_NOTICE << "[osgEarth::GeoData] Exact value" << std::endl;
+                        color = ia(px_i, py_i);
                     }
-                }
-                else
-                {
-                    //OE_NOTICE << "[osgEarth::GeoData] Bilinear" << std::endl;
-                    //Bilinear interpolate
-                    float col1 = colMax - px, col2 = px - colMin;
-                    float row1 = rowMax - py, row2 = py - rowMin;
-                    for (unsigned int i = 0; i < 4; ++i)
+                    else if (colMax == colMin)
                     {
-                        float r1 = col1 * llColor[i] + col2 * lrColor[i];
-                        float r2 = col1 * ulColor[i] + col2 * urColor[i];
-
-                        //OE_INFO << "r1, r2 = " << r1 << " , " << r2 << std::endl;
-                        color[i] = row1 * r1 + row2 * r2;
+                        //OE_NOTICE << "[osgEarth::GeoData] Vertically" << std::endl;
+                        //Linear interpolate vertically
+                        for (unsigned int i = 0; i < 4; ++i)
+                        {
+                            color[i] = ((float)rowMax - py) * llColor[i] + (py - (float)rowMin) * ulColor[i];
+                        }
+                    }
+                    else if (rowMax == rowMin)
+                    {
+                        //OE_NOTICE << "[osgEarth::GeoData] Horizontally" << std::endl;
+                        //Linear interpolate horizontally
+                        for (unsigned int i = 0; i < 4; ++i)
+                        {
+                            color[i] = ((float)colMax - px) * llColor[i] + (px - (float)colMin) * lrColor[i];
+                        }
+                    }
+                    else
+                    {
+                        //OE_NOTICE << "[osgEarth::GeoData] Bilinear" << std::endl;
+                        //Bilinear interpolate
+                        float col1 = colMax - px, col2 = px - colMin;
+                        float row1 = rowMax - py, row2 = py - rowMin;
+                        for (unsigned int i = 0; i < 4; ++i)
+                        {
+                            float r1 = col1 * llColor[i] + col2 * lrColor[i];
+                            float r2 = col1 * ulColor[i] + col2 * urColor[i];
+
+                            //OE_INFO << "r1, r2 = " << r1 << " , " << r2 << std::endl;
+                            color[i] = row1 * r1 + row2 * r2;
+                        }
                     }
                 }
-            }
-               
-            unsigned char* rgba = const_cast<unsigned char*>(ra.data(c,r,0));
 
-            rgba[0] = (unsigned char)(color.r() * 255);
-            rgba[1] = (unsigned char)(color.g() * 255);
-            rgba[2] = (unsigned char)(color.b() * 255);
-            rgba[3] = (unsigned char)(color.a() * 255);
+                writer(color, c, r);
+
+#if 0
+                unsigned char* rgba = const_cast<unsigned char*>(ra.data(c,r,0));
 
-            pixel++;            
+                rgba[0] = (unsigned char)(color.r() * 255);
+                rgba[1] = (unsigned char)(color.g() * 255);
+                rgba[2] = (unsigned char)(color.b() * 255);
+                rgba[3] = (unsigned char)(color.a() * 255);
+#endif
+
+                pixel++;            
+            }
         }
-    }
 
-    delete[] srcPointsX;
+        delete[] srcPointsX;
 
-    return result;
+        return result;
+    }
 }
 
 
@@ -941,9 +1631,12 @@ GeoImage::reproject(const SpatialReference* to_srs, const GeoExtent* to_extent,
 
     osg::Image* resultImage = 0L;
 
-    if ( getSRS()->isUserDefined() || to_srs->isUserDefined() ||
-        ( getSRS()->isMercator() && to_srs->isGeographic() ) ||
-        ( getSRS()->isGeographic() && to_srs->isMercator() ) )
+    if ( getSRS()->isUserDefined()      || 
+        to_srs->isUserDefined()         ||
+        getSRS()->isSphericalMercator() ||
+        to_srs->isSphericalMercator() )
+        //( getSRS()->isSphericalMercator() && to_srs->isGeographic() ) ||
+        //( getSRS()->isGeographic() && to_srs->isSphericalMercator() ) )
     {
         // if either of the SRS is a custom projection, we have to do a manual reprojection since
         // GDAL will not recognize the SRS.
@@ -971,25 +1664,31 @@ GeoImage::takeImage()
 
 /***************************************************************************/
 
+#undef  LC
+#define LC "[GeoHeightField] "
+
 // static
-GeoHeightField GeoHeightField::INVALID( 0L, GeoExtent::INVALID, 0L );
+GeoHeightField GeoHeightField::INVALID( 0L, GeoExtent::INVALID );
 
 GeoHeightField::GeoHeightField() :
 _heightField( 0L ),
-_extent( GeoExtent::INVALID ),
-_vsrs( 0L )
+_extent     ( GeoExtent::INVALID )
 {
     //nop
 }
 
 GeoHeightField::GeoHeightField(osg::HeightField* heightField,
-                               const GeoExtent& extent,
-                               const VerticalSpatialReference* vsrs) :
+                               const GeoExtent&  extent) :
 _heightField( heightField ),
-_extent( extent ),
-_vsrs( vsrs )
+_extent     ( extent )
 {
-    if ( _heightField )
+
+    if ( _heightField.valid() && extent.isInvalid() )
+    {
+        OE_WARN << LC << "Created with a valid heightfield AND INVALID extent" << std::endl;
+    }
+
+    else if ( _heightField )
     {
         double minx, miny, maxx, maxy;
         _extent.getBounds(minx, miny, maxx, maxy);
@@ -1002,58 +1701,66 @@ _vsrs( vsrs )
 }
 
 bool
-GeoHeightField::getElevation(const osgEarth::SpatialReference* inputSRS, 
-                             double x, double y, 
-                             ElevationInterpolation interp,
-                             const VerticalSpatialReference* outputVSRS,
-                             float &elevation) const
+GeoHeightField::valid() const
 {
-    double local_x = x, local_y = y;
+    return _heightField.valid() && _extent.isValid();
+}
+
+bool
+GeoHeightField::getElevation(const SpatialReference* inputSRS, 
+                             double                  x, 
+                             double                  y, 
+                             ElevationInterpolation  interp,
+                             const SpatialReference* outputSRS,
+                             float&                  out_elevation) const
+{
+    osg::Vec3d xy(x, y, 0);
+    osg::Vec3d local = xy;
+    const SpatialReference* extentSRS = _extent.getSRS();
+
 
-    if ( inputSRS && !inputSRS->transform2D(x, y, _extent.getSRS(), local_x, local_y) )
+    // first xform the input point into our local SRS:
+    if ( inputSRS && !inputSRS->transform(xy, extentSRS, local) )
         return false;
 
-    if ( _extent.contains(local_x, local_y) )
+    // check that the point falls within the heightfield bounds:
+    if ( _extent.contains(local.x(), local.y()) )
     {
         double xInterval = _extent.width()  / (double)(_heightField->getNumColumns()-1);
         double yInterval = _extent.height() / (double)(_heightField->getNumRows()-1);
 
-        elevation = HeightFieldUtils::getHeightAtLocation(
+        // sample the heightfield at the input coordinates:
+        // (note: since it's sampling the HF, it will return an MSL height if applicable)
+        out_elevation = HeightFieldUtils::getHeightAtLocation(
             _heightField.get(), 
-            local_x, local_y, 
+            local.x(), local.y(),
             _extent.xMin(), _extent.yMin(), 
             xInterval, yInterval, 
             interp);
 
-        if ( elevation != NO_DATA_VALUE )
+        // if the vertical datums don't match, do a conversion:
+        if ( out_elevation != NO_DATA_VALUE && !extentSRS->isVertEquivalentTo(outputSRS) )
         {
-            if ( VerticalSpatialReference::canTransform( _vsrs.get(), outputVSRS ) )
-            {
-                // need geodetic coordinates for a VSRS transformation:
-                double lat_deg, lon_deg, newElevation;
+            // if the caller provided a custom output SRS, perform the appropriate
+            // Z transformation. This requires a lat/long point:
 
-                if ( inputSRS->isGeographic() ) {
-                    lat_deg = y;
-                    lon_deg = x;
-                }
-                else if ( _extent.getSRS()->isGeographic() ) {
-                    lat_deg = local_y;
-                    lon_deg = local_x;
-                }
-                else {
-                    _extent.getSRS()->transform2D( x, y, inputSRS->getGeographicSRS(), lon_deg, lat_deg );
-                }
-
-                if ( _vsrs->transform( outputVSRS, lat_deg, lon_deg, elevation, newElevation ) )
-                    elevation = newElevation;
+            osg::Vec3d geolocal(local);
+            if ( !extentSRS->isGeographic() )
+            {
+                extentSRS->transform(geolocal, extentSRS->getGeographicSRS(), geolocal);
             }
+
+            VerticalDatum::transform(
+                extentSRS->getVerticalDatum(),
+                outputSRS ? outputSRS->getVerticalDatum() : 0L,
+                geolocal.y(), geolocal.x(), out_elevation);
         }
 
         return true;
     }
     else
     {
-        elevation = 0.0f;
+        out_elevation = 0.0f;
         return false;
     }
 }
@@ -1085,6 +1792,22 @@ GeoHeightField::createSubSample( const GeoExtent& destEx, ElevationInterpolation
     double x, y;
     int col, row;
 
+    double x0 = (destEx.xMin()-_extent.xMin())/_extent.width();
+    double y0 = (destEx.yMin()-_extent.yMin())/_extent.height();
+    double xstep = div/double(w-1);
+    double ystep = div/double(h-1);
+
+    for( x = x0, col = 0; col < w; x += xstep, col++ )
+    {
+        for( y = y0, row = 0; row < h; y += ystep, row++ )
+        {
+            float height = HeightFieldUtils::getHeightAtNormalizedLocation(
+                _heightField.get(), x, y, interpolation );
+            dest->setHeight( col, row, height );
+        }
+    }
+
+#if 0
     for( x = destEx.xMin(), col=0; col < w; x += dx, col++ )
     {
         for( y = destEx.yMin(), row=0; row < h; y += dy, row++ )
@@ -1093,11 +1816,12 @@ GeoHeightField::createSubSample( const GeoExtent& destEx, ElevationInterpolation
             dest->setHeight( col, row, height );
         }
     }
+#endif
 
     osg::Vec3d orig( destEx.xMin(), destEx.yMin(), _heightField->getOrigin().z() );
     dest->setOrigin( orig );
 
-    return GeoHeightField( dest, destEx, _vsrs.get() );
+    return GeoHeightField( dest, destEx ); // Q: is the VDATUM accounted for?
 }
 
 const GeoExtent&
@@ -1123,88 +1847,3 @@ GeoHeightField::takeHeightField()
 {
     return _heightField.release();
 }
-
-// --------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[Geoid] "
-
-Geoid::Geoid() :
-_hf( GeoHeightField::INVALID ),
-_units( Units::METERS ),
-_valid( false )
-{
-    //nop
-}
-
-void
-Geoid::setName( const std::string& name )
-{
-    _name = name;
-    validate();
-}
-
-void
-Geoid::setHeightField( const GeoHeightField& hf )
-{
-    _hf = hf;
-    validate();
-}
-
-void
-Geoid::setUnits( const Units& units ) 
-{
-    _units = units;
-    validate();
-}
-
-void
-Geoid::validate()
-{
-    _valid = false;
-    if ( !_hf.valid() ) {
-        //OE_WARN << LC << "ILLEGAL GEOID: no heightfield" << std::endl;
-    }
-    else if ( !_hf.getExtent().getSRS() || !_hf.getExtent().getSRS()->isGeographic() ) {
-        OE_WARN << LC << "ILLEGAL GEOID: heightfield must be geodetic" << std::endl;
-    }
-    else {
-        _valid = true;
-    }
-}
-
-float 
-Geoid::getOffset(double lat_deg, double lon_deg, const ElevationInterpolation& interp ) const
-{
-    float result = 0.0f;
-
-    if ( _valid )
-    {
-        // first convert the query coordinates to the geoid heightfield range if neccesary.
-        if ( lat_deg < _hf.getExtent().yMin() )
-            lat_deg = 90.0 - (-90.0-lat_deg);
-        else if ( lat_deg > _hf.getExtent().yMax() )
-            lat_deg = -90 + (lat_deg-90.0);
-        if ( lon_deg < _hf.getExtent().xMin() )
-            lon_deg += 360.0;
-        else if ( lon_deg > _hf.getExtent().xMax() )
-            lon_deg -= 360.0;
-
-        bool ok = _hf.getElevation( 0L, lon_deg, lat_deg, interp, 0L, result );
-        if ( !ok )
-            result = 0.0f;
-    }
-
-    return result;
-}
-
-bool
-Geoid::isEquivalentTo( const Geoid& rhs ) const
-{
-    // weak..
-    return
-        _valid &&
-        _name == rhs._name &&
-        _hf.getExtent() == rhs._hf.getExtent() &&
-        _units == rhs._units;
-}
diff --git a/src/osgEarth/GeoMath b/src/osgEarth/GeoMath
index cd19228..867082e 100644
--- a/src/osgEarth/GeoMath
+++ b/src/osgEarth/GeoMath
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -109,6 +109,16 @@ namespace osgEarth
             double &out_latRad, double &out_lonRad);
 
         /**
+         * Computes a great-circle interpolation from one lat/long to another,
+         * where t => [0..1].
+         */
+        static void interpolate(
+            double lat1Rad, double lon1Rad,
+            double lat2Rad, double lon2Rad,
+            double t,
+            double& out_latRad, double& out_lonRad );
+
+        /**
          * Computes the destination point given a start point, a bearing and a distance
          * @param lat1Rad
          *    The latitude in radians
@@ -131,6 +141,16 @@ namespace osgEarth
                                 double radius = osg::WGS_84_RADIUS_EQUATOR);
 
         /**
+         * Calculates the minimum and maximum latitudes along a great circle
+         * between the two geodetic input points.
+         */
+        static void greatCircleMinMaxLatitude(
+            double lat1Rad, double lon1Rad,
+            double lat2Rad, double lon2Rad,
+            double& out_minLatRad, double& out_maxLatRad);
+
+
+        /**
          * Computes the distance between two points in meters following a rhumb line
          * @param lat1Rad
          *   The start latitude in radians
diff --git a/src/osgEarth/GeoMath.cpp b/src/osgEarth/GeoMath.cpp
index ec2a0c3..e4ca3be 100644
--- a/src/osgEarth/GeoMath.cpp
+++ b/src/osgEarth/GeoMath.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -80,6 +80,52 @@ GeoMath::bearing(double lat1Rad, double lon1Rad,
 }
 
 void
+GeoMath::greatCircleMinMaxLatitude(double lat1Rad, double lon1Rad,
+                                   double lat2Rad, double lon2Rad,
+                                   double& out_minLatRad, double& out_maxLatRad)
+{
+    out_minLatRad = std::min(lat1Rad, lat2Rad);
+    out_maxLatRad = std::max(lat1Rad, lat2Rad);
+
+    // apply some spherical trig
+    // http://en.wikipedia.org/wiki/Spherical_trigonometry
+
+    double a = fabs(bearing(lat1Rad, lon1Rad, lat2Rad, lon2Rad)); // initial azimuth from p1=>p2
+    double b = fabs(bearing(lat2Rad, lon2Rad, lat1Rad, lon1Rad)); // initial azimuth from p2=>p1
+
+    // form a spherical triangle with the 2 points and the north pole, and 
+    // use the law of sines to calculate the point at which the great circle
+    // crosses a meridian (thereby make a right angle and demarking the maximum
+    // latitude of the arc). Test whether that point actually lies between the
+    // two points: the angles made by each point and the north pole must be
+    // less than 90 degrees.
+
+    double B = osg::PI_2 - lat1Rad;                       // angle between p1 and the pole
+    if ( a < osg::PI_2 && b < osg::PI_2 )
+        out_maxLatRad = std::max( out_maxLatRad, osg::PI_2 - asin(sin(B)*sin(a)) );
+    //out_maxLatRad = a < osg::PI_2 && b < osg::PI_2 ? 
+    //    osg::PI_2 - asin( sin(B)*sin(a) ) : 
+    //    std::max(lat1Rad,lat2Rad);
+
+    // flip over to the triangle formed by the south pole:
+    a = osg::PI - a, b = osg::PI - b;
+    B = osg::PI - B; //lat1Rad - (-osg::PI_2);
+
+    if ( a < osg::PI_2 && b < osg::PI_2 )
+        out_minLatRad = std::min( out_minLatRad, -osg::PI_2 + asin(sin(B)*sin(a)) );
+    //out_minLatRad = a < osg::PI_2 && b < osg::PI_2 ? 
+    //    osg::PI_2 - asin( sin(B)*sin(a) ) :
+    //    std::min(lat1Rad,lat2Rad);
+
+    //OE_INFO 
+    //    << "a = " << osg::RadiansToDegrees(a)
+    //    << ", b = " << osg::RadiansToDegrees(b)
+    //    << ", maxLat = " << osg::RadiansToDegrees(out_maxLatRad)
+    //    << ", minLat = " << osg::RadiansToDegrees(out_minLatRad)
+    //    << std::endl;
+}
+
+void
 GeoMath::midpoint(double lat1Rad, double lon1Rad,
                   double lat2Rad, double lon2Rad,
                   double &out_latRad, double &out_lonRad)
@@ -112,6 +158,32 @@ GeoMath::destination(double lat1Rad, double lon1Rad,
                                  cos(dR)-sin(lat1Rad)*sin(out_latRad));
 }
 
+void
+GeoMath::interpolate(double lat1Rad, double lon1Rad,
+                     double lat2Rad, double lon2Rad,
+                     double t,
+                     double& out_latRad, double& out_lonRad)
+{
+    static osg::EllipsoidModel em;
+
+    osg::Vec3d v0, v1;
+
+    em.convertLatLongHeightToXYZ(lat1Rad, lon1Rad, 0, v0.x(), v0.y(), v0.z());
+    double r0 = v0.length();
+    v0.normalize();
+    em.convertLatLongHeightToXYZ(lat2Rad, lon2Rad, 0, v1.x(), v1.y(), v1.z());
+    double r1 = v1.length();
+    v1.normalize();
+
+    osg::Vec3d axis = v0 ^ v1;
+    double angle = acos( v0 * v1 );
+    osg::Quat q( angle * t, axis );
+
+    v0 = (q * v0) * 0.5*(r0 + r1);
+
+    double dummy;
+    em.convertXYZToLatLongHeight( v0.x(), v0.y(), v0.z(), out_latRad, out_lonRad, dummy );
+}
 
 double
 GeoMath::rhumbDistance(double lat1Rad, double lon1Rad,
diff --git a/src/osgEarth/Geoid b/src/osgEarth/Geoid
new file mode 100644
index 0000000..e793b55
--- /dev/null
+++ b/src/osgEarth/Geoid
@@ -0,0 +1,85 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_GEOID_H
+#define OSGEARTH_GEOID_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/GeoCommon>
+#include <osgEarth/Bounds>
+#include <osgEarth/Units>
+#include <osg/Referenced>
+
+namespace osgEarth
+{
+    /**
+     * An equipotential surface representing a gravitational model of the
+     * planet's surface. Each value in the geoid's height field is an offset
+     * from the reference ellipsoid.
+     */
+    class OSGEARTH_EXPORT Geoid : public osg::Referenced
+    {
+    public:
+        Geoid();
+
+        /** dtor */
+        virtual ~Geoid() { }
+
+        /** Gets the readable name of this geoid. */
+        void setName( const std::string& value );
+        const std::string& getName() const { return _name; }
+
+        /**
+         * Sets the heightfield representing this geoid. The heightfield must be referenced
+         * as a lat/long grid (with the origin and intervals in degrees).
+         */
+        void setHeightField( osg::HeightField* hf );
+        const osg::HeightField* getHeightField() const { return _hf.get(); }
+
+        /**
+         * Queries the geoid for the height offset at the specified geodetic
+         * coordinates (in degrees).
+         */
+        float getHeight(
+            double lat_deg,
+            double lon_deg, 
+            const ElevationInterpolation& interp =INTERP_BILINEAR) const;
+
+        /** The linear units in which height values are expressed. */
+        const Units& getUnits() const { return _units; }
+        void setUnits( const Units& value );
+
+        /** Whether this is a valid object to use */
+        bool isValid() const { return _valid; }
+
+        /** True if two geoids are mathmatically equivalent. */
+        bool isEquivalentTo( const Geoid& rhs ) const;
+
+    private:
+        std::string    _name;
+        Units          _units;
+        bool           _valid;
+        Bounds         _bounds;
+
+        osg::ref_ptr<osg::HeightField> _hf;
+
+        void validate();
+    };
+}
+
+#endif // OSGEARTH_GEODATA_H
diff --git a/src/osgEarth/Geoid.cpp b/src/osgEarth/Geoid.cpp
new file mode 100644
index 0000000..74162da
--- /dev/null
+++ b/src/osgEarth/Geoid.cpp
@@ -0,0 +1,103 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/Geoid>
+#include <osgEarth/HeightFieldUtils>
+
+#define LC "[Geoid] "
+
+using namespace osgEarth;
+
+
+Geoid::Geoid() :
+_units( Units::METERS ),
+_valid( false )
+{
+    //nop
+}
+
+void
+Geoid::setName( const std::string& name )
+{
+    _name = name;
+    validate();
+}
+
+void
+Geoid::setHeightField( osg::HeightField* hf )
+{
+    _hf = hf;
+    _bounds = Bounds(
+        _hf->getOrigin().x(),
+        _hf->getOrigin().y(),
+        _hf->getOrigin().x() + _hf->getXInterval() * double(_hf->getNumColumns()),
+        _hf->getOrigin().y() + _hf->getYInterval() * double(_hf->getNumRows()) );
+    validate();
+}
+
+void
+Geoid::setUnits( const Units& units ) 
+{
+    _units = units;
+    validate();
+}
+
+void
+Geoid::validate()
+{
+    _valid = false;
+    if ( !_hf.valid() )
+    {
+        //OE_WARN << LC << "ILLEGAL GEOID: no heightfield" << std::endl;
+    }
+    else if ( !_bounds.valid() )
+    {
+        OE_WARN << LC << "ILLEGAL GEOID: heightfield must be geodetic" << std::endl;
+    }
+    else
+    {
+        _valid = true;
+    }
+}
+
+float 
+Geoid::getHeight(double lat_deg, double lon_deg, const ElevationInterpolation& interp ) const
+{
+    float result = 0.0f;
+
+    if ( _valid && _bounds.contains(lon_deg, lat_deg) )
+    {
+        double nlon = (lon_deg-_bounds.xMin())/_bounds.width();
+        double nlat = (lat_deg-_bounds.yMin())/_bounds.height();
+        result = HeightFieldUtils::getHeightAtNormalizedLocation( _hf.get(), nlon, nlat, interp );
+    }
+
+    return result;
+}
+
+bool
+Geoid::isEquivalentTo( const Geoid& rhs ) const
+{
+    // weak..
+    return
+        _valid                      &&
+        _name == rhs._name          &&
+        _hf.get() == rhs._hf.get()  &&
+        _units == rhs._units;
+}
diff --git a/src/osgEarth/HTTPClient b/src/osgEarth/HTTPClient
index 5dd6932..bac1527 100644
--- a/src/osgEarth/HTTPClient
+++ b/src/osgEarth/HTTPClient
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,9 +20,8 @@
 #define OSGEARTH_HTTP_CLIENT_H 1
 
 #include <osgEarth/Common>
+#include <osgEarth/IOTypes>
 #include <osgEarth/Progress>
-#include <osgEarth/TerrainOptions>
-#include <OpenThreads/Thread>
 #include <osg/ref_ptr>
 #include <osg/Referenced>
 #include <osgDB/ReaderWriter>
@@ -43,18 +42,23 @@ namespace osgEarth
         ProxySettings( const Config& conf =Config() );
         ProxySettings( const std::string& host, int port );
 
+        virtual ~ProxySettings() { }
+
         std::string& hostName() { return _hostName; }
         const std::string& hostName() const { return _hostName; }
 
         int& port() { return _port; }
         const int& port() const { return _port; }
 
-		std::string& userName() { return _userName; }
+        std::string& userName() { return _userName; }
         const std::string& userName() const { return _userName; }
 
-		std::string& password() { return _password; }
+        std::string& password() { return _password; }
         const std::string& password() const { return _password; }
 
+        void apply(osgDB::Options* dbOptions) const;
+        static bool fromOptions( const osgDB::Options* dbOptions, optional<ProxySettings>& out );
+
     public:
         virtual Config getConfig() const;
         virtual void mergeConfig( const Config& conf );
@@ -62,8 +66,8 @@ namespace osgEarth
     protected:
         std::string _hostName;
         int _port;
-		std::string _userName;
-		std::string _password;
+        std::string _userName;
+        std::string _password;
     };
 
 
@@ -79,6 +83,9 @@ namespace osgEarth
         /** copy constructor. */
         HTTPRequest( const HTTPRequest& rhs );
 
+        /** dtor */
+        virtual ~HTTPRequest() { }
+
         /** Adds an HTTP parameter to the request query string. */
         void addParameter( const std::string& name, const std::string& value );
         void addParameter( const std::string& name, int value );
@@ -118,8 +125,11 @@ namespace osgEarth
         /** Copy constructor */
         HTTPResponse( const HTTPResponse& rhs );
 
+        /** dtor */
+        virtual ~HTTPResponse() { }
+
         /** Gets the HTTP response code (Code) in this response */
-        long getCode() const;
+        unsigned getCode() const;
 
         /** True is the HTTP response code is OK (200) */
         bool isOK() const;
@@ -155,10 +165,12 @@ namespace osgEarth
             std::stringstream _stream;
         };
         typedef std::vector< osg::ref_ptr<Part> > Parts;
-        Parts _parts;
-        long _response_code;
+        Parts       _parts;
+        long        _response_code;
         std::string _mimeType;
-        bool _cancelled;
+        bool        _cancelled;
+
+        Config getHeadersAsConfig() const;
 
         friend class HTTPClient;
     };
@@ -170,98 +182,67 @@ namespace osgEarth
      * probably be renamed. It analyzes the URI and decides whether to make an  HTTP request
      * or to read from disk.
      */
-    class OSGEARTH_EXPORT HTTPClient : public osg::Referenced
+    class OSGEARTH_EXPORT HTTPClient // : public osg::Referenced
     {
     public:
-        enum ResultCode {
-            RESULT_OK,
-            RESULT_CANCELED,
-            RESULT_NOT_FOUND,
-            RESULT_SERVER_ERROR,
-            RESULT_TIMEOUT,
-            RESULT_NO_READER,
-            RESULT_READER_ERROR,
-            RESULT_UNKNOWN_ERROR
-        };
-
         /**
          * Returns true is the result code represents a recoverable situation,
          * i.e. one in which retrying might work.
          */
-        static bool isRecoverable( ResultCode code )
-        {
-            return
-                code == RESULT_OK ||
-                code == RESULT_SERVER_ERROR ||
-                code == RESULT_TIMEOUT ||
-                code == RESULT_CANCELED;
-        }
-
-        static std::string getResultCodeString( ResultCode code )
+        static bool isRecoverable( ReadResult::Code code )
         {
             return
-                code == RESULT_OK ? "OK" :
-                code == RESULT_CANCELED ? "Read canceled" :
-                code == RESULT_NOT_FOUND ? "Target not found" :
-                code == RESULT_SERVER_ERROR ? "Server error" :
-                code == RESULT_TIMEOUT ? "Read timed out" :
-                code == RESULT_NO_READER ? "No suitable ReaderWriter found" :
-                code == RESULT_READER_ERROR ? "ReaderWriter error" :
-                "Unknown error";
+                code == ReadResult::RESULT_OK ||
+                code == ReadResult::RESULT_SERVER_ERROR ||
+                code == ReadResult::RESULT_TIMEOUT ||
+                code == ReadResult::RESULT_CANCELED;
         }
 
         /** Gest the user-agent string that all HTTP requests will use.
             TODO: This should probably move into the Registry */
-		static const std::string& getUserAgent();
+        static const std::string& getUserAgent();
 
         /** Sets a user-agent string to use in all HTTP requests.
             TODO: This should probably move into the Registry */
-		static void setUserAgent(const std::string& userAgent);
+        static void setUserAgent(const std::string& userAgent);
 
         /** Sets up proxy info to use in all HTTP requests.
             TODO: This should probably move into the Registry */
-		static void setProxySettings( const ProxySettings &proxySettings );
+        static void setProxySettings( const ProxySettings &proxySettings );
 
 
     public:
         /**
-         * Reads an image. Based on the structure of the URI, it will either try to fetch the
-         * data using HTTP or simply read the file from disk.
+         * Reads an image.
          */
-        static ResultCode readImageFile(
-            const std::string& uri,
-            osg::ref_ptr<osg::Image>& output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback* callback = 0 );
+        static ReadResult readImage(
+            const std::string&    location,
+            const osgDB::Options* dbOptions =0L,
+            ProgressCallback*     progress  =0L );
 
         /**
-         * Reads an osg::Node. Based on the structure of the URI, it will either try to fetch the
-         * data using HTTP or simply read the file from disk.
+         * Reads an osg::Node.
          */
-        static ResultCode readNodeFile(
-            const std::string& uri,
-            osg::ref_ptr<osg::Node>& output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback* callback = 0 );
+        static ReadResult readNode(
+            const std::string&    location,
+            const osgDB::Options* dbOptions =0L,
+            ProgressCallback*     progress  =0L );
 
         /**
-         * Reads an object. Based on the structure of the URI, it will either try to fetch the
-         * data using HTTP or simply read the file from disk.
+         * Reads an object.
          */
-        static ResultCode readObjectFile(
-            const std::string&                  url,
-            osg::ref_ptr<osg::Object>&          output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback*                   callback = 0);
+        static ReadResult readObject(
+            const std::string&    location,
+            const osgDB::Options* dbOptions =0L,
+            ProgressCallback*     progress  =0L );
 
         /**
-         * Reads a string. Based on the structure of the URI, it will either try to fetch the
-         * data using HTTP or simply read the file from disk.
+         * Reads a string.
          */
-        static ResultCode readString(
-            const std::string& uri,
-            std::string& output,
-            ProgressCallback* callback =0);
+        static ReadResult readString(
+            const std::string&    location,
+            const osgDB::Options* dbOptions =0L,
+            ProgressCallback*     progress  =0L );
 
         /**
          * Downloads a file directly to disk.
@@ -275,51 +256,49 @@ namespace osgEarth
         /**
          * Performs an HTTP "GET".
          */
-        static HTTPResponse get( const HTTPRequest& request,
-                                 const osgDB::ReaderWriter::Options* = 0,
-                                 ProgressCallback* callback = 0);
+        static HTTPResponse get( const HTTPRequest&    request,
+                                 const osgDB::Options* dbOptions =0L,
+                                 ProgressCallback*     progress  =0L );
 
-        static HTTPResponse get( const std::string& url,
-                                 const osgDB::ReaderWriter::Options* options = 0,
-                                 ProgressCallback* callback = 0);
+        static HTTPResponse get( const std::string&    url,
+                                 const osgDB::Options* options  =0L,
+                                 ProgressCallback*     progress =0L );
 
-    private:
+    public:
         HTTPClient();
-        ~HTTPClient();
+        virtual ~HTTPClient();
 
-        void readOptions( const osgDB::ReaderWriter::Options* options, std::string &proxy_host, std::string &proxy_port ) const;
+    private:
 
-        HTTPResponse doGet( const HTTPRequest& request,
-                            const osgDB::ReaderWriter::Options* options = 0,
-                            ProgressCallback* callback = 0) const;
+        void readOptions( const osgDB::ReaderWriter::Options* options, std::string &proxy_host, std::string &proxy_port ) const;
 
-        HTTPResponse doGet( const std::string& url,
-                            const osgDB::ReaderWriter::Options* options = 0,
-                            ProgressCallback* callback = 0 ) const;
+        HTTPResponse doGet( const HTTPRequest&    request,
+                            const osgDB::Options* options  =0L,
+                            ProgressCallback*     callback =0L ) const;
 
-        ResultCode doReadObjectFile(
-            const std::string&                  url,
-            osg::ref_ptr<osg::Object>&          output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback*                   callback = 0);
+        HTTPResponse doGet( const std::string&    url,
+                            const osgDB::Options* options  =0L,
+                            ProgressCallback*     callback =0L ) const;
 
-        ResultCode doReadImageFile(
-            const std::string& filename,
-            osg::ref_ptr<osg::Image>& output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback *callback = 0);
+        ReadResult doReadObject(
+            const std::string&    location,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
 
-        ResultCode doReadNodeFile(
-            const std::string& filename,
-            osg::ref_ptr<osg::Node>& output,
-            const osgDB::ReaderWriter::Options* options = 0,
-            ProgressCallback *callback = 0);
+        ReadResult doReadImage(
+            const std::string&    location,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
 
-        ResultCode doReadString(
-            const std::string& filename,
-            std::string& output,
-            ProgressCallback *callback = 0);
+        ReadResult doReadNode(
+            const std::string&    location,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
 
+        ReadResult doReadString(
+            const std::string&    location,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
 
         /**
          * Convenience method for downloading a URL directly to a file
@@ -330,6 +309,11 @@ namespace osgEarth
         void*       _curl_handle;
         std::string _previousPassword;
         long        _previousHttpAuthentication;
+        bool        _initialized;
+        long        _simResponseCode;
+
+        void initialize() const;
+        void initializeImpl();
 
 
         static HTTPClient& getClient();
diff --git a/src/osgEarth/HTTPClient.cpp b/src/osgEarth/HTTPClient.cpp
index 13bcdb4..8e5f149 100644
--- a/src/osgEarth/HTTPClient.cpp
+++ b/src/osgEarth/HTTPClient.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -16,12 +16,10 @@
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
-
-#include <curl/curl.h>
-//#include <curl/types.h>
 #include <osgEarth/HTTPClient>
 #include <osgEarth/Registry>
 #include <osgEarth/Version>
+#include <osgDB/ReadFile>
 #include <osgDB/Registry>
 #include <osgDB/FileNameUtils>
 #include <osg/Notify>
@@ -31,11 +29,12 @@
 #include <iterator>
 #include <iostream>
 #include <algorithm>
+#include <curl/curl.h>
 
 #define LC "[HTTPClient] "
 
-#undef  OE_DEBUG
-#define OE_DEBUG OE_NULL
+//#define OE_TEST OE_NOTICE
+#define OE_TEST OE_NULL
 
 using namespace osgEarth;
 
@@ -58,8 +57,8 @@ ProxySettings::mergeConfig( const Config& conf )
 {
     _hostName = conf.value<std::string>( "host", "" );
     _port = conf.value<int>( "port", 8080 );
-	_userName = conf.value<std::string>( "username", "" );
-	_password = conf.value<std::string>( "password", "" );
+    _userName = conf.value<std::string>( "username", "" );
+    _password = conf.value<std::string>( "password", "" );
 }
 
 Config
@@ -68,12 +67,39 @@ ProxySettings::getConfig() const
     Config conf( "proxy" );
     conf.add( "host", _hostName );
     conf.add( "port", toString(_port) );
-	conf.add( "username", _userName);
-	conf.add( "password", _password);
+    conf.add( "username", _userName);
+    conf.add( "password", _password);
 
     return conf;
 }
 
+bool
+ProxySettings::fromOptions( const osgDB::Options* dbOptions, optional<ProxySettings>& out )
+{
+    if ( dbOptions )
+    {
+        std::string jsonString = dbOptions->getPluginStringData( "osgEarth::ProxySettings" );
+        if ( !jsonString.empty() )
+        {
+            Config conf;
+            conf.fromJSON( jsonString );
+            out = ProxySettings( conf );
+            return true;
+        }
+    }
+    return false;
+}
+
+void
+ProxySettings::apply( osgDB::Options* dbOptions ) const
+{
+    if ( dbOptions )
+    {
+        Config conf = getConfig();
+        dbOptions->setPluginStringData( "osgEarth::ProxySettings", conf.toJSON() );
+    }
+}
+
 /****************************************************************************/
    
 namespace osgEarth
@@ -138,7 +164,7 @@ HTTPRequest::addParameter( const std::string& name, int value )
 {
     std::stringstream buf;
     buf << value;
-	std::string bufStr;
+     std::string bufStr;
     bufStr = buf.str();
     _parameters[name] = bufStr;
 }
@@ -148,7 +174,7 @@ HTTPRequest::addParameter( const std::string& name, double value )
 {
     std::stringstream buf;
     buf << value;
-	std::string bufStr;
+     std::string bufStr;
     bufStr = buf.str();
     _parameters[name] = bufStr;
 }
@@ -175,8 +201,8 @@ HTTPRequest::getURL() const
             buf << ( i == _parameters.begin() && _url.find( "?" ) == std::string::npos? "?" : "&" );
             buf << i->first << "=" << i->second;
         }
-		std::string bufStr;
-		bufStr = buf.str();
+         std::string bufStr;
+         bufStr = buf.str();
         return bufStr;
     }
 }
@@ -199,7 +225,7 @@ _cancelled( rhs._cancelled )
     //nop
 }
 
-long
+unsigned
 HTTPResponse::getCode() const {
     return _response_code;
 }
@@ -236,8 +262,8 @@ HTTPResponse::getPartStream( unsigned int n ) const {
 
 std::string
 HTTPResponse::getPartAsString( unsigned int n ) const {
-	std::string streamStr;
-	streamStr = _parts[n]->_stream.str();
+     std::string streamStr;
+     streamStr = _parts[n]->_stream.str();
     return streamStr;
 }
 
@@ -246,6 +272,20 @@ HTTPResponse::getMimeType() const {
     return _mimeType;
 }
 
+Config
+HTTPResponse::getHeadersAsConfig() const
+{
+    Config conf;
+    if ( _parts.size() > 0 )
+    {
+        for( Part::Headers::const_iterator i = _parts[0]->_headers.begin(); i != _parts[0]->_headers.end(); ++i )
+        {
+            conf.set(i->first, i->second);
+        }
+    }
+    return conf;
+}
+
 /****************************************************************************/
 
 #define QUOTE_(X) #X
@@ -256,61 +296,59 @@ HTTPResponse::getMimeType() const {
 static optional<ProxySettings>     _proxySettings;
 static std::string                 _userAgent = USER_AGENT;
 
+namespace
+{
+    // per-thread client map (must be global scope)
+    static Threading::PerThread<HTTPClient> s_clientPerThread;
+}
 
 HTTPClient&
 HTTPClient::getClient()
 {
-#if 1
-    static Threading::PerThread< osg::ref_ptr<HTTPClient> > s_clientPerThread;
-
-    osg::ref_ptr<HTTPClient>& client = s_clientPerThread.get();
-    if ( !client.valid() )
-        client = new HTTPClient();
-
-    return *client.get();
-#else
-    typedef std::map< OpenThreads::Thread*, osg::ref_ptr<HTTPClient> > ThreadClientMap;        
-    static Threading::ReadWriteMutex   _threadClientMapMutex;
-    static ThreadClientMap             _threadClientMap;
-
-    OpenThreads::Thread* current = OpenThreads::Thread::CurrentThread();
+    return s_clientPerThread.get();
+}
 
-    // first try the map:
-    {
-        Threading::ScopedReadLock sharedLock(_threadClientMapMutex);
-        ThreadClientMap::iterator i = _threadClientMap.find(current);
-        if ( i != _threadClientMap.end() )
-            return *i->second.get();
-    }
+HTTPClient::HTTPClient() :
+_initialized    ( false ),
+_curl_handle    ( 0L ),
+_simResponseCode( -1L )
+{
+    //nop
+    //do no CURL calls here.
+}
 
-    // not there; add it.
+void
+HTTPClient::initialize() const
+{
+    if ( !_initialized )
     {
-        Threading::ScopedWriteLock exclusiveLock(_threadClientMapMutex);
-
-        // normally, we'd double check b/c of the race condition, but since the map is being 
-        // indexed by the actual thread pointer, there's no chance of a race.
-        HTTPClient* client = new HTTPClient();
-        _threadClientMap[current] = client;
-        return *client;
+        const_cast<HTTPClient*>(this)->initializeImpl();
     }
-#endif
 }
 
-HTTPClient::HTTPClient()
+void
+HTTPClient::initializeImpl()
 {
     _previousHttpAuthentication = 0;
     _curl_handle = curl_easy_init();
 
-
-	//Get the user agent
-	std::string userAgent = _userAgent;
-	const char* userAgentEnv = getenv("OSGEARTH_USERAGENT");
+    //Get the user agent
+    std::string userAgent = _userAgent;
+    const char* userAgentEnv = getenv("OSGEARTH_USERAGENT");
     if (userAgentEnv)
     {
-		userAgent = std::string(userAgentEnv);        
+        userAgent = std::string(userAgentEnv);
     }
 
-	OE_DEBUG << LC << "HTTPClient setting userAgent=" << userAgent << std::endl;
+    //Check for a response-code simulation (for testing)
+    const char* simCode = getenv("OSGEARTH_SIMULATE_HTTP_RESPONSE_CODE");
+    if ( simCode )
+    {
+        _simResponseCode = osgEarth::as<long>(std::string(simCode), 404L);
+        OE_WARN << LC << "Simulating a network error with Response Code = " << _simResponseCode << std::endl;
+    }
+
+    OE_DEBUG << LC << "HTTPClient setting userAgent=" << userAgent << std::endl;
 
     curl_easy_setopt( _curl_handle, CURLOPT_USERAGENT, userAgent.c_str() );
     curl_easy_setopt( _curl_handle, CURLOPT_WRITEFUNCTION, osgEarth::StreamObjectReadCallback );
@@ -319,6 +357,8 @@ HTTPClient::HTTPClient()
     curl_easy_setopt( _curl_handle, CURLOPT_PROGRESSFUNCTION, &CurlProgressCallback);
     curl_easy_setopt( _curl_handle, CURLOPT_NOPROGRESS, (void*)0 ); //FALSE);
     //curl_easy_setopt( _curl_handle, CURLOPT_TIMEOUT, 1L );
+
+    _initialized = true;
 }
 
 HTTPClient::~HTTPClient()
@@ -328,23 +368,23 @@ HTTPClient::~HTTPClient()
 }
 
 void
-HTTPClient::setProxySettings( const ProxySettings &proxySettings )
+HTTPClient::setProxySettings( const ProxySettings& proxySettings )
 {
-	_proxySettings = proxySettings;
+    _proxySettings = proxySettings;
 }
 
 const std::string& HTTPClient::getUserAgent()
 {
-	return _userAgent;
+    return _userAgent;
 }
 
 void  HTTPClient::setUserAgent(const std::string& userAgent)
 {
-	_userAgent = userAgent;
+    _userAgent = userAgent;
 }
 
 void
-HTTPClient::readOptions( const osgDB::ReaderWriter::Options* options, std::string& proxy_host, std::string& proxy_port) const
+HTTPClient::readOptions(const osgDB::Options* options, std::string& proxy_host, std::string& proxy_port) const
 {
     // try to set proxy host/port by reading the CURL proxy options
     if ( options )
@@ -366,33 +406,35 @@ HTTPClient::readOptions( const osgDB::ReaderWriter::Options* options, std::strin
     }
 }
 
-// from: http://www.rosettacode.org/wiki/Tokenizing_A_String#C.2B.2B
-static std::vector<std::string> 
-tokenize_str(const std::string & str, const std::string & delims=", \t")
+namespace
 {
-  using namespace std;
-  // Skip delims at beginning, find start of first token
-  string::size_type lastPos = str.find_first_not_of(delims, 0);
-  // Find next delimiter @ end of token
-  string::size_type pos     = str.find_first_of(delims, lastPos);
+    // from: http://www.rosettacode.org/wiki/Tokenizing_A_String#C.2B.2B
+    std::vector<std::string> 
+    tokenize_str(const std::string & str, const std::string & delims=", \t")
+    {
+      using namespace std;
+      // Skip delims at beginning, find start of first token
+      string::size_type lastPos = str.find_first_not_of(delims, 0);
+      // Find next delimiter @ end of token
+      string::size_type pos     = str.find_first_of(delims, lastPos);
 
-  // output vector
-  vector<string> tokens;
+      // output vector
+      vector<string> tokens;
 
-  while (string::npos != pos || string::npos != lastPos)
-    {
-      // Found a token, add it to the vector.
-      tokens.push_back(str.substr(lastPos, pos - lastPos));
-      // Skip delims.  Note the "not_of". this is beginning of token
-      lastPos = str.find_first_not_of(delims, pos);
-      // Find next delimiter at end of token.
-      pos     = str.find_first_of(delims, lastPos);
-    }
+      while (string::npos != pos || string::npos != lastPos)
+        {
+          // Found a token, add it to the vector.
+          tokens.push_back(str.substr(lastPos, pos - lastPos));
+          // Skip delims.  Note the "not_of". this is beginning of token
+          lastPos = str.find_first_not_of(delims, pos);
+          // Find next delimiter at end of token.
+          pos     = str.find_first_of(delims, lastPos);
+        }
 
-  return tokens;
+      return tokens;
+    }
 }
 
-
 void
 HTTPClient::decodeMultipartStream(const std::string&   boundary,
                                   HTTPResponse::Part*  input,
@@ -479,54 +521,51 @@ HTTPClient::decodeMultipartStream(const std::string&   boundary,
 }
 
 HTTPResponse
-HTTPClient::get( const HTTPRequest& request,
-                 const osgDB::ReaderWriter::Options* options,
-                 ProgressCallback* callback)
+HTTPClient::get( const HTTPRequest&    request,
+                 const osgDB::Options* options,
+                 ProgressCallback*     callback)
 {
     return getClient().doGet( request, options, callback );
 }
 
 HTTPResponse 
-HTTPClient::get( const std::string &url,
-                 const osgDB::ReaderWriter::Options* options,
-                 ProgressCallback* callback)
+HTTPClient::get( const std::string&    url,
+                 const osgDB::Options* options,
+                 ProgressCallback*     callback)
 {
     return getClient().doGet( url, options, callback);
 }
 
-HTTPClient::ResultCode
-HTTPClient::readImageFile(const std::string &filename,
-                          osg::ref_ptr<osg::Image>& output,
-                          const osgDB::ReaderWriter::Options *options,
-                          osgEarth::ProgressCallback *callback)
+ReadResult
+HTTPClient::readImage(const std::string&    location,
+                      const osgDB::Options* options,
+                      ProgressCallback*     callback)
 {
-    return getClient().doReadImageFile( filename, output, options, callback );
+    return getClient().doReadImage( location, options, callback );
 }
 
-HTTPClient::ResultCode
-HTTPClient::readNodeFile(const std::string& filename,
-                         osg::ref_ptr<osg::Node>& output,
-                         const osgDB::ReaderWriter::Options *options,
-                         osgEarth::ProgressCallback *callback)
+ReadResult
+HTTPClient::readNode(const std::string&    location,
+                     const osgDB::Options* options,
+                     ProgressCallback*     callback)
 {
-    return getClient().doReadNodeFile( filename, output, options, callback );
+    return getClient().doReadNode( location, options, callback );
 }
 
-HTTPClient::ResultCode
-HTTPClient::readObjectFile(const std::string&                  url,
-                           osg::ref_ptr<osg::Object>&          output,
-                           const osgDB::ReaderWriter::Options* options,
-                           ProgressCallback*                   callback )
+ReadResult
+HTTPClient::readObject(const std::string&    location,
+                       const osgDB::Options* options,
+                       ProgressCallback*     callback)
 {
-    return getClient().doReadObjectFile( url, output, options, callback );
+    return getClient().doReadObject( location, options, callback );
 }
 
-HTTPClient::ResultCode
-HTTPClient::readString(const std::string& filename,
-                       std::string& output,
-                       osgEarth::ProgressCallback* callback)
+ReadResult
+HTTPClient::readString(const std::string&    location,
+                       const osgDB::Options* options,
+                       ProgressCallback*     callback)
 {
-    return getClient().doReadString( filename, output, callback );
+    return getClient().doReadString( location, options, callback );
 }
 
 bool
@@ -537,9 +576,11 @@ HTTPClient::download(const std::string& uri,
 }
 
 HTTPResponse
-HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Options* options, ProgressCallback* callback) const
+HTTPClient::doGet( const HTTPRequest& request, const osgDB::Options* options, ProgressCallback* callback) const
 {
-    OE_DEBUG << LC << "doGet " << request.getURL() << std::endl;
+    initialize();
+
+    OE_TEST << LC << "doGet " << request.getURL() << std::endl;
 
     const osgDB::AuthenticationMap* authenticationMap = (options && options->getAuthenticationMap()) ? 
             options->getAuthenticationMap() :
@@ -548,45 +589,57 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
     std::string proxy_host;
     std::string proxy_port = "8080";
 
-	std::string proxy_auth;
-
-	//Try to get the proxy settings from the global settings
-	if (_proxySettings.isSet())
-	{
-		proxy_host = _proxySettings.get().hostName();
-		std::stringstream buf;
-		buf << _proxySettings.get().port();
-		proxy_port = buf.str();
-
-		std::string proxy_username = _proxySettings.get().userName();
-		std::string proxy_password = _proxySettings.get().password();
-		if (!proxy_username.empty() && !proxy_password.empty())
-		{
-			proxy_auth = proxy_username + ":" + proxy_password;
-		}
-	}
-
-	//Try to get the proxy settings from the local options that are passed in.
+    std::string proxy_auth;
+
+    //TODO: don't do all this proxy setup on every GET. Just do it once per client, or only when 
+    // the proxy information changes.
+
+    //Try to get the proxy settings from the global settings
+    if (_proxySettings.isSet())
+    {
+        proxy_host = _proxySettings.get().hostName();
+        std::stringstream buf;
+        buf << _proxySettings.get().port();
+        proxy_port = buf.str();
+
+        std::string proxy_username = _proxySettings.get().userName();
+        std::string proxy_password = _proxySettings.get().password();
+        if (!proxy_username.empty() && !proxy_password.empty())
+        {
+            proxy_auth = proxy_username + std::string(":") + proxy_password;
+        }
+    }
+
+    //Try to get the proxy settings from the local options that are passed in.
     readOptions( options, proxy_host, proxy_port );
 
-	//Try to get the proxy settings from the environment variable
+    optional< ProxySettings > proxySettings;
+    ProxySettings::fromOptions( options, proxySettings );
+    if (proxySettings.isSet())
+    {       
+        proxy_host = proxySettings.get().hostName();
+        proxy_port = toString<int>(proxySettings.get().port());
+        OE_DEBUG << "Read proxy settings from options " << proxy_host << " " << proxy_port << std::endl;
+    }
+
+    //Try to get the proxy settings from the environment variable
     const char* proxyEnvAddress = getenv("OSG_CURL_PROXY");
     if (proxyEnvAddress) //Env Proxy Settings
     {
-		proxy_host = std::string(proxyEnvAddress);
+        proxy_host = std::string(proxyEnvAddress);
 
         const char* proxyEnvPort = getenv("OSG_CURL_PROXYPORT"); //Searching Proxy Port on Env
-		if (proxyEnvPort)
-		{
-			proxy_port = std::string( proxyEnvPort );
-		}
+        if (proxyEnvPort)
+        {
+            proxy_port = std::string( proxyEnvPort );
+        }
     }
 
-	const char* proxyEnvAuth = getenv("OSGEARTH_CURL_PROXYAUTH");	
-	if (proxyEnvAuth)
-	{
-		proxy_auth = std::string(proxyEnvAuth);
-	}
+    const char* proxyEnvAuth = getenv("OSGEARTH_CURL_PROXYAUTH");	
+    if (proxyEnvAuth)
+    {
+        proxy_auth = std::string(proxyEnvAuth);
+    }
 
     // Set up proxy server:
     std::string proxy_addr;
@@ -594,42 +647,48 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
     {
         std::stringstream buf;
         buf << proxy_host << ":" << proxy_port;
-		std::string bufStr;
-		bufStr = buf.str();
+        std::string bufStr;
+        bufStr = buf.str();
         proxy_addr = bufStr;
     
         OE_DEBUG << LC << "setting proxy: " << proxy_addr << std::endl;
-		//curl_easy_setopt( _curl_handle, CURLOPT_HTTPPROXYTUNNEL, 1 ); 
+        //curl_easy_setopt( _curl_handle, CURLOPT_HTTPPROXYTUNNEL, 1 ); 
         curl_easy_setopt( _curl_handle, CURLOPT_PROXY, proxy_addr.c_str() );
 
-		//Setup the proxy authentication if setup
-		if (!proxy_auth.empty())
-		{
-			OE_DEBUG << LC << "Setting up proxy authentication " << proxy_auth << std::endl;
-			curl_easy_setopt( _curl_handle, CURLOPT_PROXYUSERPWD, proxy_auth.c_str());
-		}
+        //Setup the proxy authentication if setup
+        if (!proxy_auth.empty())
+        {
+            OE_DEBUG << LC << "Setting up proxy authentication " << proxy_auth << std::endl;
+            curl_easy_setopt( _curl_handle, CURLOPT_PROXYUSERPWD, proxy_auth.c_str());
+        }
     }
+    else
+    {
+        OE_DEBUG << "Removing proxy settings" << std::endl;
+        curl_easy_setopt( _curl_handle, CURLOPT_PROXY, 0 );
+    }
+
 
     const osgDB::AuthenticationDetails* details = authenticationMap ?
         authenticationMap->getAuthenticationDetails(request.getURL()) :
         0;
 
-        if (details)
-        {
-            const std::string colon(":");
-            std::string password(details->username + colon + details->password);
-            curl_easy_setopt(_curl_handle, CURLOPT_USERPWD, password.c_str());
-            const_cast<HTTPClient*>(this)->_previousPassword = password;
+    if (details)
+    {
+        const std::string colon(":");
+        std::string password(details->username + colon + details->password);
+        curl_easy_setopt(_curl_handle, CURLOPT_USERPWD, password.c_str());
+        const_cast<HTTPClient*>(this)->_previousPassword = password;
 
-            // use for https.
-            // curl_easy_setopt(_curl, CURLOPT_KEYPASSWD, password.c_str());
+        // use for https.
+        // curl_easy_setopt(_curl, CURLOPT_KEYPASSWD, password.c_str());
 
 #if LIBCURL_VERSION_NUM >= 0x070a07
-            if (details->httpAuthentication != _previousHttpAuthentication)
-            { 
-                curl_easy_setopt(_curl_handle, CURLOPT_HTTPAUTH, details->httpAuthentication); 
-                const_cast<HTTPClient*>(this)->_previousHttpAuthentication = details->httpAuthentication;
-            }
+        if (details->httpAuthentication != _previousHttpAuthentication)
+        { 
+            curl_easy_setopt(_curl_handle, CURLOPT_HTTPAUTH, details->httpAuthentication); 
+            const_cast<HTTPClient*>(this)->_previousHttpAuthentication = details->httpAuthentication;
+        }
 #endif
     }
     else
@@ -661,26 +720,40 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
         curl_easy_setopt(_curl_handle, CURLOPT_PROGRESSDATA, progressCallback.get());
     }
 
-    char errorBuf[CURL_ERROR_SIZE];
-    errorBuf[0] = 0;
-    curl_easy_setopt( _curl_handle, CURLOPT_ERRORBUFFER, (void*)errorBuf );
+    CURLcode res;
+    long response_code = 0L;
+
+    if ( _simResponseCode < 0 )
+    {
+        char errorBuf[CURL_ERROR_SIZE];
+        errorBuf[0] = 0;
+        curl_easy_setopt( _curl_handle, CURLOPT_ERRORBUFFER, (void*)errorBuf );
 
-    curl_easy_setopt( _curl_handle, CURLOPT_WRITEDATA, (void*)&sp);
-    CURLcode res = curl_easy_perform( _curl_handle );
-    curl_easy_setopt( _curl_handle, CURLOPT_WRITEDATA, (void*)0 );
-    curl_easy_setopt( _curl_handle, CURLOPT_PROGRESSDATA, (void*)0);
+        curl_easy_setopt( _curl_handle, CURLOPT_WRITEDATA, (void*)&sp);
+        res = curl_easy_perform( _curl_handle );
+        curl_easy_setopt( _curl_handle, CURLOPT_WRITEDATA, (void*)0 );
+        curl_easy_setopt( _curl_handle, CURLOPT_PROGRESSDATA, (void*)0);
 
-    long response_code = 0L;
-	if (!proxy_addr.empty())
-	{
-		long connect_code = 0L;
-        curl_easy_getinfo( _curl_handle, CURLINFO_HTTP_CONNECTCODE, &connect_code );
-		OE_DEBUG << LC << "proxy connect code " << connect_code << std::endl;
-	}
-	
-    curl_easy_getinfo( _curl_handle, CURLINFO_RESPONSE_CODE, &response_code );     
+        //Disable peer certificate verification to allow us to access in https servers where the peer certificate cannot be verified.
+        curl_easy_setopt( _curl_handle, CURLOPT_SSL_VERIFYPEER, (void*)0 );
+
+        if (!proxy_addr.empty())
+        {
+            long connect_code = 0L;
+            curl_easy_getinfo( _curl_handle, CURLINFO_HTTP_CONNECTCODE, &connect_code );
+            OE_DEBUG << LC << "proxy connect code " << connect_code << std::endl;
+        }
+        
+        curl_easy_getinfo( _curl_handle, CURLINFO_RESPONSE_CODE, &response_code );
+    }
+    else
+    {
+        // simulate failure with a custom response code
+        response_code = _simResponseCode;
+        res = response_code == 408 ? CURLE_OPERATION_TIMEDOUT : CURLE_COULDNT_CONNECT;
+    }
 
-	OE_DEBUG << LC << "got response, code = " << response_code << std::endl;
+    //OE_DEBUG << LC << "got response, code = " << response_code << std::endl;
 
     HTTPResponse response( response_code );
    
@@ -702,17 +775,22 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
         //   content type ...
 
         std::string content_type( content_type_cp );
-        //OE_NOTICE << "[osgEarth.HTTPClient] content-type = \"" << content_type << "\"" << std::endl;
+
+        //OE_DEBUG << LC << "content-type = \"" << content_type << "\"" << std::endl;
+
         if ( content_type.length() > 9 && ::strstr( content_type.c_str(), "multipart" ) == content_type.c_str() )
         //if ( content_type == "multipart/mixed; boundary=wcs" ) //todo: parse this.
         {
-            //OE_NOTICE << "[osgEarth.HTTPClient] detected multipart data; decoding..." << std::endl;
+            OE_DEBUG << LC << "detected multipart data; decoding..." << std::endl;
+
             //TODO: parse out the "wcs" -- this is WCS-specific
             decodeMultipartStream( "wcs", part.get(), response._parts );
         }
         else
         {
-            //OE_NOTICE << "[osgEarth.HTTPClient] detected single part data" << std::endl;
+            // store headers that we care about
+            part->_headers[IOMetadata::CONTENT_TYPE] = content_type;
+
             response._parts.push_back( part.get() );
         }
     }
@@ -721,23 +799,6 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
         //If we were aborted by a callback, then it was cancelled by a user
         response._cancelled = true;
     }
-    else
-    {        
-        //if ( callback )
-        //{
-        //    if ( errorBuf[0] ) {
-        //        callback->message() = errorBuf;
-        //    }
-        //    else {
-        //        std::stringstream buf;
-        //        buf << "HTTP Code " << response.getCode();
-        //        callback->message() = buf.str();
-        //    }
-        //}
-        //else {
-        //    OE_NOTICE << "[osgEarth] [HTTP] error, code = " << code << std::endl;
-        //}
-    }
 
     // Store the mime-type, if any. (Note: CURL manages the buffer returned by
     // this call.)
@@ -752,14 +813,16 @@ HTTPClient::doGet( const HTTPRequest& request, const osgDB::ReaderWriter::Option
 
 
 HTTPResponse
-HTTPClient::doGet( const std::string& url, const osgDB::ReaderWriter::Options* options, ProgressCallback* callback) const
+HTTPClient::doGet( const std::string& url, const osgDB::Options* options, ProgressCallback* callback) const
 {
-    return doGet( HTTPRequest( url ), options, callback );
+    return doGet( HTTPRequest(url), options, callback );
 }
 
 bool
-HTTPClient::doDownload(const std::string &url, const std::string &filename)
+HTTPClient::doDownload(const std::string& url, const std::string& filename)
 {
+    initialize();
+
     // download the data
     HTTPResponse response = this->doGet( HTTPRequest(url) );
 
@@ -784,7 +847,8 @@ HTTPClient::doDownload(const std::string &url, const std::string &filename)
     }
     else
     {
-        OE_WARN << LC << "Error downloading file " << filename << std::endl;
+        OE_WARN << LC << "Error downloading file " << filename
+            << " (" << response.getCode() << ")" << std::endl;
         return false;
     } 
 }
@@ -796,283 +860,242 @@ namespace
     {
         osgDB::ReaderWriter* reader = 0L;
 
-        // try to look up a reader by mime-type first:
-        std::string mimeType = response.getMimeType();
-        if ( !mimeType.empty() )
+        // try extension first:
+        std::string ext = osgDB::getFileExtension( url );
+        if ( !ext.empty() )
         {
-            reader = osgEarth::Registry::instance()->getReaderWriterForMimeType(mimeType);
+            reader = osgDB::Registry::instance()->getReaderWriterForExtension( ext );
         }
 
         if ( !reader )
         {
-            // Try to find a reader by file extension.
-            std::string ext = osgDB::getFileExtension( url );
-            reader = osgDB::Registry::instance()->getReaderWriterForExtension( ext );
+            // try to look up a reader by mime-type first:
+            std::string mimeType = response.getMimeType();
+            if ( !mimeType.empty() )
+            {
+                reader = osgDB::Registry::instance()->getReaderWriterForMimeType(mimeType);
+            }
         }
 
         return reader;
     }
 }
 
-HTTPClient::ResultCode
-HTTPClient::doReadImageFile(const std::string& filename, 
-                            osg::ref_ptr<osg::Image>& output,
-                            const osgDB::ReaderWriter::Options *options,
-                            osgEarth::ProgressCallback *callback)
+ReadResult
+HTTPClient::doReadImage(const std::string&    location,
+                        const osgDB::Options* options,
+                        ProgressCallback*     callback)
 {
-    ResultCode result = RESULT_OK;
+    initialize();
+
+    ReadResult result;
+
+    HTTPResponse response = this->doGet(location, options, callback);
 
-    if ( osgDB::containsServerAddress( filename ) )
+    if (response.isOK())
     {
-        HTTPResponse response = this->doGet(filename, options, callback);
+        osgDB::ReaderWriter* reader = getReader(location, response);
+        if (!reader)
+        {
+            OE_WARN << LC << "Can't find an OSG plugin to read "<<location<<std::endl;
+            result = ReadResult(ReadResult::RESULT_NO_READER);
+        }
 
-        if (response.isOK())
+        else 
         {
-            osgDB::ReaderWriter* reader = getReader(filename, response);
-            if (!reader)
+            osgDB::ReaderWriter::ReadResult rr = reader->readImage(response.getPartStream(0), options);
+            if ( rr.validImage() )
             {
-                OE_WARN << LC << "Can't find an OSG plugin to read "<<filename<<std::endl;
-                result = RESULT_NO_READER;
+                result = ReadResult(rr.takeImage(), response.getHeadersAsConfig() );
             }
-
             else 
             {
-                osgDB::ReaderWriter::ReadResult rr = reader->readImage(response.getPartStream(0), options);
-                if ( rr.validImage() )
+                if ( !rr.message().empty() )
                 {
-                    output = rr.takeImage();
-                }
-                else 
-                {
-                    if ( !rr.message().empty() )
-                    {
-                        OE_WARN << LC << "HTTP error: " << rr.message() << std::endl;
-                    }
-                    OE_WARN << LC << reader->className() << " failed to read image from " << filename << std::endl;
-                    result = RESULT_READER_ERROR;
+                    OE_WARN << LC << "HTTP error: " << rr.message() << std::endl;
                 }
+                OE_WARN << LC << reader->className() << " failed to read image from " << location << std::endl;
+                result = ReadResult(ReadResult::RESULT_READER_ERROR);
             }
         }
-        else
+    }
+    else
+    {
+        result = ReadResult(
+            response.isCancelled() ? ReadResult::RESULT_CANCELED :
+            response.getCode() == HTTPResponse::NOT_FOUND ? ReadResult::RESULT_NOT_FOUND :
+            response.getCode() == HTTPResponse::SERVER_ERROR ? ReadResult::RESULT_SERVER_ERROR :
+            ReadResult::RESULT_UNKNOWN_ERROR );
+
+        //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
+        if (HTTPClient::isRecoverable( result.code() ) )
         {
-            result =
-                response.isCancelled() ? RESULT_CANCELED :
-                response.getCode() == HTTPResponse::NOT_FOUND ? RESULT_NOT_FOUND :
-                response.getCode() == HTTPResponse::SERVER_ERROR ? RESULT_SERVER_ERROR :
-                RESULT_UNKNOWN_ERROR;
-
-            //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
-            if (HTTPClient::isRecoverable( result ) )
+            if (callback)
             {
-                if (callback)
-                {
-                    OE_DEBUG << "Error in HTTPClient for " << filename << " but it's recoverable" << std::endl;
-                    callback->setNeedsRetry( true );
-                }
+                OE_DEBUG << "Error in HTTPClient for " << location << " but it's recoverable" << std::endl;
+                callback->setNeedsRetry( true );
             }
-
-            //if ( response.isCancelled() )
-            //    OE_NOTICE << "HTTP cancel: " << filename << std::endl;
-            //else
-            //    OE_NOTICE << "HTTP ERROR " << response.getCode() << ": " << filename << std::endl;
-
-            /*if (response.isCancelled())
-                OE_NOTICE << "Request for " << filename << " was cancelled " << std::endl;*/
         }
     }
-    else
-    {
-        output = osgDB::readImageFile( filename, options );
-        if ( !output.valid() )
-            result = RESULT_NOT_FOUND;
-    }
+
+    // set the source name
+    if ( result.getImage() )
+        result.getImage()->setName( location );
 
     return result;
 }
 
-HTTPClient::ResultCode
-HTTPClient::doReadNodeFile(const std::string& filename,
-                           osg::ref_ptr<osg::Node>& output,
-                           const osgDB::ReaderWriter::Options *options,
-                           osgEarth::ProgressCallback *callback)
+ReadResult
+HTTPClient::doReadNode(const std::string&    location,
+                       const osgDB::Options* options,
+                       ProgressCallback*     callback)
 {
-    ResultCode result = RESULT_OK;
+    initialize();
+
+    ReadResult result;
 
-    if ( osgDB::containsServerAddress( filename ) )
+    HTTPResponse response = this->doGet(location, options, callback);
+
+    if (response.isOK())
     {
-        HTTPResponse response = this->doGet(filename, options, callback);
-        if (response.isOK())
+        osgDB::ReaderWriter* reader = getReader(location, response);
+        if (!reader)
         {
-            osgDB::ReaderWriter* reader = getReader(filename, response);
-            if (!reader)
-            {
-                OE_NOTICE<<LC<<"Error: No ReaderWriter for file "<<filename<<std::endl;
-                result = RESULT_NO_READER;
-            }
+            OE_WARN << LC << "Can't find an OSG plugin to read "<<location<<std::endl;
+            result = ReadResult(ReadResult::RESULT_NO_READER);
+        }
 
-            else
+        else 
+        {
+            osgDB::ReaderWriter::ReadResult rr = reader->readNode(response.getPartStream(0), options);
+            if ( rr.validNode() )
             {
-                osgDB::ReaderWriter::ReadResult rr = reader->readNode(response.getPartStream(0), options);
-                if ( rr.validNode() )
-                {
-                    output = rr.takeNode();
-                }
-                else
-                {
-                    if ( rr.error() )
-                    {
-                        OE_WARN << LC << "HTTP Reader Error: " << rr.message() << std::endl;
-                    }
-                    result = RESULT_READER_ERROR;
-                }
+                result = ReadResult(rr.takeNode(), response.getHeadersAsConfig());
             }
-        }
-        else
-        {
-            result =
-                response.isCancelled() ? RESULT_CANCELED :
-                response.getCode() == HTTPResponse::NOT_FOUND ? RESULT_NOT_FOUND :
-                response.getCode() == HTTPResponse::SERVER_ERROR ? RESULT_SERVER_ERROR :
-                RESULT_UNKNOWN_ERROR;
-
-            //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
-            if (HTTPClient::isRecoverable( result ) )
+            else 
             {
-                if (callback)
+                if ( !rr.message().empty() )
                 {
-                    OE_DEBUG << "Error in HTTPClient for " << filename << " but it's recoverable" << std::endl;
-                    callback->setNeedsRetry( true );
+                    OE_WARN << LC << "HTTP error: " << rr.message() << std::endl;
                 }
+                OE_WARN << LC << reader->className() << " failed to read node from " << location << std::endl;
+                result = ReadResult(ReadResult::RESULT_READER_ERROR);
             }
-               
-            /*if (response.isCancelled())
-                OE_NOTICE << "Request for " << filename << " was cancelled " << std::endl;*/
         }
     }
     else
     {
-        output = osgDB::readNodeFile( filename, options );
-        if ( !output.valid() )
-            result = RESULT_NOT_FOUND;
+        result = ReadResult(
+            response.isCancelled() ? ReadResult::RESULT_CANCELED :
+            response.getCode() == HTTPResponse::NOT_FOUND ? ReadResult::RESULT_NOT_FOUND :
+            response.getCode() == HTTPResponse::SERVER_ERROR ? ReadResult::RESULT_SERVER_ERROR :
+            ReadResult::RESULT_UNKNOWN_ERROR );
+
+        //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
+        if (HTTPClient::isRecoverable( result.code() ) )
+        {
+            if (callback)
+            {
+                OE_DEBUG << "Error in HTTPClient for " << location << " but it's recoverable" << std::endl;
+                callback->setNeedsRetry( true );
+            }
+        }
     }
 
     return result;
 }
 
-HTTPClient::ResultCode
-HTTPClient::doReadObjectFile(const std::string&                  url,
-                             osg::ref_ptr<osg::Object>&          output,
-                             const osgDB::ReaderWriter::Options* options,
-                             osgEarth::ProgressCallback*         callback)
+ReadResult
+HTTPClient::doReadObject(const std::string&    location,
+                         const osgDB::Options* options,
+                         ProgressCallback*     callback)
 {
-    ResultCode result = RESULT_OK;
+    initialize();
 
-    if ( osgDB::containsServerAddress( url ) )
+    ReadResult result;
+
+    HTTPResponse response = this->doGet(location, options, callback);
+
+    if (response.isOK())
     {
-        HTTPResponse response = this->doGet(url, options, callback);
-        if ( response.isOK() )
+        osgDB::ReaderWriter* reader = getReader(location, response);
+        if (!reader)
         {
-            osgDB::ReaderWriter* reader = getReader( url, response );
-            if ( !reader )
+            OE_WARN << LC << "Can't find an OSG plugin to read "<<location<<std::endl;
+            result = ReadResult(ReadResult::RESULT_NO_READER);
+        }
+
+        else 
+        {
+            osgDB::ReaderWriter::ReadResult rr = reader->readObject(response.getPartStream(0), options);
+            if ( rr.validObject() )
             {
-                OE_WARN << LC << "Error: No ReaderWriter for file " << url << std::endl;
-                result = RESULT_NO_READER;
+                result = ReadResult(rr.takeObject(), response.getHeadersAsConfig());
             }
-            else
+            else 
             {
-                osgDB::ReaderWriter::ReadResult rr = reader->readObject( response.getPartStream(0), options );
-                if ( rr.validNode() )
+                if ( !rr.message().empty() )
                 {
-                    output = rr.takeObject();
-                }
-                else
-                {
-                    if ( rr.error() )
-                    {
-                        OE_WARN << LC << "HTTP Reader Error: " << rr.message() << std::endl;
-                    }
-                    result = RESULT_READER_ERROR;
+                    OE_WARN << LC << "HTTP error: " << rr.message() << std::endl;
                 }
+                OE_WARN << LC << reader->className() << " failed to read object from " << location << std::endl;
+                result = ReadResult(ReadResult::RESULT_READER_ERROR);
             }
         }
-        else
+    }
+    else
+    {
+        result = ReadResult(
+            response.isCancelled() ? ReadResult::RESULT_CANCELED :
+            response.getCode() == HTTPResponse::NOT_FOUND ? ReadResult::RESULT_NOT_FOUND :
+            response.getCode() == HTTPResponse::SERVER_ERROR ? ReadResult::RESULT_SERVER_ERROR :
+            ReadResult::RESULT_UNKNOWN_ERROR );
+
+        //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
+        if (HTTPClient::isRecoverable( result.code() ) )
         {
-            result =
-                response.isCancelled() ? RESULT_CANCELED :
-                response.getCode() == HTTPResponse::NOT_FOUND ? RESULT_NOT_FOUND :
-                response.getCode() == HTTPResponse::SERVER_ERROR ? RESULT_SERVER_ERROR :
-                RESULT_UNKNOWN_ERROR;
-
-            //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
-            if (HTTPClient::isRecoverable( result ) )
+            if (callback)
             {
-                if (callback)
-                {
-                    OE_DEBUG << "Error in HTTPClient for " << url << " but it's recoverable" << std::endl;
-                    callback->setNeedsRetry( true );
-                }
+                OE_DEBUG << "Error in HTTPClient for " << location << " but it's recoverable" << std::endl;
+                callback->setNeedsRetry( true );
             }
         }
     }
-    else
-    {
-        output = osgDB::readObjectFile( url, options );
-        if ( !output.valid() )
-            result = RESULT_NOT_FOUND;
-    }
 
     return result;
 }
 
 
-HTTPClient::ResultCode 
-HTTPClient::doReadString(const std::string& filename,
-                         std::string& output,
-                         osgEarth::ProgressCallback* callback )
+ReadResult
+HTTPClient::doReadString(const std::string&    location,
+                         const osgDB::Options* options,
+                         ProgressCallback*     callback )
 {
-    ResultCode result = RESULT_OK;
+    initialize();
 
-    if ( osgDB::containsServerAddress( filename ) )
+    ReadResult result;
+
+    HTTPResponse response = this->doGet( location, options, callback );
+    if ( response.isOK() )
     {
-        HTTPResponse response = this->doGet( filename, NULL, callback );
-        if ( response.isOK() )
-        {
-            output = response.getPartAsString( 0 );
-        }
-        else
-        {
-            result =
-                response.isCancelled() ? RESULT_CANCELED :
-                response.getCode() == HTTPResponse::NOT_FOUND ? RESULT_NOT_FOUND :
-                response.getCode() == HTTPResponse::SERVER_ERROR ? RESULT_SERVER_ERROR :
-                RESULT_UNKNOWN_ERROR;
-
-            //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
-            if (HTTPClient::isRecoverable( result ) )
-            {
-                if (callback)
-                {
-                    OE_DEBUG << "Error in HTTPClient for " << filename << " but it's recoverable" << std::endl;
-                    callback->setNeedsRetry( true );
-                }
-            }
-        }
+        result = ReadResult( new StringObject(response.getPartAsString(0)), response.getHeadersAsConfig());
     }
     else
     {
-        std::ifstream input( filename.c_str() );
-        if ( input.is_open() )
+        result = ReadResult(
+            response.isCancelled() ? ReadResult::RESULT_CANCELED :
+            response.getCode() == HTTPResponse::NOT_FOUND ? ReadResult::RESULT_NOT_FOUND :
+            response.getCode() == HTTPResponse::SERVER_ERROR ? ReadResult::RESULT_SERVER_ERROR :
+            ReadResult::RESULT_UNKNOWN_ERROR );
+
+        //If we have an error but it's recoverable, like a server error or timeout then set the callback to retry.
+        if (HTTPClient::isRecoverable( result.code() ) )
         {
-            input >> std::noskipws;
-            std::stringstream buf;
-            buf << input.rdbuf();
-			std::string bufStr;
-		    bufStr = buf.str();
-            output = bufStr;
-        }
-        else
-        {
-            result = RESULT_NOT_FOUND;
+            if (callback)
+            {
+                OE_DEBUG << "Error in HTTPClient for " << location << " but it's recoverable" << std::endl;
+                callback->setNeedsRetry( true );
+            }
         }
     }
 
diff --git a/src/osgEarth/HeightFieldUtils b/src/osgEarth/HeightFieldUtils
index fb21838..a69d41a 100644
--- a/src/osgEarth/HeightFieldUtils
+++ b/src/osgEarth/HeightFieldUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #define OSGEARTH_HEIGHTFIELDUTILS_H
 
 #include <osgEarth/Common>
+#include <osgEarth/GeoData>
 #include <osg/Shape>
 #include <osg/CoordinateSystemNode>
 #include <osg/ClusterCullingCallback>
@@ -27,30 +28,6 @@
 
 namespace osgEarth
 {
-#define NO_DATA_VALUE -FLT_MAX
-
-    /**
-     * Heightfield interpolation methods.
-     */
-    enum OSGEARTH_EXPORT ElevationInterpolation
-    {
-        INTERP_AVERAGE,
-        INTERP_NEAREST,
-        INTERP_BILINEAR,
-        INTERP_TRIANGULATE
-    };
-
-    /**
-     * Heightfield stack sampling policy
-     */
-    enum OSGEARTH_EXPORT ElevationSamplePolicy
-    {
-        SAMPLE_FIRST_VALID,
-        SAMPLE_HIGHEST,
-        SAMPLE_LOWEST,
-        SAMPLE_AVERAGE
-    };
-
     class OSGEARTH_EXPORT HeightFieldUtils
     {
     public:
@@ -88,13 +65,25 @@ namespace osgEarth
          * Plate Carre map (in which vertical units are not well defined).
          */
         static void scaleHeightFieldToDegrees( osg::HeightField* hf );
+        
+        /**
+         * Creates a heightfield containing MSL heights for the specified extent.
+         * If the SRS (in GeoExtent) has a vertical datum, the height values will be those of
+         * its reference geoid. If there is no vertical datum, we assume that MSL == the reference
+         * ellipsoid, and all the HF values will be zero.
+         */
+        static osg::HeightField* createReferenceHeightField( 
+            const GeoExtent& ex, 
+            unsigned         numCols,
+            unsigned         numRows );
 
         /**
          * Subsamples a heightfield to the specified extent.
          */
         static osg::HeightField* createSubSample(
-            osg::HeightField* input, const class GeoExtent& inputEx,
-            const class GeoExtent& outputEx,
+            osg::HeightField*      input, 
+            const GeoExtent&       inputEx,
+            const GeoExtent&       outputEx,
             ElevationInterpolation interpolation = INTERP_BILINEAR);
 
         /**
@@ -106,13 +95,23 @@ namespace osgEarth
             int newX,
             int newY,
             ElevationInterpolation interp = INTERP_BILINEAR );
+
+        /**
+         * Resolves any "invalid" height values in the hieghtfield, replacing them
+         * with valid values from a Geoid (or zero if no geoid).
+         */
+        static void resolveInvalidHeights(
+            osg::HeightField* grid,
+            const GeoExtent&  extent,
+            float             invalidValue,
+            const Geoid*      geoid );
         
         /**
          * Creates a new cluster culler based on a heightfield.
          * Cluster cullers are for geocentric maps only, and therefore requires
          * the ellipsoid model.
          */
-        static osg::ClusterCullingCallback* createClusterCullingCallback(
+        static osg::NodeCallback* createClusterCullingCallback(
             osg::HeightField*    grid, 
             osg::EllipsoidModel* em, 
             float verticalScale =1.0f );
diff --git a/src/osgEarth/HeightFieldUtils.cpp b/src/osgEarth/HeightFieldUtils.cpp
index a657d68..e325984 100644
--- a/src/osgEarth/HeightFieldUtils.cpp
+++ b/src/osgEarth/HeightFieldUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,8 @@
 
 #include <osgEarth/HeightFieldUtils>
 #include <osgEarth/GeoData>
+#include <osgEarth/Geoid>
+#include <osgEarth/CullingUtils>
 #include <osg/Notify>
 
 using namespace osgEarth;
@@ -304,7 +306,91 @@ HeightFieldUtils::resizeHeightField(osg::HeightField* input, int newColumns, int
     return output;
 }
 
-osg::ClusterCullingCallback*
+
+osg::HeightField*
+HeightFieldUtils::createReferenceHeightField( const GeoExtent& ex, unsigned numCols, unsigned numRows )
+{
+    osg::HeightField* hf = new osg::HeightField();
+    hf->allocate( numCols, numRows );
+    hf->setOrigin( osg::Vec3d( ex.xMin(), ex.yMin(), 0.0 ) );
+    hf->setXInterval( (ex.xMax() - ex.xMin())/(double)(numCols-1) );
+    hf->setYInterval( (ex.yMax() - ex.yMin())/(double)(numRows-1) );
+
+    const VerticalDatum* vdatum = ex.isValid() ? ex.getSRS()->getVerticalDatum() : 0L;
+
+    if ( vdatum )
+    {
+        // need the lat/long extent for geoid queries:
+        GeoExtent geodeticExtent = ex.getSRS()->isGeographic() ? ex : ex.transform( ex.getSRS()->getGeographicSRS() );
+        double latMin = geodeticExtent.yMin();
+        double lonMin = geodeticExtent.xMin();
+        double lonInterval = geodeticExtent.width() / (double)(numCols-1);
+        double latInterval = geodeticExtent.height() / (double)(numRows-1);
+
+        for( unsigned r=0; r<numRows; ++r )
+        {            
+            double lat = latMin + latInterval*(double)r;
+            for( unsigned c=0; c<numCols; ++c )
+            {
+                double lon = lonMin + lonInterval*(double)c;
+                double offset = vdatum->msl2hae(lat, lon, 0.0);
+                hf->setHeight( c, r, offset );
+            }
+        }
+    }
+    else
+    {
+        for(unsigned int i=0; i<hf->getHeightList().size(); i++ )
+            hf->getHeightList()[i] = 0.0;
+    }
+
+    hf->setBorderWidth( 0 );
+    return hf;    
+}
+
+void
+HeightFieldUtils::resolveInvalidHeights(osg::HeightField* grid,
+                                        const GeoExtent&  ex,
+                                        float             invalidValue,
+                                        const Geoid*      geoid)
+{
+    if ( geoid )
+    {
+        // need the lat/long extent for geoid queries:
+        unsigned numRows = grid->getNumRows();
+        unsigned numCols = grid->getNumColumns();
+        GeoExtent geodeticExtent = ex.getSRS()->isGeographic() ? ex : ex.transform( ex.getSRS()->getGeographicSRS() );
+        double latMin = geodeticExtent.yMin();
+        double lonMin = geodeticExtent.xMin();
+        double lonInterval = geodeticExtent.width() / (double)(numCols-1);
+        double latInterval = geodeticExtent.height() / (double)(numRows-1);
+
+        for( unsigned r=0; r<numRows; ++r )
+        {
+            double lat = latMin + latInterval*(double)r;
+            for( unsigned c=0; c<numCols; ++c )
+            {
+                double lon = lonMin + lonInterval*(double)c;
+                if ( grid->getHeight(c, r) == invalidValue )
+                {
+                    grid->setHeight( c, r, geoid->getHeight(lat, lon) );
+                }
+            }
+        }
+    }
+    else
+    {
+        for(unsigned int i=0; i<grid->getHeightList().size(); i++ )
+        {
+            if ( grid->getHeightList()[i] == invalidValue )
+            {
+                grid->getHeightList()[i] = 0.0;
+            }
+        }
+    }
+}
+
+osg::NodeCallback*
 HeightFieldUtils::createClusterCullingCallback( osg::HeightField* grid, osg::EllipsoidModel* et, float verticalScale )
 {
     //This code is a very slightly modified version of the DestinationTile::createClusterCullingCallback in VirtualPlanetBuilder.
@@ -381,9 +467,8 @@ HeightFieldUtils::createClusterCullingCallback( osg::HeightField* grid, osg::Ell
         }
     }    
 
-    osg::ClusterCullingCallback* ccc = new osg::ClusterCullingCallback;
-
-    ccc->set(center_position + transformed_center_normal*max_cluster_culling_height ,
+    osg::NodeCallback* ccc = ClusterCullingFactory::create(
+        center_position + transformed_center_normal*max_cluster_culling_height ,
         transformed_center_normal, 
         min_dot_product,
         max_cluster_culling_radius);
diff --git a/src/osgEarth/IOTypes b/src/osgEarth/IOTypes
new file mode 100644
index 0000000..5141f98
--- /dev/null
+++ b/src/osgEarth/IOTypes
@@ -0,0 +1,237 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_IOTYPES_H
+#define OSGEARTH_IOTYPES_H 1
+
+#include <osgEarth/Config>
+
+/**
+ * A collectin of types used by the various I/O systems in osgEarth. These
+ * are extended variations on some of OSG's ReaderWriter types.
+ */
+namespace osgEarth
+{
+
+//--------------------------------------------------------------------
+
+    /**
+     * String wrapped in an osg::Object (for I/O purposes)
+     */
+    class OSGEARTH_EXPORT StringObject : public osg::Object
+    {
+    public:
+        StringObject();
+        StringObject( const StringObject& rhs, const osg::CopyOp& op ) : osg::Object(rhs, op), _str(rhs._str) { }
+        StringObject( const std::string& in ) : osg::Object(), _str(in) { }
+
+        /** dtor */
+        virtual ~StringObject() { }
+        META_Object( osgEarth, StringObject );
+
+        void setString( const std::string& value ) { _str = value; }
+        const std::string& getString() const { return _str; }
+    private:
+        std::string _str;
+    };
+
+
+//--------------------------------------------------------------------
+
+    /**
+     * Convenience metadata tags
+     */
+    struct OSGEARTH_EXPORT IOMetadata
+    {
+        static const std::string CONTENT_TYPE;
+    };
+
+//--------------------------------------------------------------------
+
+    /**
+     * Return value from a read* method
+     */
+    struct /*no-export*/ ReadResult
+    {
+        /** Read result codes. */
+        enum Code
+        {
+            RESULT_OK,
+            RESULT_CANCELED,
+            RESULT_NOT_FOUND,
+            RESULT_SERVER_ERROR,
+            RESULT_TIMEOUT,
+            RESULT_NO_READER,
+            RESULT_READER_ERROR,
+            RESULT_UNKNOWN_ERROR,
+            RESULT_NOT_IMPLEMENTED
+        };
+
+        /** Construct a result with no object */
+        ReadResult( Code code =RESULT_NOT_FOUND )
+            : _code(code), _fromCache(false) { }
+
+        /** Construct a successful result */
+        ReadResult( osg::Object* result )
+            : _code(RESULT_OK), _result(result), _fromCache(false) { }
+
+        /** Construct a successful result with metadata */
+        ReadResult( osg::Object* result, const Config& meta )
+            : _code(RESULT_OK), _result(result), _meta(meta), _fromCache(false) { }
+
+        /** Copy construct */
+        ReadResult( const ReadResult& rhs )
+            : _code(rhs._code), _result(rhs._result.get()), _meta(rhs._meta), _fromCache(rhs._fromCache) { }
+
+        /** dtor */
+        virtual ~ReadResult() { }
+
+        /** Whether the read operation succeeded */
+        bool succeeded() const { return _code == RESULT_OK && _result.valid(); }
+
+        /** Whether the read operation failed */
+        bool failed() const { return _code != RESULT_OK; }
+
+        /** Whether the result contains an object */
+        bool empty() const { return !_result.valid(); }
+
+        /** The result code */
+        const Code& code() const { return _code; }
+
+        /** True if the object came from the cache */
+        bool isFromCache() const { return _fromCache; }
+
+        /** The result */
+        osg::Object* getObject() const { return _result.get(); }
+        osg::Image*  getImage()  const { return get<osg::Image>(); }
+        osg::Node*   getNode()   const { return get<osg::Node>(); }
+
+        /** The result, transfering ownership to the caller */
+        osg::Object* releaseObject() { return _result.release(); }
+        osg::Image*  releaseImage()  { return release<osg::Image>(); }
+        osg::Node*   releaseNode()   { return release<osg::Node>(); }
+
+        /** The metadata */
+        const Config& metadata() const { return _meta; }
+
+        /** The result, cast to a custom type */
+        template<typename T>
+        T* get() const { return dynamic_cast<T*>(_result.get()); }
+
+        /** The result, cast to a custom type and transfering ownership to the caller*/
+        template<typename T>
+        T* release() { return dynamic_cast<T*>(_result.get())? static_cast<T*>(_result.release()) : 0L; }
+
+        /** The result as a string */
+        const std::string& getString() const { const StringObject* so = dynamic_cast<StringObject*>(_result.get()); return so ? so->getString() : _emptyString; }
+        
+        /** Gets a string describing the read result */
+        static std::string getResultCodeString( unsigned code )
+        {
+            return
+                code == RESULT_OK              ? "OK" :
+                code == RESULT_CANCELED        ? "Read canceled" :
+                code == RESULT_NOT_FOUND       ? "Target not found" :
+                code == RESULT_SERVER_ERROR    ? "Server error" :
+                code == RESULT_TIMEOUT         ? "Read timed out" :
+                code == RESULT_NO_READER       ? "No suitable ReaderWriter found" :
+                code == RESULT_READER_ERROR    ? "ReaderWriter error" :
+                code == RESULT_NOT_IMPLEMENTED ? "Not implemented" :
+                "Unknown error";
+        }
+
+        std::string getResultCodeString() const
+        {
+            return getResultCodeString( _code );
+        }
+
+    public:
+        void setIsFromCache(bool value) { _fromCache = value; }
+
+    protected:
+        Code                      _code;
+        osg::ref_ptr<osg::Object> _result;
+        Config                    _meta;
+        std::string               _emptyString;
+        Config                    _emptyConfig;
+        bool                      _fromCache;
+    };
+
+//--------------------------------------------------------------------
+
+    /**
+     * Callback that allows the developer to re-route URI read calls. 
+     *
+     * If the corresponding callback method returns NOT_IMPLEMENTED, URI will
+     * fall back on its default mechanism.
+     */
+    class OSGEARTH_EXPORT URIReadCallback : public osg::Referenced
+    {
+    public:
+        enum CachingSupport
+        {
+            CACHE_NONE        = 0,
+            CACHE_OBJECTS     = 1 << 0,
+            CACHE_NODES       = 1 << 1,
+            CACHE_IMAGES      = 1 << 2,
+            CACHE_STRINGS     = 1 << 3,
+            CACHE_CONFIGS     = 1 << 4,
+            CACHE_ALL         = ~0
+        };
+
+        /** 
+         * Tells the URI class which data types (if any) from this callback should be subjected
+         * to osgEarth's caching mechamism. By default, the answer is "none" - URI
+         * will not attempt to read or write from its cache when using this callback.
+         */
+        virtual unsigned cachingSupport() const { return CACHE_NONE; }
+
+    public:
+
+        /** Override the readObject() implementation */
+        virtual osgEarth::ReadResult readObject( const std::string& uri, const osgDB::Options* options ) {
+            return osgEarth::ReadResult::RESULT_NOT_IMPLEMENTED; }
+
+        /** Override the readNode() implementation */
+        virtual osgEarth::ReadResult readNode( const std::string& uri, const osgDB::Options* options ) {
+            return osgEarth::ReadResult::RESULT_NOT_IMPLEMENTED; }
+
+        /** Override the readImage() implementation */
+        virtual osgEarth::ReadResult readImage( const std::string& uri, const osgDB::Options* options ) {
+            return osgEarth::ReadResult::RESULT_NOT_IMPLEMENTED; }
+
+        /** Override the readString() implementation */
+        virtual osgEarth::ReadResult readString( const std::string& uri, const osgDB::Options* options ) {
+            return osgEarth::ReadResult::RESULT_NOT_IMPLEMENTED; }
+
+        /** Override the readConfig() implementation */
+        virtual osgEarth::ReadResult readConfig( const std::string& uri, const osgDB::Options* options ) {
+            return osgEarth::ReadResult::RESULT_NOT_IMPLEMENTED; }
+
+    protected:
+
+        URIReadCallback();
+
+        /** dtor */
+        virtual ~URIReadCallback() { }
+    };
+
+}
+
+#endif // OSGEARTH_IOTYPES_H
diff --git a/src/osgEarth/IOTypes.cpp b/src/osgEarth/IOTypes.cpp
new file mode 100644
index 0000000..96ea3e5
--- /dev/null
+++ b/src/osgEarth/IOTypes.cpp
@@ -0,0 +1,104 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/IOTypes>
+#include <osgEarth/URI>
+#include <osgEarth/XmlUtils>
+#include <osgDB/FileNameUtils>
+#include <osgDB/ReaderWriter>
+#include <osgDB/Registry>
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+const std::string IOMetadata::CONTENT_TYPE = "Content-type";
+
+//------------------------------------------------------------------------
+
+StringObject::StringObject() :
+osg::Object()
+{
+    //nop
+}
+
+//------------------------------------------------------------------------
+
+URIReadCallback::URIReadCallback()
+{
+    //nop
+}
+
+//------------------------------------------------------------------------
+
+/**
+ * Registerd "StringObject" with OSG's serialization framework. Basically
+ * that means that StringObject instances can be read/written to an .osgb
+ * file. We use this for caching string data (XML, JSON files for example).
+ */
+REGISTER_OBJECT_WRAPPER(StringObject,
+                        new osgEarth::StringObject,
+                        osgEarth::StringObject,
+                        "osgEarth::StringObject")
+{
+    ADD_STRING_SERIALIZER( String, "" );  // _str
+}
+
+//------------------------------------------------------------------------
+
+/**
+ * This is an OSG reader/writer template. We're using this to register 
+ * readers for "XML" and "JSON" format -- these are just text files, but we
+ * have to do this to enable OSG to read them from inside an archive (like
+ * a ZIP file). For example, this lets OSG read the tilemap.xml file stores
+ * with a TMS repository in a ZIP.
+ */
+
+#define STRING_READER_WRITER_SHIM(SUFFIX, EXTENSION, DEF) \
+struct osgEarthStringReaderWriter##SUFFIX : public osgDB::ReaderWriter \
+{ \
+    osgEarthStringReaderWriter##SUFFIX () { \
+        supportsExtension( EXTENSION, DEF ); \
+    } \
+    osgDB::ReaderWriter::ReadResult readObject(const std::string& uri, const osgDB::Options* dbOptions) const { \
+        std::string ext = osgDB::getLowerCaseFileExtension( uri ); \
+        if ( !acceptsExtension(ext) ) return osgDB::ReaderWriter::ReadResult::FILE_NOT_HANDLED; \
+        osgEarth::ReadResult r = URI( uri ).readString( dbOptions ); \
+        if ( r.succeeded() ) return r.release<StringObject>(); \
+        return osgDB::ReaderWriter::ReadResult::ERROR_IN_READING_FILE; \
+    } \
+    osgDB::ReaderWriter::ReadResult readObject(std::istream& in, const osgDB::Options* dbOptions ) const { \
+        URIContext uriContext( dbOptions ); \
+        return new StringObject( Stringify() << in.rdbuf() ); \
+    } \
+    osgDB::ReaderWriter::WriteResult writeObject( const osg::Object& obj, const std::string& location, const osgDB::Options* dbOptions ) const { \
+        std::string ext = osgDB::getLowerCaseFileExtension(location); \
+        if ( !acceptsExtension(ext) ) return osgDB::ReaderWriter::WriteResult::FILE_NOT_HANDLED; \
+        const StringObject* so = dynamic_cast<const StringObject*>(&obj); \
+        if ( !so ) return osgDB::ReaderWriter::WriteResult::FILE_NOT_HANDLED; \
+        std::ofstream out(location.c_str()); \
+        if ( out.is_open() ) { out << so->getString(); out.close(); return osgDB::ReaderWriter::WriteResult::FILE_SAVED; } \
+        return osgDB::ReaderWriter::WriteResult::ERROR_IN_WRITING_FILE; \
+    } \
+}
+
+STRING_READER_WRITER_SHIM( XML, "xml", "osgEarth XML shim" );
+REGISTER_OSGPLUGIN( xml, osgEarthStringReaderWriterXML );
+
+STRING_READER_WRITER_SHIM( JSON, "json", "osgEarth JSON shim" );
+REGISTER_OSGPLUGIN( json, osgEarthStringReaderWriterJSON );
diff --git a/src/osgEarth/ImageLayer b/src/osgEarth/ImageLayer
index a3204c9..456c70d 100644
--- a/src/osgEarth/ImageLayer
+++ b/src/osgEarth/ImageLayer
@@ -1,6 +1,5 @@
-/* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,14 +21,14 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
+#include <osgEarth/ColorFilter>
 #include <osgEarth/TileSource>
-#include <osgEarth/Profile>
-#include <osgEarth/Caching>
 #include <osgEarth/TerrainLayer>
-#include <osgEarth/ThreadingUtils>
 
 namespace osgEarth
 {
+    class Profile;
+
     /**
      * Initialization options for an image layer.
      */
@@ -45,12 +44,15 @@ namespace osgEarth
          */         
         ImageLayerOptions( const std::string& name, const TileSourceOptions& driverOpt =TileSourceOptions() );
 
+        /** dtor */
+        virtual ~ImageLayerOptions() { }
+
 
     public: // properties
 
-		/**
-		 * The initial opacity of this layer
-		 */
+        /**
+         * The initial opacity of this layer
+         */
         optional<float>& opacity() { return _opacity; }
         const optional<float>& opacity() const { return _opacity; }
 
@@ -66,52 +68,47 @@ namespace osgEarth
         optional<float>& maxVisibleRange() { return _maxRange; }
         const optional<float>& maxVisibleRange() const { return _maxRange; }
 
-		/**
-		 * Gets or sets the nodata image for this MapLayer
-		 */
-        optional<std::string>& noDataImageFilename() { return _noDataImageFilename; }
-        const optional<std::string>& noDataImageFilename() const { return _noDataImageFilename; }
-
-		/**
-		 * Gets the transparent color of this TileSource
-		 */
-		optional<osg::Vec4ub>& transparentColor() { return _transparentColor; }
-        const optional<osg::Vec4ub>& transparentColor() const { return _transparentColor; }
-
         /**
-         * The texture magnification mipmapping filter mode
+         * Gets or sets the nodata image for this MapLayer
          */
-		optional<osg::Texture::FilterMode>& magFilter(void) {return _magFilter;}
-		const optional<osg::Texture::FilterMode>& magFilter(void) const {return _magFilter;}
+        optional<std::string>& noDataImageFilename() { return _noDataImageFilename; }
+        const optional<std::string>& noDataImageFilename() const { return _noDataImageFilename; }
 
         /**
-         * The texture minification mipmapping filter mode
+         * Gets the transparent color of this TileSource
          */
-		optional<osg::Texture::FilterMode>& minFilter(void) {return _minFilter;}
-		const optional<osg::Texture::FilterMode>& minFilter(void) const {return _minFilter;}
-
+        optional<osg::Vec4ub>& transparentColor() { return _transparentColor; }
+        const optional<osg::Vec4ub>& transparentColor() const { return _transparentColor; }
+        
         /**
          * Whether LOD blending is enabled for this layer
          */
         optional<bool>& lodBlending() { return _lodBlending; }
         const optional<bool>& lodBlending() const { return _lodBlending; }
 
+        /**
+         * Filters attached to this layer.
+         */
+        ColorFilterChain& colorFilters() { return _colorFilters; }
+        const ColorFilterChain& colorFilters() const { return _colorFilters; }
+
     public:
-        virtual Config getConfig() const;
+
+        virtual Config getConfig() const { return getConfig(false); }
+        virtual Config getConfig( bool isolate ) const;
         virtual void mergeConfig( const Config& conf );
         
     private:
         void fromConfig( const Config& conf );
         void setDefaults();
 
-		optional<float>  _opacity;
+        optional<float>  _opacity;
         optional<float>  _minRange;
         optional<float>  _maxRange;
-		optional<osg::Vec4ub> _transparentColor;
-	    optional<std::string> _noDataImageFilename;
-		optional<osg::Texture::FilterMode> _magFilter;
-        optional<osg::Texture::FilterMode> _minFilter;
+        optional<osg::Vec4ub> _transparentColor;
+        optional<std::string> _noDataImageFilename;
         optional<bool> _lodBlending;
+        ColorFilterChain _colorFilters;
     };
 
     //--------------------------------------------------------------------
@@ -121,7 +118,10 @@ namespace osgEarth
      */
     struct ImageLayerCallback : public TerrainLayerCallback
     {
-        virtual void onOpacityChanged( class ImageLayer* layer ) { }        
+        virtual void onOpacityChanged( class ImageLayer* layer ) { }
+        virtual void onVisibleRangeChanged( class ImageLayer* layer ) {}
+        virtual void onColorFiltersChanged( class ImageLayer* layer ) { }
+        virtual ~ImageLayerCallback() { }
     };
 
     typedef void (ImageLayerCallback::*ImageLayerCallbackMethodPtr)(ImageLayer* layer);
@@ -139,15 +139,18 @@ namespace osgEarth
     public:
         ImageLayerTileProcessor( const ImageLayerOptions& options =ImageLayerOptions() );
 
-        void init( const ImageLayerOptions& options, bool layerInTargetProfile );
+        /** dtor */
+        virtual ~ImageLayerTileProcessor() { }
+
+        void init( const ImageLayerOptions& options, const osgDB::Options* dbOptions, bool layerInTargetProfile );
 
         void process( osg::ref_ptr<osg::Image>& image ) const;
 
     private:
-        ImageLayerOptions _options;
-        osg::Vec4f _chromaKey;
-        osg::ref_ptr<const osg::Image> _noDataImage;
-        bool _layerInTargetProfile;
+        ImageLayerOptions                  _options;
+        osg::Vec4f                         _chromaKey;
+        osg::ref_ptr<osg::Image>           _noDataImage;
+        bool                               _layerInTargetProfile;
     };
 
     //--------------------------------------------------------------------
@@ -173,12 +176,15 @@ namespace osgEarth
          */
         ImageLayer( const ImageLayerOptions& options, TileSource* tileSource );
 
+        /** dtor */
+        virtual ~ImageLayer() { }
+
     public:
         /**
          * Access to the initialization options used to create this image layer
          */
         const ImageLayerOptions& getImageLayerOptions() const { return _runtimeOptions; }
-        virtual const TerrainLayerOptions& getTerrainLayerOptions() const { return _runtimeOptions; }
+        virtual const TerrainLayerOptions& getTerrainLayerRuntimeOptions() const { return _runtimeOptions; }
 
         /** Adds a property notification callback to this layer */
         void addCallback( ImageLayerCallback* cb );
@@ -189,45 +195,89 @@ namespace osgEarth
         /** Override: see TerrainLayer */
         virtual void setTargetProfileHint( const Profile* profile );
 
+
+        /**
+         * Add a color filter (to the end of the chain)
+         */
+        void addColorFilter( ColorFilter* filter );
+
+        /**
+         * Remove a color filter
+         */
+        void removeColorFilter( ColorFilter* filter );
+
+        /** 
+         * Access the image filter chain
+         */
+        const ColorFilterChain& getColorFilters() const;
+
+
     public: // runtime properties
 
+        /**
+         * Sets the opacity of this image layer.
+         * @param opacity Opacity [0..1] -> [transparent..opaque]
+         */
         void setOpacity( float opacity );
+
         float getOpacity() const { return *_runtimeOptions.opacity(); }
-        
+
         void disableLODBlending();
         bool isLODBlendingEnabled() const { return *_runtimeOptions.lodBlending(); }
 
+        float getMinVisibleRange() const { return *_runtimeOptions.minVisibleRange();}
+        void setMinVisibleRange( float minVisibleRange );
+
+        float getMaxVisibleRange() const { return *_runtimeOptions.maxVisibleRange();}
+        void setMaxVisibleRange( float maxVisibleRange );
+
+
     public: // methods
 
-		/**
-		 * Creates a GeoImage from this MapLayer
-		 */
-		GeoImage createImage( const TileKey& key, ProgressCallback* progress = 0);
+        /**
+         * Creates a GeoImage from this layer corresponding to the provided key. The
+         * image is in the profile of the key and will be reprojected, mosaiced and
+         * cropped automatically.
+         */
+        virtual GeoImage createImage( const TileKey& key, ProgressCallback* progress = 0, bool forceFallback =false);
+
+        /**
+         * Creates an image that is in the image layer's native profile.
+         */
+        GeoImage createImageInNativeProfile(const TileKey& key, ProgressCallback* progress, bool forceFallback, bool& out_isFallback);
+
+    public: // TerrainLayer override
+
+        CacheBin* getCacheBin( const Profile* profile );
 
     protected:
 
-        osg::Image* createImageWrapper(
-            const TileKey& key,
-            bool cacheInLayerProfile,
-            ProgressCallback* progress );
+        // Creates an image that's in the same profile as the provided key.
+        GeoImage createImageInKeyProfile(const TileKey& key, ProgressCallback* progress, bool forceFallback, bool& out_isFallback);
 
-        virtual void initTileSource();
-    private:
-        //const ImageLayerOptions _options;
-        ImageLayerOptions       _runtimeOptions;
+        // Fetches an image from the underlying TileSource whose data matches that of the
+        // key extent.
+        GeoImage createImageFromTileSource(const TileKey& key, ProgressCallback* progress, bool forceFallback, bool& out_isFallback);
+
+        // Fetches multiple images from the TileSource; mosaics/reprojects/crops as necessary, and
+        // returns a single tile. This is called by createImageFromTileSource() if the key profile
+        // doesn't match the layer profile.
+        GeoImage assembleImageFromTileSource(const TileKey& key, ProgressCallback* progress, bool& out_isFallback);
 
-        //float _actualOpacity;        
-        //bool  _actualLODBlending;
 
+        virtual void initTileSource();
+
+    protected:
+        ImageLayerOptions                        _runtimeOptions;
         osg::ref_ptr<TileSource::ImageOperation> _preCacheOp;
-        
-        void initPreCacheOp();
+        osg::ref_ptr<osg::Image>                 _emptyImage;
+        ImageLayerCallbackList                   _callbacks;
 
-        ImageLayerCallbackList _callbacks;
         virtual void fireCallback( TerrainLayerCallbackMethodPtr method );
         virtual void fireCallback( ImageLayerCallbackMethodPtr method );
 
         void init();
+        void initPreCacheOp();
     };
 
     typedef std::vector< osg::ref_ptr<ImageLayer> > ImageLayerVector;
diff --git a/src/osgEarth/ImageLayer.cpp b/src/osgEarth/ImageLayer.cpp
index 5f12a80..d4d036f 100644
--- a/src/osgEarth/ImageLayer.cpp
+++ b/src/osgEarth/ImageLayer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,19 +17,26 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/ImageLayer>
+#include <osgEarth/ColorFilter>
 #include <osgEarth/TileSource>
 #include <osgEarth/ImageMosaic>
 #include <osgEarth/ImageUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/StringUtils>
+#include <osgEarth/URI>
 #include <osg/Version>
+#include <osgDB/WriteFile>
 #include <memory.h>
 #include <limits.h>
 
 using namespace osgEarth;
 using namespace OpenThreads;
 
-#define LC "[ImageLayer] "
+#define LC "[ImageLayer] \"" << getName() << "\" "
+
+// TESTING
+//#undef  OE_DEBUG
+//#define OE_DEBUG OE_INFO
 
 //------------------------------------------------------------------------
 
@@ -76,47 +83,35 @@ ImageLayerOptions::fromConfig( const Config& conf )
     if ( conf.hasValue( "transparent_color" ) )
         _transparentColor = stringToColor( conf.value( "transparent_color" ), osg::Vec4ub(0,0,0,0));
 
-	//Load the filter settings
-	conf.getIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
-    conf.getIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
-    conf.getIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
-    conf.getIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
-    conf.getIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
-    conf.getIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
-    conf.getIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
-    conf.getIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
-    conf.getIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
-    conf.getIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
-    conf.getIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
-    conf.getIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);   
+    if ( conf.hasChild("color_filters") )
+    {
+        _colorFilters.clear();
+        ColorFilterRegistry::instance()->readChain( conf.child("color_filters"), _colorFilters );
+    }
 }
 
 Config
-ImageLayerOptions::getConfig() const
+ImageLayerOptions::getConfig( bool isolate ) const
 {
-    Config conf = TerrainLayerOptions::getConfig();
+    Config conf = TerrainLayerOptions::getConfig( isolate );
+
     conf.updateIfSet( "nodata_image", _noDataImageFilename );
     conf.updateIfSet( "opacity", _opacity );
     conf.updateIfSet( "min_range", _minRange );
     conf.updateIfSet( "max_range", _maxRange );
     conf.updateIfSet( "lod_blending", _lodBlending );
 
-	if (_transparentColor.isSet())
+    if (_transparentColor.isSet())
         conf.update("transparent_color", colorToString( _transparentColor.value()));
 
-    //Save the filter settings
-	conf.updateIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
-    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
-    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
-    conf.updateIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
-    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
-    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
-    conf.updateIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
-    conf.updateIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
-    conf.updateIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
-    conf.updateIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
-    conf.updateIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
-    conf.updateIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+    if ( _colorFilters.size() > 0 )
+    {
+        Config filtersConf("color_filters");
+        if ( ColorFilterRegistry::instance()->writeChain( _colorFilters, filtersConf ) )
+        {
+            conf.add( filtersConf );
+        }
+    }
     
     return conf;
 }
@@ -148,29 +143,33 @@ namespace
 
 //------------------------------------------------------------------------
 
-ImageLayerTileProcessor::ImageLayerTileProcessor( const ImageLayerOptions& options )
+ImageLayerTileProcessor::ImageLayerTileProcessor(const ImageLayerOptions& options)
 {
-    init( options, false );
+    init( options, 0L, false );
 }
 
 void
-ImageLayerTileProcessor::init( const ImageLayerOptions& options, bool layerInTargetProfile )
+ImageLayerTileProcessor::init(const ImageLayerOptions& options,
+                              const osgDB::Options*    dbOptions, 
+                              bool                     layerInTargetProfile )
 {
     _options = options;
     _layerInTargetProfile = layerInTargetProfile;
 
-    if ( _layerInTargetProfile )
-        OE_DEBUG << LC << "Good, the layer and map have the same profile." << std::endl;
+    //if ( _layerInTargetProfile )
+    //    OE_DEBUG << LC << "Good, the layer and map have the same profile." << std::endl;
 
     const osg::Vec4ub& ck= *_options.transparentColor();
     _chromaKey.set( ck.r() / 255.0f, ck.g() / 255.0f, ck.b() / 255.0f, 1.0 );
 
     if ( _options.noDataImageFilename().isSet() && !_options.noDataImageFilename()->empty() )
     {
-        _noDataImage = URI(*_options.noDataImageFilename()).readImage();
+        URI noDataURI( *_options.noDataImageFilename() );
+        _noDataImage = noDataURI.getImage( dbOptions );
+        //_noDataImage = URI( *_options.noDataImageFilename() ).readImage(dbOptions).getImage();
         if ( !_noDataImage.valid() )
         {
-            OE_WARN << "Warning: Could not read nodata image from \"" << _options.noDataImageFilename().value() << "\"" << std::endl;
+            OE_WARN << "Failed to read nodata image from \"" << _options.noDataImageFilename().value() << "\"" << std::endl;
         }
     }
 }
@@ -215,32 +214,27 @@ ImageLayerTileProcessor::process( osg::ref_ptr<osg::Image>& image ) const
         ImageUtils::PixelVisitor<ApplyChromaKey> applyChroma;
         applyChroma._chromaKey = _chromaKey;
         applyChroma.accept( image.get() );
-    }
-
-    // protected against multi threaded access. This is a requirement in sequential/preemptive mode, 
-    // for example. This used to be in TextureCompositorTexArray::prepareImage.
-    // TODO: review whether this affects performance.    
-    image->setDataVariance( osg::Object::DYNAMIC );
+    }    
 }
 
 //------------------------------------------------------------------------
 
 ImageLayer::ImageLayer( const ImageLayerOptions& options ) :
-TerrainLayer( &_runtimeOptions ),
+TerrainLayer( options, &_runtimeOptions ),
 _runtimeOptions( options )
 {
     init();
 }
 
 ImageLayer::ImageLayer( const std::string& name, const TileSourceOptions& driverOptions ) :
-TerrainLayer   ( &_runtimeOptions ),
+TerrainLayer   ( ImageLayerOptions(name, driverOptions), &_runtimeOptions ),
 _runtimeOptions( ImageLayerOptions(name, driverOptions) )
 {
     init();
 }
 
 ImageLayer::ImageLayer( const ImageLayerOptions& options, TileSource* tileSource ) :
-TerrainLayer   ( &_runtimeOptions, tileSource ),
+TerrainLayer   ( options, &_runtimeOptions, tileSource ),
 _runtimeOptions( options )
 {
     init();
@@ -249,7 +243,8 @@ _runtimeOptions( options )
 void
 ImageLayer::init()
 {
-    //nop
+    _emptyImage = ImageUtils::createEmptyImage();
+    //*((unsigned*)_emptyImage->data()) = 0x7F0000FF;
 }
 
 void
@@ -293,6 +288,45 @@ ImageLayer::setOpacity( float value )
     fireCallback( &ImageLayerCallback::onOpacityChanged );
 }
 
+void
+ImageLayer::setMinVisibleRange( float minVisibleRange )
+{
+    _runtimeOptions.minVisibleRange() = minVisibleRange;
+    fireCallback( &ImageLayerCallback::onVisibleRangeChanged );
+}
+
+void
+ImageLayer::setMaxVisibleRange( float maxVisibleRange )
+{
+    _runtimeOptions.maxVisibleRange() = maxVisibleRange;
+    fireCallback( &ImageLayerCallback::onVisibleRangeChanged );
+}
+
+void
+ImageLayer::addColorFilter( ColorFilter* filter )
+{
+    _runtimeOptions.colorFilters().push_back( filter );
+    fireCallback( &ImageLayerCallback::onColorFiltersChanged );
+}
+
+void
+ImageLayer::removeColorFilter( ColorFilter* filter )
+{
+    ColorFilterChain& filters = _runtimeOptions.colorFilters();
+    ColorFilterChain::iterator i = std::find(filters.begin(), filters.end(), filter);
+    if ( i != filters.end() )
+    {
+        filters.erase( i );
+        fireCallback( &ImageLayerCallback::onColorFiltersChanged );
+    }
+}
+
+const ColorFilterChain&
+ImageLayer::getColorFilters() const
+{
+    return _runtimeOptions.colorFilters();
+}
+
 void 
 ImageLayer::disableLODBlending()
 {
@@ -324,272 +358,207 @@ ImageLayer::initPreCacheOp()
 {
     bool layerInTargetProfile = 
         _targetProfileHint.valid() &&
-        getProfile() &&
+        getProfile()               &&
         _targetProfileHint->isEquivalentTo( getProfile() );
 
-    ImageLayerPreCacheOperation* op = new ImageLayerPreCacheOperation();    
-    op->_processor.init( _runtimeOptions, layerInTargetProfile );
+    ImageLayerPreCacheOperation* op = new ImageLayerPreCacheOperation();
+    op->_processor.init( _runtimeOptions, _dbOptions.get(), layerInTargetProfile );
 
     _preCacheOp = op;
+}
 
+
+CacheBin*
+ImageLayer::getCacheBin( const Profile* profile )
+{
+    // specialize ImageLayer to only consider the horizontal signature (ignore vertical
+    // datum component for images)
+    std::string binId = *_runtimeOptions.cacheId() + "_" + profile->getHorizSignature();
+    return TerrainLayer::getCacheBin( profile, binId );
 }
 
+
 GeoImage
-ImageLayer::createImage( const TileKey& key, ProgressCallback* progress)
+ImageLayer::createImage( const TileKey& key, ProgressCallback* progress, bool forceFallback )
 {
-    GeoImage result;
+    bool isFallback;
+    return createImageInKeyProfile( key, progress, forceFallback, isFallback);
+}
 
-	//OE_NOTICE << "[osgEarth::MapLayer::createImage] " << key.str() << std::endl;
-	if ( !isCacheOnly() && !getTileSource()  )
-	{
-		OE_WARN << LC << "Error:  MapLayer does not have a valid TileSource, cannot create image " << std::endl;
-		return GeoImage::INVALID;
-	}
 
-    const Profile* layerProfile = getProfile();
-    const Profile* mapProfile = key.getProfile();
+GeoImage
+ImageLayer::createImageInNativeProfile( const TileKey& key, ProgressCallback* progress, bool forceFallback, bool& out_isFallback)
+{
+    out_isFallback = false;
 
-    if ( !getProfile() )
-	{
-		OE_WARN << LC << "Could not get a valid profile for Layer \"" << getName() << "\"" << std::endl;
+    const Profile* nativeProfile = getProfile();
+    if ( !nativeProfile )
+    {
+        OE_WARN << LC << "Could not establish the profile" << std::endl;
         return GeoImage::INVALID;
-	}
-
-	//Determine whether we should cache in the Map profile or the Layer profile.
-	bool cacheInMapProfile = true;
-	if (mapProfile->isEquivalentTo( layerProfile ))
-	{
-		OE_DEBUG << LC << "Layer \"" << getName() << "\": Map and Layer profiles are equivalent " << std::endl;
-	}
-	//If the map profile and layer profile are in the same SRS but with different tiling scemes and exact cropping is not required, cache in the layer profile.
-    else if (mapProfile->getSRS()->isEquivalentTo( layerProfile->getSRS()) && _runtimeOptions.exactCropping() == false )
-	{
-		OE_DEBUG << LC << "Layer \"" << getName() << "\": Map and Layer profiles are in the same SRS and non-exact cropping is allowed, caching in layer profile." << std::endl;
-		cacheInMapProfile = false;
-	}
-
-	bool cacheInLayerProfile = !cacheInMapProfile;
-
-    //Write the cache TMS file if it hasn't been written yet.
-    if (!_cacheProfile.valid() && _cache.valid() && _runtimeOptions.cacheEnabled() == true && _tileSource.valid())
-    {
-        _cacheProfile = cacheInMapProfile ? mapProfile : _profile.get();
-        _cache->storeProperties( _cacheSpec, _cacheProfile.get(), _tileSource->getPixelsPerTile() );
-    }
-
-	if (cacheInMapProfile)
-	{
-		OE_DEBUG << LC << "Layer \"" << getName() << "\" caching in Map profile " << std::endl;
-	}
-
-	//If we are caching in the map profile, try to get the image immediately.
-    if (cacheInMapProfile && _cache.valid() && _runtimeOptions.cacheEnabled() == true )
-	{
-        osg::ref_ptr<const osg::Image> cachedImage;
-        if ( _cache->getImage( key, _cacheSpec, cachedImage ) )
-		{
-			OE_DEBUG << LC << "Layer \"" << getName()<< "\" got tile " << key.str() << " from map cache " << std::endl;
-
-            result = GeoImage( ImageUtils::cloneImage(cachedImage.get()), key.getExtent() );
-            ImageUtils::normalizeImage( result.getImage() );
-            return result;
-		}
-	}
+    }
 
-	//If the key profile and the source profile exactly match, simply request the image from the source
-    if ( mapProfile->isEquivalentTo( layerProfile ) )
+    if ( key.getProfile()->isEquivalentTo(nativeProfile) )
     {
-		OE_DEBUG << LC << "Key and source profiles are equivalent, requesting single tile" << std::endl;
-        osg::ref_ptr<const osg::Image> image;
-        osg::Image* im = createImageWrapper( key, cacheInLayerProfile, progress );
-        if ( im )
-        {
-            result = GeoImage( im, key.getExtent() );
-        }
+        // requested profile matches native profile, move along.
+        return createImageInKeyProfile( key, progress, forceFallback, out_isFallback );
     }
-
-    // Otherwise, we need to process the tiles.
     else
     {
-		OE_DEBUG << LC << "Key and source profiles are different, creating mosaic" << std::endl;
-		GeoImage mosaic;
+        // find the intersection of keys.
+        std::vector<TileKey> nativeKeys;
+        nativeProfile->getIntersectingTiles(key.getExtent(), nativeKeys);
+        
+        // build a mosaic of the images from the native profile keys:
+        bool foundAtLeastOneRealTile = false;
+
+        ImageMosaic mosaic;
+        for( std::vector<TileKey>::iterator k = nativeKeys.begin(); k != nativeKeys.end(); ++k )
+        {
+            bool isFallback = false;
+            GeoImage image = createImageInKeyProfile( *k, progress, true, isFallback );
+            if ( image.valid() )
+            {
+                mosaic.getImages().push_back( TileImage(image.getImage(), *k) );
+                if ( !isFallback )
+                    foundAtLeastOneRealTile = true;
+            }
+            else
+            {
+                // if we get EVEN ONE invalid tile, we have to abort because there will be
+                // empty spots in the mosaic. (By "invalid" we mean a tile that could not
+                // even be resolved through the fallback procedure.)
+                return GeoImage::INVALID;
+            }
+        }
 
-		// Determine the intersecting keys and create and extract an appropriate image from the tiles
-		std::vector<TileKey> intersectingTiles;
+        // bail out if we got nothing.
+        if ( mosaic.getImages().size() == 0 )
+            return GeoImage::INVALID;
 
-        //Scale the extent if necessary
-        GeoExtent ext = key.getExtent();
-        if ( _runtimeOptions.edgeBufferRatio().isSet() )
+        // if the mosaic is ALL fallback data, this tile is fallback data.
+        if ( foundAtLeastOneRealTile )
         {
-            double ratio = _runtimeOptions.edgeBufferRatio().get();
-            ext.scale(ratio, ratio);
+            // assemble new GeoImage from the mosaic.
+            double rxmin, rymin, rxmax, rymax;
+            mosaic.getExtents( rxmin, rymin, rxmax, rymax );
+
+            GeoImage result( 
+                mosaic.createImage(), 
+                GeoExtent( nativeProfile->getSRS(), rxmin, rymin, rxmax, rymax ) );
+
+            // calculate a tigher extent that matches the original input key:
+            GeoExtent tightExtent = nativeProfile->clampAndTransformExtent( key.getExtent() );
+
+            // a non-exact crop is critical here to avoid resampling the data
+            return result.crop( tightExtent, false );
         }
 
-        layerProfile->getIntersectingTiles(ext, intersectingTiles);
+        else // all fallback data
+        {
+            GeoImage result;
 
-		if (intersectingTiles.size() > 0)
-		{
-			double dst_minx, dst_miny, dst_maxx, dst_maxy;
-			key.getExtent().getBounds(dst_minx, dst_miny, dst_maxx, dst_maxy);
+            if ( forceFallback && key.getLevelOfDetail() > 0 )
+            {
+                result = createImageInNativeProfile(
+                    key.createParentKey(),
+                    progress,
+                    forceFallback,
+                    out_isFallback );
+            }
 
-			osg::ref_ptr<ImageMosaic> mi = new ImageMosaic;
-			std::vector<TileKey> missingTiles;
+            out_isFallback = true;
+            return result;
+        }
 
-            bool retry = false;
-			for (unsigned int j = 0; j < intersectingTiles.size(); ++j)
-			{
-				double minX, minY, maxX, maxY;
-				intersectingTiles[j].getExtent().getBounds(minX, minY, maxX, maxY);
+        //if ( !foundAtLeastOneRealTile )
+        //    out_isFallback = true;
 
-				OE_DEBUG << LC << "\t Intersecting Tile " << j << ": " << minX << ", " << minY << ", " << maxX << ", " << maxY << std::endl;
+    }
+}
 
-				osg::ref_ptr<osg::Image> img;
-                img = createImageWrapper( intersectingTiles[j], cacheInLayerProfile, progress );
 
-                if ( img.valid() )
-                {
-                    if (img->getPixelFormat() != GL_RGBA || img->getDataType() != GL_UNSIGNED_BYTE || img->getInternalTextureFormat() != GL_RGBA8 )
-					{
-                        osg::ref_ptr<osg::Image> convertedImg = ImageUtils::convertToRGBA8(img.get());
-                        if (convertedImg.valid())
-                        {
-                            img = convertedImg;
-                        }
-					}
-					mi->getImages().push_back(TileImage(img.get(), intersectingTiles[j]));
-				}
-				else
-				{
-                    if (progress && (progress->isCanceled() || progress->needsRetry()))
-                    {
-                        retry = true;
-                        break;
-                    }
-					missingTiles.push_back(intersectingTiles[j]);
-				}
-			}
-
-			//if (mi->getImages().empty() || missingTiles.size() > 0)
-            if (mi->getImages().empty() || retry)
-			{
-				OE_DEBUG << LC << "Couldn't create image for ImageMosaic " << std::endl;
-                return GeoImage::INVALID;
-			}
-			else if (missingTiles.size() > 0)
-			{                
-                osg::ref_ptr<const osg::Image> validImage = mi->getImages()[0].getImage();
-                unsigned int tileWidth = validImage->s();
-                unsigned int tileHeight = validImage->t();
-                unsigned int tileDepth = validImage->r();
-                for (unsigned int j = 0; j < missingTiles.size(); ++j)
-                {
-                    // Create transparent image which size equals to the size of a valid image
-                    osg::ref_ptr<osg::Image> newImage = new osg::Image;
-                    newImage->allocateImage(tileWidth, tileHeight, tileDepth, validImage->getPixelFormat(), validImage->getDataType());
-                    unsigned char *data = newImage->data(0,0);
-                    memset(data, 0, newImage->getTotalSizeInBytes());
+GeoImage
+ImageLayer::createImageInKeyProfile( const TileKey& key, ProgressCallback* progress, bool forceFallback, bool& out_isFallback )
+{
+    GeoImage result;
 
-                    mi->getImages().push_back(TileImage(newImage.get(), missingTiles[j]));
-                }
-			}
+    out_isFallback = false;
 
-			double rxmin, rymin, rxmax, rymax;
-			mi->getExtents( rxmin, rymin, rxmax, rymax );
+    // If the layer is disabled, bail out.
+    if ( !getEnabled() )
+    {
+        return GeoImage::INVALID;
+    }
 
-			mosaic = GeoImage(
-				mi->createImage(),
-				GeoExtent( layerProfile->getSRS(), rxmin, rymin, rxmax, rymax ) );
-		}
+    // Check for a "Minumum level" setting on this layer. If we are before the
+    // min level, just return the empty image. Do not cache empties
+    if ( _runtimeOptions.minLevel().isSet() && key.getLOD() < _runtimeOptions.minLevel().value() )
+    {
+        return GeoImage( _emptyImage.get(), key.getExtent() );
+    }
 
-		if ( mosaic.valid() )
-        {
-            // the imagery must be reprojected iff:
-            //  * the SRS of the image is different from the SRS of the key;
-            //  * UNLESS they are both geographic SRS's (in which case we can skip reprojection)
-            bool needsReprojection =
-                !mosaic.getSRS()->isEquivalentTo( key.getProfile()->getSRS()) &&
-                !(mosaic.getSRS()->isGeographic() && key.getProfile()->getSRS()->isGeographic());
-
-            bool needsLeftBorder = false;
-            bool needsRightBorder = false;
-            bool needsTopBorder = false;
-            bool needsBottomBorder = false;
-
-            // If we don't need to reproject the data, we had to mosaic the data, so check to see if we need to add
-            // an extra, transparent pixel on the sides because the data doesn't encompass the entire map.
-            if (!needsReprojection)
-            {
-                GeoExtent keyExtent = key.getExtent();
-                // If the key is geographic and the mosaic is mercator, we need to get the mercator
-                // extents to determine if we need to add the border or not
-                // (TODO: this might be OBE due to the elimination of the Mercator fast-path -gw)
-                if (key.getExtent().getSRS()->isGeographic() && mosaic.getSRS()->isMercator())
-                {
-                    keyExtent = osgEarth::Registry::instance()->getGlobalMercatorProfile()->clampAndTransformExtent( 
-                        key.getExtent( ));
-                }
+    // Check for a "Minimum resolution" setting on the layer. If we are before the
+    // min resolution, return the empty image. Do not cache empties.
+    if ( _runtimeOptions.minResolution().isSet() )
+    {
+        double keyres = key.getExtent().width() / getTileSize();
+        double keyresInLayerProfile = key.getProfile()->getSRS()->transformUnits(keyres, getProfile()->getSRS());
 
+        if ( keyresInLayerProfile > _runtimeOptions.minResolution().value() )
+        {
+            return GeoImage( _emptyImage.get(), key.getExtent() );
+        }
+    }
 
-                //Use an epsilon to only add the border if it is significant enough.
-                double eps = 1e-6;
-                
-                double leftDiff = mosaic.getExtent().xMin() - keyExtent.xMin();
-                if (leftDiff > eps)
-                {
-                    needsLeftBorder = true;
-                }
+    OE_DEBUG << LC << "create image for \"" << key.str() << "\", ext= "
+        << key.getExtent().toString() << std::endl;
 
-                double rightDiff = keyExtent.xMax() - mosaic.getExtent().xMax();
-                if (rightDiff > eps)
-                {
-                    needsRightBorder = true;
-                }
 
-                double bottomDiff = mosaic.getExtent().yMin() - keyExtent.yMin();
-                if (bottomDiff > eps)
-                {
-                    needsBottomBorder = true;
-                }
+    // locate the cache bin for the target profile for this layer:
+    CacheBin* cacheBin = getCacheBin( key.getProfile() );
 
-                double topDiff = keyExtent.yMax() - mosaic.getExtent().yMax();
-                if (topDiff > eps)
-                {
-                    needsTopBorder = true;
-                }
-            }
+    // validate that we have either a valid tile source, or we're cache-only.
+    if ( ! (getTileSource() || (isCacheOnly() && cacheBin) ) )
+    {
+        OE_WARN << LC << "Error: layer does not have a valid TileSource, cannot create image " << std::endl;
+        _runtimeOptions.enabled() = false;
+        return GeoImage::INVALID;
+    }
 
-            if ( needsReprojection )
-            {
-				OE_DEBUG << LC << "  Reprojecting image" << std::endl;
-
-                // We actually need to reproject the image.  Note: GeoImage::reproject() will automatically
-                // crop the image to the correct extents, so there is no need to crop after reprojection.
-                result = mosaic.reproject( 
-                    key.getProfile()->getSRS(),
-                    &key.getExtent(), 
-                    _runtimeOptions.reprojectedTileSize().value(), _runtimeOptions.reprojectedTileSize().value() );
-            }
-            else
-            {
-				OE_DEBUG << LC << "  Cropping image" << std::endl;
-                // crop to fit the map key extents
-                GeoExtent clampedMapExt = layerProfile->clampAndTransformExtent( key.getExtent() );
-                if ( clampedMapExt.isValid() )
-				{
-                    int size = _runtimeOptions.exactCropping() == true ? _runtimeOptions.reprojectedTileSize().value() : 0;
-                    result = mosaic.crop(clampedMapExt, _runtimeOptions.exactCropping().value(), size, size);
-				}
-                else
-                    result = GeoImage::INVALID;
-            }
+    // validate the existance of a valid layer profile (unless we're in cache-only mode, in which
+    // case there is no layer profile)
+    if ( !isCacheOnly() && !getProfile() )
+    {
+        OE_WARN << LC << "Could not establish a valid profile" << std::endl;
+        _runtimeOptions.enabled() = false;
+        return GeoImage::INVALID;
+    }
 
-            //Add the transparent pixel AFTER the crop so that it doesn't get cropped out
-            if (result.valid() && (needsLeftBorder || needsRightBorder || needsBottomBorder || needsTopBorder))
-            {
-                result = result.addTransparentBorder(needsLeftBorder, needsRightBorder, needsBottomBorder, needsTopBorder);
-            }
+    // First, attempt to read from the cache. Since the cached data is stored in the
+    // map profile, we can try this first.
+    if ( cacheBin && getCachePolicy().isCacheReadable() )
+    {
+        ReadResult r = cacheBin->readImage( key.str() );
+        if ( r.succeeded() )
+        {            
+            ImageUtils::normalizeImage( r.getImage() );
+            return GeoImage( r.releaseImage(), key.getExtent() );
+        }
+        else
+        {
+            //OE_INFO << LC << getName() << " : " << key.str() << " cache miss" << std::endl;
         }
     }
+    
+    // The data was not in the cache. If we are cache-only, fail sliently
+    if ( isCacheOnly() )
+    {
+        return GeoImage::INVALID;
+    }
+
+    // Get an image from the underlying TileSource.
+    result = createImageFromTileSource( key, progress, forceFallback, out_isFallback );
 
     // Normalize the image if necessary
     if ( result.valid() )
@@ -597,92 +566,253 @@ ImageLayer::createImage( const TileKey& key, ProgressCallback* progress)
         ImageUtils::normalizeImage( result.getImage() );
     }
 
-	//If we got a result, the cache is valid and we are caching in the map profile, write to the map cache.
-    if (result.valid() && _cache.valid() && _runtimeOptions.cacheEnabled() == true && cacheInMapProfile)
-	{
-		OE_DEBUG << LC << "Layer \"" << getName() << "\" writing tile " << key.str() << " to cache " << std::endl;
-		_cache->setImage( key, _cacheSpec, result.getImage());
-	}
+    // If we got a result, the cache is valid and we are caching in the map profile, write to the map cache.
+    if (result.valid()  &&
+        //JB:  Removed the check to not write out fallback data.  If you have a low resolution base dataset (max lod 3) and a high resolution insert (max lod 22)
+        //     then the low res data needs to "fallback" from LOD 4 - 22 so you can display the high res inset.  If you don't cache these intermediate tiles then
+        //     performance can suffer generating all those fallback tiles, especially if you have to do reprojection or mosaicing.
+        //!out_isFallback &&
+        cacheBin        && 
+        getCachePolicy().isCacheWriteable() )
+    {
+        if ( key.getExtent() != result.getExtent() )
+        {
+            OE_INFO << LC << "WARNING! mismatched extents." << std::endl;
+        }
+
+        cacheBin->write( key.str(), result.getImage() );
+        //OE_INFO << LC << "WRITING " << key.str() << " to the cache." << std::endl;
+    }
+
+    if ( result.valid() )
+    {
+        OE_DEBUG << LC << key.str() << " result OK" << std::endl;
+    }
+    else
+    {
+        OE_DEBUG << LC << key.str() << "result INVALID" << std::endl;
+    }
+
     return result;
 }
 
-osg::Image*
-ImageLayer::createImageWrapper(const TileKey& key,
-                               bool cacheInLayerProfile,
-                               ProgressCallback* progress )
+
+
+GeoImage
+ImageLayer::createImageFromTileSource(const TileKey&    key,
+                                      ProgressCallback* progress,
+                                      bool              forceFallback,
+                                      bool&             out_isFallback)
 {
     // Results:
+    // 
+    // * return an osg::Image matching the key extent is all goes well;
     //
     // * return NULL to indicate that the key exceeds the maximum LOD of the source data,
-    //   and that the engine may need to generate a "fallback" tile if necessary.
+    //   and that the engine may need to generate a "fallback" tile if necessary;
     //
+    // deprecated:
     // * return an "empty image" if the LOD is valid BUT the key does not intersect the
     //   source's data extents.
 
-    osg::Image* result = 0L;
+    out_isFallback = false;
+
+    TileSource* source = getTileSource();
+    if ( !source )
+        return GeoImage::INVALID;
+
+    // If the profiles are different, use a compositing method to assemble the tile.
+    if ( !key.getProfile()->isEquivalentTo( getProfile() ) )
+    {
+        return assembleImageFromTileSource( key, progress, out_isFallback );
+    }
+
+    // Fail is the image is blacklisted.
+    // ..unless there will be a fallback attempt.
+    if ( source->getBlacklist()->contains( key.getTileId() ) && !forceFallback )
+    {
+        OE_DEBUG << LC << "createImageFromTileSource: blacklisted(" << key.str() << ")" << std::endl;
+        return GeoImage::INVALID;
+    }
+
+    // Fail if no data is available for this key.
+    if ( !source->hasDataAtLOD( key.getLevelOfDetail() ) && !forceFallback )
+    {
+        OE_DEBUG << LC << "createImageFromTileSource: hasDataAtLOD(" << key.str() << ") == false" << std::endl;
+        return GeoImage::INVALID;
+    }
 
-    // first check the cache.
-    // TODO: find a way to avoid caching/checking when the LOD falls
-    if (_cache.valid() && cacheInLayerProfile && _runtimeOptions.cacheEnabled() == true )
+    if ( !source->hasDataInExtent( key.getExtent() ) )
     {
-        osg::ref_ptr<const osg::Image> cachedImage;
-		if ( _cache->getImage( key, _cacheSpec, cachedImage ) )
-	    {
-            OE_INFO << LC << " Layer \"" << getName() << "\" got " << key.str() << " from cache " << std::endl;
-            return ImageUtils::cloneImage(cachedImage.get());
-    	}
+        OE_DEBUG << LC << "createImageFromTileSource: hasDataInExtent(" << key.str() << ") == false" << std::endl;
+        return GeoImage::INVALID;
     }
 
-	if ( !isCacheOnly() )
-	{
-        TileSource* source = getTileSource();
-        if ( !source )
-            return 0L;
+    // Good to go, ask the tile source for an image:
+    osg::ref_ptr<TileSource::ImageOperation> op = _preCacheOp;
 
-        // Only try to get the image if it's not in the blacklist
-        if ( !source->getBlacklist()->contains(key.getTileId()) )
+    osg::ref_ptr<osg::Image> result;
+    TileKey finalKey = key;
+    bool fellBack = false;
+
+    if ( forceFallback )
+    {        
+        while( !result.valid() && finalKey.valid() )
         {
-            // if the tile source cannot service this key's LOD, return NULL.
-            if ( source->hasDataAtLOD( key.getLevelOfDetail() ) )
+            if ( !source->getBlacklist()->contains( finalKey.getTileId() ) )
             {
-                // if the key's extent intersects the source's extent, ask the
-                // source for an image.
-                if ( source->hasDataInExtent( key.getExtent() ) )
+                result = source->createImage( finalKey, op.get(), progress );
+                if ( result.valid() )
                 {
-                    //Take a reference to the preCacheOp, there is a potential for it to be
-                    //overwritten and deleted if this ImageLayer is added to another Map
-                    //while createImage is going on.
-                    osg::ref_ptr< TileSource::ImageOperation > op = _preCacheOp;
-                    result = source->createImage( key, op.get(), progress );
-
-                    // if no result was created, add this key to the blacklist.
-                    if ( result == 0L && (!progress || !progress->isCanceled()) )
+                    if ( finalKey.getLevelOfDetail() != key.getLevelOfDetail() )
                     {
-                        //Add the tile to the blacklist
-                        source->getBlacklist()->add(key.getTileId());
+                        // crop the fallback image to match the input key, and ensure that it remains the
+                        // same pixel size; because chances are if we're requesting a fallback that we're
+                        // planning to mosaic it later, and the mosaicer requires same-size images.
+                        GeoImage raw( result.get(), finalKey.getExtent() );
+                        GeoImage cropped = raw.crop( key.getExtent(), true, raw.getImage()->s(), raw.getImage()->t() );
+                        result = cropped.takeImage();
+                        fellBack = true;
                     }
                 }
+            }
+            if ( !result.valid() )
+            {
+                finalKey = finalKey.createParentKey();
+                out_isFallback = true;
+            }
+        }
+
+        if ( !result.valid() )
+        {
+            result = 0L;
+            //result = _emptyImage.get();
+            finalKey = key;
+        }
+    }
+
+    else
+    {
+        result = source->createImage( key, op.get(), progress );
+    }
+    
+    // If image creation failed (but was not intentionally canceled),
+    // blacklist this tile for future requests.
+    if ( result == 0L && (!progress || !progress->isCanceled()) )
+    {
+        source->getBlacklist()->add( key.getTileId() );
+    }
 
-                // otherwise, generate an empty image.
-                else
+    //return result.release();
+    //return GeoImage(result.get(), finalKey.getExtent());
+    return GeoImage(result.get(), key.getExtent());
+}
+
+
+GeoImage
+ImageLayer::assembleImageFromTileSource(const TileKey&    key,
+                                        ProgressCallback* progress,
+                                        bool&             out_isFallback)
+{
+    GeoImage mosaicedImage, result;
+
+    out_isFallback = false;
+
+    // Scale the extent if necessary to apply an "edge buffer"
+    GeoExtent ext = key.getExtent();
+    if ( _runtimeOptions.edgeBufferRatio().isSet() )
+    {
+        double ratio = _runtimeOptions.edgeBufferRatio().get();
+        ext.scale(ratio, ratio);
+    }
+
+    // Get a set of layer tiles that intersect the requested extent.
+    std::vector<TileKey> intersectingKeys;
+    getProfile()->getIntersectingTiles( ext, intersectingKeys );
+
+    if ( intersectingKeys.size() > 0 )
+    {
+        double dst_minx, dst_miny, dst_maxx, dst_maxy;
+        key.getExtent().getBounds(dst_minx, dst_miny, dst_maxx, dst_maxy);
+
+        // if we find at least one "real" tile in the mosaic, then the whole result tile is
+        // "real" (i.e. not a fallback tile)
+        bool foundAtLeastOneRealTile = false;
+        bool retry = false;
+        ImageMosaic mosaic;
+
+        for( std::vector<TileKey>::iterator k = intersectingKeys.begin(); k != intersectingKeys.end(); ++k )
+        {
+            double minX, minY, maxX, maxY;
+            k->getExtent().getBounds(minX, minY, maxX, maxY);
+
+            bool isFallback = false;
+            GeoImage image = createImageFromTileSource( *k, progress, true, isFallback );
+            if ( image.valid() )
+            {
+                // make sure the image is RGBA.
+                // (TODO: investigate whether we still need this -gw 6/25/2012)
+                if (image.getImage()->getPixelFormat() != GL_RGBA || image.getImage()->getDataType() != GL_UNSIGNED_BYTE || image.getImage()->getInternalTextureFormat() != GL_RGBA8 )
                 {
-                    result = ImageUtils::createEmptyImage();
+                    osg::ref_ptr<osg::Image> convertedImg = ImageUtils::convertToRGBA8(image.getImage());
+                    if (convertedImg.valid())
+                    {
+                        image = GeoImage(convertedImg, image.getExtent());
+                    }
                 }
-            }
 
+                mosaic.getImages().push_back( TileImage(image.getImage(), *k) );
+                if ( !isFallback )
+                    foundAtLeastOneRealTile = true;
+            }
             else
             {
-                // in this case, the source cannot service the LOD
-                result = NULL;
-            }            
+                // the tile source did not return a tile, so make a note of it.
+                if (progress && (progress->isCanceled() || progress->needsRetry()))
+                {
+                    retry = true;
+                    break;
+                }
+            }
         }
 
-        // Cache is necessary:
-        if ( result && _cache.valid() && cacheInLayerProfile && _runtimeOptions.cacheEnabled() == true )
-		{
-			_cache->setImage( key, _cacheSpec, result );
-		}
-	}
+        if ( mosaic.getImages().empty() || retry )
+        {
+            // if we didn't get any data, fail
+            OE_DEBUG << LC << "Couldn't create image for ImageMosaic " << std::endl;
+            return GeoImage::INVALID;
+        }
+
+        // all set. Mosaic all the images together.
+        double rxmin, rymin, rxmax, rymax;
+        mosaic.getExtents( rxmin, rymin, rxmax, rymax );
+
+        mosaicedImage = GeoImage(
+            mosaic.createImage(),
+            GeoExtent( getProfile()->getSRS(), rxmin, rymin, rxmax, rymax ) );
+
+        if ( !foundAtLeastOneRealTile )
+            out_isFallback = true;
+    }
+    else
+    {
+        OE_DEBUG << LC << "assembleImageFromTileSource: no intersections (" << key.str() << ")" << std::endl;
+    }
+
+    // Final step: transform the mosaic into the requesting key's extent.
+    if ( mosaicedImage.valid() )
+    {
+        // GeoImage::reproject() will automatically crop the image to the correct extents.
+        // so there is no need to crop after reprojection. Also note that if the SRS's are the 
+        // same (even though extents are different), then this operation is technically not a
+        // reprojection but merely a resampling.
+
+        result = mosaicedImage.reproject( 
+            key.getProfile()->getSRS(),
+            &key.getExtent(), 
+            *_runtimeOptions.reprojectedTileSize(),
+            *_runtimeOptions.reprojectedTileSize() );
+    }
 
     return result;
 }
diff --git a/src/osgEarth/ImageMosaic b/src/osgEarth/ImageMosaic
index 770c6a0..15a868e 100644
--- a/src/osgEarth/ImageMosaic
+++ b/src/osgEarth/ImageMosaic
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,14 +19,10 @@
 #ifndef OSGEARTH_COMPOSITING_H
 #define OSGEARTH_COMPOSITING_H 1
 
-#include <osg/Referenced>
-#include <osg/Image>
-#include <osg/MixinVector>
 #include <osgEarth/Common>
-#include <osgEarth/GeoData>
 #include <osgEarth/TileKey>
-#include <osgEarth/TileSource>
-
+#include <osg/Referenced>
+#include <osg/Image>
 #include <vector>
 
 namespace osgEarth
@@ -41,6 +37,9 @@ namespace osgEarth
         */
         TileImage(osg::Image* image, const TileKey& key);
 
+        /** dtor */
+        virtual ~TileImage() { }
+
         /**
         *Gets a reference to the Image held by this GeoImage
         */
@@ -59,6 +58,7 @@ namespace osgEarth
     {
     public:
         ImageMosaic();
+        virtual ~ImageMosaic();
 
         osg::Image* createImage();
 
@@ -72,7 +72,6 @@ namespace osgEarth
 
     protected:
 
-        ~ImageMosaic();
         TileImageList _images;
     };
 }
diff --git a/src/osgEarth/ImageMosaic.cpp b/src/osgEarth/ImageMosaic.cpp
index 3c437b2..a4e3ba2 100644
--- a/src/osgEarth/ImageMosaic.cpp
+++ b/src/osgEarth/ImageMosaic.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,6 +24,8 @@
 #include <osg/Timer>
 #include <osg/io_utils>
 
+#define LC "[ImageMosaic] "
+
 using namespace osgEarth;
 
 
@@ -102,13 +104,18 @@ ImageMosaic::createImage()
     image->allocateImage(pixelsWide, pixelsHigh, 1, _images[0]._image->getPixelFormat(), _images[0]._image->getDataType());
     image->setInternalTextureFormat(_images[0]._image->getInternalTextureFormat()); 
 
+    //Initialize the image to be completely transparent/black
+    //memset(image->data(), 0, image->getImageSizeInBytes());
+
     //Composite the incoming images into the master image
     for (TileImageList::iterator i = _images.begin(); i != _images.end(); ++i)
     {
+        osg::Image* sourceTile = i->getImage();
+
         //Determine the indices in the master image for this image
         int dstX = (i->_tileX - minTileX) * tileWidth;
         int dstY = (maxTileY - i->_tileY) * tileHeight;
-        ImageUtils::copyAsSubImage(i->getImage(), image.get(), dstX, dstY);
+        ImageUtils::copyAsSubImage(sourceTile, image.get(), dstX, dstY);
     }
 
     return image.release();
diff --git a/src/osgEarth/ImageToHeightFieldConverter b/src/osgEarth/ImageToHeightFieldConverter
index 97284da..bda9202 100644
--- a/src/osgEarth/ImageToHeightFieldConverter
+++ b/src/osgEarth/ImageToHeightFieldConverter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -27,43 +27,46 @@
 
 namespace osgEarth
 {
-  /**
-  * Utility class that re-interprets an image as a heightfield and vice-versa.
-  */
-  class OSGEARTH_EXPORT ImageToHeightFieldConverter
-  {
-  public:
-    ImageToHeightFieldConverter();
-
     /**
-    * Instruct the converter to detect and replace "no data" values. It will
-    * try to interpolate the proper value, or fall back on the provided value
-    * if the interpolation fails.
+    * Utility class that re-interprets an image as a heightfield and vice-versa.
     */
-    void setRemoveNoDataValues( bool value, float fallback =0.0f );
+    class OSGEARTH_EXPORT ImageToHeightFieldConverter
+    {
+    public:
+        ImageToHeightFieldConverter();
 
-  public:
-    /**
-    * Converts an image to a heightfield.
-    */
-    osg::HeightField* convert(const osg::Image* image ); 
-    osg::HeightField* convert(const osg::Image* image, float scaleFactor ); 
+        /** dtor */
+        virtual ~ImageToHeightFieldConverter() { }
 
-    /**
-    * Converts a heightfield to an image.
-    */
-    osg::Image* convert(const osg::HeightField* hf, int pixelSize = 32);
+        /**
+        * Instruct the converter to detect and replace "no data" values. It will
+        * try to interpolate the proper value, or fall back on the provided value
+        * if the interpolation fails.
+        */
+        void setRemoveNoDataValues( bool value, float fallback =0.0f );
+
+    public:
+        /**
+        * Converts an image to a heightfield.
+        */
+        osg::HeightField* convert(const osg::Image* image ); 
+        osg::HeightField* convert(const osg::Image* image, float scaleFactor ); 
+
+        /**
+        * Converts a heightfield to an image.
+        */
+        osg::Image* convert(const osg::HeightField* hf, int pixelSize = 32);
 
-  private:
-    osg::HeightField* convert16(const osg::Image* image ) const; 
-    osg::HeightField* convert32(const osg::Image* image ) const; 
+    private:
+        osg::HeightField* convert16(const osg::Image* image ) const; 
+        osg::HeightField* convert32(const osg::Image* image ) const; 
 
-    osg::Image* convert16(const osg::HeightField* hf ) const;
-    osg::Image* convert32(const osg::HeightField* hf ) const;
+        osg::Image* convert16(const osg::HeightField* hf ) const;
+        osg::Image* convert32(const osg::HeightField* hf ) const;
 
-    bool  _replace_nodata;
-    float _nodata_value;
-  };
+        bool  _replace_nodata;
+        float _nodata_value;
+    };
 }
 
 #endif //OSGEARTH_IMAGE_TO_HEIGHTFIELD_CONVERTER
diff --git a/src/osgEarth/ImageToHeightFieldConverter.cpp b/src/osgEarth/ImageToHeightFieldConverter.cpp
index 8699454..4ae26d8 100644
--- a/src/osgEarth/ImageToHeightFieldConverter.cpp
+++ b/src/osgEarth/ImageToHeightFieldConverter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/ImageUtils b/src/osgEarth/ImageUtils
index 3f8c859..4fd2d9b 100644
--- a/src/osgEarth/ImageUtils
+++ b/src/osgEarth/ImageUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -151,6 +151,18 @@ namespace osgEarth
         static osg::Image* createEmptyImage();
 
         /**
+         * Tests an image to see whether it's "empty", i.e. completely transparent,
+         * within an alpha threshold.
+         */
+        static bool isEmptyImage(const osg::Image* image, float alphaThreshold =0.01);
+
+        /**
+         * Tests an image to see whether it's "single color", i.e. completely filled with a single color,
+         * within an threshold (threshold is tested on each channel).
+         */
+        static bool isSingleColorImage(const osg::Image* image, float threshold =0.01);
+
+        /**
          * Returns true if it is possible to convert the image to the specified 
          * format/datatype specification.
          */
@@ -161,20 +173,20 @@ namespace osgEarth
          */
         static osg::Image* convert(const osg::Image* image, GLenum pixelFormat, GLenum dataType);
 
-		/**
-		 *Converts the given image to RGB8
-		 */
-		static osg::Image* convertToRGB8(const osg::Image* image);
+        /**
+         *Converts the given image to RGB8
+         */
+        static osg::Image* convertToRGB8(const osg::Image* image);
 
-		/**
-		 *Converts the given image to RGBA8
-		 */
-		static osg::Image* convertToRGBA8(const osg::Image* image);
+        /**
+         *Converts the given image to RGBA8
+         */
+        static osg::Image* convertToRGBA8(const osg::Image* image);
 
-		/**
-		 *Compares the image data of two images and determines if they are equivalent
-		 */
-		static bool areEquivalent(const osg::Image *lhs, const osg::Image *rhs);
+        /**
+         *Compares the image data of two images and determines if they are equivalent
+         */
+        static bool areEquivalent(const osg::Image *lhs, const osg::Image *rhs);
 
         /**
          * Whether two colors are roughly equivalent.
diff --git a/src/osgEarth/ImageUtils.cpp b/src/osgEarth/ImageUtils.cpp
index 83dca29..2811f69 100644
--- a/src/osgEarth/ImageUtils.cpp
+++ b/src/osgEarth/ImageUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -28,6 +28,16 @@
 
 #define LC "[ImageUtils] "
 
+
+#if defined(OSG_GLES1_AVAILABLE) || defined(OSG_GLES2_AVAILABLE)
+#    define GL_RGB8_INTERNAL  GL_RGB8_OES
+#    define GL_RGB8A_INTERNAL GL_RGBA8_OES
+#else
+#    define GL_RGB8_INTERNAL  GL_RGB8
+#    define GL_RGB8A_INTERNAL GL_RGBA8
+#endif
+
+
 using namespace osgEarth;
 
 osg::Image*
@@ -54,9 +64,9 @@ ImageUtils::normalizeImage( osg::Image* image )
     if ( image->getDataType() == GL_UNSIGNED_BYTE )
     {
         if ( image->getPixelFormat() == GL_RGB )
-            image->setInternalTextureFormat( GL_RGB8 );
+            image->setInternalTextureFormat( GL_RGB8_INTERNAL );
         else if ( image->getPixelFormat() == GL_RGBA )
-            image->setInternalTextureFormat( GL_RGBA8 );
+            image->setInternalTextureFormat( GL_RGB8A_INTERNAL );
     }
 }
 
@@ -139,7 +149,7 @@ ImageUtils::resizeImage(const osg::Image* input,
         {
             // for unsupported write formats, convert to RGBA8 automatically.
             output->allocateImage( out_s, out_t, 1, GL_RGBA, GL_UNSIGNED_BYTE );
-            output->setInternalTextureFormat( GL_RGBA8 );
+            output->setInternalTextureFormat( GL_RGB8A_INTERNAL );
         }
     }
     else
@@ -283,6 +293,9 @@ ImageUtils::cropImage(const osg::Image* image,
                       double src_minx, double src_miny, double src_maxx, double src_maxy,
                       double &dst_minx, double &dst_miny, double &dst_maxx, double &dst_maxy)
 {
+    if ( image == 0L )
+        return 0L;
+
     //Compute the desired cropping rectangle
     int windowX        = osg::clampBetween( (int)floor( (dst_minx - src_minx) / (src_maxx - src_minx) * (double)image->s()), 0, image->s()-1);
     int windowY        = osg::clampBetween( (int)floor( (dst_miny - src_miny) / (src_maxy - src_miny) * (double)image->t()), 0, image->t()-1);
@@ -376,14 +389,68 @@ ImageUtils::sharpenImage( const osg::Image* input )
 osg::Image*
 ImageUtils::createEmptyImage()
 {
-    //TODO: Make this a static or store it in the registry to avoid creating it
-    // each time.
-    osg::Image* image = new osg::Image;
-    image->allocateImage(1,1,1, GL_RGBA, GL_UNSIGNED_BYTE);
-    image->setInternalTextureFormat( GL_RGBA8 );
-    unsigned char *data = image->data(0,0);
-    memset(data, 0, 4);
-    return image;
+    static OpenThreads::Mutex s_mutex;
+    static osg::ref_ptr< osg::Image> s_image;
+    if (!s_image.valid())
+    {
+        OpenThreads::ScopedLock< OpenThreads::Mutex > lock( s_mutex );
+        if (!s_image.valid())
+        {
+            s_image = new osg::Image;
+            s_image->allocateImage(1,1,1, GL_RGBA, GL_UNSIGNED_BYTE);
+            s_image->setInternalTextureFormat( GL_RGB8A_INTERNAL );
+            unsigned char *data = s_image->data(0,0);
+            memset(data, 0, 4);
+        }     
+    }
+    return s_image.get();
+}
+
+bool
+ImageUtils::isEmptyImage(const osg::Image* image, float alphaThreshold)
+{
+    if ( !hasAlphaChannel(image) )
+        return false;
+
+    PixelReader read(image);
+    for(unsigned t=0; t<(unsigned)image->t(); ++t) 
+    {
+        for(unsigned s=0; s<(unsigned)image->s(); ++s)
+        {
+            osg::Vec4 color = read(s, t);
+            if ( color.a() > alphaThreshold )
+                return false;
+        }
+    }
+    return true;    
+}
+
+bool
+ImageUtils::isSingleColorImage(const osg::Image* image, float threshold)
+{
+    PixelReader read(image);
+
+    osg::Vec4 referenceColor = read(0, 0);
+    float refR = referenceColor.r();
+    float refG = referenceColor.g();
+    float refB = referenceColor.b();
+    float refA = referenceColor.a();
+
+    for(unsigned t=0; t<(unsigned)image->t(); ++t) 
+    {
+        for(unsigned s=0; s<(unsigned)image->s(); ++s)
+        {
+            osg::Vec4 color = read(s, t);
+            if (   (fabs(color.r()-refR) > threshold)
+                || (fabs(color.g()-refG) > threshold)
+                || (fabs(color.b()-refB) > threshold)
+                || (fabs(color.a()-refA) > threshold) )
+            {
+                return false;
+            }
+        }
+    }
+    return true;    
 }
 
 bool
@@ -403,8 +470,8 @@ ImageUtils::convert(const osg::Image* image, GLenum pixelFormat, GLenum dataType
     {
         GLenum texFormat = image->getInternalTextureFormat();
         if (dataType != GL_UNSIGNED_BYTE
-            || (pixelFormat == GL_RGB && texFormat == GL_RGB8)
-            || (pixelFormat == GL_RGBA && texFormat == GL_RGBA8))
+            || (pixelFormat == GL_RGB  && texFormat == GL_RGB8_INTERNAL)
+            || (pixelFormat == GL_RGBA && texFormat == GL_RGB8A_INTERNAL))
         return cloneImage(image);
     }
     if ( !canConvert(image, pixelFormat, dataType) )
@@ -414,9 +481,9 @@ ImageUtils::convert(const osg::Image* image, GLenum pixelFormat, GLenum dataType
     result->allocateImage(image->s(), image->t(), image->r(), pixelFormat, dataType);
 
     if ( pixelFormat == GL_RGB && dataType == GL_UNSIGNED_BYTE )
-        result->setInternalTextureFormat( GL_RGB8 );
+        result->setInternalTextureFormat( GL_RGB8_INTERNAL );
     else if ( pixelFormat == GL_RGBA && dataType == GL_UNSIGNED_BYTE )
-        result->setInternalTextureFormat( GL_RGBA8 );
+        result->setInternalTextureFormat( GL_RGB8A_INTERNAL );
     else
         result->setInternalTextureFormat( pixelFormat );
 
@@ -440,29 +507,29 @@ ImageUtils::convertToRGBA8(const osg::Image* image)
 bool 
 ImageUtils::areEquivalent(const osg::Image *lhs, const osg::Image *rhs)
 {
-	if (lhs == rhs) return true;
-
-	if ((lhs->s() == rhs->s()) &&
-		(lhs->t() == rhs->t()) &&
-		(lhs->getInternalTextureFormat() == rhs->getInternalTextureFormat()) &&
-		(lhs->getPixelFormat() == rhs->getPixelFormat()) &&
-		(lhs->getDataType() == rhs->getDataType()) &&
-		(lhs->getPacking() == rhs->getPacking()) &&
-		(lhs->getImageSizeInBytes() == rhs->getImageSizeInBytes()))
-	{
-		unsigned int size = lhs->getImageSizeInBytes();
+    if (lhs == rhs) return true;
+
+    if ((lhs->s() == rhs->s()) &&
+        (lhs->t() == rhs->t()) &&
+        (lhs->getInternalTextureFormat() == rhs->getInternalTextureFormat()) &&
+        (lhs->getPixelFormat() == rhs->getPixelFormat()) &&
+        (lhs->getDataType() == rhs->getDataType()) &&
+        (lhs->getPacking() == rhs->getPacking()) &&
+        (lhs->getImageSizeInBytes() == rhs->getImageSizeInBytes()))
+    {
+        unsigned int size = lhs->getImageSizeInBytes();
         const unsigned char* ptr1 = lhs->data();
         const unsigned char* ptr2 = rhs->data();
-		for (unsigned int i = 0; i < size; ++i)
-		{
+        for (unsigned int i = 0; i < size; ++i)
+        {
             if ( *ptr1++ != *ptr2++ )
                 return false;
-		}
+        }
 
         return true;
-	}
+    }
 
-	return false;
+    return false;
 }
 
 bool
diff --git a/src/osgEarth/JsonUtils b/src/osgEarth/JsonUtils
index 3ae89a0..cf91eb1 100644
--- a/src/osgEarth/JsonUtils
+++ b/src/osgEarth/JsonUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/JsonUtils.cpp b/src/osgEarth/JsonUtils.cpp
index 4000ceb..982e168 100644
--- a/src/osgEarth/JsonUtils.cpp
+++ b/src/osgEarth/JsonUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/Layer b/src/osgEarth/Layer
index a330c93..739eaca 100644
--- a/src/osgEarth/Layer
+++ b/src/osgEarth/Layer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,6 +32,9 @@ namespace osgEarth
     public:
         Layer();
 
+        /** dtor */
+        virtual ~Layer() { }
+
         /**
          * Gets this layer's unique ID.
          */
diff --git a/src/osgEarth/Layer.cpp b/src/osgEarth/Layer.cpp
index 953faf5..2c995a1 100644
--- a/src/osgEarth/Layer.cpp
+++ b/src/osgEarth/Layer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/LineFunctor b/src/osgEarth/LineFunctor
new file mode 100644
index 0000000..61a4a58
--- /dev/null
+++ b/src/osgEarth/LineFunctor
@@ -0,0 +1,1497 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_LINEFUNCTOR
+#define OSGEARTH_LINEFUNCTOR 1
+
+#include <osgEarth/Common>
+#include <osg/PrimitiveSet>
+#include <osg/Vec2>
+#include <osg/Vec3>
+#include <osg/Vec4>
+
+namespace osgEarth
+{
+    /**
+     * This is basically the same thing as osg::TriangleFunctor, but for lines.
+     */
+    template<class T>
+    class LineFunctor : public osg::PrimitiveFunctor, public T
+    {
+    public:
+
+        LineFunctor()
+        {
+            _vertexArraySize=0;
+            _vertexArrayPtr=0;
+            _modeCache=0;
+            _treatVertexDataAsTemporary=false;
+        }
+
+        virtual ~LineFunctor() {}
+
+        void setTreatVertexDataAsTemporary(bool treatVertexDataAsTemporary) { _treatVertexDataAsTemporary=treatVertexDataAsTemporary; }
+        bool getTreatVertexDataAsTemporary() const { return _treatVertexDataAsTemporary; }
+
+
+        virtual void setVertexArray(unsigned int count,const osg::Vec3* vertices)
+        {
+            _vertexArraySize = count;
+            _vertexArrayPtr = vertices;
+        }
+
+        virtual void setVertexArray(unsigned int,const osg::Vec2*) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec4*) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec2d*) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec3d*) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec4d*) { }
+
+        virtual void drawArrays(GLenum mode,GLint first,GLsizei count)
+        {
+            if (_vertexArrayPtr==0 || count==0) return;
+
+            switch(mode)
+            {            
+            case(GL_LINES):
+                {
+                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count];
+                    for(const osg::Vec3* vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr+=2)
+                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_STRIP):
+                {
+                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count-1];
+                    for(const osg::Vec3* vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr++)
+                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_LOOP):
+                {
+                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count-1];
+                    const osg::Vec3* vptr;
+                    for(vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr++)
+                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
+                    if ( count >= 2 )
+                        this->operator()( *vptr, _vertexArrayPtr[first], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_TRIANGLES):
+            {
+                const osg::Vec3* vlast = &_vertexArrayPtr[first+count];
+                for(const osg::Vec3* vptr=&_vertexArrayPtr[first];vptr<vlast;vptr+=3)
+                {
+                    this->operator()(*(vptr),*(vptr+1),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+1),*(vptr+2),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+2),*(vptr),_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_TRIANGLE_STRIP):
+            {
+                const osg::Vec3* vptr = &_vertexArrayPtr[first];
+                for(GLsizei i=2;i<count;++i,++vptr)
+                {
+                    if ((i%2)) { 
+                        this->operator()(*(vptr),*(vptr+2),_treatVertexDataAsTemporary);
+                        this->operator()(*(vptr+2),*(vptr+1),_treatVertexDataAsTemporary);
+                        this->operator()(*(vptr+1),*(vptr),_treatVertexDataAsTemporary);
+                    }
+                    else {
+                        this->operator()(*(vptr),*(vptr+1),_treatVertexDataAsTemporary);
+                        this->operator()(*(vptr+1),*(vptr+2),_treatVertexDataAsTemporary);
+                        this->operator()(*(vptr+2),*(vptr),_treatVertexDataAsTemporary);
+                    }
+                }
+                break;
+            }
+            case(GL_QUADS):
+            {
+                const osg::Vec3* vptr = &_vertexArrayPtr[first];
+                for(GLsizei i=3;i<count;i+=4,vptr+=4)
+                {
+                    this->operator()(*(vptr),*(vptr+1),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+1),*(vptr+2),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+2),*(vptr),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr),*(vptr+2),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+2),*(vptr+3),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+3),*(vptr),_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_QUAD_STRIP):
+            {
+                const osg::Vec3* vptr = &_vertexArrayPtr[first];
+                for(GLsizei i=3;i<count;i+=2,vptr+=2)
+                {
+                    this->operator()(*(vptr),*(vptr+1),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+1),*(vptr+2),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+2),*(vptr),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+1),*(vptr+3),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+3),*(vptr+2),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+2),*(vptr+1),_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+            case(GL_TRIANGLE_FAN):
+            {
+                const osg::Vec3* vfirst = &_vertexArrayPtr[first];
+                const osg::Vec3* vptr = vfirst+1;
+                for(GLsizei i=2;i<count;++i,++vptr)
+                {
+                    this->operator()(*(vfirst),*(vptr),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr),*(vptr+1),_treatVertexDataAsTemporary);
+                    this->operator()(*(vptr+1),*(vfirst),_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+
+#if 0
+            case(GL_TRIANGLES):
+            case(GL_TRIANGLE_STRIP):
+            case(GL_QUADS):
+            case(GL_QUAD_STRIP):
+            case(GL_POLYGON):
+            case(GL_TRIANGLE_FAN):
+#endif
+            case(GL_POINTS):
+            default:
+                // can't be converted into to line segments.
+                break;
+            }
+        }
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLubyte* indicies)
+        {
+            if (indicies==0 || count==0) return;
+
+            typedef const GLubyte* IndexPointer;
+
+            switch(mode)
+            {
+            case(GL_LINES):
+                {
+                    IndexPointer ilast = &indicies[count];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_STRIP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_LOOP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    IndexPointer iptr;
+                    for(iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                    if (count >= 2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_TRIANGLES):
+            {
+                IndexPointer ilast = &indicies[count];
+                for(IndexPointer  iptr=indicies;iptr<ilast;iptr+=3) {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_TRIANGLE_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    if ((i%2)) {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                    else {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                }
+                break;
+            }
+            case(GL_QUADS):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_QUAD_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+            case(GL_TRIANGLE_FAN):
+            {
+                IndexPointer iptr = indicies;
+                const osg::Vec3& vfirst = _vertexArrayPtr[*iptr];
+                ++iptr;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    this->operator()(vfirst,_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],vfirst,_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+
+            case(GL_POINTS):
+            default:
+                // can't be converted into to lines.
+                break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLushort* indicies)
+        {
+            if (indicies==0 || count==0) return;
+
+            typedef const GLushort* IndexPointer;
+
+            switch(mode)
+            {
+            case(GL_LINES):
+                {
+                    IndexPointer ilast = &indicies[count];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_STRIP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_LOOP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    IndexPointer iptr;
+                    for(iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                    if (count >= 2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_TRIANGLES):
+            {
+                IndexPointer ilast = &indicies[count];
+                for(IndexPointer  iptr=indicies;iptr<ilast;iptr+=3) {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_TRIANGLE_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    if ((i%2)) {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                    else {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                }
+                break;
+            }
+            case(GL_QUADS):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_QUAD_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+            case(GL_TRIANGLE_FAN):
+            {
+                IndexPointer iptr = indicies;
+                const osg::Vec3& vfirst = _vertexArrayPtr[*iptr];
+                ++iptr;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    this->operator()(vfirst,_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],vfirst,_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POINTS):
+            default:
+                // can't be converted into to lines.
+                break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLuint* indicies)
+        {
+            if (indicies==0 || count==0) return;
+
+            typedef const GLuint* IndexPointer;
+
+            switch(mode)
+            {
+            case(GL_LINES):
+                {
+                    IndexPointer ilast = &indicies[count];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_STRIP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_LINE_LOOP):
+                {
+                    IndexPointer ilast = &indicies[count-1];
+                    IndexPointer iptr;
+                    for(iptr=indicies; iptr<ilast; iptr++)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
+                    if (count >= 2)
+                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
+                }
+                break;
+
+            case(GL_TRIANGLES):
+            {
+                IndexPointer ilast = &indicies[count];
+                for(IndexPointer  iptr=indicies;iptr<ilast;iptr+=3) {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_TRIANGLE_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    if ((i%2)) {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                    else {
+                        this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                        this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    }
+                }
+                break;
+            }
+            case(GL_QUADS):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_QUAD_STRIP):
+            {
+                IndexPointer iptr = indicies;
+                for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                {
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],_vertexArrayPtr[*(iptr+3)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+3)],_vertexArrayPtr[*(iptr+2)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+2)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+            case(GL_TRIANGLE_FAN):
+            {
+                IndexPointer iptr = indicies;
+                const osg::Vec3& vfirst = _vertexArrayPtr[*iptr];
+                ++iptr;
+                for(GLsizei i=2;i<count;++i,++iptr)
+                {
+                    this->operator()(vfirst,_vertexArrayPtr[*(iptr)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr)],_vertexArrayPtr[*(iptr+1)],_treatVertexDataAsTemporary);
+                    this->operator()(_vertexArrayPtr[*(iptr+1)],vfirst,_treatVertexDataAsTemporary);
+                }
+                break;
+            }
+            case(GL_POINTS):
+            default:
+                // can't be converted into to lines.
+                break;
+            }
+        }
+
+
+
+        /** Note:
+        * begin(..),vertex(..) & end() are convenience methods for adapting
+        * non vertex array primitives to vertex array based primitives.
+        * This is done to simplify the implementation of primitive functor
+        * subclasses - users only need override drawArray and drawElements.
+        */
+        virtual void begin(GLenum mode)
+        {
+            _modeCache = mode;
+            _vertexCache.clear();
+        }
+
+        virtual void vertex(const osg::Vec2& vert) { _vertexCache.push_back(osg::Vec3(vert[0],vert[1],0.0f)); }
+        virtual void vertex(const osg::Vec3& vert) { _vertexCache.push_back(vert); }
+        virtual void vertex(const osg::Vec4& vert) { _vertexCache.push_back(osg::Vec3(vert[0],vert[1],vert[2])/vert[3]); }
+        virtual void vertex(float x,float y) { _vertexCache.push_back(osg::Vec3(x,y,0.0f)); }
+        virtual void vertex(float x,float y,float z) { _vertexCache.push_back(osg::Vec3(x,y,z)); }
+        virtual void vertex(float x,float y,float z,float w) { _vertexCache.push_back(osg::Vec3(x,y,z)/w); }
+        virtual void end()
+        {
+            if (!_vertexCache.empty())
+            {
+                setVertexArray(_vertexCache.size(),&_vertexCache.front());
+                _treatVertexDataAsTemporary = true;
+                drawArrays(_modeCache,0,_vertexCache.size());
+            }
+        }
+
+    protected:
+
+
+        unsigned int        _vertexArraySize;
+        const osg::Vec3*         _vertexArrayPtr;
+
+        GLenum              _modeCache;
+        std::vector<osg::Vec3>   _vertexCache;
+        bool                _treatVertexDataAsTemporary;
+    };
+
+
+
+    
+    template<typename T>
+    class SimpleIndexFunctor : public osg::PrimitiveIndexFunctor, public T
+    {
+    public:
+
+        virtual void setVertexArray(unsigned int,const osg::Vec2*) { }
+        virtual void setVertexArray(unsigned int ,const osg::Vec3* ) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec4* ) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec2d*) { }
+        virtual void setVertexArray(unsigned int ,const osg::Vec3d* ) { }
+        virtual void setVertexArray(unsigned int,const osg::Vec4d* ) { }
+
+        virtual void begin(GLenum mode)
+        {
+            _modeCache = mode;
+            _indexCache.clear();
+        }
+
+        virtual void vertex(unsigned int vert)
+        {
+            _indexCache.push_back(vert);
+        }
+
+        virtual void end()
+        {
+            if (!_indexCache.empty())
+            {
+                drawElements(_modeCache,_indexCache.size(),&_indexCache.front());
+            }
+        }
+
+
+        // simulate triangles
+        void operator()(GLuint i0, GLuint i1, GLuint i2)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+            T::operator()(i2);
+        }
+        void operator()(GLushort i0, GLushort i1, GLushort i2)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+            T::operator()(i2);
+        }
+        void operator()(GLubyte i0, GLubyte i1, GLubyte i2)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+            T::operator()(i2);
+        }
+
+        // simulate lines
+        void operator()(GLuint i0, GLuint i1)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+        }
+        void operator()(GLushort i0, GLushort i1)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+        }
+        void operator()(GLubyte i0, GLubyte i1)
+        {
+            T::operator()(i0);
+            T::operator()(i1);
+        }
+
+
+
+        virtual void drawArrays(GLenum mode,GLint first,GLsizei count)
+        {
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=2;i<count;i+=3,pos+=3)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                    }
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                 {
+                    unsigned int pos=first;
+                    for(GLsizei i=2;i<count;++i,++pos)
+                    {
+                        if ((i%2)) this->operator()(pos,pos+2,pos+1);
+                        else       this->operator()(pos,pos+1,pos+2);
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=3;i<count;i+=4,pos+=4)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                        this->operator()(pos,pos+2,pos+3);
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=3;i<count;i+=2,pos+=2)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                        this->operator()(pos+1,pos+3,pos+2);
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    unsigned int pos=first+1;
+                    for(GLsizei i=2;i<count;++i,++pos)
+                    {
+                        this->operator()(first,pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1;i<count;i+=2,pos+=2)
+                    {
+                        //this->operator()(pos,pos+1);
+                        this->operator()(pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1;i<count;i+=1,pos+=1)
+                    {
+                        this->operator()(pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1; i<count; i+=1, pos+=1)
+                    {
+                        this->operator()(pos,pos+1);
+                    }
+                    if (count > 0 )
+                    {
+                        this->operator()(pos,first);
+                    }
+                    break;
+                }
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLubyte* indices)
+        {
+            if (indices==0 || count==0) return;
+
+            typedef GLubyte Index;
+            typedef const Index* IndexPointer;
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    this->operator()(*iptr,first);
+                    break;
+                }
+
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLushort* indices)
+        {
+            if (indices==0 || count==0) return;
+
+            typedef GLushort Index;
+            typedef const Index* IndexPointer;
+        
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    this->operator()(*iptr,first);
+                    break;
+                }
+
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLuint* indices)
+        {
+            if (indices==0 || count==0) return;
+        
+            typedef GLuint Index;
+            typedef const Index* IndexPointer;
+        
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                case(GL_POINTS):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        this->operator()(*iptr,*(iptr+1));
+                    }
+                    this->operator()(*iptr,first);
+                    break;
+                }
+
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        GLenum               _modeCache;
+        std::vector<GLuint>  _indexCache;
+    };
+
+
+
+
+    
+    template<typename T>
+    class LineIndexFunctor : public osg::PrimitiveIndexFunctor, public T
+    {
+    public:
+
+
+        virtual void setVertexArray(unsigned int,const osg::Vec2*) 
+        {
+        }
+
+        virtual void setVertexArray(unsigned int ,const osg::Vec3* )
+        {
+        }
+
+        virtual void setVertexArray(unsigned int,const osg::Vec4* ) 
+        {
+        }
+
+        virtual void setVertexArray(unsigned int,const osg::Vec2d*) 
+        {
+        }
+
+        virtual void setVertexArray(unsigned int ,const osg::Vec3d* )
+        {
+        }
+
+        virtual void setVertexArray(unsigned int,const osg::Vec4d* ) 
+        {
+        }
+
+        virtual void begin(GLenum mode)
+        {
+            _modeCache = mode;
+            _indexCache.clear();
+        }
+
+        virtual void vertex(unsigned int vert)
+        {
+            _indexCache.push_back(vert);
+        }
+
+        virtual void end()
+        {
+            if (!_indexCache.empty())
+            {
+                drawElements(_modeCache,_indexCache.size(),&_indexCache.front());
+            }
+        }
+
+        // simulate triangles
+        void operator()(GLuint i0, GLuint i1, GLuint i2)
+        {
+            T::line(i0,i1);
+            T::line(i1,i2);
+            T::line(i2,i1);
+        }
+        void operator()(GLushort i0, GLushort i1, GLushort i2)
+        {
+            T::line(i0,i1);
+            T::line(i1,i2);
+            T::line(i2,i1);
+        }
+        void operator()(GLubyte i0, GLubyte i1, GLubyte i2)
+        {
+            T::line(i0,i1);
+            T::line(i1,i2);
+            T::line(i2,i1);
+        }
+
+
+        virtual void drawArrays(GLenum mode,GLint first,GLsizei count)
+        {
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=2;i<count;i+=3,pos+=3)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                    }
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                 {
+                    unsigned int pos=first;
+                    for(GLsizei i=2;i<count;++i,++pos)
+                    {
+                        if ((i%2)) this->operator()(pos,pos+2,pos+1);
+                        else       this->operator()(pos,pos+1,pos+2);
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=3;i<count;i+=4,pos+=4)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                        this->operator()(pos,pos+2,pos+3);
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    unsigned int pos=first;
+                    for(GLsizei i=3;i<count;i+=2,pos+=2)
+                    {
+                        this->operator()(pos,pos+1,pos+2);
+                        this->operator()(pos+1,pos+3,pos+2);
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    unsigned int pos=first+1;
+                    for(GLsizei i=2;i<count;++i,++pos)
+                    {
+                        this->operator()(first,pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1;i<count;i+=2,pos+=2)
+                    {
+                        //this->operator()(pos,pos+1);
+                        T::line(pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1;i<count;i+=1,pos+=1)
+                    {
+                        T::line(pos,pos+1);
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    unsigned pos=first;
+                    for(GLsizei i=1; i<count; i+=1, pos+=1)
+                    {
+                        T::line(pos,pos+1);
+                    }
+                    if (count > 0 )
+                    {
+                        T::line(pos,first);
+                    }
+                    break;
+                }
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLubyte* indices)
+        {
+            if (indices==0 || count==0) return;
+
+            typedef GLubyte Index;
+            typedef const Index* IndexPointer;
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    T::line(*iptr,first);
+                    break;
+                }
+
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLushort* indices)
+        {
+            if (indices==0 || count==0) return;
+
+            typedef GLushort Index;
+            typedef const Index* IndexPointer;
+        
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    T::line(*iptr,first);
+                    break;
+                }
+
+                case(GL_POINTS):
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        virtual void drawElements(GLenum mode,GLsizei count,const GLuint* indices)
+        {
+            if (indices==0 || count==0) return;
+        
+            typedef GLuint Index;
+            typedef const Index* IndexPointer;
+        
+
+            switch(mode)
+            {
+                case(GL_TRIANGLES):
+                {
+                    IndexPointer ilast = &indices[count];
+                    for(IndexPointer  iptr=indices;iptr<ilast;iptr+=3)
+                        this->operator()(*iptr,*(iptr+1),*(iptr+2));
+                    break;
+                }
+                case(GL_TRIANGLE_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        if ((i%2)) this->operator()(*(iptr),*(iptr+2),*(iptr+1));
+                        else       this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_QUADS):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=4,iptr+=4)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr),*(iptr+2),*(iptr+3));
+                    }
+                    break;
+                }
+                case(GL_QUAD_STRIP):
+                {
+                    IndexPointer iptr = indices;
+                    for(GLsizei i=3;i<count;i+=2,iptr+=2)
+                    {
+                        this->operator()(*(iptr),*(iptr+1),*(iptr+2));
+                        this->operator()(*(iptr+1),*(iptr+3),*(iptr+2));
+                    }
+                    break;
+                }
+                case(GL_POLYGON): // treat polygons as GL_TRIANGLE_FAN
+                case(GL_TRIANGLE_FAN):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    ++iptr;
+                    for(GLsizei i=2;i<count;++i,++iptr)
+                    {
+                        this->operator()(first,*(iptr),*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINES):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=2,iptr+=2)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_STRIP):
+                case(GL_POINTS):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    break;
+                }
+                case(GL_LINE_LOOP):
+                {
+                    IndexPointer iptr = indices;
+                    Index first = *iptr;
+                    for(GLsizei i=1;i<count;i+=1,++iptr)
+                    {
+                        T::line(*iptr,*(iptr+1));
+                    }
+                    T::line(*iptr,first);
+                    break;
+                }
+
+                default:
+                    // can't be converted into to triangles.
+                    break;
+            }
+        }    
+
+        GLenum               _modeCache;
+        std::vector<GLuint>  _indexCache;
+    };
+
+} // namespace osgEarth
+
+
+#endif // OSGEARTH_LINEFUNCTOR
+
diff --git a/src/osgEarth/LocalTangentPlane b/src/osgEarth/LocalTangentPlane
index 1514ea1..240602b 100644
--- a/src/osgEarth/LocalTangentPlane
+++ b/src/osgEarth/LocalTangentPlane
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -31,10 +31,13 @@ namespace osgEarth
      * Local Tangent Plane SRS.
      * Please call SpatialReference::createLTP() to construct one of these.
      */
-    class LTPSpatialReference : public SpatialReference
+    class TangentPlaneSpatialReference : public SpatialReference
     {
     public:
-        LTPSpatialReference(void* handle, const osg::Vec3d& worldPointLLA);
+        TangentPlaneSpatialReference(void* handle, const osg::Vec3d& originLLA);
+
+        /** dtor */
+        virtual ~TangentPlaneSpatialReference() { }
 
         // CUBE is a projected coordinate system.
         virtual bool isGeographic() const { return false; }
@@ -53,7 +56,7 @@ namespace osgEarth
 
     private:
 
-        osg::Vec3d   _worldPointLLA;
+        osg::Vec3d   _originLLA;
         osg::Matrixd _local2world, _world2local;
 
     };
diff --git a/src/osgEarth/LocalTangentPlane.cpp b/src/osgEarth/LocalTangentPlane.cpp
index 8aa96ed..4b973ad 100644
--- a/src/osgEarth/LocalTangentPlane.cpp
+++ b/src/osgEarth/LocalTangentPlane.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -29,15 +29,15 @@ using namespace osgEarth;
 
 // --------------------------------------------------------------------------
 
-LTPSpatialReference::LTPSpatialReference( void* handle, const osg::Vec3d& worldPointLLA ) :
+TangentPlaneSpatialReference::TangentPlaneSpatialReference( void* handle, const osg::Vec3d& originLLA ) :
 SpatialReference( handle, false ),
-_worldPointLLA  ( worldPointLLA )
+_originLLA      ( originLLA )
 {
-    //todo, set proper init string
+    //todo, set proper init string?
 }
 
 void
-LTPSpatialReference::_init()
+TangentPlaneSpatialReference::_init()
 {
     SpatialReference::_init();
 
@@ -50,16 +50,16 @@ LTPSpatialReference::_init()
     // set up the LTP matrixes.
 
     getEllipsoid()->computeLocalToWorldTransformFromLatLongHeight(
-        osg::DegreesToRadians(_worldPointLLA.y()),
-        osg::DegreesToRadians(_worldPointLLA.x()),
-        _worldPointLLA.z(),
+        osg::DegreesToRadians(_originLLA.y()),
+        osg::DegreesToRadians(_originLLA.x()),
+        _originLLA.z(),
         _local2world);
 
     _world2local.invert( _local2world );
 }
 
 bool
-LTPSpatialReference::preTransform(double& x, double& y, double& z, void* context) const
+TangentPlaneSpatialReference::preTransform(double& x, double& y, double& z, void* context) const
 {
     osg::Vec3d world = osg::Vec3d(x,y,z) * _local2world;
     double lat, lon, height;
@@ -71,7 +71,7 @@ LTPSpatialReference::preTransform(double& x, double& y, double& z, void* context
 }
 
 bool
-LTPSpatialReference::postTransform(double& x, double& y, double& z, void* context) const
+TangentPlaneSpatialReference::postTransform(double& x, double& y, double& z, void* context) const
 {
     osg::Vec3d world;
     getEllipsoid()->convertLatLongHeightToXYZ(
@@ -83,10 +83,10 @@ LTPSpatialReference::postTransform(double& x, double& y, double& z, void* contex
 }
 
 bool
-LTPSpatialReference::_isEquivalentTo( const SpatialReference* srs ) const
+TangentPlaneSpatialReference::_isEquivalentTo( const SpatialReference* srs ) const
 {
     return 
         srs->isLTP() && 
-        _worldPointLLA == static_cast<const LTPSpatialReference*>(srs)->_worldPointLLA ;
-    // todo: check the reference ellipsoids
+        _originLLA == static_cast<const TangentPlaneSpatialReference*>(srs)->_originLLA ;
+    // todo: check the reference ellipsoids?
 }
diff --git a/src/osgEarth/Locators b/src/osgEarth/Locators
index 4634ebb..d362028 100644
--- a/src/osgEarth/Locators
+++ b/src/osgEarth/Locators
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,18 +43,28 @@ namespace osgEarth
         /** Construct a locator that crops to a display extent. */
         GeoLocator( const osgTerrain::Locator& prototype, const GeoExtent& dataExtent, const GeoExtent& displayExtent );
 
+        /** dtor */
+        virtual ~GeoLocator() { }
+
         static GeoLocator* createForKey( const class TileKey& key, const class MapInfo& mapInfo );
         static GeoLocator* createForExtent( const GeoExtent& extent, const class MapInfo& mapInfo);
 
         void setDataExtent( const GeoExtent& extent );
         const GeoExtent& getDataExtent() const;
 
-        /** Clones the current locator, applying a new display (i.e. crop) extent. */
-        virtual GeoLocator* cloneAndCrop( const osgTerrain::Locator& prototype, const GeoExtent& displayExtent ) const;
-
-        virtual GeoLocator* getGeographicFromGeocentric( ) const;
+        virtual GeoLocator* getGeographicFromGeocentric() const;
 
         virtual bool isEquivalentTo( const GeoLocator& rhs ) const;
+
+    public: // better-sounding functions.
+
+        bool modelToUnit(const osg::Vec3d& model, osg::Vec3d& unit) const {
+            return convertModelToLocal(model, unit);
+        }
+        
+        bool unitToModel(const osg::Vec3d& unit, osg::Vec3d& model) const {
+            return convertLocalToModel(unit, model);
+        }
         
     public: // Locator
         virtual bool convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local) const;
@@ -79,18 +89,22 @@ namespace osgEarth
     class OSGEARTH_EXPORT MercatorLocator : public GeoLocator
     {
     public:
+        MercatorLocator( const GeoExtent& dataExtent );
+
         MercatorLocator( const osgTerrain::Locator& prototype, const GeoExtent& dataExtent );
 
         //virtual bool convertLocalToModel(const osg::Vec3d& local, osg::Vec3d& model) const;
         virtual bool convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local) const;
         
         /** Clones the current locator, applying a new display (i.e. crop) extent. */
-        virtual GeoLocator* cloneAndCrop( const osgTerrain::Locator& prototype, const GeoExtent& displayExtent );
+        //virtual GeoLocator* cloneAndCrop( const osgTerrain::Locator& prototype, const GeoExtent& displayExtent );
 
-        virtual GeoLocator* getGeographicFromGeocentric( );
+        virtual GeoLocator* getGeographicFromGeocentric() const;
 
     private:
         GeoExtent _geoDataExtent;
+
+        void postInit();
     };
 }
 
diff --git a/src/osgEarth/Locators.cpp b/src/osgEarth/Locators.cpp
index 92350de..8138970 100644
--- a/src/osgEarth/Locators.cpp
+++ b/src/osgEarth/Locators.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -106,12 +106,13 @@ GeoLocator::getDataExtent() const {
     return _dataExtent;
 }
 
+#if 0
 GeoLocator*
 GeoLocator::cloneAndCrop( const osgTerrain::Locator& prototype, const GeoExtent& displayExtent ) const
 {
     return new GeoLocator( prototype, _dataExtent, displayExtent );
 }
-
+#endif
 
 bool
 GeoLocator::convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local) const
@@ -159,63 +160,78 @@ GeoLocator::getGeographicFromGeocentric( ) const
 #define MERC_MAX_LAT  85.084059050110383
 #define MERC_MIN_LAT -85.084059050110383
 
-static double
-lonToU(double lon) {
-    return (lon + 180.0) / 360.0;
-}
+namespace
+{
+    double lonToU(double lon)
+    {
+        return (lon + 180.0) / 360.0;
+    }
+
+    double latToV(double lat)
+    {
+        double sin_lat = sin( osg::DegreesToRadians( lat ) );
+        return 0.5 - log( (1+sin_lat) / (1-sin_lat) ) / (4*osg::PI);
+    }
+
+    void getUV(const GeoExtent& ext,
+               double lon, double lat,
+               double& out_u, double& out_v)
+    {
+        out_u = osg::clampBetween( (lon-ext.xMin())/ext.width(), MERC_MINX, MERC_MAXX );
 
-static double
-latToV(double lat) {
-    double sin_lat = sin( osg::DegreesToRadians( lat ) );
-    return 0.5 - log( (1+sin_lat) / (1-sin_lat) ) / (4*osg::PI);
+        double vmin = latToV( osg::clampBetween( ext.yMax(), MERC_MIN_LAT, MERC_MAX_LAT ) );
+        double vmax = latToV( osg::clampBetween( ext.yMin(), MERC_MIN_LAT, MERC_MAX_LAT ) );
+        double vlat = latToV( osg::clampBetween( lat, MERC_MIN_LAT, MERC_MAX_LAT ) );
+
+        out_v = osg::clampBetween( (vlat-vmin)/(vmax-vmin), MERC_MINY, MERC_MAXY );
+    }
 }
 
-static void
-getUV(const GeoExtent& ext,
-      double lon, double lat,
-      double& out_u, double& out_v)
+MercatorLocator::MercatorLocator( const GeoExtent& dataExtent ) :
+GeoLocator( dataExtent )
 {
-    out_u = (lon-ext.xMin())/ext.width();
+    postInit();
+}
 
-    double vmin = latToV( osg::clampBetween( ext.yMax(), MERC_MIN_LAT, MERC_MAX_LAT ) );
-    double vmax = latToV( osg::clampBetween( ext.yMin(), MERC_MIN_LAT, MERC_MAX_LAT ) );
-    double vlat = latToV( osg::clampBetween( lat, MERC_MIN_LAT, MERC_MAX_LAT ) );
 
-    out_v = (vlat-vmin)/(vmax-vmin);
+MercatorLocator::MercatorLocator(const osgTerrain::Locator& prototype,
+                                 const GeoExtent& dataExtent ) :
+GeoLocator( prototype, dataExtent )
+{
+    postInit();
 }
 
-//static void
-//mercatorToLatLon( double x, double y, double& out_lat, double& out_lon )
-//{
-//    const GeoExtent& m = osgEarth::Registry::instance()->getGlobalMercatorProfile()->getExtent();
-//    double xr = -osg::PI + ((x-m.xMin())/m.width())*2.0*osg::PI;
-//    double yr = -osg::PI + ((y-m.yMin())/m.height())*2.0*osg::PI;
-//    out_lat = osg::RadiansToDegrees( 2.0 * atan( exp(yr) ) - osg::PI_2 );
-//    out_lon = osg::RadiansToDegrees( xr );
-//}
-
-MercatorLocator::MercatorLocator( const osgTerrain::Locator& prototype, const GeoExtent& dataExtent ) :
-GeoLocator( prototype, dataExtent )
+
+void
+MercatorLocator::postInit()
 {
     // assumption: incoming extent is Mercator SRS; transform it to LAT/LONG
+    _geoDataExtent = getDataExtent().transform( getDataExtent().getSRS()->getGeographicSRS() );
 
-    _geoDataExtent = dataExtent.transform( dataExtent.getSRS()->getGeographicSRS() );
+    setEllipsoidModel( const_cast<osg::EllipsoidModel*>(_geoDataExtent.getSRS()->getEllipsoid()) );
+    setCoordinateSystemType( osgTerrain::Locator::GEOCENTRIC );
 
-    //// manually reproject for speed:
-    //double latmin, lonmin, latmax, lonmax;
-    //mercatorToLatLon( dataExtent.xMin(), dataExtent.yMin(), latmin, lonmin );
-    //mercatorToLatLon( dataExtent.xMax(), dataExtent.yMax(), latmax, lonmax );
+    double minX = _geoDataExtent.xMin(), maxX = _geoDataExtent.xMax();
+    double minY = _geoDataExtent.yMin(), maxY = _geoDataExtent.yMax();
 
-    //_geoDataExtent = GeoExtent(
-    //    dataExtent.getSRS()->getGeographicSRS(),
-    //    lonmin, latmin, lonmax, latmax );
+    osg::Matrixd transform;
+    transform.set(
+        maxX-minX, 0.0,       0.0, 0.0,
+        0.0,       maxY-minY, 0.0, 0.0,
+        0.0,       0.0,       1.0, 0.0,
+        minX,      minY,      0.0, 1.0); 
+
+    setTransform(transform);
 }
 
+
+#if 0
 GeoLocator*
 MercatorLocator::cloneAndCrop( const osgTerrain::Locator& prototype, const GeoExtent& displayExtent )
 {
     return new MercatorLocator( prototype, getDataExtent() );
 }
+#endif
 
 bool
 MercatorLocator::convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local) const
@@ -282,7 +298,7 @@ MercatorLocator::convertModelToLocal(const osg::Vec3d& world, osg::Vec3d& local)
 }
 
 GeoLocator* 
-MercatorLocator::getGeographicFromGeocentric( )
+MercatorLocator::getGeographicFromGeocentric() const
 {
     if (getCoordinateSystemType() == osgTerrain::Locator::GEOCENTRIC)
     {
diff --git a/src/osgEarth/Map b/src/osgEarth/Map
index e755c94..d1b1bfd 100644
--- a/src/osgEarth/Map
+++ b/src/osgEarth/Map
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 #define OSGEARTH_MAP_H 1
 
 #include <osgEarth/Common>
-#include <osgEarth/Caching>
+#include <osgEarth/GeoData>
 #include <osgEarth/Profile>
 #include <osgEarth/MapOptions>
 #include <osgEarth/ImageLayer>
@@ -31,7 +31,6 @@
 #include <osgEarth/Revisioning>
 #include <osgEarth/ThreadingUtils>
 #include <osgDB/ReaderWriter>
-#include <osg/TransferFunction>
 
 namespace osgEarth
 {    
@@ -65,10 +64,10 @@ namespace osgEarth
         int getFirstIndex() const { return _firstIndex; }
         int getSecondIndex() const { return _secondIndex; }
         Layer* getLayer() const { return _layer.get(); }
-        ImageLayer* getImageLayer() const { return static_cast<ImageLayer*>(_layer.get()); }
-        ElevationLayer* getElevationLayer() const { return static_cast<ElevationLayer*>(_layer.get()); }
-        ModelLayer* getModelLayer() const { return static_cast<ModelLayer*>(_layer.get()); }
-        MaskLayer* getMaskLayer() const { return static_cast<MaskLayer*>(_layer.get()); }
+        ImageLayer* getImageLayer() const { return dynamic_cast<ImageLayer*>(_layer.get()); }
+        ElevationLayer* getElevationLayer() const { return dynamic_cast<ElevationLayer*>(_layer.get()); }
+        ModelLayer* getModelLayer() const { return dynamic_cast<ModelLayer*>(_layer.get()); }
+        MaskLayer* getMaskLayer() const { return dynamic_cast<MaskLayer*>(_layer.get()); }
 
     private:
         ActionType _action;
@@ -100,6 +99,9 @@ namespace osgEarth
 
         virtual void onMaskLayerAdded( MaskLayer* mask ) { }
         virtual void onMaskLayerRemoved( MaskLayer* mask ) { }
+
+        /** dtor */
+        virtual ~MapCallback() { }
     };
 
     typedef std::list< osg::ref_ptr<MapCallback> > MapCallbackList;
@@ -119,22 +121,32 @@ namespace osgEarth
 
     public:
         /**
-         * Gets the optons with which this map was created.
+         * Gets the options governing this map.
          */
         const MapOptions& getMapOptions() const { return _mapOptions; }
 
         /**
+         * Gets the options with which this map was initially created.
+         */
+        const MapOptions& getInitialMapOptions() const { return _initMapOptions; }
+
+        /**
          * Gets the map's master profile. This value may not be available until 
          * after autoCalculateProfile has been called.
          */
         const Profile* getProfile() const;
 
         /**
+         * Gets the SRS of the map's profile (convenience)
+         */
+        const SpatialReference* getSRS() const { return _profile.valid() ? _profile->getSRS() : 0L; }
+
+        /**
          * Copies references of the map image layers into the output list.
          * This method is thread safe. It returns the map revision that was
          * in effect when the data was copied.
          */
-        int getImageLayers( ImageLayerVector& out_layers, bool validLayersOnly =false ) const;
+        Revision getImageLayers( ImageLayerVector& out_layers ) const;
 
         /**
          * Gets the number of image layers in the map.
@@ -161,7 +173,7 @@ namespace osgEarth
          * This method is thread safe. It returns the map revision that was
          * in effect when the data was copied.
          */
-        int getElevationLayers( ElevationLayerVector& out_layers, bool validLayersOnly =false ) const;
+        Revision getElevationLayers( ElevationLayerVector& out_layers ) const;
 
         /**
          * Gets the number of elevation layers in the map.
@@ -188,7 +200,7 @@ namespace osgEarth
          * This method is thread safe. It returns the map revision that was
          * in effect when the data was copied.
          */
-        int getModelLayers( ModelLayerVector& out_layers, bool validLayersOnly =false ) const;
+        Revision getModelLayers( ModelLayerVector& out_layers ) const;
 
         /**
          * Gets the number of model layers in the map.
@@ -290,12 +302,22 @@ namespace osgEarth
          */
         void removeTerrainMaskLayer( MaskLayer* layer );
 
+        /**
+         * Clear all layers from this map.
+         */
+        void clear();
+
+        /**
+         * Replaces the layers in this Map with layers from the specified Map
+         * (except for terrain mask layers)
+         */
+        void setLayersFromMap( const Map* map );
+
     public:
         /**
          * Gets the user-provided options structure stored in this map.
          */
         const osgDB::ReaderWriter::Options* getGlobalOptions() const;
-
         void setGlobalOptions( const osgDB::ReaderWriter::Options* options );
 
         /**
@@ -310,31 +332,51 @@ namespace osgEarth
 
         /**
          * Creates a heightfield for the region covered by the given TileKey, falling back on
-         * lower resolutions if necessary. 
+         * lower resolutions if necessary.
+         *
+         * NOTE: By default, this method will return a heightfield with HAE (height above ellipsoid) 
+         * values, even if the TileKey profile has an MSL vertical datum. That's because this 
+         * method is usually called to produce a renderable height field. You can override this
+         * behavior by passing in convertToHAE=false.
          *
          * @param key
          *      Tile key defining the region (and ideal LOD) for which to return a heightfield
+         * @param fallbackIfNecessary
+         *      If the map can't generate a true heightfield for the key, fall back on lower
+         *      levels of detail until it can make one.
+         * @param out_hf
+         *      Resulting heightfield is written here.
+         * @param out_isFallback
+         *      Output flag telling the caller whether the method had to "fall back" on a 
+         *      lower level of detail.
+         * @param convertToHAE
+         *      Whether to return height-above-ellipsoid values in the heightfield, even if the
+         *      input tile key's SRS specifies a vertical datum (which would normally result in
+         *      a heightfield expressed relative to MSL). This is typical for when you are building
+         *      the actual 3D terrain.
          * @param samplePolicy
-         *      See enum SamplePolicy in this class.
+         *      How to intepolate heightfield samples.
+         * @param progress
+         *      (optional) progress callback.
          */
         bool getHeightField(
-            const TileKey& key,
-            bool fallback,
+            const TileKey&                  key,
+            bool                            fallbackIfNeessary,
             osg::ref_ptr<osg::HeightField>& out_hf,
-            bool* out_isFallback =0L,
-            ElevationInterpolation interpolation =INTERP_AVERAGE,
-            ElevationSamplePolicy samplePolicy =SAMPLE_FIRST_VALID,
-            ProgressCallback* progress = 0) const;
+            bool*                           out_isFallback =0L,            
+            bool                            convertToHAE   =true,
+            ElevationSamplePolicy           samplePolicy   =SAMPLE_FIRST_VALID,
+            ProgressCallback*               progress       =0L)  const;
 
-		/**
-		 * Sets the Cache for this Map. Set to NULL for no cache.
-		 */
-		void setCache( Cache* cache );
+        /**
+         * Sets the Cache for this Map. Set to NULL for no cache.
+         */
+        void setCache( Cache* cache );
 
-		/**
-		 * Gets the Cache for this Map
-		 */
-		Cache* getCache() const;
+        /**
+         * Gets the Cache for this Map
+         */
+        Cache* getCache() const;
 
         /**
          * Gets the revision # of the map. The revision # changes every time
@@ -350,21 +392,6 @@ namespace osgEarth
         bool isGeocentric() const;
 
         /**
-         * Convenience function to convert an arbitrary point to map coordinates.
-         */
-        bool toMapPoint( const osg::Vec3d& input, const SpatialReference* input_srs, osg::Vec3d& output ) const;
-
-        /**
-         * Convenience function to convert a point (in map coordinates) to world-space (XYZ) coordinates.
-         */
-        bool mapPointToWorldPoint( const osg::Vec3d& input, osg::Vec3d& output ) const;
-
-        /**
-         * Convenience function to convert a world-space (XYZ) point to map coordinates.
-         */
-        bool worldPointToMapPoint( const osg::Vec3d& input, osg::Vec3d& output ) const;
-
-        /**
          * Synronizes a map frame to the current revision of the map's data model.
          * Returns true if new Map model data was available and a sync occurred;
          * returns false if nothing changed.
@@ -381,13 +408,21 @@ namespace osgEarth
             ENTIRE_MODEL     = 0xff
         };
 
+        /**
+         * Gets the database options associated with this map.
+         */
+        const osgDB::Options* getDBOptions() const { return _dbOptions.get(); }
+
+        const Profile* getProfileNoVDatum() const { return _profileNoVDatum.get(); }
+
     protected:
 
-        ~Map() { }
+        virtual ~Map();
 
     private:
 
         MapOptions _mapOptions;
+        const MapOptions _initMapOptions;
         std::string _name;
         ImageLayerVector _imageLayers;
         ElevationLayerVector _elevationLayers;
@@ -397,11 +432,15 @@ namespace osgEarth
         osg::ref_ptr<const osgDB::ReaderWriter::Options> _globalOptions;
         Threading::ReadWriteMutex _mapDataMutex;
         osg::ref_ptr<const Profile> _profile;
-		osg::ref_ptr<Cache> _cache;
+        osg::ref_ptr<const Profile> _profileNoVDatum;
+        osg::ref_ptr<Cache> _cache;
         Revision _dataModelRevision;
+        osg::ref_ptr<osgDB::Options> _dbOptions;
 
     private:
         void calculateProfile();
+
+        friend class MapInfo;
     };
 
 
@@ -412,32 +451,29 @@ namespace osgEarth
     class OSGEARTH_EXPORT MapInfo
     {
     public:
-        MapInfo( const Map* map )
-            : _profile( map->getProfile() ),
-              _isGeocentric( map->isGeocentric() ),
-              _isCube( map->getMapOptions().coordSysType() == MapOptions::CSTYPE_GEOCENTRIC_CUBE ) { }
-
-        MapInfo( const MapInfo& rhs )
-            : _profile( rhs._profile ),
-              _isGeocentric( rhs._isGeocentric ),
-              _isCube( rhs._isCube ) { }              
+        MapInfo( const Map* map );
+
+        MapInfo( const MapInfo& rhs );
+
+        /** dtor */
+        virtual ~MapInfo() { }
         
         const Profile* getProfile() const { return _profile.get(); }
+        const SpatialReference* getSRS() const { return _profile->getSRS(); }
 
         bool isGeocentric() const { return _isGeocentric; }
         bool isCube() const { return _isCube; }
-        bool isPlateCarre() const { return !_isGeocentric && isGeographicSRS(); }
+        bool isPlateCarre() const { return _profile->getSRS()->isPlateCarre(); }
 
         bool isProjectedSRS() const { return !isGeographicSRS(); }
         bool isGeographicSRS() const { return _profile->getSRS()->isGeographic(); }        
-        
-        bool toMapPoint( const osg::Vec3d& input, const SpatialReference* input_srs, osg::Vec3d& output ) const;
-        bool mapPointToWorldPoint( const osg::Vec3d& input, osg::Vec3d& output ) const;
-        bool worldPointToMapPoint( const osg::Vec3d& input, osg::Vec3d& output ) const;
+
+        ElevationInterpolation getElevationInterpolation() const { return _elevationInterpolation;}
 
     private:
         osg::ref_ptr<const Profile> _profile;
         bool _isGeocentric, _isCube;
+        ElevationInterpolation _elevationInterpolation;
     };
 
 
@@ -455,17 +491,13 @@ namespace osgEarth
         MapFrame( const Map* map, Map::ModelParts parts =Map::TERRAIN_LAYERS, const std::string& name ="" );
 
         /**
-         * Constructs a map frame that only makes a copy of "valid" data items.
-         * Warning: if you ask to copyValidDataOnly, the indexOf() methods may not return
-         * values that correspond to the source data model!
-         */
-        MapFrame( const Map* map, bool copyValidDataOnly, Map::ModelParts parts =Map::TERRAIN_LAYERS, const std::string& name ="" );
-
-        /**
          * A copy constructor with a new name (no sync happens)
          */
         MapFrame( const MapFrame& frame, const std::string& name ="" );
 
+        /** dtor */
+        virtual ~MapFrame() { }
+
         /**
          * Synchronizes this frame with the source map model (only if necessary). Returns
          * true is new data was synced; false if nothing changed.
@@ -477,6 +509,7 @@ namespace osgEarth
 
         /** Convenience method to access the map's profile */
         const Profile* getProfile() const { return _mapInfo.getProfile(); }
+        
 
         /** The image layer stack snapshot */
         const ImageLayerVector& imageLayers() const { return _imageLayers; }
@@ -513,27 +546,27 @@ namespace osgEarth
          * snapshot in this MapFrame.
          */
         bool getHeightField(
-            const TileKey& key,
-            bool fallback,
+            const TileKey&                  key,
+            bool                            fallback,
             osg::ref_ptr<osg::HeightField>& out_hf,
-            bool* out_isFallback =0L,
-            ElevationInterpolation interpolation =INTERP_AVERAGE,
-            ElevationSamplePolicy samplePolicy   =SAMPLE_FIRST_VALID,
-            ProgressCallback* progress = 0) const; 
+            bool*                           out_isFallback =0L,   
+            bool                            convertToHAE   =true,         
+            ElevationSamplePolicy           samplePolicy   =SAMPLE_FIRST_VALID,
+            ProgressCallback*               progress       =0L ) const;
 
     private:
         bool _initialized;
-        osg::ref_ptr<const Map> _map;
+        osg::observer_ptr<const Map> _map;
+        //osg::ref_ptr<const Map> _map;
         std::string _name;
         MapInfo _mapInfo;
         Map::ModelParts _parts;
-        bool _copyValidDataOnly;
         Revision _mapDataModelRevision;
         ImageLayerVector _imageLayers;
         ElevationLayerVector _elevationLayers;
         ModelLayerVector _modelLayers;
         MaskLayerVector _maskLayers;
-        friend class Map;
+        friend class Map;        
     };
 
 }
diff --git a/src/osgEarth/Map.cpp b/src/osgEarth/Map.cpp
index bc89123..1165ac4 100644
--- a/src/osgEarth/Map.cpp
+++ b/src/osgEarth/Map.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,11 +19,11 @@
 #include <osgEarth/Map>
 #include <osgEarth/Registry>
 #include <osgEarth/TileSource>
-#include <OpenThreads/ScopedLock>
+#include <osgEarth/HeightFieldUtils>
+#include <osgEarth/URI>
 #include <iterator>
 
 using namespace osgEarth;
-using namespace OpenThreads;
 
 #define LC "[Map] "
 
@@ -41,7 +41,7 @@ MapCallback::onMapModelChanged( const MapModelChange& change )
     case MapModelChange::ADD_MASK_LAYER:
         onMaskLayerAdded( change.getMaskLayer() ); break;
     case MapModelChange::ADD_MODEL_LAYER:
-				onModelLayerAdded( change.getModelLayer(), change.getFirstIndex() ); break;
+        onModelLayerAdded( change.getModelLayer(), change.getFirstIndex() ); break;
     case MapModelChange::REMOVE_ELEVATION_LAYER:
         onElevationLayerRemoved( change.getElevationLayer(), change.getFirstIndex() ); break;
     case MapModelChange::REMOVE_IMAGE_LAYER:
@@ -54,19 +54,71 @@ MapCallback::onMapModelChanged( const MapModelChange& change )
         onElevationLayerMoved( change.getElevationLayer(), change.getFirstIndex(), change.getSecondIndex() ); break;
     case MapModelChange::MOVE_IMAGE_LAYER:
         onImageLayerMoved( change.getImageLayer(), change.getFirstIndex(), change.getSecondIndex() ); break;
-		case MapModelChange::MOVE_MODEL_LAYER:
-				onModelLayerMoved( change.getModelLayer(), change.getFirstIndex(), change.getSecondIndex() ); break;
+    case MapModelChange::MOVE_MODEL_LAYER:
+            onModelLayerMoved( change.getModelLayer(), change.getFirstIndex(), change.getSecondIndex() ); break;
+    case MapModelChange::UNSPECIFIED: break;
+    default: break;
     }
 }
 
 //------------------------------------------------------------------------
 
 Map::Map( const MapOptions& options ) :
-osg::Referenced( true ),
-_mapOptions( options ),
-_dataModelRevision(0)
+osg::Referenced      ( true ),
+_mapOptions          ( options ),
+_initMapOptions      ( options ),
+_dataModelRevision   ( 0 )
 {
-    //NOP
+    if (_mapOptions.cachePolicy().isSet() &&
+        _mapOptions.cachePolicy()->usage() == CachePolicy::USAGE_CACHE_ONLY )
+    {
+        OE_INFO << LC << "CACHE-ONLY MODE activated from map" << std::endl;
+    }
+
+    // if the map was a cache policy set, make this the system-wide default, UNLESS
+    // there ALREADY IS a registry default, in which case THAT will override THIS one.
+    // (In other words, whichever one is set first wins.)
+    const optional<CachePolicy> regCachePolicy = Registry::instance()->defaultCachePolicy();
+
+    if ( _mapOptions.cachePolicy().isSet() )
+    {
+        if ( !regCachePolicy.isSet() )
+        {
+            Registry::instance()->setDefaultCachePolicy( *_mapOptions.cachePolicy() );
+            OE_INFO << LC 
+                << "Setting default cache policy from map ("
+                << _mapOptions.cachePolicy()->usageString() << ")" << std::endl;
+        }
+        else
+        {
+            _mapOptions.cachePolicy() = *regCachePolicy;
+            OE_INFO << LC
+                << "Settings map caching policy to default ("
+                << _mapOptions.cachePolicy()->usageString() << ")" << std::endl;
+        }
+    }
+    else if ( regCachePolicy.isSet() )
+    {
+        _mapOptions.cachePolicy() = *regCachePolicy;
+        OE_INFO << LC
+            << "Settings map caching policy to default ("
+            << _mapOptions.cachePolicy()->usageString() << ")" << std::endl;
+    }
+
+    // the map-side dbOptions object holds I/O information for all components.
+    _dbOptions = osg::clone( Registry::instance()->getDefaultOptions() );
+
+    // we do our own caching
+    _dbOptions->setObjectCacheHint( osgDB::Options::CACHE_NONE );
+
+    // store the IO information in the top-level DB Options:
+    _mapOptions.cachePolicy()->apply( _dbOptions.get() );
+    URIContext( _mapOptions.referrer() ).apply( _dbOptions.get() );
+}
+
+Map::~Map()
+{
+    OE_DEBUG << "~Map" << std::endl;
 }
 
 bool
@@ -77,25 +129,26 @@ Map::isGeocentric() const
         _mapOptions.coordSysType() == MapOptions::CSTYPE_GEOCENTRIC_CUBE;
 }
 
-const osgDB::ReaderWriter::Options*
-Map::getGlobalOptions() const {
+const osgDB::Options*
+Map::getGlobalOptions() const
+{
     return _globalOptions.get();
 }
 
 void
-Map::setGlobalOptions( const osgDB::ReaderWriter::Options* options ) {
+Map::setGlobalOptions( const osgDB::Options* options )
+{
     _globalOptions = options;
 }
 
-int
-Map::getImageLayers( ImageLayerVector& out_list, bool validLayersOnly ) const
+Revision
+Map::getImageLayers( ImageLayerVector& out_list ) const
 {
     out_list.reserve( _imageLayers.size() );
 
     Threading::ScopedReadLock lock( const_cast<Map*>(this)->_mapDataMutex );
     for( ImageLayerVector::const_iterator i = _imageLayers.begin(); i != _imageLayers.end(); ++i )
-        if ( !validLayersOnly || i->get()->getProfile() )
-            out_list.push_back( i->get() );
+        out_list.push_back( i->get() );
 
     return _dataModelRevision;
 }
@@ -137,15 +190,14 @@ Map::getImageLayerAt( int index ) const
         return 0L;
 }
 
-int
-Map::getElevationLayers( ElevationLayerVector& out_list, bool validLayersOnly ) const
+Revision
+Map::getElevationLayers( ElevationLayerVector& out_list ) const
 {
     out_list.reserve( _elevationLayers.size() );
 
     Threading::ScopedReadLock lock( const_cast<Map*>(this)->_mapDataMutex );
     for( ElevationLayerVector::const_iterator i = _elevationLayers.begin(); i != _elevationLayers.end(); ++i )
-        if ( !validLayersOnly || i->get()->getProfile() )
-            out_list.push_back( i->get() );
+        out_list.push_back( i->get() );
 
     return _dataModelRevision;
 }
@@ -187,15 +239,14 @@ Map::getElevationLayerAt( int index ) const
         return 0L;
 }
 
-int
-Map::getModelLayers( ModelLayerVector& out_list, bool validLayersOnly ) const
+Revision
+Map::getModelLayers( ModelLayerVector& out_list ) const
 {
     out_list.reserve( _modelLayers.size() );
 
     Threading::ScopedReadLock lock( const_cast<Map*>(this)->_mapDataMutex );
     for( ModelLayerVector::const_iterator i = _modelLayers.begin(); i != _modelLayers.end(); ++i )
-        //if ( !validLayersOnly || i->get()->i->get()->getProfile() )
-            out_list.push_back( i->get() );
+        out_list.push_back( i->get() );
 
     return _dataModelRevision;
 }
@@ -276,16 +327,17 @@ Map::getCache() const
     if ( !_cache.valid() )
     {
         Cache* cache = 0L;
-
-        // if there's a cache override in the registry, install it now.
-        if ( osgEarth::Registry::instance()->getCacheOverride() )
+        
+        // if a cache is defined in the options, use that.
+        if ( _mapOptions.cache().isSet() )
         {
-            cache = osgEarth::Registry::instance()->getCacheOverride();
+            cache = CacheFactory::create( _mapOptions.cache().get() );
         }
 
-        else if ( _mapOptions.cache().isSet() )
+        // or, if there's a cache in the registry, install it now.
+        else if ( Registry::instance()->getCache() )
         {
-            cache = CacheFactory::create( _mapOptions.cache().get() );
+            cache = Registry::instance()->getCache();
         }
 
         if ( cache )
@@ -293,7 +345,7 @@ Map::getCache() const
             const_cast<Map*>(this)->setCache( cache );
         }
     }
-	return _cache.get();
+    return _cache.get();
 }
 
 void
@@ -302,17 +354,23 @@ Map::setCache( Cache* cache )
     if (_cache.get() != cache)
     {
         _cache = cache;
-        _cache->setReferenceURI( _mapOptions.referenceURI().value() );
 
-        //Propagate the cache to any of our layers
+        if ( _cache.valid() )
+        {
+            _cache->apply( _dbOptions.get() );
+        }
+
+        // Propagate the cache to any of our layers
         for (ImageLayerVector::iterator i = _imageLayers.begin(); i != _imageLayers.end(); ++i)
         {
-            i->get()->setCache( _cache.get() );
+            i->get()->setDBOptions( _dbOptions.get() );
+            //i->get()->setCache( _cache.get() );
         }
 
         for (ElevationLayerVector::iterator i = _elevationLayers.begin(); i != _elevationLayers.end(); ++i)
         {
-            i->get()->setCache( _cache.get() );
+            i->get()->setDBOptions( _dbOptions.get() );
+            //i->get()->setCache( _cache.get() );
         }
     }
 }
@@ -341,21 +399,17 @@ Map::addImageLayer( ImageLayer* layer )
     unsigned int index = -1;
     if ( layer )
     {
-	    //Set options for the map from the layer
-		layer->setReferenceURI( _mapOptions.referenceURI().value() );
+        // Set the DB options for the map from the layer, including the cache policy.
+        layer->setDBOptions( _dbOptions.get() );
 
-        //propagate the cache to the layer:
-        if ( _mapOptions.cache().isSet() && _mapOptions.cache()->cacheOnly().isSetTo( true ) )
-		{
-			layer->setCacheOnly( true );
-		}
-
-		//Set the Cache for the MapLayer to our cache.
-		layer->setCache( this->getCache() );
+        // propagate the cache to the layer:
+        layer->setCache( this->getCache() );
 
         // Tell the layer the map profile, if possible:
         if ( _profile.valid() )
+        {
             layer->setTargetProfileHint( _profile.get() );
+        }
 
         int newRevision;
 
@@ -373,9 +427,8 @@ Map::addImageLayer( ImageLayer* layer )
         {
             i->get()->onMapModelChanged( MapModelChange(
                 MapModelChange::ADD_IMAGE_LAYER, newRevision, layer, index) );
-            //i->get()->onImageLayerAdded( layer, index, newRevision );
-        }	
-    }	
+        }   
+    }   
 }
 
 
@@ -386,13 +439,7 @@ Map::insertImageLayer( ImageLayer* layer, unsigned int index )
     if ( layer )
     {
         //Set options for the map from the layer
-        layer->setReferenceURI( _mapOptions.referenceURI().value() );
-
-        //propagate the cache to the layer:
-        if ( _mapOptions.cache().isSet() && _mapOptions.cache()->cacheOnly().isSetTo( true ) )
-        {
-            layer->setCacheOnly( true );
-        }
+        layer->setDBOptions( _dbOptions.get() );
 
         //Set the Cache for the MapLayer to our cache.
         layer->setCache( this->getCache() );
@@ -420,8 +467,8 @@ Map::insertImageLayer( ImageLayer* layer, unsigned int index )
         {
             i->get()->onMapModelChanged( MapModelChange(
                 MapModelChange::ADD_IMAGE_LAYER, newRevision, layer, index) );
-        }	
-    }	
+        }   
+    }   
 }
 
 void
@@ -431,17 +478,11 @@ Map::addElevationLayer( ElevationLayer* layer )
     unsigned int index = -1;
     if ( layer )
     {
-	    //Set options for the map from the layer
-		layer->setReferenceURI( _mapOptions.referenceURI().value() );
-
-        //propagate the cache to the layer:
-        if ( _mapOptions.cache().isSet() && _mapOptions.cache()->cacheOnly().isSetTo( true ) )
-		{
-			layer->setCacheOnly( true );
-		}
+        //Set options for the map from the layer
+        layer->setDBOptions( _dbOptions.get() );
 
-		//Set the Cache for the MapLayer to our cache.
-		layer->setCache( this->getCache() );
+        //Set the Cache for the MapLayer to our cache.
+        layer->setCache( this->getCache() );
         
         // Tell the layer the map profile, if possible:
         if ( _profile.valid() )
@@ -463,8 +504,8 @@ Map::addElevationLayer( ElevationLayer* layer )
         {
             i->get()->onMapModelChanged( MapModelChange(
                 MapModelChange::ADD_ELEVATION_LAYER, newRevision, layer, index) );
-        }	
-    }	
+        }   
+    }   
 }
 
 void 
@@ -643,17 +684,18 @@ Map::addModelLayer( ModelLayer* layer )
         {
             Threading::ScopedWriteLock lock( _mapDataMutex );
             _modelLayers.push_back( layer );
-						index = _modelLayers.size() - 1;
+            index = _modelLayers.size() - 1;
             newRevision = ++_dataModelRevision;
         }
 
-        layer->initialize( _mapOptions.referenceURI().get(), this ); //getReferenceURI(), this );        
+        // initialize the model layer
+        layer->initialize( _dbOptions.get() );
 
         // a seprate block b/c we don't need the mutex
         for( MapCallbackList::iterator i = _mapCallbacks.begin(); i != _mapCallbacks.end(); i++ )
         {
             i->get()->onMapModelChanged( MapModelChange(
-								MapModelChange::ADD_MODEL_LAYER, newRevision, layer, index ) );
+                MapModelChange::ADD_MODEL_LAYER, newRevision, layer, index ) );
         }
     }
 }
@@ -670,7 +712,8 @@ Map::insertModelLayer( ModelLayer* layer, unsigned int index )
             newRevision = ++_dataModelRevision;
         }
 
-        layer->initialize( _mapOptions.referenceURI().get(), this ); //getReferenceURI(), this );        
+        // initialize the model layer
+        layer->initialize( _dbOptions.get() );
 
         // a seprate block b/c we don't need the mutex
         for( MapCallbackList::iterator i = _mapCallbacks.begin(); i != _mapCallbacks.end(); i++ )
@@ -770,7 +813,7 @@ Map::addTerrainMaskLayer( MaskLayer* layer )
             newRevision = ++_dataModelRevision;
         }
 
-        layer->initialize( _mapOptions.referenceURI().value(), this );
+        layer->initialize( _dbOptions.get(), this );
 
         // a separate block b/c we don't need the mutex   
         for( MapCallbackList::iterator i = _mapCallbacks.begin(); i != _mapCallbacks.end(); i++ )
@@ -807,10 +850,74 @@ Map::removeTerrainMaskLayer( MaskLayer* layer )
         {
             i->get()->onMapModelChanged( MapModelChange(
                 MapModelChange::REMOVE_MASK_LAYER, newRevision, layerRef.get()) );
-        }	
+        }   
     }
 }
 
+
+void
+Map::clear()
+{
+    ImageLayerVector     imageLayersRemoved;
+    ElevationLayerVector elevLayersRemoved;
+    ModelLayerVector     modelLayersRemoved;
+    MaskLayerVector      maskLayersRemoved;
+
+    Revision newRevision;
+    {
+        Threading::ScopedWriteLock lock( _mapDataMutex );
+
+        imageLayersRemoved.swap( _imageLayers );
+        elevLayersRemoved.swap ( _elevationLayers );
+        modelLayersRemoved.swap( _modelLayers );
+
+        // Because you cannot remove a mask layer once it's in place
+        //maskLayersRemoved.swap ( _terrainMaskLayers );
+
+        // calculate a new revision.
+        newRevision = ++_dataModelRevision;
+    }
+    
+    // a separate block b/c we don't need the mutex   
+    for( MapCallbackList::iterator i = _mapCallbacks.begin(); i != _mapCallbacks.end(); i++ )
+    {
+        for( ImageLayerVector::iterator k = imageLayersRemoved.begin(); k != imageLayersRemoved.end(); ++k )
+            i->get()->onMapModelChanged( MapModelChange(MapModelChange::REMOVE_IMAGE_LAYER, newRevision, k->get()) );
+        for( ElevationLayerVector::iterator k = elevLayersRemoved.begin(); k != elevLayersRemoved.end(); ++k )
+            i->get()->onMapModelChanged( MapModelChange(MapModelChange::REMOVE_ELEVATION_LAYER, newRevision, k->get()) );
+        for( ModelLayerVector::iterator k = modelLayersRemoved.begin(); k != modelLayersRemoved.end(); ++k )
+            i->get()->onMapModelChanged( MapModelChange(MapModelChange::REMOVE_MODEL_LAYER, newRevision, k->get()) );
+        //for( MaskLayerVector::iterator k = maskLayersRemoved.begin(); k != maskLayersRemoved.end(); ++k )
+        //    i->get()->onMapModelChanged( MapModelChange(MapModelChange::REMOVE_MASK_LAYER, newRevision, k->get()) );
+    }
+}
+
+
+void
+Map::setLayersFromMap( const Map* map )
+{
+    this->clear();
+
+    if ( map )
+    {
+        ImageLayerVector newImages;
+        map->getImageLayers( newImages );
+        for( ImageLayerVector::iterator i = newImages.begin(); i != newImages.end(); ++i )
+            addImageLayer( i->get() );
+
+        ElevationLayerVector newElev;
+        map->getElevationLayers( newElev );
+        for( ElevationLayerVector::iterator i = newElev.begin(); i != newElev.end(); ++i )
+            addElevationLayer( i->get() );
+
+        ModelLayerVector newModels;
+        map->getModelLayers( newModels );
+        for( ModelLayerVector::iterator i = newModels.begin(); i != newModels.end(); ++i )
+            addModelLayer( i->get() );
+    }
+}
+
+
 void
 Map::calculateProfile()
 {
@@ -884,6 +991,15 @@ Map::calculateProfile()
             }
         }
 
+        // convert the profile to Plate Carre if necessary.
+        if (_profile.valid() &&
+            _profile->getSRS()->isGeographic() && 
+            getMapOptions().coordSysType() == MapOptions::CSTYPE_PROJECTED )
+        {
+            OE_INFO << LC << "Projected display with geographic SRS; activating Plate Carre mode" << std::endl;
+            _profile = _profile->overrideSRS( _profile->getSRS()->createPlateCarreGeographicSRS() );
+        }
+
         // finally, fire an event if the profile has been set.
         if ( _profile.valid() )
         {
@@ -919,109 +1035,133 @@ Map::calculateProfile()
                 layer->setTargetProfileHint( _profile.get() );
             }
         }
+
+        // create a "proxy" profile to use when querying elevation layers with a vertical datum
+        if ( _profile->getSRS()->getVerticalDatum() != 0L )
+        {
+            ProfileOptions po = _profile->toProfileOptions();
+            po.vsrsString().unset();
+            _profileNoVDatum = Profile::create(po);
+        }
+        else
+        {
+            _profileNoVDatum = _profile;
+        }
     }
 }
 
 namespace
 {
+    /**
+     * Returns a heightfield corresponding to the input key by compositing
+     * elevation data for a vector of elevation layers. The resulting 
+     * heightfield's height values will be expressed relative to the vertical
+     * datum in the requesting key (which is usually that of the Map itself).
+     */
     bool
-    s_getHeightField(const TileKey& key,
-                     const ElevationLayerVector& elevLayers,
-                     const Profile* mapProfile,
-                     bool fallback,
-                     ElevationInterpolation interpolation,
-                     ElevationSamplePolicy samplePolicy,
+    s_getHeightField(const TileKey&                  key,
+                     const ElevationLayerVector&     elevLayers,
+                     bool                            fallback,
+                     const Profile*                  haeProfile,
+                     ElevationInterpolation          interpolation,
+                     ElevationSamplePolicy           samplePolicy,
                      osg::ref_ptr<osg::HeightField>& out_result,
-                     bool* out_isFallback,
-                     ProgressCallback* progress) 
-    {
-        unsigned int lowestLOD = key.getLevelOfDetail();
+                     bool*                           out_isFallback,
+                     ProgressCallback*               progress ) 
+    {        
+        unsigned lowestLOD = key.getLevelOfDetail();
         bool hfInitialized = false;
 
-        typedef std::map< TerrainLayer*, bool > LayerValidMap;
-        LayerValidMap layerValidMap;
-
-	    //Get a HeightField for each of the enabled layers
-	    GeoHeightFieldVector heightFields;
-
-        unsigned int numValidHeightFields = 0;
+        //Get a HeightField for each of the enabled layers
+        GeoHeightFieldVector heightFields;
+        
+        //The number of fallback heightfields we have
+        int numFallbacks = 0;
 
+        //Default to being fallback data.
         if ( out_isFallback )
         {
-            *out_isFallback = false;
-        }
-        
-        //First pass:  Try to get the exact LOD requested for each enabled heightfield
-        for( ElevationLayerVector::const_iterator i = elevLayers.begin(); i != elevLayers.end(); i++ )
-        {
-            ElevationLayer* layer = i->get();
-            if (layer->getProfile() && layer->getEnabled() )
-            {
-                osg::HeightField* hf = layer->createHeightField( key, progress );
-                layerValidMap[ layer ] = (hf != 0L);
-                if ( hf )                {
-                    numValidHeightFields++;
-                    GeoHeightField ghf( hf, key.getExtent(), layer->getProfile()->getVerticalSRS() );
-                    heightFields.push_back( ghf );
-                }
-            }
+            *out_isFallback = true;
         }
 
-        //If we didn't get any heightfields and weren't requested to fallback, just return NULL
-        if (numValidHeightFields == 0 && !fallback)
+        // if the caller provided an "HAE map profile", he wants an HAE elevation grid even if
+        // the map profile has a vertical datum. This is the usual case when building the 3D
+        // terrain, for example. Construct a temporary key that doesn't have the vertical
+        // datum info and use that to query the elevation data.
+        TileKey keyToUse = key;
+        if ( haeProfile )
         {
-            return false;
+            keyToUse = TileKey(key.getLevelOfDetail(), key.getTileX(), key.getTileY(), haeProfile );
         }
 
-        //Second pass:  We were either asked to fallback or we might have some heightfields at the requested
-        //              LOD and some that are NULL. Fall back on parent tiles to fill in the missing data if possible.
+        // Generate a heightfield for each elevation layer.
+
+        unsigned defElevSize = 8;
+
         for( ElevationLayerVector::const_iterator i = elevLayers.begin(); i != elevLayers.end(); i++ )
         {
             ElevationLayer* layer = i->get();
-
-            if (layer->getProfile() && layer->getEnabled() )
+            if ( layer->getVisible() )
             {
-                if (!layerValidMap[ layer ])
+                GeoHeightField geoHF = layer->createHeightField( keyToUse, progress );
+
+                // if "fallback" is set, try to fall back on lower LODs.
+                if ( !geoHF.valid() && fallback )
                 {
-                    TileKey hf_key = key;
-                    osg::ref_ptr< osg::HeightField > hf;
-                    while (hf_key.valid())
-                    {
-                        hf = layer->createHeightField( hf_key, progress );
-                        if ( hf.valid() )
-                            break;
+                    TileKey hf_key = keyToUse.createParentKey();
 
-                        hf_key = hf_key.createParentKey();
+                    while ( hf_key.valid() && !geoHF.valid() )
+                    {
+                        geoHF = layer->createHeightField( hf_key, progress );
+                        if ( !geoHF.valid() )
+                            hf_key = hf_key.createParentKey();
                     }
 
-                    if (hf.valid())
+                    if ( geoHF.valid() )
                     {
                         if ( hf_key.getLevelOfDetail() < lowestLOD )
                             lowestLOD = hf_key.getLevelOfDetail();
 
-                        heightFields.push_back( GeoHeightField(
-                            hf.get(), hf_key.getExtent(), layer->getProfile()->getVerticalSRS() ) );
-
-                        if ( out_isFallback )
-                            *out_isFallback = true;
-
+                        //This HeightField is fallback data, so increment the count.
+                        numFallbacks++;                        
                     }
                 }
+
+                if ( geoHF.valid() )
+                {
+                    heightFields.push_back( geoHF );
+                }
             }
         }
 
-	    if (heightFields.size() == 0)
-	    {
-	        //If we got no heightfields, return NULL
-		    return false;
-	    }
+        //If any of the layers produced valid data then it's not considered a fallback
+        if ( out_isFallback )
+        {
+            *out_isFallback = (numFallbacks == heightFields.size());
+            //OE_NOTICE << "Num fallbacks=" << numFallbacks << " numHeightFields=" << heightFields.size() << " is fallback " << *out_isFallback << std::endl;
+        }   
+        
+        if ( heightFields.size() == 0 )
+        {            
+            //If we got no heightfields but were requested to fallback, create an empty heightfield.
+            if ( fallback )
+            {
+                out_result = HeightFieldUtils::createReferenceHeightField( keyToUse.getExtent(), defElevSize, defElevSize );                
+                return true;
+            }
+            else
+            {
+                //We weren't requested to fallback so just return.
+                return false;
+            }
+        }
 
-	    else if (heightFields.size() == 1)
-	    {
+        else if (heightFields.size() == 1)
+        {
             if ( lowestLOD == key.getLevelOfDetail() )
             {
-		        //If we only have on heightfield, just return it.
-		        out_result = heightFields[0].takeHeightField();
+                //If we only have on heightfield, just return it.
+                out_result = heightFields[0].takeHeightField();
             }
             else
             {
@@ -1029,48 +1169,49 @@ namespace
                 out_result = geoHF.takeHeightField();
                 hfInitialized = true;
             }
-	    }
+        }
 
-	    else
-	    {
-		    //If we have multiple heightfields, we need to composite them together.
-		    unsigned int width = 0;
-		    unsigned int height = 0;
+        else
+        {
+            //If we have multiple heightfields, we need to composite them together.
+            unsigned int width = 0;
+            unsigned int height = 0;
 
-		    for (GeoHeightFieldVector::const_iterator i = heightFields.begin(); i < heightFields.end(); ++i)
-		    {
-			    if (i->getHeightField()->getNumColumns() > width) 
+            for (GeoHeightFieldVector::const_iterator i = heightFields.begin(); i < heightFields.end(); ++i)
+            {
+                if (i->getHeightField()->getNumColumns() > width) 
                     width = i->getHeightField()->getNumColumns();
-			    if (i->getHeightField()->getNumRows() > height) 
+                if (i->getHeightField()->getNumRows() > height) 
                     height = i->getHeightField()->getNumRows();
-		    }
-		    out_result = new osg::HeightField();
-		    out_result->allocate( width, height );
+            }
+            out_result = new osg::HeightField();
+            out_result->allocate( width, height );
 
-		    //Go ahead and set up the heightfield so we don't have to worry about it later
+            //Go ahead and set up the heightfield so we don't have to worry about it later
             double minx, miny, maxx, maxy;
             key.getExtent().getBounds(minx, miny, maxx, maxy);
             double dx = (maxx - minx)/(double)(out_result->getNumColumns()-1);
             double dy = (maxy - miny)/(double)(out_result->getNumRows()-1);
 
-            const VerticalSpatialReference* vsrs = mapProfile->getVerticalSRS();
+            const SpatialReference* keySRS = keyToUse.getProfile()->getSRS();
             
-		    //Create the new heightfield by sampling all of them.
+            //Create the new heightfield by sampling all of them.
             for (unsigned int c = 0; c < width; ++c)
             {
-                double geoX = minx + (dx * (double)c);
+                double x = minx + (dx * (double)c);
                 for (unsigned r = 0; r < height; ++r)
                 {
-                    double geoY = miny + (dy * (double)r);
+                    double y = miny + (dy * (double)r);
 
-                    //Collect elevations from all of the layers
+                    //Collect elevations from all of the layers. Iterate BACKWARDS because the last layer
+                    // is the highest priority.
                     std::vector<float> elevations;
-                    for (GeoHeightFieldVector::iterator itr = heightFields.begin(); itr != heightFields.end(); ++itr)
+                    for( GeoHeightFieldVector::reverse_iterator itr = heightFields.rbegin(); itr != heightFields.rend(); ++itr )
                     {
                         const GeoHeightField& geoHF = *itr;
 
                         float elevation = 0.0f;
-                        if ( geoHF.getElevation(key.getExtent().getSRS(), geoX, geoY, interpolation, vsrs, elevation) )
+                        if ( geoHF.getElevation(keySRS, x, y, interpolation, keySRS, elevation) )
                         {
                             if (elevation != NO_DATA_VALUE)
                             {
@@ -1117,50 +1258,72 @@ namespace
                     out_result->setHeight(c, r, elevation);
                 }
             }
-	    }
-
-	    //Replace any NoData areas with 0
-	    if (out_result.valid())
-	    {
-		    ReplaceInvalidDataOperator o;
-		    o.setValidDataOperator(new osgTerrain::NoDataValue(NO_DATA_VALUE));
-		    o( out_result.get() );
-	    }
-
-	    //Initialize the HF values for osgTerrain
-	    if (out_result.valid() && !hfInitialized )
-	    {	
-		    //Go ahead and set up the heightfield so we don't have to worry about it later
-		    double minx, miny, maxx, maxy;
-		    key.getExtent().getBounds(minx, miny, maxx, maxy);
-		    out_result->setOrigin( osg::Vec3d( minx, miny, 0.0 ) );
-		    double dx = (maxx - minx)/(double)(out_result->getNumColumns()-1);
-		    double dy = (maxy - miny)/(double)(out_result->getNumRows()-1);
-		    out_result->setXInterval( dx );
-		    out_result->setYInterval( dy );
-		    out_result->setBorderWidth( 0 );
-	    }
-
-	    return out_result.valid();
+        }
+
+        // Replace any NoData areas with the reference value. This is zero for HAE datums,
+        // and some geoid height for orthometric datums.
+        if (out_result.valid())
+        {
+            const Geoid*         geoid = 0L;
+            const VerticalDatum* vdatum = key.getProfile()->getSRS()->getVerticalDatum();
+
+            if ( haeProfile && vdatum )
+            {
+                geoid = vdatum->getGeoid();
+            }
+
+            HeightFieldUtils::resolveInvalidHeights(
+                out_result.get(),
+                key.getExtent(),
+                NO_DATA_VALUE,
+                geoid );
+
+            //ReplaceInvalidDataOperator o;
+            //o.setValidDataOperator(new osgTerrain::NoDataValue(NO_DATA_VALUE));
+            //o( out_result.get() );
+        }
+
+        //Initialize the HF values for osgTerrain
+        if (out_result.valid() && !hfInitialized )
+        {   
+            //Go ahead and set up the heightfield so we don't have to worry about it later
+            double minx, miny, maxx, maxy;
+            key.getExtent().getBounds(minx, miny, maxx, maxy);
+            out_result->setOrigin( osg::Vec3d( minx, miny, 0.0 ) );
+            double dx = (maxx - minx)/(double)(out_result->getNumColumns()-1);
+            double dy = (maxy - miny)/(double)(out_result->getNumRows()-1);
+            out_result->setXInterval( dx );
+            out_result->setYInterval( dy );
+            out_result->setBorderWidth( 0 );
+        }
+
+        return out_result.valid();
     }
 }
 
 
 bool
-Map::getHeightField(const TileKey& key,
-                    bool fallback,
+Map::getHeightField(const TileKey&                  key,
+                    bool                            fallback,
                     osg::ref_ptr<osg::HeightField>& out_result,
-                    bool* out_isFallback,
-                    ElevationInterpolation interpolation,
-                    ElevationSamplePolicy samplePolicy,
-                    ProgressCallback* progress) const
+                    bool*                           out_isFallback,
+                    bool                            convertToHAE,
+                    ElevationSamplePolicy           samplePolicy,
+                    ProgressCallback*               progress) const
 {
     Threading::ScopedReadLock lock( const_cast<Map*>(this)->_mapDataMutex );
 
+    ElevationInterpolation interp = getMapOptions().elevationInterpolation().get();    
+
     return s_getHeightField(
-        key, _elevationLayers, getProfile(), fallback, 
-        interpolation, samplePolicy, 
-        out_result, out_isFallback,
+        key, 
+        _elevationLayers, 
+        fallback, 
+        convertToHAE ? _profileNoVDatum.get() : 0L,
+        interp, 
+        samplePolicy, 
+        out_result,  
+        out_isFallback,
         progress );
 }
 
@@ -1179,14 +1342,7 @@ Map::sync( MapFrame& frame ) const
             if ( !frame._initialized )
                 frame._imageLayers.reserve( _imageLayers.size() );
             frame._imageLayers.clear();
-            if ( frame._copyValidDataOnly )
-            {
-                for( ImageLayerVector::const_iterator i = _imageLayers.begin(); i != _imageLayers.end(); ++i )
-                    if ( i->get()->getProfile() )
-                        frame._imageLayers.push_back( i->get() );
-            }
-            else
-                std::copy( _imageLayers.begin(), _imageLayers.end(), std::back_inserter(frame._imageLayers) );
+            std::copy( _imageLayers.begin(), _imageLayers.end(), std::back_inserter(frame._imageLayers) );
         }
 
         if ( frame._parts & ELEVATION_LAYERS )
@@ -1194,14 +1350,7 @@ Map::sync( MapFrame& frame ) const
             if ( !frame._initialized )
                 frame._elevationLayers.reserve( _elevationLayers.size() );
             frame._elevationLayers.clear();
-            if ( frame._copyValidDataOnly )
-            {
-                for( ElevationLayerVector::const_iterator i = _elevationLayers.begin(); i != _elevationLayers.end(); ++i )
-                    if ( i->get()->getProfile() )
-                        frame._elevationLayers.push_back( i->get() );
-            }
-            else
-                std::copy( _elevationLayers.begin(), _elevationLayers.end(), std::back_inserter(frame._elevationLayers) );
+            std::copy( _elevationLayers.begin(), _elevationLayers.end(), std::back_inserter(frame._elevationLayers) );
         }
 
         if ( frame._parts & MODEL_LAYERS )
@@ -1229,117 +1378,55 @@ Map::sync( MapFrame& frame ) const
     return result;
 }
 
-bool
-Map::toMapPoint( const osg::Vec3d& input, const SpatialReference* inputSRS, osg::Vec3d& output ) const
-{
-    return MapInfo(this).toMapPoint(input, inputSRS, output);
-}
-
-bool
-Map::mapPointToWorldPoint( const osg::Vec3d& input, osg::Vec3d& output ) const
-{
-    return MapInfo(this).mapPointToWorldPoint(input, output);
-}
-
-bool
-Map::worldPointToMapPoint( const osg::Vec3d& input, osg::Vec3d& output ) const
-{
-    return MapInfo(this).worldPointToMapPoint(input, output);
-}
-
 //------------------------------------------------------------------------
 
-bool
-MapInfo::toMapPoint( const osg::Vec3d& input, const SpatialReference* inputSRS, osg::Vec3d& output ) const
-{
-    if ( !inputSRS )
-        return false;
-
-    const SpatialReference* mapSRS = _profile->getSRS();
-
-    if ( inputSRS->isEquivalentTo( mapSRS ) )
+MapInfo::MapInfo( const Map* map ) :
+_profile               ( 0L ),
+_isGeocentric          ( true ),
+_isCube                ( false ),
+_elevationInterpolation( INTERP_BILINEAR )
+{ 
+    if ( map )
     {
-        output = input;
-        return true;
+        _profile = map->getProfile();
+        _isGeocentric = map->isGeocentric();
+        _isCube = map->getMapOptions().coordSysType() == MapOptions::CSTYPE_GEOCENTRIC_CUBE;
+        _elevationInterpolation = *map->getMapOptions().elevationInterpolation();
     }
-
-    return inputSRS->transform(
-        input.x(), input.y(), input.z(),
-        mapSRS,
-        output.x(), output.y(), output.z() );
 }
 
-bool
-MapInfo::mapPointToWorldPoint( const osg::Vec3d& input, osg::Vec3d& output ) const
+MapInfo::MapInfo( const MapInfo& rhs ) :
+_profile               ( rhs._profile ),
+_isGeocentric          ( rhs._isGeocentric ),
+_isCube                ( rhs._isCube ),
+_elevationInterpolation( rhs._elevationInterpolation )
 {
-    if ( _isGeocentric )
-    {
-        _profile->getSRS()->getEllipsoid()->convertLatLongHeightToXYZ(
-            osg::DegreesToRadians( input.y() ), osg::DegreesToRadians( input.x() ), input.z(),
-            output.x(), output.y(), output.z() );
-    }
-    else
-    {
-        output = input;
-    }
-    return true;
-}
-
-bool
-MapInfo::worldPointToMapPoint( const osg::Vec3d& input, osg::Vec3d& output ) const
-{
-    if ( _isGeocentric )
-    { 
-        _profile->getSRS()->getEllipsoid()->convertXYZToLatLongHeight(
-            input.x(), input.y(), input.z(),
-            output.y(), output.x(), output.z() );
-
-        output.y() = osg::RadiansToDegrees(output.y());
-        output.x() = osg::RadiansToDegrees(output.x());
-    }
-    else
-    {
-        output = input;
-    }
-    return true;
-}
+    //nop
+}              
 
 //------------------------------------------------------------------------
 
 MapFrame::MapFrame( const Map* map, Map::ModelParts parts, const std::string& name ) :
 _initialized( false ),
-_map( map ),
-_name( name ),
-_mapInfo( map ),
-_parts( parts ),
-_copyValidDataOnly( false )
-{
-    sync();
-}
-
-MapFrame::MapFrame( const Map* map, bool copyValidDataOnly, Map::ModelParts parts, const std::string& name ) :
-_initialized( false ),
-_map( map ),
-_name( name ),
-_mapInfo( map ),
-_parts( parts ),
-_copyValidDataOnly( copyValidDataOnly )
+_map        ( map ),
+_name       ( name ),
+_mapInfo    ( map ),
+_parts      ( parts )
 {
     sync();
 }
 
 MapFrame::MapFrame( const MapFrame& src, const std::string& name ) :
-_initialized( src._initialized ),
-_map( src._map.get() ),
-_name( name ),
-_mapInfo( src._mapInfo ), // src._map.get() ),
-_parts( src._parts ),
-_copyValidDataOnly( src._copyValidDataOnly ),
+_initialized         ( src._initialized ),
+_map                 ( src._map.get() ),
+_name                ( name ),
+_mapInfo             ( src._mapInfo ),
+_parts               ( src._parts ),
 _mapDataModelRevision( src._mapDataModelRevision ),
-_imageLayers( src._imageLayers ),
-_elevationLayers( src._elevationLayers ),
-_modelLayers( src._modelLayers ),
-_maskLayers( src._maskLayers )
+_imageLayers         ( src._imageLayers ),
+_elevationLayers     ( src._elevationLayers ),
+_modelLayers         ( src._modelLayers ),
+_maskLayers          ( src._maskLayers )
 {
     //no sync required here; we copied the arrays etc
 }
@@ -1347,19 +1434,41 @@ _maskLayers( src._maskLayers )
 bool
 MapFrame::sync()
 {
-    return _map->sync( *this );
+    if ( _map.valid() )
+    {
+        return _map->sync( *this );
+    }
+    else
+    {
+        _imageLayers.clear();
+        _elevationLayers.clear();
+        _modelLayers.clear();
+        _maskLayers.clear();
+        return false;
+    }
 }
 
 bool
-MapFrame::getHeightField(const TileKey& key,
-                            bool fallback,
-                            osg::ref_ptr<osg::HeightField>& out_hf,
-                            bool* out_isFallback,
-                            ElevationInterpolation interpolation,
-                            ElevationSamplePolicy samplePolicy,
-                            ProgressCallback* progress) const
+MapFrame::getHeightField(const TileKey&                  key,
+                         bool                            fallback,
+                         osg::ref_ptr<osg::HeightField>& out_hf,
+                         bool*                           out_isFallback,    
+                         bool                            convertToHAE,
+                         ElevationSamplePolicy           samplePolicy,
+                         ProgressCallback*               progress) const
 {
-    return s_getHeightField( key, _elevationLayers, _mapInfo.getProfile(), fallback, interpolation, samplePolicy, out_hf, out_isFallback, progress );
+    if ( !_map.valid() ) return false;
+
+    return s_getHeightField( 
+        key, 
+        _elevationLayers,
+        fallback, 
+        convertToHAE ? _map->getProfileNoVDatum() : 0L,
+        _mapInfo.getElevationInterpolation(), 
+        samplePolicy, 
+        out_hf, 
+        out_isFallback,
+        progress );
 }
 
 int
@@ -1402,71 +1511,42 @@ MapFrame::getImageLayerByName( const std::string& name ) const
 }
 
 bool
-MapFrame::isCached( const osgEarth::TileKey& key ) const
+MapFrame::isCached( const TileKey& key ) const
 {
-    const Profile* mapProfile = getProfile();
-
-    //Check the imagery layers
+    //Check to see if the tile will load fast
+    // Check the imagery layers
     for( ImageLayerVector::const_iterator i = imageLayers().begin(); i != imageLayers().end(); i++ )
-    {
-        ImageLayer* layer = i->get();
-        osg::ref_ptr< Cache > cache = layer->getCache();
+    {   
+        //If we're cache only we should be fast
+        if (i->get()->isCacheOnly()) continue;
 
-        if ( !cache.valid() || !layer->getProfile() ) 
-            return false;
-
-        std::vector< TileKey > keys;
+        osg::ref_ptr< TileSource > source = i->get()->getTileSource();
+        if (!source.valid()) continue;
 
-        if ( mapProfile->isEquivalentTo( layer->getProfile() ) )
-        {
-            keys.push_back( key );
-        }
-        else
-        {
-            layer->getProfile()->getIntersectingTiles( key, keys );
-        }
+        //If the tile is blacklisted, it should also be fast.
+        if ( source->getBlacklist()->contains( key.getTileId() ) ) continue;
+        //If no data is available on this tile, we'll be fast
+        if ( !source->hasData( key ) ) continue;
 
-        for (unsigned int j = 0; j < keys.size(); ++j)
-        {
-            if ( layer->isKeyValid( keys[j] ) )
-            {
-                if ( !cache->isCached( keys[j], layer->getCacheSpec() ) )
-                {
-                    return false;
-                }
-            }
-        }
+        if ( !i->get()->isCached( key ) ) return false;
     }
 
     for( ElevationLayerVector::const_iterator i = elevationLayers().begin(); i != elevationLayers().end(); ++i )
     {
-        ElevationLayer* layer = i->get();
-        osg::ref_ptr< Cache > cache = layer->getCache();
+        //If we're cache only we should be fast
+        if (i->get()->isCacheOnly()) continue;
 
-        if ( !cache.valid() || !layer->getProfile() )
-            return false;
+        osg::ref_ptr< TileSource > source = i->get()->getTileSource();
+        if (!source.valid()) continue;
 
-        std::vector<TileKey> keys;
-
-        if ( mapProfile->isEquivalentTo( layer->getProfile() ) )
-        {
-            keys.push_back( key );
-        }
-        else
-        {
-            layer->getProfile()->getIntersectingTiles( key, keys );
-        }
-
-        for (unsigned int j = 0; j < keys.size(); ++j)
+        //If the tile is blacklisted, it should also be fast.
+        if ( source->getBlacklist()->contains( key.getTileId() ) ) continue;
+        if ( !source->hasData( key ) ) continue;
+        if ( !i->get()->isCached( key ) )
         {
-            if ( layer->isKeyValid( keys[j] ) )
-            {
-                if ( !cache->isCached( keys[j], layer->getCacheSpec() ) )
-                {
-                    return false;
-                }
-            }
+            return false;
         }
     }
-    return true;
+
+    return true;        
 }
diff --git a/src/osgEarth/MapNode b/src/osgEarth/MapNode
index 20e69cb..3544221 100644
--- a/src/osgEarth/MapNode
+++ b/src/osgEarth/MapNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,13 +23,14 @@
 #include <osgEarth/Common>
 #include <osgEarth/Map>
 #include <osgEarth/MapNodeOptions>
-#include <osgEarth/OverlayDecorator>
-#include <osgEarth/TerrainEngineNode>
-#include <osg/CoordinateSystemNode>
-#include <osgSim/OverlayNode>
+#include <osgEarth/SpatialReference>
 
 namespace osgEarth
 {
+    class OverlayDecorator;
+    class Terrain;
+    class TerrainEngineNode;
+
     /**
      * OSG Node that forms the root of an osgEarth map. This node is a "view" component
      * that renders data from a "Map" data model.
@@ -37,20 +38,12 @@ namespace osgEarth
     class OSGEARTH_EXPORT MapNode : public osg::Group
     {
     public:
+        /**
+         * Attempts to load a MapNOde from a ".earth" file in the arguments list
+         */
+        static MapNode* load( class osg::ArgumentParser& arguments );
 
-        class TileRangeData : public osg::Referenced
-        {
-        public:
-            TileRangeData(double minRange, double maxRange):
-              _minRange( minRange ),
-              _maxRange( maxRange )
-            {
-            }
-
-            double _minRange;
-            double _maxRange;
-        };
-
+    public:
         /**
          * Creates an empty map node.
          */
@@ -82,11 +75,6 @@ namespace osgEarth
          */
         MapNode( Map* map, const MapNodeOptions& options );
 
-        /**
-         * Attempts to load a MapNOde from a ".earth" file in the arguments list
-         */
-        static MapNode* load( class osg::ArgumentParser& arguments );
-
     public:
 
         virtual const char* libraryName() const { return "osgEarth"; }
@@ -96,6 +84,19 @@ namespace osgEarth
          * Gets the Map that this MapNode is rendering.
          */
         Map* getMap();
+        const Map* getMap() const;
+
+        /**
+         * Gets the spatial reference system of the underlying map.
+         * Convenience function.
+         */
+        const SpatialReference* getMapSRS() const;
+
+        /**
+         * Gets an interface for querying the in-memory terrain scene graph directly.
+         */
+        Terrain* getTerrain();
+        const Terrain* getTerrain() const;
 
         /**
          * Finds the topmost Map node in the specified scene graph, or returns NULL if
@@ -103,8 +104,10 @@ namespace osgEarth
          *
          * @param graph
          *      Node graph in which to search for a MapNode
+         * @param travMask
+         *      Traversal mask to apply while searching
          */
-        static MapNode* findMapNode( osg::Node* graph );   
+        static MapNode* findMapNode( osg::Node* graph, unsigned travMask =~0 );  
 
         /**
          * Returns true if the realized terrain model is geocentric, false if
@@ -118,6 +121,11 @@ namespace osgEarth
         osg::Group* getModelLayerGroup() const;
 
         /**
+         * Accesses the root node for a specific ModelLayer.
+         */
+        osg::Node* getModelLayerNode( ModelLayer* layer ) const;
+
+        /**
          * Adds a node that decorates the terrain groups
          */
         void addTerrainDecorator( osg::Group* decorator );
@@ -128,6 +136,12 @@ namespace osgEarth
         void removeTerrainDecorator( osg::Group* decorator );
 
         /**
+         * Gets the overlay decorator in this mapnode. Usually you do not need to
+         * access this directly. Instead install a DrapeableNode in the scene graph.
+         */
+        OverlayDecorator* getOverlayDecorator() { return _overlayDecorator; }
+
+        /**
          * Accesses the group containing anything that will be "draped" on the terrain
          * via the OverlayDecorator.
          */
@@ -158,6 +172,24 @@ namespace osgEarth
         Config& externalConfig() { return _externalConf; }
         const Config& externalConfig() const { return _externalConf; }
 
+        /**
+         * Sets a custom texture compositor technique on the underlying terrain engine.
+         * This method is here b/c just calling getTerrainEngine()->getTextureCompositor()
+         * ->setTechnique() has problems (with init order of the terrain engine). Someday
+         * this needs to be cleaned up.
+         */
+        void setCompositorTechnique( class TextureCompositorTechnique* tech );
+
+    public: // special purpose
+
+        /**
+         * Constructs a mapnode, optionally specifying whether th intialize the
+         * data sources in the map. Typically you would only use this CTOR if you are
+         * strictly using the MapNode for serialization.
+         */
+        MapNode( Map* map, const MapNodeOptions& options, bool initMap );
+
+
     public: //override osg::Node
 
         virtual osg::BoundingSphere computeBound() const;
@@ -170,49 +202,45 @@ namespace osgEarth
 
     private:
 
-        unsigned int _id;
-        osg::ref_ptr<Map> _map;
+        unsigned int               _id;
+        osg::ref_ptr<Map>          _map;
         osg::ref_ptr< osg::Group > _models;
         osg::ref_ptr< osg::Group > _overlayModels;
-        osg::ref_ptr< OverlayDecorator > _overlayDecorator;
-        MapNodeOptions _mapNodeOptions;
-        Config _externalConf;
+        OverlayDecorator*          _overlayDecorator;
+        MapNodeOptions             _mapNodeOptions;
+        Config                     _externalConf;
 
         // keep track of nodes created by model layers
         typedef std::map<ModelLayer*,osg::Node*> ModelLayerNodeMap;
-        ModelLayerNodeMap _modelLayerNodes;
-        osg::Group* _maskLayerNode;
-
-        osg::ref_ptr< osgSim::OverlayNode > _pendingOverlayNode;
-        bool _pendingOverlayAutoSetTextureUnit;
-
-        unsigned _lastNumBlacklistedFilenames;
-
-        osg::ref_ptr<TerrainEngineNode> _terrainEngine;
-        bool _terrainEngineInitialized;
-
-        osg::ref_ptr<osg::Group> _terrainEngineContainer;
+        ModelLayerNodeMap        _modelLayerNodes;
+        osg::Group*              _maskLayerNode;
+        unsigned                 _lastNumBlacklistedFilenames;
+        TerrainEngineNode*       _terrainEngine;
+        bool                     _terrainEngineInitialized;
+        osg::Group*              _terrainEngineContainer;
 
     public: // MapCallback proxy
 
         void onModelLayerAdded( ModelLayer*, unsigned int );
         void onModelLayerRemoved( ModelLayer* );
 		void onModelLayerMoved( ModelLayer* layer, unsigned int oldIndex, unsigned int newIndex );
-#if 0
-        void onMaskLayerAdded( MaskLayer* );
-        void onMaskLayerRemoved( MaskLayer* );
-#endif
 
     public:
         void onModelLayerOverlayChanged( ModelLayer* layer );
 
+    public:
+        struct TileRangeData : public osg::Referenced {
+            TileRangeData(double minRange, double maxRange) : _minRange( minRange ), _maxRange( maxRange ) { }
+            double _minRange;
+            double _maxRange;
+        };
+
     private:
 
         osg::ref_ptr< ModelLayerCallback > _modelLayerCallback;
         osg::ref_ptr< MapCallback > _mapCallback;
     
         void init();
-        void adjustEventTraversalCount( int delta );
     };
 
 } // namespace osgEarth
diff --git a/src/osgEarth/MapNode.cpp b/src/osgEarth/MapNode.cpp
index c21aaa8..3fbe086 100644
--- a/src/osgEarth/MapNode.cpp
+++ b/src/osgEarth/MapNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,11 +17,17 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 #include <osgEarth/MapNode>
+#include <osgEarth/Capabilities>
+#include <osgEarth/MapNodeObserver>
 #include <osgEarth/MaskNode>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/ShaderComposition>
 #include <osgEarth/OverlayDecorator>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/TextureCompositor>
+#include <osgEarth/URI>
+#include <osgEarth/DrapeableNode>
 #include <osg/ArgumentParser>
 #include <osg/PagedLOD>
 
@@ -60,9 +66,8 @@ namespace
     };
 
     // converys overlay property changes to the OverlayDecorator in MapNode.
-    class MapModelLayerCallback : public ModelLayerCallback
+    struct MapModelLayerCallback : public ModelLayerCallback
     {
-    public:
         MapModelLayerCallback(MapNode* mapNode) : _node(mapNode) { }
 
         virtual void onOverlayChanged(ModelLayer* layer)
@@ -72,6 +77,24 @@ namespace
 
         osg::observer_ptr<MapNode> _node;
     };
+
+    // callback that will run the MapNode installer on model layers so that
+    // MapNodeObservers can have MapNode access
+    struct MapNodeObserverInstaller : public NodeOperation
+    {
+        MapNodeObserverInstaller( MapNode* mapNode ) : _mapNode( mapNode ) { }
+
+        void operator()( osg::Node* node )
+        {
+            if ( _mapNode.valid() && node )
+            {
+                MapNodeReplacer replacer( _mapNode.get() );
+                node->accept( replacer );
+            }
+        }
+
+        osg::observer_ptr<MapNode> _mapNode;
+    };
 }
 
 //---------------------------------------------------------------------------
@@ -125,14 +148,14 @@ public:
 MapNode*
 MapNode::load(osg::ArgumentParser& args)
 {
-    for( unsigned i=1; i<args.argc(); ++i )
+    for( int i=1; i<args.argc(); ++i )
     {
         if ( args[i] && endsWith(args[i], ".earth") )
         {
-            osg::ref_ptr<osg::Node> output;
-            if ( HTTPClient::readNodeFile( args[i], output ) == HTTPClient::RESULT_OK )
+            ReadResult r = URI(args[i]).readNode();
+            if ( r.succeeded() )
             {
-                return dynamic_cast<MapNode*>( output.release() );
+                return r.release<MapNode>();
             }
         }
     }    
@@ -167,11 +190,35 @@ _mapNodeOptions( options )
     init();
 }
 
+MapNode::MapNode( Map* map, const MapNodeOptions& options, bool autoInit ) :
+_map( map? map : new Map() ),
+_mapNodeOptions( options )
+{
+    if ( autoInit )
+    {
+        init();
+    }
+}
+
+
 void
 MapNode::init()
 {
-	// Protect the MapNode from the Optimizer
-	setDataVariance(osg::Object::DYNAMIC);
+    // Take a reference to this object so that it doesn't get inadvertently
+    // deleting during startup. It is possible that during startup, a driver
+    // will load that will take a reference to the MapNode (like in a
+    // ModelSource node operation) and we don't want that deleting the MapNode
+    // out from under us. 
+    // This is paired by an unref_nodelete() at the end of this method.
+    this->ref();
+
+    // Protect the MapNode from the Optimizer
+    setDataVariance(osg::Object::DYNAMIC);
+
+    // initialize 0Ls
+    _terrainEngine          = 0L;
+    _terrainEngineContainer = 0L;
+    _overlayDecorator       = 0L;
 
     setName( "osgEarth::MapNode" );
 
@@ -189,14 +236,15 @@ MapNode::init()
     // TODO: this should probably happen elsewhere, like in the registry?
     if ( _mapNodeOptions.proxySettings().isSet() )
     {
-		HTTPClient::setProxySettings( _mapNodeOptions.proxySettings().get() );
+        HTTPClient::setProxySettings( _mapNodeOptions.proxySettings().get() );
     }
 
     // establish global driver options. These are OSG reader-writer options that
     // will make their way to any read* calls down the pipe
-    const osgDB::ReaderWriter::Options* global_options = _map->getGlobalOptions();
-    osg::ref_ptr<osgDB::ReaderWriter::Options> local_options = global_options ? 
-        new osgDB::ReaderWriter::Options( *global_options ) :
+    const osgDB::Options* global_options = _map->getGlobalOptions();
+
+    osg::ref_ptr<osgDB::Options> local_options = global_options ? 
+        Registry::instance()->cloneOrCreateOptions( global_options ) :
         NULL;
 
     if ( local_options.valid() )
@@ -210,9 +258,6 @@ MapNode::init()
     // TODO: not sure why we call this here
     _map->setGlobalOptions( local_options.get() );
 
-    // overlays:
-    _pendingOverlayAutoSetTextureUnit = true;
-
     // load and attach the terrain engine, but don't initialize it until we need it
     const TerrainOptions& terrainOptions = _mapNodeOptions.getTerrainOptions();
 
@@ -224,47 +269,54 @@ MapNode::init()
     // an optimizer from collapsing the empty group node.
     _terrainEngineContainer = new osg::Group();
     _terrainEngineContainer->setDataVariance( osg::Object::DYNAMIC );
-    this->addChild( _terrainEngineContainer.get() );
+    this->addChild( _terrainEngineContainer );
 
     // initialize terrain-level lighting:
     if ( terrainOptions.enableLighting().isSet() )
     {
-        _terrainEngineContainer->getOrCreateStateSet()->setMode( GL_LIGHTING, terrainOptions.enableLighting().value() ? 
-            osg::StateAttribute::ON | osg::StateAttribute::PROTECTED :
-            osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+        _terrainEngineContainer->getOrCreateStateSet()->setMode( 
+            GL_LIGHTING, 
+            terrainOptions.enableLighting().value() ? 1 : 0 );
     }
 
-    if ( _terrainEngine.valid() )
+    if ( _terrainEngine )
     {
         // inform the terrain engine of the map information now so that it can properly
         // initialize it's CoordinateSystemNode. This is necessary in order to support
         // manipulators and to set up the texture compositor prior to frame-loop 
         // initialization.
         _terrainEngine->preInitialize( _map.get(), terrainOptions );
-
-        _terrainEngineContainer->addChild( _terrainEngine.get() );
+        _terrainEngineContainer->addChild( _terrainEngine );
     }
     else
+    {
         OE_WARN << "FAILED to create a terrain engine for this map" << std::endl;
+    }
 
-    // make a group for the model layers:
+    // make a group for the model layers.
+    // NOTE: for now, we are going to nullify any shader programs that occur above the model
+    // group, since it does not YET support shader composition. Programs defined INSIDE a
+    // model layer will still work OK though.
     _models = new osg::Group();
     _models->setName( "osgEarth::MapNode.modelsGroup" );
     addChild( _models.get() );
 
     // make a group for overlay model layers:
-    _overlayModels = new osg::Group();
+    _overlayModels = new ObserverGroup(); //osg::Group();
     _overlayModels->setName( "osgEarth::MapNode.overlayModelsGroup" );
 
     // a decorator for overlay models:
     _overlayDecorator = new OverlayDecorator();
-    if ( _mapNodeOptions.overlayVertexWarping().isSet() )
-        _overlayDecorator->setVertexWarping( *_mapNodeOptions.overlayVertexWarping() );
+    _overlayDecorator->setOverlayGraphTraversalMask( terrainOptions.secondaryTraversalMask().value() );
+
     if ( _mapNodeOptions.overlayBlending().isSet() )
         _overlayDecorator->setOverlayBlending( *_mapNodeOptions.overlayBlending() );
     if ( _mapNodeOptions.overlayTextureSize().isSet() )
         _overlayDecorator->setTextureSize( *_mapNodeOptions.overlayTextureSize() );
-    addTerrainDecorator( _overlayDecorator.get() );
+    if ( _mapNodeOptions.overlayMipMapping().isSet() )
+        _overlayDecorator->setMipMapping( *_mapNodeOptions.overlayMipMapping() );
+
+    addTerrainDecorator( _overlayDecorator );
 
     // install any pre-existing model layers:
     ModelLayerVector modelLayers;
@@ -275,33 +327,35 @@ MapNode::init()
         onModelLayerAdded( k->get(), modelLayerIndex );
     }
 
-#if 0
-    // install any pre-existing mask layer:
-    if ( _map->getTerrainMaskLayer() )
-    {
-        onMaskLayerAdded( _map->getTerrainMaskLayer() );
-    }
-#endif
-
     _mapCallback = new MapNodeMapCallbackProxy(this);
     // install a layer callback for processing further map actions:
     _map->addMapCallback( _mapCallback.get()  );
 
     osg::StateSet* ss = getOrCreateStateSet();
-	//ss->setAttributeAndModes( new osg::CullFace() ); //, osg::StateAttribute::ON);
-    //ss->setAttributeAndModes( new osg::PolygonOffset( -1, -1 ) );
 
     if ( _mapNodeOptions.enableLighting().isSet() )
     {
-        ss->setMode( GL_LIGHTING, _mapNodeOptions.enableLighting().value() ? 
-            osg::StateAttribute::ON | osg::StateAttribute::PROTECTED :
-            osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+        ss->setMode( 
+            GL_LIGHTING, 
+            _mapNodeOptions.enableLighting().value() ? 1 : 0 );
     }
 
     dirtyBound();
 
+    // Install top-level shader programs:
+    if ( Registry::capabilities().supportsGLSL() )
+    {
+        VirtualProgram* vp = new VirtualProgram();
+        vp->setName( "MapNode" );
+        vp->installDefaultColoringAndLightingShaders();
+        ss->setAttributeAndModes( vp, osg::StateAttribute::ON );
+    }
+
     // register for event traversals so we can deal with blacklisted filenames
-    adjustEventTraversalCount( 1 );
+    ADJUST_EVENT_TRAV_COUNT( this, 1 );
+
+    // remove the temporary reference.
+    this->unref_nodelete();
 }
 
 MapNode::~MapNode()
@@ -336,17 +390,50 @@ MapNode::getMap()
     return _map.get();
 }
 
+const Map*
+MapNode::getMap() const
+{
+    return _map.get();
+}
+
+const SpatialReference*
+MapNode::getMapSRS() const
+{
+    return getMap()->getProfile()->getSRS();
+}
+
+Terrain*
+MapNode::getTerrain()
+{
+    return getTerrainEngine()->getTerrain();
+}
+
+const Terrain*
+MapNode::getTerrain() const
+{
+    return getTerrainEngine()->getTerrain();
+}
+
 TerrainEngineNode*
 MapNode::getTerrainEngine() const
 {
-    if ( !_terrainEngineInitialized && _terrainEngine.valid() )
+    if ( !_terrainEngineInitialized && _terrainEngine )
     {
         _terrainEngine->postInitialize( _map.get(), getMapNodeOptions().getTerrainOptions() );
         MapNode* me = const_cast< MapNode* >(this);
         me->_terrainEngineInitialized = true;
         me->dirtyBound();
     }
-    return _terrainEngine.get();
+    return _terrainEngine;
+}
+
+void
+MapNode::setCompositorTechnique( TextureCompositorTechnique* tech )
+{
+    if ( _terrainEngine )
+    {
+        _terrainEngine->getTextureCompositor()->setTechnique( tech );
+    }
 }
 
 osg::Group*
@@ -355,6 +442,13 @@ MapNode::getModelLayerGroup() const
     return _models.get();
 }
 
+osg::Node*
+MapNode::getModelLayerNode( ModelLayer* layer ) const
+{
+    ModelLayerNodeMap::const_iterator i = _modelLayerNodes.find( layer );
+    return i != _modelLayerNodes.end() ? i->second : 0L;
+}
+
 const MapNodeOptions&
 MapNode::getMapNodeOptions() const
 {
@@ -362,9 +456,9 @@ MapNode::getMapNodeOptions() const
 }
 
 MapNode*
-MapNode::findMapNode( osg::Node* graph )
+MapNode::findMapNode( osg::Node* graph, unsigned travmask )
 {
-    return findTopMostNodeOfType<MapNode>( graph );
+    return findRelativeNodeOfType<MapNode>( graph, travmask );
 }
 
 bool
@@ -376,7 +470,21 @@ MapNode::isGeocentric() const
 void
 MapNode::onModelLayerAdded( ModelLayer* layer, unsigned int index )
 {
-    osg::Node* node = layer->getOrCreateNode();
+    if ( !layer->getEnabled() )
+        return;
+    
+    // install a noe operation that will associate this mapnode with
+    // any MapNodeObservers loaded by the model layer:
+    ModelSource* modelSource = layer->getModelSource();
+    if ( modelSource )
+    {
+        // install a post-processing callback on the ModelLayer's source 
+        // so we can update the MapNode on new data that comes in:
+        modelSource->addPostProcessor( new MapNodeObserverInstaller(this) );
+    }
+
+    // create the scene graph:
+    osg::Node* node = layer->createSceneGraph( _map.get(), _map->getDBOptions(), 0L );
 
     layer->addCallback(_modelLayerCallback.get() );
 
@@ -391,7 +499,7 @@ MapNode::onModelLayerAdded( ModelLayer* layer, unsigned int index )
         }
         else
         {
-            if ( dynamic_cast<TerrainDecorator*>(node) || dynamic_cast<osgSim::OverlayNode*>(node) )
+            if ( dynamic_cast<TerrainDecorator*>(node) )
             {
                 OE_INFO << LC << "Installing overlay node" << std::endl;
                 addTerrainDecorator( node->asGroup() );
@@ -400,20 +508,24 @@ MapNode::onModelLayerAdded( ModelLayer* layer, unsigned int index )
             {
                 if ( layer->getOverlay() )
                 {
-                    _overlayModels->addChild( node ); // todo: index?
-                    updateOverlayGraph();
-                }
-                else
-                {
-                    _models->insertChild( index, node );
+                    DrapeableNode* draper = new DrapeableNode( this );
+                    draper->addChild( node );
+                    node = draper;
                 }
+
+                _models->insertChild( index, node );
             }
 
             ModelSource* ms = layer->getModelSource();
-            if ( ms && ms->getOptions().renderOrder().isSet() )
+
+            if ( ms )
             {
-                node->getOrCreateStateSet()->setRenderBinDetails(
-                    ms->getOptions().renderOrder().value(), "RenderBin" );
+                // enfore a rendering bin if necessary:
+                if ( ms->getOptions().renderOrder().isSet() )
+                {
+                    node->getOrCreateStateSet()->setRenderBinDetails(
+                        ms->getOptions().renderOrder().value(), "RenderBin" );
+                }
             }
 
             _modelLayerNodes[ layer ] = node;
@@ -436,21 +548,14 @@ MapNode::onModelLayerRemoved( ModelLayer* layer )
         {
             osg::Node* node = i->second;
 
-            if ( dynamic_cast<TerrainDecorator*>( node ) || dynamic_cast<osgSim::OverlayNode*>( node ) )
+            if ( dynamic_cast<TerrainDecorator*>( node ) )
             {
                 removeTerrainDecorator( node->asGroup() );
             }
             else
             {
-                if ( layer->getModelLayerOptions().overlay() == true )
-                {
-                    _overlayModels->removeChild( node );
-                    updateOverlayGraph();
-                }
-                else
-                {
-                    _models->removeChild( node );
-                }
+                _models->removeChild( node );
+                updateOverlayGraph();
             }
             
             _modelLayerNodes.erase( i );
@@ -463,22 +568,22 @@ MapNode::onModelLayerRemoved( ModelLayer* layer )
 void
 MapNode::onModelLayerMoved( ModelLayer* layer, unsigned int oldIndex, unsigned int newIndex )
 {
-		if ( layer )
+    if ( layer )
     {
         // look up the node associated with this model layer.
         ModelLayerNodeMap::iterator i = _modelLayerNodes.find( layer );
         if ( i != _modelLayerNodes.end() )
         {
-            osg::Node* node = i->second;
+            osg::ref_ptr<osg::Node> node = i->second;
             
-            if ( dynamic_cast<osgSim::OverlayNode*>( node ) )
+            //if ( dynamic_cast<osgSim::OverlayNode*>( node ) )
+            //{
+            //    // treat overlay node as a special case
+            //}
+            //else
             {
-                // treat overlay node as a special case
-            }
-            else
-            {
-                _models->removeChild( node );
-                _models->insertChild( newIndex, node );
+                _models->removeChild( node.get() );
+                _models->insertChild( newIndex, node.get() );
             }
         }
         
@@ -486,43 +591,46 @@ MapNode::onModelLayerMoved( ModelLayer* layer, unsigned int oldIndex, unsigned i
     }
 }
 
-struct MaskNodeFinder : public osg::NodeVisitor {
-    MaskNodeFinder() : osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ) { }
-    void apply( osg::Group& group ) {
-        if ( dynamic_cast<MaskNode*>( &group ) ) {
-            _groups.push_back( &group );
+namespace
+{
+    struct MaskNodeFinder : public osg::NodeVisitor {
+        MaskNodeFinder() : osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ) { }
+        void apply( osg::Group& group ) {
+            if ( dynamic_cast<MaskNode*>( &group ) ) {
+                _groups.push_back( &group );
+            }
+            traverse(group);
         }
-        traverse(group);
-    }
-    std::list< osg::Group* > _groups;
-};
+        std::list< osg::Group* > _groups;
+    };
+}
 
 void
 MapNode::addTerrainDecorator(osg::Group* decorator)
 {    
-    if ( _terrainEngine.valid() )
+    if ( _terrainEngine )
     {
-        decorator->addChild( _terrainEngine.get() );
-        _terrainEngine->getParent(0)->replaceChild( _terrainEngine.get(), decorator );
+        decorator->addChild( _terrainEngine );
+        _terrainEngine->getParent(0)->replaceChild( _terrainEngine, decorator );
         dirtyBound();
 
         TerrainDecorator* td = dynamic_cast<TerrainDecorator*>( decorator );
         if ( td )
-            td->onInstall( _terrainEngine.get() );
+            td->onInstall( _terrainEngine );
     }
 }
 
 void
 MapNode::removeTerrainDecorator(osg::Group* decorator)
 {
-    if ( _terrainEngine.valid() )
+    if ( _terrainEngine )
     {
         TerrainDecorator* td = dynamic_cast<TerrainDecorator*>( decorator );
         if ( td )
-            td->onUninstall( _terrainEngine.get() );
+            td->onUninstall( _terrainEngine );
 
-        osg::Node* child = _terrainEngine.get();
-        for( osg::Group* g = child->getParent(0); g != _terrainEngineContainer.get(); )
+        osg::ref_ptr<osg::Node> child = _terrainEngine;
+        for( osg::Group* g = child->getParent(0); g != _terrainEngineContainer; )
         {
             if ( g == decorator )
             {
@@ -538,17 +646,9 @@ MapNode::removeTerrainDecorator(osg::Group* decorator)
 }
 
 void
-MapNode::adjustEventTraversalCount( int delta )
-{
-    int oldCount = this->getNumChildrenRequiringEventTraversal();
-    if ( oldCount + delta >= 0 )
-        this->setNumChildrenRequiringEventTraversal( (unsigned int)(oldCount + delta) );
-}
-
-void
 MapNode::traverse( osg::NodeVisitor& nv )
 {
-    if ( nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR )
+    if ( nv.getVisitorType() == nv.EVENT_VISITOR )
     {
         unsigned int numBlacklist = Registry::instance()->getNumBlacklistedFilenames();
         if (numBlacklist != _lastNumBlacklistedFilenames)
@@ -567,18 +667,34 @@ MapNode::traverse( osg::NodeVisitor& nv )
 void
 MapNode::onModelLayerOverlayChanged( ModelLayer* layer )
 {
-    OE_NOTICE << "Overlay changed to "  << layer->getOverlay() << std::endl;
-    osg::ref_ptr< osg::Group > origParent = layer->getOverlay() ? _models.get() : _overlayModels.get();
-    osg::ref_ptr< osg::Group > newParent  = layer->getOverlay() ? _overlayModels.get() : _models.get();
-
-    osg::ref_ptr< osg::Node > node = layer->getOrCreateNode();
-    if (node.valid())
+    osg::ref_ptr<osg::Node> node = _modelLayerNodes[ layer ];
+    if ( node.get() )
     {
-        //Remove it from the original parent and add it to the new parent
-        origParent->removeChild( node.get() );
-        newParent->addChild( node.get() );
+        DrapeableNode* draper = dynamic_cast<DrapeableNode*>(node.get());
+        if ( !draper && layer->getOverlay() )
+        {
+            draper = new DrapeableNode(this);
+            draper->addChild( node.get() );
+            _models->replaceChild( node.get(), draper );
+        }
+        else
+        {
+            draper->setDraped( layer->getOverlay() );
+        }
     }
 
+    //OE_NOTICE << "Overlay changed to "  << layer->getOverlay() << std::endl;
+    //osg::ref_ptr< osg::Group > origParent = layer->getOverlay() ? _models.get() : _overlayModels.get();
+    //osg::ref_ptr< osg::Group > newParent  = layer->getOverlay() ? _overlayModels.get() : _models.get();
+
+    //osg::ref_ptr< osg::Node > node = layer->getOrCreateNode();
+    //if (node.valid())
+    //{
+    //    //Remove it from the original parent and add it to the new parent
+    //    origParent->removeChild( node.get() );
+    //    newParent->addChild( node.get() );
+    //}
+
     updateOverlayGraph();
 }
 
@@ -594,3 +710,4 @@ MapNode::updateOverlayGraph()
         _overlayDecorator->setOverlayGraph( 0L );
     }
 }
+
diff --git a/src/osgEarth/MapNodeObserver b/src/osgEarth/MapNodeObserver
new file mode 100644
index 0000000..10faab3
--- /dev/null
+++ b/src/osgEarth/MapNodeObserver
@@ -0,0 +1,113 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_MAP_NODE_OBSERVER_H
+#define OSGEARTH_MAP_NODE_OBSERVER_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/MapNode>
+
+namespace osgEarth
+{
+    /**
+     * This is a marker class for objects (and nodes) that reference a MapNode.
+     *
+     * The usage pattern for this class is to include it as a superclass using
+     * multiple inheritance (if necessary) and to implement the set/get MapNode
+     * methods. If you store a local reference to the MapNode, you should use
+     * an osg::observer_ptr<> to do so!
+     *
+     * You can update as scene graph containing MapNodeObservers by using the
+     * MapNodeObserverSetter visitor.
+     */
+    class /*header-only*/ MapNodeObserver
+    {
+    public:
+        /**
+         * Sets the map node's observer reference
+         */
+        virtual void setMapNode( MapNode* mapNode ) =0;
+
+        /**
+         * Gets the map node from its observer reference
+         */
+        virtual MapNode* getMapNode() =0;
+    };
+
+
+    /**
+     * Base class for a visitor that operates on MapNodeObserver instances
+     * found in a scene graph.
+     */
+    class /*header-only*/ MapNodeObserverVisitor : public osg::NodeVisitor
+    {
+    public:
+        MapNodeObserverVisitor(osg::NodeVisitor::TraversalMode mode =osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+            : osg::NodeVisitor( mode ) { }
+        
+        virtual void apply( MapNodeObserver* m ) = 0;
+
+        void tryApply( MapNodeObserver* m )
+        {
+            if ( m ) apply( m );
+        }
+
+        void apply( osg::Node& node )
+        {
+            tryApply( dynamic_cast<MapNodeObserver*>(&node) );
+            tryApply( dynamic_cast<MapNodeObserver*>(node.getEventCallback()) );
+            tryApply( dynamic_cast<MapNodeObserver*>(node.getUpdateCallback()) );
+            tryApply( dynamic_cast<MapNodeObserver*>(node.getCullCallback()) );
+            traverse( node );
+        }
+
+        void apply( osg::Geode& geode )
+        {
+            for(unsigned d=0; d<geode.getNumDrawables(); ++d )
+            {
+                osg::Drawable* drawable = geode.getDrawable(d);
+                tryApply( dynamic_cast<MapNodeObserver*>(drawable->getEventCallback()) );
+                tryApply( dynamic_cast<MapNodeObserver*>(drawable->getUpdateCallback()) );
+                tryApply( dynamic_cast<MapNodeObserver*>(drawable->getCullCallback()) );
+            }
+            traverse( geode );
+        }
+    };
+
+
+    /**
+     * Visitor that traverses a graph and calls setMapNode() on each
+     * MapNodeObserver found.
+     */
+    class /*header-only*/ MapNodeReplacer : public MapNodeObserverVisitor
+    {
+    public:
+        MapNodeReplacer( MapNode* mapNode ) : _mapNode(mapNode) { }
+
+        void apply( MapNodeObserver* m )
+        {
+            m->setMapNode( _mapNode.get() );
+        }
+
+    private:
+        osg::observer_ptr<MapNode> _mapNode;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_MAP_NODE_OBSERVER_H
diff --git a/src/osgEarth/MapNodeObserver.cpp b/src/osgEarth/MapNodeObserver.cpp
new file mode 100644
index 0000000..835ea9e
--- /dev/null
+++ b/src/osgEarth/MapNodeObserver.cpp
@@ -0,0 +1,113 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/ColorFilter>
+#include <osgEarth/ThreadingUtils>
+
+using namespace osgEarth;
+
+ColorFilterRegistry*
+ColorFilterRegistry::instance()
+{
+    // OK to be in the local scope since this gets called at static init time
+    // by the OSGEARTH_REGISTER_COLORFILTER macro
+    static ColorFilterRegistry* s_singleton =0L;
+    static Threading::Mutex     s_singletonMutex;
+
+    if ( !s_singleton )
+    {
+        Threading::ScopedMutexLock lock(s_singletonMutex);
+        if ( !s_singleton )
+        {
+            s_singleton = new ColorFilterRegistry();
+        }
+    }
+    return s_singleton;
+}
+
+bool
+ColorFilterRegistry::readChain(const Config& conf, ColorFilterChain& out_chain)
+{
+    bool createdAtLeastOne = false;
+
+    // first try to parse the top-level config:
+    ColorFilter* top = createOne( conf );
+    if ( top )
+    {
+        out_chain.push_back( top );
+        createdAtLeastOne = true;
+    }
+
+    // failing that, treat it like a chain:
+    else
+    {
+        for( ConfigSet::const_iterator i = conf.children().begin(); i != conf.children().end(); ++i )
+        {
+            ColorFilter* object = createOne( *i );
+            if ( object )
+            {
+                out_chain.push_back( object );
+                createdAtLeastOne = true;
+            }
+        }
+    }
+
+    return createdAtLeastOne;
+}
+
+
+bool
+ColorFilterRegistry::writeChain(const ColorFilterChain& chain, Config& out_config)
+{
+    bool wroteAtLeastOne = false;
+
+    for( ColorFilterChain::const_iterator i = chain.begin(); i != chain.end(); ++i )
+    {
+        Config conf = i->get()->getConfig();
+        if ( !conf.empty() )
+        {
+            out_config.add( conf );
+            wroteAtLeastOne = true;
+        }
+    }
+
+    return wroteAtLeastOne;
+}
+
+
+void
+ColorFilterRegistry::add( const std::string& key, class ColorFilterFactory* factory )
+{
+    if ( factory )
+        _factories[key] = factory;
+}
+
+ColorFilter*
+ColorFilterRegistry::createOne(const Config& conf) const
+{
+    FactoryMap::const_iterator f = _factories.find( conf.key() );
+    if ( f != _factories.end() && f->second != 0L )
+    {
+        ColorFilter* object = f->second->create(conf);
+        if ( object )
+        {
+            return object;
+        }
+    }
+    return 0L;
+}
diff --git a/src/osgEarth/MapNodeOptions b/src/osgEarth/MapNodeOptions
index 57fe20e..1c0d71d 100644
--- a/src/osgEarth/MapNodeOptions
+++ b/src/osgEarth/MapNodeOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,10 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
-#include <osgEarth/HeightFieldUtils>
 #include <osgEarth/HTTPClient>
-#include <osgEarth/Profile>
-#include <osgEarth/Revisioning>
 #include <osgEarth/TerrainOptions>
 #include <set>
 
@@ -38,6 +35,7 @@ namespace osgEarth
     public:
         MapNodeOptions( const Config& conf =Config() );
         MapNodeOptions( const TerrainOptions& terrainOpts );
+        MapNodeOptions( const MapNodeOptions& rhs );
         virtual ~MapNodeOptions();
 
         /** 
@@ -61,12 +59,6 @@ namespace osgEarth
         const optional<bool>& enableLighting() const { return _enableLighting; } 
 
         /**
-         * Whether to enable overlay vertex warping. See OverlayDecorator
-         */
-        optional<bool>& overlayVertexWarping() { return _overlayVertexWarping; }
-        const optional<bool>& overlayVertexWarping() const { return _overlayVertexWarping; }
-
-        /**
          * Whether to enable blending on the overlay decorator subgraph. See OverlayDecorator
          */
         optional<bool>& overlayBlending() { return _overlayBlending; }
@@ -79,11 +71,17 @@ namespace osgEarth
         const optional<unsigned>& overlayTextureSize() const { return _overlayTextureSize; }
 
         /**
+         * Texture size to use for the overlay RTT camera.
+         */
+        optional<bool>& overlayMipMapping() { return _overlayMipMapping; }
+        const optional<bool>& overlayMipMapping() const { return _overlayMipMapping; }
+
+        /**
          * Options to conigure the terrain engine (the component that renders the
          * terrain surface).
          */
         const TerrainOptions& getTerrainOptions() const;
-        void setTerrainOptions( const TerrainOptions& options );     
+        void setTerrainOptions( const TerrainOptions& options );
     
     public:
         virtual Config getConfig() const;
@@ -95,9 +93,11 @@ namespace osgEarth
         optional<ProxySettings> _proxySettings;
         optional<bool> _cacheOnly;
         optional<bool> _enableLighting;
-        optional<bool> _overlayVertexWarping;
-        optional<bool> _overlayBlending;
+
+        optional<bool>     _overlayVertexWarping;
+        optional<bool>     _overlayBlending;
         optional<unsigned> _overlayTextureSize;
+        optional<bool>     _overlayMipMapping;
 
         optional<Config> _terrainOptionsConf;
         TerrainOptions* _terrainOptions;
diff --git a/src/osgEarth/MapNodeOptions.cpp b/src/osgEarth/MapNodeOptions.cpp
index d40cec0..6374747 100644
--- a/src/osgEarth/MapNodeOptions.cpp
+++ b/src/osgEarth/MapNodeOptions.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -37,6 +37,7 @@ _cacheOnly           ( false ),
 _enableLighting      ( true ),
 _overlayVertexWarping( false ),
 _overlayBlending     ( true ),
+_overlayMipMapping   ( false ),
 _overlayTextureSize  ( 4096 ),
 _terrainOptions      ( 0L )
 {
@@ -50,11 +51,25 @@ _enableLighting      ( true ),
 _overlayVertexWarping( false ),
 _overlayBlending     ( true ),
 _overlayTextureSize  ( 4096 ),
+_overlayMipMapping   ( false ),
 _terrainOptions      ( 0L )
 {
     setTerrainOptions( to );
 }
 
+MapNodeOptions::MapNodeOptions( const MapNodeOptions& rhs ) :
+_proxySettings       ( ProxySettings() ),
+_cacheOnly           ( false ),
+_enableLighting      ( true ),
+_overlayVertexWarping( false ),
+_overlayBlending     ( true ),
+_overlayTextureSize  ( 4096 ),
+_overlayMipMapping   ( false ),
+_terrainOptions      ( 0L )
+{
+    mergeConfig( rhs.getConfig() );
+}
+
 
 MapNodeOptions::~MapNodeOptions()
 {
@@ -71,13 +86,14 @@ MapNodeOptions::getConfig() const
     Config conf; // start with a fresh one since this is a FINAL object  // = ConfigOptions::getConfig();
     conf.key() = "options";
 
-    conf.updateObjIfSet( "proxy",            _proxySettings );
-    conf.updateIfSet   ( "cache_only",       _cacheOnly );
-    conf.updateIfSet   ( "lighting",         _enableLighting );
-    conf.updateIfSet   ( "terrain",          _terrainOptionsConf );
-    conf.updateIfSet   ( "overlay_warping",  _overlayVertexWarping );
-    conf.updateIfSet   ( "overlay_blending", _overlayBlending );
-    conf.updateIfSet   ( "overlay_texture_size",     _overlayTextureSize );
+    conf.updateObjIfSet( "proxy",                _proxySettings );
+    conf.updateIfSet   ( "cache_only",           _cacheOnly );
+    conf.updateIfSet   ( "lighting",             _enableLighting );
+    conf.updateIfSet   ( "terrain",              _terrainOptionsConf );
+    conf.updateIfSet   ( "overlay_warping",      _overlayVertexWarping );
+    conf.updateIfSet   ( "overlay_blending",     _overlayBlending );
+    conf.updateIfSet   ( "overlay_texture_size", _overlayTextureSize );
+    conf.updateIfSet   ( "overlay_mipmapping",   _overlayMipMapping );
 
     return conf;
 }
@@ -87,12 +103,13 @@ MapNodeOptions::mergeConfig( const Config& conf )
 {
     ConfigOptions::mergeConfig( conf );
 
-    conf.getObjIfSet( "proxy",            _proxySettings );
-    conf.getIfSet   ( "cache_only",       _cacheOnly );
-    conf.getIfSet   ( "lighting",         _enableLighting );
-    conf.getIfSet   ( "overlay_warping",  _overlayVertexWarping );
-    conf.getIfSet   ( "overlay_blending", _overlayBlending );
-    conf.getIfSet   ( "overlay_texture_size",     _overlayTextureSize );
+    conf.getObjIfSet( "proxy",                _proxySettings );
+    conf.getIfSet   ( "cache_only",           _cacheOnly );
+    conf.getIfSet   ( "lighting",             _enableLighting );
+    conf.getIfSet   ( "overlay_warping",      _overlayVertexWarping );
+    conf.getIfSet   ( "overlay_blending",     _overlayBlending );
+    conf.getIfSet   ( "overlay_texture_size", _overlayTextureSize );
+    conf.getIfSet   ( "overlay_mipmapping",   _overlayMipMapping );
 
     if ( conf.hasChild( "terrain" ) )
     {
diff --git a/src/osgEarth/MapOptions b/src/osgEarth/MapOptions
index ef15535..4a2cd15 100644
--- a/src/osgEarth/MapOptions
+++ b/src/osgEarth/MapOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,9 +21,9 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
-#include <osgEarth/Caching>
-#include <osgEarth/HeightFieldUtils>
-#include <osgEarth/HTTPClient>
+#include <osgEarth/Cache>
+#include <osgEarth/CachePolicy>
+#include <osgEarth/GeoCommon>
 #include <osgEarth/Profile>
 #include <osgEarth/TerrainOptions>
 
@@ -44,18 +44,23 @@ namespace osgEarth
 
     public:
         MapOptions( const ConfigOptions& options =ConfigOptions() )
-            : ConfigOptions( options ),
-              _cstype( CSTYPE_GEOCENTRIC ),
-              _referenceURI("")
+            : ConfigOptions          ( options ),
+              _cachePolicy           ( ),
+              _cstype                ( CSTYPE_GEOCENTRIC ),
+              _referenceURI          ( "" ),
+              _elevationInterpolation( INTERP_BILINEAR )
         {
             fromConfig(_conf);
         }
 
+        /** dtor */
+        virtual ~MapOptions() { }
+
         /**
          * Human-readable name of the map.
          */
-        optional<std::string> name() { return _name; }
-        const optional<std::string> name() const { return _name; }
+        optional<std::string>& name() { return _name; }
+        const optional<std::string>& name() const { return _name; }
 
         /**
          * The coordinate system type of the map (default is CSTYPE_GEOCENTRIC)
@@ -77,6 +82,19 @@ namespace osgEarth
         optional<CacheOptions>& cache() { return _cacheOptions; }
         const optional<CacheOptions>& cache() const { return _cacheOptions; }
 
+        /**
+         * Default cache policy that propagates to each layer.
+         */
+        optional<CachePolicy>& cachePolicy() { return _cachePolicy; }
+        const optional<CachePolicy>& cachePolicy() const { return _cachePolicy; }
+
+         /**
+         * The interpolation method to use when sampling heightfields.
+         */
+        optional<ElevationInterpolation>& elevationInterpolation(void) { return _elevationInterpolation; }
+        const optional<ElevationInterpolation>& elevationInterpolation(void) const { return _elevationInterpolation;}
+
+
     public:
         /**
          * A reference location that drivers can use to load data from relative locations.
@@ -99,8 +117,10 @@ namespace osgEarth
         optional<std::string>          _name;
         optional<ProfileOptions>       _profileOptions;
         optional<CacheOptions>         _cacheOptions;
+        optional<CachePolicy>          _cachePolicy;
         optional<CoordinateSystemType> _cstype;
         optional<std::string>          _referenceURI;
+        optional<ElevationInterpolation> _elevationInterpolation;
     };
 }
 
diff --git a/src/osgEarth/MapOptions.cpp b/src/osgEarth/MapOptions.cpp
index af6bee3..e6cc2e1 100644
--- a/src/osgEarth/MapOptions.cpp
+++ b/src/osgEarth/MapOptions.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,9 +23,16 @@ using namespace osgEarth;
 void
 MapOptions::fromConfig( const Config& conf )
 {
-    conf.getIfSet( "name", _name );
-    conf.getObjIfSet( "profile", _profileOptions );
-    conf.getObjIfSet( "cache", _cacheOptions );
+    conf.getIfSet   ( "name",         _name );
+    conf.getObjIfSet( "profile",      _profileOptions );
+    conf.getObjIfSet( "cache",        _cacheOptions );  
+    conf.getObjIfSet( "cache_policy", _cachePolicy );
+
+    // legacy support:
+    if ( conf.value<bool>( "cache_only", false ) == true )
+        _cachePolicy->usage() = CachePolicy::USAGE_CACHE_ONLY;
+    if ( conf.value<bool>( "cache_enabled", true ) == false )
+        _cachePolicy->usage() = CachePolicy::USAGE_NO_CACHE;
 
     // all variations:
     conf.getIfSet( "type", "geocentric", _cstype, CSTYPE_GEOCENTRIC );
@@ -34,21 +41,32 @@ MapOptions::fromConfig( const Config& conf )
     conf.getIfSet( "type", "projected",  _cstype, CSTYPE_PROJECTED );
     conf.getIfSet( "type", "flat",       _cstype, CSTYPE_PROJECTED );
     conf.getIfSet( "type", "cube",       _cstype, CSTYPE_GEOCENTRIC_CUBE );
+
+    conf.getIfSet( "elevation_interpolation", "nearest",     _elevationInterpolation, INTERP_NEAREST);
+    conf.getIfSet( "elevation_interpolation", "average",     _elevationInterpolation, INTERP_AVERAGE);
+    conf.getIfSet( "elevation_interpolation", "bilinear",    _elevationInterpolation, INTERP_BILINEAR);
+    conf.getIfSet( "elevation_interpolation", "triangulate", _elevationInterpolation, INTERP_TRIANGULATE);    
 }
 
 Config
 MapOptions::getConfig() const
 {
-    Config conf; // get a fresh one since this is a final object // = ConfigOptions::getConfig();
+    Config conf = ConfigOptions::newConfig();
 
-    conf.updateIfSet( "name", _name );
-    conf.updateObjIfSet( "profile", _profileOptions );
-    conf.updateObjIfSet( "cache", _cacheOptions );
+    conf.updateIfSet   ( "name",         _name );
+    conf.updateObjIfSet( "profile",      _profileOptions );
+    conf.updateObjIfSet( "cache",        _cacheOptions );
+    conf.updateObjIfSet( "cache_policy", _cachePolicy );
 
     // all variations:
     conf.updateIfSet( "type", "geocentric", _cstype, CSTYPE_GEOCENTRIC );
     conf.updateIfSet( "type", "projected",  _cstype, CSTYPE_PROJECTED );
     conf.updateIfSet( "type", "cube",       _cstype, CSTYPE_GEOCENTRIC_CUBE );
 
+    conf.updateIfSet( "elevation_interpolation", "nearest",     _elevationInterpolation, INTERP_NEAREST);
+    conf.updateIfSet( "elevation_interpolation", "average",     _elevationInterpolation, INTERP_AVERAGE);
+    conf.updateIfSet( "elevation_interpolation", "bilinear",    _elevationInterpolation, INTERP_BILINEAR);
+    conf.updateIfSet( "elevation_interpolation", "triangulate", _elevationInterpolation, INTERP_TRIANGULATE);
+
     return conf;
 }
diff --git a/src/osgEarth/MaskLayer b/src/osgEarth/MaskLayer
index 3235a73..9b7b1a4 100644
--- a/src/osgEarth/MaskLayer
+++ b/src/osgEarth/MaskLayer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -40,6 +40,9 @@ namespace osgEarth
 
         MaskLayerOptions( const std::string& name, const MaskSourceOptions& driverOptions =MaskSourceOptions() );
 
+        /** dtor */
+        virtual ~MaskLayerOptions() { }
+
         /**
          * The readable name of the layer.
          */
@@ -86,6 +89,9 @@ namespace osgEarth
          */
         MaskLayer(const MaskLayerOptions& options, MaskSource* source );
 
+        /** dtor */
+        virtual ~MaskLayer() { }
+
         /**
          * Access the underlying mask source.
          */
@@ -93,6 +99,11 @@ namespace osgEarth
 
     public:
         /** 
+         * Gets the name of this mask layer
+         */
+        const std::string& getName() const { return *_runtimeOptions.name(); }
+
+        /** 
          * Gets the geometric boundary polygon representing the area of the
          * terrain to mask out.
          */
@@ -100,14 +111,15 @@ namespace osgEarth
 
     public:
 
-        void initialize( const std::string& referenceURI, const Map* map );
+        void initialize( const osgDB::Options* dbOptions, const Map* map );
 
     private:
-        std::string _referenceURI;
-        MaskLayerOptions _initOptions, _runtimeOptions;
-        osg::ref_ptr<MaskSource> _maskSource;
-        Revision _maskSourceRev;
+        MaskLayerOptions              _initOptions;
+        MaskLayerOptions              _runtimeOptions;
+        osg::ref_ptr<MaskSource>      _maskSource;
+        Revision                      _maskSourceRev;
         osg::ref_ptr<osg::Vec3dArray> _boundary;
+        osg::ref_ptr<osgDB::Options>  _dbOptions;
 
         void copyOptions();
     };
diff --git a/src/osgEarth/MaskLayer.cpp b/src/osgEarth/MaskLayer.cpp
index 96e1a61..ca314ad 100644
--- a/src/osgEarth/MaskLayer.cpp
+++ b/src/osgEarth/MaskLayer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -97,9 +97,9 @@ MaskLayer::copyOptions()
 }
 
 void
-MaskLayer::initialize( const std::string& referenceURI, const Map* map )
+MaskLayer::initialize( const osgDB::Options* dbOptions, const Map* map )
 {
-    _referenceURI = referenceURI;
+    _dbOptions = osg::clone(dbOptions);
 
     if ( !_maskSource.valid() && _initOptions.driver().isSet() )
     {
@@ -108,7 +108,7 @@ MaskLayer::initialize( const std::string& referenceURI, const Map* map )
 
     if ( _maskSource.valid() )
     {
-        _maskSource->initialize( _referenceURI, map );
+        _maskSource->initialize( dbOptions, map );
     }
 }
 
diff --git a/src/osgEarth/MaskNode b/src/osgEarth/MaskNode
index 6c57a14..9fba8c1 100644
--- a/src/osgEarth/MaskNode
+++ b/src/osgEarth/MaskNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -31,6 +31,9 @@ namespace osgEarth
         MaskNode( const MaskNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
 
         META_Node(osgEarth, MaskNode);
+
+        /** dtor */
+        virtual ~MaskNode() { }
     };
 }
 
diff --git a/src/osgEarth/MaskNode.cpp b/src/osgEarth/MaskNode.cpp
index ed5ff5f..475f533 100644
--- a/src/osgEarth/MaskNode.cpp
+++ b/src/osgEarth/MaskNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/MaskSource b/src/osgEarth/MaskSource
index 81564b9..4da3ed1 100644
--- a/src/osgEarth/MaskSource
+++ b/src/osgEarth/MaskSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -40,6 +40,9 @@ namespace osgEarth
         MaskSourceOptions( const ConfigOptions& options =ConfigOptions() ) :
               DriverConfigOptions( options ) { fromConfig(_conf); }
 
+        /** dtor */
+        virtual ~MaskSourceOptions() { }
+
     public: // properties
 
     public:
@@ -55,18 +58,21 @@ namespace osgEarth
     /**
      * MaskSource is a plugin object that generates a masking goemetry
      */
-    class OSGEARTH_EXPORT MaskSource : public virtual Revisioned<osg::Object>
+    class OSGEARTH_EXPORT MaskSource : public osg::Object, public Revisioned
     {
     public:        
         MaskSource( const MaskSourceOptions& options =MaskSourceOptions() );
 
+        /** dtor */
+        virtual ~MaskSource() { }
+
         /**
          * Subclass implements this method to create the boundary geometry.
          */
         virtual osg::Vec3dArray* createBoundary( const SpatialReference* srs, ProgressCallback* progress =0L ) =0;
 
     public:
-		virtual void initialize( const std::string& referenceURI, const Map* map ) { }
+        virtual void initialize( const osgDB::Options* dbOptions, const Map* map ) { }
 
         const MaskSourceOptions& getOptions() const { return _options; }
     public: 
diff --git a/src/osgEarth/MaskSource.cpp b/src/osgEarth/MaskSource.cpp
index 3afa2a3..c5d79ac 100644
--- a/src/osgEarth/MaskSource.cpp
+++ b/src/osgEarth/MaskSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/MaskSource>
+#include <osgEarth/Registry>
 #include <osg/Notify>
 #include <osgDB/ReadFile>
 
@@ -69,7 +70,7 @@ MaskSourceFactory::create( const MaskSourceOptions& options )
     {
         std::string driverExt = std::string(".osgearth_mask_") + options.getDriver();
 
-        osg::ref_ptr<osgDB::ReaderWriter::Options> rwopts = new osgDB::ReaderWriter::Options();
+        osg::ref_ptr<osgDB::Options> rwopts = Registry::instance()->cloneOrCreateOptions();
         rwopts->setPluginData( MASK_SOURCE_OPTIONS_TAG, (void*)&options );
 
         source = dynamic_cast<MaskSource*>( osgDB::readObjectFile( driverExt, rwopts.get() ) );
diff --git a/src/osgEarth/MemCache b/src/osgEarth/MemCache
new file mode 100644
index 0000000..4644558
--- /dev/null
+++ b/src/osgEarth/MemCache
@@ -0,0 +1,54 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_MEMCACHE_H
+#define OSGEARTH_MEMCACHE_H 1
+
+#include <osgEarth/Cache>
+
+namespace osgEarth
+{
+    /**
+     * An in-memory cache.
+     * Each bin in this cache has its own locking mechanism for thread-safety. Each
+     * bin also maintains an LRU list for maintaining the size cap.
+     */
+    class OSGEARTH_EXPORT MemCache : public Cache
+    {
+    public:
+        MemCache( unsigned maxBinSize =16 );
+        META_Object( osgEarth, MemCache );
+
+        /** dtor */
+        virtual ~MemCache() { }
+
+    public: // Cache interface
+
+        virtual CacheBin* addBin( const std::string& binID );
+
+        virtual CacheBin* getOrCreateDefaultBin();
+    
+    private:
+        MemCache( const MemCache& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
+
+        unsigned _maxBinSize;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_MEMCACHE_H
diff --git a/src/osgEarth/MemCache.cpp b/src/osgEarth/MemCache.cpp
new file mode 100644
index 0000000..49ac494
--- /dev/null
+++ b/src/osgEarth/MemCache.cpp
@@ -0,0 +1,135 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/MemCache>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Containers>
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    typedef std::pair<osg::ref_ptr<const osg::Object>, Config> MemCacheEntry;
+    typedef LRUCache<std::string, MemCacheEntry> MemCacheLRU;
+
+    struct MemCacheBin : public CacheBin
+    {
+        MemCacheBin( const std::string& id, unsigned maxSize )
+            : CacheBin( id ),
+              _lru    ( true, maxSize )
+        {
+            //nop
+        }
+
+        ReadResult readObject(const std::string& key,
+                              double             maxAge )
+        {
+            MemCacheLRU::Record rec = _lru.get(key);
+
+            // clone required since the cache is in memory
+
+            if ( rec.valid() )
+            {
+                return ReadResult( 
+                   osg::clone(rec.value().first.get(), osg::CopyOp::DEEP_COPY_ALL),
+                   rec.value().second );
+            }
+            else
+                return ReadResult();
+        }
+
+        ReadResult readImage(const std::string& key,
+                             double             maxAge )
+        {
+            return readObject( key, maxAge );
+        }
+
+        ReadResult readString(const std::string& key,
+                              double             maxAge )
+        {
+            return readObject( key, maxAge );
+        }
+
+        ReadResult readConfig(const std::string& key,
+                              double             maxAge )
+        {
+            return readObject( key, maxAge );
+        }
+
+        bool write( const std::string& key, const osg::Object* object, const Config& meta )
+        {
+            if ( object ) 
+            {
+                _lru.insert( key, std::make_pair(object, meta) );
+                return true;
+            }
+            else
+                return false;
+        }
+
+        bool isCached( const std::string& key, double maxAge ) 
+        {
+            return _lru.has(key);
+        }
+
+        bool purge()
+        {
+            _lru.clear();
+            return true;
+        }
+
+    private:
+        MemCacheLRU _lru;
+    };
+    
+
+    static Threading::Mutex s_defaultBinMutex;
+}
+
+//------------------------------------------------------------------------
+
+MemCache::MemCache( unsigned maxBinSize ) :
+_maxBinSize( std::max(maxBinSize, 1u) )
+{
+    //nop
+}
+
+CacheBin*
+MemCache::addBin( const std::string& binID )
+{
+    return _bins.getOrCreate( binID, new MemCacheBin(binID, _maxBinSize) );
+}
+
+CacheBin*
+MemCache::getOrCreateDefaultBin()
+{
+    if ( !_defaultBin.valid() )
+    {
+        Threading::ScopedMutexLock lock( s_defaultBinMutex );
+        // double check
+        if ( !_defaultBin.valid() )
+        {
+            _defaultBin = new MemCacheBin("__default", _maxBinSize);
+        }
+    }
+
+    return _defaultBin.get();
+}
diff --git a/src/osgEarth/MimeTypes.cpp b/src/osgEarth/MimeTypes.cpp
index 165c844..397d855 100644
--- a/src/osgEarth/MimeTypes.cpp
+++ b/src/osgEarth/MimeTypes.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/ModelLayer b/src/osgEarth/ModelLayer
index 7b413a0..ab55805 100644
--- a/src/osgEarth/ModelLayer
+++ b/src/osgEarth/ModelLayer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,6 +24,7 @@
 #include <osgEarth/Layer>
 #include <osgEarth/Config>
 #include <osgEarth/ModelSource>
+#include <osgEarth/ShaderUtils>
 #include <osg/Node>
 #include <vector>
 
@@ -41,6 +42,9 @@ namespace osgEarth
 
         ModelLayerOptions( const std::string& name, const ModelSourceOptions& driverOptions =ModelSourceOptions() );
 
+        /** dtor */
+        virtual ~ModelLayerOptions() { }
+
         /**
          * The readable name of the layer.
          */
@@ -60,18 +64,32 @@ namespace osgEarth
         const optional<bool>& lightingEnabled() const { return _lighting; }
 
         /**
-         * Whether this layer will be drawn.
+         * Whether this layer is active
          */
         optional<bool>& enabled() { return _enabled; }
         const optional<bool>& enabled() const { return _enabled; }
 
         /**
+         * Whether this layer is visible
+         */
+        optional<bool>& visible() { return _visible; }
+        const optional<bool>& visible() const { return _visible; }
+
+        /**
          * Whether to drape the model geometry over the terrain as a projected overlay.
          * Defaults to false
          */
         optional<bool>& overlay() { return _overlay; }
         const optional<bool>& overlay() const { return _overlay; }
 
+        /**
+         * TEMPORARY option that will turn off all shader program composition
+         * on the model layer. Need this temporarily to support external model
+         * references until we get a proper shader gen working
+         */
+        optional<bool>& disableShaders() { return _disableShaderComp; }
+        const optional<bool>& disableShaders() const { return _disableShaderComp; }
+
     public:
         virtual Config getConfig() const;
         virtual void mergeConfig( const Config& conf );
@@ -84,7 +102,9 @@ namespace osgEarth
         optional<bool> _overlay;
         optional<ModelSourceOptions> _driver;
         optional<bool> _enabled;
+        optional<bool> _visible;
         optional<bool> _lighting;
+        optional<bool> _disableShaderComp;
     };
 
     /**
@@ -92,7 +112,9 @@ namespace osgEarth
     */
     struct ModelLayerCallback : public osg::Referenced
     {
+        virtual void onVisibleChanged( class ModelLayer* layer ) { }
         virtual void onOverlayChanged( class ModelLayer* layer ) { }
+        virtual ~ModelLayerCallback() { }
     };
 
     typedef void (ModelLayerCallback::*ModelLayerCallbackMethodPtr)(ModelLayer* layer);
@@ -123,6 +145,9 @@ namespace osgEarth
          */
         ModelLayer(const std::string& name, osg::Node* node);
 
+        /** dtor */
+        virtual ~ModelLayer();
+
     public:
         /** 
          * Gets the name of this model layer
@@ -135,24 +160,34 @@ namespace osgEarth
         const ModelLayerOptions& getModelLayerOptions() const { return _initOptions; }
 
         /**
-         * Gets the reference URI (for resolving relative paths)
-         */
-        const std::string& getReferenceURI() const { return _referenceURI; }
-
-        /**
          * Access the underlying model source.
          */
         ModelSource* getModelSource() const { return _modelSource.get(); }
 
     public:
 
-        osg::Node* getOrCreateNode( ProgressCallback* progress =0L );
+        /**
+         * Perform one-time initialize of the model layer.
+         */
+        void initialize( const osgDB::Options* options );
+
+        /**
+         * Creates the scene graph representing this model layer for the given Map.
+         */
+        osg::Node* createSceneGraph( 
+            const Map*            map, 
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
+
 
     public: // properties
 
         /** Whether this layer is rendered. */
+        bool getVisible() const;
+        void setVisible(bool value);
+
+        /** Whether this layer is used at all. */
         bool getEnabled() const;
-        void setEnabled(bool enabled);
 
         /** Whether this layer is drawn as normal geometry or as a draped overlay. */
         bool getOverlay() const;
@@ -170,27 +205,19 @@ namespace osgEarth
         /** Removes a property notification callback from this layer */
         void removeCallback( ModelLayerCallback* cb );
 
-    public:
-
-        // internal function
-        void initialize( const std::string& referenceURI, const Map* map );
-
     private:
-        std::string _referenceURI;
-        osg::ref_ptr<ModelSource> _modelSource;
-
-        const ModelLayerOptions _initOptions;
-        ModelLayerOptions       _runtimeOptions;
-
-        osg::ref_ptr< osg::Node > _node;
-
-        //optional<bool> _enabled;
-        //optional<bool> _lighting;
-        //optional<bool> _overlay;
-
-        Revision _modelSourceRev;
+        osg::ref_ptr<ModelSource>    _modelSource;
+        const ModelLayerOptions      _initOptions;
+        ModelLayerOptions            _runtimeOptions;
+        //osg::ref_ptr< osg::Node >    _node;
+        //osg::ref_ptr<osgDB::Options> _dbOptions;
+        Revision                     _modelSourceRev;
+        ModelLayerCallbackList       _callbacks;
+        UpdateLightingUniformsHelper _updateLightingUniformsHelper;
+
+        typedef std::set< osg::observer_ptr<osg::Node> > NodeObserverSet;
+        NodeObserverSet _nodeSet;
 
-        ModelLayerCallbackList _callbacks;
         virtual void fireCallback( ModelLayerCallbackMethodPtr method );
 
         void copyOptions();
diff --git a/src/osgEarth/ModelLayer.cpp b/src/osgEarth/ModelLayer.cpp
index 0ceed76..8f90eca 100644
--- a/src/osgEarth/ModelLayer.cpp
+++ b/src/osgEarth/ModelLayer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,11 +18,34 @@
  */
 #include <osgEarth/ModelLayer>
 #include <osgEarth/Map>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+#include <osgEarth/ShaderComposition>
 #include <osg/Depth>
 
 #define LC "[ModelLayer] "
 
 using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    /**
+     * Most basic of model sources; used to support the osg::Node* constructor to ModelLayer.
+     */
+    struct NodeModelSource : public ModelSource
+    {
+        NodeModelSource( osg::Node* node ) : _node(node) { }
+
+        osg::Node* createNode(const Map* map, const osgDB::Options* dbOptions, ProgressCallback* progress) {
+            return _node.get();
+        }
+
+        osg::ref_ptr<osg::Node> _node;
+    };
+}
+
 //------------------------------------------------------------------------
 
 ModelLayerOptions::ModelLayerOptions( const ConfigOptions& options ) :
@@ -46,19 +69,30 @@ ModelLayerOptions::setDefaults()
 {
     _overlay.init( false );
     _enabled.init( true );
+    _visible.init( true );
     _lighting.init( true );
+    _disableShaderComp.init( false );
 }
 
 Config
 ModelLayerOptions::getConfig() const
 {
-    Config conf = ConfigOptions::getConfig();
+    //Config conf = ConfigOptions::getConfig();
+    Config conf = ConfigOptions::newConfig();
 
     conf.updateIfSet( "name", _name );
     conf.updateIfSet( "overlay", _overlay );
     conf.updateIfSet( "enabled", _enabled );
+    conf.updateIfSet( "visible", _visible );
     conf.updateIfSet( "lighting", _lighting );
 
+    // temporary.
+    conf.updateIfSet( "disable_shaders", _disableShaderComp );
+
+    // Merge the ModelSource options
+    if ( driver().isSet() )
+        conf.merge( driver()->getConfig() );
+
     return conf;
 }
 
@@ -68,7 +102,14 @@ ModelLayerOptions::fromConfig( const Config& conf )
     conf.getIfSet( "name", _name );
     conf.getIfSet( "overlay", _overlay );
     conf.getIfSet( "enabled", _enabled );
+    conf.getIfSet( "visible", _visible );
     conf.getIfSet( "lighting", _lighting );
+
+    // temporary.
+    conf.getIfSet( "disable_shaders", _disableShaderComp );
+
+    if ( conf.hasValue("driver") )
+        driver() = ModelSourceOptions(conf);
 }
 
 void
@@ -100,12 +141,17 @@ _initOptions( options )
 }
 
 ModelLayer::ModelLayer(const std::string& name, osg::Node* node):
-_initOptions(ModelLayerOptions( name )),
-_node(node)
+_initOptions( ModelLayerOptions(name) ),
+_modelSource( new NodeModelSource(node) )
 {
     copyOptions();
 }
 
+ModelLayer::~ModelLayer()
+{
+    OE_DEBUG << "~ModelLayer" << std::endl;
+}
+
 void
 ModelLayer::copyOptions()
 {
@@ -113,57 +159,76 @@ ModelLayer::copyOptions()
 }
 
 void
-ModelLayer::initialize( const std::string& referenceURI, const Map* map )
+ModelLayer::initialize( const osgDB::Options* dbOptions )
 {
-    _referenceURI = referenceURI;
-
     if ( !_modelSource.valid() && _initOptions.driver().isSet() )
     {
         _modelSource = ModelSourceFactory::create( *_initOptions.driver() );
-    }
 
-    if ( _modelSource.valid() )
-    {
-        _modelSource->initialize( _referenceURI, map );
+        if ( _modelSource.valid() )
+        {
+            _modelSource->initialize( dbOptions );
+        }
     }
 }
 
 osg::Node*
-ModelLayer::getOrCreateNode( ProgressCallback* progress )
+ModelLayer::createSceneGraph(const Map*            map,
+                             const osgDB::Options* dbOptions,
+                             ProgressCallback*     progress )
 {
+    osg::Node* node = 0L;
+
     if ( _modelSource.valid() )
     {
-        // if the model source has changed, regenerate the node.
-        if ( _node.valid() && !_modelSource->inSyncWith(_modelSourceRev) )
-        {
-            _node = 0L;
-        }
+        //// if the model source has changed, regenerate the node.
+        //if ( _node.valid() && !_modelSource->inSyncWith(_modelSourceRev) )
+        //{
+        //    _node = 0L;
+        //}
 
-        if ( !_node.valid() )
-        {
-            _node = _modelSource->createNode( progress );
+        node = _modelSource->createNode( map, dbOptions, progress );
 
-            if ( _runtimeOptions.enabled().isSet() )
-                setEnabled( *_runtimeOptions.enabled() );
+        if ( node )
+        {
+            if ( _runtimeOptions.visible().isSet() )
+            {
+                node->setNodeMask( *_runtimeOptions.visible() ? ~0 : 0 );
+            }
 
             if ( _runtimeOptions.lightingEnabled().isSet() )
+            {
                 setLightingEnabled( *_runtimeOptions.lightingEnabled() );
+            }
 
-            if ( _modelSource->getOptions().depthTestEnabled() == false )            
+            if ( Registry::instance()->getCapabilities().supportsGLSL() )
             {
-                if ( _node )
+                node->addCullCallback( new UpdateLightingUniformsHelper() );
+
+                if ( _runtimeOptions.disableShaders() == true )
                 {
-                    osg::StateSet* ss = _node->getOrCreateStateSet();
-                    ss->setAttributeAndModes( new osg::Depth( osg::Depth::ALWAYS ) );
-                    ss->setRenderBinDetails( 99999, "RenderBin" ); //TODO: configure this bin ...
+                    osg::StateSet* ss = node->getOrCreateStateSet();
+                    ss->setAttributeAndModes(
+                        new osg::Program(), 
+                        osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
                 }
             }
 
+            if ( _modelSource->getOptions().depthTestEnabled() == false )
+            {
+                osg::StateSet* ss = node->getOrCreateStateSet();
+                ss->setAttributeAndModes( new osg::Depth( osg::Depth::ALWAYS ) );
+                ss->setRenderBinDetails( 99999, "RenderBin" ); //TODO: configure this bin ...
+            }
+
             _modelSource->sync( _modelSourceRev );
+
+            // save an observer reference to the node so we can change the visibility/lighting/etc.
+            _nodeSet.insert( node );
         }
     }
 
-    return _node.get();
+    return node;
 }
 
 bool
@@ -172,25 +237,56 @@ ModelLayer::getEnabled() const
     return *_runtimeOptions.enabled();
 }
 
+bool
+ModelLayer::getVisible() const
+{
+    return getEnabled() && *_runtimeOptions.visible();
+}
+
 void
-ModelLayer::setEnabled(bool enabled)
+ModelLayer::setVisible(bool value)
 {
-    _runtimeOptions.enabled() = enabled;
-    if ( _node.valid() )
-        _node->setNodeMask( enabled ? ~0 : 0 );
+    if ( _runtimeOptions.visible() != value )
+    {
+        _runtimeOptions.visible() = value;
+
+        for( NodeObserverSet::iterator i = _nodeSet.begin(); i != _nodeSet.end(); ++i )
+        {
+            if ( i->valid() )
+            {
+                i->get()->setNodeMask( value ? ~0 : 0 );
+            }
+        }
+
+        //if ( _node.valid() )
+        //    _node->setNodeMask( value ? ~0 : 0 );
+
+        fireCallback( &ModelLayerCallback::onVisibleChanged );
+    }
 }
 
 void
 ModelLayer::setLightingEnabled( bool value )
 {
     _runtimeOptions.lightingEnabled() = value;
-    if ( _node.valid() )
-    {
-        _node->getOrCreateStateSet()->setMode( 
-            GL_LIGHTING, value ? osg::StateAttribute::ON : 
-            (osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED) );
 
+    for( NodeObserverSet::iterator i = _nodeSet.begin(); i != _nodeSet.end(); ++i )
+    {
+        if ( i->valid() )
+        {
+            i->get()->getOrCreateStateSet()->setMode( 
+                GL_LIGHTING, value ? osg::StateAttribute::ON : 
+                (osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED) );
+        }
     }
+
+    //if ( _node.valid() )
+    //{
+    //    _node->getOrCreateStateSet()->setMode( 
+    //        GL_LIGHTING, value ? osg::StateAttribute::ON : 
+    //        (osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED) );
+
+    //}
 }
 
 bool
diff --git a/src/osgEarth/ModelSource b/src/osgEarth/ModelSource
index 5ebfde0..52a5d30 100644
--- a/src/osgEarth/ModelSource
+++ b/src/osgEarth/ModelSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,8 +22,10 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/Progress>
 #include <osgEarth/Revisioning>
+#include <osgEarth/ThreadingUtils>
 #include <osg/Referenced>
 
 namespace osgEarth
@@ -36,12 +38,10 @@ namespace osgEarth
     class OSGEARTH_EXPORT ModelSourceOptions : public DriverConfigOptions
     {
     public:
-        ModelSourceOptions( const ConfigOptions& options =ConfigOptions() ) :
-              DriverConfigOptions( options ),
-              _minRange(0),
-              _maxRange(FLT_MAX),
-              _renderOrder( 11 ),
-              _depthTestEnabled( true ) { fromConfig(_conf); }
+        ModelSourceOptions( const ConfigOptions& options =ConfigOptions() );
+
+        /** dtor */
+        virtual ~ModelSourceOptions() { }
 
     public: // properties
 
@@ -76,21 +76,46 @@ namespace osgEarth
         optional<bool> _overlay;
     };
 
+
     /**
      * A ModelSource is a plugin object that generates OSG nodes.
      */
-    class OSGEARTH_EXPORT ModelSource : public virtual Revisioned<osg::Object>
+    class OSGEARTH_EXPORT ModelSource : public osg::Object, public Revisioned
     {
-    public:        
+    public:
         ModelSource( const ModelSourceOptions& options =ModelSourceOptions() );
 
+        /** dtor */
+        virtual ~ModelSource() { }
+
+        /**
+         * Subclass implements this method to create a scene graph within the
+         * context of the provided Map.
+         */
+        virtual osg::Node* createNode(
+            const Map*            map,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress ) =0;
+
+        /**
+         * Add a post processing opeation - this will be called on any node
+         * that enters the scene graph by the model source.
+         */
+        void addPostProcessor( NodeOperation* cb );
+        
+        /**
+         * Remove a post processing operation
+         */
+        void removePostProcessor( NodeOperation* cb );
+
         /**
-         * Subclass implements this method to create the mode node.
+         * The vector of post processor callback operations
          */
-        virtual osg::Node* createNode( ProgressCallback* progress =0L ) =0;
+        const NodeOperationVector& postProcessors() const { return _postProcessors; }
 
 
     public: // META_Object specialization
+        // these are neseccary to we can load ModelSource implementations as plugins
         virtual osg::Object* cloneType() const { return 0; } // cloneType() not appropriate
         virtual osg::Object* clone(const osg::CopyOp&) const { return 0; } // clone() not appropriate
         virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const ModelSource*>(obj)!=NULL; }
@@ -98,16 +123,19 @@ namespace osgEarth
         virtual const char* libraryName() const { return "osgEarth"; }
 
     public:
-		/** Initialize the NodeSource. */
-		virtual void initialize(
-            const std::string& referenceURI,
-            const Map* map ) { }
 
-        const ModelSourceOptions& getOptions() const {
-            return _options; }
+        /** Perform any one-time initialization */
+        virtual void initialize( const osgDB::Options* dbOptions ) { }
+
+        /** Get the options used to create this model source */
+        const ModelSourceOptions& getOptions() const { return _options; }
 
     protected:
-        virtual ~ModelSource() { }
+        /**
+         * Fire the callbacks. The implementation class should call this whenever it adds
+         * a new node.
+         */
+        void firePostProcessors( osg::Node* node );
 
     private:
         const ModelSourceOptions _options;
@@ -115,6 +143,9 @@ namespace osgEarth
         optional<double> _maxRange;
         optional<int>    _renderOrder;
 
+        NodeOperationVector       _postProcessors;
+        mutable Threading::Mutex  _postProcessorsMutex;
+
         friend class Map;
         friend class MapEngine;
         friend class ModelSourceFactory;
@@ -136,7 +167,7 @@ namespace osgEarth
      */
     class OSGEARTH_EXPORT ModelSourceFactory
     {   
-	public:
+    public:
         static ModelSource* create( const ModelSourceOptions& options );
     };
 }
diff --git a/src/osgEarth/ModelSource.cpp b/src/osgEarth/ModelSource.cpp
index f79cd15..ddb958f 100644
--- a/src/osgEarth/ModelSource.cpp
+++ b/src/osgEarth/ModelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/ModelSource>
+#include <osgEarth/Registry>
 #include <osg/Notify>
 #include <osgDB/ReadFile>
 #include <OpenThreads/ScopedLock>
@@ -26,6 +27,17 @@ using namespace OpenThreads;
 
 /****************************************************************/
 
+
+ModelSourceOptions::ModelSourceOptions( const ConfigOptions& options ) :
+DriverConfigOptions( options ),
+_minRange          ( 0.0f ),
+_maxRange          ( FLT_MAX ),
+_renderOrder       ( 11 ),
+_depthTestEnabled  ( true )
+{ 
+    fromConfig(_conf);
+}
+
 void
 ModelSourceOptions::fromConfig( const Config& conf )
 {
@@ -62,6 +74,44 @@ _options( options )
     this->setThreadSafeRefUnref( true );
 }
 
+
+void 
+ModelSource::addPostProcessor( NodeOperation* op )
+{
+    if ( op )
+    {
+        Threading::ScopedMutexLock lock( _postProcessorsMutex );
+        _postProcessors.push_back( op );
+    }
+}
+
+
+void
+ModelSource::removePostProcessor( NodeOperation* op )
+{
+    if ( op )
+    {
+        Threading::ScopedMutexLock lock( _postProcessorsMutex );
+        NodeOperationVector::iterator i = std::find( _postProcessors.begin(), _postProcessors.end(), op );
+        if ( i != _postProcessors.end() )
+            _postProcessors.erase( i );
+    }
+}
+
+
+void
+ModelSource::firePostProcessors( osg::Node* node )
+{
+    if ( node )
+    {
+        Threading::ScopedMutexLock lock( _postProcessorsMutex );
+        for( NodeOperationVector::iterator i = _postProcessors.begin(); i != _postProcessors.end(); ++i )
+        {
+            i->get()->operator()( node );
+        }
+    }
+}
+
 //------------------------------------------------------------------------
 
 #undef  LC
@@ -77,7 +127,7 @@ ModelSourceFactory::create( const ModelSourceOptions& options )
     {
         std::string driverExt = std::string(".osgearth_model_") + options.getDriver();
 
-        osg::ref_ptr<osgDB::ReaderWriter::Options> rwopts = new osgDB::ReaderWriter::Options();
+        osg::ref_ptr<osgDB::Options> rwopts = Registry::instance()->cloneOrCreateOptions();
         rwopts->setPluginData( MODEL_SOURCE_OPTIONS_TAG, (void*)&options );
 
         modelSource = dynamic_cast<ModelSource*>( osgDB::readObjectFile( driverExt, rwopts.get() ) );
diff --git a/src/osgEarth/NodeUtils b/src/osgEarth/NodeUtils
index 41cb89c..da03699 100644
--- a/src/osgEarth/NodeUtils
+++ b/src/osgEarth/NodeUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,19 +20,47 @@
 #define OSGEARTH_NODE_UTILS_H 1
 
 #include <osgEarth/Common>
-#include <osg/ClusterCullingCallback>
+#include <osg/View>
+#include <osg/PagedLOD>
+#include <osgGA/GUIActionAdapter>
+#include <osgUtil/LineSegmentIntersector>
+#include <osgEarth/ThreadingUtils>
+#include <set>
+#include <vector>
 
 namespace osgEarth
 {
     /**
-     * Given a geocentric subgraph and a center point, generate a suitable
-     * cluster culling callback.
+     * General purpose operation for doing something to a node.
      */
-    struct OSGEARTH_EXPORT ClusterCullerFactory
+    struct NodeOperation : public osg::Referenced
     {
-        static osg::ClusterCullingCallback* create( 
-            osg::Node*        node, 
-            const osg::Vec3d& centerGeocentric );
+        virtual void operator()( osg::Node* node ) =0;
+    };
+
+    typedef std::vector< osg::ref_ptr<NodeOperation> > NodeOperationVector;
+
+    struct RefNodeOperationVector : public osg::Referenced, public NodeOperationVector { };
+
+    /**
+     * A PagedLOD that will fire node operation callbacks when it merges
+     * new nodes into the graph.
+     */
+    class OSGEARTH_EXPORT PagedLODWithNodeOperations : public osg::PagedLOD
+    {
+    public:
+        PagedLODWithNodeOperations( RefNodeOperationVector* postMergeOps );
+
+    public: // osg::Group
+
+        virtual bool addChild( osg::Node* child );
+        virtual bool insertChild( unsigned index, Node* child );
+        virtual bool replaceChild( Node* origChild, Node* newChild );
+
+    protected:
+        osg::observer_ptr<RefNodeOperationVector> _postMergeOps;
+        
+        void runPostMerge( osg::Node* node );
     };
 
     /**
@@ -54,6 +82,184 @@ namespace osgEarth
         RemoveEmptyGroupsVisitor();
         void apply( osg::Group& group ); //override
     };
+
+    /**
+     * Visitor that counts the number of point, line, and polygon primitive sets
+     * in a scene graph.
+     */
+    class OSGEARTH_EXPORT PrimitiveSetTypeCounter : public osg::NodeVisitor
+    {
+    public:
+        PrimitiveSetTypeCounter();
+
+        /** dtor */
+        virtual ~PrimitiveSetTypeCounter() { }
+
+        void apply(class osg::Geode&);
+
+        unsigned _point;
+        unsigned _line;
+        unsigned _polygon;
+    };
+
+    /**
+     * Visitor that finds all the parental Camera Views, and calls an operator
+     * on each one.
+     */
+    template<typename T>
+    class ViewVisitor : public osg::NodeVisitor, public T
+    {
+    public:
+        ViewVisitor() : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_PARENTS) { }
+        virtual ~ViewVisitor() { }
+        void apply(osg::Camera& cam) {
+            osg::View* view = cam.getView();
+            if ( view ) this->operator()( view );
+            traverse(cam);
+        }
+    };
+
+    /**
+     * Functor (for use with ViewVisitor) that notifies a view that it needs to
+     * redraw the scene because something has changed
+     * Usage: ViewVisitor<RequestRedraw> vis; node->accept(vis);
+     */
+    struct RequestRedraw 
+    {
+        void operator()(osg::View* view) {
+            osgGA::GUIActionAdapter* aa = dynamic_cast<osgGA::GUIActionAdapter*>(view);
+            if ( aa ) aa->requestRedraw();
+        }
+    };
+
+    /**
+     * Visitor that locates a node by its type
+     */
+    template<typename T>
+    class FindTopMostNodeOfTypeVisitor : public osg::NodeVisitor
+    {
+    public:
+        FindTopMostNodeOfTypeVisitor():
+          osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+              _foundNode(0)
+          {}
+
+          void apply(osg::Node& node)
+          {
+              T* result = dynamic_cast<T*>(&node);
+              if (result)
+              {
+                  _foundNode = result;
+              }
+              else
+              {
+                  traverse(node);
+              }
+          }
+
+          T* _foundNode;
+    };
+
+    /** 
+     * Collects all the nodes of type "T"
+     */
+    template<typename T>
+    struct FindNodesVisitor : public osg::NodeVisitor
+    {
+        FindNodesVisitor() : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { }
+
+        void apply(osg::Node& node)
+        {
+            T* result = dynamic_cast<T*>( &node );
+            if ( result )
+                _results.push_back( result );
+            traverse(node);
+        }
+
+        std::vector<T*> _results;
+    };
+
+    /**
+     * Searchs the scene graph downward starting at [node] and returns the first node found
+     * that matches the template parameter type.
+     */
+    template<typename T>
+    T* findTopMostNodeOfType(osg::Node* node, unsigned traversalMask =~0)
+    {
+        if (!node) return 0;
+
+        FindTopMostNodeOfTypeVisitor<T> fnotv;
+        fnotv.setTraversalMode(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN);
+        fnotv.setTraversalMask(traversalMask);
+        node->accept(fnotv);
+
+        return fnotv._foundNode;
+    }    
+
+    /**
+     * Searchs the scene graph upward starting at [node] and returns the first node found
+     * that matches the template parameter type.
+     */
+    template<typename T>
+    T* findFirstParentOfType(osg::Node* node, unsigned traversalMask =~0)
+    {
+        if (!node) return 0;
+
+        FindTopMostNodeOfTypeVisitor<T> fnotv;
+        fnotv.setTraversalMode(osg::NodeVisitor::TRAVERSE_PARENTS);
+        fnotv.setTraversalMask(traversalMask);
+        node->accept(fnotv);
+
+        return fnotv._foundNode;
+    }
+
+    /**
+     * Searchs the scene graph starting at [node] and returns the first node found
+     * that matches the template parameter type. First searched upward, then downward.
+     */
+    template<typename T>
+    T* findRelativeNodeOfType(osg::Node* node, unsigned traversalMask =~0)
+    {
+        if ( !node ) return 0;
+        T* result = findFirstParentOfType<T>( node, traversalMask );
+        if ( !result )
+            result = findTopMostNodeOfType<T>( node, traversalMask );
+        return result;
+    }
+
+    /**
+     * OSG Group that keeps its children as observer_ptrs instead of ref_ptrs, and
+     * removes them when they deref.
+     */
+    class OSGEARTH_EXPORT ObserverGroup : public osg::Group
+    {
+    public:
+        ObserverGroup();
+        virtual void traverse( osg::NodeVisitor& nv );
+        std::set<osg::Node*> _orphans;
+    };
+
+    /**
+     * Adjusts a node's update traversal count by a delta.
+     * Only safe to call from the UPDATE thread
+     */
+#define ADJUST_UPDATE_TRAV_COUNT( NODE, DELTA ) \
+    { \
+        int oldCount = NODE ->getNumChildrenRequiringUpdateTraversal(); \
+        if ( oldCount + DELTA >= 0 ) \
+            NODE ->setNumChildrenRequiringUpdateTraversal( (unsigned int)(oldCount + DELTA ) ); \
+    }
+
+    /**
+     * Adjusts a node's event traversal count by a delta.
+     * Only safe to call from the main/event/update threads
+     */
+#define ADJUST_EVENT_TRAV_COUNT( NODE, DELTA ) \
+    { \
+        int oldCount = NODE ->getNumChildrenRequiringEventTraversal(); \
+        if ( oldCount + DELTA >= 0 ) \
+            NODE ->setNumChildrenRequiringEventTraversal( (unsigned int)(oldCount + DELTA ) ); \
+    }
 }
 
 #endif // OSGEARTH_CACHING_H
diff --git a/src/osgEarth/NodeUtils.cpp b/src/osgEarth/NodeUtils.cpp
index 212360f..0a9d002 100644
--- a/src/osgEarth/NodeUtils.cpp
+++ b/src/osgEarth/NodeUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,285 +18,392 @@
  */
 
 #include <osgEarth/NodeUtils>
-#include <osg/TemplatePrimitiveFunctor>
 #include <osg/Geode>
+#include <osg/Geometry>
 #include <osg/CullSettings>
+#include <osg/KdTree>
+#include <osg/TriangleFunctor>
 #include <vector>
+#include <string>
 
 using namespace osgEarth;
 
+
 //------------------------------------------------------------------------
 
-namespace
+PagedLODWithNodeOperations::PagedLODWithNodeOperations( RefNodeOperationVector* postMergeOps ) :
+_postMergeOps( postMergeOps )
 {
-    struct ComputeMaxNormalLength
+    //nop
+}
+
+
+void
+PagedLODWithNodeOperations::runPostMerge( osg::Node* node )
+{
+    if ( _postMergeOps.valid() )
     {
-        void set( const osg::Vec3& normalECEF, const osg::Matrixd& local2world, float* maxNormalLen )
+        for( NodeOperationVector::iterator i = _postMergeOps->begin(); i != _postMergeOps->end(); ++i )
         {
-            _normal       = normalECEF;
-            _local2world  = local2world;
-            _maxNormalLen = maxNormalLen;
+            i->get()->operator()( node );
         }
+    }
+}
 
-        void operator()( const osg::Vec3 &v1, bool)
-        {         
-            compute( v1 );
-        }
 
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, bool)
-        {         
-            compute( v1 );
-            compute( v2 );
-        }
+bool 
+PagedLODWithNodeOperations::addChild( osg::Node* child )
+{
+    bool ok = false;
+    if ( child )
+    {
+        ok = osg::PagedLOD::addChild( child );
+        if ( ok )
+            runPostMerge( child );
+    }
+    return ok;
+}
 
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3& v3, bool)
-        {         
-            compute( v1 );
-            compute( v2 );
-            compute( v3 );
-        }
 
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3& v3, const osg::Vec3& v4, bool)
-        {         
-            compute( v1 );
-            compute( v2 );
-            compute( v3 );
-            compute( v4 );
-        }
+bool 
+PagedLODWithNodeOperations::insertChild( unsigned index, Node* child )
+{
+    bool ok = false;
+    if ( child )
+    {
+        ok = osg::PagedLOD::insertChild( index, child );
+        if ( ok )
+            runPostMerge( child );
+    }
+    return ok;
+}
 
-        void compute( const osg::Vec3& v )
-        {
-            osg::Vec3d vworld = v * _local2world;
-            double vlen = vworld.length();
-            vworld.normalize();
 
-            // the dot product of the 2 vecs is the cos of the angle between them;
-            // mult that be the vector length to get the new normal length.
-            float normalLen = fabs(_normal * vworld) * vlen;
+bool 
+PagedLODWithNodeOperations::replaceChild( Node* origChild, Node* newChild )
+{
+    bool ok = false;
+    if ( origChild && newChild )
+    {
+        ok = osg::PagedLOD::replaceChild( origChild, newChild );
+        if ( ok )
+            runPostMerge( newChild );
+    }
+    return ok;
+}
+
 
-            if ( normalLen < *_maxNormalLen )
-                *_maxNormalLen = normalLen;
-        }
+//------------------------------------------------------------------------
 
-        osg::Vec3 _normal;
-        osg::Matrixd _local2world;
-        float*    _maxNormalLen;
-    };
 
-    struct ComputeMaxRadius2
+RemoveEmptyGroupsVisitor::RemoveEmptyGroupsVisitor() :
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
+{
+    //nop
+}
+
+void
+RemoveEmptyGroupsVisitor::apply( osg::Group& group )
+{
+    bool removed = true;
+    while( removed )
     {
-        void set( const osg::Vec3& center, float* maxRadius2 )
+        removed = false;
+        for( unsigned i = 0; i < group.getNumChildren(); ++i )
         {
-            _center = center;
-            _maxRadius2 = maxRadius2;
-        }
+            osg::Group* child = group.getChild(i)->asGroup();
+            if ( child )
+            {
+                if (child->className() == std::string("Group") &&
+                    child->getStateSet() == 0L            &&
+                    child->getCullCallback() == 0L        &&
+                    child->getUpdateCallback() == 0L      &&
+                    child->getUserData() == 0L            &&
+                    child->getName().empty()              &&
+                    child->getDescriptions().size() == 0 )
+                {
+                    for( unsigned j = 0; j < child->getNumChildren(); ++j )
+                    {
+                        group.addChild( child->getChild( j ) );
+                    }
 
-        void operator()( const osg::Vec3 &v1, bool )
-        {            
-            compute( v1 );
+                    group.removeChild( i-- );
+                    removed = true;
+                }                
+            }
         }
+    }
 
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, bool )
-        {            
-            compute( v1 );
-            compute( v2 );
-        }
+    traverse(group);
+}
 
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3 &v3, bool )
-        {            
-            compute( v1 );
-            compute( v2 );
-            compute( v3 );
-        }        
-
-        void operator()( const osg::Vec3 &v1, const osg::Vec3 &v2, const osg::Vec3 &v3, const osg::Vec3& v4, bool )
-        {            
-            compute( v1 );
-            compute( v2 );
-            compute( v3 );
-            compute( v4 );
-        }
+//------------------------------------------------------------------------
+
+PrimitiveSetTypeCounter::PrimitiveSetTypeCounter() :
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+_point  ( 0 ),
+_line   ( 0 ),
+_polygon( 0 )
+{
+    //nop
+}
 
-        void compute( const osg::Vec3& v )
+void
+PrimitiveSetTypeCounter::apply(osg::Geode& geode)
+{
+    const osg::Geode::DrawableList& drawables = geode.getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = drawables.begin(); i != drawables.end(); ++i )
+    {
+        osg::Geometry* g = i->get()->asGeometry();
+        if ( g )
         {
-            float dist = (v - _center).length2();
-            if ( dist > *_maxRadius2 )
-                *_maxRadius2 = dist;
+            const osg::Geometry::PrimitiveSetList& primSets = g->getPrimitiveSetList();
+            for( osg::Geometry::PrimitiveSetList::const_iterator j = primSets.begin(); j != primSets.end(); ++j )
+            {
+                switch( j->get()->getMode() )
+                {
+                case GL_POINTS:
+                    _point++;
+                    break;
+                case GL_LINES:
+                case GL_LINE_LOOP:
+                case GL_LINE_STRIP:
+                    _line++;
+                    break;
+                default:
+                    _polygon++;
+                    break;
+                }
+            }
         }
+    }
+}
 
 
-
-        osg::Vec3 _center;
-        float*    _maxRadius2;
+namespace
+{
+    struct TriangleIntersection
+    {
+        TriangleIntersection(unsigned int index, const osg::Vec3d& normal, double r1, const osg::Vec3* v1, double r2, const osg::Vec3* v2, double r3, const osg::Vec3* v3):
+            _index(index),
+            _normal(normal),
+            _r1(r1),
+            _v1(v1),
+            _r2(r2),
+            _v2(v2),
+            _r3(r3),
+            _v3(v3) {}
+
+        unsigned int         _index;
+        const osg::Vec3      _normal;
+        double               _r1;
+        const osg::Vec3*     _v1;
+        double               _r2;
+        const osg::Vec3*     _v2;
+        double               _r3;
+        const osg::Vec3*     _v3;
+
+    protected:
+
+        TriangleIntersection& operator = (const TriangleIntersection&) { return *this; }
     };
 
-    struct ComputeVisitor : public osg::NodeVisitor
+
+    typedef std::multimap<double,TriangleIntersection> TriangleIntersections;
+
+
+    struct DoublePrecisionTriangleIntersector
     {
-        ComputeVisitor()
-            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN), 
-              _maxRadius2(0.0f) { }
+        osg::Vec3d   _s;
+        osg::Vec3d   _d;
+        double       _length;
 
-        void run( osg::Node* node, const osg::Vec3d& centerECEF )
-        {
-            _centerECEF = centerECEF;
-            _normalECEF = _centerECEF;
-            _normalECEF.normalize();
-            _maxNormalLen = _centerECEF.length();
+        int         _index;
+        double       _ratio;
+        bool        _hit;
+        bool        _limitOneIntersection;
 
-            _pass = 1;
-            node->accept( *this );
+        TriangleIntersections _intersections;
 
-            _centerECEF = _normalECEF * _maxNormalLen;
+        DoublePrecisionTriangleIntersector()
+        {
+            _length = 0.0;
+            _index = 0;
+            _ratio = 0.0;
+            _hit = false;
+            _limitOneIntersection = false;
+        }
 
-            _pass = 2;
-            node->accept( *this );
+        void set(const osg::Vec3d& start, osg::Vec3d& end, double ratio=FLT_MAX)
+        {
+            _hit=false;
+            _index = 0;
+            _ratio = ratio;
+
+            _s = start;
+            _d = end - start;
+            _length = _d.length();
+            _d /= _length;
         }
 
-        void apply( osg::Geode& geode )
-        {            
-            if ( _pass == 1 )
-            {
-                osg::Matrixd local2world;
-                if ( !_matrixStack.empty() )
-                    local2world = _matrixStack.back();
+        inline void operator () (const osg::Vec3& v1,const osg::Vec3& v2,const osg::Vec3& v3, bool treatVertexDataAsTemporary)
+        {
+            ++_index;
+
+            if (_limitOneIntersection && _hit) return;
+
+            if (v1==v2 || v2==v3 || v1==v3) return;
 
-                osg::TemplatePrimitiveFunctor<ComputeMaxNormalLength> pass1;
-                pass1.set( _normalECEF, local2world, &_maxNormalLen );
+            osg::Vec3d v1d(v1), v2d(v2), v3d(v3);
 
-                for( unsigned i=0; i<geode.getNumDrawables(); ++i )
-                    geode.getDrawable(i)->accept( pass1 );
+            osg::Vec3d v12 = v2d-v1d;
+            osg::Vec3d n12 = v12^_d;
+            double ds12 = (_s-v1d)*n12;
+            double d312 = (v3d-v1d)*n12;
+            if (d312>=0.0)
+            {
+                if (ds12<0.0) return;
+                if (ds12>d312) return;
+            }
+            else                     // d312 < 0
+            {
+                if (ds12>0.0) return;
+                if (ds12<d312) return;
             }
 
-            else // if ( _pass == 2 )
+            osg::Vec3d v23 = v3d-v2d;
+            osg::Vec3d n23 = v23^_d;
+            double ds23 = (_s-v2d)*n23;
+            double d123 = (v1d-v2d)*n23;
+            if (d123>=0.0)
+            {
+                if (ds23<0.0) return;
+                if (ds23>d123) return;
+            }
+            else                     // d123 < 0
             {
-                osg::Vec3d center = _matrixStack.empty() ? _centerECEF : _centerECEF * osg::Matrixd::inverse(_matrixStack.back());
+                if (ds23>0.0) return;
+                if (ds23<d123) return;
+            }
 
-                osg::TemplatePrimitiveFunctor<ComputeMaxRadius2> pass2;
-                pass2.set( center, &_maxRadius2 );
-                for( unsigned i=0; i<geode.getNumDrawables(); ++i )
-                    geode.getDrawable(i)->accept( pass2 );
+            osg::Vec3d v31 = v1d-v3d;
+            osg::Vec3d n31 = v31^_d;
+            double ds31 = (_s-v3d)*n31;
+            double d231 = (v2d-v3d)*n31;
+            if (d231>=0.0)
+            {
+                if (ds31<0.0) return;
+                if (ds31>d231) return;
+            }
+            else                     // d231 < 0
+            {
+                if (ds31>0.0) return;
+                if (ds31<d231) return;
             }
-        }
 
-        void apply( osg::Transform& xform )
-        {
-            osg::Matrixd matrix;
-            if (!_matrixStack.empty()) matrix = _matrixStack.back();
-            xform.computeLocalToWorldMatrix( matrix, this );
-            _matrixStack.push_back( matrix );
-            traverse(xform);
-            _matrixStack.pop_back();
-        }
-        
-        unsigned   _pass;
-        osg::Vec3d _centerECEF;
-        osg::Vec3f _normalECEF;
-        float      _maxNormalLen;
-        float      _maxRadius2;
-        std::vector<osg::Matrixd> _matrixStack;
-    };
 
-    /**
-     * A customized CCC that works correctly under an RTT camera. The built-in one
-     * called getEyePoint() instead of getViewPoint() and therefore isn't compatible
-     * with osg::Camera::ABSOLUTE_RF_INHERIT_VIEWPOINT mode.
-     */
-    struct MyClusterCullingCallback : public osg::ClusterCullingCallback
-    {
-        bool cull(osg::NodeVisitor* nv, osg::Drawable* , osg::State*) const
-        {
-            osg::CullSettings* cs = dynamic_cast<osg::CullSettings*>(nv);
-            if (cs && !(cs->getCullingMode() & osg::CullSettings::CLUSTER_CULLING))
+            double r3;
+            if (osg::equivalent(ds12,0.0)) r3=0.0;
+            else if (!osg::equivalent(d312,0.0)) r3 = ds12/d312;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double r1;
+            if (osg::equivalent(ds23,0.0)) r1=0.0;
+            else if (!osg::equivalent(d123,0.0)) r1 = ds23/d123;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double r2;
+            if (osg::equivalent(ds31,0.0)) r2=0.0;
+            else if (!osg::equivalent(d231,0.0)) r2 = ds31/d231;
+            else return; // the triangle and the line must be parallel intersection.
+
+            double total_r = (r1+r2+r3);
+            if (!osg::equivalent(total_r,1.0))
             {
-                return false;
+                if (osg::equivalent(total_r,0.0)) return; // the triangle and the line must be parallel intersection.
+                double inv_total_r = 1.0/total_r;
+                r1 *= inv_total_r;
+                r2 *= inv_total_r;
+                r3 *= inv_total_r;
             }
 
-            if (_deviation<=-1.0f)
+            osg::Vec3d in = v1d*r1+v2d*r2+v3d*r3;
+            if (!in.valid())
             {
-                return false;
+                //OSG_WARN<<"Warning:: Picked up error in TriangleIntersect"<<std::endl;
+                //OSG_WARN<<"   ("<<v1<<",\t"<<v2<<",\t"<<v3<<")"<<std::endl;
+                //OSG_WARN<<"   ("<<r1<<",\t"<<r2<<",\t"<<r3<<")"<<std::endl;
+                return;
             }
 
-            osg::Vec3 eye_cp = nv->getViewPoint() - _controlPoint;
-            float radius = eye_cp.length();
+            float d = (in-_s)*_d;
+
+            if (d<0.0) return;
+            if (d>_length) return;
+
+            osg::Vec3d normal = v12^v23;
+            normal.normalize();
 
-            if (radius<_radius)
+            float r = d/_length;
+
+
+            if (treatVertexDataAsTemporary)
             {
-                return false;
+                _intersections.insert(std::pair<const double,TriangleIntersection>(r,TriangleIntersection(_index-1,normal,r1,0,r2,0,r3,0)));
             }
+            else
+            {
+                _intersections.insert(std::pair<const double,TriangleIntersection>(r,TriangleIntersection(_index-1,normal,r1,&v1,r2,&v2,r3,&v3)));
+            }
+            _hit = true;
 
-            float deviation = (eye_cp * _normal)/radius;
-
-            return deviation < _deviation;
         }
+
     };
 }
 
-//------------------------------------------------------------------------
-
-osg::ClusterCullingCallback*
-ClusterCullerFactory::create( osg::Node* node, const osg::Vec3d& centerECEF )
-{
-    // Cluster culling computer. This works in two passes.
-    //
-    // It starts with a control point provided by the caller. I the first pass it computes
-    // a new control point that is along the same geocentric normal but at a lower Z. This 
-    // corresponds to the lowest Z of a vertex with respect to that normal. This means we
-    // can always use a "deviation" of 0 -- and it gets around the problem of the control
-    // point being higher than a vertex and corrupting the deviation.
-    //
-    // In the second pass, we compute the radius based on the new control point.
-
-    osg::ClusterCullingCallback* ccc = 0L;
-    if ( node )
-    {
-        ComputeVisitor cv;
-        cv.run( node, centerECEF );
-
-        ccc = new MyClusterCullingCallback(); //osg::ClusterCullingCallback();
-        ccc->set( cv._centerECEF, cv._normalECEF, 0.0f, sqrt(cv._maxRadius2) );
-    }
-    return ccc;
-}
+//----------------------------------------------------------------------------
 
-//------------------------------------------------------------------------
+#undef  LC
+#define LC "[ObserverGroup] "
 
-RemoveEmptyGroupsVisitor::RemoveEmptyGroupsVisitor() :
-osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
+ObserverGroup::ObserverGroup()
 {
-    //nop
+    ADJUST_EVENT_TRAV_COUNT(this, 1);
 }
 
 void
-RemoveEmptyGroupsVisitor::apply( osg::Group& group )
+ObserverGroup::traverse( osg::NodeVisitor& nv )
 {
-    bool removed = true;
-    while( removed )
+    if ( nv.getVisitorType() == nv.EVENT_VISITOR )
     {
-        removed = false;
-        for( unsigned i = 0; i < group.getNumChildren(); ++i )
+        // check for orphans:
+        for(osg::NodeList::iterator itr = _children.begin(); itr != _children.end(); ++itr )
         {
-            osg::Group* child = group.getChild(i)->asGroup();
-            if ( child )
+            if ( (*itr)->referenceCount() == 1 )
             {
-                if (child->className() == "Group"         &&
-                    child->getStateSet() == 0L            &&
-                    child->getCullCallback() == 0L        &&
-                    child->getUpdateCallback() == 0L      &&
-                    child->getUserData() == 0L            &&
-                    child->getName().empty()              &&
-                    child->getDescriptions().size() == 0 )
+                // found one, queue an update traversal so we can safely delete it.
+                // (it's probably safe to just delete it here, but anyway)
+                if ( _orphans.insert(itr->get()).second == true )
                 {
-                    for( unsigned j = 0; j < child->getNumChildren(); ++j )
-                    {
-                        group.addChild( child->getChild( j ) );
-                    }
-
-                    group.removeChild( i-- );
-                    removed = true;
-                }                
+                    ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+                }
             }
         }
     }
 
-    traverse(group);
+    else if ( nv.getVisitorType() == nv.UPDATE_VISITOR && _orphans.size() > 0 )
+    {
+        // delete orphans:
+        for( std::set<osg::Node*>::iterator i = _orphans.begin(); i != _orphans.end(); ++i )
+        {
+            this->removeChild( *i );
+            ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+        }
+
+        OE_DEBUG << LC << _orphans.size() << " orphaned children removed." << std::endl;
+        _orphans.clear();
+    }
+
+    osg::Group::traverse( nv );
 }
diff --git a/src/osgEarth/Notify b/src/osgEarth/Notify
index 29a5f6b..d256611 100644
--- a/src/osgEarth/Notify
+++ b/src/osgEarth/Notify
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,7 @@
 
 #include <osgEarth/Export>
 #include <osg/Notify>
+#include <string>
 
 namespace osgEarth
 {
diff --git a/src/osgEarth/Notify.cpp b/src/osgEarth/Notify.cpp
index a4fc1fd..7197839 100644
--- a/src/osgEarth/Notify.cpp
+++ b/src/osgEarth/Notify.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -38,6 +38,7 @@ using namespace osgEarth;
 #include <iostream>
 #include <fstream>
 #include <cctype>
+#include <iomanip>
 
 using namespace std;
 
@@ -146,8 +147,11 @@ osgEarth::notify(const osg::NotifySeverity severity)
 
     if (severity<=osgearth_g_NotifyLevel)
     {
-        if (severity<=osg::WARN) return std::cerr;
-        else return std::cout;
+        std::ostream* out = severity <= osg::WARN ? &std::cerr : &std::cout;
+        (*out) << std::setprecision(8);
+        return *out;
+        //if (severity<=osg::WARN) return std::cerr;
+        //else return std::cout;
     }
     return s_NotifyNulStream;
 }
diff --git a/src/osgEarth/OverlayDecorator b/src/osgEarth/OverlayDecorator
index 7e94996..cd0f064 100644
--- a/src/osgEarth/OverlayDecorator
+++ b/src/osgEarth/OverlayDecorator
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,17 +20,18 @@
 #define OSGEARTH_OVERLAY_DECORATOR
 
 #include <osgEarth/Common>
-#include <osgEarth/ShaderComposition>
+#include <osgEarth/ThreadingUtils>
 #include <osgEarth/TerrainEngineNode>
 #include <osg/Camera>
 #include <osg/CoordinateSystemNode>
-#include <osg/Texture2D>
 #include <osg/TexGenNode>
 #include <osg/Uniform>
 #include <osgUtil/CullVisitor>
 
 namespace osgEarth
 {
+    class TerrainEngineNode;
+
     /**
      * Projects an overlay scene graph onto the main model.
      *
@@ -45,6 +46,9 @@ namespace osgEarth
     public:
         OverlayDecorator();
 
+        /** dtor */
+        virtual ~OverlayDecorator() { }
+
         /**
          * The scene graph to be sampled an overlaid on the terrain.
          */
@@ -69,19 +73,26 @@ namespace osgEarth
 
         /**
          * Whether mipmapping is enabled on the projected overlay texture. Mapmapping
-         * will improve the visual appearance, but will use more memory, and may affect
-         * performance for overlays that are dynamic.
+         * will improve the visual appearance, but will use more memory, and will affect
+         * performance for overlays that are dynamic. Mipmapping can slow things down
+         * a LOT on some GPUs (e.g. Intel GMA)
+         */
+        void setMipMapping( bool value );
+        bool getMipMapping() const { return _mipmapping; }
+
+        /**
+         * Gets the maximum horizon distance
          */
-        void setMipmapping( bool value );
-        bool getMipmapping() const { return _mipmapping; }
+        double getMaxHorizonDistance() const;
 
         /**
-         * Whether to employ overlay warping. Warping can help increase the apparent
-         * resolution of the overlay image. But it can cause artifacts when you zoom
-         * in very close. Default = true
+         * Sets the maximum horizon distance.  The computed far distance will be no longer than this value.
+         * If you use overlay data that spans large distances it can become pixelated when you tilt your camera to look out over
+         * the horizon b/c the view frustum can extend over long distances.  If you set this to a smaller value you can control
+         * how far out you want to go and reduce the pixelation.  However, if you set this value to be too small, features at a distance may
+         * be clipped out of the scene.
          */
-        void setVertexWarping( bool value );
-        bool getVertexWarping() const { return _warping; }
+        void setMaxHorizonDistance( double maxHorizonDistance );
 
         /**
          * Whether to enable blending on the RTT camera graph. Default = true. You might
@@ -92,6 +103,8 @@ namespace osgEarth
         void setOverlayBlending( bool value );
         bool getOverlayBlending() const { return _rttBlending; }
 
+        void setOverlayGraphTraversalMask( unsigned mask );
+
     public: // TerrainDecorator
         virtual void onInstall( TerrainEngineNode* engine );
         virtual void onUninstall( TerrainEngineNode* engine );
@@ -100,40 +113,62 @@ namespace osgEarth
         void traverse( osg::NodeVisitor& nv );
 
     private:
-        void updateRTTCamera( osg::NodeVisitor& nv );
-        void cull( osgUtil::CullVisitor* cv );
-        void reinit();
-        void initSubgraphShaders( osg::StateSet* set );
-        void initRTTShaders( osg::StateSet* set );
-
-    private:
         osg::ref_ptr<osg::Node>       _overlayGraph;
-        osg::ref_ptr<osg::Camera>     _rttCamera;
-        osg::ref_ptr<osg::Texture2D>  _projTexture;
-        osg::ref_ptr<osg::TexGenNode> _texGenNode;
-        osg::ref_ptr<osg::Uniform>    _texGenUniform;
         osg::ref_ptr<osg::Uniform>    _warpUniform;
-        osg::ref_ptr<osg::StateSet>   _subgraphStateSet;
         optional<int>                 _explicitTextureUnit;
         optional<int>                 _textureUnit;
         optional<int>                 _textureSize;
         bool                          _useShaders;
-        bool                          _useWarping;
-        float                         _warp;
-        bool                          _warping;
-        bool                          _visualizeWarp;
         bool                          _isGeocentric;
         double                        _maxProjectedMapExtent;
         bool                          _mipmapping;
         bool                          _rttBlending;
-        osg::Matrixd                  _rttViewMatrix;
-        osg::Matrixd                  _rttProjMatrix;
-        osg::Matrixd                  _projectorViewMatrix;
-        osg::Matrixd                  _projectorProjMatrix;
+        bool                          _updatePending;
+        unsigned                      _rttTraversalMask;
+        
+        double                        _maxHorizonDistance;
 
+        osg::ref_ptr<const SpatialReference>    _srs;
         osg::ref_ptr<const osg::EllipsoidModel> _ellipsoid;
-        osg::ref_ptr<osgEarth::VirtualProgram>  _vp;
-        osg::ref_ptr<TerrainEngineNode>         _engine;
+        osg::observer_ptr<TerrainEngineNode>    _engine;
+        
+        struct PerViewData
+        {
+            osg::ref_ptr<osg::Camera>     _rttCamera;
+            osg::ref_ptr<osg::Uniform>    _texGenUniform;
+            osg::ref_ptr<osg::TexGenNode> _texGenNode;
+            osg::Matrixd                  _rttViewMatrix;
+            osg::Matrixd                  _rttProjMatrix;
+            osg::ref_ptr<osg::StateSet>   _subgraphStateSet;
+        };
+
+        //typedef std::map<osg::Camera*, PerViewData> PerViewDataMap;
+        typedef std::map<osg::NodeVisitor*, PerViewData> PerViewDataMap;
+        PerViewDataMap _perViewData;
+        Threading::ReadWriteMutex _perViewDataMutex;
+
+
+    private:
+        void updateRTTCamera(PerViewData& pvd);
+        void cull( osgUtil::CullVisitor* cv, PerViewData& pvd );
+        void initializeForOverlayGraph();
+        void initializePerViewData( PerViewData& );
+        void initSubgraphShaders( PerViewData& );
+        bool checkNeedsUpdate( PerViewData& );
+        PerViewData& getPerViewData( osg::NodeVisitor* key );
+
+    public:
+        // marker class for DrapeableNode support.
+        struct InternalNodeVisitor : public osg::NodeVisitor {
+            InternalNodeVisitor(const osg::NodeVisitor::TraversalMode& mode =osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) : 
+                osg::NodeVisitor(mode) { }
+        };
+
+        //debugging:
+        void requestDump() { _dumpRequested = true; }
+        osg::Node* getDump() { osg::Node* r = _dump.release(); _dump = 0L; return r; }
+        osg::ref_ptr<osg::Node> _dump;
+        bool _dumpRequested;
     };
 
 } // namespace osgEarth
diff --git a/src/osgEarth/OverlayDecorator.cpp b/src/osgEarth/OverlayDecorator.cpp
index 92ae5cf..b95f06e 100644
--- a/src/osgEarth/OverlayDecorator.cpp
+++ b/src/osgEarth/OverlayDecorator.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,18 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 #include <osgEarth/OverlayDecorator>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/TextureCompositor>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/Capabilities>
 #include <osg/Texture2D>
 #include <osg/TexEnv>
 #include <osg/BlendFunc>
+#include <osg/ShapeDrawable>
+#include <osg/AutoTransform>
 #include <osg/ComputeBoundsVisitor>
+#include <osgGA/EventVisitor>
 #include <osgShadow/ConvexPolyhedron>
 #include <osgUtil/LineSegmentIntersector>
 #include <iomanip>
@@ -31,68 +36,129 @@
 
 #define LC "[OverlayDecorator] "
 
+//#define OE_TEST if (_dumpRequested) OE_INFO << std::setprecision(9)
+#define OE_TEST OE_NULL
+
 using namespace osgEarth;
 
 //---------------------------------------------------------------------------
 
 namespace
 {
+#if 0
     /**
-     * Extends ConvexPolyhedron to add bounds tests.
+     * Creates a polytope that minimally bounds a bounding sphere
+     * in world space.
      */
-    class MyConvexPolyhedron : public osgShadow::ConvexPolyhedron
+    void computeWorldBoundingPolytope(const osg::BoundingSphere&  bs, 
+                                      const SpatialReference*     srs,
+                                      bool                        geocentric,
+                                      osg::Polytope&              out_polytope)
     {
-    public:       
-        bool intersects(const osg::BoundingSphere& bs) const
+        out_polytope.clear();
+        const osg::EllipsoidModel* ellipsoid = srs->getEllipsoid();
+
+        // add planes for the four sides of the BS. Normals point inwards.
+        out_polytope.add( osg::Plane(osg::Vec3d( 1, 0,0), osg::Vec3d(-bs.radius(),0,0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d(-1, 0,0), osg::Vec3d( bs.radius(),0,0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d( 0, 1,0), osg::Vec3d(0, -bs.radius(),0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d( 0,-1,0), osg::Vec3d(0,  bs.radius(),0)) );
+
+        // for a projected map, we're done. For a geocentric one, add a bottom cap.
+        if ( geocentric )
         {
-            for( Faces::const_iterator i = _faces.begin(); i != _faces.end(); ++i )
+            // add a bottom cap, unless the bounds are sufficiently large.
+            double minRad = std::min(ellipsoid->getRadiusPolar(), ellipsoid->getRadiusEquator());
+            double maxRad = std::max(ellipsoid->getRadiusPolar(), ellipsoid->getRadiusEquator());
+            double zeroOffset = bs.center().length();
+            if ( zeroOffset > minRad * 0.1 )
             {
-                osg::Plane up = i->plane;
-                up.makeUnitLength();
-                if ( up.distance( bs.center() ) < -bs.radius() )
-                    return false;
+                out_polytope.add( osg::Plane(osg::Vec3d(0,0,1), osg::Vec3d(0,0,-maxRad+zeroOffset)) );
             }
-            return true;
         }
 
-        bool intersects(const osg::BoundingBox& box) const
+        // transform the clipping planes ito world space localized about the center point
+        GeoPoint refPoint;
+        refPoint.fromWorld( srs, bs.center() );
+        osg::Matrix local2world;
+        refPoint.createLocalToWorld( local2world );
+
+        out_polytope.transform( local2world );
+    }
+
+
+    /**
+     * Tests whether a "cohesive" point set intersects a polytope. This differs from
+     * Polytope::contains(verts); that function tests each point individually, whereas
+     * this method tests the point set as a whole (i.e. as the border points of a solid --
+     * we are testing whether this solid intersects the polytope.)
+     */
+    bool pointSetIntersectsClippingPolytope(const std::vector<osg::Vec3>& points, osg::Polytope& pt)
+    {
+        osg::Polytope::PlaneList& planes = pt.getPlaneList();
+        for( osg::Polytope::PlaneList::iterator plane = planes.begin(); plane != planes.end(); ++plane )
         {
-            for( Faces::const_iterator i = _faces.begin(); i != _faces.end(); ++i )
+            unsigned outsides = 0;
+            for( std::vector<osg::Vec3>::const_iterator point = points.begin(); point != points.end(); ++point )
             {
-                osg::Plane up = i->plane;
-                up.makeUnitLength();
-
-                if ( up.intersect(box) < 0 )
-                    return false;
+                bool outside = plane->distance( *point ) < 0.0f;
+                if ( outside ) outsides++;
+                else break;
             }
-            return true;
+            if ( outsides == points.size() ) 
+                return false;
         }
-    };
+        return true;
+    }
+
 
     /**
-     * Visits a scene graph (in our case, the overlay graph) and calculates a
-     * geometry bounding box that intersects the provided polytope (which in out case is the
-     * view frustum).
-     *
-     * It's called "Coarse" because it does not traverse to the Drawable level, just to
-     * the Geode bounding sphere level.
+     * Visitor that computes a bounding sphere for the geometry that intersects
+     * a frustum polyhedron. Since this is used to project geometry on to the 
+     * terrain surface, it has to account for geometry that is not clamped --
+     * so instead of using the normal bounding sphere it computes a world-space
+     * polytope for each geometry and interests that with the frustum.
      */
-    struct CoarsePolytopeIntersector : public osg::NodeVisitor
+    struct ComputeBoundsWithinFrustum : public OverlayDecorator::InternalNodeVisitor
     {
-        CoarsePolytopeIntersector(const MyConvexPolyhedron& polytope, osg::BoundingBox& out_bbox)
-            : osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
-              _bbox(out_bbox),
-              _original( polytope ),
-              _coarse( true )
+        std::vector<osg::Vec3>  _frustumVerts;
+
+        ComputeBoundsWithinFrustum(const osgShadow::ConvexPolyhedron& frustumPH, 
+                                   const SpatialReference* srs,
+                                   bool                    geocentric,
+                                   osg::BoundingSphere&    out_bs)
+            : InternalNodeVisitor(),
+              _srs       ( srs ),
+              _geocentric( geocentric ),
+              _bs        ( out_bs )
+        {
+            frustumPH.getPolytope( _originalPT );
+
+            _polytopeStack.push( _originalPT );
+            _local2worldStack.push( osg::Matrix::identity() );
+            _world2localStack.push( osg::Matrix::identity() );
+
+            // extract the corner verts from the frustum polyhedron; we will use those to
+            // test for intersection.
+            std::vector<osg::Vec3d> temp;
+            temp.reserve( 8 );
+            frustumPH.getPoints( temp );
+            for( unsigned i=0; i<temp.size(); ++i )
+                _frustumVerts.push_back(temp[i]);
+        }
+
+        bool contains( const osg::BoundingSphere& bs )
         {
-            _polytopeStack.push( polytope );
-            _matrixStack.push( osg::Matrix::identity() );
+            osg::BoundingSphere worldBS( bs.center() * _local2worldStack.top(), bs.radius() );
+            osg::Polytope bsWorldPT;
+            computeWorldBoundingPolytope( worldBS, _srs, _geocentric, bsWorldPT );
+            return pointSetIntersectsClippingPolytope( _frustumVerts, bsWorldPT );
         }
 
         void apply( osg::Node& node )
         {
             const osg::BoundingSphere& bs = node.getBound();
-            if ( _polytopeStack.top().intersects( bs ) )
+            if ( contains(bs) )
             {
                 traverse( node );
             }
@@ -101,58 +167,43 @@ namespace
         void apply( osg::Geode& node )
         {
             const osg::BoundingSphere& bs = node.getBound();
-
-            if ( _polytopeStack.top().intersects( bs ) )
+            if ( contains(bs) )
             {
-                if ( _coarse )
-                {
-                    _bbox.expandBy(
-                        osg::BoundingSphere( bs.center() * _matrixStack.top(), bs.radius() ) );
-                }
-                else
-                {
-                    for( unsigned i=0; i < node.getNumDrawables(); ++i )
-                    {
-                        applyDrawable( node.getDrawable(i) );
-                    }
-                }
+                _bs.expandBy( osg::BoundingSphere(
+                    bs.center() * _local2worldStack.top(),
+                    bs.radius() ) );
             }
         }
 
-        void applyDrawable( osg::Drawable* drawable )
+        void apply( osg::Transform& transform )
         {
-            const osg::BoundingBox& box = drawable->getBound();
+            osg::Matrixd local2world;
+            transform.computeLocalToWorldMatrix( local2world, this );
 
-            if ( _polytopeStack.top().intersects( box ) )
-            {
-                osg::Vec3d bmin = osg::Vec3(box.xMin(), box.yMin(), box.zMin()) * _matrixStack.top();
-                osg::Vec3d bmax = osg::Vec3(box.xMax(), box.yMax(), box.zMax()) * _matrixStack.top();
-                  
-                _bbox.expandBy( osg::BoundingBox(bmin, bmax) );
-            }
-        }
+            _local2worldStack.push( local2world );
 
-        void apply( osg::Transform& transform )
-        {
-            osg::Matrixd matrix;
-            transform.computeLocalToWorldMatrix( matrix, this );
+            _polytopeStack.push( _originalPT );
+            _polytopeStack.top().transformProvidingInverse( local2world );
 
-            _matrixStack.push( matrix );
-            _polytopeStack.push( _original );
-            _polytopeStack.top().transform( osg::Matrixd::inverse( matrix ), matrix );
+            osg::Matrix world2local;
+            world2local.invert( local2world );
+            _world2localStack.push( world2local );
 
             traverse(transform);
 
-            _matrixStack.pop();
+            _local2worldStack.pop();
             _polytopeStack.pop();
         }
 
-        osg::BoundingBox& _bbox;
-        MyConvexPolyhedron _original;
-        std::stack<MyConvexPolyhedron> _polytopeStack;
-        std::stack<osg::Matrixd> _matrixStack;
-        bool _coarse;
+        osg::BoundingSphere&      _bs;
+        const SpatialReference*   _srs;
+        bool                      _geocentric;
+        osg::Polytope             _originalPT;
+        std::stack<osg::Polytope> _polytopeStack;
+        std::stack<osg::Matrixd>  _local2worldStack, _world2localStack;
     };
+#endif
+
 
     /**
      * This method takes a set of verts and finds the nearest and farthest distances from
@@ -179,7 +230,7 @@ namespace
             // project the vert onto the camera plane:
             double signedDist = plane.distance( point );
             point += (-plane.getNormal() * signedDist);
-
+            
             // then calculate the 2D distance to the camera:
             double sqrDist2D = (cam-point).length2();
             if ( sqrDist2D > maxSqrDist2D )
@@ -216,20 +267,21 @@ namespace
 //---------------------------------------------------------------------------
 
 OverlayDecorator::OverlayDecorator() :
-_textureUnit  ( 1 ),
-_textureSize  ( 1024 ),
-_useShaders   ( false ),
-_useWarping   ( false ),
-_warp         ( 1.0f ),
-_visualizeWarp( false ),
-_mipmapping   ( true ),
-_rttBlending  ( true )
+_textureUnit     ( 1 ),
+_textureSize     ( 1024 ),
+_useShaders      ( false ),
+_mipmapping      ( false ),
+_rttBlending     ( true ),
+_updatePending   ( false ),
+_dumpRequested   ( false ),
+_rttTraversalMask( ~0 ),
+_maxHorizonDistance( DBL_MAX )
 {
     // nop
 }
 
 void
-OverlayDecorator::reinit()
+OverlayDecorator::initializeForOverlayGraph()
 {
     if ( !_engine.valid() ) return;
 
@@ -245,7 +297,7 @@ OverlayDecorator::reinit()
         }
 
         // otherwise, automatically allocate a texture unit if necessary:
-        else if ( !_textureUnit.isSet() && _useShaders )
+        else if ( !_textureUnit.isSet() ) //&& _useShaders )
         {
             int texUnit;
             if ( _engine->getTextureCompositor()->reserveTextureImageUnit( texUnit ) )
@@ -258,168 +310,131 @@ OverlayDecorator::reinit()
                 OE_WARN << LC << "Uh oh, no texture image units available." << std::endl;
             }
         }
-
-        if ( _textureUnit.isSet() )
-        {
-            _projTexture = new osg::Texture2D();
-            _projTexture->setTextureSize( *_textureSize, *_textureSize );
-            _projTexture->setInternalFormat( GL_RGBA8 );
-            _projTexture->setSourceFormat( GL_RGBA );
-            _projTexture->setSourceType( GL_UNSIGNED_BYTE );
-            _projTexture->setFilter( osg::Texture::MIN_FILTER, _mipmapping? osg::Texture::LINEAR_MIPMAP_LINEAR : osg::Texture::LINEAR );
-            _projTexture->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
-            _projTexture->setWrap( osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_BORDER );
-            _projTexture->setWrap( osg::Texture::WRAP_T, osg::Texture::CLAMP_TO_BORDER );
-            _projTexture->setWrap( osg::Texture::WRAP_R, osg::Texture::CLAMP_TO_BORDER );
-            _projTexture->setBorderColor( osg::Vec4(0,0,0,0) );
-
-            // set up the RTT camera:
-            _rttCamera = new osg::Camera();
-            _rttCamera->setClearColor( osg::Vec4f(0,0,0,0) );
-            // this ref frame causes the RTT to inherit its viewpoint from above (in order to properly
-            // process PagedLOD's etc. -- it doesn't affect the perspective of the RTT camera though)
-            _rttCamera->setReferenceFrame( osg::Camera::ABSOLUTE_RF_INHERIT_VIEWPOINT );
-            _rttCamera->setViewport( 0, 0, *_textureSize, *_textureSize );
-            _rttCamera->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
-            _rttCamera->setRenderOrder( osg::Camera::PRE_RENDER );
-            _rttCamera->setRenderTargetImplementation( osg::Camera::FRAME_BUFFER_OBJECT );
-            _rttCamera->attach( osg::Camera::COLOR_BUFFER, _projTexture.get(), 0, 0, _mipmapping );
-            _rttCamera->getOrCreateStateSet()->setMode( GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
-
-            if ( _rttBlending )
-            {
-                osg::BlendFunc* blendFunc = new osg::BlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
-                _rttCamera->getOrCreateStateSet()->setAttributeAndModes(blendFunc, osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE);
-            }
-            else
-            {
-                _rttCamera->getOrCreateStateSet()->setMode(GL_BLEND, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE);
-            }
-            //Enable blending on the RTT camera with pre-multiplied alpha.
-            //osg::BlendFunc* blendFunc = new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE);
-                
-
-            // texture coordinate generator:
-            _texGenNode = new osg::TexGenNode();
-            _texGenNode->setTextureUnit( *_textureUnit );
-            _texGenNode->getTexGen()->setMode( osg::TexGen::EYE_LINEAR );
-            
-            // attach the overlay graph to the RTT camera.
-            if ( _overlayGraph.valid() && ( _overlayGraph->getNumParents() == 0 || _overlayGraph->getParent(0) != _rttCamera.get() ))
-            {
-                if ( _rttCamera->getNumChildren() > 0 )
-                    _rttCamera->replaceChild( 0, _overlayGraph.get() );
-                else
-                    _rttCamera->addChild( _overlayGraph.get() );
-            }
-        }
-    }
-
-    // assemble the subgraph stateset:
-    _subgraphStateSet = new osg::StateSet();
-
-    if ( _overlayGraph.valid() && _textureUnit.isSet() )
-    {
-        // set up the subgraph to receive the projected texture:
-        _subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_S, osg::StateAttribute::ON );
-        _subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_T, osg::StateAttribute::ON );
-        _subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_R, osg::StateAttribute::ON );
-        _subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_Q, osg::StateAttribute::ON );
-        _subgraphStateSet->setTextureAttributeAndModes( *_textureUnit, _projTexture.get(), osg::StateAttribute::ON );
-
-        // decalling (note: this has no effect when using shaders.. remove? -gw)
-        //osg::TexEnv* env = new osg::TexEnv();
-        //env->setMode( osg::TexEnv::DECAL );
-        //_subgraphStateSet->setTextureAttributeAndModes( *_textureUnit, env, osg::StateAttribute::ON );
-        
-        // set up the shaders
-        if ( _useShaders )
-        {            
-            initSubgraphShaders( _subgraphStateSet.get() );
-            initRTTShaders( _rttCamera->getOrCreateStateSet() );
-
-            _warpUniform = this->getOrCreateStateSet()->getOrCreateUniform( "warp", osg::Uniform::FLOAT );
-            _warpUniform->set( 1.0f );
-        }
     }
 }
 
+
 void
-OverlayDecorator::initRTTShaders( osg::StateSet* set )
+OverlayDecorator::initializePerViewData( PerViewData& pvd )
 {
-    //TODO: convert this to VP so the overlay graph can use shadercomp too.
-    osg::Program* program = new osg::Program();
-    program->setName( "OverlayDecorator RTT shader" );
-    set->setAttributeAndModes( program, osg::StateAttribute::ON );
+    if ( !_textureUnit.isSet() || !_overlayGraph.valid() )
+        return;
+
+    // create the projected texture:
+    osg::Texture2D* projTexture = new osg::Texture2D();
+    projTexture->setTextureSize( *_textureSize, *_textureSize );
+    projTexture->setInternalFormat( GL_RGBA8 );
+    projTexture->setSourceFormat( GL_RGBA );
+    projTexture->setSourceType( GL_UNSIGNED_BYTE );
+    projTexture->setFilter( osg::Texture::MIN_FILTER, _mipmapping? osg::Texture::LINEAR_MIPMAP_LINEAR: osg::Texture::LINEAR );
+    projTexture->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
+    projTexture->setWrap( osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_BORDER );
+    projTexture->setWrap( osg::Texture::WRAP_T, osg::Texture::CLAMP_TO_BORDER );
+    projTexture->setWrap( osg::Texture::WRAP_R, osg::Texture::CLAMP_TO_BORDER );
+    projTexture->setBorderColor( osg::Vec4(0,0,0,0) );
+
+    // set up the RTT camera:
+    pvd._rttCamera = new osg::Camera();
+    pvd._rttCamera->setClearColor( osg::Vec4f(0,0,0,0) );
+    pvd._rttCamera->setClearStencil( 0 );
+    pvd._rttCamera->setClearMask( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT );
+    // this ref frame causes the RTT to inherit its viewpoint from above (in order to properly
+    // process PagedLOD's etc. -- it doesn't affect the perspective of the RTT camera though)
+    pvd._rttCamera->setReferenceFrame( osg::Camera::ABSOLUTE_RF_INHERIT_VIEWPOINT );
+    pvd._rttCamera->setViewport( 0, 0, *_textureSize, *_textureSize );
+    pvd._rttCamera->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
+    pvd._rttCamera->setRenderOrder( osg::Camera::PRE_RENDER );
+    pvd._rttCamera->setRenderTargetImplementation( osg::Camera::FRAME_BUFFER_OBJECT );
+
+    pvd._rttCamera->attach( osg::Camera::COLOR_BUFFER, projTexture, 0, 0, _mipmapping );
+
+    // try a depth-packed buffer. failing that, try a normal one.. if the FBO doesn't support
+    // that (which is doesn't on some GPUs like Intel), it will automatically fall back on 
+    // a PBUFFER_RTT impl
+    if ( Registry::instance()->getCapabilities().supportsDepthPackedStencilBuffer() )
+        pvd._rttCamera->attach( osg::Camera::PACKED_DEPTH_STENCIL_BUFFER, GL_DEPTH_STENCIL_EXT );
+    else
+        pvd._rttCamera->attach( osg::Camera::STENCIL_BUFFER, GL_STENCIL_INDEX );
+
+    osg::StateSet* rttStateSet = pvd._rttCamera->getOrCreateStateSet();
 
-    std::stringstream buf;
-    buf << "#version 110 \n";
+    rttStateSet->setMode( GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
 
-    if ( _useWarping )
+    // install a new default shader program that replaces anything from above.
+    VirtualProgram* vp = new VirtualProgram();
+    vp->setName( "overlay rtt" );
+    vp->installDefaultColoringAndLightingShaders();
+    vp->setInheritShaders( false );
+    rttStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+    
+    if ( _rttBlending )
+    {
+        //osg::BlendFunc* blendFunc = new osg::BlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
+        //osg::BlendFunc* blendFunc = new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+
+        //Setup a separate blend function for the alpha components and the RGB components.  
+        //Because the destination alpha is initialized to 0 instead of 1
+        osg::BlendFunc* blendFunc = 0;        
+        if (Registry::instance()->getCapabilities().supportsGLSL(1.4f))
+        {
+            //Blend Func Separate is only available on OpenGL 1.4 and above
+            blendFunc = new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
+        }
+        else
+        {
+            blendFunc = new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
+        }
+
+        rttStateSet->setAttributeAndModes(blendFunc, osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE);
+    }
+    else
     {
-        buf << "uniform float warp; \n"
-
-            // because the built-in pow() is busted
-            << "float mypow( in float x, in float y ) \n"
-            << "{ \n"
-            << "    return x/(x+y-y*x); \n"
-            << "} \n"
-
-            << "vec4 warpVertex( in vec4 src ) \n"
-            << "{ \n"
-            //      normalize to [-1..1], then take the absolute values since we
-            //      want to apply the warping in [0..1] on each side of zero:
-            << "    vec2 srct = vec2( abs(src.x)/src.w, abs(src.y)/src.w ); \n"
-            << "    vec2 sign = vec2( src.x > 0.0 ? 1.0 : -1.0, src.y > 0.0 ? 1.0 : -1.0 ); \n"
-
-            //      apply the deformation using a "deceleration" curve:
-            << "    vec2 srcp = vec2( 1.0-mypow(1.0-srct.x,warp), 1.0-mypow(1.0-srct.y,warp) ); \n"
-
-            //      re-apply the sign. no need to un-normalize, just use w=1 instead
-            << "    return vec4( sign.x*srcp.x, sign.y*srcp.y, src.z/src.w, 1.0 ); \n"
-            << "} \n"
-
-            << "void main() \n"
-            << "{ \n"
-            << "    gl_Position = warpVertex( gl_ModelViewProjectionMatrix * gl_Vertex ); \n"
-            << "    gl_FrontColor = gl_Color; \n"
-            << "    gl_TexCoord[0] = gl_MultiTexCoord0;\n"
-            << "} \n";
+        rttStateSet->setMode(GL_BLEND, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE);
     }
 
-    else // no vertex warping
+    // attach the overlay graph to the RTT camera.
+    if ( _overlayGraph.valid() && ( _overlayGraph->getNumParents() == 0 || _overlayGraph->getParent(0) != pvd._rttCamera.get() ))
     {
-        buf << "void main() \n"
-            << "{ \n"
-            << "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
-            << "    gl_FrontColor = gl_Color; \n"
-            << "    gl_TexCoord[0] = gl_MultiTexCoord0;\n"
-            << "} \n";
+        if ( pvd._rttCamera->getNumChildren() > 0 )
+            pvd._rttCamera->replaceChild( 0, _overlayGraph.get() );
+        else
+            pvd._rttCamera->addChild( _overlayGraph.get() );
     }
 
-    std::string vertSource = buf.str();
-    program->addShader( new osg::Shader( osg::Shader::VERTEX, vertSource ) );
-
-    std::stringstream fragBuf;
-    fragBuf    << "#version 110 \n"
-               << "uniform sampler2D texture_0; \n"
-               << "void main() \n"
-               << "{\n"                              
-               << "    vec4 tex = texture2D(texture_0, gl_TexCoord[0].xy);\n"
-               << "    vec3 mixed_color = mix(gl_Color.rgb, tex.rgb, tex.a);\n"
-               //<< "    gl_FragColor = vec4(mixed_color, gl_Color.a); \n"
-               << "    gl_FragColor = vec4(mixed_color, gl_Color.a); \n"
-               << "}\n";
-    
-    std::string fragSource = fragBuf.str();
+    // overlay geometry is rendered with no depth testing, and in the order it's found in the
+    // scene graph... until further notice...
+    rttStateSet->setMode(GL_DEPTH_TEST, 0);
+    rttStateSet->setBinName( "TraversalOrderBin" );
+
+
+    // assemble the subgraph stateset:
+    pvd._subgraphStateSet = new osg::StateSet();
+
+    // set up the subgraph to receive the projected texture:
+    pvd._subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_S, osg::StateAttribute::ON );
+    pvd._subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_T, osg::StateAttribute::ON );
+    pvd._subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_R, osg::StateAttribute::ON );
+    pvd._subgraphStateSet->setTextureMode( *_textureUnit, GL_TEXTURE_GEN_Q, osg::StateAttribute::ON );
+    pvd._subgraphStateSet->setTextureAttributeAndModes( *_textureUnit, projTexture, osg::StateAttribute::ON );
     
-    program->addShader( new osg::Shader( osg::Shader::FRAGMENT, fragSource ) );
-    set->addUniform(new osg::Uniform("texture_0",0));
+    if ( _useShaders )
+    {            
+        // set up the shaders
+        initSubgraphShaders( pvd );
+    }
+    else
+    {
+        // FFP path:
+        pvd._texGenNode = new osg::TexGenNode();
+        pvd._texGenNode->setTexGen( new osg::TexGen() );
+    }
 }
 
 void
-OverlayDecorator::initSubgraphShaders( osg::StateSet* set )
+OverlayDecorator::initSubgraphShaders( PerViewData& pvd )
 {
+    osg::StateSet* set = pvd._subgraphStateSet.get();
+
     VirtualProgram* vp = new VirtualProgram();
     vp->setName( "OverlayDecorator subgraph shader" );
     set->setAttributeAndModes( vp, osg::StateAttribute::ON );
@@ -428,70 +443,41 @@ OverlayDecorator::initSubgraphShaders( osg::StateSet* set )
     set->getOrCreateUniform( "osgearth_overlay_ProjTex", osg::Uniform::SAMPLER_2D )->set( *_textureUnit );
 
     // the texture projection matrix uniform.
-    _texGenUniform = set->getOrCreateUniform( "osgearth_overlay_TexGenMatrix", osg::Uniform::FLOAT_MAT4 );
-
-    std::stringstream buf;
+    pvd._texGenUniform = set->getOrCreateUniform( "osgearth_overlay_TexGenMatrix", osg::Uniform::FLOAT_MAT4 );
 
     // vertex shader - subgraph
-    buf << "#version 110 \n"
+    std::string vertexSource = Stringify()
+        << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision mediump float;\n"
+#endif
         << "uniform mat4 osgearth_overlay_TexGenMatrix; \n"
         << "uniform mat4 osg_ViewMatrixInverse; \n"
+        << "varying vec4 osg_TexCoord[" << Registry::capabilities().getMaxGPUTextureCoordSets() << "]; \n"
 
         << "void osgearth_overlay_vertex(void) \n"
         << "{ \n"
-        << "    gl_TexCoord["<< *_textureUnit << "] = osgearth_overlay_TexGenMatrix * osg_ViewMatrixInverse * gl_ModelViewMatrix * gl_Vertex; \n"
+        << "    osg_TexCoord["<< *_textureUnit << "] = osgearth_overlay_TexGenMatrix * osg_ViewMatrixInverse * gl_ModelViewMatrix * gl_Vertex; \n"
         << "} \n";
 
-    std::string vertexSource = buf.str();
     vp->setFunction( "osgearth_overlay_vertex", vertexSource, ShaderComp::LOCATION_VERTEX_POST_LIGHTING );
 
     // fragment shader - subgraph
-    buf.str("");
-    buf << "#version 110 \n"
-        << "uniform sampler2D osgearth_overlay_ProjTex; \n";
-
-    if ( _useWarping )
-    {
-        buf << "uniform float warp; \n"
-
-            // because the built-in pow() is busted
-            << "float mypow( in float x, in float y ) \n"
-            << "{ \n"
-            << "    return x/(x+y-y*x); \n"
-            << "} \n"
-
-            << "vec2 warpTexCoord( in vec2 src ) \n"
-            << "{ \n"
-            //      incoming tex coord is [0..1], so we scale to [-1..1]
-            << "    vec2 srcn = vec2( src.x*2.0 - 1.0, src.y*2.0 - 1.0 ); \n" 
-
-            //      we want to work in the [0..1] space on each side of 0, so can the abs
-            //      and store the signs for later:
-            << "    vec2 srct = vec2( abs(srcn.x), abs(srcn.y) ); \n"
-            << "    vec2 sign = vec2( srcn.x > 0.0 ? 1.0 : -1.0, srcn.y > 0.0 ? 1.0 : -1.0 ); \n"
-
-            //      apply the deformation using a deceleration curve:
-            << "    vec2 srcp = vec2( 1.0-mypow(1.0-srct.x,warp), 1.0-mypow(1.0-srct.y,warp) ); \n"
-
-            //      reapply the sign, and scale back to [0..1]:
-            << "    vec2 srcr = vec2( sign.x*srcp.x, sign.y*srcp.y ); \n"
-            << "    return vec2( 0.5*(srcr.x + 1.0), 0.5*(srcr.y + 1.0) ); \n"
-            << "} \n";
-    }
-
-    buf << "void osgearth_overlay_fragment( inout vec4 color ) \n"
+    std::string fragmentSource = Stringify()
+        << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision mediump float;\n"
+#endif
+        << "uniform sampler2D osgearth_overlay_ProjTex; \n"
+        << "varying vec4 osg_TexCoord[" << Registry::capabilities().getMaxGPUTextureCoordSets() << "]; \n"
+        << "void osgearth_overlay_fragment( inout vec4 color ) \n"
         << "{ \n"
-        << "    vec2 texCoord = gl_TexCoord["<< *_textureUnit << "].xy / gl_TexCoord["<< *_textureUnit << "].q; \n";
-
-    if ( _useWarping && !_visualizeWarp )
-        buf  << "    texCoord = warpTexCoord( texCoord ); \n";
-
-    buf << "    vec4 texel = texture2D(osgearth_overlay_ProjTex, texCoord); \n"  
+        << "    vec2 texCoord = osg_TexCoord["<< *_textureUnit << "].xy / osg_TexCoord["<< *_textureUnit << "].q; \n"
+        << "    vec4 texel = texture2D(osgearth_overlay_ProjTex, texCoord); \n"  
         << "    color = vec4( mix( color.rgb, texel.rgb, texel.a ), color.a); \n"
         << "} \n";
 
-    std::string fragmentSource = buf.str();
-    vp->setFunction( "osgearth_overlay_fragment", fragmentSource, ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+    vp->setFunction( "osgearth_overlay_fragment", fragmentSource, ShaderComp::LOCATION_FRAGMENT_POST_LIGHTING );
 }
 
 void
@@ -501,25 +487,55 @@ OverlayDecorator::setOverlayGraph( osg::Node* node )
     {
         if ( _overlayGraph.valid() && node == 0L )
         {
-            ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+            // un-register for traversals.
+            if ( _updatePending )
+            {
+                _updatePending = false;
+                ADJUST_EVENT_TRAV_COUNT( this, -1 );
+            }
+
+            ADJUST_EVENT_TRAV_COUNT( this, -1 );
         }
         else if ( !_overlayGraph.valid() && node != 0L )
         {
-            ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+            // request that OSG give this node an event traversal.
+            ADJUST_EVENT_TRAV_COUNT( this, 1 );
         }
 
         _overlayGraph = node;
-        reinit();
+
+        initializeForOverlayGraph();
+
+        // go through and install the NEW overlay graph on any existing cameras.
+        {
+            Threading::ScopedWriteLock exclude( _perViewDataMutex );
+            for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
+            {
+                PerViewData& pvd = i->second;
+                if ( pvd._rttCamera->getNumChildren() > 0 )
+                    pvd._rttCamera->replaceChild( 0, _overlayGraph.get() );
+                else
+                    pvd._rttCamera->addChild( _overlayGraph.get() );
+            }
+        }
+
+        //reinit();
     }
 }
 
 void
+OverlayDecorator::setOverlayGraphTraversalMask( unsigned mask )
+{
+    _rttTraversalMask = mask;
+}
+
+void
 OverlayDecorator::setTextureSize( int texSize )
 {
     if ( texSize != _textureSize.value() )
     {
         _textureSize = texSize;
-        reinit();
+        //reinit();
     }
 }
 
@@ -529,17 +545,17 @@ OverlayDecorator::setTextureUnit( int texUnit )
     if ( !_explicitTextureUnit.isSet() || texUnit != _explicitTextureUnit.value() )
     {
         _explicitTextureUnit = texUnit;
-        reinit();
+        //reinit();
     }
 }
 
 void
-OverlayDecorator::setMipmapping( bool value )
+OverlayDecorator::setMipMapping( bool value )
 {
     if ( value != _mipmapping )
     {
         _mipmapping = value;
-        reinit();
+        //reinit();
 
         if ( _mipmapping )
             OE_INFO << LC << "Overlay mipmapping " << (value?"enabled":"disabled") << std::endl;
@@ -547,25 +563,12 @@ OverlayDecorator::setMipmapping( bool value )
 }
 
 void
-OverlayDecorator::setVertexWarping( bool value )
-{
-    if ( value != _useWarping )
-    {
-        _useWarping = value;
-        reinit();
-        
-        if ( _useWarping )
-            OE_INFO << LC << "Vertex warping " << (value?"enabled":"disabled")<< std::endl;
-    }
-}
-
-void
 OverlayDecorator::setOverlayBlending( bool value )
 {
     if ( value != _rttBlending )
     {
         _rttBlending = value;
-        reinit();
+        //reinit();
         
         if ( _rttBlending )
             OE_INFO << LC << "Overlay blending " << (value?"enabled":"disabled")<< std::endl;
@@ -580,6 +583,7 @@ OverlayDecorator::onInstall( TerrainEngineNode* engine )
     // establish the earth's major axis:
     MapInfo info(engine->getMap());
     _isGeocentric = info.isGeocentric();
+    _srs = info.getProfile()->getSRS();
     _ellipsoid = info.getProfile()->getSRS()->getEllipsoid();
 
     // the maximum extent (for projected maps only)
@@ -603,7 +607,7 @@ OverlayDecorator::onInstall( TerrainEngineNode* engine )
     }
 
     // rebuild dynamic elements.
-    reinit();
+    initializeForOverlayGraph();
 }
 
 void
@@ -619,31 +623,28 @@ OverlayDecorator::onUninstall( TerrainEngineNode* engine )
 }
 
 void
-OverlayDecorator::updateRTTCamera( osg::NodeVisitor& nv )
+OverlayDecorator::updateRTTCamera( OverlayDecorator::PerViewData& pvd )
 {
     static osg::Matrix normalizeMatrix = 
         osg::Matrix::translate(1.0,1.0,1.0) * osg::Matrix::scale(0.5,0.5,0.5);
 
-    // configure the RTT camera:
-    _rttCamera->setViewMatrix( _rttViewMatrix );
-    _rttCamera->setProjectionMatrix( _rttProjMatrix );
+    pvd._rttCamera->setViewMatrix( pvd._rttViewMatrix );
+    pvd._rttCamera->setProjectionMatrix( pvd._rttProjMatrix );
 
-    osg::Matrix MVPT = _projectorViewMatrix * _projectorProjMatrix * normalizeMatrix;
+    osg::Matrix MVPT = pvd._rttViewMatrix * pvd._rttProjMatrix * normalizeMatrix;
 
-    //_texGenNode->getTexGen()->setMode( osg::TexGen::EYE_LINEAR ); // moved to initialization
-    _texGenNode->getTexGen()->setPlanesFromMatrix( MVPT );
-    
-    // uniform update:
-    if ( _useShaders )
+    if ( pvd._texGenUniform.valid() )
     {
-        _texGenUniform->set( MVPT );
-        if ( _useWarping )
-            _warpUniform->set( _warp );
+        pvd._texGenUniform->set( MVPT );
+    }
+    else
+    {
+        pvd._texGenNode->getTexGen()->setPlanesFromMatrix( MVPT );
     }
 }
 
 void
-OverlayDecorator::cull( osgUtil::CullVisitor* cv )
+OverlayDecorator::cull( osgUtil::CullVisitor* cv, OverlayDecorator::PerViewData& pvd )
 {
     static int s_frame = 1;
 
@@ -664,11 +665,21 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
     // distance to the horizon, projected into the RTT camera's tangent plane.
     double horizonDistanceInRTTPlane;
 
+    OE_TEST << LC << "------- OD CULL ------------------------" << std::endl;
+
     if ( _isGeocentric )
     {
         double lat, lon;
         _ellipsoid->convertXYZToLatLongHeight( eye.x(), eye.y(), eye.z(), lat, lon, hasl );
-        hasl = osg::maximum( hasl, 100.0 );
+        
+        //Actually sample the terrain to get the height and adjust the eye position so it's a tighter fit to the real data.
+        double height;
+        if (_engine->getTerrain()->getHeight( SpatialReference::create("epsg:4326"), osg::RadiansToDegrees( lon ), osg::RadiansToDegrees( lat ), &height))
+        {
+            hasl -= height;
+        }
+        hasl = osg::maximum( hasl, 100.0 );                
+
 
         worldUp = _ellipsoid->computeLocalUpVector(eye.x(), eye.y(), eye.z());
 
@@ -683,6 +694,8 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
         // data beyond the visible horizon.
         double pitchAngleOfHorizon_rad = acos( horizonDistance/eyeLen );
         horizonDistanceInRTTPlane = horizonDistance * sin( pitchAngleOfHorizon_rad );
+
+        OE_TEST << LC << "RTT distance to horizon: " << horizonDistanceInRTTPlane << std::endl;
     }
     else // projected map
     {
@@ -695,7 +708,7 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
         horizonDistance = DBL_MAX;
         horizonDistanceInRTTPlane = DBL_MAX;
 
-        _rttViewMatrix = osg::Matrixd::lookAt( eye, eye-worldUp*hasl, osg::Vec3(0,1,0) );
+        pvd._rttViewMatrix = osg::Matrixd::lookAt( eye, eye-worldUp*hasl, osg::Vec3(0,1,0) );
     }
 
     // create a "weighting" that weights HASL against the camera's pitch.
@@ -725,9 +738,9 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
     cv->setCalculatedNearPlane( FLT_MAX );
     cv->setCalculatedFarPlane( -FLT_MAX );
 
-    // cull the subgraph here. This doubles as the subgraph's official cull traversal
-    // and a gathering of its clip planes.
-    cv->pushStateSet( _subgraphStateSet.get() );
+    // cull the subgraph (i.e. the terrain) here. This doubles as the subgraph's official 
+    // cull traversal and a gathering of its clip planes.
+    cv->pushStateSet( pvd._subgraphStateSet.get() );
     osg::Group::traverse( *cv );
     cv->popStateSet();
 
@@ -741,47 +754,71 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
     double zFar  = cv->getCalculatedFarPlane();
     cv->clampProjectionMatrix( projMatrix, zNear, zFar );
 
-    //OE_NOTICE << std::fixed << "zNear = " << zNear << ", zFar = " << zFar << std::endl;
+    OE_TEST << LC << "Subgraph clamp: zNear = " << zNear << ", zFar = " << zFar << std::endl;
+
+    // restore the clip planes in the cull visitor, now that we have our subgraph
+    // projection matrix.
+    cv->setCalculatedNearPlane( osg::minimum(zSavedNear, zNear) );
+    cv->setCalculatedFarPlane( osg::maximum(zSavedFar, zFar) );
 
     if ( _isGeocentric )
-    {
+    {        
         // in geocentric mode, clamp the far clip plane to the horizon.
         double maxDistance = (1.0 - haslWeight)  * horizonDistance  + haslWeight * hasl;
+        maxDistance = osg::clampBelow( maxDistance, _maxHorizonDistance );
         maxDistance *= 1.5;
         if (zFar - zNear >= maxDistance)
             zFar = zNear + maxDistance;
 
         cv->clampProjectionMatrix( projMatrix, zNear, zFar );
-    }
 
-    // restore the clip planes in the cull visitor, now that we have our subgraph
-    // projection matrix.
-    cv->setCalculatedNearPlane( osg::minimum(zSavedNear, zNear) );
-    cv->setCalculatedFarPlane( osg::maximum(zSavedFar, zFar) );
+        OE_TEST << LC << "Horizon clamp: zNear = " << zNear << ", zFar = " << zFar << std::endl;
+    }
        
     // contruct the polyhedron representing the viewing frustum.
-    //osgShadow::ConvexPolyhedron frustumPH;
-    MyConvexPolyhedron frustumPH;
+    osgShadow::ConvexPolyhedron frustumPH;
+    //MyConvexPolyhedron frustumPH;
     frustumPH.setToUnitFrustum( true, true );
     osg::Matrixd MVP = *cv->getModelViewMatrix() * projMatrix;
     osg::Matrixd inverseMVP;
     inverseMVP.invert(MVP);
     frustumPH.transform( inverseMVP, MVP );
 
-    // make a polyhedron representing the viewing frustum of the overlay, and cut it to
-    // intersect the viewing frustum:
-    osgShadow::ConvexPolyhedron visiblePH;
+    // take the bounds of the overlay graph, constrained to the view frustum:
+    osg::BoundingSphere visibleOverlayBS;
+    osg::Polytope frustumPT;
+    frustumPH.getPolytope( frustumPT );
 
-    // get the bounds of the overlay graph model. 
+    // get a bounds of the overlay graph as a whole, and convert that to a
+    // bounding box. We can probably do better with a ComputeBoundsVisitor but it
+    // will be slower.
+    visibleOverlayBS = _overlayGraph->getBound();
     osg::BoundingBox visibleOverlayBBox;
-    CoarsePolytopeIntersector cpi( frustumPH, visibleOverlayBBox );
-    _overlayGraph->accept( cpi );
-    visiblePH.setToBoundingBox( visibleOverlayBBox );
+    visibleOverlayBBox.expandBy( visibleOverlayBS );
+
+    // intersect that bound with the camera frustum:
+    osg::Polytope visibleOverlayPT;
+    visibleOverlayPT.setToBoundingBox( visibleOverlayBBox );
+    osgShadow::ConvexPolyhedron visiblePH( frustumPH );
+    visiblePH.cut( visibleOverlayPT );
+
+#if 0
+    // This method does not work. Like with larged paged feature sets.
+
+    ComputeBoundsWithinFrustum cbwp( frustumPH, _srs.get(), _isGeocentric, visibleOverlayBS );
+    _overlayGraph->accept( cbwp );
+
+    // convert the visible geometry bounding sphere into a world-space polytope:
+    osg::Polytope visiblePT;
+    osgShadow::ConvexPolyhedron visiblePH( frustumPH );
 
     // this intersects the viewing frustum with the subgraph's bounding box, basically giving us
     // a "minimal" polyhedron containing all potentially visible geometry. (It can't be truly 
     // minimal without clipping at the geometry level, but that would probably be too expensive.)
-    visiblePH.cut( frustumPH );
+
+    computeWorldBoundingPolytope( visibleOverlayBS, _srs.get(), _isGeocentric, visiblePT );
+    visiblePH.cut( visiblePT );
+#endif
 
     // calculate the extents for our orthographic RTT camera (clamping it to the
     // visible horizon)
@@ -809,15 +846,18 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
         double new_eMax;
         getMinMaxExtentInSilhouette( bc, rttLookVec, verts, eMin, new_eMax );
         eMax = std::min( eMax, new_eMax );
-        _rttViewMatrix = osg::Matrixd::lookAt( bc, osg::Vec3d(0,0,0), osg::Vec3d(0,0,1) );
-        _rttProjMatrix = osg::Matrixd::ortho( -eMax, eMax, -eMax, eMax, -eyeLen, bc.length() );
-
-        //OE_INFO << std::fixed << std::setprecision(1)
-        //    << "eMax = " << eMax
-        //    << ", bc = " << bc.x() << ", " << bc.y() << ", " << bc.z()
-        //    << ", eye = " << eye.x() << ", " << eye.y() << ", " << eye.z()
-        //    << ", eyeLen = " << eyeLen
-        //    << std::endl;
+        pvd._rttViewMatrix = osg::Matrixd::lookAt( bc, osg::Vec3d(0,0,0), osg::Vec3d(0,0,1) );
+        pvd._rttProjMatrix = osg::Matrixd::ortho( -eMax, eMax, -eMax, eMax, -eyeLen, bc.length() );
+
+        OE_TEST << LC 
+            << "1/2 RTT ortho span: " << eMax << ", near=" << -eyeLen << ", far=" << bc.length() << std::endl;
+
+        OE_TEST << LC
+            << "eMax = " << eMax
+            << ", bc = " << bc.x() << ", " << bc.y() << ", " << bc.z()
+            << ", eye = " << eye.x() << ", " << eye.y() << ", " << eye.z()
+            << ", eyeLen = " << eyeLen
+            << std::endl;
     }
     else
     {
@@ -826,57 +866,102 @@ OverlayDecorator::cull( osgUtil::CullVisitor* cv )
         double new_eMax;
         getMinMaxExtentInSilhouette( from, osg::Vec3d(0,0,-1), verts, eMin, new_eMax );   
         eMax = std::min( eMax, new_eMax ); 
-        _rttProjMatrix = osg::Matrix::ortho( -eMax, eMax, -eMax, eMax, -eyeLen, eyeLen );
+        pvd._rttProjMatrix = osg::Matrix::ortho( -eMax, eMax, -eMax, eMax, -eyeLen, eyeLen );
     }
 
     //OE_NOTICE << LC << "EMIN = " << eMin << ", EMAX = " << eMax << std::endl;
 
-    if ( _useWarping )
+    if ( _dumpRequested )
     {
-        // calculate the warping paramaters. This uses shaders to warp the verts and
-        // tex coords to favor data closer to the camera when necessary.
-
-    #define WARP_LIMIT 3.0
+        static const char* fn = "convexpolyhedron.osg";
 
-        double pitchStrength = ( camLookVec * rttLookVec ); // eye pitch relative to rtt pitch
-        double devStrength = 1.0 - (pitchStrength*pitchStrength);
-        double haslStrength = 1.0 - osg::clampBetween( hasl/1e6, 0.0, 1.0 );
+        // camera frustum:
+        {
+            osgShadow::ConvexPolyhedron frustumPH;
+            frustumPH.setToUnitFrustum( true, true );
+            osg::Matrixd MVP = *cv->getModelViewMatrix() * projMatrix;
+            osg::Matrixd inverseMVP;
+            inverseMVP.invert(MVP);
+            frustumPH.transform( inverseMVP, MVP );
+            frustumPH.dumpGeometry(0,0,0,fn);
+        }
+        osg::Node* camNode = osgDB::readNodeFile(fn);
+        camNode->setName("camera");
 
-        _warp = 1.0 + devStrength * haslStrength * WARP_LIMIT;
+        //// visible PH or overlay:
+        //visiblePHBeforeCut.dumpGeometry(0,0,0,fn,osg::Vec4(0,1,1,1),osg::Vec4(0,1,1,.25));
+        //osg::Node* overlay = osgDB::readNodeFile(fn);
+        //overlay->setName("overlay");
 
-        if ( _visualizeWarp )
-            _warp = 4.0;
+        // visible overlay Polyherdron AFTER frustum intersection:
+        visiblePH.dumpGeometry(0,0,0,fn,osg::Vec4(1,.5,1,1),osg::Vec4(1,.5,0,.25));
+        osg::Node* intersection = osgDB::readNodeFile(fn);
+        intersection->setName("intersection");
 
-#if 0
-        OE_INFO << LC << std::fixed
-            << "hasl=" << hasl
-            << ", eMin=" << eMin
-            << ", eMax=" << eMax
-            << ", eyeLen=" << eyeLen
-            //<< ", ratio=" << ratio
-            //<< ", dev=" << devStrength
-            //<< ", has=" << haeStrength
-            << ", warp=" << _warp
-            << std::endl;
-#endif
+        // RTT frustum:
+        {
+            osgShadow::ConvexPolyhedron rttPH;
+            rttPH.setToUnitFrustum( true, true );
+            osg::Matrixd MVP = pvd._rttViewMatrix * pvd._rttProjMatrix;
+            osg::Matrixd inverseMVP;
+            inverseMVP.invert(MVP);
+            rttPH.transform( inverseMVP, MVP );
+            rttPH.dumpGeometry(0,0,0,fn,osg::Vec4(1,1,0,1),osg::Vec4(1,1,0,0.25));
+        }
+        osg::Node* rttNode = osgDB::readNodeFile(fn);
+        rttNode->setName("rtt");
+
+        // EyePoint
+        osg::Geode* dsg = new osg::Geode();
+        dsg->addDrawable( new osg::ShapeDrawable(new osg::Box(osg::Vec3f(0,0,0), 10.0f)));
+        osg::AutoTransform* dsgmt = new osg::AutoTransform();
+        dsgmt->setPosition( osg::Vec3d(0,0,0) * osg::Matrix::inverse(*cv->getModelViewMatrix()) );
+        dsgmt->setAutoScaleToScreen(true);
+        dsgmt->addChild( dsg );
+
+        osg::Group* g = new osg::Group();
+        g->getOrCreateStateSet()->setAttribute(new osg::Program(), 0);
+        g->addChild(camNode);
+        //g->addChild(overlay);
+        g->addChild(intersection);
+        g->addChild(rttNode);
+        g->addChild(dsgmt);
+
+        _dump = g;
+        _dumpRequested = false;
     }
+}
 
-#if 0
-    if ( s_frame++ % 100 == 0 )
+OverlayDecorator::PerViewData&
+OverlayDecorator::getPerViewData(osg::NodeVisitor* key)
+{
+    // first check for it:
     {
-        osgShadow::ConvexPolyhedron rttPH;
-        rttPH.setToUnitFrustum( true, true );
-        osg::Matrixd MVP = _rttViewMatrix * _rttProjMatrix;
-        osg::Matrixd inverseMVP;
-        inverseMVP.invert(MVP);
-        rttPH.transform( inverseMVP, MVP );
-        rttPH.dumpGeometry();
+        Threading::ScopedReadLock shared( _perViewDataMutex );
+        PerViewDataMap::iterator i = _perViewData.find(key);
+        if ( i != _perViewData.end() )
+        {
+            if ( !i->second._rttCamera.valid() )
+                initializePerViewData( i->second );
+
+            return i->second;
+        }
     }
-#endif
 
-    // projector matrices are the same as for the RTT camera. Tim was right.
-    _projectorViewMatrix = _rttViewMatrix;
-    _projectorProjMatrix = _rttProjMatrix;
+    // then exclusive lock and make/check it:
+    {
+        Threading::ScopedWriteLock exclusive( _perViewDataMutex );
+
+        // double check pattern:
+        PerViewDataMap::iterator i = _perViewData.find(key);
+        if ( i != _perViewData.end() )
+            return i->second;
+
+        PerViewData& pvd = _perViewData[key];
+        initializePerViewData(pvd);
+
+        return pvd;
+    }    
 }
 
 void
@@ -886,44 +971,82 @@ OverlayDecorator::traverse( osg::NodeVisitor& nv )
 
     if ( _overlayGraph.valid() && _textureUnit.isSet() )
     {
-        if ( isCull )
+        // in the CULL traversal, find the per-view data associated with the 
+        // cull visitor's current camera view and work with that:
+        if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
+        {
+            osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( &nv );
+            PerViewData& pvd = getPerViewData( cv );
+            if ( cv->getCurrentCamera() )
+            {
+                if ( (_rttTraversalMask & nv.getTraversalMask()) != 0 )
+                {
+                    if (checkNeedsUpdate(pvd))
+                    {
+                        updateRTTCamera(pvd);
+                    }
+
+                    if ( pvd._texGenNode.valid() ) // FFP only
+                        pvd._texGenNode->accept( nv );
+
+                    cull( cv, pvd );
+                    pvd._rttCamera->accept( nv );
+                }
+                else
+                {
+                    osg::Group::traverse(nv);
+                }
+            }
+
+            // debug-- (draws the overlay at its native location as well)
+            //_overlayGraph->accept(nv);
+        }
+
+        else if ( nv.getVisitorType() == nv.UPDATE_VISITOR )
         {
-            osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>( &nv );
-            if ( cv )
+            if ( _overlayGraph.valid() )
             {
-                cull( cv );
+                _overlayGraph->accept( nv );
             }
-            _rttCamera->accept( nv );
-            
-            // note: texgennode doesn't need a cull, and the subgraph
-            // is traversed in cull().
+            osg::Group::traverse( nv );
         }
 
         else
         {
-            if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+            // Some other type of visitor (like an intersection). Skip the RTT camera and
+            // traverse the overlay graph directly.
+            if ( _overlayGraph.valid() )
             {
-                updateRTTCamera( nv );
+                _overlayGraph->accept( nv );
             }
-            _rttCamera->accept( nv );
-            _texGenNode->accept( nv );
 
             osg::Group::traverse( nv );
-        }    
+        }
     }
     else
     {
-        osgUtil::CullVisitor* cv = 0L;
-        if ( isCull )
-            cv = dynamic_cast<osgUtil::CullVisitor*>( &nv );
+        osg::Group::traverse( nv );
+    }
+}
 
-        if ( cv )
-            cv->pushStateSet( _subgraphStateSet.get() );
 
-        osg::Group::traverse( nv );
+bool
+OverlayDecorator::checkNeedsUpdate( OverlayDecorator::PerViewData& pvd )
+{
+    return
+        pvd._rttCamera->getViewMatrix()       != pvd._rttViewMatrix ||
+        pvd._rttCamera->getProjectionMatrix() != pvd._rttProjMatrix ||
+        (_overlayGraph.valid() && _overlayGraph->getNumChildrenRequiringUpdateTraversal() > 0);
+}
 
-        if ( cv )
-            cv->popStateSet();
-    }
+
+double OverlayDecorator::getMaxHorizonDistance( ) const
+{
+    return _maxHorizonDistance;
 }
 
+void
+OverlayDecorator::setMaxHorizonDistance( double horizonDistance )
+{
+    _maxHorizonDistance = horizonDistance;
+}
diff --git a/src/osgEarth/Pickers b/src/osgEarth/Pickers
new file mode 100644
index 0000000..d7bdefe
--- /dev/null
+++ b/src/osgEarth/Pickers
@@ -0,0 +1,96 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_PICKING_UTILS_H
+#define OSGEARTH_PICKING_UTILS_H
+
+#include <osgEarth/Common>
+#include <osgViewer/View>
+#include <osgUtil/PolytopeIntersector>
+
+namespace osgEarth
+{
+
+    /**
+     * Utility for picking objects from the scene.
+     */
+    class OSGEARTH_EXPORT Picker
+    {
+    public:
+        typedef osgUtil::PolytopeIntersector::Intersection  Hit;
+        typedef osgUtil::PolytopeIntersector::Intersections Hits;
+
+        enum Limit {
+            NO_LIMIT,
+            LIMIT_ONE_PER_DRAWABLE,
+            LIMIT_ONE,
+            LIMIT_NEAREST
+        };
+
+    public:
+        /** 
+         * Constructs a picker that will pick data from the given view,
+         * and restrict its search to the given graph.
+         *
+         * @param view          View under which to pick
+         * @param graph         Subgraph within which to restrict the pick
+         * @param traversalMask Node mask to apply to the pick visitor
+         * @param buffer        Pick buffer around the click (pixels)
+         */
+        Picker( 
+            osgViewer::View* view,
+            osg::Node*       graph         =0L, 
+            unsigned         traversalMask =~0,
+            float            buffer        =5.0f,
+            Limit            limit         =LIMIT_ONE);
+
+        /** dtor */
+        virtual ~Picker() { }
+
+        /**
+         * Picks geometry under the specified viewport coordinates. The results
+         * are stores in "results". You can typically get the mouseX and mouseY
+         * from osgGA::GUIEventAdapter getX() and getY().
+         */
+        bool pick( float mouseX, float mouseY, Hits& results ) const;
+
+        /**
+         * Finds and returns the lowest node of type "T" in a hit, or 0L if no such
+         * node exists.
+         */
+        template<typename T>
+        T* getNode( const Hit& hit ) const {
+            for( osg::NodePath::const_reverse_iterator i = hit.nodePath.rbegin(); i != hit.nodePath.rend(); ++i ) {
+               T* node = dynamic_cast<T*>(*i);
+               if ( node ) return node;
+            }
+            return 0L;
+        }
+
+
+    protected:
+        osgViewer::View*              _view;
+        osg::ref_ptr<osg::Node>       _root;
+        osg::NodePath                 _path;
+        unsigned                      _travMask;
+        float                         _buffer;
+        Limit                         _limit;
+    };
+}
+
+#endif // OSGEARTH_PICKING_UTILS_H
diff --git a/src/osgEarth/Pickers.cpp b/src/osgEarth/Pickers.cpp
new file mode 100644
index 0000000..a24c4af
--- /dev/null
+++ b/src/osgEarth/Pickers.cpp
@@ -0,0 +1,132 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/Pickers>
+#include <osgUtil/PolytopeIntersector>
+#include <osg/Polytope>
+
+#define LC "[Picker] "
+
+using namespace osgEarth;
+
+Picker::Picker( osgViewer::View* view, osg::Node* root, unsigned travMask, float buffer, Limit limit ) :
+_view    ( view ),
+_root    ( root ),
+_travMask( travMask ),
+_buffer  ( buffer ),
+_limit   ( limit )
+{
+    if ( root )
+        _path = root->getParentalNodePaths()[0];
+}
+
+bool
+Picker::pick( float x, float y, Hits& results ) const
+{
+    float local_x, local_y = 0.0;
+    const osg::Camera* camera = _view->getCameraContainingPosition(x, y, local_x, local_y);
+    if ( !camera )
+        camera = _view->getCamera();
+
+    osg::ref_ptr<osgUtil::PolytopeIntersector> picker;
+
+    double buffer_x = _buffer, buffer_y = _buffer;
+    if ( camera->getViewport() )
+    {
+        double aspectRatio = camera->getViewport()->width()/camera->getViewport()->height();
+        buffer_x *= aspectRatio;
+        buffer_y /= aspectRatio;
+    }
+    
+    double zNear = 0.00001;
+    double zFar  = 1.0;
+
+    double xMin = local_x - buffer_x;
+    double xMax = local_x + buffer_x;
+    double yMin = local_y - buffer_y;
+    double yMax = local_y + buffer_y;
+
+    osg::Polytope winPT;
+    winPT.add(osg::Plane( 1.0, 0.0, 0.0, -xMin));
+    winPT.add(osg::Plane(-1.0, 0.0 ,0.0,  xMax));
+    winPT.add(osg::Plane( 0.0, 1.0, 0.0, -yMin));
+    winPT.add(osg::Plane( 0.0,-1.0, 0.0,  yMax));
+    winPT.add(osg::Plane( 0.0, 0.0, 1.0, zNear));
+
+    osg::Matrix windowMatrix;
+
+    if ( _root.valid() )
+    {
+        osg::Matrix matrix;
+
+        if (camera->getViewport())
+        {
+            windowMatrix = camera->getViewport()->computeWindowMatrix();
+            matrix.preMult( windowMatrix );
+            zNear = 0.0;
+            zFar = 1.0;
+        }
+
+        matrix.preMult( camera->getProjectionMatrix() );
+        matrix.preMult( camera->getViewMatrix() );
+
+        osg::NodePath prunedNodePath( _path.begin(), _path.end()-1 );
+        matrix.preMult( osg::computeWorldToLocal(prunedNodePath) );
+
+        osg::Polytope transformedPT;
+        transformedPT.setAndTransformProvidingInverse( winPT, matrix );
+        
+        picker = new osgUtil::PolytopeIntersector(osgUtil::Intersector::MODEL, transformedPT);
+    }
+
+    else
+    {
+        osgUtil::Intersector::CoordinateFrame cf = camera->getViewport() ? osgUtil::Intersector::WINDOW : osgUtil::Intersector::PROJECTION;
+        picker = new osgUtil::PolytopeIntersector(cf, winPT);
+    }
+
+    //picker->setIntersectionLimit( (osgUtil::Intersector::IntersectionLimit)_limit );
+    osgUtil::IntersectionVisitor iv(picker.get());
+
+    // in MODEL mode, we need to window and proj matrixes in order to support some of the 
+    // features in osgEarth (like Annotation::OrthoNode).
+    if ( _root.valid() )
+    {
+        iv.pushWindowMatrix( new osg::RefMatrix(windowMatrix) );
+        iv.pushProjectionMatrix( new osg::RefMatrix(camera->getProjectionMatrix()) );
+        iv.pushViewMatrix( new osg::RefMatrix(camera->getViewMatrix()) );
+    }
+
+    iv.setTraversalMask( _travMask );
+
+    if ( _root.valid() )
+        _path.back()->accept(iv);
+    else
+        const_cast<osg::Camera*>(camera)->accept(iv);
+
+    if (picker->containsIntersections())
+    {
+        results = picker->getIntersections();
+        return true;
+    }
+    else
+    {
+        results.clear();
+        return false;
+    }
+}
diff --git a/src/osgEarth/Profile b/src/osgEarth/Profile
index 693f821..2386f07 100644
--- a/src/osgEarth/Profile
+++ b/src/osgEarth/Profile
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,8 +24,6 @@
 #include <osgEarth/Config>
 #include <osgEarth/GeoData>
 #include <osgEarth/SpatialReference>
-#include <osgEarth/VerticalSpatialReference>
-#include <osg/CoordinateSystemNode>
 #include <vector>
 
 namespace osgEarth
@@ -41,6 +39,9 @@ namespace osgEarth
         ProfileOptions( const ConfigOptions& options =ConfigOptions() );
         ProfileOptions( const std::string& namedProfile );
 
+        /** dtor */
+        virtual ~ProfileOptions() { }
+
         /** Returns true if this configuration is well-defined and usable */
         bool defined() const;
 
@@ -120,14 +121,12 @@ namespace osgEarth
             const SpatialReference* srs,
             double xmin, double ymin, double xmax, double ymax,
             double geoxmin, double geoymin, double geoxmax, double geoymax,
-            const VerticalSpatialReference* vsrs =0L,
             unsigned int numTilesWideAtLod0 =0,
             unsigned int numTilesHighAtLod0 =0 );
 
         static const Profile* create(
             const SpatialReference* srs,
             double xmin, double ymin, double xmax, double ymax,
-            const VerticalSpatialReference* vsrs =0L,
             unsigned int numTilesWideAtLod0 =0,
             unsigned int numTilesHighAtLod0 =0 );
 
@@ -161,12 +160,6 @@ namespace osgEarth
         const SpatialReference* getSRS() const;
 
         /**
-         * Gest the vertical spatial reference system underlying this profile.
-         */
-        const VerticalSpatialReference* getVerticalSRS() const { return _vsrs.get(); }
-        void setVerticalSRS( const VerticalSpatialReference* value ) { _vsrs = value; }
-
-        /**
          * Gets the profile type
          */
         ProfileType getProfileType() const;  
@@ -195,10 +188,21 @@ namespace osgEarth
 
         /**
          * Gets whether the two profiles can be treated as equivalent.
+         * @param rhs
+         *      Comparison profile
          */
         bool isEquivalentTo( const Profile* rhs ) const;
 
         /**
+         * Gets whether the two profiles can be treated as equivalent (without regard
+         * for any vertical datum information - i.e., still returns true if the SRS
+         * vertical datums are different)
+         * @param rhs
+         *      Comparison profile
+         */
+        bool isHorizEquivalentTo( const Profile* rhs ) const;
+
+        /**
          *Gets the tile dimensions at the given lod.
          */
         void getTileDimensions(unsigned int lod, double& out_width, double& out_height) const;
@@ -241,12 +245,41 @@ namespace osgEarth
          */
         std::string toString() const;
 
+        /**
+         * Builds and returns a ProfileOptions for this profile
+         */
+        ProfileOptions toProfileOptions() const;
+
+        /**
+         * Returns a signature hash code unique to this profile.
+         */
+        const std::string& getFullSignature() const { return _fullSignature; }
+
+        /**
+         * Returns a signature hash code that uniquely identifies this profile
+         * without including any vertical datum information. This is useful for
+         * seeing if two profiles are horizontally compatible.
+         */
+        const std::string& getHorizSignature() const { return _horizSignature; }
+
+        /**
+         * Given another Profile and an LOD in that Profile, determine 
+         * the LOD in this Profile that is nearly equivalent.
+         */
+        unsigned int getEquivalentLOD( const Profile* profile, unsigned int lod ) const;
+
+    public:
+
+        /**
+         * Makes a clone of this profile but replaces the SRS with a custom one.
+         */
+        Profile* overrideSRS( const SpatialReference* srs ) const;
+
     protected:       
 
         Profile(
             const SpatialReference* srs,
             double xmin, double ymin, double xmax, double ymax,
-            const VerticalSpatialReference* vsrs,
             unsigned int x_tiles_at_lod0 =0,
             unsigned int y_tiles_at_lod0 =0 );      
 
@@ -254,9 +287,11 @@ namespace osgEarth
             const SpatialReference* srs,
             double xmin, double ymin, double xmax, double ymax,
             double geoxmin, double geoymin, double geoxmax, double geoymax,
-            const VerticalSpatialReference* vsrs,
             unsigned int x_tiles_at_lod0 =0,
             unsigned int y_tiles_at_lod0 =0 );
+
+        /** dtor */
+        virtual ~Profile() { }
         
 
         virtual void addIntersectingTiles(
@@ -266,11 +301,12 @@ namespace osgEarth
 
     private:
 
-        GeoExtent _extent;
-        GeoExtent _latlong_extent;
-        osg::ref_ptr<const VerticalSpatialReference> _vsrs;
-        unsigned int _numTilesWideAtLod0;
-        unsigned int _numTilesHighAtLod0;
+        GeoExtent   _extent;
+        GeoExtent   _latlong_extent;
+        unsigned    _numTilesWideAtLod0;
+        unsigned    _numTilesHighAtLod0;
+        std::string _fullSignature;
+        std::string _horizSignature;
     };
 }
 
diff --git a/src/osgEarth/Profile.cpp b/src/osgEarth/Profile.cpp
index 20dd6ae..f5ae251 100644
--- a/src/osgEarth/Profile.cpp
+++ b/src/osgEarth/Profile.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,7 @@
 #include <osgEarth/TileKey>
 #include <osgEarth/Cube>
 #include <osgEarth/SpatialReference>
+#include <osgEarth/StringUtils>
 #include <osgDB/FileNameUtils>
 #include <algorithm>
 #include <sstream>
@@ -33,11 +34,11 @@ using namespace osgEarth;
 //------------------------------------------------------------------------
 
 ProfileOptions::ProfileOptions( const ConfigOptions& options ) :
-ConfigOptions( options ),
-_namedProfile( "" ),
-_srsInitString( "" ),
-_vsrsInitString( "" ),
-_bounds( Bounds() ),
+ConfigOptions      ( options ),
+_namedProfile      ( "" ),
+_srsInitString     ( "" ),
+_vsrsInitString    ( "" ),
+_bounds            ( Bounds() ),
 _numTilesWideAtLod0( 1 ),
 _numTilesHighAtLod0( 1 )
 {
@@ -45,9 +46,9 @@ _numTilesHighAtLod0( 1 )
 }
 
 ProfileOptions::ProfileOptions( const std::string& namedProfile ) :
-_srsInitString( "" ),
-_vsrsInitString( "" ),
-_bounds( Bounds() ),
+_srsInitString     ( "" ),
+_vsrsInitString    ( "" ),
+_bounds            ( Bounds() ),
 _numTilesWideAtLod0( 1 ),
 _numTilesHighAtLod0( 1 )
 {
@@ -61,7 +62,9 @@ ProfileOptions::fromConfig( const Config& conf )
         _namedProfile = conf.value();
 
     conf.getIfSet( "srs", _srsInitString );
-    conf.getIfSet( "vsrs", _vsrsInitString );
+
+    conf.getIfSet( "vdatum", _vsrsInitString );
+    conf.getIfSet( "vsrs", _vsrsInitString ); // back compat
 
     if ( conf.hasValue( "xmin" ) && conf.hasValue( "ymin" ) && conf.hasValue( "xmax" ) && conf.hasValue( "ymax" ) )
     {
@@ -87,7 +90,7 @@ ProfileOptions::getConfig() const
     else
     {
         conf.updateIfSet( "srs", _srsInitString );
-        conf.updateIfSet( "vsrs", _vsrsInitString );
+        conf.updateIfSet( "vdatum", _vsrsInitString );
 
         if ( _bounds.isSet() )
         {
@@ -121,44 +124,58 @@ Profile::create(const std::string& srsInitString,
                 unsigned int numTilesWideAtLod0,
                 unsigned int numTilesHighAtLod0)
 {
-    return new Profile(
-        SpatialReference::create( srsInitString ),
-        xmin, ymin, xmax, ymax,
-        VerticalSpatialReference::create( vsrsInitString ),
-        numTilesWideAtLod0,
-        numTilesHighAtLod0 );
+    osg::ref_ptr<osgEarth::SpatialReference> srs = SpatialReference::create( srsInitString, vsrsInitString );
+    if (srs.valid() == true)
+    {
+        return new Profile(
+            srs.get(),
+            xmin, ymin, xmax, ymax,
+            numTilesWideAtLod0,
+            numTilesHighAtLod0 );
+    }
+
+    OE_WARN << LC << "Failed to create profile; unrecognized SRS: \"" << srsInitString << "\"" << std::endl;
+    return NULL;
 }
 
 const Profile*
 Profile::create(const SpatialReference* srs,
                 double xmin, double ymin, double xmax, double ymax,
-                const VerticalSpatialReference* vsrs,
                 unsigned int numTilesWideAtLod0,
                 unsigned int numTilesHighAtLod0)
 {
-    return new Profile(
-        srs,
-        xmin, ymin, xmax, ymax,
-        vsrs,
-        numTilesWideAtLod0,
-        numTilesHighAtLod0 );
+    if (srs != NULL)
+    {
+        return new Profile(
+            srs,
+            xmin, ymin, xmax, ymax,
+            numTilesWideAtLod0,
+            numTilesHighAtLod0 );
+    }
+
+    OE_WARN << LC << "Failed to create profile; null SRS" << std::endl;
+    return 0L;
 }
 
 const Profile*
 Profile::create(const SpatialReference* srs,
                 double xmin, double ymin, double xmax, double ymax,
                 double geoxmin, double geoymin, double geoxmax, double geoymax,
-                const VerticalSpatialReference* vsrs,
                 unsigned int numTilesWideAtLod0,
                 unsigned int numTilesHighAtLod0)
 {
-    return new Profile(
-        srs,
-        xmin, ymin, xmax, ymax,
-        geoxmin, geoymin, geoxmax, geoymax,
-        vsrs,
-        numTilesWideAtLod0,
-        numTilesHighAtLod0 );
+    if ( srs )
+    {
+        return new Profile(
+            srs,
+            xmin, ymin, xmax, ymax,
+            geoxmin, geoymin, geoxmax, geoymax,
+            numTilesWideAtLod0,
+            numTilesHighAtLod0 );
+    }
+    
+    OE_WARN << LC << "Failed to create profile; null SRS" << std::endl;
+    return 0L;
 }
 
 const Profile*
@@ -167,34 +184,37 @@ Profile::create(const std::string& srsInitString,
                 unsigned int numTilesWideAtLod0,
                 unsigned int numTilesHighAtLod0)
 {
-    const Profile* named = osgEarth::Registry::instance()->getNamedProfile( srsInitString );
-    if ( named )
-        return const_cast<Profile*>( named );
-
-    osg::ref_ptr<const SpatialReference> srs = SpatialReference::create( srsInitString );
+    if ( vsrsInitString.empty() && numTilesWideAtLod0 == 0 && numTilesHighAtLod0 == 0 )
+    {
+        const Profile* named = osgEarth::Registry::instance()->getNamedProfile( srsInitString );
+        if ( named )
+            return const_cast<Profile*>( named );
+    }
 
-    osg::ref_ptr<const VerticalSpatialReference> vsrs = VerticalSpatialReference::create( vsrsInitString );
+    osg::ref_ptr<const SpatialReference> srs = SpatialReference::create( srsInitString, vsrsInitString );
 
     if ( srs.valid() && srs->isGeographic() )
     {
         return new Profile(
             srs.get(),
             -180.0, -90.0, 180.0, 90.0,
-            vsrs.get(),
             numTilesWideAtLod0, numTilesHighAtLod0 );
     }
     else if ( srs.valid() && srs->isMercator() )
     {
         // automatically figure out proper mercator extents:
-        GDAL_SCOPED_LOCK;
-        double e, dummy;
-        srs->getGeographicSRS()->transform2D( 180.0, 0.0, srs.get(), e, dummy );
-        return Profile::create( srs.get(), -e, -e, e, e, vsrs.get(), numTilesWideAtLod0, numTilesHighAtLod0 );
+        osg::Vec3d point(180.0, 0.0, 0.0);
+        srs->getGeographicSRS()->transform(point, srs.get(), point);
+        double e = point.x();
+        return Profile::create( srs.get(), -e, -e, e, e, numTilesWideAtLod0, numTilesHighAtLod0 );
+    }
+    else if ( srs.valid() )
+    {
+        OE_WARN << LC << "Failed to create profile; you must provide extents with a projected SRS." << std::endl;
     }
     else
     {
-        OE_WARN << LC << "Failed to create profile; SRS spec requires addition information: \"" << srsInitString << 
-            std::endl;
+        OE_WARN << LC << "Failed to create profile; unrecognized SRS: \"" << srsInitString << "\"" << std::endl;
     }
 
     return NULL;
@@ -241,9 +261,20 @@ Profile::create( const ProfileOptions& options )
     // Next try SRS with default extents
     else if ( options.srsString().isSet() )
     {
-        result = Profile::create(
-            options.srsString().value(),
-            options.vsrsString().value() );
+        if ( options.numTilesWideAtLod0().isSet() && options.numTilesHighAtLod0().isSet() )
+        {
+            result = Profile::create(
+                options.srsString().value(),
+                options.vsrsString().value(),
+                options.numTilesWideAtLod0().value(),
+                options.numTilesHighAtLod0().value() );
+        }
+        else
+        {
+            result = Profile::create(
+                options.srsString().value(),
+                options.vsrsString().value() );
+        }
     }
 
     return result;
@@ -254,11 +285,10 @@ Profile::create( const ProfileOptions& options )
 
 Profile::Profile(const SpatialReference* srs,
                  double xmin, double ymin, double xmax, double ymax,
-                 const VerticalSpatialReference* vsrs,
                  unsigned int numTilesWideAtLod0,
                  unsigned int numTilesHighAtLod0) :
-osg::Referenced( true ),
-_vsrs( vsrs )
+
+osg::Referenced( true )
 {
     _extent = GeoExtent( srs, xmin, ymin, xmax, ymax );
 
@@ -270,18 +300,20 @@ _vsrs( vsrs )
         _extent :
         _extent.transform( _extent.getSRS()->getGeographicSRS() );
 
-    if ( !_vsrs.valid() )
-        _vsrs = Registry::instance()->getDefaultVSRS();
+    // make a profile sig (sans srs) and an srs sig for quick comparisons.
+    ProfileOptions temp = toProfileOptions();
+    _fullSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
+    temp.vsrsString() = "";
+    _horizSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
 }
 
 Profile::Profile(const SpatialReference* srs,
                  double xmin, double ymin, double xmax, double ymax,
                  double geo_xmin, double geo_ymin, double geo_xmax, double geo_ymax,
-                 const VerticalSpatialReference* vsrs,
                  unsigned int numTilesWideAtLod0,
                  unsigned int numTilesHighAtLod0 ) :
-osg::Referenced( true ),
-_vsrs( vsrs )
+
+osg::Referenced( true )
 {
     _extent = GeoExtent( srs, xmin, ymin, xmax, ymax );
 
@@ -292,8 +324,14 @@ _vsrs( vsrs )
         srs->getGeographicSRS(),
         geo_xmin, geo_ymin, geo_xmax, geo_ymax );
 
-    if ( !_vsrs.valid() )
-        _vsrs = Registry::instance()->getDefaultVSRS();
+    //if ( !_vsrs.valid() )
+    //    _vsrs = Registry::instance()->getDefaultVSRS();
+
+    // make a profile sig (sans srs) and an srs sig for quick comparisons.
+    ProfileOptions temp = toProfileOptions();
+    _fullSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
+    temp.vsrsString() = "";
+    _horizSignature = Stringify() << std::hex << hashString( temp.getConfig().toJSON() );
 }
 
 Profile::ProfileType
@@ -329,15 +367,39 @@ Profile::getLatLongExtent() const {
 std::string
 Profile::toString() const
 {
-    std::stringstream buf;
-    buf << "[srs=" << _extent.getSRS()->getName() << ", min=" << _extent.xMin() << "," << _extent.yMin()
+    const SpatialReference* srs = _extent.getSRS();
+    return Stringify()
+        << std::setprecision(16)
+        << "[srs=" << srs->getName() << ", min=" << _extent.xMin() << "," << _extent.yMin()
         << " max=" << _extent.xMax() << "," << _extent.yMax()
         << " lod0=" << _numTilesWideAtLod0 << "," << _numTilesHighAtLod0
-        << " vsrs=" << ( _vsrs.valid() ? _vsrs->getName() : "default" )
+        << " vdatum=" << (srs->getVerticalDatum() ? srs->getVerticalDatum()->getName() : "geodetic")
         << "]";
-    std::string bufStr;
-	bufStr = buf.str();
-	return bufStr;
+}
+
+ProfileOptions
+Profile::toProfileOptions() const
+{
+    ProfileOptions op;
+    op.srsString() = getSRS()->getHorizInitString();
+    op.vsrsString() = getSRS()->getVertInitString();
+    op.bounds()->xMin() = _extent.xMin();
+    op.bounds()->yMin() = _extent.yMin();
+    op.bounds()->xMax() = _extent.xMax();
+    op.bounds()->yMax() = _extent.yMax();
+    op.numTilesWideAtLod0() = _numTilesWideAtLod0;
+    op.numTilesHighAtLod0() = _numTilesHighAtLod0;
+    return op;
+}
+
+
+Profile*
+Profile::overrideSRS( const SpatialReference* srs ) const
+{
+    return new Profile(
+        srs,
+        _extent.xMin(), _extent.yMin(), _extent.xMax(), _extent.yMax(),
+        _numTilesWideAtLod0, _numTilesHighAtLod0 );
 }
 
 void
@@ -384,12 +446,13 @@ Profile::getProfileTypeFromSRS(const std::string& srs_string)
 bool
 Profile::isEquivalentTo( const Profile* rhs ) const
 {
-    return
-        rhs &&
-        _extent.isValid() && rhs->getExtent().isValid() &&
-        _extent == rhs->getExtent() &&
-        _numTilesWideAtLod0 == rhs->_numTilesWideAtLod0 &&
-        _numTilesHighAtLod0 == rhs->_numTilesHighAtLod0;
+    return rhs && getFullSignature() == rhs->getFullSignature();
+}
+
+bool
+Profile::isHorizEquivalentTo( const Profile* rhs ) const
+{
+    return rhs && getHorizSignature() == rhs->getHorizSignature();
 }
 
 void
@@ -469,9 +532,14 @@ Profile::clampAndTransformExtent( const GeoExtent& input, bool* out_clamped ) co
         input :
         input.transform( geo_srs );
 
+    // bail out on a bad transform:
     if ( !gcs_input.isValid() )
         return GeoExtent::INVALID;
 
+    // bail out if the extent's do not intersect at all:
+    if ( !gcs_input.intersects(_latlong_extent, false) )
+        return GeoExtent::INVALID;
+
     // clamp it to the profile's extents:
     GeoExtent clamped_gcs_input = GeoExtent(
         gcs_input.getSRS(),
@@ -502,7 +570,7 @@ void
 Profile::addIntersectingTiles(const GeoExtent& key_ext, std::vector<TileKey>& out_intersectingKeys) const
 {
     // assume a non-crossing extent here.
-    if ( key_ext.crossesDateLine() )
+    if ( key_ext.crossesAntimeridian() )
     {
         OE_WARN << "Profile::addIntersectingTiles cannot process date-line cross" << std::endl;
         return;
@@ -525,6 +593,7 @@ Profile::addIntersectingTiles(const GeoExtent& key_ext, std::vector<TileKey>& ou
     getTileDimensions(destLOD, destTileWidth, destTileHeight);
 
     //Find the LOD that most closely matches the area of the incoming key without going under.
+#if 0
     while (true)
     {
         currLOD++;
@@ -537,6 +606,20 @@ Profile::addIntersectingTiles(const GeoExtent& key_ext, std::vector<TileKey>& ou
         destTileWidth = w;
         destTileHeight = h;
     }
+#else
+    while( true )
+    {
+        currLOD++;
+        double w, h;
+        getTileDimensions(currLOD, w,h);
+        if ( w < keyWidth || h < keyHeight ) break;
+        //double a = w * h;
+        //if (a < keyArea) break;
+        destLOD = currLOD;
+        destTileWidth = w;
+        destTileHeight = h;
+    }
+#endif
 
     //OE_DEBUG << std::fixed << "  Source Tile: " << key.getLevelOfDetail() << " (" << keyWidth << ", " << keyHeight << ")" << std::endl;
     OE_DEBUG << std::fixed << "  Dest Size: " << destLOD << " (" << destTileWidth << ", " << destTileHeight << ")" << std::endl;
@@ -550,6 +633,13 @@ Profile::addIntersectingTiles(const GeoExtent& key_ext, std::vector<TileKey>& ou
     unsigned int numWide, numHigh;
     getNumTiles(destLOD, numWide, numHigh);
 
+    // bail out if the tiles are out of bounds.
+    if ( tileMinX >= (int)numWide || tileMinY >= (int)numHigh ||
+         tileMaxX < 0 || tileMaxY < 0 )
+    {
+        return;
+    }
+
     tileMinX = osg::clampBetween(tileMinX, 0, (int)numWide-1);
     tileMaxX = osg::clampBetween(tileMaxX, 0, (int)numWide-1);
     tileMinY = osg::clampBetween(tileMinY, 0, (int)numHigh-1);
@@ -601,10 +691,10 @@ Profile::getIntersectingTiles(const GeoExtent& extent, std::vector<TileKey>& out
             return;
     }
 
-    if ( ext.crossesDateLine() )
+    if ( ext.crossesAntimeridian() )
     {
         GeoExtent first, second;
-        if (ext.splitAcrossDateLine( first, second ))
+        if (ext.splitAcrossAntimeridian( first, second ))
         {
             addIntersectingTiles( first, out_intersectingKeys );
             addIntersectingTiles( second, out_intersectingKeys );
@@ -615,3 +705,45 @@ Profile::getIntersectingTiles(const GeoExtent& extent, std::vector<TileKey>& out
         addIntersectingTiles( ext, out_intersectingKeys );
     }
 }
+
+unsigned int
+Profile::getEquivalentLOD( const Profile* profile, unsigned int lod ) const
+{    
+    //If the profiles are equivalent, just use the incoming lod
+    if (profile->isEquivalentTo( this ) ) 
+        return lod;
+
+    double rhsWidth, rhsHeight;
+    profile->getTileDimensions( lod, rhsWidth, rhsHeight );
+
+    // safety catch
+    if ( osg::equivalent(rhsWidth, 0.0) || osg::equivalent(rhsHeight, 0.0) )
+    {
+        OE_WARN << LC << "getEquivalentLOD: zero dimension" << std::endl;
+        return lod;
+    }
+
+    double targetWidth = rhsWidth, targetHeight = rhsHeight;
+
+    if ( !profile->getSRS()->isHorizEquivalentTo(getSRS()) )
+    {
+        targetWidth = profile->getSRS()->transformUnits( rhsWidth, getSRS() );
+        targetHeight = profile->getSRS()->transformUnits( rhsHeight, getSRS() );
+    }
+    
+    int currLOD = 0;
+    int destLOD = currLOD;
+
+    //Find the LOD that most closely matches the area of the incoming key without going under.
+    while( true )
+    {
+        currLOD++;
+        double w, h;
+        getTileDimensions(currLOD, w, h);
+        if ( w < targetWidth || h < targetHeight ) break;
+        //double a = w * h;
+        //if (a < keyArea) break;
+        destLOD = currLOD;
+    }
+    return destLOD;
+}
diff --git a/src/osgEarth/Progress b/src/osgEarth/Progress
index e45c5f4..2c3bc68 100644
--- a/src/osgEarth/Progress
+++ b/src/osgEarth/Progress
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -31,10 +31,10 @@ namespace osgEarth
     {
     public:
         /**
-         * Creates a new ProgressCallback
-         */
+        * Creates a new ProgressCallback
+        */
         ProgressCallback();
-	virtual ~ProgressCallback() { }
+        virtual ~ProgressCallback() { }
 
         /**
         * Callback function that will be called.
@@ -42,8 +42,8 @@ namespace osgEarth
         *        The current amount of work to be done.
         * @param total
         *        The total amount of work to be done.
-	* @param msg
-	*        Description of what is being done. Useful when total is unknown.
+        * @param msg
+        *        Description of what is being done. Useful when total is unknown.
         * @param returns
         *        Returns true if the current task should be cancelled, false otherwise.
         */
@@ -61,14 +61,14 @@ namespace osgEarth
         std::string& message() { return _message; }
 
         /**
-         *Whether or not the task should be retried.
-         */
+        *Whether or not the task should be retried.
+        */
         bool needsRetry() const { return _needsRetry;}
         /**
-         *Sets whether or not the task should be retried
-         */
+        *Sets whether or not the task should be retried
+        */
         void setNeedsRetry( bool needsRetry ) { _needsRetry = needsRetry; }
-        
+
     protected:
         volatile bool _canceled;
         std::string _message;
@@ -76,16 +76,16 @@ namespace osgEarth
     };
 
     /**
-     * ConsoleProgressCallback is a simple ProgressCallback that reports progress to the console
-     */
+    * ConsoleProgressCallback is a simple ProgressCallback that reports progress to the console
+    */
     class OSGEARTH_EXPORT ConsoleProgressCallback : public ProgressCallback
     {
     public:
         /**
-         * Creates a new ConsoleProgressCallback
-         */
+        * Creates a new ConsoleProgressCallback
+        */
         ConsoleProgressCallback();
-	virtual ~ConsoleProgressCallback() { }
+        virtual ~ConsoleProgressCallback() { }
 
         /**
         * Callback function that will be called.
diff --git a/src/osgEarth/Progress.cpp b/src/osgEarth/Progress.cpp
index 5785751..197ef62 100644
--- a/src/osgEarth/Progress.cpp
+++ b/src/osgEarth/Progress.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,8 +18,7 @@
  */
 
 #include <osgEarth/Progress>
-
-#include <osg/Notify>
+#include <osgEarth/Notify>
 
 using namespace osgEarth;
 
@@ -48,12 +47,12 @@ ConsoleProgressCallback::reportProgress(double current, double total, const std:
 {
     if (total > 0)
     {
-	double percentComplete = (current / total) * 100.0;
-	OE_NOTICE << "Completed " << percentComplete << "% " << current << " of " << total << std::endl;
+        double percentComplete = (current / total) * 100.0;
+        OE_NOTICE << "Completed " << percentComplete << "% " << current << " of " << total << std::endl;
     }
     else
     {
-	OE_NOTICE << msg << std::endl;
+        OE_NOTICE << msg << std::endl;
     }
     return false;
 }
diff --git a/src/osgEarth/Random b/src/osgEarth/Random
index 15e1d11..f5720f7 100644
--- a/src/osgEarth/Random
+++ b/src/osgEarth/Random
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -56,6 +56,9 @@ namespace osgEarth
          */
         Random( const Random& rhs );
 
+        /** dtor */
+        virtual ~Random() { }
+
         /**
          * Resets the PRNG to its initial state (initial seed).
          */
diff --git a/src/osgEarth/Random.cpp b/src/osgEarth/Random.cpp
index 6d98669..11eb497 100644
--- a/src/osgEarth/Random.cpp
+++ b/src/osgEarth/Random.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/Registry b/src/osgEarth/Registry
index f913718..ebc0a6d 100644
--- a/src/osgEarth/Registry
+++ b/src/osgEarth/Registry
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,22 +21,28 @@
 #define OSGEARTH_REGISTRY 1
 
 #include <osgEarth/Common>
-#include <osgEarth/Caching>
-#include <osgEarth/Capabilities>
-#include <osgEarth/Profile>
-#include <osgEarth/TaskService>
+#include <osgEarth/CachePolicy>
+#include <osgEarth/Units>
 #include <OpenThreads/ReentrantMutex>
 #include <OpenThreads/ScopedLock>
+#include <osgEarth/ThreadingUtils>
 #include <osg/Referenced>
 #include <osgDB/ReaderWriter>
+#include <osgText/Font>
 
 #define GDAL_SCOPED_LOCK \
     OpenThreads::ScopedLock<OpenThreads::ReentrantMutex> _slock( osgEarth::Registry::instance()->getGDALMutex() )\
-    
+
 
 namespace osgEarth
 {    
+    class Cache;
+    class Capabilities;
+    class Profile;
     class ShaderFactory;
+    class TaskServiceManager;
+    class URIReadCallback;
+    class ColorFilterRegistry;
 
     /**
      * Application-wide global repository.
@@ -53,28 +59,25 @@ namespace osgEarth
         /** Gets the global-geodetic builtin profile */
         const Profile* getGlobalGeodeticProfile() const;
 
-        /** Gets the global-meractor builtin profile */
+        /** Gets the global-meractor builtin profile (mercator/WGS84 datum) */
         const Profile* getGlobalMercatorProfile() const;
 
+        /** Gets the spherical-mercator builtin profile (mercator/sphere) */
+        const Profile* getSphericalMercatorProfile() const;
+
         /** Gets the unified cube builtin profile */
         const Profile* getCubeProfile() const;
 
         /** Access to the application-wide GDAL serialization mutex. GDAL is not thread-safe. */
         OpenThreads::ReentrantMutex& getGDALMutex();
 
-        /** Global override of map caching settings. */
-        Cache* getCacheOverride() const;
-        void setCacheOverride( Cache* cacheOverride );
-
-        /** Registers a mapping of a mime-type to an extension. A process fetching data
-          * over HTTP can use this facility to determine the proper ReaderWriter to use
-          * when there is no filename extension to rely upon.
-          */
-        void addMimeTypeExtensionMapping(const std::string fromMimeType, const std::string toExt);
+        /** The system-wide default cache. */
+        Cache* getCache() const;
+        void setCache( Cache* cache );
 
-        /** gets a reader/writer that handles the extension mapped to by one of
-          * the registered mime-types. */
-        osgDB::ReaderWriter* getReaderWriterForMimeType(const std::string& mimeType);
+        /** The system-wide default cache policy */
+        const optional<CachePolicy>& defaultCachePolicy() const { return _defaultCachePolicy; }
+        void setDefaultCachePolicy( const CachePolicy& policy ) { _defaultCachePolicy = policy; }
 
         /**
          * Whether the given filename is blacklisted
@@ -97,14 +100,17 @@ namespace osgEarth
         void clearBlacklist();
 
         /**
-         * The system wide default vertical spatial reference system.
+         * Sets or gets a default system font to use
          */
-        const VerticalSpatialReference* getDefaultVSRS() const;
+        void setDefaultFont( osgText::Font* font );
+        osgText::Font* getDefaultFont();
 
         /**
-         * Gets the graphics hardware capabilities for this platform
+         * The graphics hardware capabilities for this platform.
          */
         const Capabilities& getCapabilities() const;
+        void setCapabilities( Capabilities* caps );
+        static const Capabilities& capabilities() { return instance()->getCapabilities(); }
 
         /**
          * Gets or sets the default shader factory. You can replace the default
@@ -126,11 +132,14 @@ namespace osgEarth
         UID createUID();
 
         /**
-         * Gets or sets the local root of the system default cache.
+         * Sets a global read callback for URI objects.
          */
-        void setCacheDirectory( const std::string& dir );
+        void setURIReadCallback( URIReadCallback* callback );
 
-        const std::string& getCacheDirectory() const;
+        /**
+         * Gets the global read callback for URI objects.
+         */
+        URIReadCallback* getURIReadCallback() const;
 
         /**
          * Gets the default set of osgDB::Options to use.
@@ -143,11 +152,23 @@ namespace osgEarth
          */
         osgDB::Options* cloneOrCreateOptions( const osgDB::Options* options =0L ) const;
 
+        /**
+         * Registers a Units definition.
+         */
+        void registerUnits( const Units* staticInstance );
+
+        const Units* getUnits(const std::string& name) const;
+
+        /**
+         * The name of the default terrain engine driver
+         */
+        void setDefaultTerrainEngineDriverName( const std::string& name );
+        const std::string& getDefaultTerrainEngineDriverName() const { return _terrainEngineDriver; }
+
     protected:
         virtual ~Registry();
         Registry();
 
-
         void destruct();
 
         OpenThreads::ReentrantMutex _gdal_mutex;
@@ -155,22 +176,22 @@ namespace osgEarth
 
         osg::ref_ptr<const Profile> _global_geodetic_profile;
         osg::ref_ptr<const Profile> _global_mercator_profile;
+        osg::ref_ptr<const Profile> _spherical_mercator_profile;
         osg::ref_ptr<const Profile> _cube_profile;
 
-        OpenThreads::Mutex _regMutex;        
+        Threading::ReadWriteMutex _regMutex;  
         int _numGdalMutexGets;
         
         typedef std::map< std::string, std::string> MimeTypeExtensionMap;
         // maps mime-types to extensions.
         MimeTypeExtensionMap _mimeTypeExtMap;
 
-		osg::ref_ptr<Cache> _cacheOverride;
+        osg::ref_ptr<Cache> _cache;
+        optional<CachePolicy> _defaultCachePolicy;
 
         typedef std::set<std::string> StringSet;
         StringSet _blacklistedFilenames;
-        OpenThreads::Mutex _blacklistMutex;
-
-        osg::ref_ptr<const VerticalSpatialReference> _defaultVSRS;
+        Threading::ReadWriteMutex _blacklistMutex;
 
         osg::ref_ptr<ShaderFactory> _shaderLib;
 
@@ -182,7 +203,28 @@ namespace osgEarth
         void initCapabilities();
 
         osg::ref_ptr<osgDB::Options> _defaultOptions;
+
+        osg::ref_ptr<URIReadCallback> _uriReadCallback;
+
+        osg::ref_ptr<osgText::Font> _defaultFont;
+
+        typedef std::vector<const Units*> UnitsVector;
+        UnitsVector _unitsVector;
+
+        std::string _terrainEngineDriver;
     };
 }
 
+
+/** Proxy class for automatic registration of Units with the Registry.*/
+struct osgEarthRegisterUnits {
+    osgEarthRegisterUnits(const osgEarth::Units* units) {
+        osgEarth::Registry::instance()->registerUnits(units);
+    }
+};
+#define OSGEARTH_REGISTER_UNITS(NAME,INSTANCE) \
+    static osgEarthRegisterUnits s_osgEarthRegistryUnitsProxy##NAME (INSTANCE)
+
+
+
 #endif //OSGEARTH_REGISTRY
diff --git a/src/osgEarth/Registry.cpp b/src/osgEarth/Registry.cpp
index 42956dd..ec39de7 100644
--- a/src/osgEarth/Registry.cpp
+++ b/src/osgEarth/Registry.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,22 +17,30 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
 #include <osgEarth/Cube>
 #include <osgEarth/ShaderComposition>
-#include <osgEarth/Caching>
+#include <osgEarth/TaskService>
+#include <osgEarth/IOTypes>
+#include <osgEarth/ColorFilter>
+#include <osgEarthDrivers/cache_filesystem/FileSystemCache>
 #include <osg/Notify>
 #include <osg/Version>
+#include <osgDB/Registry>
 #include <gdal_priv.h>
 #include <ogr_api.h>
 #include <stdlib.h>
+#include <locale>
 
 using namespace osgEarth;
+using namespace osgEarth::Drivers;
 using namespace OpenThreads;
 
-#define STR_GLOBAL_GEODETIC "global-geodetic"
-#define STR_GLOBAL_MERCATOR "global-mercator"
-#define STR_CUBE            "cube"
-#define STR_LOCAL           "local"
+#define STR_GLOBAL_GEODETIC    "global-geodetic"
+#define STR_GLOBAL_MERCATOR    "global-mercator"
+#define STR_SPHERICAL_MERCATOR "spherical-mercator"
+#define STR_CUBE               "cube"
+#define STR_LOCAL              "local"
 
 #define LC "[Registry] "
 
@@ -40,56 +48,112 @@ using namespace OpenThreads;
 extern const char* builtinMimeTypeExtMappings[];
 
 Registry::Registry() :
-osg::Referenced(true),
-_gdal_registered( false ),
-_numGdalMutexGets( 0 ),
-_uidGen( 0 ),
-_caps( 0L )
+osg::Referenced     ( true ),
+_gdal_registered    ( false ),
+_numGdalMutexGets   ( 0 ),
+_uidGen             ( 0 ),
+_caps               ( 0L ),
+_defaultFont        ( 0L ),
+_terrainEngineDriver( "osgterrain" )
 {
+    // set up GDAL and OGR.
     OGRRegisterAll();
     GDALAllRegister();
 
-    // add built-in mime-type extension mappings
-    for( int i=0; ; i+=2 )
-    {
-        std::string mimeType = builtinMimeTypeExtMappings[i];
-        if ( mimeType.length() == 0 )
-            break;
-        addMimeTypeExtensionMapping( mimeType, builtinMimeTypeExtMappings[i+1] );
-    }
-
     _shaderLib = new ShaderFactory();
     _taskServiceManager = new TaskServiceManager();
 
     // activate KMZ support
+    osgDB::Registry::instance()->addArchiveExtension  ( "kmz" );    
     osgDB::Registry::instance()->addFileExtensionAlias( "kmz", "kml" );
-    osgDB::Registry::instance()->addArchiveExtension( "kmz" );    
-#if OSG_MIN_VERSION_REQUIRED(3,0,0)
+
     osgDB::Registry::instance()->addMimeTypeExtensionMapping( "application/vnd.google-earth.kml+xml", "kml" );
-    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "application/vnd.google-earth.kmz", "kmz" );
-#endif
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "application/vnd.google-earth.kmz",     "kmz" );
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "text/plain",                           "osgb" );
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "text/xml",                             "osgb" );
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "application/json",                     "osgb" );
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "text/json",                            "osgb" );
+    osgDB::Registry::instance()->addMimeTypeExtensionMapping( "text/x-json",                          "osgb" );
+    
+    // pre-load OSG's ZIP plugin so that we can use it in URIs
+    std::string zipLib = osgDB::Registry::instance()->createLibraryNameForExtension( "zip" );
+    if ( !zipLib.empty() )
+        osgDB::Registry::instance()->loadLibrary( zipLib );    
 
     // set up our default r/w options to NOT cache archives!
     _defaultOptions = new osgDB::Options();
-    _defaultOptions->setObjectCacheHint( (osgDB::Options::CacheHintOptions)
-        ((int)_defaultOptions->getObjectCacheHint() & ~osgDB::Options::CACHE_ARCHIVES) );
+    _defaultOptions->setObjectCacheHint( osgDB::Options::CACHE_NONE );
+    //_defaultOptions->setObjectCacheHint( (osgDB::Options::CacheHintOptions)
+    //    ((int)_defaultOptions->getObjectCacheHint() & ~osgDB::Options::CACHE_ARCHIVES) );
 
     // see if there's a cache in the envvar
     const char* cachePath = ::getenv("OSGEARTH_CACHE_PATH");
     if ( cachePath )
     {
-        TMSCacheOptions tmso;
-        tmso.setPath( std::string(cachePath) );
-        setCacheOverride( new TMSCache(tmso) );
-        OE_INFO << LC << "Setting cache (from env.var.) to " << tmso.path() << std::endl;
+        FileSystemCacheOptions options;
+        options.rootPath() = std::string(cachePath);
+
+        osg::ref_ptr<Cache> cache = CacheFactory::create(options);
+        if ( cache->isOK() )
+        {
+            setCache( cache.get() );
+            OE_INFO << LC << "CACHE PATH set from environment variable: \"" << cachePath << "\"" << std::endl;
+        }
+        else
+        {
+            OE_WARN << LC << "FAILED to initialize cache from env.var." << std::endl;
+        }
+    }
+
+    // activate cache-only mode from the environment
+    if ( ::getenv("OSGEARTH_CACHE_ONLY") )
+    {
+        _defaultCachePolicy = CachePolicy::CACHE_ONLY;
+        OE_INFO << LC << "CACHE-ONLY MODE set from environment variable" << std::endl;
+    }
+
+    // activate no-cache mode from the environment
+    else if ( ::getenv("OSGEARTH_NO_CACHE") )
+    {
+        _defaultCachePolicy = CachePolicy::NO_CACHE;
+        OE_INFO << LC << "NO-CACHE MODE set from environment variable" << std::endl;
+    }
+
+    // if there's a default caching policy, add it to the default options.
+    if ( _defaultCachePolicy.isSet() )
+    {
+        _defaultCachePolicy->apply( _defaultOptions.get() );
+    }
+
+    // set the default terrain engine driver from the environment
+    const char* teStr = ::getenv("OSGEARTH_TERRAIN_ENGINE");
+    if ( teStr )
+    {
+        _terrainEngineDriver = std::string(teStr);
+    }
+
+    // load a default font
+
+    const char* envFont = ::getenv("OSGEARTH_DEFAULT_FONT");
+    if ( envFont )
+    {
+        _defaultFont = osgText::readFontFile( std::string(envFont) );
+    }
+    if ( !_defaultFont.valid() )
+    {
+#ifdef WIN32
+        _defaultFont = osgText::readFontFile("arial.ttf");
+#endif
     }
 }
 
 Registry::~Registry()
 {
+    //nop
 }
 
-Registry* Registry::instance(bool erase)
+Registry* 
+Registry::instance(bool erase)
 {
     static osg::ref_ptr<Registry> s_registry = new Registry;
 
@@ -102,9 +166,10 @@ Registry* Registry::instance(bool erase)
     return s_registry.get(); // will return NULL on erase
 }
 
-void Registry::destruct()
+void 
+Registry::destruct()
 {
-    _cacheOverride = 0;
+    _cache = 0L;
 }
 
 
@@ -140,6 +205,8 @@ Registry::getGlobalGeodeticProfile() const
 const Profile*
 Registry::getGlobalMercatorProfile() const
 {
+    return getSphericalMercatorProfile();
+#if 0
     if ( !_global_mercator_profile.valid() )
     {
         GDAL_SCOPED_LOCK;
@@ -147,16 +214,42 @@ Registry::getGlobalMercatorProfile() const
         if ( !_global_mercator_profile.valid() ) // double-check pattern
         {
             // automatically figure out proper mercator extents:
-            const SpatialReference* srs = SpatialReference::create( "spherical-mercator" );
+            const SpatialReference* srs = SpatialReference::create( "world-mercator" );
+
             //double e, dummy;
-            //srs->getGeographicSRS()->transform( 180.0, 0.0, srs, e, dummy );            
-            /*const_cast<Registry*>(this)->_global_mercator_profile = Profile::create(
-                srs, -e, -e, e, e, 0L, 1, 1 );*/
+            //srs->getGeographicSRS()->transform2D( 180.0, 0.0, srs, e, dummy );
+            //const_cast<Registry*>(this)->_global_mercator_profile = Profile::create(
+            //    srs, -e, -e, e, e, 1, 1 );
             const_cast<Registry*>(this)->_global_mercator_profile = Profile::create(
-                srs, MERC_MINX, MERC_MINY, MERC_MAXX, MERC_MAXY, 0L, 1, 1 );
+                srs, MERC_MINX, MERC_MINY, MERC_MAXX, MERC_MAXY, 1, 1 );
         }
     }
     return _global_mercator_profile.get();
+#endif
+}
+
+
+const Profile*
+Registry::getSphericalMercatorProfile() const
+{
+    if ( !_spherical_mercator_profile.valid() )
+    {
+        GDAL_SCOPED_LOCK;
+
+        if ( !_spherical_mercator_profile.valid() ) // double-check pattern
+        {
+            // automatically figure out proper mercator extents:
+            const SpatialReference* srs = SpatialReference::create( "spherical-mercator" );
+
+            //double e, dummy;
+            //srs->getGeographicSRS()->transform2D( 180.0, 0.0, srs, e, dummy );
+            //const_cast<Registry*>(this)->_global_mercator_profile = Profile::create(
+            //    srs, -e, -e, e, e, 1, 1 );
+            const_cast<Registry*>(this)->_spherical_mercator_profile = Profile::create(
+                srs, MERC_MINX, MERC_MINY, MERC_MAXX, MERC_MAXY, 1, 1 );
+        }
+    }
+    return _spherical_mercator_profile.get();
 }
 
 const Profile*
@@ -181,73 +274,56 @@ Registry::getNamedProfile( const std::string& name ) const
         return getGlobalGeodeticProfile();
     else if ( name == STR_GLOBAL_MERCATOR )
         return getGlobalMercatorProfile();
+    else if ( name == STR_SPHERICAL_MERCATOR )
+        return getSphericalMercatorProfile();
     else if ( name == STR_CUBE )
         return getCubeProfile();
     else
         return NULL;
 }
 
-const VerticalSpatialReference*
-Registry::getDefaultVSRS() const
-{
-    if ( !_defaultVSRS.valid() )
-        const_cast<Registry*>(this)->_defaultVSRS = new VerticalSpatialReference( Units::METERS );
-    return _defaultVSRS.get();
-}
-
 osgEarth::Cache*
-Registry::getCacheOverride() const
+Registry::getCache() const
 {
-	return _cacheOverride.get();
+	return _cache.get();
 }
 
 void
-Registry::setCacheOverride( osgEarth::Cache* cacheOverride )
-{
-	_cacheOverride = cacheOverride;
-}
-
-void Registry::addMimeTypeExtensionMapping(const std::string fromMimeType, const std::string toExt)
-{
-    _mimeTypeExtMap[fromMimeType] = toExt;
-}
-
-osgDB::ReaderWriter* 
-Registry::getReaderWriterForMimeType(const std::string& mimeType)
+Registry::setCache( osgEarth::Cache* cache )
 {
-    MimeTypeExtensionMap::const_iterator i = _mimeTypeExtMap.find( mimeType );
-    return i != _mimeTypeExtMap.end()?
-        osgDB::Registry::instance()->getReaderWriterForExtension( i->second ) :
-        NULL;
+	_cache = cache;
+    if ( cache )
+        cache->apply( _defaultOptions.get() );
 }
 
 bool
-Registry::isBlacklisted(const std::string &filename)
+Registry::isBlacklisted(const std::string& filename)
 {
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_blacklistMutex);
+    Threading::ScopedReadLock sharedLock(_blacklistMutex);
     return (_blacklistedFilenames.count(filename)==1);
 }
 
 void
 Registry::blacklist(const std::string& filename)
 {
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_blacklistMutex);
-    _blacklistedFilenames.insert( filename );
+    {
+        Threading::ScopedWriteLock exclusiveLock(_blacklistMutex);
+        _blacklistedFilenames.insert( filename );
+    }
     OE_DEBUG << "Blacklist size = " << _blacklistedFilenames.size() << std::endl;
 }
 
 void
 Registry::clearBlacklist()
 {
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_blacklistMutex);
+    Threading::ScopedWriteLock exclusiveLock(_blacklistMutex);
     _blacklistedFilenames.clear();
-    OE_DEBUG << "Blacklist size = " << _blacklistedFilenames.size() << std::endl;
 }
 
 unsigned int
 Registry::getNumBlacklistedFilenames()
 {
-    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_blacklistMutex);
+    Threading::ScopedReadLock sharedLock(_blacklistMutex);
     return _blacklistedFilenames.size();
 }
 
@@ -260,6 +336,12 @@ Registry::getCapabilities() const
     return *_caps;
 }
 
+void
+Registry::setCapabilities( Capabilities* caps )
+{
+    _caps = caps;
+}
+
 static OpenThreads::Mutex s_initCapsMutex;
 void
 Registry::initCapabilities()
@@ -281,10 +363,37 @@ Registry::setShaderFactory( ShaderFactory* lib )
     if ( lib != 0L && lib != _shaderLib.get() )
         _shaderLib = lib;
 }
+        
+void
+Registry::setURIReadCallback( URIReadCallback* callback ) 
+{ 
+    _uriReadCallback = callback;
+}
+
+URIReadCallback*
+Registry::getURIReadCallback() const
+{
+    return _uriReadCallback.get(); 
+}
+
+void
+Registry::setDefaultFont( osgText::Font* font )
+{
+    Threading::ScopedWriteLock exclusive(_regMutex);
+    _defaultFont = font;
+}
+
+osgText::Font*
+Registry::getDefaultFont()
+{
+    Threading::ScopedReadLock shared(_regMutex);
+    return _defaultFont.get();
+}
 
 UID
 Registry::createUID()
 {
+    //todo: use OpenThreads::Atomic for this
     static Mutex s_uidGenMutex;
     ScopedLock<Mutex> lock( s_uidGenMutex );
     return (UID)( _uidGen++ );
@@ -293,7 +402,9 @@ Registry::createUID()
 osgDB::Options*
 Registry::cloneOrCreateOptions( const osgDB::Options* input ) const
 {
-    osgDB::Options* newOptions = input ? static_cast<osgDB::Options*>(input->clone(osg::CopyOp::SHALLOW_COPY)) : new osgDB::Options();
+    osgDB::Options* newOptions = 
+        input ? static_cast<osgDB::Options*>(input->clone(osg::CopyOp::SHALLOW_COPY)) : 
+        new osgDB::Options();
 
     // clear the CACHE_ARCHIVES flag because it is evil
     if ( ((int)newOptions->getObjectCacheHint() & osgDB::Options::CACHE_ARCHIVES) != 0 )
@@ -305,6 +416,34 @@ Registry::cloneOrCreateOptions( const osgDB::Options* input ) const
     return newOptions;
 }
 
+void
+Registry::registerUnits( const Units* units )
+{
+    _unitsVector.push_back(units);
+}
+
+const Units*
+Registry::getUnits(const std::string& name) const
+{
+    std::string lower = toLower(name);
+    for( UnitsVector::const_iterator i = _unitsVector.begin(); i != _unitsVector.end(); ++i )
+    {
+        if (toLower((*i)->getName()) == lower ||
+            toLower((*i)->getAbbr()) == lower)
+        {
+            return *i;
+        }
+    }
+    return 0L;
+}
+
+void
+Registry::setDefaultTerrainEngineDriverName(const std::string& name)
+{
+    _terrainEngineDriver = name;
+}
+
+
 //Simple class used to add a file extension alias for the earth_tile to the earth plugin
 class RegisterEarthTileExtension
 {
diff --git a/src/osgEarth/Revisioning b/src/osgEarth/Revisioning
index 1880d5e..7f511c4 100644
--- a/src/osgEarth/Revisioning
+++ b/src/osgEarth/Revisioning
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,9 @@
 #define OSGEARTH_REVISIONING_H 1
 
 #include <osgEarth/Common>
+#include <OpenThreads/Atomic>
+#include <osg/observer_ptr>
+#include <vector>
 
 namespace osgEarth
 {
@@ -39,48 +42,148 @@ namespace osgEarth
         int _value;
     };
 
+
     /**
      * Base class for a revisioned object. A Revisioned object is one that keeps track
      * of its state with a version number. Other objects can then hold a Revision object
      * (see above) and use it to see if they are up to date with this object, thereby
      * enabling passive data model synchronization.
+     *
+     * A Revisioned object is useful in the case where one or many objects want to 
+     * track the state of a single object. If you want the opposite - where one
+     * object tracks the state of a multitude (or a hierarchy) of data model objects,
+     * use TrackDirty instead.
      */
-    template<typename T> class Revisioned : public T // header-only; no export
+    class Revisioned /* no export; header-only */
     {
     public:
-        /** Marks this object as dirty */
-        void dirty() {
+        /**
+         * Marks this object as dirty by increasing the revision number.
+         * If the object has parents, it will mark those dirty as well.
+         */
+        void dirty()
+        {
             ++_revision;
         }
 
-        /** Synchronizes the external revision number with this revision, effectively
-            bringing the external object up to date. */
-        virtual void sync( Revision& externalRevision ) const {
+        /**
+         * Synchronizes the external revision number with this revision, effectively
+         * bringing the external object up to date.
+         */
+        virtual void sync( Revision& externalRevision ) const
+        {
             externalRevision = _revision;
         }
 
-        /** Returns true if the external object is at a different revision that this object. */
-        bool outOfSyncWith( const Revision& externalRevision) const {
+        /** 
+         * Returns true if the external object is at a different revision that this object.
+         */
+        bool outOfSyncWith( const Revision& externalRevision) const
+        {
             return !inSyncWith( externalRevision );
         }
 
-        /** Returns true if the external object is at the same revision as this object. */
-        virtual bool inSyncWith( const Revision& externalRevision ) const {
+        /**
+         * Returns true if the external object is at the same revision as this object.
+         */
+        virtual bool inSyncWith( const Revision& externalRevision ) const
+        {
             return _alwaysDirty ? false : _revision == externalRevision;
         }
 
     protected:
-        Revisioned() : _revision(0), _alwaysDirty(false) { }
+        Revisioned() : _alwaysDirty(false) { }
+
+        /** dtor */
+        virtual ~Revisioned() { }
 
         /** Marks this object as always being dirty (i.e. inSyncWith() will always return false) */
-        void setAlwaysDirty( bool value ) {
+        void setAlwaysDirty( bool value )
+        {
             _alwaysDirty = value;
         }
 
     private:
         Revision _revision;
-        bool _alwaysDirty;
+        bool     _alwaysDirty;
+    };
+
+
+    /**
+     * A TrackedMutable object is an object that can mark itself, and optionally
+     * its dependent parents, dirty. This is analagous to OSG's "dirtyBound"
+     * concept that can propagate up through a scene graph.
+     *
+     * The use case is when you want to detect changes somewhere in an object
+     * group or hierarchy, and then update something based on the modular
+     * changes. This is the opposite of the Revisioned pattern (in which many
+     * objects are tracking the state of one.)
+     *
+     * Note: objects always start out dirty.
+     */
+    class OSGEARTH_EXPORT DirtyNotifier
+    {
+    public:
+        DirtyNotifier();
+        virtual ~DirtyNotifier() { }
+
+        /**
+         * Marks the object dirty and notifies parents
+         */
+        virtual void setDirty();
+
+        /**
+         * Marks the object not dirty.
+         */
+        virtual void resetDirty() { _counter->_count = 0; }
+
+        /**
+         * Is this object dirty?
+         */
+        virtual bool isDirty() const { return _counter->_count > 0; }
+
+        /**
+         * Adds a dependent parent that will be dirtied if this object if dirtied.
+         */
+        virtual void addParent( DirtyNotifier* parent );
+
+        /**
+         * Removes a dependent parent previously added by addParent.
+         */
+        virtual void removeParent( DirtyNotifier* parent );
+
+    private:
+        // this pattern is used to we can track parents with an observer pointer.
+        struct DirtyCounter : public osg::Referenced
+        {
+            DirtyCounter(DirtyNotifier* owner) : _owner(owner), _count(1) { }
+            int            _count;
+            DirtyNotifier* _owner;
+            friend class DirtyNotifer;
+        };
+        osg::ref_ptr<DirtyCounter>                     _counter;
+        std::vector< osg::observer_ptr<DirtyCounter> > _parents;
+    };
+
+
+    /**
+     * A simple but thread-safe "dirty" object that support only one client.
+     */
+    template<typename T>
+    struct SimpleMutable
+    {
+        SimpleMutable() : _dirty(1) { }
+        SimpleMutable(const T& value) : _value(value), _dirty(1) { }
+        operator const T&() const { return _value; }
+        const T* operator ->() const { return &_value; }
+        SimpleMutable& operator = (const T& value) { _value = value; _dirty.exchange(1); return *this; }
+        bool changed(bool reset=true) const { unsigned r = reset? _dirty.exchange(0) : (unsigned)_dirty; return r==1; }
+        void clean() { _dirty.exchange(0); }
+    private:
+        T                           _value;
+        mutable OpenThreads::Atomic _dirty;
     };
+
 }
 
 #endif // OSGEARTH_REVISIONING_H
diff --git a/src/osgEarth/Revisioning.cpp b/src/osgEarth/Revisioning.cpp
new file mode 100644
index 0000000..2e416af
--- /dev/null
+++ b/src/osgEarth/Revisioning.cpp
@@ -0,0 +1,158 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/Revisioning>
+#include <algorithm>
+
+#define LC "[Revisioning] "
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+#if 0
+void
+Revisioned::dirty()
+{
+    _revision->operator++();
+
+    if ( _parents.size() > 0 )
+    {
+        for( std::vector< osg::observer_ptr<osg::Referenced> >::iterator i = _parents.begin(); i != _parents.end(); )
+        {
+            RefRevisioned* r = static_cast<RefRevisioned*>( i->get() );
+            if ( r && r->get() )
+            {
+                r->get()->dirty();
+                ++i;
+            }
+            else
+            {
+                i = _parents.erase( i );
+            }
+        }
+    }
+}
+
+
+void
+Revisioned::addParent( Revisioned* parent )
+{
+    if ( parent )
+    {
+        _parents.push_back( new RefRevisioned(parent) );
+        parent->dirty();
+    }
+}
+
+
+void
+Revisioned::removeParent( Revisioned* parent )
+{
+    for( std::vector< osg::observer_ptr<osg::Referenced> >::iterator i = _parents.begin(); i != _parents.end(); )
+    {
+        if ( i->valid() )
+        {
+            RefRevisioned* r = static_cast<RefRevisioned*>( i->get() );
+            if ( r->get() == parent )
+            {
+                i = _parents.erase( i );
+            }
+            else
+            {
+                ++i;
+            }
+        }
+        else
+        {
+            i = _parents.erase( i );
+        }
+    }
+}
+#endif
+
+
+//------------------------------------------------------------------------
+
+
+DirtyNotifier::DirtyNotifier()
+{
+    _counter = new DirtyCounter(this);
+}
+
+
+void
+DirtyNotifier::addParent( DirtyNotifier* parent )
+{
+    if ( parent )
+    {
+        _parents.push_back( parent->_counter.get() );
+        if ( isDirty() )
+            parent->setDirty();
+    }
+}
+
+
+void
+DirtyNotifier::removeParent( DirtyNotifier* parent )
+{
+    for( std::vector< osg::observer_ptr<DirtyCounter> >::iterator i = _parents.begin(); i != _parents.end(); )
+    {
+        if ( i->valid() )
+        {
+            if ( i->get()->_owner == parent )
+            {
+                i = _parents.erase( i );
+            }
+            else
+            {
+                ++i;
+            }
+        }
+        else
+        {
+            i = _parents.erase( i );
+        }
+    }
+}
+
+
+void
+DirtyNotifier::setDirty()
+{
+    _counter->_count++;
+
+    if ( _parents.size() > 0 )
+    {
+        for( std::vector< osg::observer_ptr<DirtyCounter> >::iterator i = _parents.begin(); i != _parents.end(); )
+        {
+            if ( i->valid() )
+            {
+                i->get()->_owner->setDirty();
+                ++i;
+            }
+            else
+            {
+                i = _parents.erase( i );
+            }
+        }
+    }
+}
+
+
+//------------------------------------------------------------------------
\ No newline at end of file
diff --git a/src/osgEarth/ShaderComposition b/src/osgEarth/ShaderComposition
index a018bf4..ed61de4 100644
--- a/src/osgEarth/ShaderComposition
+++ b/src/osgEarth/ShaderComposition
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -22,11 +22,18 @@
 #include <osgEarth/Common>
 #include <osgEarth/Revisioning>
 #include <osgEarth/ThreadingUtils>
-#include <string>
-#include <map>
+#include <osgEarth/ColorFilter>
 #include <osg/Shader>
 #include <osg/Program>
 #include <osg/StateAttribute>
+#include <string>
+#include <map>
+
+#ifdef OSG_GLES2_AVAILABLE
+    #define GLSL_VERSION_STR "100"
+#else
+    #define GLSL_VERSION_STR "110" 
+#endif
 
 namespace osgEarth
 {        
@@ -35,10 +42,10 @@ namespace osgEarth
         // User function injection points.
         enum FunctionLocation
         {
-            LOCATION_VERTEX_PRE_TEXTURING   =0,
+            LOCATION_VERTEX_PRE_COLORING    =0,   LOCATION_VERTEX_PRE_TEXTURING =0, // alias
             LOCATION_VERTEX_PRE_LIGHTING    =1,
             LOCATION_VERTEX_POST_LIGHTING   =2,
-            LOCATION_FRAGMENT_PRE_TEXTURING =3,
+            LOCATION_FRAGMENT_PRE_COLORING  =3,   LOCATION_FRAGMENT_PRE_TEXTURING =3, // alias
             LOCATION_FRAGMENT_PRE_LIGHTING  =4,
             LOCATION_FRAGMENT_POST_LIGHTING =5
         };
@@ -48,6 +55,23 @@ namespace osgEarth
 
         // user function sets, categorized by function location.
         typedef std::map<FunctionLocation, OrderedFunctionMap> FunctionLocationMap;
+
+        // hints that can be used to automatically generate shader code
+        class OSGEARTH_EXPORT RenderingHints
+        {
+        public:
+            RenderingHints();
+            RenderingHints(const RenderingHints& rhs);
+            bool operator == (const RenderingHints& rhs) const;
+            bool operator != (const RenderingHints& rhs) const { return !operator==(rhs); }
+
+            void useNumTextures(unsigned num);
+            unsigned numTextures() const { return _numTextures; }
+
+        protected:
+            virtual ~RenderingHints() { }
+            unsigned _numTextures;
+        };
     }
 
     /**
@@ -60,25 +84,33 @@ namespace osgEarth
     public:
         /** Creates a vertex shader main(). */
         virtual osg::Shader* createVertexShaderMain(
-            const ShaderComp::FunctionLocationMap& functions =ShaderComp::FunctionLocationMap() ) const;
+            const ShaderComp::FunctionLocationMap& functions =ShaderComp::FunctionLocationMap(),
+            bool useLightingShaders =true ) const;
 
         /** Creates a fragment shader main(). */
         virtual osg::Shader* createFragmentShaderMain( 
-            const ShaderComp::FunctionLocationMap& functions =ShaderComp::FunctionLocationMap() ) const;
+            const ShaderComp::FunctionLocationMap& functions =ShaderComp::FunctionLocationMap(),
+            bool useLightingShaders =true ) const;
+
+        /**
+         * Gets the uniform/shader name of the sampler corresponding the the provider
+         * texture image unit
+         */
+        virtual std::string getSamplerName( unsigned texImageUnit ) const;
         
         /**
          * Creates the function that sets up default texcoords in the vertex shader.
          * The name/prototype is:
-         *    void osgearth_vert_setupTexturing(); 
+         *    void osgearth_vert_setupColoring(); 
          */
-        virtual osg::Shader* createDefaultTextureVertexShader( int numTexCoordSets ) const;
+        virtual osg::Shader* createDefaultColoringVertexShader( unsigned numTexCoordSets ) const;
 
         /**
          * Creates the function that applies texture data in the fragment shader.
          * The name/prototype is:
-         *    osgearth_frag_applyTexturing( inout vec4 color );
+         *    osgearth_frag_applyColoring( inout vec4 color );
          */
-        virtual osg::Shader* createDefaultTextureFragmentShader( int numTexCoordSets ) const;
+        virtual osg::Shader* createDefaultColoringFragmentShader( unsigned numTexCoordSets ) const;
 
         /**
          * Creates the function that applies lighting calculations in the vertex shader.
@@ -93,6 +125,14 @@ namespace osgEarth
          *    void osgearth_frag_applyLighting( inout vec4 color ); 
          */
         virtual osg::Shader* createDefaultLightingFragmentShader() const;
+
+        /**
+         * Builds a shader that executes an image filter chain.
+         */
+        virtual osg::Shader* createColorFilterChainFragmentShader( const std::string& function, const ColorFilterChain& chain ) const;
+
+        /** dtor */
+        virtual ~ShaderFactory() { }
     };
 
     /**
@@ -101,10 +141,19 @@ namespace osgEarth
      * VirtualProgram has been adapted from the VirtualProgram shader composition work
      * originally done by Wojciech Lewandowski and found in OSG's osgvirtualprogram
      * example, and is used by permission.
+     *
+     * VirtualProgram in a state attribute. Once you've installed it on a StateSet,
+     * you can still call the set* functions but you'd better mark the state set with
+     * a DYNAMIC data variance.
      */
-    class OSGEARTH_EXPORT VirtualProgram : public osg::Program
+    class OSGEARTH_EXPORT VirtualProgram : public osg::StateAttribute // osg::Program
     {
     public:
+        static const osg::StateAttribute::Type SA_TYPE;
+
+        typedef osg::Program::AttribBindingList AttribBindingList;
+
+    public:
         /**
          * Adds a shader function to the program.
          * Call this method (rather than setShader directly) to inject "user" functions into the
@@ -116,60 +165,135 @@ namespace osgEarth
          * priority: Lets you control the order of functions that you inject at the same location.
          */
         void setFunction( 
-            const std::string& name,
-            const std::string& source, 
+            const std::string&           name,
+            const std::string&           source, 
             ShaderComp::FunctionLocation loc,
-            float priority =1.0f );
+            float                        priority =1.0f );
+
+        /**
+         * Installs default shaders for implementing basic coloring and lighting.
+         * The default shaders come from the ShaderFactory.
+         */
+        void installDefaultColoringAndLightingShaders( unsigned numTextures =0u );
+
+        /**
+         * Installs default shader for basic coloring/texturing.
+         */
+        void installDefaultColoringShaders( unsigned numTextures =0u );
+
+        /**
+         * Installs default shader for basic lighting.
+         */
+        void installDefaultLightingShaders();
+
+        /**
+         * Sets whether to use lighting shaders at all - set this to false if you
+         * don't want lighting shaders (normal or inherited) included in the program.
+         */
+        void setUseLightingShaders(bool value);
+
+        /**
+         * Whether this VP should inherit shaders from parent state sets. This is
+         * the normal operation. You can set this to "false" to "reset" the VP.
+         */
+        void setInheritShaders( bool value );
 
     public: 
+        /**
+         * Constructs a new VP
+         */
         VirtualProgram( unsigned int mask = 0xFFFFFFFFUL );
 
+        /**
+         * Copy constructor
+         */
         VirtualProgram( const VirtualProgram& VirtualProgram, 
                         const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY );
 
-        META_StateAttribute( osgEarth, VirtualProgram, Type( PROGRAM ) )
+        META_StateAttribute( osgEarth, VirtualProgram, SA_TYPE);
 
-        /** return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.*/
-        virtual int compare(const StateAttribute& sa) const
-        {
-           // check the types are equal and then create the rhs variable
-           // used by the COMPARE_StateAttribute_Parameter macros below.
-           COMPARE_StateAttribute_Types(VirtualProgram,sa)
-
-           // compare each parameter in turn against the rhs.
-           COMPARE_StateAttribute_Parameter(_mask)
-           COMPARE_StateAttribute_Parameter(_shaderMap)
-           return 0; // passed all the above comparison macros, must be equal.
-        }
-
-        /** If enabled, activate our program in the GL pipeline,
-         * performing any rebuild operations that might be pending. */
+        /** dtor */
+        virtual ~VirtualProgram() { }
+
+        /** 
+         * Compare this program against another (used for state-sorting)
+         * return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
+         */
+        virtual int compare(const StateAttribute& sa) const;
+
+        /**
+         * If enabled, activate our program in the GL pipeline,
+         * performing any rebuild operations that might be pending.
+         */
         virtual void apply(osg::State& state) const;
 
-        osg::Shader* getShader( const std::string& shaderSemantic, osg::Shader::Type type );   
+        /**
+         * Gets a shader by its ID.
+         */
+        osg::Shader* getShader( const std::string& shaderID ) const;
+
+        /** 
+         * Adds a shader to this VP's shader table.
+         */
+        osg::Shader* setShader( 
+            const std::string&                 shaderID, 
+            osg::Shader*                       shader,
+            osg::StateAttribute::OverrideValue ov         =osg::StateAttribute::ON );
+        
+        osg::Shader* setShader(
+            osg::Shader*                       shader,
+            osg::StateAttribute::OverrideValue ov         =osg::StateAttribute::ON );
 
-        osg::Shader* setShader( const std::string& shaderSemantic, osg::Shader* shader );
+        /**
+         * Removes a shader from the local VP.
+         */
+        void removeShader( const std::string& shaderID );
 
-        void removeShader( const std::string& shaderSemantic, osg::Shader::Type type );
+        /** Add an attribute location binding. */
+        void addBindAttribLocation( const std::string& name, GLuint index );
 
+        /** Remove an attribute location binding. */
+        void removeBindAttribLocation( const std::string& name );
+
+        /** Gets a reference to the attribute bindings. */
+        const AttribBindingList& getAttribBindingList() const { return _attribBindingList; }
+
+        /** Access to the property template. */
+        osg::Program* getTemplate() { return _template.get(); }
+        const osg::Program* getTemplate() const { return _template.get(); }
+
+    public:
+        typedef std::vector< osg::ref_ptr<osg::Shader> > ShaderVector;
 
     protected:
-        typedef std::vector< osg::ref_ptr< osg::Shader > >            ShaderList;
-        typedef std::pair< std::string, osg::Shader::Type >           ShaderSemantic;
-        typedef std::map< ShaderSemantic, osg::ref_ptr<osg::Shader> > ShaderMap;
-        typedef std::map< ShaderList, osg::ref_ptr<osg::Program> >    ProgramMap;
 
-        mutable ProgramMap                   _programMap;
-        ShaderMap                            _shaderMap;
-        unsigned int                         _mask;
+        typedef std::pair< osg::ref_ptr<osg::Shader>, osg::StateAttribute::OverrideValue > ShaderEntry;
+        typedef std::map< std::string, ShaderEntry > ShaderMap;
+        typedef std::map< ShaderVector, osg::ref_ptr<osg::Program> > ProgramMap;
+
+        osg::ref_ptr<osg::Program>   _template;
+
+        ProgramMap                   _programCache;
+        ShaderMap                    _shaderMap;
+        unsigned int                 _mask;
+        AttribBindingList            _attribBindingList;
+        bool                         _useLightingShaders;
+        osg::ref_ptr<osg::Shader>    _vertMain;
+        osg::ref_ptr<osg::Shader>    _fragMain;
 
         ShaderComp::FunctionLocationMap _functions;
         ShaderComp::FunctionLocationMap _accumulatedFunctions;
 
         Threading::Mutex _functionsMutex;
+        bool _inherit;
+        mutable Threading::ReadWriteMutex _programCacheMutex;
 
         bool hasLocalFunctions() const;
         void refreshAccumulatedFunctions( const osg::State& state );
+        void addToAccumulatedMap(ShaderMap& accumShaderMap, const std::string& shaderID, const ShaderEntry& newEntry) const;
+        osg::Program* buildProgram( osg::State& state, ShaderMap& accumShaderMap, AttribBindingList& bindings );
+        void addShadersToProgram(const ShaderVector& shaders, const AttribBindingList& attribBindings, osg::Program* program );
+        void addTemplateDataToProgram(osg::Program* program );
 
     public:
         void getFunctions( ShaderComp::FunctionLocationMap& out ) const;
@@ -178,3 +302,4 @@ namespace osgEarth
 } // namespace osgEarth
 
 #endif // OSGEARTH_SHADER_COMPOSITION_H
+
diff --git a/src/osgEarth/ShaderComposition.cpp b/src/osgEarth/ShaderComposition.cpp
index e7fc687..a058e7d 100644
--- a/src/osgEarth/ShaderComposition.cpp
+++ b/src/osgEarth/ShaderComposition.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,7 @@
 #include <osgEarth/ShaderComposition>
 
 #include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
 #include <osg/Shader>
 #include <osg/Program>
 #include <osg/State>
@@ -30,11 +31,33 @@
 using namespace osgEarth;
 using namespace osgEarth::ShaderComp;
 
+#define OE_TEST OE_NULL
+//#define OE_TEST OE_NOTICE
+
+#ifdef OSG_GLES2_AVAILABLE
+    #define MERGE_SHADERS 1
+#else
+    //#define MERGE_SHADERS 1
+#endif
+
 //------------------------------------------------------------------------
 
+#define VERTEX_MAIN             "osgearth_vert_main"
+#define FRAGMENT_MAIN           "osgearth_frag_main"
+
+#define VERTEX_SETUP_COLORING   "osgearth_vert_setupColoring"
+#define VERTEX_SETUP_LIGHTING   "osgearth_vert_setupLighting"
+#define FRAGMENT_APPLY_COLORING "osgearth_frag_applyColoring"
+#define FRAGMENT_APPLY_LIGHTING "osgearth_frag_applyLighting"
+
+#define OSGEARTH_DUMP_SHADERS "OSGEARTH_DUMP_SHADERS"
+
 namespace
 {
+    bool s_dumpShaders = false;
+
     /** A hack for OSG 2.8.x to get access to the state attribute vector. */
+    /** TODO: no longer needed in OSG 3+ ?? */
     class StateHack : public osg::State 
     {
     public:        
@@ -57,193 +80,679 @@ namespace
 
 //------------------------------------------------------------------------
 
-// If graphics board has program linking problems set MERGE_SHADERS to 1
-// Merge shaders can be used to merge shaders strings into one shader. 
-#define MERGE_SHADERS 0
-#define NOTIFICATION_MESSAGES 0
+RenderingHints::RenderingHints() :
+_numTextures( 0 )
+{
+    //nop
+}
+
+RenderingHints::RenderingHints(const RenderingHints& rhs) :
+_numTextures( rhs._numTextures )
+{
+    //nop
+}
+
+bool
+RenderingHints::operator == (const RenderingHints& rhs) const
+{
+    return _numTextures == rhs._numTextures;
+}
+
+void
+RenderingHints::useNumTextures(unsigned num)
+{
+    _numTextures = std::max( _numTextures, num );
+}
+
+//------------------------------------------------------------------------
+
+// same type as PROGRAM (for proper state sorting)
+const osg::StateAttribute::Type VirtualProgram::SA_TYPE = osg::StateAttribute::PROGRAM;
+
 
-VirtualProgram::VirtualProgram( unsigned int mask ) : 
-_mask( mask ) 
+VirtualProgram::VirtualProgram( unsigned mask ) : 
+_mask              ( mask ),
+_inherit           ( true ),
+_useLightingShaders( true )
 {
     // because we sometimes update/change the attribute's members from within the apply() method
     this->setDataVariance( osg::Object::DYNAMIC );
+
+    // check the the dump env var
+    if ( ::getenv(OSGEARTH_DUMP_SHADERS) != 0L )
+    {
+        s_dumpShaders = true;
+    }
+
+    // a template object to hold program data (so we don't have to dupliate all the 
+    // osg::Program methods..)
+    _template = new osg::Program();
 }
 
+
 VirtualProgram::VirtualProgram(const VirtualProgram& rhs, const osg::CopyOp& copyop ) :
-osg::Program( rhs, copyop ),
-_shaderMap( rhs._shaderMap ),
-_mask( rhs._mask ),
-_functions( rhs._functions )
+osg::StateAttribute( rhs, copyop ),
+//osg::Program( rhs, copyop ),
+_shaderMap         ( rhs._shaderMap ),
+_mask              ( rhs._mask ),
+_functions         ( rhs._functions ),
+_inherit           ( rhs._inherit ),
+_useLightingShaders( rhs._useLightingShaders )
 {
     //nop
 }
 
+int
+VirtualProgram::compare(const osg::StateAttribute& sa) const
+{
+    // check the types are equal and then create the rhs variable
+    // used by the COMPARE_StateAttribute_Parameter macros below.
+    COMPARE_StateAttribute_Types(VirtualProgram,sa);
+
+    // compare each parameter in turn against the rhs.
+    COMPARE_StateAttribute_Parameter(_mask);
+    COMPARE_StateAttribute_Parameter(_inherit);
+    //COMPARE_StateAttribute_Parameter(_shaderMap);
+
+    // compare the shader maps.
+    if ( _shaderMap.size() < rhs._shaderMap.size() ) return -1;
+    if ( _shaderMap.size() > rhs._shaderMap.size() ) return 1;
+
+    ShaderMap::const_iterator lhsIter = _shaderMap.begin();
+    ShaderMap::const_iterator rhsIter = rhs._shaderMap.begin();
+
+    while( lhsIter != _shaderMap.end() )
+    {
+        int keyCompare = lhsIter->first.compare( rhsIter->first );
+        if ( keyCompare != 0 ) return keyCompare;
+
+        const ShaderEntry& lhsEntry = lhsIter->second;
+        const ShaderEntry& rhsEntry = rhsIter->second;
+        int shaderComp = lhsEntry.first->compare( *rhsEntry.first.get() );
+        if ( shaderComp != 0 ) return shaderComp;
+
+        if ( lhsEntry.second < rhsEntry.second ) return -1;
+        if ( lhsEntry.second > rhsEntry.second ) return 1;
+
+        lhsIter++;
+        rhsIter++;
+    }
+
+    // compare the template settings.
+    int templateCompare = _template->compare( *(rhs.getTemplate()) );
+    if ( templateCompare != 0 ) return templateCompare;
+
+    return 0; // passed all the above comparison macros, must be equal.
+}
+
+void
+VirtualProgram::addBindAttribLocation( const std::string& name, GLuint index )
+{
+    _attribBindingList[name] = index;
+}
+
+void
+VirtualProgram::removeBindAttribLocation( const std::string& name )
+{
+    _attribBindingList.erase(name);
+}
+
+
 osg::Shader*
-VirtualProgram::getShader( const std::string& shaderSemantic, osg::Shader::Type type )
+VirtualProgram::getShader( const std::string& shaderID ) const
 {
-    ShaderMap::key_type key( shaderSemantic, type );
-    return _shaderMap[ key ].get();
+    ShaderMap::const_iterator i = _shaderMap.find(shaderID);
+    return i != _shaderMap.end() ? i->second.first.get() : 0L;
 }
 
+
 osg::Shader*
-VirtualProgram::setShader( const std::string& shaderSemantic, osg::Shader * shader )
+VirtualProgram::setShader(const std::string&                 shaderID,
+                          osg::Shader*                       shader,
+                          osg::StateAttribute::OverrideValue ov)
 {
-    if( shader->getType() == osg::Shader::UNDEFINED ) 
+    if ( !shader || shader->getType() ==  osg::Shader::UNDEFINED ) 
         return NULL;
 
-    ShaderMap::key_type key( shaderSemantic, shader->getType() );
+    shader->setName( shaderID );
+    _shaderMap[shaderID] = ShaderEntry(shader, ov);
 
-    osg::ref_ptr< osg::Shader >  shaderNew     = shader;
-    osg::ref_ptr< osg::Shader >& shaderCurrent = _shaderMap[ key ];
+    return shader;
+}
 
-    shaderNew->setName( shaderSemantic );
 
-    if( shaderCurrent != shaderNew )
+osg::Shader*
+VirtualProgram::setShader(osg::Shader*                       shader,
+                          osg::StateAttribute::OverrideValue ov)
+{
+    if ( !shader || shader->getType() == osg::Shader::UNDEFINED )
+        return NULL;
+
+    if ( shader->getName().empty() )
     {
-       shaderCurrent = shaderNew;
+        OE_WARN << LC << "setShader called but the shader name is not set" << std::endl;
+        return 0L;
     }
 
-    //OE_NOTICE << shader->getShaderSource() << std::endl;
+    _shaderMap[shader->getName()] = ShaderEntry(shader, ov);
 
-    return shaderCurrent.get();
+    return shader;
 }
 
+
 void
 VirtualProgram::setFunction(const std::string& functionName,
                             const std::string& shaderSource,
-                            FunctionLocation location,
-                            float priority)
+                            FunctionLocation   location,
+                            float              priority)
 {
     Threading::ScopedMutexLock lock( _functionsMutex );
 
     OrderedFunctionMap& ofm = _functions[location];
+
+    // if there's already a function by this name, remove it
+    for( OrderedFunctionMap::iterator i = ofm.begin(); i != ofm.end(); )
+    {
+        if ( i->second.compare(functionName) == 0 )
+        {
+            OrderedFunctionMap::iterator j = i;
+            ++j;
+            ofm.erase( i );
+            i = j;
+        }
+        else
+        {
+            ++i;
+        }
+    }
+    
     ofm.insert( std::pair<float,std::string>( priority, functionName ) );
+
     osg::Shader::Type type = (int)location <= (int)LOCATION_VERTEX_POST_LIGHTING ?
         osg::Shader::VERTEX : osg::Shader::FRAGMENT;
-    setShader( functionName, new osg::Shader( type, shaderSource ) );
+
+    setShader( functionName, new osg::Shader(type, shaderSource) );
 }
 
 void
-VirtualProgram::removeShader( const std::string& shaderSemantic, osg::Shader::Type type )
+VirtualProgram::removeShader( const std::string& shaderID )
 {
-    _shaderMap.erase( ShaderMap::key_type( shaderSemantic, type ) );
+    _shaderMap.erase( shaderID );
+
+    for(FunctionLocationMap::iterator i = _functions.begin(); i != _functions.end(); ++i )
+    {
+        OrderedFunctionMap& ofm = i->second;
+        for( OrderedFunctionMap::iterator j = ofm.begin(); j != ofm.end(); ++j )
+        {
+            if ( j->second == shaderID )
+            {
+                ofm.erase( j );
+                break;
+            }
+        }
+    }
+}
+
+/**
+* Adds a new shader entry to the accumulated shader map, respecting the
+* override policy of both the existing entry (if there is one) and the 
+* new entry.
+*/
+void 
+VirtualProgram::addToAccumulatedMap(ShaderMap&         accumShaderMap,
+                                    const std::string& shaderID,
+                                    const ShaderEntry& newEntry) const
+{
+    const osg::StateAttribute::OverrideValue& ov = newEntry.second;
+
+    // see if we're trying to disable a previous entry:
+    if ((ov & osg::StateAttribute::ON) == 0 ) //TODO: check for higher override
+    {
+        // yes? remove it!
+        accumShaderMap.erase( shaderID );
+    }
+
+    else
+    {
+        // see if there's a higher-up entry with the same ID:
+        ShaderEntry& accumEntry = accumShaderMap[ shaderID ]; 
+
+        // make sure we can add the new one:
+        if ((accumEntry.first.get() == 0L ) ||                           // empty slot, fill it
+            ((ov & osg::StateAttribute::PROTECTED) != 0) ||              // new entry is protected
+            ((accumEntry.second & osg::StateAttribute::OVERRIDE) == 0) ) // old entry does NOT override
+        {
+            accumEntry = newEntry;
+        }
+    }
 }
 
-static unsigned s_applies = 0;
-static int      s_framenum = 0;
 
 void
-VirtualProgram::apply( osg::State & state ) const
+VirtualProgram::installDefaultColoringAndLightingShaders( unsigned numTextures )
 {
-    if( _shaderMap.empty() ) // Virtual Program works as normal Program
-        return Program::apply( state );
+    ShaderFactory* sf = osgEarth::Registry::instance()->getShaderFactory();
 
-    // first, find and collect all the VirtualProgram attributes:
-    ShaderMap shaderMap;
-    const StateHack::AttributeVec* av = StateHack::GetAttributeVec( state, this );
-    if ( av )
+    this->setShader( sf->createDefaultColoringVertexShader(numTextures) );
+    this->setShader( sf->createDefaultLightingVertexShader() );
+
+    this->setShader( sf->createDefaultColoringFragmentShader(numTextures) );
+    this->setShader( sf->createDefaultLightingFragmentShader() );
+
+    setUseLightingShaders( true );
+}
+
+
+void
+VirtualProgram::installDefaultLightingShaders()
+{
+    ShaderFactory* sf = osgEarth::Registry::instance()->getShaderFactory();
+
+    this->setShader( sf->createDefaultLightingVertexShader() );
+    this->setShader( sf->createDefaultLightingFragmentShader() );
+
+    setUseLightingShaders( true );
+}
+
+
+void
+VirtualProgram::installDefaultColoringShaders( unsigned numTextures )
+{
+    ShaderFactory* sf = osgEarth::Registry::instance()->getShaderFactory();
+
+    this->setShader( sf->createDefaultColoringVertexShader(numTextures) );
+    this->setShader( sf->createDefaultColoringFragmentShader(numTextures) );
+}
+
+
+void
+VirtualProgram::setInheritShaders( bool value )
+{
+    if ( _inherit != value )
+    {
+        _inherit = value;
+        _programCache.clear();
+        _accumulatedFunctions.clear();
+    }
+}
+
+
+void
+VirtualProgram::setUseLightingShaders( bool value )
+{
+    if ( _useLightingShaders != value )
+    {
+        _useLightingShaders = value;
+        _programCache.clear();
+        _accumulatedFunctions.clear();
+    }
+}
+
+
+namespace
+{
+    typedef std::map<std::string, std::string> HeaderMap;
+
+    void parseShaderForMerging( const std::string& source, unsigned& version, HeaderMap& headers, std::stringstream& body )
     {
-        for( StateHack::AttributeVec::const_iterator i = av->begin(); i != av->end(); ++i )
+        // break into lines:
+        StringVector lines;
+        StringTokenizer( source, lines, "\n", "", true, false );
+
+        for( StringVector::const_iterator line = lines.begin(); line != lines.end(); ++line )
         {
-            const osg::StateAttribute* sa = i->first;
-            const VirtualProgram* vp = dynamic_cast< const VirtualProgram* >( sa );
-            if( vp && ( vp->_mask & _mask ) )
+            if ( line->size() > 0 )
             {
-                for( ShaderMap::const_iterator i = vp->_shaderMap.begin(); i != vp->_shaderMap.end(); ++i )
+                StringVector tokens;
+                StringTokenizer( *line, tokens, " \t", "", false, true );
+
+                if (tokens[0] == "#version")
                 {
-                    shaderMap[ i->first ] = i->second;
+                    // find the highest version number.
+                    if ( tokens.size() > 1 )
+                    {
+                        unsigned newVersion = osgEarth::as<unsigned>(tokens[1], 0);
+                        if ( newVersion > version )
+                        {
+                            version = newVersion;
+                        }
+                    }
+                }
+
+                else if (
+                    tokens[0] == "#extension"   ||
+                    tokens[0] == "precision"    ||
+                    tokens[0] == "struct"       ||
+                    tokens[0] == "varying"      ||
+                    tokens[0] == "uniform"      ||
+                    tokens[0] == "attribute")
+                {
+                    std::string& header = headers[*line];
+                    header = *line;
+                }
+
+                else
+                {
+                    body << (*line) << "\n";
                 }
             }
         }
     }
+}
 
-    // next add the local shader components to the map:
-    for( ShaderMap::const_iterator i = _shaderMap.begin(); i != _shaderMap.end(); ++i )
-        shaderMap[ i->first ] = i->second;
 
-    if( shaderMap.size() )
+void 
+VirtualProgram::addShadersToProgram(const ShaderVector&      shaders, 
+                                    const AttribBindingList& attribBindings,
+                                    osg::Program*            program )
+{
+#ifdef MERGE_SHADERS
+    bool mergeShaders = true;
+#else
+    bool mergeShaders = false;
+#endif
+
+    if ( mergeShaders )
     {
-        // next, assemble a list of the shaders in the map so we can compare it:
-        ShaderList sl;
-        for( ShaderMap::iterator i = shaderMap.begin(); i != shaderMap.end(); ++i )
-            sl.push_back( i->second );
+        unsigned          vertVersion = 0;
+        HeaderMap         vertHeaders;
+        std::stringstream vertBody;
 
-        // see if there's already a program associated with this list:
-        osg::Program* program = 0L;
-        ProgramMap::iterator p = _programMap.find( sl );
-        if ( p != _programMap.end() )
+        unsigned          fragVersion = 0;
+        HeaderMap         fragHeaders;
+        std::stringstream fragBody;
+
+        // parse the shaders, combining header lines and finding the highest version:
+        for( VirtualProgram::ShaderVector::const_iterator i = shaders.begin(); i != shaders.end(); ++i )
         {
-            program = p->second.get();
+            osg::Shader* s = i->get();
+            if ( s->getType() == osg::Shader::VERTEX )
+            {
+                parseShaderForMerging( s->getShaderSource(), vertVersion, vertHeaders, vertBody );
+            }
+            else if ( s->getType() == osg::Shader::FRAGMENT )
+            {
+                parseShaderForMerging( s->getShaderSource(), fragVersion, fragHeaders, fragBody );
+            }
         }
-        else
+
+        // write out the merged shader code:
+        std::string vertBodyText;
+        vertBodyText = vertBody.str();
+        std::stringstream vertShaderBuf;
+        if ( vertVersion > 0 )
+            vertShaderBuf << "#version " << vertVersion << "\n";
+        for( HeaderMap::const_iterator h = vertHeaders.begin(); h != vertHeaders.end(); ++h )
+            vertShaderBuf << h->second << "\n";
+        vertShaderBuf << vertBodyText << "\n";
+        vertBodyText = vertShaderBuf.str();
+
+        std::string fragBodyText;
+        fragBodyText = fragBody.str();
+        std::stringstream fragShaderBuf;
+        if ( fragVersion > 0 )
+            fragShaderBuf << "#version " << fragVersion << "\n";
+        for( HeaderMap::const_iterator h = fragHeaders.begin(); h != fragHeaders.end(); ++h )
+            fragShaderBuf << h->second << "\n";
+        fragShaderBuf << fragBodyText << "\n";
+        fragBodyText = fragShaderBuf.str();
+
+        // add them to the program.
+        program->addShader( new osg::Shader(osg::Shader::VERTEX, vertBodyText) );
+        program->addShader( new osg::Shader(osg::Shader::FRAGMENT, fragBodyText) );
+
+        OE_TEST << LC 
+            << "\nMERGED VERTEX SHADER: \n\n" << vertBodyText << "\n\n"
+            << "MERGED FRAGMENT SHADER: \n\n" << fragBodyText << "\n" << std::endl;
+    }
+    else
+    {
+        for( VirtualProgram::ShaderVector::const_iterator i = shaders.begin(); i != shaders.end(); ++i )
         {
-            ShaderFactory* sf = osgEarth::Registry::instance()->getShaderFactory();
-
-            // build a new set of accumulated functions, to support the creation of main()
-            const_cast<VirtualProgram*>(this)->refreshAccumulatedFunctions( state );
-                
-            osg::Shader* vert_main = sf->createVertexShaderMain( _accumulatedFunctions );
-            const_cast<VirtualProgram*>(this)->setShader( "osgearth_vert_main", vert_main );
-            shaderMap[ ShaderSemantic("osgearth_vert_main", osg::Shader::VERTEX) ] = vert_main;
-
-            osg::Shader* frag_main = sf->createFragmentShaderMain( _accumulatedFunctions );
-            const_cast<VirtualProgram*>(this)->setShader( "osgearth_frag_main", frag_main );
-            shaderMap[ ShaderSemantic("osgearth_frag_main", osg::Shader::FRAGMENT) ] = frag_main;
-            
-            // rebuild the shader list now that we've changed the shader map.
-            sl.clear();
-            for( ShaderMap::iterator i = shaderMap.begin(); i != shaderMap.end(); ++i )
-                sl.push_back( i->second );
+            program->addShader( i->get() );
+            if ( s_dumpShaders )
+                OE_NOTICE << LC << "SHADER " << i->get()->getName() << ":\n" << i->get()->getShaderSource() << "\n" << std::endl;
+        }
+    }
+
+    // add the attribute bindings
+    for( VirtualProgram::AttribBindingList::const_iterator abl = attribBindings.begin(); abl != attribBindings.end(); ++abl )
+    {
+        program->addBindAttribLocation( abl->first, abl->second );
+    }
+}
 
-            // Create a new program and add all our shaders.
-            program = new osg::Program();
 
-#if !MERGE_SHADERS
-            for( ShaderList::iterator i = sl.begin(); i != sl.end(); ++i )
+void
+VirtualProgram::addTemplateDataToProgram( osg::Program* program )
+{
+    const osg::Program::FragDataBindingList& fbl = _template->getFragDataBindingList();
+    for( osg::Program::FragDataBindingList::const_iterator i = fbl.begin(); i != fbl.end(); ++i )
+        program->addBindFragDataLocation( i->first, i->second );
+
+    const osg::Program::UniformBlockBindingList& ubl = _template->getUniformBlockBindingList();
+    for( osg::Program::UniformBlockBindingList::const_iterator i = ubl.begin(); i != ubl.end(); ++i )
+        program->addBindUniformBlock( i->first, i->second );
+}
+
+
+osg::Program*
+VirtualProgram::buildProgram(osg::State&        state, 
+                             ShaderMap&         accumShaderMap,
+                             AttribBindingList& accumAttribBindings)
+{
+    OE_TEST << LC << "Building new Program for VP " << getName() << std::endl;
+
+    // build a new set of accumulated functions, to support the creation of main()
+    refreshAccumulatedFunctions( state );
+
+    // No matching program in the cache; make it.
+    ShaderFactory* sf = osgEarth::Registry::instance()->getShaderFactory();
+
+    // create the MAINs. Save the old ones so we can replace them in the cache.
+    osg::ref_ptr<osg::Shader> oldVertMain = _vertMain.get();
+    _vertMain = sf->createVertexShaderMain( _accumulatedFunctions, _useLightingShaders );
+
+    osg::ref_ptr<osg::Shader> oldFragMain = _fragMain.get();
+    _fragMain = sf->createFragmentShaderMain( _accumulatedFunctions, _useLightingShaders );
+
+#if 0
+    osg::Shader* old_vert_main = getShader( VERTEX_MAIN );
+    osg::ref_ptr<osg::Shader> vert_main = sf->createVertexShaderMain( _accumulatedFunctions, _useLightingShaders );
+    setShader( VERTEX_MAIN, vert_main.get() );
+    addToAccumulatedMap( accumShaderMap, VERTEX_MAIN, ShaderEntry(vert_main.get(), osg::StateAttribute::ON) );
+
+    osg::Shader* old_frag_main = getShader( FRAGMENT_MAIN );
+    osg::ref_ptr<osg::Shader> frag_main = sf->createFragmentShaderMain( _accumulatedFunctions, _useLightingShaders );
+    setShader( FRAGMENT_MAIN, frag_main.get() );
+    addToAccumulatedMap( accumShaderMap, FRAGMENT_MAIN, ShaderEntry(frag_main.get(), osg::StateAttribute::ON) );
+#endif
+
+    // rebuild the shader list now that we've changed the shader map.
+    ShaderVector keyVector;
+    for( ShaderMap::iterator i = accumShaderMap.begin(); i != accumShaderMap.end(); ++i )
+    {
+        keyVector.push_back( i->second.first.get() );
+    }
+
+    // finally, add the mains (AFTER building the key vector)
+    ShaderVector buildVector( keyVector );
+    buildVector.push_back( _vertMain.get() );
+    buildVector.push_back( _fragMain.get() );
+
+
+    // Create a new program and add all our shaders.
+    if ( s_dumpShaders )
+        OE_NOTICE << LC << "---------PROGRAM: " << getName() << " ---------------\n" << std::endl;
+
+    osg::Program* program = new osg::Program();
+    program->setName(getName());
+    addShadersToProgram( buildVector, accumAttribBindings, program );
+    //addShadersToProgram( vec, accumAttribBindings, program );
+    addTemplateDataToProgram( program );
+
+
+    // Since we replaced the "mains", we have to go through the cache and update all its
+    // entries to point at the new mains instead of the old ones.
+//    if ( old_vert_main || old_frag_main )
+    if ( oldVertMain.valid() || oldFragMain.valid() )
+    {
+        ProgramMap newProgramCache;
+
+        for( ProgramMap::iterator m = _programCache.begin(); m != _programCache.end(); ++m )
+        {
+            const ShaderVector& originalKey = m->first;
+
+#if 0
+            // build a new cache key:
+            ShaderVector newKey;
+
+            for( ShaderVector::const_iterator i = original.begin(); i != original.end(); ++i )
             {
-                program->addShader( i->get() );
+                if ( i->get() == old_vert_main )
+                    newKey.push_back( vert_main.get() );
+                else if ( i->get() == old_frag_main )
+                    newKey.push_back( frag_main.get() );
+                else
+                    newKey.push_back( i->get() );
             }
-#else
-            std::string strFragment;
-            std::string strVertex;
-            std::string strGeometry;
-            
-            for( ShaderList::iterator i = sl.begin(); i != sl.end(); ++i )
+#endif
+
+            osg::Program* newProgram = new osg::Program();
+            newProgram->setName( m->second->getName() );
+
+            ShaderVector newBuildKey( originalKey );
+            newBuildKey.push_back( _vertMain.get() );
+            newBuildKey.push_back( _fragMain.get() );
+            addShadersToProgram( newBuildKey, m->second->getAttribBindingList(), newProgram );
+
+            addTemplateDataToProgram( newProgram );
+
+            //newProgramCache[newKey] = newProgram;
+            newProgramCache[originalKey] = newProgram;
+        }
+
+        _programCache = newProgramCache;
+    }
+
+    // finally, put own new program in the cache.
+    _programCache[ keyVector ] = program;
+
+    return program;
+}
+
+
+void
+VirtualProgram::apply( osg::State& state ) const
+{
+    if ( _shaderMap.empty() )
+    {
+        // if there's no data in the VP, unload any existing program.
+        const unsigned int contextID = state.getContextID();
+        const osg::GL2Extensions* extensions = osg::GL2Extensions::Get(contextID,true);
+        if( ! extensions->isGlslSupported() ) return;
+
+        extensions->glUseProgram( 0 );
+        state.setLastAppliedProgramObject(0);
+        return;
+    }
+
+    // first, find and collect all the VirtualProgram attributes:
+    ShaderMap         accumShaderMap;
+    AttribBindingList accumAttribBindings;
+    
+    if ( _inherit )
+    {
+        const StateHack::AttributeVec* av = StateHack::GetAttributeVec( state, this );
+        if ( av && av->size() > 0 )
+        {
+            // find the deepest VP that doesn't inherit:
+            unsigned start = 0;
+            for( start = (int)av->size()-1; start > 0; --start )
             {
-                if( i->get()->getType() == osg::Shader::FRAGMENT )
-                    strFragment += i->get()->getShaderSource();
-                else if ( i->get()->getType() == osg::Shader::VERTEX )
-                    strVertex += i->get()->getShaderSource();
-                else if ( i->get()->getType() == osg::Shader::GEOMETRY )
-                    strGeometry += i->get()->getShaderSource();
+                const VirtualProgram* vp = dynamic_cast<const VirtualProgram*>( (*av)[start].first );
+                if ( vp && (vp->_mask & _mask) && vp->_inherit == false )
+                    break;
             }
+            
+            // collect shaders from there to here:
+            for( unsigned i=start; i<av->size(); ++i )
+            {
+                const VirtualProgram* vp = dynamic_cast<const VirtualProgram*>( (*av)[i].first );
+                if ( vp && (vp->_mask && _mask) )
+                {
+                    for( ShaderMap::const_iterator i = vp->_shaderMap.begin(); i != vp->_shaderMap.end(); ++i )
+                    {
+                        addToAccumulatedMap( accumShaderMap, i->first, i->second );
+                    }
 
-            if( strFragment.length() > 0 )
+                    const AttribBindingList& abl = vp->getAttribBindingList();
+                    accumAttribBindings.insert( abl.begin(), abl.end() );
+                }
+            }
+        }
+    }
+    
+    // next add the local shader components to the map, respecting the override values:
+    for( ShaderMap::const_iterator i = _shaderMap.begin(); i != _shaderMap.end(); ++i )
+    {
+        addToAccumulatedMap( accumShaderMap, i->first, i->second );
+    }
+    const AttribBindingList& abl = this->getAttribBindingList();
+    accumAttribBindings.insert( abl.begin(), abl.end() );
+    
+    
+    if ( accumShaderMap.size() )
+    {
+        // next, assemble a list of the shaders in the map so we can use it as our
+        // program cache key.
+        // (Note: at present, the "cache key" does not include any information on the vertex
+        // attribute bindings. Technically it should, but in practice this might not be an
+        // issue; it is unlikely one would have two identical shader programs with different
+        // bindings.)
+        ShaderVector vec;
+        vec.reserve( accumShaderMap.size() );
+        for( ShaderMap::iterator i = accumShaderMap.begin(); i != accumShaderMap.end(); ++i )
+        {
+            ShaderEntry& entry = i->second;
+            vec.push_back( entry.first.get() );
+        }
+        
+        // see if there's already a program associated with this list:
+        osg::Program* program = 0L;
+        
+        // look up the program:
+        {
+            Threading::ScopedReadLock shared( _programCacheMutex );
+            
+            ProgramMap::const_iterator p = _programCache.find( vec );
+            if ( p != _programCache.end() )
             {
-                program->addShader( new osg::Shader( osg::Shader::FRAGMENT, strFragment ) );
+                program = p->second.get();
             }
-
-            if( strVertex.length() > 0  )
+        }
+        
+        // if not found, lock and build it:
+        if ( !program )
+        {
+            Threading::ScopedWriteLock exclusive( _programCacheMutex );
+            
+            // look again in case of contention:
+            ProgramMap::const_iterator p = _programCache.find( vec );
+            if ( p != _programCache.end() )
             {
-                program->addShader( new osg::Shader( osg::Shader::VERTEX, strVertex ) );
+                program = p->second.get();
             }
-
-            if( strGeometry.length() > 0  )
+            else
             {
-                program->addShader( new osg::Shader( osg::Shader::GEOMETRY, strGeometry ) );
+                VirtualProgram* nc = const_cast<VirtualProgram*>(this);
+                program = nc->buildProgram( state, accumShaderMap, accumAttribBindings );
             }
-#endif
-            // finally, cache the program so we only regenerate it when it changes.
-            _programMap[ sl ] = program;
         }
-
+        
         // finally, apply the program attribute.
         program->apply( state );
     }
-    else
-    {
-        Program::apply( state );
-    }
 }
 
 void
@@ -259,26 +768,42 @@ VirtualProgram::refreshAccumulatedFunctions( const osg::State& state )
     // This method searches the state's attribute stack and accumulates all 
     // the user functions (including those in this program).
 
-    Threading::ScopedMutexLock lock( _functionsMutex );
+    // mutex no longer required since this method is called safely
+    //Threading::ScopedMutexLock lock( _functionsMutex );
 
     _accumulatedFunctions.clear();
 
-    const StateHack::AttributeVec* av = StateHack::GetAttributeVec( state, this );
-    for( StateHack::AttributeVec::const_iterator i = av->begin(); i != av->end(); ++i )
+    if ( _inherit )
     {
-        const osg::StateAttribute* sa = i->first;
-        const VirtualProgram* vp = dynamic_cast< const VirtualProgram* >( sa );
-        if( vp && vp != this && ( vp->_mask & _mask ) )
+        const StateHack::AttributeVec* av = StateHack::GetAttributeVec( state, this );
+        if ( av && av->size() > 0 )
         {
-            FunctionLocationMap rhs;
-            vp->getFunctions( rhs );
+            // find the closest VP that doesn't inherit:
+            unsigned start;
+            for( start = (int)av->size()-1; start > 0; --start )
+            {
+                const VirtualProgram* vp = dynamic_cast<const VirtualProgram*>( (*av)[start].first );
+                if ( vp && (vp->_mask & _mask) && vp->_inherit == false )
+                    break;
+            }
 
-            for( FunctionLocationMap::const_iterator j = rhs.begin(); j != rhs.end(); ++j )
+            // collect functions from there on down.
+            for( unsigned i=start; i<av->size(); ++i )
             {
-                const OrderedFunctionMap& ofm = j->second;
-                for( OrderedFunctionMap::const_iterator k = ofm.begin(); k != ofm.end(); ++k )
+                const VirtualProgram* vp = dynamic_cast<const VirtualProgram*>( (*av)[i].first );
+                if ( vp && (vp->_mask && _mask) && (vp != this) )
                 {
-                    _accumulatedFunctions[j->first].insert( *k );
+                    FunctionLocationMap rhs;
+                    vp->getFunctions( rhs );
+
+                    for( FunctionLocationMap::const_iterator j = rhs.begin(); j != rhs.end(); ++j )
+                    {
+                        const OrderedFunctionMap& ofm = j->second;
+                        for( OrderedFunctionMap::const_iterator k = ofm.begin(); k != ofm.end(); ++k )
+                        {
+                            _accumulatedFunctions[j->first].insert( *k );
+                        }
+                    }
                 }
             }
         }
@@ -297,8 +822,16 @@ VirtualProgram::refreshAccumulatedFunctions( const osg::State& state )
 
 //----------------------------------------------------------------------------
 
+std::string
+ShaderFactory::getSamplerName( unsigned unit ) const
+{
+    return Stringify() << "osgearth_tex" << unit;
+}
+
+
 osg::Shader*
-ShaderFactory::createVertexShaderMain( const FunctionLocationMap& functions ) const
+ShaderFactory::createVertexShaderMain(const FunctionLocationMap& functions,
+                                      bool  useLightingShaders ) const
 {
     FunctionLocationMap::const_iterator i = functions.find( LOCATION_VERTEX_PRE_TEXTURING );
     const OrderedFunctionMap* preTexture = i != functions.end() ? &i->second : 0L;
@@ -310,11 +843,14 @@ ShaderFactory::createVertexShaderMain( const FunctionLocationMap& functions ) co
     const OrderedFunctionMap* postLighting = k != functions.end() ? &k->second : 0L;
 
     std::stringstream buf;
-    buf << "void osgearth_vert_setupTexturing(); \n"
-        << "void osgearth_vert_setupLighting(); \n"
-        << "uniform bool osgearth_LightingEnabled; \n"
-        << "uniform float osgearth_CameraElevation; \n"
-        << "varying float osgearth_CameraRange; \n";
+    buf << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision mediump float;\n"
+#endif
+        << "void osgearth_vert_setupColoring(); \n";
+
+    if ( useLightingShaders )
+        buf << "void osgearth_vert_setupLighting(); \n";
 
     if ( preTexture )
         for( OrderedFunctionMap::const_iterator i = preTexture->begin(); i != preTexture->end(); ++i )
@@ -330,28 +866,20 @@ ShaderFactory::createVertexShaderMain( const FunctionLocationMap& functions ) co
 
     buf << "void main(void) \n"
         << "{ \n"
-        << "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
-
-        << "    vec4 position4 = gl_ModelViewMatrix * gl_Vertex; \n"
-        << "    osgearth_CameraRange = length( position4.xyz ); \n"
-
-//        << "    vec3 cameraPos = normalize(vec3( osg_ViewMatrixInverse[3][0], osg_ViewMatrixInverse[3][1], osg_ViewMatrixInverse[3][2] ));
-
-        << "    vec3 position = position4.xyz / position4.w; \n"
-        << "    vec3 normal = normalize( gl_NormalMatrix * gl_Normal ); \n";
+        << "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n";
 
     if ( preTexture )
         for( OrderedFunctionMap::const_iterator i = preTexture->begin(); i != preTexture->end(); ++i )
             buf << "    " << i->second << "(); \n";
 
-    buf << "    osgearth_vert_setupTexturing(); \n";
+    buf << "    osgearth_vert_setupColoring(); \n";
     
     if ( preLighting )
         for( OrderedFunctionMap::const_iterator i = preLighting->begin(); i != preLighting->end(); ++i )
             buf << "    " << i->second << "(); \n";
 
-    buf << "    if ( osgearth_LightingEnabled ) \n"
-        << "        osgearth_vert_setupLighting(); \n";
+    if ( useLightingShaders )
+        buf << "    osgearth_vert_setupLighting(); \n";
     
     if ( postLighting )
         for( OrderedFunctionMap::const_iterator i = postLighting->begin(); i != postLighting->end(); ++i )
@@ -359,14 +887,16 @@ ShaderFactory::createVertexShaderMain( const FunctionLocationMap& functions ) co
 
     buf << "} \n";
 
-    std::string str = buf.str();
+    std::string str;
+    str = buf.str();
     //OE_INFO << str << std::endl;
     return new osg::Shader( osg::Shader::VERTEX, str );
 }
 
 
 osg::Shader*
-ShaderFactory::createFragmentShaderMain( const FunctionLocationMap& functions ) const
+ShaderFactory::createFragmentShaderMain(const FunctionLocationMap& functions,
+                                        bool  useLightingShaders ) const
 {
     FunctionLocationMap::const_iterator i = functions.find( LOCATION_FRAGMENT_PRE_TEXTURING );
     const OrderedFunctionMap* preTexture = i != functions.end() ? &i->second : 0L;
@@ -378,8 +908,14 @@ ShaderFactory::createFragmentShaderMain( const FunctionLocationMap& functions )
     const OrderedFunctionMap* postLighting = k != functions.end() ? &k->second : 0L;
 
     std::stringstream buf;
-    buf << "void osgearth_frag_applyTexturing( inout vec4 color ); \n"
-        << "void osgearth_frag_applyLighting( inout vec4 color ); \n";
+    buf << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision mediump float;\n"
+#endif
+        << "void osgearth_frag_applyColoring( inout vec4 color ); \n";
+
+    if ( useLightingShaders )
+        buf << "void osgearth_frag_applyLighting( inout vec4 color ); \n";
 
     if ( preTexture )
         for( OrderedFunctionMap::const_iterator i = preTexture->begin(); i != preTexture->end(); ++i )
@@ -393,135 +929,313 @@ ShaderFactory::createFragmentShaderMain( const FunctionLocationMap& functions )
         for( OrderedFunctionMap::const_iterator i = postLighting->begin(); i != postLighting->end(); ++i )
             buf << "void " << i->second << "( inout vec4 color ); \n";
 
-    buf << "uniform bool osgearth_LightingEnabled; \n"
-        << "void main(void) \n"
+    buf << "void main(void) \n"
         << "{ \n"
-        << "    vec4 color = vec4(1,1,1,1); \n";
+        << "    vec4 color = vec4(1,1,1,1); \n"; //gl_Color; \n"; //vec4(1,1,1,1); \n";
 
     if ( preTexture )
         for( OrderedFunctionMap::const_iterator i = preTexture->begin(); i != preTexture->end(); ++i )
             buf << "    " << i->second << "( color ); \n";
 
-    buf << "    osgearth_frag_applyTexturing( color ); \n";
+    buf << "    osgearth_frag_applyColoring( color ); \n";
 
     if ( preLighting )
         for( OrderedFunctionMap::const_iterator i = preLighting->begin(); i != preLighting->end(); ++i )
             buf << "    " << i->second << "( color ); \n";
     
-    buf << "    if (osgearth_LightingEnabled) \n"
-        << "        osgearth_frag_applyLighting( color ); \n";
+    if ( useLightingShaders )
+        buf << "    osgearth_frag_applyLighting( color ); \n";
 
     if ( postLighting )
         for( OrderedFunctionMap::const_iterator i = postLighting->begin(); i != postLighting->end(); ++i )
             buf << "    " << i->second << "( color ); \n";
 
     buf << "    gl_FragColor = color; \n"
+
+#if 0 // GW: testing logarithmic depth buffer remapping
+        << "    float A = gl_ProjectionMatrix[2].z; \n"
+        << "    float B = gl_ProjectionMatrix[3].z; \n"
+        << "    float n = -B/(1.0-A); \n"
+        << "    float f =  B/(1.0+A); \n"
+        << "    float C = 1; \n"
+        << "    gl_FragDepth = log(C*gl_FragCoord.z+1) / log(C*f+1); \n"
+#endif
         << "} \n";  
 
-    std::string str = buf.str();
+    std::string str;
+    str = buf.str();
     //OE_INFO << str;
     return new osg::Shader( osg::Shader::FRAGMENT, str );
 }
-
+ 
 
 osg::Shader*
-ShaderFactory::createDefaultTextureVertexShader( int numTexCoordSets ) const
+ShaderFactory::createDefaultColoringVertexShader( unsigned numTexCoordSets ) const
 {
     std::stringstream buf;
 
-    buf << "void osgearth_vert_setupTexturing() \n"
-        << "{ \n";
+    buf << "#version " << GLSL_VERSION_STR << "\n";
+#ifdef OSG_GLES2_AVAILABLE
+    buf << "precision mediump float;\n";
+#endif
+    
+    //if ( numTexCoordSets > 0 )
+    //{
+    //    buf << "varying vec4 osg_TexCoord[" << numTexCoordSets << "];\n";
+    //}
+    buf << "varying vec4 osg_TexCoord[" << Registry::capabilities().getMaxGPUTextureCoordSets() << "];\n";
+
+    buf
+        << "varying vec4 osg_FrontColor;\n"
+        << "varying vec4 osg_FrontSecondaryColor;\n"
+    
+        << "void osgearth_vert_setupColoring() \n"
+        << "{ \n"
+        << "    osg_FrontColor = gl_Color; \n"
+        << "    osg_FrontSecondaryColor = vec4(0.0); \n";
 
-    //TODO: gl_TexCoord et.al. are depcrecated so we should replace them ...
-    for(int i=0; i<numTexCoordSets; ++i )
+    //TODO: gl_TexCoord et.al. are depcrecated so we should replace them;
+    // this approach also only support up to 8 texture coord units
+    for(unsigned i=0; i<numTexCoordSets; ++i )
     {
-        buf << "    gl_TexCoord["<< i <<"] = gl_MultiTexCoord"<< i << "; \n";
+        buf << "    osg_TexCoord["<< i <<"] = gl_MultiTexCoord"<< i << "; \n";
     }
         
     buf << "} \n";
 
-    std::string str = buf.str();
-    return new osg::Shader( osg::Shader::VERTEX, str );
+    std::string str;
+    str = buf.str();
+
+    osg::Shader* shader = new osg::Shader(osg::Shader::VERTEX, str);
+    shader->setName( VERTEX_SETUP_COLORING );
+    return shader;
 }
 
 
 osg::Shader*
-ShaderFactory::createDefaultTextureFragmentShader( int numTexImageUnits ) const
+ShaderFactory::createDefaultColoringFragmentShader( unsigned numTexImageUnits ) const
 {
     std::stringstream buf;
 
-    buf << "#version 120 \n";
-
+    buf << "#version " << GLSL_VERSION_STR << "\n";
+#ifdef OSG_GLES2_AVAILABLE
+    buf << "precision mediump float;\n";
+#endif
+    
+    buf << "varying vec4 osg_FrontColor;\n";
+    
     if ( numTexImageUnits > 0 )
     {
+        buf << "varying vec4 osg_TexCoord[" << Registry::capabilities().getMaxGPUTextureCoordSets() << "];\n";
         buf << "uniform sampler2D ";
-        for( int i=0; i<numTexImageUnits; ++i )
-            buf << "tex" << i << (i+1 < numTexImageUnits? "," : "; \n");
+        for( unsigned i=0; i<numTexImageUnits; ++i )
+        {
+            buf << getSamplerName(i) << (i+1 < numTexImageUnits? "," : "; \n");
+        }
     }
 
-    buf << "void osgearth_frag_applyTexturing( inout vec4 color ) \n"
+    buf << "void osgearth_frag_applyColoring( inout vec4 color ) \n"
         << "{ \n"
-        << "    vec3 color3 = color.rgb; \n"
-        << "    vec4 texel; \n";
-
-    for(int i=0; i<numTexImageUnits; ++i )
+        << "    color = color * osg_FrontColor; \n";
+    
+    if ( numTexImageUnits > 0 )
     {
-        buf << "    texel = texture2D(tex" << i << ", gl_TexCoord["<< i <<"].st); \n"
-            << "    color3 = mix( color3, texel.rgb, texel.a ); \n";
+        buf << "    vec4 texel; \n";
+
+        for(unsigned i=0; i<numTexImageUnits; ++i )
+        {
+            buf << "    texel = texture2D(" << getSamplerName(i) << ", osg_TexCoord["<< i <<"].st); \n";
+            buf << "    color.rgb = mix( color.rgb, texel.rgb, texel.a ); \n";
+            if ( i == 0 )
+                buf << "    color.a = texel.a * color.a; \n";
+        }
     }
-        
-    buf << "    color = vec4(color3,color.a); \n"
-        << "} \n";
 
-    std::string str = buf.str();
-    return new osg::Shader( osg::Shader::FRAGMENT, str );
+    buf << "} \n";
+
+    std::string str;
+    str = buf.str();
+
+    osg::Shader* shader = new osg::Shader( osg::Shader::FRAGMENT, str );
+    shader->setName( FRAGMENT_APPLY_COLORING );
+    return shader;
 }
 
 
 osg::Shader*
 ShaderFactory::createDefaultLightingVertexShader() const
 {
-    static char s_PerVertexLighting_VertexShaderSource[] = 
-        "void osgearth_vert_setupLighting()                                         \n"
-        "{                                                                          \n"
-        "    vec3 normal = normalize( gl_NormalMatrix * gl_Normal );                \n"
-        "    float NdotL = dot( normal, normalize(gl_LightSource[0].position.xyz) );\n"
-        "    NdotL = max( 0.0, NdotL );                                             \n"
-        "    float NdotHV = dot( normal, gl_LightSource[0].halfVector.xyz );        \n"
-        "    NdotHV = max( 0.0, NdotHV );                                           \n"
-        "                                                                           \n"
-        "    gl_FrontColor = gl_FrontLightModelProduct.sceneColor +                 \n"
-        "                    gl_FrontLightProduct[0].ambient +                      \n"
-        "                    gl_FrontLightProduct[0].diffuse * NdotL;               \n"
-        "                                                                           \n"
-        "    gl_FrontSecondaryColor = vec4(0.0);                                    \n"
-        "                                                                           \n"
-        "    if ( NdotL * NdotHV > 0.0 )                                            \n"
-        "        gl_FrontSecondaryColor = gl_FrontLightProduct[0].specular *        \n"
-        "                                 pow( NdotHV, gl_FrontMaterial.shininess );\n"
-        "                                                                           \n"
-        "    gl_BackColor = gl_FrontColor;                                          \n"
-        "    gl_BackSecondaryColor = gl_FrontSecondaryColor;                        \n"
-        "}                                                                          \n";
-
-    return new osg::Shader( osg::Shader::VERTEX, s_PerVertexLighting_VertexShaderSource );
+    int maxLights = Registry::capabilities().getMaxLights();
+    
+    std::stringstream buf;
+    buf << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+    << "precision mediump float;\n"
+    
+    //add lightsource typedef and uniform array
+    << "struct osg_LightSourceParameters {"
+    << "    vec4  ambient;"
+    << "    vec4  diffuse;"
+    << "    vec4  specular;"
+    << "    vec4  position;"
+    << "    vec4  halfVector;"
+    << "    vec3  spotDirection;" 
+    << "    float  spotExponent;"
+    << "    float  spotCutoff;"
+    << "    float  spotCosCutoff;" 
+    << "    float  constantAttenuation;"
+    << "    float  linearAttenuation;"
+    << "    float  quadraticAttenuation;" 
+    << "};\n"
+    << "uniform osg_LightSourceParameters osg_LightSource[" << maxLights << "];\n"
+    
+    << "struct  osg_LightProducts {"
+    << "    vec4  ambient;"
+    << "    vec4  diffuse;"
+    << "    vec4  specular;"
+    << "};\n"
+    << "uniform osg_LightProducts osg_FrontLightProduct[" << maxLights << "];\n"
+    
+#endif
+    
+    << "varying vec4 osg_FrontColor;\n"
+    << "varying vec4 osg_FrontSecondaryColor;\n"
+    
+    << "uniform bool osgearth_LightingEnabled; \n"
+    
+#ifndef OSG_GLES2_AVAILABLE
+    << "void osgearth_vert_setupLighting() \n"
+    << "{ \n"
+    << "    if (osgearth_LightingEnabled) \n"
+    << "    { \n"
+    << "        vec3 normal = gl_NormalMatrix * gl_Normal; \n"
+    << "        float NdotL = dot( normal, normalize(gl_LightSource[0].position.xyz) ); \n"
+    << "        NdotL = max( 0.0, NdotL ); \n"
+    << "        float NdotHV = dot( normal, gl_LightSource[0].halfVector.xyz ); \n"
+    << "        NdotHV = max( 0.0, NdotHV ); \n"
+
+    << "        osg_FrontColor.rgb = osg_FrontColor.rgb * \n"
+    << "            clamp( \n"
+    << "                gl_LightModel.ambient + \n"
+    << "                gl_FrontLightProduct[0].ambient +          \n"
+    << "                gl_FrontLightProduct[0].diffuse * NdotL, 0.0, 1.0).rgb;   \n"
+
+    << "        osg_FrontSecondaryColor = vec4(0.0); \n"
+    << "        if ( NdotL * NdotHV > 0.0 ) \n"
+    << "        { \n"
+    << "            osg_FrontSecondaryColor.rgb = (gl_FrontLightProduct[0].specular * \n"
+    << "                                          pow( NdotHV, gl_FrontMaterial.shininess )).rgb;\n"
+    << "        } \n"
+
+//    << "        gl_BackColor = gl_FrontColor; \n"
+//    << "        gl_BackSecondaryColor = gl_FrontSecondaryColor; \n"
+    << "    } \n"
+    << "} \n";
+#else
+    << "void osgearth_vert_setupLighting() \n"
+    << "{ \n"
+    << "    if (osgearth_LightingEnabled) \n"
+    << "    { \n"
+    << "        float shine = 10.0;\n"
+    << "        vec4 lightModelAmbi = vec4(0.1,0.1,0.1,1.0);\n"
+//gl_FrontMaterial.shininess
+//gl_LightModel.ambient
+    << "        vec3 normal = gl_NormalMatrix * gl_Normal; \n"
+    << "        float NdotL = dot( normal, normalize(osg_LightSource[0].position.xyz) ); \n"
+    << "        NdotL = max( 0.0, NdotL ); \n"
+    << "        float NdotHV = dot( normal, osg_LightSource[0].halfVector.xyz ); \n"
+    << "        NdotHV = max( 0.0, NdotHV ); \n"
+    
+    << "        osg_FrontColor.rgb = osg_FrontColor.rgb * \n"
+    << "            clamp( \n"
+    << "                lightModelAmbi + \n"
+    << "                osg_FrontLightProduct[0].ambient +          \n"
+    << "                osg_FrontLightProduct[0].diffuse * NdotL, 0.0, 1.0).rgb;   \n"
+    
+    << "        osg_FrontSecondaryColor = vec4(0.0); \n"
+    
+    << "        if ( NdotL * NdotHV > 0.0 ) \n"
+    << "        { \n"
+    << "            osg_FrontSecondaryColor.rgb = (osg_FrontLightProduct[0].specular * \n"
+    << "                                          pow( NdotHV, shine )).rgb;\n"
+    << "        } \n"
+    //    << "        gl_BackColor = gl_FrontColor; \n"
+    //    << "        gl_BackSecondaryColor = gl_FrontSecondaryColor; \n"
+    << "    } \n"
+    << "} \n";
+#endif
+
+    osg::Shader* shader = new osg::Shader( osg::Shader::VERTEX, buf.str().c_str() );
+    shader->setName( VERTEX_SETUP_LIGHTING );
+    return shader;
 }
 
 
 osg::Shader*
 ShaderFactory::createDefaultLightingFragmentShader() const
 {
-    static char s_PerVertexLighting_FragmentShaderSource[] =
-        "void osgearth_frag_applyLighting( inout vec4 color )                       \n"
-        "{                                                                          \n"
-        "    float alpha = color.a;                                                 \n"
-        "    color = color * gl_Color + gl_SecondaryColor;                          \n"
-        "    color.a = alpha;                                                       \n"
-        "}                                                                          \n";
+    std::stringstream buf;
+    
+    buf << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+    << "precision mediump float;\n"
+#endif
+    
+    << "varying vec4 osg_FrontColor;\n"
+    << "varying vec4 osg_FrontSecondaryColor;\n"
+    
+    << "uniform bool osgearth_LightingEnabled; \n"
+    << "void osgearth_frag_applyLighting( inout vec4 color ) \n"
+    << "{ \n"
+    << "    if ( osgearth_LightingEnabled ) \n"
+    << "    { \n"
+    << "        float alpha = color.a; \n"
+    << "        color = (color * osg_FrontColor) + osg_FrontSecondaryColor; \n"
+    << "        color.a = alpha; \n"
+    << "    } \n"
+    << "} \n";
+
+    osg::Shader* shader = new osg::Shader( osg::Shader::FRAGMENT, buf.str().c_str() );
+    shader->setName( FRAGMENT_APPLY_LIGHTING );
+    return shader;
+}
+
+
+osg::Shader*
+ShaderFactory::createColorFilterChainFragmentShader( const std::string& function, const ColorFilterChain& chain ) const
+{
+    std::stringstream buf;
+    buf << "#version " << GLSL_VERSION_STR << "\n";
+#ifdef OSG_GLES2_AVAILABLE
+    buf << "precision mediump float;\n";
+#endif
+
+    // write out the shader function prototypes:
+    for( ColorFilterChain::const_iterator i = chain.begin(); i != chain.end(); ++i )
+    {
+        ColorFilter* filter = i->get();
+        buf << "void " << filter->getEntryPointFunctionName() << "(in int slot, inout vec4 color);\n";
+    }
+
+    // write out the main function:
+    buf << "void " << function << "(in int slot, inout vec4 color) \n"
+        << "{ \n";
+
+    // write out the function calls. if there are none, it's a NOP.
+    for( ColorFilterChain::const_iterator i = chain.begin(); i != chain.end(); ++i )
+    {
+        ColorFilter* filter = i->get();
+        buf << "    " << filter->getEntryPointFunctionName() << "(slot, color);\n";
+    }
+        
+    buf << "} \n";
 
-    return new osg::Shader( osg::Shader::FRAGMENT, s_PerVertexLighting_FragmentShaderSource );
+    std::string bufstr;
+    bufstr = buf.str();
+    return new osg::Shader(osg::Shader::FRAGMENT, bufstr);
 }
 
+
 //--------------------------------------------------------------------------
 
 #if 0
@@ -556,4 +1270,3 @@ static char s_PerFragmentDirectionalLighting_FragmentShaderSource[] =
 
 #endif
 
-//------------------------------------------------------------------------
diff --git a/src/osgEarth/ShaderGenerator b/src/osgEarth/ShaderGenerator
new file mode 100644
index 0000000..4bd0346
--- /dev/null
+++ b/src/osgEarth/ShaderGenerator
@@ -0,0 +1,71 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2011 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_SHADER_GENERATOR_H
+#define OSGEARTH_SHADER_GENERATOR_H 1
+
+#include <osgEarth/Common>
+#include <osg/NodeVisitor>
+#include <osg/State>
+#include <osgEarth/StateSetCache>
+
+namespace osgEarth
+{
+    /**
+     * Utility class that will traverse a scene graph and generate a
+     * set of VirtualProgram attributes to render it as best it can using
+     * shaders.
+     */
+    class OSGEARTH_EXPORT ShaderGenerator : public osg::NodeVisitor
+    {
+    public:
+        /**
+         * Constructs a new shader generator
+         */
+        ShaderGenerator();
+
+        /**
+         * Constructs a new shader generator that will use an external
+         * state set cache to optimize state changes.
+         */
+        ShaderGenerator( StateSetCache* cache );
+
+        virtual ~ShaderGenerator() { }
+
+
+    public: // osg::NodeVisitor
+
+        void apply( osg::Node& );
+
+        void apply( osg::Geode& );
+
+    protected:
+
+        void apply( osg::Drawable* );
+
+        bool generate( osg::StateSet* stateSet, osg::ref_ptr<osg::StateSet>& replacement );
+
+        osg::ref_ptr<osg::State> _state;
+
+        osg::ref_ptr<StateSetCache> _stateSetCache;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_DRAPEABLE_NODE_H
diff --git a/src/osgEarth/ShaderGenerator.cpp b/src/osgEarth/ShaderGenerator.cpp
new file mode 100644
index 0000000..5e1de73
--- /dev/null
+++ b/src/osgEarth/ShaderGenerator.cpp
@@ -0,0 +1,389 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/ShaderGenerator>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+
+#include <osg/Drawable>
+#include <osg/Geode>
+#include <osg/Texture1D>
+#include <osg/Texture2D>
+#include <osg/Texture3D>
+#include <osg/TexEnv>
+
+#define LC "[ShaderGenerator] "
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+// compatibility string for GLES:
+
+#ifdef OSG_GLES2_AVAILABLE
+#   define GLSL_PRECISION "precision mediump float;"
+#   define MEDIUMP        "mediump "
+#   define LOWP           "lowp "
+#   define HIGHP          "highp "
+#else
+#   define GLSL_PRECISION ""
+#   define MEDIUMP        ""
+#   define LOWP           ""
+#   define HIGHP          ""
+#endif
+
+// shader names
+#define TEX_COORD    "oe_sg_texcoord"
+#define SAMPLER      "oe_sg_sampler"
+#define ATTRIB       "oe_sg_attrib"
+#define TEXENV_COLOR "oe_sg_texenvcolor"
+
+#define VERTEX_FUNCTION   "oe_sg_vert"
+#define FRAGMENT_FUNCTION "oe_sg_frag"
+
+// other stuff
+#define INDENT "    "
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    /**
+     * The OSG State extended with mode/attribute accessors.
+     */
+    class StateEx : public osg::State
+    {
+    public:
+        StateEx() : State() {}
+        
+        osg::StateAttribute::GLModeValue getMode(osg::StateAttribute::GLMode mode,
+                                                 osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            return getMode(_modeMap, mode, def);
+        }
+        
+        osg::StateAttribute* getAttribute(osg::StateAttribute::Type type, unsigned int member = 0) const
+        {
+            return getAttribute(_attributeMap, type, member);
+        }
+        
+        osg::StateAttribute::GLModeValue getTextureMode(unsigned int unit,
+                                                        osg::StateAttribute::GLMode mode,
+                                                        osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            return unit < _textureModeMapList.size() ? getMode(_textureModeMapList[unit], mode, def) : def;
+        }
+
+        unsigned getNumTextureAttributes() const 
+        {
+            return _textureAttributeMapList.size();
+        }
+
+        osg::StateAttribute* getTextureAttribute(unsigned int unit, osg::StateAttribute::Type type) const
+        {
+            return unit < _textureAttributeMapList.size() ? getAttribute(_textureAttributeMapList[unit], type, 0) : 0;
+        }
+        
+        osg::Uniform* getUniform(const std::string& name) const
+        {
+            UniformMap::const_iterator it = _uniformMap.find(name);
+            return it != _uniformMap.end() ? 
+            const_cast<osg::Uniform *>(it->second.uniformVec.back().first) : 0;
+        }
+        
+    protected:
+        
+        osg::StateAttribute::GLModeValue getMode(const ModeMap &modeMap,
+                                                 osg::StateAttribute::GLMode mode, 
+                                                 osg::StateAttribute::GLModeValue def = osg::StateAttribute::INHERIT) const
+        {
+            ModeMap::const_iterator it = modeMap.find(mode);
+            return (it != modeMap.end() && it->second.valueVec.size()) ? it->second.valueVec.back() : def;
+        }
+        
+        osg::StateAttribute* getAttribute(const AttributeMap &attributeMap,
+                                          osg::StateAttribute::Type type, unsigned int member = 0) const
+        {
+            AttributeMap::const_iterator it = attributeMap.find(std::make_pair(type, member));
+            return (it != attributeMap.end() && it->second.attributeVec.size()) ? 
+            const_cast<osg::StateAttribute*>(it->second.attributeVec.back().first) : 0;
+        }
+    };
+}
+
+//------------------------------------------------------------------------
+
+ShaderGenerator::ShaderGenerator() :
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
+{
+    _state = new StateEx();
+    _stateSetCache = new StateSetCache();
+}
+
+
+ShaderGenerator::ShaderGenerator( StateSetCache* cache ) :
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
+{
+    _state = new StateEx();
+    _stateSetCache = cache ? cache : new StateSetCache();
+}
+
+
+void 
+ShaderGenerator::apply( osg::Node& node )
+{
+    osg::ref_ptr<osg::StateSet> ss = node.getStateSet();
+    if ( ss.valid() )
+    {
+        _state->pushStateSet( ss.get() );
+
+        osg::ref_ptr<osg::StateSet> replacement;
+        if ( generate(ss.get(), replacement) )
+        {
+            _state->popStateSet();
+            node.setStateSet( replacement.get() );
+            _state->pushStateSet( replacement.get() );
+        }
+    }
+
+    traverse(node);
+
+    if ( ss.get() )
+    {
+        _state->popStateSet();
+    }
+}
+
+
+void 
+ShaderGenerator::apply( osg::Geode& geode )
+{
+    osg::ref_ptr<osg::StateSet> ss = geode.getStateSet();
+    if ( ss.valid() )
+    {
+        _state->pushStateSet( ss.get() );
+
+        osg::ref_ptr<osg::StateSet> replacement;
+        if ( generate(ss.get(), replacement) )
+        {
+            _state->popStateSet();
+            geode.setStateSet( replacement.get() );
+            _state->pushStateSet( replacement.get() );
+        }
+    }
+
+    for( unsigned d = 0; d < geode.getNumDrawables(); ++d )
+    {
+        apply( geode.getDrawable(d) );
+    }
+
+    if ( ss.valid() )
+    {
+        _state->popStateSet();
+    }
+}
+
+
+void 
+ShaderGenerator::apply( osg::Drawable* drawable )
+{
+    if ( drawable )
+    {
+        osg::ref_ptr<osg::StateSet> ss = drawable->getStateSet();
+        if ( ss.valid() )
+        {
+            _state->pushStateSet(ss.get());
+            
+            osg::ref_ptr<osg::StateSet> replacement;
+            if ( generate(ss.get(), replacement) )
+            {
+                drawable->setStateSet(replacement.get());
+            }
+
+            _state->popStateSet();
+        }
+    }
+}
+
+
+bool
+ShaderGenerator::generate( osg::StateSet* ss, osg::ref_ptr<osg::StateSet>& replacement )
+{
+    // do nothing if there's no GLSL support
+    if ( !Registry::capabilities().supportsGLSL() )
+        return false;
+
+    // State object with extra accessors:
+    StateEx* state = static_cast<StateEx*>(_state.get());
+
+    // check for a real osg::Program. If it exists, bail out so that OSG
+    // can use the program already in the graph
+    osg::StateAttribute* program = state->getAttribute(osg::StateAttribute::PROGRAM);
+    if ( dynamic_cast<osg::Program*>(program) != 0L )
+        return false;
+
+    // New stateset that we'll merge with the existing one.
+    osg::ref_ptr<osg::StateSet> newStateSet = new osg::StateSet();
+
+    // check whether the lighting state has changed.
+    if ( ss->getMode(GL_LIGHTING) != osg::StateAttribute::INHERIT )
+    {
+        osg::StateAttribute::GLModeValue value = state->getMode(GL_LIGHTING); // from the state, not the ss.
+        osg::Uniform* lighting = newStateSet->getOrCreateUniform( "osgearth_LightingEnabled", osg::Uniform::BOOL );
+        lighting->set( (value & osg::StateAttribute::ON) != 0 );
+    }
+
+    // if the stateset changes any texture attributes, we need a new virtual program:
+    if ( ss->getTextureAttributeList().size() > 0 )
+    {
+        // work off the state's accumulated texture attribute set:
+        int texCount = state->getNumTextureAttributes();
+
+        // check for an existing VirtualProgram; if found, we'll add to it.
+        // if not, we'll make a new one.
+        osg::ref_ptr<VirtualProgram> vp = dynamic_cast<VirtualProgram*>(program);
+        if ( !vp.valid() )
+            vp = new VirtualProgram();
+
+        // start generating the shader source.
+        std::stringstream vertHead, vertBody, fragHead, fragBody;
+
+        // compatibility strings make it work in GL or GLES.
+        vertHead << "#version " GLSL_VERSION_STR "\n" GLSL_PRECISION;
+        fragHead << "#version " GLSL_VERSION_STR "\n" GLSL_PRECISION;
+
+        // function declarations:
+        vertBody << "void " VERTEX_FUNCTION "()\n{\n";
+
+        fragBody << "void " FRAGMENT_FUNCTION "(inout vec4 color)\n{\n";
+
+        for( int t = 0; t < texCount; ++t )
+        {
+            //todo: consider TexEnv for DECAL/MODULATE
+
+            fragBody << INDENT << MEDIUMP "vec4 texel; \n";
+
+            osg::StateAttribute* tex = state->getTextureAttribute( t, osg::StateAttribute::TEXTURE );
+            if ( tex )
+            {
+                // see if we have a texenv; if so get its blending mode.
+                osg::TexEnv::Mode blendingMode = osg::TexEnv::MODULATE;
+                osg::TexEnv* env = dynamic_cast<osg::TexEnv*>(state->getTextureAttribute(t, osg::StateAttribute::TEXENV) );
+                if ( env )
+                {
+                    blendingMode = env->getMode();
+                    if ( blendingMode == osg::TexEnv::BLEND )
+                    {
+                        newStateSet->getOrCreateUniform( Stringify() << TEXENV_COLOR << t, osg::Uniform::FLOAT_VEC4 )->set( env->getColor() );
+                    }
+                }
+
+                vertHead << "varying " MEDIUMP "vec4 " TEX_COORD << t << ";\n";
+                vertBody << INDENT << TEX_COORD << t << " = gl_MultiTexCoord" << t << ";\n";
+
+                fragHead << "varying " MEDIUMP "vec4 " TEX_COORD << t << ";\n";
+
+                if ( dynamic_cast<osg::Texture1D*>(tex) )
+                {
+                    fragHead << "uniform sampler1D " SAMPLER << t << ";\n";
+                    fragBody << INDENT "texel = texture1D(" SAMPLER << t << ", " TEX_COORD << t << ".x);\n";
+                    newStateSet->getOrCreateUniform( Stringify() << SAMPLER << t, osg::Uniform::SAMPLER_1D )->set( t );
+                }
+                else if ( dynamic_cast<osg::Texture2D*>(tex) )
+                {
+                    fragHead << "uniform sampler2D " SAMPLER << t << ";\n";
+                    fragBody << INDENT "texel = texture2D(" SAMPLER << t << ", " TEX_COORD << t << ".xy);\n";
+                    newStateSet->getOrCreateUniform( Stringify() << SAMPLER << t, osg::Uniform::SAMPLER_2D )->set( t );
+                }
+                else if ( dynamic_cast<osg::Texture3D*>(tex) )
+                {
+                    fragHead << "uniform sampler3D " SAMPLER << t << ";\n";
+                    fragBody << INDENT "texel = texture3D(" SAMPLER << t << ", " TEX_COORD << t << ".xyz);\n";
+                    newStateSet->getOrCreateUniform( Stringify() << SAMPLER << t, osg::Uniform::SAMPLER_3D )->set( t );
+                }
+
+                // See http://www.opengl.org/sdk/docs/man/xhtml/glTexEnv.xml
+                switch( blendingMode )
+                {
+                case osg::TexEnv::REPLACE:
+                    fragBody
+                        << INDENT "color = texel; \n";
+                    break;
+                case osg::TexEnv::MODULATE:
+                    fragBody
+                        << INDENT "color = color * texel; \n";
+                    break;
+                case osg::TexEnv::DECAL:
+                    fragBody
+                        << INDENT "color.rgb = color.rgb * (1.0 - texel.a) + (texel.rgb * texel.a); \n";
+                    break;
+                case osg::TexEnv::BLEND:
+                    fragHead
+                        << "uniform " MEDIUMP "vec4 " TEXENV_COLOR << t << "\n;";
+                    fragBody
+                        << INDENT "color.rgb = color.rgb * (1.0 - texel.rgb) + (" << TEXENV_COLOR << t << ".rgb * texel.rgb); \n"
+                        << INDENT "color.a   = color.a * texel.a; \n";
+                    break;
+                case osg::TexEnv::ADD:
+                default:
+                    fragBody
+                        << INDENT "color.rgb = color.rgb + texel.rgb; \n"
+                        << INDENT "color.a   = color.a * texel.a; \n";
+                }
+            }
+        }
+
+        // close out functions:
+        vertBody << "}\n";
+        fragBody << "}\n";
+
+        // Extract the shader source strings (win compat method)
+        std::string vertBodySrc, vertSrc, fragBodySrc, fragSrc;
+        vertBodySrc = vertBody.str();
+        vertHead << vertBodySrc;
+        vertSrc = vertHead.str();
+        fragBodySrc = fragBody.str();
+        fragHead << fragBodySrc;
+        fragSrc = fragHead.str();
+
+        // inject the shaders:
+        vp->setFunction( VERTEX_FUNCTION,   vertSrc, ShaderComp::LOCATION_VERTEX_PRE_LIGHTING );
+        vp->setFunction( FRAGMENT_FUNCTION, fragSrc, ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+
+        // optimize sharing of VPs.
+        newStateSet->setAttributeAndModes( vp.get(), osg::StateAttribute::ON );
+
+        //osg::ref_ptr<osg::StateAttribute> sharedVP;
+        //_stateSetCache->share( vp.get(), sharedVP );
+        //newStateSet->setAttributeAndModes( sharedVP.get(), osg::StateAttribute::ON );
+    }
+
+    // pop the current stateset off the stack so we can change it:
+    osg::ref_ptr<osg::StateSet> current = osg::clone( ss );
+
+    // merge in the new state set:
+    current->merge( *newStateSet.get() );
+
+    // optimize sharing:
+    _stateSetCache->share(current, replacement);
+
+    return true;
+}
diff --git a/src/osgEarth/ShaderUtils b/src/osgEarth/ShaderUtils
index 673b183..39e938e 100644
--- a/src/osgEarth/ShaderUtils
+++ b/src/osgEarth/ShaderUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,23 +23,68 @@
 #include <osg/NodeCallback>
 #include <osg/StateSet>
 #include <osg/Uniform>
+#include <osg/Light>
+#include <osg/Material>
 #include <osg/observer_ptr>
 
 namespace osgEarth
 {
     /**
+    * Container for light uniforms
+    */
+    //light product
+    class osg_LightProducts 
+    { 
+    public:
+        osg_LightProducts(int id);
+        
+        osg::ref_ptr<osg::Uniform> ambient; // vec4 
+        osg::ref_ptr<osg::Uniform> diffuse; // vec4
+        osg::ref_ptr<osg::Uniform> specular; //vec4
+    };
+        
+    class osg_LightSourceParameters 
+    { 
+    public:
+        osg_LightSourceParameters(int id);
+        
+        void setUniformsFromOsgLight(const osg::Light* light, osg::Matrix viewMatrix, const osg::Material* frontMat);
+        void applyState(osg::StateSet* stateset);
+        
+        osg::ref_ptr<osg::Uniform>  ambient; // vec4
+        osg::ref_ptr<osg::Uniform>  diffuse; // vec4 
+        osg::ref_ptr<osg::Uniform>  specular; // vec4
+        osg::ref_ptr<osg::Uniform>  position; // vec4
+        osg::ref_ptr<osg::Uniform>  halfVector; // vec4 
+        osg::ref_ptr<osg::Uniform>  spotDirection; // vec3 
+        osg::ref_ptr<osg::Uniform> spotExponent; // float
+        osg::ref_ptr<osg::Uniform> spotCutoff; // float
+        osg::ref_ptr<osg::Uniform> spotCosCutoff; // float
+        osg::ref_ptr<osg::Uniform>  constantAttenuation; // float 
+        osg::ref_ptr<osg::Uniform>  linearAttenuation; // float
+        osg::ref_ptr<osg::Uniform>  quadraticAttenuation; // float
+
+        //just store the light product in here
+        osg_LightProducts _frontLightProduct;
+    };
+    
+    /**
      * A callback that will update the osgEarth lighting uniforms (based on the
      * FFP lighting state) if necessary.
      */
-    class OSGEARTH_EXPORT UpdateLightingUniformsHelper
+    class OSGEARTH_EXPORT UpdateLightingUniformsHelper : public osg::NodeCallback
     {
     public:
         UpdateLightingUniformsHelper( bool useUpdateTraversal =false );
-        ~UpdateLightingUniformsHelper();
+        virtual ~UpdateLightingUniformsHelper();
 
         void cullTraverse( osg::Node* node, osg::NodeVisitor* nv );
         void updateTraverse( osg::Node* node );
 
+    public: // NodeCallback
+        // for use as a cull callback.
+        virtual void operator()(osg::Node*, osg::NodeVisitor* nv);
+
     protected:
         int   _maxLights;
         bool* _lightEnabled;
@@ -51,6 +96,8 @@ namespace osgEarth
 
         osg::ref_ptr<osg::Uniform> _lightingEnabledUniform;
         osg::ref_ptr<osg::Uniform> _lightEnabledUniform;
+         
+        std::vector<osg_LightSourceParameters>   _osgLightSourceParameters; 
     };
 
     /**
@@ -73,6 +120,9 @@ namespace osgEarth
             osg::StateSet*     stateSet,
             unsigned           size =1 );
 
+        /** dtor */
+        virtual ~ArrayUniform() { }
+
         void attach(
             const std::string& name,
             osg::Uniform::Type type,
@@ -81,11 +131,6 @@ namespace osgEarth
 
         void detach();
 
-        // ArrayUniform( osg::Uniform::Type type, const std::string& name, int size );
-
-        /** creates an array uniform helper from an existing stateset */
-        //ArrayUniform( osg::StateSet* from, const std::string& name );
-
         void setElement( unsigned index, int value );
         void setElement( unsigned index, unsigned value );
         void setElement( unsigned index, bool value );
@@ -103,6 +148,10 @@ namespace osgEarth
         bool isValid() const { return _uniform.valid() && _uniformAlt.valid(); }
         int getNumElements() const { return isValid() ? _uniform->getNumElements() : -1; }
 
+        bool isDirty() const { return
+            (_uniform.valid() && _uniform->getModifiedCount() > 0) ||
+            (_uniformAlt.valid() && _uniformAlt->getModifiedCount() > 0); }
+
     private:
         osg::ref_ptr<osg::Uniform>       _uniform;
         osg::ref_ptr<osg::Uniform>       _uniformAlt;
diff --git a/src/osgEarth/ShaderUtils.cpp b/src/osgEarth/ShaderUtils.cpp
index f118a31..fac88e2 100644
--- a/src/osgEarth/ShaderUtils.cpp
+++ b/src/osgEarth/ShaderUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,8 @@
  */
 #include <osgEarth/ShaderUtils>
 #include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+#include <osgUtil/CullVisitor>
 #include <list>
 
 using namespace osgEarth;
@@ -32,12 +34,14 @@ namespace
     getModeValue(const StateSetStack& statesetStack, osg::StateAttribute::GLMode mode)
     {
         osg::StateAttribute::GLModeValue base_val = osg::StateAttribute::ON;
+
         for(StateSetStack::const_iterator itr = statesetStack.begin();
             itr != statesetStack.end();
             ++itr)
         {
             osg::StateAttribute::GLModeValue val = (*itr)->getMode(mode);
-            if ((val & ~osg::StateAttribute::INHERIT)!=0)
+
+            if ( (val & osg::StateAttribute::INHERIT) == 0 )
             {
                 if ((val & osg::StateAttribute::PROTECTED)!=0 ||
                     (base_val & osg::StateAttribute::OVERRIDE)==0)
@@ -48,26 +52,200 @@ namespace
         }
         return base_val;
     }
+    
+    static const osg::Light*
+    getLightByID(const StateSetStack& statesetStack, int id)
+    {
+        const osg::Light* base_light = NULL;
+        osg::StateAttribute::GLModeValue base_val = osg::StateAttribute::ON;
+        
+        for(StateSetStack::const_iterator itr = statesetStack.begin();
+            itr != statesetStack.end();
+            ++itr)
+        {
+            
+            osg::StateAttribute::GLModeValue val = (*itr)->getMode(GL_LIGHT0+id);
+
+            //if ( (val & osg::StateAttribute::INHERIT) == 0 )
+            {
+            //    if ((val & osg::StateAttribute::PROTECTED)!=0 ||
+            //        (base_val & osg::StateAttribute::OVERRIDE)==0)
+                {
+                    base_val = val;
+                    const osg::StateAttribute* lightAtt = (*itr)->getAttribute(osg::StateAttribute::LIGHT, id);
+                    if(lightAtt){
+                        const osg::Light* asLight = dynamic_cast<const osg::Light*>(lightAtt);
+                        if(val){
+                            base_light = asLight;
+                        }
+                    }
+                }
+            }
+            
+        }
+        return base_light;
+    }
+    
+    static const osg::Material*
+    getFrontMaterial(const StateSetStack& statesetStack)
+    {
+        const osg::Material* base_material = NULL;
+        osg::StateAttribute::GLModeValue base_val = osg::StateAttribute::ON;
+        
+        for(StateSetStack::const_iterator itr = statesetStack.begin();
+            itr != statesetStack.end();
+            ++itr)
+        {
+            
+            osg::StateAttribute::GLModeValue val = (*itr)->getMode(GL_DIFFUSE);//?
+            
+            //if ( (val & osg::StateAttribute::INHERIT) == 0 )
+            {
+            //    if ((val & osg::StateAttribute::PROTECTED)!=0 ||
+             //       (base_val & osg::StateAttribute::OVERRIDE)==0)
+                {
+                    base_val = val;
+                    const osg::StateAttribute* materialAtt = (*itr)->getAttribute(osg::StateAttribute::MATERIAL);
+                    if(materialAtt){
+                        const osg::Material* asMaterial = dynamic_cast<const osg::Material*>(materialAtt);
+                        if(val){
+                            base_material = asMaterial;
+                        }
+                    }
+                }
+            }
+            
+        }
+        return base_material;
+    }
 }
 
 //------------------------------------------------------------------------
 
+osg_LightProducts::osg_LightProducts(int id)
+{
+    std::stringstream uniNameStream;
+    uniNameStream << "osg_FrontLightProduct[" << id << "]";
+    std::string uniName = uniNameStream.str();
+
+    ambient = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".ambient"); // vec4
+    diffuse = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".diffuse"); // vec4
+    specular = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".specular"); // vec4
+}
+
+osg_LightSourceParameters::osg_LightSourceParameters(int id)
+    : _frontLightProduct(id)
+{
+    std::stringstream uniNameStream;
+    uniNameStream << "osg_LightSource[" << id << "]";
+    std::string uniName = uniNameStream.str();
+    
+    ambient = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".ambient"); // vec4
+    diffuse = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".diffuse"); // vec4
+    specular = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".specular"); // vec4
+    position = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".position"); // vec4
+    halfVector = new osg::Uniform(osg::Uniform::FLOAT_VEC4, uniName+".halfVector"); // vec4
+    spotDirection = new osg::Uniform(osg::Uniform::FLOAT_VEC3, uniName+".spotDirection"); // vec3
+    spotExponent = new osg::Uniform(osg::Uniform::FLOAT, uniName+".spotExponent"); // float
+    spotCutoff = new osg::Uniform(osg::Uniform::FLOAT, uniName+".spotCutoff"); // float
+    spotCosCutoff = new osg::Uniform(osg::Uniform::FLOAT, uniName+".spotCosCutoff"); // float
+    constantAttenuation = new osg::Uniform(osg::Uniform::FLOAT, uniName+".constantAttenuation"); // float
+    linearAttenuation = new osg::Uniform(osg::Uniform::FLOAT, uniName+".linearAttenuation"); // float
+    quadraticAttenuation = new osg::Uniform(osg::Uniform::FLOAT, uniName+".quadraticAttenuation"); // float
+}
+
+void osg_LightSourceParameters::setUniformsFromOsgLight(const osg::Light* light, osg::Matrix viewMatrix, const osg::Material* frontMat)
+{
+    if(light){
+        ambient->set(light->getAmbient());
+        diffuse->set(light->getDiffuse());
+        specular->set(light->getSpecular());
+        
+        osg::Vec4 eyeLightPos = light->getPosition()*viewMatrix;
+        position->set(eyeLightPos);
+       
+        // compute half vec
+        osg::Vec4 normPos = eyeLightPos;
+        normPos.normalize();
+        osg::Vec4 halfVec4 = normPos + osg::Vec4(0,0,1,0);
+        halfVec4.normalize();
+        halfVector->set(halfVec4);
+        
+        spotDirection->set(light->getDirection()*viewMatrix);
+        spotExponent->set(light->getSpotExponent());
+        spotCutoff->set(light->getSpotCutoff());
+        //need to compute cosCutOff
+        //spotCosCutoff->set(light->get)
+        constantAttenuation->set(light->getConstantAttenuation());
+        linearAttenuation->set(light->getLinearAttenuation());
+        quadraticAttenuation->set(light->getQuadraticAttenuation());
+        
+        //front product
+        if(frontMat){
+             osg::Vec4 frontAmbient = frontMat->getAmbient(osg::Material::FRONT);
+             osg::Vec4 frontDiffuse = frontMat->getDiffuse(osg::Material::FRONT);
+             osg::Vec4 frontSpecular = frontMat->getSpecular(osg::Material::FRONT);
+            _frontLightProduct.ambient->set(osg::Vec4(light->getAmbient().x() * frontAmbient.x(),
+                                                      light->getAmbient().y() * frontAmbient.y(),
+                                                      light->getAmbient().z() * frontAmbient.z(),
+                                                      light->getAmbient().w() * frontAmbient.w()));
+            
+            _frontLightProduct.diffuse->set(osg::Vec4(light->getDiffuse().x() * frontDiffuse.x(),
+                                                      light->getDiffuse().y() * frontDiffuse.y(),
+                                                      light->getDiffuse().z() * frontDiffuse.z(),
+                                                      light->getDiffuse().w() * frontDiffuse.w()));
+            
+            _frontLightProduct.specular->set(osg::Vec4(light->getSpecular().x() * frontSpecular.x(),
+                                                      light->getSpecular().y() * frontSpecular.y(),
+                                                      light->getSpecular().z() * frontSpecular.z(),
+                                                      light->getSpecular().w() * frontSpecular.w()));
+        }
+    }
+}
+
+void osg_LightSourceParameters::applyState(osg::StateSet* stateset)
+{
+    stateset->addUniform(ambient.get());
+    stateset->addUniform(diffuse.get());
+    stateset->addUniform(specular.get());
+    stateset->addUniform(position.get());
+    stateset->addUniform(halfVector.get());
+    stateset->addUniform(spotDirection.get());
+    stateset->addUniform(spotExponent.get());
+    stateset->addUniform(spotCutoff.get());
+    stateset->addUniform(spotCosCutoff.get());
+    stateset->addUniform(constantAttenuation.get());
+    stateset->addUniform(linearAttenuation.get());
+    stateset->addUniform(quadraticAttenuation.get());
+    
+    //apply front light product
+    stateset->addUniform(_frontLightProduct.ambient.get());
+    stateset->addUniform(_frontLightProduct.diffuse.get());
+    stateset->addUniform(_frontLightProduct.specular.get());
+}
+
+
 #undef LC
 #define LC "[UpdateLightingUniformHelper] "
 
 UpdateLightingUniformsHelper::UpdateLightingUniformsHelper( bool useUpdateTrav ) :
 _lightingEnabled( true ),
-_dirty( true ),
-_applied( false ),
-_useUpdateTrav( useUpdateTrav )
+_dirty          ( true ),
+_applied        ( false ),
+_useUpdateTrav  ( useUpdateTrav )
 {
     _maxLights = Registry::instance()->getCapabilities().getMaxLights();
 
     _lightEnabled = new bool[ _maxLights ];
-    if ( _maxLights > 0 )
+    if ( _maxLights > 0 ){
         _lightEnabled[0] = 1;
-    for(int i=1; i<_maxLights; ++i )
+        //allocate light
+        _osgLightSourceParameters.push_back(osg_LightSourceParameters(0));
+    }
+    for(int i=1; i<_maxLights; ++i ){
         _lightEnabled[i] = 0;
+        _osgLightSourceParameters.push_back(osg_LightSourceParameters(i));
+    }
 
     _lightingEnabledUniform = new osg::Uniform( osg::Uniform::BOOL, "osgearth_LightingEnabled" );
     _lightEnabledUniform    = new osg::Uniform( osg::Uniform::INT,  "osgearth_LightEnabled", _maxLights );
@@ -106,9 +284,9 @@ UpdateLightingUniformsHelper::cullTraverse( osg::Node* node, osg::NodeVisitor* n
         }
 
         // Update the overall lighting-enabled value:
-        bool lightingEnabled = 
+        bool lightingEnabled =
             ( getModeValue(stateSetStack, GL_LIGHTING) & osg::StateAttribute::ON ) != 0;
-
+        
         if ( lightingEnabled != _lightingEnabled || !_applied )
         {
             _lightingEnabled = lightingEnabled;
@@ -123,14 +301,23 @@ UpdateLightingUniformsHelper::cullTraverse( osg::Node* node, osg::NodeVisitor* n
         {
             bool enabled =
                 ( getModeValue( stateSetStack, GL_LIGHT0 + i ) & osg::StateAttribute::ON ) != 0;
+            
+            const osg::Light* light = getLightByID(stateSetStack, i);
+            const osg::Material* material = getFrontMaterial(stateSetStack);
 
             if ( _lightEnabled[i] != enabled || !_applied )
             {
                 _lightEnabled[i] = enabled;
-                if ( _useUpdateTrav )
+                if ( _useUpdateTrav ){
                     _dirty = true;
-                else
+                }else{
                     _lightEnabledUniform->setElement( i, _lightEnabled[i] );
+                }
+            }
+            
+            //update light position info regardsless of if applied for now
+            if(light){
+                _osgLightSourceParameters[i].setUniformsFromOsgLight(light, cv->getCurrentCamera()->getViewMatrix(), material);
             }
         }	
 
@@ -142,6 +329,10 @@ UpdateLightingUniformsHelper::cullTraverse( osg::Node* node, osg::NodeVisitor* n
             {
                 node->getOrCreateStateSet()->addUniform( _lightingEnabledUniform.get() );
                 node->getStateSet()->addUniform( _lightEnabledUniform.get() );
+                for( int i=0; i < _maxLights; ++i )
+                {
+                    _osgLightSourceParameters[i].applyState(node->getStateSet());
+                }
                 _applied = true;
             }
         }		
@@ -165,10 +356,21 @@ UpdateLightingUniformsHelper::updateTraverse( osg::Node* node )
             osg::StateSet* stateSet = node->getOrCreateStateSet();
             stateSet->addUniform( _lightingEnabledUniform.get() );
             stateSet->addUniform( _lightEnabledUniform.get() );
+            for( int i=0; i < _maxLights; ++i )
+            {
+                _osgLightSourceParameters[i].applyState(stateSet);
+            }
         }
     }
 }
 
+void
+UpdateLightingUniformsHelper::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    cullTraverse( node, nv );
+    traverse(node, nv);
+}
+
 //------------------------------------------------------------------------
 
 ArrayUniform::ArrayUniform( const std::string& name, osg::Uniform::Type type, osg::StateSet* stateSet, unsigned size )
diff --git a/src/osgEarth/SparseTexture2DArray b/src/osgEarth/SparseTexture2DArray
index 717c6c8..aaddef7 100644
--- a/src/osgEarth/SparseTexture2DArray
+++ b/src/osgEarth/SparseTexture2DArray
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,6 +43,10 @@ namespace osgEarth
 
         META_StateAttribute( osgEarth, SparseTexture2DArray, TEXTURE );
 
+        /** dtor */
+        virtual ~SparseTexture2DArray() { }
+
+
     public:
         virtual void computeInternalFormat() const;
 
diff --git a/src/osgEarth/SparseTexture2DArray.cpp b/src/osgEarth/SparseTexture2DArray.cpp
index a37f1a3..3137fe9 100644
--- a/src/osgEarth/SparseTexture2DArray.cpp
+++ b/src/osgEarth/SparseTexture2DArray.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -26,7 +26,7 @@ using namespace osgEarth;
 int
 SparseTexture2DArray::firstValidImageIndex() const 
 {
-    for( int i=0; i<_images.size(); ++i )
+    for( int i=0; i<(int)_images.size(); ++i )
         if ( _images[i].valid() )
             return i;
     return -1;
diff --git a/src/osgEarth/SpatialReference b/src/osgEarth/SpatialReference
index ddf1b10..b016eeb 100644
--- a/src/osgEarth/SpatialReference
+++ b/src/osgEarth/SpatialReference
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Units>
-#include <osg/Referenced>
+#include <osgEarth/VerticalDatum>
 #include <osg/CoordinateSystemNode>
 #include <osg/Vec3>
 #include <OpenThreads/ReentrantMutex>
@@ -29,14 +29,13 @@
 namespace osgEarth
 {
     //Definitions for the mercator extent
-    const double MERC_MINX = -2.00375e+007;
-    const double MERC_MINY = -2.00375e+007;
-    const double MERC_MAXX = 2.00375e+007;
-    const double MERC_MAXY = 2.00375e+007;
+    const double MERC_MINX = -20037508.34278925;
+    const double MERC_MINY = -20037508.34278925;
+    const double MERC_MAXX =  20037508.34278925;
+    const double MERC_MAXY =  20037508.34278925;
     const double MERC_WIDTH = MERC_MAXX - MERC_MINX;
     const double MERC_HEIGHT = MERC_MAXY - MERC_MINY;
 
-
     class OSGEARTH_EXPORT GeoLocator;
 
     /** 
@@ -47,11 +46,11 @@ namespace osgEarth
     {
     public:
         /**
-         * Creates an SRS from an initialization string. This can be a variety of
-         * things, including a WKT spec, a PROJ4 init string, or a "well-known"
-         * idenfitier (e.g., "WGS84" or "spherical-mercator").
+         * Creates an SRS from two intialization strings; the first for the horizontal datum and
+         * the second for the vertical datum. If you omit the vertical datum, it will default to
+         * the geodetic datum for the ellipsoid.
          */
-        static SpatialReference* create( const std::string& init );
+        static SpatialReference* create( const std::string& init, const std::string& vinit ="" );
 
         /**
          * Attempts to create a spatial reference def from a pre-existing CSN, returning
@@ -69,115 +68,158 @@ namespace osgEarth
          */
         static SpatialReference* createFromHandle( void* ogrHandle, bool xferOwnership =false );
 
-    public:
-        /** 
-         * Transform a point to another SRS.
+
+    public: // Basic transformations.
+
+        /**
+         * Transform a single point from this SRS to another SRS.
+         * Returns true if the transformation succeeded.
          */
         virtual bool transform(
-            double x, double y, double z,
-            const SpatialReference* to_srs,
-            double& out_x, double& out_y, double& out_z,
-            void* context =0L ) const;
-
-        bool transform(
             const osg::Vec3d&       input,
-            const SpatialReference* to_srs,
-            osg::Vec3d&             output,
-            void*                   context =0L) const
-        {
-            return transform(input.x(), input.y(), input.z(), to_srs, output.x(), output.y(), output.z(), context);
-        }
+            const SpatialReference* outputSRS,
+            osg::Vec3d&             output) const;
 
+        /**
+         * Transform a collection of points from this SRS to another SRS.
+         * Returns true if ALL transforms succeeded, false if at least one failed.
+         */
+        virtual bool transform(
+            std::vector<osg::Vec3d>& input,
+            const SpatialReference*  outputSRS ) const;
+        
+        /**
+         * Transform a 2D point directly. (Convenience function)
+         */
         bool transform2D(
-            double x, double y,
-            const SpatialReference* to_srs,
-            double& out_x, double& out_y,
-            void* context =0L ) const
-        {
-            double dummyZ;
-            return transform(x, y, dummyZ, to_srs, out_x, out_y, dummyZ, context);
-        }
+            double                  x, 
+            double                  y,
+            const SpatialReference* outputSRS,
+            double&                 out_x,
+            double&                 out_y ) const;
+
+
+    public: // Units transformations.
 
         /**
-         * Transforms an array of 3D points from this SRS to another SRS.
+         * Transforms a distance from the base units of this SRS to the base units of
+         * another. If one of the SRS's is geographic (i.e. has angular units), the 
+         * conversion will assume that the corresponding distance is measured at the
+         * equator.
          */
-        virtual bool transformPoints(
-            const SpatialReference* to_srs, 
-            double* x, double* y, double* z,
-            unsigned int numPoints,
-            void* context =0L,
-            bool ignore_errors =false) const;
+        double transformUnits(
+            double                  distance,
+            const SpatialReference* outputSRS ) const;
+
+
+    public: // World transformations.
 
         /**
-         * Transforms an array of points from this SRS to another SRS.
+         * Transforms a point from this SRS into "world" coordinates. This normalizes
+         * the Z coordinate (according to the vertical datum) and converts to ECEF
+         * if necessary.
          */
-        virtual bool transformPoints(
-            const SpatialReference*  to_srs,
-            std::vector<osg::Vec3d>& points,
-            void* context =0L,
-            bool ignore_errors =false) const;
+        bool transformToWorld(
+            const osg::Vec3d& input,
+            osg::Vec3d&       out_world ) const;
+
+        /**
+         * Transforms a point from the "world" coordinate system into this spatial
+         * reference.
+         * @param world
+         *      World point to transform
+         * @param out_local
+         *      Output coords in local (SRS) coords
+         * @param worldIsGeocentric
+         *      Whether the incoming world coordinates are ECEF/geocentric coords
+         * @param out_geodeticZ
+         *      (optional) Outputs the geodetic (HAE) Z if applicable
+         */
+        bool transformFromWorld(
+            const osg::Vec3d& world,
+            osg::Vec3d&       out_local,
+            double*           out_geodeticZ =0L ) const;
+
+
+
+    public:  // ECEF transformations.
 
         /**
          * Transforms a point to geocentric/ECEF coordinates.
          */
         bool transformToECEF(
             const osg::Vec3d& input,
-            osg::Vec3d& output ) const;
+            osg::Vec3d&       output ) const;
 
         /**
-         * Transforms an array of points to geocentric/ECEF coordinates. The points
+         * Transforms an array of points in to geocentric/ECEF coordinates. The points
          * are transformed in place.
          */
-        bool transformToECEF(
-            std::vector<osg::Vec3d>& points,
-            bool                     ignore_errors =false) const;
+        bool transformToECEF( std::vector<osg::Vec3d>& points ) const;
 
         /**
-         * Transforms a point from geocentric/ECEF coordinates into this SRS (with a
-         * height above ellipsoid).
+         * Transforms a point from geocentric/ECEF coordinates into this SRS.
+         * @param input
+         *      ECEF point to transform
+         * @param output
+         *      Result placed in this output parameter upon success
+         * @param out_geodeticZ
+         *      (optional) Geodetic (height above ellipsoid) Z placed here; it will
+         *      only differ from output.z() if a vertidal datum exists in this SRS
          */
         bool transformFromECEF(
             const osg::Vec3d& input,
-            osg::Vec3d& output ) const;
+            osg::Vec3d&       output,
+            double*           out_geodeticZ =0L ) const;
 
         /**
-         * Transforms an array of points from geocentric/ECEF coordinates into this SRS
-         * (with a height-above-ellipoid). The points are transformed in place.
+         * Transforms an array of points from geocentric/ECEF coordinates into this SRS.
+         * The points are transformed in place.
          */
-        bool transformFromECEF(
-            std::vector<osg::Vec3d>& points,
-            bool                     ignoreErrors =false) const;
+        bool transformFromECEF( std::vector<osg::Vec3d>& points ) const;
 
+
+    public: // extent transformations.
+        
         /**
-         * Transforms a spatial extent to another SRS. 
-         *
-         * TODO: Update this method to work for:
-         * a) Geographic extents that cross the date line; and
-         * b) Polar extents.
+         * Transforms a spatial extent to another SRS. The transformed extent will
+         * actually be the minimum bounding axis-aligned rectangle that would hold
+         * the source extent.
          */
-        virtual bool transformExtent(
+        virtual bool transformExtentToMBR(
             const SpatialReference* to_srs,
-            double& in_out_xmin, double& in_out_ymin,
-            double& in_out_xmax, double& in_out_ymax,
-            void* context =0L ) const;
-
+            double&                 in_out_xmin, 
+            double&                 in_out_ymin,
+            double&                 in_out_xmax, 
+            double&                 in_out_ymax ) const;
+        
         virtual bool transformExtentPoints(
             const SpatialReference* to_srs,
             double in_xmin, double in_ymin,
             double in_xmax, double in_ymax,
             double* x, double* y,
-            unsigned int numx, unsigned int numy,
-            void* context = 0L, bool ignore_errors = false ) const;
-        
-        /** True is this is a geographic SRS (i.e. unprojected lat/long) */
+            unsigned numx, unsigned numy ) const;
+
+
+    public: // properties
+
+        typedef std::pair<std::string,std::string> Key;
+
+        /** True if this is a geographic SRS (lat/long/msl) */
         virtual bool isGeographic() const;
 
+        /** True if this is a geodetic SRS (lat/long/hae) */
+        virtual bool isGeodetic() const;
+
         /** True if this is a projected SRS (i.e. local coordinate system) */
         virtual bool isProjected() const;
 
         /** Tests whether this SRS represents a Mercator projection. */
         bool isMercator() const;
 
+        /** Tests whether this SRS represents a Spherical Mercator pseudo-projection. */
+        bool isSphericalMercator() const;
+
         /** Tests whether this SRS represents a polar sterographic projection. */
         bool isNorthPolar() const;
         bool isSouthPolar() const;
@@ -197,6 +239,9 @@ namespace osgEarth
         /** Tests whether this SRS is a Local Tangent Plane projection (osgEarth-internal) */
         virtual bool isLTP() const { return _is_ltp; }
 
+        /** Whether this is a geographic plate carre SRS */
+        virtual bool isPlateCarre() const { return _is_plate_carre; }
+
         /** Gets the readable name of this SRS. */
         const std::string& getName() const;
 
@@ -209,30 +254,64 @@ namespace osgEarth
         /** Gets the initialization type (PROJ4, WKT, etc.) */
         const std::string& getInitType() const;
 
-        /** Gets the string that was used to initialize this SRS */
-        const std::string& getInitString() const;
+        /** Gets the initialization key. */
+        const Key& getKey() const;
+
+        /** Gets the initialization string for the horizontal datum */
+        const std::string& getHorizInitString() const;
+
+        /** Gets the initialization string for the vertical datum */
+        const std::string& getVertInitString() const;
 
         /** Gets the datum identifier of this SRS (or empty string if not available) */
         const std::string& getDatumName() const;
 
-        /** Tests this SRS for equivalence with another. */
+        /** Gets the base units of data in this SRS */
+        const Units& getUnits() const;
+
+        /** Whether the two SRS are completely equivalent. */
         virtual bool isEquivalentTo( const SpatialReference* rhs ) const;
 
+        /** Whether the two SRS are horizonally equivalent (ignoring the vertical datums) */
+        bool isHorizEquivalentTo( const SpatialReference* rhs ) const;
+
+        /** Whether this SRS has the same vertical datum as another. */
+        bool isVertEquivalentTo( const SpatialReference* rhs ) const;
+
         /** Gets a reference to this SRS's underlying geographic SRS. */
         const SpatialReference* getGeographicSRS() const;
 
+        /** Gets a reference to this SRS's underlying geodetic SRS. This is the same as the
+            geographic SRS [see getGeographicSRS()] but with a geodetic vertical datum (in
+            which Z is expressed as height above the geodetic ellipsoid). */
+        const SpatialReference* getGeodeticSRS() const;
+
+        /** Gets the vertical datum. If null, this SRS uses a default geodetic vertical datum */
+        const VerticalDatum* getVerticalDatum() const;
+
+        /** Creates a localizer matrix based on a point in this SRS. */
+        bool createLocalToWorld( const osg::Vec3d& point, osg::Matrixd& out_local2world ) const;
+
+        /** Create a de-localizer matrix based on a point in this SRS. */
+        bool createWorldToLocal( const osg::Vec3d& point, osg::Matrix& out_world2local ) const;
+
         /** Creates and returns a local trangent plane SRS at the given reference location.
             The reference location is expressed in this object's SRS, but it tangent to
             the globe at getGeographicSRS(). LTP units are in meters. */
-        SpatialReference* createTangentPlaneSRS( const osg::Vec3d& refPos ) const;
+        const SpatialReference* createTangentPlaneSRS( const osg::Vec3d& refPos ) const;
 
         /** Creates a transverse mercator projection centered at the specified longitude. */
-        SpatialReference* createTransMercFromLongitude( const Angular& lon ) const;
+        const SpatialReference* createTransMercFromLongitude( const Angular& lon ) const;
 
         /** Creates a UTM (universal transverse mercator) projection in the UTM zone
             containing the specified longitude. NOTE: this is slightly faster than using
             basic tmerc (transverse mercator) above. */
-        SpatialReference* createUTMFromLongitude( const Angular& lon ) const;
+        const SpatialReference* createUTMFromLonLat( const Angular& lon, const Angular& lat ) const;
+
+        /** Creates a copy of this SRS, but flags the new SRS so that it will operate in
+            Plate Carre mode for the purposes of world coordinate conversion. The SRS is
+            otherwise mathematically equivalent to its vanilla counterpart. */
+        const SpatialReference* createPlateCarreGeographicSRS() const;
 
         /** Creates a new CSN based on this spatial reference. */
         osg::CoordinateSystemNode* createCoordinateSystemNode() const;
@@ -260,7 +339,8 @@ namespace osgEarth
         virtual ~SpatialReference();
 
     protected:
-        SpatialReference( void* handle, const std::string& type, const std::string& init_str, const std::string& name );
+
+        SpatialReference( void* handle, const std::string& type );
         SpatialReference( void* handle, bool ownsHandle =true );
         void init();
 
@@ -269,20 +349,25 @@ namespace osgEarth
         bool _owns_handle;
         bool _is_geographic;
         bool _is_mercator;
+        bool _is_spherical_mercator;
         bool _is_north_polar, _is_south_polar;
         bool _is_cube;
         bool _is_contiguous;
         bool _is_user_defined;
         bool _is_ltp;
+        bool _is_plate_carre;
+        unsigned _ellipsoidId;
         std::string _name;
+        Key _key;
         std::string _wkt;
         std::string _proj4;
         std::string _init_type;
-        std::string _init_str;
-        std::string _init_str_lc;
         std::string _datum;
+        Units       _units;
         osg::ref_ptr<osg::EllipsoidModel> _ellipsoid;
-        osg::ref_ptr<SpatialReference> _geo_srs;
+        osg::ref_ptr<SpatialReference>    _geo_srs;
+        osg::ref_ptr<SpatialReference>    _geodetic_srs;  // _geo_srs with a NULL vdatum.
+        osg::ref_ptr<VerticalDatum>       _vdatum;
 
         typedef std::map<std::string,void*> TransformHandleCache;
         TransformHandleCache _transformHandleCache;
@@ -290,27 +375,43 @@ namespace osgEarth
         // user can override these methods in a subclass to perform custom functionality; must
         // call the superclass version.
         virtual void _init();
-        virtual bool _isEquivalentTo( const SpatialReference* srs ) const;
+        virtual bool _isEquivalentTo( const SpatialReference* srs, bool considerVDatum =true ) const;
 
-        virtual bool preTransform(double& x, double& y, double& z, void* context) const { return true; }
-        virtual bool postTransform(double& x, double& y, double& z, void* context) const { return true;}
-        
+        virtual bool preTransform(std::vector<osg::Vec3d>&) const { return true; }
+
+        virtual bool postTransform(std::vector<osg::Vec3d>&) const { return true; }
 
+        bool transformXYPointArrays(
+            double*  x,
+            double*  y,
+            unsigned numPoints,
+            const SpatialReference* out_srs) const;
+
+        bool transformZ(
+            std::vector<osg::Vec3d>& points,
+            const SpatialReference*  outputSRS,
+            bool                     pointsAreGeodetic) const;
+
+        typedef std::map<Key, osg::ref_ptr<SpatialReference> > SRSCache;
+        static SRSCache& getSRSCache();
 
-        typedef std::map< std::string, osg::ref_ptr<SpatialReference> > SpatialReferenceCache;
-        static SpatialReferenceCache& getSpatialReferenceCache();
 
     private:
+
+        static SpatialReference* create( const Key& key, bool useCache );
+
         static SpatialReference* createFromWKT(
-            const std::string& wkt, const std::string& alias, const std::string& name ="" );
+            const std::string& wkt,
+            const std::string& name ="" );
 
         static SpatialReference* createFromPROJ4(
-            const std::string& proj4, const std::string& alias, const std::string& name ="" );
+            const std::string& proj4,
+            const std::string& name = "" );
 
         static SpatialReference* createCube();
 
 
-        SpatialReference* validate();
+        SpatialReference* fixWKT();
     };
 }
 
diff --git a/src/osgEarth/SpatialReference.cpp b/src/osgEarth/SpatialReference.cpp
index 4a20730..05d4d24 100644
--- a/src/osgEarth/SpatialReference.cpp
+++ b/src/osgEarth/SpatialReference.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,8 @@
 #include <osgEarth/Registry>
 #include <osgEarth/Cube>
 #include <osgEarth/LocalTangentPlane>
-#include <OpenThreads/ScopedLock>
+#include <osgEarth/ECEF>
+#include <osgEarth/ThreadingUtils>
 #include <osg/Notify>
 #include <ogr_api.h>
 #include <ogr_spatialref.h>
@@ -31,7 +32,8 @@
 
 using namespace osgEarth;
 
-#define USE_CUSTOM_MERCATOR_TRANSFORM 1
+// took this out, see issue #79
+//#define USE_CUSTOM_MERCATOR_TRANSFORM 1
 //#undef USE_CUSTOM_MERCATOR_TRANSFORM
 
 //------------------------------------------------------------------------
@@ -42,7 +44,7 @@ namespace
     getOGRAttrValue( void* _handle, const std::string& name, int child_num, bool lowercase =false)
     {
         GDAL_SCOPED_LOCK;
-	    const char* val = OSRGetAttrValue( _handle, name.c_str(), child_num );
+        const char* val = OSRGetAttrValue( _handle, name.c_str(), child_num );
         if ( val )
         {
             std::string t = val;
@@ -53,48 +55,69 @@ namespace
             return t;
         }
         return "";
+    }    
+
+    // http://en.wikipedia.org/wiki/Mercator_projection#Mathematics_of_the_projection
+    bool sphericalMercatorToGeographic( std::vector<osg::Vec3d>& points )
+    {
+        for( unsigned i=0; i<points.size(); ++i )
+        {
+            double x = osg::clampBetween(points[i].x(), MERC_MINX, MERC_MAXX);
+            double y = osg::clampBetween(points[i].y(), MERC_MINY, MERC_MAXY);
+            double xr = -osg::PI + ((x-MERC_MINX)/MERC_WIDTH)*2.0*osg::PI;
+            double yr = -osg::PI + ((y-MERC_MINY)/MERC_HEIGHT)*2.0*osg::PI;
+            points[i].x() = osg::RadiansToDegrees( xr );
+            points[i].y() = osg::RadiansToDegrees( 2.0 * atan( exp(yr) ) - osg::PI_2 );
+            // z doesn't change here.
+        }
+        return true;
     }
 
-    std::string&
-    replaceIn( std::string& s, const std::string& sub, const std::string& other)
+    // http://en.wikipedia.org/wiki/Mercator_projection#Mathematics_of_the_projection
+    bool geographicToSphericalMercator( std::vector<osg::Vec3d>& points )
     {
-        if ( sub.empty() ) return s;
-        size_t b=0;
-        for( ; ; )
+        for( unsigned i=0; i<points.size(); ++i )
         {
-            b = s.find( sub, b );
-            if ( b == s.npos ) break;
-            s.replace( b, sub.size(), other );
-            b += other.size();
+            double lon = osg::clampBetween(points[i].x(), -180.0, 180.0);
+            double lat = osg::clampBetween(points[i].y(), -90.0, 90.0);
+            double xr = (osg::DegreesToRadians(lon) - (-osg::PI)) / (2.0*osg::PI);
+            double sinLat = sin(osg::DegreesToRadians(lat));
+            double oneMinusSinLat = 1-sinLat;
+            if ( oneMinusSinLat != 0.0 )
+            {
+                double yr = ((0.5 * log( (1+sinLat)/oneMinusSinLat )) - (-osg::PI)) / (2.0*osg::PI);
+                points[i].x() = osg::clampBetween(MERC_MINX + (xr * MERC_WIDTH), MERC_MINX, MERC_MAXX);
+                points[i].y() = osg::clampBetween(MERC_MINY + (yr * MERC_HEIGHT), MERC_MINY, MERC_MAXY);
+                // z doesn't change here.
+            }
         }
-        return s;
+        return true;
     }
 }
 
 //------------------------------------------------------------------------
 
-SpatialReference::SpatialReferenceCache& SpatialReference::getSpatialReferenceCache()
+SpatialReference::SRSCache& SpatialReference::getSRSCache()
 {
     //Make sure the registry is created before the cache
     osgEarth::Registry::instance();
-    static SpatialReferenceCache s_cache;
+    static SRSCache s_cache;
     return s_cache;
 }
 
-
 SpatialReference*
-SpatialReference::createFromPROJ4( const std::string& init, const std::string& init_alias, const std::string& name )
+SpatialReference::createFromPROJ4( const std::string& proj4, const std::string& name )
 {
     SpatialReference* result = NULL;
     GDAL_SCOPED_LOCK;
 	void* handle = OSRNewSpatialReference( NULL );
-    if ( OSRImportFromProj4( handle, init.c_str() ) == OGRERR_NONE )
+    if ( OSRImportFromProj4( handle, proj4.c_str() ) == OGRERR_NONE )
 	{
-        result = new SpatialReference( handle, "PROJ4", init_alias, name );
+        result = new SpatialReference( handle, "PROJ4" );
 	}
 	else 
 	{
-        OE_WARN << LC << "Unable to create spatial reference from PROJ4: " << init << std::endl;
+        OE_WARN << LC << "Unable to create spatial reference from PROJ4: " << proj4 << std::endl;
 		OSRDestroySpatialReference( handle );
 	}
     return result;
@@ -121,142 +144,144 @@ SpatialReference::createCube()
     return result;
 }
 
-#if 0
 SpatialReference*
-SpatialReference::createLTP( const osg::Vec3d& refPointLLA, const SpatialReference* geoSRS )
+SpatialReference::createFromWKT( const std::string& wkt, const std::string& name )
 {
+    osg::ref_ptr<SpatialReference> result;
     GDAL_SCOPED_LOCK;
-
     void* handle = OSRNewSpatialReference( NULL );
-    bool ok = false;
-    SpatialReference* result = 0L;
-
-    if ( geoSRS )
+    char buf[4096];
+    char* buf_ptr = &buf[0];
+    strcpy( buf, wkt.c_str() );
+    if ( OSRImportFromWkt( handle, &buf_ptr ) == OGRERR_NONE )
     {
-        std::string init = geoSRS->getGeographicSRS()->getWKT();
-        char buf[4096];
-        char* buf_ptr = &buf[0];
-	    strcpy( buf, init.c_str() );
-        ok = ( OSRImportFromWkt( handle, &buf_ptr ) == OGRERR_NONE );
+        result = new SpatialReference( handle, "WKT" );
+        result = result->fixWKT();
     }
     else 
     {
-        std::string init = "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs";
-        ok = ( OSRImportFromProj4( handle, init.c_str() ) == OGRERR_NONE );
-    }
-
-    if ( ok )
-    {
-        result = new LTPSpatialReference( handle, refPointLLA );
-    }
-    else
-    {
-        OE_WARN << LC << "Unable to create LTP SRS" << std::endl;
-        if ( handle )
-		    OSRDestroySpatialReference( handle );
+        OE_WARN << LC << "Unable to create spatial reference from WKT: " << wkt << std::endl;
+        OSRDestroySpatialReference( handle );
     }
-
-    return result;
+    return result.release();
 }
-#endif
 
 SpatialReference*
-SpatialReference::createFromWKT( const std::string& init, const std::string& init_alias, const std::string& name )
+SpatialReference::create( const std::string& horiz_init, const std::string& vert_init )
 {
-    osg::ref_ptr<SpatialReference> result;
-    GDAL_SCOPED_LOCK;
-	void* handle = OSRNewSpatialReference( NULL );
-    char buf[4096];
-    char* buf_ptr = &buf[0];
-	strcpy( buf, init.c_str() );
-	if ( OSRImportFromWkt( handle, &buf_ptr ) == OGRERR_NONE )
-	{
-        result = new SpatialReference( handle, "WKT", init_alias, name );
-        result = result->validate();
-	}
-	else 
-	{
-		OE_WARN << LC << "Unable to create spatial reference from WKT: " << init << std::endl;
-		OSRDestroySpatialReference( handle );
-	}
-    return result.release();
+    std::string horiz = toLower(horiz_init);
+    std::string vert  = toLower(vert_init);
+
+    return create( Key(horiz, vert), true );
 }
 
 SpatialReference*
-SpatialReference::create( const std::string& init )
+SpatialReference::create( const Key& key, bool useCache )
 {
-    static OpenThreads::Mutex s_mutex;
-    OpenThreads::ScopedLock<OpenThreads::Mutex> exclusiveLock(s_mutex);
+    // serialized access to SRS creation.
+    static Threading::Mutex s_mutex;
+    Threading::ScopedMutexLock exclusive(s_mutex);
 
-    std::string low = init;
-    std::transform( low.begin(), low.end(), low.begin(), ::tolower );
-
-    SpatialReferenceCache::iterator itr = getSpatialReferenceCache().find(init);
-    if (itr != getSpatialReferenceCache().end())
+    // first, check the SRS cache to see if it already exists:
+    if ( useCache )
     {
-        //OE_NOTICE << "Returning cached SRS" << std::endl;
-        return itr->second.get();
+        SRSCache::iterator itr = getSRSCache().find(key);
+        if (itr != getSRSCache().end())
+        {
+            return itr->second.get();
+        }
     }
 
+    // now try to resolve the horizontal SRS:
     osg::ref_ptr<SpatialReference> srs;
 
+    const std::string& horiz = key.first;
+    const std::string& vert  = key.second;
+
     // shortcut for spherical-mercator:
-    if (low == "spherical-mercator" || low == "epsg:900913" || low == "epsg:3785" ||
-        low == "epsg:41001" || low == "epsg:102113" || low == "epsg:102100")
+    if (horiz == "spherical-mercator" || horiz == "epsg:900913" || horiz == "epsg:3785" || horiz == "epsg:102113")
     {
         // note the use of nadgrids=@null (see http://proj.maptools.org/faq.html)
-        // adjusted +a by ONE to work around osg manipulator error until we can figure out why.. GW
         srs = createFromPROJ4(
-            "+proj=merc +a=6378137 +b=6378137 +lon_0=0 +k=1 +x_0=0 +y_0=0 +nadgrids=@null +units=m +no_defs",
-            init,
+            "+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +towgs84=0,0,0,0,0,0,0 +wktext +no_defs",
             "Spherical Mercator" );
     }
 
     // ellipsoidal ("world") mercator:
-    else if (low == "epsg:54004" || low == "epsg:9804" || low == "epsg:3832")
+    else 
+        if (horiz == "world-mercator" ||
+            horiz == "epsg:54004"  || horiz == "epsg:9804"   || horiz == "epsg:3832" ||
+            horiz == "epsg:102100" || horiz == "esri:102100" || horiz == "osgeo:41001" )
+
     {
         srs = createFromPROJ4(
             "+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +datum=WGS84 +units=m +no_defs",
-            init,
             "World Mercator" );
     }
 
     // common WGS84:
-    else if (low == "epsg:4326" || low == "wgs84")
+    else if (horiz == "epsg:4326" || horiz == "wgs84")
+    {
+        srs = createFromPROJ4(
+            "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs",
+            "WGS84" );
+    }
+
+    // WGS84 Plate Carre:
+    else if (horiz == "plate-carre")
     {
         srs = createFromPROJ4(
             "+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs",
-            init,
             "WGS84" );
+
+        srs->_is_plate_carre = true;
     }
 
     // custom srs for the unified cube
-    else if ( low == "unified-cube" )
+    else if ( horiz == "unified-cube" )
     {
         srs = createCube();
     }
 
-    else if ( low.find( "+" ) == 0 )
+    else if ( horiz.find( "+" ) == 0 )
     {
-        srs = createFromPROJ4( low, init );
+        srs = createFromPROJ4( horiz, horiz );
     }
-    else if ( low.find( "epsg:" ) == 0 || low.find( "osgeo:" ) == 0 )
+    else if ( horiz.find( "epsg:" ) == 0 || horiz.find( "osgeo:" ) == 0 )
     {
-        srs = createFromPROJ4( std::string("+init=") + low, init );
+        srs = createFromPROJ4( std::string("+init=") + horiz, horiz );
     }
-    else if ( low.find( "projcs" ) == 0 || low.find( "geogcs" ) == 0 )
+    else if ( horiz.find( "projcs" ) == 0 || horiz.find( "geogcs" ) == 0 )
     {
-        srs = createFromWKT( init, init );
+        srs = createFromWKT( horiz, horiz );
     }
-    else
+
+    // bail out if no SRS exists by this point
+    if ( srs == 0L )
     {
-        return NULL;
+        return 0L;
     }
 
-    getSpatialReferenceCache()[init] = srs;
-    return srs.get();
-}
+    // next, resolve the vertical SRS:
+    if ( !vert.empty() )
+    {
+        srs->_vdatum = VerticalDatum::get(vert);
+        if ( !srs->_vdatum.valid() )
+        {
+            OE_WARN << LC << "Failed to locate vertical datum \"" << vert << "\"" << std::endl;
+        }
+    }
 
+    srs->_key = key;
+
+    if ( useCache )
+    {
+        // cache it - each unique SRS only exists once.
+        getSRSCache()[key] = srs;
+    }
+
+    return useCache ? srs.get() : srs.release();
+}
 
 SpatialReference*
 SpatialReference::create( osg::CoordinateSystemNode* csn )
@@ -269,7 +294,6 @@ SpatialReference::create( osg::CoordinateSystemNode* csn )
     return result;
 }
 
-
 SpatialReference*
 SpatialReference::createFromHandle( void* ogrHandle, bool xferOwnership )
 {
@@ -278,12 +302,12 @@ SpatialReference::createFromHandle( void* ogrHandle, bool xferOwnership )
 }
 
 SpatialReference*
-SpatialReference::validate()
+SpatialReference::fixWKT()
 {
     std::string proj = getOGRAttrValue( _handle, "PROJECTION", 0 );
 
     // fix invalid ESRI LCC projections:
-    if ( proj == "Lambert_Conformal_Conic" )
+    if ( ciEquals( proj, "Lambert_Conformal_Conic" ) )
     {
         bool has_2_sps =
             !getOGRAttrValue( _handle, "Standard_Parallel_2", 0 ).empty() ||
@@ -291,29 +315,33 @@ SpatialReference::validate()
 
         std::string new_wkt = getWKT();
         if ( has_2_sps )
-            replaceIn( new_wkt, "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_2SP" );
-        else
-            replaceIn( new_wkt, "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_1SP" );
+        {
+            ciReplaceIn( new_wkt, "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_2SP" );
+        }
+        else 
+        {
+            ciReplaceIn( new_wkt, "Lambert_Conformal_Conic", "Lambert_Conformal_Conic_1SP" );
+        }
 
         OE_INFO << LC << "Morphing Lambert_Conformal_Conic to 1SP/2SP" << std::endl;
         
-        return createFromWKT( new_wkt, _init_str, _name );
+        return createFromWKT( new_wkt, _name );
     }
 
     // fixes for ESRI Plate_Carree and Equidistant_Cylindrical projections:
     else if ( proj == "Plate_Carree" )
     {
         std::string new_wkt = getWKT();
-        replaceIn( new_wkt, "Plate_Carree", "Equirectangular" );
+        ciReplaceIn( new_wkt, "Plate_Carree", "Equirectangular" );
         OE_INFO << LC << "Morphing Plate_Carree to Equirectangular" << std::endl;
-        return createFromWKT( new_wkt, _init_str, _name ); //, input->getReferenceFrame() );
+        return createFromWKT( new_wkt, _name ); //, input->getReferenceFrame() );
     }
     else if ( proj == "Equidistant_Cylindrical" )
     {
         std::string new_wkt = getWKT();
         OE_INFO << LC << "Morphing Equidistant_Cylindrical to Equirectangular" << std::endl;
-        replaceIn( new_wkt, "Equidistant_Cylindrical", "Equirectangular" );
-        return createFromWKT( new_wkt, _init_str, _name );
+        ciReplaceIn( new_wkt, "Equidistant_Cylindrical", "Equirectangular" );
+        return createFromWKT( new_wkt, _name );
     }
 
     // no changes.
@@ -324,35 +352,34 @@ SpatialReference::validate()
 /****************************************************************************/
 
 
-SpatialReference::SpatialReference(void* handle, 
-                                   const std::string& init_type,
-                                   const std::string& init_str,
-                                   const std::string& name ) :
-osg::Referenced( true ),
-_initialized( false ),
-_handle( handle ),
-_owns_handle( true ),
-_name( name ),
-_init_type( init_type ),
-_init_str( init_str ),
-_is_geographic( false ),
-_is_mercator( false ),
-_is_north_polar( false ), 
-_is_south_polar( false ),
-_is_cube( false ),
-_is_contiguous( false ),
-_is_user_defined( false ),
-_is_ltp( false )
+SpatialReference::SpatialReference(void*              handle, 
+                                   const std::string& init_type) :
+osg::Referenced ( true ),
+_initialized    ( false ),
+_handle         ( handle ),
+_owns_handle    ( true ),
+_init_type      ( init_type ),
+_is_geographic  ( false ),
+_is_mercator    ( false ),
+_is_north_polar ( false ), 
+_is_south_polar ( false ),
+_is_cube        ( false ),
+_is_contiguous  ( false ),
+_is_user_defined( false ),
+_is_ltp         ( false ),
+_is_plate_carre ( false ),
+_is_spherical_mercator( false )
 {
-    _init_str_lc = init_str;
-    std::transform( _init_str_lc.begin(), _init_str_lc.end(), _init_str_lc.begin(), ::tolower );
+    // nop
 }
 
 SpatialReference::SpatialReference(void* handle, bool ownsHandle) :
 osg::Referenced( true ),
-_initialized( false ),
-_handle( handle ),
-_owns_handle( ownsHandle )
+_initialized   ( false ),
+_handle        ( handle ),
+_owns_handle   ( ownsHandle ),
+_is_ltp        ( false ),
+_is_plate_carre( false )
 {
     //nop
 }
@@ -386,6 +413,14 @@ SpatialReference::isGeographic() const
 }
 
 bool
+SpatialReference::isGeodetic() const 
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _is_geographic && !_vdatum.valid();
+}
+
+bool
 SpatialReference::isProjected() const
 {
     if ( !_initialized )
@@ -417,20 +452,21 @@ SpatialReference::getDatumName() const
     return _datum;
 }
 
-const std::string&
-SpatialReference::getWKT() const 
+const Units&
+SpatialReference::getUnits() const
 {
     if ( !_initialized )
         const_cast<SpatialReference*>(this)->init();
-    return _wkt;
+    return _units;
 }
 
+
 const std::string&
-SpatialReference::getInitString() const
+SpatialReference::getWKT() const 
 {
     if ( !_initialized )
         const_cast<SpatialReference*>(this)->init();
-    return _init_str;
+    return _wkt;
 }
 
 const std::string&
@@ -441,17 +477,69 @@ SpatialReference::getInitType() const
     return _init_type;
 }
 
+const VerticalDatum*
+SpatialReference::getVerticalDatum() const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _vdatum.get();
+}
+
+const SpatialReference::Key&
+SpatialReference::getKey() const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _key;
+}
+
+const std::string&
+SpatialReference::getHorizInitString() const 
+{ 
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _key.first;
+}
+
+const std::string&
+SpatialReference::getVertInitString() const 
+{ 
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _key.second;
+}
+
 bool
 SpatialReference::isEquivalentTo( const SpatialReference* rhs ) const
 {
     if ( !_initialized )
         const_cast<SpatialReference*>(this)->init();
+    return _isEquivalentTo( rhs, true );
+}
 
-    return _isEquivalentTo( rhs );
+bool
+SpatialReference::isHorizEquivalentTo( const SpatialReference* rhs ) const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _isEquivalentTo( rhs, false );
 }
 
 bool
-SpatialReference::_isEquivalentTo( const SpatialReference* rhs ) const
+SpatialReference::isVertEquivalentTo( const SpatialReference* rhs ) const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+
+    // vertical equivalence means the same vertical datum and the same
+    // reference ellipsoid.
+    return
+        _vdatum.get() == rhs->_vdatum.get() &&
+        _ellipsoidId  == rhs->_ellipsoidId;
+}
+
+bool
+SpatialReference::_isEquivalentTo( const SpatialReference* rhs, bool considerVDatum ) const
 {
     if ( !rhs )
         return false;
@@ -461,6 +549,7 @@ SpatialReference::_isEquivalentTo( const SpatialReference* rhs ) const
 
     if (isGeographic()  != rhs->isGeographic()  ||
         isMercator()    != rhs->isMercator()    ||
+        isSphericalMercator() != rhs->isSphericalMercator() ||
         isNorthPolar()  != rhs->isNorthPolar()  ||
         isSouthPolar()  != rhs->isSouthPolar()  ||
         isContiguous()  != rhs->isContiguous()  ||
@@ -471,22 +560,33 @@ SpatialReference::_isEquivalentTo( const SpatialReference* rhs ) const
         return false;
     }
 
-    if ( _init_str_lc == rhs->_init_str_lc )
+    if ( considerVDatum && (_vdatum.get() != rhs->_vdatum.get()) )
+        return false;
+
+    if (_key.first == rhs->_key.first &&
+        (!considerVDatum || (_key.second == rhs->_key.second) ) )
+    {
+        return true;
+    }
+
+    if ( _proj4 == rhs->_proj4 )
         return true;
 
-    if ( this->getWKT() == rhs->getWKT() )
+    if ( _wkt == rhs->_wkt )
         return true;
 
-    if (this->isGeographic() && rhs->isGeographic() &&
-        this->getEllipsoid()->getRadiusEquator() == rhs->getEllipsoid()->getRadiusEquator() &&
-        this->getEllipsoid()->getRadiusPolar() == rhs->getEllipsoid()->getRadiusPolar())
+    if (this->isGeographic() && rhs->isGeographic())
     {
-        return true;
+        return (
+            this->getEllipsoid()->getRadiusEquator() == rhs->getEllipsoid()->getRadiusEquator() &&
+            this->getEllipsoid()->getRadiusPolar() == rhs->getEllipsoid()->getRadiusPolar() );
     }
 
     // last resort, since it requires the lock
-    GDAL_SCOPED_LOCK;
-    return TRUE == ::OSRIsSame( _handle, rhs->_handle );
+    {
+        GDAL_SCOPED_LOCK;
+        return TRUE == ::OSRIsSame( _handle, rhs->_handle );
+    }
 }
 
 const SpatialReference*
@@ -498,6 +598,9 @@ SpatialReference::getGeographicSRS() const
     if ( _is_geographic )
         return this;
 
+    if ( _is_spherical_mercator )
+        return create("wgs84");
+
     if ( !_geo_srs.valid() )
     {
         GDAL_SCOPED_LOCK;
@@ -508,11 +611,15 @@ SpatialReference::getGeographicSRS() const
             int err = OSRCopyGeogCSFrom( new_handle, _handle );
             if ( err == OGRERR_NONE )
             {
-                const_cast<SpatialReference*>(this)->_geo_srs = new SpatialReference( new_handle );
+                // make a new geographic srs, and copy over the vertical datum
+                SpatialReference* ncthis = const_cast<SpatialReference*>(this);
+                ncthis->_geo_srs = new SpatialReference( new_handle );
+                ncthis->_geo_srs->_vdatum = _vdatum.get();
             }
             else
             {
                 OSRDestroySpatialReference( new_handle );
+                OE_WARN << LC << "Failed to initialize a geographic SRS for " << getName() << std::endl;
             }
         }
     }
@@ -520,14 +627,50 @@ SpatialReference::getGeographicSRS() const
     return _geo_srs.get();
 }
 
-SpatialReference*
+const SpatialReference*
+SpatialReference::getGeodeticSRS() const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+
+    if ( _is_geographic && !_vdatum.valid() )
+        return this;
+
+    if ( !_geodetic_srs.valid() )
+    {
+        const SpatialReference* geo = getGeographicSRS();
+
+        GDAL_SCOPED_LOCK;
+
+        if ( !_geodetic_srs.valid() ) // double check pattern
+        {
+            void* new_handle = OSRNewSpatialReference( NULL );
+            int err = OSRCopyGeogCSFrom( new_handle, geo->_handle );
+            if ( err == OGRERR_NONE )
+            {
+                SpatialReference* ncthis = const_cast<SpatialReference*>(this);
+                ncthis->_geodetic_srs = new SpatialReference( new_handle );
+                ncthis->_geodetic_srs->_vdatum = 0L; // explicity :)
+            }
+            else
+            {
+                OSRDestroySpatialReference( new_handle );
+                OE_WARN << LC << "Failed to initialize a geodetic SRS for " << getName() << std::endl;
+            }
+        }
+    }
+
+    return _geodetic_srs.get();
+}
+
+const SpatialReference*
 SpatialReference::createTangentPlaneSRS( const osg::Vec3d& pos ) const
 {
     SpatialReference* result = 0L;
     osg::Vec3d lla;
     if ( this->transform(pos, this->getGeographicSRS(), lla) )
     {
-        result = new LTPSpatialReference( this->getGeographicSRS()->_handle, lla );
+        result = new TangentPlaneSpatialReference( this->getGeographicSRS()->_handle, lla );
     }
     else
     {
@@ -536,32 +679,37 @@ SpatialReference::createTangentPlaneSRS( const osg::Vec3d& pos ) const
     return result;
 }
 
-SpatialReference*
+const SpatialReference*
 SpatialReference::createTransMercFromLongitude( const Angular& lon ) const
 {
     // note. using tmerc with +lat_0 <> 0 is sloooooow.
     std::string datum = getDatumName();
-    std::stringstream buf;
-    buf << "+proj=tmerc +lat_0=0"
+    std::string horiz = Stringify()
+        << "+proj=tmerc +lat_0=0"
         << " +lon_0=" << lon.as(Units::DEGREES)
         << " +datum=" << (!datum.empty() ? "wgs84" : datum);
-    std::string projstr;
-    projstr = buf.str();
-    return create( projstr );
+    return create( horiz, getVertInitString() );
 }
 
-SpatialReference*
-SpatialReference::createUTMFromLongitude( const Angular& lon ) const
+const SpatialReference*
+SpatialReference::createUTMFromLonLat( const Angular& lon, const Angular& lat ) const
 {
     // note. UTM is up to 10% faster than TMERC for the same meridian.
     unsigned zone = 1 + (unsigned)floor((lon.as(Units::DEGREES)+180.0)/6.0);
     std::string datum = getDatumName();
-    std::stringstream buf;
-    buf << "+proj=utm +zone=" << zone
+    std::string horiz = Stringify()
+        << "+proj=utm +zone=" << zone
+        << (lat.as(Units::DEGREES) < 0 ? " +south" : "")
         << " +datum=" << (!datum.empty() ? "wgs84" : datum);
-    std::string projstr;
-    projstr = buf.str();
-    return create( projstr );
+    return create( horiz, getVertInitString() );
+}
+
+const SpatialReference* 
+SpatialReference::createPlateCarreGeographicSRS() const
+{
+    SpatialReference* pc = create( getKey(), false );
+    if ( pc ) pc->_is_plate_carre = true;
+    return pc;
 }
 
 bool
@@ -572,6 +720,14 @@ SpatialReference::isMercator() const
     return _is_mercator;
 }
 
+bool
+SpatialReference::isSphericalMercator() const
+{
+    if ( !_initialized )
+        const_cast<SpatialReference*>(this)->init();
+    return _is_spherical_mercator;
+}
+
 bool 
 SpatialReference::isNorthPolar() const
 {
@@ -645,7 +801,7 @@ SpatialReference::populateCoordinateSystemNode( osg::CoordinateSystemNode* csn )
     else
     {
         csn->setFormat( _init_type );
-        csn->setCoordinateSystem( _init_str );
+        csn->setCoordinateSystem( getKey().first );
     }
     
     csn->setEllipsoidModel( _ellipsoid.get() );
@@ -696,247 +852,373 @@ SpatialReference::createLocator(double xmin, double ymin, double xmax, double ym
 }
 
 bool
-SpatialReference::transform(double x, double y, double z,
-                            const SpatialReference* out_srs, 
-                            double& out_x, double& out_y, double& out_z,
-                            void* context ) const
-{        
-    if ( !_initialized )
-        const_cast<SpatialReference*>(this)->init();
-
-    //Check for equivalence and return if the coordinate systems are the same.
-    if (isEquivalentTo(out_srs))
+SpatialReference::createLocalToWorld(const osg::Vec3d& xyz, osg::Matrixd& out_local2world ) const
+{
+    if ( (isProjected() || _is_plate_carre) && !isCube() )
     {
-        out_x = x;
-        out_y = y;
-        out_z = z;
-        return true;
+        osg::Vec3d world;
+        if ( !transformToWorld( xyz, world ) )
+            return false;
+        out_local2world = osg::Matrix::translate(world);
     }
+    else
+    {
+        // convert MSL to HAE if necessary:
+        osg::Vec3d geodetic;
+        if ( !isGeodetic() )
+        {
+            if ( !transform( xyz, getGeodeticSRS(), geodetic ) )
+                return false;
+        }
+        else
+        {
+            geodetic = xyz;
+        }
 
-    out_x = x;
-    out_y = y;
-    out_z = z;
-    bool result = transformPoints(out_srs, &out_x, &out_y, &out_z, 1, context);
-
-    return result;
+        getEllipsoid()->computeLocalToWorldTransformFromLatLongHeight(
+            osg::DegreesToRadians( geodetic.y() ),
+            osg::DegreesToRadians( geodetic.x() ),
+            geodetic.z(),
+            out_local2world );
+    }
+    return true;
 }
 
-// http://en.wikipedia.org/wiki/Mercator_projection#Mathematics_of_the_projection
-static bool
-mercatorToGeographic( double* x, double* y, double* z, int numPoints )
+bool
+SpatialReference::createWorldToLocal(const osg::Vec3d& xyz, osg::Matrixd& out_world2local ) const
 {
-    for( int i=0; i<numPoints; i++ )
-    {
-        double xr = -osg::PI + ((x[i]-MERC_MINX)/MERC_WIDTH)*2.0*osg::PI;
-        double yr = -osg::PI + ((y[i]-MERC_MINY)/MERC_HEIGHT)*2.0*osg::PI;
-        x[i] = osg::RadiansToDegrees( xr );
-        y[i] = osg::RadiansToDegrees( 2.0 * atan( exp(yr) ) - osg::PI_2 );
-        // z doesn't change
-    }
+    osg::Matrixd local2world;
+    if ( !createLocalToWorld(xyz, local2world) )
+        return false;
+    out_world2local.invert(local2world);
     return true;
 }
 
-// http://en.wikipedia.org/wiki/Mercator_projection#Mathematics_of_the_projection
-static bool
-geographicToMercator( double* x, double* y, double* z, int numPoints )
+
+bool
+SpatialReference::transform(const osg::Vec3d&       input,
+                            const SpatialReference* outputSRS,
+                            osg::Vec3d&             output) const
 {
-    for( int i=0; i<numPoints; i++ )
+    if ( !outputSRS )
+        return false;
+
+    std::vector<osg::Vec3d> v(1, input);
+
+    if ( transform(v, outputSRS) )
     {
-        double xr = (osg::DegreesToRadians(x[i]) - (-osg::PI)) / (2.0*osg::PI);
-        double sinLat = sin(osg::DegreesToRadians(y[i]));
-        double oneMinusSinLat = 1-sinLat;
-        if ( oneMinusSinLat != 0.0 )
-        {
-            double yr = ((0.5 * log( (1+sinLat)/oneMinusSinLat )) - (-osg::PI)) / (2.0*osg::PI);
-            x[i] = MERC_MINX + (xr * MERC_WIDTH);
-            y[i] = MERC_MINY + (yr * MERC_HEIGHT);
-            // z doesn't change
-        }
+        output = v[0];
+        return true;
     }
-    return true;
+    return false;
 }
 
+
 bool
-SpatialReference::transformPoints(const SpatialReference* out_srs,
-                                  double* x, double* y, double* z,
-                                  unsigned int numPoints,
-                                  void* context,
-                                  bool ignore_errors ) const
+SpatialReference::transform(std::vector<osg::Vec3d>& points,
+                            const SpatialReference*  outputSRS) const
 {
+    if ( !outputSRS )
+        return false;
+
     if ( !_initialized )
         const_cast<SpatialReference*>(this)->init();
 
-    //Check for equivalence and return if the coordinate systems are the same.
-    if (isEquivalentTo(out_srs))
+    // trivial equivalency:
+    if ( isEquivalentTo(outputSRS) )
         return true;
-
-    if ( z )
-    {
-        for (unsigned int i = 0; i < numPoints; ++i)
-            preTransform(x[i], y[i], z[i], context);
-    }
-    else
-    {
-        double dummyZ = 0.0;
-        for (unsigned int i = 0; i < numPoints; ++i)
-            preTransform(x[i], y[i], dummyZ, context);
-    }
     
     bool success = false;
 
-#ifdef USE_CUSTOM_MERCATOR_TRANSFORM
+    // do the pre-transformation pass:
+    preTransform( points );
+
+    // Spherical Mercator is a special case transformation, because we want to bypass
+    // any normal horizontal datum conversion. In other words we ignore the ellipsoid
+    // of the other SRS and just do a straight spherical conversion.
+    if ( isGeographic() && outputSRS->isSphericalMercator() )
+    {        
+        transformZ( points, outputSRS, true );
+        success = geographicToSphericalMercator( points );
+        return success;
+    }
 
-    if ( isGeographic() && out_srs->isMercator() )
-    {
-        success = geographicToMercator( x, y, z, numPoints );
+    else if ( isSphericalMercator() && outputSRS->isGeographic() )
+    {     
+        success = sphericalMercatorToGeographic( points );
+        transformZ( points, outputSRS, true );
+        return success;
     }
 
-    else if ( isMercator() && out_srs->isGeographic() )
+    // if the points are starting as geographic, do the Z's first to avoid an unneccesary
+    // transformation in the case of differing vdatums.
+    bool z_done = false;
+    if ( isGeographic() )
     {
-        success = mercatorToGeographic( x, y, z, numPoints );
+        z_done = transformZ( points, outputSRS, true );
     }
 
-    else
-#endif
+    // move the xy data into straight arrays that OGR can use
+    unsigned count = points.size();
+    double* x = new double[count];
+    double* y = new double[count];
 
-    {    
-        GDAL_SCOPED_LOCK;
+    for( unsigned i=0; i<count; i++ )
+    {
+        x[i] = points[i].x();
+        y[i] = points[i].y();
+    }
+
+    success = transformXYPointArrays( x, y, count, outputSRS );
 
-        void* xform_handle = NULL;
-        TransformHandleCache::const_iterator itr = _transformHandleCache.find(out_srs->getWKT());
-        if (itr != _transformHandleCache.end())
+    if ( success )
+    {
+        if ( isProjected() && outputSRS->isGeographic() )
         {
-            //OE_DEBUG << "SpatialRefernece: using cached transform handle" << std::endl;
-            xform_handle = itr->second;
+            // special case: when going from projected to geographic, clamp the 
+            // points to the maximum geographic extent. Sometimes the conversion from
+            // a global/projected SRS (like mercator) will result in *slightly* invalid
+            // geographic points (like long=180.000003), so this addresses that issue.
+            for( unsigned i=0; i<count; i++ )
+            {
+                points[i].x() = osg::clampBetween( x[i], -180.0, 180.0 );
+                points[i].y() = osg::clampBetween( y[i],  -90.0,  90.0 );
+            }
         }
         else
         {
-            xform_handle = OCTNewCoordinateTransformation( _handle, out_srs->_handle);
-            const_cast<SpatialReference*>(this)->_transformHandleCache[out_srs->getWKT()] = xform_handle;
+            for( unsigned i=0; i<count; i++ )
+            {
+                points[i].x() = x[i];
+                points[i].y() = y[i];
+            }
         }
+    }
 
-        if ( !xform_handle )
-        {
-            OE_WARN << LC
-                << "SRS xform not possible" << std::endl
-                << "    From => " << getName() << std::endl
-                << "    To   => " << out_srs->getName() << std::endl;
-            return false;
-        }
+    delete[] x;
+    delete[] y;
 
-        //double* temp_z = new double[numPoints];
-        //success = OCTTransform( xform_handle, numPoints, x, y, temp_z ) > 0;
-        //delete[] temp_z;
-        
-        success = OCTTransform( xform_handle, numPoints, x, y, z ) > 0;
+    // calculate the Zs if we haven't already done so
+    if ( !z_done )
+    {
+        z_done = transformZ( points, outputSRS, outputSRS->isGeographic() );
+    }   
 
-        // END GDAL_SCOPE_LOCK
+    // run the user post-transform code
+    outputSRS->postTransform( points );
+
+    return success;
+}
+
+
+bool 
+SpatialReference::transform2D(double x, double y,
+                              const SpatialReference* outputSRS,
+                              double& out_x, double& out_y ) const
+{
+    osg::Vec3d temp(x,y,0);
+    bool ok = transform(temp, outputSRS, temp);
+    if ( ok ) {
+        out_x = temp.x();
+        out_y = temp.y();
     }
+    return ok;
+}
 
-    if ( success || ignore_errors )
+
+bool
+SpatialReference::transformXYPointArrays(double*  x,
+                                         double*  y,
+                                         unsigned count,
+                                         const SpatialReference* out_srs) const
+{  
+    // Transform the X and Y values inside an exclusive GDAL/OGR lock
+    GDAL_SCOPED_LOCK;
+
+    void* xform_handle = NULL;
+    TransformHandleCache::const_iterator itr = _transformHandleCache.find(out_srs->getWKT());
+    if (itr != _transformHandleCache.end())
     {
-        if ( z )
-        {
-            for (unsigned int i = 0; i < numPoints; ++i)
-                out_srs->postTransform(x[i], y[i], z[i], context);
-        }
-        else
-        {
-            double dummyZ = 0.0;
-            for (unsigned int i = 0; i < numPoints; ++i)
-                out_srs->postTransform(x[i], y[i], dummyZ, context);
-        }
+        OE_DEBUG << "using cached transform handle" << std::endl;
+        xform_handle = itr->second;
     }
     else
     {
-        OE_WARN << LC << "Failed to xform a point from "
-            << getName() << " to " << out_srs->getName()
-            << std::endl;
+        OE_DEBUG << "allocating new OCT Transform" << std::endl;
+        xform_handle = OCTNewCoordinateTransformation( _handle, out_srs->_handle);
+        const_cast<SpatialReference*>(this)->_transformHandleCache[out_srs->getWKT()] = xform_handle;
     }
-    return success;
+
+    if ( !xform_handle )
+    {
+        OE_WARN << LC
+            << "SRS xform not possible" << std::endl
+            << "    From => " << getName() << std::endl
+            << "    To   => " << out_srs->getName() << std::endl;
+        return false;
+    }
+
+    return OCTTransform( xform_handle, count, x, y, 0L ) > 0;
 }
 
+
 bool
-SpatialReference::transformPoints(const SpatialReference* out_srs,
-                                  std::vector<osg::Vec3d>& points,
-                                  void* context,
-                                  bool ignore_errors ) const
+SpatialReference::transformZ(std::vector<osg::Vec3d>& points,
+                             const SpatialReference*  outputSRS,
+                             bool                     pointsAreLatLong) const
 {
-    if ( !_initialized )
-        const_cast<SpatialReference*>(this)->init();
+    const VerticalDatum* outVDatum = outputSRS->getVerticalDatum();
 
-    //Check for equivalence and return if the coordinate systems are the same.
-    if (isEquivalentTo(out_srs)) 
+    // same vdatum, no xformation necessary.
+    if ( _vdatum.get() == outVDatum )
         return true;
 
-    int numPoints = points.size();
-    double* x = new double[numPoints];
-    double* y = new double[numPoints];
-    double* z = new double[numPoints];
+    Units inUnits = _vdatum.valid() ? _vdatum->getUnits() : Units::METERS;
+    Units outUnits = outVDatum ? outVDatum->getUnits() : inUnits;
 
-    for( int i=0; i<numPoints; i++ )
+    if ( isGeographic() || pointsAreLatLong )
     {
-        x[i] = points[i].x();
-        y[i] = points[i].y();
-        z[i] = points[i].z();
+        for( unsigned i=0; i<points.size(); ++i )
+        {
+            if ( _vdatum.valid() )
+            {
+                // to HAE:
+                points[i].z() = _vdatum->msl2hae( points[i].y(), points[i].x(), points[i].z() );
+            }
+
+            // do the units conversion:
+            points[i].z() = inUnits.convertTo(outUnits, points[i].z());
+
+            if ( outVDatum )
+            {
+                // to MSL:
+                points[i].z() = outVDatum->hae2msl( points[i].y(), points[i].x(), points[i].z() );
+            }
+        }
     }
 
-    bool success = transformPoints( out_srs, x, y, z, numPoints, context, ignore_errors );
+    else // need to xform input points
+    {
+        // copy the points and convert them to geographic coordinates (lat/long with the same Z):
+        std::vector<osg::Vec3d> geopoints(points);
+        transform( geopoints, getGeographicSRS() );
 
-    if ( success )
+        for( unsigned i=0; i<geopoints.size(); ++i )
+        {
+            if ( _vdatum.valid() )
+            {
+                // to HAE:
+                points[i].z() = _vdatum->msl2hae( geopoints[i].y(), geopoints[i].x(), points[i].z() );
+            }
+
+            // do the units conversion:
+            points[i].z() = inUnits.convertTo(outUnits, points[i].z());
+
+            if ( outVDatum )
+            {
+                // to MSL:
+                points[i].z() = outVDatum->hae2msl( geopoints[i].y(), geopoints[i].x(), points[i].z() );
+            }
+        }
+    }
+
+    return true;
+}
+
+bool 
+SpatialReference::transformToWorld(const osg::Vec3d& input,
+                                   osg::Vec3d&       output ) const
+{
+    if ( (isGeographic() && !isPlateCarre()) || isCube() ) //isGeographic() && !_is_plate_carre )
+    {
+        return transformToECEF(input, output);
+    }
+    else // isProjected || _is_plate_carre
     {
-        for( int i=0; i<numPoints; i++ )
+        output = input;
+        if ( _vdatum.valid() )
         {
-            points[i].x() = x[i];
-            points[i].y() = y[i];
-            points[i].z() = z[i];
+            osg::Vec3d geo(input);
+            if ( !transform(input, getGeographicSRS(), geo) )
+                return false;
+
+            output.z() = _vdatum->msl2hae( geo.y(), geo.x(), input.z() );
         }
+        return true;
     }
+}
 
-    delete[] x;
-    delete[] y;
-    delete[] z;
+bool 
+SpatialReference::transformFromWorld(const osg::Vec3d& world,
+                                     osg::Vec3d&       output,
+                                     double*           out_haeZ ) const
+{
+    if ( (isGeographic() && !isPlateCarre()) || isCube() ) //isGeographic() && !_is_plate_carre )
+    {
+        return transformFromECEF(world, output, out_haeZ);
+    }
+    else // isProjected || _is_plate_carre
+    {
+        output = world;
 
-    return success;
+        if (out_haeZ)
+            *out_haeZ = world.z();
+
+        if ( _vdatum.valid() )
+        {
+            // get the geographic coords by converting x/y/hae -> lat/long/msl:
+            osg::Vec3d lla;
+            if (!transform(world, getGeographicSRS(), lla) )
+                return false;
+
+            output.z() = lla.z();
+        }
+
+        return true;
+    }
 }
 
+
 bool 
 SpatialReference::transformToECEF(const osg::Vec3d& input,
                                   osg::Vec3d&       output ) const
 {
-    double lat = input.y(), lon = input.x(), alt = input.z();
+    osg::Vec3d geo(input);
     
-    // first convert to lat/long if necessary:
-    if ( !isGeographic() )
-        transform( input.x(), input.y(), input.z(), getGeographicSRS(), lon, lat, alt );
+    // first convert to lat/long/hae:
+    if ( !isGeodetic() )
+    {
+        if ( !transform(input, getGeodeticSRS(), geo) )
+            return false;
+    }
 
     // then convert to ECEF.
-    //double z = input.z();
-    getGeographicSRS()->getEllipsoid()->convertLatLongHeightToXYZ(
-        osg::DegreesToRadians( lat ), osg::DegreesToRadians( lon ), alt,
+    getEllipsoid()->convertLatLongHeightToXYZ(
+        osg::DegreesToRadians( geo.y() ), osg::DegreesToRadians( geo.x() ), geo.z(),
         output.x(), output.y(), output.z() );
 
     return true;
 }
 
 bool 
-SpatialReference::transformToECEF(std::vector<osg::Vec3d>& points,
-                                  bool                     ignoreErrors ) const
+SpatialReference::transformToECEF(std::vector<osg::Vec3d>& points) const
 {
     if ( points.size() == 0 )
         return false;
 
-    const SpatialReference*    geoSRS    = getGeographicSRS();
-    const osg::EllipsoidModel* ellipsoid = geoSRS->getEllipsoid();
+    // transform the points to lat/long/hae first:
+    if ( !isGeodetic() )
+    {
+        if ( !transform(points, getGeodeticSRS()) )
+            return false;
+    }
 
+    // then convert to ECEF:
     for( unsigned i=0; i<points.size(); ++i )
     {
         osg::Vec3d& p = points[i];
 
-        if ( !isGeographic() )
-            transform( p.x(), p.y(), p.z(), geoSRS, p.x(), p.y(), p.z() );
-
-        ellipsoid->convertLatLongHeightToXYZ(
+        getEllipsoid()->convertLatLongHeightToXYZ(
             osg::DegreesToRadians( p.y() ), osg::DegreesToRadians( p.x() ), p.z(),
             p.x(), p.y(), p.z() );
     }
@@ -945,102 +1227,172 @@ SpatialReference::transformToECEF(std::vector<osg::Vec3d>& points,
 }
 
 bool 
-SpatialReference::transformFromECEF(const osg::Vec3d& input,
-                                    osg::Vec3d&       output ) const
+SpatialReference::transformFromECEF(const osg::Vec3d& ecef,
+                                    osg::Vec3d&       output,
+                                    double*           out_haeZ ) const
 {
-    // transform to lat/long:
-    osg::Vec3d geo;
+    // transform to lat/long/hae (geodetic):
+    osg::Vec3d geodetic;
 
-    getGeographicSRS()->getEllipsoid()->convertXYZToLatLongHeight(
-        input.x(), input.y(), input.z(),
-        geo.y(), geo.x(), geo.z() );
+    getEllipsoid()->convertXYZToLatLongHeight(
+        ecef.x(),     ecef.y(),     ecef.z(),
+        geodetic.y(), geodetic.x(), geodetic.z() );
 
-    // then convert to the local SRS.
-    if ( isGeographic() )
-    {
-        output.set( osg::RadiansToDegrees(geo.x()), osg::RadiansToDegrees(geo.y()), geo.z() );
-    }
-    else
-    {
-        getGeographicSRS()->transform( 
-            osg::RadiansToDegrees(geo.x()), osg::RadiansToDegrees(geo.y()), geo.z(),
-            this,
-            output.x(), output.y(), output.z() );
-        //output.z() = geo.z();
-    }
+    geodetic.y() = osg::RadiansToDegrees(geodetic.y());
+    geodetic.x() = osg::RadiansToDegrees(geodetic.x());
 
-    return true;
+    // if our SRS is geographic, save the HAE now:
+    if ( out_haeZ )
+        *out_haeZ = geodetic.z();
+
+    return getGeodeticSRS()->transform(geodetic, this, output);
 }
 
 bool 
-SpatialReference::transformFromECEF(std::vector<osg::Vec3d>& points,
-                                    bool                     ignoreErrors ) const
+SpatialReference::transformFromECEF(std::vector<osg::Vec3d>& points) const
 {
     bool ok = true;
 
-    // first convert all the points to lat/long (in place):
+    // first convert all the points to lat/long/hae (geodetic) in place:
     for( unsigned i=0; i<points.size(); ++i )
     {
         osg::Vec3d& p = points[i];
-        osg::Vec3d geo;
-        getGeographicSRS()->getEllipsoid()->convertXYZToLatLongHeight(
+        osg::Vec3d geodetic;
+        getEllipsoid()->convertXYZToLatLongHeight(
             p.x(), p.y(), p.z(),
-            geo.y(), geo.x(), geo.z() );
-        geo.x() = osg::RadiansToDegrees( geo.x() );
-        geo.y() = osg::RadiansToDegrees( geo.y() );
-        p = geo;
+            geodetic.y(), geodetic.x(), geodetic.z() );
+
+        geodetic.x() = osg::RadiansToDegrees( geodetic.x() );
+        geodetic.y() = osg::RadiansToDegrees( geodetic.y() );
+        p = geodetic;
     }
 
     // then convert them all to the local SRS if necessary.
-    if ( !isGeographic() )
+    if ( !isGeodetic() )
     {
-        ok = getGeographicSRS()->transformPoints( this, points, 0L, ignoreErrors );
+        ok = getGeodeticSRS()->transform( points, this );
     }
 
     return ok;
 }
 
+double
+SpatialReference::transformUnits(double                  input,
+                                 const SpatialReference* outSRS ) const
+{
+    if ( this->isProjected() && outSRS->isGeographic() )
+    {
+        double metersPerEquatorialDegree = (outSRS->getEllipsoid()->getRadiusEquator() * 2.0 * osg::PI) / 360.0;
+        double inputDegrees = getUnits().convertTo(Units::METERS, input) / metersPerEquatorialDegree;
+        return Units::DEGREES.convertTo( outSRS->getUnits(), inputDegrees );
+    }
+    else if ( this->isGeographic() && outSRS->isProjected() )
+    {
+        double metersPerEquatorialDegree = (outSRS->getEllipsoid()->getRadiusEquator() * 2.0 * osg::PI) / 360.0;
+        double inputMeters = getUnits().convertTo(Units::DEGREES, input) * metersPerEquatorialDegree;
+        return Units::METERS.convertTo( outSRS->getUnits(), inputMeters );
+    }
+    else // both projected or both geographic.
+    {
+        return getUnits().convertTo( outSRS->getUnits(), input );
+    }
+}
+
 bool
-SpatialReference::transformExtent(const SpatialReference* to_srs,
-                                  double&                 in_out_xmin,
-                                  double&                 in_out_ymin,
-                                  double&                 in_out_xmax,
-                                  double&                 in_out_ymax,
-                                  void*                   context ) const
+SpatialReference::transformExtentToMBR(const SpatialReference* to_srs,
+                                       double&                 in_out_xmin,
+                                       double&                 in_out_ymin,
+                                       double&                 in_out_xmax,
+                                       double&                 in_out_ymax  ) const
 {
     if ( !_initialized )
         const_cast<SpatialReference*>(this)->init();
 
-    int oks = 0;
-
-    //Transform all points and take the maximum bounding rectangle the resulting points
-    double llx, lly;
-    double ulx, uly;
-    double urx, ury;
-    double lrx, lry;
-    double dummyZ = 0;
-
-    //Lower Left
-    oks += transform( in_out_xmin, in_out_ymin, 0, to_srs, llx, lly, dummyZ, context ) == true;
+    //Original code that checks the 4 corners of the bounds and translates them
+#if 0
+    // Transform all points and take the maximum bounding rectangle the resulting points
+    std::vector<osg::Vec3d> v;
+    v.push_back( osg::Vec3d(in_out_xmin, in_out_ymin, 0) ); // ll
+    v.push_back( osg::Vec3d(in_out_xmin, in_out_ymax, 0) ); // ul
+    v.push_back( osg::Vec3d(in_out_xmax, in_out_ymax, 0) ); // ur
+    v.push_back( osg::Vec3d(in_out_xmax, in_out_ymin, 0) ); // lr
+
+    if ( transform(v, to_srs) )
+    {
+        in_out_xmin = std::min( v[0].x(), v[1].x() );
+        in_out_xmax = std::max( v[2].x(), v[3].x() );
+        in_out_ymin = std::min( v[0].y(), v[3].y() );
+        in_out_ymax = std::max( v[1].y(), v[2].y() );
+        return true;
+    }
+#else
+    // Transform all points and take the maximum bounding rectangle the resulting points
+    std::vector<osg::Vec3d> v;
+
+    double height = in_out_ymax - in_out_ymin;
+    double width = in_out_xmax - in_out_xmin;
+    v.push_back( osg::Vec3d(in_out_xmin, in_out_ymin, 0) ); // ll    
+    v.push_back( osg::Vec3d(in_out_xmin, in_out_ymax, 0) ); // ul
+    v.push_back( osg::Vec3d(in_out_xmax, in_out_ymax, 0) ); // ur
+    v.push_back( osg::Vec3d(in_out_xmax, in_out_ymin, 0) ); // lr
+
+    //We also sample along the edges of the bounding box and include them in the 
+    //MBR computation in case you are dealing with a projection that will cause the edges
+    //of the bounding box to be expanded.  This was first noticed when dealing with converting
+    //Hotline Oblique Mercator to WGS84
+   
+    //Sample the edges
+    unsigned int numSamples = 5;    
+    double dWidth  = width / (numSamples - 1 );
+    double dHeight = height / (numSamples - 1 );
+    
+    //Left edge
+    for (unsigned int i = 0; i < numSamples; i++)
+    {
+        v.push_back( osg::Vec3d(in_out_xmin, in_out_ymin + dHeight * (double)i, 0) );
+    }
 
-    //Upper Left
-    oks += transform( in_out_xmin, in_out_ymax, 0, to_srs, ulx, uly, dummyZ, context ) == true;
+    //Right edge
+    for (unsigned int i = 0; i < numSamples; i++)
+    {
+        v.push_back( osg::Vec3d(in_out_xmax, in_out_ymin + dHeight * (double)i, 0) );
+    }
 
-    //Upper Right
-    oks += transform( in_out_xmax, in_out_ymax, 0, to_srs, urx, ury, dummyZ, context ) == true;
+    //Top edge
+    for (unsigned int i = 0; i < numSamples; i++)
+    {
+        v.push_back( osg::Vec3d(in_out_xmin + dWidth * (double)i, in_out_ymax, 0) );
+    }
 
-    //Lower Right
-    oks += transform( in_out_xmax, in_out_ymin, 0, to_srs, lrx, lry, dummyZ, context ) == true;
+    //Bottom edge
+    for (unsigned int i = 0; i < numSamples; i++)
+    {
+        v.push_back( osg::Vec3d(in_out_xmin + dWidth * (double)i, in_out_ymin, 0) );
+    }
+    
+    
+    
+    if ( transform(v, to_srs) )
+    {
+        in_out_xmin = DBL_MAX;
+        in_out_ymin = DBL_MAX;
+        in_out_xmax = -DBL_MAX;
+        in_out_ymax = -DBL_MAX;
 
+        for (unsigned int i = 0; i < v.size(); i++)
+        {
+            in_out_xmin = std::min( v[i].x(), in_out_xmin );
+            in_out_ymin = std::min( v[i].y(), in_out_ymin );
+            in_out_xmax = std::max( v[i].x(), in_out_xmax );
+            in_out_ymax = std::max( v[i].y(), in_out_ymax );
+        }
 
-    if (oks == 4)
-    {
-        in_out_xmin = osg::minimum(llx, ulx);
-        in_out_xmax = osg::maximum(lrx, urx);
-        in_out_ymin = osg::minimum(lly, lry);
-        in_out_ymax = osg::maximum(uly, ury);
         return true;
     }
+
+   
+#endif
+
     return false;
 }
 
@@ -1048,9 +1400,10 @@ bool SpatialReference::transformExtentPoints(const SpatialReference* to_srs,
                                              double in_xmin, double in_ymin,
                                              double in_xmax, double in_ymax,
                                              double* x, double* y,
-                                             unsigned int numx, unsigned int numy,
-                                             void* context, bool ignore_errors ) const
+                                             unsigned int numx, unsigned int numy ) const
 {
+    std::vector<osg::Vec3d> points;
+
     const double dx = (in_xmax - in_xmin) / (numx - 1);
     const double dy = (in_ymax - in_ymin) / (numy - 1);
 
@@ -1064,12 +1417,23 @@ bool SpatialReference::transformExtentPoints(const SpatialReference* to_srs,
         {
             const double dest_y = in_ymin + fr * dy;
 
-            x[pixel] = dest_x;
-            y[pixel] = dest_y;
+            points.push_back(osg::Vec3d(dest_x, dest_y, 0));
+            //x[pixel] = dest_x;
+            //y[pixel] = dest_y;
             pixel++;     
         }
     }
-    return transformPoints(to_srs, x, y, 0L, numx * numy, context, ignore_errors);
+
+    if ( transform( points, to_srs ) )
+    {
+        for( unsigned i=0; i<points.size(); ++i )
+        {
+            x[i] = points[i].x();
+            y[i] = points[i].y();
+        }
+        return true;
+    }
+    return false;
 }
 
 void
@@ -1101,6 +1465,11 @@ SpatialReference::_init()
     double semi_minor_axis = OSRGetSemiMinor( _handle, &err );
     _ellipsoid = new osg::EllipsoidModel( semi_major_axis, semi_minor_axis );
 
+    // unique ID for comparing ellipsoids quickly:
+    _ellipsoidId = hashString( Stringify() 
+        << std::fixed << std::setprecision(10) 
+        << _ellipsoid->getRadiusEquator() << ";" << _ellipsoid->getRadiusPolar() );
+
     // try to get an ellipsoid name:
     _ellipsoid->setName( getOGRAttrValue(_handle, "SPHEROID", 0, true) );
 
@@ -1116,6 +1485,9 @@ SpatialReference::_init()
     // check for the Mercator projection:
     _is_mercator = !proj.empty() && proj.find("mercator")==0;
 
+    // check for spherical mercator (a special case)
+    _is_spherical_mercator = _is_mercator && osg::equivalent(semi_major_axis, semi_minor_axis);
+
     // check for the Polar projection:
     if ( !proj.empty() && proj.find("polar_stereographic") != std::string::npos )
     {
@@ -1123,11 +1495,22 @@ SpatialReference::_init()
         _is_north_polar = lat > 0.0;
         _is_south_polar = lat < 0.0;
     }
-	else
-	{
-		_is_north_polar = false;
-		_is_south_polar = false;
-	}
+    else
+    {
+      _is_north_polar = false;
+      _is_south_polar = false;
+    }
+
+    // Try to extract the horizontal datum
+    _datum = getOGRAttrValue( _handle, "DATUM", 0, true );
+
+    // Extract the base units:
+    std::string units = getOGRAttrValue( _handle, "UNIT", 0, true );
+    double unitMultiplier = osgEarth::as<double>( getOGRAttrValue( _handle, "UNIT", 1, true ), 1.0 );
+    if ( _is_geographic )
+        _units = Units(units, units, Units::TYPE_ANGULAR, unitMultiplier);
+    else
+        _units = Units(units, units, Units::TYPE_LINEAR, unitMultiplier);
 
     // Give the SRS a name if it doesn't have one:
     if ( _name == "unnamed" || _name.empty() )
@@ -1137,6 +1520,14 @@ SpatialReference::_init()
             _is_mercator? "Mercator CS" :
             ( !proj.empty()? proj : "Projected CS" );
     }
+    
+    // Try to extract the PROJ4 initialization string:
+    char* proj4buf;
+    if ( OSRExportToProj4( _handle, &proj4buf ) == OGRERR_NONE )
+    {
+        _proj4 = proj4buf;
+        OGRFree( proj4buf );
+    }
 
     // Try to extract the OGC well-known-text (WKT) string:
     char* wktbuf;
@@ -1146,23 +1537,21 @@ SpatialReference::_init()
         OGRFree( wktbuf );
     }
 
-    // If the user did not specify and initialization string, use the WKT.
-    if ( _init_str.empty() )
+    // Build a 'normalized' initialization key.
+    if ( !_proj4.empty() )
+    {
+        _key.first = _proj4;
+        _init_type = "PROJ4";
+    }
+    else if ( !_wkt.empty() )
     {
-        _init_str = _wkt;
+        _key.first = _wkt;
         _init_type = "WKT";
     }
-    
-    // Try to extract the PROJ4 initialization string:
-    char* proj4buf;
-    if ( OSRExportToProj4( _handle, &proj4buf ) == OGRERR_NONE )
+    if ( _vdatum.valid() )
     {
-        _proj4 = proj4buf;
-        OGRFree( proj4buf );
+        _key.second = _vdatum->getInitString();
     }
 
-    // Try to extract the datum
-    _datum = getOGRAttrValue( _handle, "DATUM", 0, true );
-
     _initialized = true;
 }
diff --git a/src/osgEarth/StateSetCache b/src/osgEarth/StateSetCache
new file mode 100644
index 0000000..1f0f857
--- /dev/null
+++ b/src/osgEarth/StateSetCache
@@ -0,0 +1,96 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_STATE_SET_CACHE_H
+#define OSGEARTH_STATE_SET_CACHE_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/ThreadingUtils>
+#include <osg/StateSet>
+#include <set>
+
+namespace osgEarth
+{
+    /**
+     * Cache for optimizing state set sharing.
+     */
+    class OSGEARTH_EXPORT StateSetCache : public osg::Referenced
+    {
+    public:
+        StateSetCache() { }
+        virtual ~StateSetCache() { }
+
+        /**
+         * Traverse the node and consolidate equivalent state sets, updating
+         * the cache along the way.
+         */
+        void optimize( osg::Node* node );
+
+        /**
+         * Looks in the cache for a stateset matching the input. If found,
+         * returns the cached one in output. If not found, stores the input 
+         * in the cache and returns the same one in output.
+         *
+         * Must use ref_ptrs for thread safely
+         */
+        bool share( 
+            osg::ref_ptr<osg::StateSet>& input, 
+            osg::ref_ptr<osg::StateSet>& output );
+
+        /**
+         * Looks in the attribute cache for an attribute matching the input.
+         * If found, returns the cached one in output. If not found, stores
+         * the input in the cache and returns the same one in output.
+         *
+         * Must use ref_ptrs for thread safely
+         */
+        bool share(
+            osg::ref_ptr<osg::StateAttribute>& input,
+            osg::ref_ptr<osg::StateAttribute>& output );
+
+        /**
+         * Number of statesets in the cache.
+         */
+        unsigned size() const { return _stateSetCache.size(); }
+
+    protected: 
+        struct CompareStateSets {
+            bool operator()(
+                const osg::ref_ptr<osg::StateSet>& lhs,
+                const osg::ref_ptr<osg::StateSet>& rhs) const {
+                    return lhs->compare(*(rhs.get()), true) < 0;
+            }
+        };
+        typedef std::set< osg::ref_ptr<osg::StateSet>, CompareStateSets> StateSetSet;
+        StateSetSet _stateSetCache;
+
+        struct CompareStateAttributes {
+            bool operator()(
+                const osg::ref_ptr<osg::StateAttribute>& lhs,
+                const osg::ref_ptr<osg::StateAttribute>& rhs) const {
+                    return lhs->compare(*rhs.get()) < 0;
+            }
+        };
+        typedef std::set< osg::ref_ptr<osg::StateAttribute>, CompareStateAttributes> StateAttributeSet;
+        StateAttributeSet _stateAttributeCache;
+
+        mutable Threading::Mutex _mutex;
+    };
+}
+
+#endif // OSGEARTH_STATE_SET_CACHE_H
diff --git a/src/osgEarth/StateSetCache.cpp b/src/osgEarth/StateSetCache.cpp
new file mode 100644
index 0000000..47c947b
--- /dev/null
+++ b/src/osgEarth/StateSetCache.cpp
@@ -0,0 +1,216 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/StateSetCache>
+#include <osg/NodeVisitor>
+#include <osg/Geode>
+
+#define LC "[StateSetCache] "
+
+using namespace osgEarth;
+
+//---------------------------------------------------------------------------
+
+namespace
+{
+    /**
+     * Visitor that calls StateSetCache::share on all attributes found
+     * in a scene graph.
+     */
+    struct ShareStateAttributes : public osg::NodeVisitor
+    {
+        StateSetCache* _cache;
+
+        ShareStateAttributes(StateSetCache* cache) :
+            osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+            _cache          ( cache ) { }
+
+        void apply(osg::Node& node)
+        {
+            if ( node.getStateSet() && node.getStateSet()->getDataVariance() != osg::Object::DYNAMIC )
+            {
+                applyStateSet( node.getStateSet() );
+            }
+            traverse(node);
+        }
+
+        void apply(osg::Geode& geode)
+        {
+            unsigned numDrawables = geode.getNumDrawables();
+            for( unsigned i=0; i<numDrawables; ++i )
+            {
+                osg::Drawable* d = geode.getDrawable(i);
+                if ( d && d->getStateSet() && d->getStateSet()->getDataVariance() != osg::Object::DYNAMIC )
+                {
+                    applyStateSet( d->getStateSet() );
+                }
+            }
+            apply((osg::Node&)geode);
+        }
+
+        void applyStateSet(osg::StateSet* stateSet)
+        {
+            osg::StateSet::AttributeList& attrs = stateSet->getAttributeList();
+            for( osg::StateSet::AttributeList::iterator i = attrs.begin(); i != attrs.end(); ++i )
+            {
+                osg::ref_ptr<osg::StateAttribute> in, shared;
+                in = i->second.first.get();
+                if ( in.valid() && _cache->share(in, shared) )
+                {
+                    i->second.first = shared.get();
+                }
+            }
+
+            osg::StateSet::TextureAttributeList& texAttrs = stateSet->getTextureAttributeList();
+            for( osg::StateSet::TextureAttributeList::iterator j = texAttrs.begin(); j != texAttrs.end(); ++j )
+            {
+                osg::StateSet::AttributeList& attrs = *j;
+                for( osg::StateSet::AttributeList::iterator i = attrs.begin(); i != attrs.end(); ++i )
+                {
+                    osg::StateAttribute* sa = i->second.first.get();
+                    osg::ref_ptr<osg::StateAttribute> in, shared;
+                    in = i->second.first.get();
+                    if ( in.valid() && _cache->share(in, shared) )
+                    {
+                        i->second.first = shared.get();
+                    }
+                }
+            }
+        }
+    };
+
+
+    /**
+     * Visitor that calls StateSetCache::share on all statesets found
+     * in a scene graph.
+     */
+    struct ShareStateSets : public osg::NodeVisitor
+    {
+        StateSetCache* _cache;
+        unsigned       _stateSets;
+        unsigned       _shares;
+        //std::vector<osg::StateSet*> _misses; // for debugging
+
+        ShareStateSets(StateSetCache* cache) :
+            osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+            _cache    ( cache ),
+            _stateSets( 0 ),
+            _shares   ( 0 ) { }
+
+        void apply(osg::Node& node)
+        {
+            if ( node.getStateSet() && node.getStateSet()->getDataVariance() != osg::Object::DYNAMIC )
+            {
+                _stateSets++;
+                osg::ref_ptr<osg::StateSet> in, shared;
+                in = node.getStateSet();
+                if ( in.valid() && _cache->share(in, shared) )
+                {
+                    node.setStateSet( shared.get() );
+                    _shares++;
+                }
+                //else _misses.push_back(in.get());
+            }
+            traverse(node);
+        }
+
+        void apply(osg::Geode& geode)
+        {
+            unsigned numDrawables = geode.getNumDrawables();
+            for( unsigned i=0; i<numDrawables; ++i )
+            {
+                osg::Drawable* d = geode.getDrawable(i);
+                if ( d && d->getStateSet() && d->getStateSet()->getDataVariance() != osg::Object::DYNAMIC )
+                {
+                    _stateSets++;
+                    osg::ref_ptr<osg::StateSet> in, shared;
+                    in = d->getStateSet();
+                    if ( in.valid() && _cache->share(in, shared) )
+                    {
+                        d->setStateSet( shared.get() );
+                        _shares++;
+                    }
+                    //else _misses.push_back(in.get());
+                }
+            }
+            apply((osg::Node&)geode);
+        }
+    };
+}
+
+//------------------------------------------------------------------------
+
+void
+StateSetCache::optimize(osg::Node* node)
+{
+    if ( node )
+    {
+        // replace all equivalent attributes with a single instance
+        ShareStateAttributes v1( this );
+        node->accept( v1 );
+
+        // replace all equivalent static statesets with a single instance
+        ShareStateSets v2( this );
+        node->accept( v2 );
+    }
+}
+
+
+bool
+StateSetCache::share(osg::ref_ptr<osg::StateSet>& input,
+                     osg::ref_ptr<osg::StateSet>& output )
+{
+    Threading::ScopedMutexLock lock( _mutex );
+
+    std::pair<StateSetSet::iterator,bool> result = _stateSetCache.insert( input );
+    if ( result.second )
+    {
+        // first use
+        output = input.get();
+        return false;
+    }
+    else
+    {
+        // found a share!
+        output = result.first->get();
+        return true;
+    }
+}
+
+
+
+bool
+StateSetCache::share(osg::ref_ptr<osg::StateAttribute>& input,
+                     osg::ref_ptr<osg::StateAttribute>& output)
+{
+    Threading::ScopedMutexLock lock( _mutex );
+
+    std::pair<StateAttributeSet::iterator,bool> result = _stateAttributeCache.insert( input );
+    if ( result.second )
+    {
+        // first use
+        output = input.get();
+        return false;
+    }
+    else
+    {
+        // found a share!
+        output = result.first->get();
+        return true;
+    }
+}
diff --git a/src/osgEarth/StringUtils b/src/osgEarth/StringUtils
index 234d3e0..e61f5a8 100644
--- a/src/osgEarth/StringUtils
+++ b/src/osgEarth/StringUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,263 +20,97 @@
 #define OSGEARTH_STRING_UTILS_H 1
 
 #include <osgEarth/Common>
+#include <osg/Vec3>
+#include <osg/Vec3d>
 #include <osg/Vec4>
 #include <osg/Vec4ub>
 #include <string>
 #include <algorithm>
 #include <vector>
 #include <sstream>
+#include <locale>
 #include <iomanip>
 #include <map>
+#include <ctype.h>
 
 namespace osgEarth
 {
+    extern OSGEARTH_EXPORT const std::string EMPTY_STRING;
+
     typedef std::vector<std::string> StringVector;
 
-    /** Replaces all the instances of "sub" with "other" in "s". */
-    static std::string&
-    replaceIn( std::string& s, const std::string& sub, const std::string& other)
-    {
-        if ( sub.empty() ) return s;
-        size_t b=0;
-        for( ; ; )
-        {
-            b = s.find( sub, b );
-            if ( b == s.npos ) break;
-            s.replace( b, sub.size(), other );
-            b += other.size();
-        }
-        return s;
-    }
+    /** Replaces all the instances of "pattern" with "replacement" in "in_out" */
+    extern OSGEARTH_EXPORT std::string& replaceIn(
+        std::string&       in_out, 
+        const std::string& pattern, 
+        const std::string& replacement );
+
+    /** Replaces all the instances of "pattern" with "replacement" in "in_out" (case-insensitive) */
+    extern OSGEARTH_EXPORT std::string& ciReplaceIn(
+        std::string&       in_out, 
+        const std::string& pattern, 
+        const std::string& replacement );
 
     /**
      * Trims whitespace from the ends of a string.
-     * by Rodrigo C F Dias
-     * http://www.codeproject.com/KB/stl/stdstringtrim.aspx
      */
-    static
-    std::string trim( const std::string& in )
-    {
-        std::string whitespace (" \t\f\v\n\r");
-        std::string str = in;
-        std::string::size_type pos = str.find_last_not_of( whitespace );
-        if(pos != std::string::npos) {
-            str.erase(pos + 1);
-            pos = str.find_first_not_of( whitespace );
-            if(pos != std::string::npos) str.erase(0, pos);
-        }
-        else str.erase(str.begin(), str.end());
-        return str;
-    }
+    extern OSGEARTH_EXPORT std::string trim( const std::string& in );
 
     /**
      * True is "ref" starts with "pattern"
      */
-    static
-    bool startsWith( const std::string& ref, const std::string& pattern )
-    {
-        return ref.find( pattern ) == 0;
-    }
+    extern OSGEARTH_EXPORT bool startsWith( 
+        const std::string& ref, 
+        const std::string& pattern, 
+        bool               caseSensitive =true,
+        const std::locale& locale        =std::locale() );
 
     /**
      * True is "ref" ends with "pattern"
      */
-    static
-    bool endsWith( const std::string& ref, const std::string& pattern )
-    {
-        return ref.find( pattern ) == ref.length()-pattern.length();
-    }
+    extern OSGEARTH_EXPORT bool endsWith(
+        const std::string& ref, 
+        const std::string& pattern, 
+        bool               caseSensitive =true,
+        const std::locale& locale        =std::locale() );
 
     /**
-     * Splits a string up into a vector of strings based on a set of 
-     * delimiters, quotes, and rules.
+     * Case-insensitive compare
      */
-    class OSGEARTH_EXPORT StringTokenizer
-    {
-    public:
-        StringTokenizer( const std::string& delims =" \t\r\n", const std::string& quotes ="'\"" );
+    extern OSGEARTH_EXPORT bool ciEquals(
+        const std::string& lhs,
+        const std::string& rhs,
+        const std::locale& local = std::locale() );
 
-        StringTokenizer(
-            const std::string& input, StringVector& output,
-            const std::string& delims =" \t\r\n", const std::string& quotes ="'\"",
-            bool keepEmpties =true, bool trimTokens =true);
-
-        void tokenize( const std::string& input, StringVector& output ) const;
 
-        bool& keepEmpties() { return _allowEmpties; }
-
-        bool& trimTokens() { return _trimTokens; }
-
-        void addDelim( char delim, bool keepAsToken =false );
-
-        void addDelims( const std::string& delims, bool keepAsTokens =false );
-
-        void addQuote( char delim, bool keepInToken =false );
-
-        void addQuotes( const std::string& delims, bool keepInTokens =false );
-        
-    private:
-        typedef std::map<char,bool> TokenMap;
-        TokenMap _delims;
-        TokenMap _quotes;
-        bool     _allowEmpties;
-        bool     _trimTokens;
-    };
-
-    static std::string
-    joinStrings( const StringVector& input, char delim )
-    {
-        std::stringstream buf;
-        for( StringVector::const_iterator i = input.begin(); i != input.end(); ++i )
-        {
-            buf << *i;
-            if ( (i+1) != input.end() ) buf << delim;
-        }
-        std::string result = buf.str();
-        return result;
-    }
+    extern OSGEARTH_EXPORT std::string joinStrings( const StringVector& input, char delim );
 
     /** Returns a lower-case version of the input string. */
-    static std::string
-    toLower( const std::string& input )
-    {
-        std::string output = input;
-        std::transform( output.begin(), output.end(), output.begin(), ::tolower );
-        return output;
-    }
+    extern OSGEARTH_EXPORT std::string toLower( const std::string& input );
 
     /** Parses a color string in the form "255 255 255 255" (r g b a [0..255]) into an OSG color. */
-    static osg::Vec4ub
-    stringToColor(const std::string& str, osg::Vec4ub default_value)
-    {
-        osg::Vec4ub color = default_value;
-        std::istringstream strin(str);
-        int r, g, b, a;
-        if (strin >> r && strin >> g && strin >> b && strin >> a)
-        {
-            color.r() = (unsigned char)r;
-            color.g() = (unsigned char)g;
-            color.b() = (unsigned char)b;
-            color.a() = (unsigned char)a;
-        }
-        return color;
-    }
+    extern OSGEARTH_EXPORT osg::Vec4ub stringToColor(const std::string& str, osg::Vec4ub default_value);
 
     /** Creates a string in the form "255 255 255 255" (r g b a [0..255]) from a color */
-    static std::string
-    colorToString( const osg::Vec4ub& c )
-    {
-        std::stringstream ss;
-        ss << (int)c.r() << " " << (int)c.g() << " " << (int)c.b() << " " << (int)c.a();
-        std::string ssStr;
-        ssStr = ss.str();
-        return ssStr;
-    }
+    extern OSGEARTH_EXPORT std::string colorToString( const osg::Vec4ub& c );
 
     /** Converts a string to a vec3f */
-    static osg::Vec3f
-    stringToVec3f( const std::string& str, const osg::Vec3f& default_value )
-    {
-        std::stringstream buf(str);
-        osg::Vec3f out = default_value;
-        buf >> out.x();
-        if ( !buf.eof() ) {
-            buf >> out.y() >> out.z();
-        }
-        else {
-            out.y() = out.x();
-            out.z() = out.x();
-        }
-        return out;
-    }
+    extern OSGEARTH_EXPORT osg::Vec3f stringToVec3f( const std::string& str, const osg::Vec3f& default_value );
 
     /** Converts a vec3f to a string */
-    static std::string
-    vec3fToString( const osg::Vec3f& v )
-    {
-        std::stringstream buf;
-        buf << std::setprecision(6)
-            << v.x() << " " << v.y() << " " << v.z()
-            << std::endl;
-        std::string result;
-        result = buf.str();
-        return result;
-    }
+    extern OSGEARTH_EXPORT std::string vec3fToString( const osg::Vec3f& v );
 
     /** Parses an HTML color ("#rrggbb" or "#rrggbbaa") into an OSG color. */
-    static osg::Vec4f
-    htmlColorToVec4f( const std::string& html )
-    {
-        std::string t = html;
-        std::transform( t.begin(), t.end(), t.begin(), ::tolower );
-        osg::Vec4ub c(0,0,0,255);
-        if ( t.length() >= 7 ) {
-            c.r() |= t[1]<='9' ? (t[1]-'0')<<4 : (10+(t[1]-'a'))<<4;
-            c.r() |= t[2]<='9' ? (t[2]-'0')    : (10+(t[2]-'a'));
-            c.g() |= t[3]<='9' ? (t[3]-'0')<<4 : (10+(t[3]-'a'))<<4;
-            c.g() |= t[4]<='9' ? (t[4]-'0')    : (10+(t[4]-'a'));
-            c.b() |= t[5]<='9' ? (t[5]-'0')<<4 : (10+(t[5]-'a'))<<4;
-            c.b() |= t[6]<='9' ? (t[6]-'0')    : (10+(t[6]-'a'));
-            if ( t.length() == 9 ) {
-                c.a() = 0;
-                c.a() |= t[7]<='9' ? (t[7]-'0')<<4 : (10+(t[7]-'a'))<<4;
-                c.a() |= t[8]<='9' ? (t[8]-'0')    : (10+(t[8]-'a'));
-            }
-        }
-        return osg::Vec4f( ((float)c.r())/255.0f, ((float)c.g())/255.0f, ((float)c.b())/255.0f, ((float)c.a())/255.0f );
-    }
+    extern OSGEARTH_EXPORT osg::Vec4f htmlColorToVec4f( const std::string& html );
 
     /** Makes an HTML color ("#rrggbb" or "#rrggbbaa") from an OSG color. */
-    static std::string
-    vec4fToHtmlColor( const osg::Vec4f& c )
-    {
-        std::stringstream buf;
-        buf << "#";
-        buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.r()*255.0f);
-        buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.g()*255.0f);
-        buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.b()*255.0f);
-        if ( c.a() < 1.0f )
-            buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.a()*255.0f);
-        std::string ssStr = buf.str();
-        return ssStr;
-    }
+    extern OSGEARTH_EXPORT std::string vec4fToHtmlColor( const osg::Vec4f& c );
 
-    /** MurmurHash 2.0 (http://sites.google.com/site/murmurhash/) */
-    static unsigned int
-    hashString( const std::string& input )
-    {
-	    const unsigned int m = 0x5bd1e995;
-	    const int r = 24;
-        unsigned int len = input.length();
-        const char* data = input.c_str();
-	    unsigned int h = m ^ len; // using "m" as the seed.
-
-	    while(len >= 4)
-	    {
-		    unsigned int k = *(unsigned int *)data;
-		    k *= m; 
-		    k ^= k >> r; 
-		    k *= m;     		
-		    h *= m; 
-		    h ^= k;
-		    data += 4;
-		    len -= 4;
-	    }
-    	
-	    switch(len)
-	    {
-	    case 3: h ^= data[2] << 16;
-	    case 2: h ^= data[1] << 8;
-	    case 1: h ^= data[0];
-	            h *= m;
-	    };
-
-	    h ^= h >> 13;
-	    h *= m;
-	    h ^= h >> 15;
-
-	    return h;
-    }
+    /** Makes a valid filename, hopefully, out of a string (without touching slashes) */
+    extern OSGEARTH_EXPORT std::string toLegalFileName( const std::string& input );
+
+    /** Generates a hashed integer for a string (poor man's MD5) */
+    extern OSGEARTH_EXPORT unsigned hashString( const std::string& input );
     
     //------------------------------------------------------------------------
     // conversion templates
@@ -322,7 +156,8 @@ namespace osgEarth
     toString(const T& value)
     {
         std::stringstream out;
-		out << std::setprecision(20) << std::fixed << value;
+		//out << std::setprecision(20) << std::fixed << value;
+		out << std::setprecision(20) <<  value;
         std::string outStr;
         outStr = out.str();
         return outStr;
@@ -341,6 +176,11 @@ namespace osgEarth
         return vec3fToString(value);
     }
 
+    /**
+     * Assembles and returns an inline string using a stream-like << operator.
+     * Example: 
+     *     std::string str = Stringify() << "Hello, world " << variable;
+     */
     struct Stringify
     {
         operator std::string () const
@@ -350,32 +190,65 @@ namespace osgEarth
             return result;
         }
 
-        Stringify& operator << (bool val) { buf << val; return (*this); }
-        Stringify& operator << (short val) { buf << val; return (*this); }
-        Stringify& operator << (unsigned short val) { buf << val; return (*this); }
-        Stringify& operator << (int val) { buf << val; return (*this); }
-        Stringify& operator << (unsigned int val) { buf << val; return (*this); }
-        Stringify& operator << (long val) { buf << val; return (*this); }
-        Stringify& operator << (unsigned long val) { buf << val; return (*this); }
-        Stringify& operator << (float val) { buf << val; return (*this); }
-        Stringify& operator << (double val) { buf << val; return (*this); }
-        Stringify& operator << (long double val) { buf << val; return (*this); }
-        Stringify& operator << (const void* val) { buf << val; return (*this); }
-        Stringify& operator << (char val) { buf << val; return (*this); }
-        Stringify& operator << (signed char val) { buf << val; return (*this); }
-        Stringify& operator << (unsigned char val) { buf << val; return (*this); }
-        Stringify& operator << (const char* val) { buf << val; return (*this); }
-        Stringify& operator << (const signed char* val) { buf << val; return (*this); }
-        Stringify& operator << (const unsigned char* val) { buf << val; return (*this); }
-        Stringify& operator << (const std::string& val) { buf << val; return (*this); }
-        Stringify& operator << (std::streambuf* val) { buf << val; return (*this); }
-        Stringify& operator << (std::ostream& (*val)(std::ostream&)) { buf << val; return (*this); }
-        Stringify& operator << (std::ios& (*val)(std::ostream&)) { buf << val; return (*this); }
-        Stringify& operator << (std::ios_base& (*val)(std::ios_base&)) { buf << val; return (*this); }
+        template<typename T>
+        Stringify& operator << (const T& val) { buf << val; return (*this); }
+
+        Stringify& operator << (const Stringify& val) { buf << (std::string)val; return (*this); }
 
     protected:
         std::stringstream buf;
     };
+
+    template<> inline
+    Stringify& Stringify::operator << <bool>(const bool& val) { buf << (val ? "true" : "false"); return (*this); }
+
+    template<> inline
+    Stringify& Stringify::operator << <osg::Vec3f>(const osg::Vec3f& val) {
+        buf << val.x() << " " << val.y() << " " << val.z(); return (*this); }
+
+    template<> inline
+    Stringify& Stringify::operator << <osg::Vec3d>(const osg::Vec3d& val ) {
+        buf << val.x() << " " << val.y() << " " << val.z(); return (*this); }
+
+    template<> inline
+    Stringify& Stringify::operator << <osg::Vec4f>(const osg::Vec4f& val) {
+        buf << val.r() << " " << val.g() << " " << val.b() << " " << val.a(); return (*this); }
+
+    /**
+     * Splits a string up into a vector of strings based on a set of 
+     * delimiters, quotes, and rules.
+     */
+    class OSGEARTH_EXPORT StringTokenizer
+    {
+    public:
+        StringTokenizer( const std::string& delims =" \t\r\n", const std::string& quotes ="'\"" );
+
+        StringTokenizer(
+            const std::string& input, StringVector& output,
+            const std::string& delims =" \t\r\n", const std::string& quotes ="'\"",
+            bool keepEmpties =true, bool trimTokens =true);
+
+        void tokenize( const std::string& input, StringVector& output ) const;
+
+        bool& keepEmpties() { return _allowEmpties; }
+
+        bool& trimTokens() { return _trimTokens; }
+
+        void addDelim( char delim, bool keepAsToken =false );
+
+        void addDelims( const std::string& delims, bool keepAsTokens =false );
+
+        void addQuote( char delim, bool keepInToken =false );
+
+        void addQuotes( const std::string& delims, bool keepInTokens =false );
+        
+    private:
+        typedef std::map<char,bool> TokenMap;
+        TokenMap _delims;
+        TokenMap _quotes;
+        bool     _allowEmpties;
+        bool     _trimTokens;
+    };
 }
 
 #endif // OSGEARTH_STRING_UTILS_H
diff --git a/src/osgEarth/StringUtils.cpp b/src/osgEarth/StringUtils.cpp
index 8f946ef..cc7ae83 100644
--- a/src/osgEarth/StringUtils.cpp
+++ b/src/osgEarth/StringUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,9 @@
  */
 
 #include <osgEarth/StringUtils>
+#include <osgDB/FileNameUtils>
+//#include <ctype.h>
+#include <cctype>
 
 using namespace osgEarth;
 
@@ -112,7 +115,9 @@ StringTokenizer::tokenize( const std::string& input, StringVector& output ) cons
                 }
                 else
                 {
-                    std::string token = _trimTokens ? trim(buf.str()) : buf.str();
+                    std::string bufstr;
+                    bufstr = buf.str();
+                    std::string token = _trimTokens ? trim(bufstr) : bufstr;
 
                     if ( _allowEmpties || !token.empty() )
                         output.push_back( token );
@@ -128,8 +133,335 @@ StringTokenizer::tokenize( const std::string& input, StringVector& output ) cons
         }       
     }
 
-    std::string last = _trimTokens ? trim(buf.str()) : buf.str();
+    std::string bufstr;
+    bufstr = buf.str();
+    std::string last = _trimTokens ? trim(bufstr) : bufstr;
     if ( !last.empty() )
         output.push_back( last );
 }
 
+//--------------------------------------------------------------------------
+
+const std::string osgEarth::EMPTY_STRING;
+
+std::string
+osgEarth::toLegalFileName( const std::string& input )
+{
+    //const std::string legal("ABCDEFGHIJKLMNOPQRSTUVQXYZabcdefghijklmnopqrstuvwxyz_./\\");
+    static const std::string illegal("*:<>|\"\'?&");
+
+    std::size_t pos = input.find("://");
+    pos = pos == std::string::npos ? 0 : pos+3;
+
+    std::stringstream buf;
+    for( ; pos < input.size(); ++pos )
+    {
+        std::string::const_reference c = input.at(pos);
+        if ( ::isprint(c) && !::isspace(c) && illegal.find(c) == std::string::npos )
+            buf << c;
+        else
+            buf << "{" << std::hex << static_cast<unsigned>(c) << "}";
+    }
+
+    std::string result;
+    result = buf.str();
+
+    return result;
+}
+
+/** MurmurHash 2.0 (http://sites.google.com/site/murmurhash/) */
+unsigned
+osgEarth::hashString( const std::string& input )
+{
+    const unsigned int m = 0x5bd1e995;
+    const int r = 24;
+    unsigned int len = input.length();
+    const char* data = input.c_str();
+    unsigned int h = m ^ len; // using "m" as the seed.
+
+    while(len >= 4)
+    {
+        unsigned int k = *(unsigned int *)data;
+        k *= m; 
+        k ^= k >> r; 
+        k *= m;     		
+        h *= m; 
+        h ^= k;
+        data += 4;
+        len -= 4;
+    }
+
+    switch(len)
+    {
+    case 3: h ^= data[2] << 16;
+    case 2: h ^= data[1] << 8;
+    case 1: h ^= data[0];
+        h *= m;
+    };
+
+    h ^= h >> 13;
+    h *= m;
+    h ^= h >> 15;
+
+    return h;
+}
+
+
+/** Parses an HTML color ("#rrggbb" or "#rrggbbaa") into an OSG color. */
+osg::Vec4f
+osgEarth::htmlColorToVec4f( const std::string& html )
+{
+    std::string t = html;
+    std::transform( t.begin(), t.end(), t.begin(), ::tolower );
+    osg::Vec4ub c(0,0,0,255);
+    if ( t.length() >= 7 ) {
+        c.r() |= t[1]<='9' ? (t[1]-'0')<<4 : (10+(t[1]-'a'))<<4;
+        c.r() |= t[2]<='9' ? (t[2]-'0')    : (10+(t[2]-'a'));
+        c.g() |= t[3]<='9' ? (t[3]-'0')<<4 : (10+(t[3]-'a'))<<4;
+        c.g() |= t[4]<='9' ? (t[4]-'0')    : (10+(t[4]-'a'));
+        c.b() |= t[5]<='9' ? (t[5]-'0')<<4 : (10+(t[5]-'a'))<<4;
+        c.b() |= t[6]<='9' ? (t[6]-'0')    : (10+(t[6]-'a'));
+        if ( t.length() == 9 ) {
+            c.a() = 0;
+            c.a() |= t[7]<='9' ? (t[7]-'0')<<4 : (10+(t[7]-'a'))<<4;
+            c.a() |= t[8]<='9' ? (t[8]-'0')    : (10+(t[8]-'a'));
+        }
+    }
+    return osg::Vec4f( ((float)c.r())/255.0f, ((float)c.g())/255.0f, ((float)c.b())/255.0f, ((float)c.a())/255.0f );
+}
+
+/** Makes an HTML color ("#rrggbb" or "#rrggbbaa") from an OSG color. */
+std::string
+osgEarth::vec4fToHtmlColor( const osg::Vec4f& c )
+{
+    std::stringstream buf;
+    buf << "#";
+    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.r()*255.0f);
+    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.g()*255.0f);
+    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.b()*255.0f);
+    if ( c.a() < 1.0f )
+        buf << std::hex << std::setw(2) << std::setfill('0') << (int)(c.a()*255.0f);
+    std::string ssStr;
+    ssStr = buf.str();
+    return ssStr;
+}
+
+/** Parses a color string in the form "255 255 255 255" (r g b a [0..255]) into an OSG color. */
+osg::Vec4ub
+osgEarth::stringToColor(const std::string& str, osg::Vec4ub default_value)
+{
+    osg::Vec4ub color = default_value;
+    std::istringstream strin(str);
+    int r, g, b, a;
+    if (strin >> r && strin >> g && strin >> b && strin >> a)
+    {
+        color.r() = (unsigned char)r;
+        color.g() = (unsigned char)g;
+        color.b() = (unsigned char)b;
+        color.a() = (unsigned char)a;
+    }
+    return color;
+}
+
+/** Creates a string in the form "255 255 255 255" (r g b a [0..255]) from a color */
+std::string
+osgEarth::colorToString( const osg::Vec4ub& c )
+{
+    std::stringstream ss;
+    ss << (int)c.r() << " " << (int)c.g() << " " << (int)c.b() << " " << (int)c.a();
+    std::string ssStr;
+    ssStr = ss.str();
+    return ssStr;
+}
+
+/** Converts a string to a vec3f */
+osg::Vec3f
+osgEarth::stringToVec3f( const std::string& str, const osg::Vec3f& default_value )
+{
+    std::stringstream buf(str);
+    osg::Vec3f out = default_value;
+    buf >> out.x();
+    if ( !buf.eof() ) {
+        buf >> out.y() >> out.z();
+    }
+    else {
+        out.y() = out.x();
+        out.z() = out.x();
+    }
+    return out;
+}
+
+/** Converts a vec3f to a string */
+std::string
+osgEarth::vec3fToString( const osg::Vec3f& v )
+{
+    std::stringstream buf;
+    buf << std::setprecision(6)
+        << v.x() << " " << v.y() << " " << v.z()
+        << std::endl;
+    std::string result;
+    result = buf.str();
+    return result;
+}
+
+
+/** Replaces all the instances of "sub" with "other" in "s". */
+std::string&
+osgEarth::replaceIn( std::string& s, const std::string& sub, const std::string& other)
+{
+    if ( sub.empty() ) return s;
+    size_t b=0;
+    for( ; ; )
+    {
+        b = s.find( sub, b );
+        if ( b == s.npos ) break;
+        s.replace( b, sub.size(), other );
+        b += other.size();
+    }
+    return s;
+}
+
+std::string&
+osgEarth::ciReplaceIn( std::string& s, const std::string& pattern, const std::string& replacement )
+{
+    if ( pattern.empty() ) return s;
+    
+    std::string upperSource = s;
+    std::transform( upperSource.begin(), upperSource.end(), upperSource.begin(), (int(*)(int))std::toupper );
+
+    std::string upperPattern = pattern;
+    std::transform( upperPattern.begin(), upperPattern.end(), upperPattern.begin(), (int(*)(int))std::toupper );
+
+    for( size_t b = 0; ; )
+    {
+        b = upperSource.find( upperPattern, b );
+        if ( b == s.npos ) break;
+        s.replace( b, pattern.size(), replacement );
+        upperSource.replace( b, upperPattern.size(), replacement );
+        b += replacement.size();
+    }
+
+    return s;
+}
+
+/**
+* Trims whitespace from the ends of a string.
+* by Rodrigo C F Dias
+* http://www.codeproject.com/KB/stl/stdstringtrim.aspx
+*/
+std::string 
+osgEarth::trim( const std::string& in )
+{
+    std::string whitespace (" \t\f\v\n\r");
+    std::string str = in;
+    std::string::size_type pos = str.find_last_not_of( whitespace );
+    if(pos != std::string::npos) {
+        str.erase(pos + 1);
+        pos = str.find_first_not_of( whitespace );
+        if(pos != std::string::npos) str.erase(0, pos);
+    }
+    else str.erase(str.begin(), str.end());
+    return str;
+}
+
+
+std::string
+osgEarth::joinStrings( const StringVector& input, char delim )
+{
+    std::stringstream buf;
+    for( StringVector::const_iterator i = input.begin(); i != input.end(); ++i )
+    {
+        buf << *i;
+        if ( (i+1) != input.end() ) buf << delim;
+    }
+    std::string result;
+    result = buf.str();
+    return result;
+}
+
+/** Returns a lower-case version of the input string. */
+std::string
+osgEarth::toLower( const std::string& input )
+{
+    std::string output = input;
+    std::transform( output.begin(), output.end(), output.begin(), ::tolower );
+    return output;
+}
+
+namespace
+{
+    template<typename charT>
+    struct ci_equal {
+        ci_equal( const std::locale& loc ) : _loc(loc) { }
+        bool operator()(charT c1, charT c2) {
+            return std::toupper(c1,_loc) == std::toupper(c2,_loc);
+        }
+        const std::locale& _loc;
+    };
+}
+
+bool
+osgEarth::ciEquals(const std::string& lhs, const std::string& rhs, const std::locale& loc )
+{
+    if ( lhs.length() != rhs.length() )
+        return false;
+
+    for( unsigned i=0; i<lhs.length(); ++i )
+    {
+        if ( std::toupper(lhs[i], loc) != std::toupper(rhs[i], loc) )
+            return false;
+    }
+
+    return true;
+}
+
+bool
+osgEarth::startsWith( const std::string& ref, const std::string& pattern, bool caseSensitive, const std::locale& loc )
+{
+    if ( pattern.length() > ref.length() )
+        return false;
+
+    if ( caseSensitive )
+    {
+        for( unsigned i=0; i<pattern.length(); ++i )
+        {
+            if ( ref[i] != pattern[i] )
+                return false;
+        }
+    }
+    else
+    {
+        for( unsigned i=0; i<pattern.length(); ++i )
+        {
+            if ( std::toupper(ref[i], loc) != std::toupper(pattern[i],loc) )
+                return false;
+        }
+    }
+    return true;
+}
+
+bool
+osgEarth::endsWith( const std::string& ref, const std::string& pattern, bool caseSensitive, const std::locale& loc )
+{
+    if ( pattern.length() > ref.length() )
+        return false;
+
+    unsigned offset = ref.size()-pattern.length();
+    if ( caseSensitive )
+    {
+        for( unsigned i=0; i < pattern.length(); ++i )
+        {
+            if ( ref[i+offset] != pattern[i] )
+                return false;
+        }
+    }
+    else
+    {
+        for( unsigned i=0; i < pattern.length(); ++i )
+        {
+            if ( std::toupper(ref[i+offset], loc) != std::toupper(pattern[i],loc) )
+                return false;
+        }
+    }
+    return true;
+}
diff --git a/src/osgEarth/TMS b/src/osgEarth/TMS
deleted file mode 100644
index 2f583a3..0000000
--- a/src/osgEarth/TMS
+++ /dev/null
@@ -1,428 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-
-/**
- * These classes assist in dealing with the Tile Map Service specification
- * (http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification)
- */
-
-#ifndef OSGEARTH_TMS_H
-#define OSGEARTH_TMS_H 1
-
-#include <vector>
-#include <iostream>
-#include <osgEarth/Profile>
-#include <osgEarth/Common>
-
-#include <osg/Referenced>
-#include <osgDB/ReaderWriter>
-
-#include <osg/Version>
-#if OSG_MIN_VERSION_REQUIRED(2,9,5)
-#include <osgDB/Options>
-#endif
-
-namespace osgEarth
-{
-    class TileSource;
-
-    /**
-     * TMS tile format.  Specifies format information of a tile
-     */
-    class OSGEARTH_EXPORT TileFormat
-    {
-    public:
-        TileFormat();
-
-        /**
-        *Gets the width of a tile
-        */
-        unsigned int getWidth() const {return _width;}
-
-        /**
-        *Sets the width of a tile
-        */
-        void setWidth(unsigned int width) {_width = width;}
-
-        /**
-        *Gets the height of a tile
-        */
-        unsigned int getHeight() const {return _height;}
-
-        /**
-        *Sets the height of a tile
-        */
-        void setHeight(unsigned int height) {_height = height;}
-
-        /**
-        *Gets the mime type of a tile
-        */
-        const std::string& getMimeType() const {return _mimeType;}
-
-        /**
-        *Sets the mime type of a tile
-        */
-        void setMimeType(const std::string& mimeType) {_mimeType = mimeType;}
-
-        /**
-        *Gets the extension of a tile
-        */
-        const std::string& getExtension() const {return _extension;}
-
-        /**
-        *Sets the extension of a tile
-        */
-        void setExtension(const std::string& extension) {_extension = extension;}
-
-    protected:
-        unsigned int _width;
-        unsigned int _height;
-        std::string _mimeType;
-        std::string _extension;
-    };
-
-    /**
-    *TMS tile set.  A collection of tiled images at a given zoom level.
-    */
-    class OSGEARTH_EXPORT TileSet
-    {
-    public:
-        TileSet();
-
-        /**
-        *Gets the reference link for this TileSet.
-        */
-        const std::string& getHref() const {return _href;}
-
-        /**
-        *Sets the reference link for this TileSet.
-        */
-        void setHref( const std::string &href) {_href = href;}
-
-        /**
-        *Gets the units per pixel for this TileSet.
-        */
-        double getUnitsPerPixel() const {return _unitsPerPixel;}
-
-        /**
-        *Sets the units per pixel for this TileSet.
-        */
-        void setUnitsPerPixel(double unitsPerPixel) {_unitsPerPixel = unitsPerPixel;}
-
-        /**
-        *Gets the zoom level of this TileSet.
-        */
-        unsigned int getOrder() const {return _order;}
-
-        /**
-        *Sets the zoom level of this TileSet.
-        */
-        void setOrder( int order ) {_order = order;}
-
-    protected:
-        std::string _href;
-        double _unitsPerPixel;
-        unsigned int _order;
-    };
-
-    /**
-    *A TMS tile map
-    */
-    class OSGEARTH_EXPORT TileMap : public osg::Referenced
-    {
-    public:
-        TileMap();
-
-        /**
-        *Gets the tile map service for this TileMap
-        */
-        const std::string& getTileMapService() const {return _tileMapService;}
-
-        /**
-        *Sets the tile map service for this TileMap
-        */
-        void setTileMapService(const std::string& tileMapService) {_tileMapService = tileMapService;}
-
-        /**
-        *Gets the version of this TileMap
-        */
-        const std::string& getVersion() const {return _version;}
-
-        /**
-        *Sets the version of this TileMap
-        */
-        void setVersion(const std::string& version) {_version = version;}
-
-        /**
-        *Gets the title of this TileMap
-        */
-        const std::string& getTitle() const {return _title;}
-
-        /**
-        *Sets the title of this TileMap
-        */
-        void setTitle(const std::string& title) {_title = title;}
-
-        /**
-        *Gets the abstract of this TileMap
-        */
-        const std::string& getAbstract() const {return _abstract;}
-
-        /**
-        *Sets the abstract of this TileMap
-        */
-        void setAbstract(const std::string& value) {_abstract = value;}
-
-        /**
-        *Gets the spatial reference of this TileMap
-        */
-        const std::string& getSRS() const {return _srs;}
-
-        /**
-        *Sets the spatial reference of this TileMap
-        */
-        void setSRS(const std::string& srs) {_srs = srs;}
-
-        /**
-        *Gets the vertical spatial reference of this TileMap
-        */
-        const std::string& getVerticalSRS() const { return _vsrs; }
-
-        /**
-        *Sets the vertical spatial reference of this TileMap
-        */
-        void setVerticalSRS(const std::string& vsrs) { _vsrs = vsrs; }
-
-        /**
-        *Gets the filename that this TileMap was loaded from
-        */
-        const std::string& getFilename() const {return _filename;}
-
-        /**
-        *Sets the filename that this TileMap was loaded from
-        */
-        void setFilename(const std::string& filename) {_filename = filename;}
-
-        /**
-        *Gets the minimum zoom level that this TileMap has valid data for
-        */
-        unsigned int getMinLevel() const {return _minLevel;}
-
-        /**
-        *Gets the maximum level that this TileMap has valid data for
-        */
-        unsigned int getMaxLevel() const {return _maxLevel;}
-
-        /**
-        *Computes the minimum and maximum levels of valid data for this TileMap
-        */
-        void computeMinMaxLevel();
-
-        /**
-        *Computes the number of tiles at level 0 from the existing TileSets
-        */
-        void computeNumTiles();
-
-        /**
-        *Gets the x coordinate of the origin of this TileMap
-        */
-        double getOriginX() const {return _originX;}
-
-        /**
-        *Sets the x coordinate of the origin of this TileMap
-        */
-        void setOriginX(double x) {_originX = x;}
-
-        /**
-        *Gets the y coordinate of the origin of this TileMap
-        */
-        double getOriginY() const {return _originY;}
-
-        /**
-        *Sets the y coordinate of the origin of this TileMap
-        */
-        void setOriginY(double y) {_originY = y;}
-
-        /**
-        *Sets the origin of this TileMap
-        *
-        *@param x
-        *       The origin's x coordinate
-        *@param y
-        *       The origin's y coordinate
-        */
-        void setOrigin(double x, double y);
-
-        /**
-        *Gets the extents of this TileMap
-        *@param minX
-        *       The minimum x coordinate of the extents
-        *@param minY
-        *       The minimum y coordinate of the extents
-        *@param maxX
-        *       The maximum x coordinate of the extents
-        *@param maxY
-        *       The maximum y coordinate of the extents
-        */
-        void getExtents( double &minX, double &minY, double &maxX, double &maxY) const;
-
-        /**
-        *Sets the extents of this TileMap
-        *@param minX
-        *       The minimum x coordinate of the extents
-        *@param minY
-        *       The minimum y coordinate of the extents
-        *@param maxX
-        *       The maximum x coordinate of the extents
-        *@param maxY
-        *       The maximum y coordinate of the extents
-        */
-        void setExtents( double minX, double minY, double maxX, double maxY);
-
-        /**
-        *Gets the number of tiles wide at lod 0
-        */
-        unsigned int getNumTilesWide() const { return _numTilesWide; }
-
-        /**
-        *Sets the number of tiles wide at lod 0
-        */
-        void setNumTilesWide(unsigned int w) { _numTilesWide = w; }
-
-        /**
-        *Gets the number of tiles high at lod 0
-        */
-        unsigned int getNumTilesHigh() const { return _numTilesHigh; }
-
-        /**
-        *Sets the number of tiles high at lod 0
-        */
-        void setNumTilesHigh(unsigned int h) {_numTilesHigh = h;}
-
-        osgEarth::Profile::ProfileType getProfileType() const {return _profile_type;}
-        void setProfileType( osgEarth::Profile::ProfileType type ) {_profile_type = type;}
-
-        const Profile* createProfile() const;
-
-        /** Gets the TileFormat for this TileMap */
-        TileFormat& getFormat() {return _format;}
-        
-        /** Gets the TileFormat for this TileMap */
-        const TileFormat& getFormat() const {return _format;}
-
-
-        /** A list of TileSets */
-        typedef std::vector<TileSet> TileSetList;
-
-        /** Gets the TileSets for this TileMap */
-        TileSetList& getTileSets() {return _tileSets;}
-
-        /** Gets the TileSets for this TileMap */
-        const TileSetList& getTileSets() const {return _tileSets;}
-
-        DataExtentList& getDataExtents() { return _dataExtents;}
-        const DataExtentList& getDataExtents() const { return _dataExtents;}
-
-       
-        /**
-        *Gets a URL string that can be used to retrieve the image for the given TileKey
-        *@param tileKey
-        *       The TileKey to get the URL for.
-        *@param invertY
-        *       If false, treat tile 0,0 as the lower left tile in the the map.  If true, treat 0,0 as the top left tile in the map.
-        *@returns
-        *       The URL if the data intersects the TileKey.
-        */
-        std::string getURL(const osgEarth::TileKey& tileKey, bool invertY);
-
-        /**
-        *Determines whether or not the given TileKey intersects the TileMap
-        */
-        bool intersectsKey(const osgEarth::TileKey& tileKey);
-
-        /**
-        *Automatically generates a number of TileSets
-        */
-        void generateTileSets(unsigned int numLevels = 20);
-
-        /**
-        * Creates a TileMap corresponding to one of osgEarth's built-in profile types
-        */
-        static TileMap* create(
-            const std::string& url,
-            const Profile* profile,
-            //osgEarth::Profile::ProfileType type,
-            const std::string& format,
-            int tile_width,
-            int tile_height );
-
-        /**
-         * Creates a TileMap based on the parameters of a TileSource
-         */
-        static TileMap* create(
-            const TileSource* tileSource,
-            const Profile*    profile );
-
-    protected:
-        std::string _tileMapService;
-        std::string _version;
-        std::string _title;
-        std::string _abstract;
-        std::string _srs;
-        std::string _vsrs;
-
-
-        double _originX, _originY;
-
-        double _minX, _minY, _maxX, _maxY;
-
-        TileSetList _tileSets;
-
-        TileFormat _format;
-
-        std::string _filename;
-
-        unsigned int _minLevel;
-        unsigned int _maxLevel;
-
-        unsigned int _numTilesWide;
-        unsigned int _numTilesHigh;
-
-        osgEarth::Profile::ProfileType _profile_type;        
-
-        DataExtentList _dataExtents;
-    };
-
-    class OSGEARTH_EXPORT TileMapReaderWriter
-    {
-    public:
-        static TileMap* read( const std::string &location, const osgDB::ReaderWriter::Options* options );
-        static TileMap* read( std::istream &in );
-
-        static void write(const TileMap* tileMap, const std::string& location);
-        static void write(const TileMap* tileMap, std::ostream& output);
-
-    private:
-        TileMapReaderWriter();
-        TileMapReaderWriter(const TileMapReaderWriter &tmr);
-    };
-}
-
-#endif //OSGEARTH_TMS_H
diff --git a/src/osgEarth/TMS.cpp b/src/osgEarth/TMS.cpp
deleted file mode 100644
index 9e84e3f..0000000
--- a/src/osgEarth/TMS.cpp
+++ /dev/null
@@ -1,648 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-
-#include <osg/Notify>
-#include <osgDB/FileUtils>
-#include <osgDB/FileNameUtils>
-#include <osgEarth/Common>
-#include <osgEarth/GeoData>
-#include <osgEarth/HTTPClient>
-#include <osgEarth/XmlUtils>
-#include <osgEarth/TMS>
-#include <osgEarth/TileKey>
-#include <osgEarth/TileSource>
-#include <osgEarth/Registry>
-#include <osgEarth/StringUtils>
-
-#include <limits.h>
-#include <iomanip>
-
-using namespace osgEarth;
-
-#define LC "[TMS] "
-
-static std::string toString(double value, int precision = 25)
-{
-    std::stringstream out;
-    out << std::fixed << std::setprecision(precision) << value;
-	std::string outStr;
-	outStr = out.str();
-    return outStr;
-}
-
-TileFormat::TileFormat():
-_width(0),
-_height(0)
-{
-}
-
-TileSet::TileSet():
-_unitsPerPixel(0.0),
-_order(0)
-{
-}
-
-TileMap::TileMap():
-_originX(0),
-_originY(0),
-_minX(0.0),
-_minY(0.0),
-_maxX(0.0),
-_maxY(0.0),
-_minLevel(0),
-_maxLevel(0),
-_numTilesHigh(-1),
-_numTilesWide(-1)
-{
-}
-
-void TileMap::setOrigin(double x, double y)
-{
-    _originX = x;
-    _originY = y;
-}
-
-void TileMap::getExtents( double &minX, double &minY, double &maxX, double &maxY) const
-{
-    minX = _minX;
-    minY = _minY;
-    maxX = _maxX;
-    maxY = _maxY;
-}
-
-void TileMap::setExtents( double minX, double minY, double maxX, double maxY)
-{
-    _minX = minX;
-    _minY = minY;
-    _maxX = maxX;
-    _maxY = maxY;
-}
-
-
-
-
-#define ELEM_TILEMAP "tilemap"
-#define ELEM_TITLE "title"
-#define ELEM_ABSTRACT "abstract"
-#define ELEM_SRS "srs"
-#define ELEM_VERTICAL_SRS "vsrs"
-#define ELEM_BOUNDINGBOX "boundingbox"
-#define ELEM_ORIGIN "origin"
-#define ELEM_TILE_FORMAT "tileformat"
-#define ELEM_TILESETS "tilesets"
-#define ELEM_TILESET "tileset"
-#define ELEM_DATA_EXTENTS "dataextents"
-#define ELEM_DATA_EXTENT "dataextent"
-
-#define ATTR_VERSION "version"
-#define ATTR_TILEMAPSERVICE "tilemapservice"
-
-#define ATTR_MINX "minx"
-#define ATTR_MINY "miny"
-#define ATTR_MAXX "maxx"
-#define ATTR_MAXY "maxy"
-#define ATTR_X "x"
-#define ATTR_Y "y"
-#define ATTR_MIN_LEVEL "minlevel"
-#define ATTR_MAX_LEVEL "maxlevel"
-
-#define ATTR_WIDTH "width"
-#define ATTR_HEIGHT "height"
-#define ATTR_MIME_TYPE "mime-type"
-#define ATTR_EXTENSION "extension"
-
-#define ATTR_PROFILE "profile"
-
-#define ATTR_HREF "href"
-#define ATTR_ORDER "order"
-#define ATTR_UNITSPERPIXEL "units-per-pixel"
-
-bool intersects(const double &minXa, const double &minYa, const double &maxXa, const double &maxYa,
-                const double &minXb, const double &minYb, const double &maxXb, const double &maxYb)
-{
-    return  osg::maximum(minXa, minXb) <= osg::minimum(maxXa,maxXb) &&
-            osg::maximum(minYa, minYb) <= osg::minimum(maxYa, maxYb);
-}
-
-
-
-void TileMap::computeMinMaxLevel()
-{
-    _minLevel = INT_MAX;
-    _maxLevel = 0;
-    for (TileSetList::iterator itr = _tileSets.begin(); itr != _tileSets.end(); ++itr)
-    { 
-        if (itr->getOrder() < _minLevel) _minLevel = itr->getOrder();
-        if (itr->getOrder() > _maxLevel) _maxLevel = itr->getOrder();
-    }
-}
-
-void TileMap::computeNumTiles()
-{
-    _numTilesWide = -1;
-    _numTilesHigh = -1;
-
-    if (_tileSets.size() > 0)
-    {
-        unsigned int level = _tileSets[0].getOrder();
-        double res = _tileSets[0].getUnitsPerPixel();
-
-        _numTilesWide = (int)((_maxX - _minX) / (res * _format.getWidth()));
-        _numTilesHigh = (int)((_maxY - _minY) / (res * _format.getWidth()));
-
-        //In case the first level specified isn't level 0, compute the number of tiles at level 0
-        for (unsigned int i = 0; i < level; i++)
-        {
-            _numTilesWide /= 2;
-            _numTilesHigh /= 2;
-        }
-
-        OE_DEBUG << LC << "TMS has " << _numTilesWide << ", " << _numTilesHigh << " tiles at level 0 " <<  std::endl;
-    }
-}
-
-const Profile*
-TileMap::createProfile() const
-{
-    osg::ref_ptr< SpatialReference > spatialReference =  osgEarth::SpatialReference::create(_srs);
-    
-    if (spatialReference->isMercator())
-    {
-        //HACK:  Some TMS sources, most notably TileCache, use a global mercator extent that is very slightly different than
-        //       the automatically computed mercator bounds which can cause rendering issues due to the some texture coordinates
-        //       crossing the dateline.  If the incoming bounds are nearly the same as our definion of global mercator, just use our definition.
-        double eps = 0.01;
-        osg::ref_ptr< const Profile > merc = osgEarth::Registry::instance()->getGlobalMercatorProfile();
-        if (_numTilesWide == 1 && _numTilesHigh == 1 &&
-            osg::equivalent(merc->getExtent().xMin(), _minX, eps) && 
-            osg::equivalent(merc->getExtent().yMin(), _minY, eps) &&
-            osg::equivalent(merc->getExtent().xMax(), _maxX, eps) &&
-            osg::equivalent(merc->getExtent().yMax(), _maxY, eps))
-        {            
-            return osgEarth::Registry::instance()->getGlobalMercatorProfile();
-        }
-    }
-
-
-    if (_profile_type == Profile::TYPE_GEODETIC) return osgEarth::Registry::instance()->getGlobalGeodeticProfile();
-    if (_profile_type == Profile::TYPE_MERCATOR) return osgEarth::Registry::instance()->getGlobalMercatorProfile();
-    
-
-    return Profile::create(
-        _srs,
-        _minX, _minY, _maxX, _maxY,
-        _vsrs,
-        osg::maximum(_numTilesWide, (unsigned int)1),
-        osg::maximum(_numTilesHigh, (unsigned int)1) );
-}
-
-
-std::string
-TileMap::getURL(const osgEarth::TileKey& tilekey, bool invertY)
-{
-    if (!intersectsKey(tilekey))
-    {
-        //OE_NOTICE << LC << "No key intersection for tile key " << tilekey.str() << std::endl;
-        return "";
-    }
-
-    unsigned int zoom = tilekey.getLevelOfDetail();
-
-    unsigned int x, y;
-    tilekey.getTileXY(x, y);
-
-    //Some TMS like services swap the Y coordinate so 0,0 is the upper left rather than the lower left.  The normal TMS
-    //specification has 0,0 at the bottom left, so inverting Y will make 0,0 in the upper left.
-    //http://code.google.com/apis/maps/documentation/overlays.html#Google_Maps_Coordinates
-    if (!invertY)
-    {
-        unsigned int numRows, numCols;
-        tilekey.getProfile()->getNumTiles(tilekey.getLevelOfDetail(), numCols, numRows);
-        y  = numRows - y - 1;
-    }
-
-    //OE_NOTICE << LC << "KEY: " << tilekey.str() << " level " << zoom << " ( " << x << ", " << y << ")" << std::endl;
-
-    //Select the correct TileSet
-    if ( _tileSets.size() > 0 )
-    {
-        for (TileSetList::iterator itr = _tileSets.begin(); itr != _tileSets.end(); ++itr)
-        { 
-            if (itr->getOrder() == zoom)
-            {
-                std::stringstream ss;
-                std::string path = osgDB::getFilePath(_filename);
-                ss << path << "/" << zoom << "/" << x << "/" << y << "." << _format.getExtension();
-                //OE_NOTICE << LC << "Returning URL " << ss.str() << std::endl;
-                std::string ssStr;
-				ssStr = ss.str();
-				return ssStr;
-            }
-        }
-    }
-    else // Just go with it. No way of knowing the max level.
-    {
-        std::stringstream ss;
-        std::string path = osgDB::getFilePath(_filename);
-        ss << path << "/" << zoom << "/" << x << "/" << y << "." << _format.getExtension();
-        std::string ssStr;
-		ssStr = ss.str();
-		return ssStr;        
-    }
-
-    return "";
-}
-
-bool
-TileMap::intersectsKey(const TileKey& tilekey)
-{
-    double keyMinX, keyMinY, keyMaxX, keyMaxY;
-
-    //Check to see if the key overlaps the bounding box using lat/lon.  This is necessary to check even in 
-    //Mercator situations in case the BoundingBox is described using lat/lon coordinates such as those produced by GDAL2Tiles
-    //This should be considered a bug on the TMS production side, but we can work around it for now...
-    tilekey.getExtent().getBounds(keyMinX, keyMinY, keyMaxX, keyMaxY);
-
-    bool inter = intersects(_minX, _minY, _maxX, _maxY, keyMinX, keyMinY, keyMaxX, keyMaxY);
-
-    if (!inter && tilekey.getProfile()->getSRS()->isMercator())
-    {
-        tilekey.getProfile()->getSRS()->transform2D(keyMinX, keyMinY, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMinX, keyMinY);
-        tilekey.getProfile()->getSRS()->transform2D(keyMaxX, keyMaxY, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMaxX, keyMaxY);
-        inter = intersects(_minX, _minY, _maxX, _maxY, keyMinX, keyMinY, keyMaxX, keyMaxY);
-    }
-
-    return inter;
-}
-
-void
-TileMap::generateTileSets(unsigned int numLevels)
-{
-    osg::ref_ptr<const Profile> profile = createProfile();
-
-    _tileSets.clear();
-
-    double width = (_maxX - _minX);
-//    double height = (_maxY - _minY);
-
-    for (unsigned int i = 0; i < numLevels; ++i)
-    {
-        unsigned int numCols, numRows;
-        profile->getNumTiles(i, numCols, numRows);
-        double res = (width / (double)numCols) / (double)_format.getWidth();
-
-        TileSet ts;
-        ts.setUnitsPerPixel(res);
-        ts.setOrder(i);
-        _tileSets.push_back(ts);
-    }
-}
-
-std::string getSRSString(const osgEarth::SpatialReference* srs)
-{
-    if (srs->isMercator())
-    {
-        return "EPSG:900913";
-    }
-    else if (srs->isGeographic())
-    {
-        return "EPSG:4326";
-    }
-    else
-    {
-        return srs->getInitString(); //srs();
-    }	
-}
-
-
-TileMap*
-TileMap::create(const std::string& url,
-                const Profile* profile,
-                const std::string& format,
-                int tile_width,
-                int tile_height)
-{
-    //Profile profile(type);
-
-    const GeoExtent& ex = profile->getExtent();
-
-    TileMap* tileMap = new TileMap();
-    tileMap->setProfileType(profile->getProfileType()); //type);
-    tileMap->setExtents(ex.xMin(), ex.yMin(), ex.xMax(), ex.yMax());
-    tileMap->setOrigin(ex.xMin(), ex.yMin());
-    tileMap->_filename = url;
-    tileMap->_srs = getSRSString(profile->getSRS());
-    tileMap->_vsrs = profile->getVerticalSRS() ? profile->getVerticalSRS()->getInitString() : "";
-    tileMap->_format.setWidth( tile_width );
-    tileMap->_format.setHeight( tile_height );
-    tileMap->_format.setExtension( format );
-	profile->getNumTiles( 0, tileMap->_numTilesWide, tileMap->_numTilesHigh );
-
-	tileMap->generateTileSets();
-	tileMap->computeMinMaxLevel();
-        
-    return tileMap;
-}
-
-TileMap* TileMap::create(const TileSource* tileSource, const Profile* profile)
-{
-    TileMap* tileMap = new TileMap();
-
-    tileMap->setTitle( tileSource->getName() );
-    tileMap->setProfileType( profile->getProfileType() );
-
-    const GeoExtent& ex = profile->getExtent();
-    
-    tileMap->_srs = getSRSString(profile->getSRS()); //srs();
-    tileMap->_vsrs = profile->getVerticalSRS() ? profile->getVerticalSRS()->getInitString() : 0L;
-    tileMap->_originX = ex.xMin();
-    tileMap->_originY = ex.yMin();
-    tileMap->_minX = ex.xMin();
-    tileMap->_minY = ex.yMin();
-    tileMap->_maxX = ex.xMax();
-    tileMap->_maxY = ex.yMax();
-    profile->getNumTiles( 0, tileMap->_numTilesWide, tileMap->_numTilesHigh );
-
-    tileMap->_format.setWidth( tileSource->getPixelsPerTile() );
-    tileMap->_format.setHeight( tileSource->getPixelsPerTile() );
-    tileMap->_format.setExtension( tileSource->getExtension() );
-
-    tileMap->generateTileSets();
-
-    return tileMap;
-}
-
-
-
-//----------------------------------------------------------------------------
-
-
-TileMap* 
-TileMapReaderWriter::read( const std::string &location, const osgDB::ReaderWriter::Options* options )
-{
-    TileMap *tileMap = NULL;
-    if ( osgDB::containsServerAddress( location ) )
-    {
-        HTTPResponse response = HTTPClient::get( location, options );
-        if (response.isOK() && response.getNumParts() > 0 )
-        {
-            tileMap = read( response.getPartStream( 0 ) );
-        }
-    }
-    else
-    {
-        if ((osgDB::fileExists(location)) && (osgDB::fileType(location) == osgDB::REGULAR_FILE))
-        {
-            std::ifstream in( location.c_str() );
-            tileMap = read( in );
-        }
-    }
-    if (tileMap)
-    {
-        tileMap->setFilename( location );
-    }
-    return tileMap;
-}
-
-TileMap*
-TileMapReaderWriter::read(std::istream &in)
-{
-    osg::ref_ptr<TileMap> tileMap = new TileMap;
-
-    osg::ref_ptr<XmlDocument> doc = XmlDocument::load( in );
-    if (!doc.valid())
-    {
-        OE_DEBUG << LC << "Failed to load TileMap " << std::endl;
-        return 0;
-    }
-   
-    //Get the root TileMap element
-    osg::ref_ptr<XmlElement> e_tile_map = doc->getSubElement( ELEM_TILEMAP );
-    if (!e_tile_map.valid())
-    {
-        OE_WARN << LC << "Could not find root TileMap element " << std::endl;
-        return 0;
-    }
-
-    tileMap->setVersion( e_tile_map->getAttr( ATTR_VERSION ) );
-    tileMap->setTileMapService( e_tile_map->getAttr( ATTR_TILEMAPSERVICE ) );
-
-    tileMap->setTitle( e_tile_map->getSubElementText(ELEM_TITLE) );
-    tileMap->setAbstract( e_tile_map->getSubElementText(ELEM_ABSTRACT) );
-    tileMap->setSRS( e_tile_map->getSubElementText(ELEM_SRS) );
-    tileMap->setVerticalSRS( e_tile_map->getSubElementText(ELEM_VERTICAL_SRS) );
-
-    //Read the bounding box
-    osg::ref_ptr<XmlElement> e_bounding_box = e_tile_map->getSubElement(ELEM_BOUNDINGBOX);
-    if (e_bounding_box.valid())
-    {
-        double minX = as<double>(e_bounding_box->getAttr( ATTR_MINX ), 0.0);
-        double minY = as<double>(e_bounding_box->getAttr( ATTR_MINY ), 0.0);
-        double maxX = as<double>(e_bounding_box->getAttr( ATTR_MAXX ), 0.0);
-        double maxY = as<double>(e_bounding_box->getAttr( ATTR_MAXY ), 0.0);
-        tileMap->setExtents( minX, minY, maxX, maxY);
-    }
-
-    //Read the origin
-    osg::ref_ptr<XmlElement> e_origin = e_tile_map->getSubElement(ELEM_ORIGIN);
-    if (e_origin.valid())
-    {
-        tileMap->setOriginX( as<double>(e_origin->getAttr( ATTR_X ), 0.0) );
-        tileMap->setOriginY( as<double>(e_origin->getAttr( ATTR_Y ), 0.0) );
-    }
-
-    //Read the tile format
-    osg::ref_ptr<XmlElement> e_tile_format = e_tile_map->getSubElement(ELEM_TILE_FORMAT);
-    if (e_tile_format.valid())
-    {
-        tileMap->getFormat().setExtension( e_tile_format->getAttr( ATTR_EXTENSION ) );
-        tileMap->getFormat().setMimeType( e_tile_format->getAttr( ATTR_MIME_TYPE) );
-        tileMap->getFormat().setWidth( as<unsigned int>(e_tile_format->getAttr( ATTR_WIDTH ), 0) );
-        tileMap->getFormat().setHeight( as<unsigned int>(e_tile_format->getAttr( ATTR_HEIGHT ), 0) );
-    }
-
-    //Read the tilesets
-    osg::ref_ptr<XmlElement> e_tile_sets = e_tile_map->getSubElement(ELEM_TILESETS);
-    if (e_tile_sets.valid())
-    {
-        //Read the profile
-        std::string profile = e_tile_sets->getAttr( ATTR_PROFILE );
-        if (profile == "global-geodetic") tileMap->setProfileType( Profile::TYPE_GEODETIC );
-        else if (profile == "global-mercator") tileMap->setProfileType( Profile::TYPE_MERCATOR );
-        else if (profile == "local") tileMap->setProfileType( Profile::TYPE_LOCAL );
-        else tileMap->setProfileType( Profile::TYPE_UNKNOWN );
-
-        //Read each TileSet
-        XmlNodeList tile_sets = e_tile_sets->getSubElements( ELEM_TILESET );
-        for( XmlNodeList::const_iterator i = tile_sets.begin(); i != tile_sets.end(); i++ )
-        {
-            osg::ref_ptr<XmlElement> e_tile_set = static_cast<XmlElement*>( i->get() );
-            TileSet tileset;
-            tileset.setHref( e_tile_set->getAttr( ATTR_HREF ) );
-            tileset.setOrder( as<unsigned int>(e_tile_set->getAttr( ATTR_ORDER ), -1) );
-            tileset.setUnitsPerPixel( as<double>(e_tile_set->getAttr( ATTR_UNITSPERPIXEL ), 0.0 ) );
-            tileMap->getTileSets().push_back(tileset);
-        }
-    }
-
-    //Try to compute the profile based on the SRS if there was no PROFILE tag given
-    if (tileMap->getProfileType() == Profile::TYPE_UNKNOWN && !tileMap->getSRS().empty())
-    {
-        tileMap->setProfileType( Profile::getProfileTypeFromSRS(tileMap->getSRS()) );
-    }
-
-    tileMap->computeMinMaxLevel();
-    tileMap->computeNumTiles();
-
-    //Read the data areas
-    osg::ref_ptr<XmlElement> e_data_extents = e_tile_map->getSubElement(ELEM_DATA_EXTENTS);
-    if (e_data_extents.valid())
-    {
-        osg::ref_ptr< const osgEarth::Profile > profile = tileMap->createProfile();
-        OE_DEBUG << LC << "Found DataExtents " << std::endl;
-        XmlNodeList data_extents = e_data_extents->getSubElements( ELEM_DATA_EXTENT );
-        for( XmlNodeList::const_iterator i = data_extents.begin(); i != data_extents.end(); i++ )
-        {
-            osg::ref_ptr<XmlElement> e_data_extent = static_cast<XmlElement*>( i->get() );
-            double minX = as<double>(e_data_extent->getAttr( ATTR_MINX ), 0.0);
-            double minY = as<double>(e_data_extent->getAttr( ATTR_MINY ), 0.0);
-            double maxX = as<double>(e_data_extent->getAttr( ATTR_MAXX ), 0.0);
-            double maxY = as<double>(e_data_extent->getAttr( ATTR_MAXY ), 0.0);
-            //unsigned int minLevel = as<unsigned int>(e_data_extent->getAttr( ATTR_MIN_LEVEL ), 0);
-            unsigned int maxLevel = as<unsigned int>(e_data_extent->getAttr( ATTR_MAX_LEVEL ), 0);            
-
-            //OE_DEBUG << LC << "Read area " << minX << ", " << minY << ", " << maxX << ", " << maxY << ", minlevel=" << minLevel << " maxlevel=" << maxLevel << std::endl;
-            tileMap->getDataExtents().push_back( DataExtent(GeoExtent(profile->getSRS(), minX, minY, maxX, maxY), 0, maxLevel));
-        }
-    }
-
-
-    return tileMap.release();
-}
-
-static XmlDocument*
-tileMapToXmlDocument(const TileMap* tileMap)
-{
-    //Create the root XML document
-    osg::ref_ptr<XmlDocument> doc = new XmlDocument();
-    doc->setName( ELEM_TILEMAP );
-    
-    //Create the root node
-    //osg::ref_ptr<XmlElement> e_tile_map = new XmlElement( ELEM_TILEMAP );
-    //doc->getChildren().push_back( e_tile_map.get() );
-
-    doc->getAttrs()[ ATTR_VERSION ] = tileMap->getVersion();
-    doc->getAttrs()[ ATTR_TILEMAPSERVICE ] = tileMap->getTileMapService();
-  
-    doc->addSubElement( ELEM_TITLE, tileMap->getTitle() );
-    doc->addSubElement( ELEM_ABSTRACT, tileMap->getAbstract() );
-    doc->addSubElement( ELEM_SRS, tileMap->getSRS() );
-    doc->addSubElement( ELEM_VERTICAL_SRS, tileMap->getVerticalSRS() );
-
-    osg::ref_ptr<XmlElement> e_bounding_box = new XmlElement( ELEM_BOUNDINGBOX );
-    double minX, minY, maxX, maxY;
-    tileMap->getExtents( minX, minY, maxX, maxY );
-    e_bounding_box->getAttrs()[ATTR_MINX] = toString(minX);
-    e_bounding_box->getAttrs()[ATTR_MINY] = toString(minY);
-    e_bounding_box->getAttrs()[ATTR_MAXX] = toString(maxX);
-    e_bounding_box->getAttrs()[ATTR_MAXY] = toString(maxY);
-    doc->getChildren().push_back(e_bounding_box.get() );
-
-    osg::ref_ptr<XmlElement> e_origin = new XmlElement( ELEM_ORIGIN );
-    e_origin->getAttrs()[ATTR_X] = toString(tileMap->getOriginX());
-    e_origin->getAttrs()[ATTR_Y] = toString(tileMap->getOriginY());
-    doc->getChildren().push_back(e_origin.get());
-
-    osg::ref_ptr<XmlElement> e_tile_format = new XmlElement( ELEM_TILE_FORMAT );
-    e_tile_format->getAttrs()[ ATTR_EXTENSION ] = tileMap->getFormat().getExtension();
-    e_tile_format->getAttrs()[ ATTR_MIME_TYPE ] = tileMap->getFormat().getMimeType();
-    e_tile_format->getAttrs()[ ATTR_WIDTH ] = toString<unsigned int>(tileMap->getFormat().getWidth());
-    e_tile_format->getAttrs()[ ATTR_HEIGHT ] = toString<unsigned int>(tileMap->getFormat().getHeight());
-    doc->getChildren().push_back(e_tile_format.get());
-
-    osg::ref_ptr< const osgEarth::Profile > profile = tileMap->createProfile();
-
-    osg::ref_ptr<XmlElement> e_tile_sets = new XmlElement ( ELEM_TILESETS );
-    std::string profileString = "none";
-    if (profile->isEquivalentTo(osgEarth::Registry::instance()->getGlobalGeodeticProfile()))
-    {
-        profileString = "global-geodetic";
-    }
-    else if (profile->isEquivalentTo(osgEarth::Registry::instance()->getGlobalMercatorProfile()))
-    {
-        profileString = "global-mercator";
-    }
-    else
-    {
-        profileString = "local";
-    }
-    e_tile_sets->getAttrs()[ ATTR_PROFILE ] = profileString;
-
-
-    for (TileMap::TileSetList::const_iterator itr = tileMap->getTileSets().begin(); itr != tileMap->getTileSets().end(); ++itr)
-    {
-        osg::ref_ptr<XmlElement> e_tile_set = new XmlElement( ELEM_TILESET );
-        e_tile_set->getAttrs()[ATTR_HREF] = itr->getHref();
-        e_tile_set->getAttrs()[ATTR_ORDER] = toString<unsigned int>(itr->getOrder());
-        e_tile_set->getAttrs()[ATTR_UNITSPERPIXEL] = toString(itr->getUnitsPerPixel());
-        e_tile_sets->getChildren().push_back( e_tile_set.get() );
-    }
-    doc->getChildren().push_back(e_tile_sets.get());
-
-    //Write out the data areas
-    if (tileMap->getDataExtents().size() > 0)
-    {
-        osg::ref_ptr<XmlElement> e_data_extents = new XmlElement( ELEM_DATA_EXTENTS );
-        for (DataExtentList::const_iterator itr = tileMap->getDataExtents().begin(); itr != tileMap->getDataExtents().end(); ++itr)
-        {
-            osg::ref_ptr<XmlElement> e_data_extent = new XmlElement( ELEM_DATA_EXTENT );
-            e_data_extent->getAttrs()[ATTR_MINX] = toString(itr->xMin());
-            e_data_extent->getAttrs()[ATTR_MINY] = toString(itr->yMin());
-            e_data_extent->getAttrs()[ATTR_MAXX] = toString(itr->xMax());
-            e_data_extent->getAttrs()[ATTR_MAXY] = toString(itr->yMax());
-            e_data_extent->getAttrs()[ATTR_MIN_LEVEL] = toString<unsigned int>(itr->getMinLevel());
-            e_data_extent->getAttrs()[ATTR_MAX_LEVEL] = toString<unsigned int>(itr->getMaxLevel());
-            e_data_extents->getChildren().push_back( e_data_extent );
-        }
-        doc->getChildren().push_back( e_data_extents.get() );
-    }
-    return doc.release();
-}
-
-void
-TileMapReaderWriter::write(const TileMap* tileMap, const std::string &location)
-{
-    std::string path = osgDB::getFilePath(location);
-    if (!osgDB::fileExists(path) && !osgDB::makeDirectory(path))
-    {
-        OE_WARN << LC << "Couldn't create path " << std::endl;
-    }
-    std::ofstream out(location.c_str());
-    write(tileMap, out);
-}
-
-void
-TileMapReaderWriter::write(const TileMap* tileMap, std::ostream &output)
-{
-    osg::ref_ptr<XmlDocument> doc = tileMapToXmlDocument(tileMap);    
-    doc->store(output);
-}
-
-
diff --git a/src/osgEarth/TaskService b/src/osgEarth/TaskService
index 2d3de4d..ad07296 100644
--- a/src/osgEarth/TaskService
+++ b/src/osgEarth/TaskService
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,7 +20,7 @@
 #define OSGEARTH_TASK_SERVICE 1
 
 #include <osgEarth/Common>
-#include <osgEarth/HTTPClient>
+#include <osgEarth/Progress>
 #include <osgEarth/ThreadingUtils>
 #include <osg/Referenced>
 #include <osg/Timer>
@@ -43,6 +43,9 @@ namespace osgEarth
     public:
         TaskRequest( float priority =0.0f );
 
+        /** dtor */
+        virtual ~TaskRequest() { }
+
         // the actual task code
         virtual void operator()( ProgressCallback* progress ) =0;
 
diff --git a/src/osgEarth/TaskService.cpp b/src/osgEarth/TaskService.cpp
index 2508cb6..2816b7f 100644
--- a/src/osgEarth/TaskService.cpp
+++ b/src/osgEarth/TaskService.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,7 @@
  */
 #include <osgEarth/TaskService>
 #include <osg/Notify>
+#include <osg/Math>
 
 using namespace osgEarth;
 using namespace OpenThreads;
@@ -242,7 +243,8 @@ TaskThread::cancel()
 TaskService::TaskService( const std::string& name, int numThreads ):
 osg::Referenced( true ),
 _lastRemoveFinishedThreadsStamp(0),
-_name(name)
+_name(name),
+_numThreads( 0 )
 {
     _queue = new TaskRequestQueue();
     setNumThreads( numThreads );
diff --git a/src/osgEarth/Terrain b/src/osgEarth/Terrain
new file mode 100644
index 0000000..685ccb0
--- /dev/null
+++ b/src/osgEarth/Terrain
@@ -0,0 +1,265 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_TERRAIN_H
+#define OSGEARTH_TERRAIN_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/TileKey>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/TerrainOptions>
+#include <osg/OperationThread>
+
+namespace osgEarth
+{
+    class Terrain;
+    class SpatialReference;
+
+    /**
+     * This object is passed to terrain callbacks to provide context information
+     * and a feedback interface to terrain callback consumers.
+     */
+    class TerrainCallbackContext
+    {
+    public:
+        const Terrain* getTerrain() const { return _terrain; }
+
+        /** Indicate that the callback should be removed immediately */
+        void remove() { _remove = true; }
+
+        /** whether the user called remove(). */
+        bool markedForRemoval() const { return _remove; }
+
+        
+    public:
+        TerrainCallbackContext(Terrain* terrain)
+            : _remove(false), _terrain(terrain) { }
+
+        /** dtor */
+        virtual ~TerrainCallbackContext() { }
+
+    protected:
+        bool _remove;
+        Terrain* _terrain;
+        friend class Terrain;
+    };
+
+
+    /**
+     * Callback that you can register with the Terrain in order to receive
+     * update messaged about the terrain scene graph.
+     */
+    class TerrainCallback : public osg::Referenced
+    {
+    public:
+        /**
+         * A tile was added to the terrain graph.
+         * @param key
+         *      Tile key of the new tile, including the geographic extents
+         * @param tile
+         *      Geometry of the new tile
+         * @param context
+         *      Contextual information about the callback
+         */
+        virtual void onTileAdded(
+            const TileKey&          key, 
+            osg::Node*              tile, 
+            TerrainCallbackContext& context) =0;
+
+        /** dtor */
+        virtual ~TerrainCallback() { }
+    };
+
+
+    class /*interface-only*/ TerrainHeightProvider
+    {
+    public:
+        virtual bool getHeight(
+            const SpatialReference* srs,
+            double                  x,
+            double                  y,
+            double*                 out_heightAboveMSL,
+            double*                 out_heightAboveEllipsoid =0L) const =0;
+    };
+
+
+    /**
+     * Services for interacting with the live terrain graph. This differs from
+     * the Map model; Map represents the parametric data backing the terrain, 
+     * while Terrain represents the actual geometry in memory.
+     *
+     * All returned map coordinate values are in the units conveyed in the
+     * spatial reference at getSRS().
+     */
+    class OSGEARTH_EXPORT Terrain : public osg::Referenced, public TerrainHeightProvider
+    {
+    public:
+        /**
+         * Gets the profile of the map with which this terrain is associated.
+         */
+        const Profile* getProfile() const { return _profile.get(); }
+
+        /**
+         * Gets the spatial reference of the map with which this terrain is
+         * associated.
+         */
+        const SpatialReference* getSRS() const { return _profile->getSRS(); }
+
+        /**
+         * Whether the terrain is in geocentric (ECEF) coordinates
+         */
+        bool isGeocentric() const { return _geocentric; }
+
+
+    public: // Intersection Utilities
+
+        /**
+         * Intersects the terrain at the location x, y and returns the height data.
+         *
+         * @param srs
+         *      Spatial reference system of (x,y) coordinates
+         * @param x, y
+         *      Coordinates at which to query the height
+         * @param out_heightAboveMSL
+         *      The resulting relative height goes here. The height is relative to MSL
+         *      (mean sea level) as expressed by the map's vertical datum.
+         * @param out_heightAboveEllipsoid
+         *      The resulting geodetic height goes here. The height is relative to the
+         *      geodetic ellipsoid expressed by the map's SRS.
+         */
+        bool getHeight(
+            const SpatialReference* srs,
+            double                  x,
+            double                  y,
+            double*                 out_heightAboveMSL,
+            double*                 out_heightAboveEllipsoid =0L) const;
+
+        /**
+         * Save as above, but specify a subgraph patch.
+         */
+        bool getHeight(
+            osg::Node*              patch,
+            const SpatialReference* srs,
+            double                  x,
+            double                  y,
+            double*                 out_heightAboveMSL,
+            double*                 out_heightAboveEllipsoid =0L) const;
+
+        /**
+         * Returns the world coordinates under the mouse.
+         * @param view
+         *      View in which to do the query
+         * @param mx, my
+         *      Mouse coordinates
+         * @param out_coords 
+         *      Stores the world coordinates under the mouse (when returning true)
+         */
+        bool getWorldCoordsUnderMouse(
+            osg::View*  view,
+            float       mx,
+            float       my,
+            osg::Vec3d& out_world ) const;
+
+        bool getWorldCoordsUnderMouse(
+            osg::View*  view,
+            float       mx,
+            float       my,
+            osg::Vec3d& out_world,
+            osg::ref_ptr<osg::Node>& out_node ) const;
+
+    public:
+        /**
+         * Adds a terrain callback.
+         *
+         * @param callback
+         *      Terrain callback to add. This will get called whenever tile data changes in
+         *      the active terrain graph
+         */
+        void addTerrainCallback( TerrainCallback* callback);
+
+        /**
+         * Removes a terrain callback.
+         */
+        void removeTerrainCallback( TerrainCallback* callback );
+        
+
+    public:
+
+        /**
+         * Accept a node visitor on the terrain's scene graph.
+         */
+        void accept( osg::NodeVisitor& nv );
+
+        // access the raw terrain graph
+        osg::Node* getGraph() { return _graph.get(); }
+        
+        // queues the onTileAdded callback (internal)
+        void notifyTileAdded( const TileKey& key, osg::Node* tile );
+        // fires the onTileAdded callback (internal)
+        void fireTileAdded( const TileKey& key, osg::Node* tile );
+
+        /** dtor */
+        virtual ~Terrain() { }
+
+    private:
+        Terrain( osg::Node* graph, const Profile* profile, bool geocentric, const TerrainOptions& options );
+
+        friend class TerrainEngineNode;
+
+        typedef std::list< osg::ref_ptr<TerrainCallback> > CallbackList;
+
+        CallbackList                 _callbacks;
+        Threading::ReadWriteMutex    _callbacksMutex;
+        osg::ref_ptr<const Profile>  _profile;
+        osg::observer_ptr<osg::Node> _graph;
+        bool                         _geocentric;
+        const TerrainOptions&        _terrainOptions;
+
+        osg::observer_ptr<osg::OperationQueue> _updateOperationQueue;
+    };
+
+
+    /**
+     * A TerrainPatch is a standalone subset of terrain that you can use for 
+     * height queries. The intention is that this be used for a "disconnected"
+     * terrain tile, i.e. one that is not in the scene graph yet -- making it
+     * MT-safe.
+     */
+     class OSGEARTH_EXPORT TerrainPatch : public TerrainHeightProvider
+   {
+   public:
+       TerrainPatch( osg::Node* patch, const Terrain* terrain );
+
+       /**
+        * Queries the elevation under the specified point. This method is
+        * identical to calling Terrain::getHeight with the specified patch.
+        */
+      bool getHeight(
+          const SpatialReference* srs,
+          double                  x,
+          double                  y,
+          double*                 out_heightAboveMSL,
+          double*                 out_heightAboveEllipsoid =0L) const;
+
+   protected:
+       osg::ref_ptr<osg::Node>     _patch;
+       osg::ref_ptr<const Terrain> _terrain;
+   };
+}
+
+#endif // OSGEARTH_COMPOSITING_H
diff --git a/src/osgEarth/Terrain.cpp b/src/osgEarth/Terrain.cpp
new file mode 100644
index 0000000..1dd2e52
--- /dev/null
+++ b/src/osgEarth/Terrain.cpp
@@ -0,0 +1,302 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/Terrain>
+#include <osgEarth/DPLineSegmentIntersector>
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+#include <osgViewer/View>
+
+#define LC "[Terrain] "
+
+using namespace osgEarth;
+
+//---------------------------------------------------------------------------
+
+namespace
+{
+    struct BaseOp : public osg::Operation
+    {
+        BaseOp(Terrain* terrain ) : osg::Operation("",false), _terrain(terrain) { }
+        osg::ref_ptr<Terrain> _terrain;
+    };
+
+    struct OnTileAddedOperation : public BaseOp
+    {
+        TileKey _key;
+        osg::ref_ptr<osg::Node> _node;
+
+        OnTileAddedOperation(const TileKey& key, osg::Node* node, Terrain* terrain)
+            : BaseOp(terrain), _key(key), _node(node) { }
+
+        void operator()(osg::Object*)
+        {
+            if ( _node.valid() && _node->referenceCount() > 1 && _terrain.valid() )
+            {
+                _terrain->fireTileAdded( _key, _node.get() );
+            }
+        }
+    };
+}
+
+//---------------------------------------------------------------------------
+
+Terrain::Terrain(osg::Node* graph, const Profile* mapProfile, bool geocentric, const TerrainOptions& terrainOptions ) :
+_graph         ( graph ),
+_profile       ( mapProfile ),
+_geocentric    ( geocentric ),
+_terrainOptions( terrainOptions )
+{
+    //nop
+}
+
+bool
+Terrain::getHeight(osg::Node*              patch,
+                   const SpatialReference* srs,
+                   double                  x, 
+                   double                  y, 
+                   double*                 out_hamsl,
+                   double*                 out_hae    ) const
+{
+    if ( !_graph.valid() && !patch )
+        return 0L;
+
+    // convert to map coordinates:
+    if ( srs && !srs->isHorizEquivalentTo(getSRS()) )
+    {
+        srs->transform2D(x, y, getSRS(), x, y);
+    }
+
+    // trivially reject a point that lies outside the terrain:
+    if ( !getProfile()->getExtent().contains(x, y) )
+        return 0L;
+
+    const osg::EllipsoidModel* em = getSRS()->getEllipsoid();
+    double r = std::min( em->getRadiusEquator(), em->getRadiusPolar() );
+
+    // calculate the endpoints for an intersection test:
+    osg::Vec3d start(x, y, r);
+    osg::Vec3d end  (x, y, -r);
+
+    if ( isGeocentric() )
+    {
+        getSRS()->transformToECEF(start, start);
+        getSRS()->transformToECEF(end, end);
+    }
+
+    osgUtil::LineSegmentIntersector* lsi = new osgUtil::LineSegmentIntersector(start, end);
+    lsi->setIntersectionLimit(osgUtil::Intersector::LIMIT_ONE);
+
+    osgUtil::IntersectionVisitor iv( lsi );
+    iv.setTraversalMask( ~_terrainOptions.secondaryTraversalMask().value() );
+
+    if ( patch )
+        patch->accept( iv );
+    else
+        _graph->accept( iv );
+
+    osgUtil::LineSegmentIntersector::Intersections& results = lsi->getIntersections();
+    if ( !results.empty() )
+    {
+        const osgUtil::LineSegmentIntersector::Intersection& firstHit = *results.begin();
+        osg::Vec3d hit = firstHit.getWorldIntersectPoint();
+
+        getSRS()->transformFromWorld(hit, hit, out_hae);
+        if ( out_hamsl )
+            *out_hamsl = hit.z();
+
+        return true;
+    }
+    return false;
+}
+
+
+bool
+Terrain::getHeight(const SpatialReference* srs,
+                   double                  x, 
+                   double                  y,
+                   double*                 out_hamsl,
+                   double*                 out_hae ) const
+{
+    return getHeight( (osg::Node*)0L, srs, x, y, out_hamsl, out_hae );
+}
+
+
+bool
+Terrain::getWorldCoordsUnderMouse(osg::View* view, float x, float y, osg::Vec3d& out_coords ) const
+{
+    osgViewer::View* view2 = dynamic_cast<osgViewer::View*>(view);
+    if ( !view2 || !_graph.valid() )
+        return false;
+
+    osgUtil::LineSegmentIntersector::Intersections results;
+
+    osg::NodePath path;
+    path.push_back( _graph.get() );
+
+    // fine but computeIntersections won't travers a masked Drawable, a la quadtree.
+    unsigned mask = ~_terrainOptions.secondaryTraversalMask().value();
+
+    if ( view2->computeIntersections( x, y, path, results, mask ) )
+    {
+        // find the first hit under the mouse:
+        osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
+        out_coords = first.getWorldIntersectPoint();
+        return true;
+    }
+    return false;
+}
+
+
+bool
+Terrain::getWorldCoordsUnderMouse(osg::View* view,
+                                  float x, float y,
+                                  osg::Vec3d& out_coords,
+                                  osg::ref_ptr<osg::Node>& out_node ) const
+{
+    osgViewer::View* view2 = dynamic_cast<osgViewer::View*>(view);
+    if ( !view2 || !_graph.valid() )
+        return false;
+
+    osgUtil::LineSegmentIntersector::Intersections results;
+
+    osg::NodePath path;
+    path.push_back( _graph.get() );
+
+    // fine but computeIntersections won't travers a masked Drawable, a la quadtree.
+    unsigned mask = ~_terrainOptions.secondaryTraversalMask().value();
+
+    if ( view2->computeIntersections( x, y, path, results, mask ) )
+    {
+        // find the first hit under the mouse:
+        osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
+        out_coords = first.getWorldIntersectPoint();
+        for( osg::NodePath::reverse_iterator j = first.nodePath.rbegin(); j != first.nodePath.rend(); ++j ) {
+            if ( !(*j)->getName().empty() ) {
+                out_node = (*j);
+                break;
+            }
+        }
+        return true;
+    }
+    return false;
+}
+
+
+void
+Terrain::addTerrainCallback( TerrainCallback* cb )
+{
+    if ( cb )
+    {        
+        Threading::ScopedWriteLock exclusiveLock( _callbacksMutex );
+        _callbacks.push_back( cb );
+    }
+}
+
+void
+Terrain::removeTerrainCallback( TerrainCallback* cb )
+{
+    Threading::ScopedWriteLock exclusiveLock( _callbacksMutex );
+
+    for( CallbackList::iterator i = _callbacks.begin(); i != _callbacks.end(); )
+    {        
+        if ( i->get() == cb )
+        {
+            i = _callbacks.erase( i );
+        }
+        else
+        {
+            ++i;
+        }
+    }
+}
+
+void
+Terrain::notifyTileAdded( const TileKey& key, osg::Node* node )
+{
+    if ( !node )
+    {
+        OE_WARN << LC << "notify with a null node!" << std::endl;
+    }
+
+    if ( _updateOperationQueue.valid() )
+    {
+        _updateOperationQueue->add( new OnTileAddedOperation(key, node, this) );
+    }
+}
+
+void
+Terrain::fireTileAdded( const TileKey& key, osg::Node* node )
+{
+    Threading::ScopedReadLock sharedLock( _callbacksMutex );
+
+    for( CallbackList::iterator i = _callbacks.begin(); i != _callbacks.end(); )
+    {       
+        TerrainCallbackContext context( this );
+        i->get()->onTileAdded( key, node, context );
+
+        // if the callback set the "remove" flag, discard the callback.
+        if ( !context._remove )
+            ++i;
+        else
+            i = _callbacks.erase( i );
+    }
+}
+
+
+void
+Terrain::accept( osg::NodeVisitor& nv )
+{
+    _graph->accept( nv );
+}
+
+
+//---------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[TerrainPatch] "
+
+TerrainPatch::TerrainPatch(osg::Node* patch, const Terrain* terrain) :
+_patch  ( patch ),
+_terrain( terrain )
+{
+    //nop
+    if ( patch == 0L || terrain == 0L )
+    {
+        OE_WARN << "ILLEGAL: Created a TerrainPatch with a NULL parameter" << std::endl;
+    }
+}
+
+
+bool
+TerrainPatch::getHeight(const SpatialReference* srs,
+                        double                  x, 
+                        double                  y,
+                        double*                 out_hamsl,
+                        double*                 out_hae ) const
+{
+    if ( _terrain && _patch )
+    {
+        return _terrain->getHeight( _patch.get(), srs, x, y, out_hamsl, out_hae );
+    }
+    else
+    {
+        return false;
+    }
+}
diff --git a/src/osgEarth/TerrainEngineNode b/src/osgEarth/TerrainEngineNode
index 1c29137..611ef04 100644
--- a/src/osgEarth/TerrainEngineNode
+++ b/src/osgEarth/TerrainEngineNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -16,10 +16,12 @@
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
-#ifndef OSGEARTH_MAP_ENGINE_NODE_H
-#define OSGEARTH_MAP_ENGINE_NODE_H 1
+#ifndef OSGEARTH_TERRAIN_ENGINE_NODE_H
+#define OSGEARTH_TERRAIN_ENGINE_NODE_H 1
 
 #include <osgEarth/Map>
+#include <osgEarth/Terrain>
+#include <osgEarth/TextureCompositor>
 #include <osgEarth/ShaderUtils>
 #include <osg/CoordinateSystemNode>
 #include <osg/Geode>
@@ -27,8 +29,6 @@
 
 namespace osgEarth
 {
-    class TextureCompositor;
-
     /**
      * TerrainEngineNode is the base class and interface for map engine implementations.
      *
@@ -41,11 +41,15 @@ namespace osgEarth
         /** Gets the map that this engine is rendering. */
         const Map* getMap() const { return _map.get(); }
 
+        /** Gets the Terrain interface for interacting with the scene graph */
+        Terrain* getTerrain() { return _terrainInterface.get(); }
+        const Terrain* getTerrain() const { return _terrainInterface.get(); }
+
         /** Gets the property set in use by this map engine. */
         virtual const TerrainOptions& getTerrainOptions() const =0;
 
         /** Accesses the compositor that controls the rendering of image layers */
-        TextureCompositor* getTextureCompositor() const { return _texCompositor.get(); }
+        TextureCompositor* getTextureCompositor() const;
 
     public: // Runtime properties
 
@@ -64,7 +68,7 @@ namespace osgEarth
     protected:
         TerrainEngineNode();
 
-        TerrainEngineNode( const TerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
+        //TerrainEngineNode( const TerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
 
         virtual ~TerrainEngineNode();
 
@@ -77,67 +81,71 @@ namespace osgEarth
         virtual void onElevationSamplingRatioChanged() { }
 
     protected:
+        friend class MapNode;
         friend class TerrainEngineNodeFactory;
 
         virtual void validateTerrainOptions( TerrainOptions& options );
 
-    private:
-        friend struct TerrainEngineNodeCallbackProxy;
-
-        void onMapInfoEstablished( const MapInfo& mapInfo ); // not virtual!
-        //void onMapProfileEstablished( const Profile* profile );
-        void onMapModelChanged( const MapModelChange& change );
-
-    protected:
         /** Attaches a map to the terrain engine and initialized it.*/
         virtual void preInitialize( const Map* map, const TerrainOptions& options );
         virtual void postInitialize( const Map* map, const TerrainOptions& options );
-        friend class MapNode;
+
+        // signals that a redraw is needed because something changed.
+        virtual void dirty();
 
         // allow subclasses direct access for convenience.
         osg::ref_ptr<TextureCompositor> _texCompositor;
 
+    public: // utility
+
+        /**
+         * Utility function that will return an osg::Node representing the geometry
+         * for a tile key. The node is standalone; it has no ability to load children
+         * or receive updates.
+         */
+        virtual osg::Node* createTile( const TileKey& key ) =0;
+
     private:
+        friend struct TerrainEngineNodeCallbackProxy;
         friend struct MapNodeMapLayerController;
 
-        virtual void updateImageUniforms();
+        void ctor();
+        void onMapInfoEstablished( const MapInfo& mapInfo ); // not virtual!
+        void onMapModelChanged( const MapModelChange& change );
+        void updateImageUniforms();
+        virtual void updateTextureCombining() { }
 
     private:
-        UpdateLightingUniformsHelper _updateLightingUniformsHelper;
-        float _verticalScale;
-        float _elevationSamplingRatio;
         
         struct ImageLayerController : public ImageLayerCallback
         {
-            ImageLayerController( const Map* map );
+            ImageLayerController( const Map* map, TerrainEngineNode* engine );
 
-            void onEnabledChanged( TerrainLayer* layer );
+            void onVisibleChanged( TerrainLayer* layer );
             void onOpacityChanged( ImageLayer* layer );
+            void onColorFiltersChanged( ImageLayer* layer );      
+            void onVisibleRangeChanged( ImageLayer* layer );
 
             ArrayUniform _layerOpacityUniform;
-            ArrayUniform _layerEnabledUniform;
+            ArrayUniform _layerVisibleUniform;
             ArrayUniform _layerRangeUniform;
 
-            //// a uniform array marking the opacity of each image layer
-            //osg::ref_ptr< ArrayUniform > _layerOpacityUniform;
-            ////osg::ref_ptr< osg::Uniform > _layerOpacityUniform;
-
-            //// a uniform array marking the enabled state of each image layer
-            //osg::ref_ptr< ArrayUniform > _layerEnabledUniform;
-            ////osg::ref_ptr< osg::Uniform > _layerEnabledUniform;
-
-            //// a uniform array holding the min and max visible range of each image layer
-            //osg::ref_ptr< ArrayUniform > _layerRangeUniform;
-            ////osg::ref_ptr< osg::Uniform > _layerRangeUniform;
-
         private:
-            MapFrame _mapf;
+            MapFrame           _mapf;
+            TerrainEngineNode* _engine;
+            friend class TerrainEngineNode;
         };
 
         osg::ref_ptr<ImageLayerController> _imageLayerController;
-        osg::ref_ptr<const Map> _map;
-        osg::ref_ptr<osg::Uniform> _startFrameTimeUniform;
-        osg::ref_ptr<osg::Uniform> _cameraElevationUniform;
+        osg::ref_ptr<const Map>            _map;
+        osg::ref_ptr<osg::Uniform>         _startFrameTimeUniform;
+        osg::ref_ptr<osg::Uniform>         _cameraElevationUniform;
+        bool                               _redrawRequired;
+        float                              _verticalScale;
+        float                              _elevationSamplingRatio;
+        osg::ref_ptr<Terrain>              _terrainInterface;
+        unsigned                           _dirtyCount;
+        UpdateLightingUniformsHelper       _updateLightingUniformsHelper;
         
         enum InitStage {
             INIT_NONE,
@@ -168,4 +176,4 @@ namespace osgEarth
 
 } // namespace osgEarth
 
-#endif // OSGEARTH_ENGINE_OSGTERRAIN_ENGINE_NODE_H
+#endif // OSGEARTH_TERRAIN_ENGINE_NODE_H
diff --git a/src/osgEarth/TerrainEngineNode.cpp b/src/osgEarth/TerrainEngineNode.cpp
index 0ddaa94..72908b9 100644
--- a/src/osgEarth/TerrainEngineNode.cpp
+++ b/src/osgEarth/TerrainEngineNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,11 +19,12 @@
 #include <osgEarth/TerrainEngineNode>
 #include <osgEarth/Capabilities>
 #include <osgEarth/Registry>
-#include <osgEarth/FindNode>
 #include <osgEarth/TextureCompositor>
+#include <osgEarth/NodeUtils>
 #include <osgDB/ReadFile>
 #include <osg/CullFace>
 #include <osg/PolygonOffset>
+#include <osgViewer/View>
 
 #define LC "[TerrainEngineNode] "
 
@@ -54,17 +55,29 @@ namespace osgEarth
     };
 }
 
+
 //------------------------------------------------------------------------
 
-TerrainEngineNode::ImageLayerController::ImageLayerController( const Map* map ) :
-_mapf( map, Map::IMAGE_LAYERS, "TerrainEngineNode.ImageLayerController" )
+
+TerrainEngineNode::ImageLayerController::ImageLayerController(const Map*         map,
+                                                              TerrainEngineNode* engine) :
+_mapf  ( map, Map::IMAGE_LAYERS, "TerrainEngineNode.ImageLayerController" ),
+_engine( engine )
 {
     //nop
 }
 
+
+TextureCompositor*
+TerrainEngineNode::getTextureCompositor() const
+{
+    return _texCompositor.get();
+}
+
+
 // this handler adjusts the uniform set when a terrain layer's "enabed" state changes
 void
-TerrainEngineNode::ImageLayerController::onEnabledChanged( TerrainLayer* layer )
+TerrainEngineNode::ImageLayerController::onVisibleChanged( TerrainLayer* layer )
 {
     if ( !Registry::instance()->getCapabilities().supportsGLSL() )
         return;
@@ -72,26 +85,14 @@ TerrainEngineNode::ImageLayerController::onEnabledChanged( TerrainLayer* layer )
     _mapf.sync();
     int layerNum = _mapf.indexOf( static_cast<ImageLayer*>(layer) );
     if ( layerNum >= 0 )
-        _layerEnabledUniform.setElement( layerNum, layer->getEnabled() );
+        _layerVisibleUniform.setElement( layerNum, layer->getVisible() );
     else
-        OE_WARN << LC << "Odd, updateLayerOpacity did not find layer" << std::endl;
-}
-
-TerrainEngineNode::~TerrainEngineNode()
-{
-    //Remove any callbacks added to the image layers
-    if (_map.valid())
-    {
-        MapFrame mapf( _map.get(), Map::IMAGE_LAYERS, "TerrainEngineNode::~TerrainEngineNode" );
-        for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
-        {
-            i->get()->removeCallback( _imageLayerController.get() );
-        }
-    }
-
+        OE_WARN << LC << "Odd, onVisibleChanged did not find layer" << std::endl;
 
+    _engine->dirty();
 }
 
+
 // this handler adjusts the uniform set when a terrain layer's "opacity" value changes
 void
 TerrainEngineNode::ImageLayerController::onOpacityChanged( ImageLayer* layer )
@@ -105,32 +106,85 @@ TerrainEngineNode::ImageLayerController::onOpacityChanged( ImageLayer* layer )
         _layerOpacityUniform.setElement( layerNum, layer->getOpacity() );
     else
         OE_WARN << LC << "Odd, onOpacityChanged did not find layer" << std::endl;
+
+    _engine->dirty();
 }
 
+void
+TerrainEngineNode::ImageLayerController::onVisibleRangeChanged( ImageLayer* layer )
+{
+    if ( !Registry::instance()->getCapabilities().supportsGLSL() )
+        return;
+
+    _mapf.sync();
+    int layerNum = _mapf.indexOf( layer );
+    if ( layerNum >= 0 )
+    {
+         _layerRangeUniform.setElement( (2*layerNum),   layer->getMinVisibleRange() );
+         _layerRangeUniform.setElement( (2*layerNum)+1, layer->getMaxVisibleRange() );
+    }        
+    else
+        OE_WARN << LC << "Odd, onVisibleRangeChanged did not find layer" << std::endl;
+
+    _engine->dirty();
+}
+
+void
+TerrainEngineNode::ImageLayerController::onColorFiltersChanged( ImageLayer* layer )
+{
+    _engine->updateTextureCombining();
+    _engine->dirty();
+}
+
+
+
 //------------------------------------------------------------------------
 
+
 TerrainEngineNode::TerrainEngineNode() :
-_verticalScale( 1.0f ),
+_verticalScale         ( 1.0f ),
 _elevationSamplingRatio( 1.0f ),
-_initStage( INIT_NONE )
+_initStage             ( INIT_NONE ),
+_dirtyCount            ( 0 )
 {
-    //nop
+    // register for event traversals so we can properly reset the dirtyCount
+    ADJUST_EVENT_TRAV_COUNT( this, 1 );
 }
 
-TerrainEngineNode::TerrainEngineNode( const TerrainEngineNode& rhs, const osg::CopyOp& op ) :
-osg::CoordinateSystemNode( rhs, op ),
-_verticalScale( rhs._verticalScale ),
-_elevationSamplingRatio( rhs._elevationSamplingRatio ),
-_map( rhs._map.get() ),
-_initStage( rhs._initStage )
+
+TerrainEngineNode::~TerrainEngineNode()
 {
-    //nop
+    //Remove any callbacks added to the image layers
+    if (_map.valid())
+    {
+        MapFrame mapf( _map.get(), Map::IMAGE_LAYERS, "TerrainEngineNode::~TerrainEngineNode" );
+        for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
+        {
+            i->get()->removeCallback( _imageLayerController.get() );
+        }
+    }
 }
 
+
+void
+TerrainEngineNode::dirty()
+{
+    if ( 0 == _dirtyCount++ )
+    {
+        // notify any attached Views
+        ViewVisitor<RequestRedraw> visitor;
+        this->accept(visitor);
+    }
+}
+
+
 void
 TerrainEngineNode::preInitialize( const Map* map, const TerrainOptions& options )
 {
     _map = map;
+    
+    // fire up a terrain utility interface
+    _terrainInterface = new Terrain( this, map->getProfile(), map->isGeocentric(), options );
 
     // set up the CSN values   
     _map->getProfile()->getSRS()->populateCoordinateSystemNode( this );
@@ -168,6 +222,13 @@ TerrainEngineNode::preInitialize( const Map* map, const TerrainOptions& options
     set->getOrCreateUniform( "osgearth_ImageLayerAttenuation", osg::Uniform::FLOAT )->set(
         *options.attentuationDistance() );
 
+    if ( options.enableMercatorFastPath().isSet() )
+    {
+        OE_INFO 
+            << LC << "Mercator fast path " 
+            << (options.enableMercatorFastPath()==true? "enabled" : "DISABLED") << std::endl;
+    }
+
     _initStage = INIT_PREINIT_COMPLETE;
 }
 
@@ -181,7 +242,7 @@ TerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& options
             onMapInfoEstablished( MapInfo(_map.get()) );
 
         // create a layer controller. This object affects the uniforms that control layer appearance properties
-        _imageLayerController = new ImageLayerController( _map.get() );
+        _imageLayerController = new ImageLayerController( _map.get(), this );
 
         // register the layer Controller it with all pre-existing image layers:
         MapFrame mapf( _map.get(), Map::IMAGE_LAYERS, "TerrainEngineNode::initialize" );
@@ -191,10 +252,6 @@ TerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& options
         }
 
         updateImageUniforms();
-
-        // then register the callback
-        // NOTE: moved this into preInitialize
-        //_map->addMapCallback( new TerrainEngineNodeCallbackProxy( this ) );
     }
 
     _initStage = INIT_POSTINIT_COMPLETE;
@@ -264,10 +321,13 @@ TerrainEngineNode::onMapModelChanged( const MapModelChange& change )
     // compositor is up to date with the map model. (After post-initialization,
     // this happens in the subclass...something that probably needs to change
     // since this is unclear)
-    else if ( _texCompositor.valid() )
+    else if ( _texCompositor.valid() && change.getImageLayer() )
     {
         _texCompositor->applyMapModelChange( change );
     }
+
+    // notify that a redraw is required.
+    dirty();
 }
 
 void
@@ -283,22 +343,9 @@ TerrainEngineNode::updateImageUniforms()
     // get a copy of the image layer stack:
     MapFrame mapf( _map.get(), Map::IMAGE_LAYERS );
 
-    _imageLayerController->_layerEnabledUniform.detach();
+    _imageLayerController->_layerVisibleUniform.detach();
     _imageLayerController->_layerOpacityUniform.detach();
     _imageLayerController->_layerRangeUniform.detach();
-
-#if 0
-    if ( _imageLayerController->_layerEnabledUniform.valid() )
-        _imageLayerController->_layerEnabledUniform->removeFrom( stateSet );
-
-    if ( _imageLayerController->_layerOpacityUniform.valid() )
-        _imageLayerController->_layerOpacityUniform->removeFrom( stateSet );
-
-    if ( _imageLayerController->_layerRangeUniform.valid() )
-        _imageLayerController->_layerRangeUniform->removeFrom( stateSet );
-#endif
-
-    //stateSet->removeUniform( "osgearth_ImageLayerAttenuation" );
     
     if ( mapf.imageLayers().size() > 0 )
     {
@@ -306,33 +353,29 @@ TerrainEngineNode::updateImageUniforms()
         // layer count has changed, but the shader has not yet caught up. In the future we might use this to disable
         // "ghost" layers that used to exist at a given index, but no longer do.
         
-        _imageLayerController->_layerEnabledUniform.attach( "osgearth_ImageLayerEnabled", osg::Uniform::BOOL,  stateSet, 16 );
+        _imageLayerController->_layerVisibleUniform.attach( "osgearth_ImageLayerVisible", osg::Uniform::BOOL,  stateSet, MAX_IMAGE_LAYERS );
         _imageLayerController->_layerOpacityUniform.attach( "osgearth_ImageLayerOpacity", osg::Uniform::FLOAT, stateSet, mapf.imageLayers().size() );
         _imageLayerController->_layerRangeUniform.attach  ( "osgearth_ImageLayerRange",   osg::Uniform::FLOAT, stateSet, 2 * mapf.imageLayers().size() );
 
-        //_imageLayerController->_layerEnabledUniform  = new ArrayUniform( osg::Uniform::BOOL,  "osgearth_ImageLayerEnabled", 64 ); //mapf.imageLayers().size() );
-        //_imageLayerController->_layerOpacityUniform  = new ArrayUniform( osg::Uniform::FLOAT, "osgearth_ImageLayerOpacity", mapf.imageLayers().size() );
-        //_imageLayerController->_layerRangeUniform    = new ArrayUniform( osg::Uniform::FLOAT, "osgearth_ImageLayerRange", 2 * mapf.imageLayers().size() );
-
         for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
         {
             ImageLayer* layer = i->get();
             int index = (int)(i - mapf.imageLayers().begin());
 
+            _imageLayerController->_layerVisibleUniform.setElement( index, layer->getVisible() );
             _imageLayerController->_layerOpacityUniform.setElement( index, layer->getOpacity() );
-            _imageLayerController->_layerEnabledUniform.setElement( index, layer->getEnabled() );
-            _imageLayerController->_layerRangeUniform.setElement( (2*index), layer->getImageLayerOptions().minVisibleRange().value() );
-            _imageLayerController->_layerRangeUniform.setElement( (2*index)+1, layer->getImageLayerOptions().maxVisibleRange().value() );
+            _imageLayerController->_layerRangeUniform.setElement( (2*index), layer->getMinVisibleRange() );
+            _imageLayerController->_layerRangeUniform.setElement( (2*index)+1, layer->getMaxVisibleRange() );
         }
 
         // set the remainder of the layers to disabled 
-        for( int j=mapf.imageLayers().size(); j<64; ++j )
-            _imageLayerController->_layerEnabledUniform.setElement( j, false );
-
-        //_imageLayerController->_layerOpacityUniform->addTo( stateSet );
-        //_imageLayerController->_layerEnabledUniform->addTo( stateSet );
-        //_imageLayerController->_layerRangeUniform->addTo( stateSet );
+        for( int j=mapf.imageLayers().size(); j<_imageLayerController->_layerVisibleUniform.getNumElements(); ++j)
+        {
+            _imageLayerController->_layerVisibleUniform.setElement( j, false );
+        }
     }
+
+    dirty();
 }
 
 void
@@ -351,11 +394,41 @@ TerrainEngineNode::validateTerrainOptions( TerrainOptions& options )
     }
 }
 
+namespace
+{
+    Threading::Mutex s_opqlock;
+}
+
 void
 TerrainEngineNode::traverse( osg::NodeVisitor& nv )
 {
     if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
     {
+        // see if we need to set up the Terrain object with an update ops queue.
+        if ( !_terrainInterface->_updateOperationQueue.valid() )
+        {
+            Threading::ScopedMutexLock lock(s_opqlock);
+            if ( !_terrainInterface->_updateOperationQueue.valid() ) // double check pattern
+            {
+                //TODO: think, will this work with >1 view?
+                osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>( &nv );
+                if ( cv->getCurrentCamera() )
+                {
+                    osgViewer::View* view = dynamic_cast<osgViewer::View*>(cv->getCurrentCamera()->getView());
+                    if ( view && view->getViewerBase() )
+                    {
+                        osg::OperationQueue* q = view->getViewerBase()->getUpdateOperations();
+                        if ( !q ) {
+                            q = new osg::OperationQueue();
+                            view->getViewerBase()->setUpdateOperations( q );
+                        }
+                        _terrainInterface->_updateOperationQueue = q;
+                    }
+                }
+            }
+        }
+
+
         if ( Registry::instance()->getCapabilities().supportsGLSL() )
         {
             _updateLightingUniformsHelper.cullTraverse( this, &nv );
@@ -376,11 +449,10 @@ TerrainEngineNode::traverse( osg::NodeVisitor& nv )
         }
     }
 
-    //else if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
-    //{
-    //    if ( Registry::instance()->getCapabilities().supportsGLSL() )
-    //        _updateLightingUniformsHelper.updateTraverse( this );
-    //}
+    else if ( nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR )
+    {
+        _dirtyCount = 0;
+    }
 
     osg::CoordinateSystemNode::traverse( nv );
 }
@@ -388,7 +460,7 @@ TerrainEngineNode::traverse( osg::NodeVisitor& nv )
 //------------------------------------------------------------------------
 
 #undef LC
-#define LC "[TerrainEngineFactory] "
+#define LC "[TerrainEngineNodeFactory] "
 
 TerrainEngineNode*
 TerrainEngineNodeFactory::create( Map* map, const TerrainOptions& options )
@@ -397,7 +469,7 @@ TerrainEngineNodeFactory::create( Map* map, const TerrainOptions& options )
 
     std::string driver = options.getDriver();
     if ( driver.empty() )
-        driver = "osgterrain";
+        driver = Registry::instance()->getDefaultTerrainEngineDriverName();
 
     std::string driverExt = std::string( ".osgearth_engine_" ) + driver;
     result = dynamic_cast<TerrainEngineNode*>( osgDB::readObjectFile( driverExt ) );
@@ -405,7 +477,6 @@ TerrainEngineNodeFactory::create( Map* map, const TerrainOptions& options )
     {
         TerrainOptions terrainOptions( options );
         result->validateTerrainOptions( terrainOptions );
-        //result->initialize( map, terrainOptions );
     }
     else
     {
@@ -414,3 +485,4 @@ TerrainEngineNodeFactory::create( Map* map, const TerrainOptions& options )
 
     return result;
 }
+
diff --git a/src/osgEarth/TerrainLayer b/src/osgEarth/TerrainLayer
index 2b3502b..7ac5ce6 100644
--- a/src/osgEarth/TerrainLayer
+++ b/src/osgEarth/TerrainLayer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,12 +21,14 @@
 #define OSGEARTH_TERRAIN_LAYER_H 1
 
 #include <osgEarth/Common>
-#include <osgEarth/Layer>
+#include <osgEarth/Cache>
+#include <osgEarth/CachePolicy>
 #include <osgEarth/Config>
+#include <osgEarth/Layer>
 #include <osgEarth/TileSource>
 #include <osgEarth/Profile>
-#include <osgEarth/Caching>
 #include <osgEarth/ThreadingUtils>
+#include <osgEarth/HTTPClient>
 
 namespace osgEarth
 {
@@ -39,6 +41,9 @@ namespace osgEarth
         TerrainLayerOptions( const ConfigOptions& options =ConfigOptions() );
         TerrainLayerOptions( const std::string& name, const TileSourceOptions& driverOptions );
 
+        /** dtor */
+        virtual ~TerrainLayerOptions() { }
+
         /**
          * The readable name of the layer.
          */
@@ -46,12 +51,11 @@ namespace osgEarth
         const std::string& name() const { return _name; }
 
         /**
-         * Gets the explicit profile setup for this map layer. By default, the layer will 
-         * try to automatically determine the Profile from the tile source. This property
-         * sets it explicitly instead.
+         * Gets the explicity vertical datum identifier that will override a vertical
+         * datum specified by the tile source.
          */
-        optional<ProfileOptions>& profile() { return _profile; }
-        const optional<ProfileOptions>& profile() const { return _profile; }
+        optional<std::string>& verticalDatum() { return _vertDatum; }
+        const optional<std::string>& verticalDatum() const { return _vertDatum; }
 
         /**
          * Options for the underlyint tile source driver.
@@ -60,29 +64,30 @@ namespace osgEarth
         const optional<TileSourceOptions>& driver() const { return _driver; }
 
         /**
-         * Gets or sets the minimum level of detail for which this layer should generate data.
+         * Gets or sets the minimum of detail for which this layer should generate data.
          */
-        optional<int>& minLevel() { return _minLevel; }
-        const optional<int>& minLevel() const { return _minLevel; }
+        optional<unsigned>& minLevel() { return _minLevel; }
+        const optional<unsigned>& minLevel() const { return _minLevel; }
 
         /**
-         * Gets or sets the minimum level resolution for which this layer should generate data.
+         * Gets or sets the minimum resolution for which this layer should generate data.
+         * The value is in units per pixel, using the base units of the layer's source data.
          */
-        optional<double>& minLevelResolution() { return _minLevelResolution;}
-        const optional<double>& minLevelResolution() const { return _minLevelResolution; }
-
+        optional<double>& minResolution() { return _minResolution; }
+        const optional<double>& minResolution() const { return _minResolution; }
 
         /**
          * The maximum level of detail for which this layer should generate data.
          */
-        optional<int>& maxLevel() { return _maxLevel; }
-        const optional<int>& maxLevel() const { return _maxLevel; }
+        optional<unsigned>& maxLevel() { return _maxLevel; }
+        const optional<unsigned>& maxLevel() const { return _maxLevel; }
 
         /**
          * The maximum level resolution for which this layer should generate data.
+         * The value is in units per pixel, using the base units of the layer's source data.
          */
-        optional<double>& maxLevelResolution() { return _maxLevelResolution; }
-        const optional<double>& maxLevelResolution() const { return _maxLevelResolution; }
+        optional<double>& maxResolution() { return _maxResolution; }
+        const optional<double>& maxResolution() const { return _maxResolution; }
 
         /**
          * The maximum level that data should be queried for this layer.
@@ -90,43 +95,31 @@ namespace osgEarth
         optional<unsigned int>& maxDataLevel() { return _maxDataLevel; }
         const optional<unsigned int>& maxDataLevel() const { return _maxDataLevel; }
 
-
-
-		/**
-		 * Whether to render this layer with the map.
-		 */        
+        /**
+         * Whether to use this layer with the map. Setting this to false means that 
+         * the layer will remain in its map model but will not be used by the 
+         * terrain engine. You cannot change the "enabled" state at runtime.
+         */        
         optional<bool>& enabled() { return _enabled; }
         const optional<bool>& enabled() const { return _enabled; }
 
-		/**
-		 * Whether to use exact cropping if image cropping is necessary
-		 */
+        /**
+         * Whether to render (or otherwise use) the layer.
+         */
+        optional<bool>& visible() { return _visible; }
+        const optional<bool>& visible() const { return _visible; }
+
+        /**
+         * Whether to use exact cropping if image cropping is necessary
+         */
         optional<bool>& exactCropping() { return _exactCropping; }
         const optional<bool>& exactCropping() const { return _exactCropping; }
 
-		/**
-		 * The desired tile size to reproject imagery to if necessary.
-		 */
-        optional<unsigned int> reprojectedTileSize() { return _reprojectedTileSize; }
-        const optional<unsigned int> reprojectedTileSize() const { return _reprojectedTileSize; }
-
-		/**
-		 * The format that this MapLayer should use when caching.
-		 */
-        optional<std::string>& cacheFormat() { return _cacheFormat; }
-        const optional<std::string>& cacheFormat() const { return _cacheFormat; }
-
         /**
-         * Whether to cache this layer or not.
+         * The desired tile size to reproject imagery to if necessary.
          */
-        optional<bool>& cacheEnabled() { return _cacheEnabled; }
-        const optional<bool>& cacheEnabled() const { return _cacheEnabled; }
-
-		/**
-		 * Whether to try to run this MapLayer strictly from the cache only.
-		 */
-        optional<bool>& cacheOnly() { return _cacheOnly; }
-        const optional<bool>& cacheOnly() const { return _cacheOnly; }
+        optional<unsigned int>& reprojectedTileSize() { return _reprojectedTileSize; }
+        const optional<unsigned int>& reprojectedTileSize() const { return _reprojectedTileSize; }
 
         /**
          * Explicit cache ID to uniquely identify the cache that matched this
@@ -135,6 +128,19 @@ namespace osgEarth
          */
         optional<std::string>& cacheId() { return _cacheId; }
         const optional<std::string>& cacheId() const { return _cacheId; }
+
+        /**
+         * The format that this MapLayer should use when caching. This can be a mime type
+         * or a file extension.
+         */
+        optional<std::string>& cacheFormat() { return _cacheFormat; }
+        const optional<std::string>& cacheFormat() const { return _cacheFormat; }
+
+        /**
+         * Caching policy to use for this layer.
+         */
+        optional<CachePolicy>& cachePolicy() { return _cachePolicy; }
+        const optional<CachePolicy>& cachePolicy() const { return _cachePolicy; }
         
         /**
          * The loading weight of this MapLayer (for threaded loading policies).
@@ -151,31 +157,41 @@ namespace osgEarth
         optional<double>& edgeBufferRatio() { return _edgeBufferRatio;}
         const optional<double>& edgeBufferRatio() const { return _edgeBufferRatio; }
 
+        /** 
+         * The hostname/port of a proxy server to use for HTTP communications on this layer
+         * Default = no proxy.
+         */
+        optional<ProxySettings>& proxySettings() { return _proxySettings; }
+        const optional<ProxySettings>& proxySettings() const { return _proxySettings; }
+
     public:
-        virtual Config getConfig() const;
+        virtual Config getConfig() const { return getConfig(false); }
+        virtual Config getConfig( bool isolate ) const;
         virtual void mergeConfig( const Config& conf );
 
     private:
         void fromConfig( const Config& conf );
         void setDefaults();
        
-        std::string _name;
-        optional<ProfileOptions> _profile;
+        std::string                 _name;
+        optional<std::string>       _vertDatum;
         optional<TileSourceOptions> _driver;
-        optional<int> _minLevel;
-        optional<int> _maxLevel;
-        optional<double> _minLevelResolution;
-        optional<double> _maxLevelResolution;
-		optional<std::string> _cacheFormat;
-        optional<bool> _cacheEnabled;
-		optional<bool> _cacheOnly;
-        optional<float> _loadingWeight;
-        optional<bool> _exactCropping;
-		optional<bool> _enabled;
-		optional<unsigned int> _reprojectedTileSize;
-        optional<double> _edgeBufferRatio;
-        optional<std::string> _cacheId;
-        optional<unsigned int> _maxDataLevel;
+        optional<unsigned>          _minLevel;
+        optional<unsigned>          _maxLevel;
+        optional<double>            _minResolution;
+        optional<double>            _maxResolution;
+        optional<float>             _loadingWeight;
+        optional<bool>              _exactCropping;
+        optional<bool>              _enabled;
+        optional<bool>              _visible;
+        optional<unsigned>          _reprojectedTileSize;
+        optional<double>            _edgeBufferRatio;
+        optional<unsigned>          _maxDataLevel;
+
+        optional<std::string>       _cacheId;
+        optional<std::string>       _cacheFormat;
+        optional<CachePolicy>       _cachePolicy;
+        optional<ProxySettings>     _proxySettings;
     };
 
     /**
@@ -183,7 +199,8 @@ namespace osgEarth
      */
     struct TerrainLayerCallback : public osg::Referenced
     {
-        virtual void onEnabledChanged( class TerrainLayer* layer ) { }
+        virtual void onVisibleChanged( class TerrainLayer* layer ) { }
+        virtual ~TerrainLayerCallback() { }
     };
 
     typedef void (TerrainLayerCallback::*TerrainLayerCallbackMethodPtr)(TerrainLayer* layer);
@@ -195,79 +212,77 @@ namespace osgEarth
     class OSGEARTH_EXPORT TerrainLayer : public Layer
     {
     protected:
-        TerrainLayer( TerrainLayerOptions* options );
+        TerrainLayer( 
+            const TerrainLayerOptions& initOptions, 
+            TerrainLayerOptions*       runtimeOptions );
         
-        TerrainLayer( TerrainLayerOptions* options, TileSource* tileSource );
+        TerrainLayer( 
+            const TerrainLayerOptions& initOptions, 
+            TerrainLayerOptions*       runtimeOptions,
+            TileSource*                tileSource );
+
+        virtual ~TerrainLayer();
 
     public:
 
         /**
          * The options data connected to this layer.
          */
-        const TerrainLayerOptions& getTerrainLayerOptions() const {
-            return *_runtimeOptions; }
+        const TerrainLayerOptions& getInitialOptions() const { return _initOptions; }
+
+        const TerrainLayerOptions& getTerrainLayerRuntimeOptions() const { return *_runtimeOptions; }
 
         /**
-         * Whether to draw this layer.
+         * Whether to use this layer. Note, a layer is enabled/disabled once and its
+         * status cannot be changed.
          */
-        void setEnabled( bool value );
         bool getEnabled() const { return *_runtimeOptions->enabled(); }
 
         /**
+         * Whether to draw (or otherwise use) this layer.
+         */
+        void setVisible( bool value );
+        bool getVisible() const { return getEnabled() && *_runtimeOptions->visible(); }
+
+        /**
          * Gets the readable name of the map layer.
          */
-        const std::string& getName() const { 
-            return getTerrainLayerOptions().name(); }
+        const std::string& getName() const { return getTerrainLayerRuntimeOptions().name(); }
 
-		/**
-		 * Gets the profile of this MapLayer
-		 */
-		const Profile* getProfile() const;
+        /**
+         * Gets the profile of this MapLayer
+         */
+        const Profile* getProfile() const;
 
         /**
          * Gets the underlying TileSource engine that serves this map layer. Use with caution.
          */
         TileSource* getTileSource() const;
 
-		/**
-		 * Gets the tile size of the this MapLayer
-		 */
+        /**
+         * Gets the tile size of the this MapLayer
+         */
         unsigned int getTileSize() const;
 
-		/**
-		 * Gets the maximum data level of this MapLayer
-		 */
-		unsigned int getMaxDataLevel() const;
+        /**
+         * Gets the maximum data level of this MapLayer
+         */
+        unsigned int getMaxDataLevel() const;
 
         /**
          * Whether the layer represents dynamic data, i.e. tile data that can change.
          */
         bool isDynamic() const;
 
-        const std::string& getCacheFormat() const {  return *_runtimeOptions->cacheFormat(); }
-
-    public: // methods
-
-		/**
-		 * Whether the given key is valid for this layer
-		 */
-		bool isKeyValid(const TileKey& key) const;
-
-		/**
-		 * Gets the Cache to be used on this TerrainLayer.
-		 */
-        Cache* getCache() const { return _cache.get(); }
-
-		/**
-		 * Sets the cache to be used on this MapLayer
-         * TODO: is it legal to set this at any time?
-		 */
-		void setCache( Cache* cache );
-
         /**
-         * Gets the key that this layer uses to access the cache
+         * Whether the given key is valid for this layer
+         */
+        virtual bool isKeyValid(const TileKey& key) const;
+
+        /** 
+         * Whether the data for the specified tile key is in the cache.
          */
-        const CacheSpec& getCacheSpec() const { return _cacheSpec; }
+        virtual bool isCached(const TileKey& key) const;
         
         /**
          * Gives the terrain layer a hint as to what the target profile of 
@@ -277,44 +292,135 @@ namespace osgEarth
          */
         virtual void setTargetProfileHint( const Profile* profile );
 
+        /** 
+         * The cache bin for storing data generated by this layer
+         */
+        virtual CacheBin* getCacheBin( const Profile* profile );
+        
         /**
-         * Whether this layer is in "cache only" mode (i.e. data will only be
-         * read from the cache and not from the tile source
+         * Gets the Cache to be used on this TerrainLayer.
          */
-        bool isCacheOnly() const { return *_runtimeOptions->cacheOnly(); }
+        Cache* getCache() const { return _cache.get(); }
 
-    protected:
+        /**
+         * Convenience function to check for cache_only mode
+         */
+        bool isCacheOnly() const {
+            return 
+                _runtimeOptions->cachePolicy().isSet() &&
+                _runtimeOptions->cachePolicy()->usage() == CachePolicy::USAGE_CACHE_ONLY;
+        }
 
-		virtual void initTileSource();
+    public:
+        
+        /**
+         * Metadata about the terrain layer that is stored in the cache, and read
+         * when the cache is opened.
+         */
+        struct CacheBinMetadata
+        {
+            CacheBinMetadata() { }
+
+            CacheBinMetadata( const CacheBinMetadata& rhs ) :
+                _empty        ( rhs._empty ),
+                _cacheBinId   ( rhs._cacheBinId ),
+                _sourceName   ( rhs._sourceName ),
+                _sourceDriver ( rhs._sourceDriver ),
+                _maxDataLevel ( rhs._maxDataLevel ),
+                _sourceProfile( rhs._sourceProfile ),
+                _cacheProfile ( rhs._cacheProfile ) { }
+
+            CacheBinMetadata( const Config& conf )
+            {
+                _empty = conf.empty();
+                conf.getIfSet   ( "cachebin_id",    _cacheBinId );
+                conf.getIfSet   ( "source_name",    _sourceName );
+                conf.getIfSet   ( "source_driver",  _sourceDriver );
+                conf.getIfSet   ( "max_data_level", _maxDataLevel );
+                conf.getObjIfSet( "source_profile", _sourceProfile );
+                conf.getObjIfSet( "cache_profile",  _cacheProfile );
+            }
+
+            Config getConfig() const
+            {
+                Config conf( "osgearth_terrainlayer_cachebin" );
+                conf.addIfSet   ( "cachebin_id",    _cacheBinId );
+                conf.addIfSet   ( "source_name",    _sourceName );
+                conf.addIfSet   ( "source_driver",  _sourceDriver );
+                conf.addIfSet   ( "max_data_level", _maxDataLevel );
+                conf.addObjIfSet( "source_profile", _sourceProfile );
+                conf.addObjIfSet( "cache_profile",  _cacheProfile );
+                return conf;
+            }
+
+            bool                     _empty;
+            optional<std::string>    _cacheBinId;
+            optional<std::string>    _sourceName;
+            optional<std::string>    _sourceDriver;
+            optional<unsigned>       _maxDataLevel;
+            optional<ProfileOptions> _sourceProfile;
+            optional<ProfileOptions> _cacheProfile;
+        };
 
-        virtual std::string suggestCacheFormat() const;
+        /**
+         * Access to information about the cache 
+         */
+        bool getCacheBinMetadata( const Profile* profile, CacheBinMetadata& output );
 
     protected:
 
-        osg::ref_ptr<TileSource> _tileSource;
-		osg::ref_ptr<Cache>      _cache;
-        CacheSpec                _cacheSpec;
+        virtual void initTileSource();
 
-		osg::ref_ptr<const Profile> _profile;
-        osg::ref_ptr<const Profile> _cacheProfile;
-        osg::ref_ptr<const Profile> _targetProfileHint;
+        CacheBin* getCacheBin( const Profile* profile, const std::string& binId );
+
+    protected:
 
-        bool                        _tileSourceInitialized;
-		unsigned                    _tileSize;        
+        osg::ref_ptr<TileSource>       _tileSource;
+        osg::ref_ptr<const Profile>    _profile;
+        osg::ref_ptr<const Profile>    _targetProfileHint;
+        bool                           _tileSourceInitAttempted;
+        bool                           _tileSourceInitFailed;
+        unsigned                       _tileSize;  
+        osg::ref_ptr<osgDB::Options>   _dbOptions;
+
+        void setCachePolicy( const CachePolicy& cp );
+        const CachePolicy& getCachePolicy() const;
 
     private:
-        std::string          _name;
-        std::string          _referenceURI;
-        OpenThreads::Mutex   _initTileSourceMutex;
-        TerrainLayerOptions* _runtimeOptions;
+        std::string                    _name;
+        std::string                    _referenceURI;
+        OpenThreads::Mutex             _initTileSourceMutex;
+        TerrainLayerOptions            _initOptions;
+        TerrainLayerOptions*           _runtimeOptions;
+
+        osg::ref_ptr<Cache>            _cache;
+
+        // maps profile signature to cache bin pointer.
+        struct CacheBinInfo
+        {
+            osg::ref_ptr<CacheBin>     _bin;
+            optional<CacheBinMetadata> _metadata;
+        };
+        typedef std::map< std::string, CacheBinInfo > CacheBinInfoMap; // indexed by profile signature
+
+        CacheBinInfoMap                _cacheBins;
+        Threading::ReadWriteMutex      _cacheBinsMutex;
 
         void init();
+        //void applyCacheFormat( CacheBin* bin, const std::string& format );
         virtual void fireCallback( TerrainLayerCallbackMethodPtr method ) =0;
 
         // methods accesible by Map:
         friend class Map;
-        void setReferenceURI( const std::string& uri );
-        void setCacheOnly( bool value );
+        void setDBOptions( const osgDB::Options* dbOptions );
+        void initializeCachePolicy( const osgDB::Options* );
+        void storeProxySettings( osgDB::Options* );
+
+        /**
+         * Sets the cache to be used on this MapLayer
+         * TODO: is it legal to set this at any time?
+         */
+        void setCache( Cache* cache );
     };
 
     typedef std::vector<osg::ref_ptr<TerrainLayer> > TerrainLayerVector;
diff --git a/src/osgEarth/TerrainLayer.cpp b/src/osgEarth/TerrainLayer.cpp
index b8285d8..4df7302 100644
--- a/src/osgEarth/TerrainLayer.cpp
+++ b/src/osgEarth/TerrainLayer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #include <osgEarth/TileSource>
 #include <osgEarth/Registry>
 #include <osgEarth/StringUtils>
+#include <osgEarth/URI>
 #include <osgDB/WriteFile>
 #include <osg/Version>
 #include <OpenThreads/ScopedLock>
@@ -28,19 +29,19 @@
 using namespace osgEarth;
 using namespace OpenThreads;
 
-#define LC "[TerrainLayer] "
+#define LC "[TerrainLayer] \"" << getName() << "\": "
 
 //------------------------------------------------------------------------
 
 TerrainLayerOptions::TerrainLayerOptions( const ConfigOptions& options ) :
-ConfigOptions( options ),
-_minLevel( 0 ),
-_maxLevel( 99 ),
-_cacheEnabled( true ),
-_cacheOnly( false ),
-_loadingWeight( 1.0f ),
-_exactCropping( false ),
-_enabled( true ),
+ConfigOptions       ( options ),
+_minLevel           ( 0 ),
+_maxLevel           ( 99 ),
+_cachePolicy        ( CachePolicy::DEFAULT ),
+_loadingWeight      ( 1.0f ),
+_exactCropping      ( false ),
+_enabled            ( true ),
+_visible            ( true ),
 _reprojectedTileSize( 256 )
 
 {
@@ -61,38 +62,42 @@ void
 TerrainLayerOptions::setDefaults()
 {
     _enabled.init( true );
+    _visible.init( true );
     _exactCropping.init( false );
     _reprojectedTileSize.init( 256 );
-    _cacheEnabled.init( true );
-    _cacheOnly.init( false );
+    _cachePolicy.init( CachePolicy() );
     _loadingWeight.init( 1.0f );
     _minLevel.init( 0 );
     _maxLevel.init( 99 );
 }
 
 Config
-TerrainLayerOptions::getConfig() const
+TerrainLayerOptions::getConfig( bool isolate ) const
 {
-    Config conf = ConfigOptions::getConfig();
+    Config conf = isolate ? ConfigOptions::newConfig() : ConfigOptions::getConfig();
 
-    conf.attr("name") = _name;
-    conf.updateIfSet( "cacheid", _cacheId );
+    conf.set("name", _name);
     conf.updateIfSet( "min_level", _minLevel );
     conf.updateIfSet( "max_level", _maxLevel );
-    conf.updateIfSet( "min_level_resolution", _minLevelResolution );
-    conf.updateIfSet( "max_level_resolution", _maxLevelResolution );
-    conf.updateIfSet( "cache_enabled", _cacheEnabled );
-    conf.updateIfSet( "cache_only", _cacheOnly );
-    conf.updateIfSet( "cache_format", _cacheFormat );
+    conf.updateIfSet( "min_resolution", _minResolution );
+    conf.updateIfSet( "max_resolution", _maxResolution );
     conf.updateIfSet( "loading_weight", _loadingWeight );
     conf.updateIfSet( "enabled", _enabled );
+    conf.updateIfSet( "visible", _visible );
     conf.updateIfSet( "edge_buffer_ratio", _edgeBufferRatio);
-    conf.updateObjIfSet( "profile", _profile );
     conf.updateIfSet( "max_data_level", _maxDataLevel);
     conf.updateIfSet( "reprojected_tilesize", _reprojectedTileSize);
 
-    //Merge the TileSource options
-    if (driver().isSet()) conf.merge( driver()->getConfig() );
+    conf.updateIfSet( "vdatum", _vertDatum );
+
+    conf.updateIfSet   ( "cacheid",      _cacheId );
+    conf.updateIfSet   ( "cache_format", _cacheFormat );
+    conf.updateObjIfSet( "cache_policy", _cachePolicy );
+    conf.updateObjIfSet( "proxy",        _proxySettings );
+
+    // Merge the TileSource options
+    if ( !isolate && driver().isSet() )
+        conf.merge( driver()->getConfig() );
 
     return conf;
 }
@@ -101,21 +106,30 @@ void
 TerrainLayerOptions::fromConfig( const Config& conf )
 {
     _name = conf.value("name");
-    conf.getIfSet( "cacheid", _cacheId );
     conf.getIfSet( "min_level", _minLevel );
     conf.getIfSet( "max_level", _maxLevel );        
-    conf.getIfSet( "min_level_resolution", _minLevelResolution );
-    conf.getIfSet( "max_level_resolution", _maxLevelResolution );
-    conf.getIfSet( "cache_enabled", _cacheEnabled );
-    conf.getIfSet( "cache_only", _cacheOnly );
-    conf.getIfSet( "cache_format", _cacheFormat );
+    conf.getIfSet( "min_resolution", _minResolution );
+    conf.getIfSet( "max_resolution", _maxResolution );
     conf.getIfSet( "loading_weight", _loadingWeight );
     conf.getIfSet( "enabled", _enabled );
+    conf.getIfSet( "visible", _visible );
     conf.getIfSet( "edge_buffer_ratio", _edgeBufferRatio);
-    conf.getObjIfSet( "profile", _profile );
     conf.getIfSet( "max_data_level", _maxDataLevel);
     conf.getIfSet( "reprojected_tilesize", _reprojectedTileSize);
 
+    conf.getIfSet( "vdatum", _vertDatum );
+    conf.getIfSet( "vsrs", _vertDatum );    // back compat
+
+    conf.getIfSet   ( "cacheid",      _cacheId );
+    conf.getIfSet   ( "cache_format", _cacheFormat );
+    conf.getObjIfSet( "cache_policy", _cachePolicy );
+    conf.getObjIfSet( "proxy",        _proxySettings );
+
+    // legacy support:
+    if ( conf.value<bool>( "cache_only", false ) == true )
+        _cachePolicy->usage() = CachePolicy::USAGE_CACHE_ONLY;
+    if ( conf.value<bool>( "cache_enabled", true ) == false )
+        _cachePolicy->usage() = CachePolicy::USAGE_NO_CACHE;
 
     if ( conf.hasValue("driver") )
         driver() = TileSourceOptions(conf);
@@ -130,37 +144,63 @@ TerrainLayerOptions::mergeConfig( const Config& conf )
 
 //------------------------------------------------------------------------
 
-TerrainLayer::TerrainLayer( TerrainLayerOptions* options ) :
-_runtimeOptions( options )
+TerrainLayer::TerrainLayer(const TerrainLayerOptions& initOptions,
+                           TerrainLayerOptions*       runtimeOptions ) :
+_initOptions   ( initOptions ),
+_runtimeOptions( runtimeOptions )
 {
     init();
 }
 
-TerrainLayer::TerrainLayer( TerrainLayerOptions* options, TileSource* tileSource ) :
-_runtimeOptions( options ),
+TerrainLayer::TerrainLayer(const TerrainLayerOptions& initOptions,
+                           TerrainLayerOptions*       runtimeOptions,
+                           TileSource*                tileSource ) :
+_initOptions   ( initOptions ),
+_runtimeOptions( runtimeOptions ),
 _tileSource    ( tileSource )
 {
     init();
 }
 
+TerrainLayer::~TerrainLayer()
+{
+    if ( _cache.valid() )
+    {
+        Threading::ScopedWriteLock exclusive( _cacheBinsMutex );
+        for( CacheBinInfoMap::iterator i = _cacheBins.begin(); i != _cacheBins.end(); ++i )
+        {
+            CacheBinInfo& info = i->second;
+            if ( info._bin.valid() )
+            {
+                _cache->removeBin( info._bin.get() );
+            }
+        }
+    }
+}
+
 void
 TerrainLayer::init()
 {
-    _tileSourceInitialized = false;
-    _tileSize              = 256;
+    _tileSourceInitAttempted = false;
+    _tileSourceInitFailed    = false;
+    _tileSize                = 256;
+    _dbOptions               = Registry::instance()->cloneOrCreateOptions();
+    
+    initializeCachePolicy( _dbOptions.get() );
+    storeProxySettings( _dbOptions.get() );
 }
 
 void
-TerrainLayer::setCache(Cache* cache)
+TerrainLayer::setCache( Cache* cache )
 {
-    if (_cache.get() != cache)
+    if (_cache.get() != cache && getCachePolicy() != CachePolicy::NO_CACHE )
     {
-        _cache = cache;        
+        _cache = cache;
 
-        // Read properties from the cache if not already set
-        if ( _cache.valid() && _runtimeOptions->cacheEnabled() == true )
+        // Initialize a cache bin for this layer.
+        if ( _cache.valid() )
         {
-            // create the unique cache ID for the tile configuration.
+            // create the unique cache ID for the cache bin.
             std::string cacheId;
 
             if ( _runtimeOptions->cacheId().isSet() && !_runtimeOptions->cacheId()->empty() )
@@ -171,39 +211,45 @@ TerrainLayer::setCache(Cache* cache)
             else
             {
                 // system will generate a cacheId.
-                Config hashConf = _runtimeOptions->driver()->getConfig();
+                // technically, this is not quite right, we need to remove everything that's
+                // an image layer property and just use the tilesource properties.
+                Config layerConf  = _runtimeOptions->getConfig( true );
+                Config driverConf = _runtimeOptions->driver()->getConfig();
+                Config hashConf   = driverConf - layerConf;
+
+                OE_DEBUG << LC << "Hash JSON is: " << hashConf.toJSON(false) << std::endl;
 
                 // remove cache-control properties before hashing.
                 hashConf.remove( "cache_only" );
                 hashConf.remove( "cache_enabled" );
+                hashConf.remove( "cache_policy" );
+                hashConf.remove( "cacheid" );
 
-                std::stringstream buf;
-                //OE_NOTICE << hashConf.toHashString() << std::endl;
-                buf << std::fixed << std::setfill('0') << std::hex
-                    << osgEarth::hashString( hashConf.toHashString() );
-                cacheId = buf.str();
-            }
-
-            // try to load the properties from the cache; if that is unsuccesful,
-            // create new properties.
-            osg::ref_ptr<const Profile> profile;
-            _cache->loadProperties( cacheId, _cacheSpec, profile, _tileSize );
+                cacheId = Stringify() << std::hex << osgEarth::hashString(hashConf.toJSON());
 
-            // Set the profile if it hasn't already been set
-            if (!_profile.valid() && profile.valid())
-            {
-                _profile = profile.get();
+                _runtimeOptions->cacheId().init( cacheId ); // set as default value
             }
-
-            // Set the cache format if it hasn't been explicitly set
-            if ( !_runtimeOptions->cacheFormat().isSet() )
-            {
-                _runtimeOptions->cacheFormat() = _cacheSpec.format();
-            }
-
-            _cacheSpec = CacheSpec( cacheId, *_runtimeOptions->cacheFormat(), getName() );
         }
     }
+
+    if ( !_cache.valid() )
+    {
+        _cache = 0L; 
+        setCachePolicy( CachePolicy::NO_CACHE );
+    }
+}
+
+void
+TerrainLayer::setCachePolicy( const CachePolicy& cp )
+{
+    _runtimeOptions->cachePolicy() = cp;
+    _runtimeOptions->cachePolicy()->apply( _dbOptions.get() );
+}
+
+const CachePolicy&
+TerrainLayer::getCachePolicy() const
+{
+    return _runtimeOptions->cachePolicy().value();
 }
 
 void
@@ -215,15 +261,35 @@ TerrainLayer::setTargetProfileHint( const Profile* profile )
 TileSource* 
 TerrainLayer::getTileSource() const
 {
-    if ((_tileSource.valid() && !_tileSourceInitialized) ||
-        (!_tileSource.valid() && _runtimeOptions->cacheOnly() == false) )
+    if ( _tileSourceInitFailed )
+        return 0L;
+
+    if ((_tileSource.valid() && !_tileSourceInitAttempted) ||
+        (!_tileSource.valid() && !isCacheOnly()))
     {
         OpenThreads::ScopedLock< OpenThreads::Mutex > lock(const_cast<TerrainLayer*>(this)->_initTileSourceMutex );
+        
         // double-check pattern
-        if ((_tileSource.valid() && !_tileSourceInitialized) ||
-            (!_tileSource.valid() && _runtimeOptions->cacheOnly() == false))
+        if ((_tileSource.valid() && !_tileSourceInitAttempted) ||
+            (!_tileSource.valid() && !isCacheOnly()))
         {
+            // Initialize the tile source once.
             const_cast<TerrainLayer*>(this)->initTileSource();
+
+            // read the cache policy hint from the tile source unless user expressly set 
+            // a policy in the initialization options.
+            if ( _tileSource.valid() && !_initOptions.cachePolicy().isSet() )
+            {
+                CachePolicy hint = _tileSource->getCachePolicyHint();
+
+                if ( hint.usage().isSetTo(CachePolicy::USAGE_NO_CACHE) )
+                {
+                    const_cast<TerrainLayer*>(this)->setCachePolicy( hint );
+                    OE_INFO << LC << "Caching disabled (by policy hint)" << std::endl;
+                }
+            }
+
+            OE_INFO << LC << "cache policy = " << getCachePolicy().usageString() << std::endl;
         }
     }
 
@@ -233,17 +299,30 @@ TerrainLayer::getTileSource() const
 const Profile*
 TerrainLayer::getProfile() const
 {
-    if ( !_profile.valid() )
+    // NB: in cache-only mode, there IS NO layer profile.
+    if ( !_profile.valid() && !isCacheOnly() )
     {
-        if ( _runtimeOptions->cacheOnly() == false && !_tileSourceInitialized )
+        if ( !_tileSourceInitAttempted )
         {
             // Call getTileSource to make sure the TileSource is initialized
             getTileSource();
         }
 
-        if ( _tileSource.valid() && !_profile.valid() )
+        if ( _tileSource.valid() && !_profile.valid() && !_tileSourceInitFailed )
         {
             const_cast<TerrainLayer*>(this)->_profile = _tileSource->getProfile();
+
+            // check for a vertical datum override:
+            if ( _profile.valid() && _runtimeOptions->verticalDatum().isSet() )
+            {
+                std::string vdatum = toLower( *_runtimeOptions->verticalDatum() );
+                if ( _profile->getSRS()->getVertInitString() != vdatum )
+                {
+                    ProfileOptions po = _profile->toProfileOptions();
+                    po.vsrsString() = vdatum;
+                    const_cast<TerrainLayer*>(this)->_profile = Profile::create(po);
+                }
+            }
         }
     }
     
@@ -261,14 +340,14 @@ TerrainLayer::getMaxDataLevel() const
     }
 
     //Try the TileSource
-	TileSource* ts = getTileSource();
-	if ( ts )
-	{
-		return ts->getMaxDataLevel();
-	}
+    TileSource* ts = getTileSource();
+    if ( ts )
+    {
+        return ts->getMaxDataLevel();
+    }
 
     //Just default
-	return 20;
+    return 20;
 }
 
 unsigned
@@ -285,20 +364,163 @@ TerrainLayer::isDynamic() const
     return ts ? ts->isDynamic() : false;
 }
 
-//TODO: move this to ImageLayer/ElevationLayer
-std::string
-TerrainLayer::suggestCacheFormat() const
+CacheBin*
+TerrainLayer::getCacheBin( const Profile* profile )
+{
+    if ( getCachePolicy() == CachePolicy::NO_CACHE )
+    {
+        return 0L;
+    }
+
+    // the cache bin ID is the cache ID concatenated with the FULL profile signature.
+    std::string binId = *_runtimeOptions->cacheId() + std::string("_") + profile->getFullSignature();
+
+    return getCacheBin( profile, binId );
+}
+
+CacheBin*
+TerrainLayer::getCacheBin( const Profile* profile, const std::string& binId )
+{
+    // in no-cache mode, there are no cache bins.
+    if ( getCachePolicy() == CachePolicy::NO_CACHE )
+    {
+        return 0L;
+    }
+
+    // if cache is not setted, return NULL
+    if (_cache == NULL)
+    {
+        return 0L;
+    }
+
+    // see if the cache bin already exists and return it if so
+    {
+        Threading::ScopedReadLock shared(_cacheBinsMutex);
+        CacheBinInfoMap::iterator i = _cacheBins.find( binId );
+        if ( i != _cacheBins.end() )
+            return i->second._bin.get();
+    }
+
+    // create/open the cache bin.
+    {
+        Threading::ScopedWriteLock exclusive(_cacheBinsMutex);
+
+        // double-check:
+        CacheBinInfoMap::iterator i = _cacheBins.find( binId );
+        if ( i != _cacheBins.end() )
+            return i->second._bin.get();
+
+        // add the new bin:
+        osg::ref_ptr<CacheBin> newBin = _cache->addBin( binId );
+
+        // and configure:
+        if ( newBin.valid() )
+        {
+            // attempt to read the cache metadata:
+            CacheBinMetadata meta( newBin->readMetadata() );
+
+            if ( !meta._empty ) // cache exists
+            {
+                // verify that the cache if compatible with the tile source:
+                if ( getTileSource() && getProfile() )
+                {
+                    //todo: check the profile too
+                    if ( *meta._sourceDriver != getTileSource()->getOptions().getDriver() )
+                    {
+                        OE_WARN << LC << "Cache has an incompatible driver or profile... disabling"
+                            << std::endl;
+                        setCachePolicy( CachePolicy::NO_CACHE );
+                        return 0L;
+                    }
+                }   
+
+                else if ( isCacheOnly() && !_profile.valid() )
+                {
+                    // in cacheonly mode, create a profile from the first cache bin accessed
+                    // (they SHOULD all be the same...)
+                    _profile = Profile::create( *meta._sourceProfile );
+
+                    // copy the max data level from the cache
+                    _runtimeOptions->maxDataLevel() = *meta._maxDataLevel;
+                }
+            }
+
+            else
+            {
+                // cache does not exist, so try to create it. A valid TileSource is necessary
+                // for this.
+                if ( getTileSource() && getProfile() )
+                {
+                    // no existing metadata; create some.
+                    meta._cacheBinId    = binId;
+                    meta._sourceName    = this->getName();
+                    meta._maxDataLevel  = getMaxDataLevel();
+                    meta._sourceDriver  = getTileSource()->getOptions().getDriver();
+                    meta._sourceProfile = getProfile()->toProfileOptions();
+                    meta._cacheProfile  = profile->toProfileOptions();
+
+                    // store it in the cache bin.
+                    newBin->writeMetadata( meta.getConfig() );
+                }
+                else if ( isCacheOnly() )
+                {
+                    OE_WARN << LC << "Failed to create a cache bin for layer"
+                        << " because cache_only mode is enabled and no existing cache could be found."
+                        << std::endl;
+                    return 0L;
+                }
+                else
+                {
+                    OE_WARN << LC << "Failed to create a cache bin for layer"
+                        << " because there is no valid tile source."
+                        << std::endl;
+                    return 0L;
+                }
+            }
+
+
+            // store the bin.
+            CacheBinInfo& newInfo = _cacheBins[binId];
+            newInfo._metadata = meta;
+            newInfo._bin      = newBin.get();
+        }
+        else
+        {
+            // bin creation failed, so disable caching for this layer.
+            setCachePolicy( CachePolicy::NO_CACHE );
+            OE_WARN << LC << "Failed to create a caching bin for layer; cache disabled." << std::endl;
+        }
+
+        return newBin.get(); // not release()
+    }
+}
+
+bool
+TerrainLayer::getCacheBinMetadata( const Profile* profile, CacheBinMetadata& output )
 {
-    std::string ext = _tileSource.valid() ? _tileSource->getExtension() : "";
-    return !ext.empty() ? ext : "png";
+    // the cache bin ID is the cache IF concatenated with the profile signature.
+    std::string binId = *_runtimeOptions->cacheId() + std::string("_") + profile->getFullSignature();
+    CacheBin* bin = getCacheBin( profile );
+    if ( bin )
+    {
+        Threading::ScopedReadLock shared(_cacheBinsMutex);
+        CacheBinInfoMap::iterator i = _cacheBins.find( binId );
+        if ( i != _cacheBins.end() )
+        {
+            output = i->second._metadata.value();
+            return true;
+        }
+    }
+    return false;
 }
 
 void
 TerrainLayer::initTileSource()
-{	
+{
     OE_DEBUG << LC << "Initializing tile source ..." << std::endl;
 
-    // instantiate it from driver options if it has not already been created:
+    // Instantiate it from driver options if it has not already been created.
+    // This will also set a manual "override" profile if the user provided one.
     if ( !_tileSource.valid() )
     {
         if ( _runtimeOptions->driver().isSet() )
@@ -307,35 +529,43 @@ TerrainLayer::initTileSource()
         }
     }
 
-    // next check for an override-profile. The profile usually comes from the
-    // TileSource itself, but you have the option of overriding:
-	osg::ref_ptr<const Profile> overrideProfile;
-	if ( _runtimeOptions->profile().isSet() )
-	{
-		overrideProfile = Profile::create( *_runtimeOptions->profile() );
-	}
-
     // Initialize the profile with the context information:
-	if ( _tileSource.valid() )
-	{
-		_tileSource->initialize( _referenceURI, overrideProfile.get() );
-
-		if ( _tileSource->isOK() )
-		{
-			_tileSize = _tileSource->getPixelsPerTile();
-		}
-		else
-		{
-	        OE_WARN << "Could not initialize TileSource for layer " << getName() << std::endl;
-            _tileSource = NULL;
-		}
-	}
-    
-    // Set the cache format to the native format of the TileSource if it isn't already set.
-    if ( _runtimeOptions->cacheFormat()->empty() )
+    if ( _tileSource.valid() )
     {
-        _runtimeOptions->cacheFormat() = suggestCacheFormat();
-        _cacheSpec = CacheSpec( _cacheSpec.cacheId(), *_runtimeOptions->cacheFormat(), _cacheSpec.name() );
+        // set up the URI options.
+        if ( !_dbOptions.valid() )
+        {
+            _dbOptions = Registry::instance()->cloneOrCreateOptions();
+            if ( _cache.valid() ) _cache->apply( _dbOptions.get() );
+            _initOptions.cachePolicy()->apply( _dbOptions.get() );
+            URIContext( _runtimeOptions->referrer() ).apply( _dbOptions.get() );
+        }
+
+        // report on a manual override profile:
+        if ( _tileSource->getProfile() )
+        {
+            OE_INFO << LC << "set profile to: " 
+                << _tileSource->getProfile()->toString() << std::endl;
+        }
+
+        // Start up the tile source (if it hasn't already been started)
+        TileSource::Status status = _tileSource->getStatus();
+        if ( status != TileSource::STATUS_OK )
+        {
+            status = _tileSource->startup( _dbOptions.get() );
+        }
+
+        if ( status == TileSource::STATUS_OK )
+        {
+            _tileSize = _tileSource->getPixelsPerTile();
+        }
+        else
+        {
+            OE_WARN << LC << "Could not initialize driver" << std::endl;
+            _tileSource = NULL;
+            _tileSourceInitFailed = true;
+            _runtimeOptions->enabled() = true;
+        }
     }
 
     // Set the profile from the TileSource if possible:
@@ -343,71 +573,117 @@ TerrainLayer::initTileSource()
     {
         _profile = _tileSource->getProfile();
     }
-    
+
     // Otherwise, force cache-only mode (since there is no tilesource). The layer will try to 
     // establish a profile from the metadata in the cache instead.
     else if (_cache.valid())
     {
-        OE_NOTICE << "Could not initialize TileSource " << _name << " but cache is valid.  Setting layer to cache_only." << std::endl;
-        _runtimeOptions->cacheOnly() = true;
+        OE_NOTICE << LC << "Could not initialize TileSource " << _name << ", but a cache exists. Setting layer to cache-only mode." << std::endl;
+        setCachePolicy( CachePolicy::CACHE_ONLY );
     }
 
-	// check the environment to see if cache only should be enabled
-    if ( _runtimeOptions->cacheOnly() == false && ::getenv("OSGEARTH_CACHE_ONLY") != 0 )
-	{
-        _runtimeOptions->cacheOnly() = true;
-        OE_INFO << "CACHE-ONLY mode enabled!!" << std::endl;
-	}
-
-    _tileSourceInitialized = true;
+    _tileSourceInitAttempted = true;
 }
 
 bool
 TerrainLayer::isKeyValid(const TileKey& key) const
 {
-	if (!key.valid()) return false;
-	
-    // Check to see if explicit levels of detail are set
-    if ( _runtimeOptions->minLevel().isSet() && (int)key.getLevelOfDetail() < _runtimeOptions->minLevel().value() )
+    if (!key.valid() || _tileSourceInitFailed) 
         return false;
-	if ( _runtimeOptions->maxLevel().isSet() && (int)key.getLevelOfDetail() > _runtimeOptions->maxLevel().value() ) 
+
+    // Check to see if an explicity max LOD is set. Do NOT compare against the minLevel,
+    // because we still need to create empty tiles until we get to the data. The ImageLayer
+    // will deal with this.
+    if ( _runtimeOptions->maxLevel().isSet() && key.getLOD() > _runtimeOptions->maxLevel().value() ) 
+    {
         return false;
-    
-    // Check to see if levels of detail based on resolution are set
-    if ( _runtimeOptions->minLevelResolution().isSet() )
-    {        
-        unsigned int minLevel = getProfile()->getLevelOfDetailForHorizResolution(
-            _runtimeOptions->minLevelResolution().value(), getTileSize() );
-        OE_DEBUG << "Computed min level of " << minLevel << std::endl;
-        if (key.getLevelOfDetail() < minLevel) return false;
     }
 
-    if (_runtimeOptions->maxLevelResolution().isSet())
-    {        
-        unsigned int maxLevel = getProfile()->getLevelOfDetailForHorizResolution(
-            _runtimeOptions->maxLevelResolution().value(), getTileSize() );
-        OE_DEBUG << "Computed max level of " << maxLevel << std::endl;
-        if (key.getLevelOfDetail() > maxLevel) return false;
+    // Check to see if levels of detail based on resolution are set
+    const Profile* profile = getProfile();
+    if ( profile )
+    {
+        if ( !profile->isEquivalentTo( key.getProfile() ) )
+        {
+            OE_DEBUG << LC
+                << "TerrainLayer::isKeyValid called with key of a different profile" << std::endl;
+            //return true;
+        }
+
+        if ( _runtimeOptions->maxResolution().isSet() )
+        {
+            double keyres = key.getExtent().width() / (double)getTileSize();
+            double keyresInLayerProfile = key.getProfile()->getSRS()->transformUnits(keyres, profile->getSRS());
+
+            if ( _runtimeOptions->maxResolution().isSet() && keyresInLayerProfile < _runtimeOptions->maxResolution().value() )
+            {
+                return false;
+            }
+        }
     }
 
 	return true;
 }
 
+bool
+TerrainLayer::isCached(const TileKey& key) const
+{
+    CacheBin* bin = const_cast<TerrainLayer*>(this)->getCacheBin( key.getProfile() );
+    return bin ? bin->isCached(key.str()) : false;
+}
+
+void
+TerrainLayer::setVisible( bool value )
+{
+    _runtimeOptions->visible() = value;
+    fireCallback( &TerrainLayerCallback::onVisibleChanged );
+}
+
 void
-TerrainLayer::setEnabled( bool value )
+TerrainLayer::setDBOptions( const osgDB::Options* dbOptions )
 {
-    _runtimeOptions->enabled() = value;
-    fireCallback( &TerrainLayerCallback::onEnabledChanged );
+    _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+    initializeCachePolicy( dbOptions );    
+    storeProxySettings( _dbOptions );
 }
 
 void
-TerrainLayer::setReferenceURI( const std::string& uri )
+TerrainLayer::initializeCachePolicy( const osgDB::Options* options )
 {
-    _referenceURI = uri;
+    // establish this layer's cache policy.
+    if ( _initOptions.cachePolicy().isSet() )
+    {
+        // if this layer defines its own CP, use it.
+        setCachePolicy( *_initOptions.cachePolicy() );
+    }
+    else
+    {
+        // see if the new DBOptions has one set; if so, inherit that:
+        optional<CachePolicy> incomingCP;
+        if ( CachePolicy::fromOptions(options, incomingCP) )
+        {
+            setCachePolicy( incomingCP.get() );
+        }
+        else if ( Registry::instance()->defaultCachePolicy().isSet() )
+        {
+            // not set, no try to inherit from the registry:
+            setCachePolicy( Registry::instance()->defaultCachePolicy().value() );
+        }
+        else
+        {
+            // not found anywhere; set to the default.
+            setCachePolicy( CachePolicy::DEFAULT );
+        }
+    }
 }
 
 void
-TerrainLayer::setCacheOnly( bool value )
+TerrainLayer::storeProxySettings(osgDB::Options* opt)
 {
-    _runtimeOptions->cacheOnly() = value;
+    //Store the proxy settings in the options structure.
+    if (_initOptions.proxySettings().isSet())
+    {        
+        _initOptions.proxySettings().get().apply( opt );
+    }
 }
+
diff --git a/src/osgEarth/TerrainOptions b/src/osgEarth/TerrainOptions
index 40a0a37..16303c2 100644
--- a/src/osgEarth/TerrainOptions
+++ b/src/osgEarth/TerrainOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,8 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
-#include <osgEarth/HeightFieldUtils>
+#include <osgEarth/GeoCommon>
+#include <osg/Texture>
 
 namespace osgEarth
 {
@@ -54,6 +55,7 @@ namespace osgEarth
     public:
         LoadingPolicy( const Config& conf =Config() );
         LoadingPolicy( const Mode& mode );
+        virtual ~LoadingPolicy() { }
 
     public: // Configrable
         virtual Config getConfig() const;
@@ -119,6 +121,9 @@ namespace osgEarth
     {
     public:
         TerrainOptions( const ConfigOptions& options =ConfigOptions() );
+
+        /** dtor */
+        virtual ~TerrainOptions() { }
        
         /**
          * Sets or gets the scale factor for height-field values.
@@ -177,6 +182,12 @@ namespace osgEarth
         const optional<float>& lodTransitionTime() const { return _lodTransitionTimeSeconds; }
 
         /**
+         * Whether cluster culling is enabled on terrain tiles (default = true)
+         */
+        optional<bool>& clusterCulling() { return _clusterCulling; }
+        const optional<bool>& clusterCulling() const { return _clusterCulling; }
+
+        /**
          * Available techniques for compositing image layers at runtime.
          */
         enum CompositingTechnique
@@ -185,7 +196,8 @@ namespace osgEarth
             COMPOSITING_TEXTURE_ARRAY,
             COMPOSITING_MULTITEXTURE_GPU,
             COMPOSITING_MULTITEXTURE_FFP,
-            COMPOSITING_MULTIPASS
+            COMPOSITING_MULTIPASS,
+            COMPOSITING_USER
         };
 
         /**
@@ -195,10 +207,24 @@ namespace osgEarth
         const optional<CompositingTechnique>& compositingTechnique() const { return _compositingTech; }
 
         /**
-         * The maximum level of detail to which the terrain should subdivide.
+         * The maximum level of detail to which the terrain should subdivide. If you leave this
+         * unset, the terrain will subdivide until the map layers stop providing data (default
+         * behavior). If you set a value, the terrain will stop subdividing at the specified LOD
+         * even if higher-resolution data is available. (It still might stop subdividing before it
+         * reaches this level if data runs out.)
          */
-        optional<int>& maxLOD() { return _maxLOD; }
-        const optional<int>& maxLOD() const { return _maxLOD; }
+        optional<unsigned>& maxLOD() { return _maxLOD; }
+        const optional<unsigned >& maxLOD() const { return _maxLOD; }
+
+        /**
+         * The minimum level of detail to which the terrain should subdivide (no matter what).
+         * If you leave this unset, the terrain will subdivide until the map layers
+         * stop providing data (default behavior). If you set a value, the terrain will subdivide
+         * to the specified LOD no matter what (and may continue farther if higher-resolution
+         * data is available).
+         */
+        optional<unsigned>& minLOD() { return _minLOD; }
+        const optional<unsigned>& minLOD() const { return _minLOD; }
 
         /**
          * Whether to explicity enable or disable GL lighting on the map node.
@@ -207,16 +233,52 @@ namespace osgEarth
         const optional<bool>& enableLighting() const { return _enableLighting; }  
     
         /**
-         * The interpolation method to use when sampling heightfields.
-         */
-        optional<ElevationInterpolation>& elevationInterpolation(void) { return _elevationInterpolation; }
-        const optional<ElevationInterpolation>& elevationInterpolation(void) const { return _elevationInterpolation;}
-
-        /**
          * Whether to enable mipmaping and mipmap generation on textures
          */
         optional<bool>& enableMipmapping() { return _enableMipmapping; }
         const optional<bool>& enableMipmapping() const { return _enableMipmapping; }
+
+        /**
+         * The min filter to be applied to textures
+         */
+        optional<osg::Texture::FilterMode> minFilter() { return _minFilter;}
+        const optional<osg::Texture::FilterMode> minFilter() const { return _minFilter;}
+
+        /**
+         * The mag filter to be applied to textures
+         */
+        optional<osg::Texture::FilterMode> magFilter() { return _magFilter;}
+        const optional<osg::Texture::FilterMode> magFilter() const { return _magFilter;}
+            
+        /**
+         * Whether to enable blending
+         */
+        optional<bool>& enableBlending() { return _enableBlending; }
+        const optional<bool>& enableBlending() const { return _enableBlending; }
+
+        /**
+         * Whether to enable the "fast path" for spherical Mercator image layers
+         * Default = true. If enabled, Mercator image tiles will be rendered on a
+         * geocentric map with no reprojection. The trade-off is higher texture
+         * memory usage and NPOT texture usage.
+         */
+        optional<bool>& enableMercatorFastPath() { return _mercatorFastPath; }
+        const optional<bool>& enableMercatorFastPath() const { return _mercatorFastPath; }
+
+        /**
+         * Traversal mask to use for primary geometry -- geometry that comprises the visible
+         * geometry and should participate in intersection, shadowing, etc.
+         */
+        optional<unsigned>& primaryTraversalMask() { return _primaryTraversalMask; }
+        const optional<unsigned>& primaryTraversalMask() const { return _primaryTraversalMask; }
+
+        /**
+         * Traversal mask to use for secondary geometry -- geometry that exists for
+         * secondary purpose (e.g. terrain skirts) that should not participate in 
+         * intersection, shadowing, etc.
+         */
+        optional<unsigned>& secondaryTraversalMask() { return _secondaryTraversalMask; }
+        const optional<unsigned>& secondaryTraversalMask() const { return _secondaryTraversalMask; }
    
     public:
         virtual Config getConfig() const;
@@ -229,7 +291,7 @@ namespace osgEarth
 
     private:
         void fromConfig( const Config& conf );
-            
+                    
         optional<float> _verticalScale;
         optional<float> _heightFieldSampleRatio;
         optional<float> _minTileRangeFactor;
@@ -237,17 +299,21 @@ namespace osgEarth
         optional<bool> _combineLayers;
         optional<LoadingPolicy> _loadingPolicy;
         optional<CompositingTechnique> _compositingTech;
-        optional<int> _maxLOD;
+        optional<unsigned> _minLOD;
+        optional<unsigned> _maxLOD;
         optional<bool> _enableLighting;
         optional<float> _attenuationDistance;
         optional<bool> _lodBlending;
         optional<float> _lodTransitionTimeSeconds;
         optional<bool>  _enableMipmapping;
-#if 0
-        optional<osg::Texture::FilterMode> _contourMagFilter;
-        optional<osg::Texture::FilterMode> _contourMinFilter;
-#endif
+        optional<bool> _clusterCulling;
+        optional<bool> _enableBlending;
+        optional<bool> _mercatorFastPath;
+        optional<osg::Texture::FilterMode> _magFilter;
+        optional<osg::Texture::FilterMode> _minFilter;
         optional<ElevationInterpolation> _elevationInterpolation;
+        optional<unsigned> _primaryTraversalMask;
+        optional<unsigned> _secondaryTraversalMask;
     };
 }
 
diff --git a/src/osgEarth/TerrainOptions.cpp b/src/osgEarth/TerrainOptions.cpp
index 11b4715..fb3e678 100644
--- a/src/osgEarth/TerrainOptions.cpp
+++ b/src/osgEarth/TerrainOptions.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -95,12 +95,19 @@ _combineLayers( true ),
 _loadingPolicy( LoadingPolicy() ),
 _compositingTech( COMPOSITING_AUTO ),
 _maxLOD( 23 ),
+_minLOD( 0 ),
 _enableLighting( false ),
 _attenuationDistance( 1000000 ),
 _lodBlending( false ),
 _lodTransitionTimeSeconds( 0.5f ),
-_elevationInterpolation( INTERP_BILINEAR ),
-_enableMipmapping( true )
+_enableMipmapping( true ),
+_clusterCulling( true ),
+_enableBlending( false ),
+_mercatorFastPath( true ),
+_minFilter( osg::Texture::LINEAR_MIPMAP_LINEAR ),
+_magFilter( osg::Texture::LINEAR),
+_primaryTraversalMask  ( 0xFFFFFFFF ),
+_secondaryTraversalMask( 0x80000000 )
 {
     fromConfig( _conf );
 }
@@ -110,18 +117,28 @@ TerrainOptions::getConfig() const
 {
     Config conf = DriverConfigOptions::getConfig();
     conf.key() = "terrain";
+    
+    if ( _heightFieldSampleRatio.isSetTo( 0.0f ) )
+        conf.update( "sample_ratio", "auto" );
+    else
+        conf.updateIfSet( "sample_ratio", _heightFieldSampleRatio );
 
     conf.updateObjIfSet( "loading_policy", _loadingPolicy );
     conf.updateIfSet( "vertical_scale", _verticalScale );
-    conf.updateIfSet( "sample_ratio", _heightFieldSampleRatio );
     conf.updateIfSet( "min_tile_range_factor", _minTileRangeFactor );
     conf.updateIfSet( "normalize_edges", _normalizeEdges );
     conf.updateIfSet( "combine_layers", _combineLayers );
     conf.updateIfSet( "max_lod", _maxLOD );
+    conf.updateIfSet( "min_lod", _minLOD );
     conf.updateIfSet( "lighting", _enableLighting );
     conf.updateIfSet( "attenuation_distance", _attenuationDistance );
     conf.updateIfSet( "lod_transition_time", _lodTransitionTimeSeconds );
     conf.updateIfSet( "mipmapping", _enableMipmapping );
+    conf.updateIfSet( "cluster_culling", _clusterCulling );
+    conf.updateIfSet( "blending", _enableBlending );
+    conf.updateIfSet( "mercator_fast_path", _mercatorFastPath );
+    conf.updateIfSet( "primary_traversal_mask", _primaryTraversalMask );
+    conf.updateIfSet( "secondary_traversal_mask", _secondaryTraversalMask );
 
     conf.updateIfSet( "compositor", "auto",             _compositingTech, COMPOSITING_AUTO );
     conf.updateIfSet( "compositor", "texture_array",    _compositingTech, COMPOSITING_TEXTURE_ARRAY );
@@ -129,10 +146,19 @@ TerrainOptions::getConfig() const
     conf.updateIfSet( "compositor", "multitexture_ffp", _compositingTech, COMPOSITING_MULTITEXTURE_FFP );
     conf.updateIfSet( "compositor", "multipass",        _compositingTech, COMPOSITING_MULTIPASS );
 
-    conf.updateIfSet( "elevation_interpolation", "nearest",     _elevationInterpolation, INTERP_NEAREST);
-    conf.updateIfSet( "elevation_interpolation", "average",     _elevationInterpolation, INTERP_AVERAGE);
-    conf.updateIfSet( "elevation_interpolation", "bilinear",    _elevationInterpolation, INTERP_BILINEAR);
-    conf.updateIfSet( "elevation_interpolation", "triangulate", _elevationInterpolation, INTERP_TRIANGULATE);
+    //Save the filter settings
+	conf.updateIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
+    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.updateIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
+    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+    conf.updateIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
+    conf.updateIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.updateIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.updateIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
+    conf.updateIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.updateIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
 
     return conf;
 }
@@ -140,17 +166,27 @@ TerrainOptions::getConfig() const
 void
 TerrainOptions::fromConfig( const Config& conf )
 {
+    if ( conf.value("sample_ratio") == "auto" )
+        _heightFieldSampleRatio = 0.0f;
+    else
+        conf.getIfSet( "sample_ratio", _heightFieldSampleRatio );
+
     conf.getObjIfSet( "loading_policy", _loadingPolicy );
     conf.getIfSet( "vertical_scale", _verticalScale );
-    conf.getIfSet( "sample_ratio", _heightFieldSampleRatio );
     conf.getIfSet( "min_tile_range_factor", _minTileRangeFactor );
     conf.getIfSet( "normalize_edges", _normalizeEdges );
     conf.getIfSet( "combine_layers", _combineLayers );
-    conf.getIfSet( "max_lod", _maxLOD );
+    conf.getIfSet( "max_lod", _maxLOD ); conf.getIfSet( "max_level", _maxLOD );
+    conf.getIfSet( "min_lod", _minLOD ); conf.getIfSet( "min_level", _minLOD );
     conf.getIfSet( "lighting", _enableLighting );
     conf.getIfSet( "attenuation_distance", _attenuationDistance );
     conf.getIfSet( "lod_transition_time", _lodTransitionTimeSeconds );
     conf.getIfSet( "mipmapping", _enableMipmapping );
+    conf.getIfSet( "cluster_culling", _clusterCulling );
+    conf.getIfSet( "blending", _enableBlending );
+    conf.getIfSet( "mercator_fast_path", _mercatorFastPath );
+    conf.getIfSet( "primary_traversal_mask", _primaryTraversalMask );
+    conf.getIfSet( "secondary_traversal_mask", _secondaryTraversalMask );
 
     conf.getIfSet( "compositor", "auto",             _compositingTech, COMPOSITING_AUTO );
     conf.getIfSet( "compositor", "texture_array",    _compositingTech, COMPOSITING_TEXTURE_ARRAY );
@@ -159,8 +195,17 @@ TerrainOptions::fromConfig( const Config& conf )
     conf.getIfSet( "compositor", "multitexture_ffp", _compositingTech, COMPOSITING_MULTITEXTURE_FFP );
     conf.getIfSet( "compositor", "multipass",        _compositingTech, COMPOSITING_MULTIPASS );
 
-    conf.getIfSet( "elevation_interpolation", "nearest",     _elevationInterpolation, INTERP_NEAREST);
-    conf.getIfSet( "elevation_interpolation", "average",     _elevationInterpolation, INTERP_AVERAGE);
-    conf.getIfSet( "elevation_interpolation", "bilinear",    _elevationInterpolation, INTERP_BILINEAR);
-    conf.getIfSet( "elevation_interpolation", "triangulate", _elevationInterpolation, INTERP_TRIANGULATE);
+    //Load the filter settings
+	conf.getIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
+    conf.getIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.getIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.getIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
+    conf.getIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.getIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+    conf.getIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
+    conf.getIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.getIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.getIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
+    conf.getIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.getIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
 }
diff --git a/src/osgEarth/TextureCompositor b/src/osgEarth/TextureCompositor
index fa61978..fde89d1 100644
--- a/src/osgEarth/TextureCompositor
+++ b/src/osgEarth/TextureCompositor
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,14 +21,19 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/GeoData>
-#include <osgEarth/Map>
 #include <osgEarth/ThreadingUtils>
 #include <osgEarth/TerrainOptions>
 #include <osg/StateSet>
 #include <osg/Program>
 
+#define MAX_IMAGE_LAYERS 16
+
 namespace osgEarth
 {
+    class ImageLayer;
+    class TileKey;
+    struct MapModelChange;
+
     /**
      * Tracks the usage of texture slots and their rendering order for a map.
      *
@@ -55,6 +60,9 @@ namespace osgEarth
     public:
         TextureLayout();
 
+        /** dtor */
+        virtual ~TextureLayout() { }
+
         /**
          * Gets a texture slot corresponding to the layer UID. There may be more than one,
          * the "which" parameter allows you to select one in particular. You can also limit
@@ -86,7 +94,10 @@ namespace osgEarth
     protected:
         friend class TextureCompositor;
 
-        void applyMapModelChange( const MapModelChange& change, bool reserveSeconarySlotIfNecessary );
+        void applyMapModelChange( 
+          const MapModelChange& change, 
+          bool reserveSeconarySlotIfNecessary,
+          bool disableLodBlending );
 
         void setReservedSlots( const std::set<int>& reservedSlots );
 
@@ -149,6 +160,14 @@ namespace osgEarth
          */
         TextureCompositor( const TerrainOptions& options );
 
+        /** dtor */
+        virtual ~TextureCompositor() { }
+
+        /**
+         * Sets a custom technique to use.
+         */
+        void setTechnique( TextureCompositorTechnique* tech );
+
         /**
          * Gets the actual technique selected by the compositor. This might not be the same
          * as the requested technique, since it will validate against system capabilities and
diff --git a/src/osgEarth/TextureCompositor.cpp b/src/osgEarth/TextureCompositor.cpp
index b739483..2803689 100644
--- a/src/osgEarth/TextureCompositor.cpp
+++ b/src/osgEarth/TextureCompositor.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,7 @@
 #include <osgEarth/Capabilities>
 #include <osgEarth/ImageUtils>
 #include <osgEarth/Registry>
+#include <osgEarth/Map>
 #include <osg/Texture2DArray>
 #include <osg/Texture2D>
 #include <osg/Texture3D>
@@ -86,24 +87,8 @@ TextureLayout::assignPrimarySlot( ImageLayer* layer, int orderIndex )
         // negative UID means the slot is empty.
         bool slotAvailable = (*i < 0) && (_reservedSlots.find(slot) == _reservedSlots.end());
         if ( slotAvailable )
-        {
-            // record this UID in the new slot:
+        {  
             *i = layer->getUID();
-
-            // record the render order of this slot:
-            if ( orderIndex >= (int)_order.size() )
-            {
-                _order.resize( orderIndex + 1, -1 );
-                _order[orderIndex] = slot;
-            }
-            else
-            {
-                if (_order[orderIndex] == -1)
-                    _order[orderIndex] = slot;
-                else
-                    _order.insert(_order.begin() + orderIndex, slot);
-            }
-
             found = true;
             break;
         }
@@ -116,10 +101,25 @@ TextureLayout::assignPrimarySlot( ImageLayer* layer, int orderIndex )
             _slots.push_back( -1 );
 
         slot = _slots.size();
-        _slots.push_back( layer->getUID() );
-        _order.push_back( _slots.size() - 1 );
+        _slots.push_back( layer->getUID() );     
     }
 
+    // record the render order of this slot:
+    if ( orderIndex >= (int)_order.size() )
+    {
+        _order.resize( orderIndex + 1, -1 );
+        _order[orderIndex] = slot;
+    }
+    else
+    {
+        if (_order[orderIndex] == -1)
+            _order[orderIndex] = slot;
+        else
+            _order.insert(_order.begin() + orderIndex, slot);
+    }
+
+
+
     OE_INFO << LC << "Allocated SLOT " << slot << "; primary slot for layer \"" << layer->getName() << "\"" << std::endl;
 }
 
@@ -158,13 +158,19 @@ TextureLayout::assignSecondarySlot( ImageLayer* layer )
 }
 
 void
-TextureLayout::applyMapModelChange( const MapModelChange& change, bool reserveSeconarySlotIfNecessary )
+TextureLayout::applyMapModelChange(const MapModelChange& change, 
+                                   bool reserveSeconarySlotIfNecessary,
+                                   bool disableLODBlending )
 {
     if ( change.getAction() == MapModelChange::ADD_IMAGE_LAYER )
     {
         assignPrimarySlot( change.getImageLayer(), change.getFirstIndex() );
 
-        bool blendingOn = change.getImageLayer()->getImageLayerOptions().lodBlending() == true;
+        // did the layer specify LOD blending (and is it supported?)
+        bool blendingOn = 
+          !disableLODBlending &&
+          change.getImageLayer()->getImageLayerOptions().lodBlending() == true;
+    
         _lodBlending[ change.getImageLayer()->getUID() ] = blendingOn;
 
         if ( blendingOn && reserveSeconarySlotIfNecessary )
@@ -357,11 +363,30 @@ TextureCompositor::releaseTextureImageUnit( int unit )
 void
 TextureCompositor::applyMapModelChange( const MapModelChange& change )
 {
+    // verify it's actually an image layer
+    ImageLayer* layer = change.getImageLayer();
+    if ( !layer )
+        return;
+
     Threading::ScopedWriteLock exclusiveLock( _layoutMutex );
 
+    // LOD blending does not work with mercator fast path texture mapping.
+    bool disableLODBlending =
+      layer->getProfile() &&
+      layer->getProfile()->getSRS()->isSphericalMercator() &&
+      _options.enableMercatorFastPath() == true;
+
+    // Let the use know why they aren't getting LOD blending!
+    if ( disableLODBlending && layer->getImageLayerOptions().lodBlending() == true )
+    {
+        OE_WARN << LC << "LOD blending disabled for layer \"" << layer->getName()
+            << "\" becuase it uses Mercator fast-path rendering" << std::endl;
+    }
+
     _layout.applyMapModelChange(
         change, 
-        _impl.valid() ? _impl->blendingRequiresSecondarySlot() : false );
+        _impl.valid() ? _impl->blendingRequiresSecondarySlot() : false,
+        disableLODBlending );
 }
 
 bool
@@ -475,7 +500,8 @@ TextureCompositor::createSamplerFunction(UID                layerUID,
         std::string fname = !functionName.empty() ? functionName : "defaultSamplerFunction";
         std::stringstream buf;
         buf << "vec4 " << functionName << "() { \n return vec4(0,0,0,0); \n } \n";
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         result = new osg::Shader( type, str );
     }
 
@@ -483,6 +509,14 @@ TextureCompositor::createSamplerFunction(UID                layerUID,
 }
 
 void
+TextureCompositor::setTechnique( TextureCompositorTechnique* tech )
+{
+    _tech = TerrainOptions::COMPOSITING_USER;
+    _impl = tech;
+    OE_INFO << LC << "Custom texture compositing technique installed" << std::endl;
+}
+
+void
 TextureCompositor::init()
 {        
     if ( _impl.valid() ) // double-check pattern
@@ -497,7 +531,7 @@ TextureCompositor::init()
     // MULTITEXTURE_GPU is the current default.
     
     if (_tech == TerrainOptions::COMPOSITING_MULTITEXTURE_GPU ||
-        (isAuto && caps.supportsGLSL(1.20f) && caps.supportsMultiTexture()) ) 
+        ( isAuto && TextureCompositorMultiTexture::isSupported(true) ) )
     {
         _tech = TerrainOptions::COMPOSITING_MULTITEXTURE_GPU;
         _impl = new TextureCompositorMultiTexture( true, _options );
@@ -508,7 +542,7 @@ TextureCompositor::init()
 
     else
     if (_tech == TerrainOptions::COMPOSITING_TEXTURE_ARRAY || 
-        (isAuto && caps.supportsGLSL(1.30f) && caps.supportsTextureArrays()) )
+        ( isAuto && TextureCompositorTexArray::isSupported() ) )
     {
         _tech = TerrainOptions::COMPOSITING_TEXTURE_ARRAY;
         _impl = new TextureCompositorTexArray( _options );
@@ -518,7 +552,8 @@ TextureCompositor::init()
 #endif // OSG_VERSION_GREATER_OR_EQUAL( 2, 9, 8 )
 
     else
-    if ( _tech == TerrainOptions::COMPOSITING_MULTITEXTURE_FFP || (isAuto && caps.supportsMultiTexture()) )
+    if ( _tech == TerrainOptions::COMPOSITING_MULTITEXTURE_FFP || 
+        (isAuto && TextureCompositorMultiTexture::isSupported(false) ) )
     {
         _tech = TerrainOptions::COMPOSITING_MULTITEXTURE_FFP;
         _impl = new TextureCompositorMultiTexture( false, _options );
diff --git a/src/osgEarth/TextureCompositorMulti b/src/osgEarth/TextureCompositorMulti
index d5edcd2..3fb845f 100644
--- a/src/osgEarth/TextureCompositorMulti
+++ b/src/osgEarth/TextureCompositorMulti
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -33,6 +33,12 @@ namespace osgEarth
     public:
         TextureCompositorMultiTexture( bool useGPU, const TerrainOptions& options );
 
+        /** dtor */
+        virtual ~TextureCompositorMultiTexture() { }
+
+        static bool isSupported( bool useGPU );
+
+    public:
         bool requiresUnitTextureSpace() const { return false; }
 
         bool usesShaderComposition() const { return _useGPU; }
@@ -54,11 +60,15 @@ namespace osgEarth
             osg::Shader::Type type,
             const TextureLayout& layout ) const;
 
+
     private:
         float _lodTransitionTime;
         bool _useGPU;
         bool _enableMipmappingOnUpdatedTextures;
         bool _enableMipmapping;
+
+        osg::Texture::FilterMode _minFilter;
+        osg::Texture::FilterMode _magFilter;
     };
 }
 
diff --git a/src/osgEarth/TextureCompositorMulti.cpp b/src/osgEarth/TextureCompositorMulti.cpp
index 87e4288..1f7f5f2 100644
--- a/src/osgEarth/TextureCompositorMulti.cpp
+++ b/src/osgEarth/TextureCompositorMulti.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,9 @@
 #include <osgEarth/Registry>
 #include <osgEarth/ShaderComposition>
 #include <osgEarth/ShaderUtils>
+#include <osgEarth/TileKey>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Capabilities>
 #include <osg/Texture2D>
 #include <osg/TexEnv>
 #include <osg/TexEnvCombine>
@@ -34,20 +37,37 @@ using namespace osgEarth;
 
 namespace
 {
+    static std::string makeSamplerName(int slot)
+    {
+        return Stringify() << "osgearth_tex" << slot;
+    }
+
     static osg::Shader*
     s_createTextureVertexShader( const TextureLayout& layout, bool blending )
     {
         std::stringstream buf;
-       
+
         const TextureLayout::TextureSlotVector& slots = layout.getTextureSlots();
 
+        buf << "#version " << GLSL_VERSION_STR << "\n";
+
+        buf << "varying vec4 osg_FrontColor;\n"
+            << "varying vec4 osg_FrontSecondaryColor;\n";
+
+        if ( slots.size() > 0 )
+        {
+            buf << "varying vec4 osg_TexCoord[" << Registry::instance()->getCapabilities().getMaxGPUTextureCoordSets()  << "];\n";
+        }
+
         if ( blending )
         {
-            buf << "uniform mat4 osgearth_TexBlendMatrix[" << slots.size() << "];\n";
+            buf << "uniform mat4 osgearth_TexBlendMatrix[" << Registry::instance()->getCapabilities().getMaxGPUTextureCoordSets() << "];\n";
         }
 
-        buf << "void osgearth_vert_setupTexturing() \n"
-            << "{ \n";
+        buf << "void osgearth_vert_setupColoring() \n"
+            << "{ \n"
+            << "    osg_FrontColor = gl_Color; \n"
+            << "    osg_FrontSecondaryColor = vec4(0.0); \n";
 
         // Set up the texture coordinates for each active slot (primary and secondary).
         // Primary slots are the actual image layer's texture image unit. A Secondary
@@ -62,19 +82,20 @@ namespace
                 if ( slot == primarySlot )
                 {
                     // normal unit:
-                    buf << "    gl_TexCoord["<< slot <<"] = gl_MultiTexCoord" << slot << ";\n";
+                    buf << "    osg_TexCoord["<< slot <<"] = gl_MultiTexCoord" << slot << ";\n";
                 }
                 else
                 {
                     // secondary (blending) unit:
-                    buf << "    gl_TexCoord["<< slot <<"] = osgearth_TexBlendMatrix["<< primarySlot << "] * gl_MultiTexCoord" << primarySlot << ";\n";
+                    buf << "    osg_TexCoord["<< slot <<"] = osgearth_TexBlendMatrix["<< primarySlot << "] * gl_MultiTexCoord" << primarySlot << ";\n";
                 }
             }
         }
-            
+
         buf << "} \n";
 
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         return new osg::Shader( osg::Shader::VERTEX, str );
     }
 
@@ -85,7 +106,15 @@ namespace
 
         std::stringstream buf;
 
-        buf << "#version 120 \n";
+        buf << "#version " << GLSL_VERSION_STR << "\n";
+#ifdef OSG_GLES2_AVAILABLE
+        buf << "precision mediump float;\n";
+#endif
+
+        if ( maxSlots > 0 )
+        {
+            buf << "varying vec4 osg_TexCoord[" << Registry::instance()->getCapabilities().getMaxGPUTextureCoordSets() << "];\n";
+        }
 
         if ( blending )
         {
@@ -96,12 +125,11 @@ namespace
         }
 
         buf << "uniform float osgearth_ImageLayerOpacity[" << maxSlots << "]; \n"
-            //The enabled array is a fixed size.  Make sure this corresponds to the size definition in TerrainEngineNode.cpp
-            << "uniform bool  osgearth_ImageLayerEnabled[" << 16 << "]; \n"  
+            //The enabled array is a fixed size.  Make sure this corresponds EXCATLY to the size definition in TerrainEngineNode.cpp
+            << "uniform bool  osgearth_ImageLayerVisible[" << MAX_IMAGE_LAYERS << "]; \n"
             << "uniform float osgearth_ImageLayerRange[" << 2 * maxSlots << "]; \n"
             << "uniform float osgearth_ImageLayerAttenuation; \n"
-            << "uniform float osgearth_CameraElevation; \n"
-            << "varying float osgearth_CameraRange; \n";
+            << "uniform float osgearth_CameraElevation; \n";
 
         const TextureLayout::TextureSlotVector& slots = layout.getTextureSlots();
 
@@ -109,16 +137,23 @@ namespace
         {
             if ( slots[i] >= 0 )
             {
-                buf << "uniform sampler2D tex" << i << ";\n";
+                buf << "uniform sampler2D " << makeSamplerName(i) << ";\n";
             }
         }
 
-        buf << "void osgearth_frag_applyTexturing( inout vec4 color ) \n"
+        // install the color filter chain prototypes:
+        for( int i=0; i<maxSlots && i <(int)slots.size(); ++i )
+        {
+            buf << "void osgearth_runColorFilters_" << i << "(in int slot, inout vec4 color);\n";
+        }
+
+        // the main texturing function:
+        buf << "void osgearth_frag_applyColoring( inout vec4 color ) \n"
             << "{ \n"
             << "    vec3 color3 = color.rgb; \n"
             << "    vec4 texel; \n"
             << "    float maxOpacity = 0.0; \n"
-            << "    float dmin, dmax, atten_min, atten_max, age; \n";           
+            << "    float dmin, dmax, atten_min, atten_max, age; \n";
 
         for( unsigned int i=0; i < order.size(); ++i )
         {
@@ -128,22 +163,24 @@ namespace
             // if this UID has a secondyar slot, LOD blending ON.
             int secondarySlot = layout.getSlot( slots[slot], 1, maxSlots );
 
-            buf << "    if (osgearth_ImageLayerEnabled["<< i << "]) { \n"
+            buf << "    if (osgearth_ImageLayerVisible["<< i << "]) { \n"
                 << "        dmin = osgearth_CameraElevation - osgearth_ImageLayerRange["<< q << "]; \n"
                 << "        dmax = osgearth_CameraElevation - osgearth_ImageLayerRange["<< q+1 <<"]; \n"
 
-                << "        if (dmin >= 0 && dmax <= 0.0) { \n"
-                << "            atten_max = -clamp( dmax, -osgearth_ImageLayerAttenuation, 0 ) / osgearth_ImageLayerAttenuation; \n"
-                << "            atten_min =  clamp( dmin, 0, osgearth_ImageLayerAttenuation ) / osgearth_ImageLayerAttenuation; \n";
+                << "        if (dmin >= 0.0 && dmax <= 0.0) { \n"
+                << "            atten_max = -clamp( dmax, -osgearth_ImageLayerAttenuation, 0.0 ) / osgearth_ImageLayerAttenuation; \n"
+                << "            atten_min =  clamp( dmin, 0.0, osgearth_ImageLayerAttenuation ) / osgearth_ImageLayerAttenuation; \n";
 
             if ( secondarySlot >= 0 ) // LOD blending enabled for this layer
             {
                 float invFadeInDuration = 1.0f/fadeInDuration;
 
-                buf << "            age = "<< invFadeInDuration << " * min( "<< fadeInDuration << ", osg_FrameTime - osgearth_SlotStamp[" << slot << "] ); \n"
+                buf << std::fixed
+                    << std::setprecision(1)
+                    << "            age = "<< invFadeInDuration << " * min( "<< fadeInDuration << ", osg_FrameTime - osgearth_SlotStamp[" << slot << "] ); \n"
                     << "            age = clamp(age, 0.0, 1.0); \n"
-                    << "            vec4 texel0 = texture2D(tex" << slot << ", gl_TexCoord["<< slot << "].st);\n"
-                    << "            vec4 texel1 = texture2D(tex" << secondarySlot << ", gl_TexCoord["<< secondarySlot << "].st);\n"
+                    << "            vec4 texel0 = texture2D(" << makeSamplerName(slot) << ", osg_TexCoord["<< slot << "].st);\n"
+                    << "            vec4 texel1 = texture2D(" << makeSamplerName(secondarySlot) << ", osg_TexCoord["<< secondarySlot << "].st);\n"
                     << "            float mixval = age * osgearth_LODRangeFactor;\n"
 
                     // pre-multiply alpha before mixing:
@@ -158,24 +195,29 @@ namespace
             }
             else
             {
-                buf << "            texel = texture2D(tex" << slot << ", gl_TexCoord["<< slot <<"].st); \n";
+                buf << "            texel = texture2D(" << makeSamplerName(slot) << ", osg_TexCoord["<< slot <<"].st); \n";
             }
-            
-            buf << "            float opacity =  texel.a * osgearth_ImageLayerOpacity[" << i << "];\n"
+
+            buf
+                // color filter:
+                << "            osgearth_runColorFilters_" << i << "(" << slot << ", texel); \n"
+
+                // adjust for opacity
+                << "            float opacity =  texel.a * osgearth_ImageLayerOpacity[" << i << "];\n"
                 << "            color3 = mix(color3, texel.rgb, opacity * atten_max * atten_min); \n"
                 << "            if (opacity > maxOpacity) {\n"
                 << "              maxOpacity = opacity;\n"
-                << "            }\n"                
+                << "            }\n"
                 << "        } \n"
                 << "    } \n";
         }
-        
-            buf << "    color = vec4(color3, maxOpacity);\n"
-                << "} \n";
 
+        buf << "    color = vec4(color3, maxOpacity);\n"
+            << "} \n";
 
 
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         //OE_INFO << std::endl << str;
         return new osg::Shader( osg::Shader::FRAGMENT, str );
     }
@@ -185,15 +227,8 @@ namespace
 
 namespace
 {
-    static std::string makeSamplerName(int slot)
-    {
-        std::stringstream buf;
-        buf << "tex" << slot;
-        return buf.str();
-    }
-    
     static osg::Texture2D*
-    s_getTexture( osg::StateSet* stateSet, UID layerUID, const TextureLayout& layout, osg::StateSet* parentStateSet)
+        s_getTexture( osg::StateSet* stateSet, UID layerUID, const TextureLayout& layout, osg::StateSet* parentStateSet, osg::Texture::FilterMode minFilter, osg::Texture::FilterMode magFilter)
     {
         int slot = layout.getSlot( layerUID, 0 );
         if ( slot < 0 )
@@ -205,21 +240,22 @@ namespace
         if ( !tex )
         {
             tex = new osg::Texture2D();
+            tex->setUnRefImageDataAfterApply( true );
 
             // configure the mipmapping
 
             tex->setMaxAnisotropy( 16.0f );
 
             tex->setResizeNonPowerOfTwoHint(false);
-            tex->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
-            tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR );
+            tex->setFilter( osg::Texture::MAG_FILTER, magFilter );
+            tex->setFilter( osg::Texture::MIN_FILTER, minFilter );
 
             // configure the wrapping
             tex->setWrap( osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_EDGE );
             tex->setWrap( osg::Texture::WRAP_T, osg::Texture::CLAMP_TO_EDGE );
 
             stateSet->setTextureAttributeAndModes( slot, tex, osg::StateAttribute::ON );
-            
+
             // install the slot attribute
             std::string name = makeSamplerName(slot);
             stateSet->getOrCreateUniform( name.c_str(), osg::Uniform::SAMPLER_2D )->set( slot );
@@ -261,9 +297,25 @@ namespace
 
 //------------------------------------------------------------------------
 
+bool
+TextureCompositorMultiTexture::isSupported( bool useGPU )
+{
+    const Capabilities& caps = osgEarth::Registry::instance()->getCapabilities();
+    if ( useGPU )
+#ifndef OSG_GLES2_AVAILABLE
+        return caps.supportsGLSL( 1.10f ) && caps.supportsMultiTexture();
+#else
+        return caps.supportsGLSL( 1.0f ) && caps.supportsMultiTexture();
+#endif
+    else
+        return caps.supportsMultiTexture();
+}
+
 TextureCompositorMultiTexture::TextureCompositorMultiTexture( bool useGPU, const TerrainOptions& options ) :
 _lodTransitionTime( *options.lodTransitionTime() ),
 _enableMipmapping( *options.enableMipmapping() ),
+_minFilter( *options.minFilter() ),
+_magFilter( *options.magFilter() ),
 _useGPU( useGPU )
 {
     _enableMipmappingOnUpdatedTextures = Registry::instance()->getCapabilities().supportsMipmappedTextureUpdates();
@@ -277,7 +329,7 @@ TextureCompositorMultiTexture::applyLayerUpdate(osg::StateSet*       stateSet,
                                                 const TextureLayout& layout,
                                                 osg::StateSet*       parentStateSet) const
 {
-    osg::Texture2D* tex = s_getTexture( stateSet, layerUID, layout, parentStateSet);
+    osg::Texture2D* tex = s_getTexture( stateSet, layerUID, layout, parentStateSet, _minFilter, _magFilter);
     if ( tex )
     {
         osg::Image* image = preparedImage.getImage();
@@ -286,12 +338,12 @@ TextureCompositorMultiTexture::applyLayerUpdate(osg::StateSet*       stateSet,
 
         // set up proper mipmapping filters:
         if (_enableMipmapping &&
-            _enableMipmappingOnUpdatedTextures && 
-            ImageUtils::isPowerOfTwo( image ) && 
+            _enableMipmappingOnUpdatedTextures &&
+            ImageUtils::isPowerOfTwo( image ) &&
             !(!image->isMipmap() && ImageUtils::isCompressed(image)) )
         {
-            if ( tex->getFilter(osg::Texture::MIN_FILTER) != osg::Texture::LINEAR_MIPMAP_LINEAR )
-                tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR );
+            if ( tex->getFilter(osg::Texture::MIN_FILTER) != _minFilter )
+                tex->setFilter( osg::Texture::MIN_FILTER, _minFilter );
         }
         else if ( tex->getFilter(osg::Texture::MIN_FILTER) != osg::Texture::LINEAR )
         {
@@ -301,7 +353,7 @@ TextureCompositorMultiTexture::applyLayerUpdate(osg::StateSet*       stateSet,
         bool lodBlending = layout.getSlot(layerUID, 1) >= 0;
 
         if (_enableMipmapping &&
-            _enableMipmappingOnUpdatedTextures && 
+            _enableMipmappingOnUpdatedTextures &&
             lodBlending )
         {
             int slot = layout.getSlot(layerUID, 0);
@@ -309,7 +361,7 @@ TextureCompositorMultiTexture::applyLayerUpdate(osg::StateSet*       stateSet,
             // update the timestamp on the image layer to support blending.
             float now = (float)osg::Timer::instance()->delta_s( osg::Timer::instance()->getStartTick(), osg::Timer::instance()->tick() );
             ArrayUniform stampUniform( "osgearth_SlotStamp", osg::Uniform::FLOAT, stateSet, layout.getMaxUsedSlot() + 1 );
-            stampUniform.setElement( slot, now );            
+            stampUniform.setElement( slot, now );
 
             // set the texture matrix to properly position the blend (parent) texture
             osg::Matrix mat;
@@ -330,7 +382,7 @@ TextureCompositorMultiTexture::applyLayerUpdate(osg::StateSet*       stateSet,
     }
 }
 
-void 
+void
 TextureCompositorMultiTexture::updateMasterStateSet(osg::StateSet*       stateSet,
                                                     const TextureLayout& layout    ) const
 {
@@ -350,34 +402,37 @@ TextureCompositorMultiTexture::updateMasterStateSet(osg::StateSet*       stateSe
                 << std::endl;
         }
 
-        VirtualProgram* vp = static_cast<VirtualProgram*>( stateSet->getAttribute(osg::StateAttribute::PROGRAM) );
+        VirtualProgram* vp = static_cast<VirtualProgram*>( stateSet->getAttribute(VirtualProgram::SA_TYPE) );
         if ( maxUnits > 0 )
         {
             // see if we have any blended layers:
-            bool hasBlending = layout.containsSecondarySlots( maxUnits ); 
+            bool hasBlending = layout.containsSecondarySlots( maxUnits );
 
-            vp->setShader( 
-                "osgearth_vert_setupTexturing", 
+            vp->setShader(
+                "osgearth_vert_setupColoring",
                 s_createTextureVertexShader(layout, hasBlending) );
 
-            vp->setShader( 
-                "osgearth_frag_applyTexturing",
+            vp->setShader(
+                "osgearth_frag_applyColoring",
                 s_createTextureFragShaderFunction(layout, maxUnits, hasBlending, _lodTransitionTime ) );
         }
         else
         {
-            vp->removeShader( "osgearth_frag_applyTexturing", osg::Shader::FRAGMENT );
-            vp->removeShader( "osgearth_vert_setupTexturing", osg::Shader::VERTEX );
+            vp->removeShader( "osgearth_frag_applyColoring" );
+            vp->removeShader( "osgearth_vert_setupColoring" );
         }
     }
 
     else
     {
+        // Forcably disable shaders
+        stateSet->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+
         // Validate against the maximum number of textures available in FFP mode.
         if ( maxUnits > Registry::instance()->getCapabilities().getMaxFFPTextureUnits() )
         {
             maxUnits = Registry::instance()->getCapabilities().getMaxFFPTextureUnits();
-            OE_WARN << LC << 
+            OE_WARN << LC <<
                 "Warning! You have exceeded the number of texture units available in fixed-function pipeline "
                 "mode on your graphics hardware (" << maxUnits << "). Consider using another "
                 "compositing mode." << std::endl;
@@ -471,18 +526,19 @@ TextureCompositorMultiTexture::createSamplerFunction(UID layerUID,
     {
         std::stringstream buf;
 
-        buf << "uniform sampler2D tex"<< slot << "; \n"
+        buf << "uniform sampler2D "<< makeSamplerName(slot) << "; \n"
             << "vec4 " << functionName << "() \n"
             << "{ \n";
 
         if ( type == osg::Shader::VERTEX )
-            buf << "    return texture2D(tex"<< slot << ", gl_MultiTexCoord"<< slot <<".st); \n";
+            buf << "    return texture2D("<< makeSamplerName(slot) << ", gl_MultiTexCoord"<< slot <<".st); \n";
         else
-            buf << "    return texture2D(tex"<< slot << ", gl_TexCoord["<< slot << "].st); \n";
+            buf << "    return texture2D("<< makeSamplerName(slot) << ", gl_TexCoord["<< slot << "].st); \n";
 
         buf << "} \n";
 
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         result = new osg::Shader( type, str );
     }
     return result;
diff --git a/src/osgEarth/TextureCompositorTexArray b/src/osgEarth/TextureCompositorTexArray
index 8a13a6c..b973920 100644
--- a/src/osgEarth/TextureCompositorTexArray
+++ b/src/osgEarth/TextureCompositorTexArray
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -28,13 +28,19 @@
 namespace osgEarth
 {
     /**
-     * TODO: document
+     * Texture compositor that stacks image layers into a Texture Array.
+     * Note: not compatible with GLES, or with GLSL Version < 1.3
      */
     class TextureCompositorTexArray : public TextureCompositorTechnique
     {
     public:
         TextureCompositorTexArray( const TerrainOptions& options );
 
+        /** dtor */
+        virtual ~TextureCompositorTexArray() { }
+        
+        static bool isSupported();
+
     public:
         void updateMasterStateSet( osg::StateSet* stateSet, const TextureLayout& layout ) const;
 
diff --git a/src/osgEarth/TextureCompositorTexArray.cpp b/src/osgEarth/TextureCompositorTexArray.cpp
index af5ca89..843abbe 100644
--- a/src/osgEarth/TextureCompositorTexArray.cpp
+++ b/src/osgEarth/TextureCompositorTexArray.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -28,6 +28,8 @@
 #include <osgEarth/ShaderComposition>
 #include <osgEarth/SparseTexture2DArray>
 #include <osgEarth/ShaderUtils>
+#include <osgEarth/TileKey>
+#include <osgEarth/Capabilities>
 
 using namespace osgEarth;
 
@@ -38,106 +40,142 @@ using namespace osgEarth;
 
 namespace
 {
-static osg::Shader*
-s_createTextureFragShaderFunction( const TextureLayout& layout, bool blending, float blendTime )
-{
-    int numSlots = layout.getMaxUsedSlot() + 1;
+    static osg::Shader*
+    s_createTextureVertSetupShaderFunction( const TextureLayout& layout )
+    {
+        std::stringstream buf;
+       
+        const TextureLayout::TextureSlotVector& slots = layout.getTextureSlots();
 
-    std::stringstream buf;
+        buf << "#version 130 \n"
+            << "varying vec4 osg_FrontColor; \n"
+            << "varying vec4 osg_FrontSecondaryColor; \n"
 
-    buf << "#version 130 \n"
-        << "#extension GL_EXT_gpu_shader4 : enable \n";
-        
+            << "void osgearth_vert_setupColoring() \n"
+            << "{ \n"
+            << "    gl_TexCoord[0] = gl_MultiTexCoord0; \n"
+            << "    osg_FrontColor = gl_Color; \n"
+            << "    osg_FrontSecondaryColor = vec4(0.0); \n"
+            << "} \n";
 
-    if ( blending )
-    {
-        buf << "#extension GL_ARB_shader_texture_lod : enable \n"
-            << "uniform float osgearth_SlotStamp[ " << numSlots << "]; \n"
-            << "uniform float osg_FrameTime;\n"
-            << "uniform float osgearth_LODRangeFactor;\n\n";
+        std::string str;
+        str = buf.str();
+        return new osg::Shader( osg::Shader::VERTEX, str );
     }
 
-    buf << "uniform sampler2DArray tex0; \n";
-    
-    if ( blending )
-        buf << "uniform sampler2DArray tex1;\n";
-
-    buf << "uniform float region[ " << 8*numSlots << "]; \n"
-        << "uniform float osgearth_ImageLayerOpacity[" << numSlots << "]; \n"
-        << "uniform bool  osgearth_ImageLayerEnabled[" << numSlots << "]; \n"
-        << "uniform float osgearth_ImageLayerRange[" << 2*numSlots << "]; \n"
-        << "uniform float osgearth_ImageLayerAttenuation; \n"
-        << "varying float osgearth_CameraRange; \n"
-
-        << "void osgearth_frag_applyTexturing( inout vec4 color ) \n"
-        << "{ \n"
-        << "    vec3 color3 = color.rgb; \n"
-        << "    float u, v, dmin, dmax, atten_min, atten_max, age; \n"
-        << "    vec4 texel; \n";
-
-    const TextureLayout::TextureSlotVector& slots = layout.getTextureSlots();
-    const TextureLayout::RenderOrderVector& order = layout.getRenderOrder();
-
-    for( unsigned int i = 0; i < order.size(); ++i )
+    static osg::Shader*
+    s_createTextureFragShaderFunction( const TextureLayout& layout, bool blending, float blendTime )
     {
-        int slot = order[i];
-        int q = 2 * i;
-        int r = 8 * slot;
-        UID uid = slots[slot];
-
-        buf << "    if (osgearth_ImageLayerEnabled["<< i << "]) \n"
-            << "    { \n"
-            << "        u = region["<< r <<"] + (region["<< r+2 <<"] * gl_TexCoord[0].s); \n"
-            << "        v = region["<< r+1 <<"] + (region["<< r+3 <<"] * gl_TexCoord[0].t); \n"
-            << "        dmin = osgearth_CameraRange - osgearth_ImageLayerRange["<< q << "]; \n"
-            << "        dmax = osgearth_CameraRange - osgearth_ImageLayerRange["<< q+1 <<"]; \n"
-            << "        if (dmin >= 0 && dmax <= 0.0) \n"
-            << "        { \n"
-            << "            atten_max = -clamp( dmax, -osgearth_ImageLayerAttenuation, 0 ) / osgearth_ImageLayerAttenuation; \n"
-            << "            atten_min =  clamp( dmin, 0, osgearth_ImageLayerAttenuation ) / osgearth_ImageLayerAttenuation; \n";
-
-        if ( layout.isBlendingEnabled(uid) )
+        int numSlots = layout.getMaxUsedSlot() + 1;
+
+        std::stringstream buf;
+
+        buf << "#version 130 \n"
+            << "#extension GL_EXT_gpu_shader4 : enable \n"
+            << "varying vec4 osg_FrontColor; \n"
+            << "varying vec4 osg_FrontSecondaryColor; \n";
+            
+
+        if ( numSlots <= 0 )
         {
-            float invBlendTime = 1.0f/blendTime;
-
-            buf << "            age = "<< invBlendTime << " * min( "<< blendTime << ", osg_FrameTime - osgearth_SlotStamp[" << slot << "] ); \n"
-                << "            age = clamp(age, 0.0, 1.0);\n"
-                << "            float pu, pv;\n"
-                << "            pu = region["<< r+4 <<"] + (region["<< r+6 <<"] * gl_TexCoord[0].s); \n"
-                << "            pv = region["<< r+5 <<"] + (region["<< r+7 <<"] * gl_TexCoord[0].t); \n"
-
-                << "            vec3 texCoord = vec3(pu, pv, " << slot <<");\n;\n"
-                << "            vec4 texel0 = texture2DArray( tex0, vec3(u, v, " << slot << ") );\n"
-                << "            vec4 texel1 = texture2DArray( tex1, vec3(pu, pv, " << slot << ") );\n"
-                << "            float mixval = age * osgearth_LODRangeFactor;\n"
-                
-                // pre-multiply alpha before mixing:
-                << "            texel0.rgb *= texel0.a; \n"
-                << "            texel1.rgb *= texel1.a; \n"
-                << "            texel = mix(texel1, texel0, mixval); \n"
-
-                // revert to non-pre-multiplies alpha (assumes openGL state uses non-pre-mult alpha)
-                << "            if (texel.a > 0.0) { \n"
-                << "                texel.rgb /= texel.a; \n"
-                << "            } \n";
+            // No textures : create a no-op shader
+            buf << "void osgearth_frag_applyColoring( inout vec4 color ) \n"
+                << "{ \n"
+                << "    color = osg_FrontColor; \n"
+                << "} \n";
         }
         else
         {
-            buf << "            texel = texture2DArray( tex0, vec3(u,v,"<< slot <<") ); \n";
+            if ( blending )
+            {
+                buf << "#extension GL_ARB_shader_texture_lod : enable \n"
+                    << "uniform float osgearth_SlotStamp[ " << numSlots << "]; \n"
+                    << "uniform float osg_FrameTime;\n"
+                    << "uniform float osgearth_LODRangeFactor;\n";
+            }
+
+            buf << "uniform sampler2DArray tex0; \n";
+            
+            if ( blending )
+                buf << "uniform sampler2DArray tex1;\n";
+
+            buf << "uniform float region[ " << 8*numSlots << "]; \n"
+                << "uniform float osgearth_ImageLayerOpacity[" << numSlots << "]; \n"
+                << "uniform bool  osgearth_ImageLayerVisible[" << numSlots << "]; \n"
+                << "uniform float osgearth_ImageLayerRange[" << 2*numSlots << "]; \n"
+                << "uniform float osgearth_ImageLayerAttenuation; \n"
+                << "uniform float osgearth_CameraElevation; \n"
+
+                << "void osgearth_frag_applyColoring( inout vec4 color ) \n"
+                << "{ \n"
+                << "    vec3 color3 = color.rgb; \n"
+                << "    float u, v, dmin, dmax, atten_min, atten_max, age; \n"
+                << "    vec4 texel; \n";
+
+            const TextureLayout::TextureSlotVector& slots = layout.getTextureSlots();
+            const TextureLayout::RenderOrderVector& order = layout.getRenderOrder();
+
+            for( unsigned int i = 0; i < order.size(); ++i )
+            {
+                int slot = order[i];
+                int q = 2 * i;
+                int r = 8 * slot;
+                UID uid = slots[slot];
+
+                buf << "    if (osgearth_ImageLayerVisible["<< i << "]) \n"
+                    << "    { \n"
+                    << "        u = region["<< r <<"] + (region["<< r+2 <<"] * gl_TexCoord[0].s); \n"
+                    << "        v = region["<< r+1 <<"] + (region["<< r+3 <<"] * gl_TexCoord[0].t); \n"
+                    << "        dmin = osgearth_CameraElevation - osgearth_ImageLayerRange["<< q << "]; \n"
+                    << "        dmax = osgearth_CameraElevation - osgearth_ImageLayerRange["<< q+1 <<"]; \n"
+                    << "        if (dmin >= 0 && dmax <= 0.0) \n"
+                    << "        { \n"
+                    << "            atten_max = -clamp( dmax, -osgearth_ImageLayerAttenuation, 0 ) / osgearth_ImageLayerAttenuation; \n"
+                    << "            atten_min =  clamp( dmin, 0, osgearth_ImageLayerAttenuation ) / osgearth_ImageLayerAttenuation; \n";
+
+                if ( layout.isBlendingEnabled(uid) )
+                {
+                    float invBlendTime = 1.0f/blendTime;
+
+                    buf << "            age = "<< invBlendTime << " * min( "<< blendTime << ", osg_FrameTime - osgearth_SlotStamp[" << slot << "] ); \n"
+                        << "            age = clamp(age, 0.0, 1.0);\n"
+                        << "            float pu, pv;\n"
+                        << "            pu = region["<< r+4 <<"] + (region["<< r+6 <<"] * gl_TexCoord[0].s); \n"
+                        << "            pv = region["<< r+5 <<"] + (region["<< r+7 <<"] * gl_TexCoord[0].t); \n"
+
+                        << "            vec3 texCoord = vec3(pu, pv, " << slot <<");\n;\n"
+                        << "            vec4 texel0 = texture2DArray( tex0, vec3(u, v, " << slot << ") );\n"
+                        << "            vec4 texel1 = texture2DArray( tex1, vec3(pu, pv, " << slot << ") );\n"
+                        << "            float mixval = age * osgearth_LODRangeFactor;\n"
+                        
+                        // pre-multiply alpha before mixing:
+                        << "            texel0.rgb *= texel0.a; \n"
+                        << "            texel1.rgb *= texel1.a; \n"
+                        << "            texel = mix(texel1, texel0, mixval); \n"
+
+                        // revert to non-pre-multiplies alpha (assumes openGL state uses non-pre-mult alpha)
+                        << "            if (texel.a > 0.0) { \n"
+                        << "                texel.rgb /= texel.a; \n"
+                        << "            } \n";
+                }
+                else
+                {
+                    buf << "            texel = texture2DArray( tex0, vec3(u,v,"<< slot <<") ); \n";
+                }
+
+                buf << "            color3 = mix(color3, texel.rgb, texel.a * osgearth_ImageLayerOpacity["<< i <<"] * atten_max * atten_min); \n"
+                    << "        } \n"
+                    << "    } \n";
+            }
+
+            buf << "    color = vec4(color3.rgb, color.a); \n"
+                << "} \n";
         }
 
-        buf << "            color3 = mix(color3, texel.rgb, texel.a * osgearth_ImageLayerOpacity["<< i <<"] * atten_max * atten_min); \n"
-            << "        } \n"
-            << "    } \n"
-            ;
+        std::string str;
+        str = buf.str();
+        return new osg::Shader( osg::Shader::FRAGMENT, str );
     }
-
-    buf << "    color = vec4(color3.rgb, color.a); \n"
-        << "} \n";
-
-    std::string str = buf.str();
-    return new osg::Shader( osg::Shader::FRAGMENT, str );
-}
 }
 
 //------------------------------------------------------------------------
@@ -194,7 +232,8 @@ namespace
     {
         std::stringstream sstream;
         sstream << "tex" << unit;
-        std::string str = sstream.str();
+        std::string str;
+        str = sstream.str();
         osg::ref_ptr<osg::Uniform> sampler = ss->getUniform(str);
         int samplerUnit = -1;
         if (sampler.valid() && sampler->getType() == osg::Uniform::SAMPLER_2D_ARRAY)
@@ -243,6 +282,13 @@ namespace
 
 //------------------------------------------------------------------------
 
+bool
+TextureCompositorTexArray::isSupported()
+{
+    const Capabilities& caps = osgEarth::Registry::instance()->getCapabilities();
+    return caps.supportsGLSL(1.30f) && caps.supportsTextureArrays();
+}
+
 TextureCompositorTexArray::TextureCompositorTexArray( const TerrainOptions& options ) :
 _lodTransitionTime( *options.lodTransitionTime() )
 {
@@ -371,10 +417,14 @@ TextureCompositorTexArray::applyLayerUpdate(osg::StateSet*       stateSet,
 void
 TextureCompositorTexArray::updateMasterStateSet( osg::StateSet* stateSet, const TextureLayout& layout ) const
 {
-    VirtualProgram* vp = static_cast<VirtualProgram*>( stateSet->getAttribute(osg::StateAttribute::PROGRAM) );
+    VirtualProgram* vp = static_cast<VirtualProgram*>( stateSet->getAttribute(VirtualProgram::SA_TYPE) );
+
+    vp->setShader(
+        "osgearth_vert_setupColoring",
+        s_createTextureVertSetupShaderFunction(layout) );
 
     vp->setShader( 
-        "osgearth_frag_applyTexturing", 
+        "osgearth_frag_applyColoring", 
         s_createTextureFragShaderFunction(layout, true, _lodTransitionTime ) );
 }
 
@@ -410,7 +460,8 @@ TextureCompositorTexArray::createSamplerFunction(UID layerUID,
             << "    return texture2DArray( tex0, vec3(u,v,"<< slot <<") ); \n"
             << "} \n";
 
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         result = new osg::Shader( type, str );
     }
     return result;
diff --git a/src/osgEarth/ThreadingUtils b/src/osgEarth/ThreadingUtils
index 3dc892a..db5e46a 100644
--- a/src/osgEarth/ThreadingUtils
+++ b/src/osgEarth/ThreadingUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,7 +23,9 @@
 #include <OpenThreads/Condition>
 #include <OpenThreads/Mutex>
 #include <OpenThreads/ReentrantMutex>
+#include <osg/ref_ptr>
 #include <set>
+#include <map>
 
 #define USE_CUSTOM_READ_WRITE_LOCK 1
 //#ifdef _DEBUG
@@ -36,6 +38,14 @@ namespace osgEarth { namespace Threading
     typedef OpenThreads::ScopedLock<OpenThreads::Mutex> ScopedMutexLock;
     typedef OpenThreads::Thread Thread;
 
+    /**
+     * Gets the unique ID of the running thread. Use this instead of
+     * OpenThreads::Thread::CurrentThread, which only works reliably on
+     * threads created with the OpenThreads framework
+     */
+    extern OSGEARTH_EXPORT unsigned getCurrentThreadId();
+
+
 #ifdef USE_CUSTOM_READ_WRITE_LOCK
 
     /**
@@ -156,7 +166,7 @@ namespace osgEarth { namespace Threading
     class ReadWriteMutex
     {
 #if TRACE_THREADS
-        typedef std::set<OpenThreads::Thread*> TracedThreads;
+        typedef std::set<unsigned> TracedThreads;
         TracedThreads _trace;
         OpenThreads::Mutex _traceMutex;
 #endif
@@ -175,7 +185,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                if( _trace.find(OpenThreads::Thread::CurrentThread()) != _trace.end() )
+                if( _trace.find(getCurrentThreadId()) != _trace.end() )
                     OE_WARN << "TRACE: tried to double-lock" << std::endl;
             }
 #endif
@@ -192,7 +202,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                _trace.insert(OpenThreads::Thread::CurrentThread());
+                _trace.insert(getCurrentThreadId());
             }
 #endif
         }
@@ -204,7 +214,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                _trace.erase(OpenThreads::Thread::CurrentThread());
+                _trace.erase(getCurrentThreadId());
             }
 #endif
         }
@@ -214,7 +224,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                if( _trace.find(OpenThreads::Thread::CurrentThread()) != _trace.end() )
+                if( _trace.find(getCurrentThreadId()) != _trace.end() )
                     OE_WARN << "TRACE: tried to double-lock" << std::endl;
             }
 #endif
@@ -226,7 +236,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                _trace.insert(OpenThreads::Thread::CurrentThread());
+                _trace.insert(getCurrentThreadId());
             }
 #endif
         }
@@ -238,7 +248,7 @@ namespace osgEarth { namespace Threading
 #ifdef TRACE_THREADS
             {
                 OpenThreads::ScopedLock<OpenThreads::Mutex> ttLock(_traceMutex);
-                _trace.erase(OpenThreads::Thread::CurrentThread());
+                _trace.erase(getCurrentThreadId());
             }
 #endif
         }
@@ -261,11 +271,11 @@ namespace osgEarth { namespace Threading
         }
 
     private:
-        int _readerCount;
-        OpenThreads::Mutex _lockWriterMutex;
-        OpenThreads::Mutex _readerCountMutex;
-        Event _noWriterEvent;
-        Event _noReadersEvent;
+        int    _readerCount;
+        Mutex  _lockWriterMutex;
+        Mutex  _readerCountMutex;
+        Event  _noWriterEvent;
+        Event  _noReadersEvent;
     };
 
 
@@ -299,15 +309,166 @@ namespace osgEarth { namespace Threading
     {
         T& get() {
             ScopedMutexLock lock(_mutex);
-            return _data[OpenThreads::Thread::CurrentThread()];
+            return _data[getCurrentThreadId()];
         }
-        const T& get() const {
-            ScopedMutexLock lock(_mutex);
-            return _data[OpenThreads::Thread::CurrentThread()];
+        //const T& get() const {
+        //    ScopedMutexLock lock(_mutex);
+        //    return _data[getCurrentThreadId()];
+        //}
+    private:
+        std::map<unsigned,T> _data;
+        Mutex                _mutex;
+    };
+
+    /** Template for thread safe per-object data storage */
+    template<typename KEY, typename DATA>
+    struct PerObjectMap
+    {
+        DATA& get(KEY k)
+        {
+            {
+                osgEarth::Threading::ScopedReadLock readLock(_mutex);
+                typename std::map<KEY,DATA>::iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second;
+            }
+            {
+                osgEarth::Threading::ScopedWriteLock lock(_mutex);
+                typename std::map<KEY,DATA>::iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second;
+                else
+                    return _data[k];
+            }
+        }
+
+        void remove(KEY k)
+        {
+            osgEarth::Threading::ScopedWriteLock exclusive(_mutex);
+            _data.erase( k );
+        }
+
+    private:
+        std::map<KEY,DATA>                  _data;
+        osgEarth::Threading::ReadWriteMutex _mutex;
+    };
+
+    /** Template for thread safe per-object data storage */
+    template<typename KEY, typename DATA>
+    struct PerObjectRefMap
+    {
+        DATA* get(KEY k)
+        {
+            osgEarth::Threading::ScopedReadLock lock(_mutex);
+            typename std::map<KEY,osg::ref_ptr<DATA > >::const_iterator i = _data.find(k);
+            if ( i != _data.end() )
+                return i->second.get();
+
+            return 0L;
+        }
+
+        DATA* getOrCreate(KEY k, DATA* newDataIfNeeded)
+        {
+            osg::ref_ptr<DATA> _refReleaser = newDataIfNeeded;
+            {
+                osgEarth::Threading::ScopedReadLock lock(_mutex);
+                typename std::map<KEY,osg::ref_ptr<DATA> >::const_iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second.get();
+            }
+
+            {
+                osgEarth::Threading::ScopedWriteLock lock(_mutex);
+                typename std::map<KEY,osg::ref_ptr<DATA> >::iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second.get();
+
+                _data[k] = newDataIfNeeded;
+                return newDataIfNeeded;
+            }
         }
+
+        void remove(KEY k)
+        {
+            osgEarth::Threading::ScopedWriteLock exclusive(_mutex);
+            _data.erase( k );
+        }
+
+        void remove(DATA* data)
+        {
+            osgEarth::Threading::ScopedWriteLock exclusive(_mutex);
+            for( typename std::map<KEY,osg::ref_ptr<DATA> >::iterator i = _data.begin(); i != _data.end(); ++i )
+            {
+                if ( i->second.get() == data )
+                {
+                    _data.erase( i );
+                    break;
+                }
+            }
+        }
+
+    private:
+        std::map<KEY,osg::ref_ptr<DATA> >    _data;
+        osgEarth::Threading::ReadWriteMutex  _mutex;
+    };
+
+    /** Template for thread safe per-object data storage */
+    template<typename KEY, typename DATA>
+    struct PerObjectObsMap
+    {
+        DATA* get(KEY k)
+        {
+            osgEarth::Threading::ScopedReadLock lock(_mutex);
+            typename std::map<KEY, osg::observer_ptr<DATA> >::const_iterator i = _data.find(k);
+            if ( i != _data.end() )
+                return i->second.get();
+
+            return 0L;
+        }
+
+        DATA* getOrCreate(KEY k, DATA* newDataIfNeeded)
+        {
+            osg::ref_ptr<DATA> _refReleaser = newDataIfNeeded;
+            {
+                osgEarth::Threading::ScopedReadLock lock(_mutex);
+                typename std::map<KEY,osg::observer_ptr<DATA> >::const_iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second.get();
+            }
+
+            {
+                osgEarth::Threading::ScopedWriteLock lock(_mutex);
+                typename std::map<KEY,osg::observer_ptr<DATA> >::iterator i = _data.find(k);
+                if ( i != _data.end() )
+                    return i->second.get();
+
+                _data[k] = newDataIfNeeded;
+                return newDataIfNeeded;
+            }
+        }
+
+        void remove(KEY k)
+        {
+            osgEarth::Threading::ScopedWriteLock exclusive(_mutex);
+            _data.erase( k );
+        }
+
+        void remove(DATA* data)
+        {
+            osgEarth::Threading::ScopedWriteLock exclusive(_mutex);
+            for( typename std::map<KEY,osg::observer_ptr<DATA> >::iterator i = _data.begin(); i != _data.end(); ++i )
+            {
+                if ( i->second.get() == data )
+                {
+                    _data.erase( i );
+                    break;
+                }
+            }
+        }
+
     private:
-        std::map<OpenThreads::Thread*,T> _data;
-        OpenThreads::Mutex               _mutex;
+        std::map<KEY,osg::observer_ptr<DATA> >    _data;
+        osgEarth::Threading::ReadWriteMutex  _mutex;
     };
 
 } } // namepsace osgEarth::Threading
diff --git a/src/osgEarth/ThreadingUtils.cpp b/src/osgEarth/ThreadingUtils.cpp
new file mode 100644
index 0000000..a50111d
--- /dev/null
+++ b/src/osgEarth/ThreadingUtils.cpp
@@ -0,0 +1,42 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/ThreadingUtils>
+
+#ifdef _WIN32
+    extern "C" unsigned long __stdcall GetCurrentThreadId();
+#else
+#   include <unistd.h>
+#   include <sys/syscall.h>
+#endif
+
+using namespace osgEarth::Threading;
+
+//------------------------------------------------------------------------
+
+unsigned osgEarth::Threading::getCurrentThreadId()
+{
+ /*   OpenThreads::Thread* t = OpenThreads::Thread::CurrentThread();
+    return t ? t->getThreadId() : 0u;*/
+
+#ifdef _WIN32
+        return (unsigned)::GetCurrentThreadId();
+#else
+        return (unsigned)::syscall(SYS_gettid);
+#endif
+}
diff --git a/src/osgEarth/TileFactory b/src/osgEarth/TileFactory
deleted file mode 100644
index 15bdb81..0000000
--- a/src/osgEarth/TileFactory
+++ /dev/null
@@ -1,29 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTH_TILE_FACTORY_H
-#define OSGEARTH_TILE_FACTORY_H 1
-
-#include <osgEarth/Common>
-
-namespace osgEarth
-{
-}
-
-#endif // OSGEARTH_TILE_FACTORY_H
diff --git a/src/osgEarth/TileFactory.cpp b/src/osgEarth/TileFactory.cpp
deleted file mode 100644
index 5d6c769..0000000
--- a/src/osgEarth/TileFactory.cpp
+++ /dev/null
@@ -1,21 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarth/TileFactory>
-
-using namespace osgEarth;
diff --git a/src/osgEarth/TileKey b/src/osgEarth/TileKey
index 285cd27..9c74cfd 100644
--- a/src/osgEarth/TileKey
+++ b/src/osgEarth/TileKey
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,11 +22,8 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Profile>
-#include <osg/Referenced>
-#include <osg/Image>
-#include <osg/Shape>
+#include <osg/ref_ptr>
 #include <osg/Version>
-#include <osgDB/ReaderWriter>
 #include <osgTerrain/TerrainTile>
 #include <string>
 
@@ -63,6 +60,9 @@ namespace osgEarth
 
         TileKey( const TileKey& rhs );
 
+        /** dtor */
+        virtual ~TileKey() { }
+
         bool operator == (const TileKey& rhs) const {
             return valid() && rhs.valid() && _lod==rhs._lod && _x==rhs._x && _y==rhs._y;
         }
@@ -132,7 +132,8 @@ namespace osgEarth
         /**
          * Gets the level of detail of the tile represented by this key.
          */
-        unsigned int getLevelOfDetail() const;
+        unsigned getLevelOfDetail() const { return _lod; }
+        unsigned getLOD() const { return _lod; }
 
         /**
          * Gets the geospatial extents of the tile represented by this key.
diff --git a/src/osgEarth/TileKey.cpp b/src/osgEarth/TileKey.cpp
index ce6fe10..42e1c28 100644
--- a/src/osgEarth/TileKey.cpp
+++ b/src/osgEarth/TileKey.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,7 @@
  */
 
 #include <osgEarth/TileKey>
+#include <osgEarth/StringUtils>
 
 using namespace osgEarth;
 
@@ -46,9 +47,7 @@ TileKey::TileKey( unsigned int lod, unsigned int tile_x, unsigned int tile_y, co
 
         _extent = GeoExtent( _profile->getSRS(), xmin, ymin, xmax, ymax );
 
-        std::stringstream buf;
-        buf << _lod << "_" << _x << "_" << _y;
-        _key = buf.str();
+        _key = Stringify() << _lod << "/" << _x << "/" << _y;
     }
     else
     {
@@ -90,12 +89,6 @@ TileKey::getTileId() const
     return osgTerrain::TileID(_lod, _x, _y);
 }
 
-unsigned int
-TileKey::getLevelOfDetail() const
-{
-    return _lod;
-}
-
 void
 TileKey::getPixelExtents(unsigned int& xmin,
                          unsigned int& ymin,
diff --git a/src/osgEarth/TileSource b/src/osgEarth/TileSource
index c4bb462..72c927d 100644
--- a/src/osgEarth/TileSource
+++ b/src/osgEarth/TileSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,14 +20,18 @@
 #ifndef OSGEARTH_TILE_SOURCE_H
 #define OSGEARTH_TILE_SOURCE_H 1
 
+// Need to undef Status in case it has been defined in Xlib.h. This can happen on Linux
+#undef Status
+
 #include <limits.h>
 
 #include <osg/Version>
 
 #include <osgEarth/Common>
+#include <osgEarth/CachePolicy>
 #include <osgEarth/TileKey>
 #include <osgEarth/Profile>
-#include <osgEarth/Caching>
+#include <osgEarth/MemCache>
 #include <osgEarth/Progress>
 #include <osgEarth/ThreadingUtils>
 
@@ -49,14 +53,14 @@
 
 
 namespace osgEarth
-{   
+{
     /**
      * Configuration options for a tile source driver.
      */
-    class TileSourceOptions : public DriverConfigOptions // no export; header only
+    class OSGEARTH_EXPORT TileSourceOptions : public DriverConfigOptions // no export; header only
     {
     public:
-        
+
         optional<int>& tileSize() { return _tileSize; }
         const optional<int>& tileSize() const { return _tileSize; }
 
@@ -79,61 +83,25 @@ namespace osgEarth
         const optional<int>& L2CacheSize() const { return _L2CacheSize; }
 
     public:
-        TileSourceOptions( const ConfigOptions& options =ConfigOptions() )
-            : DriverConfigOptions( options ),
-              _tileSize( 256 ),
-              _noDataValue( (float)SHRT_MIN ),
-              _noDataMinValue( -FLT_MAX ),
-              _noDataMaxValue( FLT_MAX ),
-              _L2CacheSize( 16 )
-        { 
-            fromConfig( _conf );
-        }
+        TileSourceOptions( const ConfigOptions& options =ConfigOptions() );
+
+        /** dtor */
+        virtual ~TileSourceOptions() { }
 
     public:
-        virtual Config getConfig() const {
-            Config conf = DriverConfigOptions::getConfig();
-            conf.updateIfSet( "tile_size", _tileSize );
-            conf.updateIfSet( "nodata_value", _noDataValue );
-            conf.updateIfSet( "nodata_min", _noDataMinValue );
-            conf.updateIfSet( "nodata_max", _noDataMaxValue );
-            conf.updateIfSet( "blacklist_filename", _blacklistFilename);
-            //conf.updateIfSet( "enable_l2_cache", _enableL2Cache );
-            conf.updateIfSet( "l2_cache_size", _L2CacheSize );
-            conf.updateObjIfSet( "profile", _profileOptions );
-            return conf;
-        }
+        virtual Config getConfig() const;
 
     protected:
-        virtual void mergeConfig( const Config& conf ) {
-            DriverConfigOptions::mergeConfig( conf );
-            fromConfig( conf );
-        }
+        virtual void mergeConfig( const Config& conf );
 
     private:
-        void fromConfig( const Config& conf ) {
-            conf.getIfSet( "tile_size", _tileSize );
-            conf.getIfSet( "nodata_value", _noDataValue );
-            conf.getIfSet( "nodata_min", _noDataMinValue );
-            conf.getIfSet( "nodata_max", _noDataMaxValue );
-            conf.getIfSet( "blacklist_filename", _blacklistFilename);
-            //conf.getIfSet( "enable_l2_cache", _enableL2Cache );
-            conf.getIfSet( "l2_cache_size", _L2CacheSize );
-            conf.getObjIfSet( "profile", _profileOptions );
-
-            // special handling of default tile size:
-            if ( !tileSize().isSet() )
-                conf.getIfSet( "default_tile_size", _tileSize );
-            // remove it now so it does not get serialized
-            _conf.remove( "default_tile_size" );
-        }
-
-        optional<int> _tileSize;
-        optional<float> _noDataValue, _noDataMinValue, _noDataMaxValue;
+        void fromConfig( const Config& conf );
+
+        optional<int>            _tileSize;
+        optional<float>          _noDataValue, _noDataMinValue, _noDataMaxValue;
         optional<ProfileOptions> _profileOptions;
-        optional<std::string> _blacklistFilename;
-        optional<int> _L2CacheSize;
-        //optional<bool> _enableL2Cache;
+        optional<std::string>    _blacklistFilename;
+        optional<int>            _L2CacheSize;
     };
 
     typedef std::vector<TileSourceOptions> TileSourceOptionsVector;
@@ -149,6 +117,9 @@ namespace osgEarth
          */
         TileBlacklist();
 
+        /** dtor */
+        virtual ~TileBlacklist() { }
+
         /**
          *Adds the given tile to the blacklist
          */
@@ -201,13 +172,33 @@ namespace osgEarth
     };
 
     /**
-     * A TileSource is an object that can create image and/or heightfield tiles. Driver 
+     * A TileSource is an object that can create image and/or heightfield tiles. Driver
      * plugins are responsible for creating and returning a TileSource that the Map
      * will then use to create tiles for tile keys.
      */
     class OSGEARTH_EXPORT TileSource : public virtual osg::Object
     {
     public:
+        /** Initialization status */
+        struct Status
+        {
+        public:
+            Status() { }
+            Status(const Status& rhs) : _msg(rhs._msg) { }
+            Status(const std::string& msg) : _msg(msg) { }
+            bool isOK() const { return _msg.empty(); }
+            bool isError() const { return !_msg.empty(); }
+            const std::string& message() const { return _msg; }
+            bool operator == (const Status& rhs) const { return _msg.compare(rhs._msg)==0; }
+            bool operator != (const Status& rhs) const { return _msg.compare(rhs._msg)!=0; }
+            static Status Error(const std::string& msg) { return Status(msg); }
+        private:
+            std::string _msg;
+        };
+
+        static Status STATUS_OK;
+
+    public:
         struct ImageOperation : public osg::Referenced {
             virtual void operator()( osg::ref_ptr<osg::Image>& in_out_image ) =0;
         };
@@ -216,13 +207,18 @@ namespace osgEarth
             virtual void operator()( osg::ref_ptr<osg::HeightField>& in_out_hf ) =0;
         };
 
-    public:        
+    public:
         TileSource( const TileSourceOptions& options =TileSourceOptions() );
 
         /**
+         * Gets the status of this tile source.
+         */
+        const Status& getStatus() const { return _status; }
+
+        /**
          * Gets the number of pixels per tile for this TileSource.
          */
-        virtual int getPixelsPerTile() const;   
+        virtual int getPixelsPerTile() const;
 
         /**
          * Gets the list of areas with data for this TileSource
@@ -230,21 +226,23 @@ namespace osgEarth
         const DataExtentList& getDataExtents() const { return _dataExtents; }
         DataExtentList& getDataExtents() { return _dataExtents; }
 
-	    /**
-    	 * Creates an image for the given TileKey
-		 */
+        /**
+         * Creates an image for the given TileKey. The TileKey's profile must match
+         * the profile of the TileSource.
+         */
         virtual osg::Image* createImage(
-            const TileKey& key,
-            ImageOperation* op =0L,
-            ProgressCallback* progress =0L );
+            const TileKey&        key,
+            ImageOperation*       op        =0L,
+            ProgressCallback*     progress  =0L );
 
         /**
-         * Creates a heightfield for the given TileKey
+         * Creates a heightfield for the given TileKey. The TileKey's profile must match
+         * the profile of the TileSource.
          */
         virtual osg::HeightField* createHeightField(
-            const TileKey& key,
-            HeightFieldOperation* prepOp =0L,
-            ProgressCallback* progress = 0L );     
+            const TileKey&        key,
+            HeightFieldOperation* op        =0L,
+            ProgressCallback*     progress  =0L );
 
     public:
 
@@ -260,46 +258,41 @@ namespace osgEarth
          */
         virtual const Profile* getProfile() const;
 
-		/**
-		 * Gets the nodata elevation value
-		 */
+        /**
+         * Gets the nodata elevation value
+         */
         virtual float getNoDataValue() {
             return _options.noDataValue().value(); }
 
-		/**
-		 * Gets the nodata min value
-		 */
+        /**
+         * Gets the nodata min value
+         */
         virtual float getNoDataMinValue() {
             return _options.noDataMinValue().value(); }
 
-		/**
-		 * Gets the nodata max value
-		 */
+        /**
+         * Gets the nodata max value
+         */
         virtual float getNoDataMaxValue() {
             return _options.noDataMaxValue().value(); }
 
         /**
-         * Gets the maximum level of detail available from the tile source. Unlike 
-         * getMaxLevel(), which reports the maximum level at which to use this tile 
-         * source in a Map, this method reports the maximum level for which the 
+         * Gets the maximum level of detail available from the tile source. Unlike
+         * getMaxLevel(), which reports the maximum level at which to use this tile
+         * source in a Map, this method reports the maximum level for which the
          * tile source is able to return data.
          */
         virtual unsigned int getMaxDataLevel() const;
 
         /**
-         * Gets the minimum level of detail available from the tile source. Unlike 
-         * getMinLevel(), which reports the minimum level at which to use this tile 
-         * source in a Map, this method reports the minimum level for which the 
+         * Gets the minimum level of detail available from the tile source. Unlike
+         * getMinLevel(), which reports the minimum level at which to use this tile
+         * source in a Map, this method reports the minimum level for which the
          * tile source is able to return data.
          */
         virtual unsigned int getMinDataLevel() const;
 
         /**
-         * Returns true if data from this source can be cached to disk
-         */
-        virtual bool supportsPersistentCaching() const;
-
-        /**
          * Gets the preferred extension for this TileSource
          */
         virtual std::string getExtension() const {return "png";}
@@ -308,7 +301,7 @@ namespace osgEarth
          *Gets the blacklist for this TileSource
          */
         TileBlacklist* getBlacklist();
-        const TileBlacklist* getBlacklist() const;     
+        const TileBlacklist* getBlacklist() const;
 
         /**
          * Whether or not the source has data for the given TileKey
@@ -331,60 +324,120 @@ namespace osgEarth
          */
         virtual bool isDynamic() const { return false; }
 
+        /**
+         * A hint as to what kind of caching policy would be appropriate to employ
+         * on this data source. By default, this is the default, which is to use a
+         * cache if one is configured. But a TileSource can report that caching should
+         * not be used (for whatever reason) by returning CachePolicy::NO_CACHE.
+         */
+        virtual CachePolicy getCachePolicyHint() const { return CachePolicy::DEFAULT; }
+
+
+        /**
+         * Returns true if data from this source can be cached to disk
+         * @deprecated. Use getCachePolicyHint instead.
+         */
+        bool supportsPersistentCaching() const {
+            return getCachePolicyHint() != CachePolicy::NO_CACHE; }
+
+        /**
+         * Starts up the tile source.
+         */
+        const Status& startup( const osgDB::Options* dbOptions );
+
+
+        /** The options used to construct this tile source. */
+        const TileSourceOptions& getOptions() const { return _options; }
+
+    public:
 
+        /* methods required by osg::Object */
         virtual osg::Object* cloneType() const { return 0; } // cloneType() not appropriate
         virtual osg::Object* clone(const osg::CopyOp&) const { return 0; } // clone() not appropriate
         virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const TileSource*>(obj)!=NULL; }
         virtual const char* className() const { return "TileSource"; }
         virtual const char* libraryName() const { return "osgEarth"; }
 
-		/**
-		 * Initialize the TileSource.  The profile should be computed and set here using setProfile()
-		 */
-		virtual void initialize( const std::string& referenceURI, const Profile* overrideProfile = NULL) = 0;
-
-        const TileSourceOptions& getOptions() const {
-            return _options; }
-   
     protected:
 
         virtual ~TileSource();
 
-		/**
-		 * Creates an image for the given TileKey.
+        /**
+         * Initializes the tile source (called by startup)
+         *
+         * The osgEarth engine calls this function to initialize a TileSource using an
+         * active osgDB::Options. The method returns a status code indicating whether
+         * intialization succeeded (in which case the owning layer will become enabled)
+         * or failed (in which case the owning layer will become disabled.
+         *
+         * This method replaces the now-deprecated initialize method below.
+         *
+         * The Subclass should override this to report a correct initialization status.
+         * The default implementation reports STATUS_OK (for compatibility).
+         */
+        virtual Status initialize( const osgDB::Options* dbOptions );
+
+        /**
+         * Creates an image for the given TileKey.
          * The returned object is new and is the responsibility of the caller.
-		 */
-		virtual osg::Image* createImage( const TileKey& key, ProgressCallback* progress ) = 0;
+         */
+        virtual osg::Image* createImage(
+            const TileKey&        key,
+            ProgressCallback*     progress ) = 0;
 
         /**
          * Creates a heightfield for the given TileKey
          * The returned object is new and is the responsibility of the caller.
          */
-        virtual osg::HeightField* createHeightField( const TileKey& key, ProgressCallback* progress );
+        virtual osg::HeightField* createHeightField(
+            const TileKey&        key,
+            ProgressCallback*     progress );
+
+        /**
+         * Called by subclasses to initialize their profile
+         */
+        void setProfile( const Profile* profile );
+
+        /**
+         * Sets the status of this tile source. Called by a subclass to
+         * set the status
+         */
+        void setStatus( Status status );
+
 
-		/**
-		 * Called by subclasses to initialize their profile
-		 */
-		void setProfile( const Profile* profile );
+    protected: // deprecated
+
+        /**
+         * @deprecated
+         * Initializes the TileSource. This is the old initialize method; it will exists
+         * for backwards compatibility with older user-defined TileSource implementations.
+         * Consider updating to the new initialize() method above since it properly
+         * reports the results of the initialization.
+         */
+        virtual void initialize(
+            const osgDB::Options* dbOptions,
+            const Profile*        overrideProfile ) { }
 
     private:
+
         osg::ref_ptr<const Profile> _profile;
-        const TileSourceOptions _options;
+        const TileSourceOptions     _options;
 
         friend class Map;
         friend class MapEngine;
         friend class TileSourceFactory;
+        friend class CompositeTileSource;
 
         osg::ref_ptr< TileBlacklist > _blacklist;
         std::string _blacklistFilename;
 
-		osg::ref_ptr<MemCache> _memCache;
+        osg::ref_ptr<MemCache> _memCache;
 
         DataExtentList _dataExtents;
-        //osg::ref_ptr< RTree<unsigned int> > _dataExtentsIndex;
+        Status         _status;
     };
 
-    
+
     typedef std::vector< osg::ref_ptr<TileSource> > TileSourceVector;
 
     //--------------------------------------------------------------------
@@ -402,8 +455,8 @@ namespace osgEarth
      * tile source "pipelines" for data access and processing.
      */
     class OSGEARTH_EXPORT TileSourceFactory
-    {   
-	public:
+    {
+    public:
         static TileSource* create( const TileSourceOptions& options );
     };
 }
diff --git a/src/osgEarth/TileSource.cpp b/src/osgEarth/TileSource.cpp
index 38962be..ca8030e 100644
--- a/src/osgEarth/TileSource.cpp
+++ b/src/osgEarth/TileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -33,6 +33,9 @@
 
 using namespace osgEarth;
 
+//#undef OE_DEBUG
+//#define OE_DEBUG OE_INFO
+
 //------------------------------------------------------------------------
 
 TileBlacklist::TileBlacklist()
@@ -136,10 +139,80 @@ TileBlacklist::write(std::ostream &output) const
     }
 }
 
+
+//------------------------------------------------------------------------
+
+
+TileSourceOptions::TileSourceOptions( const ConfigOptions& options ) :
+DriverConfigOptions( options ),
+_tileSize          ( 256 ),
+_noDataValue       ( (float)SHRT_MIN ),
+_noDataMinValue    ( -32000.0f ),
+_noDataMaxValue    (  32000.0f ),
+_L2CacheSize       ( 16 )
+{ 
+    fromConfig( _conf );
+}
+
+
+Config 
+TileSourceOptions::getConfig() const
+{
+    Config conf = DriverConfigOptions::getConfig();
+    conf.updateIfSet( "tile_size", _tileSize );
+    conf.updateIfSet( "nodata_value", _noDataValue );
+    conf.updateIfSet( "nodata_min", _noDataMinValue );
+    conf.updateIfSet( "nodata_max", _noDataMaxValue );
+    conf.updateIfSet( "blacklist_filename", _blacklistFilename);
+    conf.updateIfSet( "l2_cache_size", _L2CacheSize );
+    conf.updateObjIfSet( "profile", _profileOptions );
+    return conf;
+}
+
+
+void
+TileSourceOptions::mergeConfig( const Config& conf )
+{
+    DriverConfigOptions::mergeConfig( conf );
+    fromConfig( conf );
+}
+
+
+void
+TileSourceOptions::fromConfig( const Config& conf )
+{
+    conf.getIfSet( "tile_size", _tileSize );
+    conf.getIfSet( "nodata_value", _noDataValue );
+    conf.getIfSet( "nodata_min", _noDataMinValue );
+    conf.getIfSet( "nodata_max", _noDataMaxValue );
+    conf.getIfSet( "blacklist_filename", _blacklistFilename);
+    conf.getIfSet( "l2_cache_size", _L2CacheSize );
+    conf.getObjIfSet( "profile", _profileOptions );
+
+    // special handling of default tile size:
+    if ( !tileSize().isSet() )
+    {
+        optional<int> defaultTileSize;
+        conf.getIfSet( "default_tile_size", defaultTileSize );
+        if ( defaultTileSize.isSet() )
+        {
+            _tileSize.init(*defaultTileSize);
+        }
+    }
+
+    // remove it now so it does not get serialized
+    _conf.remove( "default_tile_size" );
+}
+
+
 //------------------------------------------------------------------------
 
+TileSource::Status TileSource::STATUS_OK = TileSource::Status();
+
+
 TileSource::TileSource( const TileSourceOptions& options ) :
-_options( options )
+_options( options ),
+_status ( Status::Error("Not initialized") )
 {
     this->setThreadSafeRefUnref( true );
 
@@ -182,6 +255,45 @@ TileSource::~TileSource()
     }
 }
 
+void
+TileSource::setStatus( TileSource::Status status )
+{
+    _status = status;
+}
+
+TileSource::Status
+TileSource::initialize(const osgDB::Options* options)
+{
+    // default implementation. Subclasses should override this.
+    return STATUS_OK;
+}
+
+const TileSource::Status&
+TileSource::startup(const osgDB::Options* options)
+{
+    Status status = initialize(options);
+    if ( status == STATUS_OK )
+    {
+        if ( getProfile() != 0L )
+        {
+            _status = status;
+        }
+        else 
+        {
+            _status = Status::Error("No profile available");
+        }
+    }
+    else
+    {
+        _status = status;
+    }
+
+    if ( _status.isError() )
+        OE_WARN << LC << "Startup failed: " << _status.message() << std::endl;
+
+    return _status;
+}
+
 int
 TileSource::getPixelsPerTile() const
 {
@@ -189,16 +301,19 @@ TileSource::getPixelsPerTile() const
 }
 
 osg::Image*
-TileSource::createImage(const TileKey& key, ImageOperation* prepOp, ProgressCallback* progress)
+TileSource::createImage(const TileKey&        key,
+                        ImageOperation*       prepOp, 
+                        ProgressCallback*     progress )
 {
+    if ( _status != STATUS_OK )
+        return 0L;
+
     // Try to get it from the memcache fist
     if (_memCache.valid())
     {
-        osg::ref_ptr<const osg::Image> cachedImage;
-        if ( _memCache->getImage( key, CacheSpec(), cachedImage ) )
-        {
-            return ImageUtils::cloneImage(cachedImage.get());
-        }
+        ReadResult r = _memCache->getOrCreateDefaultBin()->readImage( key.str() );
+        if ( r.succeeded() )
+            return r.releaseImage();
     }
 
     osg::ref_ptr<osg::Image> newImage = createImage(key, progress);
@@ -209,24 +324,27 @@ TileSource::createImage(const TileKey& key, ImageOperation* prepOp, ProgressCall
     if ( newImage.valid() && _memCache.valid() )
     {
         // cache it to the memory cache.
-        _memCache->setImage( key, CacheSpec(), newImage.get() );
+        _memCache->getOrCreateDefaultBin()->write( key.str(), newImage.get() );
     }
 
     return newImage.release();
 }
 
 osg::HeightField*
-TileSource::createHeightField(const TileKey& key, HeightFieldOperation* prepOp, ProgressCallback* progress )
+TileSource::createHeightField(const TileKey&        key,
+                              HeightFieldOperation* prepOp, 
+                              ProgressCallback*     progress )
 {
+    if ( _status != STATUS_OK )
+        return 0L;
+
     // Try to get it from the memcache first:
-	if (_memCache.valid())
-	{
-        osg::ref_ptr<const osg::HeightField> cachedHF;
-		if ( _memCache->getHeightField( key, CacheSpec(), cachedHF ) )
-        {
-            return new osg::HeightField( *cachedHF.get() );
-        }
-	}
+    if (_memCache.valid())
+    {
+        ReadResult r = _memCache->getOrCreateDefaultBin()->readObject( key.str() );
+        if ( r.succeeded() )
+            return r.release<osg::HeightField>();
+    }
 
     osg::ref_ptr<osg::HeightField> newHF = createHeightField( key, progress );
 
@@ -235,7 +353,7 @@ TileSource::createHeightField(const TileKey& key, HeightFieldOperation* prepOp,
 
     if ( newHF.valid() && _memCache.valid() )
     {
-        _memCache->setHeightField( key, CacheSpec(), newHF.get() );
+        _memCache->getOrCreateDefaultBin()->write( key.str(), newHF.get() );
     }
 
     //TODO: why not just newHF.release()? -gw
@@ -243,9 +361,12 @@ TileSource::createHeightField(const TileKey& key, HeightFieldOperation* prepOp,
 }
 
 osg::HeightField*
-TileSource::createHeightField( const TileKey& key,
-                               ProgressCallback* progress)
+TileSource::createHeightField(const TileKey&        key,
+                              ProgressCallback*     progress)
 {
+    if ( _status != STATUS_OK )
+        return 0L;
+
     osg::ref_ptr<osg::Image> image = createImage(key, progress);
     osg::HeightField* hf = 0;
     if (image.valid())
@@ -259,7 +380,7 @@ TileSource::createHeightField( const TileKey& key,
 bool
 TileSource::isOK() const 
 {
-    return getProfile() != NULL;
+    return _status == STATUS_OK;
 }
 
 void
@@ -274,58 +395,70 @@ TileSource::getProfile() const
     return _profile.get();
 }
 
-unsigned int
+unsigned
 TileSource::getMaxDataLevel() const
 {
-    //If we have no data extents, just use a reasonably high number
-    if (_dataExtents.size() == 0) return 35;
+    optional<unsigned> maxDataLevel;
 
-    unsigned int maxDataLevel = 0;
     for (DataExtentList::const_iterator itr = _dataExtents.begin(); itr != _dataExtents.end(); ++itr)
     {
-        if (itr->getMaxLevel() > maxDataLevel) maxDataLevel = itr->getMaxLevel();
+        if ( itr->maxLevel().isSet() && itr->maxLevel() > *maxDataLevel )
+        {
+            maxDataLevel = itr->maxLevel().get();
+        }
     }
-    return maxDataLevel;
+
+    // return "23" if no max is found
+    return maxDataLevel.isSet() ? *maxDataLevel : 23u;
 }
 
-unsigned int
+unsigned
 TileSource::getMinDataLevel() const
 {
-    //If we have no data extents, just use 0
-    if (_dataExtents.size() == 0) return 0;
+    optional<unsigned> minDataLevel;
 
-    unsigned int minDataLevel = INT_MAX;
     for (DataExtentList::const_iterator itr = _dataExtents.begin(); itr != _dataExtents.end(); ++itr)
     {
-        if (itr->getMinLevel() < minDataLevel) minDataLevel = itr->getMinLevel();
+        if ( itr->minLevel().isSet() && itr->minLevel() < *minDataLevel )
+        {
+            minDataLevel = itr->minLevel().get();
+        }
     }
-    return minDataLevel;
+
+    return minDataLevel.isSet() ? *minDataLevel : 0;
 }
 
+
 bool
 TileSource::hasDataAtLOD( unsigned lod ) const
 {
-    //If no data extents are provided, just return true
+    // the sematics here are really "MIGHT have data at LOD".
+
+    // If no data extents are provided, just return true
     if ( _dataExtents.size() == 0 )
         return true;
 
-    bool intersects = false;
-
     for (DataExtentList::const_iterator itr = _dataExtents.begin(); itr != _dataExtents.end(); ++itr)
     {
-        if ( itr->getMinLevel() <= lod && lod <= itr->getMaxLevel() )
+        if ((!itr->minLevel().isSet() || itr->minLevel() <= lod) &&
+            (!itr->maxLevel().isSet() || itr->maxLevel() >= lod))
         {
-            intersects = true;
-            break;
+            return true;
         }
     }
-    return intersects;
+
+    return false;
 }
 
+
 bool
 TileSource::hasDataInExtent( const GeoExtent& extent ) const
 {
-    //If no data extents are provided, just return true
+    // if the extent is invalid, no intersection.
+    if ( !extent.isValid() )
+        return false;
+
+    // If no data extents are provided, just return true
     if ( _dataExtents.size() == 0 )
         return true;
 
@@ -346,15 +479,20 @@ TileSource::hasDataInExtent( const GeoExtent& extent ) const
 bool
 TileSource::hasData(const osgEarth::TileKey& key) const
 {
+    //sematics: might have data.
+
     //If no data extents are provided, just return true
-    if (_dataExtents.size() == 0) return true;
+    if (_dataExtents.size() == 0) 
+        return true;
 
     const osgEarth::GeoExtent& keyExtent = key.getExtent();
     bool intersectsData = false;
 
     for (DataExtentList::const_iterator itr = _dataExtents.begin(); itr != _dataExtents.end(); ++itr)
     {
-        if (keyExtent.intersects( *itr ) && key.getLevelOfDetail() >= itr->getMinLevel() && key.getLevelOfDetail() <= itr->getMaxLevel())
+        if ((keyExtent.intersects( *itr )) && 
+            (!itr->minLevel().isSet() || itr->minLevel() <= key.getLOD()) &&
+            (!itr->maxLevel().isSet() || itr->maxLevel() >= key.getLOD()))
         {
             intersectsData = true;
             break;
@@ -364,12 +502,6 @@ TileSource::hasData(const osgEarth::TileKey& key) const
     return intersectsData;
 }
 
-bool
-TileSource::supportsPersistentCaching() const
-{
-    return true;
-}
-
 TileBlacklist*
 TileSource::getBlacklist()
 {
@@ -400,7 +532,7 @@ TileSourceFactory::create( const TileSourceOptions& options )
         return 0L;
     }
 
-    osg::ref_ptr<osgDB::ReaderWriter::Options> rwopt = new osgDB::ReaderWriter::Options();
+    osg::ref_ptr<osgDB::Options> rwopt = Registry::instance()->cloneOrCreateOptions();
     rwopt->setPluginData( TILESOURCEOPTIONS_TAG, (void*)&options );
 
     std::string driverExt = std::string( ".osgearth_" ) + driver;
@@ -410,6 +542,16 @@ TileSourceFactory::create( const TileSourceOptions& options )
         OE_WARN << "WARNING: Failed to load TileSource driver for \"" << driver << "\"" << std::endl;
     }
 
+    // apply an Override Profile if provided.
+    if ( result && options.profile().isSet() )
+    {
+        const Profile* profile = Profile::create(*options.profile());
+        if ( profile )
+        {
+            result->setProfile( profile );
+        }
+    }
+
     return result;
 }
 
diff --git a/src/osgEarth/URI b/src/osgEarth/URI
index ff35d1b..7263063 100644
--- a/src/osgEarth/URI
+++ b/src/osgEarth/URI
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,10 +17,15 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #ifndef OSGEARTH_URI
-#define OSGEARTH_URI
+#define OSGEARTH_URI 1
 
 #include <osgEarth/Common>
+#include <osgEarth/CacheBin>
+#include <osgEarth/CachePolicy>
+#include <osgEarth/Containers>
 #include <osgEarth/FileUtils>
+#include <osgEarth/IOTypes>
+#include <osgEarth/Progress>
 #include <osg/Image>
 #include <osg/Node>
 #include <osgDB/ReaderWriter>
@@ -29,7 +34,6 @@
 
 namespace osgEarth
 {
-    class Config;
     class URI;
 
     /**
@@ -58,10 +62,13 @@ namespace osgEarth
         /** Copy constructor. */
         URIContext( const URIContext& rhs ) : _referrer(rhs._referrer) { }
 
+        /** dtor */
+        virtual ~URIContext() { }
+
         /** Serializes this context to an Options structure. This is useful when passing context information
             to an osgDB::ReaderWriter that takes a stream as input -- the stream is anonymous, therefore this
             is the preferred way to communicate the context information. */
-        void store( osgDB::Options* options );
+        void apply( osgDB::Options* options );
 
         /** Creates a context from the serialized version in an Options structure (see above) */
         URIContext( const osgDB::Options* options );
@@ -87,6 +94,8 @@ namespace osgEarth
         std::string _referrer;
     };
 
+//--------------------------------------------------------------------
+
     /**
      * Stream container for reading a URI directly from a stream
      */
@@ -107,6 +116,8 @@ namespace osgEarth
         std::stringstream _bufStream;
     };
 
+//--------------------------------------------------------------------
+
     /**
      * Represents the location of a resource, providing the raw (original, possibly
      * relative) and absolute forms.
@@ -134,6 +145,9 @@ namespace osgEarth
          */
         URI( const char* location );
 
+        /** dtor */
+        virtual ~URI() { }
+
     public:
 
         /** The base (possibly relative) location string. */
@@ -151,45 +165,65 @@ namespace osgEarth
         /** Whether the URI is empty */
         bool empty() const { return _baseURI.empty(); }
 
+        /** Whether the object of the URI is cacheable. */
+        bool isRemote() const;
+
         /** Returns a copy of this URI with the suffix appended */
         URI append( const std::string& suffix ) const;
 
+        /** String used for keying the cache */
+        const std::string& cacheKey() const { return !_cacheKey.empty() ? _cacheKey : _fullURI; }
+
+
     public:
 
-        bool operator < ( const URI& rhs ) const { return _fullURI < rhs._fullURI; }
+        /** Sets a cache key. By default the cache key is the full URI, but you can override that. */
+        void setCacheKey( const std::string& key ) { _cacheKey = key; }
+
+
+    public: // read methods return a ReadResult object
+
+        ReadResult readObject(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const;
+
+        ReadResult readImage(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const;
+
+        ReadResult readNode(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const;
+
+        ReadResult readString(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const;
+
+        ReadResult readConfig(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const;
+
+    public: // get methods call the read* methods, then just return the raw data.
+
+        osg::Object* getObject(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const { return readObject(dbOptions, progress).releaseObject(); }
+
+        osg::Image* getImage(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const { return readImage(dbOptions, progress).releaseImage(); }
 
-    public: // convenience reader methods
-
-        /** Result codes for the read* methods. Call getLastResultCode() to fetch. */
-        enum ResultCode {
-            RESULT_OK,
-            RESULT_CANCELED,
-            RESULT_NOT_FOUND,
-            RESULT_SERVER_ERROR,
-            RESULT_TIMEOUT,
-            RESULT_NO_READER,
-            RESULT_READER_ERROR,
-            RESULT_UNKNOWN_ERROR
-        };
-
-        /** Reads an object from the URI. */
-        osg::Object* readObject(
-            const osgDB::Options* options  =0L,
-            ResultCode*           out_code =0L ) const;
-
-        /** Reads an image from the URI. */
-        osg::Image* readImage(
-            const osgDB::Options* options  =0L,
-            ResultCode*           out_code =0L ) const;
-
-        /** Reads a node from the URI. */
-        osg::Node* readNode(
-            const osgDB::Options* options  =0L,
-            ResultCode*           out_code =0L ) const;
-
-        /** Reads a string from the URI. */
-        std::string readString(
-            ResultCode* out_code =0L ) const;
+        osg::Node* getNode(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const { return readNode(dbOptions, progress).releaseNode(); }
+
+        std::string getString(
+            const osgDB::Options* dbOptions   =0L,
+            ProgressCallback*     progress    =0L ) const { return readString(dbOptions, progress).getString(); }
+
+    public:
+
+        bool operator < ( const URI& rhs ) const { return _fullURI < rhs._fullURI; }
 
     public:
         /** Copier */
@@ -201,8 +235,186 @@ namespace osgEarth
     protected:
         std::string _baseURI;
         std::string _fullURI;
+        std::string _cacheKey;
         URIContext  _context;
     };
+    
+
+//------------------------------------------------------------------------
+
+
+    /**
+     * A lookup table that maps URI references to other URI references. This
+     * is used as an optional resource mapping table. (See KML's ResourceMap
+     * for usage example)
+     *
+     * WARNING: osgDB::Options will only store a raw pointer to the class, so
+     * make sure the scope of the osgDB::Options does not exceed the scope of
+     * the embedded alias map!
+     */
+    class OSGEARTH_EXPORT URIAliasMap
+    {
+    public:
+        /**
+         * Inserts a key-value pair into the map.
+         */
+        void insert( const std::string& key, const std::string& value );
+
+        /**
+         * Resolves the input address into a URI string.
+         */
+        std::string resolve(const std::string& input, const URIContext& context) const;
+
+        /**
+         * True if there are no mappings
+         */
+        bool empty() const { return _map.empty(); }
+
+        /**
+         * Clears out the map.
+         */
+        void clear() { _map.clear(); }
+
+        /**
+         * Loads an alias map from an Options.
+         */
+        static URIAliasMap* from( const osgDB::Options* options ) {
+            return options ? static_cast<URIAliasMap*>(const_cast<osgDB::Options*>(options)->getPluginData("osgEarth::URIAliasMap")) : 0L;
+        }
+
+        /**
+         * Stores an alias map in an Options
+         */
+        void apply( osgDB::Options* options ) {
+            if ( options ) options->setPluginData("osgEarth::URIAliasMap", this);
+        }
+
+    protected:
+        std::map<std::string,std::string> _map;
+        friend class Config;
+    };
+
+
+    /**
+     * A custom read callback (that you can set in an osgDB::Options) that will 
+     * attempt to resolve pathnames using a URI alias map.
+     */
+    class OSGEARTH_EXPORT URIAliasMapReadCallback : public osgDB::ReadFileCallback
+    {
+    public:
+        URIAliasMapReadCallback( const URIAliasMap& aliasMap, const URIContext& context );
+
+        virtual osgDB::ReaderWriter::ReadResult openArchive(const std::string& filename, osgDB::ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const osgDB::Options* useObjectCache);
+        virtual osgDB::ReaderWriter::ReadResult readObject(const std::string& filename, const osgDB::Options* options);
+        virtual osgDB::ReaderWriter::ReadResult readImage(const std::string& filename, const osgDB::Options* options);
+        virtual osgDB::ReaderWriter::ReadResult readHeightField(const std::string& filename, const osgDB::Options* options);
+        virtual osgDB::ReaderWriter::ReadResult readNode(const std::string& filename, const osgDB::Options* options);
+        virtual osgDB::ReaderWriter::ReadResult readShader(const std::string& filename, const osgDB::Options* options);
+
+    protected:
+        const URIAliasMap& _aliasMap;
+        URIContext         _context;
+    };
+
+
+//------------------------------------------------------------------------
+
+    /**
+     * A URI result cache that you can embed in an osgDB::Options, and if found,
+     * URI will attempt to use it. 
+     *
+     * WARNING: osgDB::Options will only store a raw pointer to the class, so
+     * make sure the scope of the osgDB::Options does not exceed the scope of
+     * the embedded cache!
+     */
+    struct /*header-only*/ URIResultCache : public LRUCache<URI, ReadResult>
+    {
+        URIResultCache( bool threadsafe =true )
+            : LRUCache<URI,ReadResult>( threadsafe ) { }
+
+        static URIResultCache* from(const osgDB::Options* options) {
+            return options ? static_cast<URIResultCache*>(const_cast<osgDB::Options*>(options)->getPluginData("osgEarth::URIResultCache")) : 0L;
+        }
+
+        void apply( osgDB::Options* options ) {
+            if ( options ) options->setPluginData("osgEarth::URIResultCache", this);
+        }
+    };
+
+    
+//------------------------------------------------------------------------
+
+    // Config specialization for URI:
+
+    template <> inline
+    void Config::addIfSet<URI>( const std::string& key, const optional<URI>& opt ) {
+        if ( opt.isSet() ) {
+            Config conf(key, opt->base());
+            conf.setReferrer(opt->context().referrer());
+            add( conf );
+        }
+    }
+
+    template<> inline
+    void Config::updateIfSet<URI>( const std::string& key, const optional<URI>& opt ) {
+        if ( opt.isSet() ) {
+            remove(key);
+            Config conf(key, opt->base());
+            conf.setReferrer(opt->context().referrer());
+            add( conf );
+        }
+    }
+
+    template<> inline
+    bool Config::getIfSet<URI>( const std::string& key, optional<URI>& output ) const {
+        if ( hasValue(key) ) {
+            output = URI( value(key), referrer(key) );
+            return true;
+        }
+        else
+            return false;
+    }
+
+    // Config specialization for URIAliasMap
+
+    template <> inline
+    void Config::addIfSet<URIAliasMap>( const std::string& key, const optional<URIAliasMap>& map ) {
+        if ( map.isSet() ) {
+            Config conf( key );
+            for( std::map<std::string,std::string>::const_iterator i = map->_map.begin(); i != map->_map.end(); ++i ) {
+                Config alias( "alias" );
+                alias.add( "source", i->first );
+                alias.add( "target", i->second );
+                conf.add( alias );
+            }
+            add(conf);
+        }
+    }
+
+    template <> inline
+    void Config::updateIfSet<URIAliasMap>( const std::string& key, const optional<URIAliasMap>& map ) {
+        if ( map.isSet() ) {
+            remove( key );
+            addIfSet( key, map );
+        }
+    }
+
+    template <> inline
+    bool Config::getIfSet<URIAliasMap>( const std::string& key, optional<URIAliasMap>& output ) const {
+        Config alias = child(key);
+        if ( !alias.empty() ) {
+            for( ConfigSet::const_iterator i = alias.children().begin(); i != alias.children().end(); ++i ) {
+                std::string source = i->value("source");
+                std::string target = i->value("target");
+                if ( !source.empty() && !target.empty() )
+                    output->insert( source, target );
+            }
+            return true;
+        }
+        else {
+            return false;
+        }
+    }
 }
 
 #endif // OSGEARTH_URI
diff --git a/src/osgEarth/URI.cpp b/src/osgEarth/URI.cpp
index 94c5c1b..ddbb576 100644
--- a/src/osgEarth/URI.cpp
+++ b/src/osgEarth/URI.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,16 +17,22 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarth/URI>
+#include <osgEarth/Cache>
+#include <osgEarth/CacheBin>
 #include <osgEarth/HTTPClient>
 #include <osgEarth/Registry>
 #include <osgDB/FileNameUtils>
 #include <osgDB/ReadFile>
 #include <osgDB/ReaderWriter>
+#include <osgDB/Archive>
 #include <fstream>
 #include <sstream>
 
 #define LC "[URI] "
 
+#define OE_TEST OE_NULL
+//#define OE_TEST OE_NOTICE
+
 using namespace osgEarth;
 
 //------------------------------------------------------------------------
@@ -109,7 +115,7 @@ URIContext::add( const std::string& sub ) const
 }
 
 void
-URIContext::store( osgDB::Options* options )
+URIContext::apply( osgDB::Options* options )
 {
     if ( options )
     {
@@ -123,6 +129,15 @@ URIContext::URIContext( const osgDB::Options* options )
     if ( options )
     {
         _referrer = options->getPluginStringData( "osgEarth::URIContext::referrer" );
+
+        if ( _referrer.empty() && options->getDatabasePathList().size() > 0 )
+        {
+            const std::string& front = options->getDatabasePathList().front();
+            if ( osgEarth::isArchive(front) )
+            {
+                _referrer = front + "/";
+            }
+        }
     }
 }
 
@@ -162,68 +177,402 @@ URI::append( const std::string& suffix ) const
     return result;
 }
 
-osg::Object*
-URI::readObject( const osgDB::Options* options, ResultCode* out_code ) const
+bool
+URI::isRemote() const
 {
-    if ( empty() ) {
-        if ( out_code ) *out_code = RESULT_NOT_FOUND;
-        return 0L;
+    return osgDB::containsServerAddress( _fullURI );
+}
+
+namespace
+{
+    // extracts a CacheBin from the dboptions; if one cannot be found, fall back on the
+    // default CacheBin of a Cache found in the dboptions; failing that, call back on
+    // the default CacheBin of the registry-wide cache.
+    CacheBin* s_getCacheBin( const osgDB::Options* dbOptions )
+    {
+        const osgDB::Options* o = dbOptions ? dbOptions : Registry::instance()->getDefaultOptions();
+
+        CacheBin* bin = CacheBin::get( o );
+        if ( !bin )
+        {
+            Cache* cache = Cache::get( o );
+            if ( !cache )
+            {
+                cache = Registry::instance()->getCache();
+            }
+
+            if ( cache )
+            {
+                bin = cache->getOrCreateDefaultBin();
+            }
+        }
+        return bin;
     }
 
-    osg::ref_ptr<const osgDB::Options> myOptions = fixOptions(options);
+    // convert an osgDB::ReaderWriter::ReadResult to an osgEarth::ReadResult
+    ReadResult toReadResult( osgDB::ReaderWriter::ReadResult& rr )
+    {
+        if ( rr.validObject() )
+            return ReadResult( rr.getObject() );
+        else
+            return ReadResult( ReadResult::RESULT_NOT_FOUND ); // TODO: translate codes better
+    }
 
-    osg::ref_ptr<osg::Object> object;
-    ResultCode result = (ResultCode)HTTPClient::readObjectFile( _fullURI, object, myOptions.get() );
-    if ( out_code ) *out_code = result;
+    // Utility to redirect a local file read if it has an archive name in the URI
+    ReadResult readStringFile( const std::string& uri, const osgDB::Options* opt )
+    {
+        osgDB::Registry::ArchiveExtensionList e = osgDB::Registry::instance()->getArchiveExtensions();
+        for(osgDB::Registry::ArchiveExtensionList::iterator aitr = e.begin(); aitr != e.end(); ++aitr )
+        {
+            std::string archiveExtension = "." + (*aitr);
+            std::string::size_type positionArchive = uri.find(archiveExtension+'/');
+            if (positionArchive == std::string::npos) positionArchive = uri.find(archiveExtension+'\\');
+            if (positionArchive != std::string::npos)
+            {
+                std::string::size_type endArchive = positionArchive + archiveExtension.length();
+                std::string archiveName( uri.substr(0, endArchive));
+                std::string fileName( uri.substr(endArchive+1, std::string::npos) );
+
+                osgDB::ReaderWriter::ReadResult result = osgDB::Registry::instance()->openArchiveImplementation(
+                    archiveName, osgDB::ReaderWriter::READ, 4096, opt );
+
+                if (!result.validArchive()) 
+                    return ReadResult(); // error
+
+                osgDB::Archive* archive = result.getArchive();
+
+                osg::ref_ptr<osgDB::ReaderWriter::Options> options = opt ? opt->cloneOptions() : 
+                    Registry::instance()->cloneOrCreateOptions();
+
+                options->setDatabasePath(archiveName);
+
+                osgDB::ReaderWriter::ReadResult rr = archive->readObject(fileName, options.get());
+                if ( rr.success() )
+                    return ReadResult(rr.takeObject());
+                else
+                    return ReadResult();
+            }
+        }
 
-    return object.release();
-}
+        // no archive; just read it normally
+        std::ifstream input( uri.c_str() );
+        if ( input.is_open() )
+        {
+            input >> std::noskipws;
+            std::stringstream buf;
+            buf << input.rdbuf();
+            std::string bufStr;
+            bufStr = buf.str();
+            return ReadResult( new StringObject(bufStr) );
+        }
 
-osg::Image*
-URI::readImage( const osgDB::Options* options, ResultCode* out_code ) const
-{
-    if ( empty() ) {
-        if ( out_code ) *out_code = RESULT_NOT_FOUND;
-        return 0L;
+        // no good
+        return ReadResult();
     }
 
-    osg::ref_ptr<const osgDB::Options> myOptions = fixOptions(options);
 
-    //OE_INFO << LC << "readImage: " << _fullURI << std::endl;
+    //--------------------------------------------------------------------
+    // Read functors (used by the doRead method)
 
-    osg::ref_ptr<osg::Image> image;
-    ResultCode result = (ResultCode)HTTPClient::readImageFile( _fullURI, image, myOptions.get() );
-    if ( out_code ) *out_code = result;
+    struct ReadObject
+    {
+        bool callbackRequestsCaching( URIReadCallback* cb ) const { return !cb || ((cb->cachingSupport() & URIReadCallback::CACHE_OBJECTS) != 0); }
+        ReadResult fromCallback( URIReadCallback* cb, const std::string& uri, const osgDB::Options* opt ) { return cb->readObject(uri, opt); }
+        ReadResult fromCache( CacheBin* bin, const std::string& key, double maxAge ) { return bin->readObject(key, maxAge); }
+        ReadResult fromHTTP( const std::string& uri, const osgDB::Options* opt, ProgressCallback* p ) { return HTTPClient::readObject(uri, opt, p); }
+        ReadResult fromFile( const std::string& uri, const osgDB::Options* opt ) { return ReadResult(osgDB::readObjectFile(uri, opt)); }
+    };
+
+    struct ReadNode
+    {
+        bool callbackRequestsCaching( URIReadCallback* cb ) const { return !cb || ((cb->cachingSupport() & URIReadCallback::CACHE_NODES) != 0); }
+        ReadResult fromCallback( URIReadCallback* cb, const std::string& uri, const osgDB::Options* opt ) { return cb->readNode(uri, opt); }
+        ReadResult fromCache( CacheBin* bin, const std::string& key, double maxAge ) { return bin->readObject(key, maxAge); }
+        ReadResult fromHTTP( const std::string& uri, const osgDB::Options* opt, ProgressCallback* p ) { return HTTPClient::readNode(uri, opt, p); }
+        ReadResult fromFile( const std::string& uri, const osgDB::Options* opt ) { return ReadResult(osgDB::readNodeFile(uri, opt)); }
+    };
+
+    struct ReadImage
+    {
+        bool callbackRequestsCaching( URIReadCallback* cb ) const { 
+            return !cb || ((cb->cachingSupport() & URIReadCallback::CACHE_IMAGES) != 0); 
+        }
+        ReadResult fromCallback( URIReadCallback* cb, const std::string& uri, const osgDB::Options* opt ) { 
+            ReadResult r = cb->readImage(uri, opt);
+            if ( r.getImage() ) r.getImage()->setFileName(uri);
+            return r;
+        }                
+        ReadResult fromCache( CacheBin* bin, const std::string& key, double maxAge ) { 
+            ReadResult r = bin->readImage(key, maxAge);
+            if ( r.getImage() ) r.getImage()->setFileName( key );
+            return r;
+        }
+        ReadResult fromHTTP( const std::string& uri, const osgDB::Options* opt, ProgressCallback* p ) { 
+            ReadResult r = HTTPClient::readImage(uri, opt, p);
+            if ( r.getImage() ) r.getImage()->setFileName( uri );
+            return r;
+        }
+        ReadResult fromFile( const std::string& uri, const osgDB::Options* opt ) { 
+            ReadResult r = ReadResult(osgDB::readImageFile(uri, opt));
+            if ( r.getImage() ) r.getImage()->setFileName( uri );
+            return r;
+        }
+    };
+
+    struct ReadString
+    {
+        bool callbackRequestsCaching( URIReadCallback* cb ) const { return !cb || ((cb->cachingSupport() & URIReadCallback::CACHE_STRINGS) != 0); }
+        ReadResult fromCallback( URIReadCallback* cb, const std::string& uri, const osgDB::Options* opt ) { return cb->readString(uri, opt); }
+        ReadResult fromCache( CacheBin* bin, const std::string& key, double maxAge ) { return bin->readString(key, maxAge); }
+        ReadResult fromHTTP( const std::string& uri, const osgDB::Options* opt, ProgressCallback* p ) { return HTTPClient::readString(uri, opt, p); }
+        ReadResult fromFile( const std::string& uri, const osgDB::Options* opt ) { return readStringFile(uri, opt); }
+    };
+
+    //--------------------------------------------------------------------
+    // MASTER read template function. I templatized this so we wouldn't
+    // have 4 95%-identical code paths to maintain...
+
+    template<typename READ_FUNCTOR>
+    ReadResult doRead(
+        const URI&            inputURI,
+        const osgDB::Options* dbOptions,
+        ProgressCallback*     progress)
+    {
+        ReadResult result;
+
+        if ( inputURI.empty() )
+            return result;
 
-    return image.release();
+        // establish our IO options:
+        const osgDB::Options* localOptions = dbOptions ? dbOptions : Registry::instance()->getDefaultOptions();
+
+        READ_FUNCTOR reader;
+
+        URI uri = inputURI;
+
+        // check if there's an alias map, and if so, attempt to resolve the alias:
+        URIAliasMap* aliasMap = URIAliasMap::from( localOptions );
+        if ( aliasMap )
+        {
+            uri = aliasMap->resolve(inputURI.full(), inputURI.context());
+        }
+
+        // check if there's a URI cache in the options.
+        URIResultCache* memCache = URIResultCache::from( localOptions );
+        if ( memCache )
+        {
+            URIResultCache::Record r = memCache->get( uri );
+            if ( r.valid() ) result = r.value();
+        }
+
+        if ( result.empty() )
+        {
+            // see if there's a read callback installed.
+            URIReadCallback* cb = Registry::instance()->getURIReadCallback();
+
+            // for a local URI, bypass all the caching logic
+            if ( !uri.isRemote() )
+            {
+                // try to use the callback if it's set. Callback ignores the caching policy.
+                if ( cb )
+                {
+                    result = reader.fromCallback( cb, uri.full(), localOptions );
+                    if (result.code() != ReadResult::RESULT_NOT_IMPLEMENTED)
+                    {
+                        // only "NOT_IMPLEMENTED" is a reason to fallback. Anything else if a FAIL
+                        return result;
+                    }
+                }
+
+                if ( result.empty() )
+                {
+                    result = reader.fromFile( uri.full(), localOptions );
+                }
+            }
+
+            // remote URI, consider caching:
+            else
+            {
+                bool callbackCachingOK = !cb || reader.callbackRequestsCaching(cb);
+
+                // by default, use a CachePolicy specified by the caller:
+                optional<CachePolicy> cp;
+                CachePolicy::fromOptions( localOptions, cp );
+
+                // if not, use the system defult:
+                if ( !cp.isSet() && Registry::instance()->defaultCachePolicy().isSet() )
+                    cp =  Registry::instance()->defaultCachePolicy().value();
+                
+                // otherwise, just use a default (read/write)
+                if ( !cp.isSet() )
+                    cp = CachePolicy::DEFAULT;
+
+
+                // get a cache bin if we need it:
+                CacheBin* bin = 0L;
+                if ( (cp->usage() != CachePolicy::USAGE_NO_CACHE) && callbackCachingOK )
+                {
+                    bin = s_getCacheBin( dbOptions );
+                }
+
+                // first try to go to the cache if there is one:
+                if ( bin && cp->isCacheReadable() )
+                {
+                    result = reader.fromCache( bin, uri.cacheKey(), *cp->maxAge() );
+                    if ( result.succeeded() )
+                        result.setIsFromCache(true);
+                }
+
+                // not in the cache, so proceed to read it from the network.
+                if ( result.empty() )
+                {
+                    // try to use the callback if it's set. Callback ignores the caching policy.
+                    if ( cb )
+                    {                
+                        result = reader.fromCallback( cb, uri.full(), localOptions );
+                        if ( result.code() != ReadResult::RESULT_NOT_IMPLEMENTED )
+                        {
+                            return result;
+                        }
+                    }
+
+                    // still no data, go to the source:
+                    if ( result.empty() && cp->usage() != CachePolicy::USAGE_CACHE_ONLY )
+                    {
+                        result = reader.fromHTTP( uri.full(), localOptions, progress );
+                    }
+
+                    // write the result to the cache if possible:
+                    if ( result.succeeded() && bin && cp->isCacheWriteable() )
+                    {
+                        bin->write( uri.cacheKey(), result.getObject(), result.metadata() );
+                    }
+                }
+
+                OE_TEST << LC 
+                    << uri.base() << ": " 
+                    << (result.succeeded() ? "OK" : "FAILED") 
+                    << "; policy=" << cp->usageString()
+                    << (result.isFromCache() && result.succeeded() ? "; (from cache)" : "")
+                    << std::endl;
+            }
+
+            if ( result.getObject() )
+            {
+                result.getObject()->setName( uri.base() );
+
+                if ( memCache )
+                {
+                    memCache->insert( uri, result );
+                }
+            }
+        }
+
+        return result;
+    }
 }
 
-osg::Node*
-URI::readNode( const osgDB::Options* options, ResultCode* out_code ) const
+ReadResult
+URI::readObject(const osgDB::Options* dbOptions,
+                ProgressCallback*     progress ) const
 {
-    if ( empty() ) {
-        if ( out_code ) *out_code = RESULT_NOT_FOUND;
-        return 0L;
-    }
+    return doRead<ReadObject>( *this, dbOptions, progress );
+}
+
+ReadResult
+URI::readNode(const osgDB::Options* dbOptions,
+              ProgressCallback*     progress ) const
+{
+    return doRead<ReadNode>( *this, dbOptions, progress );
+}
+
+ReadResult
+URI::readImage(const osgDB::Options* dbOptions,
+               ProgressCallback*     progress ) const
+{
+    return doRead<ReadImage>( *this, dbOptions, progress );
+}
+
+ReadResult
+URI::readString(const osgDB::Options* dbOptions,
+                ProgressCallback*     progress ) const
+{
+    return doRead<ReadString>( *this, dbOptions, progress );
+}
+
 
-    osg::ref_ptr<const osgDB::Options> myOptions = fixOptions(options);
+//------------------------------------------------------------------------
 
-    osg::ref_ptr<osg::Node> node;
-    ResultCode result = (ResultCode)HTTPClient::readNodeFile( _fullURI, node, myOptions.get() );
-    if ( out_code ) *out_code = result;
-    return node.release();
+void
+URIAliasMap::insert(const std::string& key, const std::string& value)
+{
+    _map.insert( std::make_pair(key, value) );
 }
 
 std::string
-URI::readString( ResultCode* out_code ) const
+URIAliasMap::resolve(const std::string& input, const URIContext& context) const
 {
-    if ( empty() ) {
-        if ( out_code ) *out_code = RESULT_NOT_FOUND;
-        return 0L;
+    for(std::map<std::string,std::string>::const_iterator i = _map.begin(); i != _map.end(); ++i )
+    {
+        std::string source = context.getOSGPath(i->first);
+        std::string pattern = context.getOSGPath(input);
+        if ( ciEquals(source, pattern) )
+            return context.getOSGPath(i->second);
     }
+    return input;
+}
+
+
+//------------------------------------------------------------------------
 
-    std::string str;
-    ResultCode result = (ResultCode)HTTPClient::readString( _fullURI, str );
-    if ( out_code ) *out_code = result;
-    return str;
+
+URIAliasMapReadCallback::URIAliasMapReadCallback(const URIAliasMap& aliasMap,
+                                                 const URIContext&  context ) : 
+_aliasMap( aliasMap ), 
+_context ( context )
+{
+    //nop
+}
+
+osgDB::ReaderWriter::ReadResult
+URIAliasMapReadCallback::openArchive(const std::string& filename, osgDB::ReaderWriter::ArchiveStatus status, unsigned int indexBlockSizeHint, const osgDB::Options* useObjectCache)
+{
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->openArchive(_aliasMap.resolve(filename,_context), status, indexBlockSizeHint, useObjectCache);
+    else return osgDB::Registry::instance()->openArchive(_aliasMap.resolve(filename,_context), status, indexBlockSizeHint, useObjectCache);
+}
+
+osgDB::ReaderWriter::ReadResult 
+URIAliasMapReadCallback::readObject(const std::string& filename, const osgDB::Options* options)
+{
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->readObject(_aliasMap.resolve(filename,_context),options);
+    else return osgDB::Registry::instance()->readObjectImplementation(_aliasMap.resolve(filename,_context),options);
+}
+
+osgDB::ReaderWriter::ReadResult 
+URIAliasMapReadCallback::readImage(const std::string& filename, const osgDB::Options* options)
+{
+    OE_INFO << LC << "Map: " << filename << " to " << _aliasMap.resolve(filename,_context) << std::endl;
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->readImage(_aliasMap.resolve(filename,_context),options);
+    else return osgDB::Registry::instance()->readImageImplementation(_aliasMap.resolve(filename,_context),options);
+}
+
+osgDB::ReaderWriter::ReadResult 
+URIAliasMapReadCallback::readHeightField(const std::string& filename, const osgDB::Options* options)
+{
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->readHeightField(_aliasMap.resolve(filename,_context),options);
+    else return osgDB::Registry::instance()->readHeightFieldImplementation(_aliasMap.resolve(filename,_context),options);
+}
+
+osgDB::ReaderWriter::ReadResult 
+URIAliasMapReadCallback::readNode(const std::string& filename, const osgDB::Options* options)
+{
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->readNode(_aliasMap.resolve(filename,_context),options);
+    else return osgDB::Registry::instance()->readNodeImplementation(_aliasMap.resolve(filename,_context),options);
+}
+
+osgDB::ReaderWriter::ReadResult 
+URIAliasMapReadCallback::readShader(const std::string& filename, const osgDB::Options* options)
+{
+    if (osgDB::Registry::instance()->getReadFileCallback()) return osgDB::Registry::instance()->getReadFileCallback()->readShader(_aliasMap.resolve(filename,_context),options);
+    else return osgDB::Registry::instance()->readShaderImplementation(_aliasMap.resolve(filename,_context),options);
 }
diff --git a/src/osgEarth/Units b/src/osgEarth/Units
index 34b9805..bc5abf2 100644
--- a/src/osgEarth/Units
+++ b/src/osgEarth/Units
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #define OSGEARTH_UNITS_H 1
 
 #include <osgEarth/Common>
+#include <osgEarth/Config>
 
 namespace osgEarth
 {
@@ -71,6 +72,8 @@ namespace osgEarth
 
     public:
 
+        static bool parse( const std::string& input, Units& output );
+
         static bool convert( const Units& from, const Units& to, double input, double& output ) {
             if ( canConvert(from, to) ) {
                 if ( from._type == TYPE_LINEAR || from._type == TYPE_ANGULAR || from._type == TYPE_TEMPORAL )
@@ -83,7 +86,7 @@ namespace osgEarth
         }
 
         static double convert( const Units& from, const Units& to, double input ) {
-            double output;
+            double output = input;
             convert( from, to, input, output );
             return output;
         }
@@ -162,14 +165,19 @@ namespace osgEarth
 
         qualified_double<T>( const T& rhs ) : _value(rhs._value), _units(rhs._units) { }
 
+        qualified_double<T>( const Config& conf, const Units& defaultUnits ) {
+            _value = conf.value<double>("value", 0.0);
+            if ( !Units::parse( conf.value("units"), _units ) )
+                _units = defaultUnits;
+        }
+
         void set( double value, const Units& units ) {
             _value = value;
             _units = units;
         }
 
         T& operator = ( const T& rhs ) {
-            if ( _units.canConvert(rhs._units) )
-                _value = rhs.as(_units);
+            set( rhs._value, rhs._units );
             return static_cast<T&>(*this);
         }
 
@@ -185,6 +193,14 @@ namespace osgEarth
                 T(0, Units());
         }
 
+        T operator * ( double rhs ) const { 
+            return T(_value * rhs, _units);
+        }
+
+        T operator / ( double rhs ) const { 
+            return T(_value / rhs, _units);
+        }
+
         bool operator == ( const T& rhs ) const {
             return _units.canConvert( rhs._units ) && rhs.as(_units) == _value;
         }
@@ -197,16 +213,31 @@ namespace osgEarth
             return _units.canConvert(rhs._units) && _value < rhs.as(_units);
         }
 
+        bool operator <= ( const T& rhs ) const {
+            return _units.canConvert(rhs._units) && _value <= rhs.as(_units);
+        }
+
         bool operator > ( const T& rhs ) const {
             return _units.canConvert(rhs._units) && _value > rhs.as(_units);
         }
 
+        bool operator >= ( const T& rhs ) const {
+            return _units.canConvert(rhs._units) && _value >= rhs.as(_units);
+        }
+
         double as( const Units& convertTo ) const {
             return _units.convertTo( convertTo, _value );
         }
 
         const Units& getUnits() const { return _units; }
 
+        Config getConfig() const {
+            Config conf;
+            conf.set("value", _value);
+            conf.set("units", _units.getAbbr());
+            return conf;
+        }
+
     private:
         double _value;
         Units  _units;
@@ -214,24 +245,35 @@ namespace osgEarth
 
     struct Linear : public qualified_double<Linear> {
         Linear() : qualified_double<Linear>(0, Units::METERS) { }
+        Linear(double value ) : qualified_double<Linear>(value, Units::METERS) { }
         Linear(double value, const Units& units) : qualified_double<Linear>(value, units) { }
+        Linear(const Config& conf) : qualified_double<Linear>(conf, Units::METERS) { }
     };
+    typedef Linear Distance;
 
     struct Angular : public qualified_double<Angular> {
         Angular() : qualified_double<Angular>(0, Units::DEGREES) { }
         Angular(double value) : qualified_double<Angular>(value, Units::DEGREES) { }
         Angular(double value, const Units& units) : qualified_double<Angular>(value, units) { }
+        Angular(const Config& conf) : qualified_double<Angular>(conf, Units::DEGREES) { }
     };
+    typedef Angular Angle;
 
     struct Temporal : public qualified_double<Temporal> {
         Temporal() : qualified_double<Temporal>(0, Units::SECONDS) { }
+        Temporal(double value) : qualified_double<Temporal>(value, Units::SECONDS) { }
         Temporal(double value, const Units& units) : qualified_double<Temporal>(value, units) { }
+        Temporal(const Config& conf) : qualified_double<Temporal>(conf, Units::SECONDS) { }
     };
+    typedef Temporal Duration;
 
     struct Speed : public qualified_double<Speed> {
         Speed() : qualified_double<Speed>(0, Units::METERS_PER_SECOND) { }
+        Speed(double value) : qualified_double<Speed>(value, Units::METERS_PER_SECOND) { }
         Speed(double value, const Units& units) : qualified_double<Speed>(value, units) { }
+        Speed(const Config& conf) : qualified_double<Speed>(conf, Units::METERS_PER_SECOND) { }
     };
+
 }
 
 #endif // OSGEARTH_UNITS_H
diff --git a/src/osgEarth/Units.cpp b/src/osgEarth/Units.cpp
index 4b7a293..c41b2bb 100644
--- a/src/osgEarth/Units.cpp
+++ b/src/osgEarth/Units.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,7 @@
  */
 
 #include <osgEarth/Units>
+#include <osgEarth/Registry>
 #include <osg/Math>
 
 using namespace osgEarth;
@@ -41,39 +42,117 @@ _time    ( &time )
     //nop
 }
 
-const Units Units::CENTIMETERS       ( "centimeters",    "cm",  Units::TYPE_LINEAR, 0.01 );
+bool
+Units::parse( const std::string& name, Units& output )
+{
+    const Units* u = osgEarth::Registry::instance()->getUnits( name );
+    if ( u ) 
+    {
+        output = *u;
+        return true;
+    }
+    return false;
+}
+
+const Units Units::CENTIMETERS       ( "centimeters",    "cm",  Units::TYPE_LINEAR, 0.01 ); 
+OSGEARTH_REGISTER_UNITS( CENTIMETERS, &Units::CENTIMETERS );
+
 const Units Units::FEET              ( "feet",           "ft",  Units::TYPE_LINEAR, 0.3048 );
+OSGEARTH_REGISTER_UNITS( FEET, &Units::FEET );
+
 const Units Units::FEET_US_SURVEY    ( "feet(us)",       "ft",  Units::TYPE_LINEAR, 12.0/39.37 );
+OSGEARTH_REGISTER_UNITS( FEET_US_SURVEY, &Units::FEET_US_SURVEY );
+
 const Units Units::KILOMETERS        ( "kilometers",     "km",  Units::TYPE_LINEAR, 1000.0 );
+OSGEARTH_REGISTER_UNITS( KILOMETERS, &Units::KILOMETERS );
+
 const Units Units::METERS            ( "meters",         "m",   Units::TYPE_LINEAR, 1.0 );
+OSGEARTH_REGISTER_UNITS( METERS, &Units::METERS );
+
 const Units Units::MILES             ( "miles",          "mi",  Units::TYPE_LINEAR, 1609.334 );
+OSGEARTH_REGISTER_UNITS( MILES, &Units::MILES );
+
 const Units Units::MILLIMETERS       ( "millimeters",    "mm",  Units::TYPE_LINEAR, 0.001 );
+OSGEARTH_REGISTER_UNITS( MILLIMETERS, &Units::MILLIMETERS );
+
 const Units Units::YARDS             ( "yards",          "yd",  Units::TYPE_LINEAR, 0.9144 );
+OSGEARTH_REGISTER_UNITS( YARDS, &Units::YARDS );
+
 const Units Units::NAUTICAL_MILES    ( "nautical miles", "nm",  Units::TYPE_LINEAR, 1852.0 );
+OSGEARTH_REGISTER_UNITS( NAUTICAL_MILES, &Units::NAUTICAL_MILES );
+
 const Units Units::DATA_MILES        ( "data miles",     "dm",  Units::TYPE_LINEAR, 1828.8 );
+OSGEARTH_REGISTER_UNITS( DATA_MILES, &Units::DATA_MILES );
+
 const Units Units::INCHES            ( "inches",         "in",  Units::TYPE_LINEAR, 0.0254 );
+OSGEARTH_REGISTER_UNITS( INCHES, &Units::INCHES );
+
 const Units Units::FATHOMS           ( "fathoms",        "fm",  Units::TYPE_LINEAR, 1.8288 );
+OSGEARTH_REGISTER_UNITS( FATHOMS, &Units::FATHOMS );
+
 const Units Units::KILOFEET          ( "kilofeet",       "kf",  Units::TYPE_LINEAR, 304.8 );
-const Units Units::KILOYARDS         ( "kiloyards",      "ky",  Units::TYPE_LINEAR, 914.4 );
+OSGEARTH_REGISTER_UNITS( KILOFEET, &Units::KILOFEET );
+
+const Units Units::KILOYARDS         ( "kiloyards",      "kyd", Units::TYPE_LINEAR, 914.4 );
+OSGEARTH_REGISTER_UNITS( KILOYARDS, &Units::KILOYARDS );
+
 
 const Units Units::DEGREES           ( "degrees",        "\xb0",Units::TYPE_ANGULAR, 0.017453292519943295 );
+OSGEARTH_REGISTER_UNITS( DEGREES, &Units::DEGREES );
+
 const Units Units::RADIANS           ( "radians",        "rad", Units::TYPE_ANGULAR, 1.0 );
+OSGEARTH_REGISTER_UNITS( RADIANS, &Units::RADIANS );
+
 const Units Units::BAM               ( "BAM",            "bam", Units::TYPE_ANGULAR, 6.283185307179586476925286766559 );
+OSGEARTH_REGISTER_UNITS( BAM, &Units::BAM );
+
 const Units Units::NATO_MILS         ( "mils",           "mil", Units::TYPE_ANGULAR, 9.8174770424681038701957605727484e-4 );
+OSGEARTH_REGISTER_UNITS( NATO_MILS, &Units::NATO_MILS );
+
 
 const Units Units::DAYS              ( "days",           "d",   Units::TYPE_TEMPORAL, 1.0/86400.0 );
+OSGEARTH_REGISTER_UNITS( DAYS, &Units::DAYS );
+
 const Units Units::HOURS             ( "hours",          "hr",  Units::TYPE_TEMPORAL, 1.0/3600.0 );
+OSGEARTH_REGISTER_UNITS( HOURS, &Units::HOURS );
+
 const Units Units::MICROSECONDS      ( "microseconds",   "us",  Units::TYPE_TEMPORAL, 1000000.0 );
+OSGEARTH_REGISTER_UNITS( MICROSECONDS, &Units::MICROSECONDS );
+
 const Units Units::MILLISECONDS      ( "milliseconds",   "ms",  Units::TYPE_TEMPORAL, 1000.0 );
+OSGEARTH_REGISTER_UNITS( MILLISECONDS, &Units::MILLISECONDS );
+
 const Units Units::MINUTES           ( "minutes",        "min", Units::TYPE_TEMPORAL, 1.0/60.0 );
+OSGEARTH_REGISTER_UNITS( MINUTES, &Units::MINUTES );
+
 const Units Units::SECONDS           ( "seconds",        "s",   Units::TYPE_TEMPORAL, 1.0 );
+OSGEARTH_REGISTER_UNITS( SECONDS, &Units::SECONDS );
+
 const Units Units::WEEKS             ( "weeks",          "wk",  Units::TYPE_TEMPORAL, 1.0/604800.0 );
+OSGEARTH_REGISTER_UNITS( WEEKS, &Units::WEEKS );
+
 
 const Units Units::FEET_PER_SECOND      ( "feet per second",         "ft/s", Units::FEET,           Units::SECONDS );
+OSGEARTH_REGISTER_UNITS( FEET_PER_SECOND, &Units::FEET_PER_SECOND );
+
 const Units Units::YARDS_PER_SECOND     ( "yards per second",        "yd/s", Units::YARDS,          Units::SECONDS );
+OSGEARTH_REGISTER_UNITS( YARDS_PER_SECOND, &Units::YARDS_PER_SECOND );
+
 const Units Units::METERS_PER_SECOND    ( "meters per second",       "m/s",  Units::METERS,         Units::SECONDS );
+OSGEARTH_REGISTER_UNITS( METERS_PER_SECOND, &Units::METERS_PER_SECOND );
+
 const Units Units::KILOMETERS_PER_SECOND( "kilometers per second",   "km/s", Units::KILOMETERS,     Units::SECONDS );
+OSGEARTH_REGISTER_UNITS( KILOMETERS_PER_SECOND, &Units::KILOMETERS_PER_SECOND );
+
 const Units Units::KILOMETERS_PER_HOUR  ( "kilometers per hour",     "kmh",  Units::KILOMETERS,     Units::SECONDS );
+OSGEARTH_REGISTER_UNITS( KILOMETERS_PER_HOUR, &Units::KILOMETERS_PER_HOUR );
+
 const Units Units::MILES_PER_HOUR       ( "miles per hour",          "mph",  Units::MILES,          Units::HOURS );
+OSGEARTH_REGISTER_UNITS( MILES_PER_HOUR, &Units::MILES_PER_HOUR );
+
 const Units Units::DATA_MILES_PER_HOUR  ( "data miles per hour",     "dm/h", Units::DATA_MILES,     Units::HOURS );
+OSGEARTH_REGISTER_UNITS( DATA_MILES_PER_HOUR, &Units::DATA_MILES_PER_HOUR );
+
 const Units Units::KNOTS                ( "nautical miles per hour", "kts",  Units::NAUTICAL_MILES, Units::HOURS );
+OSGEARTH_REGISTER_UNITS( KNOTS, &Units::KNOTS );
+
diff --git a/src/osgEarth/Utils b/src/osgEarth/Utils
index d526c84..e3c0081 100644
--- a/src/osgEarth/Utils
+++ b/src/osgEarth/Utils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -27,6 +27,7 @@
 #include <osgGA/GUIEventHandler>
 #include <osgViewer/View>
 #include <osgUtil/CullVisitor>
+#include <osgUtil/RenderBin>
 
 #include <string>
 #include <list>
@@ -41,134 +42,18 @@ namespace osgEarth
 {    
     //------------------------------------------------------------------------
 
-    class CacheStats
+    struct Utils
     {
-    public:
-        CacheStats( unsigned entries, unsigned maxEntries, unsigned queries, float hitRatio )
-            : _entries(entries), _maxEntries(maxEntries), _queries(queries), _hitRatio(hitRatio) { }
-
-        unsigned _entries;
-        unsigned _maxEntries;
-        unsigned _queries;
-        float    _hitRatio;
-    };
-
-    //------------------------------------------------------------------------
-
-    /**
-     * Least-recently-used cache class.
-     * K = key type, T = value type
-     *
-     * usage:
-     *    LRUCache<K,T> cache;
-     *    cache.put( key, value );
-     *    LRUCache.Record rec = cache.get( key );
-     *    if ( rec.valid() )
-     *        const T& value = rec.value();
-     */
-    template<typename K, typename T>
-    class LRUCache
-    {
-    public:
-        struct Record {
-            Record(const T* value) : _value(value) { }
-            const bool valid() const { return _value != 0L; }
-            const T& value() const { return *_value; }
-        private:
-            bool _valid;
-            const T* _value;
-        };
-
-    protected:
-        typedef typename std::list<K>::iterator lru_iter;
-        typedef typename std::list<K> lru_type;
-        typedef typename std::pair<T, lru_iter> map_value_type;
-        typedef typename std::map<K, map_value_type> map_type;
-        typedef typename map_type::iterator map_iter;
-
-        map_type _map;
-        lru_type _lru;
-        unsigned _max;
-        unsigned _buf;
-        unsigned _queries;
-        unsigned _hits;
-
-    public:
-        LRUCache( unsigned max =100 ) : _max(max) {
-            _buf = _max/10;
-            _queries = 0;
-            _hits = 0;
-        }
-
-        void insert( const K& key, const T& value ) {
-            map_iter mi = _map.find( key );
-            if ( mi != _map.end() ) {
-                _lru.erase( mi->second.second );
-                mi->second.first = value;
-                _lru.push_back( key );
-                mi->second.second = _lru.end();
-                mi->second.second--;
-            }
-            else {
-                _lru.push_back( key );
-                lru_iter last = _lru.end(); last--;
-                _map[key] = std::make_pair(value, last);
-            }
-
-            if ( _lru.size() > _max ) {
-                for( unsigned i=0; i < _buf; ++i ) {
-                    const K& key = _lru.front();
-                    _map.erase( key );
-                    _lru.pop_front();
-                }
-            }
-        }
-
-        Record get( const K& key ) {
-            _queries++;
-            map_iter mi = _map.find( key );
-            if ( mi != _map.end() ) {
-                _lru.erase( mi->second.second );
-                _lru.push_back( key );
-                lru_iter new_iter = _lru.end(); new_iter--;
-                mi->second.second = new_iter;
-                _hits++;
-                return Record( &(mi->second.first) );
-            }
-            else {
-                return Record( 0L );
-            }
-        }
-
-        void erase( const K& key ) {
-            map_iter mi = _map.find( key );
-            if ( mi != _map.end() ) {
-                _lru.erase( mi->second.second );
-                _map.erase( mi );
-            }
-        }
-
-        void setMaxSize( unsigned max ) {
-            _max = max;
-            _buf = max/10;
-            while( _lru.size() > _max ) {
-                const K& key = _lru.front();
-                _map.erase( key );
-                _lru.pop_front();
-            }
-        }
-
-        unsigned getMaxSize() const {
-            return _max;
-        }
-
-        CacheStats getStats() const {
-            return CacheStats(
-                _lru.size(), _max, _queries, _queries > 0 ? (float)_hits/(float)_queries : 0.0f );
+        /**
+         * Clamps v to [vmin..vmax], then remaps its range to [r0..r1]. 
+         */
+        static double remap( double v, double vmin, double vmax, double r0, double r1 )
+        {
+            float vr = (osg::clampBetween(v, vmin, vmax)-vmin)/(vmax-vmin);
+            return r0 + vr * (r1-r0);
         }
     };
 
-
     /**
      * Removes the given event handler from the view.
      * This is the equivalent of osgViewer::View::removeEventHandler which is not available
@@ -176,38 +61,38 @@ namespace osgEarth
      */
     extern OSGEARTH_EXPORT void removeEventHandler(osgViewer::View* view, osgGA::GUIEventHandler* handler);
 
-
-    /**
-     * A simple culling-plane callback (a simpler version of ClusterCullingCallback)
-     */
-    struct OSGEARTH_EXPORT CullNodeByNormal : public osg::NodeCallback {
-        osg::Vec3d _normal;
-        CullNodeByNormal( const osg::Vec3d& normal );
-        void operator()(osg::Node* node, osg::NodeVisitor* nv);
+    // utility: functor for traversing a target node
+    template<typename T> struct TraverseFunctor {
+        T* _target;
+        TraverseFunctor(T* target) : _target(target) { }
+        void operator()(osg::NodeVisitor& nv) { _target->T::traverse(nv); }
     };
 
-    struct CullDrawableByNormal : public osg::Drawable::CullCallback {
-        osg::Vec3d _normal;
-        CullDrawableByNormal( const osg::Vec3d& normal ) : _normal(normal) { }
-        bool cull(osg::NodeVisitor* nv, osg::Drawable* drawable, osg::State* state) const {
-            return nv && nv->getEyePoint() * _normal <= 0;
-        }
+    // utility: node that traverses another node via a functor
+    template<typename T>
+    struct TraverseNode : public osg::Node {
+        TraverseFunctor<T> _tf;
+        TraverseNode(TraverseFunctor<T>& tf) : _tf(tf) { }
+        TraverseNode(T* target) : _tf(TraverseFunctor<T>(target)) { }
+        void traverse(osg::NodeVisitor& nv) { _tf(nv); }
+        osg::BoundingSphere computeBound() const { return _tf._target->getBound(); }
     };
 
-    struct OSGEARTH_EXPORT CullNodeByHorizon : public osg::NodeCallback {
-        osg::Vec3d _world;
-        double _r2;
-        CullNodeByHorizon( const osg::Vec3d& world, const osg::EllipsoidModel* model );
-        void operator()(osg::Node* node, osg::NodeVisitor* nv );
+    // utility: cull callback that traverses another node
+    struct TraverseNodeCallback : public osg::NodeCallback {
+        osg::ref_ptr<osg::Node> _node;
+        TraverseNodeCallback(osg::Node* node) : _node(node) { }
+        void operator()(osg::Node* node, osg::NodeVisitor* nv) {
+            _node->accept(*nv);
+            traverse(node, nv);
+        }
     };
 
-    struct OSGEARTH_EXPORT CullNodeByFrameNumber : public osg::NodeCallback {
-        unsigned _frame;
-        CullNodeByFrameNumber() : _frame(0) { }
-        void operator()( osg::Node* node, osg::NodeVisitor* nv ) {
-            if ( nv->getFrameStamp()->getFrameNumber() - _frame <= 1 )
-                traverse(node, nv);
-        }
+    // a cull callback that prevents objects from being included in the near/fear clip
+    // plane calculates that OSG does.
+    struct DoNotComputeNearFarCullCallback : public osg::NodeCallback
+    {
+        void operator()(osg::Node* node, osg::NodeVisitor* nv);
     };
 
     /**
@@ -246,153 +131,26 @@ namespace osgEarth
     };
 
     /**
-     * Same of osg::MixinVector, but with a superclass template parameter.
+     * Proxy class that registers a custom render bin's prototype with the
+     * rendering system
      */
-    template<class ValueT, class SuperClass>
-    class MixinVector : public SuperClass
+    template<class T>
+    struct osgEarthRegisterRenderBinProxy
     {
-        typedef typename std::vector<ValueT> vector_type;
-    public:
-        typedef typename vector_type::allocator_type allocator_type;
-        typedef typename vector_type::value_type value_type;
-        typedef typename vector_type::const_pointer const_pointer;
-        typedef typename vector_type::pointer pointer;
-        typedef typename vector_type::const_reference const_reference;
-        typedef typename vector_type::reference reference;
-        typedef typename vector_type::const_iterator const_iterator;
-        typedef typename vector_type::iterator iterator;
-        typedef typename vector_type::const_reverse_iterator const_reverse_iterator;
-        typedef typename vector_type::reverse_iterator reverse_iterator;
-        typedef typename vector_type::size_type size_type;
-        typedef typename vector_type::difference_type difference_type;
-
-        explicit MixinVector() : _impl()
-        {
-        }
-
-        explicit MixinVector(size_type initial_size, const value_type& fill_value = value_type())
-        : _impl(initial_size, fill_value)
-        {
-        }
-
-        template<class InputIterator>
-        MixinVector(InputIterator first, InputIterator last)
-        : _impl(first, last)
-        {
-        }
-
-        MixinVector(const vector_type& other)
-        : _impl(other)
-        {
-        }
-
-        MixinVector(const MixinVector& other)
-        : _impl(other._impl)
-        {
-        }
-
-        MixinVector& operator=(const vector_type& other)
-        {
-            _impl = other;
-            return *this;
-        }
-
-        MixinVector& operator=(const MixinVector& other)
-        {
-            _impl = other._impl;
-            return *this;
-        }
-
-        virtual ~MixinVector() {}
-
-        void clear() { _impl.clear(); }
-        void resize(size_type new_size, const value_type& fill_value = value_type()) { _impl.resize(new_size, fill_value); }
-        void reserve(size_type new_capacity) { _impl.reserve(new_capacity); }
-        
-        void swap(vector_type& other) { _impl.swap(other); }
-        void swap(MixinVector& other) { _impl.swap(other._impl); }
-
-        bool empty() const { return _impl.empty(); }
-        size_type size() const { return _impl.size(); }
-        size_type capacity() const { return _impl.capacity(); }
-        size_type max_size() const { return _impl.max_size(); }
-        allocator_type get_allocator() const { return _impl.get_allocator(); }
-
-        const_iterator begin() const { return _impl.begin(); }
-        iterator begin() { return _impl.begin(); }
-        const_iterator end() const { return _impl.end(); }
-        iterator end() { return _impl.end(); }
-
-        const_reverse_iterator rbegin() const { return _impl.rbegin(); }
-        reverse_iterator rbegin() { return _impl.rbegin(); }
-        const_reverse_iterator rend() const { return _impl.rend(); }
-        reverse_iterator rend() { return _impl.rend(); }
-
-        const_reference operator[](size_type index) const { return _impl[index]; }
-        reference operator[](size_type index) { return _impl[index]; }
-
-        const_reference at(size_type index) const { return _impl.at(index); }
-        reference at(size_type index) { return _impl.at(index); }
-
-        void assign(size_type count, const value_type& value) { _impl.assign(count, value); }
-        template<class Iter>
-        void assign(Iter first, Iter last) { _impl.assign(first, last); }
-
-        void push_back(const value_type& value) { _impl.push_back(value); }
-        void pop_back() { _impl.pop_back(); }
-
-        iterator erase(iterator where) { return _impl.erase(where); }
-        iterator erase(iterator first, iterator last) { return _impl.erase(first, last); }
-
-        iterator insert(iterator where, const value_type& value) { return _impl.insert(where, value); }
-
-        template<class InputIterator>
-        void insert(iterator where, InputIterator first, InputIterator last)
+        osgEarthRegisterRenderBinProxy(const std::string& name)
         {
-            _impl.insert(where, first, last);
+            _prototype = new T();
+            osgUtil::RenderBin::addRenderBinPrototype(name, _prototype.get());
         }
 
-        void insert(iterator where, size_type count, const value_type& value)
+        ~osgEarthRegisterRenderBinProxy()
         {
-            _impl.insert(where, count, value);
+            osgUtil::RenderBin::removeRenderBinPrototype(_prototype.get());
+            _prototype = 0L;
         }
 
-        const_reference back() const { return _impl.back(); }
-        reference back() { return _impl.back(); }
-        const_reference front() const { return _impl.front(); }
-        reference front() { return _impl.front(); }
-
-        vector_type& asVector() { return _impl; }
-        const vector_type& asVector() const { return _impl; }
-
-        friend inline bool operator==(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl == right._impl; }
-        friend inline bool operator==(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl == right; }
-        friend inline bool operator==(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left == right._impl; }
-
-        friend inline bool operator!=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl != right._impl; }
-        friend inline bool operator!=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl != right; }
-        friend inline bool operator!=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left != right._impl; }
-
-        friend inline bool operator<(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl < right._impl; }
-        friend inline bool operator<(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl < right; }
-        friend inline bool operator<(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left < right._impl; }
-
-        friend inline bool operator>(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl > right._impl; }
-        friend inline bool operator>(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl > right; }
-        friend inline bool operator>(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left > right._impl; }
-
-        friend inline bool operator<=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl <= right._impl; }
-        friend inline bool operator<=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl <= right; }
-        friend inline bool operator<=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left <= right._impl; }
-
-        friend inline bool operator>=(const MixinVector<ValueT,SuperClass>& left, const MixinVector<ValueT,SuperClass>& right) { return left._impl >= right._impl; }
-        friend inline bool operator>=(const MixinVector<ValueT,SuperClass>& left, const std::vector<ValueT>& right) { return left._impl >= right; }
-        friend inline bool operator>=(const std::vector<ValueT>& left, const MixinVector<ValueT,SuperClass>& right) { return left >= right._impl; }
-
-    private:
-        vector_type _impl;
+        osg::ref_ptr<T> _prototype;
     };
-
 }
 
 #endif // OSGEARTH_UTILS_H
diff --git a/src/osgEarth/Utils.cpp b/src/osgEarth/Utils.cpp
index 084daa0..6f87a56 100644
--- a/src/osgEarth/Utils.cpp
+++ b/src/osgEarth/Utils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,7 @@
 #include <osgEarth/Utils>
 #include <osg/Version>
 #include <osg/CoordinateSystemNode>
+#include <osg/MatrixTransform>
 
 using namespace osgEarth;
 
@@ -35,58 +36,20 @@ void osgEarth::removeEventHandler(osgViewer::View* view, osgGA::GUIEventHandler*
 
 //------------------------------------------------------------------------
 
-CullNodeByHorizon::CullNodeByHorizon( const osg::Vec3d& world, const osg::EllipsoidModel* model ) :
-_world(world),
-_r2(model->getRadiusPolar() * model->getRadiusPolar())
-{
-    //nop
-}
-
 void
-CullNodeByHorizon::operator()(osg::Node* node, osg::NodeVisitor* nv)
+DoNotComputeNearFarCullCallback::operator()(osg::Node* node, osg::NodeVisitor* nv)
 {
-    if ( nv )
+    osgUtil::CullVisitor* cv = static_cast< osgUtil::CullVisitor*>( nv );
+    osg::CullSettings::ComputeNearFarMode oldMode;
+    if( cv )
     {
-        osg::Vec3d eye, center, up;
-        osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( nv );
-        cv->getCurrentCamera()->getViewMatrixAsLookAt(eye,center,up);
-
-        double d2 = eye.length2();
-        double horiz2 = d2 - _r2;
-
-        double dist2 = (_world-eye).length2();
-
-        if ( dist2 < horiz2 )
-        {
-            traverse(node, nv);
-        }
+        oldMode = cv->getComputeNearFarMode();
+        cv->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
     }
-}
-
-//------------------------------------------------------------------------
-
-CullNodeByNormal::CullNodeByNormal( const osg::Vec3d& normal )
-{
-    _normal = normal;
-    //_normal.normalize();
-}
-
-void
-CullNodeByNormal::operator()(osg::Node* node, osg::NodeVisitor* nv)
-{
-    osg::Vec3d eye, center, up;
-    osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( nv );
-
-    cv->getCurrentCamera()->getViewMatrixAsLookAt(eye,center,up);
-
-    eye.normalize();
-    osg::Vec3d normal = _normal;
-    normal.normalize();
-
-    double dotProduct = eye * normal;
-    if ( dotProduct > 0.0 )
+    traverse(node, nv);
+    if( cv )
     {
-        traverse(node, nv);
+        cv->setComputeNearFarMode(oldMode);
     }
 }
 
@@ -167,9 +130,7 @@ PixelAutoTransform::accept( osg::NodeVisitor& nv )
                     double scaledMinPixels = _minPixels * _minimumScale;
                     double scale = pixels < scaledMinPixels ? scaledMinPixels / pixels : 1.0;
 
-                    OE_DEBUG << LC
-                        << "Pixels = " << pixels << ", minPix = " << _minPixels << ", scale = " << scale
-                        << std::endl;
+                    //OE_DEBUG << LC << "Pixels = " << pixels << ", minPix = " << _minPixels << ", scale = " << scale << std::endl;
 
                     setScale( scale );
                 }
diff --git a/src/osgEarth/Version b/src/osgEarth/Version
index 68d42db..991ba10 100644
--- a/src/osgEarth/Version
+++ b/src/osgEarth/Version
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -25,8 +25,8 @@
 extern "C" {
 
 #define OSGEARTH_MAJOR_VERSION    2
-#define OSGEARTH_MINOR_VERSION    1
-#define OSGEARTH_PATCH_VERSION    1
+#define OSGEARTH_MINOR_VERSION    2
+#define OSGEARTH_PATCH_VERSION    0
 #define OSGEARTH_SOVERSION        0
 
 /* Convenience macro that can be used to decide whether a feature is present or not i.e.
diff --git a/src/osgEarth/Version.cpp b/src/osgEarth/Version.cpp
index cc5a19a..09caa85 100644
--- a/src/osgEarth/Version.cpp
+++ b/src/osgEarth/Version.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarth/VerticalDatum b/src/osgEarth/VerticalDatum
new file mode 100644
index 0000000..512a77f
--- /dev/null
+++ b/src/osgEarth/VerticalDatum
@@ -0,0 +1,149 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_VERTICAL_DATUM_H
+#define OSGEARTH_VERTICAL_DATUM_H 1
+
+#include <osgEarth/Common>
+#include <osgEarth/Geoid>
+#include <osgEarth/Units>
+#include <osg/Shape>
+
+namespace osgEarth
+{
+    class OSGEARTH_EXPORT GeoExtent;
+
+    /** 
+     * Reference information for vertical (height) information.
+     */
+    class OSGEARTH_EXPORT VerticalDatum : public osg::Object
+    {
+    public:
+        META_Object(osgEarth, VerticalDatum);
+
+        /**
+         * Creates an vertical datum from an initialization string. This method
+         * uses an internal cache so that there is only ever one instance or each
+         * unique vertical datum.
+         */
+        static VerticalDatum* get( const std::string& init );
+
+
+    public: // static transform methods
+
+        /**
+         * Transforms a Z coordinate from one vertical datum to another.
+         */
+        static bool transform(
+            const VerticalDatum* from,
+            const VerticalDatum* to,
+            double               lat_deg,
+            double               lon_deg,
+            double&              in_out_z );
+
+        /**
+         * Transforms a Z coordinate from one vertical datum to another.
+         */
+        static bool transform(
+            const VerticalDatum* from,
+            const VerticalDatum* to,
+            double               lat_deg,
+            double               lon_deg,
+            float&               in_out_z );
+
+        /**
+         * Transforms the values in a height field from one vertical datum to another.
+         */
+        static bool transform(
+            const VerticalDatum* from,
+            const VerticalDatum* to,
+            const GeoExtent&     extent,
+            osg::HeightField*    hf );
+
+
+    public: // raw transformations
+
+        /**
+         * Converts an MSL value (height relative to a mean sea level model) to the
+         * corresponding HAE value (height above the model's reference ellipsoid)
+         */
+        double msl2hae( double lat_deg, double lon_deg, double msl ) const;
+
+        /**
+         * Converts an HAE value (height above the model's reference ellipsoid) to the
+         * corresponding MSL value (height relative to a mean sea level model)
+         */
+        double hae2msl( double lat_deg, double lon_deg, double hae ) const;
+
+
+    public: // properties
+
+        /** Gets the readable name of this SRS. */
+        const std::string& getName() const { return _name; }
+
+        /** Gets the linear units of height values */
+        const Units& getUnits() const { return _units; }
+
+        /** Gets the string that was used to initialize this SRS */
+        const std::string& getInitString() const { return _initString; }
+
+        /** Gets the underlying geoid */
+        const Geoid* getGeoid() const { return _geoid.get(); }
+
+        /** Tests this SRS for equivalence with another. */
+        virtual bool isEquivalentTo( const VerticalDatum* rhs ) const;
+        
+    public:
+
+        /** Creates a geoid-based VSRS. */
+        VerticalDatum(
+            const std::string& name,
+            const std::string& initString,
+            Geoid*             geoid =0L );
+
+        /** Creates a simple ellipsoidal VSRS. */
+        VerticalDatum( const Units& units );
+
+        /** dtor */
+        virtual ~VerticalDatum() { }
+
+    protected:
+        // required by META_Object, but not used.
+        VerticalDatum() { }
+        VerticalDatum(const VerticalDatum& rhs, const osg::CopyOp& op) { }
+
+        std::string         _name;
+        std::string         _initString;
+        osg::ref_ptr<Geoid> _geoid;
+        Units               _units;
+    };
+
+    //--------------------------------------------------------------------
+
+    /**
+     * Creates a geoid instance based on an initialization string.
+     */
+    class OSGEARTH_EXPORT VerticalDatumFactory
+    {   
+	public:
+        static VerticalDatum* create( const std::string& id );
+    };
+
+}
+
+#endif // OSGEARTH_VERTICAL_DATUM_H
diff --git a/src/osgEarth/VerticalDatum.cpp b/src/osgEarth/VerticalDatum.cpp
new file mode 100644
index 0000000..2fd567f
--- /dev/null
+++ b/src/osgEarth/VerticalDatum.cpp
@@ -0,0 +1,222 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/GeoData>
+
+#include <osgDB/ReadFile>
+#include <osgDB/ReaderWriter>
+
+using namespace osgEarth;
+
+#undef  LC
+#define LC "[VerticalDatum] "
+
+// --------------------------------------------------------------------------
+
+namespace
+{
+    typedef std::map<std::string, osg::ref_ptr<VerticalDatum> > VDatumCache;
+    VDatumCache      _vdatumCache;
+    Threading::Mutex _vdataCacheMutex;
+} 
+
+VerticalDatum*
+VerticalDatum::get( const std::string& initString )
+{
+    VerticalDatum* result = 0L;
+
+    Threading::ScopedMutexLock exclusive(_vdataCacheMutex);
+
+    std::string s = toLower( initString );
+    VDatumCache::const_iterator i = _vdatumCache.find( s );
+    if ( i != _vdatumCache.end() )
+    {
+        result = i->second.get();
+    }
+
+    if ( !result )
+    {
+        OE_INFO << LC << "Initializing vertical datum: " << initString << std::endl;
+        result = VerticalDatumFactory::create( initString );
+        if ( result )
+            _vdatumCache[s] = result;
+    }
+    
+    return result;
+}
+
+// --------------------------------------------------------------------------
+
+VerticalDatum::VerticalDatum(const std::string& name,
+                             const std::string& initString,
+                             Geoid*             geoid ) :
+_name      ( name ),
+_initString( initString ),
+_geoid     ( geoid ),
+_units     ( Units::METERS )
+{
+    if ( _geoid.valid() )
+        _units = _geoid->getUnits();
+}
+
+VerticalDatum::VerticalDatum( const Units& units ) :
+_name      ( units.getName() ),
+_initString( units.getName() ),
+_units     ( units )
+{
+    //nop
+}
+
+bool
+VerticalDatum::transform(const VerticalDatum* from,
+                         const VerticalDatum* to,
+                         double               lat_deg,
+                         double               lon_deg,
+                         double&              in_out_z)
+{
+    if ( from == to )
+        return true;
+
+    if ( from )
+    {
+        in_out_z = from->msl2hae( lat_deg, lon_deg, INTERP_BILINEAR );
+    }
+
+    Units fromUnits = from ? from->getUnits() : Units::METERS;
+    Units toUnits = to ? to->getUnits() : fromUnits;
+
+    in_out_z = fromUnits.convertTo(toUnits, in_out_z);
+
+    if ( to )
+    {
+        in_out_z = to->hae2msl( lat_deg, lon_deg, INTERP_BILINEAR );
+    }
+
+    return true;
+}
+
+bool
+VerticalDatum::transform(const VerticalDatum* from,
+                         const VerticalDatum* to,
+                         double               lat_deg,
+                         double               lon_deg,
+                         float&               in_out_z)
+{
+    double d(in_out_z);
+    bool ok = transform(from, to, lat_deg, lon_deg, d);
+    if (ok) in_out_z = float(d);
+    return ok;
+}
+
+bool
+VerticalDatum::transform(const VerticalDatum* from,
+                         const VerticalDatum* to,
+                         const GeoExtent&     extent,
+                         osg::HeightField*    hf )
+{
+    if ( from == to )
+        return true;
+
+    unsigned cols = hf->getNumColumns();
+    unsigned rows = hf->getNumRows();
+    osg::Vec3d sw = hf->getOrigin();
+    osg::Vec3d ne;
+    ne.x() = sw.x() + hf->getXInterval()*double(rows);
+    ne.y() = sw.y() + hf->getYInterval()*double(cols);
+    double xstep = hf->getXInterval();
+    double ystep = hf->getYInterval();
+
+    if ( !extent.getSRS()->isGeographic() )
+    {
+        const SpatialReference* geoSRS = extent.getSRS()->getGeographicSRS();
+        extent.getSRS()->transform(sw, geoSRS, sw);
+        extent.getSRS()->transform(ne, geoSRS, ne);
+        xstep = (ne.x()-sw.x()) / double(cols);
+        ystep = (ne.y()-sw.y()) / double(rows);
+    }
+
+    for( unsigned c=0; c<cols; ++c)
+    {
+        double lon = sw.x() + xstep*double(c);
+        for( unsigned r=0; r<rows; ++r)
+        {
+            double lat = sw.y() + ystep*double(r);
+            float& h = hf->getHeight(r, c);
+            VerticalDatum::transform( from, to, lat, lon, h );
+        }
+    }
+
+    return true;
+}
+
+double 
+VerticalDatum::msl2hae( double lat_deg, double lon_deg, double msl ) const
+{
+    return _geoid.valid() ? msl + _geoid->getHeight(lat_deg, lon_deg, INTERP_BILINEAR) : msl;
+}
+
+double
+VerticalDatum::hae2msl( double lat_deg, double lon_deg, double hae ) const
+{
+    return _geoid.valid() ? hae - _geoid->getHeight(lat_deg, lon_deg, INTERP_BILINEAR) : hae;
+}
+
+bool 
+VerticalDatum::isEquivalentTo( const VerticalDatum* rhs ) const
+{
+    if ( this == rhs )
+        return true;
+
+    if ( _units != rhs->_units )
+        return false;
+
+    if ( _geoid.valid() != rhs->_geoid.valid() )
+        return false;
+    
+    if ( _geoid.valid() && !_geoid->isEquivalentTo( *rhs->_geoid.get() ) )
+        return false;
+
+    //TODO - add comparisons as necessary
+
+    return true;
+}
+
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[VerticalDatumFactory] "
+
+VerticalDatum*
+VerticalDatumFactory::create( const std::string& init )
+{
+    VerticalDatum* result = 0L;
+
+    std::string driverExt = Stringify() << ".osgearth_vdatum_" << init;
+    result = dynamic_cast<VerticalDatum*>( osgDB::readObjectFile(driverExt) );
+    if ( !result )
+    {
+        OE_WARN << "WARNING: Failed to load Vertical Datum driver for \"" << init << "\"" << std::endl;
+    }
+
+    return result;
+}
diff --git a/src/osgEarth/VerticalSpatialReference b/src/osgEarth/VerticalSpatialReference
deleted file mode 100644
index aff5bbb..0000000
--- a/src/osgEarth/VerticalSpatialReference
+++ /dev/null
@@ -1,119 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTH_VERTICAL_SPATIAL_REFERENCE_H
-#define OSGEARTH_VERTICAL_SPATIAL_REFERENCE_H 1
-
-#include <osgEarth/Common>
-#include <osgEarth/Units>
-#include <osg/Shape>
-
-namespace osgEarth
-{
-    class Geoid;
-    class GeoExtent;
-
-    /** 
-     * Reference information for vertical (height) information.
-     */
-    class OSGEARTH_EXPORT VerticalSpatialReference : public osg::Referenced
-    {
-    public:
-        /**
-         * Creates an V-SRS from an initialization string.
-         */
-        static VerticalSpatialReference* create( const std::string& init );
-
-        /** Adds a new geoid to the VSRS registry. You can thereafter create a VSRS based
-            on this geoid with the VSRS::create() method, passing in the name of the geoid. */
-        static void registerGeoid( const Geoid* geoid );
-
-    public:
-        /**
-         * Transform a height value (at the specified lat/long location) to another VSRS.
-         * The output height value will be in "to_srs" units.
-         */
-        bool transform( 
-            const VerticalSpatialReference* toVSRS, 
-            double lat_deg, double lon_deg, double z,
-            double& out_z ) const;
-
-        /**
-         * Returns true if transformation from this VSRS to the target VSRS is both
-         * possible and necessary.
-         */
-        bool canTransform( const VerticalSpatialReference* toVSRS ) const;
-
-        /** 
-         * Returns true if transformation from one VRS to another is possible and necessary
-         */
-        static bool canTransform( 
-            const VerticalSpatialReference* from,
-            const VerticalSpatialReference* toVSRS );
-
-        /**
-         * Creates a heightfield containing the "zero" refernce values relative to the ellipsoid.
-         * For a vanilla ellipsoidal VSRS, the HF will be all zeros. for an orthometric (geoid) VSRS,
-         * it will contain the raw geoid offsets.
-         */
-        osg::HeightField* createReferenceHeightField(const GeoExtent& extent, int cols, int rows) const;
-
-        /** Gets the readable name of this SRS. */
-        const std::string& getName() const { return _name; }
-
-        /** Gets the linear units of height values */
-        const Units& getUnits() const { return _units; }
-
-        /** Gets the string that was used to initialize this SRS */
-        const std::string& getInitString() const { return _initString; }
-
-        /** Tests this SRS for equivalence with another. */
-        virtual bool isEquivalentTo( const VerticalSpatialReference* rhs ) const;
-        
-    public:
-        /** Creates a geoid-based VSRS. */
-        VerticalSpatialReference(
-            const std::string& name,
-            const std::string& initString,
-            const Geoid* geoid );
-
-        /** Creates a simple ellipsoidal VSRS. */
-        VerticalSpatialReference( const Units& units );
-
-        std::string _name;
-        std::string _initString;
-        osg::ref_ptr<const Geoid> _geoid;
-        Units _units;
-
-        typedef std::map<std::string, osg::ref_ptr<const Geoid> > GeoidRegistry;
-        static GeoidRegistry* _geoidRegistry;
-    };
-
-#if 0
-    /** Proxy class for automatic registration of geoids */
-    template<class T>
-    struct  GeoidRegisterProxy {
-        GeoidRegisterProxy() {
-            VerticalSpatialReference::registerGeoid( new T );
-        }
-    };
-#endif
-
-}
-
-#endif // OSGEARTH_VERTICAL_SPATIAL_REFERENCE_H
diff --git a/src/osgEarth/VerticalSpatialReference.cpp b/src/osgEarth/VerticalSpatialReference.cpp
deleted file mode 100644
index b798d1e..0000000
--- a/src/osgEarth/VerticalSpatialReference.cpp
+++ /dev/null
@@ -1,207 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#include <osgEarth/VerticalSpatialReference>
-#include <osgEarth/EGM>
-#include <osgEarth/StringUtils>
-#include <osgEarth/GeoData>
-
-using namespace osgEarth;
-
-#define LC "[VSRS] "
-
-// --------------------------------------------------------------------------
-
-//TODO: replace this with some kind of registry.
-VerticalSpatialReference*
-VerticalSpatialReference::create( const std::string& initString )
-{
-    static OpenThreads::Mutex s_mutex;
-    OpenThreads::ScopedLock<OpenThreads::Mutex> exclusiveLock(s_mutex);
-
-    if ( !_geoidRegistry )
-    {
-        // initialize the registry the first time through.
-        registerGeoid( new EGM96Geoid() );
-    }
-
-    std::string s = toLower( initString );
-
-    GeoidRegistry::const_iterator i = (*_geoidRegistry).find( s );
-    if ( i != (*_geoidRegistry).end() )
-    {
-        const Geoid* geoid = i->second.get();
-        return new VerticalSpatialReference( geoid->getName(), initString, geoid );
-    }
-    else if ( s == "meters" || s == "metres" || s == "meter" || s == "metre" )
-        return new VerticalSpatialReference( Units::METERS );
-    else if ( startsWith( s, "feet" ) || startsWith( s, "foot" ) )
-        return new VerticalSpatialReference( Units::FEET );
-
-    return 0L;
-}
-
-void
-VerticalSpatialReference::registerGeoid( const Geoid* geoid )
-{
-    if ( !_geoidRegistry )
-        _geoidRegistry = new GeoidRegistry();
-
-    if ( geoid )
-        (*_geoidRegistry)[geoid->getName()] = geoid;
-}
-
-VerticalSpatialReference::GeoidRegistry*
-VerticalSpatialReference::_geoidRegistry = 0L;
-
-// --------------------------------------------------------------------------
-
-VerticalSpatialReference::VerticalSpatialReference(const std::string& name,
-                                                   const std::string& initString,
-                                                   const Geoid* geoid ) :
-_name( name ),
-_initString( initString ),
-_geoid( geoid ),
-_units( Units::METERS )
-{
-    if ( _geoid.valid() )
-        _units = _geoid->getUnits();
-}
-
-VerticalSpatialReference::VerticalSpatialReference( const Units& units ) :
-_name( units.getName() ),
-_initString( units.getName() ),
-_units( units )
-{
-    //nop
-}
-
-bool
-VerticalSpatialReference::canTransform( const VerticalSpatialReference* toVSRS ) const
-{
-    return toVSRS && !isEquivalentTo( toVSRS );
-}
-
-bool
-VerticalSpatialReference::canTransform(const VerticalSpatialReference* fromVSRS,
-                                       const VerticalSpatialReference* toVSRS )
-{
-    return fromVSRS && fromVSRS->canTransform( toVSRS );
-}
-
-bool 
-VerticalSpatialReference::transform(const VerticalSpatialReference* toSRS, 
-                                    double lat_deg, double lon_deg, double in_z,
-                                    double& out_z ) const
-{    
-    if ( this->isEquivalentTo( toSRS ) )
-    {
-        out_z = in_z;
-    }
-    else
-    {
-        double workZ = in_z;
-
-        // transform out of the source VSRS (this):
-        if ( _geoid.valid() )
-        {
-            if ( !_geoid->isValid() )
-                return false;
-
-            float offset = _geoid->getOffset( lat_deg, lon_deg, INTERP_BILINEAR );
-            workZ -= offset;
-        }
-
-        // convert the value to output units:
-        Units::convert( getUnits(), toSRS->getUnits(), workZ, workZ );
-
-        // transform into the target VSRS:
-        if ( toSRS->_geoid.valid() )
-        {
-            if ( !toSRS->_geoid->isValid() )
-                return false;
-        
-            float offset = toSRS->_geoid->getOffset( lat_deg, lon_deg, INTERP_BILINEAR );
-            workZ += offset;
-        }
-
-        out_z = workZ;
-    }
-
-    return true;
-}
-
-osg::HeightField*
-VerticalSpatialReference::createReferenceHeightField( const GeoExtent& ex, int numCols, int numRows ) const
-{
-    osg::HeightField* hf = new osg::HeightField();
-    hf->allocate( numCols, numRows );
-    hf->setOrigin( osg::Vec3d( ex.xMin(), ex.yMin(), 0.0 ) );
-    hf->setXInterval( (ex.xMax() - ex.xMin())/(double)(numCols-1) );
-    hf->setYInterval( (ex.yMax() - ex.yMin())/(double)(numRows-1) );
-
-    if ( _geoid.valid() && _geoid->isValid() )
-    {
-        // need the lat/long extent for geoid queries:
-        GeoExtent geodeticExtent = ex.getSRS()->isGeographic() ? ex : ex.transform( ex.getSRS()->getGeographicSRS() );
-        double latMin = geodeticExtent.yMin();
-        double lonMin = geodeticExtent.xMin();
-        double lonInterval = geodeticExtent.width() / (double)(numCols-1);
-        double latInterval = geodeticExtent.height() / (double)(numRows-1);
-
-        for( int r=0; r<numRows; ++r )
-        {            
-            double lat = latMin + latInterval*(double)r;
-            for( int c=0; c<numCols; ++c )
-            {
-                double lon = lonMin + lonInterval*(double)c;
-                double offset = _geoid->getOffset( lat, lon );
-                hf->setHeight( c, r, offset );
-            }
-        }
-    }
-    else
-    {
-        for(unsigned int i=0; i<hf->getHeightList().size(); i++ )
-            hf->getHeightList()[i] = 0.0;
-    }
-
-    hf->setBorderWidth( 0 );
-    return hf;    
-}
-
-bool 
-VerticalSpatialReference::isEquivalentTo( const VerticalSpatialReference* rhs ) const
-{
-    if ( this == rhs )
-        return true;
-
-    if ( _units != rhs->_units )
-        return false;
-
-    if ( _geoid.valid() != rhs->_geoid.valid() )
-        return false;
-    
-    if ( _geoid.valid() && !_geoid->isEquivalentTo( *rhs->_geoid.get() ) )
-        return false;
-
-    //TODO - add comparisons as necessary
-
-    return true;
-}
diff --git a/src/osgEarth/Viewpoint b/src/osgEarth/Viewpoint
new file mode 100644
index 0000000..2ff2788
--- /dev/null
+++ b/src/osgEarth/Viewpoint
@@ -0,0 +1,203 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_VIEWPOINT
+#define OSGEARTH_VIEWPOINT
+
+#include <osgEarth/Common>
+#include <osgEarth/Config>
+#include <osgEarth/SpatialReference>
+
+namespace osgEarth
+{
+    /**
+     * Viewpoint data object. Stores a view configuration as a focal point
+     * and the camera's position relative to that focal point.
+     */
+    class OSGEARTH_EXPORT Viewpoint
+    {
+    public:
+        /**
+         * Constructs a blank (invalid) viewpoint.
+         */
+        Viewpoint();
+
+        /**
+         * Constructs a new viewpoint.
+         *
+         * @param focal_point
+         *      The location at which the camera points. Express this coordinate
+         *      relative to the spatial reference system of the map, or you 
+         *      can specify the SRS in the last argument.
+         *
+         * @param heading_deg
+         *      Heading (in clockwise degrees) of the camera relative to the 
+         *      tangent plane of the focal point.
+         *
+         * @param pitch_deg
+         *      Pitch (in degrees) of the camera relative to the tangent plane
+         *      of the focal point.
+         *
+         * @param range
+         *      Straight-line distance from the camera to the focal point.
+         *
+         * @param srs (optional)
+         *      Spatial reference defining the focal point.
+         */
+        Viewpoint(
+            const osg::Vec3d& focal_point,
+            double heading_deg,
+            double pitch_deg,
+            double range,
+            const osgEarth::SpatialReference* srs =NULL );
+
+        Viewpoint(
+            double x_or_lon, double y_or_lat, double z,
+            double heading_deg,
+            double pitch_deg,
+            double range,
+            const osgEarth::SpatialReference* srs =NULL );
+
+        /**
+         * Constructs a new viewpoint.
+         *
+         * @param name
+         *      Name of this viewpoint.
+         *
+         * @param focal_point
+         *      The location at which the camera points. Express this coordinate
+         *      relative to the spatial reference system of the map, or you 
+         *      can specify the SRS in the last argument.
+         *
+         * @param heading_deg
+         *      Heading (in clockwise degrees) of the camera relative to the 
+         *      tangent plane of the focal point.
+         *
+         * @param pitch_deg
+         *      Pitch (in degrees) of the camera relative to the tangent plane
+         *      of the focal point.
+         *
+         * @param range
+         *      Straight-line distance from the camera to the focal point.
+         *
+         * @param srs (optional)
+         *      Spatial reference defining the focal point.
+         */
+        Viewpoint(
+            const std::string& name,
+            const osg::Vec3d& focal_point,
+            double heading_deg,
+            double pitch_deg,
+            double range,
+            const osgEarth::SpatialReference* srs =NULL );
+
+        Viewpoint(
+            const std::string& name,
+            double x_or_lon, double y_or_lat, double z,
+            double heading_deg,
+            double pitch_deg,
+            double range,
+            const osgEarth::SpatialReference* srs =NULL );
+
+        /**
+         * Deserialize a Config into this viewpoint object.
+         */
+        Viewpoint( const Config& conf );
+
+        /**
+         * Copy constructor.
+         */
+        Viewpoint( const Viewpoint& rhs );
+
+        /** dtor */
+        virtual ~Viewpoint() { }
+
+    public:
+
+        /**
+         * Returns true if this viewpoint contains valid information.
+         */
+        bool isValid() const;
+
+        /**
+         * Gets or sets the name of the viewpoint.
+         */
+        void setName( const std::string& name );
+        const std::string& getName() const;
+
+        /**
+         * Gets or sets the location at which the camera is pointing.
+         */
+        const osg::Vec3d& getFocalPoint() const;
+        void setFocalPoint( const osg::Vec3d& point );
+
+        double x() const;
+        double& x();
+
+        double y() const;
+        double& y();
+
+        double z() const;
+        double& z();
+
+        /**
+         * Gets the heading (in degrees) of the camera relative to the focal point.
+         */
+        double getHeading() const;
+        void setHeading( double heading_deg );
+
+        /**
+         * Gets the pitch (in degrees) of the camera relative to the focal point.
+         */
+        double getPitch() const;
+        void setPitch( double pitch_deg );
+
+        /**
+         * Gets the distance from the camera to the focal point.
+         */
+        double getRange() const;
+        void setRange( double range );
+
+        /**
+         * Gets the spatial reference system of the focal point, if defined.
+         */
+        const osgEarth::SpatialReference* getSRS() const;
+
+        /**
+         * Returns a printable string with the viewpoint data
+         */
+        std::string toString() const;
+
+        /**
+         * Serialize this viewpoint to a config.
+         */
+        Config getConfig() const;
+
+    private:
+        std::string _name;
+        osg::Vec3d _focal_point;
+        double _heading_deg;
+        double _pitch_deg;
+        double _range;
+        osg::ref_ptr<const osgEarth::SpatialReference> _srs;
+        bool _is_valid;
+    };
+
+} // namespace osgEarth
+
+#endif // OSGEARTH_VIEWPOINT
diff --git a/src/osgEarth/Viewpoint.cpp b/src/osgEarth/Viewpoint.cpp
new file mode 100644
index 0000000..6cbd37e
--- /dev/null
+++ b/src/osgEarth/Viewpoint.cpp
@@ -0,0 +1,285 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarth/Viewpoint>
+#include <sstream>
+
+using namespace osgEarth;
+
+
+Viewpoint::Viewpoint() :
+_is_valid( false ),
+_heading_deg(0.0),
+_pitch_deg(0.0),
+_range(1.0)
+{
+    //NOP
+}
+
+Viewpoint::Viewpoint(const osg::Vec3d& focal_point,
+                     double heading_deg,
+                     double pitch_deg, 
+                     double range,
+                     const osgEarth::SpatialReference* srs ) :
+_focal_point( focal_point ),
+_heading_deg( heading_deg ),
+_pitch_deg( pitch_deg ),
+_range( range ),
+_srs( srs ),
+_is_valid( true )
+{
+    //NOP
+}
+Viewpoint::Viewpoint(double x, double y, double z,
+                     double heading_deg,
+                     double pitch_deg, 
+                     double range,
+                     const osgEarth::SpatialReference* srs ) :
+_focal_point( x, y, z ),
+_heading_deg( heading_deg ),
+_pitch_deg( pitch_deg ),
+_range( range ),
+_srs( srs ),
+_is_valid( true )
+{
+    //NOP
+}
+
+Viewpoint::Viewpoint(const std::string& name,
+                     const osg::Vec3d& focal_point,
+                     double heading_deg,
+                     double pitch_deg, 
+                     double range,
+                     const osgEarth::SpatialReference* srs ) :
+_name( name ),
+_focal_point( focal_point ),
+_heading_deg( heading_deg ),
+_pitch_deg( pitch_deg ),
+_range( range ),
+_srs( srs ),
+_is_valid( true )
+{
+    //NOP
+}
+
+Viewpoint::Viewpoint(const std::string& name,
+                     double x, double y, double z,
+                     double heading_deg,
+                     double pitch_deg, 
+                     double range,
+                     const osgEarth::SpatialReference* srs ) :
+_name( name ),
+_focal_point( x, y, z ),
+_heading_deg( heading_deg ),
+_pitch_deg( pitch_deg ),
+_range( range ),
+_srs( srs ),
+_is_valid( true )
+{
+    //NOP
+}
+
+Viewpoint::Viewpoint( const Viewpoint& rhs ) :
+_name( rhs._name ),
+_focal_point( rhs._focal_point ),
+_heading_deg( rhs._heading_deg ),
+_pitch_deg( rhs._pitch_deg ),
+_range( rhs._range ),
+_srs( rhs._srs.get() ),
+_is_valid( rhs._is_valid )
+{
+    //NOP
+}
+
+Viewpoint::Viewpoint( const Config& conf )
+{
+    _name = conf.value("name");
+
+    if ( conf.hasValue("x") )
+    {
+        _focal_point.set(
+            conf.value<double>("x", 0.0),
+            conf.value<double>("y", 0.0),
+            conf.value<double>("z", 0.0) );
+    }
+    else if ( conf.hasValue("lat") )
+    {
+        _focal_point.set(
+            conf.value<double>("long", 0.0),
+            conf.value<double>("lat", 0.0),
+            conf.value<double>("height", 0.0) );
+
+        if ( !conf.hasValue("srs") )
+            _srs = SpatialReference::create("wgs84");
+    }
+
+    _heading_deg = conf.value<double>("heading", 0.0);
+    _pitch_deg   = conf.value<double>("pitch",   0.0);
+    _range       = conf.value<double>("range",   0.0);
+    _is_valid    = _range > 0.0;
+
+    const std::string horiz = conf.value("srs");
+    const std::string vert  = conf.value("vdatum");
+
+    if ( !horiz.empty() )
+    {
+        _srs = SpatialReference::create(horiz, vert);
+    }
+}
+
+#define CONF_STR Stringify() << std::fixed << std::setprecision(4)
+
+Config
+Viewpoint::getConfig() const
+{
+    Config conf( "viewpoint" );
+
+    if ( _is_valid )
+    {
+        if ( !_name.empty() )
+            conf.set("name", _name);
+
+        if ( getSRS() && getSRS()->isGeographic() )
+        {
+            conf.set("lat",    _focal_point.y());
+            conf.set("long",   _focal_point.x());
+            conf.set("height", _focal_point.z());
+        }
+        else
+        {
+            conf.set("x", _focal_point.x());
+            conf.set("y", _focal_point.y());
+            conf.set("z", _focal_point.z());
+        }
+
+        conf.set("heading", _heading_deg);
+        conf.set("pitch",   _pitch_deg);
+        conf.set("range",   _range);
+
+        if ( _srs.valid() )
+        {
+            conf.set("srs", _srs->getHorizInitString());
+            if ( _srs->getVerticalDatum() )
+                conf.set("vdatum", _srs->getVertInitString());
+        }
+    }
+
+    return conf;
+}
+
+bool
+Viewpoint::isValid() const {
+    return _is_valid;
+}
+
+const std::string&
+Viewpoint::getName() const {
+    return _name;
+}
+
+void
+Viewpoint::setName( const std::string& name ) {
+    _name = name;
+}
+
+const osg::Vec3d&
+Viewpoint::getFocalPoint() const {
+    return _focal_point;
+}
+
+void
+Viewpoint::setFocalPoint( const osg::Vec3d& value ) {
+    _focal_point = value;
+}
+
+double
+Viewpoint::x() const {
+    return _focal_point.x();
+}
+
+double&
+Viewpoint::x() {
+    return _focal_point.x();
+}
+
+double
+Viewpoint::y() const {
+    return _focal_point.y();
+}
+
+double&
+Viewpoint::y() {
+    return _focal_point.y();
+}
+
+double
+Viewpoint::z() const {
+    return _focal_point.z();
+}
+
+double&
+Viewpoint::z() {
+    return _focal_point.z();
+}
+
+double
+Viewpoint::getHeading() const {
+    return _heading_deg;
+}
+
+void
+Viewpoint::setHeading( double value ) {
+    _heading_deg = value;
+}
+
+double
+Viewpoint::getPitch() const {
+    return _pitch_deg;
+}
+
+void
+Viewpoint::setPitch( double value ) {
+    _pitch_deg = value;
+}
+
+double
+Viewpoint::getRange() const {
+    return _range;
+}
+
+void
+Viewpoint::setRange( double value ) {
+    _range = value;
+}
+
+const SpatialReference*
+Viewpoint::getSRS() const {
+    return _srs.get();
+}
+
+std::string
+Viewpoint::toString() const
+{
+    return Stringify()
+        << "x=" << _focal_point.x()
+        << ", y=" << _focal_point.y()
+        << ", z=" << _focal_point.z()
+        << ", h=" << _heading_deg
+        << ", p=" << _pitch_deg
+        << ", d=" << _range;
+}
diff --git a/src/osgEarth/XmlUtils b/src/osgEarth/XmlUtils
index 3a43dfb..5508831 100644
--- a/src/osgEarth/XmlUtils
+++ b/src/osgEarth/XmlUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/Config>
+#include <osgEarth/StringUtils>
 #include <osgEarth/URI>
 #include <osg/Referenced>
 #include <osg/ref_ptr>
@@ -34,8 +35,6 @@
 
 namespace osgEarth
 {
-    extern std::string trim( const std::string& in );
-
     class OSGEARTH_EXPORT XmlNode : public osg::Referenced
     {
     public:
@@ -135,9 +134,9 @@ namespace osgEarth
         
         virtual ~XmlDocument();
 
-        static XmlDocument* load( const std::string& location );
+        static XmlDocument* load( const std::string& location, const osgDB::Options* dbOptions =0L );
 
-        static XmlDocument* load( const URI& uri );
+        static XmlDocument* load( const URI& uri, const osgDB::Options* dbOptions =0L );
         
         static XmlDocument* load( std::istream& in, const URIContext& context =URIContext() );
 
diff --git a/src/osgEarth/XmlUtils.cpp b/src/osgEarth/XmlUtils.cpp
index c318dfd..7dac714 100644
--- a/src/osgEarth/XmlUtils.cpp
+++ b/src/osgEarth/XmlUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,6 @@
 
 #include <osgEarth/XmlUtils>
 #include <osgEarth/StringUtils>
-#include <osgEarth/HTTPClient>
 #include <osg/Notify>
 #include "tinyxml.h"
 #include <algorithm>
@@ -29,27 +28,8 @@
 
 using namespace osgEarth;
 
-
 static std::string EMPTY_VALUE = "";
 
-//std::string
-//osgEarth::trim( const std::string& in )
-//{
-//    std::string whitespace (" \t\f\v\n\r");
-//    // by Rodrigo C F Dias
-//    // http://www.codeproject.com/KB/stl/stdstringtrim.aspx
-//    std::string str = in;
-//    std::string::size_type pos = str.find_last_not_of( whitespace );
-//    if(pos != std::string::npos) {
-//        str.erase(pos + 1);
-//        pos = str.find_first_not_of( whitespace );
-//        if(pos != std::string::npos) str.erase(0, pos);
-//    }
-//    else str.erase(str.begin(), str.end());
-//    return str;
-//}
-
-
 XmlNode::XmlNode()
 {
     //NOP
@@ -69,17 +49,21 @@ XmlElement::XmlElement( const std::string& _name, const XmlAttributes& _attrs )
 XmlElement::XmlElement( const Config& conf )
 {
     name = conf.key();
-    for( Properties::const_iterator i = conf.attrs().begin(); i != conf.attrs().end(); i++ )
-        attrs[i->first] = i->second;
+
+    if ( !conf.value().empty() )
+    {
+        children.push_back( new XmlText(conf.value()) );
+    }
+
     for( ConfigSet::const_iterator j = conf.children().begin(); j != conf.children().end(); j++ )
     {
-        if (!j->children().empty())
+        if ( j->isSimple() )
         {
-            children.push_back( new XmlElement( *j ) );
+            attrs[j->key()] = j->value();
         }
-        else
+        else if ( j->children().size() > 0 )
         {
-            addSubElement(j->key(), j->attrs(), j->value());
+            children.push_back( new XmlElement(*j) );
         }
     }
 }
@@ -161,8 +145,8 @@ XmlElement::getText() const
         }
     }
 
-	std::string builderStr;
-	builderStr = builder.str();
+ 	 std::string builderStr;
+	 builderStr = builder.str();
     std::string result = trim( builderStr );
     return result;
 }
@@ -221,8 +205,12 @@ Config
 XmlElement::getConfig() const
 {
     Config conf( name );
+
     for( XmlAttributes::const_iterator a = attrs.begin(); a != attrs.end(); a++ )
-        conf.attr( a->first ) = a->second;
+    {
+        conf.set( a->first, a->second );
+    }
+
     for( XmlNodeList::const_iterator c = children.begin(); c != children.end(); c++ )
     {
         XmlNode* n = c->get();
@@ -374,30 +362,28 @@ namespace
 
 
 XmlDocument*
-XmlDocument::load( const std::string& location )
+XmlDocument::load( const std::string& location, const osgDB::Options* dbOptions )
 {
-    return load( URI(location) );
+    return load( URI(location), dbOptions );
 }
 
 XmlDocument*
-XmlDocument::load( const URI& uri )
+XmlDocument::load( const URI& uri, const osgDB::Options* dbOptions )
 {
-    std::string buffer;
-    if ( HTTPClient::readString( uri.full(), buffer ) != HTTPClient::RESULT_OK )
+    XmlDocument* result = 0L;
+
+    ReadResult r = uri.readString( dbOptions );
+    if ( r.succeeded() )
     {
-        return 0L;
+        std::stringstream buf( r.getString() );
+        result = load( buf );
+        if ( result )
+            result->_sourceURI = uri;
     }
 
-    std::stringstream buf(buffer);
-    XmlDocument* result = load(buf);
-
-    if ( result )
-        result->_sourceURI = uri;
-
     return result;
 }
 
-
 XmlDocument*
 XmlDocument::load( std::istream& in, const URIContext& uriContext )
 {
@@ -406,7 +392,8 @@ XmlDocument::load( std::istream& in, const URIContext& uriContext )
     //Read the entire document into a string
     std::stringstream buffer;
     buffer << in.rdbuf();
-    std::string xmlStr(buffer.str()); 
+    std::string xmlStr;
+    xmlStr = buffer.str();
 
     removeDocType( xmlStr );
     //OE_NOTICE << xmlStr;
@@ -418,7 +405,8 @@ XmlDocument::load( std::istream& in, const URIContext& uriContext )
     {
         std::stringstream buf;
         buf << xmlDoc.ErrorDesc() << " (row " << xmlDoc.ErrorRow() << ", col " << xmlDoc.ErrorCol() << ")";
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         OE_WARN << "Error in XML document: " << str << std::endl;
         if ( !uriContext.referrer().empty() )
             OE_WARN << uriContext.referrer() << std::endl;
@@ -437,7 +425,7 @@ Config
 XmlDocument::getConfig() const
 {
     Config conf = XmlElement::getConfig();
-    conf.setURIContext( _sourceURI.full() );
+    conf.setReferrer( _sourceURI.full() );
     return conf;
 }
 
diff --git a/src/osgEarth/optional b/src/osgEarth/optional
new file mode 100644
index 0000000..3260bbd
--- /dev/null
+++ b/src/osgEarth/optional
@@ -0,0 +1,76 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_OPTIONAL_H
+#define OSGEARTH_OPTIONAL_H 1
+
+namespace osgEarth
+{
+    /**
+     * A template for defining "optional" class members. An optional member has a default value
+     * and a flag indicating whether the member is "set".
+     * This is used extensively in osgEarth's ConfigOptions subsystem.
+     */
+    template<typename T> struct optional {
+        optional() : _set(false), _value(T()), _defaultValue(T()) { }
+        optional(T defaultValue) : _set(false), _value(defaultValue), _defaultValue(defaultValue) { }
+        optional(T defaultValue, T value) : _set(true), _value(value), _defaultValue(defaultValue) { }
+        optional(const optional<T>& rhs) { (*this)=rhs; }
+        virtual ~optional() { }
+        optional<T>& operator =(const optional<T>& rhs) { _set=rhs._set; _value=rhs._value; _defaultValue=rhs._defaultValue; return *this; }
+        const T& operator =(const T& value) { _set=true; _value=value; return _value; }
+        bool operator ==(const optional<T>& rhs) const { return _set && rhs._set && _value==rhs._value; }
+        bool operator !=(const optional<T>& rhs) const { return !( (*this)==rhs); }
+        bool operator ==(const T& value) const { return _value==value; }
+        bool operator !=(const T& value) const { return _value!=value; }
+        bool operator > (const T& value) const { return _value>value; }
+        bool operator >=(const T& value) const { return _value>=value; }
+        bool operator < (const T& value) const { return _value<value; }
+        bool operator <=(const T& value) const { return _value<=value; }
+        bool isSetTo(const T& value) const { return _set && _value==value; } // differs from == in that the value must be explicity set
+        bool isSet() const { return _set; }
+        void unset() { _set = false; _value=_defaultValue; }
+
+        //T& get() { return _value; }
+        const T& get() const { return _value; }
+        const T& value() const { return _value; }
+        const T& defaultValue() const { return _defaultValue; }
+        T temp_copy() const { return _value; }
+
+        // gets a mutable reference, automatically setting
+        T& mutable_value() { _set = true; return _value; }
+
+        void init(T defValue) { _value=defValue; _defaultValue=defValue; unset(); }
+
+        operator const T*() const { return &_value; }
+
+        T* operator ->() { _set=true; return &_value; }
+        const T* operator ->() const { return &_value; }
+
+    private:
+        bool _set;
+        T _value;
+        T _defaultValue;
+        typedef T* optional::*unspecified_bool_type;
+
+    public:
+        operator unspecified_bool_type() const { return 0; }
+    };
+}
+
+#endif // OSGEARTH_OPTIONAL_H
diff --git a/src/osgEarthAnnotation/AnnotationData b/src/osgEarthAnnotation/AnnotationData
new file mode 100644
index 0000000..6e9e9d2
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationData
@@ -0,0 +1,96 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_ANNOTATION_DATA_H
+#define OSGEARTH_ANNOTATION_ANNOTATION_DATA_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osg/Referenced>
+#include <osgEarth/Viewpoint>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    /**
+     * Stores annotation metadata/extra information that can be stored in a node's
+     * UserData container.
+     */
+    class OSGEARTHANNO_EXPORT AnnotationData : public osg::Referenced
+    {
+    public:
+        /**
+         * Construct a new annotation data structure.
+         */
+        AnnotationData();
+
+        /**
+         * Deserialize an annotation data structure.
+         */
+        AnnotationData( const Config& conf );
+
+    public:
+        /**
+         * Readable name of the annotation.
+         */
+        void setName( const std::string& value ) { _name = value; }
+        const std::string& getName() const { return _name; }
+
+        /**
+         * Readable description of the annotation.
+         */
+        void setDescription( const std::string& value ) { _description = value; }
+        const std::string& getDescription() const { return _description; }
+
+        /**
+         * Priority of the item
+         */
+        void setPriority( float value ) { _priority = value; }
+        float getPriority() const { return _priority; }
+
+        /**
+         * Viewpoint associated with this annotation.
+         */
+        void setViewpoint( const Viewpoint& vp ) {
+            if ( _viewpoint )
+                delete _viewpoint;
+            _viewpoint = new Viewpoint(vp);
+        }
+
+        const Viewpoint* getViewpoint() const {
+            return _viewpoint;
+        }
+
+    public: // serialization
+
+        virtual void mergeConfig(const Config& conf);
+        Config getConfig() const;
+
+    public:
+        virtual ~AnnotationData();
+
+    protected:
+        std::string _name;
+        std::string _description;
+        float       _priority;
+        Viewpoint*  _viewpoint;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_ANNOTATION_DATA_H
diff --git a/src/osgEarthAnnotation/AnnotationData.cpp b/src/osgEarthAnnotation/AnnotationData.cpp
new file mode 100644
index 0000000..932d0d9
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationData.cpp
@@ -0,0 +1,72 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/AnnotationData>
+
+using namespace osgEarth::Annotation;
+
+AnnotationData::AnnotationData() :
+_viewpoint( 0L ),
+_priority ( 0.0f )
+{
+    //nop
+}
+
+AnnotationData::AnnotationData(const Config& conf) :
+_viewpoint( 0L ),
+_priority ( 0.0f )
+{
+    mergeConfig(conf);
+}
+
+AnnotationData::~AnnotationData()
+{
+    if ( _viewpoint )
+        delete _viewpoint;
+}
+
+void
+AnnotationData::mergeConfig(const Config& conf)
+{
+    _name        = conf.value("name");
+    _description = conf.value("description");
+    _priority    = conf.value<float>("priority", _priority);
+
+    if ( conf.hasValue("viewpoint") )
+    {
+        _viewpoint = new Viewpoint( conf.value("viewpoint") );
+    }
+}
+
+Config
+AnnotationData::getConfig() const
+{
+    Config conf("annotation_data");
+
+    if ( !_name.empty() )
+        conf.add("name", _name);
+    if ( !_description.empty() )
+        conf.add("description", _description);
+    if ( _priority != 0.0f )
+        conf.add("priority", _priority );
+    if ( _viewpoint )
+        conf.add( "viewpoint", _viewpoint->getConfig() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/AnnotationEditing b/src/osgEarthAnnotation/AnnotationEditing
new file mode 100644
index 0000000..5a172cb
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationEditing
@@ -0,0 +1,124 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHANNO_ANNOTATION_EDITING_H
+#define OSGEARTHANNO_ANNOTATION_EDITING_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/RectangleNode>
+#include <osgEarth/Draggers>
+#include <osgEarth/MapNode>
+
+namespace osgEarth { namespace Annotation {
+
+     /**
+     * An editor node that allows you to move the position of LocalizedNode annotations    
+     */
+    class OSGEARTHANNO_EXPORT LocalizedNodeEditor : public osg::Group
+    {
+    public:
+        /**
+         * Create a new LocalizedAnnotationEditor
+         * @param localizedNode
+         *        The LocalizedNode to edit
+         */
+        LocalizedNodeEditor(LocalizedNode* localizedNode);    
+        
+        virtual ~LocalizedNodeEditor();    
+
+        virtual void updateDraggers();
+
+        Dragger* getPositionDragger() { return _dragger; }
+
+        void setPosition( const GeoPoint& pos );
+
+    protected:
+        osg::ref_ptr< LocalizedNode > _node;
+        Dragger* _dragger;
+    };
+
+    class OSGEARTHANNO_EXPORT CircleNodeEditor : public LocalizedNodeEditor
+    {
+    public:
+        /**
+         * Create a new CircleEditor
+         * @param circleNode
+         *        The CircleNode to edit
+         */
+        CircleNodeEditor(CircleNode* circleNode);    
+        
+        virtual ~CircleNodeEditor();    
+
+        void computeBearing();
+
+        void setBearing( const Angle& value );
+
+        virtual void updateDraggers();
+
+        Dragger* getRadiusDragger() { return _radiusDragger; }
+
+        double _bearing;
+
+        Dragger* _radiusDragger;
+    };
+
+    class OSGEARTHANNO_EXPORT EllipseNodeEditor : public LocalizedNodeEditor
+    {
+    public:
+        /**
+         * Create a new EllipseNodeEditor
+         * @param ellipseNode
+         *        The EllipseNodeEditor to edit
+         */
+        EllipseNodeEditor(EllipseNode* ellipseNode);    
+        
+        virtual ~EllipseNodeEditor();    
+
+        virtual void updateDraggers();
+
+        Dragger* _majorDragger;
+        Dragger* _minorDragger;
+    };
+
+    class OSGEARTHANNO_EXPORT RectangleNodeEditor : public LocalizedNodeEditor
+    {
+    public:
+        /**
+         * Create a new RectangleNodeEditor
+         * @param rectangleNode
+         *        The RectangleNodeEditor to edit
+         */
+        RectangleNodeEditor(RectangleNode* rectangleNode);    
+        
+        virtual ~RectangleNodeEditor();    
+
+        virtual void updateDraggers();
+
+        Dragger* _llDragger;
+        Dragger* _lrDragger;
+        Dragger* _urDragger;
+        Dragger* _ulDragger;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTHANNO_FEATURE_EDITING_H
diff --git a/src/osgEarthAnnotation/AnnotationEditing.cpp b/src/osgEarthAnnotation/AnnotationEditing.cpp
new file mode 100644
index 0000000..a965285
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationEditing.cpp
@@ -0,0 +1,370 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/AnnotationEditing>
+
+#include <osg/io_utils>
+
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+
+/**********************************************************************/
+class DraggerCallback : public Dragger::PositionChangedCallback
+{
+public:
+    DraggerCallback(LocalizedNode* node, LocalizedNodeEditor* editor):
+      _node(node),
+      _editor( editor )
+      {          
+      }
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          _node->setPosition( position);                     
+          _editor->updateDraggers();
+      }
+
+      LocalizedNode* _node;
+      LocalizedNodeEditor* _editor;
+};
+
+/**********************************************************************/
+LocalizedNodeEditor::LocalizedNodeEditor(LocalizedNode* node):
+_node( node )
+{
+    _dragger  = new SphereDragger( _node->getMapNode());  
+    _dragger->addPositionChangedCallback(new DraggerCallback(_node, this) );        
+    addChild(_dragger);
+    updateDraggers();
+}
+
+LocalizedNodeEditor::~LocalizedNodeEditor()
+{    
+}
+
+void
+LocalizedNodeEditor::updateDraggers()
+{
+    GeoPoint pos = _node->getPosition();    
+    _dragger->setPosition( pos, false );
+}
+
+void
+LocalizedNodeEditor::setPosition(const GeoPoint& pos)
+{
+    _node->setPosition( pos );
+    updateDraggers();
+}
+
+
+/**********************************************************************/
+
+class SetRadiusCallback : public Dragger::PositionChangedCallback
+{
+public:
+    SetRadiusCallback(CircleNode* node, CircleNodeEditor* editor):
+      _node(node),
+      _editor( editor )
+      {
+      }
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          const osg::EllipsoidModel* em = _node->getMapNode()->getMapSRS()->getEllipsoid();
+
+          GeoPoint radiusLocation(position);
+          radiusLocation.makeGeographic();
+
+          //Figure out the distance between the center of the circle and this new location
+          GeoPoint center = _node->getPosition();
+          center.makeGeographic();
+
+          double distance = GeoMath::distance(osg::DegreesToRadians( center.y() ), osg::DegreesToRadians( center.x() ), 
+                                              osg::DegreesToRadians( radiusLocation.y() ), osg::DegreesToRadians( radiusLocation.x() ),
+                                              em->getRadiusEquator());
+          _node->setRadius( Linear(distance, Units::METERS ) );
+          //The position of the radius dragger has changed, so recompute the bearing
+          _editor->computeBearing();
+      }
+
+      CircleNode* _node;
+      CircleNodeEditor* _editor;
+};
+
+
+
+CircleNodeEditor::CircleNodeEditor( CircleNode* node ):
+LocalizedNodeEditor( node ),
+_radiusDragger( 0 ),
+_bearing( osg::DegreesToRadians( 90.0 ) )
+{
+    _radiusDragger  = new SphereDragger(_node->getMapNode());
+    _radiusDragger->addPositionChangedCallback(new SetRadiusCallback( node,this ) );        
+    static_cast<SphereDragger*>(_radiusDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_radiusDragger);
+    updateDraggers();
+}
+
+CircleNodeEditor::~CircleNodeEditor()
+{
+    //nop
+}
+
+void
+CircleNodeEditor::setBearing( const Angle& bearing )
+{
+    _bearing = bearing.as(Units::RADIANS);
+    updateDraggers();
+}
+
+void
+CircleNodeEditor::computeBearing()
+{
+    _bearing = osg::DegreesToRadians( 90.0 );
+    //Get the radius dragger's position
+    if (!_radiusDragger->getMatrix().isIdentity())
+    {
+        // Get the current location of the center of the circle (in lat/long)
+        GeoPoint location = _node->getPosition();
+        location.makeGeographic();
+
+        // location of the radius dragger (in lat/long)
+        GeoPoint radiusLocation;
+        radiusLocation.fromWorld( location.getSRS(), _radiusDragger->getMatrix().getTrans() );
+
+        // calculate the bearing b/w the 
+        _bearing = GeoMath::bearing(
+            osg::DegreesToRadians(location.y()), osg::DegreesToRadians(location.x()),
+            osg::DegreesToRadians(radiusLocation.y()), osg::DegreesToRadians(radiusLocation.x()));
+    }
+}
+
+void
+CircleNodeEditor::updateDraggers()
+{
+    LocalizedNodeEditor::updateDraggers();
+    if (_radiusDragger)
+    {
+        const osg::EllipsoidModel* em = _node->getMapNode()->getMapSRS()->getEllipsoid();
+        
+        // Get the current location of the center of the circle (in lat/long, absolute Z)
+        GeoPoint location = _node->getPosition();   
+        location.makeGeographic();
+        //location.makeAbsolute( _node->getMapNode()->getTerrain() );
+        
+        //Get the radius of the circle in meters
+        double r = static_cast<CircleNode*>(_node.get())->getRadius().as(Units::METERS);
+
+        double lat, lon;
+        GeoMath::destination(
+            osg::DegreesToRadians( location.y() ), osg::DegreesToRadians( location.x() ), 
+            _bearing, r, lat, lon, em->getRadiusEquator() );
+
+        GeoPoint draggerLocation( 
+            location.getSRS(),
+            osg::RadiansToDegrees(lon),
+            osg::RadiansToDegrees(lat));
+
+        _radiusDragger->setPosition( draggerLocation, false );
+    }
+}
+
+
+
+/***************************************************************************************************/
+
+
+class SetEllipseRadiusCallback : public Dragger::PositionChangedCallback
+{
+public:
+    SetEllipseRadiusCallback(EllipseNode* node, EllipseNodeEditor* editor, bool major):
+      _node(node),
+      _editor( editor ),
+      _major( major )
+      {
+      }
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          const osg::EllipsoidModel* em = _node->getMapNode()->getMapSRS()->getEllipsoid();
+
+          //Figure out the distance between the center of the circle and this new location
+          GeoPoint center = _node->getPosition();
+          double distance = GeoMath::distance(osg::DegreesToRadians( center.y() ), osg::DegreesToRadians( center.x() ), 
+                                              osg::DegreesToRadians( position.y() ), osg::DegreesToRadians( position.x() ),
+                                              em->getRadiusEquator());
+
+          double bearing = GeoMath::bearing(osg::DegreesToRadians( center.y() ), osg::DegreesToRadians( center.x() ), 
+                                            osg::DegreesToRadians( position.y() ), osg::DegreesToRadians( position.x() ));
+        
+
+          //Compute the new angular rotation based on how they moved the point
+          if (_major)
+          {
+              _node->setRotationAngle( Angular( -bearing, Units::RADIANS ) );
+              _node->setRadiusMajor( Linear(distance, Units::METERS ) );
+          }
+          else
+          {
+              _node->setRotationAngle( Angular( osg::PI_2 - bearing, Units::RADIANS ) );
+              _node->setRadiusMinor( Linear(distance, Units::METERS ) );
+          }
+          _editor->updateDraggers();
+     }
+
+
+
+      EllipseNode* _node;
+      EllipseNodeEditor* _editor;
+      bool _major;
+};
+
+
+
+
+
+EllipseNodeEditor::EllipseNodeEditor( EllipseNode* node ):
+LocalizedNodeEditor( node ),
+_minorDragger( 0 ),
+_majorDragger( 0 )
+{
+    _minorDragger  = new SphereDragger( _node->getMapNode());
+    _minorDragger->addPositionChangedCallback(new SetEllipseRadiusCallback( node, this, false ) );        
+    static_cast<SphereDragger*>(_minorDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_minorDragger);
+
+    _majorDragger  = new SphereDragger( _node->getMapNode());
+    _majorDragger->addPositionChangedCallback(new SetEllipseRadiusCallback( node, this, true ) );        
+    static_cast<SphereDragger*>(_majorDragger)->setColor(osg::Vec4(1,0,0,1));
+    addChild(_majorDragger);
+
+    updateDraggers();
+}
+
+EllipseNodeEditor::~EllipseNodeEditor()
+{
+}
+
+void
+EllipseNodeEditor::updateDraggers()
+{
+    LocalizedNodeEditor::updateDraggers();
+    if (_majorDragger && _minorDragger)
+    {
+        const osg::EllipsoidModel* em = _node->getMapNode()->getMap()->getProfile()->getSRS()->getEllipsoid();
+        
+        //Get the current location of the center of the circle
+        GeoPoint location = _node->getPosition();    
+        
+        //Get the raddi of the ellipse in meters
+        EllipseNode* ellipse = static_cast<EllipseNode*>(_node.get());
+        double majorR = ellipse->getRadiusMajor().as(Units::METERS);
+        double minorR = ellipse->getRadiusMinor().as(Units::METERS);
+
+        double rotation = ellipse->getRotationAngle().as( Units::RADIANS );
+
+        double lat, lon;
+        GeoMath::destination(osg::DegreesToRadians( location.y() ), osg::DegreesToRadians( location.x() ), osg::PI_2 - rotation, minorR, lat, lon, em->getRadiusEquator());        
+
+        _minorDragger->setPosition( GeoPoint(location.getSRS(), osg::RadiansToDegrees( lon ), osg::RadiansToDegrees( lat )), false);
+
+        GeoMath::destination(osg::DegreesToRadians( location.y() ), osg::DegreesToRadians( location.x() ), -rotation, majorR, lat, lon, em->getRadiusEquator());                
+        _majorDragger->setPosition( GeoPoint(location.getSRS(), osg::RadiansToDegrees( lon ), osg::RadiansToDegrees( lat )), false);
+    }
+}
+
+
+/***************************************************************************************************/
+class SetCornerDragger : public Dragger::PositionChangedCallback
+{
+public:
+    SetCornerDragger(RectangleNode* node, RectangleNodeEditor* editor, RectangleNode::Corner corner):
+      _node(node),
+      _editor( editor ),
+      _corner( corner )
+      {
+      }
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          _node->setCorner( _corner, position );                     
+          _editor->updateDraggers();
+      }
+
+      RectangleNode* _node;
+      RectangleNodeEditor* _editor;
+      RectangleNode::Corner _corner;
+};
+
+
+
+
+
+RectangleNodeEditor::RectangleNodeEditor( RectangleNode* node ):
+LocalizedNodeEditor( node ),
+_llDragger( 0 ),
+_lrDragger( 0 ),
+_urDragger( 0 ),
+_ulDragger( 0 )
+{
+    //Lower left
+    _llDragger  = new SphereDragger(_node->getMapNode());
+    _llDragger->addPositionChangedCallback(new SetCornerDragger( node, this, RectangleNode::CORNER_LOWER_LEFT ) );        
+    static_cast<SphereDragger*>(_llDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_llDragger);    
+
+    //Lower right
+    _lrDragger  = new SphereDragger(_node->getMapNode());
+    _lrDragger->addPositionChangedCallback(new SetCornerDragger( node, this, RectangleNode::CORNER_LOWER_RIGHT ) );        
+    static_cast<SphereDragger*>(_lrDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_lrDragger);    
+
+    //Upper right
+    _urDragger  = new SphereDragger(_node->getMapNode());
+    _urDragger->addPositionChangedCallback(new SetCornerDragger( node, this, RectangleNode::CORNER_UPPER_RIGHT ) );        
+    static_cast<SphereDragger*>(_urDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_urDragger);    
+
+    //Upper left
+    _ulDragger  = new SphereDragger(_node->getMapNode());
+    _ulDragger->addPositionChangedCallback(new SetCornerDragger( node, this, RectangleNode::CORNER_UPPER_LEFT ) );        
+    static_cast<SphereDragger*>(_ulDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_ulDragger);    
+
+    updateDraggers();
+}
+
+RectangleNodeEditor::~RectangleNodeEditor()
+{
+}
+
+void
+RectangleNodeEditor::updateDraggers()
+{
+    LocalizedNodeEditor::updateDraggers();    
+
+    RectangleNode* rect = static_cast<RectangleNode*>(_node.get());
+    
+    osg::Matrixd matrix;
+
+    _ulDragger->setPosition( rect->getUpperLeft(), false);
+    _llDragger->setPosition( rect->getLowerLeft(), false);
+    _urDragger->setPosition( rect->getUpperRight(), false);    
+    _lrDragger->setPosition( rect->getLowerRight(), false);
+}
diff --git a/src/osgEarthAnnotation/AnnotationNode b/src/osgEarthAnnotation/AnnotationNode
new file mode 100644
index 0000000..ebeaea5
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationNode
@@ -0,0 +1,203 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_ANNOTATION_NODE_H
+#define OSGEARTH_ANNO_ANNOTATION_NODE_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthAnnotation/Decoration>
+#include <osgEarthSymbology/Style>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarth/Terrain>
+#include <osgEarth/TileKey>
+#include <osg/Switch>
+
+#define META_AnnotationNode(library,type) \
+    META_Node(library,type); \
+    virtual bool accept(Decoration* ds, bool enable) { return ds->apply(*this, enable); }
+
+// forward decs
+namespace osgEarth
+{
+    class MapNode;
+}
+
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Base class for all annotation node types.
+     */
+    class OSGEARTHANNO_EXPORT AnnotationNode : public osg::Group,
+                                               public MapNodeObserver
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, AnnotationNode);
+
+        /**
+         * Annotation data attached to this annotation node.
+         */
+        virtual void setAnnotationData( AnnotationData* data );
+        AnnotationData* getAnnotationData() const { return _annoData.get(); }
+
+        /**
+         * Sets the node to "dynamic", i.e. sets up the node so that you can
+         * safely change it at runtime.
+         */
+        virtual void setDynamic( bool value );
+
+        /** 
+         * Gets the attach point for children of this node
+         */
+        virtual osg::Group* getChildAttachPoint();
+
+        /**
+         * Serialized this annotation node so you can re-create it later
+         */
+        virtual Config getConfig() const { return Config(); }
+
+
+    public: // decoration support
+
+        /**
+         * Installs a decoration on this annotation node.
+         */
+        void installDecoration( const std::string& name, Decoration* ds );
+
+        /**
+         * Uninstalls a decoration on this annotation node.
+         */
+        void uninstallDecoration( const std::string& name );
+
+        /**
+         * Gets the current decoration
+         */
+        const std::string& getDecoration() const;
+
+        /**
+         * Activates a named decoration that was installed previously
+         */
+        virtual void setDecoration( const std::string& name );
+
+        /**
+         * Clears any decoration.
+         */
+        virtual void clearDecoration();
+
+        /**
+         * Whether this annotation has the specified decoration installed.
+         */
+        bool hasDecoration( const std::string& name ) const;
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        MapNode* getMapNode() { return _mapNode.get(); }
+        const MapNode* getMapNode() const { return _mapNode.get(); }
+
+
+    protected:
+
+        osg::ref_ptr<AnnotationData> _annoData;
+        bool                         _dynamic;
+        bool                         _autoclamp;
+        bool                         _depthAdj;
+        osg::ref_ptr<const AltitudeSymbol> _altitude;
+
+        typedef std::map<std::string, osg::ref_ptr<Decoration> > DecorationMap;
+        DecorationMap _dsMap;
+        Decoration*   _activeDs;
+        std::string   _activeDsName;
+
+
+        bool supportsAutoClamping( const Style& style ) const;
+        
+        void configureForAltitudeMode( const AltitudeMode& mode );
+
+        // Apply general style information
+        virtual void applyStyle( const Style&);
+        
+        /**
+         * Sets the node to automatically re-clamp to the terrain (if applicable).
+         * Note: you usually don't need to call this directly; it is automatically set
+         * based on the symbology. But you can call it to override the automatic setting.
+         */
+        virtual void setAutoClamp( bool value );
+
+        /**
+         * Whether to activate depth adjustment.
+         * Note: you usually don't need to call this directly; it is automatically set
+         * based on the symbology. But you can call it to override the automatic setting.
+         */
+        virtual void setDepthAdjustment( bool value );
+
+        // utility funcion to make a geopoint absolute height
+        bool makeAbsolute( GeoPoint& mapPoint, osg::Node* patch =0L ) const;
+
+        // hidden default ctor
+        AnnotationNode( MapNode* mapNode =0L );
+
+        // hidden copy ctor
+        AnnotationNode(const AnnotationNode& rhs, const osg::CopyOp& op=osg::CopyOp::DEEP_COPY_ALL) { }
+
+        osg::ref_ptr< TerrainCallback > _autoClampCallback;
+
+    private:
+            
+        osg::observer_ptr<MapNode>   _mapNode;
+
+
+    public: // internal methods; do not call directly
+
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain ) { }
+
+        virtual ~AnnotationNode();
+    };
+
+    /**
+     * Virtual class for AnnotationNodes with the set/getPosition method
+     */
+    class PositionedAnnotationNode : public AnnotationNode
+    {
+    public:
+
+        /**
+         * Sets the map position of the node.
+         * Returns true upon success.
+         */
+        virtual bool setPosition( const GeoPoint& p ) =0;
+
+        /**
+         * Gets the position (in map coordinates) of the node
+         */
+        virtual GeoPoint getPosition() const =0;
+
+    protected:
+
+        PositionedAnnotationNode(MapNode* mapNode =0L) : AnnotationNode(mapNode) { }
+        
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_ANNOTATION_NODE_H
diff --git a/src/osgEarthAnnotation/AnnotationNode.cpp b/src/osgEarthAnnotation/AnnotationNode.cpp
new file mode 100644
index 0000000..13fc4cb
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationNode.cpp
@@ -0,0 +1,333 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/AnnotationSettings>
+#include <osgEarthAnnotation/AnnotationUtils>
+
+#include <osgEarth/DepthOffset>
+#include <osgEarth/MapNode>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/TerrainEngineNode>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+//-------------------------------------------------------------------
+
+namespace osgEarth { namespace Annotation
+{
+    struct AutoClampCallback : public TerrainCallback
+    {
+        AutoClampCallback( AnnotationNode* annotation):
+        _annotation( annotation )
+        {
+        }
+
+        void onTileAdded( const TileKey& key, osg::Node* tile, TerrainCallbackContext& context )
+        {
+            _annotation->reclamp( key, tile, context.getTerrain() );
+        }
+
+        AnnotationNode* _annotation;
+    };
+}  }
+
+//-------------------------------------------------------------------
+
+AnnotationNode::AnnotationNode(MapNode* mapNode) :
+_mapNode    ( mapNode ),
+_dynamic    ( false ),
+_autoclamp  ( false ),
+_depthAdj   ( false ),
+_activeDs   ( 0L )
+{
+    //nop
+    //Note: Cannot call setMapNode() here because it's a virtual function.
+    //      Each subclass will be separately responsible at ctor time.
+}
+
+AnnotationNode::~AnnotationNode()
+{
+    setMapNode( 0L );
+}
+
+void
+AnnotationNode::setMapNode( MapNode* mapNode )
+{
+    if ( getMapNode() != mapNode )
+    {
+        // relocate the auto-clamping callback, if there is one:
+        osg::ref_ptr<MapNode> oldMapNode = _mapNode.get();
+        if ( oldMapNode.valid() )
+        {
+            if ( _autoClampCallback )
+            {
+                oldMapNode->getTerrain()->removeTerrainCallback( _autoClampCallback.get() );
+                if ( mapNode )
+                    mapNode->getTerrain()->addTerrainCallback( _autoClampCallback.get() );
+            }
+        }
+
+        _mapNode = mapNode;
+    }
+}
+
+void
+AnnotationNode::setAnnotationData( AnnotationData* data )
+{
+    _annoData = data;
+}
+
+void
+AnnotationNode::setDynamic( bool value )
+{
+    _dynamic = value;
+}
+
+void
+AnnotationNode::setAutoClamp( bool value )
+{
+    if ( getMapNode() )
+    {
+        if ( !_autoclamp && value )
+        {
+            setDynamic( true );
+
+            if ( AnnotationSettings::getContinuousClamping() )
+            {
+                _autoClampCallback = new AutoClampCallback( this );
+                getMapNode()->getTerrain()->addTerrainCallback( _autoClampCallback.get() );
+            }
+        }
+        else if ( _autoclamp && !value && _autoClampCallback.valid())
+        {
+            getMapNode()->getTerrain()->removeTerrainCallback( _autoClampCallback );
+            _autoClampCallback = 0;
+        }
+
+        _autoclamp = value;
+        
+        if ( _autoclamp && AnnotationSettings::getApplyDepthOffsetToClampedLines() )
+        {
+            if ( !_depthAdj )
+            {
+                // verify that the geometry if polygon-less:
+                bool wantDepthAdjustment = false;
+                PrimitiveSetTypeCounter counter;
+                this->accept(counter);
+                if ( counter._polygon == 0 && (counter._line > 0 || counter._point > 0) )
+                {
+                    wantDepthAdjustment = true;
+                }
+
+                setDepthAdjustment( wantDepthAdjustment );
+            }
+            else
+            {
+                // update depth adjustment calculation
+                getOrCreateStateSet()->addUniform( DepthOffsetUtils::createMinOffsetUniform(this) );
+            }
+        }
+    }
+}
+
+void
+AnnotationNode::setDepthAdjustment( bool enable )
+{
+    if ( enable )
+    {
+        osg::StateSet* s = this->getOrCreateStateSet();
+        osg::Program* daProgram = DepthOffsetUtils::getOrCreateProgram(); // cached, not a leak.
+        //TODO: be careful to check for VirtualProgram as well in the future if things change
+        osg::Program* p = dynamic_cast<osg::Program*>( s->getAttribute(osg::StateAttribute::PROGRAM) );
+        if ( !p || p != daProgram )
+            s->setAttributeAndModes( daProgram, osg::StateAttribute::ON|osg::StateAttribute::OVERRIDE );
+
+        s->addUniform( DepthOffsetUtils::createMinOffsetUniform(this) );
+        s->addUniform( DepthOffsetUtils::getIsNotTextUniform() );
+    }
+    else if ( this->getStateSet() )
+    {
+        this->getStateSet()->removeAttribute(osg::StateAttribute::PROGRAM);
+    }
+
+    _depthAdj = enable;
+}
+
+bool
+AnnotationNode::makeAbsolute( GeoPoint& mapPoint, osg::Node* patch ) const
+{
+    // in terrain-clamping mode, force it to HAT=0:
+    if ( _altitude.valid() && (
+        _altitude->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN || 
+        _altitude->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN) )
+    {
+        mapPoint.altitudeMode() = ALTMODE_RELATIVE;
+        //If we're clamping to the terrain
+        if (_altitude->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN)
+        {
+            mapPoint.z() = 0.0;
+        }
+    }
+
+    // if the point's already absolute and we're not clamping it, nop.
+    if ( mapPoint.altitudeMode() == ALTMODE_ABSOLUTE )
+    {
+        return true;
+    }
+
+    // calculate the absolute Z of the map point.
+    if ( getMapNode() )
+    {
+        // find the terrain height at the map point:
+        double hamsl;
+        if (getMapNode()->getTerrain()->getHeight(patch, mapPoint.getSRS(), mapPoint.x(), mapPoint.y(), &hamsl, 0L))
+        {
+            // apply any scale/offset in the symbology:
+            if ( _altitude.valid() )
+            {
+                if ( _altitude->verticalScale().isSet() )
+                    hamsl *= _altitude->verticalScale()->eval();
+                if ( _altitude->verticalOffset().isSet() )
+                    hamsl += _altitude->verticalOffset()->eval();
+            }
+            mapPoint.z() += hamsl;
+        }
+        mapPoint.altitudeMode() = ALTMODE_ABSOLUTE;
+        return true;
+    }
+
+    return false;
+}
+
+
+void
+AnnotationNode::installDecoration( const std::string& name, Decoration* ds )
+{
+    if ( _activeDs )
+    {
+        clearDecoration();
+    }
+
+    if ( ds == 0L )
+    {
+        _dsMap.erase( name );
+    }
+    else
+    {
+        _dsMap[name] = ds->copyOrClone();
+    }
+}
+
+void
+AnnotationNode::uninstallDecoration( const std::string& name )
+{
+    clearDecoration();
+    _dsMap.erase( name );
+}
+
+const std::string&
+AnnotationNode::getDecoration() const
+{
+    return _activeDsName;
+}
+
+void
+AnnotationNode::setDecoration( const std::string& name )
+{
+    // already active?
+    if ( _activeDs && _activeDsName == name )
+        return;
+
+    // is a different one active? if so kill it
+    if ( _activeDs )
+        clearDecoration();
+
+    // try to find and enable the new one
+    DecorationMap::iterator i = _dsMap.find(name);
+    if ( i != _dsMap.end() )
+    {
+        Decoration* ds = i->second.get();
+        if ( ds )
+        {
+            if ( this->accept(ds, true) ) 
+            {
+                _activeDs = ds;
+                _activeDsName = name;
+            }
+        }
+    }
+}
+
+void
+AnnotationNode::clearDecoration()
+{
+    if ( _activeDs )
+    {
+        this->accept(_activeDs, false);
+        _activeDs = 0L;
+    }
+}
+
+bool
+AnnotationNode::hasDecoration( const std::string& name ) const
+{
+    return _dsMap.find(name) != _dsMap.end();
+}
+
+osg::Group*
+AnnotationNode::getChildAttachPoint()
+{
+    osg::Transform* t = osgEarth::findTopMostNodeOfType<osg::Transform>(this);
+    return t ? (osg::Group*)t : (osg::Group*)this;
+}
+
+bool
+AnnotationNode::supportsAutoClamping( const Style& style ) const
+{
+    return
+        !style.has<ExtrusionSymbol>()  &&
+        !style.has<InstanceSymbol>()   &&
+        !style.has<MarkerSymbol>()     &&  // backwards-compability
+        style.has<AltitudeSymbol>()    &&
+        (style.get<AltitudeSymbol>()->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN ||
+         style.get<AltitudeSymbol>()->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN);
+}
+
+void
+AnnotationNode::configureForAltitudeMode( const AltitudeMode& mode )
+{
+    setAutoClamp(
+        mode == ALTMODE_RELATIVE ||
+        (_altitude.valid() && _altitude->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN) );
+}
+
+void
+AnnotationNode::applyStyle( const Style& style)
+{
+    if ( supportsAutoClamping(style) )
+    {
+        _altitude = style.get<AltitudeSymbol>();
+        setAutoClamp( true );
+    }
+
+    bool enableLighting = style.has<ExtrusionSymbol>();
+    this->getOrCreateStateSet()->setMode( GL_LIGHTING, enableLighting );
+}
diff --git a/src/osgEarthAnnotation/AnnotationRegistry b/src/osgEarthAnnotation/AnnotationRegistry
new file mode 100644
index 0000000..0c491d3
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationRegistry
@@ -0,0 +1,103 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_REGISTRY_H
+#define OSGEARTH_ANNO_REGISTRY_H 1
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarth/MapNode>
+
+namespace osgEarth { namespace Annotation
+{
+    /**
+     * Singleton registry for annotation node types.
+     */
+    class OSGEARTHANNO_EXPORT AnnotationRegistry
+    {
+    public:
+        /**
+         * Access the singleton instance of this class.
+         */
+        static AnnotationRegistry* instance();
+
+        /**
+         * Creates one or more AnnotationNodes from a Config. The resulting
+         * AnnotationNode's are placed under the provided group.
+         */
+        bool create( 
+            MapNode*              mapNode, 
+            const Config&         conf, 
+            const osgDB::Options* dbOptions,
+            osg::Group*&          output ) const;
+
+        /**
+         * Returns a Config containing all the AnnotationNode's found in the
+         * specified subgraph. You can pass this Config to create(...) to 
+         * rematerialize the nodes.
+         */
+        Config getConfig( osg::Node* graph ) const;
+
+    public:
+        /**
+         * Adds an annotation type to the registry
+         */
+        void add( const std::string& key, class AnnotationFactory* factory );
+
+        virtual ~AnnotationRegistry() { }
+
+    private:
+        AnnotationRegistry() { }
+        typedef std::map<std::string, class AnnotationFactory*> FactoryMap;
+        FactoryMap _factories;
+
+        AnnotationNode* createOne( 
+            MapNode*              mapNode, 
+            const Config&         conf,
+            const osgDB::Options* dbOptions, 
+            bool                  declutter =false ) const;
+    };
+
+    // Macro used to register new annotation types.
+#define OSGEARTH_REGISTER_ANNOTATION( KEY, CLASSNAME ) \
+    static AnnotationRegistrationProxy< CLASSNAME > s_osgEarthAnnotationRegistrationProxy##KEY( #KEY )
+
+
+    //--------------------------------------------------------------------
+
+    // internal: interface class for an object that creates annotation node from a Config
+    // (used by OSGEARTH_REGISTER_ANNOTATION macro)
+    class AnnotationFactory {
+    public:
+        virtual AnnotationNode* create(
+            MapNode*              mapNode, 
+            const Config&         conf, 
+            const osgDB::Options* dbOptions) const =0;
+
+        virtual ~AnnotationFactory() { }
+    };
+
+    // internal: proxy class used by the registraion macro
+    template<typename T>
+    struct AnnotationRegistrationProxy : public AnnotationFactory {
+        AnnotationRegistrationProxy(const std::string& key) { AnnotationRegistry::instance()->add(key, this); }
+        AnnotationNode* create(MapNode* mapNode, const Config& conf, const osgDB::Options* options) const { return new T(mapNode, conf, options); }
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_FEATURE_NODE_H
diff --git a/src/osgEarthAnnotation/AnnotationRegistry.cpp b/src/osgEarthAnnotation/AnnotationRegistry.cpp
new file mode 100644
index 0000000..d49030e
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationRegistry.cpp
@@ -0,0 +1,169 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/Decluttering>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+//-------------------------------------------------------------------
+
+namespace
+{
+    struct CollectAnnotationNodes : public osg::NodeVisitor
+    {
+        CollectAnnotationNodes() : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+        {
+            _group.key() = "annotations";
+            _declutter   = false;
+        }
+
+        void apply(osg::Node& node)
+        {
+            AnnotationNode* anno = dynamic_cast<AnnotationNode*>( &node );
+            if ( anno )
+            {
+                Config conf = anno->getConfig();
+                _group.add( conf );
+            }
+
+            if (!_declutter &&
+                node.getStateSet() &&
+                node.getStateSet()->getRenderBinMode() != osg::StateSet::INHERIT_RENDERBIN_DETAILS &&
+                node.getStateSet()->getBinName() == OSGEARTH_DECLUTTER_BIN )
+            {
+                _declutter = true;
+            }
+
+            traverse(node);
+        }
+
+        Config _group;
+        bool   _declutter;
+    };
+}
+
+//-------------------------------------------------------------------
+
+AnnotationRegistry*
+AnnotationRegistry::instance()
+{
+    // OK to be in the local scope since this gets called at static init time
+    // by the OSGEARTH_REGISTER_ANNOTATION macro
+    static AnnotationRegistry* s_singleton =0L;
+    static Threading::Mutex    s_singletonMutex;
+
+    if ( !s_singleton )
+    {
+        Threading::ScopedMutexLock lock(s_singletonMutex);
+        if ( !s_singleton )
+        {
+            s_singleton = new AnnotationRegistry();
+        }
+    }
+    return s_singleton;
+}
+
+
+void
+AnnotationRegistry::add( const std::string& type, AnnotationFactory* factory )
+{
+    if ( factory )
+        _factories[type] = factory;
+}
+
+
+bool
+AnnotationRegistry::create(MapNode*              mapNode, 
+                           const Config&         conf, 
+                           const osgDB::Options* options,
+                           osg::Group*&          results ) const
+{
+    bool createdAtLeastOne = false;
+
+    bool declutter = conf.value<bool>("declutter",false) == true;
+
+    // first try to parse the top-level config as an annotation:
+    AnnotationNode* top = createOne(mapNode, conf, options, declutter);
+    if ( top )
+    {
+        if ( results == 0L )
+            results = new osg::Group();
+        results->addChild( top );
+        createdAtLeastOne = true;
+    }
+
+    // failing that, treat it like a group of annotations:
+    else
+    {
+        for( ConfigSet::const_iterator i = conf.children().begin(); i != conf.children().end(); ++i )
+        {
+            AnnotationNode* anno = createOne( mapNode, *i, options, declutter );
+            if ( anno )
+            {
+                if ( results == 0L )
+                    results = new osg::Group();
+                results->addChild( anno );
+                createdAtLeastOne = true;
+            }
+        }
+    }
+
+    return createdAtLeastOne;
+}
+
+
+AnnotationNode*
+AnnotationRegistry::createOne(MapNode*              mapNode, 
+                              const Config&         conf, 
+                              const osgDB::Options* options, 
+                              bool                  declutterOrthos ) const
+{
+    FactoryMap::const_iterator f = _factories.find( conf.key() );
+    if ( f != _factories.end() && f->second != 0L )
+    {
+        AnnotationNode* anno = f->second->create(mapNode, conf, options);
+        if ( anno )
+        {
+            if ( declutterOrthos && dynamic_cast<SupportsDecluttering*>(anno) )
+            {
+                Decluttering::setEnabled( anno->getOrCreateStateSet(), true );
+            }
+
+            return anno;
+        }
+    }
+    return 0L;
+}
+
+
+Config
+AnnotationRegistry::getConfig( osg::Node* graph ) const
+{
+    if ( graph )
+    {
+        CollectAnnotationNodes visitor;
+        graph->accept( visitor );
+        if ( visitor._declutter )
+            visitor._group.set( "declutter", "true" );
+        return visitor._group;
+    }
+    return Config();
+}
+
diff --git a/src/osgEarthAnnotation/AnnotationSettings b/src/osgEarthAnnotation/AnnotationSettings
new file mode 100644
index 0000000..96f18de
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationSettings
@@ -0,0 +1,61 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_SETTINGS_H
+#define OSGEARTH_ANNOTATION_SETTINGS_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osg/NodeVisitor>
+
+namespace osgEarth { namespace Annotation
+{	
+    /**
+     * Global default settings for controlling annotation behavior
+     */
+    class OSGEARTHANNO_EXPORT AnnotationSettings
+    {
+    public:
+        /**
+         * Whether to apply automatic re-clamping of CLAMP_TO_TERRAIN geometry
+         * whenever a terrain tile under the geometry changes due to paging
+         * DEFAULT: true
+         */
+        static void setContinuousClamping( bool value ) { _continuousClamping = value; }
+        static bool getContinuousClamping() { return _continuousClamping; }
+
+        /**
+         * Whether to apply a depth-adjustment program to any line geometry in an 
+         * AnnotationNode that is created with a CLAMP_TO_TERRAIN altitude symbol. 
+         * The depth adjustment will mitigate z-fighting for clamped lines in many cases.
+         * DEFAULT: true
+         */
+        static void setApplyDepthOffsetToClampedLines( bool value ) { _autoDepthOffset = value; }
+        static bool getApplyDepthOffsetToClampedLines() { return _autoDepthOffset; }
+
+        static void setOcclusionQueryMaxRange( double value ) { _occlusionQueryMaxRange = value; }
+        static double getOcclusionQueryMaxRange() { return _occlusionQueryMaxRange; }
+
+    private:
+        static double _occlusionQueryMaxRange;
+        static bool _continuousClamping;
+        static bool _autoDepthOffset;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_SETTINGS_H
diff --git a/src/osgEarthAnnotation/AnnotationSettings.cpp b/src/osgEarthAnnotation/AnnotationSettings.cpp
new file mode 100644
index 0000000..dcbfbb4
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationSettings.cpp
@@ -0,0 +1,29 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/AnnotationSettings>
+
+using namespace osgEarth::Annotation;
+
+//---------------------------------------------------------------------------
+
+// static defaults
+bool AnnotationSettings::_continuousClamping = true;
+bool AnnotationSettings::_autoDepthOffset = true;
+double AnnotationSettings::_occlusionQueryMaxRange = 200000.0;
diff --git a/src/osgEarthAnnotation/AnnotationUtils b/src/osgEarthAnnotation/AnnotationUtils
new file mode 100644
index 0000000..30d4262
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationUtils
@@ -0,0 +1,147 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_ANNOTATION_UTILS_H
+#define OSGEARTH_ANNOTATION_ANNOTATION_UTILS_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarthSymbology/TextSymbol>
+#include <osgEarthSymbology/Style>
+#include <osg/AutoTransform>
+#include <osg/Drawable>
+#include <osg/Geometry>
+
+namespace osgEarth { namespace Annotation
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Internal tools used by the annotation library.
+     */
+    struct OSGEARTHANNO_EXPORT AnnotationUtils
+    {
+        static const std::string& UNIFORM_HIGHLIGHT();
+
+        static const std::string& UNIFORM_IS_TEXT();
+
+        static const std::string& UNIFORM_FADE();
+
+        static const std::string& PROGRAM_NAME();
+
+        /**
+         * Creates a drawable representing a symbolized text label in
+         * pixel space.
+         */
+        static osg::Drawable* createTextDrawable(
+            const std::string& text,
+            const TextSymbol*  symbol,
+            const osg::Vec3&   positionOffset );
+
+        /**
+         * Creates the basic geometry to draw an image texture-mapped to
+         * a quad in pixel space.
+         */
+        static osg::Geometry* createImageGeometry(
+            osg::Image*       image,
+            const osg::Vec2s& pixelOffsets,
+            unsigned          textureUnit       =0,
+            double            heading = 0.0);
+
+        /**
+         * Creates a fading uniform that the decluttering engine can use
+         * to adjust the alpha of annotation drawables.
+         */
+        static osg::Uniform* createFadeUniform();
+
+        /**
+         * Creates a boolean uniform used to indicate a hightlighted state.
+         */
+        static osg::Uniform* createHighlightUniform();
+
+        /**
+         * Install a program that implements fading, highligting, etc. on annotation 
+         * objects.
+         */
+        static void installAnnotationProgram( osg::StateSet* stateSet );
+
+        /**
+         * Builds a graph on top of the specified that that implements a 2-pass
+         * rendering scheme for self-occluding or self-intersecting geometies that
+         * would not otherwise properly blend. The scheme renders the back faces
+         * first, followed by the front faces, ensuring proper blending.
+         */
+        static osg::Node* installTwoPassAlpha( osg::Node* );
+
+        /**
+         * Checks whether using a style will require transparency blending.
+         */
+        static bool styleRequiresAlphaBlending( const Style& style );
+
+        /**
+         * Internal - A customized AutoTransform used by the OrthoNode to
+         * support intersections that are compatible with the decluttering engine
+         */
+        struct OrthoNodeAutoTransform : public osg::AutoTransform
+        {
+            void acceptCullNoTraverse( osg::CullStack* cs );
+
+            bool okToIntersect() const { return !_firstTimeToInitEyePoint; }
+        };
+
+        // some geometry creation utilities
+        static osg::Drawable* create2DQuad( const osg::BoundingBox& box, float padding, const osg::Vec4& color );
+
+        static osg::Drawable* create2DOutline( const osg::BoundingBox& box, float padding, const osg::Vec4& color );
+
+        static osg::Node* createFullScreenQuad( const osg::Vec4& color );
+
+        /**
+         * Builds a sphere geometry.
+         * @param r        Radius
+         * @param color    Color
+         * @param maxAngle Maximum angle between verts (controls tessellation)
+         */
+        static osg::Node* createSphere( float r, const osg::Vec4& color, float maxAngle =15.0f );
+
+        /**
+         * Builds a hemisphere geometry.
+         * @param r        Radius
+         * @param color    Color
+         * @param maxAngle Maximum angle between verts (controls tessellation)
+         */
+        static osg::Node* createHemisphere( float r, const osg::Vec4& color, float maxAngle =15.0f );
+
+        /**
+         * Builds an ellipsoid geometry.
+         * @param xr       X-axis radius
+         * @param yr       Y-axis radius
+         * @param zr       Z-axis radius
+         * @param color    Color
+         * @param maxAngle Maximum angle between verts (controls tessellation)
+         */
+        static osg::Node* createEllipsoid( float xr, float yr, float zr, const osg::Vec4& color, float maxAngle =15.0f );
+
+
+    private:
+        AnnotationUtils() { }
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_ANNOTATION_UTILS_H
diff --git a/src/osgEarthAnnotation/AnnotationUtils.cpp b/src/osgEarthAnnotation/AnnotationUtils.cpp
new file mode 100644
index 0000000..e3d0f7a
--- /dev/null
+++ b/src/osgEarthAnnotation/AnnotationUtils.cpp
@@ -0,0 +1,817 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthSymbology/Color>
+#include <osgEarthSymbology/MeshSubdivider>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/Capabilities>
+
+
+#include <osgText/Text>
+#include <osg/Depth>
+#include <osg/BlendFunc>
+#include <osg/CullFace>
+#include <osg/MatrixTransform>
+#include <osg/LightModel>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+const std::string&
+AnnotationUtils::PROGRAM_NAME()
+{
+  static std::string s = "osgEarthAnnotation::Program";
+  return s;
+}
+
+const std::string&
+AnnotationUtils::UNIFORM_HIGHLIGHT()
+{
+   static std::string s = "oeAnno_highlight";
+   return s;
+}
+
+
+const std::string&
+AnnotationUtils::UNIFORM_IS_TEXT()
+{
+  static std::string s = "oeAnno_isText";
+  return s;
+}
+
+const std::string&
+AnnotationUtils::UNIFORM_FADE()
+{
+  static std::string s ="oeAnno_fade";
+  return s;
+}
+
+osg::Drawable* 
+AnnotationUtils::createTextDrawable(const std::string& text,
+                                    const TextSymbol*  symbol,
+                                    const osg::Vec3&   positionOffset )
+                                    
+{
+    osgText::Text* t = new osgText::Text();
+    osgText::String::Encoding text_encoding = osgText::String::ENCODING_UNDEFINED;
+    if ( symbol && symbol->encoding().isSet() )
+    {
+        switch(symbol->encoding().value())
+        {
+        case TextSymbol::ENCODING_ASCII: text_encoding = osgText::String::ENCODING_ASCII; break;
+        case TextSymbol::ENCODING_UTF8: text_encoding = osgText::String::ENCODING_UTF8; break;
+        case TextSymbol::ENCODING_UTF16: text_encoding = osgText::String::ENCODING_UTF16; break;
+        case TextSymbol::ENCODING_UTF32: text_encoding = osgText::String::ENCODING_UTF32; break;
+        default: text_encoding = osgText::String::ENCODING_UNDEFINED; break;
+        }
+    }
+
+    t->setText( text, text_encoding );
+
+    if ( symbol && symbol->pixelOffset().isSet() )
+    {
+        t->setPosition( osg::Vec3(
+            positionOffset.x() + symbol->pixelOffset()->x(),
+            positionOffset.y() + symbol->pixelOffset()->y(),
+            positionOffset.z() ) );
+    }
+    else
+    {
+        t->setPosition( positionOffset );
+    }
+
+    t->setAutoRotateToScreen( false );
+    t->setCharacterSizeMode( osgText::Text::OBJECT_COORDS );
+    t->setCharacterSize( symbol && symbol->size().isSet() ? *symbol->size() : 16.0f );
+    t->setColor( symbol && symbol->fill().isSet() ? symbol->fill()->color() : Color::White );
+
+    osgText::Font* font = 0L;
+    if ( symbol && symbol->font().isSet() )
+        font = osgText::readFontFile( *symbol->font() );
+    if ( !font )
+        font = Registry::instance()->getDefaultFont();
+    if ( font )
+        t->setFont( font );
+
+    if ( symbol )
+    {
+        // they're the same enum.
+        osgText::Text::AlignmentType at = (osgText::Text::AlignmentType)symbol->alignment().value();
+        t->setAlignment( at );
+    }
+
+    if ( symbol && symbol->halo().isSet() )
+    {
+        t->setBackdropColor( symbol->halo()->color() );
+        t->setBackdropType( osgText::Text::OUTLINE );
+    }
+    else if ( !symbol )
+    {
+        // if no symbol at all is provided, default to using a black halo.
+        t->setBackdropColor( osg::Vec4(.3,.3,.3,1) );
+        t->setBackdropType( osgText::Text::OUTLINE );
+    }
+
+    // this disables the default rendering bin set by osgText::Font. Necessary if we're
+    // going to do decluttering at a higher level
+    osg::StateSet* stateSet = new osg::StateSet();
+    t->setStateSet( stateSet );
+    //osg::StateSet* stateSet = t->getOrCreateStateSet();
+
+    if ( symbol && symbol->declutter().isSet() )
+    {
+        Decluttering::setEnabled( stateSet, *symbol->declutter() );
+    }
+    else
+    {
+        stateSet->setRenderBinToInherit();
+    }
+
+    // add the static "isText=true" uniform; this is a hint for the annotation shaders
+    // if they get installed.
+    static osg::ref_ptr<osg::Uniform> s_isTextUniform = new osg::Uniform(osg::Uniform::BOOL, UNIFORM_IS_TEXT());
+    s_isTextUniform->set( true );
+    stateSet->addUniform( s_isTextUniform.get() );
+
+    return t;
+}
+
+osg::Geometry*
+AnnotationUtils::createImageGeometry(osg::Image*       image,
+                                     const osg::Vec2s& pixelOffset,
+                                     unsigned          textureUnit,
+                                     double            heading)
+{
+    if ( !image )
+        return 0L;
+
+    osg::Texture2D* texture = new osg::Texture2D();
+    texture->setFilter(osg::Texture::MIN_FILTER,osg::Texture::LINEAR);
+    texture->setFilter(osg::Texture::MAG_FILTER,osg::Texture::LINEAR);
+    texture->setResizeNonPowerOfTwoHint(false);
+    texture->setImage( image );
+
+    // set up the decoration.
+    osg::StateSet* dstate = new osg::StateSet;
+    dstate->setMode(GL_CULL_FACE,osg::StateAttribute::OFF);
+    dstate->setMode(GL_LIGHTING,osg::StateAttribute::OFF);
+    dstate->setMode(GL_BLEND, 1);
+    dstate->setTextureAttributeAndModes(0, texture,osg::StateAttribute::ON);   
+
+    // set up the geoset.
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+    
+    geom->setStateSet(dstate);
+
+    float x0 = (float)pixelOffset.x() - image->s()/2.0;
+    float y0 = (float)pixelOffset.y() - image->t()/2.0;
+
+    osg::Vec3Array* verts = new osg::Vec3Array(4);
+    (*verts)[0].set( x0, y0, 0 );
+    (*verts)[1].set( x0 + image->s(), y0, 0 );
+    (*verts)[2].set( x0 + image->s(), y0 + image->t(), 0 );
+    (*verts)[3].set( x0, y0 + image->t(), 0 );
+
+    if (heading != 0.0)
+    {
+        osg::Matrixd rot;
+        rot.makeRotate( heading, 0.0, 0.0, 1.0);
+        for (unsigned int i = 0; i < 4; i++)
+        {
+            (*verts)[i] = rot * (*verts)[i];
+        }
+    }
+    geom->setVertexArray(verts);
+    if ( verts->getVertexBufferObject() )
+        verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::Vec2Array* tcoords = new osg::Vec2Array(4);
+    (*tcoords)[0].set(0, 0);
+    (*tcoords)[1].set(1, 0);
+    (*tcoords)[2].set(1, 1);
+    (*tcoords)[3].set(0, 1);
+    geom->setTexCoordArray(textureUnit,tcoords);
+
+    osg::Vec4Array* colors = new osg::Vec4Array(1);
+    (*colors)[0].set(1.0f,1.0f,1.0,1.0f);
+    geom->setColorArray(colors);
+    geom->setColorBinding(osg::Geometry::BIND_OVERALL);
+
+    geom->addPrimitiveSet(new osg::DrawArrays(osg::PrimitiveSet::QUADS,0,4));
+
+    // add the static "isText=true" uniform; this is a hint for the annotation shaders
+    // if they get installed.
+    static osg::ref_ptr<osg::Uniform> s_isNotTextUniform = new osg::Uniform(osg::Uniform::BOOL, UNIFORM_IS_TEXT());
+    s_isNotTextUniform->set( false );
+    dstate->addUniform( s_isNotTextUniform.get() );
+
+    return geom;
+}
+
+osg::Uniform*
+AnnotationUtils::createFadeUniform()
+{
+    osg::Uniform* u = new osg::Uniform(osg::Uniform::FLOAT, UNIFORM_FADE());
+    u->set( 1.0f );
+    return u;
+}
+
+osg::Uniform*
+AnnotationUtils::createHighlightUniform()
+{
+    osg::Uniform* u = new osg::Uniform(osg::Uniform::BOOL, UNIFORM_HIGHLIGHT());
+    u->set( false );
+    return u;
+}
+
+void
+AnnotationUtils::installAnnotationProgram( osg::StateSet* stateSet )
+{
+    static Threading::Mutex           s_mutex;
+    //static osg::ref_ptr<osg::Program> s_program;
+    static osg::ref_ptr<VirtualProgram> s_program;
+    static osg::ref_ptr<osg::Uniform>   s_samplerUniform;
+    static osg::ref_ptr<osg::Uniform>   s_defaultFadeUniform;
+    static osg::ref_ptr<osg::Uniform>   s_defaultIsTextUniform;
+
+    if ( !s_program.valid() )
+    {
+        Threading::ScopedMutexLock lock(s_mutex);
+        if ( !s_program.valid() )
+        {
+            std::string vertSource =
+                "#version " GLSL_VERSION_STR "\n"
+                //NOTE: Tom commented this out; I commented it back in b/c that breaks things 
+                //( //not sure why but these arn't merging properly, osg earth color funcs decalre it anyhow for now)
+                "varying vec4 osg_FrontColor; \n"
+                "varying vec4 oeAnno_texCoord; \n"
+                "void oeAnno_vertColoring() \n"
+                "{ \n"
+                "    osg_FrontColor = gl_Color; \n"
+                "    oeAnno_texCoord = gl_MultiTexCoord0; \n"
+                "} \n";
+
+            std::string fragSource = Stringify() <<
+                "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+                "precision mediump float;\n"
+#endif
+                "uniform float " << UNIFORM_FADE()      << "; \n"
+                "uniform bool  " << UNIFORM_IS_TEXT()   << "; \n"
+                //"uniform bool  " << UNIFORM_HIGHLIGHT() << "; \n"
+                "uniform sampler2D oeAnno_tex0; \n"
+                "varying vec4 osg_FrontColor; \n"
+                "varying vec4 oeAnno_texCoord; \n"
+                "void oeAnno_fragColoring( inout vec4 color ) \n"
+                "{ \n"
+                "    if (" << UNIFORM_IS_TEXT() << ") \n"
+                "    { \n"
+                "        float alpha = texture2D(oeAnno_tex0, oeAnno_texCoord.st).a; \n"
+                "        color = vec4(osg_FrontColor.rgb, osg_FrontColor.a * alpha * " << UNIFORM_FADE() << "); \n"
+                "    } \n"
+                "    else \n"
+                "    { \n"
+                "        color = osg_FrontColor * texture2D(oeAnno_tex0, oeAnno_texCoord.st) * vec4(1,1,1," << UNIFORM_FADE() << "); \n"
+                "    } \n"
+                //"    if (" << UNIFORM_HIGHLIGHT() << ") \n"
+                //"    { \n"
+                //"        color = vec4(color.r*1.5, color.g*0.5, color.b*0.25, color.a); \n"
+                //"    } \n"
+                "} \n";
+
+            s_program = new VirtualProgram();
+            s_program->setName( PROGRAM_NAME() );
+            s_program->setUseLightingShaders( false );
+            s_program->installDefaultColoringShaders();
+            s_program->setFunction( "oeAnno_vertColoring", vertSource, ShaderComp::LOCATION_VERTEX_PRE_LIGHTING );
+            s_program->setFunction( "oeAnno_fragColoring", fragSource, ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
+
+            s_samplerUniform = new osg::Uniform(osg::Uniform::SAMPLER_2D, "oeAnno_tex0");
+            s_samplerUniform->set( 0 );
+
+            s_defaultFadeUniform = createFadeUniform();
+
+            s_defaultIsTextUniform = new osg::Uniform(osg::Uniform::BOOL, "oeAnno_isText");
+            s_defaultIsTextUniform->set( false );
+
+#if 0
+            std::string vert_source = // Stringify() <<
+                "#version 110 \n"
+                "void main() { \n"
+                "    osg_FrontColor = gl_Color; \n"
+                "    osg_TexCoord[0] = gl_MultiTexCoord0; \n"
+                "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
+                "} \n";
+
+            std::string frag_source = Stringify() <<
+#ifdef OSG_GLES2_AVAILABLE
+                "precision mediump float;\n"
+#endif
+                "uniform float     " << UNIFORM_FADE()      << "; \n"
+                "uniform bool      " << UNIFORM_IS_TEXT()   << "; \n"
+                "uniform bool      " << UNIFORM_HIGHLIGHT() << "; \n"
+                "uniform sampler2D tex0; \n"
+                "varying vec4 osg_TexCoord[" << Registry::instance()->getCapabilities().getMaxGPUTextureCoordSets() << "];\n"
+                "varying vec4 osg_FrontColor; \n"
+                "void main() { \n"
+                "    vec4 color; \n"
+                "    if (" << UNIFORM_IS_TEXT() << ") { \n"
+                "        float alpha = texture2D(tex0,osg_TexCoord[0].st).a; \n"
+                "        color = vec4( osg_FrontColor.rgb, osg_FrontColor.a * alpha * " << UNIFORM_FADE() << "); \n"
+                "    } \n"
+                "    else { \n"
+                "        color = osg_FrontColor * texture2D(tex0,osg_TexCoord[0].st) * vec4(1,1,1," << UNIFORM_FADE() << "); \n"
+                "    } \n"
+                "    if (" << UNIFORM_HIGHLIGHT() << ") { \n"
+                "        color = vec4(color.r*1.5, color.g*0.5, color.b*0.25, color.a); \n"
+                "    } \n"
+                "    gl_FragColor = color; \n"
+                "} \n";
+
+            s_program = new osg::Program();
+            s_program->setName( PROGRAM_NAME() );
+            s_program->addShader( new osg::Shader(osg::Shader::VERTEX,   vert_source) );
+            s_program->addShader( new osg::Shader(osg::Shader::FRAGMENT, frag_source) );
+#endif
+        }
+    }
+
+    stateSet->setAttributeAndModes( s_program.get() );
+    stateSet->addUniform( s_samplerUniform.get() );
+    stateSet->addUniform( s_defaultFadeUniform.get() );
+    stateSet->addUniform( s_defaultIsTextUniform.get() );
+}
+
+//-------------------------------------------------------------------------
+
+// This is identical to osg::AutoTransform::accept, except that we (a) removed
+// code that's not used by OrthoNode, and (b) took out the call to
+// Transform::accept since we don't want to traverse the child graph from
+// this call.
+void
+AnnotationUtils::OrthoNodeAutoTransform::acceptCullNoTraverse( osg::CullStack* cs )
+{
+    osg::Viewport::value_type width = _previousWidth;
+    osg::Viewport::value_type height = _previousHeight;
+
+    osg::Viewport* viewport = cs->getViewport();
+    if (viewport)
+    {
+        width = viewport->width();
+        height = viewport->height();
+    }
+
+    osg::Vec3d eyePoint = cs->getEyeLocal(); 
+    osg::Vec3d localUp = cs->getUpLocal(); 
+    osg::Vec3d position = getPosition();
+
+    const osg::Matrix& projection = *(cs->getProjectionMatrix());
+
+    bool doUpdate = _firstTimeToInitEyePoint;
+    if (!_firstTimeToInitEyePoint)
+    {
+        osg::Vec3d dv = _previousEyePoint-eyePoint;
+        if (dv.length2()>getAutoUpdateEyeMovementTolerance()*(eyePoint-getPosition()).length2())
+        {
+            doUpdate = true;
+        }
+        osg::Vec3d dupv = _previousLocalUp-localUp;
+        // rotating the camera only affects ROTATE_TO_*
+        if (_autoRotateMode &&
+            dupv.length2()>getAutoUpdateEyeMovementTolerance())
+        {
+            doUpdate = true;
+        }
+        else if (width!=_previousWidth || height!=_previousHeight)
+        {
+            doUpdate = true;
+        }
+        else if (projection != _previousProjection) 
+        {
+            doUpdate = true;
+        }                
+        else if (position != _previousPosition) 
+        { 
+            doUpdate = true; 
+        } 
+    }
+    _firstTimeToInitEyePoint = false;
+
+    if (doUpdate)
+    {            
+        if (getAutoScaleToScreen())
+        {
+            double size = 1.0/cs->pixelSize(getPosition(),0.48f);
+
+            if (_autoScaleTransitionWidthRatio>0.0)
+            {
+                if (_minimumScale>0.0)
+                {
+                    double j = _minimumScale;
+                    double i = (_maximumScale<DBL_MAX) ? 
+                        _minimumScale+(_maximumScale-_minimumScale)*_autoScaleTransitionWidthRatio :
+                    _minimumScale*(1.0+_autoScaleTransitionWidthRatio);
+                    double c = 1.0/(4.0*(i-j));
+                    double b = 1.0 - 2.0*c*i;
+                    double a = j + b*b / (4.0*c);
+                    double k = -b / (2.0*c);
+
+                    if (size<k) size = _minimumScale;
+                    else if (size<i) size = a + b*size + c*(size*size);
+                }
+
+                if (_maximumScale<DBL_MAX)
+                {
+                    double n = _maximumScale;
+                    double m = (_minimumScale>0.0) ?
+                        _maximumScale+(_minimumScale-_maximumScale)*_autoScaleTransitionWidthRatio :
+                    _maximumScale*(1.0-_autoScaleTransitionWidthRatio);
+                    double c = 1.0 / (4.0*(m-n));
+                    double b = 1.0 - 2.0*c*m;
+                    double a = n + b*b/(4.0*c);
+                    double p = -b / (2.0*c);
+
+                    if (size>p) size = _maximumScale;
+                    else if (size>m) size = a + b*size + c*(size*size);
+                }        
+            }
+
+            setScale(size);
+        }
+
+        if (_autoRotateMode==ROTATE_TO_SCREEN)
+        {
+            osg::Vec3d translation;
+            osg::Quat rotation;
+            osg::Vec3d scale;
+            osg::Quat so;
+
+            cs->getModelViewMatrix()->decompose( translation, rotation, scale, so );
+
+            setRotation(rotation.inverse());
+        }
+        // GW: removed other unused auto-rotate modes
+
+        _previousEyePoint = eyePoint;
+        _previousLocalUp = localUp;
+        _previousWidth = width;
+        _previousHeight = height;
+        _previousProjection = projection;
+        _previousPosition = position;
+
+        _matrixDirty = true;
+    }
+
+    // GW: the stock AutoTransform calls Transform::accept here; we do NOT
+}
+
+osg::Node* 
+AnnotationUtils::createSphere( float r, const osg::Vec4& color, float maxAngle )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(6);
+    v->push_back( osg::Vec3(0,0,r) ); // top
+    v->push_back( osg::Vec3(0,0,-r) ); // bottom
+    v->push_back( osg::Vec3(-r,0,0) ); // left
+    v->push_back( osg::Vec3(r,0,0) ); // right
+    v->push_back( osg::Vec3(0,r,0) ); // back
+    v->push_back( osg::Vec3(0,-r,0) ); // front
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+       v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_TRIANGLES);
+    b->reserve(24);
+    b->push_back(0); b->push_back(3); b->push_back(4);
+    b->push_back(0); b->push_back(4); b->push_back(2);
+    b->push_back(0); b->push_back(2); b->push_back(5);
+    b->push_back(0); b->push_back(5); b->push_back(3);
+    b->push_back(1); b->push_back(3); b->push_back(5);
+    b->push_back(1); b->push_back(4); b->push_back(3);
+    b->push_back(1); b->push_back(2); b->push_back(4);
+    b->push_back(1); b->push_back(5); b->push_back(2);
+    geom->addPrimitiveSet( b );
+
+    osg::Vec3Array* n = new osg::Vec3Array();
+    n->reserve(6);
+    n->push_back( osg::Vec3( 0, 0, 1) );
+    n->push_back( osg::Vec3( 0, 0,-1) );
+    n->push_back( osg::Vec3(-1, 0, 0) );
+    n->push_back( osg::Vec3( 1, 0, 0) );
+    n->push_back( osg::Vec3( 0, 1, 0) );
+    n->push_back( osg::Vec3( 0,-1, 0) );
+    geom->setNormalArray(n);
+    geom->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+    MeshSubdivider ms;
+    ms.run( *geom, osg::DegreesToRadians(maxAngle), GEOINTERP_GREAT_CIRCLE );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geom );
+
+    return geode;
+}
+
+osg::Node* 
+AnnotationUtils::createHemisphere( float r, const osg::Vec4& color, float maxAngle )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(5);
+    v->push_back( osg::Vec3(0,0,r) ); // top
+    v->push_back( osg::Vec3(-r,0,0) ); // left
+    v->push_back( osg::Vec3(r,0,0) ); // right
+    v->push_back( osg::Vec3(0,r,0) ); // back
+    v->push_back( osg::Vec3(0,-r,0) ); // front
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+       v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_TRIANGLES);
+    b->reserve(24);
+    b->push_back(0); b->push_back(2); b->push_back(3);
+    b->push_back(0); b->push_back(3); b->push_back(1);
+    b->push_back(0); b->push_back(1); b->push_back(4);
+    b->push_back(0); b->push_back(4); b->push_back(2);
+    geom->addPrimitiveSet( b );
+
+    osg::Vec3Array* n = new osg::Vec3Array();
+    n->reserve(5);
+    n->push_back( osg::Vec3(0,0,1) );
+    n->push_back( osg::Vec3(-1,0,0) );
+    n->push_back( osg::Vec3(1,0,0) );
+    n->push_back( osg::Vec3(0,1,0) );
+    n->push_back( osg::Vec3(0,-1,0) );
+    geom->setNormalArray(n);
+    geom->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+    MeshSubdivider ms;
+    ms.run( *geom, osg::DegreesToRadians(maxAngle), GEOINTERP_GREAT_CIRCLE );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geom );
+
+    // need 2-pass alpha so you can view it properly from below.
+    return installTwoPassAlpha( geode );
+}
+
+osg::Node* 
+AnnotationUtils::createEllipsoid( float xr, float yr, float zr, const osg::Vec4& color, float maxAngle )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(6);
+    v->push_back( osg::Vec3(0,0, zr) ); // top
+    v->push_back( osg::Vec3(0,0,-zr) ); // bottom
+    v->push_back( osg::Vec3(-xr,0,0) ); // left
+    v->push_back( osg::Vec3( xr,0,0) ); // right
+    v->push_back( osg::Vec3(0, yr,0) ); // back
+    v->push_back( osg::Vec3(0,-yr,0) ); // front
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+        v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_TRIANGLES);
+    b->reserve(24);
+    b->push_back(0); b->push_back(3); b->push_back(4);
+    b->push_back(0); b->push_back(4); b->push_back(2);
+    b->push_back(0); b->push_back(2); b->push_back(5);
+    b->push_back(0); b->push_back(5); b->push_back(3);
+    b->push_back(1); b->push_back(3); b->push_back(5);
+    b->push_back(1); b->push_back(4); b->push_back(3);
+    b->push_back(1); b->push_back(2); b->push_back(4);
+    b->push_back(1); b->push_back(5); b->push_back(2);
+    geom->addPrimitiveSet( b );
+
+    MeshSubdivider ms;
+    ms.run( *geom, osg::DegreesToRadians(15.0f), GEOINTERP_GREAT_CIRCLE );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geom );
+
+    return geode;
+}
+
+osg::Node* 
+AnnotationUtils::createFullScreenQuad( const osg::Vec4& color )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(4);
+    v->push_back( osg::Vec3(0,0,0) );
+    v->push_back( osg::Vec3(1,0,0) );
+    v->push_back( osg::Vec3(1,1,0) );
+    v->push_back( osg::Vec3(0,1,0) );
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+        v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_TRIANGLES);
+    b->reserve(6);
+    b->push_back(0); b->push_back(1); b->push_back(2);
+    b->push_back(2); b->push_back(3); b->push_back(0);
+    geom->addPrimitiveSet( b );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geom );
+
+    osg::StateSet* s = geom->getOrCreateStateSet();
+    s->setMode(GL_LIGHTING,0);
+    s->setMode(GL_BLEND,1);
+    s->setMode(GL_DEPTH_TEST,0);
+    s->setMode(GL_CULL_FACE,0);
+    s->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), 1 );
+
+    osg::MatrixTransform* xform = new osg::MatrixTransform( osg::Matrix::identity() );
+    xform->setReferenceFrame( osg::Transform::ABSOLUTE_RF );
+    xform->addChild( geode );
+
+    osg::Projection* proj = new osg::Projection( osg::Matrix::ortho(0,1,0,1,0,-1) );
+    proj->addChild( xform );
+
+    return proj;
+}
+
+osg::Drawable*
+AnnotationUtils::create2DQuad( const osg::BoundingBox& box, float padding, const osg::Vec4& color )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(4);
+    v->push_back( osg::Vec3(box.xMin()-padding, box.yMin()-padding, 0) );
+    v->push_back( osg::Vec3(box.xMax()+padding, box.yMin()-padding, 0) );
+    v->push_back( osg::Vec3(box.xMax()+padding, box.yMax()+padding, 0) );
+    v->push_back( osg::Vec3(box.xMin()-padding, box.yMax()+padding, 0) );
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+        v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_TRIANGLES);
+    b->reserve(6);
+    b->push_back(0); b->push_back(1); b->push_back(2);
+    b->push_back(2); b->push_back(3); b->push_back(0);
+    geom->addPrimitiveSet( b );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    // add the static "isText=true" uniform; this is a hint for the annotation shaders
+    // if they get installed.
+    static osg::ref_ptr<osg::Uniform> s_isTextUniform = new osg::Uniform(osg::Uniform::BOOL, UNIFORM_IS_TEXT());
+    s_isTextUniform->set( false );
+    geom->getOrCreateStateSet()->addUniform( s_isTextUniform.get() );
+
+    return geom;
+}
+
+osg::Drawable*
+AnnotationUtils::create2DOutline( const osg::BoundingBox& box, float padding, const osg::Vec4& color )
+{
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* v = new osg::Vec3Array();
+    v->reserve(4);
+    v->push_back( osg::Vec3(box.xMin()-padding, box.yMin()-padding, 0) );
+    v->push_back( osg::Vec3(box.xMax()+padding, box.yMin()-padding, 0) );
+    v->push_back( osg::Vec3(box.xMax()+padding, box.yMax()+padding, 0) );
+    v->push_back( osg::Vec3(box.xMin()-padding, box.yMax()+padding, 0) );
+    geom->setVertexArray(v);
+    if ( v->getVertexBufferObject() )
+        v->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+    osg::DrawElementsUByte* b = new osg::DrawElementsUByte(GL_LINE_LOOP);
+    b->reserve(4);
+    b->push_back(0); b->push_back(1); b->push_back(2); b->push_back(3);
+    geom->addPrimitiveSet( b );
+
+    osg::Vec4Array* c = new osg::Vec4Array(1);
+    (*c)[0] = color;
+    geom->setColorArray( c );
+    geom->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+    static osg::ref_ptr<osg::Uniform> s_isNotTextUniform = new osg::Uniform(osg::Uniform::BOOL, UNIFORM_IS_TEXT());
+    s_isNotTextUniform->set( false );
+    geom->getOrCreateStateSet()->addUniform( s_isNotTextUniform.get() );
+
+    return geom;
+}
+
+
+osg::Node*
+AnnotationUtils::installTwoPassAlpha(osg::Node* node)
+{
+  // first, get the whole thing under a depth-sorted bin:
+  osg::Group* g1 = new osg::Group();
+  g1->getOrCreateStateSet()->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
+  g1->getOrCreateStateSet()->setAttributeAndModes( new osg::BlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA), 1);
+
+  // for semi-transpareny items, we want the lighting to "shine through"
+  osg::LightModel* lm = new osg::LightModel();
+  lm->setTwoSided( true );
+  g1->getOrCreateStateSet()->setAttributeAndModes( lm );
+
+  // next start a traversal order bin so we draw in the proper order:
+  osg::Group* g2 = new osg::Group();
+  g2->getOrCreateStateSet()->setRenderBinDetails(0, "TraversalOrderBin");
+  g1->addChild( g2 );
+
+  // next, create a group for the first pass (backfaces only):
+  osg::Group* backPass = new osg::Group();
+  backPass->getOrCreateStateSet()->setAttributeAndModes( new osg::CullFace(osg::CullFace::FRONT), 1 );
+  backPass->getOrCreateStateSet()->setAttributeAndModes( new osg::Depth(osg::Depth::LEQUAL,0,1,false), 1);
+  g2->addChild( backPass );
+
+  // and a group for the front-face pass:
+  osg::Group* frontPass = new osg::Group();
+  frontPass->getOrCreateStateSet()->setAttributeAndModes( new osg::CullFace(osg::CullFace::BACK), 1 );
+  g2->addChild( frontPass );
+
+  // finally, attach the geometry to both passes.
+  backPass->addChild( node );
+  frontPass->addChild( node );
+
+  return g1;
+}
+
+
+bool 
+AnnotationUtils::styleRequiresAlphaBlending( const Style& style )
+{
+    if (style.has<PolygonSymbol>() &&
+        style.get<PolygonSymbol>()->fill().isSet() &&
+        style.get<PolygonSymbol>()->fill()->color().a() < 1.0)
+    {
+        return true;
+    }
+
+    if (style.has<LineSymbol>() &&
+        style.get<LineSymbol>()->stroke().isSet() &&
+        style.get<LineSymbol>()->stroke()->color().a() < 1.0 )
+    {
+        return true;
+    }
+
+    if (style.has<PointSymbol>() &&
+        style.get<PointSymbol>()->fill().isSet() &&
+        style.get<PointSymbol>()->fill()->color().a() < 1.0 )
+    {
+        return true;
+    }
+
+    return false;
+}
diff --git a/src/osgEarthAnnotation/CMakeLists.txt b/src/osgEarthAnnotation/CMakeLists.txt
new file mode 100644
index 0000000..b6a5a14
--- /dev/null
+++ b/src/osgEarthAnnotation/CMakeLists.txt
@@ -0,0 +1,105 @@
+IF   (DYNAMIC_OSGEARTH)
+    ADD_DEFINITIONS(-DOSGEARTHANNO_LIBRARY)
+ELSE (DYNAMIC_OSGEARTH)
+    ADD_DEFINITIONS(-DOSGEARTHANNO_LIBRARY_STATIC)
+ENDIF(DYNAMIC_OSGEARTH)
+
+set(LIB_NAME osgEarthAnnotation)
+
+set(HEADER_PATH ${OSGEARTH_SOURCE_DIR}/include/${LIB_NAME})
+
+set(LIB_PUBLIC_HEADERS  
+    AnnotationSettings
+    AnnotationEditing
+    AnnotationData
+    AnnotationNode
+    AnnotationRegistry
+    AnnotationUtils
+    CircleNode
+    Common
+    Decluttering
+    Decoration
+    EllipseNode
+    Export
+    FeatureNode
+    LocalGeometryNode
+    HighlightDecoration
+    ImageOverlay
+    ImageOverlayEditor
+    LabelNode
+    LocalizedNode
+    ModelNode
+    OrthoNode
+    PlaceNode
+	RectangleNode
+    ScaleDecoration
+    TrackNode
+)
+
+set(LIB_COMMON_FILES
+    AnnotationEditing.cpp
+    AnnotationSettings.cpp
+    AnnotationData.cpp
+    AnnotationNode.cpp
+    AnnotationRegistry.cpp
+    AnnotationUtils.cpp
+    CircleNode.cpp
+    Decluttering.cpp
+    Decoration.cpp
+    EllipseNode.cpp
+    FeatureNode.cpp
+    LocalGeometryNode.cpp
+    HighlightDecoration.cpp
+    ImageOverlay.cpp
+    ImageOverlayEditor.cpp
+    LabelNode.cpp
+    LocalizedNode.cpp
+	RectangleNode.cpp
+	ModelNode.cpp
+    OrthoNode.cpp
+    PlaceNode.cpp
+    TrackNode.cpp
+)
+
+if( NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "2.9.6" )
+
+    set(LIB_PUBLIC_HEADERS ${LIB_PUBLIC_HEADERS}
+	    AnnotationEditing
+	    FeatureEditing
+	    ImageOverlayEditor
+    )
+    	
+    set(LIB_COMMON_FILES ${LIB_COMMON_FILES} 
+	    AnnotationEditing.cpp
+	    FeatureEditing.cpp
+        ImageOverlayEditor.cpp
+    )
+        
+endif()
+
+
+ADD_LIBRARY( ${LIB_NAME} ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
+    ${LIB_PUBLIC_HEADERS}  
+	${LIB_COMMON_FILES}
+)
+
+
+
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIR} ${OSGEARTH_SOURCE_DIR} ${GDAL_INCLUDE_DIR})
+
+IF (WIN32)
+  LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+ELSE(WIN32)
+  LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+ENDIF(WIN32)
+
+LINK_INTERNAL(${LIB_NAME}
+    osgEarth
+    osgEarthFeatures
+    osgEarthSymbology
+)
+
+LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGMANIPULATOR_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OPENTHREADS_LIBRARY GDAL_LIBRARY)
+LINK_CORELIB_DEFAULT(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+
+INCLUDE(ModuleInstall OPTIONAL)
diff --git a/src/osgEarthAnnotation/CircleNode b/src/osgEarthAnnotation/CircleNode
new file mode 100644
index 0000000..733cf20
--- /dev/null
+++ b/src/osgEarthAnnotation/CircleNode
@@ -0,0 +1,120 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ANNOTATION_CIRCLE_NODE_H
+#define OSGEARTH_ANNOTATION_CIRCLE_NODE_H 1
+
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthSymbology/Style>
+#include <osgEarth/MapNode>
+#include <osgEarth/Units>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Circle annotation.
+     */
+    class OSGEARTHANNO_EXPORT CircleNode : public LocalizedNode
+    {
+    public:
+        META_AnnotationNode( osgEarthAnnotation, CircleNode );
+
+        /**
+         * Constructs a new circle annotation.
+         *
+         * @param mapNode     Map on which the circle will appear
+         * @param position    Location of the annotation, in map coordinates
+         * @param radius      Circle radius
+         * @param style       Style defining how the annotation will look
+         * @param draped      Whether to "drape" the annotation down on to the terrain
+         * @param numSegments Hint as to the tessellation of the annotation
+         */
+        CircleNode(
+            MapNode*          mapNode,
+            const GeoPoint&   position,
+            const Linear&     radius,
+            const Style&      style,
+            bool              draped      =true,
+            unsigned          numSegments =0 );
+
+        /**
+         * Constructs a circle node from its serialized form
+         */
+        CircleNode(
+            MapNode*              mapNode,
+            const Config&         conf,
+            const osgDB::Options* dbOptions);
+
+
+        virtual ~CircleNode() { }
+
+
+        /**
+         * Gets the radius
+         */
+        const Linear& getRadius() const;
+
+        /*
+         * Sets the radius of the circle
+         */
+        void setRadius(const Linear& radius);
+
+        /**
+         * Gets the number of segments of this circle
+         */
+        unsigned int getNumSegments() const;
+
+        /**
+         * Sets the number of segments of this circle
+         */
+        void setNumSegments(unsigned int numSegments );
+
+        /**
+         * Gets the style of this circle
+         */
+        const Style& getStyle() const;
+
+        /**
+         * Sets the style of this circle
+         */
+        void setStyle( const Style& style );
+
+    public: // AnnotationNode overrides
+
+        virtual Config getConfig() const;
+
+
+    private:
+        CircleNode() { }
+        CircleNode(const CircleNode& rhs, const osg::CopyOp& op) { }
+
+        void rebuild();
+
+        Style           _style;
+        bool            _draped;
+        unsigned        _numSegments;
+        Linear          _radius;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNOTATION_CIRCLE_NODE_H
diff --git a/src/osgEarthAnnotation/CircleNode.cpp b/src/osgEarthAnnotation/CircleNode.cpp
new file mode 100644
index 0000000..e3b77ba
--- /dev/null
+++ b/src/osgEarthAnnotation/CircleNode.cpp
@@ -0,0 +1,173 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthSymbology/GeometryFactory>
+#include <osgEarthSymbology/ExtrusionSymbol>
+#include <osgEarth/MapNode>
+#include <osgEarth/DrapeableNode>
+#include <osg/MatrixTransform>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+CircleNode::CircleNode(MapNode*           mapNode,
+                       const GeoPoint&    position,
+                       const Linear&      radius,
+                       const Style&       style,
+                       bool               draped,
+                       unsigned           numSegments) :
+
+LocalizedNode( mapNode, position, false ),
+_radius      ( radius ),
+_style       ( style ),
+_draped      ( draped ),
+_numSegments ( numSegments )
+{
+    rebuild();
+}
+
+
+const Linear&
+CircleNode::getRadius() const
+{
+    return _radius;
+}
+
+void
+CircleNode::setRadius( const Linear& radius )
+{
+    if (_radius != radius )
+    {
+        _radius = radius;
+        rebuild();
+    }
+}
+
+unsigned int
+CircleNode::getNumSegments() const
+{
+    return _numSegments;
+}
+
+void
+CircleNode::setNumSegments(unsigned int numSegments )
+{
+    if (_numSegments != numSegments )
+    {
+        _numSegments = numSegments;
+        rebuild();
+    }
+}
+
+const Style&
+CircleNode::getStyle() const
+{
+    return _style;
+}
+
+void
+CircleNode::setStyle( const Style& style )
+{
+    _style = style;
+    rebuild();
+}
+
+void
+CircleNode::rebuild()
+{
+    std::string currentDecoration = getDecoration();
+    clearDecoration();
+
+    //Remove all children from this node
+    //removeChildren( 0, getNumChildren() );
+    if ( getRoot()->getNumParents() == 0 )
+    {
+        this->addChild( getRoot() );
+    }
+
+    //Remove all children from the attach point
+    getChildAttachPoint()->removeChildren( 0, getChildAttachPoint()->getNumChildren() );
+
+    // construct a local-origin circle.
+    GeometryFactory factory;
+    Geometry* geom = factory.createCircle(osg::Vec3d(0,0,0), _radius, _numSegments);
+    if ( geom )
+    {
+        GeometryCompiler compiler;
+        osg::ref_ptr<Feature> feature = new Feature(geom, 0L); //todo: consider the SRS
+        osg::Node* node = compiler.compile( feature.get(), _style, FilterContext(0L) );
+        if ( node )
+        {           
+            getChildAttachPoint()->addChild( node );
+            getDrapeable()->setDraped( _draped );
+        }
+
+        applyStyle( _style );
+    }
+
+    setDecoration( currentDecoration );
+}
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( circle, osgEarth::Annotation::CircleNode );
+
+
+CircleNode::CircleNode(MapNode*              mapNode,
+                       const Config&         conf,
+                       const osgDB::Options* dbOptions) :
+LocalizedNode( mapNode ),
+_radius      ( 1.0, Units::KILOMETERS ),
+_draped      ( false ),
+_numSegments ( 0 )
+{
+    conf.getObjIfSet( "radius", _radius );
+    conf.getObjIfSet( "style",  _style );
+    conf.getIfSet   ( "draped", _draped );
+    conf.getIfSet   ( "num_segments", _numSegments );
+
+    if ( conf.hasChild("position") )
+        setPosition( GeoPoint(conf.child("position")) );
+
+    rebuild();
+}
+
+Config
+CircleNode::getConfig() const
+{
+    Config conf( "circle" );
+    conf.addObj( "radius", _radius );
+    conf.addObj( "style",  _style );
+
+    if ( _numSegments != 0 )
+        conf.add( "num_segments", _numSegments );
+    if ( _draped != false )
+        conf.add( "draped", _draped );
+
+    conf.addObj( "position", getPosition() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/Common b/src/osgEarthAnnotation/Common
new file mode 100644
index 0000000..de7e079
--- /dev/null
+++ b/src/osgEarthAnnotation/Common
@@ -0,0 +1,31 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_ANNOTATION_COMMON_H
+#define OSGEARTH_ANNOTATION_COMMON_H 1
+
+#include <osgEarth/Common>
+#include <osgEarthAnnotation/Export>
+
+// common utilities
+namespace osgEarth { namespace Annotation {
+    
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNOTATION_COMMON_H
diff --git a/src/osgEarthAnnotation/Decluttering b/src/osgEarthAnnotation/Decluttering
new file mode 100644
index 0000000..54f746e
--- /dev/null
+++ b/src/osgEarthAnnotation/Decluttering
@@ -0,0 +1,156 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_DECLUTTER_RENDER_BIN_H
+#define OSGEARTH_ANNOTATION_DECLUTTER_RENDER_BIN_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarth/Config>
+#include <osg/Drawable>
+#include <osgUtil/RenderLeaf>
+#include <limits.h>
+
+/**
+ * To apply the "decluttering" algorithm to a subgraph, call
+ *
+ * Decluttering::setEnabled( node->getOrCreateStateSet(), true );
+ */
+
+#define OSGEARTH_DECLUTTER_BIN "declutter"
+
+namespace osgEarth { namespace Annotation 
+{
+    /**
+     * Marker class hinting that an implementation supports the decluttering
+     * render bin.
+     */
+    class SupportsDecluttering
+    {
+        //nop
+    };
+
+    /**
+     * Custom functor that compares two RenderLeaf's and returns TRUE if the left-hand one
+     * is higher priority, otherwise FALSE. You can call setDeclutterPriorityFunctor()
+     * to set a custom priority-sorting functor.
+     */
+    struct DeclutterSortFunctor : public osg::Referenced
+    {
+        virtual bool operator() ( const osgUtil::RenderLeaf* lhs, const osgUtil::RenderLeaf* rhs ) const =0;
+        virtual ~DeclutterSortFunctor() { }
+    };
+
+    /**
+     * A decluttering functor that sorts by the priority field in AnnotationData.
+     * AnnotationData should be attached to each Drawable's user data.
+     */
+    struct OSGEARTHANNO_EXPORT DeclutterByPriority : public DeclutterSortFunctor
+    {
+        virtual bool operator()(const osgUtil::RenderLeaf* lhs, const osgUtil::RenderLeaf* rhs ) const;
+        virtual ~DeclutterByPriority() { }
+    };
+
+    /**
+     * Options to control the annotation decluttering engine.
+     */
+    class OSGEARTHANNO_EXPORT DeclutteringOptions
+    {
+    public:
+        DeclutteringOptions( const Config& conf =Config() )
+            : _minAnimAlpha         ( 0.35f ),
+              _minAnimScale         ( 0.45f ),
+              _inAnimTime           ( 0.40f ),
+              _outAnimTime          ( 0.00f ),
+              _sortByPriority       ( false )
+        {
+            fromConfig(conf);
+        }
+
+        virtual ~DeclutteringOptions() { }
+
+        /** Alpha value of a fully-occluded object */
+        optional<float>& minAnimationAlpha() { return _minAnimAlpha; }
+        const optional<float>& minAnimationAlpha() const { return _minAnimAlpha; }
+
+        /** Scale factor of a fully-occluded object */
+        optional<float>& minAnimationScale() { return _minAnimScale; }
+        const optional<float>& minAnimationScale() const { return _minAnimScale; }
+
+        /** Time (in seconds) for an object to transition from occluded to visible */
+        optional<float>& inAnimationTime() { return _inAnimTime; }
+        const optional<float>& inAnimationTime() const { return _inAnimTime; }
+
+        /** Time (in seconds) for an object to transition from visible to occluded */
+        optional<float>& outAnimationTime() { return _outAnimTime; }
+        const optional<float>& outAnimationTime() const { return _outAnimTime; }
+
+        /** If set, activate the AnnotationData priority-based sorting */
+        optional<bool>& sortByPriority() { return _sortByPriority; }
+        const optional<bool>& sortByPriority() const { return _sortByPriority; }
+
+    public:
+
+        Config getConfig() const;
+
+    protected:
+        optional<float> _minAnimAlpha;
+        optional<float> _minAnimScale;
+        optional<float> _inAnimTime;
+        optional<float> _outAnimTime;
+        optional<bool>  _sortByPriority;
+
+        void fromConfig( const Config& conf );
+    };
+
+    struct OSGEARTHANNO_EXPORT Decluttering
+    {
+        /**
+         * Enables or disables decluttering on a stateset.
+         */
+        static void setEnabled( osg::StateSet* stateSet, bool enabled, int binNum =INT_MAX );
+
+        /**
+         * Enables or disables decluttering globally.
+         */
+        static void setEnabled( bool enabled );
+
+        /**
+         * Sets a functor to use to determine render leaf priority for declutter sorting.
+         */
+        static void setSortFunctor( DeclutterSortFunctor* f );
+
+        /**
+         * Clears a custom priority functor that was set using setDeclutterPriorityFunctor,
+         * reverting to the default behavior (which is to sort by distance from the camera).
+         */
+        static void clearSortFunctor();
+
+        /**
+         * Applies the provided options to the decluttering engine.
+         */
+        static void setOptions( const DeclutteringOptions& options );
+
+        /**
+         * Fetches the current decluttering options
+         */
+        static const DeclutteringOptions& getOptions();
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_DECLUTTER_RENDER_BIN_H
diff --git a/src/osgEarthAnnotation/Decluttering.cpp b/src/osgEarthAnnotation/Decluttering.cpp
new file mode 100644
index 0000000..d8e305e
--- /dev/null
+++ b/src/osgEarthAnnotation/Decluttering.cpp
@@ -0,0 +1,740 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarth/Utils>
+#include <osgEarth/ThreadingUtils>
+#include <osgUtil/RenderBin>
+#include <osgUtil/StateGraph>
+#include <osgText/Text>
+#include <osg/UserDataContainer>
+#include <set>
+#include <algorithm>
+
+#define LC "[Declutter] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+//----------------------------------------------------------------------------
+
+namespace
+{
+    // Sort wrapper to satisfy the template processor.
+    struct SortContainer
+    {
+        SortContainer( DeclutterSortFunctor& f ) : _f(f) { }
+        const DeclutterSortFunctor& _f;
+        bool operator()( const osgUtil::RenderLeaf* lhs, const osgUtil::RenderLeaf* rhs ) const 
+        {
+            return _f(lhs, rhs);
+        }
+    };
+
+    // Custom sorting functor that sorts drawables front-to-back, and when drawables share the
+    // same parent Geode, sorts them in traversal order.
+    struct SortFrontToBackPreservingGeodeTraversalOrder
+    {
+        bool operator()( const osgUtil::RenderLeaf* lhs, const osgUtil::RenderLeaf* rhs ) const
+        {
+            const osg::Node* lhsParentNode = lhs->getDrawable()->getParent(0);
+            if ( lhsParentNode == rhs->getDrawable()->getParent(0) )
+            {
+                const osg::Geode* geode = static_cast<const osg::Geode*>(lhsParentNode);
+                return geode->getDrawableIndex(lhs->getDrawable()) > geode->getDrawableIndex(rhs->getDrawable());
+            }
+            else
+            {
+                return ( lhs->_depth < rhs->_depth );
+            }
+        }
+    };
+
+    // Data structure shared across entire decluttering system.
+    struct DeclutterContext : public osg::Referenced
+    {
+        DeclutteringOptions _options;
+    };
+
+    // records information about each drawable.
+    // TODO: a way to clear out this list when drawables go away
+    struct DrawableInfo
+    {
+        DrawableInfo() : _lastAlpha(1.0), _lastScale(1.0) { }
+        float _lastAlpha, _lastScale;
+    };
+
+    typedef std::map<const osg::Drawable*, DrawableInfo> DrawableMemory;
+    
+    typedef std::pair<const osg::Node*, osg::BoundingBox> RenderLeafBox;
+
+    // Data structure stored one-per-View.
+    struct PerViewInfo
+    {
+        PerViewInfo() : _lastTimeStamp(0.0) { }
+
+        // remembers the state of each drawable from the previous pass
+        DrawableMemory _memory;
+        
+        // re-usable structures (to avoid unnecessary re-allocation)
+        osgUtil::RenderBin::RenderLeafList _passed;
+        osgUtil::RenderBin::RenderLeafList _failed;
+        std::vector<RenderLeafBox>         _used;
+
+        // time stamp of the previous pass, for calculating animation speed
+        double _lastTimeStamp;
+    };
+
+    static bool s_enabledGlobally = true;
+}
+
+//----------------------------------------------------------------------------
+
+void
+DeclutteringOptions::fromConfig( const Config& conf )
+{
+    conf.getIfSet( "min_animation_scale", _minAnimScale );
+    conf.getIfSet( "min_animation_alpha", _minAnimAlpha );
+    conf.getIfSet( "in_animation_time",   _inAnimTime );
+    conf.getIfSet( "out_animation_time",  _outAnimTime );
+    conf.getIfSet( "sort_by_priority",    _sortByPriority );
+}
+
+Config
+DeclutteringOptions::getConfig() const
+{
+    Config conf;
+    conf.addIfSet( "min_animation_scale", _minAnimScale );
+    conf.addIfSet( "min_animation_alpha", _minAnimAlpha );
+    conf.addIfSet( "in_animation_time",   _inAnimTime );
+    conf.addIfSet( "out_animation_time",  _outAnimTime );
+    conf.addIfSet( "sort_by_priority",    _sortByPriority );
+    return conf;
+}
+
+//----------------------------------------------------------------------------
+
+/**
+ * A custom RenderLeaf sorting algorithm for decluttering objects.
+ *
+ * First we sort the leaves front-to-back so that objects closer to the camera
+ * get higher priority. If you have installed a custom sorting functor,
+ * this is used instead.
+ *
+ * Next, we go though all the drawables and remove any that try to occupy
+ * already-occupied real estate in the 2D viewport. Objects that fail the test
+ * go on a "failed" list and are either completely removed from the display
+ * or transitioned to a secondary visual state (scaled down, alpha'd down)
+ * dependeing on the options setup.
+ *
+ * Drawables with the same parent (i.e., Geode) are treated as a group. As
+ * soon as one passes the occlusion test, all its siblings will automatically
+ * pass as well.
+ */
+struct /*internal*/ DeclutterSort : public osgUtil::RenderBin::SortCallback
+{
+    DeclutterSortFunctor* _customSortFunctor;
+    DeclutterContext*     _context;
+
+    Threading::PerObjectMap<osg::View*, PerViewInfo> _perView;
+
+    /**
+     * Constructs the new sorter.
+     * @param f Custom declutter sorting predicate. Pass NULL to use the 
+     *          default sorter (sort by distance-to-camera).
+     */
+    DeclutterSort( DeclutterContext* context, DeclutterSortFunctor* f = 0L )
+        : _context(context), _customSortFunctor(f)
+    {
+        //nop
+    }
+
+    // override.
+    // Sorts the bin. This runs in the CULL thread after the CULL traversal has completed.
+    void sortImplementation(osgUtil::RenderBin* bin)
+    {
+        osgUtil::RenderBin::RenderLeafList& leaves = bin->getRenderLeafList();
+
+        // first, sort the leaves:
+        if ( _customSortFunctor && s_enabledGlobally )
+        {
+            // if there's a custom sorting function installed
+            bin->copyLeavesFromStateGraphListToRenderLeafList();
+            std::sort( leaves.begin(), leaves.end(), SortContainer( *_customSortFunctor ) );
+        }
+        else
+        {
+            // default behavior:
+            bin->copyLeavesFromStateGraphListToRenderLeafList();
+            std::sort( leaves.begin(), leaves.end(), SortFrontToBackPreservingGeodeTraversalOrder() );
+            //bin->sortFrontToBack();
+        }
+
+        // nothing to sort? bail out
+        if ( leaves.size() == 0 )
+            return;
+
+        // access the view-specific persistent data:
+        osg::Camera* cam   = bin->getStage()->getCamera();
+        osg::View*   view  = cam->getView();
+        PerViewInfo& local = _perView.get( view );   
+        
+        // calculate the elapsed time since the previous pass; we'll use this for
+        // the animations
+        double now = view ? view->getFrameStamp()->getReferenceTime() : 0.0;
+        float elapsedSeconds = float(now - local._lastTimeStamp);
+        local._lastTimeStamp = now;
+
+        // Reset the local re-usable containers
+        local._passed.clear();          // drawables that pass occlusion test
+        local._failed.clear();          // drawables that fail occlusion test
+        local._used.clear();            // list of occupied bounding boxes in screen space
+
+        // compute a window matrix so we can do window-space culling:
+        const osg::Viewport* vp = cam->getViewport();
+        osg::Matrix windowMatrix = vp->computeWindowMatrix();
+
+        // Track the parent nodes of drawables that are obscured (and culled). Drawables
+        // with the same parent node (typically a Geode) are considered to be grouped and
+        // will be culled as a group.
+        std::set<const osg::Node*> culledParents;
+
+        const DeclutteringOptions& options = _context->_options;
+
+        // Go through each leaf and test for visibility.
+        for( osgUtil::RenderBin::RenderLeafList::iterator i = leaves.begin(); i != leaves.end(); ++i )
+        {
+            bool visible = true;
+
+            osgUtil::RenderLeaf* leaf = *i;
+            const osg::Drawable* drawable = leaf->getDrawable();
+            const osg::Node*     drawableParent = drawable->getParent(0);
+
+            // transform the bounding box of the drawable into window-space.
+            osg::BoundingBox box = drawable->getBound();
+            static osg::Vec4d s_zero_w(0,0,0,1);
+            osg::Vec4d clip = s_zero_w * (*leaf->_modelview.get()) * (*leaf->_projection.get());
+            osg::Vec3d clip_ndc( clip.x()/clip.w(), clip.y()/clip.w(), clip.z()/clip.w() );
+            osg::Vec3f winPos = clip_ndc * windowMatrix;
+            osg::Vec2f offset( -box.xMin(), -box.yMin() );
+            box.set(
+                winPos.x() + box.xMin(),
+                winPos.y() + box.yMin(),
+                winPos.z(),
+                winPos.x() + box.xMax(),
+                winPos.y() + box.yMax(),
+                winPos.z() );
+
+            // if this leaf is already in a culled group, skip it.
+            if ( s_enabledGlobally )
+            {
+                if ( culledParents.find(drawableParent) != culledParents.end() )
+                {
+                    visible = false;
+                }
+                else
+                {
+                    // weed out any drawables that are obscured by closer drawables.
+                    // TODO: think about a more efficient algorithm - right now we are just using
+                    // brute force to compare all bbox's
+                    for( std::vector<RenderLeafBox>::const_iterator j = local._used.begin(); j != local._used.end(); ++j )
+                    {
+                        // only need a 2D test since we're in clip space
+                        bool isClear =
+                            box.xMin() > j->second.xMax() ||
+                            box.xMax() < j->second.xMin() ||
+                            box.yMin() > j->second.yMax() ||
+                            box.yMax() < j->second.yMin();
+
+                        // if there's an overlap (and the conflict isn't from the same drawable
+                        // parent, which is acceptable), then the leaf is culled.
+                        if ( !isClear && drawableParent != j->first )
+                        {
+                            visible = false;
+                            break;
+                        }
+                    }
+                }
+            }
+
+            if ( visible )
+            {
+                // passed the test, so add the leaf's bbox to the "used" list, and add the leaf
+                // to the final draw list.
+                local._used.push_back( std::make_pair(drawableParent, box) );
+                local._passed.push_back( leaf );
+            }
+
+            else
+            {
+                // culled, so put the parent in the parents list so that any future leaves
+                // with the same parent will be trivially rejected
+                culledParents.insert( drawable->getParent(0) );
+                local._failed.push_back( leaf );
+            }
+
+            // modify the leaf's modelview matrix to correctly position it in the 2D ortho
+            // projection when it's drawn later. (Note: we need a new RefMatrix since the
+            // original might be shared ... potential optimization here)
+            // We'll also preserve the scale.
+            osg::Matrix newModelView;
+            newModelView.makeTranslate( box.xMin() + offset.x(), box.yMin() + offset.y(), 0 );
+            newModelView.preMultScale( leaf->_modelview->getScale() );
+            
+            leaf->_modelview = new osg::RefMatrix( newModelView );
+        }
+
+        // copy the final draw list back into the bin, rejecting any leaves whose parents
+        // are in the cull list.
+
+        if ( s_enabledGlobally )
+        {
+            leaves.clear();
+            for( osgUtil::RenderBin::RenderLeafList::const_iterator i=local._passed.begin(); i != local._passed.end(); ++i )
+            {
+                osgUtil::RenderLeaf* leaf     = *i;
+                const osg::Drawable* drawable = leaf->getDrawable();
+
+                if ( culledParents.find( drawable->getParent(0) ) == culledParents.end() )
+                {
+                    DrawableInfo& info = local._memory[drawable];
+
+                    bool fullyIn = true;
+
+                    // scale in until at full scale:
+                    if ( info._lastScale != 1.0f )
+                    {
+                        fullyIn = false;
+                        info._lastScale += elapsedSeconds / std::max(*options.inAnimationTime(), 0.001f);
+                        if ( info._lastScale > 1.0f )
+                            info._lastScale = 1.0f;
+                    }
+
+                    if ( info._lastScale != 1.0f )
+                        leaf->_modelview->preMult( osg::Matrix::scale(info._lastScale,info._lastScale,1) );
+                    
+                    // fade in until at full alpha:
+                    if ( info._lastAlpha != 1.0f )
+                    {
+                        fullyIn = false;
+                        info._lastAlpha += elapsedSeconds / std::max(*options.inAnimationTime(), 0.001f);
+                        if ( info._lastAlpha > 1.0f )
+                            info._lastAlpha = 1.0f;
+                    }
+
+                    leaf->_depth = info._lastAlpha;
+                    leaves.push_back( leaf );                
+                }
+                else
+                {
+                    local._failed.push_back(leaf);
+                }
+            }
+
+            // next, go through the FAILED list and sort them into failure bins so we can draw
+            // them using a different technique if necessary.
+            for( osgUtil::RenderBin::RenderLeafList::const_iterator i=local._failed.begin(); i != local._failed.end(); ++i )
+            {
+                osgUtil::RenderLeaf* leaf =     *i;
+                const osg::Drawable* drawable = leaf->getDrawable();
+
+                DrawableInfo& info = local._memory[drawable];
+
+                bool isText = dynamic_cast<const osgText::Text*>(drawable) != 0L;
+                bool fullyOut = true;
+
+                if ( info._lastScale != *options.minAnimationScale() )
+                {
+                    fullyOut = false;
+                    info._lastScale -= elapsedSeconds / std::max(*options.outAnimationTime(), 0.001f);
+                    if ( info._lastScale < *options.minAnimationScale() )
+                        info._lastScale = *options.minAnimationScale();
+                }
+
+                if ( info._lastAlpha != *options.minAnimationAlpha() )
+                {
+                    fullyOut = false;
+                    info._lastAlpha -= elapsedSeconds / std::max(*options.outAnimationTime(), 0.001f);
+                    if ( info._lastAlpha < *options.minAnimationAlpha() )
+                        info._lastAlpha = *options.minAnimationAlpha();
+                }
+
+                leaf->_depth = info._lastAlpha;
+
+                if ( !isText || !fullyOut )
+                {
+                    if ( info._lastAlpha > 0.01f && info._lastScale >= 0.0f )
+                    {
+                        leaves.push_back( leaf );
+
+                        // scale it:
+                        if ( info._lastScale != 1.0f )
+                            leaf->_modelview->preMult( osg::Matrix::scale(info._lastScale,info._lastScale,1) );
+                    }
+                }
+            }
+        }
+    }
+};
+
+/**
+ * Custom draw routine for our declutter render bin.
+ */
+struct DeclutterDraw : public osgUtil::RenderBin::DrawCallback
+{
+    DeclutterContext*                                    _context;
+    Threading::PerThread< osg::ref_ptr<osg::RefMatrix> > _ortho2D;
+    osg::ref_ptr<osg::Uniform> _fade;
+
+    /**
+     * Constructs the decluttering draw callback.
+     * @param context A shared context among all decluttering objects.
+     */
+    DeclutterDraw( DeclutterContext* context )
+        : _context( context )
+    {
+        // create the fade uniform.
+        _fade = AnnotationUtils::createFadeUniform();
+        _fade->set( 1.0f );
+    }
+
+    /**
+     * Draws a bin. Most of this code is copied from osgUtil::RenderBin::drawImplementation.
+     * The modifications are (a) skipping code to render child bins, (b) setting a bin-global
+     * projection matrix in orthographic space, and (c) calling our custom "renderLeaf()" method 
+     * instead of RenderLeaf::render()
+     */
+    void drawImplementation( osgUtil::RenderBin* bin, osg::RenderInfo& renderInfo, osgUtil::RenderLeaf*& previous )
+    {
+        osg::State& state = *renderInfo.getState();
+
+        unsigned int numToPop = (previous ? osgUtil::StateGraph::numToPop(previous->_parent) : 0);
+        if (numToPop>1) --numToPop;
+        unsigned int insertStateSetPosition = state.getStateSetStackSize() - numToPop;
+
+        if (bin->getStateSet())
+        {
+            state.insertStateSet(insertStateSetPosition, bin->getStateSet());
+        }
+
+        // apply a window-space projection matrix.
+        const osg::Viewport* vp = renderInfo.getCurrentCamera()->getViewport();
+        if ( vp )
+        {
+            //TODO see which is faster
+
+            osg::ref_ptr<osg::RefMatrix>& m = _ortho2D.get();
+            if ( !m.valid() )
+                m = new osg::RefMatrix();
+
+            m->makeOrtho2D( vp->x(), vp->x()+vp->width()-1, vp->y(), vp->y()+vp->height()-1 );
+            state.applyProjectionMatrix( m.get() );
+
+            //osg::ref_ptr<osg::RefMatrix> rm = new osg::RefMatrix( osg::Matrix::ortho2D(
+            //    vp->x(), vp->x()+vp->width()-1,
+            //    vp->y(), vp->y()+vp->height()-1 ) );
+            //state.applyProjectionMatrix( rm.get() );
+        }
+
+        // render the list
+        osgUtil::RenderBin::RenderLeafList& leaves = bin->getRenderLeafList();
+        for(osgUtil::RenderBin::RenderLeafList::reverse_iterator rlitr = leaves.rbegin();
+            rlitr!= leaves.rend();
+            ++rlitr)
+        {
+            osgUtil::RenderLeaf* rl = *rlitr;
+            renderLeaf( rl, renderInfo, previous );
+            previous = rl;
+        }
+
+        if ( bin->getStateSet() )
+        {
+            state.removeStateSet(insertStateSetPosition);
+        }
+    }
+
+    /**
+     * Renders a single leaf. We already applied the projection matrix, so here we only
+     * need to apply a modelview matrix that specifies the ortho offset of the drawable.
+     *
+     * Most of this code is copied from RenderLeaf::draw() -- but I removed all the code
+     * dealing with nested bins, since decluttering does not support them.
+     */
+    void renderLeaf( osgUtil::RenderLeaf* leaf, osg::RenderInfo& renderInfo, osgUtil::RenderLeaf*& previous )
+    {
+        osg::State& state = *renderInfo.getState();
+
+        // don't draw this leaf if the abort rendering flag has been set.
+        if (state.getAbortRendering())
+        {
+            //cout << "early abort"<<endl;
+            return;
+        }
+
+        state.applyModelViewMatrix( leaf->_modelview.get() );
+
+        if (previous)
+        {
+            // apply state if required.
+            osgUtil::StateGraph* prev_rg = previous->_parent;
+            osgUtil::StateGraph* prev_rg_parent = prev_rg->_parent;
+            osgUtil::StateGraph* rg = leaf->_parent;
+            if (prev_rg_parent!=rg->_parent)
+            {
+                osgUtil::StateGraph::moveStateGraph(state,prev_rg_parent,rg->_parent);
+
+                // send state changes and matrix changes to OpenGL.
+                state.apply(rg->getStateSet());
+
+            }
+            else if (rg!=prev_rg)
+            {
+                // send state changes and matrix changes to OpenGL.
+                state.apply(rg->getStateSet());
+            }
+        }
+        else
+        {
+            // apply state if required.
+            osgUtil::StateGraph::moveStateGraph(state,NULL,leaf->_parent->_parent);
+
+            state.apply(leaf->_parent->getStateSet());
+        }
+
+        // if we are using osg::Program which requires OSG's generated uniforms to track
+        // modelview and projection matrices then apply them now.
+        if (state.getUseModelViewAndProjectionUniforms()) 
+            state.applyModelViewAndProjectionUniformsIfRequired();
+        
+        // apply the fading uniform
+        const osg::Program::PerContextProgram* pcp = state.getLastAppliedProgramObject();
+        if ( pcp )
+        {
+            // todo: find a way to optimize this..?
+            _fade->set( s_enabledGlobally ? leaf->_depth : 1.0f );
+            pcp->apply( *_fade.get() );
+        }
+    
+        // draw the drawable
+        leaf->_drawable->draw(renderInfo);
+        
+        if (leaf->_dynamic)
+        {
+            state.decrementDynamicObjectCount();
+        }
+    }
+};
+
+//----------------------------------------------------------------------------
+
+/**
+ * The actual custom render bin
+ * This wants to be in the global scope for the dynamic registration to work,
+ * hence the annoyinging long class name
+ */
+class osgEarthAnnotationDeclutterRenderBin : public osgUtil::RenderBin
+{
+public:
+    osgEarthAnnotationDeclutterRenderBin()
+    {
+        this->setName( OSGEARTH_DECLUTTER_BIN );
+        _context = new DeclutterContext();
+        clearSortingFunctor();
+        setDrawCallback( new DeclutterDraw(_context.get()) );
+    }
+
+    void setSortingFunctor( DeclutterSortFunctor* f )
+    {
+        _f = f;
+        setSortCallback( new DeclutterSort(_context.get(), f) );
+    }
+
+    void clearSortingFunctor()
+    {
+        setSortCallback( new DeclutterSort(_context.get()) );
+    }
+
+    osg::ref_ptr<DeclutterSortFunctor> _f;
+    osg::ref_ptr<DeclutterContext>     _context;
+};
+
+//----------------------------------------------------------------------------
+
+//static
+
+#define STATESET_ID "osgEarth::Decluttering::prevStateSet"
+
+void
+Decluttering::setEnabled( osg::StateSet* stateSet, bool enable, int binNum )
+{
+    // note: even though we're fiddling with the StateSet, I don't think we need
+    // to mark it as DYNAMIC .... but we'll see
+    if ( stateSet )
+    {
+        if ( enable )
+        {
+            osg::StateSet* prevStateSet = 0L;
+            osg::UserDataContainer* udc = stateSet->getOrCreateUserDataContainer();
+            unsigned index = udc->getUserObjectIndex( STATESET_ID );
+            if ( index < udc->getNumUserObjects() )
+            {
+                prevStateSet = dynamic_cast<osg::StateSet*>( udc->getUserObject(index) );
+            }
+
+            if ( !prevStateSet )
+            {
+                prevStateSet = new osg::StateSet();
+                prevStateSet->setName( STATESET_ID );
+                prevStateSet->setBinName( stateSet->getBinName() );
+                prevStateSet->setBinNumber( stateSet->getBinNumber() );
+                prevStateSet->setRenderBinMode( stateSet->getRenderBinMode() );
+                prevStateSet->setNestRenderBins( stateSet->getNestRenderBins() );
+                udc->addUserObject( prevStateSet );
+            }
+
+            stateSet->setRenderBinDetails( binNum, OSGEARTH_DECLUTTER_BIN );
+
+            // disable renderbin nesting b/c it is incompatible with decluttering;
+            // i.e. we only want one decluttering bin per render stage
+            stateSet->setNestRenderBins( false );
+        }
+        else
+        {
+            osg::UserDataContainer* udc = stateSet->getOrCreateUserDataContainer();
+            unsigned index = udc->getUserObjectIndex( STATESET_ID );
+            if ( index < udc->getNumUserObjects() )
+            {
+                osg::StateSet* prevStateSet = dynamic_cast<osg::StateSet*>( udc->getUserObject(index) );
+                stateSet->setBinName( prevStateSet->getBinName() );
+                stateSet->setBinNumber( prevStateSet->getBinNumber() );
+                stateSet->setRenderBinMode( prevStateSet->getRenderBinMode() );
+                stateSet->setNestRenderBins( prevStateSet->getNestRenderBins() );
+                udc->removeUserObject( index );
+            }
+        }
+    }
+}
+
+void
+Decluttering::setEnabled( bool enabled )
+{
+    s_enabledGlobally = enabled;
+}
+
+void
+Decluttering::setSortFunctor( DeclutterSortFunctor* functor )
+{
+    // pull our prototype
+    osgEarthAnnotationDeclutterRenderBin* bin = dynamic_cast<osgEarthAnnotationDeclutterRenderBin*>(
+        osgUtil::RenderBin::getRenderBinPrototype( OSGEARTH_DECLUTTER_BIN ) );
+
+    if ( bin )
+    {
+        bin->setSortingFunctor( functor );
+    }
+}
+
+void
+Decluttering::clearSortFunctor()
+{
+    // pull our prototype
+    osgEarthAnnotationDeclutterRenderBin* bin = dynamic_cast<osgEarthAnnotationDeclutterRenderBin*>(
+        osgUtil::RenderBin::getRenderBinPrototype( OSGEARTH_DECLUTTER_BIN ) );
+
+    if ( bin )
+    {
+        bin->clearSortingFunctor();
+    }
+}
+
+void
+Decluttering::setOptions( const DeclutteringOptions& options )
+{
+    // pull our prototype
+    osgEarthAnnotationDeclutterRenderBin* bin = dynamic_cast<osgEarthAnnotationDeclutterRenderBin*>(
+        osgUtil::RenderBin::getRenderBinPrototype( OSGEARTH_DECLUTTER_BIN ) );
+
+    if ( bin )
+    {
+        // activate priority-sorting through the options.
+        if ( options.sortByPriority().isSetTo( true ) &&
+             bin->_context->_options.sortByPriority() == false )
+        {
+            Decluttering::setSortFunctor(new DeclutterByPriority());
+        }
+        
+        // communicate the new options on the shared context.
+        bin->_context->_options = options;
+    }
+}
+
+const DeclutteringOptions&
+Decluttering::getOptions()
+{
+    static DeclutteringOptions s_defaultOptions;
+
+    // pull our prototype
+    osgEarthAnnotationDeclutterRenderBin* bin = dynamic_cast<osgEarthAnnotationDeclutterRenderBin*>(
+        osgUtil::RenderBin::getRenderBinPrototype( OSGEARTH_DECLUTTER_BIN ) );
+
+    if ( bin )
+    {
+        return bin->_context->_options;
+    }
+    else
+    {
+        return s_defaultOptions;
+    }
+}
+
+//----------------------------------------------------------------------------
+
+bool
+DeclutterByPriority::operator()(const osgUtil::RenderLeaf* lhs, const osgUtil::RenderLeaf* rhs ) const
+{
+    float diff = 0.0f;
+    const AnnotationData* lhsData = dynamic_cast<const AnnotationData*>(lhs->getDrawable()->getUserData());
+    if ( lhsData )
+    {
+        const AnnotationData* rhsData = dynamic_cast<const AnnotationData*>(rhs->getDrawable()->getUserData());
+        if ( rhsData )
+        {
+            diff = lhsData->getPriority() - rhsData->getPriority();
+        }
+    }
+
+    if ( diff != 0.0f )
+        return diff > 0.0f;
+
+    // first fallback on depth:
+    diff = lhs->_depth - rhs->_depth;
+    if ( diff != 0.0f )
+        return diff < 0.0f;
+
+    // then fallback on traversal order.
+    diff = float(lhs->_traversalNumber) - float(rhs->_traversalNumber);
+    return diff < 0.0f;
+}
+
+//----------------------------------------------------------------------------
+
+/** the actual registration. */
+extern "C" void osgEarth_declutter(void) {}
+static osgEarthRegisterRenderBinProxy<osgEarthAnnotationDeclutterRenderBin> s_regbin(OSGEARTH_DECLUTTER_BIN);
diff --git a/src/osgEarthAnnotation/Decoration b/src/osgEarthAnnotation/Decoration
new file mode 100644
index 0000000..4564d5b
--- /dev/null
+++ b/src/osgEarthAnnotation/Decoration
@@ -0,0 +1,116 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_DECORATION_H
+#define OSGEARTH_ANNOTATION_DECORATION_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osg/NodeVisitor>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    //-----------------------------------------------------------------------
+
+    class OSGEARTHANNO_EXPORT Decoration : public osg::Referenced
+    {
+    public:
+        Decoration() { }
+        virtual ~Decoration() { }
+
+        virtual bool isShareable() const { return false; }
+        virtual Decoration* clone() const =0;
+        Decoration* copyOrClone() { return isShareable() ? this : clone(); }
+
+    public:
+        virtual bool apply(class AnnotationNode& node, bool enable);
+        virtual bool apply(class LocalizedNode&  node, bool enable);
+        virtual bool apply(class OrthoNode&      node, bool enable);
+    };
+
+    //-----------------------------------------------------------------------
+
+    /**
+     * Simple visitor that installs a decoration on all the 
+     * AnnotationNode's in a graph.
+     */
+    class OSGEARTHANNO_EXPORT DecorationInstaller : public osg::NodeVisitor
+    {
+    public:
+        struct Callback : public osg::Referenced
+        {
+            virtual void operator()( AnnotationNode* node ) =0;
+        };
+
+    public:
+        /**
+         * Constructor - for applying a single decorator to all the Annotations
+         * found in the visited graph.
+         */
+        DecorationInstaller( const std::string& name, Decoration* tech )
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+              _tech(tech), _name(name) { }
+
+        /**
+         * Constructor - for using a callback to assign a decorator to each
+         * individual Annotation.
+         */
+        DecorationInstaller( const std::string& name, Callback* callback )
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+              _callback(callback), _name(name) { }
+
+
+        virtual ~DecorationInstaller() { }
+
+    public:
+        virtual void apply(osg::Node& node);
+
+    public:
+        osg::ref_ptr<Decoration> _tech;
+        osg::ref_ptr<Callback>   _callback;
+        std::string              _name;
+    };
+
+    //-----------------------------------------------------------------------
+
+    /** 
+     * A decorator that injects a node below the annotation's
+     * transform. For example, you could install an Effect node, or a node
+     * that activates a shader.
+     */
+    class OSGEARTHANNO_EXPORT InjectionDecoration : public Decoration
+    {
+    public:
+        InjectionDecoration( osg::Group* group =0L );
+        virtual ~InjectionDecoration() { }
+
+        virtual Decoration* clone() const { return new InjectionDecoration(osg::clone(_injectionGroup.get(), osg::CopyOp::DEEP_COPY_ALL)); }
+
+        virtual bool apply(class AnnotationNode& node, bool enable);
+
+    protected:
+        osg::ref_ptr<osg::Group> _injectionGroup;
+
+        virtual bool apply(osg::Group* attachPoint, bool enable);
+    };
+
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_DECORATION_H
diff --git a/src/osgEarthAnnotation/Decoration.cpp b/src/osgEarthAnnotation/Decoration.cpp
new file mode 100644
index 0000000..21c7711
--- /dev/null
+++ b/src/osgEarthAnnotation/Decoration.cpp
@@ -0,0 +1,109 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/Decoration>
+
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/TrackNode>
+
+using namespace osgEarth::Annotation;
+
+//---------------------------------------------------------------------------
+
+void
+DecorationInstaller::apply(osg::Node& node)
+{
+    if ( dynamic_cast<AnnotationNode*>(&node) )
+    {
+        if ( _tech.valid() )
+            static_cast<AnnotationNode*>(&node)->installDecoration( _name, _tech );
+        else if ( _callback.valid() )
+            _callback->operator()( static_cast<AnnotationNode*>(&node) );
+    }
+    traverse(node);
+}
+
+//---------------------------------------------------------------------------
+
+bool
+Decoration::apply(class AnnotationNode& node, bool enable)
+{
+    return false;
+}
+
+bool
+Decoration::apply(class LocalizedNode& node, bool enable)
+{ 
+    return apply(static_cast<AnnotationNode&>(node), enable);
+}
+
+bool
+Decoration::apply(class OrthoNode& node, bool enable)
+{
+    return apply(static_cast<AnnotationNode&>(node), enable);
+}
+
+//---------------------------------------------------------------------------
+
+InjectionDecoration::InjectionDecoration( osg::Group* group ) :
+_injectionGroup( group )
+{
+    if ( !_injectionGroup.valid() )
+        _injectionGroup = new osg::Group();
+}
+
+bool
+InjectionDecoration::apply(AnnotationNode& node, bool enable)
+{
+    bool success = apply( node.getChildAttachPoint(), enable );
+    return success ? true : Decoration::apply(node, enable);
+}
+
+bool
+InjectionDecoration::apply(osg::Group* ap, bool enable)
+{
+    if ( _injectionGroup.valid() && ap )
+    {
+        if ( enable )
+        {
+            for( unsigned i=0; i<ap->getNumChildren(); ++i )
+            {
+                _injectionGroup->addChild( ap->getChild(i) );
+            }
+            ap->removeChildren(0, ap->getNumChildren() );
+            ap->addChild( _injectionGroup.get() );
+        }
+        else // if ( !enable)
+        {
+            for( unsigned i=0; i<_injectionGroup->getNumChildren(); ++i )
+            {
+                ap->addChild( _injectionGroup->getChild(i) );
+            }
+            ap->removeChild(0, 1);
+            _injectionGroup->removeChildren(0, _injectionGroup->getNumChildren());
+        }
+        return true;
+    }
+    return false;
+}
diff --git a/src/osgEarthAnnotation/EllipseNode b/src/osgEarthAnnotation/EllipseNode
new file mode 100644
index 0000000..41e4ef3
--- /dev/null
+++ b/src/osgEarthAnnotation/EllipseNode
@@ -0,0 +1,149 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ANNOTATION_ELLIPSE_NODE_H
+#define OSGEARTH_ANNOTATION_ELLIPSE_NODE_H 1
+
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthSymbology/Style>
+#include <osgEarth/Units>
+#include <osgEarth/MapNode>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /** 
+     * Renders an ellipse that can drape on a MapNode terrain.    
+     */
+    class OSGEARTHANNO_EXPORT EllipseNode : public LocalizedNode
+    {
+    public:
+        META_AnnotationNode( osgEarthAnnotation, EllipseNode );
+
+        /**
+         * Constructs a new ellipse annotation.
+         *
+         * @param mapNode     Map on which the annotation will appear
+         * @param position    Location of the annotation, in map coordinates
+         * @param radiusMajor Length of 1/2 the major axis of the ellipse
+         * @param radiusMinor Length of 1/2 the minor axis of the ellipse
+         * @param rotation    Rotation angle of the ellipse
+         * @param style       Style defining how the annotation will look
+         * @param draped      Whether to "drape" the annotation down on to the terrain
+         * @param numSegments Hint as to the tessellation of the ellipse
+         */
+        EllipseNode( 
+            MapNode*                mapNode,
+            const GeoPoint&         position,
+            const Linear&           radiusMajor,
+            const Linear&           radiusMinor,
+            const Angular&          rotationAngle,
+            const Style&            style,
+            bool                    draped      =true,
+            unsigned                numSegments =0 );
+
+        virtual ~EllipseNode() { }
+
+        /**
+         * Gets the major radius
+         */
+        const Linear& getRadiusMajor() const;
+
+        /**
+         * Gets the minor radius
+         */
+        const Linear& getRadiusMinor() const;
+
+        /**
+         * Sets the major radius
+         */
+        void setRadiusMajor( const Linear& radiusMajor );
+
+        /**
+         * Sets the minor radius
+         */
+        void setRadiusMinor( const Linear& radiusMinor );
+
+        /**
+         * Sets the major and minor radii
+         */
+        void setRadii( const Linear& radiusMajor, const Linear& radiusMinor );
+
+        /*
+         * Gets the rotation angle
+         */
+        const Angular& getRotationAngle() const;
+
+
+        /**
+         * Sets the rotation angle
+         */
+        void setRotationAngle(const Angular& rotationAngle);
+
+        /**
+         * Gets the number of segments
+         */
+        unsigned int getNumSegments() const;
+
+        /**
+         * Sets the number of segments
+         */
+        void setNumSegments(unsigned int numSegments );
+
+
+        /**
+         * Gets the style
+         */
+        const Style& getStyle() const;
+
+        /**
+         * Sets the style
+         */
+        void setStyle( const Style& style );
+
+        /**
+         * Gets draped property
+         */
+        bool isDraped() const { return _draped; }
+
+    public:
+
+        EllipseNode(MapNode* mapNode, const Config& conf, const osgDB::Options* dbOptions);
+        virtual Config getConfig() const;
+
+
+    private:
+        EllipseNode() { }
+        EllipseNode(const EllipseNode& rhs, const osg::CopyOp& op) { }
+
+        void rebuild();
+        
+        Style _style;
+        bool _draped;
+        Angular _rotationAngle;
+        Linear _radiusMajor;
+        Linear _radiusMinor;
+        unsigned int _numSegments;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNOTATION_ELLIPSE_NODE_H
diff --git a/src/osgEarthAnnotation/EllipseNode.cpp b/src/osgEarthAnnotation/EllipseNode.cpp
new file mode 100644
index 0000000..774e4be
--- /dev/null
+++ b/src/osgEarthAnnotation/EllipseNode.cpp
@@ -0,0 +1,214 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthSymbology/GeometryFactory>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/MapNode>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+EllipseNode::EllipseNode(MapNode*          mapNode,
+                         const GeoPoint&   position,
+                         const Linear&     radiusMajor,
+                         const Linear&     radiusMinor,
+                         const Angular&    rotationAngle,
+                         const Style&      style,
+                         bool              draped,
+                         unsigned          numSegments) :
+LocalizedNode( mapNode, position ),
+_radiusMajor( radiusMajor ),
+_radiusMinor( radiusMinor ),
+_rotationAngle( rotationAngle ),
+_style(style ),
+_draped( draped ),
+_numSegments( numSegments )
+{
+    rebuild();
+}
+
+const Style&
+EllipseNode::getStyle() const
+{
+    return _style;
+}
+
+void
+EllipseNode::setStyle( const Style& style )
+{
+    _style = style;
+    rebuild();
+}
+
+unsigned int
+EllipseNode::getNumSegments() const
+{
+    return _numSegments;
+}
+
+void
+EllipseNode::setNumSegments(unsigned int numSegments )
+{
+    if (_numSegments != numSegments )
+    {
+        _numSegments = numSegments;
+        rebuild();
+    }
+}
+
+
+const Linear&
+EllipseNode::getRadiusMajor() const
+{
+    return _radiusMajor;
+}
+
+const Linear&
+EllipseNode::getRadiusMinor() const
+{
+    return _radiusMinor;
+}
+
+void
+EllipseNode::setRadiusMajor( const Linear& radiusMajor )
+{
+    setRadii( radiusMajor, _radiusMinor );
+}
+
+
+void
+EllipseNode::setRadiusMinor( const Linear& radiusMinor )
+{
+    setRadii( _radiusMajor, radiusMinor );
+}
+
+void
+EllipseNode::setRadii( const Linear& radiusMajor, const Linear& radiusMinor )
+{
+    if (_radiusMajor != radiusMajor || _radiusMinor != radiusMinor )
+    {
+        _radiusMajor = radiusMajor;
+        _radiusMinor = radiusMinor;
+        rebuild();
+    }
+}
+
+const Angular&
+EllipseNode::getRotationAngle() const
+{
+    return _rotationAngle;
+}
+
+void 
+EllipseNode::setRotationAngle(const Angular& rotationAngle)
+{
+    if (_rotationAngle != rotationAngle)
+    {
+        _rotationAngle = rotationAngle;
+        rebuild();
+    }
+}
+
+
+void
+EllipseNode::rebuild()
+{
+    std::string currentDecoration = getDecoration();
+    clearDecoration();
+
+    //Remove all children from this node
+    //removeChildren( 0, getNumChildren() );
+    if ( getRoot()->getNumParents() == 0 )
+    {
+        this->addChild( getRoot() );
+    }
+
+    //Remove all children from the attach point
+    getChildAttachPoint()->removeChildren( 0, getChildAttachPoint()->getNumChildren() );
+
+    // construct a local-origin ellipse.
+    GeometryFactory factory;
+    Geometry* geom = factory.createEllipse(osg::Vec3d(0,0,0), _radiusMajor, _radiusMinor, _rotationAngle, _numSegments);
+    if ( geom )
+    {
+        GeometryCompiler compiler;
+        osg::ref_ptr<Feature> feature = new Feature(geom, 0L); //todo: consider the SRS
+        osg::Node* node = compiler.compile( feature.get(), _style, FilterContext(0L) );
+        if ( node )
+        {
+            getChildAttachPoint()->addChild( node );
+            getDrapeable()->setDraped( _draped );
+        }
+
+        applyStyle( _style );
+    }
+
+    setDecoration( currentDecoration );
+}
+
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( ellipse, osgEarth::Annotation::EllipseNode );
+
+
+EllipseNode::EllipseNode(MapNode*              mapNode,
+                         const Config&         conf,
+                         const osgDB::Options* dbOptions) :
+LocalizedNode( mapNode ),
+_draped      ( false ),
+_numSegments ( 0 )
+{
+    conf.getObjIfSet( "radius_major", _radiusMajor );
+    conf.getObjIfSet( "radius_minor", _radiusMinor );
+    conf.getObjIfSet( "rotation", _rotationAngle );
+    conf.getObjIfSet( "style",  _style );
+    conf.getIfSet   ( "draped", _draped );
+    conf.getIfSet   ( "num_segments", _numSegments );
+
+    rebuild();
+
+    if ( conf.hasChild("position") )
+        setPosition( GeoPoint(conf.child("position")) );
+}
+
+Config
+EllipseNode::getConfig() const
+{
+    Config conf( "ellipse" );
+    conf.addObj( "radius_major", _radiusMajor );
+    conf.addObj( "radius_minor", _radiusMinor );
+    conf.addObj( "rotation", _rotationAngle );
+    conf.addObj( "style", _style );
+
+    if ( _numSegments != 0 )
+        conf.add( "num_segments", _numSegments );
+    if ( _draped != false )
+        conf.add( "draped", _draped );
+
+    conf.addObj( "position", getPosition() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/Export b/src/osgEarthAnnotation/Export
new file mode 100644
index 0000000..ce68a69
--- /dev/null
+++ b/src/osgEarthAnnotation/Export
@@ -0,0 +1,85 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+/* -*-c++-*- 
+ * Derived from osg/Export
+ */
+
+#ifndef OSGEARTH_ANNOTATION_EXPORT_H
+#define OSGEARTH_ANNOTATION_EXPORT_H 1
+
+// define USE_DEPRECATED_API is used to include in API which is being fazed out
+// if you can compile your apps with this turned off you are
+// well placed for compatibility with future versions.
+#define USE_DEPRECATED_API
+
+#if defined(_MSC_VER)
+    #pragma warning( disable : 4244 )
+    #pragma warning( disable : 4251 )
+    #pragma warning( disable : 4267 )
+    #pragma warning( disable : 4275 )
+    #pragma warning( disable : 4290 )
+    #pragma warning( disable : 4786 )
+    #pragma warning( disable : 4305 )
+    #pragma warning( disable : 4996 )
+#endif
+
+#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__)  || defined( __MWERKS__)
+    #  if defined( OSGEARTHANNO_LIBRARY_STATIC )
+    #    define OSGEARTHANNO_EXPORT
+    #  elif defined( OSGEARTHANNO_LIBRARY )
+    #    define OSGEARTHANNO_EXPORT   __declspec(dllexport)
+    #  else
+    #    define OSGEARTHANNO_EXPORT   __declspec(dllimport)
+    #  endif
+#else
+    #  define OSGEARTHANNO_EXPORT
+#endif  
+
+// set up define for whether member templates are supported by VisualStudio compilers.
+#ifdef _MSC_VER
+# if (_MSC_VER >= 1300)
+#  define __STL_MEMBER_TEMPLATES
+# endif
+#endif
+
+/* Define NULL pointer value */
+
+#ifndef NULL
+    #ifdef  __cplusplus
+        #define NULL    0
+    #else
+        #define NULL    ((void *)0)
+    #endif
+#endif
+
+#ifndef OSG_MIN_VERSION_REQUIRED
+    #define OSG_MIN_VERSION_REQUIRED(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION>MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION>MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION>=PATCH))))
+#endif
+
+#ifndef OSG_VERSION_LESS_THAN
+    #define OSG_VERSION_LESS_THAN(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION<MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION<MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION<PATCH))))
+#endif
+
+/**
+\namespace osgEarth::Annotation
+*/
+
+#endif // OSGEARTH_ANNOTATION_EXPORT_H
+
diff --git a/src/osgEarthAnnotation/FeatureEditing b/src/osgEarthAnnotation/FeatureEditing
new file mode 100644
index 0000000..1c082be
--- /dev/null
+++ b/src/osgEarthAnnotation/FeatureEditing
@@ -0,0 +1,140 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHANNO_FEATURE_EDITING_H
+#define OSGEARTHANNO_FEATURE_EDITING_H 1
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarth/MapNode>
+#include <osgEarthFeatures/FeatureListSource>
+#include <osgGA/GUIEventHandler>
+#include <osgViewer/View>
+
+namespace osgEarth { namespace Annotation {
+
+    /**
+     * AddPointHandler is a GUIEventHandler that allows you to append points to a Feature's Geometry
+     */
+    struct OSGEARTHANNO_EXPORT AddPointHandler : public osgGA::GUIEventHandler 
+    {
+    public:
+        /**
+         * Constructs a new AddPointHandler
+         * @param feature
+         *      The Feature to edit
+         * @param source
+         *      The FeatureSource that the Feature belongs to
+         * @param mapSRS
+         *      The srs of the Map
+         */
+        AddPointHandler(osgEarth::Features::Feature* feature, osgEarth::Features::FeatureListSource* source, const osgEarth::SpatialReference* mapSRS);
+
+        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
+
+        /**
+         * Sets the mouse button used for adding new points
+         */
+        void setMouseButton( osgGA::GUIEventAdapter::MouseButtonMask mouseButton);
+
+        /**
+         * Gets the mouse button used for adding new points
+         */
+        osgGA::GUIEventAdapter::MouseButtonMask getMouseButton() const;
+
+        void setIntersectionMask( osg::Node::NodeMask intersectionMask ) { _intersectionMask = intersectionMask; }
+        osg::Node::NodeMask getIntersectionMask() const { return _intersectionMask;}
+
+
+    private:
+        bool addPoint( float x, float y, osgViewer::View* view );
+
+        osgGA::GUIEventAdapter::MouseButtonMask _mouseButton;
+        bool _mouseDown;
+        bool _firstMove;
+        osg::ref_ptr< osgEarth::Features::FeatureListSource > _source;
+        osg::ref_ptr< osgEarth::Features::Feature > _feature;
+        osg::ref_ptr<const SpatialReference> _mapSRS;
+        osg::Node::NodeMask _intersectionMask;
+    };
+
+    
+    /**
+     * Node you can add to your scene graph to edit the verts of a Feature's Geometry
+     */
+    class OSGEARTHANNO_EXPORT FeatureEditor : public osg::Group
+    {
+    public:
+         /**
+         * Constructs a new FeatureEditor
+         * @param feature
+         *      The Feature to edit
+         * @param source
+         *      The FeatureSource that the Feature belongs to
+         * @param mapNode
+         *      The MapNode that is being displayed
+         */
+        FeatureEditor( osgEarth::Features::Feature* feature, osgEarth::Features::FeatureSource* source, osgEarth::MapNode* mapNode );
+
+        /**
+         *Gets the color of the draggers when they are selected
+         */
+        const osg::Vec4f& getPickColor() const;
+
+        /**
+         *Sets the color of the draggers when they are selected
+         */
+        void setPickColor( const osg::Vec4f& pickColor );
+
+        /**
+         *Gets the color of the draggers
+         */
+        const osg::Vec4f& getColor() const;
+
+        /**
+         *Sets the color of the draggers
+         */
+        void setColor( const osg::Vec4f& color );
+
+
+        /**
+         *Gets the dragger size
+         */
+        float getSize() const;
+
+        /**
+         *Sets the dragger size
+         */
+        void setSize( float size );
+
+
+    protected:
+        void init();
+
+        osg::Vec4f _pickColor;
+        osg::Vec4f _color;
+        float _size;
+
+        osg::ref_ptr< osgEarth::Features::Feature > _feature;
+        osg::ref_ptr< osgEarth::Features::FeatureSource > _source;
+        osg::ref_ptr< osgEarth::MapNode > _mapNode;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTHANNO_FEATURE_EDITING_H
diff --git a/src/osgEarthAnnotation/FeatureEditing.cpp b/src/osgEarthAnnotation/FeatureEditing.cpp
new file mode 100644
index 0000000..8ce1a91
--- /dev/null
+++ b/src/osgEarthAnnotation/FeatureEditing.cpp
@@ -0,0 +1,220 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/FeatureEditing>
+#include <osgEarth/Draggers>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Features;
+
+/****************************************************************/
+AddPointHandler::AddPointHandler(Feature* feature, FeatureListSource* source, const osgEarth::SpatialReference* mapSRS):
+_feature(feature),
+_source( source ),
+_mapSRS( mapSRS ),
+_mouseDown( false ),
+_firstMove( false ),
+_mouseButton( osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON ),
+_intersectionMask( 0xffffffff )
+{
+}
+
+void
+AddPointHandler::setMouseButton( osgGA::GUIEventAdapter::MouseButtonMask mouseButton)
+{
+    _mouseButton = mouseButton;
+}
+
+osgGA::GUIEventAdapter::MouseButtonMask
+AddPointHandler::getMouseButton() const
+{
+    return _mouseButton;
+}
+
+bool
+AddPointHandler::addPoint( float x, float y, osgViewer::View* view )
+{
+    osgUtil::LineSegmentIntersector::Intersections results;
+    if ( view->computeIntersections( x, y, results, _intersectionMask ) )
+    {
+        // find the first hit under the mouse:
+        osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
+        osg::Vec3d point = first.getWorldIntersectPoint();
+
+        // transform it to map coordinates:
+        double lat_rad, lon_rad, dummy;
+        _mapSRS->getEllipsoid()->convertXYZToLatLongHeight( point.x(), point.y(), point.z(), lat_rad, lon_rad, dummy );
+
+        double lat_deg = osg::RadiansToDegrees( lat_rad );
+        double lon_deg = osg::RadiansToDegrees( lon_rad );
+
+        if (_feature.valid())            
+        {
+            _feature->getGeometry()->push_back( osg::Vec3d(lon_deg, lat_deg, 0) );
+            _source->dirty();
+            //Also must dirty the feature profile since the geometry has changed
+            _source->dirtyFeatureProfile();
+        }
+        return true;
+    }
+    return false;
+}
+
+bool
+AddPointHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+{
+    osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
+    if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH )
+    {
+        if (ea.getButton() == _mouseButton)
+        {
+            _mouseDown = true;
+            _firstMove = true;
+            return addPoint( ea.getX(), ea.getY(), view );
+        }
+    }
+    else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
+    {
+        if (ea.getButton() == _mouseButton)
+        {
+            _mouseDown = false;
+        }
+    }
+    else if (ea.getEventType() == osgGA::GUIEventAdapter::MOVE || ea.getEventType() == osgGA::GUIEventAdapter::DRAG)
+    {
+        if (_mouseDown)
+        {
+            if (!_firstMove)
+            {
+                return addPoint( ea.getX(), ea.getY(), view );
+            }
+            _firstMove = false;
+        }
+        return true;
+    }
+
+    return false;
+}
+
+/****************************************************************/
+
+class MoveFeatureDraggerCallback : public Dragger::PositionChangedCallback
+{
+public:
+    MoveFeatureDraggerCallback(Feature* feature, FeatureSource* source, int point):
+      _feature(feature),
+      _source(source),
+      _point(point)
+      {}
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          (*_feature->getGeometry())[_point] = osg::Vec3d(position.x(), position.y(), 0);
+          _source->dirty();
+          _source->dirtyFeatureProfile();
+      }
+
+      osg::ref_ptr< Feature > _feature;
+      osg::ref_ptr< FeatureSource > _source;
+
+      int _point;
+
+};
+
+/****************************************************************/
+FeatureEditor::FeatureEditor( Feature* feature, FeatureSource* source, MapNode* mapNode ):
+_feature( feature ),
+_source( source ),
+_mapNode( mapNode ),
+_color(osg::Vec4(0.0f, 1.0f, 0.0f, 1.0f)),
+_pickColor(osg::Vec4(1.0f, 1.0f, 0.0f, 1.0f)),
+_size( 5.0f )
+{
+    init();
+}
+
+
+const osg::Vec4f&
+FeatureEditor::getPickColor() const
+{
+    return _pickColor;
+}
+
+void
+FeatureEditor::setPickColor( const osg::Vec4f& pickColor )
+{
+    if (_pickColor != pickColor)
+    {
+        _pickColor = pickColor;
+        init();
+    }
+}
+
+const osg::Vec4f&
+FeatureEditor::getColor() const
+{
+    return _color;
+}
+
+void
+FeatureEditor::setColor( const osg::Vec4f& color )
+{
+    if (_color != color)
+    {
+        _color = color;
+        init();
+    }
+}        
+
+float
+FeatureEditor::getSize() const
+{
+    return _size;
+}
+
+void
+FeatureEditor::setSize( float size )
+{
+    if (_size != size)
+    {
+        _size = size;
+        init();
+    }
+}
+
+void
+FeatureEditor::init()
+{
+    removeChildren( 0, getNumChildren() );
+
+    //Create a dragger for each point
+    for (unsigned int i = 0; i < _feature->getGeometry()->size(); i++)
+    {
+        SphereDragger* dragger = new SphereDragger( _mapNode );
+        dragger->setColor( _color );
+        dragger->setPickColor( _pickColor );
+        dragger->setSize( _size );
+        dragger->setPosition(GeoPoint(_feature->getSRS(),  (*_feature->getGeometry())[i].x(),  (*_feature->getGeometry())[i].y()));
+        dragger->addPositionChangedCallback(new MoveFeatureDraggerCallback(_feature.get(), _source.get(), i) );
+
+        addChild(dragger);        
+    }
+}        
diff --git a/src/osgEarthAnnotation/FeatureNode b/src/osgEarthAnnotation/FeatureNode
new file mode 100644
index 0000000..38bbd14
--- /dev/null
+++ b/src/osgEarthAnnotation/FeatureNode
@@ -0,0 +1,91 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_FEATURE_NODE_H
+#define OSGEARTH_ANNO_FEATURE_NODE_H 1
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarth/MapNode>
+#include <osgEarthSymbology/Style>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osg/Polytope>
+
+namespace osgEarth { namespace Annotation
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Features;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * A node that renders a single feature. Since no feature profile is provided,
+     * the feature must contain geometry that is in the same SRS as the map.
+     */
+    class OSGEARTHANNO_EXPORT FeatureNode : public AnnotationNode
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, FeatureNode);
+
+        FeatureNode( 
+            MapNode* mapNode, 
+            Feature* feature, 
+            bool     draped   =false, 
+            const GeometryCompilerOptions& options = GeometryCompilerOptions() );
+
+        virtual ~FeatureNode() { }
+
+        void setFeature( Feature* feature );
+        Feature* getFeature() { return _feature.get(); }
+        const Feature* getFeature() const { return _feature.get(); }
+
+        bool isDraped() const { return _draped; }
+
+        void init();
+
+    public: // AnnotationNode
+
+        virtual osg::Group* getAttachPoint();
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+    public:
+
+        FeatureNode(MapNode* mapNode, const Config& conf, const osgDB::Options* options);
+        virtual Config getConfig() const;
+
+    protected:
+        osg::ref_ptr<Feature>       _feature;
+        GeometryCompilerOptions     _options;
+        bool                        _draped;
+        osg::Group*                 _attachPoint;
+        osg::Polytope               _featurePolytope;
+
+        FeatureNode() { }
+        FeatureNode(const FeatureNode& rhs, const osg::CopyOp& op) { }
+        
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* );
+        
+    private:
+        void clampMesh( osg::Node* terrainModel );
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_FEATURE_NODE_H
diff --git a/src/osgEarthAnnotation/FeatureNode.cpp b/src/osgEarthAnnotation/FeatureNode.cpp
new file mode 100644
index 0000000..8491951
--- /dev/null
+++ b/src/osgEarthAnnotation/FeatureNode.cpp
@@ -0,0 +1,269 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/AnnotationUtils>
+
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthFeatures/GeometryUtils>
+#include <osgEarthFeatures/MeshClamper>
+
+#include <osgEarthSymbology/AltitudeSymbol>
+
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Utils>
+#include <osgEarth/Registry>
+
+#include <osg/BoundingSphere>
+#include <osg/Polytope>
+#include <osg/Transform>
+
+#define LC "[FeatureNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+FeatureNode::FeatureNode(MapNode* mapNode, 
+                         Feature* feature, 
+                         bool     draped,
+                         const GeometryCompilerOptions& options ) :
+AnnotationNode( mapNode ),
+_feature      ( feature ),
+_draped       ( draped ),
+_options      ( options )
+{
+    init();
+}
+
+void
+FeatureNode::init()
+{
+    // if there's a decoration, clear it out first.
+    this->clearDecoration();
+    _attachPoint = 0L;
+
+    // if there is existing geometry, kill it
+    this->removeChildren( 0, this->getNumChildren() );
+
+    if ( !getMapNode() )
+        return;
+
+    // build the new feature geometry
+    {
+        if ( _feature.valid() )
+        {
+            _feature->getWorldBoundingPolytope( getMapNode()->getMapSRS(), _featurePolytope );
+        }
+
+        GeometryCompilerOptions options = _options;
+        
+        // have to disable compiler clamping if we're doing auto-clamping; especially
+        // in terrain-relative mode because the auto-clamper will think the clamped
+        // coords are the relative coords.
+        bool autoClamping = !_draped && supportsAutoClamping(*_feature->style());
+        if ( autoClamping )
+        {
+            options.ignoreAltitudeSymbol() = true;
+        }
+
+        // prep the compiler:
+        GeometryCompiler compiler( options );
+        Session* session = new Session( getMapNode()->getMap() );
+        GeoExtent extent(_feature->getSRS(), _feature->getGeometry()->getBounds());
+        osg::ref_ptr<FeatureProfile> profile = new FeatureProfile( extent );
+        FilterContext context( session, profile.get(), extent );
+
+        // Clone the Feature before rendering as the GeometryCompiler and it's filters can change the coordinates
+        // of the geometry when performing localization or converting to geocentric.
+        osg::ref_ptr< Feature > clone = new Feature(*_feature.get(), osg::CopyOp::DEEP_COPY_ALL);        
+
+        osg::Node* node = compiler.compile( clone.get(), *clone->style(), context );
+        if ( node )
+        {
+            if ( _feature->style().isSet() &&
+                AnnotationUtils::styleRequiresAlphaBlending( *_feature->style() ) &&
+                _feature->style()->get<ExtrusionSymbol>() )
+            {
+                node = AnnotationUtils::installTwoPassAlpha( node );
+            }
+
+            _attachPoint = new osg::Group();
+            _attachPoint->addChild( node );
+
+            if ( _draped )
+            {
+                DrapeableNode* d = new DrapeableNode( getMapNode() );
+                d->addChild( _attachPoint );
+                this->addChild( d );
+            }
+            else
+            {
+                this->addChild( _attachPoint );
+            }
+        }
+
+        // workaround until we can auto-clamp extruded/sub'd geometries.
+        if ( autoClamping )
+        {
+            applyStyle( *_feature->style() );
+            clampMesh( getMapNode()->getTerrain()->getGraph() );
+        }
+    }
+}
+
+void
+FeatureNode::setMapNode( MapNode* mapNode )
+{
+    if ( getMapNode() != mapNode )
+    {
+        AnnotationNode::setMapNode( mapNode );
+        init();
+    }
+}
+
+void
+FeatureNode::setFeature( Feature* feature )
+{
+    _feature = feature;
+    init();
+}
+
+osg::Group*
+FeatureNode::getAttachPoint()
+{
+    if ( !_attachPoint )
+        return 0L;
+
+    // first try to find a transform to go under:
+    osg::Group* xform = osgEarth::findTopMostNodeOfType<osg::Transform>(_attachPoint);
+    if ( xform )
+        return xform;
+
+    // failing that, use the artificial attach group we created.
+    return _attachPoint;
+}
+
+void
+FeatureNode::reclamp( const TileKey& key, osg::Node* tile, const Terrain* )
+{
+    if ( _featurePolytope.contains( tile->getBound() ) )
+    {
+        clampMesh( tile );
+    }
+}
+
+void
+FeatureNode::clampMesh( osg::Node* terrainModel )
+{
+    if ( getMapNode() )
+    {
+        double scale  = 1.0;
+        double offset = 0.0;
+        bool   relative = false;
+
+        if (_altitude.valid())
+        {
+            NumericExpression scale(_altitude->verticalScale().value());
+            NumericExpression offset(_altitude->verticalOffset().value());
+            scale = _feature->eval(scale);
+            offset = _feature->eval(offset);
+            relative = _altitude->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+        }
+
+        MeshClamper clamper( terrainModel, getMapNode()->getMapSRS(), getMapNode()->isGeocentric(), relative, scale, offset );
+        this->accept( clamper );
+
+        this->dirtyBound();
+    }
+}
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( feature, osgEarth::Annotation::FeatureNode );
+
+
+FeatureNode::FeatureNode(MapNode*              mapNode,
+                         const Config&         conf,
+                         const osgDB::Options* dbOptions ) :
+AnnotationNode( mapNode )
+{
+    osg::ref_ptr<Geometry> geom;
+    if ( conf.hasChild("geometry") )
+    {
+        Config geomconf = conf.child("geometry");
+        geom = GeometryUtils::geometryFromWKT( geomconf.value() );
+        if ( !geom.valid() )
+            OE_WARN << LC << "Config is missing required 'geometry' element" << std::endl;
+    }
+    
+    osg::ref_ptr<const SpatialReference> srs;
+    srs = SpatialReference::create( conf.value("srs"), conf.value("vdatum") );
+    if ( !srs.valid() )
+        OE_WARN << LC << "Config is missing required 'srs' element" << std::endl;
+
+    optional<GeoInterpolation> geoInterp;
+
+    Style style;
+    conf.getObjIfSet( "style", style );
+
+    if ( srs.valid() && geom.valid() )
+    {
+        _draped = conf.value<bool>("draped",false);
+        Feature* feature = new Feature(geom.get(), srs.get(), style);
+
+        conf.getIfSet( "geointerp", "greatcircle", feature->geoInterp(), GEOINTERP_GREAT_CIRCLE );
+        conf.getIfSet( "geointerp", "rhumbline",   feature->geoInterp(), GEOINTERP_RHUMB_LINE );
+
+        setFeature( feature );
+    }
+}
+
+Config
+FeatureNode::getConfig() const
+{
+    Config conf("feature");
+
+    if ( _feature.valid() && _feature->getGeometry() )
+    {
+        conf.set("name", getName());
+
+        Config geomConf("geometry");
+        geomConf.value() = GeometryUtils::geometryToWKT( _feature->getGeometry() );
+        conf.add(geomConf);
+
+        std::string srs = _feature->getSRS() ? _feature->getSRS()->getHorizInitString() : "";
+        if ( !srs.empty() ) conf.set("srs", srs);
+
+        std::string vsrs = _feature->getSRS() ? _feature->getSRS()->getVertInitString() : "";
+        if ( !vsrs.empty() ) conf.set("vdatum", vsrs);
+
+        if ( _feature->geoInterp().isSet() )
+            conf.set("geointerp", _feature->geoInterp() == GEOINTERP_GREAT_CIRCLE? "greatcircle" : "rhumbline");
+
+        conf.addObjIfSet( "style", _feature->style() );
+    }
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/HighlightDecoration b/src/osgEarthAnnotation/HighlightDecoration
new file mode 100644
index 0000000..961c437
--- /dev/null
+++ b/src/osgEarthAnnotation/HighlightDecoration
@@ -0,0 +1,51 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_HIGHLIGHT_DECORATION_H
+#define OSGEARTH_ANNOTATION_HIGHLIGHT_DECORATION_H 1
+
+#include <osgEarthAnnotation/Decoration>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    /**
+     * Decoration technique that highlights the geometry
+     */
+    class OSGEARTHANNO_EXPORT HighlightDecoration : public InjectionDecoration
+    {
+    public:
+        HighlightDecoration(const osg::Vec4f& color =osg::Vec4f(1,1,0,0.5));
+
+        virtual ~HighlightDecoration() { }
+
+        virtual Decoration* clone() const { return new HighlightDecoration(_color); }
+        
+        virtual bool apply(class OrthoNode& node, bool enable);
+
+    protected:
+        virtual bool apply(osg::Group* attachPoint, bool enable);
+
+        osg::Vec4f _color;
+        osg::ref_ptr<osg::StateSet> _passes[2];
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_HIGHLIGHT_DECORATION_H
diff --git a/src/osgEarthAnnotation/HighlightDecoration.cpp b/src/osgEarthAnnotation/HighlightDecoration.cpp
new file mode 100644
index 0000000..a09f8c0
--- /dev/null
+++ b/src/osgEarthAnnotation/HighlightDecoration.cpp
@@ -0,0 +1,151 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/HighlightDecoration>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarth/NodeUtils>
+#include <osg/Stencil>
+
+#undef  LC
+#define LC "[HighlightDecoration] "
+
+using namespace osgEarth::Annotation;
+
+namespace
+{
+    struct HighlightGroup : public osg::Group
+    {
+        osg::ref_ptr<osg::StateSet> _pass1, _pass2;
+        osg::ref_ptr<osg::Node>     _fillNode;
+
+        void traverse(osg::NodeVisitor& nv)
+        {
+            osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>(&nv);
+            if ( cv && _fillNode.valid() && _pass1.valid() )
+            {
+                const osg::GraphicsContext* gc = cv->getCurrentCamera()->getGraphicsContext();
+                if ( gc && gc->getTraits() && gc->getTraits()->stencil < 1 )
+                {
+                    OE_WARN << LC << "Insufficient stencil buffer bits available; disabling highlighting." << std::endl;
+                    OE_WARN << LC << "Please call osg::DisplaySettings::instance()->setMinimumNumStencilBits()" << std::endl;
+                    _pass1 = 0L;
+                }
+                else
+                {
+                    // first render the geometry to the stencil buffer:
+                    cv->pushStateSet(_pass1);
+                    osg::Group::traverse( nv );
+                    cv->popStateSet();
+
+                    // the render the coverage quad
+                    cv->pushStateSet(_pass2);
+                    _fillNode->accept( nv );
+                    cv->popStateSet();
+                }
+            }
+            else
+            {
+                osg::Group::traverse(nv);
+            }
+        }
+    };
+}
+
+HighlightDecoration::HighlightDecoration(const osg::Vec4f& color) :
+InjectionDecoration( new HighlightGroup() ),
+_color( color )
+{
+    HighlightGroup* hg = dynamic_cast<HighlightGroup*>( _injectionGroup.get() );
+
+    hg->_pass1 = new osg::StateSet();
+    {
+        osg::Stencil* stencil  = new osg::Stencil();
+        stencil->setFunction(osg::Stencil::ALWAYS, 1, ~0u);
+        stencil->setOperation(osg::Stencil::KEEP, osg::Stencil::KEEP, osg::Stencil::REPLACE);
+        hg->_pass1->setAttributeAndModes(stencil, 1);
+        hg->_pass1->setBinNumber(0);
+    }
+
+    hg->_pass2 = new osg::StateSet();
+    {
+        osg::Stencil* stencil  = new osg::Stencil();
+        stencil->setFunction(osg::Stencil::NOTEQUAL, 0, ~0u);
+        stencil->setOperation(osg::Stencil::REPLACE, osg::Stencil::REPLACE, osg::Stencil::REPLACE);
+        hg->_pass2->setAttributeAndModes(stencil, 1);
+        hg->_pass2->setBinNumber(1);
+    }
+}
+
+bool
+HighlightDecoration::apply(OrthoNode& node, bool enable)
+{
+    if ( node.getAttachPoint() )
+    {
+        node.setDynamic( true );
+        FindNodesVisitor<osg::Geode> fnv;
+        node.getAttachPoint()->accept( fnv );
+        if ( enable )
+        {
+            osg::BoundingBox box;
+            for( std::vector<osg::Geode*>::iterator i = fnv._results.begin(); i != fnv._results.end(); ++i )
+            {
+                osg::Geode* geode = *i;
+                box.expandBy( geode->getBoundingBox() );
+            }
+            
+            if ( fnv._results.size() > 0 )
+            {
+                osg::Drawable* geom = AnnotationUtils::create2DOutline( box, 3.0f, _color );  
+                geom->setUserData( node.getAnnotationData() );
+                for( std::vector<osg::Geode*>::iterator i = fnv._results.begin(); i != fnv._results.end(); ++i )
+                {
+                    (*i)->addDrawable(geom);
+                }
+            }
+        }
+        else
+        {
+            for( std::vector<osg::Geode*>::iterator i = fnv._results.begin(); i != fnv._results.end(); ++i )
+            {
+                osg::Geode* geode = *i;
+                geode->removeDrawable( geode->getDrawable(geode->getNumDrawables()-1) );
+            }
+        }
+
+        return true;
+    }
+    return false;
+}
+
+bool
+HighlightDecoration::apply(osg::Group* ap, bool enable)
+{
+    HighlightGroup* hg = dynamic_cast<HighlightGroup*>( _injectionGroup.get() );
+    if ( !hg->_fillNode.valid() && ap != 0L )
+    {
+        const osg::BoundingSphere& bs = ap->getBound();
+
+        osg::Node* quad = AnnotationUtils::createFullScreenQuad( _color );
+        quad->setCullingActive( false );
+        hg->_fillNode = quad;
+    }
+
+    return InjectionDecoration::apply(ap, enable);
+}
diff --git a/src/osgEarthAnnotation/ImageOverlay b/src/osgEarthAnnotation/ImageOverlay
new file mode 100644
index 0000000..aa6b8d3
--- /dev/null
+++ b/src/osgEarthAnnotation/ImageOverlay
@@ -0,0 +1,174 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ANNO_IMAGE_OVERLAY_H
+#define OSGEARTH_ANNO_IMAGE_OVERLAY_H
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarth/GeoData>
+#include <osgEarth/Units>
+#include <osgEarth/URI>
+
+#include <osg/Group>
+#include <osg/Geometry>
+#include <osg/Image>
+#include <osg/MatrixTransform>
+
+namespace osgEarth { namespace Annotation
+{
+    using namespace osgEarth;
+
+    class OSGEARTHANNO_EXPORT ImageOverlay : public AnnotationNode
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, ImageOverlay);
+        
+        enum ControlPoint
+        {
+            CONTROLPOINT_CENTER,
+            CONTROLPOINT_LOWER_LEFT,
+            CONTROLPOINT_LOWER_RIGHT,
+            CONTROLPOINT_UPPER_LEFT,
+            CONTROLPOINT_UPPER_RIGHT
+        };
+        
+        ImageOverlay(MapNode* mapNode, osg::Image* image = NULL);
+
+        /**
+         * Construcs an image overlay annotation from a serialized representation
+         */
+        ImageOverlay(MapNode* mapNode, const Config& conf, const osgDB::Options* dbOptions);
+
+        virtual ~ImageOverlay() { }
+
+        void setCorners(const osg::Vec2d& lowerLeft, const osg::Vec2d& lowerRight, 
+                        const osg::Vec2d& upperLeft, const osg::Vec2d& upperRight);
+
+        void setLowerLeft(double lon_deg, double lat_deg);
+        const osg::Vec2d& getLowerLeft() const { return _lowerLeft; }
+
+        void setLowerRight(double lon_deg, double lat_deg);
+        const osg::Vec2d& getLowerRight() const { return _lowerRight;}
+
+        void setUpperLeft(double lon_deg, double lat_deg);
+        const osg::Vec2d& getUpperLeft() const { return _upperLeft; }
+
+        void setUpperRight(double lon_deg, double lat_deg);
+        const osg::Vec2d& getUpperRight() const { return _upperRight;}
+
+        osg::Vec2d getCenter() const;
+        void setCenter(double lon_deg, double lat_deg);
+
+        osg::Vec2d getControlPoint(ControlPoint controlPoint);
+        void setControlPoint(ControlPoint controlPoint, double lon_deg, double lat_deg, bool singleVert=false);
+
+        struct ImageOverlayCallback : public osg::Referenced
+        {
+            virtual void onOverlayChanged() {};
+            virtual ~ImageOverlayCallback() { }
+        };
+
+        typedef std::list< osg::ref_ptr<ImageOverlayCallback> > CallbackList;
+
+        void addCallback( ImageOverlayCallback* callback );
+        void removeCallback( ImageOverlayCallback* callback );
+
+
+        osgEarth::Bounds getBounds() const;
+        void setBounds(const osgEarth::Bounds& bounds);
+
+        void setBoundsAndRotation(const osgEarth::Bounds& bounds, const Angular& rotation);
+
+        osg::Image* getImage() const;
+        void setImage( osg::Image* image );
+
+        osg::Texture::FilterMode getMinFilter() const;
+        void setMinFilter( osg::Texture::FilterMode filter );
+
+        osg::Texture::FilterMode getMagFilter() const;
+        void setMagFilter( osg::Texture::FilterMode filter );
+
+        void setNorth(double value_deg);
+        void setSouth(double value_deg);
+        void setEast(double value_deg);
+        void setWest(double value_deg);
+
+        float getAlpha() const;
+        void setAlpha(float alpha);
+
+        void dirty();
+
+        bool getDraped() const;
+        void setDraped( bool draped );
+        
+        /** Serialize the contents of this node */
+        Config getConfig() const;
+
+    public: // AnnotationNode
+        
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* );
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+    public: // osg::Node
+
+        virtual void traverse(osg::NodeVisitor& nv);
+        
+    private:
+        void fireCallback(ImageOverlay::ControlPoint point, const osg::Vec2d& location);
+
+        void postCTOR();
+        void init();
+        void clampLatitudes();
+
+        void clampMesh( osg::Node* terrainModel );
+
+        void updateFilters();
+
+
+        osg::Vec2d _lowerLeft;
+        osg::Vec2d _lowerRight;
+        osg::Vec2d _upperRight;
+        osg::Vec2d _upperLeft;
+        osg::Polytope _boundingPolytope;        
+        osg::ref_ptr< osg::Image > _image;
+        bool _dirty;
+        OpenThreads::Mutex _mutex;
+        osg::Geode* _geode;
+        osg::MatrixTransform* _transform;
+        osg::Geometry* _geometry;
+        osg::Texture* _texture;
+
+        //float _alpha;
+        CallbackList _callbacks;
+
+        optional<URI>   _imageURI;
+        optional<float> _alpha;
+        optional<osg::Texture::FilterMode> _minFilter;
+        optional<osg::Texture::FilterMode> _magFilter;
+
+        ImageOverlay() { }
+        ImageOverlay(const ImageOverlay&, const osg::CopyOp&) { }
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_IMAGE_OVERLAY_H
+
diff --git a/src/osgEarthAnnotation/ImageOverlay.cpp b/src/osgEarthAnnotation/ImageOverlay.cpp
new file mode 100644
index 0000000..5591103
--- /dev/null
+++ b/src/osgEarthAnnotation/ImageOverlay.cpp
@@ -0,0 +1,747 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthAnnotation/ImageOverlay>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthSymbology/MeshSubdivider>
+#include <osgEarthFeatures/GeometryUtils>
+#include <osgEarthFeatures/MeshClamper>
+#include <osgEarthFeatures/Feature>
+#include <osgEarth/MapNode>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/ShaderComposition>
+#include <osg/Geode>
+#include <osg/ShapeDrawable>
+#include <osg/Texture2D>
+#include <osg/io_utils>
+#include <algorithm>
+
+#define LC "[ImageOverlay] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+//---------------------------------------------------------------------------
+
+namespace
+{
+    void clampLatitude(osg::Vec2d& l)
+    {
+        l.y() = osg::clampBetween( l.y(), -90.0, 90.0);
+    }
+}
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( imageoverlay, osgEarth::Annotation::ImageOverlay );
+
+ImageOverlay::ImageOverlay(MapNode* mapNode, const Config& conf, const osgDB::Options* dbOptions) :
+AnnotationNode(mapNode),
+_lowerLeft    (10, 10),
+_lowerRight   (20, 10),
+_upperRight   (20, 20),
+_upperLeft    (10, 20),
+_dirty        (false),
+_alpha        (1.0f),
+_minFilter    (osg::Texture::LINEAR_MIPMAP_LINEAR),
+_magFilter    (osg::Texture::LINEAR),
+_texture      (0)
+{
+    conf.getIfSet( "url",   _imageURI );
+    if ( _imageURI.isSet() )
+    {
+        setImage( _imageURI->getImage(dbOptions) );
+    }
+
+    conf.getIfSet( "alpha", _alpha );
+    
+    osg::ref_ptr<Geometry> geom;
+    if ( conf.hasChild("geometry") )
+    {
+        Config geomconf = conf.child("geometry");
+        geom = GeometryUtils::geometryFromWKT( geomconf.value() );
+        
+        if ( !geom.valid() || geom->size() < 4 )
+        {
+            OE_WARN << LC << "Config is missing required 'geometry' element, or not enough points (need 4)" << std::endl;
+        }
+        else
+        {
+            _lowerLeft.set ( (*geom)[0].x(), (*geom)[0].y() );
+            _lowerRight.set( (*geom)[1].x(), (*geom)[1].y() );
+            _upperRight.set( (*geom)[2].x(), (*geom)[2].y() );
+            _upperLeft.set ( (*geom)[3].x(), (*geom)[3].y() );
+        }
+    }
+
+
+    //Load the filter settings
+    conf.getIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
+    conf.getIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.getIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.getIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
+    conf.getIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.getIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+    conf.getIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
+    conf.getIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.getIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.getIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
+    conf.getIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.getIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+
+    postCTOR();
+}
+
+Config
+ImageOverlay::getConfig() const
+{
+    Config conf("imageoverlay");
+    conf.set("name",  getName());
+
+    if ( _imageURI.isSet() )
+    {
+        conf.addIfSet("url", _imageURI );
+    }
+    else if ( _image.valid() && !_image->getFileName().empty() )
+    {
+        optional<URI> temp;
+        temp = URI(_image->getFileName());
+        conf.addIfSet("url", temp);
+    }
+
+    conf.addIfSet("alpha", _alpha);
+
+    osg::ref_ptr<Geometry> g = new Polygon();
+    g->push_back( osg::Vec3d(_lowerLeft.x(),  _lowerLeft.y(), 0) );
+    g->push_back( osg::Vec3d(_lowerRight.x(), _lowerRight.y(), 0) );
+    g->push_back( osg::Vec3d(_upperRight.x(), _upperRight.y(), 0) );
+    g->push_back( osg::Vec3d(_upperLeft.x(),  _upperLeft.y(),  0) );
+
+    Config geomConf("geometry");
+    geomConf.value() = GeometryUtils::geometryToWKT( g.get() );
+    conf.add( geomConf );
+
+    //Save the filter settings
+	conf.updateIfSet("mag_filter","LINEAR",                _magFilter,osg::Texture::LINEAR);
+    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_LINEAR",  _magFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.updateIfSet("mag_filter","LINEAR_MIPMAP_NEAREST", _magFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.updateIfSet("mag_filter","NEAREST",               _magFilter,osg::Texture::NEAREST);
+    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_LINEAR", _magFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.updateIfSet("mag_filter","NEAREST_MIPMAP_NEAREST",_magFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+    conf.updateIfSet("min_filter","LINEAR",                _minFilter,osg::Texture::LINEAR);
+    conf.updateIfSet("min_filter","LINEAR_MIPMAP_LINEAR",  _minFilter,osg::Texture::LINEAR_MIPMAP_LINEAR);
+    conf.updateIfSet("min_filter","LINEAR_MIPMAP_NEAREST", _minFilter,osg::Texture::LINEAR_MIPMAP_NEAREST);
+    conf.updateIfSet("min_filter","NEAREST",               _minFilter,osg::Texture::NEAREST);
+    conf.updateIfSet("min_filter","NEAREST_MIPMAP_LINEAR", _minFilter,osg::Texture::NEAREST_MIPMAP_LINEAR);
+    conf.updateIfSet("min_filter","NEAREST_MIPMAP_NEAREST",_minFilter,osg::Texture::NEAREST_MIPMAP_NEAREST);
+
+    return conf;
+}
+
+//---------------------------------------------------------------------------
+
+
+ImageOverlay::ImageOverlay(MapNode* mapNode, osg::Image* image) :
+AnnotationNode(mapNode),
+_lowerLeft    (10, 10),
+_lowerRight   (20, 10),
+_upperRight   (20, 20),
+_upperLeft    (10, 20),
+_image        (image),
+_dirty        (false),
+_alpha        (1.0f),
+_minFilter    (osg::Texture::LINEAR_MIPMAP_LINEAR),
+_magFilter    (osg::Texture::LINEAR),
+_texture      (0)
+{        
+    postCTOR();
+}
+
+void
+ImageOverlay::postCTOR()
+{
+    _geode = new osg::Geode;
+
+    _transform = new osg::MatrixTransform;
+    _transform->addChild( _geode );
+
+    // place the geometry under a drapeable node so it will project onto the terrain    
+    DrapeableNode* d = new DrapeableNode( getMapNode() );
+    addChild( d );
+
+    d->addChild( _transform );
+
+    // need a shader that supports one texture
+    VirtualProgram* vp = new VirtualProgram();
+    vp->setName( "imageoverlay");
+    vp->installDefaultColoringShaders(1);
+    //vp->installDefaultColoringAndLightingShaders(1);
+    //vp->setInheritShaders(false);
+    d->getOrCreateStateSet()->setAttributeAndModes( vp, 1 );
+    
+    init();    
+    ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+
+//    getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+}
+
+void
+ImageOverlay::init()
+{
+    OpenThreads::ScopedLock< OpenThreads::Mutex > lock(_mutex);
+
+    _geode->removeDrawables(0, _geode->getNumDrawables() );
+
+    if ( getMapNode() )
+    {
+        double height = 0;
+        osg::Geometry* geometry = new osg::Geometry();
+        geometry->setUseVertexBufferObjects(true);
+
+        const osg::EllipsoidModel* ellipsoid = getMapNode()->getMapSRS()->getEllipsoid();
+
+        const SpatialReference* mapSRS = getMapNode()->getMapSRS();
+
+        // calculate a bounding polytope in world space (for mesh clamping):
+        osg::ref_ptr<Feature> f = new Feature( new Polygon(), mapSRS->getGeodeticSRS() );
+        Geometry* g = f->getGeometry();
+        g->push_back( osg::Vec3d(_lowerLeft.x(),  _lowerLeft.y(), 0) );
+        g->push_back( osg::Vec3d(_lowerRight.x(), _lowerRight.y(), 0) );
+        g->push_back( osg::Vec3d(_upperRight.x(), _upperRight.y(), 0) );
+        g->push_back( osg::Vec3d(_upperLeft.x(),  _upperLeft.y(),  0) );
+        //_boundingPolytope = f->getWorldBoundingPolytope();
+        f->getWorldBoundingPolytope( getMapNode()->getMapSRS(), _boundingPolytope );
+
+        // next, convert to world coords and create the geometry:
+        osg::Vec3Array* verts = new osg::Vec3Array();
+        verts->reserve(4);
+        osg::Vec3d anchor;
+        for( Geometry::iterator i = g->begin(); i != g->end(); ++i )
+        {        
+            osg::Vec3d map, world;        
+            f->getSRS()->transform( *i, mapSRS, map);
+            mapSRS->transformToWorld( map, world );
+            if (i == g->begin())
+            {
+                anchor = world;
+            }
+            verts->push_back( world - anchor );
+        }
+        
+        _transform->setMatrix( osg::Matrixd::translate( anchor ) );
+
+
+
+        geometry->setVertexArray( verts );
+        if ( verts->getVertexBufferObject() )
+            verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        osg::Vec4Array* colors = new osg::Vec4Array(1);
+        (*colors)[0] = osg::Vec4(1,1,1,*_alpha);
+
+        geometry->setColorArray( colors );
+        geometry->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+         GLushort tris[6] = { 0, 1, 2,
+                            0, 2, 3
+                          };        
+        geometry->addPrimitiveSet(new osg::DrawElementsUShort( GL_TRIANGLES, 6, tris ) );
+
+        bool flip = false;
+        if (_image.valid())
+        {
+            //Create the texture
+            _texture = new osg::Texture2D(_image.get());        
+            _texture->setResizeNonPowerOfTwoHint(false);
+            updateFilters();
+            _geode->getOrCreateStateSet()->setTextureAttributeAndModes(0, _texture, osg::StateAttribute::ON);    
+            flip = _image->getOrigin()==osg::Image::TOP_LEFT;
+        }
+
+        osg::Vec2Array* texcoords = new osg::Vec2Array(4);
+        (*texcoords)[0].set(0.0f,flip ? 1.0 : 0.0f);
+        (*texcoords)[1].set(1.0f,flip ? 1.0 : 0.0f);
+        (*texcoords)[2].set(1.0f,flip ? 0.0 : 1.0f);
+        (*texcoords)[3].set(0.0f,flip ? 0.0 : 1.0f);
+        geometry->setTexCoordArray(0, texcoords);
+
+         
+        //Only run the MeshSubdivider on geocentric maps
+        if (getMapNode()->getMap()->isGeocentric())
+        {
+            MeshSubdivider ms(osg::Matrixd::inverse(_transform->getMatrix()), _transform->getMatrix());
+            ms.run(*geometry, osg::DegreesToRadians(5.0), GEOINTERP_RHUMB_LINE);
+        }
+
+        _geode->addDrawable( geometry );
+
+        _geometry = geometry;
+
+        _dirty = false;
+        
+        // Set the annotation up for auto-clamping. We always need to auto-clamp a draped image
+        // so that the mesh roughly conforms with the surface, otherwise the draping routine
+        // might clip it.
+        Style style;
+        style.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+        applyStyle( style );
+        clampMesh( getMapNode()->getTerrain()->getGraph() );
+    }
+}
+
+void
+ImageOverlay::setMapNode( MapNode* mapNode )
+{
+    if ( getMapNode() != mapNode )
+    {
+        AnnotationNode::setMapNode( mapNode );
+        init();
+    }
+}
+
+bool
+ImageOverlay::getDraped() const
+{
+    return static_cast< const DrapeableNode *>( getChild(0))->getDraped();
+}
+
+void
+ImageOverlay::setDraped( bool draped )
+{
+    static_cast< DrapeableNode *>( getChild(0))->setDraped( draped );
+}
+
+osg::Image*
+ImageOverlay::getImage() const
+{
+    return _image.get();
+}
+
+void ImageOverlay::setImage( osg::Image* image )
+{
+    if (_image != image)
+    {
+        _image = image;
+        dirty();        
+    }
+}
+
+osg::Texture::FilterMode
+    ImageOverlay::getMinFilter() const
+{
+    return *_minFilter;
+}
+
+void
+ImageOverlay::setMinFilter( osg::Texture::FilterMode filter )
+{
+    _minFilter = filter;
+    updateFilters();
+}
+
+osg::Texture::FilterMode
+    ImageOverlay::getMagFilter() const
+{
+    return *_magFilter;
+}
+
+void
+ImageOverlay::setMagFilter( osg::Texture::FilterMode filter )
+{
+    _magFilter = filter; 
+    updateFilters();
+}
+
+void
+ImageOverlay::updateFilters()
+{
+    if (_texture)
+    {
+        _texture->setFilter(osg::Texture::MAG_FILTER, *_magFilter);
+
+        
+        if (ImageUtils::isPowerOfTwo( _image ) && !(!_image->isMipmap() && ImageUtils::isCompressed(_image)))
+        {
+            _texture->setFilter(osg::Texture::MIN_FILTER, *_minFilter);
+        }
+        else
+        {
+            if (*_minFilter == osg::Texture2D::NEAREST_MIPMAP_LINEAR || 
+                *_minFilter == osg::Texture2D::NEAREST_MIPMAP_NEAREST)
+            {
+                _texture->setFilter(osg::Texture::MIN_FILTER, osg::Texture2D::NEAREST);
+            }
+            else if (*_minFilter == osg::Texture2D::LINEAR_MIPMAP_LINEAR || 
+                     *_minFilter == osg::Texture2D::LINEAR_MIPMAP_NEAREST)
+            {
+                _texture->setFilter(osg::Texture::MIN_FILTER, osg::Texture2D::LINEAR);
+            }
+            else
+            {
+                _texture->setFilter(osg::Texture::MIN_FILTER, *_minFilter);
+            }
+        }        
+        
+        _texture->setFilter(osg::Texture::MAG_FILTER, *_magFilter);
+
+    }
+}
+
+float
+ImageOverlay::getAlpha() const
+{
+    return *_alpha;
+}
+
+void
+ImageOverlay::setAlpha(float alpha)
+{
+    if (*_alpha != alpha)
+    {
+        _alpha = osg::clampBetween(alpha, 0.0f, 1.0f);
+        dirty();
+    }
+}
+
+void
+ImageOverlay::clampLatitudes()
+{
+    clampLatitude( _lowerLeft );
+    clampLatitude( _lowerRight );
+    clampLatitude( _upperLeft );
+    clampLatitude( _upperRight );
+}
+
+
+osg::Vec2d
+ImageOverlay::getCenter() const
+{
+    return (_lowerLeft + _lowerRight + _upperRight + _upperLeft) / 4.0;
+}
+
+void
+ImageOverlay::setCenter(double lon_deg, double lat_deg)
+{
+    osg::Vec2d center = getCenter();
+    osg::Vec2d newCenter(lon_deg, lat_deg);
+    osg::Vec2d offset =  newCenter - center;
+    setCorners(_lowerLeft += offset, _lowerRight += offset,
+               _upperLeft += offset, _upperRight += offset);    
+}
+
+void
+ImageOverlay::setNorth(double value_deg)
+{
+    _upperRight.y() = value_deg;
+    _upperLeft.y()  = value_deg;
+    clampLatitudes();
+    dirty();
+}
+
+void
+ImageOverlay::setSouth(double value_deg)
+{
+    _lowerRight.y() = value_deg;
+    _lowerLeft.y() = value_deg;
+    clampLatitudes();
+    dirty();
+}
+
+void
+ImageOverlay::setEast(double value_deg)
+{
+    _upperRight.x() = value_deg;
+    _lowerRight.x() = value_deg;
+    dirty();
+}
+
+void
+ImageOverlay::setWest(double value_deg)
+{
+    _lowerLeft.x() = value_deg;
+    _upperLeft.x() = value_deg;
+    dirty();
+}
+
+void
+ImageOverlay::setCorners(const osg::Vec2d& lowerLeft, const osg::Vec2d& lowerRight, 
+        const osg::Vec2d& upperLeft, const osg::Vec2d& upperRight)
+{
+    _lowerLeft = lowerLeft;
+    _lowerRight = lowerRight;
+    _upperLeft = upperLeft;
+    _upperRight = upperRight;
+    clampLatitudes();
+    
+    dirty();
+}
+
+osgEarth::Bounds
+ImageOverlay::getBounds() const
+{
+    osgEarth::Bounds bounds;
+    bounds.expandBy(_lowerLeft.x(), _lowerLeft.y());
+    bounds.expandBy(_lowerRight.x(), _lowerRight.y());
+    bounds.expandBy(_upperLeft.x(), _upperLeft.y());
+    bounds.expandBy(_upperRight.x(), _upperRight.y());
+    return bounds;
+}
+
+void ImageOverlay::setBounds(const osgEarth::Bounds &extent)
+{
+    setCorners(osg::Vec2d(extent.xMin(), extent.yMin()), osg::Vec2d(extent.xMax(), extent.yMin()),
+               osg::Vec2d(extent.xMin(), extent.yMax()), osg::Vec2d(extent.xMax(), extent.yMax()));
+}
+
+void
+ImageOverlay::setBoundsAndRotation(const osgEarth::Bounds& b, const Angular& rot)
+{
+    double rot_rad = rot.as(Units::RADIANS);
+
+    if ( osg::equivalent( rot_rad, 0.0 ) )
+    {
+        setBounds( b );
+    }
+    else
+    {
+        osg::Vec3d ll( b.xMin(), b.yMin(), 0 );
+        osg::Vec3d ul( b.xMin(), b.yMax(), 0 );
+        osg::Vec3d ur( b.xMax(), b.yMax(), 0 );
+        osg::Vec3d lr( b.xMax(), b.yMin(), 0 );
+
+        double sinR = sin(-rot_rad), cosR = cos(-rot_rad);
+
+        osg::Vec3d c( 0.5*(b.xMax()+b.xMin()), 0.5*(b.yMax()+b.yMin()), 0);
+
+        // there must be a better way, but my internet is down so i can't look it up with now..
+
+        osg::ref_ptr<const SpatialReference> srs = SpatialReference::create("wgs84");
+        osg::ref_ptr<const SpatialReference> utm = srs->createUTMFromLonLat( c.x(), c.y() );
+
+        osg::Vec3d ll_utm, ul_utm, ur_utm, lr_utm, c_utm;
+        
+        srs->transform( ll, utm.get(), ll_utm );
+        srs->transform( ul, utm.get(), ul_utm );
+        srs->transform( ur, utm.get(), ur_utm );
+        srs->transform( lr, utm.get(), lr_utm );
+        srs->transform( c,  utm.get(), c_utm  );
+
+        osg::Vec3d llp( cosR*(ll_utm.x()-c_utm.x()) - sinR*(ll_utm.y()-c_utm.y()), sinR*(ll_utm.x()-c_utm.x()) + cosR*(ll_utm.y()-c_utm.y()), 0 );
+        osg::Vec3d ulp( cosR*(ul_utm.x()-c_utm.x()) - sinR*(ul_utm.y()-c_utm.y()), sinR*(ul_utm.x()-c_utm.x()) + cosR*(ul_utm.y()-c_utm.y()), 0 );
+        osg::Vec3d urp( cosR*(ur_utm.x()-c_utm.x()) - sinR*(ur_utm.y()-c_utm.y()), sinR*(ur_utm.x()-c_utm.x()) + cosR*(ur_utm.y()-c_utm.y()), 0 );
+        osg::Vec3d lrp( cosR*(lr_utm.x()-c_utm.x()) - sinR*(lr_utm.y()-c_utm.y()), sinR*(lr_utm.x()-c_utm.x()) + cosR*(lr_utm.y()-c_utm.y()), 0 );    
+
+        utm->transform( (llp+c_utm), srs.get(), ll );
+        utm->transform( (ulp+c_utm), srs.get(), ul );
+        utm->transform( (urp+c_utm), srs.get(), ur );
+        utm->transform( (lrp+c_utm), srs.get(), lr );
+
+        setCorners( 
+            osg::Vec2d(ll.x(), ll.y()), 
+            osg::Vec2d(lr.x(), lr.y()),
+            osg::Vec2d(ul.x(), ul.y()),
+            osg::Vec2d(ur.x(), ur.y()) );
+    }
+}
+
+void
+ImageOverlay::setLowerLeft(double lon_deg, double lat_deg)
+{
+    _lowerLeft = osg::Vec2d(lon_deg, lat_deg);
+    clampLatitudes();
+    dirty();    
+}
+
+void
+ImageOverlay::setLowerRight(double lon_deg, double lat_deg)
+{
+    _lowerRight = osg::Vec2d(lon_deg, lat_deg);
+    clampLatitudes();
+    dirty();    
+}
+
+void
+ImageOverlay::setUpperRight(double lon_deg, double lat_deg)
+{
+    _upperRight = osg::Vec2d(lon_deg, lat_deg);
+    clampLatitudes();
+    dirty();
+}
+
+void
+ImageOverlay::setUpperLeft(double lon_deg, double lat_deg)
+{
+    _upperLeft = osg::Vec2d(lon_deg, lat_deg);
+    clampLatitudes();
+    dirty();
+}
+
+osg::Vec2d
+ImageOverlay::getControlPoint(ControlPoint controlPoint)
+{
+    switch (controlPoint)
+    {
+    case CONTROLPOINT_CENTER:
+        return getCenter();
+    case CONTROLPOINT_UPPER_LEFT:
+        return getUpperLeft();
+    case CONTROLPOINT_LOWER_LEFT:
+        return getLowerLeft();
+    case CONTROLPOINT_UPPER_RIGHT:
+        return getUpperRight();
+    case CONTROLPOINT_LOWER_RIGHT:
+        return getLowerRight();
+    default:
+        return getCenter();
+    }       
+}
+
+void
+ImageOverlay::setControlPoint(ControlPoint controlPoint, double lon_deg, double lat_deg,  bool singleVert)
+{
+    switch (controlPoint)
+    {
+    case CONTROLPOINT_CENTER:
+        return setCenter(lon_deg, lat_deg);
+        break;
+    case CONTROLPOINT_UPPER_LEFT:
+        if (singleVert)
+        {
+            setUpperLeft(lon_deg, lat_deg);
+        }
+        else
+        {
+            setNorth(lat_deg);
+            setWest(lon_deg);
+        }
+        break;
+    case CONTROLPOINT_LOWER_LEFT:
+        if (singleVert)
+        {
+            setLowerLeft(lon_deg, lat_deg);
+        }
+        else
+        {
+            setSouth(lat_deg);
+            setWest(lon_deg);
+        }
+        break;
+    case CONTROLPOINT_UPPER_RIGHT:
+        if (singleVert)
+        {
+            setUpperRight(lon_deg, lat_deg);
+        }
+        else
+        {
+            setNorth( lat_deg);
+            setEast( lon_deg );            
+        }
+        break;
+    case CONTROLPOINT_LOWER_RIGHT:
+        if (singleVert)
+        {
+            setLowerRight(lon_deg, lat_deg);
+        }
+        else
+        {
+            setSouth( lat_deg );
+            setEast( lon_deg );
+        }
+        break;
+    }
+}
+
+void
+ImageOverlay::traverse(osg::NodeVisitor &nv)
+{     
+    if (nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR && _dirty)
+    {
+        init();        
+    }
+    AnnotationNode::traverse(nv);
+}
+
+void ImageOverlay::dirty()
+{
+    {
+        OpenThreads::ScopedLock< OpenThreads::Mutex > lock(_mutex);
+        _dirty = true;
+    }
+
+    for( CallbackList::iterator i = _callbacks.begin(); i != _callbacks.end(); i++ )
+    {
+        i->get()->onOverlayChanged();
+    }
+}
+
+void 
+ImageOverlay::addCallback( ImageOverlayCallback* cb )
+{
+    if ( cb )
+        this->_callbacks.push_back( cb );
+}
+
+void 
+ImageOverlay::removeCallback( ImageOverlayCallback* cb )
+{
+    CallbackList::iterator i = std::find( _callbacks.begin(), _callbacks.end(), cb);
+    if (i != _callbacks.end())
+    {
+        _callbacks.erase( i );
+    }    
+}
+
+
+void
+ImageOverlay::reclamp( const TileKey& key, osg::Node* tile, const Terrain* )
+{
+    if ( _boundingPolytope.contains( tile->getBound() ) ) // intersects, actually
+    {
+        clampMesh( tile );
+        OE_DEBUG << LC << "Clamped overlay mesh, tile radius = " << tile->getBound().radius() << std::endl;
+    }
+}
+
+void
+ImageOverlay::clampMesh( osg::Node* terrainModel )
+{
+    double scale  = 1.0;
+    double offset = 0.0;
+    bool   relative = false;
+
+    if (_altitude.valid())
+    {
+        if ( _altitude->verticalScale().isSet() )
+            scale = _altitude->verticalScale()->eval();
+
+        if ( _altitude->verticalOffset().isSet() )
+            offset = _altitude->verticalOffset()->eval();
+
+        relative = _altitude->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+    }
+
+    MeshClamper clamper( terrainModel, getMapNode()->getMapSRS(), getMapNode()->isGeocentric(), relative, scale, offset );
+    this->accept( clamper );
+
+    this->dirtyBound();
+}
diff --git a/src/osgEarthAnnotation/ImageOverlayEditor b/src/osgEarthAnnotation/ImageOverlayEditor
new file mode 100644
index 0000000..5e76872
--- /dev/null
+++ b/src/osgEarthAnnotation/ImageOverlayEditor
@@ -0,0 +1,57 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ANNO_IMAGE_OVERLAY_EDITOR_H
+#define OSGEARTH_ANNO_IMAGE_OVERLAY_EDITOR_H
+
+#include <osgEarthAnnotation/Common>
+#include <osgEarthAnnotation/ImageOverlay>
+#include <osgEarth/Draggers>
+#include <osgEarth/MapNode>
+#include <osg/MatrixTransform>
+#include <osgGA/GUIEventHandler>
+
+namespace osgEarth { namespace Annotation
+{
+    class OSGEARTHANNO_EXPORT ImageOverlayEditor : public osg::Group
+    {
+    public:
+        typedef std::map< ImageOverlay::ControlPoint, osg::ref_ptr< Dragger > >  ControlPointDraggerMap;
+
+        ImageOverlayEditor(ImageOverlay* overlay);
+
+        ControlPointDraggerMap& getDraggers() { return _draggers; }
+
+        ImageOverlay* getOverlay() { return _overlay.get();}
+
+        void updateDraggers();
+
+    protected:
+
+        virtual ~ImageOverlayEditor();
+        void addDragger( ImageOverlay::ControlPoint controlPoint );
+
+        osg::ref_ptr< ImageOverlay > _overlay;
+        osg::ref_ptr< ImageOverlay::ImageOverlayCallback > _overlayCallback;
+        ControlPointDraggerMap _draggers;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_IMAGE_OVERLAY_EDITOR_H
+
diff --git a/src/osgEarthAnnotation/ImageOverlayEditor.cpp b/src/osgEarthAnnotation/ImageOverlayEditor.cpp
new file mode 100644
index 0000000..5977156
--- /dev/null
+++ b/src/osgEarthAnnotation/ImageOverlayEditor.cpp
@@ -0,0 +1,111 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthAnnotation/ImageOverlayEditor>
+#include <osg/Geode>
+#include <osg/io_utils>
+#include <osg/AutoTransform>
+#include <osg/ShapeDrawable>
+#include <osgViewer/Viewer>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+/***************************************************************************/
+
+
+class ImageOverlayDraggerCallback : public Dragger::PositionChangedCallback
+{
+public:
+    ImageOverlayDraggerCallback(ImageOverlay* overlay, ImageOverlay::ControlPoint controlPoint):
+      _overlay(overlay),
+      _controlPoint(controlPoint)
+      {}
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          //Convert to lat/lon
+          GeoPoint p;
+          position.transform(SpatialReference::create( "epsg:4326"), p);
+          _overlay->setControlPoint(_controlPoint, p.x(), p.y());
+      }
+
+      osg::ref_ptr<ImageOverlay>           _overlay;
+      ImageOverlay::ControlPoint _controlPoint;
+};
+
+struct OverlayCallback : public ImageOverlay::ImageOverlayCallback
+{
+    OverlayCallback(ImageOverlayEditor *editor)
+        : _editor(editor)
+    {
+    }
+
+    virtual void onOverlayChanged()
+    {
+        _editor->updateDraggers();
+    }
+
+    ImageOverlayEditor* _editor;    
+};
+
+/***************************************************************************/
+
+
+
+
+ImageOverlayEditor::ImageOverlayEditor(ImageOverlay* overlay):
+_overlay  (overlay)
+{   
+    _overlayCallback = new OverlayCallback(this);
+    _overlay->addCallback( _overlayCallback.get() );
+    addDragger( ImageOverlay::CONTROLPOINT_CENTER );
+    addDragger( ImageOverlay::CONTROLPOINT_LOWER_LEFT );
+    addDragger( ImageOverlay::CONTROLPOINT_LOWER_RIGHT );
+    addDragger( ImageOverlay::CONTROLPOINT_UPPER_LEFT );
+    addDragger( ImageOverlay::CONTROLPOINT_UPPER_RIGHT );
+}
+
+ImageOverlayEditor::~ImageOverlayEditor()
+{
+    _overlay->removeCallback( _overlayCallback.get() );
+}
+
+void
+ImageOverlayEditor::addDragger( ImageOverlay::ControlPoint controlPoint )
+{    
+    osg::Vec2d location = _overlay->getControlPoint( controlPoint );
+    
+    SphereDragger* dragger = new SphereDragger(_overlay->getMapNode());
+    dragger->setPosition( GeoPoint( SpatialReference::create( "epsg:4326"), location.x(), location.y()));
+    dragger->addPositionChangedCallback( new ImageOverlayDraggerCallback(_overlay.get(), controlPoint));
+    addChild(dragger);
+    _draggers[ controlPoint ] = dragger;
+}
+
+void
+ImageOverlayEditor::updateDraggers()
+{
+    for (ImageOverlayEditor::ControlPointDraggerMap::iterator itr = getDraggers().begin(); itr != getDraggers().end(); ++itr)
+    {
+        Dragger* dragger = itr->second.get();
+        //Get the location of the control point
+        osg::Vec2d location = getOverlay()->getControlPoint( itr->first );
+        dragger->setPosition( GeoPoint( SpatialReference::create( "epsg:4326"), location.x(), location.y()), false );
+    }
+}
diff --git a/src/osgEarthAnnotation/LabelNode b/src/osgEarthAnnotation/LabelNode
new file mode 100644
index 0000000..cb42564
--- /dev/null
+++ b/src/osgEarthAnnotation/LabelNode
@@ -0,0 +1,118 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ANNOTATION_LABEL_NODE_H
+#define OSGEARTH_ANNOTATION_LABEL_NODE_H 1
+
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarthSymbology/Style>
+#include <osgEarth/MapNode>
+
+namespace osgEarth { namespace Annotation
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Text labeling node.
+     */
+    class OSGEARTHANNO_EXPORT LabelNode : public OrthoNode
+    {
+    public:
+        META_AnnotationNode( osgEarthAnnotation, LabelNode );
+
+        /**
+         * Constructs a label node that is positioned relative to a map.
+         */
+        LabelNode(
+            MapNode*                mapNode,
+            const GeoPoint&         position,
+            const std::string&      text,
+            const Style&            style =Style() );
+
+        /**
+         * Constructs a label node that is positioned relative to a map.
+         */
+        LabelNode(
+            MapNode*                mapNode,
+            const GeoPoint&         position,
+            const std::string&      text,
+            const TextSymbol*       symbol );
+
+        /** 
+         * Construct a label node purely from the style. The text string
+         * must be in the text symbol
+         */
+        LabelNode(
+            MapNode*                mapNode,
+            const GeoPoint&         position,
+            const Style&            style );
+
+        /**
+         * Constructs a label node that is positioned some other way,
+         * typically by being in a subgraph under another transform
+         * somewhere.
+         */
+        LabelNode(
+            const std::string& text   ="",
+            const Style&       style =Style() );
+
+        /**
+         * Deserializes a label
+         */
+        LabelNode(
+            MapNode*              mapNode,
+            const Config&         conf,
+            const osgDB::Options* dbOptions );
+
+        virtual ~LabelNode() { }
+
+        /**
+         * Sets the text content.
+         */
+        void setText( const std::string& text );
+        const std::string& text() const { return _text; }
+
+        /**
+         * Gets the text style.
+         */
+        const Style style() const { return _style; }
+
+    public: // OrthoNode override
+
+        virtual void setAnnotationData( AnnotationData* data );
+
+        virtual void setDynamic( bool value );
+
+        virtual Config getConfig() const;
+
+    protected:
+        void init();
+
+        std::string       _text;
+        class osg::Geode* _geode;
+        Style             _style;
+
+        /** Copy constructor */
+        LabelNode( const LabelNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNOTATION_LABEL_NODE_H
diff --git a/src/osgEarthAnnotation/LabelNode.cpp b/src/osgEarthAnnotation/LabelNode.cpp
new file mode 100644
index 0000000..c1048fa
--- /dev/null
+++ b/src/osgEarthAnnotation/LabelNode.cpp
@@ -0,0 +1,195 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthSymbology/Color>
+#include <osgText/Text>
+#include <osg/Depth>
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+
+#define LC "[LabelNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+
+
+//-------------------------------------------------------------------
+
+LabelNode::LabelNode(MapNode*            mapNode,
+                     const GeoPoint&     position,
+                     const std::string&  text,
+                     const Style&        style ) :
+
+OrthoNode( mapNode, position ),
+_text    ( text ),
+_geode   ( 0L ),
+_style   ( style )
+{
+    init();
+}
+
+LabelNode::LabelNode(MapNode*            mapNode,
+                     const GeoPoint&     position,
+                     const std::string&  text,
+                     const TextSymbol*   symbol ) :
+
+OrthoNode( mapNode, position ),
+_text    ( text ),
+_geode   ( 0L )
+{
+    _style.add( const_cast<TextSymbol*>(symbol) );
+    init();
+}
+
+#if 0
+LabelNode::LabelNode(const SpatialReference* mapSRS,
+                     const GeoPoint&         position,
+                     const std::string&      text,
+                     const TextSymbol*       symbol ) :
+
+OrthoNode( mapSRS, position ),
+_text    ( text ),
+_geode   ( 0L )
+{
+    _style.add( const_cast<TextSymbol*>(symbol) );
+    init();
+}
+#endif
+
+LabelNode::LabelNode(const std::string&  text,
+                     const Style&        style ) :
+OrthoNode(),
+_text    ( text ),
+_geode   ( 0L ),
+_style   ( style )
+{
+    init();
+}
+
+LabelNode::LabelNode(MapNode*            mapNode,
+                     const GeoPoint&     position,
+                     const Style&        style ) :
+OrthoNode( mapNode, position ),
+_geode   ( 0L ),
+_style   ( style )
+{
+    init();
+}
+
+void
+LabelNode::init()
+{
+    const TextSymbol* symbol = _style.get<TextSymbol>();
+
+    if ( _text.empty() )
+        _text = symbol->content()->eval();
+
+    _geode = new osg::Geode();
+
+    osg::Drawable* t = AnnotationUtils::createTextDrawable( _text, symbol, osg::Vec3(0,0,0) );
+    _geode->addDrawable(t);
+
+    osg::StateSet* stateSet = _geode->getOrCreateStateSet();
+    stateSet->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), 1 );
+
+    getAttachPoint()->addChild( _geode );
+
+    AnnotationUtils::installAnnotationProgram( stateSet );
+
+    applyStyle( _style );
+}
+
+void
+LabelNode::setText( const std::string& text )
+{
+    if ( !_dynamic && getNumParents() > 0 )
+    {
+        OE_WARN << LC << "Illegal state: cannot change a LabelNode that is not dynamic" << std::endl;
+        return;
+    }
+
+    osgText::Text* d = dynamic_cast<osgText::Text*>(_geode->getDrawable(0));
+    if ( d )
+    {
+        d->setText( text );
+        d->dirtyDisplayList();
+    }
+}
+
+void
+LabelNode::setAnnotationData( AnnotationData* data )
+{
+    OrthoNode::setAnnotationData( data );
+
+    // override this method so we can attach the anno data to the drawables.
+    const osg::Geode::DrawableList& list = _geode->getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        i->get()->setUserData( data );
+    }
+}
+
+void
+LabelNode::setDynamic( bool dynamic )
+{
+    OrthoNode::setDynamic( dynamic );
+
+    osgText::Text* d = dynamic_cast<osgText::Text*>(_geode->getDrawable(0));
+    if ( d )
+    {
+        d->setDataVariance( dynamic ? osg::Object::DYNAMIC : osg::Object::STATIC );
+    }    
+}
+
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( label, osgEarth::Annotation::LabelNode );
+
+
+LabelNode::LabelNode(MapNode*               mapNode,
+                     const Config&         conf,
+                     const osgDB::Options* dbOptions ) :
+OrthoNode( mapNode, GeoPoint::INVALID )
+{
+    conf.getObjIfSet( "style",  _style );
+    conf.getIfSet   ( "text",   _text );
+
+    init();
+
+    if ( conf.hasChild("position") )
+        setPosition( GeoPoint(conf.child("position")) );
+}
+
+Config
+LabelNode::getConfig() const
+{
+    Config conf( "label" );
+    conf.add   ( "text",   _text );
+    conf.addObj( "style",  _style );
+    conf.addObj( "position", getPosition() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/LocalGeometryNode b/src/osgEarthAnnotation/LocalGeometryNode
new file mode 100644
index 0000000..1c8ca04
--- /dev/null
+++ b/src/osgEarthAnnotation/LocalGeometryNode
@@ -0,0 +1,81 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_LOCAL_GEOMETRY_NODE_H
+#define OSGEARTH_ANNO_LOCAL_GEOMETRY_NODE_H 1
+
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarth/MapNode>
+#include <osgEarthSymbology/Geometry>
+#include <osgEarthSymbology/Style>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Simple node that renders geometry into a scene graph node. The geometry
+     * is in a local tangent plane that may be positioned somewhere on the 
+     * Map's surface.
+     */
+    class OSGEARTHANNO_EXPORT LocalGeometryNode : public LocalizedNode
+    {
+    public:
+        /**
+         * Constructs a new localized node that renders a Geometry
+         */
+        LocalGeometryNode( 
+            MapNode*     mapNode,
+            Geometry*    geom, 
+            const Style& style, 
+            bool         draped     =false );
+
+        /**
+         * Construcst a new localized node that renders a pre-built
+         * node (in a local cartesian space)
+         */
+        LocalGeometryNode( 
+            MapNode*     mapNode,
+            osg::Node*   node, 
+            const Style& style      =Style(), 
+            bool         draped     =false );
+
+        virtual ~LocalGeometryNode() { }
+
+    public:
+
+        LocalGeometryNode(
+            MapNode*              mapNode,
+            const Config&         conf,
+            const osgDB::Options* dbOptions );
+
+        virtual Config getConfig() const;
+
+    protected:
+
+        optional<Style> _style;
+        bool  _draped;
+        osg::ref_ptr<Geometry> _geom;
+
+        void init(const osgDB::Options*);
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_LOCAL_GEOMETRY_NODE_H
diff --git a/src/osgEarthAnnotation/LocalGeometryNode.cpp b/src/osgEarthAnnotation/LocalGeometryNode.cpp
new file mode 100644
index 0000000..393267a
--- /dev/null
+++ b/src/osgEarthAnnotation/LocalGeometryNode.cpp
@@ -0,0 +1,138 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/LocalGeometryNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthFeatures/GeometryUtils>
+#include <osgEarthFeatures/MeshClamper>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/Utils>
+
+#define LC "[GeometryNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+
+
+LocalGeometryNode::LocalGeometryNode(MapNode*     mapNode,
+                                     Geometry*    geom,
+                                     const Style& style,
+                                     bool         draped ) :
+LocalizedNode( mapNode ),
+_geom        ( geom ),
+_draped      ( draped )
+{
+    _style = style;
+    init( 0L );
+}
+
+
+LocalGeometryNode::LocalGeometryNode(MapNode*     mapNode,
+                                     osg::Node*   content,
+                                     const Style& style,
+                                     bool         draped ) :
+LocalizedNode( mapNode ),
+_draped      ( draped )
+{
+    _style = style;
+
+    if ( content )
+    {
+        getChildAttachPoint()->addChild( content );
+        getDrapeable()->setDraped( _draped );
+
+        this->addChild( getRoot() );
+
+        // this will activate the clamping logic
+        applyStyle( style );
+    }
+}
+
+
+void
+LocalGeometryNode::init(const osgDB::Options* dbOptions)
+{
+    if ( _geom.valid() )
+    {
+        osg::ref_ptr<Feature> feature = new Feature( _geom.get(), 0L );
+        feature->style() = *_style;
+
+        GeometryCompiler compiler;
+        FilterContext cx( getMapNode() ? new Session(getMapNode()->getMap()) : 0L );
+        osg::Node* node = compiler.compile( feature.get(), cx );
+        if ( node )
+        {
+            getChildAttachPoint()->addChild( node );
+            getDrapeable()->setDraped( _draped );
+            this->addChild( getRoot() );
+
+            // prep for clamping
+            applyStyle( *_style );
+        }
+    }
+}
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( local_geometry, osgEarth::Annotation::LocalGeometryNode );
+
+
+LocalGeometryNode::LocalGeometryNode(MapNode*              mapNode,
+                                     const Config&         conf,
+                                     const osgDB::Options* dbOptions) :
+LocalizedNode( mapNode )
+{
+    if ( conf.hasChild("geometry") )
+    {
+        Config geomconf = conf.child("geometry");
+        _geom = GeometryUtils::geometryFromWKT( geomconf.value() );
+        if ( _geom.valid() )
+        {
+            conf.getObjIfSet( "style", _style );
+            _draped = conf.value<bool>("draped",false);
+
+            init( dbOptions );
+
+            if ( conf.hasChild("position") )
+                setPosition( GeoPoint(conf.child("position")) );
+        }
+    }
+}
+
+Config
+LocalGeometryNode::getConfig() const
+{
+    Config conf("local_geometry");
+
+    if ( _geom.valid() )
+    {
+        conf.add( Config("geometry", GeometryUtils::geometryToWKT(_geom.get())) );
+        conf.addObjIfSet( "style", _style );
+        conf.addObj( "position", getPosition() );
+    }
+    else
+    {
+        OE_WARN << LC << "Cannot serialize GeometryNode because it contains no geometry" << std::endl;
+    }
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/LocalizedNode b/src/osgEarthAnnotation/LocalizedNode
new file mode 100644
index 0000000..cf476c6
--- /dev/null
+++ b/src/osgEarthAnnotation/LocalizedNode
@@ -0,0 +1,144 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_LOCALIZED_NODE_H
+#define OSGEARTH_ANNO_LOCALIZED_NODE_H 1
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/GeoData>
+#include <osg/Transform>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    /**
+     * Base class for node that is localized at a specific geographic point.
+     */
+    class OSGEARTHANNO_EXPORT LocalizedNode : public PositionedAnnotationNode
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, LocalizedNode);
+
+        /**
+         * Constructs a new LocalizedNode.
+         *
+         * @param mapSRS  Spatial reference for position info
+         * @param pos     Initial position of the node (map coords)
+         * @param is2D    Whether to autotransform the node to face/scale to the screen
+         */
+        LocalizedNode( 
+            MapNode*          mapNode  =0L,
+            const GeoPoint&   pos      =GeoPoint::INVALID,
+            bool              is2D     =false );
+
+        LocalizedNode(
+            MapNode*          mapNode,
+            const osg::Vec3d& pos,
+            bool              is2D    =false );
+
+        LocalizedNode(
+            MapNode*          mapNode,
+            const Config&     conf );
+
+        virtual ~LocalizedNode() { }
+
+
+    public: // PositionedAnnotationNode
+
+        /** Sets the node position */
+        virtual bool setPosition( const GeoPoint& p );
+
+        /** Gets the node position (in map coords) */
+        virtual GeoPoint getPosition() const;
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+    public: // osg::Node
+
+        virtual void traverse( osg::NodeVisitor& nv );
+
+    public:
+        /**
+         * Sets a "local offset" position - for an ECEF map, this is an offset in 
+         * the local tangent plane of the node that is applied to the geometry.
+         */
+        void setLocalOffset( const osg::Vec3d& offset );
+
+        /**
+         * Gets the local tangent plane -space offset.
+         */
+        const osg::Vec3d& getLocalOffset() const;
+
+        /**
+         * Sets a local rotation - a rotation relative to the local tangent plane
+         * of the geometry.
+         */
+        void setLocalRotation( const osg::Quat& rotation );
+
+        /**
+         * Gets the local tangent plane -space rotation.
+         */
+        const osg::Quat& getLocalRotation() const;
+
+        /**
+         * Enables or disable automatic horizon culling
+         */
+        void setHorizonCulling( bool value );
+        bool getHorizonCulling() const;
+
+        void setScale( const osg::Vec3f& scale );
+
+        const osg::Vec3f& getScale() const { return _scale; }
+
+        virtual osg::Group* getRoot() { return _draper.get(); }
+
+        virtual osg::Group* getChildAttachPoint() { return _xform.get(); }
+
+        virtual osg::Transform* getTransform() { return _xform.get(); }
+
+        virtual DrapeableNode* getDrapeable() { return _draper.get(); }
+
+    protected:
+        osg::ref_ptr<osg::Transform> _xform;
+        osg::ref_ptr<DrapeableNode> _draper;
+        bool _horizonCulling;
+        bool _autoTransform;
+        GeoPoint _mapPosition;
+        osg::Vec3f _scale;
+        osg::Vec3d _localOffset;
+        osg::Quat  _localRotation;
+
+        friend class Decoration;
+        
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain );
+
+            
+        // copy constructor
+        LocalizedNode(const LocalizedNode& rhs, const osg::CopyOp& op=osg::CopyOp::DEEP_COPY_ALL) { }
+
+        bool updateTransforms(const GeoPoint& absPt, osg::Node* patch =0L);
+        
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_LOCALIZED_NODE_H
diff --git a/src/osgEarthAnnotation/LocalizedNode.cpp b/src/osgEarthAnnotation/LocalizedNode.cpp
new file mode 100644
index 0000000..4b13c80
--- /dev/null
+++ b/src/osgEarthAnnotation/LocalizedNode.cpp
@@ -0,0 +1,257 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/MapNode>
+#include <osg/AutoTransform>
+#include <osg/MatrixTransform>
+
+#define LC "[LocalizedNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+
+LocalizedNode::LocalizedNode(MapNode*                mapNode,
+                             const GeoPoint&         position,
+                             bool                    is2D ) :
+PositionedAnnotationNode( mapNode ),
+_horizonCulling         ( false ),
+_autoTransform          ( is2D ),
+_scale                  ( 1.0f, 1.0f, 1.0f )
+{
+    if ( _autoTransform )
+    {
+        osg::AutoTransform* at = new osg::AutoTransform();
+        at->setAutoRotateMode( osg::AutoTransform::ROTATE_TO_SCREEN );
+        at->setAutoScaleToScreen( true );
+        at->setCullingActive( false ); // just for the first pass
+        _xform = at;
+    }
+    else
+    {
+        _xform = new osg::MatrixTransform();
+
+        this->getOrCreateStateSet()->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
+    }
+    
+    this->getOrCreateStateSet()->setMode( GL_BLEND, 1 );
+
+    setHorizonCulling( true );
+
+    _draper = new DrapeableNode( mapNode, false );
+    _draper->addChild( _xform.get() );
+    
+    setPosition( position );
+}
+
+void
+LocalizedNode::setMapNode( MapNode* mapNode )
+{
+    if ( getMapNode() != mapNode )
+    {
+        PositionedAnnotationNode::setMapNode( mapNode );
+
+        // The horizon culler depends on the map node, so reinitialize it:
+        if ( _horizonCulling )
+        {
+            setHorizonCulling( false );
+            setHorizonCulling( true );
+        }
+
+        // re-apply the position since the map has changed
+        setPosition( getPosition() );
+    }
+}
+
+void
+LocalizedNode::traverse( osg::NodeVisitor& nv )
+{
+    if ( _autoTransform && nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
+    {
+       _xform->setCullingActive( true );
+    }
+    
+    AnnotationNode::traverse( nv );
+}
+
+bool
+LocalizedNode::setPosition( const GeoPoint& pos )
+{
+    if ( getMapNode() )
+    {
+        // first transform the point to the map's SRS:
+        const SpatialReference* mapSRS = getMapNode()->getMapSRS();
+        GeoPoint mapPos = mapSRS ? pos.transform(mapSRS) : pos;
+        if ( !mapPos.isValid() )
+            return false;
+
+        _mapPosition = mapPos;
+    }
+    else
+    {
+        _mapPosition = pos;
+    }
+
+    // make sure the node is set up for auto-z-update if necessary:
+    configureForAltitudeMode( _mapPosition.altitudeMode() );
+
+    // update the node.
+    if ( !updateTransforms( _mapPosition ) )
+        return false;
+
+    return true;
+}
+
+void
+LocalizedNode::setScale( const osg::Vec3f& scale )
+{
+    _scale = scale;
+    updateTransforms( getPosition() );
+}
+
+bool
+LocalizedNode::updateTransforms( const GeoPoint& p, osg::Node* patch )
+{
+    if ( p.isValid() )
+    {
+        GeoPoint absPos(p);
+        if ( !makeAbsolute(absPos, patch) )
+            return false;
+
+        OE_DEBUG << LC << "Update transforms for position: " << absPos.x() << ", " << absPos.y() << ", " << absPos.z()
+            << std::endl;
+
+        osg::Matrixd local2world;
+        absPos.createLocalToWorld( local2world );
+        
+        // apply the local offsets
+        local2world.preMult( osg::Matrix::translate(_localOffset) );
+
+        if ( _autoTransform )
+        {
+            static_cast<osg::AutoTransform*>(_xform.get())->setPosition( local2world.getTrans() );
+            static_cast<osg::AutoTransform*>(_xform.get())->setScale( _scale );
+            static_cast<osg::AutoTransform*>(_xform.get())->setRotation( _localRotation );
+        }
+        else
+        {
+            static_cast<osg::MatrixTransform*>(_xform.get())->setMatrix( 
+                osg::Matrix::scale(_scale) * 
+                osg::Matrix::rotate(_localRotation) *
+                local2world  );
+        }
+
+        
+        CullNodeByHorizon* culler = dynamic_cast<CullNodeByHorizon*>(_xform->getCullCallback());
+        if ( culler )
+            culler->_world = local2world.getTrans();
+    }
+    else
+    {
+        osg::Vec3d absPos = p.vec3d() + _localOffset;
+
+        if ( _autoTransform )
+        {
+            static_cast<osg::AutoTransform*>(_xform.get())->setPosition( absPos );
+            static_cast<osg::AutoTransform*>(_xform.get())->setScale( _scale );
+            static_cast<osg::AutoTransform*>(_xform.get())->setRotation( _localRotation );
+        }
+        else
+        {
+            static_cast<osg::MatrixTransform*>(_xform.get())->setMatrix(
+                osg::Matrix::scale(_scale) * 
+                osg::Matrix::rotate(_localRotation) *
+                osg::Matrix::translate(absPos) );
+        }
+    }
+    
+
+    dirtyBound();
+
+    return true;
+}
+
+GeoPoint
+LocalizedNode::getPosition() const
+{
+    return _mapPosition;
+}
+
+void
+LocalizedNode::setLocalOffset( const osg::Vec3d& offset )
+{
+    _localOffset = offset;
+    setPosition( _mapPosition );
+}
+
+const osg::Vec3d&
+LocalizedNode::getLocalOffset() const
+{
+    return _localOffset;
+}
+
+void
+LocalizedNode::setLocalRotation( const osg::Quat& rotation )
+{
+    _localRotation = rotation;
+    setPosition( _mapPosition );
+}
+
+const osg::Quat&
+LocalizedNode::getLocalRotation() const
+{
+    return _localRotation;
+}
+
+void
+LocalizedNode::setHorizonCulling( bool value )
+{
+    if ( _horizonCulling != value )
+    {
+        _horizonCulling = value;
+
+        if ( _horizonCulling && getMapNode() && getMapNode()->isGeocentric() )
+        {
+            osg::Vec3d world;
+            if ( _autoTransform )
+                world = static_cast<osg::AutoTransform*>(_xform.get())->getPosition();
+            else
+                world = static_cast<osg::MatrixTransform*>(_xform.get())->getMatrix().getTrans();
+
+            _xform->setCullCallback( new CullNodeByHorizon(world, getMapNode()->getMapSRS()->getEllipsoid()) );
+        }
+        else
+        {
+            _xform->removeCullCallback( _xform->getCullCallback() );
+        }
+    }
+}
+
+void
+LocalizedNode::reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain )
+{
+    // first verify that the control position intersects the tile:
+    if ( key.getExtent().contains( _mapPosition.x(), _mapPosition.y() ) )
+    {
+        updateTransforms(_mapPosition, tile);
+    }
+}
diff --git a/src/osgEarthAnnotation/ModelNode b/src/osgEarthAnnotation/ModelNode
new file mode 100644
index 0000000..f139682
--- /dev/null
+++ b/src/osgEarthAnnotation/ModelNode
@@ -0,0 +1,68 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_MODEL_NODE_H
+#define OSGEARTH_ANNO_MODEL_NODE_H 1
+
+#include <osgEarthAnnotation/LocalGeometryNode>
+#include <osgEarth/URI>
+#include <osgEarth/CachePolicy>
+#include <osgDB/ReaderWriter>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Annotation node that loads a 3D model from a URI and places it
+     * at a geo location.
+     */
+    class OSGEARTHANNO_EXPORT ModelNode : public LocalizedNode
+    {
+    public:
+        /**
+         * Constructs a model node; the style must contain an InstanceSymbol
+         * (ModelSymbol or IconSymbol) to produce a valid node.
+         */
+        ModelNode(
+            MapNode*              mapNode,
+            const Style&          style,
+            const osgDB::Options* dbOptions   =0L );
+
+        virtual ~ModelNode() { }
+
+    public:
+
+        ModelNode(
+            MapNode*              mapNode,
+            const Config&         conf,
+            const osgDB::Options* dbOptions );
+
+        virtual Config getConfig() const;
+
+    protected:
+
+        optional<Style> _style;
+
+        void init(const osgDB::Options*);
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_LOCAL_GEOMETRY_NODE_H
diff --git a/src/osgEarthAnnotation/ModelNode.cpp b/src/osgEarthAnnotation/ModelNode.cpp
new file mode 100644
index 0000000..8430c7a
--- /dev/null
+++ b/src/osgEarthAnnotation/ModelNode.cpp
@@ -0,0 +1,154 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/ModelNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthSymbology/Style>
+#include <osgEarthSymbology/InstanceSymbol>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderGenerator>
+
+#define LC "[ModelNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+
+
+//------------------------------------------------------------------------
+
+
+ModelNode::ModelNode(MapNode*              mapNode,
+                     const Style&          style,
+                     const osgDB::Options* dbOptions ) :
+LocalizedNode( mapNode )
+{
+    _style = style;
+    init( dbOptions );
+}
+
+
+void
+ModelNode::init(const osgDB::Options* dbOptions)
+{
+    this->setHorizonCulling(false);
+
+    osg::ref_ptr<const ModelSymbol> sym = _style->get<ModelSymbol>();
+    
+    // backwards-compatibility: support for MarkerSymbol (deprecated)
+    if ( !sym.valid() && _style->has<MarkerSymbol>() )
+    {
+        osg::ref_ptr<InstanceSymbol> temp = _style->get<MarkerSymbol>()->convertToInstanceSymbol();
+        sym = dynamic_cast<const ModelSymbol*>( temp.get() );
+    }
+
+    if ( sym.valid() )
+    {
+        if ( sym->url().isSet() )
+        {
+            URI uri( sym->url()->eval(), sym->url()->uriContext() );
+            osg::Node* node = 0L;
+            
+            if ( sym->uriAliasMap()->empty() )
+            {
+                node = uri.getNode( dbOptions );
+            }
+            else
+            {
+                // install an alias map if there's one in the symbology.
+                osg::ref_ptr<osgDB::Options> tempOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+                tempOptions->setReadFileCallback( new URIAliasMapReadCallback(*sym->uriAliasMap(), uri.full()) );
+                node = uri.getNode( tempOptions.get() );
+            }
+
+            if ( node )
+            {
+                ShaderGenerator gen;
+                node->accept( gen );
+
+                getTransform()->addChild( node );
+                this->addChild( getTransform() );
+
+                if ( sym->scale().isSet() )
+                {
+                    double s = sym->scale()->eval();
+                    this->setScale( osg::Vec3f(s, s, s) );
+                }
+
+                if (sym && (sym->heading().isSet() || sym->pitch().isSet() || sym->roll().isSet()) )
+                {
+                    osg::Matrix rot;
+                    double heading = sym->heading().isSet() ? sym->heading()->eval() : 0.0;
+                    double pitch   = sym->pitch().isSet()   ? sym->pitch()->eval()   : 0.0;
+                    double roll    = sym->roll().isSet()    ? sym->roll()->eval()    : 0.0;
+                    rot.makeRotate( 
+                        osg::DegreesToRadians(heading), osg::Vec3(0,0,1),
+                        osg::DegreesToRadians(pitch),   osg::Vec3(1,0,0),
+                        osg::DegreesToRadians(roll),    osg::Vec3(0,1,0) );
+                    this->setLocalRotation( rot.getRotate() );
+                }
+
+                applyStyle( *_style );
+            }
+            else
+            {
+                OE_WARN << LC << "Failed to load data from " << uri.full() << std::endl;
+            }
+        }
+        else
+        {
+            OE_WARN << LC << "Symbology: no URI" << std::endl;
+        }
+    }
+    else
+    {
+        OE_WARN << LC << "Insufficient symbology" << std::endl;
+    }
+}
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( model, osgEarth::Annotation::ModelNode );
+
+
+ModelNode::ModelNode(MapNode* mapNode, const Config& conf, const osgDB::Options* dbOptions) :
+LocalizedNode( mapNode )
+{
+    conf.getObjIfSet( "style", _style );
+
+    std::string uri = conf.value("url");
+    if ( !uri.empty() )
+        _style->getOrCreate<ModelSymbol>()->url() = StringExpression(uri);
+
+    init( dbOptions );
+
+    if ( conf.hasChild( "position" ) )
+        setPosition( GeoPoint(conf.child("position")) );
+}
+
+Config
+ModelNode::getConfig() const
+{
+    Config conf("model");
+
+    conf.updateObjIfSet( "style",    _style );
+    conf.updateObj     ( "position", getPosition() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/OrthoNode b/src/osgEarthAnnotation/OrthoNode
new file mode 100644
index 0000000..47c0580
--- /dev/null
+++ b/src/osgEarthAnnotation/OrthoNode
@@ -0,0 +1,144 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNO_ORTHO_NODE_H
+#define OSGEARTH_ANNO_ORTHO_NODE_H 1
+
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarth/SpatialReference>
+#include <osgEarth/CullingUtils>
+#include <osg/AutoTransform>
+#include <osg/MatrixTransform>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    /**
+     * Base class for an annotation node that it drawn in screen-space
+     * (as an orthographic overlay)
+     */
+    class OSGEARTHANNO_EXPORT OrthoNode : public PositionedAnnotationNode, public SupportsDecluttering
+    {
+    public:
+        META_AnnotationNode( osgEarthAnnotation, OrthoNode );
+
+        /**
+         * Constructs an relative-position ortho node
+         */
+        OrthoNode();
+
+        /**
+         * Constructs an ortho node that resides at an absolute position on the map
+         * @param mapNode  MapNode used to referenced the ortho node
+         * @param position Starting position
+         */
+        OrthoNode( 
+            MapNode*        mapNode, 
+            const GeoPoint& position );
+
+        /**
+         * Constructs an ortho node that resides at an absolute position on the map
+         */
+#if 0
+        OrthoNode(
+            const SpatialReference* mapSRS, 
+            const GeoPoint&         position );
+#endif
+
+        virtual ~OrthoNode() { }
+
+        /**
+         * Attaches a child node to the transforms. Use this instead of addChild.
+         */
+        virtual osg::Group* getAttachPoint() { return _attachPoint; }
+
+
+    public: // PositionedAnnotationNode
+
+        /** Sets the node position */
+        virtual bool setPosition( const GeoPoint& pos );
+
+        /** Gets the position (in map coordinates) of the node */
+        virtual GeoPoint getPosition() const;
+
+    public:
+        /**
+         * Sets a "local offset" position - for an ECEF map, this is an offset in 
+         * the local tangent plane of the node that is applied to the geometry.
+         */
+        void setLocalOffset( const osg::Vec3d& offset );
+
+        /**
+         * Gets the local tangent plane -space offset.
+         */
+        const osg::Vec3d& getLocalOffset() const;
+
+        /**
+         * Enables or disable automatic horizon culling
+         */
+        void setHorizonCulling( bool value );
+        bool getHorizonCulling() const;
+
+        /**
+         * Enables or disables ray based occlusion culling
+         */
+        bool getOcclusionCulling() const;
+        void setOcclusionCulling( bool value );
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+    public: // osg::Node
+
+        virtual void traverse( osg::NodeVisitor& nv );
+
+        virtual osg::BoundingSphere computeBound() const;
+
+    private:
+        osg::Switch*                   _switch;
+        osg::Group*                    _oq;
+        osg::AutoTransform*            _autoxform;
+        osg::MatrixTransform*          _matxform;
+        osg::Group*                    _attachPoint;
+        bool                           _horizonCulling;
+        bool                           _occlusionCulling;
+        GeoPoint                       _mapPosition;
+        osg::Vec3d                     _localOffset;
+
+        osg::ref_ptr< CullNodeByHorizon > _horizonCuller;
+        osg::ref_ptr< OcclusionCullingCallback > _occlusionCuller;
+
+        void init();
+
+        osg::Vec3d adjustOcclusionCullingPoint( const osg::Vec3d& world );
+
+        // required by META_Node, but this object is not cloneable
+        OrthoNode( const OrthoNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
+
+        // autoclamping.
+        virtual void reclamp( const TileKey& key, osg::Node* tile, const Terrain* );
+
+        bool updateTransforms( const GeoPoint& mappos, osg::Node* patch =0L );
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_LOCALIZED_NODE_H
diff --git a/src/osgEarthAnnotation/OrthoNode.cpp b/src/osgEarthAnnotation/OrthoNode.cpp
new file mode 100644
index 0000000..75d62d3
--- /dev/null
+++ b/src/osgEarthAnnotation/OrthoNode.cpp
@@ -0,0 +1,433 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/AnnotationSettings>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthSymbology/Color>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/MapNode>
+#include <osgText/Text>
+#include <osg/ComputeBoundsVisitor>
+#include <osgUtil/IntersectionVisitor>
+#include <osg/OcclusionQueryNode>
+#include <osg/Point>
+#include <osg/Depth>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct OrthoOQNode : public osg::OcclusionQueryNode
+    {
+        OrthoOQNode( const std::string& name ) 
+        {
+            setName( name );
+            setVisibilityThreshold(1);
+            setDebugDisplay(true);
+            setCullingActive(false);
+        }
+
+        virtual osg::BoundingSphere computeBound() const
+        {
+            {
+                // Need to make this routine thread-safe. Typically called by the update
+                //   Visitor, or just after the update traversal, but could be called by
+                //   an application thread or by a non-osgViewer application.
+                Threading::ScopedMutexLock lock( _computeBoundMutex );
+
+                // This is the logical place to put this code, but the method is const. Cast
+                //   away constness to compute the bounding box and modify the query geometry.
+                OrthoOQNode* nonConstThis = const_cast<OrthoOQNode*>( this );
+
+                osg::ref_ptr<osg::Vec3Array> v = new osg::Vec3Array(1);
+                (*v)[0].set( _xform->getMatrix().getTrans() );
+
+                osg::Geometry* geom = static_cast< osg::Geometry* >( nonConstThis->_queryGeode->getDrawable( 0 ) );
+                geom->setVertexArray( v.get() );
+                geom->getPrimitiveSetList().clear();
+                geom->addPrimitiveSet( new osg::DrawArrays(GL_POINTS,0,1) );
+                nonConstThis->getQueryStateSet()->setAttributeAndModes(new osg::Point(15), 1);
+                nonConstThis->getQueryStateSet()->setBinNumber(INT_MAX);
+
+                geom = static_cast< osg::Geometry* >( nonConstThis->_debugGeode->getDrawable( 0 ) );
+                geom->setVertexArray( v.get() );
+                geom->getPrimitiveSetList().clear();
+                geom->addPrimitiveSet( new osg::DrawArrays(GL_POINTS,0,1) );
+                nonConstThis->getDebugStateSet()->setAttributeAndModes(new osg::Point(15), 1);
+                osg::Depth* d = new osg::Depth( osg::Depth::LEQUAL, 0.f, 1.f, false );
+                nonConstThis->getDebugStateSet()->setAttributeAndModes( d, osg::StateAttribute::ON | osg::StateAttribute::PROTECTED);
+                (*dynamic_cast<osg::Vec4Array*>(geom->getColorArray()))[0].set(1,0,0,1);
+            }
+
+            return Group::computeBound();
+        }
+
+        osg::MatrixTransform* _xform;
+    };
+}
+
+//------------------------------------------------------------------------
+
+
+OrthoNode::OrthoNode(MapNode*        mapNode,
+                     const GeoPoint& position ) :
+
+PositionedAnnotationNode( mapNode ),
+_horizonCulling         ( false ),
+_occlusionCulling       ( false )
+{
+    init();
+    setHorizonCulling( true );
+    setPosition( position );
+}
+
+
+OrthoNode::OrthoNode() :
+_horizonCulling  ( false ),
+_occlusionCulling( false )
+{
+    init();
+    setHorizonCulling( true );
+}
+
+//#define TRY_OQ 1
+#undef TRY_OQ
+
+void
+OrthoNode::init()
+{
+    _switch = new osg::Switch();
+
+    // install it, but deactivate it until we can get it to work.
+#ifdef TRY_OQ
+    OrthoOQNode* oq = new OrthoOQNode("");
+    oq->setQueriesEnabled(true);
+    _oq = oq;
+    _oq->addChild( _switch );
+    this->addChild( _oq );
+#else
+    this->addChild( _switch );
+#endif
+
+    //_oq->addChild( _switch );
+    //this->addChild( _oq );
+
+    _autoxform = new AnnotationUtils::OrthoNodeAutoTransform();
+    _autoxform->setAutoRotateMode( osg::AutoTransform::ROTATE_TO_SCREEN );
+    _autoxform->setAutoScaleToScreen( true );
+    _autoxform->setCullingActive( false ); // for the first pass
+    _switch->addChild( _autoxform );
+
+    _matxform = new osg::MatrixTransform();
+    _switch->addChild( _matxform );
+
+#ifdef TRY_OQ
+    oq->_xform = _matxform;
+#endif
+
+    _switch->setSingleChildOn( 0 );
+
+    _attachPoint = new osg::Group();
+
+    _autoxform->addChild( _attachPoint );
+    _matxform->addChild( _attachPoint );
+
+    this->getOrCreateStateSet()->setMode( GL_LIGHTING, 0 );
+}
+
+void
+OrthoNode::traverse( osg::NodeVisitor& nv )
+{
+    osgUtil::CullVisitor* cv = 0L;
+
+    if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
+    {
+        cv = static_cast<osgUtil::CullVisitor*>( &nv );
+
+        // make sure that we're NOT using the AutoTransform if this node is in the decluttering bin;
+        // the decluttering bin automatically manages screen space transformation.
+        bool declutter = cv->getCurrentRenderBin()->getName() == OSGEARTH_DECLUTTER_BIN;
+        if ( declutter && _switch->getValue(0) == 1 )
+        {
+            _switch->setSingleChildOn( 1 );
+        }
+        else if ( !declutter && _switch->getValue(0) == 0 )
+        {
+            _switch->setSingleChildOn( 0 );
+        }
+
+        // If decluttering is enabled, update the auto-transform but not its children.
+        // This is necessary to support picking/selection. An optimization would be to
+        // disable this pass when picking is not in use
+        if ( declutter )
+        {
+            static_cast<AnnotationUtils::OrthoNodeAutoTransform*>(_autoxform)->acceptCullNoTraverse( cv );
+        }
+
+        // turn off small feature culling
+        cv->setSmallFeatureCullingPixelSize(0.0f);
+
+        AnnotationNode::traverse( nv );
+
+        if ( this->getCullingActive() == false )
+            this->setCullingActive( true );
+    }
+    
+    // For an intersection visitor, ALWAYS traverse the autoxform instead of the 
+    // matrix transform. The matrix transform is only used in combination with the 
+    // decluttering engine, so it cannot properly support picking of decluttered
+    // objects
+    else if ( 
+        nv.getVisitorType() == osg::NodeVisitor::NODE_VISITOR &&
+        dynamic_cast<osgUtil::IntersectionVisitor*>( &nv ) )
+    {
+        if ( static_cast<AnnotationUtils::OrthoNodeAutoTransform*>(_autoxform)->okToIntersect() )
+        {
+            _autoxform->accept( nv );
+        }
+    }
+
+    else
+    {
+        AnnotationNode::traverse( nv );
+    }
+}
+
+osg::BoundingSphere
+OrthoNode::computeBound() const
+{
+    return osg::BoundingSphere(_matxform->getMatrix().getTrans(), 1000.0);
+}
+
+void
+OrthoNode::setMapNode( MapNode* mapNode )
+{
+    MapNode* oldMapNode = getMapNode();
+    if ( oldMapNode != mapNode )
+    {
+        PositionedAnnotationNode::setMapNode( mapNode );
+
+        // the occlusion culler depends on the mapnode, so re-initialize it:
+        if ( _occlusionCulling )
+        {
+            setOcclusionCulling( false );
+            setOcclusionCulling( true );
+        }
+
+        // same goes for the horizon culler:
+        if ( _horizonCulling || (oldMapNode == 0L && mapNode->isGeocentric()) )
+        {
+            setHorizonCulling( false );
+            setHorizonCulling( true );
+        }
+
+        // re-apply the position since the map has changed
+        setPosition( getPosition() );
+    }
+}
+
+bool
+OrthoNode::setPosition( const GeoPoint& position )
+{
+    MapNode* mapNode = getMapNode();
+    if ( mapNode )
+    {
+        // first transform the point to the map's SRS:
+        const SpatialReference* mapSRS = mapNode->getMapSRS();
+        GeoPoint mapPos = mapSRS ? position.transform(mapSRS) : position;
+        if ( !mapPos.isValid() )
+            return false;
+
+        _mapPosition = mapPos;
+    }
+    else
+    {
+        _mapPosition = position;
+    }
+
+    // make sure the node is set up for auto-z-update if necessary:
+    configureForAltitudeMode( _mapPosition.altitudeMode() );
+
+    // and update the node.
+    if ( !updateTransforms(_mapPosition) )
+        return false;
+
+    return true;
+}
+
+bool
+OrthoNode::updateTransforms( const GeoPoint& p, osg::Node* patch )
+{
+    if ( getMapNode() )
+    {
+        //OE_NOTICE << "updateTransforms" << std::endl;
+        // make sure the point is absolute to terrain
+        GeoPoint absPos(p);
+        if ( !makeAbsolute(absPos, patch) )
+            return false;
+
+        osg::Matrixd local2world;
+        if ( !absPos.createLocalToWorld(local2world) )
+            return false;
+
+        // apply the local tangent plane offset:
+        local2world.preMult( osg::Matrix::translate(_localOffset) );
+
+        // update the xforms:
+        _autoxform->setPosition( local2world.getTrans() );
+        _matxform->setMatrix( local2world );
+        
+        osg::Vec3d world = local2world.getTrans();
+        if (_horizonCuller.valid())
+        {
+            _horizonCuller->_world = world;
+        }
+
+        if (_occlusionCuller.valid())
+        {                                
+            _occlusionCuller->setWorld( adjustOcclusionCullingPoint( world ));
+        } 
+    }
+    else
+    {
+        osg::Vec3d absPos = p.vec3d() + _localOffset;
+        _autoxform->setPosition( absPos );
+        _matxform->setMatrix( osg::Matrix::translate(absPos) );
+    }
+
+    dirtyBound();
+    return true;
+}
+
+GeoPoint
+OrthoNode::getPosition() const
+{
+    return _mapPosition;
+}
+
+void
+OrthoNode::setLocalOffset( const osg::Vec3d& offset )
+{
+    _localOffset = offset;
+    setPosition( _mapPosition );
+}
+
+const osg::Vec3d&
+OrthoNode::getLocalOffset() const
+{
+    return _localOffset;
+}
+
+bool
+OrthoNode::getHorizonCulling() const
+{
+    return _horizonCulling;
+}
+
+void
+OrthoNode::setHorizonCulling( bool value )
+{
+    if ( _horizonCulling != value )
+    {
+        _horizonCulling = value;
+
+        if ( _horizonCulling && getMapNode() && getMapNode()->isGeocentric() )
+        {
+            osg::Vec3d world = _autoxform->getPosition();
+
+            _horizonCuller = new CullNodeByHorizon(world, getMapNode()->getMapSRS()->getEllipsoid());
+            addCullCallback( _horizonCuller.get()  );
+        }
+        else
+        {
+            if (_horizonCuller.valid())
+            {
+                removeCullCallback( _horizonCuller.get() );
+                _horizonCuller = 0;
+            }
+        }
+    }
+}
+
+osg::Vec3d
+OrthoNode::adjustOcclusionCullingPoint( const osg::Vec3d& world )
+{
+    // Adjust the height by a little bit "up", we can't have the occlusion point sitting right on the ground
+    if ( getMapNode() )
+    {
+        const osg::EllipsoidModel* em = getMapNode()->getMapSRS()->getEllipsoid();
+        osg::Vec3d up = em ? em->computeLocalUpVector( world.x(), world.y(), world.z() ) : osg::Vec3d(0,0,1);
+        osg::Vec3d adjust = up * 0.1;
+        return world + adjust;
+    }
+    else
+    {
+        return world;
+    }
+}
+
+bool
+OrthoNode::getOcclusionCulling() const
+{
+    return _occlusionCulling;
+}
+
+void
+OrthoNode::setOcclusionCulling( bool value )
+{
+    if (_occlusionCulling != value)
+    {
+        _occlusionCulling = value;
+
+        if ( _occlusionCulling && getMapNode() )
+        {
+            osg::Vec3d world = _autoxform->getPosition();
+            _occlusionCuller = new OcclusionCullingCallback(adjustOcclusionCullingPoint(world), getMapNode());
+            _occlusionCuller->setMaxRange( AnnotationSettings::getOcclusionQueryMaxRange() );
+            addCullCallback( _occlusionCuller.get()  );
+        }
+        else
+        {
+            if (_occlusionCulling)
+            {
+                if (_occlusionCuller.valid())
+                {
+                    removeCullCallback( _occlusionCuller.get() );
+                    _occlusionCuller = 0;
+                }
+            }
+        }
+    }
+}
+
+void
+OrthoNode::reclamp( const TileKey& key, osg::Node* tile, const Terrain* terrain )
+{
+    // first verify that the label position intersects the tile:
+    if ( key.getExtent().contains( _mapPosition.x(), _mapPosition.y() ) )
+    {
+        updateTransforms( _mapPosition, tile );
+    }
+}
diff --git a/src/osgEarthAnnotation/PlaceNode b/src/osgEarthAnnotation/PlaceNode
new file mode 100644
index 0000000..f651f77
--- /dev/null
+++ b/src/osgEarthAnnotation/PlaceNode
@@ -0,0 +1,118 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_PLACE_NODE_H
+#define OSGEARTH_ANNOTATION_PLACE_NODE_H 1
+
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarthSymbology/Style>
+
+namespace osgEarth { namespace Annotation
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /** 
+     * A PlaceNode combines an 2D icon, a label, support for mouse interaction
+     * and a popup control.
+     */
+    class OSGEARTHANNO_EXPORT PlaceNode : public OrthoNode
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, PlaceNode);
+
+        /**
+         * Constructs a new place node
+         */
+        PlaceNode(
+            MapNode*           mapNode,
+            const GeoPoint&    position,
+            osg::Image*        iconImage,
+            const std::string& labelText,
+            const Style&       style =Style() );
+
+        /**
+         * Constructs a new place node. You can specify an icon marker by
+         * adding a IconSymbol to the Style.
+         */
+        PlaceNode(
+            MapNode*           mapNode,
+            const GeoPoint&    position,
+            const std::string& labelText,
+            const Style&       style =Style() );
+
+        /**
+         * Constuct a new place node entirely from symbology
+         */
+        PlaceNode(
+            MapNode*              mapNode,
+            const GeoPoint&       position,
+            const Style&          style,
+            const osgDB::Options* dbOptions);
+
+        /**
+         * Deserializes a place node
+         */
+        PlaceNode(
+            MapNode*              mapNode,
+            const Config&         conf,
+            const osgDB::Options* dbOptions );
+
+        virtual ~PlaceNode() { }
+
+        /**
+         * Image to use for the icon
+         */
+        osg::Image* getIconImage() const { return _image.get(); }
+
+        /**
+         * Text label content
+         */
+        void setText( const std::string& text );
+        const std::string& getText() const { return _text; }
+
+        /**
+         * Style (for text)
+         */
+        const Style& getStyle() const { return _style; }
+
+
+    public: // OrthoNode override
+
+        virtual void setAnnotationData( AnnotationData* data );
+
+        virtual void setDynamic( bool value );
+
+        virtual Config getConfig() const;
+        
+    private:
+        osg::ref_ptr<osg::Image>   _image;
+        std::string                _text;
+        Style                      _style;
+        class osg::Geode*          _geode;
+
+        void init(const osgDB::Options* options);
+
+        // required by META_Node, but this object is not cloneable
+        PlaceNode() { }
+        PlaceNode(const PlaceNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL) { }
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_PLACE_NODE_H
diff --git a/src/osgEarthAnnotation/PlaceNode.cpp b/src/osgEarthAnnotation/PlaceNode.cpp
new file mode 100644
index 0000000..725842d
--- /dev/null
+++ b/src/osgEarthAnnotation/PlaceNode.cpp
@@ -0,0 +1,294 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthFeatures/BuildTextFilter>
+#include <osgEarthFeatures/LabelSource>
+#include <osgEarth/Utils>
+#include <osgEarth/Registry>
+
+#include <osg/Depth>
+#include <osgText/Text>
+
+#define LC "[PlaceNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+PlaceNode::PlaceNode(MapNode*           mapNode,
+                     const GeoPoint&    position,
+                     osg::Image*        image,
+                     const std::string& text,
+                     const Style&       style ) :
+
+OrthoNode( mapNode, position ),
+_image   ( image ),
+_text    ( text ),
+_style   ( style ),
+_geode   ( 0L )
+{
+    init( 0L );
+}
+
+PlaceNode::PlaceNode(MapNode*           mapNode,
+                     const GeoPoint&    position,
+                     const std::string& text,
+                     const Style&       style ) :
+
+OrthoNode( mapNode, position ),
+_text    ( text ),
+_style   ( style ),
+_geode   ( 0L )
+{
+    init( 0L );
+}
+
+PlaceNode::PlaceNode(MapNode*              mapNode,
+                     const GeoPoint&       position,
+                     const Style&          style,
+                     const osgDB::Options* dbOptions ) :
+OrthoNode ( mapNode, position ),
+_style    ( style )
+{
+    init( dbOptions );
+}
+
+void
+PlaceNode::init(const osgDB::Options* dbOptions)
+{
+    _geode = new osg::Geode();
+    osg::Drawable* text = 0L;
+
+    // If there's no explicit text, look to the text symbol for content.
+    if ( _text.empty() && _style.has<TextSymbol>() )
+        _text = _style.get<TextSymbol>()->content()->eval();
+
+    osg::ref_ptr<const InstanceSymbol> instance = _style.get<InstanceSymbol>();
+
+    // backwards compability, support for deprecated MarkerSymbol
+    if ( !instance.valid() && _style.has<MarkerSymbol>() )
+        instance = _style.get<MarkerSymbol>()->convertToInstanceSymbol();
+
+    const IconSymbol* icon = instance->asIcon();
+
+    if ( !_image.valid() )
+    {
+        URI imageURI;
+
+        if ( icon )
+        {
+            if ( icon->url().isSet() )
+            {
+                imageURI = URI( icon->url()->eval(), icon->url()->uriContext() );
+            }
+        }
+
+        if ( !imageURI.empty() )
+        {
+            _image = imageURI.getImage( dbOptions );
+        }
+    }
+
+    // found an image; now format it:
+    if ( _image.get() )
+    {
+        // this offset anchors the image at the bottom
+        osg::Vec2s offset;
+        if ( !icon || !icon->alignment().isSet() )
+        {	
+            // default to bottom center
+            offset.set(0.0, (_image->t() / 2.0));
+        }
+        else
+        {	// default to bottom center
+            switch (icon->alignment().value())
+            {
+            case IconSymbol::ALIGN_LEFT_TOP:
+                offset.set((_image->s() / 2.0), -(_image->t() / 2.0));
+                break;
+            case IconSymbol::ALIGN_LEFT_CENTER:
+                offset.set((_image->s() / 2.0), 0.0);
+                break;
+            case IconSymbol::ALIGN_LEFT_BOTTOM:
+                offset.set((_image->s() / 2.0), (_image->t() / 2.0));
+                break;
+            case IconSymbol::ALIGN_CENTER_TOP:
+                offset.set(0.0, -(_image->t() / 2.0));
+                break;
+            case IconSymbol::ALIGN_CENTER_CENTER:
+                offset.set(0.0, 0.0);
+                break;
+            case IconSymbol::ALIGN_CENTER_BOTTOM:
+            default:
+                offset.set(0.0, (_image->t() / 2.0));
+                break;
+            case IconSymbol::ALIGN_RIGHT_TOP:
+                offset.set(-(_image->s() / 2.0), -(_image->t() / 2.0));
+                break;
+            case IconSymbol::ALIGN_RIGHT_CENTER:
+                offset.set(-(_image->s() / 2.0), 0.0);
+                break;
+            case IconSymbol::ALIGN_RIGHT_BOTTOM:
+                offset.set(-(_image->s() / 2.0), (_image->t() / 2.0));
+                break;
+            }
+        }
+
+        // Apply a rotation to the marker if requested:
+        double heading = 0.0;
+        if ( icon && icon->heading().isSet() )
+        {
+            heading = osg::DegreesToRadians( icon->heading()->eval() );
+        }
+
+        //We must actually rotate the geometry itself and not use a MatrixTransform b/c the 
+        //decluttering doesn't respect Transforms above the drawable.
+        osg::Geometry* imageGeom = AnnotationUtils::createImageGeometry( _image.get(), offset, 0, heading );
+        if ( imageGeom )
+            _geode->addDrawable( imageGeom );
+
+        text = AnnotationUtils::createTextDrawable(
+            _text,
+            _style.get<TextSymbol>(),
+            osg::Vec3( (offset.x() + (_image->s() / 2.0) + 2), offset.y(), 0 ) );
+    }
+    else
+    {
+        text = AnnotationUtils::createTextDrawable(
+            _text,
+            _style.get<TextSymbol>(),
+            osg::Vec3( 0, 0, 0 ) );
+    }
+
+    if ( text )
+        _geode->addDrawable( text );
+    
+    osg::StateSet* stateSet = _geode->getOrCreateStateSet();
+    stateSet->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), 1 );
+
+    AnnotationUtils::installAnnotationProgram( stateSet );
+
+    getAttachPoint()->addChild( _geode );
+
+    // for clamping
+    applyStyle( _style );
+}
+
+
+void
+PlaceNode::setText( const std::string& text )
+{
+    if ( !_dynamic )
+    {
+        OE_WARN << LC << "Illegal state: cannot change a LabelNode that is not dynamic" << std::endl;
+        return;
+    }
+
+    _text = text;
+
+    const osg::Geode::DrawableList& list = _geode->getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        osgText::Text* d = dynamic_cast<osgText::Text*>( i->get() );
+        if ( d )
+        {
+            d->setText( text );
+            break;
+        }
+    }
+}
+
+
+void
+PlaceNode::setAnnotationData( AnnotationData* data )
+{
+    OrthoNode::setAnnotationData( data );
+
+    // override this method so we can attach the anno data to the drawables.
+    const osg::Geode::DrawableList& list = _geode->getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        i->get()->setUserData( data );
+    }
+}
+
+
+void
+PlaceNode::setDynamic( bool value )
+{
+    OrthoNode::setDynamic( value );
+
+    const osg::Geode::DrawableList& list = _geode->getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        i->get()->setDataVariance( value ? osg::Object::DYNAMIC : osg::Object::STATIC );
+    }
+}
+
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( place, osgEarth::Annotation::PlaceNode );
+
+
+PlaceNode::PlaceNode(MapNode*              mapNode,
+                     const Config&         conf,
+                     const osgDB::Options* dbOptions) :
+OrthoNode( mapNode, GeoPoint::INVALID )
+{
+    conf.getObjIfSet( "style",  _style );
+    conf.getIfSet   ( "text",   _text );
+
+    optional<URI> imageURI;
+    conf.getIfSet( "icon", imageURI );
+    if ( imageURI.isSet() )
+    {
+        _image = imageURI->getImage();
+        if ( _image.valid() )
+            _image->setFileName( imageURI->base() );
+    }
+
+    init( dbOptions );
+
+    if ( conf.hasChild("position") )
+        setPosition( GeoPoint(conf.child("position")) );
+}
+
+Config
+PlaceNode::getConfig() const
+{
+    Config conf( "place" );
+    conf.add   ( "text",   _text );
+    conf.addObj( "style",  _style );
+    conf.addObj( "position", getPosition() );
+    if ( _image.valid() ) {
+        if ( !_image->getFileName().empty() )
+            conf.add( "icon", _image->getFileName() );
+        else if ( !_image->getName().empty() )
+            conf.add( "icon", _image->getName() );
+    }
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/RectangleNode b/src/osgEarthAnnotation/RectangleNode
new file mode 100644
index 0000000..2202600
--- /dev/null
+++ b/src/osgEarthAnnotation/RectangleNode
@@ -0,0 +1,143 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ANNOTATION_RECTANGLE_NODE_H
+#define OSGEARTH_ANNOTATION_RECTANGLE_NODE_H 1
+
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarthSymbology/Style>
+#include <osgEarth/MapNode>
+#include <osgEarth/Units>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Rectangle annotation.
+     */
+    class OSGEARTHANNO_EXPORT RectangleNode : public LocalizedNode
+    {
+    public:
+        enum Corner
+        {
+            CORNER_LOWER_LEFT,
+            CORNER_LOWER_RIGHT,
+            CORNER_UPPER_LEFT,
+            CORNER_UPPER_RIGHT
+        };
+
+        META_AnnotationNode( osgEarthAnnotation, RectangleNode );
+
+        /**
+         * Constructs a new rectangle annotation.
+         *
+         * @param mapNode     Map on which the rectangle will appear
+         * @param position    Location of the annotation, in map coordinates
+         * @param width       Rectangle width
+         * @param height      Rectangle height
+         * @param style       Style defining how the annotation will look
+         * @param draped      Whether to "drape" the annotation down on to the terrain         
+         */
+        RectangleNode(
+            MapNode*          mapNode,
+            const GeoPoint&   position,
+            const Linear&     width,
+            const Linear&     height,
+            const Style&      style,
+            bool              draped      =true );
+
+        virtual ~RectangleNode() { }
+
+        /**
+         * Gets the width of this rectangle
+         */
+        const Linear& getWidth() const;
+
+        /**
+         * Gets the height of this rectangle
+         */
+        const Linear& getHeight() const;
+
+        /**
+         * Sets the width of this rectangle
+         * @param width The width of the rectangle
+         */
+        void setWidth( const Linear& width );
+
+        /**
+         * Sets the height of this rectangle
+         * @param height   The height of the rectangle
+         */
+        void setHeight( const Linear& height );
+
+        /**
+         * Sets the size of the rectangle
+         * @param width         The width of the rectangle
+         * @param height        The height of the rectangle
+         */
+        void setSize( const Linear& width, const Linear& height);
+
+        /**
+         * Gets the style
+         */
+        const Style& getStyle() const;
+
+        /**
+         * Sets the style
+         */
+        void setStyle( const Style& style );        
+
+        GeoPoint getUpperLeft() const;
+        void setUpperLeft( const GeoPoint& upperLeft );
+
+        GeoPoint getUpperRight() const;
+        void setUpperRight( const GeoPoint& upperRight );
+
+        GeoPoint getLowerLeft() const;
+        void setLowerLeft( const GeoPoint& lowerLeft );
+
+        GeoPoint getLowerRight() const;
+        void setLowerRight( const GeoPoint& lowerRight );
+
+        GeoPoint getCorner( Corner corner ) const;
+        void setCorner( Corner corner, const GeoPoint& location);
+
+    public:
+
+        RectangleNode(MapNode* mapNode, const Config& conf, const osgDB::Options* options);
+        virtual Config getConfig() const;
+        
+
+    private:
+        RectangleNode() { }
+        RectangleNode(const RectangleNode& rhs, const osg::CopyOp& op) { }
+
+        void rebuild();
+
+        Style _style;
+        bool  _draped;        
+        Linear _width;
+        Linear _height;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNOTATION_RECTANGLE_NODE_H
diff --git a/src/osgEarthAnnotation/RectangleNode.cpp b/src/osgEarthAnnotation/RectangleNode.cpp
new file mode 100644
index 0000000..1b34a66
--- /dev/null
+++ b/src/osgEarthAnnotation/RectangleNode.cpp
@@ -0,0 +1,407 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/RectangleNode>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthSymbology/GeometryFactory>
+#include <osgEarthSymbology/ExtrusionSymbol>
+#include <osgEarth/MapNode>
+#include <osgEarth/DrapeableNode>
+#include <osg/MatrixTransform>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+
+RectangleNode::RectangleNode(
+            MapNode*          mapNode,
+            const GeoPoint&   position,
+            const Linear&     width,
+            const Linear&     height,
+            const Style&      style,
+            bool              draped ) :
+LocalizedNode( mapNode, position, false ),
+_width       ( width ),
+_height      ( height ),
+_style       ( style ),
+_draped      ( draped )
+{       
+    rebuild();
+}
+
+const Linear&
+RectangleNode::getWidth() const
+{
+    return _width;
+}
+
+const Linear&
+RectangleNode::getHeight() const
+{
+    return _height;
+}
+
+void
+RectangleNode::setWidth( const Linear& width )
+{
+    setSize( width, _height );
+}
+
+void
+RectangleNode::setHeight( const Linear& height )
+{
+    setSize( _width, height );
+}
+
+void
+RectangleNode::setSize( const Linear& width, const Linear& height)
+{
+    if (_width != width || _height != height)
+    {
+        _width = width;
+        _height = height;
+        rebuild();
+    }
+}
+
+const Style&
+RectangleNode::getStyle() const
+{
+    return _style;
+}
+
+void
+RectangleNode::setStyle( const Style& style )
+{
+    _style = style;
+    rebuild();
+}
+
+
+
+GeoPoint
+RectangleNode::getUpperLeft() const
+{
+    return getCorner( CORNER_UPPER_LEFT );
+}
+
+void
+RectangleNode::setUpperLeft( const GeoPoint& upperLeft )
+{
+    GeoPoint center = getPosition();
+
+    //Figure out the new width and height
+    double earthRadius = center.getSRS()->getEllipsoid()->getRadiusEquator();
+
+    double lat = osg::DegreesToRadians(center.y());
+    double lon = osg::DegreesToRadians(center.x());
+    double halfWidthMeters  =  _width.as(Units::METERS) / 2.0;
+    double halfHeightMeters  = _height.as(Units::METERS) / 2.0;   
+
+    double eastLon, eastLat;
+    double westLon, westLat;
+    double northLon, northLat;
+    double southLon, southLat;
+
+    //Get the current corners
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+
+    if (osg::DegreesToRadians(upperLeft.x()) < eastLon && osg::DegreesToRadians(upperLeft.y()) > southLat)
+    {
+        westLon = osg::DegreesToRadians(upperLeft.x());
+        northLat = osg::DegreesToRadians(upperLeft.y());
+
+        double x = ( eastLon + westLon ) / 2.0;
+        double y = ( southLat + northLat) / 2.0;
+        setPosition(GeoPoint( center.getSRS(), osg::RadiansToDegrees(x), osg::RadiansToDegrees(y)));
+
+        double width =  GeoMath::distance( y, westLon, y, eastLon, earthRadius);
+        double height =  GeoMath::distance( southLat, x, northLat, x, earthRadius);
+        setWidth(  Linear(width,  Units::METERS ));
+        setHeight( Linear(height, Units::METERS ));
+    }
+}
+
+GeoPoint
+RectangleNode::getUpperRight() const
+{
+    return getCorner( CORNER_UPPER_RIGHT );
+}
+
+void
+RectangleNode::setUpperRight( const GeoPoint& upperRight )
+{
+     GeoPoint center = getPosition();
+
+    //Figure out the new width and height
+    double earthRadius = center.getSRS()->getEllipsoid()->getRadiusEquator();
+
+    double lat = osg::DegreesToRadians(center.y());
+    double lon = osg::DegreesToRadians(center.x());
+    double halfWidthMeters  =  _width.as(Units::METERS) / 2.0;
+    double halfHeightMeters  = _height.as(Units::METERS) / 2.0;   
+
+    double eastLon, eastLat;
+    double westLon, westLat;
+    double northLon, northLat;
+    double southLon, southLat;
+
+    //Get the current corners
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+
+    if (osg::DegreesToRadians(upperRight.x()) > westLon && osg::DegreesToRadians(upperRight.y()) > southLat)
+    {
+        eastLon = osg::DegreesToRadians(upperRight.x());
+        northLat = osg::DegreesToRadians(upperRight.y());
+
+        double x = ( eastLon + westLon ) / 2.0;
+        double y = ( southLat + northLat) / 2.0;
+        setPosition(GeoPoint( center.getSRS(), osg::RadiansToDegrees(x), osg::RadiansToDegrees(y)));
+
+        double width =  GeoMath::distance( y, westLon, y, eastLon, earthRadius);
+        double height =  GeoMath::distance( southLat, x, northLat, x, earthRadius);
+        setWidth(  Linear(width,  Units::METERS ));
+        setHeight( Linear(height, Units::METERS ));
+    }
+}
+
+GeoPoint
+RectangleNode::getLowerLeft() const
+{
+    return getCorner( CORNER_LOWER_LEFT );
+}
+
+void
+RectangleNode::setLowerLeft( const GeoPoint& lowerLeft )
+{
+    GeoPoint center = getPosition();
+
+    //Figure out the new width and height
+    double earthRadius = center.getSRS()->getEllipsoid()->getRadiusEquator();
+
+    double lat = osg::DegreesToRadians(center.y());
+    double lon = osg::DegreesToRadians(center.x());
+    double halfWidthMeters  =  _width.as(Units::METERS) / 2.0;
+    double halfHeightMeters  = _height.as(Units::METERS) / 2.0;   
+
+    double eastLon, eastLat;
+    double westLon, westLat;
+    double northLon, northLat;
+    double southLon, southLat;
+
+    //Get the current corners
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+
+    if (osg::DegreesToRadians(lowerLeft.x()) < eastLon && osg::DegreesToRadians(lowerLeft.y()) < northLat)
+    {
+        westLon = osg::DegreesToRadians(lowerLeft.x());  
+        southLat = osg::DegreesToRadians(lowerLeft.y());
+
+        double x = ( eastLon + westLon ) / 2.0;
+        double y = ( southLat + northLat) / 2.0;
+        setPosition(GeoPoint( center.getSRS(), osg::RadiansToDegrees(x), osg::RadiansToDegrees(y)));
+
+        double width =  GeoMath::distance( y, westLon, y, eastLon, earthRadius);
+        double height =  GeoMath::distance( southLat, x, northLat, x, earthRadius);
+        setWidth(  Linear(width,  Units::METERS ));
+        setHeight( Linear(height, Units::METERS ));
+    }
+}
+
+GeoPoint
+RectangleNode::getLowerRight() const
+{
+    return getCorner( CORNER_LOWER_RIGHT );
+}
+
+void
+RectangleNode::setLowerRight( const GeoPoint& lowerRight )
+{
+    GeoPoint center = getPosition();
+
+    //Figure out the new width and height
+    double earthRadius = center.getSRS()->getEllipsoid()->getRadiusEquator();
+    
+    double lat = osg::DegreesToRadians(center.y());
+    double lon = osg::DegreesToRadians(center.x());
+    double halfWidthMeters  =  _width.as(Units::METERS) / 2.0;
+    double halfHeightMeters  = _height.as(Units::METERS) / 2.0;   
+
+    double eastLon, eastLat;
+    double westLon, westLat;
+    double northLon, northLat;
+    double southLon, southLat;
+    
+    //Get the current corners
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+    
+    if (osg::DegreesToRadians(lowerRight.x()) > westLon && osg::DegreesToRadians(lowerRight.y()) < northLat) {
+        eastLon = osg::DegreesToRadians(lowerRight.x());
+        southLat = osg::DegreesToRadians(lowerRight.y());
+
+        double x = ( eastLon + westLon ) / 2.0;
+        double y = ( southLat + northLat) / 2.0;
+        setPosition(GeoPoint( center.getSRS(), osg::RadiansToDegrees(x), osg::RadiansToDegrees(y)));
+
+        double width =  GeoMath::distance( y, westLon, y, eastLon, earthRadius);
+        double height =  GeoMath::distance( southLat, x, northLat, x, earthRadius);
+        setWidth(  Linear(width,  Units::METERS ));
+        setHeight( Linear(height, Units::METERS ));
+    }
+}
+
+GeoPoint
+RectangleNode::getCorner( Corner corner ) const
+{
+    GeoPoint center = getPosition();
+
+    double earthRadius = center.getSRS()->getEllipsoid()->getRadiusEquator();
+    double lat = osg::DegreesToRadians(center.y());
+    double lon = osg::DegreesToRadians(center.x());
+    double halfWidthMeters  =  _width.as(Units::METERS) / 2.0;
+    double halfHeightMeters  = _height.as(Units::METERS) / 2.0;   
+
+    double eastLon, eastLat;
+    double westLon, westLat;
+    double northLon, northLat;
+    double southLon, southLat;
+        
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+    GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+
+    if (corner == CORNER_LOWER_LEFT)
+    {
+        return GeoPoint(center.getSRS(), osg::RadiansToDegrees(westLon), osg::RadiansToDegrees(southLat), 0, ALTMODE_RELATIVE);
+    }
+    else if (corner == CORNER_LOWER_RIGHT)
+    {
+        return GeoPoint(center.getSRS(), osg::RadiansToDegrees(eastLon), osg::RadiansToDegrees(southLat), 0, ALTMODE_RELATIVE);
+    }
+    else if (corner == CORNER_UPPER_LEFT)
+    {
+        return GeoPoint(center.getSRS(), osg::RadiansToDegrees(westLon), osg::RadiansToDegrees(northLat), 0, ALTMODE_RELATIVE);
+    }
+    else if (corner == CORNER_UPPER_RIGHT)
+    {
+        return GeoPoint(center.getSRS(), osg::RadiansToDegrees(eastLon), osg::RadiansToDegrees(northLat), 0, ALTMODE_RELATIVE);
+    }
+    return GeoPoint();
+}
+
+void
+RectangleNode::setCorner( Corner corner, const GeoPoint& location)
+{
+    if (corner == CORNER_LOWER_LEFT) setLowerLeft( location );
+    else if (corner == CORNER_LOWER_RIGHT) setLowerRight( location );
+    else if (corner == CORNER_UPPER_LEFT) setUpperLeft( location );
+    else if (corner == CORNER_UPPER_RIGHT) setUpperRight( location );
+}
+
+
+void
+RectangleNode::rebuild()
+{    
+    std::string currentDecoration = getDecoration();
+    clearDecoration();
+
+    //Remove all children from this node
+    //removeChildren( 0, getNumChildren() );
+    if ( getRoot()->getNumParents() == 0 )
+    {
+        this->addChild( getRoot() );
+    }
+
+    //Remove all children from the attach point
+    getChildAttachPoint()->removeChildren( 0, getChildAttachPoint()->getNumChildren() );
+
+    // construct a local-origin circle.
+    GeometryFactory factory;    
+    Geometry* geom = factory.createRectangle(osg::Vec3d(0,0,0), _width, _height);
+    if ( geom )
+    {
+        GeometryCompiler compiler;
+        osg::ref_ptr<Feature> feature = new Feature(geom, 0L); //todo: consider the SRS
+        osg::Node* node = compiler.compile( feature.get(), _style, FilterContext(0L) );
+        if ( node )
+        {
+            getChildAttachPoint()->addChild( node );
+            getDrapeable()->setDraped( _draped );
+        }
+
+        applyStyle( _style );
+    }
+
+    setDecoration( currentDecoration );
+}
+
+
+
+//-------------------------------------------------------------------
+
+OSGEARTH_REGISTER_ANNOTATION( rectangle, osgEarth::Annotation::RectangleNode );
+
+
+RectangleNode::RectangleNode(MapNode*              mapNode,
+                             const Config&         conf,
+                             const osgDB::Options* dbOptions) :
+LocalizedNode( mapNode ),
+_draped      ( false )
+{
+    conf.getObjIfSet( "width", _width );
+    conf.getObjIfSet( "height", _height );
+    conf.getObjIfSet( "style",  _style );
+    conf.getIfSet   ( "draped", _draped );
+
+    if ( conf.hasChild("position") )
+        setPosition( GeoPoint(conf.child("position")) );
+
+    rebuild();
+}
+
+Config
+RectangleNode::getConfig() const
+{
+    Config conf( "rectangle" );
+    conf.addObj( "width",  _width );
+    conf.addObj( "height", _height );
+    conf.addObj( "style",  _style );
+    if ( _draped != false )
+        conf.add( "draped", _draped );
+
+    conf.addObj( "position", getPosition() );
+
+    return conf;
+}
diff --git a/src/osgEarthAnnotation/ScaleDecoration b/src/osgEarthAnnotation/ScaleDecoration
new file mode 100644
index 0000000..a9f80b7
--- /dev/null
+++ b/src/osgEarthAnnotation/ScaleDecoration
@@ -0,0 +1,49 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_SCALE_DECORATION_H
+#define OSGEARTH_ANNOTATION_SCALE_DECORATION_H 1
+
+#include <osgEarthAnnotation/Decoration>
+#include <osg/NodeVisitor>
+
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+
+    /**
+     * A decoration technique that scales the annotation.
+     */
+    class /*OSGEARTHANNO_EXPORT*/ ScaleDecoration : public InjectionDecoration
+    {
+    public:
+        ScaleDecoration(float factor =1.1f) :
+            InjectionDecoration(new osg::MatrixTransform(osg::Matrix::scale(factor,factor,factor))),
+            _factor(factor) { }
+
+        virtual ~ScaleDecoration() { }
+
+        virtual Decoration* clone() const { return new ScaleDecoration(_factor); }
+
+    protected:
+        float _factor;
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_DECORATION_H
diff --git a/src/osgEarthAnnotation/TrackNode b/src/osgEarthAnnotation/TrackNode
new file mode 100644
index 0000000..bd683db
--- /dev/null
+++ b/src/osgEarthAnnotation/TrackNode
@@ -0,0 +1,159 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ANNOTATION_TRACK_NODE_H
+#define OSGEARTH_ANNOTATION_TRACK_NODE_H 1
+
+#include <osgEarthAnnotation/OrthoNode>
+#include <osgEarthSymbology/TextSymbol>
+#include <osgEarth/Containers>
+#include <osg/Image>
+#include <osgText/String>
+
+namespace osgEarth
+{ 
+    class MapNode;
+}
+    
+namespace osgEarth { namespace Annotation
+{	
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Defines for a labeling field associated with a TrackNode. A TrackNode
+     * can have zero or more "fields", each being a text label rendered 
+     * along with the node's icon.
+     */
+    struct /*no-export*/ TrackNodeField
+    {
+        /**
+         * Constructs a new field definition.
+         * @param symbol  Text symbol describing the field's appearance and placement
+         * @param dynamic Whether the text label will be dynamic; i.e. whether the user
+         *                intends to update it at runtime. Setting this to "false" for a
+         *                static label yields better performance in a multithreaded app.
+         */
+        TrackNodeField( const TextSymbol* symbol, bool dynamic =true )
+            : _symbol(symbol), _dynamic(dynamic) { }
+
+        /** other constructors (internal) */
+        TrackNodeField()
+            : _dynamic(true) { }
+
+        TrackNodeField( const TrackNodeField& rhs ) 
+            : _symbol(rhs._symbol.get()), _dynamic(rhs._dynamic) { }
+
+        osg::ref_ptr<const TextSymbol> _symbol;
+        bool                           _dynamic;
+    };
+
+    /**
+     * Schema that maps field names to field definitions.
+     */
+    typedef fast_map<std::string, TrackNodeField> TrackNodeFieldSchema;
+
+    /** 
+     * TrackNode is a movable, single-point entity represented by an icon,
+     * optional placeable text labels, and optional localized geometry.
+     *
+     * NOTE. TrackNode does not automatically support terrain clamping. This is
+     * because its intention is for use as a trackable entity marker, and 
+     * presumably the entity itself will be responsible for its own absolute
+     * positioning (and clamping, if applicable).
+     */
+    class OSGEARTHANNO_EXPORT TrackNode : public OrthoNode
+    {
+    public:
+        META_AnnotationNode(osgEarthAnnotation, TrackNode);
+
+        /**
+         * Constructs a new track node
+         * @param mapNode     Map node under which this track will live
+         * @param position    Initial position
+         * @param image       Icon image to use
+         * @param fieldSchema Schema for track label fields
+         */
+        TrackNode(
+            MapNode*                    mapNode,
+            const GeoPoint&             position,
+            osg::Image*                 image,
+            const TrackNodeFieldSchema& fieldSchema );
+
+        /**
+         * Constructs a new track node
+         * @param mapNode     Map node under which this track will live
+         * @param position    Initial position (in map coordinates)
+         * @param image       Icon image to use
+         * @param fieldSchema Schema for track label fields
+         */
+        //TrackNode(
+        //    MapNode*                    mapNode,
+        //    const osg::Vec3d&           positionInMapCoords,
+        //    osg::Image*                 image,
+        //    const TrackNodeFieldSchema& fieldSchema );
+
+        virtual ~TrackNode() { }
+
+        /** 
+         * Sets the value of one of the field labels.
+         * @param name  Field name as identified in the field schema.
+         * @param value Value to which to set the field label.
+         */
+        void setFieldValue( const std::string& name, const std::string& value ) { setFieldValue(name, osgText::String(value)); }
+        void setFieldValue( const std::string& name, const osgText::String& value );
+
+        /**
+         * Adds an arbitrary drawable to this track node. Useful for adding
+         * user-defined graphics.
+         * @param name     Name of the drawable (for later retrieval). The namespace
+         *                 should not conflict with that of the field schema.
+         * @param drawable Drawable to add.
+         */
+        void addDrawable( const std::string& name, osg::Drawable* drawable );
+
+        /**
+         * Gets a drawable (as previously added with addDrawable). 
+         * Note: Make sure that if you are modifying a drawable, mark it with a 
+         * DYNAMIC data variance so it will be thread-safe.
+         */
+        osg::Drawable* getDrawable( const std::string& name ) const;
+
+    public: // override
+
+        virtual void setAnnotationData( AnnotationData* data );
+
+    protected:
+        osg::ref_ptr<osg::Image> _image;
+        class osg::Geode*        _geode;
+
+        typedef fast_map<std::string, osg::Drawable*> NamedDrawables;
+        NamedDrawables _namedDrawables;
+
+        void init( const TrackNodeFieldSchema& schema );
+
+    private:
+        // required by META_Node, but this object is not cloneable
+        TrackNode() { }
+        TrackNode(const TrackNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL) { }
+
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif //OSGEARTH_ANNOTATION_TRACK_NODE_H
diff --git a/src/osgEarthAnnotation/TrackNode.cpp b/src/osgEarthAnnotation/TrackNode.cpp
new file mode 100644
index 0000000..f42777f
--- /dev/null
+++ b/src/osgEarthAnnotation/TrackNode.cpp
@@ -0,0 +1,157 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthAnnotation/TrackNode>
+#include <osgEarthAnnotation/AnnotationUtils>
+#include <osgEarth/MapNode>
+#include <osg/Depth>
+#include <osgText/Text>
+
+#define LC "[TrackNode] "
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Symbology;
+
+//------------------------------------------------------------------------
+
+TrackNode::TrackNode(MapNode*                    mapNode, 
+                     const GeoPoint&             position,
+                     osg::Image*                 image,
+                     const TrackNodeFieldSchema& fieldSchema ) :
+
+OrthoNode   ( mapNode, position ),
+_image      ( image )
+{
+    init( fieldSchema );
+}
+
+void
+TrackNode::init( const TrackNodeFieldSchema& schema )
+{
+    _geode = new osg::Geode();
+    
+    if ( _image.valid() )
+    {
+        // apply the image icon.
+        osg::Geometry* imageGeom = AnnotationUtils::createImageGeometry( 
+            _image.get(),             // image
+            osg::Vec2s(0,0) );        // offset
+
+        if ( imageGeom )
+        {
+            _geode->addDrawable( imageGeom );
+        }
+    }
+
+    if ( !schema.empty() )
+    {
+        // turn the schema defs into text drawables and record a map so we can
+        // set the field text later.
+        for( TrackNodeFieldSchema::const_iterator i = schema.begin(); i != schema.end(); ++i )
+        {
+            const TrackNodeField& field = i->second;
+            if ( field._symbol.valid() )
+            {
+                osg::Drawable* drawable = AnnotationUtils::createTextDrawable( 
+                    field._symbol->content()->expr(),   // text
+                    field._symbol.get(),                // symbol
+                    osg::Vec3(0,0,0) );                 // offset
+
+                if ( drawable )
+                {
+                    // if the user intends to change the label later, make it dynamic
+                    // since osgText updates are not thread-safe
+                    if ( field._dynamic )
+                        drawable->setDataVariance( osg::Object::DYNAMIC );
+                    else
+                        drawable->setDataVariance( osg::Object::STATIC );
+
+                    addDrawable( i->first, drawable );
+                }
+            }
+        }
+    }
+
+    // ensure depth testing always passes, and disable depth buffer writes.
+    osg::StateSet* stateSet = _geode->getOrCreateStateSet();
+    stateSet->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), 1 );
+
+    AnnotationUtils::installAnnotationProgram( stateSet );
+
+    getAttachPoint()->addChild( _geode );
+}
+
+void
+TrackNode::setFieldValue( const std::string& name, const osgText::String& value )
+{
+    NamedDrawables::const_iterator i = _namedDrawables.find(name);
+
+    if ( i != _namedDrawables.end() )
+    {
+        osgText::Text* drawable = dynamic_cast<osgText::Text*>( i->second );
+        if ( drawable )
+        {
+            // only permit updates if the field was declared dynamic, OR
+            // this node is not connected yet
+            if (drawable->getDataVariance() == osg::Object::DYNAMIC || this->getNumParents() == 0)
+            {
+                // btw, setText checks for assigning an equal value, so we don't have to
+                drawable->setText( value );             
+            }
+            else
+            {
+                OE_WARN << LC 
+                    << "Illegal: attempt to modify a TrackNode field value that is not marked as dynamic"
+                    << std::endl;
+            }
+        }
+    }
+}
+
+void
+TrackNode::addDrawable( const std::string& name, osg::Drawable* drawable )
+{
+    // attach the annotation data to the drawable:
+    if ( _annoData.valid() )
+        drawable->setUserData( _annoData.get() );
+
+    _namedDrawables[name] = drawable;
+    _geode->addDrawable( drawable );
+}
+
+osg::Drawable*
+TrackNode::getDrawable( const std::string& name ) const
+{
+    NamedDrawables::const_iterator i = _namedDrawables.find(name);
+    return i != _namedDrawables.end() ? i->second : 0L;
+}
+
+void
+TrackNode::setAnnotationData( AnnotationData* data )
+{
+    OrthoNode::setAnnotationData( data );
+
+    // override this method so we can attach the anno data to the drawables.
+    const osg::Geode::DrawableList& list = _geode->getDrawableList();
+    for( osg::Geode::DrawableList::const_iterator i = list.begin(); i != list.end(); ++i )
+    {
+        i->get()->setUserData( data );
+    }
+}
diff --git a/src/osgEarthDrivers/CMakeLists.txt b/src/osgEarthDrivers/CMakeLists.txt
index deb0f7e..1081523 100644
--- a/src/osgEarthDrivers/CMakeLists.txt
+++ b/src/osgEarthDrivers/CMakeLists.txt
@@ -6,6 +6,7 @@
 
 PROJECT(OSGEARTH_PLUGINS_MASTER)
 
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIRS} )
 
 SET(CMAKE_SHARED_MODULE_PREFIX ${OSGEARTH_PLUGIN_PREFIX})
 
@@ -46,25 +47,35 @@ ADD_SUBDIRECTORY(osg)
 ADD_SUBDIRECTORY(agglite)
 ADD_SUBDIRECTORY(model_simple)
 ADD_SUBDIRECTORY(debug)
-
-IF(LIBZIP_FOUND)
-  ADD_SUBDIRECTORY(zipfs)
-  ADD_SUBDIRECTORY(worldwind)
-ENDIF(LIBZIP_FOUND)
+ADD_SUBDIRECTORY(cache_filesystem)
+ADD_SUBDIRECTORY(ocean_surface)
+ADD_SUBDIRECTORY(refresh)
+ADD_SUBDIRECTORY(xyz)
 
 IF(GDAL_FOUND)
   ADD_SUBDIRECTORY(gdal)
   ADD_SUBDIRECTORY(feature_ogr)
   ADD_SUBDIRECTORY(feature_wfs)  
+  ADD_SUBDIRECTORY(feature_tfs)
   ADD_SUBDIRECTORY(model_feature_stencil)
   ADD_SUBDIRECTORY(model_feature_geom)
   ADD_SUBDIRECTORY(mask_feature)
   ADD_SUBDIRECTORY(label_overlay)
+  ADD_SUBDIRECTORY(label_annotation)
 ENDIF(GDAL_FOUND)
 
 IF(SQLITE3_FOUND)
-  ADD_SUBDIRECTORY(cache_sqlite3)
+#  ADD_SUBDIRECTORY(cache_sqlite3)
   ADD_SUBDIRECTORY(mbtiles)
 ENDIF(SQLITE3_FOUND)
 
-ADD_SUBDIRECTORY(engine_osgterrain)
\ No newline at end of file
+ADD_SUBDIRECTORY(engine_osgterrain)
+ADD_SUBDIRECTORY(engine_quadtree)
+
+IF(V8_FOUND)
+  ADD_SUBDIRECTORY(script_engine_v8)
+ENDIF(V8_FOUND)
+
+ADD_SUBDIRECTORY(vdatum_egm84)
+ADD_SUBDIRECTORY(vdatum_egm96)
+ADD_SUBDIRECTORY(vdatum_egm2008)
diff --git a/src/osgEarthDrivers/agglite/AGGLiteOptions b/src/osgEarthDrivers/agglite/AGGLiteOptions
index 45fe23f..72ed958 100644
--- a/src/osgEarthDrivers/agglite/AGGLiteOptions
+++ b/src/osgEarthDrivers/agglite/AGGLiteOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -57,6 +57,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~AGGLiteOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = FeatureTileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/agglite/AGGLiteRasterizerTileSource.cpp b/src/osgEarthDrivers/agglite/AGGLiteRasterizerTileSource.cpp
index 499926a..e0f9eec 100644
--- a/src/osgEarthDrivers/agglite/AGGLiteRasterizerTileSource.cpp
+++ b/src/osgEarthDrivers/agglite/AGGLiteRasterizerTileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -290,7 +290,7 @@ public:
                         c = line->stroke()->color();
                 }
 
-                a = 127+(c.a()*255)/2; // scale alpha up
+                a = (unsigned int)(127+(c.a()*255)/2); // scale alpha up
                 fgColor = agg::rgba8( (unsigned int)(c.r()*255), (unsigned int)(c.g()*255), (unsigned int)(c.b()*255), a );
 
                 ras.filling_rule( agg::fill_even_odd );
diff --git a/src/osgEarthDrivers/arcgis/ArcGISOptions b/src/osgEarthDrivers/arcgis/ArcGISOptions
index 42053aa..4e9de8f 100644
--- a/src/osgEarthDrivers/arcgis/ArcGISOptions
+++ b/src/osgEarthDrivers/arcgis/ArcGISOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -42,6 +43,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~ArcGISOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/arcgis/Extent.h b/src/osgEarthDrivers/arcgis/Extent.h
index faa4df5..2fb2a25 100644
--- a/src/osgEarthDrivers/arcgis/Extent.h
+++ b/src/osgEarthDrivers/arcgis/Extent.h
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/arcgis/MapService.cpp b/src/osgEarthDrivers/arcgis/MapService.cpp
index 0a58621..78e22da 100644
--- a/src/osgEarthDrivers/arcgis/MapService.cpp
+++ b/src/osgEarthDrivers/arcgis/MapService.cpp
@@ -1,5 +1,4 @@
 #include "MapService.h"
-#include <osgEarth/HTTPClient>
 #include <osgEarth/JsonUtils>
 #include <osgEarth/Registry>
 #include <osg/Notify>
@@ -126,19 +125,20 @@ MapService::getTileInfo() const {
 }
 
 bool
-MapService::init( const std::string& _url, const osgDB::ReaderWriter::Options* options )
+MapService::init( const URI& _uri, const osgDB::ReaderWriter::Options* options )
 {
-    url = _url;
-    std::string sep = url.find( "?" ) == std::string::npos ? "?" : "&";
-    std::string json_url = url + sep + std::string("f=pjson");  // request the data in JSON format
+    uri = _uri;
+    std::string sep = uri.full().find( "?" ) == std::string::npos ? "?" : "&";
+    std::string json_url = uri.full() + sep + std::string("f=pjson");  // request the data in JSON format
 
-    HTTPResponse response = HTTPClient::get( json_url, options );
-    if ( !response.isOK() )
+    ReadResult r = URI(json_url).readString( options );
+    if ( r.failed() )
         return setError( "Unable to read metadata from ArcGIS service" );
 
     Json::Value doc;
     Json::Reader reader;
-    if ( !reader.parse( response.getPartStream(0), doc ) )
+//    if ( !reader.parse( response.getPartStream(0), doc ) )
+    if ( !reader.parse( r.getString(), doc ) )
         return setError( "Unable to parse metadata; invalid JSON" );
 
     // Read the profile. We are using "fullExtent"; perhaps an option to use "initialExtent" instead?
@@ -235,8 +235,8 @@ MapService::init( const std::string& _url, const osgDB::ReaderWriter::Options* o
         }
     }
 
-	std::string ssStr;
-	ssStr = ss.str();
+	 std::string ssStr;
+	 ssStr = ss.str();
 
     osg::ref_ptr< SpatialReference > spatialReference = SpatialReference::create( ssStr );
     if (spatialReference->isGeographic())
@@ -255,7 +255,6 @@ MapService::init( const std::string& _url, const osgDB::ReaderWriter::Options* o
         profile = Profile::create(
             spatialReference.get(),
             xmin, ymin, xmax, ymax,
-            NULL,
             num_tiles_wide,
             num_tiles_high);
     }    
diff --git a/src/osgEarthDrivers/arcgis/MapService.h b/src/osgEarthDrivers/arcgis/MapService.h
index 1bd5934..b097baa 100644
--- a/src/osgEarthDrivers/arcgis/MapService.h
+++ b/src/osgEarthDrivers/arcgis/MapService.h
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 #define OSGEARTH_ARCGIS_MAP_SERVICE_H 1
 
 #include <osgEarth/Profile>
+#include <osgEarth/URI>
 #include <list>
 #include "Extent.h"
 
@@ -92,7 +93,7 @@ public:
      * provided REST API URL (e.g.: http://server/ArcGIS/rest/services/MyMapService)
      * Call isValid() to verify success.
      */
-    bool init( const std::string& url, const osgDB::ReaderWriter::Options* options =0L );
+    bool init( const URI& uri, const osgDB::Options* options =0L );
 
     /**
      * Returns true if the map service initialized succesfully.
@@ -118,7 +119,7 @@ public:
 
 private:
     bool is_valid;
-    std::string url;
+    URI uri;
     osg::ref_ptr<const Profile> profile;
     std::string error_msg;
     MapServiceLayerList layers;
diff --git a/src/osgEarthDrivers/arcgis/ReaderWriterArcGIS.cpp b/src/osgEarthDrivers/arcgis/ReaderWriterArcGIS.cpp
index cdaefdd..6933231 100644
--- a/src/osgEarthDrivers/arcgis/ReaderWriterArcGIS.cpp
+++ b/src/osgEarthDrivers/arcgis/ReaderWriterArcGIS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,8 @@
 
 #include <osgEarth/TileSource>
 #include <osgEarth/Registry>
+#include <osgEarth/URI>
+
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -47,20 +49,6 @@ public:
       _options( options ),
       _profileConf( ProfileOptions() )
     {
-        //if ( options )
-        //{
-        //    const Config& conf = options->config();
-
-        //    // this is the ArcGIS REST services URL for the map service,
-        //    // e.g. http://server/ArcGIS/rest/services/Layer/MapServer
-        //    _url = conf.value( PROPERTY_URL );
-
-        //    // force a profile type
-        //    // TODO? do we need this anymore? doesn't this happen with overrideprofile now?
-        //    if ( conf.hasChild( PROPERTY_PROFILE ) )
-        //        _profileConf = ProfileOptions( conf.child( PROPERTY_PROFILE ) );
-        //}
-
         //TODO: allow single layers vs. "fused view"
         if ( _layer.empty() )
             _layer = "_alllayers"; // default to the AGS "fused view"
@@ -68,81 +56,58 @@ public:
         //TODO: detect the format
         if ( _format.empty() )
             _format = "png";
+    }
 
+    // override
+    Status initialize( const osgDB::Options* dbOptions )
+    {
+        // add the security token to the URL if necessary:
         URI url = _options.url().value();
-        //Add the token if necessary
         if (_options.token().isSet())
         {
             std::string token = _options.token().value();
             if (!token.empty())
             {
                 std::string sep = url.full().find( "?" ) == std::string::npos ? "?" : "&";
-                url = url.append( sep + "token=" + token );
+                url = url.append( sep + std::string("token=") + token );
             }
         }
 
-        // read metadata from the server
-        if ( !_map_service.init( url.full() ) ) //, getOptions()) )
+        // read map service metadata from the server
+        if ( !_map_service.init(url, dbOptions) )
         {
-            OE_WARN << "[osgearth] [ArcGIS] map service initialization failed: "
-                << _map_service.getError() << std::endl;
+            return Status::Error( Stringify()
+                << "[osgearth] [ArcGIS] map service initialization failed: "
+                << _map_service.getError() );
         }
-    }
 
-    // override
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
-    {
-        const Profile* profile = NULL;
+        // create a local i/o options with caching disabled (since the TerrainLayer
+        // will implement the caching for us)
+        _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
 
-        if ( _profileConf.isSet() )
+        // establish a profile if we don't already have one:
+        if ( !getProfile() )
         {
-            profile = Profile::create( _profileConf.get() );
-        }
-        else if (overrideProfile)
-        {
-            profile = overrideProfile;
-        }
-        //if ( !_profile_str.empty() )
-        //{
-        //    profile = Profile::create( _profile_str );
-        //}
-        else if ( _map_service.getProfile() )
-        {
-            profile = _map_service.getProfile();
+            const Profile* profile = NULL;
 
-            /*
-            if ( !_map_service.isTiled() )
+            if ( _profileConf.isSet() )
             {
-                // expand the profile's extents so they form a square.
-                // AGS will return an image of a different extent than requested if the pixel aspect
-                // ratio is not the same at the geoextent aspect ratio. By forcing a square full extent,
-                // we can always request square tiles.
-
-                const GeoExtent& oldEx = profile->getExtent();
-                if ( oldEx.width() > oldEx.height() )
-                {
-                    double d = oldEx.width() - oldEx.height();
-                    unsigned int tilesX, tilesY;
-                    profile->getNumTiles( 0, tilesX, tilesY );
-                    profile = Profile::create( profile->getSRS(), oldEx.xMin(), oldEx.yMin()-d/2, oldEx.xMax(), oldEx.yMax()+d/2, 0L, tilesX, tilesY );
-                }
-                else if ( oldEx.width() < oldEx.height() )
-                {
-                    double d = oldEx.height() - oldEx.width();
-                    unsigned int tilesX, tilesY;
-                    profile->getNumTiles( 0, tilesX, tilesY );
-                    profile = Profile::create( profile->getSRS(), oldEx.xMin()-d/2, oldEx.yMin(), oldEx.xMax()+d/2, oldEx.yMax(), 0L, tilesX, tilesY );    
-                }
+                profile = Profile::create( _profileConf.get() );
             }
-            */
-        }        
-        else
-        {
-            profile = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+            else if ( _map_service.getProfile() )
+            {
+                profile = _map_service.getProfile();
+            }
+            else
+            {
+                // finally, fall back on lat/long
+                profile = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+            }
+            setProfile( profile );
         }
 
-		//Set the profile
-		setProfile( profile );
+        return STATUS_OK;
     }
 
     // override
@@ -152,8 +117,7 @@ public:
     }
 
     // override
-    osg::Image* createImage( const TileKey& key,
-                             ProgressCallback* progress)
+    osg::Image* createImage(const TileKey& key, ProgressCallback* progress)
     {
         std::stringstream buf;
 
@@ -194,20 +158,16 @@ public:
             std::string token = _options.token().value();
             if (!token.empty())
             {
-                std::string sep = buf.str().find( "?" ) == std::string::npos ? "?" : "&";
+                std::string str;
+                str = buf.str();
+                std::string sep = str.find( "?" ) == std::string::npos ? "?" : "&";
                 buf << sep << "token=" << token;
             }
         }
 
-        //OE_NOTICE << "Key = " << key->str() << ", URL = " << buf.str() << std::endl;
-        //return osgDB::readImageFile( buf.str(), getOptions() );
-        //return HTTPClient::readImageFile( buf.str(), getOptions(), progress );
-        
-        osg::ref_ptr<osg::Image> image;
-		std::string bufStr;
-		bufStr = buf.str();
-        HTTPClient::readImageFile( bufStr, image, 0L, progress ); //getOptions(), progress );
-        return image.release();
+        std::string bufStr;
+        bufStr = buf.str();
+        return URI(bufStr).getImage( _dbOptions.get(), progress );
     }
 
     // override
@@ -231,6 +191,7 @@ private:
     std::string _layer;
     std::string _format;
     MapService _map_service;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/arcgis_map_cache/ReaderWriterArcGISMapCache.cpp b/src/osgEarthDrivers/arcgis_map_cache/ReaderWriterArcGISMapCache.cpp
index a11c484..269fc8f 100644
--- a/src/osgEarthDrivers/arcgis_map_cache/ReaderWriterArcGISMapCache.cpp
+++ b/src/osgEarthDrivers/arcgis_map_cache/ReaderWriterArcGISMapCache.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,8 @@
 
 #include <osgEarth/TileSource>
 #include <osgEarth/Registry>
+#include <osgEarth/URI>
+
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -65,50 +67,41 @@ public:
             _format = "png";
     }
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
+        _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
         //Set the profile to global geodetic.
         setProfile(osgEarth::Registry::instance()->getGlobalGeodeticProfile());
+
+        return STATUS_OK;
     }
 
     // override
     osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
     {
-        //If we are given a PlateCarreTileKey, use the MercatorTileConverter to create the image
-        //if ( dynamic_cast<const PlateCarreTileKey&>( key ) )
-        //{
-        //    MercatorTileConverter converter( this );
-        //    return converter.createImage( static_cast<const PlateCarreTileKey&>( key ) );
-        //}
-
         std::stringstream buf;
 
-        //int level = key.getLevelOfDetail();
         int level = key.getLevelOfDetail()-1;
 
         unsigned int tile_x, tile_y;
         key.getTileXY( tile_x, tile_y );
 
-        buf << _url << "/" << _map 
+        std::string bufStr = Stringify()
+            << _url << "/" << _map 
             << "/Layers/" << _layer
             << "/L" << std::hex << std::setw(2) << std::setfill('0') << level
             << "/R" << std::hex << std::setw(8) << std::setfill('0') << tile_y
             << "/C" << std::hex << std::setw(8) << std::setfill('0') << tile_x << "." << _format;
-
-        //OE_NOTICE << "Key = " << key.str() << ", URL = " << buf.str() << std::endl;
-        //return osgDB::readImageFile( buf.str(), getOptions() );
-        //return HTTPClient::readImageFile( buf.str(), getOptions(), progress);
         
         osg::ref_ptr<osg::Image> image;
-		std::string bufStr;
-		bufStr = buf.str();
-        HTTPClient::readImageFile( bufStr, image, 0L, progress ); //getOptions(), progress );
-        return image.release();
+
+        return URI(bufStr).getImage( _dbOptions.get(), progress );
     }
 
     // override
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress)
+    osg::HeightField* createHeightField( const TileKey& key, ProgressCallback* progress)
     {
         //TODO
         return NULL;
@@ -125,6 +118,7 @@ private:
     std::string _map;
     std::string _layer;
     std::string _format;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/cache_filesystem/CMakeLists.txt b/src/osgEarthDrivers/cache_filesystem/CMakeLists.txt
new file mode 100644
index 0000000..9b01e5d
--- /dev/null
+++ b/src/osgEarthDrivers/cache_filesystem/CMakeLists.txt
@@ -0,0 +1,19 @@
+
+IF (ZLIB_FOUND)
+    ADD_DEFINITIONS(-DOSGEARTH_HAVE_ZLIB)
+ENDIF(ZLIB_FOUND)
+
+SET(TARGET_H
+    FileSystemCache
+)
+SET(TARGET_SRC 
+    FileSystemCache.cpp
+)
+SETUP_PLUGIN(osgearth_cache_filesystem)
+
+
+# to install public driver includes:
+SET(LIB_NAME cache_filesystem)
+SET(LIB_PUBLIC_HEADERS FileSystemCache)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
+
diff --git a/src/osgEarthDrivers/cache_filesystem/FileSystemCache b/src/osgEarthDrivers/cache_filesystem/FileSystemCache
new file mode 100644
index 0000000..a6abf07
--- /dev/null
+++ b/src/osgEarthDrivers/cache_filesystem/FileSystemCache
@@ -0,0 +1,72 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_CACHE_FILESYSTEM
+#define OSGEARTH_DRIVER_CACHE_FILESYSTEM 1
+
+#include <osgEarth/Common>
+#include <osgEarth/Cache>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+    
+    /**
+     * Serializable options for the FileSystemCache.
+     */
+    class FileSystemCacheOptions : public CacheOptions
+    {
+    public:
+        FileSystemCacheOptions( const ConfigOptions& options =ConfigOptions() )
+            : CacheOptions( options )
+        {
+            setDriver( "filesystem" );
+            fromConfig( _conf ); 
+        }
+
+        /** dtor */
+        virtual ~FileSystemCacheOptions() { }
+
+    public:
+        /** Root path of the cache folder */
+        optional<std::string>& rootPath() { return _path; }
+        const optional<std::string>& rootPath() const { return _path; }
+
+    public:
+        virtual Config getConfig() const {
+            Config conf = ConfigOptions::getConfig();
+            conf.addIfSet( "path", _path );
+            return conf;
+        }
+        virtual void mergeConfig( const Config& conf ) {
+            ConfigOptions::mergeConfig( conf );            
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "path", _path );
+        }
+
+        optional<std::string> _path;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_DRIVER_CACHE_FILESYSTEM
+
diff --git a/src/osgEarthDrivers/cache_filesystem/FileSystemCache.cpp b/src/osgEarthDrivers/cache_filesystem/FileSystemCache.cpp
new file mode 100644
index 0000000..00e61f3
--- /dev/null
+++ b/src/osgEarthDrivers/cache_filesystem/FileSystemCache.cpp
@@ -0,0 +1,490 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "FileSystemCache"
+#include <osgEarth/Cache>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/XmlUtils>
+#include <osgEarth/URI>
+#include <osgEarth/Registry>
+#include <osgDB/FileUtils>
+#include <osgDB/FileNameUtils>
+#include <fstream>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+using namespace osgEarth::Threading;
+
+#ifndef _WIN32
+#   include <unistd.h>
+#endif
+
+namespace
+{
+    /** 
+     * Cache that stores data in the local file system.
+     */
+    class FileSystemCache : public Cache
+    {
+    public:
+        FileSystemCache() { } // unused
+        FileSystemCache( const FileSystemCache& rhs, const osg::CopyOp& op ) { } // unused
+        META_Object( osgEarth, FileSystemCache );
+
+        /**
+         * Constructs a new file system cache.
+         * @param options Options structure that comes from a serialized description of 
+         *        the object.
+         */
+        FileSystemCache( const CacheOptions& options );
+
+    public: // Cache interface
+
+        CacheBin* addBin( const std::string& binID );
+
+        CacheBin* getOrCreateDefaultBin();
+
+    protected:
+
+        void init();
+
+        std::string            _rootPath;
+    };
+
+    /** 
+     * Cache bin implementation for a FileSystemCache.
+     * You don't need to create this object directly; use FileSystemCache::createBin instead.
+    */
+    class FileSystemCacheBin : public CacheBin
+    {
+    public:
+        FileSystemCacheBin( const std::string& name, const std::string& rootPath );
+
+    public: // CacheBin interface
+
+        ReadResult readObject( const std::string& key, double maxAge =DBL_MAX );
+
+        ReadResult readImage( const std::string& key, double maxAge =DBL_MAX );
+
+        ReadResult readNode( const std::string& key, double maxAge =DBL_MAX );
+
+        ReadResult readString( const std::string& key, double maxAge =DBL_MAX );
+
+        bool write( const std::string& key, const osg::Object* object, const Config& meta );
+
+        bool isCached( const std::string& key, double maxAge =DBL_MAX );
+
+        bool purge();
+
+        Config readMetadata();
+
+        bool writeMetadata( const Config& meta );
+
+    protected:
+        bool purgeDirectory( const std::string& dir );
+
+        bool                              _ok;
+        std::string                       _metaPath;
+        osg::ref_ptr<osgDB::ReaderWriter> _rw;
+        osg::ref_ptr<osgDB::Options>      _rwOptions;
+        Threading::ReadWriteMutex         _rwmutex;
+    };
+
+    void writeMeta( const std::string& fullPath, const Config& meta )
+    {
+        std::ofstream outmeta( fullPath.c_str() );
+        if ( outmeta.is_open() )
+        {
+            outmeta << meta.toJSON();
+            outmeta.flush();
+            outmeta.close();
+        }
+    }
+
+    void readMeta( const std::string& fullPath, Config& meta )
+    {
+        std::ifstream inmeta( fullPath.c_str() );
+        if ( inmeta.is_open() )
+        {
+            inmeta >> std::noskipws;
+            std::stringstream buf;
+            buf << inmeta.rdbuf();
+            std::string bufStr;
+            bufStr = buf.str();
+            meta.fromJSON( bufStr );
+        }
+    }
+}
+
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[FileSystemCache] "
+
+//#undef  OE_DEBUG
+//#define OE_DEBUG OE_INFO
+
+namespace
+{
+    FileSystemCache::FileSystemCache( const CacheOptions& options ) :
+    Cache( options )
+    {
+        FileSystemCacheOptions fsco( options );
+        _rootPath = URI( *fsco.rootPath(), options.referrer() ).full();
+        init();
+    }
+
+    void
+    FileSystemCache::init()
+    {
+        osgDB::makeDirectory( _rootPath );
+        if ( !osgDB::fileExists( _rootPath ) )
+        {
+            OE_WARN << LC << "FAILED to create root folder for cache at \"" << _rootPath << "\"" << std::endl;
+            _ok = false;
+        }
+    }
+
+    CacheBin*
+    FileSystemCache::addBin( const std::string& name )
+    {
+        return _bins.getOrCreate( name, new FileSystemCacheBin( name, _rootPath ) );
+    }
+
+    CacheBin*
+    FileSystemCache::getOrCreateDefaultBin()
+    {
+        static Threading::Mutex s_defaultBinMutex;
+        if ( !_defaultBin.valid() )
+        {
+            Threading::ScopedMutexLock lock( s_defaultBinMutex );
+            if ( !_defaultBin.valid() ) // double-check
+            {
+                _defaultBin = new FileSystemCacheBin( "__default", _rootPath );
+            }
+        }
+        return _defaultBin.get();
+    }
+
+    //------------------------------------------------------------------------
+
+    FileSystemCacheBin::FileSystemCacheBin(const std::string&   binID,
+                                           const std::string&   rootPath) :
+    CacheBin ( binID ),
+    _ok      ( true )
+    {
+        std::string binPath = osgDB::concatPaths( rootPath, binID );
+        _metaPath = osgDB::concatPaths( binPath, "osgearth_cacheinfo.json" );
+
+        OE_INFO << LC << "Initializing cache bin: " << _metaPath << std::endl;
+        osgDB::makeDirectoryForFile( _metaPath );
+        if ( !osgDB::fileExists( binPath ) )
+        {
+            OE_WARN << LC << "FAILED to create folder for cache bin at \"" << binPath << "\"" << std::endl;
+            _ok = false;
+        }
+        else
+        {
+            _rw = osgDB::Registry::instance()->getReaderWriterForExtension( "osgb" );
+#ifdef OSGEARTH_HAVE_ZLIB
+            _rwOptions = Registry::instance()->cloneOrCreateOptions();
+            _rwOptions->setOptionString( "Compressor=zlib" );
+#endif
+            CachePolicy::NO_CACHE.apply(_rwOptions.get());
+        }
+    }
+
+    ReadResult
+    FileSystemCacheBin::readImage(const std::string& key, double maxAge)
+    {
+        if ( !_ok ) return 0L;
+
+        //todo: handle maxAge
+
+        // mangle "key" into a legal path name
+        URI fileURI( toLegalFileName(key), _metaPath );
+
+        osgDB::ReaderWriter::ReadResult r;
+        {
+            ScopedReadLock sharedLock( _rwmutex );
+            r = _rw->readImage( fileURI.full() + ".osgb", _rwOptions.get() );
+            if ( r.success() )
+            {
+                // read metadata
+                Config meta;
+                std::string metafile = fileURI.full() + ".meta";
+                if ( osgDB::fileExists(metafile) )
+                    readMeta( metafile, meta );
+
+                return ReadResult( r.getImage(), meta );
+            }
+        }
+
+        return ReadResult(); //error
+    }
+
+    ReadResult
+    FileSystemCacheBin::readObject(const std::string& key, double maxAge)
+    {
+        if ( !_ok ) return 0L;
+
+        //todo: handle maxAge
+
+        // mangle "key" into a legal path name
+        URI fileURI( toLegalFileName(key), _metaPath );
+
+        osgDB::ReaderWriter::ReadResult r;
+        {
+            ScopedReadLock sharedLock( _rwmutex );
+            r = _rw->readObject( fileURI.full() + ".osgb", _rwOptions.get() );
+            if ( r.success() )
+            {
+                // read metadata
+                Config meta;
+                std::string metafile = fileURI.full() + ".meta";
+                if ( osgDB::fileExists(metafile) )
+                    readMeta( metafile, meta );
+
+                // TODO: read metadata
+                return ReadResult( r.getObject(), meta );
+            }
+        }
+
+        return ReadResult();
+    }
+
+    ReadResult
+    FileSystemCacheBin::readNode(const std::string& key, double maxAge)
+    {
+        if ( !_ok ) return 0L;
+
+        //todo: handle maxAge
+
+        // mangle "key" into a legal path name
+        URI fileURI( toLegalFileName(key), _metaPath );
+
+        osgDB::ReaderWriter::ReadResult r;
+        {
+            ScopedReadLock sharedLock( _rwmutex );
+            r = _rw->readNode( fileURI.full() + ".osgb", _rwOptions.get() );
+            if ( r.success() )
+            {            
+                // read metadata
+                Config meta;
+                std::string metafile = fileURI.full() + ".meta";
+                if ( osgDB::fileExists(metafile) )
+                    readMeta( metafile, meta );
+
+                return ReadResult( r.getNode(), meta );
+            }
+        }
+
+        return ReadResult();
+    }
+
+    ReadResult
+    FileSystemCacheBin::readString(const std::string& key, double maxAge)
+    {
+        ReadResult r = readObject(key, maxAge);
+        return r.succeeded() && r.get<StringObject>() ? r : ReadResult();
+    }
+
+    bool
+    FileSystemCacheBin::write( const std::string& key, const osg::Object* object, const Config& meta )
+    {
+        if ( !_ok || !object ) return false;
+
+        // convert the key into a legal filename:
+        URI fileURI( toLegalFileName(key), _metaPath );
+
+        bool objWriteOK = false;
+        {
+            // prevent cache contention:
+            ScopedWriteLock exclusiveLock( _rwmutex );
+
+            // make a home for it..
+            if ( !osgDB::fileExists( osgDB::getFilePath(fileURI.full()) ) )
+                osgDB::makeDirectoryForFile( fileURI.full() );
+
+            // write it.  
+            osgDB::ReaderWriter::WriteResult r;      
+
+            if ( dynamic_cast<const osg::Image*>(object) )
+            {
+                std::string filename = fileURI.full() + ".osgb";
+                r = _rw->writeImage( *static_cast<const osg::Image*>(object), filename, _rwOptions.get() );
+                objWriteOK = r.success();
+            }
+            else if ( dynamic_cast<const osg::Node*>(object) )
+            {
+                std::string filename = fileURI.full() + ".osgb";
+                r = _rw->writeNode( *static_cast<const osg::Node*>(object), filename, _rwOptions.get() );
+                objWriteOK = r.success();
+            }
+            else
+            {
+                std::string filename = fileURI.full() + ".osgb";
+                r = _rw->writeObject( *object, filename );
+                objWriteOK = r.success();
+            }
+
+            // write metadata
+            if ( !meta.empty() && objWriteOK )
+            {
+                std::string metaname = fileURI.full() + ".meta";
+                writeMeta( metaname, meta );
+            }
+        }
+
+        if ( objWriteOK )
+        {
+            OE_DEBUG << LC << "Wrote \"" << key << "\" to cache bin " << getID() << std::endl;
+        }
+        else
+        {
+            OE_WARN << LC << "FAILED to write \"" << key << "\" to cache bin " << getID() << std::endl;
+        }
+
+        return objWriteOK;
+    }
+
+    bool
+    FileSystemCacheBin::isCached( const std::string& key, double maxAge )
+    {
+        if ( !_ok ) return false;
+
+        URI fileURI( toLegalFileName(key), _metaPath );
+        return osgDB::fileExists( fileURI.full() + ".osgb" );
+    }
+
+    bool
+    FileSystemCacheBin::purgeDirectory( const std::string& dir )
+    {
+        bool allOK = true;
+        osgDB::DirectoryContents dc = osgDB::getDirectoryContents( dir );
+
+        for( osgDB::DirectoryContents::iterator i = dc.begin(); i != dc.end(); ++i )
+        {
+            int ok = 0;
+            std::string full = osgDB::concatPaths(dir, *i);
+            
+            if ( full.find( getID() ) != std::string::npos ) // safety latch
+            {
+                osgDB::FileType type = osgDB::fileType( full );
+
+                if ( type == osgDB::DIRECTORY && i->compare(".") != 0 && i->compare("..") != 0 )
+                {
+                    purgeDirectory( full );
+
+                    ok = ::unlink( full.c_str() );
+                    OE_DEBUG << LC << "Unlink: " << full << std::endl;
+                }
+                else if ( type == osgDB::REGULAR_FILE )
+                {
+                    if ( full != _metaPath )
+                    {
+                        ok = ::unlink( full.c_str() );
+                        OE_DEBUG << LC << "Unlink: " << full << std::endl;
+                    }
+                }
+
+                if ( ok != 0 )
+                    allOK = false;
+            }
+        }
+
+        return allOK;
+    }
+
+    bool
+    FileSystemCacheBin::purge()
+    {
+        if ( !_ok ) return false;
+        {
+            ScopedWriteLock exclusiveLock( _rwmutex );
+            std::string binDir = osgDB::getFilePath( _metaPath );
+            return purgeDirectory( binDir );
+        }
+    }
+
+    Config
+    FileSystemCacheBin::readMetadata()
+    {
+        if ( !_ok ) return Config();
+
+        ScopedReadLock sharedLock( _rwmutex );
+        
+        Config conf;
+        conf.fromJSON( URI(_metaPath).getString(_rwOptions.get()) );
+
+        return conf;
+    }
+
+    bool
+    FileSystemCacheBin::writeMetadata( const Config& conf )
+    {
+        if ( !_ok ) return false;
+
+        ScopedWriteLock exclusiveLock( _rwmutex );
+
+        std::fstream output( _metaPath.c_str(), std::ios_base::out );
+        if ( output.is_open() )
+        {
+            output << conf.toJSON(true);
+            output.flush();
+            output.close();
+            return true;
+        }
+        return false;
+    }
+}
+
+//------------------------------------------------------------------------
+
+/**
+ * This driver defers loading of the source data to the appropriate OSG plugin. You
+ * must explicity set an override profile when using this driver.
+ *
+ * For example, use this driver to load a simple jpeg file; then set the profile to
+ * tell osgEarth its projection.
+ */
+class FileSystemCacheDriver : public CacheDriver
+{
+public:
+    FileSystemCacheDriver()
+    {
+        supportsExtension( "osgearth_cache_filesystem", "File system cache for osgEarth" );
+    }
+
+    virtual const char* className()
+    {
+        return "File system cache for osgEarth";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return ReadResult( new FileSystemCache( getCacheOptions(options) ) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_cache_filesystem, FileSystemCacheDriver)
diff --git a/src/osgEarthDrivers/cache_sqlite3/CMakeLists.txt b/src/osgEarthDrivers/cache_sqlite3/CMakeLists.txt
index 84acd71..daca670 100644
--- a/src/osgEarthDrivers/cache_sqlite3/CMakeLists.txt
+++ b/src/osgEarthDrivers/cache_sqlite3/CMakeLists.txt
@@ -1,10 +1,10 @@
 
 INCLUDE_DIRECTORIES( ${SQLITE3_INCLUDE_DIR} )
 
-SET(TARGET_COMMON_LIBRARIES
-    ${TARGET_COMMON_LIBRARIES}
-    ${SQLITE3_LIBRARY}
-)
+#SET(TARGET_COMMON_LIBRARIES
+#    ${TARGET_COMMON_LIBRARIES}
+#    ${SQLITE3_LIBRARY}
+#)
 
 SET(TARGET_H
     Sqlite3CacheOptions
@@ -12,6 +12,9 @@ SET(TARGET_H
 SET(TARGET_SRC 
     Sqlite3Cache.cpp
 )
+
+SET(TARGET_LIBRARIES_VARS SQLITE3_LIBRARY)
+
 SETUP_PLUGIN(osgearth_cache_sqlite3)
 
 
diff --git a/src/osgEarthDrivers/debug/DebugOptions b/src/osgEarthDrivers/debug/DebugOptions
index 26dad0b..b4aa106 100644
--- a/src/osgEarthDrivers/debug/DebugOptions
+++ b/src/osgEarthDrivers/debug/DebugOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,23 +32,26 @@ namespace osgEarth { namespace Drivers
         optional<std::string>& colorCode() { return _colorCode; }
         const optional<std::string>& colorCode() const { return _colorCode; }
 
-        optional<bool>& tms() { return _tms; }
-        const optional<bool>& tms() const { return _tms; }
+        optional<bool>& invertY() { return _invertY; }
+        const optional<bool>& invertY() const { return _invertY; }
 
     public:
         DebugOptions( const TileSourceOptions& opt =TileSourceOptions() ) : TileSourceOptions( opt ),
             _colorCode( "#000000" ),
-            _tms( false )
+            _invertY( false )
         {
             setDriver( "debug" );
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~DebugOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
             conf.updateIfSet( "color", _colorCode );
-            conf.updateIfSet( "tms", _tms );
+            conf.updateIfSet( "invertY", _invertY );
             return conf;
         }
 
@@ -61,11 +64,11 @@ namespace osgEarth { namespace Drivers
     private:
         void fromConfig( const Config& conf ) {
             conf.getIfSet( "color", _colorCode );
-            conf.getIfSet( "tms", _tms);
+            conf.getIfSet( "invertY", _invertY);
         }
 
         optional<std::string> _colorCode;
-        optional<bool> _tms;
+        optional<bool>        _invertY;
     };
 
 } } // namespace osgEarth::Drivers
diff --git a/src/osgEarthDrivers/debug/DebugTileSource.cpp b/src/osgEarthDrivers/debug/DebugTileSource.cpp
index 1f9f97b..5dbe0e2 100644
--- a/src/osgEarthDrivers/debug/DebugTileSource.cpp
+++ b/src/osgEarthDrivers/debug/DebugTileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,9 +25,7 @@
 #include <osgEarthSymbology/Geometry>
 #include <osgEarthSymbology/GeometryRasterizer>
 #include <osgDB/FileNameUtils>
-#if !((OPENSCENEGRAPH_MAJOR_VERSION <= 2) && (OPENSCENEGRAPH_MINOR_VERSION <= 8))
-# include <osgText/Glyph>
-#endif
+#include <osgText/Glyph>
 #include <osgText/Font>
 #include <osg/Notify>
 #include <sstream>
@@ -75,18 +73,17 @@ public:
         _geom->push_back( osg::Vec3(250, 5, 0) );
         _geom->push_back( osg::Vec3(250, 250, 0) );
         _geom->push_back( osg::Vec3(5, 250, 0) );
-        _font = osgText::readFontFile( "arial.ttf" );
+        _font = Registry::instance()->getDefaultFont();
 
         _color = osgEarth::htmlColorToVec4f( *_options.colorCode() );
     }
 
-    // Yahoo! uses spherical mercator, but the top LOD is a 2x2 tile set.
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* options )
     {
-        if ( overrideProfile )
-            setProfile( overrideProfile );
-        else
+        if ( !getProfile() )
             setProfile( Profile::create("global-geodetic") );
+
+        return STATUS_OK;
     }
 
     osg::Image* createImage( const TileKey& key, ProgressCallback* progress )
@@ -98,7 +95,7 @@ public:
         
         // next render the tile key text:
         std::stringstream buf;        
-        if (*_options.tms())
+        if (_options.invertY() == true)
         {
             //Print out a TMS key for the TileKey
             unsigned int tileX, tileY;
@@ -113,31 +110,31 @@ public:
             buf << key.str();
         }        
         
-        std::string text = buf.str();
+        std::string text;
+        text = buf.str();
 
         unsigned x = 10, y = 10;
 
         osgText::FontResolution resolution(32, 32);
         for( unsigned i=0; i<text.length(); ++i )
         {
-#if !((OPENSCENEGRAPH_MAJOR_VERSION <= 2) && (OPENSCENEGRAPH_MINOR_VERSION <= 8))
             osgText::Glyph* glyph = _font->getGlyph( resolution, text.at(i) );
             copySubImageAndColorize( glyph, image, x, y, _color );
             x += glyph->s() + 1;
-#endif
         }
 
         return image;
     }
 
-    virtual std::string getExtension() const 
+    std::string getExtension() const 
     {
         return "png";
     }
 
-    virtual bool supportsPersistentCaching() const
+    /** Tell the terrain engine not to cache tiles form this source. */
+    CachePolicy getCachePolicyHint() const
     {
-        return false;
+        return CachePolicy::NO_CACHE;
     }
 
 private:
diff --git a/src/osgEarthDrivers/earth/CMakeLists.txt b/src/osgEarthDrivers/earth/CMakeLists.txt
index 06994d5..e7fca8c 100644
--- a/src/osgEarthDrivers/earth/CMakeLists.txt
+++ b/src/osgEarthDrivers/earth/CMakeLists.txt
@@ -17,5 +17,12 @@ SET(TARGET_SRC
     EarthFileSerializer1.cpp
     EarthFileSerializer2.cpp)
 
-SETUP_PLUGIN(earth)
+IF( CMAKE_DEBUG_POSTFIX )
+    ADD_DEFINITIONS( -DOSGEARTH_DEBUG_POSTFIX=${CMAKE_DEBUG_POSTFIX} )
+ENDIF()
+
+IF( CMAKE_RELEASE_POSTFIX )
+    ADD_DEFINITIONS( -DOSGEARTH_RELEASE_POSTFIX=${CMAKE_RELEASE_POSTFIX} )
+ENDIF()
 
+SETUP_PLUGIN(earth)
diff --git a/src/osgEarthDrivers/earth/EarthFileSerializer b/src/osgEarthDrivers/earth/EarthFileSerializer
index 73219e6..e96d66e 100644
--- a/src/osgEarthDrivers/earth/EarthFileSerializer
+++ b/src/osgEarthDrivers/earth/EarthFileSerializer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/earth/EarthFileSerializer1.cpp b/src/osgEarthDrivers/earth/EarthFileSerializer1.cpp
index 53f0127..4428240 100644
--- a/src/osgEarthDrivers/earth/EarthFileSerializer1.cpp
+++ b/src/osgEarthDrivers/earth/EarthFileSerializer1.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,13 +25,18 @@ EarthFileSerializer1::deserialize( const Config& conf, const std::string& refere
 {
     // piece together a MapOptions, TerrainOptions, and MapNodeOptions:
     Config mapOptionsConf;
+    mapOptionsConf.setReferrer( conf.referrer() );
+
     if ( conf.hasValue("name") )
         mapOptionsConf.update("name", conf.value("name"));
     if ( conf.hasValue("type") )
         mapOptionsConf.update("type", conf.value("type"));
 
     Config terrainOptionsConf;
+    terrainOptionsConf.setReferrer( conf.referrer() );
+
     Config mapNodeOptionsConf;
+    mapNodeOptionsConf.setReferrer( conf.referrer() );
 
     for( ConfigSet::const_iterator i = conf.children().begin(); i != conf.children().end(); ++i )
     {
@@ -42,10 +47,11 @@ EarthFileSerializer1::deserialize( const Config& conf, const std::string& refere
         {
             if (child.key() == "cache")
             {
-                std::string type = child.attr("type");
-                if (type.empty()) type = "tms";
+                std::string type = child.value("type");
+                if (type.empty())
+                    type = "filesystem";
                 Config cacheConfig(child);
-                cacheConfig.attrs()["driver"] = type;
+                cacheConfig.set("driver", type );
                 mapOptionsConf.add( cacheConfig );
             }
             else
@@ -81,15 +87,6 @@ EarthFileSerializer1::deserialize( const Config& conf, const std::string& refere
     MapNodeOptions mapNodeOptions( mapNodeOptionsConf );
     mapNodeOptions.setTerrainOptions( TerrainOptions(terrainOptionsConf) );
 
-    //Set the reference URI of the cache config.
-    if (mapOptions.cache().isSet())
-    {
-        mapOptions.cache()->setReferenceURI(referenceURI);
-    }
-
-    // the reference URI allows osgEarth to resolve relative paths within the configuration
-    mapOptions.referenceURI() = referenceURI;
-
     Map* map = new Map( mapOptions );
 
     // Read the layers in LAST (otherwise they will not benefit from the cache/profile configuration)
diff --git a/src/osgEarthDrivers/earth/EarthFileSerializer2.cpp b/src/osgEarthDrivers/earth/EarthFileSerializer2.cpp
index a53c61a..f651f08 100644
--- a/src/osgEarthDrivers/earth/EarthFileSerializer2.cpp
+++ b/src/osgEarthDrivers/earth/EarthFileSerializer2.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include "EarthFileSerializer"
+#include <osgEarth/FileUtils>
 
 using namespace osgEarth;
 
@@ -25,22 +26,6 @@ EarthFileSerializer2::deserialize( const Config& conf, const std::string& refere
 {
     MapOptions mapOptions( conf.child( "options" ) );
 
-    //Set the reference URI of the cache config.
-    if (mapOptions.cache().isSet())
-    {
-        mapOptions.cache()->setReferenceURI(referenceURI);
-    }
-
-    // the reference URI allows osgEarth to resolve relative paths within the configuration
-    mapOptions.referenceURI() = referenceURI;
-
-    // manually extract the "type" from the main tag:
-    const std::string& csVal = conf.value("type");
-    mapOptions.coordSysType() = 
-        csVal == "cube" ? MapOptions::CSTYPE_GEOCENTRIC_CUBE :
-        csVal == "projected" || csVal == "flat" ? MapOptions::CSTYPE_PROJECTED :
-        MapOptions::CSTYPE_GEOCENTRIC;
-
     // legacy: check for name/type in top-level attrs:
     if ( conf.hasValue( "name" ) || conf.hasValue( "type" ) )
     {
@@ -110,8 +95,7 @@ EarthFileSerializer2::deserialize( const Config& conf, const std::string& refere
     {
         Config layerDriverConf = *i;
         if ( !layerDriverConf.hasValue("driver") )
-            layerDriverConf.attr("driver") = "feature_geom";
-        //const Config& layerDriverConf = *i;
+            layerDriverConf.set("driver", "feature_geom");
 
         ModelLayerOptions layerOpt( layerDriverConf );
         layerOpt.name() = layerDriverConf.value( "name" );
@@ -145,9 +129,6 @@ EarthFileSerializer2::deserialize( const Config& conf, const std::string& refere
         osgDB::Registry::instance()->getDataFilePathList().push_back( path );
     }
 
-
-
-
     MapNode* mapNode = new MapNode( map, mapNodeOptions );
 
     // External configs:
@@ -165,7 +146,7 @@ Config
 EarthFileSerializer2::serialize( MapNode* input ) const
 {
     Config mapConf("map");
-    mapConf.attr("version") = "2";
+    mapConf.set("version", "2");
 
     if ( !input || !input->getMap() )
         return mapConf;
@@ -174,7 +155,7 @@ EarthFileSerializer2::serialize( MapNode* input ) const
     MapFrame mapf( map, Map::ENTIRE_MODEL );
 
     // the map and node options:
-    Config optionsConf = map->getMapOptions().getConfig();
+    Config optionsConf = map->getInitialMapOptions().getConfig();
     optionsConf.merge( input->getMapNodeOptions().getConfig() );
     mapConf.add( "options", optionsConf );
 
@@ -182,28 +163,31 @@ EarthFileSerializer2::serialize( MapNode* input ) const
     for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
     {
         ImageLayer* layer = i->get();
+        //Config layerConf = layer->getInitialOptions().getConfig();
         Config layerConf = layer->getImageLayerOptions().getConfig();
-        layerConf.attr("name") = layer->getName();
-        layerConf.attr("driver") = layer->getImageLayerOptions().driver()->getDriver();
+        layerConf.set("name", layer->getName());
+        layerConf.set("driver", layer->getInitialOptions().driver()->getDriver());
+        layerConf.remove("default_tile_size");
         mapConf.add( "image", layerConf );
     }
 
     for( ElevationLayerVector::const_iterator i = mapf.elevationLayers().begin(); i != mapf.elevationLayers().end(); ++i )
     {
         ElevationLayer* layer = i->get();
+        //Config layerConf = layer->getInitialOptions().getConfig();
         Config layerConf = layer->getElevationLayerOptions().getConfig();
-        layerConf.attr("name") = layer->getName();
-        layerConf.attr("driver") = layer->getElevationLayerOptions().driver()->getDriver();
+        layerConf.set("name", layer->getName());
+        layerConf.set("driver", layer->getInitialOptions().driver()->getDriver());
+        layerConf.remove("default_tile_size");
         mapConf.add( "elevation", layerConf );
     }
 
     for( ModelLayerVector::const_iterator i = mapf.modelLayers().begin(); i != mapf.modelLayers().end(); ++i )
     {
         ModelLayer* layer = i->get();
-        Config layerConf = layer->getModelLayerOptions().getConfig(); //layer->getDriverConfig();
-        layerConf.attr("name") = layer->getName();
-        //layerConf.attr("driver") = layer->getDriverConfig().value("driver");
-        layerConf.attr("driver") = layer->getModelLayerOptions().driver()->getDriver();
+        Config layerConf = layer->getModelLayerOptions().getConfig();
+        layerConf.set("name", layer->getName());
+        layerConf.set("driver", layer->getModelLayerOptions().driver()->getDriver());
         mapConf.add( "model", layerConf );
     }
 
@@ -211,7 +195,7 @@ EarthFileSerializer2::serialize( MapNode* input ) const
     if ( !ext.empty() )
     {
         ext.key() = "external";
-        mapConf.addChild( ext );
+        mapConf.add( ext );
     }
 
     return mapConf;
diff --git a/src/osgEarthDrivers/earth/ReaderWriterOsgEarth.cpp b/src/osgEarthDrivers/earth/ReaderWriterOsgEarth.cpp
index 84dbba0..dfc5214 100644
--- a/src/osgEarthDrivers/earth/ReaderWriterOsgEarth.cpp
+++ b/src/osgEarthDrivers/earth/ReaderWriterOsgEarth.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,21 +21,42 @@
 #include <osgEarth/MapNode>
 #include <osgEarth/Registry>
 #include <osgEarth/XmlUtils>
-#include <osgEarth/HTTPClient>
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
 #include <osgDB/Registry>
 #include <string>
 #include <sstream>
+#include <osgEarthUtil/Common>
 
 using namespace osgEarth;
 
 #define LC "[ReaderWriterEarth] "
 
+// Macros to determine the filename for dependent libs.
+#define Q2(x) #x
+#define Q(x)  Q2(x)
+
+#if defined(_DEBUG) && defined(OSGEARTH_DEBUG_POSTFIX)
+#    define LIBNAME_UTIL "osgEarthUtil" ## Q(OSGEARTH_DEBUG_POSTFIX)
+#elif defined(OSGEARTH_RELEASE_POSTFIX)
+#    define LIBNAME_UTIL "osgEarthUtil" ## Q(OSGEARTH_RELEASE_POSTFIX)
+#else
+#    define LIBNAME_UTIL "osgEarthUtil"
+#endif
+
+
+
 class ReaderWriterEarth : public osgDB::ReaderWriter
 {
     public:
-        ReaderWriterEarth() {}
+        ReaderWriterEarth()
+        {
+            // force the loading of other osgEarth libraries that might be needed to 
+            // deserialize an earth file. 
+            // osgEarthUtil: contains ColorFilter implementations
+            OE_DEBUG << LC << "Forced load: " << LIBNAME_UTIL << std::endl;
+            osgDB::Registry::instance()->loadLibrary( LIBNAME_UTIL );
+        }
 
         virtual const char* className()
         {
@@ -47,12 +68,17 @@ class ReaderWriterEarth : public osgDB::ReaderWriter
             return osgDB::equalCaseInsensitive( extension, "earth" );
         }
 
-        virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+        virtual ReadResult readObject(const std::string& file_name, const osgDB::Options* options) const
         {
             return readNode( file_name, options );
         }
 
-        virtual WriteResult writeNode(const osg::Node& node, const std::string& fileName, const Options* options ) const
+        virtual ReadResult readObject(std::istream& in, const osgDB::Options* options) const
+        {
+            return readNode( in, options );
+        }
+
+        virtual WriteResult writeNode(const osg::Node& node, const std::string& fileName, const osgDB::Options* options ) const
         {
             if ( !acceptsExtension( osgDB::getFileExtension(fileName) ) )
                 return WriteResult::FILE_NOT_HANDLED;
@@ -64,7 +90,7 @@ class ReaderWriterEarth : public osgDB::ReaderWriter
             return WriteResult::ERROR_IN_WRITING_FILE;            
         }
 
-        virtual WriteResult writeNode(const osg::Node& node, std::ostream& out, const Options* options ) const
+        virtual WriteResult writeNode(const osg::Node& node, std::ostream& out, const osgDB::Options* options ) const
         {
             osg::Node* searchNode = const_cast<osg::Node*>( &node );
             MapNode* mapNode = MapNode::findMapNode( searchNode );
@@ -82,7 +108,7 @@ class ReaderWriterEarth : public osgDB::ReaderWriter
             return WriteResult::FILE_SAVED;
         }
 
-        virtual ReadResult readNode(const std::string& fileName, const Options* options) const
+        virtual ReadResult readNode(const std::string& fileName, const osgDB::Options* options) const
         {
             std::string ext = osgDB::getFileExtension( fileName );
             if ( !acceptsExtension( ext ) )
@@ -110,31 +136,28 @@ class ReaderWriterEarth : public osgDB::ReaderWriter
 
             else
             {
-                std::string buf;
-                if ( HTTPClient::readString( fileName, buf ) != HTTPClient::RESULT_OK )
+                osgEarth::ReadResult r = URI(fileName).readString( options );
+                if ( r.failed() )
                     return ReadResult::ERROR_IN_READING_FILE;
 
                 // Since we're now passing off control to the stream, we have to pass along the
                 // reference URI as well..
-                osg::ref_ptr<Options> myOptions = options ? 
-                    static_cast<Options*>(options->clone(osg::CopyOp::DEEP_COPY_ALL)) : 
-                    new Options();
+                osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
 
-                URIContext( fileName ).store( myOptions.get() );
-                //myOptions->setPluginData( "__ReaderWriterOsgEarth::ref_uri", (void*)&fileName );
+                URIContext( fileName ).apply( myOptions.get() );
 
-                std::stringstream in( buf );
+                std::stringstream in( r.getString() );
                 return readNode( in, myOptions.get() );
             }
         }
 
-        virtual ReadResult readNode(std::istream& in, const Options* options ) const
+        virtual ReadResult readNode(std::istream& in, const osgDB::Options* options ) const
         {
             // pull the URI context from the options structure (since we're reading
             // from an "anonymous" stream here)
-            URIContext uriContext( options );            
+            URIContext uriContext( options ); 
 
-            osg::ref_ptr<XmlDocument> doc = XmlDocument::load( in, uriContext );            
+            osg::ref_ptr<XmlDocument> doc = XmlDocument::load( in, uriContext );
             if ( !doc.valid() )
                 return ReadResult::ERROR_IN_READING_FILE;
 
diff --git a/src/osgEarthDrivers/engine_osgterrain/CMakeLists.txt b/src/osgEarthDrivers/engine_osgterrain/CMakeLists.txt
index 94ba7f8..5264093 100644
--- a/src/osgEarthDrivers/engine_osgterrain/CMakeLists.txt
+++ b/src/osgEarthDrivers/engine_osgterrain/CMakeLists.txt
@@ -11,9 +11,9 @@ SET(TARGET_SRC
     Plugin.cpp
     SerialKeyNodeFactory.cpp
     SinglePassTerrainTechnique.cpp    
-    StreamingTerrain.cpp
+    StreamingTerrainNode.cpp
     StreamingTile.cpp
-    Terrain.cpp
+    TerrainNode.cpp
     Tile.cpp
     TileBuilder.cpp
 )
@@ -32,9 +32,9 @@ SET(TARGET_H
     OSGTileFactory
     SerialKeyNodeFactory
     SinglePassTerrainTechnique
-    StreamingTerrain
+    StreamingTerrainNode
     StreamingTile
-    Terrain
+    TerrainNode
     Tile
     TileBuilder
     TransparentLayer
diff --git a/src/osgEarthDrivers/engine_osgterrain/Common b/src/osgEarthDrivers/engine_osgterrain/Common
index e890f29..9b9e062 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Common
+++ b/src/osgEarthDrivers/engine_osgterrain/Common
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/engine_osgterrain/CustomTerrainTechnique b/src/osgEarthDrivers/engine_osgterrain/CustomTerrainTechnique
index 7128bdf..957ebe8 100644
--- a/src/osgEarthDrivers/engine_osgterrain/CustomTerrainTechnique
+++ b/src/osgEarthDrivers/engine_osgterrain/CustomTerrainTechnique
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -44,6 +44,9 @@ protected:
 
     TerrainTechnique( const TerrainTechnique& rhs, const osg::CopyOp& op ) : _tile(0L) { }
 
+    /** dtor */
+    virtual ~TerrainTechnique() { }
+
     Tile* _tile;
 
     friend class Tile;
@@ -68,6 +71,9 @@ protected:
 
     CustomTerrainTechnique( const CustomTerrainTechnique& rhs, const osg::CopyOp& op )
         : TerrainTechnique( rhs, op ) { }
+
+    /** dtor */
+    virtual ~CustomTerrainTechnique() { }
 };
 
 #endif // OSGEARTH_ENGINE_OSGTERRAIN_EXTENDED_TERRAIN_TECHNIQUE
diff --git a/src/osgEarthDrivers/engine_osgterrain/DynamicLODScaleCallback b/src/osgEarthDrivers/engine_osgterrain/DynamicLODScaleCallback
index 84ddd93..62cbc7c 100644
--- a/src/osgEarthDrivers/engine_osgterrain/DynamicLODScaleCallback
+++ b/src/osgEarthDrivers/engine_osgterrain/DynamicLODScaleCallback
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,6 +33,9 @@ struct DynamicLODScaleCallback : public osg::NodeCallback
 {
     DynamicLODScaleCallback( float fallOff ) : _fallOff(fallOff) { }
 
+    /** dtor */
+    virtual ~DynamicLODScaleCallback() { }
+
     void operator()( osg::Node* node, osg::NodeVisitor* nv )
     {
         osg::CullStack* cs = dynamic_cast<osg::CullStack*>(nv);
diff --git a/src/osgEarthDrivers/engine_osgterrain/FileLocationCallback b/src/osgEarthDrivers/engine_osgterrain/FileLocationCallback
index 77afe25..3b06645 100644
--- a/src/osgEarthDrivers/engine_osgterrain/FileLocationCallback
+++ b/src/osgEarthDrivers/engine_osgterrain/FileLocationCallback
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -37,13 +37,16 @@ class FileLocationCallback : public osgDB::FileLocationCallback
 public:
     FileLocationCallback() { }
 
+    /** dtor */
+    virtual ~FileLocationCallback() { }
+
     virtual Location fileLocation(const std::string& filename, const osgDB::Options* options)
     {
         Location result = REMOTE_FILE;
         //OE_NOTICE<<"fileLocation = "<<filename<<std::endl;
 
         unsigned int lod, x, y, id;
-        sscanf(filename.c_str(), "%d_%d_%d.%d", &lod, &x, &y, &id);
+        sscanf(filename.c_str(), "%d/%d/%d.%d", &lod, &x, &y, &id);
 
         osg::ref_ptr<OSGTerrainEngineNode> engine;
         OSGTerrainEngineNode::getEngineByUID( (UID)id, engine );
@@ -65,10 +68,6 @@ public:
                     break;
                 }
             }
-            //if ( engine->getTileFactory()->areChildrenCached( engine->getMap(), mapKey ) )
-            //{
-            //    result = LOCAL_FILE;
-            //}
         }
 
         return result;
diff --git a/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory b/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory
index 2a0021d..9fb3cca 100644
--- a/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory
+++ b/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -32,10 +32,15 @@ using namespace osgEarth;
 class KeyNodeFactory : public osg::Referenced
 {
 public:
+    virtual osg::Node* createRootNode( const TileKey& key ) =0;
+
     virtual osg::Node* createNode( const TileKey& key ) =0;
 
 protected:
     KeyNodeFactory();
+
+    /** dtor */
+    virtual ~KeyNodeFactory() { }
 };
 
 #endif // OSGEARTH_ENGINE_QUAD_TILE_NODE
diff --git a/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory.cpp b/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory.cpp
index 740e2f8..8ab3fda 100644
--- a/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/KeyNodeFactory.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique b/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique
index 84514fe..a49cc7f 100644
--- a/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique
+++ b/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique.cpp b/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique.cpp
index 952df2d..4bdbb5a 100644
--- a/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/MultiPassTerrainTechnique.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include "MultiPassTerrainTechnique"
-#include "Terrain"
+#include "TerrainNode"
 #include "TransparentLayer"
 #include <osgEarth/ImageUtils>
 
@@ -188,7 +188,8 @@ MultiPassTerrainTechnique::createGeometryPrototype(osgTerrain::Locator* masterLo
 {  
     osgTerrain::Layer* elevationLayer = _tile->getElevationLayer();
 
-    osg::Geometry* geometry = new osg::Geometry;
+    osg::Geometry* geometry = new osg::Geometry();
+    geometry->setUseVertexBufferObjects(true);
 
 	unsigned int numRows = 20;
     unsigned int numColumns = 20;
@@ -198,8 +199,10 @@ MultiPassTerrainTechnique::createGeometryPrototype(osgTerrain::Locator* masterLo
         numColumns = elevationLayer->getNumColumns();
         numRows = elevationLayer->getNumRows();
     }
+
+    osg::ref_ptr< TerrainNode > terrain = _tile->getTerrain();
     
-    float sampleRatio = _tile->getTerrain() ? _tile->getTerrain()->getSampleRatio() : 1.0f;
+    float sampleRatio = terrain.valid() ? terrain->getSampleRatio() : 1.0f;
     
     double i_sampleFactor = 1.0;
     double j_sampleFactor = 1.0;
@@ -249,7 +252,7 @@ MultiPassTerrainTechnique::createGeometryPrototype(osgTerrain::Locator* masterLo
     geometry->setNormalBinding(osg::Geometry::BIND_PER_VERTEX);
     
     //float minHeight = 0.0;
-    float scaleHeight = _tile->getTerrain() ? _tile->getTerrain()->getVerticalScale() : 1.0f;
+    float scaleHeight = terrain.valid() ? terrain->getVerticalScale() : 1.0f;
 
     //Reserve space for the elevations
     osg::ref_ptr<osg::FloatArray> elevations = new osg::FloatArray;
@@ -320,7 +323,7 @@ MultiPassTerrainTechnique::createGeometryPrototype(osgTerrain::Locator* masterLo
 //    bool optimizeOrientations = elevations!=0;
     bool swapOrientation = !(masterLocator->orientationOpenGL());
     
-    osg::ref_ptr<osg::DrawElementsUInt> elements = new osg::DrawElementsUInt(GL_TRIANGLES);
+    osg::ref_ptr<osg::DrawElementsUShort> elements = new osg::DrawElementsUShort(GL_TRIANGLES);
     elements->reserve((numRows-1) * (numColumns-1) * 6);
 
     geometry->addPrimitiveSet(elements.get());
@@ -573,8 +576,10 @@ osg::Geode* MultiPassTerrainTechnique::createPass(unsigned int            order,
         numColumns = elevationLayer->getNumColumns();
         numRows = elevationLayer->getNumRows();
     }
+
+    osg::ref_ptr< TerrainNode> terrain = _tile->getTerrain();
     
-    float sampleRatio = _tile->getTerrain() ? _tile->getTerrain()->getSampleRatio() : 1.0f;
+    float sampleRatio = terrain.valid() ? terrain->getSampleRatio() : 1.0f;
     
     double i_sampleFactor = 1.0;
     double j_sampleFactor = 1.0;
@@ -611,7 +616,7 @@ osg::Geode* MultiPassTerrainTechnique::createPass(unsigned int            order,
     unsigned int numVertices = numVerticesInBody+numVerticesInSkirt;
 
     //float minHeight = 0.0;
-    float scaleHeight = _tile->getTerrain() ? _tile->getTerrain()->getVerticalScale() : 1.0f;
+    float scaleHeight = terrain.valid() ? terrain->getVerticalScale() : 1.0f;
 
     osg::ref_ptr<osg::Vec2Array> texCoords;
 
@@ -777,10 +782,10 @@ osg::Geode* MultiPassTerrainTechnique::createPass(unsigned int            order,
                 texture2D->setMaxAnisotropy(16.0f);
                 texture2D->setResizeNonPowerOfTwoHint(false);
 
-                texture2D->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
+                texture2D->setFilter( osg::Texture::MAG_FILTER, *_texCompositor->getOptions().magFilter() );
                 if (ImageUtils::isPowerOfTwo( img ) && !(!img->isMipmap() && ImageUtils::isCompressed(img)))
                 {
-                    texture2D->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR );
+                    texture2D->setFilter( osg::Texture::MIN_FILTER, *_texCompositor->getOptions().minFilter() );
                 }
                 else
                 {
@@ -920,7 +925,7 @@ void MultiPassTerrainTechnique::updateTransparency()
                     colors->dirty();
                 }
 
-				if (colorLayer.getMapLayer()->getEnabled())
+				if (colorLayer.getMapLayer()->getVisible())
 				{
 					geode->setNodeMask(0xffffffff);
 				}
diff --git a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode
index d455aff..880a323 100644
--- a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode
+++ b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,7 +20,6 @@
 #define OSGEARTH_ENGINE_OSGTERRAIN_ENGINE_NODE_H 1
 
 #include <osgEarth/TerrainEngineNode>
-#include <osgEarth/TextureCompositor>
 #include <osgEarth/Map>
 #include <osgEarth/Revisioning>
 #include <osgEarth/TaskService>
@@ -39,9 +38,8 @@ class OSGTerrainEngineNode : public TerrainEngineNode
 {
 public:
     OSGTerrainEngineNode();
-    OSGTerrainEngineNode( const OSGTerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
     META_Node(osgEarth,OSGTerrainEngineNode);
-    ~OSGTerrainEngineNode();
+    virtual ~OSGTerrainEngineNode();
 
 public:
     osg::Node* createNode(const TileKey& key);
@@ -52,7 +50,10 @@ public: // TerrainEngineNode overrides
     virtual void validateTerrainOptions( TerrainOptions& options );
     virtual const TerrainOptions& getTerrainOptions() const { return _terrainOptions; }
     virtual void traverse( osg::NodeVisitor& );
-    virtual osg::BoundingSphere computeBound() const;
+    virtual osg::BoundingSphere computeBound() const;    
+
+    // for standalone tile creation outside of a terrain
+    osg::Node* createTile(const TileKey& key);
 
 public: // MapCallback adapter functions
     void onMapInfoEstablished( const MapInfo& mapInfo ); // not virtual!
@@ -60,16 +61,38 @@ public: // MapCallback adapter functions
 
     UID getUID() const;
     OSGTileFactory* getTileFactory() const { return _tileFactory.get(); }
-    class Terrain* getTerrain() const { return _terrain; }
+    class TerrainNode* getTerrainNode() const { return _terrain; }
 
 public: // statics    
     static void registerEngine( OSGTerrainEngineNode* engineNode );
     static void unregisterEngine( UID uid );
     static void getEngineByUID( UID uid, osg::ref_ptr<OSGTerrainEngineNode>& output );
 
+public:
+    class ElevationChangedCallback : public ElevationLayerCallback
+    {
+    public:
+        ElevationChangedCallback( OSGTerrainEngineNode* terrain );
+
+       virtual void onVisibleChanged( TerrainLayer* layer );
+
+        OSGTerrainEngineNode* _terrain;
+        friend class OSGTerrainEngineNode;
+    };
+
+protected:
+	virtual void onVerticalScaleChanged();
+
 private:
     void init();
     void syncMapModel();
+    void installTerrainTechnique();
+
+    /**
+     * Reloads all the tiles in the terrain due to a data model change
+     */
+    void refresh();
+
 
     void addImageLayer( ImageLayer* layer );
     void addElevationLayer( ElevationLayer* layer );
@@ -86,13 +109,15 @@ private:
 
 private:
     osg::ref_ptr<OSGTileFactory>         _tileFactory;
-    //class CustomTerrain* _terrain;
-    class Terrain*               _terrain;
+    //class CustomTerrainNode* _terrain;
+    class TerrainNode*               _terrain;
     UID                                  _uid;
     osgEarth::Drivers::OSGTerrainOptions _terrainOptions;
     Revision                             _shaderLibRev;
     osg::ref_ptr<TaskServiceManager>     _taskServiceMgr;
 
+    osg::ref_ptr< ElevationChangedCallback > _elevationCallback;
+
     // store a separate map frame for each of the traversal threads
     MapFrame* _update_mapf; // map frame for the main/update traversal thread
     MapFrame* _cull_mapf;   // map frame for the cull traversal thread
@@ -105,6 +130,8 @@ private:
     unsigned   _tileCount;
     double     _tileCreationTime;
     bool       _isStreaming;
+
+    OSGTerrainEngineNode( const OSGTerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
 };
 
 #endif // OSGEARTH_ENGINE_OSGTERRAIN_ENGINE_NODE_H
diff --git a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode.cpp b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode.cpp
index 9b13ade..6eb4353 100644
--- a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainEngineNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,8 +20,8 @@
 #include "MultiPassTerrainTechnique"
 #include "ParallelKeyNodeFactory"
 #include "SinglePassTerrainTechnique"
-#include "Terrain"
-#include "StreamingTerrain"
+#include "TerrainNode"
+#include "StreamingTerrainNode"
 #include "TileBuilder"
 #include "TransparentLayer"
 
@@ -110,23 +110,32 @@ OSGTerrainEngineNode::getUID() const
 
 //------------------------------------------------------------------------
 
+OSGTerrainEngineNode::ElevationChangedCallback::ElevationChangedCallback( OSGTerrainEngineNode* terrain ):
+_terrain( terrain )
+{
+}
+
+void
+OSGTerrainEngineNode::ElevationChangedCallback::onVisibleChanged( TerrainLayer* layer )
+{    
+    osgEarth::Registry::instance()->clearBlacklist();
+    _terrain->refresh();
+}
+
+//------------------------------------------------------------------------
+
 OSGTerrainEngineNode::OSGTerrainEngineNode() :
 TerrainEngineNode(),
-_terrain( 0L ),
-_update_mapf( 0L ),
-_cull_mapf( 0L ),
-_tileCount( 0 ),
+_terrain         ( 0L ),
+_update_mapf     ( 0L ),
+_cull_mapf       ( 0L ),
+_tileCount       ( 0 ),
 _tileCreationTime( 0.0 )
 {
     _uid = Registry::instance()->createUID();
     _taskServiceMgr = Registry::instance()->getTaskServiceManager();
-}
 
-OSGTerrainEngineNode::OSGTerrainEngineNode( const OSGTerrainEngineNode& rhs, const osg::CopyOp& op ) :
-TerrainEngineNode( rhs, op )
-{
-    //nop - this copy ctor will never get called since this is a plugin instance.
-    OE_WARN << LC << "ILLEGAL STATE in OSGTerrainEngineNode Copy CTOR" << std::endl;
+    _elevationCallback = new ElevationChangedCallback( this );
 }
 
 OSGTerrainEngineNode::~OSGTerrainEngineNode()
@@ -171,9 +180,13 @@ OSGTerrainEngineNode::preInitialize( const Map* map, const TerrainOptions& optio
 
         if ( numThreads > 0 )
         {
-            OE_INFO << LC << "Requesting " << numThreads << " database pager threads in STANDARD mode" << std::endl;
+            // NOTE: this doesn't work. the pager gets created before we ever get here.
+            numThreads = osg::maximum(numThreads, 2);
+            int numHttpThreads = osg::clampBetween( numThreads/2, 1, numThreads-1 );
+
+            //OE_INFO << LC << "Requesting pager threads in STANDARD mode: local=" << numThreads << ", http=" << numHttpThreads << std::endl;
             osg::DisplaySettings::instance()->setNumOfDatabaseThreadsHint( numThreads );
-            //osg::DisplaySettings::instance()->setNumOfHttpDatabaseThreadsHint( numThreads );
+            osg::DisplaySettings::instance()->setNumOfHttpDatabaseThreadsHint( numHttpThreads );
         }
     }
 }
@@ -205,7 +218,7 @@ OSGTerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& opti
         // update the terrain revision in threaded mode
         if ( _isStreaming )
         {
-            static_cast<StreamingTerrain*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
+            static_cast<StreamingTerrainNode*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
         }
 
         updateTextureCombining();
@@ -214,6 +227,16 @@ OSGTerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& opti
     // install a layer callback for processing further map actions:
     map->addMapCallback( new OSGTerrainEngineNodeMapCallbackProxy(this) );
 
+    //Attach to all of the existing elevation layers
+    ElevationLayerVector elevationLayers;
+    map->getElevationLayers( elevationLayers );
+    for( ElevationLayerVector::const_iterator i = elevationLayers.begin(); i != elevationLayers.end(); ++i )
+    {
+        i->get()->addCallback( _elevationCallback.get() );
+    }
+
+    //Attach a callback to all of the 
+
     // register me.
     registerEngine( this );
 
@@ -235,10 +258,52 @@ OSGTerrainEngineNode::computeBound() const
 }
 
 void
+OSGTerrainEngineNode::refresh()
+{
+    {
+        removeChild( _terrain );
+    }    
+
+
+    _terrain = new TerrainNode(*_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );    
+    installTerrainTechnique();
+
+   
+    const MapInfo& mapInfo = _update_mapf->getMapInfo();
+    _keyNodeFactory = new SerialKeyNodeFactory( _tileBuilder.get(), _terrainOptions, mapInfo, _terrain, _uid );
+
+    // Build the first level of the terrain.
+    // Collect the tile keys comprising the root tiles of the terrain.
+    std::vector< TileKey > keys;
+    _update_mapf->getProfile()->getRootKeys( keys );
+
+    if (_terrainOptions.enableBlending().value())
+    {
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
+    }
+
+    addChild( _terrain );
+
+    for( unsigned i=0; i<keys.size(); ++i )
+    {
+        osg::Node* node;
+        if ( _keyNodeFactory.valid() )
+            node = _keyNodeFactory->createRootNode( keys[i] );
+        else
+            node = _tileFactory->createSubTiles( *_update_mapf, _terrain, keys[i], true );
+
+        if ( node )
+            _terrain->addChild( node );
+        else
+            OE_WARN << LC << "Couldn't make tile for root key: " << keys[i].str() << std::endl;
+    }
+
+    updateTextureCombining();
+}
+
+void
 OSGTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
 {
-    OE_INFO << LC << "Map profile established" << std::endl;
-    
     LoadingPolicy::Mode mode = *_terrainOptions.loadingPolicy()->mode();
     OE_INFO << LC << "Loading policy mode = " <<
         ( mode == LoadingPolicy::MODE_PREEMPTIVE ? "PREEMPTIVE" :
@@ -253,12 +318,12 @@ OSGTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
     // go through and build the root nodesets.
     if ( !_isStreaming )
     {
-        _terrain = new Terrain(
+        _terrain = new TerrainNode(
             *_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );
     }
     else
     {
-        _terrain = new StreamingTerrain(
+        _terrain = new StreamingTerrainNode(
             *_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );
     }
 
@@ -268,26 +333,16 @@ OSGTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
     _terrain->setVerticalScale( _terrainOptions.verticalScale().value() );
     _terrain->setSampleRatio  ( _terrainOptions.heightFieldSampleRatio().value() );
 
-    OE_INFO << LC << "Sample ratio = " << _terrainOptions.heightFieldSampleRatio().value() << std::endl;
-
-    // install the proper layer composition technique:
-
-    if ( _texCompositor->getTechnique() == TerrainOptions::COMPOSITING_MULTIPASS )
+    if (_terrainOptions.enableBlending().value())
     {
-        _terrain->setTechniquePrototype( new MultiPassTerrainTechnique( _texCompositor.get() ) );
-        OE_INFO << LC << "Compositing technique = MULTIPASS" << std::endl;
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
     }
 
-    else 
-    {
-        CustomTerrainTechnique* tech = new SinglePassTerrainTechnique( _texCompositor.get() );
+    OE_INFO << LC << "Sample ratio = " << _terrainOptions.heightFieldSampleRatio().value() << std::endl;
 
-        // prepare the interpolation technique for generating triangles:
-        if ( _terrainOptions.elevationInterpolation() == INTERP_TRIANGULATE )
-            tech->setOptimizeTriangleOrientation( false );
+    // install the proper layer composition technique:
 
-        _terrain->setTechniquePrototype( tech );
-    }
+    installTerrainTechnique();    
 
     // install the shader program, if applicable:
     installShaders();
@@ -307,7 +362,11 @@ OSGTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
                 num = (unsigned)(*_terrainOptions.loadingPolicy()->numLoadingThreadsPerCore() * OpenThreads::GetNumberOfProcessors());
             }
         }
-        _tileService = new TaskService( "TileBuilder", num );
+
+        if ( mode == LoadingPolicy::MODE_PARALLEL )
+        {
+            _tileService = new TaskService( "TileBuilder", num );
+        }
 
         // initialize the tile builder
         _tileBuilder = new TileBuilder( getMap(), _terrainOptions, _tileService.get() );
@@ -338,7 +397,7 @@ OSGTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
     {
         osg::Node* node;
         if ( _keyNodeFactory.valid() )
-            node = _keyNodeFactory->createNode( keys[i] );
+            node = _keyNodeFactory->createRootNode( keys[i] );
         else
             node = _tileFactory->createSubTiles( *_update_mapf, _terrain, keys[i], true );
 
@@ -360,22 +419,31 @@ OSGTerrainEngineNode::createNode( const TileKey& key )
     if ( getNumParents() == 0 )
         return 0L;
 
+    OE_DEBUG << LC << "Create node for \"" << key.str() << "\"" << std::endl;
+
 #ifdef PROFILING
     osg::Timer_t start = _timer.tick();
 #endif
 
     osg::Node* result = 0L;
 
+    osg::ref_ptr< TerrainNode > terrain = _terrain;
+
+    osg::ref_ptr< KeyNodeFactory > keyNodeFactory = _keyNodeFactory;
+
     if ( _isStreaming )
     {
         // sequential or preemptive mode only.
         // create a map frame so we can safely create tiles from this dbpager thread
         MapFrame mapf( getMap(), Map::TERRAIN_LAYERS, "dbpager::earth plugin" );
-        result = getTileFactory()->createSubTiles( mapf, _terrain, key, false );
+        result = getTileFactory()->createSubTiles( mapf, terrain.get(), key, false );
     }
     else
     {
-        result = _keyNodeFactory->createNode( key );
+        if (keyNodeFactory.valid() && terrain.valid())
+        {
+            result = keyNodeFactory->createNode( key );
+        }
     }
 
 #ifdef PROFILING
@@ -395,6 +463,37 @@ OSGTerrainEngineNode::createNode( const TileKey& key )
     return result;
 }
 
+osg::Node*
+OSGTerrainEngineNode::createTile( const TileKey& key )
+{
+    if ( !_tileBuilder.valid() )
+        return 0L;
+
+    osg::ref_ptr<Tile> tile;
+    bool hasRealData, hasLodBlendedLayers;
+
+    _tileBuilder->createTile(
+        key,
+        false,
+        tile,
+        hasRealData,
+        hasLodBlendedLayers );
+
+    if ( !tile.valid() )
+        return 0L;
+
+    // code block required in order to properly manage the ref count of the transform
+    SinglePassTerrainTechnique* tech = new SinglePassTerrainTechnique( _texCompositor.get() );
+    // prepare the interpolation technique for generating triangles:
+    if ( getMap()->getMapOptions().elevationInterpolation() == INTERP_TRIANGULATE )
+        tech->setOptimizeTriangleOrientation( false ); 
+
+    tile->setTerrainTechnique( tech );
+    tile->init();
+    
+    return tech->takeTransform();
+}
+
 void
 OSGTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
 {
@@ -404,8 +503,10 @@ OSGTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
     if ( change.getLayer() )
     {
         // first inform the texture compositor with the new model changes:
-        if ( _texCompositor.valid() )
+        if ( _texCompositor.valid() && change.getImageLayer() )
+        {
             _texCompositor->applyMapModelChange( change );
+        }
 
         // then apply the actual change:
         switch( change.getAction() )
@@ -428,6 +529,10 @@ OSGTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
         case MapModelChange::MOVE_ELEVATION_LAYER:
             moveElevationLayer( change.getFirstIndex(), change.getSecondIndex() );
             break;
+        case MapModelChange::ADD_MODEL_LAYER:
+        case MapModelChange::REMOVE_MODEL_LAYER:
+        case MapModelChange::MOVE_MODEL_LAYER:
+        default: break;
         }
     }
 
@@ -435,103 +540,117 @@ OSGTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
     if ( _isStreaming )
     {
         //getTerrain()->incrementRevision();
-        static_cast<StreamingTerrain*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
+        static_cast<StreamingTerrainNode*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
     }
 }
 
 void
 OSGTerrainEngineNode::addImageLayer( ImageLayer* layerAdded )
 {
-    if ( !layerAdded || !layerAdded->getTileSource() )
+    if ( !layerAdded )
         return;
 
-    // visit all existing terrain tiles and inform each one of the new image layer:
-    TileVector tiles;
-    _terrain->getTiles( tiles );
-
-    for( TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr )
+    if (!_isStreaming)
     {
-        Tile* tile = itr->get();
-
-        StreamingTile* streamingTile = 0L;
-
-        GeoImage geoImage;
-        bool needToUpdateImagery = false;
-        int imageLOD = -1;
+        refresh();
+    }
+    else
+    {
+        // visit all existing terrain tiles and inform each one of the new image layer:
+        TileVector tiles;
+        _terrain->getTiles( tiles );
 
-        if ( !_isStreaming || tile->getKey().getLevelOfDetail() == 1 )
-        {
-            // in standard mode, or at the first LOD in seq/pre mode, fetch the image immediately.
-            TileKey geoImageKey = tile->getKey();
-            _tileFactory->createValidGeoImage( layerAdded, tile->getKey(), geoImage, geoImageKey );
-            imageLOD = tile->getKey().getLevelOfDetail();
-        }
-        else
+        for( TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr )
         {
-            // in seq/pre mode, set up a placeholder and mark the tile as dirty.
-            geoImage = GeoImage(ImageUtils::createEmptyImage(), tile->getKey().getExtent() );
-            needToUpdateImagery = true;
-            streamingTile = static_cast<StreamingTile*>(tile);
-        }
+            Tile* tile = itr->get();
 
-        if (geoImage.valid())
-        {
-            const MapInfo& mapInfo = _update_mapf->getMapInfo();
+            StreamingTile* streamingTile = 0L;
 
-            double img_min_lon, img_min_lat, img_max_lon, img_max_lat;
-            geoImage.getExtent().getBounds(img_min_lon, img_min_lat, img_max_lon, img_max_lat);
+            GeoImage geoImage;
+            bool needToUpdateImagery = false;
+            int imageLOD = -1;
 
-            //Specify a new locator for the color with the coordinates of the TileKey that was actually used to create the image
-            osg::ref_ptr<GeoLocator> img_locator = tile->getKey().getProfile()->getSRS()->createLocator( 
-                img_min_lon, img_min_lat, img_max_lon, img_max_lat, 
-                !mapInfo.isGeocentric() );
-            
-            //Set the CS to geocentric if we are dealing with a geocentric map
-            if ( mapInfo.isGeocentric() )
+            if ( !_isStreaming || tile->getKey().getLevelOfDetail() == 1 )
+            {
+                // in standard mode, or at the first LOD in seq/pre mode, fetch the image immediately.
+                TileKey geoImageKey = tile->getKey();
+                _tileFactory->createValidGeoImage( layerAdded, tile->getKey(), geoImage, geoImageKey );
+                imageLOD = tile->getKey().getLevelOfDetail();
+            }
+            else
             {
-                img_locator->setCoordinateSystemType( osgTerrain::Locator::GEOCENTRIC );
+                // in seq/pre mode, set up a placeholder and mark the tile as dirty.
+                geoImage = GeoImage(ImageUtils::createEmptyImage(), tile->getKey().getExtent() );
+                needToUpdateImagery = true;
+                streamingTile = static_cast<StreamingTile*>(tile);
             }
 
-            tile->setCustomColorLayer( CustomColorLayer(
-                layerAdded,
-                geoImage.getImage(),
-                img_locator.get(), imageLOD,  tile->getKey() ) );
+            if (geoImage.valid())
+            {
+                const MapInfo& mapInfo = _update_mapf->getMapInfo();
+
+                double img_min_lon, img_min_lat, img_max_lon, img_max_lat;
+                geoImage.getExtent().getBounds(img_min_lon, img_min_lat, img_max_lon, img_max_lat);
+
+                //Specify a new locator for the color with the coordinates of the TileKey that was actually used to create the image
+                osg::ref_ptr<GeoLocator> img_locator = tile->getKey().getProfile()->getSRS()->createLocator( 
+                    img_min_lon, img_min_lat, img_max_lon, img_max_lat, 
+                    !mapInfo.isGeocentric() );
+
+                //Set the CS to geocentric if we are dealing with a geocentric map
+                if ( mapInfo.isGeocentric() )
+                {
+                    img_locator->setCoordinateSystemType( osgTerrain::Locator::GEOCENTRIC );
+                }
+
+                tile->setCustomColorLayer( CustomColorLayer(
+                    layerAdded,
+                    geoImage.getImage(),
+                    img_locator.get(), imageLOD,  tile->getKey() ) );
 
-            // if necessary, tell the tile to queue up a new imagery request (since we
-            // just installed a placeholder)
-            if ( needToUpdateImagery )
+                // if necessary, tell the tile to queue up a new imagery request (since we
+                // just installed a placeholder)
+                if ( needToUpdateImagery )
+                {
+                    streamingTile->updateImagery( layerAdded, *_update_mapf, _tileFactory.get() );
+                }
+            }
+            else
             {
-                streamingTile->updateImagery( layerAdded, *_update_mapf, _tileFactory.get() );
+                // this can happen if there's no data in the new layer for the given tile.
+                // we will rely on the driver to dump out a warning if this is an error.
             }
-        }
-        else
-        {
-            // this can happen if there's no data in the new layer for the given tile.
-            // we will rely on the driver to dump out a warning if this is an error.
+
+            tile->applyImmediateTileUpdate( TileUpdate::ADD_IMAGE_LAYER, layerAdded->getUID() );
         }
 
-        tile->applyImmediateTileUpdate( TileUpdate::ADD_IMAGE_LAYER, layerAdded->getUID() );
+        updateTextureCombining();
     }
-
-    updateTextureCombining();
 }
 
 void
 OSGTerrainEngineNode::removeImageLayer( ImageLayer* layerRemoved )
 {
-    // make a thread-safe copy of the tile table
-    TileVector tiles;
-    _terrain->getTiles( tiles );
-
-    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+    if (!_isStreaming)
     {
-        Tile* tile = itr->get();
+        refresh();
+    }
+    else
+    {
+        // make a thread-safe copy of the tile table
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            Tile* tile = itr->get();
 
-        // critical section
-        tile->removeCustomColorLayer( layerRemoved->getUID() );
+            // critical section
+            tile->removeCustomColorLayer( layerRemoved->getUID() );
+        }
+
+        updateTextureCombining();
     }
-    
-    updateTextureCombining();
 }
 
 void
@@ -568,7 +687,7 @@ OSGTerrainEngineNode::updateElevation( Tile* tile )
             osg::ref_ptr<osg::HeightField> hf;
 
             if (hasElevation)
-                _update_mapf->getHeightField( key, true, hf, 0L, _terrainOptions.elevationInterpolation().value());
+                _update_mapf->getHeightField( key, true, hf, 0L);
 
             if (!hf.valid()) 
                 hf = OSGTileFactory::createEmptyHeightField( key );
@@ -603,7 +722,7 @@ OSGTerrainEngineNode::updateElevation( Tile* tile )
                 if (stile->getKey().getLevelOfDetail() == 1)
                 {
                     osg::ref_ptr<osg::HeightField> hf;
-                    _update_mapf->getHeightField( key, true, hf, 0L, _terrainOptions.elevationInterpolation().value());
+                    _update_mapf->getHeightField( key, true, hf, 0L);
                     if (!hf.valid()) 
                         hf = OSGTileFactory::createEmptyHeightField( key );
                     heightFieldLayer->setHeightField( hf.get() );
@@ -626,43 +745,69 @@ OSGTerrainEngineNode::updateElevation( Tile* tile )
 void
 OSGTerrainEngineNode::addElevationLayer( ElevationLayer* layer )
 {
-    if ( !layer || !layer->getTileSource() )
+    if ( !layer )
         return;
-    
-    TileVector tiles;
-    _terrain->getTiles( tiles );
 
-    OE_DEBUG << LC << "Found " << tiles.size() << std::endl;
+    layer->addCallback( _elevationCallback.get() );
 
-    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+
+    if (!_isStreaming)
     {
-        updateElevation( itr->get() );
+        refresh();
+    }
+    else
+    {    
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        OE_DEBUG << LC << "Found " << tiles.size() << std::endl;
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
     }
 }
 
 void
 OSGTerrainEngineNode::removeElevationLayer( ElevationLayer* layerRemoved )
 {
-    TileVector tiles;
-    _terrain->getTiles( tiles );
+    layerRemoved->removeCallback( _elevationCallback.get() );
 
-    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
     {
-        updateElevation( itr->get() );
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
     }
 }
 
 void
 OSGTerrainEngineNode::moveElevationLayer( unsigned int oldIndex, unsigned int newIndex )
 {
-    TileVector tiles;
-    _terrain->getTiles( tiles );
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {
+        TileVector tiles;
+        _terrain->getTiles( tiles );
 
-    OE_DEBUG << "Found " << tiles.size() << std::endl;
+        OE_DEBUG << "Found " << tiles.size() << std::endl;
 
-    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
-    {
-        updateElevation( itr->get() );
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
     }
 }
 
@@ -686,6 +831,9 @@ OSGTerrainEngineNode::traverse( osg::NodeVisitor& nv )
         {
             // update the cull-thread map frame if necessary. (We don't need to sync the
             // update_mapf becuase that happens in response to a map callback.)
+
+            // TODO: address the fact that this can happen from multiple threads.
+            // Really we need a _cull_mapf PER view. -gw
             _cull_mapf->sync();
         }
     }
@@ -706,18 +854,11 @@ OSGTerrainEngineNode::installShaders()
         const ShaderFactory* sf = Registry::instance()->getShaderFactory();
 
         int numLayers = osg::maximum( 1, (int)_update_mapf->imageLayers().size() );
+        //int numLayers = osg::maximum( 0, (int)_update_mapf->imageLayers().size() );
 
         VirtualProgram* vp = new VirtualProgram();
-
-        // note. this stuff should probably happen automatically in VirtualProgram. gw
-
-        //vp->setShader( "osgearth_vert_main",     sf->createVertexShaderMain() ); // happens in VirtualProgram now
-        vp->setShader( "osgearth_vert_setupLighting", sf->createDefaultLightingVertexShader() );
-        vp->setShader( "osgearth_vert_setupTexturing",  sf->createDefaultTextureVertexShader( numLayers ) );
-
-        //vp->setShader( "osgearth_frag_main",     sf->createFragmentShaderMain() ); // happend in VirtualProgram now
-        vp->setShader( "osgearth_frag_applyLighting", sf->createDefaultLightingFragmentShader() );
-        vp->setShader( "osgearth_frag_applyTexturing",  sf->createDefaultTextureFragmentShader( numLayers ) );
+        vp->setName( "engine_osgterrain:EngineNode" );
+        vp->installDefaultColoringAndLightingShaders(numLayers);
 
         getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
     }
@@ -737,23 +878,89 @@ OSGTerrainEngineNode::updateTextureCombining()
             // These components reside in the CustomTerrain's stateset, and override the components
             // installed in the VP on the engine-node's stateset in installShaders().
 
-            VirtualProgram* vp = dynamic_cast<VirtualProgram*>( terrainStateSet->getAttribute(osg::StateAttribute::PROGRAM) );
-            if ( !vp )
-            {
-                // create and add it the first time around..
-                vp = new VirtualProgram();
-                terrainStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
-            }
+            VirtualProgram* vp = new VirtualProgram() ;
+            vp->setName( "engine_osgterrain:TerrainNode" );
+            vp->installDefaultColoringShaders(numImageLayers);
+
+            terrainStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
 
             // first, update the default shader components based on the new layer count:
             const ShaderFactory* sf = Registry::instance()->getShaderFactory();
-            vp->setShader( "osgearth_vert_setupTexturing",  sf->createDefaultTextureVertexShader( numImageLayers ) );
+            
+            // second, install the per-layer color filter functions.
+            for( int i=0; i<numImageLayers; ++i )
+            {
+                std::string layerFilterFunc = Stringify() << "osgearth_runColorFilters_" << i;
+                const ColorFilterChain& chain = _update_mapf->getImageLayerAt(i)->getColorFilters();
 
-            // not this one, because the compositor always generates a new one.
-            //vp->setShader( "osgearth_frag_applyTexturing",  lib.createDefaultTextureFragmentShader( numImageLayers ) );
+                // install the wrapper function that calls all the filters in turn:
+                vp->setShader( layerFilterFunc, sf->createColorFilterChainFragmentShader(layerFilterFunc, chain) );
+
+                // install each of the filter entry points:
+                for( ColorFilterChain::const_iterator j = chain.begin(); j != chain.end(); ++j )
+                {
+                    const ColorFilter* filter = j->get();
+                    filter->install( terrainStateSet );
+                }
+            }
         }
 
         // next, inform the compositor that it needs to update based on a new layer count:
         _texCompositor->updateMasterStateSet( terrainStateSet ); //, numImageLayers );
     }
 }
+
+namespace
+{
+    class UpdateElevationVisitor : public osg::NodeVisitor
+    {
+    public:
+        UpdateElevationVisitor():
+          osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+          {}
+
+          void apply(osg::Node& node)
+          {
+              Tile* tile = dynamic_cast<Tile*>(&node);
+              if (tile)
+              {
+                  tile->applyImmediateTileUpdate(TileUpdate::UPDATE_ELEVATION);
+              }
+
+              traverse(node);
+          }
+    };
+}
+
+void
+OSGTerrainEngineNode::onVerticalScaleChanged()
+{
+    _terrain->setVerticalScale(getVerticalScale());
+
+    UpdateElevationVisitor visitor;
+    this->accept(visitor);
+}
+
+void
+OSGTerrainEngineNode::installTerrainTechnique()
+{
+    if ( _texCompositor->getTechnique() == TerrainOptions::COMPOSITING_MULTIPASS )
+    {
+        //If we are using multipass mode, disable GLSL on it, it is using straight FFP
+        _terrain->getOrCreateStateSet()->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+        _terrain->setTechniquePrototype( new MultiPassTerrainTechnique( _texCompositor.get() ) );
+        OE_INFO << LC << "Compositing technique = MULTIPASS" << std::endl;
+    }
+
+    else 
+    {
+        SinglePassTerrainTechnique* tech = new SinglePassTerrainTechnique( _texCompositor.get() );
+        tech->setClearDataAfterCompile( !_isStreaming );
+        
+
+        if ( getMap()->getMapOptions().elevationInterpolation() == INTERP_TRIANGULATE )
+            tech->setOptimizeTriangleOrientation( false );   
+        
+        _terrain->setTechniquePrototype( tech );
+    }
+}
diff --git a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainOptions b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainOptions
index 5a08a24..eb30cbd 100644
--- a/src/osgEarthDrivers/engine_osgterrain/OSGTerrainOptions
+++ b/src/osgEarthDrivers/engine_osgterrain/OSGTerrainOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -38,6 +38,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~OSGTerrainOptions() { }
+
     public:
         optional<float>& heightFieldSkirtRatio() { return _skirtRatio; }
         const optional<float>& heightFieldSkirtRatio() const { return _skirtRatio; }
@@ -48,6 +51,7 @@ namespace osgEarth { namespace Drivers
         optional<float>& lodFallOff() { return _lodFallOff; }
         const optional<float>& lodFallOff() const { return _lodFallOff; }
 
+
     protected:
         virtual Config getConfig() const {
             Config conf = TerrainOptions::getConfig();
diff --git a/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory b/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory
index bf74835..12227b4 100644
--- a/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory
+++ b/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -37,8 +37,8 @@
 using namespace osgEarth;
 using namespace osgEarth::Drivers;
 
-class Terrain;
-class StreamingTerrain;
+class TerrainNode;
+class StreamingTerrainNode;
 class Tile;
 class StreamingTile;
 
@@ -53,6 +53,9 @@ public:
         const MapFrame&          cull_thread_mapf,
         const OSGTerrainOptions& props =OSGTerrainOptions() );
 
+    /** dtor */
+    virtual ~OSGTileFactory() { }
+
 public:
     /**
     * Creates a node graph containing four tiles that correspond to the four
@@ -60,7 +63,7 @@ public:
     */
     osg::Node* createSubTiles(
         const MapFrame&  mapf,
-        Terrain*         terrain,
+        TerrainNode*     terrain,
         const TileKey&   key,
         bool             populateLayers );
 
@@ -69,7 +72,7 @@ public:
     */
     osg::Node* createTile(
         const MapFrame&  mapf,
-        Terrain*         terrain,
+        TerrainNode*     terrain,
         const TileKey&   key,
         bool             populateLayers,
         bool             wrapInPagedLOD,
@@ -103,7 +106,7 @@ public:
      */
     osg::Node* prepareTile( 
         Tile*            tile, 
-        Terrain*         terrain,
+        TerrainNode*         terrain,
         const MapInfo&   mapInfo,
         bool             wrapInPagedLOD );
 
@@ -121,8 +124,8 @@ public:
 
     static osg::HeightField* createEmptyHeightField(
         const TileKey& key,
-        int            numCols =8,
-        int            numRows =8 );
+        unsigned       numCols =8,
+        unsigned       numRows =8 );
 
     osgTerrain::HeightFieldLayer* createPlaceholderHeightfieldLayer(
         osg::HeightField* ancestorHF,
@@ -134,12 +137,12 @@ protected:
 
     osg::Node* createPlaceholderTile(
         const MapFrame&   mapf,
-        StreamingTerrain* terrain,
+        StreamingTerrainNode* terrain,
         const TileKey&    key );
 
     osg::Node* createPopulatedTile(
         const MapFrame&  mapf,
-        Terrain*         terrain,
+        TerrainNode*         terrain,
         const TileKey&   key,
         bool             wrapInPagedLOD,
         bool             fallback,
diff --git a/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory.cpp b/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory.cpp
index 930f812..a8c2390 100644
--- a/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/OSGTileFactory.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,12 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 #include "OSGTileFactory"
-#include "Terrain"
-#include "StreamingTerrain"
+#include "TerrainNode"
+#include "StreamingTerrainNode"
 #include "FileLocationCallback"
 #include "TransparentLayer"
 
 #include <osgEarth/Map>
-#include <osgEarth/Caching>
 #include <osgEarth/HeightFieldUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/ImageUtils>
@@ -120,7 +119,7 @@ OSGTileFactory::getTransformFromExtents(double minX, double minY, double maxX, d
 }
 
 osg::Node*
-OSGTileFactory::createSubTiles( const MapFrame& mapf, Terrain* terrain, const TileKey& key, bool populateLayers )
+OSGTileFactory::createSubTiles( const MapFrame& mapf, TerrainNode* terrain, const TileKey& key, bool populateLayers )
 {
     TileKey k0 = key.createChildKey(0);
     TileKey k1 = key.createChildKey(1);
@@ -248,12 +247,9 @@ OSGTileFactory::hasMoreLevels( Map* map, const TileKey& key )
 }
 
 osg::HeightField*
-OSGTileFactory::createEmptyHeightField( const TileKey& key, int numCols, int numRows )
+OSGTileFactory::createEmptyHeightField( const TileKey& key, unsigned numCols, unsigned numRows )
 {
-    osg::HeightField* hf = key.getProfile()->getVerticalSRS()->createReferenceHeightField(
-        key.getExtent(), numCols, numRows );
-
-    return hf;
+    return HeightFieldUtils::createReferenceHeightField( key.getExtent(), numCols, numRows );
 }
 
 void
@@ -357,7 +353,7 @@ OSGTileFactory::createPlaceholderHeightfieldLayer(osg::HeightField* ancestorHF,
 
 osg::Node*
 OSGTileFactory::createTile(const MapFrame&  mapf, 
-                           Terrain*         terrain, 
+                           TerrainNode*         terrain, 
                            const TileKey&   key, 
                            bool             populateLayers, 
                            bool             wrapInPagedLOD, 
@@ -375,7 +371,7 @@ OSGTileFactory::createTile(const MapFrame&  mapf,
 
         return createPlaceholderTile(
             mapf, 
-            static_cast<StreamingTerrain*>(terrain),
+            static_cast<StreamingTerrainNode*>(terrain),
             key );
     }
 }
@@ -384,7 +380,7 @@ OSGTileFactory::createTile(const MapFrame&  mapf,
 
 osg::Node*
 OSGTileFactory::createPlaceholderTile(const MapFrame&   mapf,
-                                      StreamingTerrain* terrain,
+                                      StreamingTerrainNode* terrain,
                                       const TileKey&    key )
 {
     // Start out by finding the nearest registered ancestor tile, since the placeholder is
@@ -479,7 +475,7 @@ OSGTileFactory::createPlaceholderTile(const MapFrame&   mapf,
     plod->setCenter( bs.center() );
     plod->addChild( tile, min_range, max_range );
 
-    if ( key.getLevelOfDetail() < (unsigned int)getTerrainOptions().maxLOD().get() )
+    if (key.getLevelOfDetail() < getTerrainOptions().maxLOD().get())
     {
         plod->setFileName( 1, createURI( _engineId, key ) ); //map->getId(), key ) );
         plod->setRange( 1, 0.0, min_range );
@@ -490,7 +486,7 @@ OSGTileFactory::createPlaceholderTile(const MapFrame&   mapf,
     }
 
 #if 0 //USE_FILELOCATIONCALLBACK
-    osgDB::Options* options = new osgDB::Options;
+    osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
     options->setFileLocationCallback( new FileLocationCallback);
     plod->setDatabaseOptions( options );
 #endif
@@ -525,12 +521,12 @@ namespace
 
 osg::Node*
 OSGTileFactory::createPopulatedTile(const MapFrame&  mapf, 
-                                    Terrain*         terrain, 
+                                    TerrainNode*         terrain, 
                                     const TileKey&   key, 
                                     bool             wrapInPagedLOD, 
                                     bool             fallback, 
                                     bool&            validData )
-{
+{    
     const MapInfo& mapInfo = mapf.getMapInfo();
     bool isPlateCarre = !mapInfo.isGeocentric() && mapInfo.isGeographicSRS();
 
@@ -565,7 +561,7 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
     osg::ref_ptr<osg::HeightField> hf;
     if ( mapf.elevationLayers().size() > 0 )
     {
-        mapf.getHeightField( key, false, hf, 0L, _terrainOptions.elevationInterpolation().value());     
+        mapf.getHeightField( key, false, hf, 0L);     
     }
 
     //If we are on the first LOD and we couldn't get a heightfield tile, just create an empty one.  Otherwise you can run into the situation
@@ -633,7 +629,7 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
         else
         {
             //Try to get a heightfield again, but this time fallback on parent tiles
-            if ( mapf.getHeightField( key, true, hf, 0L, _terrainOptions.elevationInterpolation().value() ) )
+            if ( mapf.getHeightField( key, true, hf, 0L ) )
             {
                 hasElevation = true;
             }
@@ -734,20 +730,27 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
     }
 
     osg::BoundingSphere bs = tile->getBound();
-    double max_range = 1e10;
+    double maxRange = 1e10;
     double radius = bs.radius();
-
-#if 1
-    double min_range = radius * _terrainOptions.minTileRangeFactor().get();
-    //osg::LOD::RangeMode mode = osg::LOD::DISTANCE_FROM_EYE_POINT;
-#else
-    double width = key.getExtent().width();	
-    if (min_units_per_pixel == DBL_MAX) min_units_per_pixel = width/256.0;
-    double min_range = (width / min_units_per_pixel) * _terrainOptions.getMinTileRangeFactor(); 
-    //osg::LOD::RangeMode mode = osg::LOD::PIXEL_SIZE_ON_SCREEN;
+#if 0
+    //Compute the min range based on the actual bounds of the tile.  This can break down if you have very high resolution
+    //data with elevation variations and you can run out of memory b/c the elevation change is greater than the actual size of the tile so you end up
+    //inifinitely subdividing (or at least until you run out of data or memory)
+    double minRange = bs.radius() * _terrainOptions.minTileRangeFactor().value();
+#else        
+    //double origMinRange = bs.radius() * _options.minTileRangeFactor().value();        
+    //Compute the min range based on the 2D size of the tile
+    GeoExtent extent = tile->getKey().getExtent();        
+    GeoPoint lowerLeft(extent.getSRS(), extent.xMin(), extent.yMin(), 0.0, ALTMODE_ABSOLUTE);
+    GeoPoint upperRight(extent.getSRS(), extent.xMax(), extent.yMax(), 0.0, ALTMODE_ABSOLUTE);
+    osg::Vec3d ll, ur;
+    lowerLeft.toWorld( ll );
+    upperRight.toWorld( ur );
+    double minRange = (ur - ll).length() / 2.0 * _terrainOptions.minTileRangeFactor().value();        
 #endif
 
 
+
     // a skirt hides cracks when transitioning between LODs:
     hf->setSkirtHeight(radius * _terrainOptions.heightFieldSkirtRatio().get() );
 
@@ -782,7 +785,7 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
         // create a PLOD so we can keep subdividing:
         osg::PagedLOD* plod = new osg::PagedLOD();
         plod->setCenter( bs.center() );
-        plod->addChild( tile, min_range, max_range );
+        plod->addChild( tile, minRange, maxRange );
 
         std::string filename = createURI( _engineId, key ); //map->getId(), key );
 
@@ -791,7 +794,7 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
         if (!isBlacklisted && key.getLevelOfDetail() < (unsigned int)getTerrainOptions().maxLOD().value() && validData )
         {
             plod->setFileName( 1, filename  );
-            plod->setRange( 1, 0.0, min_range );
+            plod->setRange( 1, 0.0, minRange );
         }
         else
         {
@@ -799,7 +802,7 @@ OSGTileFactory::createPopulatedTile(const MapFrame&  mapf,
         }
 
 #if USE_FILELOCATIONCALLBACK
-        osgDB::Options* options = new osgDB::Options;
+        osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
         options->setFileLocationCallback( new FileLocationCallback() );
         plod->setDatabaseOptions( options );
 #endif
@@ -865,7 +868,7 @@ OSGTileFactory::createHeightFieldLayer( const MapFrame& mapf, const TileKey& key
 
     // try to create a heightfield at native res:
     osg::ref_ptr<osg::HeightField> hf;
-    if ( !mapf.getHeightField( key, !exactOnly, hf, 0L, _terrainOptions.elevationInterpolation().value() ) )
+    if ( !mapf.getHeightField( key, !exactOnly, hf, 0L ) )
     {
         if ( exactOnly )
             return NULL;
diff --git a/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory b/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory
index ed66690..5bd1efe 100644
--- a/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory
+++ b/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -31,9 +31,13 @@ public:
         TileBuilder*             builder,
         const OSGTerrainOptions& options,
         const MapInfo&           mapInfo,
-        Terrain*         terrain,
+        TerrainNode*             terrain,
         UID                      engineUID );
 
+    /** dtor */
+    virtual ~ParallelKeyNodeFactory() { }
+
+    osg::Node* createRootNode( const TileKey& key );
     osg::Node* createNode( const TileKey& key );
 };
 
diff --git a/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory.cpp b/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory.cpp
index 499d4dc..2911a91 100644
--- a/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/ParallelKeyNodeFactory.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -30,7 +30,7 @@ using namespace OpenThreads;
 ParallelKeyNodeFactory::ParallelKeyNodeFactory(TileBuilder*             builder,
                                                const OSGTerrainOptions& options,
                                                const MapInfo&           mapInfo,
-                                               Terrain*         terrain,
+                                               TerrainNode*         terrain,
                                                UID                      engineUID ) :
 
 SerialKeyNodeFactory( builder, options, mapInfo, terrain, engineUID )
@@ -39,6 +39,13 @@ SerialKeyNodeFactory( builder, options, mapInfo, terrain, engineUID )
 }
 
 osg::Node*
+ParallelKeyNodeFactory::createRootNode( const TileKey& key )
+{
+    // NYI
+    return 0L;
+}
+
+osg::Node*
 ParallelKeyNodeFactory::createNode( const TileKey& key )
 {
     // An event for synchronizing the completion of all requests:
diff --git a/src/osgEarthDrivers/engine_osgterrain/Plugin.cpp b/src/osgEarthDrivers/engine_osgterrain/Plugin.cpp
index e1c5680..3a5b4b5 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Plugin.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/Plugin.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -88,7 +88,7 @@ public:
             // parse the tile key and engine ID:
             std::string tileDef = osgDB::getNameLessExtension(uri);
             unsigned int lod, x, y, engineID;
-            sscanf(tileDef.c_str(), "%d_%d_%d.%d", &lod, &x, &y, &engineID);
+            sscanf(tileDef.c_str(), "%d/%d/%d.%d", &lod, &x, &y, &engineID);
 
             // find the appropriate engine:
             osg::ref_ptr<OSGTerrainEngineNode> engineNode;
@@ -100,17 +100,29 @@ public:
                 // assemble the key and create the node:
                 const Profile* profile = engineNode->getMap()->getProfile();
                 TileKey key( lod, x, y, profile );
-                osg::Node* node = engineNode->createNode( key );
+                osg::ref_ptr< osg::Node > node = engineNode->createNode( key );
                 
                 // Blacklist the tile if we couldn't load it
-                if ( !node )
+                if ( !node.valid() )
                 {
                     OE_DEBUG << LC << "Blacklisting " << uri << std::endl;
                     osgEarth::Registry::instance()->blacklist( uri );
                     return ReadResult::FILE_NOT_FOUND;
                 }
+                else
+                {   
+                    // make safe ref/unref so we can reference from multiple threads
+                    node->setThreadSafeRefUnref( true );
 
-                return ReadResult( node, ReadResult::FILE_LOADED );
+                    // notify the Terrain interface of a new tile
+                    osg::Timer_t start = osg::Timer::instance()->tick();
+                    engineNode->getTerrain()->notifyTileAdded(key, node.get());
+                    osg::Timer_t end = osg::Timer::instance()->tick();
+
+                    //OE_DEBUG << "Took " << osg::Timer::instance()->delta_m(start, end) << "ms to fire terrain callbacks" << std::endl;
+                }
+
+                return ReadResult( node.get(), ReadResult::FILE_LOADED );
             }
             else
             {
diff --git a/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory b/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory
index c515922..01dc3fa 100644
--- a/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory
+++ b/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 
 #include "Common"
 #include "KeyNodeFactory"
-#include "Terrain"
+#include "TerrainNode"
 #include "TileBuilder"
 
 using namespace osgEarth;
@@ -33,18 +33,22 @@ public:
         TileBuilder*             builder,
         const OSGTerrainOptions& options,
         const MapInfo&           mapInfo,
-        Terrain*         terrain,
+        TerrainNode*             terrain,
         UID                      engineUID );
 
+    /** dtor */
+    virtual ~SerialKeyNodeFactory() { }
+
+    osg::Node* createRootNode( const TileKey& key );
     osg::Node* createNode( const TileKey& key );
 
 protected:
     void addTile(Tile* tile, bool tileHasRealData, bool tileHasLodBlending, osg::Group* parent );
 
-    TileBuilder*             _builder;
+    osg::ref_ptr< TileBuilder> _builder;
     const OSGTerrainOptions& _options;
     const MapInfo            _mapInfo;
-    Terrain*         _terrain;
+    osg::ref_ptr< TerrainNode > _terrain;
     UID                      _engineUID;
 };
 
diff --git a/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory.cpp b/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory.cpp
index 1bd947e..f9014f6 100644
--- a/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/SerialKeyNodeFactory.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 #include "FileLocationCallback"
 #include "LODFactorCallback"
 #include <osgEarth/Registry>
+#include <osgEarth/HeightFieldUtils>
 #include <osg/PagedLOD>
 #include <osg/CullStack>
 #include <osg/Uniform>
@@ -32,10 +33,11 @@ using namespace OpenThreads;
 
 #define LC "[SerialKeyNodeFactory] "
 
+
 SerialKeyNodeFactory::SerialKeyNodeFactory(TileBuilder*             builder,
                                            const OSGTerrainOptions& options,
                                            const MapInfo&           mapInfo,
-                                           Terrain*                 terrain,
+                                           TerrainNode*             terrain,
                                            UID                      engineUID ) :
 _builder( builder ),
 _options( options ),
@@ -60,17 +62,38 @@ SerialKeyNodeFactory::addTile(Tile* tile, bool tileHasRealData, bool tileHasLodB
 
     osg::Node* result = 0L;
 
-    // Only add the next tile if it hasn't been blacklisted
+    // Only add the next tile if all the following are true:
+    // 1. Either there's real tile data, or a maxLOD is explicity set in the options;
+    // 2. The tile isn't blacklisted; and
+    // 3. We are still below the max LOD.
     bool wrapInPagedLOD =
-        tileHasRealData &&
+        (tileHasRealData || (_options.minLOD().isSet() && tile->getKey().getLOD() < *_options.minLOD())) &&
         !osgEarth::Registry::instance()->isBlacklisted( uri ) &&
-        tile->getKey().getLevelOfDetail() < (unsigned)*_options.maxLOD();
+        tile->getKey().getLOD() < *_options.maxLOD();
+        //(!_options.minLOD().isSet() || tile->getKey().getLevelOfDetail() < *_options.maxLOD());
 
     if ( wrapInPagedLOD )
     {
         osg::BoundingSphere bs = tile->getBound();
-        double maxRange = 1e10;
-        double minRange = bs.radius() * _options.minTileRangeFactor().value();
+        float maxRange = FLT_MAX;
+        
+#if 0
+        //Compute the min range based on the actual bounds of the tile.  This can break down if you have very high resolution
+        //data with elevation variations and you can run out of memory b/c the elevation change is greater than the actual size of the tile so you end up
+        //inifinitely subdividing (or at least until you run out of data or memory)
+        float minRange = (float)(bs.radius() * _options.minTileRangeFactor().value());
+#else        
+        //double origMinRange = bs.radius() * _options.minTileRangeFactor().value();        
+        //Compute the min range based on the 2D size of the tile
+        GeoExtent extent = tile->getKey().getExtent();        
+        GeoPoint lowerLeft(extent.getSRS(), extent.xMin(), extent.yMin(), 0.0, ALTMODE_ABSOLUTE);
+        GeoPoint upperRight(extent.getSRS(), extent.xMax(), extent.yMax(), 0.0, ALTMODE_ABSOLUTE);
+        osg::Vec3d ll, ur;
+        lowerLeft.toWorld( ll );
+        upperRight.toWorld( ur );
+        double radius = (ur - ll).length() / 2.0;
+        float minRange = (float)(radius * _options.minTileRangeFactor().value());
+#endif
 
         // create a PLOD so we can keep subdividing:
         osg::PagedLOD* plod = new osg::PagedLOD();
@@ -83,7 +106,7 @@ SerialKeyNodeFactory::addTile(Tile* tile, bool tileHasRealData, bool tileHasLodB
         plod->setUserData( new MapNode::TileRangeData(minRange, maxRange) );
 
 #if USE_FILELOCATIONCALLBACK
-        osgDB::Options* options = new osgDB::Options;
+        osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
         options->setFileLocationCallback( new FileLocationCallback() );
         plod->setDatabaseOptions( options );
 
@@ -109,7 +132,7 @@ SerialKeyNodeFactory::addTile(Tile* tile, bool tileHasRealData, bool tileHasLodB
     }
 
     // this one rejects back-facing tiles:
-    if ( _mapInfo.isGeocentric() )
+    if ( _mapInfo.isGeocentric() && _options.clusterCulling() == true )
     {
         result->addCullCallback( HeightFieldUtils::createClusterCullingCallback(
             static_cast<osgTerrain::HeightFieldLayer*>(tile->getElevationLayer())->getHeightField(),
@@ -121,7 +144,22 @@ SerialKeyNodeFactory::addTile(Tile* tile, bool tileHasRealData, bool tileHasLodB
 }
 
 osg::Node*
-SerialKeyNodeFactory::createNode( const TileKey& key )
+SerialKeyNodeFactory::createRootNode( const TileKey& key )
+{
+    osg::ref_ptr<Tile> tile;
+    bool               real;
+    bool               lodBlending;
+
+    _builder->createTile(key, false, tile, real, lodBlending);
+
+    osg::Group* root = new osg::Group();
+    addTile( tile, real, lodBlending, root );
+    
+    return root;
+}
+
+osg::Node*
+SerialKeyNodeFactory::createNode( const TileKey& parentKey )
 {
     osg::ref_ptr<Tile> tiles[4];
     bool               realData[4];
@@ -130,7 +168,7 @@ SerialKeyNodeFactory::createNode( const TileKey& key )
 
     for( unsigned i = 0; i < 4; ++i )
     {
-        TileKey child = key.createChildKey( i );
+        TileKey child = parentKey.createChildKey( i );
         _builder->createTile( child, false, tiles[i], realData[i], lodBlending[i] );
         if ( tiles[i].valid() && realData[i] )
             tileHasAnyRealData = true;
@@ -138,7 +176,8 @@ SerialKeyNodeFactory::createNode( const TileKey& key )
 
     osg::Group* root = 0L;
 
-    if ( tileHasAnyRealData )
+    // assemble the tile.
+    if ( tileHasAnyRealData || _options.minLOD().isSet() || parentKey.getLevelOfDetail() == 0 )
     {
         // Now postprocess them and assemble into a tile group.
         root = new osg::Group();
diff --git a/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique b/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique
index 7626b7b..73172e3 100644
--- a/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique
+++ b/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,7 @@
 #include "CustomTerrainTechnique"
 #include "TransparentLayer"
 
+#include <OpenThreads/Atomic>
 #include <osg/MatrixTransform>
 #include <osg/Geode>
 #include <osg/Geometry>
@@ -69,6 +70,9 @@ public:
 
     META_Object( osgEarth, SinglePassTerrainTechnique );
 
+    /** dtor */
+    virtual ~SinglePassTerrainTechnique();
+
 public: /* overrides */
 
     virtual void init();
@@ -119,20 +123,24 @@ public:
 
     osg::StateSet* getActiveStateSet() const;
 
+    /** Gets to the underlying transform that parents the actual constructed geometry. */
+    osg::Transform* getTransform() const { return _transform.get(); }
+    osg::Transform* takeTransform() { return _transform.release(); }
+
+    bool getClearDataAfterCompile() const { return _clearDataAfterCompile;}
+    void setClearDataAfterCompile( bool value) { _clearDataAfterCompile = value;}
 
 protected:
 
     void calculateSampling( unsigned int& out_rows, unsigned int& out_cols, double& out_i, double& out_j );
 
 private:
-
-    virtual ~SinglePassTerrainTechnique();
     bool _debug;
 
     OpenThreads::Mutex _compileMutex;
     //OpenThreads::Mutex                  _writeBufferMutex;
     osg::ref_ptr<osg::MatrixTransform> _transform;
-    osg::ref_ptr<osg::Geode> _backGeode;
+    osg::ref_ptr<osg::Group> _backNode;
     osg::ref_ptr<osg::Uniform> _imageLayerStampUniform;
     osg::Vec3d _centerModel;
     float _verticalScaleOverride;
@@ -141,6 +149,7 @@ private:
     int  _initCount;
     bool _pendingFullUpdate;    
     bool _pendingGeometryUpdate;
+    bool _clearDataAfterCompile;
 
     struct ImageLayerUpdate {
         GeoImage _image;
@@ -163,17 +172,19 @@ private:
     osg::ref_ptr<const TextureCompositor> _texCompositor;
     bool _frontGeodeInstalled;
 
+    OpenThreads::Atomic _atomicCallOnce;
+
 private:
 
     osg::Vec3d computeCenterModel();
     bool createGeoImage( const CustomColorLayer& layer, GeoImage& image ) const; //const osgTerrain::Layer* imageLayer ) const;
-    osg::Geode* createGeometry( const TileFrame& tilef );
+    osg::Group* createGeometry( const TileFrame& tilef );
     osg::StateSet* createStateSet( const TileFrame& tilef );
     void prepareImageLayerUpdate( int layerIndex, const TileFrame& tilef );
     //Threading::ReadWriteMutex& getMutex();
-    inline osg::Geode* getFrontGeode() const {
+    inline osg::Group* getFrontNode() const {
         if (_transform.valid() && _transform->getNumChildren() > 0)
-            return static_cast<osg::Geode*>( _transform->getChild(0) ); 
+            return static_cast<osg::Group*>(_transform->getChild(0));
         return NULL;
     }
     osg::StateSet* getParentStateSet() const;
diff --git a/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique.cpp b/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique.cpp
index 8e06114..9dc652b 100644
--- a/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/SinglePassTerrainTechnique.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include "SinglePassTerrainTechnique"
-#include "Terrain"
+#include "TerrainNode"
 #include "Tile"
 
 #include <osgEarth/Cube>
@@ -31,6 +31,7 @@
 #include <osg/Math>
 #include <osg/Timer>
 #include <osg/Version>
+#include <osgUtil/DelaunayTriangulator>
 #include <osgUtil/Tessellator>
 #include <osgUtil/SmoothingVisitor>
 
@@ -56,8 +57,9 @@ namespace
     osg::ref_ptr<osg::Vec3dArray> _boundary;
     osg::Vec3d _ndcMin, _ndcMax;
     osg::Geometry* _geom;
+    osg::ref_ptr<osg::Vec3Array> _internal;
 
-    MaskRecord(osg::Vec3dArray* boundary, osg::Vec3d& ndcMin, osg::Vec3d& ndcMax, osg::Geometry* geom) : _boundary(boundary), _ndcMin(ndcMin), _ndcMax(ndcMax), _geom(geom) { }
+    MaskRecord(osg::Vec3dArray* boundary, osg::Vec3d& ndcMin, osg::Vec3d& ndcMax, osg::Geometry* geom) : _boundary(boundary), _ndcMin(ndcMin), _ndcMax(ndcMax), _geom(geom) { _internal = new osg::Vec3Array(); }
   };
 
   typedef std::vector<MaskRecord> MaskRecordVector;
@@ -68,20 +70,24 @@ namespace
 SinglePassTerrainTechnique::SinglePassTerrainTechnique( TextureCompositor* compositor ) :
 CustomTerrainTechnique(),
 _verticalScaleOverride(1.0f),
+_atomicCallOnce(0),
 _initCount(0),
 _pendingFullUpdate( false ),
 _pendingGeometryUpdate(false),
 _optimizeTriangleOrientation(true),
 _texCompositor( compositor ),
 _frontGeodeInstalled( false ),
-_debug( false )
+_debug( false ),
+_compileMutex( Mutex::MUTEX_RECURSIVE ),
+_clearDataAfterCompile( true )
 {
-    this->setThreadSafeRefUnref(true);
+    setThreadSafeRefUnref(true);
 }
 
 SinglePassTerrainTechnique::SinglePassTerrainTechnique(const SinglePassTerrainTechnique& rhs, const osg::CopyOp& copyop):
 CustomTerrainTechnique( rhs, copyop ),
 _verticalScaleOverride( rhs._verticalScaleOverride ),
+_atomicCallOnce( 0 ),
 _initCount( 0 ),
 _pendingFullUpdate( false ),
 _pendingGeometryUpdate( false ),
@@ -89,7 +95,9 @@ _optimizeTriangleOrientation( rhs._optimizeTriangleOrientation ),
 _texCompositor( rhs._texCompositor.get() ),
 _frontGeodeInstalled( rhs._frontGeodeInstalled ),
 _debug( rhs._debug ),
-_parentTile( rhs._parentTile )
+_parentTile( rhs._parentTile ),
+_compileMutex( Mutex::MUTEX_RECURSIVE ),
+_clearDataAfterCompile( rhs._clearDataAfterCompile )
 {
     //NOP
 }
@@ -128,6 +136,11 @@ SinglePassTerrainTechnique::init()
 {
     compile( TileUpdate(TileUpdate::UPDATE_ALL), 0L );
     applyTileUpdates();
+
+    if (_clearDataAfterCompile)
+    {        
+        _tile->clear();
+    }
 }
 
 void
@@ -140,6 +153,14 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         return;
     }
 
+    // only legal to call this once and only once.
+    // lame. i know. but it's friday
+    if ( _atomicCallOnce.OR(0x01) != 0 )
+    {
+        //OE_WARN << LC << "Tried to call more than once and was locked out" << std::endl;
+        return;
+    }
+
     //if ( _debug )
     //{
     //    OE_NOTICE << LC << "compile() " << std::endl;
@@ -175,9 +196,9 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         // TODO: optimize this with a method that ONLY regenerates the texture coordinates.
         if ( !_texCompositor->requiresUnitTextureSpace() )
         {
-            osg::ref_ptr<osg::StateSet> stateSet = _backGeode.valid() ? _backGeode->getStateSet() : 0L;
-            _backGeode = createGeometry( tilef );
-            _backGeode->setStateSet( stateSet.get() );
+            osg::ref_ptr<osg::StateSet> stateSet = _backNode.valid() ? _backNode->getStateSet() : 0L;
+            _backNode = createGeometry( tilef );
+            _backNode->setStateSet( stateSet.get() );
 
             _pendingGeometryUpdate = true;
         }
@@ -192,9 +213,9 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
     // multitexture mode (white tiles show up). Need to investigate and fix.
     else if ( partialUpdateOK && update.getAction() == TileUpdate::UPDATE_ELEVATION )
     {
-        osg::ref_ptr<osg::StateSet> stateSet = _backGeode.valid() ? _backGeode->getStateSet() : 0L;
-        _backGeode = createGeometry( tilef );
-        _backGeode->setStateSet( stateSet.get() );
+        osg::ref_ptr<osg::StateSet> stateSet = _backNode.valid() ? _backNode->getStateSet() : 0L;
+        _backNode = createGeometry( tilef );
+        _backNode->setStateSet( stateSet.get() );
 
         _pendingGeometryUpdate = true;
     }
@@ -204,13 +225,13 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         // give the engine a chance to bail out before generating geometry
         if ( progress && progress->isCanceled() )
         {
-            _backGeode = 0L;
+            _backNode = 0L;
             return;
         }
     
         // create the geometry and texture coordinates for this tile in a new buffer
-        _backGeode = createGeometry( tilef );
-        if ( !_backGeode.valid() )
+        _backNode = createGeometry( tilef );
+        if ( !_backNode.valid() )
         {
             OE_WARN << LC << "createGeometry returned NULL" << std::endl;
             return;
@@ -219,7 +240,7 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         // give the engine a chance to bail out before building the texture stateset:
         if ( progress && progress->isCanceled() )
         {
-            _backGeode = 0L;
+            _backNode = 0L;
             return;
         }
 
@@ -227,13 +248,13 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         osg::StateSet* stateSet = createStateSet( tilef );
         if ( stateSet )
         {
-            _backGeode->setStateSet( stateSet );
+            _backNode->setStateSet( stateSet );
         }
 
         // give the engine a chance to bail out before swapping buffers
         if ( progress && progress->isCanceled() )
         {
-            _backGeode = 0L;
+            _backNode = 0L;
             return;
         }
        
@@ -241,8 +262,8 @@ SinglePassTerrainTechnique::compile( const TileUpdate& update, ProgressCallback*
         if ( _initCount > 1 )
             OE_WARN << LC << "Tile was fully build " << _initCount << " times" << std::endl;
 
-        if ( _backGeode.valid() && !_backGeode->getStateSet() )
-            OE_WARN << LC << "ILLEGAL! no stateset in BackGeode!!" << std::endl;
+        if ( _backNode.valid() && !_backNode->getStateSet() )
+            OE_WARN << LC << "ILLEGAL! no stateset in BackNode!!" << std::endl;
 
         _pendingFullUpdate = true;
     }
@@ -260,84 +281,113 @@ SinglePassTerrainTechnique::applyTileUpdates()
     // process a pending buffer swap:
     if ( _pendingFullUpdate )
     {
-        if ( _backGeode->getStateSet() == 0L )
+        if ( _backNode->getStateSet() == 0L )
             OE_WARN << LC << "ILLEGAL: backGeode has no stateset" << std::endl;
 
-        _transform->setChild( 0, _backGeode.get() );
+        _transform->setChild( 0, _backNode.get() );
         _frontGeodeInstalled = true;
-        _backGeode = 0L;
+        _backNode = 0L;
         _pendingFullUpdate = false;
         _pendingGeometryUpdate = false;
         applied = true;
-    }
+    }  
 
     else
     {
         // process any pending LIVE geometry updates:
         if ( _pendingGeometryUpdate )
         {
-            osg::Geode* frontGeode = getFrontGeode();
+            osg::Group* frontNode = getFrontNode();
 
-            if (frontGeode)
+            if (frontNode)
             {
+                if (frontNode->getNumChildren() != _backNode->getNumChildren())
+                {
+                    OE_WARN << "Error:  Front and back nodes do not have equal number of children" << std::endl;
+                    return false;
+                }
 
                 if ( _texCompositor->requiresUnitTextureSpace() )
                 {
-                    // in "unit-texture-space" mode, we can take the shortcut of just updating
-                    // the geometry VBOs. The texture coordinates never change.
-                    for( unsigned int i=0; i<_backGeode->getNumDrawables(); ++i )
+                    for (unsigned int i = 0; i < _backNode->getNumChildren(); ++i)
                     {
-                        osg::Geometry* backGeom = static_cast<osg::Geometry*>( _backGeode->getDrawable(i) );
-                        osg::Vec3Array* backVerts = static_cast<osg::Vec3Array*>( backGeom->getVertexArray() );
-
-                        osg::Geometry* frontGeom = static_cast<osg::Geometry*>( frontGeode->getDrawable(i) );
-                        osg::Vec3Array* frontVerts = static_cast<osg::Vec3Array*>( frontGeom->getVertexArray() );
+                        osg::Geode* frontGeode = dynamic_cast< osg::Geode* > (frontNode->getChild(i));
+                        osg::Geode* backGeode = dynamic_cast< osg::Geode* > (_backNode->getChild(i));
+                        if (!frontGeode || !backGeode)
+                        {
+                            OE_WARN << "Error:  Children must be osg::Geodes" << std::endl;
+                        }
 
-                        if ( backVerts->size() == frontVerts->size() )
+                        // in "unit-texture-space" mode, we can take the shortcut of just updating
+                        // the geometry VBOs. The texture coordinates never change.
+                        for( unsigned int j=0; j< backGeode->getNumDrawables(); ++j )
                         {
-                            // simple VBO update:
-                            std::copy( backVerts->begin(), backVerts->end(), frontVerts->begin() );
-                            frontVerts->dirty();
+                            osg::Geometry* backGeom = static_cast<osg::Geometry*>( backGeode->getDrawable(j) );
+                            osg::Vec3Array* backVerts = static_cast<osg::Vec3Array*>( backGeom->getVertexArray() );
 
-                            osg::Vec3Array* backNormals = static_cast<osg::Vec3Array*>( backGeom->getNormalArray() );
-                            if ( backNormals )
+                            osg::Geometry* frontGeom = static_cast<osg::Geometry*>( frontGeode->getDrawable(j) );
+                            osg::Vec3Array* frontVerts = static_cast<osg::Vec3Array*>( frontGeom->getVertexArray() );
+
+                            if ( backVerts->size() == frontVerts->size() )
                             {
-                                osg::Vec3Array* frontNormals = static_cast<osg::Vec3Array*>( frontGeom->getNormalArray() );
-                                std::copy( backNormals->begin(), backNormals->end(), frontNormals->begin() );
-                                frontNormals->dirty();
+                                // simple VBO update:
+                                std::copy( backVerts->begin(), backVerts->end(), frontVerts->begin() );
+                                frontVerts->dirty();
+
+                                osg::Vec3Array* backNormals = static_cast<osg::Vec3Array*>( backGeom->getNormalArray() );
+                                if ( backNormals )
+                                {
+                                    osg::Vec3Array* frontNormals = static_cast<osg::Vec3Array*>( frontGeom->getNormalArray() );
+                                    std::copy( backNormals->begin(), backNormals->end(), frontNormals->begin() );
+                                    frontNormals->dirty();
+                                }
+
+                                osg::Vec2Array* backTexCoords = static_cast<osg::Vec2Array*>( backGeom->getTexCoordArray(0) );
+                                if ( backTexCoords )
+                                {
+                                    osg::Vec2Array* frontTexCoords = static_cast<osg::Vec2Array*>( frontGeom->getTexCoordArray(0) );
+                                    std::copy( backTexCoords->begin(), backTexCoords->end(), frontTexCoords->begin() );
+                                    frontTexCoords->dirty();
+                                }
                             }
-
-                            osg::Vec2Array* backTexCoords = static_cast<osg::Vec2Array*>( backGeom->getTexCoordArray(0) );
-                            if ( backTexCoords )
+                            else
                             {
-                                osg::Vec2Array* frontTexCoords = static_cast<osg::Vec2Array*>( frontGeom->getTexCoordArray(0) );
-                                std::copy( backTexCoords->begin(), backTexCoords->end(), frontTexCoords->begin() );
-                                frontTexCoords->dirty();
+                                frontGeom->setVertexArray( backVerts );
+                                if ( backVerts->getVertexBufferObject() )
+                                    backVerts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+                                frontGeom->setTexCoordArray( 0, backGeom->getTexCoordArray( 0 ) ); // TODO: un-hard-code
+                                if ( backGeom->getNormalArray() )
+                                    frontGeom->setNormalArray( backGeom->getNormalArray() );
                             }
                         }
-                        else
-                        {
-                            frontGeom->setVertexArray( backVerts );
-                            frontGeom->setTexCoordArray( 0, backGeom->getTexCoordArray( 0 ) ); // TODO: un-hard-code
-                            if ( backGeom->getNormalArray() )
-                                frontGeom->setNormalArray( backGeom->getNormalArray() );
-                        }
                     }
                 }
                 else
                 {
-                    // copy the drawables from the back buffer to the front buffer. By doing this,
-                    // we don't touch the front geode's stateset (which contains the textures) and
-                    // therefore they don't get re-applied.
-                    for( unsigned int i=0; i<_backGeode->getNumDrawables(); ++i )
+
+                    for (unsigned int i = 0; i < _backNode->getNumChildren(); ++i)
                     {
-                        frontGeode->setDrawable( i, _backGeode->getDrawable( i ) );
+                        osg::Geode* frontGeode = dynamic_cast< osg::Geode* > (frontNode->getChild(i));
+                        osg::Geode* backGeode = dynamic_cast< osg::Geode* > (_backNode->getChild(i));
+                        if (!frontGeode || !backGeode)
+                        {
+                            OE_WARN << "Error:  Children must be osg::Geodes" << std::endl;
+                        }
+
+                        // copy the drawables from the back buffer to the front buffer. By doing this,
+                        // we don't touch the front geode's stateset (which contains the textures) and
+                        // therefore they don't get re-applied.
+                        for( unsigned int j=0; j<backGeode->getNumDrawables(); ++j )
+                        {
+                            frontGeode->setDrawable( j, backGeode->getDrawable( j ) );
+                        }
                     }
                 }
             }
 
             _pendingGeometryUpdate = false;
-            _backGeode = 0L;
+            _backNode = 0L;
             applied = true;
         }
 
@@ -353,11 +403,11 @@ SinglePassTerrainTechnique::applyTileUpdates()
         {
             const ImageLayerUpdate& update = _pendingImageLayerUpdates.front();
 
-            osg::ref_ptr< osg::Geode > frontGeode = getFrontGeode();
-            if (frontGeode.valid())
+            osg::ref_ptr< osg::Group > front = getFrontNode();
+            if (front.valid())
             {
                 _texCompositor->applyLayerUpdate(
-                    frontGeode->getStateSet(),
+                    front->getStateSet(),
                     update._layerUID,
                     update._image,
                     _tileKey,
@@ -412,7 +462,7 @@ SinglePassTerrainTechnique::createGeoImage( const CustomColorLayer& colorLayer,
             layerLocator = layerLocator->getGeographicFromGeocentric();
 
         const GeoExtent& imageExtent = layerLocator->getDataExtent();
-        image = GeoImage( colorLayer.getImage(), imageExtent ); //const_cast<osg::Image*>(colorLayer.getImage()), imageExtent );
+        image = GeoImage( colorLayer.getImage(), imageExtent );
         return true;
     }
     return false;
@@ -424,11 +474,11 @@ SinglePassTerrainTechnique::getActiveStateSet() const
     OpenThreads::ScopedLock<Mutex> exclusiveLock( const_cast<SinglePassTerrainTechnique*>(this)->_compileMutex );
 
     osg::StateSet* result = 0L;
-    osg::Geode* front = getFrontGeode();
+    osg::Node* front = getFrontNode();
     if ( front ) 
         result = front->getStateSet();
-    if ( !result && _backGeode.valid() )
-        result = _backGeode->getStateSet();
+    if ( !result && _backNode.valid() )
+        result = _backNode->getStateSet();
 
     return result;
 }
@@ -498,7 +548,9 @@ SinglePassTerrainTechnique::calculateSampling( unsigned int& out_rows, unsigned
     out_i = 1.0;
     out_j = 1.0;
 
-    float sampleRatio = _tile->getTerrain() ? _tile->getTerrain()->getSampleRatio() : 1.0f;
+    osg::ref_ptr< TerrainNode > terrain = _tile->getTerrain();
+
+    float sampleRatio = terrain.valid() ? terrain->getSampleRatio() : 1.0f;
     if ( sampleRatio != 1.0f )
     {
         unsigned int originalNumColumns = out_cols;
@@ -548,7 +600,7 @@ namespace
     typedef std::vector< RenderLayer > RenderLayerVector;
 }
 
-osg::Geode*
+osg::Group*
 SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
 {
     osg::ref_ptr<GeoLocator> masterTextureLocator = _masterLocator.get();
@@ -562,29 +614,46 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
     {
         masterTextureLocator = masterTextureLocator->getGeographicFromGeocentric();
     }
+
+    osg::Group* group = new osg::Group;
     
     osgTerrain::Layer* elevationLayer = _tile->getElevationLayer();
 
-    // fire up a brand new geode.
-    osg::Geode* geode = new osg::Geode();
-    geode->setThreadSafeRefUnref(true);
-    
     // setting the geometry to DYNAMIC means its draw will not overlap the next frame's update/cull
     // traversal - which could access the buffer without a mutex
 
     osg::Geometry* surface = new osg::Geometry();
+
     surface->setThreadSafeRefUnref(true); // TODO: probably unnecessary.
     surface->setDataVariance( osg::Object::DYNAMIC );
     surface->setUseDisplayList(false);
     surface->setUseVertexBufferObjects(true);
-    geode->addDrawable( surface );
+
+    osg::Geode* surfaceGeode = new osg::Geode();
+    surfaceGeode->addDrawable( surface );
 
     osg::Geometry* skirt = new osg::Geometry();
     skirt->setThreadSafeRefUnref(true); // TODO: probably unnecessary.
     skirt->setDataVariance( osg::Object::DYNAMIC );
     skirt->setUseDisplayList(false);
     skirt->setUseVertexBufferObjects(true);
-    geode->addDrawable( skirt );
+    
+    osg::Geode* skirtGeode = new osg::Geode;
+    skirtGeode->addDrawable( skirt );
+
+    osg::ref_ptr< TerrainNode > terrain = _tile->getTerrain();
+    if ( terrain.valid() )
+    {
+        //Set the node masks of the surface and skirts if they are set.
+        const TerrainOptions& opts = terrain->getTileFactory()->getTerrainOptions();
+        surfaceGeode->setNodeMask( *opts.primaryTraversalMask() );
+        skirtGeode->setNodeMask( *opts.secondaryTraversalMask() );
+    }
+    
+    group->addChild( skirtGeode );
+    group->addChild( surfaceGeode );    
+
+
 
 	osg::ref_ptr<GeoLocator> geoLocator = _masterLocator;
 	// Avoid coordinates conversion when GEOCENTRIC, so get a GEOGRAPHIC version of Locator 
@@ -594,7 +663,7 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
 
 	float scaleHeight = 
 		_verticalScaleOverride != 1.0? _verticalScaleOverride :
-		_tile->getTerrain() ? _tile->getTerrain()->getVerticalScale() :
+		terrain.valid() ? terrain->getVerticalScale() :
 		1.0f;
 
     MaskRecordVector masks;
@@ -650,7 +719,7 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
             mask_geom->setUseDisplayList(false);
             mask_geom->setUseVertexBufferObjects(true);
             //mask_geom->getOrCreateStateSet()->setAttribute(new osg::Point( 5.0f ), osg::StateAttribute::ON);
-            geode->addDrawable(mask_geom);
+            surfaceGeode->addDrawable(mask_geom);
 
             masks.push_back(MaskRecord(boundary, min_ndc, max_ndc, mask_geom));
           }
@@ -667,10 +736,13 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
       stitching_skirts->setUseDisplayList(false);
       stitching_skirts->setUseVertexBufferObjects(true);
       //stitching_skirts->getOrCreateStateSet()->setAttribute(new osg::Point( 5.0f ), osg::StateAttribute::ON);
-      geode->addDrawable( stitching_skirts);
+      surfaceGeode->addDrawable( stitching_skirts);
 
       ss_verts = new osg::Vec3Array();
       stitching_skirts->setVertexArray(ss_verts);
+
+      if ( ss_verts->getVertexBufferObject() )
+          ss_verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
     }
 
 
@@ -704,6 +776,9 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
     surfaceVerts->reserve( numVerticesInSurface );
     surface->setVertexArray( surfaceVerts.get() );
 
+    if ( surfaceVerts->getVertexBufferObject() )
+        surfaceVerts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
     // allocate and assign normals
     osg::ref_ptr<osg::Vec3Array> normals = new osg::Vec3Array();
     normals->reserve(numVerticesInSurface);
@@ -849,6 +924,9 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
                 {
                   validValue = false;
                   indices[iv] = -2;
+
+                  (*mr)._internal->push_back(ndc);
+
                   break;
                 }
               }
@@ -916,19 +994,19 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
     {
       int min_i = (int)floor((*mr)._ndcMin.x() * (double)(numColumns-1));
       if (min_i < 0) min_i = 0;
-      if (min_i >= numColumns) min_i = numColumns - 1;
+      if (min_i >= (int)numColumns) min_i = numColumns - 1;
 
       int min_j = (int)floor((*mr)._ndcMin.y() * (double)(numRows-1));
       if (min_j < 0) min_j = 0;
-      if (min_j >= numColumns) min_j = numColumns - 1;
+      if (min_j >= (int)numColumns) min_j = numColumns - 1;
 
       int max_i = (int)ceil((*mr)._ndcMax.x() * (double)(numColumns-1));
       if (max_i < 0) max_i = 0;
-      if (max_i >= numColumns) max_i = numColumns - 1;
+      if (max_i >= (int)numColumns) max_i = numColumns - 1;
 
       int max_j = (int)ceil((*mr)._ndcMax.y() * (double)(numRows-1));
       if (max_j < 0) max_j = 0;
-      if (max_j >= numColumns) max_j = numColumns - 1;
+      if (max_j >= (int)numColumns) max_j = numColumns - 1;
 
       if (min_i >= 0 && max_i >= 0 && min_j >= 0 && max_j >= 0)
       {
@@ -1019,20 +1097,15 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
           maskPoly->push_back(local);
         }
 
+#if 0
 
-//Change the following two #if statements to see mask skirt polygons
-//before clipping and adjusting
-#if 1
         //Do a diff on the polygons to get the actual mask skirt
         osg::ref_ptr<osgEarth::Symbology::Geometry> outPoly;
         maskSkirtPoly->difference(maskPoly.get(), outPoly);
-#else
-        osg::ref_ptr<osgEarth::Symbology::Geometry> outPoly = maskSkirtPoly;
-#endif
 
         osg::Vec3Array* outVerts = new osg::Vec3Array();
-
         osg::Geometry* stitch_geom = (*mr)._geom;
+
         stitch_geom->setVertexArray(outVerts);
 
         bool multiParent = false;
@@ -1076,7 +1149,6 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
 
         if (stitch_geom->getNumPrimitiveSets() > 0)
         {
-#if 1
           // Tessellate mask skirt
           osg::ref_ptr<osgUtil::Tessellator> tscx=new osgUtil::Tessellator;
           tscx->setTessellationType(osgUtil::Tessellator::TESS_TYPE_GEOMETRY);
@@ -1174,7 +1246,8 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
               for (osgEarth::Symbology::Polygon::iterator mit = maskPoly->begin(); mit != maskPoly->end(); ++mit)
               {
                 osg::Vec3d p1 = *mit;
-                osg::Vec3d p3 = mit == --maskPoly->end() ? maskPoly->front() : (*(mit + 1));
+                osgEarth::Symbology::Polygon::iterator mitEnd = maskPoly->end();
+                osg::Vec3d p3 = (mit == (--mitEnd)) ? maskPoly->front() : (*(mit + 1));
 
                 //Truncated vales to compensate for accuracy issues
                 double p1x = ((int)(p1.x() * 1000000)) / 1000000.0L;
@@ -1264,17 +1337,7 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
               }
             }
           }
-#else
-          for (osg::Vec3Array::iterator it = outVerts->begin(); it != outVerts->end(); ++it)
-          {
-            //Convert to model coords
-            osg::Vec3d model;
-            _masterLocator->convertLocalToModel(*it, model);
-            model = model - _centerModel;
-            (*it).set(model.x(), model.y(), model.z());
-          }
-#endif
-      
+ 
           //Create stitching skirts
           if (createSkirt && skirtIndices.size() > 0)
           {
@@ -1352,13 +1415,252 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
             }
           }
         }
+
+#else
+        // Use delaunay triangulation for stitching as an alternative to the method above
+
+        // Add the outter stitching bounds to the collection of vertices to be used for triangulation
+        (*mr)._internal->insert((*mr)._internal->end(), maskSkirtPoly->begin(), maskSkirtPoly->end());
+
+        osg::ref_ptr<osgUtil::DelaunayTriangulator> trig=new osgUtil::DelaunayTriangulator();
+        trig->setInputPointArray((*mr)._internal.get());
+
+
+        // Add mask bounds as a triangulation constraint
+        osg::ref_ptr<osgUtil::DelaunayConstraint> dc=new osgUtil::DelaunayConstraint;
+
+        osg::Vec3Array* maskConstraint = new osg::Vec3Array();
+        dc->setVertexArray(maskConstraint);
+
+        if ( maskConstraint->getVertexBufferObject() )
+            maskConstraint->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        //Crop the mask to the stitching poly (for case where mask crosses tile edge)
+        osg::ref_ptr<osgEarth::Symbology::Geometry> maskCrop;
+        maskPoly->crop(maskSkirtPoly.get(), maskCrop);
+        
+        osgEarth::Symbology::GeometryIterator i( maskCrop.get(), false );
+        while( i.hasMore() )
+        {
+          osgEarth::Symbology::Geometry* part = i.next();
+          if (!part)
+            continue;
+
+          if (part->getType() == osgEarth::Symbology::Geometry::TYPE_POLYGON)
+          {
+            osg::Vec3Array* partVerts = part->toVec3Array();
+            maskConstraint->insert(maskConstraint->end(), partVerts->begin(), partVerts->end());
+            dc->addPrimitiveSet(new osg::DrawArrays(osg::PrimitiveSet::LINE_LOOP, maskConstraint->size() - partVerts->size(), partVerts->size()));
+          }
+        }
+
+        // Cropping strips z-values so need reassign
+        std::vector<int> isZSet;
+        for (osg::Vec3Array::iterator it = maskConstraint->begin(); it != maskConstraint->end(); ++it)
+        {
+          int zSet = 0;
+
+          //Look for verts that belong to the original mask skirt polygon
+          for (osgEarth::Symbology::Polygon::iterator mit = maskSkirtPoly->begin(); mit != maskSkirtPoly->end(); ++mit)
+          {
+            if (osg::absolute((*mit).x() - (*it).x()) < MATCH_TOLERANCE && osg::absolute((*mit).y() - (*it).y()) < MATCH_TOLERANCE)
+            {
+              (*it).z() = (*mit).z();
+              zSet += 1;
+              break;
+            }
+          }
+
+          //Look for verts that belong to the mask polygon
+          for (osgEarth::Symbology::Polygon::iterator mit = maskPoly->begin(); mit != maskPoly->end(); ++mit)
+          {
+            if (osg::absolute((*mit).x() - (*it).x()) < MATCH_TOLERANCE && osg::absolute((*mit).y() - (*it).y()) < MATCH_TOLERANCE)
+            {
+              (*it).z() = (*mit).z();
+              zSet += 2;
+              break;
+            }
+          }
+
+          isZSet.push_back(zSet);
+        }
+
+        //Any mask skirt verts that are still unset are newly created verts where the skirt
+        //meets the mask. Find the mask segment the point lies along and calculate the
+        //appropriate z value for the point.
+        int count = 0;
+        for (osg::Vec3Array::iterator it = maskConstraint->begin(); it != maskConstraint->end(); ++it)
+        {
+          //If the z-value was set from a mask vertex there is no need to change it.  If
+          //it was set from a vertex from the stitching polygon it may need overriden if
+          //the vertex lies along a mask edge.  Or if it is unset, it will need to be set.
+          //if (isZSet[count] < 2)
+          if (!isZSet[count])
+          {
+            osg::Vec3d p2 = *it;
+            double closestZ = 0.0;
+            double closestRatio = DBL_MAX;
+            for (osgEarth::Symbology::Polygon::iterator mit = maskPoly->begin(); mit != maskPoly->end(); ++mit)
+            {
+              osg::Vec3d p1 = *mit;
+              osg::Vec3d p3 = mit == --maskPoly->end() ? maskPoly->front() : (*(mit + 1));
+
+              //Truncated vales to compensate for accuracy issues
+              double p1x = ((int)(p1.x() * 1000000)) / 1000000.0L;
+              double p3x = ((int)(p3.x() * 1000000)) / 1000000.0L;
+              double p2x = ((int)(p2.x() * 1000000)) / 1000000.0L;
+
+              double p1y = ((int)(p1.y() * 1000000)) / 1000000.0L;
+              double p3y = ((int)(p3.y() * 1000000)) / 1000000.0L;
+              double p2y = ((int)(p2.y() * 1000000)) / 1000000.0L;
+
+              if ((p1x < p3x ? p2x >= p1x && p2x <= p3x : p2x >= p3x && p2x <= p1x) &&
+                  (p1y < p3y ? p2y >= p1y && p2y <= p3y : p2y >= p3y && p2y <= p1y))
+              {
+                double l1 =(osg::Vec2d(p2.x(), p2.y()) - osg::Vec2d(p1.x(), p1.y())).length();
+                double lt = (osg::Vec2d(p3.x(), p3.y()) - osg::Vec2d(p1.x(), p1.y())).length();
+                double zmag = p3.z() - p1.z();
+
+                double foundZ = (l1 / lt) * zmag + p1.z();
+
+                double mRatio = 1.0;
+                if (osg::absolute(p1x - p3x) < MATCH_TOLERANCE)
+                {
+                  if (osg::absolute(p1x-p2x) < MATCH_TOLERANCE)
+                    mRatio = 0.0;
+                }
+                else
+                {
+                  double m1 = p1x == p2x ? 0.0 : (p2y - p1y) / (p2x - p1x);
+                  double m2 = p1x == p3x ? 0.0 : (p3y - p1y) / (p3x - p1x);
+                  mRatio = m2 == 0.0 ? m1 : osg::absolute(1.0L - m1 / m2);
+                }
+
+                if (mRatio < 0.01)
+                {
+                  (*it).z() = foundZ;
+                  isZSet[count] = 2;
+                  break;
+                }
+                else if (mRatio < closestRatio)
+                {
+                  closestRatio = mRatio;
+                  closestZ = foundZ;
+                }
+              }
+            }
+
+            if (!isZSet[count] && closestRatio < DBL_MAX)
+            {
+              (*it).z() = closestZ;
+              isZSet[count] = 2;
+            }
+          }
+
+          if (!isZSet[count])
+            OE_WARN << LC << "Z-value not set for mask constraint vertex" << std::endl;
+
+          count++;
+        }
+
+        trig->addInputConstraint(dc.get());
+
+
+        // Create array to hold vertex normals
+        osg::Vec3Array *norms=new osg::Vec3Array;
+        trig->setOutputNormalArray(norms);
+        
+
+        // Triangulate vertices and remove triangles that lie within the contraint loop
+        trig->triangulate();
+        trig->removeInternalTriangles(dc.get());
+
+
+        // Set up new arrays to hold final vertices and normals
+        osg::Geometry* stitch_geom = (*mr)._geom;
+        osg::Vec3Array* stitch_verts = new osg::Vec3Array();
+        stitch_verts->reserve(trig->getInputPointArray()->size());
+        stitch_geom->setVertexArray(stitch_verts);
+        if ( stitch_verts->getVertexBufferObject() )
+            stitch_verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+        osg::Vec3Array* stitch_norms = new osg::Vec3Array(trig->getInputPointArray()->size());
+        stitch_geom->setNormalArray( stitch_norms );
+        stitch_geom->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+
+        //Initialize tex coords
+        osg::Vec2Array* unifiedStitchTexCoords = 0L;
+        if (_texCompositor->requiresUnitTextureSpace())
+        {
+          unifiedStitchTexCoords = new osg::Vec2Array();
+          unifiedStitchTexCoords->reserve(trig->getInputPointArray()->size());
+          stitch_geom->setTexCoordArray(0, unifiedStitchTexCoords);
+        }
+        else if ( renderLayers.size() > 0 )
+        {
+          for (unsigned int i = 0; i < renderLayers.size(); ++i)
+          {
+            renderLayers[i]._stitchTexCoords->reserve(trig->getInputPointArray()->size());
+          }
+        }
+
+
+        // Iterate through point to convert to model coords, calculate normals, and set up tex coords
+        int norm_i = -1;
+        for (osg::Vec3Array::iterator it = trig->getInputPointArray()->begin(); it != trig->getInputPointArray()->end(); ++it)
+        {
+          // get model coords
+          osg::Vec3d model;
+          _masterLocator->convertLocalToModel(*it, model);
+          model = model - _centerModel;
+
+          stitch_verts->push_back(model);
+
+          // calc normals
+          osg::Vec3d local_one(*it);
+          local_one.z() += 1.0;
+          osg::Vec3d model_one;
+          _masterLocator->convertLocalToModel( local_one, model_one );
+          model_one = model_one - model;
+          model_one.normalize();
+          (*stitch_norms)[++norm_i] = model_one;
+
+          // set up text coords
+          if (_texCompositor->requiresUnitTextureSpace())
+          {
+            unifiedStitchTexCoords->push_back(osg::Vec2((*it).x(), (*it).y()));
+          }
+          else if (renderLayers.size() > 0)
+          {
+            for (unsigned int i = 0; i < renderLayers.size(); ++i)
+            {
+              if (!renderLayers[i]._locator->isEquivalentTo(*masterTextureLocator.get()))
+              {
+                osg::Vec3d color_ndc;
+                osgTerrain::Locator::convertLocalCoordBetween(*masterTextureLocator.get(), (*it), *renderLayers[i]._locator.get(), color_ndc);
+                renderLayers[i]._stitchTexCoords->push_back(osg::Vec2(color_ndc.x(), color_ndc.y()));
+              }
+              else
+              {
+                renderLayers[i]._stitchTexCoords->push_back(osg::Vec2((*it).x(), (*it).y()));
+              }
+            }
+          }
+        }
+
+
+        // Get triangles from triangulator and add as primative set to the geometry
+        stitch_geom->addPrimitiveSet(trig->getTriangles());
+        //stitch_geom->setNormalArray(trig->getOutputNormalArray());
+        //stitch_geom->setNormalBinding(osg::Geometry::BIND_PER_PRIMITIVE);
+#endif
       }
     }
 
     // populate primitive sets
     bool swapOrientation = !(_masterLocator->orientationOpenGL());
 
-    osg::ref_ptr<osg::DrawElementsUInt> elements = new osg::DrawElementsUInt(GL_TRIANGLES);
+    osg::ref_ptr<osg::DrawElementsUShort> elements = new osg::DrawElementsUShort(GL_TRIANGLES);
     elements->reserve((numRows-1) * (numColumns-1) * 6);
 
     surface->addPrimitiveSet(elements.get());
@@ -1520,12 +1822,15 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
         }
 
         skirt->setVertexArray( skirtVerts );
+        if ( skirtVerts->getVertexBufferObject() )
+            skirtVerts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
         skirt->setNormalArray( skirtNormals );
         skirt->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
 
         //Add a primative set for each continuous skirt strip
         skirtBreaks.push_back(skirtVerts->size());
-        for (int p=1; p < skirtBreaks.size(); p++)
+        for (int p=1; p < (int)skirtBreaks.size(); p++)
           skirt->addPrimitiveSet( new osg::DrawArrays( GL_TRIANGLE_STRIP, skirtBreaks[p-1], skirtBreaks[p] - skirtBreaks[p-1] ) );
     }
     
@@ -1708,23 +2013,23 @@ SinglePassTerrainTechnique::createGeometry( const TileFrame& tilef )
 
   
 
-    MeshConsolidator::run( *surface );
+    MeshConsolidator::convertToTriangles( *surface );
 
     if ( skirt )
-        MeshConsolidator::run( *skirt );
+        MeshConsolidator::convertToTriangles( *skirt );
 
     for (MaskRecordVector::iterator mr = masks.begin(); mr != masks.end(); ++mr)
-        MeshConsolidator::run( *((*mr)._geom) );
+        MeshConsolidator::convertToTriangles( *((*mr)._geom) );
     
    
     if (osgDB::Registry::instance()->getBuildKdTreesHint()==osgDB::ReaderWriter::Options::BUILD_KDTREES &&
         osgDB::Registry::instance()->getKdTreeBuilder())
     {            
         osg::ref_ptr<osg::KdTreeBuilder> builder = osgDB::Registry::instance()->getKdTreeBuilder()->clone();
-        geode->accept(*builder);
+        group->accept(*builder);
     }
 
-    return geode;
+    return group;
 }
 
 void
@@ -1751,9 +2056,9 @@ SinglePassTerrainTechnique::releaseGLObjects(osg::State* state) const
         _transform->releaseGLObjects( state );
     }
 
-    if ( _backGeode.valid() )
+    if ( _backNode.valid() )
     {
-        _backGeode->releaseGLObjects(state);
-        ncThis->_backGeode = 0L;
+        _backNode->releaseGLObjects(state);
+        ncThis->_backNode = 0L;
     }
 }
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain
deleted file mode 100644
index 8b91255..0000000
--- a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain
+++ /dev/null
@@ -1,87 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#ifndef OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN
-#define OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN 1
-
-#include "Terrain"
-#include "StreamingTile"
-#include <osgEarth/TaskService>
-
-using namespace osgEarth;
-
-/**
- * Terrain implementation that supports the SEQUENTIAL and PREEMPTIVE loading policies.
- */
-class StreamingTerrain : public Terrain
-{
-public:
-    StreamingTerrain(
-        const MapFrame& update_mapf,
-        const MapFrame& cull_mapf,
-        OSGTileFactory* factory,
-        bool            quickReleaseGLObjects );
-
-    virtual const char* libraryName() const { return "osgEarth"; }
-    virtual const char* className() const { return "StreamingTerrain"; }
-    
-    //override
-    virtual Tile* createTile(const TileKey& key, GeoLocator* locator) const;
-
-public:
-
-    TaskService* getImageryTaskService(int layerId);
-    TaskService* getElevationTaskService();
-    TaskService* getTileGenerationTaskService();
-
-    /**
-     * Updates the catalog of task service threads - this gets called by the OSGTerrainEngine
-     * in response to a change in the Map's data model. The map frame is that of the terrain
-     * engine.
-     */
-    void updateTaskServiceThreads( const MapFrame& mapf );
-
-    const LoadingPolicy& getLoadingPolicy() const { return _loadingPolicy; }
-
-protected:
-
-	virtual ~StreamingTerrain();
-
-    //override
-    virtual unsigned getNumActiveTasks() const;
-
-    //override
-    virtual void updateTraversal( osg::NodeVisitor& nv );
-
-private:
-
-    TaskService* createTaskService( const std::string& name, int id, int numThreads );
-    TaskService* getTaskService( int id );
-
-    void refreshFamily( const MapInfo& info, const TileKey& key, StreamingTile::Relative* family, bool tileTableLocked );
-
-    typedef std::map< int, osg::ref_ptr< TaskService > > TaskServiceMap;
-
-    TaskServiceMap     _taskServices;
-    OpenThreads::Mutex _taskServiceMutex;
-    int                _numLoadingThreads;
-    LoadingPolicy      _loadingPolicy;
-    UID                _elevationTaskServiceUID;
-};
-
-#endif // OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain.cpp b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain.cpp
deleted file mode 100644
index 94ebdf6..0000000
--- a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrain.cpp
+++ /dev/null
@@ -1,350 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#include "StreamingTerrain"
-#include "StreamingTile"
-#include "TransparentLayer"
-
-#include <osgEarth/Registry>
-#include <osgEarth/Map>
-#include <osgEarth/FindNode>
-
-#include <osg/NodeCallback>
-#include <osg/NodeVisitor>
-#include <osg/Node>
-#include <osgGA/EventVisitor>
-
-#include <OpenThreads/ScopedLock>
-
-using namespace osgEarth;
-using namespace OpenThreads;
-
-#define LC "[StreamingTerrain] "
-
-//----------------------------------------------------------------------------
-
-StreamingTerrain::StreamingTerrain(const MapFrame& update_mapf, 
-                                   const MapFrame& cull_mapf, 
-                                   OSGTileFactory* tileFactory,
-                                   bool            quickReleaseGLObjects ) :
-
-Terrain( update_mapf, cull_mapf, tileFactory, quickReleaseGLObjects ),
-_numLoadingThreads( 0 )
-{
-    _loadingPolicy = tileFactory->getTerrainOptions().loadingPolicy().get();
-
-    setNumChildrenRequiringUpdateTraversal( 1 );
-    _alwaysUpdate = true;
-    _numLoadingThreads = computeLoadingThreads(_loadingPolicy);
-
-    OE_INFO << LC << "Using a total of " << _numLoadingThreads << " loading threads " << std::endl;
-}
-
-StreamingTerrain::~StreamingTerrain()
-{
-    //nop
-}
-
-Tile*
-StreamingTerrain::createTile(const TileKey& key, GeoLocator* locator) const
-{
-    return new StreamingTile( key, locator, this->getQuickReleaseGLObjects() );
-}
-
-// This method is called by StreamingTerrain::traverse() in the UPDATE TRAVERSAL.
-void
-StreamingTerrain::refreshFamily(const MapInfo&           mapInfo,
-                                const TileKey&           key,
-                                StreamingTile::Relative* family,
-                                bool                     tileTableLocked )
-{
-    osgTerrain::TileID tileId = key.getTileId();
-
-    // geocentric maps wrap around in the X dimension.
-    bool wrapX = mapInfo.isGeocentric();
-    unsigned int tileCountX, tileCountY;
-    mapInfo.getProfile()->getNumTiles( tileId.level, tileCountX, tileCountY );
-
-    // Relative::PARENT
-    {
-        family[StreamingTile::Relative::PARENT].expected = true; // TODO: is this always correct?
-        family[StreamingTile::Relative::PARENT].elevLOD = -1;
-        family[StreamingTile::Relative::PARENT].imageLODs.clear();
-        family[StreamingTile::Relative::PARENT].tileID = osgTerrain::TileID( tileId.level-1, tileId.x/2, tileId.y/2 );
-
-        osg::ref_ptr<StreamingTile> parent;
-        getTile( family[StreamingTile::Relative::PARENT].tileID, parent, !tileTableLocked );
-        if ( parent.valid() )
-        {
-            family[StreamingTile::Relative::PARENT].elevLOD = parent->getElevationLOD();
-
-            ColorLayersByUID relLayers;
-            parent->getCustomColorLayers( relLayers );
-
-            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
-            {
-                family[StreamingTile::Relative::PARENT].imageLODs[i->first] = i->second.getLevelOfDetail();
-            }
-        }
-    }
-
-    // Relative::WEST
-    {
-        family[StreamingTile::Relative::WEST].expected = tileId.x > 0 || wrapX;
-        family[StreamingTile::Relative::WEST].elevLOD = -1;
-        family[StreamingTile::Relative::WEST].imageLODs.clear();
-        family[StreamingTile::Relative::WEST].tileID = osgTerrain::TileID( tileId.level, tileId.x > 0? tileId.x-1 : tileCountX-1, tileId.y );
-        osg::ref_ptr<StreamingTile> west;
-        getTile( family[StreamingTile::Relative::WEST].tileID, west, !tileTableLocked );
-        if ( west.valid() )
-        {
-            family[StreamingTile::Relative::WEST].elevLOD = west->getElevationLOD();
-
-            ColorLayersByUID relLayers;
-            west->getCustomColorLayers( relLayers );
-
-            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
-            {
-                family[StreamingTile::Relative::WEST].imageLODs[i->first] = i->second.getLevelOfDetail();
-            }
-        }
-    }
-
-    // Relative::NORTH
-    {
-        family[StreamingTile::Relative::NORTH].expected = tileId.y < (int)tileCountY-1;
-        family[StreamingTile::Relative::NORTH].elevLOD = -1;
-        family[StreamingTile::Relative::NORTH].imageLODs.clear();
-        family[StreamingTile::Relative::NORTH].tileID = osgTerrain::TileID( tileId.level, tileId.x, tileId.y < (int)tileCountY-1 ? tileId.y+1 : 0 );
-        osg::ref_ptr<StreamingTile> north;
-        getTile( family[StreamingTile::Relative::NORTH].tileID, north, !tileTableLocked );
-        if ( north.valid() )
-        {
-            family[StreamingTile::Relative::NORTH].elevLOD = north->getElevationLOD();
-
-            ColorLayersByUID relLayers;
-            north->getCustomColorLayers( relLayers );
-
-            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
-            {
-                family[StreamingTile::Relative::NORTH].imageLODs[i->first] = i->second.getLevelOfDetail();
-            }
-        }
-    }
-
-    // Relative::EAST
-    {
-        family[StreamingTile::Relative::EAST].expected = tileId.x < (int)tileCountX-1 || wrapX;
-        family[StreamingTile::Relative::EAST].elevLOD = -1;
-        family[StreamingTile::Relative::EAST].imageLODs.clear();
-        family[StreamingTile::Relative::EAST].tileID = osgTerrain::TileID( tileId.level, tileId.x < (int)tileCountX-1 ? tileId.x+1 : 0, tileId.y );
-        osg::ref_ptr<StreamingTile> east;
-        getTile( family[StreamingTile::Relative::EAST].tileID, east, !tileTableLocked );
-        if ( east.valid() )
-        {
-            family[StreamingTile::Relative::EAST].elevLOD = east->getElevationLOD();
-
-            ColorLayersByUID relLayers;
-            east->getCustomColorLayers( relLayers );
-
-            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
-            {
-                family[StreamingTile::Relative::EAST].imageLODs[i->first] = i->second.getLevelOfDetail();
-            }
-        }
-    }
-
-    // Relative::SOUTH
-    {
-        family[StreamingTile::Relative::SOUTH].expected = tileId.y > 0;
-        family[StreamingTile::Relative::SOUTH].elevLOD = -1;
-        family[StreamingTile::Relative::SOUTH].imageLODs.clear();
-        family[StreamingTile::Relative::SOUTH].tileID = osgTerrain::TileID( tileId.level, tileId.x, tileId.y > 0 ? tileId.y-1 : tileCountY-1 );
-        osg::ref_ptr<StreamingTile> south;
-        getTile( family[StreamingTile::Relative::SOUTH].tileID, south, !tileTableLocked );
-        if ( south.valid() )
-        {
-            family[StreamingTile::Relative::SOUTH].elevLOD = south->getElevationLOD();
-
-            ColorLayersByUID relLayers;
-            south->getCustomColorLayers( relLayers );
-
-            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
-            {
-                family[StreamingTile::Relative::SOUTH].imageLODs[i->first] = i->second.getLevelOfDetail();
-            }
-        }
-    }
-}
-
-unsigned
-StreamingTerrain::getNumActiveTasks() const
-{
-    ScopedLock<Mutex> lock(const_cast<StreamingTerrain*>(this)->_taskServiceMutex );
-
-    unsigned int total = 0;
-    for (TaskServiceMap::const_iterator itr = _taskServices.begin(); itr != _taskServices.end(); ++itr)
-    {
-        total += itr->second->getNumRequests();
-    }
-    return total;
-}
-
-void
-StreamingTerrain::updateTraversal( osg::NodeVisitor& nv )
-{
-    // this stamp keeps track of when requests are dispatched. If a request's stamp gets too
-    // old, it is considered "expired" and subject to cancelation
-    int stamp = nv.getFrameStamp()->getFrameNumber();
-
-    // update the frame stamp on the task services. This is necessary to support 
-    // automatic request cancelation for image requests.
-    {
-        ScopedLock<Mutex> lock( _taskServiceMutex );
-        for (TaskServiceMap::iterator i = _taskServices.begin(); i != _taskServices.end(); ++i)
-        {
-            i->second->setStamp( stamp );
-        }
-    }
-
-    // next, go through the live tiles and process update-traversal requests. This
-    // requires a read-lock on the master tiles table.
-    {
-        Threading::ScopedReadLock tileTableReadLock( _tilesMutex );
-
-        for( TileTable::const_iterator i = _tiles.begin(); i != _tiles.end(); ++i )
-        {
-            StreamingTile* tile = static_cast<StreamingTile*>( i->second.get() );
-
-            // update the neighbor list for each tile.
-            refreshFamily( _update_mapf.getMapInfo(), tile->getKey(), tile->getFamily(), true );
-
-            tile->servicePendingElevationRequests( _update_mapf, stamp, true );                   
-            tile->serviceCompletedRequests( _update_mapf, true );
-        }
-    }
-}
-
-TaskService*
-StreamingTerrain::createTaskService( const std::string& name, int id, int numThreads )
-{
-    ScopedLock<Mutex> lock( _taskServiceMutex );
-
-    // first, double-check that the service wasn't created during the locking process:
-    TaskServiceMap::iterator itr = _taskServices.find(id);
-    if (itr != _taskServices.end())
-        return itr->second.get();
-
-    // ok, make a new one
-    TaskService* service =  new TaskService( name, numThreads );
-    _taskServices[id] = service;
-    return service;
-}
-
-TaskService*
-StreamingTerrain::getTaskService(int id)
-{
-    ScopedLock<Mutex> lock( _taskServiceMutex );
-    TaskServiceMap::iterator itr = _taskServices.find(id);
-    if (itr != _taskServices.end())
-    {
-        return itr->second.get();
-    }
-    return NULL;
-}
-
-#define ELEVATION_TASK_SERVICE_ID 9999
-#define TILE_GENERATION_TASK_SERVICE_ID 10000
-
-TaskService*
-StreamingTerrain::getElevationTaskService()
-{
-    TaskService* service = getTaskService( ELEVATION_TASK_SERVICE_ID );
-    if (!service)
-    {
-        service = createTaskService( "elevation", ELEVATION_TASK_SERVICE_ID, 1 );
-    }
-    return service;
-}
-
-
-TaskService*
-StreamingTerrain::getImageryTaskService(int layerId)
-{
-    TaskService* service = getTaskService( layerId );
-    if (!service)
-    {
-        std::stringstream buf;
-        buf << "layer " << layerId;
-        std::string bufStr = buf.str();
-        service = createTaskService( bufStr, layerId, 1 );
-    }
-    return service;
-}
-
-TaskService*
-StreamingTerrain::getTileGenerationTaskService()
-{
-    TaskService* service = getTaskService( TILE_GENERATION_TASK_SERVICE_ID );
-    if (!service)
-    {
-        int numCompileThreads = 
-            _loadingPolicy.numCompileThreads().isSet() ? osg::maximum( 1, _loadingPolicy.numCompileThreads().value() ) :
-            (int)osg::maximum( 1.0f, _loadingPolicy.numCompileThreadsPerCore().value() * (float)GetNumberOfProcessors() );
-
-        service = createTaskService( "tilegen", TILE_GENERATION_TASK_SERVICE_ID, numCompileThreads );
-    }
-    return service;
-}
-
-void
-StreamingTerrain::updateTaskServiceThreads( const MapFrame& mapf )
-{
-    //Get the maximum elevation weight
-    float elevationWeight = 0.0f;
-    for (ElevationLayerVector::const_iterator itr = mapf.elevationLayers().begin(); itr != mapf.elevationLayers().end(); ++itr)
-    {
-        ElevationLayer* layer = itr->get();
-        float w = layer->getTerrainLayerOptions().loadingWeight().value();
-        if (w > elevationWeight) elevationWeight = w;
-    }
-
-    float totalImageWeight = 0.0f;
-    for (ImageLayerVector::const_iterator itr = mapf.imageLayers().begin(); itr != mapf.imageLayers().end(); ++itr)
-    {
-        totalImageWeight += itr->get()->getTerrainLayerOptions().loadingWeight().value();
-    }
-
-    float totalWeight = elevationWeight + totalImageWeight;
-
-    if (elevationWeight > 0.0f)
-    {
-        //Determine how many threads each layer gets
-        int numElevationThreads = (int)osg::round((float)_numLoadingThreads * (elevationWeight / totalWeight ));
-        OE_INFO << LC << "Elevation Threads = " << numElevationThreads << std::endl;
-        getElevationTaskService()->setNumThreads( numElevationThreads );
-    }
-
-    for (ImageLayerVector::const_iterator itr = mapf.imageLayers().begin(); itr != mapf.imageLayers().end(); ++itr)
-    {
-        const TerrainLayerOptions& opt = itr->get()->getTerrainLayerOptions();
-        int imageThreads = (int)osg::round((float)_numLoadingThreads * (opt.loadingWeight().value() / totalWeight ));
-        OE_INFO << LC << "Image Threads for " << itr->get()->getName() << " = " << imageThreads << std::endl;
-        getImageryTaskService( itr->get()->getUID() )->setNumThreads( imageThreads );
-    }
-}
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode
new file mode 100644
index 0000000..74ec20c
--- /dev/null
+++ b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode
@@ -0,0 +1,87 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN
+#define OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN 1
+
+#include "TerrainNode"
+#include "StreamingTile"
+#include <osgEarth/TaskService>
+
+using namespace osgEarth;
+
+/**
+ * Terrain implementation that supports the SEQUENTIAL and PREEMPTIVE loading policies.
+ */
+class StreamingTerrainNode : public TerrainNode
+{
+public:
+    StreamingTerrainNode(
+        const MapFrame& update_mapf,
+        const MapFrame& cull_mapf,
+        OSGTileFactory* factory,
+        bool            quickReleaseGLObjects );
+
+    virtual const char* libraryName() const { return "osgEarth"; }
+    virtual const char* className() const { return "StreamingTerrainNode"; }
+    
+    //override
+    virtual Tile* createTile(const TileKey& key, GeoLocator* locator) const;
+
+public:
+
+    TaskService* getImageryTaskService(int layerId);
+    TaskService* getElevationTaskService();
+    TaskService* getTileGenerationTaskService();
+
+    /**
+     * Updates the catalog of task service threads - this gets called by the OSGTerrainEngine
+     * in response to a change in the Map's data model. The map frame is that of the terrain
+     * engine.
+     */
+    void updateTaskServiceThreads( const MapFrame& mapf );
+
+    const LoadingPolicy& getLoadingPolicy() const { return _loadingPolicy; }
+
+protected:
+
+	virtual ~StreamingTerrainNode();
+
+    //override
+    virtual unsigned getNumActiveTasks() const;
+
+    //override
+    virtual void updateTraversal( osg::NodeVisitor& nv );
+
+private:
+
+    TaskService* createTaskService( const std::string& name, int id, int numThreads );
+    TaskService* getTaskService( int id );
+
+    void refreshFamily( const MapInfo& info, const TileKey& key, StreamingTile::Relative* family, bool tileTableLocked );
+
+    typedef std::map< int, osg::ref_ptr< TaskService > > TaskServiceMap;
+
+    TaskServiceMap     _taskServices;
+    OpenThreads::Mutex _taskServiceMutex;
+    int                _numLoadingThreads;
+    LoadingPolicy      _loadingPolicy;
+    UID                _elevationTaskServiceUID;
+};
+
+#endif // OSGEARTH_ENGINE_OSGTERRAIN_STREAMING_TERRAIN
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode.cpp b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode.cpp
new file mode 100644
index 0000000..d8af364
--- /dev/null
+++ b/src/osgEarthDrivers/engine_osgterrain/StreamingTerrainNode.cpp
@@ -0,0 +1,351 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "StreamingTerrainNode"
+#include "StreamingTile"
+#include "TransparentLayer"
+
+#include <osgEarth/Registry>
+#include <osgEarth/Map>
+#include <osgEarth/NodeUtils>
+
+#include <osg/NodeCallback>
+#include <osg/NodeVisitor>
+#include <osg/Node>
+#include <osgGA/EventVisitor>
+
+#include <OpenThreads/ScopedLock>
+
+using namespace osgEarth;
+using namespace OpenThreads;
+
+#define LC "[StreamingTerrainNode] "
+
+//----------------------------------------------------------------------------
+
+StreamingTerrainNode::StreamingTerrainNode(const MapFrame& update_mapf, 
+                                           const MapFrame& cull_mapf, 
+                                           OSGTileFactory* tileFactory,
+                                           bool            quickReleaseGLObjects ) :
+
+TerrainNode( update_mapf, cull_mapf, tileFactory, quickReleaseGLObjects ),
+_numLoadingThreads( 0 )
+{
+    _loadingPolicy = tileFactory->getTerrainOptions().loadingPolicy().get();
+
+    setNumChildrenRequiringUpdateTraversal( 1 );
+    _alwaysUpdate = true;
+    _numLoadingThreads = computeLoadingThreads(_loadingPolicy);
+
+    OE_INFO << LC << "Using a total of " << _numLoadingThreads << " loading threads " << std::endl;
+}
+
+StreamingTerrainNode::~StreamingTerrainNode()
+{
+    //nop
+}
+
+Tile*
+StreamingTerrainNode::createTile(const TileKey& key, GeoLocator* locator) const
+{
+    return new StreamingTile( key, locator, this->getQuickReleaseGLObjects() );
+}
+
+// This method is called by StreamingTerrainNode::traverse() in the UPDATE TRAVERSAL.
+void
+StreamingTerrainNode::refreshFamily(const MapInfo&           mapInfo,
+                                    const TileKey&           key,
+                                    StreamingTile::Relative* family,
+                                    bool                     tileTableLocked )
+{
+    osgTerrain::TileID tileId = key.getTileId();
+
+    // geocentric maps wrap around in the X dimension.
+    bool wrapX = mapInfo.isGeocentric();
+    unsigned int tileCountX, tileCountY;
+    mapInfo.getProfile()->getNumTiles( tileId.level, tileCountX, tileCountY );
+
+    // Relative::PARENT
+    {
+        family[StreamingTile::Relative::PARENT].expected = true; // TODO: is this always correct?
+        family[StreamingTile::Relative::PARENT].elevLOD = -1;
+        family[StreamingTile::Relative::PARENT].imageLODs.clear();
+        family[StreamingTile::Relative::PARENT].tileID = osgTerrain::TileID( tileId.level-1, tileId.x/2, tileId.y/2 );
+
+        osg::ref_ptr<StreamingTile> parent;
+        getTile( family[StreamingTile::Relative::PARENT].tileID, parent, !tileTableLocked );
+        if ( parent.valid() )
+        {
+            family[StreamingTile::Relative::PARENT].elevLOD = parent->getElevationLOD();
+
+            ColorLayersByUID relLayers;
+            parent->getCustomColorLayers( relLayers );
+
+            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
+            {
+                family[StreamingTile::Relative::PARENT].imageLODs[i->first] = i->second.getLevelOfDetail();
+            }
+        }
+    }
+
+    // Relative::WEST
+    {
+        family[StreamingTile::Relative::WEST].expected = tileId.x > 0 || wrapX;
+        family[StreamingTile::Relative::WEST].elevLOD = -1;
+        family[StreamingTile::Relative::WEST].imageLODs.clear();
+        family[StreamingTile::Relative::WEST].tileID = osgTerrain::TileID( tileId.level, tileId.x > 0? tileId.x-1 : tileCountX-1, tileId.y );
+        osg::ref_ptr<StreamingTile> west;
+        getTile( family[StreamingTile::Relative::WEST].tileID, west, !tileTableLocked );
+        if ( west.valid() )
+        {
+            family[StreamingTile::Relative::WEST].elevLOD = west->getElevationLOD();
+
+            ColorLayersByUID relLayers;
+            west->getCustomColorLayers( relLayers );
+
+            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
+            {
+                family[StreamingTile::Relative::WEST].imageLODs[i->first] = i->second.getLevelOfDetail();
+            }
+        }
+    }
+
+    // Relative::NORTH
+    {
+        family[StreamingTile::Relative::NORTH].expected = tileId.y < (int)tileCountY-1;
+        family[StreamingTile::Relative::NORTH].elevLOD = -1;
+        family[StreamingTile::Relative::NORTH].imageLODs.clear();
+        family[StreamingTile::Relative::NORTH].tileID = osgTerrain::TileID( tileId.level, tileId.x, tileId.y < (int)tileCountY-1 ? tileId.y+1 : 0 );
+        osg::ref_ptr<StreamingTile> north;
+        getTile( family[StreamingTile::Relative::NORTH].tileID, north, !tileTableLocked );
+        if ( north.valid() )
+        {
+            family[StreamingTile::Relative::NORTH].elevLOD = north->getElevationLOD();
+
+            ColorLayersByUID relLayers;
+            north->getCustomColorLayers( relLayers );
+
+            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
+            {
+                family[StreamingTile::Relative::NORTH].imageLODs[i->first] = i->second.getLevelOfDetail();
+            }
+        }
+    }
+
+    // Relative::EAST
+    {
+        family[StreamingTile::Relative::EAST].expected = tileId.x < (int)tileCountX-1 || wrapX;
+        family[StreamingTile::Relative::EAST].elevLOD = -1;
+        family[StreamingTile::Relative::EAST].imageLODs.clear();
+        family[StreamingTile::Relative::EAST].tileID = osgTerrain::TileID( tileId.level, tileId.x < (int)tileCountX-1 ? tileId.x+1 : 0, tileId.y );
+        osg::ref_ptr<StreamingTile> east;
+        getTile( family[StreamingTile::Relative::EAST].tileID, east, !tileTableLocked );
+        if ( east.valid() )
+        {
+            family[StreamingTile::Relative::EAST].elevLOD = east->getElevationLOD();
+
+            ColorLayersByUID relLayers;
+            east->getCustomColorLayers( relLayers );
+
+            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
+            {
+                family[StreamingTile::Relative::EAST].imageLODs[i->first] = i->second.getLevelOfDetail();
+            }
+        }
+    }
+
+    // Relative::SOUTH
+    {
+        family[StreamingTile::Relative::SOUTH].expected = tileId.y > 0;
+        family[StreamingTile::Relative::SOUTH].elevLOD = -1;
+        family[StreamingTile::Relative::SOUTH].imageLODs.clear();
+        family[StreamingTile::Relative::SOUTH].tileID = osgTerrain::TileID( tileId.level, tileId.x, tileId.y > 0 ? tileId.y-1 : tileCountY-1 );
+        osg::ref_ptr<StreamingTile> south;
+        getTile( family[StreamingTile::Relative::SOUTH].tileID, south, !tileTableLocked );
+        if ( south.valid() )
+        {
+            family[StreamingTile::Relative::SOUTH].elevLOD = south->getElevationLOD();
+
+            ColorLayersByUID relLayers;
+            south->getCustomColorLayers( relLayers );
+
+            for( ColorLayersByUID::const_iterator i = relLayers.begin(); i != relLayers.end(); ++i )
+            {
+                family[StreamingTile::Relative::SOUTH].imageLODs[i->first] = i->second.getLevelOfDetail();
+            }
+        }
+    }
+}
+
+unsigned
+StreamingTerrainNode::getNumActiveTasks() const
+{
+    ScopedLock<Mutex> lock(const_cast<StreamingTerrainNode*>(this)->_taskServiceMutex );
+
+    unsigned int total = 0;
+    for (TaskServiceMap::const_iterator itr = _taskServices.begin(); itr != _taskServices.end(); ++itr)
+    {
+        total += itr->second->getNumRequests();
+    }
+    return total;
+}
+
+void
+StreamingTerrainNode::updateTraversal( osg::NodeVisitor& nv )
+{
+    // this stamp keeps track of when requests are dispatched. If a request's stamp gets too
+    // old, it is considered "expired" and subject to cancelation
+    int stamp = nv.getFrameStamp()->getFrameNumber();
+
+    // update the frame stamp on the task services. This is necessary to support 
+    // automatic request cancelation for image requests.
+    {
+        ScopedLock<Mutex> lock( _taskServiceMutex );
+        for (TaskServiceMap::iterator i = _taskServices.begin(); i != _taskServices.end(); ++i)
+        {
+            i->second->setStamp( stamp );
+        }
+    }
+
+    // next, go through the live tiles and process update-traversal requests. This
+    // requires a read-lock on the master tiles table.
+    {
+        Threading::ScopedReadLock tileTableReadLock( _tilesMutex );
+
+        for( TileTable::const_iterator i = _tiles.begin(); i != _tiles.end(); ++i )
+        {
+            StreamingTile* tile = static_cast<StreamingTile*>( i->second.get() );
+
+            // update the neighbor list for each tile.
+            refreshFamily( _update_mapf.getMapInfo(), tile->getKey(), tile->getFamily(), true );
+
+            tile->servicePendingElevationRequests( _update_mapf, stamp, true );                   
+            tile->serviceCompletedRequests( _update_mapf, true );
+        }
+    }
+}
+
+TaskService*
+StreamingTerrainNode::createTaskService( const std::string& name, int id, int numThreads )
+{
+    ScopedLock<Mutex> lock( _taskServiceMutex );
+
+    // first, double-check that the service wasn't created during the locking process:
+    TaskServiceMap::iterator itr = _taskServices.find(id);
+    if (itr != _taskServices.end())
+        return itr->second.get();
+
+    // ok, make a new one
+    TaskService* service =  new TaskService( name, numThreads );
+    _taskServices[id] = service;
+    return service;
+}
+
+TaskService*
+StreamingTerrainNode::getTaskService(int id)
+{
+    ScopedLock<Mutex> lock( _taskServiceMutex );
+    TaskServiceMap::iterator itr = _taskServices.find(id);
+    if (itr != _taskServices.end())
+    {
+        return itr->second.get();
+    }
+    return NULL;
+}
+
+#define ELEVATION_TASK_SERVICE_ID 9999
+#define TILE_GENERATION_TASK_SERVICE_ID 10000
+
+TaskService*
+StreamingTerrainNode::getElevationTaskService()
+{
+    TaskService* service = getTaskService( ELEVATION_TASK_SERVICE_ID );
+    if (!service)
+    {
+        service = createTaskService( "elevation", ELEVATION_TASK_SERVICE_ID, 1 );
+    }
+    return service;
+}
+
+
+TaskService*
+StreamingTerrainNode::getImageryTaskService(int layerId)
+{
+    TaskService* service = getTaskService( layerId );
+    if (!service)
+    {
+        std::stringstream buf;
+        buf << "layer " << layerId;
+        std::string bufStr;
+        bufStr = buf.str();
+        service = createTaskService( bufStr, layerId, 1 );
+    }
+    return service;
+}
+
+TaskService*
+StreamingTerrainNode::getTileGenerationTaskService()
+{
+    TaskService* service = getTaskService( TILE_GENERATION_TASK_SERVICE_ID );
+    if (!service)
+    {
+        int numCompileThreads = 
+            _loadingPolicy.numCompileThreads().isSet() ? osg::maximum( 1, _loadingPolicy.numCompileThreads().value() ) :
+            (int)osg::maximum( 1.0f, _loadingPolicy.numCompileThreadsPerCore().value() * (float)GetNumberOfProcessors() );
+
+        service = createTaskService( "tilegen", TILE_GENERATION_TASK_SERVICE_ID, numCompileThreads );
+    }
+    return service;
+}
+
+void
+StreamingTerrainNode::updateTaskServiceThreads( const MapFrame& mapf )
+{
+    //Get the maximum elevation weight
+    float elevationWeight = 0.0f;
+    for (ElevationLayerVector::const_iterator itr = mapf.elevationLayers().begin(); itr != mapf.elevationLayers().end(); ++itr)
+    {
+        ElevationLayer* layer = itr->get();
+        float w = layer->getElevationLayerOptions().loadingWeight().value();
+        if (w > elevationWeight) elevationWeight = w;
+    }
+
+    float totalImageWeight = 0.0f;
+    for (ImageLayerVector::const_iterator itr = mapf.imageLayers().begin(); itr != mapf.imageLayers().end(); ++itr)
+    {
+        totalImageWeight += itr->get()->getImageLayerOptions().loadingWeight().value();
+    }
+
+    float totalWeight = elevationWeight + totalImageWeight;
+
+    if (elevationWeight > 0.0f)
+    {
+        //Determine how many threads each layer gets
+        int numElevationThreads = (int)osg::round((float)_numLoadingThreads * (elevationWeight / totalWeight ));
+        OE_INFO << LC << "Elevation Threads = " << numElevationThreads << std::endl;
+        getElevationTaskService()->setNumThreads( numElevationThreads );
+    }
+
+    for (ImageLayerVector::const_iterator itr = mapf.imageLayers().begin(); itr != mapf.imageLayers().end(); ++itr)
+    {
+        const TerrainLayerOptions& opt = itr->get()->getImageLayerOptions();
+        int imageThreads = (int)osg::round((float)_numLoadingThreads * (opt.loadingWeight().value() / totalWeight ));
+        OE_INFO << LC << "Image Threads for " << itr->get()->getName() << " = " << imageThreads << std::endl;
+        getImageryTaskService( itr->get()->getUID() )->setNumThreads( imageThreads );
+    }
+}
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTile b/src/osgEarthDrivers/engine_osgterrain/StreamingTile
index a6d8974..203a25e 100644
--- a/src/osgEarthDrivers/engine_osgterrain/StreamingTile
+++ b/src/osgEarthDrivers/engine_osgterrain/StreamingTile
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -86,8 +86,8 @@ public:
     void setElevationLOD( int lod );
 
     /** Gets the terrain object to which this tile belongs. */
-    class StreamingTerrain* getStreamingTerrain();
-    const class StreamingTerrain* getStreamingTerrain() const;
+    class StreamingTerrainNode* getStreamingTerrain();
+    const class StreamingTerrainNode* getStreamingTerrain() const;
 
     // updates one image layer
     void updateImagery( ImageLayer* layer, const MapFrame& mapf, OSGTileFactory* factory );
@@ -111,7 +111,7 @@ public:
 
 protected:
 
-    ~StreamingTile();
+    virtual ~StreamingTile();
 
 private:
 
diff --git a/src/osgEarthDrivers/engine_osgterrain/StreamingTile.cpp b/src/osgEarthDrivers/engine_osgterrain/StreamingTile.cpp
index 4fe1c2c..b498164 100644
--- a/src/osgEarthDrivers/engine_osgterrain/StreamingTile.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/StreamingTile.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,14 +17,14 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 #include "StreamingTile"
-#include "StreamingTerrain"
+#include "StreamingTerrainNode"
 #include "CustomTerrainTechnique"
 #include "TransparentLayer"
 
 #include <osgEarth/Registry>
 #include <osgEarth/Locators>
 #include <osgEarth/Map>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 
 #include <osg/NodeCallback>
 #include <osg/NodeVisitor>
@@ -261,13 +261,13 @@ StreamingTile::setElevationLOD( int lod )
     _elevationLayerUpToDate = _elevationLOD == (int)_key.getLevelOfDetail();
 }
 
-StreamingTerrain*
+StreamingTerrainNode*
 StreamingTile::getStreamingTerrain()
 {
-    return static_cast<StreamingTerrain*>( getTerrain() );
+    return static_cast<StreamingTerrainNode*>( getTerrain() );
 }
 
-const StreamingTerrain*
+const StreamingTerrainNode*
 StreamingTile::getStreamingTerrain() const
 {
     return const_cast<StreamingTile*>(this)->getStreamingTerrain();
@@ -373,7 +373,7 @@ StreamingTile::readyForNewImagery(ImageLayer* layer, int currentLOD)
 void
 StreamingTile::installRequests( const MapFrame& mapf, int stamp )
 {
-    StreamingTerrain* terrain     = getStreamingTerrain();
+    StreamingTerrainNode* terrain     = getStreamingTerrain();
     OSGTileFactory*   tileFactory = terrain->getTileFactory();
 
     bool hasElevationLayer;
@@ -402,7 +402,7 @@ StreamingTile::resetElevationRequests( const MapFrame& mapf )
     if (_elevRequest.valid() && _elevRequest->isRunning()) _elevRequest->cancel();
     if (_elevPlaceholderRequest.valid() && _elevPlaceholderRequest->isRunning()) _elevPlaceholderRequest->cancel();
 
-    StreamingTerrain* terrain = getStreamingTerrain();
+    StreamingTerrainNode* terrain = getStreamingTerrain();
 
     // this request will load real elevation data for the tile:
     _elevRequest = new TileElevationLayerRequest(_key, mapf, terrain->getTileFactory());
@@ -433,7 +433,7 @@ StreamingTile::resetElevationRequests( const MapFrame& mapf )
 void
 StreamingTile::updateImagery( ImageLayer* imageLayer, const MapFrame& mapf, OSGTileFactory* tileFactory)
 {
-    StreamingTerrain* terrain = getStreamingTerrain();
+    StreamingTerrainNode* terrain = getStreamingTerrain();
 
     // imagery is slighty higher priority than elevation data
     TaskRequest* r = new TileColorLayerRequest( _key, mapf, tileFactory, imageLayer->getUID() );
@@ -523,7 +523,7 @@ StreamingTile::servicePendingElevationRequests( const MapFrame& mapf, int stamp,
 
     if ( _hasElevation && !_elevationLayerUpToDate && _elevRequest.valid() && _elevPlaceholderRequest.valid() )
     {  
-        StreamingTerrain* terrain = getStreamingTerrain();
+        StreamingTerrainNode* terrain = getStreamingTerrain();
 
         // update the main elevation request if it's running:
         if ( !_elevRequest->isIdle() )
@@ -642,7 +642,7 @@ StreamingTile::serviceCompletedRequests( const MapFrame& mapf, bool tileTableLoc
     // now deal with imagery.
     const LoadingPolicy& lp = getStreamingTerrain()->getLoadingPolicy();
 
-    StreamingTerrain* terrain = getStreamingTerrain();
+    StreamingTerrainNode* terrain = getStreamingTerrain();
 
     //Check each layer independently.
     for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
diff --git a/src/osgEarthDrivers/engine_osgterrain/Terrain b/src/osgEarthDrivers/engine_osgterrain/Terrain
index 8b79bb1..e2c338d 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Terrain
+++ b/src/osgEarthDrivers/engine_osgterrain/Terrain
@@ -116,7 +116,7 @@ public:
     template<typename T>
     void getTile(const osgTerrain::TileID& id, osg::ref_ptr<T>& out_tile, bool lock =true ) const {
         if ( lock ) {
-            Threading::ScopedReadLock lock( const_cast<Terrain*>(this)->_tilesMutex );
+            Threading::ScopedReadLock lock( const_cast<TerrainNode*>(this)->_tilesMutex );
             TileTable::const_iterator i = _tiles.find( id );
             out_tile = i != _tiles.end()? static_cast<T*>(i->second.get()) : 0L;
         }
diff --git a/src/osgEarthDrivers/engine_osgterrain/Terrain.cpp b/src/osgEarthDrivers/engine_osgterrain/Terrain.cpp
index 979b567..fec697e 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Terrain.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/Terrain.cpp
@@ -67,7 +67,7 @@ namespace
     {
 	    typedef std::vector< osg::observer_ptr<Terrain> > ObserverTerrainList;
 
-        QuickReleaseGLCallback( Terrain* terrain, osg::Camera::DrawCallback* next )
+        QuickReleaseGLCallback( TerrainNode* terrain, osg::Camera::DrawCallback* next )
             : NestingDrawCallback(next), _terrain(terrain) { }
 
         virtual void operator()( osg::RenderInfo& renderInfo ) const
@@ -109,9 +109,7 @@ _verticalScale( 1.0f )
     setNumChildrenRequiringUpdateTraversal( 1 );
 
     // register for events in order to support ON_DEMAND frame scheme
-    setNumChildrenRequiringEventTraversal( 1 );
-
-    getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
+    setNumChildrenRequiringEventTraversal( 1 );    
 }
 
 Terrain::~Terrain()
diff --git a/src/osgEarthDrivers/engine_osgterrain/TerrainNode b/src/osgEarthDrivers/engine_osgterrain/TerrainNode
new file mode 100644
index 0000000..b0fa3fb
--- /dev/null
+++ b/src/osgEarthDrivers/engine_osgterrain/TerrainNode
@@ -0,0 +1,152 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_OSGTERRAIN_STANDARD_TERRAIN
+#define OSGEARTH_ENGINE_OSGTERRAIN_STANDARD_TERRAIN 1
+
+#include "Common"
+#include "Tile"
+#include "CustomTerrainTechnique"
+#include "OSGTileFactory"
+#include <osgEarth/Locators>
+#include <osgEarth/Profile>
+#include <osgEarth/TerrainOptions>
+#include <osgEarth/Map>
+#include <osgEarth/ThreadingUtils>
+#include <list>
+#include <queue>
+#include <vector>
+
+class TileFactory;
+
+using namespace osgEarth;
+
+/**
+ */
+class TerrainNode : public osg::Group //osgTerrain::Terrain
+{
+public:
+    TerrainNode(
+        const MapFrame& update_mapf,
+        const MapFrame& cull_mapf,
+        OSGTileFactory* factory,
+        bool            quickReleaseGLObjects );
+
+    virtual const char* libraryName() const { return "osgEarth"; }
+
+    virtual const char* className() const { return "TerrainNode"; }
+
+public:
+
+    OSGTileFactory* getTileFactory() { return _tileFactory.get(); }
+
+    bool getQuickReleaseGLObjects() const { return _quickReleaseGLObjects; }
+
+    const MapFrame& getUpdateThreadMapFrame() { return _update_mapf; }
+
+    const MapFrame& getCullThreadMapFrame()   { return _cull_mapf;   }
+
+    virtual Tile* createTile( const TileKey& key, GeoLocator* locator ) const;
+    
+    void setTechniquePrototype( TerrainTechnique* tech );
+
+    TerrainTechnique* cloneTechnique() const;
+
+    void setSampleRatio( float value );
+
+    float getSampleRatio() const { return _sampleRatio; }
+
+    void setVerticalScale( float value );
+
+    float getVerticalScale() const { return _verticalScale; }
+
+    virtual void traverse( osg::NodeVisitor &nv );
+
+protected:
+
+	virtual ~TerrainNode();
+
+    // subclass can override to notify of running tasks
+    virtual unsigned getNumActiveTasks() const { return 0; }
+
+    // subclass can override this to perform addition UPDATE traversal operations
+    virtual void updateTraversal( osg::NodeVisitor& nv ) { }
+
+    typedef std::map< osgTerrain::TileID, osg::ref_ptr<Tile> > TileTable;
+
+    typedef std::queue< osg::ref_ptr<Tile> >  TileQueue;
+    typedef std::list< osg::ref_ptr<Tile> >   TileList;
+    typedef std::vector< osg::ref_ptr<Tile> > TileVector;
+    typedef std::queue< osgTerrain::TileID >  TileIDQueue;
+
+    Threading::ReadWriteMutex _tilesMutex;
+    TileTable                 _tiles;
+    TileList                  _tilesToShutDown;
+    TileVector                _tilesToRelease;
+    Threading::Mutex          _tilesToReleaseMutex;
+
+    float _sampleRatio;
+    float _verticalScale;
+
+public:
+
+    void releaseGLObjectsForTiles( osg::State* state );
+
+    void registerTile( Tile* newTile );
+
+    /** Gets a thread-safe copy of the entire tile list */
+    void getTiles( TileVector& out_tiles );
+
+    /** Fetches a tile from the repo */
+    template<typename T>
+    void getTile(const osgTerrain::TileID& id, osg::ref_ptr<T>& out_tile, bool lock =true ) const {
+        if ( lock ) {
+            Threading::ScopedReadLock lock( const_cast<TerrainNode*>(this)->_tilesMutex );
+            TileTable::const_iterator i = _tiles.find( id );
+            out_tile = i != _tiles.end()? static_cast<T*>(i->second.get()) : 0L;
+        }
+        else {
+            TileTable::const_iterator i = _tiles.find( id );
+            out_tile = i != _tiles.end()? static_cast<T*>(i->second.get()) : 0L;
+        }
+    }
+
+protected:
+
+    osg::ref_ptr<OSGTileFactory> _tileFactory;
+    osg::ref_ptr<const Profile>  _profile;
+
+    bool _alwaysUpdate;
+    int  _onDemandDelay; // #frames
+
+    void setDelay( unsigned frames );
+    void decDelay();
+
+	bool _registeredWithReleaseGLCallback;
+
+    // store a separate map frame for each of the traversal threads
+    const MapFrame& _update_mapf; // map frame for the main/update traversal thread
+    const MapFrame& _cull_mapf;   // map frame for the cull traversal thread
+
+    bool _quickReleaseGLObjects;
+    bool _quickReleaseCallbackInstalled;
+
+    osg::ref_ptr<TerrainTechnique> _techPrototype;
+};
+
+#endif // OSGEARTH_ENGINE_OSGTERRAIN_STANDARD_TERRAIN
diff --git a/src/osgEarthDrivers/engine_osgterrain/TerrainNode.cpp b/src/osgEarthDrivers/engine_osgterrain/TerrainNode.cpp
new file mode 100644
index 0000000..3bf02f9
--- /dev/null
+++ b/src/osgEarthDrivers/engine_osgterrain/TerrainNode.cpp
@@ -0,0 +1,328 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TerrainNode"
+#include "Tile"
+#include "TransparentLayer"
+
+#include <osgEarth/Registry>
+#include <osgEarth/Map>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/ThreadingUtils>
+
+#include <osg/NodeCallback>
+#include <osg/NodeVisitor>
+#include <osg/Node>
+#include <osgGA/EventVisitor>
+
+using namespace osgEarth;
+using namespace OpenThreads;
+
+#define LC "[Terrain] "
+
+//----------------------------------------------------------------------------
+
+namespace
+{
+    /**
+     * A draw callback to calls another, nested draw callback.
+     */
+    struct NestingDrawCallback : public osg::Camera::DrawCallback
+    {
+        NestingDrawCallback( osg::Camera::DrawCallback* next ) : _next(next) { }
+
+        virtual void operator()( osg::RenderInfo& renderInfo ) const
+        {
+            dispatch( renderInfo );
+        }
+
+        void dispatch( osg::RenderInfo& renderInfo ) const
+        {
+            if ( _next )
+                _next->operator ()( renderInfo );
+        }
+
+        osg::ref_ptr<osg::Camera::DrawCallback> _next;
+    };
+
+
+    // a simple draw callback, to be installed on a Camera, that tells all Terrains to
+    // release GL memory on any expired tiles.
+    struct QuickReleaseGLCallback : public NestingDrawCallback
+    {
+	    typedef std::vector< osg::observer_ptr<TerrainNode> > ObserverTerrainList;
+
+        QuickReleaseGLCallback( TerrainNode* terrain, osg::Camera::DrawCallback* next )
+            : NestingDrawCallback(next), _terrain(terrain) { }
+
+        virtual void operator()( osg::RenderInfo& renderInfo ) const
+        {
+            osg::ref_ptr<TerrainNode> terrainSafe = _terrain.get();
+            if ( terrainSafe.valid() )
+            {
+                terrainSafe->releaseGLObjectsForTiles( renderInfo.getState() );
+            }
+            dispatch( renderInfo );
+        }
+
+        osg::observer_ptr<TerrainNode> _terrain;
+    };
+}
+
+//----------------------------------------------------------------------------
+
+TerrainNode::TerrainNode(const MapFrame& update_mapf, 
+                         const MapFrame& cull_mapf, 
+                         OSGTileFactory* tileFactory,
+                         bool            quickReleaseGLObjects ) :
+
+_tileFactory( tileFactory ),
+_registeredWithReleaseGLCallback( false ),
+_update_mapf( update_mapf ),
+_cull_mapf( cull_mapf ),
+_onDemandDelay( 2 ),
+_quickReleaseGLObjects( quickReleaseGLObjects ),
+_quickReleaseCallbackInstalled( false ),
+_alwaysUpdate( false ),
+_sampleRatio( 1.0f ),
+_verticalScale( 1.0f )
+{
+    this->setThreadSafeRefUnref( true );
+
+    // the EVENT_VISITOR will reset this to 0 once the "delay" is expired.
+    _alwaysUpdate = false;
+    setNumChildrenRequiringUpdateTraversal( 1 );
+
+    // register for events in order to support ON_DEMAND frame scheme
+    setNumChildrenRequiringEventTraversal( 1 );    
+}
+
+TerrainNode::~TerrainNode()
+{
+    // detach all the tiles from the terrain first. Otherwise osgTerrainNode::Terrain
+    // will crap out.
+    for( TileTable::iterator i = _tiles.begin(); i != _tiles.end(); ++i )
+    {
+        i->second->attachToTerrain( 0L );
+    }
+    _tiles.clear();
+}
+
+void
+TerrainNode::setTechniquePrototype( TerrainTechnique* value )
+{
+    _techPrototype = value;
+}
+
+TerrainTechnique*
+TerrainNode::cloneTechnique() const
+{
+    return osg::clone( _techPrototype.get(), osg::CopyOp::DEEP_COPY_ALL );
+}
+
+Tile*
+TerrainNode::createTile(const TileKey& key, GeoLocator* keyLocator) const
+{
+    return new Tile( key, keyLocator, this->getQuickReleaseGLObjects() );
+}
+
+void
+TerrainNode::setVerticalScale( float value )
+{
+    if ( value != _verticalScale )
+    {
+        _verticalScale = value;
+    }
+}
+
+void
+TerrainNode::setSampleRatio( float value )
+{
+    if ( value != _sampleRatio )
+    {
+        _sampleRatio = value;
+    }
+}
+
+void
+TerrainNode::getTiles( TileVector& out )
+{
+    Threading::ScopedReadLock lock( _tilesMutex );
+    out.clear();
+    out.reserve( _tiles.size() );
+    for( TileTable::const_iterator i = _tiles.begin(); i != _tiles.end(); ++i )
+        out.push_back( i->second.get() );
+}
+
+void
+TerrainNode::registerTile( Tile* newTile )
+{
+    Threading::ScopedWriteLock exclusiveTileTableLock( _tilesMutex );
+    _tiles[ newTile->getTileId() ] = newTile;
+}
+
+// immediately release GL memory for any expired tiles.
+// called from the DRAW thread (QuickReleaseGLCallback). 
+void
+TerrainNode::releaseGLObjectsForTiles(osg::State* state)
+{
+    OpenThreads::ScopedLock<Mutex> lock( _tilesToReleaseMutex );
+
+    for( TileVector::iterator i = _tilesToRelease.begin(); i != _tilesToRelease.end(); ++i )
+    {
+        i->get()->releaseGLObjects( state );
+    }
+
+    _tilesToRelease.clear();
+
+    //while( _tilesToRelease.size() > 0 )
+    //{
+    //    _tilesToRelease.front()->releaseGLObjects( state );
+    //    _tilesToRelease.pop();
+    //}
+}
+
+void
+TerrainNode::traverse( osg::NodeVisitor &nv )
+{
+    // UPDATE runs whenever a Tile runs its update traversal on the first pass.
+    // i.e., only runs then a new Tile is born.
+    if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+    {
+        // if the terrain engine requested "quick release", install the quick release
+        // draw callback now.
+        if ( _quickReleaseGLObjects && !_quickReleaseCallbackInstalled )
+        {
+            osg::Camera* cam = findFirstParentOfType<osg::Camera>( this );
+            if ( cam )
+            {
+                cam->setPostDrawCallback( new QuickReleaseGLCallback( this, cam->getPostDrawCallback() ) );
+                _quickReleaseCallbackInstalled = true;
+                OE_INFO << LC << "Quick release enabled" << std::endl;
+            }
+        }
+
+        // Collect any "dead" tiles and queue them for shutdown. Since UPDATE only runs
+        // when new tiles arrive, this clears out old tiles from the queue at that time.
+        // Another approach might be to use an observer_ptr instead...but then we may
+        // not be able to use the quick-release.
+        {
+            Threading::ScopedWriteLock tileTableExclusiveLock( _tilesMutex );
+
+            for( TileTable::iterator i = _tiles.begin(); i != _tiles.end(); )
+            {
+                Tile* tile = i->second.get();
+                if ( tile->getNumParents() == 0 && tile->getHasBeenTraversed() )
+                {
+                    _tilesToShutDown.push_back( tile );
+                    
+                    // i is incremented prior to calling erase, but i's previous value goes to erase,
+                    // maintaining validity
+                    _tiles.erase( i++ );
+                }
+                else
+                    ++i;
+            }
+        }
+
+        // Remove any dead tiles from the main tile table, while at the same time queuing 
+        // any tiles that require quick-release. This criticial section requires an exclusive
+        // lock on the main tile table.
+        if ( _tilesToShutDown.size() > 0 ) // quick no-lock check..
+        {
+            Threading::ScopedMutexLock tilesToReleaseExclusiveLock( _tilesToReleaseMutex );
+
+            // Shut down any dead tiles once there tasks are complete.
+            for( TileList::iterator i = _tilesToShutDown.begin(); i != _tilesToShutDown.end(); )
+            {
+                Tile* tile = i->get();
+                if ( tile && tile->cancelActiveTasks() )
+                {
+                    if ( _quickReleaseGLObjects && _quickReleaseCallbackInstalled )
+                    {
+                        _tilesToRelease.push_back( tile );
+                    }
+
+                    i = _tilesToShutDown.erase( i );
+                }
+                else
+                    ++i;
+            }
+        }
+
+        // call subclass to continue update..
+        updateTraversal( nv );
+    }
+    
+    else if ( nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR )
+    {
+        // in OSG's "ON_DEMAND" frame scheme, OSG runs the event visitor as part of the
+        // test to see if a frame is needed. In sequential/preemptive mode, we need to 
+        // check whether there are any pending tasks running. 
+
+        // In addition, once the tasks run out, we continue to delay on-demand rendering
+        // for another full frame so that the event dispatchers can catch up.
+
+        if ( _tilesToShutDown.size() > 0 )
+        {
+            setDelay( 2 );
+        }
+
+        else if ( _onDemandDelay <= 0 )
+        {
+            unsigned numActiveTasks = getNumActiveTasks();
+            if ( numActiveTasks > 0 )
+            {
+                setDelay( 2 );
+            }
+        }
+
+        //OE_INFO << "Tasks = " << numTasks << std::endl;
+
+        if ( _onDemandDelay > 0 )
+        {
+            osgGA::EventVisitor* ev = dynamic_cast<osgGA::EventVisitor*>( &nv );
+            ev->getActionAdapter()->requestRedraw();
+            decDelay();
+        }
+
+        //OE_INFO << "Tiles = " << _tiles.size() << std::endl;
+    }
+
+    osg::Group::traverse( nv );
+}
+
+void
+TerrainNode::setDelay( unsigned frames )
+{
+    if ( _onDemandDelay == 0 && !_alwaysUpdate )
+    {
+        ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+    }
+    _onDemandDelay = frames;
+}
+
+void
+TerrainNode::decDelay()
+{
+    _onDemandDelay--;
+    if ( _onDemandDelay == 0 && !_alwaysUpdate )
+    {
+        ADJUST_UPDATE_TRAV_COUNT(this, -1);
+    }
+}
diff --git a/src/osgEarthDrivers/engine_osgterrain/Tile b/src/osgEarthDrivers/engine_osgterrain/Tile
index 796c5ab..4276ef3 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Tile
+++ b/src/osgEarthDrivers/engine_osgterrain/Tile
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -28,7 +28,7 @@
 #include <osgEarth/TerrainOptions>
 #include <osgEarth/Map>
 #include <osgEarth/ThreadingUtils>
-#include "Terrain"
+#include "TerrainNode"
 #include "Tile"
 #include <list>
 #include <queue>
@@ -80,11 +80,11 @@ public:
     const TileKey& getKey() const { return _key; }
 
     /** Gets the terrain object to which this tile belongs. */
-    class Terrain* getTerrain() { return _terrain.get(); }
-    const class Terrain* getTerrain() const { return _terrain.get(); }
+    class TerrainNode* getTerrain() { return _terrain.get(); }
+    const class TerrainNode* getTerrain() const { return _terrain.get(); }
 
     // attaches this tile to a terrain and registers it.
-    void attachToTerrain( Terrain* terrain );
+    void attachToTerrain( TerrainNode* terrain );
 
     /** intializes the tile and clears its dirty flag */
     void init();
@@ -127,6 +127,8 @@ public:
     void setCustomColorLayers( const ColorLayersByUID& in, bool writeLock =true );
     void setCustomColorLayer( const CustomColorLayer& colorLayer, bool writeLock =true );
 
+    void clear();
+
     osgTerrain::HeightFieldLayer* getElevationLayer() const { return _elevationLayer.get(); }
     void setElevationLayer( osgTerrain::HeightFieldLayer* value ) { _elevationLayer = value; }
 
@@ -153,7 +155,7 @@ protected:
     TileKey                        _key;
     osgTerrain::TileID             _tileId;
     osg::ref_ptr<GeoLocator>       _locator;
-    osg::observer_ptr<Terrain>     _terrain;
+    osg::observer_ptr<TerrainNode> _terrain;
     MaskLayerVector                _masks;
 
     Threading::ReadWriteMutex _tileLayersMutex;
diff --git a/src/osgEarthDrivers/engine_osgterrain/Tile.cpp b/src/osgEarthDrivers/engine_osgterrain/Tile.cpp
index 050e3aa..ce3462f 100644
--- a/src/osgEarthDrivers/engine_osgterrain/Tile.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/Tile.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,14 +17,14 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 #include "Tile"
-#include "Terrain"
+#include "TerrainNode"
 #include "CustomTerrainTechnique"
 #include "TransparentLayer"
 
 #include <osgEarth/Registry>
 #include <osgEarth/Locators>
 #include <osgEarth/Map>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 
 #include <osg/NodeCallback>
 #include <osg/NodeVisitor>
@@ -40,6 +40,7 @@ using namespace OpenThreads;
 
 #define LC "[Tile] "
 
+
 //----------------------------------------------------------------------------
 
 Tile::Tile( const TileKey& key, GeoLocator* keyLocator, bool quickReleaseGLObjects ) :
@@ -59,6 +60,7 @@ _dirty( true )
     // traversal the first time through. It is on the first update traversal that we
     // know the tile is in the scene graph and that it can be registered with the terrain.
     ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+
 }
 
 Tile::~Tile()
@@ -79,13 +81,16 @@ Tile::init()
 void
 Tile::setTerrainTechnique( TerrainTechnique* tech )
 {
-    tech->_tile = this;
-    _tech = tech;
-    _dirty = true;
+    if (tech)
+    {
+        tech->_tile = this;
+        _tech = tech;
+        _dirty = true;
+    }
 }
 
 void
-Tile::attachToTerrain( Terrain* terrain )
+Tile::attachToTerrain( TerrainNode* terrain )
 {
     _terrain = terrain;
     if ( terrain )
@@ -206,6 +211,15 @@ Tile::setCustomColorLayers( const ColorLayersByUID& in, bool writeLock )
     }
 }
 
+void Tile::clear()
+{    
+    //Clear out any imagery & elevation data being held by this Tile
+    Threading::ScopedWriteLock exclusiveLock( _tileLayersMutex );
+    _colorLayers.clear();
+    _elevationLayer = 0;
+
+}
+
 osg::BoundingSphere
 Tile::computeBound() const
 {
@@ -286,7 +300,7 @@ Tile::traverse( osg::NodeVisitor& nv )
     {
         osg::ref_ptr<Tile> parentTile;
         //Take a reference
-        osg::ref_ptr< Terrain > terrain = _terrain.get();
+        osg::ref_ptr< TerrainNode > terrain = _terrain.get();
         if (terrain.valid())
         {
             terrain->getTile( _key.createParentKey().getTileId(), parentTile );
@@ -359,7 +373,7 @@ _tileKey(tile->getKey())
     _colorLayers    = tile->_colorLayers;
     _elevationLayer = tile->getElevationLayer();
     _locator        = tile->getLocator();
-    osg::ref_ptr< Terrain > terrain = tile->getTerrain();
+    osg::ref_ptr< TerrainNode > terrain = tile->getTerrain();
     if (terrain.valid())
     {
         _sampleRatio  = terrain->getSampleRatio();
diff --git a/src/osgEarthDrivers/engine_osgterrain/TileBuilder b/src/osgEarthDrivers/engine_osgterrain/TileBuilder
index 660b8ec..8924f28 100644
--- a/src/osgEarthDrivers/engine_osgterrain/TileBuilder
+++ b/src/osgEarthDrivers/engine_osgterrain/TileBuilder
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -67,6 +67,9 @@ public:
         const OSGTerrainOptions& terrainOptions,
         TaskService*             service );
 
+    /** dtor */
+    virtual ~TileBuilder() { }
+
     void createTile(
         const TileKey&      key,
         bool                parallelize,
diff --git a/src/osgEarthDrivers/engine_osgterrain/TileBuilder.cpp b/src/osgEarthDrivers/engine_osgterrain/TileBuilder.cpp
index ed4edb3..e2eb1b6 100644
--- a/src/osgEarthDrivers/engine_osgterrain/TileBuilder.cpp
+++ b/src/osgEarthDrivers/engine_osgterrain/TileBuilder.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #include "TransparentLayer"
 #include <osgEarth/ImageUtils>
 #include <osgEarth/TaskService>
+#include <osgEarth/HeightFieldUtils>
 
 using namespace osgEarth;
 using namespace OpenThreads;
@@ -45,16 +46,56 @@ struct BuildColorLayer
         GeoImage geoImage;
         bool isFallbackData = false;
 
+        bool useMercatorFastPath =
+            _opt->enableMercatorFastPath() != false &&
+            _mapInfo->isGeocentric()                &&
+            _layer->getProfile()                    &&
+            _layer->getProfile()->getSRS()->isSphericalMercator();
+
         // fetch the image from the layer, falling back on parent keys utils we are 
         // able to find one that works.
+
+        bool autoFallback = _key.getLevelOfDetail() <= 1;
+
         TileKey imageKey( _key );
-        while( !geoImage.valid() && imageKey.valid() && _layer->isKeyValid(imageKey) )
+        TileSource* tileSource = _layer->getTileSource();
+        const Profile* layerProfile = _layer->getProfile();
+
+        //Only try to get data from the source if it actually intersects the key extent
+        bool hasDataInExtent = true;
+        if (tileSource && layerProfile)
         {
-            geoImage = _layer->createImage( imageKey, 0L ); // TODO: include a progress callback?
-            if ( !geoImage.valid() )
+            GeoExtent ext = _key.getExtent();
+            if (!layerProfile->getSRS()->isEquivalentTo( ext.getSRS()))
             {
-                imageKey = imageKey.createParentKey();
-                isFallbackData = true;
+                ext = layerProfile->clampAndTransformExtent( ext );
+            }
+            hasDataInExtent = ext.isValid() && tileSource->hasDataInExtent( ext );
+        }        
+        
+        if (hasDataInExtent)
+        {
+            while( !geoImage.valid() && imageKey.valid() && _layer->isKeyValid(imageKey) )
+            {
+                if ( useMercatorFastPath )
+                {
+                    bool mercFallbackData = false;
+                    geoImage = _layer->createImageInNativeProfile( imageKey, 0L, autoFallback, mercFallbackData );
+                    if ( geoImage.valid() && mercFallbackData )
+                    {
+                        isFallbackData = true;
+                    }
+                }
+                else
+                {
+                    geoImage = _layer->createImage( imageKey, 0L, autoFallback );
+                }
+
+                if ( !geoImage.valid() )
+                {
+                    imageKey = imageKey.createParentKey();
+                    isFallbackData = true;
+                }
             }
         }
 
@@ -69,8 +110,22 @@ struct BuildColorLayer
         }
         else
         {
-            locator = GeoLocator::createForExtent(geoImage.getExtent(), *_mapInfo);                                                                                       
+            if ( useMercatorFastPath )
+                locator = new MercatorLocator(geoImage.getExtent());
+            else
+                locator = GeoLocator::createForExtent(geoImage.getExtent(), *_mapInfo);
         }
+
+        bool isStreaming = _opt->loadingPolicy()->mode() == LoadingPolicy::MODE_PREEMPTIVE || _opt->loadingPolicy()->mode() == LoadingPolicy::MODE_SEQUENTIAL;
+
+        if (geoImage.getImage() && isStreaming)
+        {
+            // protected against multi threaded access. This is a requirement in sequential/preemptive mode, 
+            // for example. This used to be in TextureCompositorTexArray::prepareImage.
+            // TODO: review whether this affects performance.    
+            geoImage.getImage()->setDataVariance( osg::Object::DYNAMIC );
+        }
+
         // add the color layer to the repo.
         _repo->add( CustomColorLayer(
             _layer,
@@ -109,7 +164,7 @@ struct BuildElevLayer
         osg::ref_ptr<osg::HeightField> hf;
         bool isFallback = false;
 
-        if ( _mapf->getHeightField( _key, true, hf, &isFallback, *_opt->elevationInterpolation() ) )
+        if ( _mapf->getHeightField( _key, true, hf, &isFallback ) )
         {
             // Treat Plate Carre specially by scaling the height values. (There is no need
             // to do this with an empty heightfield)
@@ -196,7 +251,8 @@ TileBuilder::createJob( const TileKey& key, Threading::MultiEvent& semaphore )
     for( ImageLayerVector::const_iterator i = job->_mapf.imageLayers().begin(); i != job->_mapf.imageLayers().end(); ++i )
     {
         ImageLayer* layer = i->get();
-        if ( layer->isKeyValid(key) )
+
+        if ( layer->getEnabled() && layer->isKeyValid(key) )
         {
             ParallelTask<BuildColorLayer>* j = new ParallelTask<BuildColorLayer>( &semaphore );
             j->init( key, layer, job->_mapf.getMapInfo(), _terrainOptions, job->_repo );
@@ -248,7 +304,7 @@ TileBuilder::finalizeJob(TileBuilder::Job*   job,
     // OK we are making a tile, so if there's no heightfield yet, make an empty one.
     if ( !repo._elevLayer.getHFLayer() )
     {
-        osg::HeightField* hf = key.getProfile()->getVerticalSRS()->createReferenceHeightField( key.getExtent(), 8, 8 );
+        osg::HeightField* hf = HeightFieldUtils::createReferenceHeightField( key.getExtent(), 8, 8 );
         osgTerrain::HeightFieldLayer* hfLayer = new osgTerrain::HeightFieldLayer( hf );
         hfLayer->setLocator( GeoLocator::createForKey(key, mapInfo) );
         repo._elevLayer = CustomElevLayer( hfLayer, true );
@@ -261,21 +317,26 @@ TileBuilder::finalizeJob(TileBuilder::Job*   job,
 
     for( ImageLayerVector::const_iterator i = job->_mapf.imageLayers().begin(); i != job->_mapf.imageLayers().end(); ++i )
     {
-        if ( !i->get()->isKeyValid(key) )
+        ImageLayer* layer = i->get();
+
+        if ( layer->getEnabled() )
         {
-            if ( !emptyImage.valid() )
-                emptyImage = ImageUtils::createEmptyImage();
+            if ( !layer->isKeyValid(key) )
+            {
+                if ( !emptyImage.valid() )
+                    emptyImage = ImageUtils::createEmptyImage();
+
+                repo.add( CustomColorLayer(
+                    i->get(), emptyImage.get(),
+                    locator,
+                    key.getLevelOfDetail(),
+                    key,
+                    true ) );
+            }
 
-            repo.add( CustomColorLayer(
-                i->get(), emptyImage.get(),
-                locator,
-                key.getLevelOfDetail(),
-                key,
-                true ) );
+            if ( i->get()->getImageLayerOptions().lodBlending() == true )
+                out_hasLodBlending = true;
         }
-
-        if ( i->get()->getImageLayerOptions().lodBlending() == true )
-            out_hasLodBlending = true;
     }
 
     // Ready to create the actual tile.
@@ -381,15 +442,17 @@ TileBuilder::createTile(const TileKey&      key,
         for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
         {
             ImageLayer* layer = i->get();
-            if ( layer->isKeyValid(key) )
+            //if ( layer->isKeyValid(key) )  // Wrong. no guarantee key is in the same profile.
+
+            if ( layer->getEnabled() )
             {
                 BuildColorLayer build;
                 build.init( key, layer, mapInfo, _terrainOptions, repo );
                 build.execute();
-            }
 
-            if ( layer->getImageLayerOptions().lodBlending() == true )
-                out_hasLodBlendedLayers = true;
+                if ( layer->getImageLayerOptions().lodBlending() == true )
+                    out_hasLodBlendedLayers = true;
+            }
         }
         
         // make an elevation layer.
@@ -407,7 +470,8 @@ TileBuilder::createTile(const TileKey&      key,
     // OK we are making a tile, so if there's no heightfield yet, make an empty one.
     if ( !repo._elevLayer.getHFLayer() )
     {
-        osg::HeightField* hf = key.getProfile()->getVerticalSRS()->createReferenceHeightField( key.getExtent(), 8, 8 );
+        osg::HeightField* hf = HeightFieldUtils::createReferenceHeightField( key.getExtent(), 8, 8 );
+        //osg::HeightField* hf = key.getProfile()->getVerticalSRS()->createReferenceHeightField( key.getExtent(), 8, 8 );
         osgTerrain::HeightFieldLayer* hfLayer = new osgTerrain::HeightFieldLayer( hf );
         hfLayer->setLocator( GeoLocator::createForKey(key, mapInfo) );
         repo._elevLayer = CustomElevLayer( hfLayer, true );
@@ -420,13 +484,16 @@ TileBuilder::createTile(const TileKey&      key,
 
     for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
     {
-        if ( !i->get()->isKeyValid(key) )
+        ImageLayer* layer = i->get();
+
+        if ( layer->getEnabled() && !layer->isKeyValid(key) )
         {
             if ( !emptyImage.valid() )
                 emptyImage = ImageUtils::createEmptyImage();
 
             repo.add( CustomColorLayer(
-                i->get(), emptyImage.get(),
+                layer,
+                emptyImage.get(),
                 locator,
                 key.getLevelOfDetail(),
                 key,
diff --git a/src/osgEarthDrivers/engine_osgterrain/TransparentLayer b/src/osgEarthDrivers/engine_osgterrain/TransparentLayer
index bf19526..9eddd35 100644
--- a/src/osgEarthDrivers/engine_osgterrain/TransparentLayer
+++ b/src/osgEarthDrivers/engine_osgterrain/TransparentLayer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,6 +33,9 @@ class CustomColorLayer
 public:
     CustomColorLayer() { }
 
+    /** dtor */
+    virtual ~CustomColorLayer() { }
+
     CustomColorLayer(
         const osgEarth::ImageLayer* imageLayer,
         osg::Image* image,
@@ -107,6 +110,9 @@ class CustomElevLayer
 public:
     CustomElevLayer() { }
 
+    /** dtor */
+    virtual ~CustomElevLayer() { }
+
     CustomElevLayer( osgTerrain::HeightFieldLayer* hfLayer, bool fallbackData =false )
         : _hfLayer(hfLayer), _fallbackData(fallbackData) { }
 
diff --git a/src/osgEarthDrivers/engine_quadtree/CMakeLists.txt b/src/osgEarthDrivers/engine_quadtree/CMakeLists.txt
new file mode 100644
index 0000000..7276f44
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/CMakeLists.txt
@@ -0,0 +1,43 @@
+
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthSymbology)
+
+SET(TARGET_SRC
+    CustomPagedLOD.cpp
+    KeyNodeFactory.cpp
+    LODFactorCallback.cpp
+    QuadTreeTerrainEngineNode.cpp
+    QuadTreeTerrainEngineDriver.cpp
+    SerialKeyNodeFactory.cpp
+    TerrainNode.cpp
+    TileModelCompiler.cpp
+    TileNode.cpp
+    TileNodeRegistry.cpp
+    TileModelFactory.cpp
+)
+
+SET(TARGET_H
+    Common
+    CustomPagedLOD
+    DynamicLODScaleCallback
+    FileLocationCallback
+    KeyNodeFactory
+    LODFactorCallback
+    QuadTreeTerrainEngineNode
+    QuadTreeTerrainEngineOptions
+    QuickReleaseGLObjects
+    SerialKeyNodeFactory
+    TerrainNode
+    TileModel
+    TileModelCompiler
+    TileNode
+    TileNodeRegistry
+    TileModelFactory
+)
+
+SETUP_PLUGIN(osgearth_engine_quadtree)
+
+# to install public driver includes:
+SET(LIB_NAME engine_quadtree)
+SET(LIB_PUBLIC_HEADERS ${TARGET_H})
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
+
diff --git a/src/osgEarthDrivers/engine_quadtree/Common b/src/osgEarthDrivers/engine_quadtree/Common
new file mode 100644
index 0000000..3b84dd8
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/Common
@@ -0,0 +1,24 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ENGINE_QUADTREE_COMMON_H
+#define OSGEARTH_ENGINE_QUADTREE_COMMON_H 1
+
+#include <osgEarth/Common>
+
+#endif // OSGEARTH_ENGINE_QUADTREE_COMMON_H
diff --git a/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD b/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD
new file mode 100644
index 0000000..f58cd94
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD
@@ -0,0 +1,69 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_CUSTOM_PAGED_LOD
+#define OSGEARTH_ENGINE_QUADTREE_CUSTOM_PAGED_LOD 1
+
+#include "Common"
+#include "TileNode"
+#include "TileNodeRegistry"
+#include <osg/PagedLOD>
+
+using namespace osgEarth;
+
+/**
+ * Customized PagedLOD node that automatically registers TileNodes
+ * with a TileNodeRegistry when they are added to the scene graph.
+ */
+class CustomPagedLOD : public osg::PagedLOD
+{
+public:
+    /**
+     * Constructs a PagedLOD node that will register TileNode's with the 
+     * provided registry 
+     */
+    CustomPagedLOD(
+        TileNodeRegistry* liveTiles,
+        TileNodeRegistry* deadTiles );
+
+    /**
+     * Destructor 
+     */
+    virtual ~CustomPagedLOD();
+
+public: // osg::Group
+
+    /**
+     * Override Group methods so that a TileNode gets registered when the 
+     * DatabasePager adds it to the scene graph. Of course this would happen
+     * if you simply added the TileNode to any parent, but in this 
+     * implmementation the DatabasePager is the only entity adding a TileNode
+     * to a parent.
+     *
+     * DatabasePager only calls addChild or removeChild, but we will implement the
+     * other methods (insert, replace, etc) later if necessary
+     */
+    bool addChild( osg::Node* child );
+    bool removeChildren(unsigned pos, unsigned numChildrenToRemove );
+
+private:
+
+    osg::ref_ptr<TileNodeRegistry> _live, _dead;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_CUSTOM_PAGED_LOD
diff --git a/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD.cpp b/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD.cpp
new file mode 100644
index 0000000..2e69801
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/CustomPagedLOD.cpp
@@ -0,0 +1,110 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "CustomPagedLOD"
+
+using namespace osgEarth;
+
+#define LC "[CustomPagedLOD] "
+
+
+//----------------------------------------------------------------------------
+
+CustomPagedLOD::CustomPagedLOD(TileNodeRegistry* live,
+                               TileNodeRegistry* dead) :
+_live( live ),
+_dead( dead )
+{
+    //nop
+}
+
+
+CustomPagedLOD::~CustomPagedLOD()
+{
+    if ( _live.valid() || _dead.valid() )
+    {
+        for( unsigned i=0; i < getNumChildren(); ++i )
+        {
+            osg::ref_ptr<TileNode> node = dynamic_cast<TileNode*>( getChild(i) );
+            if ( node.valid() )
+            {
+                if ( _live.valid() )
+                    _live->remove( node.get() );
+                if ( _dead.valid() )
+                    _dead->add( node.get() );
+            }
+        }
+    }
+}
+
+
+bool
+CustomPagedLOD::addChild( osg::Node* child )
+{
+    bool ok = osg::PagedLOD::addChild( child );
+    if ( ok && _live.valid() )
+    {
+        TileNodeGroup* tileGroup = dynamic_cast<TileNodeGroup*>( child );
+        if ( tileGroup )
+        {
+            TileNodeVector tileNodes;
+            tileNodes.reserve( 4 );
+
+            for( unsigned i=0; i<tileGroup->getNumChildren(); ++i )
+            {
+                osg::Node* subChild = tileGroup->getChild(i);
+                TileNode* tileNode = 0L;
+                osg::Group* group = dynamic_cast<osg::PagedLOD*>(subChild);
+                if ( group && group->getNumChildren() > 0 )
+                    tileNode = dynamic_cast<TileNode*>( group->getChild(0) );
+                else
+                    tileNode = dynamic_cast<TileNode*>( child );
+                if ( tileNode )
+                    tileNodes.push_back( tileNode );
+            }
+
+            if ( !tileNodes.empty() )
+                _live->add( tileNodes );
+        }
+    }
+    return ok;
+}
+
+
+bool 
+CustomPagedLOD::removeChildren(unsigned pos, unsigned numChildrenToRemove)
+{
+    if ( _live.valid() || _dead.valid() )
+    {
+        for( unsigned i=pos; i<pos+numChildrenToRemove; ++i )
+        {
+            if ( i < getNumChildren() )
+            {
+                osg::ref_ptr<TileNode> tile = dynamic_cast<TileNode*>( getChild(i) );
+                if ( tile.valid() )
+                {
+                    if ( _live.valid() )
+                        _live->remove( tile.get() );
+                    if ( _dead.valid() )
+                        _dead->add( tile.get() );
+                }
+            }
+        }
+    }
+    return osg::PagedLOD::removeChildren( pos, numChildrenToRemove );
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/DynamicLODScaleCallback b/src/osgEarthDrivers/engine_quadtree/DynamicLODScaleCallback
new file mode 100644
index 0000000..62cbc7c
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/DynamicLODScaleCallback
@@ -0,0 +1,81 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ENGINE_OSGTERRAIN_DYNAMIC_LOD_SCALE_CALLBACK_H
+#define OSGEARTH_ENGINE_OSGTERRAIN_DYNAMIC_LOD_SCALE_CALLBACK_H 1
+
+#include <osg/NodeCallback>
+#include <osg/CullStack>
+
+/**
+ * Cull callback that dynamically computes an LOD scale based on
+ * distance to the camera and a "fall off" metric. As the fall off
+ * increases, farther objects' LOD scale will increase. A good
+ * range for the fall-off number is 0..5.
+ */
+struct DynamicLODScaleCallback : public osg::NodeCallback 
+{
+    DynamicLODScaleCallback( float fallOff ) : _fallOff(fallOff) { }
+
+    /** dtor */
+    virtual ~DynamicLODScaleCallback() { }
+
+    void operator()( osg::Node* node, osg::NodeVisitor* nv )
+    {
+        osg::CullStack* cs = dynamic_cast<osg::CullStack*>(nv);
+        if ( cs )
+        {
+            osg::LOD* lod = static_cast<osg::LOD*>( node );
+            osg::Vec3 center = lod->getCenter(); 
+
+            osg::Vec3 eye = nv->getEyePoint();
+            osg::Vec3 eyeVec = eye; eyeVec.normalize();
+            float has = osg::clampAbove( eye.length() - 6356752.3142f, 0.0f );
+            float centerToEye = nv->getDistanceToViewPoint(center, false);
+            float bsToEye = centerToEye - lod->getChild(0)->getBound().radius();
+
+            float scaleAdj = 1.0f;
+            if ( bsToEye > has )
+            {
+                float denom = osg::maximum(0.1f, (1.0f/_fallOff)) * 10000.0f;
+                scaleAdj = osg::clampBetween( log10f(bsToEye/denom), 1.0f, 3.0f );
+                
+                //OE_INFO << LC 
+                //    << std::fixed
+                //    << "centerToEye=" << centerToEye 
+                //    << ", bsToEye=" << bsToEye
+                //    << ", scaleAdj=" << scaleAdj
+                //    << std::endl;
+            }
+
+            float lodScale = cs->getLODScale();
+            cs->setLODScale( lodScale * scaleAdj );
+            traverse( node, nv );
+            cs->setLODScale( lodScale );
+        }
+        else
+        {
+            traverse( node, nv );
+        }
+    }
+
+    float _fallOff;
+};
+
+#endif //OSGEARTH_ENGINE_OSGTERRAIN_DYNAMIC_LOD_SCALE_CALLBACK_H
diff --git a/src/osgEarthDrivers/engine_quadtree/FileLocationCallback b/src/osgEarthDrivers/engine_quadtree/FileLocationCallback
new file mode 100644
index 0000000..91179a7
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/FileLocationCallback
@@ -0,0 +1,81 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ENGINE_OSGTERRAIN_FILE_LOCATION_CALLBACK_H
+#define OSGEARTH_ENGINE_OSGTERRAIN_FILE_LOCATION_CALLBACK_H 1
+
+#include "QuadTreeTerrainEngineNode"
+#include <osg/Version>
+#include <osgEarth/Export>
+
+
+#define USE_FILELOCATIONCALLBACK OSG_MIN_VERSION_REQUIRED(2,9,5)
+
+#if USE_FILELOCATIONCALLBACK
+
+/**
+ * A database pager callback that determines if the given filename is cached or not
+ */
+class FileLocationCallback : public osgDB::FileLocationCallback
+{
+public:
+    FileLocationCallback() { }
+
+    /** dtor */
+    virtual ~FileLocationCallback() { }
+
+    virtual Location fileLocation(const std::string& filename, const osgDB::Options* options)
+    {
+        Location result = REMOTE_FILE;
+        //OE_NOTICE<<"fileLocation = "<<filename<<std::endl;
+
+        unsigned int lod, x, y, id;
+        sscanf(filename.c_str(), "%d/%d/%d.%d", &lod, &x, &y, &id);
+
+        osg::ref_ptr<QuadTreeTerrainEngineNode> engine;
+        QuadTreeTerrainEngineNode::getEngineByUID( (UID)id, engine );
+
+        if ( engine.valid() )
+        {
+            const osgEarth::Profile* profile = engine->getMap()->getProfile();
+            osgEarth::TileKey mapKey( lod, x, y, profile );
+
+            result = LOCAL_FILE;
+
+            MapFrame mapf( engine->getMap() );
+            for( unsigned i=0; i<4; ++i )
+            {
+                TileKey childKey = mapKey.createChildKey( i );
+                if ( !mapf.isCached( childKey ) )
+                {
+                    result = REMOTE_FILE;
+                    break;
+                }
+            }
+        }
+
+        return result;
+    }
+
+    virtual bool useFileCache() const { return false; }
+};
+
+#endif // USE_FILELOCATIONCALLBACK
+
+#endif //OSGEARTH_ENGINE_OSGTERRAIN_FILE_LOCATION_CALLBACK_H
diff --git a/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory b/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory
new file mode 100644
index 0000000..dc933f3
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory
@@ -0,0 +1,53 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_KEY_NODE_FACTORY
+#define OSGEARTH_ENGINE_KEY_NODE_FACTORY 1
+
+#include "Common"
+#include <osgEarth/TileKey>
+#include <osg/Node>
+
+using namespace osgEarth;
+
+/**
+* Factory object that can create a scene graph given a TileKey.
+*/
+class KeyNodeFactory : public osg::Referenced
+{
+public:
+    /**
+    * Creates a node for a tile key at the root level.
+    */
+    virtual osg::Node* createRootNode( const TileKey& key ) =0;
+
+    /**
+    * Creates a node for a tile key.
+    */
+    virtual osg::Node* createNode( const TileKey& key ) =0;
+
+    virtual class TileModelCompiler* getCompiler() const =0;
+
+protected:
+    KeyNodeFactory();
+
+    /** dtor */
+    virtual ~KeyNodeFactory() { }
+};
+
+#endif // OSGEARTH_ENGINE_KEY_NODE_FACTORY
diff --git a/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory.cpp b/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory.cpp
new file mode 100644
index 0000000..8ab3fda
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/KeyNodeFactory.cpp
@@ -0,0 +1,30 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "KeyNodeFactory"
+
+using namespace osgEarth;
+
+#define LC "[KeyNodeFactory] "
+
+//--------------------------------------------------------------------------
+
+KeyNodeFactory::KeyNodeFactory()
+{
+    //NOP
+}
diff --git a/src/osgEarthDrivers/engine_osgterrain/LODFactorCallback b/src/osgEarthDrivers/engine_quadtree/LODFactorCallback
similarity index 100%
copy from src/osgEarthDrivers/engine_osgterrain/LODFactorCallback
copy to src/osgEarthDrivers/engine_quadtree/LODFactorCallback
diff --git a/src/osgEarthDrivers/engine_osgterrain/LODFactorCallback.cpp b/src/osgEarthDrivers/engine_quadtree/LODFactorCallback.cpp
similarity index 100%
copy from src/osgEarthDrivers/engine_osgterrain/LODFactorCallback.cpp
copy to src/osgEarthDrivers/engine_quadtree/LODFactorCallback.cpp
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode
new file mode 100644
index 0000000..3341ce3
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode
@@ -0,0 +1,138 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H
+#define OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H 1
+
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/TextureCompositor>
+#include <osgEarth/Map>
+#include <osgEarth/Revisioning>
+#include <osgEarth/TaskService>
+
+#include "QuadTreeTerrainEngineOptions"
+#include "OSGTileFactory"
+#include "KeyNodeFactory"
+#include "TileBuilder"
+
+#include <osg/Geode>
+#include <osg/NodeCallback>
+
+using namespace osgEarth;
+
+class QuadTreeTerrainEngineNode : public TerrainEngineNode
+{
+public:
+    QuadTreeTerrainEngineNode();
+    META_Node(osgEarth,QuadTreeTerrainEngineNode);
+    virtual ~QuadTreeTerrainEngineNode();
+
+public:
+    osg::Node* createNode(const TileKey& key);
+
+public: // TerrainEngineNode overrides    
+    virtual void preInitialize( const Map* map, const TerrainOptions& options );
+    virtual void postInitialize( const Map* map, const TerrainOptions& options );
+    virtual void validateTerrainOptions( TerrainOptions& options );
+    virtual const TerrainOptions& getTerrainOptions() const { return _terrainOptions; }
+    virtual void traverse( osg::NodeVisitor& );
+    virtual osg::BoundingSphere computeBound() const;    
+
+    // for standalone tile creation outside of a terrain
+    osg::Node* createTile(const TileKey& key);
+
+public: // MapCallback adapter functions
+    void onMapInfoEstablished( const MapInfo& mapInfo ); // not virtual!
+    void onMapModelChanged( const MapModelChange& change ); // not virtual!
+
+    UID getUID() const;
+    OSGTileFactory* getTileFactory() const { return _tileFactory.get(); }
+    class TerrainNode* getTerrainNode() const { return _terrain; }
+
+public: // statics    
+    static void registerEngine( QuadTreeTerrainEngineNode* engineNode );
+    static void unregisterEngine( UID uid );
+    static void getEngineByUID( UID uid, osg::ref_ptr<QuadTreeTerrainEngineNode>& output );
+
+public:
+    class ElevationChangedCallback : public ElevationLayerCallback
+    {
+    public:
+        ElevationChangedCallback( QuadTreeTerrainEngineNode* terrain );
+
+       virtual void onVisibleChanged( TerrainLayer* layer );
+
+        QuadTreeTerrainEngineNode* _terrain;
+        friend class QuadTreeTerrainEngineNode;
+    };
+
+protected:
+	virtual void onVerticalScaleChanged();
+
+private:
+    void init();
+    void syncMapModel();
+    void installTerrainTechnique();
+
+    /**
+     * Reloads all the tiles in the terrain due to a data model change
+     */
+    void refresh();
+
+
+    void addImageLayer( ImageLayer* layer );
+    void addElevationLayer( ElevationLayer* layer );
+
+    void removeImageLayer( ImageLayer* layerRemoved );
+    void removeElevationLayer( ElevationLayer* layerRemoved );
+
+    void moveImageLayer( unsigned int oldIndex, unsigned int newIndex );
+    void moveElevationLayer( unsigned int oldIndex, unsigned int newIndex );
+    
+    void updateElevation( Tile* tile );
+    void installShaders();
+    void updateTextureCombining();
+
+private:
+    osg::ref_ptr<OSGTileFactory>         _tileFactory;
+    //class CustomTerrainNode* _terrain;
+    class TerrainNode*               _terrain;
+    UID                                  _uid;
+    osgEarth::Drivers::OSGTerrainOptions _terrainOptions;
+    Revision                             _shaderLibRev;
+    osg::ref_ptr<TaskServiceManager>     _taskServiceMgr;
+
+    osg::ref_ptr< ElevationChangedCallback > _elevationCallback;
+
+    // store a separate map frame for each of the traversal threads
+    MapFrame* _update_mapf; // map frame for the main/update traversal thread
+    MapFrame* _cull_mapf;   // map frame for the cull traversal thread
+
+    osg::ref_ptr<TaskService>    _tileService;
+    osg::ref_ptr<KeyNodeFactory> _keyNodeFactory;
+    osg::ref_ptr<TileBuilder>    _tileBuilder;
+
+    osg::Timer _timer;
+    unsigned   _tileCount;
+    double     _tileCreationTime;
+    bool       _isStreaming;
+
+    QuadTreeTerrainEngineNode( const QuadTreeTerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode.cpp b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode.cpp
new file mode 100644
index 0000000..cc959bd
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineNode.cpp
@@ -0,0 +1,986 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "QuadTreeTerrainEngineNode"
+#include "MultiPassTerrainTechnique"
+#include "ParallelKeyNodeFactory"
+#include "SinglePassTerrainTechnique"
+#include "TerrainNode"
+#include "StreamingTerrainNode"
+#include "TileBuilder"
+#include "TransparentLayer"
+
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderComposition>
+#include <osg/TexEnv>
+#include <osg/TexEnvCombine>
+#include <osg/PagedLOD>
+#include <osg/Timer>
+
+#define LC "[QuadTreeEngine] "
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    // adapter that lets QuadTreeTerrainEngineNode listen to Map events
+    struct QuadTreeTerrainEngineNodeMapCallbackProxy : public MapCallback
+    {
+        QuadTreeTerrainEngineNodeMapCallbackProxy(QuadTreeTerrainEngineNode* node) : _node(node) { }
+        osg::observer_ptr<QuadTreeTerrainEngineNode> _node;
+
+        void onMapInfoEstablished( const MapInfo& mapInfo ) {
+            _node->onMapInfoEstablished( mapInfo );
+        }
+
+        void onMapModelChanged( const MapModelChange& change ) {
+            _node->onMapModelChanged( change );
+        }
+    };
+}
+
+//---------------------------------------------------------------------------
+
+//static
+//static OpenThreads::ReentrantMutex s_engineNodeCacheMutex;
+static Threading::ReadWriteMutex s_engineNodeCacheMutex;
+//Caches the MapNodes that have been created
+typedef std::map<UID, osg::observer_ptr<QuadTreeTerrainEngineNode> > EngineNodeCache;
+
+static
+EngineNodeCache& getEngineNodeCache()
+{
+    static EngineNodeCache s_cache;
+    return s_cache;
+}
+
+void
+QuadTreeTerrainEngineNode::registerEngine(QuadTreeTerrainEngineNode* engineNode)
+{
+    Threading::ScopedWriteLock exclusiveLock( s_engineNodeCacheMutex );
+    getEngineNodeCache()[engineNode->_uid] = engineNode;
+    OE_DEBUG << LC << "Registered engine " << engineNode->_uid << std::endl;
+}
+
+void
+QuadTreeTerrainEngineNode::unregisterEngine( UID uid )
+{
+    Threading::ScopedWriteLock exclusiveLock( s_engineNodeCacheMutex );
+    EngineNodeCache::iterator k = getEngineNodeCache().find( uid );
+    if (k != getEngineNodeCache().end())
+    {
+        getEngineNodeCache().erase(k);
+        OE_DEBUG << LC << "Unregistered engine " << uid << std::endl;
+    }
+}
+
+// since this method is called in a database pager thread, we use a ref_ptr output
+// parameter to avoid the engine node being destructed between the time we 
+// return it and the time it's accessed; this could happen if the user removed the
+// MapNode from the scene during paging.
+void
+QuadTreeTerrainEngineNode::getEngineByUID( UID uid, osg::ref_ptr<QuadTreeTerrainEngineNode>& output )
+{
+    Threading::ScopedReadLock sharedLock( s_engineNodeCacheMutex );
+    EngineNodeCache::const_iterator k = getEngineNodeCache().find( uid );
+    if (k != getEngineNodeCache().end())
+        output = k->second.get();
+}
+
+UID
+QuadTreeTerrainEngineNode::getUID() const
+{
+    return _uid;
+}
+
+//------------------------------------------------------------------------
+
+QuadTreeTerrainEngineNode::ElevationChangedCallback::ElevationChangedCallback( QuadTreeTerrainEngineNode* terrain ):
+_terrain( terrain )
+{
+}
+
+void
+QuadTreeTerrainEngineNode::ElevationChangedCallback::onVisibleChanged( TerrainLayer* layer )
+{    
+    osgEarth::Registry::instance()->clearBlacklist();
+    _terrain->refresh();
+}
+
+//------------------------------------------------------------------------
+
+QuadTreeTerrainEngineNode::QuadTreeTerrainEngineNode() :
+TerrainEngineNode(),
+_terrain         ( 0L ),
+_update_mapf     ( 0L ),
+_cull_mapf       ( 0L ),
+_tileCount       ( 0 ),
+_tileCreationTime( 0.0 )
+{
+    _uid = Registry::instance()->createUID();
+    _taskServiceMgr = Registry::instance()->getTaskServiceManager();
+
+    _elevationCallback = new ElevationChangedCallback( this );
+}
+
+QuadTreeTerrainEngineNode::~QuadTreeTerrainEngineNode()
+{
+    unregisterEngine( _uid );
+
+    if ( _update_mapf )
+    {
+        delete _update_mapf;
+    }
+
+    if ( _cull_mapf )
+    {
+        delete _cull_mapf;
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::preInitialize( const Map* map, const TerrainOptions& options )
+{
+    TerrainEngineNode::preInitialize( map, options );
+
+    _isStreaming =
+        options.loadingPolicy()->mode() == LoadingPolicy::MODE_PREEMPTIVE ||
+        options.loadingPolicy()->mode() == LoadingPolicy::MODE_SEQUENTIAL;
+
+    // in standard mode, try to set the number of OSG DatabasePager threads to use.
+    if ( options.loadingPolicy().isSet() && !_isStreaming )
+    {
+        int numThreads = -1;
+
+        if ( options.loadingPolicy()->numLoadingThreads().isSet() )
+        {
+            numThreads = osg::maximum( 1, *options.loadingPolicy()->numLoadingThreads() );
+        }
+        else if ( options.loadingPolicy()->numLoadingThreadsPerCore().isSet() )
+        {
+            float numThreadsPerCore = *options.loadingPolicy()->numLoadingThreadsPerCore();
+            numThreads = osg::maximum( (int)1, (int)osg::round( 
+                numThreadsPerCore * (float)OpenThreads::GetNumberOfProcessors() ) );
+        }
+
+        if ( numThreads > 0 )
+        {
+            // NOTE: this doesn't work. the pager gets created before we ever get here.
+            numThreads = osg::maximum(numThreads, 2);
+            int numHttpThreads = osg::clampBetween( numThreads/2, 1, numThreads-1 );
+
+            //OE_INFO << LC << "Requesting pager threads in STANDARD mode: local=" << numThreads << ", http=" << numHttpThreads << std::endl;
+            osg::DisplaySettings::instance()->setNumOfDatabaseThreadsHint( numThreads );
+            osg::DisplaySettings::instance()->setNumOfHttpDatabaseThreadsHint( numHttpThreads );
+        }
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& options )
+{
+    TerrainEngineNode::postInitialize( map, options );
+
+    // Initialize the map frames. We need one for the update thread and one for the
+    // cull thread. Someday we can detect whether these are actually the same thread
+    // (depends on the viewer's threading mode).
+    _update_mapf = new MapFrame( map, Map::MASKED_TERRAIN_LAYERS, "osgterrain-update" );
+    _cull_mapf   = new MapFrame( map, Map::TERRAIN_LAYERS, "osgterrain-cull" );
+
+    // merge in the custom options:
+    _terrainOptions.merge( options );
+
+    // handle an already-established map profile:
+    if ( _update_mapf->getProfile() )
+    {
+        // NOTE: this will initialize the map with the startup layers
+        onMapInfoEstablished( MapInfo(map) );
+    }
+
+    // populate the terrain with whatever data is in the map to begin with:
+    if ( _terrain )
+    {
+        // update the terrain revision in threaded mode
+        if ( _isStreaming )
+        {
+            static_cast<StreamingTerrainNode*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
+        }
+
+        updateTextureCombining();
+    }
+
+    // install a layer callback for processing further map actions:
+    map->addMapCallback( new QuadTreeTerrainEngineNodeMapCallbackProxy(this) );
+
+    //Attach to all of the existing elevation layers
+    ElevationLayerVector elevationLayers;
+    map->getElevationLayers( elevationLayers );
+    for( ElevationLayerVector::const_iterator i = elevationLayers.begin(); i != elevationLayers.end(); ++i )
+    {
+        i->get()->addCallback( _elevationCallback.get() );
+    }
+
+    //Attach a callback to all of the 
+
+    // register me.
+    registerEngine( this );
+
+    // now that we have a map, set up to recompute the bounds
+    dirtyBound();
+}
+
+osg::BoundingSphere
+QuadTreeTerrainEngineNode::computeBound() const
+{
+    if ( _terrain && _terrain->getNumChildren() > 0 )
+    {
+        return _terrain->getBound();
+    }
+    else
+    {
+        return TerrainEngineNode::computeBound();
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::refresh()
+{
+    {
+        removeChild( _terrain );
+    }    
+
+
+    _terrain = new TerrainNode(*_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );    
+    installTerrainTechnique();
+
+   
+    const MapInfo& mapInfo = _update_mapf->getMapInfo();
+    _keyNodeFactory = new SerialKeyNodeFactory( _tileBuilder.get(), _terrainOptions, mapInfo, _terrain, _uid );
+
+    // Build the first level of the terrain.
+    // Collect the tile keys comprising the root tiles of the terrain.
+    std::vector< TileKey > keys;
+    _update_mapf->getProfile()->getRootKeys( keys );
+
+    if (_terrainOptions.enableBlending().value())
+    {
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
+    }
+
+    addChild( _terrain );
+
+    for( unsigned i=0; i<keys.size(); ++i )
+    {
+        osg::Node* node;
+        if ( _keyNodeFactory.valid() )
+            node = _keyNodeFactory->createRootNode( keys[i] );
+        else
+            node = _tileFactory->createSubTiles( *_update_mapf, _terrain, keys[i], true );
+
+        if ( node )
+            _terrain->addChild( node );
+        else
+            OE_WARN << LC << "Couldn't make tile for root key: " << keys[i].str() << std::endl;
+    }
+
+    updateTextureCombining();
+}
+
+void
+QuadTreeTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
+{
+    LoadingPolicy::Mode mode = *_terrainOptions.loadingPolicy()->mode();
+    OE_INFO << LC << "Loading policy mode = " <<
+        ( mode == LoadingPolicy::MODE_PREEMPTIVE ? "PREEMPTIVE" :
+          mode == LoadingPolicy::MODE_SEQUENTIAL ? "SEQUENTIAL" :
+          mode == LoadingPolicy::MODE_PARALLEL   ? "PARALLEL" :
+          "SERIAL/STANDARD" )
+        << std::endl;
+
+    // create a factory for creating actual tile data
+    _tileFactory = new OSGTileFactory( _uid, *_cull_mapf, _terrainOptions );
+
+    // go through and build the root nodesets.
+    if ( !_isStreaming )
+    {
+        _terrain = new TerrainNode(
+            *_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );
+    }
+    else
+    {
+        _terrain = new StreamingTerrainNode(
+            *_update_mapf, *_cull_mapf, _tileFactory.get(), *_terrainOptions.quickReleaseGLObjects() );
+    }
+
+    this->addChild( _terrain );
+
+    // set the initial properties from the options structure:
+    _terrain->setVerticalScale( _terrainOptions.verticalScale().value() );
+    _terrain->setSampleRatio  ( _terrainOptions.heightFieldSampleRatio().value() );
+
+    if (_terrainOptions.enableBlending().value())
+    {
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
+    }
+
+    OE_INFO << LC << "Sample ratio = " << _terrainOptions.heightFieldSampleRatio().value() << std::endl;
+
+    // install the proper layer composition technique:
+
+    installTerrainTechnique();    
+
+    // install the shader program, if applicable:
+    installShaders();
+
+    // calculate a good thread pool size for non-streaming parallel processing
+    if ( !_isStreaming )
+    {
+        unsigned num = 2 * OpenThreads::GetNumberOfProcessors();
+        if ( _terrainOptions.loadingPolicy().isSet() )
+        {
+            if ( _terrainOptions.loadingPolicy()->numLoadingThreads().isSet() )
+            {
+                num = *_terrainOptions.loadingPolicy()->numLoadingThreads();
+            }
+            else if ( _terrainOptions.loadingPolicy()->numLoadingThreadsPerCore().isSet() )
+            {
+                num = (unsigned)(*_terrainOptions.loadingPolicy()->numLoadingThreadsPerCore() * OpenThreads::GetNumberOfProcessors());
+            }
+        }
+
+        if ( mode == LoadingPolicy::MODE_PARALLEL )
+        {
+            _tileService = new TaskService( "TileBuilder", num );
+        }
+
+        // initialize the tile builder
+        _tileBuilder = new TileBuilder( getMap(), _terrainOptions, _tileService.get() );
+
+
+        // initialize a key node factory.
+        switch( mode )
+        {
+        case LoadingPolicy::MODE_SERIAL:
+            _keyNodeFactory = new SerialKeyNodeFactory( _tileBuilder.get(), _terrainOptions, mapInfo, _terrain, _uid );
+            break;
+
+        case LoadingPolicy::MODE_PARALLEL:
+            _keyNodeFactory = new ParallelKeyNodeFactory( _tileBuilder.get(), _terrainOptions, mapInfo, _terrain, _uid );
+            break;
+
+        default:
+            break;
+        }
+    }
+
+    // Build the first level of the terrain.
+    // Collect the tile keys comprising the root tiles of the terrain.
+    std::vector< TileKey > keys;
+    _update_mapf->getProfile()->getRootKeys( keys );
+
+    for( unsigned i=0; i<keys.size(); ++i )
+    {
+        osg::Node* node;
+        if ( _keyNodeFactory.valid() )
+            node = _keyNodeFactory->createRootNode( keys[i] );
+        else
+            node = _tileFactory->createSubTiles( *_update_mapf, _terrain, keys[i], true );
+
+        if ( node )
+            _terrain->addChild( node );
+        else
+            OE_WARN << LC << "Couldn't make tile for root key: " << keys[i].str() << std::endl;
+    }
+
+    // we just added the root tiles, so mark the bound in need of recomputation.
+    dirtyBound();
+}
+
+osg::Node*
+QuadTreeTerrainEngineNode::createNode( const TileKey& key )
+{
+    // if the engine has been disconnected from the scene graph, bail out and don't
+    // create any more tiles
+    if ( getNumParents() == 0 )
+        return 0L;
+
+    OE_DEBUG << LC << "Create node for \"" << key.str() << "\"" << std::endl;
+
+#ifdef PROFILING
+    osg::Timer_t start = _timer.tick();
+#endif
+
+    osg::Node* result = 0L;
+
+    osg::ref_ptr< TerrainNode > terrain = _terrain;
+
+    osg::ref_ptr< KeyNodeFactory > keyNodeFactory = _keyNodeFactory;
+
+    if ( _isStreaming )
+    {
+        // sequential or preemptive mode only.
+        // create a map frame so we can safely create tiles from this dbpager thread
+        MapFrame mapf( getMap(), Map::TERRAIN_LAYERS, "dbpager::earth plugin" );
+        result = getTileFactory()->createSubTiles( mapf, terrain.get(), key, false );
+    }
+    else
+    {
+        if (keyNodeFactory.valid() && terrain.valid())
+        {
+            result = keyNodeFactory->createNode( key );
+        }
+    }
+
+#ifdef PROFILING
+    osg::Timer_t end = osg::Timer::instance()->tick();
+    if ( result )
+    {
+        _tileCount++;
+        _tileCreationTime += _timer.delta_s(start,_timer.tick());
+        if ( _tileCount % 60 == 0 )
+        {
+            OE_INFO << LC << "Avg tile = " << 1000.0*(_tileCreationTime/(double)_tileCount)
+                << " ms, tiles per sec = " << (double)_tileCount/_timer.time_s() << std::endl;
+        }
+    }
+#endif
+
+    return result;
+}
+
+osg::Node*
+QuadTreeTerrainEngineNode::createTile( const TileKey& key )
+{
+    if ( !_tileBuilder.valid() )
+        return 0L;
+
+    osg::ref_ptr<Tile> tile;
+    bool hasRealData, hasLodBlendedLayers;
+
+    _tileBuilder->createTile(
+        key,
+        false,
+        tile,
+        hasRealData,
+        hasLodBlendedLayers );
+
+    if ( !tile.valid() )
+        return 0L;
+
+    // code block required in order to properly manage the ref count of the transform
+    SinglePassTerrainTechnique* tech = new SinglePassTerrainTechnique( _texCompositor.get() );
+    // prepare the interpolation technique for generating triangles:
+    if ( getMap()->getMapOptions().elevationInterpolation() == INTERP_TRIANGULATE )
+        tech->setOptimizeTriangleOrientation( false ); 
+
+    tile->setTerrainTechnique( tech );
+    tile->init();
+    
+    return tech->takeTransform();
+}
+
+void
+QuadTreeTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
+{
+    _update_mapf->sync();
+
+    // dispatch the change handler
+    if ( change.getLayer() )
+    {
+        // first inform the texture compositor with the new model changes:
+        if ( _texCompositor.valid() && change.getImageLayer() )
+        {
+            _texCompositor->applyMapModelChange( change );
+        }
+
+        // then apply the actual change:
+        switch( change.getAction() )
+        {
+        case MapModelChange::ADD_IMAGE_LAYER:
+            addImageLayer( change.getImageLayer() );
+            break;
+        case MapModelChange::REMOVE_IMAGE_LAYER:
+            removeImageLayer( change.getImageLayer() );
+            break;
+        case MapModelChange::ADD_ELEVATION_LAYER:
+            addElevationLayer( change.getElevationLayer() );
+            break;
+        case MapModelChange::REMOVE_ELEVATION_LAYER:
+            removeElevationLayer( change.getElevationLayer() );
+            break;
+        case MapModelChange::MOVE_IMAGE_LAYER:
+            moveImageLayer( change.getFirstIndex(), change.getSecondIndex() );
+            break;
+        case MapModelChange::MOVE_ELEVATION_LAYER:
+            moveElevationLayer( change.getFirstIndex(), change.getSecondIndex() );
+            break;
+        case MapModelChange::ADD_MODEL_LAYER:
+        case MapModelChange::REMOVE_MODEL_LAYER:
+        case MapModelChange::MOVE_MODEL_LAYER:
+        default: break;
+        }
+    }
+
+    // update the terrain revision in threaded mode
+    if ( _isStreaming )
+    {
+        //getTerrain()->incrementRevision();
+        static_cast<StreamingTerrainNode*>(_terrain)->updateTaskServiceThreads( *_update_mapf );
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::addImageLayer( ImageLayer* layerAdded )
+{
+    if ( !layerAdded )
+        return;
+
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {
+        // visit all existing terrain tiles and inform each one of the new image layer:
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        for( TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr )
+        {
+            Tile* tile = itr->get();
+
+            StreamingTile* streamingTile = 0L;
+
+            GeoImage geoImage;
+            bool needToUpdateImagery = false;
+            int imageLOD = -1;
+
+            if ( !_isStreaming || tile->getKey().getLevelOfDetail() == 1 )
+            {
+                // in standard mode, or at the first LOD in seq/pre mode, fetch the image immediately.
+                TileKey geoImageKey = tile->getKey();
+                _tileFactory->createValidGeoImage( layerAdded, tile->getKey(), geoImage, geoImageKey );
+                imageLOD = tile->getKey().getLevelOfDetail();
+            }
+            else
+            {
+                // in seq/pre mode, set up a placeholder and mark the tile as dirty.
+                geoImage = GeoImage(ImageUtils::createEmptyImage(), tile->getKey().getExtent() );
+                needToUpdateImagery = true;
+                streamingTile = static_cast<StreamingTile*>(tile);
+            }
+
+            if (geoImage.valid())
+            {
+                const MapInfo& mapInfo = _update_mapf->getMapInfo();
+
+                double img_min_lon, img_min_lat, img_max_lon, img_max_lat;
+                geoImage.getExtent().getBounds(img_min_lon, img_min_lat, img_max_lon, img_max_lat);
+
+                //Specify a new locator for the color with the coordinates of the TileKey that was actually used to create the image
+                osg::ref_ptr<GeoLocator> img_locator = tile->getKey().getProfile()->getSRS()->createLocator( 
+                    img_min_lon, img_min_lat, img_max_lon, img_max_lat, 
+                    !mapInfo.isGeocentric() );
+
+                //Set the CS to geocentric if we are dealing with a geocentric map
+                if ( mapInfo.isGeocentric() )
+                {
+                    img_locator->setCoordinateSystemType( osgTerrain::Locator::GEOCENTRIC );
+                }
+
+                tile->setCustomColorLayer( CustomColorLayer(
+                    layerAdded,
+                    geoImage.getImage(),
+                    img_locator.get(), imageLOD,  tile->getKey() ) );
+
+                // if necessary, tell the tile to queue up a new imagery request (since we
+                // just installed a placeholder)
+                if ( needToUpdateImagery )
+                {
+                    streamingTile->updateImagery( layerAdded, *_update_mapf, _tileFactory.get() );
+                }
+            }
+            else
+            {
+                // this can happen if there's no data in the new layer for the given tile.
+                // we will rely on the driver to dump out a warning if this is an error.
+            }
+
+            tile->applyImmediateTileUpdate( TileUpdate::ADD_IMAGE_LAYER, layerAdded->getUID() );
+        }
+
+        updateTextureCombining();
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::removeImageLayer( ImageLayer* layerRemoved )
+{
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {
+        // make a thread-safe copy of the tile table
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            Tile* tile = itr->get();
+
+            // critical section
+            tile->removeCustomColorLayer( layerRemoved->getUID() );
+        }
+
+        updateTextureCombining();
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::moveImageLayer( unsigned int oldIndex, unsigned int newIndex )
+{
+    // take a thread-safe copy of the tile table
+    TileVector tiles;
+    _terrain->getTiles( tiles );
+
+    for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+    {
+        Tile* tile = itr->get();
+        tile->applyImmediateTileUpdate( TileUpdate::MOVE_IMAGE_LAYER );
+    }     
+
+    updateTextureCombining();
+}
+
+void
+QuadTreeTerrainEngineNode::updateElevation( Tile* tile )
+{
+    Threading::ScopedWriteLock exclusiveLock( tile->getTileLayersMutex() );
+
+    const TileKey& key = tile->getKey();
+
+    bool hasElevation = _update_mapf->elevationLayers().size() > 0;
+
+    osgTerrain::HeightFieldLayer* heightFieldLayer = dynamic_cast<osgTerrain::HeightFieldLayer*>(tile->getElevationLayer());
+    if (heightFieldLayer)
+    {
+        // In standard mode, just load the elevation data and dirty the tile.
+        if ( !_isStreaming )
+        {
+            osg::ref_ptr<osg::HeightField> hf;
+
+            if (hasElevation)
+                _update_mapf->getHeightField( key, true, hf, 0L);
+
+            if (!hf.valid()) 
+                hf = OSGTileFactory::createEmptyHeightField( key );
+
+            heightFieldLayer->setHeightField( hf.get() );
+            hf->setSkirtHeight( tile->getBound().radius() * _terrainOptions.heightFieldSkirtRatio().value() );
+
+            //TODO: review this in favor of a tile update...
+            tile->setDirty( true );
+        }
+
+        else // if ( isStreaming )
+        {
+            StreamingTile* stile = static_cast<StreamingTile*>(tile);
+
+            //Update the elevation hint
+            stile->setHasElevationHint( hasElevation );
+
+            //In seq/pre mode, if there is no elevation, just clear out all the elevation on the tiles
+            if ( !hasElevation )
+            {
+                osg::ref_ptr<osg::HeightField> hf = OSGTileFactory::createEmptyHeightField( key );
+                heightFieldLayer->setHeightField( hf.get() );
+                hf->setSkirtHeight( stile->getBound().radius() * _terrainOptions.heightFieldSkirtRatio().value() );
+                stile->setElevationLOD( key.getLevelOfDetail() );
+                stile->resetElevationRequests( *_update_mapf );
+                stile->queueTileUpdate( TileUpdate::UPDATE_ELEVATION );
+            }
+            else
+            {
+                //Always load the first LOD so the children tiles can have something to use for placeholders
+                if (stile->getKey().getLevelOfDetail() == 1)
+                {
+                    osg::ref_ptr<osg::HeightField> hf;
+                    _update_mapf->getHeightField( key, true, hf, 0L);
+                    if (!hf.valid()) 
+                        hf = OSGTileFactory::createEmptyHeightField( key );
+                    heightFieldLayer->setHeightField( hf.get() );
+                    hf->setSkirtHeight( stile->getBound().radius() * _terrainOptions.heightFieldSkirtRatio().value() );
+                    stile->setElevationLOD(tile->getKey().getLevelOfDetail());
+                    stile->queueTileUpdate( TileUpdate::UPDATE_ELEVATION );
+                }
+                else
+                {
+                    //Set the elevation LOD to -1
+                    stile->setElevationLOD(-1);
+                    stile->resetElevationRequests( *_update_mapf );
+                }
+            }
+        }
+    }
+}
+
+
+void
+QuadTreeTerrainEngineNode::addElevationLayer( ElevationLayer* layer )
+{
+    if ( !layer )
+        return;
+
+    layer->addCallback( _elevationCallback.get() );
+
+
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {    
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        OE_DEBUG << LC << "Found " << tiles.size() << std::endl;
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::removeElevationLayer( ElevationLayer* layerRemoved )
+{
+    layerRemoved->removeCallback( _elevationCallback.get() );
+
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::moveElevationLayer( unsigned int oldIndex, unsigned int newIndex )
+{
+    if (!_isStreaming)
+    {
+        refresh();
+    }
+    else
+    {
+        TileVector tiles;
+        _terrain->getTiles( tiles );
+
+        OE_DEBUG << "Found " << tiles.size() << std::endl;
+
+        for (TileVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+        {
+            updateElevation( itr->get() );
+        }
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::validateTerrainOptions( TerrainOptions& options )
+{
+    TerrainEngineNode::validateTerrainOptions( options );
+    
+    //nop for now.
+    //note: to validate plugin-specific features, we would create an OSGTerrainOptions
+    // and do the validation on that. You would then re-integrate it by calling
+    // options.mergeConfig( osgTerrainOptions ).
+}
+
+void
+QuadTreeTerrainEngineNode::traverse( osg::NodeVisitor& nv )
+{
+    if ( _cull_mapf ) // ensures initialize() has been called
+    {
+        if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
+        {
+            // update the cull-thread map frame if necessary. (We don't need to sync the
+            // update_mapf becuase that happens in response to a map callback.)
+
+            // TODO: address the fact that this can happen from multiple threads.
+            // Really we need a _cull_mapf PER view. -gw
+            _cull_mapf->sync();
+        }
+    }
+
+    TerrainEngineNode::traverse( nv );
+}
+
+void
+QuadTreeTerrainEngineNode::installShaders()
+{
+    // This method installs a default shader setup on the engine node itself. The texture compositor
+    // can then override parts of the program by using a VirtualProgram on the _terrain node. We do
+    // it this way so that the developer has the option of removing this top-level shader program,
+    // replacing it, or migrating it higher up the scene graph if necessary.
+
+    if ( _texCompositor.valid() && _texCompositor->usesShaderComposition() )
+    {
+        const ShaderFactory* sf = Registry::instance()->getShaderFactory();
+
+        int numLayers = osg::maximum( 1, (int)_update_mapf->imageLayers().size() );
+
+        VirtualProgram* vp = new VirtualProgram();
+
+        // note. this stuff should probably happen automatically in VirtualProgram. gw
+
+        //vp->setShader( "osgearth_vert_main",     sf->createVertexShaderMain() ); // happens in VirtualProgram now
+        vp->setShader( "osgearth_vert_setupLighting", sf->createDefaultLightingVertexShader() );
+        vp->setShader( "osgearth_vert_setupTexturing",  sf->createDefaultTextureVertexShader( numLayers ) );
+
+        //vp->setShader( "osgearth_frag_main",     sf->createFragmentShaderMain() ); // happend in VirtualProgram now
+        vp->setShader( "osgearth_frag_applyLighting", sf->createDefaultLightingFragmentShader() );
+        vp->setShader( "osgearth_frag_applyTexturing",  sf->createDefaultTextureFragmentShader( numLayers ) );
+
+        getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::updateTextureCombining()
+{
+    if ( _texCompositor.valid() )
+    {
+        int numImageLayers = _update_mapf->imageLayers().size();
+        osg::StateSet* terrainStateSet = _terrain->getOrCreateStateSet();
+
+        if ( _texCompositor->usesShaderComposition() )
+        {
+            // Creates or updates the shader components that are generated by the texture compositor.
+            // These components reside in the CustomTerrain's stateset, and override the components
+            // installed in the VP on the engine-node's stateset in installShaders().
+
+            VirtualProgram* vp = new VirtualProgram();
+            terrainStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+#if 0
+            VirtualProgram* vp = dynamic_cast<VirtualProgram*>( terrainStateSet->getAttribute(osg::StateAttribute::PROGRAM) );
+            if ( !vp )
+            {
+                // create and add it the first time around..
+                vp = new VirtualProgram();
+                terrainStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+            }
+#endif
+            
+
+            // first, update the default shader components based on the new layer count:
+            const ShaderFactory* sf = Registry::instance()->getShaderFactory();
+            vp->setShader( "osgearth_vert_setupTexturing",  sf->createDefaultTextureVertexShader( numImageLayers ) );
+            
+            // second, install the per-layer color filter functions.
+            for( int i=0; i<numImageLayers; ++i )
+            {
+                std::string layerFilterFunc = Stringify() << "osgearth_runColorFilters_" << i;
+                const ColorFilterChain& chain = _update_mapf->getImageLayerAt(i)->getColorFilters();
+
+                // install the wrapper function that calls all the filters in turn:
+                vp->setShader( layerFilterFunc, sf->createColorFilterChainFragmentShader(layerFilterFunc, chain) );
+
+                // install each of the filter entry points:
+                for( ColorFilterChain::const_iterator j = chain.begin(); j != chain.end(); ++j )
+                {
+                    const ColorFilter* filter = j->get();
+                    filter->install( terrainStateSet );
+                }
+            }
+
+            // not this one, because the compositor always generates a new one.
+            //vp->setShader( "osgearth_frag_applyTexturing",  lib.createDefaultTextureFragmentShader( numImageLayers ) );
+        }
+
+        // next, inform the compositor that it needs to update based on a new layer count:
+        _texCompositor->updateMasterStateSet( terrainStateSet ); //, numImageLayers );
+    }
+}
+
+namespace
+{
+    class UpdateElevationVisitor : public osg::NodeVisitor
+    {
+    public:
+        UpdateElevationVisitor():
+          osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+          {}
+
+          void apply(osg::Node& node)
+          {
+              Tile* tile = dynamic_cast<Tile*>(&node);
+              if (tile)
+              {
+                  tile->applyImmediateTileUpdate(TileUpdate::UPDATE_ELEVATION);
+              }
+
+              traverse(node);
+          }
+    };
+}
+
+void
+QuadTreeTerrainEngineNode::onVerticalScaleChanged()
+{
+    _terrain->setVerticalScale(getVerticalScale());
+
+    UpdateElevationVisitor visitor;
+    this->accept(visitor);
+}
+
+void
+QuadTreeTerrainEngineNode::installTerrainTechnique()
+{
+    if ( _texCompositor->getTechnique() == TerrainOptions::COMPOSITING_MULTIPASS )
+    {
+        _terrain->setTechniquePrototype( new MultiPassTerrainTechnique( _texCompositor.get() ) );
+        OE_INFO << LC << "Compositing technique = MULTIPASS" << std::endl;
+    }
+
+    else 
+    {
+        SinglePassTerrainTechnique* tech = new SinglePassTerrainTechnique( _texCompositor.get() );
+        tech->setClearDataAfterCompile( !_isStreaming );
+        
+
+        if ( getMap()->getMapOptions().elevationInterpolation() == INTERP_TRIANGULATE )
+            tech->setOptimizeTriangleOrientation( false );   
+        
+        _terrain->setTechniquePrototype( tech );
+    }
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineOptions b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineOptions
new file mode 100644
index 0000000..cb31acf
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeEngineOptions
@@ -0,0 +1,95 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ENGINE_QUADTREE_OPTIONS
+#define OSGEARTH_ENGINE_QUADTREE_OPTIONS 1
+
+#include <osgEarth/Common>
+#include <osgEarth/TerrainOptions>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+
+    class QuadTreeTerrainEngineOptions : public TerrainOptions // NO EXPORT (header-only)
+    {
+    public:
+        QuadTreeTerrainEngineOptions( const ConfigOptions& options =ConfigOptions() ) : TerrainOptions( options ),
+            _skirtRatio  ( 0.05 ),
+            _quickRelease( true ),
+            _lodFallOff  ( 0.0 )
+        {
+            setDriver( "quadtree" );
+            fromConfig( _conf );
+        }
+
+        /** dtor */
+        virtual ~OSGTerrainOptions() { }
+
+    public:
+        optional<float>& heightFieldSkirtRatio() { return _skirtRatio; }
+        const optional<float>& heightFieldSkirtRatio() const { return _skirtRatio; }
+
+        optional<bool>& quickReleaseGLObjects() { return _quickRelease; }
+        const optional<bool>& quickReleaseGLObjects() const { return _quickRelease; }
+
+        optional<float>& lodFallOff() { return _lodFallOff; }
+        const optional<float>& lodFallOff() const { return _lodFallOff; }
+
+        optional<osg::Node::NodeMask>& surfaceNodeMask() { return _surfaceNodeMask;}
+        const optional<osg::Node::NodeMask>& surfaceNodeMask() const { return _surfaceNodeMask;}
+
+        optional<osg::Node::NodeMask>& skirtNodeMask() { return _skirtNodeMask;}
+        const optional<osg::Node::NodeMask>& skirtNodeMask() const { return _skirtNodeMask;}
+
+
+    protected:
+        virtual Config getConfig() const {
+            Config conf = TerrainOptions::getConfig();
+            conf.updateIfSet( "skirt_ratio", _skirtRatio );
+            conf.updateIfSet( "quick_release_gl_objects", _quickRelease );
+            conf.updateIfSet( "lod_fall_off", _lodFallOff );
+            conf.updateIfSet( "surface_node_mask", _surfaceNodeMask);
+            conf.updateIfSet( "skirt_node_mask", _skirtNodeMask);
+            return conf;
+        }
+
+        virtual void mergeConfig( const Config& conf ) {
+            TerrainOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "skirt_ratio", _skirtRatio );
+            conf.getIfSet( "quick_release_gl_objects", _quickRelease );
+            conf.getIfSet( "lod_fall_off", _lodFallOff );
+            conf.getIfSet( "surface_node_mask", _surfaceNodeMask);
+            conf.getIfSet( "skirt_node_mask", _skirtNodeMask);
+        }
+
+        optional<float> _skirtRatio;
+        optional<bool>  _quickRelease;
+        optional<float> _lodFallOff;
+        optional<osg::Node::NodeMask> _surfaceNodeMask;
+        optional<osg::Node::NodeMask> _skirtNodeMask;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_ENGINE_QUADTREE_OPTIONS
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineDriver.cpp b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineDriver.cpp
new file mode 100644
index 0000000..d7a169f
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineDriver.cpp
@@ -0,0 +1,148 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "QuadTreeTerrainEngineNode"
+#include "QuadTreeTerrainEngineOptions"
+#include <osgEarth/Registry>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <osgDB/Registry>
+#include <string>
+
+#define LC "[engine_quadtree driver] "
+
+using namespace osgEarth::Drivers;
+
+/**
+ * osgEarth driver for the QuadTree terrain engine.
+ *
+ * TODO LIST:
+ * - integrate support for Quick Release of GL objects
+ * - integrate support for LOD Blending (access to parent state set)
+ * - consider TileNodeCompiler cacheing of TexCoord arrays and other tile-shareable data
+ */
+class QuadTreeTerrainEngineDriver : public osgDB::ReaderWriter
+{
+public:
+    QuadTreeTerrainEngineDriver() {}
+
+    virtual const char* className()
+    {
+        return "osgEarth QuadTree Terrain Engine";
+    }
+
+    virtual bool acceptsExtension(const std::string& extension) const
+    {
+        return
+            osgDB::equalCaseInsensitive( extension, "osgearth_engine_quadtree" ) ||
+            osgDB::equalCaseInsensitive( extension, "osgearth_engine_quadtree_tile" );
+    }
+
+    virtual ReadResult readObject(const std::string& uri, const Options* options) const
+    {
+        if ( "osgearth_engine_quadtree" == osgDB::getFileExtension( uri ) )
+        {
+            if ( "earth" == osgDB::getNameLessExtension( osgDB::getFileExtension( uri ) ) )
+            {
+                return readNode( uri, options );
+            }
+            else
+            {
+                QuadTreeTerrainEngineOptions terrainOpts;
+                OE_INFO << LC << "Activated!" << std::endl;
+                return ReadResult( new QuadTreeTerrainEngineNode() );
+            }
+        }
+        else
+        {
+            return readNode( uri, options );
+        }
+    }    
+
+    virtual ReadResult readNode(const std::string& uri, const Options* options) const
+    {
+        static int s_tileCount = 0;
+        static double s_tileTime = 0.0;
+        static osg::Timer_t s_startTime;
+
+        if ( "osgearth_engine_quadtree_tile" == osgDB::getFileExtension(uri) )
+        {
+            if ( s_tileCount == 0 )
+                s_startTime = osg::Timer::instance()->tick();
+
+            // See if the filename starts with server: and strip it off.  This will trick OSG
+            // into passing in the filename to our plugin instead of using the CURL plugin if
+            // the filename contains a URL.  So, if you want to read a URL, you can use the
+            // following format: osgDB::readNodeFile("server:http://myserver/myearth.earth").
+            // This should only be necessary for the first level as the other files will have
+            // a tilekey prepended to them.
+            if ((uri.length() > 7) && (uri.substr(0, 7) == "server:"))
+                return readNode(uri.substr(7), options);
+
+            // parse the tile key and engine ID:
+            std::string tileDef = osgDB::getNameLessExtension(uri);
+            unsigned int lod, x, y, engineID;
+            sscanf(tileDef.c_str(), "%d/%d/%d.%d", &lod, &x, &y, &engineID);
+
+            // find the appropriate engine:
+            osg::ref_ptr<QuadTreeTerrainEngineNode> engineNode;
+            QuadTreeTerrainEngineNode::getEngineByUID( (UID)engineID, engineNode );
+            if ( engineNode.valid() )
+            {
+                osg::Timer_t start = osg::Timer::instance()->tick();
+
+                // assemble the key and create the node:
+                const Profile* profile = engineNode->getMap()->getProfile();
+                TileKey key( lod, x, y, profile );
+                osg::ref_ptr< osg::Node > node = engineNode->createNode( key );
+                
+                // Blacklist the tile if we couldn't load it
+                if ( !node.valid() )
+                {
+                    OE_DEBUG << LC << "Blacklisting " << uri << std::endl;
+                    osgEarth::Registry::instance()->blacklist( uri );
+                    return ReadResult::FILE_NOT_FOUND;
+                }
+                else
+                {   
+                    // make safe ref/unref so we can reference from multiple threads
+                    node->setThreadSafeRefUnref( true );
+
+                    // notify the Terrain interface of a new tile
+                    osg::Timer_t start = osg::Timer::instance()->tick();
+                    engineNode->getTerrain()->notifyTileAdded(key, node.get());
+                    osg::Timer_t end = osg::Timer::instance()->tick();
+
+                    //OE_DEBUG << "Took " << osg::Timer::instance()->delta_m(start, end) << "ms to fire terrain callbacks" << std::endl;
+                }
+
+                return ReadResult( node.get(), ReadResult::FILE_LOADED );
+            }
+            else
+            {
+                return ReadResult::FILE_NOT_FOUND;
+            }
+        }
+        else
+        {
+            return ReadResult::FILE_NOT_HANDLED;
+        }
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_engine_quadtree, QuadTreeTerrainEngineDriver)
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode
new file mode 100644
index 0000000..69accdf
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode
@@ -0,0 +1,136 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H
+#define OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H 1
+
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/TextureCompositor>
+#include <osgEarth/Map>
+#include <osgEarth/Revisioning>
+#include <osgEarth/ThreadingUtils>
+
+#include "QuadTreeTerrainEngineOptions"
+#include "KeyNodeFactory"
+#include "TileModelFactory"
+#include "TileModelCompiler"
+#include "TileNodeRegistry"
+
+#include <osg/Geode>
+#include <osg/NodeCallback>
+#include <osg/Uniform>
+
+using namespace osgEarth;
+
+class QuadTreeTerrainEngineNode : public TerrainEngineNode
+{
+public:
+    QuadTreeTerrainEngineNode();
+    META_Node(osgEarth,QuadTreeTerrainEngineNode);
+    virtual ~QuadTreeTerrainEngineNode();
+
+public:
+    osg::Node* createNode(const TileKey& key);
+
+public: // TerrainEngineNode
+
+    // for standalone tile creation outside of a terrain
+    osg::Node* createTile(const TileKey& key);
+
+public: // internal TerrainEngineNode
+
+    virtual void preInitialize( const Map* map, const TerrainOptions& options );
+    virtual void postInitialize( const Map* map, const TerrainOptions& options );
+    virtual void validateTerrainOptions( TerrainOptions& options );
+    virtual const TerrainOptions& getTerrainOptions() const { return _terrainOptions; }
+    virtual osg::BoundingSphere computeBound() const;
+
+public: // MapCallback adapter functions
+    void onMapInfoEstablished( const MapInfo& mapInfo ); // not virtual!
+    void onMapModelChanged( const MapModelChange& change ); // not virtual!
+
+    UID getUID() const;
+
+public: // statics    
+    static void registerEngine( QuadTreeTerrainEngineNode* engineNode );
+    static void unregisterEngine( UID uid );
+    static void getEngineByUID( UID uid, osg::ref_ptr<QuadTreeTerrainEngineNode>& output );
+
+public:
+    class ElevationChangedCallback : public ElevationLayerCallback
+    {
+    public:
+        ElevationChangedCallback( QuadTreeTerrainEngineNode* terrain );
+
+       virtual void onVisibleChanged( TerrainLayer* layer );
+
+        QuadTreeTerrainEngineNode* _terrain;
+        friend class QuadTreeTerrainEngineNode;
+    };
+
+protected:
+    virtual void onVerticalScaleChanged();
+
+private:
+    void init();
+    void syncMapModel();
+
+    // Reloads all the tiles in the terrain due to a data model change
+    void refresh();
+
+    void addImageLayer( ImageLayer* layer );
+    void addElevationLayer( ElevationLayer* layer );
+
+    void removeImageLayer( ImageLayer* layerRemoved );
+    void removeElevationLayer( ElevationLayer* layerRemoved );
+
+    void moveImageLayer( unsigned int oldIndex, unsigned int newIndex );
+    void moveElevationLayer( unsigned int oldIndex, unsigned int newIndex );
+    
+    //void updateElevation( TileNode* tile );
+    void installShaders();
+    void updateTextureCombining();
+
+private:
+    osgEarth::Drivers::QuadTreeTerrainEngineOptions _terrainOptions;
+
+    class TerrainNode* _terrain;
+    UID                _uid;
+    Revision           _shaderLibRev;
+
+    osg::ref_ptr< ElevationChangedCallback > _elevationCallback;
+
+    MapFrame* _update_mapf; // map frame for the main/update traversal thread
+
+    // node registry is shared across all threads.
+    osg::ref_ptr<TileNodeRegistry> _liveTiles;      // tiles in the scene graph.
+    osg::ref_ptr<TileNodeRegistry> _deadTiles;        // tiles that used to be in the scene graph.
+
+    Threading::PerThread< osg::ref_ptr<KeyNodeFactory> > _perThreadKeyNodeFactories;
+    KeyNodeFactory* getKeyNodeFactory();
+
+    osg::Timer _timer;
+    unsigned   _tileCount;
+    double     _tileCreationTime;
+
+    osg::Uniform* _verticalScaleUniform;
+
+    QuadTreeTerrainEngineNode( const QuadTreeTerrainEngineNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ) { }
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_ENGINE_NODE_H
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode.cpp b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode.cpp
new file mode 100644
index 0000000..8b63731
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineNode.cpp
@@ -0,0 +1,618 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "QuadTreeTerrainEngineNode"
+#include "SerialKeyNodeFactory"
+#include "TerrainNode"
+#include "TileModelFactory"
+#include "TileModelCompiler"
+
+#include <osgEarth/HeightFieldUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderComposition>
+
+#include <osg/TexEnv>
+#include <osg/TexEnvCombine>
+#include <osg/PagedLOD>
+#include <osg/Timer>
+
+#define LC "[QuadTreeTerrainEngineNode] "
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    // adapter that lets QuadTreeTerrainEngineNode listen to Map events
+    struct QuadTreeTerrainEngineNodeMapCallbackProxy : public MapCallback
+    {
+        QuadTreeTerrainEngineNodeMapCallbackProxy(QuadTreeTerrainEngineNode* node) : _node(node) { }
+        osg::observer_ptr<QuadTreeTerrainEngineNode> _node;
+
+        void onMapInfoEstablished( const MapInfo& mapInfo ) {
+            _node->onMapInfoEstablished( mapInfo );
+        }
+
+        void onMapModelChanged( const MapModelChange& change ) {
+            _node->onMapModelChanged( change );
+        }
+    };
+}
+
+//---------------------------------------------------------------------------
+
+static Threading::ReadWriteMutex s_engineNodeCacheMutex;
+//Caches the MapNodes that have been created
+typedef std::map<UID, osg::observer_ptr<QuadTreeTerrainEngineNode> > EngineNodeCache;
+
+static
+EngineNodeCache& getEngineNodeCache()
+{
+    static EngineNodeCache s_cache;
+    return s_cache;
+}
+
+void
+QuadTreeTerrainEngineNode::registerEngine(QuadTreeTerrainEngineNode* engineNode)
+{
+    Threading::ScopedWriteLock exclusiveLock( s_engineNodeCacheMutex );
+    getEngineNodeCache()[engineNode->_uid] = engineNode;
+    OE_DEBUG << LC << "Registered engine " << engineNode->_uid << std::endl;
+}
+
+void
+QuadTreeTerrainEngineNode::unregisterEngine( UID uid )
+{
+    Threading::ScopedWriteLock exclusiveLock( s_engineNodeCacheMutex );
+    EngineNodeCache::iterator k = getEngineNodeCache().find( uid );
+    if (k != getEngineNodeCache().end())
+    {
+        getEngineNodeCache().erase(k);
+        OE_DEBUG << LC << "Unregistered engine " << uid << std::endl;
+    }
+}
+
+// since this method is called in a database pager thread, we use a ref_ptr output
+// parameter to avoid the engine node being destructed between the time we 
+// return it and the time it's accessed; this could happen if the user removed the
+// MapNode from the scene during paging.
+void
+QuadTreeTerrainEngineNode::getEngineByUID( UID uid, osg::ref_ptr<QuadTreeTerrainEngineNode>& output )
+{
+    Threading::ScopedReadLock sharedLock( s_engineNodeCacheMutex );
+    EngineNodeCache::const_iterator k = getEngineNodeCache().find( uid );
+    if (k != getEngineNodeCache().end())
+        output = k->second.get();
+}
+
+UID
+QuadTreeTerrainEngineNode::getUID() const
+{
+    return _uid;
+}
+
+//------------------------------------------------------------------------
+
+QuadTreeTerrainEngineNode::ElevationChangedCallback::ElevationChangedCallback( QuadTreeTerrainEngineNode* terrain ):
+_terrain( terrain )
+{
+}
+
+void
+QuadTreeTerrainEngineNode::ElevationChangedCallback::onVisibleChanged( TerrainLayer* layer )
+{    
+    osgEarth::Registry::instance()->clearBlacklist();
+    _terrain->refresh();
+}
+
+//------------------------------------------------------------------------
+
+QuadTreeTerrainEngineNode::QuadTreeTerrainEngineNode() :
+TerrainEngineNode(),
+_terrain         ( 0L ),
+_update_mapf     ( 0L ),
+_tileCount       ( 0 ),
+_tileCreationTime( 0.0 )
+{
+    _uid = Registry::instance()->createUID();
+
+    // install an elevation callback so we can update elevation data
+    _elevationCallback = new ElevationChangedCallback( this );
+}
+
+QuadTreeTerrainEngineNode::~QuadTreeTerrainEngineNode()
+{
+    unregisterEngine( _uid );
+
+    if ( _update_mapf )
+    {
+        delete _update_mapf;
+    }
+}
+
+void
+QuadTreeTerrainEngineNode::preInitialize( const Map* map, const TerrainOptions& options )
+{
+    TerrainEngineNode::preInitialize( map, options );
+}
+
+void
+QuadTreeTerrainEngineNode::postInitialize( const Map* map, const TerrainOptions& options )
+{
+    TerrainEngineNode::postInitialize( map, options );
+
+    // Initialize the map frames. We need one for the update thread and one for the
+    // cull thread. Someday we can detect whether these are actually the same thread
+    // (depends on the viewer's threading mode).
+    _update_mapf = new MapFrame( map, Map::MASKED_TERRAIN_LAYERS, "quadtree-update" );
+
+    // merge in the custom options:
+    _terrainOptions.merge( options );
+
+    // a shared registry for tile nodes in the scene graph.
+    _liveTiles = new TileNodeRegistry("live");
+
+    // set up a registry for quick release:
+    if ( _terrainOptions.quickReleaseGLObjects() == true )
+    {
+        _deadTiles = new TileNodeRegistry("dead");
+    }
+
+    // handle an already-established map profile:
+    if ( _update_mapf->getProfile() )
+    {
+        // NOTE: this will initialize the map with the startup layers
+        onMapInfoEstablished( MapInfo(map) );
+    }
+
+    // populate the terrain with whatever data is in the map to begin with:
+    if ( _terrain )
+    {
+        updateTextureCombining();
+    }
+
+    // install a layer callback for processing further map actions:
+    map->addMapCallback( new QuadTreeTerrainEngineNodeMapCallbackProxy(this) );
+
+    // Attach to all of the existing elevation layers
+    ElevationLayerVector elevationLayers;
+    map->getElevationLayers( elevationLayers );
+    for( ElevationLayerVector::const_iterator i = elevationLayers.begin(); i != elevationLayers.end(); ++i )
+    {
+        i->get()->addCallback( _elevationCallback.get() );
+    }
+
+    // register this instance to the osgDB plugin can find it.
+    registerEngine( this );
+
+    // now that we have a map, set up to recompute the bounds
+    dirtyBound();
+}
+
+
+osg::BoundingSphere
+QuadTreeTerrainEngineNode::computeBound() const
+{
+    if ( _terrain && _terrain->getNumChildren() > 0 )
+    {
+        return _terrain->getBound();
+    }
+    else
+    {
+        return TerrainEngineNode::computeBound();
+    }
+}
+
+
+void
+QuadTreeTerrainEngineNode::refresh()
+{
+    // rebuilds the terrain graph entirely.
+
+    this->removeChild( _terrain );
+
+    _terrain = new TerrainNode( _deadTiles.get() );
+
+    const MapInfo& mapInfo = _update_mapf->getMapInfo();
+
+    KeyNodeFactory* factory = getKeyNodeFactory();
+
+    // Build the first level of the terrain.
+    // Collect the tile keys comprising the root tiles of the terrain.
+    std::vector< TileKey > keys;
+    _update_mapf->getProfile()->getRootKeys( keys );
+
+    if (_terrainOptions.enableBlending().value())
+    {
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON); 
+    }
+
+    this->addChild( _terrain );
+
+    // create a root node for each root tile key.
+    for( unsigned i=0; i<keys.size(); ++i )
+    {
+        osg::Node* node = factory->createRootNode( keys[i] );
+        if ( node )
+            _terrain->addChild( node );
+        else
+            OE_WARN << LC << "Couldn't make tile for root key: " << keys[i].str() << std::endl;
+    }
+
+    updateTextureCombining();
+}
+
+void
+QuadTreeTerrainEngineNode::onMapInfoEstablished( const MapInfo& mapInfo )
+{
+    // create the root terrai node.
+    _terrain = new TerrainNode( _deadTiles.get() );
+
+    this->addChild( _terrain );
+
+    //// set the initial properties from the options structure:
+    //_terrain->setVerticalScale( _terrainOptions.verticalScale().value() );
+    //_terrain->setSampleRatio  ( _terrainOptions.heightFieldSampleRatio().value() );
+
+    if (_terrainOptions.enableBlending().value())
+    {
+        _terrain->getOrCreateStateSet()->setMode(GL_BLEND , osg::StateAttribute::ON);    
+    }
+
+    OE_INFO << LC << "Sample ratio = " << _terrainOptions.heightFieldSampleRatio().value() << std::endl;
+
+    // install the shader program, if applicable:
+    installShaders();
+
+    KeyNodeFactory* factory = getKeyNodeFactory();
+
+    // Build the first level of the terrain.
+    // Collect the tile keys comprising the root tiles of the terrain.
+    std::vector< TileKey > keys;
+    _update_mapf->getProfile()->getRootKeys( keys );
+
+    for( unsigned i=0; i<keys.size(); ++i )
+    {
+        osg::Node* node = factory->createRootNode( keys[i] );
+        if ( node )
+            _terrain->addChild( node );
+        else
+            OE_WARN << LC << "Couldn't make tile for root key: " << keys[i].str() << std::endl;
+    }
+
+    // we just added the root tiles, so mark the bound in need of recomputation.
+    this->dirtyBound();
+}
+
+
+KeyNodeFactory*
+QuadTreeTerrainEngineNode::getKeyNodeFactory()
+{
+    osg::ref_ptr<KeyNodeFactory>& knf = _perThreadKeyNodeFactories.get(); // thread-safe get
+    if ( !knf.valid() )
+    {
+        // create a compiler for compiling tile models into geometry
+        bool optimizeTriangleOrientation = 
+            getMap()->getMapOptions().elevationInterpolation() != INTERP_TRIANGULATE;
+
+        // initialize the model builder:
+        TileModelFactory* factory = new TileModelFactory(
+            getMap(),
+            _liveTiles.get(),
+            _terrainOptions );
+
+        // A compiler specific to this thread:
+        TileModelCompiler* compiler = new TileModelCompiler(
+            _update_mapf->terrainMaskLayers(),
+            _texCompositor.get(),
+            optimizeTriangleOrientation,
+            _terrainOptions );
+
+        // initialize a key node factory.
+        knf = new SerialKeyNodeFactory( 
+            factory,
+            compiler,
+            _liveTiles.get(),
+            _deadTiles.get(),
+            _terrainOptions, 
+            MapInfo( getMap() ),
+            _terrain, 
+            _uid );
+    }
+
+    return knf.get();
+}
+
+
+osg::Node*
+QuadTreeTerrainEngineNode::createNode( const TileKey& key )
+{
+    // if the engine has been disconnected from the scene graph, bail out and don't
+    // create any more tiles
+    if ( getNumParents() == 0 ) //|| !_keyNodeFactory.valid() )
+        return 0L;
+
+    OE_DEBUG << LC << "Create node for \"" << key.str() << "\"" << std::endl;
+
+    osg::Node* result =  getKeyNodeFactory()->createNode( key );
+    return result;
+}
+
+osg::Node*
+QuadTreeTerrainEngineNode::createTile( const TileKey& key )
+{
+    return getKeyNodeFactory()->createNode( key );
+}
+
+
+void
+QuadTreeTerrainEngineNode::onMapModelChanged( const MapModelChange& change )
+{
+    // update the thread-safe map model copy:
+    _update_mapf->sync();
+
+    // dispatch the change handler
+    if ( change.getLayer() )
+    {
+        // first inform the texture compositor with the new model changes:
+        if ( _texCompositor.valid() && change.getImageLayer() )
+        {
+            _texCompositor->applyMapModelChange( change );
+        }
+
+        // then apply the actual change:
+        switch( change.getAction() )
+        {
+        case MapModelChange::ADD_IMAGE_LAYER:
+            addImageLayer( change.getImageLayer() );
+            break;
+        case MapModelChange::REMOVE_IMAGE_LAYER:
+            removeImageLayer( change.getImageLayer() );
+            break;
+        case MapModelChange::ADD_ELEVATION_LAYER:
+            addElevationLayer( change.getElevationLayer() );
+            break;
+        case MapModelChange::REMOVE_ELEVATION_LAYER:
+            removeElevationLayer( change.getElevationLayer() );
+            break;
+        case MapModelChange::MOVE_IMAGE_LAYER:
+            moveImageLayer( change.getFirstIndex(), change.getSecondIndex() );
+            break;
+        case MapModelChange::MOVE_ELEVATION_LAYER:
+            moveElevationLayer( change.getFirstIndex(), change.getSecondIndex() );
+            break;
+        case MapModelChange::ADD_MODEL_LAYER:
+        case MapModelChange::REMOVE_MODEL_LAYER:
+        case MapModelChange::MOVE_MODEL_LAYER:
+        default: 
+            break;
+        }
+    }
+}
+
+
+void
+QuadTreeTerrainEngineNode::addImageLayer( ImageLayer* layerAdded )
+{
+    refresh();
+}
+
+
+void
+QuadTreeTerrainEngineNode::removeImageLayer( ImageLayer* layerRemoved )
+{
+    refresh();
+}
+
+
+void
+QuadTreeTerrainEngineNode::moveImageLayer( unsigned int oldIndex, unsigned int newIndex )
+{
+#if 0
+    // take a thread-safe copy of the tile table
+    TileNodeVector tiles;
+    _terrain->getTiles( tiles );
+
+    for (TileNodeVector::iterator itr = tiles.begin(); itr != tiles.end(); ++itr)
+    {
+        TileNode* tile = itr->get();
+        //tile->applyImmediateTileUpdate( TileUpdate::MOVE_IMAGE_LAYER );
+        OE_WARN << LC << "moveImageLayer under review" << std::endl;
+    }
+#endif
+
+    updateTextureCombining();
+}
+
+
+#if 0
+void
+QuadTreeTerrainEngineNode::updateElevation( TileNode* tile )
+{
+    Threading::ScopedWriteLock exclusiveLock( tile->getTileLayersMutex() );
+
+    const TileKey& key = tile->getKey();
+
+    bool hasElevation = _update_mapf->elevationLayers().size() > 0;
+
+    osgTerrain::HeightFieldLayer* heightFieldLayer = dynamic_cast<osgTerrain::HeightFieldLayer*>(tile->getElevationLayer());
+    if (heightFieldLayer)
+    {
+        osg::ref_ptr<osg::HeightField> hf;
+
+        if ( hasElevation )
+        {
+            _update_mapf->getHeightField( key, true, hf, 0L);
+        }
+
+        if ( !hf.valid() )
+        {
+            hf = HeightFieldUtils::createReferenceHeightField( key.getExtent(), 8, 8 );
+        }
+
+        // update the heightfield:
+        heightFieldLayer->setHeightField( hf.get() );
+        hf->setSkirtHeight( tile->getBound().radius() * _terrainOptions.heightFieldSkirtRatio().value() );
+
+        // TODO: review this in favor of a tile update...
+        tile->setDirty( true );
+    }
+}
+
+#endif
+
+void
+QuadTreeTerrainEngineNode::addElevationLayer( ElevationLayer* layer )
+{
+    if ( !layer )
+        return;
+
+    layer->addCallback( _elevationCallback.get() );
+
+    refresh();
+}
+
+void
+QuadTreeTerrainEngineNode::removeElevationLayer( ElevationLayer* layerRemoved )
+{
+    layerRemoved->removeCallback( _elevationCallback.get() );
+
+    refresh();
+}
+
+void
+QuadTreeTerrainEngineNode::moveElevationLayer( unsigned int oldIndex, unsigned int newIndex )
+{
+    refresh();
+}
+
+void
+QuadTreeTerrainEngineNode::validateTerrainOptions( TerrainOptions& options )
+{
+    TerrainEngineNode::validateTerrainOptions( options );
+    
+    //nop for now.
+    //note: to validate plugin-specific features, we would create an QuadTreeTerrainEngineOptions
+    // and do the validation on that. You would then re-integrate it by calling
+    // options.mergeConfig( osgTerrainOptions ).
+}
+
+void
+QuadTreeTerrainEngineNode::installShaders()
+{
+    // This method installs a default shader setup on the engine node itself. The texture compositor
+    // can then override parts of the program by using a VirtualProgram on the _terrain node. We do
+    // it this way so that the developer has the option of removing this top-level shader program,
+    // replacing it, or migrating it higher up the scene graph if necessary.
+
+    //if ( _texCompositor.valid() && _texCompositor->usesShaderComposition() )
+    //{
+    //    const ShaderFactory* sf = Registry::instance()->getShaderFactory();
+
+    //    int numLayers = osg::maximum( 1, (int)_update_mapf->imageLayers().size() );
+
+    //    VirtualProgram* vp = new VirtualProgram();
+    //    vp->setName( "engine_quadtree:EngineNode" );
+    //    vp->installDefaultColoringAndLightingShaders( numLayers );
+
+    //    getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
+    //}
+}
+
+void
+QuadTreeTerrainEngineNode::updateTextureCombining()
+{
+    if ( _texCompositor.valid() )
+    {
+        int numImageLayers = _update_mapf->imageLayers().size();
+        osg::StateSet* terrainStateSet = _terrain->getOrCreateStateSet();
+
+        if ( _texCompositor->usesShaderComposition() )
+        {
+            // Creates or updates the shader components that are generated by the texture compositor.
+            // These components reside in the CustomTerrain's stateset, and override the components
+            // installed in the VP on the engine-node's stateset in installShaders().
+            VirtualProgram* vp = new VirtualProgram();
+            vp->setName( "engine_quadtree:TerrainNode" );
+
+            terrainStateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+            // first, update the default shader components based on the new layer count:
+            const ShaderFactory* sf = Registry::instance()->getShaderFactory();
+            
+            // second, install the per-layer color filter functions.
+            for( int i=0; i<numImageLayers; ++i )
+            {
+                std::string layerFilterFunc = Stringify() << "osgearth_runColorFilters_" << i;
+                const ColorFilterChain& chain = _update_mapf->getImageLayerAt(i)->getColorFilters();
+
+                // install the wrapper function that calls all the color filters in turn:
+                vp->setShader( layerFilterFunc, sf->createColorFilterChainFragmentShader(layerFilterFunc, chain) );
+
+                // install each of the filter entry points:
+                for( ColorFilterChain::const_iterator j = chain.begin(); j != chain.end(); ++j )
+                {
+                    const ColorFilter* filter = j->get();
+                    filter->install( terrainStateSet );
+                }
+            }
+        }
+
+        // next, inform the compositor that it needs to update based on a new layer count:
+        _texCompositor->updateMasterStateSet( terrainStateSet );
+    }
+}
+
+
+namespace
+{
+    class UpdateElevationVisitor : public osg::NodeVisitor
+    {
+    public:
+        UpdateElevationVisitor( TileModelCompiler* compiler ):
+          osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
+          _compiler(compiler)
+          {}
+
+          void apply(osg::Node& node)
+          {
+              TileNode* tile = dynamic_cast<TileNode*>(&node);
+              if (tile)
+              {
+                  tile->compile( _compiler );
+                  //tile->applyImmediateTileUpdate(TileUpdate::UPDATE_ELEVATION);
+              }
+
+              traverse(node);
+          }
+
+          TileModelCompiler* _compiler;
+    };
+}
+
+
+void
+QuadTreeTerrainEngineNode::onVerticalScaleChanged()
+{
+//    _terrain->setVerticalScale(getVerticalScale());
+    _terrainOptions.verticalScale() = getVerticalScale();
+    UpdateElevationVisitor visitor( getKeyNodeFactory()->getCompiler() );
+    this->accept(visitor);
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineOptions b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineOptions
new file mode 100644
index 0000000..ff00379
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineOptions
@@ -0,0 +1,83 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_ENGINE_QUADTREE_OPTIONS
+#define OSGEARTH_ENGINE_QUADTREE_OPTIONS 1
+
+#include <osgEarth/Common>
+#include <osgEarth/TerrainOptions>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+
+    class QuadTreeTerrainEngineOptions : public TerrainOptions // NO EXPORT (header-only)
+    {
+    public:
+        QuadTreeTerrainEngineOptions( const ConfigOptions& options =ConfigOptions() ) : TerrainOptions( options ),
+            _skirtRatio  ( 0.05 ),
+            _quickRelease( true ),
+            _lodFallOff  ( 0.0 )
+        {
+            setDriver( "quadtree" );
+            fromConfig( _conf );
+        }
+
+        /** dtor */
+        virtual ~QuadTreeTerrainEngineOptions() { }
+
+    public:
+        optional<float>& heightFieldSkirtRatio() { return _skirtRatio; }
+        const optional<float>& heightFieldSkirtRatio() const { return _skirtRatio; }
+
+        optional<bool>& quickReleaseGLObjects() { return _quickRelease; }
+        const optional<bool>& quickReleaseGLObjects() const { return _quickRelease; }
+
+        optional<float>& lodFallOff() { return _lodFallOff; }
+        const optional<float>& lodFallOff() const { return _lodFallOff; }
+
+
+    protected:
+        virtual Config getConfig() const {
+            Config conf = TerrainOptions::getConfig();
+            conf.updateIfSet( "skirt_ratio", _skirtRatio );
+            conf.updateIfSet( "quick_release_gl_objects", _quickRelease );
+            conf.updateIfSet( "lod_fall_off", _lodFallOff );
+            return conf;
+        }
+
+        virtual void mergeConfig( const Config& conf ) {
+            TerrainOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "skirt_ratio", _skirtRatio );
+            conf.getIfSet( "quick_release_gl_objects", _quickRelease );
+            conf.getIfSet( "lod_fall_off", _lodFallOff );
+        }
+
+        optional<float> _skirtRatio;
+        optional<bool>  _quickRelease;
+        optional<float> _lodFallOff;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_ENGINE_QUADTREE_OPTIONS
diff --git a/src/osgEarthDrivers/engine_quadtree/QuickReleaseGLObjects b/src/osgEarthDrivers/engine_quadtree/QuickReleaseGLObjects
new file mode 100644
index 0000000..dc58340
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/QuickReleaseGLObjects
@@ -0,0 +1,90 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_QUICK_RELEASE_GL_OBJECTS
+#define OSGEARTH_ENGINE_QUADTREE_QUICK_RELEASE_GL_OBJECTS 1
+
+#include "Common"
+#include "TileNodeRegistry"
+#include <osg/Camera>
+
+namespace
+{
+    /**
+     * A draw callback to calls another, nested draw callback.
+     */
+    struct NestingDrawCallback : public osg::Camera::DrawCallback
+    {
+        NestingDrawCallback( osg::Camera::DrawCallback* next ) : _next(next) { }
+
+        virtual void operator()( osg::RenderInfo& renderInfo ) const
+        {
+            dispatch( renderInfo );
+        }
+
+        void dispatch( osg::RenderInfo& renderInfo ) const
+        {
+            if ( _next )
+                _next->operator ()( renderInfo );
+        }
+
+        osg::ref_ptr<osg::Camera::DrawCallback> _next;
+    };
+
+
+    // a simple draw callback, to be installed on a Camera, that immediately releases the
+    // GL memory associated with a dead tile (instead of wating for OSG to do it in the
+    // future).
+    struct QuickReleaseGLObjects : public NestingDrawCallback
+    {
+        struct ReleaseOperation : public TileNodeRegistry::Operation
+        {
+            osg::State* _state;
+            ReleaseOperation( osg::State* state ) : _state(state) { }
+            void operator()( TileNodeRegistry::TileNodeMap& tiles )
+            {
+                unsigned size = tiles.size();
+                for( TileNodeRegistry::TileNodeMap::iterator i = tiles.begin(); i != tiles.end(); ++i )
+                {
+                    i->second.get()->releaseGLObjects( _state );
+                }
+                tiles.clear();
+                OE_DEBUG << "Quick-released " << size << " tiles" << std::endl;
+            }
+        };
+
+        QuickReleaseGLObjects( TileNodeRegistry* tiles, osg::Camera::DrawCallback* nextCB) 
+            : NestingDrawCallback( nextCB ), _tilesToRelease(tiles) { }
+
+        // from DrawCallback
+        void operator()( osg::RenderInfo& renderInfo ) const
+        {
+            dispatch( renderInfo );
+
+            if ( !_tilesToRelease->empty() )
+            {
+                ReleaseOperation op(renderInfo.getState());
+                _tilesToRelease->run( op );
+            }
+        }
+
+        osg::ref_ptr<TileNodeRegistry> _tilesToRelease;
+    };
+}
+
+#endif // OSGEARTH_ENGINE_QUADTREE_QUICK_RELEASE_GL_OBJECTS
diff --git a/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory b/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory
new file mode 100644
index 0000000..88a3f93
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory
@@ -0,0 +1,69 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_SERIAL_KEY_NODE_FACTORY
+#define OSGEARTH_ENGINE_QUADTREE_SERIAL_KEY_NODE_FACTORY 1
+
+#include "Common"
+#include "KeyNodeFactory"
+#include "TerrainNode"
+#include "TileModelFactory"
+#include "TileNodeRegistry"
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+class SerialKeyNodeFactory : public KeyNodeFactory
+{
+public:
+    SerialKeyNodeFactory(
+        TileModelFactory*                   modelFactory,
+        TileModelCompiler*                  modelCompiler,
+        TileNodeRegistry*                   liveTiles,
+        TileNodeRegistry*                   deadTiles,
+        const QuadTreeTerrainEngineOptions& options,
+        const MapInfo&                      mapInfo,
+        TerrainNode*                        terrain,
+        UID                                 engineUID );
+
+    /** dtor */
+    virtual ~SerialKeyNodeFactory() { }
+
+
+public: // KeyNodeFactory
+
+    osg::Node* createRootNode( const TileKey& key );
+
+    osg::Node* createNode( const TileKey& key );
+
+    TileModelCompiler* getCompiler() const { return _modelCompiler.get(); }
+
+protected:
+    void addTile(TileModel* model, bool tileHasRealData, bool tileHasLodBlending, osg::Group* parent );
+
+    osg::ref_ptr<TileModelFactory>      _modelFactory;
+    osg::ref_ptr<TileModelCompiler>     _modelCompiler;
+    osg::ref_ptr<TileNodeRegistry>      _liveTiles;
+    osg::ref_ptr<TileNodeRegistry>      _deadTiles;
+    const QuadTreeTerrainEngineOptions& _options;
+    const MapInfo                       _mapInfo;
+    osg::ref_ptr< TerrainNode >         _terrain;
+    UID                                 _engineUID;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_SERIAL_KEY_NODE_FACTORY
diff --git a/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory.cpp b/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory.cpp
new file mode 100644
index 0000000..a760491
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/SerialKeyNodeFactory.cpp
@@ -0,0 +1,214 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "SerialKeyNodeFactory"
+#include "DynamicLODScaleCallback"
+#include "FileLocationCallback"
+#include "LODFactorCallback"
+#include "CustomPagedLOD"
+
+#include <osgEarth/Registry>
+#include <osgEarth/HeightFieldUtils>
+#include <osg/PagedLOD>
+#include <osg/CullStack>
+#include <osg/Uniform>
+
+#include <osgEarth/MapNode>
+
+using namespace osgEarth;
+using namespace OpenThreads;
+
+#define LC "[SerialKeyNodeFactory] "
+
+
+SerialKeyNodeFactory::SerialKeyNodeFactory(TileModelFactory*        modelFactory,
+                                           TileModelCompiler*       modelCompiler,
+                                           TileNodeRegistry*        liveTiles,
+                                           TileNodeRegistry*        deadTiles,
+                                           const QuadTreeTerrainEngineOptions& options,
+                                           const MapInfo&           mapInfo,
+                                           TerrainNode*             terrain,
+                                           UID                      engineUID ) :
+_modelFactory    ( modelFactory ),
+_modelCompiler   ( modelCompiler ),
+_liveTiles       ( liveTiles ),
+_deadTiles       ( deadTiles ),
+_options         ( options ),
+_mapInfo         ( mapInfo ),
+_terrain         ( terrain ),
+_engineUID       ( engineUID )
+{
+    //nop
+}
+
+void
+SerialKeyNodeFactory::addTile(TileModel* model, bool tileHasRealData, bool tileHasLodBlending, osg::Group* parent )
+{
+    // create a node:
+    TileNode* tileNode = new TileNode( model->_tileKey, model->_tileLocator );
+
+    // install the tile model and compile it:
+    tileNode->setTileModel( model );
+    tileNode->compile( _modelCompiler.get() );
+
+    // assemble a URI for this tile's child group:
+    std::string uri = Stringify() << model->_tileKey.str() << "." << _engineUID << ".osgearth_engine_quadtree_tile";
+
+    osg::Node* result = 0L;
+
+    // Only add the next tile if all the following are true:
+    // 1. Either there's real tile data, or a minLOD is explicity set in the options;
+    // 2. The tile isn't blacklisted; and
+    // 3. We are still below the maximim LOD.
+    bool wrapInPagedLOD =
+        (tileHasRealData || (_options.minLOD().isSet() && model->_tileKey.getLOD() < *_options.minLOD())) &&
+        //(tileHasRealData || _options.minLOD().isSet()) &&
+        !osgEarth::Registry::instance()->isBlacklisted( uri ) &&
+        model->_tileKey.getLOD() < *_options.maxLOD();
+
+    if ( wrapInPagedLOD )
+    {
+        osg::BoundingSphere bs = tileNode->getBound();
+        float maxRange = FLT_MAX;
+        
+#if 0
+        //Compute the min range based on the actual bounds of the tile.  This can break down if you have very high resolution
+        //data with elevation variations and you can run out of memory b/c the elevation change is greater than the actual size of the tile so you end up
+        //inifinitely subdividing (or at least until you run out of data or memory)
+        double minRange = bs.radius() * _options.minTileRangeFactor().value();
+#else        
+        //double origMinRange = bs.radius() * _options.minTileRangeFactor().value();        
+        //Compute the min range based on the 2D size of the tile
+        GeoExtent extent = model->_tileKey.getExtent();        
+        GeoPoint lowerLeft(extent.getSRS(), extent.xMin(), extent.yMin(), 0.0, ALTMODE_ABSOLUTE);
+        GeoPoint upperRight(extent.getSRS(), extent.xMax(), extent.yMax(), 0.0, ALTMODE_ABSOLUTE);
+        osg::Vec3d ll, ur;
+        lowerLeft.toWorld( ll );
+        upperRight.toWorld( ur );
+        double radius = (ur - ll).length() / 2.0;
+        float minRange = (float)(radius * _options.minTileRangeFactor().value());
+#endif
+
+        // create a PLOD so we can keep subdividing:
+        osg::PagedLOD* plod = new CustomPagedLOD( _liveTiles.get(), _deadTiles.get() );
+        plod->setCenter( bs.center() );
+        plod->addChild( tileNode, minRange, maxRange );
+
+        plod->setFileName( 1, uri );
+        plod->setRange   ( 1, 0, minRange );
+
+        plod->setUserData( new MapNode::TileRangeData(minRange, maxRange) );
+
+#if USE_FILELOCATIONCALLBACK
+        osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
+        options->setFileLocationCallback( new FileLocationCallback() );
+        plod->setDatabaseOptions( options );
+
+#endif
+        result = plod;
+        
+        if ( tileHasLodBlending )
+        {
+            // Make the LOD transition distance, and a measure of how
+            // close the tile is to an LOD change, to shaders.
+            result->addCullCallback(new Drivers::LODFactorCallback);
+        }
+    }
+    else
+    {
+        result = tileNode;
+    }
+
+    // this cull callback dynamically adjusts the LOD scale based on distance-to-camera:
+    if ( _options.lodFallOff().isSet() && *_options.lodFallOff() > 0.0 )
+    {
+        result->addCullCallback( new DynamicLODScaleCallback(*_options.lodFallOff()) );
+    }
+
+    // this one rejects back-facing tiles:
+    if ( _mapInfo.isGeocentric() && _options.clusterCulling() == true )
+    {
+        osg::HeightField* hf =
+            model->_elevationData.getHFLayer()->getHeightField();
+
+        result->addCullCallback( HeightFieldUtils::createClusterCullingCallback(
+            hf,
+            tileNode->getLocator()->getEllipsoidModel(),
+            *_options.verticalScale() ) );
+    }
+
+    parent->addChild( result );
+}
+
+osg::Node*
+SerialKeyNodeFactory::createRootNode( const TileKey& key )
+{
+    osg::ref_ptr<TileModel> model;
+    bool                    real;
+    bool                    lodBlending;
+
+    _modelFactory->createTileModel( key, model, real, lodBlending );
+
+    // yes, must put the single tile under a tile node group so that it
+    // gets registered in the tile node registry
+    osg::Group* root = new TileNodeGroup();
+
+    addTile( model.get(), real, lodBlending, root );
+    
+    return root;
+}
+
+osg::Node*
+SerialKeyNodeFactory::createNode( const TileKey& parentKey )
+{
+    osg::ref_ptr<TileModel> models[4];
+    bool                   realData[4];
+    bool                   lodBlending[4];
+    bool                   tileHasAnyRealData = false;
+
+    for( unsigned i = 0; i < 4; ++i )
+    {
+        TileKey child = parentKey.createChildKey( i );
+
+        _modelFactory->createTileModel( child, models[i], realData[i], lodBlending[i] );
+
+        if ( models[i].valid() && realData[i] )
+        {
+            tileHasAnyRealData = true;
+        }
+    }
+
+    osg::Group* root = 0L;
+
+    // assemble the tile.
+    if ( tileHasAnyRealData || _options.minLOD().isSet() || parentKey.getLevelOfDetail() == 0 )
+    {
+        // Now create TileNodes for them and assemble into a tile group.
+        root = new TileNodeGroup();
+
+        for( unsigned i = 0; i < 4; ++i )
+        {
+            if ( models[i].valid() )
+            {
+                addTile( models[i].get(), realData[i], lodBlending[i], root );
+            }
+        }
+    }
+
+    return root;
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/TerrainNode b/src/osgEarthDrivers/engine_quadtree/TerrainNode
new file mode 100644
index 0000000..15fafa4
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TerrainNode
@@ -0,0 +1,56 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_TERRAIN_NODE
+#define OSGEARTH_ENGINE_QUADTREE_TERRAIN_NODE 1
+
+#include "Common"
+#include "TileNodeRegistry"
+
+class TileFactory;
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+/**
+ * Parent node for the TileNode quadtree hierarchy.
+ */
+class TerrainNode : public osg::Group
+{
+public:
+
+    /**
+     * Constructs a new terrain node.
+     * @param[in ] deadTiles If non-NULL, the terrain node will active GL object
+     *             quick-release and use this registry to track dead tiles.
+     */
+    TerrainNode( TileNodeRegistry* deadTiles );
+
+public: // osg::Node
+
+    virtual void traverse( osg::NodeVisitor &nv );
+
+protected:
+
+    virtual ~TerrainNode() { }
+
+    osg::ref_ptr<TileNodeRegistry> _tilesToQuickRelease;
+    bool _quickReleaseCallbackInstalled;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TERRAIN_NODE
diff --git a/src/osgEarthDrivers/engine_quadtree/TerrainNode.cpp b/src/osgEarthDrivers/engine_quadtree/TerrainNode.cpp
new file mode 100644
index 0000000..1edcb97
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TerrainNode.cpp
@@ -0,0 +1,77 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TerrainNode"
+#include "QuickReleaseGLObjects"
+
+#include <osgEarth/Registry>
+#include <osgEarth/Map>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/ThreadingUtils>
+
+#include <osg/NodeCallback>
+#include <osg/NodeVisitor>
+#include <osg/Node>
+#include <osgGA/EventVisitor>
+
+using namespace osgEarth;
+using namespace OpenThreads;
+
+#define LC "[TerrainNode] "
+
+//----------------------------------------------------------------------------
+
+TerrainNode::TerrainNode(TileNodeRegistry* removedTiles ) :
+_tilesToQuickRelease            ( removedTiles ),
+_quickReleaseCallbackInstalled  ( false )
+{
+    // tick the update count to install the quick release callback:
+    if ( _tilesToQuickRelease.valid() )
+    {
+        ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+    }
+}
+
+
+void
+TerrainNode::traverse( osg::NodeVisitor &nv )
+{
+    if ( nv.getVisitorType() == nv.UPDATE_VISITOR )
+    {
+        // if the terrain engine requested "quick release", install the quick release
+        // draw callback now.
+        if ( !_quickReleaseCallbackInstalled && _tilesToQuickRelease.valid() )
+        {
+            osg::Camera* cam = findFirstParentOfType<osg::Camera>( this );
+            if ( cam )
+            {
+                cam->setPostDrawCallback( new QuickReleaseGLObjects(
+                    _tilesToQuickRelease.get(),
+                    cam->getPostDrawCallback() ) );
+
+                _quickReleaseCallbackInstalled = true;
+                OE_INFO << LC << "Quick release enabled" << std::endl;
+
+                // knock down the trav count set in the constructor.
+                ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+            }
+        }
+    }
+
+    osg::Group::traverse( nv );
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/TileModel b/src/osgEarthDrivers/engine_quadtree/TileModel
new file mode 100644
index 0000000..56f68f0
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileModel
@@ -0,0 +1,160 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTH_ENGINE_QUADTREE_TILE_MODEL
+#define OSGEARTH_ENGINE_QUADTREE_TILE_MODEL 1
+
+#include "Common"
+#include <osgEarth/Common>
+#include <osgEarth/ImageLayer>
+#include <osgEarth/TileKey>
+#include <osgTerrain/Locator>
+#include <osgTerrain/Layer>
+#include <osg/Image>
+#include <osg/StateSet>
+#include <map>
+
+using namespace osgEarth;
+
+
+class TileModel : public osg::Referenced
+{
+public:
+    class ElevationData
+    {
+    public:
+        ElevationData() { }
+        virtual ~ElevationData() { }
+        ElevationData( osgTerrain::HeightFieldLayer* hfLayer, bool fallbackData =false )
+            : _hfLayer(hfLayer), _fallbackData(fallbackData) { }
+
+        osgTerrain::HeightFieldLayer* getHFLayer() const { return _hfLayer.get(); }
+        bool isFallbackData() const { return _fallbackData; }
+
+    private:
+        osg::ref_ptr<osgTerrain::HeightFieldLayer> _hfLayer;
+        bool _fallbackData;
+    };
+
+
+    class ColorData
+    {
+    public:
+        ColorData() { }
+
+        /** dtor */
+        virtual ~ColorData() { }
+
+        ColorData(
+            const osgEarth::ImageLayer* imageLayer,
+            osg::Image* image,
+            const osgTerrain::Locator* locator,
+            int lod,
+            const osgEarth::TileKey& tileKey,
+            bool fallbackData =false )
+            : _layer(imageLayer), _locator(locator), _image(image),  _tileKey(tileKey), _lod(lod), _fallbackData(fallbackData) { }
+
+        ColorData( const ColorData& rhs ) :
+            _layer( rhs._layer.get() ),        
+            _locator( rhs._locator.get() ),
+            _image( rhs._image.get() ),
+            _tileKey( rhs._tileKey ),
+            _lod( rhs._lod ),
+            _fallbackData( rhs._fallbackData ) { }
+
+        osgEarth::UID getUID() const {
+            return _layer->getUID();
+        }
+
+        const osgTerrain::Locator* getLocator() const {
+            return _locator.get();
+        }
+
+        osg::Image* getImage() const { 
+            return _image.get(); }
+
+        const osgEarth::TileKey& getTileKey() const {
+            return _tileKey; }
+
+        const osgEarth::ImageLayer* getMapLayer() const {
+            return _layer.get(); }
+
+        int getLevelOfDetail() const {
+            return _lod; }
+
+        bool isFallbackData() const {
+            return _fallbackData; }
+
+        osg::BoundingSphere computeBound() const {
+            osg::BoundingSphere bs;
+            osg::Vec3d v;
+            if (getLocator()->convertLocalToModel(osg::Vec3d(0.5,0.5,0.0), v)) {
+                bs.center() = v;
+            }
+            if (getLocator()->convertLocalToModel(osg::Vec3d(0.0,0.0,0.0), v)) {
+                bs.radius() = (bs.center() - v).length();
+            }
+            return bs;
+        }
+
+
+    private:
+        osg::ref_ptr<const osgEarth::ImageLayer> _layer;
+        osg::ref_ptr<const osgTerrain::Locator>  _locator;
+        osg::ref_ptr<osg::Image>                 _image;
+        osgEarth::TileKey                        _tileKey;
+        int                                      _lod;
+        bool                                     _fallbackData;
+    };
+
+    class ColorDataRef : public osg::Referenced
+    {
+    public:
+        ColorDataRef( const ColorData& layer ) : _layer(layer) { }
+        ColorData _layer;
+    };
+
+
+    typedef std::map<UID, ColorData> ColorDataByUID;
+
+
+public:
+    TileModel() { }
+    virtual ~TileModel() { }
+
+    TileKey                     _tileKey;
+    osg::ref_ptr<GeoLocator>    _tileLocator;
+    ColorDataByUID              _colorData;
+    ElevationData               _elevationData;
+    float                       _sampleRatio;
+    osg::ref_ptr<osg::StateSet> _parentStateSet;
+
+    // convenience funciton to pull out a layer by its UID.
+    bool getColorData( UID layerUID, ColorData& out ) const {
+        ColorDataByUID::const_iterator i = _colorData.find( layerUID );
+        if ( i != _colorData.end() ) {
+            out = i->second;
+            return true;
+        }
+        return false;
+    }
+};
+
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TILE_MODEL
diff --git a/src/osgEarthDrivers/engine_quadtree/TileModelCompiler b/src/osgEarthDrivers/engine_quadtree/TileModelCompiler
new file mode 100644
index 0000000..293946c
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileModelCompiler
@@ -0,0 +1,100 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_COMPILER
+#define OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_COMPILER 1
+
+#include "Common"
+#include "TileModel"
+#include "QuadTreeTerrainEngineOptions"
+
+#include <osgEarth/Map>
+#include <osgEarth/TextureCompositor>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Locators>
+
+#include <osg/Node>
+#include <osg/StateSet>
+#include <osg/Drawable>
+#include <osg/Array>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+/**
+ * Cache used by the TileModelCompiler. This lets us share common data across
+ * compilations. Since the compiler is thread-locked, we just have a separate
+ * cache per compiler.
+ *
+ * Important Note! Any array you store in the cache MUST have it's OWN 
+ * unique VBO. Call array->setVertexBufferObject( new osg::VertexBufferObject() )
+ * to assign one. This will prevent non-thread-safe buffer object sharing.
+ */
+struct CompilerCache
+{
+    // Texture coordinate array cache def
+    struct TexCoordTableKey {
+        osg::ref_ptr<const GeoLocator> _locator;
+        osg::Vec4d                     _mat;
+        unsigned                       _cols, _rows;
+    };
+    typedef std::pair< TexCoordTableKey, osg::ref_ptr<osg::Vec2Array> > LocatorTexCoordPair;
+    struct TexCoordArrayCache : public std::list<LocatorTexCoordPair> {
+        osg::ref_ptr<osg::Vec2Array>& get( const osg::Vec4d& mat, unsigned cols, unsigned rows );
+    };
+
+    TexCoordArrayCache _surfaceTexCoordArrays;
+    TexCoordArrayCache _skirtTexCoordArrays;
+};
+
+
+/**
+ * Builds the actual tile geometry.
+ *
+ * When used with the KeyNodeFactory, there will be exactly one instance of this
+ * class per thread. So, we can expand this to include caches for commonly shared
+ * data like texture coordinate or color arrays.
+ */
+class TileModelCompiler : public osg::Referenced
+{
+public:
+    TileModelCompiler(
+        const MaskLayerVector&              masks,
+        TextureCompositor*                  compositor,
+        bool                                optimizeTriangleOrientation,
+        const QuadTreeTerrainEngineOptions& options);
+
+    /**
+     * Compiles a tile model into an OSG scene graph. The scene graph will
+     * include a MatrixTransform to localize the tile data.
+     */
+    bool compile(
+        const TileModel* model,
+        osg::Node*&      out_node,
+        osg::StateSet*&  out_stateSet );
+
+protected:
+    const MaskLayerVector&                    _masks;
+    osg::ref_ptr<TextureCompositor>           _texCompositor;
+    bool                                      _optimizeTriOrientation;
+    const QuadTreeTerrainEngineOptions&       _options;
+    osg::ref_ptr<osg::Drawable::CullCallback> _cullByTraversalMask;
+    CompilerCache                             _cache;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_COMPILER
diff --git a/src/osgEarthDrivers/engine_quadtree/TileModelCompiler.cpp b/src/osgEarthDrivers/engine_quadtree/TileModelCompiler.cpp
new file mode 100644
index 0000000..9b90d64
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileModelCompiler.cpp
@@ -0,0 +1,1543 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TileModelCompiler"
+
+#include <osgEarth/Locators>
+#include <osgEarth/TextureCompositor>
+#include <osgEarthSymbology/Geometry>
+#include <osgEarthSymbology/MeshConsolidator>
+
+#include <osg/Geode>
+#include <osg/Geometry>
+#include <osg/MatrixTransform>
+#include <osgUtil/DelaunayTriangulator>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+using namespace osgEarth::Symbology;
+
+#define LC "[TileModelCompiler] "
+
+//------------------------------------------------------------------------
+
+osg::ref_ptr<osg::Vec2Array>&
+CompilerCache::TexCoordArrayCache::get(const osg::Vec4d& mat,
+                                       unsigned          cols,
+                                       unsigned          rows)
+{
+    for( iterator i = begin(); i != end(); ++i )
+    {
+        CompilerCache::TexCoordTableKey& key = i->first;
+        if ( key._mat == mat && key._cols == cols && key._rows == rows )
+        {
+            return i->second;
+        }
+    }
+    
+    CompilerCache::TexCoordTableKey newKey;
+    newKey._mat     = mat;
+    newKey._cols    = cols;
+    newKey._rows    = rows;
+    this->push_back( std::make_pair(newKey, (osg::Vec2Array*)0L) );
+    return this->back().second;
+}
+
+//------------------------------------------------------------------------
+
+
+#define MATCH_TOLERANCE 0.000001
+
+namespace
+{    
+    // Data for a single renderable color layer
+    struct RenderLayer
+    {
+        TileModel::ColorData           _layer;
+        osg::ref_ptr<const GeoLocator> _locator;
+        osg::ref_ptr<osg::Vec2Array>   _texCoords;
+        osg::ref_ptr<osg::Vec2Array>   _skirtTexCoords;
+        osg::ref_ptr<osg::Vec2Array>   _stitchTexCoords;
+        osg::ref_ptr<osg::Vec2Array>   _stitchSkirtTexCoords;
+        bool _ownsTexCoords;
+        bool _ownsSkirtTexCoords;
+        RenderLayer() : _ownsTexCoords(false), _ownsSkirtTexCoords(false) { }
+    };
+
+    typedef std::vector< RenderLayer > RenderLayerVector;
+
+
+    // Record that stores the data for a single masking region.
+    struct MaskRecord
+    {
+        osg::ref_ptr<osg::Vec3dArray> _boundary;
+        osg::Vec3d                    _ndcMin, _ndcMax;
+        osg::Geometry*                _geom;
+        osg::ref_ptr<osg::Vec3Array>  _internal;
+
+        MaskRecord(osg::Vec3dArray* boundary, osg::Vec3d& ndcMin, osg::Vec3d& ndcMax, osg::Geometry* geom) 
+            : _boundary(boundary), _ndcMin(ndcMin), _ndcMax(ndcMax), _geom(geom), _internal(new osg::Vec3Array()) { }
+    };
+
+    typedef std::vector<MaskRecord> MaskRecordVector;
+
+
+    typedef std::vector<int> Indices;
+
+
+    struct Data
+    {
+        Data(const TileModel* in_model, const MaskLayerVector& in_maskLayers)
+            : model     ( in_model ), 
+              maskLayers( in_maskLayers )
+        {
+            surfaceGeode     = 0L;
+            surface          = 0L;
+            skirtGeode       = 0L;
+            skirt            = 0L;
+            stitching_skirts = 0L;
+            ss_verts         = 0L;
+            //skirtHeight      = 0.0f;
+            scaleHeight      = 1.0f;
+            createSkirt      = false;
+            i_sampleFactor   = 1.0f;
+            j_sampleFactor   = 1.0f;
+            unifiedSkirtTexCoords       = 0L;
+            unifiedStitchSkirtTexCoords = 0L;
+            unifiedSurfaceTexCoords     = 0L;
+        }
+
+        const TileModel*         model;                         // the tile's data model
+        const MaskLayerVector&   maskLayers;                    // map-global masking layer set
+        osg::ref_ptr<GeoLocator> geoLocator;                    // tile locator adjusted to geocentric
+        osg::Vec3d               centerModel;                   // tile center in model (world) coords
+
+        RenderLayerVector        renderLayers;
+
+        // surface data:
+        osg::Geode*                   surfaceGeode;
+        osg::Geometry*                surface;
+        osg::Vec3Array*               surfaceVerts;
+        osg::Vec3Array*               normals;
+        osg::Vec4Array*               surfaceElevData;
+        unsigned                      numVerticesInSurface;
+        osg::Vec2Array*               unifiedSurfaceTexCoords;
+        osg::ref_ptr<osg::FloatArray> elevations;
+        Indices                       indices;
+        osg::BoundingSphere           surfaceBound;
+
+        // skirt data:
+        osg::Geode*              skirtGeode;
+        osg::Geometry*           skirt;
+        unsigned                 numVerticesInSkirt;
+        osg::Vec2Array*          unifiedSkirtTexCoords;
+        //double                   skirtHeight;
+        bool                     createSkirt;
+
+        // sampling grid parameters:
+        unsigned                 numRows;
+        unsigned                 numCols;
+        double                   i_sampleFactor;
+        double                   j_sampleFactor;
+        double                   scaleHeight;
+
+        // for masking/stitching:
+        MaskRecordVector         maskRecords;
+        osg::Geometry*           stitching_skirts;
+        osg::Vec3Array*          ss_verts;
+        osg::Vec2Array*          unifiedStitchSkirtTexCoords;
+    };
+
+
+
+    /**
+     * Set up the masking records for this build. Here we check all the map's mask layer
+     * boundary geometries and find any that intersect the current tile. For an intersection
+     * we create a MaskRecord that we'll use later in the process.
+     */
+    void setupMaskRecords( Data& d )
+    {
+        // TODO: Set up the boundary sets globally in the TileModelCompiler instead of
+        // generating the boundaries every time for every tile.
+
+        for (MaskLayerVector::const_iterator it = d.maskLayers.begin(); it != d.maskLayers.end(); ++it)
+        {
+          // When displaying Plate Carre, Heights have to be converted from meters to degrees.
+          // This is also true for mask feature
+          // TODO: adjust this calculation based on the actual EllipsoidModel.
+          float scale = d.scaleHeight;
+          if (d.model->_tileLocator->getCoordinateSystemType() == osgEarth::GeoLocator::GEOGRAPHIC)
+          {
+            scale = d.scaleHeight / 111319.0f;
+          }
+
+          // TODO: no need to do this for every tile right?
+          osg::Vec3dArray* boundary = (*it)->getOrCreateBoundary(
+              scale, 
+              d.model->_tileLocator->getDataExtent().getSRS() );
+
+          if ( boundary )
+          {
+              osg::Vec3d min, max;
+              min = max = boundary->front();
+
+              for (osg::Vec3dArray::iterator it = boundary->begin(); it != boundary->end(); ++it)
+              {
+                if (it->x() < min.x())
+                  min.x() = it->x();
+
+                if (it->y() < min.y())
+                  min.y() = it->y();
+
+                if (it->x() > max.x())
+                  max.x() = it->x();
+
+                if (it->y() > max.y())
+                  max.y() = it->y();
+              }
+
+              osg::Vec3d min_ndc, max_ndc;
+              d.geoLocator->modelToUnit(min, min_ndc);
+              d.geoLocator->modelToUnit(max, max_ndc);
+
+              bool x_match = ((min_ndc.x() >= 0.0 && max_ndc.x() <= 1.0) ||
+                              (min_ndc.x() <= 0.0 && max_ndc.x() > 0.0) ||
+                              (min_ndc.x() < 1.0 && max_ndc.x() >= 1.0));
+
+              bool y_match = ((min_ndc.y() >= 0.0 && max_ndc.y() <= 1.0) ||
+                              (min_ndc.y() <= 0.0 && max_ndc.y() > 0.0) ||
+                              (min_ndc.y() < 1.0 && max_ndc.y() >= 1.0));
+
+              if (x_match && y_match)
+              {
+                osg::Geometry* mask_geom = new osg::Geometry();
+                mask_geom->setUseVertexBufferObjects(true);
+                d.surfaceGeode->addDrawable(mask_geom);
+                d.maskRecords.push_back( MaskRecord(boundary, min_ndc, max_ndc, mask_geom) );
+              }
+           }
+        }
+
+        if (d.maskRecords.size() > 0)
+        {
+          d.stitching_skirts = new osg::Geometry();
+          d.stitching_skirts->setUseVertexBufferObjects(true);
+          d.surfaceGeode->addDrawable( d.stitching_skirts );
+
+          d.ss_verts = new osg::Vec3Array();
+          d.stitching_skirts->setVertexArray(d.ss_verts);
+
+          if ( d.ss_verts->getVertexBufferObject() )
+              d.ss_verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+        }
+    }
+
+
+    /**
+     * Calculates the sample rate and allocates all the vertex, normal, and color
+     * arrays for the tile.
+     */
+    void setupGeometryAttributes( Data& d, double sampleRatio )
+    {
+        d.numRows = 8;
+        d.numCols = 8;
+
+        // read the row/column count and skirt size from the model:
+        osgTerrain::HeightFieldLayer* hflayer = d.model->_elevationData.getHFLayer();
+        if (hflayer)
+        {
+            d.numCols = hflayer->getNumColumns();
+            d.numRows = hflayer->getNumRows();
+        }
+
+        // calculate the elevation sampling factors that we'll use to step though
+        // the tile's NDC space.
+        d.i_sampleFactor = 1.0f;
+        d.j_sampleFactor = 1.0f;
+
+        if ( sampleRatio != 1.0f )
+        {
+            unsigned originalNumCols = d.numCols;
+            unsigned originalNumRows = d.numRows;
+
+            d.numCols = osg::maximum((unsigned int) (float(originalNumCols)*sqrtf(sampleRatio)), 4u);
+            d.numRows = osg::maximum((unsigned int) (float(originalNumRows)*sqrtf(sampleRatio)), 4u);
+
+            d.i_sampleFactor = double(originalNumCols-1)/double(d.numCols-1);
+            d.j_sampleFactor = double(originalNumRows-1)/double(d.numRows-1);
+        }
+
+
+        // calculate the total number of verts:
+        d.numVerticesInSurface = d.numCols * d.numRows;
+        d.numVerticesInSkirt   = d.createSkirt ? (2 * (d.numCols*2 + d.numRows*2 - 4)) : 0;
+
+        // allocate and assign vertices
+        d.surfaceVerts = new osg::Vec3Array();
+        d.surfaceVerts->reserve( d.numVerticesInSurface );
+        d.surface->setVertexArray( d.surfaceVerts );
+
+        if ( d.surfaceVerts->getVertexBufferObject() )
+            d.surfaceVerts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        // allocate and assign normals
+        d.normals = new osg::Vec3Array();
+        d.normals->reserve( d.numVerticesInSurface );
+        d.surface->setNormalArray( d.normals );
+        d.surface->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+        // allocate and assign color
+        osg::Vec4Array* colors = new osg::Vec4Array(1);
+        (*colors)[0].set(1.0f,1.0f,1.0f,1.0f);
+        d.surface->setColorArray( colors );
+        d.surface->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+        // elevation attribution
+        // for each vertex, a vec4 containing a unit extrusion vector in [0..2] and the raw elevation in [3]
+        d.surfaceElevData = new osg::Vec4Array();
+        d.surfaceElevData->reserve( d.numVerticesInSurface );
+        d.surface->setVertexAttribArray( osg::Drawable::ATTRIBUTE_6, d.surfaceElevData );
+        d.surface->setVertexAttribBinding( osg::Drawable::ATTRIBUTE_6, osg::Geometry::BIND_PER_VERTEX );
+        d.surface->setVertexAttribNormalize( osg::Drawable::ATTRIBUTE_6, false );
+        
+        // temporary data structures for triangulation support
+        d.elevations = new osg::FloatArray();
+        d.elevations->reserve( d.numVerticesInSurface );
+        d.indices.resize( d.numVerticesInSurface, -1 );
+    }
+
+
+    /**
+     * Collects a list of color layers to render and assigns each one a texture image
+     * unit and a texture coordinate array. Color layers with the same locator setup
+     * will share a texture coordinate array.
+     *
+     * TODO: introduce support in the TextureCompositor to not only share the texture
+     * coordinate array, but also the binding attribute slot.
+     */
+    void setupTextureAttributes( Data& d, TextureCompositor* compositor, CompilerCache& cache )
+    {
+        if ( compositor->requiresUnitTextureSpace() )
+        {
+            // for a unified unit texture space, just make a single texture coordinate array.
+            // this happens (for example) for a texture-array compositor where all textures
+            // share the same unit texture coordinate space.
+
+            d.unifiedSurfaceTexCoords = new osg::Vec2Array();
+            d.unifiedSurfaceTexCoords->reserve( d.numVerticesInSurface );
+            d.surface->setTexCoordArray( 0, d.unifiedSurfaceTexCoords );
+
+            if ( d.createSkirt )
+            {
+                d.unifiedSkirtTexCoords = new osg::Vec2Array();
+                d.unifiedSkirtTexCoords->reserve( d.numVerticesInSkirt );
+                d.skirt->setTexCoordArray( 0, d.unifiedSkirtTexCoords );
+            }
+
+            if (d.maskRecords.size() > 0)
+            {
+                d.unifiedStitchSkirtTexCoords = new osg::Vec2Array();
+                //unifiedStitchSkirtTexCoords->reserve( ? );
+                d.stitching_skirts->setTexCoordArray( 0, d.unifiedStitchSkirtTexCoords );
+            }
+        }
+
+        else // if ( !_texCompositor->requiresUnitTextureSpace() )
+        {
+            // normal texture coordinate sharing. Any color entries that have the same
+            // color Locator will share a texcoord array, saving on memory.
+
+            // TODO: not only should we also share the vertex attribute slot (as mentioned
+            // above) but we should also share the texture coord arrays across ALL tiles,
+            // not just within a single tile. Perhaps a TerrainModel-wide cache.
+
+            //LocatorToTexCoordTable locatorToTexCoordTable;
+            //TileModelCompiler::LocatorToTexCoordTable texCoordArrayCache;
+
+            d.renderLayers.reserve( d.model->_colorData.size() );
+
+            // build a list of "render layers", in rendering order, sharing texture coordinate
+            // arrays wherever possible.
+            for( TileModel::ColorDataByUID::const_iterator i = d.model->_colorData.begin(); i != d.model->_colorData.end(); ++i )
+            {
+                const TileModel::ColorData& colorLayer = i->second;
+                RenderLayer r;
+                r._layer = colorLayer;
+
+                const GeoLocator* locator = dynamic_cast<const GeoLocator*>( r._layer.getLocator() );
+                if ( locator )
+                {
+                    // if we have no mask records, we can use the texture coordinate array cache.
+                    if ( d.maskRecords.size() == 0 )
+                    {
+                        const GeoExtent& locex = locator->getDataExtent();
+                        const GeoExtent& keyex = d.model->_tileKey.getExtent();
+
+                        osg::Vec4d mat;
+                        mat[0] = (keyex.xMin() - locex.xMin())/locex.width();
+                        mat[1] = (keyex.yMin() - locex.yMin())/locex.height();
+                        mat[2] = (keyex.width() / locex.width());
+                        mat[3] = (keyex.height() / locex.height());
+
+                        //OE_DEBUG << "key=" << d.model->_tileKey.str() << ": off=[" <<mat[0]<< ", " <<mat[1] << "] scale=["
+                        //    << mat[2]<< ", " << mat[3] << "]" << std::endl;
+
+                        osg::ref_ptr<osg::Vec2Array>& surfaceTexCoords = cache._surfaceTexCoordArrays.get( mat, d.numCols, d.numRows );
+                        if ( !surfaceTexCoords.valid() )
+                        {
+                            // Note: anything in the cache must have its own VBO. No sharing!
+                            surfaceTexCoords = new osg::Vec2Array();
+                            surfaceTexCoords->setVertexBufferObject( new osg::VertexBufferObject() );
+                            surfaceTexCoords->reserve( d.numVerticesInSurface );
+                            r._ownsTexCoords = true;
+                        }
+                        r._texCoords = surfaceTexCoords.get();
+
+                        osg::ref_ptr<osg::Vec2Array>& skirtTexCoords = cache._skirtTexCoordArrays.get( mat, d.numCols, d.numRows );
+                        if ( !skirtTexCoords.valid() )
+                        {
+                            // Note: anything in the cache must have its own VBO. No sharing!
+                            skirtTexCoords = new osg::Vec2Array();
+                            skirtTexCoords->setVertexBufferObject( new osg::VertexBufferObject() );
+                            skirtTexCoords->reserve( d.numVerticesInSkirt );
+                            r._ownsSkirtTexCoords = true;
+                        }
+                        r._skirtTexCoords = skirtTexCoords.get();
+                    }
+
+                    else // if ( d.maskRecords.size() > 0 )
+                    {
+                        // cannot use the tex coord array cache if there are masking records.
+                        r._texCoords = new osg::Vec2Array();
+                        r._texCoords->reserve( d.numVerticesInSurface );
+                        r._ownsTexCoords = true;
+
+                        r._skirtTexCoords = new osg::Vec2Array();
+                        r._skirtTexCoords->reserve( d.numVerticesInSkirt );
+                        r._ownsSkirtTexCoords = true;
+                    
+                        r._stitchTexCoords = new osg::Vec2Array();
+                        r._stitchSkirtTexCoords = new osg::Vec2Array();
+                    }
+
+                    r._locator = locator;
+                    if ( locator->getCoordinateSystemType() == osgTerrain::Locator::GEOCENTRIC )
+                    {
+                        const GeoLocator* geo = dynamic_cast<const GeoLocator*>(locator);
+                        if ( geo )
+                            r._locator = geo->getGeographicFromGeocentric();
+                    }
+
+                    d.renderLayers.push_back( r );
+
+                    // Note that we don't actually assign the tex coord arrays to the geometry yet.
+                    // That must wait until the end. See the comments in assignTextureArrays()
+                    // to understand why.
+                }
+                else
+                {
+                    OE_WARN << LC << "Found a Locator, but it wasn't a GeoLocator." << std::endl;
+                }
+            }
+        }
+    }
+
+
+    /**
+     * Assigns any texture coordinate arrays to the corresponding geometry.
+     *
+     * NOTE: This has to happen AFTER all other arrays have been assigned to the geometry.
+     * Here is why:
+     *
+     * This compiler attempts to share texture coordinate arrays between tiles where possible.
+     * When you call Geometry::setVertexArray (or other similar functions) OSG attempts to find
+     * an existing VBO that it can use to attach to the array. If a shared texture coordinate
+     * array is in the Geometry, and OSG will find its VBO and attempt to use it so store the
+     * buffer data for the new array. In doing do it will be modifying a VBO that is potentially
+     * in use by another thread, causing a crash.
+     *
+     * By assigning the shared arrays last, we prevent this from happening.
+     */
+    void assignTextureArrays( Data& d, TextureCompositor* compositor )
+    {
+        for( RenderLayerVector::const_iterator r = d.renderLayers.begin(); r != d.renderLayers.end(); ++r )
+        {
+            compositor->assignTexCoordArray( d.surface, r->_layer.getUID(), r->_texCoords.get() );
+            compositor->assignTexCoordArray( d.skirt,   r->_layer.getUID(), r->_skirtTexCoords.get() );
+
+            // If we have mask stitching geometries, those need tex coords too:
+            for ( MaskRecordVector::iterator mr = d.maskRecords.begin(); mr != d.maskRecords.end(); ++mr )
+            {
+                compositor->assignTexCoordArray( (*mr)._geom, r->_layer.getUID(), r->_stitchTexCoords.get() );
+            }
+
+            if (d.stitching_skirts)
+            {
+                compositor->assignTexCoordArray( d.stitching_skirts, r->_layer.getUID(), r->_stitchSkirtTexCoords.get() );
+            }
+        }
+    }
+
+
+    /**
+     * Iterate over the sampling grid and calculate the vertex positions and normals
+     * for each sampling point.
+     */
+    void createSurfaceGeometry( Data& d, TextureCompositor* compositor )
+    {
+        d.surfaceBound.init();
+
+        osgTerrain::HeightFieldLayer* elevationLayer = d.model->_elevationData.getHFLayer();
+
+        // populate vertex and tex coord arrays    
+        for(unsigned j=0; j < d.numRows; ++j)
+        {
+            for(unsigned i=0; i < d.numCols; ++i)
+            {
+                unsigned int iv = j*d.numCols + i;
+                osg::Vec3d ndc( ((double)i)/(double)(d.numCols-1), ((double)j)/(double)(d.numRows-1), 0.0);
+
+                bool validValue = true;
+
+                // use the sampling factor to determine the lookup index:
+                unsigned i_equiv = d.i_sampleFactor==1.0 ? i : (unsigned) (double(i)*d.i_sampleFactor);
+                unsigned j_equiv = d.j_sampleFactor==1.0 ? j : (unsigned) (double(j)*d.j_sampleFactor);
+
+                // raw height:
+                float heightValue = 0.0f;
+
+                if ( elevationLayer )
+                {
+                    validValue = elevationLayer->getValidValue(i_equiv,j_equiv, heightValue);
+                    ndc.z() = heightValue; //*scaleHeight; // scaling will be done in the shader
+                }
+
+                // First check whether the sampling point falls within a mask's bounding box.
+                // If so, skip the sampling and mark it as a mask location
+                if ( validValue && d.maskRecords.size() > 0 )
+                {
+                    for (MaskRecordVector::iterator mr = d.maskRecords.begin(); mr != d.maskRecords.end(); ++mr)
+                    {
+                        if(ndc.x() >= (*mr)._ndcMin.x() && ndc.x() <= (*mr)._ndcMax.x() &&
+                            ndc.y() >= (*mr)._ndcMin.y() && ndc.y() <= (*mr)._ndcMax.y())
+                        {
+                            validValue = false;
+                            d.indices[iv] = -2;
+
+                            (*mr)._internal->push_back(ndc);
+
+                            break;
+                        }
+                    }
+                }
+                
+                if ( validValue )
+                {
+                    d.indices[iv] = d.surfaceVerts->size();
+
+                    osg::Vec3d model;
+                    d.model->_tileLocator->unitToModel( ndc, model );
+
+                    (*d.surfaceVerts).push_back(model - d.centerModel);
+
+                    // grow the bounding sphere:
+                    d.surfaceBound.expandBy( (*d.surfaceVerts).back() );
+
+
+                    if ( compositor->requiresUnitTextureSpace() )
+                    {
+                        // the unified unit texture space requires a single, untransformed unit coord [0..1]
+                        (*d.unifiedSurfaceTexCoords).push_back( osg::Vec2( ndc.x(), ndc.y() ) );
+                    }
+                    else
+                    {
+                        // the separate texture space requires separate transformed texcoords for each layer.
+                        for( RenderLayerVector::const_iterator r = d.renderLayers.begin(); r != d.renderLayers.end(); ++r )
+                        {
+                            if ( r->_ownsTexCoords )
+                            {
+                                if ( !r->_locator->isEquivalentTo( *d.geoLocator.get() ) )
+                                {
+                                    osg::Vec3d color_ndc;
+                                    osgTerrain::Locator::convertLocalCoordBetween( *d.geoLocator.get(), ndc, *r->_locator.get(), color_ndc );
+                                    r->_texCoords->push_back( osg::Vec2( color_ndc.x(), color_ndc.y() ) );
+                                }
+                                else
+                                {
+                                    r->_texCoords->push_back( osg::Vec2( ndc.x(), ndc.y() ) );
+                                }
+                            }
+                        }
+                    }
+
+                    // record the raw elevation value in our float array for later
+                    (*d.elevations).push_back(ndc.z());
+
+                    // compute the local normal
+                    osg::Vec3d ndc_one = ndc; ndc_one.z() += 1.0;
+                    osg::Vec3d model_one;
+                    //_masterLocator->convertLocalToModel(ndc_one, model_one);
+                    d.model->_tileLocator->unitToModel(ndc_one, model_one);
+                    model_one = model_one - model;
+                    model_one.normalize();    
+
+                    //(*normals)[k] = model_one;
+                    (*d.normals).push_back(model_one);
+
+                    // store the unit extrusion vector and the raw height value.
+                    (*d.surfaceElevData).push_back( osg::Vec4f(model_one.x(), model_one.y(), model_one.z(), heightValue) );
+                }
+            }
+        }
+    }
+
+
+    /**
+     * If there are masking records, calculate the vertices to bound the masked area
+     * and the internal verticies to populate it. Then build a triangulation of the
+     * area inside the masking bounding box and add this to the surface geode.
+     */
+    void createMaskGeometry( Data& d, TextureCompositor* compositor )
+    {
+        osgTerrain::HeightFieldLayer* elevationLayer = d.model->_elevationData.getHFLayer();
+
+        for (MaskRecordVector::iterator mr = d.maskRecords.begin(); mr != d.maskRecords.end(); ++mr)
+        {
+            int min_i = (int)floor((*mr)._ndcMin.x() * (double)(d.numCols-1));
+            if (min_i < 0) min_i = 0;
+            if (min_i >= (int)d.numCols) min_i = d.numCols - 1;
+
+            int min_j = (int)floor((*mr)._ndcMin.y() * (double)(d.numRows-1));
+            if (min_j < 0) min_j = 0;
+            if (min_j >= (int)d.numCols) min_j = d.numCols - 1;
+
+            int max_i = (int)ceil((*mr)._ndcMax.x() * (double)(d.numCols-1));
+            if (max_i < 0) max_i = 0;
+            if (max_i >= (int)d.numCols) max_i = d.numCols - 1;
+
+            int max_j = (int)ceil((*mr)._ndcMax.y() * (double)(d.numRows-1));
+            if (max_j < 0) max_j = 0;
+            if (max_j >= (int)d.numCols) max_j = d.numCols - 1;
+
+            if (min_i >= 0 && max_i >= 0 && min_j >= 0 && max_j >= 0)
+            {
+                int num_i = max_i - min_i + 1;
+                int num_j = max_j - min_j + 1;
+
+                osg::ref_ptr<Polygon> maskSkirtPoly = new Polygon();
+                maskSkirtPoly->resize(num_i * 2 + num_j * 2 - 4);
+
+                for (int i = 0; i < num_i; i++)
+                {
+                    //int index = indices[min_j*numColumns + i + min_i];
+                    {
+                        osg::Vec3d ndc( ((double)(i + min_i))/(double)(d.numCols-1), ((double)min_j)/(double)(d.numRows-1), 0.0);
+
+                        if (elevationLayer)
+                        {
+                            unsigned i_equiv = d.i_sampleFactor==1.0 ? i + min_i : (unsigned) (double(i + min_i)*d.i_sampleFactor);
+                            unsigned j_equiv = d.j_sampleFactor==1.0 ? min_j : (unsigned) (double(min_j)*d.j_sampleFactor);
+
+                            float value = 0.0f;
+                            if (elevationLayer->getValidValue(i_equiv,j_equiv, value))
+                                ndc.z() = value*d.scaleHeight;
+                        }
+
+                        (*maskSkirtPoly)[i] = ndc;
+                    }
+
+                    //index = indices[max_j*numColumns + i + min_i];
+                    {
+                        osg::Vec3d ndc( ((double)(i + min_i))/(double)(d.numCols-1), ((double)max_j)/(double)(d.numRows-1), 0.0);
+
+                        if (elevationLayer)
+                        {
+                            unsigned i_equiv = d.i_sampleFactor==1.0 ? i + min_i : (unsigned) (double(i + min_i)*d.i_sampleFactor);
+                            unsigned j_equiv = d.j_sampleFactor==1.0 ? max_j : (unsigned) (double(max_j)*d.j_sampleFactor);
+
+                            float value = 0.0f;
+                            if (elevationLayer->getValidValue(i_equiv,j_equiv, value))
+                                ndc.z() = value*d.scaleHeight;
+                        }
+
+                        (*maskSkirtPoly)[i + (2 * num_i + num_j - 3) - 2 * i] = ndc;
+                    }
+                }
+                for (int j = 0; j < num_j - 2; j++)
+                {
+                    //int index = indices[(min_j + j + 1)*numColumns + max_i];
+                    {
+                        osg::Vec3d ndc( ((double)max_i)/(double)(d.numCols-1), ((double)(min_j + j + 1))/(double)(d.numRows-1), 0.0);
+
+                        if (elevationLayer)
+                        {
+                            unsigned int i_equiv = d.i_sampleFactor==1.0 ? max_i : (unsigned int) (double(max_i)*d.i_sampleFactor);
+                            unsigned int j_equiv = d.j_sampleFactor==1.0 ? min_j + j + 1 : (unsigned int) (double(min_j + j + 1)*d.j_sampleFactor);
+
+                            float value = 0.0f;
+                            if (elevationLayer->getValidValue(i_equiv,j_equiv, value))
+                                ndc.z() = value*d.scaleHeight;
+                        }
+
+                        (*maskSkirtPoly)[j + num_i] = ndc;
+                    }
+
+                    //index = indices[(min_j + j + 1)*numColumns + min_i];
+                    {
+                        osg::Vec3d ndc( ((double)min_i)/(double)(d.numCols-1), ((double)(min_j + j + 1))/(double)(d.numRows-1), 0.0);
+
+                        if (elevationLayer)
+                        {
+                            unsigned int i_equiv = d.i_sampleFactor==1.0 ? min_i : (unsigned int) (double(min_i)*d.i_sampleFactor);
+                            unsigned int j_equiv = d.j_sampleFactor==1.0 ? min_j + j + 1 : (unsigned int) (double(min_j + j + 1)*d.j_sampleFactor);
+
+                            float value = 0.0f;
+                            if (elevationLayer->getValidValue(i_equiv,j_equiv, value))
+                                ndc.z() = value*d.scaleHeight;
+                        }
+
+                        (*maskSkirtPoly)[j + (2 * num_i + 2 * num_j - 5) - 2 * j] = ndc;
+                    }
+                }
+
+                //Create local polygon representing mask
+                osg::ref_ptr<Polygon> maskPoly = new Polygon();
+                for (osg::Vec3dArray::iterator it = (*mr)._boundary->begin(); it != (*mr)._boundary->end(); ++it)
+                {
+                    osg::Vec3d local;
+                    d.geoLocator->convertModelToLocal(*it, local);
+                    maskPoly->push_back(local);
+                }
+
+
+                // Use delaunay triangulation for stitching:
+
+                // Add the outter stitching bounds to the collection of vertices to be used for triangulation
+                (*mr)._internal->insert((*mr)._internal->end(), maskSkirtPoly->begin(), maskSkirtPoly->end());
+
+                osg::ref_ptr<osgUtil::DelaunayTriangulator> trig=new osgUtil::DelaunayTriangulator();
+                trig->setInputPointArray((*mr)._internal.get());
+
+
+                // Add mask bounds as a triangulation constraint
+                osg::ref_ptr<osgUtil::DelaunayConstraint> dc=new osgUtil::DelaunayConstraint;
+
+                osg::Vec3Array* maskConstraint = new osg::Vec3Array();
+                dc->setVertexArray(maskConstraint);
+
+                if ( maskConstraint->getVertexBufferObject() )
+                    maskConstraint->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+                //Crop the mask to the stitching poly (for case where mask crosses tile edge)
+                osg::ref_ptr<Geometry> maskCrop;
+                maskPoly->crop(maskSkirtPoly.get(), maskCrop);
+
+                GeometryIterator i( maskCrop.get(), false );
+                while( i.hasMore() )
+                {
+                    Geometry* part = i.next();
+                    if (!part)
+                        continue;
+
+                    if (part->getType() == Geometry::TYPE_POLYGON)
+                    {
+                        osg::Vec3Array* partVerts = part->toVec3Array();
+                        maskConstraint->insert(maskConstraint->end(), partVerts->begin(), partVerts->end());
+                        dc->addPrimitiveSet(new osg::DrawArrays(osg::PrimitiveSet::LINE_LOOP, maskConstraint->size() - partVerts->size(), partVerts->size()));
+                    }
+                }
+
+                // Cropping strips z-values so need reassign
+                std::vector<int> isZSet;
+                for (osg::Vec3Array::iterator it = maskConstraint->begin(); it != maskConstraint->end(); ++it)
+                {
+                    int zSet = 0;
+
+                    //Look for verts that belong to the original mask skirt polygon
+                    for (Polygon::iterator mit = maskSkirtPoly->begin(); mit != maskSkirtPoly->end(); ++mit)
+                    {
+                        if (osg::absolute((*mit).x() - (*it).x()) < MATCH_TOLERANCE && osg::absolute((*mit).y() - (*it).y()) < MATCH_TOLERANCE)
+                        {
+                            (*it).z() = (*mit).z();
+                            zSet += 1;
+                            break;
+                        }
+                    }
+
+                    //Look for verts that belong to the mask polygon
+                    for (Polygon::iterator mit = maskPoly->begin(); mit != maskPoly->end(); ++mit)
+                    {
+                        if (osg::absolute((*mit).x() - (*it).x()) < MATCH_TOLERANCE && osg::absolute((*mit).y() - (*it).y()) < MATCH_TOLERANCE)
+                        {
+                            (*it).z() = (*mit).z();
+                            zSet += 2;
+                            break;
+                        }
+                    }
+
+                    isZSet.push_back(zSet);
+                }
+
+                //Any mask skirt verts that are still unset are newly created verts where the skirt
+                //meets the mask. Find the mask segment the point lies along and calculate the
+                //appropriate z value for the point.
+                int count = 0;
+                for (osg::Vec3Array::iterator it = maskConstraint->begin(); it != maskConstraint->end(); ++it)
+                {
+                    //If the z-value was set from a mask vertex there is no need to change it.  If
+                    //it was set from a vertex from the stitching polygon it may need overriden if
+                    //the vertex lies along a mask edge.  Or if it is unset, it will need to be set.
+                    //if (isZSet[count] < 2)
+                    if (!isZSet[count])
+                    {
+                        osg::Vec3d p2 = *it;
+                        double closestZ = 0.0;
+                        double closestRatio = DBL_MAX;
+                        for (Polygon::iterator mit = maskPoly->begin(); mit != maskPoly->end(); ++mit)
+                        {
+                            osg::Vec3d p1 = *mit;
+                            osg::Vec3d p3 = mit == --maskPoly->end() ? maskPoly->front() : (*(mit + 1));
+
+                            //Truncated vales to compensate for accuracy issues
+                            double p1x = ((int)(p1.x() * 1000000)) / 1000000.0L;
+                            double p3x = ((int)(p3.x() * 1000000)) / 1000000.0L;
+                            double p2x = ((int)(p2.x() * 1000000)) / 1000000.0L;
+
+                            double p1y = ((int)(p1.y() * 1000000)) / 1000000.0L;
+                            double p3y = ((int)(p3.y() * 1000000)) / 1000000.0L;
+                            double p2y = ((int)(p2.y() * 1000000)) / 1000000.0L;
+
+                            if ((p1x < p3x ? p2x >= p1x && p2x <= p3x : p2x >= p3x && p2x <= p1x) &&
+                                (p1y < p3y ? p2y >= p1y && p2y <= p3y : p2y >= p3y && p2y <= p1y))
+                            {
+                                double l1 =(osg::Vec2d(p2.x(), p2.y()) - osg::Vec2d(p1.x(), p1.y())).length();
+                                double lt = (osg::Vec2d(p3.x(), p3.y()) - osg::Vec2d(p1.x(), p1.y())).length();
+                                double zmag = p3.z() - p1.z();
+
+                                double foundZ = (l1 / lt) * zmag + p1.z();
+
+                                double mRatio = 1.0;
+                                if (osg::absolute(p1x - p3x) < MATCH_TOLERANCE)
+                                {
+                                    if (osg::absolute(p1x-p2x) < MATCH_TOLERANCE)
+                                        mRatio = 0.0;
+                                }
+                                else
+                                {
+                                    double m1 = p1x == p2x ? 0.0 : (p2y - p1y) / (p2x - p1x);
+                                    double m2 = p1x == p3x ? 0.0 : (p3y - p1y) / (p3x - p1x);
+                                    mRatio = m2 == 0.0 ? m1 : osg::absolute(1.0L - m1 / m2);
+                                }
+
+                                if (mRatio < 0.01)
+                                {
+                                    (*it).z() = foundZ;
+                                    isZSet[count] = 2;
+                                    break;
+                                }
+                                else if (mRatio < closestRatio)
+                                {
+                                    closestRatio = mRatio;
+                                    closestZ = foundZ;
+                                }
+                            }
+                        }
+
+                        if (!isZSet[count] && closestRatio < DBL_MAX)
+                        {
+                            (*it).z() = closestZ;
+                            isZSet[count] = 2;
+                        }
+                    }
+
+                    if (!isZSet[count])
+                        OE_WARN << LC << "Z-value not set for mask constraint vertex" << std::endl;
+
+                    count++;
+                }
+
+                trig->addInputConstraint(dc.get());
+
+
+                // Create array to hold vertex normals
+                osg::Vec3Array *norms=new osg::Vec3Array;
+                trig->setOutputNormalArray(norms);
+
+
+                // Triangulate vertices and remove triangles that lie within the contraint loop
+                trig->triangulate();
+                trig->removeInternalTriangles(dc.get());
+
+
+                // Set up new arrays to hold final vertices and normals
+                osg::Geometry* stitch_geom = (*mr)._geom;
+                osg::Vec3Array* stitch_verts = new osg::Vec3Array();
+                stitch_verts->reserve(trig->getInputPointArray()->size());
+                stitch_geom->setVertexArray(stitch_verts);
+                if ( stitch_verts->getVertexBufferObject() )
+                    stitch_verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+                osg::Vec3Array* stitch_norms = new osg::Vec3Array(trig->getInputPointArray()->size());
+                stitch_geom->setNormalArray( stitch_norms );
+                stitch_geom->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+
+                //Initialize tex coords
+                osg::Vec2Array* unifiedStitchTexCoords = 0L;
+                if (compositor->requiresUnitTextureSpace())
+                {
+                    unifiedStitchTexCoords = new osg::Vec2Array();
+                    unifiedStitchTexCoords->reserve(trig->getInputPointArray()->size());
+                    stitch_geom->setTexCoordArray(0, unifiedStitchTexCoords);
+                }
+                else if ( d.renderLayers.size() > 0 )
+                {
+                    for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                    {
+                        d.renderLayers[i]._stitchTexCoords->reserve(trig->getInputPointArray()->size());
+                    }
+                }
+
+                // Iterate through point to convert to model coords, calculate normals, and set up tex coords
+                int norm_i = -1;
+                for (osg::Vec3Array::iterator it = trig->getInputPointArray()->begin(); it != trig->getInputPointArray()->end(); ++it)
+                {
+                    // get model coords
+                    osg::Vec3d model;
+                    d.model->_tileLocator->convertLocalToModel(*it, model);
+                    model = model - d.centerModel;
+
+                    stitch_verts->push_back(model);
+
+                    // calc normals
+                    osg::Vec3d local_one(*it);
+                    local_one.z() += 1.0;
+                    osg::Vec3d model_one;
+                    d.model->_tileLocator->convertLocalToModel( local_one, model_one );
+                    model_one = model_one - model;
+                    model_one.normalize();
+                    (*stitch_norms)[++norm_i] = model_one;
+
+                    // set up text coords
+                    if (compositor->requiresUnitTextureSpace())
+                    {
+                        unifiedStitchTexCoords->push_back(osg::Vec2((*it).x(), (*it).y()));
+                    }
+                    else if (d.renderLayers.size() > 0)
+                    {
+                        for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                        {
+                            if (!d.renderLayers[i]._locator->isEquivalentTo( *d.geoLocator.get() )) //*masterTextureLocator.get()))
+                            {
+                                osg::Vec3d color_ndc;
+                                osgTerrain::Locator::convertLocalCoordBetween(*d.geoLocator.get(), (*it), *d.renderLayers[i]._locator.get(), color_ndc);
+                                //osgTerrain::Locator::convertLocalCoordBetween(*masterTextureLocator.get(), (*it), *renderLayers[i]._locator.get(), color_ndc);
+                                d.renderLayers[i]._stitchTexCoords->push_back(osg::Vec2(color_ndc.x(), color_ndc.y()));
+                            }
+                            else
+                            {
+                                d.renderLayers[i]._stitchTexCoords->push_back(osg::Vec2((*it).x(), (*it).y()));
+                            }
+                        }
+                    }
+                }
+
+
+                // Get triangles from triangulator and add as primative set to the geometry
+                stitch_geom->addPrimitiveSet(trig->getTriangles());
+            }
+        }
+    }
+
+
+    /**
+     * Build the geometry for the tile "skirts" -- this the vertical geometry around the
+     * tile edges that hides the gap effect caused when you render two adjacent tiles at
+     * different LODs.
+     */
+    void createSkirtGeometry( Data& d, TextureCompositor* compositor, double skirtRatio )
+    {
+        // surface normals will double as our skirt extrusion vectors
+        osg::Vec3Array* skirtVectors = d.normals;
+
+        // find the skirt height
+        double skirtHeight = d.surfaceBound.radius() * skirtRatio;
+
+        // build the verts first:
+        osg::Vec3Array* skirtVerts = new osg::Vec3Array();
+        osg::Vec3Array* skirtNormals = new osg::Vec3Array();
+        osg::Vec4Array* skirtElevData = new osg::Vec4Array();
+
+        skirtVerts->reserve( d.numVerticesInSkirt );
+        skirtNormals->reserve( d.numVerticesInSkirt );
+        skirtElevData->reserve( d.numVerticesInSkirt );
+
+        Indices skirtBreaks;
+        skirtBreaks.reserve( d.numVerticesInSkirt );
+        skirtBreaks.push_back(0);
+
+        // bottom:
+        for( unsigned int c=0; c<d.numCols-1; ++c )
+        {
+            int orig_i = d.indices[c];
+
+            if (orig_i < 0)
+            {
+                if (skirtBreaks.back() != skirtVerts->size())
+                    skirtBreaks.push_back(skirtVerts->size());
+            }
+            else
+            {
+                const osg::Vec3f& surfaceVert = (*d.surfaceVerts)[orig_i];
+                skirtVerts->push_back( surfaceVert );
+                skirtVerts->push_back( surfaceVert - ((*skirtVectors)[orig_i])*skirtHeight );
+
+                const osg::Vec3f& surfaceNormal = (*d.normals)[orig_i];
+                skirtNormals->push_back( surfaceNormal );
+                skirtNormals->push_back( surfaceNormal );
+
+                const osg::Vec4f& elevData = (*d.surfaceElevData)[orig_i];
+                skirtElevData->push_back( elevData );
+                skirtElevData->push_back( elevData - osg::Vec4f(0,0,0,skirtHeight) );
+
+                if ( compositor->requiresUnitTextureSpace() )
+                {
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                }
+                else if ( d.renderLayers.size() > 0 )
+                {
+                    for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                    {
+                        if ( d.renderLayers[i]._ownsSkirtTexCoords )
+                        {
+                            const osg::Vec2& tc = (*d.renderLayers[i]._texCoords.get())[orig_i];
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                        }
+                    }
+                }
+            }
+        }
+
+        // right:
+        for( unsigned int r=0; r<d.numRows-1; ++r )
+        {
+            int orig_i = d.indices[r*d.numCols+(d.numCols-1)];
+            if (orig_i < 0)
+            {
+                if (skirtBreaks.back() != skirtVerts->size())
+                    skirtBreaks.push_back(skirtVerts->size());
+            }
+            else
+            {
+                const osg::Vec3f& surfaceVert = (*d.surfaceVerts)[orig_i];
+                skirtVerts->push_back( surfaceVert );
+                skirtVerts->push_back( surfaceVert - ((*skirtVectors)[orig_i])*skirtHeight );
+
+                const osg::Vec3f& surfaceNormal = (*d.normals)[orig_i];
+                skirtNormals->push_back( surfaceNormal );
+                skirtNormals->push_back( surfaceNormal );
+
+                const osg::Vec4f& elevData = (*d.surfaceElevData)[orig_i];
+                skirtElevData->push_back( elevData );
+                skirtElevData->push_back( elevData - osg::Vec4f(0,0,0,skirtHeight) );
+
+                if ( compositor->requiresUnitTextureSpace() )
+                {
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                }
+                else if ( d.renderLayers.size() > 0 )
+                {
+                    for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                    {
+                        if ( d.renderLayers[i]._ownsSkirtTexCoords )
+                        {
+                            const osg::Vec2& tc = (*d.renderLayers[i]._texCoords.get())[orig_i];
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                        }
+                    }
+                }
+            }
+        }
+
+        // top:
+        for( int c=d.numCols-1; c>0; --c )
+        {
+            int orig_i = d.indices[(d.numRows-1)*d.numCols+c];
+            if (orig_i < 0)
+            {
+                if (skirtBreaks.back() != skirtVerts->size())
+                    skirtBreaks.push_back(skirtVerts->size());
+            }
+            else
+            {
+                const osg::Vec3f& surfaceVert = (*d.surfaceVerts)[orig_i];
+                skirtVerts->push_back( surfaceVert );
+                skirtVerts->push_back( surfaceVert - ((*skirtVectors)[orig_i])*skirtHeight );
+
+                const osg::Vec3f& surfaceNormal = (*d.normals)[orig_i];
+                skirtNormals->push_back( surfaceNormal );
+                skirtNormals->push_back( surfaceNormal );
+
+                const osg::Vec4f& elevData = (*d.surfaceElevData)[orig_i];
+                skirtElevData->push_back( elevData );
+                skirtElevData->push_back( elevData - osg::Vec4f(0,0,0,skirtHeight) );
+
+                if ( compositor->requiresUnitTextureSpace() )
+                {
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                }
+                else if ( d.renderLayers.size() > 0 )
+                {
+                    for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                    {
+                        if ( d.renderLayers[i]._ownsSkirtTexCoords )
+                        {
+                            const osg::Vec2& tc = (*d.renderLayers[i]._texCoords.get())[orig_i];
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                        }
+                    }
+                }
+            }
+        }
+
+        // left:
+        for( int r=d.numRows-1; r>=0; --r )
+        {
+            int orig_i = d.indices[r*d.numCols];
+            if (orig_i < 0)
+            {
+                if (skirtBreaks.back() != skirtVerts->size())
+                    skirtBreaks.push_back(skirtVerts->size());
+            }
+            else
+            {
+                const osg::Vec3f& surfaceVert = (*d.surfaceVerts)[orig_i];
+                skirtVerts->push_back( surfaceVert );
+                skirtVerts->push_back( surfaceVert - ((*skirtVectors)[orig_i])*skirtHeight );
+
+                const osg::Vec3f& surfaceNormal = (*d.normals)[orig_i];
+                skirtNormals->push_back( surfaceNormal );
+                skirtNormals->push_back( surfaceNormal );
+
+                const osg::Vec4f& elevData = (*d.surfaceElevData)[orig_i];
+                skirtElevData->push_back( elevData );
+                skirtElevData->push_back( elevData - osg::Vec4f(0,0,0,skirtHeight) );
+
+                if ( compositor->requiresUnitTextureSpace() )
+                {
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                    d.unifiedSkirtTexCoords->push_back( (*d.unifiedSurfaceTexCoords)[orig_i] );
+                }
+                else if ( d.renderLayers.size() > 0 )
+                {
+                    for (unsigned int i = 0; i < d.renderLayers.size(); ++i)
+                    {
+                        if ( d.renderLayers[i]._ownsSkirtTexCoords )
+                        {
+                            const osg::Vec2& tc = (*d.renderLayers[i]._texCoords.get())[orig_i];
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                            d.renderLayers[i]._skirtTexCoords->push_back( tc );
+                        }
+                    }
+                }
+            }
+        }
+
+        d.skirt->setVertexArray( skirtVerts );
+        if ( skirtVerts->getVertexBufferObject() )
+            skirtVerts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
+        d.skirt->setNormalArray( skirtNormals );
+        d.skirt->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+        d.skirt->setVertexAttribArray    (osg::Drawable::ATTRIBUTE_6, skirtElevData );
+        d.skirt->setVertexAttribBinding  (osg::Drawable::ATTRIBUTE_6, osg::Geometry::BIND_PER_VERTEX);
+        d.skirt->setVertexAttribNormalize(osg::Drawable::ATTRIBUTE_6, false);
+
+
+        // GW: not sure why this break stuff is here...?
+#if 0
+        //Add a primative set for each continuous skirt strip
+        skirtBreaks.push_back(skirtVerts->size());
+        for (int p=1; p < (int)skirtBreaks.size(); p++)
+            d.skirt->addPrimitiveSet( new osg::DrawArrays( GL_TRIANGLE_STRIP, skirtBreaks[p-1], skirtBreaks[p] - skirtBreaks[p-1] ) );
+#else
+        d.skirt->addPrimitiveSet( new osg::DrawArrays(GL_TRIANGLE_STRIP, 0, skirtVerts->size()) );
+#endif
+    }
+
+
+
+    /**
+     * Builds triangles for the surface geometry, and recalculates the surface normals
+     * to be optimized for slope.
+     */
+    void tessellateSurfaceGeometry( Data& d, bool optimizeTriangleOrientation )
+    {    
+        bool swapOrientation = !(d.model->_tileLocator->orientationOpenGL());
+        bool recalcNormals   = d.model->_elevationData.getHFLayer() != 0L;
+
+        osg::DrawElements* elements;
+
+        if ( d.surfaceVerts->size() < 0xFF )
+            elements = new osg::DrawElementsUByte(GL_TRIANGLES);
+        else if ( d.surfaceVerts->size() < 0xFFFF )
+            elements = new osg::DrawElementsUShort(GL_TRIANGLES);
+        else
+            elements = new osg::DrawElementsUShort(GL_TRIANGLES);
+
+        //DrawElementsUShort* elements = new osg::DrawElementsUShort(GL_TRIANGLES);
+        elements->reserveElements((d.numRows-1) * (d.numCols-1) * 6);
+        d.surface->addPrimitiveSet( elements );
+
+        if ( recalcNormals )
+        {
+            // first clear out all the normals:
+            for( osg::Vec3Array::iterator nitr = d.normals->begin(); nitr != d.normals->end(); ++nitr )
+            {
+                nitr->set( 0.0f, 0.0f, 0.0f );
+            }
+        }
+
+        for(unsigned j=0; j<d.numRows-1; ++j)
+        {
+            for(unsigned i=0; i<d.numCols-1; ++i)
+            {
+                int i00;
+                int i01;
+                if (swapOrientation)
+                {
+                    i01 = j*d.numCols + i;
+                    i00 = i01+d.numCols;
+                }
+                else
+                {
+                    i00 = j*d.numCols + i;
+                    i01 = i00+d.numCols;
+                }
+
+                int i10 = i00+1;
+                int i11 = i01+1;
+
+                // remap indices to final vertex positions
+                i00 = d.indices[i00];
+                i01 = d.indices[i01];
+                i10 = d.indices[i10];
+                i11 = d.indices[i11];
+
+                unsigned int numValid = 0;
+                if (i00>=0) ++numValid;
+                if (i01>=0) ++numValid;
+                if (i10>=0) ++numValid;
+                if (i11>=0) ++numValid;
+
+                if (numValid==4)
+                {
+                    bool VALID = true;
+                    for (MaskRecordVector::iterator mr = d.maskRecords.begin(); mr != d.maskRecords.end(); ++mr)
+                    {
+                        float min_i = (*mr)._ndcMin.x() * (double)(d.numCols-1);
+                        float min_j = (*mr)._ndcMin.y() * (double)(d.numRows-1);
+                        float max_i = (*mr)._ndcMax.x() * (double)(d.numCols-1);
+                        float max_j = (*mr)._ndcMax.y() * (double)(d.numRows-1);
+
+                        // We test if mask is completely in square
+                        if(i+1 >= min_i && i <= max_i && j+1 >= min_j && j <= max_j)
+                        {
+                            VALID = false;
+                            break;
+                        }
+                    }
+
+                    if (VALID) {
+                        float e00 = (*d.elevations)[i00];
+                        float e10 = (*d.elevations)[i10];
+                        float e01 = (*d.elevations)[i01];
+                        float e11 = (*d.elevations)[i11];
+
+                        osg::Vec3f& v00 = (*d.surfaceVerts)[i00];
+                        osg::Vec3f& v10 = (*d.surfaceVerts)[i10];
+                        osg::Vec3f& v01 = (*d.surfaceVerts)[i01];
+                        osg::Vec3f& v11 = (*d.surfaceVerts)[i11];
+
+                        if (!optimizeTriangleOrientation || (e00-e11)<fabsf(e01-e10))
+                        {
+                            elements->addElement(i01);
+                            elements->addElement(i00);
+                            elements->addElement(i11);
+
+                            elements->addElement(i00);
+                            elements->addElement(i10);
+                            elements->addElement(i11);
+
+                            if (recalcNormals)
+                            {                        
+                                osg::Vec3 normal1 = (v00-v01) ^ (v11-v01);
+                                (*d.normals)[i01] += normal1;
+                                (*d.normals)[i00] += normal1;
+                                (*d.normals)[i11] += normal1;
+
+                                osg::Vec3 normal2 = (v10-v00) ^ (v11-v00);
+                                (*d.normals)[i00] += normal2;
+                                (*d.normals)[i10] += normal2;
+                                (*d.normals)[i11] += normal2;
+                            }
+                        }
+                        else
+                        {
+                            elements->addElement(i01);
+                            elements->addElement(i00);
+                            elements->addElement(i10);
+
+                            elements->addElement(i01);
+                            elements->addElement(i10);
+                            elements->addElement(i11);
+
+                            if (recalcNormals)
+                            {                       
+                                osg::Vec3 normal1 = (v00-v01) ^ (v10-v01);
+                                (*d.normals)[i01] += normal1;
+                                (*d.normals)[i00] += normal1;
+                                (*d.normals)[i10] += normal1;
+
+                                osg::Vec3 normal2 = (v10-v01) ^ (v11-v01);
+                                (*d.normals)[i01] += normal2;
+                                (*d.normals)[i10] += normal2;
+                                (*d.normals)[i11] += normal2;
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        // Finally, normalize the normals.
+        if ( recalcNormals )
+        {
+            for( osg::Vec3Array::iterator nitr = d.normals->begin(); nitr != d.normals->end(); ++nitr )
+            {
+                nitr->normalize();
+            }
+        }
+    }
+
+
+    /**
+     * Builds a state set for the tile's Geodes that encodes the color layers as textures
+     * according to the setup of the compistor.
+     */
+    osg::StateSet* createStateSet( Data& d, TextureCompositor* compositor )
+    {
+        const GeoExtent& tileExtent = d.geoLocator->getDataExtent();
+
+        osg::StateSet* stateSet = new osg::StateSet();
+
+        // mark as DYNAMIC so we can access it from different threads.
+        // TODO: need thing??
+        // stateSet->setDataVariance( osg::Object::DYNAMIC );
+
+        //TODO: implement this to support blending.
+        osg::StateSet* parentStateSet = d.model->_parentStateSet.get();
+
+        for( TileModel::ColorDataByUID::const_iterator i = d.model->_colorData.begin(); i != d.model->_colorData.end(); ++i )
+        {
+            const TileModel::ColorData& colorLayer = i->second;
+
+            bool isRealData = !colorLayer.isFallbackData();
+
+            osg::ref_ptr<const GeoLocator> layerGeoLocator = dynamic_cast<const GeoLocator*>( colorLayer.getLocator() );
+            if ( layerGeoLocator.valid() )
+            {
+                if ( layerGeoLocator->getCoordinateSystemType() == osgTerrain::Locator::GEOCENTRIC )
+                    layerGeoLocator = layerGeoLocator->getGeographicFromGeocentric();
+
+                GeoImage sourceImage( colorLayer.getImage(), layerGeoLocator->getDataExtent() );
+
+                GeoImage preparedImage = compositor->prepareImage( 
+                    sourceImage, 
+                    tileExtent );
+
+                compositor->applyLayerUpdate( 
+                    stateSet, 
+                    colorLayer.getUID(), 
+                    preparedImage, 
+                    d.model->_tileKey,
+                    isRealData ? parentStateSet : 0L );
+            }
+        }
+
+        return stateSet;
+    }
+
+
+
+    struct CullByTraversalMask : public osg::Drawable::CullCallback
+    {
+        CullByTraversalMask( unsigned mask ) : _mask(mask) { }
+        unsigned _mask;
+
+        bool cull(osg::NodeVisitor* nv, osg::Drawable* drawable, osg::RenderInfo* renderInfo) const 
+        {
+            return ((unsigned)nv->getTraversalMask() & ((unsigned)nv->getNodeMaskOverride() | _mask)) == 0;
+        }
+    };
+}
+
+//------------------------------------------------------------------------
+
+TileModelCompiler::TileModelCompiler(const MaskLayerVector&              masks,
+                                     TextureCompositor*                  texCompositor,
+                                     bool                                optimizeTriOrientation,
+                                     const QuadTreeTerrainEngineOptions& options) :
+_masks                 ( masks ),
+_texCompositor         ( texCompositor ),
+_optimizeTriOrientation( optimizeTriOrientation ),
+_options               ( options )
+{
+    //nop
+
+    _cullByTraversalMask = new CullByTraversalMask(*options.secondaryTraversalMask());
+}
+
+
+bool
+TileModelCompiler::compile(const TileModel* model,
+                           osg::Node*&      out_node,
+                           osg::StateSet*&  out_stateSet)
+{
+    // Working data for the build.
+    Data d(model, _masks);
+
+    d.scaleHeight = *_options.verticalScale();
+
+    // build the transform matrix for this tile:
+    model->_tileLocator->unitToModel( osg::Vec3(0.5f, 0.5f, 0.0), d.centerModel );
+    osg::MatrixTransform* xform = new osg::MatrixTransform( osg::Matrix::translate(d.centerModel) );
+
+    // A Geode/Geometry for the surface:
+    d.surface = new osg::Geometry();
+    d.surface->setUseVertexBufferObjects(true);
+    d.surfaceGeode = new osg::Geode();
+    d.surfaceGeode->addDrawable( d.surface );
+    d.surfaceGeode->setNodeMask( *_options.primaryTraversalMask() );
+
+    xform->addChild( d.surfaceGeode );
+
+    // A Geode/Geometry for the skirt. This is good for traversal masking (e.g. shadows)
+    // but bad since we're not combining the entire tile into a single geometry.
+    // TODO: make this optional?
+    d.createSkirt = (_options.heightFieldSkirtRatio().value() > 0.0);
+
+    if ( d.createSkirt )
+    {
+        d.skirt = new osg::Geometry();
+        d.skirt->setUseVertexBufferObjects(true);
+
+        //d.skirtGeode = new osg::Geode();
+        //d.skirtGeode->addDrawable( d.skirt );
+        //d.skirtGeode->setNodeMask( *_options.secondaryTraversalMask() );
+        //xform->addChild( d.skirtGeode );
+
+        // slightly faster than a separate geode:
+        d.skirt->setDataVariance( osg::Object::DYNAMIC ); // since we're using a custom cull callback
+        d.skirt->setCullCallback( _cullByTraversalMask.get() );
+        d.surfaceGeode->addDrawable( d.skirt );
+    }
+
+
+    // adjust the tile locator for geocentric mode:
+    d.geoLocator = model->_tileLocator->getCoordinateSystemType() == GeoLocator::GEOCENTRIC ? 
+        model->_tileLocator->getGeographicFromGeocentric() :
+        model->_tileLocator.get();
+
+
+    // Set up any geometry-cutting masks:
+    if ( d.maskLayers.size() > 0 )
+        setupMaskRecords( d );
+
+    // allocate all the vertex, normal, and color arrays.
+    double sampleRatio = *_options.heightFieldSampleRatio();
+    if ( sampleRatio <= 0.0f )
+        sampleRatio = osg::clampBetween( model->_tileKey.getLevelOfDetail()/20.0, 0.0625, 1.0 );
+
+    setupGeometryAttributes( d, sampleRatio );
+
+    // set up the list of layers to render and their shared arrays.
+    setupTextureAttributes( d, _texCompositor.get(), _cache );
+
+    // calculate the vertex and normals for the surface geometry.
+    createSurfaceGeometry( d, _texCompositor.get() );
+
+    // build geometry for the masked areas, if applicable
+    if ( d.maskRecords.size() > 0 )
+        createMaskGeometry( d, _texCompositor.get() );
+
+    // build the skirts.
+    if ( d.createSkirt )
+        createSkirtGeometry( d, _texCompositor.get(), *_options.heightFieldSkirtRatio() );
+
+    // tesselate the surface verts into triangles.
+    tessellateSurfaceGeometry( d, _optimizeTriOrientation );
+
+    // assign our texture coordinate arrays to the geometry. This must happen LAST
+    // since we're sharing arrays across tiles. Here is why:
+    assignTextureArrays( d, _texCompositor.get() );
+
+    // create the StateSet that will active texture composition.
+    osg::StateSet* stateSet = createStateSet( d, _texCompositor.get() );
+
+    if ( stateSet )
+        xform->setStateSet( stateSet );
+
+
+    // lastly, optimize the results.
+
+    // unnecessary (I think) since tessellateSurfaceGeometry already makes an optimal
+    // triangle set
+    //if ( d.maskRecords.size() > 0 )
+    //{
+    //    MeshConsolidator::convertToTriangles( *d.surface );
+    //}
+
+    if ( d.skirt )
+    {
+        MeshConsolidator::convertToTriangles( *d.skirt );
+    }
+
+    for (MaskRecordVector::iterator mr = d.maskRecords.begin(); mr != d.maskRecords.end(); ++mr)
+    {
+        MeshConsolidator::convertToTriangles( *((*mr)._geom) );
+    }
+    
+   
+    if (osgDB::Registry::instance()->getBuildKdTreesHint()==osgDB::ReaderWriter::Options::BUILD_KDTREES &&
+        osgDB::Registry::instance()->getKdTreeBuilder())
+    {            
+        osg::ref_ptr<osg::KdTreeBuilder> builder = osgDB::Registry::instance()->getKdTreeBuilder()->clone();
+        xform->accept(*builder);
+    }
+
+    out_node     = xform;
+    out_stateSet = stateSet;
+    return true;
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/TileModelFactory b/src/osgEarthDrivers/engine_quadtree/TileModelFactory
new file mode 100644
index 0000000..39439e7
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileModelFactory
@@ -0,0 +1,63 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_FACTORY
+#define OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_FACTORY 1
+
+#include "Common"
+#include "TileNode"
+#include "TileNodeRegistry"
+#include "QuadTreeTerrainEngineOptions"
+#include <osgEarth/Map>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Group>
+
+using namespace osgEarth;
+
+/**
+ * For a given TileKey, this class builds a a corresponding TileNode from
+ * the map's data model.
+ *
+ * TODO: This should probably change to TileModelFactory or something since
+ * the creation of the TileNode itself is trivial and can be done outside of
+ * this class.
+ */
+class TileModelFactory : public osg::Referenced
+{
+public:
+    TileModelFactory(
+        const Map*                                   map,
+        TileNodeRegistry*                            liveTiles,
+        const Drivers::QuadTreeTerrainEngineOptions& terrainOptions );
+
+    /** dtor */
+    virtual ~TileModelFactory() { }
+
+    void createTileModel(
+        const TileKey&           key,
+        osg::ref_ptr<TileModel>& out_model,
+        bool&                    out_hasRealData,
+        bool&                    out_hasLodBlendedLayers );
+
+private:
+    const Map*                                   _map;
+    osg::ref_ptr<TileNodeRegistry>               _liveTiles;
+    const Drivers::QuadTreeTerrainEngineOptions& _terrainOptions;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TILE_MODEL_FACTORY
diff --git a/src/osgEarthDrivers/engine_quadtree/TileModelFactory.cpp b/src/osgEarthDrivers/engine_quadtree/TileModelFactory.cpp
new file mode 100644
index 0000000..4b013bd
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileModelFactory.cpp
@@ -0,0 +1,323 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TileModelFactory"
+#include <osgEarth/ImageUtils>
+#include <osgEarth/HeightFieldUtils>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+using namespace OpenThreads;
+
+#define LC "[TileModelFactory] "
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct BuildColorData
+    {
+        void init( const TileKey&                      key, 
+                   ImageLayer*                         layer, 
+                   const MapInfo&                      mapInfo,
+                   const QuadTreeTerrainEngineOptions& opt, 
+                   TileModel*                          model )
+        {
+            _key      = key;
+            _layer    = layer;
+            _mapInfo  = &mapInfo;
+            _opt      = &opt;
+            _model    = model;
+            //_repo     = &repo;
+        }
+
+        void execute()
+        {
+            GeoImage geoImage;
+            bool isFallbackData = false;
+
+            bool useMercatorFastPath =
+                _opt->enableMercatorFastPath() != false &&
+                _mapInfo->isGeocentric()                &&
+                _layer->getProfile()                    &&
+                _layer->getProfile()->getSRS()->isSphericalMercator();
+
+            // fetch the image from the layer, falling back on parent keys utils we are 
+            // able to find one that works.
+
+            bool autoFallback = _key.getLevelOfDetail() <= 1;
+
+            TileKey imageKey( _key );
+            TileSource*    tileSource   = _layer->getTileSource();
+            const Profile* layerProfile = _layer->getProfile();
+
+            //Only try to get data from the source if it actually intersects the key extent
+            bool hasDataInExtent = true;
+            if (tileSource && layerProfile)
+            {
+                GeoExtent ext = _key.getExtent();
+                if (!layerProfile->getSRS()->isEquivalentTo( ext.getSRS()))
+                {
+                    ext = layerProfile->clampAndTransformExtent( ext );
+                }
+                hasDataInExtent = tileSource->hasDataInExtent( ext );
+            }
+            
+            if (hasDataInExtent)
+            {
+                while( !geoImage.valid() && imageKey.valid() && _layer->isKeyValid(imageKey) )
+                {
+                    if ( useMercatorFastPath )
+                    {
+                        bool mercFallbackData = false;
+                        geoImage = _layer->createImageInNativeProfile( imageKey, 0L, autoFallback, mercFallbackData );
+                        if ( geoImage.valid() && mercFallbackData )
+                        {
+                            isFallbackData = true;
+                        }
+                    }
+                    else
+                    {
+                        geoImage = _layer->createImage( imageKey, 0L, autoFallback );
+                    }
+
+                    if ( !geoImage.valid() )
+                    {
+                        imageKey = imageKey.createParentKey();
+                        isFallbackData = true;
+                    }
+                }
+            }
+
+            GeoLocator* locator = 0L;
+
+            if ( !geoImage.valid() )
+            {
+                // no image found, so make an empty one (one pixel alpha).
+                geoImage = GeoImage( ImageUtils::createEmptyImage(), _key.getExtent() );
+                locator = GeoLocator::createForKey( _key, *_mapInfo );
+                isFallbackData = true;
+            }
+            else
+            {
+                if ( useMercatorFastPath )
+                    locator = new MercatorLocator(geoImage.getExtent());
+                else
+                    locator = GeoLocator::createForExtent(geoImage.getExtent(), *_mapInfo);
+            }
+
+            // add the color layer to the repo.
+            _model->_colorData[_layer->getUID()] = TileModel::ColorData(
+                _layer,
+                geoImage.getImage(),
+                locator,
+                _key.getLevelOfDetail(),
+                _key,
+                isFallbackData );
+        }
+
+        TileKey        _key;
+        const MapInfo* _mapInfo;
+        ImageLayer*    _layer;
+        TileModel*     _model;
+        const QuadTreeTerrainEngineOptions* _opt;
+    };
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct BuildElevationData
+    {
+        void init(const TileKey& key, const MapFrame& mapf, const QuadTreeTerrainEngineOptions& opt, TileModel* model) //sourceTileNodeBuilder::SourceRepo& repo)
+        {
+            _key   = key;
+            _mapf  = &mapf;
+            _opt   = &opt;
+            _model = model;
+            //_repo = &repo;
+        }
+
+        void execute()
+        {
+            const MapInfo& mapInfo = _mapf->getMapInfo();
+
+            // Request a heightfield from the map, falling back on lower resolution tiles
+            // if necessary (fallback=true)
+            osg::ref_ptr<osg::HeightField> hf;
+            bool isFallback = false;
+
+            if ( _mapf->getHeightField( _key, true, hf, &isFallback ) )
+            {
+                // Treat Plate Carre specially by scaling the height values. (There is no need
+                // to do this with an empty heightfield)
+                if ( mapInfo.isPlateCarre() )
+                {
+                    HeightFieldUtils::scaleHeightFieldToDegrees( hf.get() );
+                }
+
+                // Put it in the repo
+                osgTerrain::HeightFieldLayer* hfLayer = new osgTerrain::HeightFieldLayer( hf.get() );
+
+                // Generate a locator.
+                hfLayer->setLocator( GeoLocator::createForKey( _key, mapInfo ) );
+
+                _model->_elevationData = TileModel::ElevationData(hfLayer, isFallback);
+            }
+        }
+
+        TileKey                  _key;
+        const MapFrame*          _mapf;
+        const QuadTreeTerrainEngineOptions* _opt;
+        TileModel* _model;
+    };
+}
+
+//------------------------------------------------------------------------
+
+TileModelFactory::TileModelFactory(const Map*                          map, 
+                                   TileNodeRegistry*                   liveTiles,
+                                   const QuadTreeTerrainEngineOptions& terrainOptions ) :
+_map           ( map ),
+_liveTiles     ( liveTiles ),
+_terrainOptions( terrainOptions )
+{
+    //nop
+}
+
+
+void
+TileModelFactory::createTileModel(const TileKey&           key, 
+                                  osg::ref_ptr<TileModel>& out_model,
+                                  bool&                    out_hasRealData,
+                                  bool&                    out_hasLodBlendedLayers )
+{
+    MapFrame mapf( _map, Map::MASKED_TERRAIN_LAYERS );
+    
+    const MapInfo& mapInfo = mapf.getMapInfo();
+
+    osg::ref_ptr<TileModel> model = new TileModel();
+    model->_tileKey = key;
+    model->_tileLocator = GeoLocator::createForKey(key, mapInfo);
+
+    // init this to false, then search for real data. "Real data" is data corresponding
+    // directly to the key, as opposed to fallback data, which is derived from a lower
+    // LOD key.
+    out_hasRealData = false;
+    out_hasLodBlendedLayers = false;
+    
+    // Fetch the image data and make color layers.
+    for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
+    {
+        ImageLayer* layer = i->get();
+
+        if ( layer->getEnabled() )
+        {
+            BuildColorData build;
+            build.init( key, layer, mapInfo, _terrainOptions, model.get() );
+            build.execute();
+
+            if ( layer->getImageLayerOptions().lodBlending() == true )
+            {
+                out_hasLodBlendedLayers = true;
+            }
+        }
+    }
+
+    // make an elevation layer.
+    BuildElevationData build;
+    build.init( key, mapf, _terrainOptions, model.get() );
+    build.execute();
+
+
+    // Bail out now if there's no data to be had.
+    if ( model->_colorData.size() == 0 && !model->_elevationData.getHFLayer() )
+    {
+        return;
+    }
+
+    // OK we are making a tile, so if there's no heightfield yet, make an empty one.
+    if ( !model->_elevationData.getHFLayer() )
+    {
+        osg::HeightField* hf = HeightFieldUtils::createReferenceHeightField( key.getExtent(), 8, 8 );
+        osgTerrain::HeightFieldLayer* hfLayer = new osgTerrain::HeightFieldLayer( hf );
+        hfLayer->setLocator( GeoLocator::createForKey(key, mapInfo) );
+        model->_elevationData = TileModel::ElevationData( hfLayer, true );
+    }
+
+    // Now, if there are any color layers that did not get built, create them with an empty
+    // image so the shaders have something to draw.
+    osg::ref_ptr<osg::Image> emptyImage;
+    osgTerrain::Locator* locator = model->_elevationData.getHFLayer()->getLocator();
+
+    for( ImageLayerVector::const_iterator i = mapf.imageLayers().begin(); i != mapf.imageLayers().end(); ++i )
+    {
+        ImageLayer* layer = i->get();
+
+        if ( layer->getEnabled() && !layer->isKeyValid(key) )
+        {
+            if ( !emptyImage.valid() )
+                emptyImage = ImageUtils::createEmptyImage();
+
+            model->_colorData[i->get()->getUID()] = TileModel::ColorData(
+                layer,
+                emptyImage.get(),
+                locator,
+                key.getLevelOfDetail(),
+                key,
+                true );
+        }
+    }
+
+    // Ready to create the actual tile.
+    //AssembleTile assemble;
+    //assemble.init( key, mapInfo, _terrainOptions, model.get(), mapf.terrainMaskLayers() );
+    //assemble.execute();
+
+    // if we're using LOD blending, find and add the parent's state set.
+    if ( out_hasLodBlendedLayers && key.getLevelOfDetail() > 0 && _liveTiles.valid() )
+    {
+        osg::ref_ptr<TileNode> parent;
+        if ( _liveTiles->get( key.createParentKey(), parent ) )
+        {
+            model->_parentStateSet = parent->getPublicStateSet();
+        }
+    }
+
+    if (!out_hasRealData)
+    {
+        // Check the results and see if we have any real data.
+        for( TileModel::ColorDataByUID::const_iterator i = model->_colorData.begin(); i != model->_colorData.end(); ++i )
+        {
+            if ( !i->second.isFallbackData() ) 
+            {
+                out_hasRealData = true;
+                break;
+            }
+        }
+    }
+
+    if ( !out_hasRealData && !model->_elevationData.isFallbackData() )
+    {
+        out_hasRealData = true;
+    }
+
+    out_model = model.release();
+    //out_tile = assemble._node;
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/TileNode b/src/osgEarthDrivers/engine_quadtree/TileNode
new file mode 100644
index 0000000..3102c87
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileNode
@@ -0,0 +1,106 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_TILE_NODE
+#define OSGEARTH_ENGINE_QUADTREE_TILE_NODE 1
+
+#include "Common"
+#include "TileModel"
+#include "TileModelCompiler"
+#include <osgEarth/Locators>
+#include <osg/Group>
+#include <vector>
+
+using namespace osgEarth;
+
+//------------------------------------------------------------------------
+
+/**
+ * Node that represents a single quadtree terrain tile corresponding to 
+ * unique TileKey.
+ */
+class TileNode : public osg::Group
+{
+public:
+    /**
+     * Constructs a new tile node
+     */
+    TileNode( const TileKey& key, GeoLocator* keyLocator );
+
+    /**
+     * The tilekey associated with this tile
+     */
+    const TileKey& getKey() const { return _key; }
+
+    /**
+     * The data model used to create this node's geometry.
+     */
+    void setTileModel( TileModel* model );
+    TileModel* getTileModel() { return _model.get(); }
+
+    /**
+     * Compiles this node's tile model into geometry.
+     * @param[in ] compiler     Compiler that will compiler the model
+     * @param[in ] releaseModel Whether to deallocate the tile model after compilation
+     * @return True upon success
+     */
+    bool compile( TileModelCompiler* compiler, bool releaseModel =true );
+
+    /**
+     * The locator for geometry in this tile
+     */
+    GeoLocator* getLocator() const { return _locator.get(); }
+
+    /**
+     * The public state set associated with the compiled tile model.
+     */
+    osg::StateSet* getPublicStateSet() const { return _publicStateSet; }
+
+
+public: // OVERRIDES
+
+    virtual void traverse( class osg::NodeVisitor& nv );
+
+    //virtual osg::BoundingSphere computeBound() const;
+
+protected:
+
+    virtual ~TileNode();
+
+    bool                      _cullTraversed;
+    TileKey                   _key;
+    osg::ref_ptr<GeoLocator>  _locator;
+    osg::ref_ptr<TileModel>   _model;
+    osg::StateSet*            _publicStateSet;
+};
+
+
+typedef std::vector< osg::ref_ptr<TileNode> > TileNodeVector;
+
+
+/**
+ * Marker class. 
+ */
+class TileNodeGroup : public osg::Group
+{
+public:
+    TileNodeGroup() : osg::Group() { }
+};
+
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TILE_NODE
diff --git a/src/osgEarthDrivers/engine_quadtree/TileNode.cpp b/src/osgEarthDrivers/engine_quadtree/TileNode.cpp
new file mode 100644
index 0000000..0d02019
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileNode.cpp
@@ -0,0 +1,93 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TileNode"
+#include "TerrainNode"
+
+#include <osg/ClusterCullingCallback>
+#include <osg/NodeCallback>
+#include <osg/NodeVisitor>
+
+using namespace osgEarth;
+using namespace OpenThreads;
+
+#define LC "[TileNode] "
+
+
+//----------------------------------------------------------------------------
+
+TileNode::TileNode( const TileKey& key, GeoLocator* keyLocator ) :
+_key              ( key ),
+_locator          ( keyLocator ),
+_publicStateSet   ( 0L )
+{
+    this->setName( key.str() );
+}
+
+
+TileNode::~TileNode()
+{
+    //nop
+}
+
+
+void
+TileNode::setTileModel( TileModel* model )
+{
+    _model = model;
+    _publicStateSet = 0L;
+}
+
+
+bool
+TileNode::compile( TileModelCompiler* compiler, bool releaseModel )
+{
+    if ( !_model.valid() )
+        return false;
+
+    osg::Node* node = 0L;
+    _publicStateSet = 0L;
+
+    if ( !compiler->compile( _model.get(), node, _publicStateSet ) )
+        return false;
+
+    this->removeChildren( 0, this->getNumChildren() );
+    this->addChild( node );
+
+    // release the memory associated with the tile model.
+    if ( releaseModel )
+        _model = 0L;
+
+    return true;
+}
+
+void
+TileNode::traverse( osg::NodeVisitor& nv )
+{
+    // TODO: not sure we need this.
+    if ( nv.getVisitorType()==osg::NodeVisitor::CULL_VISITOR )
+    {
+        osg::ClusterCullingCallback* ccc = dynamic_cast<osg::ClusterCullingCallback*>(getCullCallback());
+        if (ccc)
+        {
+            if (ccc->cull(&nv,0,static_cast<osg::State *>(0))) return;
+        }
+    }
+
+    osg::Group::traverse( nv );
+}
diff --git a/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry b/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry
new file mode 100644
index 0000000..1fa0ac2
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry
@@ -0,0 +1,82 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_ENGINE_QUADTREE_TILE_NODE_REGISTRY
+#define OSGEARTH_ENGINE_QUADTREE_TILE_NODE_REGISTRY 1
+
+#include "Common"
+#include "TileNode"
+#include <osgEarth/ThreadingUtils>
+#include <map>
+
+using namespace osgEarth;
+
+/**
+ * Holds a reference to each tile created by the driver.
+ */
+class TileNodeRegistry : public osg::Referenced
+{
+public:
+    typedef std::map< TileKey, osg::ref_ptr<TileNode> > TileNodeMap;
+
+    // Proprtype for a locked tileset operation (see run)
+    struct Operation {
+        virtual void operator()( TileNodeMap& tiles ) =0;
+    };
+
+    struct ConstOperation {
+        virtual void operator()( const TileNodeMap& tiles ) const =0;
+    };
+
+public:
+    TileNodeRegistry( const std::string& name );
+
+    virtual ~TileNodeRegistry() { }
+
+    /** Adds a tile to the registry */
+    void add( TileNode* tile );
+
+    /** Adds several tiles to the registry */
+    void add( const TileNodeVector& tiles );
+
+    /** Moves a tile to the "removed" list */
+    void remove( TileNode* tile );
+
+    /** Finds a tile in the registry */
+    bool get( const TileKey& key, osg::ref_ptr<TileNode>& out_tile );
+
+    /** Finds a tile in the registry and then removes it. */
+    bool take( const TileKey& key, osg::ref_ptr<TileNode>& out_tile );
+
+    /** Whether there are tiles in this registry (snapshot in time) */
+    bool empty() const;
+
+    /** Runs an operation against the exclusively locked tile set. */
+    void run( Operation& op );
+    
+    /** Runs an operation against the read-locked tile set. */
+    void run( const ConstOperation& op ) const;
+
+protected:
+
+    std::string                       _name;
+    TileNodeMap                       _tiles;
+    mutable Threading::ReadWriteMutex _tilesMutex;
+};
+
+#endif // OSGEARTH_ENGINE_QUADTREE_TILE_NODE_REGISTRY
diff --git a/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry.cpp b/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry.cpp
new file mode 100644
index 0000000..051bdba
--- /dev/null
+++ b/src/osgEarthDrivers/engine_quadtree/TileNodeRegistry.cpp
@@ -0,0 +1,134 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include "TileNodeRegistry"
+
+using namespace osgEarth;
+
+#define LC "[TileNodeRegistry] "
+
+#define OE_TEST OE_NULL
+//#define OE_TEST OE_INFO
+
+
+//----------------------------------------------------------------------------
+
+TileNodeRegistry::TileNodeRegistry(const std::string& name) :
+_name( name )
+{
+    //nop
+}
+
+
+void
+TileNodeRegistry::add( TileNode* tile )
+{
+    if ( tile )
+    {
+        Threading::ScopedWriteLock exclusive( _tilesMutex );
+        _tiles[ tile->getKey() ] = tile;
+        OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+    }
+}
+
+
+void
+TileNodeRegistry::add( const TileNodeVector& tiles )
+{
+    if ( tiles.size() > 0 )
+    {
+        Threading::ScopedWriteLock exclusive( _tilesMutex );
+        for( TileNodeVector::const_iterator i = tiles.begin(); i != tiles.end(); ++i )
+        {
+            _tiles[ i->get()->getKey() ] = i->get();
+        }
+        OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+    }
+}
+
+
+void
+TileNodeRegistry::remove( TileNode* tile )
+{
+    if ( tile )
+    {
+        Threading::ScopedWriteLock exclusive( _tilesMutex );
+        _tiles.erase( tile->getKey() );
+        OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+    }
+}
+
+
+bool
+TileNodeRegistry::get( const TileKey& key, osg::ref_ptr<TileNode>& out_tile )
+{
+    Threading::ScopedReadLock shared( _tilesMutex );
+
+    TileNodeMap::iterator i = _tiles.find(key);
+    if ( i != _tiles.end() )
+    {
+        out_tile = i->second.get();
+        return true;
+    }
+    return false;
+}
+
+
+bool
+TileNodeRegistry::take( const TileKey& key, osg::ref_ptr<TileNode>& out_tile )
+{
+    Threading::ScopedWriteLock exclusive( _tilesMutex );
+
+    TileNodeMap::iterator i = _tiles.find(key);
+    if ( i != _tiles.end() )
+    {
+        out_tile = i->second.get();
+        _tiles.erase( i );
+        OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+        return true;
+    }
+    return false;
+}
+
+
+void
+TileNodeRegistry::run( TileNodeRegistry::Operation& op )
+{
+    Threading::ScopedWriteLock lock( _tilesMutex );
+    unsigned size = _tiles.size();
+    op.operator()( _tiles );
+    if ( size != _tiles.size() )
+        OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+}
+
+
+void
+TileNodeRegistry::run( const TileNodeRegistry::ConstOperation& op ) const
+{
+    Threading::ScopedReadLock lock( _tilesMutex );
+    op.operator()( _tiles );
+    OE_TEST << LC << _name << ": tiles=" << _tiles.size() << std::endl;
+}
+
+
+bool
+TileNodeRegistry::empty() const
+{
+    // don't bother mutex-protecteding this.
+    return _tiles.empty();
+}
diff --git a/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR b/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR
index 3b1007a..e2cd37c 100644
--- a/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR
+++ b/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,8 @@ public:
     /**
      * Creates a new feature cursor that iterates over an OGR layer.
      *
+     * @param source
+     *      Feature source that created this cursor
      * @param dsHandle
      *      Handle on the OGR data source to which the results layer belongs
      * @param layerHandle
@@ -45,10 +47,11 @@ public:
      *      The the query from which this cursor was created.
      */
     FeatureCursorOGR(
-        OGRLayerH dsHandle,
-        OGRLayerH layerHandle,
-        const FeatureProfile* profile,
-        const Symbology::Query& query,
+        OGRLayerH                dsHandle,
+        OGRLayerH                layerHandle,
+        const FeatureSource*     source,
+        const FeatureProfile*    profile,
+        const Symbology::Query&  query,
         const FeatureFilterList& filters );
 
 public: // FeatureCursor
@@ -60,17 +63,18 @@ protected:
     virtual ~FeatureCursorOGR();
 
 private:
-    OGRDataSourceH _dsHandle;
-    OGRLayerH _layerHandle;
-    OGRLayerH _resultSetHandle;
-    OGRGeometryH _spatialFilter;
-    Symbology::Query _query;
-    int _chunkSize;
-    OGRFeatureH _nextHandleToQueue;
-    osg::ref_ptr<const FeatureProfile> _profile;
+    OGRDataSourceH                      _dsHandle;
+    OGRLayerH                           _layerHandle;
+    OGRLayerH                           _resultSetHandle;
+    OGRGeometryH                        _spatialFilter;
+    Symbology::Query                    _query;
+    unsigned                            _chunkSize;
+    OGRFeatureH                         _nextHandleToQueue;
+    osg::ref_ptr<const FeatureSource>   _source;
+    osg::ref_ptr<const FeatureProfile>  _profile;
     std::queue< osg::ref_ptr<Feature> > _queue;
-    osg::ref_ptr<Feature> _lastFeatureReturned;
-    const FeatureFilterList& _filters;
+    osg::ref_ptr<Feature>               _lastFeatureReturned;
+    const FeatureFilterList&            _filters;
 
 private:
     void readChunk();    
diff --git a/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR.cpp b/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR.cpp
index 062a629..3aee936 100644
--- a/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR.cpp
+++ b/src/osgEarthDrivers/feature_ogr/FeatureCursorOGR.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,34 +22,48 @@
 #include <osgEarth/Registry>
 #include <algorithm>
 
+#define LC "[FeatureCursorOGR] "
+
 #define OGR_SCOPED_LOCK GDAL_SCOPED_LOCK
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
 
 
-FeatureCursorOGR::FeatureCursorOGR(OGRDataSourceH dsHandle,
-                                   OGRLayerH layerHandle,
-                                   const FeatureProfile* profile,
-                                   const Symbology::Query& query,
+FeatureCursorOGR::FeatureCursorOGR(OGRDataSourceH           dsHandle,
+                                   OGRLayerH                layerHandle,
+                                   const FeatureSource*     source,
+                                   const FeatureProfile*    profile,
+                                   const Symbology::Query&  query,
                                    const FeatureFilterList& filters ) :
-_dsHandle( dsHandle ),
-_layerHandle( layerHandle ),
-_resultSetHandle( 0L ),
-_spatialFilter( 0L ),
-_query( query ),
-_chunkSize( 500 ),
+_source           ( source ),
+_dsHandle         ( dsHandle ),
+_layerHandle      ( layerHandle ),
+_resultSetHandle  ( 0L ),
+_spatialFilter    ( 0L ),
+_query            ( query ),
+_chunkSize        ( 500 ),
 _nextHandleToQueue( 0L ),
-_profile( profile ),
-_filters( filters )
+_profile          ( profile ),
+_filters          ( filters )
 {
-    //_resultSetHandle = _layerHandle;
     {
         OGR_SCOPED_LOCK;
 
         std::string expr;
-        std::string from = OGR_FD_GetName( OGR_L_GetLayerDefn( _layerHandle ));
-        from = std::string("'") + from + std::string("'");
+        std::string from = OGR_FD_GetName( OGR_L_GetLayerDefn( _layerHandle ));        
+        //If the from field contains a space, quote it.
+        if (from.find(" ") != std::string::npos)
+        {
+            std::string driverName = OGR_Dr_GetName( OGR_DS_GetDriver( dsHandle ) );
+            std::string delim = "'";  //Use single quotes by default
+            if (driverName.compare("PostgreSQL") == 0)
+            {
+                //PostgreSQL uses double quotes as identifier delimeters
+                delim = "\"";
+            }            
+            from = delim + from + delim;            
+        }
 
         if ( query.expression().isSet() )
         {
@@ -77,6 +91,25 @@ _filters( filters )
             expr = buf.str();
         }
 
+        //Include the order by clause if it's set
+        if (query.orderby().isSet())
+        {                     
+            std::string orderby = query.orderby().value();
+            
+            std::string temp = orderby;
+            std::transform( temp.begin(), temp.end(), temp.begin(), ::tolower );
+
+            if ( temp.find( "order by" ) != 0 )
+            {                
+                std::stringstream buf;
+                buf << "ORDER BY " << orderby;                
+                std::string bufStr;
+                bufStr = buf.str();
+                orderby = buf.str();
+            }
+            expr += (" " + orderby );
+        }
+
         // if there's a spatial extent in the query, build the spatial filter:
         if ( query.bounds().isSet() )
         {
@@ -93,6 +126,7 @@ _filters( filters )
         }
 
 
+        OE_DEBUG << LC << "SQL: " << expr << std::endl;
         _resultSetHandle = OGR_DS_ExecuteSQL( _dsHandle, expr.c_str(), _spatialFilter, 0L );
 
         if ( _resultSetHandle )
@@ -160,37 +194,41 @@ FeatureCursorOGR::readChunk()
 
     if ( _nextHandleToQueue )
     {
-        Feature* f = OgrUtils::createFeature( _nextHandleToQueue );
-        if ( f ) 
+        osg::ref_ptr<Feature> f = OgrUtils::createFeature( _nextHandleToQueue, _profile->getSRS() );
+        if ( f.valid() && !_source->isBlacklisted(f->getFID()) )
         {
             _queue.push( f );
             
             if ( _filters.size() > 0 )
-                preProcessList.push_back( f );
+                preProcessList.push_back( f.release() );
         }
         OGR_F_Destroy( _nextHandleToQueue );
         _nextHandleToQueue = 0L;
     }
 
-    int handlesToQueue = _chunkSize - _queue.size();
+    unsigned handlesToQueue = _chunkSize - _queue.size();
+    bool resultSetEndReached = false;
 
-    for( int i=0; i<handlesToQueue; i++ )
+    for( unsigned i=0; i<handlesToQueue; i++ )
     {
         OGRFeatureH handle = OGR_L_GetNextFeature( _resultSetHandle );
         if ( handle )
         {
-            Feature* f = OgrUtils::createFeature( handle );
-            if ( f ) 
+            osg::ref_ptr<Feature> f = OgrUtils::createFeature( handle, _profile->getSRS() );
+            if ( f.valid() && !_source->isBlacklisted(f->getFID()) )
             {
                 _queue.push( f );
 
                 if ( _filters.size() > 0 )
-                    preProcessList.push_back( f );
+                    preProcessList.push_back( f.release() );
             }
             OGR_F_Destroy( handle );
         }
         else
+        {
+            resultSetEndReached = true;
             break;
+        }
     }
 
     // preprocess the features using the filter list:
@@ -207,7 +245,10 @@ FeatureCursorOGR::readChunk()
     }
 
     // read one more for "more" detection:
-    _nextHandleToQueue = OGR_L_GetNextFeature( _resultSetHandle );
+    if (!resultSetEndReached)
+        _nextHandleToQueue = OGR_L_GetNextFeature( _resultSetHandle );
+    else
+        _nextHandleToQueue = 0L;
 
     //OE_NOTICE << "read " << _queue.size() << " features ... " << std::endl;
 }
diff --git a/src/osgEarthDrivers/feature_ogr/FeatureSourceOGR.cpp b/src/osgEarthDrivers/feature_ogr/FeatureSourceOGR.cpp
index fcfcbe5..9faddbf 100644
--- a/src/osgEarthDrivers/feature_ogr/FeatureSourceOGR.cpp
+++ b/src/osgEarthDrivers/feature_ogr/FeatureSourceOGR.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,7 @@
 #include <osgEarthFeatures/Filter>
 #include <osgEarthFeatures/BufferFilter>
 #include <osgEarthFeatures/ScaleFilter>
+#include <osgEarthFeatures/GeometryUtils>
 #include "OGRFeatureOptions"
 #include "FeatureCursorOGR"
 #include <osgEarthFeatures/OgrUtils>
@@ -51,17 +52,14 @@ public:
     OGRFeatureSource( const OGRFeatureOptions& options ) : FeatureSource( options ),
       _dsHandle( 0L ),
       _layerHandle( 0L ),
+      _layerIndex( 0 ),
       _ogrDriverHandle( 0L ),
       _options( options ),
       _featureCount(-1),
       _needsSync(false),
       _writable(false)
     {
-        _geometry = 
-            _options.geometry().valid() ? _options.geometry().get() :
-            _options.geometryConfig().isSet() ? parseGeometry( *_options.geometryConfig() ) :
-            _options.geometryUrl().isSet() ? parseGeometryUrl( *_options.geometryUrl() ) :
-            0L;
+        //nop
     }
 
     /** Destruct the object, cleaning up and OGR handles. */
@@ -79,6 +77,7 @@ public:
                 buf << "REPACK " << name; 
                 std::string bufStr;
                 bufStr = buf.str();
+                OE_DEBUG << LC << "SQL: " << bufStr << std::endl;
                 OGR_DS_ExecuteSQL( _dsHandle, bufStr.c_str(), 0L, 0L );
             }
             _layerHandle = 0L;
@@ -92,16 +91,23 @@ public:
     }
 
     //override
-    void initialize( const std::string& referenceURI )
+    void initialize( const osgDB::Options* dbOptions )
     {
         if ( _options.url().isSet() )
         {
-            _source = osgEarth::getFullPath( referenceURI, _options.url()->full() );
+            _source = _options.url()->full();
         }
         else if ( _options.connection().isSet() )
         {
             _source = _options.connection().value();
         }
+        
+        // establish the geometry:
+        _geometry = 
+            _options.geometry().valid()       ? _options.geometry().get() :
+            _options.geometryConfig().isSet() ? parseGeometry( *_options.geometryConfig() ) :
+            _options.geometryUrl().isSet()    ? parseGeometryUrl( *_options.geometryUrl(), dbOptions ) :
+            0L;
     }
 
     /** Called once at startup to create the profile for this feature set. Successful profile
@@ -152,10 +158,15 @@ public:
 	        if ( _dsHandle )
 	        {
                 if (openMode == 1) _writable = true;
+                
+                if ( _options.layer().isSet() )
+                {
+                    _layerIndex = _options.layer().value();
+                }                
 
-		        _layerHandle = OGR_DS_GetLayer( _dsHandle, 0 ); // default to layer 0 for now
+		        _layerHandle = OGR_DS_GetLayer( _dsHandle, _layerIndex );
                 if ( _layerHandle )
-                {                    
+                {                                     
                     GeoExtent extent;
 
                     // if the user provided a profile, user that:
@@ -195,6 +206,7 @@ public:
                         buf << "CREATE SPATIAL INDEX ON " << name; 
 					    std::string bufStr;
 					    bufStr = buf.str();
+                        OE_DEBUG << LC << "SQL: " << bufStr << std::endl;
                         OGR_DS_ExecuteSQL( _dsHandle, bufStr.c_str(), 0L, 0L );
                     }
 
@@ -277,11 +289,12 @@ public:
 	        OGRDataSourceH dsHandle = OGROpenShared( _source.c_str(), 0, &_ogrDriverHandle );
 	        if ( dsHandle )
 	        {
-                OGRLayerH layerHandle = OGR_DS_GetLayer( dsHandle, 0 );
+                OGRLayerH layerHandle = OGR_DS_GetLayer( dsHandle, _layerIndex );
 
                 return new FeatureCursorOGR( 
                     dsHandle,
                     layerHandle, 
+                    this,
                     getFeatureProfile(),
                     query, 
                     _options.filters() );
@@ -314,11 +327,18 @@ public:
     virtual Feature* getFeature( FeatureID fid )
     {
         Feature* result = NULL;
-        OGRFeatureH handle = OGR_L_GetFeature( _layerHandle, fid);
-        if (handle)
+
+        if ( !isBlacklisted(fid) )
         {
-            result = OgrUtils::createFeature( handle );
-            OGR_F_Destroy( handle );
+            OGR_SCOPED_LOCK;
+            OGRFeatureH handle = OGR_L_GetFeature( _layerHandle, fid);
+            if (handle)
+            {
+                const FeatureProfile* p = getFeatureProfile();
+                const SpatialReference* srs = p ? p->getSRS() : 0L;
+                result = OgrUtils::createFeature( handle, srs );
+                OGR_F_Destroy( handle );
+            }
         }
         return result;
     }
@@ -363,28 +383,11 @@ public:
                     case OFTString:
                         OGR_F_SetFieldString( feature_handle, field_index, a->second.getString().c_str() );
                         break;
+                    default:break;
                     }
                 }
             }
 
-            //    std::string value = feature->getAttr( name );
-            //    if (!value.empty())
-            //    {
-            //        switch( OGR_Fld_GetType( field_handle_ref ) )
-            //        {
-            //        case OFTInteger:
-            //            OGR_F_SetFieldInteger( feature_handle, field_index, as<int>(value, 0) );
-            //            break;
-            //        case OFTReal:
-            //            OGR_F_SetFieldDouble( feature_handle, field_index, as<double>(value, 0.0) );
-            //            break;
-            //        case OFTString:
-            //            OGR_F_SetFieldString( feature_handle, field_index, value.c_str() );
-            //            break;                    
-            //        }
-            //    }
-            //}
-
             // assign the geometry:
             OGRFeatureDefnH def = ::OGR_L_GetLayerDefn( _layerHandle );
 
@@ -414,6 +417,8 @@ public:
             return false;
         }
 
+        dirty();
+
         return true;
     }
 
@@ -427,16 +432,16 @@ protected:
     // parses an explicit WKT geometry string into a Geometry.
     Symbology::Geometry* parseGeometry( const Config& geomConf )
     {
-        return OgrUtils::createGeometryFromWKT( geomConf.value() );
+        return GeometryUtils::geometryFromWKT( geomConf.value() );
     }
 
     // read the WKT geometry from a URL, then parse into a Geometry.
-    Symbology::Geometry* parseGeometryUrl( const std::string& geomUrl )
+    Symbology::Geometry* parseGeometryUrl( const std::string& geomUrl, const osgDB::Options* dbOptions )
     {
-        std::string wkt;
-        if ( HTTPClient::readString( geomUrl, wkt ) == HTTPClient::RESULT_OK )
+        ReadResult r = URI(geomUrl).readString( dbOptions );
+        if ( r.succeeded() )
         {
-            Config conf( "geometry", wkt );
+            Config conf( "geometry", r.getString() );
             return parseGeometry( conf );
         }
         return 0L;
@@ -463,6 +468,7 @@ private:
     std::string _source;
     OGRDataSourceH _dsHandle;
     OGRLayerH _layerHandle;
+    unsigned int _layerIndex;
     OGRSFDriverH _ogrDriverHandle;
     osg::ref_ptr<Symbology::Geometry> _geometry; // explicit geometry.
     const OGRFeatureOptions _options;
diff --git a/src/osgEarthDrivers/feature_ogr/OGRFeatureOptions b/src/osgEarthDrivers/feature_ogr/OGRFeatureOptions
index 8d6b95e..5d57a29 100644
--- a/src/osgEarthDrivers/feature_ogr/OGRFeatureOptions
+++ b/src/osgEarthDrivers/feature_ogr/OGRFeatureOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -48,6 +48,9 @@ namespace osgEarth { namespace Drivers
         optional<std::string>& geometryUrl() { return _geometryUrl; }
         const optional<std::string>& geometryUrl() const { return _geometryUrl; }
 
+        optional<unsigned int>& layer() { return _layer; }
+        const optional<unsigned int>& layer() const { return _layer; }
+
         // does not serialize
         osg::ref_ptr<Symbology::Geometry>& geometry() { return _geometry; }
         const osg::ref_ptr<Symbology::Geometry>& geometry() const { return _geometry; }
@@ -58,6 +61,8 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        virtual ~OGRFeatureOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = FeatureSourceOptions::getConfig();
@@ -67,6 +72,7 @@ namespace osgEarth { namespace Drivers
             conf.updateIfSet( "build_spatial_index", _buildSpatialIndex );
             conf.updateIfSet( "geometry", _geometryConf );    
             conf.updateIfSet( "geometry_url", _geometryUrl );
+            conf.updateIfSet( "layer", _layer );
             conf.updateNonSerializable( "OGRFeatureOptions::geometry", _geometry.get() );
             return conf;
         }
@@ -85,6 +91,7 @@ namespace osgEarth { namespace Drivers
             conf.getIfSet( "build_spatial_index", _buildSpatialIndex );
             conf.getIfSet( "geometry", _geometryConf );
             conf.getIfSet( "geometry_url", _geometryUrl );
+            conf.getIfSet( "layer", _layer);
             _geometry = conf.getNonSerializable<Symbology::Geometry>( "OGRFeatureOptions::geometry" );
         }
 
@@ -95,6 +102,7 @@ namespace osgEarth { namespace Drivers
         optional<Config>                  _geometryConf;
         optional<Config>                  _geometryProfileConf;
         optional<std::string>             _geometryUrl;
+        optional<unsigned int >           _layer;
         osg::ref_ptr<Symbology::Geometry> _geometry;
     };
 
diff --git a/src/osgEarthDrivers/feature_tfs/CMakeLists.txt b/src/osgEarthDrivers/feature_tfs/CMakeLists.txt
new file mode 100644
index 0000000..18086ba
--- /dev/null
+++ b/src/osgEarthDrivers/feature_tfs/CMakeLists.txt
@@ -0,0 +1,18 @@
+SET(TARGET_SRC
+    FeatureSourceTFS.cpp    
+)
+
+SET(TARGET_H   	
+    TFSFeatureOptions
+)
+
+INCLUDE_DIRECTORIES( ${GDAL_INCLUDE_DIR} )
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthFeatures osgEarthSymbology osgEarthUtil)
+SET(TARGET_LIBRARIES_VARS GDAL_LIBRARY)
+SETUP_PLUGIN(osgearth_feature_tfs)
+
+
+# to install public driver includes:
+SET(LIB_NAME feature_tfs)
+SET(LIB_PUBLIC_HEADERS ${TARGET_H})
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/feature_tfs/FeatureSourceTFS.cpp b/src/osgEarthDrivers/feature_tfs/FeatureSourceTFS.cpp
new file mode 100644
index 0000000..53d5162
--- /dev/null
+++ b/src/osgEarthDrivers/feature_tfs/FeatureSourceTFS.cpp
@@ -0,0 +1,367 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "TFSFeatureOptions"
+
+#include <osgEarth/Registry>
+#include <osgEarth/XmlUtils>
+#include <osgEarth/FileUtils>
+#include <osgEarthFeatures/FeatureSource>
+#include <osgEarthFeatures/Filter>
+#include <osgEarthFeatures/BufferFilter>
+#include <osgEarthFeatures/ScaleFilter>
+#include <osgEarthFeatures/OgrUtils>
+#include <osgEarthUtil/TFS>
+#include <osg/Notify>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <list>
+#include <stdio.h>
+#include <stdlib.h>
+
+#include <ogr_api.h>
+
+#ifdef WIN32
+#include <windows.h>
+#endif
+
+#define LC "[TFS FeatureSource] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Features;
+using namespace osgEarth::Drivers;
+
+/**
+ * A FeatureSource that reads features from a TFS layer
+ * 
+ */
+class TFSFeatureSource : public FeatureSource
+{
+public:
+    TFSFeatureSource(const TFSFeatureOptions& options ) :
+      FeatureSource( options ),
+      _options     ( options ),
+      _layerValid(false)
+    {        
+        _geojsonDriver = OGRGetDriverByName( "GeoJSON" );
+        _gmlDriver     = OGRGetDriverByName( "GML" );
+    }
+
+    /** Destruct the object, cleaning up and OGR handles. */
+    virtual ~TFSFeatureSource()
+    {               
+        //nop
+    }
+
+    //override
+    void initialize( const osgDB::Options* dbOptions )
+    {
+        _dbOptions = dbOptions ? osg::clone(dbOptions) : 0L;
+        if ( _dbOptions.valid() )
+        {
+            // Set up a Custom caching bin for this source:
+            Cache* cache = Cache::get( _dbOptions.get() );
+            if ( cache )
+            {
+                Config optionsConf = _options.getConfig();
+
+                std::string binId = Stringify() << std::hex << hashString(optionsConf.toJSON()) << "_tfs";
+                _cacheBin = cache->addBin( binId );
+                
+                // write a metadata record just for reference purposes.. we don't actually use it
+                Config metadata = _cacheBin->readMetadata();
+                if ( metadata.empty() )
+                {
+                    _cacheBin->writeMetadata( optionsConf );
+                }
+
+                if ( _cacheBin.valid() )
+                {
+                    _cacheBin->apply( _dbOptions.get() );
+                }
+            }
+        }     
+        _layerValid = TFSReaderWriter::read(_options.url().get(), _dbOptions.get(), _layer);
+        if (_layerValid)
+        {
+            OE_INFO << LC <<  "Read layer TFS " << _layer.getTitle() << " " << _layer.getAbstract() << " " << _layer.getFirstLevel() << " " << _layer.getMaxLevel() << " " << _layer.getExtent().toString() << std::endl;
+        }
+    }
+
+
+    /** Called once at startup to create the profile for this feature set. Successful profile
+        creation implies that the datasource opened succesfully. */
+    const FeatureProfile* createFeatureProfile()
+    {
+        FeatureProfile* result = NULL;
+        if (_layerValid)
+        {
+            result = new FeatureProfile(_layer.getExtent());
+            result->setTiled( true );
+            result->setFirstLevel( _layer.getFirstLevel());
+            result->setMaxLevel( _layer.getMaxLevel());
+            result->setProfile( osgEarth::Profile::create(_layer.getSRS(), _layer.getExtent().xMin(), _layer.getExtent().yMin(), _layer.getExtent().xMax(), _layer.getExtent().yMax(), 1, 1) );
+        }
+        return result;        
+    }
+
+
+    bool getFeatures( const std::string& buffer, const std::string& mimeType, FeatureList& features )
+    {        
+        // find the right driver for the given mime type
+        OGRSFDriverH ogrDriver =
+            isJSON(mimeType) ? _geojsonDriver :
+            isGML(mimeType)  ? _gmlDriver :
+            0L;
+
+        // fail if we can't find an appropriate OGR driver:
+        if ( !ogrDriver )
+        {
+            OE_WARN << LC << "Error reading TFS response; cannot grok content-type \"" << mimeType << "\""
+                << std::endl;
+            return false;
+        }
+
+        OGRDataSourceH ds = OGROpen( buffer.c_str(), FALSE, &ogrDriver );
+        
+        if ( !ds )
+        {
+            OE_WARN << LC << "Error reading TFS response" << std::endl;
+            return false;
+        }
+
+        // read the feature data.
+        OGRLayerH layer = OGR_DS_GetLayer(ds, 0);
+        if ( layer )
+        {
+            const SpatialReference* srs = _layer.getSRS();
+
+            OGR_L_ResetReading(layer);                                
+            OGRFeatureH feat_handle;
+            while ((feat_handle = OGR_L_GetNextFeature( layer )) != NULL)
+            {
+                if ( feat_handle )
+                {
+                    osg::ref_ptr<Feature> f = OgrUtils::createFeature( feat_handle, srs );
+                    if ( f.valid() && !isBlacklisted(f->getFID()) )
+                    {
+                        features.push_back( f.release() );
+                    }
+                    OGR_F_Destroy( feat_handle );
+                }
+            }
+        }
+
+        // Destroy the datasource
+        OGR_DS_Destroy( ds );
+        
+        return true;
+    }
+
+    
+    std::string getExtensionForMimeType(const std::string& mime)
+    {
+        //OGR is particular sometimes about the extension of files when it's reading them so it's good to have
+        //the temp file have an appropriate extension
+        if ((mime.compare("text/xml") == 0) ||
+            (mime.compare("text/xml; subtype=gml/2.1.2") == 0) ||
+            (mime.compare("text/xml; subtype=gml/3.1.1") == 0)
+            )
+        {
+            return ".xml";
+        }        
+        else if ((mime.compare("application/json") == 0) ||
+                 (mime.compare("json") == 0) ||            
+
+                 (mime.compare("application/x-javascript") == 0) ||
+                 (mime.compare("text/javascript") == 0) ||
+                 (mime.compare("text/x-javascript") == 0) ||
+                 (mime.compare("text/x-json") == 0)                 
+                )
+        {
+            return ".json";
+        }        
+        return "";
+    }
+
+    bool isGML( const std::string& mime ) const
+    {
+        return
+            startsWith(mime, "text/xml");
+    }
+
+
+    bool isJSON( const std::string& mime ) const
+    {
+        return
+            (mime.compare("application/json") == 0)         ||
+            (mime.compare("json") == 0)                     ||            
+
+            (mime.compare("application/x-javascript") == 0) ||
+            (mime.compare("text/javascript") == 0)          ||
+            (mime.compare("text/x-javascript") == 0)        ||
+            (mime.compare("text/x-json") == 0);
+    }
+
+    std::string createURL(const Symbology::Query& query)
+    {     
+        if (query.tileKey().isSet())
+        {
+            std::stringstream buf;
+            std::string path = osgDB::getFilePath(_options.url()->full());
+            buf << path << "/" << query.tileKey().get().getLevelOfDetail() << "/"
+                               << query.tileKey().get().getTileX() << "/"
+                               << query.tileKey().get().getTileY()
+                               << "." << _options.format().get();            
+            OE_DEBUG << "TFS url " << buf.str() << std::endl;
+            return buf.str();
+        }
+        return "";                       
+    }
+
+    FeatureCursor* createFeatureCursor( const Symbology::Query& query )
+    {
+        FeatureCursor* result = 0L;
+
+        std::string url = createURL( query );
+        if (url.empty()) return 0;
+
+        // check the blacklist:
+        if ( Registry::instance()->isBlacklisted(url) )
+            return 0L;
+
+        OE_DEBUG << LC << url << std::endl;
+        URI uri(url);
+
+        // read the data:
+        ReadResult r = uri.readString( _dbOptions.get() );
+
+        const std::string& buffer = r.getString();
+        const Config&      meta   = r.metadata();
+
+        bool dataOK = false;
+
+        FeatureList features;
+        if ( !buffer.empty() )
+        {
+            // Get the mime-type from the metadata record if possible
+            std::string mimeType = r.metadata().value( IOMetadata::CONTENT_TYPE );
+            //If the mimetype is empty then try to set it from the format specification
+            if (mimeType.empty())
+            {
+                if (_options.format().value() == "json") mimeType = "json";
+                else if (_options.format().value().compare("gml") == 0) mimeType = "text/xml";
+            }
+            dataOK = getFeatures( buffer, mimeType, features );
+        }
+
+        if ( dataOK )
+        {
+            OE_DEBUG << LC << "Read " << features.size() << " features" << std::endl;
+        }
+
+        //If we have any filters, process them here before the cursor is created
+        if (!_options.filters().empty())
+        {
+            // preprocess the features using the filter list:
+            if ( features.size() > 0 )
+            {
+                FilterContext cx;
+                cx.profile() = getFeatureProfile();
+
+                for( FeatureFilterList::const_iterator i = _options.filters().begin(); i != _options.filters().end(); ++i )
+                {
+                    FeatureFilter* filter = i->get();
+                    cx = filter->push( features, cx );
+                }
+            }
+        }
+
+        //result = new FeatureListCursor(features);
+        result = dataOK ? new FeatureListCursor( features ) : 0L;
+
+        if ( !result )
+            Registry::instance()->blacklist( url );
+
+        return result;
+    }
+
+    /**
+    * Gets the Feature with the given FID
+    * @returns
+    *     The Feature with the given FID or NULL if not found.
+    */
+    virtual Feature* getFeature( FeatureID fid )
+    {
+        return 0;
+    }
+
+    virtual bool isWritable() const
+    {
+        return false;
+    }
+
+    virtual const FeatureSchema& getSchema() const
+    {
+        //TODO:  Populate the schema from the DescribeFeatureType call
+        return _schema;
+    }
+
+    virtual osgEarth::Symbology::Geometry::Type getGeometryType() const
+    {
+        return Geometry::TYPE_UNKNOWN;
+    }
+
+
+
+private:
+    const TFSFeatureOptions         _options;    
+    FeatureSchema                   _schema;
+    osg::ref_ptr<CacheBin>          _cacheBin;
+    osg::ref_ptr<osgDB::Options>    _dbOptions;
+    OGRSFDriverH                    _geojsonDriver, _gmlDriver;
+    TFSLayer                        _layer;
+    bool                            _layerValid;
+};
+
+
+class TFSFeatureSourceFactory : public FeatureSourceDriver
+{
+public:
+    TFSFeatureSourceFactory()
+    {
+        supportsExtension( "osgearth_feature_tfs", "TFS feature driver for osgEarth" );
+    }
+
+    virtual const char* className()
+    {
+        return "TFS Feature Reader";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return ReadResult( new TFSFeatureSource( getFeatureSourceOptions(options) ) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_feature_tfs, TFSFeatureSourceFactory)
+
diff --git a/src/osgEarthDrivers/feature_tfs/TFSFeatureOptions b/src/osgEarthDrivers/feature_tfs/TFSFeatureOptions
new file mode 100644
index 0000000..bc60e23
--- /dev/null
+++ b/src/osgEarthDrivers/feature_tfs/TFSFeatureOptions
@@ -0,0 +1,80 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_TFS_FEATURE_SOURCE_OPTIONS
+#define OSGEARTH_DRIVER_TFS_FEATURE_SOURCE_OPTIONS 1
+
+#include <osgEarth/Common>
+#include <osgEarth/URI>
+#include <osgEarthFeatures/FeatureSource>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Features;
+
+    /**
+     * Options for the TFS feature driver.
+     */
+    class TFSFeatureOptions : public FeatureSourceOptions // NO EXPORT; header only
+    {
+    public:
+        /** Base URL of the TFS service */
+        optional<URI>& url() { return _url; }
+        const optional<URI>& url() const { return _url; }
+                
+        /** Data format extension of TFS data (json, gml) */
+        optional<std::string>& format() { return _format; }
+        const optional<std::string>& format() const { return _format; }        
+
+    public:
+        TFSFeatureOptions( const ConfigOptions& opt =ConfigOptions() ) : FeatureSourceOptions( opt ) {
+            setDriver( "tfs" );
+            fromConfig( _conf );
+        }
+
+        virtual ~TFSFeatureOptions() { }
+
+    public:
+        Config getConfig() const {
+            Config conf = FeatureSourceOptions::getConfig();
+            conf.updateIfSet( "url", _url ); 
+            conf.updateIfSet( "format", _format );            
+            return conf;
+        }
+
+    protected:
+        void mergeConfig( const Config& conf ) {
+            FeatureSourceOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "url", _url );
+            conf.getIfSet( "format", _format );
+        }
+
+        optional<URI>         _url;        
+        optional<std::string> _format;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_DRIVER_TFS_FEATURE_SOURCE_OPTIONS
+
diff --git a/src/osgEarthDrivers/feature_wfs/FeatureSourceWFS.cpp b/src/osgEarthDrivers/feature_wfs/FeatureSourceWFS.cpp
index 75d5c47..59fb01a 100644
--- a/src/osgEarthDrivers/feature_wfs/FeatureSourceWFS.cpp
+++ b/src/osgEarthDrivers/feature_wfs/FeatureSourceWFS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -16,6 +16,7 @@
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
+#include "WFSFeatureOptions"
 
 #include <osgEarth/Registry>
 #include <osgEarth/FileUtils>
@@ -24,7 +25,6 @@
 #include <osgEarthFeatures/BufferFilter>
 #include <osgEarthFeatures/ScaleFilter>
 #include <osgEarthUtil/WFS>
-#include "WFSFeatureOptions"
 #include <osgEarthFeatures/OgrUtils>
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
@@ -35,9 +35,10 @@
 
 #include <ogr_api.h>
 
-#ifdef WIN32
-#include <windows.h>
-#endif
+
+
+//#undef  OE_DEBUG
+//#define OE_DEBUG OE_INFO
 
 #define LC "[WFS FeatureSource] "
 
@@ -48,43 +49,6 @@ using namespace osgEarth::Drivers;
 
 #define OGR_SCOPED_LOCK GDAL_SCOPED_LOCK
 
-std::string getTempPath()
-{
-#if defined(WIN32)  && !defined(__CYGWIN__)
-    BOOL fSuccess  = FALSE;
-
-    TCHAR lpTempPathBuffer[MAX_PATH];    
-
-    //  Gets the temp path env string (no guarantee it's a valid path).
-    DWORD dwRetVal = ::GetTempPath(MAX_PATH,          // length of the buffer
-                                   lpTempPathBuffer); // buffer for path     
-
-    if (dwRetVal > MAX_PATH || (dwRetVal == 0))
-    {
-        OE_NOTICE << "GetTempPath failed" << std::endl;
-        return ".";
-    }
-
-    return std::string(lpTempPathBuffer);
-#else
-    return "/tmp/";
-#endif
-}
-
-std::string getTempName(const std::string& prefix="", const std::string& suffix="")
-{
-    //tmpname is kind of busted on Windows, it always returns a file of the form \blah which gets put in your root directory but
-    //oftentimes can't get opened by some drivers b/c it doesn't have a drive letter in front of it.
-    bool valid = false;
-    while (!valid)
-    {
-        std::stringstream ss;
-        ss << prefix << "~" << rand() << suffix;
-        if (!osgDB::fileExists(ss.str())) return ss.str();
-    }
-    return "";
-}
-
 /**
  * A FeatureSource that reads features from a WFS layer
  *
@@ -93,31 +57,62 @@ std::string getTempName(const std::string& prefix="", const std::string& suffix=
 class WFSFeatureSource : public FeatureSource
 {
 public:
-    WFSFeatureSource( const WFSFeatureOptions& options ) : FeatureSource( options ),      
-      _options( options )
+    WFSFeatureSource(const WFSFeatureOptions& options ) :
+      FeatureSource( options ),
+      _options     ( options )
     {        
+        _geojsonDriver = OGRGetDriverByName( "GeoJSON" );
+        _gmlDriver     = OGRGetDriverByName( "GML" );
     }
 
     /** Destruct the object, cleaning up and OGR handles. */
     virtual ~WFSFeatureSource()
     {               
+        //nop
     }
 
     //override
-    void initialize( const std::string& referenceURI )
+    void initialize( const osgDB::Options* dbOptions )
     {
-        char sep = _options.url()->full().find_first_of('?') == std::string::npos? '?' : '&';
+        _dbOptions = dbOptions ? osg::clone(dbOptions) : 0L;
+        if ( _dbOptions.valid() )
+        {
+            // Set up a Custom caching bin for this source:
+            Cache* cache = Cache::get( _dbOptions.get() );
+            if ( cache )
+            {
+                Config optionsConf = _options.getConfig();
+
+                std::string binId = Stringify() << std::hex << hashString(optionsConf.toJSON()) << "_wfs";
+                _cacheBin = cache->addBin( binId );
+                
+                // write a metadata record just for reference purposes.. we don't actually use it
+                Config metadata = _cacheBin->readMetadata();
+                if ( metadata.empty() )
+                {
+                    _cacheBin->writeMetadata( optionsConf );
+                }
+
+                if ( _cacheBin.valid() )
+                {
+                    _cacheBin->apply( _dbOptions.get() );
+                }
+            }
+        }
 
         std::string capUrl;
-        if ( capUrl.empty() )
+
+        if ( _options.url().isSet() )
         {
+            char sep = _options.url()->full().find_first_of('?') == std::string::npos? '?' : '&';
+
             capUrl = 
                 _options.url()->full() +
                 sep + 
                 "SERVICE=WFS&VERSION=1.0.0&REQUEST=GetCapabilities";
         }
 
-        _capabilities = WFSCapabilitiesReader::read( capUrl, 0L );
+        _capabilities = WFSCapabilitiesReader::read( capUrl, _dbOptions.get() );
         if ( !_capabilities.valid() )
         {
             OE_WARN << "[osgEarth::WFS] Unable to read WFS GetCapabilities." << std::endl;
@@ -125,59 +120,121 @@ public:
         }
         else
         {
-            OE_NOTICE << "[osgEarth::WFS] Got capabilities from " << capUrl << std::endl;
+            OE_INFO << "[osgEarth::WFS] Got capabilities from " << capUrl << std::endl;
         }
     }
 
+
     /** Called once at startup to create the profile for this feature set. Successful profile
         creation implies that the datasource opened succesfully. */
     const FeatureProfile* createFeatureProfile()
     {
-        FeatureProfile* result = NULL;
-        if (_capabilities.valid())
+        if ( !_featureProfile.valid() )
         {
-            //Find the feature type by name
-            osg::ref_ptr< WFSFeatureType > featureType = _capabilities->getFeatureTypeByName( _options.typeName().get() );
-            if (featureType.valid())
+            static Threading::Mutex s_mutex;
+            Threading::ScopedMutexLock lock(s_mutex);
+            
+            if ( !_featureProfile.valid() )
             {
-                if (featureType->getExtent().isValid())
+                FeatureProfile* result = 0L;
+
+                if (_capabilities.valid())
                 {
-                    result = new FeatureProfile(featureType->getExtent());
-
-                    if (featureType->getTiled())
-                    {                        
-                        result->setTiled( true );
-                        result->setFirstLevel( featureType->getFirstLevel() );
-                        result->setMaxLevel( featureType->getMaxLevel() );
-                        result->setProfile( osgEarth::Profile::create(osgEarth::SpatialReference::create("epsg:4326"), featureType->getExtent().xMin(), featureType->getExtent().yMin(), featureType->getExtent().xMax(), featureType->getExtent().yMax(), 0, 1, 1) );
+                    //Find the feature type by name
+                    osg::ref_ptr< WFSFeatureType > featureType = _capabilities->getFeatureTypeByName( _options.typeName().get() );
+                    if (featureType.valid())
+                    {
+                        if (featureType->getExtent().isValid())
+                        {
+                            result = new FeatureProfile(featureType->getExtent());
+
+                            bool disableTiling = _options.disableTiling().isSet() && *_options.disableTiling();
+
+                            if (featureType->getTiled() && !disableTiling)
+                            {                        
+                                result->setTiled( true );
+                                result->setFirstLevel( featureType->getFirstLevel() );
+                                result->setMaxLevel( featureType->getMaxLevel() );
+                                result->setProfile( osgEarth::Profile::create(osgEarth::SpatialReference::create("epsg:4326"), featureType->getExtent().xMin(), featureType->getExtent().yMin(), featureType->getExtent().xMax(), featureType->getExtent().yMax(), 1, 1) );
+                            }
+                        }
                     }
                 }
+
+                if (!result)
+                {
+                    result = new FeatureProfile(GeoExtent(SpatialReference::create( "epsg:4326" ), -180, -90, 180, 90));
+                }
+                
+                _featureProfile = result;
             }
         }
 
-        if (!result)
+        return _featureProfile.get();
+    }
+
+    FeatureProfile* getFeatureProfile()
+    {
+        if ( !_featureProfile.valid() )
         {
-            result = new FeatureProfile(GeoExtent(SpatialReference::create( "epsg:4326" ), -180, -90, 180, 90));
+            createFeatureProfile();
         }
-        return result;        
+        return _featureProfile.get();
     }
 
-    void saveResponse(HTTPResponse& response, const std::string& filename)
+    bool getFeatures( const std::string& buffer, const std::string& mimeType, FeatureList& features )
     {
-        std::ofstream fout;
-        fout.open(filename.c_str(), std::ios::out | std::ios::binary);
-
-        std::istream& input_stream = response.getPartStream(0);
-        input_stream.seekg (0, std::ios::end);
-        int length = input_stream.tellg();
-        input_stream.seekg (0, std::ios::beg);
-
-        char *buffer = new char[length];
-        input_stream.read(buffer, length);
-        fout.write(buffer, length);
-        delete[] buffer;
-        fout.close();
+        // find the right driver for the given mime type
+        OGRSFDriverH ogrDriver =
+            isJSON(mimeType) ? _geojsonDriver :
+            isGML(mimeType)  ? _gmlDriver :
+            0L;
+
+        // fail if we can't find an appropriate OGR driver:
+        if ( !ogrDriver )
+        {
+            OE_WARN << LC << "Error reading WFS response; cannot grok content-type \"" << mimeType << "\""
+                << std::endl;
+            return false;
+        }
+
+        OGRDataSourceH ds = OGROpen( buffer.c_str(), FALSE, &ogrDriver );
+        
+        if ( !ds )
+        {
+            OE_WARN << LC << "Error reading WFS response" << std::endl;
+            return false;
+        }
+
+        // read the feature data.
+        OGRLayerH layer = OGR_DS_GetLayer(ds, 0);
+        if ( layer )
+        {
+            FeatureProfile* fp = getFeatureProfile();
+            const SpatialReference* srs = fp ? fp->getSRS() : 0L;
+
+            OGR_L_ResetReading(layer);                                
+            OGRFeatureH feat_handle;
+            while ((feat_handle = OGR_L_GetNextFeature( layer )) != NULL)
+            {
+                if ( feat_handle )
+                {
+                    osg::ref_ptr<Feature> f = OgrUtils::createFeature( feat_handle, srs );
+                    if ( f.valid() && !isBlacklisted(f->getFID()) )
+                    {
+                        features.push_back( f.release() );
+                    }
+                    OGR_F_Destroy( feat_handle );
+                }
+            }
+        }
+
+        // Destroy the datasource
+        OGR_DS_Destroy( ds );
+        
+        return true;
     }
+
     
     std::string getExtensionForMimeType(const std::string& mime)
     {
@@ -204,49 +261,23 @@ public:
         return "";
     }
 
-    void getFeatures(HTTPResponse &response, FeatureList& features)
-    {        
-        //OE_NOTICE << "mimetype=" << response.getMimeType() << std::endl;
-        //TODO:  Handle more than just geojson...
-        std::string ext = getExtensionForMimeType(response.getMimeType());
-        //Save the response to a temp file            
-        std::string tmpPath = getTempPath();        
-        std::string name = getTempName(tmpPath, ext);
-        saveResponse(response, name );
-        //OE_NOTICE << "Saving to " << name << std::endl;        
-
-        //OGRDataSourceH ds = OGROpen(name.c_str(), FALSE, &driver);            
-        OGRDataSourceH ds = OGROpen(name.c_str(), FALSE, NULL);            
-        if (!ds)
-        {
-            OE_NOTICE << "Error opening data with contents " << std::endl
-                << response.getPartAsString(0) << std::endl;
-        }
+    bool isGML( const std::string& mime ) const
+    {
+        return
+            startsWith(mime, "text/xml");
+    }
 
-        OGRLayerH layer = OGR_DS_GetLayer(ds, 0);
-        //Read all the features
-        if (layer)
-        {
-            OGR_L_ResetReading(layer);                                
-            OGRFeatureH feat_handle;
-            while ((feat_handle = OGR_L_GetNextFeature( layer )) != NULL)
-            {
-                if ( feat_handle )
-                {
-                    Feature* f = OgrUtils::createFeature( feat_handle );
-                    if ( f ) 
-                    {
-                        features.push_back( f );
-                    }
-                    OGR_F_Destroy( feat_handle );
-                }
-            }
-        }
 
-        //Destroy the datasource
-        OGR_DS_Destroy( ds );
-        //Remove the temporary file
-        remove( name.c_str() );            
+    bool isJSON( const std::string& mime ) const
+    {
+        return
+            (mime.compare("application/json") == 0)         ||
+            (mime.compare("json") == 0)                     ||            
+
+            (mime.compare("application/x-javascript") == 0) ||
+            (mime.compare("text/javascript") == 0)          ||
+            (mime.compare("text/x-javascript") == 0)        ||
+            (mime.compare("text/x-json") == 0);
     }
 
     std::string createURL(const Symbology::Query& query)
@@ -275,41 +306,69 @@ public:
             buf << "&BBOX=" << query.bounds().get().xMin() << "," << query.bounds().get().yMin() << ","
                             << query.bounds().get().xMax() << "," << query.bounds().get().yMax();
         }
-        return buf.str();
+        std::string str;
+        str = buf.str();
+        return str;
     }
 
-    //override
     FeatureCursor* createFeatureCursor( const Symbology::Query& query )
     {
+        FeatureCursor* result = 0L;
+
         std::string url = createURL( query );
-        OE_DEBUG << LC << "URL: " << url << std::endl;
-        HTTPResponse response = HTTPClient::get(url);                
+
+        // check the blacklist:
+        if ( Registry::instance()->isBlacklisted(url) )
+            return 0L;
+
+        OE_DEBUG << LC << url << std::endl;
+        URI uri(url);
+
+        // read the data:
+        ReadResult r = uri.readString( _dbOptions.get() );
+
+        const std::string& buffer = r.getString();
+        const Config&      meta   = r.metadata();
+
+        bool dataOK = false;
+
         FeatureList features;
-        if (response.isOK())
+        if ( !buffer.empty() )
         {
-            getFeatures(response, features);            
-            std::string data = response.getPartAsString(0);        
+            // Get the mime-type from the metadata record if possible
+            const std::string& mimeType = r.metadata().value( IOMetadata::CONTENT_TYPE );
+            dataOK = getFeatures( buffer, mimeType, features );
         }
-        else
+
+        if ( dataOK )
         {
-            OE_INFO << "Error getting url " << url << std::endl;
+            OE_DEBUG << LC << "Read " << features.size() << " features" << std::endl;
         }
-        return new FeatureListCursor( features );        
-    }
 
-    virtual bool deleteFeature(FeatureID fid)
-    {
-        return false;
-    }
+        //If we have any filters, process them here before the cursor is created
+        if (!_options.filters().empty())
+        {
+            // preprocess the features using the filter list:
+            if ( features.size() > 0 )
+            {
+                FilterContext cx;
+                cx.profile() = getFeatureProfile();
 
-    virtual int getFeatureCount() const
-    {
-        return -1;
-    }
+                for( FeatureFilterList::const_iterator i = _options.filters().begin(); i != _options.filters().end(); ++i )
+                {
+                    FeatureFilter* filter = i->get();
+                    cx = filter->push( features, cx );
+                }
+            }
+        }
 
-    virtual bool insertFeature(Feature* feature)
-    {
-        return false;
+        //result = new FeatureListCursor(features);
+        result = dataOK ? new FeatureListCursor( features ) : 0L;
+
+        if ( !result )
+            Registry::instance()->blacklist( url );
+
+        return result;
     }
 
     /**
@@ -341,9 +400,13 @@ public:
 
 
 private:
-    const WFSFeatureOptions _options;  
+    const WFSFeatureOptions         _options;  
     osg::ref_ptr< WFSCapabilities > _capabilities;
-    FeatureSchema _schema;
+    osg::ref_ptr< FeatureProfile >  _featureProfile;
+    FeatureSchema                   _schema;
+    osg::ref_ptr<CacheBin>          _cacheBin;
+    osg::ref_ptr<osgDB::Options>    _dbOptions;
+    OGRSFDriverH                    _geojsonDriver, _gmlDriver;
 };
 
 
diff --git a/src/osgEarthDrivers/feature_wfs/WFSFeatureOptions b/src/osgEarthDrivers/feature_wfs/WFSFeatureOptions
index b0adae0..21dbf9b 100644
--- a/src/osgEarthDrivers/feature_wfs/WFSFeatureOptions
+++ b/src/osgEarthDrivers/feature_wfs/WFSFeatureOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #define OSGEARTH_DRIVER_WFS_FEATURE_SOURCE_OPTIONS 1
 
 #include <osgEarth/Common>
+#include <osgEarth/URI>
 #include <osgEarthFeatures/FeatureSource>
 
 namespace osgEarth { namespace Drivers
@@ -27,31 +28,46 @@ namespace osgEarth { namespace Drivers
     using namespace osgEarth;
     using namespace osgEarth::Features;
 
+    /**
+     * Options for the WFS driver.
+     */
     class WFSFeatureOptions : public FeatureSourceOptions // NO EXPORT; header only
     {
     public:
+        /** Base URL of the WFS service (not including any WFS parameters) */
         optional<URI>& url() { return _url; }
         const optional<URI>& url() const { return _url; }
         
+        /** deprecated */
         optional<Config>& geometryProfileOptions() { return _geometryProfileConf; }
         const optional<Config>& geometryProfileOptions() const { return _geometryProfileConf; }
 
+        /** WFS typename parameter (see WFS spec) */
         optional<std::string>& typeName() { return _typename; }
         const optional<std::string>& typeName() const { return _typename; }
 
+        /** Cap on the number of features that the WFS service will return on a single request */
         optional<unsigned int>& maxFeatures() { return _maxFeatures; }
         const optional<unsigned int>& maxFeatures() const { return _maxFeatures;}
 
+        /** Response format to request (geojson, gml) */
         optional<std::string>& outputFormat() { return _outputFormat; }
         const optional<std::string>& outputFormat() const { return _outputFormat; }
 
+        /** Explicity disable a "TFS" tiled feature source queries */
+        optional<bool>& disableTiling() { return _disableTiling; }
+        const optional<bool>& disableTiling() const { return _disableTiling;}
+
 
 
     public:
         WFSFeatureOptions( const ConfigOptions& opt =ConfigOptions() ) : FeatureSourceOptions( opt ) {
+            setDriver( "wfs" );
             fromConfig( _conf );
         }
 
+        virtual ~WFSFeatureOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = FeatureSourceOptions::getConfig();
@@ -60,6 +76,7 @@ namespace osgEarth { namespace Drivers
             conf.updateIfSet( "typename", _typename );
             conf.updateIfSet( "outputformat", _outputFormat);
             conf.updateIfSet( "maxfeatures", _maxFeatures );
+            conf.updateIfSet( "disable_tiling", _disableTiling );
             return conf;
         }
 
@@ -76,6 +93,7 @@ namespace osgEarth { namespace Drivers
             conf.getIfSet( "typename", _typename);
             conf.getIfSet( "outputformat", _outputFormat );
             conf.getIfSet( "maxfeatures", _maxFeatures );
+            conf.getIfSet( "disable_tiling", _disableTiling);
         }
 
         optional<URI>         _url;        
@@ -83,6 +101,7 @@ namespace osgEarth { namespace Drivers
         optional<Config>      _geometryProfileConf;
         optional<std::string> _outputFormat;
         optional<unsigned>    _maxFeatures;            
+        optional<bool>    _disableTiling;            
     };
 
 } } // namespace osgEarth::Drivers
diff --git a/src/osgEarthDrivers/gdal/GDALOptions b/src/osgEarthDrivers/gdal/GDALOptions
index 704e185..4a80974 100644
--- a/src/osgEarthDrivers/gdal/GDALOptions
+++ b/src/osgEarthDrivers/gdal/GDALOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,11 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
-#include <osgEarth/HeightFieldUtils>
+#include <osgEarth/GeoCommon>
+#include <osgEarth/URI>
+
+// forward-declare GDAL type
+class GDALDataset;
 
 namespace osgEarth { namespace Drivers
 {
@@ -29,6 +33,28 @@ namespace osgEarth { namespace Drivers
 
     class GDALOptions : public TileSourceOptions // NO EXPORT; header only
     {
+    public:
+        class ExternalDataset : public osg::Referenced // NO EXPORT; header only
+        {
+        public:
+            ExternalDataset() : osg::Referenced(), _dataset(NULL), _ownsDataset(true) {};
+            ExternalDataset(GDALDataset* dataset, bool ownsDataset) : osg::Referenced(), _dataset(dataset), _ownsDataset(ownsDataset) {};
+
+        protected:
+            virtual ~ExternalDataset() {};
+
+        public:
+            GDALDataset* dataset() const { return _dataset; };
+            void setDataset(GDALDataset* dataset) { _dataset = dataset; };
+
+            bool ownsDataset() const { return _ownsDataset; };
+            void setOwnsDataset(bool ownsDataset) { _ownsDataset = ownsDataset; };
+
+        private:
+            GDALDataset* _dataset;
+            bool         _ownsDataset;
+        };
+
     public: // properties
 
         optional<URI>& url() { return _url; }
@@ -43,9 +69,29 @@ namespace osgEarth { namespace Drivers
         optional<unsigned int>& maxDataLevel() { return _maxDataLevel;}
         const optional<unsigned int>& maxDataLevel() const { return _maxDataLevel;}
 
+        optional<unsigned int>& subDataSet() { return _subDataSet;}
+        const optional<unsigned int>& subDataSet() const { return _subDataSet;}
+
         optional<bool>& interpolateImagery() { return _interpolateImagery;}
         const optional<bool>& interpolateImagery() const { return _interpolateImagery;}
 
+        /**
+         The "warp profile" is a way to tell the GDAL driver to keep the original SRS and geotransform of the source data
+         but use a Warped VRT to make the data appear to conform to the given profile.  This is useful for merging multiple 
+         files that may be in different projections using the composite driver.
+        */
+        optional<ProfileOptions>& warpProfile() { return _warpProfile; }
+        const optional<ProfileOptions>& warpProfile() const { return _warpProfile; }
+
+        /**
+         The "external dataset" is a way to provide your own GDAL dataset to the GDAL driver.
+         There are two fields :
+          - dataset() : which stores your own GDAL dataset pointer
+          - ownsDataset() : if set to true, the GDALTileSource "owns" the external dataset and closes it when deleted.
+        */
+        osg::ref_ptr<ExternalDataset>& externalDataset() { return _externalDataset; }
+        const osg::ref_ptr<ExternalDataset>& externalDataset() const { return _externalDataset; }
+
     public: // ctors
 
         GDALOptions( const TileSourceOptions& options =TileSourceOptions() ) :
@@ -57,7 +103,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
-    protected:
+        virtual ~GDALOptions() { }
+
+    public:
 
         Config getConfig() const
         {
@@ -72,8 +120,14 @@ namespace osgEarth { namespace Drivers
             }
 
             conf.updateIfSet( "max_data_level", _maxDataLevel);
+            conf.updateIfSet( "subdataset", _subDataSet);
 
             conf.updateIfSet( "interp_imagery", _interpolateImagery);
+
+            conf.updateObjIfSet( "warp_profile", _warpProfile );
+
+            conf.updateNonSerializable( "GDALOptions::ExternalDataset", _externalDataset.get() );
+
             return conf;
         }
 
@@ -90,18 +144,25 @@ namespace osgEarth { namespace Drivers
             else if ( in == "average" ) _interpolation = osgEarth::INTERP_AVERAGE;
             else if ( in == "bilinear" ) _interpolation = osgEarth::INTERP_BILINEAR;
             conf.getIfSet( "max_data_level", _maxDataLevel);
+            conf.getIfSet( "subdataset", _subDataSet);
 
             conf.getIfSet("interp_imagery", _interpolateImagery);
+
+            conf.getObjIfSet( "warp_profile", _warpProfile );
+
+            _externalDataset = conf.getNonSerializable<ExternalDataset>( "GDALOptions::ExternalDataset" );
         }
 
         optional<URI>                    _url;
         optional<std::string>            _extensions;
         optional<ElevationInterpolation> _interpolation;
         optional<bool>                   _interpolateImagery;
-        optional<unsigned>               _maxDataLevel;
+        optional<unsigned int>           _maxDataLevel;
+        optional<unsigned int>           _subDataSet;
+        optional<ProfileOptions>         _warpProfile;
+        osg::ref_ptr<ExternalDataset>    _externalDataset;
     };
 
 } } // namespace osgEarth::Drivers
 
 #endif // OSGEARTH_DRIVER_GDAL_DRIVEROPTIONS
-
diff --git a/src/osgEarthDrivers/gdal/ReaderWriterGDAL.cpp b/src/osgEarthDrivers/gdal/ReaderWriterGDAL.cpp
index 3152e5c..fd28c20 100644
--- a/src/osgEarthDrivers/gdal/ReaderWriterGDAL.cpp
+++ b/src/osgEarthDrivers/gdal/ReaderWriterGDAL.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 #include <osgEarth/FileUtils>
 #include <osgEarth/Registry>
 #include <osgEarth/ImageUtils>
+#include <osgEarth/URI>
 
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -218,10 +219,10 @@ build_vrt(std::vector<std::string> &files, ResolutionStrategy resolutionStrategy
             if (!proj || strlen(proj) == 0)
             {                
                 std::string prjLocation = osgDB::getNameLessExtension( std::string(dsFileName) ) + std::string(".prj");
-                std::string wkt;
-                if ( HTTPClient::readString( prjLocation, wkt ) == HTTPClient::RESULT_OK )
-                {                    
-                    proj = CPLStrdup( wkt.c_str() );
+                ReadResult r = URI(prjLocation).readString();
+                if ( r.succeeded() )
+                {
+                    proj = CPLStrdup( r.getString().c_str() );
                 }                
             }
 
@@ -621,110 +622,252 @@ public:
     }
 
     virtual ~GDALTileSource()
-    {             
+    {                     
         GDAL_SCOPED_LOCK;
 
-        if (_warpedDS != _srcDS)
+        // Close the _warpedDS dataset if :
+        // - it exists
+        // - and is different from _srcDS
+        if (_warpedDS && (_warpedDS != _srcDS))
         {
             GDALClose( _warpedDS );
         }
 
-        //Close the datasets if it exists
+        // Close the _srcDS dataset if :
+        // - it exists
+        // - and : 
+        //    -    is different from external dataset
+        //    - or is equal to external dataset, but the tile source owns the external dataset
         if (_srcDS)
         {     
-            GDALClose(_srcDS);
+            bool needClose = true;
+            osg::ref_ptr<GDALOptions::ExternalDataset> pExternalDataset = _options.externalDataset();
+            if (pExternalDataset != NULL)
+            {
+                if ( (pExternalDataset->dataset() == _srcDS) && (pExternalDataset->ownsDataset() == true) )
+                {
+                    needClose = false;
+                }
+            }
+
+            if (needClose == true)
+            {
+                GDALClose(_srcDS);
+            }
         }
     }
 
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
-    {   
+    Status initialize( const osgDB::Options* dbOptions )
+    {           
         GDAL_SCOPED_LOCK;
 
-        if ( !_options.url().isSet() || _options.url()->empty() )
+        Cache* cache = 0;
+
+        _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+
+        if ( _dbOptions.valid() )
         {
-            OE_WARN << LC << "No URL or directory specified " << std::endl;
-            return;
-        }
+            // Set up a Custom caching bin for this TileSource
+            cache = Cache::get( _dbOptions.get() );
+            if ( cache )
+            {
+                Config optionsConf = _options.getConfig();
 
-        URI uri = _options.url().value();
+                std::string binId = Stringify() << std::hex << hashString(optionsConf.toJSON());                
+                _cacheBin = cache->addBin( binId );
 
-        //Find the full path to the URL
-        //If we have a relative path and the map file contains a server address, just concat the server path and the _url together
+                if ( _cacheBin.valid() )
+                {
+                    _cacheBin->apply( _dbOptions.get() );
+                }
+            }
+        }  
 
-        if (osgEarth::isRelativePath(uri.full()) && osgDB::containsServerAddress(referenceURI))
+        // Is a valid external GDAL dataset specified ?
+        bool useExternalDataset = false;
+        osg::ref_ptr<GDALOptions::ExternalDataset> pExternalDataset = _options.externalDataset();
+        if (pExternalDataset != NULL)
         {
-            uri = URI(osgDB::getFilePath(referenceURI) + std::string("/") + uri.full());
+            if (pExternalDataset->dataset() != NULL)
+            {
+                useExternalDataset = true;
+            }
         }
 
-        //If the path doesn't contain a server address, get the full path to the file.
-        if (!osgDB::containsServerAddress(uri.full()))
+        if (useExternalDataset == false &&
+            (!_options.url().isSet() || _options.url()->empty()) )
         {
-            uri = URI(uri.full(), referenceURI);
+            return Status::Error( "No URL or directory specified" );
         }
 
-        StringTokenizer izer( ";" );
-        StringVector exts;
-        izer.tokenize( *_options.extensions(), exts );
-
-        //std::vector<std::string> exts;
+        URI uri = _options.url().value();
 
-        //tokenize( _options.extensions().value(), exts, ";");
-        for (unsigned int i = 0; i < exts.size(); ++i)
+        if (useExternalDataset == false)
         {
-            OE_DEBUG << LC << "Using Extension: " << exts[i] << std::endl;
-        }
-        std::vector<std::string> files;
-        getFiles(uri.full(), exts, files);
+            StringTokenizer izer( ";" );
+            StringVector exts;
+            izer.tokenize( *_options.extensions(), exts );
 
-        OE_INFO << LC << "Driver found " << files.size() << " files:" << std::endl;
-        for (unsigned int i = 0; i < files.size(); ++i)
-        {
-            OE_INFO << LC << "" << files[i] << std::endl;
-        }
+            //std::vector<std::string> exts;
 
-        if (files.empty())
-        {
-            OE_WARN << LC << "Could not find any valid files " << std::endl;
-            return;
-        }
+            //tokenize( _options.extensions().value(), exts, ";");
+            for (unsigned int i = 0; i < exts.size(); ++i)
+            {
+                OE_DEBUG << LC << "Using Extension: " << exts[i] << std::endl;
+            }
+            std::vector<std::string> files;
+            getFiles(uri.full(), exts, files);
 
-        //If we found more than one file, try to combine them into a single logical dataset
-        if (files.size() > 1)
-        {
-            _srcDS = (GDALDataset*)build_vrt(files, HIGHEST_RESOLUTION);
-            if (!_srcDS)
+            OE_INFO << LC << "Driver found " << files.size() << " files:" << std::endl;
+            for (unsigned int i = 0; i < files.size(); ++i)
             {
-                OE_WARN << "[osgEarth::GDAL] Failed to build VRT from input datasets" << std::endl;
-                return;
+                OE_INFO << LC << "" << files[i] << std::endl;
+            }
+
+            if (files.empty())
+            {
+                return Status::Error( "Could not find any valid files" );
+            }
+
+            //If we found more than one file, try to combine them into a single logical dataset
+            if (files.size() > 1)
+            {
+                std::string vrtKey = "combined.vrt";
+
+                //Get the GDAL VRT driver
+                GDALDriver* vrtDriver = (GDALDriver*)GDALGetDriverByName("VRT");
+                
+                //Try to load the VRT file from the cache so we don't have to build it each time.
+                if (_cacheBin.valid())
+                {                
+                    ReadResult result = _cacheBin->readString( vrtKey );                    
+                    if (result.succeeded())
+                    {                        
+                        _srcDS = (GDALDataset*)GDALOpen(result.getString().c_str(), GA_ReadOnly );                                                
+                        if (_srcDS)
+                        {
+                            OE_INFO << LC << "Read VRT from cache!" << std::endl;
+                        }
+                    }
+                }
+
+                //Build the dataset if we didn't already load it
+                if (!_srcDS)
+                {                 
+                    //We couldn't get the VRT from the cache, so build it
+                    osg::Timer_t startTime = osg::Timer::instance()->tick();                    
+                    _srcDS = (GDALDataset*)build_vrt(files, HIGHEST_RESOLUTION);
+                    osg::Timer_t endTime = osg::Timer::instance()->tick();                                                            
+                    OE_INFO << LC << "Built VRT in " << osg::Timer::instance()->delta_s(startTime, endTime) << " s" << std::endl;
+
+                    if (_srcDS)
+                    {
+                        //Cache the VRT so we don't have to build it next time.
+                        if (_cacheBin)
+                        {
+                            std::string vrtFile = getTempName( "", ".vrt");
+                            OE_INFO << "Writing temp VRT to " << vrtFile << std::endl;
+                         
+                            if (vrtDriver)
+                            {                    
+                                vrtDriver->CreateCopy(vrtFile.c_str(), _srcDS, 0, 0, 0, 0 );                                                        
+
+
+                                //We created the temp file, now read the contents back                            
+                                std::ifstream input( vrtFile.c_str() );
+                                if ( input.is_open() )
+                                {
+                                    input >> std::noskipws;
+                                    std::stringstream buf;
+                                    buf << input.rdbuf();                                
+                                    std::string vrtContents = buf.str();                                
+                                    osg::ref_ptr< StringObject > strObject = new StringObject( vrtContents );
+                                    _cacheBin->write( vrtKey, strObject.get() );
+                                }
+                            }                                                
+                            if (osgDB::fileExists( vrtFile ) )
+                            {
+                                remove( vrtFile.c_str() );
+                            }
+                        }
+                    }
+                    else
+                    {
+                        return Status::Error( "Failed to build VRT from input datasets" );
+                    }
+                }
+            }
+            else
+            {            
+                //If we couldn't build a VRT, just try opening the file directly
+                //Open the dataset
+                _srcDS = (GDALDataset*)GDALOpen( files[0].c_str(), GA_ReadOnly );
+
+                if (_srcDS)
+                {
+
+                    char **subDatasets = _srcDS->GetMetadata( "SUBDATASETS");
+                    int numSubDatasets = CSLCount( subDatasets );
+                    //OE_NOTICE << "There are " << numSubDatasets << " in this file " << std::endl;
+
+                    if (numSubDatasets > 0)
+                    {            
+                        int subDataset = _options.subDataSet().isSet() ? *_options.subDataSet() : 1;
+                        if (subDataset < 1 || subDataset > numSubDatasets) subDataset = 1;
+                        std::stringstream buf;
+                        buf << "SUBDATASET_" << subDataset << "_NAME";
+                        char *pszSubdatasetName = CPLStrdup( CSLFetchNameValue( subDatasets, buf.str().c_str() ) );
+                        GDALClose( _srcDS );
+                        _srcDS = (GDALDataset*)GDALOpen( pszSubdatasetName, GA_ReadOnly ) ;
+                        CPLFree( pszSubdatasetName );
+                    }
+                }
+
+                if (!_srcDS)
+                {
+                    return Status::Error( Stringify() << "Failed to open dataset " << files[0] );
+                }
             }
         }
         else
         {
-            //If we couldn't build a VRT, just try opening the file directly
-            //Open the dataset
-            _srcDS = (GDALDataset*)GDALOpen( files[0].c_str(), GA_ReadOnly );
-            if ( !_srcDS )
-            {
-                OE_WARN << LC << "Failed to open dataset " << files[0] << std::endl;
-                return;
-            }
+            _srcDS = pExternalDataset->dataset();
+        }
+
+
+        //Get the "warp profile", which is the profile that this dataset should take on by creating a warping VRT.  This is
+        //useful when you want to use multiple images of different projections in a composite image.
+        osg::ref_ptr< const Profile > warpProfile;
+        if (_options.warpProfile().isSet())
+        {
+            warpProfile = Profile::create( _options.warpProfile().value() );
+        }
+
+        if (warpProfile.valid())
+        {
+            OE_NOTICE << "Created warp profile " << warpProfile->toString() <<  std::endl;
         }
 
+
+
+
         //Create a spatial reference for the source.
-        const char* srcProj = _srcDS->GetProjectionRef();
-        if ( srcProj != 0L && overrideProfile != 0L )
+        std::string srcProj = _srcDS->GetProjectionRef();
+
+        
+        if ( !srcProj.empty() && getProfile() != 0L )
         {
             OE_WARN << LC << "WARNING, overriding profile of a source that already defines its own SRS (" 
                 << this->getName() << ")" << std::endl;
         }
 
         osg::ref_ptr<const SpatialReference> src_srs;
-        if ( overrideProfile )
+        if ( getProfile() )
         {
-            src_srs = overrideProfile->getSRS();
+            src_srs = getProfile()->getSRS();
         }
-        else if ( srcProj )
+        else if ( !srcProj.empty() )
         {
             src_srs = SpatialReference::create( srcProj );
         }
@@ -734,24 +877,40 @@ public:
         {
             // not found in the dataset; try loading a .prj file
             std::string prjLocation = osgDB::getNameLessExtension( uri.full() ) + std::string(".prj");
-            std::string wkt;
-            if ( HTTPClient::readString( prjLocation, wkt ) == HTTPClient::RESULT_OK )
+
+            ReadResult r = URI(prjLocation).readString( _dbOptions.get() );
+            if ( r.succeeded() )
             {
-                src_srs = SpatialReference::create( wkt );
+                src_srs = SpatialReference::create( r.getString() );
             }
 
             if ( !src_srs.valid() )
             {
-                OE_WARN << LC << "Dataset has no spatial reference information: " << uri.full() << std::endl;
-                return;
+                return Status::Error( Stringify()
+                    << "Dataset has no spatial reference information (" << uri.full() << ")" );
             }
         }
 
+        //Get the initial geotransform
+        _srcDS->GetGeoTransform(_geotransform);
+        
+        bool hasGCP = _srcDS->GetGCPCount() > 0 && _srcDS->GetGCPProjection();
+        bool isRotated = _geotransform[2] != 0.0 || _geotransform[4];
+        if (hasGCP) OE_DEBUG << LC << uri.full() << " has GCP georeferencing" << std::endl;
+        if (isRotated) OE_DEBUG << LC << uri.full() << " is rotated " << std::endl;
+        bool requiresReprojection = hasGCP || isRotated;
+
         const Profile* profile = NULL;
 
-        if ( overrideProfile )
+        if ( warpProfile )
+        {
+            profile = warpProfile;
+        }
+
+        // If we have an override profile, just take it.
+        if ( getProfile() )
         {
-            profile = overrideProfile;
+            profile = getProfile();
         }
 
         if ( !profile && src_srs->isGeographic() )
@@ -769,9 +928,11 @@ public:
 
         std::string warpedSRSWKT;
 
-        if ( profile && !profile->getSRS()->isEquivalentTo( src_srs.get() ) )
+        if ( requiresReprojection || (profile && !profile->getSRS()->isEquivalentTo( src_srs.get() )) )
         {
-            if ( profile->getSRS()->isGeographic() && (src_srs->isNorthPolar() || src_srs->isSouthPolar()) )
+            std::string destWKT = profile ? profile->getSRS()->getWKT() : src_srs->getWKT();
+
+            if ( profile && profile->getSRS()->isGeographic() && (src_srs->isNorthPolar() || src_srs->isSouthPolar()) )
             {
                 _warpedDS = (GDALDataset*)GDALAutoCreateWarpedVRTforPolarStereographic(
                     _srcDS,
@@ -782,22 +943,20 @@ public:
                     NULL);
             }
             else
-            {
+            {                                
                 _warpedDS = (GDALDataset*)GDALAutoCreateWarpedVRT(
                     _srcDS,
                     src_srs->getWKT().c_str(),
-                    profile->getSRS()->getWKT().c_str(),
+                    destWKT.c_str(),
                     GRA_NearestNeighbour,
                     5.0,
-                    NULL);
+                    0);
             }
 
             if ( _warpedDS )
             {
                 warpedSRSWKT = _warpedDS->GetProjectionRef();
             }
-
-            //GDALAutoCreateWarpedVRT(srcDS, src_wkt.c_str(), t_srs.c_str(), GRA_NearestNeighbour, 5.0, NULL);
         }
         else
         {
@@ -806,15 +965,15 @@ public:
         }
 
         //Get the _geotransform
-        if (overrideProfile)
-        {        
-            _geotransform[0] = overrideProfile->getExtent().xMin(); //Top left x
-            _geotransform[1] = overrideProfile->getExtent().width() / (double)_warpedDS->GetRasterXSize();//pixel width
-            _geotransform[2] = 0;
+        if ( getProfile() )
+        {
+            _geotransform[0] =  getProfile()->getExtent().xMin(); //Top left x
+            _geotransform[1] =  getProfile()->getExtent().width() / (double)_warpedDS->GetRasterXSize();//pixel width
+            _geotransform[2] =  0;
 
-            _geotransform[3] = overrideProfile->getExtent().yMax(); //Top left y
-            _geotransform[4] = 0;
-            _geotransform[5] = -overrideProfile->getExtent().height() / (double)_warpedDS->GetRasterYSize();//pixel height
+            _geotransform[3] =  getProfile()->getExtent().yMax(); //Top left y
+            _geotransform[4] =  0;
+            _geotransform[5] = -getProfile()->getExtent().height() / (double)_warpedDS->GetRasterYSize();//pixel height
 
         }
         else
@@ -824,6 +983,8 @@ public:
 
         GDALInvGeoTransform(_geotransform, _invtransform);
 
+        double minX, minY, maxX, maxY;
+
 
         //Compute the extents
         // polar needs a special case when combined with geographic
@@ -836,34 +997,33 @@ public:
             pixelToGeo(_warpedDS->GetRasterXSize(), _warpedDS->GetRasterYSize(), lr_lon, lr_lat);
             pixelToGeo(_warpedDS->GetRasterXSize(), 0.0, ur_lon, ur_lat);
 
-            _extentsMin.x() = osg::minimum( ll_lon, osg::minimum( ul_lon, osg::minimum( ur_lon, lr_lon ) ) );
-            _extentsMax.x() = osg::maximum( ll_lon, osg::maximum( ul_lon, osg::maximum( ur_lon, lr_lon ) ) );
+            minX = osg::minimum( ll_lon, osg::minimum( ul_lon, osg::minimum( ur_lon, lr_lon ) ) );
+            maxX = osg::maximum( ll_lon, osg::maximum( ul_lon, osg::maximum( ur_lon, lr_lon ) ) );
             
             if ( src_srs->isNorthPolar() )
             {
-                _extentsMin.y() = osg::minimum( ll_lat, osg::minimum( ul_lat, osg::minimum( ur_lat, lr_lat ) ) );
-                _extentsMax.y() = 90.0;
+                minY = osg::minimum( ll_lat, osg::minimum( ul_lat, osg::minimum( ur_lat, lr_lat ) ) );
+                maxY = 90.0;
             }
             else
             {
-                _extentsMin.y() = -90.0;
-                _extentsMax.y() = osg::maximum( ll_lat, osg::maximum( ul_lat, osg::maximum( ur_lat, lr_lat ) ) );
+                minY = -90.0;
+                maxY = osg::maximum( ll_lat, osg::maximum( ul_lat, osg::maximum( ur_lat, lr_lat ) ) );
             }
         }
         else
         {
-            pixelToGeo(0.0, _warpedDS->GetRasterYSize(), _extentsMin.x(), _extentsMin.y());
-            pixelToGeo(_warpedDS->GetRasterXSize(), 0.0, _extentsMax.x(), _extentsMax.y());
+            pixelToGeo(0.0, _warpedDS->GetRasterYSize(), minX, minY);
+            pixelToGeo(_warpedDS->GetRasterXSize(), 0.0, maxX, maxY);
         }
 
-        OE_INFO << LC << "Geo extents: " << _extentsMin.x() << ", " << _extentsMin.y() << " => " << _extentsMax.x() << ", " << _extentsMax.y() << std::endl;
+        OE_DEBUG << LC << "Geo extents: " << minX << ", " << minY << " -> " << maxX << ", " << maxY << std::endl;
 
         if ( !profile )
         {
             profile = Profile::create( 
                 warpedSRSWKT,
-                //_warpedDS->GetProjectionRef(),
-                _extentsMin.x(), _extentsMin.y(), _extentsMax.x(), _extentsMax.y() );
+                minX, minY, maxX, maxY);
 
             OE_INFO << LC << "" << uri.full() << " is projected, SRS = " 
                 << warpedSRSWKT << std::endl;
@@ -871,10 +1031,10 @@ public:
         }
 
         //Compute the min and max data levels
-        double resolutionX = (_extentsMax.x() - _extentsMin.x()) / (double)_warpedDS->GetRasterXSize();
-        double resolutionY = (_extentsMax.y() - _extentsMin.y()) / (double)_warpedDS->GetRasterYSize();
+        double resolutionX = (maxX - minX) / (double)_warpedDS->GetRasterXSize();
+        double resolutionY = (maxY - minY) / (double)_warpedDS->GetRasterYSize();
 
-		double maxResolution = osg::minimum(resolutionX, resolutionY);
+        double maxResolution = osg::minimum(resolutionX, resolutionY);
 
         OE_INFO << LC << "Resolution= " << resolutionX << "x" << resolutionY << " max=" << maxResolution << std::endl;
 
@@ -900,21 +1060,20 @@ public:
                 }
             }
 
-            OE_INFO << LC << "Max Data Level: " << _maxDataLevel << std::endl;
+            OE_NOTICE << LC << "Max Data Level: " << _maxDataLevel << std::endl;
         }
 
+        osg::ref_ptr< SpatialReference > srs = SpatialReference::create( warpedSRSWKT );
         // record the data extent in profile space:
-        GeoExtent local_extent(
-            SpatialReference::create( warpedSRSWKT ), //_warpedDS->GetProjectionRef() ),
-            _extentsMin.x(), _extentsMin.y(), _extentsMax.x(), _extentsMax.y() );
-        GeoExtent profile_extent = local_extent.transform( profile->getSRS() );
+        _extents = GeoExtent( srs, minX, minY, maxX, maxY);
+        GeoExtent profile_extent = _extents.transform( profile->getSRS() );
 
         getDataExtents().push_back( DataExtent(profile_extent, 0, _maxDataLevel) );
-        
-        OE_INFO << LC << "Data Extents: " << profile_extent.toString() << std::endl;
 
-		//Set the profile
-		setProfile( profile );
+        //Set the profile
+        setProfile( profile );
+
+        return STATUS_OK;
     }
 
 
@@ -1016,8 +1175,8 @@ public:
         geoY = _geotransform[3] + _geotransform[4] * x + _geotransform[5] * y;
     }
 
-    osg::Image* createImage( const TileKey& key,
-                             ProgressCallback* progress)
+    osg::Image* createImage( const TileKey&        key,
+                             ProgressCallback*     progress)
     {
         if (key.getLevelOfDetail() > _maxDataLevel)
         {
@@ -1101,7 +1260,41 @@ public:
 
             GDALRasterBand* bandGray = findBand(_warpedDS, GCI_GrayIndex);
 
-			GDALRasterBand* bandPalette = findBand(_warpedDS, GCI_PaletteIndex);
+            GDALRasterBand* bandPalette = findBand(_warpedDS, GCI_PaletteIndex);
+
+            if (!bandRed && !bandGreen && !bandBlue && !bandAlpha && !bandGray && !bandPalette)
+            {
+                OE_DEBUG << LC << "Could not determine bands based on color interpretation, using band count" << std::endl;
+                //We couldn't find any valid bands based on the color interp, so just make an educated guess based on the number of bands in the file
+                //RGB = 3 bands
+                if (_warpedDS->GetRasterCount() == 3)
+                {
+                    bandRed   = _warpedDS->GetRasterBand( 1 );
+                    bandGreen = _warpedDS->GetRasterBand( 2 );
+                    bandBlue  = _warpedDS->GetRasterBand( 3 );
+                }
+                //RGBA = 4 bands
+                else if (_warpedDS->GetRasterCount() == 4)
+                {
+                    bandRed   = _warpedDS->GetRasterBand( 1 );
+                    bandGreen = _warpedDS->GetRasterBand( 2 );
+                    bandBlue  = _warpedDS->GetRasterBand( 3 );
+                    bandAlpha = _warpedDS->GetRasterBand( 4 );
+                }
+                //Gray = 1 band
+                else if (_warpedDS->GetRasterCount() == 1)
+                {
+                    bandGray = _warpedDS->GetRasterBand( 1 );
+                }
+                //Gray + alpha = 2 bands
+                else if (_warpedDS->GetRasterCount() == 2)
+                {
+                    bandGray  = _warpedDS->GetRasterBand( 1 );
+                    bandAlpha = _warpedDS->GetRasterBand( 2 );
+                }
+            }
+
+
 
             //The pixel format is always RGBA to support transparency
             GLenum pixelFormat = GL_RGBA;
@@ -1141,10 +1334,21 @@ public:
                             src_col < target_width;
                             ++src_col, ++dst_col)
                         {
-                            *(image->data(dst_col, dst_row) + 0) = red[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 1) = green[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 2) = blue[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 3) = alpha[src_col + src_row * target_width];
+                            unsigned char r = red[src_col + src_row * target_width];
+                            unsigned char g = green[src_col + src_row * target_width];
+                            unsigned char b = blue[src_col + src_row * target_width];
+                            unsigned char a = alpha[src_col + src_row * target_width];
+                            *(image->data(dst_col, dst_row) + 0) = r;
+                            *(image->data(dst_col, dst_row) + 1) = g;
+                            *(image->data(dst_col, dst_row) + 2) = b;                            
+                            if (!isValidValue( r, bandRed)    ||
+                                !isValidValue( g, bandGreen)  || 
+                                !isValidValue( b, bandBlue)   ||
+                                (bandAlpha && !isValidValue( a, bandAlpha )))
+                            {
+                                a = 0.0f;
+                            }                            
+                            *(image->data(dst_col, dst_row) + 3) = a;
                         }
                     }
 
@@ -1153,17 +1357,17 @@ public:
                 else
                 {
                     //Sample each point exactly
-                    for (unsigned int c = 0; c < tileSize; ++c)
+                    for (unsigned int c = 0; c < (unsigned int)tileSize; ++c)
                     {
                         double geoX = xmin + (dx * (double)c); 
-                        for (unsigned int r = 0; r < tileSize; ++r)
+                        for (unsigned int r = 0; r < (unsigned int)tileSize; ++r)
                         {
                             double geoY = ymin + (dy * (double)r); 
-                            *(image->data(c,r) + 0) = getInterpolatedValue(bandRed,  geoX,geoY,false); 
-                            *(image->data(c,r) + 1) = getInterpolatedValue(bandGreen,geoX,geoY,false); 
-                            *(image->data(c,r) + 2) = getInterpolatedValue(bandBlue, geoX,geoY,false); 
+                            *(image->data(c,r) + 0) = (unsigned char)getInterpolatedValue(bandRed,  geoX,geoY,false); 
+                            *(image->data(c,r) + 1) = (unsigned char)getInterpolatedValue(bandGreen,geoX,geoY,false); 
+                            *(image->data(c,r) + 2) = (unsigned char)getInterpolatedValue(bandBlue, geoX,geoY,false); 
                             if (bandAlpha != NULL) 
-                                *(image->data(c,r) + 3) = getInterpolatedValue(bandAlpha,geoX, geoY, false); 
+                                *(image->data(c,r) + 3) = (unsigned char)getInterpolatedValue(bandAlpha,geoX, geoY, false); 
                             else 
                                 *(image->data(c,r) + 3) = 255; 
                         }
@@ -1205,10 +1409,17 @@ public:
                             src_col < target_width;
                             ++src_col, ++dst_col)
                         {
-                            *(image->data(dst_col, dst_row) + 0) = gray[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 1) = gray[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 2) = gray[src_col + src_row * target_width];
-                            *(image->data(dst_col, dst_row) + 3) = alpha[src_col + src_row * target_width];
+                            unsigned char g = gray[src_col + src_row * target_width];
+                            unsigned char a = alpha[src_col + src_row * target_width];
+                            *(image->data(dst_col, dst_row) + 0) = g;
+                            *(image->data(dst_col, dst_row) + 1) = g;
+                            *(image->data(dst_col, dst_row) + 2) = g;                            
+                            if (!isValidValue( g, bandGray) ||
+                               (bandAlpha && !isValidValue( a, bandAlpha)))
+                            {
+                                a = 0.0f;
+                            }
+                            *(image->data(dst_col, dst_row) + 3) = a;
                         }
                     }
 
@@ -1225,11 +1436,11 @@ public:
                             double geoY   = ymin + (dy * (double)r); 
                             float  color = getInterpolatedValue(bandGray,geoX,geoY,false); 
 
-                            *(image->data(c,r) + 0) = color; 
-                            *(image->data(c,r) + 1) = color; 
-                            *(image->data(c,r) + 2) = color; 
+                            *(image->data(c,r) + 0) = (unsigned char)color; 
+                            *(image->data(c,r) + 1) = (unsigned char)color; 
+                            *(image->data(c,r) + 2) = (unsigned char)color; 
                             if (bandAlpha != NULL) 
-                                *(image->data(c,r) + 3) = getInterpolatedValue(bandAlpha,geoX,geoY,false); 
+                                *(image->data(c,r) + 3) = (unsigned char)getInterpolatedValue(bandAlpha,geoX,geoY,false); 
                             else 
                                 *(image->data(c,r) + 3) = 255; 
                         }
@@ -1240,39 +1451,45 @@ public:
                 delete []alpha;
 
             }
-			else if (bandPalette)
+            else if (bandPalette)
             {
                 //Pallete indexed imagery doesn't support interpolation currently and only uses nearest
                 //b/c interpolating pallete indexes doesn't make sense.
-				unsigned char *palette = new unsigned char[target_width * target_height];
+                unsigned char *palette = new unsigned char[target_width * target_height];
 
                 image = new osg::Image;
                 image->allocateImage(tileSize, tileSize, 1, pixelFormat, GL_UNSIGNED_BYTE);
                 memset(image->data(), 0, image->getImageSizeInBytes());
 
-				bandPalette->RasterIO(GF_Read, off_x, off_y, width, height, palette, target_width, target_height, GDT_Byte, 0, 0);
+                bandPalette->RasterIO(GF_Read, off_x, off_y, width, height, palette, target_width, target_height, GDT_Byte, 0, 0);
 
-				for (int src_row = 0, dst_row = tile_offset_top;
-					src_row < target_height;
-					src_row++, dst_row++)
-				{
-					for (int src_col = 0, dst_col = tile_offset_left;
-						src_col < target_width;
-						++src_col, ++dst_col)
-					{
+                for (int src_row = 0, dst_row = tile_offset_top;
+                    src_row < target_height;
+                    src_row++, dst_row++)
+                {
+                    for (int src_col = 0, dst_col = tile_offset_left;
+                        src_col < target_width;
+                        ++src_col, ++dst_col)
+                    {
+                        
+                        unsigned char p = palette[src_col + src_row * target_width];
                         osg::Vec4ub color;
-                        getPalleteIndexColor( bandPalette, palette[src_col + src_row * target_width], color );						
+                        getPalleteIndexColor( bandPalette, p, color );                        
+                        if (!isValidValue( p, bandPalette))
+                        {
+                            color.a() = 0.0f;
+                        }
 
                         *(image->data(dst_col, dst_row) + 0) = color.r();
                         *(image->data(dst_col, dst_row) + 1) = color.g();
                         *(image->data(dst_col, dst_row) + 2) = color.b();
                         *(image->data(dst_col, dst_row) + 3) = color.a();
-					}
-				}
+                    }
+                }
 
-				image->flipVertical();
+                image->flipVertical();
 
-				delete [] palette;
+                delete [] palette;
 
             }
             else
@@ -1285,6 +1502,10 @@ public:
                 return NULL;
             }
         }
+        else
+        {
+            OE_NOTICE << LC << key.str() << " does not intersect " << _options.url()->full() << std::endl;
+        }
 
         // Moved this logic up into ImageLayer::createImageWrapper.
         ////Create a transparent image if we don't have an image
@@ -1456,8 +1677,8 @@ public:
     }
 
 
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress)
+    osg::HeightField* createHeightField( const TileKey&        key,
+                                         ProgressCallback*     progress)
     {
         if (key.getLevelOfDetail() > _maxDataLevel)
         {
@@ -1505,11 +1726,7 @@ public:
 
     bool intersects(const TileKey& key)
     {
-        //Get the native extents of the tile
-        double xmin, ymin, xmax, ymax;
-        key.getExtent().getBounds(xmin, ymin, xmax, ymax);
-
-        return ! ( xmin >= _extentsMax.x() || xmax <= _extentsMin.x() || ymin >= _extentsMax.y() || ymax <= _extentsMin.y() );        
+        return key.getExtent().intersects( _extents );
     }
 
 
@@ -1520,16 +1737,12 @@ private:
     double       _geotransform[6];
     double       _invtransform[6];
 
-    osg::Vec2d _extentsMin;
-    osg::Vec2d _extentsMax;
-
-    //std::string     _url;
-    //int             _tile_size;
-    //std::string     _extensions;
-    //ElevationInterpolation   _interpolation;
+    GeoExtent _extents;
 
     const GDALOptions _options;
-    //osg::ref_ptr<const GDALOptions> _settings;
+
+    osg::ref_ptr< CacheBin > _cacheBin;
+    osg::ref_ptr< osgDB::Options > _dbOptions;
 
     unsigned int _maxDataLevel;
 };
diff --git a/src/osgEarthDrivers/kml/CMakeLists.txt b/src/osgEarthDrivers/kml/CMakeLists.txt
index 9b2e8de..f356b20 100644
--- a/src/osgEarthDrivers/kml/CMakeLists.txt
+++ b/src/osgEarthDrivers/kml/CMakeLists.txt
@@ -9,7 +9,12 @@ IF(WIN32)
     ENDIF(CURL_IS_STATIC)
 ENDIF(WIN32)
     
-SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthFeatures osgEarthSymbology osgEarthUtil)
+set(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} 
+    osgEarthFeatures 
+    osgEarthSymbology 
+    osgEarthUtil
+    osgEarthAnnotation
+)
 
 IF( MINIZIP_FOUND )
     SET(TARGET_LIBRARIES_VARS ZLIB_LIBRARY MINIZIP_LIBRARY )
diff --git a/src/osgEarthDrivers/kml/KML b/src/osgEarthDrivers/kml/KML
index b24f1ce..81309c6 100644
--- a/src/osgEarthDrivers/kml/KML
+++ b/src/osgEarthDrivers/kml/KML
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,10 +23,9 @@
 #include <osgEarth/URI>
 #include <osgEarth/Registry>
 #include <osgDB/ReaderWriter>
+#include <osgDB/FileNameUtils>
 #include "KMLOptions"
 
-#define LC "[KML] "
-
 namespace osgEarth { namespace Drivers {
 
     using namespace osgEarth;
@@ -35,19 +34,39 @@ namespace osgEarth { namespace Drivers {
     {
     public:
         /**
-         * Loads KML from a URI.
+         * Loads KML or KMZ from a URI.
+         *
+         * @param[in ] uri     URI from which to load the KML or KMZ
+         * @param[in ] mapNode MapNode to which to attach KML elements
+         * @param[in ] options Optional KML options
          */
-        static osg::Node* load( const URI& uri, MapNode* mapNode, const KMLOptions& kmlOptions =KMLOptions() )
+        static osg::Node* load(const URI&            uri, 
+                               MapNode*              mapNode,
+                               const osgDB::Options* dbOptions, 
+                               const KMLOptions&     kmlOptions)
         {
             if ( !mapNode ) {
-                OE_WARN << LC << "MapNode instance required" << std::endl;
+                OE_WARN << "[KML] " << "MapNode instance required" << std::endl;
                 return 0L;
             }
-            osg::ref_ptr<osgDB::Options> options = Registry::instance()->cloneOrCreateOptions();
-            options->setPluginData( "osgEarth::MapNode", mapNode );
+            osg::ref_ptr<osgDB::Options> options = Registry::instance()->cloneOrCreateOptions( dbOptions );
+            options->setPluginData( "osgEarth::MapNode",    mapNode );
             options->setPluginData( "osgEarth::KMLOptions", (void*)&kmlOptions );
 
-            return uri.readNode( options.get() );
+            // for a KMZ archive over HTTP, we need to go through OSG's archive management system
+            if ( osgDB::containsServerAddress(uri.full()) && osgDB::getLowerCaseFileExtension(uri.full()) == "kmz" )
+            {
+                return osgDB::readNodeFile( uri.full() + "/.kml", options.get() );
+            }
+
+            return uri.getNode( options.get() );
+        }
+
+        static osg::Node* load(const URI&            uri, 
+                               MapNode*              mapNode,
+                               const KMLOptions&     kmlOptions =KMLOptions() )
+        {
+            return load(uri, mapNode, 0L, kmlOptions);
         }
     };
 
diff --git a/src/osgEarthDrivers/kml/KMLOptions b/src/osgEarthDrivers/kml/KMLOptions
index 252b25b..a9df4b0 100644
--- a/src/osgEarthDrivers/kml/KMLOptions
+++ b/src/osgEarthDrivers/kml/KMLOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -29,32 +29,61 @@ namespace osgEarth { namespace Drivers
     using namespace osgEarth;
     using namespace osgEarth::Symbology;
 
+    /**
+     * Options for the KML loader. You can pass an instance of this class
+     * to KML::load()
+     */
     class KMLOptions // NO EXPORT; header only
     {
     public:
-        /** The default URI to use for placemarks that don't specify an icon. */
-        optional<URI>& defaultIconURI() { return _defaultIconURI; }
-        const optional<URI>& defaultIconURI() const { return _defaultIconURI; }
-
-        /** The default image to use for placemarks that don't specify an icon (you
-            can use this instead of the icon uri.) NOT Serializable. */
-        osg::ref_ptr<osg::Image>& defaultIconImage() { return _defaultIconImage; }
-        const osg::ref_ptr<osg::Image>& defaultIconImage() const { return _defaultIconImage; }
-
         /** TextSymbol to use when no styles are set in the KML. */
         osg::ref_ptr<TextSymbol>& defaultTextSymbol() { return _defaultTextSymbol; }
         const osg::ref_ptr<TextSymbol>& defaultTextSymbol() const { return _defaultTextSymbol; }
 
+        /** Default IconSymbol to use for placemarks that don't specify an icon or a model */
+        osg::ref_ptr<IconSymbol>& defaultIconSymbol() { return _defaultIconSymbol; }
+        const osg::ref_ptr<IconSymbol>& defaultIconSymbol() const { return _defaultIconSymbol; }
+
+        /** Default base scale to apply to marker Icons. */
+        optional<float>& iconBaseScale() { return _iconBaseScale; }
+        const optional<float>& iconBaseScale() const { return _iconBaseScale; }
+
+        /** Maximum size (either dimension) of placemarks icons */
+        optional<unsigned>& iconMaxSize() { return _iconMaxSize; }
+        const optional<unsigned>& iconMaxSize() const { return _iconMaxSize; }
+
+        /** Automatically assign KML icons and labels to a decluttering bin */
+        optional<bool>& declutter() { return _declutter; }
+        const optional<bool>& declutter() const { return _declutter; }
+
+        /** Specify a group to which to add screen-space items (2D icons and labels) */
+        osg::ref_ptr<osg::Group> iconAndLabelGroup() { return _iconAndLabelGroup; }
+        const osg::ref_ptr<osg::Group> iconAndLabelGroup() const { return _iconAndLabelGroup; }
+
+        /** Default scale factor to apply to embedded 3D models */
+        optional<float>& modelScale() { return _modelScale; }
+        const optional<float>& modelScale() const { return _modelScale; }
+
+        /** Default rotation to apply to embedded 3D models */
+        optional<osg::Quat>& modelRotation() { return _modelRotation; }
+        const optional<osg::Quat>& modelRotation() const { return _modelRotation; }
+
     public:
-        KMLOptions() { }
+        KMLOptions() : _declutter( true ), _iconBaseScale( 1.0f ), _iconMaxSize(32), _modelScale(1.0f) { }
+
+        virtual ~KMLOptions() { }
 
     protected:
-        optional<URI>            _defaultIconURI;
-        osg::ref_ptr<osg::Image> _defaultIconImage;
+        osg::ref_ptr<IconSymbol> _defaultIconSymbol;
         osg::ref_ptr<TextSymbol> _defaultTextSymbol;
+        optional<bool>           _declutter;
+        optional<float>          _iconBaseScale;
+        optional<unsigned>       _iconMaxSize;
+        optional<float>          _modelScale;
+        optional<osg::Quat>      _modelRotation;
+        osg::ref_ptr<osg::Group> _iconAndLabelGroup;
     };
 
 } } // namespace osgEarth::Drivers
 
 #endif // OSGEARTH_DRIVER_KML_OPTIONS
-
diff --git a/src/osgEarthDrivers/kml/KMLReader b/src/osgEarthDrivers/kml/KMLReader
index dfdca5a..d7e60a2 100644
--- a/src/osgEarthDrivers/kml/KMLReader
+++ b/src/osgEarthDrivers/kml/KMLReader
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,11 +35,14 @@ public:
     /** Initialized a KML reader that will work with the provided map node */
     KMLReader( MapNode* mapNode, const KMLOptions* options );
 
+    /** dtor */
+    virtual ~KMLReader() { }
+
     /** Reads KML from a stream and returns a node */
-    osg::Node* read( std::istream& in, const URIContext& context );
+    osg::Node* read( std::istream& in, const osgDB::Options* dbOptions ) ;
 
     /** Reads KML from a Config object */
-    osg::Node* read( const Config& conf );
+    osg::Node* read( const Config& conf, const osgDB::Options* dbOptions );
 
 private:
     MapNode*          _mapNode;
diff --git a/src/osgEarthDrivers/kml/KMLReader.cpp b/src/osgEarthDrivers/kml/KMLReader.cpp
index 822a16a..50bd50e 100644
--- a/src/osgEarthDrivers/kml/KMLReader.cpp
+++ b/src/osgEarthDrivers/kml/KMLReader.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,7 +18,12 @@
  */
 #include "KMLReader"
 #include "KML_Root"
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
 #include <osgEarth/XmlUtils>
+#include <osgEarth/ShaderGenerator>
+#include <osgEarth/ShaderComposition>
+#include <osgEarthAnnotation/Decluttering>
 #include <stack>
 #include <iterator>
 
@@ -32,8 +37,11 @@ _options( options )
 }
 
 osg::Node*
-KMLReader::read( std::istream& in, const URIContext& context )
+KMLReader::read( std::istream& in, const osgDB::Options* dbOptions )
 {
+    // pull the URI context out of the DB options:
+    URIContext context(dbOptions);
+
     // read the KML from an XML stream:
     osg::ref_ptr<XmlDocument> xml = XmlDocument::load( in, context );
     if ( !xml.valid() )
@@ -42,33 +50,72 @@ KMLReader::read( std::istream& in, const URIContext& context )
     // convert to a config:
     Config config = xml->getConfig();
 
-    osg::Node* node = read( config );
+    osg::Node* node = read( config, dbOptions );
     node->setName( context.referrer() );
 
     return node;
 }
 
 osg::Node*
-KMLReader::read( const Config& conf )
+KMLReader::read( const Config& conf, const osgDB::Options* dbOptions )
 {
     osg::Group* root = new osg::Group();
     root->ref();
 
-    root->setName( conf.uriContext().referrer() );
+    root->setName( conf.referrer() );
 
     KMLContext cx;
-    cx._mapNode = _mapNode;
-    cx._sheet = new StyleSheet();
+    cx._mapNode   = _mapNode;
+    cx._sheet     = new StyleSheet();
+    cx._options   = _options;
+    cx._srs       = SpatialReference::create( "wgs84", "egm96" );
     cx._groupStack.push( root );
-    cx._options = _options;
 
-    const Config& kml = conf.child("kml");
-    if ( !kml.empty() )
+    // clone the dbOptions, and install a resource cache if there isn't one already:
+    URIResultCache defaultUriCache;
+    if ( !URIResultCache::from(dbOptions) )
+    {
+        osgDB::Options* newOptions = Registry::instance()->cloneOrCreateOptions();
+        defaultUriCache.apply( newOptions );
+        cx._dbOptions = newOptions;
+    }
+    else
+    {
+        cx._dbOptions = dbOptions;
+    }
+
+    // intialize the KML options with the defaults if necessary:
+    KMLOptions blankOptions;
+    if ( cx._options == 0L )
+        cx._options = &blankOptions;
+
+    if ( cx._options->iconAndLabelGroup().valid() && cx._options->declutter() == true )
+    {
+        Decluttering::setEnabled( cx._options->iconAndLabelGroup()->getOrCreateStateSet(), true );
+    }
+
+    const Config* top = conf.hasChild("kml" ) ? conf.child_ptr("kml") : &conf;
+
+    if ( top && !top->empty() )
     {
         KML_Root kmlRoot;
-        kmlRoot.scan( kml, cx );    // first pass
-        kmlRoot.scan2( kml, cx );   // second pass
-        kmlRoot.build( kml, cx );   // third pass.
+        kmlRoot.scan ( *top, cx );    // first pass
+        kmlRoot.scan2( *top, cx );   // second pass
+        kmlRoot.build( *top, cx );   // third pass.
+    }
+
+    URIResultCache* cacheUsed = URIResultCache::from(cx._dbOptions.get());
+    CacheStats stats = cacheUsed->getStats();
+    OE_INFO << LC << "URI Cache: " << stats._queries << " reads, " << (stats._hitRatio*100.0) << "% hits" << std::endl;
+
+    if ( Registry::capabilities().supportsGLSL() )
+    {
+        ShaderGenerator gen;
+        root->accept( gen );
+
+        VirtualProgram* vp = new VirtualProgram();
+        vp->installDefaultColoringAndLightingShaders();
+        root->getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
     }
 
     return root;
diff --git a/src/osgEarthDrivers/kml/KML_Common b/src/osgEarthDrivers/kml/KML_Common
index b8c115a..5ef4884 100644
--- a/src/osgEarthDrivers/kml/KML_Common
+++ b/src/osgEarthDrivers/kml/KML_Common
@@ -1,6 +1,7 @@
+
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,9 +21,13 @@
 #define OSGEARTH_DRIVER_KML_COMMON 1
 
 #include <osgEarth/Common>
+#include <osgEarth/Config>
 #include <osgEarth/URI>
 #include <osgEarth/MapNode>
+#include <osgEarth/SpatialReference>
 #include <osgEarthSymbology/Style>
+#include <osgEarthSymbology/StyleSheet>
+#include <osgEarthSymbology/ResourceCache>
 #include "KMLOptions"
 
 #define LC "[KML] "
@@ -60,11 +65,39 @@ using namespace osgEarth::Symbology;
 
 struct KMLContext
 {
-    MapNode*                              _mapNode;
-    const KMLOptions*                     _options;
-    osg::ref_ptr<StyleSheet>              _sheet;
-    Style                                 _activeStyle;
-    std::stack<osg::ref_ptr<osg::Group> > _groupStack;
+    MapNode*                              _mapNode;         // reference map node
+    const KMLOptions*                     _options;         // user options
+    osg::ref_ptr<StyleSheet>              _sheet;           // entire style sheet
+    Style                                 _activeStyle;     // currently active style
+    std::stack<osg::ref_ptr<osg::Group> > _groupStack;      // resulting scene graph
+    osg::ref_ptr<const SpatialReference>  _srs;             // map's spatial reference
+    osg::ref_ptr<const osgDB::Options>    _dbOptions;       // I/O options (caching, etc)
+};
+
+struct KMLUtils
+{
+    // parse KML's many variants on a URL link.
+    static std::string parseLink( const Config& conf )
+    {
+        Config link = conf.child("link");
+        if ( !link.empty() )
+        {
+            if ( link.hasValue("href") )
+                return link.value("href");
+            else if ( link.hasValue("url") )
+                return link.value("url");
+            else
+                return link.value();
+        }
+        else
+        {
+            link = conf.child("url");
+            if ( link.hasValue("href") )
+                return link.value("href");
+            else
+                return link.value();
+        }
+    }
 };
 
 
diff --git a/src/osgEarthDrivers/kml/KML_Container b/src/osgEarthDrivers/kml/KML_Container
index 66b46d4..3354e19 100644
--- a/src/osgEarthDrivers/kml/KML_Container
+++ b/src/osgEarthDrivers/kml/KML_Container
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Document b/src/osgEarthDrivers/kml/KML_Document
index 783e3f4..b3e7a1b 100644
--- a/src/osgEarthDrivers/kml/KML_Document
+++ b/src/osgEarthDrivers/kml/KML_Document
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Document.cpp b/src/osgEarthDrivers/kml/KML_Document.cpp
index 19afe4a..169b653 100644
--- a/src/osgEarthDrivers/kml/KML_Document.cpp
+++ b/src/osgEarthDrivers/kml/KML_Document.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Feature b/src/osgEarthDrivers/kml/KML_Feature
index f3d9ab2..a3f7eca 100644
--- a/src/osgEarthDrivers/kml/KML_Feature
+++ b/src/osgEarthDrivers/kml/KML_Feature
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Feature.cpp b/src/osgEarthDrivers/kml/KML_Feature.cpp
index 74a4a78..a389de0 100644
--- a/src/osgEarthDrivers/kml/KML_Feature.cpp
+++ b/src/osgEarthDrivers/kml/KML_Feature.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,15 +18,17 @@
  */
 #include "KML_Feature"
 #include "KML_Style"
-#include <osgEarthUtil/Viewpoint>
+#include "KML_StyleMap"
+#include <osgEarth/Viewpoint>
 
-using namespace osgEarth::Util;
+using namespace osgEarth;
 
 void
 KML_Feature::scan( const Config& conf, KMLContext& cx )
 {
     KML_Object::scan(conf, cx);
     for_many( Style, scan, conf, cx );
+    for_many( StyleMap, scan, conf, cx );
 }
 
 void
@@ -34,6 +36,7 @@ KML_Feature::scan2( const Config& conf, KMLContext& cx )
 {
     KML_Object::scan2(conf, cx);
     for_many( Style, scan2, conf, cx );
+    for_many( StyleMap, scan2, conf, cx );
 }
 
 void
diff --git a/src/osgEarthDrivers/kml/KML_Folder b/src/osgEarthDrivers/kml/KML_Folder
index 270512d..82d2cd9 100644
--- a/src/osgEarthDrivers/kml/KML_Folder
+++ b/src/osgEarthDrivers/kml/KML_Folder
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Folder.cpp b/src/osgEarthDrivers/kml/KML_Folder.cpp
index 374293a..87d8317 100644
--- a/src/osgEarthDrivers/kml/KML_Folder.cpp
+++ b/src/osgEarthDrivers/kml/KML_Folder.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Geometry b/src/osgEarthDrivers/kml/KML_Geometry
index 6ec9f75..a10b53f 100644
--- a/src/osgEarthDrivers/kml/KML_Geometry
+++ b/src/osgEarthDrivers/kml/KML_Geometry
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Geometry.cpp b/src/osgEarthDrivers/kml/KML_Geometry.cpp
index 9467c77..848cab5 100644
--- a/src/osgEarthDrivers/kml/KML_Geometry.cpp
+++ b/src/osgEarthDrivers/kml/KML_Geometry.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -52,14 +52,14 @@ KML_Geometry::buildChild( const Config& conf, KMLContext& cx, Style& style)
         g.parseCoords(conf, cx);
         _geom = g._geom.get();
     }
-    else if ( conf.key() == "linearring" )
+    else if ( conf.key() == "linearring" || conf.key() == "gx:latlonquad" )
     {
         KML_LinearRing g;
         g.parseStyle(conf, cx, style);
         g.parseCoords(conf, cx);
         _geom = g._geom.get();
     }
-    else if ( conf.key() == "polygon" || conf.key() == "gx:latlonquad" )
+    else if ( conf.key() == "polygon" )
     {
         KML_Polygon g;
         g.parseStyle(conf, cx, style);
diff --git a/src/osgEarthDrivers/kml/KML_GroundOverlay b/src/osgEarthDrivers/kml/KML_GroundOverlay
index dd17026..9e34821 100644
--- a/src/osgEarthDrivers/kml/KML_GroundOverlay
+++ b/src/osgEarthDrivers/kml/KML_GroundOverlay
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_GroundOverlay.cpp b/src/osgEarthDrivers/kml/KML_GroundOverlay.cpp
index 23d1372..d0f3a5c 100644
--- a/src/osgEarthDrivers/kml/KML_GroundOverlay.cpp
+++ b/src/osgEarthDrivers/kml/KML_GroundOverlay.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,9 +18,9 @@
  */
 #include "KML_GroundOverlay"
 #include "KML_Geometry"
-#include <osgEarthUtil/ImageOverlay>
+#include <osgEarthAnnotation/ImageOverlay>
 
-using namespace osgEarth::Util;
+using namespace osgEarth::Annotation;
 
 void
 KML_GroundOverlay::scan( const Config& conf, KMLContext& cx )
@@ -48,10 +48,11 @@ KML_GroundOverlay::build( const Config& conf, KMLContext& cx )
         double south = llb.value<double>("south", 0.0);
         double east  = llb.value<double>("east", 0.0);
         double west  = llb.value<double>("west", 0.0);
-        Angular rotation( llb.value<double>("rotation", 0.0), Units::DEGREES );
+        Angular rotation( -llb.value<double>("rotation", 0.0), Units::DEGREES );
 
-        osg::ref_ptr<osg::Image> image = URI(href, conf.uriContext()).readImage();
-        if ( !image.valid() ) {
+        osg::ref_ptr<osg::Image> image = URI(href, conf.referrer()).readImage().getImage();
+        if ( !image.valid() )
+        {
             OE_WARN << LC << "GroundOverlay failed to read image from " << href << std::endl;
             return;
         }
@@ -69,8 +70,9 @@ KML_GroundOverlay::build( const Config& conf, KMLContext& cx )
         g.buildChild( llq, cx, style );
         if ( g._geom.valid() && g._geom->size() >= 4 )
         {
-            osg::ref_ptr<osg::Image> image = URI(href, conf.uriContext()).readImage();
-            if ( !image.valid() ) {
+            osg::ref_ptr<osg::Image> image = URI(href, conf.referrer()).readImage().getImage();
+            if ( !image.valid() )
+            {
                 OE_WARN << LC << "GroundOverlay failed to read image from " << href << std::endl;
                 return;
             }
diff --git a/src/osgEarthDrivers/kml/KML_IconStyle b/src/osgEarthDrivers/kml/KML_IconStyle
index 2f30b61..e6e40e0 100644
--- a/src/osgEarthDrivers/kml/KML_IconStyle
+++ b/src/osgEarthDrivers/kml/KML_IconStyle
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@ using namespace osgEarth;
 
 struct KML_IconStyle : public KML_Object
 {
-    virtual void scan( const Config& conf, Style& style );
+    virtual void scan( const Config& conf, Style& style, KMLContext& cx );
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_ICONSTYLE
diff --git a/src/osgEarthDrivers/kml/KML_IconStyle.cpp b/src/osgEarthDrivers/kml/KML_IconStyle.cpp
index 6c9f079..3669b94 100644
--- a/src/osgEarthDrivers/kml/KML_IconStyle.cpp
+++ b/src/osgEarthDrivers/kml/KML_IconStyle.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,14 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include "KML_IconStyle"
+#include <osgEarthSymbology/IconSymbol>
 
 void
-KML_IconStyle::scan( const Config& conf, Style& style )
+KML_IconStyle::scan( const Config& conf, Style& style, KMLContext& cx )
 {
     if ( !conf.empty() )
     {
-        MarkerSymbol* marker = style.getOrCreate<MarkerSymbol>();
+        IconSymbol* icon = style.getOrCreate<IconSymbol>();
 
         // Icon/Href or just Icon are both valid
         std::string iconHref = conf.child("icon").value("href");
@@ -31,14 +32,15 @@ KML_IconStyle::scan( const Config& conf, Style& style )
             iconHref = conf.value("icon");
 
         if ( !iconHref.empty() )
-        {
-            marker->url() = StringExpression( iconHref );
-            marker->url()->setURIContext( conf.uriContext() );
-        }
+            icon->url() = StringExpression( iconHref, URIContext(conf.referrer()) );
 
-        optional<float> scale;
-        conf.getIfSet( "scale", scale );
-        if ( scale.isSet() )
-            marker->scale() = NumericExpression( *scale );
+        // see: https://developers.google.com/kml/documentation/kmlreference#headingdiagram
+        if ( conf.hasValue("heading") )
+            icon->heading() = NumericExpression( conf.value("heading") );
+
+        float finalScale = *cx._options->iconBaseScale();
+
+        if ( conf.hasValue("scale") )
+            icon->scale() = NumericExpression( conf.value("scale") );
     }
 }
diff --git a/src/osgEarthDrivers/kml/KML_LabelStyle b/src/osgEarthDrivers/kml/KML_LabelStyle
index 0f25b01..7fba448 100644
--- a/src/osgEarthDrivers/kml/KML_LabelStyle
+++ b/src/osgEarthDrivers/kml/KML_LabelStyle
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@ using namespace osgEarth;
 
 struct KML_LabelStyle : public KML_Object
 {
-    virtual void scan( const Config& conf, Style& style );
+    virtual void scan( const Config& conf, Style& style, KMLContext& cx );
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_LABELSTYLE
diff --git a/src/osgEarthDrivers/kml/KML_LabelStyle.cpp b/src/osgEarthDrivers/kml/KML_LabelStyle.cpp
index 6171bfb..d0d831f 100644
--- a/src/osgEarthDrivers/kml/KML_LabelStyle.cpp
+++ b/src/osgEarthDrivers/kml/KML_LabelStyle.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,6 @@
 #include "KML_LabelStyle"
 
 void 
-KML_LabelStyle::scan( const Config& conf, Style& style )
+KML_LabelStyle::scan( const Config& conf, Style& style, KMLContext& cx )
 {
 }
diff --git a/src/osgEarthDrivers/kml/KML_LineString b/src/osgEarthDrivers/kml/KML_LineString
index 95a3339..aa91f49 100644
--- a/src/osgEarthDrivers/kml/KML_LineString
+++ b/src/osgEarthDrivers/kml/KML_LineString
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,6 +25,7 @@ using namespace osgEarth;
 
 struct KML_LineString : public KML_Geometry
 {
+    virtual void parseStyle( const Config& conf, KMLContext& cs, Style& style );
     virtual void parseCoords( const Config& conf, KMLContext& cx );
 };
 
diff --git a/src/osgEarthDrivers/kml/KML_LineString.cpp b/src/osgEarthDrivers/kml/KML_LineString.cpp
index 96c8b4b..ea38ce1 100644
--- a/src/osgEarthDrivers/kml/KML_LineString.cpp
+++ b/src/osgEarthDrivers/kml/KML_LineString.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,14 @@
 #include "KML_LineString"
 
 void
+KML_LineString::parseStyle( const Config& conf, KMLContext& cs, Style& style )
+{
+    KML_Geometry::parseStyle(conf, cs, style);
+    if ( conf.value("tessellate") == "1" )
+        style.getOrCreate<LineSymbol>()->tessellation() = 20;
+}
+
+void
 KML_LineString::parseCoords( const Config& conf, KMLContext& cx )
 {
     _geom = new LineString();
diff --git a/src/osgEarthDrivers/kml/KML_LineStyle b/src/osgEarthDrivers/kml/KML_LineStyle
index 99b2e52..473ae4d 100644
--- a/src/osgEarthDrivers/kml/KML_LineStyle
+++ b/src/osgEarthDrivers/kml/KML_LineStyle
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@ using namespace osgEarth;
 
 struct KML_LineStyle : public KML_Object
 {
-    virtual void scan( const Config& conf, Style& style );
+    virtual void scan( const Config& conf, Style& style, KMLContext& cx );
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_LINESTYLE
diff --git a/src/osgEarthDrivers/kml/KML_LineStyle.cpp b/src/osgEarthDrivers/kml/KML_LineStyle.cpp
index 5275c94..76150e3 100644
--- a/src/osgEarthDrivers/kml/KML_LineStyle.cpp
+++ b/src/osgEarthDrivers/kml/KML_LineStyle.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,7 @@
 #include "KML_LineStyle"
 
 void 
-KML_LineStyle::scan( const Config& conf, Style& style )
+KML_LineStyle::scan( const Config& conf, Style& style, KMLContext& cx )
 {
     if ( !conf.empty() )
     {
diff --git a/src/osgEarthDrivers/kml/KML_LinearRing b/src/osgEarthDrivers/kml/KML_LinearRing
index 3758304..56df748 100644
--- a/src/osgEarthDrivers/kml/KML_LinearRing
+++ b/src/osgEarthDrivers/kml/KML_LinearRing
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,6 +25,7 @@ using namespace osgEarth;
 
 struct KML_LinearRing : public KML_Geometry
 {
+    virtual void parseStyle( const Config& conf, KMLContext& cs, Style& style );
     virtual void parseCoords( const Config& conf, KMLContext& cx );
 };
 
diff --git a/src/osgEarthDrivers/kml/KML_LinearRing.cpp b/src/osgEarthDrivers/kml/KML_LinearRing.cpp
index e42de82..c073125 100644
--- a/src/osgEarthDrivers/kml/KML_LinearRing.cpp
+++ b/src/osgEarthDrivers/kml/KML_LinearRing.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,14 @@
 #include "KML_LinearRing"
 
 void
+KML_LinearRing::parseStyle( const Config& conf, KMLContext& cs, Style& style )
+{
+    KML_Geometry::parseStyle(conf, cs, style);
+    if ( conf.value("tessellate") == "1" )
+        style.getOrCreate<LineSymbol>()->tessellation() = 20;
+}
+
+void
 KML_LinearRing::parseCoords( const Config& conf, KMLContext& cx )
 {
     _geom = new Ring();
diff --git a/src/osgEarthDrivers/kml/KML_Model b/src/osgEarthDrivers/kml/KML_Model
index 118e65b..205ce55 100644
--- a/src/osgEarthDrivers/kml/KML_Model
+++ b/src/osgEarthDrivers/kml/KML_Model
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,6 +25,8 @@ using namespace osgEarth;
 
 struct KML_Model : public KML_Geometry
 {
+    void parseCoords( const Config& conf, KMLContext& cx );
+    void parseStyle(const Config& conf, KMLContext& cx, Style& style);
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_MODEL
diff --git a/src/osgEarthDrivers/kml/KML_Model.cpp b/src/osgEarthDrivers/kml/KML_Model.cpp
index 2c568e1..798f31d 100644
--- a/src/osgEarthDrivers/kml/KML_Model.cpp
+++ b/src/osgEarthDrivers/kml/KML_Model.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,3 +17,82 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include "KML_Model"
+
+#include <osgEarthSymbology/ModelSymbol>
+
+using namespace osgEarth::Symbology;
+
+void
+KML_Model::parseCoords( const Config& conf, KMLContext& cx )
+{
+    PointSet* point = new PointSet();
+
+    Config location = conf.child("location");
+    if (!location.empty())
+    {
+        double latitude  = location.value("latitude",  0.0);
+        double longitude = location.value("longitude", 0.0);
+        double altitude  = location.value("altitude", 0.0); 
+        point->push_back( osg::Vec3d(longitude, latitude, altitude));
+    }    
+    _geom = point;
+}
+
+void
+KML_Model::parseStyle(const Config& conf, KMLContext& cx, Style& style)
+{    
+    ModelSymbol* model = 0L;
+    
+    std::string url = KMLUtils::parseLink(conf);
+    if ( !url.empty() )
+    {
+        if ( !model ) model = style.getOrCreate<ModelSymbol>();
+        model->url()->setLiteral( url );
+        model->url()->setURIContext( URIContext(conf.referrer()) );
+    }
+
+    Config scale = conf.child("scale");
+    if (!scale.empty())
+    {
+        if ( !model ) model = style.getOrCreate<ModelSymbol>();
+        //TODO:  Support XYZ scale instead of single value
+        model->scale() = scale.value("x", 1.0);
+    }
+
+    Config orientation = conf.child("orientation");
+    if (!orientation.empty())
+    {
+        if ( !model ) model = style.getOrCreate<ModelSymbol>();
+        
+        double h = orientation.value("heading", 0);
+        if ( !osg::equivalent(h, 0.0) )
+            model->heading() = NumericExpression( h );
+
+        double p = orientation.value("tilt", 0);
+        if ( !osg::equivalent(p, 0.0) )
+            model->pitch() = NumericExpression( p );
+
+        double r = orientation.value("roll", 0);
+        if ( !osg::equivalent(r, 0.0) )
+            model->roll() = NumericExpression( r );
+    }
+
+    // Read and store file path aliases from a KML ResourceMap.
+    Config resource_map = conf.child("resourcemap");
+    if ( !resource_map.empty() )
+    {
+        const ConfigSet aliases = resource_map.children("alias");
+        for( ConfigSet::const_iterator i = aliases.begin(); i != aliases.end(); ++i )
+        {
+            std::string source = i->value("sourcehref");
+            std::string target = i->value("targethref");
+            if ( !source.empty() || !target.empty() )
+            {
+                if ( !model ) model = style.getOrCreate<ModelSymbol>();
+                model->uriAliasMap()->insert( source, target );
+            }
+        }
+    }
+
+    KML_Geometry::parseStyle(conf, cx, style);
+}
diff --git a/src/osgEarthDrivers/kml/KML_MultiGeometry b/src/osgEarthDrivers/kml/KML_MultiGeometry
index 2523f59..064701b 100644
--- a/src/osgEarthDrivers/kml/KML_MultiGeometry
+++ b/src/osgEarthDrivers/kml/KML_MultiGeometry
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_MultiGeometry.cpp b/src/osgEarthDrivers/kml/KML_MultiGeometry.cpp
index cf7b80d..8a2c319 100644
--- a/src/osgEarthDrivers/kml/KML_MultiGeometry.cpp
+++ b/src/osgEarthDrivers/kml/KML_MultiGeometry.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_NetworkLink.cpp b/src/osgEarthDrivers/kml/KML_NetworkLink.cpp
index c1dc58e..4de2386 100644
--- a/src/osgEarthDrivers/kml/KML_NetworkLink.cpp
+++ b/src/osgEarthDrivers/kml/KML_NetworkLink.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,7 @@
  */
 #include "KML_NetworkLink"
 #include <osgEarth/GeoMath>
+#include <osgEarth/Registry>
 #include <osg/PagedLOD>
 #include <osg/ProxyNode>
 #include <osg/Version>
@@ -31,17 +32,7 @@ KML_NetworkLink::build( const Config& conf, KMLContext& cx )
     std::string name = conf.value("name");
 
     // parse the link:
-    Config linkConf = conf.child("link");
-    if ( linkConf.empty() )
-    {
-        // "url" seems to be acceptable as well
-        linkConf = conf.child("url");
-        if ( linkConf.empty() )
-            return;
-    }
-    std::string href = linkConf.value("href");
-    if ( href.empty() )
-        return;
+    std::string href = KMLUtils::parseLink(conf);
 
     // "open" determines whether to load it immediately
     bool open = conf.value<bool>("open", false);
@@ -94,10 +85,10 @@ KML_NetworkLink::build( const Config& conf, KMLContext& cx )
         plod->setCenter( lodCenter );
         plod->setRadius( d );
 #if OSG_MIN_VERSION_REQUIRED(3,0,0)
-        osgDB::Options* options = new osgDB::Options();
+        osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
         options->setPluginData( "osgEarth::MapNode", cx._mapNode );
         plod->setDatabaseOptions( options );
-#endif;
+#endif
         //plod->setNodeMask( open ? ~0 : 0 );
 
         OE_DEBUG << LC << 
@@ -111,7 +102,7 @@ KML_NetworkLink::build( const Config& conf, KMLContext& cx )
         osg::ProxyNode* proxy = new osg::ProxyNode();
         proxy->setFileName( 0, href );                
 #if OSG_MIN_VERSION_REQUIRED(3,0,0)
-        osgDB::Options* options = new osgDB::Options();
+        osgDB::Options* options = Registry::instance()->cloneOrCreateOptions();
         options->setPluginData( "osgEarth::MapNode", cx._mapNode );
         proxy->setDatabaseOptions( options );
 #endif
diff --git a/src/osgEarthDrivers/kml/KML_NetworkLinkControl b/src/osgEarthDrivers/kml/KML_NetworkLinkControl
index 48531ff..eb76e33 100644
--- a/src/osgEarthDrivers/kml/KML_NetworkLinkControl
+++ b/src/osgEarthDrivers/kml/KML_NetworkLinkControl
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_NetworkLinkControl.cpp b/src/osgEarthDrivers/kml/KML_NetworkLinkControl.cpp
index 78a9178..e81783d 100644
--- a/src/osgEarthDrivers/kml/KML_NetworkLinkControl.cpp
+++ b/src/osgEarthDrivers/kml/KML_NetworkLinkControl.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Object b/src/osgEarthDrivers/kml/KML_Object
index 771a1eb..e195735 100644
--- a/src/osgEarthDrivers/kml/KML_Object
+++ b/src/osgEarthDrivers/kml/KML_Object
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,10 +20,10 @@
 #define OSGEARTH_DRIVER_KML_KML_OBJECT 1
 
 #include "KML_Common"
-#include <osgEarthUtil/Annotation>
+#include <osgEarthAnnotation/AnnotationData>
 
 using namespace osgEarth;
-using namespace osgEarth::Util::Annotation;
+using namespace osgEarth::Annotation;
 
 struct KML_Object
 {
@@ -33,6 +33,8 @@ struct KML_Object
 
     virtual void build( const Config& conf, KMLContext& cx, osg::Node* working );
 
+    virtual ~KML_Object() { }
+
 protected:
 
     AnnotationData* getOrCreateAnnotationData( osg::Node* node );
diff --git a/src/osgEarthDrivers/kml/KML_Object.cpp b/src/osgEarthDrivers/kml/KML_Object.cpp
index 46217d8..a31c114 100644
--- a/src/osgEarthDrivers/kml/KML_Object.cpp
+++ b/src/osgEarthDrivers/kml/KML_Object.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Overlay b/src/osgEarthDrivers/kml/KML_Overlay
index e77922c..8674948 100644
--- a/src/osgEarthDrivers/kml/KML_Overlay
+++ b/src/osgEarthDrivers/kml/KML_Overlay
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Overlay.cpp b/src/osgEarthDrivers/kml/KML_Overlay.cpp
index 476b29c..cf1b13e 100644
--- a/src/osgEarthDrivers/kml/KML_Overlay.cpp
+++ b/src/osgEarthDrivers/kml/KML_Overlay.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_PhotoOverlay b/src/osgEarthDrivers/kml/KML_PhotoOverlay
index 73544d8..e77bef3 100644
--- a/src/osgEarthDrivers/kml/KML_PhotoOverlay
+++ b/src/osgEarthDrivers/kml/KML_PhotoOverlay
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_PhotoOverlay.cpp b/src/osgEarthDrivers/kml/KML_PhotoOverlay.cpp
index 91db3c1..f2f72dd 100644
--- a/src/osgEarthDrivers/kml/KML_PhotoOverlay.cpp
+++ b/src/osgEarthDrivers/kml/KML_PhotoOverlay.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Placemark.cpp b/src/osgEarthDrivers/kml/KML_Placemark.cpp
index 7bc974a..add81e3 100644
--- a/src/osgEarthDrivers/kml/KML_Placemark.cpp
+++ b/src/osgEarthDrivers/kml/KML_Placemark.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,114 +19,252 @@
 #include "KML_Placemark"
 #include "KML_Geometry"
 #include "KML_Style"
-#include <osgEarthUtil/Annotation>
+
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/ModelNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgEarthAnnotation/LocalGeometryNode>
+
+#include <osg/Depth>
+#include <osgDB/WriteFile>
 
 using namespace osgEarth::Features;
-using namespace osgEarth::Util::Annotation;
+using namespace osgEarth::Annotation;
 
 void 
 KML_Placemark::build( const Config& conf, KMLContext& cx )
 {
-    Style style;
+    Style masterStyle;
+
     if ( conf.hasValue("styleurl") )
     {
         // process a "stylesheet" style
         const Style* ref_style = cx._sheet->getStyle( conf.value("styleurl"), false );
         if ( ref_style )
-            style = *ref_style;
+            masterStyle = *ref_style;
     }
     else if ( conf.hasChild("style") )
     {
         // process an "inline" style
         KML_Style kmlStyle;
         kmlStyle.scan( conf.child("style"), cx );
-        style = cx._activeStyle;
+        masterStyle = cx._activeStyle;
     }
 
-    URI iconURI;
-    MarkerSymbol* marker = style.get<MarkerSymbol>();
-    if ( marker && marker->url().isSet() )
+    // parse the geometry. the placemark must have geometry to be valid. The 
+    // geometry parse may optionally specify an altitude mode as well.
+    KML_Geometry geometry;
+    geometry.build(conf, cx, masterStyle);
+
+    Geometry* allGeom = geometry._geom.get();
+    if ( allGeom )
     {
-        iconURI = URI( marker->url()->expr(), marker->url()->uriContext() );
-    }
+        GeometryIterator giter( allGeom, false );
+        while( giter.hasMore() )
+        {
+            Geometry* geom = giter.next();
+            Style style = masterStyle;
 
-    std::string text = 
-        conf.hasValue("name") ? conf.value("name") :
-        conf.hasValue("description") ? conf.value("description") :
-        "Unnamed";
+            // KML's default altitude mode is clampToGround.
+            AltitudeMode altMode = ALTMODE_RELATIVE;
 
-    // read in the geometry:
-    bool isPoly = false;
-    bool isPoint = false;
-    osg::Vec3d position;
-    KML_Geometry geometry;
-    geometry.build(conf, cx, style);
-    if ( geometry._geom.valid() && geometry._geom->getTotalPointCount() > 0 )
-    {
-        Geometry* geom = geometry._geom.get();
-        position = geom->getBounds().center();
-        isPoly = geom->getComponentType() == Geometry::TYPE_POLYGON;
-        isPoint = geom->getComponentType() == Geometry::TYPE_POINTSET;
-    }
+            AltitudeSymbol* altSym = style.get<AltitudeSymbol>();
+            if ( !altSym )
+            {
+                altSym = style.getOrCreate<AltitudeSymbol>();
+                altSym->clamping() = AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+            }
+            else if ( !altSym->clamping().isSetTo(AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN) )
+            {
+                altMode = ALTMODE_ABSOLUTE;
+            }
+            
+            if ( geom && geom->getTotalPointCount() > 0 )
+            {
+                GeoPoint position(cx._srs.get(), geom->getBounds().center(), altMode);
 
-    FeatureNode*   fNode = 0L;
-    PlacemarkNode* pNode = 0L;
+                bool isPoly = geom->getComponentType() == Geometry::TYPE_POLYGON;
+                bool isPoint = geom->getComponentType() == Geometry::TYPE_POINTSET;
 
-    // if we have a non-single-point geometry, render it.
-    if ( geometry._geom.valid() && geometry._geom->getTotalPointCount() > 1 )
-    {
-        const ExtrusionSymbol* ex = style.get<ExtrusionSymbol>();
-        const AltitudeSymbol* alt = style.get<AltitudeSymbol>();
+                // check for symbols.
+                ModelSymbol*    model = style.get<ModelSymbol>();
+                IconSymbol*     icon  = style.get<IconSymbol>();
+                TextSymbol*     text  = style.get<TextSymbol>();
 
-        bool draped =
-            (ex == 0L && alt == 0L && isPoly) ||
-            (ex == 0L && alt != 0L && alt->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN);
+                if ( !text && cx._options->defaultTextSymbol().valid() )
+                    text = cx._options->defaultTextSymbol().get();
 
-        // Make a feautre node; drape if we're not extruding.
-        fNode = new FeatureNode( cx._mapNode, new Feature(geometry._geom.get()), draped );
-        fNode->setStyle( style );
+                // the annotation name:
+                std::string name = conf.hasValue("name") ? conf.value("name") : "";
+                if ( text && !name.empty() )
+                {
+                    text->content()->setLiteral( name );
+                }
 
-        if ( draped )
-            fNode->getOrCreateStateSet()->setMode(GL_LIGHTING, 1);
-    }
+                AnnotationNode* featureNode = 0L;
+                AnnotationNode* iconNode    = 0L;
+                AnnotationNode* modelNode   = 0L;
 
-    if ( isPoint )
-    {
-        osg::Image* image = iconURI.readImage();
-        if ( !image )
-        {
-            image = cx._options->defaultIconImage().get();
-            if ( !image )
-            {
-                image = cx._options->defaultIconURI()->readImage();
-            }
-        }
+                // one coordinate? It's a place marker or a label.
+                if ( model || icon || text || geom->getTotalPointCount() == 1 )
+                {
+                    // load up the default icon if there we don't have one.
+                    if ( !model && !icon )
+                    {
+                        icon = cx._options->defaultIconSymbol().get();
+                        if ( icon )
+                            style.add( icon );
+                    }
 
-        // apply the default text symbol for labeling, if necessary:
-        if ( !style.get<TextSymbol>() && cx._options->defaultTextSymbol().valid() )
-        {
-            style.addSymbol( cx._options->defaultTextSymbol().get() );
-        }
+                    // if there's a model, render that - models do NOT get labels.
+                    if ( model )
+                    {
+                        ModelNode* node = new ModelNode( cx._mapNode, style, cx._dbOptions );
+                        node->setPosition( position );
 
-        pNode = new PlacemarkNode( cx._mapNode, position, image, text, style );
-    }
+                        if ( cx._options->modelScale() != 1.0f )
+                        {
+                            float s = *cx._options->modelScale();
+                            node->setScale( osg::Vec3f(s,s,s) );
+                        }
 
-    if ( fNode && pNode )
-    {
-        osg::Group* group = new osg::Group();
-        group->addChild( fNode );
-        group->addChild( pNode );
-        cx._groupStack.top()->addChild( group );
-        KML_Feature::build( conf, cx, group );
-    }
-    else if ( pNode )
-    {
-        cx._groupStack.top()->addChild( pNode );
-        KML_Feature::build( conf, cx, pNode );
-    }
-    else if ( fNode )
-    {
-        cx._groupStack.top()->addChild( fNode );
-        KML_Feature::build( conf, cx, fNode );
+                        if ( !cx._options->modelRotation()->zeroRotation() )
+                        {
+                            node->setLocalRotation( *cx._options->modelRotation() );
+                        }
+
+                        modelNode = node;
+                    }
+
+                    else if ( !text && !name.empty() )
+                    {
+                        text = style.getOrCreate<TextSymbol>();
+                        text->content()->setLiteral( name );
+                    }
+
+                    if ( icon )
+                    {
+                        iconNode = new PlaceNode( cx._mapNode, position, style, cx._dbOptions );
+                    }
+
+                    else if ( !model && text && !name.empty() )
+                    {
+                        // note: models do not get labels.
+                        iconNode = new LabelNode( cx._mapNode, position, style );
+                    }
+                }
+
+                // multiple coords? feature:
+                if ( geom->getTotalPointCount() > 1 )
+                {
+                    ExtrusionSymbol* extruded = style.get<ExtrusionSymbol>();
+                    AltitudeSymbol*  altitude = style.get<AltitudeSymbol>();
+
+                    // Remove symbols that we have already processed so the geometry
+                    // compiler doesn't get confused.
+                    if ( model )
+                        style.removeSymbol( model );
+                    if ( icon )
+                        style.removeSymbol( icon );
+                    if ( text )
+                        style.removeSymbol( text );
+
+                    // analyze the data; if the Z coords are all 0.0, enable draping.
+                    if ( /*isPoly &&*/ !extruded && altitude && altitude->clamping() != AltitudeSymbol::CLAMP_TO_TERRAIN )
+                    {
+                        bool zeroElev = true;
+                        ConstGeometryIterator gi( geom, false );
+                        while( zeroElev == true && gi.hasMore() )
+                        {
+                            const Geometry* g = gi.next();
+                            for( Geometry::const_iterator ji = g->begin(); ji != g->end() && zeroElev == true; ++ji )
+                            {
+                                if ( !osg::equivalent(ji->z(), 0.0) )
+                                    zeroElev = false;
+                            }
+                        }
+                        if ( zeroElev )
+                        {
+                            altitude->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+                        }
+                    }
+
+                    // Make a feature node; drape if we're not extruding.
+                    bool draped =
+                        isPoly    && 
+                        !extruded &&
+                        (!altitude || altitude->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN);
+
+                    // turn off the clamping if we're draping.
+                    if ( draped && altitude )
+                        altitude->clamping() = AltitudeSymbol::CLAMP_NONE;
+
+                    GeometryCompilerOptions compilerOptions;
+
+                    // Check for point-model substitution:
+                    if ( style.has<ModelSymbol>() )
+                    {
+                        compilerOptions.instancing() = true;
+                    }
+
+                    Feature* feature = new Feature(geom, cx._srs.get(), style);
+                    featureNode = new FeatureNode( cx._mapNode, feature, draped, compilerOptions );
+                }
+
+
+                // assemble the results:
+                if ( (iconNode || modelNode) && featureNode )
+                {
+                    osg::Group* group = new osg::Group();
+                    group->addChild( featureNode );
+                    if ( iconNode )
+                        group->addChild( iconNode );
+                    if ( modelNode )
+                        group->addChild( modelNode );
+
+                    cx._groupStack.top()->addChild( group );
+
+                    if ( iconNode && cx._options->declutter() == true )
+                        Decluttering::setEnabled( iconNode->getOrCreateStateSet(), true );
+
+                    if ( iconNode )
+                        KML_Feature::build( conf, cx, iconNode );
+                    if ( modelNode )
+                        KML_Feature::build( conf, cx, modelNode );
+                    if ( featureNode )
+                        KML_Feature::build( conf, cx, featureNode );
+                }
+
+                else
+                {
+                    if ( iconNode )
+                    {
+                        if ( cx._options->iconAndLabelGroup().valid() )
+                        {
+                            cx._options->iconAndLabelGroup()->addChild( iconNode );
+                        }
+                        else
+                        {
+                            cx._groupStack.top()->addChild( iconNode );
+                            if ( cx._options->declutter() == true )
+                                Decluttering::setEnabled( iconNode->getOrCreateStateSet(), true );
+                        }
+                        KML_Feature::build( conf, cx, iconNode );
+                    }
+                    if ( modelNode )
+                    {
+                        cx._groupStack.top()->addChild( modelNode );
+                        KML_Feature::build( conf, cx, modelNode );
+                    }
+                    if ( featureNode )
+                    {
+                        cx._groupStack.top()->addChild( featureNode );
+                        KML_Feature::build( conf, cx, featureNode );
+                    }
+                }
+            }
+        }
     }
 }
diff --git a/src/osgEarthDrivers/kml/KML_Point b/src/osgEarthDrivers/kml/KML_Point
index af5e95e..698bf9f 100644
--- a/src/osgEarthDrivers/kml/KML_Point
+++ b/src/osgEarthDrivers/kml/KML_Point
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Point.cpp b/src/osgEarthDrivers/kml/KML_Point.cpp
index 03f7354..642859d 100644
--- a/src/osgEarthDrivers/kml/KML_Point.cpp
+++ b/src/osgEarthDrivers/kml/KML_Point.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_PolyStyle b/src/osgEarthDrivers/kml/KML_PolyStyle
index 84e0d27..50d73c0 100644
--- a/src/osgEarthDrivers/kml/KML_PolyStyle
+++ b/src/osgEarthDrivers/kml/KML_PolyStyle
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@ using namespace osgEarth;
 
 struct KML_PolyStyle : public KML_Object
 {
-    virtual void scan( const Config& conf, Style& style );
+    virtual void scan( const Config& conf, Style& style, KMLContext& cx );
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_POLYSTYLE
diff --git a/src/osgEarthDrivers/kml/KML_PolyStyle.cpp b/src/osgEarthDrivers/kml/KML_PolyStyle.cpp
index 9d4f6cd..8228b92 100644
--- a/src/osgEarthDrivers/kml/KML_PolyStyle.cpp
+++ b/src/osgEarthDrivers/kml/KML_PolyStyle.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,7 @@
 #include "KML_PolyStyle"
 
 void
-KML_PolyStyle::scan( const Config& conf, Style& style )
+KML_PolyStyle::scan( const Config& conf, Style& style, KMLContext& cx )
 {
     if ( !conf.empty() )
     {
diff --git a/src/osgEarthDrivers/kml/KML_Polygon b/src/osgEarthDrivers/kml/KML_Polygon
index 13ec882..7a24326 100644
--- a/src/osgEarthDrivers/kml/KML_Polygon
+++ b/src/osgEarthDrivers/kml/KML_Polygon
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Polygon.cpp b/src/osgEarthDrivers/kml/KML_Polygon.cpp
index a698dd3..a5c17b8 100644
--- a/src/osgEarthDrivers/kml/KML_Polygon.cpp
+++ b/src/osgEarthDrivers/kml/KML_Polygon.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Root b/src/osgEarthDrivers/kml/KML_Root
index 8b176ef..deb53bd 100644
--- a/src/osgEarthDrivers/kml/KML_Root
+++ b/src/osgEarthDrivers/kml/KML_Root
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -26,6 +26,8 @@ struct KML_Root
     virtual void scan( const Config& conf, KMLContext& cx );
     virtual void scan2( const Config& conf, KMLContext& cx );
     virtual void build( const Config& conf, KMLContext& cx );
+
+    virtual ~KML_Root() { }
 };
 
 #endif // OSGEARTH_DRIVER_KML_KML_SCHEMA
diff --git a/src/osgEarthDrivers/kml/KML_Root.cpp b/src/osgEarthDrivers/kml/KML_Root.cpp
index 259123b..713866a 100644
--- a/src/osgEarthDrivers/kml/KML_Root.cpp
+++ b/src/osgEarthDrivers/kml/KML_Root.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Schema b/src/osgEarthDrivers/kml/KML_Schema
index b7635a5..89d5ea9 100644
--- a/src/osgEarthDrivers/kml/KML_Schema
+++ b/src/osgEarthDrivers/kml/KML_Schema
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Schema.cpp b/src/osgEarthDrivers/kml/KML_Schema.cpp
index 2c6405e..f9ac2b4 100644
--- a/src/osgEarthDrivers/kml/KML_Schema.cpp
+++ b/src/osgEarthDrivers/kml/KML_Schema.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_ScreenOverlay b/src/osgEarthDrivers/kml/KML_ScreenOverlay
index 946c7a6..1ba32fb 100644
--- a/src/osgEarthDrivers/kml/KML_ScreenOverlay
+++ b/src/osgEarthDrivers/kml/KML_ScreenOverlay
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_ScreenOverlay.cpp b/src/osgEarthDrivers/kml/KML_ScreenOverlay.cpp
index 5d2e267..72643e2 100644
--- a/src/osgEarthDrivers/kml/KML_ScreenOverlay.cpp
+++ b/src/osgEarthDrivers/kml/KML_ScreenOverlay.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Style b/src/osgEarthDrivers/kml/KML_Style
index 1381367..a28eed2 100644
--- a/src/osgEarthDrivers/kml/KML_Style
+++ b/src/osgEarthDrivers/kml/KML_Style
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_Style.cpp b/src/osgEarthDrivers/kml/KML_Style.cpp
index adea165..dad6852 100644
--- a/src/osgEarthDrivers/kml/KML_Style.cpp
+++ b/src/osgEarthDrivers/kml/KML_Style.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -28,16 +28,16 @@ KML_Style::scan( const Config& conf, KMLContext& cx )
     Style style( conf.value("id") );
 
     KML_IconStyle icon;
-    icon.scan( conf.child("iconstyle"), style );
+    icon.scan( conf.child("iconstyle"), style, cx );
 
     KML_LabelStyle label;
-    label.scan( conf.child("labelstyle"), style );
+    label.scan( conf.child("labelstyle"), style, cx );
 
     KML_LineStyle line;
-    line.scan( conf.child("linestyle"), style );
+    line.scan( conf.child("linestyle"), style, cx );
 
     KML_PolyStyle poly;
-    poly.scan( conf.child("polystyle"), style );
+    poly.scan( conf.child("polystyle"), style, cx );
 
     cx._sheet->addStyle( style );
 
diff --git a/src/osgEarthDrivers/kml/KML_StyleMap b/src/osgEarthDrivers/kml/KML_StyleMap
index 58b3962..37438d7 100644
--- a/src/osgEarthDrivers/kml/KML_StyleMap
+++ b/src/osgEarthDrivers/kml/KML_StyleMap
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_StyleMap.cpp b/src/osgEarthDrivers/kml/KML_StyleMap.cpp
index 30ad39d..9805657 100644
--- a/src/osgEarthDrivers/kml/KML_StyleMap.cpp
+++ b/src/osgEarthDrivers/kml/KML_StyleMap.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KML_StyleSelector b/src/osgEarthDrivers/kml/KML_StyleSelector
index 7fbc64a..23b51e8 100644
--- a/src/osgEarthDrivers/kml/KML_StyleSelector
+++ b/src/osgEarthDrivers/kml/KML_StyleSelector
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/kml/KMZArchive b/src/osgEarthDrivers/kml/KMZArchive
index 0120ea6..bd1b46e 100644
--- a/src/osgEarthDrivers/kml/KMZArchive
+++ b/src/osgEarthDrivers/kml/KMZArchive
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -85,6 +85,8 @@ private:
     unzFile        _uf;
     void*          _buf;
     unsigned       _bufsize;
+
+    bool isAcceptable(const std::string& filename, const osgDB::Options* options) const;
 };
 
 
diff --git a/src/osgEarthDrivers/kml/KMZArchive.cpp b/src/osgEarthDrivers/kml/KMZArchive.cpp
index 1e67f05..49c0509 100644
--- a/src/osgEarthDrivers/kml/KMZArchive.cpp
+++ b/src/osgEarthDrivers/kml/KMZArchive.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -150,6 +150,10 @@ KMZArchive::readToBuffer( const std::string& fileInZip, std::ostream& iobuf ) co
     // help from:
     // http://bytes.com/topic/c/answers/764381-reading-contents-zip-files
 
+
+    //OE_INFO << LC << "Attempting to read \"" << fileInZip << "\" from \"" << _archiveURI.base() << "\"" << std::endl;
+
+
     int err = UNZ_OK;
     unz_file_info file_info;
     char filename_inzip[2048];
@@ -231,7 +235,7 @@ KMZArchive::readToBuffer( const std::string& fileInZip, std::ostream& iobuf ) co
         }
         if ( err > 0 )
         {
-            for( unsigned i=0; i<err; ++i )
+            for( unsigned i=0; i<(unsigned)err; ++i )
             {
                 iobuf.put( *(((char*)_buf)+i) );
             }
@@ -248,61 +252,83 @@ KMZArchive::readToBuffer( const std::string& fileInZip, std::ostream& iobuf ) co
     return true;
 }
 
+bool
+KMZArchive::isAcceptable(const std::string& filename, const osgDB::Options* options) const
+{
+    if (!options ||
+        options->getDatabasePathList().size() == 0 ||
+        options->getDatabasePathList()[0] != _archiveURI.full() )
+    {
+        //OE_INFO << "Rejected: " << filename << std::endl;
+        return false;
+    }
+    return true;
+}
+
 osgDB::ReaderWriter::ReadResult
 KMZArchive::readImage(const std::string& filename, const osgDB::Options* options) const
 {
-    osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
-        osgDB::getLowerCaseFileExtension( filename ) );
-    if ( rw )
+    if ( isAcceptable(filename, options) )
     {
-        std::stringstream iobuf;
-        if ( readToBuffer( filename, iobuf ) )
+        osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
+            osgDB::getLowerCaseFileExtension( filename ) );
+        if ( rw )
         {
-            osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
-            URIContext(*_archiveURI).add(filename).store( myOptions.get() );
-            return rw->readImage( iobuf, options );
+            std::stringstream iobuf;
+            if ( readToBuffer( filename, iobuf ) )
+            {
+                osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
+                URIContext(*_archiveURI).add(filename).apply( myOptions.get() );
+                return rw->readImage( iobuf, myOptions.get() );
+            }
+            else return ReadResult::ERROR_IN_READING_FILE;
         }
-        else return ReadResult::ERROR_IN_READING_FILE;
     }
-    else return ReadResult::FILE_NOT_HANDLED;
+    return ReadResult::FILE_NOT_HANDLED;
 }
 
 osgDB::ReaderWriter::ReadResult
 KMZArchive::readNode(const std::string& filename, const osgDB::Options* options) const
 {
-    osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
-        osgDB::getLowerCaseFileExtension( filename ) );
-    if ( rw )
+    if ( isAcceptable(filename, options) )
     {
-        std::stringstream iobuf;
-        if ( readToBuffer( filename, iobuf ) )
+        osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
+            osgDB::getLowerCaseFileExtension( filename ) );
+        if ( rw )
         {
-            osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
-            URIContext(*_archiveURI).add(filename).store( myOptions.get() );
-            return rw->readNode( iobuf, options );
+            std::stringstream iobuf;
+            if ( readToBuffer( filename, iobuf ) )
+            {
+                osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
+                URIContext(*_archiveURI).add(filename).apply( myOptions.get() );
+                return rw->readNode( iobuf, myOptions.get() );
+            }
+            else return ReadResult::ERROR_IN_READING_FILE;
         }
-        else return ReadResult::ERROR_IN_READING_FILE;
     }
-    else return ReadResult::FILE_NOT_HANDLED;
+    return ReadResult::FILE_NOT_HANDLED;
 }
 
 osgDB::ReaderWriter::ReadResult
 KMZArchive::readObject(const std::string& filename, const osgDB::Options* options) const
 {
-    osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
-        osgDB::getLowerCaseFileExtension( filename ) );
-    if ( rw )
+    if ( isAcceptable(filename, options) )
     {
-        std::stringstream iobuf;
-        if ( readToBuffer( filename, iobuf ) )
+        osgDB::ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(
+            osgDB::getLowerCaseFileExtension( filename ) );
+        if ( rw )
         {
-            osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
-            URIContext(*_archiveURI).add(filename).store( myOptions.get() );
-            return rw->readObject( iobuf, myOptions.get() );
+            std::stringstream iobuf;
+            if ( readToBuffer( filename, iobuf ) )
+            {
+                osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
+                URIContext(*_archiveURI).add(filename).apply( myOptions.get() );
+                return rw->readObject( iobuf, myOptions.get() );
+            }
+            else return ReadResult::ERROR_IN_READING_FILE;
         }
-        else return ReadResult::ERROR_IN_READING_FILE;
     }
-    else return ReadResult::FILE_NOT_HANDLED;
+    return ReadResult::FILE_NOT_HANDLED;
 }
 
 #endif // SUPPORT_KMZ
diff --git a/src/osgEarthDrivers/kml/ReaderWriterKML.cpp b/src/osgEarthDrivers/kml/ReaderWriterKML.cpp
index e2b3666..5a223e7 100644
--- a/src/osgEarthDrivers/kml/ReaderWriterKML.cpp
+++ b/src/osgEarthDrivers/kml/ReaderWriterKML.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -47,17 +47,17 @@ struct ReaderWriterKML : public osgDB::ReaderWriter
 #endif // SUPPORT_KMZ
     }
 
-    ReadResult readObject(const std::string& url, const Options* options) const
+    osgDB::ReaderWriter::ReadResult readObject(const std::string& url, const osgDB::Options* options) const
     {
         return readNode( url, options );
     }
 
-    ReadResult readObject(std::istream& in, const Options* options ) const
+    osgDB::ReaderWriter::ReadResult readObject(std::istream& in, const osgDB::Options* dbOptions ) const
     {
-        return readNode(in, options);
+        return readNode(in, dbOptions);
     }
 
-    ReadResult readNode(const std::string& url, const Options* options) const
+    osgDB::ReaderWriter::ReadResult readNode(const std::string& url, const osgDB::Options* dbOptions) const
     {
         std::string ext = osgDB::getLowerCaseFileExtension(url);
         if ( !acceptsExtension(ext) )
@@ -65,18 +65,18 @@ struct ReaderWriterKML : public osgDB::ReaderWriter
 
         if ( ext == "kmz" )
         {
-            return URI(url + "/.kml").readNode( options );
+            return URI(url + "/.kml").readNode( dbOptions ).releaseNode();
         }
         else
         {
             // propagate the source URI along to the stream reader
-            osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(options);
-            URIContext(url).store( myOptions.get() );
+            osg::ref_ptr<osgDB::Options> myOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+            URIContext(url).apply( myOptions.get() );
             return readNode( URIStream(url), myOptions.get() );
         }
     }
 
-    ReadResult readNode(std::istream& in, const Options* options ) const
+    osgDB::ReaderWriter::ReadResult readNode(std::istream& in, const osgDB::Options* options ) const
     {
         if ( !options )
             return ReadResult("Missing required MapNode option");
@@ -91,18 +91,15 @@ struct ReaderWriterKML : public osgDB::ReaderWriter
         const KMLOptions* kmlOptions =
             static_cast<const KMLOptions*>(options->getPluginData("osgEarth::KMLOptions") );
 
-        // Grab the URIContext from the options (since we're reading from a stream)
-        URIContext uriContext( options );
-
         // fire up a KML reader and parse the data.
         KMLReader reader( mapNode, kmlOptions );
-        osg::Node* node = reader.read( in, uriContext );
+        osg::Node* node = reader.read( in, options );
         return ReadResult(node);
     }
 
 #ifdef SUPPORT_KMZ
 
-    ReadResult openArchive( const std::string& url, ArchiveStatus status, unsigned int dummy, const osgDB::Options* options =0L ) const
+    osgDB::ReaderWriter::ReadResult openArchive( const std::string& url, ArchiveStatus status, unsigned int dummy, const osgDB::Options* options =0L ) const
     {
         // Find the archive for this thread. We store one KMZ archive instance per thread 
         // so that the minizip library can work in parallel
diff --git a/src/osgEarthDrivers/label_overlay/OverlayLabelSource b/src/osgEarthDrivers/label_annotation/AnnotationLabelSource
similarity index 100%
copy from src/osgEarthDrivers/label_overlay/OverlayLabelSource
copy to src/osgEarthDrivers/label_annotation/AnnotationLabelSource
diff --git a/src/osgEarthDrivers/label_annotation/AnnotationLabelSource.cpp b/src/osgEarthDrivers/label_annotation/AnnotationLabelSource.cpp
new file mode 100644
index 0000000..a5e450e
--- /dev/null
+++ b/src/osgEarthDrivers/label_annotation/AnnotationLabelSource.cpp
@@ -0,0 +1,204 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/LabelSource>
+#include <osgEarth/DepthOffset>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/Decluttering>
+#include <osgDB/FileNameUtils>
+#include <osgUtil/Optimizer>
+
+using namespace osgEarth;
+using namespace osgEarth::Annotation;
+using namespace osgEarth::Features;
+
+class AnnotationLabelSource : public LabelSource
+{
+public:
+    AnnotationLabelSource( const LabelSourceOptions& options )
+        : LabelSource( options )
+    {
+        //nop
+    }
+
+    /**
+     * Creates a simple label. The caller is responsible for placing it in the scene.
+     */
+    osg::Node* createNode(
+        const std::string& text,
+        const Style&       style )
+    {
+        return 0L; // no support
+    }
+
+    /**
+     * Creates a complete set of positioned label nodes from a feature list.
+     */
+    osg::Node* createNode(
+        const FeatureList&   input,
+        const Style&         style,
+        const FilterContext& context )
+    {
+        if ( style.get<TextSymbol>() == 0L )
+            return 0L;
+
+        // copy the style so we can (potentially) modify the text symbol.
+        Style styleCopy = style;
+        TextSymbol* text = styleCopy.get<TextSymbol>();
+
+        osg::Group* group = new osg::Group();
+
+        // check for decluttering
+        if ( text->declutter().isSet() )
+        {
+            Decluttering::setEnabled( group->getOrCreateStateSet(), *text->declutter() );
+        }
+
+        if ( text->priority().isSet() )
+        {
+            DeclutteringOptions dco = Decluttering::getOptions();
+            dco.sortByPriority() = text->priority().isSet();
+            Decluttering::setOptions( dco );
+        }    
+        
+        StringExpression  contentExpr ( *text->content() );
+        NumericExpression priorityExpr( *text->priority() );
+
+        if ( text->removeDuplicateLabels() == true )
+        {
+            // in remove-duplicates mode, make a list of unique features, selecting
+            // the one with the largest area as the one we'll use for labeling.
+
+            typedef std::pair<double, osg::ref_ptr<const Feature> > Entry;
+            typedef std::map<std::string, Entry>                    EntryMap;
+
+            EntryMap used;
+    
+            for( FeatureList::const_iterator i = input.begin(); i != input.end(); ++i )
+            {
+                Feature* feature = i->get();
+                if ( feature && feature->getGeometry() )
+                {
+                    const std::string& value = feature->eval( contentExpr, &context );
+                    if ( !value.empty() )
+                    {
+                        double area = feature->getGeometry()->getBounds().area2d();
+                        if ( used.find(value) == used.end() )
+                        {
+                            used[value] = Entry(area, feature);
+                        }
+                        else 
+                        {
+                            Entry& biggest = used[value];
+                            if ( area > biggest.first )
+                            {
+                                biggest.first = area;
+                                biggest.second = feature;
+                            }
+                        }
+                    }
+                }
+            }
+
+            for( EntryMap::iterator i = used.begin(); i != used.end(); ++i )
+            {
+                const std::string& value = i->first;
+                const Feature* feature = i->second.second.get();
+                group->addChild( makeLabelNode(context, feature, value, text, priorityExpr) );
+            }
+        }
+
+        else
+        {
+            for( FeatureList::const_iterator i = input.begin(); i != input.end(); ++i )
+            {
+                const Feature* feature = i->get();
+                if ( !feature )
+                    continue;
+
+                const Geometry* geom = feature->getGeometry();
+                if ( !geom )
+                    continue;
+
+                const std::string& value = feature->eval( contentExpr, &context );
+                if ( value.empty() )
+                    continue;
+
+                group->addChild( makeLabelNode(context, feature, value, text, priorityExpr) );
+            }
+        }
+
+#if 0 // good idea but needs work.
+        DepthOffsetGroup* dog = new DepthOffsetGroup();
+        dog->setMinimumOffset( 500.0 );
+        dog->addChild( group );
+        return dog;
+#endif
+        return group;
+    }
+
+        
+    osg::Node* makeLabelNode(const FilterContext& context, 
+                             const Feature*       feature, 
+                             const std::string&   value, 
+                             const TextSymbol*    text, 
+                             NumericExpression&   priorityExpr )
+    {
+        LabelNode* labelNode = new LabelNode(
+            0L,
+            GeoPoint(feature->getSRS(), feature->getGeometry()->getBounds().center(), ALTMODE_ABSOLUTE),
+            value,
+            text );
+
+        if ( text->priority().isSet() )
+        {
+            AnnotationData* data = new AnnotationData();
+            data->setPriority( feature->eval(priorityExpr, &context) );
+            labelNode->setAnnotationData( data );
+        }
+
+        return labelNode;
+    }
+
+};
+
+//------------------------------------------------------------------------
+
+class AnnotationLabelSourceDriver : public LabelSourceDriver
+{
+public:
+    AnnotationLabelSourceDriver()
+    {
+        supportsExtension( "osgearth_label_annotation", "osgEarth annotation label plugin" );
+    }
+
+    virtual const char* className()
+    {
+        return "osgEarth Annotation Label Plugin";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return new AnnotationLabelSource( getLabelSourceOptions(options) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_label_annotation, AnnotationLabelSourceDriver)
diff --git a/src/osgEarthDrivers/label_annotation/CMakeLists.txt b/src/osgEarthDrivers/label_annotation/CMakeLists.txt
new file mode 100644
index 0000000..62c4536
--- /dev/null
+++ b/src/osgEarthDrivers/label_annotation/CMakeLists.txt
@@ -0,0 +1,9 @@
+SET(TARGET_SRC AnnotationLabelSource.cpp)
+#SET(TARGET_H AnnotationLabelOptions)
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthFeatures osgEarthSymbology osgEarthAnnotation)
+SETUP_PLUGIN(osgearth_label_annotation)
+
+# to install public driver includes:
+SET(LIB_NAME label_annotation)
+#SET(LIB_PUBLIC_HEADERS AnnotationLabelOptions)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/label_overlay/OverlayLabelSource.cpp b/src/osgEarthDrivers/label_overlay/OverlayLabelSource.cpp
index 19cdf9a..9e55c33 100644
--- a/src/osgEarthDrivers/label_overlay/OverlayLabelSource.cpp
+++ b/src/osgEarthDrivers/label_overlay/OverlayLabelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,7 @@
 #include <osgEarthFeatures/LabelSource>
 #include <osgEarthSymbology/Expression>
 #include <osgEarthUtil/Controls>
-#include <osgEarth/Utils>
+#include <osgEarth/CullingUtils>
 #include <osgEarth/ECEF>
 #include <osg/ClusterCullingCallback>
 #include <osg/MatrixTransform>
@@ -31,20 +31,67 @@ using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 using namespace osgEarth::Util;
 
+
+/******* Deprecated ---- please use AnnotationLabelSource instead *************/
+
+
 class OverlayLabelSource : public LabelSource
 {
 public:
-    OverlayLabelSource( const LabelSourceOptions& options ) :
-      LabelSource( options )
+    OverlayLabelSource( const LabelSourceOptions& options )
+        : LabelSource( options )
     {
         //nop
     }
 
+    /**
+     * Creates a simple label. The caller is responsible for placing it in the scene.
+     */
+    osg::Node* createNode(
+        const std::string& text,
+        const Style&       style )
+    {
+        const TextSymbol* symbol = style.get<TextSymbol>();
+
+        Controls::LabelControl* label = new Controls::LabelControl( text );
+        if ( symbol )
+        {
+            if ( symbol->fill().isSet() )
+                label->setForeColor( symbol->fill()->color() );
+            if ( symbol->halo().isSet() )
+                label->setHaloColor( symbol->halo()->color() );
+            if ( symbol->size().isSet() )
+                label->setFontSize( *symbol->size() );
+            if ( symbol->font().isSet() )
+                label->setFont( osgText::readFontFile(*symbol->font()) );
+            if ( symbol->encoding().isSet() )
+            {
+                osgText::String::Encoding enc;
+                switch(symbol->encoding().value())
+                {
+                case TextSymbol::ENCODING_ASCII: enc = osgText::String::ENCODING_ASCII; break;
+                case TextSymbol::ENCODING_UTF8: enc = osgText::String::ENCODING_UTF8; break;
+                case TextSymbol::ENCODING_UTF16: enc = osgText::String::ENCODING_UTF16; break;
+                case TextSymbol::ENCODING_UTF32: enc = osgText::String::ENCODING_UTF32; break;
+                default: enc = osgText::String::ENCODING_UNDEFINED; break;
+                }
+                label->setEncoding( enc );
+            }
+        }
+        Controls::ControlNode* node = new Controls::ControlNode( label );
+        return node;
+    }
+
+    /**
+     * Creates a complete set of positioned label nodes from a feature list.
+     */
     osg::Node* createNode(
         const FeatureList&   input,
-        const TextSymbol*    text,
+        const Style&         style,
         const FilterContext& context )
     {
+        const TextSymbol* text = style.get<TextSymbol>();
+
         osg::Group* group = 0L;
         std::set<std::string> used; // to prevent dupes
         bool skipDupes = (text->removeDuplicateLabels() == true);
@@ -52,8 +99,11 @@ public:
         StringExpression  contentExpr ( *text->content() );
         NumericExpression priorityExpr( *text->priority() );
 
-        const MapInfo& mi = context.getSession()->getMapInfo();
-        bool makeECEF = mi.isGeocentric();
+        bool makeECEF = false;
+        if ( context.isGeoreferenced() )
+        {
+            makeECEF = context.getSession()->getMapInfo().isGeocentric();
+        }
 
         for( FeatureList::const_iterator i = input.begin(); i != input.end(); ++i )
         {
@@ -66,26 +116,13 @@ public:
                 continue;
 
             osg::Vec3d centroid  = geom->getBounds().center();
-            //osg::Vec3d centroidWorld = context.toWorld(centroid);
 
             if ( makeECEF )
             {
                 context.profile()->getSRS()->transformToECEF( centroid, centroid );
             }
 
-#if 0
-            if ( context.isGeocentric() && geom->getComponentType() != Geometry::TYPE_POINTSET )
-            {
-                // "clamp" the centroid to the ellipsoid
-                osg::Vec3d centroidMap;
-                mi.worldPointToMapPoint(centroidWorld, centroidMap);
-                centroidMap.z() = 0.0;
-                mi.mapPointToWorldPoint(centroidMap, centroidWorld);
-                centroid = context.toLocal(centroidWorld);
-            }
-#endif
-
-            const std::string& value = feature->eval( contentExpr );
+            const std::string& value = feature->eval( contentExpr, &context );
 
             if ( !value.empty() && (!skipDupes || used.find(value) == used.end()) )
             {
@@ -94,7 +131,7 @@ public:
                     group = new osg::Group();
                 }
 
-                double priority = feature->eval( priorityExpr );
+                double priority = feature->eval( priorityExpr, &context );
 
                 Controls::LabelControl* label = new Controls::LabelControl( value );
                 if ( text->fill().isSet() )
@@ -114,7 +151,9 @@ public:
                 // for a geocentric map, do a simple dot product cull.
                 if ( makeECEF )
                 {
-                    xform->setCullCallback( new CullNodeByHorizon(centroid, mi.getProfile()->getSRS()->getEllipsoid()) );
+                    xform->setCullCallback( new CullNodeByHorizon(
+                        centroid, 
+                        context.getSession()->getMapInfo().getProfile()->getSRS()->getEllipsoid()) );
                     group->addChild( xform );
                 }
                 else
@@ -123,7 +162,9 @@ public:
                 }
 
                 if ( skipDupes )
+                {
                     used.insert( value );
+                }
             }
         }
 
diff --git a/src/osgEarthDrivers/mask_feature/FeatureMaskOptions b/src/osgEarthDrivers/mask_feature/FeatureMaskOptions
index dce0cc6..39a969f 100644
--- a/src/osgEarthDrivers/mask_feature/FeatureMaskOptions
+++ b/src/osgEarthDrivers/mask_feature/FeatureMaskOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -47,6 +47,8 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        virtual ~FeatureMaskOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = MaskSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/mask_feature/FeatureMaskSource.cpp b/src/osgEarthDrivers/mask_feature/FeatureMaskSource.cpp
index c8bb40a..d68205c 100644
--- a/src/osgEarthDrivers/mask_feature/FeatureMaskSource.cpp
+++ b/src/osgEarthDrivers/mask_feature/FeatureMaskSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -61,13 +61,13 @@ public:
     const MaskSourceOptions& getOptions() const { return _options; }
 
     //override
-    void initialize( const std::string& referenceURI, const osgEarth::Map* map )
+    void initialize( const osgDB::Options* dbOptions, const osgEarth::Map* map )
     {
-        MaskSource::initialize( referenceURI, map );
+        MaskSource::initialize( dbOptions, map );
 
         if ( _features.valid() )
         {
-            _features->initialize( referenceURI );
+            _features->initialize( dbOptions );
         } 
         else
         {
diff --git a/src/osgEarthDrivers/mbtiles/CMakeLists.txt b/src/osgEarthDrivers/mbtiles/CMakeLists.txt
index 36b8f63..3e20c12 100644
--- a/src/osgEarthDrivers/mbtiles/CMakeLists.txt
+++ b/src/osgEarthDrivers/mbtiles/CMakeLists.txt
@@ -1,9 +1,9 @@
 INCLUDE_DIRECTORIES( ${SQLITE3_INCLUDE_DIR} )
 
-SET(TARGET_COMMON_LIBRARIES
-    ${TARGET_COMMON_LIBRARIES}
-    ${SQLITE3_LIBRARY}
-)
+#SET(TARGET_COMMON_LIBRARIES
+#    ${TARGET_COMMON_LIBRARIES}
+#    ${SQLITE3_LIBRARY}
+#)
 
 SET(TARGET_SRC
     ReaderWriterMBTiles.cpp    
@@ -14,6 +14,8 @@ SET(TARGET_H
     MBTilesOptions
 )
 
+SET(TARGET_LIBRARIES_VARS SQLITE3_LIBRARY)
+
 SETUP_PLUGIN(osgearth_mbtiles)
 
 
diff --git a/src/osgEarthDrivers/mbtiles/ReaderWriterMBTiles.cpp b/src/osgEarthDrivers/mbtiles/ReaderWriterMBTiles.cpp
index 8247132..168923d 100644
--- a/src/osgEarthDrivers/mbtiles/ReaderWriterMBTiles.cpp
+++ b/src/osgEarthDrivers/mbtiles/ReaderWriterMBTiles.cpp
@@ -55,11 +55,12 @@ public:
     }
 
     // override
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+      void initialize( const osgDB::Options* dbOptions, const Profile* overrideProfile)
     {
         //Set the profile
         setProfile( osgEarth::Registry::instance()->getGlobalMercatorProfile() );
 
+#if 0
         //Open the database
         std::string filename = _options.filename().value();
 
@@ -68,12 +69,13 @@ public:
         {
             filename = osgEarth::getFullPath(referenceURI, filename);
         }
+#endif
 
         int flags = SQLITE_OPEN_READONLY;
-        int rc = sqlite3_open_v2( filename.c_str(), &_database, flags, 0L );
+        int rc = sqlite3_open_v2( _options.filename()->c_str(), &_database, flags, 0L );
         if ( rc != 0 )
         {
-            OE_WARN << LC << "Failed to open database \"" << filename << "\": " << sqlite3_errmsg(_database) << std::endl;
+            OE_WARN << LC << "Failed to open database \"" << *_options.filename() << "\": " << sqlite3_errmsg(_database) << std::endl;
             return;
         }
 
@@ -123,13 +125,13 @@ public:
         int x = key.getTileX();
         int y = key.getTileY();
 
-        if (z < _minLevel)
+        if (z < (int)_minLevel)
         {
             //Return an empty image to make it continue subdividing
             return ImageUtils::createEmptyImage();
         }
 
-        if (z > _maxLevel)
+        if (z > (int)_maxLevel)
         {
             //If we're at the max level, just return NULL
             return NULL;
@@ -146,7 +148,7 @@ public:
         if ( rc != SQLITE_OK )
         {
             OE_WARN << LC << "Failed to prepare SQL: " << query << "; " << sqlite3_errmsg(_database) << std::endl;
-            return false;
+            return NULL;
         }
 
         bool valid = true;        
diff --git a/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions b/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions
index e28214c..7481d99 100644
--- a/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions
+++ b/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -42,6 +42,8 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        virtual ~FeatureGeomModelOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = FeatureModelSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelSource.cpp b/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelSource.cpp
index 773129b..454e894 100644
--- a/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelSource.cpp
+++ b/src/osgEarthDrivers/model_feature_geom/FeatureGeomModelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -52,13 +52,13 @@ namespace
 
         const FeatureGeomModelOptions& getOptions() const { return _options; }
 
-        //override
-        void initialize( const std::string& referenceURI, const osgEarth::Map* map )
+    public: // FeatureModelSource
+
+        void initialize( const osgDB::Options* dbOptions )
         {
-            FeatureModelSource::initialize( referenceURI, map );
+            FeatureModelSource::initialize( dbOptions );
         }
 
-        //override
         FeatureNodeFactory* createFeatureNodeFactory()
         {
             return new GeomFeatureNodeFactory( _options.compilerOptions() );
diff --git a/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelOptions b/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelOptions
index 2c1bcf3..ae50e96 100644
--- a/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelOptions
+++ b/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -58,6 +58,8 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        virtual ~FeatureStencilModelOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = FeatureModelSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelSource.cpp b/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelSource.cpp
index 63fd282..b39e52b 100644
--- a/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelSource.cpp
+++ b/src/osgEarthDrivers/model_feature_stencil/FeatureStencilModelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,14 +21,14 @@
 #include <osgEarth/Map>
 #include <osgEarthFeatures/FeatureModelSource>
 #include <osgEarthFeatures/FeatureSource>
+#include <osgEarthFeatures/AltitudeFilter>
 #include <osgEarthFeatures/BufferFilter>
 #include <osgEarthFeatures/TransformFilter>
 #include <osgEarthFeatures/ResampleFilter>
 #include <osgEarthFeatures/ConvertTypeFilter>
-#include <osgEarthFeatures/FeatureGridder>
+#include <osgEarthFeatures/ExtrudeGeometryFilter>
 #include <osgEarthSymbology/StencilVolumeNode>
 #include <osgEarthSymbology/Style>
-#include <osgEarthSymbology/StencilVolumeNode>
 #include <osg/Notify>
 #include <osg/MatrixTransform>
 #include <osg/ClusterCullingCallback>
@@ -61,12 +61,17 @@ namespace
     {
         // make a full screen quad:
         osg::Geometry* quad = new osg::Geometry();
+        quad->setUseVertexBufferObjects(true);
+
         osg::Vec3Array* verts = new osg::Vec3Array(4);
         (*verts)[0].set( 0, 1, 0 );
         (*verts)[1].set( 0, 0, 0 );
         (*verts)[2].set( 1, 0, 0 );
         (*verts)[3].set( 1, 1, 0 );
         quad->setVertexArray( verts );
+        if ( verts->getVertexBufferObject() )
+            verts->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+
         quad->addPrimitiveSet( new osg::DrawArrays( osg::PrimitiveSet::QUADS, 0, 4 ) );
         osg::Vec4Array* colors = new osg::Vec4Array(1);
         (*colors)[0] = color;
@@ -93,222 +98,6 @@ namespace
         return proj;
     }
 
-    void tessellate( osg::Geometry* geom )
-    {
-        osgUtil::Tessellator tess;
-        tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_GEOMETRY );
-        tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_ODD );
-    //    tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_POSITIVE );
-        tess.retessellatePolygons( *geom );
-    }
-
-    osg::Geode*
-    createVolume(osgEarth::Symbology::Geometry* geom,
-                 double               offset,
-                 double               height,
-                 const FilterContext& context )
-    {
-        if ( !geom ) return 0L;
-
-        int numRings = 0;
-
-        // start by offsetting the input data and counting the number of rings
-        {
-            osgEarth::Symbology::GeometryIterator i( geom );
-            while( i.hasMore() )
-            {
-                osgEarth::Symbology::Geometry* part = i.next();
-
-                if (offset != 0.0)
-                {
-                    for( osg::Vec3dArray::iterator j = part->begin(); j != part->end(); j++ )
-                    {
-                        if ( context.isGeocentric() )
-                        {
-                            osg::Vec3d world = context.toWorld( *j );
-                            // TODO: get the proper up vector; this is spherical.. or does it really matter for
-                            // stencil volumes?
-                            osg::Vec3d offset_vec = world;
-                            offset_vec.normalize();
-                            *j = context.toLocal( world + offset_vec * offset ); //(*j) += offset_vec * offset;
-                        }
-                        else
-                        {
-                            (*j).z() += offset;
-                        }
-                    }
-                }
-
-                // in the meantime, count the # of closed geoms. We will need to know this in 
-                // order to pre-allocate the proper # of verts.
-                if ( part->getType() == osgEarth::Symbology::Geometry::TYPE_POLYGON || part->getType() == osgEarth::Symbology::Geometry::TYPE_RING )
-                {
-                    numRings++;
-                }
-            }
-        }
-
-        // now, go thru and remove any coplanar segments from the geometry. The tesselator will
-        // not work include a vert connecting two colinear segments in the tesselation, and this
-        // will break the stenciling logic.
-    #define PARALLEL_EPSILON 0.01
-        osgEarth::Symbology::GeometryIterator i( geom );
-        while( i.hasMore() )
-        {
-            osgEarth::Symbology::Geometry* part = i.next();
-            if ( part->size() >= 3 )
-            {
-                osg::Vec3d prevVec = part->front() - part->back();
-                prevVec.normalize();
-
-                for( osg::Vec3dArray::iterator j = part->begin(); part->size() >= 3 && j != part->end(); )
-                {
-                    osg::Vec3d& p0 = *j;
-                    osg::Vec3d& p1 = j+1 != part->end() ? *(j+1) : part->front();
-                    osg::Vec3d vec = p1-p0; vec.normalize();
-
-                    // if the vectors are essentially parallel, remove the extraneous vertex.
-                    if ( (prevVec ^ vec).length() < PARALLEL_EPSILON )
-                    {
-                        j = part->erase( j );
-                        //OE_NOTICE << "removed colinear segment" << std::endl;
-                    }
-                    else
-                    {
-                        ++j;
-                        prevVec = vec;
-                    }
-                }
-            }
-        }
-
-
-        bool made_geom = true;
-        const SpatialReference* srs = context.profile()->getSRS();
-
-        // total up all the points so we can pre-allocate the vertex arrays.
-        int num_cap_verts = geom->getTotalPointCount();
-        int num_wall_verts = 2 * (num_cap_verts + numRings); // add in numRings b/c we need to close each wall
-
-        osg::Geometry* walls = new osg::Geometry();
-        osg::Vec3Array* verts = new osg::Vec3Array( num_wall_verts );
-        walls->setVertexArray( verts );
-
-        osg::Geometry* top_cap = new osg::Geometry();
-        osg::Vec3Array* top_verts = new osg::Vec3Array( num_cap_verts );
-        top_cap->setVertexArray( top_verts );
-
-        osg::Geometry* bottom_cap = new osg::Geometry();
-        osg::Vec3Array* bottom_verts = new osg::Vec3Array( num_cap_verts );
-        bottom_cap->setVertexArray( bottom_verts );
-
-        int wall_vert_ptr = 0;
-        int top_vert_ptr = 0;
-        int bottom_vert_ptr = 0;
-
-        //double target_len = height;
-
-        // now generate the extruded geometry.
-        osgEarth::Symbology::GeometryIterator k( geom );
-        while( k.hasMore() )
-        {
-            osgEarth::Symbology::Geometry* part = k.next();
-
-            unsigned int wall_part_ptr = wall_vert_ptr;
-            unsigned int top_part_ptr = top_vert_ptr;
-            unsigned int bottom_part_ptr = bottom_vert_ptr;
-            double part_len = 0.0;
-
-            GLenum prim_type = part->getType() == osgEarth::Symbology::Geometry::TYPE_POINTSET ? GL_LINES : GL_TRIANGLE_STRIP;
-
-            for( osg::Vec3dArray::const_iterator m = part->begin(); m != part->end(); ++m )
-            {
-                osg::Vec3d extrude_vec;
-
-                if ( srs )
-                {
-                    osg::Vec3d m_world = context.toWorld( *m ); //*m * context.inverseReferenceFrame();
-                    if ( context.isGeocentric() )
-                    {
-                        osg::Vec3d p_vec = m_world; // todo: not exactly right; spherical
-
-                        osg::Vec3d unit_vec = p_vec; 
-                        unit_vec.normalize();
-                        p_vec = p_vec + unit_vec*height;
-
-                        extrude_vec = context.toLocal( p_vec ); //p_vec * context.referenceFrame();
-                    }
-                    else
-                    {
-                        extrude_vec.set( m_world.x(), m_world.y(), height );
-                        extrude_vec = context.toLocal( extrude_vec ); //extrude_vec * context.referenceFrame();
-                    }
-                }
-                else
-                {
-                    extrude_vec.set( m->x(), m->y(), height );
-                }
-
-                (*top_verts)[top_vert_ptr++] = extrude_vec;
-                (*bottom_verts)[bottom_vert_ptr++] = *m;
-                 
-                part_len += wall_vert_ptr > (int)wall_part_ptr?
-                    (extrude_vec - (*verts)[wall_vert_ptr-2]).length() :
-                    0.0;
-
-                int p;
-
-                p = wall_vert_ptr++;
-                (*verts)[p] = extrude_vec;
-
-                p = wall_vert_ptr++;
-                (*verts)[p] = *m;
-            }
-
-            // close the wall if it's a ring/poly:
-            if ( part->getType() == osgEarth::Symbology::Geometry::TYPE_RING || part->getType() == osgEarth::Symbology::Geometry::TYPE_POLYGON )
-            {
-                part_len += wall_vert_ptr > (int)wall_part_ptr?
-                    ((*verts)[wall_part_ptr] - (*verts)[wall_vert_ptr-2]).length() :
-                    0.0;
-
-                int p;
-
-                p = wall_vert_ptr++;
-                (*verts)[p] = (*verts)[wall_part_ptr];
-
-                p = wall_vert_ptr++;
-                (*verts)[p] = (*verts)[wall_part_ptr+1];
-            }
-
-            walls->addPrimitiveSet( new osg::DrawArrays(
-                prim_type,
-                wall_part_ptr, wall_vert_ptr - wall_part_ptr ) );
-
-            top_cap->addPrimitiveSet( new osg::DrawArrays(
-                osg::PrimitiveSet::LINE_LOOP,
-                top_part_ptr, top_vert_ptr - top_part_ptr ) );
-
-            // reverse the bottom verts so the front face is down:
-            std::reverse( bottom_verts->begin()+bottom_part_ptr, bottom_verts->begin()+bottom_vert_ptr );
-
-            bottom_cap->addPrimitiveSet( new osg::DrawArrays(
-                osg::PrimitiveSet::LINE_LOOP,
-                bottom_part_ptr, bottom_vert_ptr - bottom_part_ptr ) );
-        }
-
-        // build solid surfaces for the caps:
-        tessellate( top_cap );
-        tessellate( bottom_cap );
-
-        osg::Geode* geode = new osg::Geode();
-        geode->addDrawable( walls );
-        geode->addDrawable( top_cap );
-        geode->addDrawable( bottom_cap );
-
-        return geode;
-    }
-
     struct BuildData // : public osg::Referenced
     {
         //BuildData() { }
@@ -377,9 +166,6 @@ namespace
             FeatureList featureList;
             cursor->fill( featureList );
 
-            //for (FeatureList::const_iterator it = features.begin(); it != features.end(); ++it)
-            //    featureList.push_back(osg::clone((*it).get(),osg::CopyOp::DEEP_COPY_ALL));
-
             // establish the extrusion distance for the stencil volumes
             double extrusionDistance = 1;
             double densificationThreshold = 1.0;
@@ -427,52 +213,23 @@ namespace
                 }
             }
 
-            // Transform them into the map's SRS, localizing the verts along the way:
-            TransformFilter xform( mi.getProfile()->getSRS() );
-            xform.setMakeGeocentric( mi.isGeocentric() );
-            xform.setLocalizeCoordinates( !mi.isGeocentric() );
-            cx = xform.push( featureList, cx );
-
-            if ( mi.isGeocentric() )
-            {
-                // We need to make sure that on a round globe, the points are sampled such that
-                // long segments follow the curvature of the earth. By the way, if a Buffer was
-                // applied, that will also remove colinear segment points. Resample the points to 
-                // achieve a usable tesselation.
-                ResampleFilter resample;
-                resample.maxLength() = densificationThreshold;
-                resample.minLength() = 0.0;
-                resample.perturbationThreshold() = 0.1;
-                cx = resample.push( featureList, cx );
-            }
-
             // Extrude and cap the geometry in both directions to build a stencil volume:
-            osg::Group* volumes = 0L;
 
-            for( FeatureList::iterator i = featureList.begin(); i != featureList.end(); ++i )
-            {
-                Feature* feature = (*i).get();
-                Geometry* geom = feature->getGeometry();
-                osg::Node* volume = createVolume( geom, -extrusionDistance, extrusionDistance * 2.0, cx );
+            Style bs;
+            bs.getOrCreate<AltitudeSymbol>()->verticalOffset() = -extrusionDistance;
+            bs.getOrCreate<ExtrusionSymbol>()->height() = extrusionDistance * 2.0;
+            
+            AltitudeFilter alt;
+            alt.setPropertiesFromStyle( bs );
+            cx = alt.push( featureList, cx );
 
-                if ( volume )
-                {
-                    if ( !volumes )
-                        volumes = new osg::Group();
-                    volumes->addChild( volume );
-                }
-            }
+            ExtrudeGeometryFilter extrude;
+            extrude.setStyle( bs );
+            extrude.setMakeStencilVolume( true );
+            osg::Node* volumes = extrude.push( featureList, cx );           
 
             if ( volumes )
             {
-                // Resolve the localizing reference frame if necessary:
-                if ( cx.hasReferenceFrame() )
-                {
-                    osg::MatrixTransform* xform = new osg::MatrixTransform( cx.inverseReferenceFrame() );
-                    xform->addChild( volumes );
-                    volumes = xform;
-                }
-
                 // Apply an LOD if required:
                 if ( _options.minRange().isSet() || _options.maxRange().isSet() )
                 {
@@ -482,8 +239,12 @@ namespace
                 }
 
                 // Add the volumes to the appropriate style group.
-                StencilVolumeNode* styleNode = dynamic_cast<StencilVolumeNode*>( getOrCreateStyleGroup( style, cx.getSession() ) );
-                styleNode->addVolumes( volumes );
+                osg::Group* styleGroup = getOrCreateStyleGroup( style, cx.getSession() );
+                StencilVolumeNode* svNode = dynamic_cast<StencilVolumeNode*>( styleGroup );
+                if ( svNode )
+                    svNode->addVolumes( volumes );
+                else
+                    styleGroup->addChild( volumes );
             }
 
             node = 0L; // always return null, since we added our geom to the style group.
@@ -563,19 +324,18 @@ namespace
             }
         }
         
-        //override
+    public: // FeatureModelSource
+
         virtual const FeatureModelSourceOptions& getFeatureModelOptions() const
         {
             return _options;
         }
 
-        //override
-        void initialize( const std::string& referenceURI, const Map* map )
+        void initialize( const osgDB::Options* dbOptions )
         {
-            FeatureModelSource::initialize( referenceURI, map );
+            FeatureModelSource::initialize( dbOptions );
         }
 
-        //override
         FeatureNodeFactory* createFeatureNodeFactory()
         {
             return new StencilVolumeNodeFactory( _options, _renderBinStart );
diff --git a/src/osgEarthDrivers/model_simple/SimpleModelOptions b/src/osgEarthDrivers/model_simple/SimpleModelOptions
index 5705d31..55b5433 100644
--- a/src/osgEarthDrivers/model_simple/SimpleModelOptions
+++ b/src/osgEarthDrivers/model_simple/SimpleModelOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/ModelSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -32,16 +33,39 @@ namespace osgEarth { namespace Drivers
         optional<URI>& url() { return _url; }
         const optional<URI>& url() const { return _url; }
 
+        optional<float>& lodScale() { return _lod_scale; }
+        const optional<float>& lodScale() const { return _lod_scale; }
+
+        optional<osg::Vec3>& location() { return _location; }
+        const optional<osg::Vec3>& location() const { return _location; }
+
+        optional<osg::Vec3>& orientation() { return _orientation;}
+        const optional<osg::Vec3>& orientation() const { return _orientation;}
+        
+        /**
+         If specified, use this node instead try to load from url
+        */
+        osg::ref_ptr<osg::Node>& node() { return _node; }
+        const osg::ref_ptr<osg::Node>& node() const { return _node; }
+
+
+
     public:
-        SimpleModelOptions( const ConfigOptions& options ) : ModelSourceOptions( options ) {
+        SimpleModelOptions( const ConfigOptions& options=ConfigOptions() ) : ModelSourceOptions( options ) {
             setDriver( "simple" );
             fromConfig( _conf );
         }
 
+        virtual ~SimpleModelOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = ModelSourceOptions::getConfig();
             conf.updateIfSet( "url", _url );
+            conf.updateIfSet( "lod_scale", _lod_scale );
+            conf.updateIfSet( "location", _location );
+            conf.updateIfSet( "orientation", _orientation);
+            conf.updateNonSerializable( "SimpleModelOptions::Node", _node.get() );
             return conf;
         }
 
@@ -54,9 +78,17 @@ namespace osgEarth { namespace Drivers
     private:
         void fromConfig( const Config& conf ) {
             conf.getIfSet( "url", _url );
+            conf.getIfSet( "lod_scale", _lod_scale );
+            conf.getIfSet( "location", _location);
+            conf.getIfSet( "orientation", _orientation);
+            _node = conf.getNonSerializable<osg::Node>( "SimpleModelOptions::Node" );
         }
 
         optional<URI> _url;
+        optional<float> _lod_scale;
+        optional<osg::Vec3> _location;
+        optional<osg::Vec3> _orientation;
+        osg::ref_ptr<osg::Node> _node;
     };
 
 } } // namespace osgEarth::Drivers
diff --git a/src/osgEarthDrivers/model_simple/SimpleModelSource.cpp b/src/osgEarthDrivers/model_simple/SimpleModelSource.cpp
index 7dd3f8b..0dfaed7 100644
--- a/src/osgEarthDrivers/model_simple/SimpleModelSource.cpp
+++ b/src/osgEarthDrivers/model_simple/SimpleModelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,14 +21,55 @@
 #include <osgEarth/ModelSource>
 #include <osgEarth/Registry>
 #include <osgEarth/Map>
+#include <osgEarth/ShaderGenerator>
 #include <osgEarth/FileUtils>
+#include <osg/LOD>
 #include <osg/Notify>
+#include <osg/MatrixTransform>
+#include <osg/io_utils>
 #include <osgDB/FileNameUtils>
 
 using namespace osgEarth;
 using namespace osgEarth::Drivers;
 
-#include <osgEarth/HTTPClient>
+//--------------------------------------------------------------------------
+
+namespace
+{
+    class LODScaleOverrideNode : public osg::Group
+    {
+    public:
+        LODScaleOverrideNode() : m_lodScale(1.0f) {}
+        virtual ~LODScaleOverrideNode() {}
+    public:
+        void setLODScale(float scale) { m_lodScale = scale; }
+        float getLODScale() const { return m_lodScale; }
+
+        virtual void traverse(osg::NodeVisitor& nv)
+        {
+            if(nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR)
+            {
+                osg::CullStack* cullStack = dynamic_cast<osg::CullStack*>(&nv);
+                if(cullStack)
+                {
+                    float oldLODScale = cullStack->getLODScale();
+                    cullStack->setLODScale(oldLODScale * m_lodScale);
+                    osg::Group::traverse(nv);
+                    cullStack->setLODScale(oldLODScale);
+                }
+                else
+                    osg::Group::traverse(nv);
+            }
+            else
+                osg::Group::traverse(nv);
+        }
+
+    private:
+        float m_lodScale;
+    };
+}
+
+//--------------------------------------------------------------------------
 
 class SimpleModelSource : public ModelSource
 {
@@ -37,31 +78,92 @@ public:
         : ModelSource( options ), _options(options) { }
 
     //override
-    void initialize( const std::string& referenceURI, const osgEarth::Map* map )
+    void initialize( const osgDB::Options* dbOptions )
     {
-        ModelSource::initialize( referenceURI, map );
-                       
-        _url = *_options.url();        
-       
-        //_url = URI(_options.url()->base(), referenceURI);
-        //_url = osgEarth::getFullPath( referenceURI, _options.url().value() );
+        ModelSource::initialize( dbOptions );
     }
 
     // override
-    osg::Node* createNode( ProgressCallback* progress )
+    osg::Node* createNode(const Map* map, const osgDB::Options* dbOptions, ProgressCallback* progress )
     {
         osg::ref_ptr<osg::Node> result;
 
-        // required if the model includes local refs, like PagedLOD or ProxyNode:
-        osg::ref_ptr<osgDB::Options> options = new osgDB::Options();
-        options->getDatabasePathList().push_back( osgDB::getFilePath(*_url) );
+        if (_options.node() != NULL)
+        {
+            result = _options.node();
+        }
+        else
+        {
+            // required if the model includes local refs, like PagedLOD or ProxyNode:
+            osg::ref_ptr<osgDB::Options> localOptions = 
+                Registry::instance()->cloneOrCreateOptions( dbOptions );
+
+            localOptions->getDatabasePathList().push_back( osgDB::getFilePath(_options.url()->full()) );
+
+            result = _options.url()->getNode( localOptions.get(), progress );
+        }
+
+        if (_options.location().isSet() && map != 0L)
+        {
+            GeoPoint geoPoint(
+                map->getProfile()->getSRS(), 
+                (*_options.location()).x(), 
+                (*_options.location()).y(), 
+                (*_options.location()).z(),
+                ALTMODE_ABSOLUTE );
+
+            OE_NOTICE << "Read location " << geoPoint.vec3d() << std::endl;
+            
+            osg::Matrixd matrix;
+            geoPoint.createLocalToWorld( matrix );
+
+            if (_options.orientation().isSet())
+            {
+                //Apply the rotation
+                osg::Matrix rot_mat;
+                rot_mat.makeRotate( 
+                    osg::DegreesToRadians((*_options.orientation()).y()), osg::Vec3(1,0,0),
+                    osg::DegreesToRadians((*_options.orientation()).x()), osg::Vec3(0,0,1),
+                    osg::DegreesToRadians((*_options.orientation()).z()), osg::Vec3(0,1,0) );
+                matrix.preMult(rot_mat);
+            }
+
+            osg::MatrixTransform* mt = new osg::MatrixTransform;
+            mt->setMatrix( matrix );
+            mt->addChild( result.get() );
+            result = mt;
+
+            if ( _options.minRange().isSet() || _options.maxRange().isSet() )
+            {
+                osg::LOD* lod = new osg::LOD();
+                lod->addChild(
+                    result.release(),
+                    _options.minRange().isSet() ? (*_options.minRange()) : 0.0f,
+                    _options.maxRange().isSet() ? (*_options.maxRange()) : FLT_MAX );
+                result = lod;
+            }
+        }
+
+        if(_options.lodScale().isSet())
+        {
+            LODScaleOverrideNode * node = new LODScaleOverrideNode;
+            node->setLODScale(_options.lodScale().value());
+            node->addChild(result.release());
+            result = node;
+        }
+
+        // generate a shader program to render the model.
+        if ( result.valid() )
+        {
+            ShaderGenerator gen;
+            result->accept( gen );
+        }
 
-        HTTPClient::readNodeFile( *_url, result, options.get(), progress ); //_settings.get(), progress );
         return result.release();
     }
 
 protected:
-    URI _url;
+
     const SimpleModelOptions _options;
 };
 
diff --git a/src/osgEarthDrivers/ocean_surface/CMakeLists.txt b/src/osgEarthDrivers/ocean_surface/CMakeLists.txt
new file mode 100644
index 0000000..4ddfd28
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/CMakeLists.txt
@@ -0,0 +1,22 @@
+
+SET(TARGET_SRC ElevationProxyImageLayer.cpp
+               OceanCompositor.cpp
+               OceanSurfaceContainer.cpp
+               ReaderWriterOceanSurface.cpp
+)
+               
+SET(TARGET_H   ElevationProxyImageLayer
+               OceanCompositor
+               OceanSurface
+               OceanSurfaceContainer
+               OceanShaders
+)
+
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthSymbology)
+
+SETUP_PLUGIN(osgearth_ocean_surface)
+
+# to install public driver includes:
+SET(LIB_NAME ocean_surface)
+SET(LIB_PUBLIC_HEADERS OceanSurface)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer b/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer
new file mode 100644
index 0000000..8ff4421
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer
@@ -0,0 +1,58 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_OCEAN_SURFACE_ELEV_PROXY_IMAGE_LAYER
+#define OSGEARTH_DRIVER_OCEAN_SURFACE_ELEV_PROXY_IMAGE_LAYER 1
+
+#include <osgEarth/Map>
+#include <osgEarth/ImageLayer>
+
+using namespace osgEarth;
+
+/**
+ * A customized ImageLayer that taps into another Map, reads elevation
+ * tiles, and converts them into heightmap-encoded images.
+ */
+class ElevationProxyImageLayer : public osgEarth::ImageLayer
+{
+public:
+    /**
+     * Constucts a proxy layer
+     * @param sourceMap Map from which to read heightfields
+     */
+    ElevationProxyImageLayer( Map* sourceMap, const ImageLayerOptions& options );
+
+    /** dtor */
+    virtual ~ElevationProxyImageLayer() { }
+
+public: // ImageLayer
+
+    virtual void initTileSource();
+
+    virtual bool isKeyValid( const TileKey& key ) const;
+
+    virtual bool isCached( const TileKey& key ) const;
+
+    virtual GeoImage createImage( const TileKey& key, ProgressCallback* progress, bool forceFallback );
+
+private:
+    osg::observer_ptr<Map> _sourceMap;
+    MapFrame               _mapf;
+};
+
+#endif // OSGEARTH_DRIVER_OCEAN_SURFACE_ELEV_PROXY_IMAGE_LAYER
diff --git a/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer.cpp b/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer.cpp
new file mode 100644
index 0000000..7082d52
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/ElevationProxyImageLayer.cpp
@@ -0,0 +1,74 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "ElevationProxyImageLayer"
+
+using namespace osgEarth;
+
+ElevationProxyImageLayer::ElevationProxyImageLayer( Map* sourceMap, const ImageLayerOptions& options ) :
+ImageLayer( options ),
+_sourceMap( sourceMap ),
+_mapf     ( sourceMap )
+{
+    _runtimeOptions.cachePolicy() = CachePolicy::NO_CACHE;
+}
+
+void
+ElevationProxyImageLayer::initTileSource()
+{
+    _tileSourceInitAttempted = true;
+}
+
+bool
+ElevationProxyImageLayer::isKeyValid( const TileKey& key ) const
+{
+    return key.getLevelOfDetail() <= *_runtimeOptions.maxLevel();
+}
+
+bool
+ElevationProxyImageLayer::isCached( const TileKey& key ) const
+{
+    return true;
+}
+
+GeoImage
+ElevationProxyImageLayer::createImage(const TileKey& key, ProgressCallback* progress, bool forceFallback)
+{
+    osg::ref_ptr<Map> map = _sourceMap.get();
+    if ( map.valid() )
+    {
+        osg::ref_ptr<osg::HeightField> hf;
+        if ( map->getHeightField( key, true, hf ) )
+        {
+            // encode the heightfield as a 16-bit normalized LUNIMANCE image
+            osg::Image* image = new osg::Image();
+            image->allocateImage(hf->getNumColumns(), hf->getNumRows(), 1, GL_LUMINANCE, GL_UNSIGNED_SHORT);
+            image->setInternalTextureFormat( GL_LUMINANCE16 );
+            const osg::FloatArray* floats = hf->getFloatArray();
+            for( unsigned int i = 0; i < floats->size(); ++i  )
+            {
+                int col = i % hf->getNumColumns();
+                int row = i / hf->getNumColumns();
+                *(unsigned short*)image->data( col, row ) = (unsigned short)(32768 + (short)floats->at(i));
+            }
+
+            return GeoImage( image, key.getExtent() );
+        }
+    }
+    return GeoImage::INVALID;
+}
diff --git a/src/osgEarthDrivers/ocean_surface/OceanCompositor b/src/osgEarthDrivers/ocean_surface/OceanCompositor
new file mode 100644
index 0000000..bf456c9
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanCompositor
@@ -0,0 +1,51 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_OCEAN_SURFACE_COMPOSITOR
+#define OSGEARTH_DRIVER_OCEAN_SURFACE_COMPOSITOR 1
+
+#include <osgEarth/TextureCompositor>
+
+using namespace osgEarth;
+
+/**
+ * A custom texture compositor for rendering the ocean surface.
+ */
+class OceanCompositor : public TextureCompositorTechnique
+{
+public:
+    OceanCompositor() { }
+
+    /** dtor */
+    virtual ~OceanCompositor() { }
+
+    virtual bool requiresUnitTextureSpace() const { return true; }
+
+    virtual bool usesShaderComposition() const { return true; }
+
+    virtual void updateMasterStateSet( osg::StateSet* stateSet, const TextureLayout& layout ) const;
+
+    virtual void applyLayerUpdate(osg::StateSet*       stateSet,
+                                  UID                  layerUID,
+                                  const GeoImage&      preparedImage,
+                                  const TileKey&       tileKey,
+                                  const TextureLayout& layout,
+                                  osg::StateSet*       parentStateSet) const;
+};
+
+#endif // OSGEARTH_DRIVER_OCEAN_SURFACE_COMPOSITOR
diff --git a/src/osgEarthDrivers/ocean_surface/OceanCompositor.cpp b/src/osgEarthDrivers/ocean_surface/OceanCompositor.cpp
new file mode 100644
index 0000000..ee7c27f
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanCompositor.cpp
@@ -0,0 +1,115 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "OceanCompositor"
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderComposition>
+#include <osg/Texture2D>
+#include "OceanShaders"
+
+using namespace osgEarth;
+
+void
+OceanCompositor::updateMasterStateSet(osg::StateSet*       stateSet, 
+                                      const TextureLayout& layout ) const
+{
+    VirtualProgram* vp = static_cast<VirtualProgram*>( stateSet->getAttribute(VirtualProgram::SA_TYPE) );
+    if ( !vp )
+    {
+        vp = new VirtualProgram();
+        vp->setName("osgEarth OceanCompositor");
+        stateSet->setAttributeAndModes( vp, 1 );
+    }
+    vp->installDefaultLightingShaders();
+    vp->setShader( "osgearth_vert_setupColoring", new osg::Shader(osg::Shader::VERTEX, source_setupColoring) );
+    vp->setShader( "osgearth_frag_applyColoring", new osg::Shader(osg::Shader::FRAGMENT, source_applyColoring ) );
+}
+    
+namespace
+{
+    std::string makeSamplerName(int slot)
+    {
+        std::stringstream buf;
+        buf << "ocean_tex" << slot;
+        std::string str;
+        str = buf.str();
+        return str;
+    }
+
+    osg::Texture2D*
+    s_getTexture( osg::StateSet* stateSet, UID layerUID, const TextureLayout& layout, osg::StateSet* parentStateSet)
+    {
+        int slot = layout.getSlot( layerUID, 0 );
+        if ( slot < 0 )
+            return 0L;
+
+        osg::Texture2D* tex = static_cast<osg::Texture2D*>(
+            stateSet->getTextureAttribute( slot, osg::StateAttribute::TEXTURE ) );
+
+        if ( !tex )
+        {
+            tex = new osg::Texture2D();
+
+            tex->setResizeNonPowerOfTwoHint(false);
+            tex->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
+            tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::NEAREST );
+
+            // configure the wrapping
+            tex->setWrap( osg::Texture::WRAP_S, osg::Texture::CLAMP_TO_EDGE );
+            tex->setWrap( osg::Texture::WRAP_T, osg::Texture::CLAMP_TO_EDGE );
+
+            stateSet->setTextureAttributeAndModes( slot, tex, osg::StateAttribute::ON );
+            
+            // install the slot attribute
+            std::string name = makeSamplerName( slot );
+            stateSet->getOrCreateUniform( name.c_str(), osg::Uniform::SAMPLER_2D )->set( slot );
+        }
+        return tex;
+    }
+}
+
+
+void
+OceanCompositor::applyLayerUpdate(osg::StateSet*       stateSet,
+                                  UID                  layerUID,
+                                  const GeoImage&      preparedImage,
+                                  const TileKey&       tileKey,
+                                  const TextureLayout& layout,
+                                  osg::StateSet*       parentStateSet) const
+{
+    osg::Texture2D* tex = s_getTexture( stateSet, layerUID, layout, parentStateSet);
+    if ( tex )
+    {
+        osg::Image* image = preparedImage.getImage();
+        image->dirty(); // required for ensure the texture recognizes the image as new data
+        tex->setImage( image );
+
+        // set up proper mipmapping filters:
+        if (ImageUtils::isPowerOfTwo( image ) && 
+            !(!image->isMipmap() && ImageUtils::isCompressed(image)) )
+        {
+            if ( tex->getFilter(osg::Texture::MIN_FILTER) != osg::Texture::LINEAR_MIPMAP_LINEAR )
+                tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR );
+        }
+        else if ( tex->getFilter(osg::Texture::MIN_FILTER) != osg::Texture::LINEAR )
+        {
+            tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR );
+        }
+    }
+}
diff --git a/src/osgEarthDrivers/ocean_surface/OceanShaders b/src/osgEarthDrivers/ocean_surface/OceanShaders
new file mode 100644
index 0000000..48d13e4
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanShaders
@@ -0,0 +1,138 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_OCEAN_SURFACE_SHADERS
+#define OSGEARTH_DRIVER_OCEAN_SURFACE_SHADERS 1
+
+namespace
+{
+    static char source_setupColoring[] =
+
+        "#version " GLSL_VERSION_STR "\n"
+
+        "vec2 ocean_xyz_to_spherical(in vec3 xyz) \n"
+        "{ \n"
+        "    float r = length(xyz); \n"
+        "    float lat = acos(xyz.z/r); \n"
+        "    float lon = atan(xyz.y, xyz.x); \n"
+        "    return vec2(lon,lat); \n"
+        "} \n"
+
+        "uniform mat4 osg_ViewMatrixInverse; \n"
+        "uniform mat4 osg_ViewMatrix; \n"
+        "uniform sampler2D ocean_tex0; \n"                 // heightfield encoded into 16 bit texture
+        "uniform float ocean_seaLevel; \n"                 // sea level offset
+        "uniform bool ocean_has_tex1; \n"                  // whether there's a surface texture
+
+        "varying vec4  osg_FrontColor; \n"
+        "varying vec2  ocean_texCoord1; \n"
+        "varying float ocean_v_msl; \n"                    // elevation (MSL) of camera
+        "varying float ocean_v_range; \n"                  // distance from camera to current vertex
+        "varying float ocean_v_enorm; \n"                  // normalized terrain height at vertex [0..1]
+
+        "void osgearth_vert_setupColoring() \n"
+        "{ \n"
+        "   osg_FrontColor = gl_Color; \n"
+
+        // adjust our vert for the sea level - extrude along the normal vector 
+        // (this must be done in modelview space to preserve precision)
+        "   vec4 mvVertex = gl_ModelViewMatrix * gl_Vertex; \n"
+        "   vec3 mvNormal = gl_NormalMatrix * gl_Normal; \n"
+        "   vec4 mvVertex2 = vec4(mvVertex.xyz + (mvNormal * ocean_seaLevel), mvVertex.w ); \n"
+        "   gl_Position = gl_ProjectionMatrix * mvVertex2; \n"
+
+        // read normalized [0..1] elevation data from the height texture:
+        "   ocean_v_enorm = texture2D( ocean_tex0, gl_MultiTexCoord0.st ).r; \n"
+
+        // send interpolated params to the fs:
+        "   vec4 eye = osg_ViewMatrixInverse * vec4(0,0,0,1); \n"
+
+        // height of camera above sea level:
+        "   ocean_v_msl = length(eye.xyz/eye.w) - 6378137.0 + ocean_seaLevel; \n"
+
+        // disatnce to camera:
+        "   ocean_v_range = length(gl_Position); \n"
+
+        // scale the texture mapping to something reasonable:
+        "   vec4 worldVertex = osg_ViewMatrixInverse * mvVertex; \n"
+        "   vec2 lonlat = ocean_xyz_to_spherical( worldVertex.xyz/worldVertex.w ); \n"
+        "   ocean_texCoord1 = lonlat / 0.0005; \n"
+        "} \n";
+
+
+    char source_applyColoring[] = 
+
+        "#version " GLSL_VERSION_STR "\n"
+
+        // clamps a value to the vmin/vmax range, then re-maps it to the r0/r1 range:
+        "float ocean_remap( float val, float vmin, float vmax, float r0, float r1 ) \n"
+        "{ \n"
+        "    float vr = (clamp(val, vmin, vmax)-vmin)/(vmax-vmin); \n"
+        "    return r0 + vr * (r1-r0); \n"
+        "} \n"
+
+        "varying float ocean_v_msl; \n"                  // elevation (MSL) of camera
+        "varying float ocean_v_range; \n"                // distance from camera to current vertex
+        "varying float ocean_v_enorm; \n"                // normalized terrain height at vertex [0..1]
+        "varying vec2  ocean_texCoord1; \n"              // surface texture coords
+
+        "uniform bool ocean_has_tex1; \n"                // whether there's a surface texture
+        "uniform sampler2D ocean_tex1; \n"               // surface texture
+        "uniform float ocean_seaLevel; \n"               // sea level offset
+        "uniform float ocean_lowFeather; \n"             // offset from sea level at which to start feathering out
+        "uniform float ocean_highFeather; \n"            // offset from sea level at which to stop feathering out
+        "uniform vec4  ocean_baseColor; \n"              // base ocean color before processing
+
+        "void osgearth_frag_applyColoring(inout vec4 color) \n"
+        "{ \n"
+        "    color = ocean_baseColor; \n"
+
+        // amplify the range's effect on alpha when the camera elevation gets low
+        "    float rangeFactor = ocean_remap( ocean_v_msl, -10000.0, 10000.0, 10.0, 1.0 ); \n"
+
+        // affect alpha based on the distance from the camera
+        "    float rangeEffect = ocean_remap( ocean_v_range, 75000.0, 200000.0 * rangeFactor, 1.0, 0.0 ); \n"
+
+        // start with the surface texture.
+        "    if (ocean_has_tex1) \n"
+        "    { \n"
+        "        vec4 texel = texture2D(ocean_tex1, ocean_texCoord1); \n"
+        "        vec4 nearColor = vec4(mix(color.rgb, texel.rgb, texel.a), color.a); \n"
+        "        color = mix(color, nearColor, rangeEffect); \n"
+        "    } \n"
+
+        // un-normalize the heightfield data
+        "    float terrainHeight = (ocean_v_enorm * 65535.0) - 32768.0; \n"
+
+        // heightfield's effect on alpha [0..1]
+        "    float terrainEffect = ocean_remap( terrainHeight, ocean_seaLevel+ocean_lowFeather, ocean_seaLevel+ocean_highFeather, 1.0, 0.0 ); \n" 
+
+        // balance between texture-based alpha and static alpha
+        //"    float texBalance = remap( v_range, 7500.0, 15000.0, 0.0, 1.0 ); \n"
+        //"    float texIntensity = texture2D( tex1, texCoord1 ).r; \n"
+        //"    float texEffect = mix( texIntensity, 0.8, texBalance ); \n"
+
+        // color it
+        "    color = vec4( color.rgb, terrainEffect * rangeEffect * color.a ); \n"
+
+        //"    color = vec4( 1, 0, 0, 1 ); \n" // debugging
+        "} \n";
+
+}
+
+#endif // OSGEARTH_DRIVER_OCEAN_SURFACE_SHADERS
diff --git a/src/osgEarthDrivers/ocean_surface/OceanSurface b/src/osgEarthDrivers/ocean_surface/OceanSurface
new file mode 100644
index 0000000..2572413
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanSurface
@@ -0,0 +1,174 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_OCEAN_SURFACE
+#define OSGEARTH_DRIVER_OCEAN_SURFACE 1
+
+#include <osgEarth/MapNode>
+#include <osgEarth/ImageLayer>
+#include <osgEarth/URI>
+#include <osgEarth/Registry>
+#include <osgEarthSymbology/Color>
+#include <osg/Node>
+#include <osg/Image>
+#include <osgDB/ReadFile>
+#include <osgDB/Options>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Options for controlling the ocean surface node.
+     */
+    class /*header-only*/ OceanSurfaceOptions : public ConfigOptions
+    {
+    public:
+        /** Nominal sea level in meters (relative to ellipsoid/geoid); default is zero. */
+        optional<float>& seaLevel() { return _seaLevel; }
+        const optional<float>& seaLevel() const { return _seaLevel; }
+
+        /** Elevation offset (relative to seaLevel) at which ocean surface goes to min transparency */
+        optional<float>& lowFeatherOffset() { return _lowFeatherOffset; }
+        const optional<float>& lowFeatherOffset() const { return _lowFeatherOffset; }
+
+        /** Elevation offset (relative to seaLevel) at which ocean surface goes to full transparency */
+        optional<float>& highFeatherOffset() { return _highFeatherOffset; }
+        const optional<float>& highFeatherOffset() const { return _highFeatherOffset; }
+
+        /** Maximum LOD to subdivide ocean surface */
+        optional<unsigned>& maxLOD() { return _maxLOD; }
+        const optional<unsigned>& maxLOD() const { return _maxLOD; }
+
+        /** Base color of the ocean surface */
+        optional<Color>& baseColor() { return _baseColor; }
+        const optional<Color>& baseColor() const { return _baseColor; }
+
+        /** URI of the intensity texture to use for the ocean surface alpha. */
+        optional<URI>& textureURI() { return _textureURI; }
+        const optional<URI>& textureURI() const { return _textureURI; }
+
+    public:
+        OceanSurfaceOptions( const Config& conf =Config() )
+            : ConfigOptions     ( conf ),
+              _seaLevel         ( 0.0f ),
+              _lowFeatherOffset ( -100.0f ),
+              _highFeatherOffset( -10.0f ),
+              _maxLOD           ( 11 ),
+              _baseColor        ( osg::Vec4(0.2, 0.3, 0.5, 0.8) )
+        {
+            mergeConfig( _conf );
+        }
+
+        /** dtor */
+        virtual ~OceanSurfaceOptions() { }
+
+    public:
+        Config getConfig() const {
+            Config conf = ConfigOptions::newConfig();
+            conf.updateIfSet("sea_level",           _seaLevel );
+            conf.updateIfSet("high_feather_offset", _highFeatherOffset );
+            conf.updateIfSet("low_feather_offset",  _lowFeatherOffset );
+            conf.updateIfSet("max_lod",             _maxLOD );
+            conf.updateIfSet("base_color",          _baseColor );
+            conf.updateIfSet("texture_url",         _textureURI );
+            return conf;
+        }
+
+    protected:
+        void mergeConfig( const Config& conf ) {
+            ConfigOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet("sea_level",           _seaLevel );
+            conf.getIfSet("high_feather_offset", _highFeatherOffset );
+            conf.getIfSet("low_feather_offset",  _lowFeatherOffset );
+            conf.getIfSet("max_lod",             _maxLOD );
+            conf.getIfSet("base_color",          _baseColor );
+            conf.getIfSet("texture_url",         _textureURI );
+        }
+
+    private:
+        optional<float>          _seaLevel;
+        optional<float>          _lowFeatherOffset;
+        optional<float>          _highFeatherOffset;
+        optional<unsigned>       _maxLOD;
+        optional<Color>          _baseColor;
+        optional<URI>            _textureURI;
+    };
+
+
+    /**
+     * Node tha renders an ocean surface over a MapNode.
+     */
+    class /*header-only*/ OceanSurfaceNode : public osg::Group
+    {
+    public:
+        /**
+         * Constructs a new ocean surface node. Add this to your scene graph somewhere
+         * alongside your MapNode.
+         */
+        OceanSurfaceNode( MapNode* mapNode, const OceanSurfaceOptions& initialOptions =OceanSurfaceOptions() )
+            : _mapNode( mapNode ), _options( initialOptions )
+        {
+            osg::Node* node = load();
+            if ( node )
+                this->addChild( node );
+        }
+
+        /** dtor */
+        virtual ~OceanSurfaceNode() { }
+
+        /**
+         * Options controlling the look and behavior of the ocean
+         */         
+        OceanSurfaceOptions& options() { return _options; }
+        const OceanSurfaceOptions& options() const { return _options; }
+
+        /**
+         * Call this whenever you change options and want to apply the changes.
+         */
+        void dirty() { load(); }
+
+    private:
+        osg::observer_ptr<MapNode> _mapNode;
+        OceanSurfaceOptions        _options;
+
+        osg::Node* load()
+        {
+            osg::Node* result = 0L;
+            osg::ref_ptr<MapNode> safeMapNode = _mapNode.get();
+            if ( safeMapNode.valid() )
+            {
+                osg::ref_ptr<osgDB::Options> o = Registry::instance()->cloneOrCreateOptions(); //new osgDB::Options();
+                o->setPluginData( "mapNode", (void*)_mapNode.get() );
+                o->setPluginData( "options", (void*)&_options );
+                osgDB::ReaderWriter::ReadResult r = osgDB::readNodeFile( ".osgearth_ocean_surface", o.get() );
+                result = r.takeNode();
+            }
+            return result;
+        }
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_DRIVER_OCEAN_SURFACE
diff --git a/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer b/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer
new file mode 100644
index 0000000..9f317d5
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer
@@ -0,0 +1,58 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_OCEAN_SURFACE_CONTAINER
+#define OSGEARTH_DRIVER_OCEAN_SURFACE_CONTAINER 1
+
+#include "OceanSurface"
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarth/ImageLayer>
+#include <osgEarth/URI>
+#include <osg/Node>
+#include <osg/Image>
+#include <osg/Uniform>
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+class OceanSurfaceContainer : public osg::Group,
+                              public MapNodeObserver
+{
+public:
+    OceanSurfaceContainer( MapNode* mapNode, const OceanSurfaceOptions& options );
+
+    /** dtor */
+    virtual ~OceanSurfaceContainer() { }
+
+    void apply( const OceanSurfaceOptions& options );
+
+public:
+    MapNode* getMapNode() { return _parentMapNode.get(); }
+    void setMapNode( MapNode* mapNode );
+
+private:
+    osg::observer_ptr<MapNode> _parentMapNode;
+    OceanSurfaceOptions        _options;
+    osg::ref_ptr<osg::Uniform> _seaLevel, _lowFeather, _highFeather;
+    osg::ref_ptr<osg::Uniform> _baseColor;
+
+    void rebuild();
+};
+
+#endif // OSGEARTH_DRIVER_OCEAN_SURFACE_CONTAINER
diff --git a/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer.cpp b/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer.cpp
new file mode 100644
index 0000000..ccfbd0b
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/OceanSurfaceContainer.cpp
@@ -0,0 +1,152 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include "OceanSurfaceContainer"
+#include "OceanCompositor"
+#include "ElevationProxyImageLayer"
+#include <osgEarth/Map>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/TextureCompositor>
+#include <osgEarthDrivers/osg/OSGOptions>
+//#include <osgEarthDrivers/engine_osgterrain/OSGTerrainOptions>
+#include <osgEarthDrivers/engine_quadtree/QuadTreeTerrainEngineOptions>
+
+#include <osg/CullFace>
+#include <osg/Depth>
+#include <osg/Texture2D>
+
+#define LC "[OceanSurface] "
+
+OceanSurfaceContainer::OceanSurfaceContainer( MapNode* mapNode, const OceanSurfaceOptions& options ) :
+_parentMapNode( mapNode ),
+_options      ( options )
+{
+    // set the node mask so that our custom EarthManipulator will NOT find this node.
+    setNodeMask( 0xFFFFFFFE );
+    rebuild();
+}
+
+
+void
+OceanSurfaceContainer::rebuild()
+{
+    this->removeChildren( 0, this->getNumChildren() );
+
+    if ( _parentMapNode.valid() )
+    {
+        const MapOptions&     parentMapOptions     = _parentMapNode->getMap()->getMapOptions();
+        const MapNodeOptions& parentMapNodeOptions = _parentMapNode->getMapNodeOptions();
+
+        // set up the map to "match" the parent map:
+        MapOptions mo;
+        mo.coordSysType() = parentMapOptions.coordSysType();
+        mo.profile()      = _parentMapNode->getMap()->getProfile()->toProfileOptions();
+
+        // new data model for the ocean:
+        Map* oceanMap = new Map( mo );
+
+        // ditto with the map node options:
+        MapNodeOptions mno;
+        if ( mno.enableLighting().isSet() )
+            mno.enableLighting() = *mno.enableLighting();
+
+        QuadTreeTerrainEngineOptions to;
+        to.heightFieldSkirtRatio() = 0.0;  // don't want to see skirts
+        to.clusterCulling() = false;       // want to see underwater
+        to.enableBlending() = true;        // gotsta blend with the main node
+        mno.setTerrainOptions( to );
+
+        // make the ocean's map node:
+        MapNode* oceanMapNode = new MapNode( oceanMap, mno );
+        
+        // install a custom compositor. Must do this before adding any image layers.
+        oceanMapNode->setCompositorTechnique( new OceanCompositor() );
+
+        // install an "elevation proxy" layer that reads elevation tiles from the
+        // parent map and turns them into encoded images for our shader to use.
+        ImageLayerOptions epo( "ocean-proxy" );
+        epo.maxLevel() = *_options.maxLOD();
+        oceanMap->addImageLayer( new ElevationProxyImageLayer(_parentMapNode->getMap(), epo) );
+
+        this->addChild( oceanMapNode );
+
+        // set up the options uniforms.
+        osg::StateSet* ss = this->getOrCreateStateSet();
+
+        _seaLevel = new osg::Uniform(osg::Uniform::FLOAT, "ocean_seaLevel");
+        ss->addUniform( _seaLevel.get() );
+
+        _lowFeather = new osg::Uniform(osg::Uniform::FLOAT, "ocean_lowFeather");
+        ss->addUniform( _lowFeather.get() );
+
+        _highFeather = new osg::Uniform(osg::Uniform::FLOAT, "ocean_highFeather");
+        ss->addUniform( _highFeather.get() );
+
+        _baseColor = new osg::Uniform(osg::Uniform::FLOAT_VEC4, "ocean_baseColor");
+        ss->addUniform( _baseColor.get() );
+
+        // trick to prevent z-fighting..
+        ss->setAttributeAndModes( new osg::Depth(osg::Depth::LEQUAL, 0.0, 1.0, false) );
+        ss->setRenderBinDetails( 15, "RenderBin" );
+
+        // load up a surface texture
+        ss->getOrCreateUniform( "ocean_has_tex1", osg::Uniform::BOOL )->set( false );
+        if ( _options.textureURI().isSet() )
+        {
+            //TODO: enable cache support here:
+            osg::Image* image = _options.textureURI()->getImage();
+            if ( image )
+            {
+                osg::Texture2D* tex = new osg::Texture2D( image );
+                tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR_MIPMAP_LINEAR );
+                tex->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
+                tex->setWrap  ( osg::Texture::WRAP_S, osg::Texture::REPEAT );
+                tex->setWrap  ( osg::Texture::WRAP_T, osg::Texture::REPEAT );
+
+                ss->setTextureAttributeAndModes( 1, tex, 1 );
+                ss->getOrCreateUniform( "ocean_tex1", osg::Uniform::SAMPLER_2D )->set( 1 );
+                ss->getOrCreateUniform( "ocean_has_tex1", osg::Uniform::BOOL )->set( true );
+            }
+        }
+
+        // remove backface culling so we can see underwater
+        // (use OVERRIDE since the terrain engine sets back face culling.)
+        ss->setAttributeAndModes( new osg::CullFace(), osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+
+        apply( _options );
+    }
+}
+
+void
+OceanSurfaceContainer::apply( const OceanSurfaceOptions& options )
+{
+    OE_DEBUG << LC << "Ocean Options = " << options.getConfig().toJSON(true) << std::endl;
+
+    _seaLevel->set( *options.seaLevel() );
+    _lowFeather->set( *options.lowFeatherOffset() );
+    _highFeather->set( *options.highFeatherOffset() );
+    _baseColor->set( *options.baseColor() );
+}
+
+
+void
+OceanSurfaceContainer::setMapNode( MapNode* parentMapNode )
+{
+    _parentMapNode = parentMapNode;
+    rebuild();
+}
diff --git a/src/osgEarthDrivers/ocean_surface/ReaderWriterOceanSurface.cpp b/src/osgEarthDrivers/ocean_surface/ReaderWriterOceanSurface.cpp
new file mode 100644
index 0000000..4def40f
--- /dev/null
+++ b/src/osgEarthDrivers/ocean_surface/ReaderWriterOceanSurface.cpp
@@ -0,0 +1,87 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgDB/ReaderWriter>
+#include <osgDB/FileNameUtils>
+#include <osgDB/Registry>
+#include <osgDB/FileUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ThreadingUtils>
+
+#include "OceanSurface"
+#include "OceanSurfaceContainer"
+
+#undef  LC
+#define LC "[ReaderWriterOceanSurface] "
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+//---------------------------------------------------------------------------
+
+struct ReaderWriterOceanSurface : public osgDB::ReaderWriter
+{
+    ReaderWriterOceanSurface()
+    {
+        supportsExtension( "osgearth_ocean_surface", "Ocean Surface" );
+    }
+
+    ReadResult readObject(const std::string& url, const Options* options) const
+    {
+        return readNode( url, options );
+    }
+
+    ReadResult readNode(const std::string& url, const Options* options) const
+    {
+        std::string ext = osgDB::getLowerCaseFileExtension(url);
+        if ( !acceptsExtension(ext) )
+            return ReadResult::FILE_NOT_HANDLED;
+
+        MapNode*             mapNode    = 0L;
+        OceanSurfaceOptions* osOptions  = 0L;
+
+        if ( options )
+        {
+            mapNode    = static_cast<MapNode*>( const_cast<void*>(options->getPluginData("mapNode")) );
+            osOptions  = static_cast<OceanSurfaceOptions*>( const_cast<void*>(options->getPluginData("options")) );
+        }
+
+        if ( !mapNode )
+            return ReadResult::ERROR_IN_READING_FILE;
+
+        osg::observer_ptr<OceanSurfaceContainer>& node = const_cast<ReaderWriterOceanSurface*>(this)->_oceans.get(mapNode);
+        if ( !node.valid() )
+        {
+            node = new OceanSurfaceContainer( mapNode, osOptions? *osOptions : OceanSurfaceOptions() );
+            return ReadResult( node.get() );
+        }
+        else if ( osOptions )
+        {
+            node->apply( *osOptions );
+            return ReadResult( node.get() );
+        }
+        else
+        {
+            return ReadResult();
+        }
+    }
+
+    Threading::PerObjectMap<MapNode*, osg::observer_ptr<OceanSurfaceContainer> > _oceans;
+};
+
+REGISTER_OSGPLUGIN( osgearth_ocean_surface, ReaderWriterOceanSurface )
diff --git a/src/osgEarthDrivers/osg/OSGOptions b/src/osgEarthDrivers/osg/OSGOptions
index 86d90f3..c3966a6 100644
--- a/src/osgEarthDrivers/osg/OSGOptions
+++ b/src/osgEarthDrivers/osg/OSGOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -38,22 +39,30 @@ namespace osgEarth { namespace Drivers
         optional<bool>& addAlpha() { return _addAlpha; }
         const optional<bool>& addAlpha() const { return _addAlpha; }
 
+        optional<unsigned>& maxDataLevel() { return _maxDataLevel; }
+        const optional<unsigned>& maxDataLevel() const { return _maxDataLevel; }
+
     public:
         OSGOptions( const TileSourceOptions& opt =TileSourceOptions() ) :
             TileSourceOptions( opt ),
             _lum2rgba( false ),
-            _addAlpha( false )
+            _addAlpha( false ),
+            _maxDataLevel( 21 )
         {
             setDriver( "osg" );
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~OSGOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
             conf.updateIfSet("url", _url );
             conf.updateIfSet("luminance_to_rgba", _lum2rgba);
             conf.updateIfSet("add_alpha", _addAlpha);
+            conf.updateIfSet("max_data_level", _maxDataLevel );
             return conf;
         }
 
@@ -67,12 +76,14 @@ namespace osgEarth { namespace Drivers
         void fromConfig( const Config& conf ) {
             conf.getIfSet( "url", _url );
             conf.getIfSet( "luminance_to_rgba", _lum2rgba );
-            conf.getIfSet("add_alpha", _addAlpha);
+            conf.getIfSet( "add_alpha", _addAlpha);
+            conf.getIfSet( "max_data_level", _maxDataLevel );
         }
 
         optional<URI>  _url;
         optional<bool> _lum2rgba;
         optional<bool> _addAlpha;
+        optional<unsigned> _maxDataLevel;
     };
 
 } } // namespace osgEarth::Drivers
diff --git a/src/osgEarthDrivers/osg/OSGTileSource.cpp b/src/osgEarthDrivers/osg/OSGTileSource.cpp
index 7ccaac4..030fa3e 100644
--- a/src/osgEarthDrivers/osg/OSGTileSource.cpp
+++ b/src/osgEarthDrivers/osg/OSGTileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,9 +18,10 @@
  */
 #include "OSGOptions"
 
-#include <osgEarth/HTTPClient>
 #include <osgEarth/FileUtils>
 #include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/URI>
 #include <osgDB/FileNameUtils>
 
 #include <cstring>
@@ -62,43 +63,48 @@ public:
         //nop
     }
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
-        if ( !overrideProfile )
+        osg::ref_ptr<osgDB::Options> localOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+        CachePolicy::NO_CACHE.apply(localOptions.get());
+
+        if ( !getProfile() )
         {
-            OE_WARN << LC << "An explicit profile definition is required by the OSG driver." << std::endl;
-            return;
+            return Status::Error( "An explicit profile definition is required by the OSG driver." );
         }
 
-        setProfile( overrideProfile );
-
         osg::ref_ptr<osg::Image> image;
 
-        URI url = _options.url().value();
-        if ( !url.empty() )
+        if ( !_options.url()->empty() )
         {
-            url = URI( url.full(), referenceURI ); // obselete?
-            HTTPClient::ResultCode code = HTTPClient::readImageFile( url.full(), image );
-            if ( code != HTTPClient::RESULT_OK )
+            ReadResult r = _options.url()->readImage( localOptions.get() );
+            if ( r.succeeded() )
             {
-                OE_WARN << LC << "Failed to load data from \"" << url.full() << "\", because: " << 
-                    HTTPClient::getResultCodeString(code) << std::endl;
+                image = r.getImage();
             }
         }
 
         if ( !image.valid() )
-            OE_WARN << LC << "Faild to load data from \"" << url.full() << "\"" << std::endl;
+        {
+            return Status::Error( Stringify() <<  "Faild to load data from \"" << _options.url()->full() << "\"" );
+        }
 
         // calculate and store the maximum LOD for which to return data
         if ( image.valid() )
         {
-            int minSpan = osg::minimum( image->s(), image->t() );
-            int tileSize = _options.tileSize().value();
-            _maxDataLevel = (int)LOG2((minSpan/tileSize)+1);
-            //OE_NOTICE << "[osgEarth::OSG driver] minSpan=" << minSpan << ", _tileSize=" << tileSize << ", maxDataLevel = " << _maxDataLevel << std::endl;
-
+            if ( _options.maxDataLevel().isSet() )
+            {
+                _maxDataLevel = *_options.maxDataLevel();
+            }
+            else
+            {
+                int minSpan = osg::minimum( image->s(), image->t() );
+                int tileSize = _options.tileSize().value();
+                _maxDataLevel = (int)LOG2((minSpan/tileSize)+1);
+                //OE_NOTICE << "[osgEarth::OSG driver] minSpan=" << minSpan << ", _tileSize=" << tileSize << ", maxDataLevel = " << _maxDataLevel << std::endl;
+            }
             
-            getDataExtents().push_back( DataExtent(overrideProfile->getExtent(), 0, _maxDataLevel) );
+            getDataExtents().push_back( DataExtent(getProfile()->getExtent(), 0, _maxDataLevel) );
 
             bool computeAlpha =
                 (_options.convertLuminanceToRGBA() == true && image->getPixelFormat() == GL_LUMINANCE) ||
@@ -120,7 +126,9 @@ public:
             _image = GeoImage( image.get(), getProfile()->getExtent() );
         }
 
-        _extension = osgDB::getFileExtension( url.full() );
+        _extension = osgDB::getFileExtension( _options.url()->full() );
+
+        return STATUS_OK;
     }
     
     //override
@@ -146,9 +154,9 @@ public:
     }
 
 private:
-    std::string _extension;
-    int _maxDataLevel;
-    GeoImage _image;
+    std::string      _extension;
+    int              _maxDataLevel;
+    GeoImage         _image;
     const OSGOptions _options;
 };
 
diff --git a/src/osgEarthDrivers/refresh/CMakeLists.txt b/src/osgEarthDrivers/refresh/CMakeLists.txt
new file mode 100644
index 0000000..ac91407
--- /dev/null
+++ b/src/osgEarthDrivers/refresh/CMakeLists.txt
@@ -0,0 +1,13 @@
+SET(TARGET_SRC
+  ReaderWriterRefresh.cpp
+)
+SET(TARGET_H
+  RefreshOptions
+)
+
+SETUP_PLUGIN(osgearth_refresh)
+
+# to install public driver includes:
+SET(LIB_NAME refresh)
+SET(LIB_PUBLIC_HEADERS RefreshOptions)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/refresh/ReaderWriterRefresh.cpp b/src/osgEarthDrivers/refresh/ReaderWriterRefresh.cpp
new file mode 100644
index 0000000..40e6444
--- /dev/null
+++ b/src/osgEarthDrivers/refresh/ReaderWriterRefresh.cpp
@@ -0,0 +1,248 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarth/TileSource>
+#include <osgEarth/FileUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+
+#include <osg/Notify>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <osgDB/Registry>
+#include <osgDB/ReadFile>
+#include <osgDB/WriteFile>
+#include <osg/ImageStream>
+#include <osg/ImageSequence>
+
+#include <sstream>
+#include <iomanip>
+#include <string.h>
+
+#include "RefreshOptions"
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+#define LC "[Refresh driver] "
+
+/*
+ * LoadImageOperation is a simple operation that simply loads an image in a background thread
+ */
+class LoadImageOperation : public osg::Operation
+{
+public:
+    LoadImageOperation(const std::string& filename):
+      _filename(filename),
+          _done(false)
+      {
+      }
+
+      void operator()(osg::Object*)
+      {
+          //Try to load the image a few times.  If you happen to be writing the file at the
+          //same time as the plugin tries to load it it can fail.
+          unsigned int maxTries = 5;
+          for (unsigned int i = 0; i < maxTries; i++)
+          {
+              _image = osgDB::readImageFile( _filename );                                     
+              if (_image.valid()) break;              
+          }
+          _done = true;
+      }
+
+      bool _done;
+      osg::ref_ptr< osg::Image > _image;
+      std::string _filename;
+};
+
+
+
+/*
+ * RefreshImage is a special ImageStream that reloads an image from a filename and
+ * updates it's internal image data.
+ */
+class RefreshImage : public osg::ImageStream
+{
+public:
+
+    RefreshImage(const std::string& filename, double time):
+      _filename(filename),
+          _time(time),
+          _lastUpdateTime(0),
+          osg::ImageStream()
+      {                    
+          osg::ref_ptr< osg::Image > image = osgDB::readImageFile( filename );
+          if (image.valid()) copyImage( image.get() );
+      }      
+
+
+      /**
+       * Tell OpenSceneGraph that we require an update call
+       */
+      virtual bool requiresUpdateCall() const { return true; }
+
+      ~RefreshImage()
+      {
+      }
+
+      static osg::OperationsThread* getOperationsThread() 
+      {          
+          //Create an Operations Thread.  This thread is static and is not deleted b/c 
+          //there are issues with calling cancel on static threads on Windows.  The thread itself will die
+          //cleanly, but the application will hang waiting for the cancel call in OpenThreads to return.
+          //This is something that needs to be fixed in OpenThreads so we can maintain a static threadpool.
+          static osg::OperationsThread* _thread = 0;
+          static OpenThreads::Mutex _mutex;
+
+          if (!_thread)
+          {
+              OpenThreads::ScopedLock< OpenThreads::Mutex > lock(_mutex);
+              if (!_thread)
+              {
+                  _thread = new osg::OperationsThread;
+                  _thread->start();
+              }            
+          }    
+          return _thread;                          
+
+      }
+
+      //If the loadImageOp is complete then update the contents of this image with the new pixels
+      void updateImage() 
+      {
+          if (_loadImageOp.valid() && _loadImageOp->_done)
+          {              
+              osg::ref_ptr< osg::Image > image = _loadImageOp->_image.get();
+              if (image.valid())
+              {
+                  copyImage( image.get() );
+              }
+              _lastUpdateTime = osg::Timer::instance()->time_s();
+              _loadImageOp = 0;
+          }
+      }
+
+
+      /**
+       * Copies the contents of the given image into this image.
+       */
+      void copyImage( osg::Image* image)
+      {
+          if (image)
+          {
+              unsigned char* data = new unsigned char[ image->getTotalSizeInBytes() ];
+              memcpy(data, image->data(), image->getTotalSizeInBytes());
+              setImage(image->s(), image->t(), image->r(), image->getInternalTextureFormat(), image->getPixelFormat(), image->getDataType(), data, osg::Image::USE_NEW_DELETE, image->getPacking());                            
+          }
+      }
+
+      /** update method for osg::Image subclasses that update themselves during the update traversal.*/
+      virtual void update(osg::NodeVisitor* nv)
+      {                               
+          updateImage();
+          double time = osg::Timer::instance()->time_s();
+          osg::Timer_t ticks = osg::Timer::instance()->tick();          
+          //If we've let enough time elapse and we're not waiting on an existing load image operation then add one to the queue
+          if (!_loadImageOp.valid() && (time - _lastUpdateTime > _time))
+          {
+              std::stringstream ss;
+              std::string file = ss.str();              
+              _loadImageOp = new LoadImageOperation(_filename);
+              getOperationsThread()->add( _loadImageOp.get() );
+          }
+      }
+
+      std::string _filename;
+      double _time;
+      double _lastUpdateTime;
+      osg::ref_ptr< LoadImageOperation > _loadImageOp;      
+};
+
+
+class RefreshSource : public TileSource
+{
+public:
+    RefreshSource(const TileSourceOptions& options) : TileSource(options), _options(options)
+    {
+    }
+
+
+    Status initialize(const osgDB::Options* dbOptions)
+    {        
+        setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
+        return STATUS_OK;
+    }
+
+
+    osg::Image* createImage(
+        const TileKey&        key,
+        ProgressCallback*     progress )
+    {        
+        return new RefreshImage( _options.url()->full(), *_options.frequency());     
+    }
+
+    bool isDynamic() const
+    {
+        //Tell osgEarth that this is a dynamic image
+        return true;
+    }
+
+    virtual int getPixelsPerTile() const
+    {
+        return 256;
+    }
+
+    virtual std::string getExtension()  const 
+    {
+        return osgDB::getFileExtension( _options.url()->full() );
+    }
+
+private:
+    const RefreshOptions      _options;
+    
+};
+
+
+
+
+class ReaderWriterRefresh : public TileSourceDriver
+{
+public:
+    ReaderWriterRefresh()
+    {
+        supportsExtension( "osgearth_refresh", "Refresh" );
+    }
+
+    virtual const char* className()
+    {
+        return "ReaderWriterRefresh";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return new RefreshSource( getTileSourceOptions(options) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_refresh, ReaderWriterRefresh)
+
diff --git a/src/osgEarthDrivers/refresh/RefreshOptions b/src/osgEarthDrivers/refresh/RefreshOptions
new file mode 100644
index 0000000..8265ade
--- /dev/null
+++ b/src/osgEarthDrivers/refresh/RefreshOptions
@@ -0,0 +1,85 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_REFRESH_MAPLAYERFACTORY
+#define OSGEARTH_DRIVER_REFRESH_MAPLAYERFACTORY 1
+
+#include <osgEarth/Common>
+#include <osgEarth/TileSource>
+#include <osgEarth/URI>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+
+    class RefreshOptions : public TileSourceOptions // NO EXPORT; header only
+    {
+    public:
+        optional<URI>& url() { return _url; }
+        const optional<URI>& url() const { return _url; }
+
+        optional<double>& frequency() { return _frequency; }
+        const optional<double>& frequency() const { return _frequency; }
+
+    public:
+        RefreshOptions( const TileSourceOptions& opt =TileSourceOptions() ) : TileSourceOptions( opt )
+        {
+            setDriver( "refresh" );
+            frequency() = 2.0;            
+            fromConfig( _conf );
+        }
+
+        RefreshOptions( const std::string& inUrl, double inFrequency ) : TileSourceOptions()
+        {
+            setDriver( "refresh" );
+            fromConfig( _conf );
+            _url = inUrl;
+             _frequency = inFrequency;
+        }
+
+        /** dtor */
+        virtual ~RefreshOptions() { }
+
+    public:
+        Config getConfig() const {
+            Config conf = TileSourceOptions::getConfig();
+            conf.updateIfSet("url", _url);
+            conf.updateIfSet("frequency", _frequency);            
+            return conf;
+        }
+
+    protected:
+        void mergeConfig( const Config& conf ) {
+            TileSourceOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "url", _url );
+            conf.getIfSet( "frequency", _frequency );
+        }
+
+        optional<URI>         _url;
+        optional<double>      _frequency;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_DRIVER_TMS_MAPLAYERFACTORY
+
diff --git a/src/osgEarthDrivers/script_engine_v8/CMakeLists.txt b/src/osgEarthDrivers/script_engine_v8/CMakeLists.txt
new file mode 100644
index 0000000..7c1ab93
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/CMakeLists.txt
@@ -0,0 +1,24 @@
+
+INCLUDE_DIRECTORIES( ${V8_INCLUDE_DIR} )
+
+SET(TARGET_SRC
+    JavascriptEngineV8Factory.cpp
+    JavascriptEngineV8.cpp
+    JSWrappers.cpp
+)
+
+SET(TARGET_H
+    JavascriptEngineV8
+    JSWrappers
+    V8Util
+)
+
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} ${V8_LIBRARY} osgEarthFeatures)
+
+SETUP_PLUGIN(osgearth_scriptengine_javascript)
+
+# to install public driver includes:
+SET(LIB_NAME scriptengine_javascript)
+SET(LIB_PUBLIC_HEADERS ${TARGET_H} )
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
+
diff --git a/src/osgEarthDrivers/script_engine_v8/JSWrappers b/src/osgEarthDrivers/script_engine_v8/JSWrappers
new file mode 100644
index 0000000..a1f4318
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/JSWrappers
@@ -0,0 +1,233 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_DRIVER_JS_FEATURE_CONTEXT_H
+#define OSGEARTH_DRIVER_JS_FEATURE_CONTEXT_H 1
+
+#include <osgEarth/StringUtils>
+#include <osgEarthFeatures/Feature>
+//#include <osgEarthFeatures/Script>
+//#include <osgEarthFeatures/ScriptEngine>
+
+#include <v8.h>
+
+// ---------------------------------------------------------------------------
+
+class JSFeature
+{
+public:
+  static v8::Handle<v8::Object> WrapFeature(osgEarth::Features::Feature* feature, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::ObjectTemplate> GetAttributesObjectTemplate();
+
+  static v8::Handle<v8::Value> GetFeatureAttr(const std::string& attr, osgEarth::Features::Feature const* feature);
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+  static v8::Handle<v8::Value> AttrPropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static void FreeFeatureCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSSymbologyGeometry
+{
+public:
+  static v8::Handle<v8::Object> WrapGeometry(osgEarth::Symbology::Geometry* geometry, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+  static v8::Handle<v8::Value> IndexedPropertyCallback(uint32_t index, const v8::AccessorInfo& info);
+
+  static void FreeGeometryCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSBounds
+{
+public:
+  static v8::Handle<v8::Object> WrapBounds(osgEarth::Bounds* bounds, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+  
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static v8::Handle<v8::Value> ContainsCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> UnionCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> IntersectionCallback(const v8::Arguments& args);
+
+  static void FreeBoundsCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSVec3d
+{
+public:
+  static v8::Handle<v8::Object> WrapVec3d(osg::Vec3d* vec, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+  static v8::Handle<v8::Value> IndexedPropertyCallback(uint32_t index, const v8::AccessorInfo& info);
+
+  static void FreeVecCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSFilterContext
+{
+public:
+  static v8::Handle<v8::Object> WrapFilterContext(osgEarth::Features::FilterContext* context, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static v8::Handle<v8::Value> ToLocalCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> ToWorldCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> ToMapCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> FromMapCallback(const v8::Arguments& args);
+
+  static void FreeContextCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSSession
+{
+public:
+  static v8::Handle<v8::Object> WrapSession(osgEarth::Features::Session* session, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+#if 0
+  static v8::Handle<v8::Value> ResolveUriCallback(const v8::Arguments& args);
+#endif
+
+  static void FreeSessionCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSMapInfo
+{
+public:
+  static v8::Handle<v8::Object> WrapMapInfo(osgEarth::MapInfo* mapInfo, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+#if 0
+  static v8::Handle<v8::Value> ToMapCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> MapToWorldCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> WorldToMapCallback(const v8::Arguments& args);
+#endif
+
+  static void FreeMapInfoCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSFeatureProfile
+{
+public:
+  static v8::Handle<v8::Object> WrapFeatureProfile(osgEarth::Features::FeatureProfile* context, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static void FreeProfileCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSGeoExtent
+{
+public:
+  static v8::Handle<v8::Object> WrapGeoExtent(osgEarth::GeoExtent* extent, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static v8::Handle<v8::Value> ContainsCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> IntersectsCallback(const v8::Arguments& args);
+
+  static void FreeGeoExtentCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+class JSSpatialReference
+{
+public:
+  static v8::Handle<v8::Object> WrapSpatialReference(osgEarth::SpatialReference* srs, bool freeObject=false);
+  static const std::string& GetObjectType() { return _objectType; }
+
+protected:
+  static const std::string _objectType;
+
+  static v8::Handle<v8::ObjectTemplate> GetObjectTemplate();
+  static v8::Handle<v8::Value> PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info);
+
+  static v8::Handle<v8::Value> EquivalenceCallback(const v8::Arguments& args);
+  static v8::Handle<v8::Value> TangentPlaneCallback(const v8::Arguments& args);
+
+  static void FreeSpatialReferenceCallback(v8::Persistent<v8::Value> object, void *parameter);
+};
+
+// ---------------------------------------------------------------------------
+
+#endif // OSGEARTH_DRIVER_JS_FEATURE_CONTEXT_H
\ No newline at end of file
diff --git a/src/osgEarthDrivers/script_engine_v8/JSWrappers.cpp b/src/osgEarthDrivers/script_engine_v8/JSWrappers.cpp
new file mode 100644
index 0000000..e4000fa
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/JSWrappers.cpp
@@ -0,0 +1,1239 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthDrivers/script_engine_v8/JSWrappers>
+#include <osgEarthDrivers/script_engine_v8/V8Util>
+#include <osgEarthFeatures/FilterContext>
+#include <osgEarth/StringUtils>
+#include <v8.h>
+
+using namespace osgEarth::Features;
+
+// ---------------------------------------------------------------------------
+const std::string JSFeature::_objectType = "JSFeature";
+
+v8::Handle<v8::Object>
+JSFeature::WrapFeature(osgEarth::Features::Feature* feature, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  if (!feature)
+  {
+    v8::Handle<v8::Object> obj;
+    return handle_scope.Close(obj);
+  }
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(feature, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(feature, FreeFeatureCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSFeature::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> feat_instance = v8::ObjectTemplate::New();
+
+  feat_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  feat_instance->SetInternalFieldCount(1);
+  feat_instance->SetNamedPropertyHandler(PropertyCallback);
+
+  return handle_scope.Close(feat_instance);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSFeature::GetAttributesObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> attr_instance = v8::ObjectTemplate::New();
+
+  attr_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New("JSFeature_Attrs"));
+  attr_instance->SetInternalFieldCount(1);
+  attr_instance->SetNamedPropertyHandler(AttrPropertyCallback);
+
+  return handle_scope.Close(attr_instance);
+}
+
+v8::Handle<v8::Value>
+JSFeature::GetFeatureAttr(const std::string& attr, Feature const* feature)
+{
+  AttributeTable::const_iterator it = feature->getAttrs().find(attr);
+
+  // If the key is not present return an empty handle as signal
+  if (it == feature->getAttrs().end())
+    return v8::Handle<v8::Value>();
+
+  // Otherwise fetch the value and wrap it in a JavaScript string
+  osgEarth::Features::AttributeType atype = (*it).second.first;
+  switch (atype)
+  {
+    case osgEarth::Features::ATTRTYPE_BOOL:
+      return v8::Boolean::New((*it).second.getBool());
+    case osgEarth::Features::ATTRTYPE_DOUBLE:
+      return v8::Number::New((*it).second.getDouble());
+    case osgEarth::Features::ATTRTYPE_INT:
+      return v8::Integer::New((*it).second.getInt());
+    default:
+      std::string val = (*it).second.getString();
+      return v8::String::New(val.c_str(), val.length());
+  }
+}
+
+v8::Handle<v8::Value>
+JSFeature::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  Feature* feature = V8Util::UnwrapObject<Feature>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!feature || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "fid")
+    return v8::Uint32::New(feature->getFID());
+  else if (prop == "attrs" || prop == "attributes")
+    return V8Util::WrapObject(feature, GetAttributesObjectTemplate());
+  else if (prop == "geometry")
+    return JSSymbologyGeometry::WrapGeometry(feature->getGeometry());
+
+  //return GetFeatureAttr(prop, feature);
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSFeature::AttrPropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  Feature* feature = V8Util::UnwrapObject<Feature>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string attr(*utf8_value);
+
+  if (!feature || attr.empty())
+    return v8::Handle<v8::Value>();
+
+  return GetFeatureAttr(attr, feature);
+}
+
+void
+JSFeature::FreeFeatureCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  Feature* feature = static_cast<Feature*>(parameter);
+  delete feature;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSSymbologyGeometry::_objectType = "JSSymbologyGeometry";
+
+v8::Handle<v8::Object>
+JSSymbologyGeometry::WrapGeometry(osgEarth::Symbology::Geometry* geometry, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(geometry, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(geometry, FreeGeometryCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSSymbologyGeometry::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+  template_instance->SetIndexedPropertyHandler(IndexedPropertyCallback);
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSSymbologyGeometry::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osgEarth::Symbology::Geometry* geom = V8Util::UnwrapObject<osgEarth::Symbology::Geometry>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!geom || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "totalPointCount")
+    return v8::Integer::New(geom->getTotalPointCount());
+  else if (prop == "numComponents")
+    return v8::Uint32::New(geom->getNumComponents());
+  else if (prop == "bounds")
+  {
+    osgEarth::Bounds bounds = geom->getBounds();
+    osgEarth::Bounds* newBounds = new osgEarth::Bounds();
+    newBounds->set(bounds.xMin(), bounds.yMin(), bounds.zMin(), bounds.xMax(), bounds.yMax(), bounds.zMax());
+    return JSBounds::WrapBounds(newBounds, true);
+  }
+  else if (prop == "type")
+    return v8::String::New(osgEarth::Symbology::Geometry::toString(geom->getType()).c_str());
+  else if (prop == "componentType")
+    return v8::String::New(osgEarth::Symbology::Geometry::toString(geom->getComponentType()).c_str());
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSSymbologyGeometry::IndexedPropertyCallback(uint32_t index, const v8::AccessorInfo& info)
+{
+  osgEarth::Symbology::Geometry* geom = V8Util::UnwrapObject<osgEarth::Symbology::Geometry>(info.Holder());
+
+  if (!geom)
+    return v8::Handle<v8::Value>();
+
+  return JSVec3d::WrapVec3d(&((*geom)[index]));
+}
+
+void
+JSSymbologyGeometry::FreeGeometryCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  osgEarth::Symbology::Geometry* geometry = static_cast<osgEarth::Symbology::Geometry*>(parameter);
+  delete geometry;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSBounds::_objectType = "JSBounds";
+
+v8::Handle<v8::Object>
+JSBounds::WrapBounds(osgEarth::Bounds* bounds, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(bounds, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(bounds, FreeBoundsCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSBounds::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+  template_instance->Set(v8::String::New("contains"), v8::FunctionTemplate::New(ContainsCallback));
+  template_instance->Set(v8::String::New("unionWith"), v8::FunctionTemplate::New(UnionCallback));
+  template_instance->Set(v8::String::New("intersectionWith"), v8::FunctionTemplate::New(IntersectionCallback));
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSBounds::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!bounds || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "valid")
+    return v8::Boolean::New(bounds->valid());
+  else if (prop == "xMin")
+    return v8::Number::New(bounds->xMin());
+  else if (prop == "xMax")
+    return v8::Number::New(bounds->xMax());
+  else if (prop == "yMin")
+    return v8::Number::New(bounds->yMin());
+  else if (prop == "yMax")
+    return v8::Number::New(bounds->yMax());
+  else if (prop == "zMin")
+    return v8::Number::New(bounds->zMin());
+  else if (prop == "zMax")
+    return v8::Number::New(bounds->zMax());
+  else if (prop == "center")
+  {
+    osg::Vec3d* vec = new osg::Vec3d(bounds->center());
+    return JSVec3d::WrapVec3d(vec, true);
+  }
+  else if (prop == "radius")
+    return v8::Number::New(bounds->radius());
+  else if (prop == "width")
+    return v8::Number::New(bounds->width());
+  else if (prop == "height")
+    return v8::Number::New(bounds->height());
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSBounds::ContainsCallback(const v8::Arguments& args)
+{
+  osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(args.Holder());
+
+  if (bounds)
+  {
+    if (args.Length() == 1 && args[0]->IsObject())  // Bounds
+    {
+      v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+      if (V8Util::CheckObjectType(obj, JSBounds::GetObjectType()))
+      {
+        osgEarth::Bounds* rhs = V8Util::UnwrapObject<osgEarth::Bounds>(obj);
+        return v8::Boolean::New(bounds->contains(*rhs));
+      }
+    }
+    else if (args.Length() == 2)
+    {
+      return v8::Boolean::New(bounds->contains(args[0]->NumberValue(), args[1]->NumberValue()));
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSBounds::UnionCallback(const v8::Arguments& args)
+{
+  osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(args.Holder());
+
+  if (bounds)
+  {
+    if (args.Length() == 1 && args[0]->IsObject())  // Bounds
+    {
+      v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+      if (V8Util::CheckObjectType(obj, JSBounds::GetObjectType()))
+      {
+        osgEarth::Bounds* rhs = V8Util::UnwrapObject<osgEarth::Bounds>(obj);
+        osgEarth::Bounds* outBounds = new osgEarth::Bounds();
+        outBounds->expandBy(bounds->unionWith(*rhs));
+        return WrapBounds(outBounds, true);
+      }
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSBounds::IntersectionCallback(const v8::Arguments& args)
+{
+  osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(args.Holder());
+
+  if (bounds)
+  {
+    if (args.Length() == 1 && args[0]->IsObject())  // Bounds
+    {
+      v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+      if (V8Util::CheckObjectType(obj, JSBounds::GetObjectType()))
+      {
+        osgEarth::Bounds* rhs = V8Util::UnwrapObject<osgEarth::Bounds>(obj);
+        osgEarth::Bounds* outBounds = new osgEarth::Bounds();
+        outBounds->expandBy(bounds->intersectionWith(*rhs));
+        return WrapBounds(outBounds, true);
+      }
+    }
+  }
+
+  return v8::Undefined();
+}
+
+void
+JSBounds::FreeBoundsCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  Bounds* bounds = static_cast<Bounds*>(parameter);
+  delete bounds;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSVec3d::_objectType = "JSVec3d";
+
+v8::Handle<v8::Object>
+JSVec3d::WrapVec3d(osg::Vec3d* vec, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(vec, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(vec, FreeVecCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSVec3d::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+  template_instance->SetIndexedPropertyHandler(IndexedPropertyCallback);
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSVec3d::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osg::Vec3d* v = V8Util::UnwrapObject<osg::Vec3d>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!v || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "x")
+    return v8::Number::New(v->x());
+  if (prop == "y")
+    return v8::Number::New(v->y());
+  if (prop == "z")
+    return v8::Number::New(v->z());
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSVec3d::IndexedPropertyCallback(uint32_t index, const v8::AccessorInfo& info)
+{
+  osg::Vec3d* v = V8Util::UnwrapObject<osg::Vec3d>(info.Holder());
+
+  if (!v || index > 2)
+    return v8::Handle<v8::Value>();
+
+  return v8::Number::New((*v)[index]);
+}
+
+void
+JSVec3d::FreeVecCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  osg::Vec3d* v = static_cast<osg::Vec3d*>(parameter);
+  delete v;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSFilterContext::_objectType = "JSFilterContext";
+
+v8::Handle<v8::Object>
+JSFilterContext::WrapFilterContext(osgEarth::Features::FilterContext* context, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  if (!context)
+  {
+    v8::Handle<v8::Object> obj;
+    return handle_scope.Close(obj);
+  }
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(context, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(context, FreeContextCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSFilterContext::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+#if 0
+  template_instance->Set(v8::String::New("toLocal"), v8::FunctionTemplate::New(ToLocalCallback));
+  template_instance->Set(v8::String::New("toWorld"), v8::FunctionTemplate::New(ToWorldCallback));
+  template_instance->Set(v8::String::New("toMap"), v8::FunctionTemplate::New(ToMapCallback));
+  template_instance->Set(v8::String::New("fromMap"), v8::FunctionTemplate::New(FromMapCallback));
+#endif
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSFilterContext::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  FilterContext* context = V8Util::UnwrapObject<FilterContext>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!context || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "session")
+    return JSSession::WrapSession(const_cast<Session*>(context->getSession()));
+  if (prop == "profile")
+    return JSFeatureProfile::WrapFeatureProfile(const_cast<FeatureProfile*>(context->profile().get()));
+  if (prop == "extent" && context->extent().isSet())
+    return JSGeoExtent::WrapGeoExtent(const_cast<osgEarth::GeoExtent*>(&context->extent().get()));
+  //if (prop == "geocentric")
+  //  return v8::Boolean::New(context->isGeocentric());
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSFilterContext::ToLocalCallback(const v8::Arguments& args)
+{
+  FilterContext* context = V8Util::UnwrapObject<FilterContext>(args.Holder());
+
+  if (context && args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    /*if (V8Util::CheckObjectType(obj, JSGeometry::GetObjectType()))  // Geometry
+    {
+      osgEarth::Symbology::Geometry* geometry = V8Util::UnwrapObject<osgEarth::Symbology::Geometry>(obj);
+
+      return 
+    }*/
+    
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))  // Vec3d
+    {
+      osg::Vec3d* vec = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      osg::Vec3d* local = new osg::Vec3d(context->toLocal(*vec));
+      return JSVec3d::WrapVec3d(local, true);
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSFilterContext::ToWorldCallback(const v8::Arguments& args)
+{
+  FilterContext* context = V8Util::UnwrapObject<FilterContext>(args.Holder());
+
+  if (context && args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    /*if (V8Util::CheckObjectType(obj, JSGeometry::GetObjectType()))  // Geometry
+    {
+      osgEarth::Symbology::Geometry* geometry = V8Util::UnwrapObject<osgEarth::Symbology::Geometry>(obj);
+
+      return 
+    }*/
+    
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))  // Vec3d
+    {
+      osg::Vec3d* vec = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      osg::Vec3d* world = new osg::Vec3d(context->toWorld(*vec));
+      return JSVec3d::WrapVec3d(world, true);
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSFilterContext::ToMapCallback(const v8::Arguments& args)
+{
+  FilterContext* context = V8Util::UnwrapObject<FilterContext>(args.Holder());
+
+  if (context && args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+    
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))  // Vec3d
+    {
+      osg::Vec3d* vec = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      osg::Vec3d* map = new osg::Vec3d(context->toMap(*vec));
+      return JSVec3d::WrapVec3d(map, true);
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSFilterContext::FromMapCallback(const v8::Arguments& args)
+{
+  FilterContext* context = V8Util::UnwrapObject<FilterContext>(args.Holder());
+
+  if (context && args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+    
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))  // Vec3d
+    {
+      osg::Vec3d* map = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      osg::Vec3d* local = new osg::Vec3d(context->fromMap(*map));
+      return JSVec3d::WrapVec3d(local, true);
+    }
+  }
+
+  return v8::Undefined();
+}
+
+void
+JSFilterContext::FreeContextCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  FilterContext* context = static_cast<FilterContext*>(parameter);
+  delete context;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSSession::_objectType = "JSSession";
+
+v8::Handle<v8::Object>
+JSSession::WrapSession(osgEarth::Features::Session* session, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(session, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(session, FreeSessionCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSSession::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+#if 0
+  template_instance->Set(v8::String::New("resolveURI"), v8::FunctionTemplate::New(ResolveUriCallback));
+#endif
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSSession::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  Session* session = V8Util::UnwrapObject<Session>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!session || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "mapInfo")
+    return JSMapInfo::WrapMapInfo(const_cast<osgEarth::MapInfo*>(&session->getMapInfo()));
+
+  return v8::Handle<v8::Value>();
+}
+
+#if 0
+v8::Handle<v8::Value>
+JSSession::ResolveUriCallback(const v8::Arguments& args)
+{
+  Session* session = V8Util::UnwrapObject<Session>(args.Holder());
+
+  if (session && args.Length() == 1 && args[0]->IsString())
+  {
+    v8::String::Utf8Value utf8_value(args[0]->ToString());
+    std::string uri(*utf8_value);
+    return v8::String::New(session->resolveURI(uri).c_str());
+  }
+
+  return v8::Undefined();
+}
+#endif
+
+void
+JSSession::FreeSessionCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  Session* session = static_cast<Session*>(parameter);
+  delete session;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSMapInfo::_objectType = "JSMapInfo";
+
+v8::Handle<v8::Object>
+JSMapInfo::WrapMapInfo(osgEarth::MapInfo* mapInfo, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(mapInfo, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(mapInfo, FreeMapInfoCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSMapInfo::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+#if 0
+  template_instance->Set(v8::String::New("toMapPoint"), v8::FunctionTemplate::New(ToMapCallback));
+  template_instance->Set(v8::String::New("mapPointToWorldPoint"), v8::FunctionTemplate::New(MapToWorldCallback));
+  template_instance->Set(v8::String::New("worldPointToMapPoint"), v8::FunctionTemplate::New(WorldToMapCallback));
+#endif
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSMapInfo::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osgEarth::MapInfo* mapInfo = V8Util::UnwrapObject<osgEarth::MapInfo>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!mapInfo || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "geocentric")
+    return v8::Boolean::New(mapInfo->isGeocentric());
+  if (prop == "cube")
+    return v8::Boolean::New(mapInfo->isCube());
+  if (prop == "plateCarre" || prop == "platecarre")
+    return v8::Boolean::New(mapInfo->isPlateCarre());
+  if (prop == "projectedSRS")
+    return v8::Boolean::New(mapInfo->isProjectedSRS());
+  if (prop == "geographicSRS")
+    return v8::Boolean::New(mapInfo->isGeographicSRS());
+
+  return v8::Handle<v8::Value>();
+}
+
+#if 0
+v8::Handle<v8::Value>
+JSMapInfo::ToMapCallback(const v8::Arguments& args)
+{
+  osgEarth::MapInfo* mapInfo = V8Util::UnwrapObject<osgEarth::MapInfo>(args.Holder());
+
+  if (mapInfo && args.Length() == 2 && args[0]->IsObject() && args[1]->IsObject()) // Vec3d & SpatialReference
+  {
+    v8::Local<v8::Object> obj0( v8::Object::Cast(*args[0]) );
+    v8::Local<v8::Object> obj1( v8::Object::Cast(*args[1]) );
+
+    if (V8Util::CheckObjectType(obj0, JSVec3d::GetObjectType()) && V8Util::CheckObjectType(obj1, JSSpatialReference::GetObjectType()))
+    {
+      osg::Vec3d* input = V8Util::UnwrapObject<osg::Vec3d>(obj0);
+      osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj1);
+
+      osg::Vec3d* out = new osg::Vec3d();
+
+      GeoPoint mapPoint;
+      mapPoint.fromWorld( srs, *input );
+      out->set( mapPoint.x(), mapPoint.y(), mapPoint.z() );
+
+      return JSVec3d::WrapVec3d(out, true);
+
+      //if (mapInfo->toMapPoint(*input, srs, *out))
+      //  return JSVec3d::WrapVec3d(out, true);
+
+      delete out;
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSMapInfo::MapToWorldCallback(const v8::Arguments& args)
+{
+  osgEarth::MapInfo* mapInfo = V8Util::UnwrapObject<osgEarth::MapInfo>(args.Holder());
+
+  if (mapInfo && args.Length() == 1 && args[0]->IsObject()) // Vec3d
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))
+    {
+      osg::Vec3d* input = V8Util::UnwrapObject<osg::Vec3d>(obj);
+
+      osg::Vec3d* out = new osg::Vec3d();
+      if (mapInfo->mapPointToWorldPoint(*input, *out))
+        return JSVec3d::WrapVec3d(out, true);
+
+      delete out;
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSMapInfo::WorldToMapCallback(const v8::Arguments& args)
+{
+  osgEarth::MapInfo* mapInfo = V8Util::UnwrapObject<osgEarth::MapInfo>(args.Holder());
+
+  if (mapInfo && args.Length() == 1 && args[0]->IsObject()) // Vec3d
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))
+    {
+      osg::Vec3d* input = V8Util::UnwrapObject<osg::Vec3d>(obj);
+
+      osg::Vec3d* out = new osg::Vec3d();
+      if (mapInfo->worldPointToMapPoint(*input, *out))
+        return JSVec3d::WrapVec3d(out, true);
+
+      delete out;
+    }
+  }
+
+  return v8::Undefined();
+}
+#endif
+
+void
+JSMapInfo::FreeMapInfoCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  Session* session = static_cast<Session*>(parameter);
+  delete session;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSFeatureProfile::_objectType = "JSFeatureProfile";
+
+v8::Handle<v8::Object>
+JSFeatureProfile::WrapFeatureProfile(osgEarth::Features::FeatureProfile* profile, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(profile, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(profile, FreeProfileCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSFeatureProfile::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+  //template_instance->Set(v8::String::New("toLocal"),
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSFeatureProfile::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  FeatureProfile* profile = V8Util::UnwrapObject<FeatureProfile>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!profile || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "extent")
+    return JSGeoExtent::WrapGeoExtent(const_cast<osgEarth::GeoExtent*>(&profile->getExtent()));
+  if (prop == "srs")
+    return JSSpatialReference::WrapSpatialReference(const_cast<osgEarth::SpatialReference*>(profile->getSRS()));
+
+  return v8::Handle<v8::Value>();
+}
+
+void
+JSFeatureProfile::FreeProfileCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  FeatureProfile* profile = static_cast<FeatureProfile*>(parameter);
+  delete profile;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSGeoExtent::_objectType = "JSGeoExtent";
+
+v8::Handle<v8::Object>
+JSGeoExtent::WrapGeoExtent(osgEarth::GeoExtent* extent, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(extent, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(extent, FreeGeoExtentCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSGeoExtent::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+  template_instance->Set(v8::String::New("contains"), v8::FunctionTemplate::New(ContainsCallback));
+  template_instance->Set(v8::String::New("intersects"), v8::FunctionTemplate::New(IntersectsCallback));
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSGeoExtent::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osgEarth::GeoExtent* extent = V8Util::UnwrapObject<osgEarth::GeoExtent>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+
+  if (!extent || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "srs")
+    return JSSpatialReference::WrapSpatialReference(const_cast<osgEarth::SpatialReference*>(extent->getSRS()));
+  if (prop == "xMin")
+    return v8::Number::New(extent->xMin());
+  if (prop == "xMax")
+    return v8::Number::New(extent->xMax());
+  if (prop == "yMin")
+    return v8::Number::New(extent->yMin());
+  if (prop == "yMax")
+    return v8::Number::New(extent->yMax());
+  if (prop == "width")
+    return v8::Number::New(extent->width());
+  if (prop == "height")
+    return v8::Number::New(extent->height());
+  if (prop == "crossesAntimeridian")
+    return v8::Boolean::New(extent->crossesAntimeridian());
+  if (prop == "valid")
+    return v8::Boolean::New(extent->isValid());
+  if (prop == "defined")
+    return v8::Boolean::New(extent->defined());
+  if (prop == "area")
+    return v8::Number::New(extent->area());
+  //if (prop == "toString")
+  //  return v8::String::New(extent->toString().c_str());
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSGeoExtent::ContainsCallback(const v8::Arguments& args)
+{
+  osgEarth::GeoExtent* extent = V8Util::UnwrapObject<osgEarth::GeoExtent>(args.Holder());
+
+  if (extent)
+  {
+    if (args.Length() == 1 && args[0]->IsObject())  // Bounds
+    {
+      v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+      if (V8Util::CheckObjectType(obj, JSBounds::GetObjectType()))
+      {
+        osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(obj);
+        return v8::Boolean::New(extent->contains(*bounds));
+      }
+    }
+    else if (args.Length() == 2 /*&& args[0]->IsNumber() && args[1]->IsNumber()*/)  // x and y
+    {
+      return v8::Boolean::New(extent->contains(args[0]->NumberValue(), args[1]->NumberValue()));
+    }
+    else if (args.Length() == 3 && /*args[0]->IsNumber() && args[1]->IsNumber() &&*/ args[2]->IsObject())  // x, y, and SpatialReference
+    {
+      v8::Local<v8::Object> obj( v8::Object::Cast(*args[2]) );
+
+      if (V8Util::CheckObjectType(obj, JSSpatialReference::GetObjectType()))
+      {
+        osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj);
+        return v8::Boolean::New(extent->contains(args[0]->NumberValue(), args[1]->NumberValue(), srs));
+      }
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSGeoExtent::IntersectsCallback(const v8::Arguments& args)
+{
+  osgEarth::GeoExtent* extent = V8Util::UnwrapObject<osgEarth::GeoExtent>(args.Holder());
+
+  if (!extent)
+    return v8::Undefined();
+
+  if (args.Length() == 1 && args[0]->IsObject())  // GeoExtent
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    if (V8Util::CheckObjectType(obj, JSGeoExtent::GetObjectType()))
+    {
+      osgEarth::GeoExtent* rhs = V8Util::UnwrapObject<osgEarth::GeoExtent>(obj);
+      return v8::Boolean::New(extent->intersects(*rhs));
+    }
+  }
+
+  return v8::Undefined();
+}
+
+void
+JSGeoExtent::FreeGeoExtentCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  osgEarth::GeoExtent* extent = static_cast<osgEarth::GeoExtent*>(parameter);
+  delete extent;
+
+  object.Dispose();
+  object.Clear();
+}
+
+// ---------------------------------------------------------------------------
+
+const std::string JSSpatialReference::_objectType = "JSSpatialReference";
+
+v8::Handle<v8::Object>
+JSSpatialReference::WrapSpatialReference(osgEarth::SpatialReference* srs, bool freeObject)
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::Object> obj = V8Util::WrapObject(srs, GetObjectTemplate());
+
+  if (freeObject)
+  {
+    v8::Persistent<v8::Object> weakRef = v8::Persistent<v8::Object>::New(obj);
+    weakRef.MakeWeak(srs, FreeSpatialReferenceCallback);
+  }
+
+  return handle_scope.Close(obj);
+}
+
+v8::Handle<v8::ObjectTemplate>
+JSSpatialReference::GetObjectTemplate()
+{
+  v8::HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> template_instance = v8::ObjectTemplate::New();
+
+  template_instance->Set(v8::String::New(V8_OBJECT_TYPE_PROPERTY), v8::String::New(GetObjectType().c_str()));
+  template_instance->SetInternalFieldCount(1);
+  template_instance->SetNamedPropertyHandler(PropertyCallback);
+
+  template_instance->Set(v8::String::New("isEquivalentTo"), v8::FunctionTemplate::New(EquivalenceCallback));
+  template_instance->Set(v8::String::New("createTangentPlaneSRS"), v8::FunctionTemplate::New(TangentPlaneCallback));
+  //template_instance->Set(v8::String::New("createTransMercFromLongitude"), v8::FunctionTemplate::New(equivalenceCallback));
+  //template_instance->Set(v8::String::New("createUTMFromLongitude"), v8::FunctionTemplate::New(equivalenceCallback));
+
+  return handle_scope.Close(template_instance);
+}
+
+v8::Handle<v8::Value>
+JSSpatialReference::PropertyCallback(v8::Local<v8::String> name, const v8::AccessorInfo& info)
+{
+  osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(info.Holder());
+
+  v8::String::Utf8Value utf8_value(name);
+  std::string prop(*utf8_value);
+  
+  if (!srs || prop.empty())
+    return v8::Handle<v8::Value>();
+
+  if (prop == "geographic")
+    return v8::Boolean::New(srs->isGeographic());
+  if (prop == "projected")
+    return v8::Boolean::New(srs->isProjected());
+  if (prop == "mercator")
+    return v8::Boolean::New(srs->isMercator());
+  if (prop == "sphericalMercator")
+    return v8::Boolean::New(srs->isSphericalMercator());
+  if (prop == "northPolar")
+    return v8::Boolean::New(srs->isNorthPolar());
+  if (prop == "southPolar")
+    return v8::Boolean::New(srs->isSouthPolar());
+  if (prop == "userDefined")
+    return v8::Boolean::New(srs->isUserDefined());
+  if (prop == "contiguous")
+    return v8::Boolean::New(srs->isContiguous());
+  if (prop == "cube")
+    return v8::Boolean::New(srs->isCube());
+  if (prop == "LTP" || prop == "ltp")
+    return v8::Boolean::New(srs->isLTP());
+  if (prop == "name")
+    return v8::String::New(srs->getName().c_str());
+  if (prop == "WKT" || prop == "wkt")
+    return v8::String::New(srs->getWKT().c_str());
+  if (prop == "initType")
+    return v8::String::New(srs->getInitType().c_str());
+  if (prop == "horizInitString")
+    return v8::String::New(srs->getHorizInitString().c_str());
+  if (prop == "vertInitString")
+    return v8::String::New(srs->getVertInitString().c_str());
+  if (prop == "datumName")
+    return v8::String::New(srs->getDatumName().c_str());
+  if (prop == "geographicSRS")
+    return JSSpatialReference::WrapSpatialReference(const_cast<osgEarth::SpatialReference*>(srs->getGeographicSRS()));
+
+  return v8::Handle<v8::Value>();
+}
+
+v8::Handle<v8::Value>
+JSSpatialReference::EquivalenceCallback(const v8::Arguments& args)
+{
+  osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(args.Holder());
+
+  if (!srs)
+    return v8::Undefined();
+
+  if (args.Length() == 1 && args[0]->IsObject())  // SpatialReference
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    if (V8Util::CheckObjectType(obj, JSSpatialReference::GetObjectType()))
+    {
+      osgEarth::SpatialReference* rhs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj);
+      return v8::Boolean::New(srs->isEquivalentTo(rhs));
+    }
+  }
+
+  return v8::Undefined();
+}
+
+v8::Handle<v8::Value>
+JSSpatialReference::TangentPlaneCallback(const v8::Arguments& args)
+{
+  osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(args.Holder());
+
+  if (!srs)
+    return v8::Undefined();
+
+  if (args.Length() == 1 && args[0]->IsObject())  // Vec3d
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))
+    {
+      osg::Vec3d* vec = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      return JSSpatialReference::WrapSpatialReference(const_cast<SpatialReference*>(srs->createTangentPlaneSRS(*vec)), true);
+    }
+  }
+
+  return v8::Undefined();
+}
+
+void
+JSSpatialReference::FreeSpatialReferenceCallback(v8::Persistent<v8::Value> object, void *parameter)
+{
+  //osgEarth::SpatialReference* srs = static_cast<osgEarth::SpatialReference*>(parameter);
+  //delete srs;
+  osg::ref_ptr<osgEarth::SpatialReference> srs = static_cast<osgEarth::SpatialReference*>(parameter);
+
+  object.Dispose();
+  object.Clear();
+}
\ No newline at end of file
diff --git a/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8 b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8
new file mode 100644
index 0000000..86da96e
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8
@@ -0,0 +1,72 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHDRIVERS_JAVASCRIPT_ENGINE_V8_H
+#define OSGEARTHDRIVERS_JAVASCRIPT_ENGINE_V8_H 1
+
+#include <osgEarth/StringUtils>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/Script>
+#include <osgEarthFeatures/ScriptEngine>
+
+#include <v8.h>
+
+//namespace osgEarth { namespace Drivers { namespace JavascriptV8
+//{
+
+  using namespace osgEarth::Features;
+
+  class JavascriptEngineV8 : public ScriptEngine
+  {
+  public:
+    JavascriptEngineV8(const ScriptEngineOptions& options =ScriptEngineOptions());
+    virtual ~JavascriptEngineV8();
+
+    bool supported(std::string lang) { return osgEarth::toLower(lang).compare("javascript") == 0; }
+    bool supported(Script* script) { return script && supported(script->getLanguage()); }
+
+    ScriptResult run(Script* script, osgEarth::Features::Feature const* feature=0L, osgEarth::Features::FilterContext const* context=0L);
+    ScriptResult run(const std::string& code, osgEarth::Features::Feature const* feature=0L, osgEarth::Features::FilterContext const* context=0L);
+
+    ScriptResult call(const std::string& function, osgEarth::Features::Feature const* feature=0L, osgEarth::Features::FilterContext const* context=0L);
+
+  protected:
+    static v8::Handle<v8::Value> logCallback(const v8::Arguments& args);
+    //static v8::Handle<v8::Value> constructFeatureCallback(const v8::Arguments &args);
+    static v8::Handle<v8::Value> constructBoundsCallback(const v8::Arguments &args);
+    static v8::Handle<v8::Value> constructVec3dCallback(const v8::Arguments &args);
+    static v8::Handle<v8::Value> constructGeoExtentCallback(const v8::Arguments &args);
+
+    static v8::Handle<v8::Value> constructSpatialReferenceCallback(const v8::Arguments &args);
+    //static v8::Handle<v8::Value> constructSymbologyGeometryCallback(const v8::Arguments &args);
+
+    v8::Local<v8::ObjectTemplate> createGlobalObjectTemplate();
+
+    /** Compiles and runs javascript in the current context. */
+    ScriptResult executeScript(v8::Handle<v8::String> script);
+
+  protected:
+    v8::Persistent<v8::ObjectTemplate> _globalTemplate;
+    v8::Persistent<v8::Context> _globalContext;
+    v8::Isolate* _isolate;
+  };
+
+//} } } // namespace osgEarth::Drivers::JavascriptV8
+
+#endif // OSGEARTHDRIVERS_JAVASCRIPT_ENGINE_V8_H
diff --git a/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8.cpp b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8.cpp
new file mode 100644
index 0000000..ac6fd07
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8.cpp
@@ -0,0 +1,443 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthDrivers/script_engine_v8/JavascriptEngineV8>
+#include <osgEarthDrivers/script_engine_v8/JSWrappers>
+#include <osgEarthDrivers/script_engine_v8/V8Util>
+
+#include <osgEarthFeatures/Script>
+#include <osgEarthFeatures/ScriptEngine>
+#include <osgEarth/Notify>
+#include <osgEarth/StringUtils>
+
+#include <v8.h>
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+
+#define LC "[JavascriptEngineV8] "
+
+
+//----------------------------------------------------------------------------
+
+JavascriptEngineV8::JavascriptEngineV8(const ScriptEngineOptions& options)
+: ScriptEngine(options)
+{
+  _isolate = v8::Isolate::New();
+
+  v8::Locker locker(_isolate);
+  v8::Isolate::Scope isolate_scope(_isolate);
+
+  v8:: HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> global = createGlobalObjectTemplate();
+  _globalContext = v8::Context::New(NULL, global);
+
+  if (options.script().isSet() && !options.script()->getCode().empty())
+  {
+    // Create a nested handle scope
+    v8::HandleScope local_handle_scope;
+
+    // Enter the global context
+    v8::Context::Scope context_scope(_globalContext);
+
+    // Compile and run the script
+    ScriptResult result = executeScript(v8::String::New(options.script()->getCode().c_str(), options.script()->getCode().length()));
+    if (!result.success())
+      OE_WARN << LC << "Error reading javascript: " << result.message() << std::endl;
+  }
+
+  _globalTemplate = v8::Persistent<v8::ObjectTemplate>::New(global);
+}
+
+JavascriptEngineV8::~JavascriptEngineV8()
+{
+  {
+    v8::Locker locker(_isolate);
+    v8::Isolate::Scope isolate_scope(_isolate);
+
+    _globalTemplate.Dispose();
+    _globalContext.Dispose();
+  }
+
+  _isolate->Dispose();
+}
+
+v8::Local<v8::ObjectTemplate>
+JavascriptEngineV8::createGlobalObjectTemplate()
+{
+  v8:: HandleScope handle_scope;
+
+  v8::Handle<v8::ObjectTemplate> global = v8::ObjectTemplate::New();
+
+  // add callback for global logging
+  global->Set(v8::String::New("log"), v8::FunctionTemplate::New(logCallback));
+
+  // add constructor callbacks for native objects
+  //global->Set(v8::String::New("Feature"), v8::FunctionTemplate::New(constructFeatureCallback));
+  global->Set(v8::String::New("Bounds"), v8::FunctionTemplate::New(constructBoundsCallback));
+  global->Set(v8::String::New("Vec3d"), v8::FunctionTemplate::New(constructVec3dCallback));
+  global->Set(v8::String::New("GeoExtent"), v8::FunctionTemplate::New(constructGeoExtentCallback));
+  global->Set(v8::String::New("SpatialReference"), v8::FunctionTemplate::New(constructSpatialReferenceCallback));
+  //global->Set(v8::String::New("Geometry"), v8::FunctionTemplate::New(constructSymbologyGeometryCallback));
+  
+  return handle_scope.Close(global);
+}
+
+v8::Handle<v8::Value>
+JavascriptEngineV8::logCallback(const v8::Arguments& args)
+{
+  if (args.Length() < 1) return v8::Undefined();
+  v8::HandleScope scope;
+  v8::Handle<v8::Value> arg = args[0];
+  v8::String::AsciiValue value(arg);
+  
+  OE_WARN << LC << "javascript message: " << (*value) << std::endl;
+
+  return v8::Undefined();
+}
+
+ScriptResult
+JavascriptEngineV8::executeScript(v8::Handle<v8::String> script)
+{
+  // Handle scope for temporary handles.
+  v8::HandleScope handle_scope;
+
+  // TryCatch for any script errors
+  v8::TryCatch try_catch;
+
+  // Compile the script
+  v8::Handle<v8::Script> compiled_script = v8::Script::Compile(script);
+  if (compiled_script.IsEmpty())
+  {
+    v8::String::AsciiValue error(try_catch.Exception());
+	v8::Handle<v8::Message> message = try_catch.Message();
+	if(!message.IsEmpty()) {
+		//v8::String::AsciiValue filename(message->GetScriptResourceName());
+		int linenum = message->GetLineNumber();
+		std::ostringstream str;
+		str << linenum << ":[" << message->GetStartColumn() << "-" << message->GetEndColumn() << "]:" << std::string(*error) << std::endl;
+		v8::String::AsciiValue sourceline(message->GetSourceLine());
+		str << std::string(*sourceline) << std::endl;
+		/*
+		v8::String::Utf8Value stack_trace(try_catch.StackTrace());
+		if (stack_trace.length() > 0) {
+			str <<  std::string(*stack_trace) << std::endl;
+		}
+		*/
+	    return ScriptResult(EMPTY_STRING, false, std::string("Script compile error: ") + str.str());
+	}
+	else {
+	    return ScriptResult(EMPTY_STRING, false, std::string("Script compile error: ") + std::string(*error));
+	}
+  }
+
+  // Run the script
+  v8::Handle<v8::Value> result = compiled_script->Run();
+  if (result.IsEmpty())
+  {
+    v8::String::AsciiValue error(try_catch.Exception());
+    return ScriptResult(EMPTY_STRING, false, std::string("Script result was empty: ") + std::string(*error));
+  }
+
+  v8::String::AsciiValue ascii(result);
+  return ScriptResult(std::string(*ascii));
+}
+
+ScriptResult
+JavascriptEngineV8::run(Script* script, osgEarth::Features::Feature const* feature, osgEarth::Features::FilterContext const* context)
+{
+  if (!script)
+    return ScriptResult(EMPTY_STRING, false, "Script is null.");
+
+  return run(script->getCode(), feature, context);
+}
+
+ScriptResult
+JavascriptEngineV8::run(const std::string& code, osgEarth::Features::Feature const* feature, osgEarth::Features::FilterContext const* context)
+{
+  if (code.empty())
+    return ScriptResult(EMPTY_STRING, false, "Script is empty.");
+
+  v8::Locker locker(_isolate);
+  v8::Isolate::Scope isolate_scope(_isolate);
+
+  v8::HandleScope handle_scope;
+
+  //Create a separate context
+  //v8::Persistent<v8::Context> context = v8::Context::New(NULL, _globalTemplate);
+  //v8::Context::Scope context_scope(context);
+  v8::Context::Scope context_scope(_globalContext);
+
+  if (feature)
+  {
+    v8::Handle<v8::Object> fObj = JSFeature::WrapFeature(const_cast<Feature*>(feature));
+    if (!fObj.IsEmpty())
+      _globalContext->Global()->Set(v8::String::New("feature"), fObj);
+  }
+
+  if (context)
+  {
+    v8::Handle<v8::Object> cObj = JSFilterContext::WrapFilterContext(const_cast<FilterContext*>(context));
+    if (!cObj.IsEmpty())
+      _globalContext->Global()->Set(v8::String::New("context"), cObj);
+  }
+
+  // Compile and run the script
+  ScriptResult result = executeScript(v8::String::New(code.c_str(), code.length()));
+
+  //context.Dispose();
+
+  return result;
+}
+
+ScriptResult
+JavascriptEngineV8::call(const std::string& function, osgEarth::Features::Feature const* feature, osgEarth::Features::FilterContext const* context)
+{
+  if (function.empty())
+    return ScriptResult(EMPTY_STRING, false, "Empty function name parameter.");
+
+  // Lock for V8 multithreaded uses
+  v8::Locker locker(_isolate);
+  v8::Isolate::Scope isolate_scope(_isolate);
+
+  v8::HandleScope handle_scope;
+
+  v8::Context::Scope context_scope(_globalContext);
+
+  // Attempt to fetch the function from the global object.
+  v8::Handle<v8::String> func_name = v8::String::New(function.c_str(), function.length());
+  v8::Handle<v8::Value> func_val = _globalContext->Global()->Get(func_name);
+
+  // If there is no function, or if it is not a function, bail out
+  if (!func_val->IsFunction())
+    return ScriptResult(EMPTY_STRING, false, "Function not found in script.");
+
+  v8::Handle<v8::Function> func_func = v8::Handle<v8::Function>::Cast(func_val);
+
+  if (feature)
+  {
+    v8::Handle<v8::Object> fObj = JSFeature::WrapFeature(const_cast<Feature*>(feature));
+    if (!fObj.IsEmpty())
+      _globalContext->Global()->Set(v8::String::New("feature"), fObj);
+  }
+
+  if (context)
+  {
+    v8::Handle<v8::Object> cObj = JSFilterContext::WrapFilterContext(const_cast<FilterContext*>(context));
+    if (!cObj.IsEmpty())
+      _globalContext->Global()->Set(v8::String::New("context"), cObj);
+  }
+
+  // Set up an exception handler before calling the Eval function
+  v8::TryCatch try_catch;
+
+  // Invoke the specifed function
+  //const int argc = 1;
+  //v8::Handle<v8::Value> argv[argc] = { fObj };
+  //v8::Handle<v8::Value> result = func_func->Call(_globalContext->Global(), argc, argv);
+  v8::Handle<v8::Value> result = func_func->Call(_globalContext->Global(), 0, NULL);
+
+  if (result.IsEmpty())
+  {
+    return ScriptResult(EMPTY_STRING, false, "Function result was empty.");
+  }
+  else
+  {
+    v8::String::AsciiValue ascii(result);
+    return ScriptResult(std::string(*ascii));
+  }
+}
+
+//----------------------------------------------------------------------------
+// Constructor callbacks for constructing native objects in javascript
+
+//v8::Handle<v8::Value>
+//JavascriptEngineV8::constructFeatureCallback(const v8::Arguments &args)
+//{
+//  if (!args.IsConstructCall()) 
+//    return v8::ThrowException(v8::String::New("Cannot call constructor as function"));
+// 
+//	v8::HandleScope handle_scope;
+// 
+//  Feature* feature;
+//  if (args.Length() == 0)
+//  {
+//    feature = new Feature();
+//  }
+//  else if (args.Length() == 1 && args[0]->IsUint32())
+//  {
+//    feature = new Feature(args[0]->Uint32Value());
+//  }
+//  else
+//  {
+//    //TODO: add support for other Feature constructors
+//  }
+//
+//  if (feature)
+//    return JSFeature::WrapFeature(feature, true);
+//
+//  return v8::ThrowException(v8::String::New("Unsupported arguments in constructor call"));
+//}
+
+v8::Handle<v8::Value>
+JavascriptEngineV8::constructBoundsCallback(const v8::Arguments &args)
+{
+  if (!args.IsConstructCall()) 
+    return v8::ThrowException(v8::String::New("Cannot call constructor as function"));
+ 
+	v8::HandleScope handle_scope;
+ 
+  osgEarth::Bounds* bounds;
+  //if (args.Length() == 0)
+  //  bounds = new osgEarth::Bounds();
+  //else
+  if (args.Length() == 4)
+    bounds = new osgEarth::Bounds(args[0]->NumberValue(), args[1]->NumberValue(), args[2]->NumberValue(), args[3]->NumberValue());
+
+  if (bounds)
+    return JSBounds::WrapBounds(bounds, true);
+
+  return v8::ThrowException(v8::String::New("Unsupported arguments in constructor call"));
+}
+
+v8::Handle<v8::Value>
+JavascriptEngineV8::constructVec3dCallback(const v8::Arguments &args)
+{
+  if (!args.IsConstructCall()) 
+    return v8::ThrowException(v8::String::New("Cannot call constructor as function"));
+ 
+	v8::HandleScope handle_scope;
+
+  osg::Vec3d* vec;
+  if (args.Length() == 0)
+    vec = new osg::Vec3d();
+  else if (args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    if (V8Util::CheckObjectType(obj, JSVec3d::GetObjectType()))
+    {
+      osg::Vec3d* rhs = V8Util::UnwrapObject<osg::Vec3d>(obj);
+      vec = new osg::Vec3d(*rhs);
+    }
+  }
+  else if (args.Length() == 3)
+    vec = new osg::Vec3d(args[0]->NumberValue(), args[1]->NumberValue(), args[2]->NumberValue());
+
+  if (vec)
+    return JSVec3d::WrapVec3d(vec, true);
+
+  return v8::ThrowException(v8::String::New("Unsupported arguments in constructor call"));
+}
+
+v8::Handle<v8::Value>
+JavascriptEngineV8::constructGeoExtentCallback(const v8::Arguments &args)
+{
+  if (!args.IsConstructCall()) 
+    return v8::ThrowException(v8::String::New("Cannot call constructor as function"));
+ 
+	v8::HandleScope handle_scope;
+
+  osgEarth::GeoExtent* extent;// = new osgEarth::GeoExtent(
+  //if (args.Length() == 0)
+  //  extent = new osgEarth::GeoExtent();
+  //else
+  if (args.Length() == 1 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    //if (V8Util::CheckObjectType(obj, JSSpatialReference::GetObjectType()))
+    //{
+    //  osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj);
+    //  extent = new osgEarth::GeoExtent(srs);
+    //}
+    //else
+    if (V8Util::CheckObjectType(obj, JSGeoExtent::GetObjectType()))
+    {
+      osgEarth::GeoExtent* rhs = V8Util::UnwrapObject<osgEarth::GeoExtent>(obj);
+      extent = new osgEarth::GeoExtent(*rhs);
+    }
+  }
+  else if (args.Length() == 2 && args[0]->IsObject() && args[1]->IsObject())
+  {
+    v8::Local<v8::Object> obj0( v8::Object::Cast(*args[0]) );
+    v8::Local<v8::Object> obj1( v8::Object::Cast(*args[1]) );
+
+    if (V8Util::CheckObjectType(obj0, JSSpatialReference::GetObjectType()) && V8Util::CheckObjectType(obj1, JSBounds::GetObjectType()))
+    {
+      osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj0);
+      osgEarth::Bounds* bounds = V8Util::UnwrapObject<osgEarth::Bounds>(obj1);
+      extent = new osgEarth::GeoExtent(srs, *bounds);
+    }
+  }
+  else if (args.Length() == 5 && args[0]->IsObject())
+  {
+    v8::Local<v8::Object> obj( v8::Object::Cast(*args[0]) );
+
+    if (V8Util::CheckObjectType(obj, JSSpatialReference::GetObjectType()))
+    {
+      osgEarth::SpatialReference* srs = V8Util::UnwrapObject<osgEarth::SpatialReference>(obj);
+      extent = new osgEarth::GeoExtent(srs, args[1]->NumberValue(), args[2]->NumberValue(), args[3]->NumberValue(), args[4]->NumberValue());
+    }
+  }
+
+  if (extent)
+    return JSGeoExtent::WrapGeoExtent(extent, true);
+
+  return v8::ThrowException(v8::String::New("Unsupported arguments in constructor call"));
+}
+
+v8::Handle<v8::Value>
+JavascriptEngineV8::constructSpatialReferenceCallback(const v8::Arguments &args)
+{
+  if (!args.IsConstructCall()) 
+    return v8::ThrowException(v8::String::New("Cannot call constructor as function"));
+
+	v8::HandleScope handle_scope;
+ 
+  osgEarth::SpatialReference* srs;
+  if (args.Length() == 1 && args[0]->IsString())
+  {
+    v8::String::Utf8Value utf8_value(args[0]->ToString());
+    std::string init(*utf8_value);
+    srs = osgEarth::SpatialReference::create(init);
+  }
+
+  if (srs)
+    return JSSpatialReference::WrapSpatialReference(srs, true);
+
+  return v8::ThrowException(v8::String::New("Unsupported arguments in constructor call"));
+}
+
+//v8::Handle<v8::Value>
+//JavascriptEngineV8::constructSymbologyGeometryCallback(const v8::Arguments &args)
+//{
+//	v8::HandleScope handle_scope;
+// 
+//  osgEarth::Symbology::Geometry* geom;
+//  if (args.Length() == 2)
+//    geom = new osgEarth::Symbology::Geometry::create(
+//
+//  if (geom)
+//    return JSBounds::WrapBounds(bounds, true);
+//
+//  //return v8::ThrowException(v8::String::New("Unsupported arguments"));
+//  return v8::Handle<v8::Value>();
+//}
\ No newline at end of file
diff --git a/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8Factory.cpp b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8Factory.cpp
new file mode 100644
index 0000000..4d38e95
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/JavascriptEngineV8Factory.cpp
@@ -0,0 +1,50 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgDB/ReaderWriter>
+#include <osgEarthDrivers/script_engine_v8/JavascriptEngineV8>
+#include <osgEarthFeatures/ScriptEngine>
+#include <osgEarth/Common>
+#include <osgEarth/Config>
+#include <osgDB/FileNameUtils>
+
+
+class JavascriptEngineV8Factory : public osgEarth::Features::ScriptEngineDriver
+{
+public:
+    JavascriptEngineV8Factory()
+    {
+        supportsExtension( "osgearth_scriptengine_javascript", "osgEarth scriptengine javascript plugin" );
+        supportsExtension( "osgearth_scriptengine_javascript_v8", "osgEarth scriptengine javascript V8 plugin" );
+    }
+
+    virtual const char* className()
+    {
+        return "osgEarth ScriptEngine Javascript V8 Plugin";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const osgDB::ReaderWriter::Options* options) const
+    {
+      if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )) )
+            return osgDB::ReaderWriter::ReadResult::FILE_NOT_HANDLED;
+
+        return osgDB::ReaderWriter::ReadResult( new JavascriptEngineV8( getScriptEngineOptions(options) ) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_scriptengine_javascript, JavascriptEngineV8Factory)
diff --git a/src/osgEarthDrivers/script_engine_v8/V8Util b/src/osgEarthDrivers/script_engine_v8/V8Util
new file mode 100644
index 0000000..cbf19ec
--- /dev/null
+++ b/src/osgEarthDrivers/script_engine_v8/V8Util
@@ -0,0 +1,79 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_DRIVER_V8_UTIL_H
+#define OSGEARTH_DRIVER_V8_UTIL_H 1
+
+#include <v8.h>
+#include <iostream>
+
+#define V8_OBJECT_TYPE_PROPERTY "__object_type"
+
+class V8Util
+{
+public:
+  typedef std::map< std::string, v8::Handle<v8::Value> > V8PropertyMap;
+
+  template<typename T>
+  static v8::Handle<v8::Object> WrapObject(T* obj,  v8::Handle<v8::ObjectTemplate> templ)
+  {
+    return WrapObject(obj, templ, V8PropertyMap());
+  }
+
+  template<typename T>
+  static v8::Handle<v8::Object> WrapObject(T* obj,  v8::Handle<v8::ObjectTemplate> templ, const V8PropertyMap& props)
+  {
+    v8::HandleScope handle_scope;
+
+    v8::Handle<v8::Object> result = templ->NewInstance();
+
+    v8::Handle<v8::External> obj_ptr = v8::External::New(obj);
+    result->SetInternalField(0, obj_ptr);
+
+    for (V8PropertyMap::const_iterator it = props.begin(); it != props.end(); ++it)
+      result->Set(v8::String::New(it->first.c_str(), it->first.length()), it->second);
+
+    return handle_scope.Close(result);
+  }
+
+  template<typename T>
+  static T* UnwrapObject(v8::Handle<v8::Object> obj)
+  {
+    v8::Handle<v8::External> field = v8::Handle<v8::External>::Cast(obj->GetInternalField(0));
+    void* ptr = field->Value();
+    return static_cast<T*>(ptr);
+  }
+
+  static bool CheckObjectType(v8::Handle<v8::Object> obj, const std::string& objType)
+  {
+    v8::Local<v8::Value> typeVal = obj->Get(v8::String::New(V8_OBJECT_TYPE_PROPERTY));
+    if (!typeVal.IsEmpty())
+    {
+      v8::String::Utf8Value utf8_value(typeVal);
+      std::string typeStr(*utf8_value);
+
+      if (typeStr == objType)
+        return true;
+    }
+
+    return false;
+  }
+};
+
+#endif // OSGEARTH_DRIVER_V8_UTIL_H
diff --git a/src/osgEarthDrivers/tilecache/ReaderWriterTileCache.cpp b/src/osgEarthDrivers/tilecache/ReaderWriterTileCache.cpp
index 3257625..dbc93fc 100644
--- a/src/osgEarthDrivers/tilecache/ReaderWriterTileCache.cpp
+++ b/src/osgEarthDrivers/tilecache/ReaderWriterTileCache.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 #include <osgEarth/Registry>
 #include <osgEarth/ImageToHeightFieldConverter>
 #include <osgEarth/FileUtils>
+#include <osgEarth/URI>
 
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
@@ -40,28 +41,26 @@ using namespace osgEarth::Drivers;
 class TileCacheSource : public TileSource
 {
 public:
-    TileCacheSource( const TileSourceOptions& options ) : TileSource( options ), _options( options )
+    TileCacheSource( const TileSourceOptions& options ) 
+        : TileSource( options ), _options( options )
     {
     }
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
-        _configPath = referenceURI;
-
-		if (overrideProfile)
-		{
-		    //If we were given a profile, take it on.
-			setProfile(overrideProfile);
-		}
-		else
-		{
-			//Assume it is global-geodetic
-			setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
-		}            
+        _dbOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        if ( !getProfile() )
+        {
+            // Assume it is global-geodetic
+            setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
+        }
+
+        return STATUS_OK;
     }
 
-    osg::Image* createImage( const TileKey& key,
-                             ProgressCallback* progress)
+    osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
     {
         unsigned int level, tile_x, tile_y;
         level = key.getLevelOfDetail() +1;
@@ -87,31 +86,8 @@ public:
             _options.format()->c_str() );
 
        
-        std::string path = buf;
-
-        //If we have a relative path and the map file contains a server address, just concat the server path and the cache together.
-        if (osgEarth::isRelativePath(path) && osgDB::containsServerAddress( _configPath ) )
-        {
-            path = osgDB::getFilePath(_configPath) + std::string("/") + path;
-        }
-
-        //If the path doesn't contain a server address, get the full path to the file.
-        if (!osgDB::containsServerAddress(path))
-        {
-            path = osgEarth::getFullPath(_configPath, path);
-        }
-        
-        osg::ref_ptr<osg::Image> image;
-        HTTPClient::readImageFile(path, image, 0L, progress ); //getOptions(), progress );
-        return image.release();
-
-        //if (osgDB::containsServerAddress(path))
-        //{
-        //    //Use the HTTPClient if it's a server address.
-        //    return HTTPClient::readImageFile( path, getOptions(), progress );
-        //}
-
-        //return osgDB::readImageFile( path, getOptions() );
+        std::string path(buf);
+        return URI(path).readImage( _dbOptions.get(), progress ).releaseImage();
     }
 
     virtual std::string getExtension()  const 
@@ -120,8 +96,8 @@ public:
     }
 
 private:
-    std::string _configPath;
-    const TileCacheOptions _options;
+    const TileCacheOptions       _options;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 // Reads tiles from a TileCache disk cache.
diff --git a/src/osgEarthDrivers/tilecache/TileCacheOptions b/src/osgEarthDrivers/tilecache/TileCacheOptions
index 8bf26a2..123d34b 100644
--- a/src/osgEarthDrivers/tilecache/TileCacheOptions
+++ b/src/osgEarthDrivers/tilecache/TileCacheOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -46,6 +46,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~TileCacheOptions() { }
+
     protected:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/tileservice/ReaderWriterTileService.cpp b/src/osgEarthDrivers/tileservice/ReaderWriterTileService.cpp
index 5568fa6..4bff990 100644
--- a/src/osgEarthDrivers/tileservice/ReaderWriterTileService.cpp
+++ b/src/osgEarthDrivers/tileservice/ReaderWriterTileService.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,8 @@
 #include <osgEarth/TileSource>
 #include <osgEarth/ImageToHeightFieldConverter>
 #include <osgEarth/Registry>
+#include <osgEarth/URI>
+#include <osgEarth/StringUtils>
 
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -47,53 +49,51 @@ public:
     }
 
 public:
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
-		//Take on the override profile if one is given.
-		if (overrideProfile)
-		{
-			setProfile( overrideProfile );
-		}
-		else
-		{
-			//Assume it is global geodetic
-			setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
-		}
+        _dbOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        if ( !getProfile() )
+        {
+            // Assume it is global geodetic
+            setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
+        }
+
+        return STATUS_OK;
     }
 
 public:
-    osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
+    osg::Image* createImage(
+        const TileKey&        key,
+        ProgressCallback*     progress )
     {        
-        osg::ref_ptr<osg::Image> image;
-        HTTPClient::readImageFile( createURI( key ), image, 0L, progress ); //getOptions(), progress );
-        return image.release();
+        return URI( createURL(key) ).readImage( _dbOptions.get(), progress ).releaseImage();
     }
 
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress)
+    osg::HeightField* createHeightField(
+        const TileKey&        key,
+        ProgressCallback*     progress )
     {
         //NOP
         return NULL;
     }
 
-    std::string createURI( const TileKey& key ) const
+    std::string createURL( const TileKey& key ) const
     {
         unsigned int x, y;
         key.getTileXY(x, y);
 
         unsigned int lod = key.getLevelOfDetail()+1;
 
-        std::stringstream buf;
         //http://s0.tileservice.worldwindcentral.com/getTile?interface=map&version=1&dataset=bmng.topo.bathy.200401&level=0&x=0&y=0
-        buf << _options.url()->full() << "interface=map&version=1"
+        return Stringify() 
+            << _options.url()->full() << "interface=map&version=1"
             << "&dataset=" << _options.dataset().value()
             << "&level=" << lod
             << "&x=" << x
             << "&y=" << y
             << "&." << _formatToUse; //Add this to trick osg into using the correct loader.
-        std::string bufStr;
-		bufStr = buf.str();
-		return bufStr;
     }
 
     virtual std::string getExtension()  const 
@@ -102,8 +102,9 @@ public:
     }
 
 private:
-    std::string _formatToUse;
-    const TileServiceOptions _options;
+    std::string                  _formatToUse;
+    const TileServiceOptions     _options;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/tileservice/TileServiceOptions b/src/osgEarthDrivers/tileservice/TileServiceOptions
index db68d51..208ff74 100644
--- a/src/osgEarthDrivers/tileservice/TileServiceOptions
+++ b/src/osgEarthDrivers/tileservice/TileServiceOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -45,6 +45,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~TileServiceOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/tms/CMakeLists.txt b/src/osgEarthDrivers/tms/CMakeLists.txt
index 9db2264..3dec141 100644
--- a/src/osgEarthDrivers/tms/CMakeLists.txt
+++ b/src/osgEarthDrivers/tms/CMakeLists.txt
@@ -4,6 +4,8 @@ SET(TARGET_SRC
 SET(TARGET_H
   TMSOptions
 )
+    
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthUtil)
 
 SETUP_PLUGIN(osgearth_tms)
 
diff --git a/src/osgEarthDrivers/tms/ReaderWriterTMS.cpp b/src/osgEarthDrivers/tms/ReaderWriterTMS.cpp
index 2fa3d41..4681424 100644
--- a/src/osgEarthDrivers/tms/ReaderWriterTMS.cpp
+++ b/src/osgEarthDrivers/tms/ReaderWriterTMS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -18,10 +18,10 @@
 */
 
 #include <osgEarth/TileSource>
-#include <osgEarth/TMS>
 #include <osgEarth/FileUtils>
 #include <osgEarth/ImageUtils>
-#include <osgEarth/HTTPClient>
+#include <osgEarth/Registry>
+#include <osgEarthUtil/TMS>
 
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
@@ -37,6 +37,7 @@
 #include "TMSOptions"
 
 using namespace osgEarth;
+using namespace osgEarth::Util;
 using namespace osgEarth::Drivers;
 
 #define LC "[TMS driver] "
@@ -51,84 +52,82 @@ public:
     }
 
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize(const osgDB::Options* dbOptions)
     {
-        const Profile* result = NULL;
+        _dbOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+
+        const Profile* profile = getProfile();
 
         URI tmsURI = _options.url().value();
         if ( tmsURI.empty() )
         {
-            OE_WARN << LC << "Fail: TMS driver requires a valid \"url\" property" << std::endl;
-            return;
+            return Status::Error( "Fail: TMS driver requires a valid \"url\" property" );
         }
 
-        //Find the full path to the URL
-        //If we have a relative path and the map file contains a server address, just concat the server path and the url together
-        if (osgEarth::isRelativePath(tmsURI.full()) && osgDB::containsServerAddress(referenceURI))
+        // Take the override profile if one is given
+        if ( profile )
         {
-            tmsURI = URI( osgDB::getFilePath(referenceURI) + std::string("/") + tmsURI.full() );
+            OE_INFO << LC 
+                << "Using override profile \"" << getProfile()->toString() 
+                << "\" for URI \"" << tmsURI.base() << "\"" 
+                << std::endl;
+
+            _tileMap = TMS::TileMap::create( 
+                _options.url()->full(),
+                profile,
+                _options.format().value(),
+                _options.tileSize().value(), 
+                _options.tileSize().value() );
         }
 
-        //If the path doesn't contain a server address, get the full path to the file.
-        if (!osgDB::containsServerAddress(tmsURI.full()))
+        else
         {
-            tmsURI = URI( tmsURI.full(), referenceURI );
-            //tmsPath = osgEarth::getFullPath(referenceURI, tmsURI);
+            // Attempt to read the tile map parameters from a TMS TileMap XML tile on the server:
+            _tileMap = TMS::TileMapReaderWriter::read( tmsURI.full(), _dbOptions.get() );
+            if (!_tileMap.valid())
+            {
+                return Status::Error( Stringify() << "Failed to read tilemap from " << tmsURI.full() );
+            }
+            
+            profile = _tileMap->createProfile();
+            if ( profile )
+                setProfile( profile );
         }
 
-		// Attempt to read the tile map parameters from a TMS TileMap XML tile on the server:
-    	_tileMap = TileMapReaderWriter::read( tmsURI.full(), 0L ); //getOptions() );
-
+        // Make sure we've established a profile by this point:
+        if ( !profile )
+        {
+            return Status::Error( Stringify() << "Failed to establish a profile for " << tmsURI.full() );
+        }
 
-		//Take the override profile if one is given
-		if (overrideProfile)
-		{
-		    OE_INFO << LC << "Using override profile " << overrideProfile->toString() << std::endl;				
-			result = overrideProfile;
-			_tileMap = TileMap::create( 
-                _options.url()->full(),
-                overrideProfile, 
-                _options.format().value(),
-                _options.tileSize().value(), 
-                _options.tileSize().value() );
-		}
-		else
-		{
-     		if (_tileMap.valid())
-			{
-				result = _tileMap->createProfile();
-			}
-			else
-			{
-                OE_WARN << LC << "Error reading TMS TileMap, and no overrides set (url=" << tmsURI.full() << ")" << std::endl;		
-			    return;
-			}
-		}
-
-        //Automatically set the min and max level of the TileMap
-        if (_tileMap.valid() && _tileMap->getTileSets().size() > 0)
+        // TileMap and profile are valid at this point. Build the tile sets.
+        // Automatically set the min and max level of the TileMap
+        if ( _tileMap->getTileSets().size() > 0 )
         {
-          OE_INFO << LC << "TileMap min/max " << _tileMap->getMinLevel() << ", " << _tileMap->getMaxLevel() << std::endl;
-          if (_tileMap->getDataExtents().size() > 0)
-          {
-              for (DataExtentList::iterator itr = _tileMap->getDataExtents().begin(); itr != _tileMap->getDataExtents().end(); ++itr)
-              {
-                  this->getDataExtents().push_back(*itr);
-              }
-          }
-          else
-          {
-              //Push back a single area that encompasses the whole profile going up to the max level
-              this->getDataExtents().push_back(DataExtent(result->getExtent(), 0, _tileMap->getMaxLevel()));
-          }
+            OE_DEBUG << LC << "TileMap min/max " << _tileMap->getMinLevel() << ", " << _tileMap->getMaxLevel() << std::endl;
+            if (_tileMap->getDataExtents().size() > 0)
+            {
+                for (DataExtentList::iterator itr = _tileMap->getDataExtents().begin(); itr != _tileMap->getDataExtents().end(); ++itr)
+                {
+                    this->getDataExtents().push_back(*itr);
+                }
+            }
+            else
+            {
+                //Push back a single area that encompasses the whole profile going up to the max level
+                this->getDataExtents().push_back(DataExtent(profile->getExtent(), 0, _tileMap->getMaxLevel()));
+            }
         }
 
-		setProfile( result );
+        // set up the IO options so that we do not cache TMS tiles:
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        return STATUS_OK;
     }
 
 
-    osg::Image* createImage(const osgEarth::TileKey& key,
-                            ProgressCallback* progress)
+    osg::Image* createImage(const TileKey&        key,
+                            ProgressCallback*     progress )
     {
         if (_tileMap.valid() && key.getLevelOfDetail() <= getMaxDataLevel() )
         {
@@ -136,12 +135,10 @@ public:
                 
             //OE_NOTICE << "TMSSource: Key=" << key.str() << ", URL=" << image_url << std::endl;
 
-            
             osg::ref_ptr<osg::Image> image;
-            
             if (!image_url.empty())
             {
-                HTTPClient::readImageFile( image_url, image, 0L, progress ); //getOptions(), progress );
+                image = URI(image_url).readImage( _dbOptions.get(), progress ).getImage();
             }
 
             if (!image.valid())
@@ -152,7 +149,7 @@ public:
                     //of the tilemap and create a transparent image.
                     if (key.getLevelOfDetail() <= _tileMap->getMaxLevel())
                     {
-                        OE_INFO << LC << "Returning empty image " << std::endl;
+                        OE_DEBUG << LC << "Returning empty image " << std::endl;
                         return ImageUtils::createEmptyImage();
                     }
                 }
@@ -174,9 +171,10 @@ public:
 
 private:
 
-    osg::ref_ptr<TileMap> _tileMap;
-    bool _invertY;
-    const TMSOptions _options;
+    osg::ref_ptr<TMS::TileMap>   _tileMap;
+    bool                         _invertY;
+    const TMSOptions             _options;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
@@ -185,7 +183,7 @@ private:
 class ReaderWriterTMS : public TileSourceDriver
 {
 private:
-    typedef std::map< std::string,osg::ref_ptr<TileMap> > TileMapCache;
+    typedef std::map< std::string,osg::ref_ptr<TMS::TileMap> > TileMapCache;
     TileMapCache _tileMapCache;
 
 public:
diff --git a/src/osgEarthDrivers/tms/TMSOptions b/src/osgEarthDrivers/tms/TMSOptions
index d9d66b3..32a1e01 100644
--- a/src/osgEarthDrivers/tms/TMSOptions
+++ b/src/osgEarthDrivers/tms/TMSOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -52,6 +53,9 @@ namespace osgEarth { namespace Drivers
             url() = inUrl;
         }
 
+        /** dtor */
+        virtual ~TMSOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/vdatum_egm2008/CMakeLists.txt b/src/osgEarthDrivers/vdatum_egm2008/CMakeLists.txt
new file mode 100644
index 0000000..f5fba0c
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm2008/CMakeLists.txt
@@ -0,0 +1,9 @@
+SET(TARGET_SRC EGM2008.cpp)
+SET(TARGET_H EGM2008Grid.h)
+SETUP_PLUGIN(osgearth_vdatum_egm2008)
+
+
+# to install public driver includes:
+SET(LIB_NAME vdatum_egm2008)
+#SET(LIB_PUBLIC_HEADERS EGM2008Grid.h)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/vdatum_egm2008/EGM2008.cpp b/src/osgEarthDrivers/vdatum_egm2008/EGM2008.cpp
new file mode 100644
index 0000000..c1eb881
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm2008/EGM2008.cpp
@@ -0,0 +1,101 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/Geoid>
+#include <osgEarth/Units>
+#include <osgDB/ReaderWriter>
+#include <osgDB/Registry>
+#include <osgDB/FileNameUtils>
+#include "EGM2008Grid.h"
+
+using namespace osgEarth;
+
+//--------------------------------------------------------------------------
+
+namespace
+{
+    class EGM2008VerticalDatum : public VerticalDatum
+    {
+    public:
+        EGM2008VerticalDatum() : VerticalDatum(
+            "EGM2008",                                  // readable name
+            "egm2008" )                                 // initialization string
+        {
+            // build a heightfield from the data.
+
+            unsigned cols = 1441, rows = 721;
+            float colStep = 0.25f, rowStep = 0.25f;
+
+            osg::HeightField* hf = new osg::HeightField();
+            hf->allocate( cols, rows );
+            osg::Vec3 origin(-180.f, -90.f, 0.f);
+            hf->setOrigin( origin );
+            hf->setXInterval( colStep );
+            hf->setYInterval( rowStep );
+
+            for( unsigned c=0; c<cols-1; ++c )
+            {
+                float inputLon = 0.0f + float(c) * colStep;
+                if ( inputLon > 180.0 ) inputLon -= 360.0;
+
+                for( unsigned r=0; r<rows; ++r )
+                {
+                    float inputLat = 90.0f - float(r) * rowStep;
+
+                    unsigned outc = unsigned( (inputLon-origin.x())/colStep );
+                    unsigned outr = unsigned( (inputLat-origin.y())/rowStep );
+
+                    Linear h( (double)s_egm2008grid[r*cols+c], Units::CENTIMETERS );
+                    hf->setHeight( outc, outr, float(h.as(Units::METERS)) );
+                }
+            }
+
+            _geoid = new Geoid();
+            _geoid->setHeightField( hf );
+            _geoid->setUnits( Units::METERS );
+            _geoid->setName( "EGM2008" );
+        }
+    };
+}
+
+
+class EGM2008VerticalDatumFactory : public osgDB::ReaderWriter
+{
+public:
+    EGM2008VerticalDatumFactory()
+    {
+        supportsExtension( "osgearth_vdatum_egm2008", "osgEarth EGM2008 vertical datum" );
+    }
+
+    virtual const char* className()
+    {
+        return "osgEarth EGM2008 vertical datum";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return ReadResult( new EGM2008VerticalDatum() );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_vdatum_egm2008, EGM2008VerticalDatumFactory) 
diff --git a/src/osgEarthDrivers/vdatum_egm2008/EGM2008Grid.h b/src/osgEarthDrivers/vdatum_egm2008/EGM2008Grid.h
new file mode 100644
index 0000000..8a2d6c8
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm2008/EGM2008Grid.h
@@ -0,0 +1,51986 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_VDATUM_EGM2008_GRID_H
+#define OSGEARTH_VDATUM_EGM2008_GRID_H
+
+  // 1441x721 array (1038961 elements)
+  // 1441 longitude points, 0.25 deg spacing (0-360)
+  // 721 latitude points, 0.25 deg spacing (0-180)
+  // points start at 90 (0 northpole), then go around easterly starting at 0,
+  // ending at south pole (180)
+  // unit = cm.
+
+namespace
+{
+
+static short s_egm2008grid[] = {
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,1489,
+1489,1489,1538,1538,1538,1538,1538,1537,1537,1537,1537,1537,1537,1537,1537,1536,1536,1536,1536,1536,
+1536,1536,1535,1535,1535,1535,1535,1535,1535,1534,1534,1534,1534,1534,1534,1534,1533,1533,1533,1533,
+1533,1533,1532,1532,1532,1532,1532,1532,1532,1531,1531,1531,1531,1531,1531,1530,1530,1530,1530,1530,
+1530,1530,1530,1529,1529,1529,1529,1529,1529,1529,1529,1528,1528,1528,1528,1528,1528,1528,1528,1528,
+1527,1527,1527,1527,1527,1527,1527,1527,1527,1527,1527,1527,1527,1526,1526,1526,1526,1526,1526,1526,
+1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,1526,
+1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,
+1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1525,1524,1524,
+1524,1524,1524,1524,1524,1524,1524,1524,1524,1524,1524,1524,1524,1524,1523,1523,1523,1523,1523,1523,
+1523,1523,1523,1523,1523,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1521,1521,1521,1521,1521,
+1521,1521,1521,1520,1520,1520,1520,1520,1520,1520,1519,1519,1519,1519,1519,1519,1519,1518,1518,1518,
+1518,1518,1518,1518,1517,1517,1517,1517,1517,1517,1517,1516,1516,1516,1516,1516,1516,1516,1515,1515,
+1515,1515,1515,1515,1515,1514,1514,1514,1514,1514,1514,1513,1513,1513,1513,1513,1513,1513,1512,1512,
+1512,1512,1512,1512,1512,1511,1511,1511,1511,1511,1511,1511,1511,1510,1510,1510,1510,1510,1510,1510,
+1509,1509,1509,1509,1509,1509,1509,1508,1508,1508,1508,1508,1508,1508,1507,1507,1507,1507,1507,1507,
+1507,1506,1506,1506,1506,1506,1506,1506,1505,1505,1505,1505,1505,1505,1505,1504,1504,1504,1504,1504,
+1504,1504,1503,1503,1503,1503,1503,1503,1502,1502,1502,1502,1502,1502,1502,1501,1501,1501,1501,1501,
+1501,1500,1500,1500,1500,1500,1500,1499,1499,1499,1499,1499,1498,1498,1498,1498,1498,1498,1497,1497,
+1497,1497,1497,1497,1496,1496,1496,1496,1496,1495,1495,1495,1495,1495,1495,1494,1494,1494,1494,1494,
+1493,1493,1493,1493,1493,1493,1492,1492,1492,1492,1492,1492,1491,1491,1491,1491,1491,1490,1490,1490,
+1490,1490,1490,1489,1489,1489,1489,1489,1488,1488,1488,1488,1488,1488,1487,1487,1487,1487,1487,1487,
+1486,1486,1486,1486,1486,1486,1485,1485,1485,1485,1485,1485,1484,1484,1484,1484,1484,1483,1483,1483,
+1483,1483,1483,1482,1482,1482,1482,1482,1482,1481,1481,1481,1481,1481,1481,1480,1480,1480,1480,1480,
+1480,1479,1479,1479,1479,1479,1479,1478,1478,1478,1478,1478,1478,1477,1477,1477,1477,1477,1476,1476,
+1476,1476,1476,1476,1475,1475,1475,1475,1475,1475,1474,1474,1474,1474,1474,1474,1473,1473,1473,1473,
+1473,1472,1472,1472,1472,1472,1472,1471,1471,1471,1471,1471,1471,1470,1470,1470,1470,1470,1470,1469,
+1469,1469,1469,1469,1469,1468,1468,1468,1468,1468,1468,1467,1467,1467,1467,1467,1467,1466,1466,1466,
+1466,1466,1466,1465,1465,1465,1465,1465,1465,1464,1464,1464,1464,1464,1464,1464,1463,1463,1463,1463,
+1463,1463,1462,1462,1462,1462,1462,1462,1461,1461,1461,1461,1461,1461,1461,1460,1460,1460,1460,1460,
+1460,1459,1459,1459,1459,1459,1459,1458,1458,1458,1458,1458,1458,1457,1457,1457,1457,1457,1457,1456,
+1456,1456,1456,1456,1456,1455,1455,1455,1455,1455,1454,1454,1454,1454,1454,1454,1453,1453,1453,1453,
+1453,1453,1452,1452,1452,1452,1452,1451,1451,1451,1451,1451,1451,1450,1450,1450,1450,1450,1449,1449,
+1449,1449,1449,1449,1448,1448,1448,1448,1448,1448,1447,1447,1447,1447,1447,1447,1446,1446,1446,1446,
+1446,1446,1446,1445,1445,1445,1445,1445,1445,1445,1445,1444,1444,1444,1444,1444,1444,1444,1444,1443,
+1443,1443,1443,1443,1443,1443,1443,1443,1443,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,
+1442,1442,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,
+1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1440,1440,1440,1440,1440,1440,1440,1440,
+1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,
+1440,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,
+1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,
+1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,
+1441,1441,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,
+1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,
+1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,
+1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,
+1441,1441,1441,1441,1441,1441,1441,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,
+1442,1442,1443,1443,1443,1443,1443,1443,1443,1443,1443,1443,1443,1443,1443,1444,1444,1444,1444,1444,
+1444,1444,1444,1444,1444,1444,1445,1445,1445,1445,1445,1445,1445,1445,1445,1446,1446,1446,1446,1446,
+1446,1446,1446,1447,1447,1447,1447,1447,1447,1447,1447,1448,1448,1448,1448,1448,1448,1448,1449,1449,
+1449,1449,1449,1449,1449,1450,1450,1450,1450,1450,1450,1451,1451,1451,1451,1451,1452,1452,1452,1452,
+1452,1452,1453,1453,1453,1453,1453,1454,1454,1454,1454,1454,1455,1455,1455,1455,1456,1456,1456,1456,
+1456,1457,1457,1457,1457,1458,1458,1458,1458,1459,1459,1459,1459,1459,1460,1460,1460,1460,1461,1461,
+1461,1462,1462,1462,1462,1463,1463,1463,1463,1464,1464,1464,1464,1465,1465,1465,1466,1466,1466,1466,
+1467,1467,1467,1468,1468,1468,1468,1469,1469,1469,1470,1470,1470,1471,1471,1471,1471,1472,1472,1472,
+1473,1473,1473,1474,1474,1474,1474,1475,1475,1475,1476,1476,1476,1477,1477,1477,1478,1478,1478,1479,
+1479,1479,1479,1480,1480,1480,1481,1481,1481,1482,1482,1482,1483,1483,1483,1484,1484,1484,1485,1485,
+1485,1486,1486,1486,1487,1487,1487,1488,1488,1488,1489,1489,1489,1490,1490,1490,1491,1491,1491,1492,
+1492,1492,1493,1493,1493,1494,1494,1494,1495,1495,1495,1496,1496,1496,1497,1497,1497,1498,1498,1498,
+1499,1499,1499,1500,1500,1500,1501,1501,1501,1502,1502,1502,1503,1503,1503,1504,1504,1504,1505,1505,
+1505,1506,1506,1506,1507,1507,1507,1508,1508,1508,1508,1509,1509,1509,1510,1510,1510,1511,1511,1511,
+1512,1512,1512,1513,1513,1513,1513,1514,1514,1514,1515,1515,1515,1515,1516,1516,1516,1517,1517,1517,
+1517,1518,1518,1518,1519,1519,1519,1519,1520,1520,1520,1520,1521,1521,1521,1521,1522,1522,1522,1522,
+1523,1523,1523,1523,1523,1524,1524,1524,1524,1525,1525,1525,1525,1525,1526,1526,1526,1526,1526,1527,
+1527,1527,1527,1527,1528,1528,1528,1528,1528,1528,1529,1529,1529,1529,1529,1529,1530,1530,1530,1530,
+1530,1530,1530,1531,1531,1531,1531,1531,1531,1531,1532,1532,1532,1532,1532,1532,1532,1532,1533,1533,
+1533,1533,1533,1533,1533,1533,1533,1534,1534,1534,1534,1534,1534,1534,1534,1534,1534,1535,1535,1535,
+1535,1535,1535,1535,1535,1535,1535,1535,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,
+1537,1537,1537,1537,1537,1537,1537,1537,1537,1537,1537,1537,1537,1537,1538,1538,1538,1538,1538,1538,
+1538,1538,1538,1538,1538,1538,1538,1538,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,
+1539,1539,1539,1539,1539,1539,1539,1539,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,
+1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,1540,
+1540,1540,1540,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1539,1538,1538,1538,
+1538,1538,1538,1572,1572,1572,1572,1572,1571,1571,1571,1571,1571,1571,1571,1571,1571,1570,1570,1570,
+1570,1570,1570,1570,1569,1569,1569,1569,1569,1569,1568,1568,1568,1568,1568,1568,1567,1567,1567,1567,
+1567,1566,1566,1566,1566,1565,1565,1565,1565,1564,1564,1564,1564,1563,1563,1563,1563,1562,1562,1562,
+1562,1561,1561,1561,1560,1560,1560,1560,1559,1559,1559,1559,1558,1558,1558,1558,1557,1557,1557,1557,
+1556,1556,1556,1556,1556,1555,1555,1555,1555,1555,1554,1554,1554,1554,1554,1554,1553,1553,1553,1553,
+1553,1553,1553,1553,1552,1552,1552,1552,1552,1552,1552,1552,1551,1551,1551,1551,1551,1551,1551,1551,
+1550,1550,1550,1550,1550,1550,1550,1549,1549,1549,1549,1549,1549,1548,1548,1548,1548,1548,1547,1547,
+1547,1547,1547,1546,1546,1546,1546,1546,1545,1545,1545,1545,1545,1544,1544,1544,1544,1544,1543,1543,
+1543,1543,1542,1542,1542,1542,1542,1541,1541,1541,1541,1541,1540,1540,1540,1540,1540,1539,1539,1539,
+1539,1539,1538,1538,1538,1538,1538,1537,1537,1537,1537,1537,1536,1536,1536,1536,1536,1535,1535,1535,
+1535,1535,1534,1534,1534,1534,1534,1533,1533,1533,1533,1532,1532,1532,1532,1532,1531,1531,1531,1531,
+1531,1530,1530,1530,1530,1529,1529,1529,1529,1528,1528,1528,1528,1528,1527,1527,1527,1527,1526,1526,
+1526,1526,1525,1525,1525,1525,1524,1524,1524,1524,1523,1523,1523,1522,1522,1522,1522,1521,1521,1521,
+1520,1520,1520,1520,1519,1519,1519,1518,1518,1518,1517,1517,1517,1516,1516,1516,1515,1515,1515,1514,
+1514,1514,1513,1513,1513,1512,1512,1511,1511,1511,1510,1510,1510,1509,1509,1509,1508,1508,1508,1507,
+1507,1507,1506,1506,1506,1505,1505,1505,1505,1504,1504,1504,1503,1503,1503,1503,1502,1502,1502,1502,
+1501,1501,1501,1501,1500,1500,1500,1500,1499,1499,1499,1499,1498,1498,1498,1498,1497,1497,1497,1497,
+1496,1496,1496,1495,1495,1495,1495,1494,1494,1494,1493,1493,1493,1492,1492,1492,1491,1491,1491,1490,
+1490,1490,1489,1489,1489,1488,1488,1487,1487,1487,1486,1486,1485,1485,1484,1484,1484,1483,1483,1482,
+1482,1481,1481,1480,1480,1479,1479,1478,1478,1477,1477,1476,1476,1475,1475,1474,1474,1473,1472,1472,
+1471,1471,1470,1470,1469,1469,1468,1467,1467,1466,1466,1465,1464,1464,1463,1463,1462,1461,1461,1460,
+1460,1459,1458,1458,1457,1457,1456,1455,1455,1454,1454,1453,1453,1452,1451,1451,1450,1450,1449,1449,
+1448,1448,1447,1447,1446,1446,1445,1445,1444,1444,1443,1443,1442,1442,1441,1441,1441,1440,1440,1439,
+1439,1438,1438,1438,1437,1437,1437,1436,1436,1436,1435,1435,1435,1434,1434,1433,1433,1433,1432,1432,
+1432,1431,1431,1431,1430,1430,1430,1429,1429,1429,1428,1428,1428,1427,1427,1427,1426,1426,1425,1425,
+1425,1424,1424,1423,1423,1423,1422,1422,1421,1421,1421,1420,1420,1419,1419,1419,1418,1418,1417,1417,
+1417,1416,1416,1415,1415,1415,1414,1414,1413,1413,1413,1412,1412,1411,1411,1411,1410,1410,1410,1409,
+1409,1409,1408,1408,1408,1407,1407,1407,1406,1406,1406,1405,1405,1405,1404,1404,1404,1403,1403,1403,
+1402,1402,1402,1401,1401,1401,1400,1400,1400,1399,1399,1398,1398,1398,1397,1397,1396,1396,1396,1395,
+1395,1394,1394,1393,1393,1392,1392,1391,1391,1390,1390,1389,1389,1388,1388,1387,1387,1386,1386,1385,
+1385,1384,1384,1383,1383,1382,1381,1381,1380,1380,1379,1379,1378,1378,1377,1377,1376,1376,1375,1375,
+1374,1374,1374,1373,1373,1372,1372,1372,1371,1371,1370,1370,1370,1369,1369,1369,1369,1368,1368,1368,
+1367,1367,1367,1367,1367,1366,1366,1366,1366,1366,1365,1365,1365,1365,1365,1365,1365,1365,1365,1364,
+1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,
+1364,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1363,1364,1364,1364,1364,
+1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,1364,
+1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,
+1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1365,1364,1364,1364,1364,1364,1364,1364,1364,
+1364,1363,1363,1363,1363,1363,1363,1363,1363,1362,1362,1362,1362,1362,1362,1362,1362,1362,1362,1362,
+1361,1361,1361,1361,1361,1361,1361,1361,1361,1361,1362,1362,1362,1362,1362,1362,1362,1362,1362,1363,
+1363,1363,1363,1363,1363,1364,1364,1364,1364,1365,1365,1365,1365,1366,1366,1366,1366,1367,1367,1367,
+1367,1368,1368,1368,1368,1369,1369,1369,1369,1370,1370,1370,1370,1370,1371,1371,1371,1371,1371,1371,
+1372,1372,1372,1372,1372,1372,1372,1373,1373,1373,1373,1373,1373,1373,1373,1374,1374,1374,1374,1374,
+1374,1374,1375,1375,1375,1375,1375,1376,1376,1376,1376,1377,1377,1377,1377,1378,1378,1378,1379,1379,
+1380,1380,1380,1381,1381,1382,1382,1383,1383,1384,1384,1385,1386,1386,1387,1387,1388,1389,1389,1390,
+1391,1392,1392,1393,1394,1395,1395,1396,1397,1398,1399,1399,1400,1401,1402,1403,1403,1404,1405,1406,
+1407,1407,1408,1409,1410,1411,1411,1412,1413,1414,1415,1415,1416,1417,1418,1418,1419,1420,1420,1421,
+1422,1422,1423,1424,1424,1425,1425,1426,1426,1427,1428,1428,1429,1429,1430,1430,1430,1431,1431,1432,
+1432,1433,1433,1433,1434,1434,1435,1435,1435,1436,1436,1436,1437,1437,1437,1438,1438,1438,1439,1439,
+1439,1439,1440,1440,1440,1441,1441,1441,1442,1442,1442,1442,1443,1443,1443,1443,1444,1444,1444,1445,
+1445,1445,1445,1446,1446,1446,1446,1447,1447,1447,1447,1448,1448,1448,1448,1449,1449,1449,1449,1450,
+1450,1450,1450,1450,1451,1451,1451,1451,1451,1451,1452,1452,1452,1452,1452,1452,1452,1453,1453,1453,
+1453,1453,1453,1453,1453,1453,1454,1454,1454,1454,1454,1454,1454,1454,1454,1454,1454,1454,1454,1454,
+1454,1454,1454,1454,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,
+1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1455,1456,1456,1456,1456,1456,
+1456,1456,1456,1456,1456,1457,1457,1457,1457,1457,1457,1458,1458,1458,1458,1459,1459,1459,1459,1460,
+1460,1460,1461,1461,1461,1462,1462,1463,1463,1463,1464,1464,1465,1465,1466,1466,1467,1467,1468,1468,
+1469,1469,1470,1471,1471,1472,1472,1473,1473,1474,1475,1475,1476,1476,1477,1478,1478,1479,1480,1480,
+1481,1481,1482,1483,1483,1484,1484,1485,1486,1486,1487,1487,1488,1489,1489,1490,1490,1491,1492,1492,
+1493,1493,1494,1494,1495,1496,1496,1497,1497,1498,1498,1499,1499,1500,1501,1501,1502,1502,1503,1503,
+1504,1504,1505,1506,1506,1507,1507,1508,1508,1509,1510,1510,1511,1511,1512,1513,1513,1514,1514,1515,
+1516,1516,1517,1517,1518,1519,1519,1520,1521,1521,1522,1522,1523,1524,1524,1525,1526,1526,1527,1527,
+1528,1529,1529,1530,1531,1531,1532,1532,1533,1534,1534,1535,1535,1536,1537,1537,1538,1539,1539,1540,
+1540,1541,1541,1542,1543,1543,1544,1544,1545,1546,1546,1547,1547,1548,1548,1549,1550,1550,1551,1551,
+1552,1552,1553,1553,1554,1554,1555,1555,1556,1556,1557,1557,1558,1558,1559,1559,1560,1560,1561,1561,
+1562,1562,1563,1563,1563,1564,1564,1565,1565,1566,1566,1566,1567,1567,1567,1568,1568,1568,1569,1569,
+1569,1570,1570,1570,1570,1571,1571,1571,1571,1572,1572,1572,1572,1572,1573,1573,1573,1573,1573,1573,
+1574,1574,1574,1574,1574,1574,1574,1575,1575,1575,1575,1575,1575,1575,1575,1575,1575,1575,1576,1576,
+1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,
+1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,1576,
+1576,1576,1576,1576,1576,1576,1575,1575,1575,1575,1575,1575,1575,1575,1575,1575,1575,1575,1574,1574,
+1574,1574,1574,1574,1574,1574,1574,1574,1574,1573,1573,1573,1573,1573,1573,1573,1573,1573,1573,1572,
+1572,1572,1572,1572,1596,1596,1596,1595,1595,1595,1595,1595,1594,1594,1594,1594,1593,1593,1593,1593,
+1593,1592,1592,1592,1592,1592,1592,1591,1591,1591,1591,1591,1591,1590,1590,1590,1590,1590,1590,1589,
+1589,1589,1589,1589,1589,1589,1588,1588,1588,1588,1588,1588,1587,1587,1587,1587,1587,1587,1586,1586,
+1586,1586,1586,1585,1585,1585,1585,1585,1584,1584,1584,1584,1583,1583,1583,1583,1583,1582,1582,1582,
+1582,1581,1581,1581,1581,1581,1580,1580,1580,1580,1579,1579,1579,1579,1578,1578,1578,1578,1577,1577,
+1577,1577,1576,1576,1576,1576,1575,1575,1575,1575,1574,1574,1574,1574,1573,1573,1573,1573,1572,1572,
+1572,1571,1571,1571,1571,1570,1570,1570,1569,1569,1569,1569,1568,1568,1568,1567,1567,1567,1566,1566,
+1566,1566,1565,1565,1565,1565,1564,1564,1564,1563,1563,1563,1563,1562,1562,1562,1562,1561,1561,1561,
+1561,1560,1560,1560,1559,1559,1559,1559,1558,1558,1558,1557,1557,1557,1556,1556,1556,1555,1555,1555,
+1554,1554,1553,1553,1553,1552,1552,1551,1551,1551,1550,1550,1549,1549,1549,1548,1548,1547,1547,1547,
+1546,1546,1545,1545,1545,1544,1544,1544,1543,1543,1543,1542,1542,1542,1541,1541,1541,1541,1540,1540,
+1540,1539,1539,1539,1539,1538,1538,1538,1537,1537,1537,1536,1536,1536,1536,1535,1535,1534,1534,1534,
+1533,1533,1533,1532,1532,1531,1531,1531,1530,1530,1529,1529,1528,1528,1528,1527,1527,1526,1526,1525,
+1525,1524,1524,1523,1523,1522,1522,1521,1520,1520,1519,1519,1518,1518,1517,1516,1516,1515,1515,1514,
+1513,1513,1512,1512,1511,1510,1510,1509,1508,1508,1507,1506,1506,1505,1505,1504,1503,1503,1502,1501,
+1501,1500,1499,1499,1498,1497,1497,1496,1495,1495,1494,1494,1493,1492,1492,1491,1490,1490,1489,1489,
+1488,1487,1487,1486,1485,1485,1484,1483,1483,1482,1481,1481,1480,1479,1479,1478,1477,1477,1476,1475,
+1474,1474,1473,1472,1471,1471,1470,1469,1469,1468,1467,1466,1466,1465,1464,1463,1463,1462,1461,1461,
+1460,1459,1458,1458,1457,1456,1456,1455,1454,1454,1453,1453,1452,1451,1451,1450,1449,1449,1448,1447,
+1447,1446,1445,1445,1444,1443,1443,1442,1441,1441,1440,1439,1439,1438,1437,1436,1436,1435,1434,1434,
+1433,1432,1431,1431,1430,1429,1428,1428,1427,1426,1425,1425,1424,1423,1422,1422,1421,1420,1419,1419,
+1418,1417,1416,1416,1415,1414,1413,1412,1411,1410,1409,1409,1408,1407,1406,1404,1403,1402,1401,1400,
+1399,1397,1396,1395,1393,1392,1390,1389,1387,1386,1384,1383,1381,1379,1378,1376,1375,1373,1371,1370,
+1368,1366,1365,1363,1362,1360,1359,1357,1356,1354,1353,1352,1350,1349,1348,1347,1346,1345,1344,1343,
+1342,1342,1341,1340,1340,1339,1339,1338,1338,1337,1337,1337,1336,1336,1336,1335,1335,1335,1335,1334,
+1334,1334,1333,1333,1333,1332,1332,1332,1331,1331,1330,1330,1329,1329,1328,1328,1327,1326,1325,1325,
+1324,1323,1322,1322,1321,1320,1319,1318,1317,1316,1315,1315,1314,1313,1312,1311,1310,1309,1308,1307,
+1306,1306,1305,1304,1303,1302,1301,1301,1300,1299,1298,1297,1297,1296,1295,1295,1294,1293,1292,1292,
+1291,1290,1290,1289,1288,1288,1287,1287,1286,1285,1285,1284,1284,1283,1282,1282,1281,1281,1280,1280,
+1279,1279,1278,1278,1277,1277,1277,1276,1276,1276,1275,1275,1275,1274,1274,1274,1274,1274,1274,1273,
+1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1273,1274,1274,1274,1274,1274,1274,
+1274,1274,1274,1274,1274,1275,1275,1275,1275,1275,1275,1275,1275,1275,1275,1275,1275,1275,1276,1276,
+1276,1276,1276,1276,1276,1277,1277,1277,1277,1278,1278,1278,1278,1279,1279,1279,1280,1280,1281,1281,
+1282,1282,1283,1283,1284,1284,1285,1285,1286,1286,1287,1288,1288,1289,1289,1290,1290,1291,1292,1292,
+1293,1293,1294,1294,1295,1295,1296,1296,1297,1297,1298,1298,1299,1299,1300,1300,1300,1301,1301,1302,
+1302,1303,1303,1304,1304,1305,1305,1306,1307,1307,1308,1308,1309,1310,1310,1311,1311,1312,1313,1314,
+1314,1315,1316,1316,1317,1318,1319,1319,1320,1321,1322,1322,1323,1324,1325,1326,1326,1327,1328,1329,
+1330,1330,1331,1332,1333,1334,1335,1335,1336,1337,1338,1339,1340,1341,1341,1342,1343,1344,1345,1346,
+1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1357,1358,1359,1360,1361,1362,1363,1364,1365,
+1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,
+1386,1387,1388,1389,1390,1392,1393,1394,1395,1396,1397,1398,1400,1401,1402,1403,1404,1405,1407,1408,
+1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1422,1423,1424,1425,1425,1426,
+1427,1428,1428,1429,1429,1430,1431,1431,1432,1432,1433,1433,1434,1434,1435,1436,1436,1437,1437,1438,
+1439,1439,1440,1441,1442,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,
+1457,1458,1460,1461,1462,1463,1464,1466,1467,1468,1469,1471,1472,1473,1474,1476,1477,1478,1479,1481,
+1482,1483,1485,1486,1487,1488,1490,1491,1492,1494,1495,1496,1498,1499,1500,1502,1503,1504,1506,1507,
+1508,1510,1511,1513,1514,1515,1517,1518,1520,1521,1522,1524,1525,1527,1528,1529,1531,1532,1533,1535,
+1536,1537,1538,1540,1541,1542,1543,1544,1545,1547,1548,1549,1550,1550,1551,1552,1553,1554,1555,1555,
+1556,1557,1557,1558,1559,1559,1560,1560,1561,1561,1562,1562,1563,1563,1563,1564,1564,1564,1564,1565,
+1565,1565,1565,1566,1566,1566,1566,1566,1566,1567,1567,1567,1567,1567,1567,1567,1567,1567,1567,1567,
+1567,1567,1567,1567,1567,1567,1567,1567,1566,1566,1566,1566,1566,1566,1565,1565,1565,1565,1565,1564,
+1564,1564,1564,1563,1563,1563,1563,1562,1562,1562,1561,1561,1561,1561,1560,1560,1560,1560,1560,1559,
+1559,1559,1559,1559,1559,1558,1558,1558,1558,1558,1558,1558,1558,1558,1558,1557,1557,1557,1557,1557,
+1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1557,1556,
+1556,1556,1556,1556,1556,1556,1556,1555,1555,1555,1555,1555,1554,1554,1554,1554,1553,1553,1553,1553,
+1552,1552,1552,1551,1551,1551,1550,1550,1550,1549,1549,1548,1548,1547,1547,1547,1546,1546,1545,1545,
+1544,1544,1543,1542,1542,1541,1541,1540,1540,1539,1538,1538,1537,1536,1536,1535,1535,1534,1533,1533,
+1532,1531,1531,1530,1530,1529,1529,1528,1527,1527,1526,1526,1525,1525,1525,1524,1524,1524,1523,1523,
+1523,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1522,1523,1523,1523,1523,
+1524,1524,1524,1525,1525,1525,1526,1526,1527,1527,1527,1528,1528,1529,1529,1529,1530,1530,1531,1531,
+1531,1532,1532,1532,1533,1533,1533,1533,1534,1534,1534,1534,1534,1535,1535,1535,1535,1535,1535,1535,
+1536,1536,1536,1536,1536,1536,1536,1537,1537,1537,1537,1538,1538,1538,1538,1539,1539,1539,1540,1540,
+1541,1541,1542,1542,1543,1543,1544,1545,1545,1546,1547,1548,1549,1549,1550,1551,1552,1553,1554,1555,
+1556,1557,1558,1559,1560,1561,1562,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1575,1576,1577,
+1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1588,1589,1590,1591,1592,1593,1593,1594,1595,
+1596,1596,1597,1598,1598,1599,1600,1600,1601,1601,1602,1603,1603,1604,1604,1604,1605,1605,1606,1606,
+1606,1607,1607,1607,1607,1608,1608,1608,1608,1609,1609,1609,1609,1609,1609,1609,1609,1610,1610,1610,
+1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1610,1609,1609,1609,1609,
+1609,1609,1609,1609,1609,1609,1609,1609,1609,1609,1609,1609,1608,1608,1608,1608,1608,1608,1608,1607,
+1607,1607,1607,1607,1607,1607,1606,1606,1606,1606,1606,1605,1605,1605,1605,1605,1604,1604,1604,1604,
+1603,1603,1603,1603,1603,1602,1602,1602,1602,1602,1601,1601,1601,1601,1601,1601,1601,1600,1600,1600,
+1600,1600,1600,1600,1599,1599,1599,1599,1599,1599,1599,1598,1598,1598,1598,1598,1598,1597,1597,1597,
+1597,1597,1596,1596,1596,1617,1617,1617,1617,1617,1617,1617,1616,1616,1616,1616,1616,1616,1616,1616,
+1616,1616,1616,1616,1616,1615,1615,1615,1615,1615,1615,1615,1615,1615,1615,1615,1615,1614,1614,1614,
+1614,1614,1614,1614,1614,1613,1613,1613,1613,1612,1612,1612,1612,1611,1611,1611,1611,1610,1610,1610,
+1609,1609,1609,1609,1608,1608,1608,1607,1607,1607,1607,1606,1606,1606,1606,1605,1605,1605,1605,1605,
+1604,1604,1604,1604,1604,1604,1603,1603,1603,1603,1603,1603,1603,1603,1603,1603,1603,1603,1603,1603,
+1603,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1602,1601,1601,
+1601,1601,1601,1601,1600,1600,1600,1600,1600,1599,1599,1599,1599,1599,1598,1598,1598,1598,1597,1597,
+1597,1597,1597,1596,1596,1596,1596,1595,1595,1595,1594,1594,1594,1593,1593,1592,1592,1591,1591,1590,
+1590,1589,1589,1588,1588,1587,1586,1586,1585,1585,1584,1583,1583,1582,1582,1581,1580,1580,1579,1579,
+1578,1578,1577,1577,1576,1576,1575,1575,1574,1574,1573,1573,1572,1572,1571,1571,1570,1570,1569,1569,
+1568,1568,1567,1567,1566,1566,1565,1564,1564,1563,1563,1562,1562,1561,1561,1560,1560,1559,1559,1558,
+1558,1557,1557,1556,1556,1555,1555,1554,1553,1553,1552,1552,1551,1550,1550,1549,1548,1547,1546,1546,
+1545,1544,1543,1542,1541,1540,1539,1539,1538,1537,1536,1535,1534,1533,1532,1531,1530,1529,1528,1527,
+1526,1525,1524,1523,1522,1521,1520,1519,1518,1517,1516,1515,1514,1513,1512,1511,1510,1509,1508,1507,
+1506,1505,1504,1503,1502,1501,1500,1499,1498,1497,1496,1495,1494,1493,1492,1491,1490,1489,1488,1488,
+1487,1486,1485,1484,1483,1482,1481,1481,1480,1479,1478,1477,1477,1476,1475,1474,1473,1473,1472,1471,
+1470,1469,1469,1468,1467,1466,1466,1465,1464,1463,1462,1462,1461,1460,1459,1458,1458,1457,1456,1455,
+1454,1454,1453,1452,1451,1450,1449,1448,1448,1447,1446,1445,1444,1443,1442,1441,1440,1439,1438,1437,
+1436,1435,1434,1433,1432,1431,1430,1428,1427,1426,1425,1424,1423,1421,1420,1419,1418,1417,1416,1414,
+1413,1412,1411,1410,1408,1407,1406,1405,1404,1403,1401,1400,1399,1398,1397,1396,1394,1393,1392,1391,
+1390,1389,1388,1387,1386,1385,1384,1383,1382,1381,1380,1379,1378,1377,1376,1375,1374,1373,1372,1371,
+1370,1369,1368,1367,1366,1366,1365,1364,1363,1362,1361,1360,1359,1358,1357,1356,1355,1353,1352,1351,
+1350,1349,1348,1347,1345,1344,1343,1342,1340,1339,1338,1337,1335,1334,1333,1331,1330,1329,1327,1326,
+1324,1323,1322,1320,1319,1317,1316,1315,1313,1312,1310,1309,1307,1305,1304,1302,1301,1299,1297,1296,
+1294,1292,1291,1289,1287,1285,1284,1282,1280,1278,1276,1275,1273,1271,1269,1267,1266,1264,1262,1260,
+1258,1257,1255,1253,1252,1250,1248,1247,1245,1244,1242,1241,1239,1238,1237,1235,1234,1233,1232,1231,
+1230,1229,1228,1227,1226,1225,1224,1224,1223,1222,1222,1221,1221,1220,1220,1219,1219,1219,1219,1218,
+1218,1218,1218,1218,1218,1218,1219,1219,1219,1220,1220,1221,1222,1222,1223,1224,1225,1226,1228,1229,
+1230,1232,1233,1235,1237,1239,1241,1243,1245,1247,1249,1251,1253,1255,1257,1260,1262,1264,1266,1268,
+1270,1271,1273,1275,1276,1278,1279,1280,1281,1282,1283,1284,1284,1285,1285,1285,1286,1286,1285,1285,
+1285,1284,1284,1283,1283,1282,1281,1281,1280,1279,1278,1277,1277,1276,1275,1274,1273,1273,1272,1271,
+1271,1270,1270,1269,1269,1268,1268,1267,1267,1267,1266,1266,1266,1266,1265,1265,1265,1265,1264,1264,
+1264,1264,1263,1263,1263,1263,1262,1262,1262,1262,1261,1261,1261,1261,1261,1260,1260,1260,1260,1260,
+1260,1260,1259,1259,1259,1259,1260,1260,1260,1260,1260,1260,1261,1261,1261,1262,1262,1263,1263,1264,
+1264,1265,1266,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1279,1280,1281,1283,1284,
+1286,1287,1289,1290,1292,1293,1295,1297,1299,1300,1302,1304,1306,1308,1309,1311,1313,1315,1317,1319,
+1321,1323,1325,1327,1330,1332,1334,1336,1338,1340,1343,1345,1347,1349,1351,1354,1356,1358,1360,1362,
+1364,1367,1369,1371,1373,1375,1377,1379,1381,1383,1385,1386,1388,1390,1391,1393,1395,1396,1398,1399,
+1401,1402,1403,1405,1406,1407,1408,1410,1411,1412,1413,1414,1415,1416,1418,1419,1420,1421,1422,1423,
+1424,1425,1426,1427,1428,1429,1430,1431,1432,1432,1433,1434,1435,1436,1436,1437,1438,1439,1439,1440,
+1440,1441,1442,1442,1443,1443,1444,1444,1445,1445,1445,1446,1446,1447,1447,1447,1448,1448,1448,1448,
+1449,1449,1449,1449,1450,1450,1450,1450,1450,1450,1451,1451,1451,1451,1451,1452,1452,1452,1452,1453,
+1453,1453,1454,1454,1455,1455,1455,1456,1456,1457,1458,1458,1459,1459,1460,1461,1461,1462,1462,1463,
+1464,1464,1465,1465,1466,1466,1467,1467,1467,1468,1468,1468,1469,1469,1469,1469,1469,1470,1470,1470,
+1470,1470,1471,1471,1471,1472,1472,1472,1473,1473,1474,1474,1475,1475,1476,1477,1478,1478,1479,1480,
+1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,
+1502,1503,1504,1505,1506,1507,1508,1508,1509,1510,1511,1512,1513,1514,1515,1515,1516,1517,1518,1519,
+1520,1521,1522,1523,1524,1524,1525,1527,1528,1529,1530,1531,1532,1533,1534,1536,1537,1538,1540,1541,
+1543,1544,1546,1547,1549,1551,1552,1554,1556,1558,1560,1562,1563,1565,1567,1569,1571,1573,1575,1577,
+1579,1581,1583,1585,1587,1589,1591,1592,1594,1596,1598,1599,1601,1603,1604,1606,1607,1609,1610,1612,
+1613,1614,1616,1617,1618,1619,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,
+1635,1636,1637,1637,1638,1639,1640,1641,1642,1643,1644,1645,1645,1646,1647,1648,1649,1650,1651,1651,
+1652,1653,1654,1655,1655,1656,1657,1657,1658,1659,1660,1660,1661,1661,1662,1662,1663,1663,1664,1664,
+1664,1665,1665,1666,1666,1666,1667,1667,1667,1667,1668,1668,1668,1668,1669,1669,1669,1669,1669,1669,
+1670,1670,1670,1670,1670,1670,1671,1671,1671,1671,1671,1671,1671,1671,1671,1671,1672,1672,1672,1672,
+1672,1672,1672,1672,1672,1672,1672,1672,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,
+1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1673,1672,1672,1672,1671,1671,
+1671,1670,1669,1669,1668,1667,1667,1666,1665,1664,1663,1661,1660,1659,1657,1656,1654,1652,1651,1649,
+1647,1645,1643,1641,1639,1636,1634,1632,1629,1627,1625,1622,1620,1618,1615,1613,1611,1608,1606,1604,
+1602,1600,1598,1596,1595,1593,1592,1590,1589,1587,1586,1585,1584,1583,1582,1582,1581,1580,1580,1579,
+1579,1578,1578,1578,1578,1577,1577,1577,1577,1576,1576,1576,1576,1576,1576,1575,1575,1575,1575,1575,
+1574,1574,1574,1574,1573,1573,1573,1572,1572,1572,1571,1571,1571,1571,1571,1570,1570,1570,1570,1570,
+1570,1570,1570,1570,1570,1571,1571,1571,1572,1572,1573,1573,1574,1575,1576,1576,1577,1578,1580,1581,
+1582,1583,1584,1586,1587,1589,1590,1592,1593,1595,1596,1598,1599,1601,1603,1604,1606,1607,1609,1610,
+1612,1614,1615,1616,1618,1619,1621,1622,1623,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,
+1636,1637,1638,1638,1639,1640,1640,1641,1642,1642,1643,1643,1644,1644,1645,1645,1645,1646,1646,1646,
+1647,1647,1647,1647,1648,1648,1648,1648,1648,1648,1648,1648,1648,1649,1649,1649,1649,1649,1649,1649,
+1649,1648,1648,1648,1648,1648,1648,1648,1648,1648,1647,1647,1647,1647,1646,1646,1646,1645,1645,1645,
+1645,1644,1644,1644,1643,1643,1643,1642,1642,1642,1641,1641,1641,1640,1640,1640,1639,1639,1639,1639,
+1638,1638,1638,1638,1637,1637,1637,1636,1636,1636,1636,1635,1635,1635,1634,1634,1634,1633,1633,1632,
+1632,1632,1631,1631,1630,1630,1629,1629,1628,1628,1627,1627,1627,1626,1626,1625,1625,1624,1624,1624,
+1623,1623,1623,1622,1622,1622,1621,1621,1621,1621,1620,1620,1620,1620,1619,1619,1619,1619,1619,1618,
+1618,1618,1618,1618,1618,1617,1645,1645,1645,1644,1644,1644,1643,1643,1643,1642,1642,1642,1641,1641,
+1641,1641,1640,1640,1640,1639,1639,1639,1639,1639,1639,1638,1638,1638,1638,1638,1638,1638,1638,1637,
+1637,1637,1637,1637,1637,1637,1637,1637,1637,1637,1638,1638,1638,1638,1638,1638,1638,1638,1638,1638,
+1638,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,
+1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,1639,
+1639,1639,1640,1640,1640,1640,1640,1640,1640,1640,1640,1640,1640,1640,1639,1639,1639,1639,1639,1638,
+1638,1638,1637,1637,1637,1636,1636,1636,1635,1635,1634,1634,1634,1633,1633,1633,1632,1632,1632,1632,
+1631,1631,1631,1631,1631,1631,1630,1630,1630,1630,1630,1630,1630,1629,1629,1629,1628,1628,1628,1627,
+1627,1626,1626,1625,1625,1624,1623,1623,1622,1622,1621,1620,1620,1619,1618,1618,1617,1617,1616,1615,
+1615,1614,1614,1613,1612,1612,1611,1611,1610,1609,1609,1608,1607,1607,1606,1605,1604,1604,1603,1602,
+1601,1600,1599,1598,1598,1597,1596,1595,1594,1593,1592,1591,1590,1589,1588,1587,1586,1585,1584,1583,
+1582,1581,1580,1579,1578,1577,1576,1575,1574,1573,1572,1571,1570,1569,1568,1567,1566,1566,1565,1564,
+1563,1562,1561,1560,1559,1558,1557,1556,1556,1555,1554,1553,1552,1551,1551,1550,1549,1548,1547,1547,
+1546,1545,1544,1543,1542,1542,1541,1540,1539,1538,1537,1536,1535,1534,1533,1532,1531,1530,1529,1528,
+1526,1525,1524,1522,1521,1519,1518,1516,1515,1513,1511,1510,1508,1506,1505,1503,1501,1499,1497,1496,
+1494,1492,1490,1489,1487,1485,1484,1482,1480,1479,1478,1476,1475,1474,1472,1471,1470,1469,1468,1467,
+1466,1465,1465,1464,1463,1462,1462,1461,1460,1460,1459,1458,1458,1457,1456,1455,1455,1454,1453,1453,
+1452,1451,1450,1450,1449,1448,1447,1446,1445,1445,1444,1443,1442,1441,1440,1439,1438,1437,1436,1435,
+1434,1433,1432,1431,1430,1429,1428,1427,1426,1424,1423,1422,1421,1420,1418,1417,1416,1414,1413,1411,
+1410,1409,1407,1405,1404,1402,1401,1399,1397,1395,1394,1392,1390,1388,1386,1385,1383,1381,1379,1377,
+1375,1374,1372,1370,1368,1366,1365,1363,1361,1360,1358,1357,1355,1354,1352,1351,1349,1348,1346,1345,
+1343,1342,1340,1339,1338,1336,1334,1333,1331,1330,1328,1326,1324,1323,1321,1319,1317,1315,1313,1310,
+1308,1306,1304,1302,1299,1297,1295,1292,1290,1287,1285,1282,1280,1277,1275,1272,1270,1267,1265,1262,
+1260,1257,1255,1252,1250,1247,1245,1242,1239,1237,1235,1232,1230,1227,1225,1222,1220,1217,1215,1213,
+1211,1208,1206,1204,1202,1200,1198,1196,1194,1192,1190,1189,1187,1186,1184,1183,1182,1181,1180,1179,
+1178,1177,1177,1176,1176,1176,1176,1176,1176,1176,1177,1177,1178,1179,1180,1181,1182,1183,1185,1186,
+1188,1190,1191,1193,1195,1197,1200,1202,1204,1207,1209,1212,1214,1217,1219,1222,1225,1227,1230,1232,
+1235,1238,1240,1243,1245,1248,1250,1253,1255,1257,1259,1261,1263,1264,1266,1267,1269,1270,1271,1272,
+1272,1273,1273,1273,1273,1273,1273,1272,1272,1271,1270,1268,1267,1266,1264,1262,1260,1258,1256,1254,
+1252,1249,1247,1244,1242,1239,1236,1234,1231,1228,1226,1223,1220,1218,1215,1213,1210,1207,1205,1203,
+1200,1198,1196,1194,1191,1189,1187,1186,1184,1182,1180,1179,1177,1176,1175,1174,1172,1171,1170,1170,
+1169,1168,1167,1167,1167,1166,1166,1166,1166,1166,1166,1166,1167,1167,1168,1169,1170,1171,1172,1173,
+1174,1176,1178,1179,1181,1183,1185,1188,1190,1193,1195,1198,1200,1203,1206,1209,1212,1215,1218,1221,
+1224,1226,1229,1232,1235,1238,1241,1244,1246,1249,1252,1254,1257,1259,1262,1264,1266,1269,1271,1273,
+1276,1278,1280,1282,1285,1287,1289,1291,1293,1295,1297,1299,1301,1303,1305,1307,1309,1310,1312,1314,
+1315,1317,1318,1319,1320,1322,1323,1323,1324,1325,1326,1326,1327,1327,1328,1328,1328,1328,1328,1328,
+1328,1328,1328,1327,1327,1326,1326,1325,1325,1324,1323,1323,1322,1321,1320,1319,1318,1317,1316,1314,
+1313,1312,1311,1310,1308,1307,1306,1305,1303,1302,1301,1300,1298,1297,1296,1294,1293,1292,1290,1289,
+1288,1286,1285,1283,1282,1281,1279,1278,1277,1275,1274,1273,1272,1271,1270,1269,1268,1267,1266,1265,
+1264,1263,1263,1262,1262,1261,1261,1260,1260,1260,1259,1259,1259,1258,1258,1258,1258,1257,1257,1257,
+1257,1257,1256,1256,1256,1256,1256,1256,1256,1256,1256,1257,1257,1257,1257,1258,1258,1259,1259,1259,
+1260,1260,1261,1261,1262,1262,1263,1263,1264,1264,1265,1265,1265,1266,1266,1266,1266,1266,1266,1266,
+1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1266,1267,1267,1267,
+1267,1268,1268,1268,1268,1269,1269,1270,1270,1271,1271,1272,1272,1273,1273,1274,1274,1275,1275,1276,
+1276,1277,1278,1278,1279,1279,1280,1281,1281,1282,1282,1283,1284,1284,1285,1286,1286,1287,1288,1289,
+1289,1290,1291,1292,1292,1293,1294,1295,1296,1297,1297,1298,1299,1300,1301,1302,1302,1303,1304,1305,
+1306,1307,1308,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1320,1321,1322,1323,
+1324,1325,1326,1327,1328,1329,1331,1332,1333,1334,1335,1337,1338,1339,1341,1342,1344,1346,1347,1349,
+1351,1353,1355,1358,1360,1362,1365,1367,1370,1372,1375,1377,1380,1383,1386,1389,1391,1394,1397,1400,
+1403,1406,1409,1412,1414,1417,1420,1423,1426,1429,1432,1435,1438,1441,1443,1446,1449,1452,1455,1458,
+1461,1464,1467,1470,1474,1477,1480,1483,1486,1489,1492,1495,1498,1501,1504,1507,1510,1513,1516,1519,
+1522,1525,1528,1531,1534,1537,1540,1543,1546,1548,1551,1554,1557,1560,1563,1566,1568,1571,1574,1577,
+1579,1582,1585,1587,1590,1593,1595,1598,1600,1603,1605,1607,1609,1612,1614,1616,1618,1620,1622,1623,
+1625,1627,1628,1630,1631,1633,1634,1635,1636,1637,1638,1639,1640,1641,1641,1642,1642,1643,1643,1644,
+1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,1644,
+1645,1645,1645,1646,1647,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1659,1660,1661,1663,
+1664,1665,1667,1668,1670,1671,1672,1674,1675,1676,1678,1679,1680,1682,1683,1684,1685,1686,1687,1688,
+1689,1690,1691,1692,1693,1693,1694,1695,1695,1695,1696,1696,1696,1696,1696,1697,1697,1696,1696,1696,
+1696,1696,1696,1696,1695,1695,1695,1695,1695,1695,1694,1694,1694,1694,1694,1693,1693,1693,1693,1692,
+1692,1692,1691,1691,1690,1689,1689,1688,1687,1686,1685,1683,1682,1681,1679,1678,1676,1674,1673,1671,
+1669,1667,1665,1664,1662,1660,1658,1657,1655,1654,1653,1651,1650,1649,1648,1648,1647,1647,1646,1646,
+1646,1646,1646,1646,1647,1647,1647,1648,1648,1649,1650,1650,1651,1651,1652,1652,1653,1653,1654,1654,
+1654,1654,1654,1654,1654,1654,1654,1654,1653,1653,1653,1652,1652,1652,1651,1651,1650,1650,1650,1649,
+1649,1649,1649,1648,1648,1649,1649,1649,1650,1650,1651,1651,1652,1653,1654,1655,1656,1657,1659,1660,
+1661,1663,1664,1666,1667,1669,1670,1671,1673,1674,1675,1676,1677,1679,1680,1680,1681,1682,1683,1683,
+1684,1685,1685,1685,1686,1686,1686,1687,1687,1687,1687,1687,1688,1688,1688,1688,1688,1688,1688,1688,
+1688,1688,1688,1688,1688,1688,1688,1688,1688,1687,1687,1687,1687,1687,1686,1686,1686,1685,1685,1684,
+1684,1684,1683,1683,1682,1682,1682,1681,1681,1680,1680,1680,1679,1679,1679,1678,1678,1677,1677,1677,
+1676,1676,1676,1676,1675,1675,1675,1674,1674,1674,1673,1673,1673,1672,1672,1672,1671,1671,1671,1670,
+1670,1670,1669,1669,1668,1668,1668,1667,1667,1666,1666,1665,1665,1665,1664,1664,1664,1663,1663,1662,
+1662,1662,1662,1661,1661,1661,1660,1660,1660,1659,1659,1659,1659,1658,1658,1657,1657,1657,1656,1656,
+1655,1655,1655,1654,1654,1653,1653,1652,1652,1652,1651,1651,1650,1650,1649,1649,1649,1648,1648,1648,
+1647,1647,1647,1646,1646,1646,1645,1677,1677,1677,1677,1677,1677,1677,1676,1676,1676,1676,1676,1676,
+1676,1676,1676,1676,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,1675,
+1675,1675,1675,1675,1674,1674,1674,1674,1674,1674,1674,1674,1674,1673,1673,1673,1673,1673,1673,1673,
+1673,1673,1673,1673,1673,1672,1672,1672,1672,1672,1672,1672,1672,1672,1673,1673,1673,1673,1673,1673,
+1673,1673,1673,1673,1673,1674,1674,1674,1674,1674,1675,1675,1675,1675,1675,1676,1676,1676,1676,1677,
+1677,1677,1677,1678,1678,1678,1679,1679,1679,1680,1680,1680,1681,1681,1682,1682,1682,1683,1683,1683,
+1684,1684,1684,1685,1685,1685,1685,1686,1686,1686,1687,1687,1687,1687,1688,1688,1688,1689,1689,1689,
+1690,1690,1690,1691,1691,1691,1691,1691,1691,1691,1691,1690,1690,1689,1689,1688,1688,1687,1686,1685,
+1684,1683,1682,1681,1680,1679,1678,1677,1675,1674,1673,1672,1671,1670,1668,1667,1666,1665,1664,1663,
+1662,1661,1660,1659,1658,1657,1655,1654,1653,1652,1651,1650,1649,1648,1647,1646,1645,1644,1643,1642,
+1640,1639,1638,1637,1636,1635,1634,1632,1631,1630,1629,1628,1627,1626,1624,1623,1622,1621,1620,1618,
+1617,1616,1615,1613,1612,1611,1609,1608,1606,1605,1603,1602,1600,1598,1597,1595,1593,1591,1589,1587,
+1585,1583,1581,1579,1577,1575,1573,1570,1568,1566,1564,1561,1559,1557,1554,1552,1550,1548,1545,1543,
+1541,1539,1537,1535,1533,1530,1529,1527,1525,1523,1521,1519,1518,1516,1514,1513,1511,1510,1508,1507,
+1505,1504,1502,1501,1499,1498,1497,1495,1494,1493,1492,1490,1489,1488,1487,1486,1485,1484,1483,1482,
+1481,1480,1480,1479,1478,1477,1477,1476,1476,1475,1474,1474,1473,1473,1472,1472,1471,1471,1470,1470,
+1469,1469,1468,1468,1467,1467,1466,1466,1465,1465,1464,1463,1463,1462,1461,1460,1459,1458,1457,1456,
+1455,1454,1452,1451,1449,1448,1446,1444,1442,1441,1439,1437,1435,1433,1430,1428,1426,1424,1422,1420,
+1418,1416,1415,1413,1411,1409,1408,1406,1405,1403,1402,1400,1399,1398,1396,1395,1394,1392,1391,1389,
+1388,1386,1385,1383,1382,1380,1378,1377,1375,1373,1372,1370,1368,1366,1364,1363,1361,1359,1357,1355,
+1353,1351,1349,1347,1345,1343,1341,1339,1336,1334,1332,1329,1327,1325,1322,1320,1317,1315,1313,1310,
+1308,1306,1303,1301,1298,1296,1294,1291,1289,1287,1284,1282,1280,1277,1275,1272,1269,1267,1264,1261,
+1259,1256,1253,1250,1247,1244,1241,1238,1234,1231,1228,1224,1221,1217,1214,1210,1207,1203,1199,1196,
+1192,1188,1184,1181,1177,1173,1169,1166,1162,1159,1155,1151,1148,1145,1141,1138,1135,1132,1130,1127,
+1124,1122,1120,1117,1115,1113,1112,1110,1109,1107,1106,1105,1104,1103,1103,1102,1102,1102,1102,1102,
+1102,1103,1104,1105,1106,1107,1109,1110,1112,1115,1117,1120,1123,1126,1129,1133,1137,1141,1145,1150,
+1154,1159,1164,1169,1175,1180,1185,1191,1197,1202,1208,1214,1219,1225,1230,1236,1241,1246,1251,1256,
+1260,1264,1268,1271,1275,1277,1280,1282,1284,1285,1286,1287,1287,1287,1287,1286,1285,1284,1282,1281,
+1278,1276,1273,1271,1268,1265,1261,1258,1255,1251,1248,1244,1241,1238,1234,1231,1228,1225,1222,1219,
+1217,1214,1212,1210,1208,1206,1204,1203,1201,1200,1199,1197,1196,1195,1194,1194,1193,1192,1192,1191,
+1191,1191,1190,1190,1190,1190,1191,1191,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1202,1203,
+1204,1205,1206,1207,1208,1209,1209,1209,1209,1209,1209,1208,1207,1207,1206,1205,1203,1202,1201,1199,
+1198,1197,1195,1194,1193,1191,1190,1189,1188,1187,1185,1184,1183,1182,1181,1180,1179,1178,1177,1176,
+1174,1173,1172,1170,1169,1168,1166,1165,1163,1162,1161,1160,1158,1157,1156,1156,1155,1154,1154,1153,
+1153,1152,1152,1152,1152,1152,1151,1151,1151,1151,1151,1151,1150,1150,1150,1150,1149,1149,1149,1148,
+1148,1148,1147,1147,1147,1147,1147,1147,1147,1147,1148,1148,1148,1149,1149,1150,1150,1151,1151,1152,
+1153,1153,1154,1154,1155,1155,1156,1156,1157,1157,1157,1158,1158,1159,1159,1160,1160,1161,1161,1162,
+1163,1164,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1175,1176,1177,1178,1179,1180,1181,1183,
+1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1196,1197,1198,1199,1199,1200,1201,
+1201,1202,1203,1203,1204,1205,1205,1206,1207,1207,1208,1208,1209,1210,1210,1211,1211,1212,1212,1212,
+1213,1213,1214,1214,1215,1215,1216,1216,1217,1217,1218,1219,1219,1220,1221,1221,1222,1223,1224,1225,
+1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,
+1245,1246,1247,1247,1248,1249,1250,1251,1251,1252,1253,1253,1254,1255,1256,1256,1257,1258,1259,1260,
+1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1277,1278,
+1279,1280,1280,1281,1282,1282,1283,1284,1284,1285,1285,1286,1287,1287,1288,1288,1289,1290,1290,1291,
+1291,1292,1293,1294,1294,1295,1296,1297,1298,1299,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,
+1309,1310,1311,1312,1313,1314,1315,1317,1318,1319,1320,1322,1323,1324,1326,1327,1328,1330,1331,1333,
+1334,1336,1337,1339,1340,1342,1343,1345,1346,1347,1349,1350,1352,1353,1354,1356,1357,1358,1359,1361,
+1362,1363,1364,1366,1367,1368,1369,1370,1372,1373,1374,1375,1376,1377,1378,1379,1381,1382,1383,1384,
+1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1395,1396,1397,1398,1398,1399,1400,1400,1401,
+1402,1402,1403,1404,1405,1406,1407,1408,1409,1410,1412,1413,1415,1416,1418,1420,1421,1423,1425,1427,
+1429,1431,1433,1435,1437,1440,1442,1444,1446,1449,1451,1453,1456,1458,1461,1464,1466,1469,1472,1475,
+1477,1480,1483,1486,1489,1492,1495,1498,1501,1504,1507,1510,1513,1516,1519,1522,1525,1528,1531,1534,
+1537,1541,1544,1547,1551,1554,1558,1561,1565,1569,1572,1576,1580,1584,1588,1592,1595,1599,1603,1607,
+1611,1614,1618,1622,1625,1629,1632,1635,1639,1642,1645,1647,1650,1653,1655,1658,1660,1662,1664,1666,
+1668,1670,1671,1673,1674,1676,1677,1678,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,
+1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1711,1712,
+1713,1714,1716,1717,1719,1720,1722,1723,1725,1727,1728,1730,1732,1734,1735,1737,1739,1741,1742,1744,
+1746,1747,1749,1750,1752,1753,1754,1755,1756,1757,1758,1759,1759,1760,1760,1760,1760,1759,1759,1758,
+1757,1757,1755,1754,1753,1751,1750,1748,1746,1744,1742,1740,1738,1735,1733,1731,1729,1726,1724,1722,
+1720,1718,1716,1714,1712,1711,1709,1708,1707,1705,1705,1704,1703,1702,1702,1702,1701,1701,1701,1701,
+1701,1702,1702,1702,1702,1703,1703,1703,1704,1704,1704,1705,1705,1705,1705,1705,1706,1706,1706,1705,
+1705,1705,1705,1705,1704,1704,1703,1703,1702,1701,1701,1700,1699,1698,1697,1697,1696,1695,1694,1693,
+1692,1691,1691,1690,1689,1688,1688,1687,1687,1686,1686,1686,1686,1686,1686,1686,1686,1687,1687,1688,
+1689,1690,1691,1692,1693,1694,1696,1697,1699,1700,1702,1704,1705,1707,1709,1710,1712,1713,1715,1716,
+1718,1719,1720,1721,1722,1723,1724,1724,1725,1725,1726,1726,1726,1727,1727,1727,1727,1727,1727,1727,
+1727,1727,1727,1727,1727,1727,1726,1726,1726,1726,1726,1725,1725,1725,1725,1724,1724,1723,1723,1723,
+1722,1722,1722,1721,1721,1720,1720,1720,1719,1719,1719,1718,1718,1718,1717,1717,1717,1716,1716,1716,
+1715,1715,1714,1714,1713,1713,1713,1712,1712,1711,1710,1710,1709,1709,1708,1707,1707,1706,1706,1705,
+1705,1704,1703,1703,1702,1702,1701,1701,1700,1700,1699,1699,1699,1698,1698,1698,1697,1697,1697,1696,
+1696,1696,1695,1695,1695,1694,1694,1693,1693,1693,1692,1692,1691,1690,1690,1689,1689,1688,1688,1687,
+1687,1686,1686,1685,1685,1684,1684,1683,1683,1682,1682,1682,1681,1681,1680,1680,1680,1680,1679,1679,
+1679,1679,1678,1678,1678,1678,1678,1677,1721,1721,1721,1721,1721,1720,1720,1720,1720,1720,1720,1720,
+1720,1719,1719,1719,1719,1719,1719,1719,1719,1718,1718,1718,1718,1717,1717,1717,1717,1716,1716,1716,
+1716,1715,1715,1715,1715,1715,1715,1715,1715,1715,1715,1715,1715,1716,1716,1716,1716,1717,1717,1717,
+1718,1718,1718,1718,1719,1719,1719,1720,1720,1720,1721,1721,1721,1722,1722,1722,1723,1723,1724,1724,
+1725,1725,1726,1727,1727,1728,1729,1730,1730,1731,1732,1733,1733,1734,1735,1736,1736,1737,1737,1738,
+1739,1739,1739,1740,1740,1740,1741,1741,1741,1741,1741,1741,1741,1741,1741,1742,1742,1742,1742,1742,
+1742,1742,1742,1742,1742,1743,1743,1743,1743,1743,1743,1743,1744,1744,1744,1744,1744,1743,1743,1743,
+1743,1743,1742,1742,1741,1741,1740,1739,1738,1738,1737,1736,1735,1734,1733,1732,1730,1729,1728,1727,
+1726,1725,1723,1722,1721,1720,1718,1717,1716,1715,1713,1712,1711,1710,1709,1707,1706,1705,1704,1703,
+1702,1701,1700,1699,1698,1697,1696,1695,1694,1693,1692,1690,1689,1688,1687,1686,1685,1684,1682,1681,
+1680,1679,1678,1677,1676,1675,1674,1673,1672,1671,1671,1670,1669,1669,1668,1668,1667,1667,1666,1666,
+1665,1664,1664,1663,1662,1661,1659,1658,1657,1655,1653,1651,1649,1647,1644,1642,1639,1636,1633,1630,
+1626,1623,1620,1616,1613,1609,1606,1602,1599,1595,1592,1588,1585,1581,1578,1575,1572,1569,1566,1563,
+1560,1557,1554,1551,1548,1546,1543,1541,1538,1536,1534,1531,1529,1527,1525,1523,1521,1519,1517,1515,
+1513,1511,1509,1507,1506,1504,1502,1500,1498,1496,1494,1492,1490,1488,1486,1484,1482,1480,1478,1476,
+1474,1472,1470,1468,1467,1465,1463,1462,1460,1459,1458,1456,1455,1454,1454,1453,1452,1452,1451,1451,
+1451,1451,1451,1450,1450,1450,1450,1450,1450,1449,1449,1449,1448,1447,1447,1446,1445,1444,1443,1441,
+1440,1438,1437,1435,1434,1432,1431,1429,1427,1426,1424,1422,1421,1419,1418,1416,1414,1413,1411,1409,
+1408,1406,1404,1402,1401,1399,1397,1395,1393,1391,1390,1388,1386,1384,1382,1381,1379,1377,1375,1374,
+1372,1370,1369,1367,1365,1364,1362,1360,1359,1357,1355,1354,1352,1350,1348,1346,1344,1342,1341,1339,
+1337,1334,1332,1330,1328,1326,1323,1321,1319,1316,1314,1311,1309,1306,1303,1301,1298,1295,1292,1290,
+1287,1284,1281,1278,1275,1272,1269,1265,1262,1259,1256,1253,1249,1246,1243,1239,1236,1232,1229,1225,
+1222,1218,1214,1210,1207,1203,1199,1195,1191,1187,1183,1179,1175,1171,1167,1163,1159,1155,1151,1148,
+1144,1141,1137,1134,1130,1127,1124,1121,1118,1115,1112,1109,1107,1104,1102,1099,1097,1095,1093,1091,
+1090,1088,1087,1086,1085,1084,1083,1082,1082,1081,1081,1081,1081,1081,1081,1082,1082,1083,1084,1084,
+1086,1087,1089,1090,1092,1095,1097,1100,1102,1106,1109,1112,1116,1120,1124,1129,1133,1138,1143,1148,
+1153,1159,1165,1170,1176,1182,1189,1195,1201,1207,1213,1220,1226,1231,1237,1243,1248,1253,1258,1263,
+1267,1271,1275,1278,1281,1284,1287,1290,1292,1294,1296,1298,1300,1302,1303,1305,1306,1307,1309,1310,
+1311,1312,1313,1314,1314,1315,1316,1316,1317,1318,1318,1318,1319,1319,1319,1319,1319,1319,1318,1318,
+1317,1316,1315,1313,1312,1310,1308,1306,1303,1300,1298,1294,1291,1288,1284,1280,1277,1273,1269,1264,
+1260,1256,1251,1247,1242,1237,1232,1228,1223,1218,1213,1207,1202,1197,1192,1187,1181,1176,1171,1166,
+1161,1156,1151,1146,1141,1137,1132,1128,1123,1119,1115,1111,1107,1103,1100,1096,1093,1090,1086,1083,
+1080,1078,1075,1072,1070,1068,1065,1063,1061,1059,1057,1055,1053,1052,1050,1048,1046,1045,1043,1042,
+1040,1039,1038,1037,1036,1035,1034,1033,1033,1032,1032,1032,1032,1033,1033,1033,1034,1035,1035,1036,
+1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1052,1053,1054,1055,1056,1058,
+1059,1061,1062,1064,1066,1068,1070,1072,1074,1076,1078,1080,1083,1085,1087,1089,1092,1094,1096,1098,
+1100,1102,1105,1107,1109,1111,1113,1115,1117,1119,1121,1123,1125,1127,1129,1131,1133,1135,1137,1139,
+1141,1143,1144,1146,1147,1149,1150,1151,1152,1153,1154,1155,1156,1157,1157,1158,1159,1159,1160,1160,
+1161,1162,1162,1163,1164,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1175,1176,1177,1179,1180,
+1182,1183,1185,1186,1188,1189,1191,1192,1193,1195,1196,1198,1199,1200,1201,1203,1204,1205,1206,1207,
+1208,1208,1209,1210,1211,1212,1212,1213,1214,1215,1216,1216,1217,1218,1219,1219,1220,1221,1222,1223,
+1223,1224,1225,1225,1226,1227,1227,1228,1228,1229,1229,1230,1230,1231,1231,1232,1232,1232,1233,1233,
+1233,1233,1233,1234,1234,1234,1234,1234,1234,1234,1234,1234,1234,1234,1234,1234,1235,1235,1235,1235,
+1236,1236,1237,1237,1238,1238,1239,1240,1240,1241,1242,1242,1243,1244,1245,1246,1247,1248,1248,1249,
+1250,1251,1252,1253,1254,1254,1255,1256,1257,1257,1258,1258,1259,1260,1260,1261,1261,1262,1263,1263,
+1264,1265,1266,1267,1268,1269,1271,1272,1274,1275,1277,1278,1280,1282,1283,1285,1287,1289,1290,1292,
+1294,1296,1298,1299,1301,1303,1305,1307,1309,1311,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,
+1334,1336,1338,1340,1342,1344,1347,1349,1351,1354,1356,1359,1361,1363,1366,1368,1371,1373,1375,1377,
+1380,1382,1384,1386,1388,1391,1393,1395,1397,1399,1401,1403,1406,1408,1410,1412,1415,1417,1420,1422,
+1425,1427,1430,1432,1435,1437,1440,1442,1445,1447,1450,1452,1454,1457,1459,1461,1463,1466,1468,1470,
+1472,1474,1476,1478,1480,1482,1484,1486,1488,1489,1491,1493,1495,1497,1498,1500,1502,1503,1505,1507,
+1508,1510,1512,1513,1515,1517,1518,1520,1522,1524,1525,1527,1529,1531,1533,1534,1536,1538,1540,1542,
+1544,1545,1547,1549,1551,1552,1554,1556,1557,1559,1561,1562,1564,1565,1567,1568,1569,1571,1572,1573,
+1575,1576,1577,1578,1579,1581,1582,1583,1584,1585,1586,1588,1589,1590,1591,1592,1593,1595,1596,1597,
+1598,1599,1601,1602,1603,1605,1606,1607,1609,1611,1612,1614,1616,1618,1620,1623,1625,1628,1631,1634,
+1637,1640,1643,1647,1650,1654,1657,1661,1665,1668,1672,1676,1680,1684,1688,1691,1695,1699,1702,1706,
+1709,1713,1716,1719,1722,1725,1727,1730,1732,1735,1737,1739,1741,1743,1745,1746,1748,1750,1751,1753,
+1754,1756,1758,1759,1761,1762,1764,1766,1767,1769,1771,1772,1774,1776,1777,1779,1780,1782,1784,1785,
+1787,1788,1789,1791,1792,1794,1795,1796,1797,1798,1800,1801,1802,1803,1804,1805,1806,1807,1809,1810,
+1811,1812,1813,1814,1816,1817,1818,1819,1820,1820,1821,1822,1822,1823,1823,1823,1823,1822,1822,1821,
+1820,1819,1818,1817,1815,1813,1811,1809,1807,1804,1802,1799,1796,1794,1791,1788,1785,1782,1778,1775,
+1772,1770,1767,1764,1761,1759,1756,1754,1752,1750,1748,1746,1744,1742,1741,1739,1738,1737,1736,1735,
+1735,1734,1733,1733,1732,1732,1732,1732,1732,1732,1732,1732,1732,1732,1732,1733,1733,1733,1734,1734,
+1734,1734,1735,1735,1735,1735,1735,1735,1735,1736,1736,1736,1736,1736,1736,1736,1736,1736,1737,1737,
+1737,1737,1737,1738,1738,1738,1738,1739,1739,1739,1740,1740,1741,1741,1742,1743,1743,1744,1745,1746,
+1747,1748,1749,1750,1751,1753,1754,1755,1756,1757,1759,1760,1761,1762,1763,1763,1764,1765,1766,1766,
+1767,1767,1767,1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,1767,1767,1767,1767,
+1766,1766,1765,1765,1764,1764,1763,1763,1762,1761,1761,1760,1760,1759,1758,1758,1757,1757,1756,1755,
+1755,1754,1754,1753,1753,1752,1752,1751,1751,1750,1750,1749,1749,1748,1748,1747,1747,1746,1746,1746,
+1745,1745,1745,1744,1744,1744,1744,1743,1743,1743,1743,1743,1742,1742,1742,1742,1741,1741,1740,1740,
+1739,1739,1738,1738,1737,1736,1736,1735,1734,1734,1733,1733,1732,1732,1731,1731,1730,1730,1730,1730,
+1729,1729,1729,1729,1728,1728,1728,1728,1727,1727,1727,1726,1726,1726,1725,1725,1725,1724,1724,1724,
+1723,1723,1723,1722,1722,1722,1722,1722,1721,1765,1765,1764,1764,1763,1763,1762,1762,1762,1761,1761,
+1761,1761,1761,1760,1760,1760,1760,1760,1760,1760,1761,1761,1761,1761,1761,1762,1762,1762,1763,1763,
+1763,1764,1764,1765,1765,1766,1766,1767,1768,1768,1769,1770,1771,1772,1774,1775,1776,1777,1779,1780,
+1781,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1792,1793,1793,1793,1794,1794,1794,1794,1794,
+1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,1794,
+1794,1794,1794,1794,1795,1795,1795,1796,1796,1797,1798,1798,1799,1800,1801,1802,1802,1803,1803,1804,
+1804,1804,1804,1804,1804,1804,1804,1804,1803,1803,1803,1802,1802,1801,1801,1801,1800,1800,1799,1799,
+1798,1798,1798,1797,1797,1797,1797,1797,1796,1796,1796,1796,1796,1796,1796,1796,1796,1796,1796,1795,
+1795,1795,1794,1794,1793,1792,1791,1790,1789,1788,1786,1785,1783,1781,1779,1778,1776,1774,1772,1770,
+1768,1766,1764,1762,1760,1758,1757,1755,1753,1751,1748,1746,1744,1741,1739,1736,1733,1731,1728,1725,
+1722,1719,1716,1713,1710,1707,1705,1702,1699,1697,1694,1692,1689,1687,1685,1683,1680,1678,1676,1674,
+1672,1670,1668,1666,1664,1662,1660,1658,1656,1654,1652,1650,1648,1646,1643,1641,1638,1636,1633,1630,
+1628,1625,1622,1619,1616,1613,1610,1607,1604,1600,1597,1594,1590,1587,1584,1580,1577,1574,1570,1567,
+1564,1560,1557,1553,1550,1547,1543,1540,1536,1533,1530,1526,1523,1520,1517,1514,1511,1508,1506,1503,
+1501,1498,1496,1494,1492,1490,1488,1487,1485,1484,1482,1481,1479,1478,1477,1476,1475,1474,1473,1472,
+1472,1471,1470,1470,1469,1468,1468,1467,1466,1465,1465,1464,1463,1461,1460,1459,1457,1456,1455,1453,
+1451,1450,1448,1446,1445,1443,1441,1439,1438,1436,1434,1433,1431,1429,1427,1426,1424,1422,1420,1418,
+1416,1414,1413,1411,1409,1407,1405,1403,1401,1399,1397,1395,1394,1392,1390,1389,1387,1386,1384,1383,
+1381,1380,1378,1377,1375,1374,1372,1371,1369,1367,1366,1364,1363,1361,1359,1358,1357,1355,1354,1352,
+1351,1350,1348,1347,1346,1344,1343,1342,1340,1339,1337,1336,1334,1333,1331,1329,1328,1326,1324,1322,
+1320,1319,1317,1315,1312,1310,1308,1306,1303,1301,1299,1296,1293,1290,1288,1284,1281,1278,1274,1271,
+1267,1263,1259,1254,1250,1245,1241,1237,1232,1228,1223,1219,1215,1211,1207,1204,1200,1197,1193,1190,
+1187,1184,1180,1177,1174,1171,1167,1164,1161,1158,1154,1151,1148,1145,1143,1140,1138,1136,1134,1132,
+1130,1129,1127,1126,1125,1124,1123,1122,1121,1119,1118,1117,1115,1113,1111,1109,1107,1104,1102,1099,
+1096,1093,1090,1087,1084,1080,1077,1074,1070,1067,1064,1061,1058,1055,1052,1049,1047,1044,1042,1040,
+1038,1037,1035,1034,1033,1032,1031,1031,1031,1031,1031,1032,1033,1034,1036,1038,1040,1042,1045,1048,
+1051,1054,1058,1062,1067,1072,1077,1083,1089,1095,1102,1109,1116,1124,1132,1141,1149,1158,1167,1176,
+1185,1194,1203,1212,1220,1228,1236,1244,1251,1258,1264,1270,1275,1280,1285,1289,1293,1297,1300,1303,
+1306,1308,1311,1313,1314,1316,1317,1319,1320,1320,1321,1321,1322,1322,1322,1322,1321,1321,1320,1319,
+1317,1316,1313,1311,1308,1305,1302,1298,1293,1289,1284,1279,1273,1267,1261,1254,1248,1241,1234,1227,
+1220,1213,1206,1199,1191,1184,1176,1169,1161,1154,1146,1139,1131,1124,1116,1109,1102,1095,1088,1081,
+1074,1067,1061,1055,1048,1042,1037,1031,1026,1021,1016,1011,1007,1003,999,996,993,990,987,985,
+983,981,979,978,977,976,975,974,974,973,973,973,973,973,973,973,973,974,975,975,
+976,977,978,979,981,982,984,986,988,990,992,994,996,999,1001,1003,1006,1008,1010,1013,
+1015,1018,1020,1023,1025,1028,1030,1033,1035,1038,1040,1043,1045,1047,1050,1052,1054,1056,1058,1060,
+1062,1063,1065,1066,1068,1069,1071,1072,1074,1075,1077,1078,1080,1082,1084,1086,1088,1091,1094,1096,
+1099,1102,1105,1109,1112,1115,1118,1121,1124,1127,1129,1131,1133,1135,1137,1139,1140,1141,1142,1142,
+1143,1143,1143,1144,1144,1144,1144,1143,1143,1143,1142,1142,1141,1141,1140,1139,1139,1138,1137,1136,
+1135,1135,1134,1133,1133,1132,1132,1131,1131,1131,1131,1131,1131,1131,1131,1131,1131,1131,1132,1132,
+1133,1133,1134,1134,1135,1136,1136,1137,1138,1139,1140,1141,1142,1143,1144,1146,1147,1148,1150,1151,
+1153,1154,1156,1157,1159,1160,1162,1163,1165,1166,1168,1169,1170,1171,1173,1174,1175,1176,1178,1179,
+1180,1181,1183,1184,1186,1187,1189,1190,1192,1194,1196,1198,1200,1202,1205,1207,1209,1212,1215,1217,
+1220,1223,1225,1228,1230,1232,1234,1236,1238,1239,1241,1242,1243,1244,1244,1245,1245,1246,1246,1246,
+1246,1246,1246,1246,1246,1246,1246,1246,1246,1246,1246,1246,1246,1246,1247,1247,1248,1249,1249,1250,
+1251,1253,1254,1256,1257,1259,1261,1263,1265,1267,1270,1272,1274,1276,1278,1280,1282,1284,1285,1287,
+1288,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1303,1304,1306,1307,1309,1311,1312,
+1314,1316,1318,1320,1321,1323,1325,1327,1328,1330,1332,1333,1335,1337,1338,1340,1342,1343,1345,1347,
+1348,1350,1352,1354,1356,1358,1360,1363,1365,1367,1370,1372,1374,1377,1379,1381,1383,1385,1387,1389,
+1391,1393,1395,1397,1399,1401,1402,1404,1406,1408,1410,1411,1413,1415,1417,1419,1421,1422,1424,1426,
+1428,1430,1431,1433,1435,1437,1438,1440,1442,1444,1445,1447,1449,1451,1453,1455,1457,1459,1460,1462,
+1464,1466,1468,1470,1472,1474,1476,1478,1480,1482,1484,1486,1488,1490,1492,1493,1495,1497,1499,1500,
+1502,1504,1505,1507,1509,1510,1512,1514,1516,1518,1520,1522,1524,1526,1528,1531,1533,1536,1538,1541,
+1543,1546,1549,1551,1554,1557,1560,1563,1566,1569,1573,1576,1580,1583,1587,1591,1595,1598,1603,1607,
+1611,1615,1619,1624,1628,1632,1637,1641,1646,1650,1654,1658,1662,1666,1670,1674,1677,1680,1683,1686,
+1689,1692,1694,1696,1698,1700,1702,1703,1704,1705,1706,1706,1706,1706,1706,1705,1704,1702,1701,1699,
+1697,1695,1692,1690,1687,1685,1682,1680,1678,1676,1675,1673,1672,1672,1671,1671,1671,1671,1672,1673,
+1674,1675,1676,1678,1679,1681,1683,1685,1688,1690,1693,1696,1698,1702,1705,1708,1711,1715,1719,1722,
+1726,1730,1734,1738,1742,1746,1750,1755,1759,1763,1767,1771,1775,1778,1782,1785,1789,1792,1795,1798,
+1801,1803,1806,1808,1810,1811,1813,1814,1816,1817,1818,1819,1820,1821,1822,1823,1823,1824,1825,1826,
+1827,1828,1829,1831,1832,1833,1834,1835,1836,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,
+1849,1849,1850,1851,1851,1851,1852,1852,1852,1851,1851,1850,1849,1848,1847,1845,1844,1842,1840,1838,
+1836,1834,1832,1830,1829,1827,1825,1823,1822,1820,1819,1818,1816,1815,1814,1813,1812,1810,1809,1807,
+1805,1804,1801,1799,1797,1794,1791,1788,1784,1781,1778,1774,1771,1768,1765,1762,1759,1756,1754,1752,
+1750,1748,1746,1745,1743,1742,1741,1740,1739,1739,1739,1738,1738,1738,1738,1739,1739,1740,1741,1742,
+1743,1745,1746,1748,1750,1752,1754,1757,1759,1761,1763,1766,1768,1770,1772,1775,1777,1779,1781,1783,
+1784,1786,1788,1790,1791,1793,1794,1796,1797,1798,1799,1800,1802,1802,1803,1804,1805,1805,1806,1807,
+1807,1807,1807,1808,1808,1808,1808,1808,1807,1807,1807,1807,1806,1806,1805,1805,1804,1804,1803,1802,
+1802,1801,1801,1800,1799,1799,1798,1798,1797,1797,1796,1796,1795,1795,1794,1794,1793,1793,1792,1792,
+1791,1791,1790,1790,1789,1789,1788,1788,1787,1787,1786,1786,1785,1785,1785,1784,1784,1784,1783,1783,
+1782,1782,1782,1781,1781,1780,1780,1780,1779,1779,1779,1778,1778,1778,1778,1777,1777,1777,1777,1777,
+1776,1776,1776,1776,1776,1776,1776,1775,1775,1775,1775,1775,1775,1775,1775,1774,1774,1774,1774,1774,
+1774,1774,1773,1773,1773,1773,1773,1773,1773,1773,1773,1773,1773,1773,1773,1772,1772,1772,1772,1771,
+1771,1770,1770,1769,1769,1768,1767,1767,1766,1765,1823,1824,1825,1825,1826,1826,1827,1828,1829,1829,
+1830,1830,1831,1831,1832,1832,1832,1832,1832,1832,1831,1831,1831,1831,1830,1830,1830,1830,1831,1831,
+1831,1831,1832,1832,1832,1833,1833,1833,1833,1834,1834,1834,1835,1835,1835,1836,1836,1837,1837,1838,
+1838,1839,1839,1840,1841,1841,1842,1843,1844,1844,1845,1846,1847,1847,1848,1849,1849,1850,1850,1851,
+1851,1851,1851,1851,1851,1851,1851,1850,1850,1849,1849,1849,1848,1848,1847,1847,1847,1847,1846,1846,
+1846,1846,1846,1845,1845,1844,1844,1843,1842,1841,1840,1839,1838,1836,1835,1834,1832,1831,1830,1829,
+1828,1828,1827,1827,1827,1826,1827,1827,1827,1828,1828,1829,1830,1831,1831,1832,1833,1834,1835,1836,
+1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1854,1855,
+1855,1855,1855,1855,1854,1853,1852,1851,1849,1847,1845,1843,1841,1839,1836,1834,1831,1828,1826,1823,
+1821,1819,1816,1814,1812,1810,1808,1806,1805,1803,1801,1799,1797,1795,1793,1790,1788,1786,1783,1780,
+1777,1774,1771,1768,1765,1762,1759,1755,1752,1748,1745,1741,1738,1734,1731,1728,1724,1721,1718,1715,
+1712,1709,1706,1703,1700,1698,1695,1692,1689,1686,1683,1680,1677,1674,1671,1668,1664,1661,1657,1654,
+1651,1648,1644,1641,1638,1635,1632,1630,1627,1624,1622,1619,1617,1615,1613,1610,1608,1606,1604,1602,
+1600,1598,1596,1594,1591,1588,1585,1582,1579,1575,1571,1567,1563,1559,1555,1551,1547,1543,1539,1536,
+1532,1529,1526,1523,1520,1518,1516,1514,1512,1510,1509,1507,1506,1505,1504,1503,1502,1502,1501,1500,
+1500,1499,1499,1498,1497,1496,1495,1494,1492,1491,1489,1488,1486,1484,1482,1480,1478,1476,1474,1472,
+1471,1469,1467,1465,1464,1462,1460,1458,1456,1455,1453,1451,1449,1447,1445,1443,1441,1439,1437,1436,
+1434,1432,1431,1429,1428,1427,1425,1424,1423,1422,1421,1420,1419,1418,1417,1416,1415,1414,1413,1412,
+1411,1409,1407,1406,1403,1401,1398,1395,1392,1389,1385,1381,1377,1373,1369,1365,1361,1357,1353,1350,
+1347,1344,1341,1338,1336,1333,1331,1329,1327,1325,1324,1322,1320,1318,1316,1315,1313,1311,1309,1307,
+1305,1303,1301,1298,1296,1294,1291,1289,1286,1284,1281,1279,1276,1274,1271,1268,1265,1262,1259,1255,
+1252,1248,1244,1240,1235,1231,1226,1222,1217,1212,1208,1203,1199,1195,1190,1187,1183,1179,1176,1173,
+1170,1167,1164,1161,1158,1155,1153,1150,1147,1144,1141,1138,1134,1131,1127,1124,1120,1117,1113,1109,
+1106,1103,1099,1096,1094,1091,1089,1087,1085,1084,1083,1081,1080,1079,1078,1077,1076,1075,1074,1073,
+1071,1070,1068,1066,1064,1061,1059,1057,1054,1051,1049,1046,1044,1041,1039,1037,1035,1033,1032,1031,
+1030,1029,1028,1028,1028,1027,1027,1027,1027,1026,1026,1026,1026,1025,1025,1025,1026,1026,1027,1028,
+1029,1030,1032,1034,1037,1039,1042,1045,1048,1051,1054,1057,1061,1064,1068,1072,1076,1080,1085,1090,
+1096,1101,1107,1114,1120,1127,1134,1141,1148,1155,1162,1169,1175,1182,1188,1194,1200,1206,1211,1217,
+1222,1227,1231,1236,1240,1244,1248,1251,1255,1258,1260,1263,1265,1266,1268,1269,1270,1270,1270,1270,
+1269,1268,1267,1266,1264,1262,1260,1257,1254,1251,1248,1244,1239,1235,1230,1224,1219,1213,1207,1200,
+1193,1186,1179,1171,1164,1155,1147,1139,1130,1121,1112,1103,1093,1084,1075,1065,1056,1047,1038,1029,
+1020,1011,1003,996,988,981,975,968,962,957,952,948,944,940,937,935,933,931,930,929,
+928,928,927,927,927,928,928,929,929,930,931,932,933,934,936,937,939,941,943,946,
+948,951,953,956,959,962,965,968,971,974,977,981,984,988,991,995,999,1002,1006,1010,
+1013,1016,1019,1022,1025,1027,1030,1032,1034,1036,1037,1039,1040,1041,1043,1044,1044,1045,1046,1047,
+1048,1048,1049,1050,1051,1052,1054,1055,1057,1059,1061,1064,1066,1068,1071,1073,1075,1077,1079,1081,
+1083,1085,1086,1087,1089,1090,1091,1092,1093,1093,1094,1094,1095,1095,1095,1095,1095,1095,1095,1094,
+1094,1094,1094,1094,1094,1094,1094,1094,1095,1095,1096,1096,1097,1097,1098,1099,1099,1100,1101,1101,
+1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1113,1114,1116,1117,1119,1121,1123,1124,1126,1128,
+1130,1132,1135,1137,1139,1142,1144,1147,1150,1153,1156,1159,1162,1165,1168,1171,1175,1178,1181,1185,
+1188,1191,1195,1198,1201,1204,1207,1210,1213,1216,1219,1221,1224,1227,1230,1232,1235,1237,1240,1242,
+1244,1245,1247,1248,1249,1250,1251,1251,1252,1252,1252,1253,1253,1254,1255,1256,1257,1258,1260,1261,
+1263,1264,1266,1268,1269,1271,1272,1274,1275,1276,1276,1277,1277,1278,1278,1278,1278,1278,1278,1278,
+1278,1278,1278,1278,1278,1279,1279,1279,1280,1281,1281,1282,1283,1284,1285,1286,1287,1288,1288,1289,
+1289,1289,1289,1289,1289,1289,1289,1288,1288,1288,1289,1289,1289,1290,1291,1292,1293,1294,1295,1296,
+1297,1299,1300,1301,1302,1304,1305,1306,1307,1309,1310,1312,1313,1315,1316,1318,1320,1321,1323,1325,
+1327,1329,1331,1333,1335,1337,1339,1341,1343,1345,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,
+1367,1369,1371,1373,1375,1378,1380,1382,1384,1386,1389,1391,1393,1395,1397,1399,1401,1403,1405,1406,
+1408,1409,1410,1411,1413,1414,1415,1416,1417,1419,1420,1422,1423,1425,1427,1430,1432,1435,1437,1440,
+1443,1446,1449,1453,1456,1459,1462,1465,1468,1471,1473,1475,1477,1479,1480,1481,1482,1483,1483,1484,
+1484,1484,1485,1485,1486,1487,1487,1488,1490,1491,1492,1494,1495,1497,1499,1501,1503,1504,1506,1508,
+1510,1512,1515,1517,1519,1522,1524,1527,1530,1533,1536,1539,1542,1545,1548,1552,1555,1559,1562,1566,
+1570,1573,1577,1580,1584,1588,1591,1595,1599,1602,1606,1610,1614,1617,1621,1625,1629,1633,1637,1641,
+1645,1649,1653,1656,1660,1664,1667,1670,1674,1677,1680,1683,1686,1688,1691,1694,1697,1700,1702,1705,
+1708,1711,1713,1716,1719,1721,1724,1726,1729,1731,1733,1735,1737,1739,1741,1743,1744,1746,1748,1749,
+1751,1753,1754,1756,1758,1759,1760,1761,1762,1762,1762,1762,1761,1759,1757,1755,1752,1749,1746,1742,
+1738,1734,1730,1726,1722,1719,1716,1713,1710,1708,1706,1705,1704,1704,1703,1704,1704,1705,1707,1709,
+1711,1713,1716,1719,1722,1725,1729,1733,1737,1742,1746,1751,1755,1760,1765,1770,1775,1780,1785,1790,
+1794,1799,1804,1808,1812,1817,1821,1825,1829,1833,1836,1840,1843,1846,1849,1852,1855,1857,1859,1861,
+1863,1864,1865,1866,1867,1868,1869,1869,1870,1871,1871,1872,1872,1873,1873,1874,1874,1875,1876,1877,
+1878,1880,1881,1883,1884,1886,1888,1889,1891,1892,1893,1894,1895,1895,1895,1894,1893,1892,1890,1888,
+1886,1883,1880,1876,1873,1869,1865,1861,1857,1853,1849,1845,1841,1837,1833,1830,1827,1823,1821,1818,
+1815,1813,1811,1809,1807,1806,1804,1803,1802,1800,1799,1798,1796,1795,1794,1792,1791,1789,1788,1786,
+1785,1783,1782,1781,1780,1779,1779,1778,1778,1778,1778,1779,1779,1780,1781,1783,1784,1786,1787,1789,
+1791,1793,1794,1796,1798,1800,1802,1804,1805,1807,1809,1811,1813,1816,1818,1820,1822,1824,1826,1828,
+1830,1832,1834,1836,1838,1840,1842,1843,1844,1846,1847,1848,1848,1849,1850,1850,1850,1850,1850,1850,
+1850,1849,1849,1848,1848,1847,1847,1846,1845,1845,1844,1843,1843,1842,1842,1841,1841,1840,1840,1840,
+1839,1839,1839,1839,1838,1838,1838,1838,1837,1837,1837,1837,1836,1836,1836,1836,1836,1835,1835,1835,
+1835,1835,1835,1835,1835,1834,1834,1834,1834,1833,1833,1832,1832,1831,1831,1830,1829,1829,1828,1827,
+1827,1826,1825,1825,1824,1824,1824,1823,1823,1823,1823,1823,1822,1822,1822,1822,1822,1821,1821,1821,
+1821,1821,1821,1821,1821,1821,1821,1820,1820,1820,1820,1820,1820,1820,1820,1820,1819,1819,1819,1820,
+1820,1820,1820,1820,1820,1820,1821,1821,1821,1821,1821,1821,1820,1820,1820,1820,1820,1820,1820,1820,
+1820,1820,1821,1821,1821,1821,1822,1822,1823,1823,1823,1881,1881,1881,1881,1882,1882,1883,1884,1884,
+1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1896,1897,1898,1898,1899,1900,1901,1902,
+1903,1904,1905,1906,1907,1909,1911,1912,1913,1915,1916,1917,1918,1918,1919,1919,1918,1918,1918,1917,
+1916,1915,1914,1914,1913,1912,1911,1910,1909,1908,1908,1907,1906,1905,1905,1904,1904,1903,1903,1903,
+1902,1902,1902,1902,1903,1903,1903,1904,1904,1905,1906,1906,1907,1908,1909,1910,1910,1911,1911,1912,
+1912,1912,1912,1912,1912,1911,1911,1910,1910,1909,1909,1908,1907,1907,1907,1906,1906,1906,1906,1907,
+1907,1908,1909,1909,1910,1911,1912,1913,1914,1915,1915,1916,1916,1916,1916,1916,1916,1915,1914,1914,
+1913,1913,1912,1912,1912,1911,1911,1910,1910,1910,1909,1909,1908,1907,1907,1906,1905,1904,1904,1903,
+1902,1901,1901,1900,1899,1899,1898,1898,1898,1898,1898,1898,1898,1899,1899,1900,1900,1900,1901,1901,
+1902,1902,1902,1902,1902,1902,1902,1902,1901,1900,1900,1898,1897,1895,1893,1891,1888,1885,1882,1878,
+1874,1869,1865,1860,1855,1850,1845,1840,1835,1830,1825,1820,1816,1811,1806,1801,1797,1792,1788,1783,
+1779,1774,1770,1765,1761,1757,1752,1748,1744,1740,1736,1732,1729,1725,1721,1718,1714,1711,1707,1704,
+1700,1696,1693,1689,1686,1682,1679,1675,1672,1669,1666,1663,1660,1657,1654,1652,1649,1647,1645,1643,
+1641,1639,1637,1635,1633,1630,1628,1625,1622,1618,1615,1611,1606,1602,1598,1593,1589,1584,1580,1576,
+1573,1570,1567,1564,1562,1560,1559,1558,1557,1557,1556,1556,1556,1556,1556,1556,1556,1556,1555,1555,
+1554,1553,1552,1550,1548,1546,1544,1541,1539,1536,1532,1529,1526,1522,1518,1515,1511,1507,1503,1499,
+1496,1492,1488,1485,1481,1478,1475,1472,1469,1467,1464,1462,1460,1458,1456,1454,1452,1450,1448,1446,
+1444,1442,1439,1437,1435,1433,1430,1428,1426,1424,1421,1419,1417,1414,1412,1410,1407,1405,1402,1400,
+1397,1395,1392,1389,1386,1383,1380,1377,1374,1371,1368,1365,1362,1358,1355,1352,1349,1346,1342,1339,
+1336,1332,1329,1325,1322,1318,1314,1311,1307,1304,1301,1298,1294,1291,1288,1286,1283,1280,1277,1274,
+1272,1269,1266,1263,1260,1258,1255,1252,1249,1246,1243,1241,1238,1235,1232,1229,1226,1223,1219,1216,
+1213,1209,1206,1202,1199,1195,1192,1188,1185,1182,1179,1176,1173,1170,1167,1164,1161,1158,1156,1153,
+1150,1148,1145,1142,1139,1137,1134,1132,1129,1126,1124,1121,1118,1116,1113,1111,1108,1106,1103,1101,
+1098,1095,1093,1090,1087,1084,1081,1078,1075,1071,1068,1064,1059,1055,1051,1046,1041,1036,1031,1026,
+1021,1016,1011,1006,1002,997,993,989,985,982,979,976,974,972,970,968,967,966,966,966,
+967,968,969,971,973,975,978,982,985,989,993,997,1000,1004,1007,1010,1012,1014,1015,1015,
+1015,1015,1014,1012,1010,1008,1005,1002,1000,997,994,991,989,986,984,982,981,979,978,977,
+977,977,977,978,979,981,983,986,990,995,1000,1006,1013,1020,1028,1036,1044,1053,1063,1072,
+1081,1091,1100,1109,1117,1126,1134,1141,1148,1155,1161,1167,1173,1178,1182,1186,1190,1193,1196,1198,
+1200,1201,1202,1203,1203,1202,1201,1200,1198,1195,1192,1188,1184,1180,1175,1170,1164,1158,1152,1145,
+1138,1131,1124,1116,1109,1101,1093,1085,1077,1069,1061,1052,1044,1036,1027,1019,1010,1001,993,984,
+976,967,959,950,943,935,928,921,915,909,904,899,895,892,889,886,885,883,883,883,
+883,884,885,886,888,890,892,894,897,899,902,904,906,908,911,913,915,917,920,922,
+925,928,931,934,938,942,945,949,953,958,962,966,970,975,979,983,986,990,993,996,
+999,1002,1004,1006,1008,1010,1012,1014,1015,1017,1018,1020,1022,1023,1025,1026,1027,1029,1030,1032,
+1033,1035,1036,1038,1039,1041,1042,1044,1046,1047,1049,1051,1052,1053,1055,1056,1057,1058,1058,1059,
+1060,1060,1061,1062,1062,1063,1064,1065,1066,1067,1068,1070,1071,1073,1075,1077,1078,1080,1082,1083,
+1085,1086,1087,1089,1090,1090,1091,1092,1093,1093,1094,1094,1095,1095,1096,1097,1098,1098,1099,1100,
+1101,1102,1103,1105,1106,1107,1108,1109,1110,1112,1113,1114,1116,1117,1119,1120,1122,1124,1126,1128,
+1130,1133,1135,1138,1141,1144,1147,1150,1153,1156,1159,1162,1166,1169,1172,1175,1178,1182,1185,1188,
+1191,1194,1197,1200,1203,1205,1208,1211,1213,1216,1218,1221,1223,1225,1227,1228,1230,1231,1233,1234,
+1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1250,1251,1253,1255,1257,1259,
+1261,1263,1265,1266,1268,1269,1270,1271,1272,1272,1273,1273,1273,1274,1274,1275,1275,1276,1276,1277,
+1278,1279,1279,1280,1281,1282,1283,1283,1284,1285,1286,1287,1288,1288,1289,1290,1291,1292,1293,1294,
+1295,1295,1296,1296,1297,1297,1297,1297,1298,1298,1298,1298,1298,1299,1299,1300,1300,1301,1302,1303,
+1304,1305,1307,1308,1309,1310,1312,1313,1314,1315,1317,1318,1319,1321,1322,1324,1325,1327,1328,1330,
+1332,1333,1335,1336,1338,1339,1341,1342,1344,1346,1347,1349,1351,1353,1355,1357,1359,1361,1363,1365,
+1367,1369,1370,1372,1374,1375,1377,1379,1381,1382,1384,1386,1388,1390,1392,1394,1395,1397,1399,1401,
+1403,1405,1406,1408,1410,1412,1414,1415,1417,1419,1420,1422,1424,1425,1427,1429,1431,1433,1435,1437,
+1440,1442,1444,1447,1449,1451,1453,1456,1458,1460,1461,1463,1465,1467,1469,1470,1472,1473,1475,1476,
+1478,1479,1480,1482,1483,1484,1486,1487,1489,1491,1493,1495,1497,1499,1501,1503,1505,1508,1510,1512,
+1515,1517,1519,1522,1525,1528,1530,1534,1537,1540,1543,1547,1550,1554,1558,1562,1565,1569,1573,1576,
+1580,1583,1587,1590,1593,1596,1598,1601,1603,1605,1608,1610,1613,1616,1619,1622,1626,1630,1634,1638,
+1642,1647,1651,1655,1659,1663,1667,1670,1673,1677,1680,1682,1685,1688,1690,1693,1695,1698,1700,1703,
+1705,1708,1710,1712,1714,1717,1719,1721,1723,1724,1726,1728,1730,1731,1733,1735,1736,1738,1739,1741,
+1742,1743,1745,1746,1747,1748,1750,1751,1752,1753,1754,1755,1756,1756,1757,1757,1758,1758,1758,1758,
+1757,1757,1757,1756,1755,1755,1754,1753,1752,1751,1750,1749,1748,1748,1747,1746,1745,1745,1744,1743,
+1742,1742,1741,1740,1739,1739,1739,1739,1739,1739,1741,1742,1744,1746,1749,1752,1755,1759,1763,1767,
+1772,1776,1781,1786,1791,1796,1801,1805,1810,1815,1820,1825,1829,1834,1839,1843,1847,1852,1856,1860,
+1864,1867,1871,1874,1877,1880,1883,1886,1888,1891,1893,1895,1898,1900,1902,1904,1907,1909,1912,1914,
+1917,1920,1923,1925,1928,1930,1933,1935,1938,1939,1941,1943,1944,1945,1946,1947,1947,1947,1947,1946,
+1945,1944,1943,1941,1939,1937,1934,1931,1928,1924,1921,1917,1912,1908,1903,1898,1893,1888,1883,1878,
+1873,1868,1863,1858,1854,1850,1847,1843,1841,1838,1837,1835,1834,1833,1833,1832,1832,1832,1832,1832,
+1832,1832,1832,1832,1831,1831,1831,1831,1830,1830,1830,1830,1831,1831,1832,1832,1833,1834,1836,1837,
+1839,1840,1842,1844,1846,1849,1851,1854,1857,1860,1862,1865,1868,1871,1874,1877,1880,1883,1886,1888,
+1890,1893,1894,1896,1898,1899,1900,1901,1902,1902,1903,1903,1903,1903,1903,1902,1902,1901,1901,1900,
+1900,1899,1899,1898,1898,1897,1897,1896,1895,1895,1894,1893,1893,1892,1891,1890,1889,1888,1887,1887,
+1886,1885,1884,1883,1882,1881,1880,1880,1879,1878,1877,1876,1876,1875,1874,1874,1873,1873,1873,1872,
+1872,1872,1872,1872,1872,1872,1872,1872,1872,1872,1871,1871,1871,1871,1871,1871,1871,1871,1871,1871,
+1871,1872,1872,1872,1873,1873,1873,1873,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,
+1874,1874,1873,1873,1873,1873,1874,1874,1874,1874,1874,1875,1875,1875,1876,1877,1877,1878,1879,1880,
+1880,1881,1882,1883,1883,1884,1884,1884,1885,1885,1884,1884,1884,1884,1884,1883,1883,1883,1883,1882,
+1882,1882,1882,1882,1881,1881,1881,1881,1881,1881,1881,1881,1970,1970,1969,1969,1969,1969,1968,1968,
+1968,1968,1968,1968,1968,1969,1969,1970,1970,1971,1971,1972,1972,1973,1973,1974,1974,1974,1975,1975,
+1975,1975,1975,1975,1975,1976,1976,1976,1976,1977,1977,1978,1978,1979,1979,1980,1980,1981,1982,1982,
+1983,1983,1983,1984,1984,1984,1984,1985,1985,1985,1986,1986,1986,1987,1988,1988,1989,1990,1991,1992,
+1993,1994,1996,1997,1998,1999,2001,2002,2003,2004,2005,2006,2007,2007,2007,2008,2007,2007,2006,2005,
+2004,2003,2001,1999,1997,1995,1992,1990,1988,1987,1985,1984,1983,1983,1983,1983,1983,1983,1983,1984,
+1984,1984,1984,1984,1984,1984,1984,1984,1984,1985,1985,1986,1987,1987,1988,1989,1990,1991,1991,1992,
+1992,1992,1991,1991,1990,1989,1988,1987,1985,1984,1983,1981,1980,1979,1978,1977,1977,1976,1975,1975,
+1974,1974,1973,1973,1972,1972,1971,1971,1970,1970,1970,1970,1970,1970,1970,1971,1971,1972,1972,1973,
+1973,1973,1973,1973,1973,1972,1971,1969,1967,1965,1962,1959,1956,1952,1949,1945,1941,1938,1934,1930,
+1926,1922,1918,1914,1909,1905,1900,1895,1889,1884,1878,1872,1866,1860,1854,1848,1842,1835,1829,1823,
+1816,1810,1804,1798,1791,1785,1780,1774,1768,1763,1758,1753,1748,1744,1739,1734,1730,1725,1721,1716,
+1712,1707,1703,1699,1695,1692,1688,1685,1682,1680,1677,1676,1674,1673,1673,1673,1674,1674,1675,1676,
+1677,1677,1677,1677,1676,1674,1672,1670,1667,1663,1659,1655,1651,1646,1642,1637,1632,1628,1623,1619,
+1614,1610,1606,1603,1599,1597,1594,1592,1591,1590,1589,1589,1589,1589,1590,1590,1590,1591,1591,1591,
+1591,1591,1591,1591,1590,1590,1589,1587,1585,1583,1581,1578,1575,1571,1567,1563,1558,1553,1548,1543,
+1537,1531,1525,1519,1512,1506,1500,1493,1487,1482,1476,1471,1466,1461,1457,1453,1450,1447,1444,1441,
+1439,1437,1435,1433,1431,1429,1428,1426,1424,1422,1420,1418,1416,1414,1412,1410,1408,1406,1404,1402,
+1400,1399,1397,1396,1394,1393,1391,1390,1388,1387,1385,1383,1380,1378,1375,1371,1368,1364,1359,1355,
+1350,1346,1341,1337,1332,1328,1324,1321,1317,1314,1310,1307,1304,1302,1299,1296,1294,1291,1289,1286,
+1284,1281,1278,1274,1271,1267,1264,1260,1255,1251,1247,1242,1238,1233,1229,1224,1219,1215,1210,1206,
+1202,1197,1193,1189,1186,1182,1179,1176,1173,1170,1167,1165,1162,1160,1157,1155,1153,1150,1148,1146,
+1144,1141,1139,1137,1134,1131,1129,1126,1123,1120,1117,1114,1111,1109,1106,1103,1101,1098,1095,1093,
+1090,1087,1085,1082,1079,1076,1074,1071,1068,1066,1063,1061,1058,1056,1053,1051,1048,1045,1042,1039,
+1036,1032,1028,1024,1020,1016,1011,1007,1003,999,994,990,987,983,980,977,974,971,968,966,
+963,961,959,956,954,952,950,947,945,943,941,940,938,936,935,934,934,933,933,933,
+934,934,935,936,938,940,941,943,944,946,947,949,949,950,951,951,950,950,949,948,
+946,945,943,941,939,937,935,933,931,929,928,926,925,925,924,924,925,926,927,929,
+931,934,937,940,944,949,953,959,964,970,977,984,992,1000,1009,1018,1028,1037,1047,1057,
+1067,1077,1086,1094,1102,1109,1114,1119,1123,1125,1127,1128,1128,1128,1127,1126,1124,1122,1120,1117,
+1114,1111,1108,1104,1099,1095,1090,1084,1078,1072,1065,1058,1050,1042,1034,1026,1018,1009,1000,991,
+983,974,965,957,948,940,933,925,919,912,907,901,897,892,888,885,882,879,877,875,
+873,871,870,869,869,868,868,868,869,870,871,873,874,877,879,881,884,887,890,894,
+897,900,904,907,911,915,919,922,926,930,934,938,942,946,949,953,957,960,964,967,
+970,974,977,980,983,987,990,994,998,1001,1005,1009,1013,1017,1020,1024,1027,1031,1034,1036,
+1039,1041,1044,1046,1047,1049,1051,1052,1053,1055,1056,1058,1059,1061,1062,1064,1066,1068,1070,1072,
+1075,1077,1079,1081,1083,1085,1086,1088,1089,1090,1091,1092,1092,1093,1093,1094,1094,1095,1095,1096,
+1096,1097,1097,1097,1097,1097,1097,1097,1097,1097,1096,1096,1095,1095,1094,1094,1093,1093,1092,1092,
+1092,1091,1091,1091,1092,1092,1092,1093,1093,1094,1095,1095,1096,1097,1097,1098,1098,1099,1099,1100,
+1100,1101,1102,1103,1104,1105,1107,1108,1110,1112,1114,1116,1119,1121,1123,1126,1129,1131,1134,1137,
+1139,1142,1145,1147,1150,1153,1155,1158,1161,1164,1166,1169,1172,1174,1177,1180,1182,1184,1186,1188,
+1190,1192,1193,1194,1196,1197,1198,1199,1200,1201,1202,1204,1205,1206,1208,1209,1210,1212,1213,1214,
+1215,1217,1218,1220,1222,1224,1226,1229,1232,1235,1239,1242,1245,1248,1251,1253,1254,1255,1256,1256,
+1256,1255,1254,1254,1253,1253,1253,1253,1253,1254,1254,1255,1256,1257,1257,1258,1259,1260,1261,1262,
+1263,1264,1266,1267,1269,1270,1272,1274,1275,1277,1279,1281,1283,1285,1287,1288,1290,1292,1294,1296,
+1297,1299,1300,1301,1302,1304,1305,1306,1307,1309,1310,1312,1314,1315,1317,1319,1321,1323,1325,1328,
+1330,1332,1335,1337,1340,1342,1345,1347,1350,1352,1355,1357,1359,1361,1362,1364,1366,1367,1369,1370,
+1372,1373,1374,1376,1377,1379,1381,1383,1385,1387,1389,1392,1394,1397,1400,1403,1406,1409,1413,1416,
+1420,1424,1427,1432,1436,1441,1445,1450,1456,1461,1467,1473,1479,1486,1492,1499,1505,1511,1517,1523,
+1528,1533,1538,1541,1545,1548,1550,1552,1554,1555,1556,1557,1557,1557,1556,1555,1554,1552,1550,1548,
+1546,1544,1541,1539,1537,1535,1533,1532,1531,1530,1530,1530,1530,1530,1531,1531,1532,1533,1535,1536,
+1537,1539,1540,1542,1544,1546,1549,1551,1554,1556,1559,1562,1565,1568,1572,1575,1579,1583,1587,1591,
+1595,1599,1603,1606,1610,1613,1616,1619,1622,1625,1628,1631,1633,1636,1639,1641,1643,1646,1648,1650,
+1651,1653,1654,1656,1657,1658,1659,1660,1661,1663,1664,1666,1667,1669,1672,1674,1677,1680,1683,1686,
+1689,1692,1695,1698,1701,1704,1707,1709,1712,1714,1717,1719,1721,1723,1725,1727,1728,1730,1731,1731,
+1732,1732,1732,1732,1731,1731,1730,1730,1729,1729,1729,1729,1730,1730,1731,1732,1732,1733,1734,1735,
+1735,1736,1736,1737,1737,1737,1738,1738,1738,1739,1740,1741,1741,1742,1744,1745,1746,1748,1749,1751,
+1753,1755,1757,1759,1762,1764,1767,1769,1772,1775,1778,1780,1783,1786,1789,1792,1795,1797,1799,1801,
+1803,1804,1805,1806,1806,1806,1806,1806,1806,1806,1806,1806,1807,1807,1809,1811,1813,1816,1820,1824,
+1829,1834,1839,1845,1851,1857,1863,1870,1876,1883,1889,1895,1901,1907,1912,1917,1921,1926,1930,1933,
+1937,1939,1942,1945,1948,1950,1952,1954,1956,1958,1960,1962,1963,1965,1966,1967,1968,1969,1970,1970,
+1970,1970,1970,1970,1969,1968,1967,1965,1964,1962,1959,1957,1954,1951,1948,1944,1941,1937,1934,1931,
+1928,1926,1923,1922,1920,1919,1918,1917,1917,1916,1916,1916,1915,1915,1914,1914,1913,1912,1911,1910,
+1908,1907,1905,1903,1901,1899,1897,1895,1893,1891,1889,1887,1886,1885,1884,1884,1884,1885,1886,1887,
+1889,1890,1893,1895,1898,1900,1903,1906,1909,1912,1915,1918,1921,1924,1927,1930,1932,1935,1937,1939,
+1942,1944,1945,1947,1948,1949,1950,1951,1951,1951,1951,1951,1951,1950,1950,1949,1948,1947,1946,1945,
+1944,1943,1942,1941,1940,1939,1938,1937,1936,1936,1935,1934,1933,1932,1931,1930,1929,1928,1927,1926,
+1925,1924,1923,1922,1921,1921,1920,1919,1918,1917,1916,1915,1914,1913,1912,1911,1911,1910,1909,1908,
+1908,1907,1907,1907,1906,1906,1906,1907,1907,1907,1908,1909,1909,1910,1911,1912,1913,1914,1915,1917,
+1918,1919,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1930,1931,1932,1933,1933,1934,1935,1936,
+1936,1937,1938,1939,1940,1941,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1951,1952,1953,
+1953,1954,1955,1955,1956,1956,1957,1957,1958,1958,1959,1960,1960,1961,1962,1962,1963,1964,1965,1966,
+1966,1967,1968,1968,1969,1969,1969,1970,1970,1970,1970,1970,1970,2044,2044,2045,2046,2047,2048,2050,
+2051,2052,2053,2055,2056,2057,2058,2059,2059,2060,2061,2061,2061,2062,2062,2062,2062,2062,2062,2062,
+2062,2062,2062,2062,2062,2061,2061,2061,2061,2061,2060,2060,2060,2059,2059,2058,2058,2057,2056,2055,
+2055,2054,2054,2053,2053,2053,2053,2053,2054,2054,2054,2055,2055,2055,2056,2056,2056,2056,2057,2057,
+2057,2057,2056,2056,2056,2055,2054,2054,2053,2052,2052,2051,2050,2050,2049,2049,2048,2048,2048,2048,
+2048,2048,2049,2050,2051,2052,2054,2056,2059,2061,2064,2067,2070,2074,2077,2081,2085,2088,2092,2095,
+2098,2100,2102,2103,2103,2103,2102,2100,2098,2096,2093,2090,2088,2085,2083,2081,2080,2079,2078,2078,
+2077,2076,2075,2075,2073,2072,2071,2070,2068,2067,2066,2065,2064,2063,2062,2061,2060,2059,2057,2055,
+2052,2050,2047,2045,2042,2039,2036,2033,2031,2028,2026,2024,2022,2020,2019,2018,2017,2016,2016,2015,
+2014,2013,2012,2009,2006,2003,1999,1994,1989,1984,1979,1973,1967,1962,1956,1950,1943,1937,1930,1922,
+1914,1906,1898,1890,1882,1873,1866,1858,1850,1843,1836,1829,1822,1815,1808,1801,1795,1788,1782,1777,
+1771,1766,1761,1756,1751,1747,1742,1738,1734,1731,1727,1723,1720,1717,1713,1710,1707,1704,1701,1698,
+1696,1694,1692,1691,1690,1689,1688,1688,1688,1687,1687,1686,1686,1685,1684,1683,1682,1680,1678,1676,
+1674,1671,1668,1665,1662,1659,1656,1653,1650,1648,1645,1643,1642,1641,1641,1641,1641,1642,1644,1645,
+1648,1650,1653,1655,1657,1659,1661,1662,1662,1661,1660,1657,1655,1651,1648,1644,1640,1637,1634,1631,
+1629,1627,1626,1625,1624,1623,1623,1622,1621,1620,1618,1616,1613,1610,1607,1604,1600,1596,1591,1586,
+1581,1576,1570,1565,1559,1552,1546,1539,1532,1526,1519,1512,1506,1499,1493,1487,1481,1475,1470,1464,
+1459,1454,1450,1445,1441,1437,1434,1430,1426,1423,1420,1416,1413,1410,1407,1404,1402,1399,1397,1395,
+1393,1391,1389,1388,1387,1385,1384,1383,1382,1381,1380,1379,1377,1376,1375,1374,1373,1372,1370,1369,
+1367,1365,1364,1361,1359,1356,1353,1350,1346,1342,1338,1334,1330,1326,1322,1317,1313,1308,1304,1299,
+1294,1289,1284,1279,1274,1268,1263,1257,1252,1246,1241,1235,1230,1225,1220,1215,1211,1207,1203,1199,
+1195,1191,1188,1185,1182,1178,1175,1172,1169,1166,1163,1160,1157,1154,1151,1148,1145,1142,1139,1136,
+1133,1130,1126,1123,1120,1116,1113,1110,1106,1103,1100,1097,1094,1091,1089,1086,1083,1081,1078,1076,
+1074,1071,1069,1067,1065,1063,1060,1058,1056,1054,1052,1049,1047,1044,1042,1039,1036,1034,1031,1028,
+1026,1023,1021,1018,1016,1014,1011,1009,1006,1003,1001,998,995,991,988,985,982,978,975,972,
+969,966,963,960,958,955,952,950,948,946,943,941,939,937,935,933,931,928,926,924,
+922,920,918,916,915,913,912,911,911,910,910,911,911,912,913,914,915,917,919,921,
+923,926,928,931,934,937,940,942,944,946,947,948,948,947,946,944,942,939,937,934,
+932,930,928,927,927,927,927,927,928,930,931,933,936,938,941,944,948,953,957,963,
+968,975,982,989,997,1005,1014,1022,1032,1041,1050,1058,1066,1074,1080,1086,1090,1094,1096,1098,
+1098,1098,1097,1096,1094,1093,1091,1089,1087,1085,1083,1080,1078,1076,1073,1070,1067,1064,1060,1055,
+1050,1045,1039,1032,1025,1018,1010,1001,993,984,976,968,960,953,946,940,934,928,923,918,
+913,908,903,898,894,889,885,882,879,876,874,873,872,872,873,874,876,879,883,888,
+893,899,905,912,919,926,933,940,946,952,958,963,968,973,977,982,986,990,994,998,
+1002,1006,1009,1013,1017,1020,1023,1027,1030,1033,1036,1039,1042,1044,1046,1049,1050,1052,1053,1055,
+1056,1057,1058,1059,1060,1060,1061,1062,1063,1064,1064,1065,1065,1066,1067,1067,1068,1068,1069,1069,
+1070,1070,1071,1072,1072,1073,1073,1073,1073,1073,1073,1072,1072,1071,1071,1071,1070,1070,1070,1070,
+1070,1069,1069,1069,1068,1068,1067,1067,1066,1065,1065,1064,1064,1064,1063,1063,1063,1063,1063,1063,
+1062,1062,1062,1061,1061,1060,1060,1060,1060,1060,1059,1059,1059,1059,1058,1058,1057,1057,1057,1057,
+1056,1056,1056,1057,1057,1057,1057,1058,1058,1059,1059,1060,1060,1061,1062,1063,1064,1066,1067,1069,
+1070,1072,1073,1075,1077,1079,1080,1082,1085,1087,1089,1092,1094,1096,1099,1101,1103,1106,1108,1110,
+1112,1115,1117,1119,1121,1123,1126,1128,1131,1133,1137,1140,1143,1147,1151,1155,1158,1161,1163,1165,
+1167,1167,1168,1168,1169,1169,1171,1172,1174,1177,1180,1183,1186,1189,1192,1194,1195,1196,1197,1198,
+1198,1199,1200,1201,1202,1204,1206,1208,1210,1212,1214,1216,1218,1220,1223,1225,1229,1232,1236,1241,
+1245,1250,1255,1260,1265,1270,1275,1279,1283,1287,1291,1295,1298,1301,1305,1308,1311,1314,1317,1320,
+1323,1326,1328,1330,1332,1333,1334,1334,1334,1334,1334,1334,1333,1333,1334,1334,1335,1336,1337,1338,
+1340,1341,1342,1344,1345,1346,1348,1350,1351,1353,1355,1358,1360,1363,1365,1368,1371,1373,1376,1379,
+1381,1384,1386,1389,1391,1393,1395,1397,1398,1400,1401,1402,1403,1404,1404,1405,1406,1407,1408,1409,
+1411,1412,1414,1416,1418,1421,1423,1425,1428,1431,1434,1437,1440,1443,1447,1450,1454,1458,1462,1465,
+1469,1472,1476,1479,1482,1486,1489,1492,1496,1500,1504,1508,1512,1516,1519,1523,1526,1529,1531,1533,
+1535,1537,1538,1539,1540,1541,1541,1542,1542,1543,1543,1543,1544,1544,1544,1544,1544,1544,1545,1545,
+1546,1547,1548,1550,1551,1553,1555,1557,1559,1561,1563,1565,1568,1570,1573,1576,1579,1582,1586,1590,
+1593,1597,1601,1605,1609,1613,1617,1621,1624,1628,1632,1635,1638,1641,1644,1647,1650,1652,1655,1657,
+1660,1662,1664,1666,1668,1669,1670,1671,1672,1672,1672,1672,1672,1671,1671,1671,1671,1671,1671,1671,
+1671,1672,1673,1673,1674,1675,1677,1678,1680,1681,1684,1686,1688,1691,1694,1696,1699,1702,1704,1707,
+1709,1711,1713,1714,1715,1717,1718,1718,1719,1720,1720,1721,1722,1723,1724,1725,1726,1727,1728,1730,
+1731,1733,1734,1736,1738,1739,1741,1743,1745,1747,1749,1751,1753,1755,1757,1758,1760,1761,1763,1764,
+1766,1767,1769,1770,1772,1773,1775,1777,1779,1782,1784,1786,1788,1791,1793,1795,1796,1798,1799,1800,
+1801,1801,1802,1802,1802,1802,1802,1802,1802,1802,1802,1802,1802,1803,1804,1804,1806,1807,1809,1811,
+1813,1816,1819,1823,1827,1831,1835,1840,1845,1851,1856,1862,1869,1875,1882,1888,1895,1901,1908,1914,
+1920,1926,1932,1937,1942,1947,1951,1956,1960,1964,1967,1971,1974,1977,1979,1981,1983,1985,1987,1988,
+1989,1990,1991,1992,1993,1994,1994,1994,1994,1994,1994,1993,1992,1991,1990,1988,1986,1985,1983,1981,
+1979,1977,1975,1973,1971,1970,1968,1967,1965,1964,1963,1962,1961,1961,1960,1960,1960,1960,1959,1959,
+1958,1957,1956,1954,1952,1949,1946,1942,1938,1934,1930,1926,1922,1919,1917,1915,1914,1913,1913,1914,
+1915,1917,1919,1922,1925,1928,1931,1935,1939,1943,1947,1951,1954,1958,1962,1965,1968,1971,1974,1977,
+1979,1981,1983,1985,1986,1987,1988,1989,1989,1989,1989,1989,1989,1988,1987,1986,1985,1984,1982,1981,
+1980,1978,1977,1976,1975,1974,1973,1972,1971,1971,1970,1969,1968,1967,1967,1966,1964,1964,1963,1962,
+1961,1960,1959,1958,1958,1957,1957,1956,1956,1956,1956,1956,1956,1956,1956,1956,1956,1956,1957,1957,
+1957,1958,1958,1958,1959,1959,1960,1961,1961,1962,1963,1964,1964,1965,1966,1967,1968,1969,1970,1971,
+1972,1973,1974,1975,1976,1977,1978,1979,1980,1982,1983,1984,1986,1987,1988,1990,1991,1992,1993,1995,
+1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2007,2008,2010,2011,2012,2014,2015,2017,2018,2019,
+2020,2022,2023,2024,2025,2026,2027,2028,2028,2029,2030,2031,2032,2033,2034,2035,2036,2036,2037,2038,
+2038,2039,2039,2040,2040,2041,2041,2041,2042,2042,2042,2043,2043,2044,2112,2113,2114,2115,2116,2117,
+2118,2119,2120,2121,2122,2123,2124,2125,2127,2128,2129,2131,2132,2132,2133,2133,2133,2133,2133,2132,
+2131,2130,2129,2127,2126,2124,2123,2121,2120,2118,2117,2116,2115,2114,2113,2112,2111,2111,2110,2110,
+2109,2109,2109,2110,2110,2111,2112,2113,2115,2116,2118,2120,2122,2123,2125,2127,2128,2130,2131,2132,
+2132,2133,2134,2134,2135,2136,2137,2138,2140,2141,2143,2145,2147,2149,2151,2153,2155,2157,2159,2161,
+2163,2165,2167,2169,2170,2170,2170,2170,2169,2168,2167,2165,2164,2162,2162,2161,2161,2161,2162,2162,
+2163,2163,2163,2163,2162,2161,2159,2156,2154,2150,2147,2143,2140,2136,2133,2130,2127,2124,2122,2121,
+2119,2118,2118,2117,2117,2116,2116,2115,2115,2114,2113,2112,2111,2110,2109,2107,2105,2103,2101,2099,
+2096,2093,2090,2086,2083,2079,2075,2072,2068,2064,2060,2056,2052,2047,2043,2038,2034,2029,2024,2019,
+2014,2007,2001,1993,1985,1976,1967,1957,1947,1936,1926,1916,1906,1897,1887,1878,1870,1861,1853,1845,
+1838,1831,1825,1819,1814,1809,1805,1801,1797,1794,1791,1788,1785,1784,1783,1782,1783,1784,1785,1787,
+1789,1791,1793,1795,1797,1799,1801,1803,1806,1809,1812,1816,1819,1823,1826,1830,1833,1836,1839,1841,
+1844,1846,1848,1850,1852,1853,1855,1857,1860,1863,1866,1870,1875,1880,1885,1889,1893,1895,1894,1891,
+1885,1875,1862,1847,1829,1810,1791,1771,1752,1733,1716,1701,1687,1674,1662,1651,1641,1633,1625,1618,
+1614,1610,1609,1609,1611,1614,1618,1623,1629,1635,1640,1646,1651,1656,1661,1665,1669,1672,1675,1677,
+1678,1679,1678,1677,1674,1671,1668,1664,1660,1655,1651,1647,1643,1639,1635,1631,1627,1623,1618,1614,
+1610,1606,1602,1598,1594,1589,1585,1580,1575,1570,1564,1558,1552,1546,1539,1533,1526,1519,1512,1506,
+1499,1493,1487,1481,1476,1470,1466,1461,1457,1452,1448,1444,1440,1435,1431,1426,1422,1417,1413,1410,
+1406,1404,1401,1399,1397,1396,1394,1393,1392,1391,1390,1389,1388,1387,1386,1385,1384,1383,1382,1381,
+1380,1379,1377,1376,1374,1371,1369,1366,1362,1358,1354,1350,1346,1342,1337,1332,1328,1323,1318,1312,
+1307,1301,1295,1289,1283,1276,1269,1263,1256,1250,1243,1236,1230,1224,1218,1212,1206,1201,1196,1191,
+1187,1183,1179,1175,1172,1169,1166,1163,1161,1158,1155,1153,1150,1147,1144,1142,1139,1136,1133,1130,
+1127,1124,1121,1118,1115,1112,1109,1105,1102,1098,1094,1089,1085,1081,1076,1072,1068,1064,1061,1057,
+1055,1052,1051,1049,1048,1047,1046,1045,1044,1043,1042,1041,1039,1038,1036,1034,1032,1030,1028,1026,
+1024,1022,1020,1017,1015,1013,1011,1008,1006,1003,1001,998,995,993,990,988,985,983,980,978,
+975,973,971,969,968,966,965,963,962,960,959,958,956,955,953,952,950,948,946,944,
+941,939,937,934,932,929,927,925,922,920,918,915,913,911,909,908,906,905,904,903,
+903,903,903,903,904,905,906,908,910,913,915,919,922,925,929,932,935,937,939,941,
+942,943,944,946,947,949,951,953,956,960,964,969,975,981,987,994,1001,1008,1015,1021,
+1026,1031,1035,1038,1041,1042,1043,1043,1042,1042,1042,1041,1041,1042,1043,1045,1047,1049,1052,1055,
+1058,1061,1064,1066,1068,1069,1069,1069,1068,1066,1064,1062,1059,1056,1054,1052,1050,1048,1046,1045,
+1043,1041,1039,1036,1033,1029,1025,1020,1015,1010,1004,998,992,986,980,974,968,962,956,950,
+944,938,932,927,921,916,911,907,902,899,896,894,892,891,891,892,894,897,901,905,
+910,916,921,927,933,938,944,949,953,958,962,966,969,973,977,980,983,987,990,993,
+996,998,1001,1004,1006,1009,1011,1014,1017,1020,1022,1025,1027,1030,1031,1033,1034,1035,1036,1037,
+1038,1038,1038,1039,1039,1039,1039,1040,1040,1040,1040,1040,1040,1040,1041,1041,1041,1041,1042,1042,
+1042,1042,1042,1042,1041,1041,1041,1040,1040,1040,1039,1039,1038,1037,1037,1036,1036,1036,1036,1036,
+1036,1036,1036,1035,1035,1035,1034,1033,1032,1030,1029,1027,1025,1023,1021,1019,1017,1016,1015,1014,
+1013,1012,1012,1012,1012,1012,1012,1012,1012,1012,1012,1012,1011,1011,1011,1010,1010,1010,1009,1009,
+1009,1009,1009,1009,1009,1010,1011,1011,1013,1014,1015,1017,1018,1020,1022,1024,1026,1029,1031,1034,
+1036,1039,1042,1045,1047,1050,1053,1056,1059,1061,1064,1067,1069,1071,1073,1075,1076,1077,1078,1079,
+1081,1083,1084,1086,1089,1091,1092,1093,1094,1095,1094,1094,1094,1094,1094,1095,1096,1097,1099,1101,
+1103,1105,1107,1109,1110,1111,1112,1114,1115,1117,1119,1121,1123,1126,1128,1130,1132,1134,1136,1138,
+1141,1143,1146,1149,1152,1155,1159,1162,1166,1169,1172,1175,1178,1181,1184,1187,1190,1193,1197,1201,
+1206,1210,1215,1221,1226,1230,1235,1239,1243,1247,1250,1254,1257,1260,1264,1267,1270,1274,1277,1280,
+1282,1285,1287,1289,1291,1292,1294,1295,1297,1298,1299,1301,1302,1304,1305,1307,1309,1311,1314,1316,
+1319,1322,1325,1328,1331,1335,1338,1341,1344,1347,1350,1352,1354,1357,1359,1361,1363,1365,1367,1370,
+1373,1377,1380,1384,1388,1391,1395,1398,1401,1403,1406,1408,1410,1411,1413,1414,1416,1417,1418,1418,
+1419,1420,1421,1422,1423,1425,1427,1429,1432,1434,1437,1439,1441,1443,1446,1448,1450,1453,1456,1459,
+1463,1467,1470,1474,1477,1481,1483,1486,1488,1490,1492,1494,1496,1499,1501,1504,1506,1509,1512,1514,
+1517,1519,1522,1525,1528,1531,1535,1538,1542,1546,1549,1553,1556,1559,1563,1566,1569,1572,1574,1577,
+1580,1582,1584,1586,1587,1588,1589,1590,1590,1590,1590,1590,1590,1590,1590,1591,1592,1594,1596,1598,
+1601,1605,1608,1611,1614,1618,1620,1623,1626,1629,1632,1635,1638,1641,1645,1649,1653,1657,1661,1664,
+1668,1671,1675,1678,1681,1684,1686,1688,1690,1691,1692,1693,1693,1693,1692,1691,1690,1689,1688,1687,
+1687,1686,1685,1685,1684,1684,1683,1683,1682,1682,1682,1682,1682,1682,1683,1684,1685,1687,1688,1690,
+1693,1695,1697,1699,1701,1703,1705,1708,1710,1712,1715,1717,1720,1722,1725,1727,1730,1732,1734,1736,
+1738,1740,1742,1744,1745,1747,1748,1750,1751,1752,1753,1755,1756,1757,1758,1759,1760,1762,1763,1764,
+1765,1766,1767,1768,1769,1770,1771,1772,1773,1775,1776,1778,1779,1781,1782,1784,1785,1787,1788,1790,
+1793,1795,1797,1800,1802,1805,1807,1810,1812,1814,1816,1818,1820,1822,1824,1826,1827,1829,1831,1834,
+1836,1838,1840,1842,1845,1847,1850,1852,1855,1859,1862,1866,1870,1875,1880,1886,1893,1900,1907,1915,
+1923,1931,1939,1947,1955,1962,1969,1975,1981,1987,1992,1997,2002,2007,2012,2017,2022,2028,2033,2038,
+2043,2048,2052,2056,2059,2062,2064,2065,2066,2067,2067,2067,2067,2067,2066,2065,2064,2063,2061,2059,
+2056,2052,2047,2042,2036,2029,2021,2014,2006,1998,1991,1985,1980,1976,1973,1972,1972,1973,1976,1979,
+1983,1987,1991,1995,1998,2001,2003,2004,2004,2003,2001,1999,1996,1993,1989,1986,1983,1980,1977,1975,
+1973,1971,1970,1970,1970,1971,1972,1974,1977,1980,1983,1987,1991,1995,1999,2003,2006,2010,2013,2016,
+2019,2021,2023,2024,2026,2027,2027,2028,2028,2029,2029,2029,2029,2029,2029,2029,2028,2028,2027,2026,
+2025,2025,2024,2023,2022,2021,2021,2020,2019,2018,2018,2017,2016,2016,2015,2014,2014,2014,2013,2013,
+2013,2012,2012,2012,2011,2011,2011,2011,2010,2010,2010,2011,2011,2011,2011,2011,2012,2012,2013,2014,
+2014,2014,2015,2015,2015,2015,2015,2014,2014,2014,2014,2014,2015,2015,2016,2016,2017,2018,2018,2019,
+2019,2020,2020,2021,2021,2022,2023,2024,2025,2026,2027,2029,2030,2032,2033,2035,2037,2038,2040,2042,
+2043,2045,2047,2049,2051,2053,2055,2057,2059,2062,2064,2067,2069,2072,2074,2077,2079,2082,2084,2086,
+2088,2090,2092,2093,2095,2096,2097,2098,2099,2100,2101,2101,2102,2103,2103,2104,2104,2105,2105,2106,
+2106,2106,2107,2107,2108,2108,2109,2109,2110,2110,2110,2111,2111,2112,2112,2177,2178,2179,2181,2183,
+2184,2186,2188,2189,2191,2192,2193,2194,2194,2195,2195,2196,2196,2196,2197,2197,2197,2198,2198,2199,
+2200,2200,2201,2201,2201,2201,2201,2201,2201,2200,2199,2199,2198,2197,2196,2196,2195,2194,2193,2193,
+2192,2191,2190,2190,2190,2190,2190,2191,2193,2194,2196,2198,2199,2201,2202,2204,2205,2205,2205,2205,
+2205,2204,2204,2203,2202,2201,2201,2201,2200,2201,2201,2201,2202,2203,2203,2204,2204,2205,2206,2207,
+2208,2208,2209,2210,2211,2211,2212,2212,2212,2212,2213,2214,2216,2217,2220,2222,2225,2228,2232,2236,
+2241,2246,2251,2256,2261,2265,2268,2270,2270,2269,2266,2261,2256,2250,2245,2239,2233,2228,2223,2219,
+2214,2209,2204,2200,2195,2191,2187,2183,2179,2175,2172,2168,2163,2157,2151,2144,2136,2127,2118,2108,
+2097,2087,2076,2065,2053,2042,2031,2020,2009,1999,1989,1980,1971,1963,1956,1950,1945,1941,1939,1937,
+1937,1937,1938,1939,1940,1940,1940,1939,1938,1937,1935,1933,1932,1931,1930,1930,1929,1929,1929,1928,
+1928,1927,1926,1925,1923,1922,1920,1919,1917,1915,1914,1913,1912,1911,1911,1911,1911,1910,1910,1908,
+1907,1905,1903,1901,1900,1899,1899,1899,1900,1901,1902,1904,1905,1907,1908,1910,1911,1913,1914,1916,
+1917,1919,1920,1921,1922,1924,1925,1926,1928,1929,1930,1931,1931,1930,1928,1923,1918,1910,1901,1890,
+1878,1866,1853,1840,1828,1815,1803,1791,1780,1769,1758,1747,1737,1727,1717,1708,1700,1692,1684,1678,
+1671,1665,1660,1654,1649,1644,1638,1634,1629,1624,1620,1616,1611,1607,1603,1599,1595,1591,1587,1583,
+1580,1577,1575,1574,1573,1574,1574,1576,1578,1580,1583,1585,1588,1590,1591,1593,1593,1593,1593,1592,
+1591,1590,1588,1587,1585,1583,1582,1580,1579,1577,1576,1575,1573,1571,1569,1566,1563,1560,1556,1551,
+1546,1540,1534,1527,1521,1515,1509,1504,1500,1496,1493,1491,1489,1488,1487,1485,1483,1480,1477,1472,
+1467,1461,1454,1447,1440,1432,1425,1419,1412,1407,1402,1398,1394,1391,1387,1384,1382,1379,1376,1373,
+1370,1367,1364,1361,1358,1355,1351,1348,1344,1340,1336,1331,1326,1322,1317,1311,1306,1301,1295,1289,
+1284,1278,1272,1267,1261,1255,1249,1244,1238,1232,1226,1221,1215,1209,1204,1198,1193,1188,1183,1179,
+1174,1170,1165,1161,1157,1152,1148,1144,1140,1136,1132,1128,1125,1121,1118,1114,1111,1109,1106,1104,
+1103,1101,1100,1098,1097,1095,1093,1091,1089,1086,1083,1080,1076,1073,1069,1066,1064,1061,1059,1057,
+1055,1053,1051,1048,1046,1043,1040,1037,1034,1030,1027,1024,1022,1019,1016,1014,1011,1009,1007,1005,
+1002,1000,998,996,993,991,989,986,984,981,979,976,974,972,970,968,966,964,962,960,
+958,956,954,952,950,949,947,946,945,944,943,943,942,942,941,941,940,939,937,936,
+934,932,930,928,926,924,922,920,919,917,916,915,913,912,911,910,909,908,907,906,
+905,904,903,902,901,899,898,897,895,894,893,892,892,891,891,891,891,892,893,894,
+896,898,900,903,907,912,917,924,931,939,949,959,969,981,992,1003,1015,1025,1036,1046,
+1055,1063,1070,1077,1082,1087,1091,1094,1096,1098,1098,1098,1097,1096,1094,1092,1089,1087,1084,1081,
+1078,1075,1072,1069,1067,1065,1063,1062,1060,1059,1058,1057,1055,1054,1051,1048,1045,1042,1038,1034,
+1030,1026,1023,1020,1018,1016,1014,1013,1011,1010,1009,1007,1005,1002,999,996,992,987,982,977,
+972,967,962,957,951,945,939,933,927,920,914,908,902,897,893,890,888,888,888,889,
+892,894,898,901,905,908,911,914,917,919,922,925,927,930,934,937,941,944,948,951,
+954,957,959,961,963,965,967,969,971,972,974,975,976,977,978,979,980,982,983,984,
+986,987,989,991,992,994,995,996,997,998,998,998,999,999,999,999,999,999,999,999,
+999,999,998,998,998,998,998,997,997,997,997,997,997,997,997,997,997,997,996,996,
+995,994,994,993,992,991,991,990,989,989,988,988,987,987,986,985,984,983,982,981,
+980,978,977,975,974,972,971,970,969,968,968,967,967,967,966,966,965,965,964,964,
+963,963,963,963,963,963,963,964,964,965,966,967,969,970,972,974,976,978,980,982,
+984,986,988,989,991,993,994,995,997,999,1000,1002,1004,1007,1009,1012,1014,1017,1019,1021,
+1024,1027,1031,1035,1039,1043,1048,1051,1054,1056,1057,1057,1057,1056,1056,1057,1058,1060,1063,1067,
+1071,1075,1079,1082,1084,1086,1088,1089,1090,1092,1094,1096,1098,1101,1103,1106,1108,1111,1113,1116,
+1118,1120,1121,1122,1123,1123,1123,1123,1123,1124,1125,1127,1130,1134,1137,1142,1146,1150,1154,1159,
+1163,1167,1172,1177,1182,1187,1192,1196,1200,1205,1208,1212,1216,1220,1224,1228,1233,1237,1241,1245,
+1249,1252,1256,1259,1262,1266,1270,1275,1279,1283,1287,1291,1294,1296,1299,1301,1303,1305,1308,1311,
+1314,1318,1322,1326,1331,1335,1340,1344,1349,1353,1357,1361,1365,1368,1371,1374,1377,1380,1382,1384,
+1386,1388,1390,1391,1393,1394,1395,1396,1398,1399,1401,1403,1405,1408,1411,1415,1419,1424,1428,1433,
+1438,1443,1448,1452,1457,1460,1464,1468,1472,1476,1480,1484,1488,1492,1496,1500,1503,1505,1506,1507,
+1508,1508,1508,1509,1510,1512,1514,1517,1520,1523,1525,1528,1531,1534,1537,1539,1542,1544,1547,1549,
+1550,1551,1552,1552,1553,1553,1552,1552,1552,1552,1552,1553,1553,1554,1554,1555,1556,1558,1560,1561,
+1564,1566,1569,1571,1574,1577,1580,1583,1586,1588,1591,1593,1595,1597,1599,1600,1602,1604,1606,1608,
+1610,1613,1615,1618,1620,1622,1624,1625,1626,1627,1628,1630,1631,1633,1635,1637,1639,1641,1643,1645,
+1647,1649,1650,1652,1653,1654,1655,1657,1658,1660,1661,1663,1664,1665,1666,1668,1668,1669,1670,1671,
+1672,1673,1673,1674,1675,1676,1678,1679,1680,1681,1682,1683,1684,1685,1685,1685,1685,1685,1685,1685,
+1685,1685,1685,1686,1687,1688,1690,1692,1695,1698,1701,1703,1706,1709,1711,1714,1716,1718,1721,1723,
+1726,1728,1730,1733,1735,1738,1740,1742,1744,1746,1748,1750,1751,1752,1753,1754,1755,1755,1756,1757,
+1758,1760,1761,1763,1765,1768,1770,1772,1775,1777,1779,1782,1784,1787,1789,1792,1795,1798,1801,1804,
+1807,1810,1813,1815,1818,1820,1823,1826,1828,1831,1833,1836,1839,1841,1844,1847,1850,1853,1855,1858,
+1861,1863,1866,1868,1871,1873,1876,1879,1882,1885,1889,1893,1897,1901,1906,1912,1917,1923,1930,1937,
+1945,1952,1960,1969,1977,1986,1995,2003,2012,2020,2029,2037,2044,2052,2059,2065,2071,2077,2082,2086,
+2090,2094,2096,2099,2100,2101,2102,2103,2103,2103,2103,2102,2102,2101,2100,2099,2098,2096,2094,2092,
+2089,2086,2082,2077,2072,2066,2059,2052,2044,2036,2029,2021,2015,2009,2005,2002,2000,2000,2001,2003,
+2006,2009,2013,2017,2021,2025,2028,2030,2031,2032,2032,2031,2029,2027,2025,2022,2019,2016,2013,2010,
+2008,2007,2006,2006,2006,2008,2010,2013,2016,2019,2023,2027,2030,2034,2038,2042,2045,2048,2051,2054,
+2056,2059,2061,2063,2065,2066,2067,2068,2069,2069,2070,2070,2069,2069,2069,2068,2068,2067,2066,2066,
+2065,2064,2063,2063,2062,2061,2061,2060,2060,2060,2060,2060,2061,2061,2061,2062,2062,2062,2062,2062,
+2062,2062,2062,2062,2062,2062,2062,2062,2062,2062,2062,2063,2063,2064,2064,2065,2066,2066,2067,2067,
+2067,2068,2068,2068,2068,2068,2069,2069,2069,2069,2070,2070,2070,2070,2070,2071,2071,2071,2072,2072,
+2072,2073,2074,2074,2075,2075,2076,2077,2078,2080,2082,2084,2086,2088,2091,2093,2096,2098,2100,2102,
+2104,2106,2107,2109,2110,2111,2113,2114,2115,2117,2118,2120,2123,2125,2128,2131,2134,2138,2142,2145,
+2149,2152,2155,2158,2161,2163,2165,2167,2169,2170,2171,2172,2173,2174,2175,2175,2175,2176,2176,2176,
+2176,2176,2176,2175,2175,2175,2174,2174,2174,2174,2173,2174,2174,2175,2175,2177,2239,2241,2243,2245,
+2247,2250,2253,2255,2258,2261,2264,2267,2270,2272,2274,2277,2279,2281,2282,2284,2286,2288,2290,2292,
+2294,2297,2299,2301,2303,2305,2307,2308,2309,2309,2309,2307,2305,2303,2300,2297,2294,2290,2287,2285,
+2282,2280,2279,2278,2277,2277,2278,2278,2279,2280,2281,2282,2283,2284,2285,2286,2287,2288,2288,2288,
+2288,2287,2285,2283,2282,2280,2278,2277,2276,2275,2274,2273,2272,2271,2271,2270,2269,2269,2268,2268,
+2268,2268,2268,2267,2266,2265,2263,2262,2261,2260,2260,2260,2261,2261,2262,2262,2262,2261,2260,2259,
+2258,2257,2256,2256,2256,2258,2260,2263,2268,2273,2278,2283,2287,2289,2290,2288,2283,2276,2266,2255,
+2242,2228,2214,2200,2186,2173,2161,2149,2137,2125,2114,2103,2093,2083,2074,2067,2060,2055,2051,2048,
+2045,2043,2042,2041,2041,2041,2041,2042,2043,2045,2046,2048,2049,2050,2051,2052,2053,2053,2054,2053,
+2053,2052,2050,2048,2045,2043,2040,2037,2035,2032,2031,2030,2028,2027,2026,2024,2021,2017,2013,2007,
+2001,1995,1988,1982,1976,1970,1966,1962,1958,1956,1954,1952,1951,1949,1947,1944,1941,1938,1934,1930,
+1926,1921,1917,1913,1908,1904,1900,1896,1892,1888,1885,1881,1877,1874,1871,1868,1865,1863,1861,1861,
+1861,1862,1864,1865,1867,1868,1869,1869,1868,1866,1863,1859,1855,1851,1847,1842,1836,1830,1824,1818,
+1810,1803,1795,1787,1779,1772,1764,1757,1750,1743,1736,1730,1723,1718,1712,1707,1703,1699,1695,1692,
+1689,1685,1682,1678,1674,1669,1664,1659,1654,1648,1642,1637,1630,1624,1618,1611,1604,1596,1588,1581,
+1573,1565,1557,1549,1541,1533,1525,1517,1510,1503,1496,1491,1486,1483,1481,1480,1480,1481,1483,1485,
+1488,1491,1495,1499,1503,1507,1511,1515,1519,1522,1525,1528,1530,1532,1533,1533,1534,1534,1534,1534,
+1533,1533,1532,1530,1529,1526,1524,1521,1518,1515,1511,1508,1504,1501,1498,1495,1492,1489,1486,1483,
+1481,1478,1475,1471,1467,1463,1458,1453,1447,1441,1435,1429,1423,1417,1411,1404,1398,1392,1386,1380,
+1374,1368,1363,1358,1354,1351,1349,1347,1346,1344,1342,1340,1338,1335,1331,1327,1322,1318,1313,1308,
+1302,1297,1292,1286,1281,1275,1270,1264,1259,1253,1248,1243,1238,1233,1228,1223,1217,1212,1207,1202,
+1197,1191,1186,1181,1176,1171,1165,1160,1155,1149,1144,1139,1135,1130,1126,1122,1119,1115,1112,1109,
+1107,1104,1102,1099,1097,1094,1092,1089,1086,1084,1080,1077,1074,1071,1068,1065,1062,1060,1057,1055,
+1052,1049,1047,1044,1041,1038,1035,1032,1029,1025,1023,1019,1017,1014,1011,1008,1005,1003,1000,997,
+994,992,989,986,984,981,979,976,974,972,969,967,964,962,959,957,955,953,951,949,
+947,945,943,941,939,937,935,933,931,930,928,926,925,923,921,919,918,916,914,913,
+911,909,907,906,904,903,901,900,899,897,896,894,893,892,890,888,887,885,884,882,
+881,879,877,876,874,873,871,870,869,867,866,865,865,864,864,864,864,865,866,867,
+868,870,871,873,875,877,879,881,883,885,888,891,894,897,900,904,908,913,918,923,
+930,937,945,954,964,975,986,997,1008,1019,1029,1038,1047,1054,1060,1065,1070,1073,1076,1078,
+1079,1080,1080,1080,1079,1078,1077,1075,1073,1072,1070,1068,1066,1064,1062,1059,1056,1053,1048,1044,
+1039,1033,1028,1022,1017,1011,1007,1003,1000,998,996,996,996,997,999,1001,1004,1006,1008,1009,
+1010,1009,1008,1006,1002,997,991,983,974,963,952,940,928,916,905,895,887,880,874,869,
+865,863,860,858,856,855,853,851,850,849,848,847,847,848,849,850,852,854,856,859,
+861,864,867,869,872,876,879,882,886,890,893,897,900,904,908,911,915,919,922,925,
+927,930,932,933,934,935,935,936,936,936,937,937,937,938,938,939,939,940,940,940,
+941,941,941,940,940,940,940,939,939,939,939,939,939,939,940,940,940,941,941,941,
+942,942,943,943,943,943,943,943,943,943,943,942,942,942,941,941,941,940,940,940,
+940,940,940,939,939,939,938,937,937,936,935,935,934,934,934,934,934,935,935,935,
+936,936,936,937,937,938,939,939,941,942,943,944,946,948,950,952,954,956,958,961,
+963,965,967,969,972,974,976,978,980,982,985,988,991,994,998,1001,1005,1008,1011,1013,
+1014,1015,1016,1017,1018,1019,1022,1024,1027,1030,1032,1034,1035,1037,1038,1039,1040,1043,1046,1049,
+1053,1057,1061,1064,1067,1068,1069,1070,1070,1070,1070,1071,1072,1074,1076,1079,1081,1084,1087,1090,
+1094,1097,1101,1104,1108,1112,1116,1120,1124,1128,1132,1137,1141,1145,1149,1153,1157,1161,1165,1168,
+1172,1175,1179,1182,1185,1189,1193,1197,1201,1205,1210,1216,1221,1226,1232,1237,1243,1248,1252,1257,
+1261,1265,1269,1273,1277,1281,1284,1287,1291,1293,1296,1299,1301,1304,1307,1310,1313,1315,1318,1321,
+1324,1327,1329,1331,1333,1335,1337,1338,1339,1339,1339,1339,1339,1338,1337,1336,1336,1335,1335,1335,
+1336,1337,1338,1339,1342,1345,1348,1353,1357,1363,1368,1373,1379,1384,1388,1393,1397,1401,1406,1411,
+1416,1422,1427,1433,1439,1445,1451,1457,1463,1468,1474,1479,1484,1489,1494,1498,1502,1506,1509,1513,
+1516,1520,1524,1528,1533,1538,1542,1547,1551,1555,1559,1563,1567,1570,1574,1578,1582,1586,1590,1594,
+1598,1601,1603,1605,1607,1607,1607,1606,1605,1603,1600,1597,1594,1592,1589,1587,1585,1584,1583,1582,
+1582,1583,1584,1585,1587,1589,1592,1594,1597,1600,1603,1606,1608,1611,1613,1614,1616,1617,1619,1620,
+1621,1622,1622,1623,1624,1624,1625,1626,1627,1627,1628,1629,1629,1630,1630,1630,1630,1630,1630,1631,
+1632,1632,1634,1635,1636,1638,1640,1643,1645,1648,1651,1654,1656,1659,1661,1663,1664,1665,1666,1667,
+1668,1668,1669,1669,1670,1671,1671,1672,1673,1673,1674,1675,1676,1677,1678,1678,1679,1680,1680,1681,
+1681,1682,1682,1683,1683,1684,1684,1685,1686,1687,1689,1691,1694,1696,1700,1703,1706,1710,1713,1716,
+1718,1721,1723,1725,1727,1728,1730,1732,1733,1735,1736,1738,1739,1741,1742,1744,1746,1748,1750,1752,
+1754,1757,1759,1762,1765,1768,1771,1773,1777,1780,1782,1786,1789,1792,1795,1797,1800,1803,1806,1809,
+1813,1816,1819,1822,1826,1829,1833,1837,1841,1845,1849,1853,1857,1861,1865,1869,1873,1877,1880,1884,
+1888,1891,1895,1899,1902,1906,1909,1913,1917,1921,1925,1930,1935,1940,1946,1952,1958,1964,1971,1977,
+1984,1991,1998,2005,2012,2019,2026,2033,2040,2047,2054,2060,2067,2073,2079,2084,2090,2095,2100,2105,
+2109,2113,2116,2118,2121,2122,2124,2124,2125,2124,2124,2122,2120,2118,2115,2111,2107,2101,2096,2089,
+2082,2075,2068,2061,2054,2048,2042,2038,2034,2031,2029,2028,2028,2028,2029,2030,2030,2031,2032,2032,
+2031,2030,2029,2028,2027,2025,2024,2023,2022,2022,2022,2022,2022,2023,2023,2024,2025,2026,2027,2028,
+2029,2031,2032,2033,2035,2037,2040,2043,2047,2051,2055,2060,2066,2071,2076,2081,2086,2090,2094,2097,
+2100,2103,2105,2107,2109,2110,2110,2110,2110,2110,2109,2108,2107,2106,2105,2105,2104,2104,2103,2103,
+2103,2103,2102,2102,2102,2101,2101,2100,2100,2100,2100,2100,2101,2101,2101,2101,2101,2101,2101,2101,
+2101,2101,2101,2101,2102,2102,2103,2103,2104,2104,2104,2105,2105,2106,2107,2107,2108,2109,2110,2111,
+2112,2113,2115,2116,2117,2118,2119,2119,2120,2121,2121,2122,2122,2122,2123,2123,2124,2124,2125,2125,
+2126,2127,2128,2130,2131,2133,2135,2137,2139,2141,2143,2145,2148,2150,2153,2155,2158,2160,2162,2164,
+2166,2168,2169,2170,2171,2171,2172,2172,2173,2173,2174,2175,2177,2180,2182,2186,2189,2193,2197,2201,
+2205,2209,2212,2215,2218,2221,2223,2225,2226,2228,2229,2230,2231,2231,2232,2232,2233,2233,2233,2233,
+2233,2233,2233,2233,2233,2233,2233,2234,2234,2234,2234,2234,2235,2235,2236,2237,2239,2311,2313,2316,
+2319,2322,2325,2329,2333,2337,2342,2347,2353,2359,2365,2370,2376,2381,2385,2389,2391,2394,2395,2396,
+2397,2398,2398,2399,2399,2399,2399,2400,2400,2399,2399,2399,2398,2397,2395,2393,2391,2389,2386,2383,
+2381,2378,2376,2374,2372,2371,2370,2368,2367,2367,2366,2366,2366,2366,2366,2366,2366,2366,2366,2365,
+2365,2364,2363,2361,2359,2356,2353,2348,2343,2337,2330,2323,2316,2309,2301,2294,2287,2280,2274,2268,
+2263,2259,2255,2250,2245,2240,2234,2227,2220,2214,2208,2203,2200,2197,2195,2193,2191,2188,2186,2183,
+2180,2179,2177,2176,2176,2175,2174,2172,2169,2166,2162,2158,2154,2149,2145,2142,2138,2135,2131,2128,
+2125,2121,2118,2115,2112,2109,2106,2103,2101,2100,2099,2100,2101,2103,2105,2108,2111,2113,2116,2118,
+2120,2122,2123,2123,2123,2123,2122,2121,2119,2118,2116,2114,2112,2110,2108,2106,2103,2100,2097,2094,
+2090,2087,2083,2080,2076,2073,2070,2066,2063,2059,2054,2049,2044,2038,2032,2025,2018,2011,2003,1996,
+1988,1980,1973,1966,1960,1953,1948,1942,1937,1931,1926,1920,1915,1910,1905,1900,1896,1891,1887,1883,
+1879,1875,1871,1867,1863,1860,1856,1852,1848,1845,1841,1837,1833,1830,1826,1823,1820,1818,1816,1814,
+1813,1812,1811,1811,1810,1810,1809,1807,1805,1802,1798,1794,1789,1783,1778,1773,1768,1763,1759,1755,
+1751,1747,1742,1737,1732,1727,1721,1716,1710,1705,1701,1696,1691,1687,1683,1679,1675,1672,1669,1667,
+1664,1662,1660,1658,1655,1652,1649,1646,1644,1641,1639,1637,1634,1632,1629,1625,1621,1617,1612,1607,
+1602,1596,1591,1585,1580,1574,1568,1562,1556,1550,1544,1537,1530,1523,1515,1507,1498,1490,1481,1473,
+1465,1457,1449,1442,1435,1429,1424,1421,1418,1418,1419,1422,1425,1429,1434,1439,1443,1447,1451,1454,
+1458,1461,1464,1467,1470,1472,1474,1476,1477,1478,1478,1478,1477,1475,1473,1470,1466,1462,1457,1453,
+1448,1444,1441,1438,1436,1434,1433,1431,1430,1428,1426,1423,1420,1417,1413,1410,1406,1402,1398,1394,
+1390,1385,1381,1377,1373,1369,1366,1362,1359,1355,1352,1348,1344,1341,1337,1332,1328,1324,1319,1314,
+1309,1304,1298,1293,1287,1281,1275,1269,1263,1258,1252,1246,1240,1235,1229,1224,1218,1213,1208,1203,
+1198,1193,1189,1184,1180,1177,1173,1170,1167,1163,1160,1156,1152,1148,1143,1139,1134,1130,1125,1121,
+1116,1111,1106,1101,1096,1091,1086,1081,1076,1071,1066,1061,1057,1053,1049,1046,1042,1039,1036,1034,
+1031,1028,1025,1022,1020,1017,1014,1011,1008,1005,1002,999,996,993,990,987,984,981,978,975,
+972,969,966,963,960,957,953,951,948,945,942,940,937,934,932,929,927,925,922,920,
+918,916,914,911,909,907,905,903,901,900,898,896,894,892,890,888,886,884,882,881,
+879,877,876,874,872,871,869,868,867,866,864,863,862,862,861,860,859,858,857,856,
+854,853,851,849,848,846,845,843,842,840,838,836,835,833,832,830,829,827,826,825,
+824,823,822,821,821,820,820,820,821,821,822,823,825,828,831,834,838,841,845,849,
+853,857,862,868,875,883,892,902,914,925,937,948,960,971,981,992,1002,1011,1020,1028,
+1035,1041,1046,1050,1053,1055,1056,1056,1057,1057,1057,1057,1058,1058,1057,1057,1055,1053,1050,1046,
+1041,1036,1030,1024,1018,1013,1007,1002,997,993,989,986,984,982,982,982,983,985,988,992,
+996,1000,1003,1007,1009,1011,1011,1009,1007,1003,998,991,983,974,964,952,940,926,912,897,
+882,867,853,840,828,819,811,805,800,797,796,795,795,796,798,799,802,804,807,810,
+813,817,820,824,828,832,836,839,843,848,852,856,860,865,869,874,878,883,887,891,
+896,900,905,909,913,917,921,925,929,932,936,939,942,944,946,947,948,949,948,948,
+947,946,945,943,942,940,938,936,935,933,932,931,931,930,930,930,931,931,932,932,
+933,934,934,935,935,936,936,936,936,936,936,936,936,935,935,934,934,933,933,932,
+932,932,933,934,934,936,936,937,938,939,939,939,940,940,941,941,942,943,944,946,
+947,948,950,952,954,957,960,962,965,967,969,971,972,973,975,977,978,980,982,984,
+986,988,990,993,995,998,1001,1003,1006,1007,1008,1008,1008,1007,1007,1007,1008,1009,1011,1012,
+1013,1014,1013,1012,1011,1010,1009,1008,1009,1009,1010,1011,1012,1013,1013,1013,1014,1015,1016,1019,
+1021,1024,1027,1029,1031,1032,1032,1033,1033,1034,1036,1038,1041,1044,1048,1052,1057,1062,1067,1072,
+1078,1084,1090,1096,1102,1108,1113,1118,1121,1125,1128,1130,1133,1135,1137,1139,1142,1144,1147,1150,
+1154,1158,1162,1167,1171,1176,1181,1186,1190,1194,1198,1202,1205,1208,1211,1215,1218,1222,1225,1229,
+1233,1237,1240,1244,1247,1251,1254,1256,1259,1262,1265,1267,1270,1273,1276,1279,1282,1286,1290,1294,
+1298,1303,1307,1311,1314,1317,1320,1322,1325,1327,1330,1332,1335,1338,1340,1342,1345,1346,1348,1349,
+1351,1352,1353,1355,1356,1358,1359,1360,1361,1362,1363,1363,1363,1364,1364,1363,1363,1363,1363,1363,
+1363,1363,1363,1364,1364,1365,1365,1366,1367,1368,1370,1372,1374,1377,1381,1385,1389,1394,1399,1404,
+1410,1416,1422,1428,1434,1440,1446,1452,1459,1465,1471,1478,1484,1489,1495,1500,1505,1509,1513,1517,
+1521,1525,1529,1533,1537,1541,1545,1548,1552,1554,1557,1559,1560,1561,1562,1562,1562,1562,1561,1561,
+1561,1561,1561,1562,1563,1564,1566,1569,1572,1575,1579,1583,1587,1592,1596,1600,1605,1609,1613,1617,
+1620,1624,1627,1630,1633,1636,1638,1641,1643,1645,1647,1650,1652,1654,1657,1660,1663,1666,1669,1671,
+1674,1676,1679,1680,1682,1683,1684,1685,1685,1686,1686,1686,1686,1686,1685,1685,1684,1684,1683,1682,
+1682,1681,1680,1680,1679,1678,1678,1677,1676,1676,1675,1674,1674,1673,1673,1673,1673,1674,1675,1676,
+1678,1680,1681,1683,1685,1686,1688,1689,1691,1692,1693,1693,1693,1693,1693,1692,1691,1691,1691,1691,
+1692,1693,1694,1696,1698,1700,1702,1704,1706,1709,1711,1714,1717,1720,1723,1726,1729,1732,1736,1740,
+1744,1748,1752,1755,1759,1763,1768,1772,1776,1780,1785,1790,1794,1799,1803,1807,1812,1816,1820,1824,
+1828,1832,1836,1840,1844,1848,1852,1856,1860,1864,1868,1872,1875,1879,1883,1887,1891,1896,1900,1904,
+1909,1913,1918,1923,1928,1933,1938,1943,1948,1953,1959,1964,1970,1976,1983,1989,1996,2003,2010,2017,
+2023,2030,2036,2042,2048,2054,2060,2065,2071,2076,2081,2086,2091,2096,2101,2106,2111,2116,2121,2126,
+2132,2137,2141,2146,2149,2152,2155,2157,2158,2159,2158,2158,2156,2154,2151,2148,2144,2139,2134,2129,
+2123,2118,2112,2105,2099,2093,2086,2080,2074,2068,2062,2057,2051,2047,2042,2038,2034,2030,2027,2024,
+2022,2020,2018,2017,2016,2015,2014,2014,2014,2014,2015,2016,2018,2020,2022,2025,2028,2031,2034,2037,
+2041,2045,2049,2053,2057,2062,2066,2071,2075,2080,2084,2089,2093,2097,2101,2104,2107,2109,2111,2112,
+2113,2113,2113,2113,2113,2112,2112,2111,2111,2110,2108,2107,2105,2104,2102,2101,2099,2098,2097,2096,
+2095,2095,2094,2093,2093,2092,2092,2092,2092,2092,2092,2093,2093,2094,2095,2096,2098,2099,2100,2100,
+2101,2102,2103,2103,2104,2105,2106,2107,2108,2109,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,
+2119,2120,2122,2123,2124,2125,2127,2128,2129,2131,2132,2134,2136,2137,2140,2142,2145,2147,2150,2153,
+2156,2160,2163,2166,2169,2173,2176,2179,2182,2186,2189,2192,2195,2198,2201,2204,2207,2210,2213,2215,
+2218,2221,2223,2226,2228,2231,2233,2235,2238,2240,2243,2246,2248,2251,2254,2257,2260,2264,2267,2270,
+2273,2276,2278,2281,2283,2286,2288,2290,2292,2293,2295,2297,2298,2299,2300,2301,2302,2302,2302,2302,
+2301,2301,2300,2299,2298,2297,2297,2297,2297,2297,2298,2299,2300,2302,2304,2306,2308,2311,2371,2375,
+2379,2382,2386,2390,2394,2398,2402,2406,2410,2414,2418,2422,2426,2429,2433,2437,2440,2444,2447,2450,
+2452,2452,2452,2451,2449,2447,2446,2445,2444,2444,2444,2444,2444,2444,2444,2443,2443,2443,2442,2441,
+2440,2439,2437,2436,2435,2435,2436,2437,2438,2438,2437,2435,2432,2429,2425,2421,2418,2414,2410,2405,
+2400,2393,2386,2379,2371,2365,2358,2352,2347,2342,2337,2332,2327,2323,2319,2316,2312,2309,2305,2302,
+2301,2301,2303,2307,2313,2319,2325,2329,2331,2331,2329,2327,2324,2323,2322,2322,2323,2322,2321,2317,
+2313,2308,2302,2297,2292,2288,2283,2279,2273,2267,2260,2253,2245,2238,2230,2222,2214,2206,2198,2191,
+2183,2177,2172,2168,2165,2163,2161,2159,2157,2154,2151,2147,2144,2140,2137,2134,2132,2129,2128,2126,
+2125,2124,2124,2124,2123,2123,2122,2121,2119,2116,2113,2109,2104,2098,2093,2087,2082,2077,2072,2068,
+2064,2061,2057,2053,2049,2044,2039,2033,2028,2022,2016,2010,2005,1999,1994,1989,1984,1979,1974,1969,
+1964,1959,1954,1947,1941,1935,1928,1922,1916,1911,1905,1901,1896,1891,1887,1882,1877,1871,1866,1860,
+1854,1849,1844,1839,1834,1830,1825,1821,1816,1811,1806,1801,1796,1792,1788,1786,1783,1781,1779,1777,
+1775,1772,1769,1766,1763,1760,1757,1755,1753,1751,1749,1747,1745,1742,1739,1735,1730,1725,1719,1713,
+1707,1701,1695,1690,1685,1679,1675,1670,1666,1662,1658,1655,1652,1650,1648,1645,1643,1641,1638,1636,
+1634,1632,1629,1627,1625,1622,1620,1617,1615,1612,1608,1605,1602,1598,1594,1591,1587,1583,1580,1577,
+1573,1570,1566,1563,1559,1555,1551,1547,1544,1540,1536,1532,1528,1523,1518,1513,1507,1501,1495,1489,
+1482,1476,1470,1463,1457,1451,1445,1439,1433,1428,1422,1417,1411,1405,1399,1393,1387,1380,1374,1368,
+1362,1357,1352,1347,1342,1337,1333,1329,1325,1321,1318,1316,1314,1314,1314,1316,1318,1321,1325,1328,
+1331,1333,1335,1335,1335,1334,1332,1330,1327,1326,1325,1324,1325,1326,1327,1329,1331,1332,1332,1332,
+1332,1330,1329,1328,1326,1325,1324,1323,1322,1321,1320,1320,1319,1319,1318,1317,1316,1314,1312,1310,
+1307,1303,1299,1294,1289,1284,1279,1274,1269,1264,1259,1253,1248,1242,1237,1232,1227,1221,1216,1212,
+1207,1202,1198,1194,1190,1186,1182,1178,1174,1170,1165,1161,1157,1153,1148,1144,1139,1134,1129,1123,
+1117,1112,1106,1100,1094,1089,1083,1078,1073,1068,1064,1060,1056,1052,1048,1044,1041,1038,1034,1031,
+1028,1026,1023,1020,1018,1015,1012,1010,1007,1003,1000,997,994,990,987,984,981,977,974,971,
+967,963,960,956,952,949,945,942,938,935,931,928,925,921,918,915,912,909,906,903,
+900,897,895,892,890,887,885,882,880,877,875,873,871,869,866,864,862,860,858,856,
+854,853,851,849,848,846,845,843,842,840,839,837,836,835,833,832,831,829,828,826,
+825,823,822,820,818,816,813,811,809,807,805,802,800,798,796,794,792,790,788,786,
+784,783,781,779,778,776,775,774,773,773,772,772,772,773,774,776,778,780,783,787,
+790,794,799,804,809,815,822,829,836,844,852,861,869,878,886,895,904,913,921,930,
+938,947,956,965,974,983,991,999,1006,1012,1016,1020,1022,1024,1025,1026,1027,1028,1028,1027,
+1026,1025,1022,1018,1014,1008,1002,995,988,980,971,962,953,944,936,927,920,913,908,904,
+902,903,905,909,915,923,931,939,947,953,956,957,955,950,942,931,917,902,886,868,
+851,834,819,805,793,784,777,772,768,767,766,766,768,770,773,776,780,785,790,796,
+801,807,812,818,823,828,833,838,843,848,853,858,863,868,873,878,882,886,890,894,
+897,900,903,906,909,912,915,918,921,923,926,928,930,931,933,934,935,936,938,940,
+942,944,946,949,951,953,955,956,957,958,958,959,960,961,962,963,964,966,967,969,
+969,970,970,969,969,968,967,966,966,966,967,967,968,969,969,970,971,972,973,974,
+974,973,972,970,967,965,963,961,961,961,963,965,967,970,972,975,977,978,980,982,
+984,986,988,990,992,994,997,999,1001,1003,1006,1008,1010,1011,1012,1013,1013,1014,1014,1013,
+1013,1012,1011,1011,1010,1010,1010,1010,1011,1012,1013,1014,1015,1015,1015,1015,1015,1015,1016,1016,
+1017,1016,1015,1014,1011,1009,1007,1005,1003,1003,1003,1004,1005,1007,1008,1009,1009,1010,1011,1011,
+1012,1013,1014,1015,1017,1020,1022,1025,1028,1031,1034,1037,1041,1044,1048,1053,1057,1062,1066,1071,
+1074,1077,1080,1082,1085,1087,1089,1091,1093,1096,1098,1101,1104,1107,1110,1113,1116,1118,1121,1123,
+1125,1127,1130,1133,1137,1141,1145,1150,1155,1160,1164,1169,1174,1179,1183,1188,1194,1199,1205,1211,
+1217,1224,1230,1237,1243,1250,1256,1261,1267,1272,1278,1283,1288,1294,1299,1303,1308,1312,1316,1319,
+1323,1326,1329,1332,1334,1336,1339,1341,1343,1346,1348,1351,1354,1358,1361,1365,1368,1371,1374,1378,
+1380,1383,1386,1388,1390,1391,1393,1393,1394,1394,1394,1393,1393,1392,1392,1391,1391,1391,1391,1391,
+1392,1393,1394,1395,1397,1398,1400,1402,1403,1405,1406,1407,1408,1408,1409,1409,1409,1408,1408,1407,
+1406,1405,1404,1404,1403,1402,1401,1401,1401,1401,1402,1402,1403,1404,1405,1406,1407,1408,1409,1411,
+1413,1416,1419,1422,1426,1430,1435,1440,1444,1449,1454,1459,1464,1469,1475,1480,1486,1492,1498,1504,
+1509,1515,1521,1526,1532,1537,1543,1548,1553,1559,1564,1568,1572,1576,1580,1583,1586,1588,1591,1593,
+1596,1598,1600,1602,1605,1607,1610,1612,1615,1617,1620,1622,1625,1626,1628,1629,1629,1630,1630,1630,
+1630,1631,1631,1632,1633,1634,1635,1637,1639,1640,1642,1644,1645,1647,1649,1651,1653,1656,1659,1662,
+1665,1668,1671,1673,1676,1677,1679,1680,1681,1681,1682,1683,1683,1684,1684,1684,1685,1685,1685,1685,
+1685,1684,1684,1683,1683,1682,1681,1681,1680,1680,1679,1679,1679,1678,1678,1678,1679,1679,1679,1680,
+1681,1682,1683,1684,1686,1688,1690,1692,1695,1697,1700,1703,1706,1709,1713,1717,1722,1726,1730,1735,
+1739,1744,1749,1754,1760,1765,1771,1776,1782,1787,1792,1797,1802,1808,1813,1819,1824,1830,1836,1841,
+1847,1852,1858,1864,1869,1875,1880,1885,1889,1894,1898,1903,1908,1913,1918,1923,1928,1933,1938,1943,
+1948,1953,1958,1963,1969,1974,1980,1985,1991,1997,2003,2009,2016,2022,2030,2037,2044,2051,2059,2066,
+2073,2081,2088,2094,2101,2107,2114,2120,2126,2131,2136,2140,2144,2148,2151,2154,2157,2161,2164,2168,
+2172,2175,2179,2183,2186,2189,2191,2193,2194,2194,2193,2192,2190,2188,2184,2181,2176,2171,2165,2159,
+2152,2144,2137,2129,2121,2113,2105,2097,2089,2082,2074,2067,2061,2055,2049,2044,2039,2035,2031,2028,
+2025,2022,2020,2018,2017,2016,2015,2014,2014,2014,2015,2016,2017,2019,2021,2023,2026,2029,2032,2035,
+2039,2043,2047,2051,2056,2060,2065,2069,2074,2079,2083,2088,2092,2096,2099,2102,2105,2108,2111,2114,
+2116,2119,2122,2124,2126,2127,2128,2129,2130,2131,2131,2131,2131,2131,2131,2131,2130,2130,2130,2130,
+2131,2131,2131,2132,2132,2133,2133,2134,2134,2134,2133,2132,2131,2130,2129,2128,2126,2125,2123,2122,
+2121,2120,2119,2119,2118,2118,2117,2117,2116,2116,2116,2116,2117,2118,2119,2121,2123,2125,2127,2129,
+2130,2131,2131,2131,2131,2132,2132,2132,2132,2132,2133,2134,2135,2136,2138,2141,2144,2147,2150,2153,
+2156,2159,2162,2164,2167,2170,2172,2176,2179,2183,2187,2192,2197,2203,2208,2213,2218,2223,2227,2231,
+2235,2239,2244,2248,2253,2258,2264,2270,2276,2281,2287,2293,2299,2304,2310,2314,2319,2323,2327,2330,
+2332,2334,2336,2338,2340,2342,2344,2346,2348,2350,2352,2354,2356,2358,2359,2360,2360,2360,2360,2360,
+2359,2358,2357,2356,2354,2353,2352,2352,2352,2352,2353,2354,2355,2357,2360,2362,2365,2368,2371,2440,
+2441,2441,2442,2443,2445,2446,2448,2450,2452,2455,2459,2463,2467,2472,2477,2482,2487,2492,2497,2502,
+2506,2510,2512,2513,2513,2511,2508,2504,2499,2494,2490,2487,2484,2482,2480,2478,2475,2471,2467,2464,
+2461,2459,2458,2457,2457,2457,2456,2453,2450,2446,2441,2434,2427,2420,2411,2404,2397,2391,2387,2384,
+2383,2383,2384,2385,2386,2388,2390,2393,2397,2402,2407,2412,2417,2422,2427,2432,2437,2443,2449,2455,
+2460,2463,2464,2464,2462,2458,2453,2447,2441,2435,2430,2424,2420,2417,2415,2413,2411,2409,2406,2402,
+2397,2391,2384,2377,2370,2364,2357,2350,2343,2335,2328,2321,2314,2308,2301,2295,2288,2280,2272,2264,
+2254,2244,2234,2224,2214,2204,2195,2187,2179,2172,2165,2159,2153,2147,2141,2136,2130,2125,2120,2115,
+2110,2106,2102,2098,2096,2094,2092,2090,2089,2086,2083,2078,2074,2069,2064,2059,2054,2050,2045,2041,
+2036,2030,2025,2019,2013,2007,2002,1996,1990,1984,1978,1972,1966,1961,1955,1949,1944,1939,1933,1929,
+1924,1920,1916,1912,1907,1902,1896,1890,1884,1878,1871,1866,1860,1854,1849,1843,1837,1831,1824,1817,
+1810,1804,1797,1792,1787,1782,1779,1777,1775,1773,1770,1768,1764,1761,1757,1752,1748,1743,1739,1735,
+1731,1727,1723,1719,1715,1711,1707,1704,1700,1697,1693,1689,1686,1682,1679,1675,1671,1668,1664,1659,
+1655,1650,1645,1640,1635,1630,1625,1621,1616,1613,1609,1606,1604,1602,1600,1598,1597,1595,1593,1592,
+1590,1587,1585,1582,1580,1577,1575,1572,1569,1567,1565,1563,1561,1559,1557,1555,1553,1551,1548,1545,
+1542,1538,1534,1530,1526,1522,1518,1514,1511,1508,1505,1503,1501,1498,1496,1494,1492,1489,1487,1484,
+1481,1477,1473,1468,1463,1458,1453,1448,1443,1439,1434,1430,1425,1421,1415,1410,1404,1398,1391,1385,
+1379,1373,1368,1362,1357,1351,1346,1340,1334,1327,1321,1314,1309,1303,1298,1293,1289,1284,1278,1272,
+1265,1258,1249,1241,1232,1223,1215,1207,1200,1194,1188,1183,1178,1174,1170,1168,1168,1169,1172,1177,
+1183,1190,1197,1203,1208,1212,1215,1217,1218,1220,1221,1222,1224,1225,1225,1226,1226,1226,1226,1226,
+1225,1225,1224,1223,1222,1221,1220,1219,1218,1216,1215,1213,1211,1210,1208,1206,1204,1202,1200,1198,
+1195,1193,1191,1189,1187,1184,1182,1179,1176,1173,1170,1167,1164,1160,1157,1154,1150,1147,1143,1138,
+1134,1129,1123,1118,1112,1106,1099,1092,1085,1078,1071,1065,1059,1053,1048,1043,1038,1034,1030,1026,
+1023,1020,1018,1016,1013,1011,1009,1007,1004,1001,998,995,991,988,984,980,977,973,969,965,
+962,958,954,950,946,943,939,935,931,926,922,917,913,908,904,899,895,890,886,882,
+878,874,870,866,862,859,855,852,848,845,842,839,837,834,832,830,828,826,824,822,
+820,819,817,816,815,814,813,811,810,809,808,807,806,805,804,803,802,800,799,798,
+796,795,794,792,791,790,788,787,785,783,781,779,777,774,771,769,766,763,760,756,
+753,750,747,744,742,740,739,738,737,736,736,736,736,737,738,740,742,744,747,750,
+754,758,763,768,773,778,784,789,795,802,808,814,821,827,833,840,847,855,863,871,
+878,885,890,893,896,898,900,903,908,916,924,934,944,953,961,969,974,979,982,985,
+986,985,983,980,975,968,961,952,944,934,924,913,902,890,878,866,854,842,831,820,
+811,802,796,791,788,788,789,792,796,800,803,805,804,801,796,790,782,773,764,756,
+749,743,738,734,731,729,728,728,728,729,730,732,735,738,742,747,751,756,762,768,
+774,780,787,794,801,808,815,821,828,834,840,845,850,855,860,864,868,872,875,878,
+880,882,884,886,888,890,892,894,895,897,898,899,900,901,902,904,906,908,911,914,
+916,918,921,922,924,925,927,928,929,931,932,933,934,936,937,938,939,940,941,941,
+942,943,944,945,947,948,950,952,954,957,960,963,966,969,972,975,978,981,984,988,
+991,994,998,1002,1005,1009,1012,1015,1016,1017,1017,1016,1015,1013,1011,1008,1006,1003,1000,997,
+995,992,991,989,988,987,986,986,986,986,988,990,993,996,1000,1005,1009,1012,1016,1018,
+1020,1022,1022,1022,1021,1019,1017,1015,1013,1011,1011,1011,1012,1013,1014,1015,1014,1014,1012,1011,
+1009,1008,1007,1006,1004,1002,1001,1000,1000,1000,1002,1005,1008,1012,1016,1020,1024,1027,1030,1033,
+1035,1037,1039,1041,1043,1044,1046,1048,1050,1053,1055,1057,1059,1061,1062,1063,1064,1065,1065,1066,
+1068,1069,1071,1073,1075,1077,1079,1081,1083,1084,1086,1087,1088,1090,1091,1093,1094,1096,1098,1100,
+1102,1105,1108,1111,1114,1118,1121,1125,1128,1132,1136,1140,1145,1150,1155,1161,1166,1171,1177,1181,
+1186,1189,1192,1195,1197,1199,1200,1202,1204,1207,1209,1212,1215,1218,1221,1225,1228,1231,1234,1237,
+1241,1244,1248,1253,1257,1262,1267,1272,1276,1281,1286,1291,1296,1300,1305,1310,1314,1318,1322,1325,
+1327,1328,1330,1330,1331,1331,1331,1332,1332,1332,1332,1333,1334,1335,1337,1339,1341,1345,1349,1353,
+1358,1363,1368,1374,1379,1385,1391,1397,1403,1410,1415,1421,1427,1433,1438,1443,1447,1451,1454,1457,
+1460,1461,1463,1463,1464,1464,1464,1464,1463,1463,1463,1463,1463,1463,1464,1464,1464,1465,1465,1466,
+1466,1467,1469,1470,1472,1474,1477,1479,1482,1484,1487,1489,1491,1493,1496,1498,1500,1503,1506,1509,
+1511,1514,1516,1519,1521,1524,1527,1529,1532,1535,1538,1542,1545,1548,1552,1555,1558,1561,1563,1566,
+1569,1572,1575,1578,1581,1583,1586,1588,1589,1591,1592,1594,1596,1598,1599,1601,1602,1604,1605,1606,
+1607,1609,1611,1614,1617,1620,1623,1627,1630,1633,1636,1639,1641,1643,1644,1646,1648,1649,1651,1652,
+1654,1655,1656,1657,1658,1658,1659,1659,1660,1661,1662,1663,1664,1665,1666,1667,1667,1667,1666,1665,
+1664,1663,1662,1662,1662,1662,1662,1662,1662,1662,1662,1662,1662,1661,1661,1661,1661,1661,1661,1662,
+1663,1664,1666,1668,1670,1672,1675,1678,1682,1687,1692,1697,1702,1708,1713,1718,1723,1729,1734,1739,
+1744,1749,1755,1760,1766,1772,1777,1784,1790,1796,1803,1810,1816,1823,1829,1835,1842,1848,1854,1860,
+1866,1872,1877,1882,1888,1893,1899,1905,1910,1915,1921,1926,1930,1935,1940,1945,1951,1956,1961,1966,
+1972,1977,1982,1987,1993,1998,2004,2010,2016,2021,2027,2033,2039,2045,2051,2057,2063,2070,2076,2082,
+2089,2095,2102,2108,2114,2120,2126,2131,2136,2141,2146,2150,2154,2158,2161,2165,2168,2171,2174,2176,
+2178,2179,2180,2181,2182,2182,2183,2184,2185,2186,2186,2187,2187,2186,2185,2184,2182,2179,2175,2171,
+2165,2159,2153,2146,2138,2131,2123,2116,2109,2102,2096,2089,2083,2076,2070,2064,2058,2052,2046,2041,
+2036,2031,2027,2023,2019,2017,2014,2012,2011,2011,2011,2012,2014,2016,2018,2021,2024,2028,2031,2035,
+2039,2044,2048,2052,2057,2061,2066,2070,2075,2080,2085,2091,2097,2103,2109,2115,2122,2129,2136,2143,
+2150,2157,2164,2171,2177,2183,2189,2194,2199,2203,2207,2210,2213,2215,2217,2219,2221,2223,2224,2226,
+2227,2228,2230,2231,2232,2234,2235,2236,2237,2238,2238,2239,2239,2239,2239,2239,2239,2239,2238,2238,
+2237,2237,2237,2236,2236,2236,2235,2235,2235,2235,2234,2234,2234,2233,2232,2231,2230,2229,2228,2226,
+2225,2224,2223,2221,2220,2218,2217,2216,2214,2214,2213,2214,2215,2216,2219,2222,2226,2230,2234,2238,
+2243,2247,2251,2256,2261,2265,2270,2275,2280,2285,2290,2295,2300,2305,2309,2314,2318,2322,2326,2329,
+2333,2336,2339,2341,2343,2344,2344,2343,2341,2340,2339,2338,2339,2342,2345,2350,2355,2361,2367,2373,
+2378,2382,2386,2389,2392,2394,2396,2398,2399,2401,2402,2402,2403,2404,2405,2405,2406,2407,2407,2408,
+2408,2408,2408,2409,2410,2412,2415,2417,2420,2423,2426,2428,2431,2433,2435,2436,2437,2438,2439,2440,
+2521,2522,2523,2524,2526,2528,2530,2532,2535,2538,2541,2545,2548,2551,2553,2554,2554,2554,2554,2553,
+2553,2553,2553,2552,2551,2549,2547,2544,2540,2537,2532,2526,2519,2511,2502,2491,2480,2470,2459,2449,
+2439,2429,2420,2411,2404,2397,2392,2387,2385,2383,2384,2387,2392,2399,2407,2417,2426,2433,2439,2443,
+2446,2448,2450,2453,2455,2456,2457,2457,2456,2455,2455,2455,2457,2458,2460,2459,2456,2452,2446,2439,
+2433,2428,2423,2420,2417,2414,2411,2409,2407,2407,2407,2407,2407,2406,2404,2402,2399,2395,2391,2386,
+2381,2375,2369,2362,2354,2347,2340,2334,2328,2322,2317,2313,2308,2304,2300,2295,2290,2284,2276,2269,
+2260,2252,2244,2236,2228,2220,2213,2205,2198,2191,2184,2177,2171,2164,2158,2152,2146,2141,2135,2130,
+2125,2120,2115,2111,2106,2102,2098,2094,2090,2086,2082,2077,2073,2069,2064,2059,2053,2047,2040,2032,
+2025,2017,2009,2002,1995,1988,1981,1975,1970,1964,1958,1952,1946,1939,1933,1926,1920,1914,1909,1904,
+1898,1892,1885,1878,1870,1861,1853,1845,1837,1829,1822,1815,1807,1800,1792,1785,1778,1771,1764,1758,
+1753,1748,1743,1738,1733,1728,1723,1717,1712,1707,1702,1697,1693,1690,1686,1683,1680,1677,1674,1672,
+1669,1667,1664,1662,1659,1656,1652,1648,1644,1639,1634,1630,1625,1621,1616,1612,1607,1603,1598,1594,
+1590,1586,1583,1580,1577,1574,1571,1569,1566,1564,1561,1559,1556,1554,1551,1548,1545,1541,1538,1534,
+1531,1527,1523,1519,1515,1511,1508,1504,1501,1498,1494,1491,1488,1485,1482,1479,1477,1475,1473,1471,
+1469,1468,1466,1464,1463,1461,1459,1456,1454,1452,1449,1447,1445,1443,1440,1438,1436,1433,1431,1428,
+1426,1423,1421,1418,1415,1412,1410,1407,1404,1402,1400,1397,1395,1394,1392,1390,1388,1386,1384,1382,
+1380,1377,1374,1372,1369,1366,1364,1361,1358,1355,1351,1346,1342,1336,1331,1324,1318,1311,1304,1297,
+1289,1282,1274,1266,1258,1250,1242,1235,1227,1219,1212,1204,1196,1189,1181,1174,1167,1160,1155,1150,
+1145,1141,1138,1135,1132,1130,1128,1126,1124,1122,1121,1120,1120,1119,1119,1118,1118,1117,1117,1117,
+1117,1117,1117,1118,1119,1120,1121,1122,1123,1124,1126,1128,1130,1133,1136,1138,1140,1142,1144,1145,
+1147,1147,1148,1149,1149,1149,1148,1148,1147,1146,1145,1144,1143,1142,1140,1139,1137,1135,1133,1131,
+1129,1126,1124,1121,1118,1114,1110,1105,1100,1095,1089,1083,1077,1071,1064,1058,1052,1046,1040,1035,
+1030,1025,1021,1017,1014,1010,1007,1004,1001,998,995,992,989,985,982,978,975,972,968,964,
+961,957,952,948,944,939,935,930,925,920,914,909,904,899,894,888,883,878,872,867,
+862,857,852,847,842,837,832,828,824,819,815,812,808,805,802,799,797,794,792,790,
+788,786,785,783,782,781,780,779,778,777,776,775,774,773,772,771,770,769,767,766,
+764,763,762,761,759,758,757,756,755,754,753,752,751,749,748,746,745,742,740,737,
+735,732,729,727,725,723,721,720,718,717,716,715,715,714,714,715,715,717,718,720,
+722,725,728,731,735,739,743,748,752,757,763,769,777,785,793,801,810,818,825,832,
+839,846,852,858,863,868,873,878,883,887,892,896,900,904,908,912,917,921,927,932,
+936,940,943,944,944,944,941,936,930,922,911,900,886,872,858,844,829,815,800,786,
+773,760,749,740,733,729,726,727,729,733,738,742,745,746,746,743,739,735,731,727,
+724,722,720,719,717,716,714,714,714,715,716,719,721,725,728,732,736,740,744,749,
+754,758,763,768,772,777,781,786,791,796,801,806,811,816,820,824,828,831,834,837,
+840,842,845,848,851,854,858,861,864,866,869,871,872,874,876,877,879,881,884,886,
+888,890,893,895,897,899,901,902,903,904,905,906,907,907,908,909,909,910,910,911,
+912,914,915,917,919,921,924,926,929,932,935,938,942,945,949,953,957,961,965,970,
+975,980,985,991,996,1001,1006,1010,1013,1016,1019,1021,1022,1023,1024,1024,1024,1023,1022,1021,
+1020,1019,1019,1019,1019,1019,1019,1019,1019,1020,1020,1020,1020,1021,1022,1023,1024,1026,1028,1030,
+1032,1034,1036,1037,1038,1039,1039,1039,1038,1036,1033,1030,1027,1024,1021,1019,1018,1017,1017,1016,
+1015,1014,1013,1012,1012,1012,1012,1013,1014,1015,1016,1018,1021,1023,1027,1030,1033,1036,1039,1040,
+1042,1043,1044,1044,1044,1044,1044,1043,1043,1042,1042,1042,1042,1043,1045,1047,1049,1052,1055,1058,
+1061,1064,1066,1069,1071,1072,1074,1075,1076,1076,1076,1076,1076,1076,1076,1076,1075,1075,1075,1076,
+1077,1078,1080,1082,1085,1087,1090,1093,1096,1100,1103,1106,1109,1112,1115,1118,1121,1124,1126,1129,
+1132,1135,1137,1140,1142,1144,1146,1148,1150,1152,1154,1157,1159,1162,1164,1166,1168,1170,1173,1175,
+1179,1182,1187,1191,1196,1200,1204,1208,1212,1215,1218,1221,1225,1227,1230,1232,1234,1236,1237,1238,
+1239,1240,1241,1241,1241,1242,1242,1243,1245,1247,1250,1254,1258,1263,1268,1274,1281,1288,1295,1303,
+1311,1319,1327,1335,1344,1352,1360,1368,1375,1383,1390,1397,1403,1409,1415,1420,1425,1428,1432,1434,
+1437,1438,1439,1440,1440,1440,1440,1440,1440,1441,1442,1443,1445,1447,1450,1452,1455,1457,1460,1462,
+1464,1466,1467,1469,1470,1471,1471,1471,1471,1471,1471,1471,1470,1470,1469,1468,1467,1466,1464,1463,
+1461,1460,1458,1457,1455,1454,1453,1453,1454,1455,1456,1458,1461,1464,1468,1471,1476,1480,1484,1488,
+1493,1498,1502,1507,1512,1517,1523,1528,1533,1539,1545,1551,1557,1563,1569,1574,1579,1584,1588,1591,
+1595,1599,1603,1607,1611,1614,1617,1620,1622,1623,1625,1627,1629,1631,1633,1635,1636,1637,1638,1639,
+1639,1639,1640,1640,1641,1641,1642,1642,1641,1641,1641,1641,1641,1641,1642,1642,1642,1642,1642,1641,
+1640,1638,1637,1636,1635,1635,1634,1634,1635,1636,1637,1639,1641,1642,1644,1646,1648,1650,1652,1655,
+1657,1660,1663,1666,1669,1673,1677,1682,1686,1691,1696,1702,1707,1713,1718,1723,1728,1733,1737,1741,
+1746,1751,1756,1762,1768,1775,1782,1790,1798,1806,1815,1823,1831,1838,1846,1853,1859,1866,1872,1878,
+1884,1890,1896,1902,1907,1913,1919,1925,1931,1937,1943,1949,1955,1961,1967,1973,1979,1985,1990,1996,
+2001,2006,2011,2017,2022,2027,2032,2037,2042,2047,2052,2057,2063,2068,2073,2078,2084,2089,2094,2099,
+2104,2110,2115,2120,2124,2128,2132,2135,2138,2141,2143,2145,2147,2149,2151,2153,2155,2157,2158,2160,
+2161,2163,2164,2165,2166,2167,2168,2168,2169,2169,2170,2170,2170,2170,2169,2168,2167,2166,2164,2161,
+2158,2155,2150,2146,2141,2135,2130,2124,2117,2111,2104,2096,2089,2080,2072,2063,2054,2046,2039,2032,
+2026,2020,2016,2013,2010,2009,2008,2008,2008,2010,2012,2015,2018,2023,2027,2033,2039,2046,2053,2060,
+2068,2077,2085,2093,2102,2110,2118,2127,2135,2143,2151,2158,2165,2172,2179,2185,2191,2198,2204,2211,
+2217,2223,2230,2236,2242,2248,2253,2258,2262,2266,2270,2273,2276,2278,2281,2284,2287,2290,2293,2297,
+2301,2305,2309,2313,2318,2322,2326,2330,2334,2338,2342,2345,2349,2352,2355,2358,2361,2364,2367,2369,
+2371,2372,2373,2373,2373,2372,2371,2369,2368,2366,2364,2362,2361,2359,2358,2357,2357,2357,2357,2357,
+2358,2359,2360,2361,2362,2362,2362,2361,2359,2358,2356,2355,2355,2355,2356,2358,2360,2364,2368,2372,
+2378,2384,2391,2398,2406,2414,2424,2434,2445,2457,2469,2480,2492,2502,2512,2520,2527,2533,2538,2541,
+2541,2540,2536,2529,2520,2509,2496,2482,2468,2454,2441,2430,2422,2417,2414,2414,2416,2419,2423,2427,
+2432,2435,2439,2441,2443,2445,2446,2447,2449,2450,2451,2453,2455,2456,2458,2460,2462,2464,2466,2468,
+2470,2472,2473,2476,2478,2481,2485,2488,2492,2495,2499,2502,2505,2508,2511,2514,2516,2518,2519,2520,
+2521,2627,2628,2628,2628,2627,2626,2625,2623,2620,2617,2612,2608,2602,2596,2591,2586,2581,2577,2573,
+2569,2564,2559,2553,2548,2543,2538,2533,2528,2523,2516,2509,2503,2496,2491,2486,2482,2478,2475,2472,
+2471,2471,2472,2474,2477,2480,2483,2487,2492,2497,2504,2511,2519,2524,2528,2529,2528,2525,2521,2516,
+2512,2508,2504,2499,2495,2490,2487,2484,2481,2478,2475,2471,2465,2458,2450,2442,2435,2428,2422,2416,
+2411,2407,2403,2399,2395,2391,2387,2383,2380,2376,2373,2371,2368,2366,2364,2361,2359,2355,2351,2346,
+2339,2332,2323,2314,2306,2298,2292,2286,2281,2275,2270,2264,2258,2252,2246,2240,2235,2230,2226,2222,
+2218,2214,2210,2205,2200,2195,2189,2183,2178,2173,2169,2165,2162,2158,2154,2149,2145,2140,2135,2131,
+2126,2121,2116,2110,2103,2096,2088,2080,2071,2063,2054,2045,2037,2030,2023,2017,2011,2005,2001,1996,
+1991,1986,1982,1977,1972,1966,1961,1955,1950,1944,1938,1931,1925,1919,1913,1906,1899,1892,1884,1874,
+1864,1854,1844,1833,1824,1815,1807,1800,1792,1786,1779,1773,1767,1761,1756,1750,1745,1739,1733,1727,
+1720,1713,1707,1701,1695,1690,1685,1681,1676,1672,1669,1665,1661,1657,1653,1648,1644,1639,1634,1629,
+1623,1618,1613,1608,1603,1598,1593,1589,1584,1579,1573,1567,1561,1555,1549,1544,1538,1533,1528,1524,
+1520,1517,1514,1512,1510,1509,1507,1506,1505,1503,1502,1501,1499,1497,1495,1492,1489,1486,1483,1480,
+1476,1473,1470,1467,1464,1461,1458,1455,1452,1450,1447,1444,1441,1438,1435,1431,1427,1424,1419,1415,
+1410,1406,1402,1397,1394,1390,1387,1385,1382,1380,1377,1375,1373,1371,1369,1366,1364,1361,1359,1356,
+1354,1351,1348,1345,1342,1339,1337,1334,1331,1329,1326,1324,1321,1319,1317,1315,1313,1312,1311,1310,
+1309,1308,1307,1307,1306,1305,1304,1303,1300,1297,1294,1291,1287,1284,1281,1279,1276,1274,1272,1269,
+1267,1264,1261,1258,1254,1251,1247,1244,1240,1236,1231,1227,1223,1218,1214,1210,1205,1200,1196,1191,
+1186,1181,1176,1170,1165,1159,1153,1148,1142,1135,1130,1124,1118,1113,1109,1104,1100,1096,1092,1088,
+1084,1080,1076,1072,1068,1065,1062,1059,1057,1054,1052,1050,1048,1046,1045,1045,1045,1045,1046,1046,
+1046,1046,1047,1047,1049,1051,1053,1056,1059,1061,1063,1065,1067,1069,1072,1074,1076,1079,1080,1082,
+1083,1084,1084,1085,1085,1085,1085,1085,1084,1083,1081,1079,1076,1074,1071,1068,1065,1061,1057,1052,
+1048,1043,1037,1032,1027,1022,1018,1014,1010,1006,1002,998,995,992,988,985,981,978,974,971,
+967,963,960,956,951,947,942,937,932,926,921,915,908,902,896,890,883,877,870,864,
+857,850,844,837,831,825,819,813,808,802,797,792,787,782,778,773,769,766,762,759,
+757,755,753,751,750,749,747,746,745,743,742,741,740,739,738,737,736,735,734,733,
+732,731,730,729,728,727,726,726,725,724,724,722,721,720,718,717,715,714,712,710,
+708,705,703,700,698,696,694,692,690,689,688,687,687,687,687,687,687,688,690,692,
+694,697,699,702,704,706,708,711,713,716,720,723,728,732,738,743,749,755,761,768,
+776,784,793,802,813,823,832,841,848,854,858,860,861,861,860,859,858,858,859,860,
+861,863,865,867,868,868,867,865,861,857,851,844,836,827,818,809,799,790,782,774,
+767,761,756,753,750,749,748,749,749,749,748,745,741,735,728,720,713,706,699,694,
+690,686,683,682,680,680,680,681,683,684,687,689,692,696,699,703,707,711,715,719,
+724,728,733,737,741,745,749,752,756,759,762,765,767,770,772,775,777,780,782,784,
+786,789,791,794,797,800,803,807,810,814,818,822,826,830,833,836,839,842,845,848,
+852,855,859,863,867,871,875,879,883,886,889,892,895,898,901,903,906,907,908,909,
+911,912,914,916,918,920,922,924,926,928,930,932,934,936,939,942,945,948,951,954,
+957,960,964,967,971,975,979,983,986,989,992,994,997,999,1001,1003,1005,1006,1008,1009,
+1011,1012,1014,1015,1015,1016,1016,1016,1015,1015,1015,1014,1013,1012,1011,1010,1010,1011,1011,1012,
+1013,1012,1011,1009,1007,1004,1001,998,996,994,992,990,989,989,989,989,990,991,992,993,
+995,996,997,999,1000,1001,1002,1003,1004,1007,1009,1013,1017,1020,1024,1028,1031,1033,1034,1034,
+1034,1032,1029,1026,1022,1018,1013,1009,1006,1004,1003,1002,1003,1004,1007,1009,1012,1015,1018,1021,
+1023,1026,1027,1029,1030,1031,1032,1032,1032,1033,1033,1033,1034,1035,1037,1038,1040,1042,1044,1046,
+1048,1050,1051,1052,1053,1054,1055,1055,1056,1057,1058,1059,1061,1062,1064,1065,1066,1067,1068,1069,
+1071,1072,1073,1076,1078,1081,1084,1087,1090,1094,1097,1100,1103,1106,1109,1112,1114,1117,1120,1124,
+1128,1132,1136,1141,1145,1150,1154,1158,1161,1164,1165,1166,1166,1165,1164,1163,1161,1160,1158,1157,
+1156,1156,1156,1158,1160,1162,1166,1170,1175,1180,1186,1192,1199,1206,1212,1219,1225,1232,1237,1243,
+1248,1253,1257,1262,1266,1271,1275,1280,1284,1288,1291,1295,1298,1300,1302,1303,1304,1305,1305,1306,
+1308,1310,1312,1314,1317,1320,1323,1326,1329,1333,1337,1342,1346,1351,1356,1361,1367,1371,1376,1380,
+1385,1389,1392,1396,1399,1403,1406,1408,1410,1412,1414,1415,1417,1419,1420,1422,1424,1427,1430,1433,
+1437,1441,1445,1449,1453,1458,1462,1465,1469,1472,1475,1478,1480,1482,1484,1486,1488,1489,1490,1491,
+1492,1492,1493,1493,1494,1494,1495,1496,1496,1497,1497,1498,1499,1500,1501,1502,1503,1504,1505,1505,
+1506,1508,1510,1513,1516,1520,1523,1527,1530,1533,1536,1539,1542,1545,1549,1552,1555,1557,1559,1561,
+1563,1565,1567,1570,1573,1576,1580,1583,1586,1590,1594,1598,1601,1605,1608,1611,1614,1616,1617,1618,
+1619,1620,1620,1621,1621,1621,1621,1621,1622,1622,1623,1623,1625,1626,1627,1629,1631,1633,1634,1636,
+1638,1641,1645,1650,1655,1660,1665,1670,1675,1680,1685,1691,1697,1704,1711,1718,1726,1734,1743,1751,
+1760,1768,1775,1782,1789,1795,1800,1805,1811,1816,1821,1826,1832,1837,1842,1848,1854,1860,1867,1873,
+1880,1887,1895,1902,1910,1919,1927,1936,1944,1953,1961,1969,1977,1985,1993,2000,2007,2013,2019,2025,
+2030,2035,2039,2043,2047,2050,2053,2056,2059,2062,2065,2067,2070,2072,2075,2077,2079,2081,2083,2085,
+2087,2089,2091,2093,2094,2096,2097,2098,2099,2101,2102,2103,2105,2106,2108,2109,2110,2112,2113,2114,
+2116,2117,2118,2120,2121,2123,2124,2125,2126,2127,2128,2128,2128,2127,2126,2125,2123,2120,2117,2114,
+2110,2105,2101,2095,2090,2084,2078,2071,2065,2059,2052,2046,2040,2034,2029,2024,2019,2016,2013,2011,
+2010,2010,2010,2012,2014,2016,2019,2023,2027,2032,2037,2043,2049,2056,2063,2070,2078,2086,2094,2103,
+2111,2120,2129,2138,2147,2156,2165,2173,2182,2191,2199,2207,2214,2222,2229,2236,2243,2250,2257,2263,
+2269,2275,2281,2287,2293,2298,2303,2308,2312,2316,2320,2324,2328,2333,2337,2342,2347,2353,2358,2363,
+2369,2375,2381,2387,2393,2398,2403,2407,2410,2414,2416,2419,2421,2422,2424,2425,2425,2426,2426,2426,
+2426,2425,2425,2424,2423,2423,2422,2421,2420,2420,2419,2418,2417,2416,2416,2416,2416,2417,2419,2421,
+2424,2426,2429,2431,2434,2437,2440,2443,2446,2450,2454,2459,2463,2468,2474,2479,2486,2493,2500,2508,
+2517,2526,2535,2545,2554,2564,2573,2582,2590,2598,2604,2610,2615,2619,2622,2624,2623,2620,2615,2606,
+2595,2582,2565,2547,2528,2508,2489,2472,2458,2447,2440,2437,2437,2440,2446,2453,2460,2468,2476,2483,
+2488,2493,2496,2498,2500,2502,2503,2504,2506,2507,2509,2512,2514,2517,2520,2522,2525,2528,2530,2531,
+2533,2534,2535,2536,2538,2541,2544,2549,2554,2561,2568,2577,2585,2594,2602,2609,2614,2619,2622,2625,
+2626,2627,2667,2666,2664,2660,2656,2650,2643,2636,2628,2621,2613,2606,2600,2594,2589,2585,2582,2580,
+2580,2582,2585,2587,2589,2590,2590,2589,2587,2585,2582,2579,2576,2572,2568,2564,2562,2561,2561,2562,
+2563,2565,2567,2568,2570,2573,2576,2580,2584,2588,2591,2593,2593,2592,2591,2588,2586,2582,2579,2574,
+2569,2564,2558,2551,2545,2538,2532,2526,2521,2515,2510,2504,2498,2492,2485,2478,2471,2464,2458,2452,
+2446,2441,2436,2432,2427,2423,2418,2412,2407,2400,2394,2388,2382,2376,2370,2363,2357,2350,2343,2336,
+2329,2322,2315,2308,2302,2295,2289,2282,2276,2269,2263,2256,2249,2242,2235,2227,2220,2212,2205,2197,
+2190,2183,2176,2169,2163,2156,2150,2144,2139,2134,2129,2125,2120,2116,2112,2107,2102,2097,2092,2086,
+2080,2074,2067,2061,2054,2048,2041,2034,2028,2022,2017,2013,2008,2004,2000,1995,1990,1985,1980,1974,
+1969,1964,1959,1954,1949,1944,1939,1934,1929,1923,1917,1911,1904,1897,1889,1881,1873,1865,1856,1847,
+1838,1829,1820,1812,1803,1795,1788,1780,1773,1766,1760,1754,1747,1741,1734,1727,1720,1714,1707,1701,
+1694,1689,1683,1678,1672,1666,1661,1655,1650,1645,1640,1635,1631,1627,1622,1618,1613,1608,1603,1597,
+1591,1585,1579,1573,1567,1561,1554,1548,1541,1534,1527,1519,1512,1504,1496,1489,1482,1476,1471,1466,
+1463,1459,1457,1455,1453,1452,1451,1451,1451,1451,1451,1451,1451,1451,1451,1450,1449,1447,1444,1441,
+1438,1434,1430,1426,1422,1418,1414,1410,1406,1402,1398,1395,1391,1388,1385,1382,1379,1375,1372,1369,
+1366,1362,1358,1355,1351,1347,1343,1339,1336,1332,1328,1325,1321,1317,1314,1310,1306,1302,1298,1294,
+1290,1286,1282,1277,1273,1269,1265,1261,1258,1255,1251,1248,1245,1242,1239,1236,1233,1230,1227,1225,
+1223,1221,1220,1218,1217,1216,1215,1214,1213,1211,1209,1207,1205,1203,1201,1200,1199,1197,1196,1195,
+1193,1192,1190,1189,1188,1187,1186,1186,1185,1185,1185,1184,1184,1183,1182,1181,1180,1179,1178,1177,
+1176,1174,1173,1171,1170,1168,1167,1165,1163,1162,1161,1160,1160,1159,1159,1159,1159,1159,1158,1158,
+1157,1156,1154,1152,1148,1144,1139,1133,1126,1118,1110,1101,1093,1084,1075,1066,1057,1048,1039,1031,
+1023,1015,1007,999,992,984,977,972,967,964,961,960,960,960,961,961,963,965,968,971,
+975,979,982,986,989,992,994,997,999,1001,1003,1005,1006,1008,1010,1011,1013,1015,1016,1017,
+1017,1016,1015,1013,1011,1008,1005,1001,997,992,988,983,979,975,971,968,965,963,961,959,
+957,955,953,951,950,948,946,943,940,937,932,927,921,915,908,901,894,887,880,872,
+865,858,850,843,836,829,822,816,809,802,796,789,783,777,772,766,761,756,751,746,
+742,738,734,731,728,725,722,720,718,716,714,713,711,709,707,705,704,702,701,700,
+698,697,696,695,694,694,693,692,691,690,689,688,686,685,683,681,679,677,674,672,
+670,668,666,664,662,660,657,655,654,652,651,650,650,650,650,651,651,652,652,653,
+655,657,659,661,663,666,669,672,675,678,681,684,686,688,690,692,694,697,700,704,
+708,713,719,724,730,736,742,748,755,761,767,774,780,785,790,793,795,796,796,795,
+794,792,790,789,787,786,784,781,778,774,770,765,760,756,752,749,747,745,744,743,
+742,742,741,741,740,740,740,741,741,740,739,737,733,728,721,714,705,696,687,679,
+671,665,659,655,652,651,650,651,652,654,656,659,663,666,670,675,679,683,688,692,
+696,700,704,708,711,713,716,718,720,721,723,724,726,727,728,728,729,730,730,731,
+732,733,735,736,738,741,743,745,748,750,753,755,758,761,764,767,770,773,776,780,
+784,789,794,800,806,813,820,827,834,840,846,851,855,860,864,868,872,875,878,880,
+883,885,887,890,892,894,897,899,901,903,905,907,909,911,914,916,918,920,922,924,
+926,928,930,931,933,934,936,937,939,941,943,944,946,947,948,948,949,950,950,951,
+951,951,952,952,953,954,956,958,960,962,964,966,967,968,969,968,968,967,966,964,
+963,962,961,959,958,956,954,952,950,948,947,946,947,948,951,954,958,961,964,966,
+967,966,965,964,962,961,960,961,961,963,965,966,967,966,965,964,962,960,959,959,
+958,958,957,957,957,956,957,957,957,958,959,960,960,961,962,963,964,965,965,965,
+965,965,965,965,966,968,970,973,977,980,984,988,991,994,996,997,996,994,992,988,
+985,983,982,982,984,985,987,987,988,988,988,989,991,993,995,997,999,1002,1004,1006,
+1009,1011,1014,1016,1019,1021,1023,1026,1028,1030,1032,1035,1037,1039,1041,1043,1046,1048,1051,1054,
+1056,1058,1059,1060,1061,1061,1061,1060,1060,1060,1059,1059,1058,1057,1057,1056,1057,1057,1059,1061,
+1063,1066,1070,1074,1078,1083,1088,1092,1097,1102,1107,1111,1116,1120,1123,1127,1130,1133,1135,1137,
+1140,1142,1144,1146,1148,1150,1152,1154,1156,1158,1161,1164,1167,1171,1174,1177,1179,1182,1184,1187,
+1190,1193,1197,1202,1207,1212,1217,1223,1229,1234,1240,1245,1250,1254,1257,1260,1263,1265,1267,1269,
+1272,1275,1279,1284,1289,1295,1300,1305,1310,1315,1319,1323,1327,1330,1334,1338,1343,1347,1352,1357,
+1362,1367,1373,1379,1386,1394,1401,1409,1417,1424,1431,1437,1444,1450,1455,1460,1464,1467,1469,1471,
+1472,1473,1473,1472,1471,1470,1468,1467,1465,1464,1462,1460,1459,1457,1455,1455,1455,1455,1457,1459,
+1461,1463,1465,1466,1467,1468,1468,1468,1469,1470,1472,1475,1479,1483,1489,1495,1502,1508,1514,1519,
+1524,1528,1531,1533,1536,1539,1543,1546,1550,1554,1557,1560,1563,1566,1570,1573,1576,1579,1582,1585,
+1587,1589,1591,1593,1595,1596,1597,1598,1599,1600,1601,1603,1605,1607,1609,1611,1613,1615,1618,1620,
+1624,1627,1630,1634,1638,1642,1646,1651,1657,1662,1668,1673,1679,1685,1691,1698,1705,1712,1720,1727,
+1735,1742,1750,1757,1764,1771,1777,1784,1791,1799,1806,1814,1821,1828,1835,1841,1847,1854,1860,1867,
+1873,1880,1887,1894,1901,1909,1917,1925,1932,1940,1948,1956,1963,1970,1978,1985,1991,1998,2004,2010,
+2015,2019,2023,2027,2030,2033,2035,2037,2038,2039,2040,2041,2042,2043,2044,2046,2047,2047,2048,2048,
+2048,2048,2049,2049,2049,2049,2049,2048,2048,2047,2047,2047,2047,2047,2047,2047,2046,2046,2045,2044,
+2043,2043,2042,2041,2041,2041,2042,2043,2044,2046,2048,2051,2053,2055,2057,2058,2058,2059,2058,2058,
+2057,2056,2055,2054,2052,2051,2049,2048,2047,2046,2046,2046,2046,2047,2048,2050,2051,2053,2055,2057,
+2059,2062,2065,2069,2073,2077,2081,2086,2091,2096,2102,2107,2114,2120,2127,2134,2142,2149,2156,2164,
+2171,2178,2185,2192,2199,2206,2212,2218,2224,2230,2236,2243,2249,2255,2261,2268,2274,2280,2286,2292,
+2298,2303,2309,2315,2321,2327,2333,2339,2344,2350,2356,2362,2367,2373,2380,2386,2393,2400,2407,2414,
+2421,2428,2435,2442,2449,2455,2462,2469,2475,2481,2486,2490,2493,2495,2497,2499,2500,2501,2502,2503,
+2503,2503,2503,2502,2501,2500,2499,2498,2498,2497,2496,2496,2497,2498,2498,2499,2500,2500,2500,2499,
+2499,2499,2500,2502,2504,2508,2513,2518,2525,2532,2540,2548,2556,2564,2573,2582,2591,2600,2610,2619,
+2629,2638,2647,2655,2663,2669,2673,2675,2675,2672,2666,2658,2648,2636,2623,2610,2596,2582,2568,2554,
+2540,2527,2515,2505,2497,2491,2489,2489,2491,2495,2501,2507,2514,2522,2529,2536,2542,2548,2553,2558,
+2562,2566,2569,2571,2574,2576,2578,2579,2580,2581,2582,2582,2582,2583,2583,2585,2587,2590,2594,2600,
+2607,2615,2624,2633,2641,2648,2653,2657,2659,2659,2658,2657,2655,2654,2652,2652,2653,2655,2658,2662,
+2665,2667,2667,2734,2730,2726,2720,2713,2705,2697,2689,2682,2676,2671,2668,2667,2667,2670,2674,2680,
+2686,2692,2697,2700,2701,2699,2695,2690,2684,2677,2672,2667,2664,2662,2662,2662,2664,2666,2668,2670,
+2671,2672,2671,2671,2670,2671,2671,2671,2670,2669,2667,2664,2661,2658,2655,2654,2652,2650,2647,2642,
+2636,2627,2617,2606,2595,2584,2573,2563,2554,2545,2536,2528,2520,2512,2504,2496,2487,2479,2470,2462,
+2453,2445,2437,2430,2422,2415,2408,2402,2396,2390,2384,2378,2372,2367,2361,2355,2350,2344,2338,2332,
+2326,2320,2314,2307,2301,2295,2289,2284,2279,2273,2268,2263,2257,2250,2243,2235,2228,2220,2212,2205,
+2198,2191,2184,2177,2170,2163,2155,2148,2141,2135,2129,2123,2118,2112,2107,2102,2096,2090,2083,2076,
+2068,2060,2052,2044,2035,2028,2020,2013,2005,1998,1991,1985,1979,1973,1968,1963,1958,1953,1948,1943,
+1938,1933,1928,1923,1918,1912,1907,1901,1895,1889,1882,1877,1871,1864,1858,1852,1846,1840,1834,1828,
+1822,1815,1809,1802,1795,1788,1782,1775,1768,1760,1752,1744,1736,1728,1720,1712,1705,1698,1690,1684,
+1677,1671,1666,1660,1655,1649,1643,1637,1631,1625,1620,1614,1609,1604,1598,1593,1588,1582,1577,1571,
+1567,1562,1557,1552,1547,1541,1534,1527,1520,1512,1505,1498,1491,1485,1479,1474,1469,1465,1460,1456,
+1452,1449,1446,1443,1441,1438,1437,1435,1433,1432,1431,1430,1428,1427,1426,1424,1422,1420,1417,1414,
+1411,1408,1404,1400,1397,1393,1389,1385,1381,1377,1373,1369,1364,1360,1356,1352,1349,1345,1341,1338,
+1334,1331,1327,1323,1319,1315,1311,1307,1302,1297,1292,1287,1281,1275,1269,1264,1258,1253,1249,1245,
+1241,1237,1234,1230,1227,1224,1221,1217,1214,1211,1208,1205,1201,1198,1194,1191,1187,1183,1179,1176,
+1172,1168,1165,1161,1158,1154,1151,1149,1146,1144,1142,1139,1137,1135,1133,1132,1131,1129,1127,1125,
+1123,1121,1119,1117,1115,1113,1111,1109,1108,1107,1106,1106,1105,1105,1105,1105,1105,1105,1105,1105,
+1105,1105,1105,1105,1106,1105,1105,1105,1105,1105,1106,1106,1107,1108,1108,1109,1110,1111,1112,1112,
+1113,1113,1112,1112,1111,1110,1108,1107,1105,1103,1101,1099,1096,1094,1090,1087,1082,1077,1072,1066,
+1059,1051,1042,1033,1023,1013,1002,991,980,968,955,943,931,919,908,898,888,880,873,867,
+863,860,858,858,858,859,859,861,862,864,866,869,872,875,878,881,884,887,890,894,
+898,901,906,910,914,919,925,930,935,939,943,947,949,951,953,953,953,952,951,949,
+946,943,939,936,933,930,927,925,922,919,916,912,907,902,896,890,883,877,870,863,
+856,849,843,836,829,823,817,810,804,798,791,784,778,771,765,759,753,747,741,735,
+729,723,717,712,707,702,698,693,689,685,681,678,675,672,669,666,664,661,659,657,
+655,653,651,649,648,647,645,644,644,643,642,641,639,638,637,635,633,631,629,627,
+625,624,622,621,620,619,618,616,616,615,614,613,613,613,613,614,614,614,614,614,
+614,615,615,616,618,619,621,624,627,630,633,637,641,645,649,653,657,662,667,673,
+679,685,692,698,703,709,713,718,722,725,728,732,735,738,742,746,749,752,754,754,
+753,750,747,742,738,733,727,722,717,713,710,708,707,707,709,712,715,718,720,722,
+721,719,714,707,699,690,682,674,666,661,656,653,650,648,645,643,640,637,634,631,
+628,625,622,619,617,616,615,615,616,617,619,622,625,628,632,636,641,645,649,652,
+656,659,663,666,669,672,674,676,678,680,681,683,684,685,686,688,689,691,694,696,
+699,702,706,709,714,718,721,725,727,729,730,730,731,731,731,731,731,731,732,732,
+734,735,738,741,744,749,755,761,768,775,783,790,797,804,810,816,822,828,833,837,
+841,845,848,851,855,858,861,864,868,871,874,877,880,882,885,887,889,890,892,893,
+894,894,894,895,895,896,897,899,900,902,903,904,905,906,906,906,905,905,905,905,
+904,904,902,901,899,898,896,895,895,895,895,895,895,895,896,898,900,903,905,908,
+910,911,911,912,913,914,915,916,917,917,917,918,918,920,923,926,929,932,933,933,
+932,930,928,926,925,924,923,922,921,920,919,917,916,915,914,911,909,906,904,903,
+902,903,904,905,907,909,911,913,914,916,917,918,918,918,918,917,916,916,917,918,
+921,924,928,933,938,943,949,954,958,961,963,964,963,961,959,957,955,952,951,950,
+949,948,948,948,948,950,951,953,956,959,962,965,968,970,972,974,975,976,976,976,
+975,975,974,973,972,972,971,971,970,970,969,969,969,969,969,970,971,971,971,971,
+971,970,970,969,968,967,967,966,966,965,965,966,966,967,969,971,974,977,981,985,
+989,992,995,998,1002,1005,1008,1011,1015,1018,1022,1025,1029,1033,1037,1041,1046,1050,1055,1060,
+1065,1069,1074,1077,1080,1082,1084,1086,1087,1089,1092,1094,1097,1100,1103,1106,1110,1113,1117,1122,
+1126,1131,1135,1140,1145,1150,1156,1161,1167,1174,1180,1187,1194,1201,1207,1212,1217,1222,1227,1232,
+1238,1243,1250,1256,1263,1269,1275,1281,1286,1292,1296,1301,1305,1309,1314,1318,1322,1327,1331,1336,
+1341,1346,1351,1357,1362,1368,1374,1379,1385,1390,1395,1399,1403,1407,1410,1413,1416,1419,1422,1425,
+1427,1429,1431,1432,1433,1434,1435,1435,1436,1436,1437,1437,1438,1439,1440,1440,1441,1442,1443,1444,
+1444,1444,1444,1443,1443,1442,1442,1442,1442,1444,1446,1449,1454,1458,1463,1469,1474,1478,1482,1486,
+1490,1493,1497,1501,1504,1508,1511,1514,1517,1520,1522,1525,1527,1529,1531,1533,1535,1537,1539,1541,
+1543,1545,1546,1548,1549,1550,1552,1554,1556,1559,1562,1566,1570,1574,1578,1583,1588,1593,1597,1602,
+1605,1607,1608,1608,1608,1608,1608,1609,1611,1614,1618,1623,1629,1635,1641,1647,1653,1659,1665,1672,
+1678,1685,1691,1698,1705,1712,1718,1726,1733,1740,1747,1754,1762,1769,1776,1783,1791,1798,1806,1814,
+1822,1830,1838,1846,1854,1862,1870,1878,1885,1892,1899,1905,1911,1917,1922,1927,1932,1936,1940,1944,
+1948,1952,1955,1958,1960,1962,1964,1967,1969,1971,1973,1974,1975,1975,1975,1976,1977,1978,1978,1978,
+1978,1978,1979,1980,1981,1982,1983,1983,1983,1982,1982,1981,1980,1979,1979,1978,1979,1979,1979,1979,
+1980,1980,1980,1981,1983,1987,1992,1998,2004,2011,2018,2025,2031,2038,2044,2050,2056,2061,2067,2072,
+2077,2082,2086,2091,2095,2099,2103,2106,2110,2113,2116,2119,2123,2126,2130,2134,2137,2141,2144,2148,
+2151,2154,2158,2161,2165,2169,2172,2177,2181,2185,2190,2195,2200,2205,2210,2216,2222,2228,2235,2241,
+2247,2252,2258,2263,2268,2272,2277,2281,2285,2289,2294,2299,2304,2309,2313,2318,2323,2327,2332,2336,
+2341,2346,2351,2356,2361,2367,2372,2378,2384,2390,2395,2402,2409,2416,2424,2432,2439,2448,2456,2464,
+2472,2480,2488,2496,2503,2510,2517,2524,2530,2537,2542,2547,2552,2555,2558,2561,2563,2565,2567,2569,
+2570,2572,2572,2573,2573,2574,2574,2575,2576,2577,2578,2578,2577,2576,2576,2576,2577,2579,2581,2585,
+2589,2594,2599,2605,2611,2618,2626,2633,2641,2649,2657,2665,2674,2682,2691,2701,2709,2717,2724,2730,
+2736,2740,2742,2743,2740,2734,2723,2708,2690,2670,2649,2629,2609,2592,2576,2563,2552,2544,2539,2537,
+2536,2538,2540,2544,2549,2555,2562,2570,2579,2587,2596,2603,2608,2612,2615,2617,2619,2622,2625,2628,
+2631,2635,2638,2642,2647,2651,2655,2660,2664,2670,2675,2681,2687,2692,2696,2699,2700,2699,2699,2698,
+2698,2699,2701,2702,2704,2706,2707,2709,2710,2712,2713,2715,2717,2720,2723,2726,2729,2732,2735,2737,
+2738,2738,2737,2734,2764,2753,2743,2734,2727,2723,2721,2722,2725,2728,2730,2732,2732,2731,2729,2727,
+2725,2723,2721,2719,2717,2715,2713,2711,2709,2708,2706,2704,2703,2702,2702,2701,2700,2699,2698,2697,
+2696,2695,2693,2690,2685,2678,2671,2663,2656,2650,2645,2642,2639,2636,2634,2631,2629,2625,2621,2616,
+2611,2605,2599,2592,2586,2579,2572,2565,2558,2550,2542,2534,2526,2518,2511,2503,2496,2489,2481,2473,
+2465,2456,2448,2440,2432,2425,2419,2412,2406,2400,2394,2388,2382,2376,2370,2364,2358,2352,2346,2340,
+2334,2327,2321,2315,2309,2303,2296,2290,2283,2276,2269,2263,2256,2249,2242,2234,2226,2218,2210,2202,
+2195,2189,2183,2177,2171,2165,2159,2153,2147,2141,2135,2130,2124,2119,2113,2107,2101,2094,2088,2081,
+2073,2066,2058,2049,2041,2033,2026,2018,2011,2004,1997,1990,1984,1978,1971,1965,1959,1953,1946,1940,
+1934,1927,1920,1913,1905,1897,1889,1882,1875,1869,1863,1857,1852,1847,1841,1835,1830,1824,1818,1813,
+1807,1801,1795,1790,1783,1777,1770,1763,1756,1749,1742,1734,1727,1719,1711,1704,1696,1689,1682,1675,
+1668,1661,1654,1647,1639,1632,1625,1618,1611,1604,1598,1592,1587,1581,1575,1569,1563,1557,1551,1545,
+1539,1533,1528,1523,1517,1512,1507,1502,1498,1493,1489,1485,1480,1476,1472,1468,1463,1460,1456,1453,
+1450,1448,1445,1442,1440,1437,1435,1432,1429,1425,1422,1419,1415,1413,1410,1408,1406,1404,1402,1400,
+1398,1396,1393,1391,1388,1385,1382,1379,1376,1372,1369,1365,1362,1358,1355,1351,1347,1344,1340,1336,
+1332,1328,1324,1320,1315,1311,1307,1303,1298,1293,1288,1283,1277,1272,1266,1261,1256,1251,1247,1242,
+1237,1233,1229,1225,1222,1218,1215,1211,1208,1205,1201,1198,1194,1190,1185,1181,1176,1170,1165,1160,
+1156,1151,1147,1143,1139,1135,1131,1127,1124,1120,1116,1111,1107,1103,1099,1094,1090,1086,1083,1079,
+1075,1072,1069,1067,1064,1061,1059,1056,1054,1051,1049,1046,1044,1042,1040,1038,1036,1034,1032,1030,
+1028,1026,1025,1023,1022,1021,1020,1019,1019,1018,1018,1018,1018,1018,1018,1019,1019,1019,1019,1019,
+1018,1018,1018,1018,1017,1017,1017,1017,1017,1017,1017,1016,1016,1016,1016,1016,1016,1016,1015,1014,
+1013,1012,1010,1008,1006,1003,1000,997,993,989,983,977,969,960,951,941,930,920,909,897,
+886,874,863,853,843,835,827,820,814,808,804,800,796,793,790,788,786,784,782,781,
+780,780,781,783,786,790,795,800,806,812,818,824,831,837,842,848,853,858,863,867,
+871,874,877,878,878,878,877,876,874,871,868,864,860,855,849,843,837,831,826,820,
+814,809,804,799,794,789,783,777,772,766,760,754,749,743,738,732,727,722,717,712,
+707,701,696,690,685,680,675,669,664,660,655,651,647,643,639,635,632,629,626,624,
+621,618,616,613,611,610,608,607,606,604,603,602,601,599,598,597,595,594,593,592,
+591,590,589,588,588,587,585,584,583,582,581,580,579,578,578,577,576,576,576,575,
+575,575,575,575,576,577,578,580,582,585,588,592,596,601,606,612,618,625,632,640,
+649,657,666,675,684,692,700,706,711,715,719,723,726,730,732,734,735,734,733,729,
+724,718,710,702,693,685,678,672,667,664,662,663,665,669,674,679,684,689,691,690,
+686,679,669,657,644,632,622,615,610,608,607,608,609,610,610,609,607,604,601,597,
+594,591,589,587,586,585,585,585,586,588,590,593,596,600,604,607,611,614,617,620,
+623,626,629,632,635,637,640,642,644,645,647,648,650,652,654,656,658,661,664,667,
+671,675,679,682,686,690,693,697,699,702,703,704,704,704,704,703,702,701,701,701,
+701,701,702,703,705,707,710,714,719,724,730,737,743,750,756,763,770,776,782,788,
+794,801,807,813,819,824,828,833,836,840,844,847,849,850,852,852,853,853,852,851,
+850,848,847,846,845,844,844,843,843,844,846,849,853,857,861,864,867,868,867,866,
+863,858,852,844,838,832,827,825,823,823,823,822,823,823,825,827,830,833,836,839,
+842,844,847,850,853,856,859,863,868,873,878,884,889,895,900,905,909,913,917,921,
+924,927,930,931,931,930,927,923,918,911,904,897,889,881,875,869,866,863,863,863,
+864,866,869,872,874,876,878,878,878,877,876,873,871,868,865,864,863,863,864,867,
+871,875,881,887,892,897,901,903,904,904,903,902,900,897,895,893,892,891,890,891,
+892,893,895,898,901,903,906,908,911,914,918,922,926,930,934,937,940,942,942,942,
+941,939,936,932,928,925,922,919,917,915,914,913,912,912,912,912,912,912,912,913,
+913,913,912,912,912,912,914,916,919,923,926,929,931,933,934,935,937,939,941,944,
+947,951,954,957,960,963,965,969,972,976,980,985,990,995,999,1003,1007,1010,1012,1014,
+1015,1015,1015,1015,1015,1015,1016,1017,1019,1020,1023,1025,1028,1031,1034,1037,1040,1043,1045,1048,
+1051,1053,1056,1059,1063,1067,1071,1075,1079,1083,1087,1091,1095,1100,1104,1108,1113,1118,1122,1127,
+1132,1137,1142,1148,1154,1160,1166,1173,1180,1187,1193,1200,1206,1212,1217,1223,1230,1236,1243,1250,
+1256,1262,1268,1273,1279,1284,1290,1295,1300,1306,1310,1315,1318,1320,1322,1324,1326,1328,1331,1334,
+1337,1339,1341,1342,1344,1347,1350,1353,1356,1359,1361,1362,1363,1365,1366,1367,1369,1372,1376,1381,
+1386,1391,1395,1399,1402,1405,1407,1408,1408,1408,1407,1405,1404,1402,1401,1400,1400,1401,1402,1404,
+1406,1409,1412,1416,1421,1426,1432,1438,1445,1452,1458,1465,1472,1478,1484,1490,1494,1498,1501,1504,
+1506,1507,1509,1510,1512,1514,1516,1518,1520,1522,1524,1525,1527,1530,1533,1537,1541,1545,1549,1554,
+1558,1562,1566,1569,1571,1572,1573,1573,1573,1574,1576,1579,1582,1586,1591,1597,1603,1609,1617,1624,
+1633,1641,1651,1660,1670,1680,1690,1699,1709,1719,1728,1738,1747,1755,1762,1769,1775,1782,1789,1797,
+1804,1811,1818,1824,1831,1837,1844,1850,1856,1862,1868,1873,1879,1884,1890,1895,1900,1904,1907,1911,
+1914,1917,1920,1923,1926,1929,1931,1934,1936,1938,1940,1942,1944,1946,1948,1950,1952,1954,1956,1958,
+1959,1961,1962,1964,1965,1966,1968,1969,1970,1970,1971,1972,1974,1975,1977,1980,1983,1987,1991,1996,
+2002,2009,2016,2023,2031,2039,2048,2057,2066,2076,2086,2096,2107,2118,2129,2140,2152,2163,2174,2185,
+2195,2204,2212,2220,2228,2235,2242,2249,2256,2262,2267,2271,2275,2277,2280,2282,2285,2287,2290,2292,
+2293,2295,2296,2298,2300,2303,2305,2308,2311,2314,2317,2320,2323,2327,2331,2336,2340,2344,2347,2351,
+2355,2359,2363,2367,2371,2374,2377,2379,2380,2381,2382,2383,2385,2387,2390,2393,2396,2398,2401,2404,
+2407,2410,2412,2414,2416,2418,2420,2423,2427,2432,2438,2444,2451,2458,2466,2474,2481,2488,2496,2502,
+2508,2515,2521,2527,2534,2540,2547,2554,2560,2566,2570,2574,2578,2582,2586,2591,2595,2598,2602,2605,
+2607,2610,2612,2614,2616,2618,2620,2622,2624,2628,2631,2635,2639,2643,2648,2653,2659,2664,2669,2675,
+2680,2684,2688,2690,2692,2693,2694,2694,2694,2694,2695,2696,2698,2700,2700,2699,2694,2687,2678,2666,
+2652,2637,2623,2610,2598,2588,2581,2577,2575,2574,2576,2580,2584,2588,2593,2597,2600,2604,2609,2614,
+2620,2627,2634,2641,2647,2651,2654,2656,2657,2657,2657,2658,2659,2661,2663,2666,2669,2672,2675,2678,
+2681,2684,2687,2690,2694,2698,2702,2707,2713,2720,2727,2734,2741,2748,2755,2761,2767,2772,2776,2780,
+2784,2787,2792,2796,2801,2806,2811,2815,2820,2824,2827,2830,2833,2834,2833,2832,2830,2826,2821,2814,
+2807,2797,2787,2776,2764,2796,2799,2802,2806,2810,2813,2815,2816,2815,2813,2810,2806,2802,2799,2795,
+2792,2790,2787,2785,2784,2783,2783,2783,2783,2784,2785,2785,2784,2781,2776,2769,2760,2751,2743,2736,
+2730,2724,2718,2711,2702,2694,2685,2678,2671,2665,2659,2653,2647,2642,2636,2629,2622,2614,2606,2599,
+2592,2585,2580,2574,2569,2563,2557,2551,2545,2539,2532,2525,2518,2511,2504,2496,2488,2480,2473,2466,
+2458,2451,2444,2437,2430,2422,2415,2408,2401,2393,2386,2378,2371,2364,2358,2351,2345,2339,2333,2327,
+2322,2316,2310,2305,2299,2294,2289,2284,2279,2274,2269,2264,2259,2254,2248,2242,2235,2228,2221,2214,
+2206,2200,2193,2187,2181,2175,2169,2163,2158,2152,2147,2141,2135,2129,2123,2116,2109,2102,2094,2087,
+2079,2071,2063,2056,2048,2041,2034,2028,2021,2015,2009,2004,1999,1993,1988,1982,1976,1970,1964,1957,
+1950,1943,1936,1929,1922,1915,1907,1900,1892,1883,1875,1866,1858,1850,1843,1836,1829,1823,1817,1811,
+1805,1798,1792,1786,1779,1772,1765,1758,1751,1744,1737,1730,1723,1716,1708,1701,1693,1685,1678,1670,
+1663,1657,1650,1644,1637,1630,1623,1617,1609,1602,1595,1588,1581,1574,1567,1560,1553,1546,1538,1531,
+1524,1517,1510,1504,1498,1492,1487,1482,1477,1473,1468,1464,1461,1457,1454,1450,1447,1444,1441,1438,
+1436,1433,1431,1428,1425,1423,1420,1417,1415,1412,1410,1408,1406,1403,1401,1398,1396,1394,1392,1390,
+1389,1388,1387,1386,1386,1385,1383,1382,1381,1379,1378,1376,1374,1372,1370,1368,1365,1363,1360,1357,
+1354,1350,1346,1342,1338,1334,1329,1324,1319,1313,1308,1302,1297,1291,1285,1280,1275,1270,1265,1259,
+1254,1249,1244,1239,1234,1228,1223,1218,1213,1207,1202,1197,1192,1187,1181,1176,1171,1166,1160,1155,
+1149,1144,1139,1133,1128,1122,1117,1112,1107,1102,1097,1093,1088,1083,1079,1074,1069,1064,1059,1055,
+1050,1046,1042,1038,1034,1030,1027,1023,1019,1016,1012,1008,1005,1001,998,994,991,988,984,981,
+977,974,970,967,964,961,959,956,954,952,950,949,948,947,947,946,945,944,943,942,
+941,939,938,936,934,933,931,930,929,927,927,926,925,925,925,925,925,925,925,926,
+926,927,927,927,928,929,929,930,931,931,932,932,932,933,933,933,933,933,932,931,
+930,927,924,921,917,913,908,903,898,892,886,878,869,860,850,839,827,816,805,794,
+785,776,769,762,755,750,745,740,736,732,730,728,727,728,729,731,733,736,740,744,
+749,754,759,764,769,774,778,782,784,786,787,787,787,787,786,784,783,781,779,776,
+774,771,768,764,760,755,749,743,737,730,724,717,712,707,702,697,693,688,684,680,
+676,672,667,663,659,655,650,646,642,637,633,628,624,619,615,611,607,603,600,597,
+594,592,589,587,584,582,579,577,574,572,570,568,566,565,563,562,561,560,559,558,
+557,556,555,554,553,552,551,550,549,547,546,544,542,539,537,535,533,532,530,530,
+530,531,534,537,541,546,551,557,563,569,575,581,586,592,599,605,613,620,629,638,
+647,657,667,676,684,691,696,700,702,704,704,704,704,703,701,698,694,689,683,675,
+667,658,649,640,632,625,620,616,613,611,611,613,616,620,625,629,633,634,633,629,
+623,614,604,594,585,577,572,571,574,580,587,595,602,606,607,605,600,594,587,579,
+571,563,557,553,549,548,547,547,548,550,552,555,558,562,566,569,573,577,581,585,
+588,591,594,597,600,603,605,607,609,611,613,615,617,619,621,623,625,627,629,631,
+633,635,638,640,643,646,648,651,654,656,659,661,662,663,664,665,666,667,668,669,
+670,672,674,677,680,683,687,691,696,700,705,710,716,721,726,731,736,740,744,747,
+750,753,756,759,762,765,768,771,774,776,778,780,781,782,783,784,784,784,784,783,
+783,782,782,781,780,780,779,778,779,779,779,780,779,779,778,776,774,771,767,763,
+759,757,756,757,759,763,768,775,782,790,799,807,813,818,822,825,827,828,827,826,
+823,818,811,804,797,790,785,781,779,779,780,782,784,787,790,795,802,810,818,826,
+832,837,840,842,843,843,843,841,840,838,836,835,833,831,830,829,830,831,831,831,
+831,829,827,825,823,822,820,819,819,818,817,815,812,809,806,803,801,799,798,799,
+800,803,807,811,815,820,824,826,828,828,827,825,822,820,819,819,820,821,823,825,
+828,831,835,839,843,846,849,851,854,857,860,863,865,867,869,869,870,870,870,870,
+869,869,868,867,866,864,862,860,859,857,856,856,856,855,855,855,855,854,855,855,
+855,855,856,856,857,858,859,860,861,862,863,864,866,868,869,871,872,873,874,875,
+877,879,882,885,888,890,893,895,898,900,903,905,907,908,909,911,912,914,916,918,
+920,922,924,925,927,929,932,934,937,940,943,947,951,955,958,961,964,966,968,970,
+972,974,977,979,982,985,988,992,996,1000,1005,1010,1015,1021,1028,1034,1040,1045,1050,1055,
+1059,1063,1067,1071,1075,1078,1082,1086,1091,1095,1100,1105,1110,1115,1120,1125,1130,1136,1142,1148,
+1154,1161,1168,1174,1181,1186,1191,1196,1200,1203,1207,1212,1216,1220,1225,1228,1232,1235,1239,1243,
+1247,1251,1255,1259,1263,1267,1270,1274,1277,1281,1283,1285,1287,1288,1290,1293,1297,1301,1307,1313,
+1318,1323,1328,1332,1336,1339,1341,1343,1343,1343,1342,1341,1341,1340,1340,1341,1343,1347,1351,1355,
+1360,1365,1371,1378,1385,1392,1400,1407,1413,1418,1423,1428,1432,1436,1439,1443,1448,1453,1459,1464,
+1470,1475,1479,1482,1485,1488,1490,1492,1493,1494,1496,1500,1504,1509,1514,1520,1526,1531,1537,1543,
+1548,1554,1560,1565,1569,1572,1574,1576,1578,1580,1583,1586,1589,1591,1594,1598,1602,1607,1612,1619,
+1626,1635,1644,1654,1664,1674,1685,1695,1706,1718,1728,1739,1749,1759,1769,1778,1787,1795,1803,1811,
+1818,1827,1835,1843,1850,1857,1863,1869,1874,1880,1886,1893,1901,1908,1916,1923,1930,1936,1941,1945,
+1949,1953,1957,1960,1964,1968,1973,1978,1983,1988,1991,1994,1996,1998,2001,2004,2009,2013,2017,2020,
+2022,2024,2026,2029,2033,2037,2041,2044,2048,2051,2055,2058,2061,2064,2067,2071,2075,2080,2086,2093,
+2100,2107,2114,2122,2130,2139,2148,2158,2169,2180,2192,2204,2216,2229,2241,2254,2267,2281,2293,2305,
+2316,2326,2336,2347,2357,2368,2378,2389,2399,2408,2417,2426,2434,2442,2449,2456,2463,2469,2474,2478,
+2482,2485,2489,2492,2496,2500,2503,2505,2507,2509,2512,2515,2518,2522,2526,2530,2535,2540,2545,2549,
+2553,2556,2559,2561,2561,2561,2561,2560,2560,2560,2561,2561,2561,2560,2557,2554,2551,2548,2546,2545,
+2545,2545,2544,2542,2538,2534,2527,2521,2514,2508,2503,2499,2498,2498,2500,2504,2509,2515,2522,2529,
+2537,2546,2555,2564,2573,2580,2586,2591,2595,2598,2601,2605,2610,2616,2622,2628,2634,2640,2645,2650,
+2655,2659,2662,2665,2667,2670,2674,2678,2682,2687,2691,2695,2699,2702,2704,2707,2710,2713,2716,2719,
+2722,2724,2724,2722,2717,2710,2700,2687,2672,2655,2636,2616,2598,2583,2572,2565,2562,2562,2566,2572,
+2580,2590,2601,2611,2621,2630,2637,2643,2647,2648,2646,2642,2638,2634,2632,2632,2636,2643,2651,2660,
+2670,2678,2684,2689,2692,2695,2698,2701,2704,2707,2708,2710,2711,2713,2715,2716,2718,2720,2721,2724,
+2727,2731,2735,2739,2744,2749,2756,2763,2770,2778,2785,2791,2797,2802,2807,2813,2820,2827,2834,2840,
+2846,2851,2855,2857,2858,2858,2858,2856,2855,2854,2853,2852,2850,2848,2844,2839,2834,2828,2821,2815,
+2809,2804,2799,2796,2795,2796,2889,2888,2885,2881,2875,2869,2862,2855,2848,2841,2836,2832,2830,2829,
+2830,2831,2833,2835,2836,2837,2836,2835,2833,2829,2825,2821,2815,2809,2801,2793,2784,2775,2766,2758,
+2749,2741,2732,2722,2714,2706,2699,2693,2687,2681,2674,2667,2660,2653,2646,2638,2630,2620,2611,2602,
+2595,2591,2587,2585,2583,2580,2576,2571,2566,2559,2552,2545,2536,2528,2519,2510,2501,2493,2484,2475,
+2467,2459,2450,2442,2435,2427,2420,2413,2406,2398,2391,2383,2375,2367,2360,2353,2346,2338,2331,2324,
+2317,2311,2306,2301,2296,2292,2287,2282,2278,2273,2269,2265,2260,2255,2249,2242,2235,2228,2222,2215,
+2209,2204,2198,2192,2186,2181,2176,2170,2165,2160,2155,2149,2144,2139,2134,2129,2124,2118,2111,2104,
+2097,2089,2081,2074,2067,2060,2054,2048,2042,2036,2030,2024,2018,2013,2008,2003,1998,1992,1986,1979,
+1972,1964,1955,1948,1940,1932,1924,1916,1908,1900,1892,1884,1876,1869,1862,1855,1849,1842,1835,1828,
+1821,1813,1805,1797,1789,1781,1773,1765,1758,1751,1744,1737,1730,1723,1716,1709,1703,1696,1690,1684,
+1678,1671,1664,1657,1648,1640,1631,1622,1613,1605,1597,1588,1580,1571,1563,1554,1546,1537,1529,1520,
+1512,1505,1497,1490,1483,1477,1471,1465,1460,1456,1452,1448,1445,1441,1438,1435,1432,1429,1426,1423,
+1421,1419,1417,1414,1412,1409,1407,1405,1404,1403,1402,1400,1399,1397,1396,1395,1394,1393,1392,1390,
+1389,1388,1387,1387,1386,1386,1385,1385,1384,1383,1383,1382,1382,1381,1380,1379,1378,1376,1375,1373,
+1372,1369,1367,1364,1361,1358,1355,1351,1347,1342,1337,1332,1326,1320,1314,1308,1301,1294,1288,1281,
+1274,1267,1261,1254,1248,1241,1235,1228,1222,1216,1210,1204,1198,1192,1186,1180,1174,1167,1160,1152,
+1145,1138,1131,1123,1116,1108,1101,1094,1087,1081,1075,1070,1065,1060,1055,1049,1044,1039,1034,1029,
+1024,1019,1014,1010,1005,1001,996,991,986,982,977,972,967,963,958,953,949,944,939,934,
+930,926,922,919,915,912,909,906,903,900,898,895,892,889,886,883,880,877,875,873,
+870,868,866,865,863,861,860,859,858,858,857,857,857,857,857,857,857,858,858,858,
+859,859,860,861,862,863,864,865,866,866,867,867,868,868,869,869,870,870,871,871,
+871,872,872,872,873,873,873,873,873,874,874,875,875,874,873,872,870,868,866,864,
+861,858,854,850,846,840,834,826,817,807,795,783,770,756,743,730,718,708,699,692,
+687,684,682,683,686,689,694,699,704,709,714,719,723,726,729,731,732,733,733,733,
+732,730,728,726,722,718,713,707,701,695,688,682,677,672,667,663,659,655,651,648,
+644,640,637,633,630,626,623,620,617,614,610,607,603,600,596,593,589,586,582,578,
+574,571,567,564,561,559,556,553,551,548,545,542,540,537,535,533,532,530,529,527,
+525,523,521,520,518,516,514,512,510,508,506,503,500,498,495,492,489,487,485,484,
+484,486,488,491,496,501,507,515,523,532,542,552,563,574,584,595,605,614,622,629,
+635,641,645,649,651,652,651,649,645,641,636,630,624,618,611,604,596,588,579,571,
+562,554,548,542,538,535,534,534,535,537,540,543,547,551,555,559,562,564,564,561,
+557,551,544,537,532,530,531,536,543,553,565,577,588,598,605,608,607,603,595,586,
+575,565,555,547,541,537,534,532,531,531,531,532,533,535,536,537,539,541,543,545,
+547,549,551,554,556,558,560,563,565,568,570,572,574,576,578,581,583,586,588,591,
+594,597,599,602,604,606,608,611,614,617,620,623,626,630,633,636,638,640,642,643,
+645,647,649,652,655,657,660,663,666,669,673,676,680,683,686,689,692,695,698,701,
+702,703,704,704,705,706,707,708,710,711,713,715,716,718,719,720,720,719,718,719,
+721,724,726,728,729,728,726,724,722,720,718,715,713,710,707,705,702,700,697,695,
+694,692,692,692,693,695,698,702,705,707,709,711,712,713,713,710,705,699,694,691,
+689,689,689,690,690,692,694,697,702,707,713,718,724,729,734,739,742,744,746,747,
+749,751,754,757,760,763,766,768,769,771,772,773,774,775,776,776,776,775,774,773,
+773,772,772,771,769,766,762,757,752,748,744,740,737,733,730,727,725,724,725,727,
+729,731,734,737,740,742,744,746,748,750,754,758,763,768,772,775,776,775,773,770,
+767,764,763,763,764,767,770,774,777,781,785,789,792,795,797,799,799,799,799,798,
+797,796,795,794,793,793,793,794,795,796,796,796,796,796,797,797,799,800,801,801,
+802,802,802,802,802,801,800,799,798,798,797,797,796,796,796,796,798,799,801,804,
+806,809,811,814,817,819,822,824,825,827,829,830,832,833,834,835,836,837,840,843,
+847,852,858,865,871,877,883,888,892,895,897,898,898,898,898,898,899,900,901,902,
+903,905,907,909,912,914,917,920,924,927,931,934,938,942,946,951,955,960,963,966,
+969,971,973,975,977,980,983,986,990,995,999,1004,1009,1014,1018,1022,1026,1029,1033,1036,
+1041,1046,1053,1060,1068,1075,1081,1087,1092,1097,1102,1107,1111,1115,1119,1123,1127,1131,1135,1139,
+1145,1151,1157,1164,1170,1175,1179,1183,1187,1190,1194,1199,1203,1208,1213,1217,1222,1227,1232,1237,
+1241,1245,1249,1251,1254,1256,1258,1260,1262,1264,1266,1270,1275,1282,1291,1302,1314,1325,1336,1345,
+1352,1357,1360,1362,1362,1361,1359,1356,1353,1350,1349,1348,1349,1351,1356,1361,1368,1377,1386,1397,
+1408,1419,1430,1440,1448,1456,1463,1470,1478,1486,1493,1500,1507,1513,1518,1524,1530,1536,1541,1546,
+1552,1557,1563,1569,1575,1581,1586,1591,1596,1602,1608,1616,1624,1632,1641,1650,1659,1669,1680,1691,
+1702,1712,1720,1728,1735,1742,1749,1755,1761,1766,1771,1776,1783,1791,1800,1810,1820,1829,1837,1844,
+1852,1859,1867,1876,1884,1892,1900,1906,1912,1917,1922,1927,1933,1939,1946,1954,1961,1969,1977,1985,
+1991,1996,2000,2003,2006,2008,2011,2014,2017,2020,2023,2027,2031,2037,2042,2047,2051,2054,2057,2060,
+2064,2069,2074,2080,2086,2092,2098,2104,2110,2116,2121,2126,2132,2138,2144,2151,2158,2163,2168,2173,
+2178,2182,2187,2192,2197,2202,2208,2214,2221,2227,2234,2242,2250,2259,2268,2278,2288,2297,2307,2316,
+2325,2334,2344,2354,2364,2375,2385,2395,2405,2414,2422,2431,2439,2447,2454,2461,2468,2474,2480,2486,
+2492,2499,2506,2513,2520,2526,2532,2536,2541,2545,2549,2553,2558,2562,2567,2572,2576,2580,2584,2586,
+2589,2590,2591,2592,2593,2594,2595,2595,2595,2595,2596,2596,2597,2597,2598,2597,2596,2595,2592,2589,
+2585,2581,2577,2573,2569,2566,2564,2563,2562,2562,2562,2563,2565,2567,2571,2575,2581,2587,2595,2602,
+2609,2617,2624,2632,2640,2647,2655,2661,2667,2671,2675,2679,2684,2688,2694,2700,2706,2712,2718,2724,
+2729,2734,2738,2742,2745,2748,2752,2755,2757,2759,2760,2759,2759,2759,2759,2760,2761,2762,2763,2762,
+2759,2754,2748,2741,2734,2727,2721,2717,2714,2713,2712,2712,2711,2709,2704,2698,2692,2685,2680,2676,
+2675,2675,2676,2677,2678,2677,2677,2676,2676,2675,2674,2672,2669,2668,2669,2673,2681,2692,2702,2712,
+2720,2726,2732,2737,2741,2744,2747,2750,2753,2756,2759,2762,2765,2767,2770,2772,2774,2775,2777,2779,
+2783,2787,2792,2799,2806,2814,2822,2829,2835,2840,2845,2849,2854,2860,2866,2872,2878,2884,2888,2892,
+2895,2896,2897,2898,2897,2895,2891,2886,2879,2871,2862,2855,2849,2845,2844,2845,2847,2852,2857,2863,
+2869,2875,2880,2884,2887,2889,2889,2939,2934,2928,2922,2914,2907,2900,2893,2887,2882,2879,2877,2876,
+2876,2876,2876,2874,2871,2868,2864,2860,2855,2850,2845,2840,2834,2827,2819,2809,2798,2788,2778,2770,
+2762,2755,2748,2740,2732,2725,2717,2709,2702,2695,2688,2681,2675,2668,2662,2656,2650,2646,2640,2635,
+2629,2622,2616,2609,2602,2594,2584,2573,2562,2553,2547,2542,2537,2532,2524,2515,2505,2495,2485,2476,
+2467,2458,2450,2442,2434,2427,2419,2412,2406,2400,2396,2391,2387,2382,2377,2371,2365,2358,2351,2342,
+2334,2327,2320,2313,2308,2302,2296,2291,2285,2279,2273,2267,2260,2253,2247,2241,2235,2229,2224,2218,
+2213,2208,2203,2197,2192,2187,2181,2176,2170,2165,2160,2155,2150,2146,2141,2136,2132,2127,2123,2118,
+2113,2107,2102,2096,2090,2083,2077,2070,2063,2057,2051,2046,2041,2037,2032,2027,2022,2017,2011,2005,
+1999,1992,1985,1978,1970,1962,1954,1946,1938,1930,1922,1913,1905,1897,1888,1880,1872,1865,1858,1852,
+1845,1839,1833,1827,1821,1814,1807,1800,1793,1785,1778,1771,1764,1757,1750,1743,1736,1729,1722,1715,
+1706,1697,1688,1678,1668,1659,1650,1641,1632,1622,1612,1601,1590,1579,1568,1558,1547,1537,1527,1517,
+1507,1497,1488,1478,1469,1460,1451,1443,1436,1429,1422,1416,1411,1407,1403,1401,1399,1397,1395,1393,
+1391,1388,1385,1383,1380,1378,1378,1380,1383,1386,1389,1391,1393,1394,1395,1396,1396,1397,1397,1398,
+1398,1398,1399,1399,1399,1399,1400,1400,1401,1402,1403,1405,1406,1407,1408,1408,1408,1408,1408,1407,
+1407,1406,1404,1402,1400,1397,1394,1390,1385,1381,1375,1370,1364,1358,1351,1344,1337,1330,1322,1313,
+1305,1296,1287,1278,1269,1260,1252,1244,1236,1228,1221,1214,1207,1200,1194,1187,1181,1174,1167,1160,
+1152,1144,1136,1128,1120,1112,1103,1095,1087,1080,1072,1065,1059,1052,1046,1040,1034,1028,1022,1017,
+1011,1006,1001,996,991,986,982,977,972,966,961,955,949,942,936,929,923,917,910,904,
+899,894,889,885,880,876,872,868,864,860,856,852,848,844,840,837,833,830,827,824,
+821,818,815,813,810,808,807,805,803,802,801,799,797,796,794,793,791,790,788,787,
+786,786,785,785,785,785,786,787,788,789,790,791,791,792,793,793,794,794,795,795,
+796,797,797,798,799,801,802,804,807,810,814,817,821,824,828,832,835,839,842,844,
+846,847,849,850,850,850,850,849,849,849,848,845,841,834,823,810,794,776,758,739,
+721,705,690,677,667,659,654,650,649,651,654,658,662,667,672,675,679,682,683,685,
+685,685,684,683,681,679,676,673,670,666,662,658,654,649,645,642,637,633,628,624,
+619,615,610,606,602,598,594,591,588,586,583,580,577,574,571,568,565,562,558,555,
+552,548,544,541,538,536,533,530,528,525,522,520,517,514,512,509,506,503,500,498,
+495,492,489,486,484,480,477,474,470,466,462,458,453,448,444,440,437,434,432,431,
+430,431,433,435,439,443,449,457,465,474,483,492,501,511,520,529,538,545,552,557,
+560,563,565,566,567,566,564,562,558,554,549,543,537,530,522,515,508,502,496,491,
+486,482,479,476,474,473,472,472,472,472,473,474,475,476,478,480,482,483,484,484,
+484,482,481,480,481,485,491,500,512,526,540,554,567,579,588,594,597,598,596,593,
+587,581,574,567,561,555,551,547,543,541,538,536,534,531,529,526,524,521,519,518,
+516,515,514,514,514,514,515,517,519,521,524,526,529,532,535,539,542,545,547,550,
+553,556,559,562,565,568,571,574,577,580,582,584,585,586,588,589,591,593,596,599,
+603,607,611,616,620,625,630,635,640,645,651,657,662,667,670,672,673,673,672,672,
+672,672,672,673,675,676,678,680,681,682,683,683,684,684,684,683,682,681,679,677,
+673,670,667,664,661,658,655,652,649,645,642,640,638,637,638,640,643,645,646,646,
+645,643,641,639,637,635,632,629,626,624,622,620,618,617,615,614,613,613,614,616,
+618,622,626,630,634,639,644,648,653,657,661,666,670,674,678,683,688,694,698,702,
+703,702,700,697,693,689,686,684,683,683,683,684,684,683,682,680,678,677,675,674,
+673,671,669,667,664,661,659,657,655,653,652,651,651,652,653,656,661,667,673,680,
+686,690,693,695,695,695,694,692,691,691,691,691,691,691,690,689,687,685,684,684,
+685,688,691,695,699,704,708,713,717,722,727,731,734,735,735,734,731,728,723,719,
+715,712,709,707,706,706,706,707,707,707,707,707,708,708,710,712,714,717,719,721,
+722,722,722,722,722,723,723,723,724,724,725,726,727,728,729,731,734,737,740,744,
+748,752,756,759,762,765,767,769,771,772,773,774,775,776,777,778,779,780,781,783,
+785,787,790,793,796,800,803,806,808,811,813,815,816,818,819,821,822,824,826,828,
+830,832,835,837,840,843,846,850,853,857,860,863,866,868,870,872,873,875,876,878,
+881,883,886,888,890,893,895,898,900,904,907,911,916,921,926,931,937,943,950,956,
+961,966,971,976,981,986,991,996,1000,1005,1010,1015,1019,1024,1028,1031,1035,1038,1042,1046,
+1050,1055,1060,1065,1069,1073,1077,1081,1085,1089,1093,1097,1101,1106,1111,1117,1122,1126,1131,1135,
+1139,1143,1146,1149,1152,1155,1159,1163,1168,1174,1180,1188,1198,1210,1224,1238,1251,1262,1272,1280,
+1285,1290,1294,1297,1299,1301,1303,1305,1307,1311,1316,1322,1329,1336,1343,1351,1360,1369,1379,1390,
+1400,1409,1418,1426,1433,1440,1448,1455,1461,1468,1475,1481,1488,1494,1501,1507,1514,1521,1528,1535,
+1543,1551,1559,1568,1577,1586,1595,1604,1614,1624,1636,1649,1663,1677,1691,1705,1719,1732,1744,1756,
+1766,1775,1782,1789,1794,1798,1802,1806,1811,1817,1823,1829,1835,1839,1843,1847,1852,1856,1861,1866,
+1871,1876,1881,1886,1891,1894,1897,1899,1901,1903,1906,1910,1915,1920,1926,1931,1935,1938,1941,1943,
+1946,1948,1951,1955,1958,1962,1966,1970,1974,1978,1982,1986,1990,1994,1997,2001,2004,2007,2010,2012,
+2015,2019,2024,2030,2037,2045,2054,2062,2070,2078,2085,2092,2098,2105,2113,2121,2129,2136,2142,2147,
+2150,2153,2156,2159,2162,2167,2171,2176,2180,2182,2185,2188,2192,2198,2206,2214,2223,2231,2240,2249,
+2258,2267,2275,2284,2293,2302,2311,2319,2327,2335,2343,2352,2360,2367,2375,2382,2389,2396,2403,2410,
+2417,2424,2431,2438,2443,2449,2454,2459,2464,2470,2475,2481,2486,2490,2495,2499,2502,2506,2509,2512,
+2516,2520,2523,2526,2529,2531,2534,2536,2537,2538,2538,2538,2538,2537,2537,2536,2535,2534,2533,2534,
+2536,2539,2544,2550,2556,2563,2568,2572,2577,2582,2588,2595,2603,2610,2617,2626,2636,2650,2665,2681,
+2695,2708,2719,2730,2741,2752,2762,2772,2782,2793,2804,2815,2824,2830,2833,2835,2836,2837,2839,2840,
+2842,2846,2850,2853,2856,2856,2856,2856,2858,2862,2864,2865,2864,2863,2864,2867,2872,2877,2879,2879,
+2878,2877,2877,2877,2877,2877,2875,2874,2874,2873,2871,2868,2865,2861,2858,2855,2853,2851,2846,2839,
+2826,2809,2789,2769,2752,2737,2726,2716,2706,2697,2688,2683,2680,2682,2687,2694,2702,2710,2717,2723,
+2729,2736,2743,2749,2755,2760,2765,2771,2778,2786,2796,2804,2812,2818,2823,2827,2829,2831,2832,2835,
+2839,2844,2850,2855,2860,2865,2872,2880,2890,2901,2911,2920,2927,2932,2936,2938,2941,2943,2945,2947,
+2947,2944,2940,2935,2930,2924,2918,2912,2905,2899,2895,2894,2896,2901,2908,2916,2924,2931,2937,2941,
+2944,2946,2947,2948,2948,2946,2943,2939,2952,2948,2947,2945,2945,2944,2943,2941,2939,2936,2932,2928,
+2922,2914,2905,2895,2885,2876,2867,2860,2854,2848,2842,2836,2828,2819,2810,2801,2793,2787,2781,2775,
+2769,2761,2754,2747,2741,2735,2729,2723,2716,2710,2703,2696,2688,2680,2673,2666,2660,2654,2647,2641,
+2636,2630,2623,2614,2602,2588,2572,2555,2539,2525,2515,2509,2507,2508,2509,2506,2501,2493,2486,2481,
+2479,2476,2472,2466,2458,2450,2443,2437,2431,2425,2419,2413,2408,2403,2397,2391,2385,2378,2372,2365,
+2358,2351,2344,2337,2331,2325,2319,2313,2307,2302,2296,2289,2282,2275,2268,2261,2254,2248,2241,2236,
+2231,2227,2223,2219,2214,2210,2205,2199,2194,2188,2183,2180,2177,2174,2171,2167,2164,2161,2159,2156,
+2153,2149,2144,2139,2134,2129,2124,2119,2114,2108,2102,2096,2089,2083,2076,2069,2063,2056,2050,2044,
+2038,2032,2024,2017,2009,2000,1992,1983,1974,1966,1958,1951,1944,1937,1931,1924,1918,1911,1904,1898,
+1891,1884,1878,1872,1866,1860,1855,1849,1843,1837,1831,1824,1816,1809,1800,1791,1782,1773,1765,1756,
+1748,1740,1731,1721,1711,1700,1688,1676,1663,1650,1636,1622,1607,1592,1576,1559,1543,1527,1511,1497,
+1483,1471,1459,1446,1433,1419,1405,1391,1378,1365,1353,1341,1331,1323,1317,1314,1314,1316,1319,1323,
+1326,1328,1328,1328,1326,1323,1320,1318,1316,1315,1316,1317,1319,1322,1326,1331,1336,1342,1347,1353,
+1360,1366,1371,1377,1382,1388,1394,1399,1405,1411,1416,1422,1427,1433,1438,1443,1447,1451,1454,1457,
+1458,1460,1460,1459,1458,1456,1453,1449,1445,1440,1434,1428,1421,1414,1407,1399,1390,1381,1372,1363,
+1353,1343,1333,1323,1312,1302,1292,1282,1272,1261,1251,1241,1231,1222,1212,1203,1193,1184,1175,1165,
+1156,1147,1138,1129,1120,1111,1103,1095,1086,1079,1071,1063,1056,1049,1043,1037,1031,1025,1020,1015,
+1010,1005,1000,996,991,986,982,978,973,968,963,957,951,944,938,931,924,918,911,905,
+899,893,888,882,876,871,865,860,854,849,844,839,834,829,824,819,814,809,805,800,
+795,790,785,780,775,770,765,760,756,752,748,744,740,737,733,731,728,726,724,722,
+721,720,719,718,718,717,717,716,716,716,715,715,714,714,714,714,714,714,715,715,
+715,715,715,716,717,717,719,720,723,726,729,733,737,741,746,751,755,760,764,768,
+772,776,779,781,783,785,786,788,789,791,794,797,801,805,808,809,809,806,800,791,
+779,763,744,723,702,680,660,643,628,617,611,607,607,608,612,616,621,626,630,634,
+638,641,644,646,648,650,651,652,653,652,651,649,646,643,639,634,629,623,617,611,
+605,599,593,587,582,577,573,569,565,562,559,556,553,550,548,545,543,540,537,534,
+531,528,525,522,519,515,512,509,506,503,500,497,494,491,488,485,482,479,475,472,
+468,465,462,459,456,452,449,445,441,437,433,428,424,420,415,411,406,401,397,393,
+389,386,385,385,387,391,397,406,417,430,443,456,469,480,490,498,504,508,511,513,
+514,515,514,513,512,509,506,502,497,491,485,479,473,468,463,458,454,451,448,447,
+446,445,444,443,442,441,438,436,433,429,426,423,421,420,420,420,421,421,422,422,
+423,424,425,426,428,432,440,451,466,484,503,521,540,557,573,586,595,601,604,605,
+604,602,599,595,590,584,578,571,564,556,549,541,534,528,523,518,514,511,508,506,
+503,500,497,495,493,492,491,490,490,491,491,492,494,495,498,500,503,506,509,512,
+516,519,522,526,529,533,537,541,544,547,550,552,554,556,557,559,560,562,564,565,
+567,568,571,574,578,583,588,593,600,606,613,620,627,632,637,641,643,644,644,643,
+641,639,636,634,631,630,628,628,627,626,625,624,623,622,622,621,621,620,620,620,
+621,621,622,624,627,630,634,637,637,637,636,636,638,642,647,651,652,652,649,644,
+637,629,620,610,602,595,589,584,579,576,574,573,571,569,566,566,566,569,573,576,
+579,581,584,586,589,591,593,595,597,600,604,607,611,614,619,623,627,631,633,633,
+632,630,627,624,623,622,623,625,627,629,630,630,629,626,622,617,612,607,602,598,
+595,593,591,591,590,590,590,590,590,591,594,597,601,605,610,614,619,625,633,642,
+648,652,651,646,639,631,624,619,615,613,612,613,614,615,616,617,618,620,623,625,
+627,629,630,630,632,634,636,638,640,641,642,643,643,643,642,640,638,635,632,629,
+626,624,622,621,620,620,621,622,623,624,624,625,625,626,626,627,629,631,634,636,
+638,640,641,641,642,643,644,646,648,650,652,653,654,655,656,658,660,663,667,671,
+675,679,683,687,690,693,696,697,699,699,699,699,698,697,697,698,699,700,701,703,
+705,708,712,717,721,726,730,734,738,741,744,747,749,752,754,756,758,761,763,766,
+768,770,772,774,776,778,779,781,782,784,785,786,788,789,791,794,796,799,802,805,
+808,811,814,818,821,824,826,828,830,833,835,838,841,844,848,852,857,862,867,872,
+877,883,888,893,898,903,908,914,920,926,932,937,942,946,949,952,955,959,963,968,
+972,977,981,985,989,993,996,1000,1005,1009,1014,1019,1025,1030,1035,1040,1045,1051,1056,1062,
+1067,1073,1078,1083,1088,1094,1100,1105,1111,1117,1123,1130,1137,1144,1151,1159,1166,1174,1182,1191,
+1199,1208,1217,1225,1233,1240,1246,1252,1259,1265,1273,1281,1289,1298,1307,1316,1324,1332,1340,1348,
+1356,1365,1375,1384,1394,1403,1412,1422,1432,1443,1455,1467,1480,1494,1508,1521,1535,1549,1563,1577,
+1590,1603,1616,1630,1644,1658,1672,1685,1697,1709,1722,1733,1744,1754,1762,1768,1774,1778,1782,1785,
+1787,1789,1792,1794,1797,1799,1800,1800,1799,1798,1797,1798,1801,1807,1813,1820,1825,1829,1832,1836,
+1839,1844,1849,1854,1858,1862,1867,1871,1875,1880,1885,1890,1895,1900,1905,1910,1914,1919,1922,1925,
+1927,1930,1932,1934,1936,1937,1938,1939,1940,1941,1942,1944,1947,1951,1957,1961,1965,1967,1968,1970,
+1973,1976,1980,1984,1989,1994,2000,2007,2015,2023,2032,2042,2052,2062,2071,2077,2081,2084,2086,2087,
+2086,2084,2082,2080,2079,2079,2079,2081,2084,2087,2092,2097,2102,2109,2115,2122,2129,2136,2143,2150,
+2157,2164,2171,2178,2185,2191,2197,2203,2209,2215,2222,2228,2234,2241,2247,2253,2258,2264,2270,2276,
+2282,2289,2296,2303,2311,2319,2327,2334,2341,2347,2353,2359,2366,2374,2382,2390,2398,2406,2415,2424,
+2434,2444,2454,2464,2474,2484,2492,2499,2504,2509,2514,2519,2523,2527,2530,2534,2540,2546,2552,2557,
+2561,2566,2572,2580,2587,2594,2600,2608,2619,2634,2651,2667,2683,2698,2715,2733,2752,2769,2781,2788,
+2793,2798,2806,2818,2834,2852,2869,2882,2890,2893,2896,2900,2908,2921,2934,2945,2952,2956,2958,2959,
+2960,2960,2959,2958,2956,2954,2952,2951,2950,2949,2951,2954,2959,2964,2968,2971,2971,2971,2969,2966,
+2961,2954,2946,2938,2930,2924,2920,2917,2914,2911,2907,2903,2899,2897,2895,2893,2891,2889,2887,2885,
+2886,2886,2887,2887,2883,2875,2861,2843,2822,2801,2783,2771,2764,2760,2759,2761,2766,2775,2789,2804,
+2817,2826,2827,2824,2817,2811,2806,2803,2801,2800,2803,2809,2820,2834,2847,2857,2863,2867,2869,2872,
+2875,2878,2882,2885,2889,2895,2902,2911,2922,2933,2943,2953,2960,2965,2969,2972,2974,2976,2976,2975,
+2970,2961,2950,2938,2928,2921,2919,2922,2927,2936,2945,2956,2966,2976,2985,2993,2997,3000,2999,2997,
+2994,2990,2985,2980,2975,2968,2962,2956,2952,2979,2980,2982,2983,2984,2984,2983,2981,2977,2972,2963,
+2953,2940,2928,2916,2905,2896,2887,2880,2873,2866,2859,2851,2844,2839,2834,2830,2827,2824,2821,2818,
+2814,2810,2804,2798,2791,2783,2774,2764,2751,2735,2719,2701,2683,2665,2647,2630,2616,2606,2600,2598,
+2596,2592,2586,2577,2567,2558,2551,2546,2543,2544,2547,2550,2549,2545,2539,2532,2524,2517,2508,2499,
+2490,2485,2484,2484,2483,2479,2472,2464,2457,2451,2445,2440,2434,2429,2425,2421,2417,2413,2407,2401,
+2394,2386,2377,2369,2360,2353,2346,2339,2332,2325,2319,2313,2308,2303,2299,2295,2291,2286,2281,2276,
+2270,2264,2259,2254,2249,2244,2240,2236,2232,2228,2224,2221,2217,2214,2212,2209,2207,2205,2203,2201,
+2199,2197,2195,2193,2190,2187,2183,2178,2174,2169,2164,2159,2153,2147,2141,2135,2129,2123,2117,2110,
+2104,2097,2089,2081,2073,2065,2057,2049,2040,2032,2023,2015,2007,1999,1991,1984,1976,1969,1962,1954,
+1947,1940,1933,1927,1920,1913,1906,1900,1893,1887,1880,1873,1867,1860,1854,1847,1838,1829,1819,1809,
+1799,1788,1775,1762,1746,1730,1713,1696,1679,1663,1648,1632,1616,1599,1581,1563,1546,1531,1518,1508,
+1499,1490,1480,1469,1458,1447,1438,1432,1429,1427,1426,1424,1421,1419,1416,1413,1410,1407,1405,1403,
+1402,1399,1395,1389,1381,1371,1360,1347,1332,1315,1297,1281,1267,1257,1251,1248,1248,1250,1255,1263,
+1273,1285,1298,1311,1324,1338,1352,1367,1381,1395,1408,1421,1433,1445,1455,1465,1474,1483,1491,1497,
+1503,1508,1511,1514,1515,1516,1515,1514,1511,1508,1504,1499,1493,1486,1478,1469,1460,1450,1440,1429,
+1418,1407,1395,1383,1370,1357,1344,1332,1319,1306,1294,1281,1268,1255,1241,1228,1215,1201,1188,1176,
+1163,1150,1138,1127,1115,1105,1095,1086,1078,1070,1063,1056,1049,1043,1038,1033,1029,1025,1021,1017,
+1013,1009,1004,1000,995,990,986,981,977,972,968,963,957,952,946,941,935,930,924,918,
+912,906,900,894,888,882,876,870,864,858,851,844,838,831,825,818,811,804,798,791,
+785,779,773,766,760,753,747,740,733,727,720,713,707,701,696,691,686,682,679,676,
+673,671,669,668,667,665,664,662,661,660,658,656,654,652,651,650,648,647,646,645,
+645,644,643,643,642,642,641,641,642,642,644,646,648,650,652,654,656,659,661,663,
+665,668,671,675,679,684,688,693,699,704,708,713,717,720,723,725,726,725,723,720,
+715,709,701,692,681,669,655,641,625,610,596,584,575,569,565,565,566,569,573,578,
+583,588,593,597,602,606,610,614,617,621,623,626,627,627,626,623,619,615,609,603,
+597,591,584,578,571,565,559,553,548,544,540,536,532,529,525,522,519,516,513,510,
+507,504,501,498,494,490,487,484,481,477,474,471,467,464,460,457,454,452,449,447,
+444,442,439,436,433,429,426,422,418,414,410,406,402,398,393,389,384,379,374,369,
+366,363,361,360,362,364,369,374,382,390,400,410,420,431,442,452,461,467,471,473,
+474,472,469,466,461,457,452,448,443,438,433,429,424,420,417,413,410,408,406,405,
+403,402,401,399,397,395,392,390,387,385,383,381,379,378,378,377,375,374,373,372,
+371,370,370,369,369,370,373,378,386,397,411,426,442,459,475,490,503,514,522,528,
+533,536,540,542,543,543,542,539,534,529,522,515,507,501,494,488,484,479,475,472,
+470,468,467,466,465,465,465,466,467,468,469,469,469,469,469,470,471,473,475,477,
+479,482,485,489,493,497,502,508,513,519,525,529,532,533,533,533,533,533,534,535,
+536,537,540,543,547,552,558,566,575,584,594,603,611,618,622,625,625,622,619,614,
+609,604,600,596,592,589,586,584,582,581,581,583,584,585,587,589,590,591,591,590,
+589,588,588,587,587,587,586,584,581,577,571,565,559,554,549,545,540,534,528,522,
+518,515,515,515,515,515,516,516,516,516,517,519,522,524,527,529,531,532,534,536,
+537,538,539,538,537,535,532,530,529,529,531,533,535,536,535,533,531,529,528,528,
+529,531,532,535,537,542,547,554,561,568,572,575,574,571,567,561,556,551,546,541,
+536,531,528,527,527,528,529,532,535,538,541,544,546,549,553,555,558,560,561,561,
+561,559,556,554,553,553,554,556,559,562,565,567,569,571,571,572,573,573,573,572,
+572,572,573,574,575,575,573,572,570,568,568,569,570,571,571,572,571,568,565,561,
+557,553,552,551,551,551,551,550,549,548,547,546,546,547,548,549,551,552,554,554,
+554,555,555,556,558,559,560,562,563,566,568,571,573,575,577,579,581,584,587,590,
+593,596,599,601,604,607,609,611,614,616,618,619,621,622,624,626,628,630,633,636,
+639,644,648,653,658,664,669,673,676,679,680,681,682,683,684,685,687,690,694,697,
+701,705,709,712,715,717,719,721,722,724,725,727,728,729,730,730,731,731,730,729,
+729,730,731,733,735,738,741,744,747,750,754,758,763,768,772,777,782,786,791,795,
+800,804,809,814,820,825,831,837,843,849,854,860,865,870,875,881,886,892,896,900,
+904,907,909,911,913,916,919,922,926,931,936,941,946,952,958,964,972,979,987,994,
+1001,1008,1014,1021,1028,1035,1042,1050,1059,1067,1076,1085,1093,1101,1110,1119,1128,1138,1148,1158,
+1169,1179,1189,1200,1210,1221,1231,1240,1248,1256,1264,1272,1280,1287,1294,1301,1308,1316,1324,1333,
+1342,1353,1365,1377,1388,1398,1407,1417,1430,1447,1467,1489,1509,1529,1548,1565,1580,1594,1606,1617,
+1628,1639,1648,1656,1662,1665,1669,1674,1680,1688,1697,1704,1711,1717,1722,1727,1731,1736,1742,1750,
+1759,1770,1780,1789,1797,1803,1807,1810,1811,1813,1814,1815,1815,1814,1812,1812,1814,1821,1832,1848,
+1868,1887,1904,1915,1921,1922,1923,1927,1933,1939,1943,1944,1945,1948,1957,1969,1982,1994,2002,2007,
+2008,2005,2002,2000,2001,2007,2013,2017,2015,2009,2000,1992,1984,1978,1972,1966,1962,1959,1956,1954,
+1952,1951,1951,1953,1956,1961,1966,1972,1978,1985,1993,2002,2009,2016,2020,2022,2023,2022,2021,2019,
+2017,2014,2010,2006,2003,2001,2002,2003,2005,2006,2008,2010,2013,2017,2021,2025,2029,2033,2037,2041,
+2045,2048,2051,2054,2057,2060,2063,2065,2067,2071,2075,2079,2084,2089,2095,2101,2109,2116,2123,2130,
+2137,2145,2152,2160,2168,2177,2187,2198,2208,2219,2232,2245,2259,2273,2285,2297,2309,2323,2338,2353,
+2368,2382,2397,2413,2429,2445,2461,2477,2491,2503,2511,2517,2523,2530,2538,2546,2552,2556,2561,2567,
+2575,2585,2594,2602,2611,2620,2630,2638,2644,2649,2656,2666,2679,2693,2706,2718,2730,2743,2758,2773,
+2787,2799,2808,2815,2820,2824,2829,2834,2840,2845,2847,2848,2847,2845,2845,2845,2848,2852,2860,2870,
+2883,2896,2911,2926,2943,2961,2979,2996,3010,3021,3027,3028,3025,3020,3015,3012,3010,3009,3010,3010,
+3009,3007,3003,2999,2994,2991,2987,2984,2980,2974,2964,2951,2936,2922,2910,2901,2895,2890,2886,2882,
+2879,2879,2881,2885,2891,2896,2901,2907,2912,2917,2922,2926,2932,2939,2948,2960,2971,2978,2982,2983,
+2984,2987,2993,2998,2996,2986,2967,2946,2928,2917,2912,2911,2911,2913,2913,2914,2914,2914,2914,2915,
+2917,2919,2921,2923,2925,2928,2931,2933,2935,2936,2937,2938,2939,2941,2943,2946,2950,2955,2959,2963,
+2966,2969,2972,2977,2986,2999,3016,3034,3052,3068,3080,3088,3092,3094,3093,3088,3081,3070,3059,3047,
+3036,3025,3014,3004,2996,2989,2984,2981,2979,2979,3011,3009,3007,3004,3000,2995,2989,2982,2974,2965,
+2955,2946,2938,2930,2923,2916,2910,2905,2900,2895,2890,2884,2878,2871,2863,2855,2849,2845,2844,2845,
+2847,2849,2851,2850,2846,2838,2825,2808,2792,2779,2768,2758,2748,2738,2729,2721,2715,2707,2696,2685,
+2675,2670,2668,2666,2662,2658,2655,2656,2659,2661,2660,2656,2650,2645,2638,2630,2619,2606,2592,2577,
+2559,2540,2521,2505,2494,2486,2479,2474,2468,2463,2458,2453,2448,2442,2437,2433,2428,2424,2420,2416,
+2411,2407,2401,2395,2389,2383,2378,2373,2367,2361,2355,2348,2342,2336,2331,2326,2323,2319,2315,2310,
+2305,2300,2295,2291,2287,2283,2281,2279,2277,2276,2275,2274,2273,2272,2271,2270,2269,2268,2267,2267,
+2265,2264,2263,2262,2261,2260,2258,2256,2253,2249,2245,2241,2236,2231,2226,2220,2215,2210,2204,2198,
+2191,2184,2175,2167,2158,2148,2139,2130,2121,2112,2103,2094,2084,2073,2062,2051,2039,2028,2016,2005,
+1993,1982,1971,1961,1950,1940,1931,1921,1912,1902,1892,1882,1872,1863,1855,1848,1841,1835,1829,1822,
+1815,1808,1800,1792,1784,1775,1766,1757,1748,1739,1731,1723,1715,1707,1699,1690,1681,1672,1663,1653,
+1643,1633,1622,1610,1600,1590,1581,1574,1567,1561,1555,1549,1543,1536,1529,1523,1517,1512,1505,1498,
+1489,1478,1466,1454,1442,1430,1417,1404,1389,1375,1360,1345,1329,1313,1297,1281,1266,1253,1243,1236,
+1233,1234,1239,1247,1259,1274,1291,1310,1331,1351,1372,1391,1410,1428,1445,1460,1475,1489,1502,1514,
+1524,1534,1543,1550,1556,1561,1564,1566,1567,1566,1564,1560,1555,1549,1541,1533,1523,1513,1503,1492,
+1480,1467,1453,1439,1424,1409,1394,1378,1363,1347,1331,1315,1299,1282,1265,1248,1231,1215,1198,1182,
+1166,1151,1137,1123,1110,1098,1087,1077,1068,1059,1052,1044,1038,1032,1026,1021,1016,1013,1010,1007,
+1005,1003,1001,1000,998,995,993,991,988,985,982,979,975,971,967,962,958,953,947,942,
+935,928,921,914,906,898,889,881,872,863,855,846,837,829,821,813,806,799,792,785,
+779,772,766,761,755,750,744,738,732,726,720,714,708,701,695,689,683,677,672,666,
+660,655,650,645,641,636,633,629,625,622,618,614,610,606,603,600,597,594,591,589,
+587,585,584,582,580,579,578,577,577,577,577,578,578,579,579,580,581,583,584,586,
+588,590,592,594,597,600,604,608,613,619,624,631,637,644,651,658,665,671,675,679,
+681,681,680,678,675,670,664,657,648,636,623,608,592,575,560,546,535,527,523,522,
+523,526,531,537,544,552,559,567,575,583,591,599,605,611,615,618,619,618,614,608,
+601,593,585,576,567,558,550,542,534,528,522,516,511,507,502,498,494,490,486,482,
+479,475,472,468,465,461,457,454,450,446,442,438,434,430,427,424,421,418,416,414,
+412,411,409,407,405,403,400,398,395,392,390,387,384,381,378,374,370,365,360,356,
+352,349,348,348,350,352,355,358,361,364,368,371,376,381,387,394,402,409,416,421,
+424,426,425,422,418,414,409,404,399,394,389,385,381,378,375,372,370,368,366,365,
+364,363,363,363,363,363,363,363,363,362,361,360,358,357,355,353,351,348,345,342,
+339,336,333,329,326,324,323,324,328,333,340,350,360,372,385,398,411,423,433,442,
+450,455,460,463,465,465,465,463,461,458,455,451,448,445,442,439,437,435,434,433,
+432,431,431,430,430,430,430,430,431,431,432,433,434,436,438,441,443,446,448,450,
+451,452,453,455,457,459,461,463,466,470,474,478,482,486,490,493,497,500,502,504,
+505,506,507,508,509,512,515,520,524,530,535,540,545,549,551,553,553,553,553,552,
+551,550,549,548,548,547,547,548,548,550,552,555,558,560,563,564,565,564,562,559,
+555,552,550,548,546,544,541,538,534,530,525,520,516,512,509,507,505,504,502,499,
+496,491,487,484,481,480,478,477,476,476,477,478,479,480,481,482,483,485,486,487,
+488,489,489,488,486,484,481,479,477,475,474,472,470,468,465,462,460,459,460,461,
+464,467,471,475,479,483,487,492,497,501,503,503,502,499,495,490,486,482,479,477,
+475,473,472,472,472,473,474,474,474,474,474,475,476,479,482,485,488,490,492,493,
+495,496,497,498,500,502,503,505,506,507,509,511,513,514,515,516,518,519,519,519,
+518,516,512,509,506,504,502,502,502,501,501,499,497,494,491,486,482,478,475,472,
+470,469,469,471,473,475,476,477,477,477,478,477,477,477,476,476,475,474,473,473,
+472,471,471,472,474,477,480,482,484,485,487,490,492,495,498,502,505,509,513,516,
+519,523,526,529,532,534,537,540,543,547,550,553,556,559,562,564,567,570,573,577,
+580,584,588,592,596,600,604,608,611,615,618,621,624,627,630,633,637,640,644,648,
+652,655,658,660,663,664,667,669,672,674,676,677,677,676,675,673,672,670,669,669,
+669,669,670,671,673,675,677,678,679,680,682,683,685,687,689,692,695,698,703,709,
+715,722,728,735,742,748,755,761,767,773,779,786,792,798,804,810,815,819,823,827,
+830,832,834,836,838,841,844,848,852,857,862,868,874,880,888,896,905,915,926,938,
+949,959,970,980,991,1002,1013,1025,1037,1049,1062,1075,1087,1100,1113,1127,1139,1151,1163,1173,
+1184,1195,1206,1218,1229,1239,1249,1260,1271,1283,1295,1306,1318,1329,1341,1351,1360,1367,1372,1375,
+1378,1383,1390,1401,1412,1424,1436,1448,1460,1473,1485,1496,1505,1514,1523,1532,1539,1546,1553,1560,
+1567,1575,1581,1586,1589,1592,1595,1601,1608,1615,1620,1622,1623,1625,1630,1637,1644,1652,1661,1671,
+1683,1697,1712,1726,1740,1755,1770,1784,1793,1797,1800,1806,1819,1834,1846,1854,1859,1867,1880,1895,
+1904,1901,1889,1879,1880,1895,1920,1945,1962,1971,1977,1982,1990,1998,2006,2012,2016,2019,2024,2032,
+2047,2068,2091,2109,2120,2121,2119,2117,2117,2119,2119,2114,2106,2094,2081,2067,2055,2045,2037,2030,
+2023,2015,2009,2006,2005,2005,2005,2002,1999,1995,1991,1988,1984,1981,1977,1972,1965,1957,1948,1940,
+1934,1928,1923,1919,1916,1913,1910,1908,1907,1907,1908,1910,1911,1913,1916,1919,1922,1926,1929,1932,
+1935,1939,1942,1945,1947,1948,1949,1950,1953,1956,1961,1967,1974,1982,1990,1998,2007,2016,2024,2033,
+2042,2051,2060,2069,2077,2087,2096,2105,2113,2121,2129,2139,2151,2165,2178,2187,2194,2201,2209,2221,
+2236,2251,2265,2278,2289,2300,2311,2323,2337,2353,2371,2388,2404,2415,2425,2434,2446,2459,2471,2483,
+2498,2518,2545,2575,2605,2631,2653,2671,2684,2692,2695,2696,2696,2700,2710,2726,2746,2767,2787,2806,
+2826,2847,2865,2878,2882,2879,2876,2879,2891,2907,2918,2921,2917,2912,2912,2921,2935,2953,2972,2990,
+3007,3021,3034,3045,3058,3072,3087,3099,3107,3110,3110,3108,3107,3107,3107,3107,3105,3100,3091,3079,
+3067,3055,3043,3032,3020,3007,2994,2981,2969,2958,2950,2946,2944,2942,2939,2933,2925,2917,2910,2906,
+2903,2902,2903,2904,2905,2906,2906,2905,2905,2904,2904,2904,2907,2910,2916,2923,2934,2948,2966,2987,
+3010,3032,3052,3070,3085,3096,3103,3104,3098,3087,3073,3057,3045,3036,3032,3031,3029,3027,3024,3019,
+3015,3010,3006,3000,2995,2990,2986,2983,2982,2982,2983,2986,2988,2989,2988,2985,2981,2976,2969,2962,
+2955,2949,2945,2946,2953,2965,2983,3005,3029,3054,3080,3105,3128,3146,3157,3160,3156,3148,3137,3124,
+3110,3095,3080,3065,3052,3040,3031,3023,3018,3014,3011,3056,3053,3049,3045,3040,3034,3028,3023,3017,
+3013,3009,3005,3001,2997,2994,2991,2988,2984,2978,2972,2967,2963,2960,2956,2947,2935,2921,2909,2901,
+2899,2902,2910,2919,2927,2934,2938,2941,2942,2942,2940,2936,2933,2929,2925,2920,2916,2911,2907,2902,
+2894,2882,2866,2848,2829,2810,2790,2771,2753,2736,2721,2709,2699,2690,2683,2677,2671,2664,2658,2649,
+2639,2627,2611,2593,2571,2547,2524,2503,2488,2479,2473,2469,2465,2460,2455,2451,2446,2441,2436,2431,
+2427,2423,2419,2414,2409,2405,2401,2396,2392,2387,2383,2379,2374,2370,2365,2360,2355,2350,2345,2341,
+2337,2334,2331,2329,2327,2325,2325,2325,2326,2326,2327,2328,2329,2330,2331,2331,2332,2332,2333,2334,
+2335,2335,2336,2337,2338,2338,2338,2338,2337,2335,2333,2330,2327,2323,2319,2315,2311,2306,2302,2296,
+2290,2282,2274,2265,2255,2245,2235,2224,2214,2204,2193,2181,2168,2155,2141,2127,2112,2096,2079,2061,
+2041,2020,1997,1975,1953,1934,1917,1903,1893,1885,1878,1874,1871,1870,1870,1871,1872,1872,1872,1871,
+1870,1868,1866,1863,1859,1854,1848,1839,1830,1820,1810,1801,1791,1782,1771,1761,1750,1738,1727,1716,
+1705,1692,1680,1669,1659,1650,1642,1634,1628,1621,1613,1605,1595,1584,1573,1563,1553,1544,1535,1526,
+1517,1507,1497,1486,1474,1463,1451,1439,1428,1416,1405,1393,1382,1371,1359,1347,1335,1322,1310,1298,
+1288,1278,1272,1267,1265,1266,1271,1279,1291,1306,1322,1340,1358,1376,1394,1411,1427,1442,1456,1470,
+1484,1496,1507,1517,1526,1532,1537,1541,1543,1544,1544,1542,1540,1536,1530,1524,1517,1508,1498,1487,
+1475,1463,1450,1436,1421,1406,1389,1372,1354,1336,1318,1299,1280,1260,1240,1220,1199,1179,1160,1142,
+1124,1107,1092,1077,1063,1051,1040,1030,1021,1013,1005,998,992,987,982,978,975,972,969,968,
+966,965,964,963,963,963,964,964,965,966,966,965,964,961,958,953,948,943,938,932,
+926,919,912,905,897,889,880,870,859,849,838,827,817,807,797,788,780,772,765,758,
+753,748,744,740,737,734,731,728,725,722,718,714,709,705,699,694,688,682,676,670,
+663,657,650,644,637,630,623,616,609,602,596,590,584,578,573,567,562,556,551,545,
+540,535,530,526,522,518,514,511,509,507,506,505,505,506,507,508,510,511,513,515,
+518,520,522,524,526,528,531,533,536,540,543,548,552,557,563,569,575,581,587,593,
+599,604,609,613,616,618,618,617,614,610,606,599,592,582,571,557,543,529,515,503,
+494,488,485,484,487,492,500,509,521,533,545,557,567,578,587,595,601,604,605,603,
+597,589,580,570,560,549,539,529,520,512,504,496,489,483,477,472,467,463,459,455,
+452,449,446,443,440,436,432,427,423,418,413,408,404,401,397,394,391,389,386,384,
+382,380,379,377,376,374,371,369,366,363,360,357,355,352,349,345,342,338,333,329,
+325,321,318,316,316,317,320,323,326,330,333,337,340,343,347,351,357,363,369,374,
+378,380,380,378,374,369,364,359,353,347,342,338,334,330,328,326,326,326,326,327,
+328,329,330,332,333,334,336,337,338,338,338,337,336,335,333,331,328,325,321,316,
+311,305,299,294,289,286,284,283,285,288,294,302,311,322,334,346,358,369,379,387,
+394,399,403,406,409,410,410,410,408,406,404,401,398,395,393,391,389,387,386,386,
+386,386,386,387,388,389,390,391,392,394,395,397,399,401,403,406,408,411,413,416,
+419,422,425,428,431,433,436,437,439,441,442,444,446,447,449,450,450,451,453,455,
+457,459,462,464,467,470,474,477,481,486,490,495,499,503,505,508,510,512,514,516,
+517,519,520,521,523,525,527,529,531,532,533,534,534,534,534,533,533,532,532,531,
+530,529,527,526,524,522,519,516,512,508,502,497,493,490,486,483,478,472,465,459,
+456,454,452,451,448,446,444,444,445,446,448,449,449,450,450,451,451,451,451,451,
+451,451,450,449,447,445,443,441,440,440,439,438,437,436,435,434,433,432,432,431,
+431,430,428,427,425,425,426,427,427,426,425,424,424,425,427,428,430,431,434,435,
+437,438,439,440,440,440,440,440,441,442,443,443,443,444,445,446,447,447,448,448,
+449,451,451,451,451,450,449,448,449,450,452,453,455,456,458,459,460,460,459,458,
+456,453,448,443,439,435,431,429,426,424,421,418,414,410,406,403,401,401,401,401,
+403,404,405,407,408,409,410,411,411,410,409,408,408,407,407,408,409,409,409,409,
+409,409,410,412,413,415,417,419,421,424,426,429,432,435,438,441,444,449,454,459,
+464,469,474,479,483,488,492,496,500,503,505,508,510,512,513,515,517,520,523,526,
+529,532,536,540,546,551,557,561,565,568,570,572,574,577,579,582,585,588,590,593,
+596,599,603,606,610,612,614,616,617,618,618,617,616,616,616,616,616,615,615,614,
+613,611,610,608,607,607,607,607,607,608,609,611,612,613,614,615,616,618,622,626,
+631,637,643,649,654,658,663,667,673,678,684,689,694,698,701,704,708,711,714,718,
+722,726,731,736,741,746,752,759,767,775,784,794,804,816,827,840,852,865,879,893,
+907,922,939,956,973,992,1011,1030,1050,1068,1086,1104,1120,1136,1150,1162,1173,1185,1196,1208,
+1218,1227,1235,1242,1249,1256,1262,1267,1273,1279,1284,1289,1294,1299,1304,1309,1314,1318,1322,1325,
+1330,1336,1343,1351,1359,1367,1375,1382,1389,1396,1400,1404,1407,1410,1413,1417,1421,1426,1432,1437,
+1444,1451,1460,1470,1480,1491,1502,1511,1520,1528,1537,1544,1551,1559,1566,1573,1580,1586,1595,1610,
+1631,1658,1685,1709,1725,1735,1740,1744,1751,1763,1781,1803,1825,1845,1861,1875,1888,1899,1911,1924,
+1942,1964,1984,1994,1991,1977,1963,1958,1966,1980,1995,2005,2015,2027,2042,2054,2058,2055,2048,2043,
+2046,2056,2070,2085,2097,2105,2109,2110,2106,2096,2081,2063,2046,2034,2029,2027,2027,2028,2031,2037,
+2044,2049,2051,2051,2048,2045,2040,2032,2023,2014,2005,1995,1985,1975,1965,1955,1945,1932,1919,1908,
+1899,1893,1887,1880,1873,1866,1861,1855,1849,1844,1842,1842,1845,1848,1852,1856,1859,1862,1864,1865,
+1866,1867,1868,1870,1873,1879,1886,1894,1902,1908,1913,1917,1921,1924,1926,1927,1928,1929,1929,1930,
+1933,1938,1945,1953,1958,1963,1968,1975,1983,1993,2003,2012,2020,2026,2033,2042,2058,2080,2109,2139,
+2167,2189,2206,2219,2230,2242,2256,2273,2292,2314,2336,2358,2377,2396,2414,2432,2453,2473,2492,2506,
+2517,2528,2542,2559,2577,2590,2598,2605,2617,2638,2665,2693,2719,2741,2762,2783,2804,2825,2844,2863,
+2880,2895,2906,2914,2922,2933,2948,2963,2977,2987,2993,2998,3003,3008,3014,3019,3027,3038,3051,3065,
+3077,3085,3089,3093,3096,3100,3103,3107,3111,3116,3121,3126,3127,3127,3124,3121,3116,3111,3103,3095,
+3085,3074,3062,3049,3034,3021,3009,2999,2988,2975,2959,2943,2928,2913,2901,2888,2876,2866,2857,2851,
+2846,2841,2836,2832,2828,2826,2825,2824,2823,2822,2821,2821,2823,2827,2832,2839,2850,2865,2883,2903,
+2924,2947,2970,2993,3016,3037,3056,3073,3087,3097,3101,3100,3097,3095,3095,3098,3101,3102,3101,3096,
+3088,3080,3073,3069,3065,3062,3057,3053,3050,3048,3049,3050,3051,3052,3053,3053,3052,3049,3044,3036,
+3026,3014,3002,2989,2978,2970,2965,2966,2973,2985,3004,3027,3053,3080,3108,3133,3156,3173,3183,3184,
+3178,3164,3146,3127,3108,3092,3079,3070,3064,3061,3059,3056,3118,3116,3114,3110,3105,3102,3101,3102,
+3104,3106,3107,3106,3103,3098,3091,3081,3069,3056,3043,3032,3025,3021,3022,3026,3032,3039,3045,3051,
+3056,3060,3064,3066,3067,3066,3065,3063,3059,3053,3046,3039,3030,3020,3006,2988,2968,2948,2928,2911,
+2896,2882,2867,2852,2836,2817,2797,2777,2757,2738,2720,2703,2688,2674,2661,2650,2641,2633,2627,2622,
+2617,2612,2605,2596,2584,2569,2553,2537,2522,2510,2499,2492,2485,2480,2475,2470,2466,2462,2457,2452,
+2447,2441,2436,2431,2426,2422,2418,2415,2413,2411,2409,2407,2405,2403,2401,2399,2396,2394,2391,2389,
+2386,2384,2381,2378,2376,2374,2373,2372,2372,2372,2372,2373,2374,2376,2379,2382,2385,2386,2388,2388,
+2389,2389,2390,2392,2394,2397,2400,2403,2405,2405,2405,2404,2401,2398,2394,2390,2384,2379,2373,2368,
+2361,2354,2347,2339,2330,2321,2311,2300,2289,2277,2265,2251,2236,2220,2202,2184,2165,2146,2126,2106,
+2084,2062,2039,2018,1999,1984,1973,1965,1960,1955,1951,1947,1943,1938,1933,1926,1920,1913,1906,1899,
+1891,1883,1875,1867,1860,1855,1849,1843,1837,1830,1821,1812,1803,1793,1781,1769,1755,1742,1729,1717,
+1707,1698,1691,1683,1676,1668,1660,1651,1642,1630,1617,1603,1588,1575,1563,1551,1539,1527,1516,1505,
+1494,1483,1472,1462,1452,1443,1434,1425,1417,1410,1404,1397,1392,1387,1381,1376,1370,1364,1358,1352,
+1345,1339,1332,1325,1318,1312,1307,1304,1303,1304,1307,1312,1319,1326,1334,1341,1348,1354,1361,1367,
+1374,1381,1388,1394,1400,1404,1408,1411,1413,1413,1413,1412,1409,1407,1403,1398,1393,1387,1380,1372,
+1362,1351,1339,1326,1313,1299,1284,1268,1252,1235,1218,1201,1183,1165,1146,1128,1109,1091,1074,1057,
+1041,1027,1014,1002,991,981,972,964,957,951,946,942,938,935,932,929,926,923,920,918,
+916,914,913,911,910,910,909,909,908,907,905,903,900,897,893,888,883,877,870,863,
+856,847,839,831,822,813,804,795,784,774,764,753,742,732,721,712,703,696,690,686,
+682,679,677,677,677,678,681,683,687,690,693,695,696,696,695,693,689,685,680,675,
+670,665,660,654,648,641,634,627,619,611,602,595,587,580,574,567,561,555,549,541,
+534,526,518,511,505,498,493,487,482,478,473,469,465,462,458,456,454,452,452,452,
+453,454,455,457,459,461,463,467,470,474,477,481,485,489,493,497,501,506,510,515,
+519,523,528,533,538,542,546,549,551,552,552,550,547,542,536,529,519,508,497,484,
+472,461,452,445,441,440,443,450,459,471,484,498,511,524,535,545,554,561,565,568,
+567,565,560,553,546,538,529,519,510,501,492,482,473,465,458,451,445,440,435,431,
+427,424,420,417,414,411,407,403,399,394,389,385,380,376,371,367,363,359,355,352,
+348,345,342,339,336,333,331,328,325,322,319,316,313,310,307,305,301,298,294,290,
+286,283,280,278,278,278,279,280,282,284,288,291,295,300,305,311,317,324,329,334,
+338,342,343,344,342,340,335,330,324,318,313,307,303,298,295,293,291,290,289,290,
+291,293,296,298,301,303,305,307,309,310,311,312,312,312,310,309,307,304,300,296,
+290,284,277,271,264,259,254,251,250,250,254,259,266,275,284,295,305,316,325,333,
+340,347,352,356,358,360,362,362,363,363,363,363,364,364,365,365,364,363,362,362,
+361,360,360,360,360,360,361,362,363,364,365,366,367,367,368,368,369,370,372,374,
+376,378,380,382,384,387,390,393,396,400,404,408,412,413,414,413,412,411,411,411,
+413,415,417,420,424,428,432,437,441,445,450,454,459,462,466,469,472,474,477,480,
+482,485,487,490,492,495,498,501,504,507,510,513,515,517,519,520,521,521,521,519,
+517,514,509,504,499,493,488,484,478,473,468,462,456,450,445,439,434,430,427,425,
+423,422,422,421,421,420,420,420,420,420,419,418,416,415,414,413,413,412,411,409,
+407,404,401,398,396,394,392,392,392,391,392,392,393,394,394,395,395,396,397,397,
+397,396,394,392,390,387,384,381,378,377,377,377,377,378,381,384,388,393,397,401,
+405,408,410,411,411,411,410,409,407,405,404,404,404,404,403,402,401,401,401,401,
+403,405,407,409,410,409,407,404,400,397,394,392,390,388,387,386,385,383,380,375,
+368,362,355,349,344,340,339,339,340,341,342,341,340,338,337,337,339,341,344,347,
+350,353,354,356,357,358,359,360,360,361,361,361,361,360,358,356,355,354,354,355,
+357,360,363,365,366,368,370,372,375,378,382,386,390,394,399,403,407,410,414,417,
+420,423,426,429,432,436,440,444,448,452,455,457,460,463,465,467,469,472,474,477,
+479,482,484,486,488,491,493,496,498,500,502,504,505,507,509,511,513,515,516,517,
+519,520,522,523,524,525,526,526,526,525,525,525,525,526,526,525,524,524,523,521,
+519,517,516,516,516,518,520,522,525,527,529,530,531,532,534,537,541,546,551,556,
+561,566,571,575,580,585,588,591,594,597,600,605,610,616,623,630,637,644,651,658,
+665,672,679,686,692,697,703,709,718,727,739,751,764,778,792,806,822,838,856,876,
+896,916,936,956,975,995,1014,1033,1050,1066,1082,1096,1109,1120,1129,1137,1145,1152,1160,1167,
+1174,1181,1187,1192,1197,1202,1206,1211,1217,1222,1227,1230,1232,1234,1237,1241,1244,1246,1248,1250,
+1253,1256,1260,1265,1271,1275,1280,1284,1287,1291,1294,1298,1302,1307,1313,1318,1321,1325,1328,1333,
+1339,1346,1354,1365,1378,1394,1412,1431,1449,1468,1488,1508,1528,1549,1570,1590,1605,1611,1611,1609,
+1607,1609,1614,1619,1628,1643,1663,1688,1714,1736,1754,1768,1781,1794,1809,1824,1839,1854,1868,1882,
+1897,1910,1922,1931,1938,1939,1935,1926,1917,1914,1922,1939,1960,1980,1998,2015,2031,2044,2050,2048,
+2042,2037,2035,2036,2036,2033,2025,2016,2008,2005,2006,2009,2010,2008,2001,1989,1972,1954,1941,1935,
+1938,1946,1952,1954,1951,1946,1942,1938,1934,1929,1926,1924,1921,1917,1910,1902,1894,1887,1880,1872,
+1863,1853,1843,1831,1817,1801,1783,1766,1750,1737,1728,1723,1722,1722,1723,1723,1722,1722,1722,1723,
+1725,1727,1732,1739,1750,1762,1776,1791,1805,1818,1828,1834,1836,1837,1840,1845,1850,1854,1856,1858,
+1861,1867,1876,1889,1907,1931,1958,1983,2003,2015,2021,2023,2022,2019,2014,2010,2007,2009,2016,2031,
+2057,2091,2128,2161,2190,2215,2239,2263,2285,2303,2319,2336,2356,2381,2410,2443,2478,2512,2544,2574,
+2600,2622,2640,2655,2668,2682,2698,2715,2729,2741,2751,2764,2781,2804,2830,2857,2884,2909,2930,2945,
+2954,2958,2960,2962,2966,2973,2983,2994,3005,3016,3026,3034,3042,3050,3059,3068,3080,3093,3104,3112,
+3116,3119,3122,3129,3136,3141,3144,3144,3142,3137,3129,3119,3109,3103,3100,3098,3094,3087,3080,3072,
+3065,3056,3046,3035,3026,3018,3011,3005,2996,2987,2976,2964,2951,2936,2918,2899,2878,2856,2836,2817,
+2802,2789,2778,2768,2758,2748,2738,2728,2719,2712,2707,2705,2707,2715,2725,2738,2752,2766,2782,2799,
+2817,2838,2860,2885,2913,2941,2969,2996,3022,3045,3065,3084,3101,3119,3136,3154,3172,3189,3204,3216,
+3222,3220,3212,3199,3183,3167,3153,3142,3134,3127,3122,3118,3114,3113,3112,3112,3111,3109,3105,3101,
+3095,3089,3083,3077,3071,3063,3052,3041,3031,3027,3028,3033,3041,3050,3061,3076,3095,3118,3141,3161,
+3177,3186,3188,3183,3174,3163,3152,3143,3134,3128,3123,3120,3118,3186,3185,3184,3183,3182,3180,3179,
+3178,3178,3179,3182,3185,3185,3180,3169,3157,3147,3142,3138,3134,3128,3121,3116,3115,3119,3126,3133,
+3137,3136,3131,3124,3116,3110,3104,3099,3092,3085,3076,3064,3051,3035,3017,2999,2982,2964,2948,2932,
+2917,2904,2892,2882,2872,2860,2848,2834,2820,2805,2790,2773,2755,2737,2720,2703,2688,2674,2661,2650,
+2639,2629,2619,2609,2599,2588,2577,2567,2558,2549,2541,2534,2528,2522,2517,2512,2507,2501,2495,2488,
+2481,2475,2470,2466,2464,2462,2461,2459,2456,2454,2451,2449,2447,2446,2447,2448,2449,2450,2450,2450,
+2450,2449,2447,2443,2439,2434,2430,2425,2421,2417,2413,2409,2405,2402,2399,2396,2394,2392,2390,2388,
+2386,2384,2383,2382,2382,2382,2383,2384,2384,2383,2382,2380,2378,2375,2373,2370,2367,2363,2359,2353,
+2348,2341,2333,2325,2317,2310,2302,2295,2286,2277,2266,2253,2238,2221,2204,2187,2169,2152,2134,2117,
+2100,2084,2069,2056,2045,2035,2026,2018,2009,2000,1991,1982,1973,1964,1954,1944,1934,1923,1912,1900,
+1890,1879,1869,1859,1848,1838,1828,1818,1809,1800,1791,1782,1773,1764,1755,1745,1735,1726,1717,1708,
+1698,1688,1679,1669,1660,1650,1640,1632,1623,1615,1605,1594,1581,1566,1553,1540,1527,1515,1502,1491,
+1480,1470,1461,1453,1446,1440,1433,1427,1421,1414,1407,1399,1391,1384,1378,1372,1367,1361,1356,1352,
+1348,1344,1341,1338,1335,1332,1328,1325,1321,1316,1311,1306,1299,1293,1286,1279,1272,1265,1260,1255,
+1251,1249,1247,1245,1244,1243,1242,1241,1240,1238,1236,1233,1229,1225,1219,1213,1207,1200,1193,1186,
+1178,1169,1160,1151,1141,1131,1121,1111,1100,1089,1079,1068,1058,1048,1038,1029,1020,1013,1006,999,
+993,987,981,976,971,966,961,956,950,944,939,933,927,921,916,911,906,901,896,891,
+886,881,877,874,871,868,866,863,861,858,855,852,849,846,842,838,833,828,822,816,
+810,804,797,790,783,776,770,764,757,751,745,740,734,728,721,714,707,700,694,688,
+682,677,672,667,663,659,657,655,655,656,658,659,660,661,661,661,660,659,657,656,
+656,655,654,652,651,649,646,642,638,632,626,620,613,606,599,592,584,577,570,563,
+555,547,539,531,523,515,507,499,490,481,472,463,454,446,438,431,424,419,413,409,
+405,403,401,401,401,401,402,404,406,408,411,413,416,419,422,425,429,432,436,440,
+444,448,453,457,462,467,472,477,482,486,490,492,493,492,489,486,481,475,469,461,
+453,445,437,430,424,420,419,420,424,429,438,448,459,471,482,492,500,506,511,515,
+518,519,519,517,515,510,504,497,488,479,470,461,451,442,434,426,419,413,407,402,
+398,394,390,387,383,379,374,369,365,360,355,350,345,341,338,334,330,327,323,319,
+315,311,306,303,299,296,292,288,284,280,275,271,267,264,261,259,257,256,255,253,
+251,249,247,245,244,244,245,247,250,254,258,264,269,274,279,284,289,295,300,306,
+311,316,320,323,324,323,320,315,310,303,296,290,284,279,275,272,270,268,267,267,
+268,270,272,274,277,279,282,284,287,289,290,291,292,292,292,291,290,287,284,279,
+273,267,260,253,246,239,233,227,224,222,222,223,227,231,237,244,250,257,264,271,
+277,282,287,290,293,295,296,298,300,302,304,307,310,313,316,319,322,325,327,329,
+331,333,335,336,337,337,338,338,339,340,340,341,342,343,343,343,343,343,343,343,
+343,344,345,345,345,345,345,344,344,345,346,347,349,351,353,356,358,360,363,365,
+367,370,373,376,381,386,391,396,402,407,413,417,422,425,429,432,434,437,440,443,
+445,448,451,454,456,459,462,464,467,470,474,478,482,485,488,489,490,489,487,482,
+477,473,470,468,467,465,463,461,458,454,450,445,439,434,429,423,417,412,409,405,
+403,400,398,397,396,396,396,395,394,393,391,390,387,385,383,380,379,378,377,375,
+372,367,363,359,356,354,354,354,353,353,352,351,350,350,350,350,352,354,356,358,
+360,361,361,361,361,362,362,362,362,362,363,364,367,371,373,376,378,381,385,387,
+389,390,389,386,383,380,377,374,372,369,365,360,355,351,349,348,347,345,341,338,
+335,335,337,341,344,348,349,348,345,341,337,332,327,322,317,312,307,302,296,289,
+281,273,268,266,266,268,272,278,284,289,291,290,286,282,280,280,281,284,287,291,
+294,296,298,300,303,307,311,315,319,321,322,322,321,319,316,315,314,314,315,317,
+319,321,325,329,333,338,343,349,355,360,363,365,367,369,372,376,379,382,384,385,
+387,389,391,394,396,399,402,405,408,411,414,417,419,420,420,420,421,422,424,426,
+428,430,433,434,436,437,438,439,440,439,439,438,437,436,435,435,435,435,436,438,
+440,441,443,444,445,445,446,447,449,451,454,456,459,460,461,461,460,458,456,454,
+452,451,449,447,445,442,441,442,444,447,450,453,456,460,464,469,475,480,486,492,
+498,502,507,511,515,520,524,527,530,533,538,545,554,564,574,585,597,608,619,628,
+635,640,643,646,648,651,655,659,665,672,680,688,698,710,724,741,759,780,801,823,
+844,866,888,910,933,953,969,983,993,1003,1014,1025,1035,1045,1053,1061,1069,1076,1083,1090,
+1097,1103,1107,1111,1114,1117,1119,1122,1125,1128,1132,1136,1142,1149,1157,1166,1175,1184,1193,1201,
+1209,1216,1223,1229,1235,1241,1248,1254,1261,1268,1275,1281,1286,1289,1294,1300,1308,1316,1325,1335,
+1345,1356,1366,1372,1376,1381,1390,1401,1413,1423,1433,1447,1463,1482,1500,1519,1538,1557,1571,1580,
+1588,1596,1606,1614,1616,1614,1614,1619,1628,1636,1640,1642,1647,1656,1671,1690,1713,1739,1766,1793,
+1818,1842,1864,1883,1897,1908,1916,1920,1922,1923,1930,1944,1965,1986,2000,2004,2000,1993,1986,1980,
+1976,1973,1969,1962,1949,1932,1915,1900,1886,1871,1854,1835,1819,1807,1800,1793,1788,1784,1782,1782,
+1783,1784,1785,1788,1793,1801,1808,1812,1814,1812,1808,1801,1794,1788,1782,1774,1762,1745,1727,1708,
+1688,1668,1646,1623,1601,1579,1558,1540,1527,1523,1526,1534,1546,1560,1575,1589,1602,1615,1628,1643,
+1660,1677,1691,1702,1713,1723,1733,1742,1750,1758,1769,1782,1796,1805,1809,1809,1811,1819,1830,1844,
+1856,1866,1873,1875,1875,1877,1888,1908,1936,1965,1992,2014,2032,2048,2063,2078,2090,2098,2103,2107,
+2114,2125,2138,2149,2161,2176,2198,2227,2259,2293,2328,2365,2404,2443,2479,2511,2542,2569,2593,2614,
+2635,2657,2683,2713,2745,2779,2812,2844,2870,2892,2910,2926,2940,2954,2966,2980,2995,3011,3029,3047,
+3064,3078,3090,3099,3106,3114,3122,3132,3143,3155,3166,3175,3181,3183,3182,3178,3175,3175,3179,3189,
+3200,3212,3222,3229,3232,3230,3223,3211,3196,3177,3156,3136,3117,3101,3090,3082,3077,3074,3073,3073,
+3074,3074,3074,3072,3068,3061,3050,3035,3017,2997,2977,2957,2938,2921,2905,2890,2874,2859,2846,2834,
+2824,2816,2808,2801,2794,2786,2777,2764,2749,2732,2716,2703,2697,2697,2702,2711,2721,2730,2738,2746,
+2754,2761,2769,2778,2791,2809,2832,2858,2885,2914,2944,2976,3008,3040,3069,3097,3122,3145,3165,3183,
+3200,3216,3231,3247,3263,3279,3292,3300,3296,3281,3258,3232,3209,3192,3181,3174,3170,3167,3166,3166,
+3165,3164,3163,3160,3157,3154,3151,3149,3145,3140,3132,3124,3116,3109,3104,3101,3100,3102,3110,3124,
+3142,3163,3184,3201,3214,3221,3223,3220,3215,3207,3200,3193,3189,3186,3275,3274,3271,3267,3262,3257,
+3254,3255,3261,3269,3275,3275,3269,3259,3250,3245,3242,3236,3227,3213,3200,3188,3179,3174,3170,3168,
+3165,3162,3156,3149,3142,3133,3124,3113,3103,3092,3083,3073,3063,3052,3038,3023,3007,2991,2976,2962,
+2949,2935,2922,2910,2899,2889,2880,2872,2865,2858,2851,2843,2835,2826,2817,2808,2799,2788,2777,2763,
+2747,2731,2715,2700,2687,2675,2665,2655,2646,2637,2628,2618,2609,2600,2591,2582,2572,2562,2552,2542,
+2534,2528,2525,2524,2524,2523,2522,2520,2515,2510,2504,2500,2498,2498,2497,2496,2495,2494,2494,2495,
+2494,2493,2490,2487,2484,2479,2474,2467,2459,2451,2441,2431,2420,2409,2399,2388,2377,2368,2361,2356,
+2353,2351,2350,2350,2350,2351,2352,2351,2350,2347,2345,2342,2339,2336,2332,2329,2326,2324,2320,2316,
+2310,2303,2295,2287,2279,2269,2259,2248,2237,2225,2213,2200,2185,2170,2154,2139,2124,2109,2096,2083,
+2071,2059,2048,2038,2027,2017,2007,1997,1988,1980,1972,1965,1957,1948,1939,1929,1918,1906,1894,1883,
+1872,1862,1851,1841,1830,1820,1810,1800,1790,1780,1771,1762,1753,1745,1738,1731,1725,1717,1708,1698,
+1686,1674,1663,1651,1639,1627,1614,1602,1589,1575,1561,1548,1535,1522,1510,1498,1486,1475,1464,1454,
+1444,1436,1429,1424,1420,1417,1416,1415,1411,1405,1397,1388,1379,1371,1364,1358,1352,1346,1341,1335,
+1330,1325,1321,1316,1312,1307,1302,1297,1291,1284,1277,1268,1258,1246,1233,1219,1205,1191,1176,1163,
+1150,1139,1129,1120,1113,1106,1100,1095,1089,1083,1077,1071,1064,1058,1052,1045,1037,1030,1022,1014,
+1006,998,990,982,975,969,962,957,951,946,941,937,934,932,930,928,926,925,924,922,
+921,919,918,915,912,908,904,900,897,893,889,885,880,875,869,864,858,852,846,840,
+835,829,823,817,811,806,800,795,791,786,782,777,773,768,763,758,753,747,742,737,
+732,728,724,721,718,716,715,714,713,711,710,709,708,707,706,704,702,699,697,694,
+690,687,683,680,676,673,670,667,665,662,659,656,653,650,647,644,640,635,630,626,
+623,621,620,620,621,623,627,631,634,638,640,640,639,637,634,629,624,618,611,603,
+595,586,576,565,554,543,532,521,509,498,486,476,465,454,443,432,422,412,403,394,
+385,378,371,365,360,357,354,352,350,349,349,349,349,351,353,356,359,362,365,369,
+373,376,381,385,389,393,397,402,407,411,416,421,425,429,432,434,436,438,439,439,
+438,437,435,432,428,424,421,416,412,407,402,399,397,397,400,404,409,416,423,430,
+437,442,446,450,452,454,454,453,450,446,441,435,428,421,413,405,398,390,383,376,
+370,365,360,355,351,346,342,337,332,327,322,317,311,306,302,298,294,291,287,284,
+280,277,273,269,265,260,256,251,246,241,236,231,227,224,222,222,223,225,227,228,
+227,224,221,217,214,212,212,214,219,226,234,243,252,261,269,277,284,291,296,301,
+305,308,311,312,310,306,300,293,286,279,272,266,261,256,251,246,242,239,237,236,
+235,235,236,238,240,242,245,248,251,254,257,259,260,261,262,262,261,260,258,255,
+252,247,243,237,231,225,219,213,208,205,203,201,201,202,204,206,209,212,215,219,
+222,225,228,231,233,235,236,238,239,241,243,245,248,251,255,259,262,266,271,274,
+278,281,284,287,290,292,294,296,298,299,301,303,305,306,307,309,309,310,311,311,
+311,311,311,311,312,312,313,313,313,314,313,313,313,313,314,315,316,318,320,323,
+326,330,335,339,345,350,356,361,365,368,372,375,378,382,385,387,390,392,394,395,
+397,398,399,400,402,404,406,409,411,414,417,420,423,427,430,432,433,434,436,436,
+436,436,436,435,433,432,430,429,427,424,421,418,415,411,407,402,399,396,393,389,
+384,380,376,373,372,371,370,369,368,367,365,364,362,360,357,355,353,351,349,348,
+346,344,341,338,336,334,332,330,328,326,323,320,317,316,317,318,320,322,323,325,
+328,332,335,338,340,341,342,343,344,346,348,349,351,351,351,351,351,351,351,350,
+348,347,345,343,341,338,335,331,328,324,319,313,308,303,299,296,294,293,292,291,
+290,289,288,287,287,288,288,289,288,286,282,277,270,263,255,248,241,234,228,222,
+217,215,215,217,220,223,227,230,233,236,238,240,241,242,243,245,247,249,250,250,
+251,253,254,256,258,259,261,262,263,263,263,263,262,261,260,259,260,262,265,268,
+272,277,282,289,296,304,311,318,324,330,334,337,338,339,340,340,340,340,341,341,
+341,341,341,341,341,342,343,345,346,348,350,352,354,356,359,362,364,366,368,370,
+371,371,371,369,367,366,365,365,365,365,365,364,364,363,363,363,362,362,361,361,
+361,361,361,361,361,361,361,361,361,361,361,362,363,365,368,372,375,375,374,372,
+370,368,366,363,361,362,365,371,379,388,396,403,409,414,419,423,427,430,434,437,
+440,445,449,455,460,467,474,482,491,501,512,523,534,543,551,558,565,572,577,582,
+587,592,598,604,610,616,622,628,634,639,645,652,661,670,682,696,713,730,749,768,
+787,806,825,845,864,881,894,904,911,918,924,931,938,944,951,957,962,968,973,978,
+984,989,994,1000,1005,1010,1015,1019,1024,1029,1035,1042,1050,1062,1076,1091,1104,1115,1124,1132,
+1140,1146,1153,1162,1172,1186,1203,1224,1247,1269,1286,1298,1307,1313,1318,1319,1319,1320,1325,1336,
+1347,1356,1362,1368,1375,1381,1387,1394,1401,1410,1420,1431,1444,1461,1479,1491,1496,1498,1506,1524,
+1548,1571,1584,1589,1590,1595,1606,1621,1636,1649,1658,1664,1668,1673,1679,1685,1688,1688,1684,1683,
+1690,1707,1730,1753,1769,1774,1773,1773,1778,1788,1803,1820,1837,1854,1867,1875,1877,1873,1867,1857,
+1842,1824,1804,1786,1772,1762,1754,1748,1743,1740,1737,1735,1732,1727,1722,1718,1717,1718,1722,1726,
+1728,1730,1731,1728,1721,1709,1694,1679,1665,1652,1639,1622,1603,1583,1563,1542,1520,1495,1469,1443,
+1419,1398,1378,1362,1353,1357,1372,1393,1414,1432,1446,1459,1472,1482,1489,1493,1498,1508,1526,1550,
+1574,1597,1618,1638,1658,1676,1693,1712,1734,1755,1774,1787,1799,1810,1820,1826,1828,1833,1845,1866,
+1889,1911,1928,1943,1955,1967,1980,1995,2012,2027,2040,2054,2074,2102,2134,2165,2190,2210,2227,2242,
+2254,2266,2279,2294,2308,2319,2325,2329,2334,2345,2364,2391,2424,2462,2503,2544,2586,2628,2668,2706,
+2739,2769,2797,2827,2859,2893,2926,2958,2987,3013,3037,3061,3083,3104,3125,3144,3162,3178,3194,3209,
+3224,3238,3251,3263,3273,3283,3290,3297,3304,3311,3316,3319,3319,3317,3315,3317,3322,3327,3327,3322,
+3316,3308,3299,3287,3275,3265,3263,3268,3277,3286,3292,3295,3293,3287,3278,3267,3261,3263,3270,3279,
+3286,3287,3284,3279,3273,3266,3256,3243,3228,3212,3196,3178,3157,3132,3105,3075,3046,3020,3001,2985,
+2973,2961,2950,2939,2928,2915,2902,2887,2872,2854,2835,2817,2803,2795,2790,2787,2785,2785,2787,2790,
+2793,2795,2797,2801,2806,2813,2822,2834,2848,2864,2884,2906,2930,2957,2984,3010,3036,3061,3085,3108,
+3130,3153,3175,3197,3217,3235,3250,3264,3275,3285,3291,3295,3293,3288,3278,3266,3254,3244,3236,3231,
+3227,3225,3223,3221,3217,3213,3209,3207,3209,3213,3217,3216,3210,3200,3189,3180,3174,3169,3164,3158,
+3156,3158,3167,3182,3201,3220,3239,3255,3266,3273,3277,3278,3278,3277,3275,3375,3385,3391,3395,3395,
+3392,3386,3377,3369,3361,3354,3345,3338,3333,3329,3324,3314,3299,3282,3266,3250,3235,3223,3215,3213,
+3213,3213,3212,3208,3202,3191,3176,3157,3138,3120,3103,3088,3074,3058,3042,3026,3011,2999,2990,2984,
+2979,2975,2971,2969,2966,2963,2959,2954,2948,2944,2939,2934,2929,2922,2914,2904,2892,2879,2865,2853,
+2844,2841,2843,2850,2857,2861,2861,2855,2847,2838,2830,2822,2813,2802,2786,2766,2743,2721,2703,2693,
+2690,2694,2700,2707,2713,2718,2720,2720,2716,2709,2701,2693,2684,2675,2666,2658,2651,2642,2632,2621,
+2609,2599,2591,2585,2580,2577,2576,2575,2575,2573,2570,2561,2549,2534,2520,2507,2495,2482,2468,2454,
+2442,2432,2425,2420,2417,2414,2413,2411,2408,2404,2397,2388,2377,2366,2353,2340,2328,2317,2306,2295,
+2283,2271,2259,2248,2238,2228,2217,2205,2192,2178,2164,2150,2136,2124,2111,2100,2089,2079,2070,2060,
+2051,2041,2030,2019,2008,1998,1987,1978,1969,1961,1953,1945,1937,1928,1919,1909,1899,1889,1879,1869,
+1859,1848,1838,1827,1817,1807,1797,1787,1776,1765,1754,1744,1733,1723,1712,1702,1691,1681,1670,1659,
+1648,1637,1625,1614,1603,1591,1578,1564,1549,1534,1518,1502,1485,1469,1454,1442,1430,1417,1405,1393,
+1383,1374,1365,1357,1350,1345,1341,1339,1338,1338,1338,1337,1334,1328,1321,1313,1304,1296,1287,1278,
+1270,1261,1254,1249,1244,1239,1231,1221,1209,1197,1184,1172,1160,1148,1134,1119,1104,1089,1073,1056,
+1042,1029,1017,1006,995,985,977,969,962,955,948,941,933,925,917,910,902,895,887,880,
+873,865,858,851,846,841,837,834,831,829,828,828,829,831,832,834,835,835,835,834,
+832,831,829,826,823,820,816,811,808,804,801,798,794,790,786,781,775,769,761,754,
+746,739,732,724,716,708,699,691,683,676,669,663,656,649,643,638,632,626,621,615,
+611,608,605,603,602,602,603,605,607,609,611,613,615,616,617,617,616,614,613,610,
+607,604,601,598,595,593,591,589,588,586,585,583,581,578,576,576,576,577,578,579,
+581,582,585,587,591,595,600,605,611,618,625,631,635,640,644,647,648,648,646,643,
+638,631,622,612,600,587,573,560,546,533,519,506,493,479,466,452,438,424,411,398,
+386,375,364,354,344,335,327,320,314,308,304,301,298,297,296,296,296,298,299,301,
+304,307,310,313,317,321,325,329,334,338,343,347,352,356,361,367,372,377,382,387,
+391,394,397,398,398,397,396,394,392,389,384,377,369,359,350,341,334,330,330,333,
+339,347,357,366,374,381,387,391,394,395,394,393,390,387,382,376,370,363,356,350,
+344,338,332,327,322,317,311,306,301,296,290,284,277,272,266,261,256,252,248,244,
+240,236,233,229,225,221,216,211,206,201,196,191,187,183,181,179,179,181,183,186,
+187,188,187,187,187,187,189,192,197,204,214,225,236,246,255,264,273,281,286,290,
+291,293,294,295,294,289,283,275,266,257,249,242,235,230,225,221,217,214,211,208,
+205,204,202,202,201,200,200,200,201,203,205,208,211,214,216,219,221,222,223,222,
+220,218,215,212,208,204,199,194,189,186,183,181,180,179,179,179,180,181,182,184,
+186,188,189,189,190,191,192,193,193,194,195,196,197,199,200,202,205,207,210,212,
+215,218,220,223,226,229,232,235,238,242,245,249,252,255,257,260,262,265,267,269,
+271,272,274,276,277,279,281,283,284,286,286,287,287,287,287,287,287,288,291,294,
+297,302,306,310,314,318,322,325,328,331,334,337,340,342,344,346,348,350,353,355,
+356,358,360,363,365,369,373,377,381,384,386,388,390,392,393,394,394,395,396,398,
+400,401,403,404,404,405,405,404,403,402,400,397,393,389,384,378,371,364,358,356,
+354,354,353,351,349,347,344,342,340,338,337,336,335,334,332,331,329,328,327,325,
+322,319,316,314,312,311,310,308,307,306,306,305,304,301,298,294,290,288,286,286,
+287,288,288,287,286,286,286,286,287,287,289,290,292,292,291,289,287,285,284,281,
+278,274,271,269,269,269,267,265,262,259,256,254,251,249,247,246,245,243,239,235,
+231,228,226,224,223,222,220,218,216,215,213,210,204,196,188,183,181,180,179,178,
+175,173,172,171,170,170,170,171,174,176,179,181,183,186,189,191,194,195,196,196,
+196,196,196,197,197,198,197,197,196,196,196,196,196,198,201,205,210,215,221,227,
+232,238,243,249,254,259,264,269,274,278,282,285,288,292,296,298,300,300,301,301,
+302,302,302,303,303,303,303,302,301,300,300,300,301,301,302,303,303,303,303,302,
+301,300,299,297,295,293,291,289,289,290,291,292,292,292,291,291,290,290,289,287,
+286,284,282,280,279,277,276,274,273,272,272,272,274,276,277,279,280,279,278,276,
+275,275,276,280,285,292,299,306,313,321,329,336,342,348,353,360,366,372,377,383,
+389,395,402,410,419,429,439,450,462,473,483,493,502,512,521,529,538,547,557,566,
+576,586,596,606,616,626,636,646,655,663,670,677,684,692,700,710,721,733,745,756,
+767,777,787,797,807,816,823,829,834,839,843,848,852,856,861,866,872,877,884,891,
+899,906,914,923,934,945,955,964,972,979,983,985,987,990,994,998,1003,1008,1014,1019,
+1026,1032,1040,1051,1066,1084,1106,1129,1152,1172,1187,1199,1208,1218,1228,1236,1239,1239,1239,1242,
+1247,1252,1256,1261,1266,1270,1275,1281,1292,1305,1318,1331,1343,1355,1368,1378,1388,1400,1416,1434,
+1449,1462,1475,1493,1515,1536,1555,1570,1585,1599,1612,1623,1632,1641,1647,1652,1655,1659,1664,1669,
+1671,1672,1671,1671,1670,1665,1658,1652,1655,1672,1700,1730,1754,1767,1771,1772,1772,1772,1772,1772,
+1775,1782,1790,1795,1795,1791,1785,1779,1773,1769,1764,1761,1756,1751,1744,1735,1723,1710,1695,1682,
+1670,1660,1648,1631,1608,1581,1551,1521,1491,1461,1432,1406,1384,1363,1342,1318,1294,1269,1248,1230,
+1216,1208,1206,1208,1215,1226,1241,1261,1285,1312,1338,1364,1390,1416,1442,1467,1492,1516,1539,1560,
+1578,1595,1613,1633,1656,1682,1709,1737,1762,1783,1800,1818,1840,1863,1883,1898,1912,1931,1959,1991,
+2020,2044,2064,2084,2105,2125,2140,2147,2150,2149,2150,2154,2162,2174,2193,2218,2250,2286,2321,2350,
+2374,2395,2415,2433,2447,2457,2467,2478,2491,2505,2521,2536,2554,2575,2601,2634,2671,2710,2748,2786,
+2824,2864,2904,2943,2981,3016,3048,3078,3105,3129,3151,3172,3190,3208,3225,3242,3259,3275,3292,3307,
+3321,3333,3344,3354,3366,3378,3390,3402,3414,3425,3434,3441,3446,3450,3452,3451,3448,3444,3439,3434,
+3428,3420,3411,3400,3389,3382,3382,3390,3403,3416,3424,3425,3420,3413,3409,3408,3410,3409,3403,3393,
+3383,3375,3366,3352,3332,3308,3286,3267,3252,3239,3225,3211,3199,3190,3186,3184,3183,3178,3169,3157,
+3143,3131,3119,3109,3099,3086,3068,3046,3022,2996,2972,2949,2931,2918,2911,2908,2905,2903,2900,2897,
+2895,2893,2892,2894,2899,2906,2914,2925,2936,2947,2958,2967,2976,2986,2998,3012,3027,3043,3060,3079,
+3100,3120,3141,3162,3183,3201,3214,3224,3233,3243,3254,3267,3277,3285,3292,3296,3298,3299,3298,3297,
+3297,3295,3294,3294,3295,3293,3289,3280,3270,3260,3251,3244,3236,3230,3224,3217,3211,3207,3204,3203,
+3202,3203,3205,3210,3218,3231,3247,3264,3280,3295,3310,3325,3339,3352,3364,3375,3411,3421,3428,3433,
+3435,3436,3435,3433,3428,3422,3416,3410,3404,3398,3391,3381,3368,3354,3340,3326,3313,3300,3286,3272,
+3257,3243,3230,3222,3217,3215,3211,3204,3194,3182,3168,3154,3139,3123,3108,3094,3083,3076,3073,3072,
+3073,3076,3080,3083,3084,3081,3075,3065,3054,3045,3038,3032,3026,3019,3012,3005,2997,2990,2986,2984,
+2985,2988,2993,2998,3002,3005,3004,3001,2994,2984,2972,2958,2944,2929,2913,2897,2881,2865,2850,2835,
+2824,2815,2809,2805,2802,2800,2799,2797,2793,2787,2778,2765,2752,2739,2727,2717,2708,2699,2691,2685,
+2682,2681,2680,2680,2679,2676,2670,2662,2652,2640,2627,2612,2595,2578,2561,2544,2529,2514,2500,2487,
+2476,2467,2459,2452,2448,2445,2444,2441,2436,2427,2415,2400,2384,2368,2353,2339,2326,2313,2301,2289,
+2278,2267,2256,2245,2234,2223,2211,2199,2185,2170,2153,2135,2117,2099,2082,2067,2054,2042,2031,2022,
+2013,2004,1996,1989,1982,1975,1967,1957,1948,1939,1932,1924,1915,1907,1899,1891,1882,1873,1863,1853,
+1843,1832,1822,1811,1801,1790,1779,1768,1757,1745,1733,1720,1708,1695,1682,1669,1656,1643,1628,1614,
+1599,1585,1569,1554,1539,1525,1513,1503,1494,1486,1479,1471,1462,1452,1438,1422,1403,1383,1363,1343,
+1325,1308,1294,1282,1271,1260,1250,1239,1230,1224,1223,1227,1234,1240,1243,1242,1237,1229,1220,1210,
+1197,1182,1168,1159,1153,1146,1136,1125,1114,1105,1097,1088,1077,1066,1054,1041,1025,1007,988,968,
+949,930,915,903,892,882,872,863,856,849,842,834,826,818,811,804,797,790,783,776,
+768,761,754,748,743,740,737,735,734,735,736,738,741,746,750,754,755,755,754,752,
+750,747,743,740,736,731,726,721,716,712,709,707,704,702,700,697,693,688,682,675,
+668,661,654,646,636,627,617,607,597,588,580,573,566,558,550,543,537,531,525,520,
+515,510,506,503,501,500,500,501,503,506,509,512,514,516,518,519,520,519,518,515,
+512,508,503,500,498,498,498,498,496,493,490,488,488,489,491,494,500,506,512,517,
+522,526,531,537,544,552,560,569,579,591,604,615,626,636,647,656,665,671,675,676,
+674,670,664,655,644,631,617,604,590,576,561,545,529,512,494,476,459,442,426,410,
+394,379,364,350,338,326,315,304,293,283,273,265,259,255,253,250,248,247,246,246,
+248,250,252,256,259,262,265,269,273,277,282,287,292,296,301,305,310,316,322,329,
+335,342,348,353,356,357,357,357,356,355,353,348,340,328,311,292,273,259,249,246,
+250,260,273,287,299,309,319,327,335,341,346,349,351,351,349,346,342,335,328,322,
+316,310,304,297,292,287,282,277,272,266,259,251,243,236,229,223,217,212,208,203,
+198,193,189,184,179,173,167,162,155,150,145,142,139,136,133,132,132,134,138,143,
+148,153,155,155,157,161,167,175,182,189,196,204,213,222,231,238,245,252,260,268,
+274,276,277,277,275,272,266,258,249,240,231,222,214,206,200,194,190,187,184,182,
+179,176,174,171,168,165,162,159,156,154,154,155,158,161,164,168,172,175,178,180,
+181,180,178,175,173,171,170,168,164,160,156,153,152,152,153,154,154,155,155,157,
+158,160,160,160,160,158,157,156,156,155,155,154,154,154,155,155,155,156,156,157,
+157,159,161,163,165,167,169,171,174,178,182,186,190,194,199,203,208,213,217,221,
+225,228,231,234,237,241,245,249,253,257,259,261,261,261,261,260,260,261,263,266,
+270,274,278,282,286,290,293,295,297,298,300,302,303,304,306,308,310,313,316,319,
+322,325,328,333,338,345,352,359,366,371,373,374,373,373,374,375,376,376,376,376,
+375,375,375,376,377,378,379,379,379,378,376,373,368,363,356,348,340,332,326,321,
+318,316,315,313,312,311,310,309,307,304,302,299,298,297,296,296,297,297,298,298,
+298,297,296,295,294,292,290,288,287,286,285,284,284,284,283,280,277,273,271,269,
+267,265,262,259,257,254,252,250,247,244,241,238,235,234,232,231,228,226,223,220,
+217,213,210,208,206,204,202,201,199,197,195,194,194,195,195,193,191,188,185,181,
+177,173,170,166,161,155,148,141,135,130,128,127,126,125,125,127,131,138,146,152,
+157,159,159,158,156,154,153,152,151,151,152,152,152,152,152,153,154,157,160,162,
+164,165,165,165,164,163,161,160,159,158,158,159,160,161,164,167,171,176,182,187,
+192,197,202,208,213,217,220,223,226,229,232,235,237,239,241,241,242,242,242,241,
+241,240,240,239,239,238,238,238,237,236,235,233,232,231,229,227,226,224,223,221,
+220,218,216,213,210,207,204,201,198,196,194,192,191,191,190,191,191,192,194,195,
+195,195,194,194,193,192,192,192,192,194,196,198,200,201,202,202,202,202,204,208,
+213,219,225,230,236,242,248,254,261,267,272,278,285,292,300,308,316,323,331,340,
+350,361,371,380,390,400,412,424,436,449,462,475,488,501,514,526,538,550,562,573,
+584,596,608,619,631,643,654,665,675,685,694,703,712,721,730,738,744,748,752,755,
+758,760,760,760,760,759,757,756,755,754,753,754,755,757,759,762,767,774,783,794,
+807,823,840,856,870,881,890,900,909,916,921,924,927,930,932,933,938,947,961,977,
+992,1005,1018,1031,1044,1054,1059,1058,1053,1047,1044,1045,1051,1061,1074,1089,1104,1117,1129,1139,
+1148,1154,1159,1164,1168,1171,1173,1175,1178,1181,1180,1175,1169,1167,1172,1184,1201,1224,1252,1281,
+1308,1331,1350,1367,1381,1391,1400,1410,1422,1435,1448,1461,1474,1485,1492,1492,1489,1489,1497,1511,
+1521,1522,1517,1519,1533,1560,1591,1621,1649,1675,1697,1713,1723,1733,1744,1756,1767,1777,1787,1796,
+1801,1803,1802,1798,1793,1788,1782,1775,1767,1757,1747,1737,1726,1716,1706,1698,1687,1670,1644,1616,
+1590,1569,1550,1530,1506,1480,1452,1422,1389,1357,1327,1299,1271,1245,1219,1195,1175,1157,1145,1139,
+1140,1146,1153,1160,1169,1181,1199,1226,1261,1303,1348,1392,1432,1471,1511,1551,1588,1621,1648,1673,
+1696,1719,1742,1766,1787,1804,1820,1837,1861,1890,1918,1942,1960,1975,1993,2011,2028,2042,2055,2070,
+2093,2123,2155,2184,2208,2227,2243,2259,2274,2290,2306,2322,2334,2343,2349,2356,2368,2388,2414,2444,
+2474,2502,2529,2554,2578,2604,2630,2654,2676,2696,2713,2729,2744,2759,2775,2793,2812,2831,2851,2874,
+2903,2936,2972,3007,3041,3075,3108,3137,3164,3189,3212,3233,3252,3271,3289,3306,3323,3340,3358,3376,
+3393,3406,3416,3422,3426,3428,3429,3430,3432,3434,3436,3439,3442,3445,3447,3448,3447,3444,3438,3431,
+3424,3418,3412,3408,3406,3406,3409,3414,3418,3420,3421,3420,3420,3422,3426,3430,3434,3435,3434,3431,
+3428,3424,3421,3420,3420,3422,3421,3415,3403,3389,3374,3361,3348,3335,3321,3306,3290,3275,3261,3249,
+3236,3220,3203,3187,3174,3163,3151,3135,3116,3097,3081,3068,3060,3056,3057,3060,3061,3058,3054,3052,
+3052,3053,3055,3056,3058,3059,3060,3062,3065,3069,3074,3077,3080,3083,3087,3092,3097,3102,3107,3111,
+3113,3116,3122,3133,3145,3158,3169,3180,3192,3204,3214,3222,3231,3240,3249,3257,3265,3272,3279,3286,
+3293,3298,3303,3308,3315,3324,3334,3340,3342,3338,3330,3319,3308,3297,3285,3275,3264,3255,3247,3240,
+3237,3236,3240,3250,3265,3282,3297,3309,3318,3328,3339,3351,3364,3376,3389,3401,3411,3425,3432,3440,
+3449,3457,3464,3469,3471,3471,3469,3466,3462,3458,3452,3446,3438,3428,3416,3403,3393,3383,3373,3359,
+3343,3325,3307,3291,3278,3267,3258,3252,3247,3244,3241,3238,3235,3233,3229,3223,3216,3208,3198,3189,
+3180,3172,3166,3163,3161,3160,3162,3163,3163,3161,3157,3153,3150,3148,3146,3142,3135,3126,3115,3103,
+3092,3082,3074,3069,3065,3062,3059,3054,3047,3036,3023,3007,2991,2974,2958,2943,2929,2916,2902,2887,
+2873,2859,2845,2833,2822,2812,2805,2799,2794,2789,2781,2772,2762,2753,2745,2739,2733,2727,2720,2713,
+2706,2700,2695,2690,2685,2679,2673,2666,2657,2646,2632,2617,2600,2583,2567,2554,2544,2535,2526,2515,
+2504,2490,2477,2464,2454,2446,2440,2432,2422,2411,2400,2389,2377,2364,2352,2340,2328,2316,2304,2292,
+2280,2268,2256,2245,2232,2219,2206,2192,2176,2158,2138,2116,2093,2071,2049,2030,2013,1999,1987,1978,
+1970,1965,1961,1958,1954,1948,1940,1931,1922,1912,1903,1893,1885,1876,1868,1860,1852,1845,1837,1828,
+1820,1810,1800,1791,1781,1771,1760,1748,1736,1722,1708,1693,1678,1663,1648,1633,1619,1605,1592,1576,
+1558,1540,1523,1507,1492,1479,1467,1456,1446,1434,1423,1413,1405,1399,1390,1375,1356,1336,1319,1306,
+1294,1284,1277,1277,1281,1283,1275,1253,1221,1186,1156,1135,1123,1118,1117,1118,1121,1123,1121,1113,
+1101,1087,1074,1066,1062,1059,1056,1052,1048,1045,1041,1035,1026,1016,1006,998,991,979,954,917,
+875,839,814,797,784,773,764,756,748,740,733,727,721,714,707,701,694,686,678,670,
+664,657,649,642,636,632,628,626,625,624,625,628,632,637,642,646,649,650,649,647,
+646,645,643,640,637,634,631,628,625,621,619,617,613,609,604,599,594,589,587,585,
+584,581,577,570,563,556,548,538,526,513,501,491,480,469,459,450,443,435,427,419,
+411,404,398,393,389,386,386,389,392,398,404,409,415,420,424,428,430,431,430,426,
+420,411,405,405,411,417,420,420,419,419,421,424,429,432,432,430,433,444,461,483,
+505,526,540,541,532,519,512,514,521,530,539,549,561,573,587,602,618,635,650,662,
+672,678,679,676,670,662,653,643,632,621,607,591,572,552,530,509,488,468,448,429,
+410,390,371,352,336,321,306,293,281,271,260,250,240,231,224,217,211,207,204,202,
+200,197,197,197,199,200,203,206,211,215,219,224,228,234,240,247,253,259,263,268,
+273,279,284,290,297,304,310,313,313,310,306,301,298,295,291,285,278,270,261,250,
+241,234,232,234,239,245,251,258,265,271,278,285,292,296,298,299,299,297,294,291,
+288,285,282,278,272,265,256,246,238,231,225,218,210,201,194,187,182,178,173,169,
+165,160,154,146,137,127,117,107,97,89,83,78,74,72,72,75,79,83,89,95,
+101,107,114,121,128,134,140,147,156,165,175,183,189,195,201,207,213,218,220,219,
+217,215,215,217,218,219,216,212,207,203,200,197,194,190,184,178,173,169,166,165,
+163,160,156,152,147,141,135,129,125,123,122,122,122,123,125,126,128,130,132,134,
+136,139,140,140,139,138,136,133,130,127,123,119,116,113,112,113,115,118,120,122,
+123,125,127,129,131,132,133,133,132,131,129,127,124,122,118,116,114,113,112,112,
+111,111,111,112,112,113,114,115,117,120,122,126,130,134,139,144,149,154,161,168,
+174,180,186,193,200,206,211,214,218,222,225,227,229,230,230,231,231,233,235,238,
+242,245,249,253,256,259,261,263,265,266,266,267,267,269,272,275,278,281,285,289,
+292,295,298,303,310,318,327,336,343,349,353,357,361,364,366,367,367,366,363,359,
+355,353,353,356,360,365,368,370,370,368,364,358,352,346,340,334,328,321,315,308,
+302,297,294,291,290,290,291,292,292,290,289,287,286,284,282,281,279,278,277,277,
+277,278,279,280,279,278,277,275,272,270,267,266,265,263,262,261,260,259,258,255,
+252,249,247,246,245,243,240,235,231,226,222,217,212,208,205,202,199,196,193,191,
+188,184,179,174,169,165,162,161,160,158,154,150,146,143,142,141,141,141,139,137,
+133,128,122,116,111,106,103,101,99,98,98,99,100,101,103,105,109,113,117,121,
+125,129,132,134,136,136,135,134,132,131,131,132,133,133,133,135,137,139,141,142,
+143,143,142,140,138,135,133,131,129,128,127,127,128,130,134,138,141,143,145,147,
+150,153,155,158,160,162,164,167,169,172,174,176,178,178,179,180,180,180,180,178,
+175,173,171,169,167,165,163,161,160,159,157,156,154,152,149,145,140,134,128,123,
+118,113,107,102,97,93,90,88,85,83,80,79,78,78,76,75,73,73,76,79,
+82,84,85,86,87,89,93,97,102,107,112,118,123,128,134,140,146,153,159,165,
+170,176,182,188,194,200,206,213,220,228,236,245,255,266,276,287,298,308,318,327,
+336,347,359,372,387,403,419,436,454,472,491,508,524,539,553,566,578,591,603,616,
+628,640,652,662,672,682,691,699,707,713,718,722,725,728,730,731,732,733,733,732,
+730,727,723,720,716,712,706,700,693,688,683,679,677,676,677,678,682,687,694,703,
+714,726,738,750,761,771,784,800,817,831,841,848,852,854,858,865,874,884,894,906,
+919,936,952,968,984,1000,1012,1019,1020,1015,1006,992,974,959,950,952,961,976,991,1004,
+1014,1021,1029,1036,1041,1040,1035,1028,1024,1025,1029,1033,1036,1039,1045,1058,1079,1104,1128,1150,
+1172,1195,1219,1242,1260,1277,1294,1308,1315,1318,1324,1343,1367,1387,1395,1397,1401,1406,1407,1401,
+1398,1407,1430,1457,1483,1507,1531,1555,1578,1601,1623,1644,1662,1678,1694,1712,1731,1749,1767,1786,
+1802,1811,1813,1811,1810,1811,1811,1804,1790,1771,1750,1729,1707,1682,1656,1630,1606,1583,1557,1525,
+1487,1445,1405,1369,1337,1305,1269,1230,1190,1154,1120,1088,1061,1043,1037,1040,1050,1066,1091,1122,
+1157,1190,1224,1259,1294,1323,1343,1355,1360,1362,1367,1384,1418,1469,1526,1579,1625,1664,1701,1736,
+1769,1797,1822,1844,1864,1884,1906,1930,1955,1981,2007,2033,2057,2079,2098,2116,2135,2156,2178,2198,
+2217,2237,2257,2277,2297,2316,2336,2357,2379,2400,2419,2436,2451,2464,2476,2486,2496,2508,2523,2542,
+2565,2589,2615,2641,2668,2696,2723,2749,2774,2798,2820,2841,2860,2878,2895,2911,2926,2941,2957,2975,
+2995,3015,3038,3062,3086,3110,3133,3156,3178,3201,3222,3243,3265,3286,3308,3329,3350,3369,3387,3403,
+3416,3428,3438,3445,3451,3454,3457,3459,3461,3462,3463,3464,3465,3465,3464,3461,3458,3454,3450,3445,
+3440,3436,3432,3429,3428,3429,3431,3434,3436,3438,3441,3444,3449,3455,3464,3475,3485,3495,3505,3513,
+3519,3521,3522,3519,3513,3504,3492,3477,3458,3436,3413,3392,3372,3352,3329,3305,3289,3281,3277,3268,
+3249,3227,3211,3202,3196,3186,3170,3155,3148,3151,3161,3173,3182,3186,3183,3177,3170,3164,3159,3153,
+3147,3142,3142,3147,3155,3163,3169,3173,3174,3174,3173,3171,3171,3171,3169,3164,3158,3151,3146,3143,
+3143,3145,3148,3151,3155,3159,3161,3161,3158,3155,3154,3156,3161,3168,3177,3189,3201,3214,3227,3242,
+3260,3278,3296,3312,3327,3338,3346,3353,3360,3371,3384,3396,3406,3410,3409,3402,3392,3379,3365,3352,
+3338,3326,3317,3311,3309,3311,3316,3324,3333,3346,3359,3373,3385,3395,3404,3411,3418,3425,3447,3448,
+3448,3448,3446,3445,3445,3446,3452,3460,3470,3479,3486,3490,3491,3490,3486,3481,3475,3468,3460,3450,
+3437,3423,3409,3394,3381,3368,3356,3344,3337,3334,3334,3333,3328,3321,3315,3309,3302,3296,3291,3287,
+3285,3283,3283,3283,3283,3284,3286,3290,3295,3301,3309,3317,3324,3329,3331,3325,3309,3283,3252,3220,
+3192,3167,3147,3131,3118,3106,3094,3080,3064,3047,3027,3006,2986,2966,2949,2933,2920,2907,2895,2883,
+2872,2859,2845,2829,2813,2799,2787,2776,2765,2755,2744,2734,2727,2723,2724,2728,2730,2729,2721,2709,
+2694,2678,2664,2651,2640,2631,2622,2614,2606,2600,2593,2585,2575,2562,2548,2535,2524,2516,2508,2501,
+2492,2482,2470,2456,2442,2427,2412,2398,2385,2373,2364,2356,2348,2341,2335,2328,2321,2313,2303,2292,
+2279,2264,2249,2235,2220,2206,2191,2175,2159,2143,2125,2108,2090,2071,2053,2036,2019,2004,1990,1977,
+1965,1953,1942,1932,1923,1915,1906,1898,1890,1882,1874,1866,1859,1852,1846,1839,1832,1826,1820,1814,
+1807,1797,1783,1770,1761,1755,1748,1736,1718,1696,1675,1655,1635,1616,1600,1587,1575,1563,1546,1526,
+1504,1484,1468,1457,1447,1437,1424,1408,1389,1373,1361,1350,1339,1327,1316,1307,1295,1280,1265,1255,
+1252,1253,1250,1234,1200,1149,1092,1049,1035,1047,1065,1072,1061,1042,1024,1007,990,969,949,934,
+927,924,921,916,909,904,899,893,889,894,911,933,941,925,887,838,790,747,709,680,
+662,656,658,660,660,656,652,647,640,633,627,621,614,606,598,591,583,575,566,558,
+549,541,534,527,522,516,511,508,507,506,508,510,515,522,529,537,545,550,552,553,
+555,557,559,558,557,556,555,554,554,553,552,551,552,555,556,547,527,501,482,476,
+482,490,491,483,472,462,452,439,423,406,388,371,354,338,325,316,306,297,289,282,
+277,272,269,266,264,262,262,263,265,268,273,278,284,289,295,301,308,315,321,326,
+331,336,340,344,348,354,361,365,367,368,372,379,387,393,399,402,400,395,391,392,
+397,401,401,396,391,394,405,419,430,437,442,450,461,472,481,490,499,509,521,534,
+549,563,575,586,595,603,608,610,606,596,583,569,553,537,519,500,480,461,442,422,
+403,385,368,351,335,320,306,295,283,271,259,249,240,231,223,213,204,195,187,181,
+175,171,168,166,165,164,164,165,166,168,171,175,179,182,186,191,198,204,210,215,
+220,226,233,240,246,251,258,264,269,271,272,270,267,262,256,249,242,236,230,223,
+216,207,196,186,179,177,180,187,194,202,209,218,228,238,246,250,253,256,258,260,
+261,261,262,261,259,253,244,235,225,217,209,200,192,184,177,172,167,163,159,154,
+149,143,136,128,120,111,102,93,84,75,67,59,51,44,39,36,35,36,40,45,
+52,59,66,73,79,87,96,105,112,120,127,134,141,146,152,158,164,171,178,184,
+187,185,178,170,164,161,159,159,159,160,162,163,163,161,157,152,146,141,137,134,
+130,128,127,126,124,122,119,117,115,114,114,114,115,117,120,122,123,123,122,122,
+122,121,119,118,117,117,115,113,109,104,99,94,89,84,80,78,77,80,84,88,
+92,95,99,103,108,113,116,118,119,120,122,122,121,119,117,115,113,110,108,106,
+103,101,99,98,97,95,94,95,96,97,98,100,104,108,112,117,123,129,135,141,
+146,151,156,161,166,170,173,176,178,179,181,182,183,184,184,186,188,193,197,201,
+205,209,213,217,221,223,225,226,226,226,225,224,224,225,227,229,231,234,237,241,
+247,254,262,271,279,289,299,312,326,339,349,357,362,366,369,371,372,372,371,366,
+359,352,346,341,337,334,334,336,338,339,340,339,336,331,326,321,315,309,304,298,
+291,284,277,271,268,268,272,277,283,289,295,298,300,298,294,290,286,283,281,278,
+275,273,271,272,273,273,273,271,268,265,261,258,256,252,248,244,239,234,230,226,
+221,216,212,209,205,201,198,195,191,186,180,172,164,156,150,144,137,130,123,118,
+114,112,110,109,109,109,109,109,111,113,116,116,113,108,102,98,96,96,96,98,
+98,97,94,88,82,76,72,69,68,68,69,70,72,75,79,82,86,90,95,99,
+103,106,108,109,111,112,113,113,112,111,111,110,110,109,109,109,110,111,112,113,
+113,113,113,112,110,108,106,103,102,101,100,100,100,101,101,102,103,104,105,104,
+103,102,103,104,106,108,109,111,112,113,113,113,112,110,108,106,105,103,101,99,
+97,95,93,91,89,86,83,80,76,72,69,65,61,57,53,49,44,38,32,25,
+19,12,6,1,-3,-8,-13,-17,-21,-23,-23,-22,-19,-16,-15,-16,-19,-24,-27,-28,
+-25,-19,-12,-7,-3,0,5,13,22,31,39,46,53,60,68,76,85,94,102,111,
+120,129,140,151,161,172,182,191,199,208,218,229,241,254,269,284,298,312,327,342,
+359,376,393,412,431,451,470,489,507,525,542,558,574,589,605,619,634,648,663,678,
+692,705,716,726,735,743,750,756,761,765,767,767,765,761,756,749,741,732,722,712,
+701,691,681,672,664,657,651,646,640,635,630,625,620,616,614,613,615,618,622,628,
+636,646,655,663,671,680,691,705,720,735,747,754,759,763,769,777,786,797,809,823,
+840,860,882,903,925,950,973,992,1002,1004,1001,993,977,954,928,906,888,875,865,860,
+861,868,880,894,908,918,924,928,930,928,923,919,926,945,969,989,1000,1005,1012,1023,
+1035,1045,1054,1061,1071,1086,1104,1123,1138,1152,1170,1196,1225,1250,1267,1275,1280,1283,1288,1298,
+1316,1342,1371,1401,1433,1469,1507,1543,1576,1606,1633,1656,1675,1692,1714,1741,1765,1780,1790,1798,
+1807,1813,1814,1810,1802,1790,1773,1750,1723,1695,1665,1635,1605,1577,1553,1529,1501,1465,1422,1375,
+1327,1279,1227,1172,1118,1069,1028,992,961,938,928,930,942,959,977,998,1028,1066,1110,1153,
+1193,1230,1263,1289,1306,1323,1349,1384,1418,1442,1452,1452,1451,1456,1472,1502,1544,1592,1642,1691,
+1736,1774,1804,1831,1861,1896,1932,1967,2000,2032,2066,2098,2128,2157,2185,2211,2234,2256,2277,2297,
+2316,2332,2347,2361,2375,2390,2407,2426,2447,2470,2493,2515,2537,2557,2577,2597,2616,2633,2649,2664,
+2681,2698,2716,2733,2750,2767,2784,2803,2822,2841,2860,2880,2899,2919,2938,2957,2975,2994,3012,3031,
+3049,3068,3087,3106,3126,3146,3165,3182,3200,3217,3234,3250,3265,3280,3296,3315,3336,3358,3380,3399,
+3417,3433,3445,3453,3459,3464,3467,3469,3469,3470,3471,3472,3473,3476,3479,3482,3484,3485,3486,3488,
+3490,3493,3497,3501,3506,3512,3519,3528,3536,3546,3556,3565,3573,3579,3586,3592,3598,3603,3608,3612,
+3615,3617,3616,3610,3598,3581,3561,3540,3515,3485,3452,3418,3383,3348,3314,3286,3262,3243,3230,3224,
+3225,3224,3216,3202,3185,3174,3172,3180,3194,3209,3220,3228,3234,3238,3240,3236,3228,3215,3203,3197,
+3196,3196,3191,3185,3182,3182,3178,3167,3151,3140,3139,3147,3159,3171,3179,3182,3182,3182,3186,3189,
+3189,3185,3179,3174,3171,3168,3167,3166,3167,3169,3171,3175,3180,3187,3195,3205,3214,3222,3231,3241,
+3253,3265,3280,3297,3316,3336,3355,3374,3390,3405,3415,3423,3427,3426,3419,3410,3400,3392,3389,3391,
+3397,3404,3407,3403,3394,3382,3372,3365,3361,3360,3364,3375,3392,3411,3428,3439,3444,3446,3447,3485,
+3486,3487,3487,3487,3488,3492,3498,3507,3516,3526,3534,3540,3544,3545,3545,3545,3544,3543,3541,3538,
+3534,3530,3526,3521,3515,3506,3494,3479,3463,3449,3438,3431,3425,3420,3417,3413,3409,3406,3404,3404,
+3406,3408,3411,3413,3415,3418,3421,3426,3431,3436,3442,3447,3452,3453,3449,3438,3420,3396,3371,3342,
+3310,3278,3247,3221,3196,3171,3145,3118,3092,3067,3043,3018,2995,2972,2952,2932,2911,2890,2869,2853,
+2841,2831,2821,2811,2800,2790,2781,2773,2764,2754,2743,2730,2718,2706,2696,2690,2688,2689,2688,2684,
+2675,2661,2646,2631,2618,2606,2595,2587,2581,2577,2574,2571,2567,2562,2553,2542,2527,2511,2497,2487,
+2480,2476,2473,2469,2462,2451,2438,2425,2412,2401,2391,2380,2369,2356,2344,2332,2321,2310,2297,2283,
+2268,2253,2237,2222,2207,2192,2177,2162,2147,2132,2117,2101,2085,2069,2052,2036,2019,2003,1987,1971,
+1955,1938,1922,1907,1894,1881,1870,1860,1850,1841,1832,1822,1811,1801,1790,1782,1774,1768,1761,1753,
+1745,1737,1728,1718,1704,1685,1664,1643,1625,1609,1597,1587,1579,1570,1558,1544,1529,1511,1491,1470,
+1452,1436,1420,1401,1382,1366,1355,1348,1340,1330,1316,1302,1289,1279,1268,1254,1233,1207,1180,1154,
+1130,1107,1087,1071,1063,1063,1069,1078,1080,1069,1044,1008,971,941,924,918,915,909,901,892,
+884,875,863,849,834,818,802,788,775,763,750,736,723,711,701,691,683,674,662,649,
+636,623,610,598,587,576,566,558,550,542,533,524,514,505,496,486,476,466,455,446,
+437,429,422,417,412,410,409,409,409,411,414,419,426,434,444,453,461,468,473,479,
+484,487,488,488,490,491,490,487,483,480,477,472,467,464,460,456,450,444,438,429,
+419,407,396,384,370,356,341,323,303,282,262,243,225,208,195,184,175,168,163,160,
+159,158,156,156,156,156,157,160,163,166,171,177,184,190,196,203,211,219,228,237,
+246,255,265,275,287,297,304,311,316,322,328,332,335,337,341,345,349,352,352,349,
+346,345,346,348,349,351,355,362,368,372,375,376,378,381,386,392,397,404,411,419,
+426,433,442,453,463,470,474,477,479,480,479,474,464,449,431,415,401,390,379,370,
+361,354,346,338,330,322,313,304,292,280,268,257,247,237,228,220,213,205,196,185,
+175,167,161,156,150,146,143,141,139,137,135,135,136,140,145,151,157,163,168,174,
+180,186,192,197,202,207,212,217,221,224,227,229,230,230,228,224,218,211,203,196,
+190,185,179,172,165,158,151,146,143,144,148,153,159,166,175,185,194,202,209,214,
+217,218,217,216,214,211,207,202,197,192,188,182,176,169,162,156,151,145,139,133,
+128,123,118,112,106,101,97,94,89,82,75,70,67,65,63,59,56,52,50,48,
+46,44,43,44,46,49,51,54,57,59,61,64,70,77,84,91,98,104,111,119,
+127,133,132,127,121,116,115,117,119,122,123,124,125,126,125,123,120,117,114,112,
+111,111,111,112,113,114,115,115,116,118,120,123,126,130,133,136,137,137,137,138,
+138,139,139,138,135,130,126,123,119,114,107,101,96,91,86,82,79,77,77,78,
+80,85,91,98,104,110,114,117,121,124,127,127,127,126,125,123,120,116,113,110,
+107,104,101,98,95,93,91,89,87,86,85,85,86,87,90,93,96,100,104,109,
+114,119,123,126,127,129,131,132,134,135,134,133,132,132,134,137,142,148,155,161,
+169,177,184,188,190,192,192,192,191,189,187,185,183,182,182,183,184,188,194,201,
+209,219,230,242,254,265,277,289,300,310,320,329,338,348,356,364,370,376,379,379,
+375,367,359,351,343,336,330,324,319,315,313,312,313,315,317,319,318,316,312,307,
+302,295,288,280,272,264,258,253,250,249,250,253,256,260,263,266,269,274,279,283,
+287,290,292,293,293,291,288,284,280,276,272,267,262,258,253,246,238,227,217,210,
+204,200,196,192,189,185,180,175,170,165,158,149,140,132,124,116,107,97,88,80,
+72,68,66,67,67,66,64,64,64,64,63,61,58,54,52,52,51,52,54,57,
+61,63,64,63,62,60,56,53,50,50,50,52,54,56,60,64,68,72,76,80,
+85,89,91,92,91,91,91,92,93,93,92,91,89,87,85,83,82,82,81,81,
+80,79,77,75,72,68,64,61,57,54,52,51,50,49,48,48,49,51,51,47,
+43,38,33,30,29,31,36,40,42,42,41,39,35,32,28,26,24,23,21,20,
+19,18,16,14,10,5,0,-6,-13,-20,-27,-34,-40,-46,-52,-57,-62,-66,-69,-71,
+-74,-78,-84,-90,-96,-99,-101,-102,-102,-103,-103,-105,-106,-107,-107,-107,-106,-104,-104,-103,
+-102,-98,-93,-87,-82,-78,-74,-69,-62,-55,-49,-44,-37,-26,-10,8,28,46,63,78,
+94,108,121,133,143,152,161,170,181,194,210,227,244,260,276,291,307,324,342,361,
+379,397,417,436,456,475,493,511,529,546,564,583,601,620,637,654,670,686,701,715,
+728,739,750,759,767,774,777,777,775,771,764,755,744,732,718,702,684,666,647,629,
+611,595,579,564,550,540,533,528,525,523,523,522,522,521,521,521,523,525,530,536,
+541,547,555,565,575,585,596,608,619,627,637,653,673,689,700,713,735,759,779,791,
+801,813,830,852,882,919,956,983,995,997,996,994,989,978,960,941,924,910,897,883,
+869,855,841,825,808,793,783,778,774,772,772,776,781,789,798,811,823,833,840,849,
+858,867,874,882,894,910,931,955,979,1002,1024,1044,1066,1088,1111,1135,1161,1189,1219,1254,
+1292,1331,1370,1408,1445,1478,1505,1526,1548,1576,1607,1634,1654,1667,1676,1685,1694,1701,1703,1701,
+1696,1691,1683,1669,1648,1620,1590,1560,1534,1510,1483,1447,1405,1362,1322,1281,1239,1199,1163,1127,
+1085,1035,983,936,897,866,846,838,839,846,858,876,900,931,965,1001,1035,1069,1104,1142,
+1182,1221,1255,1285,1310,1331,1352,1377,1407,1438,1468,1496,1522,1545,1564,1581,1596,1611,1629,1654,
+1689,1734,1783,1831,1874,1912,1947,1981,2015,2050,2085,2122,2160,2197,2234,2268,2299,2326,2350,2371,
+2391,2408,2423,2438,2454,2469,2484,2500,2517,2537,2557,2578,2599,2621,2643,2665,2686,2706,2724,2742,
+2758,2773,2785,2794,2804,2814,2827,2843,2861,2881,2901,2920,2939,2957,2975,2993,3010,3027,3043,3059,
+3074,3090,3106,3123,3142,3161,3180,3198,3215,3229,3242,3254,3267,3280,3292,3305,3318,3332,3347,3361,
+3374,3386,3398,3410,3421,3432,3441,3449,3455,3461,3467,3472,3479,3488,3498,3509,3522,3535,3549,3563,
+3578,3591,3604,3616,3627,3637,3647,3655,3663,3669,3675,3679,3682,3685,3686,3687,3686,3684,3679,3673,
+3664,3654,3642,3630,3615,3599,3582,3561,3538,3510,3481,3450,3416,3381,3348,3317,3287,3257,3230,3210,
+3193,3179,3169,3167,3177,3193,3211,3230,3249,3264,3274,3280,3284,3281,3270,3252,3238,3232,3231,3229,
+3225,3219,3211,3199,3184,3170,3159,3149,3139,3131,3128,3127,3125,3123,3123,3127,3131,3133,3136,3140,
+3147,3154,3163,3171,3177,3180,3179,3178,3177,3179,3184,3190,3197,3206,3215,3225,3235,3245,3256,3268,
+3280,3292,3303,3315,3330,3346,3363,3382,3402,3423,3444,3465,3483,3495,3501,3500,3489,3473,3455,3440,
+3430,3425,3422,3419,3415,3409,3401,3393,3386,3382,3382,3388,3399,3416,3434,3452,3467,3477,3483,3485,
+3554,3550,3548,3549,3554,3560,3566,3572,3579,3585,3591,3595,3594,3591,3587,3583,3580,3576,3572,3569,
+3567,3567,3567,3568,3570,3573,3577,3580,3578,3572,3564,3554,3543,3530,3518,3508,3501,3495,3492,3493,
+3497,3502,3502,3500,3499,3499,3502,3503,3502,3499,3492,3484,3474,3461,3446,3428,3407,3384,3360,3335,
+3309,3283,3257,3228,3199,3170,3145,3123,3102,3081,3059,3037,3016,2997,2979,2962,2945,2926,2906,2889,
+2876,2865,2852,2838,2825,2816,2808,2798,2788,2781,2775,2769,2756,2738,2718,2702,2690,2681,2673,2663,
+2651,2638,2626,2615,2604,2593,2582,2575,2570,2568,2568,2569,2570,2568,2560,2546,2530,2513,2499,2486,
+2475,2465,2458,2451,2443,2433,2422,2413,2405,2397,2387,2376,2361,2342,2321,2299,2281,2265,2251,2237,
+2225,2213,2202,2191,2179,2166,2153,2140,2126,2111,2097,2082,2066,2050,2032,2013,1992,1970,1950,1930,
+1911,1893,1876,1860,1845,1831,1818,1805,1793,1782,1771,1760,1748,1736,1722,1709,1697,1684,1671,1659,
+1646,1630,1613,1597,1586,1575,1558,1537,1521,1515,1513,1508,1496,1484,1471,1456,1439,1423,1413,1407,
+1401,1392,1378,1358,1335,1313,1297,1286,1274,1261,1248,1239,1231,1223,1215,1205,1189,1162,1127,1092,
+1067,1055,1051,1048,1041,1031,1023,1018,1012,1004,992,976,960,943,928,912,896,880,869,861,
+852,837,820,804,792,784,775,764,750,731,712,693,677,663,650,639,628,618,607,595,
+582,568,553,539,526,512,498,483,469,457,445,432,419,406,395,383,371,359,349,340,
+332,325,318,312,309,308,308,309,311,314,319,326,335,345,355,366,378,390,400,408,
+413,415,417,418,419,418,417,416,415,415,414,411,406,398,386,372,356,341,326,313,
+303,294,284,272,259,245,231,216,199,183,165,148,133,122,112,103,97,94,94,93,
+92,92,96,99,101,103,106,110,112,115,120,127,134,139,145,150,157,163,170,177,
+185,194,206,220,232,243,257,275,295,310,317,320,320,319,314,308,305,304,304,305,
+306,310,312,312,309,306,303,297,291,287,288,295,305,315,322,325,328,332,335,336,
+339,343,347,350,352,355,359,364,368,372,374,375,375,372,366,357,346,334,323,314,
+307,300,293,285,277,269,262,254,246,240,234,228,222,215,209,203,197,193,189,185,
+181,175,168,160,152,143,135,127,122,117,114,112,112,113,115,120,125,131,138,144,
+150,155,159,164,171,176,180,182,184,186,189,191,192,193,194,194,194,191,184,176,
+170,164,158,152,147,143,139,135,131,127,122,117,112,109,110,115,124,133,143,151,
+158,163,167,169,169,170,170,170,169,166,162,158,155,152,148,143,137,131,125,119,
+113,108,103,98,93,88,84,81,79,76,74,73,74,76,77,78,80,80,79,76,
+73,71,67,61,55,48,41,36,32,28,25,23,23,25,26,27,29,32,37,43,
+52,63,74,83,88,90,90,92,97,102,107,113,117,120,121,121,121,121,120,120,
+120,121,122,124,127,131,134,137,138,140,141,143,146,150,155,159,162,165,167,168,
+170,172,175,177,177,176,173,169,163,157,153,148,141,133,125,119,114,111,109,109,
+110,110,112,116,120,125,130,136,141,145,148,151,154,155,155,153,150,146,142,138,
+133,128,123,118,111,104,97,92,87,81,77,73,70,69,69,69,69,69,70,73,
+77,79,80,81,81,82,83,83,83,81,81,81,83,86,90,95,100,106,112,120,
+129,137,144,149,152,155,156,156,155,154,153,151,149,148,148,150,152,155,159,166,
+174,184,195,206,217,227,239,250,261,270,280,290,297,303,310,319,326,334,341,348,
+354,359,361,362,362,360,355,347,336,325,317,312,307,302,298,295,293,293,293,294,
+295,295,294,292,287,281,272,262,252,244,238,235,233,231,232,234,241,249,258,267,
+274,280,285,288,291,293,293,291,286,282,277,273,267,260,253,244,233,221,208,196,
+184,174,166,161,155,150,142,134,126,118,112,106,100,94,89,85,84,82,81,79,
+77,75,74,72,70,68,64,57,49,40,32,24,15,6,0,-2,-1,3,12,21,
+29,33,34,33,32,31,31,29,29,28,29,30,31,34,36,40,43,47,51,56,
+61,67,71,73,75,75,72,68,64,60,58,55,53,50,48,46,44,41,38,35,
+32,30,27,24,20,16,11,6,2,-2,-5,-8,-10,-12,-13,-15,-18,-21,-26,-32,
+-37,-39,-39,-38,-36,-36,-37,-38,-39,-40,-41,-43,-45,-48,-51,-53,-54,-55,-56,-57,
+-57,-57,-58,-60,-64,-70,-79,-89,-100,-111,-122,-131,-139,-147,-155,-161,-168,-174,-180,-184,
+-185,-183,-179,-175,-170,-164,-159,-153,-147,-141,-135,-131,-131,-135,-140,-145,-149,-152,-152,-151,
+-150,-150,-151,-155,-160,-164,-165,-161,-152,-141,-126,-109,-90,-68,-44,-20,0,18,32,45,
+55,63,71,79,89,101,115,131,151,171,192,213,232,250,268,285,302,319,338,358,
+379,399,419,438,458,478,498,519,539,559,578,595,612,627,641,655,666,677,685,690,
+693,694,693,690,686,680,672,662,648,632,614,595,575,556,537,518,500,483,466,450,
+435,420,405,392,382,374,369,366,363,361,361,362,366,372,379,386,393,401,410,421,
+432,443,454,464,473,484,499,518,538,555,569,582,595,612,630,650,669,686,705,727,
+751,771,788,806,832,865,897,922,941,957,972,980,983,981,974,963,948,931,912,889,
+866,845,827,810,794,785,785,787,780,763,744,729,719,719,727,739,745,745,744,747,
+752,755,759,766,777,792,809,830,857,889,925,963,1002,1041,1078,1113,1148,1183,1216,1246,
+1275,1306,1341,1377,1409,1435,1457,1477,1495,1511,1522,1526,1526,1525,1526,1526,1523,1515,1503,1488,
+1470,1450,1429,1407,1380,1348,1315,1283,1251,1215,1178,1144,1110,1077,1044,1012,982,953,922,889,
+855,821,792,770,758,756,762,773,789,811,840,876,914,950,985,1018,1050,1078,1102,1127,
+1156,1187,1216,1245,1276,1309,1342,1374,1405,1438,1473,1512,1553,1593,1629,1664,1702,1739,1772,1800,
+1827,1854,1879,1900,1921,1942,1964,1988,2013,2039,2068,2099,2133,2167,2201,2233,2264,2293,2321,2348,
+2374,2399,2423,2444,2464,2484,2504,2524,2543,2562,2579,2597,2616,2635,2655,2675,2695,2713,2730,2745,
+2760,2774,2789,2803,2817,2833,2849,2866,2885,2904,2923,2942,2960,2977,2993,3008,3024,3039,3053,3068,
+3082,3095,3110,3124,3140,3157,3173,3190,3206,3221,3234,3247,3260,3271,3282,3292,3302,3312,3322,3333,
+3345,3357,3369,3381,3393,3404,3415,3425,3435,3444,3454,3463,3474,3485,3497,3512,3528,3546,3564,3584,
+3603,3622,3640,3657,3672,3686,3698,3708,3717,3724,3729,3733,3734,3734,3732,3728,3723,3716,3708,3698,
+3688,3678,3668,3657,3644,3631,3618,3603,3586,3566,3542,3515,3483,3449,3415,3382,3346,3311,3278,3253,
+3234,3222,3218,3219,3224,3228,3234,3242,3254,3266,3275,3277,3273,3262,3248,3234,3225,3228,3245,3269,
+3283,3278,3260,3243,3234,3227,3215,3200,3191,3190,3192,3190,3184,3175,3166,3158,3151,3146,3143,3141,
+3141,3146,3153,3161,3167,3169,3170,3172,3176,3179,3183,3190,3201,3214,3229,3245,3259,3272,3285,3298,
+3313,3329,3345,3360,3374,3390,3410,3435,3465,3497,3528,3555,3578,3596,3606,3610,3607,3599,3588,3578,
+3570,3563,3556,3548,3539,3531,3523,3515,3507,3499,3494,3493,3495,3502,3514,3529,3545,3556,3560,3559,
+3554,3615,3609,3603,3596,3591,3584,3576,3568,3562,3559,3556,3556,3557,3559,3559,3558,3560,3562,3565,
+3568,3572,3575,3579,3582,3586,3590,3595,3600,3605,3610,3612,3610,3604,3598,3591,3582,3569,3554,3540,
+3529,3522,3518,3515,3513,3510,3507,3501,3493,3482,3469,3456,3442,3428,3412,3395,3378,3359,3338,3315,
+3294,3274,3254,3235,3216,3198,3177,3153,3127,3100,3074,3051,3033,3019,3006,2994,2982,2971,2958,2942,
+2927,2913,2905,2899,2893,2885,2877,2866,2853,2837,2823,2813,2806,2798,2786,2771,2756,2742,2727,2712,
+2697,2681,2667,2652,2638,2623,2609,2594,2577,2561,2549,2542,2539,2536,2527,2514,2497,2481,2465,2451,
+2438,2426,2417,2410,2405,2400,2395,2390,2383,2373,2360,2344,2327,2311,2295,2279,2262,2245,2229,2213,
+2198,2184,2170,2155,2139,2124,2108,2091,2075,2058,2041,2024,2006,1989,1971,1953,1934,1915,1897,1880,
+1862,1845,1828,1811,1794,1777,1762,1747,1733,1719,1707,1695,1683,1672,1661,1651,1640,1628,1616,1605,
+1595,1584,1572,1560,1549,1538,1528,1517,1506,1495,1483,1469,1454,1439,1424,1409,1395,1380,1364,1344,
+1320,1297,1279,1269,1262,1253,1241,1225,1207,1189,1170,1152,1132,1112,1093,1079,1069,1058,1045,1032,
+1018,1004,991,981,975,972,968,961,952,943,934,924,916,908,900,890,880,868,855,840,
+825,808,790,771,753,736,719,705,691,679,665,652,639,625,612,598,585,571,557,540,
+523,506,490,474,458,441,424,408,392,377,363,349,337,324,312,301,290,280,271,262,
+254,248,242,238,234,231,229,229,229,231,235,239,244,249,256,265,273,282,290,299,
+307,313,317,320,323,324,325,324,323,321,318,314,308,301,293,283,273,263,254,246,
+238,230,222,213,203,192,180,168,157,147,137,127,118,110,104,101,99,97,95,95,
+95,96,97,100,104,109,114,118,122,125,128,130,132,135,137,138,139,142,145,146,
+147,149,151,151,150,147,142,130,117,117,138,172,201,217,223,223,222,221,224,229,
+235,239,245,252,258,264,272,279,281,279,277,280,284,284,283,283,283,279,274,270,
+271,274,275,275,275,276,277,279,280,283,286,290,294,298,301,304,306,307,307,305,
+301,296,290,282,272,262,252,242,232,222,212,203,194,186,179,173,166,161,157,155,
+153,152,152,151,149,144,137,128,118,108,100,93,88,85,85,86,88,90,93,98,
+103,108,114,121,128,134,141,146,151,156,159,161,162,163,164,164,164,165,166,166,
+166,163,158,151,143,135,126,117,108,97,85,72,61,51,45,43,45,52,60,70,
+81,91,100,107,113,117,120,122,125,129,132,135,136,136,134,131,128,124,119,113,
+109,104,98,91,83,75,69,62,56,52,48,47,46,45,46,46,47,48,47,46,
+44,42,39,36,32,27,21,13,5,0,-5,-10,-15,-18,-20,-20,-17,-12,-6,0,
+5,11,18,27,36,48,60,72,84,94,103,111,118,125,131,135,138,141,144,147,
+149,152,156,160,165,169,173,177,181,184,187,190,193,196,199,203,207,212,218,225,
+234,242,249,254,258,260,259,255,250,244,238,231,224,216,206,197,188,182,178,174,
+172,170,169,170,172,176,179,183,186,191,195,198,200,200,200,200,199,198,196,192,
+188,183,177,171,164,158,151,145,139,133,127,120,112,105,97,91,85,79,74,69,
+64,59,55,51,47,42,39,37,37,37,36,37,39,42,47,53,62,71,79,86,
+92,98,104,109,113,117,119,120,120,118,116,113,111,111,111,113,116,122,128,136,
+145,158,172,186,200,214,227,238,250,263,276,286,295,302,308,313,316,320,325,330,
+336,341,347,353,357,359,359,355,350,345,341,338,334,329,322,314,306,300,296,294,
+293,293,294,295,295,293,288,282,273,265,258,252,247,244,240,238,237,236,236,237,
+240,244,249,254,260,265,269,269,267,264,259,253,248,242,236,227,217,204,191,179,
+168,159,149,139,129,121,112,101,91,81,73,67,62,59,58,56,53,51,51,49,
+44,38,32,28,24,19,13,8,5,3,1,-1,-3,-4,-4,-3,-3,0,4,12,
+18,19,16,9,2,-1,-3,-5,-6,-6,-6,-5,-4,-3,-1,0,-1,-1,0,2,
+8,14,20,23,27,30,32,33,32,30,28,25,21,17,13,8,3,0,-4,-8,
+-11,-15,-18,-21,-25,-28,-30,-34,-39,-46,-53,-58,-62,-66,-71,-77,-83,-89,-96,-102,
+-106,-109,-110,-110,-109,-109,-109,-109,-110,-112,-114,-115,-115,-116,-117,-118,-117,-114,-113,-113,
+-115,-119,-125,-132,-140,-149,-158,-166,-175,-184,-193,-201,-208,-215,-223,-231,-236,-240,-242,-242,
+-241,-239,-238,-237,-237,-236,-235,-234,-232,-230,-226,-220,-213,-206,-202,-199,-197,-196,-193,-190,
+-186,-182,-176,-169,-164,-162,-162,-162,-159,-152,-141,-125,-108,-91,-76,-62,-49,-36,-24,-11,
+1,15,31,46,60,74,88,105,123,143,164,184,204,224,244,265,285,307,329,351,
+374,397,420,441,463,484,505,525,544,560,574,584,591,594,595,593,591,587,580,572,
+561,550,536,521,504,486,466,445,425,407,389,372,355,339,325,312,302,292,284,276,
+270,264,257,251,245,240,235,231,230,229,229,231,234,239,245,253,264,277,292,309,
+329,350,371,390,405,417,428,441,458,476,495,510,523,539,560,584,603,615,626,639,
+654,670,689,715,744,775,807,840,870,894,916,938,957,967,967,964,959,952,939,919,
+893,865,836,805,773,745,725,713,705,697,693,688,679,669,665,669,672,673,678,686,
+688,681,675,681,698,714,730,751,777,801,818,832,851,878,914,953,993,1033,1075,1118,
+1158,1187,1206,1218,1230,1245,1260,1273,1282,1290,1297,1299,1293,1279,1264,1249,1230,1208,1190,1178,
+1163,1136,1102,1077,1066,1059,1047,1026,1002,978,950,920,891,867,849,833,814,792,766,740,
+718,702,694,696,705,718,733,750,771,796,821,849,880,911,942,973,1005,1039,1069,1095,
+1121,1153,1189,1229,1270,1313,1355,1393,1426,1458,1491,1525,1561,1602,1648,1694,1736,1776,1815,1855,
+1893,1929,1962,1990,2016,2040,2064,2087,2110,2133,2156,2179,2202,2226,2251,2275,2297,2320,2342,2365,
+2388,2411,2434,2457,2481,2505,2531,2555,2577,2599,2619,2639,2659,2678,2697,2712,2725,2735,2744,2753,
+2764,2776,2789,2804,2818,2834,2850,2868,2886,2905,2924,2942,2960,2979,2997,3015,3033,3050,3068,3085,
+3102,3117,3132,3146,3160,3174,3187,3200,3213,3224,3235,3245,3255,3265,3275,3285,3295,3306,3316,3327,
+3339,3351,3364,3377,3390,3403,3415,3427,3438,3449,3460,3472,3484,3497,3511,3526,3543,3560,3579,3597,
+3616,3633,3650,3666,3680,3692,3702,3711,3719,3724,3727,3729,3729,3727,3724,3719,3712,3704,3693,3681,
+3667,3653,3639,3626,3615,3605,3597,3588,3579,3568,3554,3536,3514,3488,3458,3426,3394,3362,3333,3308,
+3289,3272,3256,3243,3232,3226,3222,3219,3215,3213,3215,3219,3224,3226,3225,3222,3220,3217,3213,3203,
+3189,3176,3171,3176,3183,3183,3176,3170,3172,3178,3180,3174,3164,3155,3148,3144,3143,3144,3145,3149,
+3154,3160,3162,3162,3160,3157,3151,3144,3139,3141,3151,3165,3181,3198,3214,3231,3248,3265,3285,3306,
+3329,3353,3377,3400,3422,3445,3468,3493,3521,3553,3590,3628,3662,3687,3702,3708,3708,3703,3695,3686,
+3678,3670,3664,3658,3650,3640,3630,3621,3614,3608,3605,3603,3604,3606,3609,3612,3616,3620,3622,3621,
+3618,3615,3667,3671,3674,3675,3677,3676,3670,3657,3639,3616,3589,3562,3539,3523,3515,3514,3517,3525,
+3537,3551,3565,3577,3587,3597,3606,3615,3623,3628,3630,3630,3627,3623,3619,3616,3614,3609,3602,3591,
+3576,3560,3548,3543,3543,3542,3538,3534,3529,3519,3504,3488,3473,3457,3439,3420,3403,3387,3369,3351,
+3334,3315,3296,3280,3271,3269,3267,3259,3242,3219,3193,3164,3129,3089,3052,3027,3012,3000,2984,2966,
+2950,2937,2926,2916,2905,2893,2881,2871,2863,2854,2847,2841,2836,2831,2824,2814,2801,2784,2765,2746,
+2727,2708,2689,2669,2648,2626,2605,2584,2565,2548,2533,2519,2506,2493,2481,2466,2450,2432,2416,2401,
+2389,2377,2367,2360,2356,2352,2349,2344,2340,2333,2325,2315,2302,2286,2268,2251,2235,2219,2202,2184,
+2165,2146,2125,2104,2083,2062,2040,2019,1998,1977,1957,1937,1919,1901,1886,1873,1860,1847,1834,1821,
+1807,1792,1777,1761,1744,1728,1711,1695,1679,1664,1650,1637,1625,1614,1603,1593,1583,1574,1564,1555,
+1546,1535,1524,1513,1501,1489,1477,1465,1453,1440,1427,1414,1399,1384,1369,1354,1340,1327,1314,1302,
+1289,1276,1262,1246,1229,1212,1194,1175,1155,1133,1111,1091,1072,1055,1039,1025,1012,1000,988,977,
+968,959,951,945,939,931,922,913,905,897,890,882,873,862,852,843,832,819,805,792,
+781,768,754,738,721,706,692,678,661,644,627,611,595,579,564,550,535,520,504,487,
+469,451,433,415,396,378,361,343,326,310,295,281,268,255,243,231,220,211,203,196,
+190,184,179,175,173,172,171,171,170,171,172,173,175,177,181,186,193,200,209,219,
+229,237,241,241,238,235,233,232,232,231,229,227,226,224,223,220,218,214,211,209,
+206,203,199,194,191,188,186,185,183,180,176,171,165,157,149,140,131,125,118,113,
+108,105,103,101,100,100,101,105,109,113,115,115,114,111,106,101,98,96,94,93,
+94,96,97,99,102,105,107,111,116,121,123,122,123,128,137,146,152,156,160,163,
+167,172,178,184,189,195,200,206,211,218,224,228,231,234,237,241,247,252,257,259,
+256,246,232,218,208,204,202,202,202,204,208,211,214,218,221,224,227,231,234,237,
+240,242,244,245,245,245,245,243,242,240,236,232,226,220,212,204,196,190,184,178,
+174,170,167,164,161,156,152,145,137,127,116,106,95,85,77,70,64,60,57,56,
+56,58,61,66,71,76,81,87,93,99,104,110,114,118,122,125,127,127,126,125,
+124,124,126,128,130,129,125,117,107,95,85,76,66,55,43,31,19,9,5,7,
+15,25,37,51,63,74,81,87,91,96,100,104,107,109,111,112,111,109,108,105,
+101,94,87,79,73,66,60,52,45,39,33,28,22,16,11,8,7,6,4,2,
+0,-1,-4,-8,-12,-17,-23,-29,-35,-40,-44,-46,-48,-50,-51,-51,-50,-46,-41,-34,
+-25,-15,-3,9,21,33,45,57,71,86,100,115,131,146,159,171,181,190,197,200,
+202,205,207,209,211,214,217,220,224,227,231,235,240,246,252,259,266,274,280,287,
+294,301,308,315,321,326,329,331,331,331,330,329,327,324,319,314,308,302,296,290,
+285,280,275,273,273,276,279,282,284,287,291,293,295,295,296,295,294,292,290,286,
+282,278,273,267,260,254,247,241,234,225,215,204,195,185,174,163,153,144,134,123,
+112,101,90,79,68,59,52,46,42,40,39,39,38,40,44,49,55,60,64,67,
+72,77,83,88,89,90,91,92,94,95,95,94,91,89,89,89,91,96,103,113,
+126,140,156,171,185,196,209,221,232,244,260,278,291,297,301,302,303,303,304,306,
+309,313,319,326,333,341,348,352,354,356,360,364,368,369,367,359,346,330,316,306,
+299,294,290,287,283,280,278,275,270,264,260,257,256,255,253,248,240,230,222,216,
+212,210,210,212,214,216,218,218,218,217,214,212,210,208,204,198,193,187,181,174,
+168,160,151,140,128,116,105,96,88,80,73,65,59,53,48,45,42,39,35,31,
+28,26,24,20,14,8,6,5,3,1,0,-1,-2,-3,-3,-1,0,0,0,0,
+-3,-8,-16,-25,-33,-38,-42,-43,-44,-44,-42,-39,-37,-36,-38,-40,-40,-38,-34,-31,
+-28,-25,-21,-16,-11,-8,-6,-5,-5,-5,-6,-8,-12,-16,-19,-23,-28,-33,-38,-43,
+-47,-50,-54,-58,-62,-66,-70,-74,-78,-84,-91,-99,-106,-113,-119,-125,-131,-136,-142,-146,
+-150,-154,-157,-160,-161,-163,-165,-167,-170,-173,-175,-177,-178,-180,-181,-182,-182,-182,-181,-181,
+-182,-184,-186,-189,-193,-198,-203,-210,-218,-226,-235,-244,-252,-259,-265,-270,-275,-280,-285,-290,
+-293,-295,-297,-299,-299,-297,-293,-287,-282,-277,-274,-272,-271,-268,-264,-260,-256,-251,-245,-238,
+-230,-223,-218,-217,-219,-222,-226,-227,-223,-214,-200,-187,-174,-162,-149,-133,-116,-99,-82,-65,
+-47,-28,-11,6,23,40,58,77,98,121,145,170,195,219,244,268,292,316,340,364,
+388,410,431,449,465,478,491,501,508,511,512,510,506,498,487,474,459,440,419,396,
+373,350,328,306,286,267,250,235,220,206,196,187,179,172,164,157,150,144,139,136,
+133,132,132,133,135,139,144,149,156,163,171,178,185,192,197,202,206,211,218,227,
+241,260,282,305,328,350,369,385,399,415,432,449,462,473,482,493,505,517,532,551,
+573,591,598,599,602,616,635,656,679,707,734,753,768,788,815,844,866,878,880,874,
+866,859,848,830,807,782,758,735,713,688,665,648,637,626,611,599,596,597,592,582,
+575,577,585,601,622,644,660,678,705,736,758,765,763,762,768,784,809,843,877,902,
+914,921,928,936,941,944,951,961,968,968,962,956,948,940,934,932,931,924,908,887,
+866,848,835,827,821,810,795,777,760,745,734,725,721,720,720,715,706,694,683,673,
+669,673,684,700,718,739,762,785,808,832,857,882,907,932,958,984,1011,1039,1068,1098,
+1128,1158,1189,1221,1256,1294,1332,1371,1409,1447,1486,1527,1569,1613,1660,1709,1760,1808,1854,1897,
+1940,1983,2024,2064,2101,2136,2168,2199,2226,2252,2277,2302,2325,2345,2362,2376,2390,2405,2421,2438,
+2456,2475,2493,2511,2530,2550,2572,2595,2617,2638,2659,2679,2699,2718,2738,2759,2779,2797,2811,2823,
+2832,2840,2847,2854,2861,2869,2878,2889,2903,2919,2936,2954,2973,2992,3012,3031,3049,3065,3080,3093,
+3106,3120,3134,3149,3165,3181,3196,3211,3225,3238,3250,3262,3275,3287,3298,3310,3322,3336,3352,3369,
+3385,3400,3412,3421,3428,3434,3440,3446,3452,3459,3468,3480,3495,3512,3530,3549,3567,3585,3602,3619,
+3634,3648,3661,3672,3683,3692,3701,3708,3715,3719,3721,3721,3720,3716,3710,3703,3693,3683,3670,3655,
+3638,3620,3601,3583,3566,3552,3539,3527,3514,3501,3486,3471,3454,3435,3414,3391,3367,3343,3320,3298,
+3278,3261,3246,3231,3216,3201,3186,3175,3169,3166,3165,3163,3160,3156,3153,3151,3147,3139,3124,3103,
+3081,3069,3074,3092,3109,3116,3119,3128,3143,3154,3153,3144,3133,3126,3122,3120,3119,3121,3125,3131,
+3137,3142,3146,3147,3146,3143,3139,3134,3132,3138,3148,3161,3173,3184,3195,3209,3225,3245,3266,3290,
+3315,3342,3370,3398,3426,3453,3479,3505,3532,3563,3597,3634,3670,3701,3723,3735,3739,3737,3733,3727,
+3720,3711,3701,3693,3685,3680,3677,3674,3670,3666,3662,3659,3656,3653,3650,3649,3651,3654,3657,3660,
+3661,3663,3667,3668,3670,3671,3672,3677,3687,3699,3709,3710,3702,3689,3673,3657,3642,3626,3610,3596,
+3589,3589,3592,3597,3604,3614,3626,3638,3652,3666,3678,3686,3689,3690,3690,3690,3690,3689,3684,3675,
+3663,3652,3642,3630,3617,3604,3597,3592,3587,3582,3574,3560,3541,3521,3503,3486,3466,3448,3437,3434,
+3434,3431,3419,3397,3370,3350,3345,3354,3361,3355,3333,3298,3254,3207,3164,3130,3102,3072,3037,3003,
+2975,2954,2940,2930,2919,2905,2889,2876,2869,2866,2863,2858,2850,2839,2826,2809,2791,2772,2753,2731,
+2709,2687,2668,2648,2626,2602,2577,2554,2534,2517,2500,2483,2465,2447,2429,2410,2390,2371,2353,2337,
+2322,2310,2300,2296,2295,2295,2294,2290,2284,2274,2261,2248,2233,2217,2201,2184,2168,2151,2135,2119,
+2101,2083,2064,2044,2022,1999,1977,1954,1932,1911,1891,1871,1853,1836,1821,1807,1795,1784,1773,1762,
+1750,1738,1725,1711,1696,1680,1664,1648,1633,1618,1603,1590,1578,1566,1556,1547,1538,1529,1522,1514,
+1506,1497,1488,1478,1467,1456,1444,1432,1420,1406,1392,1378,1363,1347,1330,1314,1297,1281,1265,1247,
+1230,1213,1195,1175,1155,1136,1118,1099,1081,1062,1045,1030,1016,1003,990,977,965,954,944,936,
+927,919,911,903,896,888,880,873,866,859,852,844,835,825,814,804,793,780,765,749,
+735,723,710,697,683,669,654,639,624,607,590,573,555,539,522,505,488,471,454,435,
+416,397,378,358,338,319,301,285,271,257,244,230,217,206,196,185,174,163,154,145,
+138,133,130,128,127,127,126,125,124,122,122,122,123,125,128,133,138,144,150,157,
+164,172,177,179,178,177,177,179,181,182,181,179,178,177,176,176,176,176,176,179,
+182,183,184,184,183,180,175,167,160,154,148,143,139,137,136,131,122,110,98,87,
+79,72,67,63,60,57,55,55,54,53,49,43,35,26,18,11,6,2,0,-4,
+-6,-7,-7,-5,-3,-1,0,2,5,10,15,21,27,34,41,49,58,66,76,86,
+97,108,120,130,137,140,142,140,138,137,142,149,156,161,164,169,178,192,210,225,
+234,232,219,192,162,138,128,127,129,132,138,145,152,158,163,167,168,168,169,171,
+173,175,179,183,189,194,200,206,210,216,221,227,232,236,239,240,240,239,236,232,
+227,221,215,207,200,192,184,176,166,155,145,133,120,107,94,81,69,58,49,42,
+36,31,28,27,27,27,28,31,34,37,41,45,50,56,61,66,71,75,80,84,
+89,92,94,95,97,99,102,103,102,97,88,76,63,49,36,24,17,10,2,-6,
+-13,-13,-6,2,12,24,38,53,65,74,80,84,88,90,92,93,96,97,96,92,
+86,80,74,68,61,53,45,36,29,24,18,11,4,-3,-9,-13,-17,-20,-24,-27,
+-28,-30,-33,-36,-40,-44,-49,-55,-59,-62,-63,-63,-62,-61,-58,-55,-52,-48,-42,-33,
+-21,-6,8,25,40,53,66,79,92,104,117,130,143,157,172,188,204,218,228,236,
+242,247,251,254,255,255,255,256,257,259,261,264,267,270,273,275,277,279,281,283,
+286,291,298,305,311,318,323,327,331,333,337,341,344,346,349,352,355,357,357,358,
+358,358,359,362,364,367,372,377,382,387,394,402,408,413,416,420,421,418,412,404,
+396,387,379,372,364,356,347,340,333,324,314,303,290,278,265,252,238,225,212,200,
+188,175,163,151,138,124,112,103,96,90,85,79,74,70,69,70,70,70,70,71,
+72,72,73,74,75,78,80,81,81,80,78,76,75,74,75,75,75,78,85,94,
+104,114,125,141,159,175,188,201,215,229,243,257,269,278,287,295,298,298,297,297,
+295,295,298,306,315,322,329,336,340,341,340,338,337,338,343,349,354,355,352,346,
+338,330,320,309,300,293,288,284,280,275,270,263,257,254,254,253,252,247,240,231,
+222,215,210,205,201,197,193,190,187,185,186,187,188,191,195,198,198,196,195,192,
+189,184,180,175,169,161,152,142,132,121,110,100,89,77,66,57,52,49,46,45,
+44,44,43,43,41,40,39,38,37,36,32,28,20,11,-1,-16,-33,-48,-59,-63,
+-64,-63,-61,-58,-55,-53,-53,-54,-56,-59,-62,-65,-68,-70,-71,-73,-75,-77,-78,-76,
+-72,-66,-61,-54,-47,-39,-32,-28,-26,-27,-30,-34,-40,-46,-52,-57,-61,-65,-68,-71,
+-74,-77,-81,-86,-91,-97,-105,-112,-119,-125,-131,-137,-144,-151,-158,-164,-171,-177,-183,-189,
+-194,-199,-203,-208,-212,-216,-218,-220,-222,-224,-226,-231,-236,-241,-245,-247,-248,-246,-243,-240,
+-238,-235,-233,-233,-233,-234,-235,-239,-244,-250,-257,-264,-273,-281,-289,-297,-303,-307,-312,-316,
+-319,-322,-324,-325,-325,-324,-322,-320,-319,-319,-320,-320,-318,-313,-307,-300,-292,-284,-277,-269,
+-262,-257,-256,-257,-260,-262,-262,-259,-252,-242,-231,-219,-208,-196,-184,-171,-157,-141,-125,-108,
+-91,-73,-51,-27,-4,19,41,64,86,110,134,159,183,206,229,251,272,292,310,326,
+342,357,370,379,381,380,375,369,361,349,336,319,301,282,264,246,228,210,193,176,
+160,145,132,121,110,101,92,84,76,69,62,57,54,51,50,51,54,58,64,71,
+78,85,92,97,101,106,110,115,121,126,131,137,143,150,157,165,174,183,191,196,
+200,205,212,221,230,240,250,262,276,291,309,328,345,356,364,371,378,387,397,407,
+415,423,437,452,463,470,485,508,526,528,522,524,533,543,551,565,594,635,671,686,
+684,686,706,735,754,760,755,738,712,687,669,652,626,595,569,554,542,531,525,526,
+529,527,524,528,543,562,581,606,636,664,683,700,723,743,748,741,740,752,765,768,
+770,785,811,838,858,873,882,882,877,872,869,859,835,801,772,758,754,746,732,721,
+720,719,713,704,698,692,683,671,660,648,633,617,605,599,600,603,608,616,626,640,
+657,676,696,718,741,765,790,816,843,869,896,923,951,980,1007,1034,1063,1094,1124,1156,
+1189,1223,1258,1295,1334,1375,1415,1456,1497,1540,1584,1628,1671,1713,1753,1791,1828,1866,1901,1936,
+1970,2004,2039,2072,2105,2136,2167,2199,2232,2266,2299,2329,2356,2379,2400,2420,2439,2460,2481,2502,
+2523,2543,2563,2583,2602,2620,2637,2653,2670,2686,2701,2717,2731,2744,2755,2765,2777,2790,2804,2817,
+2828,2839,2849,2861,2873,2884,2894,2903,2914,2927,2944,2962,2980,2997,3013,3029,3047,3065,3083,3100,
+3115,3129,3143,3158,3174,3189,3204,3219,3232,3244,3256,3270,3285,3301,3316,3330,3340,3351,3362,3377,
+3392,3407,3419,3430,3440,3450,3461,3473,3486,3498,3509,3518,3526,3535,3547,3561,3576,3590,3604,3615,
+3627,3638,3648,3655,3660,3664,3670,3678,3686,3692,3697,3700,3701,3701,3700,3695,3689,3682,3675,3668,
+3658,3645,3627,3606,3582,3558,3535,3513,3490,3466,3441,3415,3388,3362,3338,3318,3301,3285,3270,3252,
+3232,3211,3189,3168,3147,3127,3108,3087,3066,3044,3027,3014,3003,2993,2985,2975,2963,2948,2934,2925,
+2919,2915,2915,2921,2930,2940,2951,2961,2970,2977,2985,2995,3005,3013,3023,3035,3048,3062,3075,3087,
+3096,3104,3110,3113,3113,3110,3107,3109,3116,3127,3138,3147,3156,3167,3177,3186,3195,3209,3226,3248,
+3275,3307,3341,3375,3406,3438,3468,3497,3524,3551,3579,3609,3640,3672,3703,3727,3743,3750,3750,3743,
+3731,3716,3701,3688,3679,3672,3669,3667,3667,3671,3677,3683,3685,3683,3679,3676,3673,3668,3664,3663,
+3663,3664,3666,3668,3695,3688,3680,3672,3666,3663,3660,3653,3643,3631,3624,3624,3629,3636,3651,3677,
+3709,3738,3756,3765,3769,3769,3765,3757,3749,3740,3734,3729,3726,3726,3728,3732,3737,3741,3743,3740,
+3735,3725,3711,3693,3672,3653,3637,3626,3619,3611,3598,3586,3583,3587,3591,3587,3578,3565,3547,3527,
+3513,3510,3511,3508,3493,3467,3437,3415,3411,3421,3429,3421,3394,3354,3311,3269,3230,3189,3143,3095,
+3050,3013,2984,2958,2934,2911,2890,2873,2857,2843,2829,2815,2800,2786,2773,2761,2748,2733,2717,2699,
+2679,2659,2637,2615,2592,2569,2547,2525,2505,2486,2468,2452,2437,2422,2409,2394,2378,2358,2335,2314,
+2295,2279,2267,2258,2252,2247,2241,2234,2226,2216,2204,2192,2179,2165,2149,2132,2115,2097,2080,2062,
+2044,2026,2007,1988,1969,1948,1927,1906,1885,1866,1847,1829,1813,1797,1784,1770,1758,1745,1733,1721,
+1708,1695,1681,1666,1651,1635,1619,1603,1587,1572,1557,1543,1531,1520,1510,1501,1493,1486,1479,1473,
+1467,1460,1453,1445,1436,1426,1415,1403,1390,1376,1361,1346,1330,1312,1293,1273,1253,1233,1213,1192,
+1171,1151,1131,1111,1092,1073,1055,1039,1024,1011,999,986,974,962,952,942,931,922,913,905,
+897,889,881,873,866,859,852,845,838,832,826,819,812,802,791,781,770,759,745,729,
+712,694,678,664,650,635,620,604,588,572,555,537,519,501,483,464,444,425,405,386,
+366,346,328,309,290,271,254,237,222,209,197,186,175,167,158,151,143,135,126,117,
+108,103,99,96,94,92,88,86,85,86,87,88,89,90,92,93,96,100,106,112,
+117,121,126,133,141,149,154,159,164,167,168,167,165,162,158,156,153,150,144,139,
+135,131,126,122,118,113,107,100,93,85,77,70,65,62,58,53,47,40,31,23,
+14,6,-1,-5,-7,-8,-9,-10,-11,-13,-17,-23,-31,-42,-55,-67,-77,-84,-88,-91,
+-92,-94,-95,-95,-95,-95,-95,-96,-96,-96,-94,-89,-84,-78,-71,-64,-57,-49,-40,-29,
+-16,0,18,36,50,63,73,80,81,80,82,83,84,86,93,100,108,116,123,126,
+124,119,110,94,74,59,52,53,60,71,83,94,104,114,122,125,122,117,112,110,
+110,112,114,118,122,128,136,145,152,160,168,177,185,193,200,208,216,222,227,230,
+232,231,229,226,221,214,206,197,187,175,162,149,135,121,107,92,77,63,50,39,
+31,24,18,12,7,3,0,-1,-3,-3,-3,-1,0,3,7,11,16,21,27,32,
+37,42,48,54,59,64,69,71,71,72,72,68,59,47,33,17,0,-13,-21,-25,
+-30,-38,-45,-46,-39,-27,-14,-1,11,25,40,51,57,62,66,71,74,76,77,75,
+69,62,55,49,40,30,19,10,3,-3,-11,-18,-24,-29,-34,-38,-41,-43,-45,-46,
+-48,-49,-49,-49,-48,-48,-50,-51,-52,-52,-51,-49,-44,-38,-29,-19,-8,3,13,23,
+34,48,65,82,100,116,130,142,152,162,170,178,185,193,201,209,217,225,231,236,
+239,241,242,244,244,243,243,242,242,242,242,243,245,246,248,249,251,253,255,257,
+260,264,268,275,282,290,296,302,308,313,318,323,327,332,337,341,344,347,349,351,
+352,354,355,356,358,362,367,372,376,382,390,398,406,413,421,427,433,438,442,446,
+449,449,447,445,443,440,436,432,428,423,416,409,400,389,374,358,344,332,320,306,
+291,278,264,249,233,217,201,188,174,160,147,135,124,113,103,97,93,89,85,80,
+76,73,72,73,73,73,74,76,77,76,72,69,67,67,66,65,65,67,69,73,
+81,92,104,116,130,145,159,173,186,198,209,221,233,246,258,270,280,287,289,289,
+291,294,297,299,299,298,299,302,305,308,311,312,311,311,312,314,318,323,328,330,
+328,323,314,303,291,283,279,279,282,286,290,292,291,286,280,275,271,266,260,252,
+243,233,224,215,205,197,192,187,183,181,182,186,191,196,201,204,207,210,212,213,
+212,210,204,197,190,187,184,181,177,173,167,160,152,143,132,119,106,96,88,82,
+76,73,70,69,68,68,68,69,68,64,57,46,32,13,-8,-30,-48,-63,-73,-78,
+-78,-75,-70,-63,-57,-51,-49,-54,-65,-77,-87,-96,-105,-111,-116,-119,-121,-122,-120,-117,
+-113,-107,-102,-97,-91,-86,-81,-76,-72,-69,-69,-70,-74,-80,-86,-93,-100,-107,-113,-120,
+-127,-133,-138,-144,-150,-156,-162,-169,-175,-181,-186,-192,-198,-204,-210,-217,-224,-231,-239,-245,
+-249,-253,-256,-258,-261,-266,-271,-278,-284,-289,-295,-299,-302,-304,-305,-305,-304,-302,-301,-298,
+-295,-291,-289,-288,-288,-288,-291,-296,-302,-307,-311,-314,-318,-321,-325,-327,-330,-333,-335,-335,
+-335,-334,-333,-331,-327,-324,-322,-320,-318,-317,-316,-316,-316,-315,-313,-311,-309,-307,-304,-300,
+-295,-290,-283,-277,-271,-266,-261,-255,-248,-240,-230,-219,-206,-191,-176,-162,-149,-137,-123,-109,
+-94,-79,-64,-48,-30,-10,9,27,45,62,79,97,114,131,147,161,175,188,199,207,
+211,212,212,210,206,199,190,181,172,161,149,135,119,103,88,73,60,48,39,31,
+23,15,7,0,-6,-12,-17,-20,-23,-25,-28,-29,-29,-26,-22,-16,-8,0,12,24,
+38,50,61,71,79,87,94,104,115,127,138,147,154,160,163,164,163,160,157,152,
+146,139,136,137,141,145,150,154,158,164,172,182,192,202,211,216,218,224,235,248,
+261,275,289,303,315,325,333,342,347,347,341,335,332,338,352,372,390,403,417,432,
+446,457,471,496,529,567,606,637,655,657,645,619,589,570,565,558,541,525,517,516,
+514,506,496,488,489,500,520,548,577,602,626,656,691,718,729,734,743,759,776,792,
+811,830,846,859,870,879,883,882,878,873,866,855,839,820,803,787,771,756,743,730,
+719,711,705,695,680,667,656,647,638,632,628,625,623,625,630,637,647,659,672,686,
+702,722,744,769,796,823,850,879,907,936,964,994,1025,1058,1091,1124,1156,1190,1227,1266,
+1306,1348,1392,1437,1482,1525,1567,1608,1647,1685,1724,1763,1803,1841,1879,1915,1951,1985,2017,2048,
+2080,2111,2140,2170,2199,2228,2258,2287,2314,2340,2362,2383,2403,2423,2444,2466,2488,2509,2531,2554,
+2576,2596,2615,2631,2646,2659,2671,2682,2693,2704,2716,2729,2741,2753,2764,2775,2785,2797,2810,2824,
+2839,2852,2864,2876,2887,2898,2910,2922,2936,2951,2967,2984,3002,3020,3036,3051,3065,3080,3094,3110,
+3125,3141,3156,3171,3185,3200,3214,3228,3241,3254,3267,3280,3293,3307,3320,3333,3346,3359,3372,3384,
+3396,3408,3420,3431,3442,3452,3463,3474,3485,3496,3508,3518,3527,3535,3542,3548,3555,3563,3571,3579,
+3588,3598,3608,3619,3629,3637,3645,3652,3658,3662,3666,3667,3668,3669,3669,3669,3669,3668,3666,3663,
+3659,3651,3640,3625,3607,3586,3565,3545,3524,3503,3481,3458,3434,3408,3379,3350,3321,3293,3267,3244,
+3222,3201,3180,3158,3135,3111,3087,3063,3036,3009,2981,2955,2933,2917,2906,2902,2907,2918,2931,2939,
+2942,2942,2943,2944,2942,2934,2924,2917,2916,2918,2924,2932,2946,2961,2975,2986,2997,3007,3019,3033,
+3047,3059,3068,3073,3076,3080,3086,3092,3097,3102,3107,3110,3114,3121,3128,3133,3135,3139,3151,3174,
+3206,3243,3279,3316,3351,3384,3414,3441,3469,3495,3520,3546,3577,3610,3642,3670,3696,3717,3732,3736,
+3733,3724,3713,3703,3693,3684,3676,3671,3667,3664,3663,3664,3666,3670,3674,3679,3686,3692,3699,3705,
+3709,3711,3708,3702,3695,3761,3761,3760,3758,3755,3751,3745,3737,3727,3715,3701,3688,3682,3684,3697,
+3717,3736,3749,3759,3769,3777,3780,3779,3778,3777,3776,3775,3774,3772,3768,3765,3761,3758,3758,3761,
+3763,3760,3753,3740,3722,3698,3670,3643,3619,3599,3582,3570,3564,3567,3575,3581,3583,3580,3574,3566,
+3556,3544,3530,3516,3503,3490,3474,3454,3434,3421,3421,3430,3438,3436,3422,3400,3368,3326,3277,3224,
+3172,3125,3088,3054,3017,2981,2949,2920,2892,2864,2839,2817,2796,2778,2763,2749,2734,2716,2695,2670,
+2644,2620,2598,2575,2551,2528,2505,2486,2468,2452,2440,2430,2419,2408,2395,2380,2364,2346,2326,2306,
+2286,2268,2251,2237,2226,2218,2212,2206,2196,2181,2163,2145,2130,2117,2102,2087,2069,2049,2029,2009,
+1989,1970,1952,1934,1918,1901,1883,1865,1846,1827,1809,1793,1779,1767,1756,1745,1733,1720,1707,1695,
+1681,1666,1650,1634,1617,1599,1579,1558,1537,1516,1496,1478,1464,1453,1444,1435,1427,1421,1416,1410,
+1405,1399,1393,1386,1379,1370,1360,1347,1332,1318,1303,1287,1270,1252,1234,1214,1194,1173,1153,1133,
+1114,1095,1077,1059,1043,1027,1010,993,978,967,955,942,930,919,909,900,891,881,872,863,
+855,846,839,833,826,819,812,804,797,791,785,778,771,763,755,746,736,724,710,695,
+681,667,652,637,622,607,590,573,557,541,524,508,490,470,450,430,411,391,370,349,
+326,304,282,261,241,223,205,189,173,159,147,137,127,116,107,100,94,87,80,73,
+68,64,59,54,49,45,43,43,43,43,44,46,48,49,51,54,59,64,68,73,
+78,84,87,89,89,88,88,90,94,98,102,103,101,99,96,92,88,85,81,76,
+72,67,62,57,51,45,37,30,25,20,16,10,4,-3,-12,-20,-28,-38,-50,-61,
+-71,-80,-87,-92,-95,-97,-99,-102,-105,-108,-111,-115,-120,-127,-134,-143,-154,-164,-171,-175,
+-177,-176,-175,-174,-173,-173,-173,-173,-174,-174,-174,-173,-170,-166,-161,-154,-147,-140,-133,-126,
+-118,-109,-100,-90,-80,-71,-61,-52,-43,-35,-29,-24,-19,-11,-3,2,6,9,10,9,
+7,6,3,-1,-9,-17,-22,-19,-3,18,40,55,65,69,68,64,61,56,52,53,
+61,71,75,72,68,68,70,76,82,90,98,106,113,120,127,134,141,147,153,158,
+162,165,167,169,169,168,165,160,154,146,138,128,117,106,92,77,60,44,29,16,
+5,-3,-11,-16,-21,-25,-29,-31,-33,-34,-36,-37,-37,-37,-36,-34,-31,-28,-24,-21,
+-17,-12,-7,-2,1,6,12,17,22,26,27,28,28,28,26,17,4,-10,-23,-34,
+-43,-49,-55,-62,-68,-69,-62,-47,-31,-15,-1,11,25,36,43,45,46,48,49,49,
+46,39,30,20,11,0,-12,-23,-31,-37,-45,-54,-60,-63,-64,-66,-68,-69,-69,-69,
+-68,-67,-65,-62,-59,-56,-51,-45,-36,-27,-17,-7,3,13,23,35,46,58,72,89,
+108,128,147,161,173,183,192,200,205,209,212,214,215,217,218,219,219,220,220,220,
+220,219,219,218,219,219,218,218,219,220,221,221,222,224,226,228,229,233,237,243,
+249,255,263,270,278,286,293,299,303,306,309,313,318,323,327,332,335,338,340,342,
+344,345,345,345,344,343,342,343,343,343,344,346,347,347,349,354,361,367,371,376,
+383,392,400,406,411,414,418,423,428,432,436,441,445,446,446,445,442,435,423,410,
+396,381,362,342,322,301,281,261,244,228,213,198,184,171,158,146,135,123,112,105,
+99,92,86,83,82,81,80,80,78,76,75,73,72,70,68,67,65,65,65,65,
+70,78,86,94,104,116,129,143,157,172,187,201,214,227,238,249,261,272,282,292,
+301,305,307,309,315,321,326,328,329,327,323,317,312,308,307,307,310,316,324,330,
+334,336,335,330,319,303,288,278,273,268,265,266,271,274,272,269,266,262,256,249,
+242,235,226,219,212,206,200,198,200,204,208,211,214,219,223,227,231,236,241,245,
+251,257,258,253,247,241,238,237,239,240,239,240,241,239,232,225,219,212,204,197,
+191,186,180,173,162,152,141,126,104,78,53,30,8,-9,-24,-38,-52,-67,-80,-89,
+-95,-97,-95,-92,-86,-78,-71,-69,-76,-90,-107,-123,-137,-149,-157,-162,-164,-163,-159,-154,
+-151,-149,-147,-144,-140,-137,-133,-131,-130,-131,-133,-135,-138,-140,-144,-150,-159,-170,-180,-188,
+-196,-204,-213,-221,-228,-234,-240,-246,-252,-257,-260,-262,-264,-265,-265,-266,-266,-267,-269,-273,
+-276,-280,-284,-290,-296,-304,-312,-319,-326,-332,-336,-339,-341,-342,-342,-342,-342,-341,-341,-341,
+-342,-343,-344,-346,-349,-353,-359,-367,-374,-380,-382,-383,-382,-381,-380,-378,-375,-371,-365,-359,
+-353,-346,-338,-330,-324,-320,-316,-312,-308,-306,-305,-304,-305,-306,-309,-311,-313,-313,-311,-308,
+-305,-303,-302,-301,-299,-294,-287,-277,-265,-252,-240,-228,-217,-206,-194,-181,-167,-152,-137,-122,
+-107,-93,-80,-70,-61,-55,-48,-40,-31,-21,-10,0,12,24,35,46,55,64,72,77,
+81,83,83,80,75,67,58,51,46,44,42,39,34,26,13,-1,-17,-31,-43,-53,
+-62,-69,-76,-82,-86,-90,-93,-95,-95,-93,-89,-85,-81,-77,-73,-70,-65,-58,-50,-39,
+-25,-10,3,16,27,38,48,59,72,87,102,115,125,130,133,135,135,133,125,108,
+88,69,53,36,21,13,11,16,24,33,40,47,54,62,68,70,68,62,58,60,
+68,79,94,110,125,138,152,168,188,213,239,263,286,309,324,328,335,358,388,408,
+418,428,436,438,440,453,480,513,538,547,534,505,479,472,484,499,501,490,479,475,
+480,488,494,498,499,503,513,529,543,553,565,583,608,638,671,701,721,734,753,789,
+836,884,932,975,1009,1027,1034,1037,1041,1046,1050,1046,1029,1003,982,971,963,952,939,924,
+901,870,838,811,794,785,775,758,736,719,708,702,697,697,700,705,715,727,740,754,
+771,792,816,842,873,907,942,979,1019,1062,1107,1153,1196,1234,1271,1309,1347,1384,1420,1456,
+1492,1531,1571,1611,1650,1689,1727,1766,1804,1844,1884,1923,1961,1999,2035,2069,2100,2128,2153,2174,
+2193,2213,2236,2263,2292,2322,2349,2373,2396,2417,2437,2456,2473,2489,2506,2524,2542,2561,2580,2598,
+2616,2633,2647,2660,2672,2683,2693,2703,2712,2722,2732,2742,2752,2761,2772,2782,2793,2805,2818,2832,
+2845,2858,2872,2886,2900,2913,2926,2938,2951,2965,2980,2995,3011,3027,3042,3057,3070,3083,3095,3106,
+3116,3126,3137,3150,3165,3181,3197,3214,3231,3247,3263,3278,3293,3307,3320,3333,3345,3357,3369,3380,
+3392,3403,3414,3425,3435,3445,3454,3464,3474,3484,3492,3500,3507,3512,3517,3523,3531,3539,3548,3558,
+3569,3581,3592,3605,3617,3630,3640,3649,3656,3661,3665,3667,3668,3669,3670,3672,3675,3677,3678,3678,
+3676,3671,3663,3653,3638,3621,3602,3581,3560,3539,3519,3500,3482,3463,3442,3416,3386,3354,3320,3286,
+3254,3224,3195,3167,3138,3109,3079,3049,3021,2994,2965,2937,2909,2885,2864,2846,2833,2825,2824,2828,
+2833,2836,2839,2841,2840,2835,2831,2835,2847,2862,2877,2894,2916,2941,2961,2975,2982,2987,2993,3002,
+3011,3020,3028,3034,3038,3042,3045,3049,3053,3057,3064,3073,3085,3099,3112,3124,3135,3144,3155,3172,
+3197,3228,3258,3288,3317,3346,3373,3398,3422,3448,3475,3505,3537,3569,3600,3630,3658,3685,3709,3729,
+3742,3748,3749,3746,3738,3728,3718,3709,3700,3691,3684,3682,3683,3683,3685,3691,3702,3713,3724,3736,
+3745,3752,3756,3759,3760,3761,3790,3798,3805,3811,3817,3821,3822,3820,3816,3812,3809,3810,3812,3816,
+3820,3821,3819,3814,3809,3805,3799,3791,3780,3770,3763,3759,3760,3764,3769,3775,3780,3783,3783,3783,
+3783,3781,3775,3765,3755,3745,3732,3711,3684,3657,3632,3606,3583,3568,3560,3552,3539,3528,3518,3508,
+3495,3477,3456,3435,3420,3410,3399,3384,3375,3375,3378,3378,3378,3384,3390,3388,3374,3349,3316,3278,
+3236,3191,3145,3104,3069,3038,3011,2986,2962,2937,2909,2879,2848,2823,2803,2784,2763,2739,2714,2690,
+2665,2639,2611,2581,2553,2527,2504,2483,2466,2451,2438,2428,2418,2406,2391,2374,2357,2339,2319,2297,
+2273,2250,2230,2213,2198,2184,2168,2148,2126,2105,2085,2069,2056,2045,2034,2022,2009,1994,1979,1963,
+1947,1932,1915,1898,1882,1867,1852,1836,1819,1802,1787,1774,1762,1749,1735,1719,1703,1688,1675,1662,
+1650,1636,1621,1605,1586,1567,1545,1522,1498,1474,1454,1436,1419,1405,1393,1383,1374,1365,1356,1348,
+1341,1334,1327,1320,1312,1303,1290,1274,1260,1246,1232,1216,1200,1184,1166,1149,1131,1113,1094,1076,
+1059,1043,1026,1010,994,980,965,951,938,926,914,903,891,880,869,858,849,839,828,819,
+811,804,798,791,785,778,771,766,760,753,745,738,732,723,714,704,693,681,668,655,
+642,628,615,603,591,579,566,552,537,521,504,486,467,448,428,407,386,365,343,321,
+299,278,258,238,220,201,183,165,149,135,122,110,98,87,76,65,56,48,42,36,
+32,28,23,19,13,8,5,4,3,2,1,0,0,-1,-1,0,3,8,13,18,
+22,26,29,32,32,30,28,27,27,28,28,27,26,24,22,18,12,8,5,4,
+1,-2,-6,-10,-14,-18,-24,-31,-40,-49,-56,-64,-70,-75,-82,-91,-100,-109,-118,-128,
+-138,-149,-158,-167,-174,-181,-188,-194,-200,-206,-211,-217,-221,-226,-233,-240,-246,-252,-258,-262,
+-264,-265,-266,-264,-262,-259,-258,-256,-255,-254,-253,-251,-249,-245,-239,-232,-225,-218,-211,-204,
+-198,-190,-181,-172,-163,-156,-149,-142,-134,-128,-122,-118,-114,-111,-109,-106,-105,-104,-103,-102,
+-102,-103,-105,-104,-102,-100,-96,-84,-62,-37,-16,1,18,34,47,55,61,65,69,72,
+77,79,76,70,68,71,72,66,58,55,58,64,71,78,85,91,94,97,98,98,
+98,98,99,99,99,98,96,93,89,84,78,70,62,54,44,33,20,7,-4,-15,
+-27,-38,-48,-57,-66,-74,-79,-83,-85,-86,-85,-84,-82,-79,-77,-76,-73,-72,-71,-70,
+-69,-67,-65,-63,-59,-54,-48,-42,-38,-34,-31,-26,-22,-18,-14,-12,-11,-14,-20,-29,
+-38,-44,-49,-53,-55,-55,-55,-56,-55,-50,-40,-25,-9,0,0,0,0,0,1,2,
+1,-3,-9,-17,-25,-35,-43,-49,-54,-58,-63,-68,-73,-78,-81,-83,-83,-81,-77,-73,
+-68,-62,-54,-47,-40,-31,-23,-14,-5,5,18,32,46,59,71,82,93,104,118,132,
+147,161,172,179,183,187,190,193,196,199,201,202,203,204,203,201,200,198,196,194,
+194,194,195,197,200,202,204,208,211,213,216,221,225,228,231,234,238,243,247,252,
+257,264,272,279,284,289,293,298,303,308,313,316,321,325,329,332,334,337,340,342,
+345,346,346,344,341,338,335,333,332,332,333,333,333,332,333,335,336,334,334,336,
+338,339,341,346,350,351,354,359,367,372,376,381,391,403,413,419,423,426,430,433,
+433,428,417,404,390,371,350,327,305,282,260,240,222,204,185,169,156,147,138,129,
+123,119,114,108,104,101,98,95,91,86,82,82,83,83,82,82,85,87,88,89,
+91,94,97,102,108,116,125,136,149,162,173,184,193,200,206,213,223,233,242,252,
+263,272,276,276,278,282,287,290,295,300,305,310,314,316,317,316,314,311,309,308,
+306,305,303,300,295,293,293,294,291,286,281,278,277,279,278,272,261,251,244,238,
+232,226,222,219,216,216,216,220,227,234,239,242,246,253,264,279,297,315,330,339,
+343,344,343,340,337,333,329,326,324,323,321,320,317,314,308,301,292,285,281,278,
+274,269,260,247,228,202,170,134,95,56,20,-6,-23,-33,-38,-45,-60,-82,-102,-115,
+-121,-123,-120,-115,-106,-94,-79,-67,-64,-73,-90,-113,-136,-156,-172,-183,-190,-194,-195,-195,
+-195,-194,-192,-189,-185,-182,-180,-180,-180,-179,-178,-178,-181,-186,-193,-201,-210,-218,-224,-230,
+-236,-243,-250,-259,-268,-279,-290,-300,-308,-313,-315,-316,-316,-315,-314,-313,-313,-312,-313,-316,
+-321,-326,-332,-339,-346,-353,-359,-364,-368,-371,-372,-372,-372,-372,-373,-373,-373,-374,-378,-384,
+-392,-400,-410,-420,-432,-443,-452,-458,-459,-457,-456,-454,-452,-449,-444,-440,-435,-429,-422,-414,
+-406,-397,-388,-378,-368,-360,-352,-345,-340,-339,-338,-335,-332,-329,-326,-323,-320,-317,-315,-316,
+-318,-323,-327,-331,-330,-327,-321,-313,-304,-295,-287,-279,-271,-264,-255,-245,-233,-219,-205,-190,
+-174,-160,-146,-133,-122,-112,-105,-99,-91,-81,-73,-67,-62,-57,-49,-43,-40,-41,-41,-37,
+-31,-25,-20,-17,-17,-20,-24,-26,-29,-33,-39,-44,-49,-56,-64,-74,-83,-91,-101,-109,
+-113,-115,-117,-122,-127,-133,-141,-148,-152,-154,-155,-153,-149,-145,-141,-136,-131,-128,-125,-121,
+-116,-110,-103,-93,-83,-71,-59,-48,-35,-19,-5,5,13,21,28,32,32,27,18,10,
+4,-2,-12,-24,-35,-47,-57,-63,-64,-61,-54,-41,-24,-5,12,23,24,19,14,8,
+0,-6,-5,2,14,29,42,50,57,72,95,122,147,168,188,212,236,258,281,303,
+315,320,331,347,349,341,349,372,379,363,359,376,387,385,394,417,429,430,442,469,
+495,513,534,562,587,604,608,609,616,628,639,647,658,673,688,702,722,753,794,843,
+893,945,1005,1067,1118,1160,1197,1224,1233,1228,1215,1195,1175,1172,1187,1202,1200,1181,1155,1130,
+1107,1084,1059,1033,1004,967,924,883,849,822,799,780,770,768,773,783,798,816,836,858,
+882,909,940,974,1012,1053,1096,1142,1188,1233,1279,1327,1374,1416,1457,1495,1531,1566,1602,1637,
+1670,1704,1740,1777,1815,1855,1895,1931,1966,2000,2031,2062,2092,2123,2155,2186,2218,2248,2273,2296,
+2317,2338,2360,2381,2402,2424,2446,2468,2492,2516,2540,2563,2584,2603,2619,2633,2646,2656,2666,2675,
+2683,2691,2699,2707,2716,2724,2733,2743,2752,2761,2770,2779,2786,2794,2800,2808,2816,2825,2835,2847,
+2860,2872,2882,2893,2905,2917,2929,2942,2954,2966,2978,2991,3003,3014,3024,3033,3041,3050,3061,3073,
+3086,3100,3115,3132,3150,3168,3186,3202,3217,3232,3245,3259,3272,3286,3299,3312,3324,3336,3347,3358,
+3369,3380,3392,3404,3417,3429,3440,3450,3458,3464,3467,3470,3475,3481,3490,3500,3511,3523,3536,3552,
+3569,3588,3606,3623,3637,3651,3664,3677,3689,3700,3710,3717,3721,3723,3724,3724,3723,3721,3719,3717,
+3715,3710,3704,3695,3684,3671,3657,3640,3621,3600,3578,3555,3532,3509,3485,3459,3431,3400,3368,3333,
+3299,3265,3233,3203,3173,3142,3113,3087,3063,3043,3023,3004,2983,2960,2936,2912,2888,2865,2846,2834,
+2829,2824,2817,2805,2795,2793,2802,2825,2851,2871,2884,2900,2927,2957,2980,2989,2993,2997,3004,3009,
+3010,3011,3013,3014,3016,3018,3022,3026,3030,3035,3042,3051,3063,3077,3092,3107,3124,3144,3162,3181,
+3205,3235,3268,3303,3337,3369,3397,3423,3449,3477,3506,3533,3559,3584,3609,3633,3657,3684,3714,3743,
+3770,3794,3816,3833,3841,3838,3828,3814,3798,3782,3765,3750,3736,3723,3715,3713,3714,3716,3718,3722,
+3729,3739,3749,3760,3770,3780,3790,3805,3835,3862,3877,3880,3877,3871,3863,3856,3852,3853,3857,3863,
+3871,3878,3883,3886,3888,3892,3897,3903,3907,3904,3891,3869,3839,3808,3780,3760,3750,3750,3751,3753,
+3758,3765,3772,3778,3783,3783,3775,3761,3741,3720,3705,3694,3670,3629,3582,3545,3521,3501,3480,3457,
+3437,3421,3404,3380,3351,3326,3308,3296,3292,3295,3296,3291,3285,3287,3297,3303,3298,3288,3276,3255,
+3221,3176,3130,3091,3059,3031,3006,2981,2958,2940,2927,2916,2904,2889,2871,2848,2822,2793,2763,2733,
+2704,2677,2652,2626,2599,2572,2547,2526,2506,2486,2466,2448,2429,2409,2391,2373,2355,2335,2311,2286,
+2259,2235,2214,2196,2180,2163,2146,2127,2106,2084,2061,2037,2015,1995,1979,1967,1956,1945,1934,1922,
+1909,1896,1884,1871,1858,1843,1828,1812,1800,1791,1783,1774,1762,1748,1732,1718,1703,1688,1672,1656,
+1639,1621,1601,1580,1557,1534,1511,1488,1467,1449,1431,1413,1397,1383,1369,1356,1343,1333,1324,1314,
+1305,1296,1286,1275,1264,1252,1240,1227,1213,1198,1182,1166,1151,1136,1119,1102,1085,1067,1050,1033,
+1016,1000,985,970,954,939,926,914,901,890,880,869,857,845,834,824,813,802,792,782,
+773,764,755,747,741,735,729,723,717,710,703,696,688,679,670,661,651,641,630,619,
+606,592,579,565,552,539,526,515,503,490,476,461,445,428,411,392,373,352,332,311,
+290,269,249,231,212,193,173,156,139,124,110,96,83,72,62,52,43,34,24,15,
+7,0,-8,-16,-23,-30,-36,-40,-44,-47,-50,-51,-53,-53,-52,-53,-54,-53,-49,-42,
+-36,-31,-30,-30,-30,-30,-30,-32,-34,-35,-37,-38,-40,-40,-40,-39,-38,-39,-41,-45,
+-49,-54,-60,-67,-74,-81,-88,-97,-106,-114,-121,-129,-139,-148,-158,-169,-180,-190,-200,-211,
+-220,-229,-238,-249,-260,-269,-278,-287,-295,-301,-306,-312,-317,-321,-326,-331,-336,-341,-344,-346,
+-347,-347,-347,-346,-343,-339,-336,-333,-331,-329,-328,-326,-323,-319,-315,-309,-303,-296,-289,-281,
+-273,-263,-253,-243,-233,-224,-216,-211,-208,-205,-203,-203,-205,-207,-209,-209,-208,-207,-207,-208,
+-206,-200,-192,-183,-174,-167,-158,-144,-123,-100,-81,-68,-57,-47,-39,-29,-19,-9,0,8,
+15,18,21,24,28,33,38,40,36,29,25,28,35,42,49,53,56,57,57,54,
+51,47,44,42,41,38,35,32,28,24,19,14,8,0,-9,-20,-33,-45,-55,-62,
+-68,-73,-77,-82,-88,-95,-103,-111,-120,-128,-134,-138,-141,-141,-140,-138,-134,-129,-124,-120,
+-117,-114,-111,-109,-108,-105,-103,-100,-94,-87,-82,-77,-69,-61,-55,-50,-45,-40,-38,-37,
+-36,-36,-38,-42,-47,-52,-54,-56,-58,-63,-68,-70,-65,-56,-50,-51,-57,-59,-57,-55,
+-54,-58,-63,-68,-72,-74,-75,-75,-74,-72,-70,-68,-69,-71,-73,-73,-71,-66,-57,-47,
+-36,-23,-11,1,13,24,35,46,56,66,78,91,104,116,127,136,145,154,160,165,
+170,172,172,171,172,171,171,171,172,172,173,174,175,174,174,173,172,171,170,171,
+173,175,177,181,187,192,197,205,213,221,229,236,243,249,254,257,261,266,270,274,
+278,281,284,287,290,294,300,306,313,319,324,328,332,335,339,342,344,345,346,345,
+344,344,344,344,344,343,341,339,338,337,337,338,339,337,335,335,336,341,347,350,
+352,353,351,345,338,333,330,327,325,326,331,335,338,339,343,349,356,361,364,365,
+367,368,366,363,359,355,348,338,330,322,312,296,278,261,246,231,217,205,195,188,
+188,192,196,197,197,197,194,190,190,192,189,181,174,168,164,160,158,154,150,146,
+145,143,140,139,141,144,147,150,155,161,167,171,175,181,191,203,213,223,233,242,
+248,251,255,261,267,271,275,277,280,281,283,286,292,298,305,315,323,330,333,334,
+332,326,317,304,288,278,278,281,282,277,270,264,259,254,249,246,242,238,234,230,
+227,225,224,221,219,221,227,236,246,260,274,289,305,323,341,357,372,383,389,392,
+392,389,385,380,375,371,368,363,356,351,347,345,343,338,333,324,313,299,283,267,
+250,232,213,195,176,157,137,114,89,61,32,2,-27,-48,-64,-77,-86,-84,-74,-64,
+-57,-54,-55,-54,-46,-32,-14,0,10,13,7,-9,-36,-71,-107,-142,-174,-199,-216,-224,
+-227,-226,-224,-222,-220,-218,-213,-208,-204,-201,-200,-202,-203,-204,-207,-212,-219,-227,-236,-245,
+-253,-261,-270,-281,-291,-300,-309,-319,-329,-339,-349,-357,-362,-365,-366,-368,-370,-373,-376,-380,
+-384,-387,-390,-394,-400,-406,-412,-416,-417,-418,-420,-422,-425,-428,-430,-433,-437,-441,-448,-456,
+-466,-476,-487,-498,-507,-514,-518,-519,-517,-514,-511,-509,-507,-506,-504,-501,-496,-490,-483,-477,
+-470,-464,-458,-451,-445,-439,-433,-425,-417,-410,-404,-398,-392,-386,-379,-372,-366,-360,-354,-349,
+-345,-341,-338,-336,-333,-330,-326,-321,-315,-307,-301,-295,-291,-287,-280,-272,-262,-252,-240,-228,
+-215,-200,-186,-174,-166,-159,-153,-150,-147,-145,-145,-142,-138,-133,-131,-128,-122,-116,-111,-105,
+-101,-97,-95,-95,-94,-94,-95,-101,-109,-115,-119,-123,-129,-135,-141,-147,-153,-159,-163,-167,
+-171,-176,-180,-181,-180,-179,-180,-181,-184,-190,-200,-209,-215,-217,-217,-216,-214,-212,-209,-207,
+-205,-202,-200,-197,-193,-185,-171,-154,-138,-128,-123,-119,-113,-109,-107,-107,-111,-115,-119,-123,
+-129,-134,-138,-141,-143,-147,-151,-154,-157,-160,-160,-152,-136,-117,-98,-78,-59,-41,-28,-19,
+-14,-12,-13,-13,-14,-16,-18,-21,-25,-26,-23,-17,-8,7,30,56,80,98,109,123,
+147,169,174,173,180,185,173,161,178,216,238,232,227,244,273,295,316,349,391,426,
+458,492,522,545,575,617,651,666,677,703,735,756,767,779,790,797,805,824,855,888,
+922,961,1007,1056,1104,1148,1187,1224,1258,1286,1299,1299,1291,1282,1272,1258,1239,1217,1193,1168,
+1138,1109,1083,1059,1031,999,972,950,929,905,884,872,869,875,887,905,931,968,1008,1048,
+1086,1127,1165,1198,1230,1266,1305,1345,1385,1424,1463,1501,1539,1578,1617,1655,1692,1729,1764,1797,
+1829,1861,1894,1926,1956,1988,2021,2056,2091,2124,2157,2188,2217,2243,2268,2293,2319,2345,2369,2391,
+2411,2431,2450,2470,2490,2511,2532,2553,2573,2593,2613,2632,2650,2668,2685,2699,2710,2721,2729,2737,
+2744,2751,2759,2767,2776,2786,2796,2807,2819,2830,2841,2850,2857,2862,2866,2869,2872,2875,2879,2884,
+2891,2901,2912,2924,2935,2947,2959,2971,2983,2995,3008,3018,3026,3033,3039,3045,3052,3060,3069,3080,
+3092,3106,3121,3136,3152,3168,3183,3197,3210,3222,3235,3247,3260,3272,3286,3300,3314,3327,3339,3350,
+3359,3367,3376,3385,3395,3405,3415,3424,3433,3440,3444,3448,3453,3460,3469,3482,3495,3510,3526,3543,
+3562,3583,3604,3624,3643,3661,3677,3693,3710,3727,3743,3757,3766,3771,3772,3769,3764,3759,3753,3748,
+3745,3742,3738,3732,3723,3712,3702,3690,3678,3663,3647,3628,3607,3583,3557,3528,3498,3466,3434,3402,
+3371,3340,3309,3276,3243,3211,3183,3157,3134,3113,3097,3085,3076,3071,3068,3059,3041,3018,2992,2964,
+2933,2906,2884,2860,2834,2814,2809,2820,2843,2870,2901,2937,2976,3009,3027,3032,3031,3026,3022,3019,
+3019,3021,3021,3021,3023,3027,3031,3037,3044,3052,3060,3068,3077,3091,3106,3122,3139,3159,3184,3213,
+3246,3280,3314,3347,3376,3400,3423,3449,3475,3498,3521,3547,3572,3596,3618,3640,3663,3686,3711,3737,
+3765,3793,3818,3840,3862,3881,3892,3893,3885,3871,3854,3832,3811,3795,3785,3778,3769,3760,3755,3752,
+3750,3747,3745,3747,3753,3764,3781,3805,3802,3811,3826,3847,3876,3907,3932,3940,3932,3917,3905,3900,
+3907,3929,3964,3993,4004,3999,3988,3979,3977,3980,3984,3985,3976,3954,3920,3878,3838,3809,3795,3788,
+3780,3776,3779,3788,3800,3814,3822,3818,3803,3782,3761,3742,3728,3712,3691,3661,3619,3569,3520,3480,
+3451,3423,3392,3357,3321,3288,3261,3240,3228,3223,3228,3241,3254,3256,3247,3237,3230,3221,3209,3195,
+3179,3156,3124,3086,3047,3014,2987,2966,2950,2940,2934,2931,2929,2922,2906,2885,2860,2833,2806,2783,
+2759,2734,2708,2682,2653,2621,2590,2561,2533,2508,2484,2461,2438,2413,2389,2365,2342,2317,2293,2270,
+2249,2229,2212,2194,2176,2156,2135,2112,2090,2070,2051,2033,2014,1996,1978,1961,1945,1929,1915,1902,
+1888,1873,1858,1842,1828,1813,1799,1786,1776,1768,1760,1749,1735,1721,1707,1694,1680,1665,1649,1632,
+1615,1597,1577,1557,1535,1513,1492,1471,1450,1430,1412,1395,1379,1363,1349,1336,1324,1312,1299,1287,
+1274,1262,1250,1238,1226,1213,1200,1186,1174,1163,1149,1133,1116,1100,1084,1066,1049,1033,1017,1000,
+984,968,953,938,924,909,896,884,870,857,845,834,824,812,801,791,781,770,759,747,
+737,729,721,713,706,700,694,688,683,677,669,660,651,642,633,622,610,597,585,571,
+557,544,531,518,505,493,482,471,460,448,437,427,416,404,391,375,359,343,327,309,
+290,271,253,235,218,200,183,166,149,134,120,106,92,78,64,51,38,26,14,2,
+-11,-24,-36,-48,-60,-69,-76,-82,-86,-91,-94,-97,-100,-102,-104,-105,-105,-106,-106,-105,
+-102,-99,-96,-92,-88,-86,-85,-84,-83,-82,-83,-84,-84,-84,-84,-83,-80,-79,-80,-82,
+-83,-86,-93,-101,-109,-118,-128,-140,-154,-169,-182,-194,-207,-221,-235,-248,-262,-276,-287,-298,
+-310,-320,-327,-334,-341,-348,-355,-362,-369,-375,-381,-386,-391,-396,-401,-406,-411,-415,-417,-418,
+-417,-415,-412,-408,-404,-398,-391,-384,-377,-373,-371,-370,-368,-366,-364,-360,-357,-355,-351,-346,
+-339,-331,-321,-311,-300,-292,-285,-279,-275,-273,-273,-273,-274,-277,-281,-285,-287,-288,-287,-286,
+-282,-275,-266,-255,-242,-230,-217,-204,-191,-178,-167,-156,-149,-146,-144,-141,-136,-129,-122,-114,
+-107,-98,-90,-83,-78,-73,-66,-60,-53,-48,-42,-34,-25,-13,-2,6,11,12,11,8,
+3,-2,-8,-12,-14,-15,-17,-20,-23,-25,-28,-32,-39,-45,-53,-62,-73,-84,-93,-102,
+-109,-113,-116,-117,-117,-115,-116,-120,-127,-136,-146,-156,-167,-177,-185,-191,-195,-196,-196,-193,
+-188,-181,-174,-167,-160,-154,-148,-143,-138,-133,-127,-120,-111,-101,-91,-81,-72,-64,-58,-52,
+-46,-39,-33,-27,-26,-29,-37,-47,-59,-70,-81,-91,-97,-96,-92,-94,-98,-99,-97,-93,
+-93,-95,-100,-103,-102,-99,-95,-91,-87,-84,-82,-76,-68,-62,-57,-51,-43,-31,-16,1,
+20,35,48,59,69,77,85,96,107,116,122,129,135,139,142,145,147,149,150,151,
+150,150,149,148,147,146,145,144,144,144,145,145,145,146,148,150,152,153,154,157,
+161,166,171,177,183,190,198,207,217,228,239,248,256,262,267,273,277,280,283,287,
+292,297,304,311,317,324,330,335,340,343,347,351,355,359,362,363,362,361,359,357,
+355,352,350,347,345,344,345,348,350,353,357,361,364,364,360,356,355,356,355,352,
+352,354,352,349,347,347,344,338,331,325,319,313,309,307,306,307,311,319,324,326,
+325,322,318,317,319,318,314,311,312,314,314,314,313,310,305,300,296,293,291,292,
+293,294,297,301,305,307,309,311,311,308,304,298,291,282,272,261,252,243,234,224,
+214,207,200,192,181,169,162,158,158,160,166,174,182,190,194,196,200,207,214,220,
+226,234,240,245,248,252,259,266,272,278,283,287,288,288,290,296,306,318,329,338,
+342,340,334,326,318,311,305,298,289,280,271,264,257,252,248,245,241,238,239,243,
+247,248,247,245,240,237,238,246,262,284,307,329,349,366,376,382,385,385,384,382,
+379,376,372,367,362,358,352,347,340,334,330,329,327,324,316,305,290,274,254,228,
+197,166,143,133,136,139,130,109,84,60,32,4,-14,-21,-18,-7,10,33,53,60,
+53,45,40,36,28,17,9,6,10,16,20,16,-1,-33,-74,-116,-156,-192,-220,-238,
+-245,-247,-246,-244,-239,-233,-228,-223,-218,-216,-215,-212,-208,-205,-206,-206,-207,-213,-225,-240,
+-253,-266,-279,-290,-300,-310,-321,-331,-340,-349,-359,-370,-382,-395,-405,-411,-413,-415,-417,-421,
+-426,-431,-436,-440,-443,-449,-455,-460,-462,-462,-463,-467,-473,-479,-484,-490,-495,-500,-506,-513,
+-522,-531,-539,-547,-553,-557,-558,-558,-559,-558,-555,-553,-551,-547,-544,-540,-537,-534,-532,-531,
+-530,-529,-527,-524,-519,-512,-503,-492,-481,-470,-459,-448,-438,-428,-418,-407,-396,-385,-374,-362,
+-352,-344,-338,-334,-331,-328,-324,-321,-317,-312,-306,-301,-295,-289,-281,-273,-263,-253,-242,-231,
+-220,-213,-209,-206,-207,-211,-215,-218,-220,-222,-223,-222,-219,-216,-210,-203,-195,-190,-185,-180,
+-174,-168,-164,-162,-161,-161,-160,-163,-169,-177,-183,-186,-191,-197,-204,-209,-215,-222,-230,-237,
+-240,-242,-245,-249,-252,-255,-257,-261,-267,-273,-280,-290,-299,-306,-309,-311,-311,-310,-308,-305,
+-302,-299,-298,-296,-295,-294,-292,-288,-280,-270,-259,-251,-249,-252,-255,-256,-257,-260,-262,-265,
+-270,-278,-284,-287,-288,-287,-289,-294,-301,-304,-303,-297,-288,-275,-256,-234,-213,-194,-174,-154,
+-136,-120,-105,-93,-85,-80,-82,-90,-95,-94,-96,-105,-112,-112,-105,-95,-83,-68,-51,-35,
+-24,-15,-4,6,11,5,-4,-5,5,18,31,48,70,92,114,142,174,210,251,295,
+334,370,404,438,481,535,580,602,615,639,666,689,710,734,756,775,798,823,845,863,
+886,922,976,1037,1091,1135,1177,1210,1229,1240,1249,1255,1258,1257,1247,1228,1204,1182,1159,1139,
+1122,1105,1085,1064,1044,1022,998,972,948,931,922,919,921,932,956,990,1033,1085,1141,1195,
+1244,1289,1332,1370,1406,1440,1475,1510,1546,1583,1618,1653,1687,1720,1754,1787,1821,1853,1885,1916,
+1947,1977,2006,2034,2060,2086,2112,2138,2165,2194,2225,2255,2284,2310,2335,2362,2388,2414,2440,2465,
+2487,2508,2529,2547,2565,2584,2602,2618,2634,2649,2662,2674,2687,2699,2712,2726,2740,2753,2765,2777,
+2788,2798,2810,2821,2832,2843,2854,2866,2877,2888,2897,2905,2912,2917,2921,2926,2932,2939,2946,2953,
+2960,2967,2976,2984,2993,3004,3015,3027,3038,3050,3061,3071,3079,3085,3090,3094,3099,3104,3111,3119,
+3129,3139,3151,3164,3177,3190,3202,3213,3223,3233,3243,3253,3263,3274,3286,3297,3309,3320,3331,3341,
+3350,3359,3367,3376,3385,3394,3403,3413,3422,3430,3438,3446,3455,3464,3474,3485,3497,3510,3525,3542,
+3560,3578,3597,3616,3635,3654,3672,3690,3707,3725,3742,3757,3772,3784,3794,3801,3806,3809,3811,3811,
+3811,3810,3809,3808,3806,3804,3800,3795,3787,3775,3760,3740,3718,3692,3664,3634,3603,3571,3537,3502,
+3468,3436,3406,3378,3350,3324,3297,3271,3246,3219,3191,3162,3133,3106,3084,3066,3049,3028,3005,2984,
+2968,2954,2939,2918,2898,2887,2888,2898,2918,2950,2984,3011,3027,3037,3043,3049,3052,3050,3045,3038,
+3034,3033,3035,3039,3044,3050,3057,3064,3073,3081,3089,3097,3107,3124,3148,3174,3198,3218,3238,3261,
+3290,3322,3355,3383,3407,3429,3452,3478,3505,3530,3553,3574,3592,3606,3619,3633,3651,3672,3694,3717,
+3743,3772,3801,3831,3858,3882,3900,3913,3916,3909,3895,3878,3861,3846,3834,3823,3813,3805,3801,3800,
+3801,3802,3801,3798,3796,3796,3796,3797,3802,3859,3857,3854,3854,3855,3859,3864,3869,3874,3879,3886,
+3894,3904,3914,3925,3937,3951,3967,3983,3995,4001,3999,3994,3989,3986,3979,3963,3938,3906,3874,3855,
+3852,3860,3867,3872,3875,3879,3887,3893,3891,3880,3861,3838,3813,3789,3769,3747,3720,3686,3644,3595,
+3546,3500,3456,3416,3379,3345,3316,3293,3277,3266,3259,3256,3252,3246,3243,3240,3234,3223,3208,3187,
+3160,3128,3094,3061,3031,3002,2975,2955,2944,2938,2933,2927,2923,2923,2922,2915,2902,2884,2865,2843,
+2822,2800,2775,2746,2715,2680,2643,2606,2572,2540,2511,2485,2461,2441,2422,2402,2380,2357,2333,2309,
+2285,2262,2238,2214,2191,2167,2143,2119,2094,2071,2050,2031,2013,1994,1976,1957,1941,1926,1912,1898,
+1883,1867,1850,1833,1817,1803,1790,1778,1765,1753,1740,1728,1716,1703,1690,1678,1664,1648,1632,1616,
+1597,1578,1557,1535,1513,1495,1478,1461,1442,1423,1404,1387,1368,1350,1332,1315,1299,1284,1270,1257,
+1244,1231,1218,1205,1191,1178,1164,1150,1138,1125,1113,1100,1085,1070,1055,1038,1021,1004,987,970,
+953,938,923,908,894,881,869,858,847,834,821,809,797,785,774,763,753,742,731,721,
+711,702,694,687,680,672,665,657,649,643,634,625,616,606,595,584,571,556,541,527,
+514,500,486,472,458,445,435,424,413,403,393,384,375,367,357,346,335,325,315,305,
+293,280,267,253,239,225,212,197,182,166,150,133,116,100,83,65,48,31,14,-1,
+-18,-32,-45,-57,-69,-81,-92,-102,-112,-121,-130,-136,-143,-151,-156,-160,-162,-164,-165,-165,
+-166,-166,-165,-162,-158,-153,-149,-146,-143,-140,-137,-135,-134,-134,-135,-137,-139,-141,-144,-148,
+-154,-160,-168,-176,-187,-199,-212,-226,-240,-254,-268,-282,-295,-307,-320,-333,-345,-359,-372,-385,
+-395,-405,-414,-423,-431,-438,-443,-449,-455,-462,-467,-471,-475,-479,-483,-485,-487,-489,-491,-493,
+-493,-491,-487,-484,-480,-475,-469,-463,-456,-450,-443,-437,-432,-427,-423,-420,-418,-417,-415,-412,
+-408,-401,-393,-385,-377,-369,-361,-355,-350,-347,-346,-346,-347,-348,-350,-350,-349,-347,-343,-337,
+-330,-324,-318,-310,-301,-291,-280,-271,-263,-255,-249,-246,-244,-243,-242,-238,-232,-224,-215,-204,
+-193,-183,-174,-166,-158,-149,-141,-132,-125,-120,-114,-108,-100,-92,-83,-74,-67,-63,-64,-68,
+-76,-85,-95,-102,-107,-107,-105,-103,-100,-97,-95,-95,-97,-101,-106,-112,-117,-122,-128,-134,
+-140,-144,-147,-150,-151,-151,-149,-145,-142,-143,-146,-154,-165,-177,-189,-202,-213,-222,-227,-231,
+-232,-231,-227,-221,-215,-207,-199,-190,-181,-171,-162,-154,-147,-139,-130,-122,-112,-100,-90,-80,
+-73,-68,-64,-57,-46,-34,-29,-33,-45,-60,-77,-93,-106,-117,-126,-130,-130,-126,-121,-117,
+-113,-113,-116,-120,-120,-113,-102,-89,-80,-75,-69,-58,-47,-37,-25,-10,5,22,40,57,
+72,81,87,90,93,95,96,98,101,105,108,109,111,112,113,113,113,115,117,118,
+120,121,123,123,123,124,125,125,127,128,129,131,135,140,144,149,153,156,160,163,
+167,172,178,184,192,201,211,221,230,238,247,254,261,266,271,276,280,286,292,299,
+307,314,322,330,338,344,348,351,353,356,359,361,362,362,361,361,361,360,360,359,
+359,358,357,356,354,353,354,356,359,362,364,365,366,367,368,366,362,359,358,359,
+359,358,357,354,350,347,345,343,339,336,334,330,325,318,311,306,304,308,313,315,
+315,311,306,302,299,298,297,297,296,293,293,297,300,299,297,296,296,297,298,299,
+301,304,306,308,311,314,314,315,314,312,310,308,304,299,294,290,287,285,282,275,
+265,255,246,236,226,216,205,196,190,186,183,181,183,185,184,184,188,194,197,199,
+205,214,219,224,232,240,245,249,253,257,258,260,261,264,269,277,286,294,301,306,
+307,307,304,300,294,289,284,280,274,267,259,254,252,249,243,235,229,225,223,223,
+225,227,230,232,233,235,240,250,267,289,314,338,360,375,384,388,389,387,382,376,
+369,360,349,333,319,312,313,314,312,310,310,310,309,305,299,290,278,260,232,194,
+149,111,95,104,123,135,130,111,87,64,43,29,27,30,35,44,57,73,85,86,
+76,60,44,27,8,-9,-23,-30,-28,-19,-13,-13,-21,-37,-60,-88,-116,-142,-168,-196,
+-219,-234,-239,-238,-234,-228,-221,-214,-210,-207,-204,-203,-203,-203,-201,-203,-210,-218,-228,-240,
+-253,-265,-278,-291,-303,-313,-322,-331,-341,-349,-358,-367,-376,-386,-396,-409,-423,-435,-444,-449,
+-453,-456,-461,-464,-467,-470,-474,-479,-483,-487,-494,-502,-510,-518,-526,-535,-543,-551,-558,-565,
+-573,-580,-586,-591,-595,-599,-601,-602,-601,-599,-597,-593,-588,-584,-581,-580,-580,-582,-584,-586,
+-587,-588,-586,-583,-578,-570,-561,-549,-535,-521,-506,-491,-477,-462,-448,-433,-418,-403,-387,-370,
+-354,-340,-329,-319,-312,-306,-301,-295,-289,-282,-275,-267,-258,-250,-245,-240,-235,-232,-231,-229,
+-229,-231,-236,-244,-254,-266,-278,-290,-300,-308,-311,-312,-310,-307,-303,-296,-286,-276,-266,-260,
+-255,-252,-250,-249,-248,-248,-248,-246,-244,-245,-247,-250,-256,-264,-273,-281,-287,-292,-296,-299,
+-301,-305,-309,-313,-317,-323,-329,-335,-343,-351,-361,-374,-389,-401,-409,-415,-418,-418,-416,-413,
+-409,-403,-397,-391,-385,-380,-377,-376,-377,-380,-382,-383,-387,-394,-397,-397,-396,-396,-396,-397,
+-398,-399,-400,-399,-397,-395,-394,-395,-397,-395,-391,-389,-389,-388,-387,-382,-372,-355,-336,-316,
+-294,-270,-246,-221,-197,-175,-157,-143,-137,-141,-151,-159,-166,-173,-176,-176,-176,-176,-174,-171,
+-169,-168,-168,-164,-160,-154,-148,-141,-132,-122,-110,-95,-76,-52,-25,6,42,77,112,148,
+183,216,252,291,333,376,425,477,524,561,589,613,637,658,677,696,717,738,762,793,
+831,871,915,965,1018,1061,1093,1118,1138,1143,1136,1128,1123,1114,1104,1101,1107,1111,1109,1104,
+1097,1080,1052,1023,1002,982,957,929,909,898,891,891,902,921,947,978,1015,1054,1099,1151,
+1210,1270,1326,1377,1424,1466,1504,1542,1579,1617,1655,1692,1726,1758,1791,1826,1861,1894,1924,1953,
+1980,2007,2032,2054,2076,2100,2126,2152,2178,2204,2230,2255,2280,2305,2330,2356,2382,2407,2431,2454,
+2477,2500,2522,2543,2563,2582,2602,2623,2643,2663,2681,2699,2716,2732,2748,2764,2779,2794,2808,2821,
+2833,2845,2858,2871,2884,2898,2912,2924,2936,2947,2956,2965,2973,2981,2986,2991,2996,3000,3004,3010,
+3015,3021,3027,3033,3039,3046,3053,3061,3067,3073,3077,3079,3081,3081,3081,3083,3089,3097,3109,3122,
+3136,3149,3163,3177,3191,3205,3219,3233,3246,3259,3271,3282,3293,3303,3313,3322,3330,3338,3346,3354,
+3362,3370,3377,3384,3392,3399,3407,3416,3425,3435,3444,3452,3460,3470,3481,3494,3508,3524,3541,3559,
+3577,3596,3614,3633,3650,3667,3683,3699,3716,3734,3752,3770,3788,3805,3822,3839,3855,3869,3882,3894,
+3904,3911,3917,3921,3924,3923,3919,3913,3905,3893,3878,3862,3843,3823,3801,3776,3749,3720,3691,3661,
+3631,3601,3573,3548,3525,3504,3482,3460,3436,3410,3381,3351,3320,3286,3250,3215,3183,3150,3112,3075,
+3047,3029,3014,2995,2976,2963,2960,2964,2974,2993,3022,3056,3088,3115,3134,3144,3138,3122,3107,3097,
+3088,3080,3074,3073,3073,3074,3077,3080,3087,3097,3111,3128,3149,3173,3200,3228,3255,3282,3308,3334,
+3362,3390,3417,3442,3468,3494,3517,3537,3560,3585,3607,3628,3649,3669,3684,3695,3704,3713,3726,3743,
+3762,3780,3801,3825,3851,3874,3895,3915,3928,3930,3923,3914,3905,3894,3885,3877,3869,3864,3864,3864,
+3865,3869,3874,3876,3874,3872,3869,3865,3862,3859,3941,3938,3936,3933,3930,3930,3930,3930,3932,3935,
+3939,3944,3950,3956,3963,3973,3984,3996,4010,4023,4035,4044,4047,4045,4043,4043,4040,4023,3986,3944,
+3914,3903,3910,3923,3934,3934,3926,3914,3903,3896,3891,3886,3878,3864,3843,3822,3805,3790,3769,3738,
+3697,3648,3597,3548,3503,3461,3421,3382,3342,3306,3276,3251,3235,3227,3222,3218,3211,3203,3194,3184,
+3167,3138,3102,3065,3031,3002,2980,2964,2954,2944,2934,2923,2913,2904,2900,2901,2902,2901,2898,2887,
+2871,2854,2838,2817,2785,2747,2706,2665,2627,2593,2562,2534,2509,2484,2459,2434,2410,2386,2363,2340,
+2316,2291,2266,2241,2216,2191,2166,2140,2116,2093,2071,2049,2028,2007,1987,1968,1951,1934,1918,1900,
+1882,1865,1850,1834,1817,1801,1785,1770,1755,1741,1728,1716,1704,1689,1675,1660,1647,1632,1615,1599,
+1583,1569,1553,1536,1516,1497,1476,1457,1438,1419,1399,1379,1360,1340,1320,1300,1282,1266,1252,1238,
+1223,1209,1196,1182,1168,1155,1142,1128,1115,1103,1090,1075,1060,1046,1032,1018,1002,987,971,955,
+938,922,906,887,870,854,839,826,814,803,791,778,766,756,746,736,724,713,703,693,
+683,674,665,657,649,641,632,623,615,606,597,589,579,568,556,545,533,519,507,495,
+482,469,457,445,432,419,407,395,383,372,362,353,346,340,334,328,323,319,314,308,
+302,296,289,281,272,262,251,239,226,212,197,181,163,145,126,106,86,64,43,22,
+1,-16,-34,-50,-64,-77,-89,-101,-113,-125,-135,-145,-154,-165,-175,-182,-187,-191,-193,-195,
+-196,-196,-195,-193,-190,-186,-182,-179,-175,-170,-167,-166,-165,-165,-167,-168,-171,-175,-181,-187,
+-195,-204,-214,-224,-235,-250,-266,-282,-298,-314,-328,-342,-356,-370,-384,-399,-414,-427,-440,-453,
+-465,-474,-484,-495,-505,-513,-521,-529,-537,-546,-556,-565,-573,-579,-582,-584,-584,-584,-584,-583,
+-581,-580,-577,-574,-569,-563,-556,-549,-541,-533,-526,-520,-515,-509,-502,-497,-491,-485,-479,-474,
+-469,-463,-457,-451,-446,-441,-436,-432,-429,-427,-426,-425,-425,-424,-422,-417,-411,-404,-396,-388,
+-380,-374,-368,-362,-355,-349,-344,-339,-335,-331,-330,-329,-327,-324,-318,-310,-299,-284,-268,-252,
+-238,-226,-217,-209,-201,-194,-186,-179,-174,-171,-167,-165,-161,-155,-147,-141,-138,-136,-136,-137,
+-138,-139,-141,-143,-144,-144,-144,-144,-144,-142,-140,-138,-137,-137,-138,-139,-140,-143,-146,-149,
+-152,-153,-154,-155,-154,-155,-156,-155,-153,-150,-149,-151,-155,-161,-168,-176,-185,-195,-204,-212,
+-218,-222,-223,-222,-219,-214,-207,-199,-190,-181,-173,-166,-160,-151,-141,-132,-125,-122,-121,-118,
+-114,-111,-110,-111,-111,-107,-102,-100,-105,-115,-127,-139,-148,-154,-158,-160,-157,-148,-136,-122,
+-109,-101,-101,-105,-109,-109,-104,-92,-73,-50,-26,-7,6,22,38,50,57,63,69,72,
+74,76,80,83,85,82,80,81,82,81,82,83,84,84,84,83,82,82,83,85,
+88,93,98,103,109,114,121,128,135,141,146,151,154,155,155,157,160,165,170,175,
+180,183,185,190,196,203,212,221,231,241,250,259,266,271,278,285,292,298,306,313,
+320,327,334,340,345,349,352,354,355,355,355,356,357,357,357,357,356,354,353,351,
+351,353,354,355,357,360,363,367,370,373,374,375,377,380,384,386,384,381,378,376,
+374,371,367,362,358,356,355,354,352,351,347,341,337,336,334,330,327,326,327,327,
+325,323,319,314,307,297,289,284,282,282,282,282,280,278,278,277,277,279,279,278,
+278,278,278,280,284,286,287,288,289,287,283,278,274,270,267,264,263,263,263,263,
+261,258,255,250,244,239,235,230,220,209,201,194,186,178,173,170,169,171,176,182,
+188,192,194,196,202,212,219,222,225,228,230,233,235,237,238,241,246,254,262,269,
+274,276,276,274,271,268,263,257,249,239,230,223,218,214,212,209,208,206,204,203,
+202,201,199,198,199,202,209,221,237,252,268,284,301,322,343,357,361,360,359,355,
+346,334,319,305,294,286,280,278,276,276,277,278,278,277,275,270,260,244,220,183,
+136,96,73,72,92,125,147,139,112,89,76,68,64,64,67,76,89,94,86,68,
+49,34,27,23,17,12,11,15,19,16,6,-9,-26,-43,-59,-71,-82,-99,-124,-155,
+-183,-203,-212,-215,-213,-210,-205,-201,-197,-193,-191,-190,-191,-193,-198,-203,-211,-220,-230,-243,
+-257,-269,-280,-293,-305,-315,-324,-333,-341,-349,-357,-366,-376,-389,-401,-414,-426,-437,-446,-454,
+-461,-467,-475,-484,-492,-498,-504,-510,-516,-523,-530,-538,-547,-555,-564,-573,-581,-588,-594,-601,
+-608,-615,-621,-626,-630,-633,-635,-637,-638,-637,-635,-631,-627,-626,-626,-627,-628,-629,-630,-631,
+-631,-630,-627,-623,-617,-607,-596,-585,-572,-559,-544,-529,-514,-499,-483,-466,-448,-429,-410,-391,
+-371,-352,-334,-316,-299,-286,-276,-267,-260,-253,-245,-238,-231,-227,-225,-224,-224,-225,-230,-237,
+-246,-259,-274,-291,-311,-331,-348,-360,-368,-374,-378,-381,-381,-377,-372,-364,-356,-348,-340,-331,
+-324,-320,-316,-313,-312,-313,-314,-316,-320,-325,-330,-335,-339,-343,-349,-356,-361,-363,-364,-367,
+-372,-378,-382,-388,-397,-408,-417,-426,-436,-447,-460,-474,-487,-497,-505,-512,-518,-521,-522,-520,
+-515,-506,-496,-484,-472,-460,-451,-447,-446,-447,-450,-454,-459,-465,-470,-475,-477,-477,-477,-475,
+-470,-466,-466,-466,-466,-465,-467,-470,-473,-473,-470,-467,-463,-460,-457,-452,-441,-425,-407,-391,
+-377,-362,-343,-318,-287,-256,-225,-195,-168,-150,-140,-139,-146,-158,-172,-183,-191,-198,-204,-214,
+-223,-230,-232,-232,-230,-228,-225,-218,-207,-196,-183,-165,-142,-115,-87,-55,-20,18,61,110,
+161,206,242,273,303,328,350,375,409,453,498,534,560,586,618,649,667,676,695,737,
+785,813,828,856,906,961,1007,1039,1056,1069,1088,1105,1106,1097,1090,1086,1072,1047,1019,996,
+979,964,947,929,908,884,861,848,844,845,849,857,871,892,916,942,969,997,1024,1054,
+1086,1118,1151,1187,1228,1275,1323,1364,1400,1443,1494,1545,1591,1636,1676,1712,1754,1801,1847,1885,
+1912,1928,1939,1952,1970,1993,2023,2056,2087,2116,2144,2173,2202,2229,2255,2280,2304,2326,2347,2370,
+2394,2417,2441,2464,2486,2507,2528,2550,2572,2596,2621,2646,2670,2694,2717,2738,2759,2780,2798,2814,
+2828,2841,2854,2868,2883,2897,2912,2926,2940,2952,2964,2975,2985,2995,3006,3017,3025,3031,3035,3038,
+3040,3042,3046,3049,3054,3060,3066,3073,3080,3085,3088,3090,3091,3092,3093,3095,3099,3104,3112,3120,
+3130,3140,3152,3163,3176,3189,3202,3215,3229,3242,3254,3265,3275,3284,3295,3305,3315,3325,3335,3345,
+3355,3365,3374,3383,3390,3397,3403,3409,3416,3422,3429,3437,3446,3458,3473,3491,3512,3538,3566,3594,
+3619,3641,3660,3676,3688,3696,3705,3716,3731,3751,3771,3788,3802,3817,3835,3856,3878,3900,3920,3940,
+3961,3980,3993,4001,4006,4009,4012,4012,4008,4002,3994,3984,3972,3958,3942,3925,3909,3892,3873,3850,
+3827,3802,3777,3753,3730,3702,3670,3634,3596,3557,3520,3484,3446,3405,3360,3314,3266,3220,3178,3143,
+3117,3098,3079,3056,3038,3035,3048,3065,3082,3101,3119,3139,3159,3179,3197,3211,3218,3217,3215,3211,
+3197,3176,3159,3149,3141,3136,3131,3126,3126,3133,3145,3160,3179,3203,3230,3264,3300,3335,3373,3413,
+3452,3484,3513,3542,3571,3598,3625,3649,3671,3694,3721,3751,3776,3795,3807,3810,3811,3814,3819,3827,
+3838,3854,3871,3888,3905,3924,3942,3955,3963,3964,3958,3949,3944,3940,3936,3935,3935,3934,3935,3940,
+3944,3945,3949,3953,3955,3954,3951,3948,3945,3943,3941,4032,4030,4027,4024,4022,4021,4018,4017,4016,
+4015,4017,4022,4029,4037,4048,4060,4073,4087,4100,4108,4109,4104,4094,4085,4080,4078,4072,4056,4026,
+3991,3967,3962,3972,3981,3984,3978,3966,3952,3936,3916,3894,3876,3865,3861,3858,3848,3828,3802,3774,
+3745,3719,3694,3666,3631,3593,3553,3510,3464,3417,3376,3343,3314,3286,3264,3250,3240,3230,3218,3203,
+3179,3146,3113,3083,3052,3019,2991,2970,2952,2937,2926,2916,2908,2903,2901,2902,2904,2901,2894,2882,
+2866,2848,2833,2821,2806,2782,2749,2714,2680,2649,2620,2592,2566,2539,2512,2483,2454,2427,2401,2377,
+2353,2329,2304,2279,2254,2229,2204,2180,2155,2131,2107,2083,2060,2037,2015,1993,1971,1949,1928,1908,
+1889,1870,1853,1835,1818,1801,1784,1768,1752,1737,1722,1708,1695,1681,1668,1654,1640,1625,1609,1593,
+1577,1562,1545,1527,1511,1493,1476,1458,1440,1420,1399,1376,1354,1332,1311,1288,1266,1246,1228,1211,
+1195,1182,1169,1158,1146,1134,1121,1109,1098,1085,1073,1059,1045,1031,1016,1000,984,969,954,938,
+922,905,889,872,855,838,822,805,789,774,761,749,736,725,714,702,690,678,666,655,
+646,637,628,619,610,602,594,587,580,572,564,555,545,534,523,512,502,492,482,471,
+462,454,444,433,420,407,392,379,366,355,347,340,335,331,328,326,324,321,318,314,
+309,304,299,294,288,281,274,266,258,248,238,225,212,198,181,161,138,114,90,67,
+43,20,-2,-23,-41,-57,-73,-88,-101,-114,-126,-137,-148,-157,-163,-170,-178,-184,-188,-191,
+-192,-193,-192,-190,-188,-185,-183,-180,-177,-176,-175,-177,-178,-178,-177,-176,-177,-179,-179,-181,
+-188,-198,-209,-220,-232,-246,-262,-278,-296,-315,-335,-356,-379,-401,-421,-441,-463,-482,-499,-516,
+-530,-537,-539,-544,-553,-563,-571,-578,-584,-589,-596,-605,-615,-624,-631,-636,-640,-643,-644,-644,
+-643,-641,-638,-633,-627,-619,-611,-604,-599,-593,-587,-583,-580,-576,-572,-569,-565,-560,-555,-550,
+-545,-539,-532,-525,-519,-514,-511,-508,-505,-502,-498,-495,-489,-483,-477,-471,-465,-459,-451,-442,
+-433,-426,-420,-415,-411,-408,-404,-402,-402,-405,-408,-409,-407,-402,-395,-386,-375,-362,-348,-331,
+-312,-294,-276,-261,-248,-238,-229,-218,-207,-197,-189,-185,-184,-185,-185,-183,-181,-179,-178,-176,
+-175,-174,-174,-173,-172,-169,-167,-165,-163,-161,-161,-161,-160,-158,-157,-156,-155,-155,-155,-155,
+-155,-155,-156,-158,-160,-163,-166,-167,-167,-165,-162,-159,-159,-161,-164,-167,-169,-170,-171,-173,
+-175,-178,-179,-180,-180,-177,-173,-169,-165,-161,-154,-147,-140,-131,-119,-108,-98,-91,-87,-88,
+-91,-95,-103,-113,-124,-133,-140,-144,-146,-149,-156,-168,-181,-191,-196,-195,-188,-173,-151,-127,
+-104,-85,-74,-71,-76,-82,-85,-80,-65,-39,-10,12,26,36,45,51,55,57,59,62,
+65,67,67,65,64,63,63,62,60,60,60,58,56,54,54,55,56,57,59,61,
+65,70,78,88,101,115,131,147,162,174,181,183,182,178,172,169,166,165,166,170,
+174,178,182,188,196,207,219,233,248,262,275,287,295,302,307,313,317,321,325,329,
+332,335,337,337,337,336,333,329,326,326,327,330,332,333,332,333,333,331,327,322,
+315,312,314,320,327,336,347,357,365,372,377,381,383,384,385,388,393,397,396,390,
+383,377,373,371,371,371,373,375,377,379,377,372,371,368,361,353,348,343,340,339,
+336,325,311,299,291,284,278,274,273,273,272,273,275,274,269,265,264,263,262,260,
+258,258,260,262,263,263,263,267,271,273,275,274,270,264,258,251,244,239,236,233,
+231,232,232,230,227,224,220,214,205,199,194,188,180,174,170,165,163,166,172,179,
+186,189,189,188,188,189,194,201,208,212,215,217,219,221,222,222,222,224,230,240,
+249,254,256,254,249,242,235,228,220,212,205,197,189,183,179,177,177,179,179,179,
+178,175,174,175,177,179,184,191,199,209,221,232,244,258,272,288,303,314,317,314,
+307,297,284,270,258,249,243,239,236,236,242,250,256,259,257,250,237,217,189,153,
+113,78,55,49,65,103,141,148,129,112,109,108,101,90,76,64,62,63,58,44,
+27,14,10,11,11,9,5,2,1,1,-2,-6,-10,-17,-29,-47,-74,-102,-125,-148,
+-174,-193,-198,-197,-194,-192,-190,-187,-184,-183,-182,-181,-181,-185,-191,-199,-208,-220,-232,-245,
+-259,-272,-286,-300,-313,-324,-333,-340,-346,-352,-357,-364,-373,-382,-394,-409,-423,-437,-453,-467,
+-478,-486,-494,-500,-504,-509,-516,-524,-532,-541,-550,-561,-571,-582,-591,-600,-608,-616,-623,-630,
+-636,-642,-649,-655,-661,-665,-669,-672,-675,-678,-680,-682,-683,-684,-684,-683,-682,-681,-679,-679,
+-677,-674,-670,-664,-656,-647,-636,-625,-613,-600,-586,-571,-556,-539,-519,-499,-479,-457,-434,-410,
+-385,-361,-338,-315,-294,-274,-257,-243,-234,-229,-228,-229,-232,-237,-243,-249,-256,-264,-274,-286,
+-299,-315,-332,-349,-367,-386,-402,-416,-426,-432,-436,-438,-437,-434,-429,-422,-415,-409,-405,-402,
+-400,-399,-397,-398,-400,-405,-412,-421,-428,-436,-445,-453,-461,-469,-477,-485,-491,-493,-493,-493,
+-495,-498,-502,-506,-512,-520,-528,-534,-540,-548,-559,-571,-582,-589,-595,-600,-605,-608,-609,-607,
+-602,-595,-587,-578,-569,-560,-549,-538,-528,-519,-514,-513,-514,-518,-523,-527,-531,-533,-535,-538,
+-540,-542,-544,-546,-548,-549,-549,-550,-551,-552,-551,-549,-546,-542,-537,-531,-523,-514,-503,-488,
+-469,-447,-425,-405,-381,-350,-314,-280,-248,-218,-193,-178,-171,-173,-183,-200,-218,-229,-236,-245,
+-255,-263,-268,-266,-259,-249,-243,-236,-225,-212,-198,-183,-169,-153,-132,-107,-77,-44,-6,34,
+78,127,177,225,269,308,341,363,378,397,424,450,474,498,523,546,569,597,634,672,
+701,723,741,755,768,796,843,894,934,959,974,982,990,1005,1017,1014,1002,991,981,969,
+955,937,915,890,865,842,822,809,802,798,799,808,823,843,871,902,932,963,994,1024,
+1049,1074,1103,1133,1159,1183,1208,1237,1269,1303,1341,1385,1435,1488,1541,1576,1592,1605,1634,1672,
+1704,1724,1737,1752,1778,1811,1850,1899,1951,1997,2034,2067,2097,2123,2151,2180,2209,2236,2260,2284,
+2308,2332,2356,2378,2399,2420,2440,2458,2477,2494,2511,2527,2544,2563,2584,2607,2631,2655,2679,2703,
+2725,2745,2765,2784,2802,2819,2834,2848,2862,2877,2893,2909,2926,2944,2960,2977,2993,3007,3015,3020,
+3025,3029,3034,3040,3046,3052,3058,3066,3073,3080,3086,3091,3093,3094,3095,3095,3095,3097,3100,3106,
+3113,3122,3132,3144,3158,3173,3188,3201,3211,3219,3227,3236,3244,3254,3265,3278,3292,3307,3322,3336,
+3347,3357,3367,3377,3388,3399,3409,3419,3429,3441,3453,3466,3480,3494,3509,3526,3543,3562,3584,3606,
+3627,3647,3669,3690,3710,3725,3738,3756,3779,3806,3834,3863,3890,3912,3931,3951,3974,3999,4022,4044,
+4064,4082,4097,4109,4115,4119,4121,4121,4118,4113,4104,4093,4082,4071,4059,4046,4032,4016,4000,3982,
+3962,3938,3910,3880,3849,3820,3793,3766,3732,3691,3645,3596,3543,3489,3434,3379,3323,3269,3219,3180,
+3150,3122,3095,3074,3065,3071,3090,3111,3128,3145,3165,3184,3205,3231,3254,3265,3270,3276,3283,3287,
+3284,3273,3258,3244,3232,3220,3209,3199,3194,3196,3204,3218,3239,3265,3295,3332,3372,3416,3461,3507,
+3550,3591,3633,3672,3709,3742,3770,3793,3812,3827,3838,3846,3855,3866,3876,3883,3889,3896,3906,3919,
+3937,3958,3978,3997,4015,4028,4036,4039,4036,4026,4012,3997,3984,3972,3961,3954,3956,3965,3978,3990,
+4002,4011,4016,4022,4028,4031,4032,4032,4032,4032,4032,4032,4102,4105,4105,4102,4098,4095,4094,4095,
+4095,4092,4089,4091,4100,4113,4124,4135,4149,4160,4163,4159,4153,4147,4142,4141,4142,4137,4121,4092,
+4055,4023,4006,4012,4031,4044,4044,4034,4020,4002,3983,3963,3944,3926,3910,3894,3880,3867,3853,3835,
+3810,3779,3748,3722,3705,3696,3681,3651,3610,3567,3524,3484,3448,3415,3381,3345,3308,3273,3247,3225,
+3199,3166,3128,3094,3064,3037,3013,2990,2968,2949,2933,2919,2907,2897,2888,2881,2876,2870,2865,2862,
+2856,2848,2837,2822,2802,2778,2752,2727,2703,2680,2657,2634,2613,2591,2567,2542,2515,2486,2456,2427,
+2400,2373,2347,2322,2297,2273,2249,2224,2198,2173,2148,2123,2099,2074,2050,2025,2001,1977,1954,1931,
+1909,1888,1867,1847,1827,1808,1791,1775,1758,1742,1727,1713,1700,1687,1674,1659,1644,1630,1614,1597,
+1581,1564,1548,1531,1514,1496,1479,1461,1442,1423,1404,1383,1362,1339,1315,1294,1273,1252,1230,1210,
+1192,1174,1158,1143,1131,1119,1107,1093,1079,1066,1053,1039,1025,1011,998,983,967,951,934,918,
+901,884,867,851,836,821,806,791,777,761,745,731,718,704,689,677,664,652,639,627,
+617,607,599,591,583,575,568,562,556,551,544,536,527,517,506,495,484,473,463,452,
+441,430,420,410,399,389,380,372,364,357,351,347,344,340,337,334,331,328,324,319,
+313,308,303,298,292,286,281,276,270,264,259,252,244,235,224,210,193,174,153,131,
+110,89,67,44,18,-9,-35,-58,-80,-99,-118,-136,-151,-165,-175,-182,-187,-192,-197,-200,
+-202,-203,-204,-206,-206,-205,-204,-203,-200,-198,-196,-196,-196,-196,-194,-195,-200,-206,-211,-216,
+-222,-230,-239,-250,-260,-270,-282,-298,-315,-334,-352,-370,-388,-407,-428,-450,-472,-494,-518,-541,
+-560,-575,-587,-597,-604,-608,-609,-609,-609,-608,-609,-611,-615,-620,-627,-635,-642,-647,-651,-653,
+-652,-649,-645,-640,-633,-626,-619,-611,-605,-602,-600,-599,-600,-603,-607,-609,-610,-611,-609,-606,
+-601,-595,-588,-583,-580,-578,-577,-577,-576,-574,-572,-568,-562,-554,-544,-534,-523,-512,-502,-494,
+-488,-482,-478,-476,-476,-477,-478,-480,-480,-477,-472,-464,-454,-443,-431,-419,-408,-399,-389,-377,
+-362,-346,-332,-319,-308,-299,-292,-286,-278,-270,-263,-255,-245,-237,-234,-233,-229,-225,-221,-217,
+-213,-209,-204,-197,-191,-189,-188,-188,-187,-184,-182,-181,-179,-177,-176,-175,-174,-173,-170,-167,
+-165,-166,-167,-169,-172,-177,-183,-188,-192,-196,-199,-200,-201,-200,-197,-193,-188,-182,-176,-170,
+-163,-158,-153,-148,-144,-141,-138,-133,-127,-122,-116,-110,-102,-91,-80,-68,-55,-43,-33,-25,
+-21,-20,-23,-29,-42,-60,-79,-97,-114,-131,-144,-154,-164,-172,-174,-169,-160,-148,-133,-114,
+-94,-77,-63,-51,-44,-41,-37,-33,-30,-24,-14,-4,7,22,33,40,47,55,64,73,
+80,84,87,88,87,83,77,69,63,58,52,44,37,31,27,24,25,27,30,35,
+41,51,64,80,99,122,144,164,177,183,183,184,185,187,189,192,191,188,183,179,
+176,173,171,170,170,170,170,175,186,202,223,248,272,291,305,316,324,330,333,335,
+335,335,334,333,329,324,317,311,303,297,292,291,292,295,297,300,305,311,317,323,
+325,324,319,314,309,307,310,316,324,335,345,356,365,372,379,386,393,400,404,405,
+402,395,387,382,383,386,390,396,402,403,402,402,399,391,384,379,376,376,375,366,
+350,334,323,315,304,289,274,266,268,273,274,273,271,270,267,263,257,254,253,252,
+252,254,257,258,259,261,263,267,271,275,278,281,281,281,280,276,270,263,255,248,
+243,238,231,226,223,218,209,199,191,184,177,173,171,165,157,152,152,150,150,156,
+162,167,174,182,187,192,198,204,209,213,214,215,213,209,205,202,200,201,204,210,
+217,223,225,225,222,217,210,200,192,185,179,173,167,161,157,155,154,154,154,154,
+154,154,154,156,159,163,167,171,175,179,184,189,196,203,211,220,233,246,254,257,
+256,251,244,234,222,210,200,192,183,180,188,199,209,220,231,233,222,202,171,129,
+84,45,25,31,57,89,107,104,91,82,79,77,75,71,61,43,22,7,0,-5,
+-11,-13,-2,16,27,14,-17,-46,-60,-60,-54,-44,-35,-34,-45,-66,-94,-126,-157,-181,
+-195,-202,-202,-199,-195,-192,-188,-183,-180,-178,-176,-177,-180,-185,-191,-199,-210,-221,-233,-247,
+-262,-276,-289,-302,-315,-327,-338,-348,-357,-367,-376,-384,-391,-398,-406,-418,-434,-451,-467,-481,
+-493,-503,-510,-515,-520,-526,-532,-540,-549,-558,-567,-577,-587,-597,-607,-617,-627,-636,-644,-652,
+-659,-667,-676,-685,-695,-704,-712,-720,-726,-731,-737,-740,-741,-740,-739,-736,-732,-729,-725,-719,
+-713,-706,-698,-689,-679,-668,-658,-647,-634,-622,-608,-594,-579,-563,-544,-523,-501,-478,-454,-428,
+-402,-374,-345,-317,-290,-266,-243,-225,-213,-210,-218,-236,-258,-280,-297,-311,-322,-332,-342,-354,
+-369,-385,-399,-412,-426,-440,-451,-461,-467,-470,-473,-474,-474,-472,-470,-467,-465,-463,-461,-460,
+-461,-462,-465,-470,-476,-484,-495,-506,-518,-530,-541,-552,-562,-572,-582,-592,-601,-611,-621,-630,
+-637,-642,-645,-646,-650,-655,-662,-670,-677,-680,-681,-682,-684,-688,-692,-697,-703,-706,-703,-693,
+-678,-662,-649,-639,-633,-626,-619,-609,-597,-585,-575,-568,-564,-564,-568,-575,-584,-593,-599,-604,
+-609,-613,-615,-617,-618,-619,-620,-620,-619,-619,-616,-611,-607,-603,-600,-595,-589,-581,-572,-562,
+-550,-533,-511,-486,-458,-429,-397,-364,-333,-305,-281,-264,-252,-245,-245,-252,-262,-271,-278,-285,
+-293,-299,-301,-299,-293,-282,-270,-258,-246,-234,-221,-209,-196,-180,-163,-143,-115,-81,-44,-5,
+36,80,127,177,229,281,329,370,404,436,465,491,515,534,548,566,590,613,633,653,
+663,664,663,663,664,675,699,733,770,803,828,849,872,895,914,929,940,949,954,953,
+945,931,914,899,885,873,860,849,841,837,834,835,841,850,861,877,898,925,955,988,
+1019,1049,1079,1111,1141,1164,1177,1188,1208,1239,1276,1312,1345,1379,1416,1458,1509,1568,1625,1672,
+1713,1751,1784,1813,1842,1867,1892,1923,1960,1997,2030,2060,2084,2105,2126,2150,2175,2202,2228,2250,
+2271,2293,2314,2334,2352,2368,2383,2397,2410,2423,2437,2450,2462,2474,2484,2495,2507,2523,2543,2566,
+2588,2609,2630,2651,2674,2698,2721,2743,2765,2786,2808,2829,2849,2867,2884,2901,2918,2935,2951,2963,
+2973,2985,2999,3013,3025,3036,3044,3051,3057,3063,3069,3073,3077,3079,3080,3081,3083,3084,3086,3089,
+3095,3102,3112,3122,3133,3144,3159,3176,3194,3215,3236,3256,3275,3289,3300,3310,3320,3331,3342,3354,
+3366,3379,3393,3406,3419,3429,3439,3448,3458,3469,3483,3497,3513,3530,3547,3565,3583,3602,3620,3641,
+3663,3686,3710,3733,3756,3780,3804,3828,3854,3880,3903,3926,3950,3977,4004,4031,4055,4080,4105,4127,
+4145,4159,4167,4173,4177,4183,4190,4197,4203,4206,4205,4200,4192,4185,4181,4179,4174,4162,4141,4115,
+4086,4061,4043,4028,4013,3996,3972,3944,3911,3873,3829,3784,3735,3680,3621,3556,3480,3401,3328,3266,
+3212,3169,3141,3128,3129,3141,3160,3180,3200,3224,3249,3268,3281,3289,3295,3308,3332,3357,3372,3378,
+3377,3369,3356,3343,3327,3311,3295,3282,3272,3268,3272,3285,3304,3330,3363,3404,3450,3506,3569,3634,
+3693,3747,3796,3839,3874,3899,3915,3925,3930,3929,3925,3923,3926,3928,3931,3941,3959,3979,4000,4021,
+4042,4063,4084,4103,4120,4133,4142,4146,4142,4128,4108,4090,4073,4056,4041,4029,4017,4008,4002,4005,
+4016,4030,4043,4055,4067,4076,4084,4090,4093,4095,4097,4099,4102,4159,4161,4161,4160,4158,4156,4154,
+4150,4145,4142,4139,4138,4140,4143,4144,4148,4154,4161,4168,4175,4178,4182,4193,4205,4206,4195,4178,
+4152,4113,4074,4055,4055,4061,4065,4064,4054,4039,4023,4007,3986,3964,3943,3923,3906,3894,3883,3867,
+3848,3828,3805,3781,3759,3744,3738,3740,3738,3713,3664,3603,3544,3494,3453,3415,3372,3328,3287,3250,
+3218,3189,3156,3122,3091,3067,3046,3027,3007,2986,2966,2949,2934,2921,2911,2903,2897,2891,2885,2876,
+2865,2852,2839,2823,2804,2784,2765,2745,2725,2703,2681,2659,2638,2620,2603,2584,2560,2533,2506,2478,
+2451,2426,2401,2376,2351,2324,2297,2271,2244,2218,2191,2166,2141,2117,2093,2070,2045,2020,1995,1970,
+1945,1921,1899,1877,1857,1836,1817,1799,1782,1766,1749,1732,1717,1702,1686,1669,1653,1636,1620,1603,
+1585,1566,1548,1531,1514,1496,1477,1457,1439,1422,1404,1384,1363,1344,1326,1307,1287,1267,1247,1225,
+1205,1185,1166,1147,1130,1114,1100,1086,1071,1055,1039,1024,1009,993,979,964,950,934,919,903,
+888,873,857,840,824,810,796,782,766,750,734,719,705,692,679,665,652,640,627,615,
+604,594,585,575,566,559,551,545,539,534,527,522,517,510,503,495,488,480,469,458,
+447,436,425,413,402,391,380,373,368,363,358,354,349,345,340,335,330,325,320,314,
+308,302,296,290,282,275,269,264,261,260,260,259,257,251,244,236,230,224,216,207,
+198,184,165,144,122,97,68,35,-1,-42,-79,-112,-141,-167,-189,-207,-222,-233,-242,-250,
+-257,-263,-269,-274,-278,-283,-287,-289,-291,-292,-294,-298,-302,-304,-305,-305,-307,-309,-312,-316,
+-321,-325,-327,-328,-330,-334,-337,-342,-350,-360,-372,-387,-402,-415,-426,-441,-457,-473,-491,-511,
+-530,-546,-560,-573,-584,-594,-602,-609,-614,-619,-622,-625,-628,-629,-631,-631,-631,-631,-631,-633,
+-636,-639,-641,-640,-636,-631,-627,-625,-626,-629,-633,-635,-636,-637,-637,-636,-633,-629,-625,-623,
+-621,-620,-619,-618,-618,-618,-617,-616,-614,-611,-607,-602,-596,-589,-583,-579,-576,-571,-565,-562,
+-562,-562,-562,-560,-560,-560,-559,-553,-543,-531,-518,-505,-490,-477,-466,-456,-447,-440,-433,-423,
+-413,-405,-397,-388,-380,-374,-368,-364,-361,-357,-351,-343,-333,-322,-310,-300,-290,-279,-270,-262,
+-253,-244,-236,-229,-225,-221,-218,-215,-214,-212,-211,-212,-215,-216,-216,-214,-212,-207,-202,-198,
+-197,-195,-193,-192,-192,-194,-198,-203,-209,-214,-218,-221,-225,-229,-234,-238,-238,-233,-224,-214,
+-205,-197,-189,-181,-175,-172,-168,-164,-161,-157,-152,-147,-141,-131,-122,-115,-106,-95,-84,-75,
+-66,-60,-56,-55,-57,-63,-72,-84,-98,-112,-120,-122,-120,-118,-113,-104,-94,-86,-79,-69,
+-61,-56,-54,-53,-52,-52,-51,-48,-44,-38,-30,-19,-5,11,24,32,37,44,55,66,
+74,81,86,88,87,85,80,71,62,52,42,34,25,17,11,7,6,6,9,14,
+21,33,51,75,103,133,160,182,197,203,202,197,188,180,175,174,177,185,192,195,
+195,193,191,187,181,173,165,156,149,146,150,160,177,200,229,259,286,305,317,323,
+326,328,329,329,325,319,311,301,293,286,281,278,276,278,281,286,294,303,311,316,
+317,316,314,315,317,319,321,319,315,313,315,321,331,344,357,369,379,387,393,397,
+397,396,397,399,400,400,402,405,410,417,424,428,430,428,418,401,383,374,370,358,
+341,328,319,313,308,300,287,275,266,263,264,268,270,267,260,252,244,239,239,242,
+243,248,256,264,268,270,274,279,281,279,279,282,284,282,280,278,275,272,270,268,
+265,264,263,259,252,244,231,217,205,194,183,173,167,162,158,154,147,140,134,133,
+134,135,138,144,153,162,173,184,194,202,207,209,211,211,209,208,207,208,210,214,
+215,213,211,208,205,200,194,186,175,161,149,141,137,135,133,131,130,131,133,135,
+136,137,138,140,144,148,152,157,162,167,172,175,176,177,177,176,176,177,178,182,
+189,197,204,207,204,198,188,177,166,157,149,144,149,166,186,195,189,173,146,111,
+73,43,30,49,95,137,154,145,116,76,42,19,2,-7,-13,-14,-11,-8,-6,0,
+9,1,-23,-39,-33,-21,-28,-57,-86,-95,-83,-63,-51,-52,-63,-78,-99,-134,-173,-202,
+-217,-223,-223,-218,-211,-204,-198,-192,-186,-183,-182,-184,-188,-193,-200,-208,-216,-226,-239,-252,
+-263,-276,-290,-304,-317,-329,-340,-350,-359,-368,-375,-381,-388,-400,-413,-426,-438,-451,-465,-480,
+-495,-509,-522,-532,-539,-544,-547,-553,-559,-566,-574,-583,-594,-605,-616,-628,-641,-653,-663,-674,
+-685,-697,-708,-719,-730,-741,-752,-760,-767,-773,-778,-780,-781,-781,-778,-773,-766,-759,-750,-740,
+-731,-724,-713,-699,-687,-675,-663,-649,-634,-619,-603,-587,-570,-552,-534,-515,-496,-476,-456,-433,
+-409,-385,-359,-330,-302,-277,-257,-245,-238,-239,-253,-279,-312,-345,-373,-393,-410,-426,-442,-458,
+-474,-486,-496,-503,-507,-510,-513,-515,-515,-515,-515,-517,-518,-521,-523,-525,-524,-522,-521,-522,
+-523,-526,-531,-537,-545,-555,-568,-580,-592,-605,-620,-635,-650,-663,-673,-681,-690,-699,-708,-716,
+-725,-734,-744,-753,-761,-768,-773,-777,-779,-780,-781,-781,-781,-782,-782,-780,-777,-774,-772,-768,
+-761,-752,-741,-727,-710,-694,-680,-667,-655,-647,-640,-636,-633,-633,-635,-639,-643,-646,-652,-659,
+-667,-675,-682,-689,-696,-701,-704,-704,-703,-699,-692,-682,-673,-666,-658,-649,-641,-631,-619,-606,
+-590,-568,-539,-507,-476,-450,-423,-393,-361,-329,-303,-287,-279,-274,-273,-275,-279,-285,-291,-295,
+-298,-302,-305,-302,-296,-287,-273,-258,-243,-228,-211,-193,-175,-156,-136,-113,-85,-55,-19,22,
+64,108,154,199,246,296,348,399,452,501,535,558,583,607,618,620,627,640,648,647,
+641,631,621,622,636,654,673,702,743,784,814,834,857,883,903,915,924,932,940,953,
+963,964,966,968,967,966,964,961,956,949,943,942,945,950,958,969,981,994,1010,1027,
+1045,1062,1075,1081,1087,1100,1127,1175,1238,1302,1355,1400,1438,1470,1504,1549,1604,1657,1702,1742,
+1782,1820,1854,1884,1914,1943,1970,1994,2018,2045,2072,2099,2124,2149,2172,2193,2212,2230,2243,2255,
+2267,2282,2296,2309,2323,2335,2346,2358,2368,2377,2386,2395,2404,2415,2427,2440,2453,2466,2480,2496,
+2511,2525,2539,2553,2570,2590,2613,2636,2661,2686,2712,2739,2764,2787,2808,2826,2845,2864,2883,2902,
+2923,2943,2962,2981,3000,3016,3030,3043,3054,3063,3071,3077,3081,3082,3082,3080,3079,3079,3080,3082,
+3084,3087,3090,3093,3098,3105,3114,3126,3143,3162,3183,3206,3229,3251,3272,3292,3310,3328,3345,3360,
+3374,3388,3399,3410,3420,3431,3442,3454,3467,3481,3495,3509,3524,3539,3556,3575,3594,3615,3637,3660,
+3682,3706,3731,3757,3785,3812,3837,3862,3885,3907,3926,3945,3964,3985,4009,4034,4060,4084,4106,4127,
+4145,4160,4172,4182,4190,4198,4208,4219,4232,4245,4258,4270,4279,4287,4294,4298,4299,4299,4298,4297,
+4294,4291,4287,4282,4276,4266,4249,4221,4182,4133,4082,4033,3987,3936,3873,3798,3717,3639,3566,3489,
+3406,3329,3270,3231,3212,3211,3223,3243,3260,3272,3283,3301,3322,3345,3372,3399,3424,3448,3469,3478,
+3469,3446,3422,3407,3396,3382,3367,3357,3354,3355,3364,3380,3403,3430,3462,3498,3540,3587,3642,3706,
+3777,3851,3916,3968,4006,4032,4045,4049,4044,4037,4029,4021,4019,4027,4044,4062,4079,4098,4119,4143,
+4167,4185,4199,4213,4226,4234,4236,4232,4221,4207,4194,4180,4165,4151,4139,4129,4118,4105,4096,4088,
+4079,4070,4065,4068,4076,4089,4104,4117,4128,4139,4146,4151,4155,4159,4196,4208,4211,4209,4208,4207,
+4204,4202,4201,4198,4194,4191,4189,4189,4189,4188,4189,4194,4200,4204,4207,4211,4213,4215,4216,4210,
+4193,4170,4140,4111,4101,4111,4120,4116,4107,4091,4069,4046,4023,3997,3969,3943,3920,3900,3883,3868,
+3855,3842,3826,3809,3797,3789,3786,3786,3787,3784,3768,3732,3680,3623,3569,3514,3461,3415,3377,3340,
+3298,3252,3206,3165,3130,3102,3078,3060,3046,3031,3014,2996,2979,2962,2947,2934,2924,2916,2906,2895,
+2882,2866,2849,2831,2813,2797,2780,2763,2745,2725,2704,2685,2667,2649,2628,2605,2580,2556,2531,2504,
+2477,2449,2421,2394,2366,2339,2313,2286,2258,2230,2202,2176,2151,2128,2106,2084,2063,2042,2021,1999,
+1978,1957,1936,1916,1896,1876,1856,1837,1818,1799,1780,1761,1741,1723,1704,1685,1665,1646,1628,1610,
+1591,1571,1552,1532,1512,1492,1472,1451,1431,1411,1392,1373,1355,1336,1318,1301,1283,1265,1246,1226,
+1205,1184,1164,1145,1127,1108,1092,1077,1063,1047,1032,1017,1000,983,967,951,935,919,903,888,
+875,862,849,835,821,807,792,777,763,748,732,717,702,687,673,660,646,633,619,607,
+596,584,574,565,557,549,544,538,533,529,524,520,518,515,510,506,501,495,488,480,
+468,456,445,434,424,415,404,393,383,374,367,361,355,351,346,338,331,326,320,311,
+302,293,284,277,270,264,260,258,254,252,253,255,258,260,260,258,264,275,285,287,
+288,289,283,271,250,213,168,126,83,35,-13,-60,-105,-145,-181,-212,-238,-257,-273,-290,
+-306,-319,-332,-345,-356,-365,-375,-383,-389,-397,-407,-418,-428,-438,-447,-456,-465,-472,-479,-485,
+-489,-491,-492,-490,-488,-486,-483,-480,-477,-474,-474,-473,-472,-469,-470,-474,-480,-485,-488,-493,
+-499,-507,-518,-533,-547,-560,-574,-587,-601,-613,-625,-635,-645,-653,-660,-664,-666,-668,-669,-669,
+-669,-668,-667,-667,-668,-670,-673,-676,-679,-681,-684,-686,-686,-684,-681,-678,-675,-672,-669,-666,
+-663,-661,-659,-657,-653,-651,-647,-644,-640,-637,-634,-631,-628,-627,-628,-630,-632,-633,-633,-634,
+-633,-631,-628,-624,-619,-614,-607,-599,-587,-574,-562,-552,-543,-535,-527,-520,-515,-511,-509,-509,
+-506,-499,-488,-473,-458,-445,-435,-428,-426,-425,-423,-422,-418,-407,-390,-374,-359,-346,-336,-326,
+-317,-309,-305,-301,-297,-290,-280,-269,-262,-257,-249,-243,-246,-257,-268,-273,-273,-271,-263,-250,
+-240,-234,-229,-227,-226,-225,-226,-229,-231,-234,-236,-240,-245,-251,-257,-262,-267,-270,-271,-267,
+-261,-254,-249,-245,-241,-235,-230,-228,-226,-223,-218,-213,-209,-204,-200,-194,-187,-178,-170,-164,
+-160,-157,-157,-158,-157,-159,-161,-161,-160,-160,-160,-156,-147,-137,-126,-116,-108,-102,-96,-91,
+-87,-85,-84,-83,-79,-74,-68,-64,-64,-67,-67,-60,-49,-37,-29,-21,-10,0,7,15,
+24,34,43,48,47,42,35,28,21,16,11,7,3,0,-2,-2,-4,-3,-2,1,
+10,23,42,67,96,125,152,176,196,211,220,224,221,215,206,196,185,173,161,152,
+147,151,163,177,187,189,181,168,155,146,142,141,144,152,162,175,191,210,235,261,
+284,298,305,308,308,307,305,303,299,292,283,273,266,264,268,277,287,296,303,305,
+305,303,301,300,303,307,312,317,323,329,337,346,353,354,352,348,343,341,345,352,
+360,370,382,391,397,401,405,409,416,423,428,426,420,413,405,396,386,370,355,343,
+334,330,328,320,312,309,305,296,290,280,266,261,264,263,256,248,241,236,232,228,
+224,223,224,228,234,240,245,250,256,263,264,264,265,267,267,265,264,265,268,270,
+273,277,280,280,279,272,262,252,240,226,211,196,184,174,163,151,144,141,137,128,
+121,119,118,118,120,124,127,132,141,152,159,166,173,181,188,195,200,206,213,220,
+224,222,215,204,192,179,166,154,142,131,121,112,106,101,98,96,95,96,97,99,
+101,103,107,111,116,123,130,136,142,146,150,154,157,159,159,158,156,153,151,149,
+149,151,157,165,174,179,177,171,163,148,126,109,107,115,125,133,134,124,108,94,
+88,88,90,92,92,98,106,110,104,83,46,10,-8,-15,-24,-37,-48,-51,-42,-28,
+-17,-11,-8,-5,4,10,-14,-64,-104,-114,-107,-96,-86,-81,-83,-92,-111,-141,-174,-201,
+-215,-223,-226,-225,-221,-216,-210,-206,-203,-201,-199,-199,-202,-208,-213,-218,-227,-235,-244,-253,
+-265,-277,-289,-302,-315,-326,-339,-351,-363,-372,-381,-390,-398,-408,-417,-424,-432,-444,-458,-471,
+-485,-500,-515,-531,-543,-551,-558,-565,-571,-577,-585,-593,-603,-615,-628,-640,-652,-665,-678,-692,
+-705,-718,-731,-744,-756,-767,-778,-787,-795,-800,-804,-806,-805,-802,-797,-790,-782,-773,-764,-753,
+-742,-731,-718,-704,-689,-673,-656,-638,-620,-602,-584,-566,-549,-533,-517,-501,-485,-470,-454,-437,
+-420,-404,-388,-371,-355,-340,-330,-325,-325,-334,-354,-381,-408,-434,-459,-483,-504,-521,-532,-542,
+-553,-560,-562,-560,-557,-556,-557,-559,-562,-567,-575,-584,-590,-591,-588,-585,-582,-578,-575,-573,
+-577,-582,-587,-591,-596,-604,-613,-626,-641,-657,-673,-690,-707,-719,-725,-730,-737,-745,-753,-763,
+-775,-787,-800,-813,-822,-829,-833,-837,-841,-845,-846,-844,-842,-840,-834,-827,-820,-815,-810,-804,
+-800,-800,-801,-797,-788,-775,-759,-743,-730,-720,-712,-707,-703,-703,-705,-708,-711,-713,-716,-720,
+-721,-719,-716,-711,-708,-709,-709,-704,-696,-688,-680,-674,-670,-662,-648,-633,-622,-612,-601,-586,
+-570,-551,-532,-513,-495,-478,-459,-436,-410,-384,-357,-330,-306,-287,-275,-264,-255,-253,-257,-263,
+-271,-278,-281,-277,-269,-258,-244,-228,-211,-194,-176,-154,-127,-97,-76,-63,-42,-5,26,47,
+79,126,163,186,220,263,299,334,381,425,452,467,481,496,511,519,518,517,518,512,
+508,521,533,531,542,573,600,627,674,727,772,812,841,858,876,893,903,919,941,959,
+978,999,1008,1007,1010,1016,1025,1041,1062,1080,1090,1093,1096,1097,1095,1092,1092,1097,1105,1117,
+1129,1141,1152,1160,1164,1166,1170,1179,1202,1241,1287,1336,1382,1424,1464,1508,1552,1595,1639,1684,
+1729,1775,1817,1848,1877,1912,1953,1992,2026,2055,2082,2108,2130,2149,2167,2185,2204,2224,2241,2256,
+2267,2275,2281,2284,2288,2294,2302,2310,2319,2326,2331,2333,2338,2345,2356,2369,2384,2398,2413,2429,
+2445,2461,2476,2488,2501,2517,2535,2557,2581,2606,2632,2658,2683,2705,2725,2745,2764,2785,2807,2830,
+2853,2876,2900,2923,2945,2966,2985,3001,3014,3025,3033,3040,3046,3052,3059,3067,3074,3079,3085,3088,
+3090,3090,3089,3089,3092,3097,3107,3118,3132,3149,3169,3184,3194,3202,3213,3232,3257,3284,3308,3330,
+3351,3371,3389,3402,3413,3423,3436,3452,3470,3490,3511,3529,3547,3566,3584,3601,3619,3640,3662,3685,
+3707,3728,3750,3775,3803,3830,3856,3880,3902,3922,3942,3961,3979,3997,4016,4036,4057,4078,4097,4115,
+4133,4149,4163,4177,4192,4209,4226,4244,4262,4281,4300,4320,4339,4359,4376,4392,4406,4414,4419,4423,
+4425,4427,4429,4430,4430,4427,4419,4404,4384,4355,4318,4274,4220,4154,4079,3999,3917,3841,3767,3687,
+3600,3510,3429,3368,3328,3306,3298,3302,3306,3309,3313,3321,3334,3354,3380,3409,3441,3471,3500,3526,
+3539,3533,3515,3497,3480,3466,3457,3451,3450,3458,3476,3497,3520,3547,3579,3615,3656,3701,3752,3810,
+3874,3940,3999,4050,4090,4115,4125,4126,4124,4120,4117,4116,4122,4136,4155,4177,4203,4230,4257,4284,
+4306,4325,4338,4343,4340,4332,4317,4296,4271,4248,4232,4218,4206,4198,4195,4192,4185,4171,4152,4134,
+4119,4107,4103,4106,4110,4111,4108,4105,4107,4118,4132,4149,4166,4181,4196,4203,4221,4236,4244,4245,
+4246,4246,4242,4236,4232,4233,4237,4239,4244,4249,4249,4245,4240,4237,4242,4252,4257,4256,4252,4243,
+4229,4209,4183,4161,4152,4157,4171,4181,4177,4156,4130,4105,4080,4055,4028,3999,3968,3939,3913,3892,
+3875,3861,3849,3839,3831,3827,3827,3827,3824,3822,3820,3815,3801,3774,3734,3687,3636,3580,3521,3460,
+3402,3349,3301,3254,3210,3172,3141,3115,3094,3078,3062,3044,3026,3009,2992,2977,2962,2949,2934,2918,
+2901,2883,2864,2845,2829,2813,2795,2776,2758,2741,2722,2700,2677,2656,2637,2617,2594,2569,2542,2515,
+2487,2461,2436,2411,2385,2359,2332,2304,2276,2247,2219,2191,2165,2140,2117,2095,2073,2052,2033,2014,
+1995,1977,1960,1944,1928,1912,1896,1879,1861,1842,1823,1803,1783,1763,1743,1723,1704,1684,1662,1641,
+1620,1600,1578,1556,1532,1508,1485,1461,1438,1415,1392,1369,1346,1325,1304,1283,1262,1242,1223,1204,
+1184,1165,1146,1128,1110,1093,1077,1064,1051,1038,1026,1013,998,981,962,945,931,916,902,889,
+877,864,851,836,821,807,792,777,764,749,733,718,703,689,674,660,645,631,618,604,
+591,580,570,561,554,549,544,539,534,530,528,525,522,521,522,522,521,518,511,503,
+494,483,471,458,446,435,424,412,399,388,381,374,368,368,371,372,372,367,358,346,
+332,316,302,288,275,265,257,253,255,259,261,262,264,266,265,267,273,279,279,279,
+285,289,286,273,250,214,170,127,84,40,-1,-43,-88,-129,-162,-195,-227,-254,-277,-299,
+-319,-337,-355,-370,-384,-399,-415,-430,-445,-459,-473,-490,-509,-524,-537,-549,-561,-572,-582,-591,
+-598,-606,-612,-617,-622,-628,-630,-629,-624,-615,-606,-599,-593,-585,-579,-573,-569,-565,-561,-560,
+-561,-559,-558,-560,-564,-570,-579,-590,-604,-621,-637,-652,-664,-676,-686,-693,-699,-703,-706,-708,
+-708,-709,-710,-711,-712,-713,-715,-717,-719,-721,-724,-728,-730,-732,-731,-729,-725,-722,-719,-716,
+-713,-709,-706,-702,-698,-693,-688,-684,-680,-679,-678,-676,-674,-672,-670,-669,-665,-661,-659,-658,
+-657,-657,-656,-656,-655,-653,-650,-646,-641,-634,-631,-631,-628,-620,-616,-617,-616,-612,-610,-609,
+-608,-604,-596,-586,-574,-562,-552,-545,-539,-537,-532,-522,-514,-507,-496,-481,-465,-452,-441,-432,
+-424,-414,-403,-393,-385,-376,-363,-349,-339,-331,-325,-320,-318,-318,-319,-321,-325,-325,-320,-314,
+-310,-304,-295,-287,-280,-274,-268,-264,-263,-264,-267,-271,-277,-284,-291,-296,-301,-305,-307,-308,
+-309,-308,-306,-302,-299,-295,-291,-287,-284,-281,-276,-272,-268,-263,-258,-253,-248,-243,-240,-240,
+-241,-244,-249,-249,-245,-239,-231,-223,-215,-207,-199,-191,-185,-179,-174,-166,-155,-144,-137,-132,
+-127,-124,-124,-122,-118,-113,-108,-99,-86,-72,-62,-59,-62,-63,-60,-54,-50,-44,-37,-33,
+-32,-26,-16,-7,-2,-2,-4,-10,-17,-23,-28,-32,-35,-36,-34,-28,-21,-13,-6,0,
+5,15,32,58,89,120,147,172,193,207,216,220,219,216,212,209,206,201,193,184,
+172,162,154,150,149,151,154,156,157,153,145,138,134,133,135,136,137,137,141,151,
+168,192,220,243,258,266,270,271,273,272,266,257,247,242,245,259,279,297,307,311,
+313,315,318,322,326,330,331,331,331,333,334,336,338,341,345,350,353,353,349,346,
+350,357,358,350,346,355,371,385,398,407,414,417,414,408,398,384,375,373,369,358,
+347,340,332,323,316,311,307,305,302,298,292,284,275,265,254,244,237,230,224,220,
+215,207,204,208,215,219,220,224,229,232,236,243,246,247,247,248,250,255,261,267,
+273,276,279,282,280,277,274,266,255,242,227,215,207,198,186,179,174,168,160,150,
+140,132,123,117,114,109,104,105,111,118,122,125,129,137,146,154,164,175,186,197,
+206,212,212,207,195,179,159,138,118,101,87,75,66,61,59,58,58,58,59,60,
+63,67,71,76,81,87,92,99,104,107,111,116,120,124,127,130,133,134,133,135,
+139,142,143,144,147,152,159,162,159,149,135,121,113,112,119,129,134,135,136,133,
+124,109,89,64,40,25,18,17,17,13,2,-6,-8,-7,-9,-18,-30,-39,-42,-35,
+-18,-2,-10,-41,-66,-71,-68,-69,-74,-81,-88,-91,-93,-98,-106,-123,-153,-190,-220,-238,
+-245,-246,-243,-238,-233,-229,-227,-224,-222,-220,-219,-220,-222,-224,-230,-238,-243,-247,-253,-262,
+-269,-279,-292,-303,-315,-328,-340,-351,-363,-374,-384,-394,-404,-414,-423,-429,-436,-447,-460,-474,
+-489,-505,-524,-541,-555,-568,-578,-583,-587,-593,-601,-610,-620,-630,-642,-654,-667,-680,-693,-706,
+-718,-730,-742,-755,-767,-777,-788,-798,-806,-813,-817,-819,-819,-817,-813,-807,-799,-790,-780,-768,
+-755,-741,-725,-708,-690,-671,-651,-631,-611,-591,-572,-555,-538,-522,-509,-498,-488,-480,-473,-466,
+-459,-453,-448,-444,-440,-439,-440,-444,-451,-464,-480,-497,-515,-534,-554,-574,-590,-601,-606,-606,
+-605,-605,-604,-602,-602,-604,-608,-614,-623,-632,-640,-646,-652,-654,-652,-649,-645,-643,-642,-641,
+-642,-646,-649,-647,-644,-646,-656,-669,-683,-696,-708,-720,-731,-740,-749,-758,-767,-778,-790,-804,
+-819,-833,-845,-856,-865,-873,-878,-881,-884,-886,-886,-884,-881,-880,-879,-876,-872,-867,-860,-853,
+-849,-848,-848,-850,-851,-848,-842,-837,-834,-829,-823,-817,-810,-804,-797,-788,-778,-767,-757,-749,
+-744,-740,-736,-733,-732,-728,-718,-702,-686,-675,-667,-659,-644,-626,-610,-599,-589,-581,-574,-561,
+-541,-523,-511,-505,-502,-501,-494,-486,-478,-466,-448,-428,-405,-380,-359,-341,-324,-311,-299,-286,
+-279,-276,-269,-259,-252,-241,-223,-206,-197,-191,-179,-164,-151,-140,-122,-102,-86,-68,-42,-20,
+-5,15,44,70,88,103,123,144,161,177,203,233,261,280,280,274,285,303,307,315,
+341,360,363,388,433,455,454,469,501,528,555,596,648,705,768,822,853,869,876,879,
+887,902,914,919,925,937,956,983,1022,1069,1119,1158,1182,1189,1182,1165,1148,1140,1143,1151,
+1160,1168,1178,1189,1199,1212,1226,1242,1262,1286,1314,1348,1385,1423,1460,1498,1532,1561,1587,1617,
+1651,1687,1725,1764,1801,1835,1870,1910,1952,1990,2020,2042,2058,2077,2100,2121,2142,2167,2192,2212,
+2223,2228,2228,2227,2227,2233,2239,2240,2238,2238,2237,2237,2241,2250,2261,2273,2285,2297,2310,2323,
+2337,2352,2368,2383,2400,2419,2443,2471,2501,2532,2562,2591,2619,2645,2669,2689,2707,2725,2745,2770,
+2798,2826,2854,2881,2905,2929,2950,2969,2986,3001,3016,3031,3046,3061,3079,3096,3110,3118,3123,3128,
+3134,3141,3148,3154,3161,3170,3181,3193,3204,3214,3224,3236,3248,3257,3265,3274,3286,3302,3317,3330,
+3341,3355,3370,3386,3400,3416,3434,3456,3480,3505,3529,3553,3577,3601,3625,3648,3669,3688,3707,3729,
+3751,3774,3799,3823,3847,3870,3890,3908,3923,3938,3952,3966,3982,3999,4015,4032,4049,4068,4089,4111,
+4133,4155,4175,4195,4215,4236,4259,4282,4306,4331,4359,4387,4414,4438,4460,4481,4501,4519,4534,4545,
+4553,4559,4563,4563,4561,4557,4548,4538,4525,4511,4493,4461,4409,4348,4283,4209,4122,4030,3938,3852,
+3771,3692,3614,3545,3492,3459,3440,3426,3413,3404,3404,3408,3419,3435,3451,3465,3478,3502,3546,3594,
+3617,3616,3615,3614,3603,3590,3580,3576,3582,3599,3622,3651,3684,3719,3755,3795,3835,3872,3909,3950,
+3996,4041,4078,4104,4123,4138,4149,4156,4162,4169,4178,4190,4208,4232,4257,4280,4304,4333,4362,4388,
+4413,4432,4440,4438,4428,4411,4388,4361,4330,4297,4267,4241,4221,4206,4194,4183,4171,4158,4145,4130,
+4116,4103,4092,4087,4093,4111,4141,4172,4186,4183,4177,4175,4177,4181,4190,4203,4280,4283,4291,4294,
+4288,4278,4270,4261,4250,4240,4232,4230,4232,4237,4244,4256,4266,4271,4276,4287,4298,4301,4296,4289,
+4281,4268,4246,4212,4177,4164,4175,4190,4196,4194,4184,4163,4136,4109,4080,4048,4014,3983,3955,3931,
+3911,3896,3884,3877,3870,3866,3868,3873,3878,3883,3886,3889,3887,3878,3861,3835,3798,3750,3694,3635,
+3574,3511,3447,3384,3327,3277,3236,3201,3172,3146,3122,3100,3080,3063,3046,3027,3008,2990,2972,2953,
+2934,2916,2898,2878,2858,2840,2822,2804,2783,2762,2739,2714,2690,2667,2645,2622,2600,2578,2555,2531,
+2506,2479,2453,2428,2404,2381,2357,2333,2308,2281,2253,2225,2197,2169,2143,2118,2093,2069,2046,2024,
+2003,1984,1966,1951,1937,1922,1907,1892,1875,1859,1842,1825,1807,1789,1770,1750,1729,1709,1688,1667,
+1645,1624,1602,1580,1558,1536,1513,1490,1467,1443,1418,1391,1362,1332,1305,1278,1252,1226,1202,1180,
+1158,1137,1116,1097,1080,1065,1050,1037,1026,1015,1004,993,983,972,958,944,930,916,902,888,
+874,859,847,834,820,805,790,776,761,746,732,717,704,690,675,662,649,635,620,606,
+593,581,571,561,553,547,545,542,538,532,529,528,527,527,526,523,521,518,513,506,
+496,485,475,463,451,439,428,416,406,398,391,386,387,392,399,406,410,406,401,399,
+401,396,379,358,344,332,320,310,305,304,307,310,310,310,313,315,307,288,265,247,
+233,216,188,159,132,101,67,35,1,-32,-61,-91,-122,-152,-178,-203,-227,-252,-277,-299,
+-319,-341,-363,-384,-404,-424,-441,-457,-476,-496,-516,-535,-553,-571,-585,-597,-608,-619,-632,-644,
+-656,-667,-676,-683,-690,-697,-701,-704,-705,-703,-699,-692,-684,-677,-669,-659,-649,-640,-633,-627,
+-623,-621,-622,-622,-625,-633,-646,-659,-670,-683,-697,-710,-719,-728,-740,-755,-768,-775,-778,-779,
+-777,-774,-772,-771,-771,-772,-773,-774,-776,-777,-779,-780,-783,-787,-790,-792,-793,-790,-788,-785,
+-780,-772,-764,-756,-749,-741,-733,-726,-719,-712,-704,-696,-691,-688,-689,-689,-686,-685,-686,-688,
+-691,-696,-701,-704,-706,-704,-704,-705,-704,-705,-708,-708,-706,-706,-706,-703,-700,-695,-691,-686,
+-681,-676,-670,-664,-657,-650,-643,-635,-627,-619,-612,-602,-591,-579,-564,-549,-535,-523,-514,-508,
+-500,-487,-476,-467,-457,-446,-437,-423,-406,-391,-376,-360,-344,-331,-326,-327,-326,-320,-316,-319,
+-325,-330,-330,-326,-320,-310,-301,-293,-290,-291,-295,-297,-300,-307,-314,-318,-321,-325,-329,-334,
+-339,-345,-348,-349,-349,-348,-346,-341,-337,-332,-326,-320,-316,-311,-307,-303,-299,-296,-294,-294,
+-294,-293,-288,-282,-274,-267,-258,-250,-242,-236,-232,-228,-225,-222,-219,-212,-202,-191,-181,-176,
+-171,-164,-160,-158,-155,-149,-142,-134,-124,-113,-101,-91,-84,-78,-74,-73,-73,-74,-74,-72,
+-69,-66,-59,-50,-45,-44,-43,-44,-50,-60,-69,-72,-67,-59,-49,-39,-30,-22,-15,-9,
+-4,1,11,29,57,91,123,149,169,185,198,207,211,210,207,204,201,198,197,194,
+191,186,180,173,166,157,148,142,139,140,141,140,136,130,124,123,126,129,131,131,
+132,135,142,153,166,180,195,212,226,235,239,239,238,242,248,257,266,275,285,296,
+305,310,315,320,328,336,340,341,342,346,350,353,355,356,355,353,351,351,355,361,
+362,358,347,334,324,322,328,338,352,367,376,378,377,376,374,370,364,357,351,347,
+348,345,340,332,324,315,307,303,300,296,288,277,267,259,252,246,240,235,227,221,
+220,217,212,212,214,215,217,217,214,209,206,204,208,217,229,238,241,246,255,259,
+259,263,267,266,264,262,257,250,244,238,230,220,209,200,196,194,193,192,187,180,
+177,172,162,150,140,133,125,118,112,108,103,99,101,102,100,100,106,113,121,131,
+140,147,151,151,148,140,126,108,87,68,54,42,33,27,25,24,25,27,29,32,
+36,39,42,43,43,41,39,38,38,39,40,43,49,56,64,73,82,91,101,112,
+125,139,152,166,177,187,194,196,193,185,171,153,135,125,128,139,147,147,138,127,
+113,93,66,33,0,-20,-25,-19,-9,-4,-8,-18,-28,-35,-38,-38,-36,-31,-19,-4,
+6,10,9,0,-13,-24,-35,-48,-63,-74,-84,-96,-108,-120,-141,-172,-209,-242,-263,-272,
+-271,-266,-260,-256,-252,-249,-248,-245,-244,-245,-246,-247,-254,-261,-265,-267,-270,-275,-279,-285,
+-291,-300,-309,-318,-326,-335,-345,-355,-366,-378,-389,-399,-407,-415,-425,-435,-445,-454,-465,-477,
+-491,-506,-522,-540,-557,-573,-587,-598,-606,-612,-617,-624,-632,-642,-655,-668,-681,-693,-705,-717,
+-728,-739,-750,-762,-773,-784,-795,-805,-813,-821,-827,-831,-832,-832,-831,-827,-821,-813,-802,-790,
+-775,-757,-738,-719,-698,-677,-655,-634,-613,-594,-574,-557,-542,-530,-521,-515,-512,-510,-507,-506,
+-507,-507,-506,-505,-505,-508,-513,-519,-527,-535,-543,-553,-569,-592,-619,-643,-661,-677,-687,-690,
+-689,-688,-685,-680,-674,-670,-670,-671,-676,-681,-687,-693,-699,-703,-703,-701,-697,-700,-709,-715,
+-721,-730,-737,-743,-746,-745,-742,-742,-745,-749,-750,-749,-748,-747,-748,-753,-758,-763,-771,-781,
+-793,-806,-817,-824,-836,-851,-867,-883,-896,-905,-913,-921,-926,-928,-926,-922,-920,-918,-915,-910,
+-905,-902,-903,-903,-902,-905,-909,-911,-909,-906,-903,-899,-893,-887,-880,-869,-857,-842,-827,-816,
+-809,-798,-786,-772,-757,-750,-748,-740,-725,-714,-707,-701,-695,-687,-675,-660,-645,-630,-616,-604,
+-593,-578,-564,-555,-548,-541,-540,-543,-544,-542,-534,-523,-510,-496,-478,-460,-443,-427,-409,-389,
+-370,-353,-338,-323,-303,-278,-256,-236,-217,-203,-190,-175,-161,-149,-136,-126,-118,-107,-104,-111,
+-114,-109,-101,-92,-80,-70,-63,-54,-43,-32,-21,-10,2,18,36,52,69,84,98,111,
+125,137,144,148,152,159,173,201,242,291,343,394,451,515,569,602,630,663,694,724,
+754,780,804,828,851,873,897,926,968,1020,1074,1120,1158,1186,1201,1203,1195,1188,1187,1194,
+1212,1234,1254,1269,1280,1285,1289,1295,1304,1317,1335,1358,1384,1412,1444,1477,1506,1536,1572,1611,
+1651,1691,1729,1764,1789,1801,1807,1814,1825,1839,1855,1874,1893,1915,1938,1961,1983,2001,2009,2015,
+2023,2027,2025,2030,2044,2060,2075,2086,2097,2111,2122,2131,2144,2160,2174,2185,2195,2206,2215,2224,
+2237,2252,2270,2291,2315,2341,2367,2393,2423,2458,2495,2532,2571,2609,2646,2679,2707,2731,2754,2778,
+2803,2827,2851,2874,2897,2920,2942,2963,2982,2999,3015,3031,3049,3067,3085,3104,3121,3136,3149,3158,
+3164,3167,3169,3173,3179,3187,3196,3205,3213,3219,3221,3222,3228,3241,3257,3276,3294,3311,3328,3342,
+3355,3368,3384,3401,3419,3436,3454,3473,3493,3515,3540,3566,3591,3616,3639,3659,3679,3699,3720,3743,
+3769,3795,3822,3850,3875,3896,3913,3927,3939,3951,3962,3975,3988,4001,4017,4036,4056,4078,4101,4125,
+4150,4176,4203,4230,4253,4271,4287,4303,4322,4344,4371,4402,4437,4474,4511,4545,4575,4599,4615,4625,
+4631,4635,4637,4638,4637,4633,4625,4614,4597,4576,4548,4508,4455,4394,4328,4262,4198,4128,4053,3980,
+3909,3839,3778,3732,3700,3682,3674,3672,3662,3639,3615,3607,3614,3621,3626,3633,3639,3641,3649,3672,
+3706,3733,3739,3734,3730,3725,3719,3718,3726,3746,3774,3806,3842,3882,3924,3969,4015,4059,4093,4121,
+4145,4163,4174,4181,4187,4193,4200,4210,4220,4231,4245,4262,4283,4309,4337,4366,4395,4423,4442,4453,
+4462,4465,4459,4451,4446,4443,4438,4426,4402,4368,4336,4311,4288,4268,4252,4237,4221,4203,4186,4174,
+4165,4157,4149,4141,4133,4129,4134,4149,4180,4224,4266,4288,4297,4303,4300,4288,4280,4319,4306,4300,
+4300,4300,4300,4299,4299,4297,4290,4285,4285,4284,4279,4278,4283,4288,4291,4295,4306,4320,4330,4327,
+4320,4312,4300,4277,4246,4213,4193,4196,4212,4223,4220,4204,4184,4163,4137,4106,4074,4042,4011,3985,
+3964,3947,3935,3929,3927,3926,3924,3924,3928,3935,3946,3958,3971,3984,3994,3992,3976,3947,3908,3858,
+3797,3726,3648,3567,3491,3425,3367,3317,3275,3241,3210,3180,3151,3125,3102,3081,3062,3044,3025,3004,
+2984,2964,2944,2924,2901,2879,2858,2837,2814,2791,2769,2747,2726,2704,2683,2662,2640,2616,2593,2570,
+2545,2520,2493,2466,2439,2412,2387,2363,2340,2317,2292,2264,2236,2206,2176,2147,2118,2091,2064,2037,
+2012,1989,1965,1943,1922,1902,1884,1868,1852,1837,1822,1807,1792,1776,1761,1746,1728,1708,1687,1665,
+1643,1620,1596,1573,1551,1528,1506,1486,1466,1445,1423,1400,1377,1351,1323,1295,1264,1234,1207,1180,
+1155,1132,1109,1087,1068,1051,1035,1019,1006,995,985,976,967,959,950,939,927,915,901,884,
+868,852,837,822,806,792,779,766,752,739,726,713,700,687,672,658,644,631,616,602,
+589,577,566,557,548,541,535,530,526,523,522,521,520,518,516,514,512,507,499,491,
+482,471,459,447,434,421,411,404,402,401,399,400,403,407,413,420,424,428,432,431,
+430,437,450,458,459,455,443,423,402,385,368,350,333,317,299,277,251,224,193,163,
+134,106,78,51,23,-7,-38,-70,-104,-137,-164,-187,-211,-233,-253,-270,-287,-304,-320,-335,
+-351,-365,-380,-395,-410,-425,-440,-455,-468,-483,-500,-518,-536,-553,-570,-587,-602,-614,-629,-646,
+-661,-674,-685,-694,-702,-711,-719,-725,-730,-733,-736,-739,-742,-744,-742,-737,-730,-719,-706,-694,
+-683,-674,-668,-663,-662,-664,-670,-678,-691,-708,-727,-748,-767,-788,-812,-836,-857,-873,-880,-880,
+-875,-868,-859,-846,-833,-822,-815,-811,-809,-808,-807,-807,-807,-807,-808,-809,-807,-803,-799,-793,
+-785,-777,-768,-759,-752,-746,-741,-737,-734,-731,-726,-719,-713,-707,-702,-697,-693,-690,-691,-696,
+-705,-716,-723,-729,-738,-747,-755,-762,-769,-769,-764,-760,-756,-753,-749,-746,-744,-742,-739,-737,
+-736,-733,-729,-722,-712,-701,-690,-679,-669,-661,-652,-639,-626,-616,-609,-600,-590,-581,-569,-556,
+-545,-536,-523,-509,-492,-471,-450,-431,-416,-400,-387,-378,-369,-357,-346,-339,-332,-327,-328,-329,
+-327,-325,-325,-329,-336,-342,-342,-340,-337,-334,-333,-333,-336,-343,-351,-361,-372,-377,-377,-375,
+-376,-382,-391,-396,-398,-396,-393,-389,-383,-377,-372,-367,-362,-357,-352,-349,-345,-341,-338,-334,
+-329,-325,-321,-317,-311,-303,-294,-285,-279,-274,-268,-264,-261,-258,-254,-248,-241,-236,-234,-231,
+-224,-219,-215,-212,-209,-203,-192,-180,-168,-159,-153,-146,-137,-129,-125,-119,-114,-112,-113,-111,
+-106,-99,-92,-85,-79,-78,-81,-86,-92,-98,-106,-114,-119,-119,-112,-98,-76,-49,-22,-3,
+3,2,0,7,26,52,82,112,139,159,172,183,194,202,204,203,198,194,190,187,
+185,183,180,178,175,173,170,164,159,156,152,145,137,128,119,112,108,110,115,121,
+128,135,140,144,148,152,157,164,172,181,189,197,203,208,212,215,216,216,219,228,
+241,252,264,274,284,293,300,302,305,308,312,318,324,331,335,338,341,344,350,357,
+362,362,356,340,318,304,302,308,316,327,340,351,356,349,334,322,317,315,316,320,
+324,328,331,332,334,336,334,323,310,301,293,283,274,263,252,243,235,228,226,227,
+222,215,211,212,212,212,210,207,203,194,184,177,175,174,181,197,214,227,235,238,
+241,243,244,243,242,243,241,235,225,217,212,206,199,190,186,185,186,188,191,189,
+185,181,176,169,162,154,147,136,126,120,115,109,102,95,89,84,78,72,69,69,
+70,73,77,81,84,86,86,84,79,68,54,39,27,19,14,11,11,14,18,22,
+27,33,37,39,38,33,26,20,15,13,13,16,24,36,51,67,85,104,122,139,
+154,166,179,191,200,204,206,204,200,194,184,171,163,160,157,154,157,161,158,144,
+121,91,55,17,-14,-33,-38,-38,-40,-46,-50,-53,-53,-50,-52,-62,-71,-72,-63,-46,
+-23,-4,5,8,1,-12,-32,-61,-96,-122,-132,-140,-157,-181,-211,-250,-286,-308,-316,-314,
+-307,-297,-287,-278,-271,-265,-262,-261,-260,-261,-265,-270,-277,-282,-286,-290,-295,-298,-304,-312,
+-317,-322,-330,-336,-342,-349,-357,-364,-372,-381,-391,-400,-410,-420,-431,-442,-454,-464,-474,-486,
+-498,-510,-524,-539,-554,-570,-586,-600,-613,-623,-630,-638,-647,-656,-666,-677,-689,-701,-713,-724,
+-736,-747,-758,-769,-781,-793,-803,-813,-822,-831,-839,-845,-849,-852,-852,-849,-844,-836,-826,-814,
+-800,-784,-767,-747,-726,-705,-684,-662,-639,-617,-596,-577,-561,-547,-535,-525,-517,-511,-507,-503,
+-500,-499,-498,-499,-500,-498,-495,-497,-507,-524,-547,-572,-597,-621,-646,-676,-709,-737,-757,-770,
+-779,-782,-780,-777,-775,-771,-768,-767,-769,-771,-774,-774,-775,-778,-779,-776,-772,-773,-784,-802,
+-817,-829,-839,-843,-842,-836,-830,-824,-817,-809,-799,-785,-771,-758,-749,-745,-746,-753,-761,-767,
+-770,-775,-783,-791,-796,-803,-817,-836,-861,-889,-914,-932,-945,-956,-966,-973,-975,-973,-969,-963,
+-956,-947,-940,-934,-929,-924,-923,-927,-932,-931,-923,-916,-917,-923,-928,-935,-938,-936,-931,-922,
+-911,-897,-881,-867,-853,-838,-822,-805,-794,-787,-780,-774,-768,-757,-744,-738,-736,-728,-714,-697,
+-681,-664,-648,-634,-622,-615,-610,-604,-596,-590,-584,-578,-570,-561,-553,-544,-534,-521,-508,-494,
+-480,-465,-450,-434,-411,-385,-359,-331,-303,-275,-248,-228,-216,-203,-190,-179,-170,-163,-158,-153,
+-149,-145,-142,-139,-136,-134,-134,-135,-137,-140,-141,-138,-134,-129,-124,-115,-102,-87,-70,-49,
+-22,6,31,51,66,79,91,108,133,161,190,223,261,300,340,383,433,484,534,587,
+637,678,716,757,801,849,895,928,953,986,1024,1057,1091,1129,1163,1191,1213,1230,1249,1272,
+1297,1326,1355,1380,1401,1418,1431,1439,1444,1447,1450,1455,1463,1472,1478,1480,1485,1499,1524,1555,
+1586,1619,1654,1687,1715,1740,1763,1778,1784,1781,1771,1760,1758,1772,1792,1808,1820,1832,1843,1852,
+1863,1875,1883,1886,1892,1902,1917,1934,1951,1964,1978,1989,1998,2011,2031,2054,2072,2086,2102,2125,
+2155,2186,2215,2242,2267,2294,2321,2349,2377,2408,2442,2475,2509,2545,2582,2619,2656,2694,2730,2764,
+2794,2819,2841,2861,2883,2909,2935,2960,2984,3006,3028,3046,3062,3077,3092,3108,3124,3140,3153,3166,
+3178,3186,3194,3202,3210,3218,3227,3237,3246,3255,3262,3269,3272,3275,3277,3279,3285,3296,3311,3327,
+3344,3362,3380,3401,3424,3446,3467,3488,3506,3523,3540,3560,3581,3603,3628,3656,3683,3706,3727,3749,
+3772,3797,3822,3845,3866,3885,3899,3910,3921,3932,3944,3960,3978,3996,4017,4039,4063,4090,4118,4146,
+4173,4199,4224,4246,4264,4278,4292,4306,4322,4341,4362,4386,4414,4448,4486,4528,4570,4606,4632,4648,
+4655,4655,4655,4652,4648,4642,4633,4622,4609,4590,4567,4542,4508,4465,4416,4364,4312,4264,4219,4175,
+4125,4068,4014,3971,3943,3929,3918,3905,3890,3872,3866,3877,3884,3879,3876,3876,3869,3857,3840,3824,
+3816,3825,3846,3861,3860,3857,3861,3867,3874,3889,3912,3943,3978,4017,4060,4105,4151,4192,4220,4232,
+4239,4245,4246,4245,4246,4252,4258,4265,4276,4291,4311,4335,4363,4393,4424,4455,4482,4498,4503,4499,
+4488,4477,4467,4456,4443,4434,4431,4427,4416,4400,4385,4373,4362,4351,4343,4336,4328,4318,4305,4290,
+4275,4261,4245,4228,4212,4198,4188,4180,4177,4183,4197,4220,4253,4284,4309,4327,4331,4319,4351,4373,
+4367,4351,4343,4344,4344,4340,4331,4320,4310,4302,4297,4299,4306,4313,4318,4325,4329,4330,4334,4339,
+4339,4335,4331,4324,4307,4274,4237,4213,4213,4228,4243,4244,4228,4204,4178,4152,4126,4100,4075,4054,
+4034,4015,4000,3989,3982,3977,3974,3973,3974,3979,3989,4004,4023,4044,4061,4070,4069,4057,4037,4008,
+3968,3915,3848,3772,3687,3600,3522,3457,3402,3353,3309,3272,3239,3206,3173,3141,3112,3087,3062,3040,
+3020,2999,2978,2956,2933,2911,2890,2869,2847,2825,2805,2784,2765,2747,2727,2706,2684,2661,2637,2613,
+2588,2562,2535,2507,2479,2452,2425,2397,2368,2342,2316,2290,2263,2235,2207,2180,2152,2124,2097,2070,
+2041,2013,1986,1960,1936,1915,1894,1874,1858,1843,1827,1813,1800,1785,1770,1755,1738,1718,1698,1678,
+1656,1633,1610,1586,1562,1537,1512,1485,1456,1429,1405,1382,1361,1340,1320,1300,1278,1254,1229,1204,
+1178,1151,1125,1100,1077,1056,1037,1019,1005,992,981,971,961,952,942,931,918,906,892,875,
+858,840,824,811,796,780,766,753,740,726,711,698,685,671,658,644,630,615,600,586,
+572,559,547,537,525,517,511,507,505,504,502,500,495,488,481,474,466,458,448,438,
+428,418,408,397,387,380,376,375,376,380,386,393,405,426,444,455,463,467,468,468,
+472,478,478,473,465,453,433,409,384,355,322,285,249,221,196,168,141,114,83,51,
+19,-14,-47,-75,-104,-133,-160,-186,-212,-236,-258,-279,-300,-320,-337,-352,-366,-382,-398,-412,
+-420,-427,-433,-441,-450,-460,-470,-478,-485,-492,-499,-509,-519,-530,-542,-554,-566,-576,-587,-597,
+-606,-614,-624,-634,-646,-659,-671,-681,-690,-699,-707,-713,-718,-724,-729,-733,-734,-733,-731,-725,
+-719,-712,-704,-696,-690,-686,-684,-684,-687,-694,-702,-710,-719,-731,-742,-753,-763,-772,-779,-785,
+-790,-793,-797,-801,-804,-806,-805,-803,-800,-798,-799,-798,-789,-779,-774,-766,-757,-752,-747,-742,
+-737,-732,-729,-725,-721,-719,-716,-711,-708,-706,-705,-705,-704,-703,-703,-704,-706,-710,-716,-722,
+-728,-735,-741,-745,-750,-754,-757,-758,-760,-764,-768,-771,-773,-774,-776,-779,-782,-784,-782,-780,
+-777,-775,-771,-766,-759,-752,-744,-734,-722,-710,-701,-693,-683,-675,-669,-661,-652,-643,-631,-617,
+-600,-583,-571,-559,-542,-523,-505,-487,-472,-459,-447,-438,-427,-412,-396,-381,-367,-360,-354,-341,
+-332,-334,-341,-349,-354,-355,-357,-364,-373,-378,-379,-379,-379,-381,-385,-388,-394,-405,-416,-421,
+-425,-430,-436,-439,-442,-443,-443,-440,-435,-429,-421,-415,-410,-405,-399,-393,-387,-381,-376,-372,
+-370,-368,-366,-365,-361,-354,-346,-339,-332,-327,-320,-312,-306,-301,-297,-294,-290,-285,-279,-273,
+-269,-266,-262,-260,-256,-251,-244,-236,-227,-219,-210,-203,-195,-187,-179,-170,-163,-160,-159,-154,
+-146,-138,-128,-118,-109,-105,-104,-108,-116,-128,-143,-155,-160,-157,-148,-140,-135,-129,-111,-75,
+-33,-6,0,2,11,31,58,84,107,130,149,163,170,176,184,188,189,185,181,179,
+177,174,172,170,168,167,166,162,157,151,146,143,139,136,132,126,115,103,95,96,
+105,118,130,141,149,160,171,179,183,184,185,185,187,189,193,197,197,194,189,187,
+191,198,206,213,219,225,232,239,245,250,254,258,262,265,268,270,273,276,279,284,
+289,295,302,306,306,302,293,282,274,270,270,273,279,287,294,293,286,279,275,276,
+278,282,286,287,287,285,281,276,270,262,254,247,243,240,237,234,230,227,224,218,
+213,211,210,211,212,212,210,205,199,193,185,178,174,173,174,179,188,198,208,217,
+223,225,227,227,224,221,216,210,204,196,189,182,176,172,168,166,166,169,171,176,
+178,178,176,173,171,168,161,153,145,136,129,124,117,110,102,94,86,77,68,60,
+51,44,38,35,35,38,43,47,50,50,47,42,35,29,25,24,25,29,35,44,
+54,63,72,80,87,91,91,87,82,75,68,64,62,62,67,77,93,111,132,154,
+172,182,188,191,195,197,195,190,184,178,171,161,145,127,115,114,121,131,135,130,
+113,80,36,-6,-35,-50,-52,-46,-36,-26,-21,-25,-39,-59,-79,-93,-101,-102,-103,-101,
+-88,-66,-48,-44,-50,-58,-71,-88,-108,-132,-164,-193,-221,-255,-290,-318,-342,-359,-363,-359,
+-348,-331,-315,-299,-287,-281,-276,-274,-273,-275,-279,-282,-285,-291,-299,-307,-315,-324,-333,-340,
+-346,-350,-355,-360,-365,-371,-377,-383,-390,-397,-405,-414,-423,-433,-443,-453,-463,-475,-487,-498,
+-509,-520,-531,-543,-557,-572,-589,-605,-620,-634,-644,-650,-655,-661,-669,-679,-690,-702,-714,-727,
+-740,-753,-764,-775,-786,-797,-808,-819,-830,-840,-850,-858,-866,-872,-875,-875,-872,-867,-860,-851,
+-841,-826,-809,-790,-770,-749,-727,-705,-682,-659,-636,-615,-594,-573,-552,-532,-513,-498,-485,-474,
+-465,-457,-451,-448,-449,-455,-465,-478,-494,-514,-541,-574,-610,-645,-677,-708,-741,-775,-803,-825,
+-842,-857,-869,-880,-888,-894,-898,-902,-904,-907,-911,-914,-911,-904,-900,-902,-905,-906,-909,-914,
+-920,-923,-924,-923,-920,-918,-914,-904,-894,-881,-862,-843,-828,-814,-800,-791,-785,-782,-779,-774,
+-771,-775,-783,-791,-801,-814,-831,-850,-870,-891,-913,-935,-956,-977,-996,-1010,-1019,-1025,-1030,-1033,
+-1033,-1030,-1024,-1017,-1011,-1007,-1008,-1007,-1001,-997,-997,-994,-989,-990,-995,-1003,-1015,-1026,-1031,-1031,
+-1028,-1021,-1013,-1002,-988,-970,-953,-933,-912,-891,-876,-867,-863,-858,-850,-840,-828,-818,-807,-794,
+-779,-764,-748,-732,-717,-700,-686,-674,-663,-652,-640,-625,-609,-598,-590,-584,-579,-576,-571,-561,
+-551,-546,-539,-526,-507,-482,-455,-425,-395,-367,-340,-312,-287,-263,-236,-211,-193,-182,-172,-159,
+-149,-148,-149,-145,-140,-136,-129,-121,-113,-106,-102,-96,-88,-78,-66,-51,-33,-11,14,45,
+80,120,162,199,223,246,286,330,360,376,392,401,394,381,370,361,356,366,395,439,
+486,529,576,628,683,741,798,849,898,946,991,1035,1078,1118,1155,1191,1226,1263,1300,1337,
+1375,1414,1453,1490,1523,1550,1570,1584,1590,1592,1590,1591,1590,1588,1586,1587,1588,1592,1598,1605,
+1612,1618,1627,1639,1651,1660,1668,1676,1685,1691,1690,1686,1679,1667,1656,1655,1662,1670,1675,1679,
+1686,1699,1716,1734,1752,1773,1796,1817,1836,1854,1874,1893,1912,1929,1948,1966,1983,2001,2021,2041,
+2059,2077,2103,2139,2174,2203,2231,2261,2293,2330,2368,2406,2443,2481,2519,2557,2598,2641,2683,2721,
+2755,2786,2817,2845,2874,2901,2928,2954,2977,2999,3021,3043,3062,3078,3090,3103,3117,3132,3147,3160,
+3171,3180,3188,3194,3200,3206,3212,3219,3228,3238,3251,3264,3278,3291,3302,3311,3322,3334,3347,3360,
+3372,3386,3402,3420,3440,3464,3491,3518,3545,3570,3593,3615,3636,3654,3671,3684,3697,3709,3725,3746,
+3767,3787,3806,3827,3848,3867,3885,3903,3919,3936,3953,3969,3985,4005,4025,4047,4074,4103,4132,4160,
+4186,4210,4232,4250,4263,4273,4283,4292,4302,4310,4319,4334,4355,4385,4422,4464,4510,4554,4594,4626,
+4650,4665,4674,4678,4679,4676,4671,4662,4649,4633,4614,4589,4560,4528,4494,4454,4414,4373,4331,4295,
+4268,4245,4227,4214,4203,4194,4181,4160,4134,4116,4115,4120,4118,4114,4113,4111,4106,4098,4082,4054,
+4018,3990,3974,3971,3978,3989,4001,4015,4026,4033,4044,4060,4082,4114,4155,4200,4248,4295,4328,4341,
+4340,4335,4331,4331,4333,4340,4349,4361,4373,4388,4406,4428,4452,4478,4502,4518,4523,4522,4517,4510,
+4503,4495,4486,4478,4470,4463,4462,4462,4459,4455,4449,4442,4437,4430,4423,4416,4407,4397,4386,4373,
+4359,4345,4329,4314,4299,4285,4270,4256,4243,4232,4222,4216,4216,4222,4234,4251,4276,4312,4351,4298,
+4332,4375,4406,4408,4389,4372,4366,4359,4352,4348,4347,4342,4332,4320,4311,4305,4309,4325,4344,4353,
+4354,4357,4362,4361,4352,4334,4308,4271,4231,4204,4202,4216,4224,4221,4213,4197,4170,4144,4120,4096,
+4076,4060,4047,4035,4024,4016,4008,4001,3999,4001,4006,4015,4029,4048,4071,4091,4106,4112,4105,4090,
+4067,4035,3993,3939,3870,3791,3704,3613,3532,3470,3420,3373,3328,3286,3245,3205,3167,3132,3102,3075,
+3049,3025,3003,2982,2960,2941,2921,2900,2880,2860,2838,2818,2797,2776,2756,2736,2713,2690,2664,2635,
+2605,2575,2545,2515,2483,2452,2421,2391,2363,2338,2314,2290,2267,2242,2218,2194,2169,2144,2120,2094,
+2068,2042,2017,1992,1969,1946,1924,1903,1884,1867,1851,1836,1820,1805,1789,1772,1755,1739,1721,1700,
+1678,1657,1634,1608,1583,1557,1531,1505,1479,1451,1421,1392,1365,1341,1317,1295,1274,1253,1230,1208,
+1184,1159,1134,1111,1088,1066,1044,1025,1009,994,982,972,963,953,941,928,914,900,885,869,
+852,835,820,804,789,773,759,745,731,717,703,689,674,659,644,628,611,594,577,562,
+548,535,525,515,506,498,491,484,478,472,466,458,448,436,423,411,400,390,381,372,
+364,358,353,350,349,352,353,358,371,391,418,445,460,467,473,478,482,484,478,464,
+446,428,409,389,371,351,325,301,283,262,235,207,176,142,108,72,38,10,-18,-50,
+-79,-107,-133,-156,-179,-202,-225,-248,-268,-287,-306,-324,-341,-358,-372,-384,-398,-411,-424,-437,
+-451,-464,-478,-490,-500,-507,-513,-520,-528,-535,-543,-551,-559,-566,-573,-582,-589,-595,-600,-604,
+-607,-611,-615,-619,-625,-630,-636,-643,-650,-659,-669,-680,-689,-697,-704,-711,-719,-726,-732,-736,
+-738,-739,-738,-735,-729,-722,-716,-711,-708,-706,-707,-707,-707,-707,-707,-707,-706,-706,-706,-707,
+-709,-713,-717,-721,-726,-729,-730,-729,-726,-724,-721,-717,-712,-708,-704,-698,-693,-691,-692,-696,
+-701,-708,-714,-718,-719,-718,-718,-717,-715,-715,-715,-715,-715,-717,-721,-728,-738,-748,-755,-761,
+-764,-766,-767,-768,-771,-776,-781,-786,-793,-801,-809,-816,-821,-824,-826,-830,-835,-839,-841,-842,
+-841,-838,-832,-822,-812,-802,-793,-784,-775,-766,-759,-752,-747,-744,-744,-743,-738,-730,-720,-710,
+-699,-689,-679,-667,-651,-636,-622,-607,-593,-582,-569,-549,-524,-501,-481,-461,-442,-425,-409,-393,
+-381,-374,-370,-370,-372,-374,-377,-381,-386,-393,-406,-417,-423,-429,-431,-432,-440,-453,-471,-489,
+-500,-502,-500,-496,-493,-491,-488,-485,-482,-479,-475,-470,-465,-461,-458,-453,-447,-440,-432,-424,
+-419,-415,-412,-409,-406,-403,-401,-399,-395,-392,-387,-382,-375,-367,-358,-349,-339,-331,-325,-320,
+-314,-309,-305,-300,-296,-293,-288,-281,-274,-266,-257,-250,-243,-237,-232,-226,-218,-212,-206,-199,
+-190,-180,-171,-160,-147,-137,-131,-131,-138,-146,-153,-162,-173,-179,-175,-167,-160,-156,-153,-135,
+-94,-45,-11,4,10,18,33,54,74,95,113,128,138,145,149,154,159,164,166,166,
+166,165,164,162,160,157,155,152,148,144,139,133,129,127,126,126,125,121,113,106,
+101,100,108,122,137,149,160,166,170,171,170,169,170,171,172,172,171,169,165,159,
+155,153,155,160,169,180,192,204,216,224,229,233,233,233,230,225,221,218,216,215,
+217,219,222,226,230,231,233,234,233,230,227,224,223,226,230,235,236,234,229,227,
+228,232,234,236,237,237,234,230,228,227,225,222,219,217,215,213,213,213,211,209,
+206,204,204,203,203,204,205,205,203,199,193,187,184,183,183,186,192,199,205,211,
+214,217,217,215,210,205,200,195,188,180,173,166,159,154,152,152,153,154,156,159,
+163,165,165,164,163,161,160,158,155,150,145,139,133,127,120,112,104,95,85,76,
+66,56,47,38,34,34,37,41,46,49,52,55,57,59,62,67,73,82,92,104,
+118,132,146,160,173,182,189,194,196,195,193,190,187,184,184,187,193,200,207,210,
+210,209,206,201,196,190,182,175,169,163,155,143,130,113,92,80,81,89,96,99,
+90,65,27,-10,-34,-46,-54,-62,-64,-59,-47,-35,-37,-54,-74,-89,-101,-107,-108,-111,
+-118,-126,-133,-136,-140,-148,-157,-166,-181,-195,-202,-212,-231,-259,-295,-335,-366,-381,-381,-373,
+-360,-345,-329,-316,-306,-298,-294,-291,-288,-288,-290,-295,-303,-310,-317,-324,-332,-340,-349,-356,
+-362,-367,-374,-381,-387,-392,-396,-402,-408,-416,-423,-430,-438,-447,-455,-465,-476,-487,-496,-505,
+-515,-524,-535,-547,-558,-571,-585,-600,-614,-627,-639,-649,-657,-663,-670,-678,-689,-701,-714,-727,
+-740,-753,-766,-778,-790,-801,-812,-822,-833,-844,-856,-867,-877,-885,-891,-896,-897,-896,-894,-888,
+-878,-865,-851,-835,-819,-802,-782,-760,-736,-711,-686,-660,-633,-606,-579,-552,-526,-503,-480,-460,
+-442,-426,-413,-404,-399,-404,-422,-451,-485,-521,-559,-598,-636,-672,-705,-735,-763,-793,-825,-857,
+-885,-909,-932,-955,-976,-993,-1007,-1019,-1027,-1030,-1031,-1033,-1035,-1036,-1036,-1035,-1035,-1036,-1037,-1040,
+-1042,-1044,-1045,-1041,-1033,-1024,-1013,-999,-983,-965,-945,-928,-918,-909,-901,-892,-880,-866,-856,-847,
+-841,-845,-855,-860,-860,-864,-874,-883,-897,-918,-940,-964,-988,-1010,-1032,-1048,-1058,-1068,-1078,-1087,
+-1097,-1106,-1113,-1117,-1117,-1113,-1109,-1107,-1107,-1109,-1113,-1116,-1118,-1121,-1123,-1126,-1128,-1128,-1129,-1128,
+-1125,-1122,-1118,-1114,-1107,-1097,-1086,-1073,-1057,-1043,-1030,-1014,-1000,-990,-980,-967,-952,-937,-921,-902,
+-879,-856,-834,-813,-794,-773,-756,-745,-735,-722,-708,-693,-678,-665,-651,-636,-623,-611,-599,-589,
+-581,-577,-577,-580,-577,-564,-545,-522,-496,-466,-432,-399,-372,-347,-319,-289,-263,-244,-229,-218,
+-206,-191,-182,-177,-163,-145,-131,-114,-98,-83,-67,-53,-42,-28,-10,17,53,88,121,163,
+215,273,334,390,440,480,509,542,583,619,639,640,624,610,601,588,572,553,532,515,
+498,483,486,511,549,597,653,713,775,842,912,982,1049,1113,1174,1228,1272,1309,1343,1377,
+1411,1445,1479,1512,1544,1576,1604,1628,1648,1663,1675,1685,1691,1696,1700,1703,1707,1713,1720,1728,
+1737,1748,1759,1770,1777,1781,1782,1778,1769,1757,1745,1734,1726,1721,1714,1709,1705,1706,1710,1711,
+1703,1686,1667,1655,1648,1649,1655,1669,1686,1707,1736,1772,1811,1849,1883,1911,1932,1949,1967,1985,
+2001,2016,2035,2061,2092,2124,2160,2202,2242,2271,2291,2314,2347,2385,2424,2465,2506,2546,2585,2625,
+2663,2699,2734,2768,2803,2835,2865,2892,2917,2940,2963,2987,3010,3032,3052,3070,3086,3102,3119,3136,
+3151,3164,3175,3184,3192,3199,3206,3212,3219,3226,3232,3239,3251,3271,3298,3327,3352,3370,3384,3397,
+3410,3424,3440,3459,3480,3501,3521,3539,3557,3577,3599,3620,3639,3657,3675,3690,3704,3716,3731,3748,
+3764,3775,3784,3792,3802,3816,3832,3850,3869,3887,3906,3929,3955,3985,4019,4053,4083,4110,4133,4152,
+4167,4183,4200,4218,4236,4251,4262,4271,4279,4286,4292,4302,4317,4339,4367,4398,4432,4467,4501,4534,
+4563,4589,4610,4624,4631,4634,4635,4631,4622,4611,4598,4582,4561,4535,4505,4473,4439,4406,4377,4353,
+4338,4332,4334,4346,4368,4398,4424,4433,4416,4384,4356,4337,4320,4312,4324,4340,4336,4315,4281,4242,
+4214,4196,4181,4169,4163,4164,4175,4187,4189,4181,4172,4175,4189,4212,4245,4282,4322,4365,4406,4432,
+4441,4444,4448,4452,4458,4466,4478,4494,4513,4532,4548,4563,4571,4570,4564,4557,4550,4544,4538,4532,
+4529,4530,4531,4528,4524,4519,4513,4509,4506,4502,4498,4493,4487,4480,4473,4466,4458,4451,4443,4435,
+4426,4419,4410,4399,4388,4376,4364,4351,4336,4322,4308,4295,4283,4271,4262,4258,4259,4267,4279,4298,
+4287,4300,4323,4354,4392,4427,4437,4417,4389,4377,4388,4411,4417,4401,4382,4370,4362,4359,4359,4357,
+4359,4368,4381,4389,4388,4384,4376,4359,4334,4299,4257,4223,4210,4212,4214,4212,4207,4189,4165,4141,
+4116,4091,4070,4055,4045,4032,4018,4004,3992,3985,3984,3988,3996,4006,4018,4032,4044,4055,4065,4071,
+4069,4057,4036,4004,3957,3897,3827,3750,3670,3593,3529,3476,3427,3377,3329,3286,3244,3203,3164,3127,
+3094,3067,3040,3014,2990,2965,2942,2921,2900,2880,2859,2837,2816,2794,2772,2749,2725,2700,2673,2644,
+2611,2577,2542,2508,2475,2443,2413,2384,2355,2326,2300,2275,2251,2228,2206,2185,2162,2139,2119,2099,
+2078,2054,2030,2009,1989,1966,1946,1929,1913,1895,1878,1861,1844,1826,1810,1793,1775,1756,1734,1712,
+1688,1664,1639,1614,1587,1561,1535,1509,1483,1455,1428,1404,1382,1360,1336,1312,1289,1266,1243,1220,
+1197,1173,1149,1125,1100,1077,1055,1035,1016,1000,986,974,965,956,944,931,917,902,886,869,
+851,832,815,799,782,767,754,738,723,708,694,679,664,646,628,611,592,572,553,536,
+519,505,493,484,475,467,458,450,441,431,421,409,397,384,371,358,346,337,329,326,
+325,328,336,342,347,353,360,379,414,448,472,483,485,490,495,492,486,477,453,418,
+382,347,317,293,271,252,239,223,198,168,137,105,72,42,13,-15,-42,-65,-86,-108,
+-132,-158,-183,-205,-226,-248,-268,-285,-302,-317,-332,-345,-356,-369,-382,-393,-405,-416,-427,-442,
+-457,-471,-485,-496,-506,-517,-528,-539,-551,-559,-568,-579,-587,-596,-605,-614,-622,-628,-634,-640,
+-645,-649,-652,-656,-660,-664,-665,-665,-668,-670,-674,-680,-685,-691,-697,-702,-707,-711,-713,-715,
+-717,-718,-718,-716,-714,-711,-705,-699,-696,-696,-696,-697,-698,-700,-701,-701,-700,-697,-695,-692,
+-690,-689,-687,-685,-684,-685,-689,-694,-695,-694,-692,-689,-685,-681,-678,-675,-673,-674,-678,-686,
+-698,-714,-729,-740,-745,-747,-748,-751,-754,-757,-759,-757,-755,-755,-760,-768,-775,-781,-785,-791,
+-798,-808,-818,-826,-833,-839,-846,-853,-860,-867,-871,-874,-877,-879,-880,-880,-882,-883,-884,-886,
+-887,-885,-878,-870,-860,-851,-844,-837,-833,-828,-823,-818,-815,-814,-817,-820,-823,-822,-818,-812,
+-809,-809,-807,-802,-791,-774,-754,-733,-714,-697,-682,-666,-646,-623,-599,-578,-559,-542,-526,-509,
+-493,-479,-467,-459,-458,-459,-461,-464,-470,-478,-487,-494,-499,-503,-506,-509,-509,-511,-519,-531,
+-541,-547,-549,-549,-548,-545,-541,-537,-535,-532,-529,-528,-525,-521,-516,-511,-507,-502,-495,-486,
+-477,-470,-463,-457,-451,-447,-443,-439,-436,-434,-433,-435,-437,-435,-430,-422,-411,-399,-389,-380,
+-371,-362,-355,-348,-342,-337,-333,-327,-320,-314,-307,-300,-293,-287,-281,-276,-272,-266,-258,-249,
+-240,-234,-227,-218,-209,-198,-185,-175,-168,-170,-182,-197,-203,-201,-193,-184,-176,-172,-170,-162,
+-140,-106,-70,-44,-27,-15,-4,8,25,41,58,75,90,103,113,119,124,127,127,128,
+131,135,141,144,143,142,142,141,141,140,137,131,124,118,114,112,110,108,107,106,
+104,106,110,118,129,141,151,157,162,166,168,169,169,168,165,160,154,150,144,138,
+134,132,133,135,138,145,153,161,168,174,179,183,184,184,182,178,175,175,175,176,
+175,172,171,168,166,165,165,166,168,173,177,181,184,188,190,193,194,193,191,188,
+187,188,191,195,198,201,201,200,198,194,189,188,188,189,191,192,192,192,193,194,
+195,194,195,196,197,196,195,195,194,194,191,188,187,187,188,190,192,195,197,199,
+199,199,197,195,191,186,182,178,172,166,160,152,148,145,143,143,146,149,151,152,
+154,154,153,152,150,149,149,149,148,147,148,147,146,144,142,137,132,125,119,112,
+104,95,86,78,72,68,68,71,76,84,92,102,112,119,128,140,152,164,177,190,
+204,220,236,251,266,278,288,295,301,306,312,317,322,326,329,333,335,335,334,328,
+317,303,286,265,241,221,202,184,165,146,129,115,103,93,78,61,50,46,52,60,
+66,66,57,34,1,-29,-46,-55,-66,-76,-82,-82,-80,-81,-88,-100,-112,-121,-129,-132,
+-129,-124,-123,-124,-129,-139,-153,-167,-187,-213,-233,-245,-256,-269,-292,-325,-356,-373,-373,-364,
+-351,-338,-327,-322,-318,-315,-313,-313,-314,-317,-320,-323,-328,-333,-340,-346,-353,-360,-368,-375,
+-381,-388,-395,-403,-410,-416,-422,-429,-436,-441,-446,-453,-460,-467,-474,-482,-490,-498,-507,-517,
+-527,-537,-547,-557,-567,-578,-591,-605,-620,-635,-648,-658,-668,-676,-685,-692,-701,-711,-722,-733,
+-746,-759,-772,-784,-795,-806,-816,-826,-836,-848,-860,-871,-884,-894,-901,-906,-910,-912,-913,-911,
+-906,-899,-890,-879,-866,-851,-834,-815,-794,-770,-746,-719,-688,-656,-623,-591,-559,-527,-495,-463,
+-434,-407,-384,-366,-355,-357,-372,-398,-432,-470,-514,-563,-613,-662,-706,-745,-778,-809,-840,-872,
+-905,-938,-970,-1001,-1031,-1057,-1077,-1094,-1107,-1116,-1120,-1122,-1121,-1118,-1117,-1118,-1121,-1125,-1128,-1131,
+-1134,-1136,-1136,-1137,-1136,-1130,-1119,-1104,-1088,-1067,-1038,-1012,-998,-991,-984,-975,-966,-961,-956,-948,
+-943,-949,-965,-985,-996,-991,-986,-992,-1007,-1029,-1046,-1055,-1069,-1087,-1106,-1127,-1144,-1154,-1162,-1169,
+-1175,-1184,-1195,-1206,-1216,-1224,-1231,-1234,-1235,-1235,-1236,-1236,-1235,-1236,-1238,-1241,-1244,-1246,-1246,-1242,
+-1235,-1223,-1209,-1197,-1191,-1188,-1185,-1179,-1171,-1159,-1145,-1132,-1120,-1108,-1094,-1080,-1063,-1045,-1024,-1003,
+-982,-960,-933,-907,-881,-854,-832,-817,-805,-797,-790,-780,-769,-755,-737,-716,-694,-675,-658,-644,
+-634,-626,-621,-617,-609,-604,-604,-599,-585,-563,-532,-497,-467,-440,-413,-386,-360,-332,-308,-289,
+-271,-256,-241,-220,-201,-189,-173,-150,-127,-106,-86,-64,-38,-14,5,32,68,105,140,178,
+219,269,331,392,445,488,526,560,592,623,658,688,707,717,717,707,694,677,652,621,
+589,556,522,491,478,495,532,584,655,734,813,889,963,1036,1103,1166,1223,1274,1318,1358,
+1395,1429,1462,1493,1525,1555,1584,1611,1639,1668,1696,1722,1744,1763,1780,1793,1800,1804,1809,1821,
+1837,1857,1878,1899,1919,1937,1953,1968,1975,1972,1953,1922,1889,1863,1845,1834,1821,1801,1783,1773,
+1766,1757,1744,1726,1702,1677,1660,1651,1647,1650,1659,1674,1696,1725,1763,1810,1859,1901,1932,1956,
+1974,1988,2001,2018,2041,2068,2096,2122,2149,2178,2212,2247,2277,2307,2338,2370,2404,2440,2478,2515,
+2550,2583,2617,2653,2692,2732,2772,2810,2847,2884,2921,2957,2988,3015,3038,3058,3079,3100,3121,3142,
+3160,3176,3190,3204,3217,3230,3240,3249,3255,3262,3268,3274,3280,3292,3313,3342,3374,3405,3431,3452,
+3469,3483,3493,3502,3512,3523,3534,3546,3560,3575,3590,3607,3626,3646,3663,3679,3696,3713,3730,3745,
+3757,3770,3782,3792,3802,3811,3820,3828,3839,3851,3867,3886,3912,3944,3980,4018,4055,4088,4114,4134,
+4149,4159,4171,4183,4195,4210,4227,4246,4265,4283,4299,4315,4330,4346,4362,4378,4395,4411,4428,4444,
+4459,4477,4496,4518,4541,4561,4576,4586,4588,4582,4570,4556,4542,4532,4527,4522,4515,4504,4491,4480,
+4477,4483,4499,4523,4551,4586,4622,4645,4653,4651,4634,4602,4566,4533,4496,4463,4438,4414,4386,4361,
+4347,4344,4342,4343,4348,4359,4376,4395,4406,4395,4369,4350,4351,4364,4385,4414,4446,4478,4511,4545,
+4574,4589,4598,4607,4615,4623,4632,4642,4656,4674,4690,4696,4690,4680,4665,4645,4623,4605,4589,4574,
+4566,4566,4565,4562,4560,4558,4556,4555,4553,4548,4544,4542,4537,4531,4526,4522,4518,4513,4507,4502,
+4497,4492,4488,4483,4475,4462,4449,4437,4428,4419,4406,4391,4374,4358,4342,4326,4310,4296,4287,4284,
+4287,4340,4333,4334,4342,4358,4380,4407,4431,4440,4435,4429,4433,4433,4421,4406,4401,4401,4400,4394,
+4389,4392,4399,4410,4420,4422,4421,4421,4419,4404,4373,4337,4298,4255,4231,4229,4224,4215,4204,4187,
+4167,4143,4115,4086,4061,4044,4031,4019,4005,3989,3975,3965,3957,3953,3952,3953,3954,3955,3958,3961,
+3967,3972,3974,3971,3960,3932,3889,3835,3775,3709,3641,3575,3514,3458,3411,3367,3322,3278,3235,3195,
+3156,3119,3085,3055,3026,2998,2972,2948,2926,2903,2880,2856,2832,2809,2788,2765,2740,2713,2682,2651,
+2616,2581,2546,2508,2473,2443,2413,2386,2360,2331,2304,2277,2251,2226,2203,2181,2160,2140,2119,2096,
+2075,2057,2038,2019,2000,1983,1970,1957,1944,1931,1916,1898,1880,1860,1839,1818,1796,1773,1752,1729,
+1706,1684,1660,1633,1605,1578,1553,1529,1505,1481,1459,1436,1412,1388,1366,1344,1322,1298,1273,1248,
+1224,1199,1175,1150,1125,1101,1077,1053,1031,1011,993,978,966,953,941,928,916,903,889,872,
+853,833,814,797,782,765,749,735,722,708,692,676,659,641,620,598,577,555,534,513,
+494,476,462,450,440,432,425,418,410,402,391,379,366,352,339,328,318,313,311,312,
+316,324,335,346,357,372,389,406,434,471,503,528,543,539,523,502,475,444,408,367,
+327,294,265,240,217,195,170,144,113,79,44,14,-11,-37,-61,-82,-103,-123,-140,-157,
+-177,-198,-218,-237,-252,-269,-288,-303,-313,-325,-337,-351,-365,-375,-382,-389,-399,-411,-422,-433,
+-445,-458,-474,-489,-500,-512,-525,-535,-544,-554,-564,-574,-586,-596,-605,-615,-624,-632,-642,-652,
+-661,-669,-676,-682,-689,-694,-699,-702,-704,-705,-706,-708,-709,-710,-712,-712,-711,-710,-710,-709,
+-707,-705,-703,-699,-695,-692,-687,-682,-679,-676,-674,-673,-672,-673,-675,-678,-681,-682,-682,-680,
+-678,-676,-675,-674,-674,-676,-680,-683,-686,-689,-693,-698,-702,-705,-708,-710,-712,-716,-724,-737,
+-752,-766,-776,-782,-786,-787,-789,-791,-793,-794,-796,-800,-803,-807,-810,-813,-816,-818,-822,-829,
+-839,-852,-863,-874,-883,-892,-899,-903,-905,-906,-907,-907,-908,-909,-911,-913,-916,-921,-926,-931,
+-935,-938,-939,-935,-926,-913,-901,-890,-880,-871,-863,-859,-859,-863,-870,-881,-893,-905,-914,-917,
+-913,-905,-894,-882,-870,-859,-849,-837,-824,-809,-794,-779,-764,-749,-732,-714,-698,-684,-673,-662,
+-649,-636,-625,-617,-611,-606,-603,-602,-602,-603,-604,-605,-607,-607,-606,-606,-606,-606,-603,-599,
+-599,-600,-602,-602,-600,-598,-595,-593,-594,-596,-595,-594,-593,-589,-582,-573,-564,-557,-552,-547,
+-539,-530,-522,-514,-506,-498,-491,-485,-481,-476,-471,-469,-470,-473,-477,-479,-477,-471,-462,-452,
+-442,-432,-423,-413,-404,-396,-389,-382,-374,-367,-361,-356,-350,-343,-336,-330,-323,-316,-310,-305,
+-299,-292,-284,-275,-265,-253,-243,-232,-222,-215,-211,-208,-212,-218,-219,-209,-195,-182,-175,-170,
+-166,-157,-141,-118,-94,-72,-54,-38,-23,-9,4,17,31,45,58,68,76,81,82,82,
+84,88,93,102,110,115,117,117,116,117,119,118,113,107,102,98,96,93,90,87,
+86,84,84,86,93,103,116,130,142,151,158,163,165,165,161,155,147,139,131,125,
+120,118,119,121,124,128,132,138,144,146,147,148,146,143,137,130,125,120,118,119,
+120,121,121,120,119,117,116,116,118,121,126,132,137,141,145,149,153,153,151,151,
+149,146,145,146,148,150,153,155,154,155,154,153,153,155,157,161,165,169,173,177,
+177,178,181,183,184,185,185,185,185,184,183,182,181,181,181,182,181,180,178,177,
+175,172,170,168,166,164,162,159,157,155,153,150,150,149,148,147,147,147,148,149,
+149,148,146,144,141,139,139,138,138,141,143,145,147,149,151,151,150,148,145,141,
+134,128,121,114,110,107,106,108,114,122,131,141,150,157,165,172,180,188,197,207,
+217,227,239,252,266,281,296,308,320,333,343,353,362,370,377,383,387,391,393,391,
+386,376,362,341,315,287,261,233,207,184,159,135,115,98,80,60,40,27,23,27,
+36,45,52,51,39,18,-7,-33,-56,-73,-84,-91,-97,-101,-104,-104,-107,-117,-132,-148,
+-161,-173,-178,-177,-168,-156,-155,-168,-185,-208,-233,-256,-283,-315,-347,-373,-386,-387,-374,-357,
+-355,-354,-341,-331,-329,-329,-330,-333,-336,-340,-343,-348,-353,-360,-368,-376,-384,-391,-397,-403,
+-409,-416,-422,-428,-434,-440,-447,-454,-460,-466,-470,-475,-480,-486,-491,-497,-504,-512,-520,-529,
+-539,-548,-558,-568,-577,-586,-597,-609,-621,-636,-652,-668,-682,-692,-700,-706,-713,-721,-730,-741,
+-752,-764,-776,-788,-800,-811,-823,-833,-843,-853,-864,-875,-885,-895,-905,-913,-919,-924,-927,-928,
+-928,-925,-919,-913,-904,-894,-881,-867,-848,-826,-801,-775,-747,-717,-686,-651,-613,-574,-535,-496,
+-456,-418,-384,-355,-335,-328,-333,-349,-374,-407,-449,-497,-552,-613,-674,-728,-775,-816,-854,-888,
+-919,-949,-980,-1010,-1039,-1067,-1091,-1112,-1130,-1142,-1150,-1153,-1153,-1151,-1149,-1149,-1152,-1160,-1169,-1176,
+-1180,-1185,-1189,-1192,-1196,-1197,-1197,-1195,-1192,-1188,-1183,-1178,-1174,-1170,-1164,-1156,-1144,-1126,-1112,-1110,
+-1108,-1102,-1107,-1119,-1129,-1139,-1149,-1159,-1169,-1176,-1181,-1186,-1193,-1203,-1214,-1227,-1240,-1253,-1265,-1275,
+-1283,-1292,-1305,-1318,-1333,-1345,-1353,-1356,-1358,-1364,-1367,-1365,-1365,-1366,-1367,-1367,-1368,-1370,-1371,-1369,
+-1364,-1355,-1344,-1334,-1325,-1317,-1310,-1300,-1289,-1275,-1259,-1242,-1226,-1212,-1199,-1187,-1174,-1161,-1144,-1123,
+-1099,-1075,-1051,-1026,-1001,-977,-954,-929,-907,-891,-877,-865,-857,-847,-831,-812,-796,-778,-758,-743,
+-729,-713,-695,-679,-667,-656,-646,-649,-656,-650,-637,-619,-593,-560,-529,-502,-478,-453,-429,-406,
+-385,-365,-343,-326,-310,-295,-280,-260,-232,-203,-174,-145,-114,-82,-53,-23,3,32,65,98,
+132,167,194,213,233,259,288,324,378,437,486,527,557,568,570,567,561,553,541,526,
+516,515,520,515,500,487,488,521,576,636,700,771,845,922,998,1071,1139,1199,1252,1300,
+1341,1381,1418,1452,1485,1517,1548,1578,1606,1635,1666,1695,1722,1746,1769,1791,1811,1826,1838,1849,
+1863,1882,1904,1926,1946,1964,1980,1992,2000,2007,2014,2016,2012,1999,1982,1963,1946,1932,1912,1882,
+1851,1825,1804,1789,1782,1780,1772,1755,1736,1718,1703,1691,1685,1688,1699,1718,1744,1777,1817,1862,
+1912,1955,1985,2006,2027,2049,2070,2089,2109,2129,2145,2166,2194,2216,2235,2259,2292,2329,2368,2409,
+2450,2492,2536,2583,2633,2681,2727,2774,2816,2854,2893,2932,2969,3000,3024,3046,3069,3095,3121,3145,
+3169,3191,3211,3228,3242,3255,3267,3278,3289,3299,3311,3325,3342,3359,3376,3397,3422,3447,3472,3496,
+3519,3541,3557,3567,3572,3578,3583,3585,3588,3593,3601,3614,3629,3645,3663,3681,3697,3708,3720,3733,
+3742,3749,3756,3766,3779,3795,3814,3832,3848,3865,3879,3891,3904,3919,3940,3964,3991,4020,4048,4075,
+4100,4122,4141,4158,4173,4186,4198,4212,4223,4234,4247,4262,4281,4306,4333,4357,4380,4400,4417,4433,
+4448,4462,4474,4489,4507,4529,4554,4574,4588,4595,4593,4583,4571,4561,4560,4566,4575,4584,4590,4592,
+4591,4592,4599,4622,4661,4711,4761,4806,4834,4842,4827,4789,4739,4697,4672,4649,4618,4585,4550,4517,
+4493,4472,4454,4452,4465,4488,4517,4540,4549,4549,4551,4552,4550,4552,4562,4577,4596,4615,4637,4663,
+4687,4704,4714,4720,4726,4736,4746,4756,4764,4770,4772,4770,4758,4736,4710,4690,4672,4652,4633,4619,
+4613,4613,4611,4608,4608,4608,4607,4605,4600,4597,4596,4594,4592,4589,4585,4582,4578,4575,4573,4570,
+4565,4558,4552,4545,4540,4536,4531,4525,4515,4501,4488,4478,4468,4456,4443,4429,4417,4402,4385,4369,
+4353,4340,4440,4429,4420,4414,4408,4402,4396,4394,4396,4400,4407,4414,4421,4429,4423,4411,4413,4420,
+4417,4412,4413,4420,4430,4439,4447,4454,4460,4462,4455,4435,4402,4365,4325,4284,4255,4245,4241,4236,
+4224,4206,4184,4159,4131,4101,4072,4047,4026,4007,3990,3974,3958,3943,3929,3916,3906,3899,3893,3890,
+3887,3883,3883,3882,3879,3872,3857,3830,3792,3746,3695,3640,3581,3526,3479,3436,3394,3349,3303,3260,
+3220,3180,3141,3102,3066,3034,3005,2976,2948,2922,2898,2874,2848,2821,2796,2773,2747,2721,2691,2657,
+2620,2582,2545,2508,2472,2438,2407,2379,2352,2326,2301,2278,2255,2232,2208,2185,2162,2139,2117,2094,
+2073,2052,2031,2014,1997,1980,1966,1953,1940,1927,1912,1897,1878,1855,1831,1806,1781,1757,1734,1713,
+1694,1677,1658,1638,1618,1597,1574,1551,1528,1504,1482,1460,1437,1414,1391,1366,1342,1319,1295,1271,
+1247,1223,1198,1173,1149,1124,1099,1075,1052,1029,1009,990,970,953,937,923,911,899,884,868,
+852,833,814,796,779,763,748,734,721,707,693,676,657,639,618,595,573,549,525,500,
+476,454,435,422,413,405,399,392,385,379,372,363,354,342,331,321,312,306,303,302,
+304,309,315,321,332,349,369,390,413,439,466,487,502,508,496,468,432,394,356,319,
+286,253,221,193,160,120,83,50,17,-13,-40,-64,-84,-106,-127,-142,-156,-170,-183,-198,
+-212,-225,-240,-255,-270,-284,-296,-308,-322,-334,-344,-353,-364,-374,-383,-390,-396,-405,-416,-427,
+-439,-450,-462,-477,-490,-501,-513,-524,-534,-546,-558,-567,-576,-586,-596,-605,-614,-624,-633,-644,
+-655,-664,-672,-679,-687,-695,-701,-706,-710,-714,-720,-729,-737,-744,-749,-752,-754,-753,-750,-745,
+-739,-730,-723,-717,-710,-704,-698,-692,-689,-685,-681,-679,-680,-682,-686,-691,-698,-705,-709,-711,
+-712,-714,-717,-723,-732,-738,-742,-746,-748,-749,-751,-753,-754,-757,-761,-764,-768,-773,-780,-787,
+-797,-807,-818,-828,-835,-839,-840,-840,-840,-841,-844,-848,-852,-857,-863,-868,-872,-876,-882,-891,
+-900,-908,-915,-921,-925,-927,-928,-926,-923,-920,-919,-920,-922,-926,-930,-934,-938,-942,-947,-952,
+-957,-962,-967,-973,-978,-976,-967,-956,-948,-944,-941,-940,-941,-942,-945,-949,-954,-960,-966,-967,
+-964,-959,-951,-941,-928,-913,-899,-887,-877,-866,-853,-840,-828,-821,-818,-817,-813,-805,-797,-790,
+-783,-775,-768,-761,-754,-748,-742,-735,-728,-721,-715,-711,-706,-700,-695,-692,-689,-688,-687,-686,
+-682,-674,-665,-656,-648,-643,-643,-641,-639,-636,-636,-638,-641,-641,-638,-630,-619,-609,-600,-595,
+-593,-589,-582,-576,-570,-563,-555,-547,-539,-531,-522,-514,-508,-505,-503,-504,-508,-513,-516,-517,
+-514,-509,-500,-490,-480,-469,-458,-448,-439,-431,-424,-416,-409,-403,-397,-389,-381,-374,-368,-360,
+-353,-346,-338,-329,-321,-312,-303,-297,-291,-286,-280,-270,-256,-239,-227,-223,-220,-214,-204,-193,
+-185,-179,-173,-165,-156,-146,-134,-117,-95,-71,-50,-35,-23,-12,2,17,30,40,47,49,
+46,43,45,50,57,64,71,76,81,87,92,92,89,87,83,81,80,81,82,82,
+79,76,72,69,70,75,84,94,102,109,115,121,127,131,131,129,126,122,117,113,
+110,108,107,107,106,105,105,106,108,111,112,113,116,119,121,119,114,109,105,101,
+98,96,95,94,93,90,87,85,84,85,87,90,94,97,100,103,107,109,111,112,
+112,111,110,107,105,105,104,104,106,107,108,109,112,115,119,125,130,136,143,148,
+153,157,159,163,168,172,174,174,175,176,176,174,173,172,169,166,163,160,156,150,
+147,144,142,143,143,145,147,148,149,149,150,149,149,150,150,150,150,149,149,148,
+147,147,145,142,139,138,137,135,134,133,133,134,136,138,141,143,145,146,145,145,
+143,139,135,130,125,120,116,114,115,119,124,129,135,140,145,150,155,160,165,171,
+178,184,193,202,213,226,240,255,271,288,306,323,334,345,357,368,379,388,394,398,
+400,399,396,389,378,361,337,306,271,237,206,181,161,142,118,90,64,40,20,12,
+16,25,36,43,42,30,13,-2,-19,-35,-49,-58,-67,-78,-87,-95,-104,-112,-117,-120,
+-128,-143,-163,-181,-192,-194,-190,-190,-200,-215,-231,-254,-289,-331,-369,-393,-403,-402,-394,-383,
+-370,-359,-351,-347,-343,-343,-346,-351,-355,-361,-369,-375,-381,-389,-398,-408,-418,-427,-434,-441,
+-446,-450,-454,-458,-463,-468,-473,-478,-483,-488,-492,-497,-501,-506,-511,-516,-522,-529,-536,-543,
+-550,-557,-566,-575,-585,-595,-606,-618,-631,-645,-660,-676,-691,-705,-717,-725,-732,-741,-749,-757,
+-766,-776,-787,-798,-809,-819,-827,-837,-847,-859,-869,-880,-890,-899,-908,-916,-923,-930,-936,-940,
+-943,-944,-942,-938,-934,-928,-920,-908,-894,-876,-855,-831,-805,-777,-746,-712,-676,-637,-597,-555,
+-513,-472,-432,-393,-357,-334,-326,-330,-345,-371,-405,-450,-506,-571,-637,-698,-754,-806,-851,-891,
+-926,-956,-983,-1007,-1031,-1054,-1074,-1091,-1107,-1120,-1128,-1132,-1134,-1134,-1136,-1139,-1145,-1154,-1166,-1179,
+-1191,-1203,-1214,-1224,-1232,-1240,-1248,-1255,-1260,-1262,-1264,-1265,-1267,-1269,-1271,-1273,-1274,-1274,-1272,-1269,
+-1265,-1262,-1261,-1260,-1254,-1245,-1240,-1243,-1249,-1253,-1254,-1253,-1257,-1267,-1281,-1298,-1316,-1335,-1353,-1372,
+-1390,-1406,-1418,-1430,-1440,-1449,-1457,-1466,-1472,-1478,-1483,-1485,-1486,-1486,-1484,-1482,-1481,-1480,-1479,-1475,
+-1470,-1465,-1459,-1451,-1444,-1436,-1427,-1417,-1405,-1392,-1379,-1365,-1349,-1333,-1318,-1304,-1289,-1272,-1254,-1233,
+-1210,-1185,-1160,-1135,-1110,-1088,-1066,-1044,-1021,-998,-980,-968,-959,-955,-949,-934,-914,-895,-877,-857,
+-836,-815,-791,-766,-749,-736,-724,-718,-720,-724,-721,-712,-702,-689,-669,-646,-627,-614,-601,-579,
+-551,-529,-507,-483,-473,-472,-467,-455,-431,-395,-360,-327,-292,-256,-222,-187,-152,-120,-89,-61,
+-35,-8,17,45,70,85,101,122,141,170,221,288,354,414,462,485,495,511,521,519,
+512,505,505,507,508,515,526,543,566,589,623,672,734,809,891,974,1052,1122,1180,1230,
+1275,1314,1352,1387,1419,1449,1478,1505,1532,1560,1589,1618,1646,1672,1698,1721,1741,1759,1775,1786,
+1795,1804,1815,1827,1837,1846,1854,1863,1870,1878,1885,1894,1904,1913,1917,1919,1920,1926,1939,1949,
+1953,1952,1942,1924,1904,1886,1874,1865,1856,1848,1839,1824,1803,1777,1750,1731,1724,1727,1740,1765,
+1796,1829,1866,1907,1951,1998,2035,2056,2073,2101,2133,2160,2180,2198,2209,2225,2255,2295,2333,2366,
+2401,2438,2476,2517,2561,2610,2661,2714,2766,2815,2859,2901,2940,2979,3017,3054,3088,3115,3138,3159,
+3181,3205,3226,3245,3262,3280,3300,3318,3334,3347,3361,3375,3388,3400,3415,3433,3452,3468,3484,3501,
+3520,3539,3557,3572,3584,3594,3601,3606,3607,3606,3603,3603,3612,3628,3644,3661,3682,3698,3705,3711,
+3720,3731,3742,3755,3768,3782,3795,3808,3819,3827,3836,3843,3851,3862,3876,3894,3913,3938,3963,3989,
+4015,4041,4068,4095,4122,4147,4166,4184,4201,4217,4234,4253,4270,4286,4305,4330,4358,4388,4421,4454,
+4486,4518,4547,4571,4587,4594,4598,4604,4609,4615,4617,4613,4603,4591,4581,4578,4581,4589,4599,4612,
+4623,4632,4645,4666,4700,4745,4796,4854,4913,4950,4952,4933,4902,4867,4834,4809,4788,4768,4743,4701,
+4662,4648,4636,4611,4596,4600,4617,4639,4658,4671,4678,4686,4696,4709,4726,4740,4752,4766,4778,4790,
+4803,4815,4824,4831,4838,4849,4860,4866,4863,4853,4839,4824,4807,4789,4769,4749,4730,4713,4702,4694,
+4687,4682,4679,4676,4672,4669,4666,4663,4660,4658,4654,4650,4647,4645,4645,4642,4637,4634,4631,4628,
+4625,4622,4617,4610,4604,4598,4593,4591,4589,4584,4574,4560,4546,4535,4526,4517,4510,4503,4496,4486,
+4471,4454,4440,4513,4499,4488,4480,4476,4471,4463,4453,4442,4433,4433,4433,4431,4430,4431,4433,4430,
+4421,4418,4423,4431,4439,4443,4448,4466,4491,4501,4499,4497,4489,4462,4421,4377,4331,4291,4270,4270,
+4274,4271,4257,4235,4209,4182,4154,4129,4102,4073,4046,4024,4007,3990,3970,3950,3932,3913,3895,3878,
+3861,3845,3828,3816,3806,3794,3785,3776,3763,3740,3704,3663,3619,3573,3528,3490,3458,3426,3390,3348,
+3300,3251,3204,3159,3117,3077,3039,3005,2972,2939,2906,2877,2851,2822,2791,2760,2728,2697,2665,2634,
+2600,2565,2530,2495,2463,2432,2402,2375,2347,2319,2297,2274,2250,2227,2203,2180,2155,2132,2111,2091,
+2070,2048,2028,2009,1991,1974,1958,1941,1924,1907,1892,1875,1856,1838,1818,1796,1774,1750,1727,1703,
+1678,1654,1635,1617,1597,1581,1566,1550,1532,1512,1491,1470,1449,1427,1405,1381,1358,1336,1311,1287,
+1262,1236,1212,1188,1164,1142,1118,1094,1071,1048,1024,1000,977,955,936,921,906,891,875,860,
+843,824,806,788,771,755,740,728,717,704,691,677,661,642,621,597,572,548,522,494,
+469,447,428,415,403,394,386,378,372,367,361,354,344,333,322,311,301,292,285,280,
+278,279,284,289,300,322,345,369,394,412,430,454,462,449,423,390,354,318,289,259,
+227,202,177,142,99,56,22,-7,-38,-65,-91,-115,-138,-159,-172,-183,-198,-211,-221,-229,
+-238,-249,-259,-272,-284,-295,-309,-321,-332,-343,-350,-357,-364,-372,-383,-395,-404,-411,-418,-422,
+-428,-438,-452,-466,-478,-489,-501,-514,-526,-536,-544,-551,-560,-570,-580,-591,-600,-609,-620,-632,
+-643,-655,-667,-679,-690,-701,-711,-720,-728,-736,-744,-751,-758,-766,-773,-781,-789,-794,-799,-800,
+-795,-792,-790,-785,-779,-775,-769,-762,-753,-746,-742,-740,-740,-742,-746,-751,-758,-767,-776,-783,
+-787,-788,-790,-793,-798,-803,-808,-814,-818,-821,-825,-828,-830,-832,-834,-837,-843,-849,-855,-862,
+-870,-879,-888,-895,-902,-908,-913,-916,-917,-918,-917,-916,-916,-914,-913,-915,-920,-928,-936,-942,
+-944,-944,-941,-936,-931,-925,-918,-913,-911,-910,-912,-916,-922,-929,-937,-944,-954,-965,-977,-986,
+-997,-1010,-1023,-1035,-1046,-1058,-1067,-1072,-1075,-1076,-1074,-1070,-1063,-1056,-1049,-1040,-1031,-1022,-1013,-1002,
+-990,-980,-972,-963,-954,-943,-931,-922,-919,-921,-924,-924,-920,-915,-910,-904,-898,-893,-888,-884,
+-880,-874,-867,-858,-851,-843,-835,-827,-816,-804,-794,-789,-784,-777,-772,-769,-765,-761,-758,-755,
+-750,-741,-732,-723,-712,-699,-688,-681,-680,-681,-682,-680,-679,-680,-683,-682,-676,-667,-656,-648,
+-644,-643,-639,-632,-625,-620,-616,-610,-603,-593,-583,-572,-562,-555,-549,-545,-541,-540,-541,-542,
+-543,-545,-547,-546,-544,-542,-537,-529,-517,-503,-493,-485,-478,-472,-464,-455,-444,-433,-423,-413,
+-405,-399,-395,-394,-394,-391,-383,-373,-361,-345,-332,-320,-308,-295,-281,-266,-255,-249,-243,-234,
+-223,-209,-195,-184,-178,-175,-170,-162,-150,-136,-126,-118,-109,-95,-78,-60,-42,-27,-13,-2,
+5,11,17,23,29,36,42,46,49,50,52,53,53,53,53,52,53,56,62,70,
+78,83,85,82,75,66,60,58,61,67,73,79,85,91,96,100,102,103,103,102,
+100,100,99,99,98,96,95,94,95,97,98,99,96,94,94,95,96,96,95,91,
+88,86,83,79,76,74,72,70,68,68,69,73,77,81,84,86,86,86,86,87,
+90,92,93,91,88,85,83,81,80,80,81,83,86,91,96,103,110,117,123,130,
+136,140,144,148,151,155,160,164,167,170,172,173,172,170,168,164,158,152,147,140,
+134,129,126,125,126,129,134,139,144,148,150,152,152,150,149,147,145,143,140,139,
+139,139,138,138,138,137,138,138,138,136,131,128,126,126,127,130,133,135,136,135,
+132,129,126,123,120,117,114,112,109,108,109,110,113,116,119,122,125,128,130,132,
+135,139,143,147,154,162,171,183,198,216,235,247,256,270,288,304,319,334,348,360,
+369,376,382,386,385,381,373,362,345,323,296,263,230,198,169,142,116,85,53,31,
+23,24,31,39,45,50,46,37,29,24,18,5,-13,-29,-44,-58,-73,-90,-104,-117,
+-124,-120,-115,-125,-144,-164,-186,-207,-229,-250,-272,-305,-348,-385,-409,-424,-427,-422,-412,-402,
+-394,-388,-383,-380,-376,-377,-381,-386,-391,-396,-401,-407,-414,-423,-432,-440,-450,-459,-467,-473,
+-478,-482,-486,-489,-493,-497,-500,-503,-505,-507,-510,-514,-518,-524,-530,-536,-541,-548,-553,-558,
+-565,-573,-582,-590,-599,-608,-618,-628,-638,-649,-662,-676,-692,-708,-724,-737,-747,-753,-759,-767,
+-777,-787,-798,-809,-819,-828,-838,-847,-855,-864,-872,-880,-889,-899,-909,-919,-928,-935,-942,-949,
+-954,-958,-961,-961,-959,-955,-950,-941,-930,-917,-900,-881,-860,-835,-808,-779,-748,-714,-677,-638,
+-596,-552,-509,-464,-420,-380,-352,-342,-347,-363,-390,-426,-470,-523,-583,-644,-703,-758,-808,-851,
+-888,-921,-948,-971,-991,-1010,-1024,-1036,-1047,-1054,-1057,-1058,-1059,-1061,-1064,-1069,-1077,-1088,-1110,-1143,
+-1176,-1202,-1221,-1237,-1249,-1260,-1272,-1281,-1286,-1290,-1296,-1301,-1306,-1313,-1321,-1329,-1339,-1349,-1359,-1368,
+-1375,-1380,-1385,-1387,-1387,-1382,-1371,-1357,-1343,-1332,-1325,-1324,-1329,-1342,-1362,-1384,-1405,-1427,-1449,-1468,
+-1484,-1499,-1512,-1522,-1531,-1538,-1544,-1549,-1553,-1558,-1563,-1568,-1572,-1574,-1574,-1575,-1574,-1572,-1570,-1567,
+-1563,-1558,-1552,-1544,-1536,-1526,-1515,-1503,-1491,-1479,-1466,-1452,-1438,-1423,-1407,-1390,-1371,-1351,-1330,-1310,
+-1289,-1268,-1246,-1223,-1200,-1177,-1154,-1130,-1109,-1089,-1073,-1060,-1046,-1033,-1027,-1026,-1023,-1009,-990,-973,
+-950,-924,-903,-887,-871,-859,-849,-840,-832,-825,-817,-811,-808,-805,-798,-788,-775,-766,-757,-747,
+-739,-727,-715,-702,-691,-682,-672,-660,-642,-618,-595,-570,-543,-519,-494,-468,-439,-408,-375,-333,
+-292,-258,-224,-194,-167,-140,-122,-111,-94,-63,-23,12,51,96,145,199,231,235,242,263,
+293,328,357,378,393,407,425,447,472,500,532,573,622,680,752,834,918,996,1063,1119,
+1166,1208,1245,1282,1318,1352,1384,1415,1443,1471,1498,1524,1550,1576,1600,1623,1647,1669,1687,1702,
+1713,1721,1728,1734,1739,1744,1748,1753,1760,1768,1777,1786,1796,1807,1822,1837,1854,1871,1892,1917,
+1941,1960,1973,1982,1990,1993,1988,1976,1960,1944,1925,1902,1876,1849,1824,1804,1790,1782,1776,1775,
+1778,1785,1801,1828,1865,1909,1961,2018,2068,2101,2120,2140,2169,2201,2229,2251,2275,2303,2339,2374,
+2404,2437,2478,2518,2559,2599,2638,2677,2719,2766,2816,2866,2913,2952,2987,3020,3056,3091,3124,3156,
+3185,3208,3227,3244,3263,3286,3308,3331,3351,3369,3383,3397,3411,3426,3440,3454,3468,3482,3492,3500,
+3509,3523,3543,3563,3581,3595,3606,3615,3621,3627,3634,3644,3656,3672,3688,3697,3704,3714,3724,3732,
+3739,3744,3750,3755,3764,3777,3795,3815,3830,3841,3850,3856,3862,3868,3879,3899,3921,3945,3968,3990,
+4013,4040,4074,4107,4137,4164,4189,4218,4248,4277,4301,4319,4332,4342,4351,4366,4388,4413,4441,4475,
+4512,4550,4585,4614,4635,4648,4652,4646,4638,4632,4625,4620,4621,4633,4646,4645,4633,4634,4662,4703,
+4736,4758,4767,4767,4780,4801,4813,4831,4868,4908,4943,4960,4960,4955,4935,4900,4876,4859,4835,4818,
+4806,4790,4776,4766,4765,4777,4789,4799,4811,4817,4822,4833,4847,4861,4873,4885,4895,4905,4915,4926,
+4937,4947,4957,4967,4975,4976,4965,4942,4912,4884,4859,4838,4820,4806,4795,4786,4776,4768,4761,4754,
+4750,4745,4736,4733,4732,4728,4725,4720,4717,4714,4710,4708,4706,4703,4701,4700,4701,4701,4699,4695,
+4691,4687,4683,4677,4672,4668,4662,4657,4654,4650,4645,4638,4627,4617,4606,4600,4600,4604,4602,4590,
+4572,4553,4532,4513,4591,4578,4564,4549,4535,4527,4522,4513,4497,4482,4474,4469,4464,4460,4457,4456,
+4452,4446,4444,4448,4458,4470,4478,4478,4475,4479,4489,4503,4525,4537,4526,4504,4467,4412,4357,4316,
+4297,4296,4296,4291,4279,4259,4233,4206,4179,4153,4127,4102,4079,4057,4033,4005,3982,3961,3943,3925,
+3906,3887,3864,3839,3817,3798,3781,3766,3752,3734,3710,3679,3643,3602,3558,3515,3477,3445,3413,3376,
+3338,3297,3251,3204,3159,3113,3068,3026,2985,2948,2914,2880,2848,2817,2784,2748,2709,2671,2635,2600,
+2567,2533,2502,2471,2440,2411,2384,2360,2340,2321,2302,2283,2262,2240,2216,2189,2163,2137,2110,2085,
+2061,2038,2016,1995,1977,1958,1940,1925,1911,1896,1881,1868,1853,1835,1816,1795,1771,1748,1725,1704,
+1681,1658,1635,1612,1590,1569,1551,1534,1518,1503,1487,1469,1451,1430,1408,1385,1362,1339,1315,1293,
+1270,1247,1225,1202,1177,1153,1130,1106,1082,1058,1033,1007,983,959,938,919,902,884,867,849,
+830,812,794,776,760,744,729,716,704,693,682,668,652,634,614,593,571,547,522,497,
+473,451,430,415,403,390,380,373,365,358,349,339,331,322,311,301,292,282,274,269,
+265,264,267,272,282,298,319,344,365,385,405,411,396,371,348,328,298,265,243,227,
+205,177,143,102,57,17,-19,-51,-80,-105,-127,-148,-165,-178,-193,-210,-227,-241,-249,-258,
+-268,-280,-293,-305,-313,-319,-326,-335,-347,-359,-367,-374,-383,-395,-406,-416,-424,-432,-439,-446,
+-453,-460,-465,-470,-478,-488,-500,-512,-522,-530,-539,-546,-550,-557,-567,-579,-592,-606,-620,-632,
+-644,-655,-666,-676,-687,-700,-712,-724,-733,-741,-748,-757,-765,-772,-779,-786,-796,-806,-813,-817,
+-816,-813,-808,-804,-803,-803,-805,-808,-805,-800,-794,-790,-787,-784,-784,-785,-787,-791,-794,-796,
+-800,-806,-813,-821,-831,-840,-851,-863,-874,-884,-891,-897,-902,-908,-914,-919,-925,-930,-935,-940,
+-945,-949,-955,-960,-965,-971,-975,-979,-983,-986,-989,-990,-990,-990,-990,-990,-991,-992,-991,-986,
+-979,-969,-958,-946,-936,-928,-925,-926,-928,-932,-933,-936,-943,-955,-970,-982,-991,-1000,-1010,-1022,
+-1036,-1050,-1066,-1083,-1096,-1106,-1115,-1123,-1129,-1130,-1128,-1124,-1117,-1106,-1092,-1078,-1063,-1048,-1031,-1014,
+-998,-985,-979,-977,-977,-978,-981,-987,-997,-1007,-1015,-1020,-1021,-1020,-1018,-1014,-1010,-1005,-999,-993,
+-986,-978,-971,-962,-953,-945,-935,-925,-916,-906,-895,-885,-878,-870,-860,-850,-841,-832,-825,-821,
+-821,-821,-815,-800,-781,-766,-758,-749,-737,-728,-724,-724,-726,-726,-724,-723,-722,-719,-714,-708,
+-700,-691,-682,-675,-668,-663,-658,-654,-647,-640,-633,-625,-619,-614,-608,-604,-602,-598,-592,-587,
+-583,-581,-580,-579,-576,-571,-567,-566,-567,-565,-558,-545,-533,-525,-522,-520,-515,-505,-490,-473,
+-456,-443,-434,-431,-431,-431,-430,-428,-422,-411,-396,-381,-366,-352,-338,-323,-308,-291,-279,-272,
+-265,-254,-236,-215,-196,-181,-171,-164,-157,-154,-151,-146,-135,-124,-117,-114,-110,-103,-91,-75,
+-55,-35,-18,-5,3,10,16,22,27,30,33,35,37,39,41,42,42,44,50,58,
+67,75,82,88,94,97,95,90,84,81,79,79,79,80,82,87,92,96,98,96,
+94,93,92,91,90,90,89,88,88,85,81,76,74,73,75,79,84,87,88,89,
+89,89,88,86,84,81,77,73,71,70,72,76,82,88,91,91,88,85,83,81,
+81,82,84,86,87,88,87,87,88,89,89,90,90,94,98,103,109,115,121,127,
+134,139,144,147,151,156,161,167,173,178,183,187,189,190,188,185,181,174,168,162,
+155,149,145,140,137,137,140,143,147,151,153,155,155,153,152,150,147,144,140,137,
+135,135,135,136,138,141,143,144,145,144,141,137,133,128,126,125,126,128,128,128,
+127,126,124,122,120,117,114,112,110,107,104,103,102,102,102,102,101,101,101,102,
+103,104,105,106,108,111,114,120,126,134,145,156,168,182,197,212,228,245,263,280,
+297,312,325,336,344,350,353,353,350,344,333,316,293,264,232,198,168,143,119,97,
+78,62,53,51,55,60,65,69,71,67,57,45,31,14,-5,-23,-39,-53,-66,-75,
+-80,-83,-92,-115,-144,-173,-199,-225,-253,-287,-328,-369,-406,-432,-445,-449,-450,-445,-441,-438,
+-436,-436,-434,-433,-433,-435,-436,-437,-439,-442,-445,-450,-453,-456,-462,-469,-477,-484,-493,-502,
+-506,-510,-514,-518,-524,-527,-530,-534,-537,-539,-541,-544,-548,-552,-558,-564,-569,-573,-578,-583,
+-589,-596,-603,-611,-619,-628,-637,-646,-654,-663,-673,-685,-698,-713,-730,-743,-755,-763,-770,-777,
+-784,-793,-803,-815,-826,-836,-846,-855,-864,-874,-882,-889,-898,-907,-916,-925,-934,-943,-953,-961,
+-967,-972,-975,-976,-977,-977,-974,-970,-962,-953,-941,-928,-912,-893,-873,-848,-819,-789,-758,-726,
+-688,-647,-604,-556,-506,-460,-417,-388,-379,-388,-410,-443,-480,-522,-570,-622,-674,-725,-772,-814,
+-848,-875,-896,-914,-931,-948,-962,-973,-982,-986,-988,-989,-990,-992,-994,-1000,-1014,-1037,-1063,-1091,
+-1118,-1145,-1170,-1192,-1208,-1219,-1227,-1232,-1237,-1238,-1232,-1227,-1228,-1240,-1262,-1292,-1322,-1347,-1370,-1392,
+-1410,-1424,-1437,-1448,-1455,-1460,-1463,-1463,-1461,-1458,-1457,-1457,-1460,-1467,-1478,-1490,-1504,-1518,-1531,-1542,
+-1552,-1561,-1571,-1580,-1589,-1596,-1603,-1608,-1612,-1615,-1619,-1622,-1624,-1627,-1630,-1633,-1636,-1637,-1637,-1636,
+-1633,-1630,-1624,-1617,-1608,-1598,-1586,-1572,-1556,-1541,-1526,-1512,-1499,-1484,-1470,-1455,-1439,-1422,-1402,-1382,
+-1361,-1339,-1318,-1295,-1273,-1250,-1227,-1204,-1184,-1167,-1151,-1138,-1127,-1120,-1113,-1110,-1108,-1101,-1086,-1068,
+-1050,-1035,-1018,-998,-979,-961,-945,-932,-921,-911,-902,-898,-896,-894,-892,-889,-886,-884,-881,-875,
+-865,-855,-848,-844,-840,-835,-830,-827,-823,-817,-811,-803,-793,-780,-763,-745,-722,-694,-665,-634,
+-599,-565,-533,-505,-479,-454,-434,-417,-401,-387,-371,-350,-329,-305,-280,-256,-231,-202,-169,-135,
+-97,-54,-13,25,65,108,155,201,244,288,333,381,434,492,559,632,711,792,872,945,
+1008,1062,1108,1149,1188,1224,1259,1293,1327,1359,1389,1418,1447,1477,1507,1537,1565,1589,1612,1632,
+1649,1663,1672,1679,1685,1690,1694,1698,1704,1712,1719,1728,1739,1749,1761,1775,1793,1814,1840,1869,
+1901,1933,1966,1999,2028,2052,2070,2077,2072,2055,2030,1997,1960,1920,1886,1862,1847,1838,1833,1831,
+1831,1830,1826,1823,1834,1859,1898,1949,2014,2079,2123,2147,2167,2187,2213,2243,2267,2291,2320,2347,
+2373,2406,2449,2493,2538,2587,2635,2677,2716,2752,2790,2831,2876,2920,2959,2996,3032,3070,3108,3144,
+3180,3213,3242,3264,3280,3296,3315,3334,3352,3369,3387,3404,3420,3436,3450,3464,3477,3491,3506,3523,
+3542,3561,3579,3594,3610,3629,3644,3653,3657,3662,3673,3689,3703,3713,3718,3720,3724,3733,3746,3759,
+3767,3772,3774,3775,3778,3786,3800,3820,3840,3859,3873,3885,3896,3908,3922,3942,3968,4000,4033,4063,
+4087,4103,4119,4139,4162,4189,4215,4246,4288,4336,4384,4423,4454,4474,4483,4487,4488,4493,4500,4514,
+4542,4579,4628,4678,4712,4724,4720,4702,4678,4666,4670,4680,4691,4703,4708,4706,4698,4686,4677,4680,
+4694,4705,4718,4743,4775,4811,4838,4850,4866,4888,4890,4877,4873,4873,4858,4838,4820,4825,4865,4905,
+4922,4919,4895,4875,4882,4907,4925,4925,4923,4937,4958,4976,4991,4999,5007,5015,5024,5034,5045,5055,
+5061,5067,5071,5073,5071,5062,5042,5009,4970,4935,4906,4884,4867,4853,4841,4832,4823,4817,4813,4808,
+4805,4801,4795,4790,4786,4783,4781,4778,4772,4767,4763,4761,4758,4754,4750,4746,4744,4744,4744,4744,
+4741,4737,4734,4732,4733,4731,4725,4720,4713,4702,4695,4695,4693,4688,4679,4665,4653,4644,4636,4631,
+4624,4614,4609,4601,4591,4658,4644,4627,4613,4598,4587,4577,4572,4571,4566,4555,4545,4536,4529,4526,
+4527,4525,4522,4520,4521,4525,4533,4543,4546,4550,4562,4566,4570,4577,4573,4565,4546,4509,4460,4399,
+4351,4335,4333,4331,4325,4312,4294,4274,4251,4228,4205,4181,4159,4137,4116,4093,4065,4035,4009,3986,
+3963,3940,3918,3896,3873,3849,3828,3810,3792,3774,3753,3727,3695,3652,3599,3541,3492,3453,3415,3377,
+3339,3299,3254,3211,3169,3123,3076,3029,2985,2944,2906,2870,2834,2799,2766,2731,2692,2652,2613,2575,
+2541,2510,2481,2453,2426,2401,2377,2356,2336,2318,2299,2280,2262,2243,2221,2198,2174,2149,2121,2091,
+2063,2036,2009,1985,1965,1946,1928,1913,1896,1878,1862,1846,1830,1813,1797,1780,1763,1744,1723,1701,
+1681,1660,1639,1617,1594,1573,1550,1525,1504,1488,1472,1457,1443,1428,1411,1392,1372,1349,1327,1304,
+1280,1257,1233,1210,1187,1163,1139,1114,1088,1062,1035,1008,984,960,937,917,898,879,860,841,
+819,799,781,764,746,730,715,702,688,677,666,654,640,625,609,590,570,550,529,507,
+485,465,445,425,409,393,379,368,356,346,336,325,315,307,300,294,288,283,280,278,
+279,282,286,298,324,346,360,373,378,376,375,374,374,364,334,302,272,240,215,193,
+165,133,101,67,33,-2,-39,-73,-102,-128,-147,-166,-184,-199,-213,-229,-244,-258,-270,-278,
+-288,-301,-312,-322,-331,-338,-348,-361,-371,-379,-388,-399,-411,-422,-432,-441,-450,-460,-467,-475,
+-483,-491,-500,-506,-511,-518,-523,-529,-533,-537,-541,-547,-553,-560,-570,-580,-590,-602,-615,-631,
+-648,-666,-682,-693,-700,-706,-710,-716,-725,-736,-745,-755,-765,-775,-784,-792,-801,-810,-818,-824,
+-828,-830,-830,-830,-831,-831,-830,-827,-824,-819,-815,-812,-811,-812,-812,-814,-817,-820,-826,-835,
+-846,-860,-874,-884,-896,-911,-924,-937,-950,-961,-972,-981,-991,-999,-1004,-1010,-1013,-1016,-1016,-1015,
+-1014,-1013,-1013,-1016,-1020,-1024,-1026,-1029,-1031,-1032,-1034,-1037,-1039,-1039,-1036,-1031,-1022,-1013,-1003,-993,
+-984,-975,-965,-955,-947,-944,-944,-946,-952,-961,-973,-989,-1004,-1016,-1025,-1036,-1048,-1058,-1068,-1076,
+-1084,-1093,-1103,-1114,-1125,-1134,-1138,-1140,-1142,-1143,-1142,-1135,-1124,-1112,-1099,-1087,-1076,-1065,-1057,-1053,
+-1053,-1055,-1058,-1061,-1064,-1067,-1072,-1078,-1084,-1089,-1090,-1091,-1091,-1092,-1094,-1095,-1094,-1090,-1085,-1079,
+-1074,-1069,-1063,-1056,-1046,-1035,-1024,-1015,-1008,-1001,-992,-983,-974,-963,-952,-940,-927,-914,-902,-891,
+-881,-875,-869,-869,-865,-851,-833,-816,-801,-788,-778,-770,-764,-763,-764,-764,-763,-761,-758,-753,
+-747,-740,-733,-726,-718,-710,-704,-699,-693,-686,-681,-677,-673,-671,-669,-666,-663,-658,-650,-640,
+-631,-622,-616,-614,-614,-614,-612,-606,-599,-594,-589,-584,-580,-575,-571,-571,-569,-564,-552,-535,
+-517,-503,-493,-487,-483,-481,-478,-474,-467,-459,-447,-432,-417,-401,-386,-374,-363,-352,-341,-330,
+-317,-303,-290,-276,-258,-237,-216,-199,-186,-175,-166,-160,-155,-153,-156,-156,-147,-130,-111,-97,
+-88,-82,-74,-60,-43,-29,-19,-10,-4,1,6,12,17,21,27,31,35,39,45,53,
+62,71,78,84,88,90,92,94,94,92,88,85,85,86,89,93,94,96,99,101,
+102,102,101,99,96,91,85,80,77,76,75,75,75,76,79,84,89,94,99,102,
+104,105,106,107,107,104,99,96,94,93,92,93,95,97,101,104,104,101,98,95,
+92,90,86,83,81,81,83,85,88,91,97,103,107,111,114,116,119,122,125,128,
+131,136,141,145,151,159,169,177,184,189,193,197,200,205,209,212,213,212,208,203,
+198,193,190,189,188,187,184,182,182,180,179,178,175,171,168,164,159,155,153,151,
+149,148,148,149,151,155,160,163,165,166,165,162,156,151,147,143,139,136,134,132,
+128,124,122,120,120,119,117,113,107,103,100,97,94,92,90,88,86,85,83,81,
+79,78,78,79,79,79,79,80,82,85,90,96,104,114,125,136,147,159,171,186,
+202,219,235,251,266,277,287,294,300,302,301,295,285,271,251,225,196,167,141,121,
+107,98,91,85,81,80,80,81,83,85,85,83,79,72,60,44,24,2,-19,-41,
+-65,-94,-131,-174,-212,-245,-281,-321,-354,-379,-400,-419,-434,-444,-451,-456,-459,-459,-460,-464,
+-469,-473,-477,-480,-481,-481,-481,-481,-481,-480,-481,-483,-486,-490,-494,-500,-507,-516,-526,-533,
+-536,-540,-545,-550,-555,-560,-565,-571,-576,-579,-581,-584,-586,-589,-593,-597,-601,-606,-612,-618,
+-622,-627,-633,-640,-647,-654,-661,-667,-674,-682,-690,-698,-707,-717,-729,-743,-755,-768,-778,-786,
+-792,-800,-807,-816,-825,-834,-844,-853,-862,-871,-879,-888,-896,-904,-914,-924,-934,-942,-951,-958,
+-965,-970,-975,-979,-981,-983,-984,-983,-979,-974,-967,-958,-947,-935,-919,-899,-876,-850,-822,-793,
+-762,-726,-686,-642,-596,-552,-511,-475,-451,-447,-460,-483,-512,-545,-582,-627,-675,-721,-764,-799,
+-830,-854,-873,-892,-912,-931,-944,-953,-962,-968,-972,-976,-983,-991,-997,-1003,-1009,-1019,-1035,-1054,
+-1078,-1100,-1118,-1135,-1146,-1154,-1155,-1153,-1154,-1155,-1153,-1151,-1145,-1145,-1157,-1174,-1200,-1231,-1271,-1320,
+-1363,-1395,-1420,-1442,-1460,-1473,-1483,-1490,-1497,-1503,-1507,-1514,-1522,-1531,-1542,-1555,-1568,-1581,-1593,-1602,
+-1609,-1615,-1620,-1625,-1631,-1637,-1641,-1644,-1646,-1648,-1651,-1654,-1656,-1658,-1659,-1661,-1663,-1664,-1665,-1665,
+-1664,-1663,-1661,-1658,-1655,-1652,-1647,-1640,-1633,-1624,-1616,-1607,-1597,-1586,-1575,-1562,-1550,-1536,-1521,-1503,
+-1485,-1464,-1441,-1417,-1393,-1368,-1345,-1321,-1296,-1270,-1243,-1217,-1197,-1185,-1183,-1185,-1184,-1180,-1170,-1154,
+-1137,-1122,-1111,-1090,-1058,-1030,-1006,-982,-963,-954,-948,-940,-930,-926,-925,-925,-927,-924,-917,-912,
+-907,-907,-913,-914,-912,-911,-912,-912,-908,-904,-899,-891,-881,-870,-858,-845,-830,-813,-794,-774,
+-753,-729,-706,-685,-664,-645,-629,-612,-596,-579,-561,-545,-529,-514,-499,-483,-465,-446,-428,-406,
+-374,-342,-313,-281,-246,-205,-157,-100,-38,25,91,160,226,288,349,413,485,560,639,721,
+801,874,940,999,1053,1102,1145,1185,1221,1253,1285,1316,1347,1378,1409,1439,1468,1497,1526,1554,
+1578,1599,1617,1631,1642,1650,1657,1663,1670,1676,1681,1689,1699,1711,1725,1741,1760,1781,1806,1835,
+1868,1904,1945,1991,2040,2087,2131,2165,2182,2184,2175,2153,2119,2079,2039,2003,1972,1947,1926,1909,
+1893,1876,1858,1838,1823,1823,1846,1887,1941,2005,2070,2123,2160,2183,2200,2216,2236,2261,2290,2320,
+2355,2399,2441,2477,2515,2555,2594,2634,2673,2711,2747,2779,2808,2842,2887,2937,2983,3027,3071,3113,
+3151,3183,3213,3243,3270,3294,3317,3340,3363,3384,3403,3420,3435,3451,3468,3488,3505,3519,3527,3537,
+3554,3575,3600,3622,3638,3647,3654,3663,3671,3676,3686,3700,3718,3735,3746,3752,3753,3754,3758,3767,
+3778,3785,3790,3793,3797,3805,3816,3830,3846,3865,3883,3902,3922,3947,3976,4010,4048,4089,4129,4172,
+4213,4249,4280,4304,4319,4328,4334,4346,4362,4387,4418,4449,4482,4514,4543,4563,4573,4578,4581,4588,
+4601,4619,4644,4674,4707,4741,4764,4776,4787,4797,4804,4800,4790,4783,4770,4742,4717,4712,4720,4730,
+4733,4733,4745,4764,4786,4809,4826,4844,4868,4885,4891,4893,4898,4902,4900,4892,4864,4840,4850,4872,
+4890,4908,4916,4919,4926,4937,4957,4979,4999,5015,5021,5032,5056,5077,5089,5098,5109,5118,5128,5136,
+5142,5143,5137,5126,5112,5089,5059,5029,5000,4975,4954,4936,4921,4909,4899,4892,4884,4876,4868,4863,
+4859,4856,4852,4846,4838,4832,4827,4824,4821,4818,4817,4815,4811,4808,4804,4800,4796,4792,4789,4789,
+4786,4783,4780,4777,4775,4769,4759,4749,4741,4738,4736,4732,4726,4721,4719,4716,4715,4718,4716,4707,
+4699,4691,4685,4678,4669,4658,4694,4689,4684,4676,4665,4653,4641,4632,4627,4623,4622,4620,4616,4610,
+4606,4607,4610,4612,4612,4612,4616,4616,4618,4624,4628,4630,4626,4614,4607,4599,4574,4536,4492,4441,
+4399,4381,4373,4365,4359,4350,4334,4313,4290,4269,4249,4230,4210,4192,4175,4156,4136,4116,4090,4060,
+4026,3994,3964,3939,3918,3900,3882,3866,3849,3824,3789,3749,3708,3664,3618,3563,3509,3464,3421,3376,
+3331,3285,3239,3196,3151,3103,3054,3005,2962,2924,2888,2852,2819,2788,2756,2722,2686,2648,2610,2574,
+2538,2501,2467,2439,2415,2392,2370,2350,2330,2312,2294,2274,2254,2234,2212,2190,2167,2144,2119,2094,
+2069,2044,2018,1994,1971,1950,1930,1911,1891,1871,1851,1832,1814,1795,1779,1763,1745,1725,1704,1682,
+1658,1635,1616,1596,1578,1561,1547,1533,1518,1501,1484,1464,1444,1428,1410,1393,1376,1356,1335,1312,
+1289,1265,1240,1214,1188,1162,1136,1111,1085,1060,1034,1009,985,961,936,914,893,872,852,833,
+812,791,772,754,736,720,705,691,677,663,650,637,624,610,595,580,562,543,523,502,
+480,459,437,415,396,379,362,347,335,324,314,306,298,291,286,281,278,278,280,285,
+293,305,321,338,348,349,356,371,387,401,401,389,376,357,327,290,252,217,182,147,
+113,83,54,24,-4,-32,-60,-87,-111,-137,-161,-181,-197,-211,-227,-246,-264,-278,-289,-301,
+-313,-324,-333,-342,-350,-357,-367,-379,-389,-396,-406,-415,-425,-436,-445,-457,-470,-478,-488,-497,
+-507,-517,-524,-531,-538,-543,-547,-550,-553,-559,-566,-570,-574,-581,-589,-598,-608,-620,-632,-644,
+-657,-669,-679,-686,-692,-696,-698,-703,-711,-719,-730,-740,-750,-761,-773,-784,-796,-806,-814,-821,
+-827,-833,-838,-841,-845,-848,-851,-853,-854,-854,-855,-854,-854,-858,-864,-870,-875,-882,-892,-903,
+-916,-930,-945,-959,-973,-986,-999,-1010,-1018,-1027,-1038,-1049,-1060,-1069,-1074,-1076,-1075,-1071,-1066,-1061,
+-1056,-1052,-1048,-1048,-1049,-1048,-1045,-1045,-1048,-1053,-1053,-1050,-1044,-1039,-1034,-1027,-1017,-1003,-988,-973,
+-964,-963,-966,-967,-966,-963,-961,-962,-967,-979,-995,-1014,-1032,-1048,-1061,-1072,-1081,-1088,-1094,-1100,
+-1105,-1109,-1113,-1118,-1122,-1126,-1132,-1135,-1135,-1130,-1121,-1109,-1094,-1079,-1066,-1055,-1047,-1045,-1047,-1055,
+-1066,-1080,-1095,-1109,-1124,-1137,-1147,-1155,-1162,-1166,-1166,-1165,-1161,-1155,-1150,-1143,-1135,-1128,-1120,-1114,
+-1109,-1106,-1103,-1098,-1094,-1088,-1079,-1069,-1060,-1052,-1048,-1041,-1034,-1026,-1019,-1010,-998,-986,-972,-958,
+-947,-936,-926,-916,-906,-898,-897,-897,-892,-883,-872,-863,-853,-840,-827,-817,-809,-803,-796,-788,
+-779,-770,-762,-757,-754,-752,-746,-739,-731,-724,-717,-714,-712,-712,-713,-713,-710,-706,-702,-695,
+-684,-671,-657,-646,-639,-636,-635,-630,-625,-620,-615,-611,-608,-606,-605,-603,-602,-600,-598,-593,
+-582,-568,-555,-545,-539,-535,-532,-527,-519,-509,-498,-484,-469,-454,-439,-424,-408,-394,-381,-368,
+-356,-346,-337,-328,-316,-304,-290,-270,-247,-227,-212,-202,-194,-187,-181,-177,-175,-174,-169,-160,
+-143,-118,-94,-75,-61,-49,-39,-32,-24,-18,-14,-10,-6,-1,3,9,17,28,38,44,
+51,57,65,73,79,84,87,90,92,91,90,91,95,98,103,107,110,112,114,116,
+116,115,114,113,111,109,107,104,100,96,91,87,86,89,93,96,100,102,105,107,
+108,110,111,113,114,114,112,110,107,106,107,109,111,113,114,115,115,116,116,115,
+114,110,106,101,97,95,95,96,98,103,108,113,117,122,128,131,133,134,135,135,
+133,131,130,133,138,146,158,171,182,190,194,197,201,205,210,215,219,224,226,224,
+218,211,208,207,208,213,220,225,227,227,225,221,216,210,204,198,193,186,180,175,
+170,169,168,169,172,175,179,182,186,188,187,184,180,176,170,165,161,158,155,151,
+146,142,138,135,135,135,134,132,129,125,121,116,110,104,98,91,86,81,77,72,
+68,65,61,59,58,57,57,56,57,57,57,57,60,64,70,77,84,91,100,109,
+120,131,145,160,174,187,200,211,220,228,233,235,232,225,215,200,181,160,140,121,
+107,96,89,83,79,76,73,69,64,60,56,53,50,43,38,32,22,9,-5,-26,
+-58,-101,-149,-198,-248,-293,-331,-357,-371,-378,-385,-393,-400,-406,-415,-424,-434,-443,-447,-451,
+-460,-468,-477,-487,-493,-497,-501,-504,-507,-511,-515,-519,-524,-529,-534,-538,-543,-549,-555,-562,
+-570,-578,-586,-592,-597,-601,-606,-610,-615,-620,-625,-628,-630,-632,-633,-636,-639,-641,-644,-648,
+-654,-660,-664,-669,-674,-679,-685,-693,-701,-707,-712,-719,-726,-733,-742,-751,-761,-773,-785,-795,
+-804,-810,-815,-820,-825,-832,-839,-847,-855,-862,-870,-878,-888,-897,-905,-913,-921,-929,-937,-945,
+-952,-959,-966,-970,-974,-978,-981,-983,-983,-980,-976,-972,-965,-957,-946,-931,-915,-896,-873,-848,
+-820,-790,-757,-719,-676,-634,-596,-561,-535,-520,-520,-536,-560,-590,-627,-667,-708,-746,-779,-810,
+-836,-856,-875,-895,-915,-932,-945,-955,-961,-967,-971,-976,-981,-983,-989,-999,-1010,-1019,-1027,-1038,
+-1051,-1067,-1085,-1098,-1102,-1100,-1101,-1101,-1099,-1092,-1084,-1085,-1095,-1107,-1117,-1131,-1150,-1172,-1196,-1225,
+-1256,-1290,-1330,-1373,-1410,-1438,-1461,-1481,-1498,-1514,-1529,-1543,-1557,-1570,-1583,-1595,-1607,-1617,-1626,-1634,
+-1641,-1649,-1658,-1666,-1674,-1681,-1688,-1695,-1702,-1709,-1716,-1723,-1730,-1735,-1740,-1743,-1744,-1744,-1741,-1736,
+-1729,-1724,-1721,-1719,-1717,-1717,-1721,-1727,-1732,-1736,-1738,-1739,-1735,-1727,-1715,-1700,-1683,-1666,-1649,-1632,
+-1614,-1595,-1571,-1542,-1511,-1479,-1448,-1422,-1405,-1387,-1363,-1340,-1317,-1297,-1279,-1270,-1264,-1256,-1257,-1258,
+-1244,-1223,-1199,-1168,-1138,-1113,-1087,-1056,-1028,-1008,-993,-980,-971,-965,-960,-952,-941,-934,-927,-922,
+-915,-910,-910,-912,-928,-951,-958,-954,-948,-940,-928,-911,-893,-874,-854,-832,-806,-788,-775,-756,
+-738,-724,-712,-706,-702,-694,-692,-692,-680,-658,-635,-612,-590,-566,-537,-512,-492,-472,-451,-435,
+-417,-391,-357,-312,-270,-238,-206,-170,-130,-73,-7,56,124,199,265,316,361,408,461,519,
+582,655,735,814,887,952,1014,1071,1124,1172,1215,1255,1291,1323,1354,1381,1407,1430,1447,1462,
+1479,1497,1516,1535,1551,1566,1583,1599,1613,1624,1633,1642,1653,1666,1681,1696,1714,1736,1760,1786,
+1817,1853,1893,1937,1983,2030,2083,2139,2193,2237,2263,2274,2272,2257,2231,2203,2174,2148,2121,2085,
+2042,1995,1949,1910,1871,1839,1826,1836,1864,1903,1948,1994,2041,2091,2133,2162,2187,2212,2241,2274,
+2302,2327,2360,2404,2452,2498,2539,2572,2600,2631,2666,2702,2743,2783,2827,2875,2926,2981,3035,3085,
+3130,3167,3201,3231,3261,3293,3323,3350,3373,3393,3411,3428,3446,3464,3484,3505,3527,3545,3559,3567,
+3572,3577,3586,3599,3613,3625,3636,3652,3670,3689,3706,3723,3742,3759,3774,3784,3790,3795,3800,3806,
+3814,3823,3834,3847,3860,3874,3888,3903,3919,3934,3948,3962,3982,4008,4043,4090,4146,4204,4257,4308,
+4356,4398,4431,4455,4475,4487,4490,4486,4479,4475,4479,4495,4519,4545,4577,4604,4628,4654,4676,4693,
+4707,4722,4740,4759,4781,4804,4814,4809,4797,4789,4778,4765,4761,4757,4751,4758,4777,4796,4819,4853,
+4877,4873,4869,4875,4871,4868,4876,4885,4883,4873,4894,4943,4979,5000,5011,5011,4995,4983,4981,4981,
+5007,5037,5043,5049,5050,5046,5048,5064,5086,5105,5114,5113,5110,5118,5132,5147,5163,5180,5191,5199,
+5204,5205,5197,5176,5149,5120,5091,5066,5043,5024,5009,4996,4985,4975,4965,4956,4949,4941,4934,4925,
+4917,4911,4905,4900,4895,4891,4891,4890,4888,4888,4886,4881,4874,4869,4863,4859,4859,4857,4855,4850,
+4844,4837,4831,4830,4830,4826,4825,4826,4827,4830,4830,4828,4823,4817,4812,4806,4798,4789,4779,4768,
+4759,4751,4742,4729,4714,4702,4694,4761,4751,4742,4732,4725,4719,4710,4703,4702,4706,4707,4710,4711,
+4708,4707,4709,4712,4716,4713,4708,4703,4696,4681,4670,4665,4655,4638,4619,4592,4551,4513,4485,4466,
+4452,4434,4419,4410,4397,4381,4363,4345,4328,4310,4292,4274,4255,4239,4222,4203,4187,4172,4156,4138,
+4119,4091,4055,4020,3988,3961,3938,3914,3884,3846,3808,3771,3732,3687,3638,3589,3538,3487,3435,3381,
+3332,3281,3231,3183,3132,3081,3036,2996,2959,2924,2893,2863,2834,2804,2774,2742,2709,2673,2632,2591,
+2549,2510,2474,2442,2416,2395,2375,2354,2332,2309,2285,2263,2243,2223,2202,2180,2156,2133,2111,2088,
+2065,2040,2017,1995,1973,1953,1933,1914,1893,1872,1852,1831,1812,1794,1774,1753,1731,1709,1688,1664,
+1638,1613,1590,1570,1550,1533,1521,1513,1506,1500,1493,1484,1474,1459,1438,1415,1391,1368,1345,1322,
+1297,1273,1249,1225,1199,1172,1142,1114,1086,1058,1033,1009,984,960,938,916,894,873,852,831,
+811,789,770,750,732,715,698,682,666,652,638,624,610,595,579,562,544,525,506,486,
+464,440,415,391,368,347,327,310,296,285,279,274,271,269,268,266,264,265,267,269,
+273,283,301,324,342,356,370,389,407,408,398,400,396,364,323,280,233,192,151,113,
+84,56,29,1,-26,-54,-81,-105,-127,-151,-176,-200,-222,-242,-258,-274,-289,-301,-314,-326,
+-337,-348,-359,-372,-387,-400,-411,-422,-432,-439,-445,-451,-456,-459,-465,-476,-488,-500,-513,-529,
+-544,-554,-562,-569,-572,-571,-568,-567,-570,-574,-583,-599,-612,-620,-628,-636,-647,-659,-671,-682,
+-692,-698,-702,-704,-705,-706,-708,-713,-719,-725,-732,-741,-751,-763,-776,-786,-796,-803,-808,-811,
+-813,-818,-824,-827,-829,-830,-832,-835,-838,-841,-843,-844,-846,-849,-856,-865,-880,-896,-909,-923,
+-938,-951,-965,-980,-995,-1009,-1024,-1038,-1052,-1067,-1080,-1090,-1097,-1101,-1104,-1106,-1108,-1109,-1108,-1104,
+-1098,-1091,-1086,-1084,-1084,-1082,-1078,-1073,-1069,-1066,-1064,-1062,-1056,-1049,-1040,-1028,-1014,-1000,-989,-980,
+-976,-976,-979,-981,-982,-981,-978,-977,-979,-987,-1003,-1024,-1047,-1068,-1088,-1106,-1121,-1135,-1146,-1152,
+-1155,-1153,-1149,-1144,-1138,-1134,-1132,-1131,-1128,-1121,-1110,-1098,-1089,-1086,-1086,-1087,-1087,-1086,-1086,-1088,
+-1096,-1110,-1130,-1155,-1180,-1202,-1217,-1227,-1232,-1234,-1233,-1230,-1226,-1219,-1210,-1202,-1193,-1184,-1173,-1163,
+-1153,-1142,-1132,-1123,-1114,-1105,-1097,-1091,-1084,-1077,-1072,-1069,-1065,-1059,-1052,-1044,-1036,-1026,-1016,-1007,
+-996,-986,-977,-965,-952,-940,-927,-916,-906,-898,-891,-887,-885,-884,-886,-886,-884,-878,-868,-854,
+-838,-820,-803,-786,-771,-763,-760,-759,-759,-757,-751,-746,-740,-734,-733,-732,-732,-733,-733,-732,
+-730,-725,-716,-706,-696,-686,-677,-668,-660,-652,-648,-642,-635,-637,-636,-625,-615,-611,-609,-611,
+-611,-608,-604,-599,-594,-590,-584,-579,-572,-563,-550,-535,-519,-501,-486,-470,-453,-436,-418,-403,
+-389,-377,-366,-359,-353,-348,-341,-331,-316,-299,-283,-269,-258,-248,-236,-224,-212,-202,-193,-184,
+-178,-173,-164,-149,-125,-97,-70,-50,-40,-31,-24,-17,-12,-9,-5,-1,6,16,25,34,
+40,43,47,52,56,60,64,68,71,73,73,75,77,82,88,95,104,108,110,112,
+113,112,112,112,111,110,109,109,108,108,107,106,104,102,103,104,104,105,105,106,
+105,104,105,107,108,109,110,111,113,114,113,114,116,119,119,119,119,121,125,128,
+129,128,125,124,123,121,120,121,123,125,128,128,128,128,130,133,136,137,136,135,
+133,131,130,130,133,135,139,146,157,172,185,197,205,210,214,220,226,231,235,238,
+235,231,228,229,231,236,240,243,246,248,249,250,249,245,236,227,217,208,199,190,
+184,182,183,187,192,196,202,208,213,215,212,206,200,192,185,180,177,176,177,176,
+171,164,159,158,160,163,165,165,164,160,156,150,143,135,127,120,111,101,93,85,
+79,74,68,63,59,55,52,49,47,45,44,43,42,42,43,45,46,48,50,53,
+57,63,69,75,83,90,97,106,116,125,134,141,146,147,146,140,129,115,101,88,
+78,71,66,62,58,54,48,43,39,35,31,27,24,22,23,22,19,15,8,0,
+-14,-35,-60,-96,-150,-208,-250,-276,-294,-305,-312,-318,-326,-335,-346,-358,-374,-392,-410,-428,
+-441,-448,-452,-456,-459,-464,-474,-486,-497,-509,-520,-532,-543,-552,-559,-565,-573,-582,-591,-600,
+-609,-616,-623,-631,-639,-647,-653,-660,-667,-672,-676,-678,-680,-682,-683,-684,-685,-686,-687,-689,
+-692,-695,-698,-701,-705,-708,-712,-717,-723,-729,-735,-740,-744,-749,-754,-760,-768,-778,-789,-799,
+-809,-818,-823,-826,-828,-831,-835,-840,-844,-850,-855,-861,-867,-874,-881,-888,-896,-903,-910,-918,
+-925,-935,-943,-949,-952,-957,-961,-963,-965,-965,-964,-960,-954,-947,-939,-930,-918,-904,-888,-869,
+-848,-825,-800,-774,-744,-709,-674,-644,-616,-596,-591,-599,-620,-650,-687,-725,-763,-798,-827,-850,
+-867,-880,-896,-915,-934,-950,-962,-971,-977,-981,-981,-980,-975,-969,-967,-971,-980,-991,-1007,-1021,
+-1030,-1038,-1049,-1058,-1060,-1062,-1067,-1072,-1076,-1080,-1080,-1079,-1086,-1099,-1112,-1124,-1140,-1161,-1183,-1208,
+-1237,-1267,-1294,-1316,-1341,-1374,-1411,-1442,-1469,-1493,-1515,-1537,-1560,-1581,-1603,-1624,-1644,-1663,-1680,-1695,
+-1709,-1720,-1732,-1744,-1757,-1770,-1782,-1794,-1805,-1817,-1827,-1837,-1846,-1851,-1855,-1856,-1858,-1860,-1859,-1854,
+-1844,-1835,-1830,-1823,-1817,-1814,-1813,-1816,-1821,-1834,-1848,-1856,-1859,-1856,-1845,-1829,-1808,-1787,-1766,-1743,
+-1720,-1697,-1672,-1649,-1627,-1597,-1561,-1530,-1501,-1470,-1442,-1413,-1388,-1371,-1360,-1353,-1347,-1338,-1331,-1329,
+-1323,-1311,-1288,-1252,-1209,-1163,-1121,-1089,-1063,-1046,-1035,-1024,-1013,-1003,-994,-984,-974,-964,-953,-946,
+-943,-943,-945,-957,-978,-991,-992,-986,-975,-959,-938,-914,-887,-853,-818,-791,-781,-778,-774,-774,
+-777,-780,-783,-789,-810,-836,-848,-835,-809,-769,-713,-659,-602,-534,-479,-449,-427,-405,-381,-362,
+-355,-349,-347,-325,-254,-166,-85,-10,44,92,140,175,213,267,332,389,428,458,466,459,
+473,509,558,625,703,782,857,926,993,1055,1112,1162,1206,1247,1284,1318,1346,1371,1393,1413,
+1431,1447,1460,1471,1480,1486,1492,1500,1511,1521,1532,1546,1562,1579,1597,1616,1639,1663,1690,1718,
+1745,1773,1805,1842,1884,1930,1978,2027,2077,2127,2176,2222,2265,2303,2336,2365,2386,2393,2384,2352,
+2294,2213,2122,2037,1966,1914,1878,1858,1854,1862,1879,1903,1927,1953,1989,2039,2092,2137,2173,2210,
+2246,2279,2310,2339,2373,2416,2456,2483,2508,2550,2600,2648,2693,2736,2781,2829,2878,2931,2984,3035,
+3084,3130,3172,3210,3244,3276,3309,3343,3375,3404,3429,3452,3475,3496,3519,3540,3561,3579,3594,3604,
+3611,3615,3619,3626,3638,3653,3669,3683,3696,3706,3715,3726,3742,3763,3786,3805,3819,3828,3838,3851,
+3867,3883,3900,3918,3936,3954,3970,3986,4005,4026,4045,4062,4079,4099,4125,4157,4198,4250,4305,4355,
+4405,4455,4498,4530,4555,4576,4592,4598,4595,4588,4581,4582,4592,4608,4634,4658,4679,4701,4724,4749,
+4768,4789,4810,4824,4832,4824,4798,4767,4746,4732,4723,4731,4751,4759,4771,4797,4810,4804,4789,4811,
+4884,4941,4974,4998,5000,4989,4957,4920,4898,4876,4869,4899,4950,4992,5009,5009,5010,5020,5039,5057,
+5072,5101,5124,5127,5132,5141,5145,5146,5148,5151,5157,5164,5166,5176,5192,5204,5218,5231,5243,5251,
+5257,5258,5252,5234,5204,5171,5140,5115,5094,5074,5058,5043,5031,5022,5015,5005,4997,4993,4987,4979,
+4973,4967,4961,4958,4956,4955,4953,4953,4960,4979,5001,4996,4968,4946,4934,4930,4930,4930,4930,4929,
+4929,4928,4921,4913,4910,4908,4906,4906,4902,4896,4891,4889,4887,4883,4874,4863,4852,4840,4831,4823,
+4817,4815,4807,4797,4793,4786,4773,4761,4814,4812,4814,4814,4812,4815,4814,4812,4813,4813,4809,4809,
+4812,4810,4805,4795,4782,4773,4762,4749,4737,4725,4703,4676,4653,4625,4593,4571,4558,4547,4540,4531,
+4518,4504,4481,4455,4435,4417,4396,4374,4352,4330,4311,4293,4276,4258,4242,4228,4214,4201,4189,4177,
+4166,4151,4134,4110,4075,4034,3995,3960,3928,3890,3850,3806,3760,3717,3670,3617,3563,3506,3450,3397,
+3343,3290,3238,3188,3140,3094,3053,3017,2988,2965,2943,2920,2893,2861,2827,2792,2754,2713,2668,2619,
+2566,2515,2478,2451,2429,2405,2381,2357,2334,2310,2284,2258,2233,2207,2186,2166,2143,2121,2100,2078,
+2056,2034,2011,1987,1962,1940,1919,1898,1877,1856,1838,1818,1799,1779,1757,1733,1709,1685,1662,1639,
+1615,1595,1580,1571,1569,1565,1555,1545,1537,1528,1518,1508,1497,1483,1464,1439,1411,1383,1358,1333,
+1308,1284,1262,1240,1218,1194,1165,1133,1099,1066,1037,1009,985,962,938,917,897,877,859,838,
+816,794,772,751,730,711,693,675,658,643,627,613,598,582,567,552,535,516,497,475,
+451,425,398,371,344,321,301,284,272,263,256,252,251,251,253,254,256,258,259,260,
+263,273,292,315,332,347,364,381,400,407,396,374,344,312,276,236,197,156,117,83,
+54,26,-3,-33,-60,-83,-105,-126,-147,-170,-193,-218,-242,-264,-287,-305,-316,-328,-340,-352,
+-364,-377,-389,-399,-413,-432,-450,-466,-480,-489,-497,-504,-509,-515,-521,-526,-533,-544,-555,-567,
+-580,-594,-605,-614,-622,-626,-621,-613,-609,-605,-606,-612,-623,-637,-652,-670,-683,-696,-712,-724,
+-731,-734,-733,-729,-723,-718,-716,-718,-724,-732,-741,-752,-763,-776,-789,-799,-807,-814,-821,-829,
+-837,-842,-847,-853,-858,-863,-865,-865,-866,-867,-866,-861,-858,-858,-860,-867,-875,-885,-896,-910,
+-931,-950,-965,-982,-998,-1014,-1031,-1048,-1061,-1071,-1082,-1094,-1105,-1111,-1113,-1112,-1113,-1115,-1117,-1120,
+-1122,-1126,-1130,-1134,-1135,-1133,-1129,-1123,-1116,-1107,-1099,-1094,-1088,-1080,-1068,-1054,-1039,-1023,-1010,-999,
+-989,-982,-984,-994,-1009,-1023,-1033,-1040,-1045,-1052,-1064,-1082,-1102,-1123,-1145,-1167,-1189,-1206,-1219,-1229,
+-1232,-1229,-1220,-1207,-1192,-1176,-1160,-1142,-1126,-1113,-1103,-1099,-1103,-1115,-1128,-1140,-1150,-1159,-1167,-1176,
+-1185,-1196,-1210,-1225,-1240,-1252,-1258,-1261,-1259,-1255,-1250,-1244,-1240,-1237,-1225,-1210,-1198,-1187,-1177,-1167,
+-1157,-1146,-1137,-1129,-1119,-1110,-1102,-1094,-1088,-1083,-1080,-1076,-1073,-1071,-1067,-1062,-1056,-1048,-1038,-1028,
+-1019,-1012,-1007,-1005,-1002,-996,-987,-976,-965,-953,-943,-934,-927,-919,-912,-906,-903,-901,-898,-892,
+-881,-868,-855,-845,-835,-822,-810,-801,-793,-785,-776,-769,-767,-764,-760,-755,-750,-749,-753,-755,
+-755,-755,-755,-751,-741,-732,-722,-710,-699,-687,-675,-662,-650,-639,-629,-621,-614,-608,-606,-607,
+-608,-610,-614,-621,-627,-626,-623,-620,-614,-609,-600,-588,-573,-554,-534,-514,-494,-476,-458,-442,
+-428,-417,-406,-395,-383,-369,-357,-348,-339,-332,-324,-315,-304,-290,-278,-270,-261,-249,-238,-226,
+-214,-200,-190,-183,-175,-164,-143,-113,-80,-53,-37,-32,-35,-36,-29,-22,-13,-2,7,17,
+26,33,35,36,36,34,32,30,32,34,39,46,52,57,61,66,72,80,86,90,
+93,96,97,98,100,103,105,106,109,111,112,112,112,111,109,108,108,107,105,104,
+104,103,103,103,103,104,104,106,107,109,112,114,116,117,119,122,123,124,126,130,
+133,135,134,131,131,131,133,135,141,147,150,151,149,146,144,144,145,145,144,141,
+136,133,133,135,140,146,153,160,165,170,176,184,194,205,216,228,240,251,261,267,
+270,270,267,264,262,262,259,254,246,239,238,242,246,247,243,234,222,210,200,192,
+187,187,189,193,200,209,217,225,232,236,235,231,221,210,199,193,192,197,205,213,
+216,213,205,197,193,193,196,200,202,203,200,195,191,186,180,172,164,155,144,134,
+122,111,102,93,84,75,67,60,53,48,44,42,40,37,35,33,32,29,26,23,
+21,19,18,17,17,19,21,22,25,28,33,38,44,49,53,56,58,55,48,40,
+33,29,27,27,28,25,23,19,15,13,14,20,26,27,24,20,15,11,7,2,
+-8,-26,-47,-62,-74,-90,-108,-123,-134,-143,-152,-163,-178,-198,-221,-248,-279,-311,-340,-364,
+-380,-387,-390,-392,-398,-407,-419,-436,-454,-474,-496,-518,-536,-554,-570,-584,-598,-611,-623,-635,
+-647,-658,-667,-675,-682,-689,-698,-706,-712,-718,-723,-726,-730,-734,-736,-738,-738,-739,-742,-744,
+-744,-742,-743,-744,-746,-748,-749,-752,-755,-759,-761,-764,-767,-770,-772,-776,-781,-786,-793,-800,
+-807,-815,-823,-827,-830,-831,-832,-833,-836,-838,-839,-840,-841,-844,-849,-854,-860,-866,-874,-884,
+-894,-903,-910,-917,-922,-927,-930,-933,-935,-936,-935,-933,-930,-925,-919,-909,-897,-884,-870,-853,
+-835,-816,-797,-777,-758,-739,-718,-696,-674,-650,-633,-636,-655,-683,-722,-763,-801,-833,-862,-888,
+-910,-925,-936,-948,-962,-975,-985,-993,-998,-1002,-1003,-1000,-993,-985,-974,-961,-957,-967,-985,-1003,
+-1018,-1029,-1033,-1037,-1045,-1049,-1050,-1055,-1064,-1079,-1090,-1097,-1106,-1117,-1129,-1143,-1157,-1176,-1200,-1227,
+-1254,-1283,-1311,-1335,-1358,-1378,-1397,-1417,-1435,-1458,-1487,-1519,-1553,-1588,-1621,-1652,-1682,-1707,-1730,-1752,
+-1771,-1790,-1806,-1822,-1838,-1854,-1871,-1888,-1903,-1914,-1922,-1926,-1928,-1927,-1922,-1917,-1911,-1908,-1909,-1912,
+-1913,-1914,-1918,-1921,-1919,-1915,-1912,-1911,-1914,-1923,-1935,-1946,-1950,-1946,-1939,-1929,-1911,-1883,-1851,-1820,
+-1793,-1770,-1748,-1726,-1703,-1680,-1657,-1629,-1593,-1558,-1524,-1488,-1460,-1437,-1416,-1403,-1399,-1397,-1393,-1388,
+-1383,-1376,-1360,-1332,-1297,-1258,-1211,-1162,-1125,-1095,-1076,-1070,-1064,-1055,-1047,-1036,-1024,-1013,-1001,-990,
+-984,-986,-997,-1015,-1031,-1041,-1044,-1043,-1035,-1020,-1000,-976,-945,-919,-903,-891,-881,-874,-872,-871,
+-871,-878,-890,-919,-956,-969,-950,-907,-842,-785,-745,-694,-627,-571,-527,-470,-413,-383,-368,-351,
+-333,-328,-331,-337,-344,-325,-283,-228,-154,-66,30,128,215,289,346,391,433,463,471,479,
+491,497,498,511,544,594,659,735,815,892,963,1029,1089,1143,1191,1231,1265,1294,1320,1342,
+1362,1381,1400,1419,1436,1451,1463,1473,1483,1493,1503,1509,1514,1522,1533,1544,1553,1562,1576,1599,
+1630,1664,1700,1735,1769,1803,1840,1883,1928,1972,2015,2061,2118,2186,2265,2352,2437,2508,2554,2558,
+2512,2422,2317,2220,2136,2063,2002,1958,1925,1903,1891,1889,1892,1901,1920,1949,1988,2042,2109,2165,
+2203,2239,2273,2306,2337,2367,2398,2435,2471,2500,2530,2564,2607,2654,2703,2754,2808,2864,2924,2983,
+3038,3090,3135,3178,3217,3255,3292,3330,3369,3408,3445,3477,3504,3529,3555,3581,3603,3621,3634,3644,
+3649,3651,3654,3661,3669,3676,3685,3698,3712,3724,3735,3747,3760,3776,3791,3809,3829,3849,3871,3894,
+3918,3945,3972,3998,4020,4037,4050,4060,4072,4089,4110,4134,4159,4183,4211,4241,4270,4298,4329,4362,
+4399,4441,4482,4521,4557,4589,4614,4635,4651,4663,4673,4681,4692,4703,4715,4732,4749,4766,4784,4801,
+4818,4835,4851,4864,4874,4875,4871,4866,4860,4851,4822,4804,4816,4830,4836,4826,4819,4852,4892,4893,
+4874,4880,4909,4958,5005,4996,4967,4974,4989,4980,4964,4958,4964,4970,4953,4941,4957,4986,5030,5067,
+5080,5088,5104,5127,5154,5181,5193,5193,5193,5197,5207,5220,5230,5239,5251,5262,5265,5274,5291,5301,
+5309,5307,5287,5256,5226,5200,5175,5154,5137,5121,5107,5094,5081,5072,5062,5056,5049,5044,5040,5036,
+5033,5032,5030,5027,5025,5023,5020,5018,5018,5018,5018,5017,5017,5015,5010,5008,5010,5010,5009,5008,
+5005,5005,5004,5001,4996,4992,4990,4986,4981,4973,4966,4959,4953,4949,4940,4928,4919,4911,4905,4898,
+4885,4869,4855,4846,4839,4833,4826,4819,4814,4906,4905,4899,4898,4901,4901,4894,4889,4889,4887,4879,
+4867,4857,4847,4838,4824,4807,4784,4753,4724,4698,4675,4658,4652,4653,4647,4638,4631,4623,4608,4587,
+4560,4532,4509,4486,4464,4444,4420,4395,4371,4348,4327,4306,4287,4268,4253,4238,4224,4212,4201,4193,
+4185,4177,4169,4158,4142,4116,4080,4037,3988,3936,3885,3835,3789,3747,3703,3655,3602,3544,3484,3425,
+3370,3318,3272,3232,3193,3155,3121,3091,3070,3051,3034,3013,2986,2958,2926,2887,2843,2798,2750,2699,
+2645,2589,2537,2493,2458,2427,2397,2369,2340,2310,2278,2245,2215,2185,2159,2135,2112,2094,2078,2062,
+2046,2029,2007,1981,1951,1915,1877,1843,1813,1790,1775,1758,1745,1726,1702,1679,1655,1635,1620,1615,
+1613,1614,1614,1606,1598,1591,1582,1572,1560,1543,1521,1495,1470,1445,1424,1405,1384,1362,1340,1319,
+1298,1277,1256,1234,1212,1189,1162,1134,1105,1074,1044,1018,991,967,944,922,904,886,867,846,
+824,802,780,758,736,717,697,678,661,643,626,611,595,581,566,550,534,518,499,479,
+456,431,403,375,345,318,295,274,260,250,243,239,236,236,237,241,248,257,264,268,
+274,287,310,331,346,359,368,374,368,352,336,316,288,253,214,173,134,97,66,40,
+14,-14,-43,-72,-97,-120,-139,-157,-177,-198,-221,-247,-270,-290,-311,-327,-341,-353,-362,-375,
+-391,-405,-421,-436,-449,-465,-486,-503,-515,-526,-539,-550,-559,-568,-576,-585,-595,-603,-610,-620,
+-630,-639,-646,-650,-654,-655,-656,-655,-650,-651,-652,-655,-662,-672,-684,-695,-705,-720,-737,-751,
+-760,-763,-761,-756,-746,-736,-729,-724,-726,-732,-744,-756,-770,-784,-797,-811,-822,-828,-834,-842,
+-852,-862,-869,-875,-881,-886,-893,-900,-907,-915,-922,-927,-925,-918,-915,-913,-909,-905,-906,-911,
+-923,-940,-961,-985,-1008,-1024,-1037,-1049,-1063,-1077,-1087,-1092,-1097,-1104,-1113,-1121,-1130,-1136,-1140,-1145,
+-1152,-1160,-1167,-1170,-1168,-1162,-1154,-1143,-1130,-1116,-1102,-1092,-1086,-1082,-1081,-1082,-1085,-1088,-1086,-1080,
+-1071,-1063,-1059,-1061,-1070,-1084,-1100,-1119,-1138,-1157,-1171,-1183,-1194,-1206,-1218,-1230,-1240,-1248,-1254,-1258,
+-1260,-1260,-1253,-1241,-1224,-1205,-1183,-1159,-1136,-1117,-1106,-1108,-1122,-1144,-1166,-1186,-1203,-1221,-1240,-1258,
+-1274,-1287,-1298,-1305,-1308,-1307,-1302,-1295,-1287,-1275,-1262,-1248,-1234,-1223,-1209,-1194,-1181,-1168,-1159,-1150,
+-1141,-1132,-1122,-1112,-1101,-1091,-1082,-1077,-1073,-1070,-1069,-1068,-1067,-1066,-1064,-1062,-1060,-1058,-1054,-1050,
+-1045,-1042,-1040,-1039,-1039,-1036,-1030,-1022,-1014,-1005,-998,-991,-984,-978,-972,-964,-953,-941,-930,-918,
+-907,-897,-887,-877,-867,-859,-851,-843,-833,-821,-808,-797,-792,-789,-785,-783,-785,-789,-785,-778,
+-775,-776,-777,-777,-775,-770,-763,-752,-739,-725,-711,-693,-675,-661,-649,-637,-628,-620,-616,-615,
+-616,-618,-619,-620,-621,-626,-634,-640,-642,-641,-637,-629,-617,-602,-585,-564,-542,-519,-498,-479,
+-464,-451,-439,-428,-417,-403,-387,-373,-362,-353,-344,-333,-321,-311,-302,-294,-286,-277,-270,-261,
+-250,-237,-223,-210,-198,-185,-171,-158,-140,-117,-89,-65,-51,-50,-54,-59,-61,-57,-42,-17,
+7,23,32,37,39,39,38,38,39,40,45,52,58,63,70,75,78,82,86,90,
+91,91,94,97,100,102,103,105,105,106,107,108,109,111,113,115,115,116,117,116,
+116,115,113,111,108,106,104,104,104,105,107,109,112,115,116,118,119,119,120,121,
+123,123,124,125,126,130,134,139,145,151,155,157,157,156,154,152,151,149,147,145,
+143,143,143,145,149,155,165,177,188,196,200,203,206,212,221,232,244,255,265,274,
+282,289,295,298,300,300,297,290,281,266,253,246,242,241,239,233,222,210,200,193,
+191,190,191,193,198,204,211,219,227,234,241,247,249,247,246,242,239,235,233,232,
+233,237,239,237,232,227,224,223,227,232,234,233,234,231,229,227,222,217,210,200,
+189,178,166,152,138,125,112,99,87,76,66,58,51,47,42,38,34,31,27,23,
+19,14,9,3,-1,-6,-12,-16,-18,-21,-22,-22,-22,-18,-14,-8,-2,2,7,8,
+9,8,7,7,8,10,9,7,2,-3,-7,-6,0,10,18,21,19,12,4,-3,
+-11,-19,-30,-39,-39,-28,-10,6,20,33,36,28,13,-12,-52,-97,-142,-182,-218,-248,
+-268,-288,-310,-333,-353,-371,-393,-416,-438,-456,-474,-493,-512,-532,-551,-572,-593,-613,-631,-647,
+-662,-675,-687,-697,-707,-716,-728,-738,-747,-755,-761,-766,-771,-774,-778,-782,-787,-791,-794,-797,
+-798,-798,-798,-798,-798,-798,-795,-791,-788,-787,-787,-787,-788,-789,-790,-792,-793,-794,-796,-799,
+-802,-807,-811,-816,-821,-826,-829,-829,-828,-826,-825,-823,-823,-821,-821,-822,-824,-828,-834,-842,
+-852,-862,-870,-877,-884,-890,-895,-899,-901,-901,-900,-897,-892,-886,-879,-871,-860,-846,-830,-812,
+-793,-773,-755,-737,-719,-705,-693,-685,-676,-663,-651,-645,-650,-672,-708,-751,-797,-840,-876,-905,
+-927,-946,-962,-977,-991,-1003,-1013,-1021,-1027,-1031,-1034,-1033,-1026,-1016,-1005,-995,-988,-991,-998,-1007,
+-1019,-1031,-1040,-1043,-1044,-1046,-1053,-1059,-1061,-1071,-1088,-1106,-1122,-1137,-1156,-1173,-1189,-1207,-1232,-1261,
+-1284,-1301,-1314,-1327,-1342,-1359,-1377,-1397,-1419,-1442,-1468,-1498,-1539,-1582,-1618,-1650,-1678,-1706,-1735,-1765,
+-1793,-1818,-1839,-1858,-1875,-1889,-1901,-1910,-1922,-1939,-1953,-1965,-1973,-1980,-1984,-1986,-1976,-1955,-1944,-1944,
+-1944,-1947,-1953,-1963,-1976,-1986,-1992,-1994,-1997,-2004,-2014,-2022,-2028,-2029,-2025,-2016,-1997,-1969,-1928,-1876,
+-1826,-1798,-1784,-1774,-1764,-1747,-1727,-1707,-1685,-1658,-1623,-1591,-1559,-1530,-1508,-1490,-1472,-1455,-1447,-1444,
+-1445,-1436,-1427,-1429,-1412,-1377,-1333,-1278,-1243,-1220,-1184,-1161,-1158,-1153,-1152,-1151,-1140,-1126,-1111,-1095,
+-1084,-1080,-1092,-1117,-1133,-1142,-1152,-1157,-1157,-1149,-1135,-1115,-1089,-1066,-1054,-1044,-1039,-1037,-1033,-1031,
+-1030,-1026,-1022,-1039,-1065,-1064,-1031,-980,-932,-880,-815,-769,-733,-693,-650,-597,-543,-499,-468,-448,
+-434,-423,-413,-403,-405,-411,-416,-418,-402,-357,-295,-225,-138,-43,41,110,165,223,280,328,
+372,399,410,420,437,468,509,557,617,681,753,832,909,982,1048,1106,1156,1200,1238,1269,
+1295,1315,1331,1347,1363,1380,1396,1412,1424,1431,1438,1447,1458,1468,1478,1490,1500,1507,1513,1520,
+1532,1552,1578,1608,1642,1678,1713,1752,1795,1841,1886,1927,1966,2008,2057,2114,2182,2258,2336,2404,
+2453,2470,2446,2390,2319,2247,2184,2127,2074,2032,2003,1988,1984,1992,2012,2045,2083,2116,2145,2175,
+2209,2244,2276,2303,2324,2343,2371,2407,2437,2461,2489,2519,2554,2603,2664,2729,2785,2836,2888,2945,
+3003,3058,3110,3155,3196,3233,3273,3316,3361,3406,3451,3496,3537,3575,3608,3637,3662,3681,3692,3698,
+3701,3700,3698,3694,3693,3695,3700,3710,3726,3745,3764,3783,3802,3821,3839,3860,3887,3915,3942,3965,
+3985,4004,4024,4047,4069,4088,4103,4115,4128,4142,4159,4179,4200,4220,4240,4266,4300,4337,4373,4412,
+4450,4486,4519,4552,4586,4618,4650,4679,4709,4738,4762,4781,4793,4800,4804,4811,4821,4830,4836,4841,
+4846,4850,4861,4874,4888,4897,4904,4908,4908,4912,4921,4929,4928,4926,4919,4905,4898,4895,4915,4927,
+4931,4985,5047,5113,5186,5187,5124,5071,5037,5004,4979,4973,4985,4995,4996,5006,5023,5035,5049,5073,
+5103,5130,5154,5180,5212,5245,5268,5269,5261,5257,5264,5275,5284,5285,5287,5298,5312,5325,5342,5364,
+5381,5388,5383,5357,5317,5275,5239,5209,5188,5173,5161,5149,5137,5126,5116,5109,5103,5099,5097,5096,
+5096,5095,5094,5092,5089,5086,5085,5086,5088,5090,5089,5089,5090,5093,5095,5094,5093,5089,5086,5084,
+5083,5081,5078,5075,5072,5068,5062,5053,5043,5038,5036,5030,5017,5006,4997,4988,4977,4969,4965,4958,
+4950,4940,4932,4927,4926,4925,4921,4914,4906,4906,4986,4984,4981,4972,4963,4960,4953,4946,4933,4917,
+4907,4897,4885,4861,4831,4803,4777,4758,4750,4751,4750,4744,4739,4728,4709,4693,4677,4653,4623,4592,
+4565,4541,4521,4496,4474,4454,4431,4407,4383,4359,4334,4311,4290,4270,4250,4233,4218,4205,4196,4186,
+4178,4173,4166,4159,4151,4142,4129,4107,4075,4035,3978,3913,3848,3789,3733,3677,3622,3566,3509,3455,
+3407,3366,3333,3304,3280,3260,3240,3217,3192,3167,3142,3117,3089,3058,3020,2972,2921,2870,2818,2768,
+2715,2661,2611,2562,2517,2478,2440,2402,2368,2337,2304,2273,2244,2215,2188,2164,2142,2120,2102,2086,
+2070,2052,2026,1996,1965,1935,1898,1858,1826,1796,1770,1754,1743,1736,1719,1703,1701,1697,1690,1682,
+1672,1664,1655,1645,1632,1616,1598,1577,1555,1528,1501,1473,1445,1419,1394,1370,1349,1333,1319,1304,
+1284,1262,1241,1220,1200,1177,1152,1127,1099,1069,1040,1012,987,965,946,928,912,896,878,858,
+838,817,794,772,750,729,709,689,671,652,635,619,604,590,577,562,547,530,512,493,
+471,448,423,394,364,334,306,281,263,249,239,233,229,226,226,231,239,253,268,282,
+296,307,313,318,321,319,314,306,294,279,260,240,215,189,162,127,86,49,18,-7,
+-28,-51,-74,-96,-116,-134,-150,-168,-191,-214,-239,-265,-287,-309,-332,-350,-367,-381,-395,-413,
+-428,-441,-456,-471,-486,-502,-518,-535,-547,-559,-572,-585,-601,-612,-623,-638,-648,-656,-663,-669,
+-676,-680,-682,-685,-685,-680,-675,-670,-666,-665,-666,-670,-676,-686,-700,-717,-732,-746,-758,-769,
+-779,-783,-783,-779,-770,-759,-749,-741,-738,-739,-744,-752,-763,-776,-790,-803,-815,-826,-837,-847,
+-856,-867,-878,-887,-895,-900,-903,-910,-919,-928,-939,-949,-956,-959,-957,-954,-949,-941,-935,-934,
+-938,-947,-959,-973,-989,-1007,-1025,-1039,-1053,-1067,-1082,-1094,-1104,-1110,-1118,-1129,-1145,-1159,-1170,-1177,
+-1182,-1187,-1189,-1187,-1185,-1180,-1171,-1159,-1144,-1128,-1113,-1102,-1100,-1108,-1126,-1145,-1161,-1171,-1178,-1180,
+-1180,-1180,-1181,-1181,-1184,-1190,-1200,-1213,-1225,-1239,-1254,-1266,-1272,-1273,-1268,-1260,-1249,-1236,-1228,-1223,
+-1220,-1216,-1209,-1199,-1184,-1169,-1152,-1136,-1122,-1113,-1114,-1125,-1142,-1163,-1182,-1199,-1218,-1241,-1268,-1294,
+-1316,-1331,-1341,-1346,-1345,-1340,-1331,-1321,-1309,-1296,-1280,-1261,-1239,-1217,-1197,-1179,-1163,-1149,-1137,-1128,
+-1119,-1112,-1104,-1095,-1086,-1077,-1069,-1062,-1058,-1054,-1049,-1046,-1045,-1045,-1044,-1043,-1042,-1041,-1040,-1038,
+-1036,-1034,-1033,-1033,-1031,-1028,-1024,-1020,-1013,-1002,-990,-983,-982,-984,-985,-982,-975,-966,-955,-945,
+-936,-927,-918,-909,-898,-887,-877,-868,-859,-850,-841,-830,-819,-813,-808,-804,-799,-795,-791,-784,
+-776,-768,-762,-762,-766,-771,-774,-773,-764,-750,-736,-723,-708,-693,-678,-665,-653,-642,-633,-627,
+-625,-627,-629,-633,-635,-639,-647,-654,-661,-662,-661,-659,-651,-639,-624,-609,-596,-579,-559,-536,
+-512,-490,-471,-453,-435,-419,-404,-390,-377,-368,-367,-365,-357,-343,-327,-313,-300,-289,-281,-275,
+-270,-264,-257,-248,-239,-228,-212,-193,-172,-153,-135,-116,-100,-89,-83,-77,-71,-69,-69,-70,
+-62,-43,-18,2,16,26,32,34,36,38,37,36,39,43,50,56,63,71,78,83,
+90,97,105,109,112,113,117,118,115,113,113,114,113,112,113,115,118,121,123,125,
+127,127,126,125,122,119,115,112,109,106,105,103,104,106,106,107,110,110,110,111,
+112,113,115,118,122,127,132,138,144,147,150,151,151,151,151,152,154,154,154,154,
+155,157,158,162,167,173,179,185,191,198,205,216,227,236,244,250,256,261,264,267,
+271,275,282,290,299,309,315,316,311,302,292,282,272,260,249,239,229,218,209,204,
+201,201,205,209,211,211,212,211,211,213,218,223,229,236,242,246,248,249,248,250,
+252,252,251,248,245,247,248,243,237,229,226,225,226,228,228,232,239,243,243,240,
+234,224,213,199,185,171,154,136,121,109,96,83,74,67,61,56,52,49,45,41,
+37,33,28,22,18,13,6,0,-6,-13,-21,-27,-30,-32,-31,-29,-25,-20,-15,-10,
+-6,-4,-2,-2,-3,0,3,6,7,7,4,2,3,6,9,9,7,4,1,0,
+3,5,8,10,8,4,9,20,39,66,90,105,108,94,69,40,12,-18,-51,-82,
+-110,-146,-186,-222,-272,-305,-317,-340,-369,-397,-420,-442,-464,-484,-506,-526,-547,-570,-593,-615,
+-636,-656,-675,-692,-707,-723,-738,-751,-762,-772,-780,-788,-796,-802,-808,-813,-820,-825,-829,-831,
+-833,-836,-838,-840,-839,-838,-836,-831,-826,-822,-818,-815,-811,-810,-809,-810,-809,-807,-804,-803,
+-802,-801,-801,-803,-806,-811,-815,-819,-819,-818,-816,-812,-808,-804,-800,-797,-794,-792,-791,-793,
+-797,-803,-811,-820,-830,-839,-848,-856,-861,-865,-864,-861,-855,-846,-837,-827,-816,-803,-787,-769,
+-748,-726,-705,-685,-666,-649,-634,-625,-623,-626,-633,-638,-642,-655,-680,-719,-766,-815,-860,-900,
+-934,-959,-980,-1001,-1024,-1044,-1059,-1069,-1074,-1076,-1073,-1065,-1055,-1043,-1030,-1016,-1006,-1003,-1006,-1014,
+-1025,-1034,-1042,-1044,-1043,-1047,-1054,-1065,-1076,-1086,-1097,-1112,-1130,-1149,-1169,-1195,-1219,-1237,-1252,-1264,
+-1273,-1284,-1301,-1317,-1330,-1347,-1369,-1393,-1417,-1445,-1475,-1511,-1550,-1588,-1621,-1651,-1678,-1699,-1718,-1739,
+-1761,-1786,-1818,-1848,-1874,-1900,-1922,-1939,-1953,-1961,-1964,-1969,-1978,-1992,-2010,-2023,-2030,-2032,-2021,-2003,
+-1994,-1994,-1999,-2005,-2012,-2022,-2031,-2041,-2052,-2063,-2075,-2086,-2096,-2104,-2108,-2106,-2097,-2079,-2048,-2011,
+-1976,-1940,-1905,-1879,-1862,-1845,-1823,-1799,-1778,-1759,-1738,-1712,-1682,-1648,-1620,-1594,-1569,-1547,-1532,-1524,
+-1519,-1519,-1522,-1519,-1516,-1501,-1468,-1433,-1389,-1347,-1331,-1318,-1296,-1287,-1285,-1285,-1286,-1280,-1270,-1258,
+-1247,-1246,-1256,-1269,-1279,-1293,-1305,-1311,-1313,-1309,-1300,-1282,-1259,-1239,-1220,-1202,-1191,-1186,-1180,-1175,
+-1170,-1164,-1158,-1164,-1173,-1155,-1124,-1071,-990,-926,-872,-826,-800,-778,-754,-720,-680,-644,-613,-585,
+-564,-547,-527,-514,-507,-503,-504,-512,-524,-530,-523,-501,-463,-418,-374,-327,-270,-202,-134,-58,
+29,97,136,163,190,233,289,351,413,473,529,587,654,719,785,856,934,1013,1084,1142,
+1185,1221,1252,1276,1294,1309,1322,1331,1338,1344,1351,1361,1372,1383,1398,1413,1430,1450,1470,1488,
+1506,1523,1539,1556,1578,1605,1636,1666,1696,1729,1766,1805,1841,1874,1904,1936,1977,2034,2109,2192,
+2273,2350,2413,2445,2442,2409,2359,2308,2268,2242,2229,2229,2237,2246,2255,2265,2275,2285,2293,2299,
+2302,2308,2319,2337,2357,2377,2398,2416,2436,2459,2479,2507,2548,2603,2663,2720,2778,2835,2891,2946,
+3000,3053,3103,3151,3196,3245,3294,3341,3386,3431,3475,3518,3560,3601,3643,3685,3723,3752,3766,3767,
+3758,3749,3740,3732,3725,3722,3722,3726,3735,3747,3762,3779,3797,3818,3842,3871,3906,3945,3978,4001,
+4017,4039,4066,4089,4105,4119,4134,4149,4162,4172,4182,4194,4209,4228,4252,4285,4325,4368,4407,4441,
+4472,4503,4533,4565,4602,4645,4689,4732,4775,4812,4843,4866,4879,4879,4871,4868,4873,4881,4887,4893,
+4896,4895,4895,4903,4917,4933,4948,4959,4965,4968,4974,4977,4974,4965,4958,4967,4987,5001,5016,5014,
+5007,5051,5102,5131,5160,5180,5172,5139,5126,5111,5063,5025,5027,5066,5088,5086,5085,5096,5121,5152,
+5193,5221,5234,5247,5265,5289,5310,5314,5307,5306,5311,5321,5329,5334,5341,5350,5363,5378,5394,5409,
+5423,5433,5433,5419,5384,5339,5297,5265,5242,5224,5209,5199,5193,5185,5180,5175,5172,5168,5166,5166,
+5167,5168,5169,5174,5176,5176,5172,5169,5171,5173,5176,5177,5177,5176,5173,5169,5165,5161,5157,5152,
+5147,5143,5139,5136,5138,5132,5121,5113,5102,5090,5078,5069,5064,5061,5058,5056,5050,5041,5032,5027,
+5025,5020,5010,5005,5003,4997,4988,4980,4978,4982,4986,5042,5036,5038,5036,5023,5004,4985,4963,4934,
+4903,4870,4845,4835,4831,4831,4831,4825,4813,4803,4795,4777,4752,4729,4711,4686,4658,4631,4602,4576,
+4554,4533,4513,4492,4468,4445,4422,4400,4375,4348,4323,4301,4282,4264,4246,4227,4212,4198,4187,4178,
+4169,4160,4150,4142,4134,4129,4128,4127,4118,4100,4073,4025,3958,3881,3805,3734,3672,3616,3567,3523,
+3484,3450,3421,3400,3385,3373,3360,3340,3308,3266,3221,3181,3145,3111,3076,3033,2980,2924,2866,2810,
+2756,2704,2656,2610,2565,2521,2478,2438,2399,2366,2335,2307,2279,2254,2232,2212,2195,2177,2157,2135,
+2108,2076,2040,2005,1977,1957,1939,1920,1899,1875,1852,1831,1811,1794,1778,1765,1754,1742,1733,1723,
+1713,1700,1685,1671,1654,1635,1617,1593,1565,1536,1509,1483,1456,1431,1410,1389,1369,1349,1330,1310,
+1289,1267,1245,1220,1194,1168,1144,1120,1093,1066,1038,1012,988,966,949,932,918,902,885,867,
+848,828,807,785,763,743,722,701,683,663,647,632,616,602,589,575,561,547,532,514,
+494,472,446,419,390,359,329,302,279,260,247,240,235,232,233,236,243,252,264,278,
+291,303,316,324,328,326,319,309,291,271,249,225,198,169,138,94,50,14,-17,-42,
+-63,-81,-98,-113,-127,-138,-150,-166,-188,-215,-245,-272,-297,-323,-346,-368,-388,-408,-427,-446,
+-462,-478,-497,-514,-531,-547,-563,-576,-590,-601,-610,-621,-633,-646,-659,-669,-677,-687,-697,-700,
+-704,-705,-707,-710,-717,-723,-714,-701,-696,-698,-704,-710,-716,-720,-725,-732,-740,-748,-756,-765,
+-776,-787,-791,-790,-788,-783,-774,-764,-758,-753,-753,-757,-761,-769,-779,-789,-801,-812,-823,-833,
+-843,-855,-872,-891,-908,-918,-925,-934,-945,-955,-963,-969,-974,-977,-979,-980,-980,-979,-975,-971,
+-967,-968,-973,-983,-993,-1003,-1021,-1041,-1062,-1082,-1102,-1120,-1136,-1153,-1166,-1176,-1190,-1203,-1210,-1213,
+-1210,-1207,-1206,-1201,-1192,-1184,-1179,-1176,-1172,-1163,-1151,-1140,-1133,-1137,-1154,-1178,-1203,-1225,-1239,-1248,
+-1254,-1258,-1264,-1272,-1278,-1281,-1282,-1288,-1298,-1310,-1321,-1332,-1338,-1338,-1329,-1312,-1289,-1263,-1239,-1222,
+-1210,-1200,-1189,-1177,-1162,-1147,-1136,-1130,-1130,-1136,-1148,-1162,-1174,-1186,-1198,-1212,-1232,-1257,-1286,-1317,
+-1347,-1369,-1381,-1385,-1384,-1377,-1365,-1351,-1334,-1315,-1293,-1269,-1244,-1219,-1195,-1176,-1159,-1142,-1126,-1110,
+-1095,-1082,-1072,-1065,-1059,-1052,-1045,-1039,-1032,-1027,-1023,-1021,-1019,-1017,-1017,-1017,-1018,-1020,-1022,-1023,
+-1023,-1023,-1021,-1019,-1017,-1016,-1015,-1013,-1009,-1001,-990,-977,-967,-964,-966,-969,-968,-963,-955,-945,
+-934,-925,-917,-909,-901,-894,-890,-886,-884,-881,-875,-868,-860,-852,-843,-833,-823,-814,-805,-795,
+-782,-768,-755,-744,-735,-730,-728,-730,-733,-731,-728,-727,-729,-730,-726,-716,-706,-693,-677,-662,
+-652,-647,-646,-650,-653,-660,-667,-672,-684,-687,-682,-681,-676,-668,-660,-650,-638,-624,-607,-586,
+-563,-541,-520,-503,-484,-463,-440,-421,-405,-389,-378,-377,-379,-379,-366,-347,-328,-310,-297,-287,
+-280,-274,-270,-268,-264,-259,-251,-239,-225,-209,-191,-173,-157,-142,-126,-109,-94,-80,-71,-70,
+-76,-77,-69,-54,-34,-16,-4,2,7,12,18,24,30,37,44,48,54,59,62,64,
+66,72,79,87,95,99,103,105,106,106,110,116,121,126,130,133,136,140,142,142,
+141,141,139,135,132,128,126,124,121,118,115,113,113,112,110,107,106,107,107,109,
+111,112,114,116,121,128,134,137,139,141,143,146,150,154,156,157,158,159,159,159,
+160,163,168,172,178,183,188,193,197,202,207,213,220,228,234,242,248,253,260,266,
+271,274,278,282,288,295,300,306,311,316,317,312,303,291,275,258,244,233,226,222,
+220,221,225,230,237,239,236,228,219,213,211,216,223,233,245,256,265,271,276,283,
+290,294,296,296,297,296,294,289,279,265,246,230,222,216,212,214,221,227,230,227,
+219,209,200,192,182,167,148,127,110,100,95,88,80,76,72,70,70,69,67,64,
+62,59,55,53,50,47,43,38,32,25,21,13,4,0,-3,-5,-5,-5,-3,0,
+1,3,4,7,9,10,12,15,18,26,33,33,32,32,36,42,45,43,38,37,
+40,44,47,53,60,60,54,50,46,45,52,64,73,76,70,60,49,37,21,0,
+-25,-49,-76,-111,-144,-173,-204,-235,-260,-283,-312,-342,-371,-394,-414,-434,-452,-472,-495,-519,
+-544,-569,-593,-618,-643,-667,-689,-711,-731,-750,-766,-780,-792,-802,-810,-815,-819,-822,-826,-830,
+-835,-840,-844,-847,-849,-849,-848,-849,-849,-846,-842,-839,-837,-834,-830,-826,-823,-820,-816,-813,
+-808,-802,-798,-794,-792,-791,-791,-792,-793,-794,-796,-797,-796,-795,-789,-782,-774,-766,-761,-758,
+-758,-759,-763,-769,-776,-785,-794,-802,-810,-815,-817,-815,-810,-802,-794,-783,-771,-756,-738,-719,
+-699,-678,-656,-632,-610,-588,-568,-550,-539,-535,-540,-555,-578,-607,-644,-691,-744,-798,-849,-897,
+-939,-976,-1007,-1036,-1059,-1076,-1087,-1095,-1099,-1098,-1095,-1087,-1072,-1053,-1038,-1027,-1018,-1012,-1009,-1014,
+-1024,-1032,-1036,-1038,-1042,-1050,-1061,-1074,-1089,-1104,-1117,-1129,-1139,-1154,-1182,-1207,-1223,-1231,-1236,-1247,
+-1263,-1281,-1299,-1318,-1336,-1353,-1377,-1403,-1432,-1464,-1498,-1534,-1569,-1600,-1629,-1655,-1677,-1697,-1717,-1738,
+-1762,-1787,-1812,-1838,-1868,-1900,-1931,-1952,-1963,-1975,-1989,-2000,-2000,-1998,-2009,-2030,-2050,-2064,-2073,-2075,
+-2065,-2055,-2052,-2052,-2051,-2050,-2052,-2062,-2075,-2091,-2109,-2125,-2140,-2153,-2159,-2163,-2168,-2170,-2161,-2140,
+-2108,-2076,-2048,-2021,-1989,-1952,-1917,-1892,-1871,-1853,-1836,-1818,-1795,-1767,-1736,-1707,-1682,-1660,-1641,-1621,
+-1604,-1595,-1593,-1591,-1584,-1588,-1592,-1576,-1549,-1514,-1469,-1422,-1387,-1373,-1371,-1375,-1385,-1400,-1412,-1417,
+-1421,-1422,-1425,-1433,-1441,-1449,-1457,-1463,-1464,-1459,-1446,-1426,-1401,-1376,-1354,-1333,-1316,-1300,-1282,-1265,
+-1250,-1236,-1221,-1208,-1199,-1194,-1199,-1194,-1158,-1088,-1011,-964,-931,-891,-856,-834,-813,-786,-762,-739,
+-709,-679,-662,-651,-652,-652,-643,-644,-654,-670,-663,-632,-606,-578,-542,-493,-423,-332,-235,-158,
+-79,8,77,141,200,228,241,273,314,344,376,413,460,522,591,653,702,749,808,876,
+948,1016,1075,1127,1170,1204,1229,1245,1254,1261,1266,1272,1281,1290,1302,1315,1332,1352,1375,1401,
+1427,1453,1476,1501,1526,1553,1583,1612,1639,1666,1688,1707,1733,1764,1799,1835,1867,1899,1941,1999,
+2070,2146,2225,2304,2368,2405,2415,2414,2411,2406,2404,2406,2411,2420,2432,2440,2446,2450,2450,2448,
+2443,2437,2431,2426,2422,2421,2428,2445,2465,2489,2520,2553,2594,2650,2707,2760,2817,2882,2941,2994,
+3047,3097,3145,3190,3231,3271,3308,3347,3385,3425,3467,3510,3553,3596,3640,3679,3710,3734,3751,3761,
+3764,3761,3753,3747,3741,3737,3738,3743,3750,3759,3776,3797,3816,3830,3845,3866,3892,3923,3954,3982,
+4005,4022,4036,4050,4066,4083,4102,4121,4143,4167,4192,4216,4239,4263,4287,4315,4345,4377,4414,4453,
+4491,4530,4569,4608,4649,4690,4733,4772,4801,4830,4857,4875,4891,4906,4915,4912,4908,4909,4912,4914,
+4916,4916,4921,4931,4944,4956,4965,4976,4994,5012,5024,5029,5026,5023,5025,5024,5017,5018,5040,5078,
+5111,5140,5191,5248,5277,5278,5301,5337,5319,5254,5195,5162,5106,5054,5065,5089,5118,5160,5195,5221,
+5246,5273,5291,5304,5317,5337,5355,5359,5355,5350,5351,5359,5371,5383,5394,5403,5413,5423,5431,5437,
+5442,5441,5430,5409,5378,5348,5322,5301,5286,5275,5269,5267,5271,5282,5293,5302,5302,5296,5295,5298,
+5300,5295,5284,5274,5275,5285,5286,5280,5277,5274,5268,5262,5256,5250,5244,5237,5231,5226,5222,5218,
+5212,5205,5200,5192,5183,5177,5172,5167,5161,5155,5145,5139,5140,5137,5131,5122,5111,5105,5105,5101,
+5094,5094,5094,5088,5082,5080,5076,5076,5076,5067,5055,5042,5091,5066,5045,5015,4982,4962,4950,4942,
+4933,4926,4920,4906,4893,4885,4876,4861,4843,4822,4799,4776,4748,4719,4692,4665,4639,4612,4588,4564,
+4538,4513,4487,4463,4442,4420,4396,4372,4349,4329,4310,4288,4265,4245,4228,4212,4197,4185,4173,4161,
+4151,4142,4134,4127,4121,4117,4112,4108,4105,4101,4089,4065,4030,3977,3910,3836,3761,3695,3641,3597,
+3566,3546,3530,3513,3490,3460,3427,3390,3343,3292,3246,3202,3161,3120,3082,3043,2994,2942,2886,2831,
+2780,2729,2680,2634,2592,2549,2508,2467,2428,2393,2365,2340,2314,2288,2265,2241,2218,2194,2168,2138,
+2102,2066,2036,2010,1986,1965,1948,1933,1920,1904,1889,1872,1854,1836,1816,1796,1779,1761,1741,1725,
+1709,1692,1674,1656,1641,1627,1611,1593,1573,1553,1532,1510,1486,1465,1444,1421,1397,1374,1353,1332,
+1310,1285,1261,1237,1212,1186,1158,1129,1100,1072,1044,1019,997,977,960,941,922,906,890,873,
+854,835,815,796,775,754,734,716,697,680,663,648,634,621,608,594,581,567,552,536,
+519,498,476,452,426,398,369,339,310,285,265,253,245,242,243,248,257,266,275,284,
+294,306,321,334,341,343,340,330,313,291,266,237,203,166,130,85,36,-5,-43,-74,
+-99,-118,-133,-145,-156,-168,-179,-192,-204,-217,-235,-256,-282,-311,-340,-368,-397,-423,-448,-474,
+-497,-515,-531,-548,-566,-583,-597,-610,-622,-634,-644,-652,-662,-670,-677,-682,-687,-692,-698,-702,
+-707,-715,-719,-720,-724,-727,-723,-721,-726,-733,-742,-750,-756,-761,-764,-765,-763,-762,-764,-769,
+-776,-782,-788,-789,-786,-784,-780,-775,-770,-766,-765,-766,-768,-770,-774,-780,-789,-798,-809,-819,
+-829,-840,-856,-877,-901,-924,-943,-957,-969,-981,-989,-995,-999,-1002,-1004,-1005,-1005,-1008,-1015,-1019,
+-1019,-1017,-1016,-1019,-1025,-1034,-1045,-1061,-1083,-1106,-1127,-1147,-1165,-1181,-1196,-1209,-1219,-1226,-1232,-1236,
+-1237,-1235,-1232,-1228,-1223,-1216,-1206,-1197,-1194,-1194,-1197,-1198,-1197,-1195,-1196,-1202,-1214,-1231,-1251,-1271,
+-1290,-1304,-1316,-1328,-1338,-1348,-1355,-1358,-1361,-1365,-1371,-1374,-1372,-1362,-1346,-1328,-1309,-1291,-1274,-1257,
+-1243,-1230,-1218,-1206,-1194,-1186,-1184,-1186,-1192,-1200,-1206,-1208,-1207,-1206,-1210,-1224,-1247,-1279,-1316,-1351,
+-1381,-1403,-1416,-1420,-1416,-1405,-1387,-1365,-1342,-1317,-1292,-1266,-1240,-1213,-1188,-1165,-1144,-1122,-1100,-1079,
+-1060,-1044,-1031,-1019,-1011,-1007,-1002,-996,-991,-988,-988,-987,-988,-989,-990,-990,-989,-988,-986,-985,
+-987,-992,-996,-998,-998,-997,-996,-994,-990,-985,-983,-977,-969,-959,-949,-940,-934,-929,-927,-926,
+-921,-915,-909,-904,-899,-893,-890,-889,-891,-892,-894,-892,-888,-881,-870,-856,-841,-825,-808,-791,
+-775,-759,-745,-733,-719,-706,-695,-688,-687,-688,-692,-696,-703,-714,-727,-738,-746,-749,-746,-735,
+-719,-701,-687,-679,-675,-674,-676,-680,-686,-690,-693,-694,-691,-686,-677,-667,-658,-648,-635,-617,
+-596,-576,-557,-540,-524,-510,-496,-476,-452,-431,-417,-408,-397,-388,-382,-375,-360,-344,-328,-313,
+-301,-288,-276,-267,-261,-259,-260,-260,-255,-248,-236,-221,-202,-186,-174,-160,-145,-130,-117,-106,
+-100,-98,-91,-80,-68,-56,-41,-24,-9,2,12,20,26,30,34,38,40,44,48,50,
+54,59,66,73,81,86,91,94,98,102,107,112,116,121,126,128,130,132,134,139,
+142,144,145,146,144,143,144,144,141,137,135,134,134,133,132,132,129,124,120,118,
+116,114,114,117,123,129,133,135,138,142,147,151,156,162,166,170,171,171,171,171,
+172,174,177,181,184,187,192,197,202,208,212,216,221,227,232,238,243,248,254,260,
+267,274,279,283,291,299,304,307,310,315,317,318,313,303,286,268,254,243,236,232,
+230,231,230,231,237,243,248,253,255,254,254,257,262,271,285,300,311,319,329,340,
+349,354,357,358,358,355,346,334,319,302,282,263,246,236,233,232,233,235,236,235,
+232,228,222,210,194,175,157,141,123,108,102,101,96,90,87,82,80,77,75,73,
+71,68,66,65,66,67,67,67,66,64,62,59,54,48,46,44,42,41,39,36,
+34,30,25,23,26,30,31,34,36,37,39,42,46,49,52,54,56,57,60,64,
+70,76,85,99,109,111,105,98,93,87,80,74,69,66,66,69,70,64,54,37,
+13,-17,-49,-75,-98,-116,-135,-154,-168,-186,-212,-238,-266,-291,-313,-332,-344,-353,-362,-375,
+-392,-417,-449,-481,-513,-545,-579,-613,-644,-673,-698,-721,-741,-759,-774,-786,-794,-801,-809,-815,
+-820,-824,-827,-830,-832,-835,-838,-838,-839,-841,-842,-839,-835,-831,-829,-827,-824,-822,-819,-816,
+-812,-808,-802,-796,-789,-783,-778,-774,-772,-770,-768,-768,-767,-768,-769,-769,-766,-760,-755,-750,
+-746,-743,-741,-742,-744,-747,-751,-755,-759,-762,-764,-764,-762,-757,-750,-740,-729,-715,-698,-679,
+-656,-634,-612,-588,-564,-540,-517,-497,-479,-463,-454,-455,-469,-501,-554,-623,-697,-769,-836,-897,
+-950,-990,-1018,-1038,-1051,-1059,-1062,-1064,-1062,-1057,-1047,-1033,-1018,-1002,-989,-978,-970,-966,-970,-981,
+-989,-994,-1001,-1015,-1028,-1041,-1059,-1075,-1088,-1093,-1103,-1125,-1145,-1167,-1191,-1212,-1232,-1248,-1262,-1275,
+-1287,-1300,-1314,-1329,-1349,-1371,-1392,-1414,-1437,-1465,-1493,-1520,-1551,-1582,-1613,-1642,-1670,-1694,-1716,-1739,
+-1765,-1792,-1819,-1848,-1873,-1893,-1904,-1912,-1926,-1935,-1945,-1963,-1979,-1995,-2010,-2027,-2050,-2075,-2090,-2098,
+-2106,-2105,-2102,-2102,-2100,-2097,-2098,-2102,-2108,-2116,-2128,-2145,-2165,-2184,-2198,-2208,-2221,-2232,-2236,-2231,
+-2220,-2200,-2176,-2150,-2125,-2101,-2074,-2041,-2005,-1969,-1940,-1917,-1899,-1879,-1854,-1826,-1797,-1771,-1748,-1727,
+-1706,-1687,-1677,-1674,-1675,-1678,-1692,-1693,-1673,-1650,-1614,-1567,-1517,-1480,-1466,-1472,-1491,-1509,-1523,-1532,
+-1540,-1544,-1548,-1555,-1565,-1574,-1584,-1590,-1590,-1583,-1568,-1546,-1519,-1489,-1460,-1428,-1398,-1368,-1339,-1315,
+-1291,-1264,-1239,-1219,-1204,-1194,-1190,-1188,-1174,-1158,-1133,-1099,-1067,-1028,-981,-935,-898,-867,-843,-821,
+-798,-784,-777,-771,-782,-788,-783,-776,-767,-779,-774,-733,-681,-638,-581,-510,-481,-427,-342,-264,
+-191,-125,-39,43,126,188,214,263,312,327,332,332,333,352,387,433,484,541,603,664,
+721,768,812,868,939,1010,1072,1117,1148,1168,1183,1196,1207,1216,1226,1237,1249,1265,1282,1299,
+1320,1345,1372,1401,1430,1459,1488,1517,1547,1577,1606,1631,1651,1671,1700,1739,1780,1822,1864,1906,
+1952,2000,2056,2115,2170,2224,2277,2329,2380,2426,2462,2483,2494,2502,2511,2522,2536,2549,2557,2560,
+2556,2546,2532,2518,2506,2499,2498,2501,2514,2534,2556,2585,2618,2667,2725,2776,2826,2877,2943,3029,
+3102,3157,3211,3240,3269,3318,3362,3392,3420,3452,3483,3511,3538,3565,3594,3623,3651,3674,3693,3708,
+3717,3722,3723,3722,3722,3723,3728,3738,3753,3770,3790,3811,3832,3850,3865,3881,3897,3919,3941,3964,
+3985,4000,4011,4020,4035,4055,4079,4104,4132,4163,4195,4229,4260,4288,4314,4340,4369,4402,4436,4466,
+4494,4530,4575,4621,4666,4712,4754,4790,4817,4840,4860,4877,4891,4903,4916,4926,4931,4932,4930,4926,
+4923,4921,4926,4940,4963,4988,5011,5026,5038,5059,5083,5100,5100,5094,5096,5107,5123,5149,5179,5198,
+5206,5220,5246,5277,5311,5336,5355,5380,5388,5369,5315,5262,5251,5241,5215,5176,5154,5169,5198,5239,
+5290,5336,5351,5357,5367,5378,5390,5402,5412,5419,5428,5438,5453,5470,5483,5491,5497,5501,5500,5490,
+5468,5445,5425,5407,5388,5373,5362,5352,5345,5340,5340,5341,5343,5348,5346,5337,5325,5315,5309,5307,
+5307,5309,5312,5315,5318,5327,5335,5339,5339,5335,5333,5330,5325,5318,5311,5303,5294,5285,5278,5271,
+5265,5260,5255,5250,5246,5239,5231,5227,5224,5221,5217,5210,5208,5211,5213,5209,5198,5190,5187,5178,
+5170,5172,5175,5175,5168,5152,5145,5142,5132,5126,5120,5109,5091,5064,5054,5040,5026,5023,5017,4998,
+4975,4959,4953,4946,4929,4909,4883,4853,4831,4808,4778,4746,4714,4682,4656,4633,4608,4583,4559,4534,
+4506,4481,4458,4435,4413,4394,4375,4356,4334,4311,4288,4269,4253,4235,4219,4204,4188,4175,4160,4146,
+4135,4127,4123,4120,4117,4115,4112,4107,4101,4089,4073,4055,4037,4016,3986,3940,3881,3808,3730,3661,
+3603,3562,3535,3515,3490,3455,3405,3343,3278,3222,3180,3151,3129,3108,3079,3041,2993,2942,2891,2838,
+2784,2734,2688,2645,2605,2569,2538,2508,2478,2450,2423,2396,2368,2340,2311,2284,2255,2224,2193,2163,
+2130,2101,2079,2060,2040,2020,1997,1973,1950,1930,1911,1891,1872,1852,1832,1812,1792,1771,1750,1730,
+1709,1686,1663,1641,1617,1596,1582,1571,1560,1551,1542,1530,1515,1497,1476,1454,1432,1409,1385,1362,
+1339,1315,1291,1265,1239,1211,1184,1156,1127,1099,1072,1046,1021,999,976,955,935,916,899,881,
+864,846,827,808,790,772,755,738,721,705,692,679,667,655,642,629,615,600,584,567,
+548,529,509,486,463,436,407,377,348,320,293,271,255,246,243,247,258,275,289,298,
+305,314,324,332,340,346,347,344,335,317,291,258,221,182,143,105,59,11,-33,-72,
+-107,-136,-159,-174,-186,-198,-210,-220,-226,-235,-248,-264,-282,-305,-330,-355,-384,-414,-445,-475,
+-501,-525,-547,-566,-583,-600,-615,-628,-637,-644,-651,-657,-665,-674,-682,-687,-691,-696,-702,-710,
+-719,-726,-732,-737,-741,-748,-749,-745,-750,-755,-760,-766,-770,-775,-778,-781,-785,-789,-795,-802,
+-810,-816,-820,-819,-811,-805,-801,-798,-796,-793,-792,-790,-790,-790,-791,-791,-792,-801,-808,-815,
+-825,-837,-854,-872,-891,-914,-939,-964,-985,-1002,-1014,-1023,-1030,-1034,-1036,-1038,-1039,-1041,-1048,-1054,
+-1059,-1062,-1065,-1065,-1068,-1073,-1080,-1092,-1110,-1130,-1152,-1173,-1192,-1208,-1220,-1228,-1232,-1235,-1240,-1246,
+-1252,-1255,-1257,-1258,-1258,-1257,-1255,-1253,-1255,-1260,-1265,-1269,-1272,-1273,-1272,-1269,-1267,-1267,-1270,-1277,
+-1287,-1299,-1311,-1324,-1336,-1350,-1364,-1376,-1389,-1396,-1396,-1397,-1395,-1390,-1376,-1354,-1329,-1305,-1283,-1265,
+-1251,-1239,-1227,-1217,-1212,-1212,-1216,-1222,-1226,-1227,-1226,-1222,-1217,-1213,-1213,-1223,-1246,-1279,-1318,-1355,
+-1386,-1407,-1419,-1421,-1416,-1402,-1381,-1356,-1328,-1298,-1270,-1245,-1222,-1199,-1172,-1145,-1120,-1095,-1073,-1052,
+-1034,-1015,-1000,-988,-978,-969,-962,-955,-949,-947,-947,-948,-949,-953,-962,-976,-988,-996,-1000,-1000,
+-996,-991,-986,-981,-975,-970,-966,-963,-961,-961,-959,-956,-951,-946,-940,-932,-923,-914,-905,-900,
+-896,-893,-889,-885,-883,-884,-885,-885,-885,-886,-887,-889,-887,-883,-877,-867,-855,-840,-823,-803,
+-784,-766,-747,-728,-709,-694,-683,-674,-668,-664,-662,-665,-670,-677,-684,-691,-701,-715,-730,-743,
+-750,-748,-738,-723,-709,-694,-684,-686,-690,-691,-696,-705,-709,-707,-701,-691,-681,-669,-654,-639,
+-622,-603,-584,-563,-546,-536,-527,-516,-505,-493,-476,-458,-440,-422,-404,-386,-372,-361,-350,-339,
+-326,-312,-299,-285,-272,-262,-254,-248,-244,-243,-243,-243,-238,-227,-210,-193,-176,-160,-146,-131,
+-123,-123,-120,-112,-100,-87,-77,-65,-52,-37,-26,-19,-13,-3,5,6,8,14,23,31,
+38,46,54,63,72,80,87,92,97,101,106,112,120,130,137,140,140,138,137,138,
+141,145,147,148,150,153,156,158,158,156,153,149,144,138,136,136,136,137,136,135,
+134,135,136,137,140,143,146,149,152,155,161,168,177,184,189,191,193,194,196,197,
+197,196,197,200,202,204,205,207,212,216,221,225,230,237,245,251,255,261,268,275,
+277,278,281,288,290,291,294,299,305,308,308,308,305,299,290,278,268,260,251,241,
+233,229,227,224,221,221,225,234,245,256,266,277,290,306,319,328,336,343,349,354,
+357,360,364,367,368,363,354,343,330,319,307,294,281,271,264,258,250,243,239,241,
+246,248,243,231,217,202,188,172,155,139,129,125,123,118,113,109,105,100,93,87,
+84,82,82,81,81,80,78,80,85,91,96,98,100,99,97,96,93,89,82,78,
+81,86,86,80,70,58,50,48,52,56,59,58,57,55,54,52,51,51,51,53,
+57,65,77,92,108,120,126,126,122,112,97,82,72,68,69,70,70,65,54,37,
+17,-5,-27,-51,-76,-101,-124,-142,-155,-166,-176,-186,-196,-205,-211,-215,-221,-230,-234,-239,
+-255,-276,-300,-329,-362,-400,-437,-476,-517,-556,-592,-623,-650,-674,-695,-713,-729,-742,-754,-764,
+-773,-780,-787,-791,-794,-796,-797,-800,-802,-805,-807,-808,-807,-805,-803,-801,-799,-797,-796,-795,
+-794,-793,-791,-788,-786,-782,-779,-775,-770,-765,-761,-756,-752,-750,-749,-750,-751,-751,-750,-748,
+-745,-740,-733,-725,-717,-711,-707,-705,-706,-708,-710,-711,-710,-708,-704,-697,-686,-673,-659,-644,
+-626,-606,-585,-561,-536,-510,-483,-457,-436,-419,-407,-404,-413,-441,-491,-562,-646,-730,-806,-873,
+-933,-980,-1016,-1043,-1059,-1063,-1059,-1053,-1045,-1037,-1028,-1017,-1007,-995,-984,-972,-965,-961,-961,-968,
+-977,-985,-993,-1005,-1016,-1028,-1046,-1065,-1082,-1093,-1105,-1129,-1156,-1181,-1205,-1227,-1245,-1259,-1267,-1276,
+-1289,-1304,-1322,-1337,-1356,-1377,-1396,-1419,-1442,-1465,-1493,-1520,-1546,-1571,-1596,-1619,-1644,-1673,-1698,-1721,
+-1739,-1760,-1781,-1802,-1816,-1829,-1847,-1865,-1886,-1907,-1923,-1938,-1958,-1977,-1997,-2022,-2052,-2082,-2101,-2117,
+-2130,-2137,-2143,-2147,-2148,-2147,-2146,-2148,-2151,-2157,-2165,-2174,-2188,-2207,-2226,-2242,-2258,-2273,-2284,-2291,
+-2293,-2289,-2282,-2272,-2257,-2237,-2213,-2183,-2142,-2098,-2062,-2036,-2015,-1997,-1975,-1948,-1919,-1890,-1864,-1842,
+-1822,-1804,-1787,-1776,-1770,-1771,-1773,-1782,-1788,-1774,-1744,-1706,-1670,-1635,-1615,-1612,-1617,-1629,-1641,-1649,
+-1652,-1656,-1660,-1668,-1677,-1682,-1688,-1694,-1694,-1686,-1672,-1650,-1620,-1585,-1545,-1508,-1475,-1443,-1411,-1379,
+-1352,-1329,-1312,-1293,-1273,-1254,-1241,-1240,-1244,-1236,-1218,-1194,-1166,-1139,-1114,-1094,-1071,-1037,-996,-956,
+-921,-902,-892,-877,-868,-862,-861,-866,-857,-839,-824,-789,-740,-695,-660,-625,-593,-555,-483,-419,
+-355,-262,-171,-78,13,72,116,159,170,197,228,221,243,277,285,285,286,300,325,359,
+399,443,497,559,631,715,805,891,959,1006,1040,1065,1085,1101,1115,1129,1149,1174,1199,1220,
+1238,1255,1276,1297,1321,1347,1375,1405,1435,1467,1502,1536,1570,1602,1629,1659,1698,1744,1790,1835,
+1879,1921,1964,2007,2051,2097,2142,2188,2239,2294,2348,2399,2444,2482,2512,2535,2556,2573,2585,2593,
+2594,2589,2577,2564,2553,2543,2539,2540,2544,2562,2591,2624,2673,2728,2758,2781,2843,2891,2907,2933,
+2972,3042,3103,3135,3208,3282,3310,3348,3395,3425,3446,3454,3464,3481,3504,3529,3558,3590,3616,3639,
+3656,3669,3680,3694,3710,3725,3738,3751,3766,3781,3796,3810,3826,3843,3862,3881,3897,3913,3932,3951,
+3969,3988,4010,4027,4040,4051,4067,4088,4114,4144,4176,4211,4246,4280,4311,4342,4373,4406,4436,4463,
+4490,4518,4552,4591,4636,4684,4726,4758,4784,4808,4830,4850,4865,4873,4877,4886,4903,4924,4940,4945,
+4949,4956,4968,4988,5011,5034,5056,5076,5092,5111,5146,5190,5221,5225,5213,5187,5140,5085,5039,5033,
+5094,5181,5249,5300,5334,5361,5377,5380,5389,5425,5434,5403,5420,5459,5447,5408,5376,5360,5358,5360,
+5357,5348,5346,5358,5379,5400,5421,5440,5460,5476,5493,5517,5541,5565,5586,5602,5612,5617,5616,5605,
+5579,5542,5503,5472,5452,5437,5433,5434,5441,5453,5465,5473,5476,5479,5477,5473,5465,5454,5439,5424,
+5406,5391,5380,5371,5368,5365,5369,5375,5379,5379,5377,5377,5381,5380,5373,5368,5362,5355,5349,5342,
+5333,5325,5323,5329,5327,5317,5315,5311,5305,5305,5306,5296,5287,5289,5291,5280,5268,5262,5254,5253,
+5250,5242,5237,5228,5215,5203,5188,5166,5140,5121,5102,5083,5072,5064,5099,5082,5062,5044,5028,5014,
+4990,4963,4942,4922,4909,4899,4877,4835,4794,4767,4743,4715,4687,4662,4635,4605,4575,4545,4521,4507,
+4494,4475,4452,4429,4408,4387,4365,4343,4324,4309,4292,4272,4252,4234,4218,4203,4190,4178,4167,4159,
+4150,4141,4132,4125,4119,4115,4111,4106,4097,4085,4071,4059,4049,4034,4011,3979,3938,3883,3816,3744,
+3673,3613,3565,3527,3499,3486,3465,3402,3310,3224,3158,3113,3085,3063,3035,2997,2952,2907,2860,2813,
+2767,2724,2684,2649,2617,2588,2563,2543,2525,2507,2488,2465,2440,2412,2382,2351,2321,2293,2266,2240,
+2214,2186,2160,2130,2101,2073,2044,2015,1987,1959,1935,1912,1890,1867,1845,1826,1807,1789,1769,1749,
+1729,1709,1687,1666,1646,1627,1610,1594,1580,1567,1554,1542,1529,1515,1498,1481,1462,1440,1418,1395,
+1371,1347,1322,1295,1267,1239,1209,1180,1151,1121,1095,1069,1043,1019,996,973,952,932,913,894,
+876,858,840,823,806,791,777,763,750,738,727,716,704,692,679,666,653,638,622,604,
+584,563,540,516,491,464,436,407,377,348,322,298,278,263,252,248,253,262,273,280,
+282,284,286,292,300,307,310,308,305,297,281,257,225,192,157,121,83,42,0,-42,
+-83,-119,-151,-180,-202,-219,-234,-249,-261,-270,-280,-292,-307,-326,-349,-374,-397,-421,-446,-471,
+-495,-518,-539,-559,-581,-601,-620,-637,-650,-659,-667,-672,-677,-682,-689,-697,-703,-710,-716,-722,
+-730,-738,-746,-753,-759,-766,-773,-778,-781,-783,-786,-790,-794,-799,-805,-812,-820,-829,-839,-848,
+-857,-864,-872,-878,-877,-866,-855,-848,-841,-836,-835,-835,-834,-834,-835,-839,-851,-852,-840,-833,
+-835,-841,-853,-868,-886,-911,-943,-973,-998,-1017,-1033,-1046,-1056,-1064,-1070,-1074,-1078,-1081,-1085,-1089,
+-1093,-1099,-1105,-1112,-1119,-1126,-1134,-1145,-1157,-1171,-1185,-1198,-1209,-1220,-1228,-1234,-1240,-1247,-1254,-1259,
+-1262,-1264,-1269,-1276,-1286,-1296,-1306,-1313,-1318,-1324,-1329,-1333,-1337,-1338,-1337,-1333,-1330,-1327,-1326,-1324,
+-1322,-1322,-1326,-1329,-1331,-1335,-1339,-1344,-1349,-1356,-1363,-1369,-1372,-1373,-1370,-1362,-1348,-1331,-1315,-1300,
+-1285,-1270,-1252,-1237,-1229,-1234,-1248,-1262,-1270,-1269,-1259,-1246,-1231,-1219,-1213,-1214,-1220,-1233,-1254,-1285,
+-1322,-1354,-1374,-1384,-1383,-1374,-1358,-1337,-1315,-1293,-1267,-1238,-1207,-1177,-1149,-1128,-1114,-1098,-1085,-1072,
+-1056,-1040,-1023,-1009,-996,-984,-976,-968,-962,-958,-955,-957,-958,-957,-964,-978,-994,-1011,-1025,-1036,
+-1042,-1044,-1040,-1027,-1007,-986,-969,-958,-952,-948,-944,-941,-938,-935,-932,-928,-924,-919,-911,-901,
+-891,-886,-886,-888,-887,-884,-882,-880,-880,-881,-881,-881,-878,-874,-867,-858,-848,-835,-822,-808,
+-792,-776,-758,-740,-721,-701,-685,-672,-661,-654,-650,-650,-653,-659,-665,-665,-662,-662,-669,-682,
+-698,-714,-726,-733,-736,-724,-704,-688,-681,-686,-691,-692,-699,-709,-713,-709,-703,-693,-678,-661,
+-644,-627,-607,-586,-562,-540,-528,-522,-513,-505,-501,-495,-484,-467,-441,-412,-386,-370,-359,-349,
+-339,-330,-319,-307,-294,-281,-267,-254,-244,-237,-235,-233,-227,-225,-217,-198,-178,-164,-152,-142,
+-134,-130,-129,-130,-127,-121,-114,-107,-97,-85,-68,-50,-34,-20,-14,-17,-14,-9,-4,5,
+16,30,44,57,69,79,87,93,97,100,107,116,122,127,132,138,142,144,146,148,
+151,152,152,152,152,153,155,159,163,165,163,157,152,148,146,146,146,143,141,141,
+142,144,147,153,157,159,162,165,172,181,189,194,201,208,215,221,224,224,220,216,
+216,217,218,221,223,225,227,230,233,236,241,247,253,257,261,264,270,274,276,276,
+277,281,286,293,301,306,305,303,303,305,305,303,300,298,295,289,278,269,264,258,
+250,240,231,227,225,226,229,232,239,251,269,285,297,308,317,322,324,324,324,325,
+327,332,342,349,352,345,334,326,319,312,304,294,286,281,280,279,277,274,271,267,
+260,254,250,246,239,229,218,208,197,187,177,171,169,165,156,146,141,134,130,128,
+123,119,115,114,112,110,111,114,119,122,123,125,129,136,140,140,137,131,123,119,
+115,111,109,105,99,90,77,66,63,64,66,66,66,63,59,56,54,51,50,54,
+61,68,76,89,101,106,111,115,117,113,98,77,56,42,39,46,52,49,39,24,
+5,-12,-30,-46,-61,-77,-95,-116,-135,-153,-168,-180,-188,-191,-187,-178,-171,-165,-158,-153,
+-152,-160,-179,-206,-240,-280,-320,-364,-409,-452,-493,-530,-564,-593,-618,-639,-658,-673,-686,-697,
+-705,-713,-719,-724,-726,-725,-725,-724,-725,-726,-730,-733,-736,-737,-738,-741,-743,-744,-744,-745,
+-749,-753,-756,-757,-760,-762,-761,-759,-760,-761,-760,-757,-754,-750,-745,-740,-734,-731,-728,-725,
+-723,-720,-718,-713,-704,-690,-674,-664,-658,-656,-656,-658,-659,-655,-648,-639,-630,-622,-611,-597,
+-580,-563,-547,-529,-510,-490,-467,-444,-422,-402,-389,-387,-400,-431,-485,-557,-635,-710,-781,-847,
+-907,-959,-1003,-1038,-1065,-1083,-1093,-1092,-1082,-1067,-1055,-1046,-1038,-1031,-1025,-1019,-1014,-1006,-1000,-1003,
+-1011,-1019,-1023,-1025,-1028,-1033,-1043,-1067,-1099,-1121,-1139,-1157,-1186,-1217,-1243,-1266,-1284,-1302,-1316,-1331,
+-1350,-1369,-1389,-1402,-1413,-1430,-1448,-1467,-1488,-1509,-1532,-1556,-1576,-1596,-1616,-1630,-1639,-1649,-1663,-1676,
+-1688,-1698,-1706,-1721,-1747,-1786,-1825,-1853,-1879,-1912,-1942,-1968,-1992,-2009,-2029,-2052,-2083,-2116,-2142,-2159,
+-2173,-2187,-2195,-2198,-2200,-2201,-2203,-2204,-2206,-2213,-2220,-2229,-2239,-2249,-2262,-2280,-2300,-2318,-2331,-2340,
+-2346,-2350,-2352,-2351,-2346,-2339,-2326,-2303,-2269,-2230,-2193,-2164,-2142,-2123,-2105,-2082,-2054,-2023,-1993,-1968,
+-1948,-1927,-1908,-1895,-1884,-1882,-1885,-1887,-1887,-1880,-1857,-1822,-1785,-1753,-1730,-1719,-1718,-1722,-1730,-1741,
+-1751,-1758,-1764,-1770,-1776,-1780,-1782,-1785,-1783,-1774,-1761,-1743,-1720,-1693,-1664,-1633,-1597,-1564,-1533,-1503,
+-1477,-1455,-1434,-1415,-1397,-1378,-1360,-1342,-1331,-1333,-1340,-1334,-1316,-1290,-1265,-1249,-1231,-1206,-1174,-1140,
+-1111,-1092,-1067,-1036,-1011,-988,-968,-950,-924,-902,-882,-854,-822,-771,-722,-675,-630,-591,-542,-496,
+-458,-424,-394,-353,-283,-202,-136,-86,-53,-2,42,61,99,128,133,130,130,141,156,168,
+178,201,242,299,360,418,474,541,621,707,781,832,867,897,928,959,993,1029,1068,1108,
+1143,1172,1196,1217,1239,1263,1287,1312,1340,1368,1398,1430,1464,1500,1534,1568,1603,1644,1693,1745,
+1793,1839,1884,1927,1970,2013,2060,2111,2164,2218,2273,2328,2380,2430,2471,2501,2523,2542,2558,2573,
+2584,2590,2594,2595,2594,2593,2594,2597,2608,2622,2637,2662,2689,2721,2757,2783,2797,2814,2830,2844,
+2850,2869,2923,2996,3046,3071,3142,3199,3204,3232,3271,3296,3317,3349,3386,3423,3459,3498,3539,3577,
+3610,3636,3660,3679,3696,3715,3734,3751,3766,3782,3800,3817,3836,3854,3874,3895,3914,3931,3946,3963,
+3979,3991,4004,4022,4045,4066,4086,4105,4122,4138,4160,4187,4215,4244,4275,4309,4345,4382,4418,4449,
+4478,4509,4541,4575,4609,4645,4679,4710,4736,4758,4777,4794,4811,4831,4851,4872,4895,4921,4952,4981,
+5002,5014,5028,5041,5057,5075,5092,5112,5131,5143,5160,5200,5235,5243,5235,5214,5185,5162,5122,5092,
+5109,5109,5068,5062,5140,5249,5320,5395,5467,5499,5541,5563,5563,5563,5533,5498,5457,5428,5440,5439,
+5422,5412,5400,5398,5409,5429,5446,5463,5485,5508,5533,5562,5590,5615,5635,5652,5664,5673,5675,5666,
+5644,5606,5568,5536,5513,5503,5501,5502,5509,5520,5534,5548,5560,5571,5581,5587,5584,5579,5576,5574,
+5563,5542,5519,5498,5479,5456,5434,5423,5421,5419,5419,5421,5417,5408,5399,5393,5392,5388,5383,5386,
+5393,5395,5388,5379,5376,5375,5378,5375,5371,5370,5368,5370,5371,5363,5354,5349,5341,5331,5325,5326,
+5312,5285,5258,5233,5216,5200,5186,5177,5173,5166,5153,5139,5127,5113,5099,5088,5067,5044,5024,5007,
+4989,4968,4947,4926,4895,4858,4827,4804,4781,4751,4723,4697,4667,4643,4627,4607,4577,4545,4515,4488,
+4466,4450,4438,4426,4410,4392,4371,4353,4335,4320,4304,4289,4274,4260,4246,4231,4217,4202,4187,4172,
+4162,4153,4145,4134,4120,4105,4094,4085,4076,4067,4057,4044,4031,4018,4003,3980,3946,3903,3847,3780,
+3711,3653,3599,3553,3521,3505,3490,3443,3356,3256,3164,3099,3057,3027,3002,2968,2931,2896,2861,2822,
+2779,2739,2703,2671,2642,2618,2600,2588,2575,2558,2541,2523,2502,2477,2452,2426,2402,2378,2351,2322,
+2292,2261,2228,2195,2161,2126,2091,2058,2028,1998,1971,1944,1918,1892,1867,1845,1824,1804,1785,1765,
+1747,1730,1713,1695,1675,1655,1640,1626,1613,1598,1584,1570,1554,1539,1524,1508,1489,1470,1449,1427,
+1404,1380,1355,1329,1301,1271,1241,1208,1176,1147,1120,1092,1065,1039,1014,991,969,948,928,910,
+892,875,858,842,826,811,796,784,772,762,752,741,731,722,709,696,682,666,649,630,
+609,586,563,539,513,485,456,427,397,368,342,319,299,280,263,251,243,238,234,234,
+236,239,242,244,246,248,251,253,251,248,244,234,217,195,168,138,106,72,39,5,
+-32,-71,-109,-146,-180,-209,-234,-256,-275,-293,-310,-326,-343,-361,-381,-404,-427,-447,-468,-491,
+-512,-531,-549,-567,-588,-611,-632,-651,-664,-674,-683,-689,-693,-696,-700,-706,-713,-720,-726,-732,
+-737,-745,-755,-765,-775,-784,-789,-793,-799,-805,-812,-820,-828,-836,-843,-851,-859,-869,-879,-889,
+-900,-910,-920,-934,-941,-937,-933,-924,-915,-908,-901,-898,-895,-893,-892,-890,-888,-884,-881,-881,
+-875,-870,-873,-882,-896,-916,-943,-972,-998,-1021,-1041,-1056,-1070,-1082,-1093,-1102,-1111,-1119,-1124,-1128,
+-1135,-1141,-1147,-1151,-1157,-1164,-1170,-1179,-1190,-1201,-1214,-1225,-1233,-1241,-1249,-1254,-1260,-1266,-1274,-1284,
+-1293,-1300,-1308,-1318,-1329,-1340,-1352,-1361,-1368,-1373,-1375,-1375,-1374,-1372,-1370,-1368,-1368,-1368,-1367,-1365,
+-1362,-1359,-1355,-1350,-1346,-1342,-1340,-1339,-1340,-1342,-1344,-1346,-1348,-1350,-1350,-1345,-1337,-1324,-1309,-1293,
+-1278,-1263,-1250,-1243,-1245,-1251,-1260,-1267,-1266,-1258,-1244,-1228,-1211,-1196,-1188,-1187,-1193,-1204,-1224,-1251,
+-1279,-1305,-1324,-1336,-1340,-1338,-1327,-1314,-1297,-1275,-1254,-1233,-1207,-1181,-1158,-1137,-1119,-1104,-1089,-1075,
+-1062,-1044,-1025,-1009,-995,-978,-962,-949,-941,-936,-934,-933,-933,-939,-943,-951,-970,-992,-1013,-1032,
+-1046,-1053,-1056,-1057,-1050,-1032,-1009,-989,-971,-956,-944,-934,-927,-924,-923,-923,-923,-922,-920,-918,
+-915,-911,-906,-901,-898,-897,-895,-892,-889,-886,-884,-881,-876,-867,-858,-849,-840,-829,-817,-805,
+-792,-777,-760,-740,-719,-698,-681,-670,-661,-653,-646,-641,-640,-644,-649,-654,-660,-660,-656,-654,
+-659,-671,-688,-707,-722,-725,-720,-715,-705,-693,-688,-685,-686,-694,-700,-704,-706,-701,-691,-677,
+-660,-645,-631,-613,-588,-559,-534,-514,-503,-498,-495,-490,-483,-477,-466,-446,-422,-398,-377,-361,
+-350,-341,-332,-323,-313,-302,-291,-279,-268,-256,-245,-235,-226,-217,-208,-198,-188,-175,-160,-147,
+-138,-135,-132,-130,-128,-126,-124,-124,-122,-118,-111,-100,-85,-67,-53,-42,-34,-24,-11,-1,
+6,17,29,42,55,69,82,92,99,104,110,118,127,135,142,146,150,152,154,157,
+160,162,164,164,162,160,158,158,160,163,168,170,166,157,147,141,141,142,143,145,
+149,153,158,164,169,173,178,182,186,194,202,210,216,222,228,234,238,238,237,236,
+235,234,237,240,241,241,242,244,249,256,263,264,262,260,257,259,263,268,273,279,
+283,287,294,300,305,308,310,312,311,307,301,293,289,290,293,295,294,287,278,268,
+262,260,260,258,252,245,241,242,243,246,250,257,264,267,272,281,292,303,309,311,
+310,312,319,325,326,323,318,313,307,301,297,292,290,294,298,299,300,302,302,298,
+291,281,268,253,242,234,225,217,207,196,188,181,176,169,160,152,146,144,141,137,
+140,145,143,139,138,138,138,145,155,164,167,161,157,159,161,157,155,155,153,149,
+142,137,137,133,125,115,102,89,83,88,92,91,85,74,66,62,57,51,47,47,
+51,59,67,71,75,77,75,70,66,61,49,29,10,-5,-20,-27,-25,-19,-17,-19,
+-21,-24,-34,-45,-59,-72,-83,-93,-102,-112,-124,-134,-139,-147,-158,-170,-181,-188,-187,-181,
+-175,-173,-174,-182,-197,-216,-240,-273,-312,-347,-382,-425,-469,-510,-543,-573,-600,-620,-637,-647,
+-654,-661,-668,-670,-665,-654,-639,-626,-617,-611,-607,-606,-606,-605,-607,-611,-618,-624,-632,-639,
+-647,-661,-676,-687,-695,-703,-712,-721,-727,-732,-736,-739,-737,-736,-734,-731,-728,-722,-716,-710,
+-704,-696,-686,-675,-663,-653,-642,-628,-614,-604,-601,-598,-595,-593,-587,-579,-570,-558,-544,-526,
+-509,-493,-475,-456,-439,-426,-415,-403,-390,-382,-380,-387,-406,-443,-501,-573,-644,-710,-774,-834,
+-889,-938,-982,-1020,-1053,-1080,-1100,-1114,-1121,-1120,-1113,-1103,-1093,-1086,-1081,-1080,-1083,-1090,-1094,-1095,
+-1087,-1068,-1057,-1059,-1070,-1082,-1101,-1131,-1162,-1186,-1212,-1234,-1248,-1273,-1302,-1324,-1343,-1361,-1380,-1399,
+-1418,-1436,-1450,-1464,-1486,-1505,-1519,-1535,-1556,-1581,-1604,-1618,-1632,-1644,-1648,-1647,-1646,-1648,-1648,-1654,
+-1656,-1657,-1668,-1684,-1708,-1739,-1776,-1817,-1863,-1911,-1959,-2002,-2035,-2060,-2083,-2107,-2130,-2157,-2188,-2212,
+-2225,-2236,-2247,-2258,-2264,-2267,-2272,-2276,-2280,-2284,-2290,-2298,-2306,-2310,-2317,-2330,-2349,-2368,-2382,-2395,
+-2408,-2416,-2422,-2428,-2432,-2428,-2423,-2413,-2390,-2358,-2325,-2297,-2275,-2258,-2240,-2219,-2194,-2166,-2136,-2106,
+-2080,-2059,-2044,-2032,-2026,-2024,-2022,-2014,-1999,-1983,-1966,-1934,-1897,-1858,-1823,-1799,-1784,-1780,-1783,-1794,
+-1810,-1825,-1839,-1852,-1864,-1874,-1880,-1882,-1880,-1874,-1865,-1853,-1838,-1819,-1796,-1770,-1739,-1708,-1683,-1662,
+-1642,-1626,-1610,-1597,-1582,-1564,-1543,-1519,-1496,-1479,-1470,-1464,-1458,-1456,-1447,-1434,-1416,-1390,-1363,-1334,
+-1307,-1279,-1245,-1212,-1184,-1155,-1126,-1099,-1066,-1034,-1007,-976,-943,-913,-887,-851,-803,-752,-702,-657,
+-610,-565,-514,-467,-422,-376,-336,-297,-251,-209,-170,-128,-97,-76,-60,-37,-7,38,63,70,
+87,109,149,190,235,290,334,365,396,419,438,463,503,558,621,688,755,825,888,942,
+992,1040,1081,1118,1151,1182,1210,1237,1263,1287,1314,1341,1372,1405,1442,1478,1514,1551,1594,1643,
+1696,1747,1795,1842,1888,1932,1977,2023,2073,2127,2183,2241,2302,2364,2422,2469,2503,2527,2547,2562,
+2573,2590,2607,2624,2639,2655,2668,2677,2682,2689,2707,2726,2745,2762,2779,2801,2816,2813,2800,2780,
+2759,2766,2805,2837,2866,2916,2980,3035,3085,3137,3186,3235,3277,3307,3327,3350,3378,3410,3447,3484,
+3518,3553,3585,3617,3646,3671,3696,3722,3746,3765,3784,3806,3829,3852,3871,3886,3903,3922,3942,3960,
+3976,3990,4002,4015,4031,4054,4080,4107,4132,4158,4187,4220,4253,4285,4314,4342,4373,4406,4441,4474,
+4503,4531,4562,4598,4637,4671,4700,4723,4741,4757,4774,4795,4819,4847,4878,4910,4940,4970,4998,5027,
+5054,5075,5091,5108,5123,5139,5157,5172,5187,5203,5221,5249,5279,5292,5299,5313,5326,5331,5323,5313,
+5279,5227,5208,5192,5208,5232,5208,5233,5300,5319,5326,5342,5374,5424,5464,5463,5427,5396,5392,5418,
+5441,5462,5464,5467,5482,5482,5489,5509,5538,5561,5584,5612,5640,5660,5675,5690,5704,5713,5710,5695,
+5671,5635,5602,5579,5567,5564,5566,5573,5584,5596,5597,5597,5604,5615,5626,5630,5633,5642,5651,5659,
+5660,5653,5644,5630,5607,5581,5567,5575,5585,5572,5553,5534,5517,5498,5472,5449,5435,5435,5445,5453,
+5455,5460,5461,5457,5455,5456,5469,5473,5464,5448,5427,5412,5403,5392,5373,5357,5349,5336,5309,5291,
+5286,5283,5275,5265,5261,5258,5256,5240,5223,5215,5203,5183,5154,5130,5109,5088,5077,5059,5029,4994,
+4971,4968,4957,4931,4896,4859,4824,4790,4765,4746,4722,4693,4663,4633,4607,4586,4570,4551,4527,4503,
+4482,4463,4448,4433,4421,4408,4394,4380,4368,4353,4338,4323,4305,4287,4273,4258,4242,4226,4213,4199,
+4180,4160,4145,4136,4127,4111,4092,4074,4060,4047,4031,4017,4002,3987,3972,3955,3933,3900,3858,3805,
+3743,3677,3622,3581,3548,3520,3488,3438,3371,3292,3212,3141,3086,3049,3018,2987,2951,2914,2881,2849,
+2816,2785,2755,2728,2702,2684,2674,2658,2636,2614,2595,2575,2557,2536,2506,2476,2451,2421,2390,2362,
+2335,2306,2275,2251,2222,2192,2167,2147,2126,2098,2065,2032,1997,1961,1926,1888,1854,1824,1795,1773,
+1752,1733,1716,1701,1686,1669,1654,1639,1625,1613,1601,1588,1577,1563,1547,1530,1512,1493,1474,1453,
+1431,1408,1383,1357,1330,1302,1271,1240,1208,1176,1144,1114,1085,1057,1032,1008,985,965,946,927,
+910,894,879,864,850,836,823,810,798,787,777,766,755,744,731,715,700,684,666,647,
+625,603,581,557,532,505,476,447,416,386,357,330,307,286,266,248,232,219,207,198,
+192,186,184,189,196,201,206,209,210,209,206,200,191,179,165,147,126,103,76,48,
+18,-13,-49,-86,-125,-161,-196,-229,-261,-288,-314,-340,-365,-388,-410,-432,-453,-476,-500,-522,
+-542,-561,-578,-594,-611,-630,-653,-673,-688,-701,-711,-722,-730,-737,-742,-745,-747,-748,-749,-752,
+-757,-765,-779,-790,-796,-801,-807,-813,-819,-826,-834,-844,-855,-866,-876,-886,-897,-906,-915,-925,
+-936,-946,-955,-963,-969,-973,-977,-980,-975,-970,-966,-960,-955,-949,-943,-938,-933,-929,-924,-918,
+-911,-905,-902,-907,-913,-919,-937,-963,-983,-1002,-1026,-1046,-1064,-1080,-1093,-1102,-1112,-1123,-1132,-1139,
+-1145,-1154,-1165,-1175,-1187,-1201,-1216,-1226,-1234,-1243,-1249,-1256,-1261,-1268,-1274,-1281,-1291,-1305,-1318,-1329,
+-1337,-1345,-1353,-1362,-1371,-1379,-1385,-1389,-1390,-1388,-1384,-1378,-1372,-1369,-1365,-1361,-1358,-1355,-1352,-1348,
+-1347,-1347,-1348,-1349,-1349,-1347,-1343,-1340,-1336,-1331,-1325,-1321,-1318,-1316,-1313,-1311,-1308,-1304,-1299,-1293,
+-1284,-1280,-1280,-1285,-1287,-1284,-1275,-1260,-1243,-1225,-1206,-1188,-1169,-1153,-1141,-1130,-1120,-1116,-1124,-1143,
+-1163,-1179,-1208,-1236,-1254,-1267,-1270,-1269,-1268,-1253,-1226,-1207,-1190,-1171,-1156,-1139,-1119,-1102,-1084,-1064,
+-1042,-1021,-1004,-990,-976,-958,-939,-923,-912,-901,-896,-895,-894,-893,-892,-893,-896,-908,-928,-956,
+-983,-1006,-1021,-1029,-1030,-1028,-1022,-1013,-1004,-992,-980,-970,-957,-942,-931,-922,-917,-915,-915,-917,
+-921,-923,-923,-922,-920,-914,-909,-905,-901,-896,-890,-880,-869,-855,-839,-824,-808,-794,-781,-770,
+-759,-747,-734,-719,-703,-687,-673,-662,-649,-638,-634,-636,-638,-640,-642,-646,-652,-661,-672,-676,
+-674,-672,-677,-691,-710,-727,-730,-720,-713,-716,-721,-722,-724,-718,-713,-711,-709,-704,-694,-678,
+-663,-650,-636,-624,-610,-590,-567,-542,-519,-502,-490,-480,-471,-464,-461,-459,-451,-437,-416,-394,
+-374,-357,-343,-330,-320,-309,-298,-288,-278,-268,-256,-246,-235,-222,-209,-196,-183,-171,-160,-149,
+-143,-137,-129,-122,-116,-113,-112,-110,-106,-102,-103,-102,-94,-87,-81,-66,-51,-35,-14,1,
+14,27,41,55,66,74,83,92,98,105,112,121,129,136,144,154,165,174,179,181,
+181,179,178,178,178,179,179,177,178,178,180,181,182,180,175,167,160,155,153,154,
+154,155,157,162,168,177,185,194,204,214,223,230,237,244,247,249,252,257,261,262,
+263,265,270,276,278,274,270,268,268,270,273,276,277,275,268,263,264,267,270,275,
+277,278,278,279,281,285,291,295,295,297,299,300,303,304,304,303,303,303,302,301,
+296,290,280,269,257,246,237,233,231,232,234,236,239,243,250,260,272,282,288,293,
+295,296,298,300,300,299,297,292,287,281,276,278,289,302,311,317,323,328,335,340,
+341,333,317,297,276,257,242,230,220,214,207,201,194,188,180,173,165,159,158,159,
+157,155,158,164,166,162,156,154,159,171,184,192,186,173,163,159,155,151,150,151,
+161,168,166,160,149,133,117,104,98,101,104,100,90,82,73,62,57,53,47,42,
+40,44,50,52,53,53,51,46,35,25,13,-3,-23,-41,-55,-67,-72,-73,-72,-69,
+-65,-61,-60,-61,-65,-71,-76,-79,-81,-83,-88,-95,-104,-117,-130,-143,-157,-170,-179,-185,
+-190,-194,-197,-202,-209,-217,-227,-239,-252,-266,-280,-297,-318,-341,-367,-392,-414,-434,-449,-457,
+-467,-479,-495,-516,-537,-548,-545,-533,-514,-493,-470,-448,-430,-420,-415,-415,-418,-423,-429,-443,
+-456,-472,-494,-519,-545,-571,-598,-621,-640,-653,-665,-673,-679,-683,-687,-689,-690,-689,-686,-681,
+-675,-667,-657,-645,-633,-620,-602,-581,-560,-542,-528,-516,-509,-503,-495,-485,-474,-462,-452,-440,
+-424,-408,-390,-371,-354,-341,-333,-329,-329,-336,-350,-376,-415,-469,-532,-598,-657,-710,-759,-805,
+-850,-894,-936,-975,-1011,-1044,-1071,-1096,-1119,-1137,-1149,-1156,-1158,-1160,-1159,-1157,-1159,-1163,-1170,-1177,
+-1177,-1172,-1153,-1120,-1119,-1161,-1200,-1232,-1265,-1289,-1313,-1334,-1344,-1352,-1368,-1388,-1407,-1424,-1441,-1460,
+-1477,-1492,-1505,-1518,-1532,-1549,-1564,-1578,-1590,-1603,-1612,-1613,-1617,-1624,-1628,-1632,-1638,-1647,-1656,-1662,
+-1667,-1672,-1676,-1679,-1684,-1692,-1713,-1747,-1791,-1849,-1913,-1970,-2021,-2066,-2105,-2143,-2179,-2210,-2238,-2262,
+-2284,-2306,-2320,-2332,-2342,-2345,-2347,-2351,-2355,-2359,-2363,-2368,-2374,-2379,-2382,-2388,-2402,-2424,-2442,-2454,
+-2464,-2470,-2475,-2480,-2488,-2495,-2498,-2496,-2486,-2465,-2438,-2411,-2388,-2373,-2358,-2339,-2319,-2296,-2271,-2243,
+-2215,-2192,-2173,-2159,-2148,-2139,-2134,-2124,-2106,-2084,-2056,-2016,-1983,-1967,-1939,-1894,-1857,-1835,-1823,-1824,
+-1840,-1863,-1887,-1908,-1929,-1951,-1971,-1986,-1991,-1992,-1989,-1984,-1975,-1963,-1949,-1931,-1913,-1895,-1877,-1860,
+-1844,-1830,-1815,-1800,-1783,-1764,-1743,-1722,-1701,-1679,-1663,-1648,-1632,-1620,-1608,-1593,-1576,-1557,-1537,-1517,
+-1495,-1471,-1445,-1420,-1393,-1365,-1332,-1298,-1264,-1229,-1198,-1168,-1137,-1108,-1076,-1047,-1012,-973,-935,-890,
+-843,-790,-742,-698,-652,-608,-563,-506,-454,-407,-363,-322,-286,-247,-202,-171,-150,-109,-69,-42,
+3,40,79,116,155,212,257,300,329,331,328,312,289,282,304,356,425,508,595,675,
+748,817,877,930,976,1016,1055,1096,1138,1181,1222,1260,1295,1329,1365,1404,1443,1481,1516,1559,
+1607,1659,1711,1760,1804,1849,1896,1945,1996,2049,2105,2162,2221,2283,2347,2410,2464,2505,2534,2556,
+2577,2598,2615,2632,2652,2674,2696,2715,2735,2753,2770,2787,2808,2830,2846,2857,2862,2861,2849,2830,
+2813,2796,2771,2786,2850,2893,2889,2902,2948,2971,3014,3091,3148,3187,3213,3237,3264,3294,3329,3366,
+3404,3446,3488,3528,3566,3601,3633,3662,3692,3724,3754,3781,3804,3821,3837,3856,3875,3891,3908,3926,
+3946,3965,3986,4006,4027,4046,4067,4093,4124,4154,4183,4215,4255,4300,4346,4386,4416,4442,4466,4495,
+4527,4560,4592,4625,4658,4688,4717,4742,4767,4794,4820,4842,4862,4888,4918,4950,4979,5010,5043,5076,
+5108,5130,5140,5148,5164,5180,5200,5218,5235,5247,5260,5284,5320,5360,5396,5423,5443,5449,5428,5403,
+5379,5358,5351,5338,5339,5342,5367,5447,5490,5515,5538,5513,5452,5395,5338,5292,5296,5296,5315,5354,
+5394,5438,5480,5512,5534,5550,5551,5572,5612,5619,5618,5627,5646,5675,5704,5730,5741,5744,5743,5730,
+5700,5664,5631,5610,5603,5606,5614,5630,5654,5673,5683,5688,5698,5712,5722,5725,5722,5717,5718,5722,
+5728,5729,5728,5727,5727,5720,5708,5700,5692,5682,5675,5659,5634,5604,5582,5572,5564,5567,5569,5547,
+5511,5497,5504,5512,5514,5515,5518,5526,5530,5516,5506,5491,5477,5466,5443,5426,5420,5406,5382,5364,
+5349,5333,5316,5304,5285,5264,5252,5243,5233,5213,5188,5171,5153,5124,5095,5080,5077,5028,5013,4981,
+4948,4921,4903,4884,4861,4840,4813,4783,4759,4734,4711,4694,4678,4659,4635,4610,4588,4568,4547,4527,
+4508,4491,4477,4464,4450,4438,4427,4415,4402,4388,4371,4350,4329,4311,4295,4280,4264,4247,4228,4208,
+4189,4169,4149,4130,4112,4096,4082,4070,4059,4047,4033,4016,3996,3976,3955,3935,3914,3891,3863,3830,
+3790,3740,3675,3609,3560,3525,3493,3447,3388,3326,3269,3218,3171,3127,3085,3042,2998,2963,2937,2914,
+2890,2870,2850,2825,2799,2778,2761,2747,2726,2698,2664,2620,2585,2560,2529,2499,2479,2450,2420,2394,
+2366,2336,2299,2273,2251,2232,2226,2223,2215,2193,2166,2134,2098,2064,2025,1978,1931,1888,1850,1817,
+1784,1757,1732,1713,1695,1677,1663,1652,1642,1629,1618,1606,1593,1577,1560,1541,1525,1513,1499,1481,
+1459,1433,1408,1383,1355,1328,1298,1266,1234,1202,1170,1138,1108,1079,1052,1026,1002,979,960,942,
+926,911,897,884,872,861,849,837,825,813,803,792,780,768,754,738,722,704,684,665,
+644,623,600,576,551,524,496,468,439,410,383,357,331,306,283,262,244,227,214,204,
+196,187,178,170,166,166,170,176,181,181,175,167,159,147,134,121,107,92,76,57,
+38,16,-8,-35,-64,-97,-134,-171,-207,-243,-275,-306,-337,-365,-392,-419,-445,-470,-495,-519,
+-543,-566,-588,-610,-631,-653,-673,-692,-711,-728,-743,-755,-764,-772,-777,-779,-777,-773,-772,-774,
+-779,-786,-794,-802,-810,-817,-824,-831,-838,-847,-857,-867,-877,-888,-898,-908,-918,-929,-938,-947,
+-957,-965,-974,-982,-989,-996,-1000,-1002,-1003,-1005,-1005,-999,-995,-990,-984,-978,-971,-965,-958,-952,
+-945,-938,-932,-930,-931,-933,-940,-951,-966,-974,-989,-1017,-1039,-1059,-1077,-1091,-1102,-1113,-1124,-1135,
+-1148,-1162,-1177,-1193,-1208,-1222,-1238,-1254,-1263,-1270,-1279,-1289,-1298,-1304,-1312,-1322,-1334,-1348,-1361,-1374,
+-1384,-1392,-1397,-1400,-1401,-1400,-1398,-1395,-1390,-1385,-1379,-1372,-1367,-1363,-1363,-1364,-1364,-1363,-1363,-1368,
+-1378,-1390,-1403,-1416,-1427,-1435,-1442,-1448,-1454,-1459,-1461,-1460,-1458,-1456,-1451,-1444,-1436,-1425,-1411,-1395,
+-1378,-1360,-1344,-1331,-1319,-1306,-1292,-1274,-1253,-1229,-1204,-1179,-1158,-1140,-1125,-1111,-1093,-1070,-1047,-1029,
+-1013,-1005,-1020,-1061,-1124,-1179,-1203,-1218,-1224,-1217,-1203,-1190,-1176,-1162,-1149,-1136,-1123,-1106,-1088,-1074,
+-1057,-1034,-1008,-984,-960,-937,-916,-895,-878,-869,-859,-854,-855,-857,-856,-859,-865,-871,-876,-882,
+-890,-904,-923,-945,-970,-992,-1005,-1010,-1014,-1017,-1017,-1014,-1006,-990,-973,-958,-946,-937,-932,-929,
+-928,-927,-922,-919,-919,-920,-918,-913,-905,-895,-885,-875,-863,-848,-829,-809,-789,-771,-754,-739,
+-725,-711,-699,-688,-678,-671,-667,-662,-654,-642,-632,-629,-633,-639,-646,-655,-667,-681,-695,-706,
+-709,-709,-710,-718,-729,-740,-753,-760,-758,-755,-754,-754,-754,-752,-743,-730,-717,-702,-689,-680,
+-666,-652,-640,-629,-617,-604,-588,-569,-547,-525,-505,-486,-467,-450,-437,-429,-426,-424,-419,-409,
+-394,-375,-356,-337,-321,-308,-298,-289,-281,-272,-263,-253,-242,-229,-215,-201,-188,-175,-163,-152,
+-141,-131,-122,-115,-105,-96,-89,-85,-82,-79,-76,-72,-66,-61,-58,-51,-38,-28,-18,-5,
+12,32,47,61,75,89,100,108,114,122,130,139,148,156,163,170,179,191,202,208,
+208,205,200,198,196,196,193,193,193,193,193,192,193,196,198,195,193,189,186,183,
+178,175,175,177,182,189,197,205,215,227,237,246,254,261,267,270,266,256,253,259,
+268,278,286,290,290,288,289,289,288,284,281,280,280,280,281,281,280,279,277,275,
+274,274,274,276,274,269,269,276,282,286,291,295,299,304,306,307,307,308,311,313,
+314,313,306,293,279,266,258,254,252,252,252,254,257,257,257,257,259,263,265,264,
+266,270,269,266,264,262,258,254,251,249,249,259,271,279,286,290,295,301,309,315,
+319,323,319,307,292,277,264,253,243,235,226,216,208,201,195,188,183,177,171,171,
+170,168,169,174,182,184,175,162,154,159,173,187,197,202,203,200,197,190,182,176,
+175,181,178,165,148,135,122,116,115,106,98,92,86,78,68,61,55,50,43,37,
+35,35,36,37,34,26,19,14,7,0,-6,-14,-26,-40,-54,-66,-77,-83,-84,-84,
+-81,-76,-73,-71,-70,-71,-72,-74,-77,-81,-86,-93,-101,-108,-116,-124,-131,-139,-146,-152,
+-159,-167,-175,-182,-189,-195,-202,-210,-219,-227,-235,-246,-258,-270,-281,-291,-298,-303,-306,-310,
+-314,-321,-328,-338,-348,-353,-352,-353,-352,-349,-336,-299,-264,-236,-206,-186,-178,-172,-173,-182,
+-203,-226,-251,-288,-324,-359,-393,-429,-463,-496,-523,-546,-567,-585,-599,-605,-607,-611,-614,-617,
+-617,-614,-608,-600,-592,-585,-576,-563,-543,-517,-487,-459,-437,-421,-410,-399,-385,-368,-349,-333,
+-319,-304,-292,-285,-283,-286,-294,-308,-328,-356,-389,-432,-483,-540,-594,-645,-686,-720,-751,-782,
+-815,-850,-886,-924,-960,-991,-1020,-1047,-1074,-1099,-1121,-1139,-1156,-1170,-1181,-1190,-1197,-1208,-1221,-1234,
+-1247,-1254,-1257,-1262,-1272,-1287,-1315,-1351,-1384,-1412,-1425,-1425,-1420,-1425,-1432,-1439,-1452,-1466,-1481,-1497,
+-1512,-1525,-1534,-1538,-1537,-1532,-1534,-1549,-1567,-1581,-1588,-1603,-1621,-1635,-1641,-1645,-1656,-1659,-1661,-1667,
+-1673,-1676,-1680,-1682,-1685,-1695,-1711,-1734,-1769,-1817,-1876,-1938,-1996,-2050,-2102,-2155,-2209,-2262,-2304,-2333,
+-2358,-2380,-2400,-2416,-2427,-2432,-2436,-2438,-2439,-2439,-2439,-2438,-2438,-2442,-2448,-2456,-2469,-2486,-2503,-2515,
+-2523,-2529,-2535,-2548,-2559,-2564,-2567,-2567,-2563,-2548,-2526,-2505,-2490,-2477,-2461,-2443,-2425,-2409,-2390,-2369,
+-2345,-2320,-2299,-2281,-2267,-2256,-2247,-2236,-2220,-2206,-2189,-2161,-2125,-2091,-2058,-2028,-1994,-1948,-1916,-1901,
+-1897,-1904,-1930,-1968,-1999,-2026,-2052,-2075,-2091,-2102,-2109,-2111,-2111,-2108,-2102,-2094,-2085,-2070,-2052,-2035,
+-2019,-2002,-1985,-1971,-1959,-1945,-1929,-1912,-1895,-1876,-1859,-1842,-1823,-1803,-1783,-1765,-1746,-1727,-1703,-1676,
+-1653,-1630,-1606,-1585,-1565,-1542,-1521,-1496,-1468,-1441,-1415,-1387,-1357,-1324,-1293,-1259,-1222,-1185,-1150,-1113,
+-1077,-1038,-996,-948,-899,-847,-791,-733,-676,-618,-558,-506,-459,-415,-365,-316,-270,-223,-175,-136,
+-89,-47,11,62,118,170,194,227,235,255,279,274,268,282,290,281,285,308,340,382,
+438,506,581,652,719,780,835,886,938,991,1046,1104,1164,1220,1270,1317,1360,1402,1444,1488,
+1535,1591,1649,1697,1738,1780,1824,1872,1923,1980,2039,2101,2164,2227,2290,2352,2410,2460,2499,2530,
+2552,2568,2585,2606,2628,2650,2671,2692,2713,2730,2747,2766,2787,2804,2822,2843,2861,2872,2879,2875,
+2862,2848,2829,2782,2716,2683,2681,2702,2739,2777,2813,2866,2937,3007,3081,3144,3186,3221,3259,3294,
+3329,3370,3415,3458,3497,3535,3568,3600,3634,3670,3706,3743,3777,3808,3829,3847,3865,3881,3893,3905,
+3923,3946,3970,3994,4019,4046,4072,4096,4116,4137,4160,4188,4221,4258,4300,4344,4385,4418,4451,4487,
+4524,4559,4599,4642,4679,4705,4730,4758,4787,4814,4840,4865,4887,4913,4951,4992,5028,5058,5088,5119,
+5151,5182,5207,5219,5226,5231,5239,5250,5271,5293,5312,5326,5343,5371,5401,5432,5461,5474,5463,5442,
+5417,5395,5368,5344,5338,5314,5292,5344,5416,5451,5464,5474,5444,5381,5339,5305,5276,5257,5261,5288,
+5326,5372,5424,5479,5524,5561,5580,5599,5628,5648,5647,5637,5639,5661,5700,5744,5768,5767,5761,5745,
+5719,5693,5672,5657,5650,5648,5656,5673,5693,5713,5732,5747,5754,5759,5769,5775,5777,5780,5778,5775,
+5782,5797,5805,5799,5795,5796,5790,5775,5755,5732,5708,5690,5667,5642,5620,5608,5602,5603,5610,5630,
+5635,5627,5631,5644,5668,5631,5564,5522,5478,5439,5399,5362,5354,5374,5398,5413,5415,5415,5419,5413,
+5400,5379,5348,5321,5297,5274,5257,5233,5207,5181,5162,5147,5133,5114,5081,5046,5028,5028,4967,4946,
+4928,4917,4904,4885,4859,4834,4815,4795,4774,4755,4726,4698,4679,4662,4646,4624,4604,4587,4570,4554,
+4535,4516,4502,4491,4477,4459,4441,4424,4409,4397,4386,4373,4359,4342,4323,4301,4279,4258,4238,4214,
+4190,4167,4149,4132,4117,4102,4088,4072,4055,4038,4021,4006,3994,3982,3966,3949,3930,3911,3890,3869,
+3841,3807,3759,3695,3626,3569,3531,3498,3447,3384,3326,3272,3226,3183,3138,3091,3046,3014,2991,2970,
+2943,2914,2883,2860,2847,2847,2851,2836,2798,2757,2717,2669,2611,2562,2519,2489,2474,2464,2446,2400,
+2354,2312,2296,2298,2285,2248,2231,2234,2239,2224,2196,2171,2151,2148,2131,2092,2054,2014,1966,1917,
+1867,1825,1788,1760,1733,1708,1685,1665,1648,1634,1622,1610,1599,1586,1571,1555,1539,1523,1506,1489,
+1471,1452,1431,1406,1380,1352,1324,1294,1263,1232,1200,1169,1138,1107,1079,1051,1025,1001,979,960,
+942,927,912,901,889,880,869,858,847,835,824,813,801,788,774,758,741,723,705,686,
+664,643,621,597,572,546,519,492,464,436,410,384,360,336,313,291,271,253,238,225,
+214,204,194,186,179,173,166,161,156,150,143,133,123,111,97,81,64,47,31,14,
+0,-12,-24,-37,-51,-69,-90,-113,-139,-169,-203,-238,-273,-308,-339,-367,-396,-425,-455,-485,
+-515,-545,-573,-599,-623,-647,-669,-690,-710,-730,-752,-772,-788,-799,-803,-801,-795,-790,-785,-784,
+-787,-793,-802,-810,-817,-825,-837,-849,-856,-865,-875,-885,-894,-902,-911,-920,-929,-939,-948,-957,
+-965,-973,-982,-991,-998,-1005,-1011,-1015,-1016,-1014,-1008,-1002,-1002,-1002,-1000,-998,-994,-991,-986,-980,
+-975,-972,-971,-969,-970,-972,-976,-981,-989,-1000,-1013,-1028,-1044,-1060,-1077,-1094,-1112,-1128,-1144,-1159,
+-1176,-1194,-1210,-1225,-1240,-1254,-1268,-1282,-1296,-1308,-1320,-1329,-1338,-1345,-1349,-1354,-1361,-1370,-1382,-1394,
+-1406,-1417,-1423,-1425,-1422,-1417,-1411,-1406,-1402,-1398,-1395,-1395,-1394,-1393,-1391,-1386,-1378,-1369,-1361,-1362,
+-1371,-1382,-1395,-1408,-1420,-1433,-1445,-1455,-1462,-1469,-1476,-1482,-1486,-1488,-1488,-1484,-1476,-1467,-1456,-1444,
+-1431,-1419,-1409,-1399,-1388,-1374,-1358,-1339,-1312,-1279,-1244,-1209,-1177,-1152,-1139,-1133,-1129,-1119,-1098,-1084,
+-1080,-1078,-1078,-1077,-1089,-1123,-1156,-1185,-1203,-1208,-1207,-1196,-1189,-1191,-1192,-1184,-1167,-1144,-1125,-1110,
+-1092,-1072,-1051,-1030,-1003,-966,-930,-896,-866,-842,-822,-815,-818,-824,-827,-825,-825,-833,-846,-861,
+-871,-877,-886,-899,-914,-937,-964,-989,-1007,-1018,-1025,-1032,-1034,-1027,-1013,-998,-986,-977,-972,-971,
+-967,-962,-954,-945,-934,-927,-922,-917,-910,-902,-889,-874,-858,-841,-820,-799,-779,-762,-746,-734,
+-723,-709,-698,-691,-685,-679,-678,-679,-676,-669,-661,-657,-660,-665,-672,-680,-690,-705,-720,-736,
+-749,-760,-771,-781,-789,-797,-807,-818,-822,-814,-800,-789,-781,-769,-757,-745,-729,-709,-680,-653,
+-640,-633,-631,-626,-616,-607,-596,-581,-561,-539,-516,-493,-470,-448,-428,-411,-398,-388,-380,-371,
+-363,-353,-342,-328,-314,-301,-290,-281,-272,-263,-254,-243,-231,-220,-208,-196,-183,-171,-160,-150,
+-140,-130,-119,-108,-98,-90,-83,-76,-72,-67,-62,-59,-54,-47,-38,-29,-19,-9,4,19,
+33,44,58,76,93,109,123,135,146,157,164,169,172,176,182,189,197,206,215,223,
+227,227,222,216,210,207,207,210,211,211,208,205,203,201,199,198,198,197,196,195,
+194,192,190,188,188,191,196,204,214,224,236,248,258,267,272,275,278,284,285,285,
+287,292,299,301,301,302,303,304,304,304,302,299,297,297,298,300,301,298,291,285,
+282,282,280,277,275,274,276,279,281,284,288,293,298,302,304,307,310,312,314,314,
+315,317,316,311,304,295,286,279,277,273,264,255,250,244,236,230,226,224,225,225,
+221,219,219,214,208,202,199,196,192,191,195,201,206,213,219,222,223,223,225,225,
+227,231,233,233,233,234,235,233,232,228,221,212,200,188,175,167,162,154,148,146,
+145,148,153,156,162,171,177,173,164,161,166,177,187,193,197,200,202,198,191,183,
+177,174,170,160,147,139,134,124,122,117,109,103,97,86,75,64,51,43,36,33,
+29,27,24,20,14,4,-4,-13,-21,-30,-39,-46,-51,-56,-62,-68,-74,-77,-79,-80,
+-81,-81,-80,-81,-82,-83,-86,-89,-93,-98,-104,-109,-112,-114,-115,-117,-117,-117,-117,-118,
+-121,-125,-132,-143,-154,-164,-172,-178,-186,-194,-202,-211,-222,-233,-243,-252,-259,-266,-274,-282,
+-287,-290,-293,-296,-300,-303,-305,-302,-296,-285,-271,-254,-234,-208,-179,-152,-127,-103,-84,-74,
+-73,-83,-98,-115,-136,-159,-189,-228,-271,-310,-345,-374,-401,-427,-453,-474,-486,-488,-494,-509,
+-517,-522,-525,-527,-529,-528,-526,-521,-513,-500,-480,-452,-419,-389,-367,-350,-331,-311,-296,-285,
+-275,-268,-263,-266,-274,-285,-307,-338,-375,-413,-451,-490,-535,-583,-627,-664,-693,-716,-741,-771,
+-803,-837,-868,-895,-920,-945,-969,-994,-1021,-1049,-1075,-1095,-1112,-1129,-1147,-1166,-1181,-1196,-1212,-1234,
+-1258,-1280,-1301,-1322,-1345,-1364,-1386,-1416,-1449,-1475,-1488,-1485,-1472,-1461,-1458,-1464,-1472,-1482,-1499,-1518,
+-1539,-1561,-1580,-1595,-1608,-1618,-1624,-1627,-1635,-1642,-1647,-1659,-1673,-1689,-1700,-1710,-1719,-1728,-1733,-1734,
+-1734,-1740,-1745,-1747,-1748,-1755,-1763,-1773,-1795,-1831,-1876,-1930,-1989,-2053,-2116,-2175,-2230,-2282,-2331,-2374,
+-2412,-2444,-2468,-2485,-2496,-2506,-2514,-2520,-2521,-2517,-2511,-2505,-2500,-2498,-2501,-2515,-2532,-2549,-2562,-2568,
+-2571,-2573,-2583,-2607,-2629,-2646,-2657,-2656,-2650,-2638,-2619,-2597,-2584,-2571,-2551,-2531,-2512,-2500,-2488,-2476,
+-2463,-2447,-2429,-2411,-2399,-2389,-2381,-2367,-2351,-2339,-2327,-2310,-2285,-2253,-2222,-2188,-2149,-2105,-2063,-2034,
+-2018,-2014,-2015,-2025,-2049,-2076,-2104,-2139,-2173,-2197,-2213,-2221,-2227,-2230,-2232,-2232,-2230,-2227,-2220,-2209,
+-2195,-2178,-2157,-2139,-2125,-2111,-2095,-2079,-2063,-2050,-2034,-2011,-1990,-1970,-1947,-1925,-1906,-1885,-1866,-1850,
+-1828,-1805,-1783,-1759,-1733,-1707,-1680,-1658,-1637,-1618,-1599,-1576,-1552,-1526,-1495,-1463,-1433,-1401,-1369,-1336,
+-1302,-1266,-1224,-1173,-1114,-1064,-1019,-966,-908,-846,-789,-730,-666,-608,-552,-497,-447,-397,-347,-300,
+-249,-196,-144,-88,-35,19,62,102,132,174,222,262,275,285,305,316,331,351,374,392,
+422,448,465,485,519,567,626,684,735,782,828,873,923,986,1064,1149,1225,1289,1343,1390,
+1434,1477,1528,1592,1658,1712,1760,1805,1854,1908,1969,2034,2104,2175,2245,2307,2360,2407,2445,2477,
+2501,2520,2535,2551,2572,2594,2616,2642,2665,2686,2706,2728,2750,2769,2786,2805,2825,2845,2860,2874,
+2886,2886,2850,2791,2744,2709,2688,2679,2669,2671,2697,2734,2770,2816,2870,2939,3023,3092,3149,3205,
+3256,3298,3341,3383,3426,3468,3508,3544,3577,3613,3651,3688,3719,3750,3781,3811,3841,3867,3881,3892,
+3911,3936,3965,3994,4022,4046,4072,4101,4131,4159,4185,4209,4235,4270,4308,4344,4379,4417,4452,4491,
+4534,4568,4595,4630,4671,4708,4737,4765,4795,4826,4857,4888,4917,4944,4976,5012,5047,5079,5110,5143,
+5180,5221,5260,5284,5291,5291,5292,5297,5315,5341,5366,5382,5392,5403,5418,5432,5451,5472,5471,5460,
+5441,5427,5419,5416,5399,5357,5286,5246,5289,5340,5411,5469,5495,5516,5498,5444,5382,5320,5286,5294,
+5317,5349,5393,5444,5495,5539,5565,5575,5586,5632,5672,5678,5679,5691,5710,5734,5767,5798,5813,5810,
+5789,5759,5733,5713,5703,5697,5700,5711,5728,5746,5768,5792,5809,5823,5829,5821,5809,5793,5775,5759,
+5761,5779,5779,5777,5779,5785,5791,5787,5776,5761,5751,5738,5716,5702,5679,5653,5636,5624,5622,5622,
+5625,5635,5644,5637,5617,5588,5544,5500,5466,5433,5403,5378,5356,5344,5330,5310,5300,5306,5317,5325,
+5322,5305,5284,5278,5276,5271,5257,5233,5204,5170,5143,5121,5102,5079,5057,5028,5000,4984,4967,4955,
+4931,4906,4894,4882,4864,4846,4826,4801,4774,4748,4721,4697,4679,4667,4656,4639,4618,4600,4588,4572,
+4551,4533,4519,4504,4490,4480,4469,4456,4440,4423,4403,4383,4364,4345,4327,4308,4287,4264,4243,4224,
+4202,4177,4156,4137,4117,4101,4085,4068,4049,4031,4016,4003,3990,3977,3967,3954,3936,3918,3897,3877,
+3856,3831,3800,3760,3706,3646,3595,3554,3516,3460,3397,3342,3294,3244,3193,3145,3099,3057,3029,3010,
+2991,2967,2937,2909,2886,2872,2869,2882,2895,2869,2825,2778,2709,2625,2560,2516,2486,2463,2426,2387,
+2347,2327,2328,2340,2351,2326,2295,2285,2280,2270,2244,2212,2190,2189,2186,2163,2138,2115,2081,2044,
+2004,1956,1902,1851,1799,1748,1714,1694,1672,1650,1631,1613,1598,1584,1568,1553,1539,1524,1510,1494,
+1478,1462,1445,1427,1407,1383,1357,1331,1303,1274,1244,1214,1182,1150,1120,1091,1063,1036,1012,991,
+973,956,940,927,915,904,893,882,869,857,844,832,820,808,794,779,763,744,725,704,
+683,661,638,615,590,564,537,510,483,458,433,409,385,363,341,320,300,282,268,254,
+241,229,219,210,202,192,181,168,154,138,121,102,83,63,43,24,5,-14,-36,-56,
+-71,-83,-92,-101,-107,-111,-116,-123,-133,-146,-160,-176,-193,-210,-233,-264,-300,-341,-380,-419,
+-455,-491,-528,-562,-592,-620,-646,-671,-691,-711,-731,-750,-766,-781,-791,-796,-795,-790,-784,-781,
+-782,-787,-794,-802,-812,-826,-839,-852,-864,-874,-885,-894,-903,-910,-916,-922,-929,-937,-945,-954,
+-963,-971,-980,-990,-999,-1008,-1015,-1019,-1021,-1021,-1014,-1001,-997,-994,-993,-1003,-1005,-1002,-1003,-1003,
+-1003,-1006,-1010,-1015,-1017,-1019,-1021,-1023,-1026,-1033,-1044,-1057,-1072,-1087,-1104,-1122,-1140,-1158,-1175,-1193,
+-1210,-1227,-1245,-1263,-1280,-1296,-1311,-1327,-1343,-1355,-1366,-1375,-1382,-1387,-1388,-1387,-1385,-1386,-1391,-1399,
+-1409,-1419,-1427,-1432,-1432,-1427,-1419,-1412,-1407,-1403,-1403,-1407,-1410,-1409,-1402,-1390,-1372,-1352,-1330,-1311,
+-1298,-1293,-1294,-1301,-1310,-1321,-1329,-1335,-1340,-1353,-1368,-1368,-1368,-1368,-1369,-1371,-1370,-1369,-1368,-1369,
+-1374,-1385,-1395,-1402,-1401,-1399,-1399,-1396,-1388,-1374,-1356,-1334,-1308,-1281,-1261,-1253,-1251,-1247,-1241,-1234,
+-1226,-1218,-1213,-1214,-1216,-1217,-1214,-1219,-1230,-1243,-1252,-1258,-1258,-1255,-1247,-1236,-1220,-1199,-1174,-1148,
+-1129,-1111,-1091,-1068,-1047,-1029,-1008,-980,-945,-913,-882,-854,-832,-822,-819,-817,-814,-812,-818,-831,
+-846,-864,-881,-895,-908,-922,-942,-965,-986,-1001,-1012,-1023,-1037,-1047,-1049,-1046,-1040,-1035,-1029,-1024,
+-1018,-1012,-1002,-990,-975,-962,-950,-939,-929,-918,-905,-891,-874,-855,-836,-816,-797,-781,-767,-756,
+-747,-738,-729,-722,-719,-718,-717,-719,-724,-729,-735,-738,-738,-735,-733,-736,-742,-750,-760,-773,
+-787,-800,-816,-835,-851,-861,-868,-873,-875,-870,-854,-834,-815,-798,-775,-749,-729,-709,-684,-653,
+-627,-611,-605,-603,-599,-595,-593,-585,-571,-551,-529,-508,-484,-457,-434,-410,-389,-374,-360,-348,
+-333,-318,-306,-296,-287,-278,-271,-265,-257,-249,-239,-228,-217,-204,-192,-179,-168,-157,-148,-141,
+-135,-127,-119,-110,-102,-93,-87,-79,-73,-66,-60,-53,-47,-42,-34,-27,-19,-8,5,21,
+35,47,61,78,101,128,147,165,179,190,199,201,199,199,204,210,215,218,224,231,
+234,236,236,234,233,231,230,231,232,233,233,231,229,227,226,223,221,219,217,215,
+214,213,214,214,214,213,213,215,221,228,236,245,254,265,274,281,286,289,293,304,
+317,325,331,335,340,344,339,335,334,332,331,328,325,325,327,324,319,315,311,308,
+305,299,293,292,291,286,284,285,287,289,292,294,298,304,309,315,321,324,326,325,
+324,323,323,322,316,306,293,284,281,278,273,265,257,251,244,236,227,218,210,202,
+197,193,191,190,188,188,189,189,187,186,186,187,188,190,193,201,208,213,215,219,
+223,226,231,236,238,236,230,222,215,209,202,191,177,163,151,142,134,128,125,125,
+125,125,127,130,135,143,153,164,163,158,158,162,173,178,169,165,164,167,167,163,
+159,156,153,148,139,134,136,135,132,127,121,115,107,98,87,76,64,52,44,40,
+36,30,25,19,12,2,-10,-24,-38,-50,-61,-70,-74,-79,-83,-85,-86,-86,-86,-88,
+-91,-94,-97,-99,-100,-100,-99,-100,-103,-108,-115,-119,-121,-118,-111,-104,-98,-93,-90,-86,
+-82,-80,-82,-88,-97,-108,-118,-131,-141,-146,-149,-153,-161,-172,-185,-197,-206,-215,-224,-233,
+-242,-251,-258,-263,-265,-268,-270,-270,-271,-272,-272,-272,-271,-266,-258,-247,-234,-217,-199,-182,
+-164,-149,-138,-130,-125,-123,-127,-136,-148,-163,-179,-199,-227,-255,-280,-302,-321,-340,-358,-373,
+-390,-404,-417,-425,-428,-431,-436,-437,-436,-433,-429,-417,-398,-378,-362,-349,-338,-326,-312,-299,
+-293,-290,-291,-299,-314,-334,-361,-396,-438,-484,-527,-562,-593,-620,-647,-673,-695,-719,-745,-773,
+-801,-828,-855,-880,-900,-912,-918,-925,-942,-972,-1009,-1041,-1066,-1086,-1104,-1119,-1134,-1148,-1164,-1184,
+-1208,-1235,-1265,-1298,-1328,-1356,-1382,-1410,-1437,-1463,-1486,-1501,-1503,-1496,-1487,-1482,-1481,-1486,-1500,-1518,
+-1542,-1570,-1599,-1625,-1649,-1670,-1691,-1708,-1723,-1737,-1748,-1759,-1769,-1778,-1788,-1795,-1801,-1803,-1804,-1803,
+-1803,-1802,-1804,-1807,-1813,-1822,-1832,-1844,-1858,-1877,-1903,-1937,-1985,-2046,-2112,-2173,-2228,-2279,-2331,-2383,
+-2433,-2480,-2517,-2542,-2561,-2576,-2588,-2597,-2602,-2605,-2603,-2595,-2585,-2579,-2583,-2595,-2612,-2629,-2637,-2638,
+-2637,-2640,-2649,-2669,-2694,-2717,-2731,-2737,-2734,-2726,-2712,-2693,-2678,-2665,-2646,-2625,-2605,-2588,-2575,-2564,
+-2554,-2549,-2545,-2538,-2532,-2527,-2518,-2507,-2498,-2488,-2476,-2461,-2444,-2424,-2396,-2360,-2327,-2289,-2248,-2218,
+-2195,-2178,-2166,-2159,-2156,-2165,-2187,-2213,-2239,-2263,-2288,-2315,-2335,-2350,-2360,-2366,-2368,-2368,-2365,-2362,
+-2360,-2357,-2349,-2339,-2324,-2310,-2296,-2279,-2261,-2246,-2235,-2219,-2196,-2175,-2144,-2100,-2062,-2032,-2002,-1984,
+-1976,-1968,-1953,-1932,-1911,-1886,-1860,-1838,-1815,-1795,-1774,-1754,-1732,-1708,-1680,-1652,-1626,-1603,-1577,-1550,
+-1522,-1491,-1453,-1413,-1363,-1307,-1251,-1192,-1134,-1076,-1020,-957,-894,-834,-778,-723,-670,-613,-558,-506,
+-443,-379,-321,-274,-228,-177,-131,-81,-30,34,107,150,169,194,229,278,327,353,376,396,
+414,435,455,473,485,498,515,541,578,630,678,719,756,795,839,896,967,1056,1152,1242,
+1313,1370,1424,1481,1546,1626,1696,1746,1793,1844,1900,1962,2030,2103,2179,2249,2304,2346,2380,2411,
+2436,2458,2480,2502,2525,2549,2575,2604,2630,2658,2684,2712,2734,2754,2777,2801,2819,2837,2852,2854,
+2830,2799,2791,2799,2809,2806,2788,2778,2807,2824,2805,2765,2730,2739,2774,2817,2875,2940,2999,3058,
+3119,3178,3232,3284,3335,3384,3433,3479,3520,3559,3597,3635,3673,3712,3750,3786,3817,3843,3865,3886,
+3907,3929,3953,3981,4008,4029,4049,4071,4102,4141,4183,4222,4257,4287,4320,4352,4381,4407,4438,4475,
+4516,4557,4591,4619,4645,4674,4707,4742,4774,4804,4832,4860,4887,4914,4944,4981,5023,5063,5102,5139,
+5179,5224,5269,5301,5318,5331,5349,5367,5382,5406,5443,5485,5521,5541,5551,5548,5530,5517,5512,5500,
+5482,5452,5410,5373,5335,5298,5266,5262,5338,5428,5476,5490,5497,5493,5466,5433,5397,5366,5346,5345,
+5354,5364,5383,5413,5446,5485,5521,5548,5573,5597,5646,5693,5724,5744,5755,5775,5809,5843,5864,5875,
+5882,5878,5864,5837,5803,5776,5760,5758,5767,5782,5801,5821,5840,5859,5874,5881,5881,5872,5856,5841,
+5842,5853,5845,5826,5810,5796,5790,5789,5786,5777,5768,5757,5739,5722,5705,5677,5653,5650,5644,5633,
+5621,5595,5571,5562,5574,5575,5552,5506,5456,5407,5361,5327,5300,5275,5255,5240,5228,5223,5234,5248,
+5238,5226,5208,5187,5176,5172,5172,5167,5161,5157,5139,5117,5097,5077,5062,5041,5015,4990,4972,4955,
+4917,4896,4881,4864,4845,4826,4806,4790,4772,4756,4735,4714,4695,4679,4665,4655,4645,4628,4606,4587,
+4568,4549,4531,4516,4503,4491,4477,4463,4449,4433,4412,4390,4369,4349,4330,4311,4289,4268,4250,4232,
+4208,4183,4160,4138,4115,4092,4071,4052,4036,4022,4010,3998,3986,3974,3960,3946,3932,3915,3897,3876,
+3853,3831,3806,3776,3736,3679,3615,3562,3522,3490,3438,3389,3344,3299,3257,3216,3167,3116,3070,3025,
+2988,2966,2951,2931,2901,2898,2902,2903,2903,2865,2835,2791,2705,2639,2595,2574,2533,2493,2460,2422,
+2387,2377,2401,2426,2436,2438,2432,2408,2380,2359,2327,2285,2244,2219,2205,2187,2159,2131,2112,2092,
+2058,2015,1976,1936,1888,1837,1789,1745,1713,1689,1667,1645,1623,1604,1589,1572,1557,1541,1525,1510,
+1495,1480,1466,1450,1434,1416,1396,1374,1351,1326,1299,1272,1243,1213,1183,1152,1122,1092,1066,1041,
+1018,999,982,969,957,946,934,920,906,891,876,861,846,832,817,802,786,767,745,723,
+699,675,652,627,603,578,554,529,505,482,459,436,413,392,370,350,330,311,292,272,
+253,238,225,214,205,197,189,179,168,155,140,123,107,88,66,40,12,-15,-42,-69,
+-93,-114,-133,-147,-159,-170,-180,-189,-196,-199,-199,-196,-194,-192,-192,-199,-213,-236,-272,-315,
+-361,-408,-452,-493,-531,-564,-594,-620,-644,-668,-690,-712,-732,-750,-764,-774,-779,-781,-780,-779,
+-781,-782,-785,-791,-800,-814,-829,-846,-863,-878,-890,-901,-910,-918,-924,-928,-933,-938,-944,-951,
+-957,-964,-973,-983,-993,-1001,-1008,-1013,-1014,-1014,-1016,-1015,-1010,-998,-993,-1005,-1006,-1008,-1014,-1020,
+-1025,-1031,-1038,-1046,-1053,-1059,-1063,-1064,-1066,-1071,-1079,-1091,-1105,-1120,-1137,-1155,-1172,-1190,-1206,-1221,
+-1236,-1250,-1266,-1287,-1308,-1326,-1341,-1355,-1368,-1380,-1389,-1396,-1402,-1406,-1409,-1409,-1408,-1407,-1408,-1410,
+-1413,-1417,-1418,-1416,-1413,-1408,-1401,-1395,-1389,-1385,-1384,-1386,-1386,-1381,-1370,-1353,-1330,-1301,-1270,-1240,
+-1212,-1195,-1196,-1188,-1186,-1195,-1206,-1213,-1217,-1227,-1236,-1244,-1253,-1261,-1259,-1254,-1255,-1259,-1271,-1282,
+-1296,-1313,-1334,-1354,-1362,-1353,-1346,-1350,-1359,-1363,-1363,-1364,-1366,-1363,-1356,-1348,-1340,-1333,-1330,-1330,
+-1336,-1339,-1340,-1342,-1344,-1342,-1332,-1317,-1307,-1305,-1310,-1316,-1319,-1316,-1306,-1289,-1266,-1237,-1205,-1174,
+-1146,-1124,-1110,-1097,-1084,-1068,-1053,-1039,-1026,-1010,-985,-952,-915,-881,-857,-839,-826,-815,-811,-816,
+-831,-851,-876,-902,-926,-944,-961,-977,-993,-1006,-1015,-1020,-1025,-1037,-1052,-1063,-1068,-1068,-1068,-1068,
+-1065,-1058,-1050,-1038,-1024,-1008,-994,-982,-971,-961,-951,-938,-921,-902,-886,-869,-852,-834,-816,-796,
+-779,-765,-754,-744,-737,-733,-734,-738,-749,-758,-766,-778,-793,-807,-817,-821,-822,-822,-824,-828,
+-837,-851,-866,-880,-893,-904,-909,-910,-905,-898,-883,-863,-840,-816,-788,-750,-712,-676,-653,-631,
+-603,-584,-572,-570,-568,-564,-562,-564,-562,-553,-539,-522,-502,-480,-454,-433,-409,-380,-357,-342,
+-330,-312,-288,-263,-245,-235,-231,-229,-228,-226,-221,-214,-203,-192,-180,-165,-150,-136,-125,-115,
+-110,-108,-108,-107,-103,-99,-94,-86,-79,-76,-69,-62,-60,-52,-41,-29,-18,-9,1,17,
+33,49,66,83,99,117,139,159,182,203,220,224,215,212,215,223,232,236,238,243,
+249,254,256,256,254,252,250,248,245,240,235,234,240,248,255,257,255,250,245,242,
+240,239,239,239,240,240,241,243,245,248,253,258,265,273,280,286,294,303,312,319,
+327,336,341,346,355,364,369,369,367,365,364,361,358,358,359,355,349,345,342,337,
+333,331,326,318,311,309,307,305,304,304,305,308,310,315,323,331,337,341,342,338,
+331,323,316,310,305,299,295,292,292,294,291,284,281,277,274,271,264,259,255,249,
+242,238,233,231,229,223,220,217,215,214,214,211,210,210,213,217,219,221,221,222,
+222,225,229,231,232,233,230,225,213,199,186,176,169,160,150,139,128,118,111,107,
+108,110,112,114,115,117,125,137,146,152,155,155,152,151,149,144,141,137,132,129,
+125,123,125,125,126,127,124,122,123,128,135,134,127,118,108,98,86,74,64,56,
+51,45,38,30,20,10,-3,-19,-35,-47,-58,-67,-75,-81,-85,-88,-89,-89,-89,-89,
+-90,-89,-89,-89,-90,-91,-90,-89,-91,-95,-101,-110,-112,-110,-105,-95,-86,-76,-70,-63,
+-57,-50,-45,-43,-43,-46,-51,-59,-68,-77,-86,-92,-96,-102,-113,-124,-135,-146,-159,-173,
+-187,-200,-210,-219,-225,-227,-227,-226,-225,-223,-219,-216,-216,-217,-221,-225,-230,-234,-235,-232,
+-230,-225,-217,-208,-198,-187,-177,-170,-165,-163,-169,-176,-185,-195,-210,-226,-241,-254,-268,-283,
+-299,-317,-332,-347,-361,-373,-381,-385,-384,-380,-377,-376,-373,-371,-369,-367,-367,-365,-360,-352,
+-345,-341,-344,-353,-370,-392,-423,-462,-504,-548,-589,-617,-635,-653,-671,-691,-709,-729,-753,-777,
+-802,-824,-844,-866,-885,-902,-913,-918,-917,-922,-940,-971,-1007,-1038,-1063,-1083,-1096,-1108,-1121,-1133,
+-1150,-1171,-1196,-1226,-1255,-1283,-1307,-1328,-1347,-1364,-1379,-1392,-1403,-1415,-1425,-1434,-1442,-1453,-1469,-1492,
+-1520,-1551,-1584,-1617,-1646,-1672,-1695,-1719,-1741,-1761,-1778,-1790,-1795,-1799,-1805,-1809,-1807,-1802,-1797,-1794,
+-1793,-1792,-1796,-1805,-1821,-1838,-1857,-1875,-1895,-1915,-1934,-1956,-1984,-2020,-2067,-2126,-2194,-2262,-2327,-2387,
+-2438,-2487,-2533,-2574,-2608,-2635,-2654,-2674,-2692,-2706,-2712,-2708,-2695,-2682,-2679,-2685,-2696,-2708,-2716,-2718,
+-2722,-2729,-2746,-2765,-2776,-2783,-2790,-2798,-2803,-2800,-2791,-2778,-2765,-2751,-2732,-2714,-2695,-2678,-2663,-2651,
+-2642,-2639,-2643,-2650,-2654,-2654,-2649,-2644,-2637,-2629,-2619,-2610,-2600,-2584,-2556,-2524,-2496,-2470,-2448,-2427,
+-2402,-2379,-2360,-2348,-2341,-2337,-2331,-2327,-2337,-2354,-2372,-2387,-2403,-2423,-2447,-2463,-2472,-2479,-2485,-2489,
+-2486,-2482,-2479,-2480,-2481,-2479,-2474,-2465,-2455,-2442,-2426,-2406,-2384,-2362,-2324,-2278,-2238,-2203,-2171,-2154,
+-2146,-2131,-2108,-2080,-2053,-2031,-2015,-2000,-1993,-1982,-1958,-1934,-1915,-1895,-1869,-1840,-1811,-1781,-1753,-1728,
+-1705,-1678,-1645,-1609,-1573,-1537,-1495,-1446,-1397,-1342,-1273,-1198,-1132,-1075,-1026,-975,-918,-862,-804,-742,
+-673,-597,-518,-455,-403,-350,-302,-250,-198,-147,-97,-56,-21,33,96,150,237,291,348,392,
+399,409,409,404,411,422,434,457,480,504,534,573,618,670,722,771,813,861,927,1013,
+1113,1218,1312,1386,1450,1517,1596,1681,1754,1808,1851,1900,1954,2014,2080,2149,2216,2274,2321,2358,
+2387,2413,2439,2465,2490,2513,2537,2565,2595,2626,2655,2684,2711,2732,2753,2773,2793,2813,2824,2820,
+2803,2788,2782,2774,2738,2685,2652,2640,2650,2686,2718,2726,2738,2759,2779,2797,2807,2826,2865,2919,
+2977,3046,3115,3177,3232,3285,3337,3389,3441,3490,3540,3588,3633,3672,3707,3747,3792,3830,3856,3877,
+3902,3930,3961,3992,4023,4048,4066,4083,4106,4135,4171,4209,4249,4287,4322,4353,4385,4415,4448,4480,
+4510,4534,4558,4584,4611,4642,4674,4709,4748,4790,4828,4868,4914,4959,4991,5012,5041,5085,5127,5163,
+5193,5229,5271,5313,5345,5369,5389,5406,5420,5441,5473,5511,5545,5580,5609,5629,5623,5591,5561,5529,
+5498,5479,5451,5416,5426,5460,5440,5436,5454,5490,5538,5541,5520,5515,5522,5521,5539,5580,5611,5593,
+5580,5568,5534,5513,5502,5503,5512,5525,5541,5568,5609,5658,5704,5738,5761,5791,5831,5867,5890,5909,
+5922,5931,5935,5931,5911,5876,5844,5823,5816,5821,5836,5856,5880,5900,5910,5915,5914,5912,5905,5897,
+5897,5897,5894,5891,5882,5872,5865,5856,5843,5828,5807,5786,5768,5754,5731,5704,5683,5658,5634,5620,
+5600,5576,5546,5519,5516,5547,5563,5543,5507,5451,5396,5342,5285,5241,5218,5211,5213,5219,5223,5219,
+5205,5193,5182,5175,5179,5188,5194,5182,5157,5132,5111,5093,5075,5059,5041,5025,5005,4991,4979,4952,
+4917,4878,4864,4855,4848,4833,4811,4791,4777,4762,4747,4737,4728,4713,4692,4670,4650,4632,4617,4599,
+4579,4561,4544,4529,4513,4498,4483,4466,4450,4433,4415,4399,4381,4361,4344,4329,4311,4289,4263,4238,
+4215,4189,4164,4140,4115,4093,4071,4049,4033,4016,4001,3986,3972,3959,3947,3934,3920,3906,3893,3875,
+3855,3834,3811,3786,3755,3711,3661,3616,3585,3540,3486,3438,3396,3349,3300,3253,3215,3172,3126,3070,
+3017,2962,2925,2896,2883,2854,2829,2807,2790,2784,2774,2748,2707,2642,2585,2564,2566,2552,2531,2515,
+2487,2450,2467,2495,2513,2530,2527,2506,2476,2443,2410,2378,2340,2292,2254,2213,2174,2133,2091,2052,
+2014,1981,1955,1928,1901,1873,1844,1814,1788,1764,1739,1713,1689,1666,1643,1621,1603,1587,1572,1556,
+1540,1524,1507,1491,1474,1458,1440,1420,1401,1380,1358,1336,1313,1288,1262,1235,1206,1179,1148,1118,
+1089,1064,1043,1027,1013,1001,987,971,953,935,918,901,882,862,843,824,804,784,761,739,
+716,693,670,648,625,601,577,553,530,508,486,465,443,421,400,380,360,342,322,301,
+278,252,227,206,193,186,180,175,169,163,155,145,134,121,105,84,59,32,4,-22,
+-47,-69,-91,-114,-136,-157,-176,-192,-205,-215,-226,-233,-236,-235,-235,-233,-232,-235,-245,-263,
+-287,-318,-354,-393,-430,-463,-496,-529,-558,-587,-615,-641,-665,-688,-709,-727,-742,-753,-761,-766,
+-771,-780,-791,-800,-807,-813,-824,-840,-858,-875,-890,-904,-916,-926,-935,-943,-951,-958,-965,-970,
+-974,-978,-982,-986,-994,-1004,-1012,-1018,-1022,-1025,-1029,-1033,-1039,-1041,-1039,-1039,-1037,-1035,-1034,-1037,
+-1041,-1047,-1057,-1069,-1082,-1093,-1102,-1107,-1110,-1112,-1118,-1127,-1140,-1155,-1171,-1187,-1204,-1220,-1235,-1249,
+-1262,-1273,-1287,-1303,-1322,-1339,-1352,-1363,-1373,-1381,-1391,-1399,-1405,-1408,-1410,-1412,-1414,-1416,-1416,-1415,
+-1414,-1413,-1412,-1412,-1413,-1415,-1417,-1417,-1414,-1410,-1404,-1398,-1389,-1373,-1353,-1332,-1306,-1272,-1238,-1207,
+-1184,-1174,-1168,-1164,-1163,-1157,-1157,-1157,-1151,-1152,-1150,-1153,-1161,-1176,-1191,-1208,-1223,-1237,-1251,-1271,
+-1294,-1313,-1330,-1344,-1358,-1373,-1381,-1379,-1374,-1373,-1372,-1376,-1381,-1384,-1386,-1392,-1400,-1409,-1419,-1430,
+-1441,-1448,-1452,-1453,-1453,-1452,-1446,-1435,-1420,-1406,-1396,-1392,-1393,-1390,-1379,-1361,-1338,-1311,-1284,-1257,
+-1231,-1205,-1182,-1157,-1132,-1111,-1098,-1088,-1073,-1054,-1039,-1025,-1006,-976,-940,-904,-872,-848,-835,-831,
+-835,-850,-874,-903,-934,-958,-976,-994,-1010,-1023,-1034,-1043,-1047,-1050,-1053,-1057,-1066,-1077,-1085,-1087,
+-1088,-1087,-1083,-1077,-1068,-1057,-1046,-1038,-1030,-1022,-1011,-998,-983,-968,-952,-937,-920,-904,-887,-869,
+-850,-828,-809,-798,-792,-787,-784,-784,-788,-797,-807,-818,-830,-846,-865,-884,-902,-918,-930,-935,
+-935,-933,-934,-937,-939,-942,-942,-940,-933,-917,-896,-874,-850,-820,-785,-741,-696,-649,-614,-585,
+-556,-540,-536,-535,-538,-540,-538,-540,-548,-552,-546,-533,-516,-496,-472,-446,-423,-393,-360,-327,
+-309,-301,-290,-275,-254,-232,-212,-195,-186,-181,-173,-162,-153,-147,-138,-125,-111,-95,-76,-55,
+-37,-35,-42,-52,-62,-60,-57,-60,-63,-66,-63,-58,-54,-47,-37,-28,-20,-9,3,17,
+35,52,69,87,106,124,138,153,172,196,215,223,226,227,230,237,243,250,257,264,
+272,279,282,281,283,282,278,274,270,267,264,258,253,254,262,269,273,273,269,267,
+266,266,268,271,272,274,273,274,277,281,287,292,295,299,309,318,319,320,324,330,
+336,345,355,365,374,384,390,393,396,399,399,397,394,395,396,396,391,385,380,375,
+371,371,371,365,356,347,342,339,337,335,333,332,333,338,345,351,356,358,357,352,
+345,334,320,321,329,334,334,325,315,309,303,297,300,304,310,313,314,311,306,301,
+294,289,287,285,282,279,274,267,260,255,249,243,239,238,241,243,248,254,255,252,
+249,242,235,229,223,223,221,216,209,202,192,180,168,158,146,132,120,111,104,98,
+94,92,92,96,100,100,102,110,118,127,138,146,150,151,151,150,144,134,123,109,
+100,98,97,99,98,97,98,96,94,99,110,123,135,143,139,126,113,99,88,78,
+70,62,53,45,40,34,23,10,0,-10,-19,-29,-37,-45,-50,-53,-54,-56,-56,-56,
+-54,-54,-52,-53,-54,-56,-57,-56,-56,-57,-58,-61,-63,-60,-55,-51,-48,-46,-41,-36,
+-30,-24,-19,-12,-6,-1,0,1,-1,-7,-13,-23,-35,-48,-60,-72,-82,-91,-99,-103,
+-113,-126,-142,-156,-167,-171,-171,-168,-161,-156,-152,-147,-142,-137,-135,-137,-140,-144,-149,-152,
+-154,-155,-159,-164,-167,-169,-166,-155,-142,-135,-140,-157,-179,-198,-212,-227,-238,-245,-247,-246,
+-246,-252,-265,-284,-309,-334,-356,-374,-387,-395,-400,-404,-406,-406,-404,-402,-400,-401,-402,-404,
+-406,-411,-421,-436,-455,-478,-507,-539,-573,-605,-633,-651,-661,-670,-681,-694,-706,-721,-738,-759,
+-783,-805,-823,-844,-866,-887,-903,-916,-925,-933,-944,-958,-977,-1002,-1028,-1050,-1064,-1073,-1077,-1085,
+-1094,-1106,-1122,-1143,-1171,-1197,-1218,-1237,-1250,-1254,-1248,-1243,-1248,-1265,-1291,-1321,-1347,-1373,-1399,-1429,
+-1466,-1505,-1545,-1584,-1620,-1652,-1679,-1703,-1724,-1737,-1745,-1748,-1745,-1740,-1739,-1743,-1748,-1752,-1757,-1761,
+-1767,-1773,-1780,-1786,-1792,-1807,-1832,-1858,-1881,-1905,-1927,-1949,-1974,-2004,-2040,-2083,-2135,-2201,-2275,-2346,
+-2409,-2464,-2516,-2569,-2623,-2670,-2709,-2743,-2770,-2789,-2801,-2806,-2805,-2795,-2781,-2771,-2773,-2784,-2795,-2806,
+-2817,-2829,-2843,-2858,-2868,-2866,-2860,-2861,-2859,-2850,-2846,-2848,-2846,-2835,-2817,-2797,-2776,-2758,-2745,-2737,
+-2735,-2740,-2749,-2760,-2764,-2765,-2766,-2766,-2760,-2752,-2743,-2736,-2729,-2723,-2712,-2695,-2675,-2657,-2637,-2616,
+-2597,-2579,-2559,-2541,-2530,-2521,-2519,-2517,-2509,-2500,-2497,-2497,-2502,-2516,-2527,-2535,-2536,-2537,-2542,-2548,
+-2554,-2559,-2560,-2558,-2558,-2558,-2558,-2557,-2554,-2549,-2541,-2527,-2506,-2481,-2457,-2431,-2407,-2377,-2345,-2317,
+-2293,-2270,-2244,-2219,-2198,-2177,-2158,-2149,-2142,-2123,-2097,-2073,-2061,-2050,-2032,-2010,-1989,-1967,-1941,-1910,
+-1879,-1848,-1817,-1785,-1752,-1720,-1691,-1658,-1615,-1567,-1514,-1445,-1382,-1334,-1277,-1218,-1163,-1103,-1043,-983,
+-920,-852,-780,-699,-623,-555,-482,-407,-337,-279,-239,-210,-163,-112,-70,-12,66,124,186,244,
+270,294,329,376,385,378,376,391,411,424,434,445,464,492,528,575,636,705,778,859,
+952,1055,1162,1261,1341,1412,1480,1550,1628,1705,1765,1816,1864,1916,1979,2041,2097,2154,2213,2268,
+2315,2356,2393,2426,2457,2483,2508,2533,2560,2589,2620,2651,2678,2702,2717,2731,2740,2756,2769,2774,
+2778,2780,2794,2825,2826,2796,2770,2751,2714,2638,2550,2518,2531,2556,2596,2624,2644,2677,2720,2766,
+2829,2907,2976,3034,3098,3167,3238,3298,3350,3402,3462,3522,3574,3621,3658,3690,3732,3775,3806,3838,
+3875,3909,3935,3961,3988,4019,4051,4086,4123,4159,4192,4221,4249,4278,4312,4345,4377,4406,4435,4464,
+4494,4522,4550,4581,4620,4661,4703,4744,4779,4806,4830,4857,4890,4927,4964,4999,5034,5081,5142,5202,
+5243,5272,5297,5320,5341,5363,5387,5411,5431,5448,5469,5494,5522,5550,5579,5598,5607,5594,5570,5558,
+5561,5594,5630,5645,5652,5638,5589,5539,5514,5503,5502,5520,5568,5682,5783,5808,5820,5855,5894,5910,
+5907,5902,5898,5896,5875,5842,5808,5793,5778,5765,5767,5781,5787,5786,5794,5816,5846,5878,5907,5931,
+5950,5966,5976,5980,5977,5960,5926,5894,5873,5866,5874,5892,5915,5935,5948,5952,5955,5954,5945,5933,
+5932,5930,5926,5920,5911,5899,5894,5890,5883,5872,5853,5831,5815,5803,5787,5765,5744,5732,5710,5667,
+5625,5592,5565,5543,5539,5562,5591,5577,5540,5486,5423,5360,5307,5257,5219,5194,5177,5169,5168,5173,
+5180,5188,5195,5184,5173,5176,5169,5139,5119,5116,5112,5092,5070,5054,5034,5011,4988,4969,4948,4922,
+4898,4878,4862,4845,4829,4818,4808,4798,4786,4774,4760,4746,4734,4721,4706,4689,4673,4656,4638,4617,
+4598,4580,4563,4546,4527,4510,4494,4477,4461,4445,4428,4411,4395,4377,4359,4338,4318,4300,4277,4249,
+4225,4203,4179,4152,4125,4097,4078,4060,4034,4015,3994,3975,3958,3943,3928,3914,3902,3886,3869,3848,
+3822,3805,3785,3761,3735,3698,3663,3625,3585,3545,3493,3442,3395,3353,3327,3284,3244,3186,3137,3092,
+3051,2994,2989,2955,2891,2880,2850,2848,2864,2830,2785,2765,2753,2713,2673,2636,2610,2590,2578,2563,
+2552,2534,2505,2494,2503,2513,2517,2518,2508,2482,2454,2428,2395,2359,2310,2266,2225,2176,2128,2081,
+2043,2010,1981,1956,1932,1911,1892,1876,1855,1848,1839,1819,1791,1761,1733,1700,1671,1645,1621,1597,
+1575,1554,1535,1517,1502,1487,1472,1458,1443,1427,1408,1388,1368,1347,1325,1303,1279,1254,1227,1200,
+1172,1145,1120,1098,1077,1056,1037,1018,1000,983,964,946,925,902,878,853,829,807,786,763,
+740,718,697,678,658,638,617,595,573,550,527,504,482,460,439,418,398,378,360,343,
+326,307,284,261,238,218,202,188,175,163,152,143,135,128,119,109,95,76,55,33,
+11,-10,-31,-52,-75,-98,-121,-144,-169,-191,-209,-223,-231,-241,-254,-266,-279,-291,-300,-308,
+-316,-323,-337,-354,-372,-385,-400,-424,-453,-484,-512,-541,-569,-597,-624,-647,-666,-686,-704,-718,
+-731,-747,-764,-781,-792,-803,-815,-828,-843,-858,-874,-889,-902,-915,-926,-937,-949,-962,-975,-985,
+-993,-999,-1005,-1010,-1012,-1012,-1014,-1021,-1029,-1035,-1041,-1051,-1060,-1075,-1088,-1097,-1094,-1088,-1083,-1079,
+-1077,-1079,-1086,-1097,-1110,-1123,-1136,-1146,-1152,-1156,-1158,-1163,-1172,-1184,-1199,-1216,-1232,-1247,-1259,-1270,
+-1279,-1288,-1297,-1308,-1321,-1336,-1350,-1363,-1372,-1378,-1383,-1386,-1390,-1393,-1397,-1403,-1410,-1415,-1416,-1415,
+-1415,-1417,-1425,-1440,-1457,-1467,-1468,-1462,-1451,-1438,-1424,-1412,-1400,-1387,-1370,-1350,-1325,-1295,-1265,-1245,
+-1236,-1243,-1258,-1256,-1248,-1233,-1210,-1189,-1170,-1147,-1125,-1122,-1123,-1143,-1170,-1196,-1219,-1245,-1270,-1291,
+-1303,-1310,-1316,-1323,-1339,-1359,-1382,-1393,-1398,-1399,-1402,-1408,-1410,-1411,-1419,-1435,-1456,-1477,-1493,-1501,
+-1503,-1507,-1508,-1510,-1512,-1515,-1519,-1522,-1520,-1512,-1499,-1485,-1473,-1463,-1451,-1435,-1416,-1398,-1378,-1353,
+-1324,-1299,-1274,-1249,-1225,-1201,-1179,-1159,-1144,-1138,-1129,-1112,-1091,-1071,-1051,-1024,-988,-951,-922,-908,
+-907,-919,-934,-946,-957,-969,-979,-988,-1000,-1021,-1043,-1059,-1067,-1078,-1086,-1086,-1086,-1090,-1096,-1103,
+-1108,-1110,-1110,-1109,-1106,-1099,-1091,-1082,-1076,-1069,-1062,-1051,-1039,-1027,-1016,-1004,-988,-971,-954,-933,
+-911,-892,-876,-861,-851,-850,-850,-852,-857,-864,-872,-880,-890,-901,-915,-928,-941,-959,-980,-1001,
+-1019,-1033,-1037,-1032,-1023,-1015,-1006,-991,-969,-943,-912,-882,-856,-829,-796,-757,-712,-663,-616,-573,
+-544,-528,-525,-528,-534,-538,-538,-537,-540,-543,-540,-531,-516,-497,-477,-453,-422,-388,-358,-336,
+-320,-308,-297,-283,-262,-239,-218,-196,-172,-150,-133,-120,-104,-85,-68,-53,-43,-34,-27,-26,
+-15,1,18,22,16,10,1,-4,-5,-6,-4,4,0,-16,-15,-4,1,9,21,32,
+42,51,62,79,97,111,129,154,179,204,221,226,230,241,253,257,266,278,284,289,
+290,296,300,302,311,323,324,325,319,313,310,306,305,302,298,298,300,298,286,279,
+281,284,284,284,289,298,306,306,304,305,312,322,331,341,345,347,353,356,361,364,
+365,368,374,378,386,397,409,419,424,428,433,436,434,429,421,414,410,412,418,417,
+414,414,415,413,409,406,403,398,392,387,384,383,381,379,380,383,385,385,385,383,
+378,373,365,357,350,350,358,367,374,389,391,384,374,365,361,350,348,352,347,340,
+332,320,320,322,316,311,308,306,296,289,286,284,283,281,278,278,276,269,266,263,
+257,252,245,236,231,229,232,233,228,216,203,193,183,171,158,146,135,125,116,111,
+106,100,94,89,87,89,92,100,108,114,118,121,125,129,130,126,128,135,138,132,
+121,108,102,96,92,90,94,99,100,100,106,113,124,135,141,138,131,121,110,98,
+88,79,69,62,56,51,49,49,49,48,47,43,39,32,27,20,16,10,7,7,
+9,11,12,12,9,4,3,2,4,7,9,14,16,16,16,15,15,16,14,14,
+16,19,23,27,31,36,42,49,56,60,61,57,49,38,27,14,0,-13,-23,-30,
+-33,-41,-49,-58,-65,-72,-76,-75,-66,-57,-48,-39,-27,-13,2,18,36,51,64,70,
+79,87,90,76,51,22,0,-16,-27,-31,-32,-38,-49,-62,-79,-102,-124,-145,-160,-172,
+-181,-191,-202,-216,-237,-266,-300,-337,-369,-395,-414,-426,-436,-443,-446,-446,-445,-446,-447,-451,
+-459,-473,-494,-520,-547,-574,-600,-626,-650,-668,-678,-683,-684,-681,-681,-685,-687,-693,-705,-719,
+-736,-753,-773,-795,-820,-846,-869,-887,-903,-919,-934,-948,-962,-975,-987,-1003,-1022,-1034,-1039,-1041,
+-1043,-1049,-1058,-1069,-1083,-1101,-1117,-1137,-1156,-1166,-1168,-1170,-1173,-1179,-1195,-1223,-1259,-1296,-1336,-1373,
+-1402,-1433,-1471,-1510,-1548,-1585,-1619,-1648,-1680,-1707,-1724,-1736,-1740,-1741,-1742,-1743,-1744,-1746,-1751,-1756,
+-1762,-1770,-1778,-1789,-1800,-1813,-1831,-1856,-1879,-1905,-1933,-1957,-1979,-2003,-2034,-2073,-2119,-2175,-2241,-2310,
+-2379,-2445,-2506,-2564,-2623,-2678,-2725,-2766,-2798,-2823,-2845,-2863,-2875,-2877,-2867,-2851,-2841,-2845,-2858,-2879,
+-2897,-2912,-2924,-2936,-2948,-2957,-2959,-2953,-2945,-2929,-2909,-2906,-2913,-2911,-2897,-2877,-2858,-2841,-2828,-2824,
+-2826,-2834,-2846,-2856,-2860,-2866,-2872,-2872,-2868,-2859,-2850,-2848,-2849,-2849,-2846,-2840,-2831,-2819,-2806,-2794,
+-2783,-2768,-2753,-2736,-2719,-2705,-2690,-2677,-2666,-2654,-2642,-2629,-2624,-2620,-2615,-2611,-2608,-2606,-2605,-2604,
+-2602,-2598,-2594,-2591,-2591,-2591,-2592,-2592,-2591,-2589,-2585,-2579,-2571,-2558,-2541,-2522,-2502,-2479,-2452,-2417,
+-2366,-2312,-2270,-2231,-2203,-2193,-2189,-2191,-2194,-2192,-2187,-2178,-2167,-2155,-2142,-2123,-2108,-2091,-2067,-2046,
+-2022,-1996,-1971,-1943,-1914,-1886,-1856,-1822,-1782,-1740,-1704,-1669,-1626,-1583,-1534,-1471,-1407,-1348,-1288,-1226,
+-1168,-1106,-1038,-966,-899,-822,-739,-653,-568,-496,-429,-360,-298,-247,-205,-166,-112,-65,-16,46,
+118,194,227,257,296,336,363,359,355,350,344,349,363,380,402,430,471,534,617,717,
+831,947,1058,1162,1253,1330,1395,1453,1505,1551,1596,1645,1697,1756,1822,1895,1970,2030,2078,2125,
+2172,2223,2275,2323,2367,2410,2453,2495,2533,2564,2591,2618,2650,2678,2697,2709,2722,2730,2728,2728,
+2751,2774,2777,2779,2774,2755,2726,2698,2670,2631,2598,2559,2497,2442,2414,2414,2450,2520,2594,2648,
+2708,2803,2914,2989,3037,3086,3147,3219,3280,3329,3377,3429,3477,3525,3578,3633,3690,3739,3771,3795,
+3828,3868,3906,3938,3966,3991,4022,4058,4099,4142,4181,4214,4245,4271,4296,4324,4354,4386,4418,4450,
+4482,4514,4546,4580,4619,4658,4696,4731,4764,4793,4823,4857,4893,4926,4953,4986,5024,5072,5124,5186,
+5251,5315,5366,5399,5411,5413,5414,5421,5431,5448,5472,5500,5525,5546,5568,5590,5603,5610,5611,5616,
+5636,5675,5729,5778,5807,5821,5835,5827,5820,5820,5815,5821,5859,5878,5860,5871,5915,5940,5966,5984,
+6005,6019,6027,6020,5996,5964,5936,5910,5886,5868,5861,5860,5854,5856,5865,5884,5907,5930,5952,5973,
+5991,6005,6014,6020,6018,6007,5982,5953,5928,5916,5919,5932,5954,5972,5982,5989,5995,5996,5991,5983,
+5978,5970,5960,5952,5944,5934,5921,5913,5906,5900,5890,5871,5856,5845,5835,5819,5797,5778,5763,5743,
+5702,5646,5604,5574,5548,5540,5550,5567,5568,5530,5468,5399,5330,5272,5229,5200,5176,5158,5147,5140,
+5131,5122,5115,5111,5106,5104,5102,5082,5073,5097,5121,5111,5080,5045,5014,4994,4979,4964,4945,4925,
+4905,4883,4862,4860,4842,4827,4815,4804,4795,4787,4774,4756,4739,4726,4714,4700,4687,4672,4654,4633,
+4614,4595,4577,4561,4543,4527,4510,4494,4477,4461,4442,4423,4402,4382,4362,4342,4324,4303,4278,4256,
+4233,4206,4180,4154,4129,4103,4080,4056,4032,4009,3986,3968,3949,3930,3911,3894,3875,3859,3839,3816,
+3789,3758,3729,3704,3675,3634,3619,3604,3563,3529,3498,3481,3450,3411,3362,3304,3259,3215,3167,3116,
+3105,3074,3054,3038,2961,2943,2933,2941,2913,2889,2893,2883,2856,2819,2785,2760,2723,2682,2652,2631,
+2607,2589,2564,2539,2523,2518,2517,2525,2526,2511,2476,2433,2397,2369,2330,2286,2241,2192,2148,2116,
+2088,2057,2027,2006,1993,1981,1962,1939,1919,1907,1889,1864,1840,1810,1780,1748,1714,1684,1654,1628,
+1602,1575,1549,1525,1502,1479,1459,1441,1426,1415,1405,1393,1379,1364,1346,1329,1311,1292,1273,1254,
+1233,1214,1193,1170,1146,1120,1095,1071,1047,1026,1003,979,954,930,904,880,857,839,823,804,
+783,761,740,721,703,687,670,651,630,608,583,557,531,507,483,462,442,422,402,382,
+364,349,333,317,299,278,258,238,218,197,176,158,142,130,117,105,94,86,76,65,
+49,31,10,-9,-30,-52,-75,-98,-121,-142,-162,-181,-199,-216,-228,-240,-251,-270,-296,-321,
+-342,-360,-373,-385,-393,-399,-406,-407,-410,-419,-435,-453,-475,-501,-530,-556,-582,-608,-632,-655,
+-675,-694,-714,-733,-749,-763,-772,-780,-791,-805,-820,-837,-855,-871,-889,-907,-923,-939,-954,-969,
+-986,-999,-1010,-1020,-1030,-1039,-1044,-1043,-1044,-1049,-1057,-1065,-1073,-1079,-1087,-1095,-1104,-1118,-1125,-1124,
+-1124,-1125,-1129,-1134,-1141,-1152,-1165,-1179,-1191,-1200,-1207,-1210,-1214,-1220,-1231,-1245,-1260,-1273,-1285,-1295,
+-1303,-1309,-1316,-1323,-1332,-1344,-1357,-1369,-1377,-1382,-1386,-1390,-1394,-1399,-1404,-1408,-1412,-1415,-1419,-1425,
+-1433,-1446,-1464,-1483,-1500,-1510,-1511,-1502,-1487,-1469,-1454,-1437,-1421,-1409,-1401,-1396,-1389,-1375,-1366,-1365,
+-1372,-1380,-1390,-1394,-1384,-1366,-1352,-1314,-1272,-1244,-1224,-1207,-1196,-1199,-1211,-1220,-1242,-1254,-1265,-1271,
+-1282,-1296,-1305,-1295,-1279,-1287,-1302,-1318,-1334,-1348,-1368,-1393,-1411,-1420,-1433,-1445,-1468,-1496,-1520,-1539,
+-1553,-1561,-1565,-1566,-1565,-1567,-1571,-1576,-1583,-1585,-1577,-1565,-1551,-1533,-1515,-1500,-1487,-1474,-1458,-1437,
+-1410,-1378,-1348,-1324,-1301,-1280,-1259,-1240,-1224,-1211,-1201,-1196,-1190,-1177,-1160,-1146,-1135,-1120,-1096,-1071,
+-1052,-1040,-1035,-1032,-1025,-1016,-1008,-1006,-1010,-1018,-1027,-1037,-1051,-1069,-1085,-1097,-1107,-1119,-1125,-1127,
+-1130,-1132,-1132,-1130,-1128,-1124,-1115,-1105,-1099,-1095,-1092,-1089,-1082,-1073,-1064,-1054,-1041,-1023,-1001,-976,
+-954,-938,-924,-911,-902,-899,-904,-911,-922,-933,-943,-955,-968,-982,-994,-1007,-1021,-1034,-1045,-1063,
+-1084,-1103,-1117,-1123,-1123,-1121,-1114,-1097,-1063,-1017,-969,-925,-876,-826,-776,-730,-687,-644,-596,-563,
+-534,-516,-506,-508,-510,-518,-522,-524,-524,-531,-535,-530,-518,-501,-476,-449,-431,-417,-394,-369,
+-350,-332,-319,-303,-280,-252,-226,-204,-182,-158,-131,-106,-90,-73,-56,-38,-21,-6,6,6,
+10,19,27,31,19,7,7,17,22,19,13,20,30,31,28,30,40,52,64,68,
+67,71,73,78,94,106,116,132,146,163,182,203,220,233,242,256,272,283,294,308,
+322,328,336,336,338,345,345,344,342,341,339,337,334,332,331,327,324,325,323,320,
+321,322,319,317,318,322,327,332,336,340,346,351,355,365,373,374,373,378,385,388,
+392,397,406,409,411,414,421,432,446,454,462,463,463,462,461,462,465,467,459,451,
+447,447,451,457,458,458,459,462,462,456,445,436,429,427,426,424,420,415,413,413,
+413,412,411,408,400,391,397,408,409,408,405,407,417,420,411,411,417,409,409,406,
+396,387,384,389,391,391,385,371,361,359,348,333,325,322,313,305,303,301,297,292,
+288,282,276,272,269,262,255,248,239,229,216,203,194,185,174,161,149,139,130,122,
+114,110,106,103,100,97,94,94,95,95,98,103,110,115,116,117,123,133,137,136,
+133,129,125,122,118,115,112,112,114,116,115,117,123,129,134,136,130,124,119,113,
+104,94,87,79,73,71,71,73,79,86,97,109,121,128,133,135,135,131,126,122,
+123,122,119,115,112,106,103,107,109,108,107,106,107,106,109,108,105,102,98,94,
+93,98,102,105,107,109,108,112,118,126,136,138,134,125,114,104,98,88,82,73,
+63,54,48,51,62,67,68,65,68,73,88,107,131,157,183,211,234,257,279,313,
+346,367,372,353,338,316,294,272,248,230,214,208,201,186,169,146,124,105,85,61,
+40,18,-8,-39,-73,-114,-154,-199,-253,-308,-355,-391,-418,-438,-451,-462,-470,-473,-475,-481,
+-494,-517,-541,-564,-589,-614,-640,-665,-687,-699,-699,-689,-677,-669,-663,-661,-662,-664,-668,-671,
+-680,-696,-718,-744,-769,-789,-807,-828,-849,-871,-892,-911,-925,-939,-944,-949,-952,-954,-970,-987,
+-993,-995,-998,-997,-993,-987,-975,-957,-949,-965,-999,-1030,-1047,-1050,-1059,-1074,-1095,-1127,-1168,-1220,
+-1279,-1340,-1384,-1410,-1436,-1466,-1502,-1539,-1580,-1620,-1653,-1679,-1703,-1724,-1738,-1750,-1756,-1760,-1766,-1775,
+-1785,-1795,-1807,-1820,-1835,-1854,-1872,-1892,-1913,-1934,-1957,-1978,-1998,-2020,-2050,-2085,-2120,-2161,-2212,-2272,
+-2338,-2405,-2476,-2544,-2609,-2670,-2723,-2768,-2808,-2842,-2870,-2892,-2911,-2925,-2933,-2934,-2932,-2934,-2945,-2957,
+-2969,-2980,-2991,-3006,-3022,-3033,-3040,-3041,-3031,-3013,-2996,-2990,-2989,-2985,-2974,-2958,-2943,-2931,-2920,-2914,
+-2917,-2929,-2945,-2962,-2971,-2972,-2970,-2967,-2962,-2959,-2959,-2960,-2960,-2960,-2957,-2953,-2951,-2947,-2943,-2939,
+-2934,-2926,-2915,-2901,-2886,-2868,-2843,-2823,-2813,-2795,-2774,-2754,-2732,-2710,-2697,-2687,-2679,-2669,-2662,-2657,
+-2654,-2656,-2661,-2663,-2661,-2654,-2650,-2650,-2651,-2651,-2650,-2646,-2639,-2629,-2619,-2607,-2595,-2579,-2558,-2533,
+-2499,-2440,-2370,-2307,-2255,-2219,-2198,-2184,-2178,-2182,-2194,-2200,-2205,-2210,-2209,-2203,-2192,-2180,-2167,-2150,
+-2131,-2111,-2090,-2069,-2045,-2020,-1994,-1962,-1928,-1898,-1871,-1844,-1816,-1779,-1736,-1689,-1641,-1586,-1525,-1463,
+-1405,-1344,-1276,-1201,-1123,-1046,-975,-902,-832,-761,-696,-632,-564,-497,-428,-361,-301,-244,-183,-122,
+-73,-25,36,108,176,231,271,294,312,304,296,286,281,287,296,311,336,376,442,538,
+667,819,974,1106,1212,1294,1357,1409,1454,1496,1534,1573,1614,1656,1701,1748,1799,1860,1920,1970,
+2025,2086,2149,2205,2255,2302,2352,2408,2470,2520,2560,2593,2622,2648,2672,2686,2696,2714,2724,2724,
+2730,2744,2751,2730,2695,2656,2612,2566,2534,2506,2477,2460,2431,2384,2348,2335,2345,2383,2454,2526,
+2600,2678,2756,2847,2924,2991,3055,3124,3195,3263,3324,3378,3422,3465,3509,3554,3597,3636,3671,3715,
+3767,3813,3849,3879,3908,3938,3970,4001,4034,4068,4106,4146,4185,4222,4256,4289,4325,4362,4398,4429,
+4460,4495,4531,4569,4609,4647,4683,4716,4745,4775,4814,4862,4913,4958,4992,5020,5053,5097,5148,5207,
+5266,5325,5379,5430,5470,5495,5495,5481,5468,5469,5477,5496,5525,5558,5592,5626,5644,5648,5647,5667,
+5712,5764,5795,5814,5842,5895,5948,5971,5972,5965,5975,5995,5995,5974,5956,5956,5974,5991,5992,5987,
+5970,5955,5957,5955,5966,5977,5953,5922,5908,5894,5898,5910,5923,5938,5955,5966,5975,5989,6004,6018,
+6029,6038,6043,6045,6037,6014,5988,5970,5960,5956,5962,5973,5985,5996,6007,6020,6032,6035,6033,6025,
+6017,6006,5994,5983,5976,5967,5955,5942,5932,5923,5911,5894,5880,5868,5856,5840,5823,5810,5794,5777,
+5753,5717,5668,5627,5593,5557,5523,5503,5491,5501,5499,5460,5395,5332,5286,5252,5221,5186,5157,5137,
+5126,5121,5116,5117,5118,5126,5134,5122,5086,5043,5019,5020,5025,5021,5009,4984,4959,4937,4925,4917,
+4905,4894,4879,4860,4853,4842,4827,4814,4803,4792,4779,4764,4748,4734,4720,4709,4696,4681,4664,4648,
+4630,4612,4593,4575,4556,4537,4519,4502,4484,4464,4446,4427,4408,4388,4367,4344,4320,4296,4271,4247,
+4221,4194,4166,4141,4115,4088,4061,4034,4013,3990,3966,3940,3911,3887,3870,3855,3843,3827,3813,3800,
+3782,3761,3743,3723,3706,3689,3661,3633,3598,3528,3475,3443,3414,3386,3329,3274,3232,3201,3162,3132,
+3098,3059,3065,3068,3051,3058,3025,3010,3002,2974,2942,2906,2872,2853,2840,2809,2785,2759,2722,2692,
+2670,2645,2614,2585,2571,2561,2545,2537,2537,2525,2500,2462,2416,2375,2334,2292,2250,2208,2169,2140,
+2120,2103,2088,2074,2063,2059,2054,2032,1983,1944,1920,1899,1875,1847,1826,1799,1772,1744,1716,1692,
+1668,1645,1615,1581,1548,1519,1493,1463,1437,1414,1392,1372,1355,1337,1320,1302,1287,1273,1259,1246,
+1235,1225,1213,1198,1177,1150,1122,1091,1063,1038,1013,988,962,938,917,896,877,864,852,837,
+817,798,779,763,751,737,721,705,686,666,642,615,586,555,526,502,479,460,445,428,
+408,387,367,350,334,320,306,289,271,251,231,209,184,161,139,120,103,89,78,69,
+60,49,35,18,-1,-23,-44,-65,-86,-105,-121,-138,-157,-177,-198,-217,-234,-247,-260,-274,
+-290,-312,-339,-371,-401,-426,-441,-438,-440,-444,-450,-455,-458,-466,-480,-501,-522,-547,-572,-600,
+-631,-661,-683,-697,-706,-718,-730,-741,-752,-768,-789,-808,-825,-843,-859,-875,-893,-910,-924,-941,
+-961,-984,-1006,-1024,-1041,-1055,-1067,-1075,-1080,-1086,-1093,-1099,-1103,-1108,-1114,-1126,-1137,-1145,-1153,-1161,
+-1164,-1167,-1172,-1178,-1185,-1193,-1202,-1212,-1222,-1231,-1241,-1248,-1252,-1257,-1263,-1273,-1286,-1299,-1312,-1322,
+-1330,-1336,-1341,-1347,-1355,-1362,-1368,-1372,-1375,-1378,-1383,-1389,-1395,-1403,-1411,-1420,-1428,-1435,-1441,-1447,
+-1455,-1469,-1486,-1502,-1513,-1519,-1522,-1519,-1509,-1493,-1474,-1458,-1441,-1423,-1407,-1398,-1397,-1405,-1422,-1442,
+-1457,-1471,-1482,-1484,-1478,-1454,-1432,-1407,-1370,-1343,-1325,-1313,-1288,-1284,-1284,-1284,-1297,-1313,-1326,-1331,
+-1340,-1337,-1332,-1311,-1279,-1271,-1283,-1300,-1315,-1329,-1347,-1367,-1382,-1400,-1412,-1429,-1454,-1482,-1506,-1532,
+-1555,-1578,-1596,-1613,-1628,-1639,-1647,-1651,-1652,-1648,-1640,-1628,-1610,-1589,-1566,-1542,-1521,-1509,-1501,-1494,
+-1479,-1456,-1430,-1409,-1392,-1377,-1364,-1353,-1343,-1333,-1319,-1303,-1288,-1274,-1257,-1239,-1223,-1212,-1206,-1200,
+-1188,-1174,-1163,-1155,-1145,-1136,-1130,-1120,-1109,-1099,-1089,-1079,-1072,-1069,-1071,-1082,-1095,-1105,-1119,-1136,
+-1153,-1161,-1158,-1151,-1141,-1131,-1121,-1111,-1104,-1102,-1105,-1103,-1097,-1089,-1080,-1069,-1056,-1046,-1034,-1016,
+-996,-977,-961,-947,-938,-933,-933,-941,-954,-971,-989,-1008,-1029,-1052,-1075,-1098,-1119,-1139,-1160,-1182,
+-1204,-1223,-1236,-1244,-1248,-1247,-1238,-1224,-1202,-1158,-1091,-1019,-957,-893,-829,-762,-692,-625,-568,-527,
+-491,-483,-485,-491,-499,-501,-500,-502,-505,-517,-523,-519,-508,-491,-466,-442,-427,-415,-394,-377,
+-361,-345,-336,-314,-296,-278,-257,-232,-209,-188,-169,-151,-139,-123,-101,-82,-66,-47,-23,-3,
+13,28,38,45,42,28,11,4,14,28,40,42,39,40,48,51,51,57,68,85,
+101,111,116,118,120,125,131,141,155,175,187,201,225,241,248,260,274,288,299,313,
+331,344,348,349,350,355,361,366,364,362,362,362,361,359,356,354,353,352,352,353,
+354,356,360,365,370,372,371,370,369,368,370,372,380,387,396,401,402,404,409,412,
+416,421,424,429,440,448,452,462,469,477,486,494,502,508,514,522,530,529,532,541,
+538,531,516,512,520,521,527,543,536,527,520,514,503,490,483,478,476,468,457,448,
+447,447,447,446,445,441,435,429,431,440,458,454,446,449,457,459,455,458,459,458,
+461,459,461,464,450,451,450,450,451,443,433,435,427,403,386,375,362,351,344,332,
+326,320,316,309,301,293,287,281,273,261,249,236,224,211,198,186,173,163,156,148,
+141,133,124,117,111,105,100,95,92,90,91,93,95,99,102,103,109,118,127,132,
+132,131,129,128,129,130,131,131,128,122,120,119,116,121,130,134,134,130,124,118,
+114,107,99,92,86,84,84,86,95,109,126,147,173,198,221,239,250,257,264,268,
+272,275,266,260,256,250,245,239,238,236,233,228,223,220,218,214,210,205,200,193,
+187,180,178,179,179,179,181,186,192,201,207,209,208,204,199,195,191,189,188,188,
+181,177,174,176,181,191,205,218,228,234,244,254,275,307,345,385,432,458,476,492,
+497,532,571,588,597,578,554,566,543,524,507,487,462,453,439,430,396,361,352,344,
+321,277,234,191,155,114,72,12,-57,-125,-193,-257,-312,-355,-387,-413,-437,-456,-474,-493,
+-511,-530,-547,-562,-580,-602,-627,-651,-666,-671,-666,-655,-642,-629,-623,-622,-623,-628,-635,-640,
+-647,-656,-670,-689,-710,-728,-744,-760,-781,-806,-833,-853,-867,-880,-888,-892,-899,-904,-905,-909,
+-915,-919,-924,-924,-917,-899,-858,-802,-753,-732,-750,-802,-859,-899,-931,-954,-966,-974,-993,-1037,
+-1090,-1139,-1190,-1242,-1279,-1318,-1357,-1394,-1429,-1467,-1509,-1549,-1592,-1635,-1670,-1702,-1727,-1748,-1770,-1792,
+-1811,-1831,-1851,-1871,-1889,-1907,-1926,-1945,-1963,-1981,-2000,-2020,-2042,-2063,-2084,-2109,-2138,-2166,-2199,-2244,
+-2297,-2356,-2420,-2488,-2562,-2635,-2704,-2763,-2809,-2846,-2878,-2907,-2932,-2954,-2975,-2995,-3008,-3013,-3019,-3025,
+-3030,-3040,-3047,-3060,-3081,-3098,-3104,-3110,-3107,-3099,-3096,-3096,-3090,-3074,-3055,-3042,-3031,-3021,-3013,-3012,
+-3018,-3032,-3049,-3062,-3067,-3068,-3066,-3064,-3061,-3059,-3061,-3063,-3065,-3065,-3063,-3058,-3053,-3051,-3048,-3044,
+-3042,-3038,-3031,-3021,-3009,-2997,-2981,-2961,-2938,-2914,-2889,-2866,-2843,-2818,-2796,-2776,-2757,-2737,-2720,-2716,
+-2724,-2727,-2727,-2728,-2727,-2718,-2709,-2702,-2704,-2711,-2719,-2724,-2722,-2714,-2705,-2695,-2685,-2673,-2661,-2646,
+-2627,-2598,-2549,-2485,-2423,-2369,-2327,-2295,-2273,-2260,-2256,-2258,-2268,-2276,-2278,-2279,-2276,-2270,-2260,-2248,
+-2235,-2221,-2204,-2185,-2163,-2139,-2113,-2090,-2068,-2044,-2023,-2000,-1976,-1946,-1909,-1868,-1826,-1779,-1729,-1675,
+-1617,-1552,-1481,-1412,-1349,-1286,-1221,-1152,-1078,-1002,-932,-860,-789,-717,-647,-575,-507,-443,-382,-324,
+-260,-185,-115,-50,10,59,107,148,179,191,192,196,197,204,214,227,247,275,310,364,
+448,570,735,929,1117,1257,1347,1398,1432,1460,1490,1521,1556,1595,1636,1676,1717,1761,1808,1857,
+1905,1955,2010,2071,2139,2207,2277,2345,2413,2474,2521,2558,2590,2615,2639,2662,2680,2693,2714,2740,
+2759,2772,2772,2739,2680,2610,2541,2487,2445,2425,2401,2348,2295,2260,2250,2254,2265,2287,2330,2397,
+2480,2566,2636,2708,2787,2856,2922,2992,3064,3136,3206,3269,3328,3387,3448,3504,3557,3608,3655,3697,
+3735,3773,3811,3849,3885,3919,3953,3987,4018,4048,4078,4110,4143,4178,4213,4252,4293,4337,4379,4417,
+4454,4494,4535,4574,4608,4642,4677,4711,4748,4787,4828,4869,4910,4952,4995,5031,5065,5100,5142,5190,
+5246,5302,5352,5387,5413,5431,5447,5457,5450,5441,5442,5462,5489,5511,5545,5612,5682,5731,5754,5760,
+5727,5695,5690,5702,5756,5822,5894,5961,6013,6054,6087,6105,6117,6105,6094,6095,6114,6114,6078,6051,
+6037,6005,5967,5931,5924,5933,5923,5915,5905,5901,5918,5943,5960,5976,5990,6003,6018,6029,6037,6041,
+6047,6050,6046,6036,6017,5996,5982,5977,5980,5991,6008,6030,6056,6065,6069,6075,6077,6076,6076,6065,
+6050,6038,6020,6007,6000,5998,5990,5975,5964,5955,5941,5922,5902,5890,5879,5864,5847,5834,5824,5813,
+5796,5772,5741,5710,5680,5653,5619,5571,5531,5503,5494,5498,5483,5439,5370,5312,5274,5246,5220,5196,
+5174,5154,5137,5123,5107,5090,5076,5067,5067,5084,5106,5101,5063,5002,4960,4953,4954,4938,4926,4917,
+4899,4885,4874,4862,4853,4849,4839,4831,4820,4810,4794,4779,4763,4748,4732,4718,4704,4691,4678,4662,
+4642,4622,4601,4581,4559,4538,4519,4500,4482,4462,4441,4419,4401,4381,4355,4328,4303,4276,4247,4219,
+4189,4161,4128,4096,4064,4031,4005,3980,3956,3938,3925,3909,3892,3873,3869,3874,3872,3866,3861,3863,
+3848,3816,3783,3767,3755,3741,3701,3660,3608,3538,3487,3433,3372,3318,3271,3247,3236,3221,3192,3156,
+3136,3137,3117,3094,3108,3118,3100,3070,3041,3020,2997,2956,2907,2870,2844,2827,2798,2776,2757,2737,
+2708,2680,2650,2620,2594,2577,2559,2543,2523,2508,2492,2468,2435,2399,2360,2318,2277,2243,2214,2187,
+2157,2128,2104,2086,2072,2057,2040,2022,2006,1981,1939,1907,1889,1875,1857,1843,1828,1803,1777,1755,
+1739,1725,1708,1681,1649,1615,1580,1550,1525,1502,1476,1449,1420,1389,1361,1336,1312,1289,1267,1248,
+1231,1218,1203,1186,1172,1157,1135,1108,1081,1056,1033,1013,995,978,961,944,926,904,882,864,
+847,828,807,790,778,771,762,749,733,714,692,670,644,615,584,552,523,496,474,458,
+441,422,400,378,359,346,334,324,313,298,280,260,238,214,188,163,141,120,102,86,
+72,58,45,31,14,-4,-24,-45,-65,-81,-96,-111,-127,-145,-164,-183,-200,-216,-230,-244,
+-257,-270,-282,-298,-330,-368,-404,-432,-466,-484,-491,-495,-497,-503,-511,-515,-520,-531,-548,-570,
+-597,-625,-644,-663,-678,-680,-683,-692,-709,-728,-745,-768,-796,-826,-847,-861,-873,-887,-902,-920,
+-938,-960,-987,-1016,-1041,-1062,-1081,-1098,-1112,-1127,-1142,-1155,-1164,-1171,-1180,-1190,-1200,-1206,-1206,-1206,
+-1207,-1212,-1218,-1223,-1229,-1231,-1230,-1227,-1235,-1258,-1276,-1289,-1299,-1297,-1300,-1307,-1314,-1323,-1332,-1340,
+-1347,-1354,-1361,-1367,-1374,-1381,-1386,-1388,-1390,-1395,-1401,-1409,-1416,-1424,-1431,-1440,-1450,-1459,-1467,-1472,
+-1477,-1482,-1485,-1492,-1502,-1511,-1517,-1519,-1513,-1503,-1489,-1473,-1453,-1435,-1422,-1415,-1411,-1408,-1411,-1430,
+-1467,-1504,-1530,-1540,-1533,-1518,-1502,-1490,-1483,-1496,-1479,-1457,-1424,-1408,-1397,-1386,-1374,-1377,-1387,-1385,
+-1392,-1399,-1400,-1382,-1354,-1331,-1320,-1333,-1353,-1375,-1386,-1408,-1425,-1440,-1447,-1454,-1462,-1470,-1482,-1487,
+-1501,-1526,-1552,-1579,-1605,-1632,-1655,-1673,-1682,-1685,-1678,-1666,-1646,-1622,-1594,-1566,-1539,-1518,-1508,-1508,
+-1511,-1512,-1509,-1503,-1494,-1485,-1477,-1470,-1465,-1457,-1446,-1431,-1415,-1401,-1386,-1368,-1348,-1328,-1308,-1294,
+-1286,-1282,-1280,-1278,-1274,-1271,-1265,-1258,-1249,-1238,-1223,-1203,-1181,-1157,-1137,-1128,-1125,-1127,-1138,-1151,
+-1163,-1180,-1187,-1183,-1174,-1164,-1153,-1139,-1126,-1116,-1109,-1104,-1096,-1088,-1079,-1072,-1066,-1060,-1050,-1036,
+-1021,-1005,-991,-978,-969,-964,-963,-967,-976,-991,-1012,-1036,-1063,-1094,-1127,-1159,-1191,-1219,-1249,-1283,
+-1316,-1341,-1358,-1372,-1383,-1382,-1375,-1361,-1342,-1313,-1267,-1192,-1106,-1022,-941,-860,-774,-683,-602,-529,
+-480,-449,-448,-461,-468,-475,-480,-484,-491,-503,-511,-507,-492,-472,-449,-432,-417,-403,-391,-375,
+-360,-353,-347,-335,-311,-289,-257,-230,-213,-200,-189,-182,-172,-154,-129,-104,-82,-66,-54,-38,
+-15,13,47,77,93,94,77,50,34,34,49,66,75,70,64,64,70,76,84,98,
+115,132,144,153,161,167,176,185,195,206,219,234,248,262,273,285,298,311,324,337,
+350,359,366,374,380,384,385,384,384,382,381,379,377,374,370,365,362,361,363,369,
+377,385,391,397,401,405,407,409,408,406,405,410,414,414,415,418,425,431,433,436,
+437,438,450,458,461,466,470,477,491,502,511,521,530,534,536,554,576,581,576,581,
+592,604,616,624,626,628,628,629,628,615,596,586,583,583,576,559,550,542,533,526,
+520,508,495,480,472,469,469,465,459,451,450,449,453,455,468,471,466,475,479,479,
+483,503,512,508,497,490,495,501,507,516,523,508,496,483,471,462,452,429,406,393,
+383,371,362,348,335,322,312,303,296,292,290,280,267,254,242,228,218,208,198,188,
+178,168,159,148,136,127,118,111,105,99,93,90,88,88,88,89,90,93,98,104,
+112,119,125,128,132,134,134,130,127,125,123,124,128,133,134,134,130,128,128,123,
+113,106,103,100,99,98,102,106,117,136,171,206,236,255,279,306,333,348,364,383,
+387,383,395,406,403,395,389,386,381,372,361,350,339,327,316,304,292,283,276,271,
+270,267,266,266,269,271,275,280,283,285,291,301,307,309,313,311,305,300,301,306,
+311,313,313,319,328,345,358,375,390,400,406,417,429,448,483,518,549,582,612,653,
+667,682,700,714,736,747,733,731,741,741,727,712,683,644,608,570,528,510,505,495,
+466,422,378,341,333,318,275,227,152,72,-1,-69,-134,-190,-243,-290,-330,-370,-409,-447,
+-481,-508,-522,-528,-536,-545,-558,-580,-595,-596,-592,-587,-577,-564,-558,-557,-559,-562,-566,-577,
+-588,-600,-615,-633,-652,-674,-693,-712,-728,-744,-765,-793,-810,-820,-831,-841,-851,-860,-865,-867,
+-871,-874,-878,-878,-872,-866,-852,-832,-804,-775,-758,-753,-758,-795,-853,-887,-899,-912,-928,-945,
+-972,-1007,-1046,-1082,-1119,-1157,-1197,-1227,-1260,-1301,-1346,-1396,-1447,-1496,-1546,-1591,-1633,-1673,-1709,-1742,
+-1772,-1803,-1834,-1866,-1896,-1923,-1948,-1969,-1989,-2009,-2027,-2044,-2062,-2081,-2101,-2121,-2144,-2169,-2195,-2225,
+-2266,-2316,-2375,-2440,-2515,-2595,-2673,-2744,-2807,-2861,-2903,-2935,-2960,-2986,-3011,-3036,-3056,-3066,-3076,-3087,
+-3089,-3094,-3107,-3119,-3133,-3151,-3164,-3175,-3178,-3174,-3174,-3177,-3174,-3159,-3139,-3124,-3113,-3109,-3105,-3107,
+-3118,-3130,-3143,-3150,-3152,-3152,-3159,-3168,-3172,-3170,-3167,-3166,-3168,-3166,-3162,-3157,-3152,-3147,-3141,-3137,
+-3135,-3131,-3124,-3115,-3106,-3096,-3082,-3065,-3046,-3022,-2999,-2975,-2952,-2922,-2890,-2864,-2842,-2821,-2801,-2782,
+-2772,-2769,-2778,-2790,-2790,-2783,-2777,-2766,-2760,-2762,-2775,-2790,-2797,-2798,-2795,-2790,-2783,-2775,-2767,-2757,
+-2745,-2729,-2703,-2662,-2614,-2566,-2517,-2471,-2434,-2406,-2386,-2376,-2375,-2381,-2385,-2384,-2381,-2375,-2365,-2359,
+-2351,-2338,-2324,-2309,-2290,-2268,-2242,-2217,-2195,-2175,-2158,-2140,-2118,-2093,-2063,-2027,-1988,-1947,-1902,-1852,
+-1797,-1739,-1679,-1619,-1555,-1497,-1436,-1372,-1306,-1235,-1164,-1090,-1013,-938,-858,-780,-711,-648,-591,-532,
+-466,-397,-327,-258,-192,-123,-56,-9,24,52,92,105,106,105,103,110,123,142,172,212,
+270,351,463,610,790,998,1180,1303,1365,1396,1424,1455,1489,1527,1566,1605,1644,1684,1725,1767,
+1815,1868,1924,1983,2046,2113,2185,2275,2370,2450,2499,2527,2548,2571,2594,2616,2638,2655,2671,2693,
+2729,2766,2784,2764,2708,2636,2562,2493,2430,2374,2325,2297,2275,2252,2246,2245,2257,2279,2314,2367,
+2438,2517,2592,2655,2722,2801,2875,2937,3001,3072,3142,3206,3270,3334,3397,3456,3509,3555,3597,3641,
+3689,3740,3785,3829,3872,3915,3953,3990,4022,4052,4084,4118,4152,4184,4216,4250,4290,4333,4379,4420,
+4453,4484,4515,4550,4587,4625,4663,4699,4731,4763,4800,4841,4884,4929,4970,5009,5049,5093,5131,5165,
+5205,5251,5301,5343,5374,5389,5396,5390,5384,5370,5355,5348,5358,5405,5488,5569,5641,5707,5756,5777,
+5791,5801,5788,5751,5755,5819,5898,5955,5982,6010,6023,6041,6048,6052,6058,6062,6044,6051,6079,6072,
+6041,6017,5987,5959,5947,5931,5917,5907,5916,5942,5962,5967,5953,5937,5935,5946,5964,5986,6000,6005,
+6007,6004,5996,5990,5989,5994,6000,6010,6024,6042,6062,6072,6078,6092,6102,6097,6086,6072,6077,6081,
+6074,6071,6061,6045,6037,6031,6021,6006,5992,5980,5962,5940,5925,5913,5899,5884,5871,5859,5848,5838,
+5824,5805,5783,5762,5739,5716,5699,5689,5685,5661,5634,5594,5530,5460,5395,5337,5294,5267,5247,5231,
+5212,5197,5179,5163,5144,5126,5108,5091,5074,5060,5049,5052,5066,5077,5060,5022,4965,4922,4923,4954,
+4952,4919,4894,4880,4865,4849,4884,4860,4840,4823,4805,4788,4774,4762,4746,4732,4719,4703,4685,4669,
+4653,4632,4609,4584,4561,4538,4514,4493,4471,4450,4429,4410,4387,4360,4331,4305,4281,4258,4229,4197,
+4166,4130,4092,4053,4015,3984,3962,3945,3932,3922,3914,3910,3911,3920,3927,3932,3935,3940,3940,3924,
+3889,3848,3811,3779,3767,3737,3697,3644,3586,3532,3464,3411,3348,3285,3253,3233,3211,3197,3197,3199,
+3179,3183,3204,3211,3196,3166,3155,3138,3117,3092,3057,3009,2966,2934,2883,2844,2825,2809,2788,2760,
+2722,2690,2660,2629,2591,2567,2550,2527,2504,2487,2463,2438,2422,2407,2377,2347,2311,2279,2249,2221,
+2194,2167,2139,2114,2092,2073,2052,2028,2002,1974,1950,1926,1909,1896,1885,1872,1855,1843,1834,1828,
+1819,1799,1781,1757,1732,1708,1682,1648,1616,1591,1572,1551,1525,1494,1464,1433,1400,1366,1335,1305,
+1280,1260,1243,1227,1210,1187,1160,1132,1105,1080,1058,1039,1025,1015,1007,1001,994,986,972,950,
+923,899,878,857,840,828,821,812,795,774,751,727,702,675,648,618,585,552,520,493,
+467,445,423,400,383,372,362,349,336,325,313,300,284,262,237,212,183,152,128,109,
+95,83,74,60,43,25,3,-18,-39,-60,-83,-99,-113,-128,-143,-160,-176,-190,-203,-216,
+-229,-242,-255,-268,-280,-296,-323,-363,-402,-440,-473,-503,-526,-543,-557,-566,-574,-582,-592,-598,
+-604,-612,-619,-621,-621,-629,-640,-652,-668,-684,-697,-708,-725,-750,-779,-808,-835,-851,-862,-874,
+-892,-916,-948,-983,-1016,-1048,-1077,-1104,-1130,-1155,-1178,-1200,-1219,-1233,-1243,-1251,-1260,-1266,-1270,-1270,
+-1269,-1267,-1267,-1271,-1272,-1276,-1280,-1281,-1284,-1287,-1292,-1300,-1309,-1320,-1333,-1344,-1351,-1356,-1359,-1360,
+-1362,-1365,-1369,-1376,-1382,-1389,-1399,-1409,-1417,-1425,-1434,-1444,-1453,-1462,-1472,-1479,-1484,-1489,-1493,-1495,
+-1498,-1499,-1497,-1496,-1501,-1511,-1518,-1520,-1518,-1513,-1504,-1493,-1482,-1468,-1450,-1438,-1433,-1433,-1439,-1452,
+-1479,-1517,-1555,-1588,-1607,-1615,-1620,-1619,-1599,-1587,-1588,-1576,-1553,-1534,-1520,-1493,-1481,-1469,-1472,-1480,
+-1476,-1475,-1475,-1462,-1443,-1415,-1398,-1375,-1375,-1405,-1434,-1456,-1483,-1505,-1515,-1522,-1521,-1517,-1501,-1491,
+-1468,-1452,-1450,-1467,-1499,-1536,-1580,-1616,-1638,-1646,-1647,-1638,-1619,-1590,-1560,-1535,-1519,-1509,-1501,-1494,
+-1496,-1507,-1518,-1524,-1525,-1522,-1521,-1523,-1525,-1527,-1524,-1520,-1518,-1512,-1502,-1490,-1477,-1464,-1450,-1433,
+-1416,-1404,-1396,-1390,-1382,-1371,-1362,-1359,-1356,-1349,-1338,-1327,-1314,-1294,-1266,-1236,-1211,-1193,-1182,-1179,
+-1183,-1193,-1205,-1213,-1215,-1211,-1200,-1183,-1163,-1143,-1127,-1114,-1106,-1100,-1095,-1088,-1081,-1073,-1064,-1052,
+-1035,-1022,-1008,-997,-994,-995,-995,-994,-994,-997,-1010,-1034,-1065,-1098,-1135,-1176,-1217,-1257,-1295,-1334,
+-1376,-1415,-1446,-1468,-1479,-1483,-1478,-1470,-1459,-1441,-1409,-1352,-1268,-1171,-1078,-989,-904,-819,-732,-643,
+-555,-486,-446,-439,-443,-450,-457,-467,-484,-497,-500,-492,-476,-454,-431,-422,-418,-410,-398,-383,
+-368,-353,-340,-340,-333,-310,-284,-257,-230,-213,-204,-189,-172,-151,-122,-84,-50,-16,10,28,
+34,39,50,76,112,142,152,145,128,113,109,119,129,132,127,115,110,114,121,131,
+142,151,162,173,182,192,201,212,225,239,252,264,277,289,303,319,332,343,353,364,
+373,383,393,402,412,418,419,418,416,417,415,409,400,392,384,376,372,373,374,378,
+384,393,403,415,425,432,436,438,440,442,441,442,447,449,448,447,448,454,462,471,
+478,483,484,482,485,499,508,513,515,518,526,531,541,551,552,561,571,583,600,607,
+608,613,621,628,641,657,664,661,660,670,680,673,668,668,663,648,632,621,613,599,
+588,577,559,538,517,501,493,489,484,479,475,473,470,467,471,471,480,489,487,489,
+492,497,507,521,530,543,541,531,537,562,564,559,560,562,548,524,508,504,500,484,
+460,439,430,418,409,398,375,355,333,323,318,311,302,295,288,276,263,248,232,216,
+201,188,175,162,152,143,136,131,126,119,112,107,102,99,96,92,87,85,82,83,
+85,89,96,105,113,122,130,135,133,127,122,118,115,117,122,127,129,127,123,123,
+131,136,146,146,140,137,137,143,157,169,192,223,253,278,303,333,368,382,398,423,
+443,458,470,489,501,505,496,485,471,460,445,432,420,411,398,386,381,374,364,355,
+355,355,359,366,373,382,392,400,406,410,420,425,421,420,421,424,428,429,433,442,
+455,455,463,471,475,493,506,523,539,558,563,566,578,597,622,662,701,732,749,759,
+776,781,795,813,819,807,793,789,806,814,793,771,759,735,702,668,633,606,575,549,
+514,491,462,428,397,367,351,325,277,222,167,117,73,15,-52,-114,-168,-214,-259,-307,
+-353,-396,-429,-448,-459,-472,-484,-496,-504,-499,-488,-478,-471,-472,-470,-471,-474,-476,-482,-495,
+-509,-525,-542,-561,-582,-602,-625,-649,-674,-692,-711,-732,-756,-765,-771,-781,-792,-803,-811,-818,
+-825,-827,-831,-836,-844,-847,-848,-843,-838,-832,-822,-814,-818,-833,-853,-877,-904,-917,-921,-923,
+-931,-948,-973,-1001,-1021,-1051,-1089,-1123,-1153,-1189,-1234,-1285,-1341,-1395,-1443,-1490,-1536,-1583,-1629,-1670,
+-1710,-1749,-1787,-1822,-1857,-1892,-1929,-1963,-1996,-2025,-2053,-2078,-2097,-2112,-2128,-2146,-2167,-2192,-2218,-2246,
+-2282,-2327,-2379,-2446,-2518,-2592,-2671,-2745,-2810,-2868,-2917,-2959,-2993,-3020,-3048,-3075,-3096,-3109,-3118,-3123,
+-3128,-3131,-3135,-3149,-3174,-3190,-3208,-3226,-3239,-3245,-3247,-3250,-3250,-3244,-3232,-3220,-3211,-3207,-3205,-3209,
+-3218,-3229,-3240,-3244,-3246,-3250,-3256,-3265,-3272,-3277,-3277,-3274,-3274,-3272,-3265,-3256,-3247,-3240,-3230,-3220,
+-3212,-3205,-3202,-3199,-3193,-3182,-3171,-3157,-3140,-3120,-3099,-3076,-3050,-3023,-2994,-2964,-2929,-2897,-2871,-2848,
+-2831,-2827,-2825,-2832,-2843,-2853,-2850,-2843,-2836,-2833,-2833,-2837,-2845,-2853,-2866,-2872,-2867,-2861,-2854,-2849,
+-2842,-2830,-2811,-2779,-2730,-2683,-2639,-2594,-2545,-2509,-2480,-2464,-2460,-2467,-2478,-2487,-2491,-2494,-2488,-2477,
+-2469,-2458,-2442,-2429,-2414,-2398,-2380,-2359,-2340,-2321,-2301,-2277,-2251,-2227,-2203,-2172,-2136,-2094,-2047,-1997,
+-1946,-1894,-1842,-1789,-1736,-1678,-1620,-1561,-1501,-1440,-1377,-1310,-1238,-1164,-1087,-1010,-934,-860,-793,-731,
+-666,-599,-529,-458,-393,-318,-249,-197,-155,-109,-74,-39,-10,13,30,50,69,89,107,130,
+164,211,289,401,542,699,866,1021,1141,1221,1281,1333,1381,1429,1476,1522,1566,1610,1651,1692,
+1735,1781,1834,1895,1962,2034,2113,2203,2308,2409,2487,2525,2539,2547,2559,2575,2591,2604,2612,2614,
+2625,2658,2694,2715,2702,2659,2598,2535,2477,2420,2360,2312,2298,2311,2319,2325,2338,2355,2382,2417,
+2459,2526,2606,2679,2749,2812,2878,2943,3006,3073,3138,3196,3253,3314,3376,3433,3484,3533,3581,3630,
+3681,3734,3787,3840,3892,3936,3975,4011,4046,4078,4107,4134,4162,4195,4233,4276,4319,4361,4400,4439,
+4478,4513,4548,4580,4611,4643,4681,4720,4756,4784,4811,4844,4881,4918,4959,4997,5031,5070,5116,5162,
+5204,5249,5292,5332,5363,5388,5405,5418,5418,5418,5421,5436,5449,5434,5422,5464,5546,5604,5627,5661,
+5691,5708,5705,5701,5721,5798,5882,5941,5955,5984,5970,5966,5977,5993,5965,5972,5979,5975,5976,5996,
+5990,5974,5960,5946,5934,5926,5930,5945,5963,5976,5987,5984,5963,5933,5908,5898,5901,5912,5925,5937,
+5951,5965,5977,5993,6011,6030,6047,6067,6085,6104,6122,6130,6131,6124,6117,6121,6127,6131,6139,6134,
+6107,6095,6086,6077,6065,6056,6045,6031,6020,6006,5987,5966,5951,5937,5922,5908,5893,5879,5866,5850,
+5833,5813,5794,5778,5761,5740,5715,5684,5664,5650,5649,5588,5500,5440,5395,5360,5336,5317,5295,5274,
+5255,5235,5214,5197,5177,5159,5141,5123,5104,5090,5083,5080,5073,5056,5035,5009,4987,4968,4952,4940,
+4931,4939,4956,4964,4942,4910,4884,4896,4864,4843,4827,4812,4799,4787,4772,4759,4746,4726,4708,4693,
+4682,4665,4647,4627,4605,4580,4550,4524,4501,4477,4452,4422,4390,4359,4331,4304,4276,4249,4218,4185,
+4145,4101,4062,4027,3996,3980,3974,3979,3986,3994,3997,3997,3997,4000,4000,3998,3986,3969,3947,3914,
+3886,3850,3801,3751,3702,3654,3608,3551,3500,3453,3377,3309,3254,3209,3186,3178,3159,3154,3163,3185,
+3192,3187,3191,3204,3194,3176,3150,3131,3107,3089,3062,3033,2995,2962,2925,2871,2834,2817,2799,2772,
+2734,2688,2643,2604,2565,2527,2496,2478,2452,2425,2404,2394,2387,2377,2363,2342,2316,2291,2264,2233,
+2207,2181,2153,2129,2102,2078,2057,2036,2014,1991,1969,1939,1910,1893,1883,1880,1885,1892,1886,1873,
+1853,1848,1844,1825,1807,1789,1764,1732,1700,1673,1653,1631,1607,1581,1556,1531,1506,1476,1445,1410,
+1373,1341,1313,1290,1268,1240,1209,1177,1145,1114,1085,1060,1040,1023,1012,1005,1002,1004,1004,1002,
+999,999,991,968,940,920,909,902,881,848,824,802,779,752,725,698,669,638,603,564,
+524,488,457,432,408,388,374,362,352,341,328,313,300,285,267,245,225,205,178,148,
+120,97,76,54,33,18,6,-3,-15,-30,-48,-67,-86,-104,-119,-132,-146,-158,-170,-182,
+-196,-209,-221,-236,-249,-264,-278,-295,-320,-354,-393,-432,-469,-500,-527,-550,-570,-589,-607,-619,
+-627,-631,-634,-636,-636,-637,-642,-645,-648,-662,-674,-680,-684,-692,-706,-729,-757,-787,-818,-846,
+-866,-885,-911,-947,-994,-1030,-1059,-1092,-1122,-1152,-1183,-1216,-1246,-1270,-1289,-1305,-1315,-1321,-1324,-1324,
+-1324,-1321,-1319,-1316,-1313,-1317,-1321,-1324,-1327,-1332,-1338,-1344,-1349,-1355,-1365,-1377,-1385,-1390,-1395,-1397,
+-1396,-1396,-1398,-1402,-1409,-1417,-1426,-1435,-1445,-1455,-1465,-1475,-1485,-1493,-1500,-1507,-1513,-1517,-1521,-1525,
+-1528,-1529,-1527,-1522,-1521,-1527,-1533,-1530,-1525,-1525,-1521,-1516,-1509,-1504,-1498,-1491,-1483,-1476,-1476,-1495,
+-1527,-1564,-1598,-1627,-1651,-1667,-1673,-1667,-1656,-1640,-1628,-1628,-1632,-1623,-1598,-1573,-1569,-1558,-1545,-1535,
+-1527,-1524,-1532,-1538,-1532,-1523,-1504,-1480,-1454,-1445,-1453,-1476,-1492,-1511,-1523,-1538,-1550,-1559,-1556,-1538,
+-1501,-1472,-1454,-1449,-1451,-1462,-1478,-1510,-1554,-1588,-1599,-1586,-1564,-1541,-1522,-1507,-1501,-1499,-1497,-1492,
+-1487,-1487,-1495,-1508,-1519,-1528,-1535,-1543,-1552,-1563,-1572,-1575,-1574,-1572,-1567,-1558,-1549,-1543,-1541,-1539,
+-1532,-1517,-1500,-1484,-1474,-1463,-1445,-1426,-1413,-1407,-1401,-1392,-1383,-1380,-1379,-1373,-1360,-1337,-1314,-1289,
+-1270,-1259,-1254,-1253,-1251,-1250,-1246,-1236,-1220,-1201,-1177,-1151,-1130,-1119,-1114,-1113,-1108,-1099,-1088,-1073,
+-1053,-1029,-1011,-1000,-994,-991,-990,-991,-996,-1004,-1018,-1038,-1062,-1090,-1123,-1158,-1198,-1241,-1285,-1328,
+-1375,-1422,-1465,-1499,-1525,-1539,-1544,-1537,-1521,-1499,-1467,-1418,-1343,-1249,-1153,-1055,-961,-866,-776,-689,
+-593,-511,-454,-423,-425,-428,-434,-439,-454,-473,-485,-480,-469,-450,-431,-423,-421,-420,-416,-406,
+-387,-367,-349,-334,-314,-311,-302,-271,-257,-230,-208,-197,-174,-153,-128,-93,-54,-22,8,53,
+98,125,134,129,119,136,157,177,192,200,206,203,203,201,188,165,137,122,122,129,
+142,155,167,179,190,201,212,224,234,244,255,270,286,301,317,332,348,363,375,383,
+391,401,412,422,430,435,437,437,437,437,435,433,430,424,418,413,409,406,405,405,
+407,411,419,428,439,448,457,464,469,473,478,482,484,485,488,491,493,494,494,499,
+507,514,517,520,526,535,540,540,541,545,551,554,556,558,563,572,594,616,627,625,
+625,629,630,631,638,651,670,686,693,687,697,707,716,724,724,709,712,707,685,671,
+661,654,646,627,599,578,557,536,525,517,508,503,499,496,494,495,502,505,504,520,
+538,542,544,547,556,566,580,587,575,567,574,581,578,581,578,571,568,557,551,544,
+541,533,516,500,479,455,433,409,399,375,360,342,329,317,308,299,286,273,257,238,
+215,193,177,168,163,160,155,147,140,133,128,123,119,114,110,105,97,90,86,84,
+81,79,77,78,81,86,93,102,111,117,117,114,107,105,107,107,107,112,122,131,
+141,150,157,163,170,166,160,168,185,203,224,248,275,296,314,342,377,406,420,440,
+460,472,486,507,528,532,516,491,482,478,473,473,469,462,457,446,449,456,446,437,
+434,439,454,474,493,514,536,553,572,585,593,589,590,582,575,569,563,562,556,557,
+574,588,603,623,649,674,693,698,705,718,730,734,761,783,799,804,822,848,864,869,
+866,860,850,840,825,819,811,817,841,821,806,782,765,759,732,702,669,640,622,606,
+575,535,498,476,451,432,409,374,342,327,299,265,227,197,147,78,12,-25,-66,-108,
+-155,-204,-245,-277,-319,-353,-375,-389,-393,-396,-396,-389,-377,-369,-368,-373,-382,-381,-384,-398,
+-414,-433,-456,-480,-507,-535,-559,-581,-606,-628,-648,-669,-692,-708,-716,-724,-731,-744,-754,-763,
+-775,-787,-797,-804,-809,-814,-820,-827,-831,-837,-842,-848,-857,-857,-864,-878,-899,-925,-945,-951,
+-956,-959,-970,-985,-998,-1015,-1042,-1077,-1118,-1154,-1195,-1244,-1294,-1349,-1403,-1450,-1489,-1527,-1563,-1599,
+-1636,-1676,-1719,-1763,-1810,-1859,-1905,-1949,-1993,-2035,-2077,-2116,-2151,-2183,-2213,-2242,-2274,-2306,-2339,-2371,
+-2406,-2445,-2487,-2534,-2595,-2663,-2731,-2794,-2852,-2900,-2941,-2976,-3004,-3029,-3058,-3088,-3112,-3135,-3147,-3156,
+-3163,-3180,-3193,-3195,-3193,-3210,-3237,-3255,-3265,-3269,-3269,-3275,-3289,-3298,-3299,-3297,-3295,-3295,-3301,-3315,
+-3334,-3350,-3356,-3359,-3364,-3368,-3371,-3374,-3378,-3380,-3378,-3373,-3368,-3361,-3356,-3349,-3342,-3333,-3324,-3313,
+-3301,-3290,-3282,-3276,-3269,-3262,-3253,-3243,-3227,-3209,-3190,-3168,-3145,-3118,-3089,-3056,-3020,-2983,-2953,-2921,
+-2896,-2889,-2886,-2885,-2889,-2900,-2910,-2907,-2895,-2894,-2898,-2901,-2904,-2908,-2919,-2929,-2937,-2938,-2933,-2929,
+-2923,-2916,-2905,-2879,-2830,-2758,-2701,-2658,-2622,-2588,-2558,-2542,-2536,-2539,-2544,-2550,-2565,-2582,-2589,-2588,
+-2582,-2574,-2565,-2554,-2543,-2531,-2518,-2502,-2482,-2463,-2441,-2414,-2388,-2359,-2330,-2304,-2270,-2233,-2190,-2146,
+-2099,-2049,-1996,-1941,-1889,-1836,-1782,-1727,-1671,-1615,-1558,-1500,-1438,-1371,-1304,-1232,-1156,-1080,-1004,-928,
+-851,-781,-708,-637,-564,-491,-422,-356,-291,-226,-170,-128,-87,-44,6,46,82,104,126,158,
+187,218,259,323,421,546,685,828,950,1040,1102,1161,1227,1294,1356,1411,1462,1508,1552,1600,
+1646,1694,1744,1797,1854,1920,1995,2083,2182,2283,2373,2448,2498,2519,2533,2551,2567,2580,2586,2588,
+2585,2584,2596,2613,2629,2633,2612,2575,2530,2478,2426,2387,2379,2388,2395,2403,2418,2441,2468,2495,
+2531,2577,2636,2702,2766,2834,2902,2953,3002,3057,3118,3182,3245,3309,3373,3432,3483,3530,3574,3619,
+3665,3714,3765,3820,3883,3945,4000,4046,4085,4117,4143,4167,4195,4227,4263,4304,4348,4393,4434,4472,
+4504,4536,4566,4597,4629,4660,4690,4722,4754,4785,4814,4844,4877,4913,4955,5000,5044,5087,5130,5174,
+5216,5258,5301,5345,5384,5421,5456,5491,5521,5542,5549,5547,5530,5533,5533,5497,5447,5467,5520,5580,
+5628,5664,5688,5687,5683,5691,5693,5719,5768,5829,5860,5892,5925,5922,5899,5894,5899,5910,5923,5936,
+5942,5942,5935,5925,5924,5933,5943,5954,5966,5973,5965,5947,5921,5900,5892,5898,5911,5928,5946,5968,
+5987,6005,6020,6035,6053,6072,6093,6112,6131,6146,6164,6184,6182,6170,6170,6180,6176,6166,6169,6182,
+6188,6166,6135,6113,6099,6087,6075,6060,6048,6034,6020,6001,5979,5962,5947,5932,5915,5898,5881,5863,
+5845,5826,5807,5790,5775,5760,5742,5720,5691,5664,5656,5600,5529,5489,5473,5444,5409,5392,5372,5349,
+5320,5292,5262,5230,5205,5190,5182,5161,5134,5117,5108,5098,5084,5077,5071,5057,5040,5021,4991,4969,
+4970,4977,4960,4936,4943,4950,4928,4896,4892,4871,4852,4840,4830,4814,4803,4791,4775,4763,4756,4750,
+4741,4727,4711,4693,4667,4633,4602,4580,4557,4529,4496,4464,4432,4399,4368,4338,4308,4274,4236,4186,
+4139,4097,4061,4025,4003,3994,3997,4012,4032,4045,4056,4077,4085,4077,4051,4028,4013,3996,3980,3965,
+3948,3922,3881,3820,3732,3644,3550,3447,3353,3261,3188,3124,3093,3080,3089,3106,3136,3134,3149,3199,
+3228,3238,3228,3224,3209,3173,3130,3097,3072,3055,3039,3014,2981,2938,2908,2879,2861,2849,2826,2799,
+2760,2714,2659,2606,2556,2509,2471,2436,2415,2391,2361,2329,2309,2296,2288,2276,2260,2242,2222,2202,
+2188,2171,2142,2108,2080,2055,2031,2003,1973,1942,1922,1918,1928,1900,1872,1853,1854,1863,1874,1879,
+1873,1858,1851,1846,1849,1834,1810,1790,1770,1749,1730,1714,1696,1664,1636,1610,1584,1559,1537,1513,
+1483,1447,1413,1381,1345,1307,1270,1233,1196,1158,1123,1090,1064,1046,1033,1022,1013,1006,1001,996,
+992,987,984,983,986,992,996,992,978,957,934,907,877,846,818,791,763,735,704,671,
+637,598,557,517,481,448,420,397,379,364,355,344,330,313,299,286,266,241,219,195,
+166,133,102,77,54,33,18,10,0,-8,-17,-26,-40,-58,-78,-100,-118,-132,-142,-149,
+-157,-173,-189,-201,-213,-229,-249,-267,-283,-301,-322,-350,-381,-417,-453,-486,-517,-547,-574,-595,
+-611,-625,-637,-652,-663,-669,-666,-660,-655,-655,-655,-647,-634,-624,-623,-638,-665,-699,-737,-780,
+-820,-861,-897,-928,-957,-991,-1029,-1065,-1099,-1132,-1165,-1201,-1239,-1275,-1305,-1330,-1350,-1365,-1375,-1378,
+-1376,-1373,-1366,-1358,-1354,-1353,-1358,-1367,-1374,-1382,-1391,-1400,-1404,-1406,-1407,-1410,-1415,-1421,-1427,-1432,
+-1436,-1438,-1439,-1442,-1447,-1453,-1462,-1470,-1479,-1489,-1499,-1507,-1513,-1519,-1524,-1530,-1537,-1542,-1547,-1552,
+-1557,-1558,-1556,-1554,-1553,-1555,-1547,-1536,-1528,-1525,-1524,-1523,-1523,-1523,-1523,-1525,-1530,-1540,-1555,-1571,
+-1592,-1615,-1641,-1667,-1693,-1712,-1727,-1738,-1751,-1756,-1763,-1760,-1745,-1716,-1683,-1658,-1633,-1609,-1602,-1595,
+-1582,-1552,-1539,-1543,-1555,-1559,-1550,-1528,-1514,-1509,-1507,-1511,-1527,-1551,-1572,-1579,-1587,-1587,-1582,-1576,
+-1563,-1545,-1532,-1520,-1516,-1511,-1508,-1513,-1532,-1555,-1574,-1581,-1577,-1562,-1546,-1538,-1540,-1542,-1538,-1531,
+-1522,-1515,-1512,-1518,-1530,-1544,-1559,-1571,-1577,-1580,-1582,-1582,-1582,-1584,-1584,-1578,-1568,-1562,-1565,-1572,
+-1581,-1585,-1579,-1565,-1549,-1535,-1524,-1510,-1494,-1476,-1458,-1436,-1418,-1407,-1404,-1407,-1411,-1416,-1408,-1395,
+-1383,-1369,-1349,-1326,-1308,-1297,-1289,-1277,-1257,-1231,-1209,-1192,-1173,-1150,-1132,-1120,-1114,-1110,-1103,-1089,
+-1071,-1055,-1043,-1036,-1031,-1027,-1024,-1022,-1020,-1023,-1027,-1036,-1050,-1069,-1091,-1118,-1152,-1190,-1229,-1270,
+-1316,-1367,-1421,-1467,-1506,-1533,-1548,-1553,-1547,-1529,-1503,-1462,-1401,-1319,-1219,-1115,-1012,-920,-823,-732,
+-651,-556,-475,-420,-406,-411,-413,-411,-413,-424,-447,-464,-467,-459,-452,-448,-438,-426,-415,-407,
+-391,-367,-343,-324,-307,-285,-259,-262,-269,-249,-222,-196,-165,-131,-98,-71,-50,-26,2,35,
+74,117,156,180,185,152,134,162,205,228,242,236,239,238,237,220,178,120,91,89,
+96,110,128,150,171,189,205,219,233,246,262,278,295,312,327,340,350,363,378,392,
+402,409,417,426,437,445,451,452,453,457,462,465,464,463,462,461,459,457,454,452,
+452,454,456,460,467,475,484,491,497,501,506,510,515,519,523,527,530,533,538,541,
+544,546,551,558,567,574,576,577,579,585,591,595,596,597,597,595,592,596,606,617,
+635,651,657,656,664,670,673,671,680,693,707,734,754,758,760,754,749,741,740,747,
+747,733,717,705,687,652,626,606,589,574,559,545,541,535,528,522,520,522,525,534,
+546,564,583,598,604,606,609,608,601,599,596,595,597,599,604,600,596,593,593,598,
+593,579,564,550,526,513,497,472,448,431,417,393,370,346,331,320,297,284,272,257,
+240,222,206,190,182,178,173,164,151,137,129,128,129,126,124,122,118,113,107,97,
+88,86,86,82,74,70,73,80,85,88,87,86,89,94,97,95,99,107,114,118,
+130,145,157,162,165,164,159,155,157,166,184,204,227,257,288,309,331,353,361,372,
+403,420,410,424,459,480,474,453,426,415,423,418,407,413,421,425,443,464,480,493,
+503,517,545,571,608,645,677,715,754,780,784,756,741,767,761,742,732,722,715,717,
+712,703,713,762,805,841,869,877,875,895,896,906,902,907,931,942,924,911,897,885,
+889,887,871,867,855,834,803,802,819,813,803,796,771,742,723,703,690,677,652,621,
+601,586,563,530,497,470,442,411,379,351,332,316,297,270,242,211,181,151,124,94,
+56,8,-33,-79,-118,-168,-221,-261,-282,-298,-306,-312,-313,-307,-300,-297,-292,-285,-291,-302,
+-322,-344,-369,-393,-419,-446,-471,-494,-519,-546,-576,-600,-621,-638,-652,-662,-668,-671,-676,-687,
+-701,-716,-732,-751,-772,-783,-796,-811,-826,-837,-843,-847,-851,-862,-876,-882,-893,-912,-935,-958,
+-982,-1002,-1016,-1024,-1030,-1042,-1059,-1084,-1121,-1161,-1200,-1243,-1301,-1361,-1417,-1469,-1519,-1562,-1594,-1619,
+-1642,-1663,-1682,-1711,-1751,-1804,-1869,-1938,-1999,-2056,-2112,-2165,-2217,-2266,-2305,-2343,-2383,-2421,-2456,-2488,
+-2522,-2561,-2605,-2648,-2696,-2753,-2807,-2856,-2898,-2935,-2965,-2991,-3018,-3045,-3071,-3097,-3124,-3148,-3164,-3172,
+-3174,-3178,-3199,-3223,-3234,-3239,-3256,-3276,-3283,-3282,-3289,-3300,-3311,-3323,-3334,-3343,-3350,-3357,-3368,-3387,
+-3411,-3434,-3453,-3466,-3473,-3476,-3478,-3479,-3479,-3477,-3474,-3468,-3463,-3457,-3450,-3440,-3427,-3416,-3404,-3393,
+-3382,-3370,-3357,-3347,-3338,-3334,-3330,-3320,-3308,-3292,-3274,-3251,-3225,-3198,-3168,-3134,-3097,-3057,-3019,-2992,
+-2962,-2936,-2922,-2917,-2917,-2924,-2931,-2938,-2940,-2940,-2941,-2949,-2961,-2971,-2982,-2994,-3004,-3014,-3016,-3013,
+-3007,-2994,-2980,-2959,-2926,-2864,-2801,-2757,-2717,-2676,-2642,-2618,-2603,-2588,-2583,-2597,-2612,-2622,-2637,-2654,
+-2659,-2660,-2659,-2656,-2653,-2645,-2633,-2616,-2595,-2575,-2557,-2537,-2515,-2489,-2461,-2429,-2396,-2362,-2324,-2280,
+-2232,-2182,-2131,-2082,-2033,-1981,-1928,-1878,-1826,-1773,-1719,-1664,-1606,-1545,-1484,-1423,-1357,-1286,-1213,-1133,
+-1049,-965,-888,-811,-731,-650,-570,-495,-427,-356,-284,-211,-141,-83,-30,24,64,114,172,214,
+248,262,286,315,354,418,505,605,719,840,945,1023,1079,1139,1211,1284,1346,1401,1451,1498,
+1544,1591,1642,1697,1754,1814,1879,1949,2030,2124,2219,2307,2380,2429,2461,2492,2529,2556,2568,2570,
+2570,2574,2586,2599,2608,2608,2604,2592,2570,2545,2521,2497,2479,2479,2485,2493,2506,2524,2547,2577,
+2609,2645,2686,2734,2798,2862,2922,2987,3048,3102,3151,3202,3263,3324,3381,3435,3489,3540,3589,3635,
+3680,3728,3777,3832,3892,3952,4009,4059,4104,4142,4176,4207,4240,4276,4314,4353,4392,4433,4473,4511,
+4544,4574,4603,4631,4658,4685,4710,4737,4764,4793,4825,4857,4889,4923,4960,5004,5054,5105,5158,5209,
+5258,5307,5352,5401,5450,5499,5536,5569,5587,5604,5601,5596,5577,5553,5548,5553,5551,5546,5540,5532,
+5546,5581,5612,5655,5679,5682,5703,5710,5723,5769,5823,5850,5864,5877,5882,5881,5893,5911,5926,5934,
+5931,5924,5919,5921,5928,5939,5949,5960,5961,5951,5930,5913,5903,5904,5910,5922,5941,5966,5990,6013,
+6034,6054,6069,6084,6099,6112,6130,6148,6168,6184,6190,6187,6192,6202,6210,6219,6220,6208,6203,6202,
+6194,6184,6166,6144,6130,6116,6102,6091,6078,6062,6047,6031,6014,5994,5977,5957,5939,5923,5907,5890,
+5872,5857,5838,5815,5798,5784,5770,5755,5736,5696,5646,5618,5606,5585,5548,5515,5479,5456,5437,5421,
+5394,5363,5325,5282,5239,5202,5177,5157,5140,5127,5120,5115,5107,5106,5113,5113,5104,5089,5075,5062,
+5035,5008,4998,4995,4967,4925,4905,4905,4892,4899,4891,4870,4854,4840,4837,4832,4820,4809,4803,4796,
+4786,4773,4757,4739,4711,4678,4647,4616,4583,4551,4517,4481,4445,4410,4376,4342,4306,4265,4223,4176,
+4126,4094,4083,4083,4080,4070,4073,4084,4106,4118,4136,4146,4131,4100,4073,4054,4034,4024,4016,4017,
+4018,4004,3929,3809,3680,3554,3434,3319,3229,3169,3122,3083,3053,3027,3016,3035,3079,3110,3122,3145,
+3191,3228,3252,3262,3233,3207,3182,3148,3105,3050,3004,2969,2940,2914,2884,2859,2837,2823,2803,2788,
+2766,2728,2676,2617,2559,2514,2466,2419,2394,2391,2373,2340,2306,2265,2223,2186,2166,2146,2124,2102,
+2073,2047,2025,2002,1981,1954,1929,1905,1882,1859,1840,1827,1822,1822,1829,1846,1847,1844,1847,1858,
+1852,1849,1846,1844,1845,1844,1838,1832,1822,1811,1799,1782,1763,1744,1720,1686,1658,1631,1600,1569,
+1540,1512,1483,1453,1423,1394,1364,1329,1290,1252,1210,1168,1128,1094,1072,1058,1047,1036,1024,1015,
+1008,1003,997,989,980,973,972,972,972,972,972,966,950,927,897,865,838,811,785,760,
+734,703,667,632,595,557,520,485,454,423,400,382,364,345,329,317,305,286,262,233,
+201,167,146,130,107,80,57,40,26,14,4,-6,-16,-31,-51,-72,-94,-115,-132,-145,
+-151,-154,-162,-177,-194,-208,-220,-234,-254,-269,-284,-301,-323,-348,-372,-396,-426,-463,-500,-533,
+-562,-583,-597,-614,-633,-649,-660,-661,-657,-643,-631,-597,-550,-524,-521,-538,-571,-616,-657,-696,
+-737,-781,-823,-867,-908,-945,-981,-1021,-1060,-1099,-1137,-1178,-1221,-1260,-1297,-1329,-1356,-1377,-1393,-1404,
+-1409,-1407,-1399,-1391,-1384,-1384,-1385,-1393,-1410,-1424,-1437,-1451,-1462,-1468,-1467,-1457,-1447,-1446,-1451,-1459,
+-1469,-1478,-1482,-1482,-1481,-1484,-1490,-1499,-1511,-1522,-1532,-1538,-1545,-1551,-1557,-1560,-1565,-1570,-1576,-1580,
+-1584,-1586,-1585,-1580,-1571,-1561,-1557,-1555,-1554,-1553,-1554,-1550,-1546,-1542,-1540,-1543,-1550,-1561,-1576,-1598,
+-1625,-1649,-1672,-1692,-1707,-1716,-1726,-1728,-1731,-1735,-1741,-1737,-1732,-1730,-1721,-1707,-1707,-1689,-1685,-1672,
+-1652,-1621,-1596,-1582,-1576,-1579,-1588,-1588,-1581,-1564,-1564,-1572,-1584,-1591,-1606,-1623,-1629,-1624,-1613,-1599,
+-1595,-1597,-1602,-1610,-1617,-1618,-1613,-1606,-1608,-1615,-1621,-1624,-1623,-1625,-1631,-1632,-1629,-1626,-1618,-1607,
+-1592,-1577,-1563,-1553,-1552,-1563,-1581,-1598,-1610,-1619,-1624,-1625,-1621,-1617,-1616,-1617,-1620,-1620,-1618,-1614,
+-1611,-1611,-1612,-1613,-1609,-1598,-1584,-1567,-1549,-1529,-1508,-1485,-1461,-1441,-1429,-1426,-1427,-1433,-1434,-1429,
+-1414,-1403,-1392,-1376,-1362,-1348,-1333,-1314,-1294,-1270,-1243,-1214,-1190,-1169,-1148,-1128,-1116,-1111,-1108,-1101,
+-1091,-1080,-1071,-1066,-1062,-1060,-1056,-1055,-1057,-1060,-1068,-1077,-1086,-1093,-1102,-1119,-1144,-1176,-1211,-1251,
+-1293,-1336,-1375,-1412,-1451,-1492,-1525,-1542,-1546,-1540,-1523,-1499,-1463,-1409,-1323,-1217,-1104,-991,-892,-794,
+-709,-638,-559,-489,-437,-412,-418,-429,-430,-430,-438,-456,-466,-467,-462,-457,-451,-434,-422,-409,
+-390,-368,-350,-336,-325,-317,-306,-288,-279,-262,-240,-204,-178,-170,-151,-125,-87,-50,-6,47,
+97,126,156,189,208,208,187,160,171,194,206,197,185,172,168,175,152,99,54,37,
+40,53,73,98,127,157,183,205,223,242,260,279,295,311,324,338,352,362,370,383,
+401,419,433,444,453,461,471,482,490,498,503,506,505,500,497,497,500,504,506,505,
+502,502,504,507,508,512,519,525,530,537,545,550,554,554,554,553,555,557,559,560,
+563,568,574,581,591,602,611,615,617,618,620,627,638,645,647,644,639,638,642,646,
+648,655,665,681,702,719,713,696,694,699,712,723,735,746,754,758,765,769,779,792,
+798,799,800,775,759,749,731,687,648,627,615,604,594,582,572,558,551,545,545,557,
+572,583,596,604,604,609,619,630,634,633,624,613,602,601,602,601,599,601,607,611,
+601,587,575,562,554,546,525,514,510,487,465,441,406,376,356,339,317,297,282,272,
+262,252,236,217,202,190,181,172,164,159,159,158,151,139,130,125,125,124,122,114,
+104,97,98,100,97,88,78,70,66,64,67,72,73,75,73,74,75,76,82,90,
+95,103,117,134,145,148,152,151,152,156,164,169,175,192,216,237,256,284,304,316,
+332,346,365,378,382,391,401,410,409,415,418,402,388,371,360,358,367,373,381,409,
+460,507,552,596,630,659,693,730,764,781,791,792,803,803,783,782,777,770,761,757,
+752,773,805,825,855,870,884,913,935,932,925,937,939,940,934,928,924,932,910,907,
+903,880,868,862,850,826,828,831,820,804,789,778,771,754,740,720,695,682,669,656,
+631,611,605,605,590,551,513,485,457,427,405,388,368,351,332,318,306,281,250,231,
+212,168,142,120,89,50,-4,-83,-156,-192,-214,-228,-238,-243,-240,-231,-220,-217,-218,-228,
+-244,-267,-292,-314,-333,-357,-386,-413,-444,-470,-495,-516,-533,-550,-563,-579,-593,-601,-610,-620,
+-632,-651,-676,-702,-729,-754,-777,-798,-818,-837,-852,-860,-864,-870,-878,-892,-905,-917,-935,-963,
+-993,-1014,-1033,-1051,-1069,-1096,-1121,-1143,-1167,-1201,-1245,-1304,-1366,-1428,-1487,-1540,-1587,-1632,-1671,-1703,
+-1729,-1748,-1760,-1767,-1771,-1786,-1822,-1886,-1969,-2052,-2133,-2206,-2266,-2322,-2375,-2423,-2463,-2501,-2534,-2570,
+-2606,-2647,-2687,-2714,-2750,-2791,-2832,-2872,-2909,-2941,-2973,-2995,-3022,-3049,-3077,-3097,-3119,-3141,-3159,-3170,
+-3181,-3186,-3192,-3215,-3237,-3251,-3272,-3294,-3315,-3325,-3334,-3352,-3364,-3373,-3381,-3390,-3404,-3416,-3431,-3451,
+-3472,-3492,-3511,-3527,-3540,-3547,-3550,-3550,-3550,-3551,-3550,-3547,-3542,-3537,-3528,-3517,-3503,-3487,-3474,-3459,
+-3445,-3433,-3421,-3411,-3404,-3399,-3391,-3382,-3369,-3354,-3336,-3316,-3294,-3269,-3239,-3208,-3171,-3135,-3098,-3057,
+-3018,-2990,-2969,-2955,-2946,-2942,-2940,-2941,-2949,-2961,-2972,-2979,-2988,-3004,-3024,-3047,-3067,-3082,-3090,-3092,
+-3091,-3079,-3060,-3038,-3011,-2968,-2909,-2853,-2807,-2769,-2742,-2716,-2693,-2676,-2662,-2651,-2651,-2649,-2656,-2671,
+-2696,-2711,-2716,-2719,-2723,-2724,-2722,-2711,-2696,-2681,-2667,-2651,-2630,-2606,-2580,-2552,-2522,-2488,-2447,-2402,
+-2355,-2306,-2256,-2208,-2162,-2113,-2063,-2012,-1965,-1918,-1867,-1812,-1754,-1697,-1639,-1580,-1521,-1460,-1396,-1327,
+-1255,-1175,-1096,-1014,-927,-840,-751,-669,-588,-511,-428,-349,-271,-193,-115,-38,42,120,188,254,
+290,314,336,358,379,407,455,516,577,653,730,812,894,977,1050,1120,1193,1258,1320,1383,
+1438,1488,1540,1595,1652,1710,1769,1828,1893,1962,2043,2141,2240,2316,2362,2398,2452,2516,2548,2550,
+2543,2549,2562,2577,2592,2599,2593,2580,2570,2553,2538,2534,2546,2558,2572,2585,2600,2620,2642,2664,
+2686,2714,2747,2784,2822,2864,2920,2983,3056,3135,3203,3263,3319,3372,3422,3471,3520,3572,3625,3680,
+3735,3788,3837,3883,3928,3975,4024,4074,4123,4170,4215,4261,4308,4354,4393,4428,4463,4497,4528,4558,
+4586,4611,4634,4657,4679,4702,4725,4749,4774,4801,4833,4870,4907,4940,4975,5012,5058,5110,5166,5225,
+5287,5352,5419,5485,5546,5602,5640,5661,5664,5649,5620,5597,5599,5605,5589,5561,5542,5540,5554,5582,
+5612,5636,5669,5706,5738,5765,5787,5807,5828,5848,5870,5884,5899,5908,5913,5911,5910,5905,5899,5900,
+5912,5928,5946,5961,5969,5970,5968,5958,5945,5934,5926,5921,5921,5927,5936,5948,5969,5997,6022,6049,
+6078,6102,6117,6127,6137,6147,6159,6179,6200,6218,6228,6229,6229,6233,6241,6256,6261,6247,6234,6232,
+6234,6223,6208,6191,6170,6153,6140,6127,6112,6092,6073,6061,6050,6035,6008,5983,5963,5943,5930,5920,
+5908,5893,5873,5853,5835,5812,5784,5748,5713,5682,5660,5644,5632,5605,5586,5581,5547,5513,5487,5468,
+5448,5423,5389,5348,5303,5257,5217,5184,5156,5135,5118,5107,5102,5103,5102,5104,5098,5088,5089,5093,
+5091,5071,5023,4969,4940,4945,4950,4922,4902,4899,4892,4878,4875,4873,4877,4875,4869,4854,4835,4820,
+4812,4794,4777,4758,4731,4699,4662,4622,4584,4552,4517,4478,4433,4392,4355,4318,4279,4240,4207,4175,
+4141,4118,4117,4131,4154,4181,4185,4186,4191,4181,4173,4170,4152,4114,4075,4057,4053,4031,4013,4000,
+3993,3959,3866,3754,3635,3516,3403,3311,3236,3172,3124,3079,3045,3027,3027,3039,3032,3046,3057,3064,
+3099,3148,3175,3163,3158,3154,3149,3115,3092,3062,3029,2995,2956,2916,2877,2853,2830,2803,2766,2731,
+2698,2673,2646,2606,2559,2513,2468,2434,2404,2374,2343,2322,2299,2255,2202,2156,2121,2099,2081,2052,
+2019,1989,1967,1942,1920,1902,1883,1866,1849,1835,1824,1818,1819,1822,1819,1817,1821,1821,1815,1828,
+1861,1859,1853,1858,1878,1884,1872,1843,1842,1844,1817,1793,1785,1770,1749,1726,1701,1674,1647,1617,
+1580,1541,1510,1486,1461,1440,1427,1416,1399,1375,1340,1291,1245,1205,1166,1135,1113,1098,1088,1077,
+1067,1057,1044,1027,1009,991,974,962,949,935,920,905,888,872,860,851,844,834,821,804,
+784,764,740,716,694,670,635,597,563,532,501,470,444,420,399,376,350,322,293,270,
+250,229,208,184,160,136,108,80,57,39,26,16,5,-7,-21,-38,-60,-82,-101,-118,
+-136,-150,-159,-169,-183,-194,-205,-219,-233,-249,-267,-284,-300,-324,-350,-373,-389,-402,-432,-469,
+-496,-517,-533,-546,-561,-580,-597,-607,-612,-607,-590,-576,-559,-525,-488,-490,-518,-533,-555,-583,
+-614,-647,-684,-734,-800,-864,-911,-953,-997,-1038,-1078,-1125,-1180,-1231,-1273,-1310,-1342,-1371,-1395,-1414,
+-1425,-1431,-1431,-1423,-1414,-1404,-1399,-1413,-1445,-1455,-1464,-1474,-1483,-1488,-1488,-1483,-1476,-1470,-1470,-1473,
+-1475,-1482,-1487,-1491,-1494,-1497,-1504,-1517,-1532,-1544,-1553,-1562,-1568,-1575,-1582,-1587,-1590,-1596,-1602,-1606,
+-1610,-1611,-1609,-1603,-1601,-1596,-1589,-1592,-1600,-1610,-1612,-1607,-1598,-1584,-1568,-1560,-1564,-1578,-1593,-1613,
+-1640,-1664,-1686,-1700,-1697,-1696,-1705,-1708,-1704,-1707,-1717,-1732,-1738,-1742,-1751,-1757,-1767,-1780,-1781,-1749,
+-1728,-1714,-1699,-1676,-1657,-1633,-1629,-1621,-1636,-1652,-1664,-1664,-1669,-1679,-1681,-1686,-1689,-1698,-1692,-1676,
+-1658,-1646,-1642,-1645,-1654,-1669,-1682,-1686,-1686,-1697,-1706,-1712,-1711,-1711,-1712,-1716,-1718,-1713,-1704,-1690,
+-1676,-1664,-1653,-1640,-1627,-1620,-1624,-1635,-1647,-1657,-1664,-1671,-1675,-1674,-1670,-1662,-1652,-1647,-1646,-1646,
+-1645,-1641,-1637,-1637,-1636,-1631,-1621,-1608,-1593,-1575,-1557,-1543,-1534,-1525,-1512,-1495,-1478,-1464,-1452,-1444,
+-1435,-1420,-1407,-1398,-1389,-1375,-1359,-1337,-1311,-1287,-1267,-1249,-1230,-1209,-1188,-1168,-1149,-1133,-1122,-1113,
+-1104,-1096,-1094,-1094,-1094,-1094,-1092,-1090,-1088,-1088,-1090,-1094,-1095,-1093,-1098,-1109,-1123,-1140,-1161,-1187,
+-1221,-1264,-1315,-1367,-1411,-1448,-1475,-1498,-1515,-1520,-1512,-1498,-1473,-1430,-1362,-1266,-1159,-1051,-940,-836,
+-740,-670,-589,-521,-470,-441,-442,-451,-457,-460,-466,-470,-476,-480,-479,-467,-446,-426,-414,-404,
+-398,-387,-372,-355,-342,-328,-318,-308,-293,-284,-261,-248,-247,-234,-210,-185,-162,-129,-90,-38,
+32,106,173,212,230,252,246,211,172,161,169,177,170,155,148,150,159,163,153,128,
+105,100,104,111,115,123,137,153,171,192,214,236,258,280,298,312,326,341,357,372,
+390,416,444,467,481,491,502,515,526,535,541,540,535,530,531,536,540,545,548,547,
+544,542,541,542,543,546,547,547,549,553,558,559,557,555,554,554,557,563,572,580,
+588,594,598,603,609,614,621,635,652,668,677,678,680,683,683,681,681,678,675,672,
+671,683,695,696,700,714,731,739,749,767,763,763,758,753,749,760,771,784,790,805,
+826,833,826,815,805,784,773,748,719,694,673,655,645,627,602,592,579,571,566,579,
+589,599,611,627,636,632,622,620,626,626,621,615,605,600,605,613,615,618,627,627,
+621,612,602,606,595,568,538,529,528,513,491,462,441,432,412,385,368,344,323,311,
+300,288,276,265,246,229,214,202,191,182,183,179,167,155,144,138,132,130,127,124,
+120,114,109,107,111,109,102,93,84,75,70,68,66,63,64,75,81,80,79,80,
+76,72,72,75,78,84,97,111,124,136,149,164,177,189,205,228,254,286,306,311,
+323,365,395,397,416,433,433,434,443,453,455,456,475,472,455,433,416,416,424,449,
+478,517,563,599,627,648,686,727,771,804,826,840,850,841,812,798,807,803,797,792,
+783,796,824,833,838,858,867,885,900,914,921,928,950,966,965,967,951,941,938,909,
+910,899,888,877,860,835,825,828,823,822,812,797,780,757,737,723,711,706,688,662,
+642,640,642,637,623,596,572,549,517,490,465,453,444,433,415,389,363,332,309,289,
+283,271,230,192,165,122,89,41,-25,-83,-120,-149,-170,-185,-191,-187,-185,-182,-177,-178,
+-191,-210,-235,-261,-279,-302,-329,-355,-378,-400,-425,-453,-474,-487,-499,-515,-531,-544,-552,-563,
+-579,-595,-616,-642,-669,-699,-731,-764,-793,-818,-841,-862,-880,-894,-903,-912,-925,-937,-953,-972,
+-999,-1032,-1063,-1089,-1114,-1141,-1172,-1205,-1241,-1279,-1323,-1371,-1419,-1469,-1516,-1558,-1597,-1636,-1673,-1713,
+-1754,-1790,-1821,-1846,-1868,-1883,-1891,-1911,-1950,-2008,-2084,-2159,-2228,-2293,-2353,-2403,-2450,-2491,-2527,-2559,
+-2596,-2631,-2667,-2696,-2720,-2748,-2780,-2811,-2848,-2887,-2922,-2960,-2998,-3028,-3058,-3088,-3109,-3126,-3140,-3156,
+-3178,-3194,-3205,-3213,-3223,-3242,-3268,-3294,-3325,-3354,-3373,-3387,-3401,-3414,-3423,-3428,-3444,-3461,-3478,-3501,
+-3520,-3539,-3555,-3570,-3583,-3591,-3595,-3596,-3596,-3596,-3595,-3592,-3587,-3579,-3570,-3561,-3553,-3545,-3534,-3520,
+-3505,-3493,-3481,-3471,-3464,-3460,-3454,-3444,-3429,-3407,-3389,-3371,-3349,-3328,-3305,-3274,-3237,-3200,-3165,-3131,
+-3097,-3069,-3041,-3015,-2995,-2983,-2969,-2962,-2966,-2977,-2987,-2993,-2999,-3011,-3024,-3036,-3058,-3091,-3122,-3138,
+-3142,-3140,-3132,-3112,-3082,-3037,-2984,-2934,-2895,-2863,-2838,-2815,-2787,-2758,-2739,-2723,-2710,-2701,-2701,-2704,
+-2708,-2718,-2732,-2746,-2760,-2766,-2768,-2767,-2763,-2756,-2746,-2735,-2720,-2700,-2677,-2650,-2618,-2585,-2549,-2510,
+-2467,-2420,-2368,-2320,-2280,-2243,-2200,-2155,-2107,-2057,-2005,-1953,-1903,-1850,-1794,-1738,-1682,-1626,-1571,-1513,
+-1448,-1384,-1315,-1241,-1161,-1077,-990,-901,-809,-718,-626,-532,-447,-361,-277,-188,-104,-22,59,138,
+215,277,333,397,433,456,487,528,551,584,637,694,743,788,843,904,975,1059,1145,1215,
+1284,1357,1426,1489,1550,1611,1671,1728,1785,1840,1897,1961,2035,2114,2193,2256,2313,2391,2472,2505,
+2508,2513,2520,2529,2533,2535,2539,2532,2514,2506,2501,2496,2499,2524,2568,2617,2656,2686,2714,2742,
+2762,2788,2822,2852,2878,2911,2956,3005,3065,3134,3216,3297,3363,3420,3477,3529,3576,3623,3673,3725,
+3776,3830,3887,3941,3992,4042,4091,4140,4192,4243,4294,4341,4384,4427,4468,4505,4536,4566,4594,4619,
+4638,4654,4670,4687,4708,4731,4756,4779,4793,4800,4809,4830,4863,4901,4944,4991,5044,5101,5163,5224,
+5284,5342,5398,5456,5521,5587,5639,5660,5676,5683,5662,5635,5618,5600,5575,5560,5543,5533,5550,5577,
+5617,5669,5699,5712,5726,5749,5775,5800,5823,5844,5860,5873,5880,5888,5894,5900,5904,5906,5911,5918,
+5926,5935,5951,5971,5995,6011,6019,6009,5983,5961,5953,5951,5957,5965,5976,5993,6018,6047,6082,6113,
+6139,6158,6172,6180,6184,6191,6204,6222,6242,6261,6279,6288,6290,6289,6291,6300,6310,6298,6277,6266,
+6261,6257,6249,6238,6222,6200,6184,6170,6157,6138,6115,6099,6085,6070,6038,6007,5985,5964,5945,5931,
+5923,5914,5897,5873,5841,5811,5783,5756,5734,5722,5699,5683,5686,5643,5603,5591,5574,5555,5528,5498,
+5475,5454,5426,5389,5346,5303,5264,5230,5201,5174,5149,5134,5129,5134,5136,5119,5109,5101,5098,5101,
+5101,5089,5058,5020,4993,4975,4956,4960,4955,4919,4892,4898,4886,4883,4883,4882,4882,4879,4866,4846,
+4825,4804,4785,4761,4733,4705,4672,4628,4583,4544,4501,4452,4409,4369,4335,4293,4252,4211,4186,4173,
+4158,4151,4154,4159,4171,4190,4207,4211,4207,4197,4174,4147,4117,4087,4059,4042,4029,4017,4016,4000,
+3954,3872,3775,3682,3586,3492,3400,3318,3232,3167,3120,3081,3037,3007,3002,3008,3027,3040,3053,3072,
+3105,3138,3144,3132,3111,3095,3092,3090,3094,3081,3052,3021,2990,2954,2916,2877,2843,2809,2770,2726,
+2680,2635,2591,2551,2514,2480,2437,2401,2366,2340,2309,2276,2242,2212,2187,2151,2120,2085,2048,2014,
+1987,1958,1935,1914,1894,1874,1855,1841,1832,1826,1827,1833,1839,1845,1836,1823,1814,1804,1788,1777,
+1771,1772,1775,1788,1807,1832,1853,1851,1832,1825,1824,1817,1816,1812,1783,1748,1717,1690,1659,1627,
+1592,1558,1530,1506,1487,1468,1447,1432,1422,1414,1402,1381,1351,1314,1276,1239,1204,1177,1157,1145,
+1138,1131,1120,1109,1095,1076,1052,1025,996,964,931,898,870,847,828,814,805,798,794,792,
+790,786,778,767,753,736,717,689,657,619,577,533,495,462,431,404,384,366,342,310,
+280,257,239,219,199,173,143,116,95,75,53,35,20,9,-1,-14,-30,-49,-71,-92,
+-111,-130,-148,-163,-175,-187,-197,-205,-221,-244,-267,-284,-302,-319,-343,-367,-381,-396,-426,-457,
+-485,-507,-521,-525,-527,-529,-535,-541,-542,-541,-535,-530,-528,-517,-490,-474,-476,-449,-430,-447,
+-514,-587,-640,-689,-741,-800,-859,-907,-956,-1006,-1050,-1090,-1127,-1168,-1216,-1267,-1311,-1347,-1378,-1404,
+-1426,-1439,-1447,-1456,-1455,-1449,-1436,-1452,-1473,-1482,-1492,-1496,-1494,-1492,-1493,-1496,-1498,-1499,-1498,-1497,
+-1497,-1498,-1502,-1507,-1514,-1524,-1540,-1556,-1569,-1579,-1587,-1592,-1597,-1603,-1611,-1617,-1623,-1627,-1630,-1632,
+-1636,-1639,-1637,-1632,-1629,-1631,-1634,-1640,-1648,-1654,-1661,-1670,-1671,-1659,-1638,-1617,-1603,-1602,-1615,-1634,
+-1658,-1685,-1708,-1721,-1717,-1706,-1705,-1709,-1718,-1737,-1753,-1761,-1772,-1786,-1807,-1831,-1851,-1858,-1850,-1825,
+-1799,-1785,-1769,-1742,-1736,-1720,-1707,-1699,-1695,-1702,-1721,-1752,-1770,-1765,-1762,-1771,-1778,-1777,-1778,-1770,
+-1753,-1735,-1720,-1710,-1707,-1713,-1725,-1748,-1769,-1779,-1784,-1788,-1797,-1798,-1800,-1800,-1797,-1790,-1776,-1761,
+-1746,-1732,-1723,-1716,-1708,-1698,-1693,-1692,-1697,-1704,-1713,-1720,-1723,-1725,-1725,-1725,-1722,-1714,-1703,-1695,
+-1689,-1684,-1679,-1675,-1669,-1663,-1659,-1652,-1643,-1631,-1618,-1603,-1594,-1590,-1581,-1564,-1538,-1508,-1482,-1460,
+-1446,-1436,-1419,-1406,-1401,-1387,-1365,-1346,-1328,-1310,-1287,-1264,-1245,-1233,-1223,-1209,-1193,-1179,-1166,-1152,
+-1144,-1142,-1143,-1142,-1138,-1134,-1128,-1124,-1124,-1122,-1118,-1115,-1111,-1104,-1102,-1111,-1125,-1141,-1161,-1184,
+-1207,-1230,-1256,-1291,-1333,-1377,-1422,-1461,-1485,-1489,-1480,-1463,-1432,-1387,-1338,-1273,-1183,-1081,-980,-873,
+-769,-678,-597,-530,-460,-434,-424,-428,-432,-438,-444,-451,-460,-466,-473,-466,-454,-435,-423,-417,
+-417,-414,-402,-385,-366,-349,-334,-325,-316,-301,-286,-267,-251,-241,-229,-206,-185,-162,-136,-105,
+-62,-4,65,133,190,251,285,314,309,294,260,229,204,193,195,217,254,295,327,339,
+328,306,286,279,274,262,238,209,190,184,183,188,199,217,239,260,281,301,319,340,
+364,392,424,451,469,486,504,522,539,550,560,564,565,565,565,563,563,563,565,566,
+563,562,562,565,566,567,569,572,577,581,585,589,590,589,590,593,596,600,605,612,
+620,627,635,642,646,649,650,654,662,671,682,695,705,713,717,713,712,713,710,702,
+691,689,692,699,701,714,737,759,777,782,792,803,800,791,791,790,796,810,830,848,
+852,839,831,837,837,819,807,807,802,776,756,740,716,686,663,650,636,625,624,617,
+620,624,616,616,617,620,614,615,618,618,615,616,612,609,602,595,590,589,593,612,
+628,626,621,627,633,618,592,575,551,531,503,472,448,434,421,404,373,362,357,345,
+329,321,307,289,268,268,262,249,232,215,200,187,176,166,158,154,154,151,139,131,
+128,128,130,130,129,133,139,137,128,119,113,107,102,98,96,95,97,100,99,97,
+100,100,99,99,97,96,99,104,109,119,133,149,168,193,222,254,284,307,315,323,
+365,403,412,411,432,449,454,460,473,486,502,496,498,511,521,518,506,503,510,512,
+527,546,568,595,620,671,719,754,782,818,824,840,853,850,836,822,813,836,852,870,
+874,870,864,866,879,882,903,898,901,909,918,921,938,952,970,990,989,980,989,956,
+923,905,886,869,851,833,821,821,817,805,787,776,762,742,719,706,705,693,679,661,
+644,636,633,621,620,612,601,590,571,557,544,525,511,508,496,482,459,420,380,343,
+315,291,268,246,238,263,252,201,144,80,18,-35,-67,-93,-111,-125,-135,-143,-150,-157,
+-164,-178,-205,-233,-260,-284,-306,-327,-343,-355,-371,-396,-421,-440,-453,-465,-480,-495,-514,-531,
+-547,-563,-581,-603,-628,-657,-686,-722,-759,-790,-816,-842,-869,-896,-922,-941,-957,-974,-991,-1008,
+-1029,-1056,-1088,-1119,-1151,-1187,-1227,-1271,-1316,-1356,-1396,-1435,-1471,-1505,-1538,-1570,-1606,-1643,-1681,-1718,
+-1756,-1786,-1814,-1832,-1846,-1858,-1873,-1898,-1927,-1956,-1996,-2061,-2120,-2175,-2229,-2276,-2317,-2357,-2398,-2435,
+-2471,-2508,-2546,-2582,-2605,-2633,-2663,-2697,-2736,-2778,-2826,-2867,-2905,-2954,-3001,-3044,-3082,-3110,-3135,-3158,
+-3182,-3188,-3198,-3211,-3225,-3242,-3265,-3290,-3314,-3342,-3362,-3378,-3399,-3418,-3434,-3445,-3460,-3481,-3497,-3517,
+-3539,-3555,-3571,-3587,-3600,-3609,-3617,-3622,-3622,-3621,-3617,-3611,-3605,-3600,-3598,-3599,-3599,-3595,-3584,-3568,
+-3551,-3541,-3538,-3536,-3531,-3527,-3520,-3510,-3494,-3474,-3447,-3421,-3400,-3383,-3367,-3341,-3311,-3283,-3251,-3212,
+-3172,-3137,-3110,-3086,-3070,-3050,-3030,-3015,-3004,-3002,-3009,-3021,-3021,-3027,-3033,-3037,-3043,-3058,-3084,-3116,
+-3147,-3167,-3170,-3165,-3150,-3123,-3078,-3041,-3005,-2970,-2943,-2920,-2899,-2874,-2850,-2831,-2812,-2795,-2781,-2772,
+-2766,-2763,-2760,-2761,-2769,-2781,-2795,-2807,-2812,-2814,-2810,-2803,-2792,-2778,-2761,-2739,-2715,-2685,-2653,-2618,
+-2582,-2545,-2504,-2462,-2419,-2376,-2332,-2287,-2243,-2199,-2155,-2110,-2063,-2015,-1963,-1906,-1850,-1797,-1742,-1684,
+-1625,-1563,-1497,-1431,-1360,-1285,-1203,-1121,-1038,-952,-864,-771,-679,-587,-499,-404,-315,-225,-135,-41,
+54,157,267,364,446,509,531,565,628,654,678,721,757,761,760,764,780,817,888,971,
+1059,1154,1252,1345,1431,1507,1579,1642,1697,1750,1804,1854,1903,1956,2012,2066,2126,2197,2290,2381,
+2428,2437,2438,2447,2461,2472,2486,2500,2506,2501,2490,2474,2461,2465,2494,2550,2631,2703,2762,2812,
+2849,2873,2901,2934,2967,3006,3040,3075,3120,3177,3243,3313,3390,3459,3515,3573,3628,3676,3728,3783,
+3838,3891,3942,3993,4045,4097,4148,4196,4244,4292,4344,4395,4443,4486,4526,4563,4598,4628,4655,4676,
+4693,4708,4719,4729,4740,4753,4770,4788,4801,4806,4809,4816,4836,4869,4911,4961,5015,5079,5144,5209,
+5278,5345,5406,5459,5514,5569,5626,5663,5680,5677,5666,5648,5627,5605,5582,5567,5539,5525,5542,5586,
+5641,5678,5693,5708,5722,5737,5752,5767,5785,5807,5828,5846,5857,5867,5880,5891,5902,5911,5921,5932,
+5944,5958,5974,5990,6002,6014,6018,6010,5991,5977,5968,5968,5977,5996,6019,6046,6079,6116,6149,6178,
+6200,6217,6229,6238,6240,6242,6253,6271,6288,6304,6319,6332,6339,6339,6336,6342,6351,6353,6334,6311,
+6298,6291,6283,6272,6257,6240,6224,6212,6201,6189,6170,6149,6132,6113,6086,6046,6010,5983,5961,5942,
+5926,5914,5899,5882,5859,5832,5805,5778,5756,5738,5717,5696,5676,5661,5633,5608,5593,5584,5573,5560,
+5526,5491,5462,5430,5393,5352,5313,5276,5244,5218,5197,5175,5157,5151,5152,5154,5139,5125,5126,5120,
+5107,5090,5058,5032,5035,5044,5033,5008,4971,4939,4921,4898,4896,4889,4868,4857,4861,4866,4866,4859,
+4843,4821,4789,4749,4706,4662,4620,4586,4555,4527,4496,4457,4416,4372,4338,4313,4287,4253,4222,4203,
+4190,4183,4185,4186,4189,4200,4218,4238,4243,4227,4197,4160,4122,4085,4055,4031,4005,3980,3942,3893,
+3838,3778,3711,3642,3569,3485,3406,3325,3251,3194,3140,3091,3047,3008,2995,3013,3059,3091,3088,3092,
+3117,3141,3159,3157,3144,3117,3098,3099,3073,3060,3050,3025,2991,2958,2928,2891,2854,2813,2772,2735,
+2690,2641,2591,2540,2495,2456,2413,2373,2336,2312,2290,2258,2227,2195,2161,2128,2089,2059,2024,1993,
+1970,1942,1910,1887,1866,1846,1821,1807,1803,1805,1806,1806,1808,1814,1818,1814,1810,1800,1782,1759,
+1741,1726,1724,1735,1748,1761,1780,1773,1769,1775,1792,1819,1832,1842,1847,1841,1816,1775,1718,1677,
+1646,1605,1567,1537,1512,1490,1467,1448,1434,1424,1415,1402,1388,1371,1348,1316,1281,1249,1225,1204,
+1189,1179,1172,1166,1161,1151,1132,1110,1086,1050,1009,966,923,883,848,815,787,766,752,745,
+741,741,745,752,754,750,747,735,712,679,641,594,546,509,472,432,395,364,341,318,
+296,273,255,235,214,195,176,165,150,126,98,68,44,20,0,-13,-16,-26,-42,-62,
+-82,-104,-128,-148,-168,-186,-200,-210,-219,-230,-247,-270,-294,-318,-336,-356,-379,-415,-452,-483,
+-515,-542,-560,-566,-565,-561,-556,-551,-543,-528,-501,-469,-458,-448,-455,-471,-470,-465,-473,-508,
+-542,-568,-603,-657,-717,-775,-835,-898,-959,-1016,-1072,-1112,-1135,-1162,-1198,-1230,-1261,-1301,-1350,-1392,
+-1420,-1438,-1446,-1468,-1477,-1481,-1477,-1487,-1507,-1518,-1524,-1528,-1530,-1527,-1522,-1521,-1522,-1524,-1529,-1533,
+-1532,-1529,-1527,-1530,-1535,-1545,-1564,-1590,-1610,-1620,-1622,-1622,-1622,-1623,-1627,-1635,-1643,-1648,-1648,-1649,
+-1654,-1661,-1668,-1669,-1666,-1664,-1666,-1672,-1683,-1698,-1712,-1724,-1731,-1731,-1717,-1692,-1670,-1660,-1662,-1675,
+-1694,-1715,-1738,-1755,-1754,-1734,-1727,-1740,-1758,-1790,-1820,-1837,-1850,-1879,-1902,-1910,-1909,-1885,-1868,-1869,
+-1865,-1863,-1858,-1848,-1838,-1825,-1804,-1796,-1802,-1807,-1814,-1816,-1831,-1855,-1871,-1879,-1878,-1879,-1875,-1866,
+-1848,-1829,-1824,-1824,-1826,-1816,-1810,-1811,-1825,-1846,-1870,-1891,-1906,-1914,-1918,-1919,-1914,-1901,-1883,-1858,
+-1832,-1809,-1792,-1780,-1773,-1768,-1761,-1759,-1762,-1764,-1769,-1776,-1782,-1784,-1780,-1774,-1774,-1780,-1782,-1775,
+-1764,-1752,-1741,-1733,-1725,-1716,-1705,-1694,-1685,-1678,-1669,-1655,-1641,-1631,-1622,-1607,-1586,-1560,-1534,-1510,
+-1488,-1471,-1451,-1427,-1412,-1399,-1379,-1365,-1349,-1333,-1316,-1300,-1283,-1267,-1257,-1253,-1249,-1245,-1240,-1233,
+-1223,-1212,-1205,-1199,-1194,-1187,-1178,-1171,-1164,-1158,-1153,-1149,-1147,-1143,-1139,-1138,-1141,-1148,-1161,-1178,
+-1199,-1224,-1251,-1279,-1310,-1341,-1368,-1391,-1412,-1431,-1446,-1448,-1429,-1389,-1341,-1283,-1204,-1113,-1014,-919,
+-815,-728,-648,-587,-519,-466,-422,-408,-409,-417,-427,-443,-463,-472,-474,-467,-451,-440,-432,-429,
+-424,-426,-414,-393,-374,-356,-331,-306,-288,-262,-248,-232,-217,-220,-220,-211,-195,-174,-149,-118,
+-90,-69,-38,7,76,154,223,276,327,343,354,356,344,301,276,256,259,279,309,340,
+365,380,383,391,428,474,498,486,446,395,343,300,267,251,248,254,266,276,283,290,
+305,328,360,397,433,463,485,501,518,538,553,563,570,578,582,574,566,569,578,583,
+581,579,580,583,587,587,584,587,593,598,597,598,600,602,605,611,621,631,637,639,
+639,647,659,674,689,700,701,695,693,697,704,709,709,716,726,733,739,750,759,761,
+750,737,740,744,744,757,773,773,767,779,795,796,803,814,823,832,849,861,855,853,
+859,857,847,841,832,828,827,823,817,806,795,792,789,768,747,722,698,694,690,673,
+664,655,642,637,641,636,616,610,603,595,597,603,609,608,599,584,569,577,597,615,
+624,617,608,617,617,608,591,581,562,538,511,491,477,457,432,407,392,377,370,365,
+363,356,347,330,310,291,286,280,270,256,239,223,212,204,198,192,185,175,166,161,
+161,166,172,177,176,174,176,181,186,186,180,173,167,162,156,151,155,160,161,161,
+163,166,169,170,174,176,181,184,185,189,193,200,209,225,246,272,300,332,355,367,
+362,375,411,438,455,457,455,451,457,480,509,538,532,517,513,516,523,528,523,540,
+565,567,586,612,635,671,717,741,778,790,808,824,829,847,868,886,883,876,847,861,
+895,908,918,915,901,917,919,926,946,927,946,942,958,972,963,965,963,946,934,925,
+915,905,903,884,853,839,820,791,772,761,745,723,711,707,696,684,671,661,655,651,
+642,638,645,644,649,646,647,649,651,646,640,631,614,593,573,554,528,488,449,406,
+365,326,301,288,294,309,333,352,316,247,173,115,59,11,-18,-44,-67,-89,-108,-128,
+-147,-171,-195,-213,-230,-243,-251,-270,-299,-330,-363,-381,-386,-397,-413,-434,-453,-474,-493,-506,
+-524,-540,-560,-582,-603,-631,-664,-699,-733,-766,-794,-814,-844,-886,-924,-960,-989,-1012,-1030,-1047,
+-1066,-1089,-1118,-1153,-1190,-1227,-1271,-1319,-1368,-1414,-1456,-1492,-1523,-1547,-1571,-1598,-1624,-1652,-1681,-1710,
+-1735,-1755,-1775,-1799,-1828,-1860,-1881,-1895,-1912,-1928,-1944,-1969,-2017,-2061,-2109,-2165,-2212,-2254,-2297,-2337,
+-2374,-2405,-2436,-2463,-2492,-2539,-2582,-2616,-2643,-2679,-2722,-2764,-2802,-2845,-2890,-2936,-2993,-3050,-3095,-3125,
+-3152,-3181,-3195,-3201,-3212,-3228,-3250,-3277,-3303,-3323,-3342,-3348,-3369,-3401,-3424,-3445,-3462,-3482,-3503,-3525,
+-3547,-3564,-3579,-3593,-3603,-3613,-3623,-3631,-3640,-3645,-3640,-3635,-3631,-3630,-3632,-3635,-3637,-3638,-3633,-3620,
+-3607,-3600,-3595,-3592,-3588,-3584,-3577,-3568,-3554,-3535,-3513,-3490,-3464,-3434,-3403,-3384,-3363,-3343,-3325,-3301,
+-3268,-3234,-3206,-3187,-3165,-3142,-3120,-3105,-3083,-3067,-3056,-3057,-3059,-3056,-3057,-3057,-3060,-3078,-3092,-3109,
+-3132,-3158,-3179,-3189,-3184,-3169,-3146,-3117,-3096,-3077,-3062,-3037,-3013,-2992,-2967,-2940,-2913,-2892,-2872,-2853,
+-2842,-2832,-2826,-2825,-2824,-2827,-2839,-2852,-2858,-2860,-2859,-2855,-2848,-2837,-2824,-2807,-2787,-2766,-2743,-2716,
+-2685,-2651,-2615,-2578,-2539,-2498,-2454,-2410,-2367,-2323,-2282,-2243,-2203,-2163,-2119,-2070,-2019,-1967,-1915,-1856,
+-1794,-1731,-1667,-1604,-1535,-1461,-1389,-1317,-1241,-1161,-1080,-995,-908,-821,-737,-650,-558,-465,-377,-284,
+-193,-98,-1,115,236,349,459,544,633,724,755,771,769,753,752,756,760,773,808,856,
+909,965,1036,1122,1229,1340,1443,1528,1611,1688,1754,1808,1848,1882,1916,1950,1984,2024,2074,2157,
+2261,2330,2356,2365,2377,2400,2438,2490,2540,2572,2581,2571,2549,2528,2522,2547,2610,2697,2771,2840,
+2888,2941,2977,3012,3038,3064,3085,3113,3159,3203,3248,3296,3358,3416,3465,3515,3580,3650,3720,3786,
+3849,3910,3971,4031,4085,4130,4173,4219,4263,4306,4350,4398,4448,4496,4540,4580,4617,4652,4684,4710,
+4729,4744,4755,4764,4770,4777,4787,4800,4811,4818,4822,4829,4842,4867,4903,4947,5000,5062,5134,5203,
+5270,5341,5412,5479,5538,5589,5628,5662,5683,5692,5696,5696,5679,5669,5659,5649,5650,5652,5634,5642,
+5659,5676,5693,5712,5728,5737,5739,5742,5749,5761,5786,5815,5834,5849,5864,5881,5898,5914,5932,5949,
+5964,5978,5993,6007,6018,6020,6014,6005,5995,5985,5981,5985,5995,6015,6045,6086,6131,6173,6209,6236,
+6256,6271,6283,6293,6302,6309,6316,6325,6334,6342,6350,6357,6362,6363,6361,6360,6369,6385,6386,6366,
+6347,6332,6324,6317,6307,6295,6286,6279,6273,6272,6270,6258,6235,6207,6181,6149,6113,6067,6017,5978,
+5954,5935,5919,5898,5878,5851,5821,5800,5782,5765,5749,5732,5716,5702,5690,5672,5657,5633,5612,5600,
+5578,5539,5507,5478,5451,5416,5375,5333,5294,5259,5231,5210,5195,5189,5188,5173,5147,5131,5125,5118,
+5118,5107,5080,5062,5066,5066,5065,5057,5030,4992,4947,4908,4896,4903,4875,4859,4853,4856,4860,4856,
+4848,4833,4809,4768,4716,4663,4606,4552,4511,4480,4452,4426,4400,4371,4347,4327,4303,4274,4255,4248,
+4238,4221,4207,4212,4237,4276,4314,4322,4299,4263,4218,4171,4125,4087,4048,4016,3987,3952,3916,3874,
+3830,3782,3730,3665,3599,3522,3448,3375,3319,3274,3249,3215,3164,3123,3072,3056,3059,3054,3067,3077,
+3112,3127,3122,3093,3076,3086,3079,3058,3053,3044,3031,3017,2987,2956,2924,2895,2857,2807,2758,2714,
+2668,2629,2584,2531,2480,2433,2394,2349,2309,2283,2265,2242,2213,2179,2152,2125,2094,2059,2019,1984,
+1957,1935,1905,1878,1858,1839,1820,1804,1792,1794,1801,1801,1795,1788,1784,1779,1772,1762,1751,1739,
+1718,1696,1686,1691,1705,1732,1751,1745,1742,1732,1736,1752,1770,1783,1799,1813,1819,1818,1810,1792,
+1766,1725,1680,1644,1610,1579,1555,1531,1508,1487,1465,1446,1430,1411,1387,1359,1330,1296,1261,1224,
+1201,1189,1179,1169,1161,1153,1141,1125,1104,1081,1054,1019,976,930,884,842,802,767,740,721,
+709,703,700,697,696,698,705,716,727,716,688,655,613,567,518,474,434,396,359,324,
+294,265,239,215,196,188,187,183,176,166,149,122,93,64,35,9,-9,-20,-30,-44,
+-60,-77,-100,-128,-152,-173,-193,-212,-225,-234,-244,-258,-278,-302,-329,-361,-401,-452,-492,-524,
+-555,-585,-611,-629,-639,-642,-638,-626,-611,-597,-570,-535,-508,-477,-457,-453,-454,-426,-431,-482,
+-549,-611,-671,-728,-778,-825,-869,-919,-972,-1031,-1092,-1143,-1177,-1190,-1208,-1231,-1267,-1304,-1341,-1383,
+-1423,-1456,-1474,-1480,-1493,-1499,-1505,-1518,-1548,-1551,-1555,-1556,-1563,-1568,-1571,-1572,-1571,-1576,-1583,-1588,
+-1589,-1584,-1580,-1574,-1570,-1571,-1577,-1590,-1613,-1636,-1655,-1666,-1672,-1673,-1672,-1673,-1678,-1680,-1681,-1687,
+-1696,-1704,-1710,-1714,-1713,-1707,-1698,-1694,-1697,-1714,-1742,-1772,-1796,-1808,-1806,-1791,-1762,-1740,-1735,-1738,
+-1746,-1757,-1773,-1796,-1819,-1835,-1842,-1857,-1880,-1905,-1926,-1941,-1952,-1959,-1954,-1934,-1924,-1939,-1933,-1923,
+-1921,-1916,-1917,-1918,-1928,-1938,-1931,-1930,-1930,-1938,-1929,-1920,-1923,-1927,-1927,-1939,-1960,-1980,-1986,-1976,
+-1955,-1935,-1924,-1920,-1921,-1923,-1921,-1914,-1914,-1916,-1926,-1943,-1962,-1981,-2000,-2012,-2005,-1986,-1959,-1933,
+-1908,-1883,-1866,-1849,-1834,-1825,-1823,-1819,-1817,-1821,-1824,-1826,-1829,-1832,-1833,-1828,-1820,-1814,-1812,-1809,
+-1803,-1794,-1781,-1767,-1752,-1739,-1727,-1717,-1706,-1697,-1690,-1684,-1671,-1656,-1640,-1625,-1611,-1596,-1576,-1552,
+-1526,-1498,-1479,-1457,-1439,-1421,-1404,-1392,-1381,-1369,-1351,-1335,-1322,-1312,-1306,-1302,-1302,-1303,-1301,-1292,
+-1277,-1259,-1243,-1233,-1225,-1220,-1215,-1211,-1207,-1203,-1198,-1192,-1188,-1188,-1186,-1185,-1186,-1191,-1200,-1212,
+-1224,-1237,-1248,-1263,-1286,-1313,-1341,-1370,-1393,-1405,-1405,-1396,-1385,-1366,-1331,-1288,-1231,-1145,-1051,-966,
+-880,-783,-697,-631,-566,-513,-469,-432,-415,-422,-429,-436,-455,-473,-473,-464,-450,-438,-433,-434,
+-436,-435,-422,-402,-381,-363,-339,-309,-280,-264,-254,-228,-195,-177,-169,-162,-152,-132,-109,-93,
+-78,-58,-41,-21,14,69,137,210,272,310,360,387,420,415,398,359,322,302,296,301,
+313,331,351,376,408,460,538,608,667,683,676,631,573,504,442,393,353,325,308,297,
+293,299,315,339,363,390,424,456,484,509,530,548,563,574,581,582,583,588,594,596,
+597,600,601,601,600,601,606,608,607,607,610,612,614,616,620,629,640,649,653,660,
+665,661,656,668,690,713,730,737,738,735,728,725,730,738,742,746,754,764,774,785,
+790,787,779,771,773,769,761,763,771,797,809,812,818,834,849,846,853,861,874,896,
+916,925,918,904,901,892,888,876,844,823,807,797,799,792,782,768,759,749,736,720,
+708,693,680,665,652,646,640,616,605,603,598,595,595,593,585,574,571,578,585,594,
+604,606,601,605,611,605,587,568,551,526,496,473,455,438,423,409,392,383,379,378,
+373,378,377,362,342,320,302,288,280,274,265,249,234,224,217,217,218,215,211,209,
+211,215,219,220,218,214,213,212,219,227,230,230,228,229,231,229,222,221,223,225,
+228,227,224,226,230,234,240,245,249,250,253,259,267,278,290,304,318,330,343,355,
+367,378,393,405,410,419,443,473,489,498,503,509,526,539,550,557,564,575,576,583,
+585,587,595,612,644,681,690,704,726,752,776,807,819,820,827,841,864,891,897,894,
+903,927,938,944,939,927,918,919,933,943,944,946,963,975,993,997,996,971,951,926,
+908,885,852,821,790,774,755,735,717,706,698,689,682,676,676,671,669,666,666,666,
+670,675,677,679,690,698,708,719,717,721,729,715,700,690,682,654,613,568,527,485,
+444,415,382,367,364,368,387,409,417,388,330,253,186,121,70,31,0,-31,-61,-92,
+-120,-141,-163,-187,-205,-223,-237,-247,-266,-292,-328,-367,-397,-409,-412,-425,-440,-459,-479,-509,
+-532,-551,-568,-591,-612,-634,-659,-685,-716,-745,-779,-815,-854,-886,-925,-964,-999,-1030,-1059,-1082,
+-1103,-1126,-1155,-1183,-1222,-1269,-1319,-1368,-1414,-1456,-1495,-1530,-1558,-1580,-1600,-1619,-1634,-1648,-1661,-1678,
+-1689,-1696,-1697,-1716,-1746,-1775,-1807,-1837,-1866,-1883,-1899,-1913,-1928,-1961,-2006,-2062,-2118,-2170,-2216,-2260,
+-2303,-2339,-2373,-2392,-2413,-2443,-2483,-2534,-2579,-2611,-2644,-2680,-2718,-2757,-2797,-2835,-2874,-2927,-2987,-3060,
+-3118,-3147,-3170,-3191,-3205,-3213,-3230,-3249,-3275,-3297,-3314,-3330,-3351,-3377,-3403,-3428,-3451,-3472,-3498,-3522,
+-3545,-3569,-3589,-3608,-3627,-3636,-3639,-3646,-3654,-3659,-3659,-3655,-3653,-3654,-3656,-3657,-3660,-3666,-3669,-3667,
+-3662,-3658,-3655,-3650,-3644,-3637,-3629,-3621,-3607,-3590,-3570,-3549,-3525,-3486,-3450,-3420,-3397,-3378,-3361,-3347,
+-3337,-3321,-3306,-3288,-3267,-3244,-3224,-3210,-3189,-3165,-3146,-3135,-3130,-3129,-3126,-3120,-3120,-3124,-3135,-3150,
+-3162,-3176,-3192,-3208,-3218,-3219,-3209,-3192,-3165,-3146,-3134,-3127,-3122,-3110,-3090,-3064,-3035,-3004,-2975,-2952,
+-2931,-2919,-2910,-2909,-2915,-2922,-2925,-2927,-2931,-2931,-2925,-2916,-2907,-2897,-2886,-2873,-2858,-2840,-2822,-2800,
+-2775,-2746,-2714,-2678,-2641,-2598,-2556,-2514,-2473,-2431,-2390,-2349,-2315,-2280,-2245,-2206,-2163,-2116,-2068,-2015,
+-1955,-1893,-1832,-1770,-1709,-1644,-1577,-1508,-1441,-1370,-1292,-1209,-1127,-1046,-966,-886,-803,-719,-632,-539,
+-442,-350,-254,-159,-52,57,179,307,434,559,669,752,782,797,788,833,861,848,840,853,
+872,902,952,1023,1117,1208,1289,1382,1471,1547,1630,1717,1788,1839,1878,1909,1936,1958,1984,2019,
+2086,2173,2236,2264,2275,2298,2333,2383,2441,2502,2557,2600,2627,2639,2638,2635,2649,2689,2736,2787,
+2830,2864,2907,2955,2993,3023,3046,3065,3090,3125,3169,3216,3266,3328,3394,3454,3512,3579,3650,3726,
+3806,3882,3954,4028,4094,4150,4196,4238,4279,4323,4365,4405,4447,4489,4530,4573,4615,4649,4679,4711,
+4740,4760,4775,4787,4796,4802,4810,4817,4822,4828,4832,4843,4859,4879,4903,4933,4970,5011,5056,5106,
+5151,5210,5289,5381,5466,5528,5570,5604,5642,5656,5668,5698,5726,5717,5711,5698,5669,5649,5631,5633,
+5654,5670,5685,5700,5718,5741,5755,5758,5753,5757,5768,5787,5812,5836,5859,5878,5898,5915,5934,5954,
+5971,5990,6005,6021,6034,6040,6042,6043,6041,6038,6036,6036,6042,6064,6098,6137,6180,6224,6260,6283,
+6298,6309,6319,6330,6342,6350,6356,6363,6373,6378,6377,6374,6375,6377,6378,6377,6382,6398,6417,6420,
+6404,6382,6376,6372,6367,6359,6350,6341,6335,6333,6333,6326,6316,6306,6290,6271,6247,6216,6175,6126,
+6066,6017,5978,5941,5907,5874,5848,5826,5807,5789,5775,5765,5756,5746,5741,5730,5711,5689,5669,5649,
+5618,5573,5538,5514,5494,5469,5433,5389,5344,5301,5267,5243,5233,5234,5238,5226,5202,5174,5160,5165,
+5152,5117,5089,5074,5077,5076,5071,5066,5063,5051,5022,4980,4939,4903,4967,4928,4889,4865,4851,4845,
+4833,4824,4808,4782,4745,4699,4654,4615,4575,4531,4484,4438,4395,4358,4333,4314,4300,4288,4282,4291,
+4301,4303,4303,4311,4327,4339,4332,4310,4281,4253,4222,4185,4146,4105,4066,4031,3998,3971,3940,3909,
+3874,3836,3790,3732,3669,3594,3521,3462,3415,3389,3374,3358,3329,3283,3230,3175,3112,3101,3099,3108,
+3126,3133,3129,3109,3103,3100,3093,3088,3075,3043,3014,2990,2972,2951,2922,2882,2848,2806,2757,2715,
+2672,2618,2562,2511,2462,2405,2365,2323,2287,2247,2218,2196,2170,2146,2125,2097,2065,2036,2008,1977,
+1947,1918,1894,1870,1853,1847,1836,1822,1808,1793,1791,1795,1793,1786,1776,1763,1750,1740,1732,1726,
+1712,1696,1683,1676,1679,1688,1697,1712,1729,1743,1747,1738,1729,1727,1730,1740,1750,1756,1756,1760,
+1757,1745,1724,1700,1678,1654,1637,1624,1612,1594,1574,1545,1511,1481,1447,1411,1373,1331,1284,1239,
+1204,1175,1155,1149,1148,1142,1129,1113,1095,1074,1056,1036,1002,962,915,864,815,772,735,706,
+688,678,674,676,679,677,674,678,690,704,695,672,650,625,584,528,473,430,389,354,
+321,286,252,220,192,174,163,155,153,156,155,153,137,107,76,48,21,-4,-24,-38,
+-52,-67,-82,-96,-114,-142,-172,-195,-212,-226,-246,-265,-283,-297,-318,-364,-425,-480,-528,-568,
+-600,-627,-652,-670,-681,-689,-690,-676,-648,-609,-566,-515,-459,-419,-386,-359,-370,-419,-467,-517,
+-580,-667,-729,-770,-820,-873,-920,-960,-993,-1024,-1065,-1114,-1169,-1218,-1245,-1270,-1287,-1314,-1345,-1379,
+-1416,-1462,-1492,-1510,-1526,-1533,-1542,-1554,-1571,-1583,-1590,-1589,-1585,-1585,-1588,-1592,-1594,-1596,-1600,-1608,
+-1618,-1625,-1628,-1626,-1620,-1611,-1605,-1607,-1619,-1638,-1662,-1688,-1710,-1722,-1728,-1728,-1726,-1730,-1737,-1742,
+-1749,-1755,-1761,-1766,-1769,-1764,-1752,-1737,-1727,-1731,-1747,-1773,-1806,-1836,-1852,-1854,-1844,-1827,-1816,-1812,
+-1812,-1816,-1824,-1839,-1863,-1884,-1906,-1940,-1964,-1979,-1982,-1982,-1988,-1998,-2013,-2019,-2030,-2046,-2056,-2053,
+-2039,-2014,-1985,-1974,-1977,-1987,-2001,-2006,-2011,-2027,-2023,-2010,-2001,-1993,-1998,-2004,-2005,-2014,-2029,-2047,
+-2050,-2041,-2030,-2020,-2013,-2012,-2012,-2011,-2011,-1999,-1989,-1993,-2006,-2020,-2036,-2052,-2067,-2068,-2054,-2027,
+-1998,-1977,-1960,-1943,-1923,-1907,-1897,-1889,-1882,-1877,-1878,-1880,-1881,-1882,-1880,-1876,-1867,-1854,-1840,-1826,
+-1816,-1807,-1794,-1781,-1768,-1748,-1724,-1705,-1691,-1679,-1664,-1662,-1663,-1660,-1653,-1637,-1619,-1603,-1586,-1568,
+-1551,-1536,-1519,-1501,-1479,-1451,-1427,-1407,-1401,-1404,-1402,-1393,-1380,-1367,-1358,-1354,-1355,-1359,-1356,-1345,
+-1325,-1303,-1282,-1262,-1246,-1235,-1227,-1224,-1221,-1218,-1217,-1219,-1221,-1225,-1231,-1240,-1247,-1250,-1250,-1253,
+-1259,-1269,-1282,-1296,-1311,-1325,-1340,-1360,-1379,-1396,-1407,-1408,-1397,-1371,-1333,-1289,-1235,-1145,-1041,-953,
+-867,-784,-705,-640,-577,-525,-477,-444,-425,-423,-433,-442,-452,-458,-460,-454,-446,-440,-431,-431,
+-436,-441,-429,-413,-393,-369,-343,-317,-290,-265,-243,-225,-195,-148,-103,-77,-58,-44,-19,-10,
+-24,-29,-17,-7,24,50,78,127,196,254,314,363,409,449,459,463,439,391,359,348,
+349,365,389,412,430,451,489,555,624,688,746,788,807,792,742,678,602,531,469,414,
+374,352,345,348,358,376,400,422,440,461,486,509,525,533,539,550,567,583,592,593,
+597,604,609,608,609,613,624,635,639,633,628,628,631,632,626,619,620,629,637,645,
+659,672,681,686,693,704,722,741,756,766,770,769,770,780,794,803,808,809,809,813,
+818,821,826,828,829,826,818,805,806,818,843,869,881,887,888,883,876,878,892,905,
+919,931,926,934,944,932,919,906,883,870,862,853,832,820,816,811,813,803,786,761,
+743,723,701,695,694,678,665,646,627,617,614,610,602,597,600,617,638,638,628,610,
+600,597,598,596,593,585,569,552,536,521,504,489,478,466,449,438,432,427,421,409,
+397,388,386,384,380,371,356,339,321,309,298,285,266,250,239,231,228,231,235,238,
+244,253,260,265,268,272,278,282,281,271,269,273,279,286,290,290,288,284,279,277,
+279,283,283,280,279,282,284,289,294,299,303,306,314,323,332,341,347,352,355,354,
+354,359,370,385,400,410,420,431,450,472,498,522,544,560,568,576,581,579,585,593,
+607,635,670,682,687,699,709,725,735,738,751,770,786,802,823,840,855,865,878,888,
+889,898,905,901,898,899,898,891,893,908,924,925,940,955,963,968,954,932,904,890,
+880,869,857,835,821,798,777,751,723,705,697,694,693,691,690,687,687,693,694,694,
+706,719,725,730,741,735,741,755,763,773,770,752,737,730,723,699,674,640,592,556,
+516,487,461,449,442,449,463,485,498,517,503,437,354,274,207,145,92,46,0,-46,
+-89,-129,-161,-186,-208,-234,-259,-282,-305,-329,-352,-374,-400,-430,-454,-467,-476,-487,-500,-523,
+-546,-566,-587,-609,-632,-650,-669,-690,-715,-741,-770,-807,-850,-895,-937,-979,-1016,-1046,-1075,-1104,
+-1131,-1156,-1181,-1215,-1249,-1283,-1329,-1383,-1433,-1473,-1504,-1532,-1553,-1566,-1577,-1591,-1605,-1611,-1615,-1624,
+-1634,-1651,-1669,-1692,-1712,-1736,-1765,-1792,-1813,-1833,-1842,-1854,-1881,-1914,-1946,-1980,-2027,-2080,-2129,-2175,
+-2220,-2262,-2295,-2324,-2355,-2389,-2427,-2464,-2499,-2537,-2565,-2597,-2640,-2681,-2717,-2750,-2784,-2825,-2877,-2929,
+-2971,-3029,-3098,-3139,-3156,-3174,-3197,-3217,-3243,-3267,-3289,-3313,-3334,-3356,-3381,-3412,-3445,-3468,-3487,-3516,
+-3541,-3561,-3583,-3605,-3627,-3643,-3652,-3657,-3661,-3667,-3671,-3671,-3673,-3678,-3681,-3682,-3685,-3692,-3698,-3701,
+-3703,-3706,-3709,-3710,-3704,-3695,-3685,-3676,-3662,-3645,-3626,-3605,-3582,-3552,-3511,-3478,-3449,-3427,-3412,-3402,
+-3394,-3380,-3369,-3362,-3353,-3348,-3330,-3311,-3287,-3265,-3249,-3237,-3225,-3215,-3210,-3206,-3207,-3209,-3208,-3207,
+-3206,-3205,-3212,-3223,-3235,-3251,-3259,-3256,-3251,-3238,-3222,-3210,-3194,-3180,-3163,-3143,-3130,-3119,-3100,-3066,
+-3035,-3021,-3014,-3007,-3008,-3011,-3013,-3013,-3010,-3006,-2998,-2989,-2978,-2966,-2952,-2938,-2922,-2904,-2885,-2863,
+-2841,-2818,-2791,-2759,-2718,-2679,-2639,-2597,-2557,-2517,-2476,-2437,-2403,-2371,-2339,-2305,-2267,-2223,-2181,-2137,
+-2088,-2035,-1982,-1929,-1873,-1814,-1748,-1681,-1614,-1548,-1479,-1407,-1332,-1257,-1182,-1108,-1029,-947,-864,-782,
+-698,-613,-527,-428,-329,-216,-100,16,137,273,434,552,666,740,774,800,828,827,828,864,
+886,926,968,1015,1089,1163,1239,1316,1375,1438,1508,1575,1646,1734,1811,1861,1902,1937,1978,2018,
+2049,2097,2169,2218,2243,2252,2267,2299,2350,2414,2479,2545,2607,2661,2696,2712,2711,2704,2706,2720,
+2735,2758,2794,2840,2895,2943,2990,3029,3060,3103,3156,3201,3246,3282,3323,3378,3443,3507,3573,3632,
+3690,3767,3869,3976,4048,4095,4148,4213,4276,4326,4367,4407,4449,4491,4534,4571,4608,4646,4682,4711,
+4734,4754,4773,4788,4799,4807,4814,4821,4826,4832,4839,4845,4847,4855,4872,4894,4918,4942,4972,5004,
+5047,5079,5119,5198,5298,5377,5404,5423,5456,5494,5518,5546,5559,5572,5606,5644,5661,5673,5686,5685,
+5691,5703,5708,5717,5729,5742,5757,5769,5776,5779,5788,5802,5818,5840,5864,5883,5902,5924,5946,5967,
+5985,6004,6022,6039,6054,6064,6071,6075,6081,6088,6093,6097,6105,6128,6163,6211,6252,6278,6296,6307,
+6318,6330,6338,6344,6353,6364,6376,6389,6400,6408,6408,6402,6397,6400,6408,6409,6409,6413,6416,6417,
+6431,6427,6409,6396,6391,6389,6389,6391,6387,6385,6381,6373,6360,6354,6348,6336,6321,6305,6288,6268,
+6236,6198,6143,6069,6002,5952,5917,5886,5859,5834,5812,5796,5792,5789,5781,5774,5762,5738,5709,5679,
+5644,5609,5580,5556,5534,5511,5481,5438,5391,5343,5305,5278,5262,5250,5243,5233,5231,5241,5236,5202,
+5170,5129,5099,5102,5121,5124,5102,5086,5074,5072,5064,5042,5020,4998,4967,5010,4988,4945,4895,4859,
+4837,4814,4791,4761,4725,4696,4669,4640,4609,4570,4523,4479,4438,4409,4387,4372,4353,4340,4331,4333,
+4341,4351,4359,4363,4361,4342,4310,4276,4248,4224,4204,4181,4149,4113,4069,4032,3995,3956,3918,3884,
+3852,3822,3796,3768,3710,3639,3574,3518,3478,3452,3417,3387,3369,3356,3327,3281,3262,3247,3230,3215,
+3182,3159,3152,3146,3133,3125,3113,3116,3103,3082,3059,3030,2993,2968,2935,2885,2835,2789,2746,2700,
+2653,2608,2558,2503,2439,2378,2326,2285,2244,2204,2168,2143,2119,2099,2080,2062,2037,2011,1987,1967,
+1946,1926,1906,1887,1866,1852,1845,1841,1831,1812,1793,1780,1779,1774,1765,1755,1744,1733,1725,1721,
+1720,1721,1714,1705,1696,1687,1688,1691,1691,1690,1690,1694,1704,1712,1697,1683,1676,1674,1675,1674,
+1672,1669,1668,1658,1646,1636,1629,1621,1612,1602,1590,1570,1548,1524,1495,1457,1413,1360,1305,1256,
+1217,1183,1159,1150,1144,1141,1134,1122,1107,1087,1068,1052,1032,1005,973,932,884,833,782,733,
+692,663,648,646,651,658,665,667,666,673,688,685,667,645,617,583,534,481,438,401,
+365,331,296,257,215,182,158,140,131,127,126,126,131,133,117,86,57,28,1,-20,
+-39,-54,-69,-84,-98,-116,-139,-164,-190,-213,-235,-257,-285,-309,-340,-386,-432,-477,-523,-569,
+-610,-644,-670,-685,-694,-702,-702,-681,-634,-551,-443,-366,-350,-344,-349,-379,-423,-461,-505,-566,
+-645,-713,-760,-803,-836,-869,-925,-976,-1011,-1040,-1066,-1102,-1140,-1185,-1224,-1258,-1287,-1314,-1344,-1369,
+-1404,-1453,-1490,-1528,-1553,-1566,-1577,-1586,-1595,-1609,-1619,-1620,-1617,-1618,-1620,-1619,-1619,-1622,-1629,-1639,
+-1651,-1665,-1675,-1673,-1664,-1654,-1645,-1637,-1638,-1651,-1671,-1693,-1713,-1734,-1750,-1761,-1765,-1770,-1782,-1797,
+-1810,-1817,-1819,-1819,-1818,-1814,-1806,-1796,-1786,-1780,-1779,-1782,-1795,-1821,-1853,-1877,-1887,-1886,-1881,-1881,
+-1886,-1889,-1892,-1900,-1917,-1941,-1969,-1995,-2016,-2040,-2049,-2053,-2053,-2060,-2064,-2075,-2087,-2094,-2100,-2133,
+-2142,-2117,-2085,-2064,-2061,-2063,-2074,-2076,-2080,-2092,-2094,-2097,-2094,-2071,-2055,-2067,-2083,-2076,-2076,-2085,
+-2110,-2139,-2153,-2141,-2116,-2100,-2092,-2093,-2094,-2094,-2085,-2063,-2060,-2055,-2062,-2071,-2088,-2107,-2118,-2115,
+-2105,-2092,-2070,-2046,-2028,-2011,-1993,-1978,-1965,-1950,-1941,-1940,-1945,-1945,-1938,-1929,-1920,-1909,-1892,-1870,
+-1848,-1831,-1811,-1792,-1775,-1759,-1736,-1716,-1695,-1676,-1663,-1654,-1654,-1662,-1666,-1656,-1641,-1625,-1606,-1585,
+-1565,-1547,-1535,-1525,-1517,-1498,-1474,-1450,-1435,-1430,-1434,-1437,-1433,-1425,-1417,-1410,-1407,-1409,-1414,-1413,
+-1404,-1388,-1368,-1347,-1328,-1313,-1304,-1300,-1298,-1296,-1295,-1295,-1294,-1295,-1298,-1301,-1305,-1311,-1318,-1322,
+-1326,-1327,-1329,-1334,-1342,-1351,-1361,-1376,-1392,-1405,-1412,-1411,-1407,-1399,-1381,-1347,-1295,-1221,-1104,-1003,
+-918,-830,-760,-696,-634,-577,-516,-465,-432,-416,-427,-442,-449,-449,-447,-446,-438,-432,-432,-441,
+-440,-437,-437,-421,-397,-374,-353,-337,-299,-267,-231,-202,-180,-158,-114,-65,-17,11,10,18,
+16,17,49,65,86,113,130,141,175,225,272,322,356,391,434,469,493,498,500,490,
+483,477,453,444,448,463,482,511,557,619,689,756,814,868,882,877,844,798,752,689,
+620,550,504,476,460,448,434,424,421,425,433,442,450,459,470,487,509,531,549,563,
+574,584,594,605,616,629,644,652,650,652,662,668,662,653,643,633,627,627,629,636,
+643,657,672,687,700,715,733,752,770,783,791,798,804,807,813,827,844,857,863,865,
+867,871,874,875,871,869,870,869,871,881,896,917,925,931,941,937,921,911,902,899,
+901,904,910,918,934,946,953,942,923,915,905,887,867,847,843,840,842,825,815,801,
+788,776,761,746,730,712,687,661,644,629,626,609,594,602,630,654,666,665,651,631,
+622,620,616,608,594,576,563,555,546,538,530,524,517,516,513,503,483,463,441,416,
+397,382,376,380,381,381,372,359,343,328,318,309,296,283,272,267,268,271,271,279,
+282,287,294,302,311,322,331,329,330,331,329,322,314,313,322,326,328,331,331,326,
+324,325,331,337,339,342,349,356,360,364,368,371,376,379,382,386,395,403,412,421,
+415,399,393,403,421,436,451,470,492,513,531,540,547,552,565,578,592,606,613,615,
+627,652,675,706,739,753,757,762,774,781,774,778,791,805,826,849,851,862,871,886,
+890,889,886,884,881,878,877,881,896,908,920,941,942,944,956,945,928,917,900,888,
+877,862,857,844,831,820,807,784,757,742,733,727,724,721,724,724,725,732,742,746,
+746,748,746,748,747,749,754,760,765,779,781,781,783,780,782,767,733,701,659,622,
+584,551,533,521,511,512,520,529,536,540,554,565,537,469,392,320,257,202,128,67,
+3,-59,-114,-161,-199,-233,-265,-295,-324,-354,-382,-408,-434,-458,-479,-498,-514,-530,-548,-561,
+-571,-583,-605,-627,-648,-668,-684,-702,-728,-753,-777,-811,-849,-889,-929,-963,-999,-1043,-1086,-1120,
+-1149,-1182,-1224,-1266,-1301,-1336,-1373,-1411,-1451,-1488,-1522,-1552,-1576,-1594,-1606,-1612,-1616,-1620,-1627,-1637,
+-1656,-1675,-1698,-1717,-1730,-1751,-1768,-1786,-1797,-1803,-1812,-1822,-1840,-1860,-1894,-1932,-1977,-2020,-2061,-2105,
+-2150,-2196,-2235,-2270,-2299,-2330,-2363,-2400,-2436,-2470,-2503,-2532,-2566,-2605,-2641,-2677,-2712,-2759,-2811,-2854,
+-2891,-2927,-2972,-3029,-3084,-3133,-3158,-3175,-3199,-3217,-3240,-3271,-3301,-3325,-3356,-3391,-3429,-3463,-3486,-3508,
+-3533,-3556,-3573,-3590,-3613,-3639,-3655,-3662,-3664,-3669,-3675,-3680,-3688,-3700,-3709,-3713,-3719,-3729,-3739,-3748,
+-3755,-3761,-3766,-3768,-3767,-3764,-3758,-3750,-3739,-3724,-3702,-3677,-3654,-3630,-3605,-3571,-3536,-3511,-3497,-3486,
+-3476,-3463,-3449,-3438,-3426,-3417,-3418,-3415,-3408,-3395,-3375,-3354,-3333,-3315,-3303,-3298,-3293,-3293,-3289,-3286,
+-3278,-3270,-3267,-3268,-3270,-3278,-3286,-3297,-3311,-3315,-3314,-3308,-3301,-3288,-3260,-3230,-3210,-3199,-3187,-3184,
+-3177,-3150,-3133,-3131,-3125,-3118,-3111,-3106,-3095,-3084,-3076,-3068,-3058,-3044,-3026,-3009,-2992,-2972,-2949,-2924,
+-2898,-2873,-2849,-2821,-2788,-2751,-2712,-2671,-2628,-2585,-2544,-2508,-2475,-2444,-2416,-2387,-2352,-2311,-2270,-2229,
+-2189,-2147,-2099,-2045,-1992,-1937,-1879,-1817,-1752,-1688,-1626,-1564,-1500,-1433,-1364,-1293,-1222,-1148,-1070,-988,
+-905,-823,-741,-669,-589,-495,-397,-288,-168,-36,101,263,424,537,648,721,770,812,820,863,
+921,943,966,980,1030,1083,1138,1188,1227,1284,1355,1435,1526,1621,1709,1796,1856,1899,1943,1986,
+2028,2068,2122,2172,2201,2219,2231,2245,2281,2344,2417,2479,2536,2596,2657,2712,2743,2756,2758,2758,
+2764,2785,2823,2876,2930,2976,3022,3066,3131,3177,3212,3252,3294,3322,3351,3382,3420,3474,3541,3615,
+3696,3775,3849,3918,3979,4038,4103,4168,4230,4290,4347,4390,4425,4459,4496,4538,4584,4628,4665,4697,
+4725,4751,4766,4778,4791,4801,4807,4809,4814,4825,4837,4848,4857,4861,4870,4886,4903,4912,4922,4942,
+4953,4973,5027,5080,5117,5168,5245,5283,5299,5318,5358,5409,5461,5500,5520,5530,5556,5584,5630,5675,
+5705,5721,5736,5747,5757,5768,5774,5784,5792,5799,5805,5818,5840,5860,5882,5905,5925,5946,5968,5988,
+6004,6023,6047,6066,6079,6086,6091,6101,6112,6121,6132,6146,6167,6195,6232,6268,6298,6318,6327,6326,
+6329,6342,6354,6366,6378,6390,6399,6405,6412,6418,6425,6437,6448,6455,6464,6465,6456,6452,6449,6443,
+6444,6457,6459,6457,6434,6421,6417,6417,6430,6443,6442,6432,6416,6396,6383,6374,6362,6351,6341,6328,
+6313,6292,6264,6226,6173,6095,6033,5986,5951,5917,5888,5865,5848,5834,5822,5812,5795,5772,5751,5719,
+5687,5661,5639,5615,5587,5555,5520,5477,5428,5383,5345,5322,5310,5296,5287,5274,5266,5270,5252,5227,
+5200,5155,5121,5125,5153,5152,5139,5117,5095,5082,5072,5058,5037,5023,5017,5010,5017,5003,4982,4941,
+4888,4841,4809,4775,4725,4682,4655,4631,4600,4568,4537,4505,4477,4455,4442,4436,4427,4407,4387,4368,
+4349,4336,4334,4330,4324,4313,4288,4258,4230,4204,4183,4154,4119,4079,4044,4010,3976,3942,3906,3874,
+3841,3813,3782,3750,3711,3663,3606,3556,3507,3466,3418,3382,3366,3362,3358,3351,3342,3318,3297,3288,
+3271,3243,3204,3177,3155,3134,3116,3105,3081,3054,3028,3011,2992,2962,2920,2870,2825,2780,2731,2670,
+2614,2564,2511,2466,2428,2378,2319,2257,2212,2174,2136,2107,2090,2074,2055,2031,2006,1983,1960,1942,
+1923,1909,1893,1875,1851,1836,1830,1823,1816,1815,1815,1805,1791,1779,1769,1760,1753,1745,1737,1730,
+1726,1730,1738,1741,1739,1737,1730,1719,1718,1725,1727,1722,1714,1704,1696,1685,1673,1661,1647,1630,
+1613,1597,1585,1574,1568,1567,1566,1562,1562,1566,1565,1556,1541,1522,1497,1465,1424,1379,1336,1301,
+1272,1245,1213,1188,1174,1168,1165,1155,1139,1124,1112,1105,1096,1083,1074,1054,1012,954,888,822,
+760,707,663,632,617,616,625,636,643,646,660,671,670,657,636,608,576,536,492,449,
+410,373,338,303,268,232,199,171,150,134,120,111,106,110,112,104,88,65,28,-6,
+-35,-55,-68,-82,-101,-120,-139,-159,-182,-205,-231,-250,-263,-290,-334,-391,-436,-479,-518,-553,
+-584,-612,-634,-648,-661,-666,-656,-631,-578,-492,-400,-373,-352,-363,-396,-425,-460,-496,-544,-604,
+-672,-732,-781,-820,-849,-884,-931,-990,-1050,-1090,-1114,-1139,-1167,-1212,-1253,-1288,-1315,-1336,-1354,-1380,
+-1405,-1426,-1458,-1498,-1531,-1565,-1589,-1612,-1634,-1649,-1661,-1671,-1676,-1682,-1693,-1699,-1695,-1687,-1681,-1680,
+-1682,-1688,-1702,-1717,-1722,-1713,-1699,-1685,-1675,-1675,-1684,-1699,-1720,-1741,-1760,-1778,-1791,-1805,-1821,-1839,
+-1852,-1862,-1868,-1871,-1869,-1863,-1855,-1846,-1838,-1832,-1830,-1831,-1832,-1835,-1846,-1864,-1883,-1902,-1920,-1935,
+-1946,-1952,-1956,-1964,-1979,-2002,-2026,-2051,-2075,-2099,-2113,-2121,-2126,-2110,-2099,-2111,-2136,-2162,-2186,-2198,
+-2194,-2192,-2184,-2168,-2158,-2158,-2172,-2161,-2161,-2165,-2162,-2166,-2165,-2165,-2142,-2117,-2117,-2134,-2128,-2138,
+-2163,-2171,-2179,-2197,-2210,-2223,-2211,-2193,-2187,-2177,-2165,-2147,-2143,-2140,-2140,-2139,-2137,-2133,-2137,-2153,
+-2167,-2175,-2170,-2151,-2127,-2106,-2092,-2076,-2058,-2039,-2021,-2007,-2001,-1998,-1994,-1986,-1978,-1968,-1956,-1938,
+-1916,-1894,-1869,-1847,-1827,-1808,-1785,-1761,-1736,-1714,-1694,-1679,-1671,-1669,-1670,-1671,-1661,-1647,-1634,-1616,
+-1594,-1571,-1549,-1535,-1528,-1523,-1520,-1509,-1495,-1481,-1473,-1474,-1477,-1469,-1462,-1461,-1460,-1460,-1466,-1472,
+-1477,-1479,-1476,-1467,-1455,-1440,-1424,-1411,-1401,-1392,-1386,-1382,-1382,-1383,-1386,-1388,-1390,-1389,-1386,-1384,
+-1385,-1388,-1392,-1397,-1400,-1401,-1403,-1408,-1417,-1426,-1433,-1439,-1439,-1430,-1417,-1401,-1374,-1332,-1264,-1165,
+-1079,-981,-899,-826,-770,-707,-638,-578,-515,-451,-425,-423,-422,-419,-423,-417,-410,-412,-420,-417,
+-430,-447,-448,-426,-399,-378,-356,-336,-316,-282,-244,-199,-173,-137,-91,-50,-28,-5,15,26,
+46,71,76,86,98,128,162,201,228,253,284,311,327,368,412,459,493,529,548,564,
+580,593,586,570,546,522,507,503,514,532,563,608,665,725,778,824,859,877,882,870,
+837,806,770,746,713,675,635,597,556,513,480,459,446,437,434,440,454,475,499,521,
+541,560,580,606,633,653,666,668,654,650,671,693,705,707,702,702,693,687,683,681,
+680,684,694,708,723,732,739,750,765,782,796,803,805,808,820,841,861,878,894,908,
+915,919,925,932,937,937,929,923,925,928,934,942,951,955,973,979,979,991,993,975,
+964,972,974,967,947,946,948,958,958,937,927,918,908,892,875,858,843,832,825,815,
+820,831,816,796,765,739,710,684,662,643,623,597,581,578,603,645,666,646,597,570,
+568,576,580,575,562,548,532,521,520,524,528,527,517,510,503,492,478,459,435,412,
+389,375,369,367,368,377,387,389,379,364,351,342,335,325,315,308,306,311,316,321,
+326,333,342,349,349,347,352,362,363,358,357,360,364,362,352,342,336,339,345,351,
+353,356,360,369,378,388,397,405,409,414,422,428,434,439,443,444,454,465,472,474,
+473,475,478,482,490,503,518,534,550,564,579,584,596,618,626,640,654,671,672,682,
+696,711,725,748,763,777,796,809,810,792,766,783,813,805,818,843,856,865,878,882,
+883,899,910,910,915,927,917,910,915,933,940,960,972,969,964,944,912,889,871,862,
+856,854,858,857,845,832,819,813,805,804,799,790,782,776,775,776,783,791,794,795,
+793,790,789,791,784,786,782,791,791,794,808,809,824,823,819,825,811,786,768,732,
+676,644,619,588,575,568,562,563,563,554,535,547,568,575,531,469,408,346,271,208,
+137,69,0,-63,-119,-169,-214,-253,-290,-327,-361,-392,-421,-451,-478,-504,-528,-549,-567,-581,
+-596,-612,-624,-631,-641,-656,-684,-709,-726,-748,-777,-804,-833,-875,-920,-969,-1022,-1065,-1102,-1141,
+-1173,-1202,-1230,-1260,-1291,-1322,-1358,-1395,-1437,-1482,-1524,-1560,-1593,-1620,-1643,-1663,-1678,-1691,-1702,-1712,
+-1723,-1737,-1753,-1768,-1779,-1788,-1796,-1802,-1811,-1818,-1822,-1827,-1829,-1843,-1871,-1904,-1937,-1973,-2019,-2065,
+-2101,-2139,-2178,-2215,-2250,-2283,-2315,-2347,-2375,-2403,-2440,-2484,-2520,-2551,-2585,-2625,-2662,-2699,-2739,-2783,
+-2833,-2881,-2920,-2954,-2997,-3046,-3098,-3149,-3177,-3190,-3211,-3238,-3272,-3303,-3338,-3377,-3411,-3443,-3476,-3501,
+-3524,-3549,-3571,-3592,-3609,-3627,-3649,-3665,-3672,-3682,-3690,-3700,-3712,-3727,-3735,-3742,-3752,-3764,-3778,-3792,
+-3805,-3815,-3823,-3828,-3831,-3830,-3824,-3815,-3806,-3790,-3771,-3754,-3732,-3704,-3679,-3656,-3628,-3602,-3585,-3572,
+-3561,-3548,-3535,-3523,-3521,-3521,-3520,-3520,-3517,-3506,-3493,-3480,-3472,-3461,-3446,-3429,-3411,-3394,-3381,-3377,
+-3369,-3357,-3344,-3337,-3336,-3334,-3334,-3337,-3344,-3352,-3357,-3364,-3376,-3376,-3364,-3346,-3326,-3307,-3291,-3284,
+-3270,-3265,-3266,-3250,-3235,-3224,-3214,-3200,-3187,-3174,-3161,-3149,-3135,-3118,-3099,-3079,-3059,-3034,-3006,-2980,
+-2954,-2926,-2900,-2871,-2839,-2805,-2767,-2727,-2688,-2648,-2609,-2571,-2534,-2502,-2469,-2440,-2407,-2373,-2338,-2301,
+-2261,-2219,-2177,-2130,-2077,-2020,-1959,-1898,-1841,-1788,-1735,-1681,-1622,-1561,-1496,-1431,-1365,-1300,-1229,-1155,
+-1080,-1007,-935,-862,-786,-709,-625,-528,-422,-306,-177,-39,109,247,372,491,570,627,705,790,
+843,881,924,937,925,928,944,970,1022,1092,1167,1255,1358,1477,1609,1727,1807,1857,1900,1941,
+1981,2039,2097,2126,2141,2157,2164,2172,2204,2260,2333,2418,2484,2546,2612,2677,2738,2780,2804,2815,
+2824,2843,2878,2927,2981,3028,3090,3199,3251,3273,3288,3295,3324,3351,3372,3392,3421,3465,3527,3591,
+3650,3712,3779,3843,3908,3974,4036,4106,4179,4244,4298,4349,4395,4438,4478,4519,4565,4617,4664,4708,
+4758,4810,4845,4852,4846,4837,4829,4821,4811,4799,4797,4808,4825,4843,4859,4878,4903,4928,4946,4958,
+4962,4959,4970,4965,4957,4964,5008,5083,5148,5224,5290,5328,5358,5363,5378,5410,5460,5514,5561,5606,
+5648,5685,5716,5741,5757,5767,5778,5786,5795,5809,5829,5844,5858,5876,5900,5924,5948,5970,5991,6013,
+6028,6044,6063,6078,6086,6095,6103,6112,6126,6138,6153,6175,6202,6236,6269,6296,6321,6342,6355,6358,
+6360,6366,6377,6395,6420,6441,6459,6468,6459,6460,6462,6468,6477,6486,6498,6506,6505,6502,6507,6508,
+6500,6482,6472,6478,6480,6472,6464,6466,6470,6473,6481,6490,6489,6472,6444,6424,6411,6394,6371,6346,
+6329,6321,6317,6308,6289,6254,6208,6154,6102,6055,6013,5974,5940,5910,5883,5859,5835,5805,5785,5767,
+5743,5721,5698,5669,5634,5598,5558,5514,5463,5412,5371,5346,5334,5329,5319,5315,5321,5316,5290,5257,
+5219,5171,5135,5137,5162,5177,5164,5145,5120,5104,5091,5078,5057,5045,5041,5030,5017,5043,5021,5000,
+4977,4936,4879,4830,4791,4739,4698,4671,4645,4617,4587,4555,4521,4493,4473,4455,4432,4403,4374,4356,
+4343,4332,4327,4320,4305,4289,4267,4241,4211,4180,4150,4117,4080,4046,4013,3984,3961,3938,3913,3887,
+3866,3844,3825,3805,3760,3711,3660,3610,3553,3509,3470,3443,3422,3419,3421,3386,3367,3337,3326,3289,
+3273,3239,3208,3199,3176,3146,3113,3083,3052,3024,3006,2979,2945,2913,2878,2842,2793,2738,2698,2659,
+2604,2543,2484,2432,2382,2331,2284,2236,2185,2149,2112,2074,2054,2038,2018,1997,1977,1955,1928,1906,
+1892,1881,1870,1855,1836,1822,1806,1795,1801,1809,1811,1811,1810,1803,1791,1781,1775,1772,1768,1757,
+1739,1732,1734,1742,1749,1756,1754,1753,1757,1760,1766,1771,1775,1773,1764,1746,1718,1692,1669,1649,
+1628,1610,1591,1568,1544,1523,1504,1486,1474,1468,1467,1469,1471,1469,1466,1458,1444,1421,1388,1355,
+1328,1304,1281,1253,1222,1203,1196,1198,1201,1196,1190,1184,1180,1179,1178,1169,1139,1084,1010,932,
+858,792,734,686,648,621,606,603,611,624,634,642,658,665,650,629,605,575,537,490,
+445,401,358,329,300,264,229,198,171,148,130,117,105,97,92,88,86,83,71,43,
+5,-28,-55,-80,-104,-127,-149,-170,-194,-219,-236,-229,-242,-264,-318,-369,-412,-447,-478,-504,
+-526,-546,-568,-581,-586,-586,-576,-552,-508,-458,-414,-386,-370,-386,-414,-445,-490,-548,-604,-654,
+-705,-749,-791,-829,-868,-909,-957,-1002,-1043,-1079,-1111,-1137,-1169,-1214,-1257,-1291,-1323,-1350,-1369,-1387,
+-1410,-1435,-1459,-1484,-1519,-1561,-1598,-1629,-1658,-1683,-1702,-1714,-1724,-1735,-1745,-1755,-1759,-1754,-1747,-1744,
+-1748,-1747,-1745,-1750,-1762,-1770,-1763,-1749,-1731,-1723,-1729,-1742,-1754,-1768,-1787,-1806,-1824,-1845,-1868,-1887,
+-1899,-1909,-1914,-1916,-1917,-1915,-1909,-1901,-1892,-1884,-1879,-1877,-1878,-1879,-1883,-1891,-1902,-1921,-1945,-1970,
+-1995,-2016,-2027,-2030,-2038,-2056,-2081,-2109,-2134,-2154,-2171,-2185,-2198,-2190,-2165,-2159,-2173,-2189,-2211,-2220,
+-2217,-2221,-2230,-2227,-2230,-2235,-2239,-2247,-2262,-2252,-2233,-2227,-2225,-2211,-2204,-2203,-2187,-2171,-2169,-2192,
+-2199,-2227,-2246,-2253,-2256,-2263,-2272,-2286,-2295,-2286,-2264,-2250,-2236,-2219,-2207,-2213,-2216,-2212,-2210,-2210,
+-2211,-2220,-2231,-2231,-2204,-2179,-2165,-2142,-2121,-2106,-2085,-2069,-2065,-2058,-2051,-2044,-2037,-2027,-2019,-2007,
+-1987,-1963,-1942,-1924,-1904,-1882,-1860,-1838,-1815,-1787,-1760,-1732,-1708,-1695,-1688,-1682,-1674,-1662,-1650,-1636,
+-1618,-1592,-1566,-1547,-1537,-1537,-1540,-1537,-1522,-1513,-1504,-1498,-1501,-1501,-1496,-1498,-1503,-1506,-1514,-1529,
+-1541,-1552,-1561,-1568,-1567,-1559,-1547,-1531,-1511,-1495,-1483,-1476,-1473,-1475,-1478,-1481,-1481,-1479,-1474,-1468,
+-1463,-1457,-1452,-1453,-1458,-1462,-1462,-1460,-1464,-1472,-1481,-1486,-1488,-1489,-1485,-1472,-1456,-1431,-1396,-1342,
+-1259,-1164,-1093,-1009,-914,-815,-730,-648,-585,-517,-459,-416,-396,-384,-374,-371,-382,-391,-395,-400,
+-407,-415,-439,-436,-411,-383,-363,-346,-328,-301,-253,-214,-185,-156,-127,-96,-59,-20,7,34,
+73,114,127,124,122,132,156,195,236,278,307,328,357,387,414,439,469,509,539,555,
+559,555,567,573,571,564,561,554,552,548,546,549,568,594,623,657,694,734,767,800,
+831,866,904,933,934,915,876,839,803,755,701,654,611,572,537,510,489,473,468,478,
+503,534,563,593,630,659,672,683,690,683,686,706,721,731,740,748,754,759,762,757,
+747,740,738,744,761,779,794,801,811,817,825,831,835,835,841,861,880,889,899,908,
+921,939,955,966,978,984,992,995,997,1006,1023,1032,1028,1036,1044,1037,1029,1027,1014,1015,
+1015,1003,1004,993,980,977,971,980,994,986,958,936,929,909,887,875,852,850,850,840,
+839,835,815,802,789,771,741,722,700,664,628,605,587,579,593,628,663,671,617,551,
+530,539,548,552,551,541,529,515,503,501,507,511,510,500,489,479,468,458,445,421,
+395,379,377,369,361,362,372,386,395,391,381,371,364,357,350,344,338,335,333,336,
+343,351,359,369,374,373,366,365,372,379,375,368,369,377,379,373,357,344,343,345,
+362,373,383,390,401,415,426,435,443,451,461,470,480,488,493,500,509,514,519,526,
+531,540,552,567,574,582,591,603,621,624,629,644,652,664,673,690,713,738,766,770,
+758,757,785,795,795,784,787,788,786,782,784,787,794,811,838,846,855,872,892,895,
+902,929,948,944,961,971,982,987,996,1000,1014,1012,997,994,968,943,928,942,947,933,
+928,926,939,953,958,954,957,951,945,932,903,881,869,869,868,870,877,880,875,867,
+857,853,848,848,841,834,834,832,825,835,845,847,853,861,856,854,852,845,833,815,
+780,744,726,695,660,633,621,606,590,566,539,516,500,510,516,506,466,404,342,289,
+235,182,127,77,27,-16,-66,-116,-168,-220,-264,-300,-335,-372,-407,-444,-479,-511,-541,-567,
+-588,-605,-620,-632,-643,-654,-677,-694,-703,-710,-731,-766,-802,-838,-883,-930,-980,-1035,-1079,-1115,
+-1148,-1180,-1205,-1236,-1276,-1314,-1347,-1383,-1417,-1454,-1492,-1531,-1580,-1614,-1640,-1663,-1683,-1700,-1715,-1728,
+-1743,-1760,-1781,-1802,-1817,-1819,-1825,-1831,-1833,-1838,-1844,-1845,-1842,-1840,-1855,-1886,-1924,-1960,-1997,-2040,
+-2080,-2112,-2141,-2169,-2199,-2232,-2261,-2306,-2345,-2375,-2404,-2437,-2471,-2503,-2538,-2574,-2617,-2660,-2708,-2757,
+-2804,-2852,-2899,-2941,-2982,-3017,-3054,-3089,-3130,-3168,-3203,-3230,-3255,-3287,-3324,-3360,-3391,-3416,-3444,-3477,
+-3510,-3541,-3568,-3592,-3610,-3625,-3642,-3662,-3679,-3694,-3709,-3726,-3742,-3753,-3763,-3777,-3789,-3801,-3814,-3830,
+-3848,-3864,-3873,-3880,-3887,-3888,-3885,-3877,-3867,-3853,-3837,-3820,-3795,-3771,-3751,-3729,-3703,-3677,-3657,-3640,
+-3630,-3619,-3611,-3607,-3601,-3599,-3594,-3590,-3588,-3592,-3592,-3594,-3594,-3589,-3580,-3571,-3561,-3550,-3533,-3506,
+-3484,-3462,-3444,-3430,-3417,-3406,-3398,-3397,-3398,-3401,-3406,-3411,-3415,-3418,-3418,-3408,-3397,-3387,-3385,-3376,
+-3359,-3346,-3341,-3348,-3355,-3344,-3328,-3311,-3296,-3279,-3261,-3243,-3224,-3205,-3185,-3164,-3140,-3115,-3089,-3061,
+-3030,-2999,-2965,-2932,-2903,-2869,-2831,-2792,-2751,-2711,-2672,-2634,-2598,-2563,-2530,-2498,-2466,-2432,-2396,-2360,
+-2323,-2283,-2236,-2186,-2136,-2079,-2020,-1962,-1906,-1855,-1806,-1759,-1708,-1650,-1587,-1523,-1458,-1391,-1325,-1260,
+-1194,-1125,-1058,-995,-938,-872,-794,-706,-617,-521,-418,-308,-192,-67,69,201,300,400,503,599,
+664,732,766,778,814,821,833,852,883,921,980,1060,1169,1304,1453,1593,1703,1778,1827,1871,
+1919,1967,2007,2040,2060,2075,2090,2113,2146,2193,2252,2319,2401,2482,2554,2626,2691,2749,2792,2814,
+2824,2838,2863,2893,2938,2996,3056,3098,3165,3198,3200,3245,3303,3326,3337,3341,3360,3396,3451,3515,
+3576,3631,3686,3750,3819,3897,3981,4063,4137,4203,4266,4319,4367,4407,4445,4482,4523,4570,4617,4662,
+4706,4752,4797,4832,4860,4876,4877,4858,4820,4788,4776,4769,4765,4766,4774,4791,4814,4837,4866,4893,
+4923,4949,4954,4952,4939,4913,4916,4985,5057,5104,5166,5203,5249,5293,5309,5342,5386,5444,5500,5562,
+5624,5671,5704,5723,5739,5753,5763,5772,5777,5795,5826,5852,5872,5890,5910,5935,5963,5991,6014,6032,
+6047,6058,6069,6078,6081,6087,6100,6111,6122,6144,6173,6202,6229,6261,6289,6313,6336,6354,6366,6373,
+6382,6397,6426,6462,6485,6479,6474,6491,6525,6547,6534,6514,6508,6513,6522,6540,6562,6572,6569,6573,
+6593,6619,6629,6605,6597,6608,6582,6548,6552,6561,6535,6523,6533,6539,6527,6508,6482,6457,6432,6397,
+6365,6343,6328,6319,6313,6302,6286,6264,6238,6208,6169,6108,6046,5996,5955,5918,5882,5858,5840,5825,
+5803,5782,5754,5718,5674,5630,5589,5548,5506,5467,5430,5402,5380,5366,5360,5367,5376,5361,5314,5279,
+5237,5189,5167,5179,5202,5200,5184,5165,5157,5144,5121,5100,5079,5072,5066,5055,5053,5043,5053,5041,
+5022,5000,4970,4934,4892,4839,4788,4735,4697,4675,4650,4609,4569,4527,4493,4477,4461,4428,4386,4362,
+4353,4350,4344,4326,4297,4266,4240,4216,4191,4165,4128,4090,4058,4023,3992,3969,3953,3943,3929,3915,
+3902,3892,3877,3860,3835,3779,3720,3664,3619,3589,3547,3499,3475,3450,3402,3384,3347,3312,3271,3249,
+3224,3215,3193,3166,3144,3112,3082,3060,3042,3013,2979,2952,2931,2898,2859,2823,2776,2733,2682,2630,
+2576,2530,2475,2420,2366,2310,2253,2204,2160,2120,2096,2071,2037,2007,1981,1960,1930,1904,1891,1883,
+1871,1859,1851,1833,1819,1801,1788,1777,1782,1807,1817,1824,1827,1826,1819,1809,1801,1792,1782,1772,
+1759,1744,1731,1722,1716,1717,1724,1736,1750,1762,1771,1784,1797,1802,1806,1802,1793,1779,1762,1739,
+1711,1683,1651,1620,1596,1571,1540,1508,1478,1450,1428,1410,1397,1392,1393,1396,1397,1395,1391,1386,
+1371,1348,1321,1294,1269,1247,1229,1220,1218,1220,1220,1214,1205,1198,1190,1178,1155,1115,1059,994,
+927,862,801,747,701,665,636,615,603,600,606,616,624,629,638,630,615,598,577,548,
+511,463,419,378,344,310,271,233,206,185,166,150,135,119,106,90,70,55,48,58,
+52,27,-8,-44,-79,-115,-150,-184,-213,-238,-257,-263,-251,-270,-311,-340,-359,-374,-390,-408,
+-420,-433,-449,-467,-463,-455,-428,-400,-377,-343,-304,-318,-369,-407,-439,-478,-530,-599,-675,-740,
+-797,-842,-877,-904,-933,-964,-988,-1009,-1036,-1068,-1096,-1123,-1156,-1195,-1236,-1272,-1304,-1327,-1351,-1378,
+-1405,-1434,-1466,-1495,-1521,-1549,-1587,-1627,-1660,-1686,-1706,-1727,-1744,-1757,-1769,-1779,-1789,-1795,-1797,-1797,
+-1797,-1797,-1796,-1794,-1795,-1800,-1805,-1802,-1793,-1780,-1772,-1774,-1783,-1797,-1808,-1822,-1839,-1862,-1892,-1920,
+-1942,-1953,-1959,-1963,-1967,-1969,-1969,-1962,-1952,-1937,-1923,-1914,-1912,-1913,-1918,-1927,-1940,-1956,-1976,-2003,
+-2036,-2062,-2084,-2097,-2101,-2105,-2114,-2136,-2165,-2190,-2213,-2229,-2239,-2242,-2239,-2237,-2248,-2250,-2247,-2255,
+-2258,-2248,-2239,-2235,-2242,-2254,-2260,-2267,-2276,-2301,-2310,-2305,-2279,-2253,-2236,-2217,-2207,-2218,-2220,-2207,
+-2211,-2227,-2273,-2308,-2329,-2329,-2336,-2327,-2337,-2342,-2343,-2331,-2318,-2301,-2281,-2271,-2272,-2269,-2276,-2284,
+-2287,-2284,-2279,-2283,-2271,-2255,-2245,-2233,-2208,-2182,-2162,-2148,-2129,-2103,-2093,-2087,-2080,-2078,-2076,-2070,
+-2064,-2050,-2030,-2011,-1994,-1975,-1951,-1929,-1905,-1880,-1849,-1816,-1783,-1754,-1737,-1731,-1730,-1725,-1718,-1701,
+-1677,-1650,-1625,-1603,-1588,-1575,-1565,-1563,-1555,-1542,-1532,-1532,-1532,-1536,-1541,-1546,-1559,-1576,-1594,-1611,
+-1624,-1631,-1637,-1645,-1652,-1652,-1644,-1629,-1610,-1595,-1582,-1572,-1564,-1559,-1558,-1561,-1562,-1557,-1553,-1554,
+-1552,-1544,-1532,-1521,-1519,-1520,-1523,-1529,-1536,-1542,-1549,-1557,-1561,-1563,-1561,-1556,-1547,-1533,-1508,-1468,
+-1415,-1347,-1252,-1138,-1033,-945,-861,-782,-708,-633,-561,-498,-455,-424,-400,-382,-374,-373,-382,-394,
+-399,-407,-412,-406,-403,-389,-366,-347,-333,-311,-268,-236,-204,-169,-142,-116,-84,-55,-19,19,
+43,74,98,112,131,152,177,193,203,236,270,299,336,368,412,446,465,488,512,540,
+558,564,578,572,571,570,565,563,560,559,561,582,598,604,613,629,649,671,698,731,
+762,789,818,853,899,944,971,961,937,919,893,864,825,777,721,660,593,537,500,484,
+494,520,550,580,614,658,698,719,725,727,729,735,746,757,763,769,774,784,805,815,
+796,771,766,771,777,790,810,829,840,845,853,862,867,868,871,883,898,917,942,963,
+980,989,994,994,993,993,996,1002,1012,1017,1027,1035,1045,1050,1055,1059,1058,1056,1046,1044,
+1048,1044,1033,1012,1016,1026,1019,1015,986,981,989,974,959,934,914,902,885,857,854,853,
+843,823,810,793,783,759,736,722,707,673,637,613,597,580,582,606,650,671,620,567,
+534,518,513,519,532,538,528,513,502,495,490,483,480,477,475,475,472,465,458,449,
+436,417,385,372,372,373,373,373,371,369,364,356,353,357,360,363,367,369,367,362,
+359,362,365,364,369,372,371,371,375,384,392,396,399,394,381,370,363,355,359,365,
+374,384,391,398,411,426,441,457,472,485,499,513,525,545,561,572,585,591,595,601,
+612,612,607,614,627,646,649,659,666,679,678,678,699,713,703,701,711,724,739,756,
+773,784,792,807,813,820,819,821,816,812,807,805,807,816,827,845,867,884,884,892,
+905,918,939,953,967,981,980,989,1004,1022,1039,1056,1071,1077,1092,1086,1088,1060,1024,1021,
+1026,1033,1038,1039,1045,1050,1061,1076,1078,1072,1066,1057,1049,1047,1042,1028,1012,1017,1016,991,
+959,931,924,924,924,920,909,902,894,877,881,896,900,898,898,901,904,906,893,878,
+878,864,841,814,775,741,713,689,665,642,612,577,543,514,491,474,457,417,383,373,
+362,325,281,244,211,171,142,114,79,35,-23,-78,-129,-180,-232,-273,-318,-367,-413,-455,
+-491,-525,-555,-582,-610,-636,-658,-674,-685,-704,-731,-753,-773,-810,-848,-883,-922,-966,-1007,-1053,
+-1089,-1119,-1158,-1196,-1229,-1269,-1304,-1334,-1371,-1427,-1476,-1514,-1551,-1588,-1618,-1644,-1665,-1685,-1700,-1712,
+-1721,-1736,-1759,-1788,-1813,-1833,-1850,-1860,-1867,-1866,-1865,-1864,-1867,-1877,-1882,-1893,-1920,-1954,-1993,-2032,
+-2071,-2111,-2144,-2165,-2185,-2207,-2237,-2273,-2305,-2334,-2368,-2406,-2446,-2479,-2512,-2549,-2586,-2626,-2668,-2716,
+-2768,-2821,-2871,-2916,-2954,-2998,-3042,-3087,-3128,-3168,-3201,-3228,-3251,-3275,-3301,-3328,-3362,-3391,-3414,-3443,
+-3475,-3507,-3541,-3574,-3601,-3619,-3639,-3659,-3675,-3692,-3711,-3727,-3744,-3761,-3779,-3798,-3815,-3829,-3847,-3865,
+-3882,-3897,-3909,-3917,-3924,-3930,-3929,-3923,-3917,-3911,-3904,-3892,-3876,-3855,-3835,-3812,-3789,-3767,-3740,-3716,
+-3696,-3685,-3677,-3665,-3656,-3650,-3649,-3643,-3634,-3624,-3614,-3606,-3602,-3604,-3609,-3611,-3603,-3597,-3602,-3608,
+-3609,-3595,-3572,-3544,-3522,-3503,-3487,-3478,-3472,-3470,-3470,-3473,-3475,-3470,-3464,-3455,-3446,-3442,-3432,-3427,
+-3445,-3438,-3414,-3404,-3401,-3404,-3414,-3416,-3398,-3379,-3361,-3340,-3317,-3291,-3265,-3242,-3217,-3191,-3163,-3131,
+-3101,-3071,-3041,-3010,-2977,-2943,-2908,-2868,-2827,-2782,-2737,-2692,-2651,-2611,-2575,-2540,-2508,-2478,-2444,-2408,
+-2370,-2331,-2289,-2246,-2199,-2143,-2084,-2025,-1963,-1901,-1851,-1805,-1755,-1699,-1638,-1574,-1509,-1448,-1386,-1327,
+-1266,-1202,-1136,-1076,-1019,-968,-914,-850,-775,-696,-612,-525,-437,-343,-234,-111,19,159,283,385,
+463,538,594,610,632,658,687,706,734,770,817,884,982,1113,1264,1417,1550,1650,1726,1791,
+1854,1911,1938,1962,1986,2018,2049,2070,2097,2134,2177,2227,2285,2352,2431,2514,2605,2683,2741,2786,
+2815,2836,2847,2850,2864,2884,2915,2960,3010,3042,3074,3063,3074,3096,3117,3144,3181,3242,3301,3370,
+3447,3526,3600,3667,3735,3811,3895,3975,4052,4133,4215,4289,4351,4401,4440,4472,4503,4539,4585,4629,
+4673,4712,4743,4768,4791,4813,4829,4830,4819,4795,4765,4742,4726,4717,4715,4717,4719,4718,4713,4731,
+4754,4780,4803,4836,4860,4856,4859,4906,4955,4998,5050,5103,5153,5214,5265,5321,5387,5451,5515,5579,
+5627,5667,5698,5721,5739,5753,5764,5775,5789,5810,5827,5851,5878,5904,5927,5951,5979,6005,6025,6041,
+6048,6046,6038,6038,6044,6060,6078,6098,6120,6145,6176,6214,6249,6278,6303,6324,6342,6359,6373,6387,
+6402,6416,6439,6467,6494,6518,6548,6555,6549,6566,6586,6579,6571,6561,6556,6565,6577,6600,6625,6631,
+6621,6651,6700,6711,6705,6674,6645,6651,6618,6603,6606,6603,6588,6583,6589,6595,6582,6562,6530,6481,
+6443,6403,6364,6336,6315,6305,6300,6295,6285,6268,6241,6206,6152,6089,6033,5986,5951,5922,5901,5872,
+5839,5809,5785,5758,5724,5685,5644,5604,5566,5529,5494,5466,5439,5418,5412,5422,5431,5409,5361,5299,
+5236,5195,5201,5225,5240,5244,5219,5188,5166,5156,5152,5144,5125,5105,5093,5083,5073,5063,5053,5075,
+5059,5038,5014,4986,4955,4924,4888,4840,4790,4735,4685,4631,4580,4532,4493,4470,4462,4449,4423,4396,
+4373,4358,4350,4334,4300,4257,4217,4186,4164,4146,4116,4080,4053,4030,4007,3987,3973,3962,3953,3943,
+3933,3925,3920,3910,3884,3839,3780,3726,3684,3641,3608,3584,3547,3496,3461,3415,3378,3355,3316,3274,
+3231,3199,3176,3140,3115,3092,3064,3038,3016,2993,2974,2957,2937,2905,2871,2845,2801,2761,2718,2666,
+2604,2547,2481,2413,2353,2297,2239,2185,2130,2091,2059,2021,1989,1963,1942,1918,1891,1868,1858,1853,
+1844,1833,1826,1815,1806,1797,1783,1768,1759,1769,1786,1799,1813,1822,1824,1822,1818,1809,1797,1780,
+1760,1739,1724,1713,1708,1704,1706,1709,1716,1729,1743,1757,1769,1781,1793,1800,1805,1809,1807,1797,
+1783,1764,1741,1709,1668,1628,1595,1564,1530,1500,1471,1439,1407,1377,1352,1333,1326,1325,1332,1340,
+1341,1333,1322,1303,1283,1263,1239,1219,1204,1194,1187,1178,1164,1144,1125,1106,1084,1057,1023,986,
+949,909,865,814,758,707,666,636,615,604,600,605,612,618,619,623,627,619,610,593,
+567,535,495,452,410,365,319,276,243,220,201,183,162,140,119,101,83,64,50,42,
+37,34,27,10,-18,-55,-100,-153,-199,-235,-261,-281,-292,-282,-287,-308,-294,-278,-258,-274,
+-274,-293,-305,-320,-313,-291,-258,-227,-221,-258,-310,-369,-429,-472,-513,-559,-612,-667,-727,-789,
+-843,-890,-927,-949,-955,-966,-980,-1000,-1026,-1063,-1104,-1137,-1169,-1201,-1226,-1252,-1281,-1303,-1324,-1348,
+-1379,-1414,-1449,-1484,-1513,-1538,-1566,-1602,-1636,-1667,-1692,-1713,-1730,-1743,-1761,-1776,-1787,-1798,-1809,-1819,
+-1829,-1834,-1835,-1832,-1828,-1827,-1830,-1832,-1834,-1835,-1831,-1825,-1820,-1816,-1821,-1836,-1856,-1880,-1908,-1941,
+-1974,-2000,-2013,-2016,-2015,-2013,-2014,-2013,-2009,-1999,-1983,-1968,-1959,-1955,-1954,-1956,-1961,-1971,-1989,-2012,
+-2039,-2073,-2106,-2125,-2134,-2139,-2149,-2159,-2175,-2199,-2224,-2251,-2267,-2279,-2275,-2251,-2235,-2237,-2243,-2259,
+-2246,-2234,-2225,-2219,-2223,-2230,-2235,-2239,-2253,-2288,-2317,-2341,-2350,-2340,-2318,-2293,-2273,-2268,-2266,-2284,
+-2301,-2306,-2315,-2339,-2356,-2375,-2396,-2405,-2408,-2404,-2382,-2360,-2351,-2341,-2323,-2305,-2301,-2301,-2305,-2306,
+-2311,-2317,-2335,-2332,-2341,-2339,-2325,-2317,-2305,-2288,-2260,-2225,-2191,-2161,-2134,-2109,-2095,-2089,-2088,-2097,
+-2095,-2085,-2083,-2078,-2065,-2049,-2033,-2017,-1999,-1978,-1949,-1913,-1872,-1843,-1824,-1809,-1794,-1783,-1773,-1760,
+-1744,-1729,-1713,-1692,-1668,-1641,-1617,-1600,-1592,-1588,-1587,-1590,-1592,-1593,-1593,-1602,-1618,-1637,-1655,-1678,
+-1703,-1721,-1728,-1731,-1733,-1730,-1725,-1716,-1699,-1681,-1666,-1659,-1656,-1653,-1647,-1642,-1638,-1632,-1626,-1623,
+-1616,-1602,-1588,-1578,-1577,-1585,-1589,-1590,-1593,-1600,-1609,-1618,-1625,-1629,-1635,-1638,-1637,-1628,-1610,-1582,
+-1541,-1485,-1409,-1313,-1203,-1100,-1020,-953,-889,-808,-707,-618,-545,-479,-436,-398,-380,-372,-368,-379,
+-392,-395,-391,-384,-380,-377,-367,-340,-310,-296,-280,-239,-205,-175,-141,-118,-90,-56,-30,-17,
+-2,18,36,62,97,123,152,172,187,204,224,255,282,319,355,392,428,459,474,505,
+534,572,597,630,633,631,646,658,652,654,650,650,690,706,726,744,738,737,743,763,
+804,835,852,865,851,834,846,887,932,967,977,962,946,927,907,860,781,667,582,536,
+525,537,562,592,623,653,691,725,741,741,734,734,746,759,768,781,797,805,801,801,
+803,800,799,805,816,831,849,870,888,896,901,913,925,926,919,918,923,924,930,938,
+956,978,999,1014,1031,1038,1046,1045,1051,1054,1053,1058,1061,1064,1076,1082,1087,1084,1075,1071,
+1068,1073,1068,1062,1057,1058,1045,1032,1016,1001,984,959,949,947,921,905,908,916,913,893,
+870,838,817,805,793,764,731,694,680,685,665,647,639,622,611,625,659,670,639,611,
+582,549,532,522,515,512,504,491,481,482,486,488,483,482,487,492,491,481,469,458,
+445,429,406,386,371,373,379,377,370,358,354,329,302,311,326,344,361,380,393,397,
+396,398,398,392,385,381,380,381,388,396,397,405,411,414,414,409,403,397,397,400,
+406,418,419,411,408,420,440,461,484,516,532,540,553,569,582,589,601,627,638,650,
+644,633,614,615,630,649,659,675,693,703,722,718,721,744,774,766,767,783,796,798,
+797,806,819,820,832,833,841,846,840,835,834,835,837,843,851,873,896,910,923,940,
+956,966,977,981,992,990,993,1014,1023,1024,1020,1035,1055,1075,1090,1086,1069,1058,1051,1063,
+1075,1071,1062,1063,1050,1055,1066,1083,1106,1124,1135,1139,1134,1145,1131,1121,1127,1120,1098,1065,
+1017,979,968,970,979,991,996,986,970,951,940,946,949,952,940,948,954,968,974,968,
+946,948,947,931,900,861,831,821,813,785,748,704,668,643,602,554,508,481,467,449,
+447,466,448,426,404,374,375,372,357,319,274,223,178,118,48,-7,-51,-97,-144,-195,
+-256,-313,-365,-410,-457,-507,-564,-619,-668,-692,-716,-745,-771,-808,-841,-877,-917,-949,-972,-988,
+-1021,-1064,-1103,-1145,-1185,-1222,-1260,-1305,-1357,-1401,-1444,-1483,-1518,-1551,-1577,-1588,-1603,-1638,-1675,-1693,
+-1701,-1705,-1719,-1749,-1789,-1827,-1852,-1872,-1884,-1889,-1894,-1896,-1894,-1895,-1911,-1926,-1943,-1977,-2019,-2059,
+-2086,-2100,-2129,-2168,-2195,-2215,-2230,-2257,-2295,-2332,-2371,-2409,-2445,-2476,-2505,-2539,-2574,-2613,-2651,-2689,
+-2731,-2780,-2832,-2884,-2936,-2984,-3029,-3070,-3122,-3168,-3208,-3242,-3268,-3284,-3296,-3310,-3329,-3353,-3382,-3406,
+-3436,-3466,-3499,-3541,-3581,-3608,-3630,-3644,-3664,-3687,-3710,-3734,-3753,-3771,-3793,-3822,-3846,-3861,-3874,-3890,
+-3904,-3918,-3932,-3943,-3954,-3962,-3966,-3968,-3969,-3968,-3970,-3971,-3962,-3943,-3929,-3918,-3901,-3878,-3856,-3833,
+-3809,-3786,-3769,-3754,-3739,-3726,-3709,-3694,-3682,-3670,-3657,-3650,-3642,-3637,-3634,-3629,-3620,-3613,-3605,-3595,
+-3598,-3609,-3631,-3633,-3624,-3610,-3590,-3571,-3557,-3551,-3551,-3550,-3542,-3532,-3521,-3508,-3497,-3488,-3483,-3479,
+-3472,-3473,-3481,-3479,-3471,-3465,-3457,-3462,-3469,-3468,-3457,-3440,-3421,-3401,-3375,-3345,-3316,-3285,-3254,-3222,
+-3191,-3158,-3124,-3091,-3058,-3022,-2986,-2944,-2900,-2854,-2809,-2762,-2715,-2671,-2629,-2588,-2550,-2516,-2483,-2448,
+-2412,-2373,-2331,-2287,-2245,-2198,-2144,-2086,-2025,-1962,-1903,-1850,-1797,-1742,-1683,-1620,-1553,-1484,-1420,-1361,
+-1305,-1247,-1187,-1130,-1069,-1010,-957,-903,-843,-786,-726,-667,-607,-545,-477,-397,-296,-170,-31,110,
+234,324,391,450,479,490,505,532,569,611,662,719,794,910,1052,1199,1342,1466,1570,1663,
+1739,1808,1846,1873,1903,1933,1971,2004,2034,2073,2113,2159,2207,2259,2316,2382,2457,2545,2639,2719,
+2771,2801,2828,2840,2836,2838,2846,2842,2836,2854,2888,2909,2933,2963,2994,3036,3076,3124,3195,3275,
+3353,3425,3512,3602,3687,3771,3860,3960,4047,4114,4190,4266,4329,4386,4436,4473,4503,4541,4585,4626,
+4660,4694,4725,4751,4773,4793,4814,4831,4834,4815,4793,4766,4735,4703,4676,4655,4643,4625,4604,4583,
+4560,4556,4574,4602,4647,4691,4738,4795,4866,4927,5003,5085,5140,5192,5253,5327,5405,5479,5545,5596,
+5630,5655,5682,5715,5735,5746,5754,5757,5759,5763,5771,5792,5822,5857,5892,5927,5959,5986,6009,6022,
+6022,6011,5998,5992,5994,6009,6038,6068,6095,6126,6167,6210,6252,6290,6317,6342,6361,6376,6390,6404,
+6418,6433,6458,6474,6498,6514,6522,6524,6537,6559,6579,6591,6601,6596,6584,6589,6616,6615,6630,6651,
+6667,6662,6675,6724,6737,6733,6734,6701,6702,6674,6649,6631,6624,6618,6610,6612,6611,6600,6582,6570,
+6560,6500,6451,6431,6399,6358,6327,6307,6298,6287,6266,6244,6214,6169,6114,6064,6022,5986,5950,5917,
+5885,5853,5821,5791,5764,5733,5698,5661,5625,5589,5557,5531,5513,5500,5494,5482,5461,5435,5393,5323,
+5257,5240,5267,5283,5271,5254,5240,5213,5192,5177,5161,5149,5147,5141,5124,5108,5099,5096,5088,5075,
+5081,5061,5041,5014,4987,4960,4927,4891,4850,4807,4756,4697,4637,4586,4541,4499,4471,4457,4450,4434,
+4409,4383,4358,4337,4311,4278,4234,4188,4151,4123,4098,4071,4045,4024,4010,4001,3996,3986,3977,3974,
+3972,3966,3960,3946,3920,3888,3842,3793,3746,3702,3663,3630,3614,3575,3551,3530,3482,3427,3368,3311,
+3261,3234,3197,3144,3106,3071,3036,3009,2996,2984,2957,2929,2900,2873,2852,2821,2790,2746,2703,2646,
+2588,2535,2478,2413,2351,2289,2228,2168,2110,2050,2006,1974,1937,1905,1879,1867,1849,1830,1811,1799,
+1795,1798,1803,1803,1804,1794,1786,1770,1751,1739,1739,1747,1760,1777,1795,1812,1818,1820,1816,1805,
+1789,1766,1739,1716,1698,1685,1684,1694,1701,1710,1717,1723,1728,1736,1746,1755,1763,1775,1782,1786,
+1790,1788,1782,1769,1752,1725,1690,1654,1616,1577,1540,1509,1472,1432,1394,1361,1330,1305,1288,1278,
+1273,1269,1264,1260,1255,1247,1232,1210,1187,1170,1150,1125,1098,1067,1038,1015,996,977,958,936,
+914,890,867,838,806,768,729,695,670,654,640,629,626,629,632,633,635,631,631,634,
+627,603,568,531,493,447,400,350,307,269,233,205,180,155,130,104,82,68,57,47,
+37,26,13,3,-2,-13,-33,-73,-122,-177,-218,-246,-265,-277,-275,-253,-240,-216,-189,-148,
+-113,-112,-114,-150,-183,-178,-163,-205,-251,-308,-362,-413,-456,-502,-550,-606,-656,-700,-761,-827,
+-884,-932,-973,-987,-983,-979,-986,-1005,-1038,-1073,-1108,-1149,-1184,-1208,-1232,-1256,-1275,-1289,-1303,-1321,
+-1346,-1379,-1415,-1450,-1486,-1518,-1545,-1568,-1595,-1630,-1663,-1686,-1705,-1723,-1741,-1757,-1771,-1785,-1797,-1814,
+-1837,-1856,-1869,-1879,-1881,-1880,-1880,-1883,-1887,-1888,-1887,-1885,-1882,-1876,-1870,-1866,-1875,-1897,-1930,-1966,
+-1998,-2025,-2048,-2062,-2066,-2064,-2059,-2051,-2045,-2040,-2033,-2023,-2010,-2000,-1994,-1992,-1996,-2002,-2010,-2026,
+-2047,-2075,-2105,-2136,-2167,-2188,-2199,-2202,-2206,-2216,-2233,-2254,-2277,-2287,-2298,-2292,-2264,-2239,-2233,-2238,
+-2246,-2229,-2216,-2210,-2205,-2211,-2223,-2238,-2257,-2294,-2332,-2360,-2380,-2387,-2398,-2413,-2406,-2389,-2374,-2365,
+-2360,-2362,-2378,-2397,-2406,-2407,-2404,-2417,-2423,-2428,-2423,-2431,-2435,-2415,-2377,-2342,-2317,-2305,-2301,-2309,
+-2317,-2331,-2356,-2380,-2400,-2414,-2415,-2408,-2404,-2380,-2351,-2321,-2293,-2261,-2219,-2185,-2165,-2151,-2138,-2124,
+-2117,-2120,-2118,-2118,-2104,-2092,-2081,-2072,-2067,-2058,-2041,-2018,-1991,-1961,-1935,-1911,-1892,-1878,-1864,-1849,
+-1830,-1807,-1786,-1775,-1766,-1751,-1726,-1701,-1680,-1662,-1648,-1642,-1640,-1643,-1643,-1647,-1661,-1680,-1703,-1729,
+-1755,-1776,-1794,-1805,-1805,-1802,-1798,-1792,-1782,-1768,-1753,-1741,-1734,-1728,-1721,-1714,-1704,-1694,-1687,-1680,
+-1674,-1668,-1662,-1660,-1661,-1667,-1670,-1668,-1666,-1665,-1667,-1672,-1678,-1685,-1689,-1692,-1695,-1693,-1681,-1661,
+-1630,-1585,-1524,-1447,-1366,-1270,-1161,-1068,-991,-914,-832,-751,-670,-591,-525,-482,-451,-418,-392,-378,
+-373,-376,-372,-370,-363,-357,-342,-318,-292,-269,-242,-225,-201,-167,-134,-105,-68,-42,-20,-1,
+15,31,44,66,99,130,156,179,201,231,250,265,285,308,337,357,375,392,413,434,
+459,502,549,590,601,613,639,658,678,689,683,681,677,680,701,736,775,781,796,814,
+834,873,911,936,937,932,862,832,864,931,996,1034,1039,1027,998,979,939,862,742,646,
+597,582,590,611,634,657,684,715,738,749,755,756,769,786,795,800,809,812,811,823,
+823,819,828,848,873,894,899,899,913,913,909,917,935,947,943,935,945,953,979,977,
+960,948,950,956,969,993,1024,1044,1069,1091,1105,1111,1108,1112,1128,1125,1109,1094,1086,1089,
+1103,1104,1106,1096,1085,1069,1062,1057,1046,1021,999,979,959,933,912,913,922,928,920,910,
+884,848,823,799,782,741,701,678,682,696,698,703,710,699,686,668,667,668,655,620,
+603,575,557,553,544,534,521,511,504,492,492,497,500,504,510,517,514,499,472,449,
+434,423,405,390,379,384,391,389,388,387,385,384,370,358,342,318,329,363,385,404,
+414,420,426,431,432,423,415,413,416,420,422,420,423,430,427,424,424,425,422,421,
+429,438,442,441,442,442,444,456,471,491,512,532,551,568,585,602,615,618,621,627,
+639,649,654,674,701,714,707,705,725,737,738,731,727,740,761,776,790,797,814,827,
+840,845,853,862,865,864,875,880,881,874,863,863,866,878,895,912,933,954,973,986,
+999,1004,1023,1044,1047,1032,1033,1011,1013,1016,1012,1024,1040,1059,1064,1066,1070,1080,1095,1101,
+1103,1104,1092,1071,1063,1053,1060,1079,1113,1119,1128,1129,1129,1133,1139,1144,1149,1142,1134,1123,
+1121,1123,1107,1102,1111,1104,1082,1064,1035,1010,1003,998,991,992,993,1003,1018,1005,989,989,
+994,982,969,962,960,954,945,913,890,869,848,819,792,781,764,735,709,663,608,590,
+589,595,576,564,572,583,559,532,543,549,518,502,468,417,361,272,253,225,179,129,
+82,27,-46,-105,-163,-239,-326,-409,-479,-556,-629,-697,-756,-795,-820,-837,-889,-938,-981,-1005,
+-1011,-1032,-1059,-1091,-1129,-1170,-1208,-1251,-1299,-1345,-1387,-1427,-1467,-1502,-1524,-1530,-1554,-1593,-1626,-1643,
+-1659,-1680,-1711,-1751,-1791,-1822,-1847,-1875,-1898,-1913,-1919,-1924,-1928,-1927,-1935,-1964,-1981,-2011,-2052,-2085,
+-2108,-2127,-2145,-2165,-2195,-2230,-2258,-2272,-2291,-2332,-2375,-2411,-2447,-2482,-2517,-2550,-2585,-2620,-2653,-2685,
+-2723,-2763,-2805,-2850,-2901,-2951,-3000,-3046,-3098,-3152,-3202,-3242,-3277,-3312,-3334,-3343,-3342,-3351,-3370,-3393,
+-3419,-3447,-3477,-3513,-3550,-3580,-3607,-3630,-3651,-3676,-3706,-3736,-3764,-3787,-3812,-3837,-3863,-3888,-3906,-3922,
+-3936,-3954,-3967,-3981,-3994,-4000,-4008,-4014,-4019,-4024,-4030,-4031,-4025,-4016,-4006,-3995,-3980,-3965,-3948,-3928,
+-3908,-3885,-3864,-3843,-3822,-3804,-3786,-3765,-3751,-3738,-3726,-3712,-3701,-3696,-3687,-3686,-3682,-3674,-3666,-3654,
+-3644,-3634,-3630,-3636,-3636,-3633,-3633,-3632,-3623,-3615,-3608,-3602,-3597,-3589,-3577,-3561,-3540,-3522,-3511,-3501,
+-3491,-3473,-3447,-3444,-3466,-3481,-3483,-3490,-3495,-3500,-3507,-3513,-3509,-3503,-3489,-3462,-3428,-3399,-3367,-3330,
+-3291,-3253,-3213,-3175,-3137,-3101,-3062,-3023,-2980,-2929,-2878,-2828,-2781,-2738,-2693,-2652,-2611,-2572,-2532,-2492,
+-2453,-2416,-2380,-2337,-2290,-2243,-2195,-2143,-2088,-2032,-1969,-1907,-1849,-1797,-1744,-1685,-1622,-1553,-1480,-1406,
+-1341,-1284,-1224,-1162,-1104,-1043,-977,-909,-852,-800,-758,-721,-682,-643,-603,-557,-501,-432,-346,-229,
+-89,53,173,251,313,358,386,400,422,455,502,562,631,727,863,1032,1206,1363,1482,1575,
+1658,1727,1757,1770,1804,1851,1890,1914,1935,1968,2016,2071,2128,2187,2231,2279,2335,2399,2472,2558,
+2648,2727,2781,2815,2830,2826,2819,2805,2781,2765,2764,2779,2810,2849,2896,2950,3002,3055,3114,3195,
+3284,3371,3450,3528,3615,3698,3788,3885,3979,4066,4148,4223,4294,4362,4425,4480,4529,4578,4628,4674,
+4717,4753,4784,4805,4828,4855,4875,4879,4871,4858,4849,4826,4768,4698,4640,4613,4600,4579,4557,4540,
+4520,4493,4495,4512,4541,4592,4654,4709,4761,4845,4948,5033,5111,5180,5246,5323,5400,5476,5541,5587,
+5620,5643,5664,5687,5700,5702,5694,5678,5659,5650,5652,5668,5695,5728,5765,5804,5841,5878,5909,5931,
+5942,5944,5942,5943,5956,5981,6009,6038,6073,6111,6158,6207,6249,6286,6320,6348,6372,6394,6406,6419,
+6432,6444,6453,6466,6483,6498,6513,6524,6536,6550,6565,6586,6614,6622,6624,6620,6615,6627,6648,6659,
+6665,6681,6695,6705,6711,6742,6765,6756,6757,6754,6727,6690,6678,6670,6666,6653,6635,6632,6623,6611,
+6586,6568,6530,6507,6490,6432,6383,6349,6321,6297,6280,6263,6243,6222,6192,6150,6106,6064,6026,5986,
+5942,5905,5873,5846,5818,5778,5746,5716,5685,5660,5637,5620,5605,5594,5574,5540,5503,5462,5399,5325,
+5295,5305,5325,5311,5286,5272,5260,5246,5215,5198,5192,5174,5164,5165,5158,5143,5127,5116,5107,5095,
+5081,5103,5082,5055,5021,4981,4942,4905,4873,4838,4795,4743,4695,4642,4590,4547,4506,4472,4449,4431,
+4409,4384,4358,4337,4322,4292,4249,4197,4153,4116,4089,4068,4052,4036,4027,4020,4014,4009,4009,4006,
+4003,3996,3994,3995,3968,3929,3884,3852,3817,3774,3728,3679,3634,3597,3555,3524,3472,3435,3382,3339,
+3295,3250,3196,3144,3099,3063,3034,3009,2989,2968,2944,2918,2885,2857,2826,2789,2749,2711,2680,2627,
+2577,2525,2469,2410,2341,2274,2217,2165,2114,2058,2002,1952,1912,1888,1866,1841,1833,1823,1814,1795,
+1775,1765,1759,1770,1782,1786,1781,1775,1766,1748,1733,1728,1737,1743,1753,1773,1792,1811,1826,1832,
+1830,1817,1793,1761,1722,1685,1663,1655,1655,1677,1701,1702,1698,1696,1703,1711,1721,1729,1735,1742,
+1749,1751,1751,1751,1752,1745,1732,1716,1694,1660,1617,1574,1536,1494,1450,1408,1376,1352,1333,1312,
+1293,1275,1261,1251,1242,1231,1218,1201,1182,1160,1135,1107,1076,1041,1006,973,944,923,905,889,
+872,856,840,822,803,784,764,745,729,717,706,695,684,676,667,655,644,641,642,639,
+636,636,624,599,567,534,500,454,403,352,309,265,223,188,155,128,103,77,63,53,
+42,29,15,1,-6,-10,-17,-36,-63,-99,-144,-189,-227,-248,-255,-237,-201,-155,-116,-72,
+-42,-12,-1,-32,-81,-120,-153,-174,-211,-286,-374,-442,-489,-526,-561,-603,-648,-697,-751,-806,
+-861,-918,-963,-1000,-1005,-1000,-1005,-1026,-1055,-1089,-1127,-1155,-1188,-1209,-1235,-1260,-1283,-1302,-1320,-1331,
+-1343,-1363,-1386,-1413,-1444,-1477,-1507,-1534,-1563,-1596,-1633,-1664,-1689,-1713,-1734,-1753,-1770,-1784,-1798,-1816,
+-1841,-1870,-1897,-1918,-1930,-1937,-1942,-1948,-1953,-1957,-1964,-1964,-1956,-1950,-1941,-1932,-1925,-1927,-1938,-1960,
+-1989,-2022,-2053,-2075,-2091,-2103,-2110,-2108,-2102,-2092,-2082,-2071,-2059,-2051,-2045,-2041,-2042,-2052,-2065,-2078,
+-2089,-2102,-2119,-2146,-2179,-2214,-2241,-2253,-2257,-2259,-2261,-2269,-2285,-2304,-2310,-2314,-2299,-2276,-2269,-2262,
+-2258,-2257,-2249,-2217,-2196,-2205,-2216,-2210,-2226,-2263,-2302,-2351,-2392,-2421,-2439,-2453,-2468,-2481,-2480,-2463,
+-2448,-2441,-2427,-2427,-2446,-2468,-2488,-2495,-2492,-2484,-2487,-2481,-2458,-2441,-2426,-2428,-2410,-2386,-2368,-2361,
+-2355,-2371,-2394,-2420,-2448,-2471,-2499,-2520,-2517,-2497,-2465,-2444,-2415,-2383,-2343,-2310,-2278,-2246,-2222,-2211,
+-2201,-2192,-2185,-2174,-2171,-2157,-2152,-2147,-2142,-2140,-2133,-2115,-2091,-2064,-2039,-2016,-1997,-1979,-1966,-1948,
+-1928,-1908,-1888,-1868,-1847,-1825,-1812,-1804,-1794,-1775,-1749,-1728,-1715,-1705,-1710,-1721,-1723,-1730,-1744,-1759,
+-1775,-1798,-1820,-1837,-1846,-1852,-1850,-1842,-1832,-1818,-1804,-1794,-1787,-1779,-1769,-1758,-1747,-1738,-1728,-1717,
+-1714,-1720,-1727,-1729,-1729,-1729,-1728,-1726,-1724,-1721,-1720,-1720,-1724,-1731,-1736,-1739,-1739,-1736,-1731,-1719,
+-1696,-1662,-1616,-1555,-1475,-1379,-1281,-1192,-1115,-1027,-934,-849,-765,-684,-615,-551,-506,-471,-441,-420,
+-404,-384,-370,-361,-358,-345,-317,-284,-258,-240,-224,-196,-167,-144,-111,-75,-47,-10,28,56,
+76,86,92,102,115,135,158,190,222,253,279,295,313,333,354,368,383,397,413,423,
+438,465,500,541,566,581,604,637,669,688,701,708,713,695,697,719,764,803,830,849,
+869,879,914,939,969,971,962,928,884,883,915,966,1023,1051,1046,1004,971,947,922,862,
+778,714,683,677,684,695,707,718,730,752,779,794,798,805,816,822,820,823,817,833,
+843,834,839,855,874,898,915,918,926,924,912,916,927,944,946,941,938,941,954,974,
+999,1010,998,997,982,989,999,1013,1034,1065,1096,1113,1122,1125,1116,1129,1131,1127,1140,1142,
+1126,1104,1108,1110,1100,1076,1065,1051,1049,1025,1004,999,995,970,958,944,927,938,946,940,
+914,877,841,808,771,738,710,692,692,705,715,718,716,706,694,688,672,658,657,642,
+617,615,608,585,570,551,523,501,490,478,473,478,491,494,506,518,521,509,491,469,
+447,419,394,381,368,367,372,375,378,382,385,390,396,392,384,390,378,380,393,408,
+420,423,424,422,430,438,446,453,454,452,449,443,436,431,435,434,428,424,422,427,
+435,443,451,453,453,458,469,486,502,519,539,550,571,590,614,644,669,681,693,714,
+723,722,712,706,712,715,721,721,715,703,727,788,792,781,775,785,798,813,827,842,
+865,883,897,909,913,911,912,917,917,909,892,886,893,902,920,941,963,988,1004,1022,
+1015,1029,1016,994,977,971,971,983,994,1010,1014,1011,1008,1019,1030,1042,1063,1073,1075,1065,
+1067,1077,1056,1042,1031,1035,1055,1111,1122,1115,1116,1122,1122,1123,1140,1147,1142,1147,1147,1162,
+1173,1190,1205,1191,1195,1198,1182,1156,1141,1141,1122,1101,1078,1068,1062,1045,1039,1058,1046,1054,
+1061,1064,1070,1067,1060,1047,1038,1030,1009,1000,982,951,910,907,895,869,843,814,805,796,
+761,733,726,713,674,653,660,678,669,639,639,630,607,559,509,464,417,406,398,364,
+314,265,212,153,91,15,-30,-57,-137,-209,-298,-436,-562,-662,-743,-819,-880,-928,-959,-999,
+-1031,-1051,-1066,-1080,-1100,-1122,-1149,-1184,-1223,-1263,-1300,-1341,-1382,-1423,-1459,-1490,-1519,-1546,-1566,-1575,
+-1577,-1591,-1621,-1671,-1723,-1773,-1814,-1848,-1885,-1916,-1932,-1939,-1949,-1957,-1968,-1992,-2016,-2037,-2065,-2094,
+-2118,-2135,-2151,-2174,-2201,-2227,-2253,-2283,-2314,-2353,-2386,-2413,-2445,-2485,-2532,-2576,-2609,-2640,-2671,-2702,
+-2733,-2772,-2810,-2845,-2882,-2923,-2966,-3006,-3050,-3108,-3167,-3223,-3272,-3315,-3347,-3362,-3361,-3351,-3362,-3384,
+-3408,-3435,-3462,-3495,-3527,-3559,-3590,-3623,-3657,-3691,-3724,-3753,-3782,-3809,-3837,-3861,-3885,-3908,-3928,-3947,
+-3967,-3987,-4008,-4026,-4041,-4050,-4055,-4058,-4063,-4069,-4076,-4085,-4089,-4086,-4077,-4072,-4059,-4048,-4036,-4019,
+-3997,-3977,-3958,-3936,-3914,-3892,-3870,-3846,-3822,-3804,-3788,-3774,-3762,-3753,-3747,-3739,-3734,-3734,-3725,-3719,
+-3708,-3697,-3689,-3680,-3674,-3672,-3670,-3664,-3659,-3657,-3658,-3658,-3658,-3655,-3645,-3633,-3617,-3596,-3575,-3554,
+-3533,-3509,-3472,-3423,-3396,-3385,-3382,-3390,-3435,-3488,-3514,-3527,-3535,-3535,-3536,-3536,-3528,-3505,-3474,-3439,
+-3405,-3369,-3330,-3285,-3239,-3194,-3151,-3103,-3054,-3002,-2947,-2895,-2846,-2798,-2749,-2712,-2679,-2647,-2612,-2573,
+-2532,-2489,-2448,-2407,-2365,-2315,-2256,-2197,-2147,-2098,-2041,-1982,-1922,-1867,-1811,-1755,-1695,-1630,-1561,-1488,
+-1416,-1346,-1279,-1214,-1148,-1077,-1004,-929,-857,-794,-736,-690,-655,-634,-613,-588,-557,-518,-470,-414,
+-348,-263,-158,-48,54,143,218,272,305,333,368,425,500,594,719,877,1051,1207,1339,1455,
+1560,1647,1711,1748,1760,1782,1808,1831,1864,1899,1930,1965,2010,2065,2124,2179,2230,2283,2344,2414,
+2495,2581,2665,2737,2792,2824,2832,2827,2810,2771,2752,2743,2740,2772,2806,2845,2888,2949,3010,3104,
+3199,3290,3393,3499,3589,3669,3751,3838,3927,4010,4091,4174,4250,4322,4394,4465,4535,4600,4659,4710,
+4757,4802,4843,4878,4903,4915,4917,4924,4930,4926,4909,4880,4844,4787,4711,4644,4579,4501,4449,4423,
+4433,4446,4466,4493,4530,4583,4647,4701,4743,4815,4903,4990,5071,5140,5205,5269,5344,5421,5492,5552,
+5591,5609,5619,5625,5624,5616,5604,5593,5586,5583,5586,5596,5612,5630,5658,5690,5730,5772,5811,5844,
+5865,5878,5890,5906,5933,5969,6001,6032,6066,6099,6145,6195,6241,6282,6319,6348,6373,6398,6412,6429,
+6443,6454,6470,6489,6504,6517,6531,6543,6560,6577,6589,6601,6611,6619,6629,6650,6663,6654,6657,6670,
+6691,6709,6715,6713,6723,6740,6753,6759,6764,6763,6751,6737,6736,6734,6733,6705,6678,6665,6656,6641,
+6629,6606,6580,6561,6530,6478,6436,6384,6348,6328,6309,6300,6286,6270,6248,6216,6176,6142,6111,6077,
+6034,5987,5945,5893,5834,5781,5732,5712,5695,5694,5693,5673,5655,5635,5616,5563,5482,5410,5361,5350,
+5361,5364,5347,5325,5307,5297,5279,5261,5241,5212,5202,5201,5187,5177,5176,5161,5147,5140,5133,5124,
+5116,5103,5084,5057,5027,4993,4949,4904,4861,4811,4757,4703,4655,4615,4564,4519,4487,4460,4431,4405,
+4380,4350,4326,4303,4287,4281,4264,4229,4186,4144,4109,4083,4067,4055,4044,4039,4038,4037,4033,4029,
+4020,4009,4006,4001,3986,3956,3919,3877,3834,3791,3756,3702,3647,3587,3548,3510,3451,3414,3366,3340,
+3314,3262,3208,3146,3106,3074,3041,3007,2989,2973,2961,2945,2923,2890,2856,2823,2783,2735,2680,2630,
+2590,2544,2485,2422,2357,2293,2225,2162,2106,2057,2012,1969,1925,1883,1851,1824,1807,1793,1785,1782,
+1785,1772,1767,1761,1756,1761,1767,1771,1767,1761,1751,1739,1740,1747,1752,1761,1773,1790,1809,1824,
+1831,1829,1818,1795,1761,1724,1685,1655,1637,1630,1633,1647,1658,1665,1678,1695,1707,1711,1706,1694,
+1686,1685,1689,1694,1698,1697,1697,1699,1699,1693,1677,1635,1592,1549,1505,1469,1433,1402,1381,1364,
+1343,1321,1299,1281,1265,1251,1236,1222,1205,1180,1151,1121,1089,1055,1018,978,942,918,903,892,
+878,861,841,820,801,784,771,765,766,766,763,755,740,724,708,692,676,660,647,642,
+647,644,638,627,610,586,555,521,490,455,409,359,313,258,209,162,124,96,75,64,
+52,35,15,-2,-17,-26,-28,-33,-49,-76,-106,-140,-178,-215,-239,-240,-208,-152,-88,-56,
+-39,-24,-36,-72,-94,-129,-164,-201,-246,-281,-340,-417,-489,-535,-571,-607,-649,-692,-741,-794,
+-853,-912,-961,-1013,-1048,-1064,-1076,-1084,-1091,-1100,-1123,-1152,-1178,-1199,-1220,-1242,-1270,-1299,-1314,-1323,
+-1331,-1346,-1368,-1393,-1416,-1443,-1473,-1506,-1539,-1572,-1608,-1641,-1671,-1699,-1724,-1755,-1789,-1809,-1819,-1833,
+-1857,-1890,-1925,-1953,-1973,-1983,-1991,-2004,-2010,-2013,-2015,-2015,-2011,-2005,-1998,-1986,-1977,-1973,-1976,-1982,
+-1990,-2006,-2032,-2062,-2086,-2105,-2124,-2137,-2141,-2136,-2128,-2119,-2110,-2101,-2097,-2099,-2103,-2107,-2116,-2126,
+-2135,-2145,-2159,-2176,-2200,-2228,-2257,-2284,-2302,-2307,-2308,-2306,-2304,-2313,-2325,-2330,-2334,-2318,-2307,-2301,
+-2291,-2275,-2261,-2255,-2258,-2254,-2243,-2234,-2238,-2261,-2284,-2323,-2369,-2408,-2445,-2470,-2504,-2525,-2534,-2528,
+-2514,-2506,-2498,-2490,-2504,-2505,-2510,-2520,-2547,-2547,-2532,-2511,-2491,-2498,-2490,-2466,-2445,-2440,-2450,-2467,
+-2485,-2488,-2500,-2514,-2533,-2558,-2580,-2600,-2611,-2611,-2588,-2566,-2532,-2498,-2469,-2437,-2407,-2376,-2352,-2327,
+-2308,-2293,-2275,-2254,-2249,-2251,-2247,-2250,-2252,-2248,-2245,-2236,-2221,-2200,-2171,-2138,-2110,-2088,-2068,-2051,
+-2032,-2010,-1987,-1966,-1942,-1919,-1898,-1884,-1875,-1869,-1858,-1839,-1817,-1797,-1791,-1787,-1780,-1778,-1787,-1804,
+-1821,-1832,-1839,-1846,-1855,-1864,-1865,-1864,-1860,-1852,-1842,-1829,-1818,-1809,-1800,-1791,-1782,-1772,-1760,-1750,
+-1744,-1749,-1763,-1771,-1772,-1772,-1770,-1767,-1763,-1759,-1757,-1756,-1756,-1754,-1751,-1749,-1749,-1748,-1744,-1736,
+-1724,-1704,-1674,-1633,-1579,-1508,-1420,-1315,-1218,-1135,-1056,-963,-871,-777,-693,-625,-569,-542,-512,-484,
+-469,-468,-441,-423,-408,-395,-369,-327,-286,-244,-208,-179,-142,-103,-72,-38,5,50,81,109,
+139,151,159,166,173,177,188,209,239,272,294,314,335,364,386,402,412,417,422,428,
+439,457,479,496,526,539,555,571,584,614,640,659,672,682,680,704,715,743,773,801,
+815,832,858,896,935,953,965,955,972,968,959,954,960,978,997,1011,1011,1017,1013,990,
+947,892,841,805,777,762,757,761,767,775,789,796,802,811,826,846,851,841,849,849,
+864,877,881,900,904,912,926,934,936,939,950,957,971,981,999,1020,1021,1015,1026,1042,
+1053,1045,1041,1035,1025,1018,1009,1028,1066,1096,1109,1117,1120,1125,1137,1142,1141,1133,1124,1126,
+1138,1138,1125,1121,1108,1092,1078,1072,1064,1044,1038,1057,1057,1031,1005,985,968,944,929,916,
+907,885,858,830,799,769,749,740,742,745,755,759,740,718,703,692,679,669,655,637,
+617,613,609,607,602,587,566,534,505,486,499,518,520,513,516,524,518,498,482,460,
+430,422,419,406,395,389,384,381,381,383,391,403,415,424,429,442,435,420,418,401,
+407,435,436,434,442,451,462,481,501,515,518,494,482,467,459,457,461,463,456,454,
+462,473,478,479,483,490,496,501,512,530,552,563,575,591,613,629,653,680,702,712,
+726,728,736,744,741,741,746,743,737,744,761,783,797,799,799,805,816,829,842,859,
+881,902,922,944,963,967,960,953,938,923,909,904,910,917,927,937,949,958,965,974,
+985,975,953,941,948,971,1000,1022,1050,1067,1080,1077,1066,1064,1088,1100,1101,1104,1100,1087,
+1077,1076,1078,1063,1050,1045,1064,1121,1140,1143,1134,1125,1125,1130,1143,1166,1175,1188,1204,1212,
+1211,1209,1222,1217,1217,1234,1249,1244,1218,1212,1199,1198,1186,1168,1148,1131,1095,1078,1078,1118,
+1156,1196,1197,1191,1184,1180,1172,1141,1111,1094,1072,1044,1004,979,963,950,935,932,930,915,
+891,885,862,816,802,793,779,732,723,723,712,681,645,641,617,579,529,487,490,483,
+448,398,357,295,245,186,137,112,70,11,-54,-149,-255,-380,-496,-620,-723,-809,-875,-920,
+-971,-1011,-1031,-1048,-1052,-1063,-1080,-1101,-1129,-1164,-1200,-1237,-1278,-1324,-1368,-1406,-1440,-1467,-1485,-1494,
+-1500,-1518,-1541,-1570,-1616,-1667,-1728,-1789,-1848,-1896,-1927,-1952,-1971,-1985,-1997,-2012,-2040,-2073,-2095,-2114,
+-2141,-2163,-2178,-2191,-2210,-2228,-2249,-2279,-2316,-2356,-2396,-2430,-2461,-2490,-2527,-2571,-2614,-2649,-2679,-2708,
+-2742,-2786,-2825,-2860,-2892,-2923,-2958,-2998,-3043,-3092,-3140,-3192,-3241,-3291,-3339,-3363,-3379,-3379,-3375,-3383,
+-3395,-3410,-3436,-3472,-3504,-3541,-3576,-3608,-3646,-3692,-3733,-3772,-3803,-3836,-3871,-3898,-3920,-3944,-3974,-3999,
+-4027,-4054,-4071,-4089,-4102,-4112,-4122,-4131,-4135,-4133,-4134,-4141,-4146,-4144,-4136,-4127,-4119,-4111,-4100,-4088,
+-4074,-4056,-4039,-4023,-4002,-3982,-3958,-3932,-3901,-3869,-3842,-3821,-3806,-3794,-3786,-3780,-3777,-3776,-3773,-3772,
+-3769,-3763,-3758,-3751,-3742,-3735,-3731,-3730,-3732,-3732,-3729,-3731,-3734,-3729,-3720,-3707,-3692,-3674,-3650,-3625,
+-3599,-3572,-3541,-3496,-3441,-3414,-3395,-3378,-3368,-3374,-3393,-3427,-3467,-3503,-3533,-3547,-3548,-3547,-3539,-3524,
+-3497,-3464,-3432,-3399,-3360,-3316,-3266,-3216,-3165,-3105,-3042,-2978,-2920,-2875,-2835,-2801,-2766,-2736,-2706,-2670,
+-2630,-2585,-2542,-2500,-2453,-2406,-2356,-2300,-2240,-2177,-2115,-2056,-2001,-1942,-1884,-1825,-1763,-1699,-1632,-1563,
+-1495,-1425,-1352,-1282,-1208,-1133,-1051,-971,-892,-813,-743,-676,-621,-575,-541,-525,-498,-467,-427,-380,
+-353,-323,-286,-239,-181,-113,-33,50,135,205,250,303,379,479,608,763,929,1089,1228,1339,
+1444,1551,1639,1692,1731,1749,1750,1757,1769,1800,1844,1901,1948,1982,2023,2079,2132,2177,2230,2292,
+2365,2455,2549,2624,2692,2756,2801,2821,2817,2804,2770,2745,2736,2745,2768,2793,2821,2862,2910,2964,
+3032,3121,3214,3339,3456,3565,3675,3773,3863,3951,4036,4114,4189,4264,4338,4413,4493,4570,4642,4714,
+4782,4843,4892,4931,4959,4975,4982,4980,4963,4934,4902,4881,4870,4859,4836,4792,4713,4631,4543,4486,
+4459,4437,4442,4480,4535,4590,4639,4691,4743,4809,4880,4951,5011,5069,5129,5195,5269,5343,5419,5495,
+5550,5574,5565,5552,5548,5546,5549,5548,5544,5540,5542,5553,5568,5584,5604,5634,5670,5712,5751,5790,
+5821,5844,5865,5887,5918,5969,6017,6041,6064,6094,6129,6177,6224,6267,6310,6348,6373,6395,6408,6424,
+6435,6450,6465,6478,6493,6514,6542,6579,6589,6595,6606,6611,6621,6637,6663,6677,6673,6670,6683,6694,
+6714,6738,6753,6762,6740,6748,6787,6806,6777,6754,6755,6773,6773,6773,6749,6731,6727,6710,6696,6686,
+6681,6650,6633,6599,6546,6494,6445,6398,6366,6342,6322,6311,6308,6301,6284,6259,6230,6201,6174,6142,
+6095,6042,5981,5896,5809,5756,5732,5709,5702,5704,5691,5667,5635,5606,5578,5522,5457,5422,5410,5413,
+5414,5402,5377,5338,5315,5306,5282,5260,5244,5229,5213,5207,5207,5197,5188,5176,5165,5158,5152,5143,
+5129,5110,5084,5058,5021,4987,4947,4905,4858,4803,4742,4685,4634,4582,4533,4483,4442,4404,4373,4342,
+4316,4295,4279,4269,4254,4248,4254,4253,4231,4196,4164,4138,4119,4107,4095,4082,4067,4053,4042,4035,
+4036,4038,4032,4020,4011,3995,3981,3949,3888,3822,3764,3691,3629,3578,3535,3500,3451,3407,3376,3335,
+3295,3245,3185,3129,3086,3046,3023,3007,3005,2979,2961,2945,2928,2914,2894,2863,2819,2773,2720,2665,
+2612,2559,2510,2458,2398,2332,2269,2207,2147,2090,2034,1981,1934,1893,1861,1837,1814,1789,1775,1770,
+1764,1774,1793,1804,1800,1793,1781,1772,1771,1763,1752,1746,1746,1754,1757,1755,1763,1773,1787,1799,
+1806,1806,1798,1785,1764,1740,1712,1684,1657,1637,1631,1632,1632,1641,1656,1670,1680,1688,1684,1673,
+1657,1644,1636,1632,1628,1624,1622,1623,1625,1627,1630,1630,1620,1593,1539,1498,1478,1459,1437,1423,
+1409,1389,1366,1346,1328,1307,1286,1264,1243,1220,1198,1177,1151,1121,1087,1049,1008,972,945,925,
+910,900,889,874,858,842,824,810,805,807,812,812,804,789,771,749,723,697,673,652,
+640,642,643,639,625,608,589,563,534,500,471,438,390,340,285,227,177,137,103,75,
+61,51,35,14,-7,-28,-34,-28,-32,-52,-84,-118,-156,-189,-219,-238,-236,-208,-164,-105,
+-68,-48,-60,-92,-113,-120,-126,-165,-236,-319,-400,-467,-518,-551,-581,-609,-640,-680,-723,-767,
+-820,-878,-939,-998,-1041,-1068,-1088,-1105,-1118,-1130,-1140,-1152,-1175,-1194,-1211,-1228,-1240,-1274,-1309,-1322,
+-1326,-1333,-1347,-1368,-1394,-1423,-1453,-1484,-1515,-1550,-1582,-1613,-1646,-1678,-1709,-1739,-1776,-1817,-1849,-1869,
+-1888,-1914,-1946,-1981,-2012,-2034,-2052,-2062,-2064,-2063,-2059,-2053,-2049,-2046,-2041,-2032,-2024,-2020,-2021,-2025,
+-2030,-2036,-2046,-2064,-2087,-2113,-2141,-2168,-2190,-2200,-2195,-2185,-2173,-2161,-2158,-2154,-2155,-2160,-2167,-2178,
+-2190,-2203,-2217,-2232,-2249,-2268,-2285,-2303,-2331,-2352,-2360,-2362,-2359,-2348,-2351,-2361,-2364,-2360,-2355,-2348,
+-2336,-2325,-2311,-2300,-2284,-2274,-2265,-2271,-2275,-2277,-2297,-2325,-2352,-2386,-2434,-2470,-2497,-2528,-2562,-2570,
+-2590,-2602,-2593,-2585,-2579,-2571,-2563,-2559,-2552,-2556,-2564,-2580,-2567,-2556,-2535,-2543,-2523,-2524,-2539,-2552,
+-2567,-2588,-2620,-2650,-2663,-2668,-2680,-2694,-2702,-2694,-2684,-2674,-2647,-2626,-2594,-2561,-2528,-2497,-2464,-2443,
+-2426,-2405,-2388,-2374,-2357,-2351,-2353,-2365,-2374,-2370,-2359,-2354,-2346,-2332,-2312,-2287,-2256,-2227,-2204,-2180,
+-2153,-2128,-2103,-2077,-2053,-2030,-2009,-1987,-1964,-1944,-1931,-1925,-1919,-1903,-1887,-1869,-1856,-1849,-1845,-1851,
+-1868,-1884,-1892,-1897,-1902,-1904,-1904,-1901,-1894,-1887,-1874,-1857,-1840,-1826,-1814,-1806,-1799,-1796,-1794,-1787,
+-1779,-1774,-1777,-1786,-1793,-1796,-1793,-1790,-1788,-1787,-1783,-1778,-1772,-1764,-1755,-1747,-1739,-1733,-1726,-1717,
+-1706,-1691,-1672,-1648,-1617,-1575,-1518,-1446,-1350,-1257,-1179,-1099,-1010,-928,-846,-768,-707,-668,-638,-599,
+-579,-571,-551,-560,-562,-547,-510,-454,-386,-327,-281,-220,-177,-117,-61,-7,39,79,123,155,
+178,203,208,207,209,220,225,241,270,305,323,351,367,389,410,431,449,457,465,476,
+483,490,503,520,535,545,557,580,594,597,604,623,649,666,679,698,720,739,747,749,
+762,780,799,833,867,896,930,952,973,990,1002,1002,993,985,972,976,988,1012,1017,994,
+992,985,963,955,947,891,851,835,825,824,825,844,861,866,858,859,873,893,896,885,
+897,920,935,946,957,964,968,970,971,979,987,998,1013,1039,1056,1075,1094,1107,1097,1088,
+1102,1118,1119,1124,1110,1105,1115,1132,1120,1125,1112,1119,1134,1137,1143,1143,1145,1136,1123,1110,
+1109,1123,1119,1114,1108,1087,1080,1082,1078,1069,1062,1061,1068,1070,1052,1036,1019,1011,981,941,
+932,915,880,839,807,787,779,785,780,788,794,783,753,738,728,718,710,690,658,638,
+615,604,623,637,633,649,613,547,494,483,493,507,500,458,437,422,409,400,403,405,
+405,426,422,423,427,435,440,448,443,429,415,414,424,433,442,450,451,453,452,451,
+444,441,430,427,443,445,436,456,476,496,520,534,524,506,482,483,493,505,515,511,
+505,509,513,513,517,520,519,524,527,532,543,555,569,584,599,606,627,648,660,674,
+686,695,703,709,713,720,727,732,734,736,743,752,768,780,791,807,829,852,873,885,
+902,921,944,967,989,1007,1012,997,993,955,923,909,919,950,991,1004,1010,1011,996,999,
+1001,1007,999,996,998,1006,1027,1062,1095,1109,1126,1135,1149,1143,1144,1136,1130,1136,1132,1133,
+1141,1136,1120,1106,1104,1105,1130,1165,1181,1188,1192,1202,1199,1183,1177,1187,1199,1203,1208,1225,
+1249,1244,1247,1254,1261,1255,1249,1255,1259,1248,1239,1232,1208,1191,1169,1141,1124,1120,1107,1098,
+1089,1100,1136,1169,1179,1194,1214,1200,1193,1180,1143,1124,1099,1072,1040,1018,1015,1004,989,966,
+939,921,904,882,849,810,791,777,759,721,692,695,679,660,639,627,607,577,552,520,
+512,482,455,412,355,314,252,209,173,140,86,11,-62,-150,-236,-329,-460,-589,-686,-747,
+-795,-863,-917,-956,-977,-969,-967,-990,-1022,-1062,-1107,-1149,-1193,-1242,-1293,-1332,-1361,-1387,-1412,-1438,
+-1464,-1487,-1512,-1537,-1574,-1630,-1680,-1729,-1780,-1826,-1870,-1914,-1951,-1981,-2004,-2023,-2039,-2065,-2101,-2134,
+-2164,-2182,-2200,-2219,-2241,-2256,-2271,-2292,-2319,-2353,-2394,-2438,-2473,-2504,-2540,-2587,-2631,-2666,-2698,-2727,
+-2757,-2788,-2820,-2852,-2882,-2914,-2946,-2984,-3027,-3074,-3120,-3167,-3213,-3259,-3303,-3341,-3372,-3392,-3392,-3388,
+-3393,-3397,-3409,-3440,-3474,-3515,-3559,-3599,-3647,-3697,-3738,-3774,-3812,-3847,-3880,-3921,-3963,-3998,-4026,-4053,
+-4079,-4101,-4122,-4139,-4153,-4172,-4190,-4202,-4207,-4209,-4207,-4202,-4200,-4198,-4188,-4177,-4173,-4171,-4163,-4155,
+-4136,-4118,-4104,-4094,-4076,-4055,-4033,-4007,-3976,-3943,-3910,-3882,-3859,-3847,-3839,-3829,-3823,-3817,-3819,-3820,
+-3822,-3822,-3825,-3825,-3824,-3818,-3808,-3799,-3792,-3793,-3798,-3800,-3802,-3797,-3788,-3776,-3762,-3746,-3727,-3707,
+-3686,-3661,-3637,-3609,-3573,-3523,-3487,-3468,-3453,-3438,-3427,-3418,-3421,-3436,-3452,-3476,-3518,-3548,-3552,-3550,
+-3545,-3527,-3500,-3472,-3443,-3411,-3374,-3331,-3285,-3236,-3177,-3111,-3049,-2988,-2938,-2896,-2864,-2842,-2821,-2791,
+-2754,-2710,-2659,-2612,-2568,-2528,-2475,-2414,-2356,-2294,-2228,-2156,-2084,-2015,-1953,-1891,-1826,-1759,-1690,-1620,
+-1548,-1485,-1422,-1360,-1294,-1218,-1129,-1041,-955,-871,-789,-706,-633,-567,-517,-475,-435,-398,-361,-314,
+-302,-285,-266,-248,-223,-188,-139,-89,-38,22,95,174,266,381,514,667,826,972,1118,1242,
+1329,1413,1503,1564,1610,1662,1681,1685,1687,1703,1737,1784,1836,1897,1954,2009,2061,2112,2154,2189,
+2236,2296,2378,2481,2567,2634,2701,2754,2791,2814,2815,2786,2772,2786,2799,2808,2817,2823,2840,2880,
+2937,3022,3093,3183,3304,3420,3543,3663,3779,3872,3967,4057,4138,4213,4283,4354,4427,4505,4585,4669,
+4749,4814,4873,4929,4974,5007,5029,5040,5041,5035,5021,4991,4954,4919,4887,4846,4782,4684,4629,4579,
+4527,4493,4490,4503,4534,4583,4643,4700,4759,4827,4887,4948,5008,5066,5129,5191,5258,5329,5400,5465,
+5515,5547,5556,5529,5496,5487,5488,5494,5501,5512,5521,5535,5548,5562,5584,5610,5644,5683,5722,5760,
+5794,5826,5854,5881,5911,5950,5991,6027,6055,6089,6127,6169,6214,6253,6291,6331,6363,6386,6406,6422,
+6431,6441,6451,6462,6477,6491,6508,6531,6547,6560,6577,6598,6618,6631,6640,6650,6666,6673,6684,6709,
+6736,6752,6760,6752,6735,6736,6753,6746,6736,6736,6748,6771,6794,6812,6803,6777,6778,6752,6720,6706,
+6708,6702,6661,6603,6551,6490,6441,6400,6365,6346,6336,6328,6316,6304,6289,6268,6243,6225,6204,6174,
+6132,6082,6035,6000,5975,5943,5902,5845,5788,5768,5728,5713,5716,5715,5686,5633,5577,5523,5467,5428,
+5403,5379,5362,5337,5313,5292,5276,5254,5237,5230,5224,5215,5206,5199,5193,5185,5177,5169,5161,5150,
+5135,5115,5090,5058,5030,4988,4955,4921,4878,4829,4775,4723,4677,4622,4563,4508,4453,4401,4353,4311,
+4276,4250,4245,4242,4238,4232,4238,4259,4278,4275,4253,4235,4224,4215,4185,4146,4118,4100,4088,4076,
+4068,4061,4058,4046,4049,4057,4055,4024,3956,3868,3788,3720,3653,3580,3520,3467,3418,3386,3344,3312,
+3313,3285,3221,3155,3096,3054,3029,3008,3000,2992,2987,2975,2959,2933,2901,2874,2838,2803,2763,2703,
+2644,2586,2533,2489,2442,2384,2321,2252,2178,2111,2054,2006,1962,1919,1876,1842,1816,1797,1780,1766,
+1758,1762,1777,1792,1811,1819,1816,1798,1782,1775,1771,1767,1763,1761,1762,1763,1769,1772,1773,1779,
+1787,1791,1790,1782,1769,1751,1730,1707,1682,1656,1637,1628,1622,1623,1624,1632,1646,1648,1637,1630,
+1626,1617,1603,1592,1581,1575,1572,1571,1568,1565,1563,1557,1553,1546,1534,1514,1478,1458,1445,1433,
+1425,1424,1419,1402,1382,1368,1351,1327,1300,1272,1242,1212,1184,1161,1136,1111,1084,1060,1034,1007,
+981,956,933,913,897,885,874,868,864,861,863,865,863,853,837,818,795,770,740,705,
+672,645,625,611,599,594,588,571,547,514,475,441,419,385,334,289,240,198,161,121,
+89,65,48,32,15,-5,-18,-10,-3,-20,-49,-88,-133,-180,-214,-238,-247,-245,-217,-174,
+-123,-72,-70,-99,-118,-109,-125,-206,-285,-358,-417,-468,-509,-545,-589,-636,-676,-709,-744,-802,
+-866,-912,-952,-996,-1044,-1077,-1097,-1111,-1120,-1127,-1138,-1149,-1169,-1186,-1201,-1223,-1252,-1277,-1296,-1321,
+-1334,-1346,-1357,-1371,-1390,-1414,-1445,-1483,-1518,-1547,-1575,-1605,-1637,-1667,-1692,-1719,-1751,-1788,-1825,-1860,
+-1892,-1923,-1957,-1994,-2029,-2059,-2081,-2094,-2102,-2100,-2090,-2084,-2079,-2072,-2067,-2065,-2065,-2069,-2075,-2084,
+-2095,-2105,-2112,-2112,-2115,-2124,-2145,-2174,-2203,-2226,-2243,-2250,-2247,-2238,-2232,-2229,-2222,-2213,-2205,-2203,
+-2214,-2232,-2252,-2271,-2290,-2311,-2331,-2346,-2362,-2387,-2403,-2409,-2413,-2410,-2402,-2407,-2413,-2409,-2397,-2399,
+-2401,-2389,-2374,-2359,-2350,-2339,-2320,-2303,-2305,-2304,-2305,-2311,-2341,-2374,-2404,-2440,-2475,-2511,-2552,-2579,
+-2605,-2622,-2644,-2657,-2671,-2672,-2657,-2641,-2624,-2593,-2591,-2597,-2607,-2634,-2633,-2618,-2636,-2639,-2634,-2654,
+-2657,-2664,-2678,-2704,-2737,-2767,-2776,-2781,-2778,-2781,-2785,-2772,-2754,-2726,-2703,-2683,-2667,-2642,-2609,-2578,
+-2551,-2529,-2510,-2494,-2483,-2473,-2457,-2466,-2471,-2492,-2506,-2502,-2490,-2463,-2445,-2425,-2402,-2378,-2350,-2323,
+-2296,-2266,-2236,-2207,-2177,-2147,-2118,-2097,-2079,-2062,-2041,-2017,-2001,-1990,-1982,-1969,-1956,-1941,-1924,-1915,
+-1918,-1933,-1952,-1966,-1978,-1987,-1990,-1990,-1986,-1976,-1961,-1943,-1922,-1901,-1880,-1861,-1848,-1838,-1830,-1825,
+-1818,-1811,-1806,-1803,-1804,-1805,-1806,-1799,-1792,-1786,-1779,-1771,-1763,-1752,-1739,-1725,-1710,-1696,-1685,-1674,
+-1664,-1650,-1634,-1616,-1596,-1573,-1544,-1508,-1462,-1399,-1324,-1250,-1187,-1122,-1042,-968,-914,-870,-835,-804,
+-776,-735,-705,-686,-689,-700,-692,-651,-603,-548,-493,-434,-366,-297,-212,-137,-53,6,69,106,
+138,162,188,213,225,228,242,255,264,296,326,347,366,391,426,458,478,496,518,536,
+551,567,578,586,596,596,601,602,603,608,613,614,627,643,664,679,699,731,772,807,
+805,808,812,811,819,842,876,908,936,963,992,1013,1028,1040,1037,1030,1021,1023,1014,1003,
+991,980,979,978,1000,1018,1019,994,927,897,889,884,888,902,919,924,930,927,934,938,
+933,928,937,957,982,1008,1017,1031,1044,1056,1068,1095,1095,1103,1111,1128,1142,1163,1166,1147,
+1127,1127,1154,1190,1204,1201,1175,1170,1158,1168,1175,1175,1165,1168,1171,1167,1160,1159,1155,1134,
+1110,1106,1124,1119,1104,1083,1083,1084,1077,1073,1078,1081,1074,1064,1060,1065,1062,1038,1011,987,
+944,912,891,873,847,833,823,815,812,801,788,779,770,766,766,774,759,730,700,671,
+646,633,634,641,661,672,639,572,502,466,448,441,430,410,396,384,376,377,382,382,
+386,374,379,388,389,386,388,396,408,417,423,419,420,430,438,447,453,453,453,456,
+462,461,459,460,461,453,449,447,437,451,471,488,494,489,493,504,516,530,544,557,
+560,557,553,548,543,542,540,534,532,537,544,552,561,567,572,579,585,593,606,620,
+642,659,675,684,694,708,721,728,722,722,727,734,747,763,776,791,815,846,872,890,
+909,935,949,955,969,990,1000,1002,987,968,970,963,968,996,1020,1027,1038,1053,1049,1039,
+1032,1028,1033,1043,1056,1069,1073,1092,1123,1159,1173,1184,1179,1177,1173,1177,1185,1198,1194,1181,
+1175,1176,1173,1177,1180,1186,1203,1231,1256,1278,1287,1284,1282,1284,1271,1250,1236,1229,1229,1230,
+1222,1222,1235,1239,1254,1268,1270,1283,1293,1290,1275,1265,1262,1247,1240,1228,1184,1161,1154,1129,
+1108,1104,1113,1116,1105,1082,1072,1083,1091,1113,1089,1082,1063,1043,1021,1005,989,982,957,922,
+901,884,863,849,832,791,751,715,692,674,669,654,640,632,626,616,602,586,572,559,
+533,489,451,420,384,346,332,292,229,178,137,82,27,-41,-105,-191,-262,-358,-475,-561,
+-651,-718,-783,-837,-880,-911,-930,-916,-904,-932,-979,-1036,-1093,-1140,-1190,-1237,-1280,-1316,-1345,-1379,
+-1423,-1469,-1506,-1533,-1561,-1594,-1633,-1680,-1730,-1771,-1807,-1842,-1881,-1925,-1972,-2010,-2042,-2066,-2099,-2142,
+-2184,-2217,-2238,-2253,-2276,-2298,-2308,-2318,-2341,-2371,-2404,-2441,-2487,-2526,-2559,-2597,-2637,-2678,-2710,-2735,
+-2766,-2793,-2815,-2843,-2874,-2903,-2931,-2964,-3001,-3043,-3090,-3137,-3186,-3231,-3276,-3320,-3352,-3374,-3385,-3386,
+-3386,-3394,-3404,-3421,-3459,-3498,-3544,-3592,-3646,-3711,-3759,-3795,-3833,-3872,-3907,-3940,-3974,-4003,-4033,-4068,
+-4099,-4126,-4150,-4173,-4196,-4223,-4243,-4255,-4263,-4269,-4276,-4279,-4277,-4272,-4263,-4254,-4246,-4236,-4223,-4214,
+-4204,-4191,-4174,-4154,-4133,-4112,-4084,-4050,-4028,-4008,-3991,-3969,-3947,-3929,-3912,-3899,-3886,-3877,-3869,-3862,
+-3869,-3875,-3883,-3890,-3894,-3889,-3873,-3858,-3845,-3845,-3852,-3859,-3868,-3864,-3851,-3836,-3821,-3807,-3797,-3785,
+-3769,-3749,-3731,-3714,-3690,-3664,-3636,-3603,-3578,-3565,-3557,-3546,-3540,-3532,-3522,-3523,-3522,-3531,-3541,-3548,
+-3553,-3554,-3541,-3522,-3496,-3466,-3432,-3397,-3361,-3322,-3280,-3235,-3191,-3147,-3104,-3060,-3018,-2979,-2949,-2920,
+-2885,-2842,-2800,-2753,-2710,-2668,-2625,-2573,-2497,-2424,-2353,-2279,-2208,-2128,-2051,-1974,-1894,-1813,-1734,-1661,
+-1590,-1517,-1448,-1387,-1332,-1279,-1222,-1149,-1064,-973,-884,-798,-711,-628,-554,-493,-437,-383,-337,-293,
+-256,-236,-236,-231,-219,-200,-175,-143,-107,-66,-16,49,134,246,393,562,738,899,1030,1130,
+1204,1262,1323,1404,1484,1533,1568,1597,1610,1617,1641,1677,1727,1778,1845,1916,1984,2040,2097,2134,
+2155,2180,2224,2291,2374,2444,2521,2599,2667,2734,2796,2823,2826,2843,2858,2854,2837,2830,2833,2857,
+2906,2986,3047,3120,3207,3290,3394,3513,3615,3714,3814,3921,4017,4104,4183,4262,4345,4425,4504,4587,
+4673,4755,4820,4875,4924,4957,4983,5010,5032,5051,5057,5049,5030,5000,4957,4903,4817,4710,4607,4551,
+4520,4499,4490,4507,4548,4602,4670,4743,4814,4880,4942,4994,5043,5096,5151,5206,5264,5325,5392,5449,
+5479,5482,5473,5454,5437,5431,5432,5442,5457,5476,5495,5514,5536,5555,5577,5604,5634,5669,5705,5741,
+5775,5808,5844,5879,5908,5943,5976,6013,6045,6078,6113,6151,6198,6235,6270,6308,6341,6375,6404,6424,
+6436,6443,6452,6464,6477,6492,6504,6514,6525,6538,6554,6575,6600,6620,6632,6635,6645,6668,6688,6697,
+6694,6703,6701,6691,6706,6729,6738,6734,6735,6740,6744,6750,6751,6751,6768,6765,6745,6759,6772,6720,
+6690,6632,6564,6526,6514,6472,6431,6401,6379,6361,6348,6336,6327,6304,6284,6270,6261,6246,6225,6197,
+6164,6125,6085,6037,5992,5947,5904,5873,5832,5789,5750,5716,5694,5678,5656,5624,5579,5531,5482,5428,
+5379,5350,5328,5303,5276,5260,5247,5234,5221,5218,5220,5220,5215,5208,5197,5190,5183,5175,5160,5146,
+5130,5110,5080,5057,5030,4994,4965,4933,4900,4860,4819,4785,4741,4686,4629,4575,4518,4462,4405,4353,
+4304,4261,4232,4216,4214,4216,4232,4254,4279,4307,4323,4330,4324,4306,4277,4245,4219,4200,4189,4176,
+4151,4119,4096,4083,4086,4091,4083,4044,3991,3903,3803,3719,3652,3606,3583,3553,3485,3417,3373,3333,
+3281,3238,3203,3181,3150,3110,3078,3067,3055,3034,3020,3010,3003,2984,2957,2928,2892,2846,2790,2734,
+2676,2609,2548,2494,2436,2376,2312,2246,2176,2104,2039,1987,1944,1906,1873,1844,1825,1804,1785,1770,
+1760,1752,1751,1761,1773,1784,1792,1791,1794,1795,1792,1792,1786,1785,1783,1780,1779,1782,1780,1778,
+1778,1782,1784,1784,1778,1767,1751,1730,1706,1680,1659,1640,1618,1608,1607,1608,1613,1614,1614,1605,
+1588,1580,1577,1574,1563,1548,1538,1532,1526,1523,1519,1514,1507,1497,1489,1485,1483,1478,1465,1443,
+1425,1414,1406,1394,1384,1379,1370,1361,1352,1339,1316,1283,1246,1216,1199,1185,1165,1140,1113,1087,
+1061,1031,1001,977,954,933,922,914,910,912,921,926,922,910,895,874,849,823,795,764,
+731,695,655,617,584,562,554,545,532,507,475,440,405,375,353,317,281,243,206,171,
+139,115,90,66,43,18,-5,-14,-6,-10,-36,-69,-107,-151,-197,-233,-243,-240,-228,-202,
+-173,-134,-103,-93,-100,-119,-142,-207,-286,-361,-434,-484,-518,-541,-573,-620,-678,-721,-775,-844,
+-920,-974,-1000,-1027,-1058,-1092,-1113,-1123,-1132,-1142,-1153,-1163,-1167,-1170,-1177,-1205,-1248,-1285,-1309,-1320,
+-1337,-1353,-1369,-1390,-1414,-1438,-1464,-1494,-1529,-1561,-1591,-1615,-1639,-1667,-1695,-1724,-1755,-1788,-1821,-1855,
+-1889,-1921,-1953,-1987,-2023,-2053,-2078,-2094,-2098,-2101,-2107,-2113,-2120,-2121,-2114,-2109,-2106,-2106,-2109,-2118,
+-2131,-2146,-2161,-2171,-2168,-2158,-2153,-2163,-2185,-2215,-2242,-2265,-2282,-2292,-2295,-2288,-2286,-2286,-2278,-2263,
+-2257,-2264,-2278,-2300,-2328,-2350,-2366,-2386,-2406,-2423,-2438,-2447,-2452,-2460,-2464,-2468,-2480,-2485,-2476,-2468,
+-2458,-2450,-2442,-2432,-2422,-2411,-2400,-2389,-2387,-2369,-2362,-2363,-2361,-2369,-2389,-2416,-2445,-2481,-2521,-2555,
+-2586,-2618,-2637,-2661,-2688,-2715,-2726,-2737,-2730,-2704,-2695,-2677,-2669,-2665,-2669,-2685,-2707,-2717,-2734,-2735,
+-2740,-2759,-2779,-2808,-2825,-2844,-2848,-2852,-2857,-2868,-2874,-2859,-2856,-2848,-2826,-2810,-2793,-2778,-2759,-2735,
+-2702,-2675,-2661,-2645,-2632,-2618,-2608,-2605,-2605,-2600,-2593,-2604,-2617,-2612,-2600,-2578,-2551,-2521,-2492,-2461,
+-2431,-2404,-2376,-2345,-2312,-2276,-2242,-2214,-2195,-2182,-2166,-2147,-2122,-2092,-2073,-2062,-2057,-2046,-2028,-2003,
+-1989,-1993,-2010,-2032,-2049,-2060,-2070,-2077,-2079,-2076,-2068,-2054,-2040,-2024,-2003,-1980,-1955,-1931,-1908,-1886,
+-1867,-1852,-1839,-1831,-1828,-1826,-1821,-1810,-1793,-1779,-1769,-1761,-1748,-1732,-1711,-1691,-1670,-1654,-1641,-1631,
+-1623,-1613,-1599,-1581,-1561,-1540,-1520,-1502,-1483,-1453,-1415,-1366,-1314,-1264,-1215,-1164,-1112,-1062,-1019,-989,
+-968,-944,-919,-909,-910,-918,-936,-937,-901,-852,-792,-727,-657,-581,-491,-408,-333,-260,-185,-103,
+-28,16,59,111,150,164,175,201,231,264,301,338,378,412,445,481,519,533,549,576,
+590,608,631,646,663,658,647,642,641,642,647,662,669,667,696,724,746,754,775,795,
+816,852,874,876,864,860,859,867,896,934,969,1005,1038,1058,1079,1085,1073,1057,1069,1080,
+1072,1052,1025,1011,1027,1055,1059,1036,1027,1004,980,960,952,933,931,935,956,972,969,965,
+980,991,986,1006,1035,1064,1062,1071,1091,1089,1090,1109,1139,1147,1141,1152,1181,1195,1207,1210,
+1211,1213,1203,1211,1244,1246,1237,1237,1222,1213,1226,1230,1222,1219,1193,1193,1191,1184,1181,1172,
+1155,1142,1138,1124,1126,1121,1110,1094,1082,1084,1092,1088,1082,1073,1058,1038,1025,1012,984,966,
+956,948,916,883,868,865,863,860,843,829,821,812,800,792,787,798,790,781,758,747,
+740,713,698,705,717,697,639,568,531,493,458,435,418,403,392,384,382,387,401,405,
+405,399,391,386,382,379,379,382,385,394,404,415,423,435,448,459,462,457,455,452,
+452,458,461,461,468,475,480,486,490,493,497,501,508,513,520,526,534,547,564,577,
+582,582,582,581,579,572,565,565,566,567,569,572,577,575,569,566,572,582,587,595,
+604,618,636,651,660,661,674,691,704,712,708,718,730,750,765,786,810,839,866,897,
+912,924,942,952,959,966,987,996,980,972,980,992,996,1000,1003,1005,1013,1027,1048,1047,
+1043,1048,1052,1064,1086,1119,1140,1144,1156,1167,1204,1216,1215,1217,1199,1190,1194,1203,1197,1201,
+1206,1219,1244,1282,1323,1331,1340,1360,1367,1392,1424,1450,1457,1476,1451,1437,1410,1375,1337,1312,
+1292,1280,1280,1282,1271,1265,1262,1258,1258,1278,1293,1280,1287,1294,1285,1262,1238,1200,1195,1194,
+1192,1174,1143,1131,1121,1118,1082,1057,1033,1008,978,958,956,948,942,935,943,923,902,858,
+823,802,786,765,769,769,765,727,661,629,603,581,571,547,550,552,536,542,548,530,
+523,510,490,449,411,376,325,283,256,220,182,129,67,19,1,-37,-106,-174,-262,-343,
+-435,-516,-588,-649,-728,-798,-851,-890,-915,-928,-940,-950,-1001,-1057,-1099,-1150,-1202,-1248,-1283,-1315,
+-1355,-1412,-1478,-1536,-1581,-1617,-1652,-1682,-1713,-1751,-1791,-1818,-1846,-1887,-1938,-1989,-2030,-2065,-2097,-2133,
+-2175,-2214,-2243,-2269,-2299,-2329,-2351,-2361,-2375,-2401,-2429,-2458,-2489,-2530,-2571,-2609,-2652,-2701,-2740,-2771,
+-2794,-2811,-2829,-2852,-2873,-2894,-2920,-2950,-2981,-3013,-3053,-3095,-3141,-3187,-3231,-3272,-3314,-3353,-3368,-3370,
+-3375,-3386,-3403,-3419,-3447,-3490,-3530,-3579,-3634,-3697,-3751,-3793,-3830,-3873,-3912,-3942,-3968,-3994,-4020,-4055,
+-4098,-4139,-4172,-4199,-4228,-4257,-4279,-4299,-4315,-4328,-4337,-4344,-4345,-4342,-4333,-4312,-4294,-4279,-4275,-4268,
+-4257,-4244,-4232,-4218,-4200,-4179,-4154,-4125,-4104,-4080,-4072,-4071,-4062,-4045,-4030,-4016,-4003,-3987,-3971,-3961,
+-3952,-3951,-3954,-3961,-3967,-3970,-3966,-3948,-3936,-3929,-3923,-3919,-3918,-3918,-3913,-3899,-3877,-3860,-3848,-3840,
+-3835,-3822,-3804,-3789,-3776,-3763,-3745,-3727,-3709,-3695,-3692,-3686,-3672,-3660,-3646,-3632,-3615,-3600,-3583,-3564,
+-3543,-3529,-3516,-3511,-3502,-3485,-3460,-3430,-3397,-3359,-3317,-3272,-3227,-3193,-3159,-3143,-3130,-3107,-3072,-3031,
+-2993,-2958,-2919,-2881,-2841,-2797,-2746,-2692,-2634,-2573,-2509,-2439,-2365,-2291,-2211,-2123,-2040,-1951,-1858,-1759,
+-1663,-1570,-1484,-1405,-1344,-1284,-1239,-1197,-1169,-1118,-1048,-955,-860,-759,-663,-571,-497,-427,-369,-314,
+-267,-221,-189,-190,-190,-192,-187,-178,-154,-123,-87,-44,16,100,208,355,533,712,876,1006,
+1100,1165,1210,1267,1343,1412,1437,1454,1481,1507,1535,1566,1603,1650,1707,1773,1847,1913,1980,2041,
+2073,2100,2126,2169,2229,2287,2350,2410,2473,2539,2627,2721,2795,2843,2861,2865,2862,2851,2841,2857,
+2902,2977,3065,3139,3187,3245,3335,3440,3521,3610,3713,3816,3910,3997,4087,4179,4267,4348,4424,4501,
+4580,4662,4738,4795,4842,4895,4946,4988,5022,5040,5055,5064,5055,5025,4989,4940,4873,4806,4745,4694,
+4650,4604,4584,4559,4567,4635,4727,4819,4902,4982,5050,5109,5158,5203,5248,5290,5329,5366,5393,5413,
+5403,5376,5364,5367,5374,5382,5393,5406,5424,5442,5464,5489,5516,5543,5566,5591,5621,5655,5691,5723,
+5756,5793,5830,5869,5907,5941,5975,6010,6044,6080,6115,6148,6181,6216,6248,6277,6306,6342,6383,6417,
+6440,6461,6477,6489,6495,6502,6506,6509,6517,6534,6552,6572,6593,6611,6627,6638,6644,6651,6664,6669,
+6669,6663,6660,6663,6672,6685,6706,6724,6742,6737,6724,6712,6702,6687,6667,6643,6625,6638,6672,6657,
+6579,6531,6492,6463,6443,6427,6410,6394,6376,6357,6333,6300,6275,6261,6255,6254,6253,6241,6229,6216,
+6185,6148,6112,6079,6030,5974,5938,5910,5882,5854,5824,5797,5762,5724,5691,5648,5596,5542,5491,5439,
+5384,5332,5294,5274,5252,5238,5227,5214,5208,5206,5207,5210,5210,5206,5199,5189,5175,5159,5142,5126,
+5111,5094,5069,5043,5019,4994,4966,4937,4903,4869,4842,4817,4784,4742,4702,4654,4606,4557,4509,4458,
+4401,4351,4300,4262,4240,4232,4242,4272,4311,4352,4386,4408,4415,4402,4370,4340,4321,4310,4302,4279,
+4244,4205,4163,4132,4114,4093,4067,4040,3996,3927,3845,3781,3726,3687,3656,3603,3542,3484,3405,3351,
+3299,3263,3243,3207,3168,3145,3127,3107,3087,3077,3062,3049,3025,2995,2963,2937,2900,2855,2808,2747,
+2682,2615,2540,2469,2395,2326,2264,2204,2143,2080,2019,1964,1919,1883,1852,1828,1812,1799,1786,1771,
+1762,1757,1758,1756,1764,1774,1781,1785,1791,1792,1799,1807,1806,1801,1797,1795,1792,1789,1787,1790,
+1787,1780,1781,1780,1776,1770,1764,1753,1734,1708,1681,1661,1640,1614,1593,1585,1581,1579,1584,1577,
+1567,1553,1542,1540,1536,1519,1503,1499,1501,1502,1499,1492,1482,1469,1454,1439,1428,1424,1422,1422,
+1422,1421,1417,1400,1382,1364,1336,1313,1308,1313,1312,1302,1277,1246,1225,1217,1210,1195,1173,1147,
+1116,1087,1057,1029,1008,987,963,942,934,939,953,969,977,971,957,931,899,865,834,803,
+774,749,719,681,638,596,558,528,510,502,478,443,411,371,336,312,286,257,230,202,
+174,151,127,103,79,54,29,2,-14,-16,-15,-37,-79,-122,-165,-207,-236,-236,-213,-202,
+-182,-138,-87,-74,-112,-129,-136,-177,-269,-349,-427,-482,-520,-551,-585,-619,-671,-719,-758,-816,
+-888,-954,-999,-1034,-1061,-1088,-1115,-1134,-1140,-1143,-1154,-1166,-1174,-1181,-1197,-1215,-1233,-1254,-1278,-1306,
+-1336,-1369,-1401,-1435,-1465,-1492,-1520,-1550,-1577,-1600,-1624,-1653,-1682,-1702,-1723,-1749,-1779,-1812,-1846,-1876,
+-1904,-1935,-1964,-1988,-2011,-2035,-2055,-2071,-2081,-2093,-2107,-2126,-2145,-2157,-2158,-2154,-2149,-2146,-2146,-2149,
+-2156,-2169,-2183,-2193,-2196,-2196,-2196,-2195,-2200,-2211,-2226,-2243,-2264,-2287,-2309,-2325,-2333,-2333,-2329,-2322,
+-2315,-2311,-2311,-2321,-2343,-2373,-2398,-2418,-2436,-2452,-2464,-2472,-2478,-2486,-2496,-2508,-2521,-2533,-2537,-2531,
+-2525,-2519,-2513,-2506,-2496,-2483,-2474,-2463,-2459,-2445,-2431,-2431,-2427,-2428,-2434,-2428,-2440,-2461,-2481,-2511,
+-2548,-2582,-2608,-2639,-2672,-2691,-2709,-2747,-2767,-2766,-2776,-2785,-2787,-2783,-2783,-2777,-2783,-2785,-2790,-2792,
+-2798,-2806,-2819,-2836,-2859,-2872,-2904,-2925,-2924,-2920,-2907,-2900,-2896,-2892,-2886,-2880,-2874,-2863,-2855,-2845,
+-2832,-2813,-2786,-2770,-2754,-2743,-2742,-2730,-2723,-2717,-2717,-2710,-2704,-2703,-2693,-2681,-2668,-2646,-2620,-2590,
+-2559,-2529,-2500,-2470,-2437,-2403,-2373,-2344,-2318,-2296,-2279,-2262,-2244,-2223,-2194,-2166,-2153,-2146,-2133,-2116,
+-2097,-2083,-2079,-2087,-2103,-2120,-2133,-2145,-2150,-2149,-2147,-2143,-2131,-2115,-2103,-2086,-2065,-2038,-2009,-1977,
+-1946,-1917,-1892,-1871,-1857,-1850,-1841,-1826,-1810,-1795,-1778,-1758,-1740,-1721,-1700,-1676,-1651,-1628,-1608,-1592,
+-1577,-1563,-1548,-1536,-1522,-1506,-1488,-1469,-1450,-1430,-1410,-1389,-1365,-1335,-1299,-1263,-1227,-1191,-1161,-1136,
+-1115,-1104,-1098,-1098,-1111,-1128,-1141,-1147,-1137,-1114,-1080,-1030,-965,-887,-803,-726,-655,-584,-512,-441,
+-366,-294,-227,-146,-77,-10,44,87,138,172,209,258,317,370,408,447,481,519,555,592,
+627,657,685,701,714,723,719,699,696,692,687,679,692,703,710,723,748,784,804,823,
+829,851,874,893,911,907,919,913,906,912,935,977,1021,1045,1057,1079,1092,1104,1102,1106,
+1130,1123,1106,1112,1112,1095,1100,1085,1065,1050,1051,1070,1063,1025,995,975,979,996,989,969,
+977,992,1008,1027,1072,1121,1141,1147,1136,1128,1143,1155,1167,1191,1216,1213,1210,1223,1231,1246,
+1268,1270,1264,1259,1261,1254,1246,1254,1250,1254,1252,1252,1246,1240,1232,1209,1212,1208,1192,1174,
+1166,1165,1169,1162,1164,1164,1156,1153,1165,1174,1157,1145,1125,1100,1073,1041,999,980,972,954,
+927,913,916,911,899,890,883,887,890,877,864,853,836,821,817,818,831,827,818,809,
+785,754,740,727,698,655,622,601,586,570,539,503,467,440,426,419,418,427,438,445,
+430,394,377,372,372,372,379,385,391,396,406,420,426,431,438,446,454,456,456,458,
+462,465,467,472,479,496,511,520,527,532,537,540,543,547,551,557,557,560,578,591,
+600,605,609,612,617,622,616,606,605,608,614,613,609,606,604,602,600,603,605,609,
+615,616,623,633,644,653,663,674,686,688,700,723,727,752,770,786,807,833,864,898,
+920,930,947,976,1011,1023,1031,1022,1000,979,986,1006,1011,1014,1021,1016,1018,1023,1029,1031,
+1048,1068,1084,1086,1093,1122,1146,1169,1198,1207,1218,1227,1221,1207,1203,1201,1197,1202,1216,1232,
+1258,1287,1331,1392,1446,1458,1483,1497,1505,1516,1514,1519,1549,1587,1603,1625,1638,1616,1562,1536,
+1494,1454,1421,1427,1450,1431,1374,1335,1315,1297,1285,1282,1287,1291,1284,1269,1259,1255,1234,1233,
+1224,1215,1199,1196,1183,1139,1127,1094,1083,1053,1027,1004,964,927,893,874,874,870,858,826,
+785,774,753,725,718,715,704,686,666,645,593,544,518,510,516,509,502,503,494,485,
+473,466,468,446,416,398,365,341,306,285,249,196,163,130,58,15,-2,-57,-123,-207,
+-306,-391,-448,-510,-569,-640,-715,-781,-820,-855,-905,-933,-945,-980,-1039,-1097,-1147,-1194,-1232,-1253,
+-1275,-1314,-1383,-1459,-1532,-1592,-1638,-1672,-1696,-1713,-1734,-1779,-1830,-1870,-1907,-1951,-2003,-2047,-2084,-2122,
+-2160,-2198,-2233,-2260,-2291,-2331,-2369,-2406,-2433,-2454,-2476,-2498,-2520,-2545,-2583,-2622,-2655,-2696,-2749,-2786,
+-2810,-2832,-2853,-2873,-2889,-2905,-2920,-2939,-2962,-2991,-3023,-3060,-3102,-3145,-3192,-3237,-3282,-3318,-3343,-3352,
+-3353,-3364,-3390,-3410,-3438,-3477,-3518,-3574,-3636,-3686,-3728,-3773,-3812,-3842,-3881,-3912,-3944,-3980,-4008,-4042,
+-4087,-4131,-4172,-4207,-4239,-4271,-4301,-4323,-4343,-4362,-4373,-4379,-4385,-4391,-4392,-4383,-4368,-4354,-4340,-4328,
+-4317,-4306,-4296,-4282,-4263,-4249,-4236,-4221,-4204,-4185,-4181,-4171,-4163,-4162,-4155,-4148,-4141,-4128,-4115,-4101,
+-4085,-4073,-4062,-4060,-4061,-4063,-4064,-4062,-4058,-4055,-4048,-4041,-4034,-4026,-4016,-3998,-3974,-3950,-3928,-3914,
+-3906,-3897,-3885,-3867,-3839,-3812,-3799,-3797,-3801,-3804,-3805,-3800,-3791,-3779,-3762,-3738,-3720,-3695,-3667,-3639,
+-3611,-3582,-3553,-3527,-3502,-3482,-3463,-3442,-3419,-3391,-3355,-3312,-3267,-3229,-3196,-3169,-3149,-3132,-3113,-3092,
+-3068,-3038,-3008,-2974,-2940,-2904,-2863,-2818,-2770,-2719,-2662,-2602,-2534,-2464,-2383,-2302,-2218,-2128,-2036,-1944,
+-1844,-1738,-1634,-1537,-1438,-1352,-1287,-1234,-1198,-1169,-1146,-1111,-1043,-955,-862,-758,-641,-539,-457,-393,
+-337,-282,-229,-201,-179,-180,-177,-163,-149,-124,-108,-87,-50,3,84,192,327,499,679,844,
+982,1096,1165,1204,1262,1324,1348,1341,1358,1391,1425,1460,1496,1532,1567,1612,1666,1733,1798,1861,
+1925,1980,2020,2049,2106,2174,2223,2270,2330,2381,2443,2518,2605,2698,2801,2864,2879,2868,2870,2871,
+2887,2941,3038,3140,3224,3264,3317,3383,3446,3518,3616,3733,3835,3923,4011,4104,4205,4293,4365,4430,
+4503,4581,4665,4744,4807,4868,4926,4972,5000,5006,5016,5037,5060,5068,5045,4987,4917,4871,4807,4725,
+4655,4660,4697,4695,4665,4689,4768,4883,4994,5091,5168,5221,5260,5295,5324,5349,5372,5378,5363,5337,
+5316,5309,5305,5303,5313,5329,5353,5378,5403,5426,5449,5476,5504,5532,5556,5580,5607,5640,5675,5709,
+5742,5779,5821,5862,5901,5937,5976,6012,6046,6081,6119,6151,6178,6205,6235,6259,6279,6306,6336,6369,
+6412,6457,6488,6501,6503,6501,6501,6505,6521,6543,6564,6581,6593,6602,6608,6614,6614,6614,6612,6610,
+6612,6613,6615,6621,6630,6636,6658,6697,6715,6720,6711,6675,6636,6608,6573,6547,6529,6514,6507,6499,
+6487,6466,6447,6427,6415,6402,6382,6359,6328,6287,6251,6223,6211,6215,6228,6240,6242,6239,6230,6216,
+6198,6178,6159,6123,6077,6032,5988,5956,5937,5917,5897,5877,5847,5811,5772,5725,5671,5618,5569,5521,
+5473,5424,5379,5339,5305,5274,5250,5238,5229,5214,5207,5198,5189,5183,5173,5165,5153,5138,5117,5094,
+5073,5057,5046,5024,5000,4982,4966,4939,4917,4884,4852,4822,4786,4751,4725,4696,4665,4624,4581,4539,
+4494,4446,4404,4372,4345,4324,4310,4312,4332,4367,4403,4437,4464,4472,4464,4439,4412,4405,4396,4367,
+4330,4291,4247,4202,4160,4127,4092,4032,3979,3929,3891,3859,3832,3807,3760,3704,3640,3571,3499,3442,
+3380,3317,3266,3234,3203,3182,3168,3160,3142,3121,3108,3090,3060,3017,2975,2932,2893,2843,2784,2719,
+2649,2579,2505,2425,2342,2258,2185,2123,2068,2018,1969,1929,1896,1863,1832,1809,1795,1785,1782,1780,
+1779,1777,1773,1775,1779,1784,1794,1802,1804,1805,1804,1810,1819,1828,1824,1821,1818,1823,1820,1808,
+1798,1795,1792,1784,1778,1771,1765,1757,1746,1727,1701,1675,1648,1626,1605,1592,1572,1554,1541,1540,
+1539,1529,1519,1507,1494,1484,1472,1463,1457,1468,1477,1474,1479,1485,1479,1446,1412,1390,1376,1369,
+1367,1368,1370,1370,1371,1368,1360,1343,1311,1282,1262,1241,1225,1210,1193,1184,1191,1199,1197,1186,
+1166,1140,1113,1084,1053,1027,1006,986,960,941,940,954,971,984,994,990,965,929,889,854,
+828,807,783,755,721,676,629,585,544,508,481,458,420,380,344,310,279,257,231,209,
+186,170,154,133,110,83,56,31,12,-1,-12,-12,-25,-66,-109,-151,-186,-205,-202,-173,
+-156,-155,-133,-95,-109,-147,-172,-194,-278,-346,-416,-477,-523,-562,-594,-628,-681,-747,-787,-816,
+-855,-897,-943,-985,-1028,-1061,-1085,-1100,-1113,-1123,-1135,-1151,-1170,-1175,-1192,-1217,-1241,-1265,-1291,-1317,
+-1346,-1378,-1408,-1441,-1478,-1510,-1544,-1584,-1618,-1638,-1656,-1684,-1713,-1743,-1769,-1794,-1815,-1837,-1862,-1889,
+-1916,-1947,-1978,-2004,-2025,-2041,-2056,-2072,-2091,-2110,-2127,-2144,-2162,-2182,-2198,-2203,-2202,-2200,-2198,-2197,
+-2196,-2201,-2213,-2228,-2235,-2236,-2237,-2241,-2245,-2252,-2263,-2278,-2293,-2309,-2327,-2347,-2365,-2376,-2379,-2374,
+-2365,-2356,-2352,-2357,-2369,-2389,-2414,-2438,-2461,-2481,-2495,-2502,-2504,-2506,-2508,-2516,-2528,-2547,-2570,-2583,
+-2581,-2574,-2569,-2565,-2562,-2562,-2555,-2538,-2531,-2523,-2522,-2515,-2499,-2491,-2492,-2481,-2469,-2477,-2476,-2497,
+-2517,-2551,-2591,-2617,-2650,-2679,-2701,-2727,-2752,-2770,-2777,-2792,-2816,-2827,-2836,-2837,-2814,-2819,-2837,-2832,
+-2843,-2880,-2898,-2906,-2906,-2908,-2922,-2936,-2936,-2929,-2923,-2920,-2912,-2903,-2912,-2923,-2927,-2923,-2918,-2913,
+-2899,-2886,-2881,-2872,-2862,-2851,-2841,-2835,-2833,-2813,-2789,-2783,-2790,-2788,-2782,-2773,-2758,-2737,-2716,-2692,
+-2663,-2634,-2607,-2576,-2542,-2506,-2475,-2451,-2428,-2405,-2382,-2363,-2348,-2333,-2314,-2291,-2262,-2237,-2226,-2212,
+-2196,-2182,-2166,-2160,-2157,-2168,-2180,-2195,-2207,-2215,-2221,-2219,-2214,-2204,-2192,-2177,-2158,-2133,-2099,-2064,
+-2030,-1991,-1949,-1915,-1891,-1872,-1856,-1844,-1831,-1812,-1783,-1754,-1728,-1704,-1679,-1655,-1632,-1612,-1591,-1570,
+-1551,-1532,-1514,-1495,-1477,-1462,-1444,-1422,-1400,-1377,-1354,-1331,-1313,-1298,-1280,-1260,-1239,-1220,-1206,-1192,
+-1178,-1168,-1165,-1168,-1176,-1187,-1197,-1203,-1200,-1185,-1159,-1124,-1083,-1036,-981,-919,-856,-797,-746,-699,
+-648,-593,-533,-468,-398,-330,-266,-198,-124,-54,18,86,151,215,274,334,398,459,505,547,
+579,624,673,713,746,776,779,769,758,751,751,743,738,734,742,743,753,767,781,805,
+823,843,870,904,938,967,976,980,974,970,978,1000,1019,1033,1063,1088,1109,1110,1126,1130,
+1140,1153,1150,1137,1140,1144,1136,1126,1131,1126,1140,1144,1140,1111,1088,1076,1072,1068,1058,1034,
+1035,1065,1096,1100,1094,1110,1157,1199,1201,1205,1185,1195,1207,1231,1245,1260,1279,1270,1262,1273,
+1276,1294,1297,1299,1282,1284,1291,1286,1268,1263,1260,1257,1251,1254,1256,1246,1223,1210,1207,1203,
+1187,1181,1184,1185,1182,1185,1197,1209,1232,1223,1201,1171,1143,1111,1078,1051,1023,1004,990,974,
+962,947,947,952,948,934,913,926,927,913,901,890,877,866,853,846,843,833,817,796,
+790,775,757,743,716,699,684,668,657,643,621,586,563,526,505,495,492,492,495,484,
+449,421,398,390,389,392,395,403,412,419,420,426,437,444,448,448,443,442,445,453,
+463,474,487,499,505,510,520,535,543,548,554,551,548,549,555,570,582,590,594,603,
+622,634,635,637,647,663,667,657,655,651,648,651,647,638,634,636,637,635,631,631,
+634,640,641,640,648,652,658,663,676,695,710,727,747,759,783,807,828,861,883,900,
+921,943,968,997,1046,1073,1088,1094,1064,1015,1002,1017,1031,1037,1034,1038,1046,1048,1055,1069,
+1094,1099,1106,1125,1129,1137,1150,1192,1207,1234,1249,1236,1215,1206,1206,1210,1217,1243,1265,1289,
+1322,1369,1418,1460,1489,1532,1580,1608,1604,1609,1614,1596,1575,1595,1595,1600,1627,1647,1646,1657,
+1688,1691,1657,1607,1610,1647,1642,1605,1555,1531,1453,1385,1357,1333,1296,1277,1275,1263,1254,1243,
+1232,1225,1217,1202,1205,1193,1174,1145,1122,1123,1105,1073,1035,999,950,908,886,879,835,821,
+805,781,753,733,733,732,697,669,633,608,579,543,534,527,506,491,477,451,443,424,
+417,423,418,408,379,372,379,355,334,314,287,249,205,157,125,78,54,9,-41,-110,
+-184,-247,-322,-405,-475,-515,-566,-626,-693,-761,-808,-853,-917,-946,-971,-1015,-1063,-1118,-1178,-1212,
+-1234,-1266,-1303,-1349,-1410,-1476,-1547,-1618,-1682,-1729,-1764,-1798,-1830,-1864,-1899,-1932,-1974,-2020,-2064,-2106,
+-2142,-2180,-2221,-2261,-2294,-2328,-2372,-2422,-2463,-2489,-2511,-2527,-2543,-2567,-2595,-2633,-2676,-2719,-2755,-2783,
+-2810,-2830,-2850,-2878,-2899,-2916,-2931,-2947,-2965,-2984,-3008,-3038,-3074,-3114,-3157,-3205,-3253,-3288,-3307,-3319,
+-3335,-3353,-3381,-3409,-3434,-3466,-3504,-3556,-3613,-3667,-3720,-3770,-3806,-3839,-3867,-3892,-3915,-3945,-3984,-4014,
+-4050,-4099,-4144,-4185,-4219,-4249,-4280,-4315,-4344,-4366,-4385,-4401,-4408,-4409,-4417,-4422,-4427,-4427,-4417,-4403,
+-4397,-4395,-4382,-4371,-4359,-4345,-4332,-4319,-4306,-4291,-4277,-4272,-4272,-4271,-4271,-4266,-4258,-4251,-4242,-4229,
+-4214,-4202,-4194,-4186,-4179,-4173,-4170,-4164,-4158,-4154,-4152,-4151,-4147,-4140,-4129,-4113,-4091,-4067,-4042,-4022,
+-4005,-3990,-3982,-3972,-3958,-3933,-3913,-3894,-3871,-3860,-3859,-3872,-3883,-3880,-3869,-3849,-3826,-3801,-3774,-3746,
+-3716,-3684,-3649,-3615,-3583,-3554,-3526,-3500,-3467,-3430,-3392,-3350,-3305,-3264,-3222,-3190,-3168,-3147,-3133,-3107,
+-3096,-3090,-3074,-3050,-3021,-2989,-2953,-2913,-2870,-2823,-2774,-2723,-2669,-2613,-2554,-2483,-2401,-2310,-2216,-2123,
+-2028,-1931,-1825,-1713,-1611,-1505,-1416,-1339,-1268,-1211,-1163,-1129,-1109,-1093,-1043,-963,-873,-773,-649,-546,
+-469,-417,-356,-306,-261,-231,-206,-203,-167,-151,-131,-117,-103,-64,4,93,210,356,535,708,
+848,961,1049,1109,1171,1243,1292,1284,1268,1277,1308,1346,1382,1420,1462,1502,1542,1586,1632,1693,
+1767,1845,1919,1964,1996,2064,2132,2181,2219,2268,2335,2402,2460,2518,2598,2702,2804,2855,2874,2891,
+2904,2922,2947,3002,3084,3163,3246,3300,3371,3462,3572,3691,3794,3882,3964,4045,4131,4217,4299,4381,
+4460,4532,4600,4673,4738,4788,4843,4914,4981,5033,5066,5073,5055,5045,5048,5024,4985,4944,4869,4799,
+4735,4702,4680,4688,4704,4752,4823,4905,4996,5088,5163,5204,5235,5262,5283,5301,5306,5293,5268,5252,
+5249,5257,5265,5274,5283,5299,5320,5347,5376,5407,5433,5463,5496,5527,5552,5576,5602,5632,5663,5695,
+5728,5766,5812,5856,5894,5933,5973,6011,6043,6082,6117,6151,6181,6210,6235,6256,6269,6294,6324,6349,
+6380,6419,6461,6496,6512,6517,6518,6519,6531,6556,6575,6589,6596,6595,6591,6587,6584,6579,6579,6584,
+6580,6577,6575,6571,6569,6569,6569,6570,6588,6604,6620,6619,6583,6557,6538,6522,6506,6492,6472,6455,
+6437,6423,6400,6374,6340,6306,6271,6237,6204,6173,6151,6145,6153,6176,6195,6206,6216,6214,6206,6198,
+6190,6183,6172,6145,6114,6082,6046,6008,5986,5980,5967,5950,5925,5893,5857,5816,5767,5719,5670,5616,
+5567,5524,5481,5437,5396,5360,5321,5284,5256,5232,5211,5192,5174,5161,5152,5140,5125,5109,5089,5073,
+5065,5045,5021,4994,4974,4960,4951,4939,4901,4890,4872,4845,4811,4774,4743,4715,4688,4669,4652,4630,
+4596,4549,4499,4460,4435,4417,4411,4413,4423,4445,4469,4475,4474,4479,4489,4486,4473,4461,4444,4421,
+4391,4365,4339,4321,4269,4239,4191,4136,4102,4053,4025,3994,3941,3906,3877,3792,3720,3667,3616,3559,
+3495,3422,3358,3294,3242,3206,3187,3177,3160,3143,3130,3113,3089,3057,3016,2950,2881,2820,2761,2698,
+2628,2547,2459,2375,2300,2225,2152,2084,2019,1960,1910,1877,1855,1837,1818,1798,1787,1785,1784,1788,
+1795,1796,1792,1791,1801,1807,1816,1824,1832,1837,1832,1824,1820,1820,1830,1830,1832,1831,1839,1836,
+1826,1814,1803,1800,1792,1779,1767,1755,1745,1732,1714,1690,1664,1641,1612,1588,1568,1551,1535,1518,
+1507,1503,1499,1495,1488,1472,1449,1431,1427,1430,1431,1439,1454,1462,1457,1450,1434,1412,1383,1357,
+1342,1328,1314,1303,1301,1302,1308,1310,1308,1303,1291,1270,1247,1217,1184,1166,1157,1161,1183,1200,
+1200,1185,1160,1131,1103,1071,1041,1015,990,968,953,943,943,957,972,986,998,993,968,933,
+895,866,845,824,793,754,712,665,612,560,514,473,433,391,351,316,282,250,225,207,
+183,170,160,150,137,121,102,81,58,40,21,0,-18,-36,-60,-98,-138,-173,-192,-181,
+-152,-139,-132,-135,-128,-159,-185,-218,-250,-332,-399,-468,-524,-567,-607,-639,-684,-759,-839,-881,
+-906,-921,-945,-980,-1018,-1047,-1067,-1080,-1091,-1097,-1103,-1119,-1137,-1152,-1174,-1201,-1233,-1263,-1295,-1329,
+-1360,-1388,-1416,-1442,-1467,-1499,-1539,-1575,-1614,-1645,-1676,-1706,-1739,-1773,-1806,-1835,-1858,-1879,-1898,-1916,
+-1936,-1957,-1982,-2008,-2034,-2057,-2076,-2092,-2105,-2122,-2142,-2161,-2179,-2200,-2222,-2237,-2244,-2247,-2247,-2246,
+-2247,-2249,-2252,-2259,-2273,-2289,-2306,-2316,-2320,-2317,-2313,-2314,-2324,-2340,-2362,-2383,-2402,-2414,-2426,-2433,
+-2429,-2414,-2401,-2393,-2393,-2399,-2417,-2445,-2472,-2497,-2518,-2532,-2542,-2545,-2541,-2533,-2528,-2533,-2553,-2577,
+-2595,-2599,-2598,-2602,-2604,-2605,-2605,-2599,-2593,-2591,-2582,-2577,-2578,-2575,-2571,-2570,-2560,-2546,-2540,-2543,
+-2548,-2559,-2586,-2614,-2652,-2685,-2716,-2745,-2765,-2779,-2803,-2823,-2837,-2858,-2865,-2862,-2856,-2855,-2870,-2877,
+-2878,-2887,-2915,-2936,-2947,-2951,-2956,-2959,-2956,-2948,-2925,-2903,-2884,-2865,-2854,-2873,-2893,-2920,-2937,-2949,
+-2954,-2953,-2939,-2913,-2888,-2877,-2880,-2879,-2880,-2880,-2870,-2865,-2858,-2850,-2840,-2834,-2827,-2818,-2800,-2775,
+-2748,-2720,-2691,-2662,-2629,-2594,-2559,-2529,-2504,-2484,-2467,-2449,-2429,-2411,-2396,-2380,-2361,-2335,-2308,-2294,
+-2286,-2278,-2269,-2253,-2235,-2223,-2219,-2228,-2244,-2265,-2280,-2291,-2296,-2285,-2268,-2247,-2219,-2186,-2153,-2119,
+-2081,-2035,-1980,-1933,-1902,-1879,-1864,-1851,-1838,-1828,-1812,-1782,-1741,-1704,-1672,-1638,-1608,-1583,-1563,-1543,
+-1523,-1502,-1482,-1464,-1447,-1427,-1407,-1384,-1359,-1332,-1306,-1282,-1263,-1248,-1236,-1223,-1210,-1200,-1192,-1184,
+-1171,-1157,-1149,-1151,-1154,-1155,-1159,-1163,-1158,-1142,-1119,-1089,-1053,-1011,-963,-913,-866,-821,-780,-746,
+-718,-689,-654,-613,-572,-530,-484,-436,-388,-335,-277,-211,-145,-74,0,89,189,299,399,486,
+549,589,615,661,708,758,795,814,811,811,810,797,790,788,789,782,785,800,812,822,
+828,839,851,867,898,934,982,1011,1036,1043,1043,1049,1056,1067,1064,1071,1097,1101,1105,1118,
+1143,1176,1183,1167,1153,1146,1151,1152,1133,1141,1155,1163,1198,1212,1189,1167,1138,1133,1120,1095,
+1096,1122,1150,1146,1144,1145,1175,1189,1210,1234,1235,1233,1239,1261,1277,1293,1310,1321,1321,1319,
+1313,1304,1313,1323,1327,1312,1311,1304,1296,1292,1280,1286,1256,1229,1244,1248,1239,1225,1219,1212,
+1195,1184,1177,1183,1199,1210,1200,1187,1190,1186,1178,1157,1145,1133,1114,1082,1053,1026,995,966,
+949,947,956,956,948,939,935,942,945,940,933,923,903,899,895,880,866,857,846,830,
+807,790,777,768,761,744,731,732,728,721,704,685,665,642,624,610,603,588,561,546,
+536,533,521,497,474,464,454,448,447,449,451,452,458,463,465,464,465,458,450,452,
+455,464,484,501,513,521,520,520,529,538,543,554,563,556,555,564,584,602,610,613,
+617,628,639,641,648,661,672,674,669,669,668,667,677,676,671,672,679,682,684,684,
+681,667,668,677,681,691,691,697,708,723,740,758,780,804,828,857,886,911,929,944,
+968,1005,1034,1050,1068,1070,1082,1095,1091,1066,1025,1027,1030,1037,1045,1038,1046,1075,1099,1108,
+1124,1137,1143,1142,1131,1122,1118,1126,1146,1178,1201,1206,1215,1223,1231,1250,1265,1289,1317,1358,
+1397,1444,1498,1543,1583,1608,1629,1643,1627,1597,1561,1558,1588,1601,1603,1586,1580,1590,1610,1655,
+1692,1713,1725,1712,1681,1666,1694,1723,1728,1703,1677,1635,1594,1556,1503,1411,1341,1291,1267,1266,
+1275,1270,1274,1257,1240,1232,1231,1199,1166,1155,1129,1103,1082,1048,1012,983,976,950,910,896,
+858,825,792,789,783,761,744,718,683,652,611,571,553,549,545,527,500,454,444,429,
+412,390,370,348,340,336,321,315,317,299,275,248,236,213,169,135,114,89,61,-1,
+-64,-145,-227,-290,-338,-390,-446,-498,-563,-624,-701,-747,-810,-894,-953,-969,-1009,-1069,-1128,-1171,
+-1213,-1248,-1275,-1299,-1328,-1366,-1417,-1491,-1572,-1651,-1712,-1757,-1797,-1835,-1874,-1910,-1946,-1988,-2036,-2083,
+-2129,-2175,-2215,-2256,-2303,-2347,-2384,-2427,-2473,-2513,-2545,-2573,-2594,-2618,-2642,-2662,-2694,-2732,-2759,-2781,
+-2810,-2834,-2859,-2884,-2899,-2913,-2932,-2950,-2969,-2987,-3010,-3036,-3068,-3102,-3137,-3184,-3232,-3275,-3292,-3305,
+-3326,-3351,-3379,-3410,-3437,-3463,-3491,-3527,-3571,-3627,-3686,-3739,-3784,-3826,-3859,-3880,-3896,-3919,-3950,-3986,
+-4025,-4067,-4113,-4157,-4193,-4221,-4249,-4281,-4314,-4343,-4366,-4387,-4402,-4416,-4428,-4440,-4449,-4459,-4468,-4470,
+-4465,-4457,-4453,-4444,-4434,-4423,-4410,-4398,-4392,-4389,-4385,-4381,-4378,-4377,-4369,-4366,-4366,-4363,-4354,-4341,
+-4324,-4305,-4289,-4282,-4279,-4283,-4284,-4279,-4271,-4262,-4253,-4243,-4234,-4228,-4217,-4200,-4184,-4166,-4148,-4129,
+-4114,-4098,-4080,-4064,-4050,-4034,-4013,-3994,-3973,-3954,-3945,-3945,-3947,-3944,-3937,-3923,-3902,-3878,-3856,-3833,
+-3809,-3783,-3754,-3722,-3690,-3656,-3622,-3588,-3556,-3519,-3478,-3436,-3391,-3343,-3295,-3246,-3205,-3182,-3176,-3173,
+-3153,-3126,-3101,-3077,-3058,-3036,-3007,-2973,-2938,-2900,-2857,-2811,-2764,-2714,-2660,-2601,-2536,-2467,-2393,-2309,
+-2208,-2104,-1981,-1879,-1788,-1701,-1604,-1510,-1425,-1354,-1282,-1215,-1158,-1109,-1072,-1068,-1038,-970,-897,-807,
+-712,-617,-535,-466,-399,-350,-320,-275,-262,-243,-211,-181,-149,-110,-41,42,148,272,418,574,
+725,845,932,998,1058,1139,1232,1228,1182,1168,1190,1231,1287,1335,1374,1428,1474,1513,1553,1604,
+1662,1728,1795,1860,1907,1941,1980,2048,2092,2145,2212,2278,2341,2398,2444,2487,2556,2673,2793,2872,
+2906,2924,2937,2957,2990,3048,3124,3197,3272,3362,3477,3614,3733,3808,3872,3960,4059,4154,4242,4336,
+4440,4538,4614,4674,4731,4781,4833,4888,4952,5013,5056,5068,5060,5051,5034,5015,5004,4961,4865,4781,
+4723,4678,4670,4676,4713,4771,4847,4925,4988,5034,5060,5066,5077,5100,5121,5140,5160,5179,5196,5207,
+5206,5209,5222,5240,5260,5283,5306,5335,5363,5391,5421,5452,5483,5511,5540,5568,5596,5622,5650,5682,
+5717,5756,5801,5845,5886,5924,5966,6002,6043,6079,6116,6150,6185,6216,6239,6254,6268,6297,6332,6353,
+6378,6406,6434,6455,6472,6490,6507,6532,6552,6567,6582,6595,6595,6587,6577,6566,6563,6567,6571,6570,
+6564,6553,6543,6534,6527,6515,6498,6473,6438,6408,6394,6397,6408,6418,6427,6428,6421,6405,6379,6350,
+6320,6288,6260,6239,6216,6191,6164,6141,6122,6107,6097,6097,6106,6127,6153,6172,6186,6194,6196,6188,
+6176,6165,6154,6140,6123,6101,6079,6057,6026,5995,5981,5983,5978,5962,5936,5896,5847,5796,5743,5694,
+5646,5601,5556,5511,5466,5419,5375,5332,5292,5256,5229,5203,5183,5164,5151,5137,5124,5105,5086,5075,
+5072,5060,5037,5007,4974,4947,4924,4906,4901,4898,4885,4869,4842,4819,4793,4767,4743,4723,4712,4696,
+4678,4649,4602,4565,4544,4528,4513,4514,4526,4540,4552,4548,4527,4508,4506,4518,4525,4513,4489,4459,
+4434,4406,4378,4354,4338,4326,4302,4260,4212,4196,4146,4115,4066,4009,3952,3879,3793,3736,3704,3653,
+3595,3540,3481,3425,3390,3324,3270,3234,3201,3174,3150,3129,3112,3080,3040,2988,2926,2858,2784,2699,
+2610,2536,2459,2374,2285,2208,2144,2079,2014,1955,1908,1875,1860,1842,1820,1803,1795,1795,1797,1797,
+1802,1808,1806,1804,1809,1819,1833,1841,1844,1848,1847,1848,1842,1835,1826,1819,1828,1837,1837,1833,
+1831,1829,1826,1815,1800,1789,1777,1764,1751,1735,1718,1699,1680,1654,1628,1604,1581,1555,1536,1525,
+1516,1502,1487,1474,1467,1462,1435,1409,1391,1383,1384,1389,1393,1401,1406,1407,1399,1381,1362,1336,
+1306,1291,1287,1291,1294,1285,1258,1238,1232,1230,1226,1220,1219,1222,1221,1212,1198,1183,1172,1167,
+1183,1192,1183,1163,1136,1107,1072,1033,1002,974,950,940,935,935,940,949,960,973,987,986,
+961,928,903,879,857,827,790,744,689,628,567,511,460,414,373,329,288,248,210,183,
+169,160,147,145,141,138,134,126,117,100,82,61,36,5,-19,-43,-85,-134,-177,-205,
+-196,-170,-157,-156,-146,-146,-160,-185,-211,-249,-342,-431,-503,-548,-597,-646,-699,-761,-837,-904,
+-956,-980,-979,-981,-1010,-1044,-1065,-1080,-1092,-1096,-1096,-1100,-1111,-1129,-1155,-1189,-1228,-1262,-1301,-1341,
+-1376,-1403,-1422,-1447,-1475,-1505,-1539,-1578,-1616,-1643,-1673,-1708,-1745,-1781,-1817,-1856,-1890,-1914,-1927,-1943,
+-1960,-1980,-2002,-2024,-2046,-2068,-2090,-2109,-2125,-2138,-2151,-2166,-2186,-2211,-2239,-2265,-2280,-2284,-2283,-2283,
+-2288,-2296,-2303,-2307,-2313,-2326,-2346,-2365,-2382,-2393,-2396,-2396,-2393,-2397,-2410,-2429,-2448,-2464,-2475,-2481,
+-2484,-2479,-2465,-2449,-2437,-2430,-2426,-2436,-2465,-2500,-2529,-2552,-2566,-2575,-2580,-2574,-2559,-2539,-2528,-2538,
+-2563,-2591,-2611,-2621,-2621,-2618,-2614,-2608,-2607,-2611,-2616,-2620,-2626,-2635,-2634,-2630,-2620,-2615,-2623,-2617,
+-2616,-2617,-2626,-2641,-2671,-2707,-2737,-2763,-2781,-2801,-2829,-2846,-2863,-2864,-2866,-2879,-2875,-2868,-2868,-2874,
+-2878,-2889,-2906,-2922,-2938,-2958,-2967,-2967,-2980,-2979,-2962,-2953,-2942,-2926,-2909,-2896,-2894,-2899,-2909,-2926,
+-2948,-2950,-2949,-2948,-2945,-2938,-2925,-2902,-2897,-2895,-2896,-2893,-2892,-2891,-2883,-2877,-2871,-2860,-2843,-2824,
+-2808,-2789,-2766,-2732,-2696,-2662,-2630,-2599,-2569,-2543,-2523,-2506,-2491,-2475,-2456,-2440,-2430,-2421,-2408,-2384,
+-2367,-2354,-2346,-2333,-2315,-2299,-2282,-2275,-2284,-2298,-2314,-2326,-2330,-2332,-2326,-2314,-2285,-2246,-2201,-2153,
+-2099,-2037,-1974,-1929,-1894,-1876,-1868,-1858,-1851,-1843,-1835,-1825,-1797,-1746,-1692,-1645,-1602,-1567,-1538,-1509,
+-1483,-1457,-1432,-1411,-1393,-1378,-1368,-1359,-1342,-1316,-1289,-1270,-1261,-1259,-1255,-1246,-1231,-1215,-1202,-1192,
+-1182,-1171,-1155,-1136,-1120,-1101,-1075,-1054,-1042,-1027,-1005,-977,-941,-901,-860,-816,-772,-734,-698,-665,
+-637,-616,-602,-582,-556,-528,-503,-479,-450,-417,-376,-332,-285,-233,-173,-106,-24,75,192,310,
+400,484,542,602,650,702,765,812,852,860,875,875,868,860,859,854,848,850,856,869,
+880,885,888,902,924,942,958,990,1027,1067,1090,1089,1066,1061,1070,1064,1071,1081,1109,1149,
+1171,1168,1186,1203,1204,1215,1215,1193,1197,1176,1157,1170,1180,1181,1204,1236,1209,1161,1143,1136,
+1153,1156,1161,1165,1170,1185,1208,1223,1238,1265,1286,1293,1293,1298,1293,1313,1325,1329,1332,1346,
+1348,1338,1334,1337,1343,1346,1320,1298,1284,1281,1284,1279,1260,1236,1225,1214,1193,1180,1169,1163,
+1159,1152,1151,1155,1162,1176,1193,1196,1207,1193,1162,1160,1154,1116,1087,1070,1056,1030,998,977,
+970,979,989,989,978,969,966,964,959,951,947,947,942,930,919,904,885,871,864,858,
+850,835,824,811,800,788,772,756,732,697,666,656,658,665,664,647,626,600,580,570,
+564,560,562,564,561,554,542,520,499,484,481,484,490,503,509,514,510,496,483,470,
+464,467,476,487,501,520,534,539,543,549,554,561,569,577,579,589,591,600,609,610,
+611,624,634,645,656,664,679,689,685,681,683,687,693,699,697,703,708,710,710,711,
+705,711,716,720,728,733,743,754,768,782,801,819,836,857,880,906,931,955,979,1005,
+1027,1047,1072,1099,1115,1106,1088,1082,1083,1070,1043,1030,1026,1025,1031,1034,1044,1076,1115,1137,
+1147,1158,1155,1163,1165,1150,1140,1152,1159,1163,1160,1180,1208,1232,1251,1274,1303,1337,1374,1415,
+1455,1521,1609,1677,1741,1764,1728,1648,1571,1531,1490,1507,1561,1597,1627,1649,1662,1677,1709,1711,
+1693,1667,1649,1655,1672,1675,1677,1671,1676,1691,1689,1685,1673,1647,1613,1572,1528,1492,1400,1332,
+1297,1292,1286,1285,1280,1275,1274,1253,1212,1220,1202,1157,1145,1127,1094,1063,1039,1005,978,942,
+907,873,842,799,793,782,762,734,698,666,614,590,568,552,529,507,481,461,434,436,
+413,391,372,344,326,306,284,263,238,246,245,239,205,186,182,166,132,118,98,62,
+9,-36,-105,-189,-230,-274,-339,-411,-476,-538,-587,-667,-728,-808,-877,-935,-1003,-1044,-1091,-1138,
+-1185,-1228,-1263,-1290,-1312,-1340,-1374,-1417,-1479,-1559,-1631,-1685,-1732,-1788,-1840,-1885,-1919,-1952,-1989,-2036,
+-2087,-2138,-2190,-2242,-2293,-2342,-2389,-2432,-2471,-2516,-2559,-2597,-2627,-2656,-2683,-2701,-2719,-2742,-2773,-2795,
+-2822,-2851,-2874,-2890,-2911,-2929,-2942,-2960,-2982,-3005,-3025,-3048,-3072,-3101,-3137,-3173,-3214,-3249,-3277,-3304,
+-3327,-3351,-3383,-3411,-3438,-3458,-3480,-3512,-3547,-3597,-3651,-3697,-3739,-3781,-3812,-3838,-3863,-3895,-3930,-3969,
+-4009,-4047,-4086,-4126,-4164,-4196,-4227,-4255,-4288,-4315,-4337,-4356,-4376,-4395,-4415,-4425,-4436,-4452,-4464,-4471,
+-4477,-4480,-4480,-4485,-4482,-4484,-4490,-4492,-4487,-4481,-4478,-4474,-4472,-4472,-4471,-4469,-4468,-4471,-4471,-4461,
+-4448,-4434,-4414,-4397,-4387,-4385,-4384,-4381,-4378,-4373,-4365,-4354,-4341,-4324,-4308,-4292,-4275,-4252,-4232,-4213,
+-4196,-4177,-4157,-4140,-4125,-4110,-4095,-4080,-4064,-4053,-4045,-4036,-4028,-4012,-3992,-3966,-3938,-3911,-3887,-3861,
+-3846,-3829,-3813,-3793,-3765,-3736,-3708,-3677,-3642,-3606,-3566,-3524,-3482,-3440,-3401,-3361,-3321,-3286,-3257,-3234,
+-3216,-3197,-3171,-3141,-3102,-3058,-3016,-2970,-2931,-2894,-2864,-2835,-2807,-2772,-2731,-2687,-2640,-2583,-2525,-2458,
+-2388,-2305,-2208,-2111,-2011,-1920,-1825,-1741,-1655,-1567,-1488,-1399,-1324,-1252,-1178,-1119,-1072,-1040,-1023,-986,
+-945,-864,-780,-703,-631,-561,-491,-414,-375,-318,-283,-246,-197,-131,-62,21,124,239,364,498,
+622,740,833,905,963,1028,1111,1151,1129,1092,1082,1111,1166,1229,1289,1358,1408,1438,1479,1526,
+1581,1638,1700,1754,1801,1842,1881,1923,1975,2033,2091,2154,2211,2261,2312,2366,2411,2459,2543,2645,
+2767,2850,2895,2936,2974,3002,3033,3079,3161,3258,3350,3478,3608,3696,3782,3877,3991,4110,4214,4304,
+4391,4481,4567,4637,4691,4739,4779,4821,4877,4952,5019,5059,5074,5073,5049,5006,4961,4890,4837,4778,
+4710,4655,4654,4672,4716,4789,4864,4922,4948,4962,4980,5000,5005,5019,5042,5065,5088,5113,5141,5167,
+5187,5196,5205,5220,5243,5268,5290,5320,5353,5386,5419,5448,5475,5502,5527,5557,5584,5611,5640,5671,
+5708,5751,5790,5832,5874,5923,5965,5998,6039,6076,6110,6146,6185,6219,6240,6252,6272,6307,6341,6367,
+6389,6408,6427,6443,6454,6459,6471,6503,6535,6558,6573,6579,6574,6565,6548,6528,6517,6520,6526,6524,
+6510,6494,6479,6470,6464,6456,6441,6416,6392,6350,6318,6301,6289,6285,6288,6289,6286,6283,6270,6245,
+6220,6198,6179,6163,6151,6139,6121,6102,6086,6074,6060,6065,6078,6096,6119,6139,6152,6162,6169,6169,
+6165,6154,6144,6138,6128,6111,6090,6066,6043,6019,5993,5972,5961,5959,5948,5936,5911,5863,5812,5771,
+5739,5702,5664,5624,5577,5532,5486,5436,5387,5346,5310,5277,5245,5222,5208,5192,5173,5152,5132,5110,
+5085,5061,5039,5013,4991,4969,4946,4925,4908,4898,4954,4927,4899,4869,4835,4806,4785,4773,4769,4763,
+4753,4728,4699,4671,4651,4630,4615,4602,4590,4576,4560,4543,4537,4535,4541,4542,4529,4511,4486,4464,
+4446,4434,4424,4417,4397,4412,4413,4386,4346,4314,4253,4227,4185,4130,4052,3955,3862,3785,3717,3680,
+3630,3571,3515,3468,3434,3399,3374,3340,3288,3239,3189,3156,3126,3096,3065,3016,2959,2887,2821,2738,
+2647,2549,2454,2382,2310,2232,2163,2108,2060,2013,1964,1928,1907,1888,1871,1860,1849,1841,1838,1834,
+1829,1826,1824,1824,1824,1834,1848,1858,1869,1870,1865,1862,1859,1855,1849,1844,1840,1836,1838,1844,
+1844,1841,1840,1840,1826,1805,1791,1777,1763,1749,1733,1718,1703,1685,1661,1634,1604,1579,1561,1542,
+1526,1513,1506,1494,1486,1475,1448,1417,1393,1373,1364,1360,1362,1373,1390,1403,1408,1402,1385,1363,
+1333,1308,1289,1279,1273,1269,1261,1249,1232,1211,1191,1166,1156,1155,1159,1167,1165,1157,1147,1140,
+1138,1139,1143,1135,1132,1127,1113,1081,1030,984,950,934,929,924,919,920,925,933,942,950,
+956,953,942,924,900,869,832,791,745,694,632,566,506,453,406,363,322,282,238,193,
+154,127,116,122,130,128,129,131,133,130,121,105,80,48,11,-25,-55,-87,-135,-184,
+-220,-235,-233,-226,-217,-218,-212,-196,-175,-199,-265,-366,-454,-519,-566,-610,-664,-736,-802,-866,
+-925,-965,-986,-1005,-1011,-1032,-1053,-1067,-1087,-1111,-1115,-1120,-1128,-1141,-1164,-1197,-1232,-1272,-1314,-1352,
+-1387,-1416,-1442,-1468,-1494,-1521,-1557,-1601,-1651,-1691,-1720,-1745,-1776,-1805,-1834,-1866,-1901,-1933,-1958,-1978,
+-1998,-2023,-2052,-2076,-2089,-2100,-2115,-2134,-2150,-2162,-2170,-2178,-2191,-2211,-2235,-2262,-2287,-2304,-2312,-2316,
+-2322,-2333,-2346,-2355,-2359,-2370,-2385,-2405,-2426,-2446,-2465,-2478,-2485,-2485,-2484,-2485,-2495,-2513,-2530,-2537,
+-2539,-2542,-2543,-2531,-2512,-2493,-2479,-2477,-2487,-2508,-2534,-2560,-2583,-2600,-2610,-2609,-2597,-2578,-2561,-2546,
+-2540,-2555,-2585,-2611,-2631,-2643,-2641,-2628,-2618,-2617,-2625,-2635,-2639,-2648,-2650,-2655,-2660,-2661,-2663,-2673,
+-2674,-2673,-2675,-2686,-2707,-2739,-2764,-2791,-2811,-2830,-2837,-2843,-2842,-2848,-2859,-2866,-2879,-2885,-2886,-2889,
+-2890,-2898,-2910,-2921,-2936,-2941,-2948,-2951,-2956,-2978,-2985,-2991,-2982,-2981,-2971,-2958,-2936,-2928,-2932,-2935,
+-2938,-2952,-2964,-2964,-2955,-2951,-2949,-2939,-2920,-2901,-2889,-2893,-2899,-2904,-2901,-2892,-2889,-2884,-2872,-2852,
+-2834,-2817,-2806,-2789,-2764,-2733,-2700,-2669,-2637,-2608,-2582,-2563,-2547,-2534,-2518,-2501,-2482,-2465,-2458,-2448,
+-2431,-2416,-2397,-2383,-2371,-2355,-2344,-2334,-2330,-2329,-2335,-2347,-2359,-2361,-2363,-2350,-2320,-2276,-2218,-2148,
+-2076,-2012,-1957,-1917,-1890,-1878,-1882,-1889,-1892,-1894,-1894,-1888,-1877,-1848,-1797,-1736,-1676,-1613,-1550,-1493,
+-1451,-1423,-1405,-1383,-1353,-1321,-1301,-1293,-1291,-1288,-1284,-1277,-1270,-1268,-1265,-1257,-1246,-1229,-1209,-1192,
+-1169,-1138,-1104,-1072,-1042,-1014,-985,-952,-918,-888,-858,-830,-802,-771,-732,-686,-643,-612,-585,-556,
+-527,-502,-479,-457,-436,-416,-395,-377,-361,-345,-330,-313,-290,-256,-208,-149,-83,-11,66,165,
+284,394,481,554,617,665,707,754,804,851,880,888,913,950,972,955,941,938,937,939,
+951,954,953,950,952,975,988,1006,1032,1067,1104,1124,1142,1128,1105,1111,1098,1095,1129,1149,
+1167,1189,1203,1208,1224,1240,1246,1255,1278,1260,1254,1230,1205,1191,1189,1195,1203,1169,1132,1136,
+1146,1165,1179,1182,1196,1225,1240,1263,1287,1306,1304,1324,1341,1351,1333,1327,1343,1358,1360,1366,
+1370,1386,1380,1371,1364,1355,1330,1301,1281,1258,1250,1253,1247,1244,1243,1224,1196,1180,1162,1151,
+1149,1147,1142,1134,1129,1133,1142,1156,1174,1168,1176,1176,1160,1143,1118,1088,1061,1037,1014,1004,
+1007,1014,1021,1018,1007,1001,996,995,1001,1003,995,988,980,973,959,941,927,915,898,877,
+858,839,827,808,785,764,749,731,702,664,622,587,559,545,543,538,520,499,482,476,
+495,524,549,565,576,579,580,576,561,536,514,500,498,505,523,546,548,534,524,514,
+500,493,494,501,517,532,545,555,563,563,574,583,580,580,586,591,598,595,603,603,
+611,616,624,639,657,668,683,701,705,698,691,697,705,712,724,732,733,728,724,727,
+734,740,742,755,761,767,779,792,806,823,847,864,879,900,922,941,955,965,980,1009,
+1026,1047,1062,1076,1092,1099,1084,1082,1083,1082,1075,1061,1065,1066,1065,1073,1082,1103,1116,1138,
+1149,1161,1177,1174,1162,1174,1175,1172,1175,1179,1178,1199,1240,1263,1291,1328,1348,1388,1435,1488,
+1512,1539,1571,1544,1525,1522,1505,1444,1407,1358,1364,1414,1474,1530,1574,1632,1693,1743,1752,1769,
+1767,1731,1694,1689,1697,1702,1681,1648,1618,1619,1633,1648,1660,1668,1662,1642,1645,1630,1605,1543,
+1478,1426,1391,1358,1336,1325,1311,1287,1286,1258,1211,1206,1200,1163,1145,1117,1080,1042,1016,994,
+960,921,890,858,822,806,788,751,713,671,656,648,624,599,570,538,508,489,476,461,
+412,369,350,329,303,279,248,226,209,202,203,201,182,159,149,128,132,115,91,96,
+82,37,-18,-97,-143,-177,-239,-294,-354,-425,-499,-546,-626,-711,-791,-857,-945,-1026,-1078,-1130,
+-1176,-1215,-1260,-1302,-1330,-1351,-1370,-1397,-1428,-1469,-1537,-1614,-1671,-1725,-1781,-1837,-1882,-1917,-1953,-1994,
+-2042,-2095,-2149,-2201,-2250,-2305,-2363,-2417,-2465,-2505,-2554,-2600,-2642,-2671,-2700,-2725,-2741,-2756,-2781,-2809,
+-2830,-2853,-2870,-2890,-2914,-2945,-2962,-2972,-2986,-3017,-3046,-3072,-3103,-3134,-3151,-3161,-3182,-3212,-3250,-3298,
+-3329,-3356,-3383,-3409,-3428,-3444,-3464,-3489,-3521,-3559,-3604,-3653,-3693,-3731,-3766,-3801,-3837,-3878,-3916,-3960,
+-4002,-4041,-4076,-4112,-4147,-4173,-4197,-4223,-4250,-4279,-4304,-4322,-4337,-4351,-4371,-4390,-4411,-4426,-4433,-4447,
+-4460,-4472,-4482,-4497,-4513,-4529,-4544,-4557,-4565,-4568,-4569,-4570,-4570,-4569,-4567,-4567,-4567,-4568,-4572,-4573,
+-4569,-4555,-4541,-4529,-4518,-4506,-4495,-4489,-4486,-4480,-4470,-4455,-4440,-4419,-4403,-4377,-4356,-4333,-4312,-4289,
+-4270,-4251,-4230,-4210,-4192,-4180,-4169,-4159,-4145,-4136,-4125,-4108,-4085,-4057,-4026,-3993,-3961,-3927,-3891,-3856,
+-3829,-3810,-3796,-3778,-3762,-3751,-3736,-3718,-3694,-3662,-3625,-3586,-3548,-3509,-3472,-3436,-3398,-3359,-3323,-3285,
+-3251,-3219,-3189,-3158,-3125,-3087,-3041,-2995,-2951,-2909,-2864,-2818,-2776,-2738,-2707,-2680,-2654,-2623,-2587,-2548,
+-2499,-2438,-2374,-2301,-2217,-2125,-2041,-1955,-1878,-1809,-1735,-1659,-1576,-1490,-1407,-1323,-1255,-1176,-1111,-1055,
+-1006,-967,-950,-921,-855,-780,-705,-627,-548,-460,-389,-328,-262,-184,-91,8,109,215,319,422,
+529,641,740,814,877,924,969,1026,1056,1048,1029,1022,1058,1136,1190,1237,1289,1340,1388,1438,
+1494,1552,1612,1671,1727,1780,1829,1879,1927,1961,2002,2049,2086,2135,2191,2238,2287,2338,2394,2463,
+2535,2624,2747,2869,2954,2998,3012,3026,3053,3104,3190,3305,3428,3550,3651,3774,3884,3996,4107,4220,
+4313,4380,4433,4483,4538,4594,4652,4705,4749,4801,4877,4942,4970,4980,4979,4914,4831,4774,4715,4658,
+4593,4599,4618,4653,4713,4800,4895,4959,4970,4959,4954,4960,4977,4991,5005,5020,5040,5063,5094,5123,
+5156,5184,5201,5213,5232,5254,5280,5309,5340,5372,5407,5435,5463,5488,5514,5542,5571,5603,5634,5665,
+5706,5751,5787,5830,5866,5912,5952,5990,6033,6070,6104,6147,6185,6215,6237,6254,6281,6321,6351,6375,
+6398,6421,6444,6453,6463,6469,6481,6508,6532,6553,6565,6565,6556,6548,6528,6511,6509,6509,6503,6493,
+6479,6468,6456,6449,6443,6435,6422,6402,6380,6352,6321,6298,6286,6280,6277,6271,6265,6261,6249,6224,
+6197,6172,6156,6145,6133,6122,6108,6090,6073,6063,6054,6054,6061,6076,6095,6112,6122,6132,6139,6139,
+6136,6129,6119,6115,6114,6103,6090,6073,6058,6040,6022,5999,5976,5953,5937,5928,5923,5908,5881,5857,
+5841,5818,5791,5761,5728,5690,5647,5599,5548,5497,5450,5404,5364,5331,5299,5271,5241,5209,5177,5143,
+5108,5063,5012,4977,4961,4956,4960,4975,4977,4970,4954,5013,4970,4917,4882,4854,4828,4811,4803,4800,
+4793,4785,4774,4759,4739,4712,4692,4662,4625,4590,4561,4544,4537,4533,4524,4510,4496,4490,4491,4510,
+4525,4513,4516,4543,4546,4551,4551,4498,4460,4409,4379,4324,4243,4174,4101,4013,3929,3849,3772,3725,
+3685,3628,3580,3534,3489,3453,3434,3429,3393,3346,3295,3225,3162,3114,3076,3033,2979,2921,2851,2764,
+2670,2580,2484,2392,2317,2258,2211,2172,2143,2115,2080,2047,2016,1982,1954,1929,1910,1897,1887,1880,
+1866,1862,1855,1846,1841,1841,1848,1857,1869,1880,1881,1882,1881,1876,1869,1860,1856,1860,1861,1858,
+1850,1845,1845,1844,1845,1842,1823,1803,1782,1764,1748,1734,1723,1714,1699,1677,1652,1626,1601,1580,
+1563,1547,1533,1523,1519,1509,1484,1441,1417,1398,1386,1375,1364,1359,1367,1390,1413,1425,1422,1406,
+1381,1346,1315,1290,1269,1260,1241,1221,1203,1192,1184,1170,1149,1140,1138,1143,1155,1154,1140,1128,
+1122,1122,1121,1120,1116,1111,1100,1085,1065,1023,984,952,935,932,924,905,899,903,902,898,
+895,898,907,911,900,874,837,794,751,711,671,616,544,469,409,366,332,299,263,225,
+190,152,118,92,81,86,97,96,94,98,105,106,95,69,30,-17,-57,-88,-116,-149,
+-194,-241,-271,-282,-289,-282,-274,-266,-241,-208,-196,-269,-363,-468,-543,-584,-628,-689,-773,-858,
+-923,-962,-982,-1000,-1021,-1037,-1055,-1073,-1088,-1108,-1133,-1142,-1148,-1166,-1192,-1215,-1245,-1284,-1334,-1379,
+-1416,-1447,-1477,-1511,-1540,-1565,-1598,-1640,-1689,-1740,-1780,-1807,-1826,-1847,-1873,-1897,-1917,-1943,-1973,-2001,
+-2029,-2056,-2082,-2113,-2139,-2148,-2150,-2160,-2174,-2187,-2197,-2208,-2220,-2234,-2256,-2279,-2302,-2327,-2348,-2363,
+-2375,-2389,-2401,-2412,-2420,-2423,-2428,-2445,-2469,-2490,-2511,-2533,-2551,-2563,-2568,-2569,-2572,-2579,-2588,-2597,
+-2604,-2610,-2615,-2615,-2612,-2603,-2590,-2577,-2574,-2579,-2586,-2602,-2622,-2635,-2643,-2648,-2643,-2627,-2605,-2578,
+-2560,-2553,-2560,-2580,-2603,-2626,-2648,-2660,-2658,-2651,-2648,-2651,-2659,-2671,-2686,-2695,-2698,-2705,-2719,-2729,
+-2738,-2745,-2756,-2769,-2774,-2771,-2767,-2778,-2798,-2815,-2820,-2832,-2843,-2851,-2855,-2854,-2860,-2878,-2894,-2903,
+-2909,-2917,-2929,-2947,-2958,-2966,-2970,-2969,-2967,-2967,-2977,-2992,-2997,-3001,-3005,-3000,-2993,-2984,-2974,-2969,
+-2966,-2966,-2968,-2971,-2972,-2967,-2951,-2937,-2922,-2907,-2894,-2890,-2892,-2892,-2896,-2898,-2898,-2896,-2891,-2879,
+-2866,-2859,-2856,-2845,-2824,-2798,-2770,-2744,-2717,-2687,-2657,-2628,-2604,-2589,-2576,-2560,-2539,-2513,-2491,-2480,
+-2473,-2465,-2453,-2438,-2419,-2407,-2399,-2389,-2383,-2378,-2373,-2371,-2373,-2379,-2371,-2351,-2315,-2264,-2191,-2111,
+-2044,-1993,-1948,-1912,-1889,-1886,-1906,-1947,-1982,-2017,-2038,-2050,-2043,-2014,-1959,-1888,-1813,-1736,-1648,-1547,
+-1463,-1415,-1384,-1360,-1331,-1292,-1254,-1234,-1226,-1221,-1224,-1232,-1232,-1224,-1213,-1207,-1198,-1178,-1145,-1117,
+-1101,-1078,-1040,-993,-948,-905,-869,-843,-814,-777,-740,-708,-674,-642,-609,-570,-522,-476,-447,-428,
+-398,-361,-332,-306,-283,-264,-248,-234,-221,-211,-201,-194,-185,-171,-147,-112,-59,4,73,147,
+237,343,444,528,594,651,678,715,754,803,848,877,919,969,1010,1037,1052,1047,1042,1028,
+1026,1022,1017,1025,1034,1031,1037,1048,1052,1075,1108,1145,1173,1189,1180,1160,1141,1131,1150,1160,
+1166,1181,1203,1245,1266,1290,1298,1298,1283,1277,1290,1303,1293,1290,1277,1291,1277,1261,1252,1236,
+1228,1217,1205,1200,1209,1218,1243,1283,1312,1341,1370,1375,1385,1385,1379,1370,1365,1367,1376,1382,
+1391,1389,1392,1387,1353,1348,1344,1346,1326,1300,1261,1241,1229,1215,1217,1212,1201,1197,1200,1198,
+1170,1136,1125,1129,1118,1116,1120,1123,1125,1123,1124,1135,1150,1151,1142,1122,1094,1066,1051,1042,
+1036,1026,1018,1011,1005,1005,1013,1023,1029,1034,1048,1053,1057,1050,1045,1030,1009,985,958,927,
+894,861,834,814,792,776,751,720,692,660,618,570,524,481,440,413,390,351,321,318,
+335,376,441,495,537,566,577,574,560,543,540,536,526,514,513,512,505,509,514,517,
+526,520,517,515,522,538,555,564,580,593,596,589,587,592,598,607,620,623,621,620,
+615,620,630,650,667,674,674,684,691,692,687,684,698,711,727,747,758,752,749,750,
+754,758,763,774,790,800,814,823,835,848,869,886,899,915,939,958,967,977,995,1014,
+1030,1049,1058,1069,1080,1097,1097,1088,1078,1067,1075,1074,1073,1100,1116,1122,1126,1132,1137,1145,
+1154,1161,1163,1163,1164,1168,1176,1181,1191,1207,1224,1250,1297,1330,1371,1409,1439,1452,1508,1538,
+1522,1471,1428,1347,1327,1291,1245,1240,1208,1185,1207,1275,1360,1453,1556,1646,1709,1796,1848,1859,
+1853,1814,1781,1753,1727,1703,1683,1648,1614,1589,1584,1598,1608,1641,1685,1700,1681,1680,1690,1684,
+1643,1580,1534,1479,1436,1404,1374,1356,1336,1315,1294,1249,1236,1205,1177,1156,1140,1130,1116,1084,
+1049,1011,964,923,885,853,831,806,789,751,730,717,722,690,619,595,572,541,525,493,
+439,409,394,376,352,301,249,228,215,202,196,178,164,163,160,121,77,90,97,53,
+35,32,42,9,-55,-101,-134,-188,-256,-311,-383,-452,-521,-601,-682,-750,-850,-957,-1048,-1097,
+-1141,-1192,-1245,-1297,-1333,-1356,-1369,-1380,-1394,-1409,-1434,-1488,-1566,-1630,-1690,-1761,-1827,-1883,-1930,-1969,
+-2010,-2059,-2109,-2159,-2213,-2262,-2311,-2359,-2411,-2468,-2531,-2587,-2632,-2668,-2696,-2732,-2759,-2782,-2799,-2818,
+-2837,-2859,-2880,-2894,-2913,-2951,-2985,-3008,-3016,-3036,-3059,-3078,-3097,-3115,-3131,-3149,-3185,-3221,-3257,-3296,
+-3325,-3346,-3366,-3390,-3415,-3436,-3457,-3481,-3511,-3548,-3586,-3623,-3665,-3705,-3745,-3789,-3826,-3868,-3908,-3945,
+-3986,-4029,-4066,-4102,-4136,-4163,-4188,-4207,-4227,-4249,-4271,-4291,-4304,-4311,-4331,-4346,-4356,-4385,-4403,-4427,
+-4450,-4471,-4497,-4522,-4539,-4557,-4578,-4599,-4614,-4631,-4636,-4631,-4633,-4638,-4642,-4644,-4645,-4647,-4641,-4642,
+-4643,-4639,-4636,-4630,-4628,-4625,-4616,-4606,-4595,-4584,-4572,-4556,-4534,-4513,-4489,-4464,-4437,-4411,-4391,-4368,
+-4345,-4326,-4304,-4285,-4267,-4254,-4241,-4228,-4216,-4203,-4188,-4168,-4141,-4111,-4081,-4047,-4012,-3974,-3936,-3901,
+-3875,-3856,-3835,-3814,-3790,-3768,-3745,-3718,-3689,-3659,-3628,-3590,-3549,-3510,-3471,-3432,-3389,-3339,-3292,-3246,
+-3196,-3133,-3092,-3058,-3051,-3033,-2999,-2968,-2936,-2900,-2865,-2828,-2784,-2739,-2692,-2648,-2614,-2590,-2570,-2555,
+-2539,-2508,-2464,-2415,-2359,-2300,-2233,-2160,-2086,-2016,-1951,-1887,-1822,-1746,-1660,-1574,-1499,-1417,-1347,-1272,
+-1197,-1132,-1065,-999,-940,-929,-891,-818,-733,-643,-554,-457,-357,-255,-151,-43,66,168,251,333,
+421,511,607,702,783,859,922,956,978,995,997,991,986,1015,1089,1155,1194,1231,1285,1334,
+1386,1452,1515,1574,1637,1705,1771,1821,1872,1925,1975,2019,2062,2095,2127,2161,2205,2251,2304,2354,
+2405,2468,2536,2631,2753,2876,2950,2993,3030,3058,3095,3162,3256,3351,3462,3579,3696,3804,3899,3987,
+4078,4158,4216,4266,4324,4396,4469,4540,4617,4690,4752,4812,4858,4880,4897,4905,4868,4813,4718,4627,
+4562,4536,4534,4581,4653,4750,4859,4956,5013,5018,4981,4974,4982,4995,5003,5013,5024,5039,5063,5092,
+5122,5153,5181,5201,5222,5246,5271,5300,5329,5358,5389,5419,5444,5473,5503,5534,5562,5591,5621,5654,
+5689,5727,5769,5812,5856,5904,5945,5986,6028,6063,6102,6145,6182,6209,6231,6254,6284,6318,6352,6377,
+6402,6428,6446,6456,6464,6469,6495,6520,6537,6547,6549,6547,6530,6516,6514,6512,6510,6506,6498,6487,
+6473,6458,6446,6441,6437,6431,6418,6403,6389,6369,6344,6318,6301,6297,6298,6290,6273,6269,6260,6232,
+6202,6173,6152,6139,6127,6117,6106,6092,6076,6064,6056,6051,6046,6055,6069,6084,6094,6096,6097,6099,
+6100,6094,6091,6088,6085,6077,6068,6064,6058,6042,6025,6009,5993,5975,5957,5944,5933,5923,5908,5883,
+5847,5811,5780,5754,5725,5693,5664,5637,5606,5569,5528,5484,5441,5400,5356,5314,5270,5225,5181,5140,
+5097,5050,4995,4952,4926,4918,4930,4945,4960,4988,5017,5013,4993,4966,4929,4898,4873,4852,4834,4820,
+4810,4804,4792,4772,4748,4721,4689,4651,4609,4575,4559,4554,4551,4548,4541,4530,4527,4550,4547,4568,
+4547,4571,4613,4652,4633,4612,4601,4585,4565,4520,4454,4389,4312,4216,4111,4028,3972,3912,3852,3788,
+3746,3713,3654,3604,3562,3519,3476,3432,3404,3392,3367,3317,3251,3192,3132,3080,3029,2970,2899,2814,
+2713,2619,2525,2438,2360,2299,2257,2231,2217,2205,2187,2161,2125,2081,2040,2001,1965,1941,1926,1913,
+1900,1885,1868,1855,1852,1849,1845,1843,1851,1858,1863,1866,1867,1874,1876,1866,1855,1853,1857,1862,
+1865,1864,1855,1846,1858,1869,1865,1846,1819,1789,1768,1754,1743,1735,1729,1723,1709,1683,1657,1634,
+1613,1593,1578,1566,1555,1538,1512,1475,1446,1425,1405,1382,1373,1365,1363,1365,1383,1408,1433,1423,
+1407,1380,1347,1319,1301,1284,1256,1230,1211,1204,1187,1167,1152,1141,1144,1150,1160,1173,1167,1150,
+1128,1111,1107,1113,1129,1144,1120,1105,1083,1047,1004,960,924,907,906,910,906,900,898,885,
+870,851,838,834,827,811,783,751,715,675,639,604,570,530,470,397,340,300,266,233,
+204,178,152,130,104,80,66,62,56,48,50,49,47,39,26,0,-35,-70,-106,-138,
+-174,-210,-246,-275,-286,-291,-297,-295,-279,-273,-230,-216,-259,-357,-468,-561,-602,-640,-708,-801,
+-892,-951,-988,-1006,-1018,-1037,-1053,-1067,-1078,-1094,-1107,-1124,-1137,-1166,-1196,-1228,-1264,-1304,-1349,-1399,
+-1452,-1497,-1534,-1565,-1587,-1604,-1628,-1663,-1697,-1733,-1773,-1813,-1846,-1879,-1913,-1938,-1953,-1968,-1994,-2027,
+-2058,-2087,-2118,-2139,-2159,-2175,-2183,-2188,-2194,-2200,-2209,-2225,-2245,-2265,-2281,-2299,-2323,-2348,-2376,-2402,
+-2424,-2444,-2461,-2470,-2474,-2478,-2477,-2480,-2495,-2516,-2542,-2568,-2595,-2620,-2635,-2639,-2638,-2645,-2657,-2666,
+-2671,-2672,-2675,-2681,-2684,-2687,-2688,-2682,-2672,-2663,-2654,-2652,-2659,-2670,-2679,-2680,-2675,-2665,-2654,-2642,
+-2618,-2597,-2587,-2588,-2597,-2606,-2618,-2638,-2659,-2671,-2674,-2675,-2682,-2695,-2713,-2735,-2754,-2767,-2774,-2780,
+-2788,-2795,-2796,-2803,-2800,-2802,-2819,-2839,-2854,-2861,-2855,-2851,-2844,-2846,-2852,-2861,-2868,-2873,-2884,-2901,
+-2930,-2948,-2964,-2980,-3001,-3006,-3009,-3009,-3009,-3007,-3008,-3016,-3023,-3028,-3035,-3038,-3029,-3020,-3012,-3009,
+-3002,-2994,-2987,-2980,-2976,-2973,-2967,-2955,-2940,-2925,-2914,-2908,-2907,-2906,-2907,-2909,-2904,-2896,-2895,-2896,
+-2893,-2884,-2879,-2876,-2870,-2851,-2831,-2807,-2779,-2752,-2724,-2695,-2665,-2639,-2617,-2597,-2576,-2550,-2526,-2503,
+-2490,-2490,-2489,-2490,-2474,-2457,-2448,-2444,-2438,-2433,-2426,-2413,-2400,-2385,-2371,-2338,-2289,-2224,-2154,-2090,
+-2034,-1989,-1953,-1927,-1909,-1906,-1929,-1997,-2090,-2153,-2193,-2203,-2171,-2116,-2046,-1960,-1857,-1745,-1645,-1557,
+-1482,-1425,-1383,-1347,-1316,-1284,-1248,-1216,-1192,-1177,-1167,-1165,-1168,-1158,-1141,-1124,-1108,-1098,-1090,-1067,
+-1027,-986,-954,-919,-878,-835,-794,-758,-730,-698,-658,-615,-577,-535,-496,-458,-416,-373,-333,-302,
+-277,-244,-206,-177,-156,-139,-121,-105,-93,-83,-74,-63,-49,-33,-14,8,40,87,141,203,
+274,356,438,505,564,619,672,739,796,838,872,895,910,928,944,972,1016,1071,1100,1095,
+1088,1077,1077,1094,1133,1135,1129,1124,1120,1118,1127,1151,1177,1187,1186,1183,1184,1191,1206,1224,
+1222,1225,1218,1228,1257,1277,1315,1327,1356,1359,1349,1347,1338,1332,1335,1325,1335,1343,1355,1358,
+1354,1345,1341,1345,1341,1325,1293,1302,1343,1379,1393,1414,1421,1440,1440,1426,1429,1417,1385,1392,
+1417,1432,1411,1398,1372,1347,1321,1313,1298,1293,1262,1260,1252,1241,1234,1240,1249,1260,1259,1256,
+1262,1249,1227,1210,1172,1139,1127,1120,1118,1139,1152,1148,1134,1121,1122,1132,1134,1120,1087,1052,
+1030,1018,1013,1013,1014,1015,1019,1032,1049,1065,1086,1112,1126,1131,1121,1107,1105,1090,1063,1030,
+985,934,890,858,824,793,757,723,699,673,617,543,461,384,332,299,279,276,274,260,
+285,337,406,463,511,546,562,562,555,542,536,535,535,533,527,512,492,475,468,472,
+496,522,541,549,553,564,570,567,573,584,594,597,610,627,633,635,641,649,656,655,
+650,650,655,658,667,678,679,685,691,692,691,691,695,704,716,727,737,747,754,765,
+770,784,798,809,827,830,834,838,844,859,878,899,920,940,955,968,981,999,1018,1031,
+1042,1055,1061,1074,1088,1100,1117,1121,1117,1106,1103,1100,1106,1111,1116,1139,1146,1153,1150,1147,
+1152,1168,1168,1166,1169,1175,1180,1177,1197,1221,1256,1282,1331,1373,1447,1526,1558,1573,1538,1530,
+1519,1475,1398,1316,1212,1100,1051,1046,1020,1010,1010,1060,1157,1299,1443,1551,1668,1794,1825,1877,
+1903,1886,1853,1806,1746,1691,1658,1638,1617,1598,1575,1574,1608,1685,1754,1819,1845,1807,1814,1787,
+1786,1745,1746,1714,1657,1608,1564,1504,1441,1403,1356,1326,1297,1268,1242,1216,1188,1169,1141,1127,
+1121,1090,1057,1002,971,923,867,832,817,807,800,770,750,729,689,665,615,567,539,524,
+487,442,414,377,363,307,264,250,232,212,199,174,157,156,162,148,127,88,76,50,
+53,4,-24,1,-7,-49,-80,-121,-185,-249,-335,-407,-473,-531,-588,-665,-740,-848,-963,-1051,
+-1116,-1174,-1227,-1273,-1313,-1352,-1369,-1378,-1383,-1383,-1381,-1391,-1434,-1508,-1579,-1640,-1703,-1779,-1858,-1925,
+-1988,-2037,-2079,-2125,-2175,-2224,-2273,-2323,-2367,-2415,-2471,-2532,-2601,-2648,-2677,-2711,-2755,-2791,-2816,-2834,
+-2853,-2869,-2885,-2900,-2924,-2947,-2982,-2997,-3018,-3036,-3056,-3077,-3096,-3123,-3152,-3176,-3205,-3237,-3266,-3292,
+-3313,-3337,-3357,-3377,-3404,-3435,-3460,-3486,-3518,-3549,-3581,-3610,-3638,-3674,-3723,-3771,-3814,-3853,-3893,-3933,
+-3978,-4021,-4059,-4092,-4123,-4149,-4172,-4193,-4211,-4228,-4249,-4274,-4287,-4291,-4303,-4325,-4347,-4372,-4401,-4437,
+-4466,-4489,-4518,-4546,-4566,-4586,-4605,-4623,-4636,-4652,-4673,-4682,-4688,-4696,-4705,-4713,-4702,-4697,-4699,-4699,
+-4705,-4704,-4700,-4700,-4703,-4703,-4689,-4676,-4682,-4672,-4658,-4642,-4621,-4601,-4576,-4547,-4517,-4490,-4465,-4443,
+-4420,-4395,-4371,-4350,-4332,-4316,-4303,-4294,-4284,-4270,-4255,-4235,-4213,-4185,-4154,-4123,-4086,-4052,-4021,-3990,
+-3959,-3930,-3903,-3876,-3851,-3825,-3798,-3765,-3725,-3683,-3644,-3601,-3555,-3509,-3470,-3442,-3413,-3370,-3321,-3270,
+-3212,-3147,-3082,-3019,-2966,-2925,-2900,-2880,-2850,-2838,-2816,-2776,-2745,-2720,-2677,-2630,-2572,-2522,-2486,-2474,
+-2482,-2472,-2460,-2443,-2423,-2387,-2343,-2295,-2246,-2191,-2140,-2087,-2027,-1969,-1907,-1837,-1764,-1692,-1617,-1546,
+-1472,-1399,-1324,-1240,-1142,-1048,-965,-920,-871,-810,-726,-625,-516,-398,-278,-158,-39,62,147,229,
+307,385,469,562,666,761,856,936,970,973,974,964,953,961,993,1049,1093,1134,1183,1237,
+1290,1346,1414,1486,1548,1608,1670,1730,1795,1852,1904,1955,2015,2069,2118,2166,2208,2242,2275,2305,
+2346,2390,2437,2490,2554,2641,2741,2834,2910,3002,3059,3095,3139,3203,3284,3375,3478,3582,3682,3770,
+3847,3934,4016,4089,4163,4246,4335,4421,4502,4579,4651,4720,4781,4827,4855,4880,4891,4867,4819,4735,
+4667,4619,4569,4571,4610,4689,4788,4897,4988,5035,5035,4991,4979,4983,4996,5019,5036,5047,5060,5075,
+5099,5123,5147,5175,5204,5231,5257,5284,5311,5339,5369,5397,5426,5456,5488,5520,5550,5581,5615,5650,
+5682,5724,5765,5810,5851,5895,5937,5981,6022,6057,6100,6138,6171,6201,6224,6250,6285,6321,6349,6375,
+6401,6429,6447,6455,6460,6476,6509,6529,6543,6546,6542,6524,6510,6513,6512,6515,6513,6509,6498,6484,
+6467,6450,6439,6435,6431,6425,6417,6405,6393,6377,6357,6337,6321,6308,6304,6292,6271,6262,6252,6233,
+6206,6180,6155,6135,6122,6110,6099,6086,6074,6063,6047,6034,6032,6036,6041,6052,6061,6067,6071,6074,
+6076,6077,6075,6072,6059,6052,6041,6023,6016,6015,6009,5991,5976,5962,5951,5951,5957,5952,5928,5877,
+5807,5753,5733,5730,5723,5691,5666,5638,5612,5582,5549,5517,5477,5435,5393,5349,5296,5241,5181,5115,
+5054,5004,4972,4952,4931,4919,4921,4929,4945,4962,4975,4994,4993,5003,4990,4966,4921,4881,4844,4812,
+4777,4751,4741,4733,4722,4702,4667,4626,4593,4568,4558,4564,4565,4568,4569,4577,4593,4594,4594,4603,
+4627,4644,4688,4709,4697,4688,4668,4648,4610,4537,4467,4416,4331,4232,4153,4071,3984,3918,3894,3847,
+3790,3742,3696,3651,3604,3566,3536,3487,3435,3391,3355,3325,3298,3260,3208,3142,3074,3001,2928,2849,
+2767,2679,2593,2507,2431,2365,2317,2291,2278,2263,2241,2205,2156,2108,2067,2029,1991,1954,1931,1919,
+1915,1911,1905,1896,1883,1872,1866,1860,1854,1851,1854,1859,1863,1868,1876,1876,1864,1863,1864,1862,
+1861,1868,1867,1864,1848,1834,1832,1836,1840,1819,1788,1766,1754,1747,1742,1739,1734,1725,1714,1701,
+1687,1665,1639,1622,1612,1592,1572,1539,1501,1470,1442,1418,1396,1380,1368,1362,1371,1412,1426,1410,
+1399,1380,1355,1331,1315,1318,1299,1274,1251,1228,1213,1185,1165,1159,1162,1163,1165,1164,1167,1166,
+1154,1136,1122,1115,1119,1123,1138,1122,1099,1079,1053,1018,979,946,923,911,906,903,902,895,
+881,858,833,815,804,790,766,735,706,675,644,616,590,565,538,497,444,383,324,276,
+234,196,166,146,128,108,83,58,43,24,5,-11,-24,-34,-45,-54,-63,-72,-87,-114,
+-154,-197,-235,-265,-288,-302,-311,-315,-309,-289,-261,-226,-221,-255,-356,-455,-547,-600,-652,-722,
+-807,-876,-930,-977,-1011,-1023,-1042,-1057,-1069,-1076,-1090,-1101,-1116,-1140,-1173,-1209,-1249,-1299,-1353,-1406,
+-1466,-1530,-1583,-1612,-1627,-1641,-1661,-1685,-1708,-1734,-1762,-1792,-1824,-1863,-1903,-1940,-1965,-1980,-2004,-2039,
+-2077,-2113,-2147,-2172,-2191,-2206,-2215,-2223,-2231,-2233,-2237,-2250,-2269,-2291,-2312,-2332,-2352,-2378,-2403,-2428,
+-2460,-2492,-2515,-2525,-2523,-2519,-2519,-2520,-2531,-2550,-2578,-2604,-2626,-2647,-2670,-2690,-2702,-2709,-2719,-2731,
+-2745,-2755,-2753,-2750,-2754,-2760,-2764,-2765,-2759,-2747,-2732,-2719,-2712,-2708,-2706,-2709,-2712,-2707,-2697,-2691,
+-2686,-2672,-2662,-2666,-2676,-2681,-2675,-2666,-2668,-2687,-2710,-2721,-2724,-2728,-2739,-2759,-2784,-2807,-2829,-2851,
+-2855,-2848,-2844,-2840,-2825,-2837,-2860,-2872,-2893,-2884,-2874,-2876,-2886,-2873,-2877,-2884,-2893,-2900,-2908,-2916,
+-2933,-2973,-3009,-3030,-3047,-3055,-3055,-3056,-3061,-3066,-3061,-3062,-3066,-3072,-3082,-3088,-3085,-3067,-3044,-3024,
+-3007,-3005,-3004,-2990,-2979,-2974,-2967,-2958,-2946,-2934,-2929,-2931,-2928,-2921,-2918,-2915,-2908,-2903,-2904,-2906,
+-2908,-2908,-2904,-2896,-2895,-2891,-2881,-2861,-2834,-2803,-2779,-2754,-2724,-2691,-2661,-2636,-2613,-2587,-2561,-2536,
+-2510,-2493,-2496,-2510,-2519,-2511,-2497,-2487,-2478,-2469,-2462,-2450,-2434,-2415,-2389,-2353,-2309,-2258,-2197,-2134,
+-2079,-2029,-1990,-1965,-1950,-1946,-1969,-2047,-2152,-2227,-2262,-2268,-2229,-2166,-2088,-1998,-1897,-1795,-1697,-1610,
+-1529,-1456,-1392,-1332,-1285,-1257,-1231,-1206,-1181,-1154,-1132,-1119,-1110,-1100,-1080,-1053,-1031,-1010,-994,-986,
+-973,-936,-880,-838,-814,-787,-750,-716,-685,-651,-610,-566,-526,-487,-446,-404,-356,-304,-256,-212,
+-176,-147,-122,-94,-68,-45,-28,-16,-1,15,31,46,62,78,95,114,142,180,228,290,
+358,435,519,596,660,716,771,797,821,842,887,908,918,943,955,965,969,1000,1066,1107,
+1110,1113,1125,1152,1171,1203,1228,1205,1193,1180,1178,1176,1200,1212,1214,1224,1229,1242,1256,1258,
+1271,1273,1261,1278,1282,1279,1279,1292,1334,1382,1405,1403,1391,1382,1390,1409,1406,1423,1441,1441,
+1434,1434,1437,1432,1439,1444,1427,1405,1423,1432,1445,1450,1460,1472,1483,1485,1479,1459,1448,1462,
+1444,1417,1380,1371,1344,1334,1330,1309,1278,1262,1258,1249,1248,1265,1274,1271,1278,1301,1326,1342,
+1345,1340,1327,1311,1275,1221,1166,1122,1108,1124,1150,1167,1164,1156,1152,1154,1155,1140,1098,1054,
+1030,1025,1028,1032,1034,1038,1047,1056,1071,1090,1108,1126,1142,1148,1137,1125,1118,1135,1132,1108,
+1074,1025,959,900,853,811,771,728,685,647,603,546,471,393,321,267,233,215,206,210,
+229,283,349,418,494,548,576,578,571,558,544,533,528,526,525,523,510,500,494,488,
+488,500,519,534,550,563,556,552,555,573,578,596,616,627,643,661,666,673,679,684,
+682,682,688,693,695,689,676,683,701,706,701,705,710,716,719,720,729,736,749,766,
+793,813,820,836,852,863,874,878,883,893,903,912,926,942,959,981,996,1013,1025,1034,
+1046,1059,1070,1071,1084,1100,1113,1117,1124,1132,1131,1141,1154,1150,1139,1134,1159,1174,1177,1182,
+1184,1192,1190,1184,1191,1195,1187,1192,1194,1210,1244,1292,1354,1412,1451,1494,1589,1622,1587,1563,
+1531,1509,1441,1350,1266,1146,1041,971,915,853,849,876,945,1054,1203,1337,1470,1625,1724,1795,
+1829,1877,1877,1871,1841,1788,1748,1711,1693,1671,1640,1602,1597,1637,1710,1796,1890,1965,1969,1944,
+1913,1870,1872,1846,1781,1733,1712,1676,1634,1581,1533,1440,1405,1355,1328,1301,1267,1220,1212,1190,
+1154,1134,1111,1080,1039,1001,956,908,859,831,795,782,770,755,728,700,679,645,627,612,
+571,526,454,404,372,324,285,274,252,214,187,163,160,141,123,107,104,106,78,54,
+35,41,9,-30,-96,-89,-120,-165,-187,-230,-276,-335,-386,-447,-500,-575,-663,-729,-846,-960,
+-1036,-1112,-1174,-1228,-1289,-1344,-1380,-1402,-1416,-1418,-1417,-1423,-1433,-1473,-1539,-1617,-1686,-1745,-1813,-1885,
+-1949,-1999,-2046,-2091,-2139,-2190,-2239,-2289,-2339,-2388,-2439,-2492,-2546,-2600,-2656,-2711,-2745,-2775,-2811,-2837,
+-2860,-2877,-2889,-2909,-2936,-2959,-2981,-2998,-3009,-3029,-3054,-3081,-3110,-3141,-3165,-3189,-3219,-3244,-3271,-3297,
+-3322,-3336,-3351,-3377,-3404,-3432,-3454,-3474,-3497,-3521,-3544,-3565,-3597,-3639,-3683,-3729,-3775,-3818,-3861,-3908,
+-3951,-3996,-4036,-4075,-4102,-4124,-4146,-4167,-4186,-4208,-4231,-4248,-4262,-4274,-4291,-4309,-4332,-4359,-4389,-4421,
+-4458,-4494,-4527,-4554,-4581,-4606,-4621,-4630,-4648,-4665,-4691,-4709,-4728,-4752,-4772,-4767,-4755,-4749,-4751,-4763,
+-4772,-4776,-4769,-4773,-4782,-4773,-4761,-4757,-4750,-4744,-4734,-4715,-4679,-4656,-4642,-4617,-4587,-4561,-4532,-4509,
+-4486,-4460,-4440,-4422,-4401,-4387,-4373,-4362,-4351,-4340,-4324,-4308,-4288,-4265,-4240,-4210,-4177,-4142,-4108,-4072,
+-4036,-4007,-3981,-3955,-3926,-3895,-3863,-3827,-3787,-3744,-3700,-3653,-3608,-3565,-3523,-3484,-3452,-3420,-3378,-3323,
+-3268,-3215,-3161,-3112,-3063,-3008,-2958,-2924,-2885,-2841,-2800,-2755,-2697,-2653,-2615,-2589,-2557,-2501,-2450,-2402,
+-2374,-2372,-2375,-2388,-2393,-2386,-2374,-2353,-2327,-2294,-2259,-2223,-2182,-2138,-2088,-2031,-1976,-1919,-1856,-1791,
+-1722,-1652,-1577,-1494,-1409,-1319,-1217,-1108,-1006,-923,-844,-757,-655,-546,-431,-310,-191,-86,2,91,
+174,250,327,411,514,622,730,837,925,983,988,966,946,938,942,961,1000,1046,1096,1151,
+1213,1266,1325,1385,1454,1523,1587,1643,1696,1760,1830,1895,1955,2011,2065,2113,2161,2207,2252,2293,
+2328,2363,2402,2452,2498,2539,2593,2667,2757,2858,2959,3057,3098,3121,3153,3199,3270,3334,3440,3546,
+3619,3730,3840,3930,4020,4108,4206,4305,4393,4463,4516,4566,4627,4692,4752,4788,4810,4820,4823,4810,
+4786,4720,4657,4608,4596,4640,4714,4813,4923,4997,4988,4971,4982,5001,5011,5018,5025,5039,5058,5076,
+5092,5107,5131,5161,5191,5215,5241,5268,5296,5321,5348,5374,5404,5438,5472,5503,5532,5562,5598,5640,
+5679,5716,5759,5799,5840,5886,5933,5974,6011,6050,6095,6133,6166,6193,6220,6245,6280,6320,6348,6374,
+6401,6427,6443,6453,6461,6487,6514,6525,6536,6538,6524,6509,6505,6505,6508,6507,6506,6500,6488,6471,
+6458,6446,6437,6429,6419,6413,6406,6398,6387,6372,6356,6337,6317,6306,6299,6292,6274,6245,6225,6211,
+6195,6177,6154,6132,6116,6102,6092,6082,6068,6053,6036,6022,6020,6023,6028,6029,6031,6034,6039,6044,
+6050,6052,6051,6047,6036,6021,6011,6001,5986,5973,5968,5967,5962,5949,5931,5921,5926,5929,5927,5908,
+5870,5826,5785,5750,5724,5697,5673,5641,5611,5580,5542,5503,5470,5438,5401,5349,5293,5234,5175,5114,
+5056,5013,4995,4985,4972,4963,4959,4968,4989,5015,5026,5029,5015,5003,5025,5005,4951,4880,4823,4786,
+4753,4723,4701,4693,4690,4674,4651,4619,4586,4564,4557,4568,4589,4599,4602,4624,4668,4675,4658,4653,
+4661,4700,4726,4745,4750,4748,4740,4706,4676,4643,4520,4425,4334,4270,4205,4136,4049,3958,3899,3846,
+3815,3770,3726,3670,3632,3582,3531,3496,3472,3435,3393,3342,3306,3264,3227,3182,3127,3061,2997,2919,
+2837,2743,2657,2579,2507,2442,2384,2337,2309,2282,2252,2212,2165,2117,2069,2028,1992,1959,1924,1894,
+1892,1898,1910,1914,1910,1899,1894,1887,1878,1874,1874,1873,1870,1867,1871,1870,1869,1868,1860,1857,
+1852,1840,1830,1826,1819,1810,1801,1796,1792,1786,1778,1763,1751,1745,1742,1740,1740,1734,1722,1718,
+1709,1694,1680,1664,1648,1622,1603,1588,1558,1524,1498,1472,1438,1408,1394,1381,1369,1365,1358,1342,
+1330,1329,1320,1309,1303,1298,1315,1318,1296,1272,1246,1223,1197,1183,1187,1193,1193,1190,1184,1175,
+1175,1174,1161,1140,1123,1119,1126,1137,1127,1103,1078,1055,1029,1001,975,963,958,948,927,909,
+896,887,873,857,839,819,793,761,733,714,692,668,642,617,592,568,542,499,443,381,
+323,273,233,197,168,142,110,75,42,16,-7,-27,-44,-63,-79,-89,-103,-122,-132,-142,
+-161,-194,-234,-275,-308,-327,-335,-333,-326,-305,-271,-232,-213,-225,-274,-351,-437,-524,-588,-647,
+-713,-778,-834,-891,-947,-996,-1026,-1046,-1062,-1075,-1085,-1090,-1112,-1143,-1173,-1208,-1244,-1285,-1338,-1401,
+-1468,-1526,-1585,-1645,-1685,-1696,-1697,-1705,-1734,-1764,-1785,-1808,-1840,-1869,-1894,-1927,-1966,-1997,-2019,-2038,
+-2070,-2107,-2152,-2191,-2220,-2244,-2264,-2280,-2289,-2289,-2286,-2283,-2291,-2312,-2343,-2374,-2402,-2429,-2455,-2480,
+-2499,-2522,-2549,-2568,-2574,-2570,-2565,-2561,-2566,-2579,-2603,-2642,-2672,-2695,-2710,-2730,-2750,-2761,-2768,-2774,
+-2783,-2793,-2801,-2801,-2799,-2804,-2814,-2821,-2822,-2817,-2804,-2785,-2771,-2763,-2756,-2746,-2736,-2735,-2733,-2728,
+-2724,-2722,-2718,-2727,-2759,-2795,-2815,-2816,-2799,-2777,-2768,-2776,-2787,-2794,-2797,-2799,-2816,-2845,-2861,-2874,
+-2889,-2888,-2890,-2897,-2900,-2904,-2896,-2901,-2898,-2911,-2917,-2916,-2902,-2904,-2893,-2902,-2918,-2944,-2972,-2983,
+-3003,-3027,-3061,-3092,-3115,-3125,-3130,-3135,-3134,-3142,-3148,-3142,-3133,-3130,-3126,-3125,-3130,-3129,-3113,-3092,
+-3078,-3069,-3060,-3047,-3032,-3017,-3001,-2983,-2966,-2955,-2946,-2944,-2953,-2951,-2944,-2932,-2919,-2910,-2910,-2914,
+-2924,-2923,-2916,-2916,-2915,-2922,-2921,-2913,-2894,-2867,-2835,-2807,-2777,-2743,-2706,-2674,-2646,-2618,-2591,-2571,
+-2551,-2535,-2527,-2528,-2533,-2538,-2532,-2515,-2505,-2505,-2502,-2499,-2486,-2465,-2436,-2399,-2354,-2307,-2260,-2210,
+-2162,-2115,-2069,-2033,-2009,-2001,-2017,-2077,-2146,-2202,-2233,-2237,-2214,-2167,-2104,-2030,-1945,-1847,-1748,-1650,
+-1559,-1478,-1406,-1344,-1292,-1247,-1213,-1186,-1166,-1142,-1113,-1085,-1060,-1041,-1024,-999,-968,-940,-915,-893,
+-879,-867,-844,-804,-766,-740,-710,-675,-638,-604,-571,-535,-499,-461,-418,-375,-332,-288,-241,-191,
+-139,-95,-63,-36,-8,17,37,54,71,92,116,137,156,173,190,207,229,264,304,353,
+417,494,572,659,725,775,822,863,878,893,894,918,943,967,985,992,991,991,1032,1067,
+1113,1116,1118,1153,1165,1207,1226,1225,1232,1219,1222,1247,1255,1256,1253,1256,1259,1271,1284,1291,
+1302,1315,1320,1331,1328,1354,1351,1349,1362,1373,1400,1412,1400,1413,1457,1489,1488,1485,1469,1461,
+1458,1469,1485,1476,1481,1477,1464,1472,1479,1475,1474,1493,1502,1522,1534,1543,1550,1540,1501,1467,
+1448,1420,1388,1348,1309,1282,1267,1255,1246,1233,1233,1246,1259,1268,1277,1284,1298,1326,1389,1433,
+1440,1435,1409,1368,1326,1274,1239,1208,1154,1126,1135,1146,1148,1149,1149,1143,1122,1097,1072,1054,
+1046,1046,1049,1054,1060,1065,1077,1090,1102,1120,1132,1130,1129,1132,1145,1134,1128,1126,1145,1141,
+1116,1078,1019,963,903,846,787,728,678,632,579,518,452,385,322,261,225,195,173,163,
+157,162,192,255,352,456,528,570,588,591,576,555,538,514,493,487,495,495,489,487,
+485,483,474,468,473,486,493,504,529,533,548,570,588,612,636,662,667,674,687,693,
+696,703,711,714,712,705,698,699,707,707,703,705,717,727,727,724,727,732,736,750,
+774,801,830,863,879,883,889,903,913,928,945,951,959,975,991,1006,1017,1024,1033,1046,
+1059,1068,1076,1088,1105,1105,1111,1118,1118,1116,1129,1144,1158,1170,1187,1188,1188,1197,1203,1205,
+1237,1222,1227,1226,1219,1212,1204,1199,1202,1217,1249,1300,1352,1388,1428,1451,1490,1559,1603,1600,
+1559,1533,1523,1464,1432,1318,1204,1101,978,888,789,769,796,851,942,1068,1208,1315,1416,1522,
+1629,1717,1784,1838,1896,1937,1933,1936,1862,1846,1799,1769,1753,1732,1699,1716,1768,1827,1874,1888,
+1892,1896,1892,1882,1835,1834,1790,1717,1658,1616,1611,1580,1575,1529,1444,1382,1330,1302,1275,1253,
+1243,1223,1180,1147,1095,1059,1015,977,931,895,840,810,788,765,743,725,679,664,645,624,
+609,595,559,537,492,420,357,295,266,241,218,199,168,142,121,68,56,61,56,31,
+6,-15,-26,-45,-46,-85,-114,-180,-205,-258,-304,-351,-397,-423,-449,-499,-578,-677,-757,-856,
+-954,-1015,-1099,-1169,-1224,-1268,-1324,-1382,-1415,-1437,-1451,-1471,-1496,-1532,-1587,-1647,-1708,-1770,-1826,-1880,
+-1935,-1987,-2030,-2072,-2114,-2158,-2208,-2256,-2305,-2360,-2417,-2475,-2530,-2584,-2629,-2672,-2718,-2771,-2807,-2838,
+-2862,-2878,-2896,-2916,-2943,-2971,-2990,-3007,-3025,-3041,-3057,-3083,-3115,-3151,-3174,-3195,-3220,-3245,-3270,-3295,
+-3320,-3340,-3355,-3374,-3398,-3417,-3427,-3442,-3452,-3462,-3488,-3527,-3569,-3611,-3653,-3694,-3739,-3783,-3829,-3865,
+-3903,-3952,-4005,-4040,-4071,-4096,-4113,-4133,-4156,-4177,-4200,-4221,-4236,-4248,-4267,-4293,-4317,-4345,-4378,-4406,
+-4435,-4467,-4490,-4518,-4545,-4574,-4588,-4612,-4648,-4679,-4716,-4746,-4768,-4770,-4783,-4798,-4811,-4820,-4806,-4804,
+-4805,-4801,-4803,-4817,-4831,-4837,-4838,-4839,-4834,-4813,-4789,-4759,-4729,-4707,-4687,-4664,-4640,-4613,-4586,-4559,
+-4534,-4511,-4499,-4485,-4472,-4459,-4444,-4433,-4421,-4408,-4389,-4372,-4354,-4332,-4313,-4289,-4259,-4226,-4190,-4154,
+-4120,-4089,-4059,-4029,-3996,-3964,-3930,-3895,-3855,-3810,-3763,-3716,-3672,-3626,-3586,-3544,-3503,-3463,-3424,-3383,
+-3340,-3296,-3259,-3221,-3179,-3138,-3091,-3038,-2973,-2890,-2803,-2737,-2684,-2650,-2606,-2558,-2511,-2480,-2435,-2384,
+-2333,-2286,-2292,-2312,-2323,-2346,-2369,-2372,-2359,-2339,-2317,-2292,-2266,-2226,-2191,-2157,-2111,-2063,-2016,-1967,
+-1916,-1853,-1787,-1715,-1633,-1547,-1452,-1350,-1242,-1126,-1010,-894,-779,-654,-532,-422,-315,-213,-127,-52,
+32,115,200,281,361,448,546,655,770,882,966,997,971,940,924,921,937,972,1019,1073,
+1127,1180,1229,1292,1356,1418,1488,1553,1616,1675,1739,1804,1874,1945,2007,2067,2121,2169,2212,2251,
+2290,2337,2382,2427,2465,2506,2557,2604,2657,2723,2823,2957,3066,3110,3117,3128,3157,3209,3282,3387,
+3483,3572,3660,3756,3853,3947,4031,4122,4214,4310,4403,4483,4538,4585,4664,4749,4799,4795,4808,4811,
+4790,4746,4683,4622,4618,4635,4682,4761,4855,4937,4969,4948,4938,4955,4971,4992,5009,5026,5045,5064,
+5081,5096,5118,5148,5180,5207,5233,5260,5284,5307,5332,5357,5384,5418,5453,5485,5515,5544,5577,5614,
+5653,5694,5739,5783,5828,5873,5922,5966,6001,6043,6087,6124,6157,6185,6210,6243,6281,6318,6343,6372,
+6401,6426,6441,6448,6464,6498,6516,6523,6529,6522,6505,6504,6501,6501,6501,6500,6495,6484,6471,6457,
+6446,6436,6425,6415,6405,6398,6392,6385,6372,6354,6335,6315,6299,6291,6276,6257,6242,6229,6206,6182,
+6165,6151,6138,6121,6105,6091,6082,6074,6061,6042,6026,6012,6006,6005,6007,6009,6006,6004,6009,6016,
+6022,6029,6024,6011,6004,5997,5990,5982,5969,5954,5937,5923,5918,5912,5897,5889,5889,5887,5874,5861,
+5857,5847,5823,5790,5753,5713,5679,5652,5621,5590,5550,5506,5470,5439,5408,5369,5315,5254,5197,5140,
+5075,5021,4988,4966,4957,4959,4962,4976,5003,5031,5053,5067,5069,5047,5025,5024,5001,4938,4862,4801,
+4761,4734,4712,4691,4677,4663,4642,4615,4592,4570,4558,4564,4583,4610,4625,4632,4649,4668,4673,4677,
+4691,4711,4722,4701,4688,4690,4721,4758,4776,4738,4643,4541,4425,4336,4249,4163,4099,4061,3984,3891,
+3830,3801,3756,3701,3655,3609,3570,3500,3453,3426,3404,3369,3330,3284,3231,3179,3136,3088,3031,2967,
+2900,2819,2736,2641,2557,2487,2426,2370,2323,2284,2248,2209,2172,2143,2109,2067,2027,1999,1971,1944,
+1917,1885,1881,1894,1909,1915,1913,1907,1903,1900,1897,1895,1892,1887,1880,1880,1871,1854,1834,1809,
+1784,1759,1740,1730,1724,1723,1725,1726,1730,1734,1736,1736,1735,1732,1731,1733,1735,1724,1699,1684,
+1673,1664,1651,1638,1625,1612,1599,1592,1587,1574,1552,1525,1487,1453,1421,1399,1379,1355,1328,1305,
+1286,1273,1268,1266,1266,1268,1286,1311,1316,1310,1298,1272,1232,1197,1183,1182,1186,1191,1197,1193,
+1179,1171,1170,1159,1138,1122,1122,1134,1141,1133,1109,1078,1044,1014,995,991,996,1002,986,954,
+925,905,892,883,878,858,824,793,771,753,738,715,689,664,639,621,602,572,541,497,
+441,385,334,295,260,230,204,175,135,95,51,9,-25,-57,-88,-112,-127,-144,-164,-180,
+-193,-214,-241,-263,-294,-320,-338,-347,-348,-334,-303,-257,-227,-208,-192,-235,-343,-436,-535,-591,
+-646,-705,-768,-842,-918,-980,-1010,-1026,-1045,-1061,-1080,-1102,-1120,-1148,-1186,-1225,-1265,-1302,-1345,-1392,
+-1447,-1505,-1561,-1618,-1680,-1722,-1748,-1756,-1768,-1787,-1806,-1830,-1858,-1886,-1908,-1930,-1958,-1989,-2014,-2040,
+-2065,-2096,-2135,-2176,-2217,-2253,-2284,-2310,-2332,-2341,-2336,-2324,-2317,-2325,-2348,-2382,-2419,-2453,-2488,-2522,
+-2551,-2576,-2595,-2610,-2618,-2620,-2617,-2612,-2608,-2615,-2629,-2658,-2698,-2730,-2752,-2767,-2780,-2795,-2811,-2821,
+-2825,-2827,-2827,-2826,-2833,-2840,-2846,-2855,-2861,-2862,-2857,-2849,-2833,-2816,-2807,-2804,-2792,-2774,-2762,-2759,
+-2758,-2761,-2770,-2786,-2812,-2850,-2896,-2933,-2949,-2943,-2916,-2884,-2863,-2854,-2852,-2860,-2871,-2878,-2891,-2898,
+-2911,-2912,-2909,-2905,-2907,-2903,-2911,-2921,-2904,-2891,-2887,-2903,-2918,-2921,-2928,-2955,-2963,-2975,-3007,-3066,
+-3112,-3142,-3159,-3172,-3187,-3195,-3198,-3212,-3221,-3225,-3224,-3220,-3209,-3201,-3190,-3184,-3184,-3184,-3178,-3166,
+-3153,-3141,-3129,-3117,-3101,-3080,-3059,-3043,-3019,-2998,-2985,-2974,-2970,-2968,-2963,-2958,-2949,-2941,-2931,-2932,
+-2937,-2945,-2945,-2941,-2935,-2930,-2927,-2924,-2913,-2899,-2888,-2866,-2831,-2796,-2762,-2728,-2694,-2666,-2642,-2616,
+-2596,-2579,-2569,-2569,-2569,-2567,-2566,-2557,-2548,-2542,-2546,-2547,-2544,-2531,-2507,-2472,-2433,-2396,-2353,-2310,
+-2263,-2216,-2169,-2126,-2090,-2066,-2055,-2052,-2067,-2101,-2126,-2135,-2129,-2103,-2056,-1997,-1923,-1834,-1738,-1640,
+-1548,-1469,-1398,-1335,-1287,-1246,-1208,-1176,-1153,-1132,-1105,-1077,-1042,-1002,-969,-939,-908,-878,-851,-824,
+-801,-782,-760,-737,-719,-699,-675,-650,-617,-577,-538,-501,-467,-429,-385,-338,-291,-243,-202,-162,
+-121,-79,-35,5,39,69,96,119,141,160,183,208,223,231,241,253,270,300,345,391,
+441,504,579,661,730,781,822,873,891,906,921,937,973,1001,1026,1034,1030,1017,1042,1074,
+1104,1145,1131,1138,1151,1168,1205,1256,1265,1253,1247,1249,1278,1315,1310,1304,1312,1307,1307,1312,
+1331,1338,1349,1368,1379,1382,1397,1411,1412,1416,1420,1439,1447,1442,1460,1502,1509,1510,1503,1522,
+1536,1521,1503,1508,1512,1525,1517,1527,1546,1553,1543,1555,1563,1577,1584,1600,1607,1606,1549,1531,
+1482,1435,1371,1334,1308,1287,1266,1244,1227,1224,1239,1256,1267,1266,1268,1285,1312,1371,1438,1466,
+1475,1452,1415,1384,1346,1310,1294,1269,1222,1169,1159,1157,1148,1135,1116,1101,1094,1092,1090,1084,
+1079,1079,1086,1092,1100,1110,1118,1128,1132,1132,1131,1124,1105,1103,1102,1096,1074,1068,1093,1116,
+1105,1077,1052,1005,949,869,790,724,670,608,548,496,439,380,336,285,237,199,161,128,
+97,68,51,59,99,193,312,409,486,540,574,583,572,547,513,497,493,494,487,480,
+474,463,446,436,436,436,434,434,444,467,497,536,575,603,626,647,671,683,700,707,
+708,713,720,729,739,741,738,733,733,722,715,728,734,748,758,767,768,766,764,768,
+779,805,828,859,889,911,919,928,942,955,968,977,984,998,1011,1017,1019,1018,1028,1043,
+1058,1072,1082,1087,1092,1105,1117,1126,1132,1134,1134,1140,1158,1181,1199,1213,1216,1203,1189,1208,
+1231,1249,1269,1277,1278,1280,1251,1221,1236,1263,1288,1314,1342,1359,1373,1395,1414,1453,1518,1592,
+1601,1604,1576,1532,1496,1495,1403,1225,1057,937,852,806,753,691,704,775,883,1007,1135,1258,
+1365,1508,1619,1760,1870,1946,2003,2009,1971,1938,1905,1866,1868,1825,1811,1831,1834,1785,1782,1801,
+1825,1835,1823,1796,1789,1782,1817,1851,1867,1861,1804,1758,1686,1626,1598,1564,1480,1417,1343,1315,
+1294,1252,1246,1224,1187,1131,1080,1035,999,952,909,846,809,786,755,730,702,682,670,641,
+603,580,561,531,505,468,450,413,363,318,289,255,216,186,142,95,36,-1,7,9,
+-2,-24,-66,-71,-72,-105,-137,-170,-211,-263,-298,-348,-407,-463,-494,-510,-532,-582,-666,-769,
+-881,-957,-1039,-1127,-1192,-1248,-1301,-1345,-1380,-1407,-1429,-1453,-1483,-1523,-1565,-1620,-1682,-1740,-1797,-1850,
+-1901,-1953,-2005,-2052,-2097,-2142,-2187,-2235,-2283,-2333,-2387,-2446,-2508,-2566,-2615,-2658,-2701,-2749,-2796,-2834,
+-2859,-2875,-2885,-2905,-2934,-2962,-2987,-3008,-3031,-3050,-3070,-3088,-3107,-3131,-3159,-3185,-3207,-3224,-3240,-3260,
+-3279,-3302,-3328,-3355,-3376,-3389,-3395,-3400,-3412,-3431,-3463,-3499,-3536,-3577,-3619,-3663,-3709,-3759,-3808,-3845,
+-3875,-3916,-3963,-3995,-4024,-4049,-4072,-4091,-4109,-4147,-4174,-4193,-4209,-4229,-4251,-4274,-4301,-4324,-4351,-4384,
+-4417,-4444,-4466,-4480,-4500,-4540,-4579,-4616,-4650,-4681,-4712,-4743,-4770,-4789,-4798,-4802,-4815,-4828,-4839,-4847,
+-4851,-4850,-4851,-4854,-4862,-4865,-4870,-4876,-4872,-4856,-4835,-4808,-4787,-4755,-4725,-4698,-4674,-4648,-4621,-4597,
+-4574,-4554,-4541,-4533,-4524,-4514,-4508,-4496,-4485,-4469,-4453,-4434,-4416,-4397,-4376,-4353,-4331,-4303,-4275,-4241,
+-4206,-4172,-4137,-4103,-4068,-4033,-3999,-3962,-3920,-3876,-3829,-3781,-3733,-3690,-3646,-3604,-3571,-3538,-3504,-3471,
+-3437,-3405,-3374,-3339,-3299,-3254,-3193,-3130,-3066,-2979,-2889,-2817,-2761,-2713,-2672,-2635,-2605,-2570,-2525,-2483,
+-2443,-2401,-2357,-2329,-2327,-2346,-2368,-2381,-2388,-2388,-2376,-2349,-2313,-2281,-2242,-2203,-2172,-2149,-2119,-2085,
+-2046,-2001,-1949,-1891,-1824,-1751,-1666,-1567,-1461,-1351,-1232,-1109,-978,-843,-706,-565,-451,-349,-249,-170,
+-97,-19,54,128,199,274,359,461,572,689,809,898,940,929,905,895,900,921,955,997,
+1046,1099,1150,1199,1248,1312,1376,1443,1512,1577,1636,1699,1763,1836,1907,1976,2038,2094,2143,2195,
+2243,2288,2328,2364,2409,2456,2511,2565,2613,2665,2723,2777,2879,2995,3076,3106,3117,3133,3169,3221,
+3290,3353,3431,3551,3696,3798,3848,3900,3955,4025,4104,4189,4268,4324,4401,4505,4601,4675,4744,4781,
+4777,4723,4653,4594,4585,4614,4659,4737,4837,4918,4949,4936,4916,4913,4920,4934,4951,4971,4995,5020,
+5047,5069,5096,5131,5161,5190,5218,5247,5274,5299,5322,5347,5374,5405,5435,5465,5494,5528,5564,5606,
+5644,5691,5740,5787,5831,5868,5910,5953,5991,6035,6079,6115,6149,6177,6204,6241,6282,6317,6342,6372,
+6402,6423,6432,6445,6474,6499,6513,6520,6516,6504,6500,6501,6499,6497,6491,6488,6475,6460,6451,6444,
+6436,6422,6409,6399,6391,6384,6376,6363,6350,6335,6311,6290,6273,6257,6236,6214,6194,6178,6166,6153,
+6140,6126,6114,6105,6094,6083,6075,6065,6050,6033,6017,6007,5998,5990,5986,5985,5985,5981,5982,5989,
+5995,5996,5992,5989,5984,5975,5972,5965,5961,5953,5931,5900,5873,5861,5855,5850,5853,5863,5870,5863,
+5837,5799,5780,5770,5757,5732,5696,5657,5635,5605,5568,5527,5490,5455,5421,5388,5341,5278,5217,5163,
+5115,5064,5012,4974,4956,4953,4957,4972,4995,5016,5032,5044,5050,5049,5040,5024,4987,4939,4877,4813,
+4769,4740,4722,4707,4698,4683,4658,4621,4593,4568,4552,4547,4556,4576,4603,4620,4628,4642,4667,4672,
+4685,4699,4665,4654,4639,4610,4626,4642,4676,4655,4629,4554,4477,4400,4309,4220,4128,4042,4010,3967,
+3900,3803,3738,3697,3657,3591,3539,3488,3452,3402,3364,3329,3288,3256,3219,3170,3123,3092,3052,3004,
+2945,2871,2793,2715,2630,2552,2484,2425,2366,2312,2265,2229,2196,2153,2117,2088,2060,2036,2016,1997,
+1975,1950,1919,1891,1875,1875,1892,1909,1917,1921,1918,1914,1910,1902,1892,1879,1865,1844,1804,1766,
+1719,1673,1648,1635,1627,1618,1621,1628,1631,1639,1649,1661,1675,1686,1690,1691,1689,1685,1676,1664,
+1653,1640,1625,1607,1588,1570,1552,1539,1542,1550,1544,1529,1511,1483,1448,1422,1403,1371,1335,1290,
+1257,1235,1216,1207,1210,1210,1216,1229,1243,1254,1268,1273,1260,1229,1200,1179,1167,1166,1175,1173,
+1175,1164,1153,1155,1151,1136,1128,1117,1111,1109,1103,1084,1060,1028,998,986,980,983,979,961,
+933,907,882,868,857,845,826,801,780,772,759,741,723,698,676,658,640,619,589,561,
+531,487,435,385,339,303,274,259,241,212,175,128,83,41,4,-30,-68,-113,-155,-186,
+-210,-227,-244,-264,-278,-296,-312,-330,-346,-368,-357,-333,-299,-252,-240,-240,-293,-370,-459,-549,
+-595,-645,-703,-773,-855,-948,-1014,-1032,-1033,-1048,-1067,-1089,-1119,-1153,-1186,-1227,-1272,-1317,-1364,-1418,
+-1464,-1511,-1562,-1604,-1651,-1703,-1747,-1785,-1814,-1832,-1849,-1864,-1882,-1903,-1931,-1956,-1971,-1986,-2009,-2033,
+-2063,-2097,-2128,-2158,-2197,-2239,-2281,-2319,-2345,-2357,-2362,-2358,-2347,-2345,-2359,-2387,-2425,-2464,-2502,-2544,
+-2582,-2613,-2640,-2660,-2670,-2671,-2667,-2658,-2649,-2648,-2659,-2682,-2716,-2749,-2775,-2795,-2813,-2829,-2849,-2865,
+-2876,-2881,-2885,-2882,-2871,-2867,-2871,-2877,-2887,-2898,-2901,-2898,-2896,-2881,-2855,-2848,-2849,-2849,-2848,-2840,
+-2832,-2827,-2825,-2830,-2848,-2874,-2914,-2956,-2985,-3008,-3021,-3018,-2993,-2969,-2956,-2940,-2920,-2903,-2908,-2919,
+-2922,-2918,-2922,-2926,-2930,-2934,-2939,-2944,-2939,-2937,-2941,-2953,-2969,-3001,-3014,-3023,-3032,-3043,-3053,-3078,
+-3125,-3171,-3214,-3245,-3259,-3267,-3285,-3305,-3315,-3322,-3315,-3299,-3280,-3262,-3248,-3236,-3226,-3219,-3219,-3220,
+-3214,-3201,-3188,-3176,-3162,-3142,-3121,-3095,-3069,-3046,-3023,-3006,-2992,-2983,-2974,-2970,-2965,-2959,-2962,-2956,
+-2954,-2953,-2950,-2945,-2937,-2934,-2927,-2926,-2922,-2911,-2899,-2889,-2878,-2849,-2811,-2773,-2742,-2713,-2688,-2668,
+-2644,-2625,-2610,-2606,-2608,-2613,-2607,-2598,-2589,-2586,-2588,-2594,-2601,-2601,-2584,-2564,-2542,-2512,-2477,-2438,
+-2389,-2331,-2275,-2226,-2181,-2141,-2099,-2057,-2022,-2006,-2007,-2014,-2020,-2004,-1969,-1923,-1868,-1797,-1718,-1635,
+-1547,-1462,-1389,-1331,-1287,-1250,-1213,-1180,-1151,-1121,-1091,-1056,-1019,-981,-941,-900,-861,-823,-788,-760,
+-735,-708,-686,-669,-652,-636,-623,-613,-594,-562,-523,-478,-431,-384,-343,-303,-260,-216,-172,-129,
+-91,-56,-19,22,65,98,123,150,185,215,236,251,264,271,277,289,305,324,358,404,
+446,494,569,657,736,798,832,857,883,905,940,977,1001,1026,1051,1080,1098,1091,1089,1072,
+1093,1138,1170,1188,1177,1162,1195,1225,1260,1258,1255,1265,1278,1311,1342,1338,1337,1333,1332,1320,
+1333,1360,1379,1387,1415,1443,1452,1444,1456,1468,1474,1471,1467,1488,1503,1501,1511,1538,1546,1538,
+1543,1541,1552,1563,1551,1550,1559,1559,1575,1593,1604,1617,1636,1635,1640,1639,1652,1632,1613,1584,
+1533,1496,1433,1372,1338,1313,1287,1264,1252,1249,1245,1252,1261,1266,1277,1301,1328,1358,1409,1439,
+1450,1449,1441,1402,1365,1329,1303,1284,1265,1244,1205,1174,1160,1144,1131,1130,1139,1150,1158,1153,
+1146,1144,1139,1140,1136,1130,1133,1152,1168,1157,1135,1112,1088,1079,1081,1078,1067,1039,1031,1047,
+1054,1051,1053,1038,985,907,827,737,648,579,520,465,416,377,339,295,237,183,139,100,
+63,28,-4,-29,-42,-32,8,73,161,275,401,491,542,565,569,554,526,512,490,475,
+470,457,439,422,409,406,410,419,432,446,471,502,546,592,618,651,667,672,680,697,
+714,723,727,735,747,757,765,771,770,762,756,755,767,778,786,797,807,819,828,834,
+846,859,873,891,907,922,937,957,977,993,994,988,998,1013,1033,1046,1043,1038,1038,1045,
+1058,1074,1085,1092,1097,1103,1121,1141,1152,1158,1155,1157,1168,1186,1211,1242,1273,1291,1282,1252,
+1257,1295,1324,1320,1329,1312,1303,1304,1304,1312,1324,1342,1358,1366,1374,1382,1390,1407,1437,1498,
+1530,1519,1551,1559,1513,1466,1396,1321,1140,988,866,747,636,582,578,635,746,883,1025,1164,
+1269,1346,1381,1539,1603,1587,1667,1758,1766,1792,1852,1881,1927,1922,1901,1867,1849,1838,1872,1871,
+1856,1853,1829,1785,1737,1735,1794,1833,1863,1868,1880,1903,1891,1858,1817,1757,1681,1608,1553,1490,
+1404,1304,1283,1283,1264,1206,1139,1114,1050,1013,947,895,852,827,793,759,738,715,684,682,
+664,622,581,536,504,477,426,403,366,352,329,290,252,221,194,154,99,61,-12,-51,
+-40,-44,-72,-115,-115,-130,-148,-186,-201,-247,-277,-319,-364,-389,-432,-494,-528,-609,-695,-760,
+-860,-955,-1002,-1086,-1166,-1225,-1266,-1298,-1327,-1353,-1378,-1403,-1438,-1475,-1516,-1560,-1612,-1676,-1744,-1804,
+-1857,-1903,-1950,-1999,-2051,-2105,-2154,-2200,-2247,-2297,-2346,-2396,-2450,-2511,-2565,-2613,-2663,-2712,-2754,-2788,
+-2816,-2839,-2862,-2896,-2924,-2946,-2964,-2983,-3006,-3028,-3054,-3085,-3106,-3111,-3122,-3148,-3177,-3196,-3213,-3226,
+-3238,-3257,-3283,-3314,-3337,-3352,-3357,-3362,-3378,-3410,-3450,-3486,-3517,-3547,-3578,-3617,-3663,-3711,-3761,-3804,
+-3845,-3885,-3919,-3942,-3963,-3989,-4027,-4063,-4092,-4123,-4144,-4162,-4179,-4193,-4213,-4240,-4270,-4297,-4312,-4337,
+-4365,-4389,-4424,-4457,-4488,-4525,-4562,-4603,-4634,-4657,-4683,-4708,-4736,-4765,-4784,-4801,-4819,-4830,-4836,-4842,
+-4848,-4852,-4856,-4866,-4877,-4884,-4888,-4890,-4890,-4879,-4862,-4838,-4812,-4785,-4750,-4719,-4691,-4667,-4646,-4622,
+-4600,-4582,-4566,-4552,-4551,-4551,-4544,-4535,-4525,-4513,-4503,-4493,-4477,-4460,-4435,-4413,-4389,-4365,-4339,-4309,
+-4272,-4231,-4194,-4160,-4128,-4096,-4063,-4025,-3986,-3942,-3895,-3849,-3804,-3761,-3720,-3682,-3649,-3622,-3599,-3577,
+-3556,-3532,-3502,-3452,-3385,-3310,-3234,-3170,-3115,-3083,-3046,-3001,-2951,-2904,-2857,-2810,-2765,-2717,-2667,-2614,
+-2566,-2518,-2465,-2420,-2390,-2377,-2371,-2370,-2363,-2378,-2390,-2383,-2355,-2311,-2272,-2235,-2197,-2169,-2144,-2122,
+-2103,-2077,-2046,-2009,-1965,-1910,-1847,-1772,-1684,-1583,-1469,-1344,-1212,-1074,-942,-816,-686,-558,-434,-319,
+-229,-145,-73,-6,61,130,205,286,378,484,594,703,794,836,830,820,833,862,905,942,
+984,1028,1075,1121,1169,1216,1271,1326,1394,1462,1531,1599,1659,1720,1789,1861,1928,1991,2050,2106,
+2162,2221,2275,2326,2368,2402,2439,2488,2547,2607,2664,2720,2768,2807,2855,2913,2978,3046,3086,3108,
+3143,3197,3264,3351,3430,3541,3637,3706,3758,3801,3846,3896,3965,4010,4102,4195,4298,4449,4563,4619,
+4682,4684,4628,4577,4556,4573,4624,4708,4808,4899,4940,4919,4896,4895,4906,4917,4924,4934,4953,4974,
+5000,5027,5055,5093,5130,5158,5187,5221,5254,5281,5307,5335,5364,5397,5431,5459,5487,5519,5554,5598,
+5642,5690,5730,5770,5814,5862,5904,5946,5985,6027,6068,6105,6140,6168,6196,6239,6280,6314,6341,6373,
+6399,6421,6429,6448,6480,6503,6513,6509,6493,6491,6497,6500,6497,6487,6479,6464,6451,6439,6439,6434,
+6421,6406,6393,6383,6374,6366,6356,6343,6328,6314,6294,6275,6252,6234,6216,6192,6168,6149,6133,6122,
+6113,6104,6094,6086,6081,6074,6065,6052,6036,6020,6008,5996,5987,5979,5974,5973,5980,5975,5966,5966,
+5975,5977,5975,5969,5963,5956,5952,5943,5928,5919,5910,5895,5873,5849,5827,5815,5807,5809,5822,5846,
+5856,5850,5821,5774,5719,5695,5681,5667,5648,5616,5589,5550,5509,5474,5441,5403,5357,5299,5244,5192,
+5151,5114,5080,5046,5022,5008,5006,5017,5037,5056,5074,5078,5077,5042,5018,5008,4987,4920,4877,4828,
+4776,4732,4713,4708,4699,4692,4672,4641,4603,4565,4537,4519,4516,4528,4550,4576,4588,4600,4626,4643,
+4682,4701,4696,4685,4707,4655,4680,4675,4660,4640,4585,4518,4436,4383,4316,4242,4151,4073,4014,3936,
+3889,3849,3791,3708,3655,3600,3539,3468,3424,3376,3335,3301,3257,3226,3193,3140,3109,3084,3051,3024,
+2987,2940,2866,2781,2688,2609,2534,2462,2397,2338,2289,2252,2215,2178,2144,2114,2082,2050,2030,2016,
+2002,1986,1964,1934,1907,1889,1881,1896,1913,1918,1916,1921,1929,1924,1910,1886,1862,1836,1802,1764,
+1717,1668,1625,1595,1575,1564,1557,1552,1549,1550,1556,1560,1570,1593,1621,1638,1643,1639,1633,1632,
+1632,1626,1616,1602,1583,1546,1506,1484,1473,1476,1481,1499,1503,1491,1476,1455,1425,1392,1354,1313,
+1266,1230,1208,1194,1172,1157,1155,1159,1171,1193,1211,1228,1243,1238,1211,1185,1164,1154,1156,1152,
+1145,1145,1142,1139,1142,1137,1126,1111,1098,1084,1065,1049,1038,1016,990,979,961,954,956,951,
+934,907,877,855,832,817,806,785,771,762,750,741,729,712,695,683,673,651,623,598,
+575,543,503,454,407,364,329,306,291,274,247,216,180,139,94,58,26,-10,-56,-103,
+-154,-202,-239,-262,-283,-298,-309,-321,-336,-351,-360,-360,-335,-286,-264,-251,-249,-310,-390,-477,
+-561,-616,-678,-749,-830,-919,-989,-1024,-1037,-1045,-1056,-1076,-1108,-1148,-1190,-1231,-1271,-1321,-1378,-1438,
+-1496,-1539,-1571,-1601,-1638,-1678,-1724,-1766,-1801,-1839,-1869,-1887,-1902,-1922,-1944,-1966,-1983,-1999,-2020,-2046,
+-2080,-2118,-2154,-2187,-2215,-2247,-2285,-2319,-2343,-2361,-2371,-2377,-2377,-2374,-2376,-2392,-2424,-2463,-2498,-2539,
+-2587,-2629,-2666,-2692,-2714,-2726,-2726,-2719,-2706,-2693,-2691,-2705,-2730,-2765,-2799,-2827,-2849,-2863,-2876,-2895,
+-2917,-2931,-2938,-2942,-2937,-2922,-2914,-2914,-2914,-2923,-2939,-2946,-2948,-2948,-2935,-2913,-2909,-2915,-2927,-2934,
+-2932,-2929,-2927,-2925,-2924,-2920,-2921,-2934,-2955,-2985,-3016,-3046,-3070,-3084,-3076,-3055,-3032,-3010,-2984,-2973,
+-2972,-2958,-2950,-2949,-2948,-2961,-2978,-2991,-2996,-3013,-3017,-3013,-3037,-3068,-3092,-3098,-3105,-3101,-3098,-3118,
+-3160,-3211,-3253,-3302,-3339,-3352,-3358,-3361,-3369,-3371,-3365,-3355,-3338,-3321,-3301,-3279,-3259,-3241,-3235,-3240,
+-3243,-3238,-3230,-3223,-3213,-3204,-3185,-3159,-3131,-3102,-3079,-3060,-3037,-3014,-2997,-2986,-2975,-2968,-2965,-2967,
+-2964,-2965,-2965,-2968,-2974,-2967,-2951,-2935,-2926,-2917,-2905,-2893,-2881,-2874,-2848,-2816,-2781,-2749,-2722,-2699,
+-2682,-2662,-2644,-2630,-2637,-2644,-2641,-2636,-2635,-2632,-2639,-2648,-2654,-2656,-2664,-2666,-2650,-2632,-2604,-2565,
+-2515,-2453,-2388,-2324,-2269,-2213,-2155,-2093,-2034,-1989,-1966,-1957,-1945,-1930,-1911,-1878,-1828,-1763,-1692,-1619,
+-1553,-1487,-1418,-1350,-1292,-1249,-1212,-1174,-1146,-1125,-1096,-1059,-1014,-969,-928,-888,-845,-806,-766,-731,
+-703,-674,-643,-613,-591,-573,-557,-540,-522,-500,-467,-428,-385,-342,-304,-268,-231,-192,-154,-114,
+-72,-35,-3,30,68,106,138,166,198,233,266,290,302,302,305,311,318,330,348,377,
+423,472,522,588,671,757,825,866,892,908,940,986,1009,1026,1069,1085,1105,1117,1116,1090,
+1092,1115,1149,1197,1231,1221,1212,1214,1239,1247,1263,1272,1279,1297,1327,1337,1358,1353,1353,1339,
+1327,1338,1366,1386,1410,1443,1455,1465,1485,1507,1513,1516,1520,1534,1536,1540,1557,1583,1585,1571,
+1573,1578,1583,1590,1599,1613,1624,1627,1623,1633,1648,1668,1684,1696,1707,1707,1682,1666,1650,1608,
+1552,1505,1442,1393,1362,1338,1315,1302,1291,1274,1261,1260,1270,1279,1298,1327,1356,1381,1399,1420,
+1438,1447,1427,1399,1386,1375,1345,1306,1287,1276,1252,1208,1174,1156,1156,1170,1189,1208,1222,1221,
+1204,1187,1179,1163,1137,1118,1119,1143,1180,1185,1146,1122,1103,1080,1059,1050,1048,1047,1038,1019,
+1026,1033,1031,1016,969,881,786,688,601,529,468,420,389,356,311,250,170,95,47,21,
+-5,-36,-61,-83,-106,-118,-111,-91,-51,9,91,191,311,414,477,514,534,536,532,507,
+476,478,476,461,443,429,415,414,427,445,464,488,516,556,596,621,648,673,686,691,
+703,715,725,731,741,748,762,770,779,783,780,783,792,801,800,805,818,832,844,854,
+867,885,900,910,922,936,954,973,996,1014,1021,1023,1027,1040,1053,1065,1074,1073,1071,1073,
+1080,1087,1098,1112,1119,1125,1134,1153,1173,1186,1193,1200,1212,1231,1251,1277,1314,1350,1374,1366,
+1316,1311,1336,1343,1341,1320,1313,1333,1344,1350,1366,1377,1389,1395,1404,1422,1433,1435,1436,1439,
+1444,1463,1523,1566,1550,1547,1495,1376,1236,1071,915,773,644,562,554,604,700,821,945,1048,
+1150,1220,1274,1304,1284,1315,1387,1415,1475,1517,1566,1626,1699,1763,1820,1847,1816,1787,1757,1789,
+1811,1855,1887,1908,1914,1880,1832,1831,1848,1844,1848,1848,1852,1875,1895,1884,1848,1802,1748,1668,
+1580,1538,1441,1319,1245,1195,1160,1160,1105,1046,1017,958,933,887,844,826,766,732,735,688,
+654,630,621,581,537,469,444,414,366,321,280,250,225,215,205,168,133,91,40,-8,
+-74,-79,-88,-123,-142,-142,-168,-197,-202,-237,-281,-301,-347,-377,-403,-450,-497,-550,-598,-649,
+-757,-867,-963,-1084,-1150,-1196,-1227,-1241,-1258,-1278,-1298,-1323,-1358,-1403,-1450,-1498,-1540,-1586,-1646,-1712,
+-1770,-1819,-1864,-1916,-1972,-2030,-2082,-2131,-2182,-2230,-2279,-2327,-2378,-2437,-2493,-2541,-2586,-2631,-2673,-2710,
+-2744,-2783,-2826,-2868,-2900,-2924,-2938,-2951,-2975,-3000,-3025,-3048,-3073,-3097,-3108,-3122,-3142,-3159,-3175,-3190,
+-3203,-3222,-3249,-3273,-3292,-3313,-3327,-3341,-3360,-3389,-3425,-3465,-3505,-3538,-3565,-3596,-3630,-3667,-3709,-3756,
+-3797,-3831,-3857,-3876,-3897,-3922,-3941,-3983,-4035,-4070,-4095,-4114,-4129,-4151,-4171,-4194,-4222,-4253,-4289,-4329,
+-4355,-4378,-4398,-4418,-4445,-4477,-4515,-4556,-4592,-4626,-4657,-4678,-4696,-4717,-4736,-4758,-4787,-4808,-4820,-4830,
+-4841,-4849,-4858,-4867,-4876,-4884,-4887,-4890,-4886,-4876,-4860,-4849,-4833,-4803,-4769,-4738,-4707,-4683,-4665,-4648,
+-4631,-4611,-4587,-4566,-4564,-4564,-4561,-4555,-4547,-4542,-4537,-4533,-4530,-4516,-4493,-4470,-4444,-4414,-4383,-4352,
+-4320,-4286,-4249,-4214,-4187,-4159,-4127,-4088,-4045,-4003,-3964,-3925,-3885,-3838,-3802,-3766,-3736,-3717,-3705,-3696,
+-3684,-3668,-3637,-3575,-3494,-3420,-3354,-3297,-3274,-3262,-3224,-3172,-3114,-3050,-2988,-2920,-2854,-2792,-2735,-2685,
+-2638,-2594,-2546,-2494,-2449,-2423,-2405,-2385,-2359,-2338,-2331,-2324,-2312,-2286,-2251,-2215,-2181,-2159,-2124,-2092,
+-2077,-2063,-2045,-2023,-2003,-1967,-1919,-1864,-1802,-1735,-1652,-1556,-1444,-1318,-1181,-1048,-922,-787,-649,-513,
+-379,-280,-192,-122,-59,3,71,144,221,302,392,490,582,643,683,723,764,794,824,856,
+893,946,998,1042,1090,1142,1196,1249,1304,1364,1427,1491,1555,1623,1692,1761,1823,1882,1942,2000,
+2059,2119,2179,2238,2299,2356,2401,2445,2491,2534,2585,2642,2706,2761,2799,2838,2870,2898,2936,3034,
+3101,3143,3171,3205,3260,3322,3398,3481,3546,3605,3651,3694,3748,3817,3875,3946,4055,4189,4333,4475,
+4571,4635,4604,4557,4562,4582,4605,4666,4754,4850,4910,4906,4882,4871,4872,4882,4895,4907,4922,4943,
+4964,4990,5020,5056,5092,5123,5153,5189,5222,5253,5283,5314,5347,5382,5418,5445,5474,5505,5546,5588,
+5625,5659,5702,5755,5799,5846,5892,5938,5978,6018,6059,6096,6133,6161,6193,6238,6278,6312,6345,6375,
+6401,6416,6426,6451,6482,6495,6502,6494,6483,6489,6494,6493,6483,6475,6462,6444,6432,6427,6426,6416,
+6404,6392,6378,6366,6355,6346,6335,6319,6302,6284,6270,6251,6234,6217,6196,6177,6162,6144,6126,6113,
+6099,6087,6078,6073,6068,6062,6051,6039,6028,6015,6004,5991,5979,5972,5967,5959,5954,5952,5955,5958,
+5959,5962,5957,5953,5947,5942,5939,5936,5929,5916,5906,5903,5904,5890,5865,5834,5803,5785,5786,5807,
+5826,5821,5811,5784,5742,5702,5649,5628,5627,5632,5619,5591,5557,5508,5459,5413,5362,5315,5281,5240,
+5194,5162,5137,5111,5082,5061,5063,5078,5098,5116,5119,5114,5089,5054,5027,4985,4947,4920,4888,4842,
+4809,4773,4712,4687,4683,4680,4669,4645,4616,4582,4540,4504,4483,4476,4480,4493,4521,4552,4572,4577,
+4606,4614,4643,4671,4650,4672,4685,4688,4685,4641,4568,4500,4409,4321,4269,4229,4153,4077,4034,3983,
+3949,3884,3815,3753,3692,3627,3571,3499,3434,3367,3322,3276,3227,3196,3167,3141,3115,3076,3040,3013,
+2964,2910,2857,2799,2726,2649,2576,2502,2433,2372,2321,2278,2236,2191,2145,2103,2068,2039,2012,1993,
+1983,1978,1969,1951,1933,1922,1915,1919,1923,1922,1924,1930,1935,1932,1934,1928,1908,1872,1823,1776,
+1727,1672,1624,1586,1557,1539,1526,1515,1507,1499,1491,1490,1490,1500,1528,1563,1586,1595,1599,1601,
+1603,1606,1604,1597,1585,1568,1536,1499,1478,1466,1465,1471,1466,1473,1486,1490,1476,1453,1418,1370,
+1316,1267,1239,1228,1199,1163,1138,1120,1119,1132,1163,1193,1202,1210,1209,1192,1166,1145,1138,1141,
+1142,1135,1133,1136,1142,1130,1122,1108,1092,1080,1066,1046,1027,1011,991,974,967,964,964,971,
+974,968,950,921,886,849,817,786,763,751,740,734,725,718,705,692,679,661,636,608,
+591,575,543,502,458,415,378,353,336,313,286,260,238,212,177,141,103,64,26,-16,
+-61,-105,-150,-192,-234,-265,-281,-304,-329,-345,-354,-358,-347,-332,-308,-290,-264,-265,-340,-418,
+-501,-585,-654,-732,-819,-905,-967,-1006,-1029,-1046,-1065,-1086,-1110,-1143,-1188,-1235,-1282,-1334,-1391,-1448,
+-1502,-1546,-1575,-1601,-1630,-1661,-1697,-1737,-1776,-1813,-1848,-1876,-1901,-1926,-1951,-1976,-2001,-2021,-2040,-2067,
+-2102,-2145,-2190,-2222,-2253,-2270,-2291,-2318,-2346,-2365,-2377,-2384,-2386,-2394,-2406,-2418,-2436,-2467,-2505,-2539,
+-2576,-2621,-2668,-2708,-2736,-2755,-2769,-2771,-2760,-2744,-2735,-2736,-2752,-2782,-2816,-2848,-2877,-2899,-2910,-2921,
+-2938,-2957,-2973,-2984,-2988,-2984,-2973,-2966,-2965,-2965,-2970,-2982,-2988,-2987,-2983,-2973,-2957,-2949,-2962,-2979,
+-2996,-3008,-3017,-3019,-3014,-3012,-3010,-3006,-3003,-3006,-3020,-3055,-3093,-3129,-3152,-3157,-3145,-3117,-3090,-3057,
+-3035,-3024,-3001,-2989,-2985,-2987,-2997,-3003,-3004,-3027,-3044,-3061,-3089,-3109,-3144,-3180,-3202,-3215,-3221,-3237,
+-3255,-3285,-3315,-3346,-3377,-3397,-3421,-3438,-3441,-3416,-3395,-3380,-3361,-3352,-3344,-3328,-3310,-3294,-3283,-3276,
+-3272,-3266,-3261,-3254,-3249,-3240,-3228,-3216,-3194,-3160,-3123,-3100,-3079,-3061,-3043,-3025,-3009,-2990,-2973,-2964,
+-2964,-2973,-2986,-2990,-2996,-3000,-2990,-2962,-2943,-2922,-2902,-2887,-2878,-2873,-2865,-2844,-2815,-2784,-2751,-2719,
+-2700,-2687,-2684,-2677,-2668,-2667,-2674,-2675,-2680,-2680,-2679,-2689,-2708,-2729,-2733,-2740,-2739,-2722,-2698,-2666,
+-2617,-2558,-2500,-2435,-2357,-2279,-2191,-2106,-2029,-1975,-1943,-1931,-1924,-1907,-1874,-1840,-1810,-1763,-1711,-1640,
+-1569,-1506,-1456,-1406,-1350,-1296,-1245,-1203,-1165,-1130,-1104,-1073,-1032,-988,-940,-895,-852,-809,-766,-724,
+-681,-640,-603,-572,-545,-523,-501,-478,-452,-423,-398,-370,-337,-302,-266,-232,-201,-169,-137,-104,
+-66,-28,9,42,73,109,148,187,222,250,274,297,317,328,331,333,341,352,361,370,
+393,429,473,525,589,658,734,798,851,898,930,986,1026,1056,1061,1083,1103,1110,1120,1131,
+1121,1126,1154,1171,1196,1239,1255,1238,1234,1221,1226,1261,1294,1311,1332,1348,1366,1364,1370,1367,
+1347,1344,1365,1385,1406,1415,1430,1444,1457,1494,1507,1519,1520,1540,1559,1573,1586,1599,1617,1617,
+1616,1599,1614,1633,1644,1647,1667,1692,1695,1698,1711,1722,1729,1734,1729,1726,1700,1691,1649,1620,
+1580,1536,1471,1422,1388,1368,1354,1343,1335,1325,1308,1297,1293,1311,1332,1358,1372,1380,1402,1413,
+1427,1424,1394,1380,1386,1377,1361,1342,1327,1303,1269,1227,1191,1181,1191,1205,1224,1245,1262,1266,
+1259,1241,1205,1165,1144,1142,1158,1183,1205,1202,1182,1156,1122,1089,1062,1038,1029,1034,1030,1021,
+1028,1028,987,926,836,728,635,550,472,391,331,301,287,267,228,161,80,10,-43,-83,
+-110,-124,-141,-152,-159,-157,-150,-137,-119,-92,-54,-3,56,133,227,296,338,378,409,424,
+429,436,440,451,454,444,434,426,431,447,471,495,516,536,563,602,630,660,688,708,
+718,722,721,726,731,741,758,771,775,782,790,800,810,824,829,826,828,839,854,861,
+869,893,909,925,946,965,985,1008,1031,1045,1054,1056,1055,1066,1075,1112,1113,1121,1125,1124,
+1118,1115,1119,1126,1135,1139,1142,1153,1174,1196,1210,1218,1229,1254,1279,1307,1333,1349,1395,1422,
+1434,1400,1380,1370,1352,1346,1332,1345,1362,1374,1385,1400,1416,1429,1439,1439,1448,1453,1462,1476,
+1495,1498,1523,1570,1572,1541,1482,1451,1364,1186,1006,830,689,605,598,647,739,868,988,1093,
+1155,1198,1218,1244,1221,1223,1262,1308,1342,1358,1365,1379,1405,1443,1496,1558,1587,1634,1641,1603,
+1621,1703,1782,1825,1864,1867,1845,1809,1839,1874,1909,1950,1969,1990,1999,1955,1929,1881,1819,1764,
+1687,1621,1526,1413,1349,1287,1244,1180,1108,1070,1033,985,942,909,883,861,838,789,725,714,
+666,639,611,577,553,515,452,447,410,360,315,276,236,212,163,140,112,61,13,-13,
+-46,-97,-109,-129,-167,-152,-182,-202,-203,-254,-286,-305,-335,-376,-392,-434,-466,-497,-538,-609,
+-668,-780,-886,-993,-1100,-1164,-1188,-1191,-1207,-1216,-1236,-1263,-1295,-1338,-1384,-1426,-1468,-1511,-1571,-1639,
+-1704,-1755,-1795,-1839,-1891,-1947,-1999,-2051,-2099,-2143,-2189,-2237,-2290,-2347,-2399,-2447,-2492,-2537,-2577,-2613,
+-2653,-2702,-2754,-2804,-2845,-2879,-2907,-2925,-2943,-2966,-2989,-3015,-3037,-3054,-3077,-3097,-3113,-3130,-3146,-3161,
+-3179,-3194,-3215,-3237,-3254,-3277,-3295,-3313,-3338,-3368,-3401,-3438,-3476,-3507,-3537,-3570,-3602,-3636,-3676,-3717,
+-3754,-3780,-3800,-3819,-3838,-3861,-3891,-3919,-3954,-4015,-4046,-4062,-4090,-4119,-4140,-4158,-4180,-4211,-4241,-4271,
+-4311,-4351,-4378,-4401,-4421,-4448,-4480,-4511,-4538,-4570,-4602,-4635,-4670,-4694,-4715,-4738,-4763,-4786,-4801,-4815,
+-4829,-4843,-4857,-4870,-4881,-4886,-4892,-4891,-4894,-4889,-4873,-4862,-4847,-4821,-4793,-4762,-4732,-4705,-4679,-4657,
+-4640,-4621,-4604,-4590,-4580,-4578,-4578,-4575,-4572,-4569,-4566,-4565,-4561,-4555,-4540,-4519,-4491,-4465,-4434,-4404,
+-4373,-4339,-4306,-4274,-4247,-4218,-4186,-4152,-4110,-4067,-4028,-3988,-3953,-3916,-3882,-3852,-3832,-3819,-3812,-3815,
+-3820,-3818,-3790,-3730,-3655,-3599,-3557,-3518,-3478,-3428,-3355,-3282,-3216,-3157,-3092,-3026,-2958,-2888,-2822,-2761,
+-2706,-2653,-2608,-2572,-2525,-2471,-2448,-2433,-2403,-2358,-2328,-2304,-2287,-2272,-2249,-2215,-2171,-2143,-2131,-2102,
+-2066,-2048,-2023,-1994,-1965,-1929,-1884,-1829,-1769,-1701,-1630,-1549,-1464,-1379,-1291,-1189,-1075,-942,-796,-645,
+-508,-396,-323,-237,-161,-97,-37,30,101,175,251,330,407,471,506,545,595,654,720,781,
+830,866,901,943,983,1033,1100,1164,1217,1269,1323,1380,1443,1509,1576,1651,1727,1785,1839,1890,
+1947,2007,2067,2127,2188,2253,2315,2377,2438,2496,2543,2588,2633,2687,2745,2796,2846,2893,2929,2959,
+2997,3072,3140,3174,3213,3259,3318,3379,3432,3487,3539,3586,3634,3685,3741,3803,3875,3989,4133,4287,
+4405,4525,4597,4611,4571,4552,4569,4599,4663,4758,4856,4894,4865,4846,4847,4858,4872,4886,4899,4915,
+4934,4956,4980,5016,5055,5085,5118,5152,5185,5216,5250,5283,5317,5352,5386,5421,5454,5484,5516,5553,
+5597,5642,5686,5733,5779,5827,5874,5923,5966,6006,6043,6089,6125,6154,6193,6237,6278,6311,6343,6372,
+6395,6411,6422,6452,6484,6494,6486,6476,6478,6485,6488,6479,6468,6460,6443,6427,6421,6418,6407,6397,
+6386,6375,6368,6356,6346,6332,6313,6295,6283,6266,6249,6228,6208,6188,6172,6156,6144,6135,6124,6113,
+6102,6092,6081,6072,6063,6056,6049,6039,6029,6017,6003,5990,5977,5967,5955,5952,5950,5954,5959,5963,
+5962,5959,5952,5949,5957,5969,5974,5962,5942,5924,5905,5874,5846,5860,5880,5874,5847,5811,5766,5754,
+5765,5779,5776,5761,5722,5684,5648,5626,5615,5618,5633,5635,5616,5589,5547,5473,5389,5327,5291,5264,
+5245,5233,5212,5183,5157,5146,5144,5152,5164,5166,5169,5146,5097,5049,5020,4991,4952,4922,4888,4852,
+4813,4787,4749,4701,4673,4663,4663,4654,4633,4610,4578,4532,4490,4465,4459,4461,4475,4497,4519,4530,
+4541,4555,4568,4600,4601,4577,4556,4568,4611,4617,4571,4514,4432,4363,4306,4248,4177,4126,4081,4022,
+3992,3979,3948,3877,3798,3722,3649,3561,3497,3429,3363,3285,3224,3194,3164,3131,3102,3079,3052,3013,
+2967,2916,2861,2805,2750,2683,2615,2551,2489,2427,2368,2315,2267,2215,2155,2097,2050,2014,1989,1964,
+1947,1938,1937,1942,1936,1936,1941,1951,1957,1956,1948,1949,1945,1942,1947,1948,1936,1908,1862,1807,
+1758,1711,1657,1606,1570,1546,1529,1514,1501,1492,1483,1484,1491,1480,1473,1496,1533,1555,1568,1579,
+1589,1594,1593,1589,1584,1575,1563,1547,1533,1509,1479,1467,1477,1496,1519,1539,1539,1523,1494,1458,
+1417,1370,1326,1284,1235,1182,1139,1109,1088,1091,1113,1144,1169,1175,1174,1168,1152,1130,1115,1116,
+1125,1134,1149,1148,1139,1131,1117,1102,1089,1076,1066,1053,1038,1026,1019,1014,1008,1012,1019,1014,
+1010,1004,994,978,953,912,854,802,765,742,728,716,710,710,707,697,678,655,635,621,
+602,584,567,538,502,462,428,400,374,349,323,302,276,251,217,177,142,109,79,48,
+7,-36,-78,-113,-145,-183,-223,-256,-290,-308,-330,-346,-348,-335,-313,-294,-282,-275,-282,-367,
+-446,-541,-643,-737,-825,-901,-958,-979,-1004,-1032,-1065,-1087,-1111,-1143,-1184,-1231,-1288,-1356,-1411,-1451,
+-1492,-1531,-1564,-1592,-1623,-1657,-1693,-1723,-1755,-1788,-1821,-1853,-1883,-1910,-1936,-1968,-2004,-2031,-2055,-2080,
+-2110,-2145,-2181,-2211,-2241,-2268,-2295,-2328,-2361,-2381,-2392,-2401,-2412,-2425,-2443,-2466,-2486,-2503,-2521,-2542,
+-2570,-2608,-2653,-2695,-2732,-2761,-2783,-2795,-2794,-2784,-2775,-2776,-2787,-2814,-2843,-2868,-2898,-2926,-2947,-2961,
+-2974,-2988,-3001,-3011,-3021,-3029,-3031,-3027,-3023,-3018,-3014,-3009,-3009,-3011,-3008,-3007,-3009,-3008,-3007,-3012,
+-3028,-3050,-3069,-3082,-3087,-3085,-3083,-3083,-3084,-3086,-3086,-3095,-3129,-3172,-3205,-3223,-3224,-3214,-3195,-3169,
+-3138,-3122,-3104,-3088,-3054,-3029,-3031,-3017,-3016,-3027,-3028,-3030,-3052,-3074,-3113,-3159,-3197,-3236,-3266,-3287,
+-3305,-3333,-3362,-3383,-3411,-3428,-3446,-3451,-3459,-3457,-3453,-3434,-3413,-3396,-3388,-3375,-3359,-3348,-3334,-3325,
+-3313,-3306,-3300,-3295,-3281,-3256,-3238,-3241,-3222,-3207,-3187,-3159,-3137,-3115,-3097,-3079,-3062,-3046,-3026,-3006,
+-2987,-2983,-2990,-2999,-3008,-3014,-3017,-3007,-2974,-2953,-2936,-2909,-2886,-2865,-2856,-2849,-2829,-2802,-2782,-2758,
+-2734,-2723,-2716,-2716,-2722,-2729,-2726,-2720,-2717,-2727,-2733,-2739,-2752,-2763,-2779,-2790,-2787,-2778,-2745,-2709,
+-2668,-2615,-2557,-2508,-2441,-2355,-2260,-2154,-2053,-1983,-1936,-1913,-1910,-1905,-1885,-1851,-1811,-1775,-1725,-1678,
+-1628,-1569,-1508,-1450,-1391,-1329,-1277,-1235,-1191,-1152,-1117,-1077,-1034,-992,-945,-901,-853,-804,-749,-689,
+-636,-588,-547,-519,-498,-479,-455,-432,-406,-378,-348,-321,-295,-268,-238,-211,-184,-158,-122,-80,
+-44,-12,22,60,95,129,166,203,237,268,295,315,329,343,353,357,362,374,386,394,
+400,417,443,474,518,583,663,748,811,855,898,947,1008,1047,1049,1056,1079,1106,1119,1126,
+1138,1148,1163,1190,1210,1237,1256,1253,1249,1232,1211,1242,1290,1320,1336,1355,1362,1363,1371,1355,
+1354,1355,1381,1380,1406,1429,1431,1435,1434,1438,1463,1482,1499,1537,1551,1585,1598,1615,1624,1642,
+1648,1644,1631,1654,1667,1669,1691,1712,1720,1710,1714,1703,1710,1723,1733,1726,1709,1689,1658,1619,
+1580,1535,1492,1458,1426,1400,1389,1379,1364,1352,1340,1328,1331,1349,1369,1377,1395,1415,1429,1431,
+1417,1400,1399,1413,1431,1434,1416,1399,1394,1383,1339,1293,1252,1239,1247,1259,1273,1290,1301,1303,
+1295,1267,1226,1197,1191,1201,1219,1226,1223,1206,1167,1121,1088,1057,1023,1007,991,984,987,992,
+996,970,897,792,657,532,431,330,247,184,147,130,127,121,92,48,1,-50,-99,-139,
+-166,-179,-184,-186,-185,-175,-161,-141,-121,-97,-69,-41,-12,15,42,88,153,181,222,234,
+252,304,353,385,414,429,432,428,432,443,458,470,482,501,521,545,580,617,657,692,
+726,741,740,732,731,742,757,771,782,790,804,816,831,847,861,863,859,857,866,876,
+888,905,928,948,969,995,1020,1038,1054,1074,1082,1089,1091,1100,1110,1121,1134,1140,1149,1154,
+1153,1140,1131,1133,1138,1142,1152,1168,1186,1205,1219,1229,1236,1254,1283,1318,1353,1377,1406,1434,
+1443,1449,1442,1423,1411,1392,1388,1396,1395,1389,1387,1401,1423,1444,1452,1457,1459,1462,1483,1497,
+1500,1498,1496,1496,1478,1461,1492,1479,1443,1297,1082,912,781,704,683,723,810,930,1038,1125,
+1189,1245,1308,1355,1353,1324,1309,1315,1325,1306,1261,1242,1250,1273,1295,1324,1348,1365,1392,1383,
+1383,1439,1481,1520,1564,1594,1608,1612,1616,1662,1714,1752,1802,1868,1944,2010,1988,1930,1834,1720,
+1651,1588,1564,1540,1456,1382,1299,1202,1146,1141,1108,1052,1021,1013,948,917,914,875,831,750,
+699,656,625,611,579,525,479,461,412,379,339,304,261,230,201,163,118,77,32,-23,
+-79,-105,-120,-133,-158,-173,-206,-222,-236,-274,-300,-333,-352,-387,-421,-457,-483,-532,-562,-603,
+-655,-706,-815,-933,-1011,-1112,-1169,-1192,-1210,-1216,-1223,-1232,-1256,-1297,-1344,-1382,-1419,-1458,-1501,-1557,
+-1635,-1695,-1739,-1780,-1825,-1870,-1916,-1963,-2006,-2048,-2091,-2136,-2182,-2228,-2280,-2336,-2389,-2440,-2481,-2520,
+-2562,-2609,-2661,-2711,-2763,-2808,-2848,-2883,-2912,-2936,-2957,-2978,-3001,-3022,-3039,-3062,-3080,-3099,-3118,-3134,
+-3150,-3162,-3170,-3189,-3213,-3235,-3255,-3281,-3307,-3331,-3361,-3402,-3442,-3474,-3503,-3530,-3557,-3587,-3620,-3657,
+-3687,-3705,-3723,-3754,-3779,-3805,-3837,-3878,-3926,-3990,-4028,-4054,-4071,-4087,-4111,-4134,-4151,-4173,-4201,-4230,
+-4259,-4290,-4320,-4347,-4376,-4401,-4424,-4453,-4485,-4515,-4543,-4577,-4610,-4644,-4674,-4698,-4722,-4751,-4774,-4795,
+-4813,-4832,-4850,-4866,-4881,-4893,-4898,-4900,-4901,-4905,-4901,-4889,-4868,-4845,-4820,-4796,-4766,-4738,-4708,-4676,
+-4651,-4630,-4615,-4604,-4599,-4596,-4595,-4594,-4595,-4599,-4600,-4602,-4603,-4600,-4592,-4575,-4553,-4524,-4492,-4459,
+-4421,-4386,-4352,-4325,-4299,-4273,-4245,-4215,-4183,-4152,-4119,-4083,-4047,-4019,-3986,-3960,-3951,-3952,-3954,-3962,
+-3967,-3963,-3943,-3912,-3869,-3811,-3752,-3691,-3623,-3549,-3469,-3380,-3296,-3230,-3174,-3114,-3051,-2993,-2935,-2866,
+-2800,-2737,-2681,-2634,-2602,-2565,-2520,-2491,-2472,-2443,-2400,-2357,-2319,-2301,-2291,-2275,-2244,-2211,-2173,-2146,
+-2127,-2104,-2077,-2041,-2002,-1950,-1877,-1805,-1757,-1700,-1634,-1565,-1487,-1407,-1322,-1237,-1143,-1033,-913,-784,
+-650,-536,-440,-344,-262,-185,-115,-52,16,85,156,223,290,357,398,416,456,499,546,605,
+676,747,809,876,927,955,990,1031,1079,1130,1186,1249,1309,1377,1452,1534,1616,1684,1742,1791,
+1844,1901,1958,2017,2078,2138,2203,2273,2340,2409,2476,2533,2588,2640,2686,2733,2783,2838,2890,2933,
+2970,2995,3011,3041,3127,3221,3298,3370,3452,3514,3556,3595,3641,3683,3706,3751,3801,3865,3960,4095,
+4192,4314,4419,4470,4485,4495,4516,4534,4581,4660,4757,4842,4857,4845,4840,4848,4859,4869,4877,4889,
+4905,4923,4946,4979,5013,5045,5079,5116,5150,5182,5214,5249,5286,5324,5363,5403,5440,5483,5526,5571,
+5613,5654,5697,5741,5785,5827,5877,5921,5959,5999,6039,6080,6116,6147,6190,6234,6273,6308,6337,6362,
+6386,6403,6425,6448,6474,6480,6468,6466,6475,6480,6476,6464,6457,6443,6425,6414,6415,6403,6392,6381,
+6365,6358,6349,6344,6335,6322,6302,6276,6254,6231,6210,6190,6169,6153,6141,6133,6120,6111,6105,6098,
+6093,6087,6081,6075,6069,6063,6054,6046,6034,6021,6007,5992,5983,5970,5964,5961,5962,5967,5970,5973,
+5968,5963,5962,5963,5967,5978,5981,5967,5946,5920,5899,5872,5835,5808,5798,5804,5807,5797,5774,5744,
+5711,5697,5707,5713,5697,5663,5637,5627,5619,5618,5609,5599,5603,5597,5575,5529,5455,5384,5323,5287,
+5260,5252,5264,5256,5231,5219,5227,5226,5230,5236,5216,5176,5124,5073,5021,4980,4943,4913,4888,4852,
+4808,4782,4757,4735,4722,4698,4679,4664,4646,4621,4593,4562,4523,4482,4458,4451,4457,4476,4496,4509,
+4516,4512,4513,4499,4486,4514,4568,4606,4631,4621,4590,4552,4512,4456,4390,4314,4241,4187,4129,4061,
+4044,4012,3997,3943,3876,3814,3741,3657,3575,3503,3427,3349,3270,3206,3148,3123,3102,3093,3069,3031,
+2990,2948,2893,2839,2774,2717,2664,2609,2554,2495,2430,2372,2317,2252,2183,2118,2041,1989,1962,1939,
+1924,1912,1908,1914,1928,1942,1956,1967,1973,1969,1960,1965,1966,1961,1960,1955,1947,1918,1871,1820,
+1774,1737,1696,1654,1625,1590,1566,1544,1527,1511,1496,1486,1492,1501,1500,1504,1511,1534,1554,1567,
+1579,1589,1592,1589,1582,1576,1567,1556,1543,1536,1540,1542,1533,1524,1525,1545,1561,1573,1574,1554,
+1517,1470,1422,1376,1318,1254,1198,1153,1120,1087,1078,1095,1128,1146,1152,1153,1147,1134,1118,1108,
+1110,1121,1132,1137,1135,1132,1123,1109,1097,1087,1077,1071,1067,1066,1067,1072,1067,1069,1082,1084,
+1059,1028,998,969,935,898,851,811,780,754,731,720,717,718,717,714,702,680,655,633,
+619,608,587,560,526,491,455,429,407,382,364,343,318,287,256,221,176,135,101,78,
+53,17,-23,-62,-98,-132,-172,-209,-236,-264,-277,-289,-306,-301,-291,-277,-290,-289,-278,-288,
+-374,-468,-557,-664,-768,-854,-931,-972,-1005,-1044,-1070,-1096,-1115,-1136,-1169,-1217,-1280,-1351,-1411,-1452,
+-1479,-1507,-1538,-1573,-1606,-1640,-1680,-1720,-1735,-1747,-1772,-1808,-1843,-1871,-1899,-1932,-1969,-2010,-2047,-2076,
+-2104,-2136,-2171,-2208,-2242,-2270,-2293,-2313,-2340,-2368,-2390,-2406,-2425,-2446,-2472,-2498,-2519,-2536,-2551,-2565,
+-2579,-2601,-2634,-2674,-2712,-2747,-2779,-2803,-2812,-2809,-2801,-2798,-2813,-2841,-2876,-2900,-2919,-2946,-2971,-2988,
+-3003,-3013,-3025,-3037,-3048,-3057,-3066,-3073,-3076,-3076,-3074,-3070,-3066,-3059,-3052,-3047,-3052,-3063,-3072,-3073,
+-3074,-3086,-3106,-3124,-3135,-3145,-3153,-3157,-3159,-3161,-3163,-3167,-3183,-3217,-3259,-3291,-3307,-3309,-3296,-3273,
+-3249,-3223,-3198,-3181,-3166,-3143,-3103,-3080,-3084,-3076,-3070,-3069,-3069,-3049,-3060,-3075,-3117,-3169,-3220,-3265,
+-3297,-3332,-3363,-3400,-3423,-3428,-3436,-3443,-3446,-3436,-3420,-3405,-3410,-3415,-3416,-3407,-3397,-3384,-3377,-3371,
+-3368,-3365,-3366,-3359,-3344,-3322,-3302,-3289,-3276,-3257,-3233,-3203,-3179,-3168,-3165,-3148,-3128,-3107,-3085,-3054,
+-3032,-3016,-3015,-3030,-3042,-3049,-3038,-3031,-3022,-2997,-2978,-2962,-2937,-2905,-2880,-2852,-2832,-2817,-2800,-2771,
+-2756,-2754,-2753,-2743,-2731,-2740,-2763,-2776,-2778,-2775,-2771,-2770,-2772,-2797,-2813,-2812,-2804,-2801,-2780,-2743,
+-2697,-2646,-2580,-2509,-2442,-2376,-2298,-2202,-2109,-2024,-1965,-1930,-1916,-1909,-1891,-1870,-1840,-1802,-1776,-1736,
+-1687,-1635,-1574,-1515,-1455,-1386,-1304,-1232,-1177,-1127,-1078,-1035,-991,-945,-914,-881,-842,-794,-740,-679,
+-619,-569,-524,-481,-442,-413,-393,-375,-356,-336,-322,-305,-279,-249,-216,-186,-165,-140,-111,-72,
+-29,5,41,84,128,166,199,235,276,313,344,362,369,373,384,395,401,407,415,423,
+429,438,459,487,521,568,627,694,765,824,866,910,966,1017,1046,1068,1071,1091,1107,1123,
+1136,1154,1165,1187,1213,1237,1258,1252,1247,1245,1229,1262,1264,1289,1320,1352,1370,1396,1419,1403,
+1366,1372,1407,1419,1401,1414,1437,1427,1405,1393,1418,1442,1488,1519,1535,1546,1571,1581,1617,1651,
+1650,1636,1638,1654,1657,1670,1667,1673,1707,1731,1732,1726,1714,1719,1723,1740,1719,1685,1643,1612,
+1585,1551,1517,1488,1462,1439,1423,1411,1400,1385,1376,1369,1367,1356,1354,1367,1387,1402,1410,1418,
+1435,1422,1410,1431,1475,1488,1468,1456,1447,1447,1415,1353,1328,1318,1326,1320,1324,1343,1348,1335,
+1304,1265,1235,1212,1198,1207,1219,1220,1177,1122,1084,1049,1017,998,987,982,987,985,979,981,
+974,949,867,731,557,366,243,151,70,18,-2,-5,-3,-8,-21,-41,-70,-97,-127,-152,
+-174,-189,-193,-186,-176,-167,-154,-135,-110,-86,-59,-31,-15,-1,14,23,40,74,100,130,
+136,167,239,297,345,391,424,438,444,447,453,466,477,484,495,513,539,566,597,650,
+690,719,740,759,758,754,754,756,763,785,808,823,842,860,879,894,897,893,891,893,
+907,923,943,957,969,991,1018,1049,1077,1093,1107,1117,1129,1141,1158,1166,1163,1157,1153,1157,
+1159,1159,1156,1155,1158,1166,1180,1198,1219,1237,1252,1260,1269,1280,1302,1324,1354,1385,1411,1434,
+1446,1476,1493,1468,1421,1394,1398,1411,1422,1421,1409,1415,1439,1462,1473,1469,1473,1473,1474,1481,
+1483,1470,1454,1441,1459,1473,1482,1444,1381,1290,1144,1000,892,819,805,819,881,1009,1149,1248,
+1286,1330,1356,1386,1422,1467,1423,1358,1330,1319,1277,1261,1251,1239,1251,1247,1244,1238,1241,1242,
+1243,1258,1274,1264,1267,1276,1259,1278,1293,1328,1378,1456,1506,1494,1480,1533,1567,1553,1520,1484,
+1543,1569,1483,1430,1463,1393,1315,1243,1161,1152,1095,1073,1043,1037,1027,965,964,928,886,809,
+737,677,638,593,571,548,512,490,432,396,339,311,291,248,230,194,139,99,63,18,
+-20,-66,-125,-154,-167,-179,-213,-251,-262,-283,-329,-351,-391,-409,-434,-468,-476,-501,-557,-630,
+-679,-717,-766,-874,-990,-1093,-1161,-1209,-1232,-1244,-1240,-1240,-1254,-1282,-1315,-1345,-1388,-1426,-1469,-1523,
+-1581,-1634,-1667,-1697,-1730,-1764,-1806,-1844,-1873,-1902,-1933,-1983,-2060,-2126,-2176,-2226,-2279,-2334,-2379,-2420,
+-2467,-2518,-2569,-2612,-2657,-2706,-2752,-2797,-2838,-2877,-2907,-2932,-2956,-2983,-3010,-3030,-3044,-3062,-3075,-3086,
+-3102,-3126,-3143,-3157,-3176,-3200,-3224,-3246,-3270,-3295,-3325,-3367,-3404,-3440,-3475,-3509,-3538,-3561,-3580,-3604,
+-3626,-3642,-3661,-3683,-3711,-3737,-3779,-3838,-3898,-3953,-3996,-4019,-4038,-4054,-4072,-4094,-4115,-4137,-4164,-4192,
+-4217,-4241,-4263,-4286,-4312,-4342,-4373,-4400,-4428,-4464,-4493,-4525,-4557,-4587,-4619,-4646,-4671,-4700,-4727,-4755,
+-4781,-4810,-4833,-4857,-4881,-4901,-4911,-4922,-4924,-4923,-4919,-4907,-4884,-4865,-4843,-4819,-4795,-4769,-4742,-4708,
+-4672,-4642,-4615,-4595,-4590,-4594,-4596,-4598,-4605,-4614,-4626,-4636,-4642,-4643,-4640,-4631,-4612,-4588,-4560,-4527,
+-4487,-4448,-4409,-4375,-4346,-4321,-4295,-4272,-4249,-4228,-4204,-4181,-4157,-4133,-4110,-4100,-4096,-4098,-4107,-4112,
+-4110,-4101,-4077,-4044,-4000,-3945,-3875,-3797,-3720,-3645,-3562,-3475,-3400,-3320,-3244,-3184,-3127,-3069,-3016,-2965,
+-2906,-2847,-2787,-2733,-2685,-2650,-2615,-2570,-2533,-2515,-2490,-2454,-2413,-2381,-2361,-2349,-2337,-2310,-2272,-2218,
+-2188,-2172,-2143,-2118,-2081,-2036,-1978,-1903,-1842,-1783,-1713,-1643,-1573,-1496,-1418,-1343,-1258,-1153,-1042,-920,
+-790,-671,-570,-482,-386,-301,-216,-133,-59,11,79,143,206,262,323,375,392,407,436,477,
+529,588,651,720,791,861,907,947,996,1053,1105,1154,1202,1250,1309,1382,1469,1544,1604,1664,
+1729,1797,1864,1925,1975,2030,2092,2160,2230,2301,2373,2440,2505,2569,2626,2675,2720,2768,2818,2870,
+2914,2954,2998,3032,3055,3083,3135,3237,3349,3452,3546,3618,3665,3722,3789,3817,3841,3883,3944,4015,
+4094,4185,4308,4409,4449,4495,4514,4527,4543,4598,4675,4759,4824,4823,4817,4829,4851,4868,4880,4889,
+4900,4914,4933,4959,4986,5013,5045,5079,5116,5150,5184,5219,5254,5292,5331,5370,5410,5458,5504,5534,
+5576,5613,5661,5710,5763,5814,5860,5904,5945,5985,6024,6070,6105,6140,6183,6227,6267,6303,6334,6358,
+6379,6395,6422,6450,6466,6462,6457,6465,6472,6471,6460,6449,6441,6427,6414,6410,6406,6393,6379,6363,
+6352,6343,6337,6334,6320,6305,6292,6270,6247,6223,6202,6175,6153,6130,6115,6102,6096,6089,6086,6081,
+6079,6077,6074,6069,6064,6058,6050,6038,6024,6011,5997,5985,5973,5968,5965,5964,5967,5976,5975,5969,
+5969,5970,5967,5976,5986,5976,5958,5940,5923,5901,5876,5850,5818,5793,5781,5758,5727,5693,5666,5644,
+5638,5640,5615,5598,5624,5616,5602,5603,5609,5610,5605,5578,5552,5537,5530,5521,5496,5449,5399,5370,
+5352,5340,5331,5330,5328,5310,5288,5273,5281,5291,5257,5198,5143,5079,5036,5002,4962,4919,4873,4835,
+4808,4787,4774,4751,4733,4724,4716,4708,4676,4643,4610,4577,4545,4510,4473,4446,4437,4447,4473,4495,
+4501,4502,4487,4474,4458,4479,4569,4580,4624,4639,4616,4584,4557,4516,4468,4397,4284,4239,4165,4116,
+4085,4080,4053,4012,3943,3878,3811,3746,3679,3595,3508,3433,3356,3273,3210,3151,3114,3094,3066,3035,
+2997,2956,2912,2859,2804,2747,2694,2644,2593,2544,2486,2427,2371,2321,2246,2169,2097,2019,1960,1921,
+1898,1892,1888,1891,1891,1911,1932,1953,1967,1970,1962,1960,1966,1971,1965,1954,1939,1911,1873,1837,
+1806,1772,1739,1708,1680,1653,1626,1600,1577,1556,1539,1523,1512,1509,1508,1510,1520,1534,1546,1557,
+1573,1586,1591,1593,1590,1581,1569,1557,1549,1544,1546,1557,1568,1573,1574,1574,1576,1578,1581,1580,
+1568,1544,1508,1461,1411,1360,1307,1253,1206,1171,1141,1117,1112,1125,1136,1147,1163,1174,1171,1157,
+1143,1135,1137,1141,1141,1138,1133,1125,1120,1120,1121,1122,1122,1123,1121,1117,1109,1102,1098,1088,
+1063,1025,982,938,895,859,830,804,780,759,739,723,715,714,717,717,714,705,687,664,
+640,622,601,574,545,511,473,438,413,397,380,361,341,315,285,255,222,181,137,100,
+74,49,16,-24,-63,-96,-129,-170,-205,-233,-256,-270,-282,-290,-289,-277,-272,-283,-279,-272,
+-307,-388,-479,-581,-695,-796,-878,-947,-1005,-1047,-1074,-1095,-1117,-1142,-1168,-1202,-1252,-1320,-1383,-1425,
+-1455,-1484,-1514,-1545,-1582,-1617,-1652,-1687,-1719,-1738,-1752,-1774,-1806,-1837,-1864,-1893,-1931,-1972,-2012,-2051,
+-2088,-2122,-2157,-2198,-2243,-2284,-2311,-2326,-2345,-2373,-2404,-2430,-2451,-2471,-2495,-2523,-2549,-2571,-2589,-2603,
+-2615,-2625,-2640,-2665,-2698,-2733,-2767,-2800,-2824,-2829,-2825,-2822,-2831,-2852,-2883,-2918,-2946,-2967,-2986,-3003,
+-3016,-3028,-3037,-3047,-3059,-3071,-3084,-3098,-3112,-3125,-3133,-3137,-3134,-3129,-3125,-3119,-3113,-3113,-3123,-3135,
+-3140,-3142,-3153,-3168,-3183,-3195,-3202,-3206,-3211,-3219,-3229,-3240,-3254,-3274,-3302,-3334,-3365,-3392,-3410,-3414,
+-3396,-3366,-3333,-3306,-3283,-3266,-3241,-3209,-3188,-3178,-3168,-3152,-3126,-3105,-3093,-3087,-3089,-3105,-3140,-3187,
+-3237,-3288,-3336,-3375,-3406,-3426,-3436,-3442,-3444,-3439,-3431,-3426,-3427,-3425,-3421,-3418,-3411,-3403,-3398,-3397,
+-3396,-3395,-3400,-3401,-3393,-3379,-3361,-3342,-3322,-3303,-3287,-3268,-3250,-3236,-3226,-3210,-3190,-3168,-3145,-3116,
+-3087,-3068,-3063,-3067,-3075,-3085,-3085,-3073,-3054,-3037,-3017,-2997,-2977,-2956,-2928,-2898,-2865,-2835,-2812,-2797,
+-2779,-2770,-2769,-2769,-2765,-2766,-2777,-2790,-2801,-2802,-2799,-2799,-2799,-2806,-2813,-2813,-2803,-2785,-2753,-2713,
+-2662,-2604,-2543,-2476,-2409,-2342,-2272,-2201,-2133,-2065,-2008,-1970,-1948,-1933,-1921,-1900,-1872,-1835,-1792,-1752,
+-1709,-1662,-1609,-1554,-1496,-1439,-1380,-1304,-1225,-1155,-1089,-1031,-981,-933,-887,-848,-811,-764,-712,-657,
+-604,-554,-509,-465,-424,-386,-355,-329,-310,-294,-275,-261,-246,-229,-203,-171,-139,-114,-88,-53,
+-13,24,64,114,166,211,245,274,305,336,365,385,398,405,413,430,451,471,483,488,
+488,490,503,525,558,600,651,715,783,848,889,915,947,989,1029,1050,1066,1101,1129,1144,
+1153,1167,1184,1194,1202,1213,1221,1232,1241,1246,1240,1234,1237,1253,1287,1328,1370,1391,1401,1410,
+1401,1395,1384,1377,1393,1421,1441,1455,1474,1477,1472,1472,1467,1471,1500,1536,1552,1561,1585,1622,
+1641,1641,1638,1638,1648,1664,1676,1673,1678,1702,1725,1732,1725,1712,1710,1713,1713,1702,1681,1651,
+1623,1597,1569,1537,1506,1477,1456,1444,1432,1415,1399,1393,1395,1393,1390,1392,1397,1389,1388,1400,
+1414,1426,1436,1447,1489,1531,1527,1517,1507,1481,1437,1398,1383,1383,1386,1384,1372,1359,1349,1336,
+1323,1298,1254,1219,1221,1230,1227,1198,1151,1102,1074,1050,1002,938,883,851,836,834,857,894,
+920,921,887,782,611,403,223,104,21,-44,-81,-86,-79,-73,-75,-81,-91,-104,-117,-131,
+-146,-160,-167,-163,-154,-141,-128,-111,-96,-74,-50,-23,0,10,22,30,34,41,54,69,
+84,93,111,156,233,332,405,444,469,477,478,477,480,494,508,517,529,543,560,585,
+623,672,711,725,753,778,783,779,778,782,799,824,850,872,889,905,922,931,936,940,
+947,969,980,988,994,1003,1018,1039,1062,1089,1113,1132,1145,1158,1174,1191,1201,1193,1182,1172,
+1168,1167,1166,1171,1174,1179,1195,1217,1245,1268,1280,1287,1292,1302,1324,1353,1377,1408,1439,1473,
+1481,1498,1502,1508,1462,1419,1403,1408,1429,1444,1457,1465,1476,1490,1491,1488,1491,1491,1488,1495,
+1495,1486,1451,1460,1462,1471,1458,1440,1371,1316,1196,1077,989,938,918,943,998,1082,1167,1297,
+1396,1439,1419,1361,1358,1354,1377,1357,1324,1307,1287,1290,1255,1239,1230,1230,1225,1214,1197,1181,
+1166,1164,1162,1166,1155,1136,1114,1088,1073,1071,1083,1101,1121,1146,1156,1125,1088,1080,1063,1069,
+1102,1127,1137,1122,1217,1289,1272,1234,1196,1155,1141,1099,1032,1039,1041,1045,1010,977,921,870,
+805,719,682,634,583,548,505,472,445,395,346,313,278,262,243,231,196,158,131,92,
+41,4,-30,-70,-129,-178,-221,-240,-276,-300,-336,-372,-396,-420,-442,-476,-503,-499,-526,-565,
+-626,-689,-789,-892,-978,-1069,-1138,-1171,-1207,-1233,-1249,-1254,-1264,-1282,-1309,-1339,-1369,-1407,-1455,-1509,
+-1560,-1609,-1637,-1654,-1680,-1706,-1730,-1755,-1787,-1818,-1855,-1902,-1963,-2037,-2087,-2133,-2178,-2221,-2267,-2315,
+-2362,-2409,-2460,-2512,-2556,-2600,-2646,-2694,-2742,-2785,-2824,-2859,-2891,-2921,-2951,-2977,-3001,-3022,-3038,-3051,
+-3071,-3094,-3111,-3131,-3149,-3170,-3194,-3218,-3237,-3266,-3297,-3337,-3369,-3401,-3437,-3475,-3500,-3512,-3521,-3536,
+-3555,-3585,-3632,-3667,-3692,-3717,-3750,-3793,-3839,-3891,-3933,-3967,-3991,-4007,-4029,-4052,-4075,-4096,-4121,-4146,
+-4171,-4192,-4213,-4233,-4259,-4283,-4310,-4339,-4374,-4410,-4440,-4470,-4500,-4535,-4569,-4598,-4627,-4652,-4679,-4709,
+-4740,-4772,-4803,-4828,-4853,-4882,-4911,-4932,-4935,-4924,-4916,-4911,-4888,-4889,-4871,-4849,-4823,-4796,-4769,-4743,
+-4708,-4677,-4646,-4619,-4600,-4591,-4592,-4601,-4612,-4622,-4636,-4657,-4677,-4685,-4687,-4683,-4674,-4651,-4621,-4593,
+-4558,-4520,-4485,-4448,-4410,-4380,-4353,-4331,-4313,-4298,-4280,-4268,-4255,-4246,-4237,-4226,-4217,-4220,-4220,-4215,
+-4204,-4184,-4163,-4138,-4094,-4028,-3952,-3876,-3798,-3722,-3650,-3570,-3489,-3415,-3343,-3270,-3212,-3159,-3108,-3059,
+-3012,-2954,-2897,-2844,-2796,-2754,-2723,-2685,-2628,-2580,-2552,-2540,-2523,-2496,-2457,-2421,-2406,-2398,-2379,-2346,
+-2305,-2252,-2230,-2203,-2171,-2131,-2085,-2034,-1973,-1909,-1839,-1764,-1690,-1618,-1544,-1465,-1385,-1299,-1188,-1066,
+-947,-833,-730,-638,-549,-455,-366,-289,-193,-109,-35,35,102,169,234,300,361,406,423,438,
+466,502,547,602,658,715,775,826,881,943,1009,1068,1132,1198,1252,1302,1356,1416,1481,1541,
+1606,1675,1745,1815,1882,1941,1994,2058,2131,2203,2272,2338,2404,2468,2527,2589,2649,2701,2744,2791,
+2838,2882,2928,2982,3033,3079,3122,3166,3206,3251,3320,3404,3485,3567,3680,3804,3896,3945,3976,4014,
+4075,4130,4205,4286,4350,4413,4475,4509,4538,4580,4638,4701,4759,4788,4784,4786,4801,4818,4837,4853,
+4872,4892,4913,4938,4968,4996,5025,5056,5087,5120,5154,5191,5226,5265,5308,5347,5385,5427,5469,5511,
+5559,5610,5660,5708,5755,5804,5847,5888,5932,5975,6016,6061,6095,6132,6179,6222,6262,6297,6327,6350,
+6370,6389,6414,6438,6447,6447,6451,6462,6466,6452,6442,6433,6425,6414,6411,6407,6393,6382,6367,6353,
+6344,6337,6326,6318,6308,6299,6284,6263,6246,6217,6187,6166,6145,6128,6113,6096,6084,6076,6074,6071,
+6070,6069,6067,6064,6059,6049,6039,6026,6013,6002,5992,5984,5982,5978,5975,5972,5970,5973,5973,5972,
+5974,5974,5977,5978,5981,5964,5933,5903,5873,5843,5810,5780,5761,5754,5761,5744,5702,5659,5623,5595,
+5577,5581,5590,5571,5548,5544,5554,5571,5565,5553,5550,5551,5552,5558,5564,5560,5544,5520,5493,5479,
+5469,5460,5442,5414,5388,5362,5333,5309,5311,5312,5272,5209,5142,5077,5016,4984,4975,4934,4881,4831,
+4801,4787,4759,4738,4722,4710,4706,4701,4680,4655,4624,4590,4557,4528,4497,4460,4434,4427,4438,4460,
+4483,4484,4477,4464,4442,4437,4458,4514,4543,4560,4595,4577,4537,4513,4486,4441,4381,4301,4212,4171,
+4138,4112,4075,4028,3974,3926,3879,3807,3728,3652,3576,3497,3425,3361,3289,3211,3154,3111,3064,3025,
+2990,2942,2896,2853,2808,2759,2712,2663,2614,2568,2522,2479,2431,2376,2311,2244,2186,2130,2066,2007,
+1959,1924,1904,1887,1869,1855,1864,1897,1930,1950,1965,1971,1971,1977,1980,1978,1966,1944,1907,1862,
+1827,1797,1768,1744,1720,1698,1678,1658,1638,1618,1600,1584,1571,1561,1551,1550,1555,1563,1572,1588,
+1602,1612,1612,1605,1591,1581,1573,1564,1555,1547,1540,1539,1555,1577,1590,1595,1596,1594,1593,1596,
+1592,1573,1547,1523,1495,1457,1417,1377,1332,1289,1256,1221,1185,1170,1176,1182,1187,1203,1223,1224,
+1218,1206,1190,1175,1166,1161,1158,1156,1161,1173,1184,1195,1198,1194,1183,1163,1136,1115,1107,1099,
+1074,1023,965,918,882,854,832,809,786,770,757,741,725,718,716,716,717,712,706,688,
+663,637,613,587,558,525,490,458,430,408,389,369,349,326,304,281,252,221,183,140,
+98,69,47,23,-16,-60,-94,-130,-170,-209,-241,-265,-273,-276,-283,-284,-274,-276,-254,-229,
+-244,-320,-410,-487,-596,-734,-844,-916,-983,-1049,-1085,-1093,-1100,-1122,-1156,-1201,-1253,-1310,-1368,-1414,
+-1443,-1469,-1496,-1525,-1557,-1591,-1626,-1665,-1702,-1732,-1750,-1764,-1787,-1819,-1846,-1870,-1898,-1936,-1979,-2022,
+-2064,-2102,-2138,-2176,-2219,-2264,-2305,-2333,-2353,-2372,-2397,-2428,-2464,-2497,-2523,-2548,-2576,-2602,-2623,-2638,
+-2652,-2662,-2671,-2682,-2707,-2739,-2771,-2800,-2830,-2852,-2854,-2848,-2859,-2885,-2908,-2928,-2953,-2978,-3001,-3017,
+-3028,-3036,-3045,-3053,-3060,-3071,-3090,-3111,-3130,-3146,-3163,-3176,-3188,-3196,-3197,-3195,-3191,-3185,-3184,-3191,
+-3198,-3201,-3205,-3215,-3227,-3238,-3248,-3256,-3261,-3266,-3270,-3276,-3290,-3317,-3349,-3379,-3409,-3439,-3471,-3497,
+-3511,-3510,-3493,-3462,-3422,-3383,-3344,-3327,-3300,-3282,-3265,-3248,-3219,-3188,-3177,-3167,-3168,-3157,-3149,-3168,
+-3193,-3224,-3283,-3343,-3376,-3406,-3423,-3433,-3448,-3452,-3443,-3440,-3439,-3440,-3434,-3429,-3431,-3425,-3419,-3422,
+-3422,-3412,-3412,-3427,-3432,-3423,-3412,-3400,-3382,-3363,-3355,-3349,-3332,-3316,-3298,-3272,-3245,-3222,-3202,-3181,
+-3148,-3112,-3095,-3104,-3121,-3118,-3108,-3103,-3093,-3070,-3047,-3025,-3011,-2993,-2974,-2949,-2922,-2890,-2861,-2839,
+-2822,-2807,-2790,-2780,-2782,-2782,-2775,-2777,-2799,-2811,-2823,-2823,-2817,-2814,-2813,-2803,-2773,-2734,-2685,-2639,
+-2613,-2563,-2499,-2426,-2350,-2291,-2223,-2157,-2106,-2060,-2019,-1974,-1941,-1931,-1935,-1925,-1885,-1839,-1801,-1773,
+-1732,-1676,-1635,-1590,-1528,-1470,-1418,-1356,-1298,-1213,-1131,-1061,-1005,-959,-911,-858,-806,-752,-703,-650,
+-597,-553,-511,-474,-430,-391,-356,-324,-292,-264,-252,-234,-216,-199,-180,-156,-120,-80,-45,-7,
+30,72,107,141,183,231,266,293,316,340,361,374,391,409,433,454,484,523,553,566,
+569,571,584,601,619,648,690,747,817,881,936,953,948,973,1006,1038,1068,1097,1144,1177,
+1186,1192,1212,1218,1204,1196,1200,1208,1223,1236,1241,1239,1227,1223,1229,1252,1298,1343,1376,1384,
+1390,1403,1446,1425,1406,1415,1442,1436,1418,1418,1435,1450,1453,1464,1495,1525,1537,1540,1548,1574,
+1607,1628,1634,1639,1657,1682,1668,1652,1657,1669,1677,1695,1719,1735,1717,1692,1694,1691,1681,1668,
+1653,1638,1618,1596,1567,1538,1515,1492,1463,1440,1422,1419,1423,1424,1418,1415,1408,1396,1397,1411,
+1438,1454,1469,1502,1530,1557,1584,1594,1592,1561,1493,1433,1406,1412,1419,1405,1394,1379,1384,1372,
+1346,1340,1305,1265,1248,1246,1224,1185,1124,1069,1034,978,863,750,662,609,570,536,518,523,
+564,648,731,755,654,473,307,176,85,9,-51,-83,-85,-83,-75,-67,-67,-68,-77,-88,
+-101,-110,-117,-118,-113,-106,-96,-85,-74,-58,-39,-17,4,23,31,31,32,28,22,28,
+50,64,68,74,91,144,256,365,432,475,499,501,502,509,520,532,542,554,564,576,
+595,618,657,704,740,769,786,800,812,818,821,833,859,882,900,919,938,951,969,983,
+993,1001,1015,1027,1034,1039,1042,1046,1060,1082,1096,1108,1124,1144,1161,1180,1190,1194,1200,1204,
+1204,1201,1202,1204,1207,1210,1218,1231,1247,1281,1301,1309,1316,1327,1341,1356,1389,1419,1443,1451,
+1474,1490,1489,1496,1474,1475,1439,1422,1440,1471,1495,1501,1506,1501,1498,1496,1502,1514,1512,1496,
+1487,1464,1448,1434,1426,1410,1423,1426,1359,1273,1202,1136,1075,1035,1018,1029,1064,1108,1164,1273,
+1339,1350,1304,1277,1266,1253,1246,1256,1272,1277,1290,1295,1284,1267,1238,1222,1217,1213,1200,1177,
+1155,1132,1120,1117,1102,1086,1066,1046,1023,1009,1000,997,998,990,974,955,936,911,883,863,
+842,830,830,848,931,990,1068,1116,1155,1112,1058,1138,1125,1041,1032,1021,978,953,908,857,
+821,748,692,679,656,583,540,481,465,431,398,339,308,254,241,233,234,216,191,145,
+105,63,21,-11,-47,-105,-151,-179,-223,-267,-310,-339,-389,-421,-453,-476,-505,-495,-500,-532,
+-566,-652,-749,-868,-971,-1049,-1108,-1151,-1177,-1198,-1213,-1230,-1249,-1269,-1298,-1330,-1369,-1408,-1449,-1498,
+-1553,-1603,-1637,-1657,-1677,-1698,-1719,-1737,-1760,-1791,-1829,-1869,-1928,-1983,-2024,-2055,-2084,-2111,-2145,-2183,
+-2222,-2266,-2315,-2368,-2430,-2487,-2537,-2592,-2641,-2687,-2730,-2771,-2811,-2850,-2887,-2921,-2953,-2980,-3002,-3021,
+-3039,-3061,-3087,-3099,-3119,-3148,-3173,-3199,-3221,-3246,-3278,-3305,-3332,-3361,-3393,-3429,-3460,-3473,-3481,-3489,
+-3498,-3521,-3562,-3599,-3626,-3654,-3690,-3729,-3770,-3813,-3854,-3895,-3930,-3951,-3972,-3996,-4023,-4047,-4073,-4102,
+-4129,-4152,-4170,-4187,-4208,-4231,-4256,-4281,-4310,-4345,-4383,-4420,-4456,-4492,-4528,-4561,-4592,-4618,-4642,-4664,
+-4695,-4728,-4762,-4799,-4832,-4861,-4887,-4910,-4925,-4937,-4945,-4936,-4923,-4907,-4892,-4872,-4850,-4823,-4797,-4775,
+-4751,-4724,-4701,-4678,-4657,-4639,-4630,-4625,-4636,-4653,-4667,-4676,-4687,-4710,-4719,-4717,-4714,-4702,-4677,-4648,
+-4617,-4589,-4562,-4529,-4488,-4452,-4424,-4399,-4377,-4364,-4355,-4347,-4339,-4334,-4327,-4306,-4284,-4292,-4283,-4266,
+-4252,-4234,-4228,-4225,-4185,-4121,-4047,-3968,-3890,-3810,-3731,-3657,-3585,-3510,-3435,-3361,-3295,-3236,-3192,-3149,
+-3104,-3060,-3016,-2971,-2922,-2870,-2824,-2788,-2752,-2707,-2665,-2631,-2601,-2575,-2563,-2538,-2509,-2483,-2459,-2441,
+-2417,-2386,-2350,-2316,-2289,-2248,-2200,-2153,-2102,-2043,-1977,-1910,-1830,-1749,-1675,-1600,-1520,-1437,-1341,-1222,
+-1094,-976,-868,-789,-706,-632,-535,-443,-362,-278,-188,-108,-38,28,95,172,251,329,395,446,
+457,463,481,514,560,611,662,713,768,826,894,963,1028,1092,1150,1202,1258,1320,1381,1431,
+1493,1570,1642,1707,1780,1853,1915,1964,2026,2100,2169,2233,2300,2363,2428,2492,2549,2610,2661,2705,
+2754,2799,2846,2894,2953,3017,3076,3127,3175,3222,3280,3344,3397,3454,3533,3641,3753,3881,3975,4042,
+4072,4104,4157,4205,4246,4312,4380,4440,4490,4541,4596,4658,4710,4738,4744,4753,4771,4787,4800,4810,
+4826,4850,4877,4908,4943,4973,5004,5037,5067,5097,5130,5167,5205,5244,5282,5329,5373,5413,5456,5497,
+5541,5587,5629,5679,5725,5777,5825,5876,5916,5957,6001,6046,6084,6124,6171,6213,6255,6289,6317,6339,
+6360,6381,6407,6431,6432,6434,6444,6456,6449,6434,6423,6416,6406,6403,6408,6396,6381,6369,6357,6345,
+6334,6327,6315,6298,6274,6263,6251,6243,6230,6216,6193,6169,6151,6125,6102,6086,6077,6073,6072,6071,
+6070,6070,6066,6061,6051,6041,6028,6015,6002,5993,5989,5990,5991,5997,6004,6009,6007,6003,5994,5986,
+5979,5980,5979,5981,5983,5968,5928,5887,5842,5793,5742,5699,5675,5677,5698,5702,5674,5632,5595,5571,
+5561,5543,5523,5509,5504,5503,5515,5548,5554,5532,5506,5490,5478,5482,5507,5555,5612,5622,5603,5571,
+5554,5540,5516,5479,5449,5429,5393,5363,5357,5343,5297,5232,5160,5096,5035,4981,4949,4926,4893,4855,
+4817,4787,4759,4729,4713,4696,4676,4668,4658,4635,4620,4592,4563,4540,4516,4484,4453,4431,4414,4414,
+4441,4466,4476,4470,4446,4416,4410,4414,4440,4486,4546,4587,4565,4544,4490,4427,4379,4314,4270,4212,
+4159,4162,4123,4078,4032,3968,3898,3837,3774,3715,3630,3552,3489,3419,3351,3288,3221,3155,3100,3055,
+3005,2967,2920,2874,2828,2780,2734,2689,2641,2595,2552,2507,2458,2408,2359,2305,2267,2224,2165,2115,
+2072,2037,1996,1956,1925,1900,1872,1854,1862,1886,1925,1956,1976,1994,2008,2011,2003,1985,1964,1924,
+1874,1833,1805,1781,1757,1737,1723,1712,1703,1683,1664,1651,1636,1625,1614,1600,1590,1589,1596,1607,
+1615,1619,1614,1601,1586,1572,1559,1546,1537,1534,1535,1532,1531,1544,1569,1594,1616,1630,1633,1631,
+1626,1619,1604,1580,1552,1524,1499,1476,1449,1414,1376,1340,1303,1264,1234,1224,1231,1248,1265,1267,
+1255,1246,1235,1221,1207,1197,1194,1200,1216,1234,1248,1258,1256,1241,1214,1183,1152,1123,1107,1095,
+1079,1046,987,930,886,856,836,817,803,790,776,762,747,737,730,723,718,712,703,691,
+674,647,626,602,574,544,513,486,454,428,405,381,354,326,302,284,264,239,206,171,
+132,97,73,57,37,0,-49,-96,-138,-176,-215,-244,-266,-277,-282,-284,-285,-279,-278,-234,
+-197,-231,-333,-429,-508,-612,-745,-845,-916,-987,-1051,-1084,-1094,-1106,-1132,-1174,-1230,-1297,-1362,-1409,
+-1441,-1470,-1499,-1525,-1553,-1585,-1614,-1645,-1679,-1708,-1735,-1760,-1785,-1812,-1844,-1875,-1903,-1932,-1967,-2001,
+-2037,-2076,-2118,-2161,-2202,-2241,-2279,-2315,-2350,-2387,-2418,-2445,-2475,-2510,-2543,-2567,-2592,-2620,-2647,-2669,
+-2685,-2697,-2710,-2731,-2750,-2769,-2794,-2821,-2843,-2865,-2883,-2888,-2889,-2909,-2941,-2966,-2979,-2994,-3013,-3030,
+-3044,-3054,-3069,-3084,-3095,-3102,-3115,-3130,-3142,-3157,-3177,-3198,-3215,-3231,-3249,-3260,-3263,-3259,-3252,-3244,
+-3239,-3240,-3249,-3262,-3275,-3287,-3298,-3309,-3316,-3322,-3325,-3328,-3332,-3341,-3363,-3399,-3439,-3476,-3506,-3531,
+-3558,-3577,-3581,-3576,-3563,-3533,-3481,-3430,-3397,-3383,-3361,-3357,-3340,-3307,-3275,-3246,-3238,-3232,-3218,-3214,
+-3220,-3224,-3245,-3288,-3349,-3397,-3426,-3442,-3443,-3447,-3452,-3457,-3463,-3471,-3473,-3470,-3474,-3469,-3472,-3476,
+-3473,-3459,-3436,-3438,-3463,-3483,-3482,-3475,-3471,-3457,-3435,-3415,-3390,-3364,-3339,-3308,-3275,-3247,-3230,-3212,
+-3188,-3165,-3145,-3120,-3100,-3107,-3107,-3110,-3104,-3107,-3096,-3066,-3046,-3032,-3023,-3012,-2982,-2954,-2919,-2889,
+-2866,-2844,-2824,-2811,-2808,-2796,-2789,-2790,-2798,-2812,-2823,-2824,-2818,-2815,-2793,-2761,-2722,-2659,-2607,-2562,
+-2523,-2463,-2394,-2344,-2271,-2198,-2138,-2072,-2026,-1998,-1990,-1960,-1925,-1896,-1882,-1888,-1881,-1857,-1834,-1805,
+-1778,-1735,-1684,-1627,-1569,-1503,-1447,-1397,-1351,-1285,-1205,-1121,-1052,-989,-929,-874,-830,-772,-715,-659,
+-610,-566,-524,-490,-456,-417,-376,-339,-303,-269,-234,-203,-175,-151,-124,-95,-67,-29,8,42,
+68,95,125,154,181,212,248,288,319,348,377,401,417,434,460,487,522,556,597,633,
+651,668,672,669,688,707,734,772,825,877,927,947,963,997,1048,1077,1093,1120,1151,1183,
+1201,1211,1225,1246,1233,1235,1250,1256,1259,1276,1287,1298,1297,1274,1255,1249,1259,1289,1311,1343,
+1361,1374,1380,1405,1445,1483,1467,1480,1480,1475,1493,1502,1497,1505,1543,1590,1595,1584,1570,1583,
+1596,1601,1606,1624,1644,1658,1674,1666,1658,1677,1705,1730,1748,1754,1770,1773,1753,1744,1741,1717,
+1706,1698,1683,1655,1623,1600,1590,1568,1540,1505,1474,1457,1462,1462,1466,1460,1451,1448,1454,1470,
+1495,1519,1545,1559,1570,1585,1612,1636,1663,1675,1654,1548,1472,1448,1459,1463,1463,1452,1432,1412,
+1379,1364,1360,1351,1312,1256,1212,1172,1129,1069,980,878,754,652,589,555,528,502,477,463,
+473,508,581,643,655,596,483,357,241,146,73,12,-23,-37,-49,-48,-40,-31,-28,-32,
+-43,-56,-66,-73,-73,-71,-65,-54,-42,-31,-18,-3,13,27,36,35,32,23,17,27,
+48,61,65,65,64,69,94,160,265,380,456,488,501,514,526,537,546,553,562,576,
+593,612,631,666,706,733,765,789,809,836,857,863,872,882,896,915,933,951,959,968,
+988,1016,1039,1052,1060,1071,1073,1086,1095,1099,1109,1124,1132,1143,1155,1166,1181,1194,1207,1215,
+1224,1229,1231,1230,1228,1229,1235,1248,1261,1275,1295,1317,1322,1326,1354,1376,1409,1447,1459,1463,
+1460,1467,1472,1480,1473,1485,1473,1449,1446,1454,1477,1495,1511,1516,1510,1513,1518,1521,1519,1512,
+1499,1485,1471,1455,1447,1442,1433,1404,1338,1257,1209,1181,1148,1122,1107,1101,1112,1117,1149,1210,
+1219,1196,1205,1208,1211,1223,1229,1244,1266,1282,1275,1271,1268,1261,1251,1243,1238,1235,1218,1178,
+1123,1091,1070,1047,1017,971,932,898,890,888,888,886,896,918,941,948,936,913,879,842,
+802,760,730,716,717,750,800,858,904,957,1007,997,1005,1024,1032,1017,1006,912,839,764,
+766,699,667,714,697,677,609,567,486,481,454,413,379,340,254,216,214,210,196,172,
+142,118,80,52,13,-32,-100,-121,-129,-174,-239,-304,-356,-390,-420,-445,-489,-520,-544,-577,
+-619,-662,-739,-810,-910,-987,-1067,-1124,-1153,-1172,-1190,-1210,-1230,-1244,-1262,-1288,-1324,-1370,-1417,-1466,
+-1521,-1581,-1628,-1657,-1675,-1690,-1713,-1727,-1743,-1782,-1817,-1849,-1891,-1932,-1961,-1986,-2008,-2026,-2037,-2050,
+-2068,-2107,-2153,-2202,-2249,-2316,-2394,-2467,-2535,-2594,-2647,-2695,-2741,-2789,-2833,-2872,-2907,-2941,-2970,-2994,
+-3013,-3036,-3065,-3093,-3122,-3147,-3172,-3194,-3223,-3253,-3275,-3293,-3311,-3337,-3372,-3399,-3422,-3440,-3450,-3450,
+-3452,-3459,-3480,-3520,-3554,-3575,-3604,-3637,-3673,-3712,-3754,-3797,-3836,-3865,-3889,-3918,-3947,-3975,-4008,-4039,
+-4071,-4096,-4121,-4145,-4168,-4188,-4205,-4231,-4260,-4291,-4327,-4365,-4402,-4438,-4480,-4520,-4556,-4589,-4619,-4646,
+-4671,-4698,-4729,-4765,-4803,-4838,-4869,-4896,-4915,-4925,-4935,-4939,-4927,-4918,-4910,-4895,-4879,-4856,-4834,-4816,
+-4795,-4775,-4756,-4734,-4712,-4695,-4683,-4676,-4675,-4677,-4686,-4697,-4706,-4710,-4715,-4723,-4735,-4735,-4724,-4705,
+-4678,-4652,-4629,-4598,-4560,-4523,-4493,-4467,-4442,-4425,-4414,-4412,-4413,-4414,-4407,-4374,-4338,-4318,-4311,-4300,
+-4289,-4287,-4294,-4296,-4266,-4209,-4141,-4063,-3987,-3918,-3847,-3770,-3690,-3611,-3539,-3478,-3428,-3368,-3305,-3257,
+-3220,-3174,-3116,-3066,-3032,-2998,-2959,-2913,-2865,-2814,-2768,-2727,-2695,-2660,-2641,-2632,-2604,-2569,-2533,-2508,
+-2493,-2482,-2466,-2442,-2414,-2373,-2326,-2271,-2217,-2164,-2106,-2043,-1974,-1903,-1823,-1741,-1663,-1575,-1475,-1371,
+-1265,-1159,-1040,-908,-807,-738,-661,-572,-501,-444,-365,-284,-200,-119,-44,24,102,189,276,360,
+435,471,475,475,493,521,560,612,669,727,790,860,927,987,1041,1099,1157,1220,1284,1350,
+1397,1434,1492,1565,1630,1706,1787,1853,1917,1997,2066,2130,2195,2256,2317,2381,2446,2508,2562,2613,
+2664,2715,2762,2814,2871,2930,2995,3061,3128,3191,3248,3302,3370,3442,3524,3607,3685,3756,3840,3921,
+3992,4050,4096,4140,4191,4225,4287,4365,4441,4497,4538,4598,4647,4672,4688,4703,4725,4752,4771,4783,
+4793,4814,4842,4874,4911,4945,4978,5013,5045,5076,5108,5144,5185,5225,5262,5304,5342,5391,5440,5479,
+5531,5588,5640,5676,5726,5773,5816,5861,5900,5951,5998,6039,6079,6115,6157,6200,6246,6281,6309,6330,
+6350,6370,6387,6403,6415,6427,6445,6443,6429,6418,6407,6396,6390,6396,6399,6386,6369,6355,6344,6333,
+6321,6310,6288,6269,6258,6249,6240,6227,6216,6203,6184,6162,6138,6120,6100,6082,6071,6071,6074,6074,
+6073,6073,6067,6058,6046,6030,6016,6003,5997,5995,6004,6014,6026,6041,6056,6058,6047,6037,6027,6015,
+5999,5989,5987,5988,5987,5963,5920,5871,5818,5770,5716,5660,5623,5620,5627,5622,5603,5573,5542,5527,
+5528,5555,5600,5598,5549,5509,5500,5520,5551,5531,5491,5460,5451,5471,5508,5546,5577,5609,5608,5604,
+5595,5575,5543,5509,5495,5476,5439,5405,5382,5358,5322,5270,5211,5153,5094,5037,4985,4943,4889,4849,
+4822,4793,4761,4729,4675,4664,4660,4653,4642,4635,4625,4600,4569,4549,4532,4507,4468,4440,4417,4407,
+4412,4423,4435,4467,4472,4447,4406,4383,4388,4430,4500,4565,4582,4562,4521,4477,4402,4353,4275,4234,
+4181,4136,4115,4101,4060,4012,3950,3873,3794,3729,3679,3608,3531,3467,3413,3351,3293,3226,3163,3109,
+3059,3019,2982,2948,2893,2845,2801,2761,2724,2688,2649,2603,2551,2496,2446,2398,2351,2302,2253,2202,
+2152,2106,2072,2034,1994,1948,1909,1866,1847,1862,1889,1919,1948,1972,1989,1999,2008,2009,1990,1973,
+1950,1930,1907,1887,1860,1829,1794,1774,1773,1759,1737,1719,1702,1684,1667,1652,1644,1632,1618,1609,
+1609,1609,1602,1586,1563,1541,1524,1516,1514,1515,1516,1520,1527,1537,1556,1585,1622,1654,1671,1676,
+1673,1670,1657,1632,1599,1563,1533,1513,1499,1486,1467,1441,1410,1379,1350,1322,1304,1301,1306,1319,
+1320,1308,1288,1268,1250,1240,1241,1253,1269,1284,1297,1298,1288,1264,1230,1193,1159,1126,1097,1069,
+1043,1013,978,940,905,874,851,841,838,829,813,793,777,761,751,742,732,723,709,691,
+673,656,633,607,586,559,525,496,474,447,422,401,376,345,313,283,257,238,214,189,
+159,128,95,66,45,24,-9,-54,-94,-135,-177,-214,-242,-263,-266,-267,-276,-275,-276,-277,
+-276,-269,-290,-355,-440,-535,-647,-763,-845,-907,-974,-1028,-1064,-1091,-1122,-1157,-1206,-1270,-1343,-1401,
+-1432,-1453,-1483,-1517,-1545,-1574,-1604,-1630,-1658,-1691,-1722,-1748,-1778,-1809,-1841,-1876,-1913,-1947,-1982,-2017,
+-2050,-2086,-2122,-2156,-2192,-2228,-2263,-2301,-2341,-2380,-2417,-2457,-2494,-2528,-2562,-2593,-2618,-2642,-2666,-2689,
+-2710,-2723,-2736,-2761,-2794,-2818,-2828,-2843,-2865,-2883,-2894,-2905,-2918,-2936,-2965,-2996,-3019,-3031,-3039,-3047,
+-3056,-3066,-3082,-3106,-3129,-3142,-3153,-3170,-3183,-3188,-3196,-3211,-3229,-3248,-3271,-3292,-3307,-3318,-3319,-3315,
+-3311,-3308,-3313,-3323,-3332,-3339,-3342,-3347,-3355,-3363,-3372,-3378,-3385,-3393,-3404,-3419,-3442,-3475,-3508,-3542,
+-3572,-3600,-3621,-3632,-3633,-3627,-3609,-3573,-3527,-3488,-3450,-3441,-3429,-3403,-3378,-3343,-3323,-3313,-3308,-3302,
+-3294,-3290,-3283,-3288,-3311,-3350,-3397,-3425,-3441,-3446,-3457,-3478,-3488,-3491,-3497,-3506,-3513,-3519,-3530,-3542,
+-3553,-3556,-3548,-3532,-3528,-3532,-3539,-3535,-3529,-3522,-3507,-3483,-3452,-3419,-3389,-3358,-3322,-3280,-3245,-3225,
+-3205,-3180,-3162,-3150,-3134,-3118,-3116,-3115,-3115,-3121,-3120,-3109,-3087,-3069,-3059,-3050,-3035,-3016,-2987,-2955,
+-2924,-2895,-2865,-2841,-2823,-2809,-2797,-2793,-2790,-2792,-2806,-2806,-2800,-2792,-2769,-2739,-2677,-2602,-2529,-2480,
+-2428,-2366,-2294,-2230,-2188,-2134,-2061,-2016,-2002,-1979,-1950,-1916,-1912,-1898,-1879,-1869,-1871,-1865,-1849,-1817,
+-1793,-1762,-1714,-1658,-1607,-1543,-1483,-1434,-1396,-1340,-1275,-1204,-1119,-1036,-970,-904,-849,-797,-747,-694,
+-642,-597,-554,-518,-477,-443,-408,-365,-318,-270,-230,-182,-133,-98,-63,-33,-8,22,56,91,
+118,144,162,171,191,211,240,275,319,365,403,435,459,484,516,555,593,635,677,710,
+732,742,752,761,761,774,804,845,875,925,962,993,1022,1044,1071,1103,1121,1139,1165,1198,
+1227,1248,1258,1275,1276,1256,1246,1254,1254,1262,1284,1290,1298,1291,1273,1257,1252,1266,1287,1296,
+1309,1334,1353,1366,1387,1405,1422,1450,1489,1488,1479,1489,1507,1521,1538,1549,1567,1576,1593,1600,
+1608,1616,1615,1620,1636,1655,1671,1684,1684,1686,1712,1736,1743,1743,1759,1786,1784,1737,1743,1740,
+1744,1743,1727,1730,1721,1679,1659,1651,1631,1600,1560,1526,1497,1493,1501,1503,1499,1506,1519,1539,
+1549,1551,1571,1601,1632,1659,1668,1680,1693,1720,1732,1690,1609,1536,1510,1501,1492,1488,1488,1458,
+1427,1416,1416,1402,1367,1310,1250,1201,1161,1119,1040,939,834,726,642,598,571,549,527,509,
+503,513,545,617,675,679,624,539,441,344,250,163,92,37,4,-10,-6,2,11,14,
+13,2,-9,-20,-26,-27,-25,-18,-10,-2,6,16,25,34,37,33,28,30,39,46,
+51,64,80,85,78,73,63,68,111,222,367,462,499,505,526,540,552,567,578,587,
+599,611,631,651,674,707,749,782,795,819,845,864,891,906,913,920,933,958,975,974,
+978,998,1019,1044,1068,1080,1089,1110,1122,1134,1143,1146,1155,1168,1180,1188,1194,1203,1216,1228,
+1235,1251,1260,1269,1277,1275,1277,1282,1294,1307,1323,1335,1333,1345,1361,1386,1417,1441,1452,1461,
+1472,1481,1487,1478,1486,1499,1493,1484,1479,1474,1467,1478,1483,1484,1490,1503,1510,1507,1507,1511,
+1517,1532,1533,1538,1534,1530,1487,1413,1332,1282,1240,1209,1181,1162,1149,1136,1137,1111,1086,1081,
+1087,1100,1119,1141,1159,1187,1210,1237,1266,1290,1295,1285,1270,1263,1249,1231,1219,1196,1166,1117,
+1029,948,886,841,811,782,750,715,678,651,646,660,683,707,753,813,860,893,905,893,
+871,839,797,747,701,665,643,639,649,675,741,825,967,1073,1054,1025,1022,947,885,795,
+737,684,644,621,641,690,679,629,542,501,463,423,400,364,311,256,208,196,212,217,
+195,150,123,72,22,-26,-66,-97,-126,-117,-153,-200,-259,-334,-385,-408,-423,-427,-441,-474,
+-551,-619,-706,-767,-833,-923,-989,-1045,-1085,-1123,-1160,-1198,-1234,-1262,-1284,-1303,-1321,-1342,-1366,-1412,
+-1464,-1518,-1574,-1641,-1678,-1697,-1717,-1742,-1759,-1789,-1830,-1864,-1888,-1904,-1918,-1936,-1956,-1971,-1976,-1966,
+-1971,-1998,-2037,-2082,-2129,-2185,-2244,-2310,-2389,-2486,-2560,-2624,-2677,-2729,-2783,-2827,-2860,-2888,-2920,-2951,
+-2980,-3008,-3040,-3074,-3104,-3130,-3159,-3187,-3214,-3240,-3262,-3280,-3301,-3328,-3362,-3386,-3399,-3405,-3396,-3391,
+-3404,-3431,-3452,-3487,-3513,-3527,-3544,-3562,-3582,-3607,-3639,-3678,-3713,-3749,-3785,-3822,-3860,-3896,-3933,-3963,
+-3991,-4020,-4048,-4077,-4105,-4133,-4160,-4182,-4209,-4241,-4272,-4304,-4343,-4382,-4420,-4460,-4498,-4539,-4578,-4616,
+-4648,-4676,-4705,-4737,-4772,-4812,-4848,-4880,-4901,-4921,-4929,-4925,-4928,-4920,-4909,-4899,-4887,-4878,-4860,-4846,
+-4833,-4819,-4806,-4788,-4770,-4753,-4741,-4733,-4731,-4728,-4725,-4730,-4734,-4738,-4740,-4735,-4735,-4745,-4748,-4740,
+-4723,-4701,-4675,-4651,-4618,-4578,-4548,-4526,-4507,-4490,-4474,-4467,-4468,-4473,-4479,-4472,-4444,-4400,-4375,-4357,
+-4337,-4329,-4335,-4346,-4340,-4301,-4239,-4168,-4094,-4014,-3938,-3864,-3794,-3722,-3645,-3570,-3511,-3465,-3424,-3380,
+-3341,-3305,-3265,-3221,-3169,-3117,-3071,-3026,-2983,-2942,-2897,-2844,-2792,-2752,-2719,-2701,-2691,-2657,-2616,-2585,
+-2565,-2551,-2545,-2536,-2519,-2483,-2448,-2391,-2325,-2267,-2204,-2140,-2079,-2016,-1944,-1866,-1784,-1699,-1607,-1511,
+-1417,-1330,-1239,-1132,-1012,-904,-789,-707,-621,-548,-502,-447,-370,-290,-199,-103,-23,55,139,228,
+318,405,467,488,480,480,488,513,552,607,669,738,807,879,942,1004,1070,1130,1194,1263,
+1329,1368,1413,1462,1516,1570,1635,1717,1811,1903,1980,2041,2112,2179,2230,2283,2341,2404,2466,2519,
+2578,2640,2695,2741,2796,2848,2915,2992,3074,3150,3222,3294,3368,3444,3522,3596,3667,3739,3794,3830,
+3857,3887,3923,3966,4015,4075,4153,4239,4323,4404,4465,4521,4569,4600,4623,4650,4680,4711,4735,4751,
+4765,4782,4810,4845,4882,4917,4952,4987,5023,5056,5090,5123,5158,5198,5237,5280,5322,5357,5399,5441,
+5492,5544,5592,5636,5690,5741,5784,5826,5868,5917,5965,6010,6055,6095,6147,6193,6237,6270,6298,6322,
+6341,6361,6379,6393,6404,6417,6428,6420,6408,6396,6388,6380,6380,6386,6382,6370,6353,6343,6331,6319,
+6311,6294,6275,6261,6247,6232,6218,6210,6202,6184,6169,6152,6133,6113,6099,6087,6078,6074,6075,6076,
+6077,6074,6069,6058,6045,6027,6014,6008,6008,6024,6047,6068,6071,6072,6072,6066,6049,6028,6010,5999,
+5992,5978,5962,5948,5925,5907,5897,5878,5846,5800,5740,5673,5627,5607,5605,5602,5580,5549,5518,5504,
+5512,5566,5685,5794,5791,5683,5586,5525,5512,5512,5501,5480,5468,5490,5545,5598,5610,5600,5610,5619,
+5611,5590,5561,5532,5504,5466,5429,5411,5383,5366,5342,5302,5253,5199,5146,5089,5039,5000,4944,4874,
+4816,4777,4742,4706,4675,4663,4653,4655,4656,4653,4641,4618,4589,4558,4535,4512,4480,4450,4432,4419,
+4408,4400,4399,4410,4435,4444,4433,4419,4399,4409,4464,4516,4552,4553,4544,4488,4441,4387,4320,4256,
+4215,4162,4127,4113,4076,4028,3970,3914,3850,3774,3703,3641,3589,3525,3457,3405,3347,3295,3239,3178,
+3128,3087,3052,3018,2989,2951,2907,2863,2823,2781,2741,2698,2650,2599,2546,2496,2442,2386,2323,2263,
+2210,2159,2113,2071,2027,1982,1947,1915,1884,1869,1874,1897,1928,1961,1988,2010,2026,2023,2024,2030,
+2019,2001,1981,1971,1957,1937,1902,1864,1835,1823,1809,1793,1775,1753,1731,1710,1691,1673,1655,1635,
+1610,1585,1566,1556,1543,1525,1505,1493,1489,1489,1493,1499,1505,1518,1544,1582,1617,1652,1686,1705,
+1715,1720,1717,1694,1660,1629,1598,1565,1535,1511,1491,1474,1459,1442,1424,1405,1385,1373,1372,1377,
+1382,1380,1367,1345,1316,1288,1282,1293,1301,1301,1299,1295,1281,1261,1231,1201,1173,1141,1101,1066,
+1040,1012,985,960,935,913,898,884,877,870,852,827,801,779,761,753,746,740,725,709,
+683,656,635,615,594,572,543,513,483,462,441,416,392,368,335,300,261,229,200,179,
+160,132,102,75,49,25,1,-30,-68,-101,-134,-169,-202,-227,-244,-248,-249,-275,-284,-282,
+-297,-310,-294,-302,-370,-457,-555,-667,-774,-841,-893,-953,-1009,-1051,-1096,-1146,-1190,-1236,-1293,-1356,
+-1406,-1433,-1455,-1492,-1532,-1562,-1589,-1617,-1642,-1669,-1708,-1748,-1786,-1822,-1852,-1885,-1925,-1966,-1998,-2026,
+-2056,-2090,-2126,-2159,-2188,-2221,-2257,-2289,-2320,-2355,-2395,-2435,-2475,-2517,-2557,-2591,-2620,-2649,-2681,-2707,
+-2725,-2741,-2753,-2770,-2797,-2826,-2845,-2855,-2869,-2888,-2906,-2919,-2927,-2939,-2967,-3003,-3035,-3062,-3076,-3078,
+-3079,-3091,-3110,-3132,-3158,-3181,-3192,-3197,-3208,-3220,-3229,-3237,-3249,-3265,-3289,-3313,-3332,-3350,-3365,-3371,
+-3374,-3378,-3380,-3380,-3384,-3394,-3406,-3413,-3415,-3416,-3420,-3423,-3421,-3423,-3433,-3445,-3461,-3480,-3497,-3513,
+-3539,-3573,-3607,-3638,-3664,-3681,-3686,-3678,-3651,-3609,-3563,-3535,-3522,-3501,-3473,-3433,-3404,-3400,-3392,-3374,
+-3350,-3334,-3329,-3334,-3350,-3358,-3369,-3380,-3400,-3423,-3444,-3467,-3492,-3504,-3513,-3517,-3531,-3551,-3571,-3589,
+-3600,-3606,-3608,-3608,-3603,-3603,-3602,-3598,-3589,-3580,-3566,-3551,-3532,-3509,-3480,-3443,-3405,-3360,-3313,-3268,
+-3229,-3195,-3175,-3155,-3147,-3145,-3154,-3156,-3147,-3146,-3146,-3142,-3133,-3116,-3090,-3073,-3065,-3053,-3035,-3011,
+-2988,-2969,-2940,-2897,-2864,-2844,-2823,-2808,-2798,-2793,-2795,-2787,-2762,-2742,-2724,-2691,-2652,-2590,-2508,-2444,
+-2398,-2327,-2246,-2159,-2094,-2037,-1986,-1962,-1948,-1941,-1930,-1898,-1910,-1918,-1916,-1900,-1884,-1863,-1852,-1839,
+-1811,-1769,-1714,-1669,-1619,-1567,-1515,-1465,-1412,-1361,-1309,-1245,-1190,-1106,-1016,-935,-859,-794,-728,-691,
+-656,-612,-569,-528,-490,-459,-428,-381,-340,-292,-249,-196,-144,-94,-46,-9,28,50,71,102,
+136,171,196,208,220,244,268,297,334,377,426,467,499,537,577,617,661,693,732,758,
+781,801,809,818,834,853,868,893,924,963,999,1043,1081,1089,1110,1120,1143,1163,1180,1208,
+1247,1272,1282,1297,1311,1316,1303,1274,1257,1261,1269,1277,1270,1269,1266,1253,1239,1244,1253,1270,
+1289,1295,1303,1317,1335,1363,1378,1385,1408,1426,1432,1430,1431,1443,1463,1479,1496,1523,1547,1563,
+1578,1585,1586,1598,1628,1652,1665,1684,1700,1735,1782,1826,1822,1800,1769,1761,1771,1735,1717,1712,
+1715,1713,1705,1703,1694,1681,1669,1659,1643,1624,1603,1576,1547,1544,1551,1564,1567,1571,1575,1585,
+1595,1595,1604,1642,1667,1682,1683,1686,1728,1772,1778,1767,1740,1673,1605,1574,1559,1552,1535,1499,
+1474,1458,1501,1504,1406,1276,1156,1088,1054,1001,924,844,797,760,702,662,647,626,601,574,
+558,562,590,604,643,715,687,645,588,502,425,338,239,154,91,41,21,24,38,49,
+54,52,42,36,30,28,28,27,26,26,29,32,32,29,26,23,18,24,42,55,
+57,56,72,94,106,96,78,62,53,71,154,284,404,477,525,561,584,593,605,622,
+625,632,644,663,681,693,715,735,767,800,831,849,865,883,903,931,942,958,975,986,
+994,996,1005,1030,1054,1068,1077,1092,1109,1135,1149,1160,1171,1178,1191,1209,1228,1236,1237,1237,
+1242,1253,1268,1287,1298,1295,1299,1310,1320,1335,1353,1356,1359,1371,1390,1418,1443,1464,1475,1498,
+1512,1526,1508,1505,1493,1497,1497,1497,1497,1493,1485,1477,1471,1472,1471,1474,1487,1495,1505,1507,
+1517,1531,1537,1546,1555,1554,1534,1491,1408,1367,1309,1270,1215,1170,1155,1149,1127,1073,1029,1010,
+1003,1013,1040,1082,1117,1139,1169,1203,1242,1276,1290,1285,1271,1243,1203,1159,1103,1042,982,933,
+873,775,703,665,651,647,647,643,635,622,606,599,596,602,615,644,681,705,749,803,
+836,857,856,831,789,737,681,630,589,559,535,542,592,740,1001,1146,1043,889,807,714,
+644,639,653,620,536,554,583,633,638,579,516,435,366,349,338,309,273,223,180,171,
+185,179,142,110,66,23,-35,-70,-76,-81,-109,-138,-190,-245,-303,-362,-395,-398,-398,-404,
+-430,-473,-546,-600,-691,-785,-859,-939,-995,-1044,-1073,-1128,-1184,-1229,-1277,-1318,-1343,-1361,-1378,-1397,
+-1434,-1487,-1542,-1602,-1663,-1703,-1727,-1749,-1782,-1816,-1845,-1871,-1893,-1908,-1916,-1929,-1942,-1956,-1969,-1970,
+-1964,-1977,-1997,-2027,-2062,-2108,-2170,-2238,-2302,-2385,-2482,-2557,-2618,-2668,-2716,-2763,-2808,-2847,-2878,-2909,
+-2940,-2970,-3001,-3039,-3071,-3096,-3122,-3151,-3177,-3204,-3232,-3259,-3284,-3303,-3313,-3317,-3321,-3322,-3328,-3351,
+-3371,-3404,-3449,-3466,-3473,-3486,-3499,-3513,-3529,-3540,-3547,-3564,-3589,-3622,-3662,-3705,-3749,-3798,-3841,-3876,
+-3909,-3938,-3968,-3997,-4026,-4056,-4084,-4115,-4142,-4174,-4210,-4243,-4276,-4317,-4357,-4397,-4436,-4477,-4511,-4540,
+-4576,-4619,-4666,-4702,-4737,-4771,-4804,-4833,-4864,-4881,-4889,-4899,-4899,-4897,-4894,-4887,-4878,-4868,-4861,-4857,
+-4852,-4848,-4840,-4831,-4823,-4814,-4804,-4794,-4791,-4791,-4786,-4784,-4780,-4773,-4767,-4764,-4764,-4767,-4774,-4771,
+-4761,-4743,-4718,-4686,-4655,-4626,-4599,-4580,-4570,-4557,-4543,-4535,-4534,-4535,-4533,-4532,-4518,-4495,-4451,-4408,
+-4375,-4346,-4344,-4360,-4377,-4367,-4329,-4274,-4205,-4126,-4045,-3963,-3890,-3819,-3751,-3683,-3615,-3553,-3501,-3461,
+-3427,-3392,-3355,-3315,-3275,-3237,-3192,-3139,-3093,-3055,-3018,-2977,-2928,-2878,-2828,-2788,-2756,-2740,-2713,-2677,
+-2656,-2643,-2637,-2636,-2632,-2614,-2574,-2519,-2456,-2379,-2303,-2233,-2166,-2101,-2034,-1964,-1892,-1816,-1732,-1641,
+-1553,-1475,-1385,-1296,-1195,-1081,-972,-866,-766,-673,-614,-561,-527,-471,-394,-306,-204,-104,-16,69,
+166,272,377,459,508,506,492,490,505,533,566,613,669,737,809,883,957,1023,1080,1145,
+1217,1289,1336,1388,1443,1509,1571,1628,1686,1765,1851,1935,2024,2103,2158,2205,2257,2316,2376,2437,
+2495,2558,2620,2678,2739,2804,2880,2959,3038,3100,3167,3240,3309,3375,3445,3507,3571,3633,3693,3749,
+3784,3814,3842,3870,3920,3989,4074,4165,4253,4335,4407,4468,4515,4545,4573,4602,4629,4658,4687,4710,
+4732,4754,4783,4818,4854,4888,4924,4964,4999,5033,5071,5109,5147,5185,5221,5265,5310,5357,5408,5451,
+5501,5555,5598,5640,5681,5737,5789,5829,5868,5904,5954,6005,6057,6092,6137,6180,6227,6262,6287,6309,
+6326,6344,6364,6378,6397,6412,6409,6400,6383,6373,6362,6361,6365,6366,6361,6353,6342,6328,6328,6323,
+6308,6285,6265,6259,6246,6227,6216,6203,6186,6166,6150,6137,6120,6109,6100,6094,6088,6085,6082,6081,
+6081,6079,6072,6058,6046,6034,6030,6037,6054,6076,6090,6099,6101,6095,6064,6031,6001,5965,5933,5909,
+5885,5867,5855,5848,5842,5843,5866,5906,5896,5873,5852,5762,5656,5621,5616,5613,5600,5573,5545,5525,
+5512,5512,5536,5579,5618,5611,5572,5537,5528,5534,5538,5525,5510,5517,5562,5645,5683,5677,5670,5657,
+5631,5594,5575,5553,5527,5498,5462,5426,5389,5365,5348,5321,5286,5241,5190,5135,5086,5051,4994,4927,
+4866,4812,4764,4722,4689,4663,4683,4663,4656,4656,4649,4635,4603,4579,4557,4541,4514,4488,4470,4451,
+4437,4422,4411,4399,4393,4402,4401,4392,4397,4405,4428,4462,4495,4491,4491,4477,4423,4368,4325,4263,
+4207,4176,4153,4119,4075,4016,3970,3926,3870,3809,3735,3664,3610,3564,3515,3457,3395,3350,3313,3262,
+3208,3157,3114,3086,3067,3039,3002,2956,2910,2867,2831,2794,2748,2695,2641,2586,2526,2464,2396,2314,
+2246,2194,2146,2109,2076,2044,2018,1994,1969,1946,1930,1927,1935,1952,1980,2011,2034,2046,2049,2047,
+2048,2046,2029,2021,2013,1993,1963,1937,1918,1895,1880,1867,1848,1824,1796,1771,1754,1736,1710,1676,
+1641,1607,1568,1537,1527,1518,1499,1481,1471,1467,1469,1474,1483,1498,1524,1564,1602,1632,1657,1675,
+1696,1712,1712,1695,1663,1633,1615,1599,1575,1553,1533,1511,1488,1465,1446,1429,1412,1394,1383,1377,
+1378,1378,1376,1371,1362,1343,1318,1307,1310,1303,1285,1270,1259,1247,1230,1207,1173,1135,1095,1063,
+1043,1026,1004,983,967,952,932,917,903,891,871,839,807,781,762,753,749,739,726,713,
+695,672,642,614,592,577,559,527,497,471,447,421,394,370,346,317,282,240,201,169,
+147,123,97,72,48,23,2,-19,-46,-81,-118,-149,-175,-199,-221,-239,-247,-262,-284,-293,
+-296,-316,-337,-335,-330,-383,-469,-574,-686,-777,-833,-885,-946,-999,-1047,-1104,-1164,-1214,-1256,-1294,
+-1339,-1387,-1423,-1451,-1491,-1539,-1579,-1612,-1643,-1672,-1706,-1745,-1784,-1823,-1866,-1909,-1952,-1997,-2033,-2058,
+-2080,-2104,-2133,-2167,-2198,-2224,-2255,-2288,-2319,-2350,-2380,-2412,-2446,-2482,-2524,-2568,-2604,-2634,-2673,-2717,
+-2750,-2767,-2776,-2781,-2794,-2815,-2838,-2854,-2871,-2889,-2904,-2919,-2931,-2939,-2956,-2989,-3029,-3066,-3091,-3108,
+-3116,-3120,-3129,-3144,-3162,-3188,-3217,-3236,-3246,-3254,-3266,-3277,-3286,-3299,-3316,-3335,-3354,-3375,-3395,-3408,
+-3417,-3429,-3436,-3436,-3437,-3443,-3452,-3460,-3465,-3466,-3468,-3470,-3465,-3459,-3465,-3481,-3491,-3500,-3513,-3525,
+-3537,-3549,-3562,-3582,-3612,-3647,-3677,-3703,-3720,-3720,-3700,-3666,-3629,-3608,-3597,-3575,-3542,-3507,-3477,-3452,
+-3441,-3435,-3429,-3416,-3417,-3422,-3434,-3441,-3454,-3460,-3478,-3499,-3525,-3545,-3555,-3569,-3576,-3587,-3609,-3635,
+-3651,-3660,-3666,-3666,-3663,-3656,-3643,-3631,-3631,-3624,-3614,-3597,-3581,-3565,-3544,-3517,-3488,-3444,-3390,-3335,
+-3286,-3239,-3207,-3182,-3171,-3174,-3184,-3191,-3201,-3205,-3195,-3185,-3179,-3168,-3152,-3128,-3109,-3092,-3079,-3073,
+-3057,-3025,-2990,-2962,-2935,-2902,-2876,-2847,-2820,-2799,-2780,-2759,-2732,-2704,-2671,-2627,-2590,-2538,-2500,-2419,
+-2341,-2272,-2216,-2155,-2097,-2042,-1986,-1940,-1906,-1895,-1883,-1865,-1865,-1854,-1845,-1864,-1874,-1861,-1858,-1835,
+-1794,-1748,-1700,-1643,-1603,-1571,-1521,-1477,-1436,-1380,-1325,-1271,-1222,-1150,-1067,-978,-887,-792,-721,-697,
+-662,-618,-571,-530,-490,-448,-404,-365,-328,-278,-208,-160,-113,-77,-49,-10,39,78,106,129,
+153,184,221,250,271,290,314,346,383,426,481,533,577,614,643,681,719,751,777,803,
+832,853,852,852,879,903,928,953,975,1009,1038,1062,1099,1140,1149,1144,1164,1192,1199,1228,
+1251,1281,1309,1333,1338,1344,1359,1353,1321,1300,1318,1326,1306,1293,1277,1264,1253,1258,1260,1251,
+1256,1273,1287,1295,1308,1328,1349,1362,1379,1380,1390,1404,1419,1453,1470,1483,1494,1509,1529,1538,
+1544,1549,1560,1568,1582,1596,1616,1631,1647,1673,1712,1732,1743,1747,1744,1732,1714,1704,1701,1710,
+1706,1701,1688,1687,1685,1675,1669,1669,1678,1661,1629,1610,1607,1617,1624,1635,1647,1646,1651,1636,
+1634,1658,1669,1690,1691,1685,1689,1703,1714,1752,1800,1821,1791,1754,1710,1640,1609,1598,1581,1545,
+1515,1514,1501,1457,1369,1200,1035,931,879,849,821,798,778,759,742,725,709,695,678,652,
+621,595,593,601,603,650,720,702,653,626,562,487,399,296,196,115,70,59,68,77,
+85,86,78,69,68,74,78,78,72,66,57,48,36,23,13,10,16,30,50,63,
+70,69,72,92,112,117,109,89,67,51,47,76,165,294,397,451,522,586,608,624,
+633,649,669,676,688,692,695,707,735,777,810,828,843,866,888,908,926,942,959,976,
+991,1005,1014,1019,1028,1040,1054,1064,1079,1103,1120,1146,1163,1166,1179,1196,1220,1238,1247,1248,
+1249,1260,1273,1287,1302,1312,1311,1323,1338,1348,1358,1370,1385,1402,1424,1443,1460,1480,1492,1502,
+1517,1534,1536,1527,1517,1510,1507,1509,1513,1511,1502,1492,1482,1470,1466,1469,1477,1489,1502,1510,
+1527,1529,1542,1545,1543,1551,1565,1539,1495,1433,1404,1390,1319,1217,1170,1158,1145,1085,1033,995,
+975,975,988,1020,1067,1118,1159,1194,1229,1259,1283,1290,1279,1249,1187,1095,1034,982,923,853,
+765,682,625,601,601,615,630,641,646,647,643,635,624,615,614,616,612,597,581,566,
+577,620,693,768,794,779,757,722,667,616,579,538,510,515,566,706,919,1000,904,783,
+645,565,556,565,533,461,438,498,530,548,495,401,335,300,295,261,243,211,195,192,
+180,162,150,116,94,48,6,-9,-22,-46,-74,-110,-150,-178,-237,-280,-277,-346,-361,-376,
+-377,-390,-437,-516,-562,-634,-703,-739,-829,-936,-1001,-1083,-1151,-1202,-1252,-1296,-1332,-1363,-1388,-1414,
+-1441,-1480,-1534,-1590,-1640,-1678,-1710,-1741,-1772,-1798,-1823,-1852,-1872,-1889,-1912,-1933,-1955,-1981,-2002,-2015,
+-2030,-2044,-2057,-2062,-2072,-2107,-2147,-2212,-2294,-2369,-2438,-2499,-2551,-2597,-2642,-2690,-2736,-2783,-2822,-2856,
+-2890,-2921,-2953,-2983,-3010,-3035,-3061,-3086,-3109,-3134,-3179,-3219,-3237,-3242,-3233,-3231,-3244,-3264,-3285,-3297,
+-3311,-3346,-3396,-3421,-3431,-3439,-3453,-3468,-3476,-3482,-3487,-3496,-3510,-3540,-3573,-3608,-3648,-3693,-3739,-3779,
+-3812,-3845,-3875,-3902,-3929,-3959,-3996,-4027,-4060,-4092,-4127,-4166,-4207,-4243,-4282,-4323,-4359,-4394,-4431,-4469,
+-4499,-4536,-4586,-4633,-4672,-4705,-4732,-4760,-4785,-4803,-4819,-4832,-4843,-4851,-4851,-4850,-4849,-4847,-4847,-4846,
+-4847,-4844,-4842,-4842,-4842,-4842,-4835,-4831,-4822,-4820,-4818,-4820,-4817,-4811,-4803,-4793,-4787,-4788,-4792,-4795,
+-4792,-4781,-4757,-4730,-4698,-4672,-4652,-4634,-4625,-4613,-4600,-4589,-4583,-4576,-4571,-4572,-4562,-4534,-4510,-4481,
+-4434,-4369,-4337,-4338,-4356,-4379,-4371,-4337,-4291,-4228,-4155,-4079,-4009,-3943,-3883,-3820,-3754,-3689,-3624,-3567,
+-3521,-3482,-3444,-3406,-3360,-3307,-3263,-3229,-3184,-3134,-3092,-3066,-3040,-3000,-2947,-2900,-2861,-2826,-2794,-2773,
+-2747,-2724,-2710,-2711,-2716,-2717,-2702,-2657,-2586,-2517,-2435,-2345,-2260,-2177,-2111,-2049,-1980,-1912,-1841,-1760,
+-1680,-1598,-1517,-1430,-1340,-1240,-1138,-1036,-933,-843,-736,-652,-604,-586,-548,-512,-431,-340,-240,-138,
+-35,77,200,330,433,498,503,495,505,528,552,574,600,638,691,757,830,903,974,1044,
+1111,1179,1252,1322,1378,1438,1505,1558,1607,1674,1741,1813,1888,1973,2060,2133,2190,2252,2310,2367,
+2431,2486,2548,2612,2673,2750,2826,2897,2968,3031,3093,3149,3213,3277,3348,3418,3483,3542,3592,3635,
+3679,3718,3755,3795,3858,3940,4031,4128,4217,4291,4360,4414,4455,4489,4516,4545,4575,4598,4629,4657,
+4686,4716,4752,4788,4824,4857,4896,4938,4977,5012,5052,5092,5135,5169,5204,5241,5281,5328,5377,5427,
+5482,5530,5580,5627,5664,5714,5759,5797,5839,5883,5933,5988,6034,6071,6123,6175,6220,6254,6279,6295,
+6309,6316,6341,6370,6388,6394,6386,6373,6360,6355,6348,6358,6352,6347,6350,6347,6337,6322,6299,6281,
+6259,6244,6227,6210,6195,6182,6177,6175,6167,6157,6144,6127,6114,6106,6102,6102,6100,6102,6098,6096,
+6095,6087,6076,6064,6051,6045,6050,6074,6099,6114,6122,6116,6111,6096,6072,6026,5980,5944,5917,5893,
+5875,5862,5858,5855,5848,5840,5841,5858,5870,5849,5811,5757,5685,5628,5618,5618,5611,5604,5597,5585,
+5567,5546,5529,5518,5521,5520,5519,5530,5546,5571,5588,5594,5593,5596,5620,5667,5699,5709,5706,5687,
+5674,5635,5592,5562,5538,5512,5482,5446,5407,5375,5355,5332,5293,5254,5209,5156,5111,5079,5035,4986,
+4936,4893,4852,4812,4767,4722,4683,4720,4691,4671,4659,4646,4623,4592,4573,4562,4545,4520,4487,4465,
+4452,4445,4427,4397,4370,4353,4349,4347,4339,4333,4337,4354,4397,4399,4387,4372,4354,4313,4271,4233,
+4181,4141,4112,4077,4023,3965,3918,3886,3855,3814,3757,3699,3636,3585,3550,3511,3461,3421,3382,3346,
+3293,3243,3193,3141,3100,3059,3040,3003,2973,2936,2899,2863,2825,2784,2738,2687,2626,2561,2497,2414,
+2323,2252,2206,2164,2126,2105,2092,2078,2064,2049,2018,1995,1981,1980,1990,2007,2030,2040,2038,2039,
+2042,2046,2048,2046,2039,2026,2011,2001,1996,1982,1947,1926,1918,1906,1883,1851,1817,1787,1760,1735,
+1702,1667,1633,1594,1556,1532,1512,1492,1482,1478,1475,1474,1480,1492,1513,1542,1569,1595,1623,1645,
+1649,1648,1654,1661,1651,1630,1610,1595,1585,1571,1552,1533,1511,1484,1449,1417,1392,1370,1353,1347,
+1345,1341,1338,1337,1337,1335,1324,1301,1280,1266,1259,1250,1230,1205,1183,1159,1138,1115,1090,1064,
+1044,1025,1009,991,977,967,951,933,913,893,873,848,826,809,792,773,763,753,738,717,
+694,667,642,620,599,581,563,541,513,491,472,437,396,362,335,315,298,265,218,176,
+148,117,86,53,24,-2,-20,-36,-59,-82,-107,-140,-168,-187,-200,-223,-246,-272,-285,-305,
+-316,-321,-341,-372,-381,-378,-404,-476,-582,-686,-763,-824,-889,-959,-1019,-1071,-1125,-1179,-1232,-1280,
+-1316,-1349,-1390,-1431,-1467,-1505,-1545,-1585,-1627,-1669,-1709,-1747,-1785,-1824,-1867,-1914,-1962,-2010,-2055,-2087,
+-2110,-2132,-2154,-2182,-2212,-2241,-2268,-2298,-2331,-2363,-2390,-2412,-2435,-2462,-2488,-2518,-2560,-2606,-2651,-2693,
+-2732,-2765,-2789,-2806,-2816,-2828,-2842,-2856,-2871,-2888,-2903,-2920,-2939,-2951,-2962,-2981,-3010,-3046,-3080,-3104,
+-3121,-3136,-3150,-3157,-3163,-3179,-3204,-3241,-3275,-3296,-3304,-3307,-3311,-3322,-3340,-3360,-3378,-3395,-3415,-3434,
+-3448,-3463,-3476,-3479,-3477,-3480,-3485,-3488,-3491,-3496,-3494,-3487,-3484,-3479,-3478,-3485,-3497,-3511,-3532,-3559,
+-3578,-3586,-3597,-3607,-3615,-3630,-3654,-3685,-3717,-3745,-3760,-3762,-3759,-3749,-3724,-3690,-3658,-3632,-3606,-3565,
+-3536,-3530,-3520,-3514,-3517,-3519,-3528,-3536,-3546,-3560,-3572,-3583,-3613,-3642,-3671,-3689,-3690,-3693,-3697,-3709,
+-3718,-3728,-3734,-3741,-3751,-3745,-3730,-3699,-3671,-3676,-3662,-3646,-3626,-3609,-3599,-3582,-3550,-3508,-3468,-3415,
+-3363,-3317,-3271,-3231,-3208,-3214,-3218,-3224,-3245,-3259,-3260,-3254,-3247,-3237,-3219,-3197,-3181,-3167,-3143,-3122,
+-3112,-3104,-3080,-3040,-3002,-2968,-2938,-2889,-2850,-2814,-2779,-2750,-2713,-2684,-2647,-2578,-2504,-2462,-2428,-2368,
+-2279,-2202,-2149,-2094,-2062,-2008,-1954,-1918,-1890,-1862,-1850,-1829,-1803,-1782,-1746,-1730,-1748,-1780,-1777,-1791,
+-1771,-1727,-1666,-1591,-1540,-1513,-1490,-1455,-1404,-1357,-1311,-1263,-1218,-1163,-1085,-1006,-924,-842,-755,-698,
+-650,-621,-589,-545,-491,-427,-361,-299,-259,-219,-169,-87,-24,5,49,64,92,138,182,213,
+235,260,277,297,323,356,400,450,502,574,613,646,667,711,749,773,807,834,844,857,
+874,907,925,932,928,938,957,980,1015,1052,1067,1098,1134,1162,1190,1199,1190,1218,1259,1268,
+1305,1329,1339,1354,1373,1382,1376,1367,1356,1340,1340,1332,1324,1319,1319,1304,1285,1273,1282,1285,
+1282,1286,1303,1312,1325,1335,1353,1373,1385,1394,1398,1408,1438,1480,1497,1492,1494,1496,1499,1510,
+1522,1537,1549,1553,1562,1576,1591,1599,1610,1629,1646,1659,1664,1666,1663,1663,1657,1654,1658,1668,
+1672,1669,1669,1678,1684,1687,1686,1654,1634,1625,1621,1619,1639,1661,1677,1693,1708,1721,1727,1714,
+1702,1704,1719,1721,1715,1710,1702,1713,1730,1760,1809,1865,1836,1803,1763,1724,1685,1656,1619,1568,
+1533,1518,1490,1411,1291,1161,1036,961,910,877,858,844,835,823,811,802,785,769,755,730,
+700,678,640,601,588,610,683,748,702,663,645,591,531,460,368,259,162,116,115,128,
+137,135,120,101,91,94,100,107,108,101,89,71,55,44,33,28,38,53,64,71,
+75,74,75,86,105,122,129,124,108,90,72,59,66,102,182,300,337,326,379,445,
+482,506,537,605,668,702,693,642,644,708,775,822,847,855,867,890,918,940,956,968,
+983,996,1023,1034,1047,1049,1051,1054,1059,1074,1099,1118,1136,1152,1173,1183,1199,1212,1228,1239,
+1253,1268,1276,1289,1308,1318,1327,1333,1348,1362,1370,1383,1399,1415,1435,1462,1487,1505,1513,1520,
+1534,1548,1548,1547,1543,1539,1537,1533,1532,1527,1518,1502,1487,1477,1479,1479,1481,1491,1503,1514,
+1525,1544,1551,1539,1539,1531,1500,1504,1486,1465,1416,1333,1278,1230,1202,1187,1173,1125,1073,1037,
+1009,997,1007,1028,1067,1123,1179,1228,1261,1279,1300,1316,1317,1286,1201,1122,1045,975,909,824,
+702,616,572,559,567,588,612,634,654,667,675,674,666,655,642,631,621,607,581,548,
+512,481,458,450,459,482,531,609,681,695,668,624,587,549,505,479,489,546,688,763,
+658,590,522,458,448,454,426,366,406,457,405,313,275,296,311,290,301,260,237,229,
+216,225,194,135,83,76,36,-9,3,4,-27,-58,-100,-121,-156,-207,-243,-270,-287,-356,
+-397,-397,-387,-418,-467,-495,-545,-605,-648,-732,-837,-941,-1046,-1112,-1173,-1237,-1288,-1322,-1364,-1406,
+-1437,-1468,-1505,-1548,-1592,-1627,-1652,-1673,-1696,-1725,-1762,-1798,-1828,-1858,-1889,-1921,-1954,-1989,-2016,-2034,
+-2054,-2080,-2103,-2125,-2149,-2179,-2211,-2249,-2301,-2353,-2401,-2449,-2489,-2526,-2565,-2608,-2648,-2682,-2719,-2762,
+-2805,-2852,-2893,-2926,-2952,-2969,-2989,-3016,-3048,-3071,-3108,-3144,-3156,-3161,-3168,-3175,-3194,-3222,-3248,-3268,
+-3283,-3304,-3335,-3361,-3372,-3379,-3392,-3403,-3411,-3415,-3422,-3435,-3456,-3485,-3517,-3544,-3573,-3608,-3647,-3682,
+-3713,-3745,-3776,-3803,-3830,-3862,-3897,-3933,-3965,-3995,-4030,-4068,-4109,-4151,-4196,-4239,-4275,-4309,-4341,-4374,
+-4409,-4445,-4479,-4517,-4556,-4592,-4626,-4655,-4683,-4711,-4733,-4753,-4768,-4780,-4791,-4798,-4804,-4810,-4817,-4822,
+-4825,-4824,-4824,-4825,-4826,-4831,-4831,-4834,-4833,-4831,-4833,-4835,-4837,-4838,-4833,-4828,-4822,-4813,-4807,-4802,
+-4800,-4799,-4791,-4776,-4757,-4730,-4709,-4692,-4673,-4656,-4645,-4635,-4627,-4619,-4612,-4609,-4602,-4585,-4544,-4506,
+-4477,-4435,-4381,-4368,-4362,-4370,-4379,-4367,-4337,-4291,-4241,-4186,-4125,-4067,-4012,-3954,-3895,-3829,-3763,-3703,
+-3646,-3594,-3545,-3501,-3460,-3419,-3362,-3308,-3270,-3239,-3198,-3158,-3124,-3090,-3058,-3012,-2962,-2922,-2890,-2852,
+-2808,-2782,-2769,-2759,-2761,-2767,-2769,-2759,-2709,-2630,-2550,-2474,-2381,-2295,-2218,-2144,-2074,-2003,-1931,-1866,
+-1793,-1709,-1620,-1541,-1453,-1364,-1271,-1175,-1075,-988,-902,-805,-715,-695,-694,-680,-639,-582,-500,-408,
+-313,-183,-53,79,229,366,461,508,509,511,533,558,583,611,639,678,729,786,852,920,
+991,1060,1131,1204,1275,1348,1411,1470,1529,1595,1669,1728,1787,1847,1919,2002,2092,2173,2238,2300,
+2353,2408,2472,2526,2581,2650,2720,2791,2859,2925,2989,3050,3113,3179,3243,3314,3387,3461,3525,3573,
+3610,3657,3706,3761,3829,3906,3994,4083,4166,4232,4281,4321,4359,4395,4426,4462,4501,4534,4568,4600,
+4632,4666,4705,4747,4785,4821,4859,4899,4942,4982,5026,5063,5102,5146,5187,5231,5291,5324,5350,5386,
+5440,5496,5541,5577,5626,5685,5728,5774,5823,5871,5922,5974,6014,6066,6111,6158,6202,6236,6265,6275,
+6280,6302,6338,6362,6374,6367,6357,6344,6333,6329,6338,6339,6333,6328,6322,6320,6312,6303,6297,6283,
+6272,6258,6241,6232,6216,6204,6181,6165,6163,6150,6136,6122,6113,6106,6105,6107,6114,6114,6111,6109,
+6106,6097,6083,6069,6059,6059,6066,6086,6117,6126,6131,6126,6114,6109,6090,6056,6018,5979,5945,5918,
+5910,5932,5916,5898,5897,5898,5897,5889,5881,5859,5820,5761,5703,5662,5625,5609,5608,5604,5603,5604,
+5604,5592,5569,5543,5533,5526,5527,5540,5582,5658,5711,5720,5697,5677,5671,5678,5692,5706,5713,5708,
+5688,5685,5668,5623,5575,5540,5524,5521,5494,5455,5416,5385,5337,5274,5215,5142,5072,5026,4988,4947,
+4919,4898,4877,4850,4817,4782,4749,4720,4758,4730,4707,4689,4672,4647,4611,4574,4541,4516,4498,4473,
+4452,4437,4419,4385,4348,4326,4312,4302,4294,4279,4258,4241,4245,4259,4275,4274,4273,4248,4214,4179,
+4133,4087,4047,4005,3959,3920,3887,3852,3821,3789,3753,3717,3671,3625,3587,3557,3530,3500,3467,3427,
+3381,3335,3291,3245,3187,3126,3081,3071,3046,3018,2981,2942,2897,2852,2814,2775,2731,2674,2608,2545,
+2468,2378,2300,2248,2208,2178,2146,2121,2110,2102,2083,2063,2048,2041,2046,2044,2030,2024,2021,2021,
+2014,2003,2005,2012,2014,2021,2010,1991,1981,1994,2008,1996,1978,1970,1953,1931,1909,1877,1839,1805,
+1772,1741,1710,1675,1637,1596,1560,1533,1514,1507,1504,1497,1494,1505,1523,1544,1562,1571,1580,1595,
+1601,1594,1591,1593,1594,1591,1584,1574,1567,1555,1535,1510,1487,1467,1442,1422,1412,1406,1389,1364,
+1342,1329,1319,1311,1309,1300,1288,1273,1255,1233,1214,1196,1177,1161,1149,1137,1124,1113,1095,1071,
+1046,1023,1002,982,965,952,935,918,904,888,873,859,842,824,809,794,777,758,736,717,
+700,679,651,626,601,582,569,557,537,516,498,472,425,374,337,305,278,259,228,179,
+138,112,77,42,11,-14,-43,-65,-81,-104,-129,-149,-175,-202,-229,-255,-271,-294,-320,-335,
+-341,-364,-387,-403,-420,-416,-399,-408,-471,-560,-639,-722,-820,-909,-982,-1045,-1099,-1152,-1207,-1261,
+-1304,-1342,-1385,-1429,-1467,-1499,-1529,-1567,-1612,-1655,-1699,-1743,-1789,-1831,-1871,-1915,-1963,-2011,-2061,-2105,
+-2135,-2155,-2172,-2195,-2223,-2256,-2286,-2313,-2346,-2384,-2415,-2433,-2447,-2466,-2489,-2508,-2531,-2564,-2606,-2650,
+-2691,-2729,-2765,-2796,-2819,-2836,-2853,-2867,-2876,-2891,-2910,-2927,-2946,-2964,-2971,-2976,-2994,-3020,-3046,-3073,
+-3101,-3129,-3158,-3183,-3197,-3203,-3210,-3231,-3261,-3289,-3310,-3321,-3329,-3336,-3348,-3365,-3385,-3403,-3422,-3442,
+-3460,-3474,-3485,-3497,-3506,-3511,-3515,-3516,-3512,-3507,-3501,-3491,-3478,-3477,-3478,-3479,-3489,-3510,-3530,-3555,
+-3582,-3597,-3599,-3605,-3620,-3638,-3661,-3692,-3722,-3747,-3773,-3791,-3797,-3807,-3817,-3809,-3776,-3736,-3701,-3663,
+-3633,-3620,-3612,-3606,-3605,-3608,-3618,-3639,-3662,-3682,-3699,-3712,-3726,-3766,-3812,-3848,-3873,-3880,-3874,-3873,
+-3863,-3848,-3833,-3832,-3838,-3839,-3837,-3828,-3806,-3768,-3736,-3701,-3675,-3653,-3639,-3623,-3602,-3571,-3535,-3491,
+-3440,-3387,-3346,-3303,-3277,-3266,-3256,-3266,-3280,-3288,-3306,-3315,-3313,-3302,-3289,-3271,-3254,-3244,-3231,-3219,
+-3202,-3182,-3161,-3134,-3098,-3053,-3011,-2958,-2902,-2848,-2798,-2751,-2717,-2670,-2614,-2565,-2505,-2435,-2368,-2305,
+-2269,-2199,-2136,-2087,-2041,-1988,-1935,-1891,-1852,-1839,-1827,-1801,-1727,-1662,-1631,-1634,-1629,-1624,-1632,-1682,
+-1695,-1675,-1610,-1522,-1430,-1377,-1352,-1342,-1341,-1293,-1243,-1211,-1174,-1130,-1080,-1009,-931,-852,-781,-722,
+-681,-641,-606,-561,-508,-437,-367,-298,-232,-168,-104,-31,27,88,143,167,177,198,247,286,
+320,353,388,437,506,538,592,613,653,707,757,775,787,808,859,882,902,920,926,928,
+934,952,967,980,982,994,1021,1041,1051,1065,1083,1102,1128,1156,1163,1196,1215,1239,1280,1312,
+1326,1352,1375,1399,1412,1418,1411,1399,1385,1368,1352,1329,1325,1310,1310,1331,1321,1290,1281,1290,
+1311,1321,1322,1329,1335,1337,1352,1399,1410,1412,1416,1433,1482,1498,1486,1490,1514,1537,1536,1530,
+1535,1546,1557,1572,1579,1586,1582,1595,1608,1621,1630,1638,1644,1647,1646,1638,1634,1629,1623,1622,
+1626,1635,1654,1672,1671,1659,1639,1621,1612,1611,1622,1629,1649,1679,1699,1718,1745,1774,1782,1776,
+1752,1750,1760,1759,1750,1745,1745,1747,1755,1789,1848,1905,1922,1857,1831,1781,1748,1707,1657,1589,
+1548,1533,1521,1477,1351,1197,1101,1043,1001,963,937,914,894,880,866,853,840,823,803,787,
+758,723,688,649,615,597,636,708,724,728,711,687,608,546,487,395,285,187,140,144,
+160,170,166,152,134,127,128,129,130,127,116,99,83,73,69,68,71,72,76,78,
+80,78,81,93,110,130,143,150,147,136,118,102,90,85,86,97,123,159,185,218,
+268,310,342,387,445,520,590,605,588,537,566,696,794,849,879,886,902,930,944,957,
+975,987,997,1021,1053,1072,1078,1081,1085,1086,1093,1105,1122,1130,1149,1168,1192,1204,1211,1217,
+1229,1251,1273,1286,1300,1322,1337,1348,1358,1373,1383,1392,1398,1408,1421,1442,1465,1489,1509,1521,
+1531,1540,1548,1560,1564,1558,1553,1553,1555,1550,1538,1516,1494,1477,1471,1470,1474,1488,1498,1491,
+1503,1520,1533,1559,1564,1556,1553,1543,1538,1508,1425,1345,1260,1220,1217,1225,1214,1184,1140,1117,
+1103,1094,1092,1100,1124,1166,1223,1281,1319,1338,1339,1340,1342,1327,1270,1187,1101,1006,921,826,
+709,606,560,551,564,593,627,643,661,678,692,699,698,689,675,656,635,610,585,559,
+531,503,473,445,416,387,359,344,353,397,457,525,563,564,547,511,469,433,407,408,
+450,490,474,463,431,403,360,351,305,314,307,293,270,259,255,277,260,282,304,290,
+262,225,217,174,107,25,23,52,54,40,20,-19,-28,-53,-88,-121,-167,-216,-253,-307,
+-336,-349,-384,-402,-454,-462,-470,-500,-544,-599,-682,-806,-915,-1012,-1070,-1133,-1209,-1262,-1289,-1336,
+-1386,-1430,-1466,-1498,-1532,-1564,-1584,-1591,-1606,-1634,-1673,-1710,-1747,-1787,-1824,-1869,-1920,-1961,-1994,-2022,
+-2046,-2070,-2096,-2119,-2144,-2178,-2208,-2238,-2276,-2318,-2357,-2395,-2428,-2452,-2476,-2506,-2541,-2574,-2604,-2641,
+-2690,-2741,-2790,-2831,-2863,-2887,-2910,-2934,-2962,-2989,-3018,-3050,-3073,-3084,-3107,-3128,-3139,-3149,-3170,-3199,
+-3220,-3239,-3265,-3296,-3317,-3326,-3329,-3331,-3340,-3349,-3363,-3379,-3404,-3434,-3464,-3493,-3523,-3550,-3575,-3597,
+-3620,-3648,-3672,-3696,-3719,-3747,-3778,-3817,-3862,-3902,-3933,-3972,-4014,-4056,-4097,-4142,-4175,-4209,-4246,-4282,
+-4315,-4348,-4382,-4419,-4457,-4492,-4522,-4555,-4585,-4614,-4641,-4663,-4682,-4701,-4716,-4730,-4740,-4749,-4762,-4774,
+-4782,-4788,-4792,-4794,-4797,-4800,-4808,-4815,-4820,-4821,-4827,-4835,-4846,-4857,-4861,-4859,-4853,-4841,-4828,-4818,
+-4811,-4804,-4803,-4794,-4788,-4773,-4758,-4741,-4721,-4698,-4681,-4666,-4654,-4647,-4642,-4638,-4633,-4620,-4604,-4575,
+-4546,-4512,-4465,-4438,-4415,-4390,-4391,-4382,-4361,-4330,-4281,-4240,-4194,-4143,-4094,-4049,-4000,-3946,-3886,-3819,
+-3757,-3700,-3648,-3596,-3548,-3506,-3475,-3438,-3383,-3328,-3287,-3258,-3228,-3198,-3165,-3126,-3079,-3026,-2966,-2923,
+-2887,-2843,-2809,-2786,-2770,-2770,-2773,-2785,-2761,-2709,-2650,-2584,-2510,-2417,-2334,-2256,-2176,-2103,-2028,-1954,
+-1885,-1804,-1721,-1634,-1548,-1452,-1355,-1266,-1175,-1088,-1012,-943,-882,-811,-768,-756,-740,-736,-711,-658,
+-578,-486,-369,-233,-91,61,217,361,459,489,477,483,507,541,581,624,671,719,770,827,
+887,950,1014,1087,1161,1237,1312,1382,1447,1512,1585,1653,1714,1771,1822,1878,1948,2036,2127,2220,
+2291,2338,2389,2444,2492,2552,2613,2674,2742,2809,2875,2942,3011,3075,3144,3213,3280,3348,3418,3479,
+3534,3587,3644,3711,3788,3864,3939,4019,4091,4143,4176,4207,4243,4281,4321,4362,4404,4450,4494,4539,
+4577,4614,4655,4698,4738,4778,4816,4860,4901,4942,4986,5026,5070,5112,5157,5199,5242,5280,5321,5374,
+5430,5478,5521,5564,5617,5670,5715,5756,5801,5847,5892,5949,5987,6032,6087,6131,6176,6215,6244,6247,
+6254,6291,6326,6345,6351,6350,6343,6328,6318,6317,6322,6315,6311,6307,6303,6304,6305,6302,6286,6271,
+6261,6245,6224,6204,6204,6193,6171,6154,6144,6136,6129,6122,6111,6106,6104,6109,6111,6115,6116,6117,
+6113,6100,6087,6077,6070,6072,6092,6106,6130,6140,6148,6144,6112,6097,6089,6077,6059,6037,6007,5972,
+5937,5919,5919,5923,5933,5954,5998,6028,5989,5953,5930,5905,5874,5829,5744,5672,5623,5601,5597,5600,
+5599,5597,5584,5562,5542,5532,5529,5525,5539,5607,5718,5805,5789,5754,5731,5713,5718,5727,5719,5699,
+5707,5713,5706,5665,5609,5564,5546,5550,5545,5513,5460,5419,5359,5300,5214,5121,5043,4986,4947,4920,
+4900,4885,4874,4865,4854,4839,4826,4796,4758,4755,4739,4725,4707,4686,4655,4618,4573,4532,4501,4472,
+4448,4427,4408,4385,4348,4312,4294,4282,4273,4255,4242,4228,4205,4187,4174,4155,4152,4156,4145,4130,
+4106,4060,3997,3948,3909,3879,3864,3856,3846,3827,3792,3749,3707,3666,3639,3612,3581,3563,3533,3507,
+3471,3429,3389,3347,3308,3270,3205,3174,3145,3118,3084,3043,2995,2942,2880,2819,2780,2743,2708,2667,
+2616,2554,2469,2383,2313,2260,2217,2177,2155,2149,2134,2108,2086,2079,2078,2079,2081,2065,2046,2027,
+2015,1999,1973,1952,1942,1968,1996,1997,1982,1971,1970,1993,2002,2007,2022,2022,2002,1968,1926,1892,
+1863,1840,1813,1771,1726,1686,1649,1620,1600,1581,1563,1549,1543,1546,1556,1572,1582,1583,1572,1557,
+1553,1546,1542,1546,1555,1559,1558,1553,1544,1531,1513,1490,1468,1446,1421,1408,1416,1433,1440,1430,
+1409,1383,1354,1323,1294,1276,1261,1241,1221,1199,1177,1157,1143,1138,1139,1137,1131,1113,1087,1059,
+1035,1011,989,968,949,935,923,913,908,907,902,896,886,870,853,835,812,784,758,740,
+727,710,682,648,621,601,585,565,536,505,480,455,427,389,352,315,281,249,214,172,
+128,94,63,17,-23,-46,-66,-97,-128,-153,-174,-197,-220,-244,-264,-282,-308,-321,-332,-348,
+-367,-382,-413,-450,-473,-478,-468,-429,-424,-472,-550,-630,-725,-831,-917,-991,-1067,-1129,-1178,-1234,
+-1288,-1331,-1375,-1422,-1469,-1508,-1539,-1563,-1594,-1635,-1683,-1734,-1780,-1823,-1865,-1910,-1956,-2004,-2057,-2105,
+-2139,-2163,-2182,-2204,-2232,-2266,-2301,-2332,-2359,-2390,-2423,-2451,-2470,-2486,-2504,-2526,-2548,-2572,-2599,-2629,
+-2662,-2696,-2730,-2763,-2797,-2827,-2853,-2873,-2885,-2894,-2909,-2926,-2946,-2969,-2988,-2995,-3000,-3014,-3031,-3052,
+-3077,-3109,-3147,-3184,-3218,-3241,-3252,-3255,-3263,-3283,-3308,-3329,-3338,-3342,-3352,-3365,-3378,-3394,-3417,-3442,
+-3460,-3478,-3490,-3500,-3513,-3528,-3543,-3553,-3558,-3552,-3537,-3524,-3516,-3508,-3496,-3493,-3499,-3518,-3548,-3578,
+-3598,-3608,-3619,-3637,-3653,-3663,-3667,-3676,-3696,-3721,-3751,-3779,-3801,-3817,-3826,-3833,-3828,-3815,-3788,-3752,
+-3720,-3700,-3682,-3664,-3658,-3664,-3676,-3698,-3741,-3799,-3831,-3846,-3855,-3868,-3894,-3917,-3945,-3969,-3990,-3997,
+-3995,-3994,-3981,-3962,-3955,-3955,-3947,-3932,-3909,-3878,-3841,-3794,-3744,-3703,-3675,-3655,-3634,-3610,-3577,-3540,
+-3503,-3451,-3403,-3373,-3348,-3330,-3326,-3323,-3325,-3332,-3335,-3340,-3341,-3339,-3331,-3328,-3321,-3312,-3305,-3302,
+-3292,-3271,-3247,-3214,-3163,-3111,-3070,-3016,-2951,-2896,-2834,-2766,-2708,-2656,-2603,-2540,-2470,-2421,-2358,-2275,
+-2228,-2162,-2138,-2121,-2082,-2034,-2003,-1965,-1942,-1915,-1863,-1797,-1748,-1696,-1624,-1567,-1558,-1545,-1529,-1534,
+-1570,-1580,-1564,-1512,-1427,-1356,-1306,-1288,-1275,-1241,-1214,-1177,-1110,-1062,-1027,-985,-944,-865,-799,-738,
+-682,-627,-588,-549,-511,-448,-386,-315,-231,-154,-77,-9,52,117,179,227,259,260,300,355,
+383,414,463,530,586,666,737,763,787,817,832,826,833,843,857,917,970,996,1011,1009,
+1003,1015,1021,1015,1039,1064,1087,1084,1103,1102,1087,1104,1129,1148,1173,1189,1223,1262,1290,1320,
+1363,1385,1399,1439,1463,1465,1465,1463,1468,1453,1419,1366,1330,1314,1312,1315,1321,1319,1312,1309,
+1313,1338,1364,1370,1375,1377,1393,1412,1425,1426,1449,1488,1530,1534,1522,1532,1544,1556,1562,1569,
+1581,1597,1608,1613,1621,1607,1601,1599,1608,1622,1639,1647,1651,1654,1650,1643,1632,1632,1637,1634,
+1627,1628,1640,1658,1677,1679,1667,1645,1623,1608,1610,1638,1661,1683,1711,1746,1786,1821,1836,1837,
+1829,1796,1777,1779,1787,1804,1817,1800,1794,1813,1856,1912,1978,1921,1887,1837,1810,1765,1728,1678,
+1622,1581,1538,1491,1418,1292,1188,1142,1108,1074,1044,1011,982,954,925,901,882,866,842,810,
+777,751,715,674,635,611,606,613,657,694,713,693,672,608,552,491,403,291,202,169,
+172,189,193,189,178,169,163,161,158,155,148,136,124,114,109,107,104,95,90,92,
+97,98,96,99,115,134,148,158,165,164,150,130,112,104,103,104,108,119,136,168,
+212,238,257,292,335,380,436,468,439,418,448,500,572,721,831,899,936,938,920,930,
+958,975,994,1011,1033,1047,1067,1084,1094,1103,1110,1115,1127,1133,1146,1166,1184,1201,1215,1222,
+1226,1243,1264,1287,1300,1309,1333,1352,1365,1385,1401,1413,1425,1426,1424,1427,1446,1471,1492,1503,
+1517,1540,1557,1560,1556,1550,1542,1536,1536,1536,1521,1503,1486,1471,1466,1467,1471,1480,1488,1483,
+1466,1468,1482,1503,1509,1508,1522,1486,1455,1406,1361,1294,1241,1223,1232,1238,1208,1199,1180,1158,
+1150,1146,1150,1174,1207,1245,1287,1326,1347,1355,1367,1370,1357,1333,1288,1224,1134,1027,925,802,
+688,608,570,562,578,602,632,661,680,695,708,715,718,717,707,690,665,640,612,584,
+556,529,504,478,459,433,398,362,327,297,274,256,253,269,301,331,345,354,356,344,
+328,322,375,429,451,459,404,368,342,303,281,299,230,212,211,219,265,265,283,327,
+302,273,242,167,121,47,16,34,13,16,7,-8,-53,-73,-113,-142,-161,-178,-205,-247,
+-294,-317,-347,-372,-416,-439,-481,-513,-518,-559,-624,-680,-771,-872,-973,-1064,-1123,-1174,-1226,-1244,
+-1291,-1340,-1385,-1431,-1464,-1493,-1514,-1523,-1524,-1540,-1567,-1600,-1641,-1687,-1744,-1800,-1854,-1899,-1939,-1974,
+-2001,-2024,-2048,-2064,-2087,-2118,-2156,-2197,-2234,-2269,-2298,-2324,-2356,-2380,-2387,-2391,-2402,-2423,-2448,-2484,
+-2533,-2607,-2678,-2731,-2768,-2799,-2829,-2855,-2876,-2894,-2911,-2938,-2981,-3018,-3027,-3027,-3032,-3037,-3053,-3086,
+-3134,-3168,-3188,-3206,-3227,-3240,-3247,-3252,-3260,-3273,-3292,-3316,-3339,-3368,-3399,-3434,-3465,-3488,-3511,-3525,
+-3545,-3569,-3589,-3608,-3631,-3658,-3688,-3723,-3763,-3809,-3855,-3901,-3942,-3979,-4015,-4051,-4082,-4109,-4141,-4176,
+-4212,-4245,-4281,-4316,-4351,-4390,-4426,-4453,-4478,-4507,-4536,-4561,-4588,-4613,-4632,-4651,-4671,-4688,-4707,-4722,
+-4732,-4744,-4756,-4766,-4771,-4775,-4779,-4787,-4797,-4805,-4811,-4818,-4829,-4842,-4860,-4870,-4872,-4864,-4852,-4837,
+-4821,-4812,-4805,-4795,-4790,-4786,-4775,-4762,-4750,-4731,-4713,-4700,-4685,-4672,-4663,-4657,-4651,-4645,-4636,-4627,
+-4616,-4588,-4552,-4507,-4473,-4429,-4413,-4396,-4371,-4348,-4318,-4275,-4240,-4204,-4158,-4110,-4061,-4013,-3969,-3924,
+-3869,-3806,-3751,-3703,-3659,-3609,-3558,-3521,-3495,-3457,-3403,-3353,-3307,-3265,-3229,-3198,-3167,-3123,-3068,-3008,
+-2950,-2909,-2861,-2817,-2787,-2770,-2765,-2766,-2776,-2762,-2702,-2645,-2602,-2547,-2465,-2371,-2283,-2195,-2125,-2041,
+-1966,-1895,-1822,-1735,-1655,-1556,-1457,-1358,-1260,-1186,-1113,-1033,-971,-914,-857,-815,-791,-773,-767,-770,
+-751,-700,-632,-536,-415,-276,-117,53,217,347,411,426,439,462,493,539,585,636,692,752,
+812,877,941,1007,1073,1143,1212,1281,1347,1413,1485,1550,1627,1719,1797,1835,1859,1902,1971,2057,
+2150,2245,2319,2372,2421,2470,2534,2594,2649,2712,2783,2855,2921,2990,3057,3126,3194,3260,3325,3389,
+3454,3511,3567,3633,3705,3787,3868,3935,3993,4039,4080,4115,4151,4187,4226,4266,4309,4357,4411,4463,
+4511,4555,4601,4648,4690,4730,4773,4817,4861,4902,4944,4990,5033,5081,5131,5191,5248,5301,5333,5377,
+5418,5477,5533,5578,5610,5659,5706,5747,5786,5832,5883,5934,5980,6038,6094,6134,6174,6202,6222,6226,
+6247,6292,6317,6324,6327,6321,6300,6297,6305,6297,6293,6283,6286,6281,6277,6272,6261,6249,6244,6240,
+6231,6216,6203,6195,6168,6157,6155,6151,6145,6138,6128,6119,6111,6106,6101,6105,6105,6106,6111,6113,
+6111,6103,6094,6086,6085,6098,6116,6119,6135,6157,6163,6157,6123,6106,6101,6090,6082,6085,6108,6069,
+6001,5959,5932,5934,5943,5946,5953,5973,5996,6002,5994,5995,5990,5966,5928,5875,5815,5709,5636,5604,
+5592,5584,5578,5572,5558,5535,5515,5511,5511,5533,5606,5700,5757,5784,5801,5797,5779,5774,5749,5731,
+5735,5744,5743,5713,5656,5604,5566,5558,5563,5549,5496,5426,5372,5300,5202,5115,5057,5019,4982,4952,
+4929,4900,4876,4865,4854,4840,4826,4809,4779,4755,4730,4703,4687,4675,4661,4635,4601,4567,4529,4493,
+4464,4435,4405,4375,4342,4313,4299,4283,4264,4245,4229,4213,4202,4190,4171,4149,4122,4103,4096,4092,
+4084,4060,4032,3979,3950,3922,3894,3871,3857,3851,3833,3804,3770,3733,3695,3668,3640,3615,3593,3568,
+3539,3506,3469,3434,3401,3361,3320,3293,3269,3223,3177,3144,3092,3043,2984,2909,2836,2775,2733,2696,
+2651,2614,2574,2520,2460,2388,2308,2246,2200,2174,2161,2138,2109,2097,2091,2091,2090,2091,2082,2068,
+2051,2029,2001,1977,1957,1934,1935,1955,1961,1969,1978,1974,1995,2018,2029,2030,2027,2021,2005,1976,
+1941,1907,1873,1847,1816,1778,1744,1719,1700,1681,1655,1625,1604,1592,1591,1600,1608,1602,1584,1561,
+1545,1542,1536,1532,1541,1555,1565,1562,1552,1540,1526,1503,1473,1439,1407,1390,1403,1428,1440,1433,
+1422,1411,1393,1364,1322,1283,1254,1227,1202,1184,1172,1159,1152,1146,1138,1130,1115,1095,1067,1033,
+1004,988,976,958,939,922,908,896,902,920,933,936,936,927,910,890,871,844,806,774,
+748,720,691,666,643,618,597,573,542,509,477,437,403,371,345,314,276,237,190,150,
+116,86,55,18,-31,-75,-109,-136,-166,-191,-221,-245,-263,-273,-286,-309,-329,-352,-369,-382,
+-402,-429,-453,-471,-490,-503,-516,-517,-489,-472,-506,-556,-615,-711,-849,-960,-1032,-1095,-1155,-1211,
+-1276,-1332,-1375,-1415,-1460,-1503,-1549,-1589,-1621,-1657,-1696,-1734,-1772,-1809,-1842,-1884,-1937,-1988,-2037,-2087,
+-2127,-2154,-2178,-2201,-2224,-2253,-2291,-2330,-2365,-2396,-2429,-2460,-2491,-2518,-2537,-2555,-2572,-2591,-2613,-2640,
+-2667,-2695,-2724,-2753,-2781,-2811,-2839,-2865,-2887,-2903,-2915,-2928,-2941,-2957,-2973,-2988,-3006,-3028,-3048,-3070,
+-3095,-3119,-3148,-3183,-3219,-3248,-3270,-3288,-3297,-3303,-3311,-3327,-3342,-3348,-3353,-3361,-3374,-3384,-3400,-3424,
+-3448,-3465,-3478,-3489,-3505,-3522,-3543,-3564,-3578,-3587,-3587,-3572,-3551,-3540,-3530,-3517,-3517,-3537,-3556,-3569,
+-3587,-3609,-3626,-3642,-3665,-3688,-3701,-3707,-3709,-3713,-3725,-3750,-3772,-3786,-3804,-3813,-3815,-3813,-3808,-3792,
+-3776,-3760,-3731,-3711,-3712,-3715,-3718,-3741,-3795,-3869,-3916,-3947,-3964,-3969,-3975,-3979,-3983,-4000,-4009,-4019,
+-4029,-4039,-4045,-4049,-4050,-4042,-4036,-4024,-3999,-3961,-3917,-3874,-3828,-3778,-3727,-3686,-3665,-3644,-3621,-3588,
+-3551,-3508,-3466,-3444,-3424,-3406,-3395,-3386,-3379,-3384,-3395,-3394,-3385,-3378,-3374,-3366,-3359,-3358,-3356,-3350,
+-3349,-3340,-3326,-3289,-3235,-3178,-3114,-3050,-2983,-2913,-2831,-2742,-2688,-2615,-2562,-2505,-2440,-2396,-2346,-2269,
+-2232,-2200,-2147,-2101,-2073,-2072,-2069,-2046,-2022,-2012,-1976,-1929,-1843,-1779,-1730,-1678,-1621,-1567,-1519,-1488,
+-1506,-1489,-1443,-1416,-1411,-1365,-1294,-1256,-1226,-1200,-1160,-1152,-1108,-1024,-958,-918,-900,-876,-797,-741,
+-684,-631,-581,-547,-511,-481,-407,-322,-235,-158,-80,-3,67,131,189,243,281,291,332,392,
+443,478,496,537,605,672,718,740,760,764,775,780,792,830,871,913,977,1040,1080,1079,
+1084,1088,1091,1080,1076,1090,1105,1105,1125,1145,1143,1144,1155,1179,1182,1190,1220,1251,1287,1319,
+1359,1404,1441,1457,1485,1503,1506,1510,1514,1494,1463,1427,1385,1358,1344,1334,1317,1311,1318,1323,
+1326,1338,1368,1403,1434,1420,1408,1425,1438,1463,1490,1543,1574,1590,1576,1597,1629,1642,1651,1655,
+1652,1646,1649,1646,1629,1619,1619,1627,1630,1634,1642,1648,1660,1670,1666,1655,1646,1629,1622,1623,
+1625,1623,1634,1666,1698,1695,1690,1677,1658,1639,1630,1639,1664,1697,1735,1777,1827,1867,1867,1867,
+1882,1874,1845,1846,1871,1873,1871,1875,1872,1868,1885,1947,2004,1976,1933,1876,1829,1812,1800,1761,
+1698,1656,1617,1559,1484,1367,1246,1187,1161,1139,1111,1088,1068,1040,1010,978,945,919,897,866,
+824,780,738,684,631,600,605,596,601,627,658,666,622,619,576,539,506,433,321,237,
+204,205,215,215,209,200,190,185,182,177,173,164,153,143,138,131,122,115,110,106,
+106,107,109,110,117,131,144,151,159,166,166,159,151,143,143,145,143,152,159,169,
+185,205,229,260,295,333,371,400,384,351,350,379,477,640,749,842,929,973,1000,997,
+979,981,1002,1024,1040,1052,1070,1087,1098,1115,1133,1145,1150,1154,1163,1175,1196,1204,1214,1227,
+1235,1248,1265,1282,1300,1318,1334,1353,1374,1383,1402,1422,1435,1447,1452,1448,1446,1450,1481,1501,
+1519,1532,1549,1558,1554,1548,1535,1519,1506,1500,1491,1472,1463,1460,1455,1452,1453,1461,1458,1462,
+1469,1460,1457,1477,1496,1476,1437,1428,1397,1350,1313,1291,1273,1261,1262,1265,1240,1276,1305,1296,
+1270,1249,1241,1244,1278,1326,1373,1407,1428,1427,1411,1381,1338,1263,1196,1122,1044,958,864,764,
+674,620,596,596,611,635,664,689,715,735,738,744,740,733,727,716,700,675,649,619,
+589,560,530,500,477,455,434,404,371,338,297,257,216,180,150,119,95,79,82,98,
+123,155,189,247,342,388,406,383,360,313,275,242,281,220,171,139,171,212,222,246,
+243,208,194,121,80,108,69,75,47,36,-6,-27,-48,-47,-77,-102,-136,-179,-201,-213,
+-233,-271,-299,-358,-408,-425,-485,-536,-591,-629,-638,-669,-710,-785,-858,-933,-1003,-1082,-1136,-1177,
+-1218,-1264,-1300,-1335,-1376,-1409,-1441,-1462,-1470,-1474,-1485,-1506,-1539,-1601,-1661,-1715,-1755,-1798,-1846,-1890,
+-1928,-1964,-1996,-2016,-2027,-2030,-2056,-2096,-2152,-2216,-2246,-2263,-2278,-2300,-2312,-2307,-2308,-2319,-2344,-2383,
+-2423,-2466,-2524,-2614,-2683,-2721,-2748,-2770,-2788,-2807,-2823,-2858,-2904,-2927,-2936,-2936,-2939,-2946,-2958,-2983,
+-3024,-3071,-3096,-3114,-3133,-3150,-3158,-3163,-3172,-3189,-3217,-3247,-3273,-3301,-3335,-3369,-3398,-3424,-3442,-3461,
+-3478,-3497,-3512,-3529,-3549,-3572,-3598,-3626,-3659,-3700,-3743,-3788,-3827,-3870,-3913,-3959,-4001,-4036,-4068,-4097,
+-4127,-4160,-4194,-4223,-4256,-4291,-4324,-4357,-4389,-4413,-4436,-4466,-4495,-4520,-4551,-4584,-4614,-4637,-4654,-4670,
+-4688,-4703,-4714,-4728,-4743,-4751,-4761,-4767,-4771,-4777,-4783,-4790,-4800,-4815,-4834,-4852,-4867,-4871,-4870,-4859,
+-4845,-4826,-4811,-4804,-4797,-4793,-4789,-4774,-4764,-4747,-4733,-4722,-4711,-4700,-4688,-4678,-4675,-4665,-4656,-4655,
+-4646,-4628,-4616,-4579,-4530,-4478,-4457,-4422,-4391,-4357,-4335,-4304,-4274,-4261,-4232,-4192,-4147,-4098,-4047,-3996,
+-3948,-3902,-3852,-3793,-3752,-3716,-3677,-3625,-3571,-3532,-3494,-3445,-3398,-3355,-3308,-3260,-3221,-3186,-3142,-3091,
+-3037,-2987,-2934,-2881,-2835,-2797,-2775,-2768,-2764,-2775,-2767,-2743,-2687,-2633,-2565,-2480,-2390,-2298,-2206,-2131,
+-2058,-1975,-1896,-1826,-1748,-1665,-1580,-1475,-1373,-1270,-1188,-1125,-1059,-991,-936,-882,-837,-790,-769,-779,
+-764,-756,-756,-715,-658,-553,-424,-270,-98,70,226,343,391,414,443,473,511,554,605,661,
+726,799,874,946,1012,1080,1146,1207,1269,1332,1392,1453,1521,1605,1693,1774,1841,1877,1915,1971,
+2027,2091,2160,2237,2313,2382,2453,2518,2572,2629,2690,2755,2819,2887,2961,3040,3116,3187,3256,3327,
+3389,3449,3512,3572,3636,3695,3755,3816,3879,3936,3985,4029,4069,4115,4157,4203,4250,4298,4349,4400,
+4449,4498,4548,4599,4643,4685,4728,4771,4816,4858,4900,4951,4994,5036,5076,5121,5165,5214,5269,5325,
+5375,5422,5468,5513,5563,5605,5650,5698,5744,5794,5851,5902,5974,6031,6070,6111,6159,6193,6205,6204,
+6242,6286,6293,6294,6290,6285,6275,6277,6275,6269,6267,6266,6267,6273,6270,6263,6262,6259,6253,6232,
+6230,6217,6199,6179,6170,6164,6157,6152,6151,6140,6130,6122,6116,6110,6107,6102,6100,6105,6105,6104,
+6102,6099,6096,6093,6107,6124,6116,6120,6132,6152,6152,6132,6127,6114,6109,6108,6088,6067,6042,6032,
+6011,5977,5953,5944,5945,5942,5934,5928,5945,5974,6003,6019,6036,6045,6032,6014,5973,5920,5824,5701,
+5641,5613,5600,5590,5595,5596,5578,5548,5528,5522,5539,5613,5707,5770,5798,5830,5841,5814,5790,5773,
+5766,5760,5747,5706,5668,5640,5616,5608,5603,5599,5567,5518,5462,5366,5272,5187,5130,5091,5064,5050,
+5024,4990,4966,4938,4900,4870,4848,4826,4801,4766,4730,4717,4685,4659,4639,4623,4613,4584,4541,4503,
+4472,4441,4408,4373,4341,4314,4297,4285,4274,4261,4243,4222,4202,4188,4176,4168,4160,4145,4120,4099,
+4083,4062,4036,4017,3996,3966,3938,3910,3877,3857,3848,3841,3830,3810,3793,3758,3722,3688,3660,3632,
+3600,3566,3534,3504,3472,3437,3396,3358,3325,3320,3278,3226,3173,3113,3050,2989,2922,2852,2789,2731,
+2683,2641,2610,2581,2551,2514,2455,2389,2316,2242,2190,2155,2123,2113,2118,2118,2114,2115,2116,2113,
+2108,2094,2069,2041,2009,1969,1944,1946,1956,1972,1977,2002,2014,2039,2072,2079,2070,2067,2058,2034,
+2002,1972,1940,1902,1872,1853,1836,1822,1813,1795,1754,1710,1679,1655,1634,1623,1623,1618,1601,1581,
+1568,1567,1566,1567,1576,1592,1606,1604,1580,1548,1522,1499,1467,1429,1396,1367,1357,1375,1401,1412,
+1408,1403,1390,1366,1329,1289,1261,1245,1232,1213,1201,1192,1179,1164,1146,1121,1097,1073,1041,1005,
+972,956,956,954,933,914,902,882,864,875,907,933,954,969,961,928,892,865,836,805,
+776,748,714,681,653,623,596,569,540,511,492,458,412,368,335,300,262,224,179,134,
+104,74,36,-7,-40,-79,-126,-170,-209,-239,-266,-293,-318,-337,-344,-351,-362,-379,-397,-413,
+-427,-447,-476,-497,-515,-525,-535,-550,-550,-528,-509,-557,-628,-689,-775,-897,-1002,-1066,-1122,-1183,
+-1238,-1298,-1357,-1400,-1439,-1479,-1528,-1583,-1634,-1679,-1723,-1758,-1779,-1803,-1834,-1868,-1915,-1972,-2022,-2069,
+-2116,-2148,-2168,-2192,-2221,-2248,-2277,-2313,-2354,-2390,-2421,-2455,-2490,-2522,-2552,-2581,-2605,-2623,-2642,-2667,
+-2696,-2724,-2749,-2771,-2794,-2818,-2839,-2854,-2872,-2895,-2915,-2930,-2948,-2966,-2978,-2989,-3004,-3029,-3060,-3090,
+-3122,-3154,-3181,-3204,-3229,-3255,-3279,-3298,-3309,-3313,-3319,-3330,-3344,-3352,-3353,-3354,-3365,-3381,-3397,-3411,
+-3427,-3446,-3469,-3486,-3500,-3515,-3530,-3551,-3574,-3590,-3598,-3607,-3603,-3580,-3565,-3557,-3547,-3552,-3574,-3597,
+-3608,-3621,-3647,-3674,-3697,-3719,-3739,-3751,-3755,-3755,-3756,-3761,-3772,-3786,-3791,-3795,-3797,-3799,-3811,-3811,
+-3796,-3791,-3796,-3772,-3752,-3759,-3784,-3802,-3839,-3917,-3972,-3995,-4015,-4034,-4032,-4020,-4013,-4010,-4013,-4027,
+-4032,-4038,-4035,-4038,-4044,-4050,-4050,-4044,-4034,-4007,-3969,-3924,-3878,-3836,-3792,-3752,-3712,-3683,-3655,-3630,
+-3599,-3566,-3545,-3528,-3508,-3488,-3473,-3458,-3438,-3424,-3428,-3440,-3441,-3426,-3408,-3393,-3380,-3372,-3375,-3381,
+-3374,-3368,-3357,-3326,-3280,-3229,-3168,-3088,-3002,-2904,-2799,-2740,-2692,-2618,-2539,-2489,-2438,-2389,-2338,-2301,
+-2281,-2261,-2221,-2167,-2120,-2113,-2107,-2110,-2091,-2049,-1994,-1983,-1973,-1921,-1845,-1762,-1713,-1704,-1651,-1565,
+-1466,-1415,-1352,-1306,-1288,-1293,-1247,-1248,-1214,-1192,-1172,-1117,-1090,-1028,-975,-921,-880,-881,-832,-755,
+-692,-646,-592,-559,-523,-495,-458,-420,-337,-243,-142,-62,4,61,125,193,235,276,359,395,
+452,523,566,584,600,621,653,690,717,733,745,770,802,826,863,927,991,1058,1108,1111,
+1127,1130,1133,1144,1163,1160,1160,1156,1163,1193,1199,1191,1186,1189,1194,1201,1241,1302,1341,1368,
+1391,1435,1465,1483,1489,1512,1522,1490,1481,1489,1476,1449,1411,1403,1408,1388,1359,1353,1361,1364,
+1363,1367,1373,1411,1453,1489,1462,1445,1459,1473,1491,1533,1593,1623,1625,1647,1679,1689,1691,1696,
+1698,1697,1697,1703,1701,1698,1688,1674,1668,1661,1663,1662,1666,1672,1676,1670,1655,1639,1622,1617,
+1616,1611,1614,1631,1669,1697,1697,1694,1688,1680,1671,1673,1686,1712,1748,1791,1841,1889,1892,1893,
+1916,1946,1958,1950,1954,1954,1945,1925,1919,1934,1941,1978,2031,2034,1971,1925,1900,1874,1838,1804,
+1750,1677,1616,1564,1478,1350,1238,1186,1166,1150,1138,1122,1105,1080,1054,1028,1001,972,942,910,
+880,850,802,745,694,627,585,606,622,660,693,694,663,612,607,568,525,489,419,312,
+251,231,240,242,237,226,214,206,199,196,191,182,170,154,145,143,136,129,122,116,
+112,110,108,108,112,125,144,155,164,171,175,179,179,177,176,175,179,181,192,203,
+211,221,232,250,277,311,352,390,399,359,304,284,302,393,574,775,894,930,958,986,
+1019,1029,1037,1040,1044,1060,1079,1097,1106,1116,1137,1156,1172,1172,1177,1181,1183,1197,1215,1227,
+1247,1253,1265,1279,1297,1312,1327,1350,1367,1387,1399,1421,1440,1447,1459,1474,1472,1472,1473,1489,
+1510,1522,1534,1542,1541,1546,1545,1522,1493,1479,1464,1450,1437,1434,1436,1436,1431,1422,1418,1422,
+1426,1436,1454,1480,1490,1485,1452,1405,1338,1290,1274,1286,1306,1319,1323,1311,1323,1365,1404,1404,
+1383,1373,1364,1363,1375,1404,1441,1473,1491,1484,1451,1395,1320,1236,1141,1055,974,893,806,719,
+662,633,628,641,662,683,706,731,754,770,780,780,775,765,754,742,725,707,682,651,
+621,590,557,525,494,465,440,416,387,351,316,277,240,203,168,138,107,82,60,37,
+18,6,2,16,70,185,274,294,317,299,276,251,177,186,182,140,94,112,148,163,
+199,207,172,103,40,104,111,60,57,31,-28,-15,-15,-70,-98,-111,-133,-167,-191,-226,
+-251,-269,-280,-313,-357,-430,-469,-519,-570,-627,-650,-691,-712,-725,-764,-803,-874,-936,-999,-1067,
+-1115,-1160,-1211,-1247,-1277,-1324,-1360,-1390,-1410,-1419,-1429,-1454,-1497,-1542,-1587,-1632,-1667,-1702,-1746,-1784,
+-1823,-1870,-1921,-1969,-1998,-2016,-2031,-2049,-2083,-2140,-2186,-2216,-2229,-2234,-2241,-2241,-2243,-2253,-2271,-2296,
+-2338,-2388,-2437,-2505,-2587,-2638,-2667,-2689,-2707,-2725,-2751,-2788,-2835,-2865,-2876,-2879,-2882,-2891,-2903,-2922,
+-2953,-2996,-3019,-3040,-3056,-3069,-3080,-3090,-3100,-3119,-3144,-3174,-3210,-3243,-3274,-3302,-3329,-3354,-3377,-3394,
+-3410,-3425,-3440,-3455,-3472,-3490,-3512,-3537,-3563,-3594,-3630,-3670,-3714,-3757,-3806,-3853,-3899,-3943,-3982,-4019,
+-4056,-4084,-4110,-4138,-4171,-4213,-4252,-4281,-4302,-4325,-4350,-4379,-4409,-4441,-4476,-4522,-4571,-4616,-4645,-4661,
+-4673,-4683,-4694,-4704,-4715,-4725,-4731,-4737,-4746,-4753,-4759,-4764,-4769,-4778,-4792,-4806,-4825,-4840,-4850,-4850,
+-4851,-4840,-4827,-4818,-4809,-4802,-4793,-4786,-4773,-4758,-4743,-4733,-4728,-4724,-4720,-4714,-4709,-4700,-4683,-4685,
+-4685,-4665,-4638,-4629,-4602,-4553,-4497,-4458,-4410,-4376,-4344,-4324,-4308,-4300,-4295,-4276,-4243,-4200,-4152,-4096,
+-4043,-3999,-3959,-3921,-3872,-3822,-3779,-3735,-3684,-3633,-3582,-3540,-3500,-3458,-3413,-3362,-3306,-3254,-3203,-3155,
+-3106,-3051,-3006,-2958,-2910,-2864,-2823,-2793,-2778,-2776,-2767,-2772,-2755,-2724,-2663,-2581,-2497,-2410,-2320,-2223,
+-2133,-2054,-1976,-1897,-1825,-1755,-1672,-1599,-1510,-1423,-1333,-1227,-1147,-1086,-1020,-971,-924,-881,-864,-853,
+-852,-834,-816,-796,-766,-725,-639,-522,-377,-222,-59,117,261,359,411,428,449,487,534,588,
+644,708,777,852,930,1011,1083,1153,1213,1270,1329,1385,1444,1507,1579,1657,1733,1806,1861,1909,
+1964,2025,2074,2121,2176,2241,2314,2383,2449,2517,2589,2654,2717,2785,2862,2944,3028,3109,3186,3261,
+3335,3404,3462,3510,3557,3603,3648,3700,3758,3823,3883,3938,3994,4048,4104,4165,4228,4277,4331,4376,
+4419,4465,4510,4562,4612,4656,4697,4736,4781,4820,4861,4902,4951,5006,5058,5112,5142,5174,5216,5274,
+5335,5388,5453,5526,5576,5628,5673,5716,5753,5804,5866,5919,5963,6000,6058,6100,6145,6174,6172,6178,
+6218,6255,6266,6270,6273,6251,6244,6246,6247,6247,6248,6240,6241,6242,6235,6222,6215,6208,6205,6196,
+6196,6189,6187,6178,6162,6157,6157,6150,6144,6137,6129,6124,6119,6114,6110,6107,6104,6101,6098,6097,
+6096,6099,6102,6112,6128,6124,6126,6136,6146,6150,6132,6115,6130,6117,6101,6078,6066,6052,6015,5971,
+5951,5945,5943,5943,5941,5939,5935,5928,5924,5946,5982,6014,6037,6057,6067,6066,6061,6020,5943,5847,
+5719,5651,5620,5612,5621,5664,5750,5735,5647,5565,5537,5549,5615,5709,5760,5777,5794,5800,5805,5801,
+5799,5794,5776,5732,5688,5660,5646,5618,5606,5595,5585,5560,5513,5434,5363,5300,5252,5225,5193,5174,
+5139,5102,5068,5018,4965,4931,4897,4866,4834,4796,4756,4717,4705,4677,4653,4633,4609,4597,4580,4539,
+4498,4464,4427,4393,4360,4336,4317,4302,4288,4277,4265,4251,4230,4207,4185,4169,4161,4150,4128,4101,
+4082,4070,4056,4043,4026,4003,3981,3952,3914,3880,3858,3844,3843,3844,3835,3815,3786,3757,3730,3708,
+3680,3652,3626,3603,3570,3528,3473,3420,3367,3327,3310,3282,3242,3204,3153,3083,3010,2941,2880,2818,
+2770,2722,2674,2632,2593,2568,2539,2498,2453,2393,2330,2271,2218,2181,2171,2165,2160,2160,2167,2167,
+2169,2163,2153,2138,2103,2063,2030,2010,2002,2000,1999,2009,2044,2079,2113,2133,2140,2114,2084,2070,
+2052,2019,1979,1947,1913,1889,1874,1865,1863,1856,1828,1788,1753,1722,1693,1665,1647,1635,1620,1605,
+1603,1611,1616,1627,1636,1641,1646,1647,1630,1588,1544,1506,1475,1438,1402,1376,1351,1331,1339,1366,
+1382,1383,1379,1365,1335,1294,1259,1238,1238,1239,1234,1227,1213,1187,1161,1133,1100,1062,1024,987,
+953,929,911,901,895,895,899,891,862,838,843,874,903,930,943,930,888,842,808,782,
+759,744,728,703,674,639,597,566,542,520,504,488,447,386,336,302,261,217,173,127,
+92,64,27,-21,-72,-112,-158,-206,-253,-289,-314,-343,-379,-395,-408,-409,-409,-419,-427,-434,
+-444,-460,-490,-513,-534,-552,-570,-582,-585,-600,-602,-597,-627,-717,-790,-850,-947,-1042,-1098,-1144,
+-1207,-1263,-1323,-1379,-1425,-1467,-1512,-1558,-1607,-1656,-1698,-1735,-1771,-1798,-1822,-1850,-1889,-1942,-1996,-2044,
+-2092,-2139,-2170,-2189,-2210,-2239,-2272,-2305,-2339,-2376,-2415,-2451,-2485,-2517,-2549,-2581,-2609,-2634,-2660,-2688,
+-2717,-2745,-2770,-2794,-2817,-2835,-2855,-2875,-2888,-2900,-2914,-2929,-2949,-2977,-2996,-3003,-3010,-3027,-3055,-3089,
+-3125,-3160,-3194,-3226,-3253,-3273,-3285,-3301,-3321,-3329,-3326,-3328,-3339,-3352,-3360,-3362,-3365,-3378,-3398,-3420,
+-3438,-3448,-3460,-3476,-3492,-3506,-3521,-3534,-3550,-3571,-3589,-3599,-3612,-3612,-3596,-3578,-3571,-3569,-3585,-3609,
+-3632,-3662,-3699,-3732,-3756,-3770,-3779,-3786,-3791,-3791,-3794,-3802,-3809,-3815,-3824,-3827,-3828,-3829,-3831,-3841,
+-3852,-3847,-3841,-3845,-3838,-3825,-3826,-3837,-3863,-3923,-3984,-4022,-4045,-4059,-4063,-4053,-4045,-4037,-4039,-4037,
+-4034,-4034,-4036,-4029,-4026,-4039,-4045,-4050,-4043,-4022,-3987,-3953,-3919,-3881,-3842,-3799,-3750,-3717,-3684,-3661,
+-3638,-3617,-3598,-3586,-3577,-3561,-3541,-3518,-3500,-3477,-3459,-3454,-3465,-3458,-3438,-3417,-3403,-3388,-3377,-3376,
+-3370,-3367,-3350,-3329,-3304,-3279,-3216,-3122,-3018,-2912,-2813,-2733,-2683,-2633,-2544,-2466,-2403,-2375,-2358,-2347,
+-2336,-2306,-2271,-2272,-2224,-2166,-2135,-2124,-2121,-2079,-2028,-1971,-1935,-1907,-1845,-1766,-1711,-1698,-1696,-1589,
+-1479,-1394,-1317,-1226,-1183,-1187,-1193,-1205,-1217,-1162,-1102,-1054,-1028,-1003,-976,-959,-961,-927,-894,-840,
+-767,-695,-632,-576,-530,-501,-471,-441,-417,-361,-269,-176,-93,-18,44,98,157,225,308,361,
+443,481,535,590,615,642,682,744,778,809,829,860,895,916,927,943,954,986,1037,1072,
+1120,1152,1168,1149,1149,1157,1163,1155,1168,1194,1207,1206,1222,1253,1279,1290,1312,1357,1396,1433,
+1443,1479,1497,1525,1518,1510,1510,1516,1491,1472,1461,1445,1430,1434,1443,1432,1407,1385,1371,1362,
+1369,1374,1392,1413,1447,1485,1516,1502,1487,1486,1510,1558,1607,1650,1662,1672,1693,1716,1727,1725,
+1729,1732,1737,1744,1746,1749,1746,1743,1735,1724,1719,1727,1722,1717,1708,1699,1689,1671,1654,1643,
+1635,1626,1623,1623,1634,1653,1673,1681,1691,1702,1713,1721,1730,1740,1761,1797,1845,1895,1927,1942,
+1969,2009,2044,2051,2034,2035,2021,2004,1989,1981,1982,2010,2051,2066,2016,1959,1934,1932,1907,1839,
+1759,1677,1582,1498,1439,1372,1274,1167,1125,1114,1117,1119,1111,1094,1067,1047,1029,1002,975,948,
+923,894,860,808,745,697,672,627,600,627,651,677,692,657,616,598,551,530,503,417,
+323,269,259,265,259,248,236,224,214,208,201,193,184,165,144,135,132,129,124,118,
+113,111,111,112,113,119,137,155,168,178,183,187,192,196,202,209,212,211,212,215,
+224,234,241,251,265,281,300,319,338,331,308,279,266,279,353,537,720,846,903,941,
+977,1021,1047,1062,1076,1083,1096,1105,1111,1123,1145,1168,1186,1199,1202,1205,1211,1217,1222,1235,
+1243,1259,1274,1283,1294,1309,1326,1343,1356,1375,1404,1419,1430,1440,1452,1467,1487,1491,1488,1500,
+1509,1518,1525,1539,1543,1537,1534,1522,1502,1483,1467,1451,1441,1435,1431,1423,1418,1415,1421,1421,
+1433,1451,1480,1513,1515,1502,1450,1362,1284,1223,1201,1215,1233,1241,1259,1295,1339,1375,1414,1420,
+1418,1423,1431,1439,1457,1477,1494,1499,1501,1474,1412,1348,1282,1199,1106,1020,926,830,754,709,
+684,672,673,688,708,727,750,773,791,803,808,810,807,797,780,763,745,724,702,679,
+659,633,601,572,543,514,484,452,420,384,346,306,268,233,198,165,136,110,89,66,
+40,10,-19,-39,-47,-27,38,139,193,223,243,259,212,131,150,139,86,63,77,94,
+116,149,151,121,18,-32,28,72,74,49,2,-68,-60,-65,-108,-120,-155,-195,-219,-244,
+-278,-301,-322,-347,-366,-412,-456,-482,-523,-561,-639,-687,-718,-731,-767,-784,-807,-863,-905,-961,
+-1037,-1099,-1145,-1183,-1228,-1274,-1316,-1350,-1369,-1385,-1403,-1432,-1465,-1500,-1531,-1557,-1577,-1618,-1668,-1718,
+-1762,-1810,-1855,-1908,-1950,-1979,-1996,-2014,-2036,-2059,-2114,-2167,-2204,-2213,-2211,-2205,-2196,-2205,-2218,-2245,
+-2288,-2340,-2395,-2451,-2513,-2565,-2600,-2620,-2631,-2652,-2689,-2733,-2778,-2815,-2830,-2843,-2848,-2858,-2871,-2897,
+-2924,-2952,-2971,-2985,-2997,-3003,-3011,-3021,-3035,-3051,-3070,-3096,-3128,-3165,-3203,-3238,-3263,-3285,-3312,-3334,
+-3348,-3360,-3373,-3390,-3406,-3422,-3439,-3465,-3492,-3516,-3549,-3587,-3620,-3657,-3702,-3752,-3802,-3846,-3887,-3927,
+-3966,-4002,-4039,-4068,-4098,-4133,-4174,-4207,-4229,-4246,-4270,-4299,-4329,-4363,-4402,-4447,-4499,-4550,-4593,-4625,
+-4652,-4668,-4677,-4682,-4687,-4693,-4702,-4709,-4717,-4723,-4728,-4736,-4749,-4759,-4770,-4785,-4799,-4812,-4821,-4830,
+-4836,-4836,-4828,-4816,-4812,-4809,-4806,-4801,-4793,-4781,-4770,-4761,-4750,-4747,-4747,-4748,-4745,-4741,-4721,-4702,
+-4705,-4705,-4693,-4671,-4653,-4621,-4578,-4512,-4445,-4393,-4364,-4346,-4337,-4337,-4340,-4335,-4320,-4291,-4247,-4198,
+-4146,-4098,-4062,-4032,-3995,-3950,-3881,-3827,-3783,-3742,-3698,-3654,-3611,-3566,-3518,-3467,-3416,-3365,-3324,-3274,
+-3215,-3160,-3111,-3063,-3010,-2971,-2925,-2881,-2847,-2817,-2783,-2765,-2759,-2747,-2713,-2671,-2600,-2521,-2444,-2359,
+-2261,-2157,-2062,-1980,-1889,-1812,-1747,-1680,-1616,-1541,-1456,-1365,-1267,-1178,-1104,-1049,-1008,-978,-958,-949,
+-938,-899,-869,-844,-819,-797,-750,-685,-590,-463,-320,-157,21,183,299,381,414,441,480,528,
+580,639,702,764,827,899,978,1055,1129,1196,1257,1309,1366,1425,1484,1552,1624,1695,1765,1842,
+1900,1952,2005,2064,2120,2177,2231,2296,2371,2449,2524,2600,2675,2736,2793,2852,2913,2988,3078,3159,
+3229,3293,3358,3412,3460,3507,3554,3607,3664,3727,3794,3859,3923,3975,4037,4102,4172,4235,4292,4356,
+4413,4454,4505,4532,4567,4615,4660,4706,4751,4788,4835,4878,4928,4967,5005,5054,5108,5154,5201,5244,
+5305,5368,5419,5461,5508,5563,5620,5681,5726,5770,5826,5892,5964,6004,6041,6081,6121,6142,6139,6154,
+6209,6239,6240,6239,6234,6230,6225,6223,6225,6233,6236,6232,6222,6212,6210,6207,6188,6176,6175,6169,
+6165,6159,6152,6146,6141,6137,6134,6133,6132,6129,6125,6123,6122,6119,6116,6114,6108,6101,6098,6098,
+6102,6103,6107,6117,6123,6134,6144,6160,6166,6159,6129,6121,6139,6138,6114,6063,6013,5989,5969,5960,
+5958,5960,5964,5962,5960,5976,5988,5958,5938,5931,5951,5987,6030,6056,6062,6054,6034,5998,5949,5895,
+5788,5681,5626,5603,5600,5610,5629,5671,5662,5594,5543,5524,5545,5603,5696,5765,5785,5791,5800,5805,
+5810,5815,5814,5793,5733,5680,5655,5685,5656,5597,5585,5592,5564,5518,5465,5442,5378,5314,5296,5282,
+5260,5168,5093,5060,5023,4978,4931,4891,4854,4820,4790,4746,4705,4685,4660,4643,4627,4605,4590,4578,
+4555,4521,4484,4446,4412,4384,4360,4334,4314,4297,4278,4258,4240,4227,4224,4210,4186,4168,4150,4126,
+4101,4084,4065,4046,4034,4032,4017,3992,3969,3948,3908,3878,3852,3837,3842,3837,3817,3794,3777,3762,
+3751,3739,3719,3696,3675,3645,3592,3524,3457,3396,3353,3320,3284,3246,3214,3173,3121,3061,3000,2941,
+2881,2834,2776,2715,2666,2636,2601,2563,2525,2486,2446,2400,2352,2311,2293,2290,2282,2269,2253,2248,
+2251,2242,2236,2230,2215,2189,2155,2124,2101,2098,2088,2102,2111,2124,2144,2167,2187,2180,2147,2101,
+2063,2034,2015,1990,1959,1938,1919,1896,1879,1880,1887,1870,1826,1783,1753,1725,1692,1661,1640,1633,
+1632,1636,1641,1654,1672,1679,1673,1668,1658,1631,1589,1539,1495,1457,1422,1389,1362,1342,1332,1336,
+1347,1348,1339,1334,1332,1321,1306,1298,1298,1292,1281,1267,1244,1214,1180,1146,1109,1065,1023,985,
+954,929,911,898,880,865,863,862,847,831,830,839,850,863,869,859,832,796,766,737,
+715,704,698,694,685,667,633,592,557,533,504,482,461,423,367,315,277,236,183,130,
+88,58,27,-21,-82,-141,-192,-237,-281,-325,-362,-389,-413,-440,-461,-472,-468,-456,-452,-456,
+-463,-470,-484,-511,-532,-545,-554,-580,-609,-618,-624,-647,-654,-675,-741,-803,-859,-956,-1056,-1108,
+-1153,-1221,-1283,-1340,-1399,-1448,-1491,-1540,-1594,-1650,-1698,-1729,-1756,-1789,-1815,-1839,-1875,-1923,-1977,-2025,
+-2068,-2110,-2149,-2179,-2204,-2229,-2259,-2295,-2329,-2357,-2389,-2428,-2465,-2499,-2531,-2565,-2598,-2630,-2667,-2701,
+-2731,-2761,-2790,-2815,-2837,-2859,-2874,-2884,-2897,-2913,-2930,-2938,-2945,-2958,-2981,-3005,-3024,-3042,-3064,-3096,
+-3137,-3172,-3202,-3235,-3266,-3291,-3312,-3329,-3341,-3350,-3354,-3354,-3355,-3362,-3377,-3389,-3398,-3404,-3409,-3422,
+-3443,-3464,-3478,-3485,-3493,-3504,-3515,-3525,-3538,-3552,-3567,-3581,-3595,-3603,-3600,-3588,-3578,-3577,-3587,-3613,
+-3654,-3692,-3722,-3751,-3777,-3798,-3813,-3821,-3827,-3832,-3828,-3822,-3823,-3827,-3840,-3861,-3871,-3872,-3878,-3890,
+-3903,-3912,-3912,-3904,-3907,-3909,-3901,-3887,-3872,-3868,-3910,-3973,-4022,-4055,-4069,-4072,-4067,-4057,-4049,-4046,
+-4044,-4044,-4047,-4046,-4037,-4027,-4029,-4042,-4049,-4043,-4018,-3986,-3949,-3909,-3870,-3832,-3794,-3754,-3730,-3709,
+-3673,-3647,-3635,-3618,-3605,-3599,-3585,-3570,-3544,-3517,-3487,-3468,-3468,-3472,-3460,-3442,-3427,-3403,-3389,-3372,
+-3354,-3342,-3340,-3322,-3300,-3289,-3259,-3176,-3054,-2936,-2836,-2743,-2660,-2602,-2561,-2499,-2416,-2386,-2377,-2380,
+-2378,-2352,-2302,-2272,-2258,-2261,-2204,-2180,-2156,-2135,-2074,-1991,-1936,-1868,-1804,-1737,-1706,-1668,-1622,-1591,
+-1511,-1403,-1291,-1236,-1208,-1252,-1308,-1309,-1264,-1173,-1072,-1007,-969,-953,-963,-973,-979,-961,-923,-872,
+-827,-767,-697,-620,-563,-512,-465,-411,-385,-360,-311,-243,-171,-105,-37,27,83,154,244,334,
+412,451,521,558,602,653,702,762,805,856,892,908,940,969,965,976,1020,1042,1057,1089,
+1135,1153,1185,1197,1202,1187,1172,1153,1160,1191,1222,1238,1263,1273,1305,1341,1364,1380,1421,1459,
+1501,1505,1524,1542,1529,1543,1532,1502,1488,1470,1454,1436,1433,1450,1446,1429,1412,1392,1375,1373,
+1389,1390,1389,1404,1457,1509,1545,1548,1534,1542,1532,1536,1573,1635,1658,1679,1700,1720,1747,1763,
+1767,1770,1770,1775,1774,1771,1767,1767,1776,1774,1778,1782,1793,1789,1765,1742,1731,1716,1698,1681,
+1676,1668,1654,1641,1638,1636,1634,1644,1663,1703,1735,1767,1784,1789,1796,1814,1852,1902,1939,1954,
+1969,2012,2061,2080,2074,2085,2115,2095,2063,2063,2070,2076,2073,2066,2018,1969,1959,1962,1947,1893,
+1830,1775,1699,1607,1520,1459,1366,1203,1076,1027,1017,1029,1041,1049,1053,1046,1031,1017,995,976,
+951,923,902,875,840,801,754,707,672,641,636,661,651,668,643,597,572,530,512,472,
+414,336,285,270,261,250,240,231,222,212,199,188,181,168,148,131,120,113,112,111,
+111,110,113,118,125,131,141,154,167,179,186,190,192,198,209,219,226,231,233,230,
+228,234,243,249,257,265,275,286,295,297,292,277,264,262,273,323,427,567,704,817,
+922,979,1033,1066,1096,1100,1106,1115,1120,1127,1138,1149,1167,1192,1214,1227,1229,1232,1236,1249,
+1260,1267,1283,1296,1315,1326,1336,1355,1374,1391,1401,1416,1431,1441,1451,1466,1480,1494,1503,1513,
+1526,1527,1526,1530,1533,1524,1516,1512,1500,1484,1468,1459,1453,1443,1441,1426,1419,1430,1448,1479,
+1531,1565,1578,1584,1554,1494,1421,1332,1236,1160,1123,1108,1102,1124,1156,1199,1258,1310,1350,1385,
+1414,1440,1461,1478,1494,1502,1500,1476,1431,1383,1309,1249,1182,1103,1019,942,872,806,768,749,
+748,750,756,764,777,791,806,815,827,833,834,831,825,816,803,785,763,743,716,689,
+668,641,624,591,547,516,489,462,429,396,361,322,282,245,209,174,142,114,91,69,
+39,12,-11,-34,-57,-82,-91,-70,-1,89,149,162,183,187,112,77,59,69,62,41,
+28,6,26,60,65,5,-74,-25,41,21,-36,-93,-133,-101,-128,-166,-192,-235,-252,-289,
+-322,-337,-345,-351,-399,-431,-457,-456,-497,-553,-606,-625,-696,-739,-736,-765,-813,-834,-852,-893,
+-957,-1024,-1087,-1137,-1188,-1234,-1276,-1317,-1351,-1380,-1403,-1428,-1448,-1469,-1487,-1491,-1518,-1567,-1618,-1662,
+-1706,-1754,-1810,-1861,-1900,-1926,-1946,-1959,-1968,-1990,-2034,-2095,-2146,-2186,-2193,-2190,-2195,-2202,-2214,-2234,
+-2272,-2315,-2356,-2397,-2441,-2483,-2525,-2562,-2576,-2589,-2612,-2648,-2704,-2755,-2795,-2819,-2835,-2848,-2864,-2887,
+-2918,-2939,-2951,-2960,-2965,-2963,-2963,-2967,-2974,-2987,-3003,-3025,-3054,-3094,-3136,-3169,-3199,-3225,-3251,-3271,
+-3285,-3292,-3302,-3322,-3341,-3356,-3375,-3402,-3430,-3460,-3494,-3531,-3577,-3607,-3642,-3683,-3728,-3773,-3810,-3843,
+-3879,-3916,-3950,-3980,-4013,-4051,-4091,-4122,-4147,-4167,-4191,-4222,-4255,-4294,-4337,-4374,-4413,-4455,-4501,-4536,
+-4562,-4594,-4617,-4625,-4635,-4647,-4658,-4669,-4680,-4689,-4698,-4708,-4721,-4734,-4746,-4758,-4772,-4788,-4803,-4814,
+-4822,-4827,-4827,-4822,-4815,-4811,-4810,-4805,-4800,-4792,-4784,-4780,-4775,-4770,-4766,-4765,-4769,-4769,-4758,-4737,
+-4721,-4722,-4724,-4708,-4686,-4664,-4629,-4576,-4524,-4464,-4407,-4372,-4362,-4362,-4361,-4368,-4359,-4344,-4317,-4278,
+-4233,-4187,-4145,-4107,-4074,-4040,-3995,-3938,-3875,-3825,-3781,-3736,-3684,-3635,-3592,-3549,-3496,-3437,-3388,-3345,
+-3302,-3253,-3201,-3155,-3111,-3057,-3001,-2960,-2922,-2880,-2834,-2800,-2775,-2756,-2728,-2703,-2676,-2630,-2552,-2471,
+-2401,-2310,-2211,-2106,-2008,-1909,-1821,-1744,-1678,-1616,-1556,-1481,-1397,-1303,-1221,-1153,-1090,-1041,-1019,-996,
+-989,-987,-969,-933,-919,-871,-800,-754,-738,-673,-564,-431,-268,-93,68,210,325,412,462,501,
+537,579,631,690,748,810,871,935,1002,1068,1139,1210,1275,1337,1401,1461,1523,1585,1647,1713,
+1797,1867,1930,1985,2036,2087,2148,2222,2302,2381,2454,2526,2602,2680,2754,2829,2903,2959,3006,3061,
+3119,3183,3232,3276,3334,3393,3452,3514,3582,3660,3757,3842,3931,3964,3987,4029,4080,4132,4182,4230,
+4295,4370,4446,4498,4531,4555,4587,4635,4687,4733,4774,4810,4853,4900,4948,4997,5042,5094,5146,5199,
+5252,5313,5383,5445,5491,5541,5597,5644,5700,5756,5813,5873,5926,5964,6019,6065,6099,6116,6103,6142,
+6206,6223,6224,6227,6210,6204,6205,6206,6214,6213,6214,6208,6200,6188,6179,6169,6164,6166,6191,6179,
+6160,6160,6153,6148,6141,6134,6132,6132,6132,6123,6117,6115,6115,6117,6119,6118,6116,6113,6109,6107,
+6109,6113,6122,6131,6149,6169,6176,6187,6191,6181,6153,6137,6156,6180,6175,6125,6067,6019,6001,5999,
+5996,6000,6007,6023,6037,6030,6027,6018,5983,5965,5956,5976,6012,6044,6064,6045,5998,5952,5909,5853,
+5746,5637,5581,5560,5546,5543,5549,5555,5551,5542,5536,5532,5535,5562,5613,5682,5755,5792,5805,5816,
+5822,5828,5834,5822,5772,5709,5670,5662,5653,5615,5599,5598,5567,5541,5533,5506,5457,5410,5373,5327,
+5277,5222,5158,5103,5069,5022,4969,4919,4880,4845,4808,4769,4724,4685,4699,4677,4649,4624,4601,4580,
+4570,4558,4537,4511,4476,4439,4408,4374,4340,4314,4292,4276,4264,4245,4231,4221,4212,4192,4161,4134,
+4112,4098,4086,4071,4060,4051,4041,4036,4022,3990,3959,3928,3904,3878,3848,3832,3820,3805,3793,3784,
+3773,3764,3753,3738,3719,3701,3675,3638,3572,3497,3429,3379,3340,3319,3294,3259,3228,3179,3120,3059,
+2997,2932,2877,2820,2766,2719,2687,2659,2625,2569,2520,2484,2453,2416,2389,2383,2387,2389,2383,2371,
+2368,2355,2337,2330,2321,2308,2286,2263,2241,2214,2195,2181,2179,2175,2166,2169,2177,2173,2164,2135,
+2101,2068,2035,2002,1978,1959,1943,1937,1932,1921,1910,1902,1889,1860,1821,1774,1729,1691,1667,1655,
+1651,1650,1655,1659,1676,1698,1710,1705,1692,1673,1639,1593,1541,1492,1456,1430,1406,1384,1365,1354,
+1355,1365,1385,1405,1413,1412,1405,1389,1376,1362,1342,1310,1273,1233,1191,1151,1116,1079,1040,1004,
+969,942,921,905,900,890,869,845,832,830,834,838,833,816,797,774,744,715,699,690,
+674,659,657,662,665,654,637,615,586,558,526,480,443,412,374,329,281,240,199,152,
+106,62,22,-14,-62,-126,-192,-250,-301,-356,-394,-420,-443,-469,-496,-516,-526,-525,-511,-501,
+-496,-500,-504,-508,-519,-540,-566,-580,-594,-620,-622,-626,-644,-645,-658,-709,-784,-864,-956,-1038,
+-1084,-1142,-1228,-1301,-1354,-1402,-1446,-1496,-1564,-1639,-1701,-1741,-1762,-1783,-1807,-1831,-1867,-1919,-1972,-2018,
+-2059,-2097,-2134,-2166,-2196,-2225,-2251,-2277,-2309,-2338,-2363,-2393,-2426,-2460,-2493,-2528,-2564,-2598,-2634,-2677,
+-2715,-2751,-2790,-2829,-2858,-2879,-2896,-2911,-2924,-2934,-2939,-2944,-2957,-2967,-2978,-2996,-3021,-3054,-3091,-3121,
+-3148,-3180,-3215,-3248,-3284,-3324,-3351,-3359,-3361,-3366,-3374,-3383,-3389,-3392,-3396,-3404,-3419,-3432,-3439,-3442,
+-3449,-3465,-3483,-3494,-3495,-3497,-3503,-3513,-3523,-3534,-3548,-3563,-3577,-3590,-3592,-3590,-3578,-3566,-3562,-3566,
+-3600,-3660,-3709,-3731,-3761,-3800,-3823,-3838,-3855,-3870,-3881,-3882,-3872,-3865,-3870,-3882,-3896,-3902,-3896,-3898,
+-3916,-3941,-3945,-3939,-3934,-3954,-3971,-3960,-3934,-3900,-3861,-3864,-3895,-3955,-4007,-4043,-4060,-4062,-4058,-4051,
+-4048,-4048,-4056,-4063,-4063,-4065,-4063,-4055,-4049,-4046,-4042,-4016,-3993,-3960,-3927,-3892,-3855,-3819,-3787,-3764,
+-3728,-3699,-3669,-3647,-3631,-3627,-3627,-3609,-3576,-3551,-3523,-3487,-3470,-3468,-3455,-3446,-3441,-3423,-3392,-3359,
+-3345,-3319,-3305,-3304,-3307,-3300,-3288,-3234,-3122,-2978,-2883,-2780,-2695,-2624,-2581,-2549,-2476,-2435,-2408,-2399,
+-2388,-2357,-2333,-2318,-2312,-2291,-2270,-2245,-2203,-2178,-2128,-2057,-2015,-1933,-1853,-1788,-1753,-1668,-1583,-1543,
+-1495,-1422,-1350,-1300,-1246,-1277,-1315,-1287,-1227,-1145,-1050,-973,-928,-880,-868,-875,-888,-865,-861,-857,
+-793,-738,-691,-605,-536,-472,-410,-351,-288,-255,-227,-218,-199,-154,-80,-3,67,136,195,262,
+327,384,435,475,520,566,605,651,706,764,838,913,971,983,988,1006,1015,1029,1054,1089,
+1154,1154,1198,1218,1255,1298,1288,1252,1227,1238,1249,1258,1282,1310,1334,1335,1357,1397,1425,1446,
+1477,1522,1539,1556,1547,1529,1501,1508,1489,1475,1454,1431,1417,1450,1439,1422,1398,1403,1386,1393,
+1401,1394,1395,1408,1431,1459,1501,1552,1563,1558,1539,1536,1554,1596,1641,1669,1707,1736,1754,1765,
+1769,1779,1785,1786,1786,1787,1781,1789,1805,1817,1823,1829,1824,1822,1827,1831,1824,1803,1772,1741,
+1721,1709,1693,1678,1666,1661,1655,1638,1635,1658,1709,1764,1800,1820,1832,1844,1862,1902,1952,1985,
+1992,2021,2070,2100,2100,2102,2118,2140,2158,2146,2160,2167,2193,2168,2069,2001,1950,1948,1958,1948,
+1882,1830,1771,1659,1559,1501,1476,1404,1249,1091,993,941,926,944,966,982,991,991,982,966,
+951,941,923,905,885,858,830,796,760,722,682,647,635,675,663,616,592,545,506,461,
+400,342,299,275,263,246,232,226,220,209,197,182,167,153,141,125,105,94,88,93,
+96,98,102,110,117,126,133,140,149,163,176,185,195,202,207,216,227,235,239,243,
+244,244,246,251,254,255,257,262,269,274,275,271,263,255,253,259,280,324,417,513,
+650,833,937,999,1041,1073,1115,1114,1127,1144,1155,1164,1178,1203,1242,1264,1257,1239,1220,1220,
+1230,1247,1269,1288,1307,1341,1357,1364,1376,1386,1397,1416,1433,1440,1449,1459,1473,1487,1495,1504,
+1514,1520,1520,1516,1510,1507,1502,1494,1489,1480,1470,1463,1454,1446,1438,1437,1440,1451,1468,1496,
+1546,1590,1593,1567,1527,1468,1384,1295,1211,1144,1091,1058,1050,1061,1088,1135,1198,1274,1340,1372,
+1396,1415,1440,1470,1479,1476,1459,1403,1328,1259,1172,1081,994,929,868,830,819,825,815,813,
+815,822,824,829,839,849,855,860,867,866,859,846,836,824,810,793,769,741,717,690,
+666,646,613,584,551,518,488,458,429,397,363,329,294,258,222,189,154,121,89,62,
+35,12,-10,-30,-47,-76,-111,-140,-150,-111,-9,65,113,133,134,117,41,67,42,16,
+10,-13,-26,-69,-84,-77,-107,-134,-88,-104,-107,-120,-143,-145,-186,-231,-231,-260,-305,-348,
+-357,-372,-407,-417,-407,-438,-454,-473,-485,-515,-588,-658,-704,-730,-774,-802,-805,-827,-875,-868,
+-893,-951,-1016,-1092,-1152,-1208,-1245,-1279,-1312,-1346,-1385,-1419,-1446,-1462,-1468,-1468,-1481,-1508,-1547,-1598,
+-1651,-1698,-1747,-1800,-1854,-1892,-1912,-1933,-1944,-1952,-1971,-2012,-2068,-2116,-2148,-2146,-2141,-2153,-2180,-2206,
+-2235,-2274,-2311,-2344,-2375,-2409,-2441,-2479,-2524,-2548,-2563,-2596,-2632,-2677,-2734,-2786,-2825,-2859,-2879,-2906,
+-2930,-2941,-2947,-2952,-2953,-2948,-2939,-2931,-2936,-2946,-2952,-2960,-2985,-3020,-3055,-3090,-3125,-3157,-3180,-3202,
+-3214,-3221,-3233,-3246,-3269,-3291,-3309,-3332,-3360,-3395,-3433,-3466,-3507,-3547,-3586,-3624,-3660,-3696,-3734,-3766,
+-3792,-3826,-3859,-3893,-3924,-3957,-3989,-4023,-4061,-4092,-4118,-4145,-4173,-4208,-4248,-4291,-4337,-4378,-4414,-4448,
+-4466,-4482,-4517,-4529,-4544,-4572,-4586,-4599,-4616,-4631,-4644,-4660,-4676,-4692,-4706,-4718,-4730,-4746,-4766,-4781,
+-4794,-4804,-4814,-4821,-4823,-4819,-4815,-4813,-4806,-4798,-4794,-4789,-4785,-4781,-4776,-4778,-4774,-4762,-4755,-4740,
+-4727,-4715,-4717,-4724,-4710,-4687,-4663,-4611,-4572,-4533,-4476,-4428,-4384,-4369,-4362,-4354,-4351,-4347,-4334,-4309,
+-4272,-4229,-4185,-4144,-4109,-4075,-4045,-4014,-3965,-3899,-3845,-3795,-3750,-3707,-3657,-3607,-3566,-3520,-3469,-3423,
+-3379,-3335,-3288,-3236,-3188,-3147,-3101,-3046,-2996,-2959,-2908,-2865,-2824,-2788,-2759,-2729,-2707,-2684,-2645,-2587,
+-2502,-2424,-2355,-2270,-2162,-2045,-1935,-1840,-1755,-1678,-1614,-1559,-1501,-1424,-1346,-1268,-1185,-1131,-1088,-1056,
+-1034,-1007,-1005,-1016,-1020,-989,-957,-924,-877,-839,-786,-702,-589,-442,-264,-83,85,247,376,472,
+526,562,592,622,671,725,778,837,896,954,1013,1076,1144,1223,1297,1366,1433,1496,1559,1621,
+1679,1741,1814,1889,1952,2003,2060,2128,2206,2284,2362,2438,2509,2576,2642,2712,2789,2872,2947,3011,
+3068,3130,3190,3249,3290,3331,3385,3449,3530,3635,3722,3780,3832,3882,3936,3999,4068,4137,4197,4239,
+4280,4324,4368,4420,4469,4509,4547,4590,4633,4689,4749,4795,4826,4872,4927,4972,5021,5062,5124,5188,
+5235,5287,5344,5407,5460,5517,5567,5615,5663,5707,5760,5803,5851,5894,5944,5976,6010,6034,6084,6131,
+6152,6161,6162,6163,6173,6182,6178,6181,6191,6197,6200,6195,6183,6177,6171,6161,6145,6130,6128,6131,
+6148,6146,6142,6138,6136,6136,6130,6131,6132,6125,6119,6114,6111,6109,6111,6115,6118,6121,6120,6120,
+6122,6130,6147,6162,6180,6196,6208,6215,6221,6218,6198,6172,6159,6173,6159,6126,6097,6059,6039,6039,
+6044,6046,6052,6073,6122,6140,6134,6104,6054,6024,6018,6016,6028,6047,6059,6055,6018,5956,5891,5811,
+5719,5617,5554,5533,5519,5503,5495,5495,5500,5506,5520,5542,5570,5596,5610,5643,5684,5724,5782,5812,
+5820,5821,5831,5830,5796,5754,5719,5694,5669,5650,5625,5592,5573,5537,5537,5520,5495,5457,5409,5384,
+5356,5314,5252,5179,5115,5054,4992,4944,4903,4865,4828,4791,4753,4723,4699,4668,4646,4624,4602,4581,
+4561,4551,4547,4533,4509,4478,4445,4417,4384,4348,4323,4293,4265,4259,4250,4235,4214,4191,4170,4158,
+4142,4127,4111,4096,4091,4094,4085,4066,4050,4024,3997,3975,3957,3934,3906,3870,3835,3811,3792,3779,
+3769,3766,3759,3751,3739,3723,3707,3678,3640,3583,3518,3455,3411,3381,3353,3330,3300,3274,3236,3176,
+3112,3043,2982,2929,2870,2819,2772,2729,2691,2646,2599,2552,2516,2485,2457,2434,2425,2427,2427,2429,
+2446,2456,2451,2435,2414,2399,2381,2361,2344,2326,2289,2260,2240,2236,2214,2188,2174,2180,2154,2147,
+2134,2114,2093,2070,2043,2010,1980,1959,1944,1946,1950,1943,1927,1905,1874,1831,1781,1738,1711,1701,
+1698,1688,1685,1693,1696,1703,1717,1734,1739,1722,1690,1652,1611,1564,1524,1494,1468,1450,1436,1418,
+1416,1440,1475,1498,1506,1493,1475,1463,1441,1415,1387,1349,1300,1249,1203,1168,1137,1106,1074,1036,
+999,965,941,928,920,907,891,876,861,846,837,827,811,787,753,717,685,657,636,621,
+612,611,619,634,641,637,623,603,584,560,532,494,450,413,379,338,299,258,219,179,
+140,94,41,-8,-52,-88,-147,-220,-280,-344,-405,-444,-465,-488,-507,-533,-553,-565,-569,-569,
+-560,-550,-540,-530,-525,-538,-560,-581,-602,-619,-638,-658,-663,-657,-647,-654,-711,-792,-870,-956,
+-1046,-1113,-1175,-1248,-1311,-1362,-1418,-1473,-1528,-1599,-1680,-1749,-1788,-1802,-1811,-1830,-1861,-1907,-1959,-2002,
+-2039,-2077,-2118,-2151,-2175,-2203,-2239,-2271,-2294,-2318,-2345,-2372,-2400,-2429,-2458,-2489,-2522,-2557,-2593,-2626,
+-2665,-2706,-2749,-2795,-2842,-2884,-2916,-2931,-2940,-2952,-2967,-2975,-2979,-2984,-2995,-3010,-3032,-3061,-3101,-3149,
+-3185,-3204,-3223,-3254,-3287,-3320,-3358,-3385,-3390,-3383,-3383,-3389,-3400,-3409,-3410,-3412,-3420,-3435,-3450,-3462,
+-3466,-3470,-3482,-3494,-3502,-3505,-3507,-3508,-3511,-3525,-3540,-3550,-3551,-3563,-3580,-3587,-3582,-3563,-3547,-3549,
+-3558,-3581,-3637,-3699,-3738,-3768,-3800,-3831,-3856,-3874,-3881,-3888,-3893,-3888,-3891,-3914,-3928,-3910,-3893,-3884,
+-3877,-3897,-3935,-3951,-3956,-3959,-3966,-3979,-3994,-3991,-3967,-3909,-3853,-3851,-3882,-3942,-3983,-4016,-4041,-4051,
+-4049,-4053,-4063,-4076,-4086,-4091,-4093,-4093,-4094,-4092,-4071,-4056,-4038,-4022,-3998,-3972,-3940,-3896,-3856,-3830,
+-3803,-3777,-3753,-3724,-3692,-3667,-3650,-3632,-3603,-3578,-3560,-3537,-3493,-3462,-3444,-3428,-3416,-3409,-3389,-3366,
+-3347,-3314,-3286,-3271,-3274,-3294,-3292,-3263,-3185,-3058,-2946,-2858,-2770,-2686,-2607,-2544,-2503,-2494,-2481,-2486,
+-2446,-2387,-2381,-2384,-2381,-2380,-2370,-2320,-2278,-2236,-2175,-2134,-2095,-2035,-1999,-1953,-1928,-1865,-1797,-1711,
+-1650,-1571,-1488,-1418,-1356,-1321,-1277,-1211,-1137,-1058,-1009,-972,-938,-902,-843,-799,-775,-783,-784,-799,
+-800,-791,-725,-673,-593,-504,-437,-379,-299,-222,-167,-136,-124,-127,-102,-40,37,105,169,225,
+268,319,364,401,450,514,574,631,686,741,806,880,951,1001,996,986,985,986,1003,1047,
+1087,1126,1165,1216,1229,1278,1317,1313,1275,1277,1301,1310,1337,1351,1373,1378,1382,1385,1415,1447,
+1467,1487,1510,1535,1552,1526,1516,1497,1484,1471,1454,1433,1430,1444,1442,1416,1397,1382,1392,1394,
+1404,1412,1411,1416,1424,1437,1453,1492,1551,1592,1595,1589,1588,1599,1622,1652,1685,1727,1749,1749,
+1760,1774,1789,1786,1784,1793,1807,1823,1837,1850,1855,1864,1870,1871,1863,1868,1873,1865,1843,1815,
+1791,1771,1758,1735,1715,1705,1697,1684,1664,1656,1671,1726,1791,1828,1849,1868,1891,1915,1943,1987,
+2022,2040,2071,2124,2157,2176,2219,2250,2220,2234,2252,2236,2225,2222,2174,2068,1997,1972,1966,1905,
+1859,1776,1700,1623,1554,1506,1484,1462,1408,1270,1084,956,881,857,864,893,919,935,940,941,
+936,927,916,909,896,879,862,845,815,778,746,716,676,636,649,637,602,572,516,503,
+466,356,293,274,264,256,248,240,229,218,204,184,161,141,124,109,90,75,69,67,
+72,77,77,80,86,95,104,114,121,131,145,159,176,191,203,210,217,228,240,248,
+253,255,257,259,261,260,260,258,261,263,265,269,267,266,262,264,267,272,282,310,
+362,435,541,679,799,833,856,913,974,1025,1079,1110,1139,1176,1214,1255,1290,1311,1316,1294,
+1264,1241,1240,1274,1307,1314,1318,1337,1368,1390,1409,1419,1427,1439,1450,1456,1468,1476,1482,1493,
+1498,1500,1505,1505,1505,1502,1498,1493,1487,1484,1471,1463,1457,1448,1449,1464,1483,1509,1521,1540,
+1611,1627,1602,1566,1514,1452,1397,1325,1248,1188,1122,1070,1046,1049,1072,1114,1184,1266,1343,1391,
+1401,1404,1409,1418,1412,1378,1332,1255,1139,1034,935,842,777,739,723,725,744,773,805,833,
+856,870,880,886,889,891,886,888,902,957,958,897,867,848,837,807,771,741,715,686,
+657,633,620,617,579,546,511,474,442,409,378,347,313,276,242,208,177,144,110,73,
+42,13,-13,-37,-62,-86,-114,-155,-197,-227,-227,-172,-67,33,77,97,89,12,0,-5,
+-37,-48,-66,-86,-114,-159,-150,-139,-137,-114,-153,-149,-154,-199,-164,-186,-268,-332,-331,-363,
+-399,-438,-460,-469,-475,-520,-521,-534,-544,-529,-557,-593,-639,-693,-718,-764,-779,-859,-858,-885,
+-898,-909,-970,-1032,-1080,-1156,-1219,-1265,-1292,-1312,-1346,-1388,-1430,-1459,-1472,-1479,-1500,-1529,-1557,-1592,
+-1626,-1655,-1698,-1744,-1790,-1835,-1871,-1896,-1917,-1937,-1951,-1973,-2007,-2052,-2086,-2099,-2096,-2098,-2118,-2147,
+-2181,-2217,-2255,-2287,-2317,-2349,-2383,-2417,-2456,-2492,-2513,-2532,-2566,-2601,-2646,-2713,-2777,-2819,-2850,-2875,
+-2898,-2910,-2922,-2930,-2934,-2940,-2931,-2921,-2918,-2921,-2920,-2916,-2927,-2952,-2980,-3008,-3045,-3085,-3116,-3138,
+-3152,-3160,-3174,-3192,-3202,-3213,-3237,-3267,-3296,-3325,-3365,-3411,-3458,-3494,-3525,-3548,-3577,-3607,-3644,-3671,
+-3699,-3734,-3770,-3807,-3836,-3865,-3894,-3929,-3965,-4009,-4049,-4080,-4102,-4123,-4149,-4181,-4217,-4253,-4289,-4322,
+-4354,-4386,-4410,-4430,-4457,-4472,-4505,-4527,-4544,-4558,-4575,-4593,-4608,-4623,-4643,-4665,-4690,-4715,-4738,-4761,
+-4777,-4790,-4799,-4798,-4792,-4795,-4801,-4804,-4804,-4802,-4802,-4796,-4791,-4790,-4791,-4790,-4784,-4774,-4762,-4752,
+-4732,-4714,-4699,-4705,-4705,-4706,-4697,-4679,-4647,-4617,-4562,-4497,-4445,-4405,-4369,-4359,-4340,-4331,-4319,-4306,
+-4287,-4255,-4212,-4166,-4125,-4089,-4059,-4035,-4007,-3970,-3927,-3868,-3807,-3751,-3703,-3661,-3624,-3588,-3551,-3504,
+-3457,-3413,-3365,-3311,-3263,-3217,-3168,-3121,-3065,-3010,-2978,-2940,-2893,-2843,-2802,-2772,-2739,-2710,-2694,-2653,
+-2621,-2556,-2460,-2378,-2303,-2218,-2097,-1983,-1880,-1786,-1701,-1625,-1562,-1506,-1453,-1385,-1323,-1246,-1178,-1138,
+-1101,-1067,-1049,-1036,-1033,-1024,-1021,-1012,-992,-959,-913,-867,-807,-710,-596,-448,-265,-76,133,305,
+418,516,585,631,664,687,707,735,780,833,891,953,1016,1086,1158,1236,1317,1397,1467,1528,
+1588,1649,1713,1778,1846,1906,1970,2035,2101,2170,2244,2320,2396,2468,2539,2606,2671,2743,2820,2898,
+2973,3036,3091,3150,3214,3271,3329,3402,3479,3551,3623,3695,3757,3814,3868,3921,3984,4051,4119,4185,
+4241,4304,4355,4405,4445,4483,4515,4556,4594,4642,4693,4749,4806,4843,4896,4961,5011,5056,5103,5171,
+5214,5258,5305,5361,5418,5471,5528,5581,5630,5679,5727,5797,5852,5906,5959,5997,6044,6056,6083,6146,
+6158,6158,6153,6148,6151,6152,6150,6138,6135,6135,6165,6148,6128,6114,6110,6099,6091,6082,6086,6095,
+6104,6118,6122,6123,6124,6130,6125,6121,6120,6120,6117,6113,6110,6111,6114,6115,6119,6124,6126,6134,
+6144,6157,6176,6193,6204,6221,6240,6255,6265,6254,6223,6183,6166,6169,6131,6096,6079,6069,6073,6076,
+6079,6079,6091,6107,6148,6198,6211,6193,6153,6124,6088,6072,6082,6086,6079,6065,6032,5975,5883,5802,
+5721,5641,5589,5571,5553,5527,5500,5481,5482,5489,5498,5523,5583,5692,5766,5737,5714,5714,5734,5782,
+5799,5799,5801,5812,5814,5802,5790,5761,5717,5670,5650,5650,5614,5555,5536,5508,5498,5500,5474,5445,
+5396,5324,5277,5224,5166,5106,5048,4993,4945,4901,4859,4822,4778,4737,4700,4668,4657,4626,4599,4570,
+4540,4516,4498,4490,4482,4469,4448,4427,4409,4387,4353,4323,4299,4274,4264,4251,4235,4210,4186,4183,
+4187,4188,4180,4157,4131,4120,4114,4100,4086,4078,4065,4049,4037,4027,4011,3985,3945,3895,3848,3808,
+3778,3754,3738,3723,3712,3711,3716,3705,3687,3654,3603,3540,3481,3437,3407,3378,3356,3326,3296,3258,
+3210,3157,3101,3040,2980,2924,2864,2809,2764,2716,2668,2628,2593,2562,2537,2514,2493,2481,2471,2458,
+2447,2446,2448,2447,2436,2425,2422,2420,2418,2394,2343,2303,2285,2275,2258,2230,2199,2174,2170,2160,
+2164,2159,2146,2131,2112,2086,2058,2028,2001,1979,1975,1973,1957,1941,1921,1887,1849,1815,1779,1750,
+1732,1716,1701,1698,1712,1729,1740,1747,1754,1759,1752,1721,1676,1636,1603,1576,1552,1521,1494,1483,
+1483,1501,1533,1552,1556,1548,1522,1496,1473,1445,1403,1358,1315,1276,1237,1208,1179,1153,1120,1081,
+1044,1017,993,965,940,924,906,886,866,847,831,820,818,803,777,737,703,678,656,637,
+625,624,634,644,649,633,609,589,565,530,495,471,451,425,392,357,316,280,238,196,
+159,116,63,9,-40,-82,-114,-151,-213,-288,-361,-419,-461,-496,-518,-540,-566,-584,-591,-598,
+-606,-605,-598,-595,-583,-577,-576,-591,-615,-634,-651,-670,-688,-702,-699,-702,-701,-742,-811,-891,
+-985,-1083,-1154,-1210,-1276,-1345,-1404,-1464,-1523,-1578,-1642,-1710,-1759,-1785,-1804,-1822,-1839,-1871,-1922,-1981,
+-2029,-2063,-2093,-2123,-2150,-2178,-2214,-2251,-2278,-2300,-2327,-2352,-2377,-2405,-2438,-2467,-2495,-2525,-2559,-2592,
+-2624,-2662,-2707,-2752,-2794,-2837,-2882,-2919,-2946,-2968,-2983,-2992,-3004,-3019,-3028,-3033,-3041,-3068,-3104,-3146,
+-3188,-3222,-3243,-3263,-3288,-3311,-3329,-3348,-3364,-3375,-3386,-3395,-3401,-3412,-3423,-3428,-3435,-3447,-3457,-3465,
+-3473,-3479,-3484,-3492,-3501,-3507,-3508,-3508,-3510,-3516,-3529,-3543,-3554,-3557,-3570,-3585,-3586,-3572,-3553,-3546,
+-3547,-3539,-3539,-3577,-3647,-3700,-3739,-3780,-3815,-3833,-3847,-3854,-3865,-3867,-3860,-3871,-3894,-3882,-3842,-3830,
+-3857,-3874,-3874,-3866,-3866,-3896,-3939,-3974,-3994,-4004,-3993,-3967,-3960,-3930,-3898,-3894,-3931,-3966,-3992,-4007,
+-4019,-4036,-4059,-4079,-4093,-4103,-4103,-4109,-4113,-4119,-4103,-4085,-4075,-4076,-4060,-4046,-4022,-3989,-3947,-3903,
+-3884,-3859,-3830,-3799,-3771,-3744,-3714,-3683,-3653,-3619,-3594,-3571,-3546,-3499,-3463,-3442,-3414,-3400,-3386,-3377,
+-3354,-3308,-3290,-3256,-3240,-3263,-3288,-3279,-3229,-3130,-3006,-2912,-2826,-2732,-2665,-2609,-2570,-2558,-2569,-2579,
+-2547,-2524,-2549,-2574,-2551,-2518,-2494,-2433,-2345,-2286,-2246,-2218,-2216,-2162,-2117,-2020,-1979,-1914,-1866,-1815,
+-1735,-1673,-1621,-1532,-1436,-1353,-1281,-1218,-1136,-1076,-1023,-967,-941,-896,-878,-836,-786,-751,-748,-777,
+-787,-774,-739,-689,-642,-585,-524,-480,-417,-335,-263,-199,-135,-84,-52,-36,-5,45,103,158,
+202,253,316,358,431,511,574,634,675,702,733,802,886,959,980,981,995,1027,1043,1068,
+1085,1109,1140,1204,1249,1289,1313,1350,1352,1310,1321,1345,1363,1394,1416,1434,1416,1413,1416,1445,
+1471,1506,1528,1543,1565,1517,1504,1508,1500,1486,1459,1441,1435,1457,1461,1429,1399,1374,1389,1400,
+1410,1418,1430,1432,1431,1443,1463,1492,1527,1560,1610,1620,1633,1647,1660,1689,1713,1729,1747,1753,
+1757,1782,1798,1805,1812,1816,1822,1831,1839,1846,1853,1876,1886,1891,1902,1912,1912,1903,1895,1878,
+1852,1825,1807,1788,1778,1760,1745,1731,1715,1705,1697,1705,1754,1820,1858,1883,1908,1934,1967,1992,
+2020,2052,2091,2130,2171,2215,2248,2280,2320,2339,2326,2306,2290,2280,2222,2128,2077,2111,2145,2044,
+1865,1757,1687,1602,1522,1479,1451,1427,1400,1340,1235,1077,903,787,745,777,835,884,911,922,
+921,913,905,895,883,868,854,837,823,807,792,764,727,691,653,648,619,588,559,512,
+466,413,332,277,264,259,262,263,254,241,225,198,168,141,117,96,84,71,56,50,
+40,41,40,40,39,41,47,57,66,73,83,103,126,150,170,187,199,208,220,235,
+248,260,268,274,278,279,279,279,279,278,275,273,275,278,280,284,287,292,297,300,
+311,329,364,415,475,530,551,571,589,648,754,859,936,1004,1057,1108,1149,1175,1197,1230,
+1249,1253,1252,1260,1259,1267,1279,1301,1319,1343,1370,1395,1420,1433,1446,1459,1462,1467,1481,1494,
+1499,1500,1503,1509,1512,1512,1503,1498,1498,1498,1487,1478,1474,1473,1482,1511,1555,1617,1716,1721,
+1668,1628,1595,1545,1492,1448,1392,1348,1306,1255,1187,1132,1098,1087,1100,1141,1197,1261,1321,1362,
+1391,1411,1402,1348,1276,1193,1083,973,872,788,718,672,645,643,657,681,710,744,773,804,
+832,857,878,890,898,902,897,895,890,890,891,883,868,856,865,915,824,759,737,711,
+671,628,602,594,611,666,641,515,458,420,389,356,325,291,258,225,193,161,126,91,
+55,25,-2,-26,-54,-83,-122,-161,-201,-253,-304,-332,-313,-240,-122,-41,3,20,-31,-26,
+-47,-84,-83,-107,-140,-157,-171,-201,-220,-226,-223,-229,-238,-283,-233,-204,-242,-274,-349,-434,
+-449,-489,-477,-495,-530,-564,-573,-602,-615,-622,-629,-655,-702,-719,-741,-786,-788,-832,-881,-925,
+-919,-912,-928,-1002,-1057,-1104,-1143,-1207,-1272,-1315,-1348,-1379,-1410,-1447,-1470,-1483,-1497,-1524,-1551,-1586,
+-1622,-1650,-1677,-1710,-1747,-1783,-1823,-1861,-1870,-1882,-1905,-1928,-1951,-1985,-2022,-2043,-2054,-2059,-2071,-2093,
+-2123,-2153,-2188,-2224,-2254,-2288,-2320,-2346,-2376,-2408,-2437,-2458,-2500,-2546,-2594,-2643,-2711,-2764,-2793,-2814,
+-2830,-2848,-2869,-2890,-2906,-2921,-2922,-2915,-2908,-2906,-2906,-2900,-2896,-2912,-2933,-2954,-2982,-3021,-3051,-3064,
+-3075,-3099,-3116,-3143,-3149,-3148,-3166,-3194,-3231,-3262,-3290,-3328,-3375,-3414,-3445,-3467,-3484,-3512,-3543,-3566,
+-3588,-3620,-3654,-3694,-3731,-3770,-3809,-3840,-3876,-3923,-3975,-4015,-4036,-4032,-4046,-4078,-4118,-4155,-4179,-4204,
+-4230,-4257,-4286,-4319,-4350,-4379,-4405,-4430,-4455,-4476,-4494,-4508,-4518,-4534,-4562,-4598,-4639,-4683,-4722,-4752,
+-4769,-4773,-4774,-4773,-4762,-4751,-4744,-4739,-4753,-4765,-4765,-4768,-4771,-4772,-4777,-4782,-4786,-4786,-4786,-4769,
+-4751,-4729,-4705,-4703,-4695,-4689,-4690,-4687,-4676,-4657,-4632,-4583,-4518,-4454,-4420,-4396,-4368,-4352,-4338,-4327,
+-4323,-4314,-4270,-4225,-4179,-4136,-4100,-4071,-4048,-4018,-3979,-3941,-3885,-3821,-3768,-3721,-3675,-3636,-3604,-3562,
+-3517,-3459,-3413,-3368,-3318,-3272,-3229,-3184,-3138,-3084,-3031,-2990,-2947,-2900,-2845,-2801,-2764,-2731,-2696,-2685,
+-2674,-2639,-2592,-2516,-2411,-2355,-2277,-2174,-2056,-1943,-1839,-1747,-1662,-1591,-1530,-1480,-1435,-1376,-1304,-1241,
+-1186,-1145,-1104,-1072,-1055,-1044,-1028,-1020,-1019,-1003,-979,-946,-902,-844,-770,-669,-555,-414,-252,-67,
+135,312,436,544,626,696,704,682,678,702,755,821,890,959,1028,1099,1169,1248,1333,1410,
+1480,1543,1608,1675,1741,1806,1870,1937,2005,2071,2145,2225,2307,2386,2464,2537,2599,2660,2724,2795,
+2869,2933,3002,3064,3125,3185,3252,3322,3401,3479,3550,3615,3679,3736,3786,3844,3906,3972,4036,4092,
+4144,4198,4248,4304,4355,4404,4453,4500,4562,4604,4662,4711,4763,4829,4878,4931,4977,5005,5043,5092,
+5142,5216,5276,5321,5376,5431,5491,5544,5596,5643,5689,5736,5809,5873,5925,5988,6035,6062,6068,6085,
+6120,6125,6134,6140,6133,6141,6152,6159,6161,6151,6143,6132,6124,6111,6109,6107,6102,6098,6102,6104,
+6107,6111,6118,6128,6130,6132,6132,6129,6123,6114,6108,6104,6103,6106,6111,6113,6118,6124,6133,6147,
+6164,6182,6199,6213,6226,6257,6299,6319,6316,6290,6237,6175,6156,6172,6145,6111,6100,6093,6096,6107,
+6108,6112,6115,6117,6127,6154,6190,6198,6182,6174,6159,6146,6148,6141,6122,6105,6070,6013,5927,5836,
+5751,5692,5652,5637,5621,5587,5550,5522,5506,5497,5496,5500,5522,5582,5664,5717,5721,5711,5702,5742,
+5786,5800,5804,5805,5809,5814,5812,5805,5758,5706,5664,5629,5609,5593,5582,5575,5549,5522,5499,5467,
+5430,5391,5337,5278,5219,5165,5104,5046,4997,4946,4899,4855,4814,4774,4736,4694,4657,4655,4620,4590,
+4554,4518,4483,4459,4446,4437,4425,4406,4382,4364,4350,4330,4314,4297,4274,4246,4232,4220,4204,4193,
+4189,4190,4186,4176,4157,4134,4125,4121,4115,4118,4106,4087,4065,4045,4037,4028,4001,3967,3928,3886,
+3842,3797,3759,3728,3702,3683,3664,3650,3664,3672,3654,3621,3574,3514,3460,3422,3393,3368,3342,3313,
+3278,3239,3197,3149,3098,3042,2978,2915,2859,2797,2734,2683,2650,2624,2605,2586,2562,2535,2510,2484,
+2465,2458,2458,2455,2451,2440,2425,2418,2426,2411,2380,2350,2332,2307,2283,2274,2259,2233,2207,2189,
+2188,2202,2200,2186,2170,2149,2119,2089,2062,2038,2014,2000,1986,1970,1957,1936,1909,1880,1846,1801,
+1760,1738,1738,1742,1744,1742,1739,1736,1738,1740,1744,1742,1723,1688,1660,1639,1617,1594,1575,1556,
+1543,1549,1571,1591,1591,1584,1567,1539,1505,1472,1434,1387,1335,1289,1253,1224,1199,1174,1146,1112,
+1069,1036,1014,986,948,912,893,881,866,844,824,811,803,796,779,751,715,689,677,668,
+666,668,667,666,657,639,613,580,553,508,467,439,416,390,360,338,310,269,223,182,
+138,97,57,11,-26,-61,-104,-133,-164,-209,-271,-348,-419,-468,-502,-527,-552,-577,-602,-618,
+-632,-638,-637,-639,-641,-639,-639,-640,-646,-677,-695,-703,-712,-724,-742,-748,-747,-743,-768,-832,
+-923,-1014,-1101,-1172,-1236,-1311,-1391,-1459,-1511,-1559,-1615,-1676,-1724,-1752,-1775,-1802,-1821,-1847,-1894,-1954,
+-2011,-2051,-2091,-2126,-2151,-2172,-2197,-2229,-2259,-2284,-2313,-2345,-2372,-2393,-2420,-2445,-2467,-2493,-2525,-2558,
+-2591,-2625,-2665,-2712,-2762,-2805,-2841,-2878,-2916,-2954,-2986,-3009,-3026,-3044,-3060,-3071,-3077,-3088,-3111,-3138,
+-3172,-3213,-3252,-3278,-3294,-3311,-3329,-3346,-3357,-3367,-3384,-3406,-3422,-3433,-3442,-3448,-3449,-3451,-3458,-3471,
+-3482,-3486,-3492,-3497,-3499,-3503,-3516,-3531,-3537,-3533,-3531,-3538,-3553,-3566,-3575,-3589,-3601,-3601,-3586,-3566,
+-3562,-3560,-3545,-3530,-3549,-3589,-3636,-3682,-3726,-3752,-3768,-3798,-3805,-3802,-3818,-3853,-3884,-3882,-3861,-3843,
+-3853,-3872,-3862,-3834,-3810,-3795,-3804,-3845,-3898,-3944,-3957,-3941,-3931,-3952,-3971,-3989,-3984,-3962,-3955,-3966,
+-3977,-3985,-3997,-4016,-4039,-4056,-4074,-4096,-4112,-4122,-4117,-4103,-4087,-4078,-4077,-4080,-4069,-4044,-4016,-3979,
+-3933,-3912,-3896,-3871,-3844,-3816,-3778,-3736,-3697,-3668,-3634,-3606,-3581,-3544,-3497,-3472,-3437,-3397,-3372,-3354,
+-3346,-3324,-3283,-3258,-3238,-3240,-3249,-3269,-3264,-3218,-3123,-3020,-2918,-2824,-2754,-2730,-2745,-2778,-2819,-2776,
+-2738,-2735,-2723,-2681,-2616,-2525,-2444,-2402,-2348,-2280,-2246,-2209,-2200,-2159,-2095,-1969,-1901,-1836,-1783,-1744,
+-1719,-1674,-1621,-1564,-1443,-1347,-1306,-1269,-1215,-1158,-1111,-1055,-1013,-971,-940,-923,-898,-874,-845,-813,
+-763,-740,-711,-702,-645,-593,-567,-518,-462,-406,-355,-302,-237,-165,-107,-50,-22,13,66,129,
+179,222,267,323,384,459,534,579,624,662,691,756,822,898,979,1018,1049,1103,1189,1222,
+1199,1189,1195,1211,1259,1302,1317,1354,1372,1385,1376,1397,1431,1432,1446,1452,1465,1436,1443,1460,
+1482,1517,1539,1558,1532,1521,1518,1506,1508,1498,1480,1475,1479,1479,1464,1444,1418,1395,1397,1412,
+1419,1437,1459,1480,1489,1486,1486,1499,1514,1527,1551,1586,1626,1647,1676,1705,1736,1756,1767,1763,
+1771,1776,1784,1794,1793,1789,1805,1830,1848,1856,1866,1869,1889,1900,1896,1900,1914,1915,1914,1907,
+1891,1881,1864,1845,1829,1822,1808,1789,1776,1762,1755,1745,1746,1779,1835,1884,1918,1951,1980,2008,
+2025,2050,2085,2133,2186,2235,2290,2342,2370,2374,2407,2396,2345,2302,2240,2159,2091,2112,2238,2305,
+2131,1889,1770,1704,1575,1464,1349,1244,1159,1095,957,808,693,594,542,559,632,741,833,889,
+913,918,917,918,900,868,837,810,790,779,771,758,737,720,692,649,608,591,574,557,
+504,427,345,292,266,257,259,266,271,264,253,231,199,167,135,104,83,62,42,25,
+12,4,-3,-11,-18,-23,-25,-21,-11,-2,7,22,44,72,104,132,156,176,192,204,
+220,237,255,267,277,288,294,299,303,308,311,312,312,309,307,312,319,321,330,338,
+350,362,376,395,413,427,432,441,454,480,529,590,655,736,813,881,963,1004,1028,1048,
+1088,1150,1212,1258,1286,1294,1298,1303,1309,1319,1330,1344,1364,1387,1412,1444,1465,1471,1480,1490,
+1502,1507,1508,1509,1512,1519,1522,1527,1541,1550,1553,1542,1533,1537,1555,1599,1653,1725,1746,1726,
+1688,1635,1587,1533,1477,1433,1402,1371,1332,1296,1266,1234,1209,1200,1206,1227,1267,1310,1330,1350,
+1380,1375,1360,1298,1178,1044,912,795,709,658,627,613,617,633,659,686,718,750,778,804,
+820,838,851,863,871,877,881,883,881,874,860,850,839,821,805,789,773,751,743,796,
+787,671,603,572,581,548,524,491,465,457,433,377,327,290,258,225,195,161,131,99,
+67,43,16,-12,-44,-79,-119,-158,-200,-246,-303,-365,-405,-410,-372,-271,-163,-88,-57,-54,
+-51,-84,-113,-130,-152,-177,-202,-244,-256,-294,-293,-323,-360,-334,-341,-334,-336,-404,-361,-405,
+-517,-532,-544,-522,-563,-609,-609,-610,-624,-661,-710,-721,-718,-749,-771,-786,-805,-815,-860,-904,
+-944,-987,-994,-1002,-1063,-1119,-1154,-1195,-1259,-1304,-1329,-1354,-1386,-1410,-1439,-1471,-1497,-1517,-1536,-1555,
+-1595,-1638,-1672,-1701,-1726,-1759,-1796,-1820,-1835,-1851,-1861,-1879,-1901,-1924,-1951,-1978,-1993,-2004,-2021,-2044,
+-2067,-2097,-2128,-2163,-2195,-2230,-2268,-2297,-2326,-2347,-2372,-2411,-2450,-2496,-2541,-2580,-2635,-2690,-2720,-2740,
+-2759,-2784,-2810,-2835,-2860,-2875,-2890,-2902,-2899,-2895,-2894,-2897,-2895,-2900,-2909,-2921,-2940,-2971,-2993,-3008,
+-3021,-3045,-3070,-3094,-3113,-3117,-3124,-3149,-3178,-3210,-3234,-3252,-3280,-3317,-3355,-3386,-3401,-3402,-3414,-3444,
+-3470,-3499,-3528,-3562,-3608,-3662,-3727,-3774,-3798,-3824,-3856,-3894,-3924,-3948,-3970,-3998,-4033,-4072,-4113,-4135,
+-4158,-4179,-4200,-4223,-4253,-4285,-4311,-4339,-4370,-4399,-4425,-4449,-4470,-4497,-4526,-4564,-4604,-4646,-4690,-4727,
+-4747,-4752,-4752,-4750,-4745,-4731,-4721,-4720,-4731,-4739,-4742,-4740,-4737,-4739,-4739,-4740,-4743,-4749,-4754,-4751,
+-4742,-4724,-4701,-4687,-4682,-4674,-4660,-4649,-4646,-4642,-4628,-4596,-4552,-4508,-4466,-4438,-4417,-4398,-4383,-4376,
+-4371,-4362,-4349,-4317,-4279,-4237,-4194,-4162,-4130,-4097,-4049,-3993,-3945,-3879,-3829,-3791,-3754,-3703,-3648,-3601,
+-3569,-3529,-3471,-3430,-3393,-3350,-3303,-3254,-3204,-3154,-3100,-3043,-2995,-2950,-2896,-2843,-2788,-2741,-2706,-2680,
+-2657,-2645,-2625,-2576,-2522,-2447,-2375,-2300,-2183,-2065,-1969,-1876,-1785,-1701,-1630,-1559,-1498,-1466,-1420,-1347,
+-1287,-1225,-1182,-1145,-1116,-1080,-1045,-1017,-1008,-1003,-985,-968,-947,-907,-856,-794,-710,-610,-495,-357,
+-199,-28,144,288,405,506,592,636,615,602,623,676,746,819,903,980,1055,1128,1201,1276,
+1359,1436,1507,1568,1635,1703,1770,1837,1906,1979,2045,2120,2201,2294,2387,2457,2532,2609,2663,2714,
+2784,2863,2925,2984,3043,3106,3174,3244,3318,3393,3461,3534,3594,3657,3721,3783,3853,3922,3986,4043,
+4094,4143,4192,4243,4297,4352,4401,4451,4492,4543,4595,4648,4701,4745,4790,4845,4891,4938,4986,5057,
+5109,5158,5207,5280,5352,5402,5452,5507,5566,5613,5656,5704,5756,5825,5875,5922,5985,6027,6061,6055,
+6078,6095,6097,6125,6119,6112,6121,6133,6136,6134,6128,6109,6104,6092,6090,6097,6096,6086,6088,6095,
+6098,6097,6096,6104,6111,6120,6127,6129,6125,6117,6114,6109,6106,6104,6110,6112,6116,6126,6140,6158,
+6178,6194,6213,6224,6242,6266,6304,6334,6338,6314,6252,6179,6142,6121,6118,6105,6103,6109,6116,6142,
+6139,6134,6135,6131,6130,6120,6135,6167,6203,6210,6212,6199,6180,6162,6133,6109,6076,6029,5953,5866,
+5803,5761,5732,5710,5689,5660,5614,5575,5544,5528,5521,5514,5518,5548,5593,5634,5658,5676,5690,5699,
+5748,5798,5822,5828,5828,5828,5816,5801,5793,5748,5688,5659,5638,5608,5589,5582,5573,5561,5520,5490,
+5474,5439,5394,5349,5297,5242,5191,5127,5059,5003,4955,4908,4864,4819,4775,4734,4694,4655,4660,4620,
+4583,4544,4500,4461,4434,4417,4400,4379,4354,4334,4317,4302,4285,4276,4277,4266,4237,4207,4191,4187,
+4184,4182,4174,4165,4163,4153,4127,4113,4111,4115,4123,4118,4104,4083,4063,4049,4027,3991,3959,3923,
+3885,3846,3803,3775,3744,3711,3686,3658,3632,3618,3611,3620,3606,3579,3536,3474,3428,3397,3371,3347,
+3325,3300,3267,3226,3184,3135,3083,3027,2966,2903,2842,2786,2737,2698,2672,2651,2628,2599,2567,2541,
+2515,2493,2479,2473,2467,2458,2444,2433,2425,2416,2406,2391,2375,2356,2325,2297,2288,2290,2281,2260,
+2244,2233,2238,2232,2210,2190,2171,2144,2112,2081,2051,2024,2004,1986,1970,1953,1933,1918,1905,1879,
+1840,1806,1788,1787,1787,1780,1766,1755,1748,1748,1743,1734,1731,1721,1696,1666,1640,1618,1607,1602,
+1591,1578,1576,1582,1582,1561,1532,1505,1470,1429,1385,1344,1309,1276,1252,1228,1199,1174,1153,1131,
+1097,1055,1013,981,944,901,865,846,835,813,783,765,763,768,765,746,714,679,658,645,
+646,658,669,667,639,613,586,558,534,511,487,462,422,379,337,309,285,256,220,181,
+148,111,75,40,1,-29,-72,-117,-156,-190,-237,-285,-337,-391,-445,-490,-529,-565,-596,-625,
+-647,-667,-682,-690,-694,-696,-700,-694,-693,-706,-739,-760,-775,-778,-778,-774,-764,-754,-754,-792,
+-868,-959,-1043,-1114,-1180,-1251,-1330,-1412,-1486,-1540,-1582,-1627,-1677,-1721,-1753,-1779,-1804,-1838,-1884,-1941,
+-2000,-2041,-2078,-2116,-2142,-2166,-2195,-2224,-2247,-2269,-2295,-2322,-2346,-2372,-2401,-2434,-2457,-2478,-2505,-2533,
+-2562,-2597,-2636,-2674,-2713,-2757,-2801,-2839,-2875,-2915,-2958,-2997,-3026,-3053,-3084,-3112,-3130,-3144,-3159,-3176,
+-3195,-3217,-3244,-3277,-3310,-3337,-3356,-3366,-3370,-3372,-3386,-3411,-3433,-3449,-3462,-3468,-3471,-3474,-3477,-3487,
+-3496,-3494,-3490,-3497,-3502,-3501,-3507,-3520,-3535,-3551,-3562,-3572,-3585,-3590,-3587,-3592,-3602,-3608,-3611,-3606,
+-3603,-3600,-3599,-3581,-3553,-3549,-3561,-3581,-3610,-3645,-3655,-3678,-3713,-3740,-3766,-3815,-3853,-3853,-3845,-3851,
+-3851,-3837,-3828,-3803,-3794,-3785,-3790,-3811,-3838,-3844,-3850,-3868,-3887,-3912,-3927,-3950,-3975,-4001,-4004,-3993,
+-3974,-3960,-3943,-3944,-3952,-3970,-3995,-4024,-4046,-4064,-4079,-4088,-4088,-4089,-4085,-4083,-4084,-4069,-4052,-4026,
+-3993,-3963,-3945,-3921,-3901,-3876,-3843,-3799,-3744,-3700,-3677,-3651,-3612,-3572,-3541,-3510,-3486,-3453,-3402,-3365,
+-3339,-3333,-3295,-3273,-3233,-3203,-3221,-3226,-3254,-3258,-3221,-3146,-3054,-2976,-2928,-2925,-2966,-3020,-2986,-2867,
+-2721,-2663,-2644,-2607,-2548,-2490,-2450,-2383,-2323,-2304,-2301,-2273,-2186,-2103,-2040,-1987,-1927,-1885,-1850,-1805,
+-1772,-1762,-1710,-1637,-1531,-1467,-1405,-1320,-1221,-1160,-1112,-1061,-1018,-988,-969,-961,-954,-946,-912,-865,
+-834,-799,-774,-738,-707,-656,-595,-549,-502,-453,-385,-314,-262,-213,-158,-111,-63,-39,2,60,
+137,185,250,296,338,389,444,496,552,589,622,672,707,766,851,912,978,1063,1141,1208,
+1265,1285,1316,1337,1342,1366,1392,1402,1405,1402,1417,1411,1402,1430,1441,1450,1450,1445,1456,1486,
+1504,1501,1491,1480,1505,1505,1492,1499,1504,1505,1507,1524,1518,1505,1476,1458,1451,1441,1434,1429,
+1427,1435,1445,1469,1494,1515,1513,1516,1522,1531,1539,1554,1546,1577,1611,1643,1694,1765,1781,1784,
+1792,1796,1796,1797,1804,1828,1836,1826,1833,1852,1875,1885,1891,1899,1905,1907,1907,1904,1893,1903,
+1914,1907,1900,1894,1887,1879,1867,1856,1838,1826,1810,1799,1788,1789,1807,1851,1905,1950,1992,2029,
+2052,2063,2082,2118,2179,2245,2300,2362,2436,2506,2471,2478,2454,2404,2316,2206,2138,2104,2119,2208,
+2199,2101,1978,1891,1705,1530,1363,1160,947,734,617,513,386,319,268,298,409,572,760,892,
+937,950,950,935,920,913,902,866,825,789,755,733,716,697,676,653,620,591,562,546,
+518,439,362,313,287,266,259,265,271,273,267,250,222,191,152,117,80,51,21,-5,
+-27,-43,-56,-69,-79,-90,-100,-101,-99,-92,-81,-67,-51,-24,9,44,81,113,138,161,
+181,196,216,237,254,270,282,294,305,314,325,334,338,341,346,350,360,367,374,382,
+393,410,427,444,459,471,480,483,487,483,492,520,565,618,668,718,771,796,808,846,
+904,995,1129,1239,1280,1303,1329,1328,1329,1345,1353,1365,1376,1391,1403,1417,1432,1454,1475,1489,
+1498,1507,1515,1522,1543,1558,1571,1585,1612,1643,1670,1670,1667,1691,1725,1739,1765,1783,1756,1718,
+1677,1627,1578,1529,1476,1427,1377,1358,1360,1351,1336,1320,1316,1322,1339,1370,1394,1397,1372,1338,
+1328,1313,1255,1182,1090,961,855,766,710,681,673,680,691,715,746,771,787,804,823,838,
+850,855,860,862,863,866,868,866,862,855,847,828,810,790,775,757,740,720,698,676,
+654,625,586,554,529,511,490,469,441,430,469,442,338,285,247,211,181,153,124,97,
+71,45,24,0,-28,-60,-93,-128,-165,-212,-267,-330,-395,-457,-505,-512,-435,-296,-180,-130,
+-111,-113,-136,-159,-177,-190,-195,-216,-273,-327,-332,-374,-374,-376,-423,-414,-402,-440,-455,-440,
+-466,-537,-604,-645,-642,-655,-695,-695,-706,-714,-730,-747,-785,-827,-806,-832,-869,-856,-876,-905,
+-934,-930,-1019,-1066,-1054,-1062,-1118,-1156,-1197,-1256,-1291,-1319,-1358,-1387,-1415,-1446,-1479,-1505,-1524,-1527,
+-1548,-1583,-1627,-1670,-1700,-1722,-1748,-1777,-1803,-1821,-1835,-1854,-1874,-1889,-1903,-1928,-1946,-1955,-1963,-1979,
+-2007,-2036,-2066,-2094,-2132,-2168,-2208,-2247,-2278,-2302,-2325,-2357,-2395,-2436,-2486,-2536,-2579,-2609,-2640,-2668,
+-2693,-2716,-2746,-2778,-2814,-2839,-2847,-2852,-2858,-2860,-2861,-2870,-2882,-2891,-2897,-2898,-2908,-2927,-2951,-2968,
+-2987,-3005,-3022,-3045,-3063,-3084,-3099,-3120,-3141,-3165,-3185,-3192,-3203,-3232,-3271,-3308,-3334,-3351,-3354,-3364,
+-3392,-3422,-3449,-3478,-3514,-3564,-3633,-3695,-3716,-3728,-3756,-3792,-3829,-3872,-3915,-3958,-4001,-4042,-4080,-4108,
+-4125,-4137,-4152,-4166,-4186,-4213,-4239,-4268,-4308,-4340,-4367,-4404,-4436,-4460,-4482,-4502,-4526,-4558,-4596,-4635,
+-4666,-4688,-4698,-4698,-4693,-4686,-4689,-4693,-4702,-4714,-4726,-4735,-4734,-4722,-4710,-4703,-4698,-4697,-4701,-4706,
+-4702,-4694,-4679,-4666,-4647,-4636,-4622,-4604,-4593,-4586,-4573,-4542,-4514,-4495,-4480,-4465,-4444,-4426,-4419,-4425,
+-4432,-4431,-4425,-4412,-4385,-4350,-4312,-4276,-4237,-4188,-4122,-4047,-3989,-3939,-3893,-3846,-3801,-3756,-3705,-3652,
+-3601,-3554,-3509,-3467,-3427,-3387,-3345,-3299,-3245,-3197,-3149,-3096,-3053,-3007,-2950,-2895,-2837,-2777,-2733,-2697,
+-2667,-2644,-2618,-2591,-2552,-2514,-2441,-2356,-2262,-2156,-2037,-1941,-1863,-1779,-1713,-1649,-1594,-1524,-1503,-1462,
+-1410,-1340,-1280,-1226,-1187,-1147,-1098,-1052,-1008,-986,-963,-947,-927,-902,-879,-851,-803,-730,-644,-534,
+-412,-278,-139,14,152,277,385,483,554,586,582,581,607,674,758,852,957,1044,1122,1198,
+1268,1340,1405,1466,1531,1591,1658,1726,1791,1861,1921,1999,2088,2184,2274,2359,2448,2522,2585,2646,
+2709,2774,2846,2919,2977,3039,3108,3178,3251,3323,3392,3457,3526,3597,3666,3730,3797,3871,3932,3992,
+4046,4097,4145,4189,4239,4292,4342,4392,4448,4505,4553,4604,4655,4705,4756,4802,4862,4915,4963,5009,
+5072,5133,5184,5230,5282,5339,5399,5477,5535,5572,5627,5689,5738,5800,5873,5904,5943,5980,5988,6027,
+6068,6086,6108,6130,6107,6096,6098,6104,6112,6112,6112,6116,6118,6103,6089,6084,6064,6061,6070,6069,
+6077,6078,6080,6088,6093,6096,6103,6114,6117,6116,6118,6119,6117,6116,6116,6123,6124,6130,6141,6160,
+6182,6194,6206,6225,6238,6248,6255,6261,6264,6255,6224,6171,6111,6069,6041,6037,6061,6102,6111,6142,
+6172,6164,6164,6154,6153,6139,6122,6132,6155,6188,6208,6213,6163,6121,6100,6079,6050,6016,5960,5888,
+5829,5809,5786,5762,5734,5701,5662,5618,5582,5556,5546,5547,5553,5571,5590,5604,5610,5614,5641,5671,
+5720,5785,5827,5838,5836,5828,5816,5799,5775,5747,5719,5689,5668,5646,5619,5600,5590,5571,5547,5536,
+5518,5495,5452,5436,5407,5362,5313,5248,5181,5103,5035,4974,4923,4876,4831,4787,4746,4701,4660,4651,
+4610,4567,4523,4484,4440,4408,4383,4357,4337,4317,4301,4292,4273,4249,4232,4224,4224,4211,4187,4161,
+4152,4166,4167,4158,4160,4153,4133,4111,4100,4105,4111,4112,4108,4101,4094,4079,4067,4054,4032,4008,
+3970,3918,3876,3831,3793,3763,3734,3705,3677,3647,3610,3587,3573,3558,3542,3524,3503,3464,3425,3391,
+3361,3337,3316,3291,3253,3217,3179,3132,3083,3026,2965,2907,2851,2799,2753,2718,2690,2661,2634,2603,
+2578,2552,2528,2511,2497,2477,2471,2467,2467,2463,2458,2446,2426,2405,2380,2353,2340,2344,2333,2323,
+2311,2298,2287,2265,2242,2220,2197,2175,2147,2117,2092,2075,2061,2044,2021,1995,1976,1958,1943,1929,
+1903,1874,1850,1827,1805,1792,1783,1774,1770,1766,1758,1752,1747,1730,1711,1702,1692,1674,1657,1641,
+1625,1606,1580,1551,1530,1514,1498,1483,1472,1452,1423,1388,1344,1300,1263,1240,1219,1186,1147,1108,
+1078,1057,1031,1002,981,948,900,857,835,813,778,742,721,708,702,701,701,694,674,653,
+636,623,623,627,609,581,558,541,526,528,519,487,440,389,345,306,277,256,235,206,
+169,134,102,67,27,-7,-39,-68,-111,-157,-203,-238,-277,-318,-368,-424,-472,-514,-555,-602,
+-642,-675,-700,-729,-741,-755,-760,-761,-762,-767,-788,-807,-826,-837,-833,-823,-803,-793,-771,-773,
+-839,-918,-999,-1080,-1153,-1224,-1288,-1350,-1420,-1489,-1549,-1603,-1653,-1691,-1719,-1746,-1780,-1819,-1862,-1913,
+-1975,-2032,-2080,-2121,-2147,-2164,-2187,-2214,-2237,-2259,-2284,-2305,-2323,-2347,-2382,-2423,-2462,-2485,-2505,-2532,
+-2562,-2591,-2622,-2656,-2693,-2731,-2770,-2806,-2843,-2882,-2922,-2964,-3005,-3038,-3069,-3105,-3143,-3183,-3217,-3237,
+-3244,-3250,-3264,-3284,-3310,-3341,-3374,-3397,-3404,-3399,-3398,-3414,-3443,-3470,-3492,-3504,-3509,-3513,-3516,-3518,
+-3530,-3539,-3522,-3502,-3498,-3501,-3505,-3518,-3531,-3547,-3573,-3593,-3603,-3609,-3610,-3606,-3602,-3605,-3608,-3612,
+-3617,-3623,-3630,-3645,-3638,-3610,-3571,-3551,-3545,-3555,-3574,-3584,-3582,-3608,-3647,-3683,-3721,-3742,-3768,-3792,
+-3809,-3806,-3814,-3842,-3861,-3873,-3869,-3867,-3869,-3865,-3836,-3832,-3828,-3828,-3850,-3888,-3923,-3944,-3955,-3967,
+-3976,-3972,-3963,-3941,-3907,-3886,-3886,-3904,-3925,-3954,-3983,-4011,-4033,-4059,-4073,-4076,-4079,-4078,-4065,-4041,
+-4017,-4010,-3998,-3976,-3945,-3916,-3889,-3858,-3816,-3757,-3707,-3677,-3651,-3609,-3576,-3540,-3505,-3496,-3454,-3401,
+-3373,-3359,-3322,-3271,-3248,-3225,-3192,-3214,-3218,-3247,-3262,-3236,-3162,-3063,-3006,-3021,-3082,-3133,-3103,-2951,
+-2791,-2676,-2584,-2538,-2510,-2495,-2460,-2409,-2386,-2316,-2269,-2227,-2214,-2191,-2128,-2074,-2019,-1959,-1859,-1813,
+-1797,-1758,-1740,-1693,-1622,-1580,-1508,-1417,-1320,-1260,-1217,-1177,-1135,-1092,-1060,-1027,-997,-975,-940,-914,
+-894,-854,-817,-783,-740,-681,-635,-593,-541,-487,-437,-387,-332,-276,-214,-153,-107,-63,-18,31,
+77,128,188,238,274,314,339,382,441,495,520,554,593,653,711,773,839,912,1002,1076,
+1108,1152,1203,1275,1316,1338,1363,1392,1407,1423,1431,1432,1408,1395,1409,1412,1416,1448,1473,1473,
+1482,1501,1514,1516,1493,1469,1472,1482,1506,1522,1530,1529,1525,1507,1500,1505,1497,1479,1470,1461,
+1460,1450,1443,1461,1468,1482,1504,1528,1540,1555,1569,1577,1584,1582,1566,1568,1620,1703,1753,1767,
+1773,1778,1796,1819,1836,1844,1843,1854,1856,1854,1864,1875,1878,1880,1886,1896,1906,1916,1922,1921,
+1917,1917,1913,1911,1911,1920,1920,1916,1899,1879,1863,1848,1835,1828,1826,1832,1862,1916,1965,2019,
+2062,2089,2099,2115,2160,2226,2293,2365,2457,2515,2526,2543,2537,2482,2373,2248,2190,2180,2177,2169,
+2158,2171,2150,2012,1851,1672,1471,1246,963,632,348,174,62,-16,-58,-57,23,175,407,708,
+935,1058,1107,1128,1093,1011,963,967,960,911,860,810,772,729,691,657,623,581,536,498,
+483,446,373,334,311,277,270,271,274,274,267,250,223,186,148,111,74,34,-2,-37,
+-65,-91,-111,-125,-133,-134,-128,-125,-122,-116,-107,-102,-103,-102,-88,-58,-23,19,60,95,
+124,148,167,192,218,242,261,277,293,306,315,326,341,355,369,384,396,408,420,431,
+441,452,466,486,508,526,541,549,556,556,555,551,562,596,632,665,692,714,738,778,
+841,914,989,1086,1163,1221,1279,1311,1333,1351,1377,1399,1411,1417,1430,1442,1454,1465,1481,1500,
+1507,1508,1521,1526,1535,1558,1581,1593,1614,1643,1707,1743,1754,1768,1802,1806,1803,1799,1777,1738,
+1695,1643,1587,1533,1484,1448,1432,1415,1387,1372,1377,1379,1378,1378,1389,1401,1405,1378,1359,1348,
+1311,1261,1170,1048,941,877,823,796,787,795,811,831,852,870,888,903,912,919,922,927,
+926,920,913,899,884,871,860,848,831,817,807,797,786,768,749,729,704,683,662,638,
+611,583,556,529,499,474,452,442,449,387,350,329,304,271,241,214,187,161,132,102,
+73,44,18,-6,-26,-52,-83,-113,-147,-189,-239,-292,-359,-421,-483,-545,-587,-586,-490,-344,
+-262,-224,-197,-192,-212,-234,-258,-257,-266,-316,-356,-405,-423,-440,-441,-480,-469,-469,-485,-529,
+-577,-594,-583,-661,-679,-657,-693,-739,-797,-755,-776,-804,-838,-835,-853,-896,-883,-909,-910,-918,
+-952,-968,-998,-1019,-1065,-1121,-1141,-1142,-1194,-1231,-1256,-1291,-1322,-1346,-1369,-1403,-1440,-1490,-1512,-1535,
+-1548,-1566,-1595,-1624,-1652,-1680,-1707,-1727,-1747,-1772,-1800,-1823,-1843,-1869,-1890,-1902,-1920,-1935,-1940,-1946,
+-1951,-1969,-2006,-2031,-2063,-2098,-2133,-2175,-2217,-2248,-2275,-2305,-2343,-2382,-2427,-2468,-2506,-2535,-2559,-2590,
+-2614,-2636,-2667,-2705,-2746,-2775,-2791,-2797,-2802,-2805,-2808,-2819,-2840,-2862,-2872,-2873,-2878,-2893,-2913,-2931,
+-2961,-2981,-2990,-3001,-3019,-3048,-3072,-3086,-3104,-3119,-3132,-3140,-3150,-3167,-3187,-3218,-3254,-3285,-3308,-3323,
+-3336,-3361,-3395,-3425,-3455,-3499,-3555,-3598,-3634,-3654,-3673,-3714,-3763,-3819,-3879,-3929,-3969,-4006,-4043,-4070,
+-4093,-4119,-4139,-4161,-4189,-4215,-4238,-4259,-4283,-4308,-4331,-4349,-4366,-4381,-4395,-4412,-4432,-4462,-4497,-4531,
+-4563,-4597,-4625,-4644,-4648,-4648,-4651,-4660,-4671,-4684,-4698,-4709,-4716,-4724,-4731,-4735,-4734,-4723,-4709,-4688,
+-4660,-4636,-4622,-4614,-4602,-4588,-4569,-4553,-4539,-4523,-4515,-4520,-4516,-4497,-4483,-4464,-4441,-4422,-4424,-4434,
+-4448,-4458,-4467,-4462,-4440,-4411,-4384,-4355,-4313,-4261,-4192,-4125,-4062,-4001,-3945,-3890,-3840,-3801,-3758,-3702,
+-3647,-3597,-3547,-3501,-3458,-3418,-3371,-3321,-3274,-3226,-3183,-3139,-3096,-3053,-2998,-2944,-2889,-2829,-2771,-2720,
+-2682,-2648,-2611,-2574,-2540,-2509,-2465,-2406,-2325,-2247,-2154,-2040,-1932,-1833,-1746,-1690,-1657,-1615,-1564,-1533,
+-1508,-1461,-1387,-1328,-1275,-1222,-1178,-1136,-1097,-1047,-1006,-990,-970,-936,-914,-901,-882,-834,-770,-688,
+-595,-492,-370,-250,-132,-1,111,216,316,403,476,538,583,612,674,753,846,957,1069,1154,
+1224,1286,1336,1387,1441,1495,1550,1613,1681,1750,1819,1901,1991,2079,2165,2253,2343,2423,2495,2568,
+2633,2704,2771,2836,2895,2960,3034,3106,3179,3255,3332,3401,3471,3543,3614,3675,3736,3798,3861,3924,
+3980,4033,4085,4137,4183,4233,4286,4336,4391,4442,4497,4551,4603,4656,4706,4768,4833,4890,4936,4980,
+5030,5097,5151,5192,5244,5304,5359,5420,5471,5520,5572,5618,5680,5742,5790,5841,5911,5962,5963,5986,
+6047,6056,6052,6067,6075,6076,6072,6080,6089,6091,6102,6106,6110,6107,6090,6091,6083,6086,6095,6089,
+6076,6069,6071,6071,6071,6081,6090,6105,6114,6114,6109,6108,6108,6108,6114,6119,6127,6135,6144,6158,
+6187,6184,6198,6198,6190,6188,6185,6191,6176,6169,6164,6143,6091,6006,5959,5956,6002,6069,6133,6163,
+6189,6180,6171,6172,6174,6166,6155,6154,6144,6146,6157,6167,6155,6096,6044,6004,5966,5916,5840,5801,
+5799,5814,5806,5772,5735,5707,5677,5645,5611,5582,5566,5569,5584,5601,5614,5618,5616,5614,5627,5675,
+5730,5781,5832,5853,5855,5842,5819,5799,5776,5758,5743,5711,5679,5654,5628,5604,5598,5592,5583,5551,
+5533,5523,5520,5510,5477,5442,5401,5340,5272,5206,5150,5077,5009,4941,4883,4835,4792,4747,4697,4651,
+4660,4606,4551,4506,4465,4425,4388,4353,4322,4305,4294,4287,4277,4261,4240,4214,4192,4184,4171,4151,
+4132,4126,4152,4161,4137,4118,4103,4091,4097,4114,4124,4134,4131,4119,4109,4105,4100,4090,4080,4064,
+4044,4012,3973,3926,3879,3846,3810,3773,3743,3714,3680,3638,3598,3564,3531,3501,3479,3478,3466,3466,
+3446,3413,3378,3350,3329,3290,3248,3209,3168,3123,3073,3023,2971,2912,2856,2805,2761,2726,2694,2666,
+2643,2619,2593,2569,2558,2543,2516,2503,2502,2509,2502,2491,2481,2467,2450,2428,2406,2391,2404,2390,
+2375,2367,2352,2330,2304,2281,2255,2229,2202,2176,2159,2151,2137,2114,2088,2061,2035,2012,1982,1952,
+1936,1923,1901,1876,1851,1823,1800,1781,1757,1736,1726,1721,1722,1721,1701,1676,1667,1660,1650,1641,
+1620,1585,1563,1559,1551,1539,1531,1520,1511,1501,1477,1440,1397,1353,1311,1270,1238,1205,1180,1154,
+1114,1077,1053,1026,1001,985,948,892,853,838,809,776,750,718,689,681,680,678,678,676,
+664,650,630,603,578,558,554,559,551,529,513,488,447,398,349,314,285,253,227,209,
+184,152,124,93,56,25,6,-14,-49,-83,-132,-183,-222,-257,-295,-353,-404,-454,-502,-549,
+-603,-656,-697,-736,-764,-797,-830,-852,-860,-858,-865,-868,-877,-882,-879,-864,-845,-813,-810,-821,
+-863,-920,-991,-1084,-1173,-1235,-1281,-1324,-1374,-1436,-1506,-1577,-1637,-1677,-1707,-1737,-1767,-1804,-1847,-1894,
+-1948,-2000,-2048,-2101,-2145,-2167,-2180,-2204,-2230,-2254,-2277,-2301,-2325,-2351,-2381,-2411,-2445,-2486,-2521,-2544,
+-2567,-2595,-2628,-2661,-2689,-2719,-2751,-2787,-2824,-2860,-2895,-2931,-2973,-3013,-3053,-3093,-3132,-3170,-3208,-3247,
+-3278,-3293,-3300,-3313,-3331,-3350,-3372,-3398,-3421,-3431,-3429,-3433,-3450,-3477,-3503,-3522,-3537,-3554,-3569,-3570,
+-3560,-3562,-3568,-3553,-3524,-3508,-3508,-3514,-3525,-3543,-3576,-3607,-3612,-3605,-3607,-3610,-3614,-3614,-3619,-3628,
+-3635,-3635,-3644,-3663,-3686,-3695,-3674,-3636,-3589,-3566,-3559,-3555,-3562,-3550,-3542,-3551,-3596,-3652,-3687,-3722,
+-3738,-3758,-3790,-3817,-3835,-3851,-3866,-3879,-3884,-3876,-3856,-3828,-3803,-3800,-3808,-3805,-3797,-3827,-3871,-3898,
+-3913,-3911,-3910,-3910,-3897,-3876,-3854,-3829,-3819,-3832,-3865,-3882,-3919,-3948,-3986,-4028,-4046,-4051,-4052,-4053,
+-4039,-4022,-4013,-4005,-3984,-3950,-3913,-3889,-3857,-3815,-3762,-3713,-3674,-3647,-3607,-3567,-3532,-3508,-3486,-3452,
+-3409,-3394,-3370,-3318,-3278,-3247,-3226,-3227,-3238,-3243,-3258,-3264,-3232,-3174,-3105,-3047,-3103,-3206,-3222,-3135,
+-2957,-2792,-2668,-2550,-2525,-2549,-2516,-2456,-2388,-2371,-2332,-2309,-2286,-2267,-2218,-2140,-2051,-1974,-1930,-1872,
+-1801,-1771,-1745,-1718,-1682,-1619,-1569,-1505,-1459,-1396,-1331,-1269,-1217,-1167,-1123,-1104,-1067,-1023,-962,-931,
+-925,-889,-860,-805,-759,-709,-654,-604,-558,-510,-471,-428,-385,-329,-268,-207,-155,-104,-44,8,
+65,115,162,209,246,288,318,358,411,471,514,539,562,595,639,689,739,797,857,919,
+997,1052,1110,1177,1239,1278,1330,1366,1392,1412,1430,1438,1435,1414,1409,1433,1444,1476,1483,1483,
+1489,1479,1496,1495,1483,1480,1490,1498,1502,1528,1553,1550,1543,1529,1530,1532,1527,1516,1526,1532,
+1513,1505,1487,1480,1486,1493,1503,1526,1552,1576,1608,1625,1630,1622,1606,1609,1597,1609,1620,1633,
+1628,1655,1705,1758,1786,1802,1805,1814,1820,1824,1827,1817,1824,1844,1866,1882,1892,1900,1900,1910,
+1914,1923,1922,1925,1931,1928,1935,1958,1949,1932,1918,1902,1884,1873,1866,1859,1862,1884,1932,1975,
+2027,2075,2105,2125,2150,2196,2256,2330,2409,2476,2524,2550,2552,2509,2431,2314,2245,2242,2257,2271,
+2259,2220,2205,2155,2051,1902,1729,1513,1246,877,497,202,11,-100,-168,-187,-157,-116,-61,39,
+207,457,750,985,1164,1258,1265,1215,1118,1011,935,884,851,815,768,725,674,629,588,520,
+476,445,388,319,280,270,264,261,263,266,261,241,204,163,124,88,50,9,-33,-76,
+-114,-145,-167,-175,-156,-109,-40,42,85,117,154,158,121,66,1,-47,-64,-62,-41,-1,
+37,72,103,132,163,195,221,243,267,288,306,324,341,357,374,393,410,426,442,457,
+467,477,489,505,527,550,572,590,604,612,616,615,613,626,645,676,712,739,760,788,
+838,902,957,1002,1047,1091,1137,1188,1266,1325,1361,1381,1397,1410,1420,1436,1453,1473,1489,1505,
+1524,1536,1542,1553,1563,1569,1576,1593,1617,1651,1702,1787,1810,1792,1794,1791,1783,1794,1785,1761,
+1739,1701,1650,1596,1548,1505,1472,1455,1445,1425,1405,1393,1381,1368,1361,1348,1321,1295,1247,1223,
+1192,1129,1049,952,882,846,842,863,895,933,967,995,1021,1042,1056,1056,1055,1050,1038,1025,
+1009,989,970,949,929,906,886,868,849,831,813,798,783,765,748,728,709,687,662,636,
+610,583,553,528,500,470,441,411,387,363,336,309,282,262,241,212,183,159,150,131,
+84,38,1,-22,-44,-71,-98,-126,-153,-187,-226,-275,-328,-379,-434,-490,-547,-600,-640,-641,
+-584,-483,-384,-329,-303,-302,-303,-307,-331,-339,-348,-388,-451,-472,-499,-512,-520,-526,-534,-553,
+-613,-647,-600,-653,-698,-650,-652,-705,-776,-822,-843,-839,-830,-850,-902,-913,-932,-938,-943,-987,
+-993,-999,-993,-1031,-1074,-1100,-1128,-1197,-1213,-1198,-1216,-1244,-1288,-1319,-1327,-1357,-1406,-1450,-1496,-1530,
+-1557,-1584,-1609,-1631,-1657,-1676,-1693,-1710,-1719,-1719,-1727,-1751,-1778,-1800,-1828,-1854,-1864,-1879,-1900,-1906,
+-1914,-1950,-1984,-2020,-2046,-2075,-2098,-2129,-2163,-2203,-2245,-2276,-2306,-2344,-2380,-2410,-2436,-2464,-2488,-2502,
+-2525,-2555,-2582,-2608,-2642,-2682,-2710,-2725,-2734,-2747,-2757,-2770,-2788,-2813,-2831,-2839,-2843,-2857,-2885,-2902,
+-2924,-2949,-2972,-2972,-2972,-2990,-3024,-3054,-3067,-3083,-3095,-3110,-3127,-3145,-3162,-3176,-3196,-3222,-3245,-3268,
+-3285,-3301,-3336,-3371,-3398,-3438,-3493,-3524,-3545,-3567,-3604,-3652,-3708,-3760,-3809,-3859,-3901,-3935,-3961,-3987,
+-4008,-4032,-4058,-4088,-4113,-4139,-4160,-4187,-4212,-4233,-4256,-4273,-4289,-4303,-4319,-4336,-4361,-4389,-4426,-4465,
+-4500,-4532,-4562,-4587,-4607,-4619,-4620,-4620,-4630,-4644,-4656,-4670,-4686,-4700,-4709,-4715,-4721,-4720,-4711,-4695,
+-4669,-4637,-4605,-4575,-4555,-4548,-4537,-4517,-4494,-4481,-4481,-4486,-4485,-4480,-4467,-4456,-4447,-4436,-4427,-4433,
+-4442,-4452,-4460,-4463,-4456,-4439,-4417,-4386,-4351,-4303,-4245,-4187,-4131,-4066,-4002,-3940,-3891,-3845,-3793,-3745,
+-3697,-3641,-3589,-3536,-3489,-3438,-3396,-3353,-3311,-3274,-3235,-3194,-3149,-3102,-3052,-2995,-2935,-2878,-2818,-2763,
+-2709,-2661,-2618,-2572,-2530,-2479,-2433,-2391,-2334,-2276,-2199,-2134,-2048,-1946,-1855,-1760,-1683,-1648,-1639,-1609,
+-1569,-1552,-1511,-1449,-1393,-1340,-1286,-1250,-1221,-1183,-1157,-1126,-1102,-1065,-1034,-1018,-987,-938,-896,-834,
+-764,-689,-584,-468,-355,-259,-163,-64,28,126,214,314,416,527,627,723,830,934,1034,1126,
+1216,1288,1334,1377,1425,1471,1507,1542,1588,1645,1708,1784,1871,1966,2058,2152,2238,2320,2384,2462,
+2549,2620,2690,2763,2827,2885,2946,3022,3088,3167,3253,3335,3409,3478,3548,3610,3665,3726,3786,3845,
+3898,3958,4013,4067,4120,4174,4227,4278,4330,4383,4434,4488,4543,4590,4645,4692,4739,4794,4861,4924,
+4969,5011,5073,5132,5184,5249,5310,5360,5419,5476,5524,5577,5624,5675,5731,5782,5817,5873,5902,5939,
+6007,6037,6060,6062,6045,6043,6052,6058,6057,6075,6082,6080,6081,6080,6069,6062,6069,6070,6063,6058,
+6051,6043,6040,6050,6054,6071,6090,6107,6115,6113,6105,6098,6092,6097,6112,6123,6123,6135,6147,6155,
+6151,6150,6151,6142,6125,6103,6080,6054,6037,6023,6020,6017,6013,6002,5982,5955,5948,5974,6031,6077,
+6118,6159,6165,6168,6175,6179,6176,6183,6163,6139,6112,6118,6121,6069,5992,5934,5884,5838,5790,5751,
+5756,5773,5789,5781,5753,5705,5668,5643,5627,5613,5605,5603,5608,5615,5617,5618,5618,5618,5634,5677,
+5745,5802,5838,5855,5852,5842,5819,5797,5778,5764,5763,5756,5728,5688,5654,5625,5603,5584,5568,5563,
+5562,5567,5557,5532,5503,5457,5423,5389,5348,5295,5243,5174,5106,5024,4949,4888,4834,4793,4750,4708,
+4660,4642,4584,4529,4482,4437,4400,4365,4334,4307,4285,4267,4260,4249,4245,4233,4213,4192,4171,4144,
+4120,4099,4100,4108,4102,4094,4072,4049,4048,4063,4082,4098,4112,4110,4097,4083,4072,4070,4072,4068,
+4047,4025,3999,3971,3942,3914,3881,3843,3811,3782,3749,3720,3683,3635,3583,3536,3500,3474,3448,3440,
+3460,3461,3431,3392,3371,3347,3316,3283,3245,3204,3157,3107,3055,3002,2945,2889,2836,2793,2756,2724,
+2699,2679,2657,2637,2620,2602,2587,2575,2560,2550,2546,2540,2529,2527,2524,2522,2510,2489,2474,2474,
+2468,2447,2445,2446,2422,2380,2342,2312,2284,2256,2232,2215,2201,2180,2161,2148,2125,2081,2041,2008,
+1974,1951,1934,1915,1891,1870,1848,1826,1803,1778,1744,1712,1691,1684,1678,1667,1649,1632,1617,1610,
+1613,1600,1571,1555,1564,1576,1574,1557,1533,1521,1509,1483,1442,1393,1341,1296,1257,1226,1203,1192,
+1175,1151,1129,1105,1064,1021,990,955,906,871,836,791,754,733,706,675,662,659,653,657,
+666,662,644,629,611,582,560,551,550,540,516,488,448,402,354,317,282,251,221,192,
+174,156,134,110,90,70,45,21,-5,-35,-68,-95,-135,-191,-250,-296,-342,-385,-433,-481,
+-536,-603,-668,-731,-780,-822,-863,-896,-918,-943,-957,-947,-937,-919,-900,-876,-841,-818,-789,-809,
+-878,-952,-998,-1060,-1142,-1206,-1247,-1289,-1338,-1397,-1464,-1535,-1611,-1667,-1699,-1734,-1775,-1806,-1843,-1889,
+-1935,-1987,-2030,-2070,-2117,-2162,-2188,-2203,-2223,-2248,-2274,-2298,-2318,-2349,-2391,-2427,-2446,-2464,-2488,-2529,
+-2575,-2609,-2635,-2667,-2703,-2727,-2749,-2776,-2808,-2842,-2877,-2915,-2960,-3005,-3046,-3086,-3126,-3166,-3209,-3249,
+-3284,-3315,-3341,-3359,-3372,-3381,-3394,-3416,-3441,-3464,-3479,-3490,-3501,-3512,-3530,-3553,-3566,-3575,-3591,-3609,
+-3612,-3599,-3581,-3566,-3557,-3548,-3541,-3542,-3550,-3564,-3584,-3608,-3625,-3626,-3624,-3621,-3626,-3639,-3652,-3653,
+-3660,-3683,-3707,-3723,-3740,-3756,-3762,-3740,-3711,-3676,-3649,-3627,-3598,-3565,-3551,-3527,-3539,-3597,-3653,-3683,
+-3708,-3716,-3758,-3794,-3818,-3839,-3852,-3852,-3845,-3827,-3798,-3793,-3779,-3769,-3766,-3765,-3755,-3747,-3750,-3766,
+-3800,-3835,-3830,-3822,-3832,-3828,-3816,-3801,-3785,-3775,-3786,-3796,-3806,-3841,-3844,-3878,-3951,-3996,-4010,-4016,
+-4022,-4024,-4017,-3995,-3974,-3972,-3957,-3927,-3897,-3857,-3809,-3756,-3710,-3676,-3640,-3582,-3541,-3510,-3491,-3477,
+-3467,-3452,-3408,-3376,-3351,-3332,-3301,-3275,-3266,-3268,-3269,-3263,-3250,-3217,-3195,-3144,-3112,-3233,-3306,-3260,
+-3126,-2950,-2799,-2674,-2653,-2693,-2673,-2574,-2474,-2414,-2381,-2359,-2296,-2250,-2200,-2127,-2053,-2002,-1949,-1922,
+-1894,-1860,-1818,-1773,-1717,-1653,-1592,-1539,-1512,-1457,-1398,-1350,-1295,-1224,-1173,-1140,-1104,-1042,-1010,-981,
+-944,-902,-863,-834,-814,-764,-689,-633,-598,-547,-508,-466,-418,-337,-272,-223,-177,-128,-88,-40,
+35,89,133,187,228,267,314,347,385,432,482,522,553,577,608,649,697,754,808,854,
+908,974,1031,1093,1161,1231,1296,1363,1412,1441,1440,1445,1446,1441,1435,1439,1453,1476,1499,1495,
+1477,1499,1470,1451,1459,1477,1500,1523,1541,1547,1561,1596,1596,1587,1570,1566,1568,1565,1563,1571,
+1560,1560,1556,1537,1524,1530,1538,1556,1575,1594,1619,1664,1693,1666,1655,1651,1641,1609,1575,1563,
+1570,1601,1643,1664,1689,1711,1724,1736,1745,1751,1768,1798,1792,1800,1814,1836,1856,1881,1895,1904,
+1914,1922,1923,1934,1948,1957,1967,1968,1955,1948,1944,1939,1929,1913,1902,1891,1890,1897,1923,1964,
+1995,2031,2070,2105,2123,2158,2220,2287,2368,2463,2528,2558,2601,2579,2527,2423,2341,2305,2314,2322,
+2321,2325,2284,2221,2175,2093,1969,1802,1622,1392,1042,638,280,33,-101,-155,-162,-100,-35,-17,
+-33,-57,-28,131,425,813,1141,1293,1313,1276,1199,1027,881,818,793,774,739,694,644,590,
+536,506,450,350,272,236,230,232,232,232,232,226,196,148,95,60,26,-10,-54,-99,
+-142,-176,-197,-189,-138,-23,180,384,498,510,493,469,462,466,468,412,292,164,53,-21,
+-34,-17,11,50,89,128,166,203,235,260,281,299,319,340,361,382,402,421,436,452,
+468,481,494,506,521,544,569,593,614,633,646,650,655,664,675,686,703,736,777,828,
+875,905,941,978,1016,1049,1085,1118,1164,1225,1294,1346,1380,1399,1416,1430,1444,1460,1477,1502,
+1531,1562,1600,1637,1652,1664,1680,1696,1717,1733,1761,1761,1789,1810,1801,1777,1762,1751,1753,1750,
+1756,1738,1699,1654,1608,1562,1516,1472,1443,1427,1414,1393,1352,1302,1266,1237,1208,1165,1132,1077,
+1030,982,921,888,886,910,944,975,1005,1038,1073,1106,1133,1155,1169,1187,1189,1185,1166,1147,
+1123,1097,1060,1031,994,957,921,889,860,832,810,790,770,752,733,713,692,666,644,622,
+596,568,538,506,478,451,421,394,386,364,314,282,253,228,206,187,159,128,107,106,
+95,34,0,-29,-57,-86,-111,-134,-165,-195,-228,-263,-306,-347,-389,-435,-487,-541,-597,-654,
+-700,-713,-667,-559,-447,-394,-392,-384,-386,-395,-420,-432,-452,-497,-547,-553,-568,-588,-594,-614,
+-664,-695,-691,-702,-670,-711,-694,-712,-770,-786,-814,-810,-865,-828,-878,-913,-951,-952,-958,-1001,
+-1053,-1072,-1083,-1072,-1091,-1098,-1141,-1162,-1206,-1242,-1253,-1235,-1253,-1269,-1294,-1303,-1347,-1409,-1451,-1495,
+-1538,-1575,-1612,-1639,-1664,-1682,-1692,-1700,-1706,-1709,-1707,-1713,-1724,-1738,-1746,-1766,-1790,-1809,-1805,-1828,
+-1862,-1878,-1920,-1964,-2008,-2041,-2067,-2096,-2123,-2161,-2204,-2246,-2284,-2318,-2343,-2366,-2388,-2415,-2431,-2444,
+-2457,-2478,-2511,-2535,-2552,-2572,-2604,-2637,-2653,-2664,-2686,-2710,-2729,-2749,-2767,-2781,-2789,-2792,-2815,-2846,
+-2864,-2884,-2904,-2898,-2905,-2924,-2948,-2984,-3021,-3045,-3065,-3082,-3096,-3116,-3136,-3157,-3175,-3194,-3223,-3242,
+-3255,-3274,-3302,-3328,-3350,-3381,-3432,-3468,-3479,-3492,-3535,-3587,-3640,-3693,-3744,-3788,-3832,-3866,-3892,-3916,
+-3945,-3971,-3976,-4017,-4044,-4058,-4081,-4102,-4124,-4146,-4167,-4191,-4210,-4235,-4262,-4284,-4304,-4334,-4364,-4395,
+-4425,-4456,-4486,-4517,-4542,-4559,-4574,-4585,-4592,-4598,-4608,-4622,-4635,-4650,-4667,-4680,-4686,-4686,-4683,-4681,
+-4672,-4653,-4621,-4591,-4569,-4555,-4537,-4517,-4487,-4472,-4470,-4473,-4469,-4462,-4455,-4449,-4450,-4455,-4456,-4457,
+-4460,-4461,-4460,-4464,-4464,-4454,-4432,-4397,-4353,-4307,-4259,-4208,-4156,-4101,-4042,-3980,-3915,-3860,-3813,-3764,
+-3724,-3687,-3639,-3581,-3530,-3477,-3423,-3379,-3342,-3301,-3264,-3228,-3188,-3142,-3091,-3035,-2975,-2916,-2856,-2798,
+-2746,-2697,-2645,-2591,-2537,-2487,-2433,-2387,-2336,-2286,-2231,-2167,-2103,-2052,-1981,-1906,-1822,-1751,-1698,-1683,
+-1655,-1623,-1606,-1576,-1513,-1456,-1406,-1352,-1329,-1313,-1278,-1246,-1225,-1204,-1165,-1132,-1102,-1060,-1009,-949,
+-889,-823,-746,-656,-542,-448,-377,-293,-198,-104,-11,89,191,301,415,538,660,784,912,1036,
+1154,1269,1362,1421,1477,1522,1539,1538,1549,1574,1612,1665,1735,1825,1927,2030,2121,2208,2283,2362,
+2443,2523,2604,2678,2740,2809,2870,2925,2998,3066,3149,3236,3317,3399,3470,3533,3592,3653,3708,3768,
+3825,3882,3937,3994,4045,4100,4155,4211,4267,4318,4369,4423,4480,4531,4581,4637,4690,4738,4793,4854,
+4913,4967,5024,5081,5140,5195,5250,5305,5361,5420,5466,5518,5578,5622,5681,5761,5817,5870,5906,5930,
+5940,5976,5997,6018,6031,6034,6029,6030,6039,6045,6050,6055,6059,6062,6063,6063,6058,6053,6052,6047,
+6044,6048,6041,6046,6061,6080,6093,6106,6116,6114,6107,6098,6090,6095,6096,6102,6111,6118,6125,6146,
+6175,6148,6139,6131,6104,6065,6047,6036,6027,6016,6007,6011,6019,6019,6026,6026,6012,5993,5981,5996,
+6039,6095,6123,6142,6156,6166,6186,6207,6188,6153,6117,6097,6080,6027,5968,5917,5874,5835,5810,5792,
+5784,5775,5767,5761,5740,5707,5662,5623,5604,5607,5618,5633,5639,5640,5634,5621,5606,5605,5625,5663,
+5738,5820,5859,5860,5848,5830,5808,5780,5778,5790,5779,5770,5760,5744,5715,5687,5679,5627,5576,5557,
+5562,5574,5562,5527,5486,5457,5420,5382,5351,5307,5277,5240,5180,5111,5037,4968,4903,4844,4791,4741,
+4695,4642,4632,4573,4514,4461,4412,4369,4332,4298,4272,4251,4235,4221,4214,4214,4222,4218,4196,4169,
+4139,4103,4079,4068,4061,4053,4040,4025,4007,3999,3999,4009,4022,4033,4038,4038,4035,4029,4026,4028,
+4027,4011,3994,3978,3959,3931,3901,3876,3853,3831,3806,3778,3745,3711,3676,3628,3582,3546,3507,3466,
+3448,3444,3433,3413,3391,3368,3350,3328,3299,3264,3220,3168,3115,3062,3009,2957,2907,2858,2819,2791,
+2770,2753,2738,2718,2694,2671,2651,2637,2630,2622,2611,2604,2600,2591,2586,2588,2594,2589,2569,2559,
+2542,2524,2506,2507,2503,2466,2408,2374,2350,2316,2292,2276,2257,2238,2215,2182,2151,2120,2085,2049,
+2030,2006,1974,1949,1924,1893,1866,1846,1823,1795,1768,1730,1700,1689,1681,1670,1660,1647,1621,1595,
+1580,1570,1560,1549,1549,1552,1552,1546,1530,1507,1497,1488,1468,1435,1392,1349,1303,1253,1191,1132,
+1103,1106,1126,1136,1120,1082,1033,991,953,911,861,814,782,756,728,696,662,633,621,622,
+617,610,608,608,602,585,563,547,532,508,492,471,448,412,372,332,304,278,234,188,
+152,129,108,97,87,71,62,46,19,-10,-33,-61,-97,-124,-173,-241,-302,-340,-379,-416,
+-473,-540,-610,-686,-760,-825,-885,-925,-954,-989,-1011,-1007,-977,-949,-923,-893,-866,-827,-788,-792,
+-836,-911,-978,-1047,-1129,-1203,-1241,-1272,-1317,-1374,-1450,-1525,-1584,-1635,-1684,-1724,-1763,-1803,-1840,-1884,
+-1929,-1971,-2027,-2077,-2121,-2158,-2190,-2214,-2237,-2260,-2280,-2300,-2328,-2363,-2400,-2434,-2460,-2481,-2499,-2512,
+-2539,-2581,-2621,-2654,-2689,-2724,-2752,-2779,-2809,-2841,-2875,-2912,-2951,-2994,-3034,-3072,-3115,-3154,-3195,-3243,
+-3286,-3321,-3354,-3386,-3418,-3441,-3447,-3453,-3463,-3481,-3508,-3529,-3547,-3570,-3588,-3600,-3615,-3626,-3632,-3644,
+-3654,-3656,-3646,-3627,-3615,-3607,-3598,-3596,-3604,-3617,-3630,-3640,-3654,-3669,-3676,-3680,-3679,-3682,-3680,-3680,
+-3686,-3689,-3710,-3747,-3782,-3811,-3834,-3836,-3829,-3811,-3792,-3763,-3736,-3691,-3612,-3559,-3526,-3523,-3600,-3679,
+-3708,-3737,-3753,-3773,-3803,-3838,-3845,-3817,-3808,-3818,-3808,-3786,-3780,-3766,-3765,-3771,-3762,-3741,-3726,-3715,
+-3693,-3691,-3721,-3734,-3716,-3713,-3748,-3752,-3736,-3717,-3720,-3735,-3739,-3729,-3754,-3774,-3773,-3826,-3908,-3967,
+-3988,-4006,-4018,-4018,-4001,-3983,-3974,-3962,-3937,-3900,-3863,-3818,-3763,-3722,-3684,-3629,-3572,-3532,-3496,-3486,
+-3475,-3469,-3463,-3443,-3400,-3382,-3353,-3321,-3294,-3288,-3283,-3287,-3268,-3247,-3223,-3209,-3195,-3236,-3345,-3344,
+-3256,-3106,-2948,-2825,-2766,-2819,-2855,-2776,-2626,-2496,-2444,-2402,-2340,-2260,-2198,-2128,-2080,-2039,-1998,-1957,
+-1928,-1891,-1850,-1806,-1732,-1688,-1647,-1591,-1553,-1531,-1487,-1424,-1354,-1293,-1230,-1184,-1155,-1115,-1067,-1016,
+-963,-911,-852,-831,-807,-773,-734,-686,-636,-577,-532,-486,-433,-375,-319,-267,-216,-150,-100,-54,
+7,66,117,157,203,251,293,347,387,428,468,499,528,555,576,606,646,696,750,804,
+856,911,969,1025,1081,1146,1219,1299,1371,1413,1432,1430,1440,1468,1493,1511,1527,1539,1519,1481,
+1481,1459,1454,1459,1468,1477,1494,1514,1534,1551,1564,1587,1600,1616,1604,1604,1601,1600,1604,1623,
+1612,1608,1609,1606,1595,1571,1566,1577,1586,1600,1622,1644,1685,1706,1678,1670,1679,1675,1631,1600,
+1586,1579,1564,1576,1608,1627,1640,1668,1701,1735,1770,1778,1776,1792,1825,1857,1868,1871,1876,1896,
+1912,1924,1933,1935,1941,1941,1941,1947,1948,1952,1956,1961,1957,1953,1941,1930,1918,1916,1929,1971,
+1998,2020,2048,2081,2114,2130,2160,2214,2284,2374,2485,2566,2621,2638,2622,2516,2427,2399,2402,2420,
+2437,2393,2298,2206,2167,2076,2020,1931,1853,1743,1482,1114,680,305,45,-87,-137,-130,-70,22,
+88,99,25,-82,-112,14,308,754,1156,1239,1206,1209,1194,1119,941,770,699,671,652,623,
+586,544,509,472,393,279,206,178,170,177,192,197,184,151,105,61,17,-22,-60,-97,
+-134,-155,-152,-115,-34,116,339,543,612,624,602,542,474,446,479,551,617,612,490,377,
+198,47,-13,-21,3,44,87,135,178,214,240,267,293,318,341,363,382,398,413,428,
+445,464,482,494,506,521,541,566,588,611,635,655,665,673,683,694,705,722,769,842,
+906,955,988,997,1010,1053,1083,1103,1125,1165,1219,1277,1335,1369,1394,1411,1430,1448,1473,1498,
+1533,1582,1638,1714,1796,1836,1867,1869,1858,1834,1797,1762,1735,1730,1721,1706,1694,1690,1697,1702,
+1697,1692,1677,1638,1594,1548,1504,1458,1396,1348,1318,1278,1233,1192,1155,1109,1054,1003,966,929,
+880,835,826,848,894,950,1003,1048,1088,1111,1128,1143,1156,1172,1193,1207,1211,1217,1221,1238,
+1278,1256,1183,1144,1101,1059,1004,957,911,867,831,801,777,750,725,704,682,660,638,612,
+586,559,529,499,469,434,402,370,342,313,288,252,227,206,186,162,133,105,78,49,
+26,4,-17,-44,-69,-99,-127,-153,-179,-214,-247,-278,-305,-333,-365,-403,-446,-490,-541,-598,
+-663,-729,-773,-778,-737,-607,-481,-450,-460,-476,-487,-490,-520,-533,-570,-642,-635,-646,-664,-684,
+-715,-721,-689,-668,-665,-678,-723,-782,-779,-822,-779,-790,-810,-855,-902,-884,-925,-962,-1002,-1016,
+-1064,-1095,-1125,-1159,-1163,-1163,-1170,-1192,-1209,-1223,-1250,-1279,-1293,-1277,-1283,-1286,-1297,-1341,-1380,-1408,
+-1447,-1495,-1549,-1591,-1617,-1639,-1656,-1672,-1687,-1692,-1691,-1693,-1694,-1702,-1708,-1721,-1729,-1743,-1750,-1760,
+-1792,-1824,-1874,-1919,-1963,-2002,-2029,-2057,-2092,-2126,-2161,-2200,-2246,-2288,-2320,-2342,-2360,-2376,-2392,-2407,
+-2418,-2433,-2448,-2460,-2481,-2500,-2515,-2530,-2564,-2597,-2615,-2646,-2674,-2695,-2709,-2719,-2725,-2723,-2723,-2752,
+-2784,-2806,-2812,-2817,-2815,-2826,-2873,-2910,-2940,-2976,-3011,-3038,-3054,-3068,-3085,-3102,-3129,-3155,-3174,-3186,
+-3203,-3234,-3258,-3287,-3305,-3328,-3366,-3401,-3411,-3426,-3467,-3522,-3579,-3632,-3686,-3726,-3755,-3782,-3818,-3846,
+-3871,-3900,-3927,-3954,-3980,-3978,-3990,-4012,-4045,-4059,-4072,-4093,-4112,-4140,-4168,-4202,-4234,-4258,-4288,-4321,
+-4350,-4377,-4404,-4434,-4461,-4485,-4504,-4520,-4538,-4555,-4569,-4575,-4582,-4597,-4615,-4632,-4643,-4649,-4651,-4652,
+-4651,-4639,-4620,-4598,-4575,-4556,-4536,-4522,-4505,-4486,-4472,-4468,-4466,-4458,-4445,-4438,-4437,-4441,-4448,-4454,
+-4461,-4461,-4456,-4447,-4435,-4419,-4401,-4381,-4352,-4318,-4274,-4225,-4177,-4126,-4070,-4016,-3973,-3915,-3852,-3799,
+-3758,-3718,-3672,-3624,-3572,-3529,-3481,-3434,-3390,-3346,-3303,-3261,-3217,-3175,-3131,-3079,-3020,-2961,-2907,-2853,
+-2790,-2732,-2677,-2623,-2569,-2514,-2462,-2407,-2355,-2304,-2256,-2209,-2154,-2097,-2048,-2003,-1955,-1903,-1852,-1801,
+-1760,-1717,-1676,-1654,-1629,-1589,-1540,-1494,-1449,-1413,-1398,-1378,-1340,-1303,-1295,-1253,-1219,-1169,-1108,-1058,
+-1004,-929,-855,-768,-665,-586,-510,-429,-319,-240,-171,-89,7,109,218,330,452,579,717,855,
+979,1099,1220,1328,1411,1480,1537,1572,1593,1604,1617,1633,1668,1723,1810,1912,2008,2092,2174,2253,
+2331,2413,2500,2579,2655,2722,2784,2852,2906,2967,3037,3113,3206,3291,3376,3454,3513,3574,3635,3697,
+3759,3819,3871,3917,3966,4020,4077,4135,4192,4251,4307,4357,4412,4462,4512,4563,4623,4682,4733,4783,
+4836,4909,4971,5025,5079,5136,5196,5252,5302,5350,5400,5453,5509,5557,5607,5659,5732,5788,5840,5898,
+5937,5946,6010,6038,6034,6029,6010,6005,6007,6015,6026,6038,6052,6055,6060,6069,6062,6068,6062,6045,
+6043,6045,6044,6053,6062,6077,6092,6108,6121,6129,6124,6118,6105,6103,6106,6110,6113,6115,6114,6122,
+6171,6190,6148,6135,6125,6096,6080,6066,6055,6042,6028,6024,6082,6124,6082,6078,6061,6051,6041,6030,
+6019,6052,6094,6121,6144,6155,6175,6192,6194,6168,6124,6093,6069,6020,5954,5921,5915,5904,5888,5869,
+5850,5825,5793,5754,5726,5700,5677,5653,5634,5628,5634,5645,5650,5649,5639,5621,5604,5614,5646,5696,
+5783,5851,5869,5867,5853,5839,5825,5824,5815,5804,5798,5788,5782,5785,5777,5734,5681,5655,5642,5609,
+5580,5547,5551,5542,5517,5482,5442,5409,5385,5364,5339,5290,5269,5210,5128,5057,4988,4912,4853,4793,
+4736,4685,4632,4637,4580,4519,4462,4413,4366,4323,4287,4258,4234,4214,4195,4184,4179,4181,4184,4174,
+4155,4133,4098,4069,4053,4036,4021,4009,3996,3979,3966,3960,3961,3964,3964,3966,3977,3988,4000,4011,
+4018,4014,3996,3989,3976,3953,3925,3902,3880,3863,3843,3825,3803,3773,3739,3704,3667,3621,3578,3542,
+3505,3476,3476,3467,3436,3405,3379,3355,3330,3295,3255,3207,3158,3112,3073,3037,2995,2943,2900,2869,
+2851,2838,2822,2806,2790,2761,2733,2711,2695,2686,2683,2682,2678,2674,2667,2655,2646,2630,2613,2610,
+2601,2576,2561,2547,2545,2539,2497,2454,2424,2391,2354,2329,2310,2297,2284,2256,2200,2148,2112,2080,
+2051,2033,2015,1984,1948,1919,1889,1856,1823,1787,1753,1729,1707,1692,1684,1674,1669,1664,1645,1623,
+1605,1589,1580,1578,1569,1555,1539,1517,1493,1472,1451,1431,1414,1384,1348,1316,1280,1239,1202,1162,
+1106,1050,1017,1017,1037,1056,1072,1067,1029,970,906,840,790,755,744,729,697,665,652,642,
+631,621,617,616,602,578,551,537,526,504,471,448,433,414,384,354,318,277,238,191,
+141,106,85,64,54,43,34,30,28,14,-19,-48,-73,-97,-132,-192,-263,-319,-364,-409,
+-448,-506,-572,-649,-728,-800,-873,-931,-978,-1017,-1042,-1047,-1032,-997,-954,-903,-862,-832,-816,-823,
+-864,-911,-984,-1046,-1105,-1184,-1249,-1285,-1317,-1369,-1445,-1522,-1578,-1619,-1667,-1718,-1755,-1791,-1835,-1882,
+-1935,-1981,-2027,-2073,-2127,-2181,-2221,-2246,-2263,-2282,-2303,-2324,-2350,-2389,-2437,-2480,-2511,-2538,-2554,-2556,
+-2559,-2572,-2592,-2626,-2669,-2710,-2744,-2775,-2811,-2850,-2885,-2919,-2960,-3002,-3040,-3072,-3105,-3144,-3182,-3220,
+-3265,-3304,-3337,-3376,-3416,-3450,-3473,-3489,-3503,-3512,-3519,-3543,-3567,-3588,-3621,-3653,-3671,-3690,-3702,-3704,
+-3710,-3718,-3717,-3709,-3694,-3677,-3659,-3653,-3666,-3680,-3691,-3699,-3704,-3709,-3720,-3734,-3750,-3755,-3748,-3752,
+-3758,-3768,-3769,-3762,-3772,-3808,-3850,-3884,-3906,-3908,-3904,-3892,-3872,-3847,-3789,-3713,-3616,-3559,-3551,-3596,
+-3648,-3688,-3706,-3745,-3779,-3805,-3822,-3835,-3862,-3864,-3872,-3874,-3865,-3859,-3850,-3840,-3831,-3828,-3804,-3775,
+-3730,-3691,-3661,-3662,-3672,-3672,-3659,-3674,-3682,-3651,-3636,-3635,-3666,-3683,-3679,-3691,-3722,-3733,-3754,-3821,
+-3888,-3934,-3965,-3992,-4006,-4008,-3996,-3977,-3965,-3946,-3911,-3867,-3817,-3775,-3741,-3702,-3657,-3591,-3540,-3494,
+-3484,-3471,-3465,-3439,-3435,-3414,-3386,-3366,-3344,-3323,-3310,-3309,-3296,-3260,-3227,-3216,-3209,-3247,-3354,-3370,
+-3329,-3255,-3140,-2995,-2930,-2978,-2976,-2882,-2742,-2604,-2499,-2434,-2367,-2286,-2236,-2181,-2130,-2103,-2072,-2042,
+-1987,-1953,-1918,-1871,-1814,-1765,-1727,-1695,-1653,-1611,-1558,-1494,-1425,-1364,-1302,-1240,-1194,-1158,-1126,-1078,
+-992,-928,-908,-876,-836,-798,-755,-712,-653,-587,-517,-483,-444,-400,-359,-319,-255,-199,-149,-81,
+-15,34,98,176,248,299,331,354,377,416,462,501,531,546,555,569,598,641,690,746,
+792,833,882,936,988,1039,1100,1172,1245,1307,1345,1412,1437,1424,1449,1499,1496,1499,1487,1475,
+1460,1457,1481,1514,1531,1530,1516,1524,1548,1558,1557,1559,1581,1602,1614,1611,1623,1632,1646,1665,
+1676,1659,1639,1654,1659,1645,1622,1606,1600,1600,1610,1639,1684,1733,1756,1719,1696,1690,1677,1647,
+1607,1579,1562,1565,1567,1579,1604,1623,1637,1657,1673,1693,1732,1774,1818,1824,1838,1842,1859,1869,
+1878,1892,1896,1906,1919,1932,1943,1947,1950,1956,1962,1966,1966,1964,1956,1944,1949,1948,1949,1970,
+2007,2033,2049,2076,2107,2139,2160,2184,2229,2300,2412,2528,2579,2617,2656,2611,2506,2485,2527,2520,
+2433,2359,2334,2275,2193,2055,1965,1895,1829,1707,1488,1191,874,531,214,-19,-123,-133,-79,19,
+116,195,224,192,109,27,19,126,332,627,845,920,938,958,988,966,894,743,601,557,
+545,534,511,479,448,412,361,252,171,141,143,156,160,148,115,77,38,0,-31,-51,
+-54,-32,21,94,182,261,320,379,442,449,420,412,415,412,391,359,395,479,572,614,
+585,510,332,133,20,-8,14,60,111,158,197,233,265,290,313,335,352,370,385,398,
+413,433,454,471,485,497,513,531,549,570,592,619,648,669,681,689,696,709,735,792,
+874,938,985,1014,1022,1021,1058,1103,1138,1164,1186,1236,1290,1337,1372,1401,1421,1446,1473,1512,
+1558,1620,1663,1742,1883,1892,1874,1887,1874,1871,1860,1818,1723,1667,1593,1525,1491,1500,1489,1464,
+1457,1454,1448,1442,1440,1417,1371,1313,1260,1196,1158,1133,1113,1070,1008,935,877,839,814,798,
+798,798,812,844,893,948,1003,1057,1098,1135,1160,1173,1185,1191,1196,1202,1200,1194,1190,1204,
+1245,1329,1301,1243,1207,1161,1137,1064,1017,964,915,850,812,783,791,724,681,651,624,598,
+570,544,515,487,458,430,399,370,335,300,270,241,211,185,163,136,108,77,50,18,
+-10,-34,-54,-76,-102,-132,-160,-185,-206,-236,-267,-297,-323,-346,-361,-352,-407,-460,-499,-543,
+-600,-660,-724,-787,-829,-843,-787,-649,-553,-548,-557,-560,-585,-604,-645,-675,-724,-696,-720,-761,
+-775,-781,-746,-723,-695,-700,-725,-765,-855,-897,-848,-833,-786,-806,-825,-873,-943,-973,-1000,-1004,
+-1063,-1108,-1149,-1157,-1176,-1207,-1208,-1211,-1210,-1231,-1254,-1273,-1310,-1313,-1316,-1315,-1310,-1292,-1306,-1326,
+-1355,-1381,-1420,-1471,-1517,-1535,-1566,-1604,-1629,-1644,-1653,-1651,-1653,-1664,-1676,-1691,-1704,-1712,-1726,-1749,
+-1774,-1805,-1847,-1886,-1925,-1961,-1988,-2017,-2047,-2086,-2124,-2164,-2196,-2231,-2271,-2306,-2330,-2348,-2363,-2376,
+-2393,-2409,-2420,-2430,-2441,-2458,-2483,-2494,-2511,-2533,-2554,-2579,-2610,-2640,-2655,-2660,-2668,-2671,-2664,-2665,
+-2694,-2725,-2746,-2747,-2743,-2753,-2783,-2820,-2853,-2897,-2939,-2974,-3005,-3035,-3039,-3049,-3074,-3105,-3137,-3158,
+-3163,-3175,-3192,-3216,-3241,-3258,-3281,-3315,-3342,-3365,-3410,-3470,-3519,-3571,-3620,-3658,-3687,-3716,-3745,-3772,
+-3797,-3828,-3857,-3886,-3905,-3926,-3943,-3963,-3980,-3997,-4008,-4013,-4024,-4051,-4082,-4110,-4136,-4162,-4193,-4222,
+-4261,-4297,-4329,-4360,-4389,-4414,-4439,-4460,-4476,-4492,-4512,-4526,-4541,-4557,-4575,-4589,-4601,-4614,-4626,-4630,
+-4630,-4622,-4605,-4585,-4565,-4550,-4535,-4520,-4507,-4494,-4480,-4471,-4472,-4464,-4456,-4449,-4446,-4445,-4447,-4451,
+-4454,-4456,-4452,-4439,-4422,-4409,-4395,-4377,-4346,-4310,-4274,-4236,-4198,-4166,-4128,-4082,-4028,-3978,-3933,-3879,
+-3825,-3778,-3730,-3683,-3632,-3578,-3529,-3485,-3435,-3386,-3340,-3297,-3256,-3214,-3171,-3129,-3080,-3024,-2963,-2900,
+-2841,-2784,-2722,-2667,-2612,-2552,-2498,-2445,-2394,-2341,-2290,-2241,-2197,-2149,-2098,-2060,-2030,-1995,-1954,-1915,
+-1877,-1826,-1771,-1728,-1706,-1679,-1651,-1609,-1564,-1538,-1520,-1505,-1477,-1432,-1399,-1386,-1357,-1307,-1246,-1168,
+-1092,-1019,-936,-858,-774,-700,-622,-545,-466,-373,-283,-197,-109,-20,73,174,288,406,521,651,
+787,924,1056,1159,1254,1351,1421,1481,1533,1569,1567,1551,1563,1613,1686,1781,1884,1979,2070,2152,
+2225,2302,2377,2455,2531,2611,2691,2763,2829,2899,2960,3020,3080,3157,3252,3335,3413,3486,3557,3618,
+3681,3743,3800,3851,3895,3937,3995,4051,4113,4173,4235,4293,4352,4407,4459,4505,4561,4605,4662,4716,
+4770,4816,4871,4941,5003,5072,5125,5187,5244,5279,5328,5377,5428,5476,5521,5576,5629,5692,5753,5832,
+5895,5916,5928,5998,6011,6007,6024,6011,6014,6026,6032,6034,6045,6051,6058,6056,6059,6043,6036,6042,
+6033,6036,6039,6053,6061,6073,6090,6103,6116,6126,6134,6134,6126,6121,6121,6119,6120,6114,6113,6124,
+6164,6204,6175,6167,6150,6131,6095,6088,6095,6062,6040,6027,6024,6030,6044,6053,6069,6084,6081,6068,
+6059,6050,6081,6120,6148,6166,6166,6169,6165,6157,6143,6103,6045,5986,5944,5922,5925,5926,5917,5902,
+5888,5861,5823,5780,5749,5729,5717,5703,5692,5683,5678,5671,5661,5648,5623,5603,5611,5664,5743,5799,
+5846,5880,5892,5883,5864,5846,5839,5830,5815,5806,5794,5790,5795,5803,5782,5763,5723,5676,5667,5655,
+5630,5603,5575,5558,5543,5509,5463,5431,5404,5387,5378,5356,5318,5266,5230,5159,5065,4983,4920,4879,
+4818,4750,4693,4637,4628,4580,4531,4480,4429,4378,4332,4289,4251,4224,4206,4186,4170,4160,4160,4162,
+4165,4157,4133,4105,4077,4054,4036,4015,3999,3988,3975,3965,3960,3958,3953,3946,3941,3953,3972,3987,
+4004,4001,3990,3979,3975,3977,3961,3948,3931,3911,3890,3870,3851,3827,3795,3756,3717,3682,3647,3612,
+3576,3546,3525,3502,3486,3471,3440,3405,3370,3324,3277,3229,3184,3145,3111,3086,3061,3026,2980,2938,
+2916,2903,2899,2885,2873,2859,2837,2809,2782,2767,2764,2762,2752,2752,2748,2739,2716,2699,2682,2670,
+2660,2643,2619,2605,2594,2590,2567,2527,2496,2463,2433,2408,2385,2363,2356,2324,2266,2211,2168,2129,
+2093,2056,2024,2003,1977,1942,1911,1873,1837,1805,1771,1744,1726,1706,1689,1679,1671,1664,1653,1635,
+1623,1607,1591,1585,1584,1571,1549,1528,1499,1468,1441,1403,1357,1319,1286,1253,1225,1200,1174,1141,
+1107,1071,1042,1017,996,982,977,987,1002,1003,968,907,850,812,769,730,709,690,681,677,
+660,639,643,654,631,590,563,539,519,499,483,469,447,419,389,353,329,303,267,220,
+161,117,87,66,57,51,38,19,5,-9,-32,-58,-83,-107,-138,-178,-233,-301,-358,-400,
+-451,-507,-559,-628,-700,-772,-846,-908,-965,-1017,-1059,-1060,-1040,-1025,-1011,-960,-900,-854,-868,-877,
+-888,-922,-986,-1057,-1110,-1170,-1246,-1302,-1331,-1372,-1439,-1523,-1594,-1638,-1674,-1717,-1756,-1791,-1836,-1888,
+-1938,-1986,-2043,-2088,-2130,-2187,-2234,-2258,-2280,-2308,-2329,-2349,-2380,-2421,-2465,-2508,-2549,-2588,-2620,-2636,
+-2635,-2633,-2629,-2635,-2664,-2703,-2734,-2768,-2804,-2841,-2884,-2922,-2953,-2996,-3046,-3086,-3114,-3140,-3175,-3210,
+-3245,-3285,-3325,-3357,-3390,-3430,-3471,-3505,-3528,-3548,-3563,-3570,-3581,-3607,-3645,-3684,-3713,-3736,-3761,-3770,
+-3761,-3758,-3767,-3773,-3775,-3775,-3769,-3760,-3758,-3765,-3772,-3775,-3765,-3762,-3771,-3786,-3802,-3808,-3809,-3814,
+-3827,-3842,-3849,-3861,-3856,-3838,-3838,-3863,-3895,-3932,-3959,-3971,-3965,-3948,-3919,-3870,-3791,-3684,-3600,-3600,
+-3594,-3605,-3648,-3672,-3697,-3748,-3791,-3822,-3866,-3910,-3930,-3919,-3911,-3899,-3893,-3891,-3885,-3885,-3878,-3868,
+-3848,-3824,-3785,-3738,-3711,-3693,-3676,-3659,-3647,-3640,-3606,-3599,-3611,-3606,-3624,-3625,-3637,-3659,-3681,-3728,
+-3760,-3801,-3869,-3938,-3975,-3988,-3997,-3994,-3970,-3946,-3923,-3895,-3866,-3835,-3803,-3769,-3738,-3685,-3629,-3578,
+-3525,-3477,-3469,-3462,-3439,-3434,-3435,-3420,-3407,-3393,-3374,-3350,-3333,-3303,-3263,-3221,-3199,-3226,-3344,-3386,
+-3371,-3331,-3245,-3084,-2984,-3062,-3063,-2959,-2810,-2656,-2543,-2473,-2416,-2353,-2292,-2239,-2198,-2172,-2122,-2067,
+-2042,-2021,-1975,-1910,-1868,-1845,-1797,-1746,-1717,-1678,-1633,-1562,-1491,-1436,-1368,-1305,-1280,-1236,-1175,-1117,
+-1033,-970,-949,-919,-881,-826,-776,-727,-680,-631,-563,-513,-463,-420,-379,-321,-279,-235,-177,-122,
+-55,8,63,111,182,260,318,373,413,445,472,514,549,591,601,597,594,610,646,687,
+731,780,824,869,923,984,1047,1109,1166,1203,1232,1285,1344,1376,1376,1383,1392,1409,1434,1458,
+1479,1505,1547,1595,1620,1609,1598,1562,1571,1577,1589,1581,1587,1605,1625,1637,1642,1655,1682,1697,
+1693,1703,1711,1712,1707,1711,1710,1695,1662,1632,1617,1612,1628,1699,1773,1830,1819,1758,1719,1697,
+1660,1615,1584,1566,1555,1556,1565,1584,1603,1624,1640,1675,1689,1721,1756,1789,1810,1829,1838,1847,
+1851,1853,1848,1852,1859,1878,1900,1917,1926,1939,1953,1956,1954,1957,1961,1966,1966,1966,1971,1974,
+1994,2038,2068,2094,2111,2135,2163,2186,2202,2240,2318,2431,2537,2592,2637,2637,2579,2549,2564,2561,
+2483,2407,2335,2272,2210,2089,1998,1890,1737,1526,1279,1008,776,567,316,65,-95,-127,-66,51,
+177,272,331,355,334,290,227,161,102,77,97,181,334,456,492,503,516,594,676,651,
+575,518,486,470,465,440,410,374,328,261,198,165,155,147,137,117,97,78,76,92,
+141,221,294,307,309,304,304,303,303,300,287,279,264,253,249,248,269,303,340,393,
+479,607,683,614,384,173,38,10,36,84,135,181,222,253,279,299,318,336,354,369,
+383,400,418,439,456,472,490,503,517,533,549,573,603,637,667,692,707,716,730,770,
+835,896,941,975,1000,1011,1015,1028,1058,1099,1144,1190,1231,1274,1310,1345,1387,1439,1492,1568,
+1658,1726,1766,1755,1791,1837,1856,1856,1851,1837,1819,1780,1719,1628,1515,1384,1272,1192,1166,1142,
+1116,1102,1117,1127,1123,1124,1091,1067,1058,1042,1018,961,921,896,862,826,797,779,777,788,
+813,847,876,903,937,968,1006,1046,1082,1115,1140,1158,1167,1170,1171,1170,1166,1164,1153,1146,
+1147,1173,1175,1177,1180,1192,1174,1144,1076,1033,1023,949,870,824,773,732,696,668,624,588,
+561,533,506,479,453,417,391,363,333,297,261,233,206,170,143,110,79,46,17,-13,
+-44,-75,-100,-121,-144,-173,-200,-224,-248,-270,-292,-322,-349,-369,-376,-402,-444,-473,-494,-520,
+-551,-596,-652,-716,-785,-853,-908,-896,-806,-695,-642,-605,-603,-644,-666,-701,-729,-764,-786,-776,
+-816,-825,-826,-811,-799,-791,-790,-807,-807,-874,-918,-866,-831,-823,-852,-874,-930,-968,-994,-1025,
+-1079,-1114,-1145,-1190,-1205,-1216,-1214,-1240,-1251,-1248,-1250,-1279,-1307,-1340,-1367,-1375,-1390,-1384,-1368,-1349,
+-1347,-1334,-1331,-1366,-1384,-1419,-1454,-1498,-1534,-1569,-1589,-1586,-1585,-1594,-1610,-1639,-1669,-1690,-1713,-1739,
+-1769,-1798,-1826,-1858,-1891,-1918,-1943,-1973,-2012,-2055,-2097,-2130,-2158,-2189,-2222,-2255,-2284,-2311,-2329,-2344,
+-2360,-2370,-2382,-2395,-2413,-2431,-2448,-2469,-2486,-2496,-2506,-2521,-2549,-2576,-2597,-2607,-2612,-2616,-2619,-2612,
+-2616,-2638,-2659,-2667,-2666,-2658,-2658,-2704,-2765,-2821,-2864,-2902,-2944,-2973,-3002,-3011,-3016,-3048,-3062,-3079,
+-3106,-3131,-3147,-3147,-3164,-3166,-3182,-3215,-3251,-3294,-3352,-3417,-3475,-3517,-3554,-3587,-3618,-3649,-3675,-3698,
+-3717,-3741,-3765,-3796,-3831,-3859,-3883,-3910,-3927,-3943,-3956,-3968,-3985,-4001,-4020,-4039,-4066,-4096,-4128,-4159,
+-4186,-4220,-4255,-4284,-4315,-4343,-4372,-4402,-4427,-4450,-4473,-4491,-4507,-4523,-4539,-4554,-4567,-4581,-4596,-4608,
+-4614,-4612,-4603,-4592,-4583,-4573,-4557,-4535,-4516,-4505,-4488,-4463,-4454,-4457,-4448,-4437,-4440,-4446,-4446,-4448,
+-4447,-4445,-4441,-4436,-4426,-4413,-4403,-4389,-4366,-4338,-4304,-4265,-4222,-4180,-4145,-4111,-4076,-4041,-4001,-3963,
+-3919,-3866,-3811,-3756,-3697,-3638,-3593,-3541,-3490,-3444,-3392,-3339,-3290,-3242,-3201,-3159,-3115,-3069,-3016,-2949,
+-2884,-2825,-2769,-2717,-2666,-2611,-2552,-2493,-2441,-2390,-2343,-2296,-2247,-2202,-2156,-2113,-2079,-2048,-2028,-1997,
+-1961,-1926,-1881,-1829,-1789,-1770,-1748,-1712,-1663,-1625,-1606,-1587,-1573,-1543,-1497,-1465,-1432,-1382,-1329,-1274,
+-1216,-1146,-1056,-961,-877,-794,-700,-621,-537,-469,-392,-303,-217,-127,-39,54,156,266,377,492,
+607,739,877,994,1099,1188,1272,1349,1419,1475,1515,1534,1531,1534,1575,1658,1763,1859,1948,2044,
+2137,2211,2276,2347,2415,2481,2553,2633,2714,2795,2874,2946,3007,3067,3130,3215,3288,3363,3442,3517,
+3591,3654,3711,3763,3812,3855,3901,3962,4028,4092,4152,4211,4267,4322,4379,4429,4479,4529,4582,4644,
+4696,4746,4791,4843,4900,4968,5042,5107,5164,5226,5277,5318,5365,5425,5483,5535,5578,5633,5706,5773,
+5832,5899,5947,5944,5950,5987,5999,5987,5984,5987,5993,6000,6003,6020,6041,6052,6061,6055,6034,6035,
+6032,6022,6035,6048,6060,6072,6081,6094,6108,6116,6117,6120,6120,6118,6116,6120,6125,6124,6124,6118,
+6141,6167,6167,6154,6155,6132,6108,6108,6144,6145,6074,6031,6012,6004,6009,6025,6046,6075,6095,6080,
+6055,6051,6058,6099,6145,6157,6157,6155,6145,6122,6105,6097,6079,6044,5990,5941,5915,5913,5918,5911,
+5906,5894,5869,5838,5807,5773,5735,5699,5680,5677,5679,5679,5686,5680,5662,5676,5711,5779,5857,5892,
+5901,5917,5913,5902,5885,5867,5855,5840,5834,5822,5800,5797,5796,5780,5765,5760,5742,5728,5709,5680,
+5670,5638,5611,5577,5555,5549,5544,5489,5425,5377,5348,5347,5320,5288,5273,5229,5159,5072,4981,4919,
+4857,4799,4742,4679,4628,4591,4546,4503,4462,4428,4390,4346,4298,4257,4227,4200,4185,4174,4164,4161,
+4162,4161,4159,4142,4116,4092,4068,4044,4023,4007,3998,3992,3989,3990,3982,3973,3961,3956,3961,3971,
+3972,3969,3968,3970,3970,3977,3981,3970,3962,3957,3952,3938,3919,3895,3867,3824,3781,3740,3702,3665,
+3631,3600,3575,3550,3534,3509,3486,3469,3430,3380,3331,3291,3242,3192,3144,3095,3057,3024,2993,2964,
+2942,2931,2931,2932,2934,2931,2924,2915,2896,2874,2864,2853,2841,2825,2808,2796,2783,2767,2746,2725,
+2706,2695,2677,2660,2653,2642,2620,2585,2553,2526,2497,2470,2449,2424,2400,2369,2320,2262,2215,2164,
+2115,2082,2055,2028,1999,1968,1939,1909,1873,1839,1810,1777,1747,1726,1709,1689,1674,1667,1665,1650,
+1635,1621,1602,1589,1584,1580,1576,1560,1522,1485,1432,1382,1346,1308,1259,1214,1171,1135,1106,1082,
+1063,1044,1017,998,985,979,976,968,952,935,918,891,851,808,788,776,751,718,697,694,
+686,663,646,648,632,600,572,551,517,500,481,463,445,420,379,340,309,282,274,255,
+201,142,101,75,54,40,31,13,-2,-23,-55,-85,-113,-138,-160,-191,-234,-289,-355,-418,
+-468,-512,-560,-620,-690,-759,-818,-887,-944,-999,-1052,-1065,-1049,-1038,-1022,-1008,-988,-956,-940,-928,
+-921,-923,-949,-1005,-1074,-1136,-1214,-1299,-1350,-1380,-1435,-1518,-1602,-1661,-1698,-1730,-1763,-1798,-1837,-1884,
+-1945,-1995,-2045,-2100,-2150,-2193,-2239,-2269,-2291,-2330,-2360,-2373,-2396,-2432,-2472,-2511,-2540,-2569,-2609,-2647,
+-2675,-2693,-2703,-2702,-2704,-2727,-2757,-2778,-2796,-2822,-2858,-2893,-2924,-2954,-2986,-3028,-3076,-3116,-3145,-3178,
+-3221,-3263,-3301,-3341,-3378,-3409,-3441,-3482,-3523,-3558,-3587,-3614,-3636,-3653,-3677,-3712,-3747,-3772,-3786,-3792,
+-3796,-3808,-3827,-3848,-3868,-3880,-3883,-3884,-3882,-3872,-3865,-3855,-3851,-3858,-3863,-3864,-3856,-3849,-3858,-3879,
+-3899,-3917,-3924,-3932,-3945,-3941,-3925,-3912,-3903,-3906,-3935,-3981,-4017,-4023,-4008,-3978,-3941,-3898,-3822,-3735,
+-3690,-3638,-3634,-3649,-3682,-3713,-3765,-3800,-3856,-3916,-3960,-3987,-3997,-3985,-3970,-3952,-3948,-3935,-3916,-3914,
+-3909,-3900,-3863,-3837,-3814,-3793,-3765,-3728,-3704,-3668,-3635,-3616,-3591,-3573,-3582,-3590,-3595,-3591,-3612,-3655,
+-3702,-3720,-3747,-3790,-3856,-3906,-3934,-3953,-3949,-3926,-3911,-3899,-3881,-3866,-3849,-3828,-3804,-3772,-3714,-3652,
+-3605,-3554,-3504,-3482,-3464,-3427,-3434,-3466,-3470,-3464,-3453,-3431,-3399,-3374,-3345,-3291,-3239,-3229,-3332,-3384,
+-3385,-3346,-3265,-3129,-3021,-3053,-3081,-2993,-2847,-2687,-2570,-2513,-2467,-2421,-2351,-2302,-2258,-2216,-2172,-2136,
+-2105,-2073,-2026,-1975,-1940,-1897,-1845,-1798,-1752,-1720,-1666,-1600,-1541,-1507,-1436,-1359,-1317,-1266,-1211,-1156,
+-1109,-1046,-993,-942,-899,-856,-793,-735,-699,-642,-597,-542,-495,-441,-389,-336,-290,-244,-207,-157,
+-106,-53,6,68,111,160,214,273,331,381,425,453,502,559,608,643,681,700,713,725,
+749,783,848,916,970,1020,1072,1107,1137,1165,1201,1242,1272,1296,1327,1361,1398,1433,1479,1519,
+1563,1593,1628,1655,1684,1721,1689,1620,1598,1619,1619,1615,1599,1606,1623,1642,1662,1676,1691,1705,
+1714,1740,1759,1785,1782,1806,1787,1777,1756,1712,1663,1646,1644,1643,1659,1714,1789,1824,1801,1765,
+1727,1670,1610,1576,1558,1550,1546,1558,1573,1594,1610,1634,1660,1671,1708,1760,1768,1779,1807,1833,
+1839,1845,1860,1874,1878,1880,1891,1876,1871,1886,1908,1918,1935,1950,1953,1959,1963,1963,1976,1989,
+1993,2013,2059,2107,2132,2142,2164,2196,2225,2236,2265,2332,2428,2533,2600,2622,2596,2626,2622,2574,
+2514,2439,2404,2356,2242,2139,2061,1910,1721,1463,1152,847,583,396,269,102,-82,-146,-78,72,
+221,351,444,492,507,494,453,406,339,267,170,75,-5,-30,-3,78,152,234,304,313,
+392,492,537,533,460,415,420,431,413,384,346,326,301,252,226,222,240,244,241,247,
+261,269,274,277,283,285,290,293,295,292,287,274,257,241,226,211,199,212,261,297,
+327,368,451,593,678,585,365,161,32,14,49,101,152,198,233,260,281,300,317,337,
+354,371,388,405,424,440,458,476,489,503,518,532,556,588,623,658,687,710,726,741,
+775,846,893,926,955,984,1016,1048,1074,1095,1135,1177,1222,1268,1280,1334,1426,1550,1650,1689,
+1726,1761,1780,1778,1762,1756,1756,1773,1753,1716,1652,1558,1450,1330,1203,1056,938,860,827,808,
+749,734,767,795,819,835,853,856,846,826,802,780,764,769,789,810,836,854,870,886,
+913,952,979,1003,1023,1041,1059,1076,1089,1098,1105,1111,1111,1111,1104,1097,1091,1083,1081,1078,
+1075,1069,1065,1058,1058,1058,1062,1070,1055,1023,1012,1019,927,858,820,764,727,682,650,605,
+568,539,509,478,446,417,386,367,335,291,256,218,182,150,114,82,49,18,-15,-47,
+-78,-111,-138,-164,-186,-215,-244,-271,-293,-313,-336,-356,-380,-406,-419,-391,-424,-504,-539,-558,
+-574,-599,-624,-660,-713,-777,-853,-929,-972,-931,-853,-723,-639,-612,-642,-690,-735,-777,-813,-838,
+-866,-875,-856,-852,-878,-865,-868,-840,-837,-889,-946,-921,-869,-846,-845,-886,-923,-957,-1006,-1053,
+-1087,-1113,-1153,-1202,-1234,-1266,-1278,-1279,-1296,-1313,-1305,-1297,-1304,-1334,-1376,-1393,-1404,-1419,-1416,-1379,
+-1371,-1376,-1377,-1374,-1340,-1336,-1353,-1362,-1418,-1468,-1489,-1508,-1526,-1543,-1562,-1589,-1623,-1652,-1671,-1689,
+-1721,-1750,-1788,-1808,-1839,-1871,-1905,-1935,-1966,-2008,-2056,-2098,-2127,-2161,-2197,-2229,-2261,-2286,-2303,-2311,
+-2317,-2323,-2329,-2339,-2349,-2363,-2386,-2408,-2423,-2434,-2444,-2450,-2465,-2491,-2513,-2533,-2553,-2559,-2557,-2556,
+-2552,-2559,-2580,-2595,-2597,-2599,-2609,-2621,-2664,-2725,-2783,-2826,-2860,-2886,-2920,-2948,-2984,-3013,-3031,-3032,
+-3030,-3036,-3059,-3061,-3081,-3084,-3089,-3116,-3156,-3203,-3261,-3326,-3387,-3437,-3482,-3518,-3550,-3580,-3608,-3633,
+-3657,-3680,-3700,-3724,-3753,-3773,-3797,-3821,-3839,-3860,-3884,-3906,-3929,-3952,-3969,-3988,-4007,-4030,-4058,-4089,
+-4119,-4155,-4190,-4213,-4230,-4259,-4286,-4314,-4347,-4378,-4406,-4439,-4464,-4483,-4512,-4537,-4549,-4558,-4564,-4571,
+-4576,-4579,-4575,-4573,-4570,-4565,-4558,-4544,-4525,-4511,-4497,-4482,-4466,-4460,-4463,-4455,-4451,-4453,-4450,-4449,
+-4450,-4443,-4436,-4424,-4417,-4407,-4400,-4393,-4381,-4362,-4334,-4300,-4264,-4229,-4193,-4154,-4111,-4070,-4039,-4012,
+-3977,-3926,-3878,-3828,-3773,-3720,-3666,-3612,-3556,-3499,-3443,-3395,-3345,-3293,-3246,-3200,-3155,-3112,-3061,-3002,
+-2937,-2880,-2828,-2780,-2726,-2672,-2618,-2560,-2507,-2453,-2399,-2345,-2299,-2253,-2207,-2168,-2135,-2108,-2087,-2062,
+-2032,-1994,-1964,-1934,-1892,-1852,-1808,-1790,-1770,-1731,-1694,-1664,-1639,-1616,-1578,-1527,-1482,-1438,-1407,-1373,
+-1339,-1280,-1187,-1073,-968,-871,-793,-718,-615,-527,-426,-325,-228,-134,-49,29,94,186,290,398,
+503,598,699,817,937,1035,1132,1225,1294,1366,1429,1480,1522,1554,1570,1605,1672,1757,1849,1943,
+2026,2106,2178,2240,2308,2377,2442,2513,2588,2671,2757,2838,2912,2978,3045,3104,3177,3242,3310,3390,
+3465,3543,3611,3671,3725,3777,3832,3889,3938,4003,4066,4127,4185,4241,4295,4351,4402,4451,4496,4544,
+4603,4668,4726,4780,4835,4889,4948,5010,5065,5134,5194,5244,5292,5343,5398,5462,5509,5562,5610,5678,
+5740,5808,5868,5900,5899,5979,5990,5994,5986,5980,5981,6001,6014,6029,6044,6048,6048,6050,6044,6046,
+6043,6045,6045,6054,6065,6077,6092,6098,6108,6114,6111,6107,6104,6101,6101,6105,6105,6114,6118,6121,
+6134,6134,6126,6134,6131,6121,6117,6104,6083,6068,6066,6053,6029,6011,6003,6009,6032,6055,6069,6072,
+6046,6021,6032,6055,6077,6125,6128,6122,6114,6095,6073,6070,6092,6107,6093,6052,5997,5960,5944,5922,
+5910,5907,5898,5875,5853,5829,5792,5756,5751,5783,5798,5820,5852,5868,5879,5882,5899,5935,5974,5978,
+5959,5949,5937,5916,5899,5882,5874,5868,5846,5839,5821,5805,5794,5777,5754,5733,5729,5725,5717,5708,
+5711,5675,5638,5599,5578,5563,5541,5513,5473,5434,5381,5343,5312,5290,5275,5259,5202,5145,5068,4976,
+4895,4824,4768,4705,4645,4591,4586,4541,4496,4461,4438,4416,4390,4347,4299,4254,4220,4199,4187,4179,
+4174,4172,4165,4156,4148,4136,4120,4095,4069,4047,4033,4026,4024,4023,4020,4008,3997,3991,3992,3987,
+3971,3963,3961,3969,3985,3995,3996,3990,3983,3977,3976,3978,3972,3961,3950,3924,3887,3839,3796,3753,
+3711,3668,3628,3591,3562,3533,3510,3496,3486,3466,3428,3373,3322,3269,3210,3151,3095,3040,2992,2953,
+2927,2914,2920,2937,2953,2967,2977,2985,2980,2968,2955,2940,2926,2905,2879,2845,2826,2813,2794,2776,
+2756,2743,2731,2711,2686,2667,2646,2622,2596,2573,2542,2514,2487,2452,2422,2390,2350,2303,2253,2199,
+2153,2123,2094,2069,2054,2029,1986,1943,1908,1875,1849,1818,1779,1743,1719,1704,1691,1679,1681,1684,
+1672,1642,1616,1603,1604,1607,1607,1602,1578,1522,1458,1397,1345,1304,1268,1220,1177,1143,1115,1085,
+1053,1035,1019,994,965,940,921,917,919,918,911,894,861,817,775,738,715,703,703,711,
+710,696,686,669,649,622,588,548,515,497,472,447,423,405,373,339,306,274,246,220,
+191,148,100,73,49,29,8,-17,-28,-44,-48,-67,-95,-124,-160,-204,-250,-310,-371,-422,
+-478,-538,-584,-628,-687,-741,-793,-850,-917,-978,-1036,-1069,-1067,-1039,-1034,-1029,-1014,-998,-996,-980,
+-952,-952,-963,-981,-1016,-1090,-1174,-1263,-1344,-1399,-1439,-1501,-1587,-1671,-1734,-1776,-1805,-1828,-1854,-1895,
+-1951,-2016,-2064,-2114,-2171,-2222,-2261,-2294,-2314,-2336,-2373,-2390,-2393,-2416,-2443,-2471,-2507,-2538,-2565,-2601,
+-2637,-2666,-2682,-2694,-2711,-2730,-2756,-2797,-2837,-2854,-2866,-2880,-2905,-2934,-2967,-2999,-3041,-3089,-3133,-3160,
+-3185,-3223,-3267,-3313,-3355,-3388,-3418,-3453,-3498,-3545,-3588,-3626,-3661,-3690,-3707,-3725,-3757,-3791,-3811,-3815,
+-3816,-3824,-3848,-3878,-3907,-3931,-3944,-3943,-3936,-3929,-3932,-3932,-3931,-3927,-3924,-3922,-3917,-3906,-3903,-3919,
+-3946,-3971,-3985,-3983,-3982,-3988,-3989,-3982,-3985,-3978,-3984,-3985,-3996,-4015,-4029,-4023,-3995,-3957,-3913,-3878,
+-3825,-3771,-3717,-3667,-3667,-3700,-3742,-3812,-3884,-3947,-4007,-4051,-4056,-4039,-4015,-4010,-4005,-3995,-3980,-3956,
+-3937,-3911,-3920,-3897,-3881,-3865,-3844,-3823,-3779,-3729,-3707,-3695,-3654,-3590,-3544,-3534,-3547,-3583,-3624,-3652,
+-3651,-3673,-3693,-3703,-3744,-3770,-3792,-3817,-3841,-3873,-3889,-3896,-3892,-3874,-3856,-3844,-3842,-3830,-3798,-3750,
+-3691,-3644,-3598,-3549,-3511,-3486,-3460,-3460,-3467,-3478,-3500,-3490,-3471,-3434,-3387,-3341,-3306,-3336,-3388,-3418,
+-3416,-3365,-3300,-3208,-3094,-3119,-3132,-3046,-2906,-2759,-2653,-2584,-2545,-2490,-2433,-2376,-2321,-2263,-2219,-2183,
+-2140,-2093,-2064,-2031,-1985,-1930,-1872,-1823,-1791,-1762,-1713,-1638,-1595,-1558,-1483,-1409,-1338,-1295,-1258,-1214,
+-1171,-1107,-1052,-990,-931,-887,-823,-761,-706,-655,-607,-561,-514,-465,-410,-366,-325,-281,-228,-189,
+-141,-90,-34,25,62,109,161,203,245,291,343,385,426,482,537,576,625,679,738,782,
+805,830,867,930,984,1036,1081,1117,1145,1206,1260,1317,1356,1372,1385,1403,1427,1462,1503,1550,
+1598,1634,1671,1707,1755,1783,1739,1699,1655,1638,1627,1629,1634,1611,1623,1661,1670,1680,1699,1714,
+1722,1748,1766,1779,1792,1822,1838,1822,1810,1791,1745,1710,1701,1688,1684,1665,1681,1724,1771,1794,
+1778,1743,1695,1632,1587,1554,1548,1544,1556,1561,1580,1602,1632,1667,1688,1704,1717,1727,1735,1744,
+1751,1773,1799,1823,1840,1850,1866,1883,1900,1900,1900,1899,1901,1910,1924,1943,1962,1971,1983,1992,
+2004,2012,2034,2073,2120,2155,2173,2191,2217,2246,2259,2301,2366,2447,2524,2575,2565,2609,2611,2597,
+2544,2517,2467,2430,2335,2217,2114,2007,1803,1456,1096,786,523,306,142,-14,-139,-198,-150,13,
+224,407,532,614,650,658,647,618,577,524,450,364,252,115,-27,-121,-156,-152,-92,-16,
+30,78,139,249,399,479,445,379,362,389,420,433,383,333,304,282,275,271,265,259,
+252,246,247,250,254,256,262,270,274,279,282,280,275,260,244,230,209,184,174,195,
+232,256,273,317,434,594,617,460,293,90,17,27,76,130,177,213,241,263,281,298,
+316,333,354,374,390,403,417,434,451,469,483,499,514,542,574,606,635,662,687,712,
+740,787,842,876,901,935,976,1026,1076,1137,1182,1217,1271,1326,1371,1409,1489,1602,1698,1745,
+1759,1756,1724,1684,1626,1574,1532,1498,1441,1366,1281,1179,1054,920,802,719,653,546,474,440,
+449,465,504,536,573,596,612,637,656,677,705,735,768,807,852,895,935,967,988,1002,
+1018,1046,1081,1083,1094,1106,1114,1119,1120,1115,1110,1102,1095,1084,1074,1061,1044,1021,1004,989,
+986,977,977,979,973,967,961,956,948,938,928,915,890,862,827,783,734,687,648,611,
+578,544,512,481,449,413,379,354,339,316,266,219,172,139,107,60,24,-11,-44,-76,
+-108,-144,-175,-196,-223,-252,-282,-312,-337,-362,-382,-402,-421,-441,-470,-498,-519,-541,-574,-561,
+-582,-642,-670,-692,-713,-751,-804,-868,-941,-1008,-1055,-1029,-947,-793,-704,-672,-716,-782,-842,-883,
+-901,-920,-912,-919,-920,-919,-915,-915,-926,-936,-1016,-1023,-981,-940,-890,-874,-900,-918,-976,-1017,
+-1041,-1083,-1112,-1147,-1197,-1227,-1247,-1283,-1280,-1279,-1292,-1323,-1326,-1333,-1362,-1385,-1387,-1385,-1369,-1377,
+-1362,-1394,-1430,-1390,-1359,-1356,-1333,-1327,-1335,-1350,-1357,-1382,-1411,-1456,-1492,-1531,-1570,-1610,-1641,-1662,
+-1696,-1731,-1753,-1773,-1793,-1815,-1843,-1872,-1910,-1958,-2013,-2058,-2095,-2126,-2159,-2185,-2222,-2244,-2259,-2276,
+-2283,-2283,-2285,-2291,-2308,-2317,-2326,-2339,-2347,-2355,-2362,-2369,-2372,-2382,-2403,-2430,-2450,-2474,-2496,-2508,
+-2501,-2496,-2507,-2523,-2539,-2548,-2567,-2583,-2600,-2641,-2695,-2741,-2770,-2803,-2846,-2881,-2908,-2929,-2939,-2953,
+-2966,-2973,-2981,-2986,-3010,-3013,-3014,-3041,-3076,-3117,-3170,-3233,-3303,-3364,-3412,-3452,-3487,-3521,-3553,-3577,
+-3597,-3620,-3641,-3653,-3667,-3693,-3715,-3725,-3750,-3770,-3787,-3827,-3860,-3881,-3892,-3913,-3940,-3963,-3994,-4027,
+-4058,-4086,-4119,-4147,-4170,-4179,-4190,-4229,-4275,-4305,-4333,-4360,-4385,-4413,-4448,-4474,-4503,-4522,-4541,-4553,
+-4564,-4570,-4574,-4573,-4570,-4565,-4560,-4553,-4546,-4537,-4524,-4510,-4496,-4489,-4487,-4488,-4490,-4486,-4474,-4465,
+-4460,-4455,-4448,-4441,-4428,-4415,-4406,-4395,-4384,-4372,-4356,-4332,-4307,-4278,-4245,-4209,-4171,-4135,-4101,-4063,
+-4027,-3979,-3916,-3869,-3825,-3777,-3731,-3679,-3621,-3565,-3513,-3459,-3402,-3349,-3300,-3256,-3209,-3161,-3112,-3056,
+-2998,-2942,-2887,-2834,-2782,-2726,-2673,-2621,-2572,-2516,-2465,-2414,-2363,-2316,-2277,-2240,-2204,-2173,-2144,-2115,
+-2093,-2062,-2026,-1992,-1950,-1926,-1893,-1856,-1826,-1804,-1777,-1742,-1703,-1665,-1626,-1583,-1514,-1436,-1396,-1401,
+-1395,-1352,-1289,-1203,-1085,-974,-901,-807,-694,-565,-418,-277,-191,-113,-25,37,114,154,234,328,
+426,509,588,683,785,893,1017,1134,1213,1285,1335,1397,1465,1532,1595,1642,1687,1737,1799,1874,
+1956,2028,2095,2160,2219,2277,2344,2414,2484,2560,2647,2730,2806,2878,2945,3012,3073,3135,3199,3274,
+3348,3419,3489,3559,3624,3682,3743,3800,3860,3922,3980,4037,4096,4155,4213,4273,4331,4385,4435,4486,
+4537,4593,4654,4724,4783,4831,4880,4935,5003,5051,5100,5154,5219,5268,5327,5392,5453,5507,5549,5593,
+5662,5732,5802,5862,5884,5889,5962,5979,5981,5974,5969,5968,5990,6008,6020,6029,6039,6030,6036,6053,
+6048,6036,6045,6062,6076,6079,6083,6087,6087,6090,6090,6097,6099,6096,6094,6102,6103,6114,6124,6130,
+6129,6137,6140,6129,6131,6135,6136,6173,6144,6104,6089,6075,6063,6043,6021,6017,6022,6040,6053,6069,
+6080,6066,6050,6050,6060,6082,6098,6085,6066,6046,6031,6032,6057,6094,6126,6138,6116,6073,6031,5993,
+5951,5916,5894,5881,5866,5855,5851,5855,5878,5915,5954,5989,6007,6017,6018,6023,6019,6030,6052,6059,
+6031,5999,5984,5965,5936,5904,5886,5874,5860,5838,5819,5799,5781,5773,5753,5730,5711,5703,5700,5690,
+5681,5661,5645,5625,5602,5589,5575,5546,5508,5473,5435,5397,5360,5318,5280,5249,5229,5196,5143,5059,
+4973,4894,4820,4747,4694,4640,4586,4615,4565,4522,4486,4457,4439,4425,4401,4358,4309,4267,4239,4219,
+4201,4193,4188,4182,4175,4173,4168,4159,4144,4118,4092,4072,4062,4052,4055,4057,4042,4031,4026,4022,
+4014,3999,3995,3994,4005,4015,4018,4022,4027,4024,4009,4002,4004,4002,3998,3993,3981,3951,3910,3865,
+3815,3771,3724,3674,3633,3597,3554,3515,3482,3462,3447,3440,3419,3379,3324,3261,3195,3126,3061,3003,
+2955,2919,2901,2910,2931,2961,2994,3023,3035,3033,3025,3014,2986,2955,2930,2909,2884,2853,2829,2809,
+2793,2783,2770,2748,2721,2698,2677,2651,2627,2601,2584,2571,2544,2494,2437,2398,2363,2317,2269,2229,
+2192,2169,2147,2107,2068,2037,1999,1960,1926,1894,1866,1836,1798,1768,1745,1724,1708,1696,1693,1697,
+1696,1682,1655,1635,1630,1630,1622,1605,1585,1557,1499,1425,1366,1323,1281,1240,1201,1169,1144,1120,
+1092,1062,1034,1009,985,955,924,903,894,889,880,871,865,855,835,799,753,703,669,660,
+670,668,657,644,629,608,587,558,513,480,457,437,418,401,385,358,323,290,246,198,
+156,119,93,56,31,12,-3,-30,-54,-65,-71,-91,-114,-141,-161,-176,-206,-250,-312,-380,
+-441,-491,-553,-616,-669,-709,-746,-794,-865,-944,-1011,-1058,-1074,-1063,-1049,-1044,-1044,-1049,-1048,-1026,
+-994,-978,-1010,-1036,-1053,-1102,-1186,-1272,-1348,-1413,-1456,-1501,-1565,-1641,-1725,-1795,-1835,-1858,-1879,-1907,
+-1958,-2027,-2091,-2138,-2183,-2236,-2283,-2316,-2328,-2334,-2365,-2402,-2411,-2412,-2437,-2461,-2482,-2519,-2549,-2578,
+-2612,-2635,-2647,-2666,-2691,-2720,-2742,-2763,-2793,-2829,-2853,-2870,-2889,-2917,-2949,-2982,-3010,-3049,-3100,-3147,
+-3188,-3221,-3249,-3282,-3326,-3373,-3414,-3450,-3494,-3538,-3575,-3614,-3658,-3692,-3716,-3733,-3753,-3787,-3820,-3831,
+-3833,-3846,-3865,-3882,-3900,-3925,-3945,-3952,-3960,-3974,-3983,-3982,-3975,-3970,-3967,-3961,-3956,-3949,-3936,-3937,
+-3963,-3992,-4008,-4012,-4015,-4024,-4033,-4042,-4058,-4067,-4058,-4053,-4046,-4028,-4010,-3999,-3986,-3942,-3917,-3893,
+-3890,-3884,-3858,-3831,-3785,-3783,-3773,-3792,-3846,-3925,-3994,-4076,-4104,-4105,-4096,-4078,-4057,-4044,-4050,-4053,
+-4028,-3981,-3949,-3916,-3907,-3870,-3832,-3814,-3808,-3778,-3749,-3730,-3697,-3636,-3591,-3579,-3545,-3527,-3539,-3580,
+-3606,-3609,-3606,-3611,-3626,-3636,-3668,-3678,-3699,-3717,-3748,-3805,-3848,-3855,-3841,-3822,-3818,-3817,-3806,-3785,
+-3761,-3728,-3689,-3639,-3592,-3551,-3522,-3502,-3489,-3485,-3513,-3532,-3509,-3473,-3427,-3389,-3368,-3390,-3431,-3478,
+-3502,-3462,-3386,-3318,-3252,-3194,-3146,-3046,-2946,-2839,-2747,-2697,-2648,-2583,-2518,-2453,-2393,-2343,-2280,-2240,
+-2197,-2152,-2093,-2044,-1998,-1966,-1925,-1881,-1845,-1805,-1754,-1692,-1644,-1617,-1550,-1491,-1433,-1366,-1308,-1249,
+-1202,-1178,-1110,-1036,-981,-911,-855,-802,-749,-696,-637,-586,-540,-482,-440,-392,-344,-298,-251,-208,
+-166,-128,-78,-21,28,77,129,178,219,265,309,357,396,431,467,505,550,594,645,700,
+753,799,842,888,939,994,1036,1074,1115,1158,1205,1251,1300,1355,1380,1406,1439,1471,1514,1559,
+1617,1663,1703,1738,1787,1808,1820,1786,1735,1694,1673,1653,1647,1637,1641,1656,1668,1688,1711,1726,
+1721,1741,1773,1797,1811,1819,1828,1844,1845,1844,1827,1793,1773,1768,1763,1746,1717,1716,1747,1776,
+1797,1790,1751,1714,1663,1605,1566,1544,1546,1556,1569,1584,1603,1620,1640,1675,1710,1729,1724,1728,
+1744,1756,1758,1786,1807,1808,1823,1843,1872,1875,1885,1900,1916,1948,1975,1981,1981,1972,1971,1983,
+1994,2014,2028,2055,2085,2130,2170,2205,2229,2256,2284,2302,2331,2392,2467,2530,2557,2550,2618,2581,
+2531,2536,2528,2516,2447,2337,2245,2098,1852,1551,1222,845,503,245,37,-126,-254,-309,-260,-117,
+110,346,528,653,729,778,798,782,760,725,682,622,539,430,291,147,16,-88,-192,-267,
+-256,-197,-120,-12,118,214,330,378,362,397,405,400,398,385,370,337,310,296,285,275,
+265,256,249,245,243,240,237,239,246,250,259,264,267,261,247,227,211,194,172,153,
+166,198,218,241,269,323,455,591,529,362,169,40,37,81,128,172,203,227,248,265,
+280,295,313,334,355,372,386,400,413,428,441,456,472,493,521,553,585,618,661,711,
+745,764,791,830,871,920,977,1041,1086,1118,1175,1239,1327,1446,1565,1614,1622,1666,1705,1722,
+1695,1642,1580,1478,1337,1194,1116,1033,920,822,733,658,598,540,482,434,386,354,321,296,
+280,277,293,343,401,466,531,592,654,715,776,827,872,912,948,982,1013,1043,1069,1085,
+1099,1115,1142,1142,1146,1156,1161,1161,1155,1147,1136,1118,1099,1083,1069,1055,1044,1022,996,972,
+949,936,919,910,900,888,877,866,855,848,835,826,808,786,770,745,715,682,642,604,
+571,541,512,478,446,413,376,342,320,331,328,229,183,139,101,61,21,-14,-51,-86,
+-125,-163,-198,-230,-263,-291,-320,-347,-378,-406,-429,-449,-468,-484,-506,-530,-559,-590,-621,-653,
+-661,-668,-661,-663,-738,-771,-806,-855,-905,-963,-1029,-1090,-1122,-1111,-996,-841,-757,-738,-770,-845,
+-893,-943,-986,-994,-984,-966,-980,-983,-966,-1013,-1049,-1050,-1052,-1029,-1053,-1032,-969,-955,-985,-1012,
+-1021,-1014,-1051,-1105,-1157,-1196,-1232,-1256,-1244,-1263,-1278,-1303,-1321,-1339,-1365,-1376,-1392,-1402,-1387,-1369,
+-1343,-1369,-1337,-1334,-1378,-1415,-1363,-1331,-1314,-1284,-1289,-1258,-1277,-1320,-1370,-1439,-1507,-1553,-1595,-1631,
+-1661,-1689,-1710,-1732,-1751,-1771,-1795,-1819,-1851,-1902,-1957,-2016,-2060,-2091,-2115,-2134,-2157,-2200,-2229,-2236,
+-2249,-2253,-2246,-2244,-2256,-2269,-2273,-2292,-2301,-2302,-2305,-2300,-2302,-2302,-2305,-2315,-2350,-2381,-2402,-2428,
+-2450,-2456,-2451,-2461,-2478,-2499,-2518,-2544,-2559,-2562,-2586,-2640,-2674,-2700,-2731,-2781,-2824,-2832,-2810,-2850,
+-2881,-2896,-2912,-2914,-2918,-2929,-2946,-2987,-3028,-3054,-3105,-3164,-3224,-3281,-3338,-3388,-3429,-3464,-3494,-3517,
+-3533,-3548,-3560,-3576,-3587,-3601,-3626,-3647,-3671,-3694,-3723,-3751,-3774,-3804,-3822,-3843,-3865,-3891,-3921,-3946,
+-3973,-4008,-4041,-4071,-4096,-4113,-4133,-4155,-4195,-4234,-4266,-4296,-4320,-4346,-4370,-4393,-4418,-4447,-4483,-4512,
+-4533,-4553,-4573,-4581,-4583,-4582,-4578,-4571,-4562,-4551,-4539,-4525,-4509,-4497,-4494,-4499,-4505,-4501,-4489,-4476,
+-4467,-4460,-4456,-4452,-4445,-4436,-4428,-4420,-4411,-4403,-4388,-4370,-4344,-4314,-4279,-4244,-4205,-4163,-4127,-4102,
+-4072,-4033,-3983,-3929,-3879,-3826,-3769,-3723,-3676,-3617,-3557,-3503,-3447,-3395,-3345,-3298,-3250,-3201,-3152,-3099,
+-3047,-2988,-2938,-2891,-2837,-2780,-2727,-2678,-2626,-2572,-2519,-2473,-2424,-2379,-2339,-2303,-2270,-2236,-2199,-2168,
+-2141,-2110,-2064,-2008,-1969,-1928,-1892,-1873,-1849,-1827,-1803,-1778,-1747,-1707,-1656,-1577,-1507,-1460,-1444,-1445,
+-1421,-1370,-1293,-1216,-1122,-1020,-947,-867,-739,-572,-400,-275,-174,-102,-42,28,88,140,220,337,
+414,466,520,577,656,749,864,1005,1128,1196,1253,1311,1375,1439,1494,1568,1654,1734,1791,1838,
+1892,1955,2023,2080,2139,2200,2260,2322,2385,2455,2529,2606,2677,2750,2835,2913,2985,3047,3109,3179,
+3243,3311,3378,3444,3510,3578,3641,3700,3759,3821,3887,3951,4014,4078,4143,4209,4266,4322,4378,4427,
+4480,4533,4581,4631,4701,4764,4804,4855,4909,4976,5032,5090,5148,5199,5255,5295,5345,5405,5468,5507,
+5575,5637,5697,5762,5824,5840,5858,5938,5960,5971,5973,5950,5966,5972,5983,5991,6002,6010,6012,6033,
+6037,6047,6051,6062,6076,6079,6076,6076,6071,6071,6065,6069,6086,6097,6097,6099,6104,6120,6123,6143,
+6140,6148,6154,6156,6153,6159,6157,6153,6147,6129,6107,6097,6082,6068,6046,6037,6035,6025,6034,6051,
+6073,6090,6101,6075,6065,6082,6078,6054,6042,6030,6021,6029,6044,6060,6081,6108,6125,6114,6092,6053,
+6011,5962,5916,5878,5859,5860,5880,5915,5966,5994,6034,6058,6075,6081,6079,6076,6066,6052,6060,6083,
+6076,6046,6029,6009,5982,5941,5888,5867,5858,5829,5804,5798,5786,5767,5747,5721,5704,5693,5684,5674,
+5665,5659,5643,5623,5603,5583,5577,5563,5538,5514,5493,5455,5417,5376,5332,5288,5255,5208,5166,5146,
+5094,4993,4904,4829,4771,4721,4670,4615,4650,4599,4555,4515,4487,4472,4454,4437,4411,4370,4325,4294,
+4273,4252,4239,4224,4214,4211,4208,4206,4202,4197,4163,4138,4122,4103,4092,4087,4088,4084,4079,4075,
+4071,4064,4052,4045,4040,4046,4051,4058,4063,4060,4053,4044,4031,4025,4032,4038,4039,4036,4010,3971,
+3920,3864,3814,3765,3716,3671,3625,3583,3540,3502,3469,3441,3420,3412,3394,3356,3309,3256,3194,3117,
+3042,2987,2953,2932,2929,2945,2974,3009,3041,3059,3061,3057,3038,3003,2965,2934,2909,2891,2859,2833,
+2816,2800,2792,2794,2781,2749,2724,2696,2668,2642,2619,2609,2602,2557,2487,2433,2396,2357,2310,2262,
+2227,2199,2166,2132,2098,2065,2029,1991,1962,1934,1904,1874,1839,1809,1786,1765,1749,1734,1716,1711,
+1714,1703,1687,1670,1662,1659,1645,1625,1603,1574,1542,1487,1413,1361,1330,1284,1240,1204,1174,1150,
+1124,1090,1058,1029,1002,980,959,932,914,902,883,864,850,834,823,810,791,765,732,688,
+646,616,603,592,572,555,538,523,503,476,442,408,392,382,368,346,309,265,222,183,
+145,121,90,67,40,13,-7,-37,-78,-105,-127,-144,-161,-180,-195,-213,-230,-251,-281,-319,
+-367,-419,-472,-526,-587,-645,-696,-749,-814,-894,-975,-1037,-1089,-1103,-1091,-1082,-1088,-1083,-1101,-1098,
+-1064,-1026,-1026,-1071,-1106,-1128,-1181,-1263,-1360,-1445,-1490,-1518,-1571,-1632,-1687,-1752,-1813,-1849,-1884,-1922,
+-1963,-2021,-2090,-2148,-2194,-2236,-2277,-2320,-2351,-2352,-2362,-2390,-2404,-2402,-2411,-2434,-2454,-2485,-2524,-2546,
+-2570,-2610,-2643,-2663,-2683,-2707,-2729,-2753,-2774,-2790,-2803,-2813,-2825,-2857,-2903,-2953,-3001,-3037,-3070,-3114,
+-3151,-3184,-3214,-3247,-3292,-3346,-3399,-3447,-3485,-3525,-3571,-3607,-3642,-3681,-3708,-3729,-3752,-3777,-3801,-3822,
+-3839,-3854,-3873,-3893,-3906,-3917,-3938,-3959,-3965,-3971,-3990,-4004,-4001,-3990,-3982,-3980,-3983,-3978,-3972,-3970,
+-3972,-3984,-4004,-4020,-4029,-4041,-4063,-4084,-4098,-4112,-4115,-4110,-4088,-4068,-4051,-4037,-3999,-3959,-3929,-3918,
+-3915,-3919,-3928,-3899,-3852,-3840,-3847,-3870,-3907,-3943,-4018,-4093,-4122,-4143,-4146,-4134,-4119,-4101,-4095,-4100,
+-4102,-4093,-4067,-4025,-3995,-3968,-3918,-3882,-3865,-3837,-3800,-3807,-3788,-3742,-3681,-3659,-3644,-3659,-3619,-3579,
+-3571,-3585,-3591,-3580,-3571,-3577,-3573,-3564,-3573,-3609,-3662,-3695,-3717,-3750,-3785,-3787,-3787,-3785,-3784,-3782,
+-3770,-3755,-3738,-3709,-3672,-3631,-3591,-3561,-3554,-3542,-3551,-3570,-3567,-3533,-3477,-3438,-3432,-3475,-3489,-3547,
+-3574,-3502,-3391,-3325,-3281,-3214,-3124,-3054,-2988,-2905,-2822,-2759,-2714,-2647,-2588,-2531,-2474,-2418,-2364,-2314,
+-2254,-2191,-2150,-2100,-2054,-2008,-1958,-1920,-1884,-1832,-1785,-1750,-1721,-1677,-1608,-1545,-1487,-1429,-1375,-1311,
+-1273,-1223,-1156,-1082,-1009,-941,-882,-802,-735,-693,-656,-618,-555,-492,-445,-381,-315,-260,-222,-187,
+-159,-123,-84,-43,6,52,100,155,203,248,299,350,396,437,470,506,544,583,621,660,
+713,761,796,839,886,930,983,1034,1078,1125,1176,1222,1268,1314,1363,1402,1437,1497,1546,1583,
+1618,1651,1703,1743,1774,1801,1825,1852,1819,1773,1740,1706,1672,1665,1673,1710,1740,1728,1752,1743,
+1748,1776,1798,1799,1810,1838,1840,1848,1860,1863,1873,1866,1855,1849,1853,1833,1812,1776,1772,1787,
+1780,1788,1796,1771,1730,1679,1626,1585,1558,1550,1564,1579,1591,1605,1622,1644,1670,1695,1720,1736,
+1749,1779,1797,1809,1823,1831,1837,1834,1835,1838,1851,1870,1888,1903,1918,1934,1948,1967,1992,2000,
+2007,2014,2030,2058,2090,2116,2150,2196,2233,2256,2287,2317,2334,2351,2396,2449,2509,2529,2544,2570,
+2540,2493,2454,2501,2466,2370,2232,2125,2018,1730,1266,876,566,301,65,-141,-278,-347,-328,-211,
+-25,199,441,631,739,809,855,884,889,874,847,800,752,685,591,479,363,250,152,21,
+-126,-243,-274,-253,-192,-112,-25,100,252,340,419,527,463,411,414,406,405,431,434,429,
+397,362,323,291,264,242,229,217,210,210,212,220,229,230,223,208,191,179,170,156,
+145,148,171,205,237,262,301,385,545,567,395,211,74,62,102,144,179,205,223,236,
+248,261,278,296,316,337,356,373,389,404,417,434,445,466,501,544,583,627,680,733,
+773,794,824,865,908,950,1026,1086,1154,1239,1230,1278,1351,1456,1567,1617,1632,1648,1642,1598,
+1525,1414,1292,1168,994,758,563,465,404,349,313,289,286,265,257,247,234,220,218,225,
+250,291,346,410,475,554,632,706,769,826,878,928,968,999,1026,1048,1069,1087,1106,1119,
+1132,1151,1173,1181,1175,1175,1184,1180,1174,1163,1150,1133,1114,1094,1075,1059,1041,1025,1007,991,
+960,934,910,889,869,845,825,808,784,763,748,740,733,722,701,681,657,633,606,576,
+548,518,488,457,424,394,365,332,297,264,238,209,169,141,106,59,21,-15,-50,-88,
+-125,-165,-206,-243,-276,-307,-339,-373,-403,-435,-466,-496,-515,-537,-557,-575,-595,-620,-650,-682,
+-709,-741,-769,-795,-799,-761,-803,-857,-901,-927,-947,-1044,-1121,-1172,-1181,-1128,-1045,-921,-823,-791,
+-820,-898,-961,-1000,-1040,-1060,-1047,-1055,-1041,-1064,-1081,-1097,-1084,-1079,-1065,-1067,-1111,-1101,-1072,-1071,
+-1053,-1075,-1096,-1112,-1146,-1179,-1214,-1209,-1214,-1249,-1246,-1274,-1294,-1334,-1354,-1367,-1392,-1405,-1407,-1393,
+-1374,-1358,-1364,-1371,-1343,-1328,-1316,-1379,-1403,-1357,-1333,-1300,-1274,-1289,-1316,-1354,-1410,-1457,-1479,-1525,
+-1570,-1607,-1637,-1658,-1687,-1720,-1743,-1770,-1803,-1850,-1904,-1955,-2001,-2039,-2069,-2090,-2113,-2148,-2178,-2186,
+-2200,-2216,-2219,-2212,-2211,-2222,-2232,-2230,-2240,-2246,-2245,-2246,-2248,-2253,-2242,-2241,-2252,-2272,-2305,-2341,
+-2369,-2392,-2395,-2393,-2409,-2431,-2454,-2480,-2502,-2505,-2507,-2531,-2569,-2600,-2629,-2665,-2699,-2729,-2726,-2742,
+-2793,-2838,-2866,-2871,-2863,-2865,-2888,-2936,-2979,-3009,-3055,-3099,-3151,-3206,-3247,-3287,-3332,-3376,-3406,-3430,
+-3451,-3470,-3482,-3492,-3508,-3524,-3547,-3575,-3600,-3626,-3651,-3677,-3704,-3727,-3745,-3771,-3793,-3817,-3842,-3869,
+-3893,-3928,-3967,-3993,-4020,-4047,-4069,-4093,-4122,-4149,-4180,-4212,-4240,-4266,-4291,-4317,-4351,-4378,-4398,-4430,
+-4462,-4491,-4516,-4531,-4545,-4555,-4558,-4555,-4548,-4533,-4521,-4509,-4498,-4490,-4485,-4486,-4493,-4497,-4492,-4483,
+-4471,-4462,-4461,-4460,-4460,-4460,-4457,-4448,-4437,-4429,-4424,-4415,-4399,-4373,-4340,-4303,-4259,-4213,-4173,-4135,
+-4106,-4074,-4036,-3988,-3934,-3877,-3822,-3766,-3708,-3656,-3600,-3541,-3482,-3423,-3373,-3324,-3276,-3228,-3181,-3126,
+-3074,-3022,-2974,-2927,-2885,-2837,-2778,-2719,-2664,-2618,-2571,-2523,-2475,-2430,-2388,-2354,-2321,-2292,-2264,-2232,
+-2196,-2158,-2110,-2043,-1940,-1871,-1815,-1776,-1784,-1794,-1776,-1730,-1693,-1667,-1648,-1623,-1565,-1535,-1505,-1476,
+-1430,-1362,-1286,-1204,-1133,-1050,-964,-874,-753,-616,-490,-384,-278,-188,-125,-62,6,72,164,294,
+407,493,552,594,630,678,754,880,1005,1087,1143,1205,1274,1337,1382,1437,1523,1613,1713,1814,
+1868,1908,1958,2014,2075,2130,2180,2231,2289,2356,2426,2500,2580,2654,2724,2795,2875,2953,3025,3086,
+3160,3227,3292,3350,3408,3469,3532,3594,3656,3716,3782,3849,3917,3982,4047,4115,4184,4248,4312,4376,
+4434,4489,4540,4584,4625,4678,4727,4775,4827,4878,4936,4993,5039,5087,5147,5213,5268,5316,5364,5411,
+5478,5521,5594,5666,5738,5800,5805,5823,5867,5903,5929,5931,5961,5985,6003,6005,5989,5991,6002,6008,
+6030,6043,6045,6048,6062,6079,6082,6087,6090,6083,6080,6080,6084,6095,6104,6105,6113,6119,6125,6137,
+6150,6163,6170,6174,6176,6180,6176,6171,6162,6149,6124,6105,6098,6088,6065,6050,6043,6040,6036,6037,
+6046,6066,6081,6099,6091,6065,6054,6047,6027,6028,6039,6046,6059,6057,6046,6039,6044,6058,6051,6028,
+5995,5956,5919,5892,5878,5875,5887,5923,5983,6047,6089,6112,6126,6131,6125,6106,6076,6050,6041,6054,
+6070,6065,6051,6031,6013,5979,5941,5900,5854,5815,5792,5775,5764,5766,5755,5731,5704,5688,5677,5664,
+5650,5650,5654,5641,5599,5575,5562,5552,5538,5529,5527,5528,5520,5485,5433,5383,5306,5245,5184,5151,
+5157,5105,5023,4933,4850,4784,4745,4697,4650,4658,4614,4578,4546,4517,4493,4471,4448,4429,4406,4372,
+4339,4315,4297,4284,4271,4254,4245,4239,4237,4237,4231,4212,4202,4191,4172,4154,4148,4146,4143,4140,
+4136,4132,4125,4116,4105,4094,4093,4097,4101,4103,4106,4104,4097,4084,4072,4067,4061,4069,4064,4036,
+3999,3948,3901,3853,3804,3754,3705,3663,3627,3585,3542,3502,3463,3433,3412,3389,3368,3334,3292,3241,
+3178,3118,3062,3018,2994,2989,2997,3018,3045,3072,3084,3078,3077,3047,3009,2966,2934,2909,2879,2850,
+2823,2808,2807,2812,2816,2796,2767,2740,2711,2685,2659,2628,2616,2604,2556,2497,2447,2389,2334,2286,
+2239,2205,2179,2146,2114,2083,2044,2011,1986,1966,1949,1934,1913,1884,1859,1837,1816,1801,1792,1783,
+1778,1763,1732,1709,1700,1696,1690,1673,1650,1613,1558,1511,1468,1407,1363,1340,1304,1261,1229,1200,
+1170,1143,1113,1079,1048,1017,991,976,955,933,918,898,874,852,834,818,800,775,758,740,
+723,691,632,571,531,510,501,496,482,466,437,406,376,353,338,327,307,275,239,209,
+182,149,116,71,31,-4,-32,-63,-99,-133,-164,-195,-229,-249,-268,-281,-292,-308,-326,-351,
+-387,-425,-462,-504,-553,-604,-642,-701,-777,-851,-931,-1003,-1073,-1134,-1151,-1146,-1137,-1144,-1150,-1144,
+-1122,-1100,-1067,-1077,-1126,-1169,-1196,-1259,-1335,-1418,-1499,-1547,-1579,-1638,-1707,-1762,-1807,-1853,-1894,-1933,
+-1975,-2024,-2087,-2150,-2200,-2246,-2288,-2322,-2348,-2365,-2367,-2375,-2387,-2386,-2388,-2396,-2409,-2444,-2493,-2529,
+-2555,-2590,-2622,-2648,-2688,-2718,-2729,-2732,-2744,-2763,-2780,-2801,-2818,-2827,-2864,-2922,-2970,-3007,-3051,-3112,
+-3163,-3177,-3183,-3214,-3260,-3320,-3370,-3409,-3458,-3499,-3532,-3574,-3618,-3664,-3703,-3725,-3746,-3770,-3795,-3825,
+-3850,-3871,-3894,-3909,-3919,-3932,-3945,-3966,-3979,-3973,-3965,-3970,-3989,-4004,-4017,-4025,-4019,-4015,-4025,-4027,
+-4026,-4029,-4038,-4047,-4058,-4074,-4102,-4131,-4154,-4164,-4164,-4157,-4132,-4102,-4090,-4088,-4066,-4016,-3979,-3963,
+-3953,-3944,-3958,-3950,-3897,-3846,-3859,-3900,-3956,-4002,-4046,-4077,-4071,-4060,-4062,-4074,-4048,-4041,-4048,-4067,
+-4066,-4067,-4059,-4033,-3995,-3977,-3970,-3939,-3944,-3964,-3957,-3919,-3897,-3877,-3837,-3807,-3790,-3778,-3750,-3712,
+-3678,-3662,-3649,-3611,-3590,-3573,-3545,-3546,-3552,-3551,-3594,-3619,-3608,-3627,-3666,-3710,-3738,-3743,-3751,-3763,
+-3770,-3763,-3754,-3744,-3727,-3704,-3681,-3655,-3640,-3628,-3616,-3615,-3600,-3587,-3577,-3533,-3554,-3606,-3647,-3653,
+-3625,-3536,-3406,-3326,-3295,-3239,-3177,-3124,-3045,-2975,-2903,-2843,-2778,-2720,-2660,-2594,-2550,-2505,-2451,-2395,
+-2334,-2268,-2210,-2165,-2114,-2073,-2013,-1957,-1922,-1887,-1844,-1798,-1772,-1713,-1650,-1602,-1550,-1490,-1423,-1359,
+-1305,-1253,-1179,-1110,-1047,-991,-909,-821,-766,-719,-680,-637,-572,-503,-448,-391,-328,-289,-234,-184,
+-129,-92,-51,-18,31,58,100,144,189,238,289,344,394,439,482,514,544,581,622,663,
+711,766,805,844,886,923,956,995,1044,1078,1119,1173,1228,1283,1340,1382,1431,1483,1545,1596,
+1624,1657,1704,1721,1754,1785,1811,1856,1870,1871,1847,1809,1755,1706,1697,1709,1713,1736,1754,1776,
+1798,1810,1818,1828,1826,1842,1850,1863,1883,1900,1911,1918,1899,1870,1862,1864,1849,1837,1833,1836,
+1836,1799,1775,1798,1795,1762,1710,1650,1609,1575,1564,1574,1589,1604,1614,1628,1647,1689,1716,1731,
+1742,1781,1808,1821,1827,1829,1836,1849,1849,1848,1867,1873,1885,1905,1912,1919,1940,1960,1981,2003,
+2024,2043,2062,2077,2098,2126,2149,2181,2215,2242,2285,2313,2342,2368,2377,2403,2441,2485,2528,2561,
+2553,2524,2438,2372,2312,2224,2148,2055,1936,1843,1652,1236,799,498,257,23,-167,-273,-289,-202,
+-49,128,311,511,696,814,888,928,949,955,950,924,880,833,782,711,623,528,437,354,
+255,124,-16,-155,-239,-279,-282,-228,-135,9,135,269,414,455,388,416,483,551,630,711,
+829,859,778,618,487,399,329,270,230,200,186,185,189,195,196,194,183,175,164,153,
+147,143,154,186,232,260,283,321,373,516,564,407,248,102,82,118,158,184,200,213,
+223,230,242,261,282,304,326,343,363,382,404,421,437,470,527,574,619,668,707,750,
+804,837,887,954,1018,1037,1066,1154,1235,1289,1336,1331,1349,1419,1472,1480,1443,1408,1371,1302,
+1192,1032,833,668,517,349,203,131,106,97,100,107,108,114,127,141,165,206,263,325,
+393,466,539,616,703,723,778,836,888,929,964,995,1023,1047,1069,1086,1099,1107,1115,1125,
+1137,1147,1163,1174,1181,1180,1178,1176,1171,1162,1149,1139,1116,1098,1080,1059,1042,1022,1003,985,
+961,934,902,873,849,823,798,779,773,752,717,691,678,664,648,628,608,586,564,543,
+520,493,462,427,399,368,334,301,270,236,208,181,162,145,96,56,19,-17,-51,-85,
+-123,-162,-202,-240,-275,-309,-343,-380,-417,-451,-486,-519,-551,-576,-601,-624,-644,-662,-685,-712,
+-739,-766,-796,-824,-853,-879,-899,-912,-916,-942,-975,-1016,-1063,-1121,-1178,-1226,-1252,-1225,-1173,-1012,
+-885,-863,-894,-972,-1039,-1091,-1117,-1136,-1146,-1140,-1118,-1120,-1126,-1095,-1110,-1134,-1129,-1153,-1180,-1153,
+-1100,-1109,-1108,-1071,-1112,-1154,-1178,-1186,-1189,-1212,-1238,-1243,-1279,-1299,-1342,-1366,-1363,-1391,-1408,-1448,
+-1399,-1380,-1356,-1340,-1357,-1355,-1333,-1294,-1309,-1321,-1362,-1409,-1399,-1373,-1342,-1333,-1353,-1390,-1356,-1334,
+-1370,-1429,-1493,-1552,-1591,-1632,-1677,-1713,-1754,-1796,-1837,-1877,-1914,-1955,-1998,-2031,-2061,-2089,-2123,-2151,
+-2160,-2170,-2177,-2173,-2174,-2179,-2185,-2194,-2186,-2178,-2173,-2171,-2178,-2192,-2196,-2194,-2195,-2205,-2223,-2242,
+-2269,-2305,-2326,-2324,-2325,-2338,-2357,-2380,-2412,-2430,-2442,-2452,-2470,-2498,-2529,-2558,-2582,-2614,-2646,-2670,
+-2728,-2767,-2773,-2788,-2794,-2805,-2833,-2885,-2924,-2945,-3016,-3063,-3101,-3145,-3187,-3230,-3264,-3305,-3342,-3361,
+-3377,-3396,-3411,-3417,-3423,-3435,-3452,-3480,-3511,-3540,-3565,-3590,-3613,-3639,-3669,-3686,-3718,-3758,-3786,-3814,
+-3838,-3860,-3888,-3917,-3937,-3960,-3984,-4014,-4044,-4069,-4099,-4130,-4161,-4193,-4222,-4250,-4281,-4314,-4344,-4366,
+-4389,-4412,-4432,-4442,-4458,-4474,-4491,-4516,-4519,-4510,-4499,-4485,-4475,-4467,-4463,-4461,-4463,-4478,-4486,-4492,
+-4497,-4490,-4482,-4484,-4483,-4481,-4481,-4482,-4480,-4466,-4450,-4443,-4430,-4408,-4389,-4359,-4321,-4278,-4230,-4185,
+-4145,-4109,-4073,-4029,-3981,-3929,-3870,-3812,-3753,-3692,-3636,-3578,-3518,-3459,-3407,-3353,-3300,-3252,-3204,-3154,
+-3102,-3048,-2997,-2955,-2918,-2878,-2832,-2782,-2728,-2672,-2623,-2576,-2530,-2485,-2438,-2405,-2379,-2343,-2316,-2288,
+-2254,-2201,-2157,-2098,-2010,-1882,-1806,-1785,-1747,-1715,-1711,-1708,-1664,-1596,-1544,-1509,-1496,-1492,-1447,-1419,
+-1404,-1346,-1280,-1213,-1137,-1007,-899,-836,-754,-674,-567,-475,-393,-317,-242,-175,-113,-38,34,125,
+240,382,488,568,634,690,744,816,932,1028,1074,1121,1177,1237,1299,1351,1423,1513,1609,1717,
+1820,1892,1938,1978,2020,2070,2124,2173,2226,2281,2339,2408,2476,2546,2614,2692,2765,2837,2915,2990,
+3058,3129,3201,3270,3326,3384,3443,3499,3559,3622,3685,3749,3817,3885,3947,4005,4071,4140,4202,4265,
+4326,4376,4421,4476,4526,4559,4607,4656,4715,4763,4811,4878,4930,4978,5020,5065,5105,5151,5212,5252,
+5306,5384,5465,5544,5618,5659,5712,5765,5753,5798,5864,5900,5932,5938,5960,5969,5981,5997,6010,6021,
+6039,6026,6026,6052,6056,6063,6066,6067,6071,6074,6060,6055,6057,6072,6091,6101,6106,6110,6120,6133,
+6150,6165,6172,6174,6179,6183,6187,6187,6181,6172,6156,6134,6128,6143,6103,6076,6060,6053,6046,6044,
+6041,6041,6045,6055,6057,6061,6057,6041,6023,6027,6042,6053,6048,6035,6016,5987,5961,5951,5960,5952,
+5932,5912,5891,5881,5881,5886,5891,5914,5970,6038,6096,6119,6136,6149,6148,6129,6095,6058,6036,6035,
+6047,6087,6102,6072,6046,6020,5979,5940,5907,5883,5852,5826,5811,5785,5774,5761,5728,5710,5697,5674,
+5651,5627,5627,5650,5658,5628,5587,5547,5508,5500,5505,5512,5523,5530,5518,5470,5413,5323,5240,5188,
+5164,5131,5083,5014,4937,4859,4807,4764,4714,4658,4667,4627,4600,4575,4543,4514,4489,4463,4438,4414,
+4391,4369,4346,4327,4312,4303,4295,4282,4271,4265,4261,4259,4256,4250,4248,4236,4223,4218,4220,4222,
+4230,4235,4229,4215,4202,4189,4176,4165,4164,4162,4165,4170,4173,4164,4146,4125,4108,4089,4081,4073,
+4047,4011,3968,3928,3889,3851,3811,3766,3731,3699,3668,3628,3582,3538,3498,3464,3438,3409,3372,3327,
+3273,3217,3166,3126,3104,3087,3072,3074,3083,3101,3118,3120,3114,3099,3061,3017,2976,2944,2905,2872,
+2846,2822,2817,2824,2829,2810,2786,2764,2737,2710,2686,2659,2627,2608,2592,2559,2516,2468,2404,2342,
+2290,2236,2185,2132,2081,2038,1996,1962,1949,1953,1968,1987,1991,1981,1968,1954,1937,1918,1900,1879,
+1857,1838,1814,1788,1767,1749,1733,1717,1696,1660,1603,1540,1491,1450,1414,1379,1345,1314,1284,1257,
+1232,1203,1169,1135,1107,1085,1054,1018,993,976,957,932,907,885,862,835,811,797,779,761,
+735,710,696,676,632,571,514,481,463,453,437,411,384,362,340,315,290,270,245,203,
+162,124,82,48,8,-28,-62,-90,-123,-160,-202,-232,-262,-286,-315,-347,-360,-372,-391,-419,
+-444,-465,-498,-534,-570,-612,-648,-688,-754,-835,-908,-980,-1057,-1121,-1176,-1194,-1207,-1201,-1192,-1189,
+-1170,-1145,-1137,-1102,-1109,-1176,-1208,-1245,-1331,-1418,-1475,-1529,-1575,-1620,-1688,-1772,-1836,-1870,-1907,-1954,
+-2000,-2052,-2104,-2157,-2210,-2261,-2303,-2332,-2354,-2380,-2393,-2391,-2386,-2385,-2388,-2391,-2401,-2426,-2464,-2500,
+-2528,-2558,-2596,-2633,-2665,-2701,-2728,-2744,-2750,-2753,-2775,-2819,-2854,-2874,-2888,-2911,-2948,-2991,-3021,-3054,
+-3115,-3170,-3186,-3204,-3244,-3290,-3339,-3382,-3414,-3453,-3501,-3554,-3608,-3645,-3685,-3729,-3755,-3771,-3789,-3818,
+-3858,-3884,-3901,-3922,-3940,-3952,-3962,-3976,-3994,-4001,-3991,-3979,-3983,-4010,-4036,-4061,-4084,-4086,-4077,-4090,
+-4100,-4103,-4109,-4111,-4107,-4123,-4156,-4188,-4207,-4224,-4231,-4226,-4206,-4174,-4149,-4151,-4146,-4110,-4075,-4052,
+-4018,-4012,-4029,-4033,-4000,-3960,-3929,-3922,-3958,-3987,-3994,-4015,-4005,-3993,-4010,-4034,-4034,-4042,-4039,-4031,
+-4022,-4035,-4022,-4015,-4029,-3990,-3937,-3943,-3982,-4002,-3992,-4005,-4015,-4005,-3986,-3949,-3912,-3887,-3880,-3862,
+-3829,-3781,-3757,-3713,-3680,-3642,-3606,-3590,-3597,-3630,-3612,-3589,-3574,-3583,-3599,-3602,-3638,-3671,-3689,-3702,
+-3722,-3746,-3759,-3759,-3756,-3758,-3745,-3728,-3717,-3708,-3691,-3670,-3649,-3645,-3644,-3634,-3688,-3760,-3780,-3722,
+-3619,-3534,-3454,-3355,-3254,-3193,-3149,-3129,-3096,-3035,-2979,-2935,-2868,-2797,-2733,-2677,-2624,-2577,-2515,-2458,
+-2398,-2338,-2283,-2250,-2191,-2124,-2079,-2042,-1984,-1938,-1895,-1858,-1823,-1770,-1706,-1633,-1574,-1525,-1464,-1398,
+-1327,-1261,-1195,-1126,-1067,-1018,-940,-860,-812,-741,-702,-639,-570,-517,-463,-395,-332,-307,-267,-213,
+-146,-94,-38,7,60,90,123,174,215,268,300,342,393,448,481,513,546,581,618,660,
+703,751,801,844,889,936,981,1020,1058,1092,1127,1164,1202,1245,1286,1339,1384,1429,1481,1551,
+1609,1664,1716,1751,1764,1783,1823,1850,1895,1901,1863,1856,1839,1777,1748,1721,1723,1739,1775,1800,
+1802,1815,1826,1835,1851,1888,1892,1877,1896,1910,1916,1934,1960,1963,1932,1889,1872,1865,1871,1871,
+1862,1857,1830,1795,1801,1806,1781,1736,1681,1639,1609,1597,1601,1610,1619,1630,1649,1668,1687,1717,
+1742,1761,1777,1802,1826,1851,1866,1857,1851,1864,1886,1863,1849,1862,1878,1897,1918,1941,1959,1983,
+2004,2024,2051,2062,2090,2130,2151,2177,2197,2232,2276,2308,2336,2361,2382,2399,2417,2465,2518,2525,
+2565,2552,2512,2426,2295,2110,1922,1841,1788,1632,1471,1354,1157,837,480,196,-26,-159,-198,-132,
+4,162,303,438,578,708,819,903,959,983,989,988,975,944,904,852,795,726,643,563,
+491,409,304,191,71,-51,-170,-227,-231,-265,-292,-234,-138,-64,-43,-17,74,140,271,461,
+632,822,927,949,929,878,819,685,540,413,313,258,229,217,215,214,203,184,166,161,
+156,155,163,183,214,252,301,359,402,415,489,506,388,272,113,86,118,155,175,187,
+195,201,209,221,245,270,293,314,336,357,387,424,465,509,559,613,681,740,772,815,
+869,925,963,1019,1081,1109,1091,1143,1189,1251,1301,1331,1320,1327,1296,1210,1102,975,864,768,
+686,579,450,304,170,67,-1,-36,-54,-56,-40,-10,32,81,142,214,293,373,445,516,
+585,655,723,779,829,872,900,935,974,1008,1032,1051,1066,1079,1088,1098,1108,1113,1115,1117,
+1121,1127,1133,1136,1150,1157,1152,1152,1142,1136,1126,1117,1105,1090,1074,1056,1037,1018,997,977,
+952,926,899,874,867,856,811,788,773,767,757,698,659,635,614,592,576,559,534,510,
+485,461,430,400,370,338,306,273,241,212,185,160,133,105,77,42,7,-24,-57,-95,
+-132,-171,-209,-246,-283,-317,-351,-388,-427,-464,-500,-534,-568,-601,-632,-659,-685,-708,-729,-753,
+-779,-806,-831,-857,-881,-907,-934,-959,-977,-992,-1008,-1026,-1050,-1086,-1128,-1180,-1235,-1287,-1324,-1326,
+-1276,-1151,-990,-970,-1016,-1080,-1113,-1144,-1184,-1197,-1210,-1190,-1176,-1176,-1165,-1164,-1203,-1244,-1235,-1201,
+-1190,-1176,-1226,-1197,-1134,-1124,-1118,-1119,-1159,-1126,-1155,-1192,-1245,-1280,-1305,-1325,-1366,-1370,-1386,-1402,
+-1471,-1432,-1401,-1373,-1371,-1369,-1364,-1378,-1350,-1311,-1297,-1292,-1338,-1444,-1411,-1361,-1342,-1310,-1338,-1281,
+-1244,-1232,-1278,-1356,-1423,-1505,-1573,-1629,-1682,-1725,-1761,-1789,-1823,-1865,-1912,-1955,-1988,-2016,-2043,-2077,
+-2101,-2121,-2133,-2139,-2140,-2144,-2150,-2144,-2137,-2124,-2115,-2108,-2100,-2099,-2102,-2107,-2122,-2134,-2151,-2180,
+-2212,-2232,-2251,-2259,-2252,-2253,-2265,-2283,-2314,-2337,-2346,-2368,-2390,-2405,-2427,-2456,-2493,-2533,-2573,-2610,
+-2634,-2658,-2679,-2688,-2675,-2690,-2757,-2828,-2867,-2908,-3000,-3052,-3091,-3124,-3161,-3201,-3235,-3268,-3293,-3314,
+-3330,-3342,-3353,-3368,-3381,-3384,-3385,-3389,-3403,-3422,-3442,-3465,-3492,-3523,-3559,-3597,-3634,-3674,-3704,-3736,
+-3766,-3780,-3803,-3842,-3873,-3885,-3900,-3937,-3971,-4009,-4035,-4058,-4092,-4129,-4173,-4207,-4236,-4262,-4289,-4316,
+-4340,-4362,-4377,-4398,-4415,-4433,-4446,-4442,-4456,-4461,-4456,-4448,-4438,-4434,-4428,-4426,-4429,-4439,-4458,-4477,
+-4486,-4489,-4486,-4485,-4488,-4493,-4480,-4476,-4480,-4483,-4475,-4458,-4444,-4424,-4402,-4383,-4351,-4312,-4273,-4231,
+-4194,-4148,-4104,-4066,-4024,-3978,-3925,-3867,-3807,-3742,-3675,-3613,-3553,-3491,-3432,-3383,-3330,-3279,-3233,-3190,
+-3148,-3103,-3054,-3005,-2967,-2933,-2895,-2852,-2809,-2759,-2714,-2669,-2620,-2570,-2521,-2477,-2444,-2404,-2373,-2343,
+-2304,-2243,-2185,-2120,-2056,-1971,-1878,-1817,-1818,-1790,-1739,-1714,-1677,-1601,-1523,-1470,-1436,-1428,-1416,-1394,
+-1363,-1323,-1270,-1210,-1125,-1011,-908,-839,-782,-726,-634,-561,-506,-434,-363,-291,-218,-143,-57,31,
+113,190,274,363,457,562,654,733,831,952,1023,1061,1112,1161,1222,1292,1358,1435,1522,1609,
+1704,1795,1891,1975,2005,2024,2066,2124,2177,2226,2272,2319,2380,2448,2518,2586,2656,2735,2804,2873,
+2954,3029,3110,3181,3252,3318,3381,3434,3485,3545,3603,3667,3725,3788,3847,3889,3943,4000,4056,4107,
+4164,4215,4264,4311,4362,4411,4461,4510,4564,4623,4681,4731,4791,4847,4900,4944,4987,5028,5078,5138,
+5183,5237,5290,5343,5389,5425,5472,5528,5574,5626,5657,5670,5735,5793,5839,5885,5886,5891,5906,5947,
+5974,5982,5980,5972,5985,6004,6005,6015,6020,6024,6023,6017,6023,6039,6056,6066,6077,6086,6094,6103,
+6118,6132,6141,6140,6143,6152,6161,6166,6175,6180,6170,6155,6137,6130,6122,6109,6082,6067,6059,6045,
+6027,6021,6017,6016,6018,6019,6005,6010,6030,6039,6049,6059,6040,6002,5963,5933,5914,5904,5897,5892,
+5888,5880,5873,5861,5865,5874,5886,5900,5925,6004,6081,6116,6140,6154,6148,6131,6100,6051,6020,6014,
+6011,6023,6075,6104,6088,6045,5999,5961,5933,5913,5895,5874,5853,5837,5803,5777,5753,5743,5720,5685,
+5659,5631,5607,5604,5635,5647,5619,5577,5528,5491,5477,5488,5472,5450,5489,5497,5461,5389,5310,5242,
+5188,5142,5101,5038,4991,4930,4871,4831,4775,4717,4667,4676,4643,4617,4592,4567,4540,4513,4490,4464,
+4436,4411,4386,4369,4354,4342,4332,4324,4318,4307,4303,4294,4288,4289,4292,4294,4294,4292,4294,4300,
+4314,4337,4353,4341,4327,4316,4302,4289,4272,4264,4254,4244,4237,4242,4253,4246,4229,4182,4140,4112,
+4095,4069,4041,4011,3975,3940,3908,3876,3848,3820,3795,3769,3739,3699,3653,3611,3575,3539,3503,3460,
+3415,3364,3302,3242,3198,3173,3167,3163,3155,3140,3141,3152,3162,3156,3125,3081,3038,3003,2965,2918,
+2881,2862,2856,2855,2847,2822,2793,2770,2747,2724,2707,2691,2673,2653,2634,2613,2586,2557,2519,2465,
+2408,2353,2284,2208,2144,2082,2027,1983,1954,1933,1931,1966,2018,2059,2081,2090,2083,2062,2034,1998,
+1962,1935,1909,1882,1862,1839,1808,1782,1752,1721,1680,1620,1563,1507,1455,1421,1390,1347,1321,1300,
+1273,1246,1220,1189,1161,1133,1112,1089,1058,1018,989,971,952,919,884,858,830,802,781,765,
+748,728,707,691,672,645,603,549,495,449,420,396,368,342,318,286,256,232,203,176,
+148,104,68,33,-22,-56,-92,-130,-163,-196,-224,-264,-307,-343,-367,-388,-413,-436,-463,-492,
+-524,-555,-580,-605,-629,-656,-685,-723,-773,-833,-897,-969,-1049,-1123,-1191,-1243,-1257,-1285,-1269,-1247,
+-1229,-1198,-1172,-1159,-1140,-1161,-1209,-1227,-1271,-1378,-1474,-1526,-1567,-1606,-1645,-1710,-1806,-1887,-1928,-1968,
+-2021,-2073,-2130,-2183,-2230,-2277,-2313,-2342,-2375,-2400,-2406,-2405,-2404,-2397,-2388,-2385,-2395,-2424,-2461,-2484,
+-2511,-2541,-2571,-2600,-2636,-2671,-2711,-2745,-2763,-2772,-2777,-2809,-2853,-2874,-2898,-2929,-2964,-2991,-3016,-3045,
+-3085,-3140,-3185,-3207,-3230,-3265,-3305,-3347,-3371,-3407,-3464,-3517,-3570,-3629,-3672,-3707,-3751,-3781,-3796,-3809,
+-3836,-3870,-3898,-3920,-3944,-3972,-3989,-3991,-3998,-4005,-4001,-3998,-4003,-4017,-4039,-4060,-4082,-4098,-4111,-4119,
+-4132,-4156,-4183,-4195,-4193,-4200,-4229,-4250,-4259,-4268,-4290,-4295,-4280,-4256,-4228,-4204,-4201,-4183,-4155,-4118,
+-4082,-4069,-4062,-4046,-4015,-3978,-3969,-3951,-3926,-3897,-3893,-3923,-3965,-3983,-3962,-3989,-4006,-4037,-4037,-4040,
+-4061,-4054,-4042,-4054,-4077,-4080,-4023,-4005,-4008,-4031,-4058,-4049,-4039,-4030,-4027,-4023,-4015,-3967,-3942,-3921,
+-3884,-3832,-3772,-3727,-3680,-3658,-3646,-3632,-3625,-3634,-3666,-3618,-3578,-3564,-3575,-3590,-3593,-3589,-3611,-3621,
+-3649,-3674,-3710,-3731,-3750,-3768,-3781,-3784,-3782,-3772,-3739,-3718,-3706,-3714,-3744,-3815,-3866,-3894,-3859,-3739,
+-3579,-3476,-3452,-3408,-3289,-3223,-3188,-3177,-3152,-3077,-3017,-2994,-2935,-2880,-2825,-2759,-2698,-2636,-2577,-2524,
+-2468,-2414,-2360,-2304,-2247,-2186,-2148,-2116,-2061,-1985,-1938,-1912,-1859,-1800,-1726,-1668,-1618,-1543,-1481,-1419,
+-1343,-1284,-1230,-1180,-1109,-1052,-981,-902,-849,-773,-723,-663,-601,-528,-485,-405,-352,-306,-259,-210,
+-158,-104,-39,13,61,125,171,218,266,296,336,376,421,456,501,536,560,592,627,667,
+708,746,791,840,886,933,978,1020,1056,1092,1130,1165,1200,1242,1284,1325,1369,1411,1451,1514,
+1581,1659,1734,1760,1788,1814,1840,1871,1901,1910,1901,1897,1860,1826,1785,1760,1752,1755,1772,1788,
+1803,1839,1884,1869,1877,1892,1922,1916,1908,1925,1956,1980,1974,1971,1969,1939,1907,1909,1907,1903,
+1897,1886,1874,1835,1791,1794,1798,1782,1748,1704,1670,1647,1626,1617,1625,1647,1650,1659,1676,1692,
+1715,1741,1769,1794,1808,1837,1838,1845,1876,1893,1894,1896,1904,1922,1919,1944,1968,1976,1999,2002,
+2016,2025,2041,2066,2095,2121,2149,2172,2194,2232,2265,2295,2328,2351,2370,2390,2405,2418,2439,2478,
+2528,2557,2546,2517,2433,2231,1932,1599,1392,1263,1111,949,825,665,451,251,66,-69,-122,-67,
+65,213,343,452,549,648,738,808,860,910,960,979,981,972,955,936,896,853,791,728,
+664,598,520,432,341,241,124,10,-66,-46,-108,-245,-349,-409,-430,-415,-383,-355,-317,-173,
+108,329,481,682,813,888,919,858,802,753,691,623,561,522,486,443,401,351,301,254,
+227,242,252,286,321,335,346,371,408,460,540,548,497,375,186,106,108,133,159,170,
+173,179,189,201,216,249,284,313,338,366,407,469,547,640,704,739,790,841,835,825,
+869,932,968,958,959,987,1042,1047,1096,1128,1163,1176,1158,1079,957,825,693,552,420,305,
+217,171,123,79,33,-34,-75,-105,-109,-87,-38,35,124,219,312,402,491,568,635,695,
+754,810,861,907,945,980,1005,1023,1040,1061,1084,1095,1101,1107,1107,1107,1110,1111,1110,1105,
+1102,1101,1103,1106,1108,1113,1110,1107,1109,1110,1106,1088,1069,1051,1041,1032,1015,1000,983,964,
+944,917,889,861,842,881,889,798,769,751,729,702,675,640,614,599,577,533,506,477,
+446,416,388,356,324,295,269,245,221,195,175,150,122,95,61,29,0,-34,-67,-104,
+-146,-187,-227,-262,-298,-332,-366,-401,-438,-476,-512,-550,-585,-619,-651,-682,-711,-738,-763,-787,
+-814,-843,-872,-897,-920,-947,-970,-993,-1016,-1035,-1050,-1067,-1085,-1101,-1126,-1157,-1181,-1232,-1295,-1341,
+-1386,-1413,-1394,-1327,-1147,-1090,-1108,-1144,-1192,-1238,-1276,-1268,-1266,-1250,-1231,-1232,-1252,-1240,-1271,-1275,
+-1262,-1264,-1296,-1226,-1186,-1151,-1100,-1070,-1098,-1160,-1187,-1179,-1181,-1243,-1290,-1317,-1329,-1361,-1377,-1383,
+-1402,-1466,-1449,-1440,-1417,-1416,-1418,-1422,-1401,-1377,-1366,-1322,-1326,-1355,-1408,-1416,-1422,-1356,-1330,-1308,
+-1280,-1222,-1162,-1161,-1213,-1283,-1367,-1442,-1524,-1599,-1657,-1700,-1732,-1770,-1818,-1878,-1923,-1951,-1983,-2021,
+-2044,-2067,-2079,-2092,-2101,-2104,-2109,-2106,-2093,-2074,-2059,-2054,-2054,-2047,-2036,-2029,-2038,-2052,-2064,-2083,
+-2119,-2159,-2191,-2199,-2198,-2196,-2204,-2217,-2239,-2261,-2265,-2272,-2296,-2322,-2342,-2360,-2387,-2417,-2461,-2503,
+-2535,-2553,-2567,-2560,-2561,-2564,-2619,-2741,-2810,-2867,-2968,-3031,-3066,-3094,-3123,-3151,-3181,-3209,-3232,-3251,
+-3275,-3297,-3313,-3321,-3327,-3331,-3336,-3341,-3342,-3348,-3356,-3366,-3381,-3404,-3437,-3477,-3518,-3561,-3607,-3635,
+-3662,-3701,-3731,-3759,-3780,-3798,-3824,-3855,-3890,-3942,-3985,-4011,-4047,-4083,-4117,-4152,-4172,-4203,-4231,-4247,
+-4274,-4308,-4336,-4349,-4372,-4399,-4408,-4415,-4408,-4401,-4388,-4377,-4373,-4376,-4375,-4378,-4383,-4388,-4392,-4402,
+-4416,-4427,-4437,-4447,-4455,-4462,-4466,-4453,-4445,-4454,-4457,-4456,-4441,-4429,-4411,-4388,-4361,-4327,-4286,-4245,
+-4205,-4169,-4134,-4104,-4066,-4022,-3975,-3920,-3853,-3790,-3726,-3659,-3600,-3539,-3478,-3423,-3372,-3321,-3277,-3235,
+-3196,-3161,-3117,-3061,-3019,-2992,-2953,-2908,-2864,-2814,-2776,-2746,-2712,-2666,-2620,-2579,-2530,-2486,-2443,-2399,
+-2341,-2269,-2188,-2125,-2056,-1990,-1925,-1876,-1837,-1800,-1752,-1708,-1680,-1650,-1599,-1541,-1489,-1462,-1437,-1408,
+-1377,-1347,-1300,-1235,-1148,-1071,-987,-915,-844,-772,-702,-639,-585,-521,-455,-379,-303,-236,-148,-47,
+46,116,179,233,299,361,424,507,619,758,898,963,1021,1091,1157,1222,1286,1353,1429,1507,
+1587,1653,1743,1842,1935,2006,2035,2075,2121,2166,2207,2248,2297,2352,2414,2475,2545,2616,2691,2772,
+2852,2933,3000,3076,3150,3226,3285,3347,3416,3470,3523,3576,3620,3660,3703,3743,3787,3843,3899,3953,
+4010,4071,4146,4229,4309,4362,4436,4509,4543,4609,4650,4697,4745,4806,4854,4889,4923,4968,5017,5054,
+5098,5152,5199,5249,5302,5356,5403,5457,5511,5559,5615,5655,5676,5698,5730,5762,5794,5807,5813,5866,
+5904,5906,5959,5991,5932,5957,5987,5991,5984,5998,6014,6020,6029,6039,6053,6063,6070,6078,6081,6083,
+6095,6101,6107,6115,6121,6128,6137,6144,6154,6160,6162,6166,6164,6157,6150,6142,6144,6113,6079,6073,
+6031,6014,6005,6003,6007,6007,6009,6012,6028,6046,6066,6057,6026,5996,5956,5906,5874,5861,5853,5842,
+5836,5834,5843,5842,5842,5857,5867,5886,5894,5933,6022,6088,6124,6154,6165,6140,6100,6061,6015,6001,
+6010,6009,6007,6039,6071,6065,6024,5973,5939,5921,5907,5888,5868,5849,5839,5806,5773,5751,5728,5696,
+5673,5651,5634,5634,5647,5639,5628,5586,5547,5508,5454,5429,5445,5441,5450,5476,5479,5426,5374,5314,
+5244,5175,5110,5066,5002,4959,4910,4860,4811,4766,4719,4676,4670,4640,4619,4595,4568,4543,4517,4496,
+4478,4458,4437,4414,4394,4379,4367,4357,4351,4349,4344,4341,4335,4332,4331,4337,4342,4350,4356,4364,
+4373,4382,4388,4404,4412,4412,4413,4407,4398,4394,4375,4344,4331,4317,4315,4325,4341,4349,4309,4245,
+4184,4150,4127,4112,4089,4062,4028,3999,3972,3944,3920,3895,3880,3857,3823,3780,3734,3693,3652,3613,
+3575,3536,3486,3424,3359,3302,3262,3237,3231,3233,3213,3195,3189,3187,3179,3158,3119,3074,3034,2994,
+2945,2910,2900,2894,2882,2841,2806,2779,2759,2741,2727,2718,2714,2709,2694,2674,2654,2634,2613,2586,
+2539,2479,2409,2327,2251,2189,2125,2065,2033,2016,2006,2018,2053,2100,2150,2190,2203,2189,2153,2109,
+2068,2032,2002,1976,1952,1932,1901,1863,1824,1778,1738,1697,1638,1569,1508,1463,1433,1399,1362,1333,
+1313,1293,1271,1242,1216,1189,1157,1124,1097,1071,1034,1009,989,960,920,884,850,818,790,766,
+751,729,709,701,690,670,641,605,554,498,445,400,366,333,302,262,222,190,152,115,
+71,37,19,-16,-56,-91,-124,-162,-198,-230,-267,-309,-345,-379,-424,-470,-500,-524,-552,-585,
+-620,-646,-667,-689,-717,-734,-752,-774,-820,-872,-921,-978,-1050,-1126,-1197,-1271,-1323,-1349,-1366,-1348,
+-1313,-1275,-1240,-1205,-1179,-1164,-1204,-1257,-1273,-1315,-1426,-1519,-1559,-1596,-1639,-1672,-1731,-1831,-1919,-1969,
+-2021,-2077,-2134,-2193,-2248,-2290,-2328,-2357,-2392,-2423,-2442,-2447,-2446,-2438,-2425,-2417,-2428,-2456,-2477,-2497,
+-2526,-2563,-2597,-2625,-2650,-2674,-2700,-2731,-2749,-2760,-2776,-2801,-2833,-2858,-2879,-2918,-2957,-2994,-3033,-3059,
+-3072,-3106,-3156,-3201,-3238,-3279,-3316,-3351,-3386,-3408,-3435,-3491,-3547,-3583,-3611,-3649,-3697,-3751,-3791,-3811,
+-3823,-3844,-3872,-3903,-3930,-3960,-3991,-4012,-4024,-4036,-4037,-4027,-4022,-4020,-4035,-4064,-4083,-4103,-4123,-4141,
+-4164,-4178,-4192,-4215,-4245,-4271,-4296,-4309,-4316,-4324,-4337,-4350,-4343,-4320,-4297,-4270,-4246,-4237,-4211,-4190,
+-4167,-4151,-4139,-4118,-4057,-3998,-3966,-3937,-3912,-3862,-3851,-3882,-3886,-3887,-3911,-3977,-3998,-3999,-3964,-3954,
+-3989,-4044,-4083,-4097,-4157,-4142,-4123,-4129,-4140,-4115,-4082,-4011,-3955,-3926,-3919,-3952,-4008,-4024,-4011,-3961,
+-3931,-3911,-3870,-3810,-3785,-3751,-3718,-3688,-3653,-3632,-3628,-3615,-3597,-3579,-3556,-3558,-3574,-3546,-3542,-3569,
+-3585,-3615,-3635,-3678,-3700,-3738,-3753,-3777,-3814,-3833,-3833,-3802,-3765,-3769,-3798,-3906,-3983,-3974,-3898,-3777,
+-3636,-3546,-3502,-3455,-3375,-3319,-3305,-3267,-3201,-3146,-3109,-3072,-3019,-2948,-2899,-2830,-2751,-2688,-2641,-2582,
+-2517,-2453,-2403,-2360,-2303,-2243,-2223,-2172,-2110,-2056,-1999,-1948,-1896,-1837,-1779,-1719,-1649,-1581,-1507,-1450,
+-1395,-1341,-1299,-1245,-1181,-1103,-1036,-949,-881,-821,-747,-692,-646,-566,-504,-453,-392,-331,-259,-204,
+-156,-97,-29,42,81,130,184,228,275,319,364,400,453,482,514,543,582,623,649,671,
+717,768,798,828,871,919,972,1018,1053,1088,1121,1158,1196,1235,1284,1331,1361,1397,1441,1492,
+1544,1602,1694,1735,1779,1821,1840,1856,1878,1898,1891,1861,1855,1840,1829,1812,1790,1783,1784,1792,
+1821,1868,1873,1904,1913,1925,1942,1958,1969,1956,1956,1970,1987,1994,2005,2007,1957,1942,1940,1942,
+1925,1920,1923,1910,1845,1783,1781,1787,1787,1758,1717,1683,1657,1630,1624,1638,1644,1662,1678,1691,
+1704,1727,1751,1775,1803,1814,1833,1860,1879,1897,1914,1929,1927,1931,1929,1927,1929,1942,1957,1970,
+1985,2003,2029,2055,2075,2098,2133,2151,2188,2220,2252,2286,2316,2340,2360,2377,2388,2409,2418,2434,
+2469,2526,2553,2540,2468,2341,2157,1851,1392,1050,822,685,576,456,276,122,14,-49,-59,1,
+124,262,399,497,570,636,714,790,835,874,894,903,912,918,937,936,920,896,860,811,
+782,714,655,588,527,458,372,261,163,85,77,58,-92,-192,-283,-387,-487,-552,-576,-550,
+-459,-317,-167,62,340,495,663,734,648,566,509,536,612,672,657,628,590,542,436,390,
+377,363,396,415,451,465,479,492,504,549,585,577,531,433,270,151,123,138,160,179,
+192,201,211,223,252,286,341,418,494,543,609,677,740,827,897,945,937,928,915,896,
+893,913,946,914,921,931,912,865,849,889,849,785,696,618,533,399,266,154,69,12,
+-37,-72,-87,-97,-106,-108,-98,-74,-24,48,134,230,331,427,514,593,661,718,768,820,
+868,910,952,992,1026,1051,1074,1093,1110,1130,1122,1128,1134,1135,1126,1121,1116,1111,1104,1095,
+1082,1073,1069,1068,1063,1059,1057,1049,1049,1041,1036,1028,1024,1015,999,986,972,946,933,918,
+897,880,858,832,810,786,768,760,761,752,717,686,661,652,649,605,600,595,534,469,
+446,409,384,347,331,322,270,231,199,179,158,134,104,76,49,13,-22,-53,-83,-116,
+-159,-204,-248,-291,-328,-365,-400,-432,-461,-495,-531,-569,-605,-638,-673,-704,-732,-758,-784,-816,
+-845,-873,-900,-925,-952,-985,-1013,-1034,-1056,-1076,-1095,-1110,-1131,-1149,-1164,-1169,-1168,-1229,-1268,-1301,
+-1340,-1385,-1429,-1465,-1464,-1390,-1221,-1151,-1183,-1256,-1306,-1338,-1328,-1327,-1331,-1319,-1299,-1293,-1275,-1283,
+-1283,-1287,-1292,-1281,-1281,-1216,-1162,-1097,-1112,-1146,-1122,-1164,-1181,-1186,-1250,-1280,-1316,-1343,-1362,-1380,
+-1392,-1402,-1447,-1475,-1459,-1436,-1436,-1433,-1415,-1399,-1359,-1409,-1356,-1351,-1363,-1399,-1373,-1371,-1425,-1376,
+-1338,-1261,-1214,-1162,-1130,-1137,-1191,-1264,-1310,-1386,-1479,-1560,-1625,-1677,-1728,-1791,-1852,-1896,-1920,-1951,
+-1974,-1998,-2014,-2020,-2032,-2044,-2062,-2057,-2045,-2031,-2015,-2002,-1997,-1992,-1989,-1993,-1999,-2008,-2016,-2026,
+-2039,-2072,-2115,-2149,-2158,-2155,-2154,-2160,-2178,-2200,-2212,-2225,-2234,-2252,-2271,-2295,-2318,-2336,-2359,-2392,
+-2418,-2446,-2464,-2485,-2489,-2495,-2533,-2630,-2735,-2814,-2913,-2987,-3029,-3059,-3079,-3097,-3121,-3150,-3177,-3201,
+-3225,-3249,-3272,-3284,-3290,-3297,-3301,-3299,-3296,-3295,-3297,-3302,-3312,-3326,-3350,-3384,-3421,-3454,-3487,-3524,
+-3568,-3605,-3636,-3667,-3696,-3720,-3750,-3778,-3813,-3848,-3883,-3921,-3948,-3989,-4037,-4085,-4125,-4145,-4162,-4182,
+-4207,-4236,-4266,-4289,-4304,-4323,-4335,-4337,-4336,-4331,-4324,-4316,-4314,-4312,-4312,-4322,-4338,-4346,-4347,-4350,
+-4356,-4358,-4362,-4370,-4380,-4388,-4394,-4396,-4387,-4374,-4389,-4409,-4417,-4413,-4407,-4393,-4366,-4342,-4308,-4266,
+-4222,-4179,-4141,-4108,-4077,-4042,-4001,-3956,-3907,-3844,-3777,-3716,-3654,-3595,-3537,-3482,-3428,-3380,-3336,-3297,
+-3258,-3213,-3162,-3109,-3056,-3012,-2974,-2947,-2903,-2858,-2824,-2793,-2761,-2733,-2700,-2658,-2612,-2553,-2496,-2428,
+-2355,-2285,-2202,-2121,-2062,-1999,-1933,-1888,-1853,-1803,-1757,-1722,-1705,-1666,-1630,-1608,-1575,-1541,-1477,-1426,
+-1401,-1372,-1334,-1297,-1230,-1159,-1086,-1017,-952,-875,-802,-754,-704,-638,-571,-498,-415,-329,-247,-148,
+-51,32,100,162,222,275,330,391,452,535,662,810,904,989,1071,1143,1209,1261,1324,1394,
+1470,1539,1605,1698,1794,1879,1964,2045,2108,2135,2156,2182,2220,2267,2319,2377,2441,2502,2569,2644,
+2717,2794,2872,2945,3012,3084,3156,3217,3273,3323,3375,3431,3478,3510,3551,3601,3659,3726,3799,3873,
+3939,3999,4053,4107,4169,4256,4356,4444,4501,4541,4593,4646,4705,4743,4791,4832,4872,4924,4959,5007,
+5055,5102,5148,5201,5237,5275,5318,5363,5415,5457,5504,5539,5577,5613,5632,5675,5706,5731,5755,5771,
+5802,5845,5885,5917,5939,5956,6013,6086,6131,6121,6111,6131,6117,6136,6153,6158,6189,6189,6171,6164,
+6162,6165,6147,6142,6148,6152,6172,6191,6194,6200,6206,6200,6198,6203,6214,6204,6182,6173,6179,6136,
+6101,6071,6072,6067,6054,6044,6047,6049,6064,6068,6066,6060,6042,6010,5979,5934,5882,5842,5822,5811,
+5795,5786,5788,5789,5795,5807,5825,5841,5863,5882,5933,6006,6062,6116,6142,6143,6131,6101,6048,6003,
+6017,6034,6016,5972,5969,6016,6036,6010,5966,5935,5922,5917,5884,5861,5844,5840,5811,5769,5738,5711,
+5698,5689,5677,5648,5647,5645,5625,5593,5543,5486,5435,5414,5420,5450,5465,5469,5471,5462,5407,5354,
+5277,5198,5128,5030,4987,4953,4914,4881,4835,4786,4746,4708,4670,4654,4626,4606,4578,4553,4528,4507,
+4489,4477,4463,4452,4437,4424,4412,4401,4389,4379,4373,4372,4373,4367,4363,4365,4370,4379,4391,4405,
+4416,4417,4426,4429,4437,4449,4461,4477,4487,4497,4491,4468,4445,4427,4422,4404,4391,4382,4379,4368,
+4339,4309,4270,4228,4195,4178,4172,4149,4119,4079,4044,4012,3981,3962,3950,3933,3908,3872,3831,3788,
+3741,3696,3654,3605,3550,3492,3432,3376,3331,3302,3295,3289,3272,3249,3233,3224,3214,3193,3165,3123,
+3064,3006,2964,2945,2919,2885,2853,2819,2794,2777,2763,2752,2749,2752,2746,2733,2726,2719,2702,2677,
+2640,2588,2523,2451,2384,2328,2273,2218,2167,2127,2110,2116,2144,2195,2263,2329,2359,2346,2311,2261,
+2194,2123,2068,2030,2005,1984,1960,1928,1883,1832,1785,1735,1677,1608,1547,1499,1458,1427,1402,1379,
+1353,1334,1318,1293,1261,1232,1203,1176,1142,1110,1087,1056,1034,1011,969,923,886,850,821,796,
+768,744,715,695,688,678,662,645,613,553,487,432,382,335,298,260,204,155,108,54,
+7,-23,-62,-97,-118,-139,-165,-196,-237,-279,-314,-352,-398,-443,-482,-519,-558,-597,-635,-678,
+-714,-745,-773,-797,-822,-845,-871,-889,-917,-952,-990,-1041,-1110,-1174,-1240,-1307,-1370,-1420,-1444,-1449,
+-1422,-1377,-1345,-1317,-1261,-1200,-1181,-1222,-1291,-1321,-1367,-1473,-1563,-1606,-1651,-1673,-1687,-1757,-1865,-1957,
+-2016,-2067,-2122,-2183,-2244,-2296,-2342,-2381,-2412,-2444,-2475,-2492,-2493,-2483,-2464,-2464,-2473,-2488,-2507,-2523,
+-2546,-2579,-2612,-2639,-2663,-2687,-2717,-2741,-2762,-2779,-2799,-2826,-2855,-2889,-2903,-2925,-2968,-3001,-3026,-3069,
+-3096,-3106,-3145,-3207,-3250,-3293,-3339,-3375,-3402,-3431,-3457,-3484,-3526,-3570,-3600,-3630,-3669,-3707,-3756,-3805,
+-3831,-3849,-3875,-3896,-3921,-3953,-3980,-4006,-4036,-4065,-4077,-4069,-4056,-4053,-4054,-4065,-4079,-4091,-4100,-4120,
+-4154,-4192,-4209,-4219,-4237,-4260,-4290,-4313,-4321,-4329,-4325,-4339,-4360,-4346,-4308,-4276,-4254,-4235,-4208,-4192,
+-4162,-4153,-4141,-4120,-4094,-4031,-3986,-3969,-3944,-3916,-3871,-3877,-3897,-3877,-3878,-3926,-3956,-3953,-3962,-4008,
+-4043,-4078,-4072,-4086,-4104,-4116,-4142,-4207,-4242,-4241,-4235,-4196,-4095,-4036,-3983,-3945,-3946,-3959,-3989,-3988,
+-3975,-3967,-3951,-3909,-3856,-3814,-3803,-3810,-3744,-3676,-3625,-3595,-3594,-3603,-3607,-3582,-3554,-3545,-3545,-3561,
+-3578,-3616,-3679,-3708,-3704,-3706,-3730,-3746,-3786,-3824,-3861,-3900,-3908,-3905,-3965,-4052,-4068,-4015,-3904,-3780,
+-3686,-3599,-3523,-3489,-3427,-3396,-3373,-3337,-3285,-3238,-3187,-3126,-3085,-3007,-2936,-2895,-2845,-2776,-2711,-2636,
+-2552,-2510,-2468,-2435,-2374,-2331,-2303,-2246,-2180,-2133,-2065,-2015,-1961,-1914,-1849,-1783,-1718,-1649,-1586,-1535,
+-1475,-1410,-1335,-1270,-1208,-1142,-1071,-1009,-946,-862,-787,-726,-649,-599,-540,-470,-420,-355,-291,-225,
+-150,-102,-35,36,98,145,180,225,294,354,404,440,476,514,527,545,575,615,661,689,
+717,760,809,849,877,902,939,992,1044,1082,1120,1153,1185,1221,1263,1305,1352,1393,1433,1502,
+1554,1582,1632,1670,1753,1787,1811,1838,1878,1908,1916,1928,1939,1932,1879,1869,1844,1820,1817,1813,
+1823,1837,1865,1894,1918,1939,1984,1988,2003,1998,1993,1993,2003,2008,2007,2012,2009,1985,1958,1949,
+1939,1926,1920,1931,1954,1907,1847,1822,1803,1788,1761,1725,1680,1657,1638,1629,1634,1648,1669,1682,
+1695,1714,1728,1747,1766,1793,1820,1846,1879,1898,1914,1931,1939,1940,1942,1937,1936,1948,1966,1974,
+1985,2004,2019,2035,2064,2082,2105,2128,2148,2191,2224,2257,2298,2324,2341,2358,2388,2404,2424,2449,
+2485,2562,2605,2597,2586,2496,2352,2099,1731,1275,909,648,470,321,163,26,-50,-79,-44,53,
+186,317,430,531,598,654,704,754,792,824,868,904,906,885,872,871,887,905,889,847,
+802,766,733,700,647,588,538,489,391,293,223,161,107,63,2,-36,-105,-209,-343,-467,
+-570,-612,-586,-488,-350,-234,-137,-8,96,65,34,161,402,500,562,562,529,511,424,395,
+391,370,461,521,534,532,556,553,523,539,532,534,466,367,284,193,183,204,217,230,
+292,362,365,386,421,490,574,642,714,785,818,836,839,837,844,825,790,783,793,782,
+765,750,728,721,729,736,671,532,371,269,232,224,161,83,13,-51,-130,-202,-237,-243,
+-235,-223,-208,-182,-141,-81,3,89,178,270,365,454,535,613,681,741,793,835,869,902,
+938,975,1009,1040,1070,1095,1115,1134,1146,1181,1195,1155,1145,1144,1138,1130,1118,1108,1099,1085,
+1072,1053,1036,1027,1023,1015,1004,993,982,973,969,966,958,952,943,931,916,889,879,869,
+839,823,815,780,751,721,692,676,658,637,619,615,610,596,574,552,525,510,514,497,
+426,374,343,318,288,255,233,220,192,158,134,111,80,55,25,-1,-46,-82,-99,-132,
+-170,-194,-256,-308,-347,-386,-426,-464,-498,-531,-561,-597,-634,-667,-700,-730,-759,-785,-811,-839,
+-868,-899,-929,-956,-984,-1014,-1042,-1069,-1096,-1120,-1142,-1162,-1178,-1192,-1208,-1220,-1233,-1252,-1274,-1293,
+-1319,-1348,-1383,-1418,-1448,-1467,-1450,-1419,-1322,-1259,-1318,-1368,-1389,-1393,-1396,-1395,-1391,-1374,-1371,-1337,
+-1329,-1321,-1329,-1287,-1253,-1187,-1225,-1209,-1105,-1039,-1065,-1065,-1097,-1186,-1205,-1251,-1270,-1291,-1342,-1368,
+-1405,-1395,-1402,-1445,-1466,-1459,-1458,-1440,-1446,-1435,-1421,-1434,-1452,-1439,-1383,-1389,-1418,-1399,-1410,-1444,
+-1403,-1407,-1355,-1297,-1244,-1208,-1189,-1180,-1150,-1177,-1264,-1354,-1452,-1545,-1621,-1697,-1769,-1829,-1867,-1899,
+-1918,-1944,-1956,-1965,-1974,-1978,-1977,-1993,-1996,-1988,-1975,-1963,-1951,-1948,-1951,-1963,-1979,-1991,-1987,-1990,
+-2007,-2031,-2064,-2101,-2123,-2138,-2140,-2137,-2146,-2163,-2179,-2184,-2196,-2207,-2226,-2237,-2256,-2288,-2309,-2328,
+-2349,-2372,-2401,-2424,-2446,-2444,-2448,-2502,-2600,-2681,-2794,-2895,-2962,-3001,-3029,-3046,-3063,-3085,-3110,-3135,
+-3161,-3190,-3220,-3240,-3251,-3259,-3262,-3261,-3257,-3254,-3256,-3261,-3265,-3276,-3294,-3317,-3351,-3386,-3416,-3444,
+-3477,-3515,-3549,-3576,-3607,-3634,-3660,-3690,-3720,-3746,-3769,-3794,-3827,-3870,-3919,-3970,-4021,-4063,-4094,-4114,
+-4129,-4149,-4183,-4218,-4233,-4240,-4264,-4278,-4272,-4247,-4229,-4224,-4230,-4236,-4246,-4256,-4273,-4289,-4299,-4305,
+-4315,-4324,-4327,-4324,-4321,-4316,-4319,-4329,-4338,-4334,-4318,-4317,-4335,-4355,-4364,-4364,-4349,-4332,-4306,-4272,
+-4231,-4187,-4142,-4103,-4072,-4045,-4013,-3976,-3931,-3884,-3826,-3763,-3698,-3640,-3587,-3536,-3488,-3443,-3402,-3360,
+-3318,-3275,-3228,-3174,-3114,-3081,-3066,-3029,-2994,-2951,-2902,-2868,-2832,-2778,-2733,-2694,-2640,-2570,-2499,-2443,
+-2371,-2288,-2224,-2144,-2076,-2022,-1971,-1916,-1874,-1830,-1788,-1770,-1754,-1732,-1697,-1676,-1642,-1613,-1577,-1525,
+-1481,-1441,-1396,-1349,-1312,-1262,-1203,-1130,-1063,-997,-936,-881,-828,-769,-707,-642,-564,-475,-385,-291,
+-192,-113,-40,37,108,181,235,292,361,421,490,617,756,853,963,1053,1128,1196,1246,1300,
+1367,1441,1502,1568,1647,1734,1811,1888,1981,2079,2140,2160,2187,2213,2248,2286,2334,2392,2449,2509,
+2577,2642,2708,2769,2839,2902,2958,3028,3107,3182,3251,3301,3352,3394,3446,3510,3576,3650,3722,3792,
+3861,3931,4005,4067,4120,4167,4219,4295,4398,4479,4547,4615,4669,4712,4754,4793,4836,4881,4936,4971,
+5012,5065,5126,5178,5227,5271,5298,5337,5366,5423,5480,5502,5524,5574,5602,5642,5676,5710,5746,5788,
+5819,5851,5894,5936,5960,5990,6028,6070,6115,6165,6184,6194,6176,6118,6144,6158,6167,6175,6179,6186,
+6191,6195,6189,6174,6172,6188,6204,6223,6234,6241,6249,6242,6221,6243,6236,6245,6252,6253,6263,6261,
+6247,6217,6219,6226,6230,6211,6195,6136,6093,6099,6119,6136,6135,6116,6075,6040,5987,5928,5886,5859,
+5838,5807,5790,5769,5757,5760,5764,5786,5811,5829,5861,5922,5957,6050,6122,6139,6133,6113,6085,6043,
+6020,6037,6040,6006,5961,5943,5983,6011,5999,5966,5936,5906,5883,5867,5849,5827,5822,5799,5765,5729,
+5704,5687,5668,5644,5626,5612,5593,5566,5526,5472,5430,5431,5469,5483,5487,5473,5455,5427,5397,5365,
+5305,5242,5150,5076,4990,4941,4915,4885,4845,4808,4767,4724,4687,4654,4625,4600,4578,4556,4529,4502,
+4485,4474,4468,4460,4455,4448,4441,4433,4427,4423,4417,4409,4402,4394,4382,4375,4384,4397,4412,4429,
+4444,4459,4473,4484,4499,4512,4531,4544,4547,4558,4570,4566,4562,4534,4514,4540,4576,4549,4486,4456,
+4441,4425,4394,4357,4319,4274,4252,4251,4250,4225,4175,4128,4087,4059,4043,4033,4023,3998,3972,3942,
+3903,3865,3818,3774,3734,3684,3623,3564,3508,3453,3410,3384,3369,3352,3338,3325,3318,3312,3307,3290,
+3251,3193,3120,3048,2989,2940,2902,2873,2842,2816,2796,2785,2787,2794,2797,2796,2796,2794,2787,2784,
+2778,2748,2698,2643,2592,2535,2454,2358,2280,2220,2177,2165,2175,2217,2304,2394,2453,2488,2485,2438,
+2373,2293,2210,2133,2071,2029,2000,1969,1935,1888,1834,1782,1726,1656,1594,1551,1511,1470,1436,1413,
+1390,1359,1343,1327,1290,1255,1231,1207,1182,1155,1126,1092,1055,1033,1008,960,917,888,855,824,
+792,765,743,709,677,661,653,641,619,588,543,494,448,394,339,292,238,169,91,11,
+-60,-108,-141,-166,-189,-211,-243,-281,-324,-364,-404,-444,-486,-531,-575,-618,-659,-696,-744,-791,
+-834,-867,-900,-923,-935,-961,-994,-1022,-1035,-1053,-1086,-1133,-1183,-1244,-1307,-1364,-1422,-1475,-1521,-1547,
+-1547,-1518,-1490,-1457,-1422,-1351,-1282,-1253,-1275,-1333,-1358,-1405,-1522,-1625,-1675,-1730,-1754,-1758,-1824,-1924,
+-2005,-2061,-2109,-2168,-2236,-2293,-2343,-2391,-2434,-2467,-2504,-2531,-2544,-2539,-2533,-2527,-2526,-2522,-2526,-2550,
+-2582,-2606,-2625,-2650,-2682,-2705,-2729,-2749,-2770,-2801,-2833,-2862,-2888,-2908,-2929,-2947,-2974,-3017,-3045,-3061,
+-3093,-3114,-3139,-3200,-3268,-3325,-3371,-3404,-3418,-3427,-3455,-3489,-3520,-3554,-3594,-3635,-3677,-3715,-3750,-3790,
+-3830,-3861,-3888,-3911,-3928,-3951,-3985,-4010,-4029,-4054,-4084,-4104,-4108,-4107,-4100,-4094,-4095,-4089,-4087,-4104,
+-4122,-4142,-4174,-4193,-4199,-4211,-4225,-4240,-4250,-4256,-4284,-4280,-4270,-4263,-4236,-4197,-4183,-4196,-4169,-4133,
+-4105,-4118,-4116,-4095,-4072,-4036,-3968,-3944,-3903,-3884,-3843,-3816,-3840,-3848,-3850,-3868,-3899,-3953,-4011,-4039,
+-4040,-4103,-4146,-4169,-4143,-4145,-4166,-4208,-4247,-4263,-4289,-4329,-4322,-4243,-4176,-4124,-4099,-4067,-4037,-4010,
+-3975,-3954,-3954,-3955,-3945,-3898,-3849,-3838,-3802,-3754,-3727,-3706,-3683,-3647,-3627,-3634,-3635,-3647,-3645,-3665,
+-3719,-3750,-3829,-3884,-3891,-3851,-3817,-3790,-3786,-3838,-3929,-4024,-4097,-4148,-4180,-4181,-4120,-4004,-3863,-3729,
+-3623,-3557,-3537,-3546,-3529,-3478,-3414,-3378,-3327,-3258,-3207,-3163,-3107,-3076,-3013,-2944,-2878,-2811,-2733,-2686,
+-2631,-2572,-2518,-2468,-2424,-2378,-2364,-2298,-2234,-2190,-2136,-2069,-2031,-1992,-1923,-1861,-1802,-1749,-1679,-1606,
+-1545,-1465,-1398,-1324,-1250,-1177,-1106,-1047,-982,-893,-827,-747,-692,-626,-569,-517,-449,-376,-328,-250,
+-160,-102,-42,24,98,153,193,250,286,354,405,442,482,544,575,584,617,643,667,699,
+735,768,809,852,891,925,952,984,1025,1063,1093,1132,1172,1209,1249,1287,1328,1373,1429,1491,
+1564,1610,1633,1649,1685,1734,1764,1802,1841,1894,1925,1926,1951,1972,1967,1927,1923,1873,1850,1844,
+1841,1845,1856,1881,1899,1936,1992,2028,2023,2019,2012,2018,2024,2029,2033,2023,2021,1996,1973,1954,
+1940,1942,1951,1941,1935,1958,1953,1915,1886,1834,1801,1768,1721,1682,1652,1641,1635,1648,1664,1682,
+1700,1700,1712,1733,1755,1774,1793,1814,1832,1870,1889,1901,1912,1918,1922,1921,1924,1941,1960,1967,
+1986,2005,2018,2019,2038,2071,2099,2114,2136,2163,2199,2237,2274,2303,2315,2336,2350,2365,2392,2430,
+2479,2551,2632,2637,2639,2583,2475,2303,2020,1619,1201,838,585,389,232,87,-30,-78,-33,88,
+237,376,488,569,629,675,721,765,803,825,813,843,892,909,875,854,834,834,842,853,
+835,795,774,761,738,688,623,561,520,473,413,358,302,212,150,108,100,83,36,-43,
+-152,-299,-437,-540,-597,-609,-581,-547,-476,-402,-367,-343,-211,-15,66,271,402,417,243,33,
+-64,-10,174,262,303,364,426,480,479,440,421,383,349,296,233,211,227,273,360,383,
+359,451,540,543,529,546,608,689,686,647,604,565,526,475,436,391,329,264,228,184,
+143,121,107,85,86,91,94,54,-59,-190,-262,-290,-300,-297,-310,-345,-370,-385,-398,-381,
+-344,-285,-218,-128,-19,92,200,305,398,483,565,638,697,751,802,845,885,918,944,966,
+989,1013,1040,1066,1092,1111,1127,1143,1152,1158,1161,1159,1153,1145,1140,1133,1119,1108,1093,1077,
+1059,1041,1021,999,980,969,962,947,931,920,911,905,897,890,887,878,865,850,828,816,
+793,769,750,723,708,688,660,638,616,592,571,545,524,508,488,458,436,418,402,384,
+357,329,308,287,260,229,200,174,148,122,96,75,45,18,-6,-39,-76,-108,-133,-138,
+-208,-255,-299,-336,-367,-401,-441,-478,-510,-539,-578,-620,-660,-694,-728,-761,-790,-815,-841,-868,
+-898,-927,-958,-984,-1012,-1041,-1071,-1098,-1125,-1155,-1182,-1205,-1224,-1238,-1252,-1263,-1274,-1291,-1307,-1319,
+-1341,-1361,-1380,-1401,-1428,-1452,-1472,-1477,-1474,-1496,-1474,-1405,-1448,-1460,-1471,-1459,-1463,-1467,-1460,-1451,
+-1432,-1420,-1386,-1336,-1311,-1291,-1268,-1260,-1247,-1191,-1108,-1129,-1159,-1144,-1121,-1157,-1185,-1207,-1256,-1295,
+-1320,-1371,-1411,-1413,-1426,-1457,-1451,-1453,-1469,-1477,-1475,-1457,-1450,-1464,-1480,-1457,-1454,-1459,-1428,-1440,
+-1433,-1383,-1353,-1395,-1410,-1348,-1254,-1192,-1129,-1085,-1106,-1153,-1247,-1349,-1469,-1581,-1668,-1738,-1795,-1842,
+-1875,-1899,-1915,-1921,-1926,-1938,-1943,-1944,-1947,-1954,-1948,-1939,-1933,-1930,-1931,-1936,-1950,-1976,-1996,-1999,
+-2007,-2023,-2049,-2080,-2102,-2119,-2139,-2140,-2136,-2140,-2155,-2160,-2162,-2177,-2184,-2188,-2194,-2206,-2244,-2281,
+-2306,-2333,-2343,-2365,-2387,-2396,-2393,-2400,-2455,-2531,-2615,-2722,-2836,-2902,-2940,-2973,-3000,-3032,-3059,-3085,
+-3121,-3145,-3175,-3206,-3225,-3238,-3243,-3240,-3235,-3230,-3225,-3226,-3228,-3238,-3247,-3268,-3296,-3323,-3358,-3388,
+-3413,-3441,-3472,-3502,-3533,-3566,-3597,-3629,-3654,-3674,-3696,-3723,-3755,-3796,-3837,-3885,-3928,-3978,-4025,-4053,
+-4068,-4102,-4128,-4151,-4169,-4181,-4200,-4201,-4189,-4183,-4181,-4171,-4163,-4158,-4159,-4170,-4190,-4209,-4231,-4254,
+-4272,-4284,-4294,-4297,-4292,-4282,-4273,-4272,-4277,-4283,-4286,-4275,-4269,-4282,-4302,-4302,-4299,-4287,-4269,-4251,
+-4220,-4183,-4147,-4112,-4081,-4053,-4025,-3995,-3956,-3914,-3863,-3809,-3749,-3693,-3643,-3594,-3546,-3507,-3469,-3429,
+-3381,-3336,-3284,-3223,-3185,-3148,-3132,-3114,-3083,-3057,-3001,-2930,-2882,-2855,-2792,-2719,-2648,-2586,-2490,-2407,
+-2345,-2270,-2185,-2081,-2044,-1983,-1976,-1949,-1915,-1879,-1851,-1830,-1812,-1783,-1735,-1710,-1675,-1625,-1615,-1613,
+-1575,-1526,-1479,-1432,-1387,-1347,-1310,-1249,-1175,-1094,-1000,-936,-901,-870,-833,-768,-702,-638,-563,-476,
+-376,-286,-206,-126,-55,20,85,144,212,269,349,467,613,748,861,970,1054,1121,1176,1225,
+1277,1337,1401,1468,1536,1600,1683,1758,1827,1919,2031,2131,2198,2219,2245,2265,2284,2311,2344,2383,
+2432,2486,2552,2624,2692,2764,2841,2916,2982,3046,3112,3180,3248,3315,3385,3459,3526,3592,3660,3726,
+3790,3850,3908,3977,4038,4098,4154,4211,4263,4322,4389,4473,4576,4650,4701,4740,4775,4815,4865,4917,
+4970,5016,5065,5121,5165,5214,5257,5293,5336,5368,5418,5465,5494,5523,5554,5606,5654,5704,5747,5789,
+5827,5869,5885,5911,5933,5959,6002,6040,6073,6120,6161,6183,6216,6218,6182,6262,6295,6288,6279,6265,
+6251,6254,6252,6235,6242,6235,6220,6216,6222,6224,6224,6220,6214,6210,6217,6225,6233,6258,6272,6272,
+6277,6281,6268,6284,6301,6284,6266,6253,6224,6174,6131,6135,6158,6170,6153,6107,6056,6002,5952,5912,
+5875,5845,5819,5800,5772,5749,5735,5730,5744,5766,5793,5826,5859,5940,6070,6135,6154,6135,6096,6058,
+6026,6015,6031,6034,5999,5954,5933,5955,5986,5979,5957,5920,5894,5877,5867,5863,5840,5820,5788,5758,
+5731,5705,5680,5647,5611,5582,5560,5538,5509,5484,5473,5476,5476,5473,5471,5456,5429,5396,5364,5337,
+5309,5258,5177,5102,5034,4971,4919,4872,4830,4789,4755,4734,4699,4661,4625,4592,4565,4543,4524,4512,
+4496,4479,4455,4449,4455,4455,4453,4456,4452,4451,4452,4450,4446,4443,4437,4426,4406,4401,4423,4451,
+4480,4506,4531,4559,4585,4608,4627,4649,4673,4685,4682,4654,4631,4623,4605,4590,4584,4588,4582,4570,
+4560,4534,4501,4460,4405,4353,4332,4319,4304,4289,4280,4259,4209,4160,4120,4103,4099,4097,4082,4054,
+4018,3986,3954,3920,3885,3844,3806,3761,3704,3651,3595,3539,3493,3467,3451,3443,3440,3435,3420,3396,
+3370,3332,3276,3228,3176,3099,3005,2933,2882,2849,2825,2815,2817,2829,2836,2841,2845,2849,2846,2848,
+2863,2871,2858,2829,2798,2751,2670,2563,2462,2381,2323,2295,2287,2279,2298,2365,2437,2482,2522,2541,
+2510,2438,2352,2263,2179,2115,2065,2013,1967,1924,1871,1814,1763,1705,1647,1608,1572,1524,1478,1441,
+1414,1388,1354,1333,1319,1282,1240,1220,1212,1189,1155,1121,1094,1066,1045,1016,971,932,898,860,
+822,790,763,734,698,673,651,634,622,600,564,519,479,439,380,324,277,215,139,45,
+-40,-114,-177,-227,-267,-296,-326,-360,-399,-443,-493,-548,-603,-652,-694,-736,-775,-819,-863,-911,
+-962,-1007,-1041,-1068,-1094,-1114,-1133,-1161,-1189,-1211,-1230,-1253,-1287,-1329,-1379,-1431,-1475,-1524,-1580,-1632,
+-1656,-1645,-1628,-1613,-1584,-1541,-1470,-1403,-1345,-1333,-1388,-1418,-1454,-1565,-1680,-1744,-1802,-1840,-1858,-1912,
+-2003,-2080,-2119,-2161,-2226,-2290,-2339,-2385,-2438,-2483,-2515,-2548,-2575,-2588,-2594,-2592,-2580,-2564,-2567,-2584,
+-2616,-2656,-2676,-2675,-2694,-2729,-2755,-2766,-2778,-2804,-2845,-2881,-2915,-2943,-2959,-2962,-2972,-3004,-3057,-3096,
+-3114,-3136,-3165,-3204,-3260,-3325,-3372,-3394,-3407,-3431,-3458,-3500,-3552,-3588,-3613,-3641,-3687,-3735,-3773,-3805,
+-3831,-3860,-3904,-3933,-3934,-3945,-3967,-3986,-4014,-4043,-4069,-4097,-4114,-4125,-4142,-4154,-4158,-4159,-4143,-4127,
+-4128,-4135,-4150,-4176,-4189,-4178,-4172,-4180,-4181,-4179,-4182,-4179,-4178,-4191,-4172,-4159,-4136,-4130,-4116,-4129,
+-4061,-3978,-3964,-4002,-3996,-3961,-3987,-3899,-3879,-3874,-3837,-3817,-3821,-3850,-3858,-3907,-3978,-4005,-4048,-4089,
+-4164,-4225,-4212,-4221,-4281,-4301,-4330,-4341,-4339,-4342,-4362,-4378,-4390,-4384,-4361,-4290,-4252,-4252,-4217,-4154,
+-4109,-4067,-4040,-3988,-3969,-3950,-3947,-3936,-3870,-3833,-3817,-3823,-3816,-3827,-3795,-3692,-3707,-3763,-3759,-3723,
+-3703,-3726,-3745,-3777,-3782,-3785,-3811,-3777,-3724,-3740,-3790,-3883,-3990,-4060,-4064,-3997,-3889,-3799,-3733,-3685,
+-3650,-3624,-3617,-3604,-3577,-3533,-3476,-3404,-3347,-3291,-3226,-3177,-3144,-3097,-3031,-2981,-2927,-2856,-2788,-2741,
+-2690,-2608,-2542,-2485,-2452,-2426,-2393,-2352,-2287,-2242,-2182,-2142,-2090,-2039,-1961,-1888,-1821,-1755,-1707,-1660,
+-1598,-1553,-1474,-1380,-1304,-1229,-1170,-1100,-1033,-940,-864,-809,-744,-667,-607,-567,-496,-420,-352,-289,
+-209,-125,-60,2,65,130,178,230,283,336,398,436,476,534,579,620,646,683,721,752,
+770,794,821,857,896,932,958,983,1014,1046,1078,1114,1155,1198,1240,1279,1321,1364,1410,1475,
+1544,1600,1640,1676,1698,1704,1719,1758,1819,1882,1918,1935,1978,2004,1997,1963,1934,1919,1900,1889,
+1874,1864,1874,1879,1894,1927,1977,2021,2034,2027,2038,2051,2050,2054,2071,2072,2054,2044,2010,1968,
+1940,1934,1945,1975,1995,1987,1987,1987,1956,1914,1863,1825,1790,1748,1708,1682,1667,1670,1687,1694,
+1703,1716,1725,1750,1760,1766,1786,1808,1821,1828,1849,1865,1871,1879,1887,1894,1911,1927,1932,1941,
+1957,1971,1993,2015,2024,2049,2086,2100,2132,2163,2206,2234,2275,2298,2305,2312,2317,2326,2332,2365,
+2443,2548,2619,2649,2674,2628,2555,2417,2193,1877,1444,1051,740,504,317,163,53,-14,9,130,
+282,419,528,609,668,706,732,758,791,832,855,834,808,843,884,862,829,813,783,761,
+755,755,754,745,737,746,713,638,576,548,543,507,444,401,339,281,213,161,144,150,
+128,63,-39,-162,-289,-412,-503,-577,-623,-652,-660,-656,-619,-534,-410,-312,-217,-112,-188,-393,
+-551,-574,-445,-299,-204,-119,-9,127,232,337,405,421,346,246,170,94,110,138,187,284,
+322,326,323,294,266,224,216,251,283,228,138,21,-61,-137,-203,-261,-320,-384,-444,-489,
+-522,-542,-544,-539,-523,-492,-460,-446,-464,-493,-525,-535,-530,-530,-504,-481,-464,-440,-399,-341,
+-267,-168,-61,59,186,292,387,483,559,622,688,746,793,836,874,906,939,967,991,1005,
+1019,1036,1057,1076,1094,1107,1117,1128,1138,1144,1144,1142,1140,1140,1133,1119,1108,1093,1083,1062,
+1042,1023,1006,984,956,933,917,905,887,869,857,846,841,841,835,818,808,787,778,769,
+746,726,697,668,642,624,606,587,567,546,525,503,477,457,445,421,396,373,351,331,
+306,279,254,228,206,181,148,121,97,70,47,17,-13,-42,-72,-101,-135,-162,-183,-192,
+-200,-256,-322,-364,-393,-420,-458,-492,-522,-553,-590,-629,-667,-694,-718,-762,-811,-842,-872,-900,
+-930,-959,-988,-1018,-1044,-1073,-1100,-1130,-1158,-1187,-1214,-1243,-1266,-1285,-1301,-1314,-1327,-1338,-1352,-1365,
+-1381,-1398,-1412,-1428,-1445,-1462,-1476,-1496,-1517,-1528,-1530,-1533,-1550,-1557,-1566,-1542,-1518,-1516,-1521,-1518,
+-1513,-1503,-1478,-1417,-1406,-1362,-1308,-1273,-1232,-1219,-1159,-1129,-1192,-1218,-1190,-1220,-1172,-1185,-1205,-1210,
+-1248,-1253,-1296,-1335,-1355,-1423,-1479,-1441,-1453,-1465,-1474,-1483,-1478,-1471,-1500,-1490,-1505,-1519,-1498,-1445,
+-1432,-1478,-1459,-1380,-1348,-1409,-1428,-1379,-1284,-1209,-1167,-1113,-1114,-1170,-1273,-1402,-1528,-1628,-1700,-1761,
+-1806,-1840,-1867,-1887,-1898,-1901,-1905,-1917,-1925,-1925,-1913,-1906,-1903,-1906,-1915,-1916,-1926,-1946,-1978,-1996,
+-2014,-2014,-2024,-2045,-2067,-2092,-2116,-2131,-2129,-2135,-2140,-2137,-2135,-2135,-2149,-2153,-2148,-2142,-2150,-2186,
+-2222,-2252,-2284,-2309,-2330,-2333,-2339,-2348,-2386,-2434,-2471,-2560,-2641,-2743,-2812,-2858,-2898,-2938,-2977,-3012,
+-3043,-3079,-3109,-3146,-3171,-3171,-3177,-3190,-3197,-3204,-3211,-3206,-3208,-3208,-3210,-3220,-3240,-3267,-3294,-3325,
+-3356,-3387,-3419,-3452,-3472,-3491,-3534,-3579,-3611,-3627,-3638,-3675,-3707,-3750,-3783,-3802,-3852,-3894,-3937,-3954,
+-3981,-4010,-4046,-4070,-4096,-4119,-4123,-4122,-4130,-4125,-4120,-4115,-4103,-4092,-4091,-4095,-4107,-4130,-4156,-4176,
+-4209,-4234,-4251,-4267,-4266,-4261,-4249,-4238,-4235,-4234,-4237,-4244,-4239,-4235,-4259,-4285,-4288,-4278,-4263,-4241,
+-4213,-4179,-4138,-4104,-4075,-4048,-4022,-3998,-3965,-3922,-3874,-3824,-3774,-3724,-3675,-3633,-3588,-3544,-3508,-3471,
+-3428,-3387,-3354,-3300,-3262,-3239,-3215,-3168,-3140,-3105,-3061,-2970,-2874,-2822,-2795,-2728,-2657,-2591,-2535,-2471,
+-2384,-2306,-2186,-2052,-2015,-2021,-2014,-1996,-1945,-1905,-1885,-1862,-1858,-1837,-1810,-1781,-1737,-1637,-1613,-1650,
+-1658,-1632,-1580,-1532,-1486,-1447,-1396,-1364,-1311,-1244,-1152,-1065,-1001,-935,-906,-881,-824,-779,-727,-645,
+-560,-472,-379,-295,-235,-177,-112,-46,6,79,181,309,464,628,766,884,981,1055,1109,1159,
+1209,1260,1319,1380,1430,1498,1575,1656,1737,1812,1900,2003,2111,2216,2289,2314,2323,2331,2335,2346,
+2368,2402,2455,2517,2580,2643,2717,2790,2879,2960,3031,3100,3173,3240,3309,3385,3470,3538,3596,3658,
+3716,3776,3835,3898,3957,4023,4092,4142,4201,4254,4309,4360,4419,4483,4570,4655,4705,4741,4789,4844,
+4896,4955,5010,5054,5108,5170,5228,5270,5313,5341,5379,5412,5447,5490,5535,5585,5639,5669,5706,5735,
+5779,5810,5834,5885,5918,5956,5973,5986,6016,6055,6090,6139,6192,6259,6298,6223,6263,6301,6325,6329,
+6326,6312,6321,6326,6319,6307,6303,6289,6285,6288,6296,6302,6296,6279,6273,6275,6279,6279,6299,6307,
+6310,6310,6295,6300,6302,6300,6300,6290,6278,6270,6247,6183,6144,6148,6157,6150,6118,6061,5989,5935,
+5902,5876,5853,5822,5793,5770,5754,5731,5716,5706,5701,5719,5762,5805,5890,6040,6122,6151,6143,6104,
+6056,6012,5990,5973,5969,5956,5935,5924,5952,5975,5978,5972,5948,5919,5901,5885,5872,5851,5821,5784,
+5751,5720,5687,5655,5621,5594,5574,5553,5525,5497,5484,5481,5477,5471,5460,5447,5423,5388,5354,5312,
+5273,5234,5177,5108,5053,5002,4947,4886,4844,4800,4756,4712,4681,4655,4624,4592,4568,4548,4533,4529,
+4514,4490,4466,4446,4439,4438,4445,4451,4458,4464,4468,4472,4475,4481,4493,4495,4491,4479,4465,4462,
+4488,4521,4555,4595,4646,4694,4729,4751,4773,4791,4803,4781,4738,4700,4676,4678,4653,4638,4620,4600,
+4580,4575,4567,4545,4510,4467,4434,4400,4381,4356,4322,4324,4331,4302,4256,4210,4173,4146,4137,4142,
+4119,4098,4075,4038,3998,3964,3927,3894,3862,3824,3780,3728,3674,3622,3582,3564,3563,3561,3562,3542,
+3491,3447,3397,3344,3306,3271,3204,3089,2984,2918,2884,2871,2869,2867,2872,2880,2889,2895,2900,2902,
+2914,2931,2946,2947,2932,2893,2828,2741,2653,2574,2502,2451,2423,2404,2385,2382,2408,2452,2498,2531,
+2534,2510,2458,2389,2302,2202,2126,2078,2028,1976,1926,1865,1803,1744,1690,1638,1592,1553,1519,1479,
+1433,1398,1380,1351,1314,1288,1263,1231,1206,1203,1194,1160,1123,1098,1070,1043,1016,985,950,914,
+878,841,796,760,724,689,662,645,628,603,576,543,504,463,416,366,310,253,181,95,
+-2,-88,-165,-235,-304,-372,-436,-488,-531,-571,-618,-672,-732,-787,-831,-869,-896,-930,-971,-1013,
+-1056,-1097,-1139,-1179,-1207,-1237,-1269,-1297,-1313,-1331,-1359,-1388,-1408,-1431,-1457,-1494,-1543,-1585,-1632,-1689,
+-1735,-1750,-1750,-1727,-1718,-1708,-1673,-1618,-1543,-1463,-1410,-1427,-1482,-1529,-1602,-1705,-1779,-1832,-1884,-1929,
+-1977,-2066,-2151,-2185,-2215,-2273,-2328,-2376,-2423,-2474,-2522,-2552,-2577,-2609,-2628,-2638,-2639,-2625,-2625,-2628,
+-2628,-2642,-2681,-2715,-2735,-2765,-2799,-2804,-2809,-2831,-2846,-2867,-2906,-2952,-2991,-3012,-3018,-3029,-3059,-3103,
+-3138,-3162,-3186,-3220,-3267,-3312,-3350,-3379,-3394,-3407,-3447,-3491,-3537,-3572,-3603,-3649,-3697,-3749,-3809,-3854,
+-3872,-3878,-3891,-3930,-3964,-3964,-3963,-3980,-4001,-4030,-4061,-4089,-4125,-4147,-4158,-4194,-4237,-4250,-4235,-4200,
+-4176,-4177,-4177,-4174,-4183,-4195,-4183,-4164,-4133,-4110,-4098,-4098,-4062,-4030,-4065,-4100,-4086,-4090,-4071,-4060,
+-4074,-4036,-3969,-3899,-3887,-3879,-3884,-3946,-3904,-3884,-3873,-3863,-3844,-3873,-3917,-3928,-3957,-4052,-4130,-4171,
+-4218,-4244,-4261,-4261,-4245,-4254,-4256,-4279,-4274,-4301,-4321,-4326,-4346,-4385,-4380,-4357,-4312,-4288,-4310,-4305,
+-4278,-4243,-4191,-4159,-4133,-4086,-4054,-4029,-4024,-3925,-3888,-3832,-3844,-3892,-3941,-3895,-3785,-3816,-3877,-3850,
+-3793,-3760,-3772,-3761,-3749,-3754,-3780,-3781,-3753,-3720,-3728,-3732,-3729,-3738,-3776,-3771,-3723,-3684,-3685,-3686,
+-3673,-3664,-3660,-3622,-3612,-3581,-3537,-3486,-3424,-3365,-3303,-3242,-3181,-3135,-3085,-3013,-2941,-2883,-2835,-2783,
+-2715,-2648,-2584,-2536,-2515,-2489,-2431,-2376,-2346,-2321,-2256,-2189,-2127,-2078,-2022,-1961,-1894,-1816,-1744,-1701,
+-1653,-1598,-1537,-1450,-1383,-1293,-1223,-1153,-1092,-1022,-931,-859,-808,-741,-669,-616,-541,-463,-392,-326,
+-237,-154,-81,-13,53,106,152,192,251,316,364,405,449,497,558,604,646,689,738,778,
+811,843,867,892,918,946,973,998,1016,1036,1068,1106,1151,1201,1246,1280,1315,1357,1403,1461,
+1540,1602,1647,1686,1700,1715,1721,1748,1789,1857,1922,1989,2038,2056,2007,1978,1997,1984,1970,1948,
+1931,1913,1902,1904,1909,1931,1953,2002,2033,2031,2046,2063,2086,2105,2115,2121,2097,2078,2052,2014,
+1980,1946,1932,1941,1991,2030,2034,2035,2072,2049,1959,1888,1832,1797,1767,1741,1724,1719,1720,1726,
+1730,1726,1732,1735,1749,1762,1771,1787,1797,1813,1849,1860,1856,1864,1883,1872,1881,1898,1915,1936,
+1948,1953,1967,1985,2007,2022,2042,2092,2138,2158,2192,2222,2250,2266,2286,2287,2292,2300,2311,2342,
+2386,2455,2559,2640,2672,2644,2593,2486,2307,2045,1692,1233,840,575,369,199,85,34,70,201,
+346,467,563,637,692,735,760,777,788,803,829,852,843,798,785,839,852,803,775,736,
+702,674,655,654,691,728,714,680,618,556,539,513,464,428,419,398,338,319,268,229,
+171,151,154,105,34,-59,-158,-253,-346,-434,-507,-571,-624,-662,-676,-654,-610,-581,-608,-707,
+-827,-897,-907,-871,-800,-719,-639,-539,-431,-279,-132,-29,66,61,-41,-192,-305,-331,-208,-74,
+56,-11,-84,-123,-166,-239,-320,-385,-365,-399,-460,-523,-584,-635,-688,-728,-768,-834,-897,-934,
+-946,-936,-916,-892,-893,-872,-833,-801,-763,-740,-719,-689,-654,-609,-567,-512,-442,-358,-265,-163,
+-56,48,151,257,353,437,515,590,654,714,764,806,845,880,913,940,964,987,1009,1025,
+1032,1043,1052,1065,1080,1089,1096,1098,1102,1107,1108,1107,1104,1098,1092,1085,1081,1068,1051,1037,
+1016,1001,982,957,937,912,888,869,853,833,814,797,781,773,770,767,762,744,716,703,
+687,664,668,628,594,575,558,537,517,495,472,447,418,397,379,363,343,327,310,291,
+270,248,223,200,176,150,124,104,77,50,28,1,-31,-62,-102,-141,-171,-203,-233,-259,
+-277,-265,-336,-385,-420,-451,-484,-519,-545,-576,-612,-653,-689,-721,-754,-792,-832,-860,-887,-921,
+-950,-990,-1027,-1058,-1085,-1112,-1138,-1166,-1195,-1221,-1251,-1279,-1308,-1329,-1350,-1364,-1377,-1390,-1403,-1412,
+-1426,-1437,-1450,-1461,-1475,-1490,-1506,-1518,-1534,-1554,-1584,-1606,-1602,-1606,-1642,-1652,-1625,-1600,-1578,-1569,
+-1562,-1557,-1543,-1517,-1490,-1469,-1427,-1376,-1324,-1280,-1286,-1253,-1230,-1286,-1257,-1203,-1292,-1271,-1197,-1183,
+-1227,-1218,-1224,-1231,-1277,-1326,-1361,-1436,-1440,-1441,-1481,-1496,-1508,-1516,-1500,-1525,-1537,-1547,-1561,-1520,
+-1554,-1480,-1439,-1490,-1430,-1424,-1392,-1363,-1416,-1400,-1352,-1246,-1210,-1179,-1196,-1257,-1381,-1498,-1594,-1663,
+-1721,-1765,-1791,-1807,-1819,-1830,-1848,-1879,-1894,-1904,-1905,-1894,-1880,-1876,-1882,-1898,-1912,-1932,-1952,-1977,
+-1991,-1999,-1992,-1994,-2018,-2050,-2074,-2088,-2107,-2115,-2119,-2121,-2117,-2107,-2100,-2100,-2108,-2115,-2112,-2114,
+-2141,-2166,-2194,-2224,-2257,-2280,-2295,-2305,-2313,-2357,-2409,-2441,-2498,-2579,-2661,-2729,-2780,-2820,-2859,-2899,
+-2937,-2965,-2985,-3017,-3069,-3100,-3097,-3119,-3144,-3121,-3120,-3145,-3158,-3167,-3179,-3192,-3206,-3220,-3237,-3260,
+-3288,-3323,-3355,-3394,-3420,-3425,-3459,-3507,-3553,-3589,-3606,-3607,-3635,-3676,-3715,-3738,-3767,-3792,-3818,-3847,
+-3868,-3893,-3919,-3954,-3995,-4022,-4040,-4041,-4040,-4042,-4042,-4043,-4042,-4041,-4040,-4048,-4064,-4079,-4100,-4128,
+-4158,-4186,-4203,-4206,-4209,-4206,-4198,-4190,-4176,-4163,-4161,-4168,-4182,-4192,-4193,-4228,-4250,-4251,-4241,-4227,
+-4211,-4189,-4158,-4120,-4083,-4049,-4020,-3992,-3960,-3917,-3865,-3817,-3767,-3721,-3682,-3645,-3610,-3571,-3534,-3499,
+-3458,-3422,-3386,-3360,-3332,-3305,-3278,-3252,-3201,-3144,-3088,-3028,-2959,-2866,-2748,-2687,-2635,-2582,-2521,-2466,
+-2423,-2358,-2306,-2246,-2171,-2126,-2089,-2057,-2029,-1976,-1952,-1945,-1910,-1890,-1864,-1847,-1805,-1780,-1682,-1685,
+-1687,-1687,-1675,-1641,-1582,-1522,-1487,-1457,-1429,-1398,-1336,-1269,-1204,-1128,-1047,-991,-934,-887,-836,-770,
+-698,-624,-549,-473,-402,-347,-290,-221,-149,-64,31,140,279,453,624,769,891,980,1031,1082,
+1143,1197,1240,1289,1340,1395,1466,1547,1631,1728,1819,1906,1998,2101,2210,2311,2382,2407,2406,2399,
+2400,2406,2418,2451,2509,2562,2608,2671,2740,2853,2981,3003,3062,3149,3227,3296,3363,3435,3508,3579,
+3641,3700,3758,3815,3877,3936,3991,4042,4091,4150,4211,4276,4342,4406,4458,4509,4569,4652,4715,4763,
+4823,4872,4931,5002,5057,5095,5137,5188,5237,5275,5308,5348,5384,5434,5478,5537,5569,5596,5623,5646,
+5689,5744,5797,5836,5857,5895,5934,5966,5990,6033,6086,6137,6180,6200,6218,6233,6212,6288,6329,6315,
+6284,6287,6291,6292,6289,6289,6298,6321,6314,6316,6302,6302,6317,6322,6306,6296,6290,6293,6290,6300,
+6306,6317,6326,6321,6315,6329,6328,6328,6302,6291,6278,6275,6240,6171,6147,6154,6147,6129,6104,6023,
+5965,5928,5906,5886,5846,5812,5792,5771,5754,5735,5716,5709,5719,5745,5784,5837,5992,6079,6114,6106,
+6067,6021,5963,5923,5909,5895,5890,5886,5890,5911,5961,5977,5985,5979,5959,5933,5909,5885,5866,5832,
+5787,5750,5720,5691,5654,5618,5586,5561,5534,5505,5484,5472,5468,5462,5459,5453,5446,5431,5393,5354,
+5314,5275,5219,5155,5093,5045,4990,4918,4853,4800,4754,4712,4673,4642,4615,4589,4568,4547,4536,4520,
+4509,4500,4480,4459,4444,4434,4441,4449,4455,4460,4462,4469,4485,4499,4514,4534,4551,4557,4557,4554,
+4546,4549,4573,4596,4633,4674,4723,4761,4801,4831,4854,4846,4812,4789,4746,4737,4724,4702,4670,4646,
+4627,4615,4613,4595,4577,4558,4543,4516,4480,4451,4415,4380,4351,4339,4350,4332,4289,4254,4245,4233,
+4224,4211,4174,4148,4124,4080,4018,3980,3950,3930,3914,3888,3846,3796,3746,3703,3671,3660,3656,3650,
+3634,3591,3529,3470,3416,3377,3342,3290,3200,3078,2990,2954,2931,2916,2912,2921,2931,2938,2943,2948,
+2961,2979,2997,3005,2992,2966,2925,2868,2809,2753,2690,2630,2579,2538,2504,2473,2455,2462,2476,2485,
+2501,2507,2484,2436,2374,2306,2227,2151,2092,2039,1988,1929,1868,1805,1739,1677,1634,1602,1564,1520,
+1471,1420,1378,1356,1338,1303,1267,1234,1201,1188,1187,1184,1162,1132,1094,1066,1049,1029,1004,977,
+943,900,855,806,764,726,694,664,637,617,591,555,513,481,450,396,343,288,216,128,
+42,-64,-154,-249,-346,-434,-512,-579,-635,-678,-722,-772,-824,-875,-923,-970,-1016,-1059,-1096,-1131,
+-1158,-1189,-1225,-1263,-1309,-1345,-1368,-1397,-1426,-1447,-1462,-1484,-1516,-1537,-1567,-1598,-1627,-1664,-1701,-1747,
+-1790,-1816,-1825,-1832,-1832,-1823,-1811,-1781,-1726,-1641,-1555,-1491,-1485,-1539,-1595,-1643,-1728,-1813,-1868,-1924,
+-1983,-2029,-2106,-2189,-2230,-2267,-2315,-2357,-2404,-2452,-2497,-2537,-2571,-2609,-2646,-2673,-2684,-2681,-2681,-2689,
+-2681,-2675,-2699,-2738,-2781,-2813,-2836,-2840,-2832,-2842,-2860,-2870,-2905,-2959,-3002,-3040,-3067,-3079,-3093,-3125,
+-3159,-3187,-3217,-3243,-3274,-3319,-3360,-3377,-3388,-3422,-3470,-3508,-3551,-3594,-3613,-3634,-3686,-3756,-3806,-3840,
+-3867,-3886,-3910,-3928,-3952,-3986,-4001,-4007,-4020,-4036,-4058,-4087,-4119,-4151,-4177,-4206,-4254,-4297,-4315,-4316,
+-4304,-4280,-4262,-4250,-4236,-4232,-4216,-4188,-4167,-4118,-4074,-4007,-3984,-4000,-4003,-4018,-4033,-4048,-4047,-4039,
+-4009,-4006,-4022,-3967,-3955,-3935,-3895,-3887,-3921,-3945,-3909,-3889,-3888,-3876,-3889,-3902,-3928,-4041,-4116,-4148,
+-4171,-4199,-4212,-4229,-4244,-4234,-4219,-4222,-4236,-4242,-4251,-4229,-4207,-4207,-4204,-4240,-4301,-4333,-4338,-4310,
+-4266,-4251,-4249,-4223,-4191,-4186,-4151,-4115,-4112,-4068,-3980,-3928,-3903,-3912,-3964,-3990,-3917,-3848,-3889,-3908,
+-3884,-3863,-3868,-3865,-3825,-3774,-3778,-3787,-3783,-3771,-3737,-3740,-3750,-3749,-3729,-3695,-3687,-3677,-3667,-3677,
+-3696,-3707,-3716,-3691,-3661,-3648,-3609,-3548,-3474,-3396,-3340,-3292,-3239,-3184,-3092,-3015,-2957,-2907,-2865,-2820,
+-2777,-2716,-2664,-2627,-2593,-2541,-2479,-2432,-2397,-2360,-2314,-2255,-2188,-2132,-2084,-2022,-1959,-1898,-1834,-1779,
+-1708,-1639,-1577,-1515,-1439,-1366,-1295,-1209,-1138,-1081,-1006,-928,-866,-806,-740,-673,-587,-507,-429,-361,
+-272,-202,-120,-56,4,69,125,182,219,259,322,361,423,467,519,577,635,682,733,783,
+823,859,894,922,951,974,995,1017,1036,1046,1070,1105,1150,1200,1237,1269,1308,1352,1399,1449,
+1531,1594,1627,1665,1713,1743,1750,1745,1782,1842,1909,1992,2046,2050,2032,2004,2038,2059,2042,2050,
+1999,1961,1968,1957,1947,1949,1968,1986,2022,2032,2037,2086,2148,2186,2206,2189,2183,2167,2127,2084,
+2034,1994,1959,1942,1950,2003,2058,2062,2071,2134,2139,2029,1937,1865,1827,1797,1773,1760,1754,1751,
+1751,1747,1746,1746,1747,1753,1767,1791,1804,1815,1828,1844,1854,1855,1862,1876,1889,1898,1907,1924,
+1945,1957,1962,1987,1999,2033,2050,2085,2112,2144,2174,2207,2227,2242,2250,2254,2255,2271,2310,2384,
+2412,2471,2529,2575,2628,2625,2570,2464,2304,2078,1790,1420,1012,671,430,231,113,79,129,249,
+386,520,614,671,718,750,778,796,804,809,811,816,824,822,803,763,761,789,762,721,
+683,639,605,573,578,639,669,656,614,550,517,542,569,520,467,486,459,371,337,336,
+313,276,206,141,102,83,61,14,-50,-115,-178,-237,-296,-352,-407,-468,-519,-579,-628,-694,
+-791,-899,-973,-1017,-1022,-1003,-971,-933,-875,-815,-752,-706,-666,-626,-652,-741,-834,-851,-849,-789,
+-631,-579,-639,-707,-755,-769,-773,-811,-826,-822,-834,-848,-855,-880,-909,-943,-981,-1015,-1043,-1062,
+-1053,-1033,-1010,-986,-969,-961,-927,-878,-822,-760,-700,-637,-577,-509,-431,-345,-252,-157,-57,48,
+149,242,320,393,469,537,602,658,710,755,796,833,867,897,927,951,971,985,1001,1016,
+1027,1030,1031,1033,1044,1055,1062,1061,1061,1060,1060,1057,1052,1048,1042,1032,1023,1016,1005,995,
+983,968,954,934,911,889,868,845,822,802,789,765,743,726,715,710,701,686,664,653,
+637,612,587,573,550,529,509,489,467,444,423,398,368,339,318,299,279,262,252,234,
+213,192,169,149,125,104,73,51,29,8,-15,-41,-69,-100,-129,-168,-206,-237,-259,-270,
+-300,-310,-343,-354,-359,-446,-501,-548,-581,-608,-645,-678,-713,-751,-788,-817,-844,-884,-919,-962,
+-997,-1029,-1056,-1089,-1118,-1139,-1176,-1207,-1234,-1264,-1291,-1321,-1347,-1372,-1394,-1410,-1421,-1426,-1435,-1458,
+-1471,-1484,-1495,-1507,-1516,-1524,-1533,-1544,-1560,-1573,-1596,-1621,-1648,-1667,-1675,-1693,-1739,-1771,-1725,-1643,
+-1600,-1581,-1576,-1568,-1541,-1513,-1498,-1490,-1466,-1424,-1390,-1367,-1335,-1317,-1324,-1355,-1263,-1338,-1311,-1245,
+-1288,-1248,-1222,-1260,-1272,-1302,-1330,-1322,-1385,-1443,-1438,-1497,-1503,-1510,-1512,-1495,-1556,-1558,-1588,-1591,
+-1599,-1612,-1555,-1514,-1532,-1495,-1461,-1456,-1403,-1369,-1435,-1459,-1377,-1312,-1238,-1211,-1260,-1335,-1439,-1552,
+-1633,-1689,-1718,-1729,-1738,-1757,-1780,-1812,-1855,-1884,-1899,-1904,-1901,-1890,-1883,-1894,-1908,-1918,-1930,-1946,
+-1958,-1960,-1961,-1957,-1966,-1987,-2007,-2041,-2068,-2086,-2095,-2104,-2103,-2084,-2071,-2060,-2057,-2059,-2077,-2090,
+-2093,-2101,-2108,-2137,-2176,-2215,-2249,-2265,-2279,-2294,-2317,-2363,-2398,-2436,-2500,-2566,-2623,-2663,-2713,-2756,
+-2809,-2854,-2878,-2904,-2937,-2977,-2996,-3008,-3052,-3060,-3069,-3086,-3093,-3101,-3116,-3127,-3137,-3157,-3172,-3192,
+-3211,-3233,-3265,-3316,-3347,-3375,-3390,-3407,-3445,-3480,-3512,-3540,-3555,-3566,-3598,-3628,-3647,-3664,-3680,-3700,
+-3726,-3757,-3793,-3836,-3878,-3927,-3953,-3967,-3975,-3979,-3979,-3981,-3980,-3980,-3980,-3987,-4006,-4038,-4072,-4095,
+-4112,-4129,-4144,-4146,-4149,-4148,-4144,-4134,-4125,-4105,-4089,-4091,-4103,-4124,-4143,-4166,-4195,-4206,-4210,-4208,
+-4194,-4174,-4158,-4138,-4105,-4073,-4041,-4012,-3985,-3948,-3899,-3839,-3786,-3739,-3693,-3652,-3614,-3579,-3546,-3498,
+-3477,-3440,-3406,-3376,-3342,-3311,-3275,-3251,-3224,-3180,-3127,-3067,-3006,-2924,-2837,-2741,-2644,-2554,-2484,-2454,
+-2413,-2364,-2337,-2277,-2215,-2180,-2174,-2127,-2088,-2065,-2030,-2021,-2003,-1976,-1940,-1891,-1893,-1848,-1842,-1803,
+-1787,-1751,-1751,-1735,-1704,-1630,-1581,-1556,-1525,-1496,-1471,-1432,-1377,-1302,-1225,-1154,-1086,-1012,-944,-873,
+-804,-734,-673,-612,-545,-475,-408,-341,-265,-174,-65,41,157,306,458,621,755,872,950,1004,
+1064,1127,1186,1236,1285,1338,1400,1468,1536,1610,1699,1807,1907,2001,2101,2187,2275,2370,2437,2450,
+2445,2440,2441,2454,2473,2492,2525,2566,2617,2690,2805,2910,2979,3040,3118,3208,3283,3359,3419,3482,
+3549,3619,3686,3744,3804,3861,3919,3976,4027,4075,4135,4180,4243,4310,4371,4432,4486,4537,4594,4656,
+4719,4778,4846,4905,4960,5007,5048,5097,5135,5178,5215,5241,5283,5326,5362,5392,5434,5477,5512,5561,
+5619,5662,5703,5736,5792,5809,5823,5864,5910,5947,5979,6016,6074,6111,6139,6190,6225,6216,6270,6346,
+6371,6366,6355,6343,6317,6302,6295,6294,6295,6293,6307,6300,6284,6291,6287,6297,6296,6298,6298,6298,
+6318,6311,6326,6332,6320,6319,6330,6336,6327,6318,6306,6287,6274,6252,6191,6164,6169,6170,6148,6110,
+6055,5996,5950,5913,5894,5881,5861,5838,5818,5794,5772,5753,5744,5742,5757,5778,5804,5888,5996,6046,
+6051,6034,5985,5888,5853,5855,5850,5842,5846,5851,5861,5907,5967,5985,5986,5982,5967,5941,5907,5870,
+5833,5800,5767,5731,5691,5650,5602,5555,5521,5498,5480,5471,5463,5471,5475,5470,5462,5446,5427,5411,
+5379,5344,5310,5259,5180,5102,5029,4965,4891,4822,4754,4702,4666,4639,4610,4582,4563,4547,4517,4505,
+4496,4494,4488,4475,4467,4467,4466,4454,4456,4466,4476,4486,4497,4501,4517,4539,4561,4579,4598,4614,
+4625,4631,4654,4684,4691,4691,4712,4740,4782,4816,4851,4856,4852,4820,4802,4794,4782,4763,4745,4714,
+4715,4699,4679,4659,4647,4638,4617,4599,4576,4557,4526,4490,4450,4417,4384,4363,4344,4320,4330,4351,
+4366,4344,4315,4284,4242,4215,4160,4093,4035,4013,4002,4000,3992,3966,3924,3875,3829,3782,3739,3709,
+3688,3663,3631,3588,3531,3475,3431,3397,3357,3286,3181,3078,3016,2975,2950,2953,2970,2983,2989,2996,
+3009,3022,3035,3049,3050,3030,2997,2959,2918,2876,2835,2793,2749,2696,2638,2597,2574,2561,2551,2526,
+2483,2465,2472,2466,2427,2364,2295,2227,2185,2162,2113,2035,1950,1875,1810,1751,1689,1633,1605,1570,
+1520,1473,1419,1363,1342,1329,1298,1260,1222,1183,1162,1159,1154,1150,1136,1109,1077,1057,1039,1020,
+994,965,924,883,839,790,743,708,674,642,607,577,546,499,452,418,374,317,260,179,
+79,-38,-143,-251,-370,-466,-532,-582,-628,-680,-736,-784,-839,-895,-949,-1001,-1048,-1088,-1123,-1158,
+-1191,-1221,-1255,-1294,-1339,-1391,-1433,-1468,-1491,-1502,-1521,-1543,-1563,-1590,-1621,-1656,-1698,-1742,-1773,-1787,
+-1814,-1848,-1876,-1904,-1926,-1929,-1915,-1894,-1858,-1785,-1666,-1583,-1552,-1554,-1603,-1664,-1726,-1799,-1859,-1892,
+-1940,-2010,-2075,-2142,-2211,-2263,-2304,-2348,-2396,-2439,-2479,-2518,-2562,-2606,-2654,-2700,-2729,-2742,-2739,-2737,
+-2735,-2724,-2731,-2751,-2781,-2831,-2870,-2872,-2858,-2865,-2888,-2911,-2938,-2984,-3036,-3086,-3125,-3145,-3160,-3182,
+-3207,-3226,-3246,-3271,-3289,-3313,-3352,-3384,-3397,-3412,-3441,-3477,-3529,-3584,-3624,-3651,-3667,-3703,-3763,-3808,
+-3847,-3890,-3917,-3938,-3965,-3993,-4029,-4058,-4076,-4082,-4087,-4110,-4148,-4181,-4217,-4250,-4281,-4316,-4343,-4346,
+-4356,-4374,-4369,-4340,-4307,-4274,-4250,-4217,-4187,-4185,-4185,-4155,-4106,-4053,-3980,-3948,-3927,-3980,-4014,-4020,
+-4040,-4022,-4013,-4010,-4013,-3968,-3954,-3947,-3911,-3937,-3963,-3968,-3971,-3950,-3916,-3929,-3934,-3958,-3982,-4030,
+-4086,-4107,-4143,-4193,-4228,-4282,-4344,-4386,-4398,-4392,-4379,-4365,-4356,-4332,-4348,-4339,-4312,-4271,-4256,-4279,
+-4271,-4254,-4225,-4185,-4181,-4180,-4202,-4207,-4227,-4214,-4137,-4059,-3998,-3946,-3966,-3996,-3953,-3871,-3876,-3936,
+-3954,-3947,-3938,-3942,-3936,-3886,-3863,-3859,-3867,-3864,-3835,-3827,-3825,-3810,-3763,-3748,-3747,-3748,-3744,-3753,
+-3753,-3748,-3729,-3737,-3715,-3690,-3639,-3581,-3523,-3468,-3412,-3362,-3298,-3226,-3161,-3081,-3012,-2951,-2897,-2848,
+-2793,-2740,-2708,-2679,-2639,-2586,-2546,-2496,-2454,-2407,-2356,-2302,-2265,-2210,-2144,-2080,-2023,-1959,-1891,-1826,
+-1768,-1705,-1629,-1557,-1478,-1421,-1363,-1277,-1189,-1130,-1074,-1019,-948,-861,-792,-714,-647,-561,-490,-429,
+-347,-260,-183,-114,-47,32,96,158,207,251,290,350,394,446,516,558,623,680,736,780,
+831,873,917,954,980,999,1018,1027,1052,1066,1076,1096,1129,1175,1224,1259,1289,1339,1392,1433,
+1487,1561,1605,1659,1703,1733,1758,1783,1820,1877,1922,1979,2021,2028,2012,2032,2098,2134,2128,2111,
+2072,2054,2030,2051,2041,2002,1992,2000,2012,2023,2050,2111,2163,2212,2217,2220,2233,2226,2193,2161,
+2088,2043,2018,1981,1958,1974,2048,2137,2123,2129,2181,2188,2113,2009,1915,1866,1832,1808,1789,1778,
+1777,1779,1780,1783,1780,1782,1785,1802,1828,1831,1832,1833,1845,1860,1873,1901,1913,1930,1932,1947,
+1960,1960,1968,1977,1984,2007,2040,2073,2092,2125,2166,2200,2223,2240,2249,2238,2232,2244,2273,2339,
+2445,2524,2608,2635,2625,2581,2532,2438,2259,2014,1711,1385,1055,746,489,282,154,118,170,299,
+436,551,640,710,753,776,801,806,819,825,821,811,796,794,792,777,752,711,698,701,
+667,629,581,533,504,508,566,635,606,542,475,441,456,473,461,420,429,427,377,349,
+354,360,321,297,219,143,86,61,74,62,27,-8,-41,-70,-102,-132,-180,-227,-290,-355,
+-435,-526,-634,-748,-852,-929,-979,-1016,-1025,-1039,-1033,-1035,-1044,-1056,-1079,-1116,-1163,-1200,-1208,-1206,
+-1173,-1143,-1121,-1128,-1143,-1140,-1113,-1091,-1074,-1061,-1052,-1047,-1047,-1057,-1066,-1070,-1062,-1045,-1035,-1014,
+-986,-951,-909,-862,-814,-770,-737,-686,-618,-536,-451,-367,-288,-212,-141,-67,6,80,155,233,
+313,386,448,503,553,604,659,697,739,776,806,836,868,894,917,941,960,970,983,1003,
+1001,1008,1005,1001,998,1003,1011,1014,1011,1007,1005,1004,994,985,979,972,963,953,940,932,
+926,920,911,901,885,868,847,825,806,782,758,739,714,698,677,666,658,645,624,608,
+588,569,550,529,509,490,475,459,436,410,385,361,330,302,275,247,226,206,190,173,
+156,136,114,94,73,51,25,-1,-27,-50,-75,-100,-127,-153,-180,-211,-247,-279,-310,-317,
+-279,-353,-398,-427,-407,-462,-521,-568,-615,-655,-687,-719,-747,-778,-815,-853,-883,-913,-944,-982,
+-1019,-1056,-1094,-1128,-1157,-1185,-1215,-1245,-1271,-1299,-1328,-1358,-1389,-1416,-1437,-1454,-1469,-1480,-1479,-1500,
+-1514,-1529,-1545,-1556,-1564,-1570,-1578,-1584,-1596,-1604,-1615,-1637,-1660,-1667,-1671,-1689,-1717,-1741,-1816,-1875,
+-1848,-1741,-1696,-1659,-1609,-1548,-1501,-1472,-1499,-1509,-1497,-1474,-1441,-1395,-1388,-1407,-1418,-1378,-1390,-1355,
+-1315,-1334,-1306,-1301,-1367,-1346,-1345,-1355,-1387,-1467,-1504,-1477,-1490,-1562,-1569,-1581,-1598,-1614,-1580,-1640,
+-1636,-1670,-1617,-1552,-1519,-1482,-1539,-1511,-1454,-1446,-1415,-1389,-1414,-1478,-1417,-1325,-1247,-1234,-1261,-1348,
+-1476,-1573,-1634,-1671,-1687,-1705,-1735,-1773,-1815,-1852,-1876,-1881,-1873,-1888,-1899,-1903,-1915,-1920,-1914,-1912,
+-1910,-1909,-1910,-1905,-1908,-1914,-1932,-1963,-1986,-2020,-2038,-2047,-2062,-2066,-2047,-2039,-2027,-2016,-2021,-2036,
+-2047,-2049,-2055,-2064,-2081,-2122,-2166,-2210,-2234,-2248,-2270,-2287,-2318,-2355,-2399,-2425,-2469,-2509,-2540,-2573,
+-2645,-2697,-2736,-2775,-2811,-2841,-2868,-2892,-2923,-2957,-2985,-3010,-3024,-3029,-3034,-3044,-3059,-3066,-3082,-3100,
+-3126,-3157,-3184,-3214,-3248,-3279,-3298,-3319,-3344,-3375,-3403,-3424,-3447,-3471,-3496,-3526,-3556,-3579,-3596,-3610,
+-3630,-3655,-3687,-3726,-3770,-3813,-3855,-3893,-3919,-3935,-3939,-3939,-3940,-3936,-3938,-3945,-3959,-3978,-4005,-4039,
+-4066,-4076,-4083,-4093,-4096,-4092,-4089,-4087,-4078,-4061,-4045,-4038,-4039,-4041,-4057,-4074,-4091,-4111,-4137,-4161,
+-4175,-4177,-4165,-4131,-4100,-4082,-4056,-4034,-4011,-3984,-3943,-3888,-3830,-3781,-3731,-3681,-3638,-3600,-3566,-3517,
+-3474,-3445,-3426,-3394,-3357,-3324,-3301,-3274,-3244,-3199,-3147,-3091,-3029,-2968,-2890,-2812,-2729,-2636,-2531,-2460,
+-2428,-2408,-2364,-2340,-2304,-2247,-2221,-2208,-2173,-2155,-2129,-2107,-2085,-2069,-2029,-1956,-1931,-1948,-1909,-1883,
+-1870,-1851,-1844,-1826,-1799,-1770,-1725,-1672,-1635,-1612,-1588,-1555,-1511,-1457,-1390,-1315,-1235,-1149,-1073,-1002,
+-935,-865,-795,-730,-661,-578,-503,-432,-360,-259,-130,-7,96,201,305,455,593,725,831,908,
+972,1039,1101,1165,1237,1294,1342,1403,1468,1532,1606,1701,1807,1918,2024,2112,2176,2251,2336,2400,
+2421,2424,2424,2426,2437,2448,2477,2533,2564,2606,2681,2815,2926,2999,3045,3099,3178,3259,3329,3404,
+3465,3526,3589,3662,3722,3781,3834,3886,3940,3990,4041,4099,4155,4205,4267,4339,4404,4461,4519,4580,
+4635,4696,4757,4819,4887,4955,5008,5056,5092,5125,5169,5208,5238,5279,5330,5366,5401,5436,5473,5514,
+5556,5609,5660,5713,5742,5772,5783,5803,5845,5890,5933,5969,6005,6052,6092,6142,6190,6226,6217,6218,
+6296,6344,6378,6391,6384,6377,6362,6357,6332,6331,6333,6316,6309,6302,6307,6309,6316,6319,6308,6301,
+6293,6303,6305,6314,6319,6318,6319,6335,6331,6330,6326,6315,6300,6278,6256,6209,6177,6186,6192,6178,
+6146,6114,6069,6007,5971,5952,5929,5892,5865,5840,5815,5799,5782,5766,5754,5755,5759,5772,5790,5878,
+5959,5983,5959,5876,5801,5798,5815,5808,5808,5818,5829,5839,5864,5925,5970,5976,5968,5954,5927,5897,
+5868,5841,5810,5777,5743,5703,5653,5595,5553,5536,5518,5508,5508,5502,5496,5485,5466,5444,5419,5396,
+5382,5360,5319,5272,5219,5158,5086,5017,4950,4873,4803,4739,4686,4645,4611,4585,4561,4536,4517,4507,
+4492,4482,4477,4474,4473,4467,4465,4462,4456,4447,4449,4461,4479,4497,4515,4539,4572,4600,4624,4645,
+4661,4680,4708,4755,4793,4802,4801,4798,4791,4808,4829,4844,4846,4837,4816,4812,4835,4814,4793,4784,
+4742,4720,4709,4731,4733,4727,4713,4688,4647,4619,4591,4578,4545,4485,4457,4443,4422,4413,4392,4377,
+4383,4390,4374,4361,4348,4325,4281,4225,4160,4112,4092,4087,4091,4083,4064,4039,3997,3948,3899,3844,
+3784,3731,3690,3645,3601,3558,3513,3469,3426,3381,3326,3254,3159,3069,3014,2995,2992,3011,3033,3052,
+3063,3073,3084,3090,3096,3091,3071,3040,3007,2974,2945,2919,2893,2857,2811,2757,2706,2683,2674,2651,
+2598,2522,2457,2436,2443,2421,2367,2306,2237,2191,2185,2165,2100,2022,1938,1849,1766,1688,1622,1566,
+1523,1484,1448,1409,1358,1318,1297,1278,1246,1206,1167,1143,1129,1130,1132,1128,1112,1090,1072,1050,
+1029,1012,984,946,901,861,819,764,720,679,640,601,560,519,477,429,383,330,276,216,
+129,14,-113,-246,-374,-478,-535,-580,-636,-687,-733,-780,-824,-881,-939,-984,-1027,-1070,-1106,-1138,
+-1171,-1205,-1246,-1293,-1344,-1424,-1496,-1516,-1519,-1531,-1542,-1552,-1562,-1578,-1604,-1638,-1678,-1719,-1762,-1794,
+-1818,-1842,-1872,-1899,-1949,-1988,-2002,-1996,-1964,-1922,-1836,-1720,-1630,-1582,-1570,-1618,-1694,-1777,-1857,-1901,
+-1913,-1952,-2030,-2112,-2185,-2240,-2284,-2335,-2388,-2434,-2473,-2509,-2549,-2599,-2657,-2715,-2760,-2783,-2799,-2801,
+-2791,-2788,-2786,-2788,-2812,-2839,-2863,-2887,-2905,-2912,-2930,-2961,-2991,-3026,-3074,-3127,-3167,-3189,-3211,-3229,
+-3242,-3261,-3284,-3302,-3314,-3321,-3328,-3348,-3372,-3381,-3400,-3433,-3480,-3526,-3567,-3596,-3635,-3677,-3723,-3772,
+-3818,-3859,-3906,-3939,-3963,-3988,-4014,-4048,-4081,-4115,-4131,-4134,-4164,-4204,-4245,-4292,-4320,-4344,-4372,-4393,
+-4404,-4415,-4425,-4425,-4419,-4396,-4373,-4330,-4292,-4253,-4226,-4211,-4163,-4115,-4097,-4053,-4006,-3991,-4007,-4038,
+-4012,-3994,-3949,-3928,-3948,-4004,-3983,-3953,-3936,-3931,-3924,-3940,-3952,-3952,-3969,-3968,-3965,-3986,-3986,-3996,
+-4026,-4060,-4086,-4121,-4208,-4314,-4399,-4453,-4495,-4511,-4528,-4552,-4568,-4561,-4538,-4523,-4511,-4480,-4437,-4382,
+-4317,-4281,-4262,-4249,-4216,-4167,-4169,-4200,-4230,-4240,-4204,-4128,-4106,-4067,-4025,-4020,-3992,-3948,-3935,-3973,
+-4000,-3994,-4017,-4022,-4006,-3993,-3968,-3915,-3884,-3885,-3901,-3916,-3901,-3896,-3883,-3866,-3866,-3853,-3833,-3820,
+-3802,-3807,-3809,-3789,-3763,-3706,-3685,-3657,-3593,-3526,-3456,-3374,-3323,-3265,-3207,-3164,-3109,-3056,-2994,-2940,
+-2893,-2852,-2799,-2743,-2702,-2670,-2614,-2567,-2517,-2467,-2424,-2355,-2301,-2251,-2210,-2162,-2101,-2031,-1961,-1888,
+-1819,-1755,-1698,-1630,-1560,-1491,-1414,-1326,-1257,-1202,-1138,-1070,-998,-932,-857,-769,-695,-616,-545,-479,
+-415,-342,-247,-171,-90,-12,59,124,180,223,287,335,395,444,491,550,617,680,726,778,
+827,877,925,975,1020,1041,1052,1069,1077,1091,1094,1104,1128,1164,1205,1241,1272,1319,1379,1429,
+1465,1502,1556,1612,1673,1722,1770,1819,1865,1909,1943,1979,2028,2039,2046,2094,2146,2170,2166,2143,
+2111,2110,2112,2097,2090,2058,2027,2013,2035,2044,2063,2093,2142,2172,2199,2245,2252,2247,2248,2210,
+2189,2128,2091,2056,2011,1987,1998,2069,2161,2176,2144,2159,2198,2147,2057,1978,1926,1882,1851,1827,
+1810,1806,1809,1815,1813,1815,1817,1821,1844,1858,1865,1876,1886,1897,1899,1910,1927,1941,1981,1990,
+1990,1995,1991,1998,2014,2019,2030,2046,2072,2101,2133,2162,2184,2194,2211,2224,2216,2216,2247,2310,
+2396,2495,2621,2690,2604,2546,2444,2322,2144,1910,1623,1307,1004,753,520,317,193,157,206,328,
+457,577,668,733,773,805,819,826,842,835,835,831,818,792,764,742,719,696,670,637,
+621,616,569,520,463,431,412,453,552,532,476,439,402,347,332,360,357,393,363,328,
+320,331,359,356,329,272,208,160,114,57,52,96,80,55,43,35,30,8,-20,-52,
+-97,-154,-223,-304,-395,-488,-581,-674,-770,-860,-931,-986,-1035,-1085,-1122,-1161,-1197,-1227,-1241,-1232,
+-1236,-1230,-1209,-1203,-1204,-1204,-1185,-1159,-1136,-1111,-1091,-1068,-1045,-1023,-998,-973,-940,-898,-846,-788,
+-725,-658,-593,-523,-457,-402,-356,-334,-295,-230,-155,-83,-9,59,123,177,232,275,318,369,
+424,478,526,570,614,656,683,721,749,776,806,832,860,881,901,919,935,944,952,959,
+966,971,973,973,967,962,965,965,964,959,953,952,940,930,926,920,903,895,887,876,
+867,863,860,855,848,838,820,803,783,762,740,717,693,668,646,629,616,604,599,577,
+551,529,506,484,465,445,427,409,389,366,338,311,284,262,237,215,191,171,156,138,
+118,101,77,54,32,13,-10,-33,-61,-90,-115,-146,-175,-205,-232,-259,-287,-320,-351,-382,
+-407,-430,-460,-491,-521,-547,-575,-589,-556,-648,-712,-741,-760,-739,-799,-871,-917,-951,-979,-1011,
+-1044,-1075,-1106,-1144,-1178,-1205,-1235,-1264,-1295,-1323,-1350,-1378,-1412,-1446,-1474,-1496,-1515,-1528,-1542,-1553,
+-1567,-1581,-1593,-1601,-1616,-1620,-1625,-1632,-1642,-1652,-1661,-1673,-1689,-1706,-1725,-1728,-1721,-1731,-1767,-1807,
+-1876,-1951,-2008,-2016,-1947,-1813,-1687,-1600,-1556,-1513,-1457,-1446,-1400,-1413,-1421,-1419,-1446,-1469,-1478,-1502,
+-1455,-1444,-1456,-1398,-1377,-1398,-1411,-1446,-1430,-1467,-1439,-1450,-1507,-1492,-1545,-1540,-1542,-1575,-1606,-1582,
+-1609,-1609,-1655,-1624,-1594,-1523,-1487,-1540,-1528,-1482,-1474,-1470,-1410,-1383,-1426,-1479,-1412,-1337,-1259,-1275,
+-1317,-1414,-1511,-1588,-1644,-1682,-1703,-1739,-1774,-1808,-1825,-1822,-1820,-1819,-1832,-1851,-1863,-1877,-1886,-1884,
+-1885,-1876,-1863,-1846,-1837,-1823,-1839,-1859,-1891,-1925,-1954,-1973,-2000,-2017,-2026,-2014,-2004,-2001,-1990,-1984,
+-1993,-1999,-1996,-1996,-2012,-2030,-2066,-2109,-2158,-2191,-2210,-2237,-2254,-2281,-2335,-2376,-2404,-2416,-2443,-2472,
+-2490,-2540,-2593,-2626,-2657,-2697,-2738,-2780,-2820,-2858,-2892,-2928,-2955,-2968,-2985,-3002,-2999,-3003,-3016,-3027,
+-3044,-3068,-3092,-3117,-3148,-3182,-3213,-3242,-3280,-3317,-3336,-3357,-3380,-3409,-3447,-3479,-3493,-3510,-3542,-3569,
+-3573,-3584,-3607,-3634,-3682,-3734,-3782,-3815,-3858,-3883,-3898,-3899,-3909,-3918,-3920,-3930,-3939,-3954,-3969,-3985,
+-4000,-4020,-4035,-4044,-4050,-4051,-4052,-4051,-4046,-4034,-4011,-3994,-3983,-3974,-3965,-3968,-3997,-4012,-4026,-4045,
+-4074,-4098,-4116,-4121,-4103,-4082,-4057,-4038,-4017,-3995,-3971,-3942,-3901,-3843,-3788,-3735,-3684,-3641,-3602,-3567,
+-3527,-3486,-3449,-3428,-3397,-3364,-3336,-3306,-3265,-3220,-3169,-3106,-3039,-2967,-2899,-2820,-2767,-2707,-2637,-2554,
+-2489,-2467,-2447,-2395,-2367,-2345,-2296,-2261,-2241,-2218,-2214,-2207,-2177,-2159,-2136,-2098,-2038,-2042,-2047,-2022,
+-1995,-1967,-1945,-1929,-1917,-1889,-1854,-1805,-1759,-1717,-1697,-1667,-1633,-1582,-1525,-1459,-1390,-1311,-1226,-1149,
+-1080,-1018,-951,-868,-782,-695,-607,-529,-448,-346,-225,-84,51,148,202,308,450,577,698,795,
+873,952,1031,1101,1169,1227,1281,1331,1390,1451,1520,1614,1720,1834,1959,2086,2177,2227,2282,2336,
+2373,2389,2384,2377,2372,2383,2409,2454,2501,2543,2606,2694,2819,2935,3030,3089,3076,3134,3223,3303,
+3377,3448,3512,3570,3633,3706,3765,3819,3874,3929,3985,4038,4090,4147,4206,4257,4317,4384,4445,4501,
+4553,4620,4687,4754,4818,4873,4927,4984,5045,5091,5139,5185,5215,5226,5273,5326,5376,5416,5438,5463,
+5496,5527,5570,5621,5661,5694,5717,5754,5791,5836,5893,5946,5982,6025,6073,6116,6151,6197,6227,6246,
+6240,6229,6283,6331,6358,6375,6385,6376,6360,6357,6356,6357,6365,6366,6362,6346,6329,6316,6321,6322,
+6323,6309,6306,6303,6303,6313,6312,6306,6317,6327,6320,6317,6304,6284,6278,6274,6240,6191,6190,6187,
+6173,6152,6131,6090,6038,5996,5961,5925,5897,5869,5843,5825,5811,5795,5776,5759,5750,5747,5745,5743,
+5735,5772,5803,5796,5758,5745,5769,5783,5773,5777,5795,5804,5809,5831,5889,5935,5949,5947,5936,5911,
+5870,5845,5827,5802,5774,5735,5696,5656,5617,5585,5557,5524,5516,5512,5497,5486,5460,5423,5381,5354,
+5332,5315,5286,5259,5226,5182,5117,5054,4991,4924,4862,4802,4745,4697,4653,4615,4581,4551,4527,4507,
+4514,4498,4487,4479,4474,4476,4472,4466,4459,4449,4445,4440,4444,4460,4485,4520,4551,4582,4612,4634,
+4656,4680,4721,4776,4801,4819,4836,4842,4848,4838,4836,4844,4853,4851,4848,4812,4811,4818,4817,4796,
+4774,4750,4723,4697,4688,4694,4736,4760,4735,4691,4648,4596,4597,4607,4558,4534,4508,4480,4449,4427,
+4408,4392,4375,4364,4352,4364,4364,4349,4353,4319,4271,4209,4171,4148,4140,4125,4105,4071,4041,3995,
+3927,3859,3789,3725,3670,3617,3572,3530,3492,3449,3396,3332,3261,3186,3102,3045,3030,3035,3058,3088,
+3108,3121,3136,3148,3156,3151,3140,3130,3114,3083,3050,3027,3010,2986,2949,2900,2846,2796,2765,2742,
+2705,2652,2576,2497,2447,2439,2434,2386,2318,2257,2200,2164,2132,2091,2043,1994,1936,1847,1731,1625,
+1549,1508,1479,1437,1392,1352,1310,1274,1250,1229,1194,1158,1129,1111,1111,1122,1130,1127,1112,1098,
+1073,1047,1021,996,960,926,892,841,781,727,682,630,585,538,493,452,399,344,283,211,
+134,36,-85,-222,-367,-494,-568,-614,-664,-710,-738,-768,-805,-847,-893,-937,-979,-1021,-1065,-1107,
+-1151,-1192,-1225,-1274,-1333,-1384,-1468,-1560,-1588,-1567,-1542,-1534,-1537,-1544,-1559,-1581,-1608,-1645,-1676,-1712,
+-1751,-1778,-1829,-1888,-1938,-1995,-2032,-2045,-2046,-2026,-1979,-1904,-1776,-1640,-1559,-1577,-1660,-1743,-1819,-1883,
+-1908,-1934,-2005,-2093,-2169,-2248,-2307,-2338,-2380,-2428,-2468,-2507,-2548,-2593,-2654,-2721,-2775,-2811,-2832,-2845,
+-2853,-2854,-2852,-2844,-2838,-2858,-2896,-2929,-2943,-2950,-2971,-3002,-3032,-3066,-3100,-3137,-3178,-3206,-3224,-3246,
+-3262,-3269,-3284,-3310,-3331,-3336,-3339,-3354,-3365,-3371,-3381,-3421,-3461,-3495,-3540,-3585,-3616,-3647,-3690,-3732,
+-3780,-3836,-3868,-3871,-3893,-3946,-3990,-4022,-4051,-4078,-4118,-4172,-4205,-4230,-4261,-4296,-4331,-4364,-4386,-4404,
+-4423,-4439,-4459,-4472,-4472,-4474,-4474,-4461,-4427,-4387,-4334,-4282,-4235,-4179,-4117,-4060,-4037,-4038,-4035,-4042,
+-4034,-4043,-4046,-4040,-4003,-3954,-3944,-3976,-3938,-3921,-3932,-3959,-3951,-3927,-3947,-3976,-3990,-4002,-4023,-4047,
+-4040,-4074,-4139,-4186,-4215,-4247,-4331,-4444,-4498,-4552,-4602,-4630,-4631,-4626,-4602,-4586,-4578,-4558,-4521,-4500,
+-4481,-4460,-4417,-4362,-4305,-4268,-4229,-4213,-4213,-4215,-4207,-4178,-4173,-4155,-4144,-4114,-4105,-4100,-4069,-4067,
+-4095,-4076,-4062,-4067,-4037,-4008,-4002,-4005,-3989,-3971,-3963,-3954,-3944,-3941,-3935,-3925,-3917,-3909,-3904,-3885,
+-3862,-3830,-3816,-3820,-3813,-3786,-3745,-3700,-3654,-3586,-3495,-3419,-3350,-3324,-3290,-3251,-3189,-3112,-3046,-2980,
+-2922,-2888,-2862,-2821,-2751,-2701,-2637,-2580,-2545,-2499,-2453,-2399,-2353,-2295,-2232,-2182,-2118,-2062,-2006,-1941,
+-1875,-1811,-1751,-1689,-1621,-1549,-1464,-1381,-1319,-1255,-1167,-1105,-1061,-1008,-923,-838,-762,-680,-601,-523,
+-459,-401,-317,-218,-127,-39,41,106,157,198,247,308,366,432,488,542,598,655,719,768,
+821,869,923,983,1028,1070,1102,1120,1116,1118,1119,1121,1131,1151,1179,1219,1256,1299,1359,1421,
+1462,1496,1545,1605,1664,1718,1755,1777,1824,1881,1927,1966,1994,2021,2046,2066,2112,2131,2108,2108,
+2107,2099,2094,2111,2112,2084,2053,2042,2044,2056,2077,2121,2135,2179,2191,2213,2255,2289,2271,2267,
+2236,2222,2169,2116,2076,2031,2013,2022,2066,2167,2196,2149,2164,2182,2163,2093,2038,1987,1943,1909,
+1884,1860,1852,1847,1846,1846,1847,1848,1853,1858,1879,1890,1910,1935,1951,1945,1945,1967,1989,1996,
+2001,2014,2018,2045,2064,2063,2059,2067,2082,2088,2105,2126,2145,2162,2184,2194,2198,2204,2223,2289,
+2407,2552,2655,2656,2586,2483,2349,2153,1911,1680,1444,1184,912,671,476,323,229,206,262,373,
+488,591,679,752,805,831,843,849,851,855,845,838,824,801,778,741,707,687,663,633,
+597,561,541,500,444,400,391,413,416,475,506,490,479,416,278,212,241,318,365,405,
+428,345,293,314,328,317,284,232,194,162,125,56,49,93,107,93,89,94,82,64,
+48,37,16,-18,-67,-120,-180,-245,-321,-404,-501,-571,-660,-734,-791,-847,-899,-938,-976,-994,
+-1003,-1009,-1011,-1002,-995,-986,-975,-951,-923,-891,-857,-821,-777,-731,-689,-645,-606,-552,-493,-427,
+-364,-304,-239,-181,-125,-72,-33,0,-9,-4,45,111,174,237,291,335,374,407,435,463,
+494,531,570,603,637,671,688,712,739,762,791,805,829,848,865,882,898,907,913,919,
+923,928,931,931,932,924,923,917,914,909,902,893,887,877,865,861,847,838,836,827,
+813,808,804,802,793,787,778,767,753,732,712,695,673,650,625,603,582,564,549,535,
+516,494,474,451,426,405,386,365,343,323,299,269,245,219,191,164,142,124,107,91,
+75,58,37,14,-9,-34,-59,-80,-103,-123,-149,-175,-204,-233,-268,-302,-333,-366,-392,-417,
+-447,-474,-501,-530,-561,-589,-622,-656,-686,-676,-676,-771,-758,-820,-852,-882,-948,-988,-1019,-1043,
+-1075,-1109,-1137,-1165,-1195,-1228,-1264,-1296,-1329,-1358,-1386,-1412,-1438,-1467,-1494,-1520,-1539,-1556,-1572,-1591,
+-1610,-1628,-1640,-1651,-1665,-1673,-1677,-1684,-1691,-1695,-1712,-1719,-1726,-1739,-1746,-1771,-1779,-1775,-1775,-1789,
+-1793,-1826,-1893,-1970,-2058,-2080,-2021,-1905,-1731,-1636,-1562,-1511,-1451,-1409,-1372,-1337,-1359,-1413,-1458,-1533,
+-1573,-1574,-1512,-1512,-1513,-1492,-1456,-1429,-1453,-1488,-1502,-1455,-1494,-1510,-1563,-1547,-1562,-1572,-1591,-1576,
+-1578,-1569,-1638,-1659,-1612,-1585,-1551,-1506,-1569,-1568,-1500,-1447,-1494,-1423,-1394,-1399,-1455,-1455,-1392,-1326,
+-1320,-1326,-1371,-1475,-1554,-1621,-1662,-1687,-1706,-1732,-1762,-1776,-1787,-1804,-1812,-1814,-1817,-1818,-1813,-1826,
+-1839,-1828,-1832,-1821,-1798,-1765,-1756,-1760,-1785,-1827,-1855,-1884,-1921,-1955,-1982,-1986,-1972,-1959,-1962,-1965,
+-1951,-1948,-1960,-1971,-1971,-1979,-1983,-2004,-2039,-2089,-2143,-2184,-2197,-2213,-2243,-2302,-2347,-2375,-2394,-2407,
+-2419,-2435,-2473,-2520,-2554,-2589,-2627,-2670,-2723,-2772,-2805,-2856,-2884,-2908,-2927,-2942,-2959,-2971,-2976,-2985,
+-3002,-3030,-3060,-3084,-3107,-3133,-3160,-3192,-3233,-3268,-3295,-3328,-3365,-3399,-3433,-3471,-3486,-3485,-3494,-3508,
+-3509,-3513,-3530,-3559,-3606,-3669,-3724,-3776,-3811,-3836,-3845,-3857,-3894,-3908,-3915,-3924,-3931,-3945,-3963,-3976,
+-3990,-4000,-4010,-4019,-4020,-4019,-4012,-4013,-4013,-4004,-3984,-3960,-3934,-3917,-3909,-3897,-3907,-3921,-3933,-3952,
+-3979,-4006,-4033,-4061,-4073,-4065,-4056,-4046,-4032,-4021,-4005,-3979,-3943,-3904,-3858,-3799,-3743,-3694,-3650,-3604,
+-3563,-3534,-3496,-3464,-3432,-3402,-3378,-3340,-3296,-3256,-3208,-3153,-3077,-2999,-2949,-2899,-2832,-2765,-2687,-2620,
+-2571,-2529,-2502,-2478,-2433,-2397,-2369,-2321,-2295,-2278,-2276,-2278,-2284,-2254,-2197,-2168,-2166,-2173,-2173,-2166,
+-2152,-2120,-2082,-2044,-2003,-1973,-1939,-1905,-1869,-1836,-1804,-1769,-1733,-1691,-1644,-1584,-1520,-1448,-1371,-1294,
+-1217,-1145,-1075,-998,-915,-828,-740,-642,-538,-426,-291,-122,37,132,166,221,357,485,591,703,
+789,875,965,1031,1107,1169,1216,1262,1303,1355,1422,1508,1620,1740,1866,2010,2152,2258,2302,2337,
+2365,2377,2371,2355,2342,2326,2332,2360,2404,2459,2523,2584,2659,2766,2871,2954,3027,3048,3090,3189,
+3282,3353,3423,3491,3556,3617,3677,3740,3808,3861,3915,3970,4024,4074,4131,4177,4235,4294,4360,4413,
+4465,4529,4593,4668,4733,4792,4854,4915,4958,5010,5070,5121,5161,5184,5208,5251,5286,5333,5369,5413,
+5453,5498,5523,5562,5603,5644,5688,5714,5744,5788,5834,5863,5911,5971,6015,6048,6080,6123,6173,6225,
+6271,6300,6290,6269,6281,6324,6373,6392,6396,6396,6389,6391,6381,6373,6370,6375,6364,6372,6366,6338,
+6320,6313,6291,6286,6277,6281,6281,6278,6284,6286,6284,6282,6282,6268,6265,6278,6273,6256,6223,6182,
+6164,6162,6157,6141,6112,6073,6024,5975,5955,5933,5894,5860,5839,5824,5802,5780,5761,5743,5734,5725,
+5707,5689,5652,5637,5656,5680,5715,5740,5745,5752,5770,5774,5764,5770,5808,5885,5923,5934,5931,5915,
+5880,5848,5838,5820,5786,5751,5726,5700,5649,5597,5577,5563,5541,5520,5503,5479,5446,5410,5366,5338,
+5336,5326,5312,5288,5258,5219,5158,5097,5044,4985,4925,4864,4803,4750,4701,4651,4611,4582,4556,4532,
+4514,4506,4491,4490,4493,4492,4500,4506,4498,4479,4464,4453,4452,4463,4483,4509,4543,4578,4611,4636,
+4659,4685,4717,4759,4798,4813,4824,4828,4843,4851,4874,4883,4878,4853,4833,4799,4809,4808,4817,4816,
+4808,4799,4761,4725,4697,4680,4683,4679,4718,4723,4697,4680,4686,4688,4653,4624,4597,4567,4535,4508,
+4479,4444,4430,4437,4421,4406,4404,4412,4412,4399,4427,4375,4311,4255,4219,4201,4178,4154,4125,4080,
+4033,3972,3901,3834,3767,3705,3644,3596,3544,3495,3459,3407,3335,3254,3184,3117,3077,3066,3078,3103,
+3137,3165,3180,3186,3193,3199,3204,3197,3187,3176,3152,3129,3112,3096,3071,3029,2978,2924,2873,2827,
+2787,2745,2692,2627,2559,2487,2453,2447,2402,2335,2286,2246,2202,2143,2090,2048,2004,1957,1894,1806,
+1700,1600,1529,1487,1451,1413,1371,1328,1285,1247,1221,1185,1149,1121,1101,1097,1107,1119,1125,1117,
+1106,1084,1052,1027,994,969,949,909,856,793,730,672,621,563,507,465,417,363,292,212,
+133,41,-70,-196,-331,-477,-583,-646,-701,-741,-755,-771,-799,-836,-870,-909,-953,-990,-1024,-1069,
+-1118,-1170,-1218,-1259,-1303,-1342,-1373,-1415,-1454,-1478,-1490,-1491,-1497,-1509,-1516,-1522,-1536,-1558,-1581,-1599,
+-1646,-1700,-1743,-1810,-1891,-1961,-2022,-2060,-2080,-2080,-2069,-2027,-1958,-1848,-1707,-1605,-1609,-1690,-1777,-1847,
+-1892,-1916,-1954,-2037,-2140,-2226,-2299,-2357,-2396,-2428,-2469,-2508,-2551,-2605,-2664,-2724,-2780,-2824,-2858,-2884,
+-2901,-2913,-2912,-2911,-2915,-2903,-2908,-2946,-2982,-3008,-3033,-3053,-3065,-3073,-3097,-3133,-3164,-3195,-3234,-3271,
+-3290,-3305,-3324,-3330,-3345,-3361,-3365,-3383,-3405,-3417,-3427,-3452,-3474,-3489,-3511,-3554,-3607,-3647,-3691,-3731,
+-3765,-3790,-3806,-3824,-3843,-3870,-3925,-3969,-3980,-4000,-4029,-4083,-4151,-4203,-4242,-4287,-4331,-4359,-4384,-4408,
+-4421,-4434,-4449,-4478,-4510,-4509,-4509,-4503,-4498,-4490,-4477,-4443,-4390,-4317,-4245,-4203,-4208,-4212,-4226,-4272,
+-4236,-4128,-4067,-4048,-3993,-3978,-3969,-3938,-3917,-3935,-3904,-3897,-3902,-3949,-4015,-4072,-4090,-4091,-4075,-4067,
+-4102,-4163,-4222,-4222,-4222,-4257,-4256,-4281,-4361,-4489,-4553,-4598,-4614,-4612,-4601,-4591,-4566,-4561,-4559,-4558,
+-4549,-4534,-4510,-4499,-4451,-4401,-4361,-4327,-4276,-4251,-4234,-4214,-4206,-4202,-4203,-4209,-4204,-4203,-4191,-4184,
+-4188,-4190,-4163,-4146,-4104,-4081,-4093,-4070,-4017,-4002,-4024,-4025,-4006,-3971,-3943,-3927,-3919,-3942,-3963,-3953,
+-3916,-3890,-3901,-3884,-3871,-3842,-3797,-3730,-3669,-3630,-3581,-3517,-3454,-3407,-3359,-3283,-3240,-3221,-3153,-3086,
+-3015,-2950,-2899,-2847,-2803,-2727,-2665,-2628,-2591,-2549,-2484,-2451,-2409,-2330,-2262,-2206,-2159,-2109,-2056,-2004,
+-1932,-1868,-1805,-1742,-1674,-1600,-1530,-1452,-1385,-1302,-1223,-1153,-1093,-1037,-973,-906,-823,-731,-652,-578,
+-491,-414,-340,-256,-175,-87,-8,64,138,194,240,292,332,397,438,492,559,621,676,744,
+804,851,903,960,1010,1064,1110,1135,1153,1166,1170,1155,1146,1161,1188,1211,1248,1295,1347,1400,
+1452,1493,1539,1601,1654,1704,1748,1777,1815,1855,1900,1939,1968,2001,2014,2030,2066,2087,2092,2085,
+2083,2097,2077,2047,2042,2048,2050,2056,2063,2078,2095,2125,2151,2185,2225,2232,2255,2281,2296,2306,
+2284,2268,2242,2195,2159,2101,2060,2038,2047,2097,2184,2231,2175,2154,2174,2195,2154,2090,2038,1997,
+1962,1938,1923,1896,1880,1876,1873,1876,1873,1871,1878,1907,1930,1958,1966,1974,1973,1984,2005,2001,
+2015,2031,2050,2059,2081,2090,2098,2101,2115,2118,2118,2126,2129,2140,2154,2156,2171,2192,2227,2266,
+2340,2460,2555,2574,2533,2463,2340,2099,1793,1505,1257,1021,771,553,391,283,229,238,315,430,
+542,637,710,772,826,868,878,877,870,870,866,852,836,828,785,753,717,691,667,635,
+609,578,530,476,437,385,345,321,319,378,425,408,409,405,319,202,124,128,178,210,
+259,325,342,272,248,265,271,248,211,213,186,173,105,58,59,121,117,107,110,104,
+94,97,86,85,75,59,34,0,-36,-72,-121,-185,-213,-273,-330,-372,-417,-462,-497,-533,
+-558,-577,-590,-593,-589,-576,-555,-533,-502,-472,-446,-412,-379,-348,-317,-279,-220,-216,-182,-137,
+-87,-39,7,48,93,134,163,183,204,197,184,219,275,326,376,418,454,483,506,520,
+537,558,584,614,641,664,684,701,726,740,758,784,791,807,826,839,852,862,870,876,
+878,879,883,885,886,884,878,872,865,859,850,842,834,825,813,800,789,780,774,766,
+758,749,743,737,728,724,724,717,706,692,677,656,638,618,596,573,549,535,515,504,
+483,464,443,428,397,372,349,325,307,281,255,230,206,181,154,126,103,85,64,43,
+17,0,-18,-41,-63,-84,-116,-137,-162,-182,-206,-227,-250,-275,-304,-338,-364,-395,-429,-459,
+-488,-515,-543,-569,-598,-637,-670,-704,-738,-770,-797,-828,-865,-896,-936,-970,-1001,-1025,-1049,-1086,
+-1111,-1139,-1174,-1202,-1230,-1257,-1285,-1317,-1349,-1384,-1412,-1438,-1469,-1499,-1523,-1544,-1564,-1581,-1599,-1612,
+-1637,-1655,-1676,-1691,-1704,-1715,-1727,-1738,-1749,-1755,-1761,-1768,-1780,-1791,-1795,-1795,-1813,-1808,-1813,-1809,
+-1817,-1817,-1831,-1826,-1882,-1981,-2054,-2099,-2062,-1965,-1847,-1755,-1695,-1601,-1510,-1440,-1387,-1346,-1361,-1449,
+-1526,-1588,-1620,-1600,-1565,-1602,-1614,-1553,-1581,-1529,-1471,-1533,-1515,-1528,-1541,-1573,-1501,-1549,-1564,-1577,
+-1564,-1554,-1583,-1660,-1588,-1524,-1492,-1507,-1529,-1585,-1524,-1507,-1487,-1493,-1501,-1432,-1415,-1465,-1480,-1394,
+-1320,-1337,-1352,-1374,-1464,-1532,-1595,-1635,-1671,-1694,-1720,-1736,-1750,-1768,-1792,-1793,-1781,-1772,-1765,-1753,
+-1753,-1768,-1773,-1773,-1763,-1746,-1716,-1703,-1717,-1744,-1769,-1800,-1836,-1871,-1901,-1926,-1931,-1921,-1907,-1902,
+-1914,-1919,-1911,-1919,-1937,-1950,-1958,-1951,-1956,-1979,-2017,-2073,-2117,-2147,-2168,-2203,-2256,-2301,-2336,-2358,
+-2369,-2372,-2396,-2433,-2457,-2488,-2523,-2564,-2613,-2655,-2697,-2767,-2808,-2823,-2857,-2875,-2888,-2901,-2912,-2927,
+-2949,-2981,-3017,-3049,-3068,-3087,-3117,-3150,-3186,-3228,-3265,-3305,-3331,-3358,-3398,-3441,-3460,-3439,-3444,-3467,
+-3481,-3484,-3486,-3510,-3563,-3618,-3669,-3702,-3743,-3782,-3814,-3851,-3872,-3883,-3891,-3903,-3921,-3933,-3939,-3950,
+-3967,-3976,-3982,-3991,-3995,-3984,-3972,-3958,-3946,-3932,-3918,-3900,-3884,-3868,-3855,-3846,-3850,-3852,-3862,-3883,
+-3912,-3940,-3954,-3972,-3988,-4003,-4002,-4006,-4018,-4020,-4013,-3993,-3964,-3930,-3902,-3865,-3816,-3765,-3714,-3651,
+-3601,-3564,-3530,-3491,-3450,-3440,-3426,-3393,-3350,-3308,-3264,-3200,-3151,-3101,-3038,-2981,-2922,-2851,-2789,-2714,
+-2656,-2613,-2558,-2517,-2490,-2468,-2431,-2390,-2359,-2341,-2325,-2322,-2346,-2342,-2297,-2225,-2184,-2175,-2204,-2235,
+-2236,-2223,-2190,-2140,-2093,-2046,-2004,-1973,-1941,-1907,-1879,-1849,-1816,-1773,-1730,-1679,-1622,-1557,-1492,-1417,
+-1336,-1253,-1175,-1100,-1030,-950,-853,-754,-642,-519,-377,-181,0,109,157,210,342,444,535,642,
+723,802,871,943,1016,1089,1138,1183,1225,1271,1331,1410,1527,1646,1762,1897,2058,2203,2309,2366,
+2398,2406,2388,2361,2337,2314,2302,2305,2324,2364,2422,2489,2548,2609,2683,2760,2845,2935,3057,3134,
+3171,3238,3320,3392,3459,3526,3591,3652,3712,3779,3837,3895,3948,4007,4058,4108,4159,4216,4272,4335,
+4383,4434,4499,4567,4635,4704,4784,4835,4892,4941,4977,5028,5074,5115,5152,5193,5243,5276,5317,5363,
+5403,5428,5452,5478,5522,5560,5601,5666,5718,5754,5782,5824,5877,5916,5956,6003,6031,6073,6135,6175,
+6224,6265,6291,6294,6312,6301,6349,6413,6430,6437,6427,6432,6430,6413,6399,6386,6376,6363,6378,6394,
+6398,6394,6380,6352,6343,6332,6329,6329,6324,6321,6317,6327,6322,6320,6299,6304,6318,6293,6273,6257,
+6224,6179,6168,6167,6159,6147,6118,6068,6010,5979,5940,5910,5876,5852,5830,5805,5783,5758,5738,5720,
+5709,5689,5665,5644,5618,5615,5648,5693,5707,5713,5724,5737,5745,5755,5794,5855,5900,5928,5936,5923,
+5889,5854,5836,5822,5791,5767,5749,5720,5678,5642,5612,5579,5557,5532,5501,5459,5418,5401,5371,5357,
+5355,5347,5328,5300,5267,5235,5193,5145,5093,5040,4987,4934,4879,4822,4768,4716,4665,4628,4596,4560,
+4532,4506,4518,4511,4515,4517,4515,4521,4529,4527,4502,4484,4472,4472,4479,4495,4516,4538,4573,4611,
+4641,4660,4688,4723,4763,4788,4799,4814,4823,4852,4882,4902,4892,4875,4858,4818,4779,4832,4828,4827,
+4840,4836,4814,4785,4766,4724,4686,4681,4682,4690,4700,4700,4702,4695,4687,4672,4660,4652,4628,4591,
+4570,4546,4530,4516,4512,4515,4511,4497,4484,4439,4392,4380,4397,4365,4316,4273,4255,4235,4213,4178,
+4142,4095,4030,3961,3885,3816,3748,3685,3622,3571,3516,3467,3416,3350,3274,3201,3140,3102,3100,3117,
+3151,3194,3221,3234,3238,3238,3245,3256,3259,3254,3243,3224,3199,3172,3153,3136,3097,3045,2994,2934,
+2873,2813,2764,2719,2660,2589,2521,2479,2452,2402,2352,2314,2280,2243,2194,2139,2080,2017,1968,1919,
+1858,1771,1668,1584,1535,1492,1457,1422,1376,1323,1271,1235,1203,1161,1130,1103,1094,1098,1099,1107,
+1115,1110,1091,1056,1026,1003,975,952,920,862,794,731,667,602,535,478,424,368,306,231,
+149,59,-55,-172,-298,-440,-563,-646,-708,-750,-768,-774,-778,-798,-834,-869,-912,-958,-990,-1029,
+-1090,-1155,-1214,-1258,-1292,-1326,-1363,-1406,-1421,-1399,-1402,-1431,-1448,-1465,-1469,-1460,-1469,-1482,-1499,-1522,
+-1541,-1582,-1639,-1707,-1796,-1900,-1984,-2041,-2080,-2100,-2109,-2096,-2050,-1988,-1881,-1737,-1638,-1648,-1733,-1818,
+-1887,-1930,-1954,-2003,-2095,-2204,-2290,-2343,-2390,-2434,-2466,-2514,-2566,-2618,-2677,-2738,-2788,-2837,-2876,-2908,
+-2932,-2947,-2960,-2962,-2959,-2958,-2951,-2968,-3006,-3033,-3065,-3101,-3120,-3109,-3112,-3131,-3157,-3183,-3217,-3255,
+-3305,-3332,-3348,-3370,-3377,-3389,-3416,-3435,-3460,-3485,-3504,-3519,-3539,-3570,-3588,-3602,-3633,-3663,-3692,-3732,
+-3765,-3784,-3797,-3809,-3833,-3866,-3896,-3933,-3964,-3969,-3977,-4014,-4053,-4099,-4155,-4216,-4270,-4326,-4367,-4391,
+-4410,-4422,-4435,-4450,-4482,-4520,-4538,-4538,-4531,-4522,-4521,-4514,-4487,-4447,-4424,-4377,-4347,-4352,-4386,-4404,
+-4405,-4382,-4290,-4160,-4145,-4104,-4038,-4009,-3996,-3986,-4000,-4039,-4014,-3966,-3965,-4006,-4074,-4116,-4141,-4145,
+-4131,-4151,-4269,-4364,-4400,-4361,-4266,-4205,-4214,-4302,-4406,-4441,-4451,-4484,-4521,-4505,-4508,-4523,-4535,-4543,
+-4557,-4553,-4545,-4536,-4539,-4518,-4487,-4470,-4454,-4417,-4371,-4313,-4290,-4271,-4257,-4252,-4239,-4260,-4290,-4281,
+-4274,-4280,-4265,-4234,-4201,-4165,-4151,-4128,-4103,-4121,-4086,-4068,-4076,-4078,-4052,-4020,-3975,-3941,-3954,-3967,
+-3979,-3976,-3941,-3916,-3888,-3875,-3849,-3791,-3747,-3705,-3643,-3583,-3544,-3480,-3412,-3345,-3283,-3250,-3225,-3161,
+-3080,-3014,-2921,-2891,-2841,-2764,-2694,-2650,-2626,-2601,-2524,-2472,-2440,-2387,-2299,-2245,-2196,-2154,-2106,-2048,
+-1991,-1932,-1860,-1794,-1718,-1646,-1573,-1513,-1448,-1373,-1287,-1222,-1162,-1104,-1038,-969,-887,-788,-704,-637,
+-558,-462,-382,-304,-217,-136,-54,14,96,167,230,290,330,364,404,462,509,579,645,707,
+766,830,881,926,972,1024,1084,1134,1174,1191,1201,1207,1199,1187,1201,1226,1248,1285,1335,1384,
+1432,1476,1520,1566,1621,1670,1715,1760,1804,1859,1910,1954,1984,2021,2031,2027,2055,2076,2085,2086,
+2072,2062,2044,2038,2037,2042,2052,2062,2074,2088,2109,2144,2192,2236,2274,2296,2305,2316,2319,2341,
+2338,2317,2294,2255,2215,2173,2118,2083,2062,2072,2135,2225,2246,2194,2155,2148,2169,2173,2138,2082,
+2054,2041,2014,1979,1941,1921,1908,1900,1897,1899,1896,1902,1935,1961,1967,1982,1993,2005,2020,2035,
+2044,2059,2078,2081,2084,2113,2142,2156,2162,2158,2145,2120,2112,2118,2129,2140,2141,2158,2218,2358,
+2449,2437,2461,2489,2458,2397,2307,2115,1814,1471,1158,891,650,450,303,222,204,253,360,487,
+601,692,760,803,839,868,884,895,893,883,865,859,851,824,794,761,733,707,695,663,
+615,586,553,508,444,386,342,292,252,222,240,203,245,360,366,334,235,68,-5,7,
+50,98,144,180,180,165,157,148,138,147,171,184,148,108,88,62,54,95,93,94,
+100,99,135,97,102,104,95,79,62,54,40,58,0,-25,-43,-74,-102,-120,-151,-176,
+-198,-215,-227,-231,-228,-215,-203,-182,-163,-143,-128,-112,-89,-67,-50,-33,-19,-7,7,30,
+60,93,141,170,200,232,261,278,290,288,304,303,336,379,424,462,496,527,549,562,
+569,575,586,609,634,654,670,691,698,715,730,743,753,765,780,796,809,819,826,833,
+833,835,852,841,837,836,833,827,821,811,801,792,785,775,762,750,736,725,719,711,
+707,698,690,682,674,668,667,661,650,643,632,616,599,578,557,533,512,493,481,465,
+447,429,412,388,363,340,314,290,267,245,221,196,179,145,121,97,73,57,39,15,
+-13,-40,-65,-89,-114,-136,-161,-186,-212,-237,-259,-282,-310,-335,-360,-386,-413,-446,-476,-502,
+-525,-550,-575,-603,-634,-669,-705,-736,-763,-795,-831,-865,-900,-937,-973,-1007,-1041,-1066,-1080,-1094,
+-1149,-1186,-1213,-1247,-1270,-1300,-1329,-1359,-1387,-1417,-1448,-1479,-1504,-1532,-1561,-1586,-1601,-1620,-1638,-1659,
+-1675,-1688,-1703,-1726,-1743,-1760,-1772,-1777,-1770,-1799,-1813,-1818,-1831,-1848,-1846,-1841,-1861,-1867,-1866,-1853,
+-1853,-1848,-1846,-1857,-1870,-1879,-1922,-2008,-2079,-2119,-2097,-2020,-1941,-1869,-1776,-1671,-1596,-1501,-1443,-1375,
+-1401,-1454,-1586,-1648,-1661,-1684,-1704,-1662,-1714,-1711,-1655,-1607,-1575,-1633,-1608,-1613,-1617,-1583,-1554,-1569,
+-1554,-1572,-1598,-1657,-1635,-1574,-1550,-1545,-1514,-1554,-1530,-1480,-1534,-1495,-1514,-1513,-1447,-1413,-1426,-1504,
+-1395,-1381,-1377,-1393,-1409,-1491,-1541,-1579,-1622,-1648,-1672,-1684,-1693,-1703,-1708,-1727,-1737,-1728,-1714,-1687,
+-1663,-1654,-1669,-1684,-1683,-1666,-1664,-1665,-1678,-1691,-1713,-1738,-1764,-1785,-1805,-1828,-1848,-1851,-1840,-1846,
+-1853,-1863,-1872,-1877,-1880,-1896,-1917,-1926,-1922,-1921,-1940,-1972,-2014,-2060,-2092,-2114,-2146,-2194,-2231,-2265,
+-2302,-2307,-2314,-2332,-2362,-2393,-2426,-2462,-2507,-2555,-2612,-2666,-2708,-2742,-2774,-2799,-2817,-2836,-2857,-2885,
+-2913,-2932,-2959,-2990,-3017,-3060,-3105,-3134,-3166,-3191,-3216,-3244,-3274,-3333,-3382,-3404,-3424,-3432,-3441,-3453,
+-3469,-3484,-3498,-3502,-3536,-3583,-3644,-3688,-3693,-3716,-3751,-3795,-3824,-3851,-3850,-3858,-3877,-3884,-3891,-3905,
+-3914,-3920,-3922,-3926,-3932,-3933,-3926,-3915,-3906,-3893,-3875,-3863,-3846,-3821,-3820,-3816,-3810,-3821,-3825,-3838,
+-3864,-3894,-3927,-3949,-3942,-3936,-3958,-3968,-3968,-3965,-3953,-3944,-3933,-3934,-3915,-3904,-3875,-3832,-3761,-3710,
+-3670,-3626,-3588,-3544,-3527,-3503,-3467,-3441,-3408,-3371,-3334,-3300,-3261,-3219,-3179,-3112,-3048,-2979,-2903,-2803,
+-2738,-2708,-2645,-2593,-2564,-2519,-2473,-2447,-2428,-2406,-2381,-2364,-2361,-2376,-2395,-2363,-2311,-2245,-2214,-2239,
+-2250,-2249,-2227,-2197,-2152,-2094,-2042,-1998,-1955,-1923,-1910,-1894,-1869,-1837,-1799,-1750,-1697,-1640,-1585,-1524,
+-1449,-1362,-1274,-1200,-1130,-1050,-964,-870,-757,-628,-473,-268,-67,69,133,182,316,412,500,577,
+631,708,782,866,935,987,1045,1094,1125,1179,1243,1318,1426,1543,1648,1773,1923,2092,2231,2332,
+2394,2432,2424,2386,2354,2325,2295,2271,2280,2315,2347,2402,2465,2532,2606,2676,2742,2811,2894,2985,
+3071,3149,3229,3287,3362,3440,3507,3575,3635,3692,3754,3816,3876,3928,3978,4034,4090,4135,4185,4235,
+4300,4365,4423,4486,4545,4607,4662,4719,4774,4830,4875,4924,4977,5022,5078,5135,5182,5228,5276,5321,
+5353,5383,5402,5422,5452,5496,5533,5581,5621,5663,5719,5761,5807,5858,5918,5932,5973,6013,6052,6094,
+6150,6201,6273,6299,6336,6364,6368,6341,6357,6388,6426,6448,6450,6429,6413,6406,6391,6389,6408,6397,
+6394,6379,6373,6375,6374,6358,6347,6336,6321,6316,6307,6308,6308,6296,6286,6283,6291,6292,6284,6275,
+6267,6253,6217,6169,6149,6147,6140,6125,6097,6041,5986,5943,5912,5890,5867,5838,5814,5787,5765,5742,
+5713,5692,5677,5657,5638,5618,5604,5638,5695,5714,5717,5720,5741,5771,5798,5836,5889,5924,5945,5935,
+5912,5874,5852,5828,5799,5769,5739,5721,5690,5653,5618,5589,5558,5522,5495,5453,5430,5424,5408,5390,
+5367,5350,5334,5311,5280,5246,5212,5178,5137,5093,5036,4985,4933,4890,4844,4808,4745,4692,4652,4616,
+4579,4548,4518,4596,4573,4553,4531,4525,4518,4505,4501,4495,4476,4474,4478,4489,4501,4515,4526,4548,
+4575,4603,4637,4670,4702,4733,4764,4784,4791,4815,4842,4868,4882,4884,4885,4868,4786,4752,4816,4848,
+4867,4868,4855,4845,4822,4781,4731,4688,4667,4665,4660,4667,4674,4698,4711,4716,4716,4689,4666,4635,
+4602,4601,4596,4597,4582,4582,4587,4580,4546,4507,4478,4413,4354,4340,4336,4323,4327,4319,4275,4249,
+4234,4190,4141,4096,4036,3957,3901,3847,3791,3738,3687,3624,3547,3486,3417,3331,3252,3186,3135,3121,
+3134,3164,3201,3227,3252,3276,3287,3292,3303,3320,3319,3308,3287,3256,3215,3187,3163,3129,3090,3038,
+2966,2899,2842,2791,2740,2680,2611,2549,2499,2442,2392,2358,2334,2310,2279,2239,2194,2137,2065,2003,
+1943,1879,1806,1719,1644,1604,1566,1534,1500,1449,1395,1338,1291,1246,1193,1150,1116,1102,1093,1089,
+1095,1103,1096,1082,1056,1028,997,965,940,910,863,803,731,663,592,520,451,389,321,245,
+157,77,-23,-141,-260,-390,-519,-612,-680,-728,-750,-758,-760,-766,-787,-819,-856,-907,-963,-1013,
+-1065,-1123,-1185,-1249,-1306,-1352,-1383,-1419,-1463,-1475,-1460,-1468,-1475,-1464,-1466,-1464,-1460,-1471,-1469,-1473,
+-1508,-1539,-1591,-1664,-1748,-1848,-1951,-2027,-2077,-2106,-2125,-2129,-2101,-2057,-2005,-1906,-1762,-1666,-1678,-1766,
+-1857,-1936,-1997,-2034,-2079,-2157,-2251,-2330,-2380,-2426,-2473,-2523,-2578,-2634,-2701,-2773,-2823,-2864,-2905,-2941,
+-2965,-2982,-2995,-3008,-3014,-3015,-3013,-3014,-3028,-3055,-3077,-3105,-3133,-3143,-3136,-3140,-3157,-3178,-3213,-3240,
+-3276,-3324,-3359,-3386,-3415,-3433,-3449,-3481,-3506,-3523,-3547,-3569,-3583,-3606,-3638,-3651,-3669,-3702,-3729,-3758,
+-3793,-3818,-3842,-3865,-3877,-3878,-3885,-3904,-3921,-3947,-3952,-3952,-3972,-4016,-4057,-4114,-4180,-4244,-4298,-4343,
+-4370,-4401,-4424,-4437,-4450,-4473,-4511,-4550,-4561,-4547,-4539,-4514,-4479,-4473,-4455,-4460,-4484,-4522,-4524,-4488,
+-4457,-4462,-4456,-4439,-4378,-4300,-4240,-4192,-4196,-4196,-4161,-4132,-4117,-4081,-4080,-4090,-4079,-4077,-4090,-4126,
+-4172,-4207,-4249,-4296,-4410,-4469,-4460,-4374,-4296,-4287,-4334,-4404,-4472,-4516,-4510,-4508,-4490,-4452,-4450,-4464,
+-4483,-4482,-4477,-4482,-4492,-4508,-4527,-4511,-4490,-4482,-4472,-4446,-4411,-4387,-4374,-4355,-4340,-4344,-4332,-4322,
+-4316,-4299,-4291,-4288,-4262,-4243,-4237,-4236,-4220,-4200,-4185,-4173,-4120,-4105,-4089,-4075,-4068,-4038,-4037,-4042,
+-4026,-3971,-3915,-3910,-3901,-3896,-3899,-3854,-3784,-3733,-3683,-3644,-3606,-3534,-3456,-3418,-3362,-3308,-3276,-3222,
+-3133,-3060,-2988,-2911,-2853,-2809,-2756,-2709,-2672,-2629,-2576,-2525,-2477,-2428,-2348,-2296,-2254,-2191,-2148,-2092,
+-2038,-1982,-1917,-1850,-1777,-1711,-1645,-1582,-1514,-1437,-1360,-1289,-1225,-1160,-1108,-1036,-944,-858,-779,-703,
+-627,-550,-461,-366,-274,-192,-110,-40,31,114,207,262,292,323,368,418,472,529,597,671,
+735,790,842,894,936,989,1046,1100,1150,1197,1221,1226,1233,1240,1242,1247,1263,1298,1329,1369,
+1414,1454,1495,1537,1578,1629,1681,1733,1780,1843,1911,1967,2020,2043,2029,2019,2021,2052,2055,2075,
+2074,2070,2055,2060,2060,2053,2056,2068,2083,2100,2124,2163,2216,2257,2280,2311,2353,2372,2378,2366,
+2342,2360,2313,2273,2271,2241,2180,2131,2093,2081,2096,2176,2261,2294,2250,2164,2124,2121,2133,2141,
+2109,2088,2071,2039,2022,1991,1961,1944,1933,1920,1914,1918,1926,1944,1968,1986,2008,2026,2045,2061,
+2075,2091,2101,2109,2127,2144,2160,2162,2164,2171,2154,2158,2156,2148,2126,2123,2128,2136,2151,2227,
+2400,2531,2583,2531,2446,2370,2253,2032,1741,1411,1076,767,521,342,227,173,182,265,399,531,
+643,731,796,844,873,887,894,896,896,889,876,854,831,822,806,776,730,701,676,650,
+617,575,542,516,481,426,359,299,257,203,153,106,78,81,151,240,228,89,-52,-94,
+-71,-26,18,50,103,141,155,132,114,94,93,79,82,80,78,61,59,45,44,64,
+68,76,89,137,84,85,78,78,80,84,80,72,92,84,53,57,40,26,10,-3,
+-17,-25,-36,-39,-43,-35,-20,-3,14,32,42,53,62,70,81,110,123,122,119,122,
+146,180,202,223,260,286,305,333,360,370,352,352,372,411,443,484,507,535,561,581,
+590,589,585,594,612,632,650,662,673,681,692,705,716,726,739,752,764,771,776,783,
+789,793,788,785,783,786,793,789,773,770,762,749,736,725,712,699,687,678,672,666,
+658,648,640,633,625,616,606,599,594,585,573,560,548,529,506,487,466,447,434,419,
+405,386,368,354,330,305,286,259,237,216,193,169,146,121,101,82,44,18,-5,-26,
+-50,-73,-97,-125,-152,-179,-204,-235,-266,-293,-316,-340,-364,-387,-406,-432,-462,-494,-524,-556,
+-579,-599,-616,-639,-665,-699,-737,-772,-803,-834,-866,-898,-929,-964,-1003,-1040,-1073,-1105,-1135,-1162,
+-1193,-1225,-1255,-1274,-1319,-1353,-1375,-1400,-1433,-1466,-1496,-1520,-1546,-1575,-1594,-1613,-1643,-1665,-1674,-1700,
+-1724,-1743,-1756,-1769,-1788,-1804,-1817,-1821,-1832,-1846,-1861,-1860,-1820,-1872,-1888,-1903,-1913,-1914,-1911,-1911,
+-1911,-1918,-1910,-1926,-1938,-1948,-1955,-1975,-2007,-2043,-2094,-2129,-2102,-2058,-2000,-1934,-1863,-1760,-1656,-1550,
+-1463,-1441,-1470,-1507,-1632,-1686,-1701,-1755,-1764,-1791,-1819,-1757,-1711,-1711,-1685,-1666,-1698,-1644,-1633,-1573,
+-1551,-1589,-1566,-1550,-1625,-1624,-1585,-1605,-1575,-1555,-1564,-1551,-1511,-1561,-1554,-1512,-1535,-1429,-1414,-1430,
+-1495,-1514,-1471,-1457,-1417,-1429,-1499,-1549,-1575,-1583,-1599,-1615,-1622,-1621,-1615,-1619,-1640,-1659,-1667,-1664,
+-1645,-1624,-1619,-1627,-1647,-1643,-1626,-1639,-1653,-1656,-1663,-1678,-1695,-1714,-1731,-1746,-1773,-1785,-1781,-1777,
+-1787,-1806,-1831,-1841,-1843,-1848,-1857,-1877,-1896,-1905,-1901,-1912,-1946,-1993,-2028,-2057,-2084,-2117,-2172,-2204,
+-2224,-2243,-2236,-2234,-2250,-2278,-2317,-2363,-2412,-2468,-2527,-2572,-2616,-2659,-2701,-2735,-2759,-2791,-2816,-2844,
+-2876,-2911,-2925,-2953,-2981,-3022,-3054,-3089,-3117,-3160,-3198,-3232,-3230,-3246,-3302,-3340,-3380,-3410,-3435,-3452,
+-3475,-3483,-3489,-3495,-3512,-3552,-3596,-3627,-3657,-3688,-3720,-3748,-3777,-3806,-3822,-3824,-3825,-3828,-3832,-3838,
+-3850,-3859,-3865,-3877,-3886,-3895,-3896,-3888,-3877,-3871,-3859,-3843,-3825,-3806,-3801,-3811,-3812,-3817,-3832,-3839,
+-3847,-3865,-3883,-3916,-3924,-3924,-3931,-3948,-3952,-3935,-3935,-3955,-3949,-3934,-3914,-3889,-3868,-3842,-3800,-3751,
+-3714,-3682,-3637,-3607,-3583,-3546,-3527,-3492,-3454,-3428,-3401,-3376,-3357,-3327,-3293,-3245,-3173,-3092,-3013,-2928,
+-2852,-2788,-2732,-2682,-2630,-2589,-2546,-2511,-2487,-2456,-2424,-2406,-2403,-2409,-2424,-2422,-2392,-2354,-2292,-2228,
+-2206,-2204,-2188,-2172,-2150,-2131,-2106,-2072,-2032,-1985,-1938,-1904,-1873,-1850,-1827,-1790,-1740,-1689,-1646,-1613,
+-1564,-1499,-1407,-1311,-1230,-1148,-1065,-977,-873,-746,-590,-386,-198,-1,94,158,247,349,433,510,
+576,646,717,780,839,897,954,991,1027,1078,1142,1226,1332,1426,1522,1639,1779,1932,2102,2246,
+2336,2405,2444,2427,2380,2331,2291,2261,2246,2267,2301,2346,2397,2467,2546,2621,2700,2771,2828,2898,
+2973,3057,3150,3242,3317,3358,3416,3493,3567,3630,3686,3743,3799,3857,3917,3963,4016,4070,4123,4175,
+4226,4286,4335,4390,4454,4521,4574,4626,4680,4717,4779,4847,4906,4951,4990,5038,5101,5150,5202,5241,
+5270,5307,5350,5382,5413,5440,5466,5516,5567,5585,5633,5692,5745,5790,5833,5885,5919,5965,6001,6038,
+6079,6127,6181,6224,6253,6311,6341,6380,6425,6376,6432,6483,6513,6522,6489,6483,6473,6439,6443,6428,
+6407,6404,6394,6391,6400,6403,6400,6381,6359,6355,6349,6337,6341,6331,6313,6306,6310,6311,6310,6306,
+6289,6276,6248,6232,6212,6167,6140,6131,6123,6100,6057,6006,5955,5914,5896,5879,5856,5830,5800,5775,
+5752,5723,5693,5671,5655,5638,5626,5603,5586,5644,5708,5739,5767,5783,5800,5826,5854,5892,5927,5946,
+5939,5918,5883,5839,5800,5760,5727,5715,5693,5662,5623,5591,5560,5510,5489,5482,5450,5419,5397,5375,
+5354,5332,5311,5293,5271,5240,5213,5188,5155,5114,5075,5034,4992,4953,4913,4873,4841,4797,4755,4725,
+4692,4654,4620,4596,4647,4622,4593,4558,4528,4506,4493,4472,4463,4461,4461,4473,4489,4503,4513,4526,
+4539,4563,4593,4624,4662,4698,4723,4744,4763,4769,4788,4804,4834,4867,4895,4892,4856,4771,4771,4834,
+4862,4864,4867,4869,4853,4819,4778,4732,4686,4659,4650,4643,4630,4636,4650,4675,4720,4733,4705,4667,
+4624,4605,4598,4593,4611,4632,4645,4637,4599,4551,4499,4451,4397,4349,4312,4310,4311,4304,4279,4259,
+4276,4261,4246,4268,4253,4189,4094,4038,3984,3907,3844,3800,3767,3719,3642,3563,3472,3378,3280,3193,
+3152,3143,3154,3180,3216,3250,3285,3319,3332,3334,3340,3347,3339,3322,3289,3248,3219,3189,3144,3099,
+3049,2992,2934,2883,2827,2763,2698,2636,2578,2520,2457,2405,2374,2347,2324,2310,2279,2229,2169,2103,
+2051,1988,1910,1848,1795,1736,1687,1650,1623,1594,1552,1510,1450,1390,1331,1270,1202,1145,1110,1089,
+1073,1073,1062,1048,1037,1027,997,964,942,918,889,847,792,724,657,588,523,444,363,274,
+188,105,14,-88,-208,-329,-440,-527,-603,-664,-700,-719,-725,-732,-759,-786,-812,-868,-935,-996,
+-1062,-1117,-1163,-1218,-1275,-1333,-1388,-1425,-1446,-1470,-1506,-1528,-1526,-1524,-1528,-1536,-1539,-1532,-1526,-1523,
+-1542,-1585,-1626,-1680,-1760,-1849,-1944,-2025,-2075,-2109,-2134,-2139,-2134,-2104,-2065,-2023,-1928,-1794,-1696,-1684,
+-1777,-1893,-1992,-2060,-2098,-2146,-2223,-2302,-2375,-2427,-2474,-2525,-2588,-2642,-2690,-2760,-2839,-2895,-2929,-2964,
+-2999,-3021,-3028,-3041,-3054,-3058,-3058,-3059,-3068,-3080,-3098,-3128,-3155,-3168,-3162,-3154,-3162,-3187,-3215,-3251,
+-3288,-3330,-3365,-3405,-3444,-3469,-3500,-3532,-3544,-3559,-3586,-3611,-3633,-3647,-3670,-3704,-3732,-3762,-3798,-3828,
+-3866,-3894,-3911,-3919,-3940,-3951,-3939,-3935,-3929,-3933,-3938,-3939,-3938,-3944,-3980,-4015,-4063,-4123,-4177,-4241,
+-4301,-4342,-4374,-4408,-4432,-4447,-4454,-4477,-4513,-4533,-4541,-4540,-4510,-4474,-4438,-4426,-4451,-4503,-4554,-4590,
+-4591,-4574,-4530,-4500,-4458,-4429,-4408,-4374,-4380,-4365,-4325,-4291,-4248,-4177,-4143,-4131,-4131,-4136,-4159,-4185,
+-4239,-4266,-4282,-4308,-4345,-4422,-4481,-4506,-4513,-4486,-4477,-4487,-4487,-4528,-4584,-4617,-4652,-4669,-4648,-4613,
+-4556,-4475,-4444,-4433,-4432,-4441,-4486,-4512,-4511,-4514,-4515,-4509,-4465,-4423,-4399,-4405,-4416,-4405,-4383,-4361,
+-4335,-4310,-4295,-4278,-4267,-4267,-4281,-4299,-4285,-4261,-4264,-4226,-4190,-4164,-4120,-4075,-4064,-4060,-4047,-4033,
+-4006,-3986,-3963,-3961,-3966,-3964,-3940,-3910,-3853,-3784,-3740,-3693,-3655,-3615,-3548,-3484,-3413,-3359,-3334,-3280,
+-3195,-3135,-3086,-3012,-2931,-2877,-2816,-2762,-2729,-2689,-2625,-2580,-2529,-2460,-2410,-2366,-2322,-2261,-2195,-2149,
+-2104,-2039,-1969,-1917,-1858,-1779,-1706,-1635,-1563,-1494,-1424,-1352,-1284,-1227,-1164,-1086,-1008,-931,-848,-763,
+-684,-608,-527,-441,-349,-256,-174,-95,-12,78,162,228,270,305,350,398,458,498,549,620,
+702,761,806,849,897,945,1006,1057,1107,1159,1190,1227,1249,1266,1278,1289,1305,1329,1362,1398,
+1438,1466,1491,1530,1559,1587,1646,1706,1757,1821,1871,1907,1957,1995,2019,2007,2019,2000,2014,2036,
+2026,2040,2050,2053,2067,2071,2075,2091,2108,2120,2137,2170,2217,2260,2296,2318,2331,2360,2382,2395,
+2380,2370,2375,2359,2325,2291,2253,2213,2157,2112,2102,2138,2215,2293,2311,2256,2168,2116,2101,2106,
+2109,2125,2126,2110,2091,2057,2028,2004,1989,1969,1948,1949,1944,1949,1969,1982,1997,2017,2031,2045,
+2059,2070,2076,2100,2107,2117,2127,2118,2123,2123,2124,2118,2113,2113,2117,2117,2119,2125,2186,2216,
+2327,2473,2605,2603,2496,2380,2236,1970,1632,1266,923,635,393,237,158,142,191,306,446,577,
+683,761,819,864,893,907,907,900,890,883,869,854,835,813,781,759,732,703,671,637,
+607,566,527,494,473,453,400,335,263,201,160,102,46,-5,-29,-2,117,160,78,9,
+19,55,33,-33,-52,0,78,101,105,85,86,67,4,29,53,39,12,9,27,33,
+36,39,41,35,66,81,64,47,45,58,67,81,96,86,96,61,82,71,63,54,
+45,35,28,25,37,32,41,54,86,98,104,116,132,144,144,143,179,202,186,177,
+179,195,222,245,268,297,320,337,354,372,384,384,386,404,448,479,509,526,550,566,
+588,592,594,590,591,604,620,632,640,644,650,657,668,680,690,699,709,720,724,724,
+726,737,744,743,737,730,728,725,730,719,717,707,697,684,670,657,645,633,627,620,
+613,607,598,591,579,570,557,547,536,528,522,504,494,470,453,438,418,405,383,367,
+351,337,319,298,285,265,244,229,208,185,162,141,118,96,73,47,21,-8,-35,-66,
+-95,-119,-144,-167,-193,-224,-248,-267,-309,-346,-368,-388,-409,-430,-458,-485,-514,-547,-574,-604,
+-631,-656,-673,-693,-713,-741,-778,-813,-849,-882,-914,-944,-971,-1002,-1043,-1078,-1119,-1148,-1173,-1205,
+-1233,-1264,-1297,-1327,-1362,-1394,-1415,-1443,-1475,-1510,-1543,-1571,-1597,-1621,-1641,-1668,-1691,-1706,-1724,-1743,
+-1762,-1782,-1802,-1819,-1819,-1841,-1868,-1887,-1869,-1874,-1899,-1907,-1910,-1920,-1930,-1937,-1952,-1966,-1970,-1943,
+-1925,-1959,-1978,-1965,-1981,-1994,-2006,-2022,-2029,-2045,-2076,-2111,-2145,-2153,-2123,-2088,-2033,-1993,-1936,-1849,
+-1752,-1635,-1558,-1546,-1570,-1594,-1608,-1679,-1760,-1851,-1911,-1934,-1925,-1900,-1835,-1782,-1780,-1800,-1678,-1617,
+-1574,-1529,-1535,-1525,-1569,-1632,-1656,-1576,-1612,-1583,-1586,-1571,-1546,-1564,-1549,-1527,-1475,-1537,-1490,-1448,
+-1421,-1428,-1476,-1547,-1496,-1426,-1425,-1421,-1450,-1509,-1527,-1525,-1529,-1524,-1525,-1529,-1533,-1555,-1580,-1598,
+-1609,-1617,-1616,-1623,-1624,-1621,-1616,-1616,-1632,-1642,-1650,-1655,-1672,-1687,-1690,-1688,-1695,-1711,-1720,-1722,
+-1724,-1730,-1757,-1787,-1804,-1822,-1832,-1836,-1848,-1869,-1890,-1892,-1888,-1909,-1954,-1997,-2037,-2069,-2096,-2134,
+-2165,-2183,-2183,-2174,-2180,-2207,-2251,-2296,-2337,-2375,-2414,-2465,-2523,-2571,-2618,-2659,-2693,-2723,-2750,-2770,
+-2799,-2839,-2878,-2916,-2947,-2985,-3031,-3060,-3059,-3068,-3103,-3163,-3198,-3231,-3263,-3286,-3325,-3360,-3386,-3418,
+-3446,-3465,-3490,-3500,-3514,-3540,-3558,-3586,-3620,-3658,-3689,-3722,-3738,-3759,-3781,-3793,-3792,-3789,-3787,-3801,
+-3819,-3826,-3835,-3841,-3845,-3851,-3859,-3863,-3855,-3852,-3845,-3821,-3796,-3772,-3781,-3798,-3815,-3820,-3828,-3843,
+-3853,-3854,-3867,-3880,-3905,-3930,-3937,-3944,-3967,-3965,-3932,-3898,-3911,-3925,-3913,-3874,-3833,-3801,-3774,-3757,
+-3737,-3715,-3681,-3634,-3605,-3583,-3551,-3513,-3483,-3460,-3441,-3426,-3414,-3397,-3368,-3328,-3265,-3189,-3107,-3035,
+-2937,-2848,-2777,-2716,-2686,-2642,-2619,-2594,-2562,-2539,-2534,-2525,-2520,-2515,-2499,-2478,-2445,-2383,-2301,-2193,
+-2095,-2039,-1990,-1975,-1967,-1980,-2006,-2031,-2047,-2043,-2024,-1990,-1945,-1899,-1856,-1810,-1763,-1721,-1678,-1644,
+-1608,-1569,-1514,-1433,-1337,-1246,-1159,-1066,-964,-850,-712,-524,-311,-170,-38,51,149,268,366,449,
+505,577,635,686,750,806,856,910,954,1005,1066,1148,1246,1326,1403,1491,1598,1738,1903,2083,
+2222,2314,2382,2413,2386,2336,2287,2251,2222,2228,2266,2298,2346,2403,2479,2560,2651,2733,2786,2846,
+2914,2984,3072,3174,3248,3319,3392,3453,3501,3559,3619,3682,3743,3792,3847,3899,3953,4003,4051,4104,
+4159,4213,4271,4317,4369,4419,4469,4526,4583,4639,4679,4728,4785,4827,4878,4934,4983,5038,5097,5152,
+5195,5237,5284,5327,5362,5383,5412,5461,5514,5543,5563,5612,5666,5696,5743,5789,5844,5889,5935,5973,
+6027,6073,6131,6195,6248,6276,6325,6360,6397,6412,6400,6427,6475,6500,6510,6507,6492,6464,6462,6462,
+6453,6453,6453,6427,6420,6417,6417,6420,6417,6389,6372,6372,6377,6349,6330,6329,6316,6300,6292,6290,
+6281,6274,6274,6284,6271,6246,6201,6159,6140,6121,6102,6077,6044,5990,5937,5904,5889,5871,5841,5818,
+5796,5774,5745,5712,5683,5660,5636,5613,5599,5592,5577,5620,5706,5773,5807,5824,5830,5841,5871,5903,
+5911,5918,5896,5859,5813,5757,5709,5689,5675,5643,5618,5594,5558,5526,5497,5471,5446,5414,5378,5347,
+5327,5306,5286,5264,5239,5216,5194,5176,5146,5127,5107,5064,5032,5003,4976,4940,4907,4878,4849,4820,
+4794,4760,4718,4675,4647,4682,4655,4622,4583,4549,4520,4502,4485,4467,4455,4447,4457,4481,4507,4523,
+4539,4549,4568,4602,4639,4671,4708,4729,4738,4748,4755,4773,4804,4839,4868,4875,4849,4811,4807,4847,
+4873,4864,4846,4852,4837,4822,4800,4767,4737,4709,4678,4655,4635,4611,4602,4617,4645,4676,4709,4751,
+4734,4692,4648,4616,4602,4610,4646,4669,4649,4594,4531,4457,4398,4332,4298,4289,4308,4318,4307,4331,
+4333,4322,4333,4330,4313,4295,4237,4172,4121,4063,3978,3932,3873,3833,3804,3762,3717,3646,3558,3440,
+3323,3228,3183,3180,3184,3207,3242,3268,3294,3318,3329,3338,3337,3326,3320,3305,3271,3238,3210,3166,
+3109,3063,3028,2977,2922,2867,2801,2735,2685,2619,2541,2473,2418,2370,2334,2323,2320,2303,2260,2204,
+2144,2101,2046,1979,1923,1866,1805,1765,1741,1714,1689,1658,1614,1556,1495,1431,1364,1293,1216,1146,
+1097,1062,1042,1023,1008,999,979,955,920,895,874,852,822,775,713,647,580,513,430,337,
+246,152,60,-32,-146,-267,-366,-431,-482,-531,-577,-621,-657,-686,-721,-760,-792,-843,-927,-1011,
+-1085,-1155,-1195,-1218,-1250,-1292,-1342,-1390,-1442,-1478,-1475,-1481,-1514,-1544,-1574,-1592,-1604,-1620,-1617,-1607,
+-1612,-1643,-1694,-1750,-1825,-1898,-1954,-2011,-2071,-2113,-2135,-2141,-2138,-2131,-2106,-2071,-2038,-1962,-1844,-1737,
+-1709,-1810,-1942,-2043,-2112,-2145,-2191,-2269,-2347,-2414,-2474,-2525,-2584,-2649,-2705,-2749,-2807,-2874,-2937,-2984,
+-3018,-3048,-3062,-3062,-3073,-3079,-3082,-3082,-3076,-3088,-3110,-3132,-3158,-3186,-3203,-3198,-3191,-3205,-3237,-3288,
+-3329,-3352,-3381,-3425,-3469,-3509,-3545,-3581,-3592,-3599,-3627,-3670,-3699,-3718,-3741,-3776,-3814,-3844,-3875,-3913,
+-3940,-3956,-3968,-3981,-3987,-3998,-4000,-3999,-3987,-3975,-3958,-3949,-3945,-3946,-3955,-3969,-3994,-4036,-4075,-4118,
+-4157,-4229,-4301,-4354,-4391,-4415,-4443,-4471,-4476,-4487,-4476,-4478,-4486,-4497,-4495,-4503,-4527,-4561,-4619,-4667,
+-4692,-4658,-4570,-4475,-4402,-4348,-4323,-4316,-4326,-4369,-4385,-4365,-4323,-4253,-4224,-4194,-4172,-4191,-4221,-4247,
+-4280,-4322,-4353,-4391,-4409,-4435,-4467,-4493,-4501,-4559,-4605,-4550,-4542,-4547,-4559,-4604,-4644,-4672,-4708,-4699,
+-4664,-4641,-4612,-4585,-4570,-4562,-4543,-4542,-4536,-4550,-4552,-4546,-4518,-4479,-4456,-4437,-4412,-4399,-4379,-4346,
+-4321,-4308,-4297,-4293,-4291,-4298,-4305,-4312,-4316,-4290,-4249,-4249,-4226,-4202,-4183,-4143,-4110,-4076,-4059,-4040,
+-4039,-4020,-4011,-4015,-4017,-4018,-3984,-3950,-3911,-3868,-3801,-3751,-3710,-3658,-3631,-3573,-3501,-3439,-3379,-3329,
+-3249,-3200,-3157,-3094,-3029,-2971,-2901,-2844,-2797,-2739,-2679,-2642,-2596,-2516,-2480,-2428,-2365,-2305,-2232,-2190,
+-2133,-2072,-2020,-1956,-1911,-1837,-1782,-1708,-1634,-1563,-1489,-1430,-1368,-1301,-1232,-1144,-1055,-983,-909,-822,
+-724,-644,-571,-487,-405,-314,-225,-144,-59,21,104,180,246,305,336,392,431,469,514,577,
+641,709,756,799,843,901,965,1023,1067,1108,1158,1205,1239,1271,1297,1323,1344,1370,1414,1449,
+1481,1510,1534,1553,1578,1574,1589,1639,1691,1755,1829,1871,1902,1925,1944,1950,1965,1973,1977,2006,
+2013,2018,2030,2053,2078,2092,2094,2109,2128,2144,2165,2192,2232,2300,2348,2364,2399,2407,2407,2421,
+2420,2432,2431,2437,2396,2348,2306,2272,2221,2164,2136,2141,2186,2254,2294,2330,2272,2188,2143,2118,
+2098,2105,2122,2141,2148,2115,2078,2039,2026,2010,2002,2007,1995,1985,1983,1992,2005,2018,2022,2034,
+2042,2037,2045,2051,2061,2067,2081,2093,2084,2081,2081,2089,2093,2097,2105,2101,2105,2126,2196,2329,
+2378,2511,2581,2619,2540,2427,2247,1984,1616,1210,822,513,282,134,81,111,213,360,511,636,
+735,802,850,883,907,920,926,921,907,890,870,844,822,800,776,743,705,673,648,619,
+588,559,517,474,439,423,394,350,295,232,158,92,52,-3,-55,-86,-56,88,261,269,
+232,156,66,-105,-194,-187,-145,-59,2,2,18,53,46,-34,-44,-65,-76,-54,-11,6,
+5,7,15,12,0,0,29,33,1,11,26,39,45,53,47,60,32,46,41,38,
+41,50,48,39,40,50,63,70,77,107,123,130,148,169,172,173,181,202,199,185,
+182,190,204,226,249,271,295,312,332,348,369,382,405,416,409,449,486,504,528,534,
+550,568,579,585,576,575,585,596,604,607,607,608,615,623,633,644,656,665,672,674,
+673,677,687,692,688,681,672,666,669,669,668,663,655,639,625,613,600,592,584,576,
+570,563,553,547,541,527,515,502,488,474,466,446,426,413,403,380,370,352,334,316,
+294,275,257,241,224,207,192,178,159,141,121,103,81,53,27,5,-19,-41,-64,-90,
+-119,-146,-169,-195,-223,-251,-278,-309,-340,-361,-399,-426,-450,-478,-505,-534,-565,-597,-624,-655,
+-679,-708,-733,-751,-772,-796,-824,-856,-891,-928,-961,-994,-1027,-1058,-1085,-1132,-1172,-1200,-1224,-1252,
+-1281,-1311,-1342,-1375,-1403,-1437,-1466,-1493,-1514,-1544,-1590,-1622,-1649,-1670,-1696,-1719,-1737,-1754,-1776,-1790,
+-1809,-1829,-1844,-1865,-1893,-1906,-1914,-1918,-1916,-1894,-1912,-1954,-1957,-1963,-1974,-1977,-1976,-1993,-2003,-2018,
+-2016,-1979,-2022,-2023,-2032,-2049,-2056,-2055,-2068,-2084,-2108,-2117,-2129,-2148,-2167,-2165,-2162,-2120,-2067,-2033,
+-1995,-1939,-1866,-1782,-1702,-1654,-1614,-1600,-1609,-1663,-1798,-1918,-2002,-2027,-2014,-1970,-1919,-1831,-1732,-1664,
+-1617,-1608,-1549,-1527,-1516,-1533,-1644,-1706,-1632,-1620,-1617,-1611,-1606,-1584,-1608,-1581,-1553,-1500,-1519,-1571,
+-1492,-1430,-1435,-1446,-1514,-1494,-1448,-1463,-1419,-1400,-1415,-1429,-1429,-1440,-1451,-1459,-1460,-1465,-1473,-1482,
+-1502,-1526,-1565,-1595,-1605,-1595,-1596,-1601,-1612,-1618,-1619,-1631,-1648,-1662,-1668,-1677,-1685,-1690,-1695,-1692,
+-1693,-1694,-1704,-1719,-1730,-1754,-1785,-1816,-1826,-1837,-1842,-1862,-1872,-1867,-1877,-1912,-1958,-2003,-2043,-2076,
+-2110,-2144,-2158,-2134,-2112,-2124,-2164,-2222,-2278,-2330,-2377,-2420,-2460,-2507,-2554,-2600,-2646,-2685,-2712,-2727,
+-2741,-2765,-2801,-2836,-2865,-2905,-2946,-2982,-3013,-3043,-3060,-3091,-3133,-3159,-3214,-3247,-3278,-3311,-3340,-3364,
+-3386,-3412,-3434,-3463,-3497,-3531,-3546,-3562,-3588,-3621,-3661,-3694,-3727,-3743,-3747,-3761,-3756,-3769,-3776,-3787,
+-3808,-3832,-3846,-3848,-3847,-3848,-3849,-3849,-3845,-3838,-3826,-3811,-3787,-3756,-3750,-3766,-3799,-3818,-3818,-3825,
+-3829,-3841,-3849,-3859,-3872,-3889,-3907,-3919,-3920,-3914,-3897,-3879,-3882,-3888,-3873,-3843,-3813,-3789,-3771,-3746,
+-3718,-3689,-3647,-3612,-3585,-3554,-3531,-3502,-3485,-3466,-3444,-3424,-3419,-3411,-3400,-3379,-3338,-3274,-3209,-3137,
+-3051,-2959,-2857,-2785,-2720,-2675,-2659,-2651,-2638,-2640,-2634,-2637,-2636,-2615,-2583,-2535,-2463,-2359,-2247,-2127,
+-2004,-1902,-1869,-1835,-1820,-1806,-1821,-1852,-1917,-1957,-1977,-1982,-1982,-1970,-1935,-1889,-1836,-1780,-1727,-1671,
+-1619,-1584,-1558,-1515,-1445,-1359,-1267,-1161,-1046,-933,-811,-653,-453,-318,-162,-34,94,198,278,344,
+410,463,534,585,676,726,761,809,869,929,1001,1077,1137,1208,1278,1349,1426,1521,1644,1808,
+1995,2156,2269,2344,2380,2363,2318,2272,2242,2225,2240,2280,2312,2353,2409,2482,2571,2671,2749,2797,
+2850,2920,3012,3123,3243,3316,3368,3432,3503,3542,3565,3615,3670,3733,3794,3840,3886,3934,3991,4038,
+4086,4137,4186,4235,4282,4330,4364,4414,4459,4512,4566,4620,4674,4726,4771,4836,4896,4953,5017,5068,
+5113,5172,5206,5243,5275,5314,5342,5396,5446,5493,5514,5540,5585,5639,5684,5724,5772,5828,5880,5943,
+6014,6048,6078,6140,6164,6207,6243,6275,6335,6423,6470,6450,6426,6466,6508,6517,6518,6511,6488,6480,
+6481,6465,6473,6475,6453,6429,6439,6443,6430,6417,6409,6391,6389,6364,6351,6354,6352,6329,6298,6306,
+6326,6307,6291,6272,6258,6246,6225,6194,6186,6163,6138,6104,6063,6031,6009,5980,5941,5910,5888,5862,
+5843,5813,5791,5769,5732,5697,5669,5644,5613,5593,5591,5606,5599,5645,5718,5765,5789,5788,5768,5774,
+5821,5854,5867,5845,5823,5778,5728,5684,5648,5611,5583,5558,5532,5506,5478,5459,5437,5407,5371,5336,
+5312,5290,5272,5251,5230,5203,5165,5127,5101,5094,5104,5100,5077,5052,5025,4993,4960,4920,4881,4859,
+4838,4815,4796,4760,4721,4682,4720,4690,4649,4606,4573,4547,4518,4501,4486,4469,4457,4466,4486,4516,
+4541,4556,4574,4599,4626,4655,4690,4720,4738,4743,4752,4769,4797,4833,4881,4912,4875,4832,4825,4879,
+4921,4897,4863,4830,4823,4820,4822,4799,4757,4718,4701,4664,4638,4613,4598,4582,4568,4562,4577,4614,
+4646,4691,4707,4691,4657,4646,4649,4679,4677,4632,4565,4508,4431,4356,4293,4301,4336,4336,4352,4329,
+4348,4355,4371,4348,4365,4355,4330,4276,4228,4183,4115,4032,3973,3908,3877,3857,3825,3798,3748,3690,
+3616,3528,3418,3311,3244,3219,3221,3233,3260,3279,3292,3308,3330,3343,3333,3319,3303,3289,3267,3223,
+3170,3117,3075,3045,3007,2957,2900,2839,2799,2761,2688,2593,2511,2444,2386,2347,2340,2339,2327,2305,
+2255,2198,2158,2116,2065,2021,1963,1906,1866,1832,1803,1781,1751,1703,1641,1577,1508,1449,1383,1324,
+1254,1170,1106,1060,1027,1001,981,953,925,889,864,841,810,781,744,691,633,565,491,406,
+312,224,133,41,-72,-202,-307,-362,-399,-441,-475,-521,-584,-649,-712,-763,-818,-893,-964,-1027,
+-1093,-1157,-1226,-1295,-1341,-1351,-1361,-1396,-1422,-1450,-1492,-1508,-1531,-1577,-1604,-1621,-1646,-1670,-1680,-1679,
+-1685,-1705,-1752,-1820,-1879,-1920,-1964,-2019,-2069,-2110,-2134,-2139,-2139,-2135,-2124,-2108,-2087,-2062,-2005,-1903,
+-1785,-1736,-1840,-1988,-2092,-2170,-2205,-2241,-2325,-2405,-2465,-2526,-2588,-2653,-2715,-2770,-2813,-2868,-2938,-2994,
+-3033,-3064,-3090,-3105,-3108,-3115,-3116,-3105,-3098,-3093,-3112,-3138,-3167,-3202,-3219,-3233,-3239,-3236,-3259,-3288,
+-3324,-3371,-3408,-3450,-3502,-3547,-3578,-3608,-3649,-3672,-3700,-3745,-3787,-3817,-3844,-3870,-3898,-3924,-3945,-3956,
+-3979,-4007,-4019,-4022,-4020,-4034,-4040,-4045,-4046,-4053,-4056,-4051,-4021,-3998,-3990,-3997,-3996,-4001,-4014,-4034,
+-4066,-4100,-4150,-4229,-4317,-4380,-4410,-4436,-4482,-4510,-4503,-4478,-4475,-4489,-4528,-4578,-4622,-4660,-4703,-4745,
+-4760,-4742,-4723,-4697,-4637,-4564,-4506,-4446,-4458,-4502,-4500,-4507,-4537,-4465,-4384,-4310,-4314,-4300,-4320,-4349,
+-4339,-4349,-4341,-4357,-4418,-4435,-4419,-4421,-4432,-4401,-4492,-4604,-4595,-4544,-4572,-4631,-4676,-4728,-4750,-4772,
+-4762,-4730,-4710,-4685,-4662,-4639,-4605,-4586,-4578,-4558,-4546,-4521,-4523,-4521,-4520,-4510,-4493,-4483,-4458,-4433,
+-4403,-4395,-4382,-4376,-4380,-4358,-4335,-4314,-4301,-4297,-4296,-4302,-4290,-4271,-4269,-4223,-4174,-4146,-4127,-4099,
+-4108,-4093,-4075,-4063,-4063,-4044,-4022,-3990,-3968,-3941,-3896,-3856,-3788,-3713,-3643,-3594,-3562,-3496,-3426,-3372,
+-3315,-3225,-3177,-3121,-3086,-3036,-2985,-2925,-2858,-2808,-2749,-2696,-2642,-2578,-2537,-2457,-2401,-2361,-2300,-2245,
+-2190,-2138,-2089,-2027,-1963,-1885,-1824,-1771,-1697,-1623,-1560,-1493,-1435,-1365,-1296,-1218,-1129,-1055,-975,-883,
+-787,-696,-612,-523,-436,-353,-266,-184,-96,-8,69,141,211,264,300,348,387,430,491,545,
+597,657,701,748,802,852,912,973,1029,1079,1117,1160,1210,1251,1289,1328,1362,1390,1435,1485,
+1524,1550,1576,1608,1631,1647,1638,1665,1689,1744,1793,1851,1907,1930,1936,1946,1962,1974,1979,1993,
+2010,2023,2033,2049,2068,2087,2100,2117,2136,2156,2179,2209,2257,2322,2372,2391,2428,2466,2473,2476,
+2478,2462,2455,2465,2462,2411,2371,2325,2258,2207,2168,2152,2176,2243,2319,2326,2344,2269,2191,2160,
+2149,2133,2115,2120,2139,2177,2142,2100,2055,2033,2029,2015,2014,2020,2028,2028,2015,2026,2026,2034,
+2033,2031,2034,2032,2039,2038,2045,2056,2058,2062,2067,2068,2055,2056,2084,2095,2117,2149,2191,2264,
+2351,2450,2579,2569,2524,2460,2329,2033,1639,1216,793,464,251,111,46,94,246,423,582,707,
+796,853,895,917,929,939,942,937,926,909,887,857,826,793,758,726,691,652,612,585,
+558,524,498,459,418,381,351,322,294,260,208,135,57,-16,-61,-92,-95,-34,119,221,
+217,161,148,66,-150,-280,-292,-242,-182,-99,-60,-32,27,36,32,19,15,-24,-30,-60,
+-88,-82,-54,-31,-33,-51,-54,-19,-27,-39,-31,-22,-12,-13,-7,-5,4,-26,-22,2,
+4,9,10,8,16,25,37,45,61,76,91,101,113,128,134,140,150,160,171,180,
+183,184,188,197,218,243,265,286,304,319,337,352,370,395,410,414,442,469,491,509,
+512,520,536,539,540,541,542,546,558,564,564,563,568,574,581,587,599,607,614,619,
+623,624,626,633,635,631,624,612,615,609,610,609,604,596,584,568,559,549,540,533,
+525,520,514,504,500,491,474,461,445,429,416,398,371,350,338,323,309,295,284,270,
+241,216,194,181,153,141,131,123,100,90,67,43,22,2,-19,-43,-66,-88,-104,-130,
+-154,-177,-201,-227,-256,-285,-318,-346,-374,-399,-426,-450,-479,-510,-542,-575,-606,-639,-669,-700,
+-727,-756,-782,-804,-833,-851,-875,-903,-937,-972,-1003,-1041,-1076,-1112,-1147,-1183,-1217,-1244,-1272,-1297,
+-1322,-1351,-1384,-1414,-1445,-1476,-1499,-1530,-1565,-1595,-1629,-1659,-1686,-1712,-1737,-1760,-1783,-1805,-1822,-1840,
+-1853,-1861,-1880,-1910,-1933,-1945,-1956,-1969,-1977,-1997,-2009,-2001,-1977,-2004,-2020,-2026,-2029,-2032,-2035,-2029,
+-2061,-2068,-2081,-2097,-2067,-2080,-2099,-2114,-2119,-2121,-2121,-2140,-2126,-2136,-2156,-2183,-2202,-2202,-2188,-2149,
+-2098,-2070,-2055,-2048,-1992,-1917,-1826,-1748,-1666,-1633,-1659,-1768,-1877,-1996,-2064,-2085,-2066,-1992,-1842,-1753,
+-1716,-1687,-1648,-1580,-1573,-1589,-1581,-1647,-1726,-1662,-1633,-1634,-1597,-1617,-1657,-1619,-1609,-1573,-1568,-1535,
+-1537,-1569,-1497,-1468,-1448,-1473,-1503,-1472,-1451,-1484,-1426,-1378,-1368,-1373,-1402,-1419,-1432,-1426,-1425,-1415,
+-1432,-1433,-1458,-1496,-1533,-1561,-1585,-1599,-1611,-1617,-1603,-1589,-1605,-1630,-1645,-1661,-1668,-1673,-1676,-1675,
+-1663,-1666,-1677,-1689,-1698,-1711,-1728,-1756,-1794,-1818,-1832,-1831,-1832,-1836,-1827,-1830,-1856,-1902,-1954,-2002,
+-2045,-2090,-2123,-2142,-2129,-2114,-2129,-2167,-2217,-2278,-2338,-2383,-2421,-2464,-2509,-2574,-2614,-2666,-2699,-2715,
+-2734,-2748,-2763,-2789,-2816,-2828,-2863,-2891,-2914,-2950,-2987,-3030,-3078,-3125,-3164,-3191,-3225,-3249,-3271,-3299,
+-3335,-3367,-3389,-3412,-3439,-3474,-3507,-3539,-3575,-3601,-3633,-3673,-3713,-3696,-3659,-3679,-3704,-3730,-3758,-3764,
+-3732,-3777,-3819,-3827,-3831,-3828,-3827,-3837,-3822,-3817,-3803,-3795,-3777,-3744,-3718,-3717,-3745,-3794,-3811,-3796,
+-3793,-3802,-3817,-3809,-3812,-3815,-3829,-3865,-3874,-3877,-3866,-3858,-3845,-3842,-3819,-3811,-3786,-3751,-3743,-3721,
+-3685,-3654,-3624,-3596,-3564,-3534,-3509,-3488,-3472,-3446,-3423,-3387,-3361,-3350,-3347,-3355,-3351,-3325,-3280,-3214,
+-3145,-3051,-2943,-2838,-2754,-2689,-2665,-2674,-2684,-2694,-2712,-2719,-2712,-2676,-2612,-2528,-2426,-2307,-2178,-2081,
+-2019,-1967,-1898,-1855,-1828,-1821,-1819,-1825,-1837,-1861,-1898,-1913,-1915,-1913,-1914,-1905,-1879,-1838,-1786,-1733,
+-1687,-1645,-1603,-1555,-1503,-1443,-1371,-1272,-1142,-1008,-883,-752,-569,-429,-270,-125,6,117,186,221,
+289,361,426,481,554,637,663,714,763,830,917,995,1049,1113,1167,1217,1278,1360,1450,1559,
+1710,1893,2060,2214,2314,2363,2374,2346,2303,2283,2282,2295,2326,2358,2388,2435,2511,2603,2696,2767,
+2815,2885,2977,3092,3206,3304,3384,3433,3476,3529,3580,3603,3621,3665,3717,3777,3833,3874,3915,3963,
+4019,4073,4127,4169,4212,4262,4301,4334,4364,4415,4459,4514,4575,4632,4693,4743,4801,4870,4931,4985,
+5048,5089,5140,5181,5215,5251,5301,5334,5391,5444,5484,5491,5516,5571,5622,5671,5733,5791,5839,5879,
+5933,6001,6043,6074,6117,6140,6191,6225,6263,6319,6386,6445,6491,6514,6458,6514,6541,6561,6553,6523,
+6499,6487,6494,6483,6489,6468,6462,6436,6421,6424,6414,6392,6369,6353,6340,6343,6343,6327,6320,6317,
+6305,6310,6285,6270,6265,6270,6273,6258,6245,6215,6187,6162,6134,6090,6069,6053,6020,5978,5935,5896,
+5872,5848,5829,5814,5784,5749,5720,5691,5660,5629,5602,5584,5573,5569,5576,5615,5676,5702,5712,5655,
+5650,5701,5736,5730,5743,5725,5704,5677,5654,5605,5557,5530,5510,5496,5472,5452,5434,5416,5385,5350,
+5318,5294,5281,5267,5250,5231,5185,5142,5107,5092,5084,5075,5063,5068,5058,5026,5000,4962,4915,4874,
+4854,4841,4830,4810,4780,4751,4720,4722,4679,4646,4608,4589,4569,4543,4517,4502,4489,4489,4499,4516,
+4531,4545,4564,4590,4622,4652,4683,4722,4757,4783,4789,4791,4802,4833,4874,4930,4947,4883,4852,4884,
+4958,4949,4912,4876,4863,4863,4829,4788,4741,4709,4679,4653,4631,4609,4587,4571,4559,4541,4526,4519,
+4535,4564,4610,4631,4660,4654,4687,4707,4724,4687,4619,4565,4496,4427,4343,4307,4339,4342,4326,4322,
+4358,4380,4360,4357,4365,4369,4335,4295,4249,4215,4156,4098,4031,3998,3954,3908,3881,3852,3825,3803,
+3765,3727,3686,3614,3511,3404,3322,3277,3265,3270,3285,3303,3325,3346,3347,3335,3321,3292,3270,3254,
+3224,3184,3145,3104,3057,3009,2966,2921,2896,2893,2842,2745,2651,2562,2476,2408,2373,2373,2378,2359,
+2328,2289,2247,2223,2187,2135,2093,2041,1987,1952,1925,1907,1882,1832,1782,1722,1658,1590,1531,1489,
+1446,1401,1336,1255,1184,1126,1076,1027,977,923,881,853,820,779,757,727,677,618,554,476,
+392,301,214,124,19,-107,-233,-322,-375,-423,-460,-492,-542,-597,-663,-747,-824,-909,-997,-1065,
+-1126,-1173,-1213,-1271,-1321,-1343,-1354,-1371,-1409,-1451,-1487,-1518,-1529,-1560,-1627,-1667,-1678,-1692,-1700,-1711,
+-1731,-1748,-1782,-1846,-1898,-1936,-1976,-2007,-2039,-2073,-2102,-2132,-2130,-2119,-2107,-2100,-2105,-2106,-2089,-2036,
+-1930,-1809,-1787,-1893,-2035,-2153,-2245,-2260,-2287,-2387,-2458,-2512,-2577,-2635,-2700,-2764,-2823,-2871,-2921,-2989,
+-3047,-3088,-3112,-3135,-3160,-3170,-3172,-3160,-3135,-3123,-3125,-3142,-3176,-3199,-3222,-3249,-3282,-3293,-3287,-3305,
+-3337,-3358,-3389,-3436,-3491,-3546,-3607,-3655,-3681,-3715,-3756,-3797,-3845,-3884,-3908,-3932,-3956,-3975,-3981,-3985,
+-4004,-4026,-4053,-4071,-4074,-4090,-4116,-4129,-4125,-4126,-4139,-4139,-4126,-4104,-4074,-4046,-4040,-4044,-4055,-4074,
+-4088,-4103,-4124,-4145,-4181,-4253,-4352,-4418,-4442,-4478,-4524,-4539,-4543,-4543,-4554,-4584,-4639,-4703,-4765,-4812,
+-4848,-4876,-4879,-4867,-4845,-4812,-4762,-4716,-4693,-4701,-4713,-4679,-4630,-4621,-4589,-4515,-4524,-4508,-4444,-4411,
+-4390,-4386,-4394,-4377,-4374,-4423,-4417,-4441,-4446,-4435,-4455,-4509,-4652,-4743,-4714,-4686,-4719,-4734,-4741,-4813,
+-4857,-4802,-4759,-4734,-4729,-4722,-4709,-4690,-4670,-4661,-4602,-4539,-4502,-4506,-4505,-4483,-4493,-4516,-4490,-4449,
+-4436,-4421,-4414,-4413,-4421,-4417,-4373,-4350,-4346,-4356,-4333,-4337,-4356,-4333,-4322,-4300,-4251,-4237,-4214,-4177,
+-4168,-4151,-4130,-4104,-4076,-4085,-4063,-4048,-4043,-4018,-3983,-3927,-3860,-3776,-3719,-3649,-3563,-3503,-3458,-3364,
+-3311,-3276,-3233,-3189,-3140,-3102,-3049,-2993,-2943,-2888,-2833,-2771,-2692,-2633,-2586,-2521,-2460,-2397,-2349,-2293,
+-2251,-2187,-2134,-2090,-2030,-1959,-1895,-1838,-1763,-1696,-1621,-1551,-1505,-1442,-1365,-1294,-1205,-1118,-1049,-957,
+-849,-752,-662,-582,-494,-394,-309,-216,-125,-43,36,123,186,231,267,291,341,409,461,509,
+568,616,657,698,745,804,863,920,974,1027,1078,1121,1168,1222,1272,1313,1355,1402,1435,1476,
+1523,1561,1595,1638,1666,1689,1708,1712,1725,1764,1796,1842,1885,1936,1929,1930,1937,1942,1958,1988,
+2002,2019,2033,2047,2068,2087,2107,2133,2156,2173,2194,2222,2258,2309,2388,2411,2434,2479,2522,2524,
+2548,2544,2515,2486,2478,2465,2407,2379,2309,2243,2194,2151,2136,2183,2255,2303,2353,2357,2279,2202,
+2177,2170,2167,2143,2123,2152,2198,2182,2143,2102,2056,2029,2022,2013,2027,2019,2033,2025,2024,2033,
+2044,2036,2038,2027,2036,2034,2030,2029,2028,2033,2045,2046,2039,2042,2061,2084,2114,2137,2172,2257,
+2338,2400,2545,2565,2515,2496,2427,2195,1801,1310,854,484,249,129,80,141,302,495,659,779,
+860,911,941,955,964,964,961,956,945,929,908,880,845,803,759,717,674,639,599,559,
+523,500,471,441,405,365,333,305,281,254,220,175,112,37,-41,-122,-158,-164,-146,-87,
+-52,-82,-33,97,66,-168,-314,-371,-335,-264,-187,-102,-99,-30,-21,-109,-110,-57,-69,-74,
+-85,-109,-113,-77,-59,-72,-103,-103,-91,-75,-84,-80,-74,-63,-54,-51,-38,-57,-82,-63,
+-55,-53,-54,-44,-34,-26,-17,-3,9,23,36,51,66,84,97,104,114,124,135,152,
+159,169,174,179,185,197,219,239,256,267,280,301,320,337,354,366,379,410,438,456,
+469,478,482,490,492,491,493,498,501,509,512,514,516,520,527,531,534,547,554,558,
+564,570,571,572,576,577,570,563,552,546,546,550,555,543,535,525,513,505,499,489,
+481,475,466,461,453,444,430,421,405,389,372,351,323,308,291,279,252,238,219,207,
+179,160,137,117,95,88,79,58,44,26,11,-7,-33,-60,-81,-100,-129,-152,-176,-194,
+-213,-234,-250,-273,-296,-324,-354,-384,-413,-437,-453,-478,-508,-543,-579,-612,-642,-673,-701,-728,
+-755,-785,-819,-848,-873,-895,-919,-946,-978,-1008,-1031,-1076,-1119,-1154,-1188,-1219,-1255,-1289,-1317,-1342,
+-1366,-1389,-1419,-1450,-1485,-1514,-1545,-1575,-1606,-1633,-1663,-1692,-1723,-1748,-1768,-1790,-1814,-1841,-1862,-1884,
+-1901,-1914,-1935,-1959,-1979,-1994,-1999,-2012,-2020,-2030,-2031,-2047,-2067,-2076,-2024,-2039,-2072,-2075,-2078,-2089,
+-2092,-2096,-2094,-2098,-2099,-2110,-2109,-2114,-2110,-2107,-2127,-2151,-2149,-2136,-2137,-2159,-2193,-2223,-2251,-2255,
+-2222,-2183,-2136,-2112,-2134,-2140,-2123,-2065,-1972,-1868,-1763,-1699,-1729,-1835,-1957,-2039,-2096,-2096,-2058,-1948,
+-1876,-1804,-1733,-1664,-1619,-1598,-1673,-1648,-1719,-1753,-1676,-1684,-1688,-1635,-1674,-1687,-1667,-1617,-1620,-1612,
+-1557,-1594,-1560,-1544,-1526,-1511,-1495,-1468,-1473,-1517,-1491,-1481,-1417,-1339,-1328,-1371,-1407,-1421,-1428,-1419,
+-1403,-1413,-1423,-1448,-1479,-1513,-1545,-1559,-1563,-1558,-1581,-1580,-1581,-1599,-1624,-1637,-1644,-1640,-1637,-1654,
+-1662,-1659,-1660,-1667,-1674,-1692,-1708,-1722,-1745,-1771,-1798,-1817,-1817,-1806,-1802,-1808,-1802,-1808,-1843,-1896,
+-1952,-2003,-2059,-2099,-2127,-2129,-2134,-2155,-2193,-2243,-2295,-2346,-2392,-2432,-2473,-2526,-2577,-2623,-2664,-2702,
+-2726,-2731,-2720,-2722,-2728,-2763,-2787,-2803,-2846,-2887,-2902,-2950,-2995,-3043,-3084,-3123,-3160,-3190,-3213,-3237,
+-3262,-3286,-3308,-3332,-3373,-3411,-3446,-3478,-3508,-3562,-3619,-3662,-3682,-3685,-3645,-3613,-3632,-3672,-3714,-3749,
+-3764,-3783,-3799,-3800,-3797,-3797,-3802,-3804,-3802,-3789,-3774,-3764,-3763,-3749,-3719,-3690,-3677,-3731,-3790,-3801,
+-3778,-3796,-3810,-3817,-3806,-3800,-3794,-3798,-3801,-3799,-3808,-3800,-3789,-3801,-3809,-3793,-3761,-3735,-3717,-3703,
+-3667,-3626,-3589,-3549,-3517,-3485,-3464,-3451,-3438,-3418,-3386,-3360,-3324,-3300,-3285,-3266,-3255,-3246,-3238,-3211,
+-3162,-3101,-3043,-2971,-2871,-2762,-2692,-2678,-2678,-2704,-2741,-2754,-2717,-2662,-2586,-2501,-2399,-2319,-2241,-2158,
+-2082,-2032,-1979,-1939,-1908,-1888,-1866,-1857,-1852,-1862,-1873,-1873,-1887,-1881,-1872,-1864,-1852,-1829,-1791,-1757,
+-1729,-1689,-1645,-1600,-1553,-1503,-1443,-1359,-1245,-1111,-964,-831,-721,-592,-426,-240,-123,-46,6,81,
+152,220,301,390,442,490,551,613,671,738,802,889,950,1018,1071,1090,1120,1209,1295,1386,
+1503,1636,1772,1922,2083,2225,2305,2333,2359,2380,2392,2398,2407,2426,2440,2455,2500,2581,2672,2760,
+2823,2889,2979,3079,3174,3277,3361,3431,3482,3520,3553,3579,3614,3632,3674,3717,3757,3802,3844,3877,
+3924,3980,4037,4086,4128,4179,4236,4276,4306,4332,4376,4421,4479,4533,4593,4655,4730,4801,4867,4907,
+4964,5022,5075,5126,5168,5207,5252,5293,5298,5342,5392,5430,5465,5508,5563,5625,5679,5722,5779,5818,
+5868,5924,5971,6028,6083,6123,6161,6185,6212,6257,6303,6365,6425,6458,6494,6512,6552,6591,6585,6580,
+6564,6533,6508,6501,6497,6488,6472,6457,6441,6429,6418,6410,6398,6368,6351,6334,6325,6325,6320,6302,
+6310,6295,6283,6284,6283,6288,6279,6277,6248,6217,6212,6205,6177,6139,6108,6086,6071,6050,6021,5980,
+5936,5903,5878,5843,5819,5793,5765,5739,5707,5674,5647,5620,5594,5565,5537,5504,5532,5606,5643,5649,
+5595,5536,5578,5566,5563,5552,5529,5514,5577,5589,5567,5537,5510,5487,5462,5440,5424,5409,5387,5365,
+5335,5313,5288,5280,5264,5244,5212,5194,5162,5138,5123,5112,5096,5075,5057,5033,5013,4981,4932,4901,
+4885,4858,4839,4822,4800,4774,4752,4722,4722,4689,4665,4632,4612,4580,4555,4536,4524,4528,4534,4541,
+4552,4565,4585,4607,4623,4641,4667,4694,4729,4760,4789,4807,4829,4854,4878,4929,4968,4961,4894,4903,
+4956,4977,4966,4938,4918,4870,4813,4763,4729,4703,4681,4663,4644,4620,4584,4549,4531,4522,4505,4495,
+4477,4475,4501,4520,4539,4558,4573,4617,4676,4689,4670,4609,4566,4515,4426,4374,4377,4364,4333,4318,
+4332,4326,4337,4361,4361,4363,4319,4299,4281,4241,4203,4155,4097,4053,4008,3963,3934,3907,3881,3858,
+3830,3811,3783,3764,3728,3669,3574,3489,3404,3355,3338,3332,3331,3347,3365,3360,3341,3322,3300,3271,
+3233,3194,3177,3162,3137,3086,3033,2999,2967,2948,2937,2878,2790,2714,2638,2552,2478,2440,2434,2428,
+2390,2346,2315,2283,2264,2231,2186,2150,2110,2056,2025,1998,1979,1954,1902,1838,1775,1722,1667,1616,
+1580,1544,1508,1460,1407,1347,1280,1216,1149,1078,1011,965,921,854,798,757,718,668,610,547,
+476,391,302,211,112,1,-121,-237,-318,-376,-431,-475,-524,-586,-643,-722,-822,-913,-1010,-1101,
+-1167,-1208,-1220,-1250,-1309,-1335,-1331,-1344,-1371,-1415,-1467,-1498,-1523,-1546,-1564,-1599,-1634,-1665,-1705,-1731,
+-1755,-1785,-1801,-1835,-1898,-1940,-1973,-2011,-2035,-2064,-2093,-2110,-2114,-2110,-2099,-2089,-2090,-2104,-2097,-2076,
+-2025,-1938,-1872,-1908,-2017,-2127,-2230,-2306,-2311,-2358,-2453,-2510,-2580,-2649,-2692,-2748,-2811,-2868,-2923,-2981,
+-3046,-3103,-3151,-3178,-3196,-3214,-3225,-3227,-3213,-3187,-3173,-3166,-3185,-3222,-3235,-3257,-3297,-3327,-3343,-3339,
+-3345,-3373,-3412,-3456,-3504,-3556,-3610,-3666,-3724,-3762,-3792,-3834,-3888,-3934,-3961,-3969,-3983,-4002,-4009,-4010,
+-4025,-4043,-4068,-4105,-4132,-4153,-4174,-4190,-4217,-4233,-4226,-4219,-4223,-4213,-4198,-4175,-4142,-4122,-4124,-4129,
+-4156,-4170,-4181,-4193,-4200,-4217,-4256,-4317,-4408,-4481,-4513,-4536,-4565,-4587,-4586,-4605,-4648,-4701,-4766,-4842,
+-4909,-4950,-4972,-4982,-4981,-4976,-4971,-4939,-4933,-4957,-5002,-5005,-4971,-4911,-4858,-4816,-4770,-4740,-4675,-4609,
+-4529,-4442,-4379,-4387,-4404,-4411,-4450,-4449,-4441,-4475,-4504,-4515,-4554,-4645,-4744,-4814,-4858,-4863,-4836,-4825,
+-4832,-4843,-4836,-4814,-4768,-4730,-4728,-4725,-4709,-4714,-4705,-4657,-4586,-4534,-4520,-4505,-4491,-4504,-4502,-4478,
+-4476,-4461,-4424,-4399,-4408,-4430,-4415,-4381,-4363,-4386,-4399,-4381,-4394,-4396,-4372,-4366,-4312,-4295,-4286,-4250,
+-4211,-4182,-4185,-4161,-4168,-4148,-4105,-4089,-4078,-4062,-4039,-3984,-3937,-3884,-3802,-3746,-3647,-3549,-3472,-3434,
+-3374,-3327,-3309,-3265,-3201,-3165,-3137,-3072,-3021,-2976,-2903,-2841,-2785,-2721,-2657,-2599,-2537,-2477,-2423,-2361,
+-2323,-2254,-2182,-2130,-2071,-2004,-1944,-1892,-1813,-1735,-1680,-1612,-1557,-1490,-1423,-1352,-1263,-1183,-1106,-1026,
+-925,-814,-715,-624,-541,-451,-354,-267,-181,-94,-13,66,138,188,229,251,300,353,427,480,
+532,585,630,666,705,756,815,879,936,987,1042,1101,1154,1191,1237,1288,1333,1381,1436,1474,
+1504,1549,1577,1613,1658,1701,1730,1757,1761,1797,1836,1853,1894,1939,1934,1922,1933,1941,1962,1969,
+1990,2017,2039,2053,2068,2094,2119,2156,2182,2195,2212,2238,2273,2320,2373,2432,2446,2485,2543,2577,
+2572,2565,2585,2579,2543,2507,2463,2415,2347,2290,2231,2168,2139,2143,2203,2276,2328,2376,2358,2286,
+2225,2213,2217,2216,2185,2161,2154,2190,2206,2180,2107,2039,2004,2004,1997,2000,2012,2018,2029,2022,
+2013,2018,2020,2019,2023,2032,2024,2001,1991,2000,2022,2045,2056,2072,2079,2096,2115,2139,2162,2206,
+2312,2458,2469,2503,2488,2483,2501,2312,1941,1457,974,590,319,181,144,229,394,578,731,846,
+925,973,996,1004,1000,994,986,974,959,945,927,902,868,827,781,729,679,630,594,560,
+520,473,439,422,393,355,315,286,262,239,208,172,128,73,4,-63,-147,-231,-278,-290,
+-227,-94,-88,-88,-31,-60,-201,-394,-471,-441,-363,-281,-218,-195,-161,-133,-157,-173,-190,-215,
+-226,-220,-194,-165,-149,-121,-112,-137,-150,-140,-137,-127,-121,-120,-122,-120,-98,-102,-124,-125,
+-109,-102,-96,-97,-90,-78,-69,-67,-58,-39,-19,0,12,28,49,64,77,85,94,102,
+111,116,129,139,141,146,159,176,191,212,226,237,257,281,304,303,320,352,372,392,
+406,416,423,429,436,441,448,450,449,455,457,456,461,465,471,477,483,485,491,501,
+505,507,513,514,516,516,516,510,501,490,484,484,487,489,487,482,473,461,451,443,
+434,426,418,411,404,396,389,378,363,346,326,308,284,254,233,216,219,198,173,144,
+137,121,83,63,46,30,19,6,-8,-32,-51,-61,-84,-108,-124,-155,-188,-217,-228,-241,
+-254,-276,-294,-319,-343,-368,-391,-419,-456,-487,-520,-543,-567,-597,-635,-668,-696,-720,-742,-767,
+-785,-812,-846,-879,-905,-931,-957,-985,-1015,-1050,-1086,-1121,-1160,-1191,-1220,-1255,-1288,-1324,-1352,-1381,
+-1407,-1433,-1460,-1490,-1522,-1558,-1589,-1617,-1647,-1675,-1705,-1735,-1759,-1793,-1810,-1830,-1848,-1871,-1894,-1916,
+-1936,-1955,-1972,-1991,-2014,-2031,-2047,-2058,-2068,-2075,-2085,-2088,-2093,-2107,-2115,-2060,-2081,-2114,-2120,-2121,
+-2124,-2137,-2141,-2140,-2136,-2143,-2147,-2152,-2151,-2145,-2153,-2148,-2162,-2163,-2165,-2167,-2181,-2203,-2226,-2264,
+-2280,-2286,-2263,-2221,-2209,-2206,-2208,-2224,-2220,-2149,-2050,-1996,-1933,-1885,-1891,-1955,-2056,-2132,-2179,-2161,
+-2057,-1951,-1874,-1774,-1695,-1666,-1640,-1669,-1739,-1809,-1803,-1791,-1786,-1764,-1729,-1748,-1703,-1710,-1651,-1661,
+-1636,-1624,-1649,-1596,-1543,-1530,-1545,-1519,-1485,-1466,-1511,-1557,-1478,-1421,-1345,-1265,-1295,-1360,-1396,-1405,
+-1397,-1390,-1409,-1439,-1450,-1466,-1496,-1524,-1513,-1443,-1425,-1447,-1486,-1537,-1580,-1615,-1624,-1605,-1599,-1606,
+-1635,-1657,-1657,-1661,-1664,-1672,-1688,-1710,-1732,-1743,-1753,-1778,-1799,-1797,-1790,-1784,-1792,-1785,-1783,-1806,
+-1848,-1896,-1960,-2023,-2062,-2121,-2136,-2153,-2178,-2211,-2265,-2311,-2347,-2384,-2420,-2455,-2500,-2555,-2614,-2662,
+-2689,-2717,-2724,-2712,-2694,-2717,-2742,-2784,-2815,-2838,-2860,-2885,-2916,-2953,-2997,-3040,-3078,-3112,-3144,-3168,
+-3186,-3197,-3206,-3213,-3220,-3254,-3298,-3361,-3422,-3486,-3545,-3597,-3629,-3628,-3618,-3587,-3593,-3629,-3688,-3738,
+-3740,-3716,-3741,-3779,-3768,-3764,-3762,-3757,-3753,-3736,-3729,-3726,-3740,-3738,-3723,-3685,-3656,-3668,-3732,-3763,
+-3762,-3769,-3780,-3786,-3787,-3797,-3795,-3760,-3761,-3766,-3771,-3782,-3787,-3793,-3791,-3787,-3772,-3747,-3712,-3681,
+-3653,-3628,-3572,-3514,-3468,-3435,-3411,-3393,-3379,-3357,-3335,-3303,-3282,-3259,-3243,-3225,-3203,-3175,-3140,-3107,
+-3076,-3028,-2981,-2937,-2888,-2827,-2763,-2734,-2728,-2727,-2753,-2763,-2711,-2644,-2583,-2501,-2424,-2359,-2309,-2253,
+-2177,-2110,-2074,-2016,-2007,-1982,-1949,-1914,-1916,-1918,-1928,-1918,-1898,-1876,-1853,-1829,-1807,-1784,-1754,-1723,
+-1698,-1677,-1645,-1605,-1572,-1545,-1509,-1453,-1365,-1248,-1114,-975,-850,-720,-549,-366,-263,-175,-142,-102,
+-29,35,122,219,299,361,431,512,580,647,718,790,840,887,937,957,985,1056,1150,1237,
+1344,1443,1535,1637,1763,1890,2006,2116,2210,2284,2354,2425,2483,2525,2548,2542,2562,2618,2702,2791,
+2868,2941,3002,3056,3131,3226,3339,3412,3471,3513,3549,3580,3589,3593,3639,3681,3703,3720,3744,3784,
+3818,3864,3916,3973,4034,4093,4135,4184,4234,4276,4307,4350,4405,4462,4517,4591,4648,4717,4789,4848,
+4892,4954,5011,5047,5086,5140,5188,5249,5283,5288,5340,5392,5449,5497,5535,5567,5623,5676,5716,5760,
+5816,5871,5921,5968,6032,6088,6101,6140,6201,6259,6298,6348,6386,6423,6453,6489,6505,6511,6573,6581,
+6587,6562,6532,6514,6506,6493,6490,6482,6472,6462,6436,6417,6379,6351,6326,6322,6321,6308,6297,6295,
+6297,6293,6275,6283,6293,6285,6279,6253,6235,6224,6209,6214,6203,6163,6131,6110,6095,6091,6073,6033,
+5985,5931,5904,5881,5858,5826,5800,5770,5744,5712,5680,5655,5633,5597,5561,5510,5473,5485,5535,5546,
+5543,5511,5438,5428,5455,5439,5403,5324,5345,5428,5480,5458,5451,5438,5423,5408,5401,5399,5397,5380,
+5363,5345,5309,5284,5267,5235,5222,5215,5200,5182,5159,5142,5127,5104,5075,5050,5031,4997,4971,4945,
+4922,4896,4865,4839,4819,4793,4767,4755,4722,4726,4699,4684,4659,4625,4588,4566,4555,4553,4564,4574,
+4579,4594,4610,4626,4642,4659,4676,4690,4712,4737,4762,4779,4798,4817,4854,4909,4964,5006,4951,4910,
+4943,5010,5016,4958,4919,4867,4796,4744,4716,4703,4692,4683,4667,4654,4631,4601,4567,4534,4514,4507,
+4500,4501,4515,4522,4535,4557,4581,4604,4616,4650,4681,4691,4680,4634,4550,4478,4449,4416,4373,4349,
+4336,4341,4338,4346,4362,4385,4351,4322,4292,4272,4249,4231,4143,4088,4052,4013,3982,3955,3926,3900,
+3882,3871,3873,3858,3819,3797,3791,3752,3658,3560,3515,3451,3405,3384,3375,3372,3364,3351,3335,3313,
+3278,3233,3194,3159,3131,3117,3086,3046,3018,2990,2962,2941,2892,2824,2750,2687,2626,2555,2506,2488,
+2462,2412,2369,2345,2317,2289,2256,2222,2195,2158,2106,2062,2023,2002,1977,1930,1864,1793,1741,1707,
+1674,1633,1588,1547,1499,1439,1395,1348,1292,1229,1167,1104,1049,984,922,855,790,724,664,601,
+540,474,395,302,206,101,-5,-110,-207,-284,-341,-392,-448,-510,-579,-650,-740,-853,-955,-1035,
+-1106,-1162,-1201,-1233,-1254,-1262,-1272,-1297,-1335,-1375,-1410,-1449,-1482,-1514,-1548,-1566,-1584,-1615,-1647,-1692,
+-1736,-1760,-1788,-1828,-1864,-1894,-1924,-1964,-2006,-2042,-2074,-2096,-2105,-2109,-2110,-2105,-2092,-2088,-2098,-2097,
+-2052,-1963,-1924,-1977,-2063,-2149,-2228,-2296,-2336,-2364,-2443,-2521,-2572,-2642,-2694,-2733,-2789,-2844,-2903,-2965,
+-3019,-3076,-3134,-3182,-3215,-3238,-3255,-3261,-3264,-3266,-3248,-3224,-3216,-3243,-3283,-3297,-3324,-3364,-3375,-3392,
+-3404,-3418,-3459,-3497,-3538,-3583,-3625,-3672,-3731,-3792,-3836,-3868,-3907,-3950,-3997,-4025,-4032,-4052,-4056,-4043,
+-4055,-4075,-4086,-4117,-4166,-4209,-4248,-4264,-4268,-4287,-4311,-4327,-4325,-4324,-4313,-4301,-4298,-4290,-4268,-4250,
+-4244,-4257,-4272,-4292,-4315,-4328,-4336,-4353,-4387,-4446,-4516,-4559,-4570,-4577,-4598,-4624,-4661,-4704,-4758,-4812,
+-4884,-4967,-5028,-5051,-5061,-5070,-5075,-5081,-5080,-5087,-5113,-5137,-5143,-5130,-5104,-5084,-5067,-5015,-4932,-4853,
+-4810,-4753,-4645,-4522,-4475,-4463,-4423,-4419,-4435,-4443,-4472,-4527,-4542,-4537,-4630,-4727,-4814,-4914,-4938,-4873,
+-4858,-4863,-4892,-4898,-4880,-4850,-4816,-4760,-4745,-4724,-4710,-4709,-4699,-4656,-4607,-4573,-4548,-4507,-4479,-4476,
+-4460,-4448,-4439,-4418,-4409,-4403,-4410,-4416,-4397,-4399,-4404,-4410,-4398,-4414,-4401,-4401,-4387,-4366,-4347,-4347,
+-4314,-4283,-4281,-4268,-4258,-4244,-4218,-4200,-4141,-4105,-4075,-4041,-4003,-3943,-3879,-3820,-3747,-3674,-3589,-3529,
+-3470,-3408,-3373,-3345,-3281,-3233,-3194,-3147,-3092,-3036,-2964,-2913,-2856,-2795,-2742,-2688,-2627,-2553,-2482,-2421,
+-2377,-2316,-2258,-2185,-2125,-2065,-1995,-1926,-1860,-1788,-1715,-1658,-1597,-1530,-1467,-1400,-1320,-1243,-1167,-1085,
+-991,-890,-784,-689,-592,-488,-401,-326,-236,-136,-43,29,106,150,188,250,276,325,386,448,
+496,551,601,636,671,719,771,828,886,936,983,1040,1103,1162,1210,1256,1303,1351,1406,1458,
+1496,1528,1568,1599,1626,1674,1736,1778,1815,1819,1851,1880,1894,1917,1921,1914,1925,1943,1958,1975,
+1995,2022,2045,2063,2083,2101,2124,2152,2179,2202,2228,2259,2292,2334,2386,2446,2467,2499,2542,2579,
+2568,2557,2571,2636,2624,2576,2519,2456,2404,2338,2277,2225,2184,2170,2208,2267,2313,2352,2385,2366,
+2310,2277,2249,2239,2250,2235,2210,2184,2186,2216,2205,2094,2025,1973,1955,1956,1964,1981,1995,2003,
+1999,1988,1986,1984,1980,1990,1993,1991,1998,2021,2043,2059,2077,2093,2101,2111,2127,2149,2173,2209,
+2278,2416,2553,2498,2439,2419,2407,2343,1982,1445,1014,670,409,254,224,326,493,671,815,913,
+983,1031,1055,1060,1051,1036,1019,999,979,957,933,911,883,849,810,755,695,641,594,556,
+521,486,442,395,370,346,305,266,237,211,182,153,121,81,32,-27,-90,-162,-246,-330,
+-386,-384,-266,-79,74,62,-122,-363,-506,-547,-524,-465,-380,-307,-272,-239,-184,-178,-188,-211,
+-241,-263,-283,-284,-279,-255,-175,-170,-198,-185,-177,-171,-169,-166,-157,-154,-150,-138,-134,-156,
+-162,-151,-146,-141,-133,-124,-115,-111,-104,-86,-72,-60,-45,-32,-11,11,20,29,44,54,
+59,69,76,87,94,99,105,117,134,154,169,180,186,196,216,243,268,277,299,317,
+339,345,349,354,364,376,389,395,400,401,401,397,392,397,403,415,417,421,426,432,
+438,444,449,450,451,457,462,453,449,440,428,423,423,424,423,424,421,413,404,395,
+385,373,367,357,350,344,339,330,320,306,289,270,246,225,206,185,166,150,132,111,
+89,59,38,22,6,-11,-27,-46,-64,-85,-103,-122,-138,-155,-179,-191,-218,-256,-277,-296,
+-308,-332,-353,-370,-388,-408,-432,-450,-478,-509,-539,-571,-600,-632,-658,-687,-716,-745,-772,-799,
+-823,-852,-880,-908,-932,-961,-991,-1016,-1051,-1083,-1120,-1152,-1185,-1223,-1259,-1291,-1323,-1355,-1388,-1417,
+-1441,-1469,-1498,-1527,-1559,-1594,-1627,-1655,-1685,-1713,-1741,-1774,-1807,-1827,-1856,-1872,-1894,-1913,-1933,-1954,
+-1973,-1988,-2004,-2024,-2051,-2065,-2086,-2102,-2112,-2124,-2136,-2144,-2151,-2158,-2157,-2168,-2170,-2149,-2106,-2151,
+-2167,-2157,-2177,-2180,-2181,-2182,-2186,-2189,-2177,-2177,-2192,-2194,-2190,-2189,-2203,-2205,-2203,-2207,-2218,-2242,
+-2267,-2284,-2300,-2294,-2277,-2280,-2272,-2260,-2284,-2286,-2261,-2211,-2123,-2006,-1934,-1901,-1936,-1998,-2095,-2198,
+-2244,-2165,-2019,-1892,-1792,-1718,-1685,-1699,-1756,-1796,-1843,-1855,-1860,-1872,-1847,-1809,-1814,-1778,-1761,-1730,
+-1697,-1656,-1668,-1659,-1592,-1572,-1554,-1516,-1516,-1495,-1486,-1484,-1507,-1487,-1413,-1352,-1265,-1234,-1268,-1342,
+-1362,-1384,-1403,-1396,-1418,-1444,-1468,-1482,-1487,-1469,-1436,-1426,-1446,-1478,-1491,-1513,-1570,-1592,-1598,-1593,
+-1592,-1607,-1628,-1649,-1659,-1663,-1676,-1690,-1706,-1716,-1719,-1727,-1747,-1770,-1771,-1774,-1776,-1764,-1769,-1776,
+-1791,-1823,-1871,-1929,-1998,-2063,-2119,-2148,-2169,-2196,-2227,-2275,-2323,-2347,-2381,-2409,-2431,-2476,-2557,-2621,
+-2660,-2678,-2692,-2702,-2710,-2710,-2732,-2764,-2797,-2818,-2831,-2839,-2856,-2890,-2930,-2966,-3010,-3055,-3090,-3114,
+-3128,-3129,-3115,-3097,-3063,-3018,-3002,-3050,-3141,-3266,-3378,-3465,-3497,-3476,-3465,-3511,-3554,-3583,-3608,-3647,
+-3681,-3692,-3707,-3719,-3715,-3721,-3734,-3756,-3756,-3754,-3727,-3731,-3723,-3718,-3713,-3674,-3644,-3646,-3682,-3706,
+-3713,-3734,-3734,-3741,-3731,-3727,-3738,-3765,-3772,-3773,-3758,-3782,-3791,-3785,-3784,-3777,-3761,-3740,-3707,-3677,
+-3641,-3609,-3542,-3489,-3448,-3420,-3397,-3375,-3348,-3310,-3287,-3269,-3247,-3239,-3227,-3211,-3195,-3163,-3116,-3054,
+-3003,-2954,-2900,-2825,-2756,-2712,-2686,-2653,-2649,-2685,-2736,-2753,-2715,-2653,-2592,-2526,-2454,-2401,-2349,-2296,
+-2253,-2212,-2173,-2128,-2088,-2071,-2047,-2023,-2003,-1993,-1980,-1955,-1937,-1919,-1893,-1857,-1820,-1787,-1758,-1727,
+-1692,-1653,-1615,-1578,-1553,-1544,-1537,-1516,-1471,-1397,-1288,-1145,-968,-811,-653,-532,-445,-353,-295,-244,
+-180,-122,-50,48,139,217,304,389,461,526,606,681,753,794,837,876,923,967,1016,1084,
+1185,1288,1376,1441,1535,1641,1750,1850,1942,2042,2131,2228,2360,2509,2638,2711,2723,2737,2778,2843,
+2907,2952,2979,3007,3066,3162,3285,3385,3450,3501,3548,3582,3600,3628,3635,3649,3685,3687,3684,3693,
+3716,3757,3798,3867,3912,3975,4037,4095,4148,4193,4244,4295,4338,4389,4448,4500,4563,4625,4691,4762,
+4822,4879,4925,4975,5016,5059,5104,5155,5201,5237,5279,5315,5365,5420,5477,5531,5571,5607,5659,5712,
+5772,5827,5878,5917,5967,6010,6064,6108,6147,6182,6206,6252,6307,6362,6416,6466,6531,6560,6529,6511,
+6534,6551,6564,6571,6551,6530,6516,6493,6473,6478,6467,6445,6427,6393,6360,6325,6299,6301,6299,6280,
+6277,6291,6300,6273,6260,6271,6271,6269,6253,6235,6225,6202,6195,6173,6147,6124,6098,6080,6054,6035,
+6007,5973,5939,5925,5891,5855,5819,5786,5767,5745,5720,5686,5670,5645,5604,5568,5517,5474,5452,5425,
+5417,5426,5406,5364,5330,5326,5340,5308,5216,5196,5233,5235,5186,5187,5238,5272,5304,5339,5349,5347,
+5342,5343,5325,5288,5264,5246,5223,5209,5191,5178,5144,5110,5085,5062,5044,5004,4984,4976,4956,4929,
+4921,4902,4882,4867,4847,4823,4800,4779,4757,4726,4726,4705,4687,4665,4638,4605,4581,4582,4587,4604,
+4619,4631,4642,4659,4665,4674,4686,4704,4724,4747,4772,4786,4791,4806,4824,4862,4919,4973,4973,4938,
+4934,4983,5000,4955,4880,4815,4757,4713,4689,4697,4719,4739,4745,4737,4716,4685,4673,4664,4632,4623,
+4620,4618,4601,4643,4640,4696,4729,4709,4712,4709,4736,4753,4770,4754,4679,4596,4532,4484,4439,4408,
+4380,4369,4373,4389,4399,4391,4378,4346,4298,4269,4233,4194,4162,4125,4096,4067,4038,4010,3992,3969,
+3942,3924,3917,3915,3946,3949,3902,3863,3858,3833,3762,3658,3571,3496,3427,3404,3386,3362,3343,3319,
+3308,3277,3239,3204,3160,3119,3070,3032,2999,2977,2955,2934,2912,2888,2845,2767,2689,2642,2600,2554,
+2519,2480,2429,2383,2353,2322,2297,2273,2249,2227,2195,2142,2096,2061,2037,1997,1948,1898,1830,1770,
+1723,1671,1624,1584,1527,1469,1424,1378,1330,1283,1230,1175,1124,1067,998,939,873,813,742,673,
+609,543,474,401,310,212,112,8,-82,-161,-229,-276,-319,-388,-449,-493,-566,-666,-781,-902,
+-992,-1055,-1111,-1155,-1186,-1197,-1218,-1267,-1307,-1333,-1376,-1424,-1460,-1492,-1527,-1560,-1582,-1598,-1618,-1636,
+-1671,-1720,-1751,-1778,-1816,-1854,-1892,-1928,-1964,-1996,-2028,-2062,-2094,-2103,-2112,-2124,-2117,-2107,-2109,-2111,
+-2112,-2071,-2000,-2011,-2105,-2181,-2253,-2325,-2375,-2391,-2423,-2501,-2567,-2636,-2707,-2743,-2768,-2820,-2887,-2951,
+-3009,-3057,-3109,-3167,-3209,-3242,-3276,-3303,-3316,-3315,-3312,-3298,-3281,-3277,-3306,-3355,-3362,-3365,-3407,-3433,
+-3462,-3497,-3511,-3532,-3563,-3607,-3659,-3694,-3732,-3792,-3854,-3904,-3951,-3986,-4016,-4057,-4085,-4101,-4110,-4105,
+-4095,-4107,-4124,-4148,-4183,-4230,-4276,-4316,-4342,-4364,-4380,-4390,-4410,-4424,-4419,-4415,-4410,-4410,-4410,-4416,
+-4402,-4387,-4380,-4389,-4413,-4440,-4463,-4486,-4506,-4544,-4585,-4609,-4608,-4588,-4569,-4573,-4585,-4616,-4675,-4714,
+-4791,-4878,-4942,-4991,-5028,-5052,-5078,-5095,-5106,-5117,-5119,-5118,-5128,-5141,-5146,-5158,-5166,-5170,-5163,-5141,
+-5100,-5058,-5045,-4985,-4861,-4728,-4647,-4541,-4461,-4452,-4440,-4462,-4525,-4603,-4606,-4607,-4651,-4743,-4882,-4930,
+-4781,-4816,-4864,-4915,-4934,-4928,-4899,-4898,-4891,-4877,-4829,-4798,-4774,-4774,-4744,-4688,-4663,-4640,-4583,-4525,
+-4489,-4457,-4450,-4411,-4402,-4387,-4409,-4418,-4403,-4401,-4403,-4439,-4435,-4435,-4438,-4457,-4471,-4450,-4431,-4412,
+-4390,-4370,-4362,-4363,-4356,-4313,-4291,-4257,-4228,-4173,-4140,-4124,-4082,-4021,-3966,-3912,-3852,-3778,-3698,-3654,
+-3595,-3514,-3458,-3421,-3378,-3298,-3249,-3199,-3138,-3093,-3033,-2980,-2936,-2872,-2819,-2767,-2700,-2635,-2571,-2497,
+-2435,-2361,-2288,-2220,-2158,-2097,-2027,-1965,-1894,-1836,-1767,-1712,-1632,-1586,-1527,-1453,-1380,-1305,-1217,-1130,
+-1050,-961,-865,-763,-652,-560,-459,-370,-283,-186,-92,-6,73,127,164,197,263,296,337,404,
+452,506,566,606,639,680,727,777,828,883,931,977,1040,1110,1169,1218,1263,1307,1358,1409,
+1456,1504,1544,1606,1637,1662,1711,1757,1809,1856,1841,1856,1881,1901,1905,1908,1920,1942,1955,1975,
+2006,2032,2056,2079,2098,2118,2140,2170,2205,2230,2250,2280,2316,2358,2417,2452,2496,2557,2610,2612,
+2637,2650,2643,2595,2635,2661,2586,2510,2441,2386,2340,2292,2251,2217,2202,2231,2289,2333,2407,2449,
+2397,2342,2320,2303,2280,2274,2250,2213,2191,2189,2218,2211,2079,1978,1939,1930,1930,1937,1963,1975,
+1986,1991,1981,1974,1969,1973,1983,2003,2023,2045,2068,2087,2100,2114,2119,2126,2139,2156,2186,2233,
+2285,2400,2562,2503,2433,2411,2377,2259,2029,1547,1039,680,452,319,315,431,599,771,916,1001,
+1047,1086,1106,1112,1101,1091,1070,1042,1008,973,941,914,886,857,823,778,726,665,609,560,
+517,477,443,399,347,307,287,254,215,182,152,127,104,73,38,-3,-50,-115,-183,-270,
+-354,-433,-477,-438,-271,-47,96,13,-231,-447,-545,-551,-506,-446,-376,-327,-278,-211,-197,-213,
+-231,-259,-288,-312,-301,-284,-290,-284,-269,-250,-210,-199,-217,-229,-220,-216,-213,-211,-204,-201,
+-207,-217,-199,-200,-191,-179,-178,-175,-165,-152,-142,-130,-120,-110,-90,-73,-53,-41,-34,-23,
+-6,7,18,28,36,50,56,63,74,88,99,114,131,143,155,167,186,210,218,241,
+262,273,276,275,279,294,315,331,341,349,351,346,337,331,337,348,358,362,363,368,
+385,380,384,386,388,390,392,392,383,374,369,364,366,362,363,362,361,359,353,342,
+334,325,318,310,304,297,286,278,267,256,241,227,208,186,173,149,133,113,97,75,
+53,29,11,-11,-31,-53,-75,-92,-110,-127,-151,-167,-189,-207,-229,-251,-271,-301,-326,-346,
+-368,-388,-408,-429,-443,-458,-482,-511,-533,-550,-597,-630,-660,-691,-718,-743,-769,-794,-822,-846,
+-869,-893,-919,-947,-975,-1005,-1033,-1068,-1092,-1126,-1157,-1188,-1219,-1254,-1292,-1325,-1361,-1395,-1427,-1457,
+-1487,-1516,-1542,-1568,-1598,-1634,-1667,-1697,-1721,-1747,-1783,-1816,-1838,-1865,-1888,-1918,-1940,-1959,-1975,-1995,
+-2016,-2034,-2051,-2065,-2086,-2108,-2129,-2144,-2158,-2178,-2191,-2196,-2205,-2209,-2214,-2212,-2213,-2221,-2218,-2215,
+-2225,-2223,-2223,-2220,-2214,-2215,-2222,-2223,-2231,-2233,-2234,-2229,-2232,-2237,-2241,-2248,-2250,-2246,-2247,-2251,
+-2263,-2283,-2301,-2318,-2326,-2313,-2308,-2313,-2330,-2348,-2341,-2327,-2296,-2221,-2114,-2011,-1945,-1919,-1965,-2126,
+-2230,-2266,-2208,-2062,-1939,-1842,-1741,-1764,-1763,-1819,-1839,-1855,-1881,-1903,-1898,-1885,-1853,-1834,-1815,-1782,
+-1766,-1729,-1700,-1683,-1630,-1601,-1573,-1536,-1553,-1499,-1506,-1487,-1503,-1501,-1449,-1394,-1311,-1248,-1223,-1247,
+-1334,-1369,-1379,-1395,-1388,-1391,-1405,-1406,-1407,-1415,-1423,-1436,-1448,-1452,-1454,-1467,-1484,-1512,-1534,-1547,
+-1551,-1560,-1574,-1595,-1607,-1622,-1635,-1652,-1666,-1676,-1670,-1662,-1667,-1695,-1721,-1733,-1740,-1746,-1739,-1747,
+-1766,-1790,-1832,-1880,-1943,-2002,-2049,-2094,-2142,-2174,-2211,-2242,-2278,-2335,-2366,-2382,-2385,-2414,-2476,-2547,
+-2608,-2651,-2672,-2675,-2690,-2678,-2692,-2713,-2749,-2773,-2795,-2802,-2815,-2846,-2866,-2903,-2935,-2975,-3031,-3070,
+-3084,-3075,-3062,-3022,-2968,-2953,-2938,-2940,-3020,-3143,-3274,-3363,-3396,-3372,-3397,-3455,-3504,-3543,-3576,-3603,
+-3626,-3656,-3691,-3716,-3727,-3720,-3705,-3716,-3756,-3763,-3745,-3715,-3721,-3708,-3689,-3667,-3648,-3641,-3654,-3656,
+-3652,-3667,-3688,-3687,-3681,-3665,-3668,-3693,-3719,-3727,-3709,-3728,-3756,-3768,-3765,-3760,-3749,-3731,-3710,-3682,
+-3651,-3601,-3547,-3510,-3480,-3454,-3428,-3412,-3383,-3349,-3308,-3275,-3250,-3235,-3223,-3207,-3196,-3173,-3125,-3068,
+-3002,-2921,-2871,-2808,-2720,-2648,-2596,-2589,-2624,-2663,-2704,-2755,-2731,-2663,-2611,-2576,-2511,-2440,-2377,-2336,
+-2299,-2235,-2190,-2144,-2091,-2065,-2063,-2068,-2037,-2004,-1982,-1980,-1978,-1977,-1952,-1907,-1866,-1831,-1801,-1768,
+-1738,-1711,-1679,-1646,-1613,-1575,-1549,-1530,-1526,-1511,-1455,-1341,-1179,-996,-841,-733,-671,-593,-517,-426,
+-339,-265,-182,-101,-18,71,158,259,340,407,476,560,637,695,738,797,854,903,922,979,
+1032,1130,1230,1315,1395,1484,1573,1658,1728,1807,1895,1988,2105,2262,2454,2623,2727,2770,2776,2807,
+2858,2907,2929,2948,2992,3074,3207,3325,3408,3467,3522,3565,3605,3636,3646,3656,3648,3665,3667,3657,
+3656,3666,3696,3750,3815,3847,3912,3984,4047,4110,4171,4228,4280,4318,4378,4443,4497,4558,4618,4671,
+4737,4799,4852,4904,4960,5012,5055,5099,5144,5193,5245,5275,5312,5346,5391,5459,5520,5561,5606,5650,
+5692,5743,5807,5861,5905,5944,6003,6059,6113,6143,6182,6219,6262,6304,6342,6381,6426,6472,6505,6518,
+6527,6616,6621,6629,6607,6579,6584,6566,6556,6537,6520,6507,6483,6446,6429,6394,6365,6329,6311,6297,
+6271,6266,6287,6296,6281,6263,6256,6257,6258,6248,6233,6210,6191,6172,6151,6132,6111,6086,6069,6050,
+6030,5997,5958,5933,5907,5885,5843,5805,5779,5757,5739,5719,5692,5671,5638,5601,5570,5529,5485,5445,
+5408,5391,5366,5345,5298,5261,5231,5209,5195,5134,5095,5065,5029,5016,5048,5078,5131,5199,5237,5241,
+5278,5297,5284,5270,5252,5228,5205,5192,5177,5164,5146,5113,5060,5024,5004,4993,4973,4956,4940,4918,
+4882,4852,4841,4839,4843,4841,4825,4802,4775,4749,4726,4726,4709,4693,4682,4662,4642,4628,4627,4632,
+4643,4671,4684,4684,4686,4687,4700,4726,4750,4775,4801,4802,4798,4814,4834,4865,4899,4938,4955,4958,
+4953,4933,4919,4891,4839,4795,4757,4730,4707,4687,4709,4792,4843,4901,4895,4889,4865,4858,4831,4777,
+4784,4785,4798,4816,4786,4800,4831,4808,4820,4813,4814,4800,4775,4778,4781,4737,4659,4584,4526,4482,
+4449,4430,4433,4437,4436,4427,4395,4375,4328,4290,4251,4218,4195,4178,4151,4120,4097,4081,4061,4047,
+4031,4020,4015,4014,3988,3994,3997,3981,3981,3964,3946,3895,3804,3683,3570,3483,3423,3396,3381,3329,
+3295,3274,3256,3240,3212,3163,3114,3060,3004,2969,2938,2903,2877,2861,2850,2825,2765,2684,2629,2602,
+2570,2534,2490,2440,2399,2364,2323,2290,2269,2247,2221,2177,2135,2109,2081,2048,2007,1955,1905,1848,
+1785,1728,1667,1611,1553,1493,1438,1396,1351,1296,1241,1178,1125,1085,1037,985,926,853,791,739,
+685,628,560,487,408,328,241,147,54,-28,-93,-161,-242,-298,-339,-385,-434,-505,-595,-697,
+-799,-880,-952,-1013,-1069,-1120,-1159,-1208,-1269,-1324,-1366,-1404,-1452,-1483,-1495,-1522,-1555,-1575,-1597,-1623,
+-1645,-1670,-1695,-1723,-1756,-1791,-1834,-1889,-1934,-1962,-1993,-2028,-2051,-2080,-2100,-2122,-2130,-2124,-2129,-2135,
+-2143,-2131,-2088,-2083,-2143,-2212,-2288,-2362,-2412,-2439,-2440,-2477,-2564,-2628,-2683,-2737,-2778,-2815,-2864,-2929,
+-2992,-3047,-3091,-3135,-3186,-3222,-3261,-3308,-3341,-3360,-3358,-3356,-3353,-3340,-3340,-3366,-3411,-3421,-3426,-3468,
+-3498,-3524,-3571,-3592,-3597,-3623,-3672,-3728,-3760,-3787,-3834,-3885,-3947,-4011,-4041,-4065,-4104,-4131,-4142,-4145,
+-4145,-4153,-4169,-4191,-4215,-4249,-4291,-4337,-4371,-4397,-4414,-4441,-4453,-4469,-4489,-4499,-4506,-4513,-4518,-4514,
+-4519,-4514,-4512,-4505,-4508,-4528,-4551,-4577,-4596,-4612,-4636,-4655,-4671,-4674,-4629,-4571,-4553,-4542,-4549,-4605,
+-4642,-4687,-4750,-4818,-4861,-4907,-4937,-4927,-4922,-4996,-5038,-5022,-4983,-5005,-5035,-5038,-5065,-5108,-5162,-5223,
+-5248,-5252,-5244,-5218,-5176,-5105,-5018,-4933,-4791,-4672,-4613,-4524,-4503,-4520,-4581,-4613,-4607,-4619,-4693,-4798,
+-4912,-4888,-4829,-4839,-4909,-4946,-4946,-4928,-4943,-4939,-4938,-4930,-4895,-4873,-4849,-4812,-4794,-4741,-4672,-4601,
+-4558,-4525,-4533,-4496,-4431,-4402,-4409,-4411,-4401,-4381,-4380,-4397,-4428,-4439,-4445,-4463,-4471,-4471,-4479,-4467,
+-4441,-4405,-4388,-4383,-4383,-4379,-4358,-4342,-4291,-4256,-4229,-4209,-4152,-4089,-4057,-4001,-3921,-3856,-3792,-3720,
+-3659,-3606,-3545,-3514,-3459,-3385,-3301,-3246,-3208,-3148,-3091,-3055,-3000,-2934,-2887,-2830,-2771,-2707,-2647,-2555,
+-2500,-2431,-2344,-2273,-2205,-2135,-2063,-2007,-1944,-1873,-1797,-1739,-1683,-1624,-1576,-1509,-1430,-1344,-1268,-1189,
+-1102,-1016,-916,-814,-705,-611,-523,-426,-334,-247,-156,-65,15,97,135,159,191,259,318,367,
+416,468,517,569,602,637,681,730,777,824,876,929,986,1051,1114,1171,1213,1249,1297,1343,
+1386,1439,1496,1561,1623,1687,1763,1819,1808,1830,1860,1860,1870,1880,1891,1909,1926,1940,1955,1973,
+2004,2039,2072,2099,2121,2143,2169,2201,2233,2265,2294,2323,2342,2369,2405,2446,2492,2560,2617,2694,
+2712,2702,2722,2711,2623,2601,2630,2560,2490,2434,2388,2340,2304,2278,2259,2246,2245,2273,2346,2438,
+2487,2456,2418,2397,2341,2313,2277,2205,2143,2120,2124,2168,2195,2100,1978,1943,1934,1940,1954,1974,
+1989,2002,2012,2017,2015,2011,2016,2034,2051,2069,2089,2106,2125,2132,2145,2149,2151,2164,2210,2306,
+2371,2426,2536,2503,2425,2390,2365,2300,2073,1590,1079,726,485,370,393,526,695,855,981,1070,
+1110,1141,1162,1158,1144,1130,1113,1091,1057,1016,968,931,902,871,835,792,744,692,634,576,
+520,472,428,386,343,295,250,229,202,172,138,107,78,58,33,-2,-42,-89,-144,-218,
+-298,-382,-467,-537,-529,-389,-132,98,122,-17,-236,-415,-507,-518,-487,-431,-373,-337,-313,-276,
+-272,-279,-297,-332,-350,-338,-330,-333,-332,-343,-328,-305,-291,-295,-296,-291,-284,-278,-271,-269,
+-265,-271,-268,-246,-251,-237,-226,-210,-210,-194,-188,-169,-170,-161,-156,-144,-128,-111,-100,-91,
+-80,-60,-41,-24,-11,-4,10,19,28,41,50,53,68,85,103,118,131,144,160,162,
+182,203,209,206,200,208,225,247,269,285,292,293,279,273,260,272,285,298,311,314,
+318,320,318,325,323,323,326,326,329,318,311,307,304,305,301,304,303,303,298,295,
+288,283,278,268,263,258,244,234,221,207,194,178,162,143,126,106,88,72,48,28,
+13,-2,-21,-42,-63,-88,-111,-131,-150,-170,-189,-208,-227,-250,-274,-299,-320,-347,-374,-396,
+-416,-435,-451,-472,-492,-509,-534,-556,-587,-626,-642,-672,-706,-736,-759,-790,-817,-841,-866,-889,
+-917,-945,-973,-1002,-1032,-1063,-1094,-1125,-1157,-1187,-1211,-1244,-1279,-1310,-1343,-1375,-1416,-1451,-1478,-1511,
+-1543,-1573,-1602,-1626,-1651,-1684,-1717,-1750,-1775,-1800,-1828,-1857,-1887,-1912,-1931,-1953,-1975,-1996,-2014,-2032,
+-2054,-2074,-2094,-2114,-2132,-2152,-2175,-2198,-2215,-2217,-2245,-2259,-2267,-2270,-2268,-2268,-2276,-2274,-2269,-2265,
+-2260,-2263,-2268,-2269,-2265,-2250,-2255,-2262,-2262,-2262,-2256,-2267,-2269,-2272,-2279,-2278,-2287,-2296,-2294,-2291,
+-2292,-2301,-2312,-2332,-2353,-2369,-2365,-2339,-2345,-2364,-2375,-2392,-2377,-2346,-2289,-2197,-2089,-2002,-1978,-2073,
+-2113,-2196,-2226,-2168,-2068,-1957,-1825,-1734,-1746,-1848,-1859,-1866,-1910,-1924,-1944,-1950,-1921,-1882,-1851,-1834,
+-1811,-1779,-1742,-1700,-1680,-1643,-1611,-1571,-1521,-1522,-1515,-1521,-1489,-1499,-1497,-1411,-1377,-1297,-1272,-1231,
+-1244,-1326,-1365,-1386,-1382,-1376,-1365,-1347,-1312,-1298,-1331,-1359,-1375,-1386,-1383,-1397,-1416,-1444,-1467,-1488,
+-1493,-1490,-1501,-1518,-1538,-1565,-1590,-1611,-1630,-1642,-1643,-1639,-1625,-1630,-1652,-1667,-1690,-1708,-1717,-1717,
+-1730,-1759,-1798,-1851,-1907,-1967,-2013,-2048,-2090,-2128,-2161,-2202,-2225,-2264,-2320,-2352,-2370,-2399,-2432,-2504,
+-2547,-2595,-2631,-2653,-2676,-2691,-2689,-2685,-2708,-2743,-2773,-2800,-2817,-2821,-2840,-2866,-2900,-2946,-2982,-3014,
+-3028,-3018,-3015,-2959,-2890,-2847,-2879,-2972,-3040,-3118,-3226,-3331,-3388,-3374,-3338,-3357,-3407,-3467,-3514,-3544,
+-3584,-3632,-3670,-3696,-3719,-3745,-3753,-3749,-3757,-3758,-3746,-3749,-3732,-3718,-3702,-3681,-3665,-3651,-3650,-3656,
+-3659,-3655,-3648,-3641,-3630,-3639,-3633,-3629,-3635,-3655,-3664,-3658,-3681,-3709,-3720,-3727,-3714,-3711,-3689,-3662,
+-3629,-3604,-3572,-3545,-3514,-3483,-3450,-3449,-3424,-3397,-3368,-3340,-3305,-3281,-3259,-3230,-3206,-3178,-3147,-3097,
+-3041,-2950,-2896,-2839,-2747,-2667,-2601,-2569,-2587,-2683,-2741,-2775,-2752,-2685,-2634,-2601,-2555,-2502,-2441,-2384,
+-2337,-2282,-2212,-2159,-2105,-2068,-2049,-2037,-2076,-2047,-2024,-1996,-1994,-2007,-2002,-1972,-1922,-1876,-1833,-1798,
+-1773,-1753,-1728,-1700,-1672,-1643,-1615,-1582,-1562,-1546,-1530,-1460,-1351,-1217,-1080,-975,-882,-801,-708,-624,
+-532,-432,-346,-257,-176,-82,19,125,220,287,367,450,525,598,655,713,791,850,890,920,
+959,1000,1095,1188,1283,1370,1446,1539,1614,1661,1723,1804,1893,2000,2148,2307,2470,2600,2689,2726,
+2770,2831,2877,2885,2918,2993,3086,3215,3329,3412,3475,3534,3572,3605,3633,3650,3651,3627,3617,3634,
+3633,3632,3639,3653,3691,3749,3802,3870,3946,4018,4081,4145,4209,4252,4306,4386,4447,4497,4544,4594,
+4649,4712,4770,4833,4880,4929,4986,5035,5082,5137,5195,5241,5284,5324,5368,5396,5457,5504,5559,5602,
+5644,5681,5719,5784,5845,5897,5934,5995,6054,6100,6149,6185,6214,6239,6276,6315,6361,6416,6484,6538,
+6582,6558,6559,6596,6601,6612,6608,6582,6560,6550,6547,6528,6519,6515,6528,6490,6454,6418,6381,6337,
+6295,6264,6243,6243,6255,6274,6272,6278,6265,6253,6229,6213,6195,6181,6156,6146,6121,6103,6091,6052,
+6030,6013,5983,5940,5922,5913,5884,5839,5807,5775,5748,5733,5711,5682,5654,5629,5595,5560,5526,5494,
+5463,5419,5382,5332,5275,5223,5183,5144,5111,5090,5059,5033,5025,5013,5012,5035,5066,5090,5081,5032,
+5029,5092,5150,5164,5156,5156,5160,5155,5147,5130,5107,5085,5060,5035,5016,4995,4983,4969,4954,4938,
+4913,4874,4842,4829,4817,4808,4805,4801,4779,4757,4737,4726,4714,4706,4692,4686,4683,4681,4671,4673,
+4680,4696,4723,4736,4721,4726,4730,4746,4799,4821,4825,4832,4814,4813,4852,4894,4927,4969,5008,5021,
+5022,4985,4941,4891,4851,4816,4781,4762,4773,4805,4768,4832,4946,5023,5054,5026,5038,4987,4959,4979,
+4975,4969,4941,4910,4886,4896,4936,4958,4961,4935,4880,4835,4836,4804,4792,4739,4673,4628,4598,4542,
+4508,4479,4499,4520,4500,4457,4417,4376,4340,4317,4284,4255,4235,4216,4196,4175,4152,4136,4117,4108,
+4107,4109,4119,4099,4068,4042,4020,3984,3961,3939,3928,3944,3952,3907,3810,3675,3572,3473,3407,3374,
+3328,3284,3258,3239,3241,3227,3183,3124,3061,3003,2965,2925,2886,2856,2838,2812,2793,2754,2681,2610,
+2582,2560,2526,2480,2439,2402,2368,2331,2299,2278,2251,2216,2175,2133,2094,2064,2044,2005,1948,1885,
+1834,1775,1693,1619,1562,1507,1463,1425,1379,1335,1290,1239,1157,1080,1033,990,944,908,857,795,
+740,685,631,571,504,432,357,283,204,128,44,-40,-118,-220,-311,-357,-382,-416,-468,-539,
+-627,-702,-768,-840,-889,-937,-1003,-1074,-1155,-1222,-1279,-1340,-1375,-1403,-1443,-1473,-1493,-1510,-1525,-1549,
+-1579,-1602,-1624,-1648,-1685,-1729,-1770,-1817,-1872,-1923,-1960,-1995,-2027,-2048,-2071,-2093,-2116,-2122,-2131,-2144,
+-2153,-2173,-2170,-2154,-2175,-2236,-2313,-2391,-2435,-2475,-2510,-2517,-2551,-2633,-2689,-2723,-2767,-2810,-2855,-2906,
+-2965,-3029,-3080,-3116,-3158,-3205,-3243,-3290,-3335,-3363,-3386,-3395,-3397,-3403,-3402,-3405,-3427,-3460,-3465,-3481,
+-3526,-3553,-3573,-3613,-3648,-3665,-3702,-3752,-3794,-3806,-3817,-3850,-3901,-3959,-4019,-4051,-4076,-4126,-4168,-4200,
+-4219,-4214,-4224,-4242,-4271,-4288,-4306,-4332,-4365,-4396,-4428,-4457,-4486,-4502,-4515,-4541,-4573,-4579,-4591,-4631,
+-4659,-4657,-4645,-4639,-4632,-4623,-4633,-4656,-4681,-4692,-4708,-4728,-4739,-4753,-4754,-4736,-4703,-4685,-4709,-4688,
+-4658,-4628,-4605,-4640,-4674,-4691,-4717,-4757,-4819,-4857,-4867,-4847,-4740,-4713,-4727,-4791,-4861,-4954,-5070,-5200,
+-5295,-5332,-5351,-5360,-5340,-5304,-5256,-5201,-5135,-5012,-4889,-4863,-4742,-4590,-4548,-4593,-4644,-4638,-4642,-4674,
+-4763,-4821,-4874,-4930,-4838,-4830,-4919,-4926,-4956,-4997,-5003,-4969,-4920,-4890,-4901,-4902,-4884,-4831,-4759,-4703,
+-4645,-4602,-4603,-4595,-4545,-4486,-4461,-4450,-4455,-4455,-4442,-4422,-4396,-4378,-4374,-4424,-4429,-4463,-4465,-4463,
+-4448,-4445,-4410,-4392,-4384,-4379,-4383,-4363,-4316,-4283,-4270,-4248,-4230,-4209,-4157,-4087,-4003,-3939,-3859,-3805,
+-3746,-3682,-3630,-3583,-3542,-3463,-3424,-3363,-3308,-3254,-3178,-3136,-3075,-3010,-2966,-2897,-2818,-2759,-2700,-2626,
+-2550,-2474,-2407,-2326,-2259,-2190,-2126,-2060,-1991,-1915,-1836,-1781,-1716,-1648,-1576,-1508,-1462,-1396,-1318,-1236,
+-1155,-1075,-982,-877,-778,-703,-588,-485,-400,-311,-233,-154,-66,24,95,133,154,200,255,334,
+385,435,475,523,564,609,650,692,734,776,823,878,938,998,1059,1122,1180,1217,1257,1307,
+1344,1386,1441,1497,1554,1616,1703,1787,1836,1825,1860,1897,1879,1877,1883,1899,1928,1951,1966,1986,
+2014,2048,2077,2103,2129,2158,2185,2215,2249,2286,2337,2383,2385,2398,2413,2446,2480,2531,2608,2688,
+2754,2766,2782,2738,2680,2603,2550,2542,2527,2482,2435,2391,2357,2327,2307,2297,2288,2286,2310,2379,
+2449,2493,2480,2485,2489,2408,2356,2303,2207,2160,2143,2128,2110,2097,2079,2003,1981,1967,1975,1992,
+2013,2035,2050,2058,2062,2063,2059,2064,2075,2092,2109,2117,2129,2154,2188,2231,2198,2193,2216,2262,
+2383,2524,2567,2507,2436,2374,2319,2231,2099,1721,1174,759,508,403,449,591,760,918,1036,1116,
+1180,1194,1207,1208,1192,1161,1134,1112,1086,1057,1017,969,927,896,856,803,754,705,650,591,
+527,472,419,369,321,282,243,206,179,152,119,93,63,36,18,-4,-36,-80,-130,-186,
+-252,-332,-417,-505,-585,-619,-549,-339,-89,3,-18,-122,-385,-561,-610,-571,-500,-453,-415,-420,
+-393,-350,-334,-333,-354,-369,-359,-370,-393,-407,-402,-393,-371,-355,-351,-342,-335,-332,-324,-320,
+-314,-305,-313,-319,-309,-294,-266,-267,-263,-254,-230,-225,-214,-210,-200,-196,-186,-171,-159,-146,
+-135,-120,-107,-90,-73,-56,-44,-33,-24,-16,-6,1,11,19,34,53,68,86,101,117,
+109,123,142,142,136,131,140,159,184,203,216,225,235,216,200,197,207,228,249,262,
+268,264,257,253,257,256,260,259,263,266,262,255,252,242,241,248,246,250,249,248,
+246,240,235,229,226,220,210,197,181,164,149,133,114,96,78,63,45,26,5,-5,
+-25,-48,-62,-78,-89,-117,-141,-161,-179,-201,-224,-244,-266,-286,-309,-335,-364,-389,-416,-439,
+-462,-482,-504,-521,-540,-562,-585,-610,-625,-653,-676,-700,-737,-779,-808,-833,-856,-879,-900,-924,
+-947,-974,-1002,-1030,-1060,-1091,-1123,-1154,-1183,-1217,-1249,-1278,-1307,-1341,-1372,-1402,-1433,-1468,-1500,-1534,
+-1564,-1590,-1618,-1648,-1677,-1711,-1745,-1774,-1803,-1829,-1855,-1881,-1909,-1937,-1963,-1986,-2005,-2027,-2048,-2070,
+-2092,-2113,-2134,-2154,-2174,-2195,-2215,-2241,-2264,-2285,-2305,-2315,-2327,-2337,-2341,-2341,-2339,-2339,-2344,-2336,
+-2324,-2309,-2311,-2318,-2322,-2313,-2299,-2313,-2310,-2306,-2299,-2302,-2298,-2307,-2310,-2303,-2311,-2317,-2329,-2335,
+-2333,-2333,-2341,-2351,-2369,-2389,-2412,-2419,-2396,-2394,-2417,-2438,-2440,-2424,-2413,-2377,-2283,-2155,-2094,-2057,
+-2105,-2166,-2172,-2173,-2124,-2015,-1927,-1860,-1825,-1810,-1800,-1864,-1953,-1966,-1980,-1987,-1971,-1943,-1908,-1884,
+-1859,-1835,-1799,-1768,-1738,-1696,-1665,-1617,-1579,-1545,-1512,-1498,-1507,-1461,-1438,-1447,-1396,-1323,-1319,-1258,
+-1216,-1179,-1226,-1295,-1322,-1330,-1324,-1292,-1251,-1233,-1239,-1262,-1293,-1313,-1292,-1281,-1308,-1354,-1394,-1420,
+-1442,-1447,-1439,-1454,-1481,-1513,-1544,-1581,-1602,-1613,-1618,-1625,-1636,-1621,-1610,-1608,-1617,-1646,-1672,-1691,
+-1702,-1721,-1757,-1808,-1873,-1929,-1977,-2024,-2075,-2123,-2153,-2181,-2213,-2244,-2268,-2308,-2356,-2399,-2437,-2472,
+-2510,-2528,-2552,-2588,-2622,-2649,-2659,-2661,-2684,-2716,-2722,-2739,-2758,-2782,-2803,-2839,-2878,-2919,-2938,-2949,
+-2968,-2988,-2990,-2965,-2892,-2838,-2867,-2974,-3028,-3069,-3138,-3213,-3278,-3300,-3279,-3269,-3289,-3346,-3421,-3557,
+-3639,-3660,-3650,-3645,-3667,-3696,-3716,-3724,-3732,-3745,-3753,-3743,-3735,-3743,-3715,-3704,-3682,-3662,-3651,-3650,
+-3651,-3643,-3638,-3636,-3629,-3616,-3620,-3630,-3632,-3621,-3613,-3630,-3638,-3654,-3686,-3698,-3698,-3689,-3679,-3662,
+-3640,-3617,-3592,-3572,-3553,-3533,-3502,-3473,-3456,-3435,-3408,-3378,-3358,-3332,-3301,-3267,-3235,-3210,-3170,-3119,
+-3088,-3025,-2947,-2902,-2834,-2750,-2690,-2650,-2627,-2667,-2773,-2798,-2767,-2710,-2659,-2636,-2593,-2543,-2490,-2446,
+-2398,-2336,-2267,-2212,-2154,-2096,-2055,-2056,-2054,-2053,-2035,-2013,-2002,-2008,-1998,-1979,-1941,-1910,-1876,-1841,
+-1810,-1785,-1758,-1732,-1707,-1688,-1654,-1620,-1569,-1530,-1492,-1438,-1394,-1323,-1255,-1161,-1043,-940,-840,-757,
+-666,-568,-485,-404,-319,-236,-135,-28,67,134,228,333,405,466,527,602,694,782,838,894,
+918,915,962,1062,1161,1262,1353,1418,1484,1566,1622,1688,1757,1834,1925,2045,2165,2282,2409,2530,
+2631,2712,2774,2807,2827,2900,3050,3141,3204,3302,3391,3461,3525,3572,3602,3626,3638,3640,3609,3566,
+3590,3603,3617,3624,3640,3670,3721,3782,3848,3922,3992,4065,4132,4194,4237,4287,4361,4432,4473,4512,
+4564,4623,4679,4738,4794,4853,4905,4966,5021,5072,5126,5172,5222,5280,5330,5370,5402,5445,5498,5550,
+5596,5633,5672,5710,5768,5836,5889,5947,6012,6043,6096,6130,6174,6223,6252,6282,6309,6354,6397,6466,
+6530,6557,6563,6572,6613,6633,6618,6622,6618,6603,6599,6593,6568,6554,6543,6557,6539,6513,6480,6447,
+6393,6339,6300,6272,6240,6238,6256,6262,6247,6243,6247,6228,6217,6197,6171,6155,6138,6116,6107,6085,
+6051,6023,5990,5962,5932,5896,5878,5859,5831,5809,5780,5748,5720,5702,5671,5644,5630,5603,5570,5541,
+5511,5470,5413,5355,5302,5243,5175,5122,5077,5055,5048,5039,5037,5032,5012,4981,4968,4978,4987,4960,
+4880,4855,4896,4907,4905,4906,4929,4981,5039,5068,5086,5077,5062,5043,5018,5005,4996,4986,4971,4955,
+4935,4908,4881,4864,4837,4809,4788,4802,4800,4773,4753,4729,4714,4744,4729,4714,4712,4716,4721,4712,
+4709,4715,4737,4764,4786,4786,4783,4792,4799,4848,4846,4856,4849,4830,4849,4885,4934,5002,5049,5073,
+5047,4977,4940,4924,4928,4922,4892,4871,4915,4920,4925,4862,4942,5024,5117,5130,5171,5204,5163,5098,
+5135,5133,5181,5105,5097,5031,5001,4981,5020,5008,4940,4898,4881,4866,4782,4736,4692,4645,4622,4570,
+4535,4526,4526,4538,4532,4492,4447,4411,4381,4351,4328,4309,4284,4255,4228,4209,4197,4183,4168,4160,
+4154,4166,4181,4194,4196,4147,4099,4057,4000,3954,3942,3935,3950,3954,3942,3872,3753,3619,3519,3430,
+3380,3342,3306,3271,3254,3230,3225,3198,3136,3073,3010,2958,2925,2877,2843,2823,2793,2765,2730,2664,
+2602,2562,2540,2503,2452,2406,2366,2331,2292,2265,2242,2204,2169,2143,2108,2063,2032,1998,1948,1883,
+1813,1752,1690,1609,1531,1470,1428,1393,1366,1327,1294,1259,1213,1156,1093,1045,997,930,872,831,
+793,753,706,652,594,531,469,399,332,271,198,111,20,-66,-161,-256,-315,-337,-372,-435,
+-490,-537,-591,-661,-734,-789,-851,-922,-989,-1067,-1142,-1207,-1267,-1304,-1327,-1364,-1402,-1426,-1452,-1479,
+-1505,-1529,-1558,-1595,-1630,-1664,-1706,-1755,-1808,-1856,-1902,-1941,-1970,-2002,-2034,-2059,-2079,-2101,-2124,-2142,
+-2157,-2172,-2195,-2204,-2233,-2281,-2339,-2413,-2465,-2486,-2517,-2558,-2587,-2618,-2687,-2754,-2785,-2827,-2862,-2893,
+-2934,-2992,-3053,-3105,-3148,-3189,-3227,-3267,-3323,-3367,-3387,-3407,-3430,-3446,-3451,-3464,-3474,-3498,-3526,-3522,
+-3529,-3582,-3626,-3641,-3669,-3702,-3741,-3783,-3814,-3837,-3852,-3856,-3869,-3908,-3961,-4027,-4070,-4093,-4145,-4200,
+-4236,-4266,-4278,-4285,-4297,-4313,-4328,-4343,-4370,-4400,-4424,-4455,-4498,-4532,-4555,-4572,-4600,-4627,-4653,-4694,
+-4751,-4780,-4791,-4796,-4792,-4799,-4800,-4789,-4792,-4802,-4806,-4816,-4823,-4831,-4854,-4865,-4875,-4884,-4882,-4922,
+-4938,-4902,-4861,-4831,-4839,-4847,-4812,-4736,-4728,-4794,-4866,-4858,-4798,-4715,-4667,-4663,-4713,-4805,-4919,-5077,
+-5232,-5345,-5418,-5450,-5459,-5444,-5405,-5355,-5295,-5240,-5188,-5124,-5034,-4924,-4808,-4688,-4643,-4694,-4710,-4663,
+-4681,-4698,-4702,-4733,-4766,-4862,-4911,-4921,-4928,-4979,-5029,-5052,-5036,-4963,-4894,-4861,-4882,-4898,-4870,-4809,
+-4765,-4704,-4650,-4631,-4621,-4591,-4546,-4513,-4522,-4527,-4538,-4522,-4480,-4434,-4415,-4383,-4379,-4383,-4375,-4409,
+-4425,-4437,-4430,-4422,-4412,-4397,-4367,-4360,-4347,-4298,-4236,-4235,-4245,-4224,-4183,-4146,-4109,-4039,-3965,-3890,
+-3835,-3780,-3719,-3667,-3612,-3559,-3508,-3455,-3411,-3353,-3280,-3231,-3169,-3106,-3045,-2977,-2904,-2832,-2759,-2694,
+-2622,-2531,-2468,-2399,-2319,-2254,-2177,-2118,-2035,-1958,-1879,-1827,-1740,-1667,-1606,-1544,-1490,-1428,-1362,-1285,
+-1198,-1116,-1025,-940,-850,-745,-653,-557,-465,-375,-285,-210,-122,-32,28,88,121,163,216,278,
+336,406,453,481,525,573,617,660,698,729,770,824,883,945,1003,1066,1133,1192,1232,1278,
+1321,1354,1396,1445,1498,1554,1625,1715,1785,1822,1869,1890,1910,1893,1902,1916,1944,1974,1992,2009,
+2036,2061,2083,2107,2132,2162,2194,2233,2257,2279,2323,2371,2403,2411,2429,2449,2479,2512,2580,2659,
+2732,2788,2779,2792,2797,2725,2651,2574,2543,2511,2474,2441,2413,2381,2357,2358,2375,2368,2380,2407,
+2443,2487,2515,2516,2534,2547,2475,2433,2383,2266,2180,2157,2144,2127,2102,2075,2044,2027,2029,2039,
+2061,2081,2097,2104,2110,2110,2106,2102,2101,2113,2133,2140,2133,2155,2211,2270,2268,2243,2250,2285,
+2388,2543,2586,2505,2417,2348,2260,2130,1942,1688,1263,832,561,453,495,652,830,969,1066,1144,
+1196,1228,1241,1243,1228,1202,1164,1117,1089,1066,1035,996,952,904,859,810,758,706,654,600,
+545,484,425,370,319,274,236,202,166,134,109,74,36,17,0,-21,-48,-77,-118,-165,
+-222,-283,-364,-450,-537,-621,-680,-671,-558,-336,-118,-68,-154,-452,-645,-692,-665,-590,-521,-495,
+-470,-474,-452,-402,-387,-388,-412,-429,-427,-436,-442,-440,-436,-422,-399,-394,-384,-379,-369,-371,
+-367,-361,-348,-337,-336,-333,-325,-323,-325,-312,-298,-291,-278,-268,-255,-247,-242,-227,-222,-206,
+-193,-179,-152,-143,-133,-118,-102,-87,-75,-66,-62,-48,-45,-45,-32,-17,0,20,37,54,
+63,50,64,86,79,68,66,79,102,124,140,148,156,161,159,148,140,149,167,187,
+203,213,215,199,200,195,199,198,201,202,202,199,193,187,188,180,186,192,194,199,
+199,194,191,181,180,174,170,157,140,121,102,84,66,46,29,13,-2,-18,-37,-57,
+-72,-90,-104,-117,-133,-151,-171,-191,-211,-236,-259,-280,-303,-330,-352,-377,-402,-429,-450,-475,
+-500,-517,-539,-561,-575,-607,-635,-661,-689,-711,-733,-751,-779,-813,-843,-872,-896,-919,-942,-965,
+-990,-1014,-1041,-1066,-1095,-1127,-1157,-1185,-1212,-1238,-1270,-1303,-1336,-1368,-1400,-1427,-1454,-1484,-1515,-1548,
+-1579,-1608,-1639,-1669,-1699,-1734,-1766,-1797,-1824,-1855,-1882,-1912,-1938,-1964,-1989,-2014,-2033,-2056,-2082,-2108,
+-2129,-2153,-2176,-2196,-2215,-2233,-2253,-2274,-2295,-2317,-2339,-2356,-2367,-2371,-2383,-2391,-2397,-2399,-2401,-2401,
+-2405,-2388,-2373,-2367,-2369,-2373,-2378,-2368,-2360,-2355,-2341,-2344,-2338,-2335,-2340,-2340,-2340,-2346,-2354,-2363,
+-2368,-2370,-2372,-2379,-2389,-2405,-2426,-2452,-2473,-2471,-2450,-2465,-2478,-2463,-2460,-2464,-2434,-2338,-2234,-2136,
+-2037,-2036,-2103,-2136,-2089,-1994,-1895,-1846,-1841,-1829,-1892,-1958,-1948,-1997,-2011,-2019,-2022,-2014,-1979,-1945,
+-1916,-1900,-1880,-1856,-1820,-1772,-1720,-1672,-1629,-1574,-1545,-1511,-1482,-1454,-1480,-1461,-1450,-1385,-1342,-1337,
+-1317,-1294,-1225,-1223,-1235,-1269,-1222,-1200,-1173,-1121,-1115,-1114,-1169,-1220,-1240,-1218,-1208,-1245,-1296,-1348,
+-1381,-1407,-1416,-1419,-1433,-1459,-1498,-1538,-1570,-1583,-1585,-1597,-1610,-1623,-1621,-1594,-1577,-1583,-1603,-1639,
+-1668,-1689,-1712,-1761,-1822,-1887,-1938,-1987,-2042,-2101,-2140,-2168,-2191,-2216,-2244,-2272,-2298,-2357,-2415,-2446,
+-2472,-2493,-2531,-2569,-2587,-2594,-2620,-2646,-2669,-2683,-2678,-2665,-2702,-2736,-2756,-2782,-2824,-2866,-2884,-2901,
+-2916,-2930,-2934,-2927,-2892,-2845,-2879,-2976,-3073,-3098,-3131,-3172,-3191,-3193,-3184,-3183,-3200,-3246,-3323,-3479,
+-3576,-3616,-3641,-3649,-3663,-3671,-3669,-3681,-3696,-3701,-3703,-3714,-3709,-3692,-3688,-3692,-3698,-3692,-3672,-3657,
+-3650,-3639,-3633,-3632,-3632,-3636,-3635,-3639,-3649,-3644,-3624,-3608,-3608,-3635,-3649,-3675,-3696,-3694,-3685,-3677,
+-3659,-3637,-3611,-3581,-3571,-3554,-3531,-3507,-3488,-3471,-3451,-3414,-3393,-3374,-3338,-3296,-3264,-3239,-3206,-3169,
+-3131,-3097,-3040,-2981,-2934,-2879,-2843,-2802,-2774,-2795,-2827,-2824,-2776,-2738,-2709,-2671,-2635,-2583,-2516,-2468,
+-2435,-2397,-2349,-2277,-2219,-2156,-2138,-2114,-2088,-2067,-2051,-2035,-2020,-2023,-2014,-1993,-1964,-1924,-1887,-1858,
+-1828,-1797,-1777,-1763,-1742,-1714,-1679,-1632,-1581,-1526,-1465,-1389,-1368,-1333,-1310,-1243,-1154,-1070,-995,-913,
+-827,-725,-636,-555,-467,-372,-277,-174,-79,8,106,188,284,338,398,479,572,679,728,786,
+843,862,863,919,1014,1123,1220,1299,1367,1426,1500,1587,1668,1726,1798,1884,1980,2060,2134,2242,
+2391,2547,2651,2694,2725,2775,2894,3075,3162,3187,3269,3362,3445,3513,3565,3597,3613,3618,3611,3599,
+3569,3557,3581,3601,3615,3636,3672,3721,3777,3839,3905,3978,4046,4113,4165,4219,4269,4341,4409,4459,
+4496,4540,4589,4641,4708,4767,4827,4885,4948,5005,5061,5108,5158,5215,5267,5323,5360,5392,5441,5487,
+5542,5585,5624,5663,5698,5752,5824,5875,5927,6009,6060,6099,6140,6181,6207,6253,6282,6305,6351,6390,
+6449,6518,6577,6589,6571,6628,6633,6640,6615,6596,6593,6598,6593,6576,6553,6537,6532,6539,6528,6499,
+6477,6438,6398,6327,6280,6243,6221,6220,6227,6237,6249,6257,6247,6212,6195,6174,6152,6133,6131,6131,
+6098,6053,6021,5976,5939,5917,5892,5866,5854,5838,5805,5773,5749,5718,5689,5662,5639,5626,5614,5590,
+5569,5543,5487,5416,5333,5262,5196,5131,5076,5032,5006,4996,4997,5009,5023,5021,5005,5000,4996,4980,
+4932,4867,4839,4834,4821,4795,4777,4776,4762,4796,4907,4980,5014,5016,5007,4995,4982,4975,4975,4963,
+4945,4927,4906,4882,4861,4838,4824,4813,4778,4769,4774,4773,4760,4744,4764,4759,4756,4756,4756,4762,
+4772,4778,4790,4808,4813,4824,4832,4834,4823,4833,4861,4879,4892,4883,4876,4889,4936,5018,5074,5101,
+5052,5002,4997,5026,5027,5033,5068,5099,5122,5085,5049,4983,4972,5051,5130,5152,5165,5223,5198,5108,
+5121,5122,5153,5176,5153,5092,5019,4974,4939,4948,4927,4870,4847,4844,4866,4776,4732,4682,4645,4596,
+4551,4532,4527,4526,4512,4490,4463,4430,4421,4401,4378,4349,4322,4293,4264,4241,4226,4214,4208,4205,
+4196,4183,4189,4196,4243,4310,4272,4222,4134,4049,3991,3977,3957,3929,3938,3964,3905,3847,3719,3588,
+3455,3392,3351,3321,3276,3244,3223,3194,3174,3137,3088,3029,2965,2928,2883,2840,2808,2771,2733,2697,
+2637,2581,2541,2507,2464,2413,2359,2312,2272,2232,2200,2172,2141,2124,2093,2035,2001,1982,1928,1852,
+1778,1700,1636,1574,1510,1448,1405,1365,1331,1301,1269,1237,1212,1180,1146,1103,1055,1001,931,858,
+796,750,720,686,645,606,558,510,449,386,323,251,165,76,-11,-97,-180,-242,-278,-313,
+-358,-405,-444,-488,-553,-629,-707,-779,-844,-915,-981,-1046,-1117,-1166,-1192,-1226,-1258,-1302,-1332,-1380,
+-1428,-1470,-1499,-1520,-1557,-1598,-1634,-1672,-1723,-1781,-1823,-1859,-1892,-1923,-1959,-1993,-2026,-2058,-2096,-2137,
+-2175,-2208,-2229,-2250,-2270,-2306,-2358,-2417,-2484,-2533,-2570,-2604,-2645,-2688,-2703,-2749,-2811,-2840,-2876,-2918,
+-2941,-2966,-3017,-3073,-3128,-3167,-3202,-3244,-3289,-3348,-3396,-3420,-3438,-3473,-3496,-3503,-3524,-3545,-3570,-3585,
+-3584,-3602,-3651,-3699,-3719,-3730,-3746,-3789,-3843,-3874,-3898,-3910,-3906,-3904,-3921,-3961,-4020,-4074,-4128,-4181,
+-4210,-4231,-4257,-4277,-4302,-4328,-4339,-4351,-4373,-4409,-4441,-4468,-4498,-4526,-4551,-4583,-4623,-4660,-4696,-4740,
+-4787,-4842,-4883,-4903,-4918,-4920,-4930,-4946,-4946,-4934,-4933,-4932,-4929,-4929,-4936,-4951,-4961,-4970,-4987,-5001,
+-5031,-5065,-5081,-5073,-5073,-5075,-5070,-5039,-5004,-4997,-4994,-4971,-4926,-4878,-4873,-4924,-4992,-5054,-5129,-5220,
+-5318,-5411,-5494,-5547,-5573,-5580,-5561,-5510,-5458,-5407,-5354,-5307,-5269,-5193,-5056,-5004,-4920,-4782,-4759,-4838,
+-4784,-4696,-4686,-4699,-4726,-4787,-4827,-4846,-4790,-4832,-4897,-4990,-5078,-5052,-5003,-4920,-4834,-4768,-4786,-4842,
+-4855,-4831,-4791,-4751,-4703,-4645,-4641,-4637,-4597,-4566,-4547,-4557,-4553,-4546,-4541,-4495,-4420,-4380,-4368,-4365,
+-4394,-4421,-4425,-4420,-4418,-4404,-4375,-4365,-4337,-4315,-4296,-4263,-4257,-4230,-4202,-4151,-4103,-4086,-4047,-3981,
+-3909,-3854,-3812,-3761,-3704,-3659,-3601,-3537,-3466,-3414,-3368,-3319,-3260,-3193,-3124,-3054,-2982,-2907,-2828,-2763,
+-2681,-2607,-2542,-2485,-2407,-2335,-2251,-2170,-2090,-2014,-1936,-1859,-1778,-1714,-1648,-1593,-1521,-1450,-1391,-1322,
+-1238,-1156,-1067,-983,-893,-804,-716,-625,-537,-445,-346,-254,-178,-87,-18,17,61,111,179,242,
+316,360,407,453,499,541,587,625,662,699,729,772,830,893,957,1017,1081,1147,1206,1246,
+1288,1333,1376,1422,1473,1524,1585,1663,1750,1820,1881,1917,1907,1900,1918,1957,1987,2025,2047,2059,
+2072,2087,2104,2124,2145,2167,2198,2233,2264,2290,2308,2345,2369,2388,2413,2463,2485,2506,2549,2624,
+2691,2741,2757,2760,2781,2788,2732,2649,2575,2529,2494,2458,2435,2417,2399,2391,2407,2439,2469,2474,
+2482,2500,2537,2525,2514,2552,2570,2535,2516,2455,2321,2189,2151,2151,2142,2133,2122,2115,2111,2114,
+2125,2143,2154,2162,2159,2160,2158,2152,2145,2142,2151,2162,2163,2175,2204,2240,2310,2410,2314,2305,
+2380,2543,2542,2465,2368,2284,2173,2048,1813,1503,1162,816,579,488,555,695,851,995,1109,1157,
+1199,1244,1255,1271,1257,1234,1194,1151,1102,1067,1025,999,960,910,862,815,764,714,662,610,
+560,509,448,388,334,282,236,198,166,132,96,61,36,3,-24,-43,-65,-91,-121,-156,
+-200,-251,-314,-391,-478,-565,-648,-712,-735,-662,-443,-241,-205,-295,-565,-731,-768,-728,-661,-597,
+-550,-541,-528,-524,-485,-443,-444,-454,-459,-467,-476,-482,-483,-488,-469,-461,-456,-434,-432,-435,
+-433,-425,-419,-408,-394,-389,-383,-374,-367,-370,-365,-355,-335,-318,-304,-298,-296,-300,-279,-268,
+-247,-237,-221,-216,-202,-186,-168,-150,-138,-124,-115,-107,-90,-95,-86,-88,-74,-59,-39,-18,
+-1,7,3,13,24,19,6,10,26,47,67,75,83,98,103,101,97,93,97,111,
+130,139,149,149,142,137,139,142,141,142,143,143,141,132,123,126,120,132,134,139,
+143,141,145,144,133,121,115,112,99,82,62,40,17,0,-19,-35,-51,-64,-76,-98,
+-113,-130,-147,-160,-173,-191,-208,-224,-246,-265,-289,-316,-342,-367,-394,-420,-440,-458,-493,-515,
+-536,-562,-585,-600,-617,-645,-685,-713,-731,-757,-771,-794,-822,-850,-875,-906,-932,-957,-982,-1009,
+-1033,-1059,-1084,-1107,-1133,-1163,-1190,-1218,-1243,-1268,-1295,-1327,-1358,-1392,-1424,-1454,-1481,-1511,-1542,-1572,
+-1602,-1632,-1662,-1694,-1725,-1755,-1788,-1819,-1850,-1882,-1912,-1943,-1971,-1998,-2022,-2045,-2063,-2087,-2113,-2139,
+-2162,-2187,-2210,-2232,-2254,-2274,-2294,-2312,-2329,-2346,-2365,-2380,-2401,-2415,-2415,-2421,-2435,-2444,-2452,-2456,
+-2458,-2456,-2446,-2429,-2417,-2420,-2424,-2426,-2384,-2348,-2336,-2287,-2373,-2376,-2373,-2374,-2371,-2372,-2383,-2395,
+-2397,-2403,-2407,-2410,-2412,-2422,-2438,-2460,-2488,-2513,-2525,-2505,-2512,-2506,-2501,-2484,-2491,-2449,-2325,-2191,
+-2112,-2031,-2049,-2039,-2011,-1992,-1929,-1853,-1829,-1825,-1870,-1956,-2002,-1993,-2030,-2046,-2059,-2064,-2059,-2028,
+-2000,-1978,-1960,-1934,-1886,-1824,-1780,-1739,-1688,-1651,-1619,-1571,-1555,-1497,-1468,-1432,-1421,-1405,-1413,-1374,
+-1339,-1306,-1271,-1259,-1235,-1255,-1266,-1215,-1143,-1130,-1095,-1054,-1044,-1074,-1124,-1158,-1119,-1122,-1202,-1258,
+-1309,-1348,-1386,-1407,-1418,-1438,-1457,-1489,-1521,-1543,-1565,-1581,-1595,-1602,-1612,-1610,-1580,-1558,-1558,-1582,
+-1611,-1648,-1674,-1706,-1760,-1829,-1893,-1946,-1989,-2034,-2095,-2135,-2156,-2181,-2208,-2235,-2271,-2309,-2358,-2415,
+-2444,-2470,-2517,-2549,-2587,-2620,-2632,-2640,-2651,-2652,-2647,-2653,-2670,-2699,-2733,-2754,-2782,-2801,-2815,-2823,
+-2841,-2849,-2855,-2857,-2856,-2837,-2845,-2887,-2996,-3103,-3167,-3208,-3204,-3159,-3108,-3090,-3121,-3183,-3267,-3357,
+-3426,-3444,-3470,-3511,-3573,-3625,-3644,-3639,-3630,-3641,-3651,-3655,-3670,-3683,-3680,-3694,-3709,-3708,-3707,-3701,
+-3683,-3664,-3651,-3652,-3651,-3656,-3661,-3658,-3654,-3644,-3632,-3627,-3612,-3627,-3650,-3664,-3675,-3688,-3700,-3695,
+-3680,-3650,-3619,-3600,-3579,-3567,-3539,-3507,-3489,-3477,-3458,-3431,-3411,-3412,-3385,-3347,-3310,-3283,-3258,-3228,
+-3193,-3157,-3119,-3081,-3037,-3000,-2968,-2935,-2910,-2900,-2879,-2837,-2780,-2729,-2716,-2700,-2660,-2608,-2539,-2493,
+-2457,-2429,-2406,-2364,-2299,-2239,-2206,-2181,-2152,-2122,-2099,-2073,-2061,-2044,-2026,-2015,-1985,-1944,-1909,-1871,
+-1845,-1814,-1796,-1774,-1757,-1735,-1702,-1650,-1589,-1530,-1447,-1334,-1295,-1314,-1291,-1254,-1214,-1157,-1101,-1048,
+-982,-919,-841,-746,-633,-513,-408,-307,-211,-131,-47,50,146,225,285,366,460,543,607,655,
+720,753,796,827,884,977,1093,1203,1289,1364,1423,1492,1589,1669,1722,1787,1877,1965,2022,2060,
+2151,2287,2436,2555,2626,2683,2727,2840,3013,3129,3182,3250,3333,3421,3486,3522,3535,3528,3498,3449,
+3435,3463,3515,3560,3577,3597,3619,3659,3704,3761,3828,3891,3958,4027,4100,4148,4197,4255,4317,4377,
+4438,4481,4525,4571,4624,4683,4746,4805,4861,4929,4988,5044,5096,5160,5215,5260,5314,5358,5377,5422,
+5488,5540,5578,5618,5663,5703,5759,5835,5876,5933,6004,6048,6089,6143,6176,6203,6241,6283,6320,6357,
+6393,6448,6531,6570,6575,6577,6632,6635,6619,6607,6590,6605,6603,6602,6592,6571,6564,6533,6495,6482,
+6463,6456,6426,6384,6335,6299,6244,6207,6198,6182,6182,6204,6224,6214,6172,6154,6144,6134,6123,6119,
+6119,6095,6049,6002,5969,5933,5921,5900,5869,5848,5815,5801,5780,5756,5724,5684,5656,5629,5615,5604,
+5597,5582,5559,5518,5442,5340,5243,5158,5095,5036,4991,4953,4932,4924,4926,4932,4947,4964,5001,5017,
+4980,4908,4860,4838,4835,4822,4793,4759,4721,4678,4665,4700,4781,4863,4933,4965,4965,4956,4945,4938,
+4934,4925,4914,4898,4877,4860,4841,4822,4804,4807,4803,4794,4770,4756,4764,4760,4753,4761,4775,4787,
+4798,4813,4827,4840,4854,4860,4874,4883,4873,4864,4880,4888,4910,4929,4927,4914,4928,5003,5065,5114,
+5097,5029,5041,5115,5176,5206,5244,5294,5270,5236,5160,5113,5111,5127,5169,5197,5202,5220,5205,5111,
+5005,5084,5188,5183,5133,5082,5014,4928,4915,4912,4890,4855,4830,4829,4828,4789,4782,4748,4662,4622,
+4584,4550,4528,4509,4485,4462,4458,4462,4446,4430,4418,4401,4379,4358,4336,4310,4280,4254,4234,4228,
+4231,4239,4224,4219,4269,4274,4363,4374,4348,4223,4097,4029,3990,3950,3923,3916,3935,3927,3847,3782,
+3643,3502,3411,3337,3294,3249,3214,3187,3157,3149,3122,3088,3039,2991,2958,2900,2841,2802,2755,2708,
+2669,2610,2548,2501,2460,2420,2380,2334,2284,2235,2192,2153,2115,2078,2043,2006,1965,1929,1894,1824,
+1736,1657,1590,1533,1479,1431,1386,1352,1325,1296,1269,1235,1194,1170,1138,1101,1066,1027,978,916,
+854,801,756,703,649,604,573,551,526,487,426,362,291,212,126,39,-34,-101,-163,-214,
+-260,-303,-343,-378,-425,-483,-544,-618,-691,-757,-829,-894,-952,-1011,-1066,-1113,-1151,-1184,-1223,-1261,
+-1322,-1376,-1420,-1439,-1454,-1490,-1531,-1578,-1613,-1658,-1715,-1758,-1792,-1825,-1864,-1909,-1951,-1995,-2051,-2116,
+-2177,-2224,-2263,-2301,-2335,-2364,-2402,-2450,-2495,-2542,-2589,-2634,-2673,-2716,-2751,-2778,-2819,-2873,-2911,-2925,
+-2955,-2973,-2989,-3035,-3092,-3145,-3186,-3229,-3276,-3321,-3371,-3413,-3442,-3478,-3522,-3548,-3568,-3588,-3602,-3639,
+-3659,-3648,-3663,-3695,-3741,-3776,-3779,-3786,-3821,-3886,-3947,-3980,-3990,-3982,-3963,-3952,-3978,-4028,-4079,-4132,
+-4184,-4220,-4243,-4263,-4280,-4314,-4353,-4379,-4397,-4417,-4449,-4478,-4492,-4508,-4538,-4582,-4626,-4672,-4719,-4765,
+-4814,-4870,-4935,-4987,-5016,-5022,-5016,-5011,-5011,-5011,-5006,-5010,-5015,-5015,-5007,-5010,-5029,-5039,-5045,-5054,
+-5076,-5117,-5163,-5192,-5191,-5186,-5191,-5179,-5160,-5149,-5133,-5057,-4992,-5049,-5142,-5214,-5274,-5335,-5371,-5433,
+-5506,-5579,-5623,-5676,-5731,-5762,-5754,-5715,-5660,-5598,-5536,-5481,-5431,-5384,-5309,-5208,-5151,-5082,-5015,-4948,
+-4968,-4943,-4844,-4816,-4775,-4753,-4752,-4795,-4860,-4799,-4776,-4913,-4930,-4953,-5017,-5067,-5082,-5022,-4917,-4820,
+-4826,-4850,-4870,-4859,-4838,-4789,-4751,-4740,-4702,-4660,-4629,-4627,-4633,-4608,-4554,-4530,-4516,-4479,-4466,-4445,
+-4413,-4400,-4397,-4403,-4417,-4422,-4413,-4375,-4374,-4359,-4342,-4321,-4303,-4266,-4225,-4191,-4154,-4117,-4073,-4040,
+-3985,-3940,-3901,-3844,-3793,-3745,-3692,-3648,-3576,-3491,-3409,-3367,-3310,-3258,-3197,-3132,-3069,-2991,-2917,-2848,
+-2771,-2689,-2650,-2576,-2476,-2391,-2325,-2240,-2159,-2073,-1982,-1906,-1824,-1742,-1682,-1621,-1549,-1483,-1414,-1343,
+-1262,-1195,-1111,-1017,-932,-846,-767,-692,-616,-527,-432,-339,-243,-151,-71,-10,30,77,148,207,
+262,321,378,426,468,512,552,596,636,672,704,736,784,847,916,979,1039,1102,1161,1216,
+1263,1306,1356,1405,1456,1508,1556,1627,1693,1750,1852,1882,1895,1911,1936,1981,2007,2038,2078,2113,
+2138,2151,2163,2173,2184,2202,2217,2250,2287,2306,2302,2322,2333,2355,2391,2423,2470,2538,2577,2646,
+2688,2715,2727,2742,2768,2808,2786,2710,2633,2572,2523,2474,2444,2435,2444,2455,2457,2473,2502,2530,
+2585,2547,2529,2558,2561,2553,2581,2576,2568,2576,2488,2317,2220,2197,2190,2178,2175,2176,2178,2186,
+2193,2199,2203,2205,2203,2201,2195,2193,2186,2180,2178,2181,2188,2198,2231,2277,2317,2361,2485,2509,
+2464,2431,2389,2339,2239,2148,2017,1860,1642,1346,1010,713,524,484,579,738,892,1022,1107,1170,
+1213,1235,1257,1270,1264,1249,1213,1175,1127,1078,1028,983,951,916,871,818,764,710,658,615,
+570,524,475,418,360,300,245,199,161,126,90,54,13,-16,-36,-64,-88,-109,-131,-163,
+-193,-231,-280,-343,-417,-501,-587,-671,-735,-759,-712,-514,-198,-71,-308,-634,-796,-828,-788,-721,
+-661,-609,-581,-578,-571,-562,-512,-509,-502,-509,-513,-520,-516,-523,-534,-528,-531,-520,-501,-496,
+-496,-492,-480,-464,-447,-437,-428,-422,-419,-420,-420,-413,-402,-389,-372,-368,-361,-346,-336,-325,
+-318,-300,-281,-262,-251,-237,-227,-214,-198,-185,-172,-162,-157,-153,-138,-128,-142,-135,-123,-104,
+-84,-62,-45,-47,-39,-32,-38,-41,-40,-22,-5,7,14,21,32,42,45,45,44,44,
+54,65,79,88,90,87,86,84,86,85,83,83,83,82,78,72,68,68,78,80,
+81,85,89,96,94,86,79,72,67,48,35,9,-13,-32,-49,-74,-90,-107,-126,-143,
+-158,-177,-194,-208,-222,-235,-248,-265,-284,-302,-327,-353,-379,-407,-432,-457,-478,-500,-524,-548,
+-573,-595,-616,-644,-666,-689,-718,-738,-766,-784,-811,-842,-866,-890,-914,-943,-971,-996,-1019,-1043,
+-1073,-1100,-1124,-1152,-1177,-1199,-1223,-1246,-1269,-1296,-1325,-1355,-1384,-1412,-1443,-1472,-1502,-1535,-1566,-1596,
+-1627,-1658,-1684,-1714,-1746,-1778,-1810,-1841,-1873,-1906,-1938,-1970,-2002,-2030,-2057,-2079,-2097,-2118,-2144,-2170,
+-2199,-2225,-2246,-2270,-2291,-2311,-2334,-2355,-2375,-2391,-2408,-2421,-2431,-2446,-2464,-2466,-2464,-2475,-2481,-2490,
+-2495,-2499,-2500,-2495,-2484,-2480,-2473,-2470,-2460,-2441,-2418,-2383,-2405,-2411,-2405,-2400,-2401,-2404,-2411,-2421,
+-2431,-2433,-2436,-2441,-2440,-2441,-2450,-2468,-2492,-2520,-2546,-2564,-2561,-2557,-2571,-2566,-2552,-2525,-2463,-2330,
+-2161,-2054,-1994,-2053,-2087,-2032,-1999,-1967,-1901,-1826,-1828,-1882,-2007,-2069,-2057,-2024,-2050,-2084,-2102,-2100,
+-2076,-2045,-2012,-1978,-1907,-1834,-1798,-1756,-1740,-1687,-1658,-1605,-1564,-1544,-1500,-1480,-1434,-1380,-1373,-1415,
+-1349,-1304,-1296,-1263,-1257,-1226,-1226,-1241,-1218,-1222,-1119,-1115,-1068,-1064,-1098,-1126,-1156,-1173,-1185,-1238,
+-1280,-1308,-1325,-1355,-1380,-1397,-1437,-1469,-1489,-1509,-1540,-1570,-1587,-1585,-1588,-1593,-1600,-1577,-1538,-1550,
+-1561,-1589,-1626,-1665,-1709,-1767,-1835,-1892,-1946,-1989,-2032,-2087,-2123,-2155,-2178,-2190,-2227,-2278,-2322,-2366,
+-2418,-2448,-2462,-2496,-2537,-2570,-2605,-2624,-2634,-2658,-2676,-2671,-2667,-2678,-2693,-2711,-2722,-2732,-2761,-2773,
+-2783,-2791,-2800,-2801,-2804,-2811,-2781,-2742,-2781,-2892,-3011,-3111,-3155,-3120,-3076,-3084,-3107,-3152,-3203,-3247,
+-3277,-3296,-3322,-3359,-3393,-3454,-3533,-3576,-3580,-3582,-3577,-3589,-3601,-3618,-3633,-3635,-3679,-3694,-3719,-3722,
+-3730,-3727,-3712,-3687,-3661,-3651,-3665,-3679,-3679,-3661,-3650,-3643,-3631,-3614,-3626,-3651,-3668,-3679,-3699,-3707,
+-3698,-3672,-3645,-3617,-3598,-3576,-3561,-3526,-3485,-3460,-3444,-3428,-3406,-3404,-3390,-3382,-3363,-3325,-3290,-3255,
+-3230,-3209,-3182,-3157,-3126,-3090,-3058,-3016,-2973,-2926,-2888,-2837,-2784,-2730,-2720,-2705,-2665,-2620,-2565,-2510,
+-2484,-2464,-2438,-2414,-2389,-2345,-2301,-2273,-2233,-2187,-2159,-2138,-2106,-2082,-2058,-2030,-1995,-1960,-1935,-1905,
+-1886,-1861,-1835,-1811,-1793,-1767,-1728,-1686,-1639,-1583,-1504,-1381,-1282,-1257,-1293,-1280,-1238,-1203,-1175,-1139,
+-1101,-1050,-984,-908,-811,-692,-566,-451,-352,-259,-175,-82,18,105,179,246,336,416,491,550,
+598,635,691,759,819,887,970,1061,1168,1271,1355,1433,1519,1608,1684,1737,1800,1882,1963,1992,
+2023,2116,2250,2389,2506,2589,2677,2735,2792,2935,3074,3157,3218,3272,3311,3355,3377,3372,3308,3272,
+3284,3327,3400,3469,3519,3547,3571,3596,3639,3688,3744,3807,3874,3937,4006,4074,4132,4177,4226,4283,
+4343,4407,4458,4508,4556,4604,4657,4723,4784,4838,4902,4971,5031,5087,5143,5196,5243,5284,5324,5377,
+5426,5472,5535,5578,5601,5647,5697,5762,5824,5884,5936,5981,6027,6093,6128,6171,6201,6234,6297,6328,
+6357,6389,6442,6524,6565,6548,6591,6627,6614,6602,6613,6603,6604,6604,6608,6587,6588,6579,6549,6512,
+6466,6434,6410,6389,6365,6335,6291,6251,6224,6193,6168,6138,6137,6153,6147,6128,6113,6116,6130,6129,
+6151,6172,6141,6085,6042,6004,5939,5904,5900,5882,5861,5847,5825,5808,5792,5747,5688,5645,5609,5585,
+5573,5569,5564,5556,5540,5486,5389,5266,5153,5067,5007,4963,4927,4902,4882,4867,4856,4846,4848,4860,
+4872,4870,4857,4833,4813,4801,4789,4776,4752,4714,4672,4639,4629,4641,4703,4800,4885,4925,4928,4925,
+4917,4914,4906,4899,4885,4872,4857,4835,4812,4784,4785,4790,4796,4795,4780,4760,4777,4788,4797,4812,
+4818,4828,4858,4884,4898,4909,4927,4945,4945,4917,4917,4933,4935,4965,4989,4960,4929,4939,5010,5062,
+5054,5034,5113,5187,5172,5226,5258,5301,5291,5238,5222,5129,5042,5034,5033,5119,5130,5120,5211,5183,
+5063,4999,5110,5138,5072,4997,4923,4796,4710,4718,4745,4804,4805,4759,4744,4760,4721,4693,4675,4658,
+4630,4590,4564,4534,4505,4480,4470,4475,4477,4484,4472,4452,4434,4414,4399,4368,4337,4316,4290,4268,
+4266,4265,4271,4301,4295,4295,4304,4324,4345,4345,4256,4126,4070,4017,3973,3943,3924,3916,3901,3857,
+3775,3689,3524,3386,3290,3220,3172,3144,3122,3116,3111,3100,3080,3032,2989,2953,2907,2842,2784,2733,
+2684,2636,2576,2520,2469,2421,2377,2345,2321,2286,2233,2183,2134,2085,2044,1999,1954,1916,1871,1820,
+1756,1672,1595,1533,1481,1434,1393,1363,1335,1310,1280,1245,1204,1168,1141,1116,1083,1042,1002,957,
+902,850,802,761,726,683,635,582,538,500,465,427,381,322,246,171,92,19,-46,-107,
+-161,-209,-261,-313,-354,-396,-448,-508,-570,-628,-690,-754,-811,-864,-930,-993,-1033,-1074,-1114,-1158,
+-1202,-1263,-1324,-1360,-1389,-1417,-1449,-1486,-1536,-1572,-1612,-1664,-1712,-1751,-1789,-1836,-1891,-1949,-2010,-2076,
+-2146,-2202,-2255,-2305,-2352,-2399,-2440,-2476,-2510,-2552,-2588,-2625,-2670,-2715,-2766,-2797,-2816,-2860,-2913,-2960,
+-2966,-2972,-2995,-3012,-3056,-3115,-3175,-3222,-3256,-3303,-3364,-3415,-3443,-3469,-3509,-3546,-3582,-3617,-3654,-3665,
+-3691,-3726,-3733,-3742,-3755,-3791,-3814,-3813,-3824,-3854,-3913,-3993,-4052,-4081,-4078,-4055,-4032,-4024,-4053,-4105,
+-4140,-4184,-4224,-4238,-4262,-4294,-4329,-4366,-4405,-4435,-4451,-4473,-4486,-4497,-4527,-4587,-4642,-4672,-4710,-4760,
+-4812,-4863,-4919,-4979,-5037,-5081,-5088,-5080,-5076,-5064,-5049,-5041,-5034,-5031,-5042,-5058,-5059,-5058,-5066,-5078,
+-5090,-5115,-5147,-5191,-5228,-5223,-5173,-5144,-5141,-5140,-5156,-5156,-5134,-5190,-5299,-5402,-5494,-5571,-5623,-5657,
+-5701,-5782,-5848,-5870,-5888,-5913,-5940,-5942,-5908,-5843,-5766,-5682,-5599,-5530,-5478,-5433,-5359,-5266,-5238,-5193,
+-5146,-5143,-5143,-5050,-5026,-4974,-4918,-4864,-4827,-4832,-4861,-4878,-4937,-5016,-5094,-5186,-5230,-5201,-5157,-5098,
+-4971,-4825,-4816,-4822,-4840,-4859,-4859,-4854,-4848,-4819,-4788,-4769,-4785,-4784,-4713,-4641,-4613,-4594,-4571,-4561,
+-4536,-4510,-4473,-4468,-4456,-4452,-4465,-4460,-4454,-4432,-4393,-4370,-4343,-4316,-4288,-4252,-4204,-4157,-4123,-4090,
+-4040,-4001,-3952,-3919,-3879,-3824,-3774,-3720,-3669,-3609,-3537,-3443,-3388,-3337,-3290,-3236,-3173,-3093,-3014,-2937,
+-2858,-2785,-2712,-2626,-2545,-2476,-2403,-2302,-2217,-2125,-2035,-1947,-1868,-1784,-1714,-1656,-1578,-1503,-1433,-1365,
+-1286,-1224,-1159,-1068,-965,-888,-821,-757,-667,-586,-509,-421,-326,-235,-132,-59,-12,31,90,154,
+202,264,322,377,430,488,534,580,616,647,681,716,757,808,869,940,1003,1064,1127,1178,
+1231,1282,1332,1381,1430,1481,1531,1581,1643,1711,1764,1828,1860,1879,1922,1966,1998,2028,2063,2113,
+2159,2178,2196,2233,2235,2238,2252,2266,2297,2303,2309,2317,2333,2360,2391,2422,2450,2529,2604,2647,
+2717,2773,2817,2835,2821,2806,2786,2732,2670,2606,2542,2490,2461,2447,2456,2475,2496,2508,2534,2568,
+2600,2666,2589,2548,2606,2625,2604,2595,2568,2569,2603,2542,2407,2289,2257,2253,2248,2237,2229,2228,
+2230,2234,2241,2243,2244,2237,2228,2227,2225,2220,2225,2235,2228,2226,2258,2340,2430,2577,2605,2577,
+2458,2324,2236,2158,2057,1949,1819,1642,1393,1089,816,591,432,423,562,743,908,1032,1128,1190,
+1222,1245,1258,1259,1253,1237,1206,1171,1133,1091,1039,989,941,898,861,825,775,720,664,611,
+565,524,481,433,379,322,265,206,154,117,83,46,1,-34,-61,-82,-106,-132,-152,-175,
+-195,-220,-258,-306,-366,-436,-517,-601,-684,-745,-763,-694,-478,-154,-12,-268,-611,-786,-840,-824,
+-774,-716,-667,-632,-613,-606,-594,-582,-575,-573,-554,-548,-562,-564,-565,-573,-567,-573,-565,-553,
+-550,-549,-546,-531,-510,-487,-474,-467,-459,-459,-463,-464,-465,-461,-444,-426,-415,-405,-392,-383,
+-366,-355,-341,-325,-318,-300,-280,-270,-257,-244,-233,-222,-216,-208,-208,-202,-198,-197,-197,-186,
+-169,-148,-129,-115,-104,-97,-91,-94,-95,-91,-77,-66,-58,-51,-43,-28,-15,-9,-10,-9,
+-10,-4,5,17,28,32,33,27,24,22,22,25,20,20,17,15,17,18,16,17,
+22,28,32,38,40,37,33,25,18,11,-4,-26,-50,-67,-86,-109,-126,-143,-165,-186,
+-203,-226,-241,-258,-275,-288,-301,-314,-329,-348,-368,-394,-422,-447,-472,-494,-515,-539,-558,-579,
+-604,-630,-657,-681,-704,-731,-756,-776,-804,-830,-852,-877,-900,-927,-955,-984,-1009,-1035,-1060,-1081,
+-1107,-1133,-1159,-1189,-1214,-1238,-1260,-1278,-1299,-1321,-1350,-1376,-1406,-1435,-1465,-1494,-1522,-1554,-1586,-1618,
+-1646,-1677,-1707,-1736,-1764,-1795,-1827,-1861,-1895,-1926,-1956,-1989,-2021,-2053,-2086,-2111,-2130,-2153,-2178,-2204,
+-2230,-2254,-2285,-2310,-2331,-2350,-2370,-2392,-2413,-2431,-2449,-2466,-2483,-2495,-2505,-2502,-2501,-2509,-2522,-2529,
+-2535,-2533,-2540,-2543,-2542,-2530,-2521,-2521,-2513,-2507,-2489,-2474,-2478,-2465,-2394,-2423,-2430,-2421,-2437,-2452,
+-2459,-2458,-2463,-2468,-2473,-2471,-2476,-2483,-2500,-2516,-2543,-2566,-2589,-2592,-2582,-2580,-2576,-2567,-2535,-2459,
+-2333,-2211,-2099,-1992,-2024,-2055,-2007,-1948,-1929,-1887,-1839,-1893,-1923,-1972,-2044,-2080,-2075,-2058,-2069,-2100,
+-2111,-2093,-2059,-2003,-1904,-1791,-1725,-1714,-1719,-1655,-1635,-1635,-1621,-1571,-1558,-1487,-1463,-1426,-1360,-1376,
+-1376,-1294,-1282,-1229,-1225,-1267,-1197,-1195,-1178,-1157,-1203,-1133,-1094,-1072,-1020,-1025,-1099,-1141,-1163,-1194,
+-1239,-1267,-1283,-1310,-1353,-1399,-1437,-1463,-1478,-1502,-1526,-1554,-1576,-1595,-1600,-1609,-1591,-1586,-1578,-1553,
+-1543,-1548,-1562,-1606,-1658,-1715,-1780,-1844,-1896,-1945,-1987,-2032,-2085,-2112,-2148,-2184,-2219,-2246,-2281,-2315,
+-2354,-2388,-2424,-2458,-2492,-2528,-2562,-2592,-2626,-2657,-2676,-2682,-2677,-2665,-2649,-2662,-2675,-2698,-2701,-2704,
+-2716,-2743,-2750,-2759,-2773,-2764,-2698,-2659,-2676,-2731,-2797,-2908,-3000,-3053,-3069,-3083,-3094,-3103,-3120,-3149,
+-3177,-3215,-3262,-3329,-3372,-3406,-3456,-3495,-3526,-3542,-3535,-3540,-3548,-3555,-3559,-3557,-3578,-3629,-3669,-3689,
+-3711,-3736,-3749,-3759,-3755,-3735,-3722,-3715,-3711,-3711,-3714,-3704,-3693,-3661,-3655,-3655,-3666,-3682,-3698,-3704,
+-3706,-3695,-3682,-3657,-3626,-3604,-3573,-3547,-3513,-3470,-3431,-3415,-3397,-3369,-3347,-3334,-3342,-3334,-3307,-3285,
+-3273,-3256,-3236,-3208,-3195,-3165,-3117,-3055,-2985,-2908,-2830,-2782,-2785,-2784,-2751,-2705,-2670,-2604,-2548,-2526,
+-2499,-2477,-2457,-2441,-2432,-2410,-2370,-2324,-2302,-2259,-2226,-2195,-2177,-2134,-2083,-2048,-2014,-1976,-1948,-1930,
+-1917,-1894,-1863,-1837,-1821,-1798,-1773,-1739,-1687,-1637,-1576,-1486,-1388,-1323,-1321,-1302,-1279,-1252,-1215,-1173,
+-1144,-1134,-1087,-1005,-929,-840,-742,-620,-508,-407,-310,-213,-121,-27,56,131,205,285,375,447,
+495,539,603,672,753,837,912,988,1063,1145,1235,1317,1400,1497,1601,1695,1768,1832,1894,1948,
+1961,2033,2153,2278,2390,2495,2554,2637,2690,2789,2941,2994,3051,3080,3080,3063,3104,3150,3162,3173,
+3213,3260,3303,3354,3412,3455,3497,3535,3575,3625,3675,3736,3792,3854,3922,3985,4043,4105,4155,4205,
+4259,4321,4382,4440,4487,4539,4594,4648,4702,4762,4820,4887,4951,5011,5074,5131,5190,5240,5292,5331,
+5367,5420,5457,5515,5557,5599,5635,5689,5748,5805,5866,5918,5973,6025,6077,6112,6162,6207,6244,6292,
+6326,6361,6403,6476,6533,6570,6552,6594,6611,6622,6593,6580,6597,6604,6601,6609,6594,6603,6579,6568,
+6541,6499,6478,6462,6409,6385,6358,6313,6283,6252,6211,6176,6154,6124,6117,6124,6117,6112,6111,6121,
+6142,6167,6175,6145,6100,6059,5999,5927,5910,5910,5900,5892,5879,5851,5815,5791,5770,5713,5638,5589,
+5551,5526,5510,5507,5512,5508,5472,5397,5290,5165,5069,5004,4955,4922,4900,4883,4867,4853,4839,4825,
+4816,4808,4799,4796,4790,4778,4763,4757,4755,4747,4720,4692,4665,4635,4596,4588,4643,4744,4802,4864,
+4906,4927,4933,4920,4905,4887,4867,4848,4822,4808,4793,4775,4770,4772,4780,4771,4777,4772,4792,4801,
+4819,4845,4875,4913,4955,4986,5001,5019,5027,5016,4974,4996,5051,5016,5026,5037,4994,4965,4955,5006,
+5021,5007,5068,5158,5248,5321,5383,5472,5475,5386,5265,5153,4974,4910,4874,4959,5012,5037,5050,5138,
+5063,4995,5002,5032,4947,4851,4750,4624,4538,4505,4518,4559,4647,4695,4707,4686,4693,4693,4674,4658,
+4627,4618,4593,4565,4548,4524,4493,4478,4465,4464,4468,4460,4451,4429,4424,4404,4380,4362,4328,4316,
+4307,4305,4311,4314,4341,4356,4356,4355,4332,4329,4307,4249,4197,4147,4103,4059,4019,3976,3925,3873,
+3825,3748,3659,3575,3390,3239,3149,3115,3119,3104,3091,3076,3056,3036,2998,2967,2940,2889,2831,2769,
+2718,2672,2620,2567,2512,2458,2407,2366,2338,2319,2295,2253,2195,2136,2081,2035,1989,1942,1905,1850,
+1780,1703,1621,1544,1474,1414,1367,1329,1312,1300,1279,1253,1223,1190,1154,1126,1108,1086,1049,1005,
+955,907,868,822,776,745,723,698,646,586,518,454,405,362,320,264,196,124,50,-18,
+-81,-142,-195,-240,-290,-337,-386,-442,-493,-544,-597,-649,-699,-750,-807,-870,-927,-967,-1007,-1052,
+-1099,-1148,-1203,-1266,-1320,-1369,-1401,-1443,-1486,-1524,-1554,-1594,-1645,-1692,-1740,-1795,-1857,-1922,-1982,-2044,
+-2110,-2176,-2239,-2299,-2356,-2412,-2467,-2508,-2546,-2571,-2600,-2632,-2671,-2717,-2760,-2803,-2835,-2863,-2900,-2937,
+-2973,-2990,-2998,-3012,-3032,-3071,-3126,-3192,-3247,-3277,-3315,-3374,-3421,-3450,-3494,-3537,-3564,-3606,-3640,-3671,
+-3692,-3728,-3774,-3793,-3802,-3815,-3841,-3858,-3842,-3838,-3870,-3920,-4003,-4091,-4147,-4160,-4152,-4142,-4127,-4129,
+-4163,-4186,-4205,-4238,-4267,-4294,-4319,-4352,-4398,-4429,-4454,-4471,-4479,-4501,-4548,-4589,-4636,-4678,-4711,-4745,
+-4782,-4832,-4889,-4946,-4999,-5044,-5081,-5101,-5114,-5119,-5103,-5080,-5066,-5061,-5056,-5067,-5083,-5073,-5044,-5015,
+-4972,-4948,-5013,-5101,-5170,-5210,-5180,-5095,-4989,-4938,-4958,-5049,-5086,-5096,-5171,-5308,-5456,-5592,-5702,-5818,
+-5915,-5973,-6038,-6082,-6090,-6092,-6090,-6080,-6068,-6041,-6000,-5938,-5858,-5755,-5650,-5562,-5497,-5445,-5405,-5367,
+-5311,-5273,-5269,-5274,-5243,-5191,-5125,-5094,-5036,-4982,-4944,-4917,-4915,-4942,-4998,-5112,-5199,-5218,-5194,-5158,
+-5130,-5092,-4967,-4915,-4917,-4905,-4844,-4858,-4924,-4923,-4909,-4917,-4916,-4913,-4913,-4883,-4855,-4777,-4720,-4671,
+-4647,-4606,-4576,-4571,-4540,-4536,-4513,-4491,-4488,-4489,-4474,-4448,-4413,-4389,-4364,-4332,-4282,-4237,-4190,-4144,
+-4103,-4058,-4000,-3959,-3925,-3885,-3829,-3781,-3734,-3685,-3625,-3568,-3481,-3428,-3384,-3332,-3257,-3190,-3114,-3028,
+-2938,-2840,-2775,-2697,-2626,-2546,-2471,-2385,-2293,-2198,-2095,-2009,-1924,-1850,-1755,-1691,-1609,-1532,-1475,-1399,
+-1323,-1264,-1200,-1101,-1005,-927,-852,-792,-720,-638,-553,-476,-388,-307,-219,-122,-50,-4,56,107,
+174,236,294,335,379,434,486,541,590,626,657,691,733,779,836,900,966,1026,1090,1153,
+1201,1246,1295,1349,1403,1455,1503,1556,1610,1662,1721,1769,1803,1840,1890,1957,2011,2038,2061,2092,
+2145,2190,2200,2210,2241,2265,2294,2290,2287,2317,2336,2341,2348,2364,2373,2408,2452,2504,2563,2649,
+2700,2763,2834,2873,2863,2850,2797,2745,2685,2631,2578,2502,2474,2462,2471,2493,2521,2559,2587,2603,
+2623,2643,2698,2613,2582,2633,2660,2650,2624,2584,2603,2614,2557,2467,2366,2317,2307,2300,2291,2285,
+2278,2278,2273,2272,2270,2268,2260,2257,2280,2295,2298,2356,2386,2332,2361,2453,2539,2681,2668,2523,
+2396,2287,2178,2109,2030,1816,1505,1206,960,689,468,326,285,354,516,718,897,1031,1121,1183,
+1228,1258,1267,1256,1244,1221,1196,1159,1121,1080,1038,991,942,897,848,805,766,720,667,613,
+562,516,474,428,379,327,274,219,165,120,76,34,0,-34,-75,-98,-109,-138,-165,-193,
+-206,-227,-252,-283,-326,-385,-456,-535,-615,-691,-751,-764,-673,-419,-111,-59,-213,-501,-701,-805,
+-842,-819,-775,-729,-687,-654,-633,-612,-600,-617,-641,-617,-609,-606,-600,-607,-615,-614,-615,-608,
+-603,-604,-607,-600,-580,-559,-536,-517,-504,-499,-499,-505,-516,-523,-521,-506,-487,-472,-459,-444,
+-429,-419,-403,-391,-376,-363,-352,-336,-322,-304,-296,-286,-280,-273,-269,-263,-262,-259,-255,-251,
+-243,-232,-212,-192,-180,-174,-158,-150,-151,-156,-152,-138,-126,-115,-112,-94,-86,-77,-72,-69,
+-67,-63,-65,-55,-43,-33,-25,-22,-30,-33,-34,-34,-35,-43,-42,-42,-44,-43,-41,-38,
+-39,-35,-30,-24,-22,-21,-24,-29,-37,-43,-60,-78,-98,-114,-129,-146,-165,-182,-203,-227,
+-246,-263,-283,-302,-323,-341,-357,-371,-385,-401,-420,-439,-462,-484,-507,-529,-546,-547,-591,-614,
+-636,-658,-687,-713,-741,-764,-785,-814,-834,-861,-888,-911,-934,-959,-991,-1019,-1050,-1077,-1102,-1127,
+-1146,-1168,-1197,-1222,-1246,-1271,-1291,-1310,-1328,-1350,-1371,-1395,-1425,-1455,-1484,-1514,-1542,-1570,-1600,-1633,
+-1660,-1689,-1721,-1753,-1786,-1817,-1848,-1879,-1912,-1946,-1977,-2004,-2033,-2068,-2099,-2130,-2152,-2180,-2208,-2232,
+-2262,-2287,-2312,-2339,-2365,-2389,-2401,-2423,-2441,-2461,-2482,-2497,-2514,-2531,-2548,-2559,-2553,-2546,-2559,-2567,
+-2575,-2579,-2574,-2569,-2578,-2585,-2585,-2569,-2561,-2555,-2542,-2533,-2508,-2507,-2503,-2445,-2450,-2438,-2456,-2480,
+-2492,-2493,-2491,-2489,-2499,-2504,-2509,-2509,-2517,-2531,-2545,-2563,-2581,-2606,-2612,-2605,-2597,-2590,-2564,-2529,
+-2435,-2298,-2146,-2059,-2043,-2088,-2091,-2056,-2011,-1977,-1932,-1941,-1978,-1958,-1935,-1970,-2009,-2062,-2095,-2097,
+-2095,-2089,-2072,-2042,-1952,-1822,-1754,-1722,-1699,-1684,-1644,-1601,-1585,-1587,-1539,-1501,-1485,-1444,-1425,-1328,
+-1351,-1340,-1270,-1224,-1200,-1192,-1217,-1193,-1154,-1145,-1157,-1158,-1118,-1064,-1067,-1029,-998,-1107,-1144,-1161,
+-1198,-1230,-1265,-1309,-1357,-1401,-1433,-1451,-1460,-1463,-1495,-1529,-1547,-1567,-1580,-1592,-1597,-1597,-1585,-1588,
+-1588,-1562,-1545,-1556,-1605,-1663,-1720,-1787,-1851,-1908,-1954,-2000,-2041,-2079,-2108,-2147,-2178,-2205,-2233,-2267,
+-2298,-2342,-2389,-2431,-2483,-2520,-2544,-2561,-2577,-2603,-2625,-2647,-2651,-2642,-2637,-2629,-2631,-2655,-2672,-2665,
+-2673,-2696,-2719,-2749,-2777,-2767,-2701,-2657,-2668,-2732,-2817,-2895,-2941,-2995,-3036,-3057,-3078,-3095,-3124,-3162,
+-3177,-3201,-3241,-3296,-3364,-3416,-3448,-3483,-3525,-3563,-3577,-3572,-3572,-3554,-3536,-3535,-3532,-3545,-3587,-3628,
+-3669,-3711,-3740,-3766,-3777,-3773,-3769,-3765,-3750,-3743,-3758,-3770,-3757,-3722,-3697,-3696,-3687,-3667,-3656,-3654,
+-3646,-3634,-3626,-3628,-3618,-3611,-3603,-3591,-3561,-3508,-3455,-3410,-3389,-3376,-3337,-3304,-3297,-3293,-3280,-3266,
+-3253,-3239,-3233,-3215,-3202,-3182,-3139,-3074,-2984,-2878,-2781,-2750,-2758,-2778,-2774,-2743,-2681,-2638,-2585,-2544,
+-2495,-2452,-2469,-2470,-2463,-2448,-2425,-2412,-2406,-2362,-2309,-2271,-2233,-2190,-2134,-2081,-2037,-2001,-1975,-1967,
+-1965,-1943,-1914,-1883,-1850,-1818,-1782,-1759,-1725,-1678,-1634,-1576,-1507,-1471,-1429,-1363,-1316,-1274,-1231,-1191,
+-1161,-1113,-1075,-1036,-981,-925,-860,-776,-677,-564,-449,-353,-253,-161,-76,4,82,159,243,324,
+397,452,523,601,678,763,846,922,991,1053,1116,1179,1261,1366,1469,1576,1686,1779,1861,1918,
+1961,2011,2106,2211,2299,2400,2484,2490,2527,2634,2810,2942,2937,2897,2914,2911,2938,2986,3016,3081,
+3129,3168,3207,3253,3311,3365,3409,3456,3499,3545,3600,3657,3717,3770,3819,3883,3952,4019,4073,4127,
+4181,4233,4291,4353,4420,4471,4522,4581,4639,4700,4755,4809,4874,4937,4999,5059,5121,5176,5219,5269,
+5311,5358,5401,5453,5512,5557,5598,5635,5695,5753,5805,5861,5919,5974,6015,6063,6111,6163,6187,6242,
+6269,6312,6367,6437,6493,6540,6535,6552,6590,6572,6573,6571,6570,6572,6588,6605,6612,6602,6594,6582,
+6577,6554,6525,6477,6448,6426,6399,6364,6334,6309,6287,6245,6192,6167,6145,6115,6109,6109,6092,6075,
+6088,6097,6108,6111,6090,6061,6019,5950,5890,5885,5894,5906,5895,5864,5821,5776,5738,5705,5667,5617,
+5564,5522,5475,5440,5426,5417,5399,5371,5318,5241,5155,5079,5022,4982,4952,4933,4918,4899,4878,4857,
+4836,4819,4804,4787,4775,4759,4745,4734,4729,4729,4736,4729,4710,4681,4648,4627,4602,4608,4647,4651,
+4717,4831,4905,4930,4930,4911,4879,4858,4842,4816,4795,4781,4765,4751,4749,4762,4777,4772,4759,4775,
+4810,4836,4874,4908,4954,4998,5051,5080,5092,5121,5122,5066,5094,5155,5103,5072,5084,5035,4985,4962,
+4961,4957,5006,5084,5189,5341,5381,5370,5368,5364,5306,5115,4864,4714,4649,4641,4668,4706,4747,4836,
+4880,4875,4931,4920,4821,4695,4604,4523,4461,4434,4430,4452,4485,4550,4623,4676,4708,4694,4682,4675,
+4667,4612,4588,4566,4557,4565,4546,4546,4528,4487,4463,4458,4453,4451,4438,4439,4419,4405,4386,4357,
+4343,4327,4326,4330,4333,4323,4352,4400,4444,4403,4341,4370,4404,4379,4278,4189,4130,4086,4023,3950,
+3854,3781,3726,3667,3560,3362,3192,3104,3098,3106,3099,3090,3072,3043,3012,2980,2955,2933,2894,2841,
+2786,2737,2683,2616,2564,2519,2474,2438,2403,2380,2363,2337,2308,2256,2196,2135,2068,2006,1949,1895,
+1823,1726,1620,1518,1435,1378,1333,1292,1257,1241,1236,1231,1219,1200,1179,1159,1147,1138,1120,1089,
+1050,1004,965,931,890,850,815,790,759,702,630,560,491,419,351,297,249,194,121,47,
+-22,-87,-142,-194,-246,-298,-346,-400,-460,-506,-549,-596,-647,-698,-749,-806,-863,-907,-953,-994,
+-1031,-1066,-1113,-1173,-1229,-1289,-1344,-1388,-1438,-1491,-1516,-1548,-1595,-1647,-1703,-1771,-1841,-1909,-1978,-2038,
+-2091,-2144,-2201,-2259,-2324,-2380,-2440,-2496,-2543,-2587,-2619,-2642,-2674,-2725,-2764,-2795,-2827,-2867,-2902,-2931,
+-2956,-2983,-3008,-3021,-3032,-3049,-3084,-3137,-3194,-3252,-3298,-3336,-3379,-3422,-3454,-3496,-3553,-3589,-3617,-3661,
+-3692,-3709,-3745,-3783,-3797,-3820,-3852,-3882,-3907,-3905,-3895,-3906,-3940,-4013,-4114,-4197,-4227,-4226,-4230,-4229,
+-4222,-4219,-4226,-4241,-4262,-4302,-4348,-4384,-4414,-4445,-4466,-4486,-4503,-4496,-4521,-4583,-4628,-4669,-4710,-4739,
+-4768,-4801,-4846,-4894,-4945,-5000,-5042,-5073,-5095,-5106,-5118,-5113,-5102,-5076,-5058,-5055,-5050,-5038,-5014,-4967,
+-4896,-4815,-4724,-4693,-4777,-4939,-5123,-5156,-5021,-4882,-4836,-4874,-4933,-4981,-5079,-5205,-5356,-5527,-5721,-5900,
+-6029,-6125,-6187,-6236,-6264,-6269,-6263,-6249,-6229,-6187,-6145,-6098,-6043,-5975,-5890,-5793,-5699,-5610,-5528,-5458,
+-5422,-5422,-5389,-5385,-5380,-5374,-5326,-5271,-5212,-5174,-5141,-5097,-5062,-5011,-4968,-4933,-4965,-5036,-5044,-5027,
+-4992,-4951,-4945,-4930,-4920,-4922,-5017,-5044,-4984,-4960,-4994,-5002,-5018,-5022,-5035,-5019,-5012,-4970,-4911,-4840,
+-4778,-4730,-4671,-4645,-4610,-4591,-4598,-4572,-4554,-4532,-4524,-4507,-4481,-4460,-4434,-4394,-4352,-4305,-4260,-4219,
+-4166,-4125,-4054,-4021,-3978,-3946,-3906,-3866,-3820,-3763,-3703,-3646,-3600,-3526,-3461,-3402,-3346,-3278,-3198,-3117,
+-3035,-2945,-2852,-2775,-2687,-2623,-2540,-2448,-2376,-2292,-2182,-2081,-1981,-1897,-1807,-1724,-1661,-1576,-1497,-1428,
+-1358,-1292,-1218,-1151,-1062,-984,-918,-830,-760,-699,-620,-541,-455,-374,-293,-195,-105,-30,16,54,
+115,180,239,282,335,388,437,486,537,583,621,657,696,743,799,864,929,989,1047,1110,
+1176,1229,1273,1323,1379,1435,1499,1563,1619,1670,1722,1768,1785,1813,1890,1993,2067,2078,2093,2153,
+2159,2175,2206,2221,2236,2267,2293,2308,2316,2325,2348,2367,2381,2398,2409,2426,2461,2516,2576,2630,
+2696,2763,2838,2889,2907,2854,2849,2791,2710,2650,2583,2524,2497,2485,2488,2519,2561,2610,2652,2678,
+2681,2677,2713,2740,2645,2635,2700,2709,2690,2660,2629,2657,2663,2580,2518,2474,2429,2390,2353,2333,
+2333,2328,2329,2324,2316,2303,2293,2292,2314,2350,2405,2503,2555,2561,2525,2565,2668,2725,2617,2476,
+2350,2234,2117,1908,1703,1486,1195,850,542,318,166,91,143,288,487,688,876,1019,1114,1169,
+1215,1247,1261,1250,1240,1217,1190,1152,1111,1073,1029,975,934,890,848,798,749,696,649,601,
+546,500,456,415,370,324,277,232,183,134,97,40,5,-41,-80,-113,-161,-178,-189,-219,
+-249,-268,-279,-295,-326,-363,-411,-478,-551,-630,-705,-764,-786,-715,-498,-480,-490,-399,-341,-593,
+-781,-864,-871,-839,-798,-756,-707,-665,-640,-629,-635,-669,-710,-701,-654,-651,-647,-648,-651,-655,
+-649,-648,-649,-654,-642,-625,-600,-576,-559,-548,-539,-543,-550,-563,-574,-572,-562,-541,-524,-510,
+-497,-483,-475,-465,-449,-431,-416,-403,-387,-377,-368,-361,-350,-342,-335,-330,-326,-321,-318,-313,
+-304,-295,-287,-273,-249,-231,-231,-224,-213,-215,-220,-216,-200,-190,-178,-155,-144,-140,-129,-125,
+-131,-129,-122,-118,-110,-100,-87,-78,-71,-79,-88,-88,-90,-95,-95,-92,-96,-93,-94,-96,
+-99,-101,-98,-94,-90,-89,-90,-93,-99,-109,-117,-127,-145,-161,-178,-192,-207,-222,-239,-257,
+-280,-301,-320,-342,-364,-386,-405,-425,-440,-454,-474,-493,-511,-531,-551,-570,-588,-608,-630,-651,
+-676,-695,-718,-744,-770,-796,-822,-847,-872,-896,-926,-950,-975,-1002,-1028,-1062,-1092,-1122,-1146,-1170,
+-1193,-1213,-1237,-1260,-1284,-1306,-1328,-1344,-1363,-1381,-1401,-1422,-1446,-1475,-1505,-1537,-1567,-1593,-1619,-1643,
+-1673,-1701,-1732,-1765,-1801,-1837,-1870,-1904,-1932,-1964,-1996,-2020,-2046,-2077,-2108,-2142,-2167,-2195,-2224,-2255,
+-2283,-2311,-2339,-2362,-2387,-2413,-2436,-2457,-2470,-2491,-2509,-2528,-2540,-2553,-2571,-2590,-2611,-2616,-2611,-2618,
+-2624,-2627,-2628,-2624,-2620,-2621,-2627,-2628,-2620,-2603,-2586,-2583,-2572,-2542,-2536,-2533,-2527,-2511,-2490,-2509,
+-2516,-2528,-2529,-2527,-2526,-2533,-2541,-2545,-2548,-2555,-2559,-2568,-2586,-2604,-2630,-2647,-2654,-2646,-2642,-2596,
+-2525,-2420,-2261,-2070,-1975,-2052,-2137,-2184,-2155,-2068,-2063,-2052,-2052,-2039,-2037,-2046,-2069,-2082,-2112,-2124,
+-2118,-2106,-2070,-2024,-1957,-1862,-1774,-1721,-1671,-1617,-1575,-1584,-1572,-1563,-1510,-1484,-1458,-1434,-1397,-1369,
+-1314,-1316,-1296,-1249,-1263,-1195,-1153,-1143,-1123,-1152,-1084,-1090,-1086,-1096,-1057,-1028,-1046,-1049,-1090,-1141,
+-1185,-1202,-1230,-1264,-1309,-1339,-1378,-1419,-1433,-1450,-1459,-1489,-1515,-1536,-1532,-1543,-1556,-1568,-1575,-1575,
+-1596,-1596,-1591,-1568,-1571,-1613,-1671,-1731,-1794,-1860,-1922,-1974,-2013,-2057,-2089,-2111,-2149,-2185,-2220,-2248,
+-2273,-2305,-2358,-2395,-2427,-2480,-2506,-2513,-2506,-2536,-2581,-2612,-2625,-2625,-2615,-2604,-2599,-2616,-2650,-2673,
+-2663,-2683,-2714,-2747,-2779,-2817,-2798,-2721,-2706,-2768,-2885,-2975,-2998,-3018,-3033,-3056,-3089,-3081,-3093,-3123,
+-3192,-3249,-3282,-3338,-3412,-3456,-3487,-3516,-3556,-3588,-3626,-3638,-3628,-3618,-3605,-3574,-3543,-3544,-3563,-3580,
+-3632,-3685,-3722,-3753,-3771,-3781,-3776,-3766,-3761,-3758,-3767,-3790,-3789,-3759,-3735,-3715,-3695,-3667,-3625,-3593,
+-3597,-3576,-3551,-3552,-3561,-3561,-3564,-3573,-3566,-3555,-3517,-3468,-3420,-3383,-3371,-3335,-3297,-3279,-3269,-3234,
+-3215,-3206,-3210,-3205,-3193,-3168,-3131,-3054,-2945,-2839,-2808,-2795,-2780,-2770,-2749,-2726,-2673,-2616,-2584,-2567,
+-2523,-2492,-2504,-2494,-2488,-2472,-2455,-2457,-2448,-2427,-2375,-2341,-2290,-2228,-2173,-2110,-2069,-2000,-1963,-1973,
+-1992,-1961,-1929,-1905,-1870,-1838,-1803,-1767,-1740,-1686,-1639,-1632,-1593,-1563,-1530,-1472,-1412,-1360,-1321,-1282,
+-1229,-1169,-1118,-1065,-1011,-959,-910,-860,-796,-725,-622,-507,-389,-290,-198,-117,-44,28,112,197,
+283,363,433,519,605,683,761,827,888,939,991,1072,1156,1248,1358,1475,1575,1669,1764,1857,
+1914,1963,2044,2135,2222,2272,2345,2421,2449,2467,2581,2716,2797,2819,2782,2818,2860,2889,2921,2965,
+3013,3057,3101,3154,3215,3278,3324,3368,3420,3472,3525,3585,3637,3690,3742,3794,3848,3915,3978,4024,
+4081,4139,4202,4268,4325,4392,4456,4521,4577,4635,4686,4744,4802,4867,4929,4985,5046,5104,5158,5202,
+5262,5301,5339,5398,5465,5515,5568,5600,5636,5700,5748,5809,5882,5932,5972,6008,6069,6114,6159,6193,
+6242,6294,6314,6358,6416,6485,6509,6503,6567,6569,6557,6558,6545,6555,6569,6581,6589,6589,6583,6586,
+6578,6573,6548,6511,6480,6452,6427,6397,6377,6360,6344,6321,6278,6231,6189,6161,6142,6110,6069,6060,
+6045,6041,6043,6045,6033,6022,5997,5956,5902,5870,5886,5917,5925,5888,5838,5774,5729,5678,5635,5619,
+5594,5552,5503,5463,5432,5411,5375,5340,5303,5258,5207,5161,5125,5106,5103,5097,5084,5056,5014,4957,
+4904,4865,4840,4822,4806,4785,4765,4745,4734,4718,4705,4700,4703,4704,4692,4677,4667,4653,4633,4625,
+4647,4698,4750,4831,4898,4923,4916,4885,4853,4827,4804,4775,4751,4733,4719,4717,4726,4739,4759,4729,
+4762,4788,4828,4882,4927,4975,5017,5067,5089,5137,5206,5210,5163,5210,5219,5209,5136,5130,5066,5010,
+4997,4989,5012,5057,5143,5244,5378,5478,5472,5394,5272,5027,4747,4562,4454,4392,4353,4332,4331,4368,
+4451,4528,4601,4665,4669,4610,4530,4463,4417,4399,4394,4407,4437,4483,4534,4601,4626,4689,4662,4657,
+4634,4613,4596,4598,4577,4562,4558,4562,4601,4626,4596,4545,4509,4481,4464,4453,4436,4428,4415,4401,
+4382,4361,4344,4343,4351,4369,4373,4356,4383,4452,4459,4410,4421,4456,4455,4347,4207,4183,4141,4071,
+3958,3872,3795,3688,3547,3407,3266,3153,3099,3109,3130,3139,3116,3088,3064,3043,3022,3001,2985,2962,
+2925,2864,2792,2716,2645,2590,2548,2520,2491,2461,2443,2434,2412,2388,2349,2289,2215,2138,2063,1976,
+1883,1787,1655,1534,1439,1372,1325,1290,1260,1229,1202,1194,1200,1198,1188,1178,1171,1172,1171,1159,
+1144,1116,1074,1039,1005,967,934,909,880,835,776,705,623,541,463,384,296,215,153,88,
+20,-42,-102,-158,-214,-267,-321,-375,-427,-483,-535,-581,-631,-685,-746,-802,-854,-901,-940,-979,
+-1017,-1048,-1077,-1117,-1162,-1212,-1272,-1338,-1390,-1442,-1499,-1545,-1591,-1643,-1696,-1754,-1820,-1888,-1954,-2016,
+-2066,-2109,-2158,-2211,-2266,-2321,-2381,-2438,-2492,-2547,-2594,-2632,-2668,-2709,-2753,-2785,-2818,-2845,-2882,-2920,
+-2951,-2970,-2985,-3005,-3025,-3047,-3073,-3108,-3151,-3196,-3260,-3318,-3361,-3400,-3434,-3470,-3509,-3563,-3613,-3641,
+-3670,-3695,-3710,-3731,-3760,-3787,-3817,-3856,-3902,-3938,-3952,-3952,-3947,-3970,-4038,-4113,-4186,-4249,-4282,-4291,
+-4284,-4278,-4268,-4256,-4263,-4293,-4321,-4348,-4386,-4432,-4468,-4490,-4515,-4534,-4545,-4574,-4621,-4657,-4687,-4719,
+-4752,-4786,-4821,-4864,-4904,-4945,-4990,-5026,-5052,-5066,-5075,-5071,-5077,-5074,-5040,-4994,-4963,-4940,-4905,-4850,
+-4772,-4679,-4567,-4493,-4459,-4521,-4687,-4923,-5141,-5122,-5011,-4930,-4943,-5013,-5102,-5234,-5380,-5547,-5747,-5938,
+-6092,-6206,-6292,-6354,-6399,-6421,-6420,-6406,-6384,-6350,-6300,-6243,-6176,-6098,-6011,-5928,-5851,-5778,-5707,-5631,
+-5557,-5496,-5445,-5423,-5424,-5447,-5441,-5416,-5379,-5346,-5311,-5283,-5240,-5191,-5138,-5075,-5057,-5110,-5126,-5134,
+-5121,-5084,-5045,-5009,-4975,-4933,-4884,-4865,-4911,-4923,-4906,-4905,-4926,-4924,-4957,-5028,-5025,-5027,-5022,-4993,
+-4953,-4902,-4864,-4811,-4753,-4673,-4631,-4622,-4635,-4636,-4625,-4602,-4577,-4541,-4516,-4485,-4437,-4380,-4337,-4296,
+-4243,-4194,-4142,-4105,-4057,-4014,-3974,-3936,-3897,-3838,-3786,-3725,-3653,-3594,-3533,-3476,-3410,-3346,-3284,-3216,
+-3139,-3055,-2959,-2875,-2787,-2720,-2645,-2567,-2480,-2379,-2255,-2168,-2078,-1979,-1872,-1773,-1687,-1599,-1523,-1453,
+-1379,-1314,-1236,-1183,-1128,-1048,-968,-896,-810,-750,-685,-606,-521,-437,-356,-268,-172,-92,-33,19,
+60,112,158,211,279,342,399,452,491,530,577,619,664,708,757,820,889,954,1014,1073,
+1138,1202,1255,1307,1366,1425,1484,1549,1632,1698,1750,1775,1796,1824,1871,1986,2102,2145,2123,2153,
+2185,2210,2234,2256,2270,2280,2288,2312,2328,2340,2356,2370,2392,2417,2439,2466,2480,2534,2613,2680,
+2740,2789,2842,2891,2919,2904,2861,2784,2688,2655,2590,2545,2524,2513,2518,2532,2570,2630,2690,2714,
+2740,2748,2744,2829,2783,2695,2691,2763,2764,2743,2710,2679,2683,2696,2643,2557,2542,2546,2534,2431,
+2384,2388,2386,2382,2379,2376,2361,2352,2380,2470,2513,2610,2667,2710,2767,2644,2639,2620,2527,2410,
+2268,2093,1845,1559,1259,955,659,398,186,18,-65,-50,60,257,478,684,870,1012,1104,1163,
+1198,1228,1251,1244,1208,1172,1153,1124,1090,1043,998,959,926,875,833,780,738,691,640,586,
+535,485,436,398,357,317,278,237,195,152,106,66,5,-37,-88,-139,-165,-203,-245,-248,
+-251,-272,-287,-301,-330,-357,-383,-429,-498,-572,-644,-716,-778,-827,-839,-794,-780,-707,-518,-331,
+-535,-766,-883,-913,-894,-858,-817,-769,-720,-689,-674,-664,-679,-735,-802,-783,-730,-700,-688,-685,
+-683,-683,-685,-692,-691,-679,-657,-638,-617,-598,-583,-580,-585,-595,-608,-616,-612,-606,-590,-568,
+-563,-549,-538,-531,-520,-502,-482,-464,-451,-442,-437,-427,-421,-413,-404,-397,-387,-381,-375,-371,
+-363,-354,-344,-329,-314,-302,-291,-286,-285,-267,-268,-274,-272,-256,-246,-234,-206,-204,-197,-183,
+-171,-185,-176,-166,-160,-162,-154,-148,-139,-131,-126,-134,-144,-139,-134,-139,-144,-141,-145,-149,
+-154,-159,-162,-162,-162,-162,-163,-164,-164,-170,-180,-189,-200,-214,-229,-244,-258,-268,-280,-297,
+-314,-335,-355,-379,-401,-422,-443,-464,-487,-504,-519,-537,-556,-576,-593,-611,-632,-648,-667,-688,
+-710,-734,-757,-781,-802,-826,-851,-877,-903,-927,-954,-981,-1004,-1033,-1062,-1096,-1118,-1155,-1179,-1206,
+-1231,-1253,-1273,-1296,-1318,-1344,-1365,-1386,-1403,-1421,-1440,-1460,-1481,-1503,-1532,-1563,-1595,-1625,-1650,-1670,
+-1693,-1716,-1744,-1775,-1809,-1845,-1880,-1910,-1945,-1975,-2003,-2030,-2060,-2087,-2117,-2151,-2173,-2198,-2232,-2262,
+-2296,-2324,-2353,-2382,-2406,-2432,-2454,-2478,-2498,-2514,-2534,-2554,-2573,-2590,-2599,-2617,-2632,-2650,-2653,-2658,
+-2670,-2680,-2686,-2689,-2681,-2674,-2674,-2672,-2669,-2672,-2668,-2657,-2640,-2615,-2589,-2572,-2567,-2557,-2555,-2540,
+-2549,-2560,-2563,-2565,-2562,-2563,-2569,-2582,-2584,-2585,-2591,-2589,-2596,-2614,-2637,-2665,-2695,-2709,-2683,-2673,
+-2622,-2547,-2446,-2272,-2081,-1983,-2060,-2203,-2208,-2196,-2164,-2091,-2045,-2028,-2053,-2060,-2060,-2080,-2077,-2071,
+-2070,-2056,-2033,-1989,-1936,-1836,-1766,-1747,-1661,-1606,-1561,-1530,-1503,-1493,-1506,-1480,-1478,-1453,-1430,-1422,
+-1335,-1304,-1294,-1287,-1222,-1247,-1160,-1120,-1129,-1114,-1103,-1000,-1031,-961,-966,-936,-950,-895,-859,-872,
+-974,-1078,-1141,-1186,-1212,-1260,-1259,-1301,-1390,-1423,-1435,-1449,-1464,-1488,-1514,-1510,-1511,-1519,-1524,-1532,
+-1544,-1569,-1583,-1599,-1594,-1601,-1632,-1686,-1745,-1801,-1855,-1916,-1975,-2022,-2065,-2111,-2129,-2163,-2196,-2223,
+-2252,-2282,-2315,-2353,-2386,-2433,-2470,-2482,-2486,-2503,-2518,-2554,-2590,-2605,-2618,-2625,-2626,-2622,-2629,-2655,
+-2672,-2679,-2707,-2742,-2777,-2823,-2851,-2824,-2760,-2788,-2910,-3016,-3030,-3018,-3044,-3048,-3051,-3065,-3092,-3132,
+-3195,-3252,-3323,-3373,-3420,-3469,-3525,-3578,-3620,-3662,-3692,-3711,-3716,-3702,-3683,-3652,-3622,-3583,-3566,-3558,
+-3562,-3614,-3669,-3711,-3745,-3757,-3767,-3770,-3776,-3783,-3788,-3794,-3795,-3777,-3754,-3733,-3716,-3685,-3644,-3593,
+-3554,-3553,-3545,-3526,-3519,-3521,-3526,-3532,-3535,-3528,-3508,-3482,-3453,-3436,-3425,-3400,-3367,-3327,-3309,-3279,
+-3223,-3206,-3192,-3173,-3162,-3137,-3112,-3073,-2989,-2865,-2811,-2817,-2810,-2789,-2742,-2704,-2676,-2620,-2608,-2571,
+-2555,-2513,-2497,-2519,-2522,-2507,-2478,-2457,-2455,-2441,-2413,-2389,-2359,-2304,-2212,-2166,-2117,-2064,-2058,-2057,
+-2030,-1987,-1949,-1911,-1884,-1848,-1814,-1781,-1760,-1725,-1678,-1662,-1634,-1622,-1616,-1577,-1540,-1512,-1479,-1444,
+-1397,-1331,-1250,-1185,-1130,-1084,-1029,-976,-943,-845,-742,-648,-572,-464,-346,-249,-163,-90,-17,67,
+161,255,355,448,540,609,652,705,753,809,889,976,1074,1179,1291,1403,1488,1564,1652,1753,
+1816,1888,1980,2071,2128,2184,2225,2317,2371,2402,2449,2527,2597,2644,2677,2720,2779,2807,2842,2877,
+2919,2967,3021,3071,3120,3183,3239,3284,3334,3388,3443,3497,3551,3601,3650,3699,3748,3798,3857,3910,
+3972,4047,4105,4168,4237,4307,4368,4441,4507,4568,4623,4669,4717,4785,4858,4919,4974,5033,5086,5128,
+5180,5235,5285,5342,5390,5456,5511,5563,5596,5642,5707,5758,5806,5869,5914,5965,6019,6071,6110,6149,
+6183,6225,6265,6319,6376,6443,6496,6492,6518,6550,6552,6536,6525,6517,6534,6550,6565,6575,6567,6567,
+6562,6566,6556,6529,6503,6482,6464,6428,6393,6367,6353,6349,6329,6308,6273,6236,6198,6154,6127,6087,
+6060,6040,6034,6020,6002,5993,5987,5969,5930,5895,5902,5930,5955,5945,5884,5833,5777,5724,5667,5636,
+5619,5615,5596,5536,5501,5504,5466,5407,5363,5314,5264,5226,5207,5213,5252,5312,5354,5354,5277,5177,
+5085,5008,4932,4878,4846,4821,4799,4775,4753,4727,4706,4689,4675,4669,4663,4668,4678,4693,4684,4653,
+4630,4629,4643,4677,4681,4758,4853,4877,4864,4838,4809,4780,4758,4733,4706,4688,4683,4690,4699,4729,
+4694,4733,4777,4815,4872,4923,4962,5002,5051,5101,5177,5238,5258,5242,5247,5270,5231,5214,5189,5082,
+5025,5046,5066,5113,5231,5314,5366,5441,5474,5426,5251,4985,4707,4488,4346,4270,4212,4155,4101,4067,
+4069,4121,4197,4278,4347,4400,4432,4437,4387,4355,4345,4345,4366,4408,4451,4505,4520,4502,4494,4590,
+4643,4617,4609,4611,4612,4614,4598,4581,4564,4559,4564,4570,4567,4538,4501,4480,4469,4464,4459,4447,
+4419,4408,4386,4369,4364,4369,4376,4412,4456,4455,4498,4481,4383,4286,4219,4156,4072,3940,3868,3840,
+3810,3799,3720,3607,3476,3363,3270,3181,3134,3128,3148,3176,3200,3212,3177,3142,3112,3090,3071,3050,
+3026,2989,2932,2869,2791,2731,2682,2633,2593,2563,2529,2499,2487,2465,2442,2418,2386,2335,2260,2158,
+2034,1910,1796,1686,1585,1498,1424,1382,1357,1335,1313,1268,1222,1197,1186,1185,1190,1190,1200,1208,
+1200,1196,1181,1148,1125,1110,1083,1069,1042,991,928,852,789,694,598,511,419,334,241,152,
+73,2,-63,-123,-181,-241,-301,-364,-420,-466,-524,-584,-638,-692,-754,-813,-871,-920,-964,-1001,
+-1030,-1058,-1085,-1111,-1144,-1184,-1216,-1253,-1315,-1382,-1451,-1518,-1575,-1632,-1686,-1738,-1796,-1855,-1912,-1964,
+-2009,-2055,-2099,-2148,-2199,-2254,-2304,-2352,-2398,-2450,-2513,-2570,-2623,-2669,-2727,-2759,-2786,-2817,-2847,-2882,
+-2916,-2950,-2975,-2988,-3007,-3033,-3076,-3117,-3140,-3171,-3209,-3265,-3329,-3378,-3423,-3454,-3485,-3527,-3573,-3620,
+-3658,-3684,-3712,-3741,-3757,-3768,-3784,-3816,-3859,-3907,-3949,-3965,-3969,-3966,-3982,-4041,-4093,-4139,-4207,-4269,
+-4305,-4318,-4313,-4313,-4316,-4319,-4334,-4348,-4364,-4390,-4427,-4473,-4501,-4528,-4554,-4581,-4617,-4645,-4667,-4695,
+-4726,-4764,-4805,-4839,-4871,-4904,-4936,-4963,-4990,-5014,-5032,-5039,-5026,-4976,-4921,-4845,-4743,-4669,-4608,-4517,
+-4465,-4414,-4331,-4314,-4388,-4499,-4629,-4783,-4958,-5156,-5327,-5331,-5277,-5257,-5330,-5429,-5552,-5689,-5828,-5988,
+-6139,-6267,-6364,-6439,-6496,-6538,-6559,-6556,-6541,-6512,-6469,-6409,-6337,-6253,-6155,-6047,-5931,-5847,-5790,-5749,
+-5703,-5656,-5578,-5441,-5387,-5439,-5503,-5495,-5465,-5433,-5400,-5398,-5378,-5330,-5288,-5252,-5231,-5204,-5292,-5285,
+-5240,-5180,-5146,-5153,-5130,-5158,-5105,-5009,-4937,-4912,-4893,-4872,-4861,-4885,-4868,-4851,-4885,-4921,-4964,-4985,
+-4979,-4974,-4963,-4943,-4915,-4867,-4833,-4796,-4761,-4727,-4712,-4691,-4660,-4634,-4596,-4543,-4510,-4460,-4391,-4347,
+-4313,-4263,-4218,-4180,-4138,-4087,-4039,-3993,-3951,-3903,-3837,-3779,-3710,-3645,-3591,-3521,-3458,-3411,-3358,-3301,
+-3234,-3172,-3078,-2995,-2902,-2810,-2711,-2626,-2540,-2444,-2368,-2279,-2186,-2089,-1982,-1865,-1758,-1668,-1575,-1484,
+-1404,-1327,-1256,-1200,-1141,-1091,-1015,-926,-856,-793,-707,-632,-572,-488,-396,-316,-235,-164,-92,-22,
+18,67,109,170,212,266,337,403,463,504,537,578,622,672,724,784,850,915,979,1041,
+1112,1178,1236,1285,1339,1402,1460,1517,1583,1652,1707,1756,1791,1831,1877,1923,2048,2140,2148,2145,
+2177,2195,2233,2260,2273,2293,2313,2320,2332,2346,2363,2383,2403,2426,2446,2476,2503,2546,2612,2694,
+2774,2829,2876,2937,2963,2947,2895,2815,2717,2677,2633,2559,2537,2543,2554,2569,2590,2644,2691,2728,
+2752,2789,2808,2806,2871,2848,2753,2733,2795,2828,2824,2778,2733,2716,2740,2713,2635,2596,2594,2559,
+2469,2447,2451,2447,2443,2440,2447,2441,2458,2528,2657,2740,2836,2799,2753,2680,2604,2528,2419,2262,
+2056,1799,1498,1133,759,446,209,7,-128,-199,-222,-158,12,239,472,689,870,1006,1100,1158,
+1179,1197,1214,1215,1192,1192,1160,1122,1067,1028,977,926,884,875,821,771,724,678,642,590,
+537,484,440,393,348,310,273,240,206,170,128,78,22,-40,-91,-130,-170,-207,-254,-283,
+-293,-310,-325,-331,-346,-366,-388,-420,-465,-516,-576,-645,-716,-786,-856,-910,-935,-917,-827,-633,
+-368,-377,-610,-789,-895,-934,-916,-876,-825,-780,-741,-716,-709,-709,-738,-801,-878,-830,-741,-729,
+-724,-708,-713,-722,-735,-733,-712,-693,-673,-656,-639,-626,-624,-633,-645,-646,-653,-651,-638,-621,
+-607,-595,-589,-584,-578,-567,-554,-536,-521,-510,-500,-494,-489,-487,-481,-467,-455,-444,-435,-426,
+-417,-409,-401,-389,-370,-361,-356,-348,-329,-328,-324,-322,-322,-315,-295,-289,-292,-270,-278,-268,
+-256,-247,-243,-239,-222,-210,-203,-205,-214,-210,-210,-203,-200,-191,-186,-188,-187,-190,-192,-196,
+-202,-211,-220,-228,-235,-237,-239,-238,-237,-239,-246,-257,-262,-274,-284,-297,-310,-321,-331,-341,
+-358,-372,-389,-412,-433,-454,-473,-497,-514,-532,-550,-564,-590,-610,-628,-654,-675,-692,-712,-733,
+-755,-774,-797,-820,-841,-865,-889,-910,-936,-957,-982,-1008,-1033,-1059,-1087,-1115,-1145,-1173,-1201,-1231,
+-1257,-1282,-1305,-1328,-1351,-1373,-1398,-1422,-1442,-1458,-1476,-1497,-1522,-1549,-1571,-1595,-1620,-1647,-1674,-1698,
+-1716,-1744,-1773,-1799,-1828,-1858,-1888,-1919,-1947,-1976,-2008,-2035,-2070,-2102,-2134,-2164,-2189,-2214,-2243,-2276,
+-2308,-2338,-2366,-2390,-2416,-2442,-2469,-2495,-2521,-2540,-2557,-2572,-2591,-2609,-2624,-2640,-2659,-2677,-2687,-2688,
+-2695,-2711,-2724,-2733,-2740,-2735,-2734,-2729,-2724,-2721,-2720,-2715,-2718,-2702,-2677,-2643,-2623,-2613,-2605,-2585,
+-2582,-2596,-2599,-2602,-2599,-2601,-2602,-2607,-2616,-2623,-2621,-2623,-2621,-2631,-2648,-2675,-2706,-2741,-2751,-2713,
+-2683,-2621,-2563,-2435,-2252,-2090,-2024,-2092,-2195,-2228,-2202,-2163,-2075,-2016,-2011,-2069,-2071,-2029,-2025,-1995,
+-1995,-1985,-1960,-1875,-1823,-1758,-1728,-1692,-1695,-1632,-1543,-1498,-1486,-1490,-1443,-1428,-1407,-1419,-1442,-1370,
+-1353,-1337,-1324,-1295,-1252,-1222,-1160,-1140,-1116,-1108,-1071,-1001,-976,-976,-894,-871,-854,-881,-829,-781,
+-772,-809,-933,-1071,-1171,-1178,-1130,-1162,-1208,-1290,-1364,-1407,-1427,-1460,-1471,-1486,-1490,-1496,-1491,-1484,
+-1471,-1472,-1509,-1543,-1584,-1601,-1621,-1661,-1709,-1759,-1814,-1871,-1928,-1992,-2057,-2106,-2146,-2175,-2191,-2208,
+-2222,-2250,-2285,-2324,-2371,-2401,-2426,-2446,-2459,-2468,-2491,-2515,-2534,-2572,-2593,-2620,-2639,-2639,-2647,-2662,
+-2686,-2695,-2720,-2742,-2767,-2799,-2829,-2803,-2763,-2785,-2908,-3026,-3055,-3053,-3050,-3065,-3071,-3090,-3117,-3168,
+-3233,-3315,-3374,-3425,-3484,-3533,-3572,-3597,-3632,-3692,-3734,-3750,-3758,-3761,-3739,-3713,-3678,-3626,-3566,-3539,
+-3547,-3546,-3586,-3638,-3681,-3711,-3728,-3744,-3755,-3764,-3764,-3776,-3789,-3772,-3753,-3742,-3727,-3701,-3678,-3637,
+-3598,-3585,-3568,-3556,-3547,-3538,-3528,-3515,-3505,-3500,-3482,-3459,-3434,-3423,-3423,-3418,-3398,-3360,-3327,-3297,
+-3236,-3180,-3138,-3105,-3083,-3074,-3078,-3072,-3039,-2955,-2855,-2833,-2834,-2818,-2770,-2699,-2647,-2621,-2610,-2606,
+-2605,-2585,-2576,-2569,-2552,-2537,-2520,-2498,-2475,-2461,-2443,-2418,-2387,-2358,-2312,-2244,-2197,-2164,-2152,-2142,
+-2121,-2096,-2061,-2030,-2003,-1972,-1931,-1894,-1848,-1804,-1772,-1739,-1718,-1702,-1685,-1665,-1639,-1587,-1542,-1490,
+-1447,-1388,-1314,-1250,-1197,-1141,-1091,-1040,-981,-931,-872,-776,-674,-581,-488,-396,-320,-238,-153,-72,
+6,98,197,303,426,546,609,632,656,715,800,891,984,1090,1217,1338,1426,1509,1593,1672,
+1736,1812,1892,1980,2036,2064,2085,2161,2242,2289,2329,2376,2441,2519,2586,2639,2696,2745,2773,2806,
+2833,2883,2944,3004,3043,3096,3157,3201,3248,3305,3357,3411,3462,3510,3567,3631,3691,3733,3773,3822,
+3888,3993,4073,4123,4161,4222,4291,4365,4440,4506,4562,4617,4653,4703,4773,4845,4907,4961,5017,5070,
+5101,5143,5186,5246,5318,5381,5446,5497,5534,5579,5640,5707,5756,5821,5872,5923,5978,6018,6061,6100,
+6150,6200,6239,6255,6326,6375,6443,6489,6469,6526,6525,6518,6499,6499,6503,6517,6516,6528,6534,6538,
+6545,6537,6528,6512,6489,6482,6467,6436,6403,6374,6356,6355,6330,6307,6281,6257,6223,6195,6141,6108,
+6092,6077,6035,6015,5983,5960,5951,5941,5931,5917,5913,5920,5945,5924,5872,5840,5825,5838,5848,5790,
+5733,5692,5635,5573,5536,5525,5534,5522,5492,5453,5416,5364,5303,5283,5300,5292,5299,5325,5312,5246,
+5172,5071,4972,4900,4845,4803,4777,4761,4752,4730,4695,4669,4645,4623,4617,4618,4610,4603,4609,4611,
+4609,4594,4573,4560,4555,4555,4614,4741,4798,4801,4785,4771,4762,4745,4724,4700,4676,4661,4663,4674,
+4694,4676,4715,4766,4816,4864,4905,4947,4987,5040,5098,5181,5251,5265,5285,5294,5289,5270,5270,5196,
+5113,5052,5122,5206,5227,5323,5416,5446,5439,5420,5311,5109,4837,4592,4395,4260,4182,4139,4118,4043,
+3977,3937,3930,3965,4026,4108,4189,4253,4278,4265,4247,4242,4249,4274,4328,4377,4421,4429,4406,4408,
+4437,4537,4586,4611,4595,4608,4605,4606,4613,4631,4593,4588,4592,4584,4571,4526,4505,4489,4466,4446,
+4433,4424,4408,4393,4390,4391,4382,4389,4443,4468,4420,4376,4252,4090,3984,3919,3869,3810,3743,3713,
+3682,3652,3606,3540,3455,3368,3305,3258,3217,3200,3202,3224,3245,3274,3299,3276,3225,3189,3155,3129,
+3099,3062,3030,3007,2951,2890,2832,2775,2716,2664,2624,2585,2548,2535,2517,2499,2496,2505,2487,2408,
+2303,2177,2027,1900,1802,1712,1632,1573,1536,1524,1531,1539,1473,1360,1292,1257,1235,1223,1224,1235,
+1251,1266,1281,1281,1273,1265,1251,1236,1199,1171,1103,1024,940,864,750,645,541,444,351,257,
+170,84,0,-74,-141,-204,-270,-336,-400,-456,-511,-573,-646,-714,-769,-826,-878,-931,-985,-1033,
+-1077,-1108,-1129,-1141,-1162,-1192,-1217,-1237,-1274,-1328,-1391,-1453,-1518,-1579,-1635,-1688,-1734,-1783,-1836,-1884,
+-1930,-1973,-2022,-2075,-2128,-2181,-2233,-2279,-2320,-2360,-2402,-2451,-2509,-2577,-2651,-2712,-2747,-2776,-2809,-2841,
+-2873,-2904,-2941,-2972,-2985,-3007,-3043,-3085,-3132,-3156,-3181,-3223,-3274,-3334,-3389,-3434,-3468,-3496,-3529,-3568,
+-3607,-3650,-3689,-3725,-3757,-3782,-3799,-3802,-3810,-3838,-3881,-3922,-3937,-3959,-3985,-3997,-4030,-4074,-4106,-4146,
+-4204,-4264,-4306,-4321,-4334,-4359,-4377,-4384,-4383,-4387,-4397,-4409,-4452,-4490,-4518,-4552,-4583,-4618,-4646,-4668,
+-4702,-4740,-4774,-4808,-4831,-4850,-4883,-4912,-4933,-4954,-4966,-4966,-4951,-4916,-4855,-4776,-4626,-4451,-4311,-4211,
+-4156,-4136,-4173,-4265,-4387,-4562,-4761,-4935,-5096,-5246,-5393,-5504,-5607,-5647,-5686,-5741,-5811,-5907,-6005,-6101,
+-6209,-6323,-6426,-6508,-6577,-6624,-6656,-6677,-6677,-6665,-6640,-6593,-6529,-6448,-6361,-6273,-6182,-6066,-5968,-5910,
+-5874,-5826,-5778,-5741,-5671,-5604,-5614,-5683,-5674,-5661,-5603,-5609,-5626,-5544,-5477,-5417,-5387,-5404,-5388,-5390,
+-5283,-5143,-5129,-5194,-5251,-5275,-5298,-5308,-5273,-5201,-5115,-5027,-4993,-4937,-4899,-4905,-4908,-4913,-4924,-4923,
+-4879,-4850,-4819,-4862,-4904,-4899,-4859,-4804,-4787,-4777,-4753,-4719,-4695,-4678,-4658,-4624,-4587,-4566,-4521,-4460,
+-4398,-4344,-4296,-4247,-4210,-4156,-4095,-4043,-3992,-3947,-3898,-3841,-3776,-3716,-3642,-3574,-3513,-3455,-3397,-3352,
+-3290,-3224,-3146,-3057,-2970,-2880,-2794,-2706,-2625,-2542,-2465,-2389,-2285,-2177,-2081,-1972,-1870,-1758,-1657,-1554,
+-1464,-1385,-1316,-1257,-1193,-1134,-1071,-976,-868,-801,-735,-659,-585,-518,-439,-357,-289,-216,-158,-112,
+-58,5,63,115,168,224,284,348,418,478,523,563,608,653,700,756,821,887,952,1015,
+1077,1152,1219,1277,1330,1386,1450,1506,1555,1609,1662,1718,1779,1829,1875,1917,1983,2088,2135,2145,
+2154,2198,2248,2274,2309,2328,2353,2374,2369,2374,2394,2413,2425,2449,2473,2491,2522,2556,2622,2685,
+2755,2832,2920,2962,2980,2953,2906,2822,2723,2695,2665,2595,2539,2554,2587,2602,2613,2660,2704,2747,
+2781,2835,2884,2888,2886,2925,2896,2812,2770,2826,2914,2918,2858,2804,2775,2780,2790,2778,2732,2654,
+2596,2562,2541,2522,2509,2515,2536,2585,2616,2669,2754,2844,2862,2833,2732,2648,2562,2464,2278,2020,
+1692,1336,993,667,373,117,-105,-258,-341,-360,-293,-132,89,317,530,719,874,994,1080,1142,
+1187,1193,1185,1184,1176,1158,1138,1109,1073,1034,978,910,849,803,785,776,705,667,629,586,
+546,502,452,406,366,321,279,244,210,172,134,91,48,-5,-45,-89,-151,-202,-240,-279,
+-307,-329,-347,-357,-370,-388,-406,-426,-453,-488,-526,-581,-642,-714,-789,-863,-925,-957,-927,-804,
+-548,-289,-302,-496,-763,-936,-1001,-985,-936,-885,-842,-803,-769,-749,-746,-762,-794,-859,-887,-781,
+-760,-753,-746,-751,-761,-762,-761,-742,-723,-706,-693,-681,-673,-676,-686,-691,-696,-691,-675,-659,
+-645,-633,-629,-626,-625,-619,-607,-596,-585,-570,-561,-552,-547,-548,-548,-540,-524,-508,-495,-481,
+-469,-459,-455,-443,-425,-411,-406,-398,-392,-384,-379,-373,-381,-369,-362,-345,-349,-368,-329,-305,
+-313,-329,-336,-325,-305,-290,-286,-264,-265,-272,-259,-257,-259,-253,-243,-229,-230,-233,-240,-248,
+-256,-267,-279,-291,-297,-306,-306,-307,-306,-309,-308,-313,-318,-325,-341,-353,-364,-373,-381,-391,
+-402,-413,-431,-450,-468,-487,-503,-523,-541,-562,-579,-603,-624,-642,-662,-685,-709,-731,-753,-775,
+-798,-817,-836,-854,-878,-900,-919,-922,-970,-994,-1015,-1035,-1062,-1091,-1118,-1148,-1173,-1200,-1225,-1254,
+-1285,-1310,-1335,-1362,-1384,-1408,-1430,-1452,-1476,-1493,-1512,-1532,-1553,-1579,-1604,-1627,-1650,-1672,-1695,-1717,
+-1740,-1763,-1790,-1820,-1853,-1884,-1909,-1934,-1964,-1989,-2017,-2045,-2079,-2115,-2149,-2179,-2201,-2231,-2265,-2295,
+-2326,-2352,-2378,-2402,-2425,-2448,-2474,-2500,-2525,-2550,-2575,-2592,-2605,-2624,-2639,-2657,-2674,-2695,-2711,-2719,
+-2725,-2738,-2750,-2762,-2773,-2777,-2779,-2780,-2778,-2776,-2771,-2768,-2770,-2776,-2772,-2745,-2704,-2672,-2659,-2644,
+-2622,-2631,-2639,-2640,-2637,-2641,-2636,-2642,-2646,-2645,-2645,-2650,-2652,-2656,-2665,-2682,-2709,-2746,-2782,-2796,
+-2739,-2685,-2620,-2553,-2426,-2233,-2079,-2064,-2151,-2222,-2226,-2178,-2106,-2082,-2029,-2044,-2058,-2057,-2003,-1991,
+-1963,-1929,-1910,-1871,-1837,-1785,-1720,-1659,-1622,-1665,-1636,-1574,-1530,-1526,-1524,-1465,-1455,-1403,-1425,-1379,
+-1346,-1340,-1316,-1267,-1244,-1227,-1208,-1142,-1127,-1100,-1047,-988,-963,-919,-895,-865,-815,-806,-834,-816,
+-774,-737,-728,-811,-1071,-1243,-1258,-1217,-1174,-1072,-1066,-1180,-1301,-1378,-1439,-1466,-1472,-1479,-1477,-1474,
+-1469,-1440,-1443,-1473,-1500,-1556,-1594,-1626,-1672,-1719,-1764,-1822,-1889,-1954,-2016,-2077,-2117,-2161,-2191,-2234,
+-2245,-2253,-2256,-2289,-2341,-2376,-2410,-2425,-2438,-2450,-2457,-2484,-2506,-2520,-2543,-2576,-2604,-2619,-2633,-2649,
+-2671,-2684,-2687,-2702,-2741,-2759,-2754,-2712,-2728,-2766,-2878,-3020,-3074,-3085,-3090,-3107,-3106,-3134,-3171,-3215,
+-3289,-3358,-3422,-3484,-3535,-3574,-3604,-3625,-3646,-3668,-3699,-3727,-3732,-3766,-3763,-3742,-3707,-3657,-3590,-3530,
+-3486,-3488,-3518,-3563,-3607,-3646,-3663,-3680,-3700,-3711,-3719,-3725,-3729,-3741,-3743,-3730,-3720,-3711,-3695,-3679,
+-3657,-3634,-3611,-3597,-3580,-3566,-3557,-3546,-3524,-3506,-3486,-3473,-3463,-3440,-3423,-3421,-3420,-3387,-3357,-3322,
+-3251,-3187,-3142,-3083,-3022,-2980,-2987,-3009,-3019,-2993,-2899,-2839,-2851,-2837,-2818,-2774,-2703,-2672,-2629,-2606,
+-2637,-2664,-2639,-2619,-2589,-2566,-2546,-2521,-2494,-2484,-2470,-2434,-2382,-2341,-2334,-2331,-2304,-2266,-2221,-2199,
+-2168,-2141,-2131,-2119,-2103,-2083,-2043,-2019,-1979,-1931,-1894,-1855,-1821,-1802,-1789,-1774,-1747,-1715,-1671,-1624,
+-1573,-1515,-1452,-1383,-1319,-1265,-1206,-1145,-1074,-1000,-922,-842,-764,-676,-586,-506,-427,-356,-294,-245,
+-186,-124,-33,83,228,363,461,539,588,628,702,797,895,999,1110,1224,1317,1411,1506,1581,
+1666,1726,1809,1885,1955,2005,2001,2021,2079,2141,2191,2245,2304,2379,2467,2546,2606,2656,2704,2744,
+2770,2797,2853,2915,2964,3007,3060,3114,3166,3215,3273,3324,3383,3431,3468,3535,3680,3830,3854,3855,
+3889,3965,4028,4078,4108,4153,4222,4307,4368,4432,4498,4550,4608,4658,4710,4774,4841,4900,4958,5009,
+5045,5064,5103,5170,5250,5316,5377,5426,5475,5515,5566,5646,5705,5757,5815,5874,5927,5970,6009,6053,
+6109,6150,6176,6228,6256,6299,6379,6441,6474,6470,6516,6504,6493,6477,6471,6470,6487,6494,6505,6513,
+6499,6512,6495,6480,6472,6449,6442,6429,6407,6377,6357,6336,6321,6299,6284,6266,6229,6196,6162,6126,
+6113,6089,6075,6021,5982,5935,5926,5902,5877,5853,5848,5851,5876,5906,5893,5864,5862,5872,5942,5941,
+5865,5773,5700,5619,5565,5576,5612,5668,5660,5628,5594,5553,5488,5401,5329,5295,5254,5203,5180,5158,
+5113,5044,4971,4902,4850,4797,4753,4724,4713,4706,4673,4635,4599,4567,4538,4522,4515,4499,4477,4460,
+4456,4471,4488,4486,4472,4452,4455,4514,4577,4595,4621,4656,4724,4751,4746,4733,4717,4691,4665,4652,
+4651,4676,4697,4725,4762,4807,4859,4908,4961,5010,5047,5075,5120,5183,5254,5283,5320,5312,5301,5244,
+5174,5097,5092,5156,5235,5271,5317,5399,5413,5448,5467,5309,5047,4794,4601,4461,4356,4306,4305,4320,
+4250,4142,4017,3928,3889,3902,3946,4015,4085,4123,4119,4102,4103,4121,4158,4219,4283,4322,4339,4350,
+4366,4400,4528,4529,4569,4594,4605,4628,4627,4618,4641,4642,4645,4639,4619,4615,4587,4562,4524,4489,
+4463,4456,4445,4439,4447,4413,4405,4409,4407,4445,4450,4407,4280,4149,4040,3987,3952,3917,3866,3811,
+3772,3730,3678,3621,3555,3487,3420,3373,3347,3335,3322,3321,3329,3345,3363,3382,3375,3316,3261,3200,
+3157,3126,3096,3074,3050,3006,2938,2869,2793,2709,2629,2583,2558,2551,2538,2541,2545,2562,2578,2548,
+2382,2207,2066,1963,1885,1808,1753,1727,1700,1677,1665,1679,1685,1625,1559,1490,1447,1392,1349,1323,
+1333,1359,1394,1426,1433,1424,1419,1406,1384,1341,1312,1257,1165,1053,941,823,708,589,478,382,
+288,191,104,21,-58,-138,-212,-284,-357,-430,-492,-553,-627,-706,-773,-834,-884,-933,-978,-1025,
+-1067,-1103,-1133,-1164,-1187,-1203,-1232,-1248,-1273,-1312,-1353,-1403,-1453,-1505,-1562,-1614,-1660,-1683,-1723,-1764,
+-1815,-1871,-1923,-1979,-2039,-2092,-2142,-2189,-2232,-2276,-2321,-2362,-2405,-2460,-2527,-2610,-2680,-2731,-2768,-2806,
+-2837,-2861,-2897,-2937,-2968,-2987,-3021,-3065,-3090,-3130,-3177,-3204,-3240,-3284,-3335,-3399,-3449,-3477,-3507,-3536,
+-3570,-3613,-3653,-3696,-3738,-3773,-3805,-3825,-3827,-3822,-3815,-3832,-3876,-3917,-3956,-3990,-4022,-4051,-4073,-4096,
+-4116,-4147,-4190,-4240,-4286,-4322,-4356,-4390,-4417,-4420,-4423,-4432,-4429,-4447,-4472,-4490,-4517,-4549,-4579,-4619,
+-4658,-4698,-4740,-4771,-4797,-4816,-4833,-4852,-4863,-4870,-4875,-4866,-4837,-4799,-4754,-4701,-4625,-4482,-4358,-4236,
+-4157,-4102,-4081,-4140,-4219,-4331,-4517,-4678,-4845,-5078,-5332,-5540,-5669,-5758,-5815,-5860,-5928,-6015,-6114,-6206,
+-6291,-6366,-6447,-6530,-6598,-6657,-6699,-6731,-6757,-6769,-6763,-6741,-6702,-6643,-6565,-6476,-6386,-6298,-6207,-6130,
+-6076,-6025,-5987,-5946,-5881,-5817,-5798,-5820,-5822,-5820,-5839,-5868,-5912,-5919,-5883,-5843,-5794,-5764,-5741,-5682,
+-5575,-5452,-5288,-5123,-5146,-5242,-5311,-5333,-5352,-5319,-5298,-5292,-5264,-5194,-5128,-5093,-5046,-4995,-4998,-4992,
+-4984,-4959,-4935,-4914,-4904,-4876,-4824,-4799,-4747,-4715,-4739,-4734,-4716,-4706,-4700,-4703,-4687,-4652,-4617,-4566,
+-4511,-4459,-4392,-4325,-4269,-4226,-4166,-4114,-4065,-4014,-3967,-3918,-3845,-3772,-3703,-3629,-3564,-3495,-3423,-3373,
+-3321,-3266,-3217,-3143,-3044,-2945,-2862,-2789,-2715,-2637,-2549,-2467,-2378,-2258,-2154,-2060,-1963,-1864,-1758,-1665,
+-1568,-1469,-1392,-1328,-1261,-1191,-1123,-1040,-945,-857,-768,-683,-611,-525,-447,-383,-326,-263,-202,-158,
+-139,-90,-22,55,110,167,243,295,356,423,484,536,587,642,696,747,803,864,930,1000,
+1067,1135,1199,1253,1313,1370,1433,1501,1556,1608,1658,1707,1765,1823,1883,1962,2016,2075,2106,2138,
+2155,2175,2241,2289,2307,2369,2414,2415,2418,2414,2413,2422,2449,2488,2522,2541,2553,2577,2613,2646,
+2715,2795,2892,2962,2961,2961,2906,2810,2752,2698,2625,2591,2567,2559,2587,2618,2655,2697,2721,2736,
+2800,2848,2922,2959,2954,2943,2963,2944,2872,2835,2894,2990,2992,2955,2894,2862,2838,2830,2829,2775,
+2683,2646,2657,2637,2599,2589,2649,2725,2763,2816,2858,2950,2903,2830,2772,2683,2539,2322,2030,1663,
+1289,917,582,297,64,-118,-265,-356,-397,-364,-257,-75,157,387,593,767,914,1023,1095,1145,
+1181,1198,1200,1184,1164,1137,1109,1072,1042,1011,977,936,863,796,759,686,639,609,591,566,
+524,492,455,417,377,336,295,250,207,167,119,98,55,8,-25,-73,-122,-169,-212,-252,
+-291,-318,-348,-364,-374,-390,-402,-416,-437,-460,-495,-531,-582,-644,-711,-784,-856,-914,-939,-862,
+-671,-397,-185,-191,-479,-801,-997,-1059,-1044,-988,-939,-887,-842,-812,-791,-776,-796,-815,-848,-893,
+-868,-798,-787,-780,-782,-788,-788,-785,-769,-757,-745,-731,-722,-723,-728,-729,-734,-733,-721,-704,
+-690,-674,-664,-663,-665,-663,-654,-642,-632,-627,-620,-615,-612,-601,-599,-602,-592,-576,-560,-541,
+-529,-514,-503,-505,-489,-478,-463,-455,-435,-448,-429,-445,-440,-447,-433,-416,-404,-414,-449,-420,
+-387,-380,-375,-362,-348,-336,-326,-320,-316,-313,-311,-309,-310,-310,-306,-296,-286,-279,-281,-292,
+-306,-323,-335,-345,-359,-365,-367,-365,-361,-367,-369,-374,-377,-385,-394,-399,-411,-422,-433,-444,
+-452,-461,-470,-487,-506,-523,-542,-559,-574,-589,-602,-629,-648,-670,-693,-711,-738,-761,-785,-809,
+-834,-858,-876,-892,-907,-926,-948,-969,-990,-1016,-1039,-1061,-1087,-1110,-1141,-1173,-1206,-1234,-1258,-1282,
+-1305,-1334,-1360,-1389,-1416,-1441,-1464,-1486,-1507,-1529,-1548,-1568,-1589,-1613,-1634,-1655,-1680,-1701,-1723,-1748,
+-1769,-1785,-1810,-1835,-1861,-1890,-1922,-1955,-1982,-2012,-2037,-2062,-2088,-2118,-2158,-2188,-2205,-2229,-2274,-2315,
+-2350,-2376,-2400,-2419,-2434,-2457,-2482,-2505,-2531,-2555,-2578,-2601,-2621,-2638,-2654,-2668,-2682,-2703,-2725,-2738,
+-2747,-2762,-2777,-2789,-2797,-2805,-2810,-2812,-2813,-2814,-2811,-2807,-2808,-2810,-2816,-2821,-2806,-2772,-2726,-2705,
+-2681,-2665,-2683,-2685,-2682,-2676,-2684,-2684,-2679,-2686,-2677,-2680,-2677,-2684,-2686,-2693,-2710,-2741,-2780,-2821,
+-2837,-2770,-2696,-2626,-2558,-2453,-2262,-2126,-2103,-2178,-2237,-2254,-2194,-2125,-2080,-2028,-2077,-2103,-2059,-1993,
+-1988,-1992,-1947,-1911,-1869,-1813,-1753,-1698,-1661,-1648,-1646,-1659,-1617,-1598,-1589,-1512,-1509,-1459,-1451,-1405,
+-1353,-1327,-1325,-1288,-1257,-1233,-1224,-1142,-1147,-1073,-1022,-1014,-974,-936,-887,-855,-864,-844,-837,-826,
+-824,-816,-744,-750,-866,-1081,-1244,-1311,-1314,-1248,-1105,-934,-919,-1079,-1266,-1381,-1451,-1481,-1470,-1450,
+-1451,-1469,-1445,-1419,-1425,-1458,-1515,-1564,-1620,-1671,-1728,-1777,-1844,-1916,-1986,-2053,-2116,-2170,-2188,-2211,
+-2251,-2283,-2294,-2296,-2312,-2370,-2420,-2438,-2438,-2439,-2450,-2454,-2473,-2490,-2501,-2516,-2551,-2602,-2641,-2672,
+-2696,-2724,-2737,-2745,-2759,-2774,-2763,-2714,-2700,-2749,-2837,-2965,-3034,-3055,-3070,-3084,-3109,-3146,-3199,-3259,
+-3319,-3372,-3443,-3522,-3580,-3618,-3640,-3652,-3649,-3655,-3665,-3675,-3684,-3700,-3709,-3724,-3696,-3642,-3585,-3533,
+-3475,-3438,-3450,-3493,-3530,-3558,-3590,-3617,-3634,-3655,-3670,-3674,-3668,-3679,-3695,-3713,-3721,-3710,-3688,-3675,
+-3673,-3667,-3650,-3636,-3625,-3614,-3601,-3590,-3573,-3558,-3536,-3510,-3484,-3477,-3469,-3448,-3431,-3421,-3390,-3358,
+-3298,-3224,-3167,-3111,-3035,-2961,-2910,-2909,-2959,-2973,-2911,-2841,-2819,-2838,-2823,-2812,-2771,-2737,-2712,-2683,
+-2671,-2678,-2685,-2680,-2644,-2610,-2588,-2571,-2550,-2521,-2498,-2435,-2399,-2339,-2303,-2310,-2323,-2305,-2267,-2227,
+-2208,-2203,-2209,-2226,-2231,-2215,-2180,-2134,-2104,-2072,-2028,-1979,-1937,-1905,-1887,-1874,-1855,-1833,-1806,-1750,
+-1697,-1642,-1580,-1503,-1430,-1370,-1301,-1233,-1155,-1071,-984,-893,-801,-717,-635,-564,-516,-500,-501,-468,
+-445,-427,-353,-233,-72,78,221,332,436,539,616,692,774,880,1011,1115,1194,1286,1390,1473,
+1554,1642,1717,1792,1863,1937,1936,1878,1905,1986,2048,2098,2160,2239,2322,2411,2493,2555,2608,2662,
+2707,2733,2755,2801,2848,2902,2962,3015,3078,3130,3182,3239,3293,3351,3398,3435,3491,3603,3759,3800,
+3815,3849,3905,3962,4024,4081,4141,4208,4276,4354,4432,4497,4545,4589,4645,4711,4773,4839,4899,4967,
+5018,5051,5065,5097,5210,5321,5373,5371,5409,5454,5494,5557,5622,5682,5740,5807,5864,5920,5978,6005,
+6062,6106,6147,6184,6220,6274,6315,6375,6435,6429,6452,6491,6483,6476,6453,6445,6459,6461,6472,6469,
+6485,6479,6470,6456,6459,6432,6421,6415,6400,6379,6358,6340,6326,6304,6280,6264,6236,6202,6170,6143,
+6117,6094,6074,6042,5986,5935,5896,5880,5841,5821,5797,5783,5791,5850,5889,5889,5897,5924,5919,5842,
+5745,5680,5643,5597,5554,5527,5547,5608,5651,5651,5628,5580,5522,5460,5391,5328,5292,5261,5176,5103,
+5052,5008,4956,4889,4822,4774,4738,4711,4671,4622,4568,4515,4475,4448,4428,4406,4392,4383,4374,4360,
+4348,4342,4356,4384,4397,4376,4350,4347,4394,4491,4571,4591,4602,4674,4769,4780,4764,4744,4722,4698,
+4684,4686,4697,4744,4759,4787,4822,4863,4921,4974,5012,5040,5072,5117,5166,5225,5257,5283,5290,5220,
+5146,5111,5074,5104,5166,5203,5217,5239,5294,5373,5439,5433,5349,5132,4904,4779,4690,4639,4589,4534,
+4539,4501,4386,4290,4159,4057,3990,3959,3959,3970,3983,3982,3969,3979,4009,4054,4120,4187,4236,4266,
+4296,4322,4353,4391,4468,4477,4522,4556,4607,4653,4646,4686,4693,4707,4695,4660,4647,4617,4594,4591,
+4548,4516,4498,4477,4459,4470,4454,4440,4446,4467,4464,4467,4405,4273,4171,4123,4089,4044,4019,3985,
+3927,3877,3821,3763,3709,3657,3606,3554,3515,3488,3473,3467,3455,3442,3433,3429,3433,3409,3363,3303,
+3242,3194,3162,3149,3130,3095,3041,2957,2842,2728,2616,2515,2446,2415,2442,2471,2493,2515,2548,2558,
+2366,2066,1853,1740,1687,1662,1654,1663,1682,1675,1622,1568,1518,1456,1422,1467,1538,1550,1539,1534,
+1522,1523,1551,1603,1661,1667,1636,1628,1607,1560,1514,1469,1417,1324,1201,1066,937,802,671,540,
+427,329,226,130,38,-49,-127,-208,-289,-368,-450,-524,-584,-668,-739,-808,-877,-932,-971,-1014,
+-1047,-1079,-1108,-1128,-1142,-1148,-1168,-1205,-1234,-1264,-1311,-1356,-1401,-1446,-1488,-1532,-1576,-1604,-1637,-1672,
+-1707,-1748,-1797,-1853,-1912,-1967,-2024,-2075,-2123,-2175,-2228,-2284,-2334,-2384,-2443,-2513,-2597,-2660,-2712,-2763,
+-2810,-2843,-2868,-2906,-2943,-2968,-3000,-3040,-3079,-3109,-3149,-3199,-3229,-3259,-3306,-3348,-3403,-3465,-3497,-3519,
+-3549,-3592,-3645,-3683,-3716,-3756,-3795,-3832,-3847,-3849,-3847,-3819,-3783,-3806,-3867,-3933,-3978,-4020,-4051,-4072,
+-4099,-4108,-4129,-4160,-4198,-4257,-4303,-4342,-4378,-4407,-4431,-4442,-4449,-4450,-4447,-4468,-4485,-4478,-4487,-4509,
+-4546,-4588,-4632,-4683,-4730,-4761,-4777,-4787,-4787,-4785,-4782,-4756,-4717,-4661,-4619,-4615,-4584,-4519,-4486,-4416,
+-4338,-4345,-4438,-4458,-4458,-4512,-4596,-4641,-4694,-4793,-4991,-5209,-5462,-5636,-5714,-5676,-5642,-5772,-5951,-6096,
+-6207,-6287,-6355,-6424,-6503,-6578,-6639,-6693,-6737,-6775,-6802,-6808,-6795,-6762,-6707,-6631,-6539,-6438,-6344,-6264,
+-6191,-6124,-6068,-6029,-5985,-5937,-5886,-5833,-5827,-5828,-5814,-5815,-5848,-5908,-5949,-5970,-5995,-6001,-5989,-5958,
+-5890,-5795,-5682,-5562,-5455,-5368,-5344,-5353,-5371,-5412,-5416,-5364,-5328,-5317,-5317,-5289,-5270,-5221,-5169,-5099,
+-5027,-5000,-4990,-4996,-4996,-4996,-4992,-4973,-4951,-4905,-4835,-4763,-4702,-4679,-4674,-4718,-4728,-4711,-4693,-4644,
+-4580,-4515,-4446,-4395,-4336,-4278,-4207,-4160,-4107,-4061,-4010,-3957,-3899,-3831,-3756,-3699,-3629,-3555,-3507,-3446,
+-3403,-3361,-3300,-3243,-3168,-3045,-2935,-2862,-2793,-2702,-2621,-2544,-2455,-2342,-2245,-2149,-2050,-1960,-1860,-1768,
+-1682,-1586,-1490,-1401,-1319,-1238,-1155,-1080,-1005,-909,-819,-728,-637,-550,-474,-399,-332,-288,-233,-218,
+-189,-142,-86,-21,59,131,180,238,299,359,421,484,545,597,658,725,783,843,904,970,
+1043,1115,1178,1237,1296,1364,1430,1495,1548,1593,1640,1681,1734,1804,1871,1965,2099,2148,2131,2117,
+2130,2164,2226,2295,2304,2345,2389,2428,2450,2443,2444,2457,2477,2515,2557,2588,2618,2594,2616,2635,
+2692,2745,2838,2873,2933,2918,2892,2833,2756,2719,2650,2596,2580,2584,2596,2620,2645,2673,2729,2782,
+2815,2848,2848,2915,2972,2992,2989,2993,3008,2968,2933,2998,3046,3082,3054,2995,2946,2918,2898,2859,
+2824,2753,2735,2757,2761,2761,2715,2875,2990,2966,2937,2989,2949,2907,2858,2739,2518,2187,1773,1326,
+908,565,299,57,-176,-321,-378,-381,-333,-235,-87,99,309,503,681,844,964,1042,1116,1170,
+1197,1206,1202,1190,1171,1141,1103,1069,1032,994,947,898,858,824,770,715,665,614,580,545,
+510,482,441,403,358,322,290,253,201,152,114,85,46,10,-30,-66,-103,-142,-182,-225,
+-260,-298,-331,-358,-372,-388,-405,-418,-429,-442,-468,-502,-541,-590,-651,-716,-787,-852,-913,-949,
+-939,-856,-642,-311,-141,-414,-824,-1034,-1094,-1083,-1032,-978,-914,-864,-831,-814,-809,-818,-842,-875,
+-915,-946,-906,-842,-828,-818,-815,-814,-810,-803,-794,-782,-773,-770,-772,-774,-777,-776,-770,-754,
+-738,-725,-711,-701,-704,-707,-699,-693,-681,-675,-672,-668,-668,-665,-651,-638,-656,-637,-620,-608,
+-593,-570,-554,-551,-546,-529,-512,-500,-501,-491,-500,-504,-517,-507,-514,-520,-497,-478,-461,-452,
+-439,-439,-436,-420,-407,-393,-380,-372,-363,-355,-348,-346,-349,-353,-357,-354,-347,-342,-338,-338,
+-344,-357,-369,-382,-390,-403,-416,-419,-420,-426,-437,-440,-438,-442,-447,-452,-457,-468,-480,-491,
+-501,-511,-518,-531,-548,-566,-586,-600,-618,-632,-648,-659,-679,-703,-725,-737,-769,-789,-806,-834,
+-858,-881,-906,-923,-941,-957,-976,-996,-1015,-1039,-1062,-1083,-1111,-1141,-1161,-1183,-1213,-1246,-1283,-1309,
+-1329,-1352,-1383,-1411,-1439,-1465,-1488,-1513,-1537,-1558,-1579,-1603,-1623,-1648,-1672,-1693,-1715,-1736,-1756,-1781,
+-1807,-1830,-1845,-1864,-1886,-1907,-1932,-1968,-2005,-2034,-2058,-2074,-2094,-2129,-2165,-2190,-2217,-2235,-2272,-2311,
+-2353,-2391,-2417,-2439,-2459,-2475,-2495,-2519,-2542,-2566,-2588,-2611,-2632,-2650,-2666,-2680,-2696,-2713,-2734,-2756,
+-2768,-2780,-2793,-2808,-2821,-2830,-2835,-2843,-2847,-2848,-2849,-2846,-2846,-2842,-2840,-2845,-2856,-2856,-2834,-2790,
+-2751,-2725,-2732,-2713,-2712,-2712,-2711,-2723,-2723,-2711,-2713,-2707,-2703,-2705,-2711,-2711,-2720,-2742,-2774,-2812,
+-2853,-2874,-2808,-2704,-2628,-2549,-2451,-2282,-2165,-2149,-2213,-2253,-2248,-2188,-2134,-2080,-2058,-2086,-2068,-2004,
+-1960,-1913,-1890,-1861,-1856,-1842,-1788,-1763,-1736,-1701,-1705,-1692,-1670,-1644,-1636,-1582,-1595,-1561,-1477,-1473,
+-1426,-1360,-1318,-1265,-1241,-1213,-1226,-1195,-1175,-1073,-1075,-1003,-977,-971,-960,-928,-892,-886,-887,-869,
+-856,-835,-783,-747,-749,-842,-1009,-1182,-1289,-1327,-1306,-1214,-1053,-857,-835,-1023,-1286,-1413,-1470,-1468,
+-1449,-1430,-1442,-1435,-1395,-1358,-1392,-1432,-1478,-1568,-1657,-1735,-1798,-1864,-1927,-1999,-2068,-2137,-2192,-2223,
+-2254,-2294,-2326,-2352,-2364,-2385,-2411,-2451,-2487,-2486,-2474,-2480,-2483,-2488,-2493,-2495,-2514,-2549,-2617,-2674,
+-2712,-2736,-2754,-2773,-2789,-2797,-2808,-2818,-2797,-2758,-2822,-2913,-2996,-3036,-3045,-3060,-3078,-3110,-3158,-3237,
+-3305,-3368,-3431,-3498,-3568,-3616,-3643,-3664,-3669,-3660,-3653,-3651,-3645,-3656,-3661,-3677,-3663,-3621,-3574,-3531,
+-3492,-3437,-3402,-3422,-3477,-3513,-3536,-3554,-3572,-3588,-3604,-3620,-3624,-3632,-3645,-3674,-3700,-3707,-3694,-3667,
+-3642,-3638,-3651,-3661,-3654,-3649,-3645,-3635,-3617,-3603,-3592,-3575,-3550,-3534,-3520,-3494,-3469,-3453,-3436,-3401,
+-3354,-3281,-3210,-3142,-3070,-3000,-2949,-2913,-2918,-2962,-2983,-2905,-2827,-2829,-2821,-2824,-2798,-2773,-2754,-2718,
+-2729,-2722,-2710,-2692,-2670,-2639,-2605,-2600,-2579,-2548,-2493,-2453,-2405,-2371,-2326,-2300,-2288,-2304,-2296,-2270,
+-2252,-2258,-2259,-2271,-2258,-2256,-2249,-2236,-2206,-2161,-2117,-2076,-2038,-2004,-1968,-1936,-1913,-1891,-1870,-1844,
+-1795,-1726,-1653,-1580,-1508,-1429,-1360,-1288,-1223,-1146,-1061,-974,-885,-790,-719,-685,-662,-657,-654,-659,
+-648,-620,-585,-504,-391,-274,-133,39,217,337,434,526,626,734,841,969,1080,1185,1279,1349,
+1424,1514,1592,1675,1762,1844,1916,1897,1808,1804,1889,1964,2022,2088,2161,2249,2332,2409,2482,2547,
+2599,2639,2680,2718,2752,2795,2840,2910,2981,3037,3088,3151,3210,3267,3324,3374,3408,3456,3530,3646,
+3745,3845,3883,3872,3945,3996,4055,4117,4181,4262,4350,4421,4477,4532,4591,4640,4706,4772,4833,4894,
+4951,5005,5044,5069,5101,5176,5264,5333,5356,5393,5427,5477,5548,5612,5669,5732,5802,5866,5911,5946,
+6007,6061,6090,6120,6160,6197,6249,6317,6373,6414,6395,6447,6450,6451,6445,6422,6423,6428,6439,6446,
+6448,6453,6483,6451,6427,6413,6393,6347,6323,6329,6338,6341,6343,6347,6339,6299,6268,6219,6166,6135,
+6115,6099,6088,6058,6012,5960,5892,5858,5849,5825,5803,5779,5766,5783,5832,5847,5851,5853,5817,5763,
+5673,5577,5525,5519,5515,5484,5461,5465,5466,5486,5502,5492,5442,5373,5315,5248,5190,5119,5071,5005,
+4923,4855,4814,4785,4758,4752,4783,4785,4735,4650,4553,4468,4411,4387,4382,4372,4346,4323,4317,4328,
+4348,4369,4388,4398,4405,4423,4407,4351,4338,4423,4621,4726,4739,4748,4801,4853,4844,4819,4784,4760,
+4747,4739,4739,4744,4808,4816,4828,4854,4875,4914,4973,5022,5048,5092,5135,5182,5211,5234,5250,5213,
+5144,5092,5063,5032,5050,5124,5171,5168,5168,5258,5356,5410,5375,5326,5229,5116,4972,4847,4681,4558,
+4524,4540,4569,4552,4483,4481,4412,4315,4229,4179,4132,4053,3986,3960,3951,3962,3992,4043,4108,4164,
+4205,4223,4246,4287,4325,4350,4376,4420,4465,4524,4593,4646,4661,4681,4721,4711,4689,4709,4694,4676,
+4646,4612,4598,4577,4540,4514,4501,4487,4468,4475,4502,4516,4498,4443,4317,4237,4201,4167,4119,4085,
+4056,4009,3965,3917,3864,3811,3769,3733,3699,3660,3627,3607,3598,3578,3549,3518,3488,3459,3424,3373,
+3308,3254,3221,3202,3188,3164,3120,3040,2922,2793,2657,2532,2425,2330,2254,2211,2205,2239,2338,2354,
+2274,2061,1841,1701,1627,1598,1596,1601,1607,1610,1587,1524,1447,1376,1314,1276,1287,1345,1434,1512,
+1607,1683,1768,1828,1916,1950,1980,1931,1889,1867,1797,1739,1673,1605,1506,1379,1242,1096,931,778,
+636,508,393,276,172,71,-26,-112,-199,-288,-379,-468,-541,-612,-693,-768,-839,-900,-943,-975,
+-1008,-1043,-1074,-1106,-1133,-1148,-1155,-1165,-1178,-1199,-1222,-1245,-1281,-1328,-1385,-1451,-1511,-1538,-1555,-1586,
+-1626,-1664,-1702,-1745,-1790,-1840,-1895,-1955,-2017,-2078,-2144,-2210,-2272,-2329,-2387,-2450,-2516,-2586,-2654,-2701,
+-2752,-2802,-2843,-2881,-2912,-2940,-2964,-2994,-3039,-3086,-3130,-3178,-3226,-3252,-3276,-3316,-3360,-3411,-3465,-3509,
+-3551,-3584,-3620,-3666,-3707,-3739,-3775,-3816,-3845,-3862,-3875,-3874,-3860,-3830,-3786,-3772,-3840,-3906,-3962,-4009,
+-4047,-4086,-4104,-4132,-4173,-4205,-4239,-4272,-4311,-4352,-4387,-4426,-4453,-4464,-4467,-4452,-4449,-4468,-4469,-4448,
+-4422,-4458,-4499,-4532,-4568,-4611,-4653,-4680,-4699,-4696,-4689,-4685,-4667,-4641,-4610,-4572,-4547,-4525,-4519,-4566,
+-4581,-4623,-4710,-4811,-4882,-4920,-4964,-5006,-4988,-4939,-4971,-5008,-5049,-5192,-5336,-5396,-5320,-5163,-5243,-5506,
+-5686,-5854,-5964,-6046,-6137,-6242,-6355,-6451,-6526,-6602,-6673,-6727,-6761,-6767,-6742,-6672,-6567,-6451,-6350,-6281,
+-6230,-6159,-6095,-6049,-6008,-5974,-5944,-5911,-5857,-5814,-5789,-5779,-5773,-5791,-5833,-5865,-5894,-5922,-5972,-6022,
+-6029,-6013,-5984,-5922,-5843,-5750,-5662,-5582,-5502,-5482,-5476,-5467,-5469,-5457,-5402,-5354,-5354,-5349,-5304,-5263,
+-5216,-5164,-5128,-5092,-5056,-5050,-5040,-5034,-5031,-5027,-5010,-4964,-4902,-4837,-4777,-4730,-4736,-4736,-4715,-4679,
+-4618,-4557,-4507,-4455,-4405,-4347,-4279,-4214,-4162,-4100,-4040,-3980,-3931,-3883,-3828,-3766,-3689,-3631,-3584,-3536,
+-3485,-3437,-3376,-3308,-3255,-3149,-3045,-2941,-2847,-2760,-2685,-2613,-2534,-2445,-2338,-2247,-2160,-2074,-1989,-1894,
+-1798,-1702,-1601,-1492,-1385,-1284,-1201,-1136,-1059,-957,-856,-762,-680,-598,-516,-449,-389,-337,-298,-242,
+-235,-195,-125,-69,-9,56,128,191,241,295,357,423,488,551,612,680,748,806,870,936,
+1000,1072,1148,1211,1275,1345,1414,1482,1547,1597,1629,1671,1726,1786,1872,1951,2059,2159,2175,2163,
+2154,2170,2217,2303,2355,2359,2380,2401,2449,2470,2483,2493,2509,2531,2565,2609,2620,2608,2621,2641,
+2674,2719,2756,2794,2811,2839,2841,2803,2777,2749,2705,2665,2635,2605,2615,2630,2673,2741,2729,2670,
+2694,2833,2883,2874,2910,2964,3006,3018,3003,3028,3023,3020,3057,3091,3101,3126,3090,3054,3008,2974,
+2958,2914,2866,2863,2901,2979,2869,2940,3066,3068,3034,3002,3000,2988,2908,2721,2433,2053,1592,1088,
+667,377,124,-96,-281,-388,-394,-311,-171,-10,161,336,515,678,822,934,1038,1114,1161,1182,
+1212,1216,1215,1200,1180,1152,1119,1081,1037,997,956,919,878,840,794,734,674,619,575,537,
+512,467,441,418,388,357,305,262,231,192,129,80,38,-8,-35,-60,-92,-129,-168,-210,
+-247,-283,-321,-349,-374,-397,-412,-429,-441,-450,-459,-480,-503,-538,-591,-659,-725,-797,-861,-921,
+-967,-985,-963,-865,-669,-411,-473,-813,-1048,-1119,-1110,-1058,-998,-934,-877,-847,-839,-832,-847,-873,
+-908,-947,-988,-996,-949,-890,-869,-852,-850,-847,-840,-830,-819,-815,-814,-819,-817,-813,-812,-803,
+-788,-771,-763,-753,-746,-751,-749,-740,-730,-722,-716,-714,-719,-728,-725,-710,-694,-705,-679,-666,
+-649,-640,-624,-595,-599,-579,-566,-563,-556,-556,-542,-542,-568,-529,-506,-506,-510,-505,-490,-484,
+-496,-501,-495,-482,-464,-444,-431,-423,-414,-410,-401,-392,-385,-387,-394,-400,-401,-398,-397,-389,
+-390,-397,-402,-409,-422,-434,-445,-457,-467,-479,-489,-503,-506,-507,-507,-510,-512,-515,-521,-533,
+-542,-552,-564,-577,-593,-612,-632,-650,-665,-679,-696,-709,-726,-743,-760,-779,-801,-819,-840,-860,
+-881,-904,-927,-948,-972,-990,-1007,-1031,-1051,-1073,-1096,-1121,-1138,-1162,-1189,-1204,-1227,-1253,-1284,-1312,
+-1339,-1367,-1394,-1422,-1451,-1480,-1509,-1533,-1558,-1582,-1608,-1631,-1654,-1679,-1705,-1729,-1751,-1769,-1789,-1808,
+-1833,-1859,-1881,-1900,-1921,-1942,-1962,-1989,-2026,-2060,-2080,-2087,-2097,-2126,-2163,-2184,-2210,-2236,-2275,-2316,
+-2352,-2384,-2414,-2439,-2465,-2489,-2510,-2534,-2560,-2582,-2607,-2627,-2648,-2666,-2683,-2696,-2712,-2729,-2749,-2770,
+-2793,-2805,-2824,-2838,-2851,-2857,-2862,-2871,-2877,-2879,-2881,-2881,-2879,-2877,-2875,-2873,-2876,-2880,-2885,-2879,
+-2854,-2825,-2806,-2794,-2790,-2791,-2778,-2748,-2748,-2755,-2737,-2734,-2734,-2735,-2737,-2739,-2741,-2751,-2772,-2800,
+-2837,-2882,-2913,-2861,-2710,-2618,-2550,-2419,-2256,-2210,-2171,-2225,-2250,-2243,-2186,-2148,-2089,-2016,-2067,-2065,
+-2022,-1973,-1911,-1865,-1849,-1829,-1811,-1775,-1766,-1726,-1705,-1693,-1703,-1696,-1709,-1686,-1673,-1646,-1588,-1532,
+-1504,-1451,-1385,-1315,-1279,-1228,-1187,-1167,-1126,-1094,-1078,-1048,-1034,-1011,-1032,-1026,-1008,-987,-967,-942,
+-894,-848,-803,-748,-718,-720,-796,-899,-1074,-1232,-1308,-1326,-1286,-1164,-996,-832,-901,-1187,-1372,-1440,
+-1449,-1431,-1424,-1439,-1443,-1409,-1376,-1340,-1299,-1332,-1453,-1601,-1703,-1789,-1862,-1921,-1990,-2073,-2155,-2224,
+-2288,-2332,-2369,-2386,-2391,-2406,-2422,-2458,-2475,-2499,-2516,-2526,-2539,-2537,-2542,-2540,-2542,-2565,-2581,-2602,
+-2647,-2683,-2715,-2744,-2775,-2804,-2819,-2833,-2841,-2874,-2835,-2837,-2904,-2990,-3019,-3022,-3040,-3070,-3113,-3178,
+-3269,-3352,-3416,-3481,-3525,-3576,-3627,-3655,-3675,-3681,-3666,-3650,-3636,-3635,-3645,-3654,-3663,-3639,-3590,-3536,
+-3492,-3452,-3393,-3361,-3395,-3454,-3496,-3537,-3561,-3570,-3574,-3572,-3583,-3594,-3606,-3632,-3663,-3686,-3672,-3660,
+-3636,-3614,-3608,-3615,-3658,-3675,-3676,-3662,-3646,-3639,-3632,-3631,-3621,-3600,-3576,-3555,-3536,-3518,-3492,-3461,
+-3420,-3349,-3271,-3197,-3114,-3038,-2983,-2945,-2892,-2911,-2972,-2971,-2879,-2836,-2840,-2831,-2824,-2809,-2766,-2734,
+-2774,-2771,-2748,-2719,-2687,-2667,-2640,-2608,-2590,-2565,-2536,-2489,-2446,-2406,-2370,-2345,-2332,-2326,-2304,-2281,
+-2275,-2300,-2323,-2304,-2297,-2286,-2274,-2265,-2252,-2225,-2198,-2159,-2109,-2061,-2002,-1957,-1929,-1903,-1883,-1858,
+-1816,-1760,-1687,-1605,-1524,-1450,-1376,-1321,-1277,-1222,-1161,-1091,-1036,-976,-938,-916,-892,-860,-834,-799,
+-777,-755,-711,-650,-583,-499,-400,-267,-78,83,168,256,427,573,689,794,900,1020,1137,1212,
+1282,1366,1461,1556,1636,1724,1806,1852,1849,1776,1739,1813,1892,1959,2026,2096,2168,2248,2324,2390,
+2451,2505,2552,2603,2657,2695,2735,2784,2841,2916,2983,3042,3105,3163,3219,3282,3342,3380,3430,3479,
+3536,3605,3683,3761,3821,3880,3947,4041,4101,4150,4235,4329,4396,4457,4515,4563,4619,4680,4751,4820,
+4880,4946,5003,5041,5080,5126,5182,5237,5294,5341,5374,5406,5464,5532,5603,5669,5745,5798,5865,5891,
+5939,6001,6043,6076,6107,6160,6196,6243,6294,6354,6377,6387,6437,6437,6433,6423,6403,6399,6415,6424,
+6417,6411,6412,6417,6400,6396,6383,6363,6358,6318,6282,6249,6262,6286,6341,6364,6336,6287,6219,6149,
+6107,6095,6092,6070,6044,5988,5924,5867,5846,5827,5808,5782,5774,5790,5807,5834,5840,5842,5795,5718,
+5633,5543,5493,5480,5479,5487,5513,5543,5531,5469,5429,5402,5366,5308,5237,5166,5096,5023,4954,4896,
+4841,4785,4722,4668,4637,4648,4756,4971,5115,5077,4990,4857,4694,4622,4632,4619,4545,4460,4399,4401,
+4448,4491,4547,4621,4661,4666,4637,4581,4493,4474,4471,4576,4704,4765,4791,4820,4879,4886,4869,4841,
+4813,4799,4797,4800,4808,4861,4869,4877,4882,4888,4905,4951,5007,5044,5078,5117,5143,5168,5189,5179,
+5128,5079,5052,5035,5012,5022,5090,5135,5105,5098,5166,5229,5232,5206,5190,5173,5103,4958,4798,4631,
+4547,4571,4573,4572,4597,4596,4626,4587,4560,4499,4427,4388,4323,4218,4134,4073,4048,4047,4065,4094,
+4132,4168,4187,4205,4228,4274,4312,4334,4355,4374,4418,4507,4549,4627,4659,4647,4699,4663,4666,4718,
+4708,4712,4671,4633,4630,4610,4580,4547,4522,4519,4495,4524,4567,4491,4424,4346,4274,4223,4176,4134,
+4108,4084,4055,4020,3982,3937,3894,3858,3831,3807,3780,3752,3728,3705,3683,3654,3615,3560,3496,3433,
+3370,3305,3254,3218,3200,3189,3158,3095,2987,2859,2726,2604,2494,2390,2289,2206,2140,2092,2078,2084,
+2055,1970,1853,1757,1690,1641,1634,1643,1641,1623,1607,1576,1509,1432,1353,1287,1238,1220,1231,1285,
+1372,1505,1690,1880,2054,2218,2267,2316,2259,2205,2155,2091,2015,1947,1881,1767,1625,1457,1263,1069,
+896,734,594,472,356,240,130,24,-82,-187,-287,-382,-478,-567,-641,-714,-800,-869,-911,-941,
+-970,-998,-1027,-1055,-1085,-1111,-1137,-1148,-1161,-1177,-1202,-1219,-1233,-1246,-1266,-1311,-1387,-1461,-1520,-1548,
+-1570,-1606,-1647,-1681,-1717,-1754,-1796,-1854,-1916,-1981,-2050,-2121,-2193,-2259,-2321,-2385,-2452,-2520,-2581,-2649,
+-2694,-2739,-2784,-2818,-2861,-2903,-2930,-2954,-2986,-3031,-3082,-3136,-3188,-3230,-3258,-3285,-3324,-3365,-3408,-3458,
+-3521,-3573,-3604,-3646,-3685,-3719,-3756,-3793,-3837,-3869,-3893,-3921,-3932,-3918,-3893,-3850,-3789,-3745,-3756,-3810,
+-3869,-3947,-4024,-4090,-4126,-4146,-4170,-4193,-4221,-4267,-4317,-4361,-4390,-4421,-4448,-4461,-4453,-4436,-4445,-4458,
+-4449,-4430,-4410,-4393,-4398,-4419,-4448,-4491,-4528,-4575,-4609,-4615,-4615,-4626,-4629,-4638,-4614,-4569,-4614,-4689,
+-4749,-4776,-4859,-4953,-5023,-5075,-5117,-5159,-5181,-5182,-5190,-5209,-5203,-5184,-5162,-5188,-5185,-5122,-5035,-5015,
+-5057,-5158,-5287,-5381,-5468,-5590,-5739,-5911,-6042,-6154,-6257,-6380,-6490,-6586,-6616,-6592,-6475,-6268,-6044,-5962,
+-5984,-6035,-6033,-5999,-5971,-5935,-5910,-5896,-5876,-5861,-5818,-5764,-5733,-5708,-5691,-5718,-5767,-5775,-5729,-5728,
+-5816,-5947,-6042,-6085,-6079,-6041,-5984,-5914,-5823,-5735,-5662,-5618,-5584,-5568,-5563,-5523,-5468,-5395,-5367,-5353,
+-5338,-5313,-5297,-5263,-5242,-5214,-5179,-5144,-5133,-5109,-5079,-5041,-4997,-4953,-4875,-4800,-4748,-4710,-4660,-4632,
+-4606,-4573,-4528,-4465,-4403,-4359,-4316,-4271,-4222,-4156,-4099,-4054,-3997,-3940,-3889,-3833,-3772,-3735,-3673,-3623,
+-3553,-3497,-3429,-3349,-3287,-3205,-3125,-3021,-2917,-2834,-2755,-2684,-2601,-2516,-2438,-2352,-2264,-2175,-2090,-1998,
+-1896,-1793,-1696,-1597,-1482,-1381,-1279,-1192,-1115,-1039,-935,-833,-736,-637,-551,-477,-448,-425,-380,-299,
+-239,-194,-157,-106,-42,13,79,136,198,247,295,360,431,495,560,629,703,772,830,890,
+959,1028,1099,1176,1247,1319,1395,1460,1522,1582,1619,1661,1718,1789,1865,1933,2010,2097,2178,2180,
+2195,2208,2239,2292,2330,2369,2401,2432,2435,2446,2462,2503,2524,2530,2552,2576,2608,2628,2655,2652,
+2672,2703,2727,2757,2766,2788,2800,2799,2775,2751,2727,2694,2670,2657,2639,2632,2668,2736,2763,2733,
+2720,2737,2845,2884,2914,2977,2991,3004,3027,3054,3074,3081,3087,3117,3158,3182,3193,3182,3161,3105,
+3094,3088,3032,3001,3030,3108,3051,3055,3103,3093,3081,3094,3105,3038,2865,2619,2295,1886,1425,987,
+592,271,33,-158,-292,-323,-256,-121,49,232,417,591,746,878,977,1055,1115,1167,1210,1231,
+1234,1241,1232,1219,1195,1170,1137,1103,1063,1017,961,932,893,849,798,747,692,636,582,540,
+503,464,425,395,370,344,299,262,217,165,122,65,24,-15,-42,-68,-94,-128,-169,-208,
+-242,-279,-314,-346,-371,-395,-419,-434,-452,-467,-477,-487,-501,-518,-551,-601,-672,-734,-804,-871,
+-935,-982,-1004,-992,-937,-836,-731,-711,-908,-1078,-1135,-1127,-1074,-1014,-954,-896,-857,-848,-854,-862,
+-887,-923,-969,-1020,-1047,-1028,-972,-917,-890,-880,-882,-873,-860,-854,-851,-856,-851,-857,-854,-850,
+-844,-825,-813,-801,-794,-795,-798,-803,-791,-772,-766,-760,-766,-770,-777,-774,-763,-739,-748,-719,
+-703,-690,-684,-680,-645,-636,-627,-604,-602,-608,-603,-593,-601,-575,-553,-557,-563,-566,-561,-567,
+-570,-571,-559,-543,-541,-531,-508,-489,-476,-462,-450,-444,-439,-442,-443,-449,-454,-455,-455,-453,
+-451,-450,-456,-465,-463,-470,-485,-493,-505,-518,-531,-544,-555,-560,-567,-570,-573,-576,-580,-585,
+-590,-599,-606,-622,-637,-650,-670,-690,-708,-724,-739,-755,-773,-788,-800,-816,-831,-849,-864,-887,
+-905,-924,-947,-974,-998,-1017,-1046,-1067,-1092,-1117,-1139,-1163,-1191,-1220,-1233,-1250,-1264,-1288,-1305,-1334,
+-1363,-1389,-1416,-1442,-1469,-1494,-1524,-1552,-1579,-1605,-1632,-1660,-1685,-1712,-1739,-1759,-1783,-1804,-1821,-1839,
+-1859,-1882,-1903,-1922,-1946,-1966,-1987,-2014,-2041,-2070,-2091,-2098,-2114,-2135,-2161,-2189,-2208,-2236,-2263,-2299,
+-2332,-2369,-2405,-2437,-2462,-2486,-2516,-2545,-2573,-2598,-2625,-2646,-2664,-2678,-2694,-2712,-2726,-2743,-2765,-2786,
+-2809,-2811,-2843,-2862,-2878,-2890,-2898,-2904,-2909,-2915,-2917,-2919,-2915,-2911,-2907,-2908,-2906,-2908,-2910,-2911,
+-2906,-2894,-2886,-2856,-2835,-2854,-2851,-2829,-2819,-2793,-2776,-2772,-2773,-2767,-2773,-2774,-2771,-2774,-2781,-2801,
+-2824,-2861,-2910,-2946,-2899,-2760,-2689,-2607,-2479,-2337,-2252,-2224,-2236,-2274,-2241,-2192,-2141,-2065,-1989,-1997,
+-2020,-2010,-1951,-1893,-1881,-1879,-1853,-1820,-1795,-1770,-1765,-1757,-1749,-1735,-1742,-1745,-1750,-1732,-1694,-1637,
+-1582,-1528,-1469,-1414,-1333,-1264,-1218,-1160,-1125,-1124,-1107,-1080,-1096,-1062,-1090,-1112,-1095,-1064,-1047,-1023,
+-983,-907,-836,-826,-789,-739,-725,-752,-830,-996,-1153,-1276,-1324,-1306,-1241,-1126,-987,-974,-1192,-1358,
+-1422,-1443,-1452,-1465,-1467,-1465,-1447,-1425,-1365,-1277,-1290,-1411,-1568,-1695,-1768,-1834,-1901,-1990,-2083,-2175,
+-2263,-2334,-2386,-2423,-2464,-2475,-2487,-2503,-2511,-2525,-2537,-2553,-2564,-2571,-2576,-2580,-2580,-2587,-2603,-2613,
+-2618,-2629,-2669,-2695,-2725,-2762,-2793,-2813,-2828,-2855,-2911,-2903,-2869,-2906,-2999,-3024,-3007,-3026,-3058,-3120,
+-3198,-3273,-3351,-3415,-3488,-3543,-3581,-3627,-3649,-3666,-3666,-3654,-3635,-3626,-3629,-3635,-3640,-3638,-3617,-3577,
+-3526,-3456,-3404,-3347,-3329,-3368,-3430,-3485,-3526,-3552,-3557,-3552,-3551,-3554,-3572,-3598,-3627,-3646,-3643,-3626,
+-3618,-3607,-3603,-3602,-3615,-3655,-3687,-3690,-3678,-3676,-3672,-3677,-3678,-3660,-3636,-3616,-3594,-3581,-3553,-3518,
+-3479,-3431,-3355,-3277,-3189,-3090,-3009,-2945,-2903,-2896,-2927,-2956,-2963,-2855,-2812,-2815,-2824,-2818,-2789,-2771,
+-2795,-2810,-2782,-2751,-2713,-2682,-2653,-2629,-2608,-2572,-2551,-2528,-2496,-2440,-2404,-2388,-2361,-2349,-2333,-2308,
+-2284,-2299,-2325,-2317,-2308,-2307,-2307,-2303,-2282,-2266,-2238,-2198,-2150,-2103,-2044,-1979,-1942,-1913,-1883,-1855,
+-1816,-1763,-1697,-1617,-1532,-1440,-1357,-1294,-1262,-1266,-1238,-1228,-1229,-1210,-1176,-1149,-1125,-1070,-999,-935,
+-866,-816,-778,-727,-673,-605,-538,-475,-398,-275,-144,-43,102,290,464,620,751,860,961,1052,
+1131,1216,1305,1405,1505,1594,1658,1738,1789,1774,1711,1698,1780,1844,1907,1971,2034,2094,2187,2255,
+2309,2368,2421,2464,2515,2577,2628,2674,2722,2785,2868,2926,2970,3029,3101,3173,3234,3295,3356,3411,
+3461,3516,3575,3641,3706,3770,3825,3892,3975,4082,4149,4221,4297,4365,4430,4500,4565,4605,4676,4767,
+4794,4861,4929,4982,5034,5090,5148,5200,5253,5303,5342,5367,5409,5465,5519,5586,5662,5742,5783,5810,
+5885,5931,5983,6022,6063,6115,6149,6205,6245,6297,6373,6373,6376,6422,6422,6400,6400,6377,6372,6388,
+6393,6398,6398,6400,6391,6375,6360,6345,6333,6331,6328,6326,6278,6220,6181,6172,6223,6277,6306,6222,
+6149,6098,6064,6051,6035,6018,5962,5895,5863,5838,5815,5809,5809,5819,5836,5868,5855,5844,5834,5799,
+5706,5583,5485,5468,5490,5490,5503,5556,5605,5601,5552,5488,5412,5348,5291,5218,5136,5054,4973,4904,
+4846,4794,4750,4712,4688,4708,4787,4894,5048,5209,5274,5269,5242,5212,5176,5123,5054,4966,4869,4762,
+4702,4785,4910,4959,5011,5037,4994,4873,4715,4585,4534,4518,4567,4634,4701,4759,4826,4897,4906,4891,
+4871,4853,4845,4845,4849,4861,4898,4910,4919,4926,4930,4930,4944,4969,5006,5045,5107,5147,5139,5110,
+5098,5071,5045,5022,5003,5004,5012,5035,5042,5042,5068,5125,5160,5149,5078,4991,4941,4882,4788,4670,
+4568,4579,4603,4635,4659,4661,4662,4649,4680,4630,4605,4573,4564,4528,4478,4381,4284,4229,4167,4147,
+4154,4159,4170,4193,4205,4212,4220,4255,4293,4316,4344,4372,4407,4429,4481,4542,4581,4558,4614,4669,
+4695,4686,4663,4653,4655,4652,4612,4594,4563,4528,4551,4533,4500,4535,4519,4452,4402,4313,4249,4198,
+4161,4134,4119,4095,4064,4027,3995,3965,3938,3917,3906,3892,3872,3847,3814,3775,3736,3686,3625,3549,
+3458,3371,3292,3220,3161,3138,3127,3085,3002,2900,2788,2685,2586,2492,2400,2304,2209,2132,2076,2040,
+1991,1925,1856,1798,1752,1716,1689,1693,1700,1710,1705,1689,1657,1595,1518,1437,1355,1279,1231,1204,
+1211,1258,1364,1531,1760,1995,2205,2379,2495,2502,2482,2424,2353,2276,2204,2178,2096,1939,1739,1497,
+1244,1038,869,723,595,475,357,239,113,-11,-129,-246,-357,-463,-568,-658,-740,-825,-881,-916,
+-943,-964,-985,-1006,-1033,-1056,-1080,-1105,-1117,-1128,-1150,-1182,-1206,-1216,-1224,-1239,-1278,-1350,-1430,-1502,
+-1559,-1604,-1619,-1639,-1671,-1708,-1746,-1790,-1841,-1896,-1961,-2032,-2104,-2176,-2247,-2314,-2385,-2455,-2521,-2576,
+-2636,-2680,-2721,-2763,-2797,-2839,-2886,-2919,-2942,-2973,-3022,-3076,-3139,-3192,-3231,-3256,-3283,-3328,-3367,-3407,
+-3462,-3532,-3589,-3628,-3670,-3714,-3753,-3788,-3824,-3861,-3898,-3935,-3967,-3989,-3994,-3980,-3952,-3907,-3857,-3800,
+-3742,-3772,-3885,-3963,-4032,-4088,-4109,-4129,-4157,-4199,-4249,-4285,-4323,-4355,-4377,-4403,-4421,-4427,-4423,-4421,
+-4423,-4432,-4412,-4356,-4317,-4304,-4326,-4348,-4379,-4429,-4483,-4538,-4564,-4589,-4634,-4662,-4685,-4712,-4727,-4746,
+-4771,-4789,-4806,-4846,-4896,-4943,-4992,-5051,-5109,-5130,-5143,-5175,-5233,-5274,-5275,-5264,-5283,-5311,-5246,-5209,
+-5158,-5076,-5058,-5020,-5006,-5023,-5072,-5164,-5272,-5454,-5559,-5713,-5926,-6102,-6245,-6313,-6302,-6170,-5904,-5665,
+-5571,-5564,-5648,-5747,-5787,-5816,-5796,-5762,-5784,-5814,-5845,-5828,-5812,-5782,-5703,-5681,-5719,-5751,-5711,-5613,
+-5508,-5491,-5668,-5867,-6013,-6085,-6112,-6109,-6058,-5965,-5871,-5784,-5719,-5674,-5637,-5622,-5581,-5556,-5526,-5474,
+-5426,-5413,-5403,-5402,-5398,-5358,-5304,-5220,-5129,-5068,-5046,-5018,-4982,-4955,-4903,-4848,-4764,-4677,-4610,-4556,
+-4514,-4503,-4511,-4502,-4460,-4415,-4360,-4308,-4258,-4208,-4156,-4101,-4052,-4027,-3981,-3925,-3875,-3822,-3774,-3708,
+-3628,-3576,-3519,-3446,-3357,-3253,-3157,-3075,-2993,-2906,-2830,-2751,-2676,-2595,-2515,-2432,-2345,-2254,-2161,-2072,
+-1980,-1872,-1780,-1684,-1588,-1480,-1376,-1282,-1189,-1099,-1009,-923,-814,-707,-609,-531,-453,-429,-408,-367,
+-287,-223,-169,-109,-71,-26,36,93,153,216,274,322,380,446,509,577,646,717,789,856,
+924,994,1061,1133,1201,1274,1360,1435,1483,1534,1602,1665,1717,1786,1865,1900,1948,2021,2078,2124,
+2159,2203,2259,2314,2334,2357,2407,2430,2463,2484,2518,2526,2530,2557,2558,2577,2623,2634,2646,2701,
+2711,2693,2735,2760,2777,2764,2774,2803,2801,2723,2665,2646,2613,2612,2619,2638,2669,2692,2715,2741,
+2758,2765,2782,2824,2871,2935,3000,3037,3033,3071,3102,3133,3209,3158,3115,3175,3196,3232,3249,3216,
+3150,3148,3145,3103,3118,3186,3145,3116,3131,3125,3122,3122,3086,2970,2729,2436,2078,1659,1230,879,
+584,268,-1,-158,-209,-157,-31,133,311,485,654,812,952,1059,1133,1188,1220,1242,1259,1274,
+1274,1262,1247,1228,1213,1191,1159,1125,1090,1047,993,943,906,865,818,761,709,652,593,546,
+508,472,431,392,363,337,298,262,214,159,133,90,28,-16,-49,-80,-112,-143,-178,-210,
+-251,-288,-319,-350,-375,-391,-412,-432,-450,-470,-491,-495,-503,-516,-543,-570,-606,-667,-737,-805,
+-870,-937,-990,-1010,-992,-918,-801,-704,-832,-982,-1089,-1148,-1134,-1091,-1032,-972,-906,-865,-862,-855,
+-875,-895,-929,-973,-1008,-1048,-1073,-1046,-983,-935,-909,-909,-896,-883,-881,-883,-896,-903,-895,-893,
+-888,-881,-864,-851,-838,-838,-844,-849,-853,-829,-816,-809,-812,-811,-811,-814,-817,-809,-784,-781,
+-754,-743,-739,-726,-711,-695,-681,-668,-656,-649,-644,-634,-623,-633,-624,-625,-624,-620,-621,-615,
+-604,-601,-602,-593,-576,-562,-550,-543,-534,-520,-507,-498,-498,-500,-503,-504,-505,-514,-516,-518,
+-512,-510,-513,-520,-525,-532,-528,-544,-549,-552,-563,-583,-601,-617,-624,-636,-643,-650,-650,-645,
+-650,-654,-658,-663,-678,-691,-708,-727,-747,-766,-784,-799,-813,-828,-844,-855,-866,-877,-891,-905,
+-926,-944,-965,-997,-1027,-1057,-1083,-1108,-1136,-1162,-1190,-1212,-1225,-1243,-1253,-1250,-1267,-1295,-1340,-1361,
+-1391,-1414,-1437,-1462,-1489,-1521,-1545,-1572,-1598,-1624,-1655,-1682,-1711,-1735,-1761,-1785,-1813,-1837,-1852,-1869,
+-1893,-1910,-1927,-1947,-1967,-1987,-2010,-2033,-2056,-2082,-2108,-2113,-2129,-2153,-2179,-2207,-2234,-2254,-2275,-2299,
+-2326,-2355,-2387,-2422,-2454,-2483,-2509,-2537,-2565,-2594,-2627,-2656,-2682,-2700,-2711,-2722,-2738,-2751,-2772,-2793,
+-2818,-2840,-2843,-2869,-2888,-2906,-2916,-2924,-2932,-2940,-2946,-2950,-2949,-2947,-2944,-2943,-2946,-2950,-2946,-2943,
+-2934,-2927,-2921,-2921,-2923,-2903,-2903,-2897,-2893,-2890,-2885,-2898,-2854,-2830,-2819,-2804,-2804,-2813,-2812,-2818,
+-2830,-2854,-2894,-2939,-2973,-2920,-2842,-2782,-2666,-2506,-2367,-2286,-2236,-2233,-2251,-2216,-2202,-2148,-2046,-2052,
+-2032,-1963,-1974,-1965,-1941,-1914,-1902,-1867,-1847,-1830,-1807,-1795,-1797,-1790,-1775,-1755,-1742,-1741,-1753,-1707,
+-1680,-1618,-1547,-1488,-1436,-1366,-1288,-1243,-1204,-1162,-1138,-1132,-1147,-1143,-1159,-1160,-1161,-1126,-1115,-1083,
+-1012,-979,-907,-870,-868,-826,-773,-760,-767,-820,-949,-1111,-1227,-1298,-1299,-1261,-1184,-1071,-1066,-1217,
+-1354,-1421,-1449,-1470,-1493,-1492,-1506,-1511,-1500,-1469,-1364,-1338,-1434,-1592,-1694,-1766,-1836,-1914,-1990,-2073,
+-2166,-2257,-2343,-2417,-2467,-2514,-2565,-2587,-2585,-2576,-2579,-2578,-2587,-2613,-2614,-2606,-2599,-2602,-2607,-2623,
+-2632,-2644,-2640,-2647,-2692,-2741,-2764,-2798,-2808,-2834,-2881,-2936,-2954,-2913,-2908,-2990,-3008,-3023,-3037,-3052,
+-3108,-3192,-3271,-3353,-3413,-3485,-3546,-3584,-3612,-3633,-3617,-3610,-3608,-3592,-3588,-3602,-3613,-3625,-3619,-3588,
+-3546,-3500,-3453,-3392,-3339,-3317,-3352,-3415,-3466,-3498,-3518,-3526,-3517,-3510,-3519,-3547,-3577,-3588,-3602,-3605,
+-3598,-3595,-3591,-3594,-3610,-3637,-3666,-3694,-3706,-3710,-3721,-3728,-3722,-3713,-3690,-3669,-3653,-3662,-3619,-3576,
+-3538,-3493,-3426,-3331,-3273,-3192,-3087,-3004,-2936,-2918,-2924,-2960,-2991,-2983,-2889,-2818,-2825,-2838,-2813,-2810,
+-2806,-2794,-2795,-2768,-2734,-2697,-2660,-2638,-2619,-2595,-2583,-2563,-2528,-2489,-2449,-2436,-2409,-2378,-2356,-2334,
+-2315,-2314,-2344,-2337,-2332,-2324,-2315,-2306,-2298,-2278,-2249,-2221,-2176,-2127,-2089,-2030,-1980,-1960,-1926,-1881,
+-1838,-1799,-1742,-1669,-1587,-1496,-1410,-1341,-1289,-1273,-1329,-1400,-1420,-1409,-1400,-1352,-1313,-1267,-1185,-1080,
+-988,-897,-832,-781,-734,-691,-639,-588,-538,-495,-427,-316,-170,-12,144,324,504,654,783,897,
+986,1074,1171,1267,1377,1469,1554,1622,1686,1722,1718,1662,1686,1770,1823,1877,1936,1986,2026,2087,
+2183,2283,2318,2374,2428,2438,2495,2574,2606,2655,2725,2844,2890,2912,2981,3057,3129,3199,3264,3329,
+3391,3455,3514,3575,3640,3695,3751,3815,3880,3943,4029,4130,4189,4246,4319,4400,4475,4531,4577,4626,
+4703,4746,4808,4875,4941,5016,5082,5137,5190,5239,5276,5325,5358,5405,5454,5513,5570,5647,5719,5756,
+5806,5870,5918,5961,6019,6069,6114,6165,6210,6254,6289,6308,6304,6348,6364,6367,6373,6356,6359,6356,
+6365,6366,6357,6375,6374,6362,6347,6334,6317,6298,6292,6291,6304,6317,6342,6300,6238,6177,6147,6185,
+6199,6155,6085,6039,6012,5994,5971,5919,5865,5840,5817,5826,5845,5874,5897,5912,5901,5851,5817,5812,
+5781,5699,5564,5481,5504,5527,5512,5470,5491,5516,5530,5527,5487,5413,5324,5244,5184,5111,5037,4968,
+4901,4838,4793,4776,4800,4890,4993,5057,5104,5157,5228,5306,5364,5405,5436,5409,5336,5272,5236,5208,
+5169,5127,5178,5217,5215,5192,5133,5029,4922,4782,4731,4710,4635,4625,4623,4652,4694,4754,4832,4878,
+4887,4892,4880,4877,4883,4888,4898,4957,4960,4962,4965,4960,4956,4949,4948,4966,5010,5057,5080,5047,
+5028,5018,5021,5007,4999,4990,4984,4980,4979,5003,5025,5029,5023,5001,4957,4884,4786,4726,4691,4640,
+4585,4549,4557,4605,4689,4731,4753,4766,4750,4755,4742,4746,4731,4702,4662,4631,4561,4505,4430,4344,
+4275,4251,4235,4222,4210,4209,4210,4210,4207,4225,4263,4299,4305,4306,4343,4382,4407,4443,4428,4509,
+4574,4631,4611,4648,4661,4646,4658,4671,4639,4626,4618,4577,4534,4509,4499,4529,4505,4526,4467,4366,
+4272,4212,4178,4157,4135,4119,4097,4059,4032,4008,3998,3991,3980,3953,3931,3894,3845,3789,3727,3639,
+3545,3446,3344,3251,3148,3045,2998,2990,2954,2909,2856,2785,2700,2616,2529,2440,2346,2250,2164,2103,
+2054,2002,1944,1887,1839,1801,1773,1754,1746,1743,1745,1757,1771,1762,1735,1678,1590,1490,1394,1312,
+1253,1215,1216,1260,1360,1549,1791,2004,2299,2448,2521,2560,2565,2557,2502,2446,2373,2334,2221,2024,
+1814,1536,1277,1081,940,832,709,574,428,275,130,-13,-149,-280,-406,-525,-633,-725,-807,-870,
+-910,-935,-949,-965,-982,-1000,-1023,-1053,-1076,-1085,-1097,-1111,-1142,-1175,-1200,-1214,-1239,-1275,-1330,-1390,
+-1465,-1545,-1616,-1664,-1686,-1708,-1720,-1741,-1780,-1829,-1888,-1951,-2014,-2083,-2159,-2236,-2312,-2394,-2464,-2521,
+-2573,-2625,-2666,-2706,-2746,-2783,-2829,-2869,-2897,-2917,-2943,-2999,-3062,-3129,-3185,-3210,-3224,-3259,-3307,-3345,
+-3387,-3445,-3517,-3576,-3620,-3671,-3727,-3774,-3802,-3842,-3889,-3931,-3969,-4002,-4042,-4067,-4073,-4074,-4061,-4030,
+-3990,-3953,-3923,-3928,-3962,-3978,-3986,-4025,-4082,-4123,-4172,-4223,-4245,-4263,-4301,-4332,-4356,-4377,-4391,-4400,
+-4405,-4407,-4415,-4392,-4338,-4281,-4246,-4280,-4323,-4366,-4403,-4446,-4492,-4536,-4586,-4615,-4615,-4600,-4595,-4592,
+-4603,-4597,-4579,-4595,-4646,-4670,-4672,-4694,-4774,-4836,-4855,-4858,-4882,-4958,-5084,-5224,-5311,-5358,-5393,-5364,
+-5328,-5273,-5157,-5057,-4958,-4899,-4835,-4776,-4803,-4921,-5047,-5108,-5272,-5514,-5740,-5859,-5947,-6011,-6017,-5971,
+-5876,-5800,-5657,-5560,-5545,-5573,-5614,-5618,-5626,-5690,-5787,-5883,-5938,-6017,-6009,-5902,-5814,-5769,-5726,-5615,
+-5544,-5536,-5497,-5504,-5608,-5766,-5895,-5976,-6044,-6071,-6018,-5913,-5796,-5701,-5661,-5650,-5642,-5622,-5614,-5597,
+-5546,-5517,-5504,-5484,-5461,-5453,-5381,-5278,-5187,-5104,-5042,-5012,-4997,-4974,-4908,-4852,-4816,-4755,-4696,-4681,
+-4663,-4607,-4501,-4402,-4406,-4421,-4400,-4353,-4287,-4260,-4232,-4186,-4134,-4085,-4021,-3964,-3925,-3882,-3847,-3797,
+-3738,-3656,-3580,-3498,-3408,-3322,-3230,-3146,-3069,-2985,-2888,-2817,-2737,-2667,-2592,-2506,-2420,-2332,-2237,-2146,
+-2064,-1966,-1875,-1788,-1688,-1594,-1494,-1391,-1286,-1184,-1077,-968,-859,-768,-677,-597,-524,-444,-419,-387,
+-336,-284,-221,-152,-100,-51,6,61,126,185,237,290,340,400,465,533,603,669,743,822,
+897,965,1024,1092,1163,1233,1308,1391,1455,1515,1583,1663,1725,1788,1848,1889,1930,2014,2100,2123,
+2150,2196,2272,2333,2355,2346,2376,2439,2482,2516,2552,2584,2568,2557,2577,2586,2603,2637,2674,2660,
+2720,2754,2742,2760,2790,2807,2804,2806,2795,2715,2640,2587,2575,2586,2605,2629,2656,2681,2711,2739,
+2786,2808,2818,2828,2844,2898,2979,3054,3115,3138,3141,3153,3167,3219,3200,3152,3170,3208,3245,3236,
+3185,3173,3174,3188,3185,3150,3139,3132,3133,3127,3126,3070,2946,2733,2467,2149,1763,1396,1091,794,
+511,262,50,-59,-32,86,244,419,595,762,904,1029,1131,1209,1266,1301,1315,1321,1317,1317,
+1312,1302,1282,1247,1209,1195,1177,1144,1107,1072,1020,971,931,890,840,787,729,671,614,559,
+512,473,430,396,359,324,286,254,220,175,135,90,52,0,-45,-83,-119,-154,-192,-227,
+-262,-298,-333,-365,-389,-406,-423,-440,-457,-478,-494,-496,-514,-523,-542,-568,-589,-616,-664,-729,
+-800,-877,-943,-999,-1026,-995,-855,-618,-656,-800,-913,-1041,-1143,-1153,-1102,-1045,-986,-925,-897,-880,
+-858,-891,-910,-934,-975,-1018,-1051,-1086,-1102,-1067,-998,-939,-928,-918,-913,-915,-922,-933,-930,-930,
+-923,-915,-907,-903,-888,-877,-876,-885,-893,-890,-883,-884,-873,-847,-851,-853,-852,-838,-831,-834,
+-819,-791,-791,-775,-766,-752,-752,-750,-765,-741,-700,-700,-687,-680,-668,-688,-670,-650,-636,-629,
+-619,-620,-636,-659,-629,-621,-616,-612,-610,-606,-596,-583,-571,-568,-565,-560,-564,-567,-573,-575,
+-573,-570,-568,-576,-575,-582,-591,-597,-596,-600,-609,-623,-641,-665,-682,-692,-704,-711,-710,-707,
+-707,-706,-708,-715,-727,-737,-753,-758,-781,-800,-823,-839,-854,-865,-875,-885,-899,-911,-922,-935,
+-954,-974,-989,-1016,-1047,-1085,-1120,-1138,-1161,-1189,-1205,-1217,-1234,-1250,-1260,-1276,-1283,-1294,-1316,-1340,
+-1378,-1412,-1433,-1457,-1481,-1509,-1539,-1569,-1595,-1620,-1650,-1682,-1713,-1739,-1759,-1786,-1819,-1845,-1872,-1893,
+-1910,-1930,-1947,-1969,-1989,-2013,-2036,-2054,-2072,-2096,-2123,-2133,-2151,-2170,-2193,-2220,-2248,-2280,-2304,-2327,
+-2352,-2377,-2397,-2420,-2445,-2472,-2504,-2534,-2565,-2594,-2617,-2647,-2681,-2714,-2738,-2754,-2767,-2776,-2786,-2806,
+-2828,-2854,-2867,-2885,-2906,-2919,-2935,-2941,-2951,-2957,-2962,-2966,-2970,-2971,-2966,-2978,-2973,-2972,-2981,-2978,
+-2975,-2967,-2958,-2947,-2940,-2939,-2930,-2928,-2929,-2928,-2927,-2919,-2920,-2917,-2902,-2873,-2859,-2853,-2849,-2835,
+-2852,-2857,-2877,-2920,-2976,-3020,-2959,-2875,-2805,-2681,-2513,-2366,-2292,-2258,-2246,-2234,-2222,-2196,-2132,-2061,
+-2055,-2048,-2022,-2008,-1987,-1960,-1947,-1923,-1910,-1903,-1881,-1887,-1871,-1816,-1797,-1764,-1735,-1732,-1731,-1712,
+-1711,-1674,-1645,-1585,-1528,-1438,-1403,-1345,-1312,-1278,-1254,-1239,-1210,-1206,-1198,-1191,-1184,-1177,-1169,-1133,
+-1064,-1026,-981,-944,-945,-873,-853,-830,-768,-844,-928,-1044,-1155,-1239,-1290,-1262,-1241,-1168,-1087,-1129,
+-1236,-1322,-1398,-1453,-1492,-1523,-1530,-1542,-1553,-1545,-1514,-1468,-1459,-1528,-1645,-1726,-1790,-1844,-1903,-1973,
+-2047,-2121,-2206,-2299,-2380,-2442,-2495,-2549,-2581,-2607,-2629,-2635,-2642,-2641,-2650,-2661,-2631,-2611,-2620,-2636,
+-2648,-2661,-2672,-2672,-2677,-2715,-2771,-2806,-2835,-2842,-2855,-2882,-2949,-2972,-2922,-2904,-2992,-3026,-3054,-3046,
+-3040,-3086,-3170,-3253,-3346,-3408,-3479,-3525,-3558,-3570,-3577,-3570,-3559,-3543,-3538,-3555,-3578,-3593,-3589,-3568,
+-3527,-3485,-3455,-3433,-3390,-3334,-3308,-3327,-3372,-3413,-3454,-3484,-3497,-3486,-3480,-3488,-3512,-3534,-3565,-3585,
+-3592,-3591,-3592,-3588,-3603,-3631,-3654,-3673,-3698,-3717,-3721,-3715,-3715,-3710,-3699,-3686,-3681,-3695,-3677,-3619,
+-3580,-3548,-3503,-3435,-3352,-3275,-3214,-3120,-3035,-2992,-2972,-2972,-3014,-3041,-3007,-2900,-2805,-2830,-2832,-2812,
+-2806,-2804,-2788,-2764,-2749,-2717,-2679,-2660,-2652,-2642,-2613,-2599,-2579,-2548,-2504,-2484,-2464,-2431,-2407,-2363,
+-2343,-2340,-2362,-2385,-2387,-2374,-2347,-2317,-2288,-2273,-2246,-2200,-2166,-2129,-2102,-2075,-2032,-1998,-1968,-1934,
+-1890,-1857,-1812,-1746,-1676,-1601,-1529,-1492,-1493,-1504,-1517,-1549,-1587,-1607,-1587,-1563,-1511,-1438,-1355,-1254,
+-1138,-1030,-935,-845,-788,-762,-722,-684,-646,-611,-571,-507,-402,-271,-109,70,221,330,480,664,
+805,924,1032,1135,1230,1343,1440,1524,1591,1656,1689,1677,1688,1738,1791,1827,1862,1913,1958,1987,
+2026,2076,2136,2200,2256,2316,2382,2424,2471,2519,2585,2658,2734,2806,2871,2941,3002,3082,3158,3231,
+3302,3375,3443,3501,3558,3621,3681,3735,3805,3874,3934,4003,4079,4154,4229,4316,4397,4470,4512,4550,
+4595,4654,4714,4776,4860,4935,4998,5060,5111,5152,5199,5246,5293,5338,5403,5444,5500,5563,5639,5698,
+5747,5788,5848,5897,5955,5998,6054,6105,6155,6220,6262,6253,6321,6336,6332,6344,6332,6330,6333,6330,
+6326,6325,6325,6339,6338,6339,6325,6310,6301,6278,6267,6256,6254,6258,6265,6287,6298,6308,6284,6191,
+6154,6095,6139,6099,6027,5981,5952,5940,5908,5860,5844,5835,5849,5889,5914,5926,5913,5874,5842,5806,
+5766,5716,5628,5531,5479,5489,5498,5471,5409,5384,5382,5394,5393,5364,5317,5268,5237,5182,5150,5134,
+5108,5063,5005,4941,4926,4993,5097,5148,5229,5282,5334,5370,5399,5444,5495,5564,5591,5542,5487,5448,
+5429,5409,5407,5389,5370,5362,5323,5267,5192,5107,5051,5021,5008,4978,4923,4888,4862,4829,4807,4837,
+4888,4926,4951,4952,4945,4942,4951,4957,5059,5054,5055,5040,5019,4992,4974,4958,4944,4964,4981,4988,
+4991,4995,4997,4990,4984,4980,4977,4970,4950,4950,4963,4982,4980,4960,4913,4815,4689,4630,4643,4642,
+4604,4566,4551,4574,4627,4723,4788,4793,4794,4806,4800,4820,4826,4812,4785,4768,4744,4718,4663,4609,
+4538,4434,4331,4280,4258,4255,4240,4226,4215,4214,4229,4255,4276,4283,4311,4306,4293,4319,4275,4281,
+4377,4457,4522,4578,4614,4636,4640,4632,4654,4657,4619,4630,4604,4569,4554,4511,4520,4519,4522,4568,
+4500,4389,4333,4278,4227,4198,4187,4169,4141,4102,4073,4054,4043,4035,4001,3947,3897,3845,3784,3706,
+3597,3498,3401,3282,3148,2997,2904,2892,2906,2888,2851,2819,2786,2726,2647,2563,2477,2386,2294,2210,
+2146,2096,2051,2010,1968,1931,1901,1875,1853,1832,1805,1790,1788,1807,1825,1835,1817,1763,1683,1582,
+1475,1378,1302,1256,1249,1295,1391,1560,1777,1995,2203,2308,2325,2419,2484,2520,2538,2498,2463,2374,
+2285,2129,1875,1604,1382,1216,1107,1007,864,676,501,350,205,76,-65,-216,-378,-525,-635,-742,
+-818,-867,-899,-920,-936,-957,-981,-1002,-1017,-1032,-1043,-1059,-1075,-1103,-1134,-1164,-1191,-1232,-1285,-1340,
+-1397,-1455,-1520,-1599,-1678,-1737,-1774,-1781,-1789,-1815,-1849,-1892,-1945,-1997,-2062,-2142,-2228,-2314,-2395,-2468,
+-2524,-2569,-2623,-2662,-2690,-2724,-2757,-2799,-2838,-2858,-2870,-2907,-2966,-3033,-3108,-3163,-3186,-3202,-3227,-3259,
+-3304,-3357,-3408,-3474,-3526,-3577,-3647,-3708,-3768,-3814,-3853,-3895,-3941,-3987,-4031,-4085,-4132,-4158,-4171,-4183,
+-4185,-4175,-4162,-4137,-4108,-4073,-4027,-3957,-3934,-4000,-4087,-4146,-4177,-4192,-4210,-4236,-4257,-4270,-4299,-4331,
+-4357,-4376,-4389,-4386,-4379,-4367,-4327,-4273,-4221,-4186,-4242,-4278,-4327,-4370,-4416,-4450,-4410,-4301,-4213,-4204,
+-4208,-4292,-4390,-4416,-4450,-4435,-4360,-4317,-4369,-4455,-4503,-4572,-4665,-4748,-4848,-4977,-5064,-5137,-5198,-5222,
+-5190,-5146,-5101,-5090,-5118,-5075,-4992,-4893,-4809,-4778,-4791,-4872,-4951,-5053,-5195,-5335,-5470,-5614,-5743,-5889,
+-6012,-6095,-6128,-6093,-6037,-5975,-5919,-5904,-5967,-6024,-6093,-6178,-6229,-6237,-6248,-6268,-6216,-6140,-6064,-6006,
+-5917,-5818,-5710,-5608,-5492,-5445,-5550,-5703,-5844,-5957,-6023,-6021,-5936,-5791,-5651,-5613,-5615,-5616,-5582,-5553,
+-5536,-5497,-5469,-5464,-5479,-5481,-5438,-5359,-5256,-5149,-5065,-5028,-5023,-5018,-4982,-4922,-4899,-4879,-4821,-4784,
+-4743,-4699,-4641,-4563,-4486,-4423,-4384,-4402,-4359,-4300,-4258,-4233,-4204,-4139,-4085,-4055,-3998,-3952,-3897,-3855,
+-3799,-3715,-3627,-3536,-3457,-3374,-3300,-3224,-3145,-3055,-2987,-2892,-2811,-2734,-2658,-2572,-2479,-2391,-2301,-2213,
+-2131,-2053,-1966,-1884,-1799,-1695,-1600,-1501,-1390,-1278,-1174,-1065,-949,-836,-745,-657,-572,-508,-466,-414,
+-372,-324,-272,-218,-158,-93,-34,27,92,150,207,263,314,367,430,497,565,634,704,778,
+858,937,1003,1063,1128,1203,1282,1353,1415,1492,1574,1654,1719,1793,1840,1879,1924,1990,2077,2161,
+2178,2207,2244,2289,2329,2358,2352,2378,2445,2496,2533,2553,2551,2550,2566,2602,2623,2645,2644,2655,
+2648,2683,2760,2777,2810,2818,2827,2804,2775,2707,2619,2594,2593,2593,2604,2628,2658,2691,2719,2745,
+2774,2816,2837,2866,2866,2885,2884,2950,3106,3215,3293,3258,3236,3180,3149,3110,3130,3192,3211,3199,
+3124,3039,3022,3094,3139,3090,3096,3122,3141,3130,3054,2901,2705,2466,2142,1801,1491,1212,949,671,
+430,246,126,95,182,343,525,701,871,1025,1149,1242,1307,1355,1385,1400,1404,1398,1382,1366,
+1357,1341,1324,1295,1247,1212,1187,1158,1126,1086,1040,983,936,901,853,799,748,693,634,580,
+531,482,438,398,359,315,278,242,206,176,140,95,60,13,-27,-77,-122,-155,-190,-231,
+-272,-312,-345,-376,-403,-424,-442,-457,-474,-493,-498,-505,-517,-536,-553,-573,-604,-627,-643,-689,
+-744,-811,-885,-962,-1019,-1047,-1021,-876,-751,-741,-691,-810,-1046,-1150,-1171,-1117,-1071,-1010,-960,-916,
+-879,-878,-906,-927,-946,-984,-1031,-1066,-1102,-1132,-1121,-1046,-979,-958,-952,-949,-944,-953,-964,-970,
+-961,-955,-951,-944,-945,-935,-923,-924,-935,-941,-935,-920,-909,-901,-890,-882,-886,-885,-865,-880,
+-879,-875,-868,-834,-829,-822,-838,-832,-789,-795,-829,-793,-756,-724,-732,-741,-720,-691,-668,-651,
+-643,-652,-668,-671,-660,-660,-665,-666,-661,-652,-648,-640,-629,-623,-624,-624,-621,-625,-629,-633,
+-633,-629,-623,-620,-625,-628,-638,-646,-654,-659,-674,-681,-691,-707,-722,-737,-744,-753,-754,-752,
+-750,-753,-755,-761,-769,-782,-794,-804,-817,-833,-852,-868,-886,-901,-916,-924,-933,-944,-958,-974,
+-989,-1009,-1032,-1052,-1073,-1104,-1139,-1160,-1173,-1181,-1189,-1211,-1212,-1231,-1249,-1267,-1288,-1311,-1332,-1352,
+-1378,-1411,-1445,-1470,-1513,-1539,-1563,-1587,-1608,-1633,-1664,-1692,-1721,-1749,-1779,-1801,-1827,-1851,-1873,-1896,
+-1916,-1937,-1956,-1980,-1998,-2025,-2052,-2074,-2096,-2114,-2134,-2153,-2176,-2196,-2220,-2241,-2265,-2286,-2309,-2331,
+-2360,-2391,-2419,-2446,-2468,-2488,-2509,-2537,-2567,-2595,-2615,-2642,-2675,-2707,-2740,-2766,-2789,-2803,-2813,-2830,
+-2852,-2876,-2893,-2903,-2922,-2941,-2956,-2968,-2974,-2980,-2984,-2988,-2992,-2995,-2997,-3002,-3004,-3004,-3005,-3009,
+-3013,-3016,-3011,-3002,-2994,-2986,-2975,-2960,-2947,-2947,-2933,-2930,-2931,-2930,-2918,-2913,-2902,-2890,-2873,-2892,
+-2903,-2886,-2883,-2894,-2937,-2999,-3049,-3007,-2890,-2782,-2669,-2517,-2380,-2315,-2307,-2295,-2287,-2247,-2204,-2135,
+-2067,-2082,-2055,-2030,-2023,-2012,-2007,-1976,-1953,-1933,-1926,-1919,-1899,-1869,-1834,-1797,-1773,-1760,-1746,-1683,
+-1651,-1652,-1665,-1614,-1591,-1559,-1494,-1452,-1420,-1394,-1363,-1336,-1307,-1284,-1255,-1248,-1235,-1227,-1225,-1204,
+-1138,-1081,-1051,-1027,-1005,-1011,-1010,-977,-896,-767,-751,-925,-1109,-1251,-1366,-1423,-1418,-1390,-1342,-1269,
+-1262,-1293,-1330,-1378,-1432,-1485,-1522,-1542,-1548,-1554,-1546,-1508,-1507,-1536,-1611,-1692,-1752,-1794,-1830,-1881,
+-1930,-1991,-2058,-2124,-2205,-2289,-2357,-2416,-2467,-2518,-2568,-2604,-2632,-2649,-2666,-2672,-2662,-2633,-2602,-2614,
+-2636,-2645,-2655,-2671,-2688,-2720,-2781,-2844,-2877,-2885,-2874,-2888,-2922,-2969,-2954,-2867,-2964,-3070,-3091,-3066,
+-3053,-3042,-3093,-3172,-3250,-3328,-3394,-3436,-3468,-3491,-3498,-3517,-3522,-3513,-3508,-3512,-3544,-3578,-3579,-3560,
+-3524,-3496,-3460,-3433,-3422,-3399,-3357,-3323,-3315,-3329,-3352,-3391,-3444,-3468,-3474,-3480,-3484,-3494,-3527,-3554,
+-3569,-3583,-3584,-3584,-3596,-3618,-3641,-3660,-3674,-3686,-3691,-3680,-3674,-3661,-3642,-3628,-3618,-3633,-3649,-3614,
+-3576,-3543,-3509,-3472,-3428,-3380,-3332,-3270,-3196,-3114,-3058,-3055,-3053,-3090,-3092,-3019,-2887,-2814,-2849,-2827,
+-2812,-2825,-2819,-2787,-2774,-2744,-2715,-2703,-2673,-2652,-2647,-2653,-2642,-2617,-2585,-2551,-2521,-2492,-2451,-2432,
+-2394,-2382,-2395,-2419,-2441,-2443,-2421,-2370,-2319,-2267,-2240,-2211,-2168,-2136,-2098,-2084,-2068,-2041,-2021,-1998,
+-1968,-1927,-1902,-1884,-1842,-1811,-1786,-1748,-1736,-1752,-1762,-1757,-1755,-1757,-1759,-1730,-1685,-1614,-1526,-1420,
+-1309,-1187,-1064,-970,-880,-822,-800,-766,-739,-710,-677,-631,-566,-476,-364,-225,-62,70,197,351,
+507,662,829,974,1089,1193,1284,1384,1470,1546,1618,1677,1731,1764,1789,1811,1829,1862,1901,1936,
+1955,1981,2019,2062,2113,2172,2228,2284,2337,2398,2464,2537,2619,2700,2776,2833,2885,2955,3033,3107,
+3178,3251,3330,3394,3445,3504,3572,3641,3708,3785,3867,3927,3990,4071,4150,4230,4307,4382,4443,4484,
+4522,4578,4640,4697,4760,4831,4898,4963,5029,5085,5131,5178,5211,5258,5311,5372,5427,5472,5546,5606,
+5669,5728,5796,5838,5877,5945,6007,6049,6103,6153,6191,6239,6230,6286,6313,6310,6314,6291,6279,6286,
+6291,6290,6288,6290,6291,6295,6298,6281,6271,6258,6252,6250,6227,6212,6213,6213,6224,6226,6222,6206,
+6167,6091,6010,6016,6093,6080,5939,5876,5852,5843,5866,5869,5858,5864,5888,5900,5872,5838,5790,5766,
+5738,5706,5663,5583,5531,5510,5483,5455,5406,5339,5277,5238,5220,5208,5211,5225,5257,5264,5289,5367,
+5441,5426,5355,5290,5196,5111,5127,5186,5254,5321,5434,5473,5489,5520,5554,5576,5639,5649,5636,5644,
+5636,5619,5600,5596,5564,5512,5504,5499,5512,5485,5375,5291,5230,5215,5174,5116,5067,5034,5010,4962,
+4969,5019,5063,5096,5106,5081,5058,5056,5059,5289,5290,5294,5262,5199,5148,5112,5055,5031,5029,5049,
+5038,5018,4992,4975,4967,4963,4964,4954,4938,4886,4837,4828,4825,4821,4811,4743,4656,4575,4574,4607,
+4608,4583,4563,4565,4614,4679,4812,4862,4812,4810,4818,4827,4838,4850,4850,4857,4848,4818,4800,4773,
+4762,4742,4647,4462,4336,4272,4263,4264,4254,4241,4229,4234,4251,4290,4310,4316,4319,4307,4284,4243,
+4243,4282,4338,4398,4451,4491,4556,4558,4554,4616,4627,4613,4604,4629,4575,4598,4555,4539,4570,4576,
+4527,4516,4494,4446,4352,4319,4301,4275,4244,4207,4180,4142,4104,4090,4081,4039,3983,3922,3843,3773,
+3680,3564,3461,3337,3155,2991,2897,2868,2881,2894,2891,2856,2816,2776,2722,2658,2582,2498,2415,2331,
+2261,2202,2162,2124,2093,2071,2050,2032,2007,1978,1946,1909,1872,1849,1848,1859,1882,1892,1874,1825,
+1761,1675,1571,1468,1388,1341,1340,1369,1442,1588,1734,1841,1926,1964,2036,2150,2317,2387,2375,2403,
+2381,2390,2322,2208,1997,1790,1623,1503,1401,1296,1151,928,760,632,498,380,220,-33,-273,-458,
+-627,-741,-807,-846,-878,-910,-940,-969,-993,-1007,-1019,-1026,-1029,-1048,-1079,-1106,-1133,-1170,-1219,-1275,
+-1343,-1404,-1459,-1509,-1572,-1655,-1732,-1789,-1808,-1827,-1864,-1907,-1950,-1992,-2039,-2086,-2138,-2214,-2301,-2380,
+-2450,-2510,-2553,-2595,-2639,-2673,-2695,-2711,-2747,-2789,-2813,-2835,-2885,-2942,-2999,-3074,-3122,-3144,-3161,-3179,
+-3209,-3252,-3304,-3346,-3402,-3460,-3521,-3595,-3665,-3741,-3802,-3854,-3906,-3953,-4007,-4060,-4115,-4175,-4221,-4246,
+-4265,-4286,-4303,-4307,-4293,-4257,-4199,-4128,-4029,-3941,-3913,-3977,-4077,-4110,-4115,-4121,-4119,-4126,-4137,-4164,
+-4206,-4254,-4299,-4332,-4351,-4362,-4359,-4333,-4299,-4242,-4174,-4115,-4070,-4099,-4056,-4041,-4000,-3942,-3892,-3926,
+-4000,-4088,-4184,-4236,-4285,-4299,-4293,-4273,-4302,-4371,-4429,-4502,-4605,-4683,-4733,-4776,-4833,-4875,-4850,-4862,
+-4892,-4916,-4952,-5006,-5055,-5096,-5068,-4991,-4931,-4911,-4904,-4894,-4892,-4960,-5068,-5128,-5154,-5231,-5406,-5655,
+-5948,-6194,-6357,-6457,-6512,-6524,-6513,-6481,-6451,-6432,-6437,-6460,-6484,-6488,-6484,-6469,-6463,-6445,-6415,-6371,
+-6326,-6263,-6190,-6095,-5961,-5745,-5508,-5448,-5555,-5729,-5841,-5894,-5933,-5913,-5824,-5738,-5682,-5662,-5644,-5600,
+-5565,-5550,-5495,-5459,-5447,-5448,-5465,-5448,-5396,-5321,-5264,-5219,-5179,-5129,-5082,-5032,-4975,-4935,-4921,-4908,
+-4884,-4845,-4780,-4732,-4662,-4581,-4486,-4392,-4347,-4341,-4290,-4244,-4228,-4224,-4179,-4120,-4060,-4002,-3956,-3914,
+-3854,-3772,-3680,-3590,-3495,-3415,-3326,-3254,-3174,-3094,-3033,-2966,-2877,-2797,-2717,-2632,-2533,-2437,-2349,-2261,
+-2183,-2104,-2022,-1932,-1846,-1757,-1667,-1572,-1466,-1365,-1260,-1153,-1046,-940,-839,-746,-655,-570,-508,-445,
+-370,-320,-269,-228,-190,-146,-80,-16,33,100,168,228,286,343,398,465,535,601,665,736,
+809,886,966,1027,1092,1166,1249,1340,1418,1491,1564,1632,1697,1754,1808,1856,1904,1968,2040,2122,
+2170,2227,2261,2296,2320,2333,2348,2365,2391,2422,2447,2465,2502,2524,2532,2557,2595,2623,2651,2666,
+2664,2646,2674,2735,2769,2826,2812,2787,2751,2681,2618,2602,2608,2616,2631,2657,2671,2697,2725,2754,
+2777,2796,2826,2855,2871,2887,2922,2914,2991,3129,3235,3299,3329,3341,3257,3117,3041,3032,3081,3172,
+3185,2993,2875,2883,2921,2917,2942,2982,2972,2910,2795,2638,2396,2079,1821,1585,1327,1084,858,632,
+438,305,246,286,411,583,770,953,1110,1236,1332,1408,1461,1491,1500,1493,1480,1467,1448,1423,
+1400,1381,1360,1335,1297,1256,1213,1182,1145,1106,1062,1000,945,899,855,806,756,703,645,593,
+545,506,455,403,359,312,271,234,197,163,132,104,66,31,-16,-63,-103,-150,-168,-220,
+-260,-288,-329,-369,-407,-433,-450,-470,-485,-500,-518,-528,-526,-541,-568,-587,-602,-633,-661,-678,
+-722,-774,-832,-899,-975,-1043,-1082,-1076,-1010,-885,-642,-605,-862,-1045,-1152,-1189,-1167,-1098,-1035,-978,
+-935,-907,-902,-913,-932,-962,-998,-1040,-1073,-1106,-1142,-1151,-1091,-1004,-982,-969,-971,-966,-975,-989,
+-992,-990,-990,-988,-987,-974,-965,-950,-950,-967,-981,-976,-957,-951,-940,-922,-922,-917,-930,-954,
+-939,-883,-898,-888,-902,-918,-870,-866,-877,-878,-891,-868,-841,-827,-821,-815,-793,-755,-721,-708,
+-702,-692,-702,-717,-705,-684,-677,-686,-693,-701,-702,-688,-674,-671,-675,-677,-675,-673,-673,-673,
+-682,-682,-675,-666,-664,-665,-661,-685,-695,-706,-715,-709,-716,-739,-763,-777,-781,-788,-792,-792,
+-794,-795,-799,-810,-818,-828,-830,-839,-849,-856,-873,-895,-905,-922,-942,-961,-976,-988,-1000,-1014,
+-1032,-1055,-1076,-1097,-1114,-1120,-1128,-1131,-1144,-1156,-1168,-1184,-1210,-1229,-1248,-1274,-1297,-1322,-1351,-1376,
+-1399,-1421,-1449,-1481,-1513,-1541,-1570,-1600,-1630,-1661,-1690,-1714,-1740,-1765,-1792,-1814,-1840,-1863,-1886,-1913,
+-1938,-1962,-1985,-2009,-2029,-2047,-2067,-2091,-2123,-2139,-2158,-2175,-2194,-2211,-2237,-2259,-2281,-2302,-2322,-2347,
+-2371,-2400,-2429,-2460,-2490,-2514,-2536,-2556,-2580,-2603,-2631,-2652,-2673,-2695,-2726,-2756,-2781,-2806,-2828,-2845,
+-2863,-2891,-2914,-2929,-2944,-2963,-2981,-2996,-3004,-3009,-3015,-3018,-3025,-3028,-3030,-3031,-3032,-3031,-3031,-3028,
+-3035,-3039,-3040,-3043,-3042,-3035,-3025,-3009,-3000,-2990,-2979,-2968,-2957,-2957,-2955,-2951,-2939,-2921,-2924,-2906,
+-2895,-2893,-2900,-2885,-2889,-2922,-2984,-3044,-3041,-2903,-2764,-2648,-2509,-2411,-2360,-2339,-2334,-2305,-2276,-2204,
+-2131,-2100,-2121,-2091,-2031,-2020,-2024,-2005,-1987,-1974,-1949,-1927,-1906,-1882,-1868,-1806,-1811,-1794,-1785,-1740,
+-1694,-1643,-1594,-1656,-1674,-1640,-1590,-1562,-1540,-1514,-1475,-1426,-1378,-1346,-1326,-1309,-1300,-1306,-1298,-1256,
+-1202,-1157,-1134,-1113,-1077,-1071,-1034,-1037,-1087,-1084,-947,-807,-842,-1046,-1236,-1361,-1412,-1406,-1375,-1343,
+-1334,-1329,-1315,-1327,-1360,-1404,-1452,-1484,-1509,-1521,-1510,-1489,-1490,-1536,-1592,-1651,-1722,-1788,-1804,-1822,
+-1853,-1895,-1943,-1998,-2059,-2113,-2184,-2254,-2317,-2376,-2437,-2495,-2543,-2585,-2608,-2625,-2635,-2628,-2612,-2591,
+-2585,-2590,-2585,-2611,-2645,-2684,-2736,-2814,-2873,-2898,-2905,-2892,-2925,-2956,-2953,-2856,-2849,-3048,-3136,-3139,
+-3109,-3091,-3088,-3117,-3168,-3228,-3285,-3345,-3388,-3412,-3435,-3451,-3466,-3469,-3471,-3477,-3505,-3536,-3566,-3564,
+-3540,-3510,-3483,-3456,-3421,-3408,-3407,-3403,-3397,-3388,-3368,-3355,-3366,-3397,-3445,-3484,-3512,-3536,-3526,-3535,
+-3548,-3558,-3576,-3590,-3602,-3615,-3626,-3640,-3651,-3654,-3651,-3643,-3624,-3614,-3595,-3565,-3547,-3530,-3554,-3568,
+-3559,-3537,-3506,-3459,-3416,-3380,-3338,-3307,-3265,-3232,-3199,-3163,-3153,-3150,-3166,-3142,-3056,-2894,-2858,-2869,
+-2832,-2816,-2827,-2828,-2802,-2779,-2750,-2735,-2711,-2688,-2675,-2671,-2684,-2668,-2636,-2616,-2583,-2550,-2520,-2505,
+-2468,-2437,-2424,-2439,-2459,-2442,-2418,-2400,-2352,-2298,-2257,-2234,-2215,-2175,-2141,-2122,-2114,-2098,-2087,-2073,
+-2042,-2030,-2022,-2055,-2084,-2069,-2044,-2022,-1994,-1966,-1945,-1940,-1928,-1919,-1910,-1873,-1832,-1771,-1692,-1593,
+-1479,-1362,-1246,-1127,-1024,-941,-880,-862,-823,-792,-761,-726,-680,-627,-554,-464,-356,-210,-65,89,
+256,414,572,720,852,984,1118,1223,1312,1377,1449,1524,1637,1700,1724,1742,1752,1774,1814,1861,
+1879,1888,1912,1953,1998,2055,2117,2174,2230,2287,2342,2408,2489,2576,2652,2720,2777,2837,2899,2975,
+3049,3122,3193,3268,3332,3388,3454,3518,3593,3665,3748,3843,3924,3984,4047,4136,4216,4281,4355,4425,
+4471,4513,4565,4629,4686,4753,4797,4855,4919,4995,5051,5092,5138,5191,5235,5300,5360,5402,5469,5533,
+5591,5659,5701,5765,5818,5871,5929,5986,6029,6107,6155,6200,6201,6255,6273,6264,6252,6236,6241,6247,
+6240,6246,6239,6237,6251,6237,6236,6237,6237,6232,6224,6208,6201,6175,6165,6168,6174,6180,6181,6170,
+6140,6117,6076,5992,5928,5961,5992,5928,5793,5731,5721,5753,5826,5838,5830,5827,5822,5789,5742,5698,
+5673,5659,5644,5614,5573,5570,5548,5487,5399,5324,5246,5168,5119,5100,5104,5124,5158,5201,5287,5436,
+5509,5545,5501,5414,5369,5329,5255,5215,5262,5325,5436,5546,5567,5585,5606,5639,5670,5697,5680,5667,
+5707,5706,5736,5763,5779,5746,5691,5667,5643,5641,5654,5572,5490,5387,5310,5239,5201,5155,5153,5111,
+5072,5075,5082,5130,5172,5208,5241,5264,5288,5289,5436,5439,5424,5400,5429,5385,5336,5274,5266,5207,
+5117,5057,5005,4980,4959,4936,4922,4915,4889,4850,4802,4763,4730,4692,4648,4597,4550,4542,4558,4578,
+4593,4588,4581,4574,4612,4718,4832,4909,4904,4793,4804,4834,4827,4836,4843,4866,4895,4892,4876,4878,
+4866,4864,4871,4816,4654,4438,4318,4291,4299,4297,4292,4287,4283,4275,4286,4315,4333,4343,4323,4281,
+4240,4211,4225,4232,4266,4291,4291,4365,4396,4484,4560,4581,4520,4548,4559,4587,4601,4612,4611,4645,
+4626,4571,4519,4461,4437,4440,4422,4418,4382,4357,4343,4283,4235,4177,4123,4075,4029,3956,3908,3854,
+3797,3727,3616,3491,3333,3167,3044,2975,2954,2945,2934,2910,2871,2826,2776,2725,2665,2594,2518,2441,
+2367,2315,2286,2263,2236,2214,2203,2192,2192,2178,2145,2098,2052,2006,1948,1921,1915,1927,1944,1937,
+1894,1850,1798,1734,1660,1581,1514,1468,1440,1448,1505,1588,1638,1650,1717,1805,1841,1977,2101,2239,
+2312,2261,2289,2293,2250,2255,2167,2118,2028,1900,1785,1630,1413,1244,1117,958,763,542,312,29,
+-223,-468,-640,-740,-793,-831,-876,-925,-971,-1007,-1030,-1041,-1052,-1069,-1082,-1092,-1092,-1117,-1156,-1204,
+-1254,-1305,-1361,-1422,-1485,-1542,-1614,-1703,-1757,-1808,-1854,-1902,-1943,-1998,-2048,-2101,-2160,-2217,-2270,-2319,
+-2369,-2414,-2469,-2525,-2576,-2626,-2655,-2659,-2659,-2688,-2733,-2775,-2810,-2861,-2920,-2969,-3024,-3065,-3102,-3143,
+-3176,-3192,-3212,-3249,-3278,-3331,-3401,-3461,-3523,-3586,-3657,-3736,-3824,-3912,-3985,-4042,-4088,-4139,-4199,-4252,
+-4289,-4314,-4345,-4375,-4386,-4376,-4350,-4299,-4212,-4097,-3978,-3911,-3878,-3886,-3939,-3984,-4000,-3939,-3825,-3788,
+-3823,-3896,-3946,-3992,-4066,-4135,-4155,-4138,-4130,-4132,-4155,-4158,-4118,-4063,-4015,-3943,-3901,-3894,-3939,-4018,
+-4117,-4188,-4213,-4246,-4241,-4216,-4195,-4169,-4138,-4184,-4273,-4351,-4426,-4482,-4493,-4484,-4504,-4574,-4695,-4721,
+-4760,-4787,-4799,-4869,-4981,-5084,-5137,-5118,-5051,-4947,-4877,-4894,-4957,-5033,-5147,-5259,-5247,-5218,-5277,-5394,
+-5583,-5889,-6216,-6408,-6529,-6615,-6666,-6686,-6680,-6656,-6604,-6551,-6519,-6508,-6501,-6486,-6480,-6492,-6504,-6519,
+-6512,-6475,-6418,-6339,-6269,-6176,-6049,-5894,-5785,-5773,-5795,-5822,-5853,-5874,-5864,-5824,-5790,-5765,-5723,-5688,
+-5663,-5647,-5627,-5584,-5538,-5513,-5516,-5506,-5478,-5449,-5413,-5400,-5370,-5325,-5276,-5215,-5153,-5092,-5042,-5002,
+-4963,-4934,-4898,-4846,-4784,-4717,-4649,-4550,-4466,-4406,-4360,-4318,-4292,-4258,-4243,-4207,-4148,-4084,-4034,-3983,
+-3918,-3828,-3737,-3642,-3555,-3471,-3402,-3319,-3231,-3156,-3077,-3002,-2936,-2858,-2772,-2689,-2599,-2501,-2414,-2328,
+-2237,-2153,-2070,-1991,-1907,-1820,-1729,-1646,-1547,-1449,-1356,-1251,-1148,-1049,-950,-850,-756,-670,-576,-485,
+-385,-323,-255,-221,-195,-155,-115,-61,-7,59,135,196,249,312,376,437,501,563,626,691,
+762,835,914,993,1056,1121,1200,1290,1377,1459,1545,1616,1676,1729,1786,1842,1911,1994,2048,2095,
+2155,2206,2258,2306,2379,2412,2386,2375,2406,2434,2463,2429,2449,2468,2490,2508,2536,2586,2622,2659,
+2677,2707,2703,2716,2744,2763,2762,2752,2715,2677,2641,2593,2615,2630,2658,2684,2711,2716,2737,2761,
+2784,2807,2835,2862,2882,2894,2913,2963,2988,3119,3283,3345,3360,3350,3347,3269,3082,2933,2844,2852,
+3046,3184,2966,2771,2653,2564,2493,2501,2532,2489,2375,2199,1986,1786,1594,1412,1218,1023,834,674,
+534,445,442,508,649,817,991,1150,1281,1386,1465,1524,1558,1582,1594,1584,1567,1536,1512,1476,
+1442,1418,1392,1362,1324,1283,1246,1210,1174,1126,1080,1021,961,903,851,801,754,707,652,595,
+549,511,469,426,378,331,285,235,192,157,128,89,60,30,-20,-61,-101,-139,-175,-211,
+-256,-303,-339,-370,-396,-425,-446,-470,-488,-509,-523,-533,-546,-562,-564,-588,-618,-632,-660,-682,
+-715,-749,-799,-860,-931,-1006,-1079,-1129,-1138,-1080,-892,-665,-737,-871,-984,-1155,-1210,-1198,-1153,-1092,
+-1031,-964,-932,-935,-932,-951,-977,-1011,-1047,-1068,-1105,-1144,-1168,-1168,-1113,-1060,-1012,-1000,-992,-1002,
+-1018,-1022,-1026,-1021,-1010,-1012,-1005,-1004,-992,-1007,-1009,-996,-1001,-986,-967,-968,-967,-971,-982,-989,
+-981,-953,-970,-975,-959,-969,-941,-940,-960,-969,-964,-947,-924,-903,-892,-881,-861,-827,-795,-762,
+-744,-730,-723,-728,-731,-729,-727,-731,-739,-744,-741,-739,-735,-734,-740,-736,-730,-722,-716,-716,
+-713,-716,-708,-706,-697,-695,-707,-715,-729,-742,-751,-756,-766,-774,-780,-795,-810,-819,-833,-835,
+-836,-838,-836,-843,-856,-871,-878,-875,-875,-885,-898,-908,-930,-949,-971,-986,-1001,-1022,-1047,-1070,
+-1082,-1094,-1102,-1102,-1102,-1108,-1122,-1138,-1159,-1177,-1191,-1204,-1213,-1241,-1255,-1280,-1307,-1334,-1362,-1402,
+-1429,-1449,-1475,-1496,-1526,-1551,-1574,-1604,-1636,-1670,-1703,-1735,-1761,-1783,-1805,-1828,-1853,-1878,-1894,-1924,
+-1951,-1977,-1999,-2024,-2049,-2074,-2095,-2120,-2142,-2163,-2180,-2196,-2217,-2236,-2258,-2279,-2301,-2323,-2344,-2369,
+-2395,-2423,-2452,-2476,-2501,-2527,-2551,-2576,-2599,-2621,-2644,-2672,-2693,-2709,-2733,-2757,-2781,-2801,-2826,-2848,
+-2869,-2892,-2912,-2935,-2946,-2969,-2986,-3001,-3014,-3023,-3030,-3039,-3043,-3052,-3057,-3061,-3063,-3066,-3071,-3061,
+-3060,-3062,-3061,-3062,-3060,-3058,-3054,-3045,-3037,-3027,-3025,-3021,-3001,-2992,-2986,-2982,-2980,-2965,-2945,-2937,
+-2917,-2914,-2898,-2893,-2873,-2853,-2874,-2942,-3014,-3037,-2913,-2776,-2654,-2515,-2408,-2358,-2335,-2288,-2281,-2301,
+-2269,-2164,-2158,-2140,-2121,-2094,-2061,-2035,-2027,-2002,-1985,-1965,-1945,-1929,-1910,-1859,-1835,-1830,-1808,-1784,
+-1746,-1699,-1637,-1617,-1608,-1645,-1662,-1643,-1613,-1593,-1559,-1522,-1477,-1441,-1398,-1380,-1370,-1355,-1333,-1296,
+-1248,-1230,-1212,-1196,-1168,-1131,-1114,-1040,-1052,-1124,-1195,-1187,-1031,-898,-949,-1141,-1274,-1320,-1277,-1250,
+-1213,-1221,-1279,-1308,-1284,-1261,-1289,-1324,-1411,-1464,-1465,-1440,-1441,-1498,-1575,-1641,-1723,-1789,-1803,-1808,
+-1820,-1846,-1894,-1933,-1974,-2017,-2086,-2143,-2186,-2241,-2298,-2349,-2395,-2438,-2487,-2532,-2580,-2599,-2594,-2584,
+-2570,-2568,-2577,-2572,-2599,-2644,-2694,-2745,-2809,-2869,-2900,-2911,-2921,-2939,-2903,-2802,-2768,-2915,-3129,-3196,
+-3178,-3138,-3106,-3096,-3114,-3161,-3229,-3275,-3315,-3344,-3384,-3397,-3415,-3428,-3428,-3427,-3449,-3482,-3509,-3529,
+-3539,-3513,-3484,-3464,-3446,-3410,-3387,-3392,-3410,-3429,-3440,-3425,-3397,-3368,-3372,-3408,-3460,-3509,-3542,-3546,
+-3550,-3551,-3561,-3579,-3600,-3618,-3630,-3636,-3638,-3638,-3637,-3637,-3620,-3604,-3567,-3532,-3493,-3437,-3434,-3463,
+-3470,-3477,-3475,-3452,-3405,-3358,-3321,-3283,-3259,-3220,-3198,-3174,-3165,-3170,-3201,-3213,-3161,-3073,-2937,-2878,
+-2890,-2856,-2840,-2854,-2846,-2826,-2795,-2764,-2745,-2716,-2712,-2710,-2708,-2700,-2676,-2649,-2642,-2614,-2588,-2558,
+-2530,-2495,-2466,-2446,-2446,-2458,-2444,-2408,-2367,-2329,-2301,-2279,-2270,-2263,-2255,-2246,-2228,-2223,-2222,-2213,
+-2218,-2213,-2211,-2215,-2230,-2255,-2265,-2256,-2222,-2184,-2140,-2110,-2099,-2080,-2051,-2019,-1971,-1909,-1836,-1748,
+-1644,-1534,-1426,-1317,-1204,-1100,-1024,-957,-921,-883,-847,-812,-768,-728,-684,-628,-552,-446,-335,-194,
+-31,137,320,483,619,733,865,969,1044,1110,1163,1213,1320,1462,1524,1561,1594,1634,1679,1731,
+1774,1791,1810,1831,1872,1929,1990,2062,2121,2175,2232,2290,2357,2439,2522,2598,2661,2722,2786,2842,
+2918,2995,3065,3137,3208,3277,3345,3411,3474,3549,3625,3707,3807,3896,3964,4029,4097,4179,4249,4326,
+4396,4450,4493,4534,4598,4656,4716,4767,4811,4882,4942,5007,5061,5109,5155,5204,5282,5341,5377,5445,
+5527,5573,5647,5688,5747,5807,5848,5908,5959,6029,6096,6142,6176,6187,6248,6234,6216,6210,6218,6225,
+6211,6202,6205,6208,6228,6222,6197,6205,6187,6182,6164,6168,6165,6150,6132,6130,6129,6133,6138,6130,
+6123,6089,6036,6000,5995,5968,5928,5872,5826,5748,5729,5786,5806,5790,5789,5769,5748,5728,5683,5642,
+5616,5599,5590,5587,5558,5558,5567,5528,5449,5347,5258,5185,5113,5061,5046,5059,5080,5096,5145,5288,
+5365,5398,5520,5547,5443,5396,5361,5313,5298,5328,5397,5485,5574,5580,5577,5592,5623,5665,5690,5696,
+5694,5738,5762,5746,5773,5799,5752,5676,5608,5582,5566,5553,5513,5464,5412,5356,5305,5249,5196,5164,
+5145,5122,5079,5051,5079,5125,5189,5262,5347,5416,5436,5279,5312,5337,5363,5408,5373,5389,5396,5342,
+5296,5211,5092,5063,4993,4929,4873,4841,4804,4795,4795,4781,4746,4706,4667,4621,4581,4554,4546,4560,
+4581,4588,4586,4584,4582,4705,4932,5076,5047,4921,4784,4766,4788,4803,4819,4836,4850,4873,4884,4891,
+4882,4889,4919,4965,4907,4835,4636,4460,4386,4370,4372,4375,4375,4377,4384,4385,4377,4362,4335,4281,
+4205,4136,4079,4047,4067,4123,4121,4123,4083,4221,4337,4434,4455,4499,4531,4547,4583,4587,4588,4599,
+4653,4627,4582,4541,4553,4495,4450,4389,4335,4279,4231,4227,4198,4150,4114,4049,4016,3995,3980,3942,
+3903,3847,3770,3690,3584,3416,3253,3146,3081,3041,3006,2970,2928,2881,2829,2774,2722,2664,2604,2544,
+2478,2419,2392,2396,2402,2404,2415,2422,2387,2378,2362,2316,2257,2193,2154,2118,2052,1995,1966,1963,
+1963,1938,1902,1872,1832,1781,1731,1682,1630,1584,1555,1555,1565,1562,1559,1594,1683,1750,1800,1860,
+1932,2067,2076,2114,2143,2172,2206,2190,2180,2096,2008,1913,1870,1750,1599,1416,1280,1078,814,544,
+319,38,-286,-511,-654,-727,-791,-856,-927,-991,-1045,-1081,-1101,-1116,-1128,-1134,-1130,-1126,-1132,-1150,
+-1178,-1211,-1238,-1282,-1340,-1412,-1496,-1567,-1634,-1698,-1765,-1827,-1891,-1950,-2011,-2079,-2142,-2203,-2265,-2320,
+-2371,-2401,-2431,-2494,-2535,-2573,-2621,-2660,-2661,-2638,-2644,-2686,-2744,-2799,-2852,-2902,-2952,-3010,-3069,-3125,
+-3169,-3187,-3187,-3198,-3233,-3246,-3293,-3371,-3429,-3482,-3537,-3594,-3667,-3766,-3882,-3990,-4058,-4100,-4144,-4194,
+-4249,-4288,-4321,-4363,-4402,-4422,-4417,-4391,-4344,-4274,-4176,-4057,-3941,-3835,-3733,-3725,-3753,-3792,-3820,-3822,
+-3759,-3685,-3646,-3627,-3591,-3583,-3675,-3739,-3712,-3688,-3691,-3740,-3795,-3829,-3898,-3947,-4009,-4081,-4150,-4210,
+-4265,-4310,-4341,-4320,-4250,-4149,-4042,-3978,-3965,-3979,-3968,-3974,-4011,-4095,-4191,-4234,-4338,-4422,-4552,-4710,
+-4796,-4885,-4945,-4930,-4964,-4983,-5031,-5093,-5097,-5105,-5089,-5043,-5032,-5130,-5310,-5514,-5632,-5605,-5610,-5626,
+-5656,-5784,-5909,-6044,-6169,-6261,-6360,-6469,-6543,-6575,-6586,-6547,-6476,-6421,-6372,-6351,-6355,-6371,-6403,-6427,
+-6502,-6509,-6468,-6427,-6381,-6333,-6273,-6206,-6118,-6032,-5993,-5959,-5931,-5913,-5884,-5856,-5809,-5771,-5750,-5715,
+-5688,-5678,-5675,-5665,-5649,-5641,-5622,-5601,-5597,-5567,-5530,-5492,-5476,-5450,-5418,-5376,-5311,-5244,-5176,-5115,
+-5071,-5018,-4979,-4918,-4857,-4800,-4722,-4644,-4562,-4506,-4464,-4417,-4374,-4311,-4281,-4283,-4247,-4182,-4128,-4060,
+-3978,-3876,-3774,-3685,-3596,-3509,-3422,-3341,-3270,-3195,-3112,-3033,-2959,-2896,-2820,-2736,-2648,-2550,-2463,-2375,
+-2290,-2206,-2114,-2019,-1932,-1858,-1774,-1693,-1617,-1535,-1447,-1348,-1254,-1161,-1054,-962,-860,-766,-668,-579,
+-476,-382,-325,-270,-219,-177,-141,-85,-49,0,84,161,226,279,334,398,465,525,578,640,
+704,772,852,940,1025,1087,1152,1244,1333,1415,1509,1586,1657,1708,1769,1841,1915,1997,2067,2107,
+2156,2202,2271,2331,2371,2428,2490,2461,2478,2494,2466,2452,2438,2433,2448,2466,2493,2513,2539,2581,
+2609,2616,2606,2592,2595,2617,2624,2595,2587,2572,2565,2575,2604,2633,2661,2685,2734,2722,2749,2775,
+2797,2816,2839,2862,2884,2907,2921,2952,3010,3093,3268,3410,3390,3314,3309,3316,3166,2986,2806,2634,
+2582,2720,2886,2835,2575,2344,2150,2017,1962,1932,1870,1772,1654,1515,1385,1277,1167,1019,860,723,
+646,628,677,769,895,1032,1175,1301,1414,1495,1562,1605,1632,1646,1651,1645,1631,1602,1573,1540,
+1499,1459,1423,1385,1335,1296,1256,1228,1190,1139,1090,1040,976,911,848,790,745,704,650,596,
+542,500,469,435,394,345,295,249,202,159,121,83,46,17,-18,-57,-91,-122,-166,-208,
+-250,-291,-322,-364,-391,-424,-447,-471,-490,-513,-531,-550,-562,-575,-591,-605,-619,-646,-652,-680,
+-709,-739,-778,-825,-886,-964,-1048,-1123,-1173,-1180,-1106,-893,-602,-622,-720,-1022,-1201,-1244,-1228,-1186,
+-1137,-1084,-1010,-978,-959,-961,-979,-996,-1032,-1053,-1085,-1107,-1139,-1164,-1185,-1197,-1166,-1103,-1049,-1034,
+-1031,-1049,-1051,-1047,-1049,-1054,-1045,-1041,-1041,-1033,-1046,-1041,-1036,-1062,-1066,-1056,-1031,-1032,-1040,-1024,
+-1038,-1040,-1044,-1048,-1039,-1029,-1014,-995,-994,-1009,-1002,-988,-979,-967,-956,-948,-916,-895,-869,-843,
+-815,-784,-789,-781,-780,-781,-777,-787,-794,-789,-781,-768,-751,-768,-769,-772,-771,-768,-763,-757,
+-756,-749,-741,-733,-732,-727,-728,-739,-762,-777,-784,-791,-794,-800,-799,-810,-819,-834,-857,-869,
+-871,-871,-870,-876,-886,-896,-904,-911,-915,-921,-930,-940,-959,-983,-1004,-1034,-1051,-1066,-1090,-1096,
+-1098,-1094,-1100,-1109,-1120,-1132,-1144,-1161,-1179,-1200,-1220,-1236,-1249,-1261,-1283,-1301,-1316,-1345,-1381,-1414,
+-1450,-1475,-1490,-1503,-1523,-1548,-1576,-1607,-1639,-1672,-1700,-1728,-1753,-1778,-1800,-1823,-1849,-1878,-1906,-1932,
+-1962,-1986,-2012,-2036,-2059,-2082,-2107,-2131,-2150,-2173,-2194,-2214,-2233,-2256,-2281,-2306,-2328,-2353,-2376,-2400,
+-2423,-2451,-2475,-2503,-2524,-2547,-2569,-2592,-2617,-2641,-2663,-2681,-2709,-2729,-2749,-2775,-2800,-2821,-2841,-2858,
+-2876,-2897,-2914,-2933,-2955,-2972,-2990,-3005,-3019,-3035,-3051,-3064,-3073,-3081,-3083,-3086,-3096,-3093,-3096,-3096,
+-3101,-3097,-3097,-3099,-3099,-3093,-3084,-3075,-3062,-3057,-3052,-3054,-3051,-3034,-3022,-3017,-3009,-3005,-2994,-2986,
+-2944,-2943,-2937,-2938,-2921,-2907,-2894,-2888,-2934,-3000,-3039,-2950,-2818,-2718,-2591,-2497,-2385,-2384,-2346,-2350,
+-2357,-2292,-2211,-2217,-2162,-2151,-2136,-2092,-2026,-2010,-2012,-1984,-1960,-1947,-1951,-1941,-1872,-1904,-1861,-1824,
+-1787,-1756,-1719,-1682,-1658,-1635,-1629,-1635,-1627,-1613,-1591,-1562,-1532,-1497,-1460,-1427,-1432,-1401,-1392,-1334,
+-1322,-1303,-1317,-1262,-1277,-1226,-1200,-1166,-1108,-1139,-1227,-1299,-1316,-1268,-1164,-1091,-1119,-1211,-1272,-1284,
+-1270,-1244,-1226,-1240,-1256,-1255,-1196,-1144,-1162,-1284,-1373,-1415,-1431,-1486,-1579,-1655,-1712,-1765,-1814,-1830,
+-1828,-1826,-1846,-1879,-1910,-1959,-2015,-2069,-2129,-2178,-2201,-2242,-2288,-2325,-2362,-2409,-2451,-2494,-2548,-2553,
+-2558,-2557,-2564,-2536,-2558,-2616,-2667,-2709,-2766,-2819,-2866,-2894,-2920,-2922,-2861,-2754,-2713,-2797,-3029,-3187,
+-3211,-3185,-3136,-3114,-3105,-3102,-3171,-3229,-3273,-3306,-3331,-3360,-3379,-3385,-3401,-3403,-3408,-3435,-3461,-3486,
+-3503,-3508,-3495,-3472,-3453,-3432,-3397,-3363,-3361,-3384,-3410,-3436,-3446,-3441,-3413,-3378,-3390,-3426,-3465,-3501,
+-3526,-3542,-3553,-3564,-3579,-3609,-3623,-3622,-3616,-3610,-3613,-3617,-3612,-3585,-3540,-3490,-3443,-3397,-3352,-3361,
+-3382,-3385,-3393,-3394,-3383,-3385,-3349,-3312,-3270,-3243,-3202,-3168,-3124,-3105,-3120,-3180,-3229,-3175,-3068,-2943,
+-2907,-2912,-2883,-2877,-2891,-2877,-2852,-2811,-2791,-2780,-2768,-2760,-2765,-2759,-2744,-2723,-2693,-2671,-2644,-2611,
+-2585,-2553,-2533,-2501,-2488,-2487,-2469,-2442,-2406,-2374,-2348,-2342,-2342,-2377,-2399,-2388,-2386,-2386,-2391,-2389,
+-2378,-2364,-2361,-2368,-2390,-2405,-2413,-2416,-2395,-2354,-2308,-2265,-2238,-2216,-2191,-2149,-2100,-2041,-1964,-1881,
+-1789,-1693,-1594,-1500,-1399,-1293,-1190,-1102,-1036,-979,-940,-894,-852,-805,-767,-725,-678,-616,-530,-413,
+-288,-147,9,176,338,494,634,747,827,855,855,874,952,1100,1227,1302,1357,1412,1472,1540,
+1612,1666,1694,1721,1746,1798,1867,1936,2007,2064,2119,2179,2233,2301,2384,2468,2541,2597,2662,2722,
+2782,2843,2922,3003,3080,3153,3230,3295,3368,3432,3510,3585,3664,3766,3856,3932,4004,4075,4152,4230,
+4304,4373,4427,4468,4499,4570,4619,4668,4725,4778,4837,4901,4966,5012,5050,5110,5183,5265,5330,5375,
+5435,5499,5556,5617,5678,5744,5793,5846,5911,5955,6016,6066,6124,6160,6187,6246,6222,6205,6199,6184,
+6186,6192,6196,6183,6205,6195,6180,6154,6168,6152,6137,6113,6121,6107,6090,6089,6091,6091,6102,6086,
+6060,6055,6027,5983,5943,5908,5909,5865,5838,5820,5789,5744,5708,5729,5742,5761,5687,5651,5611,5577,
+5561,5547,5543,5533,5510,5495,5501,5470,5430,5376,5306,5223,5137,5080,5049,5047,5069,5078,5081,5119,
+5198,5227,5258,5412,5433,5390,5360,5337,5332,5318,5340,5396,5441,5521,5595,5570,5571,5626,5687,5673,
+5670,5685,5723,5760,5743,5777,5788,5713,5640,5577,5535,5507,5486,5458,5430,5410,5396,5372,5335,5277,
+5220,5170,5103,5051,5039,5072,5100,5148,5174,5214,5264,5279,5161,5137,5158,5166,5201,5238,5259,5274,
+5258,5224,5128,5066,5003,4990,4912,4821,4767,4741,4736,4738,4726,4688,4646,4611,4577,4555,4547,4548,
+4555,4569,4578,4587,4580,4577,4728,5004,5136,5038,4903,4751,4730,4762,4769,4775,4813,4826,4832,4852,
+4882,4889,4879,4915,4954,4970,4918,4790,4669,4576,4510,4485,4471,4471,4486,4507,4513,4509,4476,4402,
+4274,4146,4039,3954,3896,3885,3875,3904,3933,3894,3972,4089,4198,4374,4483,4478,4578,4571,4616,4568,
+4609,4611,4612,4560,4535,4577,4578,4510,4396,4324,4273,4230,4187,4150,4107,4081,4068,4056,4033,4025,
+3987,3961,3927,3852,3754,3637,3507,3351,3227,3148,3092,3041,2994,2946,2894,2843,2789,2735,2688,2645,
+2601,2561,2533,2541,2583,2632,2667,2730,2772,2763,2734,2710,2600,2469,2380,2318,2270,2236,2184,2065,
+1995,1977,1964,1941,1919,1888,1844,1804,1771,1734,1704,1681,1661,1638,1625,1618,1606,1660,1747,1780,
+1823,1857,1900,1954,2001,2038,2078,2078,2004,1977,1906,1816,1756,1679,1669,1620,1534,1444,1316,1110,
+842,578,309,-63,-362,-537,-671,-774,-870,-956,-1027,-1104,-1160,-1189,-1208,-1212,-1198,-1181,-1160,-1149,
+-1153,-1163,-1176,-1196,-1232,-1284,-1346,-1423,-1486,-1547,-1617,-1687,-1754,-1825,-1901,-1976,-2052,-2125,-2195,-2260,
+-2319,-2381,-2426,-2461,-2531,-2582,-2619,-2656,-2693,-2712,-2694,-2679,-2695,-2732,-2786,-2850,-2921,-2986,-3047,-3103,
+-3155,-3196,-3208,-3224,-3274,-3311,-3339,-3372,-3417,-3446,-3479,-3521,-3576,-3644,-3735,-3836,-3950,-4047,-4102,-4138,
+-4184,-4231,-4261,-4309,-4368,-4406,-4416,-4403,-4381,-4330,-4257,-4153,-4011,-3847,-3657,-3535,-3481,-3474,-3527,-3554,
+-3602,-3581,-3537,-3528,-3506,-3491,-3520,-3609,-3669,-3624,-3596,-3587,-3618,-3708,-3795,-3851,-3870,-3913,-4010,-4108,
+-4173,-4211,-4239,-4211,-4110,-3951,-3805,-3760,-3804,-3845,-3854,-3815,-3771,-3774,-3915,-4089,-4194,-4385,-4612,-4800,
+-4967,-5111,-5290,-5364,-5342,-5322,-5268,-5284,-5369,-5386,-5416,-5400,-5376,-5382,-5478,-5698,-5893,-6018,-6070,-6087,
+-6079,-6052,-6051,-6086,-6157,-6229,-6263,-6268,-6282,-6329,-6367,-6378,-6353,-6309,-6265,-6249,-6254,-6261,-6269,-6289,
+-6321,-6381,-6409,-6412,-6413,-6389,-6364,-6325,-6271,-6219,-6164,-6124,-6077,-6019,-5953,-5881,-5821,-5768,-5721,-5690,
+-5653,-5652,-5666,-5665,-5651,-5634,-5636,-5628,-5614,-5623,-5590,-5565,-5544,-5515,-5483,-5444,-5405,-5355,-5298,-5230,
+-5161,-5113,-5053,-5000,-4946,-4885,-4824,-4760,-4703,-4639,-4570,-4496,-4459,-4421,-4380,-4340,-4308,-4269,-4200,-4124,
+-4021,-3909,-3798,-3702,-3628,-3539,-3457,-3373,-3289,-3220,-3152,-3075,-2996,-2925,-2852,-2775,-2692,-2604,-2507,-2412,
+-2313,-2230,-2146,-2061,-1964,-1872,-1791,-1714,-1643,-1576,-1497,-1420,-1322,-1227,-1143,-1051,-963,-866,-783,-681,
+-587,-490,-412,-348,-284,-235,-183,-145,-97,-45,35,105,175,241,310,349,405,484,553,609,
+660,724,795,876,960,1034,1111,1206,1313,1401,1484,1565,1638,1708,1773,1841,1907,1993,2090,2134,
+2178,2218,2276,2357,2432,2475,2499,2518,2533,2540,2571,2524,2471,2430,2415,2403,2391,2367,2349,2346,
+2365,2383,2394,2393,2420,2452,2479,2506,2517,2531,2547,2564,2591,2624,2656,2684,2702,2723,2749,2776,
+2800,2822,2841,2867,2887,2908,2929,2950,2978,3088,3279,3363,3440,3400,3327,3305,3270,3116,2913,2662,
+2395,2275,2330,2435,2477,2353,2073,1803,1645,1575,1535,1486,1400,1304,1206,1133,1054,963,877,812,
+795,815,877,999,1131,1250,1339,1432,1517,1586,1633,1666,1685,1691,1692,1682,1668,1647,1615,1586,
+1548,1504,1461,1417,1360,1300,1254,1217,1189,1145,1100,1045,988,930,864,803,750,698,646,594,
+549,507,469,427,394,355,313,265,218,173,137,94,56,20,-18,-48,-75,-107,-143,-179,
+-225,-269,-305,-340,-379,-395,-433,-465,-484,-501,-530,-555,-578,-586,-604,-627,-641,-657,-680,-703,
+-714,-735,-765,-811,-865,-930,-1001,-1072,-1140,-1191,-1200,-1132,-943,-631,-542,-816,-1107,-1247,-1282,-1268,
+-1226,-1180,-1111,-1035,-1033,-999,-1007,-1010,-1039,-1049,-1061,-1103,-1112,-1137,-1152,-1169,-1193,-1200,-1181,-1141,
+-1099,-1064,-1052,-1066,-1075,-1085,-1071,-1068,-1073,-1074,-1065,-1072,-1074,-1086,-1115,-1121,-1110,-1093,-1084,-1089,
+-1101,-1111,-1099,-1086,-1073,-1061,-1054,-1040,-1028,-1028,-1023,-1015,-1012,-1015,-996,-989,-960,-941,-928,-913,
+-889,-875,-863,-850,-840,-833,-820,-813,-817,-824,-822,-812,-794,-805,-815,-818,-817,-812,-808,-801,
+-797,-792,-784,-770,-764,-763,-758,-753,-769,-792,-810,-809,-813,-822,-827,-835,-845,-861,-872,-886,
+-899,-907,-913,-915,-925,-937,-942,-941,-957,-968,-981,-993,-999,-997,-1018,-1037,-1042,-1043,-1046,-1062,
+-1089,-1108,-1120,-1134,-1147,-1159,-1177,-1193,-1206,-1223,-1241,-1258,-1265,-1281,-1298,-1316,-1329,-1353,-1382,-1414,
+-1445,-1474,-1493,-1511,-1525,-1545,-1565,-1598,-1625,-1656,-1685,-1707,-1737,-1762,-1789,-1818,-1844,-1875,-1904,-1934,
+-1967,-1996,-2021,-2051,-2074,-2101,-2127,-2147,-2164,-2181,-2200,-2222,-2248,-2270,-2298,-2328,-2352,-2377,-2406,-2431,
+-2455,-2482,-2505,-2527,-2546,-2564,-2583,-2604,-2626,-2649,-2675,-2696,-2723,-2748,-2764,-2786,-2814,-2848,-2868,-2892,
+-2911,-2926,-2943,-2957,-2973,-2988,-3006,-3024,-3041,-3054,-3067,-3083,-3095,-3106,-3110,-3116,-3129,-3133,-3131,-3136,
+-3130,-3122,-3116,-3124,-3131,-3128,-3123,-3114,-3099,-3089,-3081,-3075,-3077,-3073,-3061,-3047,-3044,-3036,-3030,-3023,
+-3006,-2996,-2973,-2964,-2965,-2953,-2948,-2932,-2934,-2962,-3017,-3040,-2964,-2881,-2796,-2655,-2555,-2452,-2407,-2363,
+-2340,-2330,-2270,-2235,-2228,-2213,-2183,-2154,-2128,-2073,-2057,-2018,-1992,-1980,-1973,-1964,-1954,-1920,-1917,-1872,
+-1829,-1794,-1748,-1729,-1727,-1704,-1676,-1645,-1620,-1610,-1593,-1572,-1544,-1536,-1489,-1431,-1452,-1424,-1408,-1423,
+-1375,-1383,-1359,-1381,-1368,-1337,-1299,-1320,-1273,-1203,-1208,-1299,-1358,-1387,-1389,-1365,-1320,-1310,-1347,-1374,
+-1389,-1378,-1343,-1298,-1291,-1288,-1274,-1252,-1183,-1141,-1180,-1296,-1414,-1500,-1598,-1685,-1742,-1786,-1819,-1844,
+-1850,-1865,-1870,-1870,-1881,-1920,-1969,-2019,-2076,-2135,-2180,-2206,-2231,-2262,-2289,-2326,-2382,-2411,-2442,-2481,
+-2497,-2509,-2523,-2509,-2512,-2545,-2604,-2667,-2724,-2795,-2847,-2900,-2938,-2924,-2834,-2741,-2722,-2764,-2889,-3083,
+-3190,-3214,-3185,-3147,-3123,-3152,-3205,-3243,-3260,-3278,-3304,-3330,-3344,-3348,-3350,-3358,-3368,-3382,-3400,-3423,
+-3435,-3453,-3469,-3468,-3458,-3451,-3431,-3396,-3357,-3346,-3360,-3379,-3412,-3445,-3467,-3474,-3458,-3456,-3473,-3498,
+-3520,-3539,-3552,-3554,-3555,-3564,-3579,-3589,-3578,-3570,-3571,-3579,-3575,-3543,-3491,-3435,-3397,-3362,-3327,-3302,
+-3293,-3298,-3321,-3352,-3347,-3367,-3373,-3360,-3323,-3275,-3219,-3153,-3095,-3054,-3052,-3094,-3192,-3234,-3154,-3047,
+-2949,-2951,-2950,-2911,-2929,-2949,-2941,-2908,-2880,-2851,-2831,-2807,-2805,-2806,-2794,-2784,-2759,-2738,-2708,-2683,
+-2644,-2607,-2578,-2558,-2544,-2545,-2533,-2502,-2492,-2456,-2413,-2432,-2483,-2521,-2533,-2522,-2499,-2492,-2493,-2500,
+-2501,-2499,-2498,-2499,-2511,-2524,-2528,-2521,-2499,-2456,-2412,-2377,-2347,-2321,-2294,-2261,-2212,-2155,-2085,-2006,
+-1923,-1837,-1749,-1660,-1575,-1479,-1376,-1273,-1180,-1115,-1051,-994,-943,-888,-839,-794,-748,-709,-661,-579,
+-433,-352,-242,-109,46,204,369,525,583,624,660,679,705,778,933,1051,1097,1149,1211,1284,
+1371,1470,1548,1589,1625,1674,1733,1798,1873,1940,1993,2050,2107,2171,2241,2315,2391,2465,2532,2597,
+2662,2724,2788,2865,2944,3026,3107,3181,3246,3315,3392,3470,3547,3629,3717,3805,3893,3973,4048,4134,
+4211,4286,4349,4400,4436,4478,4550,4601,4643,4714,4772,4816,4867,4939,5001,5056,5106,5160,5244,5306,
+5355,5405,5483,5538,5599,5658,5722,5785,5832,5882,5928,5994,6053,6102,6149,6149,6198,6209,6190,6192,
+6188,6185,6197,6175,6168,6162,6160,6153,6117,6116,6119,6093,6084,6084,6054,6037,6042,6033,6046,6037,
+6017,6011,5985,5954,5917,5876,5847,5828,5824,5816,5781,5760,5763,5725,5693,5659,5618,5574,5547,5526,
+5520,5511,5487,5475,5454,5444,5441,5405,5357,5323,5292,5238,5181,5125,5091,5077,5066,5071,5069,5066,
+5075,5099,5135,5169,5221,5240,5272,5278,5268,5265,5263,5285,5321,5365,5470,5568,5590,5583,5614,5663,
+5645,5656,5726,5767,5794,5862,5855,5802,5719,5642,5581,5529,5487,5457,5428,5404,5392,5403,5450,5494,
+5504,5373,5312,5233,5111,5044,5048,5079,5110,5123,5153,5185,5161,5059,5052,5083,5098,5110,5096,5117,
+5111,5110,5106,5091,5025,4993,4949,4889,4783,4721,4701,4686,4671,4659,4631,4598,4568,4543,4530,4527,
+4530,4535,4548,4564,4570,4564,4590,4704,4885,5019,4991,4788,4707,4682,4707,4724,4719,4758,4778,4787,
+4817,4846,4846,4849,4889,4952,5004,4932,4941,4903,4792,4690,4615,4592,4607,4647,4687,4698,4665,4587,
+4488,4350,4207,4081,3970,3876,3805,3774,3729,3720,3765,3801,3939,4137,4303,4398,4550,4490,4497,4489,
+4518,4540,4567,4560,4547,4523,4545,4558,4512,4448,4414,4370,4328,4239,4174,4138,4108,4085,4074,4031,
+4037,4014,3997,3940,3888,3816,3707,3583,3446,3315,3205,3129,3075,3028,2986,2941,2894,2838,2785,2750,
+2735,2740,2755,2787,2858,2946,3048,3095,3098,3086,3049,3010,2962,2872,2783,2665,2564,2474,2410,2367,
+2296,2117,2032,2002,1982,1960,1925,1883,1848,1815,1796,1781,1759,1738,1715,1703,1694,1698,1727,1844,
+1885,1958,2042,2111,2125,2106,2094,2088,2033,1949,1842,1726,1617,1548,1428,1329,1310,1363,1410,1390,
+1326,1169,899,595,243,-134,-404,-608,-763,-899,-1008,-1098,-1182,-1260,-1307,-1329,-1319,-1284,-1240,-1201,
+-1167,-1145,-1141,-1141,-1174,-1224,-1269,-1316,-1359,-1386,-1443,-1512,-1586,-1657,-1727,-1803,-1890,-1977,-2059,-2137,
+-2207,-2280,-2358,-2423,-2478,-2533,-2586,-2636,-2681,-2719,-2751,-2771,-2787,-2794,-2800,-2813,-2848,-2925,-3001,-3070,
+-3124,-3161,-3189,-3217,-3253,-3314,-3372,-3428,-3479,-3500,-3515,-3540,-3569,-3598,-3637,-3734,-3829,-3917,-4011,-4081,
+-4121,-4163,-4210,-4254,-4313,-4357,-4372,-4370,-4354,-4324,-4270,-4184,-4064,-3890,-3735,-3667,-3579,-3509,-3527,-3566,
+-3574,-3615,-3643,-3724,-3744,-3754,-3711,-3649,-3621,-3653,-3689,-3732,-3740,-3683,-3635,-3665,-3706,-3679,-3690,-3736,
+-3793,-3840,-3836,-3841,-3807,-3746,-3675,-3645,-3658,-3778,-3853,-3868,-3805,-3792,-3846,-4018,-4292,-4484,-4734,-5058,
+-5272,-5433,-5560,-5668,-5702,-5702,-5693,-5690,-5729,-5805,-5870,-5908,-5932,-5936,-5908,-5866,-5869,-5981,-6146,-6232,
+-6241,-6211,-6184,-6153,-6117,-6141,-6191,-6290,-6322,-6297,-6270,-6260,-6258,-6238,-6194,-6155,-6150,-6183,-6219,-6235,
+-6250,-6278,-6309,-6336,-6355,-6367,-6375,-6368,-6347,-6309,-6262,-6203,-6145,-6096,-6008,-5903,-5814,-5752,-5697,-5659,
+-5648,-5638,-5639,-5650,-5645,-5632,-5620,-5605,-5608,-5611,-5621,-5621,-5606,-5579,-5541,-5511,-5475,-5433,-5394,-5361,
+-5310,-5232,-5169,-5109,-5049,-4992,-4931,-4888,-4844,-4788,-4727,-4662,-4594,-4540,-4500,-4452,-4391,-4320,-4254,-4170,
+-4067,-3954,-3841,-3746,-3656,-3574,-3493,-3408,-3319,-3231,-3157,-3079,-2991,-2923,-2854,-2785,-2704,-2617,-2529,-2439,
+-2348,-2252,-2157,-2074,-2002,-1913,-1818,-1734,-1649,-1574,-1506,-1440,-1361,-1280,-1187,-1096,-1019,-938,-854,-776,
+-694,-607,-538,-464,-381,-291,-224,-156,-102,-43,-18,52,129,206,263,314,360,417,500,549,
+620,679,732,803,885,969,1060,1157,1261,1358,1441,1518,1604,1703,1783,1839,1891,1978,2053,2102,
+2182,2230,2277,2338,2422,2561,2599,2595,2595,2606,2649,2635,2510,2434,2395,2322,2271,2262,2259,2260,
+2276,2311,2344,2409,2391,2403,2435,2470,2524,2535,2544,2565,2588,2622,2652,2680,2708,2732,2753,2778,
+2803,2825,2845,2865,2889,2912,2936,2959,2983,3023,3141,3320,3323,3396,3476,3476,3409,3297,3125,2918,
+2581,2249,2045,1998,2057,2111,2068,1918,1695,1482,1375,1327,1274,1186,1091,1010,946,902,879,891,
+936,1026,1123,1206,1303,1423,1507,1570,1630,1656,1694,1721,1737,1736,1728,1713,1692,1669,1643,1612,
+1577,1535,1490,1444,1384,1329,1273,1218,1177,1133,1090,1043,988,932,873,819,763,708,650,597,
+548,503,463,425,388,356,322,281,235,187,142,99,59,19,-16,-52,-88,-116,-145,-176,
+-209,-244,-287,-327,-362,-391,-418,-444,-481,-509,-522,-546,-570,-585,-601,-615,-655,-677,-695,-718,
+-732,-744,-765,-794,-842,-899,-957,-1019,-1080,-1143,-1194,-1208,-1162,-1039,-841,-738,-901,-1148,-1274,-1310,
+-1299,-1266,-1218,-1124,-1084,-1034,-1045,-1042,-1049,-1053,-1058,-1101,-1123,-1134,-1145,-1149,-1161,-1177,-1192,-1201,
+-1199,-1178,-1132,-1094,-1071,-1075,-1103,-1088,-1088,-1073,-1074,-1089,-1101,-1111,-1133,-1127,-1126,-1135,-1135,-1135,
+-1140,-1133,-1129,-1118,-1094,-1074,-1064,-1058,-1051,-1051,-1049,-1043,-1043,-1036,-1015,-1007,-996,-984,-980,-970,
+-947,-931,-918,-905,-890,-880,-870,-858,-851,-854,-854,-861,-863,-862,-856,-847,-846,-844,-843,-839,
+-841,-841,-840,-831,-818,-808,-806,-794,-784,-828,-813,-825,-837,-843,-843,-848,-859,-874,-891,-904,
+-916,-934,-944,-957,-965,-979,-997,-1002,-1004,-1016,-1025,-1035,-1031,-1031,-1024,-1022,-1024,-1036,-1058,-1077,
+-1094,-1116,-1137,-1157,-1170,-1184,-1203,-1223,-1232,-1242,-1256,-1271,-1282,-1291,-1309,-1330,-1349,-1367,-1390,-1415,
+-1443,-1473,-1501,-1523,-1545,-1562,-1580,-1598,-1621,-1643,-1667,-1696,-1722,-1751,-1779,-1815,-1847,-1876,-1907,-1938,
+-1970,-1999,-2033,-2062,-2087,-2113,-2138,-2163,-2181,-2197,-2218,-2241,-2266,-2295,-2325,-2358,-2381,-2404,-2430,-2455,
+-2476,-2498,-2520,-2541,-2561,-2583,-2604,-2622,-2640,-2660,-2684,-2710,-2732,-2752,-2773,-2793,-2820,-2846,-2875,-2897,
+-2921,-2944,-2961,-2979,-2988,-3003,-3012,-3037,-3049,-3057,-3074,-3081,-3099,-3111,-3125,-3140,-3146,-3154,-3157,-3159,
+-3168,-3158,-3126,-3160,-3150,-3156,-3151,-3148,-3136,-3120,-3111,-3098,-3095,-3092,-3092,-3081,-3064,-3063,-3058,-3055,
+-3055,-3042,-3031,-3019,-3025,-3008,-3016,-3031,-3007,-3000,-3006,-3033,-3037,-2960,-2926,-2870,-2768,-2635,-2507,-2384,
+-2321,-2326,-2294,-2310,-2296,-2273,-2272,-2238,-2201,-2175,-2127,-2120,-2033,-2024,-2019,-2008,-1989,-1996,-1961,-1950,
+-1869,-1864,-1854,-1772,-1754,-1755,-1736,-1710,-1673,-1611,-1599,-1588,-1563,-1514,-1522,-1504,-1483,-1488,-1459,-1451,
+-1433,-1463,-1475,-1449,-1449,-1462,-1421,-1373,-1400,-1368,-1329,-1338,-1399,-1428,-1431,-1429,-1400,-1389,-1406,-1431,
+-1448,-1456,-1447,-1429,-1375,-1387,-1411,-1388,-1315,-1246,-1175,-1169,-1266,-1422,-1540,-1662,-1748,-1814,-1855,-1883,
+-1911,-1895,-1905,-1907,-1921,-1925,-1949,-1989,-2039,-2089,-2156,-2197,-2212,-2245,-2275,-2300,-2325,-2359,-2390,-2424,
+-2458,-2470,-2489,-2503,-2502,-2515,-2556,-2604,-2686,-2777,-2843,-2914,-2958,-2936,-2834,-2751,-2743,-2812,-2920,-3048,
+-3137,-3189,-3205,-3197,-3182,-3187,-3229,-3270,-3285,-3287,-3297,-3316,-3336,-3336,-3322,-3320,-3327,-3339,-3341,-3353,
+-3371,-3391,-3407,-3414,-3426,-3438,-3447,-3434,-3402,-3372,-3358,-3361,-3376,-3398,-3430,-3463,-3499,-3532,-3544,-3550,
+-3564,-3573,-3578,-3577,-3567,-3556,-3549,-3549,-3549,-3547,-3543,-3539,-3529,-3496,-3465,-3419,-3375,-3334,-3303,-3278,
+-3259,-3241,-3246,-3279,-3314,-3325,-3368,-3387,-3361,-3305,-3241,-3160,-3103,-3067,-3049,-3068,-3167,-3240,-3221,-3129,
+-3027,-2959,-2976,-2992,-2958,-2997,-3018,-3006,-2969,-2946,-2917,-2880,-2860,-2855,-2855,-2839,-2808,-2806,-2807,-2767,
+-2724,-2675,-2643,-2619,-2603,-2604,-2589,-2570,-2537,-2503,-2476,-2534,-2605,-2642,-2647,-2635,-2600,-2575,-2571,-2583,
+-2588,-2594,-2589,-2591,-2591,-2599,-2595,-2577,-2555,-2526,-2491,-2461,-2434,-2402,-2375,-2338,-2296,-2244,-2187,-2118,
+-2040,-1963,-1887,-1805,-1722,-1644,-1559,-1465,-1365,-1270,-1193,-1121,-1053,-994,-937,-882,-833,-777,-735,-690,
+-634,-550,-427,-333,-216,-71,69,200,314,380,423,463,512,589,698,848,984,1015,1039,1069,
+1125,1215,1321,1415,1492,1552,1607,1669,1738,1805,1871,1932,1990,2045,2110,2183,2250,2318,2387,2457,
+2529,2602,2668,2736,2813,2893,2974,3065,3133,3196,3274,3352,3428,3503,3593,3674,3751,3848,3940,4016,
+4088,4171,4249,4310,4367,4414,4458,4523,4569,4617,4689,4732,4796,4852,4920,4975,5025,5080,5137,5222,
+5276,5346,5402,5472,5525,5600,5664,5726,5769,5820,5878,5928,5973,6035,6094,6159,6124,6171,6182,6183,
+6173,6169,6164,6164,6162,6161,6153,6137,6129,6116,6078,6072,6051,6054,6042,5998,5991,5990,5982,5982,
+5969,5947,5943,5925,5887,5859,5822,5795,5778,5759,5731,5703,5688,5701,5653,5630,5594,5509,5476,5457,
+5444,5435,5425,5404,5392,5386,5376,5337,5304,5286,5248,5195,5160,5131,5107,5081,5063,5063,5053,5048,
+5034,5037,5034,5058,5081,5094,5119,5154,5180,5180,5197,5217,5231,5262,5306,5410,5542,5585,5597,5619,
+5701,5710,5698,5697,5743,5786,5808,5783,5741,5689,5640,5586,5526,5478,5439,5411,5392,5390,5409,5443,
+5465,5487,5467,5419,5348,5231,5117,5051,5049,5083,5076,5083,5081,5059,5033,5018,5016,4995,5008,5039,
+5050,5041,5056,5074,5038,4987,4961,4911,4814,4709,4667,4643,4629,4619,4609,4592,4570,4549,4529,4519,
+4518,4513,4515,4525,4541,4557,4561,4601,4692,4831,4957,4950,4780,4717,4674,4679,4693,4679,4701,4720,
+4750,4753,4796,4821,4835,4884,4905,4939,4954,4985,4983,4875,4771,4719,4701,4715,4782,4867,4856,4738,
+4634,4535,4385,4236,4115,4004,3893,3790,3722,3658,3597,3591,3664,3816,4012,4203,4343,4449,4499,4540,
+4580,4490,4480,4500,4563,4552,4532,4484,4544,4470,4481,4456,4423,4389,4316,4243,4184,4143,4093,4048,
+4016,3989,3965,3957,3947,3917,3845,3763,3670,3564,3429,3296,3198,3132,3088,3050,3012,2969,2924,2877,
+2873,2916,2992,3095,3200,3298,3339,3399,3435,3444,3425,3384,3312,3252,3147,2996,2879,2786,2713,2608,
+2515,2460,2359,2180,2111,2076,2028,1977,1931,1902,1887,1875,1856,1835,1811,1786,1770,1787,1827,1885,
+2053,2168,2335,2454,2468,2428,2350,2292,2277,2248,2168,2023,1848,1637,1488,1359,1243,1107,1018,1031,
+1130,1213,1209,1071,834,509,99,-273,-536,-740,-909,-1064,-1194,-1308,-1398,-1447,-1462,-1432,-1379,-1318,
+-1253,-1192,-1150,-1128,-1115,-1144,-1194,-1236,-1282,-1316,-1327,-1339,-1398,-1471,-1546,-1613,-1689,-1782,-1878,-1973,
+-2068,-2151,-2237,-2327,-2401,-2459,-2516,-2572,-2624,-2675,-2721,-2755,-2788,-2827,-2856,-2875,-2900,-2935,-2974,-3023,
+-3074,-3118,-3151,-3182,-3226,-3276,-3331,-3393,-3446,-3498,-3521,-3530,-3554,-3592,-3654,-3696,-3748,-3822,-3894,-3970,
+-4047,-4106,-4146,-4188,-4243,-4300,-4328,-4336,-4339,-4331,-4310,-4259,-4186,-4023,-3920,-3801,-3705,-3690,-3667,-3654,
+-3712,-3881,-3975,-3886,-3855,-3919,-3919,-3901,-3804,-3759,-3760,-3765,-3715,-3672,-3660,-3665,-3675,-3697,-3682,-3652,
+-3663,-3670,-3657,-3644,-3638,-3653,-3660,-3637,-3658,-3704,-3809,-3979,-4163,-4181,-4185,-4326,-4557,-4792,-5019,-5247,
+-5474,-5661,-5789,-5880,-5932,-5960,-5998,-6021,-6045,-6080,-6120,-6164,-6196,-6219,-6226,-6219,-6205,-6191,-6178,-6188,
+-6214,-6186,-6133,-6113,-6092,-6075,-6073,-6089,-6161,-6193,-6215,-6243,-6225,-6176,-6132,-6097,-6088,-6107,-6145,-6187,
+-6209,-6226,-6244,-6255,-6270,-6280,-6285,-6299,-6305,-6299,-6276,-6230,-6165,-6094,-6040,-5969,-5887,-5807,-5725,-5656,
+-5625,-5616,-5606,-5604,-5626,-5635,-5629,-5626,-5628,-5638,-5646,-5655,-5643,-5626,-5605,-5567,-5532,-5500,-5463,-5424,
+-5382,-5327,-5262,-5210,-5161,-5103,-5057,-5005,-4953,-4908,-4852,-4789,-4731,-4680,-4625,-4558,-4498,-4419,-4320,-4220,
+-4111,-3996,-3896,-3804,-3710,-3608,-3532,-3458,-3356,-3250,-3151,-3056,-2965,-2888,-2826,-2769,-2701,-2607,-2520,-2435,
+-2354,-2268,-2173,-2082,-2005,-1926,-1842,-1748,-1675,-1599,-1524,-1467,-1396,-1311,-1232,-1151,-1059,-976,-899,-822,
+-771,-704,-645,-571,-497,-410,-308,-203,-122,-52,-42,9,90,174,214,267,313,369,434,506,
+549,630,677,744,820,889,976,1090,1193,1290,1381,1488,1576,1665,1739,1808,1872,1927,1998,2076,
+2149,2179,2226,2303,2384,2487,2567,2607,2676,2691,2733,2753,2594,2469,2403,2309,2251,2228,2236,2251,
+2263,2277,2302,2374,2403,2400,2425,2457,2484,2514,2541,2565,2587,2612,2647,2678,2705,2738,2769,2796,
+2816,2839,2856,2873,2895,2918,2936,2952,2980,3051,3139,3190,3276,3322,3449,3526,3490,3419,3381,3187,
+2997,2649,2282,2029,1894,1843,1855,1812,1734,1590,1420,1261,1152,1051,958,913,896,904,943,1011,
+1106,1210,1323,1424,1495,1555,1614,1690,1727,1744,1755,1771,1780,1785,1774,1752,1725,1688,1656,1626,
+1593,1560,1516,1466,1411,1359,1301,1240,1189,1161,1099,1045,991,931,879,830,779,730,677,624,
+577,527,478,436,401,361,326,292,254,208,162,114,68,28,-13,-52,-88,-125,-161,-187,
+-210,-244,-274,-305,-345,-381,-412,-443,-471,-509,-534,-536,-549,-577,-605,-627,-657,-687,-705,-729,
+-755,-773,-783,-807,-834,-874,-926,-986,-1042,-1095,-1148,-1188,-1195,-1143,-989,-774,-751,-833,-1118,-1260,
+-1315,-1317,-1291,-1229,-1137,-1123,-1059,-1047,-1062,-1069,-1043,-1104,-1121,-1137,-1155,-1164,-1162,-1170,-1183,-1189,
+-1200,-1206,-1208,-1215,-1158,-1135,-1123,-1134,-1121,-1093,-1105,-1092,-1111,-1114,-1145,-1137,-1148,-1166,-1167,-1162,
+-1163,-1156,-1145,-1132,-1123,-1105,-1091,-1081,-1074,-1076,-1078,-1074,-1072,-1063,-1046,-1034,-1030,-1026,-1022,-1019,
+-999,-981,-970,-960,-945,-933,-924,-910,-901,-896,-896,-904,-911,-905,-892,-887,-880,-878,-880,-881,
+-888,-896,-897,-886,-874,-860,-848,-846,-840,-829,-848,-828,-851,-870,-871,-882,-879,-890,-904,-925,
+-944,-955,-969,-987,-994,-1011,-1024,-1041,-1038,-1035,-1034,-1028,-1025,-1028,-1029,-1040,-1048,-1062,-1079,-1099,
+-1112,-1125,-1152,-1175,-1193,-1203,-1219,-1240,-1244,-1262,-1274,-1286,-1303,-1319,-1329,-1346,-1359,-1379,-1403,-1419,
+-1446,-1478,-1510,-1536,-1559,-1582,-1598,-1618,-1637,-1653,-1677,-1695,-1716,-1749,-1776,-1807,-1842,-1874,-1907,-1940,
+-1973,-2004,-2034,-2066,-2093,-2122,-2150,-2177,-2198,-2220,-2235,-2256,-2280,-2308,-2337,-2365,-2395,-2419,-2445,-2471,
+-2495,-2518,-2540,-2559,-2575,-2595,-2615,-2631,-2654,-2678,-2695,-2718,-2746,-2765,-2785,-2808,-2831,-2858,-2880,-2905,
+-2924,-2942,-2960,-2980,-2997,-3015,-3025,-3043,-3059,-3070,-3081,-3088,-3095,-3101,-3116,-3133,-3150,-3161,-3170,-3169,
+-3177,-3186,-3192,-3185,-3192,-3189,-3188,-3182,-3168,-3157,-3147,-3134,-3123,-3115,-3114,-3122,-3107,-3092,-3089,-3085,
+-3086,-3089,-3083,-3056,-3023,-3053,-3022,-3015,-3037,-3048,-3041,-3044,-3072,-3076,-3001,-2977,-2935,-2841,-2707,-2546,
+-2486,-2438,-2408,-2336,-2345,-2300,-2307,-2282,-2249,-2230,-2199,-2164,-2132,-2089,-2080,-2052,-2027,-2017,-2014,-1992,
+-1980,-1957,-1913,-1896,-1796,-1779,-1783,-1775,-1756,-1709,-1638,-1604,-1571,-1547,-1554,-1544,-1544,-1540,-1523,-1508,
+-1523,-1533,-1542,-1542,-1533,-1534,-1549,-1502,-1458,-1455,-1430,-1418,-1422,-1456,-1466,-1471,-1447,-1409,-1398,-1419,
+-1448,-1472,-1478,-1467,-1433,-1364,-1355,-1370,-1340,-1294,-1247,-1195,-1182,-1283,-1415,-1566,-1678,-1767,-1833,-1895,
+-1948,-1956,-1941,-1937,-1952,-1968,-1972,-1986,-2031,-2088,-2120,-2165,-2199,-2223,-2245,-2269,-2307,-2346,-2395,-2428,
+-2449,-2463,-2463,-2474,-2502,-2516,-2546,-2572,-2629,-2736,-2837,-2911,-2955,-2945,-2849,-2781,-2779,-2865,-3001,-3096,
+-3155,-3195,-3213,-3225,-3232,-3238,-3252,-3276,-3290,-3295,-3299,-3308,-3320,-3338,-3338,-3335,-3332,-3330,-3338,-3349,
+-3340,-3342,-3357,-3375,-3387,-3400,-3416,-3436,-3430,-3414,-3403,-3379,-3375,-3378,-3387,-3427,-3468,-3508,-3559,-3582,
+-3590,-3607,-3615,-3609,-3595,-3567,-3546,-3528,-3517,-3505,-3499,-3491,-3479,-3467,-3449,-3416,-3379,-3340,-3298,-3261,
+-3240,-3231,-3228,-3246,-3283,-3313,-3323,-3341,-3349,-3323,-3259,-3189,-3125,-3122,-3139,-3156,-3201,-3243,-3257,-3206,
+-3108,-3018,-2978,-3004,-3032,-3060,-3071,-3071,-3061,-3032,-3001,-2961,-2910,-2890,-2890,-2890,-2881,-2879,-2886,-2859,
+-2814,-2765,-2728,-2714,-2691,-2673,-2664,-2636,-2610,-2572,-2545,-2577,-2688,-2748,-2767,-2743,-2705,-2672,-2647,-2634,
+-2634,-2639,-2641,-2639,-2632,-2631,-2635,-2636,-2622,-2602,-2574,-2544,-2511,-2478,-2441,-2406,-2364,-2315,-2260,-2208,
+-2143,-2075,-2009,-1941,-1863,-1788,-1714,-1633,-1547,-1451,-1358,-1272,-1199,-1128,-1066,-1002,-936,-872,-817,-763,
+-716,-667,-612,-528,-409,-297,-185,-76,33,141,223,261,304,367,468,619,746,841,900,954,
+1005,1054,1128,1191,1265,1376,1475,1548,1614,1677,1741,1802,1866,1930,1990,2057,2129,2195,2267,2332,
+2398,2471,2545,2615,2692,2770,2854,2933,3010,3086,3161,3234,3312,3385,3464,3563,3641,3707,3803,3902,
+3976,4050,4124,4201,4264,4333,4387,4421,4478,4529,4573,4644,4699,4749,4828,4893,4954,5005,5057,5104,
+5175,5248,5318,5381,5465,5518,5587,5646,5704,5744,5799,5856,5916,5966,6007,6070,6131,6109,6150,6159,
+6166,6147,6136,6139,6133,6133,6137,6131,6120,6105,6079,6056,6038,6022,6019,6005,5971,5960,5957,5948,
+5931,5905,5888,5879,5855,5829,5812,5781,5762,5757,5736,5711,5681,5651,5629,5596,5542,5469,5415,5384,
+5360,5352,5351,5332,5317,5297,5302,5276,5251,5225,5192,5167,5121,5093,5073,5064,5065,5039,5034,5023,
+5012,4999,4992,4993,4999,4996,5014,5028,5066,5104,5092,5111,5149,5178,5217,5255,5361,5507,5564,5595,
+5619,5668,5709,5711,5655,5668,5716,5727,5714,5698,5664,5620,5571,5514,5459,5412,5380,5375,5381,5382,
+5403,5426,5428,5402,5365,5325,5291,5242,5120,5058,5054,5058,5079,5057,5033,5032,5014,5003,5009,5023,
+5046,5039,5004,4993,4986,4960,4933,4902,4864,4758,4678,4635,4617,4602,4588,4580,4569,4552,4532,4519,
+4510,4509,4512,4510,4514,4527,4542,4559,4601,4670,4760,4848,4851,4828,4774,4675,4656,4660,4678,4677,
+4695,4703,4702,4737,4789,4808,4816,4859,4880,4870,4869,4884,4895,4840,4773,4727,4731,4753,4770,4748,
+4694,4629,4547,4419,4255,4119,4001,3888,3778,3683,3621,3558,3523,3591,3721,3939,4136,4220,4379,4409,
+4491,4508,4499,4437,4495,4472,4442,4471,4381,4401,4395,4375,4397,4358,4312,4269,4244,4198,4161,4119,
+4058,4006,3961,3931,3901,3883,3870,3853,3809,3751,3668,3593,3480,3374,3307,3272,3262,3223,3143,3109,
+3105,3143,3261,3351,3372,3440,3529,3569,3573,3544,3512,3488,3473,3455,3334,3275,3227,3143,3003,2906,
+2825,2710,2626,2574,2475,2308,2219,2150,2093,2045,2018,1998,1988,1971,1950,1926,1899,1880,1927,1993,
+2114,2288,2411,2538,2573,2557,2505,2460,2384,2370,2353,2244,2103,1917,1698,1496,1336,1200,1063,964,
+870,843,897,1043,1075,899,648,327,-28,-377,-675,-893,-1074,-1260,-1424,-1543,-1604,-1605,-1555,-1479,
+-1392,-1304,-1228,-1172,-1128,-1108,-1124,-1167,-1211,-1250,-1286,-1307,-1305,-1320,-1367,-1443,-1520,-1594,-1679,-1783,
+-1886,-1987,-2097,-2194,-2294,-2375,-2436,-2492,-2554,-2616,-2666,-2710,-2747,-2785,-2823,-2859,-2889,-2917,-2964,-3020,
+-3067,-3096,-3119,-3152,-3199,-3252,-3301,-3351,-3397,-3437,-3467,-3465,-3457,-3492,-3551,-3609,-3661,-3725,-3797,-3865,
+-3931,-4007,-4082,-4132,-4173,-4221,-4269,-4311,-4341,-4360,-4376,-4361,-4315,-4248,-4121,-3938,-3826,-3678,-3664,-3740,
+-3874,-4052,-4183,-4213,-4205,-4050,-3900,-3841,-3800,-3705,-3750,-3824,-3775,-3778,-3825,-3873,-3861,-3852,-3874,-3827,
+-3755,-3703,-3640,-3599,-3608,-3627,-3639,-3655,-3667,-3699,-3813,-4068,-4350,-4564,-4712,-4807,-4929,-5107,-5282,-5433,
+-5574,-5700,-5831,-5954,-6036,-6094,-6146,-6195,-6230,-6252,-6277,-6307,-6341,-6370,-6387,-6390,-6381,-6360,-6332,-6291,
+-6239,-6186,-6102,-6020,-5970,-5931,-5917,-5930,-5934,-5984,-6032,-6041,-6067,-6080,-6072,-6061,-6072,-6109,-6152,-6189,
+-6228,-6252,-6255,-6257,-6255,-6250,-6249,-6249,-6246,-6239,-6225,-6215,-6188,-6127,-6054,-5985,-5928,-5866,-5785,-5701,
+-5645,-5612,-5600,-5584,-5574,-5608,-5631,-5642,-5643,-5655,-5660,-5648,-5627,-5620,-5610,-5596,-5572,-5541,-5508,-5473,
+-5434,-5397,-5337,-5266,-5228,-5197,-5140,-5086,-5037,-4985,-4931,-4880,-4828,-4782,-4734,-4671,-4596,-4504,-4410,-4300,
+-4167,-4039,-3920,-3854,-3803,-3740,-3640,-3544,-3468,-3390,-3282,-3160,-3041,-2938,-2849,-2772,-2695,-2607,-2513,-2417,
+-2328,-2250,-2171,-2081,-2005,-1918,-1828,-1761,-1707,-1653,-1585,-1517,-1452,-1364,-1270,-1192,-1106,-1019,-934,-857,
+-810,-779,-711,-641,-578,-496,-425,-331,-205,-99,-70,-12,57,134,197,250,282,337,404,459,
+500,563,613,680,754,824,900,1000,1120,1227,1330,1441,1548,1636,1725,1786,1834,1883,1933,2017,
+2090,2140,2202,2278,2316,2383,2455,2499,2563,2678,2770,2814,2714,2562,2441,2340,2260,2234,2230,2243,
+2263,2283,2300,2321,2352,2382,2414,2452,2483,2508,2535,2562,2590,2617,2642,2672,2697,2730,2769,2808,
+2839,2861,2876,2894,2912,2933,2950,2963,2985,3029,3137,3245,3303,3313,3368,3521,3548,3467,3461,3447,
+3311,3156,2803,2444,2150,1929,1770,1657,1570,1482,1395,1287,1146,1023,919,869,884,943,1053,1189,
+1292,1392,1483,1574,1650,1699,1731,1755,1783,1818,1823,1820,1815,1814,1809,1788,1763,1727,1682,1639,
+1603,1569,1528,1485,1434,1379,1326,1267,1209,1152,1106,1060,1003,943,884,834,787,739,692,647,
+598,549,501,456,411,375,341,306,272,233,185,137,87,41,2,-36,-74,-113,-155,-193,
+-225,-250,-275,-300,-338,-369,-402,-436,-469,-498,-525,-548,-558,-577,-595,-618,-650,-679,-708,-735,
+-763,-790,-809,-824,-843,-873,-907,-957,-1013,-1069,-1122,-1160,-1176,-1154,-1082,-947,-725,-596,-680,-952,
+-1162,-1290,-1322,-1304,-1257,-1205,-1167,-1132,-1098,-1082,-1087,-1095,-1119,-1131,-1153,-1175,-1188,-1184,-1192,-1199,
+-1203,-1208,-1203,-1198,-1218,-1226,-1189,-1133,-1136,-1155,-1127,-1112,-1113,-1140,-1161,-1151,-1148,-1162,-1171,-1174,
+-1176,-1172,-1163,-1161,-1149,-1139,-1127,-1119,-1108,-1107,-1109,-1101,-1098,-1090,-1080,-1069,-1064,-1063,-1060,-1056,
+-1043,-1026,-1017,-1009,-997,-985,-981,-968,-955,-944,-933,-939,-944,-936,-931,-925,-925,-928,-929,-935,
+-937,-929,-926,-920,-913,-903,-890,-884,-879,-875,-856,-871,-866,-874,-892,-908,-936,-942,-934,-951,
+-969,-991,-1009,-1024,-1041,-1048,-1058,-1053,-1055,-1049,-1046,-1045,-1047,-1051,-1054,-1057,-1069,-1084,-1101,-1119,
+-1124,-1096,-1097,-1152,-1193,-1212,-1233,-1248,-1262,-1279,-1296,-1309,-1325,-1337,-1352,-1366,-1382,-1397,-1420,-1439,
+-1460,-1484,-1513,-1541,-1563,-1582,-1607,-1628,-1646,-1661,-1681,-1701,-1725,-1747,-1778,-1803,-1838,-1876,-1906,-1938,
+-1973,-2007,-2039,-2068,-2097,-2127,-2154,-2182,-2210,-2225,-2239,-2258,-2282,-2311,-2342,-2370,-2400,-2427,-2452,-2477,
+-2504,-2526,-2548,-2568,-2585,-2604,-2620,-2641,-2658,-2682,-2713,-2740,-2765,-2786,-2806,-2827,-2852,-2876,-2896,-2919,
+-2935,-2952,-2969,-2988,-3006,-3024,-3038,-3051,-3070,-3084,-3095,-3106,-3118,-3126,-3137,-3152,-3169,-3184,-3198,-3204,
+-3207,-3206,-3210,-3213,-3213,-3215,-3215,-3210,-3205,-3196,-3190,-3174,-3163,-3154,-3152,-3149,-3141,-3128,-3118,-3121,
+-3122,-3126,-3126,-3113,-3079,-3099,-3058,-3068,-3074,-3075,-3075,-3078,-3098,-3118,-3132,-3069,-3038,-2992,-2909,-2800,
+-2653,-2571,-2410,-2347,-2324,-2324,-2306,-2291,-2281,-2257,-2261,-2228,-2196,-2167,-2105,-2126,-2084,-2066,-2057,-2030,
+-2032,-2027,-2010,-1976,-1918,-1892,-1838,-1813,-1797,-1774,-1739,-1667,-1668,-1648,-1631,-1575,-1598,-1605,-1603,-1611,
+-1602,-1620,-1607,-1625,-1622,-1595,-1629,-1584,-1531,-1483,-1500,-1491,-1460,-1438,-1466,-1489,-1507,-1482,-1423,-1402,
+-1431,-1481,-1512,-1520,-1480,-1379,-1289,-1263,-1255,-1156,-1099,-1182,-1187,-1177,-1311,-1467,-1594,-1686,-1769,-1838,
+-1900,-1939,-1959,-1984,-1994,-1999,-2015,-2037,-2053,-2080,-2115,-2179,-2205,-2202,-2201,-2244,-2275,-2312,-2355,-2394,
+-2436,-2456,-2483,-2498,-2522,-2542,-2567,-2601,-2641,-2716,-2807,-2876,-2900,-2875,-2823,-2780,-2781,-2866,-2998,-3092,
+-3144,-3182,-3212,-3240,-3254,-3253,-3257,-3285,-3300,-3309,-3317,-3321,-3320,-3321,-3332,-3338,-3340,-3340,-3336,-3339,
+-3347,-3338,-3337,-3353,-3366,-3388,-3407,-3420,-3431,-3429,-3433,-3422,-3394,-3379,-3364,-3373,-3416,-3466,-3530,-3583,
+-3589,-3593,-3611,-3614,-3604,-3575,-3543,-3514,-3496,-3474,-3453,-3457,-3456,-3451,-3434,-3414,-3394,-3373,-3329,-3287,
+-3258,-3243,-3257,-3271,-3297,-3326,-3345,-3350,-3330,-3295,-3249,-3230,-3202,-3182,-3207,-3241,-3255,-3275,-3284,-3254,
+-3166,-3081,-3033,-3005,-3038,-3070,-3100,-3118,-3120,-3105,-3075,-3043,-2994,-2940,-2936,-2931,-2918,-2907,-2924,-2936,
+-2917,-2869,-2829,-2807,-2772,-2741,-2715,-2694,-2667,-2648,-2641,-2652,-2770,-2829,-2852,-2842,-2822,-2800,-2771,-2739,
+-2716,-2705,-2708,-2707,-2698,-2693,-2689,-2692,-2688,-2674,-2649,-2617,-2581,-2543,-2505,-2467,-2428,-2382,-2334,-2285,
+-2232,-2178,-2117,-2059,-1992,-1918,-1850,-1780,-1705,-1625,-1539,-1450,-1361,-1277,-1197,-1125,-1062,-996,-927,-861,
+-798,-742,-683,-634,-573,-484,-384,-290,-196,-98,57,121,153,252,314,424,576,670,749,833,
+896,941,1002,1072,1103,1134,1241,1368,1465,1551,1621,1681,1743,1805,1870,1930,1996,2067,2144,2208,
+2279,2346,2425,2500,2573,2650,2730,2803,2881,2960,3040,3117,3187,3264,3342,3426,3523,3598,3666,3758,
+3856,3933,4002,4070,4146,4207,4265,4324,4388,4434,4485,4548,4614,4654,4719,4793,4851,4915,4965,5007,
+5070,5142,5222,5300,5367,5443,5510,5574,5647,5697,5739,5830,5859,5899,5941,5995,6058,6097,6089,6159,
+6158,6140,6115,6110,6091,6100,6111,6113,6104,6101,6066,6038,6014,6012,6004,5993,5970,5936,5933,5914,
+5905,5889,5870,5841,5802,5773,5767,5754,5724,5716,5753,5719,5683,5645,5648,5621,5489,5431,5390,5345,
+5304,5284,5274,5273,5255,5243,5226,5207,5196,5199,5174,5148,5112,5075,5043,5019,5017,5015,5003,4991,
+4977,4959,4949,4945,4952,4952,4937,4942,4961,4968,4976,4974,5022,5045,5075,5124,5208,5275,5421,5509,
+5558,5576,5621,5662,5682,5669,5626,5653,5678,5659,5642,5630,5608,5560,5499,5425,5365,5332,5331,5362,
+5411,5432,5431,5419,5389,5339,5306,5268,5213,5144,5093,5084,5064,5044,5049,5032,5013,5010,5007,5029,
+5040,4988,4994,4985,4963,4921,4894,4853,4791,4760,4720,4679,4645,4617,4598,4585,4569,4555,4539,4524,
+4515,4507,4498,4501,4503,4511,4515,4518,4554,4624,4679,4703,4759,4801,4795,4746,4665,4627,4636,4631,
+4658,4653,4660,4658,4679,4703,4756,4779,4801,4809,4833,4805,4812,4820,4810,4783,4769,4772,4762,4761,
+4760,4736,4668,4583,4479,4345,4157,4006,3887,3772,3670,3610,3545,3493,3511,3610,3800,3989,4201,4238,
+4370,4402,4445,4487,4484,4500,4406,4376,4356,4311,4359,4369,4317,4287,4260,4254,4224,4205,4183,4164,
+4112,4060,3990,3942,3918,3881,3850,3831,3814,3802,3782,3745,3701,3643,3606,3574,3537,3516,3474,3418,
+3397,3435,3516,3588,3591,3601,3630,3607,3601,3586,3587,3581,3570,3554,3506,3419,3354,3267,3198,3186,
+3125,3008,2891,2808,2755,2708,2574,2503,2423,2350,2294,2255,2249,2250,2228,2205,2174,2132,2141,2225,
+2323,2470,2594,2566,2607,2583,2596,2561,2517,2469,2452,2405,2346,2194,2075,1892,1705,1477,1294,1149,
+1001,886,792,722,756,902,932,857,670,309,-112,-505,-840,-1088,-1313,-1512,-1673,-1765,-1769,-1699,
+-1596,-1478,-1356,-1265,-1200,-1147,-1122,-1125,-1157,-1199,-1229,-1259,-1295,-1313,-1329,-1338,-1370,-1447,-1554,-1650,
+-1753,-1840,-1932,-2049,-2164,-2262,-2346,-2418,-2480,-2542,-2607,-2655,-2696,-2731,-2772,-2816,-2853,-2891,-2928,-2971,
+-3028,-3076,-3101,-3128,-3168,-3217,-3268,-3310,-3346,-3378,-3396,-3418,-3454,-3491,-3545,-3580,-3605,-3619,-3672,-3744,
+-3828,-3899,-3970,-4045,-4107,-4153,-4189,-4233,-4287,-4335,-4380,-4407,-4404,-4386,-4328,-4145,-3929,-3852,-3834,-3839,
+-3993,-4219,-4420,-4534,-4556,-4495,-4333,-4198,-4133,-4007,-3875,-3836,-3850,-3826,-3849,-3875,-3874,-3841,-3827,-3847,
+-3797,-3698,-3634,-3562,-3512,-3517,-3532,-3584,-3678,-3738,-3844,-4064,-4334,-4574,-4773,-4976,-5155,-5312,-5482,-5631,
+-5735,-5814,-5888,-5971,-6054,-6123,-6188,-6254,-6310,-6353,-6382,-6407,-6440,-6474,-6495,-6504,-6506,-6499,-6474,-6443,
+-6401,-6348,-6302,-6245,-6182,-6102,-6034,-5990,-5966,-5945,-5981,-6016,-6022,-6000,-5990,-6006,-6054,-6121,-6196,-6256,
+-6294,-6319,-6323,-6308,-6290,-6252,-6218,-6209,-6213,-6206,-6202,-6211,-6212,-6180,-6103,-6015,-5961,-5927,-5867,-5813,
+-5757,-5695,-5644,-5622,-5628,-5637,-5647,-5656,-5671,-5668,-5653,-5638,-5612,-5591,-5595,-5598,-5591,-5564,-5536,-5508,
+-5479,-5442,-5396,-5340,-5288,-5240,-5178,-5108,-5048,-5000,-4945,-4888,-4843,-4807,-4751,-4682,-4603,-4534,-4463,-4374,
+-4252,-4117,-3986,-3904,-3918,-3964,-3929,-3849,-3754,-3654,-3550,-3395,-3223,-3073,-2952,-2841,-2728,-2617,-2500,-2412,
+-2328,-2248,-2170,-2078,-1992,-1922,-1829,-1749,-1704,-1659,-1591,-1526,-1467,-1397,-1320,-1245,-1161,-1068,-996,-926,
+-868,-821,-804,-729,-632,-555,-463,-386,-316,-212,-84,-35,43,93,163,215,267,322,349,405,
+461,512,571,622,680,750,837,943,1047,1155,1261,1360,1475,1569,1645,1747,1807,1854,1887,1946,
+2019,2049,2134,2229,2325,2405,2426,2470,2515,2573,2692,2776,2778,2669,2561,2469,2320,2255,2237,2242,
+2260,2283,2310,2334,2354,2378,2409,2443,2472,2500,2523,2548,2578,2611,2641,2667,2693,2721,2761,2803,
+2840,2870,2895,2912,2926,2943,2961,2981,3006,3042,3098,3176,3225,3260,3307,3403,3504,3552,3545,3558,
+3546,3444,3301,3016,2686,2342,2050,1789,1591,1468,1379,1277,1171,1053,977,918,924,1002,1133,1311,
+1492,1547,1618,1689,1753,1802,1836,1852,1854,1851,1856,1863,1859,1848,1830,1813,1782,1748,1715,1670,
+1617,1574,1536,1493,1444,1395,1339,1274,1221,1177,1129,1079,1026,967,907,852,804,761,711,664,
+618,573,525,478,435,396,360,327,289,251,209,162,112,61,19,-15,-49,-86,-132,-170,
+-210,-249,-272,-297,-327,-360,-397,-428,-452,-464,-485,-519,-557,-585,-604,-631,-654,-679,-706,-736,
+-760,-771,-804,-840,-854,-878,-905,-941,-988,-1042,-1097,-1152,-1185,-1171,-1116,-1006,-838,-577,-306,-380,
+-753,-1122,-1299,-1337,-1310,-1259,-1206,-1158,-1123,-1101,-1087,-1096,-1107,-1121,-1137,-1166,-1194,-1211,-1209,-1215,
+-1218,-1220,-1228,-1225,-1213,-1203,-1218,-1224,-1167,-1116,-1186,-1182,-1153,-1137,-1150,-1153,-1168,-1164,-1163,-1165,
+-1176,-1185,-1182,-1180,-1184,-1174,-1162,-1155,-1150,-1144,-1145,-1138,-1129,-1122,-1113,-1097,-1093,-1092,-1094,-1092,
+-1082,-1071,-1062,-1052,-1044,-1036,-1027,-1020,-1008,-994,-980,-973,-972,-969,-972,-969,-968,-962,-963,-965,
+-959,-949,-949,-953,-956,-956,-950,-938,-926,-917,-907,-905,-911,-897,-910,-915,-947,-970,-987,-1001,
+-1010,-1020,-1036,-1053,-1063,-1071,-1072,-1067,-1065,-1068,-1067,-1067,-1066,-1070,-1080,-1088,-1097,-1115,-1129,-1144,
+-1154,-1155,-1149,-1167,-1206,-1226,-1246,-1259,-1275,-1290,-1306,-1319,-1334,-1352,-1370,-1387,-1405,-1419,-1429,-1453,
+-1459,-1490,-1508,-1534,-1562,-1589,-1614,-1633,-1647,-1664,-1680,-1703,-1728,-1755,-1777,-1801,-1830,-1866,-1898,-1929,
+-1960,-1990,-2021,-2051,-2079,-2110,-2134,-2158,-2180,-2206,-2227,-2254,-2280,-2309,-2336,-2356,-2391,-2419,-2449,-2472,
+-2500,-2531,-2555,-2575,-2590,-2609,-2629,-2647,-2675,-2700,-2728,-2758,-2788,-2813,-2833,-2852,-2870,-2890,-2910,-2925,
+-2945,-2966,-2978,-2997,-3014,-3032,-3049,-3068,-3089,-3106,-3120,-3132,-3145,-3155,-3168,-3187,-3203,-3213,-3225,-3234,
+-3244,-3244,-3246,-3252,-3249,-3247,-3247,-3247,-3245,-3241,-3232,-3224,-3196,-3191,-3193,-3180,-3167,-3180,-3165,-3159,
+-3167,-3161,-3168,-3153,-3126,-3082,-3122,-3096,-3094,-3122,-3122,-3127,-3141,-3150,-3172,-3199,-3161,-3111,-3069,-2964,
+-2844,-2748,-2623,-2503,-2365,-2337,-2294,-2353,-2372,-2342,-2327,-2301,-2250,-2191,-2190,-2118,-2144,-2111,-2099,-2097,
+-2085,-2118,-2036,-2043,-2003,-1970,-1952,-1895,-1859,-1834,-1817,-1774,-1733,-1733,-1722,-1719,-1673,-1641,-1657,-1666,
+-1674,-1689,-1690,-1677,-1676,-1684,-1661,-1661,-1657,-1579,-1535,-1535,-1502,-1440,-1414,-1426,-1450,-1485,-1465,-1401,
+-1406,-1451,-1516,-1552,-1539,-1488,-1366,-1226,-1161,-1176,-1106,-1052,-1136,-1159,-1193,-1320,-1518,-1642,-1725,-1795,
+-1831,-1868,-1913,-1961,-1992,-2010,-2025,-2042,-2072,-2091,-2137,-2173,-2208,-2225,-2235,-2239,-2272,-2296,-2333,-2376,
+-2410,-2445,-2478,-2503,-2521,-2560,-2585,-2601,-2651,-2705,-2738,-2748,-2770,-2785,-2800,-2818,-2863,-2949,-3036,-3088,
+-3128,-3157,-3180,-3207,-3240,-3270,-3287,-3297,-3315,-3327,-3333,-3342,-3341,-3333,-3324,-3322,-3329,-3343,-3349,-3340,
+-3320,-3310,-3308,-3313,-3321,-3350,-3383,-3416,-3433,-3434,-3424,-3425,-3416,-3398,-3351,-3334,-3369,-3410,-3471,-3545,
+-3604,-3610,-3590,-3564,-3579,-3564,-3530,-3493,-3459,-3440,-3438,-3432,-3447,-3454,-3453,-3437,-3415,-3404,-3377,-3338,
+-3304,-3281,-3279,-3290,-3328,-3346,-3370,-3399,-3400,-3370,-3306,-3274,-3269,-3258,-3262,-3291,-3315,-3321,-3317,-3282,
+-3235,-3148,-3078,-3054,-3064,-3097,-3129,-3155,-3167,-3158,-3142,-3127,-3083,-3032,-3006,-2984,-2974,-2982,-2978,-2991,
+-3000,-2972,-2943,-2910,-2864,-2817,-2782,-2754,-2732,-2718,-2713,-2744,-2839,-2911,-2929,-2932,-2928,-2918,-2898,-2867,
+-2832,-2803,-2779,-2767,-2759,-2750,-2748,-2745,-2739,-2725,-2706,-2682,-2644,-2604,-2565,-2530,-2493,-2455,-2410,-2364,
+-2315,-2267,-2217,-2158,-2100,-2038,-1971,-1911,-1849,-1774,-1700,-1621,-1534,-1443,-1354,-1276,-1203,-1130,-1057,-986,
+-916,-843,-775,-710,-660,-607,-531,-449,-365,-272,-192,-105,-20,39,167,288,404,516,590,651,
+748,821,900,954,998,1050,1088,1157,1268,1375,1465,1553,1626,1691,1757,1815,1876,1945,2021,2089,
+2152,2223,2298,2385,2455,2537,2616,2690,2759,2837,2911,2997,3077,3159,3230,3298,3387,3482,3550,3630,
+3721,3805,3883,3950,4027,4096,4162,4219,4283,4342,4395,4447,4510,4574,4615,4686,4754,4809,4869,4947,
+5011,5093,5153,5207,5296,5374,5446,5498,5574,5633,5685,5739,5782,5827,5876,5914,5979,6045,6069,6079,
+6130,6135,6117,6094,6092,6094,6080,6086,6091,6085,6077,6041,6021,6008,5976,5974,5958,5931,5906,5887,
+5871,5856,5852,5825,5805,5771,5733,5701,5693,5714,5699,5719,5695,5635,5618,5630,5522,5410,5357,5323,
+5289,5257,5243,5226,5228,5226,5214,5192,5184,5170,5167,5154,5143,5117,5094,5074,5009,4973,4960,4949,
+4948,4928,4908,4898,4886,4882,4885,4882,4897,4902,4888,4827,4861,4942,4925,4956,5018,5088,5227,5396,
+5504,5540,5573,5598,5650,5654,5635,5625,5604,5628,5621,5620,5619,5596,5536,5477,5421,5365,5331,5344,
+5363,5408,5464,5484,5448,5413,5386,5318,5259,5212,5177,5159,5127,5088,5046,5026,5013,5066,5052,5017,
+5004,4961,4958,4930,4889,4859,4826,4794,4769,4746,4729,4714,4679,4638,4619,4607,4587,4568,4552,4532,
+4516,4506,4499,4495,4495,4497,4494,4483,4491,4578,4723,4731,4733,4813,4825,4784,4731,4665,4610,4608,
+4615,4598,4598,4580,4598,4596,4603,4652,4720,4743,4731,4726,4737,4741,4758,4794,4823,4820,4828,4800,
+4783,4771,4764,4706,4631,4553,4435,4271,4125,3977,3808,3677,3596,3537,3479,3462,3517,3652,3877,4039,
+4147,4253,4365,4342,4477,4391,4411,4338,4310,4320,4314,4226,4210,4212,4183,4180,4136,4124,4120,4117,
+4106,4086,4031,4005,3982,3939,3915,3866,3804,3764,3742,3754,3745,3733,3727,3714,3694,3661,3632,3618,
+3646,3652,3670,3720,3725,3702,3716,3696,3665,3651,3636,3657,3642,3559,3522,3474,3408,3410,3408,3315,
+3258,3234,3173,3088,3036,2995,2942,2870,2828,2751,2691,2640,2635,2656,2677,2654,2573,2499,2487,2538,
+2617,2697,2798,2764,2685,2700,2691,2635,2596,2575,2525,2498,2420,2386,2280,2161,2079,1950,1734,1552,
+1353,1160,982,821,699,635,630,624,622,612,468,133,-289,-681,-1033,-1347,-1598,-1791,-1902,-1931,
+-1875,-1759,-1611,-1442,-1319,-1242,-1190,-1165,-1170,-1197,-1226,-1251,-1280,-1302,-1315,-1331,-1347,-1353,-1411,-1514,
+-1630,-1735,-1837,-1937,-2026,-2142,-2246,-2337,-2408,-2465,-2526,-2584,-2634,-2673,-2713,-2757,-2806,-2852,-2893,-2932,
+-2978,-3039,-3085,-3106,-3133,-3184,-3229,-3269,-3305,-3330,-3356,-3378,-3416,-3472,-3522,-3576,-3615,-3635,-3649,-3659,
+-3690,-3770,-3854,-3916,-3980,-4049,-4114,-4164,-4214,-4271,-4332,-4393,-4429,-4436,-4412,-4342,-4205,-4125,-4090,-4128,
+-4288,-4482,-4638,-4753,-4815,-4815,-4760,-4662,-4536,-4378,-4169,-3998,-3851,-3730,-3728,-3682,-3646,-3629,-3637,-3657,
+-3611,-3577,-3563,-3579,-3527,-3470,-3461,-3488,-3569,-3674,-3831,-4052,-4253,-4394,-4571,-4836,-5104,-5345,-5568,-5727,
+-5837,-5909,-5943,-5983,-6049,-6125,-6199,-6260,-6308,-6352,-6393,-6423,-6454,-6492,-6530,-6560,-6583,-6589,-6578,-6559,
+-6530,-6480,-6429,-6400,-6370,-6324,-6269,-6228,-6208,-6173,-6118,-6104,-6097,-6101,-6095,-6098,-6130,-6192,-6284,-6353,
+-6397,-6392,-6370,-6359,-6324,-6284,-6236,-6198,-6185,-6192,-6185,-6168,-6191,-6201,-6151,-6069,-6010,-5986,-5967,-5919,
+-5873,-5821,-5776,-5733,-5704,-5676,-5662,-5661,-5674,-5683,-5669,-5651,-5626,-5588,-5583,-5595,-5589,-5575,-5553,-5529,
+-5506,-5480,-5450,-5399,-5335,-5286,-5218,-5127,-5048,-4986,-4928,-4870,-4815,-4766,-4732,-4671,-4602,-4535,-4479,-4415,
+-4326,-4217,-4094,-4030,-4066,-4131,-4128,-4067,-3972,-3865,-3746,-3619,-3471,-3318,-3147,-2966,-2841,-2736,-2590,-2452,
+-2366,-2283,-2220,-2162,-2114,-2032,-1945,-1823,-1740,-1690,-1634,-1548,-1488,-1420,-1358,-1282,-1227,-1164,-1072,-977,
+-941,-887,-829,-792,-708,-622,-512,-434,-359,-281,-200,-99,-21,49,127,174,220,284,319,359,
+403,463,529,583,642,714,798,887,979,1087,1196,1308,1409,1498,1571,1643,1721,1785,1840,1875,
+1925,1977,2039,2122,2231,2376,2438,2473,2555,2563,2578,2652,2674,2662,2568,2568,2480,2340,2266,2255,
+2268,2284,2309,2338,2363,2384,2407,2438,2470,2494,2518,2541,2568,2602,2634,2661,2689,2719,2753,2789,
+2827,2857,2894,2923,2949,2972,2992,3008,3023,3052,3098,3140,3170,3198,3238,3316,3377,3503,3597,3631,
+3612,3614,3558,3449,3232,2928,2571,2237,1948,1726,1569,1454,1327,1149,1025,980,1033,1141,1227,1370,
+1524,1644,1719,1780,1845,1888,1908,1919,1924,1914,1899,1881,1883,1875,1857,1828,1793,1763,1724,1689,
+1645,1595,1543,1496,1449,1401,1349,1296,1241,1191,1142,1094,1044,989,935,880,829,791,745,690,
+641,595,551,504,457,420,384,349,312,268,224,178,131,85,45,8,-26,-61,-97,-141,
+-181,-222,-259,-290,-315,-342,-374,-409,-442,-475,-503,-527,-551,-580,-609,-634,-659,-682,-708,-733,
+-765,-785,-811,-837,-860,-879,-907,-939,-982,-1025,-1073,-1130,-1189,-1216,-1193,-1125,-992,-781,-541,-264,
+-427,-873,-1206,-1352,-1375,-1334,-1268,-1207,-1157,-1120,-1101,-1091,-1096,-1106,-1127,-1147,-1176,-1210,-1230,-1228,
+-1226,-1231,-1233,-1241,-1243,-1243,-1225,-1206,-1232,-1224,-1209,-1190,-1152,-1150,-1157,-1149,-1160,-1165,-1165,-1157,
+-1164,-1190,-1201,-1203,-1200,-1203,-1201,-1193,-1187,-1183,-1181,-1172,-1159,-1159,-1155,-1139,-1125,-1118,-1117,-1120,
+-1116,-1106,-1097,-1087,-1078,-1071,-1065,-1057,-1047,-1038,-1028,-1019,-1012,-1007,-1006,-1007,-1002,-999,-998,-995,
+-988,-979,-973,-977,-985,-992,-996,-994,-983,-970,-960,-945,-936,-939,-954,-940,-960,-983,-991,-1016,
+-1036,-1040,-1035,-1057,-1070,-1082,-1091,-1097,-1095,-1093,-1092,-1094,-1094,-1097,-1110,-1123,-1135,-1148,-1161,-1173,
+-1178,-1178,-1179,-1190,-1212,-1227,-1245,-1267,-1288,-1304,-1317,-1330,-1345,-1360,-1381,-1399,-1419,-1441,-1456,-1471,
+-1483,-1500,-1522,-1549,-1576,-1605,-1626,-1643,-1652,-1663,-1680,-1706,-1730,-1758,-1782,-1799,-1821,-1849,-1881,-1909,
+-1937,-1970,-2004,-2030,-2056,-2084,-2110,-2129,-2149,-2181,-2213,-2244,-2272,-2300,-2330,-2361,-2387,-2414,-2443,-2470,
+-2498,-2530,-2561,-2585,-2598,-2616,-2634,-2657,-2679,-2713,-2748,-2782,-2812,-2840,-2855,-2873,-2890,-2908,-2927,-2947,
+-2962,-2977,-2993,-3006,-3024,-3047,-3069,-3090,-3108,-3126,-3142,-3156,-3169,-3182,-3198,-3212,-3231,-3244,-3257,-3270,
+-3285,-3288,-3288,-3286,-3288,-3290,-3289,-3294,-3294,-3295,-3289,-3281,-3273,-3263,-3253,-3239,-3234,-3232,-3221,-3218,
+-3211,-3212,-3207,-3209,-3198,-3165,-3143,-3190,-3131,-3145,-3167,-3170,-3173,-3186,-3196,-3223,-3247,-3237,-3142,-3090,
+-3007,-2886,-2769,-2638,-2524,-2423,-2439,-2460,-2497,-2476,-2418,-2399,-2341,-2266,-2228,-2204,-2173,-2163,-2168,-2131,
+-2140,-2159,-2150,-2080,-2100,-2048,-2030,-2001,-1991,-1952,-1907,-1879,-1839,-1808,-1779,-1788,-1750,-1714,-1703,-1695,
+-1709,-1738,-1723,-1746,-1734,-1704,-1720,-1724,-1693,-1693,-1602,-1595,-1540,-1448,-1340,-1290,-1294,-1343,-1409,-1428,
+-1407,-1407,-1474,-1531,-1558,-1550,-1499,-1406,-1285,-1139,-1105,-1124,-1116,-1124,-1148,-1222,-1362,-1552,-1680,-1763,
+-1818,-1854,-1886,-1918,-1951,-1986,-2000,-2025,-2066,-2099,-2135,-2175,-2212,-2240,-2273,-2302,-2312,-2332,-2364,-2382,
+-2409,-2432,-2469,-2496,-2543,-2575,-2618,-2649,-2679,-2710,-2689,-2646,-2662,-2727,-2812,-2902,-2991,-3058,-3096,-3116,
+-3127,-3149,-3168,-3191,-3211,-3234,-3269,-3303,-3323,-3335,-3346,-3354,-3359,-3356,-3343,-3338,-3333,-3336,-3341,-3337,
+-3320,-3293,-3272,-3264,-3277,-3291,-3332,-3369,-3397,-3420,-3425,-3425,-3429,-3442,-3441,-3414,-3381,-3373,-3405,-3466,
+-3535,-3592,-3606,-3584,-3570,-3549,-3519,-3475,-3426,-3399,-3389,-3396,-3411,-3437,-3462,-3481,-3474,-3447,-3422,-3396,
+-3366,-3335,-3314,-3320,-3335,-3354,-3390,-3399,-3397,-3418,-3399,-3363,-3343,-3340,-3359,-3374,-3403,-3395,-3368,-3331,
+-3310,-3252,-3172,-3134,-3117,-3138,-3181,-3215,-3222,-3215,-3199,-3199,-3180,-3140,-3099,-3071,-3038,-3043,-3068,-3070,
+-3070,-3066,-3050,-3019,-2968,-2916,-2868,-2830,-2804,-2787,-2772,-2797,-2925,-2987,-3004,-3024,-3028,-3025,-3012,-2988,
+-2954,-2920,-2888,-2864,-2839,-2822,-2813,-2804,-2795,-2782,-2759,-2738,-2710,-2675,-2636,-2601,-2567,-2531,-2492,-2446,
+-2398,-2347,-2301,-2252,-2193,-2135,-2082,-2024,-1963,-1901,-1835,-1762,-1689,-1603,-1520,-1437,-1355,-1275,-1194,-1116,
+-1036,-960,-885,-818,-759,-701,-639,-548,-469,-396,-322,-242,-168,-88,4,114,250,358,451,533,
+605,698,787,856,899,962,1030,1097,1147,1219,1302,1397,1491,1575,1643,1710,1778,1847,1914,1982,
+2046,2114,2184,2267,2345,2420,2504,2582,2654,2715,2783,2862,2953,3039,3121,3208,3274,3354,3444,3509,
+3594,3688,3770,3838,3911,3989,4063,4117,4167,4232,4300,4357,4409,4491,4560,4595,4657,4726,4799,4861,
+4923,4975,5051,5133,5196,5284,5367,5430,5493,5561,5627,5677,5727,5768,5825,5861,5933,5982,6031,6071,
+6043,6088,6108,6103,6076,6076,6061,6084,6066,6050,6054,6030,6018,6002,5981,5960,5945,5926,5887,5862,
+5850,5835,5810,5796,5774,5760,5718,5682,5648,5640,5646,5654,5660,5615,5575,5532,5487,5404,5323,5283,
+5258,5231,5211,5212,5204,5214,5196,5174,5168,5164,5148,5134,5129,5122,5085,5045,4997,4959,4932,4906,
+4887,4868,4852,4841,4830,4815,4809,4814,4813,4800,4787,4805,4772,4762,4783,4809,4856,4925,5032,5202,
+5394,5490,5546,5569,5612,5679,5682,5659,5627,5598,5604,5619,5616,5608,5595,5556,5490,5433,5382,5377,
+5370,5412,5410,5404,5395,5352,5354,5386,5378,5337,5274,5241,5209,5200,5155,5116,5078,5066,5157,5131,
+5021,4988,4968,4955,4887,4823,4791,4770,4756,4733,4714,4710,4698,4673,4636,4623,4604,4578,4570,4552,
+4535,4522,4509,4504,4496,4488,4478,4460,4449,4483,4647,4751,4777,4825,4823,4833,4812,4744,4655,4648,
+4577,4550,4547,4522,4534,4557,4536,4528,4523,4555,4629,4669,4684,4679,4712,4727,4771,4817,4857,4847,
+4833,4812,4737,4672,4638,4598,4543,4479,4358,4214,4063,3902,3736,3592,3517,3472,3455,3511,3629,3769,
+3942,4030,4146,4255,4253,4295,4305,4239,4195,4219,4245,4260,4251,4175,4156,4115,4099,4123,4065,4071,
+4053,4052,4027,4033,4030,4007,3987,3966,3886,3765,3690,3702,3713,3715,3739,3743,3737,3736,3699,3683,
+3657,3691,3746,3751,3786,3772,3778,3778,3776,3754,3717,3693,3647,3608,3575,3533,3472,3446,3450,3421,
+3338,3316,3328,3224,3155,3175,3196,3178,3113,3077,3079,3050,3002,2989,2974,3010,2996,2954,2883,2858,
+2899,2950,2964,2878,2768,2718,2703,2676,2678,2648,2577,2502,2435,2375,2382,2350,2264,2177,2050,1985,
+1850,1696,1486,1234,1008,811,638,531,477,421,353,214,-18,-318,-647,-989,-1338,-1618,-1821,-1953,
+-2028,-2028,-1947,-1795,-1599,-1433,-1326,-1262,-1226,-1229,-1251,-1281,-1301,-1305,-1318,-1333,-1344,-1359,-1373,-1396,
+-1470,-1592,-1718,-1833,-1942,-2036,-2128,-2235,-2323,-2391,-2451,-2507,-2566,-2619,-2662,-2705,-2748,-2802,-2855,-2901,
+-2941,-2985,-3042,-3095,-3130,-3150,-3192,-3241,-3275,-3313,-3353,-3385,-3400,-3417,-3466,-3543,-3588,-3605,-3617,-3616,
+-3628,-3645,-3686,-3754,-3820,-3890,-3971,-4050,-4134,-4214,-4283,-4341,-4397,-4439,-4457,-4421,-4331,-4225,-4180,-4263,
+-4473,-4663,-4792,-4883,-4921,-4926,-4897,-4820,-4684,-4549,-4409,-4271,-4114,-3880,-3705,-3594,-3539,-3530,-3507,-3487,
+-3477,-3472,-3495,-3505,-3504,-3503,-3544,-3627,-3722,-3785,-3872,-3988,-4135,-4327,-4540,-4756,-4981,-5234,-5488,-5694,
+-5832,-5926,-5988,-6020,-6057,-6119,-6182,-6235,-6280,-6315,-6352,-6389,-6419,-6450,-6484,-6524,-6575,-6617,-6637,-6634,
+-6617,-6593,-6549,-6505,-6486,-6467,-6429,-6392,-6371,-6366,-6358,-6331,-6306,-6293,-6290,-6309,-6335,-6365,-6391,-6426,
+-6444,-6446,-6427,-6402,-6381,-6341,-6305,-6280,-6283,-6294,-6290,-6253,-6228,-6191,-6157,-6152,-6132,-6111,-6099,-6070,
+-6014,-5957,-5904,-5875,-5835,-5788,-5746,-5718,-5713,-5722,-5719,-5678,-5646,-5620,-5585,-5573,-5586,-5597,-5589,-5566,
+-5538,-5514,-5488,-5445,-5391,-5332,-5270,-5185,-5091,-5014,-4953,-4894,-4838,-4789,-4725,-4681,-4647,-4591,-4529,-4471,
+-4393,-4307,-4221,-4152,-4209,-4260,-4237,-4162,-4068,-3959,-3840,-3711,-3581,-3423,-3255,-3125,-3003,-2911,-2785,-2658,
+-2552,-2460,-2430,-2384,-2317,-2239,-2104,-1950,-1828,-1751,-1666,-1608,-1514,-1439,-1393,-1354,-1336,-1282,-1189,-1081,
+-990,-934,-889,-838,-800,-730,-642,-543,-392,-335,-276,-199,-105,-16,41,121,194,232,249,293,
+334,395,471,552,632,700,774,847,930,1020,1115,1234,1337,1421,1479,1550,1622,1699,1772,1835,
+1883,1943,2022,2093,2168,2282,2419,2469,2524,2599,2594,2580,2552,2564,2548,2488,2475,2427,2337,2288,
+2277,2299,2317,2339,2361,2394,2438,2437,2460,2491,2515,2539,2561,2588,2622,2654,2690,2736,2770,2796,
+2829,2863,2891,2924,2951,2980,3011,3043,3061,3070,3098,3139,3184,3209,3222,3272,3382,3457,3617,3678,
+3694,3739,3771,3654,3593,3448,3180,2823,2484,2183,1953,1779,1611,1434,1213,1056,1034,1145,1298,1432,
+1577,1709,1807,1864,1910,1964,1974,1969,1964,1959,1948,1933,1914,1889,1884,1860,1822,1778,1738,1699,
+1658,1620,1568,1511,1455,1402,1349,1300,1247,1201,1149,1096,1048,998,946,894,844,799,761,719,
+668,618,571,527,484,444,405,367,330,289,247,199,148,105,67,26,-7,-41,-75,-112,
+-151,-189,-231,-270,-306,-337,-365,-396,-428,-458,-487,-515,-539,-566,-589,-626,-660,-689,-717,-743,
+-767,-791,-811,-832,-854,-878,-904,-933,-970,-1014,-1060,-1106,-1158,-1209,-1239,-1230,-1167,-1036,-821,-540,
+-382,-674,-1051,-1310,-1403,-1403,-1363,-1280,-1219,-1167,-1127,-1109,-1084,-1095,-1106,-1128,-1153,-1182,-1217,-1240,
+-1235,-1231,-1240,-1241,-1247,-1253,-1257,-1258,-1246,-1231,-1214,-1212,-1220,-1185,-1140,-1133,-1148,-1168,-1173,-1176,
+-1164,-1170,-1198,-1212,-1218,-1214,-1219,-1219,-1218,-1215,-1207,-1201,-1194,-1187,-1184,-1179,-1167,-1158,-1149,-1144,
+-1142,-1134,-1128,-1121,-1114,-1104,-1096,-1093,-1087,-1080,-1076,-1069,-1059,-1046,-1035,-1029,-1030,-1033,-1031,-1024,
+-1014,-1001,-997,-999,-1004,-1014,-1021,-1022,-1019,-1008,-998,-990,-974,-968,-967,-982,-971,-1005,-1015,-1013,
+-1033,-1042,-1049,-1064,-1084,-1104,-1118,-1122,-1127,-1132,-1128,-1128,-1129,-1131,-1139,-1156,-1165,-1147,-1186,-1201,
+-1209,-1212,-1210,-1209,-1220,-1235,-1251,-1272,-1294,-1316,-1334,-1347,-1360,-1372,-1392,-1411,-1434,-1453,-1474,-1493,
+-1502,-1515,-1546,-1570,-1596,-1627,-1644,-1655,-1663,-1673,-1688,-1708,-1728,-1752,-1780,-1803,-1820,-1845,-1871,-1899,
+-1930,-1957,-1984,-2009,-2035,-2060,-2083,-2106,-2132,-2166,-2199,-2228,-2256,-2286,-2316,-2352,-2382,-2410,-2443,-2472,
+-2498,-2528,-2558,-2587,-2610,-2630,-2652,-2675,-2698,-2727,-2758,-2793,-2826,-2854,-2876,-2890,-2910,-2928,-2948,-2968,
+-2980,-2997,-3008,-3018,-3036,-3060,-3079,-3103,-3124,-3139,-3156,-3175,-3190,-3207,-3226,-3247,-3266,-3282,-3295,-3303,
+-3313,-3323,-3328,-3328,-3330,-3338,-3340,-3345,-3354,-3354,-3350,-3344,-3339,-3334,-3331,-3329,-3292,-3260,-3269,-3280,
+-3261,-3259,-3259,-3244,-3243,-3245,-3225,-3230,-3262,-3207,-3219,-3234,-3237,-3232,-3232,-3237,-3247,-3277,-3277,-3191,
+-3111,-3043,-2928,-2794,-2726,-2652,-2605,-2595,-2598,-2634,-2571,-2433,-2383,-2309,-2262,-2243,-2234,-2222,-2210,-2191,
+-2211,-2204,-2182,-2147,-2116,-2118,-2094,-2069,-2030,-2017,-2013,-1944,-1939,-1876,-1864,-1847,-1815,-1763,-1787,-1777,
+-1767,-1753,-1797,-1805,-1793,-1774,-1752,-1747,-1744,-1735,-1708,-1604,-1561,-1484,-1336,-1224,-1169,-1193,-1245,-1317,
+-1384,-1423,-1461,-1537,-1589,-1607,-1571,-1512,-1436,-1344,-1250,-1163,-1195,-1208,-1144,-1139,-1264,-1446,-1613,-1722,
+-1790,-1845,-1889,-1919,-1937,-1975,-2012,-2033,-2062,-2096,-2143,-2182,-2220,-2255,-2299,-2314,-2331,-2360,-2391,-2413,
+-2437,-2452,-2464,-2500,-2527,-2561,-2605,-2652,-2695,-2725,-2716,-2637,-2630,-2713,-2848,-2970,-3053,-3105,-3131,-3136,
+-3145,-3155,-3164,-3181,-3198,-3217,-3239,-3273,-3311,-3340,-3355,-3364,-3371,-3376,-3371,-3362,-3367,-3370,-3358,-3345,
+-3320,-3287,-3273,-3257,-3250,-3256,-3290,-3325,-3362,-3393,-3419,-3439,-3460,-3479,-3481,-3481,-3470,-3447,-3416,-3407,
+-3444,-3493,-3539,-3568,-3557,-3541,-3513,-3475,-3432,-3393,-3375,-3366,-3384,-3408,-3440,-3479,-3499,-3494,-3467,-3436,
+-3412,-3379,-3343,-3330,-3339,-3359,-3397,-3407,-3421,-3434,-3443,-3431,-3413,-3422,-3456,-3482,-3490,-3482,-3444,-3408,
+-3379,-3335,-3266,-3235,-3205,-3194,-3234,-3268,-3276,-3277,-3282,-3271,-3261,-3246,-3213,-3174,-3135,-3131,-3136,-3147,
+-3156,-3151,-3141,-3121,-3084,-3029,-2974,-2934,-2902,-2873,-2862,-2886,-2985,-3041,-3078,-3096,-3111,-3119,-3115,-3099,
+-3067,-3037,-3007,-2974,-2946,-2921,-2896,-2883,-2871,-2853,-2832,-2801,-2774,-2743,-2711,-2677,-2640,-2604,-2564,-2524,
+-2478,-2430,-2385,-2336,-2285,-2233,-2173,-2121,-2066,-2009,-1947,-1889,-1821,-1745,-1663,-1582,-1497,-1415,-1342,-1262,
+-1181,-1097,-1015,-935,-864,-793,-736,-681,-612,-522,-437,-370,-280,-188,-86,16,122,230,323,403,
+484,569,645,729,802,864,928,990,1053,1124,1200,1269,1344,1442,1530,1596,1663,1730,1798,1866,
+1932,2001,2073,2147,2227,2301,2381,2461,2538,2618,2688,2747,2815,2904,2993,3083,3182,3269,3349,3418,
+3492,3568,3655,3729,3807,3868,3930,3998,4068,4124,4173,4236,4311,4380,4448,4494,4548,4617,4690,4764,
+4835,4897,4962,5034,5109,5190,5263,5340,5407,5500,5556,5625,5673,5716,5753,5801,5849,5888,5915,6016,
+6034,5999,6040,6051,6062,6055,6054,6055,6083,6065,6013,6006,5991,5983,5966,5940,5916,5902,5901,5872,
+5840,5799,5771,5729,5721,5715,5707,5699,5670,5629,5610,5593,5606,5576,5541,5501,5454,5394,5341,5302,
+5260,5200,5164,5166,5161,5163,5166,5144,5132,5131,5116,5117,5107,5109,5100,5041,4996,4964,4945,4944,
+4873,4841,4814,4786,4759,4743,4730,4729,4733,4730,4734,4728,4720,4713,4707,4697,4727,4795,4899,4941,
+5090,5355,5464,5513,5568,5614,5621,5644,5648,5634,5623,5621,5636,5642,5641,5630,5588,5555,5545,5475,
+5436,5407,5376,5294,5255,5270,5282,5302,5341,5354,5351,5323,5274,5254,5257,5239,5212,5161,5157,5186,
+5094,5029,4993,4985,4969,4885,4813,4774,4756,4740,4727,4721,4714,4703,4683,4645,4613,4595,4578,4568,
+4550,4534,4521,4509,4504,4491,4472,4439,4413,4425,4553,4662,4737,4822,4856,4879,4859,4816,4733,4637,
+4605,4559,4511,4479,4481,4492,4503,4478,4470,4474,4456,4490,4541,4584,4620,4652,4673,4661,4687,4727,
+4804,4802,4782,4675,4547,4465,4403,4349,4315,4272,4194,4093,3964,3800,3604,3487,3474,3478,3537,3617,
+3704,3836,3926,4007,4081,4168,4182,4274,4163,4108,4093,4149,4228,4224,4192,4123,4073,4052,4063,4038,
+4041,4061,4027,3998,3977,4006,3992,3959,3928,3916,3902,3852,3823,3812,3810,3834,3826,3790,3810,3817,
+3773,3804,3811,3818,3821,3832,3834,3832,3803,3785,3770,3757,3703,3637,3536,3482,3438,3454,3496,3487,
+3476,3419,3375,3369,3362,3342,3276,3219,3250,3264,3250,3278,3277,3234,3217,3201,3128,3123,3138,3106,
+3066,3057,2994,2940,2933,2845,2816,2747,2737,2715,2657,2612,2584,2487,2422,2443,2386,2268,2195,2131,
+2059,2006,1900,1787,1584,1324,1005,723,534,432,346,220,31,-233,-498,-777,-1080,-1372,-1622,-1823,
+-1969,-2064,-2108,-2087,-1981,-1796,-1605,-1467,-1372,-1330,-1315,-1327,-1349,-1361,-1364,-1366,-1368,-1367,-1384,-1389,
+-1404,-1453,-1551,-1681,-1810,-1924,-2023,-2120,-2215,-2304,-2377,-2440,-2498,-2563,-2614,-2652,-2696,-2744,-2798,-2855,
+-2906,-2949,-2994,-3048,-3102,-3153,-3184,-3207,-3244,-3282,-3319,-3363,-3407,-3443,-3477,-3529,-3590,-3631,-3633,-3619,
+-3596,-3592,-3579,-3622,-3675,-3647,-3681,-3816,-3947,-4055,-4162,-4247,-4307,-4373,-4426,-4451,-4432,-4356,-4317,-4386,
+-4551,-4664,-4737,-4794,-4850,-4856,-4814,-4736,-4600,-4453,-4353,-4245,-4114,-3984,-3858,-3728,-3610,-3485,-3419,-3422,
+-3446,-3468,-3472,-3505,-3522,-3572,-3663,-3759,-3894,-4007,-4061,-4137,-4254,-4393,-4567,-4788,-4993,-5195,-5378,-5564,
+-5735,-5863,-5962,-6027,-6071,-6107,-6148,-6185,-6222,-6262,-6300,-6336,-6364,-6393,-6420,-6449,-6493,-6551,-6604,-6633,
+-6644,-6644,-6635,-6607,-6581,-6563,-6546,-6522,-6495,-6487,-6495,-6498,-6498,-6496,-6484,-6486,-6501,-6515,-6519,-6515,
+-6513,-6508,-6499,-6485,-6471,-6435,-6399,-6397,-6409,-6421,-6422,-6407,-6368,-6336,-6286,-6237,-6232,-6225,-6217,-6197,
+-6139,-6071,-6004,-5942,-5900,-5854,-5803,-5780,-5778,-5790,-5801,-5794,-5753,-5708,-5668,-5628,-5605,-5606,-5606,-5594,
+-5569,-5530,-5496,-5462,-5419,-5367,-5313,-5250,-5161,-5075,-5010,-4951,-4895,-4834,-4764,-4701,-4663,-4629,-4571,-4498,
+-4422,-4338,-4285,-4256,-4291,-4334,-4309,-4234,-4134,-4017,-3891,-3770,-3650,-3528,-3393,-3271,-3182,-3093,-3009,-2927,
+-2834,-2745,-2650,-2561,-2473,-2358,-2220,-2055,-1926,-1841,-1743,-1660,-1593,-1499,-1425,-1394,-1361,-1295,-1206,-1180,
+-1129,-1035,-967,-943,-868,-809,-782,-710,-560,-420,-357,-281,-229,-136,-42,0,81,158,196,210,
+257,323,387,449,540,641,749,852,913,973,1068,1169,1249,1320,1412,1450,1515,1613,1675,1738,
+1848,1917,1977,2069,2131,2191,2281,2414,2469,2526,2574,2543,2502,2508,2457,2444,2438,2394,2329,2283,
+2284,2292,2316,2340,2365,2385,2413,2441,2465,2491,2518,2542,2564,2593,2632,2684,2726,2764,2813,2845,
+2878,2906,2927,2942,2963,2976,3014,3058,3101,3108,3131,3149,3190,3238,3253,3290,3360,3501,3593,3748,
+3822,3833,3879,3882,3801,3785,3660,3416,3069,2716,2394,2115,1919,1751,1543,1323,1140,1136,1279,1446,
+1602,1745,1861,1937,1980,2006,2035,2022,2005,1994,1984,1972,1959,1933,1892,1878,1861,1815,1762,1712,
+1670,1633,1589,1534,1477,1419,1361,1305,1252,1204,1155,1106,1055,1005,953,902,853,809,767,722,
+681,641,595,550,506,459,417,383,348,307,264,221,174,124,77,39,5,-27,-60,-95,
+-134,-167,-209,-246,-286,-320,-355,-385,-418,-452,-483,-501,-528,-550,-570,-605,-641,-683,-717,-750,
+-783,-800,-814,-835,-850,-877,-904,-929,-961,-994,-1037,-1082,-1125,-1162,-1210,-1248,-1249,-1199,-1075,-846,
+-607,-592,-972,-1273,-1407,-1445,-1426,-1371,-1303,-1228,-1176,-1132,-1106,-1090,-1090,-1105,-1125,-1153,-1183,-1216,
+-1239,-1232,-1234,-1243,-1248,-1250,-1254,-1258,-1266,-1264,-1257,-1241,-1215,-1184,-1201,-1202,-1176,-1202,-1232,-1226,
+-1207,-1200,-1189,-1203,-1220,-1226,-1225,-1227,-1230,-1229,-1225,-1220,-1218,-1216,-1213,-1207,-1202,-1196,-1184,-1176,
+-1168,-1163,-1160,-1157,-1150,-1141,-1133,-1126,-1120,-1109,-1105,-1102,-1097,-1084,-1069,-1056,-1051,-1048,-1048,-1051,
+-1040,-1025,-1017,-1016,-1019,-1026,-1029,-1033,-1036,-1033,-1025,-1022,-1015,-1009,-1007,-1008,-1014,-1019,-1027,-1053,
+-1044,-1053,-1053,-1073,-1099,-1116,-1129,-1140,-1149,-1154,-1160,-1163,-1167,-1168,-1171,-1180,-1190,-1201,-1211,-1227,
+-1235,-1245,-1249,-1245,-1245,-1249,-1259,-1277,-1297,-1322,-1345,-1368,-1383,-1390,-1403,-1424,-1445,-1465,-1484,-1505,
+-1523,-1542,-1559,-1580,-1606,-1629,-1646,-1658,-1671,-1685,-1700,-1715,-1734,-1752,-1777,-1810,-1836,-1860,-1885,-1909,
+-1933,-1959,-1984,-2008,-2027,-2047,-2063,-2086,-2113,-2146,-2179,-2212,-2242,-2274,-2306,-2341,-2375,-2408,-2440,-2473,
+-2501,-2530,-2561,-2592,-2617,-2643,-2668,-2698,-2721,-2745,-2771,-2806,-2836,-2866,-2882,-2900,-2922,-2947,-2970,-2985,
+-3002,-3012,-3027,-3042,-3054,-3074,-3098,-3115,-3140,-3163,-3180,-3201,-3227,-3251,-3272,-3293,-3314,-3332,-3346,-3356,
+-3364,-3366,-3375,-3381,-3387,-3395,-3406,-3415,-3420,-3419,-3422,-3421,-3422,-3419,-3416,-3409,-3409,-3406,-3401,-3373,
+-3353,-3315,-3344,-3353,-3357,-3357,-3353,-3329,-3325,-3344,-3349,-3320,-3307,-3302,-3298,-3303,-3300,-3296,-3303,-3313,
+-3255,-3139,-3050,-3000,-2895,-2794,-2722,-2670,-2679,-2755,-2735,-2613,-2450,-2348,-2294,-2257,-2252,-2264,-2272,-2255,
+-2291,-2251,-2216,-2216,-2191,-2184,-2147,-2132,-2090,-2066,-2071,-2065,-1995,-1985,-1937,-1887,-1885,-1810,-1845,-1827,
+-1786,-1822,-1789,-1844,-1844,-1833,-1823,-1773,-1753,-1727,-1705,-1725,-1637,-1568,-1492,-1404,-1387,-1430,-1494,-1557,
+-1596,-1639,-1622,-1568,-1564,-1617,-1647,-1592,-1531,-1466,-1402,-1322,-1223,-1225,-1233,-1201,-1158,-1257,-1473,-1677,
+-1790,-1853,-1891,-1918,-1941,-1970,-2004,-2029,-2068,-2114,-2153,-2198,-2231,-2262,-2293,-2332,-2349,-2376,-2413,-2454,
+-2486,-2494,-2515,-2531,-2545,-2563,-2586,-2633,-2683,-2717,-2726,-2696,-2676,-2747,-2839,-2929,-3014,-3074,-3119,-3153,
+-3170,-3184,-3196,-3194,-3204,-3212,-3224,-3247,-3282,-3311,-3335,-3352,-3364,-3375,-3378,-3379,-3374,-3365,-3368,-3355,
+-3345,-3322,-3290,-3257,-3252,-3250,-3257,-3292,-3329,-3363,-3395,-3418,-3452,-3478,-3495,-3498,-3492,-3477,-3455,-3422,
+-3402,-3409,-3429,-3458,-3491,-3503,-3503,-3482,-3456,-3430,-3406,-3393,-3384,-3402,-3425,-3447,-3475,-3489,-3480,-3460,
+-3430,-3401,-3367,-3324,-3307,-3336,-3391,-3436,-3452,-3452,-3455,-3473,-3478,-3502,-3530,-3556,-3554,-3539,-3516,-3487,
+-3448,-3396,-3335,-3330,-3316,-3283,-3285,-3324,-3344,-3349,-3342,-3347,-3340,-3330,-3321,-3296,-3262,-3241,-3231,-3227,
+-3235,-3225,-3215,-3202,-3173,-3128,-3085,-3048,-3024,-3005,-3004,-3046,-3102,-3111,-3133,-3164,-3183,-3200,-3202,-3191,
+-3176,-3152,-3126,-3099,-3061,-3025,-2998,-2969,-2948,-2927,-2904,-2883,-2853,-2821,-2789,-2752,-2715,-2684,-2641,-2597,
+-2557,-2512,-2463,-2417,-2370,-2321,-2270,-2214,-2158,-2101,-2050,-1998,-1938,-1870,-1795,-1722,-1642,-1561,-1480,-1400,
+-1320,-1242,-1158,-1075,-992,-911,-837,-773,-710,-646,-579,-503,-409,-303,-207,-102,-1,92,185,272,
+351,435,528,615,692,770,830,878,935,988,1070,1158,1245,1326,1388,1459,1542,1612,1687,1757,
+1828,1895,1961,2028,2104,2189,2269,2346,2425,2502,2578,2652,2722,2788,2873,2958,3050,3143,3230,3309,
+3382,3450,3530,3614,3685,3760,3841,3911,3961,4015,4080,4153,4222,4276,4361,4419,4455,4515,4588,4654,
+4721,4794,4873,4951,5024,5099,5185,5266,5340,5411,5498,5546,5608,5656,5699,5753,5797,5855,5908,5945,
+5944,5949,6015,6050,6032,6022,6035,6020,6007,6025,6025,6035,5986,5962,5952,5938,5921,5910,5876,5852,
+5841,5818,5779,5740,5685,5656,5661,5650,5646,5630,5604,5570,5548,5518,5493,5478,5461,5403,5327,5269,
+5255,5236,5164,5107,5106,5129,5155,5145,5130,5123,5109,5101,5085,5075,5065,5055,5003,4968,4942,4928,
+4868,4822,4800,4793,4745,4690,4661,4646,4647,4654,4659,4660,4662,4663,4673,4670,4662,4692,4760,4845,
+4999,5214,5351,5422,5475,5536,5602,5582,5609,5666,5655,5640,5629,5645,5659,5624,5632,5631,5642,5611,
+5529,5430,5341,5230,5171,5178,5229,5251,5271,5298,5319,5371,5376,5314,5261,5283,5313,5309,5245,5186,
+5144,5069,5012,4995,4995,4962,4866,4805,4771,4759,4746,4744,4748,4757,4782,4816,4790,4685,4597,4561,
+4555,4542,4524,4515,4506,4499,4485,4462,4426,4400,4423,4508,4653,4706,4786,4846,4830,4858,4796,4665,
+4555,4522,4512,4472,4455,4451,4454,4459,4434,4445,4440,4434,4442,4481,4537,4573,4590,4616,4622,4674,
+4723,4763,4781,4716,4593,4391,4266,4147,4052,4044,4073,4070,4030,3948,3804,3594,3427,3378,3451,3519,
+3546,3588,3660,3777,3879,3938,3994,4042,4069,4140,4049,3999,4016,4104,4169,4118,4086,4103,4013,3987,
+3999,3954,3977,3998,4002,4009,4004,4025,4011,3971,3932,3894,3875,3872,3866,3859,3846,3854,3841,3836,
+3823,3817,3823,3817,3829,3828,3811,3806,3797,3771,3763,3734,3721,3691,3613,3567,3525,3488,3524,3536,
+3535,3500,3471,3449,3400,3381,3379,3384,3378,3358,3334,3301,3251,3196,3205,3236,3224,3204,3175,3148,
+3103,3072,3053,3022,2998,2954,2869,2857,2825,2760,2739,2706,2622,2558,2469,2361,2295,2217,2147,2170,
+2190,2072,2023,1998,1932,1790,1590,1225,882,635,478,366,226,32,-253,-596,-877,-1148,-1402,-1623,
+-1814,-1950,-2068,-2142,-2163,-2117,-1986,-1824,-1684,-1553,-1472,-1428,-1422,-1425,-1444,-1452,-1446,-1427,-1435,-1457,
+-1474,-1488,-1523,-1575,-1674,-1785,-1908,-2009,-2096,-2186,-2284,-2364,-2436,-2501,-2559,-2610,-2654,-2697,-2745,-2799,
+-2849,-2899,-2948,-2998,-3049,-3107,-3166,-3213,-3239,-3258,-3290,-3330,-3372,-3411,-3450,-3494,-3549,-3605,-3651,-3668,
+-3668,-3663,-3646,-3632,-3659,-3678,-3697,-3742,-3781,-3817,-3932,-4064,-4155,-4229,-4299,-4349,-4372,-4381,-4382,-4420,
+-4450,-4481,-4489,-4513,-4534,-4554,-4548,-4484,-4372,-4233,-4119,-4081,-3994,-3883,-3847,-3693,-3601,-3595,-3517,-3435,
+-3453,-3553,-3601,-3642,-3732,-3808,-3930,-4082,-4185,-4258,-4298,-4311,-4364,-4436,-4537,-4669,-4860,-5055,-5229,-5392,
+-5555,-5700,-5821,-5914,-5984,-6041,-6081,-6119,-6148,-6172,-6207,-6246,-6285,-6318,-6356,-6385,-6411,-6451,-6501,-6550,
+-6582,-6604,-6621,-6628,-6628,-6624,-6620,-6615,-6597,-6573,-6557,-6555,-6565,-6580,-6579,-6568,-6567,-6574,-6578,-6574,
+-6577,-6584,-6596,-6600,-6593,-6585,-6568,-6543,-6520,-6498,-6480,-6472,-6452,-6421,-6385,-6341,-6286,-6245,-6229,-6218,
+-6163,-6065,-5979,-5904,-5836,-5785,-5756,-5718,-5707,-5730,-5754,-5790,-5819,-5813,-5776,-5728,-5687,-5654,-5625,-5588,
+-5559,-5526,-5486,-5456,-5423,-5385,-5340,-5280,-5198,-5122,-5060,-4997,-4931,-4856,-4790,-4722,-4680,-4645,-4604,-4552,
+-4469,-4391,-4336,-4327,-4335,-4364,-4323,-4250,-4159,-4036,-3938,-3842,-3723,-3598,-3479,-3344,-3228,-3135,-3052,-2971,
+-2889,-2804,-2717,-2620,-2510,-2403,-2275,-2141,-2019,-1922,-1794,-1669,-1626,-1584,-1509,-1483,-1411,-1314,-1270,-1212,
+-1126,-1082,-1040,-973,-949,-940,-894,-827,-724,-601,-488,-429,-352,-256,-173,-99,-34,57,126,169,
+204,266,323,372,444,539,656,788,897,946,1019,1112,1188,1245,1316,1388,1454,1522,1598,1685,
+1783,1842,1910,1989,2035,2077,2163,2294,2411,2454,2399,2434,2456,2404,2408,2388,2400,2344,2302,2310,
+2297,2304,2325,2349,2366,2403,2414,2444,2472,2501,2519,2549,2575,2612,2666,2747,2829,2876,2922,2950,
+2976,3023,3044,3054,3055,3036,3030,3070,3133,3152,3158,3181,3212,3250,3295,3313,3366,3422,3533,3651,
+3717,3819,3883,3924,3978,3968,3986,3864,3625,3270,2907,2573,2274,2068,1869,1643,1421,1250,1277,1433,
+1595,1747,1877,1978,2038,2066,2075,2072,2059,2043,2029,2010,1992,1970,1942,1898,1862,1847,1808,1751,
+1694,1647,1604,1562,1509,1451,1390,1331,1271,1213,1164,1114,1066,1013,966,918,866,817,777,739,
+694,649,605,566,524,478,432,389,352,318,281,240,194,151,104,61,22,-14,-52,-87,
+-122,-159,-195,-232,-267,-303,-338,-368,-402,-438,-476,-504,-529,-550,-571,-585,-627,-668,-709,-744,
+-777,-807,-831,-842,-862,-880,-906,-930,-953,-978,-1021,-1050,-1092,-1132,-1171,-1217,-1255,-1260,-1198,-1025,
+-889,-810,-974,-1260,-1422,-1478,-1477,-1437,-1377,-1316,-1247,-1192,-1139,-1114,-1085,-1100,-1106,-1120,-1141,-1171,
+-1202,-1226,-1228,-1229,-1243,-1249,-1250,-1253,-1254,-1260,-1266,-1269,-1264,-1255,-1231,-1202,-1208,-1213,-1179,-1208,
+-1277,-1308,-1288,-1240,-1220,-1214,-1221,-1228,-1231,-1238,-1237,-1235,-1234,-1235,-1234,-1232,-1227,-1220,-1215,-1208,
+-1198,-1192,-1187,-1183,-1180,-1172,-1164,-1155,-1142,-1135,-1129,-1124,-1119,-1109,-1096,-1084,-1075,-1068,-1069,-1069,
+-1064,-1050,-1041,-1037,-1031,-1029,-1031,-1035,-1044,-1050,-1048,-1045,-1044,-1046,-1038,-1047,-1052,-1054,-1067,-1069,
+-1084,-1091,-1093,-1090,-1105,-1123,-1136,-1153,-1163,-1171,-1178,-1188,-1195,-1199,-1203,-1212,-1217,-1224,-1234,-1250,
+-1264,-1276,-1281,-1280,-1271,-1271,-1278,-1285,-1296,-1319,-1350,-1376,-1400,-1406,-1413,-1432,-1453,-1474,-1496,-1511,
+-1528,-1542,-1564,-1584,-1607,-1637,-1652,-1665,-1682,-1707,-1730,-1745,-1755,-1777,-1812,-1851,-1884,-1920,-1947,-1980,
+-1997,-2014,-2030,-2059,-2074,-2088,-2098,-2103,-2115,-2144,-2181,-2214,-2245,-2276,-2305,-2332,-2369,-2405,-2436,-2472,
+-2497,-2532,-2565,-2599,-2630,-2658,-2682,-2705,-2734,-2763,-2793,-2826,-2859,-2888,-2901,-2912,-2929,-2954,-2981,-3002,
+-3023,-3046,-3067,-3089,-3105,-3117,-3131,-3154,-3177,-3201,-3225,-3248,-3274,-3305,-3331,-3347,-3363,-3378,-3393,-3406,
+-3412,-3426,-3429,-3433,-3438,-3448,-3462,-3472,-3483,-3493,-3495,-3513,-3528,-3529,-3532,-3534,-3541,-3553,-3571,-3598,
+-3590,-3549,-3507,-3535,-3578,-3591,-3584,-3568,-3554,-3542,-3527,-3514,-3509,-3503,-3491,-3472,-3454,-3405,-3362,-3306,
+-3259,-3216,-3146,-3044,-3004,-2976,-2866,-2781,-2716,-2795,-2869,-2814,-2680,-2503,-2383,-2350,-2288,-2254,-2285,-2353,
+-2307,-2304,-2273,-2270,-2274,-2259,-2245,-2197,-2207,-2147,-2137,-2115,-2076,-2040,-1994,-1984,-1924,-1934,-1882,-1872,
+-1852,-1852,-1839,-1832,-1861,-1885,-1883,-1867,-1840,-1800,-1762,-1746,-1736,-1739,-1617,-1556,-1550,-1596,-1659,-1714,
+-1766,-1785,-1776,-1719,-1627,-1608,-1645,-1641,-1555,-1474,-1381,-1320,-1307,-1246,-1250,-1253,-1247,-1218,-1319,-1564,
+-1739,-1838,-1888,-1920,-1948,-1974,-1995,-2024,-2071,-2120,-2163,-2203,-2246,-2281,-2313,-2348,-2380,-2406,-2431,-2456,
+-2484,-2506,-2515,-2558,-2589,-2595,-2616,-2641,-2655,-2694,-2724,-2735,-2734,-2748,-2775,-2851,-2948,-3027,-3090,-3129,
+-3165,-3197,-3220,-3235,-3234,-3237,-3237,-3229,-3235,-3264,-3289,-3315,-3331,-3337,-3351,-3354,-3353,-3361,-3360,-3353,
+-3344,-3327,-3322,-3304,-3271,-3245,-3252,-3272,-3283,-3303,-3343,-3381,-3401,-3426,-3458,-3488,-3493,-3476,-3458,-3446,
+-3423,-3402,-3375,-3372,-3387,-3417,-3422,-3429,-3459,-3466,-3458,-3429,-3419,-3422,-3429,-3440,-3453,-3466,-3471,-3456,
+-3426,-3402,-3364,-3317,-3285,-3290,-3352,-3404,-3449,-3475,-3480,-3484,-3496,-3518,-3540,-3555,-3555,-3545,-3522,-3490,
+-3456,-3408,-3346,-3326,-3369,-3351,-3343,-3358,-3398,-3422,-3428,-3421,-3408,-3392,-3380,-3379,-3358,-3332,-3319,-3311,
+-3306,-3297,-3285,-3264,-3243,-3217,-3196,-3187,-3199,-3203,-3226,-3252,-3248,-3230,-3225,-3230,-3251,-3271,-3281,-3278,
+-3267,-3257,-3235,-3203,-3179,-3144,-3107,-3074,-3036,-3002,-2977,-2953,-2928,-2897,-2867,-2831,-2792,-2756,-2720,-2676,
+-2628,-2582,-2536,-2494,-2445,-2398,-2356,-2304,-2249,-2193,-2141,-2091,-2041,-1982,-1916,-1853,-1782,-1707,-1630,-1547,
+-1462,-1368,-1281,-1203,-1123,-1037,-960,-884,-815,-752,-682,-609,-516,-410,-326,-245,-160,-75,19,108,
+190,275,367,462,553,641,718,765,812,872,942,1025,1109,1199,1286,1355,1411,1471,1534,1605,
+1684,1766,1839,1915,1989,2069,2150,2228,2306,2383,2458,2534,2617,2682,2761,2844,2922,3007,3104,3189,
+3274,3350,3434,3503,3572,3643,3720,3801,3872,3921,3979,4048,4126,4205,4248,4328,4405,4437,4481,4537,
+4626,4697,4776,4864,4931,4995,5080,5173,5257,5338,5432,5484,5538,5587,5631,5678,5732,5772,5827,5883,
+5938,5937,5945,5997,5987,5974,5978,5980,5979,5986,5986,5981,5977,6010,5947,5911,5898,5885,5866,5848,
+5802,5786,5771,5751,5733,5685,5653,5633,5616,5587,5565,5542,5514,5476,5442,5444,5444,5405,5336,5270,
+5222,5223,5201,5134,5093,5080,5104,5140,5148,5153,5143,5129,5101,5058,5042,5030,5006,4971,4953,4927,
+4863,4836,4849,4822,4761,4702,4639,4606,4593,4605,4620,4618,4599,4592,4599,4624,4642,4651,4657,4695,
+4852,5141,5284,5328,5384,5454,5514,5578,5616,5672,5649,5618,5631,5600,5565,5537,5537,5608,5627,5595,
+5502,5406,5337,5232,5184,5176,5176,5208,5229,5248,5261,5283,5337,5363,5324,5278,5292,5293,5298,5231,
+5144,5085,5033,5008,5002,4971,4894,4835,4796,4790,4790,4791,4820,4861,4885,4870,4889,4878,4835,4698,
+4566,4536,4529,4516,4505,4496,4492,4482,4460,4431,4405,4421,4487,4581,4696,4725,4761,4831,4905,4824,
+4674,4519,4471,4446,4426,4415,4415,4417,4419,4408,4409,4432,4417,4428,4428,4456,4482,4511,4548,4566,
+4585,4601,4618,4604,4624,4569,4426,4175,3932,3800,3752,3792,3859,3891,3858,3731,3554,3375,3283,3309,
+3344,3395,3427,3503,3597,3688,3767,3820,3885,3941,4012,4039,3947,3937,3979,4054,4078,4063,4002,3980,
+4008,4032,4050,4031,4023,4023,4032,4064,4049,4018,4000,3959,3920,3890,3866,3872,3910,3941,3972,3883,
+3885,3890,3871,3849,3848,3843,3843,3797,3775,3764,3749,3734,3725,3721,3707,3629,3607,3567,3547,3567,
+3556,3536,3529,3470,3451,3422,3414,3421,3412,3401,3387,3373,3359,3343,3289,3256,3237,3267,3247,3191,
+3173,3113,3077,3032,2985,2940,2882,2849,2810,2778,2742,2735,2671,2627,2553,2457,2342,2250,2181,2121,
+2144,2183,2160,2136,2075,1943,1814,1658,1376,1074,826,623,466,311,119,-157,-536,-881,-1150,-1379,
+-1584,-1769,-1922,-2056,-2160,-2211,-2199,-2130,-2026,-1914,-1788,-1666,-1579,-1545,-1558,-1586,-1588,-1548,-1507,-1507,
+-1528,-1551,-1580,-1625,-1679,-1740,-1806,-1917,-2017,-2099,-2181,-2275,-2362,-2435,-2508,-2571,-2622,-2667,-2708,-2754,
+-2807,-2856,-2903,-2947,-2994,-3046,-3109,-3176,-3229,-3264,-3286,-3309,-3346,-3390,-3426,-3462,-3499,-3540,-3586,-3637,
+-3676,-3693,-3686,-3682,-3731,-3774,-3807,-3825,-3839,-3833,-3832,-3892,-3931,-4023,-4096,-4137,-4145,-4155,-4159,-4148,
+-4128,-4092,-4075,-4137,-4146,-4133,-4072,-4004,-3993,-3925,-3810,-3682,-3662,-3706,-3654,-3666,-3553,-3500,-3522,-3538,
+-3541,-3613,-3725,-3864,-4004,-4157,-4247,-4342,-4424,-4451,-4476,-4477,-4480,-4514,-4544,-4627,-4737,-4844,-4985,-5129,
+-5295,-5467,-5585,-5692,-5790,-5870,-5938,-5990,-6037,-6069,-6095,-6123,-6156,-6201,-6250,-6297,-6334,-6366,-6403,-6446,
+-6486,-6518,-6544,-6567,-6587,-6603,-6614,-6621,-6623,-6610,-6583,-6566,-6564,-6569,-6583,-6589,-6582,-6587,-6597,-6602,
+-6599,-6597,-6604,-6625,-6617,-6591,-6566,-6529,-6489,-6457,-6428,-6395,-6369,-6345,-6317,-6279,-6248,-6203,-6139,-6083,
+-6014,-5910,-5811,-5727,-5666,-5602,-5526,-5497,-5509,-5505,-5563,-5594,-5640,-5667,-5698,-5697,-5675,-5671,-5645,-5590,
+-5521,-5475,-5468,-5443,-5424,-5401,-5363,-5324,-5259,-5183,-5126,-5059,-4976,-4894,-4817,-4754,-4724,-4710,-4667,-4594,
+-4532,-4465,-4407,-4386,-4393,-4386,-4351,-4255,-4151,-4019,-3939,-3888,-3803,-3697,-3579,-3459,-3321,-3195,-3085,-2989,
+-2895,-2802,-2719,-2643,-2549,-2434,-2332,-2218,-2082,-1944,-1861,-1781,-1686,-1635,-1638,-1572,-1479,-1410,-1334,-1256,
+-1197,-1076,-1003,-941,-929,-922,-935,-896,-822,-745,-649,-554,-460,-356,-263,-188,-133,-62,11,89,
+161,231,294,333,376,446,555,683,809,898,986,1050,1130,1196,1270,1334,1396,1463,1530,1596,
+1686,1769,1824,1885,1952,2020,2138,2231,2304,2390,2382,2336,2361,2347,2350,2355,2355,2311,2270,2303,
+2303,2305,2325,2350,2366,2388,2416,2458,2486,2517,2531,2557,2589,2624,2697,2803,2890,2924,2971,2973,
+2988,3018,3070,3105,3131,3121,3130,3125,3133,3170,3191,3211,3235,3266,3295,3339,3384,3448,3497,3581,
+3704,3767,3881,3981,4042,4057,4093,4137,4006,3749,3423,3045,2689,2385,2157,1959,1725,1485,1342,1406,
+1564,1721,1861,1974,2055,2105,2128,2138,2128,2112,2087,2066,2037,2005,1972,1941,1902,1852,1827,1798,
+1741,1694,1635,1592,1543,1492,1435,1368,1307,1253,1194,1138,1086,1032,982,934,889,842,797,749,
+711,666,620,579,537,500,457,413,365,321,284,248,209,167,125,82,38,-2,-38,-77,
+-115,-154,-190,-221,-253,-284,-317,-351,-381,-419,-451,-481,-506,-526,-556,-589,-624,-651,-700,-734,
+-759,-798,-828,-851,-863,-880,-888,-920,-957,-984,-996,-1022,-1060,-1098,-1133,-1169,-1223,-1262,-1268,-1196,
+-1142,-1068,-1068,-1295,-1436,-1499,-1510,-1486,-1435,-1370,-1319,-1266,-1207,-1166,-1130,-1105,-1114,-1116,-1108,-1137,
+-1162,-1196,-1216,-1226,-1227,-1240,-1249,-1249,-1251,-1252,-1259,-1261,-1265,-1270,-1273,-1267,-1249,-1229,-1228,-1224,
+-1200,-1223,-1261,-1270,-1310,-1303,-1236,-1202,-1209,-1219,-1231,-1246,-1249,-1252,-1250,-1251,-1253,-1244,-1234,-1230,
+-1224,-1218,-1209,-1207,-1205,-1194,-1186,-1180,-1168,-1157,-1151,-1145,-1138,-1132,-1124,-1115,-1101,-1092,-1090,-1092,
+-1085,-1075,-1075,-1064,-1052,-1046,-1046,-1049,-1056,-1069,-1075,-1070,-1070,-1072,-1081,-1076,-1083,-1097,-1104,-1114,
+-1112,-1116,-1127,-1120,-1120,-1132,-1144,-1156,-1169,-1186,-1197,-1208,-1216,-1217,-1226,-1233,-1243,-1246,-1255,-1267,
+-1280,-1298,-1312,-1309,-1301,-1295,-1294,-1294,-1304,-1315,-1346,-1379,-1403,-1417,-1430,-1437,-1451,-1472,-1489,-1502,
+-1521,-1541,-1550,-1572,-1588,-1619,-1644,-1662,-1704,-1733,-1764,-1787,-1804,-1820,-1851,-1902,-1953,-1988,-2002,-2019,
+-2054,-2085,-2110,-2141,-2170,-2192,-2207,-2212,-2226,-2241,-2263,-2309,-2355,-2392,-2420,-2441,-2469,-2507,-2548,-2581,
+-2613,-2648,-2691,-2722,-2756,-2783,-2806,-2812,-2814,-2839,-2877,-2914,-2941,-2963,-2988,-2990,-2991,-3002,-3029,-3065,
+-3095,-3120,-3146,-3165,-3180,-3196,-3210,-3218,-3240,-3273,-3298,-3320,-3350,-3371,-3387,-3402,-3417,-3420,-3400,-3432,
+-3454,-3472,-3472,-3484,-3482,-3499,-3522,-3557,-3608,-3637,-3640,-3624,-3620,-3635,-3647,-3654,-3652,-3661,-3667,-3679,
+-3684,-3678,-3670,-3662,-3663,-3674,-3678,-3675,-3668,-3662,-3652,-3639,-3626,-3608,-3589,-3563,-3533,-3501,-3479,-3453,
+-3399,-3342,-3282,-3221,-3121,-3013,-2975,-2922,-2842,-2740,-2747,-2877,-2840,-2745,-2595,-2430,-2381,-2371,-2295,-2276,
+-2284,-2333,-2301,-2330,-2306,-2315,-2306,-2306,-2281,-2226,-2251,-2183,-2155,-2116,-2066,-2019,-2000,-1980,-1958,-1926,
+-1919,-1911,-1916,-1872,-1890,-1892,-1903,-1918,-1900,-1878,-1827,-1777,-1768,-1766,-1727,-1665,-1602,-1577,-1609,-1656,
+-1725,-1787,-1806,-1785,-1744,-1685,-1650,-1650,-1665,-1605,-1472,-1337,-1257,-1284,-1301,-1282,-1302,-1272,-1256,-1355,
+-1605,-1755,-1826,-1864,-1905,-1949,-1986,-2024,-2063,-2117,-2150,-2197,-2229,-2283,-2334,-2367,-2393,-2422,-2445,-2459,
+-2474,-2482,-2499,-2525,-2562,-2590,-2607,-2624,-2634,-2649,-2668,-2704,-2735,-2751,-2776,-2817,-2898,-2986,-3056,-3103,
+-3142,-3182,-3219,-3246,-3273,-3279,-3275,-3270,-3256,-3246,-3256,-3267,-3282,-3293,-3305,-3317,-3314,-3328,-3338,-3350,
+-3340,-3322,-3317,-3307,-3292,-3275,-3263,-3252,-3253,-3266,-3283,-3329,-3375,-3397,-3405,-3426,-3451,-3467,-3463,-3449,
+-3434,-3429,-3422,-3389,-3371,-3394,-3397,-3376,-3389,-3450,-3472,-3478,-3460,-3445,-3448,-3456,-3451,-3449,-3459,-3440,
+-3414,-3395,-3363,-3303,-3258,-3257,-3304,-3369,-3422,-3468,-3502,-3501,-3477,-3466,-3460,-3466,-3477,-3460,-3442,-3414,
+-3398,-3374,-3348,-3345,-3378,-3396,-3394,-3398,-3434,-3472,-3495,-3499,-3483,-3450,-3425,-3414,-3424,-3422,-3413,-3407,
+-3397,-3372,-3352,-3343,-3343,-3366,-3382,-3398,-3406,-3415,-3409,-3360,-3364,-3369,-3354,-3346,-3336,-3343,-3347,-3342,
+-3344,-3340,-3326,-3302,-3270,-3244,-3217,-3177,-3140,-3093,-3055,-3020,-2988,-2961,-2927,-2892,-2854,-2819,-2781,-2742,
+-2699,-2654,-2606,-2555,-2511,-2464,-2416,-2374,-2329,-2275,-2228,-2180,-2128,-2077,-2016,-1956,-1893,-1827,-1753,-1676,
+-1589,-1508,-1419,-1331,-1243,-1161,-1079,-1000,-933,-869,-801,-729,-650,-563,-472,-386,-301,-220,-139,-59,
+21,105,190,281,373,460,544,615,665,735,798,870,950,1030,1126,1222,1302,1362,1419,1475,
+1544,1620,1699,1779,1862,1935,2024,2115,2190,2266,2335,2409,2485,2573,2649,2722,2802,2886,2977,3076,
+3173,3249,3323,3391,3465,3546,3617,3675,3745,3826,3893,3956,4023,4085,4168,4216,4281,4351,4416,4476,
+4531,4603,4683,4760,4835,4908,4982,5060,5151,5245,5338,5413,5465,5517,5559,5605,5651,5698,5745,5799,
+5846,5889,5881,5927,5956,5943,5924,5934,5954,5957,5949,5960,5967,5975,5922,5892,5882,5865,5852,5829,
+5816,5776,5742,5709,5708,5684,5672,5664,5619,5589,5544,5521,5489,5450,5408,5384,5382,5377,5318,5245,
+5206,5197,5205,5177,5123,5077,5066,5088,5141,5178,5192,5170,5124,5071,5024,4995,4967,4949,4932,4926,
+4876,4839,4825,4848,4803,4752,4692,4635,4606,4607,4620,4624,4606,4581,4556,4559,4588,4624,4658,4672,
+4698,4902,5135,5273,5325,5374,5433,5541,5623,5649,5663,5594,5554,5551,5516,5484,5461,5463,5442,5412,
+5390,5370,5334,5288,5252,5226,5206,5206,5213,5236,5257,5258,5254,5292,5309,5293,5275,5306,5280,5230,
+5147,5085,5047,5015,5002,4971,4893,4851,4826,4818,4833,4869,4920,4977,4936,4914,4908,4863,4798,4788,
+4743,4585,4533,4530,4510,4495,4487,4474,4464,4452,4425,4394,4408,4466,4566,4658,4682,4711,4755,4801,
+4770,4619,4476,4472,4442,4415,4393,4398,4387,4380,4374,4385,4398,4384,4385,4382,4395,4409,4428,4457,
+4499,4487,4475,4503,4504,4541,4588,4321,4043,3815,3678,3576,3532,3599,3661,3660,3565,3438,3304,3207,
+3235,3259,3225,3261,3270,3338,3440,3574,3586,3671,3731,3785,3869,3965,3901,3905,3921,3948,3958,3965,
+3980,3997,4021,4038,4015,4020,4024,4045,4050,4066,4047,3983,3954,3919,3891,3890,3937,3917,3930,3925,
+3917,3938,3911,3885,3869,3856,3825,3825,3813,3782,3745,3747,3735,3722,3715,3677,3634,3647,3589,3557,
+3536,3545,3529,3496,3471,3451,3463,3461,3448,3388,3352,3326,3302,3300,3307,3271,3251,3258,3215,3197,
+3114,3166,3129,3037,3021,3032,2995,2977,2917,2847,2822,2802,2733,2622,2559,2542,2527,2442,2366,2341,
+2203,2092,2095,2067,2056,2057,2008,1848,1700,1535,1279,1005,807,636,491,285,-18,-394,-775,-1062,
+-1291,-1498,-1695,-1890,-2039,-2155,-2214,-2221,-2183,-2109,-2035,-1963,-1868,-1787,-1752,-1769,-1793,-1776,-1721,-1641,
+-1539,-1575,-1634,-1691,-1733,-1780,-1835,-1884,-1949,-2033,-2119,-2199,-2274,-2346,-2423,-2495,-2565,-2637,-2691,-2734,
+-2776,-2823,-2871,-2917,-2959,-3002,-3053,-3116,-3189,-3244,-3282,-3313,-3336,-3358,-3392,-3434,-3480,-3522,-3549,-3571,
+-3600,-3633,-3667,-3707,-3732,-3727,-3750,-3798,-3829,-3848,-3844,-3839,-3820,-3756,-3738,-3765,-3768,-3769,-3787,-3779,
+-3733,-3689,-3703,-3662,-3683,-3713,-3760,-3660,-3584,-3570,-3617,-3609,-3545,-3546,-3575,-3579,-3515,-3483,-3490,-3533,
+-3637,-3747,-3896,-4061,-4212,-4380,-4532,-4645,-4717,-4746,-4748,-4750,-4741,-4724,-4720,-4727,-4735,-4742,-4783,-4883,
+-5004,-5146,-5289,-5384,-5489,-5600,-5694,-5786,-5866,-5928,-5971,-6005,-6032,-6062,-6107,-6161,-6208,-6249,-6288,-6329,
+-6366,-6402,-6435,-6469,-6502,-6530,-6551,-6564,-6561,-6553,-6545,-6529,-6524,-6537,-6555,-6570,-6575,-6574,-6581,-6589,
+-6590,-6579,-6573,-6558,-6536,-6495,-6434,-6382,-6342,-6312,-6272,-6229,-6179,-6109,-6066,-6043,-6027,-6014,-5989,-5935,
+-5849,-5745,-5617,-5481,-5371,-5330,-5333,-5229,-5196,-5224,-5220,-5209,-5250,-5347,-5436,-5502,-5570,-5593,-5597,-5573,
+-5525,-5459,-5418,-5410,-5382,-5357,-5343,-5318,-5287,-5240,-5201,-5160,-5075,-4975,-4914,-4897,-4848,-4787,-4750,-4697,
+-4637,-4569,-4497,-4436,-4417,-4428,-4382,-4289,-4179,-4090,-3952,-3898,-3854,-3771,-3676,-3559,-3445,-3319,-3193,-3088,
+-2987,-2891,-2791,-2706,-2641,-2568,-2459,-2339,-2191,-2039,-1904,-1819,-1755,-1696,-1703,-1659,-1533,-1411,-1304,-1288,
+-1215,-1098,-1050,-1057,-986,-945,-963,-932,-873,-818,-766,-675,-578,-486,-388,-295,-216,-144,-74,-6,
+87,176,234,275,315,375,468,591,713,816,917,1001,1061,1128,1206,1292,1369,1434,1495,1561,
+1620,1673,1740,1809,1872,1950,2063,2159,2234,2345,2391,2357,2345,2350,2340,2326,2281,2256,2245,2258,
+2274,2307,2328,2361,2401,2431,2467,2460,2485,2514,2536,2566,2608,2623,2677,2786,2884,2957,2967,2968,
+2959,2992,3059,3091,3133,3144,3152,3143,3147,3166,3194,3215,3251,3278,3302,3333,3388,3453,3533,3554,
+3639,3720,3760,3899,4020,4078,4078,4147,4199,4084,3832,3503,3103,2726,2402,2152,1960,1753,1522,1419,
+1504,1661,1816,1942,2037,2108,2152,2171,2178,2171,2150,2126,2092,2052,2007,1965,1927,1890,1839,1795,
+1775,1723,1674,1617,1570,1522,1470,1418,1361,1300,1240,1177,1115,1055,1004,956,911,866,821,773,
+726,679,640,599,554,510,470,428,387,343,300,255,216,175,134,93,54,12,-27,-65,
+-103,-141,-180,-220,-251,-276,-301,-328,-361,-392,-427,-453,-478,-502,-531,-565,-596,-624,-673,-720,
+-753,-776,-814,-844,-861,-877,-898,-907,-878,-942,-992,-1010,-1034,-1062,-1102,-1136,-1180,-1232,-1274,-1305,
+-1312,-1289,-1190,-1323,-1440,-1506,-1528,-1512,-1468,-1419,-1369,-1326,-1275,-1234,-1187,-1151,-1127,-1118,-1126,-1126,
+-1139,-1162,-1189,-1210,-1220,-1218,-1231,-1245,-1248,-1249,-1247,-1252,-1256,-1262,-1268,-1273,-1278,-1276,-1274,-1260,
+-1246,-1222,-1220,-1220,-1221,-1229,-1306,-1349,-1283,-1230,-1211,-1214,-1236,-1241,-1253,-1256,-1260,-1263,-1258,-1250,
+-1247,-1244,-1236,-1230,-1230,-1223,-1216,-1203,-1193,-1181,-1173,-1166,-1161,-1156,-1147,-1135,-1127,-1122,-1119,-1115,
+-1106,-1094,-1094,-1090,-1082,-1079,-1074,-1067,-1070,-1080,-1092,-1103,-1103,-1107,-1108,-1110,-1111,-1120,-1128,-1129,
+-1135,-1140,-1144,-1150,-1139,-1141,-1150,-1158,-1170,-1192,-1206,-1218,-1226,-1232,-1238,-1249,-1260,-1266,-1270,-1278,
+-1290,-1307,-1327,-1334,-1331,-1324,-1315,-1310,-1308,-1320,-1345,-1380,-1405,-1425,-1428,-1438,-1448,-1462,-1481,-1497,
+-1515,-1539,-1553,-1563,-1580,-1618,-1647,-1674,-1706,-1729,-1756,-1792,-1818,-1843,-1867,-1910,-1942,-1968,-2000,-2014,
+-2040,-2072,-2104,-2137,-2173,-2197,-2221,-2237,-2251,-2272,-2297,-2318,-2343,-2377,-2407,-2444,-2478,-2516,-2538,-2520,
+-2593,-2657,-2698,-2724,-2741,-2771,-2806,-2842,-2877,-2902,-2930,-2974,-3010,-3042,-3075,-3100,-3117,-3128,-3144,-3171,
+-3204,-3224,-3251,-3280,-3299,-3321,-3339,-3346,-3355,-3387,-3412,-3430,-3445,-3466,-3481,-3477,-3484,-3490,-3510,-3517,
+-3526,-3549,-3562,-3566,-3596,-3614,-3631,-3646,-3658,-3670,-3672,-3672,-3664,-3664,-3671,-3682,-3693,-3694,-3692,-3691,
+-3690,-3687,-3681,-3682,-3678,-3672,-3672,-3673,-3673,-3667,-3661,-3653,-3634,-3619,-3602,-3583,-3561,-3535,-3502,-3477,
+-3471,-3462,-3410,-3371,-3324,-3225,-3089,-2983,-2908,-2878,-2783,-2774,-2872,-2844,-2762,-2696,-2618,-2495,-2355,-2313,
+-2318,-2337,-2346,-2353,-2337,-2369,-2372,-2376,-2385,-2329,-2339,-2231,-2198,-2172,-2117,-2113,-2055,-2013,-2036,-2003,
+-1978,-1962,-1938,-1955,-1936,-1911,-1886,-1951,-1929,-1932,-1913,-1895,-1852,-1810,-1773,-1713,-1670,-1596,-1595,-1620,
+-1660,-1714,-1766,-1752,-1737,-1707,-1652,-1611,-1602,-1614,-1581,-1477,-1351,-1294,-1371,-1357,-1301,-1278,-1280,-1281,
+-1358,-1548,-1724,-1794,-1832,-1879,-1932,-1980,-2027,-2086,-2132,-2189,-2238,-2282,-2327,-2368,-2393,-2422,-2443,-2460,
+-2486,-2492,-2496,-2520,-2548,-2576,-2604,-2626,-2639,-2653,-2675,-2709,-2744,-2745,-2732,-2811,-2917,-2980,-3036,-3092,
+-3135,-3168,-3207,-3248,-3270,-3292,-3306,-3313,-3304,-3287,-3268,-3259,-3259,-3270,-3286,-3301,-3308,-3311,-3309,-3316,
+-3318,-3309,-3300,-3302,-3293,-3294,-3298,-3301,-3280,-3264,-3266,-3265,-3318,-3374,-3383,-3370,-3368,-3394,-3436,-3461,
+-3459,-3462,-3451,-3430,-3414,-3389,-3377,-3368,-3332,-3349,-3454,-3478,-3485,-3472,-3461,-3475,-3474,-3455,-3435,-3420,
+-3396,-3373,-3356,-3302,-3252,-3232,-3258,-3340,-3396,-3461,-3496,-3513,-3457,-3424,-3376,-3333,-3345,-3380,-3389,-3383,
+-3383,-3398,-3399,-3395,-3390,-3401,-3437,-3451,-3467,-3498,-3527,-3541,-3527,-3491,-3474,-3496,-3544,-3579,-3594,-3591,
+-3577,-3569,-3551,-3538,-3537,-3540,-3550,-3563,-3568,-3566,-3554,-3541,-3510,-3493,-3492,-3492,-3474,-3422,-3391,-3401,
+-3397,-3400,-3399,-3389,-3368,-3337,-3305,-3270,-3231,-3188,-3137,-3088,-3047,-3010,-2975,-2941,-2903,-2863,-2824,-2787,
+-2747,-2704,-2661,-2621,-2575,-2533,-2484,-2442,-2393,-2350,-2304,-2257,-2206,-2157,-2103,-2050,-1990,-1927,-1861,-1791,
+-1713,-1620,-1546,-1463,-1374,-1284,-1201,-1122,-1048,-979,-910,-839,-764,-682,-599,-511,-424,-335,-259,-184,
+-112,-29,54,137,219,293,375,446,522,584,656,713,788,877,960,1050,1144,1234,1308,1375,
+1438,1507,1578,1649,1726,1806,1886,1970,2059,2141,2220,2287,2356,2434,2515,2606,2683,2768,2845,2934,
+3030,3131,3217,3292,3355,3426,3491,3562,3638,3710,3773,3861,3933,3994,4045,4139,4209,4252,4334,4410,
+4469,4539,4605,4671,4754,4825,4903,4981,5057,5141,5239,5328,5389,5436,5480,5525,5579,5652,5707,5732,
+5782,5834,5862,5857,5899,5899,5898,5893,5904,5938,5940,5942,5942,5945,5951,5911,5858,5838,5836,5825,
+5808,5781,5750,5734,5705,5665,5611,5593,5604,5581,5545,5496,5452,5410,5377,5350,5337,5338,5316,5240,
+5174,5153,5163,5189,5175,5132,5106,5102,5103,5129,5174,5196,5150,5075,5034,5001,4973,4942,4909,4891,
+4868,4852,4835,4816,4797,4782,4764,4772,4724,4713,4779,4770,4729,4704,4660,4600,4573,4589,4637,4705,
+4750,4770,4880,5051,5246,5322,5376,5458,5524,5564,5604,5594,5561,5537,5515,5489,5474,5465,5451,5441,
+5430,5412,5406,5401,5383,5369,5346,5315,5289,5267,5256,5264,5256,5256,5261,5260,5262,5261,5228,5196,
+5167,5106,5047,5009,4950,4903,4876,4852,4845,4838,4832,4864,4926,4940,4929,4935,4917,4857,4758,4699,
+4680,4666,4564,4543,4531,4506,4474,4461,4441,4442,4433,4408,4377,4409,4482,4581,4639,4692,4668,4681,
+4732,4695,4579,4467,4452,4377,4345,4354,4355,4334,4327,4323,4326,4327,4343,4328,4327,4340,4363,4357,
+4368,4388,4437,4431,4449,4493,4464,4526,4367,4253,3998,3728,3510,3375,3314,3350,3373,3332,3267,3190,
+3100,3051,3059,3089,3088,3111,3140,3210,3345,3411,3426,3516,3647,3750,3829,3926,3870,3851,3860,3916,
+3986,3997,3985,4010,3998,3995,3981,3996,4028,4018,3979,3968,3978,3947,3915,3886,3898,3928,3920,3912,
+3910,3913,3922,3904,3903,3895,3865,3839,3832,3817,3769,3730,3732,3731,3707,3693,3659,3644,3629,3622,
+3610,3551,3515,3493,3489,3486,3515,3524,3463,3416,3394,3377,3374,3363,3313,3279,3235,3173,3208,3238,
+3205,3184,3125,3097,3060,3032,3014,2981,2947,2914,2867,2808,2747,2692,2621,2595,2607,2558,2477,2384,
+2320,2248,2103,1997,2034,2016,2017,1944,1854,1629,1496,1309,1048,887,764,659,484,192,-175,-585,
+-905,-1162,-1382,-1606,-1817,-1968,-2083,-2149,-2157,-2126,-2068,-2020,-1984,-1951,-1925,-1928,-1944,-1975,-1979,-1949,
+-1870,-1769,-1761,-1792,-1825,-1848,-1871,-1907,-1947,-1998,-2066,-2141,-2220,-2290,-2346,-2409,-2485,-2564,-2643,-2709,
+-2762,-2810,-2858,-2909,-2953,-2982,-3021,-3071,-3134,-3203,-3256,-3298,-3329,-3355,-3378,-3396,-3422,-3464,-3516,-3559,
+-3589,-3608,-3631,-3658,-3704,-3749,-3776,-3793,-3790,-3758,-3726,-3753,-3771,-3720,-3657,-3591,-3525,-3496,-3459,-3456,
+-3441,-3399,-3371,-3391,-3416,-3446,-3523,-3553,-3514,-3480,-3529,-3520,-3520,-3489,-3437,-3396,-3374,-3332,-3315,-3325,
+-3405,-3533,-3737,-4024,-4278,-4497,-4666,-4792,-4878,-4921,-4934,-4939,-4931,-4912,-4885,-4861,-4838,-4802,-4762,-4765,
+-4840,-4938,-5035,-5129,-5208,-5292,-5379,-5473,-5608,-5728,-5806,-5869,-5915,-5941,-5964,-6005,-6056,-6103,-6144,-6182,
+-6222,-6258,-6292,-6327,-6373,-6417,-6446,-6458,-6467,-6464,-6454,-6452,-6454,-6464,-6495,-6530,-6536,-6534,-6530,-6519,
+-6502,-6478,-6425,-6371,-6305,-6247,-6202,-6150,-6109,-6079,-6057,-6026,-5997,-5951,-5888,-5807,-5723,-5636,-5640,-5674,
+-5636,-5524,-5454,-5376,-5238,-5123,-5060,-5009,-4944,-4897,-4901,-4980,-4928,-4887,-4935,-5054,-5138,-5288,-5404,-5462,
+-5479,-5468,-5430,-5372,-5345,-5306,-5253,-5244,-5233,-5216,-5188,-5154,-5124,-5077,-5021,-4996,-4962,-4902,-4839,-4781,
+-4716,-4660,-4602,-4526,-4466,-4437,-4383,-4278,-4170,-4076,-4019,-3913,-3863,-3824,-3747,-3652,-3548,-3444,-3330,-3217,
+-3117,-3009,-2913,-2827,-2740,-2659,-2581,-2499,-2366,-2208,-2053,-1909,-1825,-1788,-1768,-1741,-1629,-1462,-1352,-1317,
+-1285,-1185,-1153,-1134,-1121,-1068,-1046,-1017,-968,-913,-876,-825,-728,-619,-514,-414,-324,-247,-174,-96,
+-13,65,134,191,249,301,381,507,630,736,838,925,1002,1084,1170,1267,1336,1393,1456,1519,
+1577,1628,1686,1745,1795,1864,1959,2065,2171,2257,2348,2358,2352,2379,2378,2359,2314,2265,2236,2247,
+2278,2293,2329,2387,2458,2470,2471,2458,2477,2504,2530,2557,2588,2618,2654,2725,2839,2921,2946,2942,
+2948,2979,3072,3130,3185,3191,3205,3186,3137,3144,3175,3210,3247,3283,3310,3345,3383,3462,3541,3606,
+3618,3672,3700,3775,3898,3985,4109,4119,4165,4203,4102,3874,3559,3151,2739,2403,2154,1951,1741,1542,
+1481,1576,1733,1885,2006,2093,2151,2188,2200,2202,2190,2174,2155,2113,2058,2006,1959,1913,1870,1824,
+1773,1748,1707,1653,1600,1552,1499,1448,1395,1338,1280,1217,1153,1087,1028,975,928,883,837,796,
+747,697,649,606,564,523,480,443,402,359,316,275,233,190,145,103,62,24,-13,-53,
+-92,-132,-168,-209,-244,-270,-298,-323,-343,-373,-405,-436,-459,-480,-505,-537,-574,-611,-651,-690,
+-731,-758,-790,-819,-848,-863,-870,-883,-919,-933,-958,-987,-1015,-1032,-1060,-1104,-1139,-1188,-1238,-1291,
+-1332,-1358,-1373,-1372,-1436,-1494,-1526,-1528,-1496,-1443,-1415,-1388,-1352,-1301,-1249,-1207,-1170,-1143,-1128,-1130,
+-1141,-1149,-1168,-1188,-1198,-1211,-1210,-1224,-1240,-1241,-1241,-1239,-1247,-1256,-1260,-1270,-1274,-1283,-1286,-1290,
+-1281,-1265,-1251,-1242,-1229,-1218,-1216,-1230,-1260,-1300,-1292,-1234,-1236,-1247,-1260,-1264,-1261,-1261,-1266,-1269,
+-1267,-1260,-1259,-1254,-1252,-1248,-1240,-1230,-1217,-1206,-1198,-1190,-1183,-1174,-1169,-1155,-1141,-1133,-1137,-1136,
+-1131,-1125,-1115,-1122,-1119,-1098,-1087,-1084,-1094,-1109,-1119,-1119,-1111,-1099,-1117,-1133,-1144,-1141,-1146,-1146,
+-1143,-1147,-1153,-1155,-1160,-1153,-1152,-1157,-1165,-1184,-1209,-1223,-1228,-1237,-1248,-1263,-1272,-1283,-1288,-1290,
+-1301,-1317,-1334,-1343,-1355,-1352,-1342,-1332,-1328,-1334,-1346,-1371,-1406,-1424,-1437,-1447,-1447,-1459,-1477,-1500,
+-1530,-1552,-1584,-1598,-1605,-1625,-1663,-1695,-1714,-1744,-1766,-1784,-1799,-1816,-1832,-1860,-1902,-1947,-1986,-2011,
+-2037,-2068,-2094,-2116,-2143,-2176,-2190,-2210,-2231,-2258,-2285,-2307,-2323,-2330,-2363,-2402,-2446,-2486,-2501,-2526,
+-2531,-2556,-2604,-2630,-2657,-2689,-2730,-2776,-2822,-2861,-2900,-2949,-3002,-3055,-3097,-3139,-3176,-3195,-3207,-3218,
+-3236,-3259,-3286,-3309,-3335,-3351,-3373,-3390,-3405,-3421,-3440,-3459,-3469,-3481,-3493,-3505,-3516,-3524,-3529,-3544,
+-3563,-3578,-3595,-3605,-3619,-3632,-3635,-3635,-3642,-3654,-3668,-3672,-3679,-3678,-3686,-3690,-3696,-3706,-3709,-3702,
+-3696,-3694,-3690,-3688,-3684,-3675,-3660,-3648,-3642,-3636,-3636,-3633,-3634,-3625,-3614,-3599,-3583,-3565,-3542,-3517,
+-3488,-3470,-3463,-3461,-3454,-3405,-3305,-3171,-3049,-2951,-2884,-2799,-2762,-2875,-2885,-2818,-2776,-2725,-2576,-2464,
+-2374,-2285,-2306,-2332,-2387,-2383,-2393,-2422,-2427,-2398,-2336,-2308,-2262,-2221,-2201,-2154,-2133,-2114,-2098,-2047,
+-2053,-2029,-2002,-1991,-1993,-1984,-1942,-1979,-1953,-1980,-1948,-1939,-1947,-1897,-1823,-1822,-1741,-1718,-1601,-1642,
+-1726,-1772,-1757,-1793,-1731,-1709,-1677,-1650,-1632,-1603,-1612,-1613,-1599,-1535,-1470,-1395,-1325,-1273,-1279,-1298,
+-1277,-1334,-1485,-1677,-1748,-1791,-1846,-1912,-1975,-2032,-2094,-2153,-2211,-2265,-2305,-2352,-2392,-2426,-2453,-2475,
+-2495,-2512,-2532,-2548,-2566,-2590,-2612,-2632,-2647,-2671,-2685,-2717,-2740,-2738,-2730,-2784,-2919,-2992,-3039,-3082,
+-3132,-3177,-3209,-3246,-3271,-3287,-3298,-3312,-3317,-3311,-3305,-3287,-3273,-3268,-3272,-3291,-3309,-3314,-3308,-3302,
+-3292,-3290,-3282,-3264,-3250,-3248,-3272,-3286,-3285,-3276,-3269,-3265,-3272,-3314,-3352,-3360,-3354,-3353,-3360,-3403,
+-3459,-3475,-3478,-3455,-3401,-3414,-3420,-3385,-3340,-3302,-3355,-3444,-3469,-3478,-3475,-3481,-3498,-3494,-3470,-3445,
+-3407,-3372,-3347,-3309,-3255,-3205,-3218,-3295,-3373,-3424,-3467,-3500,-3478,-3386,-3342,-3293,-3305,-3347,-3387,-3415,
+-3428,-3454,-3460,-3468,-3469,-3466,-3496,-3527,-3541,-3551,-3562,-3564,-3567,-3557,-3554,-3579,-3658,-3734,-3769,-3767,
+-3746,-3727,-3711,-3693,-3676,-3663,-3657,-3654,-3655,-3655,-3649,-3644,-3637,-3636,-3622,-3617,-3601,-3572,-3531,-3488,
+-3461,-3403,-3410,-3454,-3447,-3420,-3377,-3340,-3296,-3255,-3210,-3164,-3120,-3075,-3036,-2997,-2960,-2912,-2857,-2813,
+-2771,-2741,-2704,-2668,-2631,-2587,-2548,-2505,-2462,-2419,-2375,-2329,-2281,-2234,-2187,-2140,-2087,-2029,-1966,-1902,
+-1824,-1746,-1655,-1582,-1498,-1412,-1332,-1249,-1170,-1096,-1027,-954,-876,-791,-704,-625,-538,-455,-369,-291,
+-218,-145,-68,18,95,176,248,319,389,460,527,591,656,722,803,895,989,1079,1171,1257,
+1333,1397,1459,1522,1592,1666,1745,1829,1921,2005,2087,2168,2239,2310,2390,2470,2558,2636,2718,2814,
+2899,2988,3081,3168,3245,3331,3401,3442,3518,3615,3675,3735,3819,3896,3959,4013,4108,4195,4249,4301,
+4377,4453,4507,4575,4652,4726,4818,4894,4969,5038,5127,5232,5301,5355,5396,5448,5502,5567,5731,5699,
+5699,5771,5788,5805,5808,5859,5873,5858,5879,5887,5916,5919,5923,5918,5917,5925,5858,5816,5807,5804,
+5797,5776,5745,5721,5693,5653,5620,5586,5547,5533,5543,5517,5467,5395,5338,5324,5304,5274,5255,5213,
+5155,5120,5111,5124,5132,5122,5114,5120,5113,5115,5109,5105,5088,5059,5032,4990,4967,4931,4897,4880,
+4859,4860,4858,4854,4848,4846,4858,4878,4932,4958,4937,4907,4871,4907,4929,4855,4761,4704,4692,4744,
+4845,4915,4953,4996,5124,5302,5374,5444,5493,5484,5509,5534,5544,5556,5564,5545,5515,5475,5466,5462,
+5478,5500,5495,5470,5480,5483,5456,5439,5388,5315,5270,5260,5260,5259,5241,5225,5219,5220,5228,5221,
+5151,5084,5045,5009,4978,4916,4867,4847,4860,4887,4905,4904,4880,4869,4873,4880,4878,4808,4713,4655,
+4621,4603,4585,4516,4489,4495,4483,4461,4438,4410,4413,4406,4388,4365,4408,4498,4575,4616,4670,4672,
+4619,4646,4667,4518,4440,4409,4329,4311,4318,4318,4325,4301,4301,4281,4291,4287,4288,4290,4300,4310,
+4322,4356,4350,4315,4326,4366,4414,4398,4444,4467,4392,4119,3798,3488,3285,3160,3091,3106,3128,3119,
+3077,3017,2920,2849,2880,2905,2900,2934,2982,3105,3238,3328,3382,3520,3677,3763,3829,3902,3893,3891,
+3985,3979,3981,3939,3932,3972,3978,3985,4029,4024,3992,3966,3986,3946,3908,3911,3896,3891,3904,3929,
+3915,3910,3936,3924,3909,3902,3890,3887,3846,3804,3785,3774,3726,3709,3717,3694,3678,3654,3629,3647,
+3649,3621,3566,3508,3499,3507,3525,3532,3456,3452,3442,3413,3385,3351,3339,3330,3278,3214,3190,3206,
+3183,3134,3106,3076,3045,2989,2978,2974,2927,2877,2855,2793,2708,2647,2634,2623,2618,2610,2564,2517,
+2449,2380,2265,2110,1993,1931,1898,1953,1997,1871,1627,1351,1185,1070,972,912,802,631,374,50,
+-354,-731,-1023,-1259,-1490,-1700,-1851,-1958,-2010,-2011,-1990,-1947,-1919,-1909,-1905,-1915,-1950,-1986,-2029,-2060,
+-2067,-2050,-2002,-1939,-1896,-1901,-1896,-1917,-1943,-1980,-2032,-2095,-2163,-2231,-2308,-2379,-2433,-2488,-2562,-2648,
+-2722,-2769,-2823,-2880,-2933,-2982,-3021,-3060,-3105,-3164,-3225,-3275,-3315,-3340,-3360,-3392,-3419,-3444,-3479,-3523,
+-3566,-3601,-3637,-3669,-3700,-3731,-3760,-3778,-3789,-3781,-3745,-3706,-3643,-3558,-3472,-3439,-3384,-3341,-3417,-3393,
+-3370,-3354,-3339,-3347,-3438,-3531,-3523,-3583,-3577,-3569,-3498,-3380,-3292,-3276,-3214,-3126,-3093,-3144,-3166,-3143,
+-3193,-3266,-3390,-3564,-3883,-4246,-4525,-4726,-4858,-4932,-4972,-4993,-5003,-5002,-4991,-4971,-4957,-4926,-4883,-4850,
+-4835,-4863,-4930,-4993,-5048,-5107,-5169,-5237,-5323,-5444,-5557,-5651,-5740,-5802,-5834,-5858,-5896,-5941,-5985,-6027,
+-6068,-6107,-6140,-6172,-6206,-6250,-6295,-6325,-6338,-6348,-6361,-6378,-6387,-6397,-6423,-6459,-6481,-6467,-6435,-6374,
+-6309,-6229,-6141,-6046,-5959,-5890,-5836,-5818,-5823,-5779,-5748,-5743,-5761,-5767,-5738,-5661,-5556,-5413,-5287,-5281,
+-5352,-5369,-5283,-5206,-5137,-5062,-5019,-5002,-4917,-4863,-4827,-4807,-4852,-4775,-4717,-4747,-4797,-4777,-4827,-4933,
+-5085,-5231,-5288,-5280,-5307,-5312,-5246,-5166,-5148,-5169,-5172,-5119,-5071,-5056,-5066,-5052,-4992,-4929,-4889,-4832,
+-4760,-4698,-4623,-4568,-4520,-4461,-4380,-4274,-4143,-4051,-3985,-3970,-3882,-3844,-3815,-3743,-3646,-3546,-3446,-3348,
+-3255,-3145,-3028,-2928,-2842,-2761,-2677,-2591,-2503,-2379,-2205,-2057,-1906,-1839,-1830,-1787,-1671,-1567,-1473,-1397,
+-1369,-1324,-1289,-1247,-1234,-1195,-1160,-1116,-1072,-1019,-958,-893,-813,-713,-622,-542,-441,-339,-260,-191,
+-116,-36,19,84,152,225,308,412,532,649,761,866,938,1022,1122,1203,1278,1340,1387,1444,
+1518,1589,1652,1711,1767,1806,1872,1961,2063,2175,2277,2351,2381,2385,2399,2420,2396,2354,2282,2258,
+2264,2297,2338,2408,2466,2482,2481,2465,2477,2508,2533,2560,2588,2622,2650,2679,2742,2851,2915,2922,
+2939,3001,3072,3133,3147,3142,3144,3146,3139,3145,3171,3200,3236,3280,3313,3347,3383,3432,3526,3605,
+3639,3655,3722,3751,3863,3979,4026,4113,4112,4154,4175,4096,3869,3560,3166,2761,2427,2179,1958,1728,
+1549,1515,1632,1794,1945,2062,2142,2190,2213,2215,2212,2195,2173,2149,2112,2058,2008,1955,1898,1850,
+1807,1755,1708,1684,1633,1575,1516,1464,1410,1356,1310,1256,1195,1130,1062,1004,950,902,853,808,
+764,712,661,614,576,538,495,456,416,375,333,291,252,210,168,122,76,32,-5,-43,
+-78,-116,-157,-196,-230,-266,-287,-313,-339,-363,-388,-413,-438,-462,-486,-515,-544,-586,-626,-667,
+-706,-723,-767,-785,-827,-846,-846,-877,-866,-907,-941,-962,-979,-1001,-977,-1052,-1105,-1134,-1184,-1241,
+-1294,-1340,-1375,-1395,-1422,-1461,-1499,-1507,-1485,-1445,-1415,-1412,-1394,-1362,-1318,-1266,-1221,-1191,-1164,-1154,
+-1148,-1147,-1154,-1171,-1193,-1187,-1199,-1205,-1219,-1231,-1232,-1238,-1238,-1244,-1255,-1260,-1267,-1273,-1288,-1292,
+-1298,-1293,-1279,-1263,-1252,-1243,-1232,-1223,-1220,-1229,-1255,-1291,-1315,-1281,-1232,-1220,-1228,-1263,-1278,-1277,
+-1278,-1284,-1277,-1272,-1268,-1266,-1262,-1250,-1241,-1228,-1223,-1217,-1207,-1203,-1192,-1180,-1167,-1156,-1148,-1142,
+-1130,-1130,-1137,-1125,-1123,-1146,-1134,-1074,-1060,-1062,-1088,-1083,-1116,-1126,-1130,-1150,-1148,-1152,-1146,-1162,
+-1153,-1148,-1146,-1148,-1150,-1154,-1155,-1157,-1161,-1173,-1193,-1211,-1225,-1240,-1257,-1278,-1288,-1299,-1302,-1301,
+-1286,-1311,-1331,-1345,-1364,-1372,-1362,-1350,-1346,-1347,-1353,-1372,-1410,-1438,-1456,-1462,-1471,-1483,-1493,-1509,
+-1552,-1586,-1600,-1621,-1599,-1602,-1631,-1670,-1701,-1727,-1758,-1769,-1774,-1793,-1825,-1853,-1884,-1929,-1971,-2014,
+-2039,-2065,-2093,-2115,-2140,-2147,-2154,-2171,-2189,-2215,-2245,-2277,-2304,-2324,-2331,-2354,-2392,-2427,-2428,-2401,
+-2504,-2548,-2574,-2598,-2623,-2655,-2701,-2753,-2800,-2851,-2893,-2933,-2976,-3020,-3065,-3103,-3125,-3142,-3165,-3191,
+-3206,-3220,-3243,-3269,-3295,-3321,-3343,-3363,-3381,-3397,-3416,-3430,-3441,-3451,-3460,-3469,-3476,-3489,-3502,-3511,
+-3518,-3532,-3551,-3571,-3584,-3593,-3602,-3605,-3611,-3624,-3638,-3652,-3663,-3677,-3688,-3691,-3696,-3700,-3703,-3713,
+-3714,-3702,-3695,-3692,-3697,-3695,-3688,-3674,-3656,-3640,-3635,-3635,-3638,-3643,-3641,-3634,-3618,-3601,-3584,-3564,
+-3544,-3514,-3486,-3469,-3478,-3500,-3480,-3365,-3231,-3099,-3013,-2951,-2874,-2820,-2881,-2949,-2911,-2863,-2827,-2675,
+-2555,-2460,-2361,-2322,-2343,-2394,-2405,-2433,-2442,-2442,-2428,-2404,-2349,-2269,-2245,-2209,-2218,-2158,-2129,-2128,
+-2121,-2088,-2047,-2064,-2032,-2007,-2020,-1958,-2014,-1988,-2010,-1982,-2000,-1990,-1923,-1827,-1819,-1800,-1659,-1642,
+-1732,-1788,-1858,-1899,-1865,-1784,-1784,-1799,-1777,-1734,-1672,-1657,-1607,-1543,-1505,-1473,-1428,-1360,-1313,-1324,
+-1330,-1355,-1370,-1485,-1600,-1728,-1793,-1858,-1919,-1985,-2050,-2116,-2181,-2245,-2304,-2346,-2381,-2416,-2442,-2461,
+-2483,-2515,-2541,-2559,-2575,-2592,-2606,-2620,-2634,-2649,-2681,-2721,-2749,-2750,-2743,-2769,-2885,-2996,-3043,-3080,
+-3111,-3149,-3192,-3230,-3265,-3287,-3296,-3307,-3311,-3318,-3312,-3309,-3307,-3301,-3301,-3303,-3303,-3300,-3300,-3292,
+-3282,-3272,-3259,-3238,-3211,-3203,-3209,-3243,-3277,-3279,-3268,-3263,-3262,-3273,-3296,-3319,-3340,-3361,-3372,-3391,
+-3432,-3469,-3482,-3481,-3467,-3452,-3460,-3458,-3416,-3350,-3339,-3373,-3430,-3453,-3463,-3479,-3492,-3510,-3498,-3463,
+-3429,-3386,-3350,-3317,-3271,-3215,-3181,-3204,-3300,-3353,-3413,-3461,-3470,-3414,-3345,-3275,-3277,-3323,-3387,-3410,
+-3435,-3467,-3498,-3522,-3536,-3551,-3571,-3590,-3608,-3622,-3631,-3628,-3611,-3606,-3615,-3652,-3730,-3807,-3860,-3876,
+-3857,-3831,-3804,-3781,-3760,-3745,-3736,-3734,-3727,-3720,-3711,-3701,-3694,-3690,-3691,-3687,-3689,-3675,-3640,-3605,
+-3568,-3529,-3466,-3475,-3501,-3483,-3441,-3384,-3331,-3293,-3255,-3220,-3186,-3145,-3106,-3063,-3019,-2971,-2910,-2832,
+-2759,-2732,-2719,-2699,-2673,-2642,-2605,-2567,-2527,-2481,-2435,-2398,-2357,-2312,-2262,-2216,-2169,-2114,-2053,-1992,
+-1930,-1851,-1777,-1699,-1618,-1537,-1456,-1377,-1294,-1217,-1143,-1067,-986,-901,-818,-735,-654,-571,-484,-397,
+-322,-246,-169,-98,-23,58,132,207,275,344,417,492,561,615,676,749,836,930,1017,1107,
+1192,1276,1343,1399,1457,1525,1597,1677,1757,1849,1939,2029,2114,2196,2272,2352,2428,2508,2594,2678,
+2771,2860,2934,3033,3106,3196,3288,3367,3419,3476,3571,3631,3684,3771,3848,3920,3992,4068,4152,4221,
+4288,4368,4441,4517,4579,4640,4734,4808,4883,4954,5017,5106,5219,5281,5325,5374,5424,5490,5536,5606,
+5633,5677,5726,5743,5757,5813,5831,5839,5844,5856,5873,5881,5894,5906,5912,5922,5898,5816,5780,5774,
+5767,5761,5737,5713,5689,5643,5604,5573,5547,5529,5505,5471,5443,5407,5335,5274,5249,5233,5196,5166,
+5132,5103,5101,5108,5110,5100,5074,5039,5023,5034,5030,5027,5028,5016,4989,4960,4938,4923,4913,4880,
+4853,4847,4860,4887,4913,4921,4944,4996,5071,5132,5154,5099,4995,4983,4998,4967,4906,4831,4791,4805,
+4915,5101,5226,5288,5357,5384,5409,5438,5453,5437,5441,5463,5495,5530,5558,5567,5536,5520,5501,5459,
+5446,5442,5447,5457,5468,5472,5470,5449,5437,5392,5332,5298,5280,5273,5267,5243,5226,5221,5227,5231,
+5198,5150,5072,5037,4978,4971,4938,4881,4851,4891,4957,4971,4915,4861,4816,4811,4831,4746,4656,4617,
+4592,4578,4551,4515,4466,4448,4463,4464,4448,4426,4399,4388,4378,4362,4339,4342,4415,4521,4566,4589,
+4628,4594,4525,4517,4464,4402,4325,4283,4288,4317,4326,4328,4310,4301,4303,4288,4275,4265,4259,4264,
+4290,4287,4288,4287,4272,4288,4319,4360,4381,4379,4384,4256,4026,3727,3456,3220,3059,2941,2897,2921,
+2935,2909,2862,2782,2686,2631,2676,2715,2749,2780,2908,3024,3193,3321,3436,3628,3769,3808,3876,3879,
+3923,3970,3972,3994,3918,3951,3974,3969,3954,3949,3973,3983,3947,3917,3917,3902,3853,3879,3900,3893,
+3904,3908,3898,3883,3919,3889,3874,3868,3882,3844,3812,3791,3772,3736,3717,3703,3681,3663,3633,3626,
+3613,3584,3564,3564,3552,3526,3513,3486,3473,3457,3487,3438,3418,3402,3366,3330,3293,3275,3200,3138,
+3073,3072,3072,3019,2997,2956,2970,2926,2879,2860,2828,2754,2719,2665,2653,2644,2647,2597,2533,2474,
+2452,2438,2419,2337,2226,2075,1988,1899,1840,1899,1825,1664,1462,1391,1305,1183,1140,1068,906,611,
+248,-155,-560,-888,-1141,-1367,-1560,-1704,-1803,-1841,-1863,-1853,-1806,-1776,-1775,-1788,-1815,-1867,-1912,-1969,
+-2014,-2051,-2066,-2040,-1992,-1926,-1864,-1850,-1867,-1901,-1944,-2005,-2082,-2156,-2227,-2303,-2378,-2450,-2514,-2577,
+-2650,-2732,-2796,-2850,-2898,-2946,-2995,-3043,-3094,-3143,-3195,-3245,-3291,-3326,-3357,-3374,-3396,-3428,-3469,-3507,
+-3538,-3576,-3616,-3650,-3687,-3722,-3749,-3773,-3793,-3804,-3805,-3787,-3742,-3643,-3470,-3281,-3251,-3265,-3291,-3342,
+-3443,-3421,-3472,-3477,-3518,-3638,-3718,-3645,-3576,-3511,-3360,-3266,-3151,-3057,-3046,-3030,-2995,-2997,-3068,-3088,
+-3037,-3082,-3206,-3330,-3429,-3626,-3947,-4262,-4495,-4693,-4828,-4916,-4973,-5016,-5041,-5052,-5049,-5044,-5027,-4995,
+-4957,-4936,-4939,-4951,-4973,-5001,-5039,-5086,-5138,-5214,-5328,-5438,-5537,-5628,-5693,-5733,-5765,-5799,-5835,-5872,
+-5914,-5961,-6000,-6030,-6054,-6083,-6128,-6176,-6211,-6235,-6258,-6280,-6302,-6309,-6332,-6360,-6358,-6317,-6242,-6134,
+-5971,-5824,-5710,-5606,-5520,-5479,-5496,-5494,-5496,-5516,-5523,-5528,-5549,-5588,-5636,-5633,-5635,-5597,-5500,-5407,
+-5374,-5406,-5416,-5347,-5255,-5148,-5054,-4984,-4999,-5006,-4920,-4841,-4824,-4819,-4786,-4724,-4694,-4683,-4652,-4624,
+-4637,-4720,-4838,-4973,-5032,-5113,-5223,-5235,-5120,-5046,-5062,-5078,-5082,-5085,-5072,-5056,-5028,-4979,-4936,-4892,
+-4833,-4767,-4687,-4600,-4544,-4496,-4434,-4322,-4161,-3999,-4030,-4026,-3965,-3894,-3865,-3827,-3744,-3651,-3550,-3452,
+-3363,-3270,-3169,-3059,-2960,-2871,-2782,-2705,-2606,-2520,-2352,-2179,-2040,-1902,-1828,-1789,-1777,-1677,-1515,-1396,
+-1377,-1436,-1418,-1364,-1332,-1286,-1244,-1221,-1176,-1113,-1051,-976,-879,-777,-690,-625,-549,-450,-357,-281,
+-215,-141,-61,5,73,146,236,330,450,566,681,790,890,970,1035,1132,1199,1265,1333,1381,
+1443,1516,1580,1658,1725,1767,1825,1895,1969,2067,2165,2265,2311,2380,2435,2422,2459,2442,2409,2330,
+2307,2314,2347,2410,2469,2503,2488,2467,2483,2513,2540,2567,2591,2616,2648,2680,2711,2776,2856,2906,
+2947,3029,3086,3092,3063,3028,3022,3069,3106,3139,3167,3201,3234,3271,3310,3354,3390,3447,3510,3570,
+3643,3676,3692,3744,3816,3945,4066,4113,4169,4134,4164,4145,4029,3847,3533,3164,2822,2495,2231,1997,
+1729,1550,1550,1690,1850,2000,2109,2186,2228,2235,2230,2219,2198,2167,2131,2092,2047,2015,1980,1889,
+1830,1782,1733,1674,1638,1593,1534,1472,1419,1365,1313,1263,1216,1166,1109,1045,987,932,877,826,
+777,734,687,638,589,549,513,472,430,388,346,304,259,218,176,137,96,51,8,-31,
+-69,-103,-140,-182,-220,-252,-279,-301,-324,-348,-374,-399,-424,-440,-461,-488,-519,-553,-593,-634,
+-675,-714,-743,-761,-808,-835,-866,-861,-901,-909,-917,-942,-961,-976,-981,-1022,-1040,-1094,-1121,-1169,
+-1228,-1287,-1330,-1371,-1393,-1420,-1452,-1461,-1427,-1337,-1239,-1320,-1382,-1388,-1368,-1331,-1295,-1257,-1225,-1195,
+-1178,-1171,-1168,-1171,-1189,-1191,-1167,-1181,-1193,-1206,-1209,-1219,-1229,-1233,-1242,-1254,-1262,-1271,-1276,-1291,
+-1297,-1301,-1299,-1287,-1273,-1266,-1257,-1243,-1235,-1229,-1232,-1233,-1224,-1245,-1337,-1388,-1286,-1243,-1264,-1291,
+-1285,-1286,-1286,-1288,-1279,-1275,-1275,-1267,-1255,-1247,-1245,-1247,-1234,-1224,-1217,-1209,-1202,-1188,-1175,-1163,
+-1156,-1163,-1166,-1163,-1151,-1122,-1131,-1132,-1126,-1124,-1114,-1076,-1122,-1142,-1136,-1142,-1153,-1157,-1166,-1168,
+-1163,-1151,-1149,-1146,-1143,-1145,-1151,-1158,-1168,-1171,-1188,-1208,-1227,-1240,-1267,-1282,-1300,-1303,-1296,-1296,
+-1306,-1317,-1337,-1356,-1373,-1375,-1375,-1362,-1353,-1358,-1372,-1396,-1427,-1450,-1477,-1498,-1515,-1532,-1535,-1542,
+-1563,-1598,-1619,-1630,-1638,-1636,-1636,-1656,-1691,-1713,-1742,-1778,-1807,-1820,-1823,-1854,-1903,-1949,-1979,-2001,
+-2033,-2072,-2092,-2107,-2114,-2134,-2148,-2158,-2168,-2187,-2214,-2236,-2274,-2305,-2325,-2339,-2360,-2394,-2434,-2468,
+-2501,-2563,-2594,-2616,-2636,-2661,-2697,-2729,-2763,-2806,-2853,-2890,-2922,-2956,-2993,-3037,-3071,-3099,-3119,-3137,
+-3152,-3175,-3203,-3230,-3258,-3285,-3306,-3330,-3352,-3373,-3390,-3405,-3423,-3435,-3444,-3452,-3461,-3469,-3480,-3496,
+-3511,-3522,-3535,-3552,-3567,-3575,-3580,-3588,-3590,-3601,-3611,-3630,-3647,-3662,-3680,-3695,-3691,-3698,-3709,-3719,
+-3730,-3698,-3723,-3722,-3721,-3719,-3716,-3713,-3703,-3688,-3671,-3666,-3668,-3671,-3668,-3670,-3666,-3656,-3643,-3633,
+-3620,-3610,-3583,-3557,-3535,-3543,-3562,-3565,-3471,-3309,-3173,-3062,-2993,-2939,-2918,-2923,-2967,-2980,-2930,-2937,
+-2838,-2700,-2595,-2451,-2350,-2379,-2441,-2403,-2445,-2455,-2464,-2441,-2413,-2380,-2312,-2250,-2220,-2254,-2186,-2163,
+-2154,-2160,-2169,-2135,-2132,-2112,-2083,-2088,-2026,-2067,-2045,-2017,-2038,-2016,-2012,-1961,-1843,-1840,-1814,-1681,
+-1728,-1803,-1834,-1901,-1999,-2011,-1971,-1964,-1899,-1758,-1665,-1691,-1635,-1574,-1543,-1547,-1502,-1432,-1386,-1376,
+-1365,-1375,-1412,-1414,-1451,-1550,-1732,-1823,-1896,-1959,-2031,-2103,-2167,-2232,-2283,-2314,-2347,-2387,-2427,-2466,
+-2480,-2489,-2516,-2551,-2573,-2595,-2615,-2631,-2637,-2648,-2660,-2687,-2731,-2769,-2788,-2796,-2868,-2976,-3021,-3047,
+-3088,-3124,-3160,-3193,-3226,-3251,-3277,-3293,-3308,-3314,-3320,-3322,-3312,-3315,-3331,-3338,-3321,-3306,-3295,-3284,
+-3274,-3266,-3260,-3246,-3215,-3190,-3180,-3185,-3219,-3242,-3247,-3236,-3232,-3236,-3243,-3272,-3304,-3337,-3361,-3377,
+-3390,-3433,-3463,-3476,-3476,-3484,-3480,-3477,-3475,-3438,-3379,-3367,-3363,-3404,-3435,-3448,-3468,-3479,-3488,-3470,
+-3440,-3403,-3359,-3314,-3272,-3219,-3177,-3160,-3223,-3297,-3335,-3396,-3440,-3411,-3354,-3297,-3260,-3288,-3350,-3416,
+-3453,-3505,-3553,-3588,-3612,-3625,-3641,-3647,-3654,-3671,-3686,-3690,-3679,-3668,-3709,-3779,-3845,-3901,-3930,-3941,
+-3940,-3915,-3881,-3847,-3822,-3806,-3796,-3789,-3785,-3774,-3761,-3751,-3744,-3740,-3741,-3747,-3755,-3751,-3729,-3693,
+-3652,-3621,-3595,-3570,-3549,-3530,-3497,-3438,-3337,-3225,-3211,-3232,-3217,-3189,-3161,-3129,-3085,-3040,-2985,-2915,
+-2778,-2569,-2644,-2633,-2675,-2683,-2663,-2634,-2599,-2562,-2516,-2464,-2426,-2384,-2334,-2289,-2244,-2201,-2144,-2082,
+-2024,-1960,-1883,-1802,-1727,-1649,-1575,-1499,-1421,-1344,-1267,-1184,-1098,-1015,-932,-851,-770,-684,-599,-517,
+-434,-357,-283,-204,-130,-61,13,89,169,242,311,379,443,511,586,657,722,786,861,952,
+1044,1136,1217,1283,1336,1389,1459,1536,1610,1697,1783,1874,1970,2061,2142,2220,2299,2379,2458,2550,
+2627,2707,2797,2898,2984,3053,3102,3182,3265,3338,3415,3511,3576,3640,3711,3778,3847,3914,4008,4106,
+4184,4255,4343,4412,4484,4549,4629,4741,4816,4883,4946,5000,5098,5194,5247,5302,5346,5415,5484,5516,
+5549,5588,5633,5684,5706,5744,5770,5770,5768,5783,5793,5808,5828,5899,5807,5844,5861,5835,5798,5751,
+5726,5719,5714,5695,5683,5654,5601,5553,5518,5495,5473,5460,5437,5390,5347,5293,5242,5199,5168,5130,
+5092,5071,5073,5114,5142,5138,5098,5060,5016,4969,4934,4918,4923,4948,4957,4932,4905,4905,4886,4869,
+4871,4852,4854,4879,4911,4952,4937,4926,4958,5032,5145,5218,5208,5147,5088,5015,4922,4859,4834,4859,
+4902,4997,5155,5250,5320,5411,5431,5436,5446,5425,5393,5439,5473,5508,5534,5548,5530,5514,5461,5445,
+5438,5428,5433,5447,5448,5460,5462,5438,5411,5387,5356,5336,5341,5350,5348,5337,5302,5256,5256,5281,
+5270,5227,5140,5076,5064,4971,5025,4962,4899,4856,4897,4929,4921,4888,4848,4809,4792,4697,4620,4608,
+4583,4552,4535,4517,4482,4441,4435,4440,4435,4418,4393,4373,4357,4342,4331,4311,4297,4327,4397,4477,
+4508,4518,4509,4454,4433,4391,4336,4300,4264,4305,4356,4352,4334,4331,4338,4355,4340,4342,4341,4336,
+4282,4294,4298,4284,4292,4287,4319,4358,4351,4374,4346,4263,4074,3751,3514,3292,3118,3003,2894,2809,
+2749,2703,2714,2683,2612,2527,2439,2445,2590,2687,2722,2743,2866,3065,3260,3453,3540,3649,3749,3842,
+3922,3939,3910,3947,3970,3957,3950,3956,3949,3936,3923,3913,3932,3919,3901,3894,3836,3811,3816,3829,
+3814,3815,3827,3831,3863,3852,3871,3839,3827,3817,3821,3813,3799,3762,3740,3730,3708,3677,3632,3603,
+3596,3606,3610,3554,3500,3499,3489,3471,3447,3478,3474,3490,3454,3454,3393,3337,3289,3254,3171,3086,
+3061,3074,3053,3014,2980,2949,2888,2881,2824,2821,2808,2771,2736,2686,2680,2663,2613,2555,2484,2457,
+2453,2452,2412,2407,2368,2245,2099,1950,1905,1881,1830,1752,1729,1701,1623,1509,1345,1318,1255,1153,
+865,449,10,-414,-771,-1037,-1260,-1433,-1563,-1645,-1704,-1736,-1727,-1669,-1637,-1630,-1645,-1678,-1732,-1793,
+-1863,-1918,-1964,-2000,-1989,-1960,-1922,-1893,-1876,-1871,-1860,-1833,-1827,-1948,-2066,-2173,-2271,-2359,-2443,-2520,
+-2592,-2656,-2731,-2808,-2868,-2914,-2959,-3005,-3057,-3112,-3164,-3215,-3264,-3307,-3343,-3375,-3399,-3418,-3440,-3473,
+-3520,-3567,-3606,-3640,-3679,-3714,-3746,-3779,-3801,-3813,-3815,-3808,-3754,-3604,-3434,-3330,-3288,-3468,-3481,-3543,
+-3614,-3713,-3704,-3748,-3738,-3798,-3777,-3721,-3623,-3513,-3338,-3215,-3110,-3045,-3004,-2917,-2906,-2952,-2969,-2990,
+-2966,-2960,-3042,-3129,-3221,-3357,-3482,-3639,-3837,-4037,-4321,-4577,-4750,-4882,-4982,-5045,-5082,-5097,-5102,-5101,
+-5082,-5050,-5025,-5005,-4987,-4977,-4982,-5000,-5030,-5078,-5152,-5261,-5369,-5461,-5538,-5599,-5648,-5688,-5721,-5752,
+-5781,-5815,-5856,-5887,-5914,-5941,-5971,-6014,-6063,-6101,-6130,-6153,-6176,-6196,-6203,-6199,-6175,-6103,-5960,-5764,
+-5519,-5337,-5228,-5122,-5089,-5138,-5240,-5316,-5356,-5386,-5463,-5579,-5637,-5643,-5666,-5746,-5779,-5777,-5777,-5725,
+-5634,-5536,-5485,-5461,-5396,-5302,-5205,-5103,-5039,-4982,-4948,-4918,-4900,-4860,-4761,-4716,-4701,-4667,-4652,-4626,
+-4600,-4574,-4593,-4616,-4686,-4760,-4845,-4999,-5110,-5101,-5050,-4981,-4922,-4924,-4983,-5033,-5042,-5022,-4985,-4940,
+-4887,-4824,-4758,-4693,-4624,-4554,-4489,-4409,-4290,-4109,-4025,-4090,-4078,-4019,-3948,-3892,-3829,-3741,-3641,-3552,
+-3460,-3370,-3276,-3183,-3086,-2988,-2899,-2811,-2735,-2638,-2528,-2327,-2151,-1990,-1884,-1830,-1809,-1825,-1715,-1587,
+-1484,-1430,-1488,-1495,-1451,-1398,-1361,-1330,-1286,-1217,-1137,-1054,-961,-861,-776,-705,-635,-551,-460,-357,
+-280,-209,-140,-60,26,101,181,262,357,470,592,701,790,901,972,1045,1114,1188,1250,1317,
+1380,1438,1498,1564,1664,1737,1794,1857,1919,1990,2080,2171,2239,2288,2332,2401,2444,2499,2543,2494,
+2415,2375,2369,2387,2455,2491,2513,2498,2489,2514,2547,2594,2621,2636,2652,2669,2705,2746,2787,2859,
+2939,2985,2998,2991,2980,2984,3001,3035,3070,3124,3148,3174,3216,3258,3315,3378,3407,3430,3482,3574,
+3639,3672,3693,3738,3807,3901,3991,4044,4120,4138,4110,4135,4108,3973,3780,3512,3177,2842,2538,2294,
+2053,1758,1566,1600,1754,1915,2050,2147,2213,2244,2250,2241,2222,2197,2160,2119,2073,2023,1978,1929,
+1864,1805,1755,1705,1641,1574,1541,1483,1422,1365,1312,1266,1223,1179,1135,1083,1028,978,922,866,
+809,755,707,659,612,564,528,489,451,407,365,320,274,230,187,145,106,64,23,-20,
+-58,-94,-128,-163,-206,-240,-274,-305,-320,-337,-355,-378,-399,-414,-429,-446,-469,-509,-554,-600,
+-642,-682,-706,-750,-791,-830,-860,-873,-891,-915,-925,-933,-953,-954,-944,-1008,-1026,-1021,-1086,-1116,
+-1154,-1191,-1265,-1316,-1352,-1366,-1380,-1392,-1365,-1269,-1020,-954,-1213,-1342,-1382,-1376,-1347,-1315,-1275,-1241,
+-1212,-1191,-1174,-1160,-1167,-1183,-1177,-1158,-1170,-1182,-1188,-1192,-1203,-1214,-1223,-1231,-1245,-1259,-1266,-1275,
+-1287,-1296,-1299,-1303,-1291,-1278,-1272,-1264,-1251,-1246,-1245,-1250,-1245,-1240,-1208,-1212,-1313,-1393,-1291,-1264,
+-1286,-1277,-1281,-1292,-1291,-1285,-1283,-1277,-1270,-1258,-1245,-1253,-1253,-1251,-1248,-1246,-1230,-1220,-1210,-1191,
+-1173,-1168,-1168,-1176,-1180,-1164,-1154,-1165,-1173,-1175,-1156,-1152,-1150,-1158,-1153,-1147,-1150,-1164,-1170,-1170,
+-1168,-1160,-1153,-1147,-1147,-1147,-1154,-1161,-1173,-1179,-1191,-1201,-1213,-1220,-1216,-1259,-1290,-1296,-1292,-1292,
+-1306,-1326,-1340,-1361,-1374,-1377,-1375,-1371,-1370,-1374,-1380,-1400,-1446,-1495,-1530,-1548,-1546,-1529,-1519,-1521,
+-1536,-1569,-1601,-1631,-1642,-1655,-1657,-1670,-1688,-1713,-1734,-1760,-1794,-1832,-1849,-1859,-1889,-1914,-1936,-1952,
+-1980,-2022,-2062,-2094,-2118,-2133,-2155,-2166,-2167,-2172,-2190,-2209,-2248,-2283,-2317,-2340,-2364,-2393,-2431,-2480,
+-2526,-2574,-2603,-2617,-2628,-2645,-2670,-2700,-2729,-2773,-2818,-2866,-2903,-2929,-2954,-2991,-3028,-3069,-3097,-3126,
+-3152,-3164,-3184,-3206,-3222,-3251,-3275,-3301,-3322,-3345,-3367,-3389,-3406,-3420,-3436,-3448,-3460,-3468,-3481,-3495,
+-3511,-3526,-3537,-3552,-3566,-3576,-3583,-3588,-3599,-3604,-3609,-3625,-3643,-3658,-3675,-3697,-3715,-3721,-3720,-3729,
+-3734,-3753,-3759,-3766,-3772,-3752,-3738,-3738,-3738,-3733,-3724,-3719,-3715,-3715,-3717,-3722,-3727,-3733,-3733,-3727,
+-3710,-3684,-3664,-3639,-3613,-3597,-3602,-3614,-3627,-3594,-3465,-3282,-3164,-3073,-3039,-2975,-2973,-2994,-3042,-3020,
+-3026,-2979,-2821,-2700,-2531,-2405,-2350,-2417,-2430,-2458,-2453,-2464,-2436,-2427,-2411,-2353,-2277,-2257,-2252,-2255,
+-2226,-2226,-2251,-2238,-2247,-2191,-2167,-2119,-2132,-2075,-2087,-2071,-2070,-2075,-2029,-2022,-1936,-1860,-1874,-1777,
+-1736,-1822,-1846,-1856,-1954,-2043,-2087,-2081,-2043,-1950,-1832,-1690,-1659,-1699,-1703,-1640,-1543,-1476,-1447,-1421,
+-1394,-1425,-1431,-1434,-1450,-1490,-1574,-1789,-1898,-1966,-2026,-2087,-2155,-2219,-2265,-2294,-2313,-2335,-2378,-2425,
+-2461,-2476,-2500,-2534,-2575,-2593,-2610,-2626,-2643,-2653,-2648,-2646,-2668,-2722,-2776,-2821,-2864,-2943,-2983,-3001,
+-3039,-3079,-3129,-3168,-3195,-3218,-3238,-3256,-3276,-3295,-3314,-3324,-3329,-3328,-3323,-3323,-3325,-3305,-3291,-3284,
+-3265,-3230,-3216,-3209,-3201,-3197,-3175,-3160,-3179,-3188,-3193,-3198,-3192,-3197,-3203,-3220,-3250,-3291,-3328,-3356,
+-3377,-3400,-3435,-3451,-3457,-3460,-3460,-3461,-3469,-3477,-3446,-3397,-3379,-3352,-3367,-3391,-3414,-3434,-3446,-3454,
+-3437,-3403,-3361,-3316,-3267,-3205,-3160,-3129,-3148,-3219,-3276,-3344,-3377,-3371,-3367,-3305,-3288,-3295,-3328,-3395,
+-3454,-3524,-3575,-3619,-3643,-3657,-3663,-3672,-3675,-3687,-3711,-3734,-3739,-3733,-3781,-3882,-3963,-4011,-4024,-4013,
+-3990,-3977,-3952,-3914,-3876,-3856,-3847,-3839,-3829,-3821,-3813,-3808,-3808,-3808,-3809,-3814,-3811,-3809,-3799,-3772,
+-3734,-3696,-3659,-3629,-3604,-3582,-3549,-3508,-3446,-3314,-3161,-3201,-3217,-3172,-3158,-3156,-3132,-3093,-3050,-3008,
+-2943,-2847,-2759,-2721,-2687,-2708,-2713,-2697,-2670,-2635,-2601,-2560,-2512,-2459,-2409,-2361,-2313,-2263,-2214,-2159,
+-2111,-2066,-2002,-1926,-1843,-1765,-1680,-1610,-1542,-1468,-1391,-1306,-1217,-1130,-1046,-964,-882,-800,-716,-636,
+-555,-476,-401,-328,-250,-175,-107,-28,53,127,197,270,349,419,479,535,606,681,762,822,
+887,975,1065,1146,1214,1277,1335,1415,1501,1574,1659,1750,1843,1937,2020,2100,2182,2272,2360,2440,
+2531,2604,2687,2773,2871,2982,3046,3097,3170,3253,3328,3405,3491,3576,3647,3699,3756,3814,3870,3951,
+4060,4149,4211,4280,4357,4430,4513,4630,4733,4805,4887,4934,4985,5065,5157,5212,5261,5310,5393,5450,
+5491,5522,5573,5624,5651,5675,5703,5703,5708,5723,5743,5787,5814,5876,5873,5831,5822,5938,5870,5796,
+5766,5702,5677,5677,5634,5628,5632,5567,5506,5450,5426,5406,5383,5356,5305,5253,5232,5212,5180,5154,
+5108,5051,5038,5075,5110,5133,5100,5065,5043,4947,4886,4845,4821,4841,4870,4891,4866,4856,4851,4838,
+4835,4843,4849,4838,4850,4890,4900,4865,4856,4889,4970,5110,5185,5189,5112,4987,4891,4821,4778,4759,
+4763,4791,4852,4886,4940,5082,5201,5317,5389,5400,5370,5405,5445,5497,5528,5551,5561,5532,5523,5495,
+5516,5511,5500,5460,5447,5448,5424,5423,5403,5395,5383,5363,5354,5350,5384,5395,5383,5349,5291,5261,
+5254,5220,5182,5135,5116,5099,5025,4996,4944,4899,4848,4860,4869,4860,4828,4796,4752,4676,4605,4588,
+4579,4564,4527,4495,4467,4451,4432,4427,4418,4398,4371,4343,4326,4317,4316,4305,4286,4267,4255,4274,
+4333,4399,4387,4365,4352,4366,4321,4317,4302,4355,4368,4362,4345,4351,4362,4373,4349,4345,4331,4321,
+4308,4291,4302,4293,4304,4307,4325,4358,4332,4333,4321,4258,4186,3934,3649,3403,3205,3081,2992,2906,
+2803,2697,2596,2547,2488,2422,2381,2308,2299,2514,2576,2569,2602,2690,2852,3070,3317,3501,3627,3711,
+3817,3883,3951,4001,3960,3950,3938,3938,3914,3923,3910,3948,3947,3960,3893,3859,3876,3847,3790,3770,
+3728,3762,3779,3781,3781,3782,3819,3798,3785,3789,3777,3810,3786,3744,3753,3749,3704,3695,3672,3631,
+3578,3561,3565,3576,3586,3565,3538,3517,3463,3494,3451,3467,3479,3447,3396,3336,3296,3214,3172,3098,
+3009,3019,3034,3026,2973,2932,2875,2801,2739,2694,2654,2622,2653,2673,2634,2636,2623,2591,2560,2508,
+2457,2468,2472,2430,2390,2340,2187,2037,1936,1866,1820,1819,1770,1750,1700,1614,1530,1376,1304,1267,
+1202,1032,591,144,-291,-655,-927,-1153,-1321,-1440,-1519,-1580,-1615,-1606,-1543,-1511,-1501,-1512,-1546,-1599,
+-1668,-1737,-1796,-1855,-1895,-1902,-1900,-1890,-1869,-1857,-1841,-1804,-1736,-1670,-1656,-1736,-1957,-2147,-2290,-2398,
+-2490,-2575,-2653,-2727,-2803,-2868,-2914,-2950,-2996,-3053,-3112,-3166,-3219,-3267,-3308,-3350,-3388,-3424,-3454,-3479,
+-3506,-3545,-3587,-3630,-3674,-3709,-3736,-3765,-3796,-3806,-3800,-3782,-3736,-3664,-3537,-3425,-3387,-3492,-3741,-3911,
+-3981,-4013,-4064,-4059,-4032,-3987,-3989,-3907,-3750,-3550,-3437,-3301,-3117,-3077,-3041,-2960,-2879,-2909,-2980,-2974,
+-2943,-2898,-2934,-3030,-3107,-3163,-3232,-3359,-3400,-3493,-3616,-3872,-4181,-4465,-4712,-4896,-5009,-5068,-5113,-5144,
+-5148,-5148,-5137,-5118,-5099,-5078,-5057,-5045,-5042,-5057,-5087,-5152,-5243,-5324,-5401,-5470,-5531,-5584,-5624,-5658,
+-5689,-5715,-5743,-5771,-5793,-5811,-5835,-5861,-5888,-5920,-5945,-5985,-6015,-6016,-5996,-5961,-5915,-5832,-5664,-5410,
+-5207,-5050,-4917,-4814,-4793,-4877,-5037,-5201,-5256,-5303,-5377,-5515,-5690,-5775,-5824,-5868,-5902,-5925,-5915,-5891,
+-5855,-5805,-5729,-5619,-5494,-5389,-5262,-5146,-5060,-4981,-4923,-4888,-4867,-4855,-4822,-4768,-4717,-4690,-4643,-4614,
+-4617,-4590,-4538,-4506,-4506,-4516,-4557,-4639,-4689,-4820,-4891,-4893,-4828,-4803,-4834,-4866,-4953,-4974,-4970,-4950,
+-4907,-4855,-4793,-4731,-4678,-4620,-4541,-4470,-4395,-4295,-4153,-4146,-4164,-4119,-4041,-3975,-3906,-3836,-3745,-3650,
+-3565,-3475,-3381,-3293,-3200,-3111,-3016,-2916,-2843,-2750,-2664,-2522,-2315,-2127,-2022,-1959,-1857,-1863,-1851,-1754,
+-1644,-1578,-1557,-1544,-1526,-1482,-1445,-1417,-1375,-1307,-1230,-1149,-1055,-953,-859,-781,-712,-634,-550,-457,
+-370,-288,-213,-130,-31,63,136,216,308,400,512,616,712,800,876,958,1037,1113,1168,1241,
+1300,1364,1441,1494,1586,1674,1752,1831,1910,1949,2015,2097,2176,2223,2284,2326,2372,2425,2483,2569,
+2595,2522,2454,2415,2424,2483,2541,2553,2543,2530,2563,2633,2670,2714,2718,2711,2715,2750,2781,2815,
+2873,2977,3012,3018,2992,2971,2992,3022,3059,3090,3124,3159,3197,3251,3343,3470,3497,3462,3457,3504,
+3626,3679,3683,3755,3827,3920,4050,4137,4110,4154,4148,4116,4135,4108,3946,3711,3472,3173,2835,2552,
+2305,2065,1778,1609,1670,1831,1984,2101,2185,2234,2257,2260,2246,2223,2190,2146,2100,2053,2002,1953,
+1898,1840,1784,1728,1669,1600,1523,1474,1427,1366,1317,1270,1223,1186,1146,1108,1065,1011,962,908,
+852,793,738,690,640,592,548,509,472,429,383,336,290,249,205,160,114,72,34,-5,
+-45,-80,-116,-154,-184,-231,-272,-302,-320,-332,-343,-357,-377,-390,-393,-399,-420,-446,-493,-536,
+-569,-639,-698,-733,-771,-801,-834,-858,-855,-911,-930,-936,-945,-952,-907,-956,-1009,-1017,-1031,-1076,
+-1104,-1146,-1197,-1249,-1296,-1319,-1289,-1181,-1210,-1187,-1054,-856,-1005,-1222,-1342,-1386,-1382,-1357,-1324,-1282,
+-1241,-1211,-1188,-1175,-1166,-1170,-1175,-1154,-1146,-1154,-1162,-1164,-1171,-1180,-1193,-1206,-1213,-1228,-1247,-1260,
+-1265,-1280,-1293,-1292,-1296,-1286,-1279,-1271,-1264,-1257,-1252,-1253,-1253,-1258,-1265,-1256,-1232,-1245,-1327,-1387,
+-1285,-1273,-1269,-1281,-1287,-1272,-1283,-1282,-1274,-1270,-1278,-1273,-1269,-1273,-1279,-1284,-1273,-1254,-1239,-1217,
+-1193,-1178,-1176,-1189,-1195,-1198,-1194,-1194,-1203,-1208,-1179,-1166,-1167,-1161,-1158,-1156,-1155,-1165,-1182,-1184,
+-1184,-1179,-1172,-1162,-1164,-1161,-1164,-1172,-1183,-1186,-1193,-1207,-1213,-1221,-1243,-1258,-1269,-1286,-1290,-1291,
+-1303,-1324,-1348,-1366,-1379,-1385,-1386,-1386,-1385,-1396,-1412,-1441,-1474,-1498,-1510,-1515,-1518,-1511,-1512,-1515,
+-1529,-1545,-1572,-1603,-1634,-1669,-1693,-1691,-1683,-1692,-1714,-1749,-1783,-1820,-1850,-1872,-1888,-1894,-1907,-1920,
+-1952,-2007,-2045,-2060,-2087,-2107,-2131,-2155,-2176,-2167,-2181,-2214,-2243,-2276,-2314,-2351,-2375,-2390,-2406,-2432,
+-2475,-2524,-2532,-2572,-2635,-2646,-2656,-2670,-2701,-2743,-2798,-2853,-2893,-2927,-2949,-2966,-2995,-3025,-3054,-3092,
+-3128,-3157,-3182,-3206,-3221,-3236,-3256,-3280,-3313,-3337,-3356,-3379,-3398,-3418,-3436,-3448,-3462,-3472,-3484,-3504,
+-3525,-3541,-3554,-3566,-3581,-3592,-3600,-3611,-3633,-3641,-3643,-3650,-3674,-3699,-3714,-3725,-3734,-3747,-3769,-3778,
+-3788,-3790,-3798,-3817,-3829,-3818,-3811,-3804,-3800,-3808,-3810,-3804,-3800,-3798,-3794,-3796,-3798,-3799,-3796,-3786,
+-3777,-3755,-3735,-3710,-3681,-3647,-3632,-3640,-3651,-3661,-3663,-3599,-3445,-3302,-3184,-3117,-3086,-3044,-3036,-3096,
+-3111,-3068,-2998,-2924,-2794,-2618,-2472,-2393,-2382,-2418,-2407,-2440,-2421,-2469,-2449,-2406,-2387,-2392,-2366,-2320,
+-2313,-2314,-2355,-2338,-2347,-2286,-2262,-2245,-2199,-2196,-2152,-2101,-2136,-2111,-2074,-2082,-2009,-1937,-1915,-1816,
+-1759,-1763,-1864,-1943,-1992,-2008,-2034,-2063,-2061,-2015,-1836,-1851,-1818,-1711,-1684,-1683,-1618,-1525,-1484,-1463,
+-1451,-1450,-1439,-1486,-1493,-1546,-1644,-1737,-1855,-1954,-2018,-2072,-2134,-2194,-2249,-2282,-2302,-2331,-2350,-2388,
+-2434,-2468,-2472,-2506,-2543,-2573,-2598,-2617,-2631,-2637,-2641,-2642,-2649,-2683,-2742,-2799,-2836,-2881,-2950,-2974,
+-3002,-3044,-3095,-3140,-3173,-3197,-3222,-3241,-3254,-3268,-3282,-3289,-3294,-3306,-3317,-3319,-3304,-3287,-3278,-3273,
+-3243,-3210,-3180,-3166,-3153,-3152,-3138,-3122,-3114,-3113,-3124,-3124,-3135,-3139,-3150,-3175,-3197,-3235,-3273,-3311,
+-3350,-3396,-3415,-3412,-3429,-3434,-3434,-3447,-3461,-3484,-3485,-3450,-3399,-3355,-3338,-3335,-3360,-3386,-3406,-3419,
+-3420,-3398,-3358,-3310,-3254,-3206,-3149,-3121,-3137,-3170,-3221,-3293,-3334,-3332,-3351,-3324,-3300,-3311,-3346,-3394,
+-3444,-3501,-3563,-3616,-3647,-3666,-3675,-3682,-3690,-3689,-3713,-3748,-3777,-3800,-3856,-3966,-4043,-4085,-4100,-4084,
+-4056,-4027,-3995,-3975,-3947,-3918,-3906,-3902,-3896,-3889,-3878,-3872,-3875,-3884,-3884,-3881,-3881,-3879,-3869,-3850,
+-3822,-3777,-3731,-3691,-3652,-3621,-3594,-3560,-3522,-3476,-3408,-3345,-3299,-3199,-3017,-3061,-3112,-3101,-3052,-3027,
+-3021,-2976,-2910,-2834,-2758,-2712,-2734,-2752,-2736,-2711,-2680,-2634,-2586,-2540,-2495,-2441,-2385,-2342,-2294,-2237,
+-2182,-2121,-2069,-2010,-1950,-1876,-1800,-1724,-1656,-1587,-1510,-1426,-1339,-1251,-1162,-1077,-993,-910,-826,-748,
+-679,-596,-517,-444,-372,-298,-222,-144,-68,5,85,159,225,296,374,450,519,577,644,720,
+795,857,921,994,1071,1148,1225,1313,1386,1461,1539,1631,1720,1806,1894,1973,2057,2147,2235,2322,
+2414,2498,2577,2661,2745,2833,2931,3017,3112,3203,3270,3329,3418,3499,3575,3646,3701,3768,3857,3920,
+3944,4041,4133,4200,4271,4321,4398,4505,4605,4714,4799,4866,4930,4977,5041,5121,5174,5216,5280,5365,
+5432,5489,5493,5525,5540,5577,5586,5624,5637,5671,5681,5733,5812,5870,5871,5810,5802,5750,5772,5799,
+5737,5689,5661,5621,5574,5536,5537,5521,5455,5403,5369,5367,5356,5337,5296,5250,5212,5180,5154,5129,
+5114,5080,5062,5024,5032,5064,5061,5032,4988,4927,4875,4848,4825,4818,4821,4836,4815,4793,4783,4806,
+4798,4798,4802,4816,4820,4821,4833,4849,4844,4857,4906,5002,5110,5127,5062,4966,4855,4775,4710,4664,
+4619,4592,4584,4589,4623,4683,4779,4932,5122,5270,5311,5361,5404,5455,5517,5534,5553,5554,5539,5564,
+5578,5571,5568,5545,5529,5486,5438,5384,5364,5377,5373,5344,5350,5346,5347,5356,5367,5385,5332,5247,
+5182,5151,5135,5120,5108,5084,5047,4996,4981,4941,4885,4834,4793,4766,4754,4735,4710,4650,4589,4572,
+4565,4552,4523,4484,4450,4431,4417,4403,4394,4380,4359,4330,4295,4277,4267,4268,4270,4261,4247,4232,
+4223,4231,4251,4254,4269,4291,4324,4339,4346,4360,4355,4357,4350,4343,4373,4337,4339,4337,4380,4354,
+4361,4381,4293,4246,4240,4235,4260,4296,4324,4326,4310,4258,4169,3885,3642,3438,3262,3138,3072,3000,
+2924,2840,2725,2600,2475,2366,2296,2282,2262,2365,2601,2564,2500,2500,2550,2712,2934,3091,3275,3488,
+3662,3776,3877,3930,3951,3958,3917,3918,3887,3889,3903,3896,3897,3884,3898,3883,3872,3813,3804,3786,
+3759,3761,3734,3676,3709,3713,3727,3705,3729,3725,3738,3722,3726,3759,3755,3713,3712,3712,3688,3655,
+3642,3589,3542,3524,3514,3539,3549,3521,3519,3461,3460,3442,3461,3418,3426,3374,3277,3220,3209,3195,
+3096,3090,3064,2982,2918,2867,2786,2712,2657,2590,2544,2524,2486,2450,2463,2454,2478,2534,2549,2607,
+2563,2510,2490,2465,2426,2351,2280,2124,2020,1929,1920,1868,1764,1706,1682,1638,1604,1591,1545,1520,
+1379,1195,1044,764,289,-177,-551,-830,-1058,-1214,-1318,-1385,-1438,-1481,-1485,-1447,-1397,-1387,-1398,-1427,
+-1478,-1547,-1616,-1680,-1744,-1786,-1810,-1833,-1835,-1821,-1802,-1762,-1688,-1611,-1556,-1535,-1526,-1599,-1833,-2070,
+-2253,-2395,-2508,-2608,-2696,-2773,-2830,-2882,-2927,-2973,-3029,-3088,-3146,-3198,-3246,-3290,-3335,-3379,-3424,-3462,
+-3499,-3538,-3579,-3615,-3654,-3693,-3735,-3768,-3785,-3800,-3795,-3780,-3739,-3678,-3610,-3550,-3595,-3665,-3827,-4044,
+-4158,-4139,-4151,-4214,-4266,-4227,-4227,-4190,-4067,-3803,-3604,-3378,-3219,-3156,-3107,-2975,-2911,-2924,-2924,-2933,
+-2918,-2921,-2934,-2969,-3067,-3125,-3166,-3221,-3289,-3266,-3305,-3410,-3591,-3836,-4140,-4493,-4768,-4926,-5027,-5095,
+-5139,-5163,-5180,-5188,-5193,-5186,-5167,-5153,-5137,-5127,-5136,-5150,-5194,-5254,-5304,-5358,-5417,-5474,-5520,-5559,
+-5593,-5624,-5647,-5664,-5677,-5682,-5676,-5692,-5712,-5717,-5732,-5757,-5800,-5793,-5704,-5597,-5470,-5358,-5238,-5056,
+-4859,-4739,-4639,-4554,-4522,-4622,-4774,-4935,-5102,-5252,-5373,-5472,-5543,-5658,-5770,-5866,-5928,-5962,-5984,-5998,
+-5980,-5952,-5913,-5865,-5802,-5686,-5514,-5344,-5187,-5061,-4966,-4892,-4844,-4809,-4807,-4774,-4738,-4727,-4710,-4670,
+-4604,-4584,-4561,-4515,-4489,-4473,-4454,-4459,-4493,-4516,-4502,-4576,-4645,-4658,-4688,-4751,-4845,-4914,-4917,-4922,
+-4890,-4841,-4793,-4746,-4708,-4656,-4593,-4522,-4454,-4374,-4274,-4198,-4215,-4216,-4131,-4044,-3974,-3897,-3834,-3746,
+-3656,-3573,-3483,-3394,-3310,-3222,-3137,-3051,-2946,-2864,-2788,-2658,-2493,-2290,-2150,-2079,-1973,-1882,-1853,-1794,
+-1680,-1622,-1567,-1575,-1573,-1537,-1507,-1473,-1431,-1377,-1309,-1229,-1146,-1047,-945,-862,-794,-715,-617,-530,
+-444,-354,-278,-193,-103,-12,81,159,245,344,437,530,622,713,793,863,943,1023,1107,1177,
+1233,1295,1372,1450,1534,1601,1678,1745,1835,1911,1974,2030,2094,2152,2214,2281,2334,2368,2433,2520,
+2586,2634,2598,2521,2471,2467,2520,2543,2596,2576,2581,2625,2703,2745,2776,2789,2776,2757,2804,2811,
+2845,2931,3023,3073,3066,3053,3046,3023,3043,3081,3114,3149,3175,3226,3338,3438,3499,3503,3495,3468,
+3506,3652,3742,3735,3771,3836,3958,4096,4158,4128,4200,4163,4153,4108,4057,3889,3641,3373,3081,2796,
+2544,2280,2017,1771,1652,1743,1899,2035,2144,2211,2248,2267,2263,2241,2213,2176,2130,2082,2030,1980,
+1926,1870,1814,1757,1695,1626,1549,1469,1406,1372,1318,1276,1222,1182,1142,1107,1069,1030,997,936,
+884,829,771,715,662,609,568,519,479,441,398,352,304,259,211,171,130,86,44,10,
+-24,-63,-97,-131,-168,-208,-247,-284,-309,-320,-340,-345,-356,-369,-371,-379,-387,-409,-445,-492,
+-537,-542,-582,-677,-728,-762,-810,-813,-860,-879,-917,-924,-937,-944,-962,-947,-975,-996,-1002,-1028,
+-1065,-1090,-1136,-1190,-1236,-1274,-1280,-1220,-1028,-826,-856,-693,-751,-1043,-1257,-1361,-1396,-1388,-1359,-1314,
+-1276,-1236,-1207,-1187,-1176,-1173,-1173,-1171,-1144,-1129,-1134,-1137,-1137,-1143,-1152,-1168,-1180,-1191,-1207,-1230,
+-1242,-1250,-1265,-1280,-1278,-1280,-1275,-1269,-1262,-1255,-1252,-1250,-1247,-1252,-1261,-1271,-1282,-1280,-1267,-1259,
+-1299,-1332,-1258,-1253,-1264,-1278,-1270,-1280,-1274,-1269,-1284,-1275,-1257,-1283,-1301,-1294,-1280,-1263,-1250,-1226,
+-1207,-1197,-1202,-1204,-1207,-1212,-1216,-1186,-1184,-1213,-1215,-1174,-1176,-1181,-1180,-1178,-1179,-1177,-1192,-1199,
+-1203,-1198,-1193,-1188,-1183,-1181,-1180,-1182,-1191,-1198,-1199,-1209,-1191,-1185,-1234,-1225,-1237,-1270,-1285,-1291,
+-1304,-1316,-1335,-1353,-1372,-1391,-1410,-1414,-1430,-1450,-1457,-1462,-1467,-1472,-1486,-1505,-1524,-1534,-1538,-1542,
+-1543,-1553,-1571,-1596,-1635,-1685,-1710,-1712,-1707,-1705,-1709,-1714,-1747,-1790,-1835,-1857,-1864,-1902,-1911,-1915,
+-1929,-1958,-1983,-2029,-2067,-2101,-2126,-2157,-2199,-2230,-2206,-2179,-2246,-2253,-2280,-2313,-2348,-2371,-2391,-2410,
+-2431,-2478,-2532,-2548,-2581,-2649,-2657,-2656,-2671,-2706,-2759,-2820,-2865,-2904,-2939,-2962,-2980,-3008,-3040,-3071,
+-3112,-3154,-3189,-3218,-3231,-3251,-3277,-3302,-3332,-3370,-3408,-3431,-3446,-3451,-3474,-3493,-3504,-3516,-3532,-3534,
+-3556,-3569,-3589,-3603,-3620,-3633,-3635,-3642,-3669,-3683,-3701,-3711,-3720,-3734,-3752,-3766,-3780,-3788,-3796,-3804,
+-3809,-3818,-3824,-3833,-3842,-3846,-3848,-3838,-3830,-3829,-3835,-3842,-3840,-3840,-3832,-3826,-3823,-3824,-3824,-3823,
+-3815,-3805,-3791,-3770,-3744,-3715,-3688,-3673,-3676,-3683,-3690,-3704,-3679,-3565,-3409,-3298,-3198,-3143,-3133,-3132,
+-3161,-3185,-3125,-3057,-3000,-2911,-2740,-2573,-2475,-2375,-2366,-2420,-2423,-2446,-2465,-2474,-2485,-2468,-2473,-2430,
+-2405,-2397,-2387,-2429,-2416,-2386,-2312,-2338,-2302,-2280,-2250,-2204,-2176,-2163,-2140,-2143,-2105,-2054,-1942,-1921,
+-1857,-1791,-1781,-1880,-1998,-2044,-2035,-2014,-2019,-2002,-1941,-1886,-1877,-1905,-1855,-1737,-1641,-1611,-1523,-1499,
+-1460,-1509,-1502,-1505,-1532,-1514,-1529,-1594,-1769,-1896,-1989,-2060,-2113,-2177,-2239,-2282,-2305,-2333,-2365,-2383,
+-2417,-2457,-2485,-2491,-2524,-2547,-2576,-2608,-2627,-2640,-2642,-2637,-2652,-2680,-2723,-2777,-2822,-2853,-2899,-2943,
+-2970,-3003,-3046,-3096,-3136,-3166,-3185,-3206,-3232,-3253,-3261,-3270,-3271,-3271,-3269,-3269,-3277,-3269,-3247,-3226,
+-3211,-3195,-3166,-3131,-3104,-3081,-3082,-3079,-3076,-3064,-3055,-3058,-3064,-3083,-3099,-3121,-3150,-3185,-3215,-3238,
+-3276,-3328,-3381,-3401,-3391,-3407,-3405,-3422,-3437,-3448,-3458,-3456,-3424,-3370,-3330,-3319,-3328,-3352,-3372,-3384,
+-3381,-3368,-3336,-3298,-3254,-3204,-3157,-3135,-3178,-3201,-3235,-3269,-3318,-3328,-3357,-3348,-3315,-3324,-3342,-3373,
+-3438,-3461,-3530,-3613,-3651,-3681,-3701,-3707,-3705,-3688,-3696,-3734,-3777,-3831,-3931,-4018,-4090,-4134,-4152,-4141,
+-4118,-4086,-4059,-4034,-4011,-3998,-3984,-3976,-3974,-3972,-3964,-3952,-3947,-3951,-3956,-3960,-3960,-3949,-3934,-3922,
+-3894,-3859,-3817,-3773,-3729,-3680,-3641,-3602,-3566,-3532,-3490,-3439,-3401,-3356,-3287,-3205,-3133,-3125,-2984,-3010,
+-3042,-3045,-3005,-2903,-2770,-2680,-2588,-2712,-2769,-2755,-2732,-2715,-2675,-2622,-2565,-2503,-2458,-2403,-2344,-2302,
+-2266,-2212,-2152,-2090,-2028,-1967,-1901,-1834,-1767,-1701,-1625,-1548,-1459,-1371,-1281,-1191,-1106,-1022,-941,-865,
+-787,-704,-633,-562,-487,-416,-346,-269,-183,-105,-27,38,113,190,258,328,401,482,560,618,
+693,762,831,892,956,1035,1113,1194,1278,1364,1446,1532,1633,1715,1802,1883,1979,2071,2163,2264,
+2354,2435,2511,2606,2710,2797,2893,3002,3080,3168,3265,3323,3380,3461,3542,3620,3683,3741,3815,3868,
+3907,3971,4053,4107,4158,4217,4303,4385,4477,4573,4680,4773,4851,4926,4975,5029,5095,5141,5192,5278,
+5367,5390,5430,5466,5502,5518,5543,5572,5583,5555,5635,5679,5685,5691,5697,5682,5666,5678,5643,5653,
+5666,5632,5583,5603,5589,5536,5512,5490,5470,5436,5397,5364,5363,5352,5325,5286,5248,5209,5161,5114,
+5110,5097,5081,5066,5031,5028,5004,4971,4936,4892,4860,4838,4841,4851,4868,4870,4832,4775,4742,4729,
+4742,4766,4787,4791,4803,4814,4818,4818,4829,4852,4885,4936,5036,5104,5085,4992,4893,4795,4713,4651,
+4585,4525,4489,4478,4493,4541,4630,4740,4869,5002,5101,5201,5318,5398,5450,5502,5541,5559,5558,5555,
+5561,5570,5588,5594,5571,5535,5480,5441,5394,5318,5273,5245,5226,5222,5217,5234,5260,5321,5363,5302,
+5223,5099,5055,5073,5078,5062,5045,5011,4981,4905,4874,4816,4751,4709,4685,4662,4653,4609,4566,4549,
+4538,4524,4510,4482,4450,4417,4390,4358,4343,4341,4334,4315,4290,4251,4227,4215,4210,4210,4205,4194,
+4185,4181,4180,4196,4225,4287,4338,4356,4356,4347,4338,4333,4340,4345,4333,4333,4338,4370,4382,4385,
+4416,4389,4429,4369,4311,4330,4325,4363,4423,4395,4273,4027,4020,3911,3604,3364,3224,3144,3100,3057,
+2997,2933,2862,2765,2642,2501,2376,2279,2236,2292,2490,2561,2547,2474,2448,2551,2744,2996,3237,3385,
+3431,3581,3705,3798,3877,3910,3941,3987,3957,3897,3887,3856,3850,3823,3752,3771,3788,3788,3763,3725,
+3721,3712,3666,3640,3595,3543,3636,3626,3649,3626,3624,3660,3678,3700,3738,3721,3722,3716,3711,3655,
+3617,3629,3589,3528,3484,3478,3478,3527,3532,3573,3592,3471,3426,3362,3346,3304,3277,3240,3220,3185,
+3111,3072,3002,2906,2863,2768,2715,2675,2630,2574,2512,2464,2415,2366,2322,2290,2278,2294,2352,2412,
+2477,2502,2503,2482,2474,2374,2313,2239,2132,2030,1921,1862,1792,1734,1701,1683,1633,1545,1491,1462,
+1432,1333,1216,1150,886,405,-69,-430,-716,-921,-1056,-1145,-1213,-1269,-1313,-1336,-1337,-1324,-1310,-1311,
+-1332,-1377,-1443,-1509,-1567,-1634,-1681,-1715,-1745,-1751,-1730,-1680,-1615,-1547,-1495,-1460,-1442,-1439,-1467,-1543,
+-1708,-1908,-2156,-2349,-2493,-2619,-2713,-2780,-2837,-2888,-2935,-2988,-3044,-3104,-3159,-3207,-3253,-3302,-3350,-3399,
+-3445,-3494,-3543,-3589,-3631,-3673,-3708,-3742,-3771,-3795,-3807,-3810,-3792,-3733,-3660,-3611,-3640,-3859,-4010,-4146,
+-4255,-4245,-4237,-4262,-4408,-4405,-4417,-4403,-4351,-4129,-3898,-3603,-3358,-3205,-3187,-3057,-2985,-2918,-2870,-2820,
+-2828,-2840,-2851,-2921,-3005,-3071,-3132,-3188,-3199,-3298,-3369,-3307,-3355,-3497,-3762,-4029,-4327,-4622,-4827,-4955,
+-5029,-5085,-5129,-5157,-5190,-5222,-5236,-5239,-5225,-5214,-5219,-5222,-5233,-5256,-5272,-5294,-5324,-5359,-5395,-5428,
+-5464,-5493,-5524,-5544,-5546,-5546,-5519,-5485,-5490,-5498,-5501,-5506,-5501,-5483,-5372,-5151,-4955,-4825,-4717,-4622,
+-4582,-4473,-4440,-4463,-4494,-4542,-4680,-4816,-4900,-4985,-5081,-5228,-5385,-5499,-5569,-5647,-5787,-5886,-5943,-5986,
+-6019,-6030,-6015,-5981,-5937,-5873,-5793,-5676,-5504,-5325,-5160,-4994,-4914,-4899,-4842,-4784,-4760,-4737,-4702,-4664,
+-4626,-4593,-4573,-4541,-4518,-4478,-4443,-4427,-4412,-4402,-4403,-4399,-4392,-4395,-4446,-4473,-4523,-4642,-4748,-4809,
+-4867,-4857,-4799,-4736,-4681,-4639,-4594,-4537,-4483,-4424,-4355,-4269,-4219,-4221,-4215,-4127,-4027,-3957,-3881,-3822,
+-3741,-3654,-3563,-3479,-3393,-3310,-3232,-3152,-3075,-2989,-2896,-2814,-2671,-2506,-2300,-2130,-2060,-1999,-1931,-1904,
+-1793,-1693,-1616,-1573,-1545,-1532,-1511,-1523,-1496,-1440,-1386,-1321,-1237,-1140,-1034,-951,-876,-792,-701,-611,
+-523,-437,-347,-266,-181,-91,1,95,180,271,382,473,555,635,720,808,877,957,1024,1104,
+1182,1255,1334,1404,1476,1544,1604,1669,1740,1816,1907,1961,2011,2061,2123,2192,2251,2313,2362,2459,
+2508,2581,2649,2685,2629,2551,2534,2536,2545,2583,2597,2622,2663,2748,2802,2838,2838,2819,2791,2814,
+2843,2885,2972,3073,3128,3143,3128,3057,3037,3064,3097,3140,3179,3241,3340,3445,3536,3592,3591,3549,
+3517,3540,3733,3794,3785,3786,3865,4038,4118,4135,4189,4207,4172,4140,4065,3940,3767,3562,3286,2991,
+2713,2460,2194,1925,1729,1680,1797,1939,2066,2156,2210,2247,2264,2275,2229,2193,2158,2113,2059,2005,
+1952,1900,1845,1792,1730,1659,1580,1499,1419,1358,1317,1280,1233,1192,1155,1113,1073,1035,996,955,
+908,852,795,742,692,639,584,537,495,455,417,373,324,274,228,181,142,106,71,35,
+4,-28,-64,-97,-130,-162,-198,-239,-272,-300,-317,-324,-330,-350,-364,-369,-366,-387,-410,-425,
+-460,-521,-581,-627,-674,-719,-762,-808,-837,-867,-893,-901,-915,-925,-923,-947,-956,-970,-972,-991,
+-1022,-1060,-1085,-1123,-1175,-1219,-1249,-1236,-1157,-962,-632,-513,-524,-635,-986,-1246,-1363,-1399,-1390,-1361,
+-1320,-1270,-1234,-1205,-1188,-1175,-1163,-1156,-1143,-1118,-1117,-1116,-1110,-1103,-1109,-1121,-1138,-1151,-1164,-1183,
+-1208,-1223,-1235,-1246,-1257,-1254,-1258,-1257,-1251,-1247,-1241,-1234,-1234,-1234,-1244,-1253,-1261,-1271,-1289,-1288,
+-1268,-1250,-1326,-1294,-1242,-1243,-1262,-1257,-1274,-1250,-1231,-1252,-1252,-1253,-1277,-1281,-1281,-1282,-1279,-1274,
+-1278,-1264,-1261,-1258,-1244,-1220,-1151,-1211,-1216,-1215,-1222,-1209,-1206,-1208,-1209,-1213,-1212,-1211,-1210,-1219,
+-1218,-1217,-1217,-1214,-1214,-1211,-1200,-1195,-1193,-1198,-1205,-1204,-1172,-1212,-1227,-1237,-1245,-1258,-1286,-1301,
+-1302,-1308,-1329,-1346,-1375,-1397,-1413,-1421,-1422,-1426,-1438,-1449,-1458,-1466,-1476,-1487,-1513,-1538,-1557,-1570,
+-1575,-1577,-1592,-1610,-1637,-1667,-1704,-1725,-1724,-1715,-1717,-1723,-1752,-1790,-1812,-1841,-1864,-1895,-1913,-1924,
+-1931,-1942,-1976,-2023,-2065,-2094,-2119,-2148,-2175,-2207,-2228,-2235,-2233,-2236,-2249,-2274,-2307,-2342,-2371,-2390,
+-2416,-2451,-2504,-2562,-2610,-2614,-2648,-2655,-2663,-2682,-2728,-2780,-2830,-2869,-2907,-2946,-2974,-3006,-3036,-3064,
+-3096,-3130,-3161,-3193,-3225,-3249,-3269,-3290,-3311,-3337,-3358,-3384,-3411,-3442,-3464,-3480,-3496,-3511,-3523,-3536,
+-3547,-3553,-3565,-3583,-3603,-3620,-3631,-3638,-3646,-3657,-3674,-3692,-3706,-3718,-3732,-3746,-3771,-3790,-3806,-3812,
+-3816,-3820,-3822,-3831,-3838,-3846,-3849,-3847,-3840,-3838,-3841,-3853,-3861,-3868,-3872,-3870,-3856,-3857,-3856,-3855,
+-3850,-3842,-3837,-3824,-3805,-3787,-3767,-3745,-3731,-3720,-3723,-3725,-3714,-3706,-3652,-3465,-3368,-3278,-3199,-3182,
+-3186,-3176,-3204,-3181,-3133,-3089,-2990,-2877,-2710,-2577,-2490,-2392,-2367,-2477,-2455,-2466,-2478,-2536,-2540,-2504,
+-2516,-2506,-2477,-2443,-2446,-2476,-2407,-2413,-2410,-2365,-2355,-2304,-2277,-2244,-2220,-2231,-2206,-2128,-2072,-2008,
+-1937,-1896,-1840,-1851,-1936,-2024,-2005,-2069,-2063,-1983,-1920,-1893,-1899,-1902,-1911,-1841,-1758,-1675,-1606,-1534,
+-1526,-1513,-1507,-1540,-1575,-1590,-1582,-1525,-1540,-1679,-1865,-1962,-2050,-2128,-2189,-2239,-2274,-2302,-2339,-2381,
+-2415,-2454,-2491,-2527,-2558,-2578,-2590,-2604,-2611,-2628,-2648,-2653,-2667,-2691,-2722,-2762,-2816,-2846,-2869,-2919,
+-2940,-2969,-3010,-3047,-3091,-3122,-3153,-3169,-3190,-3210,-3222,-3223,-3232,-3236,-3232,-3213,-3199,-3204,-3205,-3195,
+-3182,-3158,-3144,-3135,-3094,-3056,-3040,-3030,-3039,-3044,-3039,-3024,-3013,-3024,-3045,-3067,-3096,-3123,-3154,-3180,
+-3194,-3215,-3282,-3336,-3353,-3370,-3396,-3431,-3457,-3447,-3422,-3390,-3377,-3363,-3334,-3321,-3318,-3332,-3344,-3341,
+-3335,-3318,-3288,-3261,-3237,-3208,-3179,-3181,-3207,-3240,-3266,-3285,-3284,-3299,-3325,-3336,-3333,-3327,-3328,-3335,
+-3392,-3436,-3491,-3567,-3654,-3690,-3712,-3736,-3741,-3716,-3687,-3706,-3755,-3825,-3942,-4035,-4101,-4144,-4167,-4174,
+-4165,-4140,-4120,-4103,-4088,-4068,-4067,-4066,-4064,-4057,-4051,-4046,-4036,-4026,-4027,-4027,-4027,-4020,-4004,-3988,
+-3968,-3940,-3905,-3864,-3817,-3770,-3718,-3675,-3627,-3583,-3547,-3505,-3455,-3422,-3394,-3353,-3314,-3272,-3218,-3127,
+-2997,-3039,-3068,-3040,-2941,-2806,-2762,-2771,-2786,-2809,-2784,-2755,-2727,-2699,-2646,-2592,-2531,-2468,-2420,-2365,
+-2310,-2272,-2228,-2173,-2113,-2043,-1979,-1928,-1875,-1808,-1739,-1661,-1582,-1496,-1405,-1310,-1222,-1136,-1048,-974,
+-902,-830,-750,-676,-599,-525,-448,-379,-313,-230,-148,-68,5,63,130,212,297,367,440,517,
+596,657,731,804,878,956,1032,1110,1193,1270,1354,1440,1529,1629,1718,1807,1904,2002,2100,2180,
+2281,2359,2428,2500,2614,2709,2806,2898,2982,3065,3139,3224,3302,3372,3441,3514,3600,3675,3743,3815,
+3881,3941,4000,4068,4136,4223,4281,4331,4383,4452,4582,4641,4690,4775,4868,4932,4988,5055,5134,5189,
+5271,5310,5325,5352,5348,5386,5422,5450,5471,5499,5537,5551,5601,5602,5602,5594,5587,5572,5566,5587,
+5570,5539,5540,5507,5451,5485,5603,5617,5615,5559,5490,5415,5372,5345,5324,5283,5242,5201,5145,5099,
+5074,5087,5089,5064,5041,5020,4997,4961,4918,4868,4826,4798,4791,4815,4852,4895,4914,4871,4786,4717,
+4687,4690,4722,4772,4809,4818,4839,4858,4865,4876,4882,4920,4971,5032,5061,5041,4959,4839,4738,4655,
+4592,4521,4467,4434,4434,4472,4556,4689,4826,4938,5026,5115,5232,5338,5406,5442,5467,5514,5535,5539,
+5557,5578,5584,5570,5550,5516,5483,5411,5321,5262,5177,5129,5095,5075,5056,5070,5085,5156,5282,5306,
+5257,5184,5152,5099,5067,5063,5041,5013,4957,4905,4878,4795,4724,4666,4647,4628,4603,4579,4558,4542,
+4517,4492,4473,4465,4442,4412,4383,4348,4309,4282,4279,4281,4275,4250,4208,4173,4164,4160,4152,4139,
+4130,4136,4139,4137,4172,4240,4339,4340,4331,4319,4318,4317,4325,4323,4313,4304,4296,4336,4328,4317,
+4321,4330,4331,4329,4285,4230,4211,4235,4273,4318,4361,4041,3711,3558,3468,3331,3204,3111,3062,3041,
+3013,2980,2931,2867,2790,2689,2559,2438,2345,2308,2378,2458,2478,2581,2455,2412,2499,2686,2922,3147,
+3318,3420,3565,3604,3701,3786,3877,3882,3905,3924,3949,3865,3804,3774,3754,3703,3712,3783,3733,3691,
+3625,3593,3558,3560,3566,3559,3538,3503,3525,3520,3542,3508,3552,3579,3619,3690,3632,3631,3657,3649,
+3624,3609,3569,3549,3496,3464,3436,3437,3476,3534,3531,3490,3337,3249,3225,3226,3173,3067,3083,3098,
+2999,2935,2847,2776,2723,2681,2642,2641,2657,2661,2585,2497,2434,2378,2318,2276,2228,2188,2208,2268,
+2340,2358,2417,2446,2450,2415,2315,2271,2207,2082,1999,1890,1834,1778,1776,1800,1757,1647,1586,1503,
+1443,1402,1324,1218,1172,909,496,66,-266,-523,-692,-810,-909,-993,-1063,-1112,-1157,-1187,-1213,-1238,
+-1253,-1261,-1294,-1346,-1405,-1455,-1512,-1563,-1605,-1632,-1619,-1557,-1482,-1415,-1334,-1352,-1381,-1403,-1407,-1415,
+-1436,-1483,-1549,-1690,-1989,-2210,-2431,-2587,-2692,-2768,-2833,-2887,-2937,-2993,-3048,-3100,-3151,-3203,-3256,-3310,
+-3364,-3416,-3473,-3531,-3586,-3635,-3676,-3713,-3745,-3776,-3800,-3802,-3807,-3795,-3782,-3747,-3659,-3850,-4071,-4212,
+-4303,-4333,-4299,-4342,-4408,-4530,-4549,-4552,-4541,-4421,-4153,-3937,-3608,-3393,-3279,-3098,-3019,-2937,-2919,-2904,
+-2923,-2938,-2937,-2873,-2872,-2934,-2975,-3031,-3078,-3110,-3222,-3368,-3349,-3323,-3381,-3550,-3807,-4098,-4367,-4603,
+-4748,-4847,-4926,-4994,-5060,-5121,-5176,-5223,-5249,-5260,-5272,-5272,-5268,-5276,-5270,-5263,-5263,-5261,-5264,-5274,
+-5277,-5297,-5358,-5404,-5399,-5378,-5351,-5311,-5283,-5278,-5273,-5258,-5213,-5161,-5058,-4834,-4626,-4507,-4440,-4416,
+-4391,-4440,-4407,-4408,-4467,-4519,-4585,-4672,-4738,-4785,-4832,-4839,-4934,-5088,-5242,-5349,-5456,-5605,-5722,-5817,
+-5898,-5957,-6003,-6018,-5998,-5957,-5901,-5825,-5721,-5593,-5438,-5289,-5127,-5008,-4972,-4913,-4866,-4822,-4777,-4732,
+-4690,-4643,-4591,-4577,-4564,-4539,-4490,-4449,-4407,-4378,-4377,-4350,-4325,-4312,-4312,-4298,-4267,-4317,-4362,-4437,
+-4586,-4718,-4744,-4685,-4635,-4586,-4547,-4515,-4478,-4445,-4401,-4328,-4252,-4206,-4164,-4140,-4077,-4000,-3923,-3854,
+-3801,-3715,-3621,-3532,-3447,-3355,-3271,-3195,-3127,-3067,-3000,-2917,-2816,-2707,-2534,-2340,-2143,-2060,-1999,-1972,
+-1982,-1872,-1724,-1600,-1533,-1496,-1464,-1504,-1528,-1501,-1451,-1392,-1314,-1228,-1133,-1039,-961,-869,-770,-677,
+-593,-505,-425,-335,-246,-161,-64,39,119,199,318,418,494,583,665,742,820,913,983,1040,
+1121,1190,1271,1342,1418,1497,1556,1616,1688,1771,1829,1899,1936,1996,2040,2103,2186,2254,2313,2383,
+2451,2515,2585,2676,2754,2744,2691,2626,2592,2574,2597,2622,2671,2703,2748,2775,2798,2805,2818,2842,
+2880,2909,2954,3012,3095,3143,3122,3066,3041,3053,3085,3112,3146,3198,3300,3452,3558,3627,3666,3678,
+3651,3579,3589,3745,3763,3827,3856,3984,4102,4169,4233,4272,4209,4245,4156,4025,3851,3684,3481,3215,
+2896,2594,2329,2061,1817,1678,1711,1840,1964,2066,2144,2197,2232,2254,2269,2206,2165,2127,2085,2032,
+1983,1938,1888,1829,1768,1701,1625,1547,1464,1389,1324,1280,1248,1208,1173,1138,1097,1055,1011,970,
+931,885,833,779,728,681,636,584,536,490,445,403,360,313,264,215,168,128,102,76,
+48,20,-7,-38,-70,-102,-134,-169,-211,-247,-260,-279,-298,-326,-337,-344,-370,-385,-399,-414,
+-419,-447,-498,-564,-596,-634,-705,-740,-784,-830,-842,-857,-889,-898,-906,-901,-931,-948,-962,-976,
+-991,-1017,-1047,-1074,-1114,-1156,-1196,-1229,-1222,-1162,-1052,-831,-721,-811,-791,-928,-1218,-1357,-1395,-1388,
+-1358,-1314,-1272,-1234,-1207,-1182,-1161,-1147,-1135,-1131,-1100,-1100,-1097,-1086,-1076,-1080,-1090,-1111,-1128,-1138,
+-1160,-1180,-1199,-1213,-1226,-1230,-1231,-1236,-1242,-1232,-1233,-1229,-1220,-1217,-1224,-1236,-1257,-1262,-1275,-1288,
+-1296,-1284,-1258,-1300,-1378,-1259,-1228,-1245,-1242,-1258,-1241,-1262,-1265,-1254,-1258,-1270,-1268,-1272,-1286,-1322,
+-1305,-1279,-1263,-1234,-1237,-1230,-1227,-1226,-1256,-1260,-1238,-1232,-1240,-1245,-1246,-1242,-1241,-1240,-1239,-1236,
+-1238,-1235,-1236,-1236,-1236,-1240,-1228,-1215,-1210,-1204,-1204,-1210,-1221,-1230,-1244,-1250,-1253,-1259,-1276,-1301,
+-1319,-1328,-1348,-1366,-1372,-1373,-1380,-1385,-1397,-1410,-1419,-1443,-1467,-1474,-1476,-1491,-1514,-1549,-1568,-1579,
+-1576,-1573,-1583,-1590,-1611,-1640,-1672,-1705,-1725,-1736,-1746,-1744,-1741,-1751,-1786,-1833,-1870,-1896,-1924,-1950,
+-1966,-1974,-1987,-2005,-2034,-2065,-2095,-2109,-2128,-2159,-2196,-2223,-2234,-2232,-2235,-2243,-2273,-2311,-2350,-2379,
+-2406,-2438,-2476,-2514,-2582,-2630,-2648,-2653,-2663,-2680,-2710,-2752,-2801,-2841,-2877,-2916,-2947,-2975,-3008,-3038,
+-3067,-3093,-3126,-3154,-3189,-3221,-3252,-3275,-3296,-3313,-3337,-3370,-3400,-3431,-3462,-3480,-3489,-3503,-3515,-3529,
+-3544,-3559,-3566,-3575,-3590,-3613,-3630,-3640,-3648,-3655,-3665,-3680,-3697,-3712,-3725,-3739,-3758,-3785,-3814,-3831,
+-3840,-3840,-3842,-3844,-3853,-3853,-3859,-3868,-3873,-3872,-3869,-3869,-3879,-3885,-3890,-3895,-3896,-3895,-3892,-3887,
+-3883,-3876,-3875,-3869,-3861,-3846,-3832,-3815,-3799,-3785,-3766,-3742,-3734,-3706,-3695,-3684,-3604,-3444,-3350,-3309,
+-3238,-3214,-3197,-3176,-3190,-3191,-3157,-3092,-2987,-2854,-2741,-2601,-2485,-2394,-2449,-2476,-2487,-2474,-2555,-2534,
+-2572,-2540,-2547,-2531,-2523,-2492,-2502,-2509,-2441,-2448,-2424,-2412,-2376,-2333,-2312,-2308,-2276,-2208,-2119,-2019,
+-2030,-2000,-1975,-1990,-2042,-2096,-2122,-2152,-2158,-2081,-1964,-1901,-1914,-1967,-1948,-1921,-1844,-1749,-1669,-1608,
+-1545,-1547,-1559,-1573,-1604,-1656,-1666,-1689,-1590,-1637,-1724,-1844,-1925,-2032,-2112,-2158,-2199,-2240,-2265,-2306,
+-2366,-2416,-2464,-2514,-2565,-2595,-2616,-2633,-2635,-2642,-2655,-2671,-2684,-2713,-2739,-2772,-2813,-2855,-2866,-2895,
+-2925,-2935,-2963,-2995,-3052,-3091,-3125,-3140,-3152,-3165,-3175,-3180,-3182,-3176,-3168,-3162,-3141,-3118,-3110,-3114,
+-3128,-3134,-3128,-3107,-3088,-3069,-3035,-3014,-2995,-2994,-2981,-2980,-2985,-2984,-2982,-3001,-3024,-3053,-3084,-3105,
+-3130,-3149,-3169,-3208,-3258,-3294,-3337,-3386,-3427,-3438,-3413,-3374,-3321,-3307,-3314,-3299,-3304,-3303,-3313,-3323,
+-3293,-3270,-3244,-3225,-3206,-3190,-3193,-3211,-3232,-3247,-3289,-3311,-3317,-3293,-3298,-3291,-3293,-3300,-3306,-3316,
+-3364,-3414,-3467,-3535,-3606,-3685,-3719,-3741,-3767,-3767,-3728,-3702,-3728,-3797,-3930,-4040,-4111,-4153,-4178,-4183,
+-4181,-4178,-4162,-4148,-4142,-4147,-4144,-4142,-4144,-4141,-4132,-4130,-4114,-4102,-4093,-4093,-4090,-4087,-4074,-4054,
+-4034,-4011,-3982,-3946,-3907,-3858,-3807,-3753,-3703,-3656,-3611,-3568,-3524,-3477,-3441,-3404,-3381,-3354,-3315,-3274,
+-3228,-3176,-3136,-3118,-3088,-3030,-2973,-2928,-2889,-2844,-2796,-2764,-2775,-2747,-2710,-2663,-2611,-2550,-2487,-2424,
+-2379,-2328,-2284,-2233,-2189,-2137,-2081,-2020,-1968,-1910,-1851,-1777,-1699,-1619,-1535,-1444,-1345,-1254,-1167,-1088,
+-1011,-936,-867,-794,-722,-636,-563,-488,-416,-348,-272,-196,-122,-44,34,93,165,249,329,398,
+473,551,619,690,765,842,926,1008,1085,1177,1261,1348,1435,1521,1604,1695,1775,1864,1954,2056,
+2143,2230,2318,2401,2493,2615,2717,2778,2855,2937,3015,3080,3158,3241,3325,3416,3487,3566,3631,3709,
+3775,3837,3907,3989,4043,4121,4190,4273,4362,4425,4490,4597,4665,4732,4780,4842,4910,4994,5065,5124,
+5146,5235,5277,5293,5322,5361,5383,5403,5402,5432,5466,5482,5500,5528,5572,5519,5482,5461,5472,5492,
+5485,5473,5467,5474,5495,5521,5554,5695,5731,5708,5545,5457,5403,5346,5303,5279,5221,5160,5092,5031,
+5003,5003,5026,5037,5031,5010,5004,4984,4957,4916,4869,4799,4749,4756,4786,4832,4887,4907,4879,4812,
+4749,4724,4730,4755,4784,4811,4824,4842,4855,4872,4905,4948,4987,5032,5042,5005,4956,4885,4785,4684,
+4606,4534,4474,4434,4424,4431,4480,4598,4788,4930,5001,5052,5144,5240,5326,5385,5431,5464,5482,5498,
+5508,5512,5507,5487,5461,5425,5402,5307,5205,5111,5045,4984,4949,4938,4980,5011,5050,5031,5058,5086,
+5145,5197,5188,5144,5108,5084,5045,5006,4976,4932,4878,4760,4709,4665,4650,4630,4603,4582,4562,4541,
+4510,4478,4450,4428,4410,4382,4346,4314,4281,4247,4221,4209,4218,4221,4212,4182,4145,4126,4124,4117,
+4105,4099,4100,4111,4125,4191,4307,4335,4316,4309,4304,4309,4305,4294,4283,4277,4291,4282,4306,4291,
+4279,4264,4243,4218,4153,4071,3998,3983,4041,4147,4231,4202,3945,3592,3381,3261,3161,3074,3024,2999,
+2994,2978,2959,2921,2864,2799,2722,2618,2512,2429,2380,2388,2371,2323,2346,2357,2326,2427,2642,2836,
+3045,3200,3292,3420,3574,3648,3711,3772,3832,3858,3862,3896,3883,3820,3769,3779,3741,3724,3684,3653,
+3604,3578,3549,3480,3480,3458,3432,3463,3453,3422,3431,3393,3424,3395,3350,3438,3507,3555,3581,3590,
+3581,3537,3524,3502,3488,3465,3455,3452,3492,3515,3431,3314,3192,3105,3058,3025,3005,3027,2992,2942,
+2925,2871,2801,2722,2669,2646,2627,2595,2576,2575,2571,2525,2496,2465,2412,2362,2301,2244,2165,2124,
+2108,2160,2221,2282,2307,2259,2248,2242,2178,2143,2071,1967,1887,1822,1775,1767,1748,1682,1587,1523,
+1476,1383,1282,1236,1170,1182,1017,648,256,-21,-194,-315,-453,-601,-731,-830,-904,-974,-1035,-1093,
+-1143,-1174,-1201,-1216,-1247,-1296,-1340,-1390,-1430,-1460,-1473,-1448,-1398,-1343,-1229,-1147,-1163,-1181,-1263,-1274,
+-1312,-1366,-1410,-1475,-1495,-1635,-1871,-2150,-2371,-2531,-2642,-2732,-2808,-2874,-2930,-2991,-3048,-3097,-3147,-3202,
+-3262,-3318,-3375,-3432,-3494,-3556,-3612,-3656,-3698,-3737,-3771,-3803,-3823,-3832,-3834,-3843,-3871,-3922,-4069,-4212,
+-4304,-4352,-4376,-4397,-4458,-4551,-4625,-4642,-4624,-4631,-4497,-4222,-3939,-3666,-3441,-3261,-3069,-3079,-2985,-2892,
+-2912,-2937,-2921,-2904,-2856,-2828,-2868,-2943,-3005,-3072,-3148,-3201,-3277,-3304,-3241,-3237,-3317,-3455,-3739,-4005,
+-4218,-4364,-4475,-4584,-4709,-4828,-4929,-5016,-5100,-5162,-5204,-5233,-5244,-5248,-5246,-5232,-5209,-5191,-5178,-5164,
+-5177,-5216,-5254,-5307,-5302,-5251,-5212,-5167,-5110,-5063,-5020,-4974,-4921,-4849,-4753,-4576,-4429,-4391,-4423,-4436,
+-4489,-4493,-4464,-4412,-4410,-4478,-4566,-4684,-4763,-4792,-4788,-4768,-4747,-4791,-4858,-4934,-5033,-5147,-5319,-5493,
+-5633,-5760,-5849,-5911,-5949,-5954,-5933,-5897,-5838,-5749,-5646,-5519,-5397,-5286,-5172,-5083,-5010,-5007,-5011,-4956,
+-4876,-4816,-4768,-4677,-4628,-4604,-4575,-4538,-4510,-4470,-4432,-4425,-4386,-4333,-4281,-4255,-4269,-4239,-4190,-4164,
+-4202,-4331,-4461,-4504,-4484,-4493,-4458,-4462,-4442,-4411,-4384,-4368,-4307,-4243,-4205,-4132,-4058,-3997,-3950,-3883,
+-3819,-3747,-3649,-3556,-3470,-3376,-3289,-3220,-3157,-3114,-3056,-2998,-2929,-2824,-2713,-2529,-2353,-2184,-2112,-2122,
+-2118,-2040,-1878,-1676,-1537,-1453,-1434,-1418,-1504,-1527,-1507,-1461,-1389,-1308,-1218,-1115,-1038,-955,-857,-772,
+-684,-599,-497,-405,-325,-238,-141,-43,52,171,252,342,437,543,623,704,785,858,918,984,
+1054,1141,1220,1282,1352,1430,1508,1573,1635,1705,1792,1843,1905,1950,1997,2032,2092,2176,2257,2315,
+2393,2455,2512,2578,2703,2791,2822,2814,2738,2702,2654,2626,2647,2702,2768,2792,2775,2804,2833,2865,
+2916,2950,3021,3062,3076,3085,3111,3096,3068,3072,3092,3114,3139,3173,3251,3370,3535,3610,3665,3702,
+3712,3676,3627,3644,3720,3803,3883,3978,4136,4172,4161,4222,4261,4262,4268,4120,3930,3745,3582,3360,
+3068,2734,2395,2113,1879,1684,1639,1745,1888,1998,2084,2149,2196,2223,2233,2226,2189,2146,2109,2065,
+2019,1977,1934,1882,1822,1759,1689,1610,1532,1457,1384,1322,1278,1232,1196,1159,1127,1093,1049,1003,
+960,912,865,818,767,718,675,629,579,526,479,438,393,345,299,250,206,162,128,101,
+84,65,45,26,1,-28,-61,-97,-135,-179,-211,-234,-262,-292,-313,-341,-359,-379,-404,-416,
+-420,-453,-478,-513,-561,-600,-653,-697,-729,-784,-813,-842,-871,-858,-855,-874,-893,-915,-941,-957,
+-975,-988,-1007,-1034,-1060,-1093,-1134,-1173,-1219,-1236,-1228,-1206,-1171,-1132,-1114,-1098,-1119,-1259,-1351,-1382,
+-1378,-1349,-1308,-1269,-1232,-1200,-1174,-1153,-1138,-1129,-1098,-1101,-1088,-1082,-1067,-1069,-1064,-1067,-1087,-1103,
+-1111,-1140,-1149,-1170,-1189,-1203,-1211,-1218,-1224,-1233,-1223,-1225,-1222,-1210,-1210,-1213,-1222,-1228,-1239,-1251,
+-1258,-1290,-1288,-1279,-1296,-1340,-1301,-1214,-1218,-1227,-1228,-1213,-1254,-1275,-1294,-1296,-1314,-1302,-1284,-1313,
+-1295,-1276,-1280,-1265,-1258,-1260,-1253,-1267,-1295,-1278,-1257,-1257,-1255,-1258,-1266,-1273,-1269,-1258,-1255,-1254,
+-1249,-1248,-1248,-1247,-1253,-1251,-1246,-1231,-1227,-1215,-1206,-1200,-1212,-1229,-1234,-1240,-1252,-1272,-1297,-1313,
+-1340,-1369,-1388,-1397,-1401,-1387,-1385,-1404,-1434,-1458,-1470,-1478,-1492,-1505,-1503,-1502,-1512,-1528,-1544,-1555,
+-1564,-1575,-1586,-1602,-1624,-1647,-1668,-1694,-1720,-1733,-1744,-1744,-1748,-1769,-1791,-1827,-1862,-1901,-1939,-1962,
+-1973,-1982,-1981,-1987,-2004,-2030,-2060,-2081,-2100,-2126,-2166,-2204,-2228,-2232,-2232,-2240,-2255,-2283,-2320,-2359,
+-2395,-2433,-2474,-2512,-2519,-2597,-2638,-2653,-2663,-2675,-2697,-2718,-2749,-2789,-2830,-2870,-2906,-2940,-2970,-3006,
+-3041,-3073,-3098,-3123,-3150,-3186,-3219,-3250,-3278,-3303,-3328,-3359,-3393,-3424,-3446,-3463,-3482,-3501,-3515,-3531,
+-3549,-3566,-3581,-3593,-3601,-3617,-3636,-3652,-3665,-3672,-3677,-3690,-3696,-3708,-3724,-3739,-3759,-3784,-3813,-3838,
+-3855,-3860,-3864,-3861,-3868,-3872,-3878,-3873,-3886,-3898,-3903,-3900,-3899,-3907,-3912,-3911,-3918,-3922,-3923,-3925,
+-3915,-3906,-3903,-3903,-3905,-3899,-3885,-3875,-3854,-3840,-3826,-3811,-3792,-3772,-3728,-3709,-3691,-3632,-3564,-3447,
+-3360,-3275,-3225,-3225,-3138,-3099,-3190,-3208,-3151,-3088,-3009,-2894,-2769,-2609,-2559,-2453,-2432,-2570,-2486,-2559,
+-2581,-2572,-2604,-2601,-2584,-2592,-2560,-2531,-2513,-2522,-2520,-2488,-2444,-2438,-2409,-2370,-2334,-2272,-2217,-2104,
+-2061,-2075,-2076,-2093,-2117,-2145,-2192,-2220,-2252,-2213,-2119,-2028,-2014,-2054,-2054,-2025,-1985,-1919,-1814,-1736,
+-1704,-1645,-1629,-1615,-1607,-1586,-1652,-1707,-1716,-1652,-1627,-1737,-1852,-1948,-2016,-2068,-2099,-2148,-2192,-2254,
+-2316,-2376,-2421,-2471,-2537,-2591,-2621,-2652,-2669,-2679,-2694,-2700,-2714,-2734,-2760,-2791,-2822,-2856,-2877,-2891,
+-2914,-2922,-2929,-2960,-2996,-3038,-3076,-3097,-3110,-3115,-3124,-3126,-3137,-3142,-3127,-3114,-3105,-3082,-3055,-3027,
+-3022,-3048,-3076,-3090,-3079,-3079,-3067,-3045,-3014,-2981,-2955,-2939,-2921,-2918,-2928,-2935,-2960,-2983,-3015,-3048,
+-3080,-3109,-3126,-3147,-3179,-3214,-3246,-3299,-3333,-3357,-3368,-3335,-3286,-3234,-3210,-3234,-3252,-3269,-3261,-3267,
+-3279,-3250,-3231,-3221,-3211,-3198,-3179,-3200,-3229,-3231,-3264,-3314,-3337,-3314,-3304,-3268,-3237,-3238,-3261,-3284,
+-3333,-3398,-3434,-3517,-3573,-3627,-3702,-3747,-3775,-3806,-3806,-3760,-3740,-3777,-3897,-4015,-4104,-4165,-4198,-4208,
+-4206,-4202,-4206,-4195,-4181,-4184,-4190,-4204,-4207,-4206,-4199,-4194,-4186,-4175,-4165,-4159,-4156,-4149,-4141,-4126,
+-4098,-4073,-4045,-4011,-3970,-3932,-3889,-3841,-3788,-3735,-3691,-3644,-3594,-3550,-3504,-3465,-3428,-3399,-3374,-3336,
+-3293,-3260,-3229,-3196,-3153,-3113,-3071,-3035,-2988,-2935,-2854,-2697,-2649,-2774,-2779,-2735,-2682,-2620,-2575,-2521,
+-2448,-2394,-2339,-2309,-2261,-2214,-2165,-2117,-2063,-2010,-1956,-1892,-1816,-1743,-1662,-1575,-1487,-1395,-1303,-1213,
+-1134,-1053,-985,-915,-841,-763,-682,-604,-527,-458,-380,-308,-233,-169,-98,-26,49,122,194,276,
+351,434,502,587,661,739,814,897,972,1046,1123,1201,1293,1382,1478,1568,1660,1756,1853,1946,
+2045,2146,2252,2342,2426,2510,2633,2726,2780,2883,2949,2993,3052,3121,3198,3297,3395,3469,3549,3611,
+3681,3742,3810,3876,3950,4017,4096,4178,4267,4345,4429,4493,4562,4637,4728,4770,4848,4947,5017,5082,
+5123,5122,5094,5169,5199,5235,5250,5295,5323,5329,5330,5335,5364,5386,5381,5412,5407,5394,5386,5378,
+5402,5428,5434,5419,5408,5413,5385,5427,5553,5500,5471,5417,5356,5398,5329,5253,5212,5142,5069,5003,
+4946,4936,4968,4997,5023,5023,5016,5025,4978,4922,4857,4793,4712,4654,4677,4751,4814,4852,4856,4840,
+4814,4801,4802,4806,4823,4845,4840,4823,4824,4850,4899,4943,5006,5088,5149,5163,5036,4932,4851,4745,
+4645,4561,4503,4463,4438,4440,4470,4536,4654,4812,4915,4928,4950,5078,5204,5316,5396,5438,5461,5470,
+5460,5440,5432,5395,5360,5300,5232,5159,5065,4967,4897,4829,4792,4832,4882,4924,4998,5023,5022,5020,
+5057,5157,5189,5167,5110,5072,4986,4952,4924,4853,4808,4760,4670,4659,4642,4619,4598,4566,4539,4517,
+4493,4467,4437,4401,4360,4332,4314,4295,4270,4242,4218,4188,4168,4175,4176,4181,4189,4177,4168,4180,
+4176,4203,4192,4192,4218,4236,4279,4293,4296,4312,4316,4300,4292,4278,4259,4248,4257,4250,4239,4246,
+4249,4241,4222,4188,4123,4038,3964,3923,3927,4026,4187,4298,4241,4007,3591,3334,3163,3058,3001,2974,
+2956,2937,2921,2901,2876,2836,2797,2748,2670,2579,2482,2399,2356,2339,2303,2314,2336,2266,2376,2586,
+2712,2889,3079,3244,3261,3429,3538,3613,3656,3740,3838,3827,3832,3819,3814,3776,3737,3656,3625,3618,
+3566,3516,3444,3377,3363,3292,3285,3241,3286,3272,3248,3269,3275,3226,3185,3121,3168,3262,3419,3473,
+3526,3541,3533,3487,3451,3432,3445,3482,3525,3531,3371,3163,2986,2883,2875,2897,2890,2878,2949,2948,
+2893,2853,2791,2719,2666,2624,2608,2578,2525,2494,2456,2410,2360,2324,2303,2267,2250,2208,2164,2090,
+2002,1917,1919,1970,2051,2081,2065,2068,2045,2061,2021,2030,1947,1887,1804,1746,1702,1689,1644,1601,
+1531,1446,1334,1249,1219,1168,1101,1050,823,476,266,185,130,-1,-208,-425,-576,-693,-808,-900,
+-975,-1030,-1067,-1104,-1127,-1138,-1166,-1196,-1232,-1252,-1259,-1257,-1242,-1221,-1144,-1049,-1058,-1076,-1124,-1166,
+-1165,-1210,-1223,-1265,-1389,-1480,-1523,-1630,-1841,-2069,-2261,-2432,-2576,-2688,-2778,-2850,-2914,-2978,-3035,-3087,
+-3143,-3204,-3261,-3311,-3359,-3415,-3480,-3545,-3601,-3652,-3700,-3745,-3782,-3814,-3845,-3867,-3900,-3959,-4039,-4147,
+-4276,-4404,-4380,-4399,-4439,-4506,-4642,-4746,-4808,-4713,-4596,-4372,-4116,-3936,-3732,-3467,-3252,-3069,-3047,-2965,
+-2949,-2954,-2939,-2941,-2903,-2835,-2842,-2890,-2990,-3083,-3174,-3212,-3209,-3240,-3248,-3214,-3224,-3122,-3133,-3362,
+-3527,-3676,-3808,-3929,-4076,-4209,-4372,-4528,-4649,-4785,-4908,-4988,-5051,-5104,-5129,-5129,-5119,-5095,-5075,-5073,
+-5075,-5092,-5146,-5193,-5197,-5143,-5070,-5009,-4947,-4870,-4772,-4650,-4561,-4479,-4341,-4209,-4156,-4240,-4308,-4386,
+-4415,-4408,-4371,-4367,-4399,-4436,-4490,-4561,-4665,-4746,-4778,-4794,-4792,-4789,-4771,-4766,-4759,-4801,-4889,-5054,
+-5243,-5413,-5564,-5679,-5758,-5812,-5835,-5843,-5835,-5814,-5771,-5714,-5634,-5544,-5439,-5314,-5204,-5158,-5162,-5214,
+-5200,-5134,-5023,-4895,-4783,-4704,-4634,-4591,-4592,-4585,-4556,-4531,-4517,-4495,-4426,-4322,-4261,-4249,-4254,-4239,
+-4209,-4177,-4176,-4219,-4249,-4252,-4287,-4332,-4386,-4385,-4346,-4287,-4236,-4174,-4128,-4122,-4041,-3940,-3890,-3862,
+-3817,-3768,-3681,-3583,-3492,-3400,-3304,-3226,-3187,-3132,-3084,-3040,-2981,-2913,-2840,-2709,-2509,-2322,-2249,-2245,
+-2205,-2099,-1928,-1773,-1653,-1521,-1424,-1402,-1482,-1531,-1551,-1526,-1470,-1390,-1305,-1204,-1091,-1020,-949,-863,
+-785,-694,-602,-502,-407,-319,-227,-124,-16,93,195,284,377,473,569,658,749,807,864,928,
+981,1066,1152,1232,1302,1365,1453,1507,1587,1644,1717,1792,1853,1907,1964,2017,2062,2106,2187,2266,
+2333,2402,2439,2505,2623,2697,2775,2859,2891,2850,2783,2734,2658,2643,2664,2708,2751,2781,2811,2899,
+2956,2979,3025,3080,3116,3130,3133,3129,3114,3099,3116,3187,3251,3277,3296,3332,3421,3558,3636,3710,
+3733,3679,3648,3668,3739,3836,3934,3982,4116,4244,4265,4294,4304,4269,4289,4244,4037,3800,3613,3427,
+3136,2821,2505,2142,1879,1691,1582,1650,1798,1945,2067,2145,2179,2227,2242,2234,2220,2189,2149,2109,
+2066,2021,1977,1931,1878,1816,1751,1679,1603,1531,1466,1405,1346,1296,1245,1200,1161,1119,1083,1040,
+993,945,895,848,802,756,707,663,621,575,524,475,426,381,338,289,242,202,166,138,
+119,106,89,85,71,40,17,-17,-57,-104,-150,-191,-220,-254,-289,-317,-340,-360,-393,-422,
+-440,-450,-478,-498,-523,-563,-622,-661,-696,-739,-787,-804,-802,-836,-860,-861,-872,-884,-905,-916,
+-942,-952,-971,-984,-1011,-1034,-1065,-1104,-1154,-1196,-1237,-1262,-1279,-1288,-1278,-1261,-1237,-1216,-1267,-1327,
+-1354,-1357,-1332,-1299,-1260,-1225,-1194,-1169,-1147,-1130,-1118,-1105,-1099,-1080,-1065,-1065,-1056,-1052,-1052,-1062,
+-1079,-1090,-1116,-1121,-1142,-1155,-1178,-1193,-1203,-1210,-1222,-1218,-1217,-1213,-1202,-1198,-1198,-1210,-1229,-1239,
+-1250,-1256,-1273,-1283,-1273,-1278,-1284,-1306,-1232,-1203,-1215,-1236,-1232,-1279,-1321,-1280,-1245,-1260,-1272,-1273,
+-1290,-1295,-1289,-1286,-1279,-1281,-1288,-1289,-1290,-1285,-1278,-1273,-1270,-1267,-1271,-1280,-1284,-1274,-1265,-1263,
+-1263,-1261,-1260,-1258,-1256,-1249,-1242,-1241,-1232,-1230,-1220,-1211,-1205,-1215,-1234,-1253,-1290,-1332,-1353,-1361,
+-1369,-1380,-1390,-1395,-1399,-1406,-1407,-1422,-1442,-1457,-1469,-1474,-1478,-1477,-1478,-1487,-1502,-1524,-1545,-1560,
+-1575,-1588,-1599,-1612,-1626,-1647,-1669,-1691,-1710,-1726,-1742,-1754,-1765,-1779,-1787,-1806,-1833,-1868,-1904,-1928,
+-1951,-1967,-1976,-1977,-1988,-2005,-2033,-2059,-2079,-2098,-2127,-2160,-2195,-2212,-2221,-2225,-2236,-2263,-2297,-2340,
+-2388,-2424,-2460,-2503,-2532,-2563,-2591,-2614,-2633,-2638,-2669,-2694,-2722,-2759,-2796,-2836,-2877,-2911,-2945,-2977,
+-3018,-3053,-3079,-3100,-3121,-3154,-3183,-3217,-3248,-3276,-3311,-3349,-3382,-3415,-3437,-3455,-3467,-3486,-3508,-3532,
+-3550,-3574,-3597,-3615,-3625,-3641,-3654,-3670,-3685,-3689,-3695,-3703,-3713,-3721,-3727,-3741,-3762,-3785,-3811,-3840,
+-3859,-3867,-3868,-3879,-3875,-3890,-3874,-3885,-3893,-3905,-3922,-3932,-3931,-3929,-3934,-3939,-3938,-3942,-3946,-3948,
+-3947,-3941,-3930,-3924,-3925,-3924,-3916,-3906,-3892,-3879,-3870,-3865,-3858,-3838,-3805,-3785,-3755,-3715,-3668,-3597,
+-3498,-3432,-3342,-3240,-3223,-3211,-3141,-3194,-3267,-3240,-3194,-3169,-3113,-2994,-2830,-2661,-2488,-2400,-2493,-2598,
+-2594,-2657,-2672,-2652,-2697,-2658,-2652,-2595,-2593,-2582,-2582,-2559,-2559,-2523,-2527,-2489,-2464,-2425,-2370,-2329,
+-2240,-2190,-2170,-2169,-2209,-2249,-2277,-2292,-2287,-2271,-2214,-2158,-2094,-2088,-2114,-2104,-2068,-2004,-1977,-1933,
+-1909,-1927,-1879,-1826,-1768,-1645,-1586,-1640,-1703,-1715,-1712,-1631,-1719,-1851,-1940,-1992,-2027,-2063,-2111,-2172,
+-2246,-2324,-2395,-2453,-2513,-2570,-2624,-2661,-2688,-2699,-2712,-2732,-2756,-2775,-2794,-2813,-2840,-2865,-2877,-2883,
+-2895,-2914,-2914,-2929,-2966,-2994,-3021,-3038,-3056,-3068,-3072,-3076,-3081,-3085,-3080,-3071,-3054,-3040,-3018,-2982,
+-2955,-2952,-2975,-3004,-3047,-3072,-3090,-3077,-3053,-3037,-3012,-2966,-2937,-2915,-2901,-2897,-2915,-2927,-2950,-2983,
+-3007,-3043,-3069,-3097,-3123,-3159,-3185,-3191,-3225,-3248,-3261,-3279,-3264,-3214,-3128,-3106,-3156,-3189,-3206,-3201,
+-3221,-3220,-3205,-3201,-3189,-3174,-3170,-3167,-3193,-3229,-3267,-3299,-3333,-3340,-3310,-3276,-3242,-3219,-3226,-3253,
+-3293,-3355,-3442,-3472,-3542,-3618,-3673,-3736,-3794,-3824,-3847,-3852,-3796,-3777,-3840,-3982,-4076,-4143,-4195,-4223,
+-4233,-4233,-4228,-4231,-4225,-4219,-4228,-4238,-4248,-4259,-4261,-4251,-4244,-4234,-4226,-4218,-4213,-4206,-4200,-4188,
+-4168,-4141,-4110,-4075,-4028,-3985,-3952,-3913,-3872,-3824,-3771,-3727,-3680,-3628,-3584,-3540,-3501,-3462,-3426,-3392,
+-3360,-3319,-3277,-3243,-3217,-3179,-3126,-3093,-3058,-3015,-2949,-2804,-2794,-2810,-2807,-2799,-2762,-2704,-2640,-2582,
+-2527,-2471,-2418,-2382,-2338,-2292,-2250,-2204,-2156,-2106,-2049,-1989,-1929,-1857,-1779,-1703,-1618,-1533,-1444,-1359,
+-1270,-1186,-1116,-1044,-970,-897,-815,-739,-658,-581,-504,-428,-355,-277,-210,-142,-71,-1,79,153,
+239,321,394,477,546,626,709,799,876,956,1047,1128,1213,1296,1399,1495,1591,1697,1784,1878,
+1961,2068,2156,2256,2343,2429,2503,2613,2696,2748,2834,2894,2941,3023,3115,3203,3297,3365,3436,3515,
+3604,3677,3740,3792,3865,3940,4023,4105,4215,4305,4368,4427,4491,4570,4632,4672,4755,4852,4954,5013,
+5021,5062,5080,5093,5162,5187,5232,5192,5154,5152,5154,5171,5210,5246,5286,5297,5277,5259,5259,5284,
+5352,5373,5384,5376,5371,5334,5303,5309,5328,5447,5355,5363,5379,5406,5315,5167,5096,5117,5090,5047,
+4986,4920,4899,4922,4967,4993,4984,4967,4967,4951,4900,4846,4794,4689,4653,4691,4764,4789,4763,4734,
+4707,4692,4683,4722,4753,4777,4781,4769,4758,4775,4856,4960,5052,5145,5204,5196,5171,5089,4977,4859,
+4739,4636,4563,4509,4480,4486,4525,4605,4714,4830,4892,4875,4852,4904,5050,5193,5312,5382,5395,5389,
+5411,5397,5341,5297,5245,5186,5105,5018,4921,4838,4776,4739,4726,4711,4730,4807,4853,4895,5029,5099,
+5132,5194,5207,5161,5096,5011,4887,4795,4745,4733,4712,4689,4670,4655,4637,4622,4584,4562,4526,4493,
+4468,4450,4442,4455,4447,4390,4377,4397,4434,4434,4404,4378,4330,4258,4207,4209,4292,4369,4429,4465,
+4402,4387,4395,4401,4358,4349,4332,4306,4306,4319,4323,4300,4274,4251,4240,4226,4230,4244,4209,4192,
+4183,4195,4184,4169,4128,4087,3997,3924,3902,3934,4030,4182,4300,4232,3994,3573,3308,3140,3040,2987,
+2953,2911,2875,2851,2838,2825,2815,2810,2779,2721,2624,2503,2376,2280,2239,2221,2184,2119,2096,2242,
+2445,2520,2718,2792,3014,3170,3250,3376,3470,3551,3643,3684,3764,3774,3783,3788,3706,3649,3605,3564,
+3490,3454,3382,3279,3151,3040,2949,2888,2916,2967,3040,3081,3094,3093,3021,2929,2825,2800,2907,3094,
+3242,3451,3511,3489,3451,3406,3401,3407,3426,3397,3267,3027,2818,2694,2658,2721,2804,2817,2865,2953,
+2870,2846,2809,2751,2674,2608,2586,2549,2509,2438,2408,2361,2314,2261,2208,2163,2117,2079,2034,1983,
+1940,1904,1862,1808,1815,1858,1891,1896,1864,1870,1844,1864,1915,1888,1806,1769,1706,1654,1622,1624,
+1638,1570,1486,1320,1225,1199,1192,1169,962,905,767,588,554,569,454,317,6,-270,-462,-616,
+-726,-806,-865,-912,-950,-974,-980,-987,-988,-995,-1018,-1009,-999,-983,-929,-905,-930,-1009,-1084,-1155,
+-1222,-1263,-1283,-1276,-1229,-1275,-1365,-1456,-1540,-1600,-1674,-1847,-2074,-2296,-2508,-2651,-2751,-2827,-2902,-2964,
+-3012,-3068,-3128,-3188,-3233,-3273,-3319,-3374,-3430,-3489,-3550,-3606,-3656,-3698,-3744,-3799,-3836,-3885,-3946,-4015,
+-4081,-4157,-4217,-4225,-4301,-4441,-4506,-4665,-4865,-4816,-4663,-4470,-4258,-4103,-3869,-3667,-3521,-3349,-3119,-3044,
+-2947,-2952,-2982,-2990,-2972,-2918,-2918,-2942,-2971,-3075,-3158,-3213,-3238,-3222,-3170,-3139,-3083,-3028,-2835,-2801,
+-2931,-3010,-3070,-3175,-3289,-3404,-3541,-3715,-3884,-4065,-4235,-4424,-4578,-4696,-4789,-4860,-4890,-4902,-4907,-4910,
+-4918,-4921,-4908,-4915,-4927,-4909,-4856,-4783,-4690,-4581,-4447,-4342,-4213,-4152,-4090,-4017,-3979,-4008,-4093,-4166,
+-4237,-4269,-4288,-4298,-4309,-4343,-4400,-4443,-4488,-4555,-4617,-4651,-4666,-4678,-4686,-4683,-4685,-4684,-4703,-4772,
+-4883,-5020,-5153,-5285,-5419,-5529,-5603,-5656,-5699,-5718,-5725,-5715,-5686,-5641,-5587,-5533,-5468,-5403,-5351,-5288,
+-5270,-5250,-5201,-5101,-4987,-4885,-4811,-4719,-4650,-4616,-4581,-4575,-4568,-4551,-4541,-4496,-4406,-4347,-4298,-4320,
+-4300,-4234,-4163,-4156,-4137,-4191,-4207,-4197,-4220,-4290,-4294,-4215,-4197,-4170,-4102,-4060,-4044,-3984,-3874,-3784,
+-3754,-3764,-3719,-3629,-3534,-3453,-3370,-3259,-3178,-3157,-3120,-3064,-3026,-2972,-2908,-2819,-2668,-2517,-2347,-2274,
+-2220,-2107,-1944,-1836,-1782,-1677,-1544,-1475,-1455,-1519,-1557,-1565,-1531,-1467,-1391,-1308,-1218,-1123,-1039,-959,
+-871,-781,-681,-580,-485,-388,-283,-188,-86,17,117,227,330,428,504,605,690,758,822,872,
+941,1015,1093,1182,1253,1329,1390,1447,1517,1583,1661,1728,1795,1870,1938,1979,2011,2079,2147,2220,
+2286,2346,2408,2465,2542,2620,2698,2789,2851,2905,2904,2826,2772,2681,2651,2674,2709,2747,2782,2815,
+2856,2908,2961,3035,3114,3163,3192,3211,3172,3151,3153,3211,3264,3294,3287,3324,3400,3488,3558,3636,
+3714,3750,3667,3744,3907,4007,4015,4093,4157,4285,4357,4348,4334,4270,4294,4294,4154,3888,3643,3451,
+3212,2857,2502,2187,1896,1691,1555,1572,1708,1872,2023,2160,2289,2284,2249,2255,2250,2240,2209,2165,
+2125,2079,2029,1981,1930,1873,1811,1743,1674,1601,1533,1480,1434,1383,1334,1283,1228,1180,1134,1092,
+1050,1006,952,899,850,802,753,703,655,612,569,525,480,431,381,335,290,250,214,180,
+157,142,128,128,132,118,97,65,26,-20,-70,-122,-163,-203,-240,-282,-320,-354,-374,-393,
+-426,-459,-479,-479,-510,-554,-594,-644,-655,-716,-724,-784,-795,-811,-826,-821,-842,-873,-875,-879,
+-922,-927,-931,-946,-956,-977,-1002,-1039,-1075,-1114,-1156,-1209,-1250,-1285,-1309,-1312,-1290,-1228,-1115,-1124,
+-1236,-1301,-1321,-1310,-1285,-1252,-1219,-1188,-1163,-1145,-1128,-1116,-1112,-1105,-1058,-1050,-1062,-1042,-1050,-1047,
+-1050,-1060,-1074,-1092,-1091,-1113,-1121,-1144,-1167,-1187,-1193,-1208,-1204,-1206,-1203,-1188,-1184,-1185,-1191,-1206,
+-1220,-1227,-1241,-1259,-1272,-1269,-1262,-1237,-1263,-1267,-1228,-1230,-1233,-1251,-1321,-1304,-1264,-1277,-1290,-1305,
+-1293,-1294,-1294,-1291,-1280,-1292,-1300,-1295,-1299,-1289,-1283,-1281,-1278,-1274,-1277,-1285,-1289,-1285,-1274,-1268,
+-1270,-1273,-1269,-1270,-1273,-1274,-1263,-1260,-1271,-1272,-1270,-1274,-1270,-1282,-1303,-1307,-1304,-1305,-1315,-1320,
+-1331,-1339,-1352,-1369,-1387,-1404,-1423,-1439,-1451,-1462,-1467,-1471,-1475,-1483,-1489,-1494,-1502,-1512,-1524,-1539,
+-1550,-1563,-1573,-1584,-1591,-1604,-1624,-1644,-1666,-1684,-1707,-1730,-1748,-1756,-1763,-1780,-1802,-1830,-1859,-1895,
+-1919,-1937,-1968,-1984,-1992,-2000,-2014,-2038,-2060,-2077,-2095,-2126,-2163,-2193,-2208,-2219,-2239,-2252,-2272,-2302,
+-2346,-2388,-2430,-2472,-2505,-2528,-2555,-2573,-2597,-2614,-2631,-2652,-2687,-2721,-2765,-2807,-2853,-2893,-2933,-2964,
+-2995,-3029,-3058,-3085,-3106,-3127,-3153,-3180,-3212,-3246,-3277,-3317,-3361,-3390,-3416,-3433,-3442,-3454,-3472,-3498,
+-3530,-3563,-3595,-3618,-3640,-3656,-3673,-3688,-3700,-3706,-3706,-3710,-3720,-3732,-3740,-3749,-3764,-3786,-3809,-3834,
+-3857,-3877,-3879,-3874,-3878,-3872,-3878,-3886,-3897,-3913,-3921,-3935,-3950,-3954,-3956,-3961,-3960,-3961,-3963,-3964,
+-3965,-3961,-3959,-3952,-3945,-3943,-3935,-3929,-3926,-3914,-3905,-3899,-3895,-3889,-3865,-3840,-3811,-3777,-3763,-3745,
+-3713,-3649,-3555,-3472,-3383,-3293,-3258,-3246,-3214,-3269,-3316,-3281,-3248,-3223,-3128,-2996,-2822,-2615,-2479,-2438,
+-2610,-2612,-2703,-2731,-2728,-2719,-2729,-2703,-2656,-2655,-2612,-2605,-2620,-2612,-2582,-2532,-2564,-2580,-2480,-2449,
+-2348,-2283,-2241,-2226,-2233,-2266,-2324,-2363,-2366,-2291,-2193,-2153,-2120,-2123,-2117,-2096,-2082,-2101,-2080,-2063,
+-2050,-2052,-2044,-2016,-1949,-1853,-1740,-1648,-1653,-1688,-1722,-1713,-1660,-1751,-1839,-1866,-1901,-1962,-2031,-2109,
+-2193,-2273,-2354,-2421,-2480,-2537,-2590,-2651,-2697,-2728,-2746,-2758,-2775,-2797,-2822,-2848,-2856,-2874,-2886,-2892,
+-2881,-2872,-2891,-2909,-2939,-2966,-2975,-2979,-2982,-3010,-3024,-3031,-3027,-3030,-3022,-3008,-3001,-2977,-2978,-2972,
+-2959,-2937,-2932,-2945,-2973,-3000,-3030,-3049,-3054,-3048,-3032,-3018,-2983,-2935,-2899,-2903,-2898,-2900,-2919,-2935,
+-2959,-2990,-3012,-3039,-3062,-3068,-3099,-3128,-3141,-3167,-3186,-3197,-3210,-3199,-3133,-3058,-3057,-3107,-3141,-3159,
+-3168,-3173,-3160,-3165,-3177,-3165,-3151,-3160,-3177,-3219,-3261,-3277,-3278,-3319,-3326,-3309,-3276,-3249,-3229,-3224,
+-3266,-3334,-3392,-3477,-3513,-3577,-3646,-3731,-3792,-3842,-3881,-3891,-3876,-3806,-3800,-3913,-4044,-4121,-4178,-4220,
+-4250,-4266,-4270,-4265,-4267,-4265,-4270,-4279,-4283,-4287,-4295,-4290,-4288,-4285,-4272,-4265,-4259,-4256,-4249,-4239,
+-4222,-4197,-4168,-4134,-4090,-4045,-4005,-3970,-3935,-3896,-3846,-3795,-3755,-3713,-3664,-3622,-3578,-3532,-3498,-3462,
+-3420,-3390,-3350,-3308,-3264,-3224,-3192,-3153,-3115,-3082,-3048,-2994,-2887,-2891,-2883,-2835,-2797,-2729,-2663,-2636,
+-2592,-2555,-2505,-2456,-2418,-2384,-2332,-2291,-2239,-2183,-2134,-2088,-2028,-1953,-1882,-1819,-1742,-1661,-1572,-1486,
+-1407,-1327,-1251,-1181,-1111,-1037,-961,-883,-804,-709,-635,-552,-471,-394,-323,-249,-166,-99,-28,40,
+114,201,275,356,447,534,597,687,775,850,935,1013,1099,1197,1292,1391,1483,1565,1661,1762,
+1848,1939,2030,2104,2197,2279,2360,2461,2573,2640,2715,2807,2881,2947,3037,3118,3190,3263,3334,3407,
+3479,3561,3635,3710,3807,3856,3932,4012,4086,4178,4260,4336,4415,4494,4577,4630,4675,4761,4825,4861,
+4886,4912,4961,4997,5031,5083,5108,5101,5067,5060,5062,5058,5054,5051,5087,5119,5178,5183,5180,5185,
+5186,5172,5237,5325,5318,5291,5287,5263,5240,5244,5258,5297,5414,5402,5222,5045,4916,4912,4926,4946,
+4926,4870,4818,4799,4820,4854,4881,4874,4846,4836,4810,4784,4761,4726,4636,4586,4577,4596,4589,4593,
+4569,4567,4573,4595,4631,4680,4717,4719,4692,4713,4744,4838,4948,5047,5163,5239,5276,5266,5182,5041,
+4916,4773,4669,4603,4574,4575,4622,4729,4923,5140,5137,5012,4912,4924,4968,5040,5115,5246,5261,5238,
+5221,5216,5199,5165,5119,5062,4989,4900,4812,4746,4719,4728,4729,4721,4720,4777,4861,4914,4972,5084,
+5185,5158,5163,5089,5104,5034,4907,4788,4714,4697,4697,4687,4674,4655,4630,4605,4585,4559,4544,4516,
+4496,4497,4523,4560,4615,4643,4649,4606,4630,4637,4647,4637,4639,4581,4502,4410,4444,4539,4560,4525,
+4511,4475,4445,4427,4405,4380,4361,4347,4338,4351,4321,4288,4270,4237,4219,4204,4192,4196,4161,4141,
+4140,4136,4140,4072,4065,4053,4024,3968,3934,3882,3873,3947,4075,4136,4086,3907,3528,3280,3127,3042,
+3004,2958,2903,2854,2820,2807,2807,2827,2835,2805,2744,2628,2479,2335,2198,2089,2001,1910,1811,1778,
+1842,2126,2221,2326,2484,2633,2919,3024,3210,3346,3453,3551,3624,3639,3668,3688,3652,3616,3541,3507,
+3428,3367,3280,3156,3045,2899,2750,2573,2460,2475,2565,2685,2827,2877,2874,2856,2706,2552,2522,2576,
+2708,2909,3105,3286,3381,3357,3328,3159,3172,3182,3109,2927,2679,2545,2501,2536,2643,2712,2719,2811,
+2841,2820,2766,2728,2671,2608,2552,2519,2492,2431,2375,2331,2286,2241,2181,2134,2100,2057,2014,1961,
+1911,1862,1823,1788,1747,1711,1710,1704,1666,1652,1638,1624,1670,1760,1802,1720,1747,1679,1631,1599,
+1563,1630,1590,1549,1439,1317,1274,1169,1157,1088,876,749,734,788,849,827,766,442,182,-55,
+-265,-420,-540,-636,-699,-749,-775,-782,-776,-723,-686,-670,-633,-610,-635,-728,-840,-943,-1023,-1081,
+-1131,-1175,-1210,-1266,-1301,-1312,-1314,-1337,-1385,-1453,-1578,-1641,-1689,-1800,-2042,-2275,-2486,-2625,-2723,-2808,
+-2884,-2938,-2987,-3040,-3097,-3135,-3167,-3202,-3246,-3290,-3342,-3397,-3463,-3527,-3597,-3631,-3652,-3703,-3721,-3772,
+-3832,-3875,-3947,-3979,-4025,-4106,-4236,-4344,-4420,-4569,-4543,-4409,-4276,-4070,-3868,-3689,-3462,-3375,-3305,-3111,
+-3107,-3054,-3016,-2976,-2974,-2928,-2905,-2924,-2949,-2965,-3137,-3226,-3261,-3273,-3237,-3133,-3015,-2898,-2824,-2635,
+-2477,-2490,-2555,-2614,-2690,-2755,-2804,-2931,-3068,-3258,-3493,-3716,-3883,-4033,-4171,-4260,-4396,-4503,-4592,-4636,
+-4657,-4660,-4618,-4547,-4498,-4484,-4451,-4397,-4318,-4212,-4064,-3968,-3944,-3920,-3943,-3932,-3909,-3920,-3945,-3989,
+-4040,-4074,-4104,-4132,-4145,-4178,-4221,-4271,-4304,-4358,-4398,-4433,-4468,-4484,-4496,-4514,-4541,-4554,-4565,-4587,
+-4665,-4764,-4832,-4891,-4977,-5091,-5177,-5267,-5372,-5483,-5544,-5574,-5587,-5582,-5554,-5524,-5492,-5459,-5426,-5391,
+-5344,-5291,-5256,-5212,-5139,-5053,-4934,-4814,-4719,-4666,-4686,-4662,-4581,-4527,-4536,-4526,-4509,-4456,-4375,-4356,
+-4384,-4375,-4308,-4181,-4140,-4183,-4207,-4253,-4242,-4219,-4221,-4230,-4231,-4202,-4088,-4012,-3987,-3968,-3923,-3832,
+-3706,-3670,-3694,-3660,-3583,-3498,-3403,-3332,-3261,-3192,-3148,-3109,-3054,-3003,-2948,-2897,-2806,-2655,-2519,-2364,
+-2295,-2208,-1991,-1912,-1841,-1798,-1708,-1591,-1575,-1543,-1559,-1582,-1583,-1544,-1477,-1396,-1310,-1222,-1134,-1041,
+-941,-842,-742,-635,-529,-418,-335,-224,-141,-49,53,161,269,356,443,538,629,709,772,830,
+892,967,1075,1135,1208,1272,1341,1396,1448,1511,1585,1659,1729,1808,1887,1950,1990,2035,2088,2166,
+2239,2300,2373,2443,2502,2589,2665,2731,2775,2840,2905,2937,2868,2822,2722,2668,2691,2718,2744,2780,
+2820,2852,2892,2956,3056,3158,3196,3228,3218,3213,3235,3279,3309,3274,3277,3339,3396,3437,3511,3589,
+3667,3754,3773,3810,3986,4157,4166,4145,4278,4311,4287,4334,4335,4252,4215,4257,4208,4000,3715,3462,
+3214,2876,2536,2238,1931,1695,1547,1522,1629,1791,1959,2109,2291,2370,2303,2252,2258,2269,2254,2219,
+2178,2139,2091,2036,1981,1925,1865,1803,1741,1675,1607,1542,1491,1453,1409,1353,1299,1250,1192,1140,
+1094,1054,1018,971,914,861,806,751,700,653,608,569,531,488,443,394,347,305,263,232,
+204,180,167,155,168,176,170,153,118,68,16,-38,-99,-152,-196,-236,-281,-324,-361,-392,
+-424,-445,-468,-497,-525,-545,-577,-600,-659,-695,-721,-762,-766,-796,-813,-834,-847,-830,-842,-890,
+-907,-919,-931,-938,-936,-943,-956,-978,-1005,-1033,-1075,-1126,-1176,-1211,-1256,-1291,-1304,-1282,-1205,-1005,
+-921,-1103,-1241,-1290,-1293,-1274,-1247,-1219,-1185,-1160,-1144,-1129,-1119,-1124,-1115,-1041,-1038,-1046,-1064,-1071,
+-1049,-1044,-1044,-1058,-1068,-1068,-1083,-1093,-1105,-1134,-1156,-1172,-1188,-1188,-1187,-1185,-1170,-1167,-1167,-1175,
+-1187,-1192,-1202,-1227,-1244,-1252,-1259,-1250,-1214,-1232,-1244,-1257,-1244,-1278,-1302,-1315,-1269,-1264,-1301,-1316,
+-1316,-1306,-1299,-1314,-1314,-1300,-1295,-1280,-1280,-1286,-1284,-1284,-1283,-1282,-1283,-1287,-1293,-1296,-1294,-1295,
+-1309,-1323,-1340,-1351,-1364,-1370,-1377,-1377,-1376,-1385,-1389,-1387,-1380,-1366,-1350,-1334,-1317,-1312,-1322,-1329,
+-1335,-1346,-1357,-1366,-1375,-1386,-1395,-1406,-1419,-1431,-1445,-1454,-1459,-1467,-1478,-1488,-1499,-1503,-1511,-1522,
+-1532,-1539,-1548,-1560,-1567,-1578,-1591,-1608,-1625,-1644,-1667,-1686,-1706,-1723,-1733,-1744,-1765,-1790,-1819,-1850,
+-1884,-1913,-1942,-1973,-1993,-2001,-2010,-2025,-2048,-2071,-2093,-2116,-2143,-2176,-2203,-2218,-2223,-2236,-2252,-2279,
+-2314,-2351,-2387,-2422,-2452,-2480,-2509,-2531,-2543,-2573,-2596,-2611,-2639,-2675,-2714,-2759,-2809,-2855,-2901,-2940,
+-2971,-3005,-3035,-3063,-3085,-3105,-3127,-3152,-3180,-3209,-3242,-3277,-3316,-3355,-3383,-3402,-3417,-3420,-3439,-3457,
+-3494,-3533,-3570,-3600,-3625,-3642,-3660,-3679,-3695,-3706,-3710,-3711,-3717,-3729,-3739,-3751,-3769,-3790,-3814,-3834,
+-3854,-3871,-3877,-3880,-3879,-3879,-3880,-3885,-3893,-3900,-3919,-3942,-3955,-3960,-3965,-3971,-3976,-3975,-3978,-3981,
+-3978,-3978,-3977,-3974,-3971,-3970,-3963,-3957,-3952,-3949,-3942,-3931,-3901,-3893,-3908,-3885,-3852,-3825,-3804,-3784,
+-3771,-3756,-3748,-3719,-3676,-3569,-3459,-3370,-3268,-3255,-3204,-3297,-3335,-3299,-3250,-3178,-3067,-2949,-2782,-2597,
+-2471,-2582,-2682,-2837,-2741,-2887,-2789,-2779,-2792,-2738,-2701,-2657,-2652,-2570,-2621,-2670,-2678,-2676,-2599,-2432,
+-2387,-2333,-2296,-2292,-2241,-2184,-2247,-2323,-2331,-2310,-2245,-2146,-2063,-2071,-2102,-2105,-2087,-2043,-2083,-2132,
+-2146,-2145,-2131,-2103,-2058,-1998,-1938,-1872,-1769,-1675,-1710,-1757,-1719,-1683,-1753,-1816,-1885,-1906,-1935,-1999,
+-2101,-2197,-2287,-2363,-2427,-2487,-2555,-2624,-2686,-2728,-2760,-2782,-2793,-2804,-2820,-2844,-2874,-2884,-2882,-2883,
+-2874,-2861,-2849,-2868,-2900,-2936,-2948,-2938,-2915,-2923,-2972,-3001,-3011,-3006,-2996,-2977,-2954,-2937,-2927,-2928,
+-2953,-2950,-2942,-2923,-2927,-2958,-2968,-2972,-2981,-3005,-3018,-3013,-3000,-2974,-2932,-2903,-2911,-2901,-2894,-2891,
+-2921,-2958,-2977,-3005,-3033,-3043,-3060,-3083,-3098,-3080,-3108,-3140,-3156,-3165,-3137,-3047,-2999,-3037,-3103,-3125,
+-3142,-3158,-3168,-3173,-3187,-3188,-3181,-3185,-3182,-3217,-3270,-3285,-3270,-3309,-3343,-3336,-3309,-3272,-3240,-3232,
+-3248,-3334,-3398,-3447,-3486,-3560,-3604,-3674,-3756,-3826,-3891,-3936,-3927,-3858,-3805,-3817,-3953,-4069,-4149,-4205,
+-4247,-4282,-4307,-4314,-4307,-4310,-4315,-4320,-4325,-4324,-4324,-4320,-4313,-4303,-4299,-4297,-4292,-4284,-4279,-4274,
+-4260,-4240,-4211,-4188,-4149,-4102,-4066,-4026,-3992,-3956,-3911,-3852,-3808,-3768,-3736,-3701,-3663,-3625,-3580,-3537,
+-3503,-3472,-3430,-3379,-3339,-3298,-3256,-3207,-3166,-3114,-3076,-3058,-3034,-2999,-2947,-2897,-2860,-2826,-2752,-2696,
+-2645,-2613,-2594,-2557,-2507,-2461,-2419,-2377,-2327,-2283,-2227,-2165,-2116,-2064,-1998,-1915,-1843,-1777,-1703,-1619,
+-1536,-1461,-1386,-1312,-1242,-1172,-1104,-1031,-948,-866,-779,-693,-601,-514,-426,-346,-278,-200,-126,-62,
+8,87,159,243,323,408,486,565,649,735,825,917,1002,1078,1162,1257,1348,1443,1519,1622,
+1714,1793,1883,1972,2063,2160,2248,2335,2427,2533,2594,2664,2749,2818,2905,3008,3093,3168,3258,3318,
+3387,3466,3547,3608,3692,3767,3835,3924,4008,4103,4172,4242,4319,4377,4441,4531,4580,4663,4728,4796,
+4841,4833,4918,4976,4987,4992,4985,4974,4967,4970,4989,5004,5002,5025,5011,4985,5004,5033,5064,5100,
+5111,5109,5113,5089,5088,5090,5101,5113,5114,5102,5113,5212,5223,5218,5179,5074,4957,4854,4794,4782,
+4785,4782,4744,4710,4706,4727,4749,4726,4706,4674,4633,4609,4589,4570,4539,4498,4464,4448,4440,4427,
+4424,4426,4428,4463,4506,4554,4605,4668,4685,4690,4734,4802,4883,4962,5100,5217,5270,5290,5144,5089,
+5036,4985,4901,4834,4779,4773,4794,4917,5162,5367,5346,5115,4954,4859,4892,4919,4989,5022,5050,5051,
+5038,5036,5033,5019,5006,4978,4927,4834,4738,4691,4671,4669,4719,4755,4799,4784,4844,4917,4933,4948,
+4981,5005,5009,5005,4975,4965,4916,4824,4731,4679,4669,4669,4662,4655,4630,4594,4586,4601,4655,4730,
+4760,4781,4809,4786,4756,4710,4695,4705,4704,4675,4643,4665,4656,4610,4578,4570,4559,4595,4584,4534,
+4509,4500,4501,4492,4450,4407,4386,4399,4379,4327,4291,4278,4267,4225,4204,4179,4172,4120,4080,4071,
+4075,4078,4088,4063,4028,3978,3956,3914,3854,3849,3871,3848,3861,3929,3960,3943,3847,3576,3237,3092,
+3035,3001,2955,2901,2854,2826,2815,2828,2851,2846,2806,2731,2598,2427,2262,2113,1970,1830,1691,1550,
+1465,1485,1634,1751,1917,2123,2235,2585,2760,2963,3129,3260,3356,3456,3492,3519,3534,3499,3459,3427,
+3394,3300,3189,3082,2969,2792,2601,2397,2156,1962,1945,2111,2355,2563,2618,2574,2437,2364,2221,2203,
+2227,2308,2510,2740,2963,3182,3221,3139,3017,2888,2917,2828,2628,2462,2393,2409,2478,2542,2593,2674,
+2745,2707,2725,2702,2651,2612,2571,2524,2469,2431,2377,2327,2283,2243,2204,2169,2126,2083,2033,1992,
+1950,1897,1847,1794,1735,1680,1619,1567,1508,1459,1429,1408,1425,1514,1577,1689,1689,1687,1622,1579,
+1576,1558,1553,1518,1492,1390,1283,1251,1207,1175,1070,1019,894,792,802,810,774,829,791,641,
+365,219,50,-200,-403,-512,-582,-603,-580,-522,-420,-345,-327,-337,-455,-625,-744,-863,-957,-971,
+-1042,-1098,-1112,-1093,-1135,-1213,-1290,-1339,-1356,-1371,-1352,-1426,-1575,-1702,-1777,-1878,-2090,-2272,-2448,-2582,
+-2692,-2783,-2846,-2899,-2945,-2993,-3020,-3033,-3060,-3097,-3131,-3170,-3227,-3301,-3375,-3493,-3524,-3512,-3488,-3472,
+-3485,-3487,-3547,-3579,-3476,-3557,-3744,-3868,-4007,-4144,-4229,-4270,-4121,-3936,-3700,-3536,-3389,-3214,-3223,-3152,
+-3069,-3040,-2954,-2923,-2961,-2968,-2863,-2801,-2875,-2899,-2988,-3162,-3230,-3278,-3241,-3217,-3102,-2953,-2801,-2703,
+-2553,-2379,-2275,-2336,-2449,-2554,-2632,-2648,-2719,-2834,-2951,-3153,-3314,-3436,-3582,-3659,-3690,-3861,-4077,-4226,
+-4290,-4287,-4233,-4112,-3958,-3856,-3847,-3808,-3783,-3747,-3719,-3697,-3744,-3793,-3797,-3810,-3831,-3861,-3879,-3901,
+-3935,-3962,-3984,-4001,-3989,-4010,-4067,-4109,-4158,-4211,-4246,-4269,-4306,-4321,-4341,-4350,-4378,-4410,-4431,-4439,
+-4452,-4484,-4566,-4631,-4690,-4735,-4769,-4810,-4897,-5013,-5142,-5241,-5297,-5338,-5367,-5363,-5337,-5303,-5279,-5262,
+-5233,-5212,-5202,-5200,-5180,-5117,-5024,-4916,-4798,-4677,-4583,-4587,-4667,-4672,-4597,-4565,-4542,-4508,-4467,-4383,
+-4344,-4365,-4372,-4351,-4293,-4241,-4246,-4271,-4285,-4293,-4260,-4232,-4226,-4212,-4181,-4062,-3932,-3880,-3851,-3834,
+-3772,-3652,-3625,-3636,-3612,-3566,-3501,-3402,-3299,-3240,-3194,-3147,-3085,-3020,-2951,-2907,-2870,-2810,-2668,-2527,
+-2372,-2334,-2263,-2057,-1955,-1864,-1807,-1738,-1663,-1600,-1580,-1577,-1599,-1599,-1556,-1488,-1398,-1312,-1225,-1126,
+-1024,-919,-810,-685,-550,-458,-349,-257,-147,-92,11,101,191,291,380,461,549,633,708,775,
+840,920,1017,1093,1155,1226,1279,1330,1381,1441,1514,1586,1654,1722,1804,1889,1969,2012,2050,2118,
+2204,2281,2353,2408,2458,2536,2618,2681,2725,2790,2848,2907,2947,2896,2861,2765,2685,2703,2727,2748,
+2787,2830,2866,2902,2968,3060,3175,3244,3278,3302,3297,3286,3268,3268,3301,3367,3410,3431,3486,3560,
+3634,3717,3840,3938,4011,4174,4199,4170,4242,4287,4265,4200,4236,4221,4189,4177,4163,4030,3817,3504,
+3227,2916,2571,2266,2007,1758,1555,1495,1581,1738,1910,2066,2176,2262,2269,2269,2272,2280,2280,2262,
+2227,2185,2143,2097,2041,1982,1921,1862,1804,1748,1685,1622,1556,1501,1463,1418,1363,1300,1254,1202,
+1148,1101,1065,1030,982,930,878,819,758,699,649,604,570,536,495,459,413,371,340,298,
+260,232,204,186,188,197,198,190,173,145,102,52,-16,-82,-141,-192,-236,-280,-328,-368,
+-395,-423,-456,-480,-511,-538,-566,-594,-622,-662,-694,-687,-747,-771,-783,-807,-827,-846,-864,-882,
+-898,-905,-917,-929,-941,-950,-944,-953,-959,-973,-1001,-1040,-1086,-1137,-1171,-1222,-1263,-1294,-1289,-1247,
+-1151,-1008,-1022,-1200,-1270,-1281,-1272,-1248,-1217,-1181,-1152,-1133,-1124,-1117,-1127,-1113,-1046,-1038,-1026,-1053,
+-1086,-1062,-1034,-1041,-1041,-1049,-1047,-1056,-1064,-1069,-1099,-1115,-1137,-1155,-1164,-1166,-1164,-1152,-1154,-1150,
+-1154,-1156,-1159,-1174,-1201,-1226,-1236,-1245,-1236,-1203,-1184,-1158,-1189,-1207,-1224,-1243,-1280,-1277,-1286,-1316,
+-1326,-1327,-1294,-1315,-1316,-1300,-1290,-1286,-1282,-1282,-1287,-1293,-1299,-1312,-1325,-1336,-1344,-1353,-1359,-1364,
+-1369,-1379,-1383,-1386,-1384,-1379,-1376,-1382,-1386,-1379,-1370,-1360,-1351,-1341,-1339,-1339,-1331,-1323,-1320,-1320,
+-1328,-1340,-1347,-1360,-1369,-1378,-1390,-1405,-1421,-1432,-1441,-1451,-1461,-1468,-1476,-1486,-1495,-1501,-1510,-1516,
+-1524,-1531,-1536,-1542,-1549,-1559,-1570,-1583,-1595,-1612,-1636,-1656,-1675,-1692,-1706,-1720,-1737,-1758,-1786,-1813,
+-1842,-1873,-1903,-1937,-1969,-1999,-2020,-2032,-2044,-2064,-2081,-2101,-2117,-2142,-2165,-2187,-2199,-2208,-2218,-2245,
+-2285,-2324,-2362,-2390,-2410,-2429,-2456,-2481,-2506,-2528,-2550,-2570,-2592,-2622,-2654,-2702,-2747,-2797,-2848,-2893,
+-2932,-2966,-2998,-3030,-3054,-3078,-3103,-3125,-3148,-3176,-3205,-3237,-3272,-3308,-3341,-3360,-3376,-3395,-3405,-3425,
+-3450,-3488,-3529,-3561,-3585,-3601,-3621,-3641,-3665,-3679,-3696,-3703,-3706,-3713,-3725,-3740,-3757,-3779,-3810,-3838,
+-3859,-3874,-3882,-3880,-3878,-3875,-3880,-3886,-3893,-3903,-3918,-3933,-3953,-3974,-3981,-3982,-3988,-3989,-3986,-3986,
+-3988,-3988,-3989,-3990,-3990,-3989,-3991,-3987,-3981,-3976,-3975,-3969,-3969,-3964,-3951,-3929,-3901,-3866,-3847,-3818,
+-3789,-3770,-3759,-3752,-3784,-3752,-3653,-3497,-3343,-3308,-3263,-3242,-3254,-3317,-3349,-3312,-3249,-3153,-3059,-2944,
+-2739,-2521,-2548,-2762,-2730,-2788,-2837,-2910,-2842,-2850,-2811,-2684,-2641,-2675,-2621,-2667,-2744,-2760,-2703,-2603,
+-2494,-2387,-2331,-2319,-2316,-2262,-2155,-2237,-2295,-2294,-2269,-2205,-2141,-2073,-2043,-2060,-2073,-2066,-1998,-2031,
+-2125,-2182,-2161,-2139,-2112,-2066,-2015,-1969,-1927,-1855,-1784,-1804,-1828,-1743,-1714,-1780,-1885,-1918,-1917,-1943,
+-2000,-2109,-2217,-2308,-2386,-2456,-2524,-2594,-2659,-2714,-2751,-2779,-2800,-2822,-2836,-2851,-2868,-2884,-2878,-2877,
+-2865,-2843,-2827,-2831,-2855,-2894,-2922,-2928,-2916,-2894,-2900,-2945,-2985,-2994,-2991,-2974,-2945,-2910,-2893,-2894,
+-2907,-2911,-2922,-2927,-2918,-2910,-2924,-2922,-2932,-2925,-2939,-2962,-2970,-2968,-2956,-2943,-2935,-2921,-2903,-2891,
+-2902,-2921,-2945,-2975,-3010,-3039,-3037,-3042,-3057,-3041,-3035,-3064,-3108,-3134,-3128,-3058,-2970,-2978,-3041,-3097,
+-3129,-3166,-3185,-3204,-3220,-3232,-3226,-3195,-3191,-3200,-3260,-3320,-3395,-3405,-3403,-3387,-3354,-3293,-3240,-3214,
+-3229,-3304,-3397,-3450,-3483,-3516,-3563,-3629,-3699,-3755,-3832,-3921,-3964,-3948,-3879,-3832,-3861,-4003,-4106,-4180,
+-4239,-4282,-4320,-4343,-4352,-4354,-4357,-4362,-4372,-4375,-4372,-4359,-4344,-4329,-4315,-4307,-4305,-4303,-4297,-4288,
+-4274,-4260,-4245,-4223,-4196,-4161,-4120,-4083,-4046,-4010,-3970,-3914,-3859,-3825,-3783,-3756,-3729,-3706,-3674,-3639,
+-3598,-3546,-3499,-3468,-3429,-3381,-3327,-3283,-3236,-3184,-3136,-3090,-3054,-3042,-3022,-2978,-2917,-2840,-2761,-2784,
+-2745,-2680,-2625,-2616,-2608,-2560,-2506,-2454,-2417,-2379,-2312,-2264,-2216,-2156,-2094,-2025,-1954,-1885,-1814,-1743,
+-1666,-1587,-1520,-1445,-1375,-1305,-1223,-1168,-1097,-971,-842,-825,-755,-657,-552,-456,-367,-297,-243,-164,
+-92,-30,42,129,226,316,405,480,571,654,736,811,890,964,1047,1143,1243,1330,1417,1487,
+1585,1671,1752,1849,1947,2036,2130,2215,2297,2393,2485,2550,2628,2711,2783,2877,2952,3030,3118,3201,
+3274,3353,3441,3518,3590,3672,3749,3828,3896,3996,4074,4158,4232,4309,4372,4430,4488,4556,4625,4719,
+4726,4752,4793,4826,4858,4858,4844,4861,4891,4895,4907,4939,4938,4936,4948,4964,4956,4952,4952,4972,
+4989,5015,5041,5043,5047,5027,5026,5024,5047,5039,5061,5079,5113,5081,5058,5018,4970,4936,4894,4839,
+4772,4747,4718,4684,4655,4620,4608,4628,4609,4572,4527,4485,4445,4423,4388,4354,4332,4325,4314,4305,
+4297,4294,4305,4323,4362,4420,4487,4550,4595,4643,4674,4726,4780,4865,5003,5121,5112,5103,5041,4919,
+4868,4885,4950,5036,5030,4942,4945,5061,5297,5434,5220,4987,4788,4657,4625,4669,4721,4767,4753,4786,
+4839,4847,4906,4933,4936,4862,4738,4666,4608,4554,4526,4526,4543,4601,4678,4738,4790,4750,4723,4735,
+4757,4801,4825,4866,4875,4866,4866,4809,4766,4700,4652,4639,4629,4616,4608,4594,4661,4736,4779,4814,
+4802,4784,4794,4783,4779,4764,4738,4754,4740,4686,4654,4620,4573,4544,4524,4518,4525,4521,4519,4506,
+4488,4473,4464,4459,4460,4434,4432,4400,4381,4365,4318,4284,4250,4226,4199,4162,4123,4083,4010,3982,
+3999,4018,4021,4021,4012,3985,3953,3917,3887,3855,3803,3780,3815,3810,3838,3860,3848,3778,3545,3248,
+3098,3033,2986,2939,2894,2859,2842,2844,2857,2859,2838,2786,2697,2551,2379,2204,2047,1898,1749,1592,
+1433,1322,1276,1307,1390,1547,1695,1937,2301,2413,2661,2873,3025,3152,3249,3298,3327,3323,3302,3283,
+3233,3139,3051,2964,2790,2649,2521,2390,2163,1796,1461,1443,1664,1937,2156,2169,2077,1934,1898,1778,
+1794,1879,1977,2123,2355,2660,2921,3007,2980,2900,2809,2728,2595,2467,2377,2361,2387,2414,2452,2548,
+2715,2634,2621,2659,2639,2600,2548,2503,2460,2407,2362,2317,2278,2252,2218,2187,2161,2117,2058,1987,
+1942,1898,1848,1780,1705,1630,1572,1522,1458,1361,1275,1219,1188,1235,1281,1269,1323,1441,1478,1549,
+1542,1527,1516,1540,1510,1440,1393,1269,1195,1184,1143,1093,1028,940,856,754,692,701,753,816,
+799,675,604,432,238,-7,-195,-312,-356,-373,-323,-278,-300,-402,-517,-602,-640,-656,-714,-818,
+-922,-1011,-1117,-1182,-1215,-1229,-1263,-1302,-1340,-1343,-1443,-1489,-1400,-1434,-1615,-1754,-1847,-1954,-2111,-2284,
+-2434,-2551,-2652,-2737,-2788,-2829,-2881,-2912,-2921,-2936,-2953,-2986,-3020,-3072,-3111,-3157,-3181,-3176,-3191,-3207,
+-3220,-3186,-3236,-3290,-3296,-3230,-3246,-3393,-3546,-3670,-3869,-4076,-3964,-3772,-3557,-3364,-3296,-3101,-2974,-3037,
+-2958,-2911,-2940,-2960,-2918,-2897,-2824,-2672,-2653,-2715,-2791,-2917,-3036,-3197,-3231,-3220,-3121,-3027,-2936,-2799,
+-2646,-2520,-2403,-2339,-2351,-2416,-2527,-2612,-2660,-2702,-2719,-2781,-2882,-2993,-3127,-3292,-3336,-3338,-3459,-3619,
+-3757,-3797,-3777,-3723,-3600,-3449,-3378,-3377,-3362,-3386,-3438,-3493,-3565,-3640,-3677,-3706,-3721,-3745,-3789,-3798,
+-3826,-3864,-3882,-3912,-3946,-3950,-3971,-4018,-4066,-4107,-4138,-4162,-4187,-4220,-4250,-4281,-4279,-4286,-4308,-4316,
+-4328,-4360,-4377,-4403,-4429,-4484,-4508,-4510,-4532,-4571,-4631,-4717,-4801,-4847,-4913,-4993,-4969,-4942,-4901,-4886,
+-4867,-4872,-4890,-4916,-4957,-4984,-4962,-4894,-4797,-4686,-4567,-4450,-4423,-4469,-4532,-4619,-4666,-4665,-4639,-4582,
+-4458,-4375,-4352,-4332,-4271,-4209,-4200,-4243,-4278,-4290,-4294,-4266,-4258,-4242,-4179,-4121,-4053,-3936,-3819,-3762,
+-3742,-3699,-3629,-3615,-3608,-3586,-3566,-3505,-3425,-3316,-3256,-3201,-3134,-3083,-2987,-2896,-2841,-2823,-2777,-2633,
+-2495,-2417,-2439,-2346,-2138,-1997,-1878,-1820,-1760,-1661,-1556,-1570,-1603,-1624,-1607,-1551,-1485,-1403,-1316,-1218,
+-1113,-1001,-893,-791,-662,-563,-463,-343,-219,-132,-47,46,134,212,302,384,461,536,632,703,
+771,864,958,1033,1096,1160,1213,1250,1303,1368,1437,1512,1580,1657,1734,1806,1895,1977,2048,2083,
+2156,2229,2302,2362,2409,2484,2565,2629,2700,2741,2809,2872,2934,2953,2898,2851,2733,2702,2721,2740,
+2764,2806,2859,2899,2935,2993,3089,3215,3295,3367,3348,3340,3315,3294,3315,3377,3437,3462,3477,3523,
+3600,3708,3838,3986,4058,4105,4213,4254,4220,4270,4279,4269,4181,4111,4080,4077,4079,4041,3884,3608,
+3308,3006,2667,2362,2095,1834,1615,1482,1546,1700,1883,2060,2179,2220,2256,2284,2295,2297,2293,2282,
+2262,2226,2184,2144,2102,2047,1988,1930,1873,1819,1764,1704,1641,1576,1515,1466,1422,1366,1304,1245,
+1202,1157,1113,1084,1028,985,939,883,828,767,702,647,602,565,528,497,472,443,403,364,
+328,294,266,239,222,210,205,210,204,178,159,114,62,-7,-70,-134,-186,-235,-281,-327,
+-366,-388,-423,-456,-486,-509,-535,-554,-603,-624,-654,-686,-713,-740,-764,-784,-802,-823,-843,-867,
+-889,-909,-926,-937,-946,-954,-961,-957,-955,-965,-969,-992,-1012,-1050,-1101,-1147,-1198,-1245,-1277,-1279,
+-1250,-1196,-1120,-1055,-1158,-1225,-1255,-1254,-1238,-1203,-1165,-1131,-1109,-1098,-1098,-1103,-1070,-1064,-1019,-1052,
+-1056,-1069,-1088,-1079,-1048,-1033,-1032,-1031,-1034,-1040,-1044,-1074,-1081,-1104,-1121,-1137,-1143,-1147,-1140,-1142,
+-1135,-1128,-1126,-1135,-1134,-1163,-1196,-1211,-1214,-1200,-1196,-1178,-1172,-1176,-1186,-1200,-1240,-1271,-1272,-1292,
+-1306,-1313,-1303,-1301,-1309,-1290,-1280,-1282,-1288,-1304,-1321,-1337,-1352,-1356,-1363,-1366,-1364,-1361,-1358,-1353,
+-1344,-1340,-1340,-1343,-1353,-1368,-1375,-1377,-1388,-1382,-1369,-1355,-1338,-1321,-1312,-1310,-1312,-1308,-1305,-1307,
+-1315,-1328,-1343,-1355,-1366,-1375,-1387,-1399,-1416,-1428,-1437,-1442,-1452,-1462,-1470,-1479,-1484,-1495,-1502,-1510,
+-1516,-1527,-1529,-1535,-1541,-1549,-1558,-1570,-1582,-1596,-1616,-1640,-1661,-1681,-1696,-1712,-1729,-1750,-1773,-1797,
+-1821,-1841,-1878,-1922,-1953,-1980,-2001,-2013,-2022,-2031,-2052,-2072,-2093,-2116,-2134,-2147,-2162,-2173,-2189,-2208,
+-2236,-2279,-2328,-2367,-2380,-2390,-2412,-2439,-2472,-2501,-2523,-2539,-2562,-2584,-2608,-2644,-2690,-2744,-2796,-2843,
+-2883,-2913,-2943,-2979,-3013,-3042,-3068,-3091,-3112,-3135,-3163,-3193,-3222,-3257,-3290,-3321,-3340,-3355,-3375,-3396,
+-3416,-3455,-3483,-3510,-3534,-3553,-3573,-3594,-3617,-3636,-3654,-3674,-3685,-3692,-3703,-3718,-3735,-3759,-3784,-3820,
+-3853,-3874,-3885,-3886,-3883,-3884,-3885,-3893,-3897,-3908,-3922,-3936,-3955,-3970,-3981,-3992,-3998,-3999,-3995,-3994,
+-3993,-3994,-3997,-4002,-4008,-4011,-4015,-4017,-4016,-4009,-3998,-4000,-3999,-3997,-3987,-3974,-3948,-3930,-3894,-3863,
+-3829,-3795,-3769,-3753,-3751,-3767,-3730,-3648,-3549,-3364,-3275,-3334,-3308,-3253,-3269,-3369,-3375,-3325,-3259,-3181,
+-3063,-2876,-2702,-2634,-2793,-2797,-2852,-2890,-2889,-2928,-2872,-2837,-2775,-2590,-2614,-2774,-2788,-2773,-2773,-2684,
+-2690,-2522,-2418,-2410,-2413,-2381,-2342,-2281,-2259,-2328,-2332,-2324,-2270,-2195,-2121,-2070,-2052,-2066,-2030,-1966,
+-1973,-2095,-2167,-2158,-2134,-2103,-2075,-2036,-1973,-1889,-1889,-1907,-1893,-1810,-1737,-1771,-1838,-1911,-1958,-1945,
+-1974,-2043,-2150,-2265,-2357,-2435,-2505,-2570,-2633,-2691,-2735,-2766,-2790,-2820,-2853,-2872,-2882,-2892,-2890,-2877,
+-2854,-2832,-2816,-2814,-2819,-2844,-2877,-2893,-2901,-2897,-2897,-2913,-2952,-2981,-2990,-2983,-2955,-2927,-2893,-2881,
+-2876,-2874,-2878,-2888,-2903,-2911,-2915,-2901,-2884,-2886,-2904,-2907,-2905,-2917,-2918,-2926,-2930,-2924,-2917,-2915,
+-2908,-2907,-2914,-2927,-2946,-2976,-2990,-2996,-3018,-3031,-3019,-3008,-3047,-3076,-3073,-3047,-2989,-2973,-2992,-3054,
+-3135,-3163,-3183,-3204,-3224,-3226,-3224,-3206,-3197,-3198,-3261,-3364,-3418,-3448,-3449,-3417,-3350,-3265,-3181,-3156,
+-3178,-3241,-3343,-3438,-3505,-3546,-3569,-3595,-3642,-3719,-3775,-3849,-3949,-3990,-3972,-3919,-3878,-3914,-4047,-4142,
+-4221,-4280,-4336,-4372,-4395,-4399,-4401,-4402,-4410,-4417,-4421,-4417,-4401,-4374,-4347,-4328,-4322,-4321,-4320,-4313,
+-4297,-4279,-4260,-4241,-4217,-4198,-4170,-4136,-4100,-4063,-4026,-3979,-3923,-3871,-3835,-3789,-3766,-3748,-3735,-3713,
+-3683,-3645,-3599,-3552,-3506,-3455,-3426,-3382,-3322,-3260,-3201,-3158,-3122,-3084,-3058,-3039,-3014,-2965,-2902,-2811,
+-2794,-2793,-2718,-2692,-2695,-2657,-2604,-2557,-2530,-2468,-2413,-2368,-2302,-2248,-2201,-2135,-2052,-1980,-1919,-1861,
+-1788,-1711,-1642,-1575,-1517,-1434,-1309,-1141,-1128,-1143,-1009,-905,-876,-801,-706,-604,-503,-413,-340,-286,
+-223,-139,-68,6,96,166,253,342,432,521,621,697,787,872,949,1036,1128,1202,1291,1375,
+1456,1539,1624,1712,1794,1893,2010,2104,2202,2283,2357,2433,2504,2568,2663,2747,2840,2915,3002,3101,
+3176,3243,3317,3397,3486,3559,3630,3726,3825,3897,3994,4066,4147,4207,4277,4353,4411,4457,4528,4601,
+4612,4653,4723,4757,4768,4775,4780,4798,4811,4824,4841,4850,4860,4872,4875,4887,4890,4890,4890,4892,
+4905,4913,4927,4939,4946,4952,4959,4972,4952,4932,4905,4895,4898,4911,4958,4981,4984,4970,4922,4866,
+4793,4720,4678,4638,4603,4554,4492,4460,4467,4467,4459,4434,4396,4354,4321,4274,4226,4197,4194,4200,
+4210,4223,4232,4263,4298,4328,4367,4426,4511,4575,4630,4678,4739,4796,4892,5028,5062,4997,4975,4822,
+4751,4722,4728,4776,4839,4877,4842,4880,4977,5082,5042,4831,4626,4492,4405,4388,4430,4520,4561,4552,
+4604,4691,4781,4824,4802,4708,4564,4454,4404,4392,4377,4356,4360,4360,4388,4452,4470,4448,4485,4567,
+4649,4743,4777,4806,4817,4778,4757,4750,4724,4699,4653,4623,4614,4602,4588,4594,4661,4793,4810,4778,
+4751,4755,4771,4785,4796,4777,4754,4734,4679,4649,4608,4556,4507,4466,4428,4427,4402,4407,4375,4380,
+4367,4372,4377,4378,4386,4386,4375,4369,4350,4316,4287,4259,4242,4217,4199,4140,4071,4005,3957,3944,
+3945,3947,3957,3962,3963,3959,3943,3912,3872,3835,3806,3752,3702,3710,3787,3811,3808,3788,3724,3560,
+3327,3122,3031,2970,2920,2878,2855,2859,2862,2858,2852,2834,2769,2656,2516,2359,2196,2044,1892,1737,
+1584,1433,1296,1215,1149,1152,1182,1334,1641,1904,2138,2307,2547,2743,2901,3029,3061,3046,3021,3033,
+3007,2940,2860,2754,2576,2410,2329,2187,2065,1769,1350,1074,1045,1190,1419,1561,1550,1431,1328,1316,
+1317,1416,1561,1700,1861,2077,2357,2592,2716,2695,2646,2610,2550,2477,2402,2352,2325,2315,2313,2366,
+2436,2582,2619,2624,2616,2578,2556,2504,2456,2410,2353,2305,2260,2221,2184,2150,2117,2080,2034,1978,
+1920,1866,1803,1734,1664,1602,1537,1470,1403,1332,1243,1151,1073,1012,1012,1014,1042,1102,1228,1274,
+1354,1430,1450,1469,1497,1451,1376,1344,1258,1163,1118,1112,1068,1026,969,819,714,617,569,581,
+620,677,668,656,624,518,296,255,123,-33,-49,-97,-187,-319,-470,-572,-617,-640,-674,-714,
+-818,-908,-1025,-1089,-1140,-1180,-1202,-1210,-1242,-1296,-1334,-1398,-1511,-1545,-1523,-1575,-1694,-1782,-1878,-1998,
+-2116,-2268,-2408,-2513,-2611,-2673,-2722,-2780,-2833,-2825,-2824,-2855,-2868,-2870,-2886,-2907,-2913,-2879,-2826,-2798,
+-2797,-2893,-2986,-3021,-3046,-3026,-3038,-3005,-3033,-3180,-3323,-3592,-3784,-3697,-3497,-3381,-3195,-2999,-2883,-2852,
+-2902,-2840,-2840,-2941,-3009,-2913,-2647,-2591,-2547,-2527,-2521,-2585,-2675,-2887,-3115,-3149,-3115,-2986,-2961,-2892,
+-2795,-2685,-2618,-2530,-2443,-2384,-2392,-2462,-2546,-2594,-2588,-2606,-2628,-2678,-2743,-2831,-3021,-3158,-3155,-3147,
+-3165,-3232,-3273,-3296,-3359,-3361,-3312,-3303,-3326,-3347,-3361,-3410,-3468,-3513,-3566,-3613,-3652,-3683,-3728,-3752,
+-3766,-3801,-3836,-3862,-3895,-3928,-3951,-3976,-4001,-4029,-4067,-4097,-4117,-4130,-4141,-4169,-4191,-4202,-4215,-4230,
+-4225,-4245,-4267,-4288,-4318,-4351,-4374,-4368,-4367,-4379,-4408,-4420,-4450,-4518,-4548,-4591,-4650,-4613,-4561,-4534,
+-4517,-4493,-4493,-4531,-4522,-4554,-4637,-4696,-4681,-4624,-4511,-4436,-4348,-4297,-4300,-4335,-4445,-4539,-4587,-4601,
+-4569,-4476,-4440,-4392,-4279,-4299,-4240,-4196,-4208,-4256,-4262,-4204,-4205,-4210,-4210,-4140,-4071,-4017,-3929,-3825,
+-3737,-3665,-3620,-3594,-3602,-3614,-3591,-3564,-3513,-3435,-3325,-3239,-3187,-3130,-3070,-2989,-2883,-2820,-2777,-2769,
+-2642,-2525,-2513,-2492,-2331,-2123,-2010,-1901,-1829,-1757,-1634,-1536,-1608,-1628,-1635,-1598,-1546,-1481,-1398,-1302,
+-1197,-1099,-982,-879,-781,-671,-547,-444,-328,-213,-127,-39,50,145,230,305,375,436,485,564,
+698,793,875,946,1007,1060,1121,1178,1259,1316,1382,1457,1527,1599,1673,1739,1825,1909,2007,2076,
+2114,2197,2269,2328,2371,2427,2515,2596,2682,2728,2764,2832,2900,2928,2937,2929,2827,2731,2728,2742,
+2766,2811,2877,2945,2988,3016,3067,3192,3272,3343,3361,3364,3371,3370,3370,3409,3464,3492,3514,3519,
+3537,3646,3744,3853,4000,4058,4113,4241,4288,4277,4330,4362,4342,4213,4112,3964,3898,3909,3841,3683,
+3449,3144,2799,2437,2165,1944,1734,1574,1549,1668,1833,2054,2136,2223,2300,2333,2330,2325,2313,2292,
+2269,2245,2212,2172,2134,2096,2050,1997,1940,1888,1836,1783,1720,1651,1591,1532,1479,1428,1367,1305,
+1245,1196,1154,1108,1065,1032,987,951,892,830,772,709,653,606,572,544,518,493,462,433,
+395,361,319,288,266,246,237,223,220,203,179,154,114,57,-10,-76,-133,-189,-234,-277,
+-323,-363,-392,-424,-454,-489,-524,-552,-583,-606,-634,-654,-677,-713,-746,-775,-801,-822,-844,-869,
+-898,-922,-942,-958,-969,-965,-969,-966,-963,-962,-965,-974,-986,-1016,-1046,-1080,-1125,-1175,-1226,-1244,
+-1213,-1134,-1062,-998,-1027,-1081,-1153,-1201,-1232,-1230,-1190,-1145,-1109,-1084,-1072,-1070,-1073,-1070,-1071,-1055,
+-1044,-1046,-1055,-1067,-1080,-1056,-1022,-1019,-1013,-1012,-1019,-1037,-1051,-1069,-1079,-1090,-1104,-1116,-1124,-1133,
+-1136,-1132,-1112,-1107,-1119,-1113,-1135,-1159,-1162,-1154,-1165,-1174,-1163,-1153,-1170,-1196,-1209,-1225,-1240,-1278,
+-1280,-1284,-1286,-1294,-1300,-1297,-1296,-1306,-1318,-1329,-1339,-1348,-1352,-1352,-1349,-1347,-1338,-1335,-1326,-1327,
+-1329,-1335,-1340,-1347,-1359,-1371,-1381,-1385,-1383,-1372,-1356,-1340,-1333,-1312,-1296,-1291,-1294,-1298,-1303,-1306,
+-1314,-1324,-1337,-1353,-1363,-1367,-1371,-1382,-1398,-1413,-1426,-1434,-1439,-1449,-1456,-1464,-1473,-1485,-1495,-1504,
+-1515,-1525,-1536,-1546,-1556,-1564,-1578,-1588,-1597,-1603,-1614,-1626,-1645,-1666,-1677,-1687,-1698,-1714,-1734,-1760,
+-1791,-1820,-1852,-1887,-1919,-1944,-1964,-1979,-1994,-2009,-2023,-2047,-2070,-2094,-2114,-2132,-2145,-2156,-2170,-2186,
+-2207,-2237,-2280,-2324,-2353,-2364,-2377,-2403,-2437,-2475,-2505,-2522,-2535,-2555,-2577,-2603,-2640,-2688,-2746,-2799,
+-2837,-2868,-2894,-2925,-2958,-2993,-3022,-3045,-3066,-3089,-3115,-3143,-3170,-3203,-3234,-3265,-3291,-3313,-3332,-3361,
+-3387,-3412,-3446,-3466,-3483,-3501,-3521,-3543,-3566,-3589,-3610,-3635,-3655,-3669,-3684,-3694,-3711,-3733,-3757,-3788,
+-3822,-3858,-3879,-3883,-3888,-3886,-3888,-3893,-3900,-3914,-3924,-3944,-3963,-3979,-3992,-3998,-3996,-4000,-3999,-4002,
+-4001,-4003,-4010,-4014,-4021,-4032,-4034,-4038,-4040,-4038,-4028,-4025,-4028,-4027,-4021,-4011,-3995,-3971,-3944,-3932,
+-3886,-3851,-3811,-3775,-3761,-3768,-3788,-3800,-3742,-3693,-3609,-3379,-3343,-3357,-3335,-3303,-3355,-3418,-3410,-3362,
+-3272,-3172,-3020,-2851,-2737,-2817,-2918,-2879,-2987,-2925,-3016,-2912,-2916,-2859,-2789,-2709,-2794,-2837,-2838,-2811,
+-2775,-2667,-2615,-2531,-2505,-2403,-2363,-2349,-2312,-2322,-2339,-2393,-2394,-2324,-2244,-2186,-2135,-2092,-2074,-2045,
+-2018,-2011,-2079,-2141,-2139,-2136,-2121,-2103,-2067,-1996,-1863,-1887,-1944,-1920,-1748,-1736,-1847,-1885,-1952,-1982,
+-2007,-2038,-2104,-2181,-2286,-2396,-2476,-2550,-2612,-2670,-2714,-2747,-2774,-2796,-2823,-2861,-2881,-2893,-2897,-2893,
+-2875,-2844,-2809,-2787,-2786,-2791,-2816,-2848,-2864,-2877,-2890,-2899,-2920,-2957,-2986,-2997,-2990,-2964,-2938,-2908,
+-2880,-2868,-2860,-2857,-2877,-2899,-2904,-2889,-2868,-2858,-2855,-2875,-2889,-2877,-2876,-2894,-2906,-2905,-2902,-2902,
+-2902,-2907,-2916,-2920,-2921,-2932,-2950,-2952,-2946,-2969,-2981,-2977,-2984,-3015,-3026,-3009,-2972,-2967,-3014,-3080,
+-3136,-3160,-3164,-3172,-3184,-3186,-3164,-3136,-3142,-3174,-3277,-3339,-3370,-3386,-3394,-3362,-3326,-3236,-3152,-3124,
+-3143,-3198,-3295,-3397,-3500,-3551,-3606,-3628,-3636,-3682,-3755,-3803,-3883,-3975,-4008,-3988,-3952,-3915,-3969,-4096,
+-4187,-4265,-4331,-4395,-4432,-4449,-4459,-4459,-4458,-4461,-4463,-4464,-4457,-4436,-4405,-4375,-4356,-4343,-4343,-4343,
+-4340,-4328,-4312,-4290,-4263,-4237,-4207,-4182,-4154,-4117,-4078,-4038,-3991,-3937,-3880,-3848,-3820,-3791,-3765,-3744,
+-3730,-3712,-3680,-3643,-3597,-3545,-3493,-3452,-3412,-3366,-3308,-3247,-3184,-3140,-3108,-3083,-3059,-3031,-2988,-2951,
+-2916,-2895,-2857,-2814,-2773,-2736,-2703,-2649,-2620,-2585,-2533,-2460,-2396,-2345,-2287,-2225,-2165,-2097,-2025,-1964,
+-1903,-1824,-1748,-1684,-1626,-1567,-1500,-1382,-1178,-1199,-1144,-1042,-990,-908,-763,-731,-654,-558,-475,-399,
+-339,-274,-221,-142,-53,26,119,221,312,404,491,577,650,734,824,908,990,1085,1174,1261,
+1338,1423,1519,1611,1705,1798,1900,2000,2102,2185,2256,2330,2424,2505,2578,2650,2723,2798,2868,2955,
+3067,3154,3244,3315,3394,3461,3528,3619,3703,3782,3885,3972,4037,4098,4184,4251,4314,4371,4437,4508,
+4533,4594,4669,4655,4662,4677,4688,4694,4719,4721,4752,4772,4806,4817,4832,4811,4831,4830,4842,4849,
+4859,4856,4860,4867,4868,4869,4871,4875,4865,4862,4853,4813,4790,4781,4811,4832,4842,4831,4810,4766,
+4725,4683,4643,4616,4579,4536,4504,4443,4402,4381,4368,4361,4333,4290,4255,4227,4200,4182,4163,4160,
+4163,4176,4193,4220,4255,4286,4334,4387,4438,4511,4589,4643,4698,4752,4830,4904,4982,4946,4830,4745,
+4677,4620,4583,4550,4542,4601,4651,4658,4669,4696,4697,4619,4502,4398,4332,4286,4272,4313,4351,4385,
+4423,4497,4585,4646,4610,4498,4386,4294,4222,4189,4203,4213,4218,4198,4192,4198,4234,4265,4272,4382,
+4515,4610,4692,4747,4776,4835,4811,4777,4743,4722,4695,4658,4627,4629,4628,4661,4767,4793,4815,4793,
+4762,4764,4753,4758,4754,4735,4719,4689,4633,4558,4508,4458,4396,4341,4281,4206,4154,4158,4186,4215,
+4230,4248,4255,4264,4279,4281,4289,4295,4301,4269,4250,4239,4220,4201,4170,4128,4035,3963,3884,3847,
+3869,3890,3891,3901,3902,3900,3899,3882,3872,3840,3803,3723,3701,3668,3637,3646,3703,3714,3706,3661,
+3588,3400,3127,3012,2953,2900,2862,2847,2853,2851,2848,2852,2826,2741,2639,2510,2371,2232,2091,1936,
+1771,1608,1457,1299,1179,1087,1011,979,1069,1337,1542,1843,2062,2306,2494,2620,2734,2811,2824,2817,
+2823,2755,2589,2437,2350,2190,2009,1960,1778,1630,1333,1016,837,832,922,1104,1227,1207,1129,1061,
+1056,1038,1111,1267,1464,1677,1910,2143,2358,2513,2569,2563,2544,2515,2485,2457,2429,2365,2287,2244,
+2242,2313,2511,2607,2631,2611,2548,2507,2477,2437,2386,2332,2272,2219,2183,2134,2084,2042,2013,1973,
+1912,1855,1799,1736,1667,1595,1528,1465,1394,1313,1227,1132,1043,962,880,826,843,884,960,1027,
+1061,1141,1220,1329,1413,1431,1400,1349,1297,1261,1192,1144,1103,1082,1021,940,873,768,640,560,
+511,463,440,434,424,440,451,442,339,227,164,36,-90,-188,-289,-437,-530,-578,-620,-658,
+-710,-821,-949,-1037,-1062,-1091,-1115,-1112,-1151,-1165,-1245,-1314,-1338,-1400,-1484,-1515,-1518,-1606,-1685,-1764,
+-1854,-1963,-2130,-2270,-2361,-2475,-2566,-2630,-2690,-2727,-2742,-2760,-2781,-2754,-2700,-2642,-2609,-2608,-2584,-2601,
+-2534,-2527,-2594,-2632,-2642,-2701,-2794,-2791,-2767,-2844,-2930,-3040,-3311,-3501,-3422,-3337,-3181,-3004,-2856,-2730,
+-2699,-2740,-2763,-2865,-2951,-3056,-2836,-2599,-2545,-2548,-2529,-2507,-2609,-2671,-2747,-2814,-3035,-3132,-2978,-2908,
+-2949,-2855,-2725,-2641,-2530,-2467,-2390,-2377,-2431,-2507,-2540,-2544,-2586,-2586,-2604,-2673,-2724,-2785,-2864,-2930,
+-2948,-2941,-2931,-2973,-3084,-3152,-3178,-3209,-3264,-3317,-3355,-3392,-3421,-3450,-3492,-3541,-3581,-3617,-3656,-3691,
+-3691,-3715,-3765,-3804,-3840,-3866,-3891,-3916,-3939,-3956,-3981,-4003,-4027,-4044,-4075,-4097,-4109,-4116,-4146,-4174,
+-4182,-4183,-4202,-4219,-4226,-4245,-4270,-4299,-4307,-4317,-4324,-4335,-4335,-4353,-4401,-4421,-4413,-4429,-4415,-4402,
+-4392,-4379,-4343,-4323,-4344,-4322,-4320,-4355,-4379,-4375,-4377,-4324,-4272,-4239,-4218,-4199,-4250,-4331,-4393,-4466,
+-4481,-4427,-4344,-4282,-4254,-4186,-4196,-4166,-4153,-4160,-4222,-4217,-4165,-4098,-4025,-4056,-4039,-4000,-3986,-3915,
+-3828,-3740,-3624,-3525,-3540,-3586,-3612,-3605,-3577,-3521,-3450,-3341,-3234,-3173,-3138,-3108,-3024,-2906,-2801,-2789,
+-2803,-2731,-2625,-2584,-2473,-2303,-2099,-2014,-1956,-1869,-1794,-1664,-1595,-1665,-1656,-1663,-1607,-1550,-1484,-1405,
+-1294,-1179,-1088,-988,-893,-778,-654,-538,-426,-317,-225,-135,-44,58,167,245,293,351,410,480,
+574,684,771,835,900,966,1039,1111,1179,1242,1298,1372,1456,1523,1606,1680,1765,1856,1948,2042,
+2116,2164,2234,2291,2340,2379,2448,2552,2644,2723,2765,2797,2876,2926,2958,2962,2946,2875,2810,2788,
+2796,2839,2923,3006,3058,3086,3110,3155,3223,3290,3352,3381,3399,3416,3440,3463,3504,3546,3573,3592,
+3581,3598,3642,3771,3866,3914,3970,4063,4220,4310,4327,4387,4282,4292,4201,4017,3808,3694,3623,3552,
+3429,3240,2972,2611,2231,1992,1785,1626,1596,1686,1743,1907,2066,2193,2286,2434,2428,2373,2347,2317,
+2282,2252,2225,2189,2152,2119,2088,2049,2004,1954,1898,1837,1778,1715,1654,1603,1548,1494,1433,1366,
+1308,1255,1200,1151,1099,1059,1026,988,947,902,841,782,720,668,618,576,552,537,517,488,
+458,428,389,355,313,284,262,242,216,200,179,153,122,78,30,-21,-81,-130,-183,-219,
+-262,-308,-334,-385,-427,-446,-484,-522,-558,-582,-604,-628,-659,-692,-729,-766,-807,-834,-856,-874,
+-894,-923,-952,-967,-980,-984,-979,-972,-964,-967,-970,-969,-973,-987,-1016,-1046,-1081,-1124,-1165,-1196,
+-1182,-1059,-787,-639,-601,-754,-953,-1099,-1198,-1243,-1233,-1193,-1144,-1097,-1071,-1053,-1047,-1043,-1044,-1047,
+-1041,-1035,-1037,-1045,-1053,-1058,-1040,-1005,-1002,-1005,-999,-1006,-1023,-1034,-1046,-1057,-1067,-1076,-1081,-1094,
+-1101,-1110,-1115,-1109,-1100,-1103,-1096,-1110,-1120,-1110,-1098,-1128,-1138,-1117,-1138,-1145,-1152,-1168,-1196,-1251,
+-1269,-1269,-1278,-1297,-1309,-1324,-1328,-1330,-1332,-1326,-1323,-1318,-1321,-1327,-1330,-1327,-1326,-1330,-1335,-1341,
+-1346,-1351,-1348,-1352,-1350,-1351,-1355,-1356,-1358,-1359,-1351,-1344,-1332,-1319,-1306,-1297,-1294,-1297,-1305,-1313,
+-1314,-1318,-1325,-1340,-1356,-1362,-1363,-1367,-1376,-1395,-1408,-1420,-1433,-1441,-1451,-1464,-1473,-1483,-1496,-1502,
+-1509,-1516,-1526,-1535,-1540,-1546,-1553,-1562,-1572,-1582,-1593,-1599,-1612,-1627,-1645,-1659,-1668,-1679,-1692,-1713,
+-1740,-1766,-1797,-1824,-1856,-1884,-1912,-1937,-1960,-1981,-1998,-2021,-2045,-2073,-2093,-2118,-2136,-2151,-2163,-2178,
+-2192,-2215,-2244,-2279,-2315,-2333,-2349,-2374,-2404,-2436,-2476,-2497,-2507,-2525,-2542,-2568,-2598,-2640,-2693,-2751,
+-2803,-2832,-2855,-2875,-2903,-2935,-2967,-2992,-3017,-3040,-3065,-3094,-3125,-3152,-3179,-3206,-3233,-3261,-3283,-3304,
+-3333,-3359,-3385,-3411,-3430,-3449,-3471,-3495,-3518,-3545,-3570,-3600,-3623,-3643,-3664,-3680,-3694,-3714,-3740,-3763,
+-3794,-3826,-3854,-3872,-3883,-3887,-3889,-3892,-3900,-3914,-3930,-3947,-3968,-3985,-3998,-4008,-4011,-4005,-4004,-4001,
+-4006,-4007,-4013,-4018,-4025,-4034,-4040,-4045,-4042,-4046,-4054,-4046,-4051,-4050,-4049,-4039,-4031,-4016,-3996,-3969,
+-3943,-3911,-3882,-3846,-3827,-3806,-3808,-3801,-3843,-3797,-3735,-3686,-3563,-3405,-3383,-3398,-3372,-3347,-3427,-3475,
+-3415,-3322,-3234,-3089,-2963,-2908,-2924,-3043,-3004,-3033,-3028,-3020,-3050,-3002,-2924,-2871,-2835,-2851,-2885,-2877,
+-2840,-2780,-2710,-2639,-2638,-2549,-2433,-2411,-2386,-2360,-2325,-2327,-2400,-2416,-2374,-2310,-2267,-2207,-2154,-2124,
+-2112,-2077,-2100,-2121,-2113,-2116,-2132,-2128,-2116,-2095,-2047,-1977,-1975,-2011,-1927,-1770,-1782,-1890,-1941,-1972,
+-2043,-2109,-2148,-2199,-2236,-2304,-2402,-2493,-2579,-2637,-2691,-2735,-2762,-2769,-2775,-2792,-2827,-2863,-2877,-2879,
+-2875,-2863,-2826,-2784,-2767,-2760,-2773,-2786,-2810,-2829,-2854,-2878,-2898,-2927,-2967,-3001,-3018,-3015,-2995,-2970,
+-2940,-2915,-2893,-2891,-2878,-2886,-2876,-2865,-2859,-2839,-2825,-2832,-2837,-2851,-2851,-2853,-2870,-2869,-2858,-2846,
+-2853,-2883,-2903,-2910,-2911,-2904,-2897,-2906,-2917,-2915,-2910,-2914,-2925,-2967,-2989,-2992,-2968,-2967,-3021,-3100,
+-3136,-3149,-3129,-3097,-3074,-3035,-3055,-3091,-3093,-3110,-3257,-3317,-3324,-3317,-3300,-3280,-3262,-3198,-3144,-3134,
+-3143,-3184,-3267,-3357,-3467,-3532,-3578,-3623,-3660,-3683,-3738,-3787,-3835,-3919,-3993,-4012,-3998,-3974,-3939,-4025,
+-4156,-4246,-4317,-4385,-4452,-4495,-4513,-4523,-4524,-4519,-4514,-4511,-4509,-4497,-4472,-4438,-4409,-4390,-4376,-4373,
+-4373,-4377,-4371,-4357,-4333,-4300,-4268,-4236,-4209,-4173,-4139,-4090,-4048,-4003,-3956,-3904,-3861,-3836,-3807,-3787,
+-3764,-3732,-3701,-3689,-3661,-3626,-3582,-3528,-3478,-3426,-3371,-3323,-3285,-3237,-3175,-3128,-3097,-3081,-3045,-3015,
+-2993,-2976,-2951,-2904,-2853,-2805,-2789,-2754,-2711,-2687,-2640,-2573,-2502,-2441,-2385,-2332,-2272,-2209,-2142,-2090,
+-2023,-1946,-1870,-1796,-1729,-1666,-1609,-1554,-1451,-1285,-1172,-1088,-1070,-1031,-952,-828,-792,-710,-623,-546,
+-480,-411,-341,-274,-199,-113,-4,155,193,267,357,453,544,631,722,795,882,960,1052,1140,
+1220,1298,1380,1470,1583,1683,1780,1861,1952,2043,2126,2217,2300,2387,2470,2546,2636,2714,2802,2889,
+2976,3026,3106,3195,3279,3365,3464,3521,3593,3672,3764,3824,3913,4006,4072,4131,4196,4276,4322,4382,
+4441,4455,4529,4548,4548,4573,4602,4607,4619,4639,4654,4662,4702,4712,4718,4719,4726,4764,4774,4788,
+4798,4824,4818,4807,4797,4797,4792,4799,4794,4762,4772,4762,4752,4703,4698,4701,4715,4716,4700,4679,
+4632,4600,4582,4530,4514,4499,4462,4403,4363,4313,4273,4243,4228,4206,4185,4167,4148,4139,4132,4127,
+4131,4145,4164,4201,4239,4275,4319,4377,4443,4503,4559,4623,4686,4738,4756,4830,4852,4830,4790,4700,
+4629,4569,4530,4507,4487,4487,4510,4526,4528,4526,4511,4476,4421,4364,4327,4316,4325,4323,4318,4321,
+4333,4359,4400,4434,4428,4367,4279,4184,4102,4036,4011,4032,4071,4112,4140,4155,4218,4294,4280,4253,
+4326,4484,4618,4691,4770,4799,4797,4839,4836,4844,4797,4803,4820,4806,4857,4913,4857,4847,4815,4853,
+4854,4820,4751,4751,4721,4730,4712,4669,4615,4552,4494,4440,4390,4352,4298,4225,4119,4038,3988,3950,
+3937,3973,4077,4145,4188,4188,4188,4194,4202,4202,4207,4163,4176,4145,4117,4060,3980,3913,3852,3807,
+3787,3796,3812,3814,3816,3823,3834,3834,3829,3822,3787,3754,3702,3650,3597,3574,3567,3576,3594,3590,
+3561,3521,3430,3208,3074,3012,2935,2867,2844,2853,2837,2836,2845,2796,2716,2629,2532,2414,2284,2150,
+2003,1837,1671,1513,1358,1212,1095,972,913,915,1021,1263,1490,1820,2137,2309,2402,2504,2594,2622,
+2634,2600,2468,2288,2119,1971,1791,1725,1575,1374,1268,1055,850,716,711,797,925,1058,1080,999,
+976,914,895,935,1049,1256,1543,1856,2133,2368,2563,2649,2669,2653,2642,2627,2566,2432,2304,2223,
+2174,2174,2300,2488,2585,2584,2570,2528,2487,2453,2421,2374,2309,2240,2180,2135,2109,2070,2009,1954,
+1910,1857,1807,1753,1686,1625,1554,1488,1413,1325,1225,1128,1027,927,827,750,695,692,739,776,
+832,872,934,1022,1131,1259,1314,1326,1300,1261,1214,1192,1157,1129,1088,1036,1010,970,890,781,
+635,551,446,342,271,238,219,251,247,193,162,18,-185,-297,-331,-365,-457,-523,-580,-668,
+-729,-812,-885,-985,-1063,-1079,-1063,-1097,-1139,-1174,-1211,-1253,-1283,-1293,-1330,-1385,-1451,-1484,-1520,-1622,
+-1772,-1843,-1892,-2014,-2201,-2287,-2378,-2463,-2521,-2570,-2583,-2596,-2611,-2567,-2458,-2386,-2336,-2310,-2308,-2328,
+-2348,-2351,-2353,-2345,-2376,-2467,-2514,-2484,-2509,-2539,-2663,-2772,-2960,-3055,-3099,-3128,-3116,-3043,-2996,-2903,
+-2836,-2792,-2806,-2869,-2998,-3091,-3106,-2891,-2758,-2686,-2643,-2674,-2676,-2709,-2823,-2886,-2846,-2920,-2948,-2803,
+-2734,-2805,-2742,-2592,-2568,-2541,-2446,-2335,-2366,-2423,-2481,-2507,-2543,-2586,-2605,-2620,-2656,-2712,-2743,-2768,
+-2800,-2785,-2765,-2786,-2856,-2955,-3021,-3065,-3126,-3193,-3257,-3301,-3355,-3403,-3445,-3481,-3528,-3561,-3586,-3619,
+-3647,-3666,-3706,-3734,-3757,-3799,-3831,-3857,-3886,-3908,-3928,-3953,-3983,-4000,-4016,-4049,-4074,-4065,-4073,-4115,
+-4141,-4163,-4172,-4174,-4183,-4187,-4205,-4220,-4240,-4253,-4265,-4294,-4320,-4323,-4314,-4300,-4289,-4281,-4281,-4280,
+-4280,-4276,-4279,-4268,-4245,-4247,-4228,-4247,-4269,-4237,-4233,-4230,-4174,-4141,-4123,-4106,-4107,-4152,-4207,-4302,
+-4315,-4293,-4297,-4240,-4134,-4052,-4037,-4073,-4013,-3972,-3995,-4111,-4140,-4112,-4073,-4008,-3967,-3985,-3960,-3940,
+-3896,-3822,-3740,-3614,-3494,-3495,-3560,-3595,-3600,-3587,-3542,-3476,-3379,-3275,-3197,-3175,-3143,-3087,-2969,-2871,
+-2891,-2925,-2832,-2710,-2591,-2422,-2216,-2062,-2033,-2001,-1922,-1853,-1755,-1776,-1799,-1763,-1729,-1661,-1591,-1510,
+-1407,-1275,-1171,-1073,-966,-871,-767,-656,-535,-427,-327,-211,-129,-32,69,164,219,281,357,432,
+501,580,685,765,826,917,992,1044,1110,1173,1236,1305,1382,1456,1544,1630,1711,1798,1885,1987,
+2076,2152,2213,2259,2286,2330,2401,2496,2561,2660,2732,2805,2828,2866,2917,2969,2966,2927,2888,2894,
+2895,2907,2954,3013,3080,3102,3134,3180,3244,3305,3372,3428,3453,3486,3504,3539,3576,3644,3645,3659,
+3660,3666,3653,3660,3698,3767,3795,3890,4024,4147,4272,4371,4390,4227,4247,4170,3955,3698,3557,3438,
+3321,3189,2997,2757,2429,2101,1865,1604,1461,1519,1675,1842,2005,2150,2264,2326,2383,2402,2388,2359,
+2326,2290,2253,2213,2177,2141,2105,2081,2043,2003,1959,1896,1825,1762,1705,1654,1610,1559,1510,1446,
+1380,1317,1264,1208,1152,1102,1057,1019,976,936,896,851,796,736,677,630,598,565,545,528,
+510,480,452,410,374,335,299,271,235,212,183,146,109,68,19,-23,-52,-91,-134,-162,
+-200,-236,-276,-311,-348,-397,-448,-480,-518,-556,-590,-614,-642,-675,-718,-758,-802,-839,-864,-880,
+-892,-913,-929,-953,-969,-974,-973,-961,-967,-955,-964,-965,-973,-974,-989,-1014,-1050,-1088,-1133,-1173,
+-1184,-1133,-969,-628,-379,-284,-400,-698,-986,-1193,-1262,-1244,-1194,-1137,-1096,-1057,-1011,-1021,-1025,-1028,
+-1034,-1040,-1037,-1037,-1040,-1046,-1045,-1017,-986,-984,-976,-981,-989,-1003,-1021,-1030,-1034,-1042,-1054,-1058,
+-1064,-1064,-1072,-1073,-1076,-1077,-1078,-1073,-1080,-1075,-1057,-1050,-1087,-1069,-1082,-1100,-1095,-1114,-1140,-1216,
+-1249,-1259,-1277,-1290,-1299,-1298,-1296,-1295,-1292,-1295,-1302,-1308,-1314,-1320,-1322,-1327,-1332,-1338,-1345,-1348,
+-1348,-1346,-1343,-1338,-1335,-1335,-1336,-1340,-1347,-1349,-1350,-1345,-1337,-1328,-1326,-1323,-1312,-1306,-1304,-1311,
+-1315,-1315,-1318,-1322,-1332,-1349,-1358,-1364,-1372,-1383,-1395,-1407,-1419,-1427,-1432,-1440,-1447,-1454,-1463,-1474,
+-1482,-1490,-1501,-1513,-1521,-1530,-1541,-1552,-1561,-1567,-1579,-1590,-1600,-1611,-1626,-1643,-1657,-1666,-1682,-1690,
+-1706,-1726,-1751,-1778,-1807,-1837,-1863,-1891,-1916,-1946,-1972,-1991,-2013,-2033,-2060,-2081,-2107,-2133,-2150,-2167,
+-2181,-2200,-2222,-2245,-2274,-2297,-2319,-2344,-2369,-2402,-2436,-2463,-2484,-2501,-2521,-2541,-2567,-2599,-2645,-2694,
+-2741,-2787,-2812,-2829,-2849,-2875,-2906,-2935,-2964,-2991,-3020,-3050,-3079,-3110,-3136,-3161,-3186,-3216,-3239,-3262,
+-3289,-3302,-3328,-3353,-3381,-3407,-3429,-3457,-3480,-3506,-3528,-3554,-3579,-3611,-3637,-3660,-3679,-3702,-3723,-3748,
+-3774,-3804,-3833,-3860,-3877,-3882,-3887,-3887,-3895,-3908,-3926,-3946,-3970,-3986,-4004,-4015,-4019,-4016,-4013,-4004,
+-4007,-4015,-4017,-4024,-4029,-4039,-4041,-4046,-4049,-4051,-4058,-4066,-4066,-4065,-4063,-4061,-4054,-4047,-4033,-4011,
+-3996,-3967,-3935,-3903,-3887,-3891,-3878,-3857,-3842,-3870,-3874,-3787,-3728,-3669,-3561,-3469,-3417,-3392,-3386,-3381,
+-3473,-3457,-3368,-3295,-3147,-3017,-2964,-3042,-3058,-3078,-3083,-3054,-3039,-3005,-3016,-2984,-2939,-2883,-2893,-2883,
+-2925,-2885,-2821,-2811,-2713,-2646,-2569,-2510,-2477,-2438,-2391,-2342,-2303,-2342,-2423,-2412,-2371,-2328,-2272,-2233,
+-2224,-2196,-2153,-2176,-2160,-2100,-2074,-2086,-2095,-2078,-2068,-2087,-2108,-2127,-2066,-1978,-1901,-1908,-1972,-2014,
+-2070,-2155,-2223,-2267,-2299,-2334,-2375,-2434,-2501,-2579,-2647,-2692,-2722,-2729,-2712,-2695,-2695,-2734,-2780,-2801,
+-2804,-2810,-2811,-2794,-2765,-2769,-2771,-2772,-2764,-2770,-2784,-2808,-2839,-2881,-2930,-2979,-3021,-3048,-3063,-3062,
+-3054,-3041,-3023,-3000,-2984,-2972,-2957,-2933,-2903,-2878,-2848,-2829,-2813,-2806,-2825,-2830,-2835,-2847,-2850,-2833,
+-2807,-2832,-2868,-2892,-2905,-2886,-2886,-2902,-2900,-2888,-2877,-2871,-2874,-2893,-2941,-2976,-2968,-2956,-3012,-3079,
+-3127,-3119,-3095,-3038,-2983,-2960,-2955,-2968,-3023,-3103,-3190,-3282,-3296,-3296,-3279,-3241,-3205,-3171,-3142,-3142,
+-3162,-3196,-3249,-3323,-3408,-3485,-3551,-3601,-3651,-3690,-3747,-3785,-3817,-3850,-3927,-3981,-3993,-3993,-3983,-3973,
+-4101,-4247,-4324,-4386,-4444,-4501,-4544,-4571,-4585,-4590,-4582,-4567,-4555,-4548,-4533,-4512,-4480,-4452,-4433,-4419,
+-4414,-4416,-4417,-4414,-4403,-4381,-4349,-4304,-4272,-4242,-4206,-4168,-4117,-4075,-4030,-3985,-3933,-3883,-3852,-3823,
+-3795,-3760,-3737,-3702,-3665,-3652,-3639,-3608,-3551,-3499,-3438,-3388,-3345,-3305,-3263,-3217,-3165,-3128,-3109,-3093,
+-3060,-3037,-3019,-2993,-2948,-2910,-2856,-2817,-2813,-2775,-2737,-2690,-2621,-2545,-2489,-2441,-2383,-2322,-2249,-2189,
+-2140,-2074,-1998,-1927,-1839,-1771,-1714,-1666,-1602,-1521,-1376,-1144,-1077,-969,-951,-1019,-975,-890,-797,-707,
+-628,-554,-465,-401,-316,-229,-116,-14,74,169,244,301,392,484,570,664,750,828,921,1003,
+1087,1173,1257,1339,1429,1545,1640,1732,1824,1915,2012,2089,2170,2254,2337,2419,2492,2576,2666,2762,
+2849,2942,3043,3105,3169,3247,3322,3412,3484,3559,3628,3712,3787,3870,3934,4031,4105,4154,4205,4251,
+4294,4380,4405,4455,4475,4482,4501,4527,4531,4543,4568,4582,4584,4626,4641,4646,4648,4664,4686,4703,
+4722,4724,4726,4727,4722,4721,4719,4727,4728,4713,4660,4657,4643,4635,4620,4607,4593,4563,4551,4548,
+4532,4486,4452,4426,4406,4398,4372,4360,4342,4296,4264,4217,4183,4145,4130,4121,4128,4120,4125,4135,
+4137,4150,4172,4195,4222,4257,4304,4364,4427,4494,4554,4611,4671,4733,4789,4797,4821,4841,4782,4711,
+4645,4562,4508,4489,4500,4514,4545,4582,4623,4631,4592,4530,4479,4447,4428,4421,4414,4420,4430,4429,
+4400,4353,4318,4290,4265,4230,4184,4131,4074,4021,3964,3934,3940,4001,4072,4122,4164,4233,4326,4374,
+4342,4392,4534,4672,4763,4800,4824,4871,4888,4909,4891,4858,4871,4878,4907,4935,4924,4917,4878,4853,
+4880,4888,4879,4813,4800,4791,4784,4745,4683,4617,4551,4490,4432,4382,4331,4284,4226,4119,4029,3946,
+3867,3798,3803,3859,3966,4036,4061,4050,4052,4076,4070,4067,4070,4051,4015,3958,3902,3844,3808,3792,
+3753,3742,3740,3734,3733,3735,3739,3747,3747,3748,3740,3721,3686,3645,3592,3535,3495,3474,3469,3474,
+3492,3476,3452,3414,3314,3171,3103,3023,2894,2855,2879,2850,2854,2845,2779,2705,2637,2560,2463,2345,
+2215,2076,1926,1767,1605,1462,1322,1170,1026,955,921,927,1034,1213,1555,1870,2103,2210,2310,2451,
+2435,2397,2372,2207,2048,1894,1665,1473,1305,1168,1061,947,862,718,598,598,667,757,831,860,
+837,767,704,709,800,933,1138,1427,1813,2236,2547,2758,2817,2824,2805,2728,2642,2478,2314,2197,
+2103,2068,2105,2249,2486,2639,2542,2526,2508,2474,2443,2413,2365,2305,2233,2175,2114,2073,2007,1948,
+1901,1849,1807,1764,1712,1663,1607,1543,1461,1364,1257,1140,1024,930,819,716,621,555,541,564,
+616,697,718,741,837,1030,1126,1220,1214,1257,1221,1191,1166,1144,1092,1033,987,955,897,853,
+789,668,528,433,333,238,131,63,25,-16,-71,-162,-257,-353,-413,-494,-523,-577,-639,-729,
+-800,-836,-872,-920,-986,-1054,-1099,-1106,-1137,-1175,-1229,-1312,-1373,-1419,-1434,-1469,-1503,-1522,-1533,-1548,
+-1596,-1687,-1874,-2018,-2093,-2165,-2217,-2287,-2331,-2375,-2399,-2418,-2436,-2428,-2423,-2359,-2302,-2252,-2252,-2260,
+-2235,-2230,-2235,-2241,-2249,-2335,-2347,-2296,-2307,-2325,-2438,-2595,-2736,-2755,-2701,-2719,-2857,-3016,-3082,-3044,
+-3029,-3134,-3065,-3133,-3169,-3228,-3337,-3264,-3207,-2963,-2883,-2796,-2793,-2763,-2584,-2652,-2779,-2850,-2792,-2735,
+-2612,-2504,-2593,-2601,-2543,-2549,-2572,-2511,-2397,-2375,-2361,-2444,-2490,-2529,-2571,-2629,-2649,-2666,-2721,-2787,
+-2824,-2817,-2782,-2771,-2797,-2843,-2935,-3005,-3039,-3099,-3174,-3241,-3282,-3322,-3357,-3394,-3430,-3477,-3521,-3548,
+-3572,-3605,-3638,-3677,-3698,-3711,-3752,-3787,-3815,-3856,-3875,-3898,-3923,-3950,-3954,-3968,-3999,-4026,-4034,-4069,
+-4097,-4115,-4136,-4148,-4142,-4156,-4158,-4176,-4202,-4222,-4226,-4233,-4249,-4276,-4290,-4291,-4276,-4267,-4257,-4256,
+-4245,-4233,-4220,-4220,-4214,-4203,-4196,-4169,-4177,-4165,-4136,-4128,-4122,-4105,-4099,-4079,-4051,-4043,-4064,-4099,
+-4159,-4211,-4194,-4167,-4111,-4042,-3973,-3953,-3939,-3909,-3910,-3922,-3906,-3920,-3973,-3987,-3933,-3917,-3943,-3969,
+-3920,-3878,-3822,-3764,-3653,-3513,-3497,-3550,-3586,-3600,-3596,-3574,-3526,-3438,-3332,-3247,-3192,-3154,-3134,-3080,
+-3010,-2975,-2930,-2822,-2728,-2590,-2361,-2265,-2149,-2058,-2052,-2016,-1991,-1949,-1928,-1894,-1845,-1777,-1700,-1618,
+-1521,-1396,-1276,-1176,-1067,-951,-858,-764,-670,-557,-445,-336,-227,-123,-16,77,150,212,300,397,
+459,521,609,684,768,855,932,1004,1061,1128,1203,1276,1343,1425,1509,1584,1659,1755,1837,1916,
+2028,2113,2173,2224,2246,2285,2346,2423,2511,2596,2702,2797,2798,2833,2880,2903,2935,2938,2899,2899,
+2932,2963,2988,3027,3087,3131,3152,3179,3235,3285,3356,3450,3513,3566,3608,3634,3670,3680,3733,3708,
+3694,3695,3710,3719,3642,3660,3711,3728,3843,4002,4162,4266,4324,4277,4123,4134,4065,3815,3669,3565,
+3454,3316,3114,2842,2489,2186,1821,1573,1398,1371,1537,1751,1954,2111,2235,2320,2367,2395,2413,2403,
+2377,2341,2308,2266,2213,2180,2147,2108,2077,2038,1999,1948,1890,1821,1757,1704,1655,1612,1568,1515,
+1460,1400,1341,1277,1211,1151,1105,1054,1004,960,923,888,848,803,755,694,637,604,583,556,
+543,530,498,467,431,394,358,318,283,234,205,162,121,74,34,11,11,-42,-91,-126,
+-153,-182,-217,-251,-280,-321,-373,-429,-481,-524,-561,-600,-634,-668,-704,-746,-794,-830,-859,-876,
+-888,-898,-908,-930,-940,-949,-953,-952,-950,-955,-941,-944,-955,-961,-970,-989,-1017,-1054,-1099,-1144,
+-1181,-1184,-1133,-1020,-772,-418,-177,-214,-451,-788,-1157,-1269,-1256,-1191,-1111,-1061,-1038,-1015,-1009,-1007,
+-1016,-1029,-1024,-1006,-1030,-1010,-1039,-1041,-984,-951,-947,-953,-961,-966,-986,-999,-1009,-1014,-1025,-1034,
+-1043,-1047,-1049,-1048,-1043,-1038,-1041,-1045,-1036,-1034,-1017,-1028,-1034,-1030,-1017,-1042,-1056,-1057,-1130,-1183,
+-1226,-1256,-1265,-1260,-1256,-1259,-1267,-1275,-1282,-1287,-1291,-1294,-1295,-1301,-1309,-1319,-1329,-1332,-1333,-1336,
+-1336,-1331,-1328,-1323,-1319,-1319,-1320,-1328,-1331,-1334,-1331,-1329,-1330,-1331,-1332,-1329,-1324,-1316,-1312,-1308,
+-1307,-1310,-1316,-1324,-1332,-1342,-1350,-1350,-1349,-1352,-1360,-1371,-1388,-1403,-1409,-1416,-1424,-1431,-1438,-1451,
+-1464,-1475,-1483,-1496,-1508,-1517,-1529,-1544,-1557,-1569,-1577,-1587,-1596,-1603,-1611,-1621,-1630,-1645,-1659,-1673,
+-1689,-1699,-1714,-1734,-1761,-1796,-1828,-1856,-1879,-1898,-1930,-1957,-1982,-2001,-2022,-2042,-2070,-2096,-2123,-2143,
+-2162,-2183,-2199,-2217,-2241,-2260,-2287,-2316,-2333,-2355,-2385,-2419,-2450,-2473,-2495,-2518,-2542,-2568,-2603,-2642,
+-2686,-2727,-2759,-2779,-2800,-2822,-2848,-2879,-2912,-2944,-2973,-3006,-3036,-3063,-3095,-3123,-3146,-3177,-3203,-3227,
+-3246,-3266,-3286,-3306,-3330,-3358,-3382,-3419,-3447,-3473,-3489,-3502,-3526,-3546,-3587,-3627,-3645,-3669,-3696,-3722,
+-3750,-3781,-3813,-3842,-3863,-3875,-3883,-3888,-3893,-3903,-3917,-3938,-3961,-3988,-4000,-4013,-4020,-4020,-4015,-4008,
+-4010,-4015,-4022,-4033,-4042,-4052,-4061,-4063,-4067,-4065,-4067,-4079,-4081,-4084,-4087,-4083,-4078,-4074,-4062,-4048,
+-4033,-4016,-3993,-3970,-3962,-3949,-3928,-3910,-3904,-3889,-3892,-3934,-3880,-3796,-3710,-3647,-3578,-3485,-3432,-3375,
+-3370,-3376,-3431,-3426,-3362,-3234,-3079,-3045,-3136,-3122,-3113,-3096,-3091,-3083,-3086,-3079,-3080,-2998,-2954,-2922,
+-2945,-2947,-2972,-2906,-2833,-2769,-2696,-2636,-2591,-2559,-2509,-2418,-2361,-2306,-2357,-2402,-2427,-2428,-2386,-2357,
+-2347,-2346,-2308,-2262,-2222,-2193,-2120,-2049,-2068,-2087,-2065,-2094,-2137,-2173,-2080,-2006,-2000,-1962,-1979,-2057,
+-2117,-2174,-2244,-2284,-2322,-2366,-2393,-2412,-2454,-2490,-2537,-2610,-2660,-2689,-2713,-2718,-2702,-2681,-2679,-2705,
+-2719,-2730,-2752,-2756,-2743,-2744,-2766,-2769,-2761,-2739,-2730,-2736,-2757,-2795,-2856,-2924,-2989,-3048,-3094,-3128,
+-3148,-3155,-3142,-3109,-3075,-3054,-3027,-3008,-2968,-2937,-2897,-2860,-2832,-2818,-2821,-2820,-2808,-2805,-2812,-2817,
+-2816,-2825,-2842,-2858,-2881,-2883,-2855,-2852,-2865,-2865,-2857,-2856,-2859,-2860,-2886,-2944,-2967,-2965,-2985,-3035,
+-3105,-3104,-3058,-3000,-2936,-2924,-2924,-2942,-2986,-3083,-3161,-3247,-3294,-3297,-3281,-3247,-3183,-3139,-3140,-3145,
+-3158,-3184,-3236,-3300,-3390,-3467,-3518,-3560,-3635,-3691,-3740,-3783,-3813,-3842,-3861,-3918,-3957,-3981,-3984,-3992,
+-4073,-4265,-4354,-4408,-4459,-4509,-4557,-4596,-4625,-4641,-4641,-4632,-4618,-4599,-4585,-4571,-4557,-4535,-4510,-4491,
+-4477,-4471,-4465,-4457,-4445,-4434,-4420,-4389,-4350,-4311,-4280,-4242,-4204,-4153,-4109,-4062,-4010,-3953,-3910,-3872,
+-3841,-3810,-3775,-3753,-3737,-3702,-3671,-3625,-3604,-3569,-3516,-3472,-3413,-3361,-3317,-3272,-3230,-3191,-3150,-3132,
+-3110,-3092,-3064,-3045,-3025,-3007,-2983,-2912,-2813,-2832,-2761,-2761,-2734,-2684,-2608,-2543,-2495,-2433,-2380,-2319,
+-2250,-2186,-2111,-2045,-1983,-1898,-1829,-1745,-1704,-1655,-1591,-1497,-1426,-1332,-1203,-1094,-1096,-1045,-949,-855,
+-781,-714,-613,-501,-387,-288,-213,-77,92,173,148,195,262,348,432,523,632,726,824,899,
+984,1062,1130,1217,1332,1417,1508,1600,1692,1795,1875,1960,2035,2120,2206,2295,2381,2461,2547,2626,
+2713,2820,2915,3001,3079,3172,3249,3318,3405,3490,3591,3674,3725,3765,3808,3836,3915,4001,4112,4183,
+4216,4256,4343,4341,4349,4365,4397,4407,4427,4453,4485,4503,4499,4501,4504,4527,4540,4547,4561,4567,
+4582,4605,4631,4643,4652,4661,4669,4669,4662,4657,4633,4556,4539,4537,4522,4499,4473,4430,4405,4417,
+4406,4384,4370,4343,4319,4301,4298,4251,4227,4220,4200,4183,4165,4129,4105,4087,4075,4075,4084,4100,
+4120,4145,4168,4194,4225,4255,4294,4341,4392,4457,4533,4615,4692,4739,4787,4829,4832,4912,4930,4789,
+4664,4682,4559,4531,4527,4546,4618,4724,4829,4829,4786,4750,4720,4699,4686,4584,4472,4413,4393,4392,
+4395,4369,4308,4243,4180,4137,4111,4096,4080,4079,4071,4027,3986,3964,3987,4050,4110,4169,4279,4371,
+4510,4548,4548,4645,4767,4855,4899,4938,4974,4934,4922,4916,4910,4898,4939,4956,4959,4949,4936,4917,
+4880,4898,4879,4882,4846,4840,4830,4815,4777,4698,4607,4534,4471,4409,4353,4329,4282,4225,4155,4035,
+3922,3818,3692,3618,3618,3670,3731,3734,3751,3814,3841,3864,3859,3873,3851,3818,3783,3745,3714,3716,
+3719,3695,3690,3673,3668,3651,3643,3651,3654,3654,3658,3651,3630,3605,3578,3535,3480,3450,3422,3404,
+3400,3414,3440,3431,3398,3335,3220,3088,3020,2972,2924,2911,2892,2852,2806,2765,2707,2648,2592,2515,
+2413,2299,2175,2044,1896,1739,1588,1440,1283,1139,1063,999,935,935,1012,1190,1514,1711,1763,1834,
+1989,2057,2037,1996,1871,1722,1523,1241,1043,885,835,788,634,583,483,464,480,548,609,638,
+639,627,597,577,610,708,872,1074,1323,1704,2215,2532,2813,2886,2831,2735,2597,2463,2291,2116,
+1987,1915,1932,2019,2218,2483,2607,2546,2495,2450,2440,2444,2442,2412,2340,2252,2164,2050,1966,1907,
+1865,1832,1797,1753,1710,1663,1620,1570,1512,1423,1309,1188,1061,936,830,723,629,528,444,408,
+414,451,529,580,660,773,923,1031,1061,1081,1119,1141,1158,1118,1095,1031,991,926,888,827,
+770,678,538,417,365,272,157,51,-6,-83,-144,-200,-255,-330,-407,-484,-562,-613,-698,-766,
+-823,-876,-886,-902,-938,-993,-1053,-1105,-1130,-1152,-1182,-1260,-1326,-1397,-1448,-1503,-1559,-1590,-1628,-1642,
+-1629,-1602,-1710,-1875,-2028,-2129,-2162,-2139,-2156,-2181,-2173,-2211,-2220,-2255,-2261,-2254,-2220,-2233,-2202,-2172,
+-2153,-2167,-2223,-2215,-2187,-2177,-2245,-2289,-2227,-2177,-2172,-2258,-2378,-2524,-2503,-2563,-2732,-2909,-3145,-3270,
+-3301,-3344,-3448,-3488,-3533,-3593,-3647,-3628,-3619,-3553,-3420,-3366,-3347,-3263,-2977,-2810,-2797,-2825,-2847,-2786,
+-2696,-2549,-2403,-2356,-2329,-2383,-2406,-2470,-2471,-2388,-2431,-2439,-2434,-2493,-2526,-2570,-2631,-2673,-2704,-2762,
+-2827,-2860,-2861,-2851,-2852,-2870,-2910,-2951,-2994,-3034,-3084,-3142,-3196,-3235,-3260,-3292,-3323,-3358,-3398,-3447,
+-3491,-3514,-3542,-3586,-3625,-3655,-3682,-3714,-3744,-3772,-3807,-3833,-3863,-3888,-3901,-3909,-3926,-3957,-3987,-3979,
+-4012,-4043,-4069,-4093,-4110,-4101,-4110,-4127,-4143,-4158,-4179,-4197,-4212,-4223,-4236,-4241,-4230,-4217,-4227,-4225,
+-4220,-4207,-4184,-4183,-4172,-4172,-4173,-4166,-4156,-4155,-4135,-4103,-4094,-4081,-4050,-4032,-4000,-3970,-3962,-3942,
+-3958,-4005,-4057,-4025,-3986,-3950,-3934,-3913,-3878,-3849,-3843,-3837,-3830,-3805,-3763,-3811,-3865,-3817,-3851,-3914,
+-3947,-3918,-3887,-3853,-3809,-3720,-3594,-3540,-3606,-3620,-3620,-3612,-3586,-3551,-3495,-3388,-3337,-3301,-3257,-3232,
+-3180,-3121,-3055,-2969,-2872,-2750,-2523,-2372,-2307,-2238,-2195,-2176,-2154,-2104,-2030,-1971,-1931,-1879,-1809,-1723,
+-1627,-1520,-1401,-1288,-1188,-1084,-962,-860,-760,-666,-565,-455,-354,-242,-125,-16,70,132,227,337,
+415,470,543,618,702,763,863,957,1018,1079,1158,1237,1308,1392,1475,1559,1636,1715,1796,1866,
+1941,2022,2101,2162,2212,2245,2299,2366,2440,2539,2629,2689,2739,2785,2845,2871,2888,2910,2898,2910,
+2961,2980,3021,3027,3069,3114,3143,3169,3220,3282,3361,3420,3491,3555,3604,3606,3614,3635,3656,3675,
+3681,3679,3710,3721,3706,3707,3728,3722,3723,3824,3976,4089,4142,4149,4102,3986,3992,4017,3809,3678,
+3613,3465,3223,3005,2664,2258,1877,1551,1362,1280,1351,1599,1855,2055,2211,2307,2375,2410,2429,2438,
+2428,2405,2365,2319,2273,2235,2212,2184,2126,2081,2040,1991,1936,1878,1815,1757,1701,1654,1614,1573,
+1526,1475,1417,1360,1294,1228,1164,1105,1048,1001,960,918,878,830,787,752,712,659,620,601,
+577,552,538,507,471,440,413,379,338,298,251,205,182,147,93,49,14,-12,-54,-84,
+-117,-142,-165,-190,-227,-261,-310,-362,-413,-466,-523,-572,-610,-646,-688,-730,-778,-820,-846,-862,
+-873,-879,-890,-903,-916,-927,-930,-930,-942,-940,-940,-928,-930,-939,-949,-965,-986,-1021,-1058,-1103,
+-1151,-1178,-1181,-1149,-1057,-910,-620,-334,-209,-305,-714,-1099,-1249,-1238,-1155,-1074,-1023,-998,-982,-950,
+-966,-962,-986,-941,-1000,-1013,-987,-1028,-1017,-944,-934,-915,-930,-939,-952,-969,-975,-980,-995,-996,
+-999,-1004,-1000,-1019,-1024,-1017,-1013,-1016,-1015,-1000,-1005,-1002,-993,-974,-961,-950,-992,-992,-1104,-1196,
+-1218,-1221,-1222,-1231,-1235,-1244,-1258,-1262,-1267,-1268,-1268,-1274,-1283,-1289,-1294,-1299,-1302,-1305,-1308,-1310,
+-1314,-1315,-1317,-1314,-1311,-1312,-1310,-1311,-1311,-1312,-1313,-1309,-1306,-1312,-1307,-1310,-1307,-1302,-1302,-1304,
+-1304,-1303,-1301,-1298,-1298,-1301,-1309,-1317,-1329,-1339,-1345,-1353,-1364,-1379,-1392,-1403,-1414,-1420,-1427,-1432,
+-1447,-1462,-1473,-1485,-1496,-1509,-1518,-1528,-1538,-1552,-1565,-1577,-1587,-1599,-1604,-1609,-1614,-1618,-1626,-1641,
+-1658,-1680,-1693,-1707,-1725,-1745,-1778,-1810,-1839,-1862,-1885,-1912,-1933,-1962,-1986,-2007,-2030,-2055,-2087,-2111,
+-2135,-2159,-2179,-2195,-2213,-2236,-2255,-2278,-2295,-2316,-2338,-2365,-2397,-2431,-2462,-2490,-2520,-2544,-2572,-2603,
+-2639,-2674,-2708,-2727,-2755,-2769,-2802,-2832,-2866,-2902,-2929,-2965,-2994,-3020,-3048,-3076,-3110,-3135,-3164,-3188,
+-3215,-3232,-3246,-3269,-3292,-3316,-3338,-3367,-3397,-3422,-3435,-3460,-3474,-3496,-3531,-3562,-3585,-3624,-3647,-3677,
+-3713,-3745,-3784,-3818,-3847,-3863,-3872,-3875,-3883,-3901,-3920,-3939,-3956,-3980,-3997,-4010,-4018,-4019,-4016,-4013,
+-4013,-4020,-4032,-4042,-4047,-4059,-4072,-4078,-4082,-4086,-4089,-4093,-4097,-4096,-4097,-4097,-4093,-4089,-4087,-4079,
+-4066,-4052,-4036,-4017,-4007,-3992,-3970,-3957,-3944,-3940,-3943,-3955,-3971,-3933,-3848,-3759,-3703,-3646,-3568,-3529,
+-3458,-3373,-3356,-3333,-3332,-3296,-3190,-3087,-3160,-3183,-3184,-3166,-3168,-3131,-3145,-3141,-3139,-3125,-3085,-3000,
+-3014,-3012,-3032,-3049,-2980,-2873,-2849,-2782,-2709,-2638,-2627,-2584,-2507,-2440,-2379,-2345,-2375,-2435,-2444,-2452,
+-2440,-2446,-2420,-2378,-2337,-2288,-2231,-2162,-2089,-2092,-2123,-2141,-2160,-2193,-2211,-2092,-1993,-2021,-2013,-2033,
+-2107,-2184,-2255,-2304,-2337,-2369,-2398,-2414,-2436,-2470,-2517,-2566,-2614,-2656,-2688,-2722,-2748,-2769,-2766,-2757,
+-2771,-2780,-2745,-2694,-2645,-2652,-2667,-2718,-2735,-2710,-2694,-2683,-2685,-2704,-2743,-2817,-2904,-2995,-3079,-3140,
+-3181,-3218,-3221,-3203,-3160,-3116,-3070,-3042,-2998,-2949,-2905,-2863,-2828,-2810,-2807,-2805,-2789,-2776,-2774,-2783,
+-2804,-2825,-2839,-2851,-2855,-2863,-2872,-2855,-2828,-2831,-2832,-2829,-2825,-2845,-2870,-2916,-2950,-2959,-2985,-3004,
+-3064,-3079,-3066,-2993,-2976,-2963,-2939,-2922,-3010,-3110,-3174,-3217,-3243,-3252,-3258,-3239,-3197,-3166,-3144,-3137,
+-3160,-3180,-3225,-3301,-3367,-3435,-3497,-3544,-3599,-3672,-3729,-3785,-3826,-3858,-3865,-3879,-3905,-3940,-3973,-3976,
+-4059,-4284,-4407,-4452,-4489,-4524,-4568,-4611,-4648,-4674,-4686,-4680,-4666,-4653,-4633,-4620,-4615,-4612,-4602,-4579,
+-4560,-4547,-4530,-4513,-4495,-4483,-4474,-4460,-4437,-4397,-4358,-4313,-4272,-4227,-4183,-4139,-4087,-4044,-3993,-3946,
+-3902,-3867,-3836,-3814,-3792,-3758,-3715,-3688,-3654,-3609,-3561,-3538,-3482,-3434,-3385,-3336,-3283,-3245,-3218,-3188,
+-3155,-3122,-3100,-3075,-3054,-3040,-3026,-3017,-2980,-2933,-2911,-2809,-2741,-2735,-2718,-2671,-2602,-2538,-2485,-2423,
+-2366,-2301,-2242,-2169,-2097,-2016,-1941,-1885,-1804,-1746,-1689,-1619,-1520,-1496,-1441,-1347,-1232,-1103,-1015,-884,
+-829,-784,-722,-621,-482,-240,-256,-235,-164,-68,21,80,143,231,322,398,492,619,697,787,
+867,943,1017,1124,1213,1294,1380,1460,1553,1647,1734,1815,1907,2007,2102,2193,2275,2359,2432,2517,
+2597,2686,2793,2880,2963,3070,3140,3216,3304,3388,3487,3567,3646,3735,3801,3837,3919,3973,4016,4038,
+4030,4048,4103,4159,4206,4239,4271,4290,4308,4336,4370,4405,4415,4418,4421,4428,4460,4466,4455,4442,
+4440,4460,4482,4511,4535,4546,4567,4588,4608,4612,4607,4600,4485,4438,4432,4424,4395,4347,4304,4292,
+4302,4290,4288,4268,4242,4240,4231,4193,4170,4158,4144,4130,4115,4098,4077,4058,4050,4052,4059,4079,
+4096,4117,4146,4177,4201,4229,4263,4294,4340,4398,4475,4557,4648,4748,4805,4832,4820,4817,4805,4758,
+4661,4584,4610,4620,4596,4575,4612,4729,4864,4924,4826,4814,4871,4920,4860,4721,4534,4393,4320,4300,
+4308,4281,4233,4190,4129,4079,4051,4047,4063,4081,4092,4081,4060,4042,4040,4048,4048,4067,4133,4195,
+4317,4436,4579,4709,4805,4912,4989,5002,4998,4995,5001,4990,4976,4997,5007,4984,4997,4996,4977,4961,
+4929,4898,4923,4916,4903,4859,4825,4794,4753,4707,4633,4552,4487,4429,4385,4347,4304,4255,4177,4074,
+3969,3846,3709,3595,3495,3414,3370,3342,3339,3371,3432,3494,3568,3623,3651,3635,3604,3583,3583,3596,
+3610,3616,3616,3620,3605,3588,3576,3569,3568,3561,3567,3575,3568,3546,3520,3487,3445,3412,3393,3378,
+3360,3372,3397,3403,3381,3361,3321,3232,3105,3010,2949,2889,2839,2814,2789,2775,2749,2703,2651,2605,
+2547,2466,2375,2276,2160,2023,1869,1721,1591,1464,1329,1201,1089,1000,956,945,1016,1205,1431,1463,
+1432,1482,1545,1589,1589,1476,1240,1029,807,692,617,537,420,313,287,304,332,375,438,498,
+531,549,558,560,571,599,679,835,1031,1246,1489,1844,2138,2358,2455,2430,2358,2210,2088,1992,
+1895,1814,1799,1842,1963,2211,2428,2551,2543,2480,2431,2431,2404,2372,2344,2285,2186,2081,1988,1910,
+1854,1822,1792,1754,1711,1659,1606,1555,1508,1444,1351,1237,1119,986,854,739,626,516,430,351,
+284,252,259,308,392,527,689,835,880,915,935,986,973,1005,970,1004,1007,953,873,849,
+801,751,721,623,376,275,220,143,26,-64,-105,-114,-178,-242,-330,-433,-545,-630,-691,-746,
+-804,-848,-885,-909,-938,-974,-1023,-1069,-1104,-1124,-1136,-1147,-1252,-1327,-1366,-1401,-1461,-1532,-1600,-1648,
+-1668,-1680,-1684,-1704,-1852,-2014,-2141,-2155,-2105,-2057,-2029,-2004,-1997,-1986,-1989,-2010,-2046,-2051,-2033,-2036,
+-2052,-2064,-2080,-2129,-2153,-2154,-2156,-2210,-2225,-2219,-2140,-2143,-2186,-2304,-2434,-2488,-2553,-2662,-2871,-3156,
+-3379,-3605,-3700,-3839,-3799,-3825,-3971,-3993,-4063,-4056,-4006,-3957,-3824,-3811,-3706,-3404,-3241,-3101,-3121,-3100,
+-2984,-2820,-2617,-2409,-2286,-2259,-2305,-2390,-2359,-2372,-2412,-2449,-2507,-2450,-2482,-2542,-2581,-2647,-2694,-2744,
+-2785,-2804,-2838,-2863,-2874,-2874,-2866,-2887,-2919,-2964,-3007,-3039,-3081,-3138,-3171,-3206,-3245,-3280,-3298,-3322,
+-3352,-3402,-3433,-3467,-3507,-3551,-3599,-3635,-3662,-3694,-3722,-3761,-3777,-3799,-3830,-3857,-3888,-3919,-3943,-3961,
+-3957,-3962,-4000,-4027,-4055,-4070,-4069,-4075,-4103,-4119,-4130,-4141,-4156,-4169,-4184,-4212,-4220,-4205,-4184,-4186,
+-4187,-4182,-4182,-4159,-4162,-4153,-4139,-4135,-4118,-4102,-4091,-4090,-4074,-4053,-4037,-4020,-3990,-3956,-3908,-3881,
+-3869,-3882,-3913,-3923,-3924,-3908,-3875,-3851,-3851,-3815,-3784,-3795,-3801,-3795,-3761,-3732,-3739,-3775,-3752,-3776,
+-3844,-3885,-3896,-3893,-3888,-3867,-3779,-3687,-3609,-3638,-3682,-3650,-3596,-3568,-3554,-3536,-3491,-3450,-3429,-3385,
+-3333,-3258,-3172,-3039,-2861,-2786,-2691,-2551,-2408,-2345,-2301,-2268,-2232,-2160,-2075,-2005,-1954,-1921,-1879,-1815,
+-1726,-1628,-1519,-1402,-1299,-1200,-1078,-942,-847,-749,-660,-566,-465,-360,-248,-133,-23,59,144,241,
+338,427,494,568,652,731,818,904,976,1034,1099,1178,1256,1337,1420,1507,1590,1670,1751,1829,
+1894,1953,2016,2078,2142,2203,2263,2317,2383,2471,2557,2611,2664,2723,2785,2827,2855,2885,2893,2894,
+2992,3024,3026,3031,3050,3090,3123,3172,3210,3259,3329,3411,3431,3446,3486,3554,3571,3586,3608,3629,
+3634,3651,3673,3703,3715,3787,3856,3867,3794,3783,3832,3907,3950,3969,3975,3975,3929,4011,4024,3927,
+3825,3656,3422,3114,2851,2517,2086,1685,1388,1217,1162,1344,1657,1941,2141,2281,2352,2418,2458,2474,
+2475,2459,2437,2400,2353,2303,2261,2231,2196,2145,2088,2036,1981,1926,1863,1807,1752,1703,1662,1624,
+1587,1548,1505,1449,1393,1326,1252,1192,1121,1061,1011,967,924,878,831,791,754,721,682,646,
+613,584,552,523,500,477,453,420,392,356,316,270,230,197,156,113,82,45,0,-19,
+-46,-88,-116,-146,-171,-194,-232,-295,-349,-413,-459,-508,-563,-609,-654,-700,-745,-786,-822,-845,
+-857,-862,-868,-883,-898,-910,-915,-912,-923,-935,-926,-935,-922,-923,-929,-944,-961,-984,-1014,-1053,
+-1100,-1143,-1167,-1173,-1172,-1121,-1027,-836,-547,-298,-406,-813,-1109,-1230,-1198,-1102,-1027,-968,-938,-934,
+-929,-934,-928,-934,-953,-977,-982,-988,-1007,-981,-957,-926,-917,-918,-915,-933,-948,-937,-948,-964,
+-968,-966,-967,-963,-984,-980,-990,-987,-994,-985,-977,-980,-958,-939,-927,-931,-950,-927,-990,-1141,
+-1179,-1170,-1169,-1179,-1195,-1212,-1220,-1227,-1237,-1248,-1261,-1266,-1264,-1264,-1270,-1274,-1279,-1283,-1288,-1292,
+-1298,-1301,-1305,-1303,-1302,-1299,-1300,-1298,-1298,-1294,-1294,-1295,-1286,-1276,-1278,-1277,-1273,-1275,-1276,-1277,
+-1276,-1272,-1269,-1271,-1278,-1275,-1281,-1286,-1308,-1331,-1343,-1345,-1350,-1362,-1373,-1385,-1398,-1410,-1417,-1424,
+-1433,-1443,-1456,-1471,-1484,-1496,-1509,-1512,-1523,-1530,-1541,-1552,-1564,-1577,-1588,-1594,-1601,-1603,-1605,-1613,
+-1624,-1642,-1662,-1680,-1697,-1713,-1731,-1753,-1782,-1811,-1840,-1863,-1886,-1912,-1940,-1970,-1992,-2013,-2039,-2069,
+-2093,-2120,-2148,-2172,-2193,-2211,-2234,-2255,-2271,-2280,-2297,-2318,-2349,-2386,-2421,-2452,-2480,-2506,-2532,-2561,
+-2598,-2630,-2658,-2687,-2711,-2732,-2758,-2790,-2818,-2854,-2889,-2919,-2946,-2977,-2998,-3022,-3053,-3088,-3118,-3143,
+-3172,-3197,-3219,-3235,-3251,-3276,-3298,-3317,-3341,-3361,-3380,-3399,-3420,-3449,-3473,-3503,-3544,-3569,-3600,-3629,
+-3667,-3707,-3741,-3780,-3815,-3840,-3855,-3867,-3871,-3885,-3904,-3924,-3943,-3961,-3984,-4000,-4013,-4017,-4020,-4025,
+-4024,-4033,-4041,-4052,-4059,-4065,-4077,-4086,-4093,-4099,-4103,-4109,-4113,-4113,-4108,-4106,-4103,-4103,-4105,-4100,
+-4096,-4085,-4073,-4059,-4043,-4028,-4012,-3998,-3987,-3974,-3966,-3957,-3951,-3975,-3973,-3868,-3792,-3747,-3699,-3619,
+-3582,-3547,-3434,-3319,-3267,-3187,-3133,-3210,-3219,-3234,-3244,-3202,-3185,-3173,-3141,-3121,-3150,-3162,-3159,-3097,
+-3084,-3102,-3070,-3055,-3084,-3054,-2974,-2901,-2868,-2799,-2719,-2682,-2636,-2574,-2580,-2505,-2386,-2362,-2408,-2451,
+-2464,-2468,-2459,-2430,-2394,-2359,-2310,-2246,-2162,-2133,-2139,-2122,-2138,-2145,-2233,-2250,-2121,-2039,-2058,-2042,
+-2039,-2106,-2199,-2284,-2351,-2386,-2393,-2401,-2409,-2440,-2482,-2540,-2589,-2632,-2665,-2697,-2735,-2792,-2822,-2822,
+-2824,-2860,-2872,-2850,-2800,-2713,-2641,-2610,-2640,-2695,-2688,-2658,-2641,-2634,-2644,-2684,-2770,-2874,-2987,-3094,
+-3174,-3226,-3247,-3234,-3202,-3149,-3096,-3033,-2974,-2913,-2857,-2810,-2766,-2750,-2753,-2768,-2775,-2767,-2758,-2768,
+-2783,-2806,-2817,-2825,-2828,-2828,-2823,-2833,-2835,-2826,-2816,-2808,-2776,-2772,-2828,-2915,-2974,-2971,-2979,-2967,
+-2992,-3025,-3048,-3037,-2987,-2970,-2958,-2979,-3045,-3123,-3180,-3192,-3195,-3202,-3202,-3205,-3204,-3188,-3172,-3145,
+-3162,-3184,-3225,-3276,-3340,-3403,-3489,-3550,-3600,-3656,-3723,-3781,-3820,-3827,-3848,-3862,-3886,-3913,-3956,-3975,
+-4058,-4289,-4449,-4509,-4536,-4564,-4593,-4625,-4663,-4701,-4723,-4728,-4724,-4709,-4690,-4671,-4662,-4665,-4668,-4663,
+-4649,-4631,-4609,-4584,-4555,-4531,-4511,-4498,-4487,-4464,-4433,-4394,-4347,-4313,-4272,-4219,-4173,-4122,-4072,-4016,
+-3977,-3944,-3895,-3840,-3820,-3797,-3768,-3726,-3693,-3665,-3635,-3604,-3562,-3507,-3461,-3411,-3358,-3316,-3279,-3243,
+-3222,-3191,-3158,-3133,-3097,-3066,-3064,-3056,-3037,-3016,-2988,-2955,-2904,-2801,-2669,-2696,-2718,-2667,-2597,-2521,
+-2464,-2411,-2358,-2289,-2219,-2153,-2066,-1976,-1922,-1859,-1792,-1727,-1616,-1571,-1503,-1408,-1374,-1296,-1146,-944,
+-786,-724,-665,-573,-583,-563,-461,-374,-312,-253,-173,-72,19,106,197,288,381,466,565,667,
+755,830,916,999,1088,1174,1262,1361,1439,1523,1604,1693,1788,1867,1945,2031,2130,2229,2330,2432,
+2520,2572,2654,2733,2835,2941,3022,3123,3212,3300,3375,3453,3556,3639,3700,3794,3793,3866,3918,3923,
+3957,3993,4036,4068,4096,4124,4126,4131,4141,4175,4207,4242,4288,4311,4333,4338,4361,4368,4375,4443,
+4395,4362,4373,4406,4431,4450,4478,4499,4519,4522,4509,4542,4527,4404,4373,4379,4328,4253,4205,4168,
+4151,4130,4118,4113,4107,4100,4096,4097,4081,4057,4056,4038,4031,4025,4021,4014,4004,3998,4006,4026,
+4045,4075,4105,4141,4168,4204,4229,4258,4284,4324,4381,4455,4551,4667,4787,4830,4804,4758,4740,4709,
+4658,4602,4556,4599,4763,4620,4548,4568,4606,4627,4600,4574,4582,4610,4609,4516,4434,4349,4282,4236,
+4229,4234,4183,4113,4060,4009,3990,3986,3984,4000,4033,4044,4040,4036,4046,4069,4067,4049,4036,4073,
+4131,4200,4291,4463,4650,4794,4945,5036,5041,5045,5039,5039,5083,5088,5054,5041,5071,5099,5066,5014,
+4987,4951,4923,4919,4878,4843,4792,4745,4711,4672,4628,4572,4507,4452,4419,4382,4325,4257,4204,4112,
+3972,3850,3734,3624,3515,3405,3298,3209,3149,3128,3131,3167,3216,3277,3348,3387,3408,3415,3421,3450,
+3492,3496,3506,3518,3518,3511,3503,3495,3486,3478,3478,3482,3483,3483,3478,3468,3442,3395,3351,3340,
+3340,3323,3314,3345,3357,3327,3313,3257,3158,3079,3004,2933,2878,2819,2802,2801,2779,2748,2695,2641,
+2595,2554,2497,2434,2361,2264,2142,2003,1869,1745,1632,1523,1382,1235,1109,1005,947,931,1007,1065,
+1110,1213,1272,1313,1336,1280,1139,850,630,518,484,432,332,183,128,153,210,265,334,416,
+484,526,561,590,615,643,679,744,852,1001,1169,1325,1458,1608,1779,1852,1887,1923,1922,1853,
+1776,1745,1729,1751,1819,1976,2255,2492,2666,2590,2528,2433,2379,2313,2261,2217,2158,2077,2003,1937,
+1884,1843,1814,1784,1739,1678,1613,1546,1488,1423,1349,1260,1157,1042,906,771,652,537,421,317,
+239,174,125,108,143,259,414,633,759,776,760,773,804,772,810,793,824,853,821,802,
+788,755,694,676,608,439,325,212,96,14,-50,-92,-113,-147,-206,-322,-438,-543,-624,-682,
+-744,-812,-844,-870,-899,-941,-988,-1035,-1070,-1095,-1117,-1142,-1183,-1278,-1316,-1274,-1288,-1364,-1456,-1559,
+-1631,-1665,-1679,-1671,-1745,-1824,-1970,-2065,-2090,-2100,-2084,-2067,-2021,-1966,-1895,-1857,-1917,-1911,-1901,-1937,
+-1951,-1973,-2023,-2069,-2092,-2097,-2121,-2088,-2112,-2190,-2170,-2129,-2170,-2243,-2332,-2424,-2495,-2570,-2693,-2902,
+-3091,-3338,-3621,-3872,-4066,-4187,-4183,-4214,-4299,-4363,-4383,-4387,-4288,-4220,-4123,-3993,-3870,-3634,-3450,-3352,
+-3352,-3193,-2948,-2723,-2488,-2283,-2233,-2291,-2335,-2372,-2369,-2323,-2350,-2467,-2499,-2440,-2510,-2533,-2626,-2681,
+-2731,-2772,-2797,-2833,-2851,-2868,-2857,-2818,-2795,-2822,-2911,-2978,-3018,-3055,-3093,-3120,-3158,-3203,-3231,-3249,
+-3283,-3295,-3340,-3375,-3399,-3407,-3441,-3495,-3542,-3584,-3631,-3662,-3693,-3714,-3741,-3787,-3819,-3849,-3877,-3903,
+-3922,-3921,-3922,-3944,-3960,-3984,-4016,-4045,-4063,-4085,-4094,-4111,-4119,-4125,-4133,-4136,-4145,-4145,-4144,-4152,
+-4146,-4153,-4161,-4160,-4163,-4164,-4144,-4111,-4086,-4070,-4050,-4038,-4035,-4022,-3997,-3986,-3972,-3951,-3933,-3895,
+-3844,-3812,-3821,-3831,-3832,-3835,-3839,-3841,-3816,-3780,-3751,-3743,-3744,-3733,-3718,-3682,-3660,-3665,-3688,-3712,
+-3702,-3730,-3763,-3794,-3800,-3837,-3842,-3811,-3724,-3703,-3707,-3726,-3717,-3684,-3635,-3638,-3639,-3616,-3566,-3496,
+-3398,-3278,-3127,-2965,-2870,-2803,-2742,-2596,-2452,-2421,-2413,-2348,-2273,-2204,-2098,-2004,-1964,-1924,-1888,-1850,
+-1796,-1714,-1621,-1515,-1402,-1299,-1204,-1096,-972,-866,-763,-677,-572,-463,-356,-246,-143,-36,56,144,
+234,330,433,524,594,668,752,831,905,977,1038,1112,1194,1278,1354,1434,1529,1617,1702,1784,
+1856,1915,1973,2026,2076,2140,2211,2276,2345,2407,2469,2535,2608,2666,2726,2783,2822,2854,2888,2902,
+2956,3042,3039,3025,3045,3064,3115,3169,3200,3238,3282,3333,3351,3349,3410,3458,3488,3523,3572,3611,
+3654,3657,3673,3684,3708,3797,3898,3989,3984,3891,3846,3843,3850,3848,3829,3855,3909,3821,3932,3976,
+3991,3927,3729,3547,3222,2894,2497,2005,1529,1216,1065,1063,1344,1713,2006,2194,2322,2407,2504,2556,
+2564,2548,2511,2476,2442,2401,2346,2294,2249,2199,2142,2092,2042,1981,1926,1870,1812,1761,1711,1670,
+1635,1602,1567,1521,1471,1425,1359,1286,1220,1140,1082,1036,985,933,881,840,805,769,739,706,
+670,624,583,549,516,488,473,450,428,401,369,333,296,261,239,217,182,140,100,66,
+42,10,-22,-62,-98,-126,-170,-229,-285,-337,-391,-448,-500,-553,-604,-652,-696,-738,-772,-802,
+-828,-840,-850,-865,-878,-890,-899,-904,-903,-913,-919,-918,-924,-925,-922,-929,-941,-954,-974,-1002,
+-1041,-1089,-1130,-1172,-1201,-1220,-1217,-1164,-997,-741,-499,-709,-970,-1169,-1225,-1162,-1057,-961,-915,-886,
+-885,-884,-893,-892,-915,-927,-939,-942,-962,-979,-963,-938,-919,-911,-899,-888,-902,-910,-895,-898,
+-919,-916,-946,-957,-955,-962,-980,-994,-978,-972,-943,-929,-950,-952,-951,-940,-920,-950,-968,-1079,
+-1147,-1150,-1135,-1126,-1135,-1156,-1177,-1199,-1217,-1234,-1240,-1238,-1243,-1249,-1254,-1254,-1257,-1262,-1268,-1277,
+-1285,-1289,-1292,-1290,-1284,-1280,-1277,-1280,-1283,-1283,-1279,-1277,-1271,-1259,-1254,-1249,-1241,-1236,-1239,-1240,
+-1238,-1239,-1236,-1238,-1244,-1253,-1258,-1264,-1271,-1291,-1315,-1328,-1325,-1331,-1344,-1360,-1374,-1387,-1398,-1403,
+-1411,-1419,-1428,-1445,-1463,-1480,-1492,-1503,-1509,-1512,-1515,-1521,-1531,-1544,-1557,-1568,-1581,-1587,-1589,-1596,
+-1602,-1612,-1625,-1642,-1657,-1675,-1693,-1709,-1731,-1757,-1778,-1812,-1844,-1870,-1899,-1927,-1951,-1977,-1997,-2026,
+-2054,-2079,-2106,-2131,-2161,-2186,-2210,-2231,-2251,-2266,-2279,-2294,-2314,-2345,-2380,-2415,-2438,-2461,-2491,-2518,
+-2547,-2582,-2613,-2644,-2670,-2691,-2711,-2742,-2773,-2810,-2845,-2878,-2908,-2933,-2963,-2979,-3000,-3036,-3067,-3092,
+-3120,-3147,-3175,-3195,-3214,-3232,-3253,-3275,-3297,-3321,-3336,-3350,-3371,-3398,-3428,-3459,-3491,-3527,-3552,-3579,
+-3603,-3606,-3692,-3737,-3770,-3798,-3822,-3841,-3859,-3873,-3888,-3906,-3925,-3944,-3962,-3978,-3993,-4010,-4022,-4031,
+-4040,-4044,-4053,-4061,-4070,-4077,-4086,-4094,-4099,-4104,-4108,-4114,-4120,-4119,-4116,-4112,-4109,-4109,-4111,-4113,
+-4110,-4104,-4101,-4093,-4082,-4069,-4058,-4048,-4035,-4024,-4009,-4000,-3979,-3957,-3964,-3971,-3965,-3890,-3837,-3775,
+-3691,-3608,-3581,-3544,-3488,-3402,-3372,-3338,-3377,-3316,-3210,-3188,-3179,-3186,-3177,-3134,-3118,-3119,-3139,-3193,
+-3225,-3195,-3126,-3134,-3126,-3099,-3071,-3044,-2992,-2962,-2896,-2847,-2775,-2679,-2645,-2636,-2608,-2488,-2417,-2403,
+-2425,-2432,-2443,-2441,-2411,-2372,-2353,-2316,-2256,-2184,-2171,-2161,-2156,-2171,-2182,-2238,-2243,-2136,-2064,-2032,
+-2050,-2072,-2140,-2240,-2327,-2385,-2418,-2405,-2393,-2397,-2434,-2482,-2531,-2574,-2617,-2654,-2700,-2745,-2793,-2848,
+-2866,-2882,-2900,-2912,-2906,-2886,-2837,-2759,-2700,-2650,-2617,-2643,-2659,-2627,-2594,-2609,-2638,-2718,-2846,-2977,
+-3094,-3178,-3218,-3210,-3177,-3131,-3055,-2984,-2932,-2886,-2846,-2785,-2731,-2708,-2705,-2708,-2727,-2743,-2759,-2776,
+-2788,-2781,-2775,-2781,-2783,-2775,-2783,-2800,-2824,-2837,-2831,-2806,-2765,-2729,-2747,-2831,-2928,-2981,-2994,-2981,
+-2973,-2979,-3010,-3035,-3039,-3021,-3015,-3026,-3046,-3087,-3136,-3149,-3147,-3143,-3144,-3146,-3151,-3158,-3163,-3158,
+-3171,-3181,-3223,-3263,-3305,-3369,-3434,-3510,-3560,-3622,-3678,-3736,-3804,-3853,-3845,-3847,-3857,-3889,-3929,-3974,
+-4043,-4253,-4447,-4548,-4587,-4609,-4635,-4660,-4684,-4714,-4747,-4767,-4774,-4769,-4755,-4740,-4725,-4722,-4725,-4724,
+-4718,-4708,-4691,-4662,-4626,-4594,-4571,-4549,-4528,-4508,-4487,-4456,-4420,-4377,-4345,-4306,-4259,-4213,-4163,-4103,
+-4048,-3997,-3956,-3922,-3873,-3831,-3800,-3773,-3746,-3720,-3703,-3670,-3621,-3575,-3546,-3492,-3434,-3389,-3367,-3338,
+-3315,-3274,-3234,-3209,-3197,-3163,-3126,-3094,-3057,-3034,-3026,-3022,-2988,-2941,-2884,-2799,-2712,-2764,-2715,-2663,
+-2595,-2526,-2459,-2396,-2331,-2264,-2192,-2125,-2048,-1962,-1899,-1843,-1773,-1667,-1606,-1516,-1369,-1349,-1326,-1236,
+-1063,-994,-929,-830,-693,-674,-621,-538,-449,-365,-266,-170,-80,-2,93,176,263,363,450,536,
+614,690,769,858,950,1035,1127,1221,1327,1423,1507,1580,1651,1735,1836,1936,2013,2087,2175,2265,
+2366,2466,2573,2642,2726,2832,2917,3007,3104,3183,3278,3368,3467,3528,3577,3615,3681,3720,3782,3813,
+3850,3890,3923,3965,3997,4031,4057,4078,4099,4128,4144,4155,4176,4199,4212,4223,4232,4269,4364,4370,
+4400,4420,4353,4381,4337,4342,4361,4400,4421,4430,4410,4375,4366,4343,4313,4292,4256,4190,4138,4104,
+4062,4024,3998,3993,4000,4002,4004,4001,3987,3987,3984,3961,3946,3931,3936,3934,3937,3941,3949,3968,
+3993,4025,4052,4087,4118,4152,4197,4219,4242,4263,4293,4333,4395,4491,4615,4721,4733,4669,4651,4646,
+4625,4601,4568,4559,4576,4607,4505,4478,4476,4453,4427,4408,4395,4380,4361,4329,4287,4252,4216,4182,
+4138,4120,4104,4044,3964,3898,3866,3878,3895,3937,3988,4025,4056,4079,4093,4126,4163,4159,4127,4096,
+4089,4135,4195,4275,4377,4548,4745,4918,5040,5100,5042,5039,5057,5098,5119,5108,5119,5117,5076,5054,
+5014,5000,4973,4919,4858,4809,4760,4707,4665,4634,4608,4580,4536,4490,4433,4376,4317,4252,4183,4115,
+3989,3859,3744,3645,3546,3439,3327,3218,3126,3063,3028,3012,3018,3037,3060,3085,3119,3169,3217,3277,
+3331,3353,3370,3404,3427,3433,3435,3435,3427,3417,3413,3414,3412,3407,3403,3394,3390,3378,3352,3318,
+3289,3287,3283,3275,3276,3282,3258,3228,3150,3096,3065,2991,2919,2880,2825,2803,2806,2780,2748,2692,
+2627,2573,2536,2510,2489,2434,2360,2266,2155,2039,1913,1789,1686,1571,1448,1284,1132,1029,960,927,
+926,970,1020,1079,1071,1028,934,841,686,541,394,283,187,119,75,70,115,183,262,352,
+448,520,569,611,655,696,736,787,863,975,1110,1237,1297,1310,1369,1431,1481,1524,1601,1636,
+1629,1629,1654,1694,1758,1859,2061,2428,2751,2789,2714,2582,2481,2404,2363,2312,2225,2130,2055,1996,
+1949,1895,1839,1796,1761,1713,1654,1585,1507,1439,1364,1285,1185,1067,948,824,688,569,454,341,
+239,146,78,31,18,61,175,349,516,646,672,655,651,626,646,693,707,692,720,730,
+765,765,719,638,611,587,494,504,428,169,27,-23,-58,-86,-138,-222,-326,-429,-509,-573,
+-620,-664,-722,-758,-764,-814,-886,-944,-1002,-1036,-1033,-1060,-1107,-1185,-1275,-1285,-1243,-1199,-1246,-1348,
+-1443,-1561,-1629,-1630,-1700,-1767,-1856,-1934,-1987,-2017,-2019,-2022,-2062,-2060,-2027,-1955,-1924,-1908,-1897,-1897,
+-1921,-1942,-1964,-1988,-2018,-2049,-2081,-2146,-2132,-2123,-2131,-2225,-2226,-2274,-2318,-2367,-2462,-2541,-2626,-2751,
+-2833,-2967,-3100,-3375,-3671,-3948,-4169,-4334,-4412,-4450,-4576,-4633,-4637,-4592,-4503,-4374,-4278,-4086,-3916,-3669,
+-3472,-3457,-3413,-3221,-2903,-2569,-2323,-2189,-2186,-2177,-2237,-2312,-2373,-2401,-2409,-2459,-2498,-2525,-2517,-2600,
+-2676,-2735,-2743,-2765,-2799,-2818,-2845,-2828,-2780,-2779,-2816,-2890,-2960,-3000,-3026,-3045,-3080,-3103,-3138,-3172,
+-3191,-3214,-3234,-3288,-3347,-3382,-3391,-3397,-3437,-3491,-3520,-3549,-3594,-3623,-3651,-3687,-3728,-3766,-3800,-3823,
+-3843,-3861,-3869,-3884,-3900,-3906,-3916,-3961,-4007,-4026,-4047,-4060,-4077,-4084,-4095,-4105,-4109,-4106,-4098,-4093,
+-4104,-4114,-4113,-4129,-4129,-4131,-4152,-4136,-4092,-4071,-4061,-4044,-4020,-3997,-3966,-3938,-3926,-3928,-3913,-3895,
+-3869,-3824,-3786,-3765,-3756,-3759,-3756,-3742,-3751,-3760,-3737,-3709,-3681,-3682,-3664,-3646,-3627,-3584,-3570,-3606,
+-3647,-3680,-3668,-3711,-3788,-3813,-3798,-3761,-3737,-3674,-3631,-3647,-3640,-3647,-3650,-3662,-3682,-3680,-3640,-3574,
+-3453,-3282,-3119,-2905,-2805,-2751,-2672,-2611,-2527,-2498,-2442,-2365,-2324,-2262,-2182,-2113,-2012,-1962,-1916,-1882,
+-1842,-1786,-1707,-1621,-1519,-1411,-1303,-1193,-1094,-972,-864,-767,-663,-558,-454,-351,-246,-135,-36,48,
+143,229,337,437,523,608,676,753,828,905,976,1053,1133,1211,1295,1374,1461,1552,1634,1705,
+1792,1871,1940,1993,2048,2086,2158,2225,2290,2364,2425,2485,2543,2610,2674,2734,2792,2835,2864,2899,
+2927,3019,3040,3037,3066,3090,3114,3166,3224,3238,3243,3270,3265,3247,3280,3350,3410,3470,3527,3602,
+3657,3681,3661,3665,3707,3789,3923,4027,4077,3990,3880,3821,3777,3745,3736,3785,3829,3830,3776,3885,
+4000,4033,3992,3895,3764,3500,3155,2729,2180,1632,1223,989,1021,1338,1728,2023,2230,2359,2460,2636,
+2713,2790,2684,2574,2521,2487,2449,2411,2366,2296,2223,2155,2106,2050,1993,1945,1933,1878,1782,1725,
+1673,1640,1616,1584,1539,1488,1440,1377,1312,1248,1168,1109,1065,1003,946,894,851,817,791,766,
+727,682,635,590,548,513,483,463,444,426,405,383,360,330,306,292,269,236,197,159,
+136,109,72,35,-13,-60,-96,-148,-212,-273,-328,-378,-434,-483,-539,-593,-643,-688,-725,-764,
+-790,-809,-822,-832,-851,-869,-884,-895,-898,-902,-917,-917,-914,-921,-931,-929,-930,-935,-944,-962,
+-989,-1025,-1072,-1120,-1170,-1214,-1252,-1261,-1204,-1036,-812,-704,-902,-1081,-1181,-1205,-1146,-1024,-939,-888,
+-855,-846,-799,-838,-846,-868,-882,-892,-921,-937,-945,-911,-912,-909,-905,-892,-872,-864,-874,-862,
+-849,-868,-874,-934,-952,-964,-1013,-1034,-1033,-1002,-971,-914,-899,-921,-989,-1005,-973,-926,-905,-986,
+-1067,-1126,-1124,-1105,-1098,-1115,-1148,-1171,-1184,-1197,-1215,-1232,-1237,-1236,-1235,-1237,-1239,-1245,-1250,-1258,
+-1267,-1271,-1275,-1273,-1266,-1263,-1262,-1258,-1263,-1264,-1263,-1254,-1250,-1236,-1223,-1220,-1221,-1205,-1219,-1227,
+-1220,-1211,-1206,-1208,-1216,-1220,-1227,-1236,-1246,-1256,-1266,-1282,-1291,-1292,-1300,-1315,-1327,-1347,-1367,-1371,
+-1377,-1386,-1399,-1411,-1430,-1447,-1464,-1476,-1486,-1494,-1500,-1499,-1503,-1511,-1524,-1538,-1551,-1565,-1574,-1577,
+-1586,-1594,-1598,-1605,-1619,-1636,-1648,-1665,-1682,-1705,-1729,-1755,-1786,-1816,-1851,-1883,-1913,-1935,-1959,-1978,
+-2006,-2033,-2056,-2084,-2114,-2142,-2169,-2198,-2219,-2240,-2255,-2274,-2293,-2317,-2346,-2370,-2399,-2428,-2452,-2479,
+-2509,-2539,-2566,-2597,-2623,-2646,-2672,-2699,-2728,-2766,-2803,-2841,-2869,-2892,-2916,-2941,-2960,-2985,-3013,-3039,
+-3066,-3094,-3123,-3146,-3165,-3186,-3206,-3227,-3253,-3278,-3304,-3323,-3340,-3363,-3393,-3421,-3452,-3484,-3517,-3545,
+-3560,-3588,-3599,-3665,-3707,-3738,-3768,-3797,-3823,-3844,-3860,-3879,-3900,-3920,-3944,-3962,-3974,-3992,-4017,-4038,
+-4048,-4055,-4058,-4062,-4064,-4071,-4081,-4094,-4094,-4099,-4106,-4108,-4113,-4119,-4115,-4114,-4113,-4114,-4115,-4119,
+-4118,-4120,-4119,-4114,-4108,-4102,-4093,-4087,-4075,-4073,-4063,-4050,-4033,-4002,-3977,-3961,-3961,-3960,-3946,-3911,
+-3815,-3746,-3686,-3653,-3678,-3641,-3640,-3612,-3544,-3477,-3461,-3343,-3240,-3192,-3187,-3170,-3045,-2999,-3095,-3159,
+-3191,-3207,-3224,-3231,-3202,-3146,-3141,-3130,-3110,-3061,-3032,-3001,-2922,-2835,-2809,-2758,-2713,-2703,-2639,-2575,
+-2516,-2455,-2439,-2430,-2410,-2352,-2324,-2316,-2267,-2233,-2197,-2181,-2171,-2177,-2187,-2206,-2237,-2217,-2143,-2096,
+-2066,-2047,-2081,-2179,-2291,-2357,-2401,-2425,-2406,-2366,-2357,-2389,-2441,-2490,-2545,-2588,-2634,-2688,-2750,-2803,
+-2854,-2869,-2879,-2890,-2909,-2923,-2930,-2912,-2869,-2812,-2738,-2641,-2620,-2640,-2664,-2677,-2665,-2646,-2676,-2782,
+-2930,-3055,-3124,-3136,-3102,-3036,-2974,-2928,-2885,-2856,-2829,-2798,-2759,-2722,-2700,-2685,-2686,-2696,-2711,-2734,
+-2759,-2764,-2752,-2744,-2730,-2740,-2765,-2790,-2816,-2844,-2856,-2847,-2807,-2766,-2728,-2764,-2851,-2925,-2978,-3006,
+-2989,-2982,-2992,-3008,-3027,-3043,-3050,-3052,-3053,-3066,-3080,-3082,-3075,-3072,-3067,-3075,-3094,-3125,-3147,-3161,
+-3169,-3196,-3234,-3266,-3292,-3328,-3380,-3449,-3515,-3579,-3645,-3709,-3769,-3857,-3893,-3885,-3883,-3883,-3909,-3933,
+-3992,-4146,-4409,-4558,-4618,-4652,-4680,-4701,-4724,-4746,-4770,-4794,-4808,-4816,-4811,-4808,-4802,-4795,-4793,-4787,
+-4776,-4762,-4744,-4727,-4699,-4670,-4641,-4614,-4581,-4551,-4528,-4498,-4469,-4440,-4407,-4378,-4340,-4288,-4236,-4185,
+-4130,-4083,-4024,-3976,-3931,-3887,-3860,-3811,-3773,-3757,-3748,-3729,-3691,-3640,-3592,-3546,-3524,-3464,-3426,-3407,
+-3390,-3366,-3324,-3296,-3257,-3251,-3226,-3190,-3152,-3103,-3047,-3006,-2999,-2991,-2971,-2916,-2878,-2849,-2823,-2774,
+-2715,-2651,-2589,-2523,-2451,-2383,-2314,-2246,-2180,-2117,-2045,-1964,-1886,-1822,-1732,-1653,-1562,-1399,-1364,-1345,
+-1277,-1171,-1052,-977,-891,-805,-727,-642,-554,-470,-392,-302,-226,-140,-62,22,112,206,303,399,
+484,572,659,736,820,897,985,1070,1174,1273,1378,1468,1568,1671,1754,1826,1878,1940,2027,2145,
+2260,2342,2427,2530,2616,2708,2799,2904,2995,3081,3170,3249,3302,3387,3468,3533,3596,3682,3711,3742,
+3751,3777,3805,3836,3868,3921,3953,3980,4002,4031,4074,4081,4088,4098,4128,4154,4156,4153,4168,4227,
+4245,4303,4323,4418,4323,4259,4254,4275,4306,4324,4341,4331,4294,4267,4270,4265,4244,4187,4131,4086,
+4035,3988,3933,3892,3877,3903,3916,3918,3920,3922,3905,3892,3870,3863,3845,3844,3851,3854,3873,3892,
+3913,3943,3976,4011,4055,4097,4141,4185,4219,4240,4259,4279,4306,4347,4393,4451,4509,4536,4557,4592,
+4603,4592,4578,4569,4545,4505,4444,4412,4403,4373,4326,4301,4295,4283,4264,4241,4212,4179,4149,4126,
+4094,4049,4011,3957,3879,3786,3717,3709,3752,3825,3926,4044,4135,4199,4244,4278,4307,4321,4335,4322,
+4307,4309,4353,4398,4461,4542,4694,4859,5002,5087,5069,5061,5077,5111,5137,5115,5099,5088,5076,5054,
+5025,4987,4951,4912,4858,4787,4732,4686,4647,4609,4586,4565,4542,4501,4427,4347,4300,4229,4154,4088,
+4000,3902,3786,3673,3563,3460,3358,3261,3172,3095,3042,3005,2969,2956,2953,2959,2972,2999,3036,3070,
+3123,3176,3231,3285,3336,3365,3374,3386,3393,3388,3377,3375,3371,3361,3350,3341,3330,3319,3311,3302,
+3280,3248,3233,3240,3221,3203,3200,3182,3104,3055,3024,2992,2942,2901,2857,2823,2798,2788,2773,2740,
+2692,2634,2575,2539,2525,2531,2509,2459,2381,2290,2188,2079,1972,1871,1757,1619,1477,1343,1205,1068,
+958,902,894,915,910,884,830,761,686,579,436,305,197,109,57,51,83,142,218,308,
+407,502,583,639,685,728,778,829,896,991,1114,1240,1320,1312,1312,1384,1456,1467,1443,1454,
+1489,1526,1571,1625,1687,1784,1942,2198,2583,2738,2789,2732,2580,2488,2431,2407,2318,2215,2126,2067,
+2014,1957,1890,1825,1773,1724,1674,1619,1554,1470,1394,1320,1232,1121,998,873,753,619,490,375,
+262,163,75,2,-51,-63,-28,55,223,402,526,553,519,528,530,513,544,572,636,647,
+633,686,696,672,652,632,649,569,518,482,255,87,18,16,-1,-41,-120,-254,-382,-446,
+-497,-524,-524,-551,-628,-653,-733,-814,-879,-947,-979,-960,-1010,-1021,-1099,-1204,-1227,-1208,-1194,-1162,
+-1231,-1334,-1422,-1536,-1604,-1674,-1772,-1875,-1930,-1971,-1967,-1935,-1970,-1970,-1938,-1884,-1819,-1798,-1814,-1827,
+-1827,-1849,-1892,-1930,-1964,-2000,-2040,-2070,-2133,-2151,-2213,-2208,-2211,-2262,-2328,-2318,-2356,-2449,-2524,-2647,
+-2733,-2796,-2864,-2984,-3227,-3475,-3680,-3822,-4023,-4213,-4415,-4642,-4744,-4768,-4763,-4728,-4626,-4504,-4262,-4079,
+-3866,-3633,-3423,-3358,-3364,-3139,-2775,-2481,-2263,-2158,-2078,-2091,-2165,-2267,-2337,-2382,-2444,-2436,-2489,-2538,
+-2592,-2688,-2706,-2650,-2684,-2758,-2824,-2865,-2868,-2859,-2845,-2885,-2906,-2934,-2970,-2996,-3005,-3039,-3061,-3091,
+-3110,-3130,-3153,-3204,-3251,-3295,-3349,-3384,-3405,-3435,-3472,-3507,-3534,-3575,-3592,-3609,-3644,-3671,-3720,-3753,
+-3772,-3781,-3797,-3835,-3863,-3876,-3862,-3866,-3896,-3941,-3958,-3970,-3991,-4023,-4047,-4062,-4080,-4085,-4084,-4077,
+-4071,-4063,-4072,-4074,-4079,-4082,-4097,-4112,-4135,-4104,-4066,-4059,-4034,-4010,-3984,-3939,-3901,-3877,-3877,-3858,
+-3842,-3830,-3795,-3779,-3759,-3730,-3699,-3686,-3678,-3662,-3645,-3646,-3672,-3663,-3661,-3644,-3628,-3605,-3616,-3634,
+-3657,-3676,-3675,-3719,-3725,-3779,-3790,-3773,-3777,-3757,-3711,-3651,-3579,-3523,-3444,-3378,-3361,-3414,-3443,-3407,
+-3370,-3250,-3132,-2991,-2911,-2839,-2769,-2701,-2620,-2565,-2451,-2385,-2377,-2310,-2209,-2153,-2113,-2063,-1979,-1929,
+-1895,-1851,-1787,-1712,-1625,-1527,-1429,-1334,-1216,-1100,-982,-873,-761,-644,-544,-441,-341,-238,-137,-39,
+54,144,232,315,414,497,590,680,750,824,896,968,1051,1139,1232,1313,1399,1484,1566,1649,
+1721,1799,1866,1934,2013,2077,2123,2188,2249,2314,2376,2438,2502,2570,2628,2684,2746,2796,2826,2863,
+2902,2949,3024,3038,3078,3111,3143,3182,3200,3219,3215,3204,3208,3195,3199,3229,3322,3436,3502,3586,
+3697,3772,3760,3700,3662,3702,3834,4005,4068,4040,3894,3732,3640,3622,3641,3698,3764,3758,3720,3759,
+3976,4016,4043,4065,4017,3978,3782,3453,3036,2509,1924,1393,1061,1050,1350,1718,2035,2265,2395,2498,
+2598,2657,2694,2664,2602,2563,2532,2500,2489,2470,2354,2267,2192,2130,2071,2008,1955,1930,1877,1774,
+1714,1669,1640,1617,1588,1544,1500,1446,1390,1336,1278,1209,1147,1096,1037,974,919,869,830,806,
+776,743,693,647,599,555,516,485,465,451,440,424,401,384,372,363,345,313,276,249,
+218,187,151,106,60,7,-42,-71,-120,-200,-268,-321,-377,-429,-482,-541,-597,-644,-685,-717,
+-752,-778,-796,-810,-822,-838,-852,-867,-882,-894,-901,-918,-919,-921,-926,-929,-929,-925,-924,-931,
+-948,-972,-1011,-1057,-1105,-1151,-1201,-1229,-1231,-1176,-1030,-891,-811,-957,-1076,-1147,-1161,-1131,-1061,-966,
+-901,-874,-832,-790,-793,-804,-823,-837,-858,-876,-888,-899,-894,-893,-886,-886,-874,-848,-835,-833,
+-827,-813,-806,-826,-907,-969,-1014,-1026,-1031,-1039,-1047,-1040,-949,-891,-956,-1038,-1069,-1045,-1007,-957,
+-946,-984,-1084,-1112,-1114,-1110,-1111,-1135,-1162,-1180,-1195,-1201,-1204,-1212,-1218,-1222,-1220,-1224,-1228,-1232,
+-1237,-1243,-1249,-1253,-1250,-1247,-1249,-1250,-1244,-1244,-1235,-1222,-1216,-1215,-1213,-1208,-1170,-1141,-1186,-1170,
+-1205,-1204,-1189,-1183,-1185,-1196,-1204,-1215,-1226,-1234,-1240,-1245,-1252,-1263,-1275,-1285,-1298,-1306,-1319,-1331,
+-1345,-1360,-1369,-1376,-1393,-1410,-1426,-1442,-1456,-1465,-1471,-1478,-1483,-1489,-1497,-1509,-1523,-1538,-1551,-1561,
+-1569,-1574,-1580,-1581,-1585,-1594,-1610,-1624,-1638,-1655,-1676,-1702,-1733,-1760,-1787,-1820,-1850,-1870,-1893,-1930,
+-1953,-1972,-1998,-2030,-2059,-2090,-2121,-2149,-2180,-2203,-2228,-2247,-2270,-2294,-2322,-2341,-2359,-2379,-2408,-2441,
+-2468,-2492,-2524,-2551,-2578,-2607,-2633,-2670,-2690,-2730,-2762,-2795,-2830,-2855,-2875,-2892,-2910,-2930,-2960,-2988,
+-3014,-3043,-3067,-3088,-3112,-3137,-3163,-3183,-3206,-3229,-3257,-3290,-3316,-3342,-3371,-3398,-3431,-3461,-3491,-3518,
+-3535,-3550,-3571,-3605,-3639,-3673,-3704,-3738,-3767,-3799,-3825,-3847,-3869,-3893,-3918,-3942,-3957,-3969,-3985,-4008,
+-4026,-4035,-4045,-4049,-4051,-4053,-4058,-4065,-4074,-4079,-4085,-4088,-4090,-4096,-4104,-4106,-4108,-4114,-4118,-4129,
+-4133,-4131,-4132,-4135,-4133,-4129,-4122,-4114,-4111,-4108,-4100,-4090,-4078,-4057,-4031,-4007,-3973,-3962,-3951,-3952,
+-3944,-3901,-3838,-3704,-3630,-3611,-3588,-3628,-3697,-3686,-3619,-3588,-3558,-3488,-3409,-3335,-3280,-3186,-3115,-3188,
+-3146,-3161,-3209,-3242,-3253,-3230,-3226,-3192,-3161,-3124,-3081,-3023,-3031,-2999,-2977,-2930,-2901,-2816,-2815,-2732,
+-2691,-2617,-2559,-2520,-2493,-2427,-2338,-2279,-2280,-2263,-2244,-2229,-2215,-2220,-2231,-2222,-2226,-2264,-2263,-2207,
+-2145,-2128,-2098,-2123,-2201,-2304,-2370,-2403,-2423,-2392,-2352,-2340,-2335,-2389,-2451,-2509,-2557,-2610,-2661,-2711,
+-2756,-2790,-2819,-2838,-2864,-2894,-2928,-2942,-2926,-2894,-2852,-2815,-2772,-2718,-2660,-2660,-2684,-2715,-2721,-2722,
+-2752,-2836,-2939,-2980,-2970,-2925,-2885,-2868,-2854,-2830,-2806,-2790,-2769,-2747,-2720,-2700,-2677,-2672,-2679,-2696,
+-2718,-2740,-2740,-2719,-2712,-2713,-2740,-2791,-2820,-2839,-2850,-2861,-2852,-2833,-2818,-2809,-2843,-2901,-2958,-3009,
+-3007,-2996,-2990,-2978,-2991,-3020,-3041,-3052,-3060,-3052,-3043,-3026,-3014,-3014,-3007,-3019,-3032,-3062,-3099,-3143,
+-3187,-3224,-3246,-3280,-3300,-3319,-3363,-3412,-3469,-3520,-3592,-3666,-3743,-3832,-3922,-3957,-3938,-3932,-3937,-3970,
+-3985,-4068,-4262,-4502,-4617,-4673,-4713,-4739,-4766,-4786,-4804,-4829,-4845,-4856,-4863,-4866,-4875,-4876,-4873,-4860,
+-4844,-4824,-4800,-4778,-4755,-4731,-4705,-4681,-4651,-4618,-4582,-4546,-4514,-4478,-4446,-4420,-4395,-4362,-4326,-4266,
+-4208,-4148,-4099,-4044,-3994,-3946,-3893,-3859,-3820,-3800,-3778,-3744,-3731,-3685,-3571,-3570,-3573,-3549,-3513,-3476,
+-3443,-3427,-3399,-3370,-3338,-3315,-3311,-3305,-3257,-3200,-3144,-3079,-3024,-2976,-2952,-2944,-2939,-2919,-2884,-2851,
+-2816,-2771,-2710,-2647,-2587,-2517,-2445,-2371,-2299,-2218,-2160,-2095,-2035,-1951,-1864,-1785,-1713,-1629,-1550,-1462,
+-1383,-1301,-1215,-1093,-1006,-926,-848,-763,-676,-587,-491,-415,-347,-266,-169,-77,1,90,175,263,
+356,440,539,629,706,806,892,975,1053,1146,1225,1301,1385,1496,1596,1705,1797,1886,1972,2054,
+2119,2197,2284,2387,2471,2567,2677,2769,2854,2949,3064,3145,3241,3303,3317,3403,3448,3503,3551,3601,
+3624,3656,3689,3729,3754,3803,3839,3867,3886,3916,3945,4000,4038,4038,4047,4066,4074,4084,4079,4080,
+4103,4169,4169,4218,4325,4245,4187,4186,4215,4237,4239,4288,4304,4202,4188,4190,4177,4146,4114,4066,
+4009,3957,3913,3868,3840,3824,3838,3856,3839,3842,3830,3808,3788,3772,3760,3757,3760,3772,3787,3806,
+3836,3865,3900,3934,3979,4022,4077,4144,4186,4222,4252,4271,4293,4320,4345,4357,4380,4414,4461,4525,
+4571,4596,4597,4588,4585,4551,4491,4448,4418,4336,4266,4225,4211,4211,4207,4195,4173,4148,4118,4095,
+4067,4026,3985,3940,3868,3775,3667,3612,3635,3752,3927,4072,4224,4324,4387,4438,4477,4514,4549,4577,
+4598,4611,4642,4709,4745,4802,4881,4994,5162,5228,5183,5115,5121,5182,5184,5133,5095,5063,5062,5047,
+5007,4971,4921,4882,4847,4787,4728,4674,4630,4598,4564,4540,4507,4446,4401,4324,4255,4191,4132,4067,
+4000,3924,3832,3719,3603,3491,3395,3306,3218,3141,3079,3036,2990,2952,2942,2939,2945,2937,2950,2976,
+3003,3044,3098,3162,3237,3296,3339,3351,3357,3368,3369,3357,3351,3342,3323,3307,3293,3281,3278,3268,
+3254,3244,3225,3196,3177,3160,3139,3109,3074,3023,2988,2971,2950,2927,2891,2846,2801,2766,2757,2758,
+2740,2701,2654,2617,2599,2657,2658,2581,2525,2459,2381,2309,2244,2170,2086,1984,1860,1713,1572,1416,
+1236,1088,990,931,899,857,814,790,738,657,545,436,324,224,156,127,136,175,228,301,
+383,478,575,655,719,770,821,873,932,1010,1109,1221,1313,1338,1319,1373,1531,1591,1529,1445,
+1428,1459,1503,1555,1613,1697,1830,2039,2347,2583,2677,2660,2547,2464,2402,2367,2333,2261,2185,2121,
+2068,2011,1946,1881,1813,1751,1686,1626,1562,1499,1420,1346,1268,1175,1073,951,818,685,556,425,
+304,193,91,2,-66,-118,-155,-162,-118,9,231,378,433,394,371,372,379,377,401,435,
+493,464,519,596,612,612,580,561,544,533,474,417,280,104,-21,-61,-92,-123,-159,-260,
+-330,-403,-463,-473,-497,-565,-627,-696,-769,-835,-894,-917,-976,-1074,-1048,-1019,-1137,-1177,-1184,-1190,
+-1202,-1203,-1245,-1335,-1435,-1514,-1623,-1734,-1861,-1913,-1935,-1906,-1923,-1935,-1916,-1888,-1837,-1797,-1760,-1762,
+-1792,-1829,-1856,-1892,-1922,-1959,-1991,-2036,-2106,-2143,-2175,-2260,-2264,-2276,-2256,-2246,-2276,-2343,-2418,-2540,
+-2609,-2665,-2736,-2749,-2933,-3229,-3499,-3720,-3804,-3943,-4148,-4407,-4627,-4732,-4834,-4855,-4828,-4776,-4674,-4531,
+-4315,-4089,-3943,-3668,-3339,-3356,-3329,-3083,-2711,-2484,-2229,-2069,-2050,-2097,-2156,-2176,-2212,-2304,-2336,-2357,
+-2483,-2581,-2656,-2670,-2645,-2682,-2738,-2818,-2880,-2861,-2878,-2876,-2886,-2864,-2896,-2920,-2936,-2966,-2989,-2991,
+-3018,-3053,-3101,-3153,-3194,-3208,-3242,-3290,-3326,-3376,-3402,-3430,-3477,-3516,-3544,-3557,-3581,-3611,-3623,-3656,
+-3694,-3730,-3733,-3756,-3809,-3829,-3835,-3840,-3843,-3852,-3872,-3884,-3901,-3935,-3966,-3997,-4006,-4020,-4028,-4040,
+-4047,-4046,-4041,-4045,-4039,-4031,-4045,-4076,-4104,-4111,-4110,-4076,-4060,-4031,-3996,-3968,-3926,-3890,-3859,-3836,
+-3802,-3784,-3778,-3765,-3754,-3732,-3706,-3680,-3652,-3639,-3629,-3609,-3614,-3629,-3633,-3658,-3633,-3608,-3549,-3539,
+-3521,-3548,-3592,-3673,-3741,-3718,-3757,-3777,-3782,-3800,-3778,-3719,-3612,-3528,-3510,-3437,-3350,-3270,-3275,-3218,
+-3180,-3151,-3096,-3012,-2930,-2879,-2822,-2772,-2683,-2587,-2532,-2451,-2372,-2329,-2256,-2171,-2172,-2148,-2081,-1996,
+-1946,-1914,-1854,-1786,-1711,-1627,-1529,-1434,-1337,-1213,-1089,-973,-860,-747,-643,-543,-428,-325,-227,-127,
+-29,55,154,237,315,394,475,560,648,730,821,896,973,1053,1144,1242,1331,1415,1497,1575,
+1655,1727,1801,1860,1920,2020,2089,2156,2213,2274,2341,2402,2464,2534,2604,2650,2692,2747,2793,2814,
+2878,2919,2977,3028,3075,3107,3142,3185,3227,3240,3242,3220,3185,3151,3134,3156,3224,3349,3541,3648,
+3691,3760,3835,3797,3696,3628,3637,3753,3917,4001,3903,3642,3498,3493,3551,3620,3654,3666,3664,3739,
+3885,3962,3976,3988,4024,4082,4148,4003,3685,3295,2809,2248,1652,1210,1115,1350,1706,2047,2289,2430,
+2544,2636,2635,2642,2645,2626,2601,2579,2541,2502,2454,2381,2302,2236,2170,2097,2024,1953,1886,1818,
+1753,1707,1670,1645,1620,1588,1545,1495,1446,1405,1357,1305,1247,1189,1134,1070,1010,950,896,856,
+820,788,757,721,672,628,578,535,498,475,461,453,443,426,424,417,403,381,358,331,
+309,275,248,206,152,84,11,-35,-68,-126,-192,-261,-312,-373,-428,-480,-545,-604,-655,-690,
+-719,-743,-765,-784,-798,-817,-831,-844,-858,-873,-886,-894,-909,-911,-916,-926,-926,-924,-918,-912,
+-915,-932,-957,-999,-1048,-1087,-1125,-1160,-1186,-1180,-1107,-854,-703,-646,-766,-999,-1089,-1104,-1083,-1042,
+-997,-937,-901,-848,-788,-778,-781,-793,-804,-818,-825,-826,-833,-841,-860,-858,-858,-853,-815,-810,
+-802,-784,-785,-799,-830,-898,-986,-1006,-999,-1000,-1010,-1028,-1041,-992,-918,-1017,-1065,-1079,-1083,-1043,
+-963,-911,-900,-989,-1101,-1119,-1120,-1122,-1125,-1131,-1148,-1160,-1168,-1176,-1182,-1188,-1187,-1192,-1194,-1201,
+-1204,-1210,-1217,-1224,-1226,-1229,-1227,-1225,-1219,-1213,-1209,-1198,-1189,-1184,-1178,-1181,-1187,-1160,-1133,-1161,
+-1158,-1144,-1180,-1169,-1162,-1168,-1179,-1192,-1199,-1210,-1222,-1226,-1229,-1235,-1247,-1261,-1271,-1277,-1281,-1290,
+-1303,-1317,-1334,-1349,-1356,-1373,-1387,-1401,-1416,-1428,-1436,-1446,-1450,-1459,-1471,-1481,-1495,-1509,-1525,-1537,
+-1546,-1555,-1559,-1563,-1563,-1569,-1574,-1583,-1598,-1612,-1626,-1648,-1671,-1699,-1729,-1757,-1784,-1811,-1825,-1853,
+-1890,-1915,-1931,-1954,-1990,-2025,-2056,-2090,-2122,-2158,-2186,-2216,-2239,-2262,-2285,-2308,-2329,-2347,-2367,-2399,
+-2434,-2452,-2489,-2515,-2541,-2567,-2597,-2627,-2660,-2692,-2724,-2754,-2781,-2809,-2833,-2848,-2866,-2881,-2905,-2936,
+-2964,-2988,-3010,-3034,-3059,-3087,-3110,-3136,-3162,-3185,-3209,-3236,-3273,-3306,-3343,-3370,-3401,-3434,-3464,-3490,
+-3512,-3526,-3539,-3559,-3589,-3620,-3649,-3675,-3707,-3743,-3775,-3803,-3831,-3854,-3878,-3903,-3929,-3940,-3955,-3965,
+-3979,-3991,-4004,-4017,-4026,-4032,-4035,-4039,-4046,-4058,-4069,-4077,-4088,-4093,-4096,-4101,-4104,-4116,-4121,-4124,
+-4129,-4135,-4140,-4135,-4138,-4147,-4147,-4139,-4143,-4142,-4134,-4131,-4105,-4084,-4068,-4042,-4021,-3994,-3976,-3962,
+-3968,-3973,-3963,-3900,-3836,-3760,-3698,-3767,-3802,-3736,-3777,-3757,-3685,-3583,-3552,-3440,-3333,-3281,-3249,-3127,
+-3226,-3316,-3234,-3237,-3268,-3309,-3291,-3277,-3256,-3214,-3156,-3127,-3096,-3068,-3062,-3051,-3023,-2993,-2947,-2926,
+-2872,-2829,-2754,-2699,-2600,-2560,-2502,-2396,-2341,-2324,-2308,-2309,-2280,-2267,-2254,-2246,-2249,-2299,-2314,-2298,
+-2270,-2174,-2139,-2063,-2077,-2190,-2305,-2359,-2398,-2398,-2373,-2344,-2330,-2334,-2365,-2411,-2467,-2521,-2575,-2619,
+-2648,-2679,-2698,-2737,-2778,-2838,-2885,-2913,-2918,-2917,-2906,-2886,-2864,-2824,-2776,-2717,-2665,-2649,-2667,-2701,
+-2721,-2742,-2778,-2814,-2825,-2810,-2809,-2811,-2807,-2803,-2798,-2789,-2778,-2752,-2730,-2711,-2696,-2685,-2671,-2668,
+-2694,-2731,-2747,-2742,-2721,-2707,-2722,-2758,-2817,-2847,-2860,-2864,-2871,-2872,-2872,-2870,-2873,-2901,-2951,-3005,
+-3020,-3009,-2988,-2970,-2964,-2984,-3010,-3047,-3061,-3049,-3029,-2998,-2969,-2957,-2962,-2983,-3004,-3041,-3083,-3129,
+-3182,-3214,-3240,-3255,-3275,-3300,-3333,-3375,-3424,-3506,-3551,-3611,-3665,-3779,-3902,-3948,-3971,-3969,-3961,-3984,
+-4022,-4058,-4170,-4404,-4572,-4657,-4712,-4754,-4793,-4825,-4839,-4857,-4882,-4902,-4916,-4920,-4932,-4943,-4945,-4938,
+-4921,-4897,-4870,-4841,-4816,-4787,-4764,-4745,-4720,-4686,-4650,-4615,-4578,-4540,-4507,-4466,-4432,-4400,-4365,-4330,
+-4287,-4240,-4187,-4130,-4065,-4008,-3962,-3909,-3872,-3832,-3800,-3783,-3758,-3728,-3697,-3590,-3476,-3560,-3571,-3542,
+-3511,-3480,-3457,-3432,-3383,-3363,-3377,-3362,-3337,-3286,-3222,-3164,-3095,-3037,-3005,-2975,-2954,-2937,-2914,-2891,
+-2877,-2829,-2788,-2745,-2696,-2643,-2585,-2501,-2430,-2363,-2293,-2215,-2144,-2075,-1978,-1928,-1857,-1766,-1688,-1601,
+-1509,-1416,-1327,-1249,-1151,-1069,-970,-900,-812,-737,-648,-553,-479,-404,-316,-236,-151,-44,36,132,
+221,314,398,496,586,678,765,860,951,1031,1115,1207,1285,1364,1451,1528,1610,1706,1829,1924,
+2026,2122,2221,2301,2384,2489,2572,2670,2742,2797,2877,2988,3085,3131,3175,3218,3340,3404,3447,3499,
+3525,3560,3590,3619,3652,3689,3732,3748,3773,3800,3835,3868,3906,3938,3957,3989,4008,4024,4038,4033,
+4022,4029,4047,4052,4096,4110,4108,4109,4126,4153,4176,4188,4207,4215,4138,4100,4106,4115,4117,4086,
+4033,3985,3937,3899,3868,3846,3831,3811,3805,3779,3765,3741,3715,3700,3688,3672,3674,3686,3697,3712,
+3734,3764,3801,3842,3886,3936,3998,4065,4135,4201,4249,4278,4308,4332,4361,4373,4370,4382,4426,4486,
+4552,4590,4602,4597,4577,4563,4528,4485,4532,4461,4269,4183,4148,4144,4154,4165,4167,4146,4124,4096,
+4067,4031,3991,3942,3883,3811,3715,3625,3649,3816,3981,4149,4293,4410,4493,4549,4602,4658,4723,4767,
+4808,4849,4886,4960,5031,5124,5209,5239,5254,5371,5421,5297,5166,5214,5225,5173,5116,5076,5043,5025,
+4994,4958,4909,4859,4825,4788,4728,4666,4605,4547,4516,4478,4428,4381,4319,4248,4205,4162,4119,4067,
+4004,3932,3849,3751,3646,3543,3441,3346,3258,3183,3112,3057,3023,2982,2951,2939,2943,2952,2950,2961,
+2977,3001,3034,3080,3138,3196,3268,3336,3343,3348,3354,3354,3344,3333,3322,3303,3283,3266,3254,3244,
+3237,3225,3208,3195,3170,3150,3117,3087,3059,3032,3007,2964,2928,2902,2881,2847,2802,2776,2751,2733,
+2733,2729,2701,2676,2660,2682,2759,2784,2630,2553,2490,2452,2443,2415,2378,2322,2245,2133,1985,1821,
+1636,1449,1295,1163,1051,959,877,829,801,766,673,578,488,405,343,308,292,295,320,358,
+419,492,578,669,749,817,872,925,983,1046,1121,1214,1315,1385,1423,1434,1474,1565,1580,1509,
+1460,1454,1491,1534,1579,1641,1750,1905,2141,2389,2566,2556,2463,2396,2353,2329,2303,2248,2201,2141,
+2099,2045,1988,1928,1862,1796,1727,1647,1567,1505,1440,1366,1294,1211,1118,1014,893,755,621,495,
+363,238,125,25,-65,-135,-189,-228,-251,-246,-193,-49,133,265,241,188,210,211,196,185,
+227,284,340,362,448,496,551,545,516,494,498,459,420,410,302,87,-76,-143,-153,-177,
+-210,-235,-315,-385,-396,-427,-477,-584,-685,-757,-819,-845,-843,-946,-1074,-1095,-986,-1062,-1129,-1164,
+-1198,-1215,-1236,-1246,-1263,-1322,-1422,-1535,-1692,-1828,-1917,-1933,-1919,-1927,-1928,-1925,-1917,-1895,-1858,-1821,
+-1813,-1848,-1871,-1893,-1901,-1921,-1960,-1997,-2054,-2155,-2214,-2221,-2332,-2309,-2220,-2197,-2258,-2272,-2328,-2413,
+-2530,-2587,-2665,-2722,-2756,-2908,-3218,-3547,-3797,-3955,-4120,-4309,-4502,-4677,-4794,-4896,-4921,-4897,-4867,-4831,
+-4747,-4599,-4424,-4217,-3962,-3610,-3444,-3373,-3234,-2962,-2789,-2430,-2182,-2064,-2057,-2066,-2036,-2062,-2137,-2213,
+-2275,-2333,-2487,-2570,-2636,-2694,-2760,-2770,-2816,-2861,-2848,-2863,-2867,-2858,-2862,-2890,-2899,-2903,-2933,-2949,
+-2940,-2976,-3026,-3067,-3115,-3146,-3161,-3177,-3193,-3232,-3290,-3337,-3372,-3406,-3449,-3480,-3509,-3536,-3558,-3566,
+-3591,-3636,-3673,-3698,-3728,-3776,-3793,-3788,-3803,-3801,-3780,-3760,-3794,-3831,-3864,-3891,-3904,-3931,-3960,-3990,
+-4012,-4020,-4014,-4011,-4013,-4025,-4016,-4018,-4041,-4058,-4068,-4083,-4060,-4060,-4039,-3991,-3958,-3919,-3892,-3860,
+-3810,-3764,-3735,-3722,-3700,-3695,-3676,-3660,-3638,-3606,-3593,-3579,-3561,-3562,-3570,-3593,-3617,-3587,-3526,-3475,
+-3450,-3434,-3476,-3554,-3578,-3667,-3723,-3724,-3730,-3772,-3794,-3782,-3695,-3608,-3513,-3542,-3499,-3423,-3371,-3309,
+-3226,-3105,-3130,-3073,-2997,-2941,-2880,-2793,-2736,-2690,-2647,-2574,-2488,-2432,-2339,-2257,-2234,-2183,-2120,-2060,
+-2009,-1957,-1902,-1844,-1779,-1703,-1620,-1526,-1424,-1327,-1210,-1091,-975,-856,-740,-626,-512,-410,-308,-210,
+-106,-22,56,156,239,318,411,473,533,627,710,801,887,976,1061,1150,1243,1341,1434,1513,
+1585,1662,1732,1795,1852,1921,2011,2084,2162,2226,2295,2366,2445,2520,2574,2607,2653,2696,2744,2781,
+2828,2897,2942,2987,3040,3090,3132,3181,3241,3237,3265,3290,3242,3205,3136,3094,3177,3294,3427,3567,
+3576,3591,3638,3719,3715,3621,3540,3503,3580,3763,3872,3751,3536,3490,3529,3590,3588,3566,3601,3715,
+3803,3818,3910,3988,4005,4075,4188,4239,4147,3860,3508,3049,2502,1898,1413,1209,1381,1721,2062,2309,
+2460,2556,2608,2638,2660,2674,2665,2643,2616,2577,2530,2478,2408,2333,2272,2209,2139,2051,1969,1893,
+1822,1763,1715,1677,1645,1617,1584,1542,1494,1442,1401,1366,1324,1279,1224,1168,1107,1042,982,928,
+884,851,824,796,761,715,666,614,567,527,504,492,482,474,461,461,457,442,427,413,
+390,358,320,281,226,161,86,24,-25,-51,-107,-190,-249,-313,-365,-421,-484,-540,-596,-642,
+-675,-706,-734,-758,-777,-793,-808,-825,-841,-852,-865,-880,-890,-902,-905,-912,-919,-920,-913,-907,
+-899,-908,-923,-950,-991,-1033,-1059,-1088,-1120,-1135,-1125,-1070,-940,-763,-710,-813,-918,-1004,-1038,-1033,
+-1006,-977,-954,-935,-912,-830,-750,-768,-795,-774,-778,-819,-821,-815,-825,-839,-812,-839,-831,-820,
+-808,-802,-795,-813,-806,-811,-871,-978,-987,-976,-975,-985,-991,-1012,-1036,-1010,-1040,-1036,-1016,-1067,
+-1081,-1030,-910,-827,-951,-1087,-1116,-1113,-1107,-1108,-1112,-1120,-1124,-1128,-1137,-1146,-1152,-1156,-1158,-1166,
+-1170,-1175,-1187,-1185,-1187,-1189,-1185,-1185,-1186,-1189,-1183,-1177,-1170,-1161,-1152,-1149,-1159,-1163,-1167,-1168,
+-1133,-1115,-1160,-1156,-1146,-1147,-1159,-1170,-1175,-1176,-1188,-1200,-1200,-1197,-1197,-1206,-1218,-1231,-1241,-1253,
+-1269,-1280,-1289,-1299,-1313,-1328,-1342,-1357,-1368,-1381,-1395,-1407,-1418,-1426,-1438,-1452,-1466,-1481,-1500,-1514,
+-1526,-1533,-1539,-1545,-1549,-1545,-1547,-1553,-1558,-1569,-1582,-1596,-1610,-1632,-1660,-1690,-1717,-1743,-1773,-1793,
+-1815,-1847,-1868,-1887,-1913,-1946,-1988,-2022,-2058,-2094,-2131,-2163,-2194,-2223,-2248,-2272,-2296,-2316,-2339,-2366,
+-2401,-2436,-2469,-2487,-2510,-2529,-2559,-2574,-2615,-2646,-2677,-2710,-2740,-2765,-2788,-2808,-2827,-2845,-2861,-2886,
+-2916,-2943,-2965,-2986,-3008,-3033,-3065,-3084,-3109,-3131,-3158,-3186,-3211,-3244,-3281,-3310,-3335,-3368,-3399,-3429,
+-3456,-3477,-3499,-3524,-3548,-3577,-3606,-3632,-3648,-3677,-3711,-3742,-3771,-3800,-3824,-3852,-3882,-3901,-3914,-3928,
+-3942,-3957,-3970,-3986,-4001,-4015,-4026,-4041,-4049,-4061,-4069,-4076,-4085,-4095,-4101,-4106,-4106,-4111,-4109,-4115,
+-4111,-4116,-4123,-4128,-4134,-4136,-4148,-4150,-4141,-4148,-4146,-4132,-4125,-4106,-4087,-4075,-4059,-4040,-4032,-4004,
+-3983,-3981,-3998,-4004,-3939,-3864,-3829,-3783,-3738,-3786,-3742,-3711,-3729,-3678,-3641,-3586,-3509,-3399,-3304,-3237,
+-3156,-3149,-3256,-3386,-3343,-3304,-3302,-3329,-3326,-3294,-3248,-3177,-3171,-3164,-3153,-3126,-3102,-3060,-3062,-3006,
+-2993,-2952,-2878,-2815,-2736,-2700,-2630,-2551,-2480,-2453,-2429,-2400,-2346,-2310,-2294,-2283,-2277,-2298,-2345,-2344,
+-2313,-2276,-2255,-2147,-2032,-2047,-2160,-2289,-2349,-2393,-2388,-2378,-2327,-2294,-2302,-2334,-2365,-2416,-2480,-2528,
+-2572,-2605,-2607,-2630,-2700,-2759,-2827,-2884,-2915,-2884,-2916,-2920,-2905,-2888,-2843,-2793,-2753,-2716,-2646,-2623,
+-2626,-2665,-2677,-2694,-2720,-2743,-2756,-2777,-2779,-2778,-2782,-2784,-2782,-2767,-2744,-2722,-2709,-2702,-2692,-2674,
+-2664,-2693,-2733,-2754,-2746,-2731,-2732,-2739,-2763,-2821,-2867,-2888,-2907,-2919,-2922,-2922,-2925,-2936,-2971,-3003,
+-3018,-3020,-3000,-2980,-2964,-2974,-3005,-3020,-3033,-3033,-3018,-2998,-2958,-2920,-2908,-2928,-2950,-3000,-3050,-3107,
+-3172,-3209,-3254,-3258,-3258,-3264,-3298,-3341,-3409,-3487,-3561,-3604,-3627,-3687,-3820,-3914,-3959,-3963,-3945,-3959,
+-4005,-4040,-4108,-4293,-4516,-4620,-4687,-4740,-4782,-4826,-4864,-4886,-4907,-4931,-4958,-4971,-4982,-4994,-4997,-4994,
+-4984,-4966,-4942,-4917,-4881,-4847,-4818,-4792,-4778,-4750,-4719,-4682,-4644,-4601,-4563,-4524,-4488,-4448,-4406,-4373,
+-4328,-4296,-4259,-4208,-4143,-4083,-4024,-3979,-3929,-3893,-3844,-3807,-3779,-3755,-3734,-3709,-3649,-3533,-3532,-3592,
+-3503,-3501,-3500,-3472,-3453,-3435,-3411,-3403,-3396,-3379,-3308,-3258,-3209,-3147,-3086,-3031,-3006,-3007,-2989,-2916,
+-2915,-2900,-2866,-2822,-2767,-2727,-2690,-2637,-2572,-2492,-2416,-2348,-2277,-2203,-2126,-2043,-1968,-1887,-1810,-1734,
+-1638,-1552,-1477,-1407,-1326,-1247,-1162,-1070,-985,-907,-824,-742,-651,-557,-461,-374,-270,-179,-88,1,
+88,177,266,354,437,535,634,733,828,930,1019,1105,1186,1264,1357,1429,1519,1621,1695,1773,
+1840,1940,2053,2151,2257,2347,2479,2598,2718,2775,2812,2911,3021,3046,3072,3117,3178,3258,3306,3334,
+3363,3404,3440,3464,3521,3547,3604,3629,3658,3686,3726,3763,3791,3815,3845,3864,3887,3908,3928,3948,
+3954,3962,3977,3984,3986,3998,4018,4025,4072,4096,4111,4123,4118,4108,4056,4003,4000,4015,4039,4056,
+4033,4005,3984,3958,3910,3879,3862,3838,3809,3777,3729,3697,3665,3640,3620,3611,3606,3610,3617,3622,
+3640,3660,3695,3730,3781,3840,3909,3985,4066,4153,4214,4270,4321,4361,4397,4431,4431,4424,4441,4495,
+4556,4600,4609,4588,4551,4528,4505,4464,4418,4355,4264,4176,4126,4103,4105,4134,4165,4174,4156,4134,
+4101,4073,4031,3984,3923,3854,3788,3718,3706,3932,4103,4230,4352,4461,4559,4643,4704,4754,4813,4888,
+4937,4988,5037,5125,5189,5264,5369,5441,5432,5413,5456,5443,5255,5175,5204,5197,5148,5091,5041,5014,
+4999,4971,4929,4878,4825,4773,4727,4666,4590,4526,4453,4393,4332,4281,4221,4169,4123,4100,4076,4038,
+3986,3920,3847,3758,3666,3568,3474,3379,3292,3205,3141,3080,3028,2990,2964,2942,2930,2934,2943,2949,
+2966,2991,3018,3054,3094,3143,3192,3248,3309,3333,3329,3339,3341,3336,3322,3308,3291,3276,3266,3256,
+3241,3225,3209,3191,3159,3135,3106,3076,3049,3028,3005,2992,2958,2888,2846,2823,2802,2772,2751,2748,
+2735,2734,2739,2729,2721,2697,2725,2776,2729,2627,2551,2545,2591,2603,2601,2610,2591,2521,2386,2246,
+2084,1883,1694,1525,1349,1182,1055,961,896,848,793,723,658,601,560,523,502,495,488,497,
+514,557,622,698,769,841,912,975,1036,1096,1161,1234,1324,1414,1462,1474,1493,1495,1534,1546,
+1517,1496,1520,1552,1581,1613,1679,1796,1979,2194,2329,2490,2449,2389,2323,2305,2281,2240,2192,2141,
+2094,2057,2014,1960,1903,1838,1768,1692,1610,1534,1462,1393,1318,1236,1136,1037,931,820,702,580,
+462,318,180,67,-33,-125,-198,-256,-303,-338,-355,-345,-285,-151,-16,36,50,-8,-3,-23,
+15,94,128,150,237,378,456,502,529,518,484,454,388,327,293,258,194,95,17,-33,
+-118,-211,-246,-273,-349,-406,-480,-507,-534,-651,-736,-802,-822,-847,-918,-1029,-1097,-1055,-1038,-1127,
+-1166,-1191,-1204,-1227,-1249,-1247,-1263,-1353,-1430,-1571,-1768,-1866,-1908,-1912,-1914,-1918,-1935,-1953,-1950,-1935,
+-1920,-1941,-1946,-1939,-1927,-1899,-1911,-1968,-2048,-2096,-2230,-2251,-2291,-2297,-2222,-2203,-2224,-2276,-2338,-2365,
+-2466,-2544,-2602,-2660,-2727,-2801,-3001,-3268,-3534,-3822,-4086,-4252,-4406,-4546,-4679,-4816,-4900,-4943,-4939,-4938,
+-4897,-4840,-4763,-4644,-4462,-4318,-4128,-3946,-3753,-3584,-3300,-3103,-2746,-2458,-2190,-2022,-1977,-1974,-2004,-2032,
+-2070,-2157,-2264,-2416,-2471,-2516,-2587,-2684,-2737,-2774,-2812,-2850,-2840,-2853,-2865,-2877,-2909,-2913,-2924,-2939,
+-2960,-2969,-2995,-3038,-3071,-3096,-3102,-3134,-3151,-3166,-3212,-3255,-3288,-3314,-3332,-3378,-3427,-3447,-3468,-3499,
+-3531,-3562,-3577,-3606,-3654,-3682,-3707,-3724,-3731,-3738,-3742,-3734,-3723,-3747,-3775,-3814,-3838,-3842,-3884,-3910,
+-3934,-3963,-3973,-3971,-3981,-4003,-4023,-4024,-4021,-4031,-4030,-4052,-4061,-4056,-4048,-4028,-4011,-3960,-3920,-3892,
+-3855,-3801,-3750,-3699,-3675,-3661,-3647,-3626,-3609,-3594,-3586,-3569,-3526,-3508,-3525,-3532,-3540,-3539,-3514,-3473,
+-3419,-3372,-3352,-3423,-3514,-3605,-3619,-3677,-3731,-3722,-3748,-3774,-3754,-3698,-3672,-3619,-3576,-3557,-3504,-3429,
+-3358,-3256,-3138,-3073,-3069,-2974,-2905,-2844,-2807,-2700,-2622,-2599,-2581,-2512,-2458,-2383,-2307,-2218,-2180,-2100,
+-2054,-2001,-1925,-1883,-1823,-1749,-1670,-1598,-1514,-1420,-1317,-1207,-1087,-964,-841,-729,-627,-515,-411,-314,
+-197,-96,-12,81,167,249,332,407,473,536,634,724,801,898,988,1083,1172,1268,1359,1453,
+1532,1604,1671,1730,1773,1829,1912,2001,2077,2143,2222,2295,2371,2457,2541,2567,2602,2646,2685,2733,
+2777,2856,2926,2980,3027,3068,3119,3183,3203,3212,3228,3278,3274,3262,3166,3123,3132,3174,3276,3410,
+3507,3536,3547,3544,3592,3588,3519,3483,3459,3462,3513,3592,3574,3533,3540,3550,3563,3566,3599,3671,
+3723,3731,3835,3983,4020,4116,4153,4246,4279,4210,3945,3634,3228,2697,2098,1559,1310,1421,1740,2085,
+2335,2516,2652,2670,2684,2702,2713,2704,2675,2644,2605,2557,2505,2446,2376,2305,2234,2161,2085,2003,
+1933,1869,1806,1745,1698,1659,1623,1585,1543,1496,1447,1408,1374,1341,1303,1253,1195,1139,1082,1027,
+971,925,891,868,841,809,764,717,666,617,579,550,532,520,506,495,496,492,487,470,
+464,437,394,352,293,231,167,101,39,-13,-55,-107,-180,-244,-295,-355,-416,-472,-530,-579,
+-614,-649,-684,-711,-742,-767,-788,-804,-823,-834,-846,-860,-873,-884,-892,-909,-906,-909,-908,-900,
+-892,-891,-903,-916,-942,-969,-999,-1024,-1053,-1076,-1085,-1079,-1042,-936,-711,-616,-777,-801,-895,-960,
+-983,-970,-953,-939,-928,-918,-882,-797,-825,-844,-838,-776,-839,-883,-818,-840,-885,-897,-883,-881,
+-855,-814,-833,-865,-877,-850,-819,-922,-968,-964,-951,-954,-977,-1003,-1021,-1032,-1034,-1036,-1033,-1013,
+-1024,-1075,-1089,-1014,-894,-972,-1005,-1043,-1079,-1092,-1090,-1086,-1085,-1088,-1095,-1104,-1115,-1121,-1127,-1135,
+-1141,-1139,-1134,-1133,-1139,-1140,-1140,-1142,-1150,-1155,-1158,-1155,-1149,-1145,-1137,-1129,-1129,-1132,-1134,-1133,
+-1132,-1115,-1117,-1128,-1123,-1122,-1127,-1129,-1097,-1081,-1120,-1120,-1100,-1145,-1146,-1143,-1150,-1164,-1181,-1197,
+-1218,-1241,-1255,-1264,-1270,-1280,-1295,-1308,-1321,-1332,-1343,-1358,-1376,-1388,-1405,-1419,-1433,-1452,-1465,-1484,
+-1500,-1510,-1516,-1522,-1524,-1526,-1527,-1523,-1524,-1529,-1537,-1547,-1561,-1574,-1591,-1616,-1645,-1671,-1699,-1722,
+-1747,-1769,-1793,-1816,-1847,-1877,-1913,-1950,-1986,-2027,-2065,-2098,-2132,-2166,-2200,-2232,-2258,-2284,-2307,-2330,
+-2362,-2398,-2428,-2452,-2476,-2494,-2517,-2544,-2575,-2608,-2637,-2664,-2694,-2726,-2748,-2768,-2789,-2808,-2825,-2837,
+-2865,-2894,-2918,-2938,-2957,-2975,-3003,-3031,-3053,-3075,-3103,-3130,-3158,-3186,-3208,-3236,-3264,-3290,-3319,-3348,
+-3379,-3407,-3429,-3459,-3494,-3525,-3555,-3582,-3605,-3626,-3653,-3684,-3714,-3748,-3780,-3811,-3840,-3857,-3868,-3895,
+-3916,-3930,-3943,-3956,-3975,-3992,-4008,-4019,-4026,-4031,-4038,-4045,-4057,-4069,-4082,-4086,-4096,-4102,-4103,-4105,
+-4112,-4114,-4120,-4131,-4136,-4139,-4141,-4147,-4153,-4145,-4142,-4153,-4134,-4127,-4106,-4092,-4085,-4077,-4063,-4056,
+-4031,-4019,-4018,-4012,-3982,-3994,-3886,-3835,-3804,-3746,-3705,-3737,-3730,-3750,-3736,-3679,-3650,-3603,-3521,-3395,
+-3262,-3185,-3197,-3342,-3404,-3431,-3420,-3369,-3363,-3366,-3327,-3302,-3254,-3208,-3205,-3168,-3154,-3145,-3110,-3049,
+-3030,-3021,-2986,-2927,-2858,-2777,-2785,-2749,-2661,-2582,-2536,-2517,-2485,-2423,-2352,-2355,-2309,-2302,-2350,-2387,
+-2345,-2281,-2316,-2332,-2215,-2062,-2021,-2131,-2259,-2336,-2386,-2394,-2350,-2298,-2273,-2267,-2289,-2330,-2390,-2457,
+-2505,-2552,-2599,-2607,-2649,-2712,-2792,-2866,-2926,-2966,-2967,-2966,-2964,-2952,-2926,-2879,-2852,-2844,-2815,-2763,
+-2706,-2651,-2644,-2642,-2656,-2683,-2720,-2748,-2764,-2770,-2772,-2770,-2764,-2757,-2743,-2728,-2718,-2715,-2713,-2705,
+-2677,-2670,-2687,-2699,-2737,-2746,-2743,-2760,-2770,-2784,-2821,-2874,-2912,-2940,-2947,-2956,-2972,-2978,-2988,-3009,
+-3008,-3011,-3018,-3002,-2980,-2990,-3012,-3026,-3024,-2996,-2980,-2959,-2933,-2882,-2850,-2863,-2900,-2952,-3005,-3059,
+-3127,-3174,-3191,-3215,-3250,-3266,-3290,-3320,-3369,-3426,-3492,-3564,-3596,-3615,-3695,-3822,-3903,-3929,-3941,-3946,
+-3982,-4001,-4047,-4172,-4392,-4558,-4646,-4704,-4753,-4802,-4853,-4889,-4923,-4953,-4983,-5013,-5030,-5036,-5040,-5035,
+-5031,-5022,-5006,-4986,-4956,-4922,-4893,-4860,-4832,-4806,-4776,-4739,-4708,-4669,-4629,-4590,-4551,-4514,-4472,-4423,
+-4374,-4336,-4295,-4256,-4216,-4142,-4084,-4032,-3976,-3922,-3881,-3848,-3825,-3797,-3776,-3754,-3727,-3698,-3645,-3629,
+-3627,-3578,-3545,-3521,-3482,-3457,-3471,-3457,-3432,-3407,-3388,-3372,-3328,-3260,-3197,-3145,-3094,-3054,-3043,-3031,
+-3006,-2998,-2966,-2913,-2867,-2821,-2760,-2711,-2661,-2601,-2561,-2489,-2410,-2324,-2248,-2177,-2102,-2023,-1939,-1856,
+-1772,-1681,-1614,-1547,-1463,-1375,-1300,-1206,-1123,-1033,-955,-873,-793,-705,-609,-488,-420,-334,-241,-126,
+-49,41,147,229,307,402,512,606,709,792,883,969,1069,1165,1250,1336,1419,1507,1590,1659,
+1765,1853,1935,2026,2127,2223,2340,2450,2561,2670,2740,2776,2876,2946,3002,3043,3063,3134,3190,3225,
+3261,3297,3320,3354,3377,3412,3454,3499,3549,3590,3616,3645,3674,3704,3720,3758,3794,3806,3834,3852,
+3873,3886,3901,3909,3920,3920,3944,4001,4045,4123,4151,4122,4157,4108,4029,3997,3926,3903,3895,3898,
+3910,3903,3899,3893,3874,3860,3827,3822,3805,3754,3718,3670,3626,3590,3565,3552,3548,3546,3554,3558,
+3577,3591,3611,3638,3677,3738,3808,3885,3971,4073,4163,4237,4309,4365,4416,4470,4499,4495,4510,4556,
+4614,4675,4752,4678,4554,4483,4448,4425,4389,4331,4252,4187,4138,4107,4096,4111,4159,4197,4216,4202,
+4180,4152,4132,4088,4024,3944,3867,3813,3796,3874,4130,4296,4404,4498,4603,4707,4781,4832,4868,4949,
+5010,5050,5111,5165,5215,5285,5360,5477,5510,5510,5434,5380,5275,5166,5176,5215,5186,5121,5057,5014,
+4992,4962,4929,4890,4854,4796,4725,4656,4590,4493,4415,4312,4239,4184,4129,4088,4059,4031,4010,3992,
+3954,3906,3849,3779,3682,3588,3485,3396,3306,3222,3154,3096,3048,3005,2972,2948,2926,2916,2919,2925,
+2945,2974,3007,3037,3080,3118,3168,3219,3268,3313,3339,3331,3317,3311,3317,3314,3303,3293,3284,3274,
+3269,3267,3256,3229,3203,3159,3116,3079,3044,3012,2990,2971,2938,2894,2852,2825,2800,2776,2762,2754,
+2749,2741,2737,2731,2729,2729,2736,2779,2817,2830,2775,2693,2730,2810,2872,2915,2940,2891,2791,2649,
+2511,2359,2150,1922,1693,1456,1287,1158,1051,967,906,858,812,770,743,728,713,696,682,670,
+667,679,709,758,815,871,929,998,1068,1141,1207,1269,1339,1418,1492,1528,1537,1537,1551,1552,
+1553,1547,1561,1583,1580,1578,1609,1692,1833,2040,2203,2268,2313,2326,2330,2330,2337,2247,2175,2128,
+2091,2053,2010,1977,1927,1875,1818,1741,1659,1566,1485,1419,1348,1262,1175,1063,955,853,759,667,
+562,444,296,149,28,-75,-164,-247,-313,-370,-418,-457,-481,-483,-450,-374,-233,-193,-174,-220,
+-262,-229,-159,-101,-61,29,169,319,379,472,469,443,382,294,226,162,121,115,131,90,
+14,-54,-190,-280,-341,-377,-456,-533,-527,-524,-588,-626,-744,-828,-846,-871,-978,-1050,-1092,-1063,
+-1148,-1179,-1183,-1190,-1179,-1220,-1248,-1253,-1316,-1430,-1540,-1705,-1829,-1880,-1899,-1913,-1918,-1932,-1951,-1990,
+-2011,-1984,-1982,-1961,-1939,-1907,-1924,-1965,-2068,-2125,-2168,-2305,-2307,-2292,-2281,-2236,-2227,-2235,-2338,-2343,
+-2376,-2471,-2545,-2599,-2662,-2704,-2837,-3045,-3309,-3598,-3906,-4179,-4372,-4483,-4560,-4665,-4760,-4809,-4829,-4856,
+-4860,-4855,-4834,-4809,-4753,-4662,-4573,-4494,-4400,-4171,-3924,-3603,-3340,-3029,-2676,-2392,-2112,-1960,-1911,-1923,
+-1943,-1973,-2056,-2180,-2333,-2431,-2482,-2525,-2586,-2628,-2679,-2736,-2765,-2758,-2817,-2857,-2877,-2928,-2956,-2962,
+-2967,-2982,-3003,-3000,-3023,-3049,-3061,-3088,-3116,-3142,-3175,-3201,-3219,-3246,-3280,-3296,-3347,-3381,-3401,-3429,
+-3448,-3477,-3515,-3531,-3568,-3597,-3620,-3642,-3664,-3664,-3671,-3684,-3689,-3701,-3723,-3746,-3764,-3772,-3793,-3827,
+-3857,-3877,-3917,-3941,-3955,-3967,-3984,-4001,-4018,-4034,-4042,-4050,-4056,-4071,-4076,-4058,-4022,-4005,-3964,-3882,
+-3833,-3815,-3787,-3753,-3702,-3661,-3640,-3621,-3597,-3585,-3556,-3540,-3535,-3486,-3473,-3502,-3502,-3488,-3485,-3453,
+-3397,-3337,-3304,-3286,-3304,-3392,-3536,-3658,-3718,-3761,-3760,-3788,-3789,-3746,-3682,-3643,-3602,-3581,-3532,-3483,
+-3409,-3340,-3297,-3222,-3135,-3058,-2989,-2930,-2897,-2825,-2756,-2692,-2604,-2566,-2529,-2467,-2384,-2319,-2263,-2211,
+-2140,-2048,-1995,-1939,-1883,-1804,-1729,-1647,-1561,-1483,-1399,-1298,-1179,-1067,-959,-846,-722,-609,-520,-426,
+-315,-188,-101,5,83,155,234,315,399,478,552,639,732,833,913,1003,1102,1190,1283,1373,
+1467,1547,1615,1683,1748,1783,1850,1932,2003,2085,2144,2213,2287,2356,2418,2475,2530,2594,2643,2678,
+2727,2799,2892,2954,3020,3069,3104,3141,3197,3223,3229,3250,3246,3300,3269,3191,3133,3087,3133,3256,
+3381,3449,3504,3525,3482,3500,3537,3531,3499,3433,3404,3384,3388,3408,3443,3474,3503,3542,3579,3644,
+3705,3719,3778,3866,3984,4055,4165,4215,4309,4312,4221,3974,3699,3352,2860,2249,1677,1396,1479,1762,
+2093,2362,2593,2743,2732,2736,2746,2745,2739,2711,2668,2623,2575,2528,2474,2411,2339,2261,2180,2105,
+2053,2022,1995,1913,1801,1726,1677,1645,1606,1567,1519,1466,1425,1391,1362,1327,1283,1229,1177,1125,
+1075,1028,981,941,914,883,845,800,755,708,663,622,589,563,544,530,527,525,520,514,
+507,491,492,444,393,327,252,179,118,60,22,-26,-104,-158,-215,-279,-341,-403,-462,-513,
+-556,-598,-630,-660,-692,-724,-751,-774,-793,-815,-830,-837,-850,-866,-881,-891,-908,-896,-891,-887,
+-883,-883,-888,-897,-907,-924,-937,-957,-981,-1003,-1020,-1027,-1034,-1021,-953,-827,-746,-722,-694,-763,
+-868,-917,-922,-921,-924,-922,-907,-881,-837,-817,-846,-890,-867,-874,-941,-925,-932,-950,-954,-939,
+-930,-915,-884,-911,-916,-919,-918,-926,-944,-942,-938,-945,-973,-986,-990,-1003,-1014,-1012,-1007,-1007,
+-1017,-1039,-1062,-1084,-1084,-1007,-944,-959,-869,-995,-1057,-1064,-1061,-1057,-1063,-1068,-1078,-1090,-1096,-1095,
+-1096,-1098,-1102,-1103,-1100,-1102,-1101,-1104,-1111,-1119,-1127,-1132,-1129,-1122,-1121,-1117,-1113,-1111,-1111,-1108,
+-1102,-1103,-1105,-1109,-1105,-1094,-1099,-1104,-1102,-1086,-1084,-1089,-1084,-1056,-1087,-1102,-1111,-1115,-1116,-1125,
+-1140,-1168,-1199,-1217,-1226,-1233,-1246,-1262,-1275,-1287,-1297,-1308,-1325,-1341,-1358,-1373,-1393,-1412,-1430,-1449,
+-1462,-1478,-1490,-1496,-1498,-1496,-1497,-1498,-1496,-1493,-1497,-1505,-1511,-1522,-1538,-1557,-1576,-1598,-1620,-1647,
+-1673,-1701,-1722,-1749,-1771,-1804,-1834,-1875,-1916,-1958,-1994,-2032,-2061,-2095,-2133,-2172,-2212,-2240,-2267,-2294,
+-2319,-2349,-2381,-2411,-2436,-2456,-2477,-2500,-2530,-2563,-2596,-2626,-2656,-2684,-2710,-2730,-2748,-2767,-2785,-2801,
+-2818,-2840,-2864,-2890,-2914,-2938,-2950,-2982,-3005,-3028,-3053,-3078,-3104,-3136,-3167,-3189,-3216,-3241,-3265,-3293,
+-3314,-3338,-3371,-3403,-3438,-3475,-3508,-3542,-3572,-3593,-3614,-3651,-3686,-3724,-3762,-3788,-3804,-3807,-3788,-3770,
+-3848,-3886,-3901,-3913,-3928,-3941,-3951,-3972,-3994,-4007,-4018,-4031,-4049,-4061,-4067,-4087,-4092,-4102,-4105,-4106,
+-4107,-4110,-4111,-4119,-4129,-4137,-4146,-4151,-4159,-4157,-4148,-4146,-4147,-4139,-4125,-4111,-4107,-4101,-4086,-4061,
+-4066,-4059,-4055,-4052,-4041,-3984,-4035,-3959,-3852,-3830,-3843,-3779,-3810,-3824,-3753,-3739,-3750,-3708,-3649,-3611,
+-3485,-3345,-3232,-3202,-3314,-3411,-3460,-3465,-3444,-3406,-3390,-3383,-3344,-3296,-3282,-3245,-3214,-3185,-3177,-3130,
+-3098,-3091,-3043,-3010,-2960,-2902,-2871,-2788,-2723,-2764,-2688,-2633,-2614,-2529,-2504,-2459,-2392,-2346,-2332,-2389,
+-2403,-2384,-2325,-2377,-2365,-2265,-2075,-2063,-2146,-2241,-2315,-2387,-2381,-2335,-2287,-2268,-2251,-2253,-2306,-2356,
+-2422,-2484,-2538,-2588,-2635,-2683,-2761,-2854,-2928,-2979,-3004,-3006,-3009,-3007,-3005,-2997,-2973,-2945,-2927,-2897,
+-2847,-2788,-2703,-2639,-2628,-2649,-2682,-2712,-2739,-2755,-2762,-2763,-2751,-2740,-2730,-2715,-2706,-2707,-2709,-2706,
+-2700,-2691,-2683,-2690,-2709,-2728,-2725,-2761,-2781,-2795,-2800,-2817,-2866,-2916,-2941,-2964,-2989,-3006,-3016,-3025,
+-3028,-3010,-3004,-3006,-2999,-3012,-3019,-3023,-3020,-3002,-2956,-2910,-2870,-2841,-2820,-2826,-2870,-2920,-2954,-2995,
+-3053,-3115,-3150,-3166,-3213,-3253,-3276,-3305,-3346,-3401,-3452,-3490,-3550,-3579,-3561,-3655,-3805,-3889,-3935,-3974,
+-3996,-3999,-4007,-4089,-4255,-4442,-4557,-4636,-4703,-4762,-4820,-4871,-4917,-4959,-4993,-5024,-5053,-5071,-5075,-5073,
+-5069,-5061,-5049,-5035,-5012,-4985,-4956,-4928,-4900,-4872,-4839,-4809,-4771,-4735,-4696,-4656,-4617,-4573,-4530,-4486,
+-4447,-4402,-4355,-4305,-4259,-4215,-4160,-4101,-4029,-3942,-3867,-3829,-3824,-3818,-3806,-3791,-3767,-3748,-3727,-3696,
+-3671,-3650,-3612,-3579,-3550,-3527,-3492,-3475,-3469,-3458,-3430,-3413,-3390,-3381,-3351,-3286,-3217,-3160,-3111,-3094,
+-3087,-3058,-3052,-3014,-2966,-2910,-2873,-2823,-2763,-2685,-2650,-2615,-2546,-2465,-2381,-2306,-2227,-2152,-2069,-1995,
+-1917,-1834,-1756,-1678,-1610,-1546,-1456,-1357,-1260,-1170,-1096,-1009,-927,-826,-730,-650,-566,-458,-372,-281,
+-198,-98,-2,73,168,275,373,471,557,660,767,858,943,1019,1094,1176,1268,1388,1479,1557,
+1659,1741,1835,1914,2005,2127,2238,2329,2457,2522,2563,2632,2737,2779,2846,2899,2943,2994,3043,3094,
+3134,3164,3203,3241,3284,3337,3378,3391,3416,3444,3470,3521,3566,3630,3663,3695,3702,3714,3727,3756,
+3781,3791,3808,3828,3841,3838,3863,3894,3907,3911,3945,3956,3953,3956,3944,3918,3940,3885,3855,3829,
+3797,3797,3822,3834,3833,3809,3793,3772,3742,3709,3671,3626,3581,3545,3519,3497,3489,3487,3488,3497,
+3510,3527,3547,3568,3594,3640,3709,3778,3870,3972,4078,4169,4249,4320,4379,4435,4501,4526,4549,4601,
+4709,4774,4796,4792,4696,4490,4407,4357,4312,4267,4225,4179,4150,4125,4111,4120,4168,4229,4265,4268,
+4246,4237,4228,4216,4169,4086,3994,3920,3892,3935,4061,4297,4482,4562,4652,4717,4773,4852,4920,4984,
+5056,5095,5126,5172,5201,5260,5314,5403,5504,5516,5449,5401,5298,5213,5174,5187,5209,5161,5096,5036,
+5004,4975,4905,4867,4842,4805,4750,4673,4581,4493,4376,4267,4182,4117,4067,4029,4002,3987,3966,3935,
+3911,3871,3830,3779,3711,3617,3514,3405,3312,3229,3162,3106,3055,3020,2989,2966,2947,2922,2903,2906,
+2917,2940,2966,2997,3037,3084,3128,3177,3227,3279,3319,3351,3351,3315,3291,3286,3286,3284,3282,3279,
+3279,3286,3285,3277,3266,3247,3215,3158,3095,3048,3003,2969,2949,2913,2879,2843,2810,2782,2764,2761,
+2751,2750,2738,2727,2719,2722,2732,2774,2814,2884,2927,2935,2926,2948,3036,3089,3120,3145,3090,2964,
+2794,2632,2458,2260,2042,1813,1591,1401,1262,1178,1076,986,918,867,838,837,856,857,847,826,
+813,809,818,837,872,917,970,1027,1090,1163,1244,1316,1377,1444,1522,1585,1620,1614,1597,1588,
+1583,1588,1590,1595,1592,1571,1566,1591,1678,1857,2074,2149,2140,2180,2230,2282,2368,2395,2246,2142,
+2095,2052,1999,1966,1932,1896,1847,1794,1713,1620,1524,1445,1379,1303,1213,1121,1009,897,788,704,
+623,527,417,278,128,2,-98,-188,-278,-355,-421,-484,-539,-585,-619,-644,-649,-612,-567,-544,
+-533,-577,-593,-567,-518,-369,-195,-71,87,209,357,385,322,276,203,137,71,12,-33,-40,
+-22,-4,-55,-180,-280,-357,-407,-469,-495,-533,-575,-591,-622,-714,-811,-852,-887,-948,-1003,-1057,
+-1119,-1158,-1171,-1191,-1223,-1223,-1216,-1220,-1256,-1297,-1400,-1535,-1680,-1817,-1870,-1882,-1909,-1945,-1969,-2028,
+-2062,-2058,-2032,-2038,-2018,-1986,-1967,-2006,-2087,-2178,-2198,-2239,-2360,-2357,-2380,-2321,-2266,-2264,-2301,-2379,
+-2398,-2450,-2538,-2605,-2609,-2626,-2711,-2879,-3062,-3274,-3576,-3902,-4197,-4388,-4486,-4572,-4635,-4637,-4650,-4652,
+-4685,-4702,-4734,-4761,-4764,-4762,-4749,-4731,-4709,-4665,-4535,-4314,-4006,-3685,-3423,-3032,-2578,-2272,-2042,-1951,
+-1856,-1861,-1895,-1987,-2109,-2221,-2313,-2396,-2508,-2548,-2560,-2591,-2646,-2667,-2673,-2747,-2829,-2859,-2915,-2949,
+-2969,-2974,-2966,-2982,-2979,-3012,-3043,-3051,-3062,-3092,-3121,-3149,-3168,-3179,-3213,-3238,-3256,-3288,-3317,-3344,
+-3359,-3388,-3415,-3450,-3489,-3532,-3556,-3578,-3596,-3605,-3606,-3618,-3630,-3650,-3677,-3704,-3718,-3730,-3742,-3763,
+-3764,-3787,-3824,-3881,-3906,-3921,-3943,-3960,-3971,-3987,-4018,-4044,-4053,-4053,-4063,-4073,-4061,-4001,-3968,-3929,
+-3866,-3792,-3772,-3753,-3737,-3698,-3664,-3624,-3609,-3577,-3544,-3522,-3499,-3493,-3477,-3453,-3456,-3460,-3451,-3424,
+-3396,-3343,-3295,-3283,-3271,-3258,-3355,-3475,-3576,-3688,-3787,-3822,-3837,-3824,-3744,-3635,-3535,-3470,-3429,-3372,
+-3345,-3298,-3270,-3280,-3218,-3189,-3122,-3038,-2951,-2881,-2806,-2745,-2695,-2646,-2592,-2514,-2473,-2403,-2352,-2290,
+-2250,-2168,-2077,-2014,-1932,-1850,-1773,-1700,-1621,-1526,-1445,-1358,-1263,-1149,-1041,-937,-818,-694,-587,-482,
+-380,-281,-184,-75,21,99,185,261,329,403,481,563,652,751,855,939,1022,1125,1218,1307,
+1388,1476,1553,1618,1689,1743,1806,1874,1943,2010,2087,2145,2209,2282,2337,2391,2448,2518,2589,2644,
+2692,2753,2828,2911,2986,3044,3072,3103,3133,3191,3210,3235,3218,3241,3308,3255,3169,3046,2996,3045,
+3171,3318,3402,3417,3446,3460,3481,3452,3408,3340,3281,3288,3292,3306,3342,3390,3452,3537,3596,3617,
+3655,3715,3775,3841,3903,4013,4102,4209,4245,4282,4269,4157,3934,3690,3411,2978,2385,1796,1487,1578,
+1807,2106,2394,2575,2695,2754,2779,2779,2770,2763,2745,2699,2646,2594,2546,2496,2440,2370,2294,2213,
+2138,2089,2078,2158,2067,1901,1771,1703,1667,1636,1605,1572,1514,1465,1426,1392,1350,1303,1256,1218,
+1181,1138,1092,1043,1001,964,933,890,852,818,780,740,693,655,625,592,566,563,562,558,
+560,561,543,542,485,433,372,280,195,136,81,29,-19,-68,-124,-188,-253,-320,-384,-434,
+-481,-529,-564,-597,-633,-665,-697,-727,-753,-771,-791,-805,-818,-838,-859,-872,-878,-889,-879,-872,
+-871,-874,-881,-886,-894,-905,-906,-905,-913,-928,-943,-957,-971,-988,-999,-965,-880,-778,-632,-421,
+-581,-750,-816,-854,-889,-917,-925,-913,-884,-856,-844,-864,-901,-914,-921,-942,-940,-930,-908,-926,
+-930,-938,-944,-940,-937,-924,-919,-910,-910,-918,-931,-947,-957,-964,-972,-980,-982,-981,-977,-990,
+-990,-976,-982,-1006,-1046,-1069,-1063,-989,-975,-814,-907,-1023,-1038,-1040,-1040,-1046,-1052,-1051,-1055,-1058,
+-1058,-1062,-1068,-1075,-1080,-1076,-1075,-1072,-1074,-1080,-1086,-1092,-1095,-1095,-1094,-1094,-1093,-1095,-1096,-1092,
+-1087,-1084,-1077,-1078,-1079,-1080,-1065,-1057,-1056,-1055,-1042,-1028,-1017,-1014,-1012,-1028,-1037,-1027,-1052,-1081,
+-1082,-1094,-1121,-1147,-1166,-1178,-1192,-1209,-1223,-1235,-1248,-1263,-1276,-1298,-1314,-1326,-1343,-1366,-1386,-1405,
+-1425,-1441,-1454,-1463,-1470,-1473,-1472,-1474,-1474,-1460,-1468,-1469,-1474,-1476,-1479,-1490,-1514,-1541,-1562,-1581,
+-1605,-1627,-1656,-1684,-1710,-1729,-1756,-1790,-1830,-1877,-1927,-1964,-1999,-2029,-2067,-2107,-2143,-2181,-2217,-2250,
+-2276,-2302,-2331,-2363,-2391,-2416,-2438,-2463,-2488,-2519,-2552,-2585,-2616,-2646,-2670,-2686,-2710,-2728,-2746,-2759,
+-2775,-2796,-2817,-2838,-2853,-2893,-2907,-2934,-2966,-2984,-3012,-3042,-3067,-3097,-3125,-3152,-3183,-3217,-3241,-3262,
+-3283,-3311,-3339,-3378,-3413,-3449,-3479,-3510,-3546,-3568,-3588,-3609,-3639,-3670,-3699,-3714,-3741,-3765,-3781,-3777,
+-3733,-3792,-3853,-3889,-3903,-3926,-3903,-3839,-3920,-3970,-3995,-4003,-4025,-4049,-4063,-4075,-4084,-4093,-4097,-4097,
+-4104,-4113,-4119,-4117,-4124,-4136,-4144,-4153,-4157,-4161,-4153,-4149,-4145,-4141,-4136,-4131,-4124,-4119,-4108,-4101,
+-4094,-4091,-4084,-4077,-4057,-4059,-4053,-4039,-4020,-3924,-3870,-3847,-3827,-3763,-3798,-3786,-3748,-3790,-3743,-3682,
+-3657,-3542,-3423,-3288,-3212,-3289,-3400,-3460,-3493,-3491,-3471,-3428,-3405,-3367,-3340,-3295,-3264,-3236,-3208,-3164,
+-3120,-3095,-3096,-3074,-3040,-2970,-2887,-2869,-2803,-2752,-2678,-2732,-2720,-2668,-2610,-2549,-2496,-2439,-2394,-2402,
+-2414,-2439,-2439,-2403,-2370,-2392,-2324,-2113,-2095,-2167,-2240,-2329,-2390,-2402,-2391,-2341,-2291,-2253,-2258,-2311,
+-2359,-2416,-2486,-2531,-2607,-2675,-2723,-2798,-2868,-2916,-2947,-2970,-2979,-3003,-3013,-3016,-3018,-3010,-2984,-2939,
+-2892,-2850,-2793,-2721,-2648,-2625,-2650,-2680,-2708,-2732,-2748,-2750,-2746,-2733,-2718,-2710,-2704,-2686,-2683,-2686,
+-2686,-2685,-2681,-2679,-2695,-2716,-2741,-2752,-2774,-2784,-2805,-2812,-2817,-2849,-2899,-2938,-2966,-2992,-3004,-3022,
+-3025,-3014,-2995,-2964,-2968,-2993,-3009,-2999,-2988,-2984,-2947,-2882,-2832,-2801,-2789,-2809,-2837,-2879,-2920,-2957,
+-2993,-3040,-3085,-3123,-3179,-3228,-3264,-3282,-3308,-3365,-3423,-3471,-3519,-3584,-3611,-3593,-3708,-3827,-3911,-3954,
+-3995,-4012,-3997,-4034,-4152,-4318,-4435,-4529,-4606,-4676,-4753,-4823,-4882,-4940,-4988,-5026,-5062,-5084,-5098,-5099,
+-5098,-5093,-5084,-5072,-5056,-5035,-5013,-4989,-4967,-4938,-4904,-4870,-4830,-4799,-4764,-4723,-4682,-4644,-4609,-4568,
+-4519,-4458,-4412,-4369,-4332,-4289,-4222,-4170,-4103,-3984,-3838,-3693,-3647,-3763,-3809,-3812,-3811,-3788,-3769,-3731,
+-3702,-3676,-3639,-3603,-3578,-3555,-3536,-3504,-3494,-3487,-3485,-3484,-3458,-3446,-3419,-3390,-3364,-3324,-3259,-3195,
+-3162,-3156,-3135,-3100,-3059,-3013,-2956,-2908,-2860,-2810,-2750,-2694,-2641,-2549,-2504,-2435,-2359,-2284,-2201,-2128,
+-2051,-1973,-1891,-1819,-1748,-1677,-1594,-1513,-1415,-1333,-1247,-1149,-1063,-978,-887,-798,-693,-613,-516,-419,
+-330,-248,-158,-57,34,117,219,328,430,530,621,697,789,918,999,1087,1157,1230,1329,1426,
+1508,1587,1673,1783,1901,1996,2095,2201,2304,2399,2463,2527,2635,2702,2749,2783,2820,2872,2913,2966,
+3012,3060,3096,3126,3162,3195,3237,3268,3308,3340,3380,3424,3442,3464,3494,3535,3579,3607,3633,3651,
+3681,3704,3726,3753,3767,3790,3803,3817,3833,3845,3857,3859,3847,3819,3824,3813,3789,3790,3821,3874,
+3781,3701,3686,3713,3721,3709,3732,3741,3724,3691,3665,3597,3557,3514,3473,3447,3434,3436,3439,3451,
+3463,3484,3490,3514,3542,3573,3619,3674,3753,3843,3945,4045,4131,4198,4253,4300,4350,4414,4466,4518,
+4608,4861,5044,4945,4692,4478,4353,4290,4249,4206,4167,4145,4128,4120,4125,4128,4158,4310,4283,4298,
+4289,4283,4294,4302,4288,4227,4141,4058,4016,4025,4105,4258,4505,4617,4678,4749,4769,4820,4899,4959,
+5011,5056,5082,5096,5132,5179,5248,5336,5428,5487,5469,5436,5384,5318,5275,5252,5237,5186,5108,5052,
+5002,4950,4888,4835,4815,4794,4739,4659,4566,4479,4376,4246,4154,4081,4022,3983,3959,3946,3932,3905,
+3868,3833,3788,3744,3695,3631,3540,3438,3332,3239,3166,3110,3063,3018,2984,2955,2934,2922,2902,2891,
+2888,2897,2913,2947,2982,3019,3061,3108,3164,3220,3265,3310,3334,3322,3298,3269,3248,3240,3242,3239,
+3245,3251,3265,3278,3288,3295,3278,3238,3180,3117,3077,3047,3030,2998,2948,2879,2847,2820,2786,2765,
+2768,2748,2736,2722,2711,2703,2699,2719,2768,2821,2885,2955,3002,3042,3110,3148,3158,3148,3105,3022,
+2897,2779,2665,2517,2356,2195,2019,1839,1672,1515,1408,1313,1192,1060,969,916,902,921,947,956,
+944,929,925,928,937,963,1008,1064,1127,1195,1275,1358,1436,1503,1572,1644,1693,1703,1668,1623,
+1581,1581,1603,1611,1605,1587,1571,1571,1590,1702,1879,2039,2089,2081,2167,2189,2217,2280,2306,2226,
+2116,2079,2015,1960,1929,1906,1872,1825,1766,1678,1579,1488,1408,1334,1254,1164,1084,982,870,760,
+670,586,489,382,261,126,6,-100,-207,-306,-390,-465,-537,-605,-666,-721,-772,-817,-853,-868,
+-877,-892,-912,-926,-928,-870,-748,-608,-400,-163,29,207,251,242,165,94,37,-24,-67,-112,
+-142,-149,-122,-89,-174,-269,-360,-420,-402,-343,-428,-556,-575,-616,-708,-813,-863,-908,-929,-967,
+-968,-1055,-1149,-1162,-1178,-1201,-1214,-1214,-1271,-1271,-1318,-1407,-1518,-1617,-1770,-1844,-1866,-1925,-1973,-2004,
+-2038,-2023,-2038,-2047,-2064,-2071,-2086,-2082,-2105,-2202,-2298,-2333,-2376,-2394,-2413,-2400,-2325,-2301,-2370,-2404,
+-2401,-2423,-2505,-2593,-2574,-2608,-2702,-2790,-2900,-3097,-3345,-3647,-3928,-4190,-4341,-4402,-4447,-4503,-4521,-4465,
+-4494,-4589,-4626,-4654,-4671,-4690,-4725,-4751,-4770,-4775,-4772,-4747,-4649,-4472,-4236,-3840,-3383,-2896,-2466,-2228,
+-2025,-1871,-1818,-1841,-1909,-2048,-2155,-2185,-2271,-2422,-2529,-2577,-2618,-2651,-2679,-2696,-2727,-2793,-2830,-2896,
+-2921,-2946,-2953,-2947,-2961,-2980,-3016,-3040,-3053,-3055,-3074,-3100,-3135,-3152,-3149,-3176,-3203,-3219,-3233,-3251,
+-3275,-3288,-3314,-3370,-3402,-3458,-3516,-3539,-3557,-3561,-3566,-3577,-3574,-3585,-3613,-3638,-3659,-3675,-3697,-3715,
+-3743,-3750,-3776,-3829,-3857,-3878,-3885,-3901,-3910,-3937,-3958,-3973,-4013,-4039,-4044,-4054,-4068,-4053,-3995,-3926,
+-3875,-3837,-3826,-3814,-3751,-3691,-3659,-3649,-3608,-3577,-3540,-3516,-3483,-3467,-3457,-3448,-3426,-3425,-3404,-3389,
+-3362,-3326,-3268,-3264,-3265,-3252,-3253,-3393,-3584,-3685,-3735,-3834,-3872,-3898,-3897,-3819,-3704,-3603,-3534,-3469,
+-3408,-3373,-3315,-3250,-3221,-3182,-3127,-3067,-3002,-2899,-2835,-2741,-2670,-2639,-2581,-2543,-2507,-2461,-2400,-2337,
+-2289,-2233,-2155,-2103,-2016,-1939,-1847,-1752,-1668,-1578,-1490,-1397,-1310,-1217,-1108,-1018,-919,-796,-677,-572,
+-477,-373,-270,-154,-47,33,132,217,294,374,438,504,582,677,782,884,967,1049,1133,1230,
+1322,1394,1475,1559,1635,1690,1747,1817,1872,1939,2014,2078,2136,2209,2278,2329,2388,2449,2519,2585,
+2644,2703,2758,2847,2918,2980,3027,3053,3079,3126,3166,3208,3244,3249,3295,3319,3199,3041,2917,2862,
+2906,3018,3189,3311,3353,3405,3449,3422,3370,3314,3230,3204,3218,3253,3302,3358,3424,3502,3569,3622,
+3661,3699,3745,3793,3844,3909,4042,4145,4210,4238,4264,4211,4071,3853,3621,3389,2999,2434,1842,1487,
+1519,1792,2130,2404,2587,2707,2777,2812,2804,2794,2781,2786,2737,2677,2620,2564,2514,2461,2399,2326,
+2244,2167,2099,2059,2042,2019,1946,1821,1738,1697,1668,1642,1609,1547,1498,1454,1408,1356,1307,1272,
+1243,1215,1184,1142,1098,1057,1020,987,947,897,851,817,785,746,722,683,641,607,602,606,
+606,615,608,589,553,507,448,387,299,218,158,105,48,2,-51,-99,-157,-219,-285,-342,
+-391,-437,-487,-521,-554,-588,-625,-663,-697,-723,-740,-756,-772,-791,-813,-843,-851,-854,-870,-865,
+-863,-864,-872,-882,-888,-891,-889,-880,-865,-863,-874,-886,-889,-889,-935,-975,-968,-914,-828,-704,
+-497,-516,-553,-614,-743,-847,-907,-933,-933,-918,-906,-893,-891,-904,-922,-925,-925,-921,-914,-907,
+-906,-908,-916,-925,-926,-914,-868,-902,-900,-906,-914,-923,-934,-946,-958,-969,-972,-968,-960,-961,
+-969,-959,-956,-963,-973,-991,-1010,-1033,-1037,-999,-857,-838,-980,-975,-1000,-1026,-1030,-1022,-1017,-1016,
+-1021,-1025,-1029,-1034,-1040,-1044,-1043,-1041,-1041,-1044,-1049,-1049,-1051,-1053,-1056,-1060,-1065,-1067,-1068,-1067,
+-1065,-1061,-1059,-1055,-1053,-1052,-1054,-1025,-952,-1013,-1028,-1022,-999,-985,-983,-993,-1008,-1006,-967,-993,
+-1044,-1047,-1074,-1094,-1112,-1138,-1151,-1165,-1178,-1189,-1199,-1211,-1231,-1249,-1268,-1291,-1306,-1322,-1344,-1363,
+-1382,-1401,-1420,-1433,-1439,-1446,-1452,-1452,-1447,-1448,-1444,-1438,-1438,-1441,-1444,-1447,-1454,-1471,-1499,-1525,
+-1548,-1567,-1587,-1616,-1645,-1679,-1703,-1722,-1752,-1793,-1839,-1880,-1924,-1963,-1997,-2037,-2075,-2112,-2150,-2184,
+-2218,-2246,-2280,-2308,-2337,-2364,-2397,-2423,-2449,-2475,-2506,-2540,-2570,-2598,-2621,-2641,-2661,-2681,-2699,-2719,
+-2734,-2748,-2770,-2790,-2810,-2840,-2870,-2902,-2927,-2951,-2976,-3007,-3039,-3072,-3098,-3135,-3154,-3176,-3201,-3217,
+-3234,-3264,-3289,-3308,-3335,-3361,-3401,-3431,-3455,-3485,-3520,-3551,-3592,-3639,-3671,-3694,-3716,-3746,-3772,-3798,
+-3810,-3817,-3818,-3851,-3888,-3912,-3931,-3934,-3938,-3957,-3972,-3986,-3996,-4009,-4031,-4049,-4060,-4068,-4074,-4049,
+-3950,-4063,-4110,-4128,-4129,-4137,-4143,-4145,-4150,-4159,-4157,-4149,-4147,-4144,-4142,-4141,-4136,-4138,-4128,-4124,
+-4125,-4129,-4123,-4111,-4099,-4079,-4076,-4056,-4043,-4045,-4018,-3946,-3904,-3843,-3758,-3784,-3800,-3796,-3829,-3827,
+-3768,-3722,-3617,-3506,-3379,-3273,-3251,-3278,-3447,-3466,-3508,-3511,-3487,-3456,-3382,-3360,-3338,-3299,-3270,-3226,
+-3191,-3132,-3112,-3125,-3089,-3038,-3001,-2908,-2816,-2850,-2767,-2749,-2710,-2756,-2706,-2660,-2601,-2515,-2495,-2492,
+-2440,-2457,-2443,-2449,-2447,-2397,-2419,-2346,-2243,-2194,-2223,-2247,-2324,-2411,-2477,-2494,-2457,-2392,-2310,-2285,
+-2347,-2412,-2479,-2528,-2570,-2643,-2702,-2744,-2775,-2805,-2834,-2858,-2886,-2909,-2944,-2955,-2962,-2977,-2967,-2945,
+-2909,-2868,-2831,-2783,-2725,-2659,-2635,-2648,-2675,-2707,-2728,-2733,-2732,-2726,-2713,-2699,-2697,-2694,-2676,-2660,
+-2658,-2663,-2673,-2683,-2692,-2707,-2726,-2747,-2751,-2756,-2761,-2781,-2801,-2808,-2825,-2870,-2911,-2944,-2964,-2979,
+-2991,-2980,-2973,-2953,-2932,-2931,-2944,-2956,-2948,-2927,-2899,-2853,-2806,-2776,-2748,-2739,-2779,-2834,-2878,-2920,
+-2953,-2987,-3040,-3077,-3120,-3174,-3228,-3264,-3281,-3301,-3359,-3430,-3495,-3552,-3605,-3629,-3623,-3752,-3854,-3928,
+-3969,-3997,-4006,-4007,-4071,-4214,-4336,-4398,-4477,-4551,-4632,-4724,-4807,-4883,-4950,-5004,-5048,-5083,-5109,-5121,
+-5120,-5119,-5114,-5103,-5091,-5074,-5053,-5035,-5016,-5001,-4972,-4939,-4902,-4865,-4829,-4791,-4747,-4705,-4673,-4634,
+-4594,-4546,-4496,-4434,-4388,-4357,-4304,-4256,-4197,-4082,-3895,-3590,-3327,-3477,-3720,-3817,-3842,-3833,-3807,-3781,
+-3739,-3717,-3693,-3654,-3623,-3587,-3570,-3558,-3543,-3536,-3541,-3536,-3515,-3510,-3510,-3476,-3451,-3422,-3389,-3356,
+-3317,-3270,-3235,-3198,-3164,-3110,-3064,-3004,-2951,-2895,-2850,-2785,-2725,-2670,-2608,-2547,-2484,-2414,-2344,-2268,
+-2197,-2120,-2042,-1966,-1890,-1824,-1749,-1659,-1557,-1451,-1384,-1302,-1203,-1106,-1006,-921,-822,-726,-644,-559,
+-477,-398,-304,-218,-109,-18,77,172,275,371,465,563,682,763,839,934,1018,1133,1217,1301,
+1394,1505,1589,1658,1737,1841,1952,2066,2167,2276,2347,2411,2509,2569,2620,2634,2672,2703,2775,2831,
+2875,2918,2973,3014,3063,3119,3148,3163,3175,3216,3273,3300,3311,3339,3383,3435,3473,3503,3518,3535,
+3550,3566,3600,3633,3665,3698,3725,3747,3761,3754,3775,3787,3767,3757,3739,3732,3728,3730,3777,3793,
+3818,3783,3660,3588,3572,3594,3594,3606,3610,3591,3562,3528,3494,3461,3429,3407,3394,3377,3380,3386,
+3404,3428,3451,3475,3503,3522,3558,3597,3651,3725,3811,3899,3984,4057,4107,4140,4167,4193,4220,4274,
+4319,4386,4488,4597,4595,4586,4344,4227,4181,4152,4131,4109,4095,4088,4101,4122,4130,4158,4194,4220,
+4242,4265,4294,4327,4346,4327,4271,4201,4132,4108,4158,4279,4469,4621,4704,4758,4803,4838,4901,4942,
+4971,4981,4997,5007,5036,5082,5169,5341,5454,5526,5560,5580,5556,5464,5420,5367,5293,5211,5116,5040,
+4980,4919,4863,4844,4815,4764,4706,4639,4556,4440,4349,4246,4158,4068,4007,3958,3923,3901,3889,3880,
+3853,3810,3760,3706,3659,3610,3544,3459,3356,3255,3166,3099,3048,3000,2958,2925,2898,2880,2871,2860,
+2853,2852,2862,2877,2921,2965,2998,3031,3075,3134,3189,3228,3274,3307,3296,3273,3250,3225,3204,3193,
+3191,3209,3238,3258,3306,3320,3305,3256,3213,3166,3116,3087,3059,3037,3011,2965,2911,2850,2808,2767,
+2743,2750,2740,2722,2712,2696,2688,2689,2716,2764,2825,2886,2954,3019,3091,3132,3133,3069,3023,2956,
+2879,2793,2701,2604,2504,2395,2287,2168,2043,1933,1819,1713,1600,1445,1288,1155,1067,1018,1009,1019,
+1044,1052,1043,1029,1019,1016,1035,1084,1150,1227,1304,1386,1477,1560,1634,1705,1773,1792,1766,1711,
+1648,1594,1588,1611,1619,1611,1598,1585,1584,1633,1736,1866,2019,2119,2084,2116,2128,2141,2155,2164,
+2117,2057,2032,1976,1925,1896,1877,1840,1794,1730,1639,1541,1446,1363,1282,1196,1114,1039,955,850,
+743,650,557,461,354,244,125,6,-109,-223,-322,-419,-503,-582,-668,-747,-813,-869,-927,-986,
+-1038,-1080,-1114,-1143,-1163,-1177,-1142,-1072,-950,-775,-532,-335,-48,107,107,32,15,-28,-87,-118,
+-145,-173,-180,-187,-148,-128,-178,-289,-418,-405,-336,-398,-580,-591,-568,-646,-746,-823,-874,-914,
+-966,-997,-1083,-1169,-1194,-1220,-1242,-1248,-1238,-1215,-1234,-1336,-1420,-1517,-1613,-1685,-1804,-1874,-1921,-1978,
+-2015,-2034,-2043,-2086,-2135,-2161,-2186,-2198,-2189,-2232,-2323,-2438,-2453,-2410,-2387,-2402,-2405,-2413,-2430,-2446,
+-2438,-2440,-2482,-2521,-2523,-2551,-2621,-2739,-2874,-3028,-3252,-3477,-3757,-4059,-4260,-4337,-4336,-4378,-4395,-4443,
+-4459,-4479,-4499,-4513,-4534,-4556,-4595,-4648,-4702,-4743,-4776,-4803,-4818,-4811,-4735,-4558,-4259,-3806,-3283,-2825,
+-2473,-2244,-1951,-1802,-1893,-1952,-2053,-2162,-2185,-2284,-2357,-2442,-2532,-2562,-2613,-2676,-2720,-2737,-2763,-2831,
+-2896,-2902,-2899,-2879,-2880,-2907,-2980,-3011,-3037,-3056,-3072,-3092,-3123,-3143,-3138,-3135,-3158,-3180,-3219,-3229,
+-3229,-3249,-3271,-3311,-3364,-3402,-3449,-3504,-3519,-3534,-3539,-3546,-3543,-3531,-3554,-3584,-3604,-3623,-3652,-3684,
+-3716,-3749,-3770,-3797,-3831,-3858,-3893,-3899,-3897,-3899,-3913,-3927,-3943,-3974,-3999,-4011,-4013,-4017,-4035,-3999,
+-3951,-3876,-3820,-3777,-3753,-3760,-3686,-3659,-3637,-3606,-3575,-3540,-3520,-3488,-3439,-3411,-3416,-3368,-3370,-3380,
+-3352,-3300,-3240,-3228,-3239,-3231,-3177,-3242,-3413,-3580,-3749,-3860,-3906,-3983,-3996,-3974,-3909,-3836,-3753,-3696,
+-3602,-3530,-3466,-3392,-3277,-3198,-3059,-2983,-2928,-2854,-2811,-2790,-2746,-2678,-2564,-2490,-2422,-2426,-2437,-2399,
+-2355,-2288,-2222,-2157,-2094,-2003,-1913,-1846,-1749,-1650,-1555,-1445,-1357,-1266,-1175,-1068,-981,-881,-771,-665,
+-557,-458,-363,-258,-129,-30,48,150,226,316,394,463,539,624,723,821,911,984,1054,1151,
+1250,1336,1423,1505,1577,1646,1714,1768,1824,1881,1946,2019,2076,2141,2218,2279,2336,2406,2467,2531,
+2601,2673,2720,2794,2884,2942,2987,3015,3046,3076,3092,3140,3217,3222,3240,3235,3204,3100,2934,2751,
+2687,2767,2891,3043,3198,3303,3376,3386,3329,3272,3217,3194,3215,3257,3316,3364,3434,3504,3570,3616,
+3663,3692,3723,3757,3812,3869,3949,4085,4141,4194,4219,4182,4126,4011,3790,3542,3294,2938,2443,1865,
+1519,1533,1823,2158,2427,2606,2721,2784,2819,2829,2814,2797,2779,2753,2700,2637,2574,2520,2474,2418,
+2351,2270,2188,2127,2110,2092,2001,1916,1845,1795,1743,1699,1651,1602,1561,1520,1471,1416,1364,1318,
+1287,1254,1226,1209,1173,1135,1100,1072,1040,1004,951,908,867,826,786,748,714,688,657,644,
+650,644,633,616,601,564,500,436,385,314,240,176,119,72,23,-27,-82,-135,-187,-244,
+-298,-349,-395,-437,-476,-509,-544,-581,-613,-648,-678,-699,-715,-735,-754,-783,-811,-834,-843,-856,
+-854,-851,-860,-871,-880,-878,-877,-868,-853,-836,-828,-833,-844,-856,-867,-922,-961,-971,-950,-894,
+-778,-602,-504,-314,-368,-581,-773,-886,-930,-935,-926,-911,-896,-888,-900,-907,-913,-904,-901,-907,
+-909,-901,-898,-899,-896,-897,-898,-894,-892,-887,-889,-896,-910,-928,-939,-950,-946,-935,-927,-931,
+-934,-932,-936,-935,-925,-924,-928,-950,-984,-1009,-1008,-982,-952,-996,-970,-945,-997,-1002,-992,-980,
+-979,-983,-991,-995,-997,-1001,-1003,-1003,-1008,-1011,-1013,-1015,-1016,-1016,-1019,-1021,-1026,-1029,-1031,-1034,
+-1032,-1034,-1033,-1032,-1024,-1019,-1015,-1022,-1017,-1004,-1003,-995,-988,-973,-952,-941,-923,-921,-938,-908,
+-881,-961,-989,-1007,-1030,-1036,-1043,-1060,-1115,-1115,-1120,-1097,-1131,-1172,-1194,-1233,-1255,-1274,-1296,-1317,
+-1335,-1357,-1377,-1394,-1407,-1414,-1422,-1428,-1431,-1423,-1422,-1415,-1409,-1413,-1421,-1428,-1428,-1433,-1443,-1456,
+-1477,-1502,-1529,-1551,-1577,-1608,-1638,-1666,-1691,-1719,-1756,-1793,-1833,-1878,-1919,-1957,-1999,-2037,-2075,-2108,
+-2137,-2168,-2204,-2240,-2272,-2310,-2344,-2378,-2404,-2430,-2453,-2483,-2517,-2549,-2571,-2591,-2609,-2629,-2649,-2673,
+-2692,-2706,-2725,-2747,-2770,-2794,-2820,-2855,-2889,-2918,-2949,-2979,-3011,-3039,-3066,-3092,-3105,-3111,-3108,-3127,
+-3154,-3182,-3228,-3252,-3284,-3313,-3345,-3382,-3408,-3440,-3479,-3517,-3558,-3597,-3630,-3662,-3681,-3689,-3716,-3749,
+-3777,-3797,-3809,-3824,-3852,-3886,-3915,-3937,-3957,-3972,-3977,-3978,-3989,-4005,-4018,-4032,-4036,-4047,-4058,-4062,
+-4053,-4036,-4079,-4059,-4097,-4114,-4136,-4142,-4146,-4152,-4163,-4161,-4146,-4142,-4142,-4142,-4145,-4144,-4151,-4151,
+-4156,-4162,-4162,-4151,-4147,-4119,-4096,-4084,-4067,-4054,-4061,-4067,-4037,-3953,-3939,-3906,-3865,-3847,-3822,-3790,
+-3826,-3846,-3774,-3705,-3579,-3418,-3329,-3230,-3219,-3429,-3476,-3506,-3540,-3526,-3500,-3455,-3401,-3373,-3334,-3303,
+-3249,-3211,-3168,-3135,-3128,-3096,-3055,-3026,-2971,-2892,-2822,-2802,-2771,-2745,-2715,-2731,-2672,-2620,-2585,-2534,
+-2527,-2526,-2506,-2485,-2478,-2466,-2425,-2429,-2355,-2307,-2286,-2290,-2294,-2308,-2428,-2545,-2592,-2566,-2508,-2415,
+-2348,-2372,-2457,-2530,-2572,-2602,-2637,-2663,-2688,-2702,-2700,-2716,-2740,-2772,-2810,-2842,-2862,-2881,-2886,-2883,
+-2883,-2880,-2861,-2827,-2779,-2715,-2658,-2644,-2648,-2673,-2708,-2728,-2729,-2731,-2725,-2707,-2683,-2681,-2687,-2677,
+-2663,-2650,-2645,-2654,-2679,-2705,-2724,-2734,-2744,-2744,-2744,-2731,-2745,-2760,-2779,-2802,-2831,-2864,-2890,-2899,
+-2916,-2929,-2930,-2897,-2878,-2872,-2870,-2872,-2872,-2862,-2829,-2796,-2764,-2731,-2732,-2750,-2767,-2786,-2838,-2871,
+-2902,-2940,-2972,-3024,-3072,-3121,-3168,-3212,-3254,-3284,-3313,-3353,-3417,-3488,-3545,-3577,-3615,-3642,-3746,-3841,
+-3899,-3923,-3947,-3970,-4025,-4152,-4283,-4329,-4351,-4410,-4485,-4577,-4676,-4777,-4870,-4944,-5009,-5061,-5097,-5123,
+-5137,-5139,-5138,-5132,-5124,-5110,-5092,-5074,-5059,-5045,-5026,-5000,-4966,-4930,-4894,-4853,-4815,-4771,-4727,-4688,
+-4652,-4613,-4565,-4526,-4480,-4420,-4373,-4339,-4281,-4211,-4082,-3809,-3370,-3319,-3555,-3766,-3855,-3884,-3876,-3842,
+-3805,-3774,-3747,-3717,-3694,-3649,-3610,-3606,-3599,-3587,-3572,-3590,-3581,-3580,-3565,-3551,-3515,-3509,-3473,-3447,
+-3417,-3389,-3353,-3315,-3272,-3228,-3176,-3117,-3048,-2990,-2940,-2886,-2828,-2772,-2710,-2649,-2585,-2519,-2459,-2391,
+-2322,-2254,-2181,-2110,-2038,-1963,-1889,-1808,-1716,-1603,-1512,-1437,-1347,-1235,-1147,-1058,-980,-887,-798,-703,
+-609,-528,-442,-345,-258,-167,-79,25,130,231,322,418,505,590,708,812,906,985,1079,1179,
+1272,1351,1436,1518,1623,1723,1822,1928,2034,2139,2224,2265,2368,2439,2467,2501,2548,2600,2635,2691,
+2744,2799,2836,2889,2931,2971,3016,3049,3092,3129,3162,3189,3220,3252,3280,3316,3347,3385,3419,3435,
+3444,3453,3475,3510,3546,3581,3611,3638,3669,3663,3667,3675,3678,3685,3690,3668,3645,3648,3733,3875,
+3846,3820,3853,3643,3490,3464,3476,3513,3538,3545,3521,3490,3453,3424,3386,3364,3339,3326,3333,3344,
+3357,3372,3389,3427,3452,3483,3512,3544,3584,3631,3694,3768,3850,3927,3985,4022,4039,4048,4060,4079,
+4108,4139,4174,4232,4273,4269,4242,4147,4101,4087,4081,4077,4074,4076,4077,4101,4134,4155,4191,4216,
+4225,4228,4236,4281,4317,4347,4349,4322,4283,4247,4214,4262,4411,4626,4691,4756,4809,4864,4903,4938,
+4957,4970,4970,4957,4978,5036,5126,5316,5472,5566,5613,5611,5533,5447,5372,5314,5246,5172,5099,5020,
+4955,4886,4838,4799,4810,4781,4699,4603,4521,4424,4323,4246,4158,4099,4018,3956,3910,3874,3844,3823,
+3809,3791,3757,3710,3650,3588,3524,3450,3362,3268,3171,3089,3030,2983,2936,2890,2860,2833,2818,2811,
+2805,2804,2807,2821,2856,2899,2950,2972,2995,3028,3075,3129,3171,3214,3254,3279,3267,3254,3228,3216,
+3201,3211,3221,3251,3289,3334,3345,3296,3229,3193,3156,3105,3071,3036,3003,2965,2933,2893,2839,2772,
+2750,2739,2731,2729,2715,2703,2692,2684,2692,2718,2770,2841,2887,2924,2981,3024,3050,3013,2955,2898,
+2829,2759,2691,2633,2567,2494,2419,2339,2255,2164,2088,2024,1953,1854,1716,1576,1456,1370,1289,1205,
+1156,1143,1166,1152,1118,1090,1076,1094,1148,1220,1307,1394,1483,1578,1672,1748,1817,1870,1873,1835,
+1785,1731,1670,1638,1633,1628,1630,1632,1623,1620,1668,1748,1860,2004,2058,1986,2071,2093,2054,2013,
+2000,1988,1958,1935,1908,1870,1850,1832,1797,1747,1682,1590,1494,1403,1311,1230,1146,1073,997,913,
+816,714,617,521,424,323,224,123,3,-121,-239,-337,-433,-522,-614,-716,-813,-891,-949,-1014,
+-1081,-1150,-1210,-1255,-1287,-1312,-1339,-1323,-1280,-1175,-1006,-804,-580,-338,-128,-81,-75,-69,-88,-112,
+-146,-146,-194,-232,-241,-199,-133,-161,-249,-382,-457,-412,-379,-559,-645,-600,-602,-660,-730,-845,
+-933,-995,-1049,-1131,-1191,-1221,-1244,-1259,-1262,-1242,-1219,-1251,-1344,-1449,-1490,-1615,-1690,-1789,-1877,-1936,
+-1980,-2023,-2062,-2103,-2153,-2201,-2222,-2231,-2255,-2299,-2373,-2445,-2505,-2482,-2441,-2474,-2498,-2502,-2481,-2488,
+-2480,-2462,-2461,-2488,-2515,-2558,-2634,-2723,-2835,-2934,-3137,-3332,-3538,-3801,-4138,-4331,-4427,-4426,-4395,-4379,
+-4406,-4409,-4422,-4403,-4396,-4415,-4445,-4491,-4549,-4615,-4680,-4751,-4812,-4844,-4857,-4840,-4745,-4549,-4265,-3900,
+-3461,-3008,-2659,-2230,-1980,-1981,-2046,-2142,-2177,-2191,-2314,-2389,-2373,-2449,-2497,-2555,-2646,-2696,-2728,-2756,
+-2835,-2882,-2879,-2850,-2839,-2861,-2901,-2955,-2973,-2996,-3028,-3045,-3065,-3084,-3097,-3099,-3102,-3127,-3149,-3186,
+-3214,-3237,-3266,-3296,-3334,-3380,-3419,-3454,-3493,-3514,-3520,-3520,-3520,-3511,-3502,-3511,-3540,-3574,-3605,-3646,
+-3666,-3690,-3725,-3764,-3809,-3835,-3853,-3883,-3912,-3914,-3918,-3915,-3926,-3936,-3935,-3927,-3961,-4003,-3996,-3995,
+-3982,-3950,-3878,-3826,-3780,-3734,-3710,-3672,-3614,-3589,-3583,-3562,-3522,-3490,-3466,-3424,-3388,-3376,-3313,-3292,
+-3285,-3307,-3255,-3187,-3174,-3172,-3193,-3172,-3259,-3470,-3688,-3834,-3965,-4051,-4078,-4069,-4041,-3992,-3938,-3870,
+-3795,-3720,-3653,-3549,-3429,-3329,-3178,-3056,-2892,-2762,-2690,-2668,-2683,-2649,-2580,-2487,-2429,-2391,-2356,-2311,
+-2335,-2333,-2288,-2223,-2156,-2075,-1995,-1903,-1797,-1723,-1623,-1529,-1415,-1320,-1220,-1121,-1030,-948,-860,-755,
+-654,-546,-451,-362,-241,-122,-19,76,163,254,336,405,487,573,666,760,850,934,1000,1069,
+1157,1256,1339,1433,1509,1596,1666,1723,1782,1845,1902,1965,2025,2086,2160,2232,2292,2364,2440,2502,
+2571,2635,2682,2743,2830,2912,2962,2987,2991,2998,3038,3063,3124,3189,3225,3228,3199,3123,2986,2758,
+2574,2582,2679,2811,2977,3116,3221,3247,3221,3180,3161,3174,3216,3282,3335,3405,3453,3506,3562,3619,
+3649,3687,3716,3748,3780,3829,3890,3993,4063,4122,4172,4204,4192,4116,3982,3768,3507,3276,2945,2485,
+1953,1583,1573,1847,2168,2443,2612,2716,2778,2822,2852,2847,2828,2793,2760,2713,2649,2580,2526,2483,
+2433,2370,2292,2210,2162,2191,2297,2084,1987,1943,1949,1799,1717,1664,1619,1586,1569,1534,1462,1398,
+1340,1297,1262,1229,1216,1202,1168,1134,1102,1061,1018,992,948,905,860,819,778,748,730,709,
+693,683,662,644,624,598,569,515,450,395,335,271,202,136,90,41,-10,-57,-107,-159,
+-207,-251,-301,-351,-394,-432,-467,-501,-534,-565,-594,-618,-644,-668,-698,-713,-751,-777,-801,-817,
+-831,-840,-840,-844,-860,-869,-867,-855,-848,-827,-811,-808,-813,-825,-849,-884,-923,-949,-961,-960,
+-927,-825,-616,-618,-560,-348,-422,-739,-872,-913,-900,-895,-888,-886,-894,-896,-899,-909,-907,-909,
+-916,-920,-914,-909,-900,-897,-890,-887,-883,-886,-886,-887,-888,-908,-920,-929,-933,-936,-923,-913,
+-903,-907,-902,-899,-894,-892,-886,-891,-915,-946,-976,-987,-996,-971,-944,-916,-871,-950,-976,-965,
+-949,-945,-948,-951,-954,-953,-955,-958,-964,-970,-975,-975,-977,-980,-980,-983,-983,-986,-988,-989,
+-991,-998,-1001,-1004,-998,-990,-979,-975,-981,-990,-991,-970,-966,-965,-973,-964,-948,-940,-926,-903,
+-904,-887,-887,-942,-938,-948,-1012,-1022,-1045,-1068,-1070,-1086,-1108,-1130,-1155,-1181,-1204,-1225,-1245,-1272,
+-1291,-1313,-1334,-1353,-1368,-1382,-1391,-1396,-1401,-1405,-1399,-1395,-1392,-1394,-1390,-1388,-1393,-1397,-1402,-1413,
+-1430,-1439,-1458,-1487,-1512,-1542,-1575,-1601,-1630,-1655,-1684,-1716,-1753,-1793,-1840,-1883,-1920,-1961,-1997,-2034,
+-2067,-2097,-2125,-2157,-2197,-2236,-2277,-2318,-2352,-2377,-2398,-2423,-2451,-2484,-2516,-2542,-2559,-2586,-2608,-2634,
+-2660,-2685,-2708,-2735,-2761,-2785,-2811,-2843,-2875,-2899,-2915,-2933,-2946,-2957,-2974,-2997,-3017,-3049,-3069,-3095,
+-3113,-3144,-3184,-3215,-3245,-3288,-3338,-3366,-3390,-3427,-3461,-3499,-3531,-3563,-3582,-3600,-3620,-3640,-3658,-3682,
+-3713,-3742,-3764,-3782,-3807,-3840,-3873,-3908,-3933,-3953,-3969,-3980,-3978,-3985,-4000,-4016,-4025,-4033,-4041,-4050,
+-4061,-4070,-4087,-4108,-4113,-4083,-4099,-4129,-4134,-4148,-4160,-4170,-4168,-4156,-4150,-4152,-4157,-4161,-4167,-4176,
+-4188,-4192,-4186,-4167,-4153,-4131,-4125,-4105,-4099,-4086,-4082,-4082,-4088,-4080,-4036,-3980,-3951,-3905,-3858,-3802,
+-3797,-3835,-3823,-3806,-3767,-3674,-3516,-3368,-3286,-3227,-3344,-3487,-3514,-3561,-3559,-3521,-3495,-3471,-3430,-3375,
+-3334,-3291,-3229,-3194,-3161,-3132,-3091,-3048,-3021,-3003,-2926,-2842,-2832,-2781,-2772,-2720,-2664,-2690,-2633,-2587,
+-2559,-2552,-2551,-2535,-2495,-2486,-2493,-2443,-2450,-2371,-2335,-2328,-2334,-2341,-2330,-2477,-2580,-2638,-2644,-2585,
+-2505,-2423,-2406,-2461,-2519,-2549,-2567,-2572,-2581,-2597,-2617,-2622,-2632,-2652,-2681,-2723,-2753,-2775,-2793,-2801,
+-2811,-2831,-2845,-2854,-2827,-2766,-2686,-2644,-2644,-2658,-2682,-2719,-2733,-2742,-2746,-2744,-2720,-2682,-2674,-2687,
+-2687,-2678,-2667,-2646,-2642,-2665,-2698,-2715,-2722,-2722,-2716,-2718,-2725,-2720,-2719,-2729,-2754,-2779,-2817,-2835,
+-2841,-2843,-2876,-2899,-2869,-2853,-2852,-2836,-2816,-2807,-2780,-2751,-2745,-2744,-2734,-2751,-2764,-2778,-2805,-2821,
+-2847,-2882,-2921,-2954,-2998,-3060,-3118,-3165,-3210,-3247,-3284,-3326,-3370,-3414,-3479,-3536,-3586,-3646,-3696,-3781,
+-3839,-3857,-3889,-3936,-3986,-4086,-4239,-4299,-4311,-4319,-4340,-4396,-4493,-4610,-4732,-4842,-4930,-5001,-5058,-5098,
+-5128,-5143,-5153,-5154,-5146,-5137,-5122,-5107,-5091,-5081,-5071,-5053,-5030,-4999,-4964,-4925,-4884,-4839,-4791,-4744,
+-4702,-4660,-4618,-4575,-4535,-4490,-4451,-4405,-4352,-4305,-4245,-4120,-3759,-3654,-3718,-3803,-3885,-3924,-3935,-3909,
+-3878,-3854,-3822,-3786,-3749,-3723,-3693,-3660,-3656,-3643,-3632,-3629,-3632,-3633,-3622,-3607,-3589,-3543,-3509,-3529,
+-3507,-3473,-3441,-3408,-3372,-3333,-3282,-3235,-3175,-3105,-3043,-2992,-2936,-2876,-2820,-2754,-2690,-2625,-2560,-2506,
+-2442,-2371,-2295,-2220,-2143,-2073,-2005,-1927,-1837,-1734,-1644,-1560,-1477,-1382,-1302,-1212,-1121,-1018,-934,-852,
+-756,-664,-579,-494,-395,-304,-208,-115,-24,68,169,269,376,473,564,649,729,842,954,1026,
+1107,1211,1302,1398,1504,1589,1693,1810,1923,2038,2124,2138,2251,2333,2343,2384,2429,2469,2516,2575,
+2618,2663,2701,2743,2787,2836,2883,2926,2957,3000,3035,3069,3107,3144,3180,3211,3234,3256,3281,3313,
+3332,3344,3369,3399,3438,3456,3481,3501,3544,3551,3582,3595,3603,3582,3586,3575,3564,3560,3579,3678,
+3837,3906,3771,3683,3507,3355,3342,3359,3395,3416,3420,3399,3365,3343,3319,3296,3285,3284,3282,3285,
+3298,3313,3345,3374,3406,3434,3466,3501,3534,3572,3613,3664,3720,3785,3857,3905,3927,3936,3948,3965,
+3988,4004,4019,4033,4057,4072,4064,4041,4018,4017,4028,4036,4043,4053,4072,4085,4120,4159,4206,4264,
+4325,4309,4266,4237,4271,4311,4346,4367,4380,4373,4335,4345,4442,4570,4703,4740,4800,4891,4925,4946,
+4969,4977,4985,4994,4970,5050,5153,5317,5440,5580,5667,5631,5517,5400,5330,5240,5173,5110,5052,4976,
+4883,4808,4762,4727,4708,4707,4664,4581,4485,4408,4329,4248,4181,4099,4062,3967,3907,3857,3813,3766,
+3734,3715,3707,3691,3661,3600,3523,3434,3353,3262,3174,3090,3018,2964,2921,2878,2835,2806,2782,2777,
+2772,2766,2767,2772,2785,2821,2868,2919,2928,2947,2971,3010,3072,3126,3169,3203,3229,3257,3276,3268,
+3264,3249,3243,3235,3221,3227,3257,3265,3231,3185,3157,3119,3083,3051,3013,2974,2937,2900,2867,2827,
+2784,2750,2747,2745,2736,2719,2703,2694,2693,2696,2710,2764,2828,2859,2877,2902,2930,2934,2902,2858,
+2809,2746,2674,2611,2564,2513,2452,2379,2306,2239,2185,2141,2105,2064,1999,1882,1824,1772,1704,1645,
+1541,1416,1330,1286,1240,1190,1133,1122,1152,1211,1272,1342,1427,1523,1623,1727,1784,1834,1868,1870,
+1841,1809,1775,1744,1711,1674,1669,1672,1677,1671,1664,1688,1753,1861,1973,1954,1889,2019,2042,2008,
+1943,1884,1869,1861,1833,1829,1805,1779,1764,1732,1685,1619,1533,1438,1349,1269,1184,1097,1022,946,
+864,772,675,580,493,393,295,210,118,7,-110,-226,-330,-428,-528,-632,-744,-852,-950,-1028,
+-1096,-1166,-1239,-1302,-1355,-1392,-1415,-1422,-1420,-1386,-1327,-1197,-1010,-768,-520,-341,-239,-211,-133,-143,
+-140,-166,-192,-206,-255,-293,-270,-226,-202,-174,-235,-332,-430,-460,-571,-688,-650,-548,-553,-643,
+-795,-920,-1027,-1129,-1185,-1200,-1234,-1260,-1287,-1280,-1266,-1262,-1306,-1338,-1419,-1517,-1622,-1703,-1800,-1897,
+-1953,-2001,-2052,-2101,-2140,-2180,-2236,-2241,-2286,-2348,-2418,-2488,-2542,-2546,-2550,-2521,-2532,-2540,-2540,-2530,
+-2511,-2500,-2464,-2491,-2538,-2570,-2641,-2739,-2838,-2932,-3013,-3136,-3303,-3443,-3728,-4142,-4392,-4521,-4558,-4529,
+-4489,-4456,-4438,-4429,-4395,-4369,-4358,-4384,-4423,-4471,-4527,-4595,-4688,-4758,-4813,-4845,-4854,-4824,-4690,-4493,
+-4215,-3874,-3487,-3081,-2613,-2298,-2176,-2169,-2240,-2255,-2264,-2313,-2389,-2398,-2390,-2459,-2543,-2574,-2627,-2682,
+-2720,-2790,-2830,-2859,-2857,-2863,-2897,-2915,-2917,-2945,-2968,-2988,-3013,-3015,-3017,-3021,-3046,-3064,-3090,-3112,
+-3128,-3160,-3209,-3246,-3271,-3313,-3347,-3373,-3414,-3454,-3475,-3489,-3494,-3487,-3467,-3470,-3482,-3483,-3539,-3588,
+-3627,-3659,-3689,-3732,-3760,-3805,-3834,-3826,-3852,-3893,-3887,-3907,-3917,-3922,-3956,-3938,-3921,-3923,-3952,-3970,
+-3966,-3936,-3912,-3847,-3791,-3766,-3737,-3711,-3697,-3606,-3566,-3543,-3528,-3517,-3471,-3459,-3417,-3378,-3336,-3310,
+-3286,-3246,-3277,-3192,-3132,-3107,-3084,-3123,-3142,-3281,-3499,-3743,-3967,-4113,-4156,-4145,-4126,-4097,-4067,-4015,
+-3964,-3909,-3841,-3756,-3635,-3517,-3406,-3237,-3055,-2891,-2752,-2675,-2643,-2554,-2514,-2397,-2299,-2310,-2282,-2251,
+-2241,-2280,-2304,-2267,-2193,-2110,-2030,-1955,-1867,-1782,-1692,-1619,-1525,-1403,-1285,-1164,-1035,-927,-890,-818,
+-720,-624,-537,-455,-347,-213,-97,-5,87,183,270,353,423,512,599,689,771,838,934,1038,
+1121,1192,1276,1359,1439,1522,1609,1688,1749,1811,1869,1916,1972,2030,2108,2179,2249,2319,2385,2465,
+2531,2602,2652,2702,2778,2866,2926,2965,2965,2954,2994,3031,3086,3192,3186,3204,3186,3133,3081,2963,
+2724,2552,2554,2648,2792,2957,3064,3094,3087,3079,3105,3151,3220,3287,3354,3428,3479,3532,3567,3610,
+3653,3680,3719,3759,3781,3811,3846,3894,3985,4079,4118,4181,4221,4200,4119,3968,3772,3498,3288,2996,
+2577,2065,1671,1612,1853,2164,2432,2606,2712,2780,2833,2873,2882,2849,2808,2769,2719,2659,2591,2538,
+2491,2447,2388,2309,2237,2179,2162,2168,2075,2053,2091,1924,1804,1729,1679,1644,1616,1622,1635,1562,
+1456,1374,1316,1286,1239,1223,1209,1196,1171,1135,1085,1030,985,959,933,890,852,814,793,773,
+751,727,710,679,652,637,612,583,538,471,415,362,296,229,164,112,64,23,-29,-80,
+-128,-172,-214,-258,-307,-350,-390,-428,-459,-488,-519,-543,-564,-588,-612,-648,-689,-724,-758,-781,
+-791,-803,-811,-823,-830,-843,-844,-846,-839,-828,-813,-806,-807,-809,-822,-852,-878,-908,-924,-941,
+-947,-936,-905,-855,-822,-769,-667,-655,-799,-875,-889,-832,-860,-873,-881,-891,-885,-890,-900,-905,
+-904,-896,-883,-881,-899,-910,-902,-895,-876,-899,-921,-922,-908,-892,-903,-919,-931,-927,-920,-912,
+-892,-879,-877,-876,-875,-879,-869,-872,-879,-896,-918,-941,-953,-962,-929,-824,-782,-733,-884,-950,
+-941,-925,-912,-910,-911,-909,-906,-908,-916,-920,-927,-936,-937,-938,-940,-942,-943,-939,-940,-945,
+-946,-949,-958,-963,-965,-960,-950,-940,-933,-936,-943,-955,-959,-942,-886,-921,-931,-918,-906,-912,
+-920,-906,-787,-815,-900,-888,-930,-958,-976,-1002,-1022,-1038,-1062,-1079,-1086,-1100,-1136,-1161,-1190,-1220,
+-1246,-1269,-1294,-1319,-1335,-1350,-1358,-1367,-1370,-1373,-1375,-1379,-1376,-1374,-1376,-1371,-1362,-1362,-1365,-1372,
+-1386,-1404,-1419,-1434,-1455,-1491,-1518,-1542,-1569,-1603,-1634,-1665,-1693,-1722,-1759,-1804,-1846,-1888,-1930,-1963,
+-1994,-2027,-2058,-2084,-2111,-2150,-2194,-2244,-2283,-2317,-2337,-2364,-2391,-2422,-2451,-2486,-2514,-2542,-2572,-2603,
+-2641,-2678,-2715,-2747,-2772,-2787,-2796,-2800,-2808,-2819,-2831,-2847,-2862,-2887,-2910,-2937,-2961,-2990,-3020,-3047,
+-3071,-3092,-3136,-3179,-3215,-3254,-3300,-3336,-3342,-3369,-3404,-3437,-3476,-3498,-3516,-3539,-3556,-3581,-3610,-3640,
+-3664,-3694,-3717,-3739,-3767,-3797,-3832,-3865,-3886,-3913,-3934,-3955,-3970,-3979,-3989,-4002,-4013,-4021,-4032,-4044,
+-4049,-4066,-4085,-4099,-4118,-4127,-4126,-4135,-4139,-4112,-4156,-4170,-4173,-4167,-4169,-4170,-4177,-4178,-4184,-4188,
+-4199,-4191,-4186,-4172,-4172,-4164,-4143,-4133,-4134,-4120,-4110,-4100,-4107,-4107,-4092,-4088,-4041,-3969,-3953,-3934,
+-3889,-3844,-3842,-3840,-3830,-3792,-3716,-3605,-3464,-3317,-3249,-3278,-3413,-3491,-3533,-3571,-3561,-3542,-3524,-3477,
+-3389,-3371,-3329,-3275,-3226,-3188,-3154,-3106,-3054,-3019,-2997,-2889,-2836,-2837,-2798,-2790,-2732,-2679,-2695,-2651,
+-2623,-2582,-2568,-2565,-2557,-2532,-2507,-2497,-2475,-2478,-2404,-2359,-2362,-2345,-2386,-2394,-2485,-2557,-2618,-2642,
+-2605,-2525,-2431,-2395,-2434,-2494,-2525,-2533,-2523,-2532,-2542,-2550,-2561,-2584,-2613,-2633,-2650,-2673,-2697,-2705,
+-2730,-2761,-2796,-2830,-2848,-2829,-2751,-2662,-2626,-2633,-2675,-2718,-2747,-2760,-2769,-2777,-2779,-2751,-2721,-2725,
+-2718,-2708,-2699,-2686,-2668,-2656,-2668,-2692,-2710,-2712,-2706,-2695,-2696,-2699,-2694,-2691,-2704,-2722,-2745,-2773,
+-2809,-2843,-2867,-2873,-2895,-2882,-2861,-2846,-2808,-2775,-2759,-2735,-2723,-2726,-2732,-2748,-2768,-2787,-2796,-2815,
+-2822,-2833,-2841,-2876,-2928,-2986,-3049,-3113,-3169,-3204,-3228,-3258,-3303,-3363,-3418,-3476,-3541,-3575,-3634,-3700,
+-3760,-3796,-3826,-3876,-3939,-4015,-4160,-4269,-4290,-4293,-4296,-4308,-4343,-4411,-4530,-4668,-4797,-4903,-4982,-5040,
+-5084,-5119,-5142,-5156,-5158,-5156,-5149,-5136,-5121,-5113,-5106,-5094,-5076,-5058,-5031,-4998,-4957,-4913,-4865,-4814,
+-4764,-4723,-4679,-4639,-4600,-4564,-4520,-4483,-4436,-4390,-4348,-4295,-4201,-4074,-3996,-3976,-3983,-3998,-3998,-3982,
+-3955,-3921,-3894,-3862,-3829,-3813,-3772,-3749,-3720,-3705,-3697,-3686,-3681,-3681,-3687,-3671,-3652,-3626,-3605,-3582,
+-3574,-3545,-3520,-3492,-3461,-3423,-3372,-3328,-3275,-3219,-3151,-3096,-3042,-2992,-2929,-2869,-2810,-2742,-2674,-2611,
+-2550,-2483,-2414,-2336,-2265,-2193,-2122,-2054,-1980,-1895,-1802,-1711,-1609,-1516,-1429,-1342,-1241,-1150,-1057,-972,
+-883,-814,-725,-636,-530,-433,-351,-262,-156,-64,40,122,214,309,420,529,626,720,795,905,
+984,1075,1167,1253,1346,1433,1550,1674,1771,1862,1936,1979,2075,2157,2205,2244,2292,2354,2395,2434,
+2485,2543,2595,2645,2691,2736,2760,2763,2808,2860,2929,2971,2999,3031,3070,3104,3124,3147,3182,3209,
+3244,3257,3278,3303,3324,3347,3369,3398,3416,3443,3471,3488,3490,3485,3477,3472,3470,3491,3542,3589,
+3685,3678,3678,3583,3425,3323,3248,3230,3254,3289,3308,3311,3296,3277,3253,3234,3226,3221,3215,3214,
+3223,3247,3278,3310,3345,3374,3406,3441,3474,3515,3548,3580,3629,3681,3730,3783,3816,3831,3854,3871,
+3897,3922,3936,3930,3935,3945,3953,3944,3937,3945,3956,3979,4002,4023,4048,4077,4110,4158,4209,4273,
+4338,4370,4411,4359,4258,4280,4324,4355,4385,4424,4460,4430,4428,4549,4675,4730,4773,4855,4893,4913,
+4944,4970,4985,5034,5070,5107,5204,5353,5503,5622,5649,5597,5503,5379,5242,5168,5104,5060,5018,4979,
+4914,4821,4730,4660,4631,4607,4585,4527,4456,4392,4339,4280,4211,4145,4062,4012,3915,3850,3793,3746,
+3688,3650,3625,3618,3609,3583,3524,3437,3345,3248,3163,3086,3013,2950,2902,2863,2826,2793,2771,2759,
+2758,2749,2740,2739,2748,2761,2782,2812,2841,2862,2885,2916,2960,3005,3044,3093,3139,3182,3224,3244,
+3249,3244,3243,3231,3213,3187,3160,3153,3153,3129,3107,3100,3082,3050,3026,2989,2951,2917,2883,2851,
+2826,2805,2783,2776,2778,2779,2761,2736,2717,2708,2709,2709,2729,2773,2808,2820,2830,2832,2817,2799,
+2775,2725,2664,2605,2549,2494,2438,2382,2322,2263,2212,2173,2141,2119,2095,2062,2004,1958,1927,1888,
+1863,1820,1744,1629,1527,1450,1382,1280,1247,1259,1272,1294,1342,1400,1481,1575,1649,1706,1762,1805,
+1817,1790,1770,1751,1739,1715,1709,1714,1705,1705,1708,1681,1691,1755,1836,1919,1859,1791,1945,1995,
+1992,1921,1850,1795,1756,1742,1758,1752,1720,1700,1679,1636,1571,1487,1395,1308,1229,1147,1058,974,
+894,816,739,657,559,459,360,272,203,128,25,-84,-196,-307,-418,-531,-644,-754,-874,-993,
+-1077,-1152,-1235,-1316,-1383,-1433,-1466,-1485,-1480,-1467,-1455,-1423,-1342,-1187,-965,-680,-415,-385,-325,-261,
+-219,-183,-174,-206,-229,-278,-314,-317,-324,-310,-269,-231,-245,-374,-448,-497,-638,-664,-576,-555,
+-574,-723,-863,-972,-1159,-1229,-1235,-1263,-1301,-1339,-1331,-1317,-1319,-1347,-1439,-1480,-1563,-1658,-1743,-1845,
+-1949,-1995,-2035,-2091,-2119,-2169,-2218,-2253,-2286,-2358,-2416,-2505,-2577,-2597,-2577,-2562,-2553,-2553,-2591,-2584,
+-2544,-2524,-2519,-2521,-2523,-2557,-2600,-2681,-2767,-2868,-2980,-3039,-3124,-3247,-3352,-3633,-4099,-4445,-4615,-4683,
+-4676,-4642,-4595,-4560,-4518,-4465,-4417,-4378,-4368,-4390,-4419,-4463,-4529,-4620,-4699,-4762,-4802,-4816,-4817,-4761,
+-4626,-4384,-4089,-3688,-3296,-3016,-2773,-2514,-2382,-2229,-2182,-2186,-2229,-2338,-2414,-2403,-2458,-2533,-2507,-2526,
+-2615,-2684,-2726,-2774,-2840,-2882,-2906,-2930,-2918,-2948,-2986,-3007,-3037,-3047,-3029,-3004,-2998,-3039,-3063,-3062,
+-3062,-3083,-3125,-3140,-3182,-3197,-3252,-3276,-3281,-3334,-3389,-3411,-3424,-3437,-3445,-3440,-3449,-3461,-3488,-3541,
+-3577,-3631,-3670,-3707,-3742,-3764,-3798,-3834,-3832,-3836,-3837,-3846,-3870,-3908,-3896,-3894,-3890,-3918,-3926,-3906,
+-3913,-3914,-3906,-3875,-3850,-3797,-3747,-3731,-3706,-3681,-3640,-3611,-3558,-3494,-3471,-3465,-3435,-3402,-3375,-3301,
+-3257,-3185,-3151,-3232,-3112,-3031,-3053,-3124,-3182,-3223,-3287,-3559,-3907,-4090,-4179,-4204,-4192,-4167,-4136,-4110,
+-4068,-4022,-3964,-3900,-3813,-3714,-3606,-3454,-3309,-3168,-2977,-2833,-2768,-2700,-2530,-2375,-2263,-2223,-2270,-2184,
+-2199,-2186,-2225,-2253,-2221,-2165,-2068,-1954,-1886,-1812,-1735,-1659,-1571,-1477,-1374,-1246,-1121,-1010,-924,-832,
+-774,-697,-618,-533,-434,-315,-189,-97,1,101,191,282,353,443,527,619,703,788,852,958,
+1080,1169,1251,1321,1390,1466,1544,1634,1718,1774,1828,1875,1915,1979,2051,2118,2199,2268,2342,2413,
+2480,2543,2606,2680,2747,2826,2893,2933,2968,2973,2992,3047,3095,3117,3177,3183,3197,3173,3125,3034,
+2901,2697,2550,2571,2658,2802,2933,3008,3006,3021,3070,3140,3212,3284,3361,3455,3493,3553,3612,3639,
+3674,3688,3718,3750,3779,3796,3818,3846,3903,3962,4049,4183,4229,4238,4217,4177,4045,3838,3559,3346,
+3072,2658,2157,1762,1630,1842,2145,2420,2608,2715,2792,2847,2882,2890,2862,2822,2769,2724,2663,2595,
+2544,2499,2455,2398,2335,2264,2189,2126,2068,2019,2035,2091,1955,1825,1749,1695,1659,1636,1627,1668,
+1669,1492,1405,1338,1283,1260,1238,1222,1210,1172,1141,1100,1049,1010,980,960,928,879,839,821,
+805,781,746,725,691,654,625,608,575,550,480,430,360,327,256,203,154,104,47,-1,
+-51,-99,-141,-185,-228,-272,-312,-347,-384,-413,-452,-485,-503,-521,-545,-572,-607,-660,-709,-744,
+-761,-774,-775,-783,-796,-812,-821,-823,-817,-813,-809,-806,-805,-803,-808,-825,-842,-855,-875,-886,
+-904,-919,-922,-928,-921,-901,-870,-844,-840,-857,-874,-878,-865,-856,-857,-872,-866,-849,-837,-823,
+-829,-843,-845,-846,-856,-864,-864,-874,-885,-892,-902,-888,-881,-915,-896,-858,-871,-888,-909,-912,
+-898,-879,-867,-856,-858,-865,-864,-854,-854,-862,-866,-876,-887,-904,-922,-932,-911,-861,-866,-873,
+-899,-905,-897,-888,-879,-868,-866,-864,-868,-870,-875,-882,-890,-893,-896,-894,-896,-896,-891,-890,
+-893,-898,-899,-906,-911,-915,-916,-910,-902,-894,-890,-896,-902,-910,-906,-898,-868,-867,-880,-872,
+-868,-875,-869,-845,-875,-918,-909,-929,-945,-956,-972,-986,-1005,-1024,-1045,-1065,-1088,-1108,-1134,-1163,
+-1192,-1217,-1242,-1262,-1287,-1304,-1321,-1331,-1338,-1344,-1348,-1351,-1356,-1359,-1356,-1358,-1353,-1347,-1345,-1349,
+-1356,-1365,-1383,-1401,-1420,-1443,-1477,-1501,-1518,-1535,-1568,-1606,-1636,-1669,-1696,-1724,-1763,-1804,-1849,-1895,
+-1929,-1959,-1991,-2015,-2042,-2066,-2096,-2138,-2185,-2227,-2270,-2306,-2338,-2373,-2408,-2446,-2482,-2518,-2560,-2599,
+-2634,-2665,-2679,-2691,-2693,-2702,-2717,-2734,-2745,-2761,-2782,-2802,-2815,-2829,-2854,-2875,-2904,-2939,-2980,-3014,
+-3052,-3080,-3105,-3140,-3173,-3199,-3234,-3281,-3298,-3303,-3362,-3377,-3403,-3439,-3465,-3478,-3493,-3525,-3560,-3597,
+-3631,-3651,-3679,-3703,-3731,-3763,-3798,-3834,-3858,-3876,-3896,-3914,-3936,-3958,-3974,-3995,-4005,-4018,-4027,-4039,
+-4054,-4066,-4079,-4089,-4106,-4116,-4124,-4133,-4145,-4159,-4168,-4178,-4185,-4181,-4173,-4185,-4190,-4193,-4193,-4199,
+-4197,-4194,-4187,-4179,-4170,-4151,-4173,-4168,-4170,-4160,-4144,-4134,-4126,-4119,-4112,-4102,-4098,-4086,-4015,-3950,
+-3930,-3942,-3856,-3862,-3867,-3838,-3808,-3747,-3641,-3496,-3374,-3277,-3283,-3333,-3441,-3522,-3564,-3577,-3570,-3557,
+-3529,-3470,-3410,-3368,-3311,-3252,-3208,-3148,-3126,-3073,-3031,-3001,-2921,-2849,-2840,-2803,-2812,-2757,-2743,-2684,
+-2635,-2640,-2604,-2598,-2570,-2564,-2550,-2537,-2507,-2479,-2504,-2482,-2424,-2378,-2352,-2352,-2400,-2407,-2469,-2537,
+-2571,-2569,-2516,-2443,-2399,-2427,-2480,-2504,-2512,-2505,-2510,-2507,-2498,-2529,-2551,-2568,-2588,-2589,-2610,-2622,
+-2644,-2681,-2730,-2779,-2828,-2849,-2817,-2729,-2658,-2637,-2654,-2707,-2753,-2771,-2786,-2799,-2815,-2821,-2811,-2803,
+-2798,-2764,-2735,-2710,-2697,-2695,-2701,-2707,-2723,-2736,-2735,-2726,-2717,-2715,-2716,-2723,-2720,-2724,-2735,-2759,
+-2786,-2820,-2854,-2892,-2905,-2901,-2891,-2872,-2832,-2804,-2784,-2760,-2748,-2757,-2764,-2782,-2799,-2817,-2822,-2826,
+-2819,-2782,-2804,-2829,-2868,-2928,-2970,-3026,-3083,-3138,-3178,-3201,-3223,-3262,-3343,-3404,-3471,-3531,-3551,-3584,
+-3646,-3721,-3783,-3846,-3909,-3977,-4064,-4225,-4291,-4296,-4293,-4295,-4312,-4336,-4381,-4464,-4590,-4731,-4856,-4945,
+-5011,-5065,-5104,-5134,-5152,-5158,-5160,-5155,-5148,-5140,-5132,-5125,-5115,-5099,-5081,-5055,-5023,-4983,-4942,-4891,
+-4840,-4786,-4741,-4691,-4656,-4627,-4592,-4545,-4509,-4465,-4431,-4392,-4345,-4286,-4218,-4158,-4118,-4096,-4063,-4056,
+-4026,-3995,-3973,-3934,-3900,-3878,-3861,-3836,-3807,-3776,-3759,-3758,-3752,-3740,-3745,-3744,-3719,-3701,-3677,-3657,
+-3633,-3609,-3577,-3542,-3515,-3482,-3448,-3409,-3367,-3310,-3256,-3194,-3145,-3085,-3032,-2967,-2909,-2849,-2787,-2719,
+-2653,-2590,-2520,-2455,-2380,-2316,-2242,-2166,-2104,-2027,-1940,-1846,-1750,-1656,-1561,-1470,-1363,-1265,-1179,-1078,
+-976,-878,-781,-690,-642,-552,-457,-361,-287,-196,-104,-9,104,210,297,369,446,561,666,777,
+877,968,1047,1160,1257,1373,1436,1533,1635,1742,1806,1844,1975,2061,2103,2126,2173,2211,2273,2314,
+2360,2432,2499,2546,2580,2622,2629,2707,2740,2764,2798,2817,2860,2905,2940,2984,3018,3031,3065,3104,
+3137,3168,3180,3218,3242,3258,3277,3294,3311,3333,3364,3390,3418,3430,3419,3402,3387,3385,3450,3647,
+3633,3678,3652,3502,3400,3334,3272,3217,3190,3199,3214,3236,3244,3220,3211,3186,3155,3149,3145,3153,
+3164,3188,3215,3245,3283,3312,3353,3389,3418,3450,3484,3518,3558,3593,3629,3668,3706,3739,3761,3791,
+3826,3852,3861,3854,3865,3888,3881,3879,3879,3879,3895,3924,3954,3987,4019,4062,4108,4158,4221,4281,
+4344,4378,4364,4361,4329,4294,4295,4336,4366,4395,4440,4479,4523,4509,4587,4684,4742,4825,4906,4945,
+4968,4997,5027,5063,5118,5225,5349,5439,5545,5594,5568,5507,5445,5334,5230,5146,5092,5023,4981,4956,
+4923,4862,4767,4676,4606,4566,4540,4498,4434,4382,4327,4283,4232,4171,4102,4012,3940,3842,3774,3717,
+3663,3612,3570,3535,3513,3501,3474,3418,3334,3241,3150,3076,3005,2945,2892,2849,2814,2780,2751,2732,
+2726,2726,2718,2706,2703,2712,2725,2739,2754,2770,2788,2814,2850,2882,2907,2944,2992,3048,3109,3160,
+3193,3208,3216,3222,3205,3184,3164,3138,3111,3090,3060,3041,3051,3049,3026,3004,2969,2931,2903,2872,
+2847,2837,2835,2833,2821,2811,2810,2805,2797,2776,2757,2729,2719,2707,2715,2752,2767,2765,2752,2736,
+2715,2693,2642,2582,2524,2474,2428,2377,2326,2274,2225,2189,2170,2157,2147,2135,2113,2090,2052,2037,
+2034,2017,1987,1933,1854,1771,1671,1603,1520,1462,1412,1365,1361,1385,1435,1484,1543,1583,1612,1641,
+1666,1689,1696,1690,1685,1676,1673,1677,1675,1667,1661,1672,1675,1702,1749,1806,1848,1763,1739,1937,
+1982,1987,1918,1856,1787,1735,1685,1666,1685,1693,1661,1635,1592,1525,1449,1359,1272,1185,1099,1011,
+923,838,763,692,621,539,435,328,243,186,127,40,-65,-174,-285,-400,-518,-636,-754,-875,
+-994,-1096,-1185,-1277,-1366,-1439,-1491,-1521,-1533,-1524,-1514,-1502,-1489,-1445,-1355,-1161,-859,-596,-497,-406,
+-337,-316,-270,-248,-239,-252,-299,-318,-348,-384,-404,-409,-379,-346,-374,-432,-515,-555,-624,-625,
+-608,-599,-620,-808,-951,-1135,-1241,-1289,-1336,-1376,-1392,-1376,-1367,-1378,-1393,-1448,-1452,-1573,-1685,-1783,
+-1906,-1991,-2030,-2047,-2093,-2144,-2203,-2259,-2290,-2340,-2403,-2466,-2546,-2608,-2602,-2566,-2544,-2550,-2579,-2623,
+-2591,-2556,-2524,-2481,-2496,-2532,-2569,-2611,-2680,-2769,-2869,-2975,-3043,-3112,-3161,-3311,-3599,-4071,-4467,-4681,
+-4776,-4795,-4775,-4726,-4673,-4618,-4551,-4486,-4449,-4410,-4403,-4412,-4442,-4498,-4581,-4675,-4733,-4764,-4782,-4783,
+-4762,-4674,-4532,-4243,-3887,-3582,-3270,-3039,-2778,-2533,-2317,-2221,-2175,-2120,-2160,-2305,-2402,-2445,-2491,-2498,
+-2488,-2508,-2599,-2663,-2709,-2781,-2818,-2882,-2914,-2926,-2920,-2955,-3012,-3043,-3053,-3067,-3066,-3069,-3108,-3119,
+-3090,-3075,-3101,-3120,-3113,-3141,-3150,-3197,-3222,-3241,-3277,-3316,-3335,-3351,-3379,-3397,-3397,-3423,-3456,-3483,
+-3517,-3572,-3625,-3667,-3706,-3728,-3740,-3763,-3771,-3765,-3771,-3768,-3786,-3832,-3859,-3844,-3852,-3870,-3878,-3904,
+-3870,-3839,-3853,-3846,-3849,-3813,-3751,-3724,-3726,-3676,-3668,-3654,-3599,-3530,-3497,-3450,-3408,-3410,-3337,-3351,
+-3309,-3220,-3150,-3131,-3202,-3089,-3065,-3023,-3068,-3200,-3414,-3584,-3859,-4059,-4150,-4206,-4227,-4219,-4194,-4171,
+-4150,-4121,-4072,-4008,-3931,-3852,-3762,-3641,-3512,-3398,-3296,-3137,-2961,-2840,-2739,-2655,-2498,-2429,-2347,-2342,
+-2201,-2175,-2233,-2232,-2207,-2184,-2135,-2039,-1916,-1843,-1769,-1689,-1606,-1509,-1435,-1345,-1250,-1116,-997,-858,
+-807,-740,-653,-567,-468,-391,-281,-180,-87,20,108,205,286,363,465,565,638,719,805,890,
+986,1088,1185,1281,1370,1439,1515,1581,1652,1731,1793,1842,1887,1931,1989,2063,2130,2206,2300,2364,
+2429,2495,2557,2616,2701,2787,2856,2913,2937,2956,2982,3009,3063,3082,3145,3169,3163,3174,3127,3061,
+3008,2831,2651,2557,2619,2708,2796,2886,2948,2997,3058,3131,3207,3282,3351,3419,3481,3536,3577,3622,
+3659,3693,3710,3736,3756,3778,3802,3826,3864,3931,4036,4078,4153,4228,4255,4221,4190,4062,3872,3647,
+3417,3152,2735,2258,1825,1651,1830,2125,2412,2614,2732,2814,2861,2888,2891,2870,2821,2765,2723,2669,
+2602,2550,2508,2466,2416,2354,2285,2216,2143,2077,2019,1983,1955,1900,1828,1774,1726,1686,1654,1631,
+1618,1574,1498,1435,1380,1335,1312,1282,1246,1206,1176,1135,1098,1059,1031,1009,984,949,912,874,
+851,836,811,777,741,693,650,606,561,517,507,457,424,361,329,290,242,195,138,81,
+20,-30,-73,-117,-161,-202,-246,-284,-313,-342,-389,-415,-453,-479,-493,-508,-542,-579,-628,-667,
+-706,-734,-746,-748,-758,-774,-789,-799,-797,-785,-783,-787,-779,-789,-789,-798,-805,-810,-820,-838,
+-845,-857,-874,-890,-906,-909,-898,-887,-878,-869,-853,-852,-856,-840,-839,-850,-870,-850,-776,-684,
+-656,-746,-798,-820,-828,-850,-861,-859,-862,-867,-865,-865,-866,-876,-893,-889,-842,-741,-799,-867,
+-893,-885,-864,-845,-843,-845,-846,-842,-836,-828,-830,-835,-839,-848,-863,-879,-894,-884,-844,-876,
+-865,-781,-855,-864,-861,-844,-831,-823,-823,-823,-823,-826,-831,-836,-841,-845,-847,-845,-846,-843,
+-841,-841,-845,-846,-850,-856,-862,-863,-863,-855,-849,-842,-841,-842,-850,-860,-870,-864,-859,-851,
+-841,-840,-843,-839,-862,-875,-826,-820,-867,-900,-916,-937,-958,-984,-1000,-1017,-1039,-1059,-1081,-1107,
+-1134,-1159,-1178,-1203,-1224,-1246,-1266,-1286,-1297,-1310,-1320,-1327,-1331,-1336,-1342,-1342,-1342,-1340,-1338,-1336,
+-1338,-1347,-1360,-1375,-1392,-1410,-1429,-1454,-1481,-1501,-1515,-1540,-1568,-1594,-1623,-1645,-1672,-1709,-1747,-1787,
+-1831,-1877,-1915,-1946,-1974,-2003,-2030,-2056,-2089,-2139,-2183,-2233,-2287,-2336,-2382,-2426,-2464,-2496,-2519,-2539,
+-2550,-2560,-2577,-2595,-2611,-2628,-2649,-2664,-2687,-2718,-2739,-2758,-2774,-2795,-2821,-2843,-2879,-2906,-2941,-2974,
+-3005,-3033,-3057,-3084,-3119,-3138,-3166,-3198,-3235,-3262,-3287,-3315,-3352,-3383,-3397,-3427,-3459,-3480,-3510,-3551,
+-3589,-3615,-3641,-3665,-3692,-3723,-3762,-3809,-3841,-3863,-3881,-3895,-3916,-3936,-3958,-3973,-3993,-4011,-4026,-4043,
+-4057,-4070,-4084,-4102,-4108,-4113,-4122,-4126,-4135,-4148,-4162,-4176,-4187,-4197,-4201,-4195,-4196,-4205,-4208,-4210,
+-4213,-4206,-4207,-4202,-4200,-4198,-4182,-4183,-4188,-4196,-4183,-4164,-4155,-4139,-4122,-4119,-4112,-4104,-4109,-4111,
+-4025,-3954,-3909,-3917,-3908,-3899,-3893,-3852,-3782,-3730,-3612,-3459,-3360,-3275,-3314,-3426,-3501,-3564,-3580,-3587,
+-3571,-3545,-3514,-3471,-3412,-3365,-3293,-3235,-3184,-3151,-3097,-3062,-3001,-2950,-2881,-2859,-2809,-2789,-2785,-2775,
+-2703,-2647,-2632,-2599,-2604,-2576,-2572,-2546,-2548,-2522,-2464,-2440,-2469,-2483,-2414,-2370,-2337,-2372,-2333,-2371,
+-2412,-2471,-2481,-2467,-2444,-2411,-2407,-2448,-2492,-2497,-2502,-2497,-2482,-2460,-2471,-2470,-2479,-2491,-2490,-2506,
+-2526,-2572,-2629,-2692,-2750,-2812,-2835,-2798,-2715,-2675,-2668,-2692,-2739,-2776,-2791,-2805,-2822,-2848,-2863,-2871,
+-2864,-2852,-2809,-2746,-2721,-2729,-2752,-2762,-2763,-2768,-2773,-2773,-2765,-2758,-2756,-2764,-2783,-2801,-2803,-2806,
+-2822,-2841,-2866,-2891,-2930,-2938,-2922,-2901,-2872,-2830,-2809,-2800,-2802,-2806,-2818,-2837,-2853,-2858,-2857,-2860,
+-2849,-2841,-2834,-2834,-2847,-2903,-2936,-2949,-2977,-3025,-3065,-3096,-3130,-3175,-3216,-3308,-3392,-3456,-3494,-3520,
+-3563,-3634,-3730,-3839,-3934,-3985,-4041,-4134,-4276,-4317,-4321,-4322,-4324,-4337,-4359,-4391,-4440,-4525,-4657,-4789,
+-4898,-4976,-5038,-5084,-5117,-5142,-5154,-5159,-5160,-5159,-5155,-5151,-5142,-5130,-5118,-5101,-5078,-5049,-5014,-4971,
+-4922,-4878,-4829,-4778,-4731,-4677,-4622,-4600,-4570,-4533,-4496,-4466,-4425,-4382,-4344,-4299,-4246,-4203,-4176,-4150,
+-4115,-4096,-4066,-4018,-3970,-3943,-3917,-3898,-3890,-3858,-3831,-3809,-3810,-3813,-3808,-3807,-3796,-3778,-3761,-3735,
+-3694,-3668,-3640,-3601,-3567,-3543,-3509,-3474,-3431,-3394,-3351,-3294,-3250,-3197,-3132,-3069,-3010,-2949,-2888,-2835,
+-2780,-2718,-2650,-2584,-2518,-2441,-2366,-2294,-2219,-2149,-2070,-1992,-1902,-1812,-1730,-1626,-1539,-1425,-1334,-1253,
+-1162,-1059,-982,-903,-818,-705,-586,-489,-413,-324,-214,-122,-30,38,126,232,332,450,543,624,
+716,804,892,1003,1084,1185,1294,1403,1502,1597,1697,1707,1841,1931,1966,2006,2054,2104,2155,2212,
+2256,2292,2316,2377,2432,2485,2525,2544,2582,2629,2690,2729,2770,2812,2836,2878,2906,2928,2961,2991,
+3012,3040,3068,3091,3116,3142,3168,3188,3221,3251,3284,3309,3328,3344,3352,3336,3322,3305,3300,3334,
+3485,3709,3661,3587,3392,3282,3258,3246,3228,3212,3200,3201,3188,3175,3167,3151,3131,3113,3097,3094,
+3107,3120,3143,3171,3216,3258,3298,3337,3370,3395,3434,3465,3495,3521,3554,3587,3616,3647,3677,3716,
+3738,3776,3800,3802,3792,3803,3820,3829,3833,3842,3854,3879,3909,3946,3980,4034,4089,4152,4221,4298,
+4379,4486,4470,4384,4365,4400,4384,4345,4338,4352,4380,4400,4413,4466,4519,4568,4669,4778,4900,5019,
+5080,5104,5162,5189,5286,5424,5469,5451,5451,5422,5393,5375,5361,5362,5300,5164,5089,5036,4981,4922,
+4882,4861,4809,4728,4628,4553,4498,4457,4415,4365,4322,4270,4222,4172,4108,4032,3940,3850,3776,3717,
+3661,3610,3561,3509,3458,3423,3391,3356,3304,3235,3156,3080,3016,2954,2895,2847,2808,2768,2737,2710,
+2692,2689,2683,2674,2660,2656,2665,2676,2691,2701,2701,2718,2750,2774,2811,2847,2888,2938,2984,3042,
+3102,3142,3162,3183,3196,3190,3183,3166,3160,3149,3115,3074,3044,3032,3018,2996,2973,2950,2921,2894,
+2870,2860,2859,2863,2865,2864,2847,2830,2832,2835,2824,2794,2748,2710,2686,2680,2700,2716,2719,2701,
+2675,2640,2601,2542,2488,2439,2400,2366,2324,2280,2245,2213,2188,2180,2172,2169,2156,2132,2107,2089,
+2080,2083,2082,2055,1993,1914,1843,1787,1728,1645,1585,1540,1501,1462,1448,1460,1490,1503,1494,1510,
+1535,1541,1555,1573,1584,1601,1613,1634,1653,1679,1694,1695,1699,1700,1712,1766,1792,1805,1694,1796,
+2012,1999,1991,1922,1851,1773,1714,1648,1600,1585,1594,1599,1590,1558,1506,1422,1331,1239,1139,1039,
+947,861,783,713,638,572,501,419,313,224,172,122,49,-50,-157,-266,-376,-492,-610,-732,
+-856,-978,-1091,-1191,-1290,-1387,-1463,-1512,-1540,-1557,-1555,-1552,-1550,-1551,-1531,-1464,-1332,-1092,-869,-768,
+-606,-454,-384,-286,-272,-288,-318,-318,-360,-384,-436,-473,-499,-474,-443,-442,-463,-518,-600,-629,
+-612,-646,-639,-648,-713,-808,-1009,-1204,-1342,-1411,-1456,-1450,-1404,-1382,-1391,-1428,-1464,-1507,-1584,-1689,
+-1815,-1922,-2004,-2077,-2108,-2152,-2193,-2249,-2290,-2317,-2362,-2427,-2492,-2548,-2586,-2587,-2551,-2561,-2575,-2588,
+-2591,-2585,-2580,-2532,-2468,-2492,-2545,-2589,-2652,-2738,-2802,-2877,-2971,-3033,-3075,-3128,-3296,-3588,-4049,-4478,
+-4733,-4842,-4883,-4862,-4801,-4737,-4677,-4619,-4558,-4525,-4489,-4453,-4440,-4451,-4507,-4585,-4666,-4725,-4761,-4782,
+-4776,-4759,-4714,-4611,-4395,-4062,-3749,-3481,-3312,-3168,-2911,-2631,-2474,-2269,-2142,-2140,-2233,-2376,-2450,-2475,
+-2486,-2501,-2498,-2532,-2577,-2618,-2662,-2710,-2759,-2799,-2836,-2851,-2874,-2886,-2925,-2984,-3039,-3060,-3106,-3148,
+-3151,-3132,-3116,-3152,-3145,-3134,-3143,-3153,-3173,-3184,-3233,-3257,-3282,-3291,-3322,-3371,-3399,-3403,-3416,-3444,
+-3476,-3515,-3559,-3610,-3656,-3668,-3689,-3722,-3740,-3735,-3735,-3745,-3728,-3713,-3743,-3767,-3819,-3820,-3831,-3858,
+-3868,-3810,-3782,-3744,-3742,-3754,-3777,-3722,-3682,-3680,-3680,-3653,-3650,-3589,-3532,-3485,-3450,-3410,-3405,-3311,
+-3272,-3291,-3227,-3175,-3223,-3206,-3147,-3139,-3115,-3196,-3445,-3718,-3946,-4089,-4168,-4187,-4223,-4237,-4233,-4217,
+-4198,-4177,-4148,-4093,-4026,-3947,-3846,-3756,-3647,-3537,-3439,-3319,-3197,-3025,-2889,-2775,-2645,-2546,-2466,-2442,
+-2372,-2255,-2218,-2216,-2242,-2208,-2159,-2108,-2024,-1910,-1820,-1751,-1673,-1578,-1489,-1397,-1319,-1235,-1126,-1034,
+-944,-816,-698,-596,-530,-456,-347,-229,-157,-59,37,133,226,302,385,482,578,650,734,830,
+925,1013,1108,1204,1301,1392,1467,1527,1584,1655,1735,1807,1861,1915,1961,2013,2080,2159,2239,2309,
+2370,2441,2509,2582,2654,2726,2827,2881,2916,2935,2968,3003,3024,3077,3080,3117,3112,3127,3097,3053,
+3033,2915,2777,2606,2576,2659,2750,2795,2838,2938,3033,3122,3201,3272,3338,3401,3466,3518,3562,3614,
+3657,3679,3697,3723,3727,3763,3785,3807,3826,3867,3934,4018,4126,4215,4216,4245,4218,4186,4062,3923,
+3738,3491,3233,2847,2368,1931,1688,1831,2107,2410,2635,2763,2838,2879,2891,2888,2870,2825,2776,2724,
+2681,2626,2575,2527,2483,2435,2373,2306,2243,2182,2119,2057,1998,1943,1889,1837,1793,1757,1717,1676,
+1636,1595,1553,1504,1458,1420,1381,1348,1316,1292,1242,1190,1137,1094,1067,1048,1031,1004,968,925,
+896,874,855,822,784,754,700,657,613,560,514,494,451,403,370,347,314,274,220,168,
+110,51,0,-52,-99,-143,-183,-233,-267,-290,-308,-337,-364,-395,-425,-459,-487,-521,-556,-598,
+-629,-658,-690,-708,-722,-736,-755,-772,-775,-760,-751,-755,-759,-760,-762,-766,-770,-777,-783,-793,
+-801,-809,-817,-831,-851,-861,-871,-868,-864,-853,-835,-805,-805,-813,-827,-845,-849,-832,-785,-674,
+-523,-557,-707,-778,-816,-827,-825,-820,-819,-826,-830,-829,-827,-834,-851,-863,-857,-813,-739,-760,
+-833,-859,-845,-834,-828,-831,-832,-833,-826,-819,-816,-811,-807,-815,-817,-823,-833,-838,-812,-746,
+-797,-827,-817,-830,-831,-811,-800,-791,-782,-778,-775,-778,-777,-777,-782,-789,-791,-797,-797,-794,
+-791,-790,-792,-793,-796,-800,-804,-807,-808,-805,-802,-798,-793,-787,-788,-792,-802,-813,-824,-831,
+-824,-814,-815,-823,-822,-821,-821,-803,-806,-812,-864,-896,-916,-936,-958,-976,-997,-1017,-1041,-1059,
+-1080,-1107,-1128,-1147,-1168,-1186,-1208,-1226,-1247,-1263,-1272,-1285,-1296,-1307,-1318,-1327,-1329,-1328,-1327,-1323,
+-1327,-1328,-1334,-1347,-1361,-1379,-1391,-1405,-1424,-1449,-1474,-1492,-1509,-1530,-1552,-1575,-1599,-1620,-1655,-1695,
+-1736,-1775,-1817,-1857,-1891,-1927,-1970,-2006,-2049,-2095,-2156,-2208,-2259,-2301,-2328,-2348,-2371,-2387,-2403,-2427,
+-2444,-2457,-2475,-2497,-2513,-2541,-2568,-2594,-2628,-2655,-2678,-2706,-2728,-2764,-2768,-2805,-2838,-2874,-2868,-2928,
+-2963,-2976,-2998,-3022,-3053,-3087,-3107,-3140,-3170,-3214,-3238,-3255,-3288,-3328,-3364,-3381,-3413,-3442,-3477,-3516,
+-3549,-3577,-3605,-3638,-3661,-3691,-3723,-3763,-3806,-3843,-3865,-3877,-3901,-3925,-3947,-3967,-3981,-4000,-4023,-4045,
+-4055,-4074,-4087,-4100,-4115,-4118,-4123,-4133,-4143,-4160,-4168,-4189,-4196,-4199,-4205,-4208,-4214,-4217,-4225,-4231,
+-4232,-4233,-4230,-4228,-4221,-4225,-4220,-4214,-4219,-4226,-4229,-4213,-4192,-4174,-4154,-4141,-4141,-4125,-4116,-4115,
+-4126,-4115,-4055,-3992,-3961,-3948,-3923,-3904,-3893,-3866,-3815,-3714,-3573,-3412,-3294,-3187,-3403,-3484,-3563,-3589,
+-3591,-3571,-3561,-3543,-3493,-3452,-3400,-3326,-3270,-3226,-3175,-3136,-3086,-3021,-2965,-2925,-2874,-2817,-2816,-2822,
+-2811,-2693,-2673,-2643,-2610,-2596,-2570,-2576,-2573,-2566,-2546,-2492,-2444,-2418,-2417,-2432,-2414,-2380,-2371,-2327,
+-2288,-2312,-2378,-2402,-2442,-2446,-2437,-2406,-2432,-2454,-2466,-2476,-2461,-2436,-2403,-2384,-2368,-2380,-2415,-2397,
+-2419,-2433,-2464,-2537,-2617,-2703,-2766,-2793,-2766,-2704,-2694,-2700,-2727,-2760,-2787,-2807,-2819,-2828,-2853,-2875,
+-2895,-2884,-2853,-2814,-2772,-2763,-2776,-2796,-2805,-2805,-2802,-2800,-2805,-2808,-2811,-2813,-2829,-2857,-2885,-2897,
+-2906,-2915,-2933,-2941,-2945,-2959,-2948,-2922,-2895,-2864,-2833,-2824,-2831,-2845,-2863,-2881,-2899,-2911,-2892,-2894,
+-2886,-2876,-2876,-2879,-2886,-2904,-2931,-2939,-2941,-2957,-2973,-2989,-3024,-3076,-3138,-3199,-3269,-3332,-3399,-3467,
+-3524,-3592,-3673,-3786,-3917,-4008,-4045,-4079,-4185,-4312,-4356,-4374,-4375,-4378,-4391,-4407,-4427,-4456,-4504,-4588,
+-4714,-4837,-4935,-5005,-5058,-5098,-5125,-5143,-5153,-5161,-5169,-5168,-5166,-5158,-5148,-5135,-5118,-5098,-5071,-5038,
+-4998,-4955,-4907,-4860,-4813,-4768,-4718,-4657,-4612,-4577,-4550,-4526,-4484,-4459,-4431,-4391,-4361,-4319,-4271,-4241,
+-4201,-4158,-4116,-4103,-4065,-4034,-3996,-3974,-3950,-3929,-3910,-3893,-3871,-3874,-3871,-3866,-3863,-3848,-3827,-3813,
+-3782,-3746,-3710,-3666,-3626,-3608,-3574,-3536,-3504,-3467,-3427,-3382,-3334,-3292,-3238,-3182,-3119,-3064,-3002,-2931,
+-2869,-2814,-2758,-2700,-2635,-2570,-2503,-2433,-2359,-2277,-2187,-2084,-2005,-1915,-1814,-1729,-1626,-1543,-1461,-1383,
+-1293,-1197,-1102,-1000,-914,-835,-742,-633,-543,-467,-366,-265,-172,-44,69,151,223,301,374,477,
+582,696,807,885,980,1062,1149,1247,1367,1462,1558,1578,1710,1778,1825,1858,1902,1952,2000,2052,
+2119,2178,2234,2286,2334,2370,2385,2446,2492,2531,2552,2589,2629,2673,2722,2760,2787,2803,2830,2857,
+2901,2928,2954,2972,2998,3035,3072,3104,3132,3157,3200,3213,3230,3257,3282,3282,3272,3263,3244,3221,
+3224,3314,3521,3475,3318,3196,3166,3181,3202,3204,3200,3195,3182,3171,3158,3136,3108,3094,3087,3065,
+3059,3059,3074,3105,3138,3172,3208,3250,3291,3333,3372,3394,3428,3460,3493,3516,3540,3571,3603,3636,
+3665,3691,3712,3724,3736,3747,3758,3765,3779,3800,3817,3844,3883,3918,3955,4000,4056,4112,4182,4256,
+4334,4403,4468,4459,4413,4429,4529,4516,4423,4409,4361,4309,4285,4265,4309,4393,4483,4631,4773,4945,
+5108,5222,5339,5384,5378,5480,5544,5484,5394,5341,5301,5308,5342,5316,5245,5187,5070,4994,4933,4901,
+4863,4820,4781,4736,4663,4573,4488,4425,4373,4329,4289,4245,4203,4148,4083,4008,3931,3850,3756,3709,
+3659,3609,3563,3514,3457,3389,3331,3278,3232,3186,3134,3073,3019,2967,2913,2857,2811,2767,2732,2705,
+2680,2664,2659,2650,2633,2623,2616,2618,2628,2647,2659,2653,2670,2705,2729,2768,2809,2842,2891,2941,
+2998,3055,3089,3113,3138,3165,3179,3187,3186,3173,3169,3161,3138,3105,3065,3030,2993,2964,2938,2917,
+2893,2879,2877,2874,2878,2884,2888,2883,2861,2862,2873,2847,2814,2765,2708,2675,2662,2667,2666,2666,
+2647,2608,2561,2512,2465,2416,2378,2344,2314,2291,2270,2248,2227,2208,2193,2176,2171,2153,2128,2108,
+2098,2091,2101,2092,2060,2000,1924,1863,1813,1755,1700,1652,1600,1574,1531,1520,1500,1503,1505,1481,
+1460,1461,1475,1487,1513,1535,1555,1582,1623,1666,1723,1760,1747,1721,1740,1754,1791,1828,1776,1685,
+1818,1976,1975,1980,1914,1834,1759,1688,1620,1566,1529,1499,1510,1526,1507,1469,1387,1295,1204,1101,
+999,902,813,740,676,608,543,474,403,306,213,162,115,48,-40,-137,-243,-352,-464,-577,
+-698,-824,-949,-1063,-1169,-1273,-1371,-1455,-1512,-1551,-1575,-1585,-1587,-1594,-1608,-1612,-1580,-1485,-1330,-1176,
+-1017,-838,-557,-443,-367,-305,-365,-388,-395,-369,-391,-420,-463,-536,-555,-535,-525,-478,-510,-587,
+-639,-675,-659,-641,-669,-678,-715,-849,-1093,-1340,-1445,-1499,-1518,-1466,-1442,-1432,-1447,-1492,-1538,-1582,
+-1668,-1828,-1952,-2038,-2101,-2148,-2195,-2223,-2253,-2271,-2336,-2393,-2454,-2507,-2557,-2600,-2596,-2578,-2596,-2623,
+-2623,-2620,-2628,-2617,-2572,-2594,-2620,-2645,-2630,-2688,-2745,-2835,-2900,-2971,-3006,-3064,-3156,-3333,-3597,-4037,
+-4472,-4768,-4906,-4949,-4923,-4864,-4795,-4720,-4647,-4584,-4560,-4537,-4510,-4494,-4495,-4542,-4607,-4666,-4716,-4750,
+-4772,-4784,-4771,-4744,-4682,-4558,-4329,-4055,-3812,-3679,-3518,-3378,-3187,-2878,-2619,-2452,-2412,-2404,-2436,-2419,
+-2426,-2442,-2461,-2503,-2525,-2532,-2568,-2587,-2613,-2651,-2679,-2701,-2741,-2783,-2742,-2821,-2916,-2978,-3024,-3070,
+-3123,-3133,-3126,-3126,-3144,-3131,-3113,-3104,-3108,-3140,-3165,-3194,-3219,-3259,-3288,-3314,-3346,-3385,-3400,-3429,
+-3461,-3486,-3501,-3536,-3598,-3628,-3630,-3675,-3703,-3715,-3713,-3723,-3712,-3700,-3688,-3708,-3698,-3716,-3726,-3725,
+-3753,-3760,-3712,-3714,-3685,-3647,-3643,-3696,-3721,-3672,-3645,-3655,-3616,-3613,-3627,-3514,-3453,-3431,-3415,-3390,
+-3282,-3251,-3264,-3203,-3161,-3197,-3217,-3116,-3173,-3306,-3440,-3710,-3971,-4130,-4200,-4222,-4215,-4231,-4249,-4252,
+-4242,-4219,-4197,-4150,-4080,-4011,-3911,-3822,-3726,-3625,-3514,-3409,-3279,-3122,-2958,-2757,-2620,-2535,-2431,-2349,
+-2298,-2272,-2263,-2285,-2252,-2239,-2210,-2154,-2090,-2012,-1909,-1822,-1736,-1641,-1540,-1443,-1373,-1291,-1206,-1144,
+-1058,-969,-852,-727,-618,-540,-428,-323,-227,-133,-33,71,167,265,346,432,517,589,669,758,
+862,961,1044,1120,1205,1323,1403,1470,1527,1590,1666,1744,1823,1887,1943,1992,2051,2117,2198,2279,
+2333,2388,2452,2521,2603,2666,2751,2844,2900,2920,2945,2965,2986,3033,3068,3092,3104,3122,3122,3092,
+3032,2982,2903,2723,2568,2595,2711,2819,2886,2908,2987,3104,3189,3261,3319,3377,3432,3488,3529,3582,
+3618,3658,3692,3698,3723,3744,3771,3796,3818,3843,3888,3980,4093,4148,4180,4214,4224,4208,4185,4124,
+3993,3800,3544,3298,2968,2537,2059,1759,1824,2092,2405,2646,2791,2875,2908,2907,2894,2880,2850,2804,
+2752,2705,2661,2612,2556,2506,2456,2394,2330,2269,2221,2166,2103,2039,1980,1918,1866,1824,1785,1744,
+1698,1648,1604,1558,1516,1483,1460,1430,1395,1350,1317,1261,1209,1147,1100,1080,1062,1043,1013,981,
+940,894,876,863,830,783,729,682,645,605,562,527,484,455,400,380,355,335,290,245,
+188,139,81,30,-26,-70,-113,-166,-211,-249,-265,-276,-292,-319,-346,-381,-409,-444,-474,-516,
+-558,-593,-623,-650,-669,-691,-721,-743,-740,-743,-730,-725,-727,-730,-735,-740,-744,-746,-750,-754,
+-762,-764,-770,-786,-794,-800,-817,-821,-815,-821,-806,-778,-764,-775,-792,-796,-801,-801,-782,-743,
+-686,-645,-681,-732,-777,-781,-774,-774,-777,-781,-795,-796,-787,-783,-795,-822,-841,-841,-829,-824,
+-832,-844,-846,-834,-817,-808,-815,-816,-811,-797,-797,-798,-789,-781,-782,-786,-784,-789,-781,-699,
+-584,-713,-783,-806,-797,-747,-642,-736,-751,-740,-728,-726,-727,-724,-721,-722,-729,-735,-741,-741,
+-740,-737,-739,-742,-741,-744,-747,-752,-749,-751,-747,-745,-743,-742,-741,-738,-740,-746,-754,-769,
+-778,-782,-778,-783,-787,-792,-788,-791,-796,-799,-819,-847,-869,-890,-917,-935,-952,-977,-996,-1015,
+-1032,-1052,-1074,-1095,-1115,-1134,-1155,-1172,-1190,-1208,-1224,-1236,-1247,-1260,-1273,-1284,-1296,-1302,-1305,-1311,
+-1309,-1313,-1318,-1322,-1336,-1346,-1355,-1364,-1371,-1390,-1415,-1440,-1457,-1472,-1493,-1521,-1545,-1579,-1609,-1639,
+-1688,-1731,-1772,-1811,-1852,-1893,-1934,-1975,-2010,-2044,-2085,-2126,-2158,-2197,-2226,-2244,-2257,-2267,-2274,-2289,
+-2313,-2336,-2368,-2404,-2440,-2475,-2508,-2506,-2523,-2600,-2621,-2613,-2683,-2725,-2748,-2765,-2789,-2819,-2848,-2880,
+-2901,-2885,-2948,-2981,-3005,-3051,-3075,-3099,-3136,-3171,-3212,-3226,-3253,-3270,-3301,-3336,-3362,-3403,-3438,-3474,
+-3506,-3535,-3561,-3590,-3628,-3655,-3685,-3723,-3756,-3787,-3816,-3843,-3861,-3893,-3928,-3958,-3972,-3983,-4004,-4032,
+-4058,-4072,-4088,-4097,-4111,-4123,-4132,-4138,-4144,-4159,-4177,-4197,-4212,-4217,-4217,-4207,-4215,-4224,-4236,-4244,
+-4248,-4247,-4250,-4248,-4236,-4221,-4241,-4242,-4243,-4251,-4258,-4257,-4239,-4219,-4193,-4173,-4169,-4170,-4166,-4160,
+-4155,-4136,-4111,-4098,-4070,-4036,-3970,-3955,-3941,-3902,-3893,-3874,-3783,-3684,-3521,-3336,-3244,-3345,-3507,-3563,
+-3607,-3608,-3587,-3566,-3546,-3519,-3489,-3442,-3375,-3309,-3256,-3203,-3154,-3104,-3069,-3022,-2943,-2927,-2897,-2846,
+-2834,-2826,-2756,-2684,-2635,-2607,-2593,-2551,-2559,-2566,-2562,-2528,-2523,-2479,-2430,-2383,-2371,-2420,-2416,-2378,
+-2328,-2247,-2220,-2256,-2319,-2369,-2413,-2434,-2414,-2403,-2429,-2457,-2465,-2459,-2431,-2410,-2374,-2344,-2342,-2360,
+-2361,-2362,-2381,-2420,-2487,-2548,-2639,-2710,-2736,-2723,-2700,-2709,-2733,-2756,-2783,-2811,-2821,-2823,-2831,-2840,
+-2857,-2878,-2868,-2844,-2822,-2807,-2806,-2815,-2826,-2832,-2834,-2830,-2828,-2831,-2836,-2834,-2834,-2843,-2870,-2899,
+-2921,-2947,-2975,-2987,-2982,-2976,-2967,-2937,-2914,-2886,-2857,-2842,-2844,-2855,-2877,-2894,-2913,-2938,-2956,-2919,
+-2899,-2898,-2891,-2908,-2918,-2921,-2933,-2939,-2945,-2952,-2961,-2975,-2981,-2998,-3044,-3113,-3183,-3240,-3304,-3378,
+-3454,-3530,-3609,-3701,-3809,-3925,-4003,-4044,-4073,-4192,-4344,-4408,-4443,-4449,-4449,-4455,-4456,-4457,-4472,-4500,
+-4548,-4642,-4771,-4887,-4967,-5026,-5073,-5105,-5126,-5143,-5159,-5171,-5179,-5177,-5170,-5163,-5151,-5135,-5116,-5092,
+-5061,-5024,-4983,-4938,-4890,-4842,-4796,-4746,-4692,-4636,-4595,-4560,-4526,-4509,-4498,-4482,-4453,-4409,-4369,-4324,
+-4286,-4255,-4217,-4170,-4135,-4102,-4065,-4054,-4035,-4008,-3986,-3963,-3947,-3938,-3935,-3930,-3928,-3920,-3908,-3886,
+-3860,-3824,-3790,-3756,-3710,-3679,-3646,-3609,-3577,-3534,-3509,-3462,-3414,-3374,-3336,-3289,-3222,-3167,-3106,-3041,
+-2977,-2912,-2864,-2812,-2756,-2684,-2619,-2535,-2460,-2370,-2308,-2227,-2145,-2046,-1964,-1887,-1799,-1709,-1611,-1518,
+-1427,-1344,-1256,-1165,-1057,-964,-865,-774,-677,-573,-497,-398,-321,-243,-130,-23,91,207,307,388,
+463,548,634,736,827,917,1006,1136,1244,1321,1396,1434,1554,1631,1699,1730,1774,1804,1853,1918,
+1979,2026,2077,2142,2199,2242,2293,2305,2341,2384,2426,2470,2524,2565,2609,2649,2674,2698,2732,2761,
+2794,2817,2846,2872,2906,2930,2973,2994,3023,3065,3091,3118,3141,3165,3194,3202,3200,3196,3189,3172,
+3157,3156,3204,3331,3298,3150,3105,3109,3141,3178,3180,3197,3180,3154,3135,3134,3116,3102,3075,3045,
+3028,3022,3024,3039,3074,3108,3143,3184,3223,3272,3300,3343,3366,3394,3424,3448,3475,3501,3530,3560,
+3591,3619,3643,3665,3686,3707,3718,3723,3729,3750,3780,3813,3848,3898,3943,3981,4022,4074,4132,4198,
+4263,4318,4362,4394,4423,4466,4480,4432,4430,4442,4433,4347,4248,4162,4102,4124,4203,4348,4530,4717,
+4883,5020,5104,5177,5153,5201,5324,5453,5457,5389,5332,5308,5254,5221,5178,5100,5025,4969,4907,4843,
+4780,4752,4740,4697,4639,4567,4473,4394,4334,4283,4231,4189,4152,4111,4052,3971,3887,3810,3756,3669,
+3626,3583,3528,3480,3428,3368,3293,3227,3166,3119,3083,3045,3002,2964,2919,2873,2818,2776,2737,2710,
+2686,2667,2655,2646,2637,2628,2611,2601,2597,2605,2622,2633,2630,2643,2675,2718,2753,2775,2810,2863,
+2916,2966,3010,3038,3065,3092,3122,3148,3158,3165,3171,3182,3198,3195,3168,3107,3053,3006,2964,2934,
+2919,2896,2895,2893,2891,2892,2892,2893,2892,2874,2866,2866,2832,2804,2769,2726,2684,2661,2657,2647,
+2626,2596,2545,2493,2449,2413,2372,2337,2309,2287,2274,2272,2262,2247,2230,2207,2187,2167,2142,2122,
+2096,2083,2078,2096,2098,2061,1995,1915,1860,1807,1769,1723,1693,1647,1613,1578,1561,1535,1527,1517,
+1505,1494,1478,1482,1497,1517,1539,1562,1580,1619,1688,1757,1782,1778,1758,1753,1782,1847,1875,1794,
+1753,1906,1940,1934,1923,1886,1824,1764,1698,1631,1572,1528,1474,1436,1434,1427,1392,1331,1253,1175,
+1083,988,889,785,701,638,583,524,465,394,310,213,159,119,57,-25,-116,-220,-326,-439,
+-550,-663,-785,-905,-1016,-1123,-1231,-1337,-1424,-1490,-1537,-1571,-1596,-1618,-1639,-1664,-1681,-1672,-1614,-1524,
+-1397,-1232,-997,-788,-642,-506,-419,-451,-483,-486,-476,-513,-515,-491,-543,-598,-633,-571,-490,-466,
+-485,-575,-690,-697,-669,-639,-684,-711,-765,-989,-1315,-1451,-1510,-1549,-1541,-1506,-1482,-1487,-1515,-1542,
+-1595,-1686,-1824,-1979,-2056,-2119,-2177,-2220,-2262,-2291,-2335,-2382,-2433,-2481,-2539,-2603,-2624,-2606,-2618,-2652,
+-2674,-2687,-2705,-2714,-2667,-2659,-2705,-2700,-2681,-2674,-2692,-2780,-2866,-2926,-2993,-3044,-3098,-3202,-3382,-3655,
+-4065,-4477,-4787,-4935,-4981,-4962,-4906,-4833,-4751,-4680,-4621,-4586,-4576,-4570,-4547,-4539,-4574,-4635,-4671,-4696,
+-4736,-4770,-4798,-4803,-4788,-4761,-4709,-4619,-4481,-4327,-4177,-3961,-3776,-3655,-3462,-3302,-3102,-2951,-2688,-2520,
+-2513,-2479,-2466,-2492,-2504,-2483,-2484,-2481,-2527,-2549,-2588,-2595,-2630,-2687,-2675,-2669,-2758,-2816,-2867,-2950,
+-3014,-3076,-3108,-3101,-3109,-3143,-3113,-3104,-3081,-3079,-3089,-3120,-3164,-3234,-3269,-3289,-3302,-3321,-3365,-3396,
+-3417,-3427,-3475,-3532,-3574,-3592,-3619,-3613,-3627,-3638,-3643,-3664,-3662,-3652,-3680,-3675,-3701,-3683,-3727,-3718,
+-3670,-3644,-3629,-3595,-3592,-3619,-3556,-3506,-3541,-3611,-3630,-3622,-3595,-3556,-3556,-3581,-3495,-3432,-3401,-3386,
+-3380,-3331,-3267,-3252,-3181,-3150,-3128,-3211,-3210,-3311,-3550,-3726,-3964,-4151,-4225,-4249,-4239,-4246,-4245,-4248,
+-4252,-4241,-4215,-4184,-4133,-4059,-3980,-3855,-3792,-3707,-3605,-3504,-3363,-3153,-2966,-2788,-2629,-2614,-2554,-2420,
+-2343,-2285,-2204,-2235,-2255,-2265,-2246,-2206,-2149,-2086,-2022,-1924,-1819,-1720,-1618,-1518,-1427,-1336,-1253,-1178,
+-1105,-1024,-925,-816,-712,-607,-492,-398,-301,-192,-81,8,104,212,295,372,464,570,634,696,
+785,881,973,1046,1123,1209,1314,1404,1473,1540,1605,1681,1764,1839,1908,1967,2030,2104,2176,2249,
+2310,2356,2402,2472,2546,2627,2702,2792,2872,2909,2943,2961,2980,2994,3036,3066,3077,3098,3087,3070,
+3042,3045,2948,2836,2629,2525,2600,2716,2813,2885,2962,3071,3170,3251,3311,3358,3402,3456,3506,3554,
+3602,3638,3669,3695,3747,3760,3777,3788,3807,3837,3865,3902,3960,4029,4131,4188,4220,4236,4263,4225,
+4220,4088,3832,3540,3305,3071,2685,2246,1899,1833,2067,2373,2643,2826,2916,2954,2946,2928,2912,2893,
+2853,2804,2746,2708,2660,2598,2537,2480,2423,2366,2311,2256,2207,2150,2088,2025,1970,1916,1875,1828,
+1779,1728,1681,1635,1589,1543,1512,1490,1468,1431,1379,1331,1285,1226,1172,1131,1108,1081,1053,1020,
+988,948,909,881,856,830,789,747,689,635,586,554,529,480,435,402,394,364,339,303,
+262,213,158,103,49,-1,-46,-89,-138,-180,-212,-228,-245,-264,-292,-310,-336,-369,-399,-431,
+-470,-521,-560,-588,-609,-632,-662,-690,-711,-713,-715,-703,-698,-701,-708,-722,-729,-729,-729,-728,
+-726,-730,-737,-748,-760,-748,-730,-773,-754,-740,-770,-763,-763,-742,-733,-732,-708,-738,-751,-748,
+-737,-733,-732,-738,-746,-748,-740,-729,-721,-674,-710,-748,-739,-698,-680,-725,-773,-806,-818,-828,
+-844,-860,-853,-849,-839,-818,-816,-814,-805,-794,-783,-785,-786,-778,-766,-764,-757,-760,-761,-751,
+-698,-682,-721,-752,-760,-752,-713,-662,-712,-706,-695,-682,-675,-673,-670,-663,-662,-663,-669,-677,
+-681,-681,-681,-684,-684,-685,-687,-691,-692,-690,-687,-687,-687,-687,-690,-691,-689,-686,-687,-692,
+-708,-722,-714,-668,-717,-745,-755,-761,-767,-768,-748,-708,-804,-813,-825,-874,-893,-914,-938,-955,
+-975,-991,-1014,-1034,-1055,-1079,-1100,-1116,-1138,-1157,-1176,-1195,-1209,-1222,-1234,-1246,-1258,-1270,-1274,-1279,
+-1287,-1287,-1294,-1301,-1307,-1320,-1332,-1337,-1341,-1345,-1359,-1380,-1399,-1423,-1449,-1473,-1500,-1540,-1582,-1623,
+-1654,-1692,-1730,-1755,-1795,-1823,-1858,-1889,-1908,-1941,-1975,-2007,-2028,-2042,-2064,-2084,-2105,-2133,-2163,-2198,
+-2232,-2265,-2297,-2333,-2368,-2402,-2438,-2469,-2499,-2529,-2564,-2592,-2624,-2654,-2680,-2705,-2733,-2760,-2790,-2823,
+-2861,-2893,-2919,-2944,-2968,-2996,-3000,-3050,-3098,-3127,-3157,-3190,-3222,-3245,-3259,-3281,-3326,-3360,-3404,-3439,
+-3471,-3491,-3515,-3547,-3578,-3615,-3642,-3674,-3709,-3751,-3778,-3798,-3819,-3846,-3881,-3920,-3954,-3972,-3987,-4015,
+-4041,-4064,-4089,-4104,-4114,-4128,-4138,-4150,-4156,-4166,-4173,-4188,-4208,-4222,-4228,-4242,-4234,-4240,-4252,-4263,
+-4268,-4277,-4275,-4276,-4274,-4266,-4247,-4260,-4216,-4262,-4285,-4256,-4254,-4252,-4232,-4216,-4205,-4201,-4203,-4204,
+-4205,-4181,-4156,-4151,-4130,-4093,-4063,-4045,-4022,-3984,-3961,-3924,-3918,-3860,-3781,-3648,-3478,-3344,-3347,-3474,
+-3569,-3618,-3624,-3612,-3579,-3549,-3522,-3496,-3450,-3388,-3341,-3274,-3230,-3179,-3145,-3087,-3035,-2981,-2961,-2940,
+-2863,-2852,-2824,-2784,-2705,-2617,-2582,-2586,-2548,-2558,-2562,-2541,-2530,-2523,-2480,-2438,-2417,-2384,-2398,-2408,
+-2386,-2342,-2262,-2208,-2189,-2262,-2298,-2328,-2356,-2375,-2402,-2422,-2456,-2475,-2470,-2460,-2419,-2367,-2336,-2320,
+-2329,-2310,-2297,-2331,-2379,-2435,-2529,-2613,-2676,-2699,-2697,-2706,-2737,-2771,-2797,-2822,-2837,-2841,-2843,-2849,
+-2852,-2860,-2866,-2862,-2852,-2842,-2834,-2837,-2846,-2854,-2857,-2857,-2853,-2843,-2832,-2826,-2819,-2814,-2807,-2820,
+-2846,-2884,-2929,-2957,-2962,-2960,-2952,-2941,-2918,-2897,-2869,-2850,-2843,-2849,-2870,-2894,-2912,-2928,-2949,-2950,
+-2916,-2896,-2904,-2904,-2903,-2918,-2936,-2939,-2948,-2959,-2966,-2959,-2961,-2977,-3002,-3029,-3077,-3149,-3201,-3274,
+-3351,-3439,-3531,-3615,-3712,-3811,-3904,-3966,-4003,-4046,-4147,-4344,-4448,-4520,-4555,-4553,-4539,-4522,-4507,-4505,
+-4518,-4556,-4617,-4705,-4822,-4918,-4986,-5041,-5080,-5112,-5133,-5156,-5175,-5182,-5183,-5183,-5174,-5166,-5154,-5134,
+-5110,-5085,-5049,-5007,-4963,-4918,-4870,-4820,-4759,-4706,-4650,-4618,-4588,-4557,-4520,-4498,-4491,-4470,-4445,-4409,
+-4371,-4323,-4279,-4242,-4221,-4178,-4146,-4117,-4083,-4055,-4039,-4024,-4023,-4015,-4007,-3993,-3981,-3986,-3974,-3953,
+-3934,-3906,-3871,-3842,-3802,-3771,-3719,-3688,-3659,-3621,-3586,-3548,-3502,-3460,-3419,-3375,-3332,-3276,-3221,-3147,
+-3077,-3021,-2960,-2907,-2856,-2790,-2734,-2675,-2588,-2496,-2438,-2364,-2290,-2213,-2111,-2017,-1918,-1819,-1731,-1643,
+-1574,-1490,-1386,-1283,-1193,-1097,-1022,-916,-828,-735,-631,-539,-442,-347,-257,-171,-76,20,119,208,
+306,413,528,608,720,824,921,979,1083,1186,1279,1324,1454,1534,1579,1590,1645,1700,1754,1818,
+1861,1920,1959,1996,2049,2093,2138,2197,2250,2298,2339,2385,2415,2449,2498,2538,2554,2586,2620,2653,
+2688,2721,2748,2776,2809,2832,2862,2888,2923,2949,2981,3030,3046,3079,3115,3140,3127,3131,3129,3127,
+3124,3119,3126,3162,3205,3213,3166,3111,3090,3096,3124,3143,3158,3167,3144,3123,3108,3090,3081,3062,
+3045,3034,3019,3020,3033,3052,3079,3115,3158,3195,3230,3266,3308,3345,3378,3401,3419,3437,3462,3491,
+3515,3540,3553,3574,3597,3619,3643,3661,3677,3694,3725,3760,3800,3856,3919,3980,4013,4034,4074,4128,
+4185,4233,4270,4299,4352,4437,4475,4419,4406,4432,4423,4363,4272,4175,4075,4016,4023,4097,4219,4388,
+4546,4684,4740,4804,4892,5011,5123,5210,5311,5348,5286,5245,5238,5209,5132,5039,4979,4950,4893,4832,
+4785,4710,4651,4616,4576,4518,4456,4379,4309,4238,4171,4117,4071,4033,3993,3936,3863,3791,3719,3669,
+3567,3515,3460,3402,3346,3292,3233,3167,3111,3063,3032,3014,2986,2955,2921,2881,2840,2793,2753,2725,
+2704,2686,2673,2664,2655,2639,2625,2615,2610,2608,2610,2617,2620,2615,2630,2661,2697,2725,2749,2785,
+2829,2879,2931,2969,2995,3021,3054,3084,3108,3118,3125,3140,3165,3197,3202,3173,3119,3059,3007,2977,
+2948,2921,2917,2915,2915,2903,2903,2900,2896,2893,2876,2852,2835,2819,2787,2753,2720,2683,2652,2637,
+2635,2605,2570,2521,2461,2414,2379,2348,2323,2295,2275,2273,2273,2263,2254,2241,2217,2192,2166,2140,
+2111,2081,2063,2061,2078,2078,2027,1954,1891,1835,1764,1738,1716,1696,1657,1638,1633,1609,1581,1572,
+1569,1544,1548,1547,1523,1516,1545,1572,1600,1616,1603,1679,1776,1809,1827,1802,1785,1796,1849,1854,
+1789,1833,1975,1976,1899,1864,1833,1778,1731,1675,1615,1560,1503,1452,1400,1361,1352,1330,1276,1215,
+1134,1038,969,884,781,683,608,560,507,453,391,324,234,176,132,73,-13,-102,-197,-300,
+-415,-530,-642,-755,-863,-969,-1077,-1182,-1289,-1381,-1449,-1504,-1556,-1601,-1641,-1678,-1713,-1736,-1738,-1720,
+-1674,-1594,-1450,-1250,-1080,-928,-783,-600,-545,-604,-618,-598,-614,-646,-626,-610,-641,-704,-670,-615,
+-574,-526,-540,-606,-663,-682,-691,-705,-750,-755,-842,-1198,-1431,-1528,-1569,-1577,-1556,-1532,-1521,-1526,
+-1506,-1574,-1670,-1838,-1979,-2058,-2112,-2172,-2221,-2276,-2323,-2377,-2406,-2445,-2478,-2527,-2585,-2608,-2645,-2693,
+-2730,-2752,-2798,-2820,-2799,-2740,-2724,-2731,-2756,-2734,-2857,-2947,-2983,-3019,-3075,-3098,-3139,-3183,-3262,-3413,
+-3695,-4125,-4546,-4830,-4965,-4996,-4969,-4912,-4841,-4771,-4714,-4661,-4618,-4622,-4628,-4600,-4568,-4582,-4645,-4679,
+-4703,-4726,-4766,-4807,-4829,-4833,-4833,-4828,-4802,-4751,-4684,-4574,-4444,-4260,-4086,-3974,-3806,-3673,-3405,-3078,
+-2913,-2881,-2773,-2690,-2627,-2554,-2523,-2505,-2473,-2472,-2465,-2498,-2533,-2589,-2651,-2654,-2660,-2700,-2753,-2790,
+-2860,-2933,-3007,-3060,-3065,-3088,-3135,-3092,-3069,-3042,-3045,-3075,-3124,-3177,-3226,-3246,-3246,-3282,-3315,-3351,
+-3393,-3393,-3436,-3494,-3543,-3572,-3609,-3608,-3577,-3562,-3556,-3567,-3600,-3613,-3593,-3571,-3571,-3610,-3714,-3815,
+-3797,-3706,-3660,-3629,-3523,-3481,-3484,-3498,-3493,-3483,-3472,-3523,-3584,-3559,-3549,-3544,-3572,-3538,-3448,-3416,
+-3376,-3321,-3292,-3311,-3286,-3176,-3136,-3098,-3173,-3326,-3444,-3744,-3957,-4127,-4214,-4259,-4266,-4251,-4248,-4235,
+-4223,-4221,-4204,-4173,-4128,-4084,-4014,-3909,-3840,-3759,-3684,-3579,-3460,-3218,-2993,-2870,-2757,-2681,-2657,-2508,
+-2379,-2303,-2242,-2182,-2184,-2208,-2228,-2222,-2187,-2134,-2073,-1997,-1905,-1799,-1705,-1614,-1512,-1414,-1328,-1233,
+-1147,-1064,-974,-876,-775,-675,-566,-475,-378,-265,-145,-32,41,126,219,316,451,505,583,656,
+733,816,899,979,1058,1138,1218,1310,1402,1469,1546,1625,1713,1796,1877,1946,2004,2065,2136,2205,
+2277,2327,2370,2430,2500,2580,2667,2762,2849,2902,2928,2955,2990,2997,3013,3048,3071,3075,3091,3068,
+3040,3015,3048,2887,2723,2519,2507,2606,2711,2785,2884,3004,3137,3213,3292,3352,3398,3431,3472,3514,
+3558,3611,3652,3684,3717,3760,3815,3860,3818,3828,3852,3882,3904,3960,4057,4129,4204,4246,4239,4255,
+4198,4150,4004,3793,3487,3268,3067,2762,2410,2079,1858,2024,2333,2626,2836,2939,2984,2986,2970,2959,
+2944,2913,2864,2807,2757,2712,2646,2577,2515,2461,2409,2357,2302,2249,2192,2131,2071,2017,1968,1932,
+1880,1827,1770,1723,1673,1632,1582,1546,1518,1488,1451,1398,1350,1310,1265,1217,1170,1132,1101,1071,
+1036,1001,963,926,896,865,823,785,752,725,656,595,572,539,490,445,420,394,376,351,
+315,276,234,184,130,75,24,-17,-58,-103,-144,-174,-192,-210,-237,-267,-287,-306,-327,-355,
+-390,-423,-477,-528,-557,-570,-600,-629,-653,-671,-670,-678,-670,-675,-683,-691,-697,-714,-710,-710,
+-720,-707,-705,-716,-732,-723,-695,-719,-725,-734,-743,-756,-763,-755,-694,-579,-657,-669,-693,-705,
+-724,-731,-719,-713,-719,-720,-723,-714,-704,-695,-649,-680,-705,-681,-587,-491,-620,-689,-735,-767,
+-793,-815,-842,-852,-849,-839,-823,-818,-819,-799,-787,-779,-781,-780,-769,-754,-748,-739,-736,-742,
+-742,-729,-721,-706,-696,-693,-699,-689,-671,-627,-627,-641,-629,-619,-611,-607,-599,-595,-595,-599,
+-606,-614,-615,-614,-614,-617,-625,-629,-635,-635,-627,-618,-615,-618,-622,-623,-627,-623,-618,-622,
+-630,-646,-666,-675,-656,-675,-708,-716,-719,-728,-731,-701,-676,-767,-789,-802,-827,-849,-868,-894,
+-912,-928,-946,-968,-994,-1014,-1037,-1059,-1077,-1098,-1120,-1143,-1164,-1184,-1201,-1214,-1223,-1236,-1245,-1254,
+-1257,-1264,-1267,-1270,-1282,-1295,-1300,-1315,-1320,-1323,-1327,-1340,-1363,-1383,-1408,-1435,-1468,-1497,-1532,-1560,
+-1592,-1622,-1658,-1685,-1709,-1736,-1752,-1772,-1817,-1842,-1846,-1860,-1878,-1901,-1936,-1978,-2018,-2055,-2097,-2132,
+-2169,-2202,-2234,-2268,-2302,-2335,-2365,-2397,-2424,-2456,-2491,-2526,-2562,-2591,-2625,-2657,-2686,-2716,-2746,-2781,
+-2814,-2837,-2864,-2905,-2931,-2958,-2999,-3026,-3012,-3064,-3111,-3152,-3185,-3210,-3235,-3256,-3283,-3319,-3361,-3403,
+-3441,-3463,-3482,-3508,-3538,-3571,-3606,-3636,-3667,-3700,-3738,-3770,-3787,-3811,-3840,-3877,-3909,-3938,-3971,-3997,
+-4020,-4048,-4071,-4096,-4117,-4128,-4146,-4162,-4172,-4183,-4189,-4196,-4206,-4219,-4231,-4249,-4248,-4261,-4273,-4291,
+-4299,-4306,-4307,-4315,-4316,-4316,-4306,-4298,-4294,-4281,-4305,-4322,-4314,-4292,-4278,-4261,-4258,-4254,-4242,-4227,
+-4180,-4204,-4208,-4194,-4178,-4148,-4111,-4067,-4048,-4025,-4027,-4017,-4034,-4001,-3899,-3866,-3736,-3606,-3462,-3414,
+-3446,-3548,-3615,-3636,-3630,-3594,-3569,-3540,-3512,-3454,-3379,-3339,-3279,-3215,-3192,-3171,-3116,-3069,-3017,-3010,
+-2950,-2931,-2876,-2871,-2800,-2691,-2595,-2566,-2579,-2559,-2562,-2554,-2529,-2523,-2503,-2467,-2447,-2427,-2405,-2400,
+-2404,-2393,-2318,-2269,-2232,-2175,-2200,-2263,-2279,-2307,-2347,-2392,-2427,-2448,-2455,-2458,-2441,-2390,-2343,-2320,
+-2321,-2312,-2282,-2262,-2311,-2361,-2436,-2539,-2625,-2690,-2708,-2704,-2732,-2775,-2807,-2833,-2848,-2857,-2859,-2851,
+-2847,-2852,-2859,-2863,-2865,-2862,-2859,-2854,-2857,-2863,-2865,-2858,-2852,-2846,-2841,-2831,-2817,-2802,-2790,-2781,
+-2784,-2793,-2820,-2856,-2878,-2890,-2895,-2895,-2888,-2875,-2861,-2844,-2838,-2824,-2826,-2852,-2883,-2903,-2915,-2923,
+-2924,-2908,-2894,-2892,-2887,-2891,-2909,-2932,-2939,-2949,-2956,-2960,-2950,-2950,-2972,-2996,-3010,-3040,-3100,-3170,
+-3247,-3340,-3441,-3531,-3621,-3711,-3794,-3872,-3927,-3968,-4010,-4086,-4251,-4432,-4523,-4576,-4645,-4626,-4585,-4567,
+-4564,-4579,-4603,-4639,-4687,-4751,-4852,-4935,-4996,-5045,-5087,-5121,-5152,-5174,-5186,-5193,-5195,-5190,-5179,-5168,
+-5150,-5128,-5101,-5070,-5033,-4989,-4943,-4892,-4844,-4787,-4727,-4669,-4643,-4610,-4577,-4554,-4533,-4513,-4488,-4467,
+-4431,-4401,-4362,-4328,-4282,-4243,-4216,-4200,-4166,-4141,-4124,-4117,-4092,-4057,-4054,-4049,-4029,-4039,-4033,-4030,
+-4011,-3985,-3952,-3919,-3890,-3854,-3819,-3770,-3729,-3702,-3668,-3625,-3586,-3546,-3502,-3456,-3415,-3370,-3322,-3258,
+-3193,-3133,-3065,-3008,-2956,-2894,-2843,-2783,-2704,-2650,-2570,-2482,-2407,-2330,-2248,-2156,-2065,-1976,-1885,-1801,
+-1702,-1607,-1520,-1439,-1326,-1226,-1137,-1057,-962,-871,-785,-690,-598,-492,-389,-308,-204,-88,5,86,
+175,271,367,457,542,644,732,828,957,1041,1157,1255,1249,1345,1451,1481,1525,1568,1599,1644,
+1703,1750,1811,1879,1926,2005,2060,2070,2103,2135,2182,2233,2283,2331,2370,2406,2440,2460,2502,2538,
+2567,2604,2636,2661,2695,2737,2748,2786,2820,2856,2894,2933,2947,2971,2999,3042,3048,3050,3053,3066,
+3076,3079,3090,3128,3214,3342,3466,3345,3185,3103,3084,3097,3101,3113,3118,3110,3092,3074,3062,3052,
+3032,3028,3021,3010,3012,3015,3033,3060,3091,3117,3151,3199,3245,3278,3308,3331,3356,3383,3410,3433,
+3445,3466,3489,3510,3526,3553,3582,3597,3613,3637,3659,3691,3732,3782,3850,3934,4042,4061,4027,4038,
+4078,4144,4154,4173,4208,4280,4358,4352,4394,4484,4471,4371,4270,4188,4096,4001,3975,4007,4081,4187,
+4323,4450,4553,4653,4762,4912,5025,5099,5160,5198,5162,5108,5052,5037,5051,4998,4916,4870,4868,4822,
+4764,4688,4597,4533,4494,4453,4395,4328,4259,4194,4123,4054,4001,3951,3902,3858,3809,3752,3692,3624,
+3567,3440,3374,3306,3236,3176,3125,3074,3030,2994,2979,2974,2968,2955,2931,2893,2856,2818,2784,2748,
+2720,2708,2701,2698,2689,2682,2662,2632,2634,2637,2637,2634,2628,2625,2624,2635,2655,2677,2709,2749,
+2783,2813,2846,2891,2930,2960,2993,3026,3055,3073,3086,3094,3115,3150,3175,3175,3150,3105,3048,3020,
+2995,2967,2936,2941,2935,2937,2922,2908,2906,2899,2893,2881,2856,2842,2834,2792,2735,2705,2668,2645,
+2624,2610,2585,2547,2495,2439,2384,2351,2341,2320,2294,2281,2270,2258,2256,2258,2253,2242,2219,2182,
+2147,2103,2068,2045,2050,2057,2031,1957,1866,1798,1753,1704,1682,1661,1648,1640,1647,1652,1644,1626,
+1605,1605,1595,1577,1558,1547,1536,1597,1628,1642,1652,1595,1656,1781,1845,1856,1846,1809,1808,1825,
+1829,1808,1858,2021,2006,1884,1840,1785,1721,1678,1632,1595,1554,1491,1431,1376,1326,1293,1270,1227,
+1167,1085,1001,942,873,782,691,604,547,501,446,380,318,244,188,144,83,-1,-89,-181,
+-280,-391,-509,-620,-729,-829,-925,-1027,-1124,-1233,-1335,-1410,-1475,-1535,-1596,-1655,-1702,-1746,-1780,-1796,
+-1797,-1793,-1764,-1657,-1476,-1293,-1099,-956,-770,-713,-699,-773,-788,-789,-784,-763,-749,-750,-794,-779,
+-728,-689,-649,-610,-538,-526,-550,-612,-648,-692,-687,-724,-999,-1336,-1524,-1589,-1618,-1627,-1599,-1592,
+-1599,-1527,-1565,-1621,-1779,-1955,-2033,-2101,-2170,-2248,-2306,-2354,-2396,-2438,-2437,-2455,-2494,-2549,-2622,-2692,
+-2731,-2765,-2820,-2894,-2923,-2878,-2758,-2767,-2786,-2848,-2959,-3193,-3379,-3443,-3376,-3327,-3302,-3279,-3292,-3356,
+-3513,-3766,-4247,-4634,-4862,-4971,-5009,-4998,-4939,-4854,-4779,-4732,-4697,-4669,-4658,-4642,-4620,-4595,-4600,-4656,
+-4696,-4709,-4719,-4758,-4805,-4841,-4869,-4887,-4906,-4916,-4904,-4896,-4878,-4816,-4692,-4472,-4320,-4132,-4019,-3902,
+-3771,-3686,-3578,-3347,-3144,-2899,-2755,-2687,-2670,-2561,-2436,-2403,-2416,-2471,-2535,-2594,-2636,-2662,-2699,-2696,
+-2729,-2799,-2855,-2943,-3017,-3037,-3065,-3098,-3085,-3067,-3035,-3032,-3077,-3149,-3202,-3245,-3246,-3262,-3291,-3302,
+-3339,-3374,-3435,-3489,-3481,-3536,-3578,-3585,-3591,-3564,-3525,-3485,-3498,-3508,-3506,-3513,-3481,-3490,-3477,-3539,
+-3686,-3793,-3787,-3753,-3675,-3526,-3421,-3371,-3380,-3394,-3444,-3409,-3413,-3533,-3542,-3529,-3521,-3576,-3492,-3392,
+-3389,-3365,-3324,-3274,-3253,-3274,-3170,-3122,-3097,-3223,-3433,-3651,-3881,-4053,-4161,-4227,-4267,-4254,-4241,-4224,
+-4201,-4182,-4155,-4131,-4103,-4073,-4033,-3961,-3884,-3815,-3738,-3645,-3521,-3335,-3122,-2955,-2888,-2798,-2712,-2650,
+-2464,-2385,-2280,-2206,-2203,-2187,-2196,-2190,-2182,-2154,-2113,-2044,-1959,-1860,-1763,-1678,-1593,-1507,-1415,-1314,
+-1205,-1115,-1022,-940,-859,-762,-665,-561,-444,-338,-210,-106,-7,93,169,241,351,466,526,595,
+689,785,855,927,1003,1083,1169,1232,1298,1392,1468,1551,1639,1728,1808,1889,1963,2038,2103,2172,
+2239,2301,2351,2399,2456,2535,2626,2719,2796,2877,2929,2947,2966,3015,3005,3044,3036,3068,3067,3081,
+3067,3019,2969,2879,2731,2560,2476,2510,2603,2690,2773,2924,3045,3173,3324,3332,3383,3428,3457,3486,
+3523,3563,3613,3660,3693,3718,3753,3785,3820,3825,3844,3875,3904,3929,3976,4103,4156,4219,4211,4243,
+4232,4177,4127,3965,3707,3426,3216,3052,2820,2505,2178,1911,1982,2289,2590,2819,2950,2994,3014,3013,
+3003,2993,2974,2927,2877,2812,2766,2702,2627,2559,2501,2450,2398,2341,2285,2228,2169,2116,2065,2022,
+1980,1940,1887,1823,1771,1725,1680,1631,1587,1546,1505,1465,1422,1383,1353,1319,1266,1213,1161,1121,
+1125,1081,1025,982,943,905,865,817,783,757,735,671,625,598,564,507,457,430,420,395,
+363,331,294,256,210,158,105,57,20,-15,-51,-88,-124,-145,-172,-203,-234,-256,-273,-295,
+-322,-363,-407,-452,-486,-511,-536,-568,-595,-616,-623,-630,-628,-632,-647,-664,-669,-677,-684,-686,
+-685,-682,-684,-689,-697,-685,-684,-685,-675,-688,-716,-753,-760,-738,-691,-630,-560,-635,-669,-680,
+-689,-690,-686,-678,-684,-688,-694,-696,-695,-688,-693,-701,-707,-703,-671,-607,-543,-512,-547,-631,
+-698,-719,-757,-801,-821,-828,-822,-811,-809,-802,-791,-781,-771,-767,-760,-748,-735,-722,-716,-712,
+-717,-716,-708,-687,-623,-506,-570,-629,-637,-620,-581,-570,-576,-565,-552,-546,-536,-530,-525,-522,
+-522,-528,-536,-542,-539,-535,-541,-551,-563,-567,-561,-554,-540,-539,-539,-547,-548,-551,-554,-554,
+-562,-573,-591,-610,-632,-639,-649,-661,-662,-664,-669,-676,-682,-699,-727,-746,-761,-776,-804,-826,
+-847,-867,-881,-896,-919,-947,-975,-996,-1020,-1039,-1057,-1081,-1103,-1126,-1146,-1162,-1181,-1195,-1202,-1211,
+-1220,-1224,-1229,-1234,-1238,-1249,-1267,-1281,-1297,-1312,-1325,-1335,-1356,-1382,-1412,-1437,-1455,-1482,-1508,-1530,
+-1560,-1588,-1603,-1618,-1641,-1655,-1670,-1659,-1684,-1720,-1749,-1771,-1799,-1835,-1866,-1900,-1937,-1976,-2020,-2063,
+-2102,-2134,-2173,-2207,-2244,-2271,-2302,-2337,-2368,-2396,-2425,-2457,-2492,-2529,-2571,-2603,-2637,-2669,-2702,-2735,
+-2770,-2795,-2830,-2868,-2900,-2924,-2954,-2991,-3019,-3039,-3079,-3114,-3142,-3152,-3193,-3231,-3252,-3283,-3316,-3354,
+-3393,-3431,-3458,-3485,-3514,-3551,-3584,-3610,-3639,-3661,-3693,-3723,-3748,-3774,-3815,-3852,-3886,-3920,-3945,-3978,
+-4010,-4035,-4059,-4076,-4100,-4125,-4138,-4159,-4185,-4202,-4208,-4213,-4222,-4225,-4229,-4241,-4259,-4274,-4300,-4311,
+-4315,-4328,-4330,-4339,-4346,-4319,-4340,-4336,-4326,-4323,-4333,-4340,-4341,-4328,-4316,-4301,-4288,-4280,-4275,-4273,
+-4246,-4246,-4222,-4205,-4194,-4171,-4149,-4140,-4112,-4093,-4066,-4024,-4041,-4018,-4045,-4033,-3943,-3813,-3695,-3547,
+-3437,-3463,-3511,-3591,-3632,-3643,-3627,-3597,-3569,-3532,-3481,-3401,-3354,-3295,-3242,-3201,-3184,-3167,-3111,-3055,
+-3068,-2996,-2990,-2916,-2908,-2786,-2674,-2587,-2539,-2542,-2534,-2553,-2542,-2523,-2505,-2466,-2461,-2451,-2439,-2407,
+-2367,-2388,-2397,-2338,-2287,-2270,-2227,-2230,-2264,-2266,-2294,-2329,-2365,-2402,-2415,-2416,-2412,-2397,-2367,-2336,
+-2321,-2322,-2313,-2296,-2310,-2355,-2411,-2483,-2582,-2665,-2716,-2727,-2723,-2759,-2799,-2823,-2845,-2858,-2862,-2855,
+-2847,-2844,-2851,-2855,-2857,-2855,-2847,-2840,-2831,-2828,-2821,-2817,-2807,-2799,-2794,-2787,-2779,-2771,-2759,-2748,
+-2742,-2743,-2745,-2752,-2761,-2775,-2790,-2797,-2800,-2799,-2798,-2803,-2804,-2798,-2785,-2774,-2791,-2826,-2865,-2883,
+-2886,-2884,-2869,-2848,-2874,-2879,-2896,-2914,-2923,-2926,-2932,-2952,-2940,-2933,-2940,-2963,-2993,-2997,-3005,-3062,
+-3146,-3238,-3335,-3430,-3522,-3610,-3689,-3765,-3838,-3894,-3936,-3976,-4031,-4120,-4250,-4378,-4504,-4665,-4663,-4609,
+-4587,-4584,-4596,-4618,-4652,-4683,-4719,-4781,-4872,-4944,-5005,-5059,-5105,-5140,-5167,-5182,-5192,-5197,-5195,-5188,
+-5178,-5163,-5144,-5116,-5085,-5054,-5013,-4966,-4914,-4859,-4806,-4757,-4708,-4651,-4623,-4604,-4583,-4564,-4539,-4516,
+-4488,-4462,-4438,-4401,-4365,-4332,-4297,-4263,-4221,-4216,-4196,-4183,-4175,-4155,-4144,-4133,-4114,-4103,-4098,-4090,
+-4081,-4063,-4035,-4004,-3967,-3933,-3901,-3866,-3824,-3787,-3744,-3702,-3670,-3629,-3586,-3550,-3509,-3459,-3410,-3361,
+-3304,-3237,-3183,-3119,-3055,-2998,-2928,-2877,-2801,-2740,-2678,-2616,-2529,-2433,-2361,-2269,-2178,-2075,-2006,-1924,
+-1834,-1750,-1654,-1557,-1470,-1379,-1281,-1185,-1093,-999,-918,-827,-731,-641,-540,-447,-347,-241,-127,-33,
+67,149,252,353,446,538,639,727,807,870,926,1058,1125,1147,1215,1280,1359,1428,1480,1539,
+1609,1656,1712,1754,1798,1831,1861,1917,1971,2039,2096,2134,2163,2187,2228,2275,2314,2350,2384,2434,
+2473,2501,2532,2562,2599,2634,2663,2692,2729,2759,2809,2844,2861,2893,2924,2943,2963,2973,2989,2993,
+3013,3022,3031,3064,3116,3261,3513,3698,3508,3220,3073,3020,3023,3036,3059,3061,3064,3061,3050,3035,
+3022,3006,2997,2990,2988,2989,2995,3008,3041,3066,3093,3132,3164,3200,3233,3265,3299,3330,3354,3374,
+3389,3403,3427,3449,3473,3499,3520,3537,3566,3600,3622,3650,3676,3715,3758,3814,3904,4047,3984,3955,
+3955,3975,4010,4021,4046,4093,4161,4229,4296,4491,4626,4490,4298,4191,4106,4024,3963,3967,4016,4099,
+4214,4354,4462,4557,4676,4830,4933,4992,4961,4954,4910,4854,4827,4809,4804,4786,4775,4768,4741,4734,
+4707,4648,4564,4488,4435,4398,4355,4298,4235,4163,4091,4015,3954,3898,3839,3775,3733,3688,3638,3580,
+3511,3440,3308,3227,3150,3080,3020,2977,2946,2927,2908,2915,2924,2932,2935,2915,2877,2842,2817,2784,
+2751,2720,2712,2722,2720,2718,2711,2680,2657,2662,2668,2670,2664,2651,2640,2632,2639,2646,2668,2714,
+2770,2809,2837,2850,2881,2909,2938,2976,3011,3033,3045,3069,3082,3100,3139,3157,3153,3132,3103,3062,
+3039,3015,2994,2966,2955,2963,2959,2957,2933,2919,2904,2897,2886,2874,2857,2838,2799,2731,2681,2651,
+2629,2602,2587,2561,2526,2475,2433,2380,2340,2327,2306,2293,2281,2277,2270,2272,2276,2266,2239,2196,
+2150,2109,2078,2042,2024,2023,2011,1972,1869,1768,1708,1678,1648,1627,1601,1595,1598,1598,1609,1629,
+1629,1622,1627,1604,1565,1526,1526,1546,1624,1670,1655,1630,1580,1635,1785,1928,1965,1933,1826,1770,
+1751,1802,1774,1863,1925,1923,1853,1795,1732,1670,1621,1596,1573,1540,1484,1416,1351,1293,1259,1224,
+1162,1106,1062,1006,947,873,789,707,623,559,516,459,388,310,237,192,152,88,1,-80,
+-164,-262,-367,-480,-587,-692,-793,-887,-983,-1084,-1191,-1299,-1380,-1449,-1511,-1583,-1659,-1725,-1784,-1831,
+-1848,-1872,-1892,-1889,-1839,-1720,-1567,-1390,-1211,-1003,-827,-797,-859,-912,-953,-967,-958,-938,-909,-909,
+-863,-781,-755,-734,-692,-635,-529,-460,-473,-558,-605,-611,-691,-903,-1242,-1471,-1577,-1630,-1665,-1677,
+-1689,-1642,-1545,-1548,-1610,-1680,-1833,-1979,-2082,-2153,-2238,-2316,-2367,-2384,-2388,-2371,-2377,-2430,-2514,-2620,
+-2694,-2743,-2834,-2925,-2989,-3001,-2917,-2792,-2782,-2839,-2954,-3204,-3495,-3689,-3777,-3740,-3602,-3481,-3401,-3393,
+-3486,-3675,-3997,-4428,-4725,-4901,-4977,-5002,-5003,-4958,-4866,-4787,-4748,-4718,-4708,-4686,-4675,-4666,-4638,-4636,
+-4668,-4705,-4719,-4736,-4754,-4798,-4847,-4871,-4913,-4949,-4979,-5007,-5035,-5058,-5073,-5037,-4903,-4742,-4581,-4495,
+-4359,-4293,-4244,-4138,-3981,-3719,-3351,-3121,-2864,-2806,-2698,-2445,-2353,-2354,-2393,-2460,-2541,-2613,-2671,-2704,
+-2694,-2728,-2819,-2845,-2896,-2959,-2987,-3030,-3040,-3043,-3068,-3034,-3027,-3093,-3151,-3206,-3259,-3277,-3320,-3343,
+-3327,-3359,-3390,-3449,-3440,-3446,-3489,-3506,-3473,-3477,-3459,-3444,-3406,-3372,-3336,-3356,-3345,-3360,-3368,-3380,
+-3378,-3517,-3695,-3878,-3804,-3685,-3582,-3472,-3346,-3275,-3212,-3291,-3389,-3365,-3398,-3510,-3477,-3490,-3534,-3407,
+-3368,-3386,-3342,-3312,-3279,-3218,-3249,-3147,-3102,-3062,-3232,-3489,-3652,-3827,-3942,-4076,-4187,-4243,-4234,-4216,
+-4174,-4167,-4148,-4104,-4058,-4023,-4010,-3980,-3946,-3879,-3794,-3686,-3544,-3377,-3212,-3070,-3018,-2916,-2845,-2748,
+-2659,-2518,-2437,-2336,-2250,-2198,-2190,-2162,-2165,-2144,-2109,-2080,-2017,-1930,-1826,-1734,-1654,-1564,-1478,-1376,
+-1264,-1172,-1086,-997,-896,-817,-726,-639,-533,-421,-308,-216,-112,14,101,187,290,357,457,540,
+636,736,830,886,990,1055,1147,1207,1245,1332,1405,1489,1576,1665,1748,1835,1916,1982,2042,2116,
+2197,2269,2325,2370,2424,2488,2576,2667,2752,2828,2880,2917,2947,2963,2995,3004,3033,3051,3064,3063,
+3060,3000,2947,2894,2769,2543,2409,2401,2494,2569,2648,2769,2937,3083,3176,3333,3390,3436,3451,3476,
+3502,3531,3565,3611,3666,3703,3733,3770,3784,3809,3844,3870,3897,3924,3954,3988,4042,4161,4192,4203,
+4245,4225,4202,4157,3971,3694,3406,3215,3109,2931,2633,2249,1977,1973,2243,2548,2787,2938,3004,3032,
+3047,3049,3047,3035,2995,2945,2871,2810,2756,2683,2610,2545,2490,2431,2371,2315,2259,2202,2157,2116,
+2077,2035,1991,1941,1883,1831,1785,1739,1692,1634,1581,1540,1498,1459,1436,1444,1445,1362,1256,1185,
+1142,1116,1087,1052,1013,972,920,864,822,797,768,739,706,673,633,581,523,468,430,417,
+401,377,345,319,282,236,187,145,100,64,33,0,-32,-63,-96,-123,-158,-191,-212,-236,
+-262,-300,-345,-391,-427,-446,-467,-498,-526,-557,-581,-590,-588,-587,-599,-618,-641,-649,-654,-660,
+-659,-659,-658,-660,-668,-668,-602,-657,-661,-671,-705,-727,-734,-725,-690,-600,-564,-626,-669,-664,
+-649,-632,-641,-650,-655,-657,-663,-669,-670,-671,-673,-685,-694,-700,-692,-667,-628,-542,-383,-372,
+-514,-636,-679,-715,-747,-757,-712,-780,-795,-796,-794,-781,-769,-759,-742,-732,-718,-703,-690,-683,
+-679,-682,-679,-671,-644,-566,-384,-504,-572,-578,-559,-534,-516,-487,-478,-479,-474,-463,-462,-455,
+-448,-441,-446,-450,-452,-453,-453,-462,-474,-482,-485,-481,-474,-465,-461,-464,-470,-479,-483,-492,
+-499,-510,-523,-534,-556,-575,-586,-570,-535,-557,-599,-617,-621,-623,-640,-663,-694,-723,-740,-765,
+-785,-803,-820,-836,-854,-876,-904,-930,-949,-971,-992,-1017,-1039,-1061,-1081,-1102,-1119,-1139,-1157,-1171,
+-1184,-1191,-1203,-1211,-1216,-1226,-1243,-1261,-1282,-1306,-1322,-1337,-1345,-1357,-1395,-1428,-1423,-1427,-1451,-1470,
+-1499,-1523,-1527,-1536,-1558,-1576,-1587,-1576,-1610,-1653,-1695,-1721,-1757,-1786,-1812,-1843,-1874,-1904,-1938,-1981,
+-2016,-2063,-2100,-2133,-2172,-2207,-2240,-2275,-2307,-2343,-2373,-2404,-2438,-2474,-2513,-2553,-2588,-2624,-2656,-2686,
+-2717,-2754,-2786,-2817,-2851,-2884,-2914,-2944,-2973,-3007,-3040,-3071,-3100,-3122,-3152,-3185,-3225,-3260,-3285,-3316,
+-3341,-3368,-3388,-3410,-3456,-3494,-3521,-3551,-3601,-3632,-3645,-3675,-3705,-3733,-3771,-3819,-3858,-3892,-3914,-3946,
+-3980,-4014,-4037,-4059,-4083,-4113,-4136,-4153,-4173,-4198,-4217,-4233,-4239,-4246,-4250,-4246,-4257,-4283,-4304,-4321,
+-4334,-4345,-4346,-4349,-4354,-4362,-4364,-4357,-4349,-4345,-4344,-4356,-4356,-4346,-4340,-4332,-4315,-4304,-4306,-4299,
+-4292,-4262,-4249,-4213,-4203,-4195,-4175,-4158,-4159,-4149,-4137,-4111,-4084,-4073,-4043,-4004,-4029,-4003,-3908,-3775,
+-3661,-3525,-3444,-3494,-3543,-3593,-3640,-3640,-3606,-3583,-3560,-3517,-3444,-3395,-3348,-3294,-3269,-3220,-3196,-3167,
+-3130,-3079,-3022,-3012,-2972,-2927,-2819,-2675,-2596,-2519,-2508,-2491,-2512,-2487,-2479,-2484,-2437,-2434,-2444,-2435,
+-2395,-2349,-2378,-2396,-2413,-2318,-2284,-2262,-2242,-2264,-2289,-2291,-2305,-2325,-2359,-2372,-2366,-2368,-2368,-2364,
+-2347,-2338,-2354,-2354,-2365,-2393,-2442,-2504,-2588,-2655,-2703,-2733,-2733,-2752,-2794,-2816,-2829,-2843,-2852,-2851,
+-2844,-2836,-2837,-2837,-2835,-2835,-2826,-2807,-2785,-2771,-2757,-2743,-2738,-2729,-2718,-2715,-2706,-2701,-2698,-2691,
+-2685,-2679,-2670,-2668,-2666,-2671,-2684,-2689,-2692,-2701,-2708,-2718,-2732,-2746,-2745,-2748,-2761,-2762,-2766,-2807,
+-2837,-2848,-2847,-2838,-2846,-2873,-2890,-2900,-2912,-2900,-2915,-2932,-2929,-2928,-2931,-2957,-2992,-3011,-3011,-3003,
+-3051,-3150,-3260,-3332,-3414,-3502,-3589,-3665,-3738,-3797,-3852,-3895,-3944,-4000,-4082,-4224,-4461,-4637,-4688,-4663,
+-4619,-4585,-4581,-4594,-4622,-4654,-4679,-4701,-4735,-4800,-4889,-4957,-5022,-5082,-5122,-5153,-5178,-5191,-5197,-5198,
+-5195,-5187,-5173,-5155,-5130,-5100,-5070,-5030,-4984,-4929,-4877,-4828,-4773,-4734,-4700,-4655,-4626,-4594,-4579,-4574,
+-4553,-4519,-4491,-4464,-4437,-4406,-4373,-4347,-4313,-4287,-4257,-4240,-4254,-4230,-4205,-4191,-4191,-4175,-4162,-4162,
+-4145,-4126,-4113,-4083,-4061,-4026,-3990,-3942,-3905,-3871,-3835,-3796,-3749,-3716,-3677,-3630,-3589,-3549,-3508,-3455,
+-3403,-3345,-3282,-3223,-3164,-3102,-3038,-2990,-2917,-2851,-2791,-2723,-2632,-2533,-2470,-2402,-2322,-2238,-2142,-2052,
+-1979,-1883,-1791,-1702,-1607,-1518,-1416,-1331,-1232,-1141,-1041,-967,-874,-770,-665,-562,-476,-391,-278,-181,
+-88,-4,93,182,273,395,481,608,707,803,877,935,1046,1113,1147,1201,1249,1294,1337,1357,
+1413,1476,1533,1590,1646,1717,1753,1805,1866,1883,1901,1954,2018,2076,2114,2148,2187,2227,2263,2302,
+2343,2390,2426,2458,2495,2529,2566,2615,2641,2692,2734,2764,2794,2819,2855,2887,2925,2931,2940,2959,
+2967,2980,2987,2998,3026,3114,3250,3394,3591,3411,3158,3018,2966,2957,2979,2997,3010,3009,3005,2993,
+2991,2999,2993,2986,2983,2977,2969,2988,2988,3014,3035,3065,3095,3132,3166,3204,3234,3269,3305,3331,
+3325,3347,3372,3395,3418,3445,3470,3490,3518,3556,3596,3624,3649,3678,3708,3730,3764,3805,3829,3833,
+3833,3840,3859,3885,3917,3960,4021,4120,4240,4328,4411,4421,4323,4201,4115,4037,3977,3960,3998,4071,
+4189,4327,4404,4494,4552,4672,4780,4842,4787,4742,4661,4628,4604,4588,4581,4566,4546,4540,4548,4558,
+4558,4542,4502,4449,4402,4367,4337,4290,4225,4160,4085,4018,3946,3872,3816,3749,3688,3633,3578,3530,
+3467,3392,3308,3184,3108,3036,2971,2915,2885,2868,2867,2871,2874,2887,2912,2921,2904,2874,2848,2827,
+2789,2757,2727,2724,2751,2747,2739,2732,2702,2683,2685,2692,2697,2690,2677,2662,2657,2666,2664,2697,
+2744,2798,2845,2874,2883,2897,2912,2938,2966,2989,3009,3030,3057,3079,3104,3133,3149,3148,3135,3119,
+3098,3072,3041,3018,3011,2994,2978,2973,2986,2962,2941,2923,2892,2872,2888,2869,2833,2788,2745,2682,
+2631,2611,2574,2552,2525,2501,2459,2423,2365,2316,2306,2297,2300,2301,2315,2320,2318,2297,2258,2202,
+2153,2102,2069,2033,1986,1971,1937,1925,1902,1791,1700,1645,1612,1592,1584,1582,1585,1596,1592,1594,
+1619,1633,1625,1603,1541,1482,1476,1506,1552,1643,1730,1759,1738,1593,1615,1776,1976,2044,2014,1882,
+1756,1726,1721,1695,1862,1910,1913,1816,1743,1663,1603,1589,1580,1541,1486,1445,1394,1330,1277,1252,
+1220,1163,1087,1033,995,952,886,811,732,667,593,536,483,415,332,252,198,157,95,9,
+-76,-153,-245,-341,-441,-543,-651,-755,-851,-949,-1052,-1150,-1255,-1347,-1422,-1495,-1582,-1670,-1753,-1820,
+-1864,-1902,-1943,-1976,-1998,-1988,-1936,-1832,-1671,-1459,-1289,-1062,-962,-986,-1042,-1060,-1088,-1078,-1054,-1050,
+-988,-940,-869,-791,-796,-791,-688,-550,-426,-382,-373,-434,-496,-688,-895,-1119,-1327,-1484,-1580,-1658,
+-1724,-1765,-1730,-1555,-1535,-1579,-1661,-1742,-1865,-2049,-2118,-2176,-2257,-2295,-2305,-2314,-2306,-2300,-2354,-2459,
+-2557,-2672,-2813,-2907,-2978,-3031,-3028,-2928,-2795,-2787,-2865,-3052,-3352,-3698,-3912,-3996,-3948,-3790,-3639,-3560,
+-3538,-3654,-3867,-4224,-4574,-4822,-4966,-5020,-5023,-5001,-4956,-4866,-4795,-4767,-4738,-4721,-4712,-4720,-4704,-4676,
+-4686,-4704,-4719,-4725,-4739,-4771,-4811,-4855,-4887,-4932,-4977,-5023,-5069,-5117,-5164,-5207,-5237,-5231,-5189,-5091,
+-4920,-4754,-4667,-4673,-4583,-4400,-4133,-3851,-3525,-3195,-3051,-2799,-2597,-2415,-2365,-2434,-2470,-2470,-2546,-2670,
+-2717,-2743,-2768,-2829,-2831,-2866,-2927,-2955,-2982,-3008,-3048,-3065,-3066,-3078,-3136,-3199,-3244,-3244,-3294,-3352,
+-3364,-3365,-3340,-3401,-3445,-3372,-3401,-3444,-3383,-3332,-3343,-3336,-3352,-3309,-3257,-3244,-3228,-3187,-3175,-3186,
+-3238,-3377,-3478,-3632,-3932,-3983,-3752,-3550,-3434,-3320,-3256,-3199,-3225,-3305,-3341,-3311,-3400,-3444,-3435,-3476,
+-3412,-3404,-3378,-3326,-3268,-3250,-3218,-3210,-3155,-3087,-3068,-3225,-3493,-3619,-3655,-3722,-3858,-4104,-4200,-4222,
+-4203,-4182,-4169,-4132,-4081,-4036,-3997,-3969,-3948,-3910,-3833,-3697,-3551,-3411,-3213,-3187,-3117,-3049,-2955,-2841,
+-2793,-2690,-2557,-2480,-2372,-2255,-2195,-2148,-2129,-2123,-2092,-2056,-2017,-1975,-1907,-1803,-1708,-1635,-1532,-1463,
+-1342,-1244,-1148,-1036,-941,-863,-782,-672,-608,-504,-400,-283,-195,-89,42,153,264,337,389,481,
+570,650,769,833,938,1045,1086,1162,1245,1270,1345,1416,1515,1610,1702,1784,1858,1926,1993,2063,
+2139,2213,2277,2328,2382,2453,2529,2619,2714,2784,2851,2892,2927,2949,2961,2989,3020,3041,3058,3061,
+3034,2983,2901,2846,2766,2589,2391,2316,2396,2504,2574,2660,2804,2981,3163,3210,3323,3425,3483,3494,
+3502,3522,3546,3572,3618,3665,3714,3750,3773,3808,3842,3870,3875,3919,3945,3974,4007,4047,4147,4189,
+4208,4234,4244,4215,4142,3992,3749,3441,3278,3242,3156,2907,2526,2161,2034,2223,2512,2751,2917,3008,
+3051,3079,3089,3096,3088,3059,2994,2940,2855,2800,2738,2663,2591,2525,2464,2404,2348,2291,2238,2193,
+2162,2125,2086,2041,1993,1944,1892,1841,1795,1741,1685,1628,1584,1543,1509,1490,1564,1710,1474,1298,
+1211,1163,1127,1102,1078,1044,996,937,878,843,825,810,782,758,724,672,603,529,473,440,
+423,402,376,355,333,308,278,237,197,159,123,92,64,28,-5,-41,-74,-108,-140,-167,
+-202,-239,-280,-319,-354,-379,-397,-420,-448,-484,-516,-535,-548,-552,-561,-576,-595,-614,-634,-634,
+-639,-642,-643,-641,-640,-648,-656,-638,-656,-684,-697,-698,-700,-698,-691,-629,-531,-567,-660,-662,
+-636,-596,-523,-598,-634,-634,-630,-638,-643,-641,-644,-647,-656,-658,-656,-650,-641,-631,-597,-533,
+-492,-539,-610,-636,-650,-665,-654,-662,-687,-719,-729,-746,-751,-749,-739,-719,-704,-685,-665,-652,
+-643,-645,-647,-647,-639,-608,-538,-467,-501,-527,-518,-492,-463,-438,-398,-404,-404,-406,-399,-398,
+-394,-385,-375,-372,-377,-373,-370,-371,-377,-389,-399,-404,-403,-400,-393,-389,-387,-391,-403,-413,
+-424,-435,-448,-459,-476,-493,-507,-524,-510,-448,-453,-531,-569,-571,-557,-565,-596,-626,-659,-687,
+-710,-731,-749,-767,-785,-801,-828,-858,-883,-910,-941,-971,-997,-1016,-1043,-1065,-1086,-1111,-1123,-1140,
+-1149,-1160,-1170,-1179,-1189,-1202,-1217,-1233,-1252,-1275,-1294,-1311,-1331,-1334,-1337,-1352,-1373,-1376,-1386,-1400,
+-1414,-1435,-1454,-1479,-1513,-1541,-1574,-1588,-1588,-1619,-1654,-1677,-1655,-1735,-1730,-1801,-1836,-1861,-1881,-1908,
+-1942,-1982,-2017,-2056,-2098,-2136,-2173,-2210,-2246,-2283,-2319,-2352,-2389,-2424,-2465,-2504,-2541,-2574,-2609,-2641,
+-2673,-2702,-2731,-2760,-2790,-2823,-2858,-2891,-2927,-2959,-2992,-3025,-3044,-3049,-3070,-3108,-3147,-3181,-3225,-3273,
+-3292,-3317,-3360,-3385,-3410,-3442,-3496,-3533,-3573,-3595,-3616,-3634,-3664,-3699,-3733,-3780,-3815,-3860,-3897,-3924,
+-3948,-3982,-4012,-4037,-4055,-4087,-4120,-4150,-4167,-4188,-4211,-4232,-4238,-4244,-4248,-4253,-4262,-4279,-4303,-4324,
+-4342,-4352,-4360,-4368,-4373,-4378,-4375,-4376,-4371,-4373,-4370,-4370,-4373,-4372,-4366,-4359,-4348,-4336,-4331,-4336,
+-4322,-4302,-4280,-4257,-4245,-4235,-4214,-4191,-4176,-4163,-4164,-4168,-4144,-4112,-4055,-4086,-4019,-3962,-4027,-3979,
+-3886,-3786,-3681,-3550,-3504,-3478,-3538,-3567,-3634,-3602,-3593,-3582,-3534,-3499,-3440,-3394,-3372,-3325,-3268,-3229,
+-3207,-3169,-3116,-3053,-3043,-3016,-2939,-2867,-2762,-2608,-2543,-2497,-2481,-2479,-2459,-2450,-2404,-2420,-2424,-2457,
+-2443,-2377,-2354,-2406,-2396,-2405,-2373,-2281,-2263,-2259,-2250,-2243,-2267,-2247,-2255,-2301,-2328,-2350,-2371,-2375,
+-2378,-2369,-2361,-2374,-2398,-2428,-2469,-2515,-2580,-2646,-2700,-2721,-2730,-2754,-2794,-2821,-2826,-2835,-2836,-2839,
+-2832,-2824,-2818,-2809,-2803,-2797,-2784,-2757,-2730,-2704,-2684,-2669,-2661,-2660,-2655,-2654,-2653,-2648,-2646,-2641,
+-2635,-2628,-2612,-2595,-2578,-2569,-2568,-2584,-2605,-2628,-2649,-2669,-2694,-2720,-2751,-2759,-2749,-2744,-2741,-2742,
+-2766,-2800,-2824,-2836,-2838,-2859,-2875,-2879,-2888,-2896,-2903,-2908,-2904,-2917,-2926,-2940,-2971,-2993,-3001,-3011,
+-3018,-3052,-3143,-3265,-3339,-3402,-3475,-3553,-3631,-3697,-3748,-3801,-3857,-3920,-3987,-4094,-4375,-4610,-4668,-4667,
+-4644,-4614,-4586,-4575,-4592,-4622,-4656,-4686,-4708,-4727,-4758,-4833,-4915,-4994,-5057,-5104,-5142,-5168,-5181,-5193,
+-5198,-5196,-5188,-5179,-5162,-5137,-5105,-5076,-5041,-4998,-4940,-4894,-4858,-4813,-4766,-4725,-4688,-4672,-4639,-4609,
+-4581,-4575,-4548,-4521,-4490,-4470,-4453,-4435,-4398,-4368,-4345,-4333,-4308,-4284,-4292,-4293,-4273,-4253,-4234,-4220,
+-4217,-4195,-4188,-4163,-4144,-4114,-4076,-4039,-3996,-3959,-3926,-3888,-3852,-3808,-3761,-3721,-3679,-3645,-3601,-3555,
+-3513,-3447,-3388,-3334,-3280,-3217,-3162,-3104,-3034,-2954,-2891,-2823,-2755,-2676,-2609,-2529,-2431,-2337,-2243,-2153,
+-2077,-2011,-1936,-1838,-1750,-1663,-1567,-1464,-1363,-1273,-1180,-1080,-998,-910,-820,-724,-628,-510,-424,-321,
+-230,-123,-42,48,157,238,328,431,533,642,749,811,886,966,1004,1055,1119,1157,1235,1285,
+1336,1390,1448,1486,1534,1559,1596,1631,1684,1742,1807,1859,1908,1933,1971,2014,2057,2107,2151,2195,
+2232,2278,2302,2349,2395,2434,2479,2523,2553,2595,2638,2679,2710,2729,2767,2822,2840,2853,2852,2864,
+2894,2918,2926,2937,2949,2977,3052,3162,3176,3210,3141,3013,2937,2908,2899,2900,2919,2943,2968,2961,
+2959,2951,2938,2936,2946,2945,2951,2948,2960,2961,2976,3003,3041,3071,3098,3130,3166,3200,3236,3265,
+3286,3295,3297,3321,3349,3382,3412,3442,3477,3521,3569,3618,3653,3673,3690,3700,3706,3721,3724,3728,
+3730,3730,3737,3760,3799,3848,3913,4016,4203,4437,4514,4357,4266,4182,4113,4046,4006,3991,4002,4048,
+4161,4279,4334,4402,4500,4544,4648,4661,4613,4538,4458,4388,4344,4334,4343,4359,4366,4366,4365,4375,
+4389,4383,4371,4355,4335,4312,4292,4266,4215,4145,4072,4004,3938,3872,3811,3762,3695,3604,3532,3467,
+3414,3348,3268,3184,3094,3021,2961,2905,2856,2827,2817,2821,2827,2842,2876,2899,2909,2900,2881,2862,
+2836,2813,2783,2750,2745,2777,2786,2767,2753,2717,2694,2696,2706,2718,2714,2697,2676,2691,2713,2719,
+2761,2799,2842,2883,2903,2907,2913,2932,2952,2971,2986,3005,3026,3048,3075,3104,3125,3138,3137,3132,
+3120,3113,3106,3081,3060,3046,3037,3006,2979,2975,2960,2942,2912,2889,2867,2884,2880,2819,2751,2696,
+2656,2605,2576,2555,2513,2491,2479,2444,2427,2379,2314,2286,2282,2301,2317,2332,2335,2324,2277,2233,
+2165,2111,2069,2038,1983,1920,1892,1835,1812,1804,1728,1652,1607,1574,1550,1537,1542,1559,1576,1568,
+1581,1613,1627,1615,1546,1470,1457,1470,1495,1552,1645,1727,1789,1777,1662,1607,1729,1933,2047,2036,
+1930,1754,1645,1527,1642,1851,1977,1974,1794,1712,1631,1581,1549,1537,1481,1428,1389,1358,1303,1262,
+1230,1215,1183,1105,1041,994,947,890,830,767,709,635,573,510,447,357,259,197,164,103,
+21,-54,-137,-231,-318,-407,-509,-618,-724,-820,-919,-1025,-1122,-1220,-1322,-1410,-1488,-1591,-1685,-1774,
+-1844,-1892,-1943,-1997,-2041,-2078,-2099,-2086,-2023,-1860,-1613,-1472,-1349,-1135,-1087,-1124,-1165,-1167,-1164,-1191,
+-1191,-1163,-1073,-1038,-955,-882,-797,-744,-693,-559,-491,-457,-495,-481,-601,-833,-1100,-1243,-1408,-1542,
+-1664,-1759,-1800,-1771,-1653,-1587,-1599,-1661,-1729,-1869,-1975,-2077,-2141,-2201,-2228,-2223,-2298,-2333,-2348,-2377,
+-2464,-2576,-2711,-2821,-2883,-2930,-2995,-3011,-2898,-2801,-2822,-2936,-3165,-3474,-3856,-4029,-4094,-4050,-3894,-3773,
+-3711,-3714,-3840,-4062,-4390,-4673,-4884,-5030,-5074,-5066,-5035,-4966,-4871,-4804,-4775,-4756,-4737,-4731,-4737,-4727,
+-4715,-4732,-4734,-4727,-4732,-4738,-4784,-4835,-4867,-4908,-4953,-5007,-5066,-5122,-5180,-5247,-5307,-5367,-5412,-5452,
+-5460,-5396,-5266,-5125,-5084,-4978,-4729,-4585,-4333,-3998,-3636,-3433,-3155,-2919,-2690,-2581,-2599,-2614,-2571,-2602,
+-2728,-2704,-2717,-2758,-2801,-2839,-2864,-2894,-2961,-2998,-3035,-3063,-3049,-3088,-3118,-3171,-3237,-3269,-3297,-3367,
+-3401,-3401,-3371,-3358,-3401,-3394,-3363,-3386,-3396,-3367,-3347,-3341,-3307,-3275,-3250,-3200,-3147,-3110,-3117,-3089,
+-3153,-3248,-3352,-3544,-3874,-4077,-3907,-3764,-3651,-3527,-3390,-3299,-3198,-3262,-3265,-3285,-3361,-3320,-3391,-3417,
+-3447,-3422,-3396,-3361,-3324,-3255,-3214,-3194,-3204,-3101,-3057,-3030,-3195,-3494,-3608,-3668,-3715,-3829,-3986,-4136,
+-4214,-4227,-4212,-4174,-4136,-4083,-4039,-3991,-3956,-3915,-3845,-3726,-3576,-3432,-3273,-3216,-3150,-3110,-3027,-2933,
+-2843,-2787,-2646,-2549,-2445,-2341,-2235,-2157,-2096,-2095,-2073,-2032,-2006,-1959,-1913,-1861,-1769,-1682,-1589,-1528,
+-1431,-1292,-1194,-1123,-1019,-920,-838,-751,-660,-562,-464,-361,-265,-172,-81,15,145,270,365,482,
+534,601,682,776,846,946,1063,1166,1220,1273,1298,1363,1444,1545,1648,1733,1820,1888,1946,2010,
+2082,2153,2226,2296,2350,2413,2494,2572,2665,2750,2821,2879,2916,2947,2951,2968,2997,3025,3045,3060,
+3047,3013,2925,2809,2714,2563,2400,2302,2344,2464,2562,2632,2735,2872,3029,3179,3236,3330,3430,3548,
+3559,3554,3550,3565,3586,3626,3671,3718,3758,3795,3815,3852,3875,3898,3938,3967,3992,4025,4106,4203,
+4206,4214,4235,4266,4242,4133,4026,3847,3539,3377,3382,3424,3289,2919,2501,2191,2246,2504,2735,2909,
+3024,3083,3114,3127,3135,3126,3101,3041,2990,2920,2837,2780,2713,2638,2563,2496,2438,2387,2330,2277,
+2235,2204,2171,2134,2094,2043,2000,1956,1901,1845,1786,1733,1682,1639,1598,1559,1523,1521,1518,1410,
+1297,1225,1175,1141,1114,1092,1060,1010,948,898,865,849,829,818,796,759,705,630,545,479,
+446,432,413,391,369,349,334,314,289,259,227,191,163,130,92,51,9,-25,-56,-87,
+-126,-170,-221,-266,-291,-304,-323,-345,-371,-400,-439,-470,-490,-504,-519,-537,-559,-574,-592,-607,
+-615,-620,-632,-636,-638,-634,-638,-647,-659,-676,-660,-668,-676,-677,-674,-675,-660,-652,-679,-665,
+-635,-614,-590,-535,-601,-612,-543,-560,-609,-613,-600,-603,-603,-602,-602,-605,-608,-619,-621,-617,
+-605,-600,-598,-596,-565,-521,-520,-528,-516,-516,-559,-590,-635,-693,-711,-703,-683,-658,-631,-609,
+-599,-593,-599,-610,-616,-611,-562,-410,-216,-381,-478,-472,-438,-406,-379,-360,-345,-352,-354,-343,
+-336,-338,-331,-316,-308,-300,-295,-292,-295,-302,-308,-317,-323,-325,-324,-322,-315,-311,-316,-326,
+-337,-346,-360,-373,-385,-397,-409,-423,-438,-452,-461,-473,-487,-514,-519,-505,-506,-531,-544,-570,
+-606,-640,-676,-708,-726,-750,-769,-790,-806,-827,-852,-876,-912,-929,-949,-969,-992,-1014,-1032,-1049,
+-1068,-1087,-1105,-1123,-1145,-1164,-1182,-1202,-1222,-1240,-1252,-1262,-1269,-1287,-1289,-1285,-1290,-1299,-1314,-1339,
+-1358,-1381,-1413,-1437,-1469,-1502,-1535,-1563,-1583,-1599,-1618,-1645,-1672,-1696,-1720,-1741,-1782,-1806,-1836,-1838,
+-1867,-1909,-1948,-1980,-2018,-2062,-2102,-2144,-2174,-2210,-2250,-2279,-2325,-2364,-2402,-2449,-2488,-2523,-2555,-2586,
+-2619,-2650,-2679,-2709,-2741,-2769,-2801,-2833,-2862,-2900,-2935,-2967,-3002,-3038,-3070,-3099,-3128,-3166,-3203,-3225,
+-3252,-3282,-3289,-3318,-3369,-3417,-3458,-3498,-3518,-3541,-3572,-3597,-3625,-3654,-3693,-3740,-3781,-3813,-3851,-3890,
+-3924,-3956,-3989,-4015,-4036,-4069,-4086,-4121,-4150,-4187,-4214,-4230,-4240,-4245,-4236,-4251,-4259,-4279,-4297,-4330,
+-4354,-4362,-4370,-4380,-4388,-4394,-4396,-4395,-4395,-4394,-4395,-4398,-4399,-4400,-4395,-4397,-4391,-4388,-4380,-4378,
+-4368,-4343,-4316,-4291,-4271,-4265,-4257,-4245,-4223,-4197,-4140,-4110,-4198,-4218,-4202,-4171,-4157,-4176,-4100,-4005,
+-4027,-3984,-3878,-3799,-3694,-3586,-3531,-3512,-3502,-3565,-3628,-3600,-3600,-3551,-3507,-3477,-3433,-3407,-3355,-3309,
+-3255,-3230,-3184,-3141,-3071,-3081,-3010,-2953,-2869,-2761,-2658,-2553,-2490,-2479,-2471,-2448,-2427,-2395,-2379,-2423,
+-2455,-2453,-2406,-2392,-2403,-2356,-2325,-2307,-2281,-2295,-2294,-2220,-2253,-2189,-2185,-2180,-2207,-2262,-2317,-2355,
+-2372,-2379,-2371,-2365,-2383,-2402,-2427,-2462,-2503,-2569,-2642,-2679,-2694,-2724,-2788,-2826,-2841,-2839,-2838,-2835,
+-2824,-2809,-2791,-2782,-2779,-2761,-2738,-2714,-2688,-2663,-2642,-2628,-2616,-2614,-2612,-2608,-2608,-2606,-2598,-2594,
+-2585,-2577,-2562,-2544,-2523,-2506,-2501,-2500,-2510,-2546,-2603,-2665,-2733,-2783,-2826,-2830,-2822,-2800,-2782,-2746,
+-2721,-2729,-2757,-2787,-2793,-2813,-2842,-2842,-2837,-2862,-2884,-2892,-2888,-2890,-2908,-2925,-2939,-2967,-2979,-2983,
+-2979,-2997,-3033,-3117,-3228,-3333,-3403,-3463,-3525,-3590,-3651,-3701,-3757,-3819,-3893,-3975,-4092,-4385,-4608,-4646,
+-4635,-4617,-4600,-4586,-4578,-4589,-4625,-4655,-4686,-4714,-4734,-4755,-4800,-4877,-4959,-5026,-5083,-5133,-5161,-5176,
+-5190,-5195,-5194,-5189,-5180,-5167,-5140,-5116,-5088,-5052,-5008,-4961,-4918,-4872,-4806,-4776,-4757,-4716,-4704,-4680,
+-4653,-4625,-4596,-4574,-4551,-4524,-4504,-4492,-4469,-4451,-4421,-4399,-4389,-4370,-4355,-4342,-4331,-4342,-4335,-4322,
+-4308,-4284,-4260,-4240,-4207,-4194,-4164,-4129,-4096,-4058,-4015,-3990,-3942,-3905,-3861,-3813,-3770,-3727,-3683,-3642,
+-3602,-3546,-3494,-3437,-3371,-3322,-3261,-3210,-3155,-3082,-2993,-2930,-2860,-2782,-2717,-2648,-2567,-2485,-2395,-2319,
+-2237,-2152,-2056,-1986,-1879,-1787,-1703,-1603,-1512,-1414,-1324,-1234,-1125,-1043,-946,-855,-740,-658,-554,-464,
+-362,-266,-145,-71,21,100,193,309,423,553,624,668,764,839,903,951,997,1023,1069,1132,
+1215,1259,1295,1350,1403,1463,1499,1556,1583,1603,1640,1685,1721,1771,1825,1870,1921,1967,2015,2054,
+2111,2172,2210,2249,2285,2342,2383,2414,2457,2484,2512,2521,2543,2579,2619,2652,2679,2713,2732,2757,
+2784,2818,2846,2868,2884,2894,2909,2942,2961,2960,2936,2903,2865,2849,2839,2839,2848,2872,2879,2896,
+2901,2916,2917,2910,2907,2905,2901,2901,2906,2917,2936,2948,2967,2994,3026,3059,3094,3128,3165,3204,
+3228,3242,3262,3277,3297,3314,3336,3370,3416,3478,3552,3646,3721,3747,3736,3723,3715,3715,3715,3705,
+3684,3668,3662,3674,3699,3744,3819,3918,4086,4358,4574,4476,4280,4175,4116,4079,4050,4040,4066,4111,
+4151,4218,4258,4301,4342,4421,4468,4473,4455,4374,4282,4212,4162,4136,4129,4144,4184,4200,4208,4208,
+4211,4217,4217,4210,4205,4205,4202,4195,4169,4120,4050,3983,3920,3852,3795,3750,3701,3631,3536,3444,
+3379,3323,3259,3175,3094,3018,2963,2903,2865,2829,2804,2791,2774,2781,2811,2854,2881,2896,2895,2886,
+2874,2865,2854,2825,2784,2763,2788,2809,2792,2771,2725,2698,2697,2709,2738,2748,2715,2694,2734,2752,
+2766,2813,2854,2889,2922,2929,2925,2932,2944,2962,2981,2989,3004,3018,3044,3074,3104,3121,3123,3120,
+3120,3122,3120,3111,3113,3101,3094,3063,3024,2986,2945,2927,2923,2916,2898,2882,2894,2889,2813,2728,
+2667,2636,2592,2559,2541,2503,2477,2461,2415,2381,2345,2293,2257,2252,2280,2295,2306,2295,2276,2231,
+2179,2131,2090,2054,2007,1948,1882,1824,1761,1737,1716,1664,1606,1564,1528,1499,1487,1505,1523,1523,
+1529,1561,1597,1598,1573,1513,1462,1443,1464,1477,1517,1579,1630,1683,1686,1687,1588,1606,1773,1913,
+1929,1857,1675,1569,1427,1698,1855,1931,1873,1756,1702,1600,1547,1517,1501,1439,1391,1361,1343,1303,
+1254,1219,1213,1187,1133,1065,1017,960,890,836,790,746,684,621,551,474,381,277,200,153,
+92,21,-49,-130,-217,-306,-395,-493,-600,-702,-797,-899,-1003,-1108,-1200,-1305,-1398,-1485,-1601,-1698,
+-1784,-1853,-1913,-1981,-2044,-2105,-2160,-2196,-2212,-2180,-2041,-1818,-1660,-1537,-1322,-1244,-1199,-1263,-1315,-1327,
+-1363,-1338,-1307,-1246,-1205,-1177,-1099,-981,-888,-773,-670,-604,-622,-680,-685,-736,-916,-1074,-1289,-1454,
+-1581,-1664,-1775,-1818,-1824,-1726,-1643,-1658,-1676,-1722,-1910,-2030,-2116,-2214,-2310,-2372,-2369,-2459,-2513,-2527,
+-2551,-2600,-2664,-2749,-2811,-2859,-2907,-2957,-2979,-2888,-2812,-2843,-2955,-3264,-3587,-3942,-4094,-4144,-4097,-4007,
+-3902,-3889,-3942,-4061,-4261,-4528,-4734,-4890,-5031,-5092,-5075,-5034,-4963,-4870,-4817,-4785,-4765,-4754,-4747,-4753,
+-4750,-4747,-4754,-4737,-4721,-4731,-4748,-4788,-4852,-4897,-4928,-4984,-5049,-5115,-5172,-5236,-5305,-5385,-5465,-5543,
+-5622,-5677,-5692,-5674,-5640,-5617,-5519,-5295,-5076,-4841,-4586,-4362,-4061,-3736,-3461,-3190,-3142,-3112,-3048,-2959,
+-2957,-2887,-2696,-2697,-2702,-2744,-2797,-2810,-2817,-2849,-2943,-2989,-2960,-2968,-3007,-3043,-3118,-3175,-3170,-3229,
+-3271,-3300,-3319,-3316,-3297,-3282,-3258,-3259,-3250,-3235,-3221,-3199,-3197,-3190,-3158,-3157,-3174,-3141,-3116,-3099,
+-3110,-3187,-3373,-3603,-3891,-4108,-4000,-3964,-3951,-3808,-3578,-3542,-3450,-3313,-3329,-3325,-3264,-3334,-3333,-3373,
+-3401,-3427,-3404,-3400,-3380,-3301,-3253,-3226,-3199,-3151,-3133,-3065,-3016,-3114,-3298,-3415,-3561,-3564,-3661,-3875,
+-4051,-4157,-4211,-4214,-4182,-4136,-4087,-4038,-3990,-3922,-3831,-3730,-3619,-3444,-3281,-3217,-3155,-3103,-3074,-2988,
+-2873,-2839,-2740,-2626,-2515,-2384,-2270,-2167,-2102,-2057,-2047,-2034,-2009,-1966,-1906,-1863,-1805,-1728,-1648,-1534,
+-1458,-1374,-1283,-1181,-1064,-938,-854,-793,-718,-617,-518,-417,-321,-231,-141,-54,57,184,281,381,
+476,547,625,702,774,869,978,1118,1191,1226,1285,1333,1402,1488,1581,1669,1761,1834,1897,1976,
+2044,2109,2175,2248,2321,2384,2456,2537,2622,2711,2784,2852,2907,2948,2967,2972,2993,3018,3049,3056,
+3043,3015,2969,2897,2801,2675,2433,2326,2342,2438,2547,2636,2703,2839,2984,3089,3219,3283,3348,3443,
+3526,3564,3546,3563,3580,3602,3634,3674,3726,3766,3812,3837,3877,3906,3946,3965,3983,4008,4039,4088,
+4210,4239,4228,4257,4268,4247,4199,4072,3853,3616,3527,3558,3696,3673,3391,2940,2479,2323,2485,2726,
+2901,3035,3114,3141,3162,3166,3156,3126,3083,3019,2975,2892,2823,2759,2686,2616,2540,2480,2431,2376,
+2326,2284,2253,2214,2179,2139,2098,2047,2005,1959,1902,1838,1782,1733,1691,1646,1598,1544,1491,1431,
+1354,1287,1236,1191,1152,1122,1098,1063,1019,972,924,883,874,855,846,826,784,721,651,573,
+505,464,447,432,416,397,380,365,357,341,319,293,261,227,189,145,100,59,18,-12,
+-50,-95,-149,-199,-233,-250,-258,-277,-304,-326,-363,-394,-429,-450,-469,-488,-514,-534,-553,-566,
+-579,-584,-597,-614,-620,-631,-635,-641,-657,-676,-659,-587,-639,-670,-670,-666,-659,-668,-677,-663,
+-640,-620,-619,-615,-614,-613,-606,-577,-570,-569,-544,-522,-550,-515,-542,-548,-556,-566,-586,-603,
+-614,-621,-621,-610,-578,-500,-360,-237,-306,-253,-210,-274,-391,-461,-565,-623,-628,-598,-553,-529,
+-520,-515,-520,-533,-558,-574,-578,-537,-395,-250,-393,-453,-438,-401,-361,-336,-321,-304,-296,-298,
+-287,-243,-270,-273,-254,-239,-232,-224,-224,-223,-223,-227,-231,-237,-237,-239,-243,-240,-234,-237,
+-249,-259,-272,-285,-297,-308,-317,-327,-340,-353,-376,-398,-419,-424,-429,-458,-421,-395,-482,-509,
+-535,-562,-579,-604,-630,-653,-675,-701,-723,-741,-753,-776,-807,-837,-861,-889,-913,-936,-965,-994,
+-1013,-1036,-1052,-1072,-1092,-1111,-1127,-1142,-1161,-1170,-1173,-1173,-1180,-1189,-1205,-1223,-1236,-1252,-1265,-1282,
+-1306,-1331,-1359,-1388,-1423,-1454,-1486,-1513,-1537,-1556,-1578,-1599,-1621,-1641,-1665,-1687,-1711,-1739,-1768,-1799,
+-1827,-1860,-1891,-1921,-1954,-1988,-2030,-2070,-2115,-2153,-2187,-2219,-2245,-2290,-2330,-2370,-2417,-2461,-2496,-2528,
+-2559,-2589,-2623,-2649,-2681,-2712,-2740,-2777,-2815,-2856,-2891,-2922,-2953,-2982,-3011,-3044,-3074,-3111,-3152,-3177,
+-3210,-3237,-3270,-3311,-3339,-3373,-3393,-3454,-3487,-3506,-3528,-3557,-3584,-3615,-3648,-3694,-3732,-3776,-3802,-3834,
+-3874,-3916,-3949,-3986,-4020,-4044,-4068,-4090,-4128,-4169,-4197,-4224,-4242,-4248,-4252,-4252,-4264,-4282,-4304,-4330,
+-4356,-4376,-4380,-4383,-4388,-4390,-4396,-4405,-4407,-4409,-4410,-4410,-4416,-4417,-4420,-4416,-4417,-4417,-4420,-4422,
+-4412,-4398,-4372,-4341,-4314,-4300,-4301,-4298,-4269,-4247,-4232,-4166,-4044,-4193,-4204,-4180,-4171,-4183,-4201,-4168,
+-4031,-4050,-4063,-3949,-3841,-3773,-3698,-3618,-3552,-3512,-3542,-3607,-3656,-3616,-3583,-3524,-3473,-3443,-3430,-3389,
+-3350,-3296,-3255,-3196,-3154,-3112,-3070,-3017,-2982,-2852,-2800,-2690,-2588,-2515,-2487,-2483,-2426,-2397,-2380,-2378,
+-2412,-2449,-2456,-2418,-2394,-2389,-2351,-2299,-2240,-2234,-2279,-2281,-2280,-2235,-2192,-2121,-2132,-2145,-2198,-2264,
+-2336,-2362,-2372,-2374,-2377,-2396,-2415,-2434,-2474,-2523,-2578,-2629,-2669,-2718,-2772,-2817,-2847,-2854,-2851,-2841,
+-2821,-2795,-2777,-2765,-2753,-2729,-2706,-2680,-2668,-2664,-2652,-2636,-2620,-2599,-2584,-2568,-2558,-2553,-2548,-2544,
+-2539,-2529,-2517,-2501,-2488,-2471,-2458,-2457,-2470,-2507,-2574,-2678,-2802,-2909,-2967,-2961,-2929,-2905,-2877,-2838,
+-2785,-2733,-2708,-2713,-2736,-2764,-2797,-2808,-2786,-2798,-2834,-2858,-2853,-2858,-2867,-2891,-2905,-2919,-2943,-2951,
+-2944,-2958,-2967,-3001,-3084,-3187,-3313,-3411,-3465,-3505,-3556,-3607,-3656,-3717,-3786,-3865,-3954,-4069,-4344,-4582,
+-4620,-4603,-4588,-4581,-4577,-4580,-4591,-4615,-4647,-4676,-4704,-4732,-4762,-4799,-4860,-4932,-4997,-5060,-5116,-5153,
+-5173,-5190,-5192,-5190,-5186,-5180,-5164,-5146,-5120,-5092,-5060,-5022,-4980,-4947,-4898,-4847,-4817,-4789,-4759,-4728,
+-4709,-4681,-4658,-4639,-4609,-4578,-4564,-4553,-4523,-4505,-4493,-4487,-4477,-4451,-4429,-4427,-4420,-4410,-4401,-4402,
+-4393,-4372,-4359,-4332,-4302,-4272,-4243,-4216,-4186,-4153,-4125,-4081,-4043,-4001,-3958,-3918,-3870,-3825,-3774,-3732,
+-3687,-3644,-3586,-3535,-3479,-3425,-3360,-3306,-3247,-3186,-3108,-3030,-2971,-2899,-2843,-2790,-2712,-2620,-2543,-2448,
+-2363,-2274,-2190,-2101,-2019,-1924,-1822,-1739,-1644,-1552,-1465,-1389,-1285,-1190,-1104,-999,-915,-793,-683,-590,
+-506,-401,-319,-217,-136,-30,79,179,282,367,464,554,601,700,778,819,867,913,966,1028,
+1060,1094,1152,1217,1255,1311,1342,1393,1460,1507,1542,1579,1616,1635,1689,1728,1773,1824,1877,1921,
+1962,2007,2061,2108,2145,2164,2204,2234,2276,2315,2364,2413,2450,2481,2509,2544,2595,2639,2664,2689,
+2721,2747,2775,2808,2826,2843,2845,2833,2824,2822,2813,2799,2777,2773,2777,2789,2787,2791,2812,2823,
+2845,2865,2872,2872,2859,2859,2860,2865,2865,2865,2870,2889,2906,2933,2960,2994,3027,3049,3080,3105,
+3135,3159,3179,3197,3225,3253,3283,3314,3356,3407,3484,3591,3746,3931,3961,3868,3807,3794,3804,3800,
+3768,3708,3660,3635,3637,3667,3736,3857,4014,4243,4516,4510,4280,4163,4117,4123,4135,4129,4123,4114,
+4125,4145,4164,4195,4195,4214,4241,4277,4291,4251,4165,4103,4044,4023,4010,3999,3991,4010,4040,4048,
+4045,4053,4060,4065,4067,4071,4080,4085,4072,4044,4001,3938,3878,3810,3747,3711,3673,3628,3559,3467,
+3371,3292,3233,3173,3094,3018,2960,2917,2873,2846,2823,2793,2768,2744,2755,2789,2830,2858,2887,2898,
+2894,2889,2893,2884,2857,2819,2784,2793,2814,2797,2768,2733,2712,2699,2712,2758,2785,2776,2752,2750,
+2783,2812,2858,2897,2920,2924,2929,2935,2944,2949,2972,2981,2988,3001,3000,3023,3061,3093,3109,3108,
+3109,3112,3109,3113,3106,3107,3128,3138,3099,3065,3022,2974,2941,2920,2915,2894,2874,2862,2862,2803,
+2723,2659,2603,2577,2561,2537,2521,2486,2450,2394,2347,2315,2275,2245,2230,2239,2249,2263,2264,2245,
+2209,2160,2115,2062,2018,1965,1903,1820,1751,1693,1667,1664,1629,1576,1517,1473,1443,1425,1426,1444,
+1462,1482,1516,1548,1537,1512,1500,1489,1454,1449,1480,1504,1538,1577,1632,1719,1705,1611,1551,1631,
+1736,1792,1749,1602,1489,1365,1696,1866,1943,1862,1744,1675,1581,1497,1466,1437,1392,1363,1356,1326,
+1277,1237,1214,1200,1174,1132,1078,1034,985,910,854,807,766,713,651,576,492,411,314,216,
+141,68,5,-58,-130,-210,-301,-392,-485,-586,-685,-786,-888,-997,-1095,-1187,-1293,-1391,-1484,-1601,
+-1700,-1786,-1860,-1935,-2015,-2093,-2176,-2246,-2294,-2319,-2298,-2193,-1998,-1863,-1730,-1598,-1478,-1394,-1438,-1479,
+-1523,-1549,-1528,-1528,-1507,-1373,-1311,-1292,-1224,-1128,-1010,-905,-798,-808,-833,-937,-1071,-1210,-1151,-1265,
+-1487,-1634,-1729,-1796,-1837,-1848,-1790,-1698,-1718,-1718,-1759,-1894,-2041,-2184,-2272,-2404,-2554,-2602,-2657,-2692,
+-2711,-2733,-2748,-2765,-2802,-2818,-2839,-2937,-3035,-3030,-2906,-2860,-2866,-3023,-3292,-3643,-3966,-4114,-4161,-4131,
+-4079,-4035,-4055,-4130,-4239,-4414,-4598,-4754,-4883,-4998,-5054,-5033,-4988,-4929,-4865,-4824,-4792,-4764,-4753,-4752,
+-4759,-4765,-4752,-4726,-4708,-4708,-4727,-4764,-4815,-4866,-4920,-4959,-5027,-5101,-5173,-5229,-5301,-5371,-5465,-5561,
+-5654,-5751,-5837,-5882,-5898,-5917,-5925,-5918,-5822,-5662,-5480,-5277,-5028,-4749,-4488,-4180,-3826,-3680,-3593,-3531,
+-3433,-3332,-3083,-2961,-2919,-2903,-2819,-2785,-2788,-2771,-2744,-2822,-2885,-2900,-2917,-2953,-2978,-3033,-3078,-3051,
+-3101,-3167,-3191,-3198,-3205,-3183,-3148,-3100,-3108,-3097,-3088,-3072,-3067,-3038,-3050,-3039,-3030,-3069,-3127,-3179,
+-3205,-3252,-3455,-3697,-3871,-4223,-4309,-4175,-4133,-4123,-3985,-3753,-3576,-3565,-3539,-3504,-3429,-3306,-3277,-3378,
+-3434,-3438,-3404,-3426,-3377,-3396,-3275,-3246,-3250,-3177,-3167,-3169,-3056,-3091,-3116,-3251,-3343,-3396,-3408,-3547,
+-3827,-3955,-4032,-4103,-4174,-4158,-4112,-4047,-3986,-3924,-3805,-3671,-3556,-3481,-3331,-3215,-3173,-3096,-3054,-3004,
+-2930,-2844,-2779,-2687,-2569,-2455,-2334,-2229,-2165,-2101,-2039,-2013,-1985,-1959,-1914,-1862,-1816,-1761,-1693,-1607,
+-1507,-1417,-1327,-1210,-1134,-1029,-937,-873,-787,-667,-584,-483,-386,-295,-194,-96,-10,134,221,309,
+408,520,649,705,794,836,916,1035,1123,1196,1279,1303,1361,1441,1522,1600,1674,1775,1855,1933,
+2002,2078,2152,2222,2283,2357,2427,2503,2590,2678,2762,2835,2899,2945,2974,2980,3009,3036,3065,3059,
+3050,3030,2988,2926,2874,2829,2672,2468,2391,2423,2550,2636,2732,2891,3020,3136,3180,3240,3341,3387,
+3448,3480,3553,3568,3580,3589,3619,3647,3686,3725,3768,3815,3860,3888,3931,3963,3971,4003,4031,4065,
+4096,4145,4211,4239,4276,4268,4276,4233,4121,3942,3736,3696,3751,3940,4065,3886,3444,2891,2489,2499,
+2692,2879,3022,3118,3158,3176,3178,3173,3144,3101,3052,3003,2968,2913,2808,2732,2670,2602,2537,2527,
+2439,2363,2313,2271,2232,2200,2172,2138,2095,2057,2012,1960,1894,1826,1773,1725,1680,1625,1571,1510,
+1439,1364,1306,1263,1222,1180,1145,1107,1066,1032,997,965,924,886,880,862,843,803,744,676,
+607,551,499,470,452,442,430,414,405,394,382,367,352,323,281,232,185,139,96,57,
+20,-24,-74,-126,-166,-192,-206,-220,-234,-269,-295,-324,-362,-384,-406,-435,-458,-484,-501,-521,
+-536,-547,-559,-570,-561,-553,-609,-625,-647,-671,-675,-653,-600,-663,-680,-677,-657,-657,-660,-648,
+-638,-629,-627,-630,-625,-616,-609,-601,-593,-586,-552,-489,-524,-512,-499,-484,-501,-511,-528,-554,
+-576,-595,-607,-611,-602,-574,-513,-406,-288,-221,-112,-44,-107,-196,-310,-412,-469,-478,-436,-300,
+-320,-384,-403,-416,-442,-484,-522,-540,-521,-471,-443,-448,-444,-416,-367,-324,-292,-282,-268,-260,
+-246,-193,-157,-223,-220,-199,-182,-168,-154,-147,-145,-143,-140,-142,-144,-145,-151,-157,-158,-157,
+-162,-177,-186,-197,-213,-227,-237,-250,-264,-278,-291,-310,-338,-358,-374,-361,-359,-394,-353,-344,
+-419,-441,-461,-484,-511,-542,-575,-603,-635,-667,-697,-722,-747,-772,-796,-817,-834,-854,-878,-900,
+-929,-950,-972,-1003,-1031,-1052,-1066,-1081,-1087,-1097,-1105,-1117,-1129,-1139,-1153,-1167,-1183,-1200,-1219,-1236,
+-1256,-1282,-1309,-1340,-1372,-1406,-1431,-1457,-1477,-1505,-1519,-1536,-1567,-1589,-1610,-1632,-1655,-1678,-1699,-1724,
+-1751,-1784,-1818,-1857,-1895,-1938,-1977,-2010,-2005,-2054,-2121,-2164,-2203,-2236,-2272,-2308,-2344,-2389,-2432,-2467,
+-2497,-2527,-2562,-2597,-2626,-2657,-2693,-2724,-2762,-2803,-2849,-2889,-2923,-2950,-2984,-3012,-3034,-3062,-3095,-3133,
+-3172,-3210,-3237,-3249,-3290,-3340,-3364,-3391,-3446,-3467,-3496,-3522,-3553,-3580,-3619,-3661,-3699,-3732,-3747,-3785,
+-3823,-3864,-3900,-3939,-3979,-4017,-4049,-4071,-4104,-4147,-4172,-4205,-4223,-4239,-4250,-4256,-4269,-4279,-4300,-4335,
+-4361,-4381,-4390,-4391,-4401,-4404,-4399,-4404,-4411,-4416,-4420,-4425,-4432,-4433,-4435,-4436,-4434,-4434,-4438,-4445,
+-4446,-4432,-4420,-4404,-4380,-4351,-4345,-4325,-4318,-4308,-4298,-4294,-4268,-4196,-4229,-4214,-4186,-4169,-4158,-4168,
+-4223,-4175,-4079,-4045,-3936,-3829,-3798,-3761,-3688,-3627,-3554,-3489,-3542,-3617,-3655,-3602,-3560,-3505,-3477,-3450,
+-3413,-3359,-3313,-3267,-3212,-3170,-3130,-3088,-3034,-2946,-2835,-2771,-2678,-2563,-2541,-2491,-2444,-2410,-2400,-2372,
+-2374,-2411,-2452,-2473,-2436,-2395,-2352,-2321,-2289,-2236,-2222,-2210,-2234,-2244,-2213,-2173,-2113,-2144,-2155,-2192,
+-2244,-2321,-2355,-2377,-2391,-2396,-2422,-2450,-2483,-2525,-2571,-2618,-2663,-2703,-2743,-2790,-2824,-2852,-2859,-2846,
+-2823,-2798,-2785,-2764,-2737,-2715,-2693,-2675,-2671,-2669,-2660,-2651,-2636,-2620,-2600,-2567,-2545,-2528,-2522,-2510,
+-2500,-2490,-2470,-2451,-2440,-2436,-2438,-2439,-2453,-2487,-2570,-2678,-2792,-2913,-3029,-3089,-3048,-2997,-2968,-2929,
+-2881,-2833,-2778,-2732,-2705,-2716,-2746,-2759,-2741,-2725,-2736,-2762,-2781,-2790,-2801,-2822,-2846,-2861,-2875,-2888,
+-2907,-2928,-2939,-2961,-2989,-3065,-3165,-3293,-3405,-3450,-3479,-3518,-3567,-3622,-3684,-3749,-3824,-3909,-4022,-4264,
+-4547,-4591,-4576,-4563,-4560,-4564,-4576,-4593,-4604,-4623,-4658,-4692,-4729,-4771,-4815,-4865,-4922,-4985,-5042,-5094,
+-5138,-5169,-5187,-5194,-5188,-5180,-5176,-5166,-5148,-5131,-5100,-5073,-5034,-4998,-4956,-4913,-4865,-4827,-4786,-4761,
+-4750,-4724,-4699,-4681,-4672,-4653,-4627,-4602,-4589,-4570,-4558,-4542,-4527,-4522,-4522,-4517,-4503,-4489,-4470,-4466,
+-4474,-4468,-4451,-4433,-4406,-4378,-4345,-4314,-4282,-4240,-4211,-4178,-4145,-4103,-4058,-4021,-3973,-3930,-3880,-3833,
+-3779,-3738,-3686,-3635,-3578,-3524,-3463,-3404,-3358,-3293,-3221,-3141,-3079,-3006,-2936,-2877,-2803,-2730,-2655,-2584,
+-2506,-2428,-2333,-2239,-2150,-2055,-1962,-1873,-1775,-1683,-1586,-1506,-1445,-1318,-1239,-1138,-1043,-953,-846,-756,
+-660,-545,-454,-355,-259,-181,-90,28,120,221,349,413,454,563,642,689,728,772,827,880,
+939,984,1045,1085,1125,1185,1211,1248,1305,1342,1390,1442,1476,1516,1561,1603,1660,1704,1759,1803,
+1854,1896,1935,1963,2011,2064,2109,2152,2189,2232,2275,2313,2341,2375,2408,2452,2485,2541,2579,2600,
+2635,2668,2696,2715,2744,2767,2771,2772,2772,2757,2750,2742,2736,2713,2709,2725,2740,2748,2754,2763,
+2765,2801,2819,2824,2825,2827,2835,2823,2820,2822,2828,2844,2845,2853,2876,2909,2944,2973,2990,3017,
+3051,3083,3114,3135,3170,3208,3244,3272,3306,3356,3405,3489,3630,3856,4243,4310,4033,3946,3969,4027,
+4044,4004,3857,3717,3662,3651,3686,3777,3960,4181,4439,4426,4253,4142,4121,4127,4139,4144,4119,4080,
+4068,4068,4091,4107,4109,4102,4134,4131,4174,4161,4101,4032,3984,3969,3964,3943,3928,3913,3911,3922,
+3919,3918,3919,3924,3935,3949,3967,3977,3982,3965,3923,3873,3820,3762,3697,3632,3585,3561,3521,3460,
+3380,3295,3219,3159,3094,3022,2960,2911,2884,2865,2847,2815,2780,2750,2734,2736,2761,2806,2836,2879,
+2903,2901,2898,2908,2907,2882,2841,2807,2797,2815,2806,2781,2745,2725,2711,2726,2764,2814,2824,2793,
+2764,2800,2836,2875,2898,2906,2902,2920,2944,2953,2961,2976,2987,2985,2985,2987,3006,3030,3067,3084,
+3082,3082,3096,3113,3099,3092,3091,3102,3104,3075,3049,3020,2968,2939,2928,2922,2900,2871,2846,2822,
+2777,2719,2659,2605,2569,2539,2524,2527,2487,2440,2387,2335,2294,2266,2246,2222,2208,2227,2231,2227,
+2216,2183,2137,2084,2022,1966,1905,1824,1737,1669,1617,1597,1598,1588,1554,1497,1447,1398,1399,1403,
+1416,1439,1464,1493,1502,1483,1474,1473,1471,1436,1427,1458,1501,1528,1567,1623,1678,1699,1648,1557,
+1541,1595,1666,1709,1611,1371,1364,1607,1802,1949,1860,1760,1652,1535,1455,1421,1399,1363,1354,1350,
+1317,1271,1244,1227,1206,1175,1141,1092,1034,1008,946,886,836,799,748,674,591,508,424,350,
+270,170,73,-5,-74,-135,-207,-298,-399,-490,-579,-685,-786,-891,-995,-1090,-1190,-1300,-1397,-1486,
+-1601,-1704,-1792,-1867,-1953,-2043,-2144,-2246,-2332,-2390,-2420,-2411,-2328,-2233,-2084,-1975,-1874,-1735,-1663,-1685,
+-1697,-1694,-1680,-1664,-1680,-1692,-1641,-1575,-1537,-1515,-1480,-1422,-1357,-1271,-1156,-1107,-1210,-1338,-1467,-1457,
+-1372,-1470,-1653,-1783,-1843,-1868,-1878,-1858,-1797,-1812,-1846,-1860,-1944,-2092,-2221,-2355,-2509,-2673,-2735,-2785,
+-2837,-2870,-2863,-2837,-2838,-2901,-2952,-3026,-3101,-3125,-3050,-2947,-2933,-2934,-3126,-3372,-3697,-3981,-4127,-4172,
+-4155,-4120,-4117,-4171,-4252,-4361,-4486,-4611,-4733,-4839,-4931,-4974,-4959,-4929,-4885,-4838,-4787,-4768,-4753,-4737,
+-4743,-4759,-4764,-4738,-4707,-4685,-4690,-4724,-4765,-4816,-4856,-4917,-4981,-5057,-5140,-5224,-5296,-5385,-5464,-5561,
+-5645,-5741,-5842,-5931,-5993,-6039,-6075,-6113,-6118,-6082,-6013,-5910,-5762,-5509,-5245,-4975,-4628,-4356,-4221,-4129,
+-4109,-4006,-3770,-3559,-3528,-3446,-3332,-3232,-3044,-2881,-2756,-2745,-2718,-2772,-2833,-2877,-2946,-3005,-3036,-3038,
+-3040,-3054,-3057,-3067,-3065,-3058,-3045,-2986,-2925,-2937,-2967,-2970,-2951,-2969,-2956,-2980,-2986,-3025,-3114,-3279,
+-3447,-3608,-3771,-3895,-4029,-4264,-4481,-4561,-4514,-4421,-4431,-4162,-3882,-3722,-3673,-3675,-3581,-3429,-3376,-3403,
+-3481,-3556,-3531,-3484,-3485,-3441,-3399,-3279,-3276,-3255,-3208,-3171,-3164,-3078,-3169,-3191,-3269,-3307,-3303,-3357,
+-3443,-3694,-3858,-3936,-4034,-4097,-4077,-4028,-3957,-3873,-3786,-3657,-3521,-3409,-3327,-3212,-3173,-3119,-3047,-2983,
+-2942,-2903,-2793,-2728,-2610,-2485,-2383,-2296,-2240,-2156,-2065,-2007,-1969,-1949,-1931,-1882,-1824,-1772,-1717,-1644,
+-1587,-1469,-1352,-1269,-1163,-1092,-1039,-954,-856,-761,-663,-563,-466,-370,-273,-173,-79,21,132,227,
+333,443,599,676,765,810,866,964,1110,1192,1245,1292,1330,1397,1476,1545,1619,1711,1816,1891,
+1958,2035,2113,2189,2260,2326,2392,2471,2556,2648,2737,2821,2908,2959,2981,3000,3011,3051,3085,3089,
+3063,3052,3020,2932,2917,2886,2782,2600,2432,2412,2473,2601,2681,2787,2922,3068,3242,3270,3335,3405,
+3439,3444,3472,3534,3617,3597,3604,3639,3665,3699,3737,3779,3827,3874,3902,3935,3968,3981,4018,4054,
+4079,4114,4191,4224,4262,4286,4296,4319,4302,4225,4069,3852,3821,3921,4162,4379,4347,3931,3320,2747,
+2578,2687,2855,2998,3106,3164,3187,3195,3188,3176,3139,3102,3038,3012,2988,2879,2794,2726,2661,2607,
+2587,2483,2401,2340,2286,2240,2202,2179,2157,2130,2095,2053,2005,1944,1866,1804,1752,1698,1643,1602,
+1560,1494,1416,1347,1301,1265,1227,1185,1133,1086,1056,1030,996,960,924,891,876,853,814,769,
+710,649,587,532,498,479,469,458,441,430,427,412,396,376,351,309,259,211,166,124,
+86,44,-2,-50,-93,-126,-144,-158,-178,-206,-237,-264,-290,-320,-324,-344,-397,-411,-425,-409,
+-443,-493,-521,-540,-555,-558,-568,-588,-621,-650,-658,-671,-670,-674,-684,-687,-671,-665,-661,-646,
+-637,-637,-641,-646,-644,-635,-621,-609,-601,-590,-577,-556,-525,-499,-476,-468,-467,-478,-489,-509,
+-536,-561,-578,-587,-584,-578,-562,-529,-478,-417,-348,-245,-122,57,125,-126,-233,-202,-243,-256,
+-65,-113,-247,-259,-269,-324,-403,-468,-501,-501,-482,-467,-451,-424,-380,-329,-284,-254,-239,-230,
+-223,-208,-176,-159,-171,-165,-146,-123,-99,-83,-72,-68,-67,-63,-57,-54,-51,-59,-69,-77,
+-80,-92,-104,-114,-126,-144,-163,-179,-192,-199,-209,-220,-230,-246,-264,-285,-296,-306,-335,-343,
+-326,-355,-382,-405,-436,-467,-492,-514,-537,-561,-586,-617,-639,-665,-691,-722,-749,-778,-807,-838,
+-865,-892,-914,-933,-961,-974,-982,-997,-1016,-1035,-1052,-1071,-1089,-1105,-1114,-1127,-1145,-1157,-1172,-1189,
+-1211,-1234,-1260,-1292,-1325,-1353,-1384,-1404,-1428,-1449,-1466,-1482,-1505,-1530,-1554,-1585,-1598,-1605,-1635,-1670,
+-1695,-1724,-1750,-1784,-1826,-1868,-1910,-1953,-1992,-2034,-2070,-2100,-2127,-2174,-2218,-2252,-2287,-2324,-2366,-2403,
+-2437,-2470,-2505,-2542,-2568,-2611,-2643,-2680,-2717,-2753,-2795,-2836,-2872,-2908,-2942,-2978,-3006,-3032,-3060,-3093,
+-3125,-3165,-3203,-3240,-3271,-3301,-3321,-3360,-3393,-3439,-3458,-3485,-3505,-3531,-3563,-3586,-3634,-3683,-3719,-3752,
+-3776,-3814,-3853,-3894,-3942,-3986,-4021,-4047,-4077,-4112,-4154,-4184,-4211,-4230,-4246,-4257,-4270,-4289,-4304,-4324,
+-4353,-4369,-4378,-4383,-4388,-4396,-4399,-4399,-4405,-4415,-4428,-4438,-4445,-4442,-4457,-4461,-4465,-4465,-4461,-4464,
+-4468,-4462,-4452,-4441,-4428,-4411,-4388,-4370,-4359,-4346,-4340,-4336,-4341,-4323,-4322,-4254,-4237,-4207,-4188,-4176,
+-4194,-4243,-4322,-4249,-4059,-3853,-3781,-3805,-3823,-3789,-3692,-3585,-3494,-3479,-3554,-3598,-3608,-3600,-3548,-3504,
+-3471,-3439,-3388,-3310,-3268,-3229,-3202,-3149,-3110,-3073,-2960,-2814,-2745,-2646,-2562,-2499,-2463,-2419,-2391,-2369,
+-2385,-2383,-2389,-2413,-2444,-2445,-2377,-2321,-2290,-2255,-2235,-2224,-2188,-2166,-2195,-2188,-2162,-2082,-2083,-2159,
+-2221,-2246,-2288,-2332,-2364,-2392,-2419,-2449,-2493,-2537,-2573,-2609,-2649,-2688,-2723,-2754,-2795,-2833,-2850,-2847,
+-2827,-2806,-2791,-2758,-2733,-2719,-2698,-2685,-2689,-2687,-2685,-2672,-2658,-2637,-2609,-2584,-2559,-2538,-2525,-2513,
+-2501,-2491,-2468,-2453,-2432,-2432,-2442,-2465,-2499,-2516,-2551,-2634,-2743,-2857,-2963,-3067,-3137,-3126,-3057,-3009,
+-2956,-2906,-2861,-2824,-2780,-2741,-2725,-2721,-2699,-2668,-2638,-2635,-2651,-2673,-2704,-2728,-2765,-2789,-2816,-2833,
+-2873,-2908,-2942,-2958,-2959,-2976,-3046,-3148,-3276,-3382,-3417,-3440,-3479,-3535,-3601,-3660,-3710,-3779,-3865,-3970,
+-4178,-4498,-4560,-4553,-4542,-4539,-4547,-4563,-4583,-4591,-4602,-4637,-4676,-4720,-4772,-4828,-4883,-4938,-4989,-5036,
+-5082,-5128,-5163,-5183,-5190,-5190,-5183,-5178,-5158,-5152,-5127,-5107,-5073,-5046,-5015,-4966,-4914,-4873,-4855,-4823,
+-4792,-4759,-4722,-4713,-4682,-4686,-4686,-4662,-4648,-4626,-4610,-4612,-4593,-4576,-4571,-4577,-4567,-4570,-4554,-4530,
+-4526,-4532,-4528,-4519,-4497,-4471,-4445,-4417,-4389,-4356,-4310,-4276,-4234,-4207,-4162,-4122,-4079,-4036,-3990,-3935,
+-3887,-3842,-3785,-3738,-3684,-3626,-3579,-3514,-3471,-3385,-3323,-3256,-3203,-3141,-3072,-2996,-2914,-2855,-2786,-2710,
+-2630,-2545,-2452,-2364,-2279,-2198,-2097,-1996,-1913,-1821,-1731,-1644,-1551,-1487,-1386,-1284,-1182,-1090,-1006,-890,
+-785,-705,-608,-497,-405,-317,-213,-116,-29,87,215,302,342,439,510,561,600,641,691,737,
+791,832,885,942,1000,1045,1095,1140,1188,1239,1287,1308,1348,1392,1435,1485,1524,1568,1607,1658,
+1714,1765,1816,1863,1906,1952,1996,2030,2055,2098,2160,2199,2217,2258,2279,2326,2360,2396,2441,2485,
+2529,2578,2616,2640,2669,2687,2698,2717,2718,2702,2690,2698,2686,2680,2663,2661,2671,2695,2713,2728,
+2727,2738,2746,2765,2764,2771,2779,2782,2776,2776,2773,2778,2798,2807,2809,2826,2858,2891,2903,2929,
+2947,2981,3013,3051,3086,3123,3154,3194,3234,3284,3331,3394,3487,3624,3821,4082,4186,4106,4147,4252,
+4404,4479,4410,4058,3858,3793,3758,3789,3927,4101,4408,4618,4365,4141,4058,4084,4101,4108,4092,4050,
+4013,3998,4009,4009,4026,4041,4053,4059,4044,4039,4031,4011,3978,3948,3939,3919,3894,3867,3840,3825,
+3823,3815,3811,3807,3810,3822,3845,3868,3885,3886,3868,3825,3772,3717,3658,3592,3521,3458,3419,3382,
+3333,3274,3211,3145,3082,3018,2956,2911,2860,2841,2831,2832,2814,2785,2755,2727,2718,2731,2777,2816,
+2860,2896,2897,2889,2896,2906,2876,2848,2827,2804,2829,2829,2806,2765,2729,2717,2725,2757,2829,2844,
+2817,2794,2829,2848,2858,2871,2881,2888,2911,2929,2945,2963,2979,2989,2979,2981,2997,3003,3027,3054,
+3070,3066,3066,3083,3103,3075,3056,3046,3045,3053,3035,3011,2986,2962,2939,2935,2939,2927,2891,2865,
+2828,2771,2715,2660,2610,2564,2523,2511,2502,2462,2419,2371,2329,2292,2263,2236,2210,2181,2177,2184,
+2180,2163,2135,2088,2027,1969,1914,1834,1729,1633,1580,1547,1530,1536,1543,1527,1499,1461,1422,1413,
+1400,1405,1427,1447,1456,1462,1451,1437,1432,1429,1410,1407,1436,1469,1500,1534,1608,1669,1702,1686,
+1611,1526,1521,1596,1689,1532,1324,1448,1529,1669,1788,1797,1726,1607,1516,1446,1400,1379,1351,1350,
+1333,1300,1269,1247,1230,1222,1203,1167,1109,1053,1026,986,931,879,837,776,708,616,524,451,
+376,288,177,72,-24,-100,-162,-218,-297,-391,-482,-575,-677,-784,-891,-995,-1095,-1199,-1309,-1410,
+-1501,-1612,-1715,-1799,-1886,-1980,-2086,-2194,-2306,-2399,-2467,-2506,-2511,-2468,-2414,-2296,-2199,-2091,-1993,-1921,
+-1893,-1891,-1865,-1824,-1837,-1802,-1778,-1788,-1805,-1827,-1783,-1816,-1801,-1770,-1695,-1563,-1494,-1576,-1649,-1686,
+-1653,-1629,-1642,-1719,-1814,-1856,-1901,-1895,-1896,-1923,-1883,-1932,-1989,-2067,-2144,-2210,-2400,-2605,-2753,-2833,
+-2908,-2949,-2959,-2959,-2971,-2996,-3027,-3063,-3108,-3134,-3119,-3050,-3019,-3022,-3093,-3254,-3456,-3713,-3986,-4128,
+-4183,-4155,-4129,-4141,-4208,-4308,-4402,-4493,-4586,-4681,-4774,-4856,-4889,-4884,-4859,-4817,-4783,-4753,-4735,-4724,
+-4715,-4722,-4742,-4742,-4714,-4687,-4681,-4694,-4722,-4768,-4802,-4845,-4906,-4983,-5079,-5183,-5271,-5363,-5457,-5549,
+-5636,-5711,-5803,-5888,-5981,-6053,-6119,-6178,-6222,-6245,-6249,-6223,-6174,-6089,-5949,-5733,-5427,-5124,-4913,-4806,
+-4728,-4671,-4570,-4502,-4447,-4372,-4213,-3987,-3780,-3508,-3285,-2970,-2793,-2742,-2727,-2692,-2752,-2924,-2986,-2973,
+-2999,-3003,-2972,-2930,-2950,-2999,-2977,-2941,-2870,-2851,-2882,-2952,-3030,-3011,-2937,-2934,-2919,-2927,-3012,-3154,
+-3453,-3805,-4036,-4216,-4382,-4475,-4615,-4855,-4883,-4847,-4838,-4769,-4476,-4159,-4026,-3829,-3717,-3518,-3514,-3578,
+-3571,-3620,-3681,-3622,-3569,-3529,-3495,-3424,-3325,-3323,-3259,-3264,-3196,-3132,-3103,-3153,-3200,-3289,-3287,-3289,
+-3384,-3421,-3636,-3739,-3813,-3937,-3983,-3938,-3842,-3809,-3708,-3586,-3557,-3428,-3356,-3238,-3173,-3121,-3046,-2995,
+-2952,-2914,-2816,-2711,-2648,-2520,-2403,-2358,-2278,-2207,-2107,-2036,-2011,-1940,-1926,-1882,-1840,-1793,-1733,-1670,
+-1609,-1532,-1436,-1344,-1250,-1162,-1095,-1016,-929,-831,-736,-645,-545,-451,-346,-242,-147,-43,62,154,
+278,396,505,649,731,802,851,927,1017,1083,1173,1238,1310,1372,1445,1519,1586,1661,1772,1856,
+1920,1989,2067,2150,2230,2300,2369,2440,2521,2612,2711,2791,2873,2946,2987,3020,3039,3063,3101,3113,
+3110,3073,3012,2986,2939,2956,2844,2687,2584,2465,2416,2424,2542,2721,2905,3065,3170,3278,3370,3462,
+3459,3463,3437,3447,3486,3562,3659,3647,3652,3687,3713,3746,3787,3835,3880,3926,3951,3981,4018,4049,
+4074,4092,4131,4198,4239,4280,4296,4322,4334,4314,4279,4107,3914,3907,4020,4338,4659,4678,4293,3677,
+3058,2714,2726,2861,3001,3107,3175,3220,3219,3222,3240,3227,3162,3098,3028,2990,2949,2886,2806,2743,
+2684,2648,2540,2458,2390,2325,2266,2217,2184,2169,2151,2126,2089,2041,1975,1897,1823,1769,1716,1671,
+1658,1676,1639,1512,1400,1342,1311,1279,1238,1182,1130,1095,1067,1031,993,952,923,893,863,834,
+792,741,688,628,573,538,515,501,479,461,445,431,417,399,376,343,296,259,222,184,
+144,102,67,27,-18,-55,-76,-91,-114,-142,-175,-207,-226,-264,-285,-280,-327,-365,-379,-395,
+-415,-429,-428,-494,-522,-535,-545,-556,-576,-612,-620,-640,-659,-674,-688,-690,-681,-678,-670,-657,
+-649,-648,-652,-659,-665,-661,-652,-639,-621,-607,-587,-565,-539,-512,-482,-462,-453,-456,-468,-475,
+-462,-515,-536,-541,-544,-540,-543,-535,-518,-493,-459,-403,-315,-189,-19,57,-54,-89,94,66,
+-160,-185,-174,-143,-68,-63,-182,-316,-417,-466,-480,-473,-459,-437,-401,-349,-298,-253,-223,-207,
+-199,-191,-183,-154,-121,-102,-89,-90,-75,-52,-30,-14,-1,3,12,23,28,28,22,12,
+2,-16,-25,-39,-50,-60,-68,-77,-86,-99,-111,-116,-127,-142,-158,-180,-212,-242,-263,-258,
+-296,-268,-292,-316,-342,-360,-383,-403,-428,-452,-479,-507,-542,-565,-594,-624,-657,-688,-716,-743,
+-769,-799,-832,-861,-884,-897,-917,-931,-952,-980,-1001,-1019,-1037,-1057,-1071,-1084,-1096,-1111,-1128,-1147,
+-1167,-1192,-1217,-1239,-1268,-1300,-1332,-1357,-1380,-1400,-1421,-1437,-1459,-1482,-1504,-1525,-1549,-1583,-1603,-1630,
+-1658,-1676,-1704,-1733,-1767,-1801,-1842,-1883,-1929,-1964,-2005,-2039,-2072,-2101,-2141,-2189,-2228,-2263,-2300,-2343,
+-2377,-2406,-2448,-2482,-2523,-2558,-2595,-2632,-2669,-2710,-2749,-2781,-2823,-2856,-2888,-2922,-2958,-2991,-3016,-3046,
+-3077,-3113,-3151,-3190,-3230,-3265,-3300,-3329,-3367,-3401,-3427,-3466,-3483,-3502,-3532,-3574,-3615,-3657,-3686,-3715,
+-3743,-3779,-3816,-3861,-3908,-3956,-3990,-4019,-4041,-4074,-4117,-4152,-4175,-4209,-4228,-4250,-4271,-4291,-4311,-4318,
+-4339,-4357,-4368,-4368,-4372,-4380,-4391,-4398,-4406,-4414,-4430,-4442,-4452,-4460,-4464,-4469,-4476,-4481,-4483,-4482,
+-4488,-4485,-4478,-4468,-4459,-4451,-4433,-4413,-4392,-4379,-4373,-4370,-4367,-4361,-4345,-4302,-4294,-4266,-4245,-4228,
+-4233,-4234,-4272,-4354,-4349,-4062,-3872,-3727,-3745,-3746,-3801,-3767,-3658,-3565,-3509,-3485,-3522,-3590,-3611,-3597,
+-3538,-3498,-3458,-3405,-3352,-3297,-3242,-3217,-3183,-3141,-3084,-2981,-2802,-2736,-2705,-2560,-2484,-2426,-2399,-2378,
+-2364,-2379,-2386,-2397,-2400,-2418,-2437,-2390,-2344,-2280,-2253,-2215,-2213,-2182,-2159,-2178,-2120,-2124,-2081,-2074,
+-2106,-2200,-2260,-2291,-2313,-2349,-2386,-2423,-2458,-2508,-2544,-2587,-2630,-2660,-2696,-2729,-2766,-2803,-2829,-2832,
+-2818,-2797,-2782,-2746,-2724,-2711,-2695,-2704,-2721,-2727,-2721,-2706,-2681,-2657,-2627,-2595,-2563,-2556,-2551,-2540,
+-2534,-2522,-2506,-2488,-2482,-2480,-2481,-2495,-2523,-2561,-2596,-2626,-2700,-2796,-2883,-2973,-3053,-3118,-3160,-3147,
+-3100,-3018,-2943,-2893,-2851,-2799,-2753,-2718,-2675,-2626,-2580,-2549,-2538,-2556,-2579,-2613,-2651,-2687,-2715,-2756,
+-2811,-2867,-2918,-2954,-2969,-2975,-2986,-3035,-3137,-3269,-3360,-3382,-3407,-3445,-3498,-3571,-3641,-3687,-3746,-3820,
+-3918,-4091,-4434,-4529,-4531,-4521,-4519,-4528,-4547,-4563,-4578,-4592,-4613,-4659,-4712,-4773,-4836,-4891,-4941,-4990,
+-5029,-5074,-5120,-5153,-5178,-5183,-5188,-5180,-5169,-5149,-5146,-5131,-5101,-5069,-5040,-5011,-4970,-4923,-4890,-4848,
+-4818,-4777,-4756,-4743,-4718,-4721,-4704,-4708,-4692,-4684,-4674,-4662,-4648,-4643,-4645,-4636,-4639,-4625,-4617,-4605,
+-4608,-4596,-4582,-4579,-4573,-4548,-4518,-4508,-4485,-4449,-4402,-4374,-4343,-4312,-4272,-4234,-4185,-4139,-4096,-4057,
+-4012,-3951,-3903,-3852,-3802,-3742,-3686,-3624,-3550,-3514,-3444,-3370,-3302,-3243,-3176,-3114,-3055,-2987,-2911,-2830,
+-2756,-2671,-2585,-2501,-2403,-2334,-2225,-2141,-2042,-1951,-1859,-1778,-1694,-1595,-1514,-1433,-1320,-1232,-1132,-1056,
+-949,-850,-731,-634,-559,-455,-365,-245,-156,-48,46,155,242,272,378,436,488,526,577,620,
+679,730,784,829,876,927,982,1019,1058,1081,1136,1189,1237,1269,1312,1369,1408,1451,1503,1542,
+1577,1630,1677,1716,1763,1796,1825,1878,1939,1990,2038,2083,2107,2148,2186,2197,2251,2284,2325,2370,
+2412,2452,2492,2534,2564,2592,2615,2635,2654,2664,2644,2636,2628,2623,2628,2632,2632,2639,2648,2676,
+2695,2701,2712,2717,2729,2724,2720,2720,2723,2735,2728,2737,2736,2743,2749,2768,2780,2799,2829,2852,
+2873,2908,2939,2975,3010,3040,3079,3119,3176,3232,3279,3334,3397,3486,3602,3734,3867,3997,4193,4449,
+4469,4761,4739,4361,4173,4204,4172,4023,4004,4239,4316,4517,4509,4218,4039,4001,4037,4046,4049,4030,
+3994,3971,3953,3953,3968,3978,3958,3952,3958,3957,3960,3964,3962,3957,3926,3895,3864,3830,3794,3755,
+3735,3729,3725,3723,3719,3718,3727,3746,3768,3786,3784,3767,3730,3686,3635,3577,3510,3435,3358,3291,
+3240,3198,3153,3112,3059,2999,2942,2893,2860,2804,2794,2793,2806,2804,2785,2754,2716,2697,2685,2721,
+2756,2803,2865,2883,2876,2863,2879,2868,2852,2836,2822,2852,2857,2829,2780,2731,2720,2727,2758,2842,
+2867,2856,2839,2845,2834,2831,2846,2863,2885,2899,2910,2934,2954,2970,2979,2967,2970,3001,3013,3025,
+3043,3049,3044,3042,3045,3048,3024,2993,2982,2971,2969,2965,2964,2953,2938,2933,2951,2967,2969,2926,
+2865,2842,2790,2720,2677,2630,2578,2531,2500,2473,2420,2382,2350,2322,2291,2258,2218,2180,2151,2140,
+2144,2146,2131,2104,2055,1989,1930,1868,1774,1665,1569,1526,1496,1484,1482,1499,1500,1497,1486,1460,
+1423,1396,1401,1423,1439,1449,1452,1440,1419,1414,1404,1381,1365,1408,1444,1468,1508,1559,1608,1653,
+1704,1679,1607,1522,1515,1623,1543,1385,1425,1412,1485,1581,1644,1661,1643,1588,1515,1437,1370,1347,
+1345,1314,1284,1254,1232,1225,1231,1225,1198,1141,1097,1070,1033,980,924,855,771,696,632,567,
+495,402,275,161,63,-44,-133,-196,-238,-297,-377,-466,-561,-660,-767,-877,-994,-1102,-1205,-1314,
+-1410,-1502,-1619,-1721,-1805,-1902,-2011,-2122,-2236,-2347,-2448,-2522,-2564,-2584,-2579,-2544,-2485,-2357,-2248,-2188,
+-2128,-2069,-2032,-1991,-1952,-1926,-1894,-1871,-1926,-1970,-1992,-2001,-2040,-2005,-1968,-1953,-1923,-1893,-1866,-1767,
+-1762,-1751,-1791,-1853,-1896,-1910,-1945,-1944,-1952,-1940,-2000,-1979,-2013,-2082,-2153,-2239,-2292,-2445,-2611,-2778,
+-2905,-2985,-3022,-3038,-3039,-3052,-3074,-3079,-3090,-3098,-3081,-3043,-3053,-3065,-3125,-3214,-3361,-3562,-3752,-3997,
+-4138,-4189,-4151,-4134,-4156,-4231,-4336,-4412,-4484,-4560,-4636,-4722,-4787,-4807,-4793,-4765,-4744,-4715,-4701,-4704,
+-4705,-4702,-4706,-4715,-4709,-4690,-4687,-4706,-4712,-4734,-4758,-4775,-4828,-4904,-4993,-5090,-5217,-5329,-5415,-5497,
+-5583,-5667,-5744,-5826,-5916,-6003,-6076,-6150,-6217,-6283,-6329,-6353,-6358,-6342,-6300,-6222,-6094,-5907,-5720,-5555,
+-5410,-5340,-5252,-5192,-5134,-5139,-5110,-4972,-4803,-4500,-4066,-3770,-3593,-3339,-3188,-2946,-2775,-2790,-3015,-3132,
+-3003,-2937,-2943,-2928,-2862,-2879,-2962,-3000,-3010,-2963,-2952,-3017,-3076,-3198,-3195,-3083,-3087,-3018,-3003,-3055,
+-3327,-3757,-4182,-4498,-4668,-4766,-4944,-5026,-5083,-5120,-5178,-5177,-5095,-4913,-4618,-4307,-4029,-3857,-3638,-3722,
+-3823,-3829,-3827,-3794,-3737,-3662,-3609,-3579,-3502,-3413,-3404,-3383,-3283,-3262,-3192,-3177,-3167,-3207,-3313,-3241,
+-3283,-3344,-3435,-3592,-3590,-3743,-3813,-3808,-3784,-3705,-3609,-3547,-3481,-3446,-3397,-3320,-3224,-3137,-3086,-3018,
+-2970,-2908,-2850,-2744,-2615,-2585,-2456,-2360,-2298,-2241,-2176,-2095,-2048,-1981,-1961,-1898,-1847,-1829,-1783,-1710,
+-1639,-1565,-1491,-1401,-1312,-1218,-1145,-1065,-977,-886,-789,-705,-601,-515,-423,-317,-214,-89,24,154,
+266,395,462,521,646,725,859,931,987,1056,1127,1179,1253,1347,1425,1498,1575,1646,1734,1806,
+1872,1946,2023,2101,2190,2267,2337,2412,2493,2577,2674,2767,2842,2916,2967,3006,3027,3065,3106,3124,
+3145,3132,3102,3081,3010,2960,2853,2680,2534,2498,2435,2330,2381,2601,2847,3060,3230,3329,3389,3426,
+3448,3494,3439,3423,3449,3482,3550,3629,3709,3657,3703,3732,3760,3798,3839,3886,3933,3970,4000,4097,
+4082,4084,4104,4134,4176,4264,4279,4323,4352,4363,4311,4290,4177,3973,3965,4075,4457,4965,4944,4542,
+3906,3265,2824,2767,2884,3025,3139,3223,3257,3261,3286,3356,3442,3283,3182,3093,3051,3021,2974,2942,
+2882,2755,2671,2610,2537,2459,2385,2318,2261,2223,2204,2179,2147,2115,2060,1998,1930,1861,1811,1749,
+1707,1715,1830,1881,1644,1493,1403,1362,1339,1314,1256,1194,1148,1114,1076,1033,986,940,912,886,
+853,816,772,722,671,627,591,558,528,501,475,448,423,400,383,361,343,305,263,224,
+194,159,111,84,100,26,-5,-21,-43,-73,-112,-151,-187,-216,-243,-260,-252,-277,-320,-342,
+-366,-394,-411,-412,-410,-472,-505,-521,-546,-573,-577,-598,-623,-647,-671,-680,-675,-680,-677,-666,
+-662,-662,-664,-670,-673,-675,-675,-669,-658,-636,-611,-584,-559,-538,-517,-493,-474,-464,-456,-467,
+-473,-472,-484,-484,-481,-484,-491,-498,-500,-498,-490,-476,-446,-391,-317,-221,-113,94,-32,-58,
+-100,-194,-252,-224,-71,169,260,-27,-186,-349,-426,-454,-457,-446,-420,-382,-330,-282,-241,-210,
+-192,-178,-164,-143,-63,88,-35,-56,-52,-38,-14,11,37,58,67,77,89,95,99,93,
+82,71,54,44,36,35,27,22,14,-3,-24,-44,-58,-74,-95,-115,-136,-155,-174,-193,
+-170,-155,-209,-231,-207,-213,-245,-275,-283,-332,-366,-410,-440,-470,-503,-534,-573,-603,-632,-663,
+-691,-716,-752,-774,-802,-826,-848,-871,-887,-911,-941,-965,-988,-1009,-1025,-1036,-1048,-1064,-1079,-1099,
+-1119,-1142,-1165,-1191,-1216,-1244,-1272,-1300,-1325,-1349,-1373,-1394,-1420,-1435,-1460,-1482,-1499,-1523,-1553,-1584,
+-1607,-1639,-1674,-1705,-1698,-1770,-1790,-1826,-1856,-1893,-1929,-1964,-2002,-2039,-2075,-2114,-2160,-2197,-2240,-2283,
+-2324,-2361,-2394,-2432,-2466,-2507,-2547,-2588,-2625,-2666,-2705,-2743,-2781,-2817,-2853,-2886,-2920,-2956,-2988,-3012,
+-3038,-3067,-3099,-3137,-3171,-3209,-3247,-3281,-3312,-3342,-3381,-3412,-3440,-3476,-3516,-3547,-3581,-3614,-3647,-3686,
+-3723,-3746,-3776,-3804,-3867,-3908,-3950,-3986,-4008,-4032,-4068,-4103,-4146,-4179,-4199,-4234,-4252,-4276,-4297,-4318,
+-4334,-4354,-4371,-4378,-4378,-4386,-4391,-4406,-4418,-4428,-4437,-4447,-4462,-4472,-4477,-4482,-4488,-4489,-4498,-4500,
+-4502,-4500,-4493,-4487,-4480,-4468,-4468,-4452,-4430,-4410,-4404,-4400,-4399,-4395,-4384,-4362,-4323,-4310,-4292,-4290,
+-4280,-4263,-4247,-4307,-4346,-4381,-4170,-3906,-3786,-3757,-3671,-3704,-3770,-3759,-3652,-3559,-3519,-3488,-3577,-3621,
+-3641,-3589,-3547,-3499,-3451,-3378,-3329,-3267,-3207,-3197,-3166,-3081,-2993,-2868,-2817,-2740,-2596,-2492,-2418,-2380,
+-2362,-2354,-2377,-2369,-2390,-2404,-2398,-2398,-2375,-2339,-2291,-2265,-2220,-2213,-2168,-2164,-2171,-2099,-2077,-2068,
+-2058,-2091,-2219,-2266,-2290,-2313,-2324,-2363,-2402,-2450,-2494,-2540,-2588,-2628,-2660,-2692,-2730,-2768,-2800,-2804,
+-2795,-2774,-2762,-2731,-2710,-2702,-2689,-2725,-2754,-2773,-2780,-2768,-2732,-2702,-2670,-2642,-2610,-2585,-2579,-2583,
+-2575,-2569,-2564,-2557,-2540,-2537,-2542,-2547,-2565,-2582,-2604,-2636,-2678,-2721,-2799,-2870,-2940,-3006,-3071,-3116,
+-3147,-3163,-3150,-3078,-3001,-2909,-2818,-2738,-2682,-2629,-2582,-2525,-2485,-2468,-2480,-2516,-2553,-2582,-2622,-2651,
+-2686,-2740,-2804,-2864,-2911,-2933,-2951,-2977,-3021,-3102,-3235,-3337,-3357,-3360,-3396,-3457,-3541,-3633,-3698,-3734,
+-3785,-3873,-4034,-4380,-4494,-4506,-4498,-4497,-4509,-4527,-4545,-4559,-4566,-4585,-4636,-4697,-4765,-4829,-4887,-4935,
+-4977,-5021,-5068,-5109,-5137,-5163,-5176,-5180,-5179,-5171,-5164,-5153,-5138,-5108,-5076,-5046,-5010,-4970,-4932,-4881,
+-4851,-4828,-4802,-4779,-4755,-4745,-4733,-4720,-4721,-4729,-4719,-4704,-4712,-4698,-4691,-4686,-4697,-4703,-4687,-4677,
+-4666,-4658,-4660,-4656,-4644,-4617,-4609,-4585,-4566,-4542,-4513,-4485,-4454,-4409,-4377,-4329,-4291,-4248,-4199,-4156,
+-4113,-4068,-4009,-3959,-3911,-3850,-3797,-3742,-3676,-3616,-3553,-3482,-3406,-3348,-3299,-3239,-3175,-3083,-3023,-2950,
+-2865,-2780,-2704,-2630,-2547,-2464,-2371,-2277,-2185,-2084,-2000,-1904,-1822,-1727,-1647,-1568,-1471,-1362,-1260,-1178,
+-1091,-972,-906,-803,-709,-576,-531,-433,-328,-219,-99,25,122,152,262,331,366,409,440,502,
+534,594,663,710,759,812,857,901,945,985,1023,1066,1105,1134,1197,1244,1285,1331,1376,1414,
+1456,1503,1560,1607,1649,1698,1739,1781,1819,1852,1901,1957,1984,2017,2056,2082,2094,2159,2192,2236,
+2280,2335,2372,2412,2452,2492,2515,2540,2568,2586,2592,2581,2569,2566,2571,2582,2587,2594,2607,2622,
+2643,2660,2670,2691,2688,2688,2689,2687,2697,2688,2681,2689,2693,2687,2687,2692,2707,2727,2747,2770,
+2807,2834,2864,2898,2926,2962,3006,3058,3109,3173,3224,3274,3331,3402,3488,3595,3739,3860,3916,4052,
+4266,4238,4328,4300,4149,4276,4574,4552,4239,4115,4261,4259,4181,4085,4000,3950,3974,3984,3990,3997,
+3991,3980,3952,3928,3931,3936,3953,3958,3942,3935,3926,3929,3932,3933,3924,3901,3864,3817,3773,3732,
+3689,3662,3654,3654,3653,3650,3645,3647,3655,3667,3671,3664,3650,3628,3600,3561,3511,3448,3374,3290,
+3209,3141,3090,3050,3005,2954,2909,2869,2830,2804,2760,2756,2768,2774,2778,2760,2728,2692,2656,2645,
+2658,2687,2729,2795,2835,2840,2841,2861,2861,2842,2833,2851,2877,2890,2868,2818,2775,2756,2748,2769,
+2811,2851,2854,2844,2835,2848,2827,2827,2850,2878,2893,2906,2926,2946,2956,2971,2972,2973,3001,3012,
+3006,3010,3005,2999,2988,2979,2975,2953,2926,2916,2900,2896,2904,2921,2923,2919,2933,2958,2992,3014,
+2965,2886,2850,2817,2736,2672,2621,2570,2526,2485,2435,2388,2358,2350,2325,2283,2248,2197,2145,2115,
+2109,2112,2119,2109,2075,2019,1947,1872,1803,1726,1612,1512,1487,1455,1452,1447,1455,1457,1477,1486,
+1473,1444,1389,1375,1404,1415,1429,1437,1437,1415,1400,1389,1368,1359,1391,1433,1432,1458,1506,1553,
+1580,1639,1675,1638,1565,1476,1435,1371,1342,1338,1320,1332,1413,1494,1559,1646,1657,1626,1515,1416,
+1367,1349,1328,1281,1256,1245,1240,1234,1218,1196,1171,1137,1112,1064,1016,966,913,807,700,647,
+623,560,447,298,192,83,-38,-147,-221,-255,-294,-361,-448,-546,-642,-746,-867,-989,-1100,-1206,
+-1317,-1423,-1517,-1630,-1734,-1825,-1923,-2035,-2157,-2277,-2383,-2481,-2552,-2597,-2628,-2647,-2647,-2618,-2542,-2410,
+-2302,-2266,-2222,-2176,-2138,-2084,-2022,-2002,-1981,-2055,-2100,-2129,-2176,-2247,-2252,-2278,-2289,-2273,-2227,-2108,
+-1911,-1783,-1802,-1865,-1953,-2035,-2084,-2104,-2094,-2122,-2151,-2163,-2166,-2135,-2183,-2233,-2344,-2449,-2524,-2627,
+-2773,-2918,-3023,-3091,-3121,-3128,-3135,-3136,-3114,-3082,-3046,-2992,-2959,-3057,-3158,-3243,-3328,-3492,-3641,-3813,
+-4058,-4186,-4215,-4180,-4147,-4169,-4256,-4357,-4428,-4492,-4554,-4633,-4697,-4728,-4736,-4710,-4678,-4657,-4636,-4645,
+-4668,-4673,-4689,-4695,-4698,-4697,-4686,-4696,-4726,-4754,-4751,-4744,-4764,-4823,-4906,-5010,-5096,-5233,-5361,-5452,
+-5523,-5594,-5668,-5747,-5836,-5934,-6025,-6117,-6207,-6273,-6336,-6393,-6435,-6461,-6468,-6458,-6421,-6350,-6257,-6139,
+-6049,-6000,-5950,-5854,-5767,-5695,-5665,-5649,-5556,-5331,-5078,-4757,-4533,-4370,-4062,-3775,-3378,-3234,-3189,-3446,
+-3513,-3322,-3118,-3067,-3148,-3089,-3024,-3053,-3086,-3244,-3248,-3245,-3411,-3440,-3504,-3524,-3438,-3401,-3295,-3244,
+-3377,-3783,-4223,-4472,-4740,-4925,-5081,-5224,-5313,-5348,-5393,-5382,-5328,-5246,-5114,-4881,-4439,-4098,-4022,-4093,
+-4094,-4145,-4160,-4077,-3943,-3889,-3789,-3693,-3629,-3546,-3495,-3507,-3428,-3352,-3271,-3243,-3158,-3129,-3262,-3333,
+-3259,-3271,-3339,-3429,-3488,-3529,-3622,-3578,-3624,-3588,-3508,-3467,-3429,-3411,-3392,-3347,-3266,-3191,-3129,-3055,
+-2991,-2927,-2886,-2812,-2681,-2618,-2550,-2428,-2328,-2267,-2207,-2131,-2076,-1983,-1942,-1959,-1889,-1861,-1815,-1750,
+-1695,-1611,-1531,-1463,-1373,-1275,-1192,-1110,-1026,-931,-848,-758,-662,-560,-485,-385,-289,-181,-38,104,
+223,360,374,477,529,651,794,946,994,1040,1081,1143,1193,1301,1408,1477,1548,1622,1695,1761,
+1828,1906,1989,2066,2142,2230,2304,2376,2459,2552,2634,2725,2814,2897,2961,2983,2988,3033,3092,3125,
+3138,3151,3144,3147,3104,2993,2888,2693,2534,2480,2461,2435,2362,2433,2646,2891,3023,3144,3243,3343,
+3388,3426,3450,3429,3431,3454,3482,3511,3593,3669,3666,3706,3746,3769,3803,3847,3891,3936,3984,4013,
+4049,4075,4087,4116,4147,4179,4248,4300,4347,4362,4337,4332,4314,4238,4041,3974,4082,4464,4965,5065,
+4684,4029,3335,2859,2784,2917,3074,3204,3319,3341,3328,3333,3435,3584,3392,3272,3177,3119,3079,3029,
+2964,2889,2800,2736,2688,2622,2539,2462,2393,2342,2296,2261,2222,2190,2149,2089,2039,1983,1932,1866,
+1817,1791,1764,1740,1773,1687,1596,1463,1421,1399,1370,1322,1261,1206,1166,1122,1069,1022,978,939,
+910,879,837,797,755,719,681,649,607,569,536,494,456,420,394,377,362,382,376,284,
+235,202,189,125,96,78,61,47,24,-7,-47,-96,-129,-140,-169,-203,-236,-238,-258,-284,
+-306,-333,-367,-386,-352,-221,-400,-477,-510,-537,-550,-561,-579,-606,-635,-653,-656,-667,-670,-663,
+-663,-667,-672,-674,-676,-678,-678,-675,-672,-654,-627,-604,-578,-559,-543,-524,-513,-497,-486,-470,
+-466,-458,-448,-438,-433,-428,-436,-446,-458,-469,-475,-477,-479,-469,-441,-382,-289,-192,-100,-142,
+-216,-253,-292,-306,-256,-85,240,263,84,-147,-280,-363,-423,-443,-434,-408,-372,-325,-282,-241,
+-206,-181,-161,-146,-125,-73,5,8,-29,-14,7,32,56,82,104,119,131,138,144,147,
+143,143,140,141,138,131,120,103,88,72,48,27,7,-15,-33,-36,-40,-46,-57,-76,
+-112,-108,-53,-69,-125,-141,-168,-190,-227,-243,-281,-304,-337,-372,-404,-439,-476,-513,-537,-573,
+-603,-628,-658,-692,-718,-745,-770,-796,-823,-844,-872,-899,-925,-948,-969,-984,-1000,-1017,-1036,-1053,
+-1074,-1093,-1118,-1147,-1174,-1197,-1223,-1246,-1274,-1298,-1326,-1350,-1372,-1392,-1412,-1438,-1462,-1485,-1515,-1539,
+-1572,-1598,-1623,-1657,-1695,-1733,-1765,-1785,-1809,-1832,-1861,-1894,-1926,-1965,-2008,-2051,-2100,-2147,-2180,-2216,
+-2256,-2289,-2335,-2375,-2415,-2457,-2487,-2536,-2587,-2628,-2664,-2706,-2745,-2781,-2813,-2848,-2885,-2920,-2954,-2983,
+-3017,-3044,-3073,-3104,-3137,-3170,-3207,-3239,-3271,-3301,-3330,-3367,-3411,-3440,-3468,-3506,-3553,-3594,-3626,-3659,
+-3696,-3722,-3755,-3797,-3835,-3864,-3908,-3952,-3979,-4007,-4038,-4071,-4108,-4138,-4169,-4184,-4218,-4247,-4266,-4294,
+-4318,-4341,-4366,-4377,-4382,-4396,-4411,-4426,-4432,-4443,-4451,-4463,-4473,-4486,-4499,-4506,-4511,-4516,-4521,-4527,
+-4533,-4522,-4506,-4501,-4495,-4498,-4490,-4486,-4473,-4452,-4438,-4427,-4423,-4383,-4406,-4391,-4379,-4348,-4334,-4335,
+-4312,-4275,-4255,-4251,-4283,-4304,-4363,-4330,-4094,-3898,-3826,-3759,-3717,-3739,-3779,-3697,-3613,-3549,-3493,-3552,
+-3597,-3643,-3651,-3614,-3560,-3499,-3462,-3372,-3318,-3245,-3225,-3172,-3094,-3047,-2950,-2843,-2688,-2622,-2541,-2447,
+-2402,-2378,-2360,-2366,-2369,-2387,-2371,-2359,-2348,-2339,-2306,-2278,-2221,-2185,-2165,-2152,-2150,-2153,-2111,-2043,
+-2040,-2026,-2063,-2132,-2205,-2275,-2315,-2325,-2329,-2355,-2413,-2478,-2528,-2578,-2616,-2650,-2691,-2730,-2764,-2769,
+-2755,-2738,-2716,-2704,-2686,-2684,-2698,-2742,-2799,-2847,-2869,-2869,-2846,-2815,-2777,-2741,-2697,-2668,-2655,-2647,
+-2647,-2644,-2649,-2655,-2652,-2639,-2628,-2628,-2628,-2618,-2614,-2608,-2629,-2668,-2696,-2733,-2784,-2842,-2898,-2965,
+-3030,-3076,-3101,-3122,-3136,-3122,-3064,-2915,-2771,-2692,-2629,-2572,-2511,-2462,-2431,-2434,-2459,-2490,-2537,-2580,
+-2623,-2649,-2681,-2729,-2797,-2835,-2832,-2898,-2936,-2980,-3051,-3183,-3275,-3274,-3281,-3327,-3404,-3515,-3650,-3753,
+-3768,-3772,-3842,-3998,-4328,-4467,-4481,-4471,-4468,-4479,-4495,-4514,-4527,-4537,-4563,-4618,-4683,-4754,-4815,-4869,
+-4914,-4960,-5010,-5064,-5100,-5132,-5151,-5171,-5177,-5178,-5172,-5169,-5161,-5143,-5116,-5094,-5070,-5032,-4984,-4938,
+-4898,-4873,-4844,-4826,-4810,-4794,-4777,-4779,-4763,-4726,-4729,-4750,-4757,-4746,-4744,-4737,-4739,-4745,-4748,-4752,
+-4748,-4735,-4728,-4712,-4698,-4689,-4685,-4661,-4643,-4630,-4600,-4570,-4555,-4506,-4478,-4432,-4385,-4349,-4308,-4252,
+-4209,-4164,-4105,-4065,-4007,-3960,-3914,-3848,-3787,-3729,-3663,-3604,-3539,-3465,-3404,-3340,-3270,-3206,-3137,-3062,
+-2994,-2905,-2820,-2728,-2659,-2578,-2494,-2403,-2307,-2224,-2131,-2037,-1957,-1871,-1785,-1686,-1605,-1501,-1407,-1297,
+-1222,-1132,-1027,-939,-838,-735,-650,-564,-464,-359,-241,-120,-20,41,86,203,259,285,295,333,
+383,468,535,573,622,678,728,775,816,853,899,944,992,1027,1074,1122,1169,1210,1253,1302,
+1343,1392,1436,1478,1524,1561,1602,1654,1711,1746,1796,1825,1855,1897,1934,1970,1997,2038,2062,2112,
+2163,2209,2249,2290,2330,2374,2406,2434,2462,2498,2506,2517,2511,2512,2513,2514,2523,2533,2547,2562,
+2590,2617,2637,2646,2667,2667,2672,2670,2664,2661,2659,2658,2653,2657,2654,2645,2647,2656,2668,2701,
+2723,2764,2808,2850,2888,2923,2957,2991,3036,3093,3151,3209,3268,3328,3397,3483,3587,3801,4040,3842,
+3790,3819,3829,3861,3841,3843,3996,4296,4274,4060,3895,3876,3860,3847,3835,3853,3890,3918,3932,3946,
+3967,3985,3968,3950,3924,3920,3939,3964,3969,3962,3954,3941,3925,3914,3904,3901,3889,3854,3800,3747,
+3702,3664,3631,3610,3596,3588,3583,3581,3574,3574,3570,3559,3543,3533,3524,3511,3487,3448,3396,3328,
+3244,3160,3088,3026,2974,2918,2863,2818,2795,2777,2760,2704,2723,2741,2742,2722,2699,2678,2646,2620,
+2616,2616,2648,2679,2732,2776,2788,2815,2845,2863,2859,2855,2888,2911,2917,2891,2858,2826,2813,2797,
+2793,2805,2838,2871,2851,2840,2854,2851,2843,2853,2869,2886,2908,2935,2946,2950,2969,2969,2971,2983,
+2991,2986,2969,2955,2938,2916,2904,2895,2873,2858,2853,2856,2866,2863,2869,2877,2881,2901,2942,2998,
+3037,3002,2944,2884,2825,2743,2671,2617,2579,2528,2481,2429,2369,2336,2334,2323,2281,2248,2204,2149,
+2109,2093,2091,2089,2074,2038,1979,1906,1835,1769,1691,1585,1480,1450,1432,1434,1436,1438,1427,1449,
+1476,1466,1446,1401,1365,1371,1386,1398,1412,1419,1403,1385,1367,1351,1331,1337,1362,1366,1395,1440,
+1507,1530,1571,1650,1627,1562,1442,1367,1276,1313,1268,1261,1272,1305,1365,1460,1529,1572,1637,1558,
+1442,1396,1380,1353,1289,1255,1248,1252,1240,1215,1186,1178,1141,1114,1076,1030,1004,991,877,794,
+714,648,580,498,365,247,141,-2,-135,-225,-267,-284,-338,-422,-519,-618,-730,-850,-976,-1086,
+-1202,-1328,-1441,-1538,-1648,-1761,-1861,-1966,-2077,-2195,-2312,-2421,-2510,-2577,-2626,-2661,-2689,-2709,-2711,-2687,
+-2629,-2541,-2425,-2365,-2333,-2290,-2202,-2159,-2120,-2116,-2127,-2230,-2283,-2410,-2512,-2585,-2590,-2641,-2632,-2524,
+-2349,-2120,-1917,-1896,-1945,-2011,-2100,-2169,-2201,-2194,-2239,-2311,-2351,-2339,-2303,-2291,-2324,-2412,-2543,-2620,
+-2707,-2794,-2916,-3018,-3103,-3160,-3167,-3160,-3128,-3069,-3010,-2963,-2949,-2970,-3075,-3201,-3343,-3440,-3613,-3733,
+-3893,-4152,-4267,-4284,-4241,-4194,-4198,-4275,-4383,-4466,-4531,-4579,-4629,-4672,-4690,-4682,-4646,-4615,-4584,-4577,
+-4605,-4646,-4652,-4664,-4674,-4694,-4708,-4710,-4725,-4764,-4805,-4750,-4736,-4769,-4830,-4932,-5018,-5122,-5277,-5390,
+-5459,-5512,-5584,-5662,-5744,-5849,-5960,-6065,-6156,-6242,-6319,-6385,-6437,-6488,-6527,-6561,-6572,-6571,-6551,-6515,
+-6479,-6454,-6437,-6404,-6360,-6319,-6272,-6205,-6137,-6035,-5874,-5628,-5402,-5195,-5000,-4658,-4378,-4077,-3996,-3920,
+-4065,-3932,-3854,-3584,-3521,-3643,-3427,-3306,-3324,-3344,-3425,-3518,-3594,-3832,-3778,-3706,-3740,-3738,-3720,-3590,
+-3703,-3962,-4310,-4622,-4676,-4902,-5133,-5273,-5534,-5594,-5574,-5527,-5465,-5392,-5296,-5162,-4934,-4648,-4350,-4254,
+-4393,-4408,-4387,-4343,-4191,-4099,-3999,-3893,-3763,-3710,-3570,-3540,-3516,-3466,-3383,-3348,-3280,-3242,-3163,-3271,
+-3299,-3311,-3284,-3415,-3430,-3376,-3411,-3489,-3436,-3408,-3397,-3341,-3309,-3304,-3286,-3272,-3255,-3219,-3164,-3093,
+-3019,-2954,-2895,-2817,-2759,-2661,-2609,-2502,-2385,-2292,-2236,-2169,-2124,-2036,-1944,-1973,-1931,-1873,-1805,-1780,
+-1716,-1651,-1573,-1497,-1420,-1341,-1230,-1121,-1023,-966,-889,-814,-720,-629,-541,-434,-347,-224,-146,-2,
+111,241,329,388,472,569,675,837,988,1062,1102,1164,1183,1240,1349,1445,1519,1587,1657,1714,
+1786,1865,1940,2021,2103,2187,2263,2337,2416,2504,2593,2682,2773,2868,2944,2990,2979,3004,3051,3114,
+3151,3179,3182,3168,3107,3026,2916,2792,2625,2486,2465,2491,2449,2457,2554,2709,2870,3026,3163,3249,
+3328,3367,3399,3421,3435,3447,3468,3494,3517,3550,3615,3689,3709,3760,3789,3812,3852,3902,3942,3992,
+4015,4054,4095,4123,4139,4163,4201,4273,4337,4363,4353,4341,4354,4341,4275,4107,3967,4038,4330,4742,
+5051,4709,4057,3341,2857,2804,2966,3160,3347,3455,3444,3434,3467,3426,3399,3355,3288,3242,3194,3133,
+3074,3004,2931,2864,2802,2759,2699,2621,2542,2474,2420,2376,2338,2290,2237,2187,2145,2126,2131,2108,
+1960,1907,1875,1780,1685,1641,1597,1546,1506,1478,1453,1421,1382,1330,1273,1222,1173,1122,1071,1026,
+981,945,905,867,828,792,763,737,704,662,623,583,531,480,441,415,397,384,376,352,
+302,253,215,184,156,134,121,106,90,59,19,-16,-68,-96,-56,-47,-45,-186,-220,-235,
+-253,-277,-307,-340,-364,-375,-373,-417,-469,-502,-516,-526,-544,-570,-595,-616,-625,-641,-647,-643,
+-646,-656,-665,-668,-668,-666,-665,-664,-662,-652,-629,-601,-584,-568,-556,-545,-533,-526,-511,-486,
+-463,-451,-431,-416,-406,-399,-393,-399,-406,-425,-442,-452,-461,-472,-473,-460,-418,-329,-297,-264,
+-273,-291,-304,-296,-277,-233,-146,-111,-110,-117,-235,-260,-360,-411,-425,-415,-393,-361,-321,-284,
+-247,-208,-178,-156,-141,-122,-94,-59,-28,-6,24,55,82,104,124,142,154,164,170,182,
+193,197,200,200,202,196,189,179,164,151,132,123,106,87,60,36,23,12,6,2,
+-7,-30,-64,-80,-69,-54,-89,-133,-144,-163,-181,-199,-223,-277,-318,-338,-359,-401,-441,-473,
+-501,-536,-563,-595,-631,-657,-688,-717,-745,-771,-793,-822,-853,-878,-904,-927,-949,-971,-989,-1004,
+-1023,-1046,-1070,-1099,-1132,-1156,-1180,-1202,-1222,-1243,-1271,-1306,-1334,-1357,-1381,-1404,-1431,-1455,-1480,-1511,
+-1536,-1562,-1588,-1619,-1643,-1673,-1708,-1739,-1765,-1794,-1818,-1848,-1875,-1904,-1944,-1994,-2042,-2086,-2124,-2156,
+-2196,-2232,-2267,-2305,-2352,-2392,-2405,-2476,-2523,-2556,-2613,-2640,-2671,-2719,-2761,-2800,-2836,-2876,-2913,-2936,
+-2970,-3005,-3038,-3069,-3097,-3132,-3165,-3203,-3235,-3266,-3292,-3320,-3357,-3398,-3432,-3460,-3513,-3555,-3597,-3636,
+-3668,-3705,-3736,-3769,-3802,-3834,-3868,-3906,-3944,-3980,-4012,-4034,-4075,-4113,-4136,-4175,-4181,-4204,-4237,-4269,
+-4305,-4332,-4353,-4370,-4381,-4388,-4399,-4419,-4441,-4454,-4466,-4477,-4490,-4500,-4505,-4518,-4526,-4535,-4540,-4552,
+-4535,-4562,-4552,-4537,-4525,-4517,-4515,-4512,-4502,-4491,-4475,-4470,-4468,-4464,-4445,-4424,-4405,-4389,-4367,-4344,
+-4319,-4305,-4289,-4281,-4272,-4276,-4294,-4329,-4350,-4310,-4145,-3955,-3802,-3696,-3680,-3712,-3672,-3673,-3630,-3507,
+-3512,-3505,-3585,-3609,-3612,-3606,-3564,-3531,-3432,-3360,-3309,-3235,-3188,-3138,-3096,-2986,-2868,-2786,-2652,-2525,
+-2519,-2436,-2388,-2375,-2395,-2382,-2387,-2353,-2355,-2337,-2308,-2284,-2239,-2191,-2188,-2164,-2136,-2123,-2105,-2081,
+-2018,-2023,-2034,-2042,-2135,-2197,-2240,-2256,-2261,-2252,-2287,-2364,-2441,-2511,-2561,-2590,-2632,-2677,-2713,-2733,
+-2722,-2695,-2676,-2662,-2644,-2648,-2681,-2744,-2824,-2888,-2938,-2959,-2952,-2938,-2921,-2895,-2847,-2794,-2758,-2748,
+-2736,-2726,-2726,-2740,-2765,-2765,-2752,-2723,-2702,-2672,-2646,-2634,-2606,-2607,-2616,-2619,-2632,-2655,-2693,-2751,
+-2826,-2891,-2945,-2982,-3017,-3058,-3085,-3084,-3032,-2863,-2716,-2628,-2562,-2504,-2456,-2426,-2436,-2450,-2489,-2533,
+-2576,-2609,-2633,-2646,-2680,-2734,-2775,-2795,-2852,-2896,-2939,-3010,-3128,-3204,-3183,-3176,-3219,-3311,-3459,-3646,
+-3789,-3810,-3778,-3826,-3985,-4309,-4459,-4464,-4444,-4434,-4442,-4457,-4475,-4491,-4499,-4537,-4599,-4675,-4750,-4812,
+-4859,-4904,-4953,-5002,-5051,-5093,-5128,-5149,-5163,-5175,-5178,-5178,-5171,-5167,-5154,-5127,-5110,-5080,-5043,-5000,
+-4954,-4919,-4892,-4864,-4831,-4823,-4835,-4810,-4803,-4805,-4784,-4768,-4754,-4779,-4794,-4792,-4796,-4800,-4806,-4807,
+-4815,-4804,-4815,-4813,-4784,-4774,-4752,-4729,-4712,-4711,-4666,-4652,-4632,-4593,-4561,-4539,-4497,-4442,-4404,-4362,
+-4309,-4265,-4222,-4169,-4122,-4077,-4025,-3966,-3912,-3841,-3786,-3721,-3651,-3597,-3529,-3462,-3377,-3303,-3246,-3188,
+-3122,-3040,-2952,-2865,-2792,-2694,-2608,-2528,-2439,-2353,-2279,-2190,-2089,-2000,-1910,-1834,-1740,-1634,-1537,-1447,
+-1345,-1257,-1160,-1075,-968,-869,-784,-704,-620,-501,-384,-262,-147,-66,-46,58,133,188,209,239,
+285,321,393,445,515,548,607,666,715,757,802,825,865,902,951,1007,1057,1094,1132,1179,
+1222,1263,1316,1348,1407,1443,1491,1533,1581,1608,1639,1696,1739,1771,1803,1842,1873,1906,1947,1990,
+2039,2086,2135,2169,2208,2251,2281,2317,2343,2383,2417,2433,2440,2453,2453,2458,2463,2485,2494,2507,
+2533,2561,2605,2619,2647,2653,2653,2652,2646,2648,2642,2638,2634,2619,2613,2603,2607,2622,2625,2634,
+2662,2691,2734,2780,2832,2876,2915,2953,2988,3031,3089,3144,3201,3266,3329,3395,3459,3533,3637,3733,
+3655,3610,3594,3578,3554,3536,3567,3668,3791,3774,3689,3598,3566,3584,3631,3688,3771,3851,3870,3902,
+3928,3966,3973,3961,3937,3924,3937,3964,3976,3986,3988,3973,3944,3915,3895,3885,3893,3893,3864,3816,
+3766,3714,3661,3608,3565,3535,3523,3516,3515,3509,3507,3496,3478,3457,3447,3440,3435,3416,3383,3342,
+3286,3212,3130,3051,2984,2923,2864,2806,2746,2708,2698,2704,2607,2639,2684,2684,2655,2619,2601,2583,
+2578,2579,2587,2612,2649,2692,2725,2748,2784,2825,2861,2885,2902,2923,2946,2948,2928,2908,2897,2881,
+2852,2838,2839,2857,2896,2881,2869,2863,2873,2882,2891,2895,2899,2914,2941,2956,2953,2952,2939,2952,
+2957,2967,2957,2937,2910,2885,2871,2861,2845,2826,2815,2814,2833,2833,2819,2817,2825,2841,2859,2913,
+2978,3037,3034,2987,2913,2822,2736,2661,2612,2576,2534,2481,2424,2367,2333,2321,2317,2280,2233,2192,
+2154,2114,2086,2066,2051,2030,1986,1929,1861,1794,1732,1656,1562,1454,1424,1429,1439,1437,1419,1417,
+1424,1439,1444,1430,1372,1346,1336,1351,1365,1380,1389,1377,1368,1355,1342,1319,1287,1264,1267,1321,
+1376,1434,1467,1504,1580,1618,1562,1468,1349,1273,1237,1233,1227,1204,1229,1292,1372,1480,1529,1577,
+1493,1417,1432,1393,1346,1301,1266,1257,1262,1250,1223,1190,1164,1134,1099,1067,1038,1028,982,913,
+839,764,669,581,515,414,296,173,27,-104,-210,-258,-273,-318,-386,-483,-598,-712,-832,-948,
+-1063,-1185,-1319,-1441,-1547,-1661,-1780,-1886,-1998,-2111,-2236,-2353,-2455,-2540,-2604,-2651,-2688,-2717,-2748,-2765,
+-2770,-2760,-2722,-2662,-2563,-2462,-2432,-2377,-2278,-2280,-2298,-2346,-2418,-2558,-2689,-2758,-2833,-2865,-2895,-2858,
+-2737,-2520,-2264,-2016,-1947,-2019,-2082,-2159,-2238,-2289,-2311,-2338,-2387,-2434,-2449,-2432,-2404,-2402,-2478,-2591,
+-2698,-2782,-2861,-2914,-2991,-3090,-3150,-3139,-3129,-3076,-3030,-3001,-2984,-2997,-3016,-3139,-3307,-3432,-3554,-3719,
+-3872,-4035,-4250,-4336,-4342,-4297,-4254,-4252,-4319,-4413,-4501,-4577,-4622,-4636,-4640,-4639,-4628,-4590,-4556,-4532,
+-4535,-4574,-4614,-4629,-4648,-4673,-4702,-4734,-4753,-4769,-4807,-4801,-4739,-4740,-4797,-4885,-4982,-5067,-5190,-5331,
+-5407,-5456,-5511,-5587,-5682,-5790,-5900,-5997,-6085,-6165,-6245,-6309,-6373,-6442,-6507,-6562,-6601,-6634,-6653,-6668,
+-6681,-6679,-6674,-6672,-6653,-6635,-6613,-6577,-6520,-6467,-6406,-6309,-6182,-6056,-5912,-5663,-5320,-5046,-4824,-4668,
+-4511,-4575,-4409,-4375,-4134,-4191,-4188,-3973,-3823,-3747,-3689,-3656,-3886,-3965,-4133,-4109,-3990,-4014,-3981,-3881,
+-3887,-4064,-4341,-4669,-4876,-4956,-5162,-5423,-5645,-5749,-5738,-5678,-5601,-5500,-5356,-5201,-5055,-4895,-4678,-4530,
+-4381,-4464,-4551,-4517,-4357,-4264,-4205,-4043,-3954,-3852,-3744,-3655,-3568,-3539,-3531,-3467,-3389,-3311,-3257,-3294,
+-3295,-3377,-3335,-3360,-3382,-3383,-3357,-3362,-3347,-3315,-3279,-3280,-3247,-3215,-3204,-3166,-3157,-3172,-3149,-3112,
+-3046,-2986,-2912,-2870,-2787,-2711,-2663,-2598,-2493,-2383,-2304,-2252,-2172,-2095,-2017,-2004,-1974,-1929,-1869,-1802,
+-1740,-1667,-1603,-1522,-1462,-1380,-1301,-1173,-1084,-990,-905,-835,-755,-675,-596,-509,-382,-277,-212,-107,
+11,168,250,358,438,515,626,720,905,1024,1068,1133,1200,1195,1283,1376,1468,1548,1623,1683,
+1743,1816,1901,1979,2061,2142,2218,2298,2379,2455,2543,2632,2725,2808,2898,2976,2988,2997,3024,3063,
+3129,3173,3197,3193,3196,3123,2983,2846,2643,2532,2438,2420,2430,2408,2485,2616,2792,2960,3058,3159,
+3271,3308,3374,3424,3450,3462,3465,3479,3504,3532,3557,3606,3725,3756,3764,3797,3827,3870,3907,3958,
+4002,4048,4089,4120,4140,4169,4190,4230,4260,4315,4376,4393,4356,4379,4392,4382,4209,3985,4009,4248,
+4682,4970,4642,4040,3361,2886,2862,3065,3268,3435,3486,3487,3566,3720,3487,3399,3364,3331,3290,3242,
+3185,3104,3029,2967,2917,2882,2868,2828,2707,2612,2550,2500,2456,2415,2368,2310,2251,2228,2258,2401,
+2236,2095,1989,1856,1769,1706,1659,1618,1581,1551,1536,1517,1484,1447,1399,1341,1283,1223,1176,1122,
+1070,1032,985,940,908,870,837,805,783,757,725,686,637,577,528,491,466,437,417,398,
+368,333,297,257,224,199,178,162,139,113,85,49,-4,-39,-59,-96,-105,-117,-156,-182,
+-204,-228,-253,-285,-312,-337,-357,-379,-418,-455,-463,-474,-499,-526,-555,-573,-585,-602,-603,-611,
+-618,-628,-638,-648,-646,-642,-641,-638,-636,-632,-622,-600,-576,-564,-562,-547,-536,-532,-522,-497,
+-475,-451,-430,-407,-393,-384,-382,-376,-374,-381,-399,-418,-430,-444,-460,-467,-461,-434,-398,-362,
+-337,-320,-298,-260,-216,-138,-82,-79,-157,-174,-198,-296,-348,-373,-389,-384,-371,-358,-334,-305,
+-277,-248,-214,-183,-154,-136,-112,-83,-52,-19,12,51,87,116,137,152,164,182,200,210,
+215,210,215,223,231,235,238,245,241,233,225,208,196,180,153,126,105,82,66,59,
+59,59,46,15,-20,23,21,-21,-25,-3,-63,-102,-135,-163,-168,-207,-230,-292,-327,-362,
+-400,-434,-469,-502,-533,-566,-598,-627,-656,-688,-714,-741,-774,-803,-833,-860,-887,-906,-928,-952,
+-973,-998,-1023,-1048,-1079,-1109,-1135,-1158,-1179,-1203,-1224,-1255,-1284,-1311,-1341,-1370,-1397,-1424,-1453,-1485,
+-1515,-1538,-1565,-1589,-1611,-1623,-1653,-1683,-1703,-1732,-1769,-1798,-1824,-1855,-1886,-1923,-1980,-2024,-2058,-2094,
+-2130,-2168,-2205,-2238,-2279,-2325,-2367,-2419,-2452,-2503,-2532,-2576,-2616,-2659,-2698,-2732,-2768,-2812,-2858,-2887,
+-2923,-2955,-2985,-3023,-3057,-3086,-3116,-3159,-3189,-3222,-3256,-3289,-3321,-3356,-3392,-3427,-3464,-3508,-3545,-3586,
+-3629,-3663,-3705,-3743,-3772,-3801,-3837,-3870,-3901,-3930,-3970,-4011,-4047,-4084,-4117,-4140,-4167,-4185,-4211,-4247,
+-4287,-4320,-4346,-4365,-4379,-4386,-4398,-4407,-4427,-4449,-4470,-4487,-4509,-4514,-4516,-4522,-4528,-4536,-4544,-4560,
+-4564,-4579,-4571,-4562,-4556,-4546,-4538,-4530,-4524,-4513,-4504,-4498,-4493,-4489,-4484,-4459,-4438,-4423,-4399,-4390,
+-4389,-4374,-4344,-4325,-4302,-4287,-4271,-4274,-4286,-4304,-4330,-4291,-4112,-3928,-3809,-3717,-3686,-3668,-3732,-3730,
+-3642,-3560,-3503,-3554,-3594,-3622,-3604,-3581,-3540,-3474,-3390,-3331,-3264,-3216,-3158,-3109,-3033,-2887,-2785,-2646,
+-2550,-2523,-2433,-2391,-2362,-2359,-2352,-2360,-2342,-2304,-2283,-2270,-2255,-2219,-2190,-2147,-2115,-2101,-2104,-2099,
+-2073,-2001,-1981,-2044,-2004,-2110,-2197,-2210,-2196,-2205,-2204,-2226,-2288,-2379,-2470,-2529,-2563,-2606,-2646,-2681,
+-2679,-2655,-2621,-2597,-2590,-2580,-2617,-2687,-2781,-2881,-2957,-3001,-3025,-3037,-3039,-3028,-2993,-2944,-2892,-2855,
+-2831,-2814,-2809,-2811,-2829,-2854,-2860,-2842,-2801,-2756,-2706,-2671,-2650,-2631,-2620,-2604,-2588,-2593,-2607,-2623,
+-2660,-2701,-2744,-2776,-2816,-2857,-2914,-2973,-3013,-3014,-2937,-2755,-2636,-2543,-2491,-2452,-2445,-2467,-2511,-2551,
+-2565,-2573,-2579,-2597,-2607,-2629,-2661,-2709,-2792,-2844,-2875,-2919,-3003,-3098,-3140,-3105,-3060,-3079,-3154,-3309,
+-3543,-3714,-3772,-3767,-3832,-4000,-4299,-4445,-4444,-4419,-4402,-4399,-4411,-4429,-4439,-4460,-4516,-4588,-4666,-4735,
+-4801,-4856,-4902,-4949,-4997,-5045,-5087,-5126,-5156,-5159,-5169,-5173,-5184,-5184,-5177,-5162,-5142,-5118,-5082,-5050,
+-5017,-4981,-4942,-4915,-4900,-4885,-4883,-4869,-4863,-4837,-4835,-4833,-4824,-4811,-4810,-4817,-4844,-4853,-4859,-4869,
+-4871,-4873,-4865,-4858,-4861,-4864,-4855,-4822,-4793,-4762,-4748,-4738,-4702,-4660,-4631,-4596,-4557,-4530,-4488,-4455,
+-4412,-4375,-4321,-4279,-4228,-4183,-4121,-4083,-4022,-3967,-3894,-3826,-3778,-3699,-3632,-3542,-3472,-3407,-3339,-3278,
+-3207,-3131,-3056,-2967,-2886,-2823,-2756,-2684,-2572,-2479,-2405,-2318,-2224,-2144,-2063,-1962,-1859,-1777,-1693,-1592,
+-1480,-1393,-1313,-1211,-1118,-1018,-931,-848,-746,-659,-561,-459,-334,-236,-152,-128,-10,57,93,111,
+156,207,268,332,390,458,491,550,587,629,660,719,761,808,839,882,919,977,1014,1056,
+1104,1141,1190,1232,1271,1327,1370,1396,1432,1483,1539,1591,1621,1660,1678,1715,1750,1790,1829,1870,
+1904,1960,2004,2052,2085,2126,2163,2195,2227,2258,2294,2325,2355,2372,2399,2398,2393,2409,2438,2461,
+2482,2516,2534,2562,2579,2596,2615,2625,2646,2650,2648,2639,2620,2608,2589,2579,2578,2569,2574,2596,
+2613,2635,2678,2728,2778,2818,2866,2913,2954,2992,3031,3084,3144,3207,3277,3336,3392,3441,3477,3505,
+3529,3522,3494,3464,3427,3385,3365,3358,3381,3422,3423,3395,3377,3378,3434,3520,3612,3714,3796,3835,
+3881,3916,3949,3954,3948,3931,3921,3937,3957,3970,3994,4002,3984,3951,3909,3881,3872,3889,3902,3884,
+3840,3781,3716,3639,3563,3504,3467,3452,3447,3447,3449,3451,3445,3427,3410,3400,3395,3382,3357,3323,
+3287,3245,3182,3109,3027,2952,2888,2822,2760,2694,2645,2615,2607,2555,2570,2628,2637,2599,2561,2544,
+2537,2544,2554,2570,2596,2638,2671,2702,2721,2759,2809,2856,2897,2934,2968,2995,3011,2998,2982,2990,
+2973,2937,2896,2888,2893,2919,2936,2942,2932,2912,2915,2932,2939,2935,2935,2952,2959,2962,2959,2939,
+2946,2947,2951,2926,2892,2864,2842,2832,2827,2806,2783,2773,2778,2797,2796,2785,2782,2790,2809,2836,
+2887,2958,3022,3027,2976,2902,2821,2737,2657,2610,2581,2549,2500,2452,2404,2360,2326,2298,2266,2227,
+2191,2143,2106,2083,2046,2011,1975,1929,1871,1811,1752,1695,1626,1544,1449,1421,1431,1447,1453,1429,
+1432,1414,1414,1424,1387,1320,1293,1283,1289,1318,1333,1349,1346,1340,1340,1329,1321,1305,1264,1258,
+1279,1315,1360,1399,1418,1495,1579,1602,1501,1344,1262,1229,1181,1157,1181,1193,1230,1308,1387,1409,
+1409,1386,1385,1422,1381,1334,1315,1289,1284,1289,1269,1254,1207,1155,1115,1099,1074,1058,1030,985,
+938,863,770,672,567,477,377,274,169,41,-74,-172,-225,-242,-285,-349,-453,-583,-695,-812,
+-923,-1036,-1155,-1296,-1430,-1551,-1672,-1798,-1909,-2021,-2136,-2266,-2384,-2488,-2572,-2635,-2678,-2714,-2745,-2778,
+-2807,-2825,-2835,-2824,-2806,-2770,-2714,-2640,-2561,-2524,-2523,-2522,-2556,-2664,-2776,-2880,-2989,-3024,-3034,-3003,
+-2915,-2785,-2603,-2322,-2000,-1939,-1976,-2070,-2138,-2217,-2296,-2327,-2328,-2353,-2388,-2406,-2434,-2437,-2463,-2544,
+-2639,-2730,-2809,-2883,-2946,-3016,-3085,-3136,-3145,-3126,-3088,-3043,-3025,-3056,-3110,-3182,-3275,-3404,-3533,-3681,
+-3821,-3968,-4146,-4329,-4382,-4388,-4351,-4316,-4326,-4382,-4459,-4543,-4609,-4644,-4640,-4612,-4594,-4575,-4542,-4502,
+-4482,-4476,-4520,-4560,-4600,-4641,-4680,-4721,-4762,-4803,-4827,-4832,-4756,-4732,-4757,-4852,-4957,-5071,-5188,-5303,
+-5397,-5435,-5477,-5540,-5631,-5739,-5840,-5934,-6023,-6097,-6167,-6232,-6295,-6358,-6428,-6492,-6548,-6590,-6628,-6664,
+-6701,-6732,-6760,-6770,-6776,-6777,-6770,-6756,-6737,-6703,-6666,-6637,-6586,-6507,-6412,-6295,-6126,-5907,-5664,-5415,
+-5248,-5122,-5052,-4905,-4775,-4666,-4664,-4712,-4649,-4510,-4369,-4198,-4135,-4306,-4376,-4490,-4447,-4392,-4368,-4293,
+-4279,-4378,-4497,-4708,-4962,-5122,-5277,-5456,-5631,-5759,-5810,-5782,-5704,-5591,-5414,-5185,-4978,-4906,-4875,-4714,
+-4541,-4434,-4435,-4575,-4571,-4351,-4228,-4137,-4035,-3931,-3890,-3758,-3676,-3657,-3574,-3575,-3518,-3424,-3405,-3407,
+-3376,-3348,-3378,-3321,-3446,-3374,-3332,-3347,-3319,-3259,-3229,-3197,-3183,-3182,-3175,-3152,-3154,-3137,-3115,-3075,
+-3013,-2977,-2921,-2858,-2845,-2783,-2708,-2630,-2551,-2458,-2386,-2316,-2242,-2175,-2074,-2044,-2012,-1958,-1909,-1838,
+-1775,-1710,-1642,-1562,-1493,-1417,-1340,-1230,-1148,-1053,-959,-858,-781,-702,-625,-554,-451,-348,-266,-170,
+-34,111,194,307,381,498,571,663,824,963,1044,1081,1136,1217,1240,1304,1408,1505,1607,1671,
+1704,1781,1861,1943,2017,2096,2171,2251,2331,2415,2496,2578,2666,2750,2833,2918,2970,2977,3002,3029,
+3078,3141,3182,3211,3239,3231,3086,2956,2775,2587,2493,2432,2429,2422,2438,2573,2744,2926,3064,3162,
+3244,3326,3370,3396,3468,3468,3493,3524,3501,3515,3543,3564,3606,3684,3758,3824,3824,3854,3884,3921,
+3963,4011,4053,4095,4131,4153,4191,4211,4236,4254,4285,4370,4384,4395,4395,4385,4344,4206,3984,3965,
+4164,4613,4812,4528,3981,3379,2945,2918,3108,3294,3416,3479,3521,3579,3619,3503,3449,3416,3376,3327,
+3266,3206,3134,3050,2985,2933,2916,2989,2964,2752,2658,2608,2568,2531,2492,2444,2389,2334,2334,2310,
+2248,2173,2128,2035,1917,1839,1778,1729,1685,1647,1612,1593,1576,1541,1503,1458,1401,1334,1268,1216,
+1172,1124,1089,1097,1019,963,925,885,855,840,814,789,744,685,631,591,548,511,478,458,
+436,419,392,357,316,274,238,208,178,153,148,109,56,23,1,-20,-51,-74,-97,-119,
+-147,-174,-202,-228,-254,-278,-295,-314,-356,-399,-402,-409,-405,-458,-498,-521,-537,-552,-553,-563,
+-580,-591,-604,-613,-615,-613,-611,-608,-606,-603,-599,-589,-577,-557,-551,-549,-537,-531,-525,-512,
+-490,-465,-405,-411,-393,-379,-373,-366,-367,-366,-372,-383,-395,-410,-431,-444,-446,-441,-420,-395,
+-371,-353,-328,-275,-119,-81,71,239,36,-124,-83,-68,-272,-335,-336,-318,-299,-292,-287,-282,
+-272,-259,-239,-211,-176,-143,-116,-94,-69,-29,2,25,61,97,126,154,176,204,213,284,
+272,262,235,252,271,295,285,278,283,283,286,287,275,263,250,225,202,178,154,131,
+117,112,109,100,77,44,40,86,64,22,45,-27,-46,-41,-99,-137,-162,-191,-219,-249,
+-285,-325,-355,-388,-425,-454,-488,-522,-555,-591,-626,-660,-694,-728,-758,-786,-812,-837,-861,-894,
+-921,-944,-966,-996,-1022,-1051,-1082,-1109,-1140,-1161,-1185,-1206,-1236,-1266,-1297,-1329,-1356,-1382,-1409,-1445,
+-1474,-1503,-1531,-1562,-1589,-1605,-1619,-1644,-1668,-1685,-1717,-1750,-1778,-1804,-1827,-1870,-1906,-1945,-1986,-2022,
+-2059,-2101,-2139,-2176,-2213,-2257,-2296,-2342,-2391,-2435,-2471,-2501,-2545,-2584,-2625,-2664,-2701,-2740,-2785,-2823,
+-2861,-2892,-2927,-2962,-3009,-3051,-3075,-3106,-3141,-3172,-3207,-3243,-3281,-3314,-3351,-3388,-3422,-3462,-3513,-3552,
+-3586,-3621,-3661,-3699,-3731,-3764,-3800,-3835,-3871,-3901,-3940,-3978,-4017,-4046,-4076,-4111,-4143,-4166,-4198,-4235,
+-4262,-4300,-4335,-4351,-4367,-4382,-4402,-4415,-4431,-4452,-4475,-4498,-4517,-4526,-4529,-4525,-4530,-4534,-4547,-4559,
+-4575,-4574,-4591,-4583,-4584,-4581,-4578,-4576,-4566,-4556,-4545,-4526,-4520,-4518,-4509,-4505,-4475,-4469,-4451,-4445,
+-4434,-4410,-4390,-4376,-4351,-4323,-4295,-4268,-4268,-4267,-4264,-4274,-4282,-4270,-4184,-3994,-3850,-3729,-3685,-3736,
+-3773,-3717,-3596,-3479,-3509,-3546,-3589,-3612,-3589,-3554,-3509,-3449,-3354,-3302,-3247,-3173,-3110,-3026,-2963,-2861,
+-2768,-2702,-2634,-2458,-2382,-2335,-2319,-2322,-2316,-2277,-2264,-2252,-2235,-2225,-2206,-2173,-2166,-2168,-2124,-2113,
+-2067,-2056,-2015,-1971,-2003,-2032,-2068,-2116,-2133,-2114,-2116,-2122,-2150,-2226,-2303,-2395,-2476,-2527,-2577,-2619,
+-2638,-2628,-2589,-2548,-2517,-2512,-2517,-2578,-2677,-2787,-2885,-2973,-3036,-3072,-3090,-3091,-3070,-3014,-2944,-2907,
+-2891,-2877,-2873,-2875,-2896,-2911,-2911,-2923,-2898,-2848,-2799,-2752,-2731,-2705,-2674,-2652,-2630,-2596,-2576,-2584,
+-2595,-2613,-2631,-2648,-2669,-2697,-2728,-2781,-2837,-2896,-2940,-2952,-2851,-2675,-2543,-2489,-2467,-2490,-2517,-2550,
+-2564,-2569,-2558,-2547,-2547,-2573,-2604,-2609,-2639,-2705,-2766,-2818,-2871,-2966,-3061,-3101,-3068,-3002,-3005,-3064,
+-3180,-3355,-3498,-3589,-3673,-3784,-4029,-4311,-4406,-4409,-4388,-4374,-4363,-4371,-4383,-4396,-4435,-4499,-4576,-4650,
+-4717,-4785,-4845,-4895,-4942,-4991,-5041,-5086,-5123,-5152,-5168,-5179,-5189,-5191,-5192,-5187,-5172,-5149,-5123,-5094,
+-5064,-5037,-5009,-4972,-4923,-4903,-4863,-4860,-4846,-4833,-4833,-4850,-4864,-4863,-4854,-4856,-4863,-4880,-4893,-4912,
+-4924,-4927,-4928,-4927,-4922,-4918,-4910,-4897,-4896,-4862,-4818,-4792,-4765,-4753,-4728,-4693,-4639,-4589,-4551,-4517,
+-4485,-4443,-4407,-4362,-4320,-4266,-4217,-4175,-4120,-4071,-4011,-3938,-3862,-3819,-3738,-3669,-3593,-3518,-3445,-3392,
+-3331,-3253,-3174,-3107,-3039,-2951,-2845,-2778,-2714,-2618,-2533,-2450,-2374,-2275,-2198,-2109,-2015,-1906,-1811,-1733,
+-1609,-1515,-1431,-1342,-1237,-1162,-1063,-993,-908,-797,-687,-580,-484,-369,-289,-256,-108,-50,-17,-1,
+28,78,139,227,284,339,400,456,499,536,572,617,633,678,727,768,809,858,908,952,
+985,1023,1071,1114,1166,1215,1263,1303,1348,1381,1413,1474,1493,1526,1556,1595,1626,1664,1700,1736,
+1783,1824,1881,1919,1961,2001,2043,2085,2110,2140,2181,2212,2248,2283,2313,2335,2346,2339,2365,2390,
+2431,2463,2504,2541,2557,2568,2559,2573,2586,2598,2608,2617,2625,2618,2597,2587,2562,2554,2549,2560,
+2580,2599,2629,2673,2721,2772,2824,2871,2925,2973,3020,3061,3108,3167,3221,3288,3347,3395,3425,3446,
+3451,3456,3444,3416,3372,3334,3281,3244,3218,3204,3205,3205,3216,3241,3293,3395,3526,3644,3720,3767,
+3817,3863,3903,3927,3927,3914,3906,3906,3937,3959,3983,4000,4011,3997,3969,3916,3874,3852,3867,3890,
+3871,3819,3753,3684,3601,3514,3444,3404,3383,3379,3382,3386,3397,3402,3395,3386,3375,3364,3340,3309,
+3275,3242,3206,3150,3083,3001,2922,2859,2791,2722,2660,2614,2574,2555,2541,2548,2577,2601,2568,2530,
+2517,2518,2528,2546,2570,2596,2630,2675,2698,2725,2765,2818,2870,2932,2988,3031,3077,3128,3125,3081,
+3080,3070,3029,2987,2968,2979,2993,3009,3010,2993,2977,2970,2981,2993,2986,2965,2962,2959,2957,2943,
+2933,2932,2928,2916,2886,2846,2821,2798,2788,2786,2768,2740,2736,2744,2756,2761,2756,2746,2751,2761,
+2800,2858,2933,2989,2998,2955,2880,2798,2729,2673,2625,2597,2562,2523,2486,2446,2402,2350,2289,2238,
+2206,2179,2147,2132,2093,2033,1972,1912,1853,1798,1752,1701,1654,1597,1533,1470,1430,1434,1441,1461,
+1449,1427,1403,1373,1354,1323,1290,1246,1229,1235,1268,1284,1292,1308,1316,1319,1317,1315,1298,1271,
+1222,1238,1267,1305,1341,1360,1416,1498,1537,1478,1329,1265,1229,1168,1129,1156,1196,1161,1217,1288,
+1285,1294,1318,1379,1390,1399,1339,1329,1292,1272,1281,1280,1246,1198,1158,1111,1108,1080,1049,1018,
+963,888,811,743,658,566,462,353,250,173,63,-53,-138,-191,-206,-237,-301,-404,-533,-666,
+-794,-907,-1013,-1127,-1264,-1404,-1541,-1676,-1795,-1919,-2032,-2155,-2290,-2415,-2517,-2608,-2665,-2706,-2741,-2770,
+-2806,-2841,-2875,-2889,-2898,-2902,-2903,-2892,-2857,-2799,-2773,-2788,-2806,-2842,-2907,-3003,-3100,-3145,-3130,-3087,
+-2994,-2866,-2751,-2609,-2342,-1992,-1945,-1956,-2011,-2076,-2168,-2226,-2250,-2276,-2297,-2349,-2380,-2409,-2467,-2547,
+-2615,-2692,-2781,-2843,-2875,-2934,-2985,-3047,-3103,-3125,-3105,-3063,-3034,-3039,-3109,-3210,-3353,-3478,-3553,-3668,
+-3802,-3919,-4071,-4242,-4379,-4409,-4406,-4387,-4381,-4399,-4447,-4505,-4569,-4622,-4645,-4631,-4580,-4541,-4518,-4496,
+-4472,-4444,-4424,-4496,-4552,-4593,-4640,-4694,-4742,-4792,-4826,-4840,-4796,-4722,-4738,-4810,-4932,-5048,-5168,-5282,
+-5363,-5422,-5452,-5499,-5582,-5675,-5773,-5853,-5933,-6014,-6085,-6156,-6215,-6278,-6340,-6396,-6447,-6491,-6532,-6574,
+-6618,-6665,-6711,-6754,-6782,-6800,-6809,-6804,-6803,-6795,-6782,-6761,-6738,-6714,-6672,-6603,-6521,-6410,-6270,-6112,
+-5954,-5811,-5738,-5624,-5463,-5419,-5338,-5266,-5227,-5157,-5016,-4864,-4741,-4683,-4742,-4799,-4806,-4771,-4787,-4768,
+-4750,-4752,-4788,-4849,-4933,-5054,-5197,-5341,-5469,-5588,-5709,-5773,-5736,-5605,-5413,-5192,-4974,-4933,-4859,-4875,
+-4818,-4732,-4653,-4525,-4596,-4574,-4402,-4200,-4150,-4019,-3935,-3873,-3783,-3720,-3685,-3645,-3611,-3551,-3453,-3491,
+-3454,-3453,-3419,-3340,-3312,-3327,-3411,-3260,-3292,-3265,-3209,-3179,-3161,-3141,-3136,-3115,-3115,-3108,-3089,-3057,
+-3007,-2958,-2921,-2877,-2840,-2805,-2751,-2678,-2588,-2490,-2428,-2366,-2303,-2240,-2167,-2077,-2029,-1982,-1935,-1865,
+-1819,-1775,-1695,-1616,-1536,-1458,-1381,-1296,-1198,-1098,-1003,-882,-807,-740,-662,-574,-495,-398,-328,-229,
+-99,20,140,238,316,423,516,617,742,861,991,1078,1090,1148,1224,1290,1360,1455,1554,1652,
+1702,1760,1834,1906,1977,2056,2128,2203,2286,2375,2460,2539,2615,2700,2786,2858,2914,2942,2958,2991,
+3028,3084,3141,3167,3214,3227,3210,3122,2895,2668,2567,2513,2459,2429,2417,2548,2719,2891,3030,3133,
+3251,3292,3369,3419,3459,3504,3492,3518,3544,3542,3551,3564,3609,3660,3738,3840,3898,3851,3866,3909,
+3935,3969,4013,4067,4109,4141,4206,4227,4235,4250,4270,4297,4365,4384,4399,4394,4373,4362,4285,4000,
+3900,4049,4439,4597,4332,3935,3493,3100,3069,3249,3386,3487,3514,3527,3534,3531,3519,3496,3454,3408,
+3352,3283,3217,3145,3065,2983,2917,2877,2865,2832,2744,2677,2645,2615,2591,2556,2513,2466,2408,2345,
+2279,2222,2194,2181,2086,1997,1927,1872,1814,1759,1713,1672,1647,1619,1592,1545,1497,1436,1378,1308,
+1252,1209,1168,1134,1126,1063,1010,972,935,912,889,869,841,795,739,691,645,599,552,519,
+501,494,482,464,425,379,328,280,226,195,184,147,112,83,69,47,26,2,-23,-50,
+-81,-115,-148,-175,-190,-217,-237,-249,-289,-340,-349,-369,-378,-376,-423,-453,-481,-498,-493,-508,
+-528,-549,-560,-570,-576,-577,-577,-578,-579,-578,-574,-573,-569,-556,-548,-541,-533,-527,-527,-518,
+-498,-477,-455,-425,-407,-386,-376,-373,-372,-373,-371,-373,-374,-381,-395,-414,-418,-412,-403,-387,
+-371,-354,-333,-313,-280,-212,-133,-23,66,-23,-161,-166,-147,-245,-275,-241,-186,-144,-133,-146,
+-172,-198,-216,-209,-181,-142,-101,-68,-56,-49,-30,3,39,84,124,156,176,180,181,191,
+218,262,267,258,299,331,418,334,308,317,327,332,331,333,332,315,293,272,246,219,
+196,181,170,160,146,123,99,115,93,115,63,45,37,22,0,-35,-57,-92,-117,-127,
+-171,-205,-236,-275,-308,-348,-384,-422,-455,-492,-530,-567,-601,-638,-669,-702,-735,-766,-798,-828,
+-855,-878,-904,-933,-964,-995,-1018,-1050,-1081,-1111,-1137,-1164,-1192,-1223,-1250,-1280,-1309,-1335,-1364,-1393,
+-1423,-1450,-1478,-1503,-1546,-1574,-1591,-1606,-1629,-1639,-1676,-1705,-1738,-1773,-1804,-1838,-1868,-1896,-1922,-1957,
+-1994,-2034,-2068,-2104,-2138,-2182,-2222,-2268,-2313,-2355,-2393,-2435,-2471,-2506,-2545,-2585,-2627,-2669,-2713,-2749,
+-2783,-2811,-2851,-2898,-2942,-2993,-3033,-3061,-3099,-3134,-3174,-3215,-3248,-3279,-3317,-3357,-3396,-3427,-3456,-3500,
+-3545,-3583,-3623,-3658,-3686,-3722,-3752,-3795,-3835,-3868,-3899,-3942,-3980,-4018,-4050,-4083,-4118,-4148,-4175,-4213,
+-4240,-4281,-4313,-4333,-4344,-4362,-4381,-4407,-4427,-4450,-4471,-4502,-4523,-4533,-4529,-4528,-4522,-4529,-4540,-4564,
+-4575,-4592,-4593,-4604,-4580,-4596,-4594,-4573,-4571,-4578,-4585,-4582,-4569,-4548,-4522,-4508,-4500,-4492,-4485,-4475,
+-4468,-4445,-4415,-4403,-4389,-4367,-4337,-4298,-4282,-4285,-4265,-4242,-4244,-4226,-4221,-4253,-4192,-4038,-3826,-3755,
+-3739,-3766,-3751,-3666,-3549,-3509,-3528,-3525,-3554,-3567,-3559,-3529,-3486,-3430,-3333,-3272,-3205,-3133,-3064,-3017,
+-2963,-2846,-2692,-2678,-2571,-2412,-2343,-2280,-2271,-2275,-2224,-2230,-2232,-2215,-2190,-2173,-2159,-2174,-2165,-2127,
+-2088,-2061,-2011,-1989,-1978,-1978,-1987,-1945,-1995,-1973,-2024,-2048,-2042,-2061,-2141,-2236,-2331,-2419,-2486,-2545,
+-2583,-2590,-2574,-2531,-2480,-2438,-2427,-2448,-2521,-2634,-2761,-2877,-2979,-3074,-3134,-3159,-3138,-3074,-2987,-2916,
+-2875,-2863,-2872,-2896,-2916,-2935,-2945,-2937,-2925,-2895,-2850,-2816,-2785,-2762,-2742,-2715,-2688,-2654,-2609,-2569,
+-2562,-2571,-2579,-2583,-2586,-2598,-2616,-2642,-2685,-2730,-2796,-2857,-2918,-2924,-2786,-2573,-2505,-2502,-2524,-2542,
+-2550,-2563,-2569,-2570,-2559,-2533,-2551,-2595,-2609,-2609,-2634,-2674,-2717,-2771,-2862,-2998,-3069,-3064,-3011,-2997,
+-3039,-3122,-3220,-3303,-3357,-3462,-3687,-3948,-4270,-4365,-4363,-4347,-4340,-4342,-4342,-4353,-4376,-4420,-4488,-4570,
+-4639,-4708,-4770,-4830,-4884,-4935,-4984,-5034,-5083,-5127,-5155,-5175,-5190,-5202,-5209,-5209,-5203,-5192,-5169,-5136,
+-5118,-5092,-5060,-5014,-4974,-4934,-4910,-4888,-4871,-4864,-4847,-4864,-4871,-4866,-4879,-4886,-4888,-4896,-4901,-4917,
+-4936,-4956,-4976,-4980,-4978,-4976,-4970,-4949,-4933,-4908,-4890,-4875,-4826,-4805,-4782,-4755,-4724,-4696,-4662,-4614,
+-4556,-4515,-4468,-4425,-4391,-4341,-4304,-4258,-4202,-4147,-4100,-4050,-3978,-3915,-3834,-3761,-3672,-3616,-3559,-3486,
+-3409,-3341,-3272,-3201,-3123,-3057,-2983,-2904,-2820,-2752,-2668,-2575,-2493,-2403,-2314,-2233,-2157,-2065,-1983,-1869,
+-1760,-1659,-1564,-1468,-1371,-1285,-1167,-1102,-1024,-932,-854,-735,-603,-484,-391,-340,-298,-174,-123,-98,
+-48,-11,45,88,157,216,283,322,370,427,465,503,531,571,622,648,691,732,784,827,
+872,919,960,997,1035,1083,1128,1163,1207,1251,1304,1349,1383,1420,1447,1481,1504,1534,1581,1632,
+1668,1711,1747,1793,1828,1877,1913,1954,1993,2029,2069,2094,2137,2181,2227,2255,2269,2284,2303,2326,
+2350,2391,2450,2486,2521,2538,2562,2573,2562,2574,2569,2573,2579,2586,2581,2567,2557,2545,2540,2543,
+2546,2568,2599,2626,2668,2721,2762,2813,2864,2918,2965,3022,3077,3123,3180,3243,3308,3365,3406,3430,
+3442,3442,3425,3401,3359,3309,3255,3197,3152,3117,3095,3090,3108,3154,3228,3320,3447,3582,3693,3730,
+3754,3809,3861,3902,3916,3907,3899,3900,3911,3934,3970,3999,4017,4023,4014,3980,3918,3860,3826,3819,
+3825,3805,3754,3688,3626,3554,3473,3406,3360,3335,3322,3317,3315,3330,3344,3360,3356,3341,3324,3299,
+3266,3233,3207,3171,3117,3050,2970,2892,2824,2756,2692,2638,2598,2569,2541,2554,2534,2541,2558,2535,
+2519,2521,2522,2533,2551,2572,2606,2650,2711,2753,2778,2832,2878,2929,3005,3067,3103,3186,3243,3224,
+3195,3165,3145,3108,3078,3071,3065,3074,3076,3072,3066,3044,3029,3031,3042,3027,2987,2969,2953,2950,
+2933,2918,2904,2888,2877,2856,2819,2782,2760,2750,2743,2728,2696,2676,2688,2714,2725,2711,2713,2728,
+2737,2767,2819,2904,2956,2947,2905,2837,2769,2709,2661,2625,2592,2552,2517,2487,2456,2406,2345,2271,
+2207,2169,2140,2138,2137,2090,2020,1940,1861,1794,1742,1699,1655,1613,1570,1533,1484,1446,1440,1440,
+1447,1429,1389,1371,1323,1304,1304,1287,1244,1226,1222,1233,1248,1253,1274,1302,1314,1310,1311,1287,
+1264,1219,1192,1238,1263,1299,1301,1378,1428,1477,1463,1373,1262,1187,1145,1131,1119,1119,1130,1141,
+1186,1226,1241,1282,1377,1388,1341,1298,1299,1308,1300,1300,1272,1244,1210,1168,1119,1094,1063,1030,
+978,902,843,779,736,656,567,452,341,232,155,60,-41,-129,-179,-193,-218,-271,-359,-479,
+-622,-764,-890,-999,-1114,-1242,-1387,-1524,-1661,-1793,-1922,-2046,-2172,-2316,-2445,-2548,-2638,-2694,-2734,-2767,
+-2799,-2838,-2878,-2910,-2929,-2948,-2968,-2981,-2996,-2997,-2996,-2992,-3011,-3027,-3056,-3117,-3193,-3257,-3261,-3185,
+-3059,-2921,-2821,-2731,-2607,-2336,-2054,-2030,-2049,-2104,-2149,-2214,-2256,-2309,-2328,-2347,-2363,-2408,-2487,-2529,
+-2612,-2676,-2757,-2813,-2888,-2907,-2943,-2973,-3026,-3057,-3081,-3081,-3071,-3063,-3067,-3177,-3341,-3500,-3651,-3754,
+-3889,-3974,-4014,-4144,-4252,-4377,-4402,-4408,-4422,-4440,-4472,-4506,-4544,-4594,-4636,-4650,-4633,-4563,-4501,-4479,
+-4472,-4461,-4436,-4439,-4507,-4545,-4613,-4661,-4715,-4762,-4804,-4830,-4817,-4739,-4717,-4784,-4887,-5021,-5158,-5275,
+-5361,-5415,-5452,-5488,-5540,-5615,-5705,-5787,-5849,-5910,-5979,-6051,-6122,-6182,-6237,-6290,-6340,-6380,-6420,-6458,
+-6496,-6540,-6588,-6642,-6695,-6737,-6760,-6780,-6791,-6793,-6792,-6784,-6764,-6737,-6729,-6704,-6649,-6590,-6526,-6436,
+-6324,-6221,-6126,-6041,-5962,-5882,-5792,-5661,-5549,-5456,-5364,-5244,-5119,-5021,-4954,-4938,-4925,-4901,-4917,-4928,
+-4914,-4890,-4872,-4884,-4916,-4993,-5073,-5130,-5194,-5282,-5431,-5597,-5668,-5565,-5390,-5168,-4999,-4961,-4895,-4936,
+-4942,-4915,-4848,-4757,-4615,-4593,-4569,-4422,-4224,-4083,-3988,-3944,-3859,-3792,-3761,-3715,-3685,-3657,-3599,-3542,
+-3554,-3532,-3494,-3415,-3381,-3348,-3280,-3369,-3267,-3250,-3251,-3207,-3166,-3145,-3116,-3130,-3121,-3079,-3068,-3034,
+-2993,-2956,-2916,-2857,-2823,-2804,-2792,-2711,-2595,-2553,-2456,-2401,-2357,-2291,-2216,-2135,-2056,-1952,-1955,-1887,
+-1863,-1832,-1762,-1671,-1597,-1517,-1435,-1347,-1260,-1155,-1040,-890,-840,-781,-703,-588,-524,-443,-358,-275,
+-162,-54,68,176,292,382,461,567,655,750,878,1013,1075,1138,1212,1270,1348,1430,1514,1623,
+1694,1754,1821,1886,1955,2020,2095,2165,2254,2343,2429,2508,2585,2663,2745,2806,2866,2879,2906,2945,
+2995,3017,3083,3077,3176,3167,3155,3109,2974,2808,2655,2584,2526,2450,2428,2531,2702,2903,3068,3198,
+3266,3337,3372,3438,3465,3484,3505,3518,3538,3547,3549,3565,3602,3608,3633,3674,3723,3772,3833,3854,
+3920,3947,3980,4016,4074,4114,4171,4223,4234,4256,4266,4291,4304,4335,4394,4396,4407,4387,4364,4229,
+3953,3810,3904,4243,4434,4228,3889,3636,3307,3294,3445,3572,3689,3725,3710,3665,3644,3607,3543,3477,
+3422,3366,3308,3232,3153,3067,2996,2928,2850,2800,2775,2741,2704,2667,2650,2637,2616,2584,2543,2488,
+2424,2349,2295,2300,2327,2167,2083,2017,1960,1899,1843,1805,1732,1700,1669,1634,1584,1527,1465,1404,
+1338,1284,1245,1202,1159,1123,1089,1049,1015,990,992,939,917,883,835,785,736,686,643,597,
+560,545,543,539,521,488,441,404,320,268,244,192,172,140,120,107,91,70,42,15,
+-13,-51,-88,-115,-134,-153,-181,-184,-222,-293,-309,-322,-345,-361,-373,-392,-413,-438,-438,-454,
+-476,-496,-511,-521,-528,-534,-535,-542,-545,-546,-548,-549,-551,-549,-544,-539,-529,-518,-517,-516,
+-506,-482,-475,-439,-416,-398,-386,-387,-373,-379,-385,-376,-370,-375,-376,-383,-387,-381,-376,-365,
+-354,-338,-316,-262,-228,-263,-234,-183,-124,-101,-145,-211,-240,-228,-225,-192,-68,49,97,130,
+96,40,-32,-122,-146,-121,-63,0,43,36,26,40,68,99,127,144,158,174,188,199,
+241,232,241,260,277,302,319,335,338,346,359,371,376,371,374,367,356,341,327,301,
+275,257,245,233,214,187,165,152,156,138,166,132,134,119,92,49,34,1,-30,-52,
+-72,-112,-147,-172,-205,-238,-280,-318,-356,-388,-428,-465,-505,-541,-580,-618,-654,-688,-722,-758,
+-784,-805,-835,-867,-898,-931,-963,-989,-1018,-1053,-1080,-1109,-1139,-1172,-1201,-1231,-1265,-1295,-1322,-1347,
+-1375,-1403,-1427,-1456,-1490,-1522,-1551,-1567,-1587,-1621,-1654,-1674,-1707,-1736,-1773,-1814,-1852,-1872,-1891,-1928,
+-1961,-1990,-2020,-2046,-2074,-2107,-2148,-2188,-2239,-2292,-2333,-2363,-2400,-2438,-2470,-2513,-2554,-2599,-2650,-2685,
+-2717,-2748,-2784,-2831,-2883,-2934,-2982,-3019,-3063,-3104,-3137,-3177,-3216,-3248,-3284,-3319,-3364,-3399,-3426,-3462,
+-3497,-3535,-3576,-3617,-3653,-3686,-3717,-3747,-3788,-3829,-3869,-3914,-3950,-3989,-4023,-4058,-4096,-4126,-4157,-4183,
+-4213,-4246,-4276,-4297,-4331,-4346,-4369,-4392,-4418,-4439,-4460,-4480,-4502,-4524,-4533,-4536,-4534,-4524,-4537,-4559,
+-4581,-4593,-4609,-4602,-4598,-4597,-4592,-4585,-4572,-4559,-4556,-4571,-4575,-4571,-4563,-4549,-4548,-4545,-4526,-4502,
+-4492,-4484,-4458,-4426,-4420,-4405,-4385,-4350,-4331,-4314,-4299,-4273,-4244,-4223,-4236,-4203,-4197,-4200,-4111,-3977,
+-3827,-3746,-3732,-3748,-3725,-3670,-3558,-3494,-3491,-3504,-3534,-3553,-3542,-3492,-3448,-3394,-3296,-3227,-3155,-3083,
+-3045,-2985,-2852,-2725,-2616,-2568,-2445,-2343,-2273,-2193,-2197,-2167,-2208,-2201,-2175,-2155,-2154,-2151,-2159,-2144,
+-2118,-2081,-2053,-2004,-2015,-1994,-1932,-1921,-1868,-1886,-1954,-1982,-2000,-1983,-2007,-2079,-2158,-2257,-2363,-2448,
+-2512,-2535,-2537,-2518,-2478,-2421,-2373,-2351,-2375,-2448,-2577,-2722,-2852,-2975,-3109,-3195,-3204,-3161,-3061,-2955,
+-2890,-2857,-2845,-2855,-2890,-2914,-2944,-2937,-2924,-2900,-2868,-2838,-2823,-2807,-2791,-2761,-2729,-2709,-2675,-2619,
+-2571,-2559,-2560,-2557,-2552,-2549,-2552,-2559,-2578,-2604,-2644,-2704,-2777,-2856,-2907,-2810,-2601,-2532,-2532,-2542,
+-2555,-2554,-2552,-2548,-2561,-2541,-2509,-2531,-2582,-2601,-2616,-2634,-2655,-2676,-2721,-2810,-2956,-3046,-3068,-3088,
+-3092,-3140,-3219,-3257,-3225,-3255,-3371,-3617,-4046,-4288,-4336,-4328,-4314,-4310,-4318,-4330,-4343,-4372,-4423,-4493,
+-4569,-4643,-4710,-4764,-4819,-4873,-4924,-4975,-5026,-5077,-5122,-5156,-5179,-5197,-5214,-5223,-5222,-5215,-5211,-5189,
+-5164,-5133,-5098,-5065,-5036,-4999,-4970,-4938,-4906,-4893,-4894,-4893,-4901,-4889,-4905,-4902,-4912,-4906,-4920,-4945,
+-4952,-4962,-4984,-5000,-5016,-5023,-5017,-5005,-4985,-4962,-4936,-4915,-4887,-4870,-4859,-4827,-4781,-4751,-4711,-4685,
+-4634,-4599,-4563,-4520,-4470,-4415,-4369,-4317,-4283,-4226,-4171,-4121,-4069,-3994,-3935,-3860,-3789,-3727,-3656,-3575,
+-3507,-3439,-3349,-3289,-3207,-3138,-3054,-2981,-2922,-2836,-2780,-2694,-2613,-2522,-2432,-2351,-2269,-2194,-2113,-2006,
+-1914,-1810,-1705,-1621,-1534,-1428,-1335,-1238,-1138,-1044,-957,-872,-773,-659,-559,-466,-420,-324,-255,-239,
+-178,-125,-78,-39,43,101,171,204,254,310,351,394,426,459,509,555,584,622,670,721,
+770,809,852,895,937,975,1045,1081,1127,1168,1212,1255,1283,1298,1333,1364,1400,1418,1451,1490,
+1540,1589,1638,1672,1702,1748,1783,1814,1869,1913,1939,1988,2032,2079,2129,2173,2197,2213,2230,2254,
+2278,2312,2353,2388,2416,2452,2484,2507,2525,2537,2530,2542,2550,2546,2533,2527,2521,2517,2519,2515,
+2523,2540,2561,2588,2624,2662,2712,2773,2808,2851,2905,2958,3016,3075,3131,3189,3254,3321,3375,3415,
+3436,3445,3442,3409,3368,3312,3255,3192,3128,3074,3047,3041,3063,3124,3207,3301,3409,3520,3633,3693,
+3721,3751,3810,3878,3912,3919,3903,3909,3929,3939,3950,3976,4001,4022,4029,4025,3992,3932,3858,3802,
+3766,3747,3717,3660,3598,3543,3481,3420,3364,3322,3294,3272,3254,3248,3260,3284,3304,3309,3296,3278,
+3251,3225,3194,3170,3135,3082,3014,2931,2851,2781,2726,2682,2637,2604,2579,2554,2569,2538,2541,2538,
+2533,2527,2537,2550,2563,2577,2598,2636,2699,2771,2835,2882,2921,2977,3053,3136,3154,3169,3287,3333,
+3359,3315,3286,3229,3200,3172,3170,3201,3183,3173,3165,3148,3124,3099,3071,3078,3062,3009,2970,2952,
+2939,2930,2918,2903,2905,2881,2840,2794,2750,2722,2706,2703,2691,2671,2641,2644,2670,2683,2674,2689,
+2714,2732,2764,2826,2898,2932,2926,2876,2790,2733,2684,2644,2610,2568,2519,2481,2446,2408,2356,2297,
+2225,2159,2114,2093,2110,2113,2071,1996,1903,1820,1751,1707,1674,1636,1603,1564,1534,1493,1456,1447,
+1445,1419,1399,1366,1338,1292,1272,1289,1303,1263,1227,1211,1211,1212,1238,1271,1297,1309,1302,1304,
+1262,1252,1227,1206,1199,1235,1242,1251,1314,1369,1443,1455,1402,1281,1203,1187,1133,1112,1089,1085,
+1063,1088,1160,1187,1189,1256,1364,1331,1260,1246,1256,1274,1295,1252,1206,1210,1151,1077,1053,1029,
+989,949,873,819,765,724,661,565,452,330,224,149,63,-34,-136,-184,-185,-206,-249,-325,
+-439,-582,-728,-866,-987,-1117,-1239,-1387,-1524,-1657,-1796,-1936,-2067,-2189,-2337,-2471,-2587,-2670,-2728,-2772,
+-2800,-2831,-2874,-2915,-2945,-2966,-2984,-3007,-3034,-3061,-3084,-3098,-3112,-3129,-3150,-3198,-3251,-3303,-3334,-3298,
+-3169,-2950,-2818,-2759,-2691,-2574,-2318,-2149,-2090,-2107,-2181,-2226,-2300,-2372,-2423,-2454,-2454,-2482,-2522,-2579,
+-2624,-2706,-2803,-2854,-2893,-2936,-2951,-2985,-3023,-3049,-3073,-3077,-3088,-3087,-3122,-3189,-3292,-3445,-3602,-3761,
+-3878,-4046,-4109,-4100,-4188,-4260,-4320,-4374,-4422,-4472,-4512,-4544,-4562,-4591,-4636,-4672,-4663,-4623,-4543,-4475,
+-4454,-4491,-4488,-4476,-4496,-4562,-4616,-4661,-4691,-4736,-4768,-4800,-4816,-4770,-4736,-4769,-4858,-4983,-5117,-5248,
+-5352,-5428,-5482,-5517,-5537,-5585,-5638,-5702,-5766,-5830,-5881,-5941,-6005,-6071,-6132,-6181,-6222,-6266,-6305,-6338,
+-6369,-6404,-6440,-6487,-6543,-6600,-6647,-6689,-6716,-6733,-6746,-6757,-6760,-6743,-6705,-6678,-6655,-6610,-6562,-6529,
+-6477,-6403,-6336,-6257,-6179,-6101,-6008,-5916,-5774,-5633,-5532,-5436,-5337,-5245,-5159,-5080,-5013,-4973,-4956,-4948,
+-4940,-4907,-4875,-4839,-4836,-4880,-4962,-5033,-5079,-5116,-5173,-5350,-5487,-5472,-5324,-5134,-4969,-4879,-4961,-5007,
+-5018,-5008,-4957,-4899,-4806,-4663,-4638,-4549,-4383,-4262,-4045,-3968,-3917,-3849,-3810,-3778,-3740,-3708,-3712,-3619,
+-3573,-3525,-3487,-3454,-3434,-3392,-3331,-3332,-3267,-3219,-3209,-3226,-3184,-3141,-3123,-3151,-3152,-3141,-3099,-3063,
+-3002,-2960,-2912,-2873,-2825,-2795,-2782,-2760,-2705,-2617,-2569,-2461,-2388,-2335,-2278,-2206,-2060,-1999,-1909,-1929,
+-1885,-1886,-1819,-1723,-1610,-1537,-1474,-1400,-1312,-1213,-1077,-958,-817,-826,-754,-654,-578,-502,-405,-325,
+-233,-128,-4,100,210,313,403,544,645,714,828,912,1010,1115,1168,1250,1334,1414,1508,1593,
+1658,1724,1794,1866,1937,2000,2068,2140,2215,2310,2399,2475,2550,2632,2714,2755,2773,2856,2843,2880,
+2916,2952,2982,3077,3125,3139,3099,3063,2975,2846,2754,2683,2578,2475,2443,2523,2670,2828,3055,3224,
+3298,3368,3442,3455,3507,3524,3517,3542,3557,3568,3575,3585,3589,3608,3637,3654,3704,3761,3829,3963,
+3877,3901,3931,3986,4032,4086,4129,4186,4219,4257,4281,4290,4318,4341,4350,4394,4431,4453,4413,4399,
+4292,3970,3751,3793,4030,4220,4063,3796,3673,3502,3529,3653,3806,3878,3860,3890,3925,3984,3823,3659,
+3519,3431,3374,3317,3261,3178,3107,3065,3035,2907,2805,2792,2763,2742,2720,2696,2677,2666,2641,2602,
+2550,2488,2435,2381,2344,2303,2235,2159,2102,2039,1977,1914,1872,1805,1755,1725,1677,1620,1556,1490,
+1435,1367,1312,1268,1234,1202,1168,1134,1101,1067,1047,1036,984,952,915,866,816,773,733,691,
+645,608,593,594,590,569,539,515,443,370,354,277,248,234,196,173,155,135,110,81,
+49,12,-23,-53,-50,-92,-115,-117,-147,-229,-267,-277,-299,-321,-343,-349,-351,-371,-389,-398,
+-425,-449,-463,-472,-481,-486,-497,-504,-508,-511,-514,-521,-532,-533,-530,-527,-525,-517,-508,-502,
+-504,-509,-501,-480,-446,-425,-414,-403,-393,-392,-391,-387,-378,-378,-380,-378,-376,-346,-361,-344,
+-325,-312,-304,-293,-266,-245,-256,-240,-212,-185,-180,-196,-222,-238,-229,-197,-118,70,366,414,
+583,475,375,262,25,-52,-22,58,174,276,257,209,216,231,246,210,192,201,224,247,
+286,345,344,303,314,335,322,312,320,337,356,367,380,394,402,405,393,384,376,367,
+348,326,309,295,280,259,233,256,281,216,193,193,190,173,143,124,115,84,75,66,
+46,-9,-15,-37,-102,-137,-175,-212,-256,-282,-321,-358,-394,-442,-478,-516,-556,-597,-633,-665,
+-700,-729,-763,-796,-833,-872,-902,-929,-960,-993,-1025,-1056,-1087,-1120,-1153,-1184,-1214,-1246,-1277,-1301,
+-1326,-1354,-1382,-1413,-1446,-1475,-1503,-1528,-1550,-1569,-1595,-1632,-1661,-1691,-1724,-1762,-1802,-1839,-1868,-1895,
+-1928,-1961,-1994,-2020,-2042,-2069,-2105,-2142,-2182,-2223,-2269,-2301,-2330,-2360,-2404,-2447,-2490,-2540,-2586,-2634,
+-2668,-2698,-2731,-2776,-2823,-2878,-2927,-2968,-3005,-3040,-3086,-3124,-3153,-3196,-3231,-3277,-3313,-3350,-3384,-3423,
+-3464,-3496,-3525,-3566,-3613,-3657,-3686,-3720,-3756,-3791,-3835,-3881,-3920,-3956,-3991,-4027,-4066,-4101,-4131,-4153,
+-4174,-4217,-4243,-4274,-4297,-4323,-4341,-4380,-4404,-4427,-4451,-4465,-4487,-4508,-4530,-4535,-4536,-4537,-4547,-4560,
+-4570,-4596,-4607,-4616,-4618,-4611,-4590,-4543,-4581,-4573,-4570,-4560,-4592,-4601,-4594,-4589,-4580,-4578,-4565,-4544,
+-4521,-4509,-4499,-4484,-4462,-4448,-4430,-4410,-4380,-4354,-4333,-4311,-4285,-4252,-4217,-4174,-4129,-4123,-4155,-4126,
+-4017,-3901,-3779,-3705,-3717,-3736,-3728,-3656,-3543,-3459,-3485,-3508,-3509,-3555,-3534,-3458,-3402,-3336,-3242,-3176,
+-3120,-3068,-2980,-2898,-2750,-2736,-2584,-2481,-2351,-2256,-2167,-2142,-2140,-2182,-2167,-2131,-2112,-2119,-2121,-2120,
+-2118,-2111,-2098,-2057,-1998,-2004,-1924,-1859,-1860,-1872,-1857,-1898,-1952,-1948,-1937,-1953,-1988,-2081,-2197,-2306,
+-2406,-2487,-2520,-2514,-2479,-2426,-2369,-2311,-2289,-2312,-2379,-2519,-2691,-2871,-3019,-3144,-3229,-3237,-3212,-3110,
+-3006,-2924,-2889,-2876,-2858,-2870,-2880,-2890,-2893,-2894,-2846,-2823,-2821,-2837,-2812,-2789,-2756,-2722,-2699,-2674,
+-2626,-2589,-2574,-2578,-2568,-2557,-2538,-2533,-2530,-2531,-2543,-2572,-2628,-2704,-2798,-2866,-2806,-2622,-2549,-2538,
+-2546,-2553,-2542,-2523,-2536,-2536,-2496,-2469,-2485,-2533,-2572,-2617,-2650,-2642,-2658,-2707,-2792,-2939,-3044,-3064,
+-3096,-3156,-3205,-3275,-3332,-3336,-3299,-3432,-3790,-4167,-4299,-4325,-4319,-4304,-4298,-4310,-4322,-4343,-4386,-4441,
+-4504,-4576,-4644,-4705,-4758,-4812,-4862,-4911,-4962,-5016,-5069,-5113,-5150,-5181,-5207,-5225,-5234,-5236,-5231,-5223,
+-5208,-5181,-5149,-5119,-5095,-5062,-5039,-5005,-4975,-4946,-4930,-4930,-4940,-4947,-4944,-4942,-4937,-4932,-4931,-4957,
+-4976,-4987,-5001,-5015,-5032,-5041,-5047,-5053,-5041,-5020,-4982,-4956,-4937,-4914,-4884,-4857,-4837,-4818,-4774,-4730,
+-4685,-4658,-4621,-4585,-4536,-4496,-4454,-4410,-4369,-4322,-4265,-4207,-4152,-4087,-4024,-3943,-3900,-3820,-3758,-3690,
+-3610,-3554,-3490,-3409,-3337,-3269,-3206,-3120,-3017,-2948,-2878,-2808,-2735,-2637,-2552,-2474,-2396,-2294,-2220,-2139,
+-2049,-1956,-1848,-1758,-1647,-1560,-1466,-1379,-1295,-1214,-1121,-1021,-900,-790,-675,-576,-521,-498,-380,-312,
+-297,-252,-189,-154,-90,-31,53,97,145,178,227,277,311,352,406,436,469,509,551,615,
+660,695,744,779,823,868,908,959,1012,1056,1097,1128,1154,1178,1211,1245,1280,1309,1340,1365,
+1407,1457,1516,1567,1606,1632,1666,1690,1732,1784,1839,1878,1922,1972,2021,2062,2106,2147,2166,2189,
+2213,2235,2269,2313,2338,2367,2394,2424,2440,2448,2453,2462,2473,2477,2480,2482,2476,2483,2479,2479,
+2492,2504,2523,2561,2592,2624,2667,2712,2754,2797,2842,2902,2955,3010,3073,3138,3191,3261,3330,3387,
+3426,3461,3450,3433,3394,3337,3278,3211,3140,3077,3031,3029,3066,3131,3218,3288,3361,3460,3550,3620,
+3655,3689,3749,3827,3895,3924,3915,3893,3913,3960,3969,3979,3992,4013,4023,4029,4014,3975,3911,3832,
+3754,3696,3655,3616,3564,3502,3449,3400,3353,3308,3270,3244,3220,3201,3192,3201,3229,3259,3262,3248,
+3227,3193,3170,3144,3118,3088,3040,2973,2889,2805,2742,2700,2670,2645,2626,2600,2569,2582,2559,2555,
+2557,2554,2553,2562,2577,2597,2611,2637,2693,2774,2858,2942,3013,3026,3108,3187,3270,3252,3246,3319,
+3368,3401,3415,3395,3364,3319,3292,3289,3317,3302,3299,3278,3230,3210,3144,3118,3113,3089,3041,2979,
+2954,2937,2935,2937,2936,2900,2864,2820,2768,2711,2676,2658,2654,2650,2628,2606,2610,2624,2637,2656,
+2675,2710,2743,2788,2865,2906,2906,2893,2839,2745,2708,2677,2627,2586,2543,2478,2430,2384,2338,2281,
+2224,2161,2096,2056,2031,2050,2058,2020,1950,1862,1787,1728,1685,1661,1636,1610,1570,1535,1502,1462,
+1452,1445,1423,1406,1375,1334,1284,1251,1262,1270,1247,1241,1225,1236,1251,1278,1292,1325,1313,1289,
+1295,1266,1264,1253,1241,1206,1212,1219,1219,1233,1282,1371,1429,1407,1320,1192,1159,1149,1097,1054,
+1046,1031,1033,1069,1079,1078,1144,1241,1276,1221,1199,1194,1191,1206,1178,1145,1138,1099,1033,1004,
+987,947,902,847,797,756,710,639,539,420,302,209,147,75,-29,-125,-173,-176,-192,-234,
+-313,-425,-565,-702,-840,-973,-1117,-1248,-1386,-1521,-1664,-1812,-1967,-2094,-2206,-2357,-2497,-2615,-2698,-2763,
+-2807,-2836,-2870,-2907,-2945,-2978,-2999,-3026,-3052,-3075,-3107,-3133,-3150,-3164,-3188,-3232,-3275,-3321,-3359,-3372,
+-3299,-3090,-2738,-2703,-2693,-2644,-2567,-2393,-2262,-2208,-2216,-2274,-2306,-2362,-2419,-2482,-2507,-2535,-2568,-2609,
+-2661,-2737,-2805,-2877,-2918,-2945,-2963,-3014,-3067,-3080,-3087,-3080,-3083,-3114,-3152,-3221,-3297,-3406,-3537,-3632,
+-3797,-3941,-4108,-4204,-4197,-4229,-4269,-4303,-4356,-4436,-4506,-4561,-4596,-4611,-4627,-4667,-4684,-4664,-4602,-4503,
+-4436,-4418,-4482,-4524,-4546,-4578,-4620,-4674,-4709,-4735,-4766,-4790,-4804,-4783,-4739,-4761,-4818,-4938,-5071,-5193,
+-5310,-5397,-5464,-5502,-5544,-5565,-5583,-5616,-5663,-5725,-5789,-5854,-5908,-5967,-6027,-6078,-6122,-6160,-6195,-6230,
+-6256,-6281,-6302,-6334,-6383,-6442,-6497,-6547,-6587,-6622,-6647,-6667,-6681,-6693,-6687,-6663,-6628,-6590,-6549,-6512,
+-6492,-6451,-6377,-6320,-6262,-6191,-6115,-6026,-5934,-5774,-5642,-5554,-5463,-5382,-5307,-5234,-5163,-5082,-5011,-4961,
+-4925,-4885,-4830,-4776,-4713,-4694,-4728,-4828,-4967,-5055,-5110,-5193,-5321,-5329,-5238,-5125,-5001,-4889,-4819,-4946,
+-5041,-4978,-4970,-4937,-4880,-4712,-4645,-4580,-4461,-4308,-4224,-4066,-3971,-3881,-3839,-3800,-3787,-3737,-3714,-3682,
+-3597,-3560,-3490,-3502,-3523,-3467,-3329,-3269,-3263,-3210,-3227,-3197,-3192,-3160,-3128,-3117,-3113,-3160,-3181,-3115,
+-3083,-3006,-2961,-2928,-2871,-2838,-2805,-2765,-2753,-2725,-2663,-2602,-2485,-2404,-2335,-2268,-2191,-2065,-2001,-1940,
+-1906,-1914,-1855,-1750,-1660,-1533,-1491,-1430,-1355,-1272,-1165,-1036,-862,-796,-784,-722,-633,-542,-449,-373,
+-266,-165,-52,81,164,262,358,509,600,685,800,926,977,1077,1119,1204,1283,1380,1465,1539,
+1610,1686,1759,1829,1900,1972,2035,2108,2185,2267,2355,2434,2511,2587,2679,2769,2749,2769,2808,2829,
+2852,2886,2898,2900,2887,2879,2931,2881,2848,2823,2779,2720,2606,2515,2472,2544,2673,2830,2967,3083,
+3226,3396,3503,3567,3545,3554,3629,3631,3671,3643,3645,3634,3627,3610,3641,3653,3687,3773,3868,3910,
+3964,3943,3948,3962,3994,4047,4104,4154,4205,4231,4258,4290,4308,4341,4358,4377,4446,4474,4481,4454,
+4443,4358,4033,3796,3773,3897,4033,3935,3697,3566,3472,3634,3799,3971,3993,3858,3775,3783,3982,4051,
+3829,3620,3474,3404,3413,3475,3290,3249,3283,3220,3052,2934,2870,2827,2796,2780,2753,2719,2696,2678,
+2646,2602,2555,2512,2465,2410,2356,2301,2235,2183,2126,2058,1986,1917,1867,1810,1763,1711,1648,1585,
+1516,1456,1398,1350,1318,1285,1256,1221,1189,1161,1132,1097,1064,1026,986,939,889,843,810,777,
+737,697,664,653,655,642,618,583,558,487,441,405,326,292,268,247,229,207,180,149,
+113,72,35,8,-17,-38,-58,-61,-83,-147,-200,-212,-224,-255,-286,-304,-313,-325,-330,-342,
+-363,-392,-410,-429,-443,-450,-458,-465,-474,-477,-477,-488,-502,-498,-510,-508,-508,-508,-506,-500,
+-497,-501,-502,-494,-475,-456,-447,-434,-422,-410,-403,-387,-380,-380,-392,-393,-381,-365,-349,-338,
+-324,-305,-286,-278,-274,-263,-253,-247,-231,-214,-202,-199,-198,-203,-197,-183,-146,-64,76,255,
+524,842,777,738,530,169,78,151,271,447,604,527,448,515,582,580,416,322,325,361,
+400,471,578,570,471,451,526,417,345,315,315,334,357,380,394,415,424,421,431,400,
+393,381,367,349,333,321,305,283,283,299,278,266,250,240,220,184,161,187,160,116,
+100,91,48,33,27,-9,-46,-107,-147,-182,-212,-250,-284,-322,-364,-403,-445,-494,-536,-571,
+-608,-646,-680,-720,-760,-798,-836,-869,-901,-935,-968,-1001,-1030,-1069,-1102,-1133,-1163,-1194,-1224,-1253,
+-1282,-1313,-1340,-1368,-1400,-1430,-1457,-1482,-1510,-1533,-1558,-1581,-1607,-1638,-1672,-1706,-1742,-1778,-1806,-1835,
+-1870,-1909,-1945,-1973,-2000,-2030,-2070,-2108,-2149,-2181,-2217,-2249,-2269,-2300,-2340,-2383,-2431,-2477,-2528,-2574,
+-2618,-2656,-2693,-2730,-2775,-2818,-2864,-2907,-2942,-2976,-3012,-3059,-3105,-3139,-3177,-3217,-3255,-3302,-3324,-3346,
+-3425,-3456,-3481,-3529,-3576,-3623,-3668,-3700,-3734,-3774,-3806,-3842,-3885,-3922,-3960,-3997,-4035,-4066,-4095,-4123,
+-4155,-4186,-4221,-4246,-4274,-4284,-4311,-4350,-4379,-4402,-4428,-4446,-4471,-4496,-4523,-4542,-4542,-4539,-4542,-4558,
+-4574,-4593,-4611,-4625,-4633,-4635,-4638,-4608,-4600,-4618,-4558,-4633,-4629,-4639,-4633,-4628,-4626,-4605,-4589,-4580,
+-4567,-4551,-4539,-4531,-4514,-4494,-4475,-4453,-4435,-4403,-4374,-4354,-4325,-4294,-4261,-4223,-4214,-4186,-4148,-4144,
+-4161,-4101,-4001,-3868,-3755,-3691,-3711,-3727,-3706,-3603,-3466,-3434,-3479,-3506,-3524,-3521,-3499,-3422,-3337,-3258,
+-3189,-3131,-3083,-3004,-2948,-2851,-2752,-2667,-2566,-2343,-2243,-2164,-2101,-2115,-2143,-2165,-2120,-2081,-2077,-2073,
+-2066,-2074,-2092,-2104,-2078,-2023,-1959,-1899,-1870,-1841,-1814,-1793,-1884,-1909,-1907,-1935,-1983,-1965,-2029,-2152,
+-2258,-2355,-2431,-2470,-2479,-2443,-2391,-2325,-2263,-2248,-2282,-2357,-2509,-2697,-2892,-3039,-3152,-3239,-3273,-3254,
+-3194,-3115,-3044,-2997,-2970,-2927,-2888,-2864,-2844,-2842,-2830,-2816,-2837,-2840,-2830,-2798,-2760,-2726,-2699,-2675,
+-2655,-2628,-2604,-2590,-2589,-2585,-2569,-2543,-2536,-2523,-2518,-2512,-2522,-2564,-2638,-2739,-2814,-2812,-2647,-2539,
+-2522,-2524,-2518,-2506,-2489,-2492,-2480,-2441,-2427,-2444,-2481,-2527,-2588,-2614,-2615,-2643,-2692,-2793,-2931,-3021,
+-3020,-3014,-3080,-3150,-3213,-3295,-3426,-3473,-3554,-3979,-4202,-4295,-4322,-4316,-4306,-4300,-4302,-4307,-4334,-4384,
+-4448,-4510,-4573,-4643,-4700,-4751,-4803,-4849,-4898,-4949,-5002,-5054,-5099,-5144,-5178,-5209,-5232,-5244,-5247,-5244,
+-5234,-5218,-5197,-5166,-5138,-5112,-5087,-5055,-5022,-5002,-4982,-4968,-4968,-4972,-4985,-4995,-4995,-4998,-4976,-4963,
+-4964,-4999,-5017,-5032,-5045,-5065,-5075,-5078,-5072,-5065,-5050,-5028,-4987,-4957,-4936,-4900,-4859,-4843,-4831,-4805,
+-4759,-4701,-4682,-4642,-4612,-4569,-4514,-4468,-4414,-4369,-4317,-4263,-4224,-4191,-4135,-4067,-4010,-3956,-3886,-3802,
+-3724,-3631,-3559,-3495,-3425,-3354,-3281,-3215,-3151,-3074,-3006,-2911,-2835,-2753,-2662,-2559,-2494,-2428,-2334,-2258,
+-2185,-2076,-2002,-1893,-1782,-1696,-1602,-1507,-1425,-1328,-1229,-1154,-1041,-966,-866,-740,-681,-634,-519,-460,
+-402,-350,-319,-276,-204,-158,-84,-39,25,76,123,156,198,246,272,319,355,393,425,485,
+538,587,627,664,715,761,802,858,911,930,963,997,1029,1077,1124,1150,1175,1208,1228,1259,
+1295,1330,1385,1452,1508,1545,1575,1604,1633,1669,1708,1756,1817,1855,1912,1954,2010,2051,2093,2119,
+2148,2168,2189,2234,2252,2272,2297,2325,2356,2370,2373,2399,2420,2421,2423,2412,2417,2410,2415,2440,
+2454,2475,2488,2510,2540,2573,2608,2655,2700,2738,2782,2830,2891,2946,2995,3090,3197,3187,3254,3324,
+3383,3425,3479,3457,3422,3379,3314,3249,3177,3103,3048,3030,3078,3157,3234,3289,3336,3391,3451,3513,
+3567,3614,3677,3762,3846,3914,3933,3905,3891,3911,3967,4001,4014,4026,4039,4021,4004,3973,3925,3856,
+3783,3697,3622,3570,3528,3478,3410,3353,3317,3279,3242,3211,3187,3166,3151,3142,3155,3186,3221,3224,
+3201,3166,3135,3109,3087,3062,3036,2996,2935,2853,2773,2716,2686,2672,2660,2650,2621,2582,2605,2590,
+2598,2592,2587,2583,2594,2602,2621,2653,2688,2746,2838,2953,3043,3122,3151,3217,3330,3400,3358,3352,
+3389,3441,3456,3458,3480,3455,3402,3374,3371,3382,3395,3411,3363,3306,3248,3183,3145,3115,3078,3036,
+2995,2951,2927,2933,2947,2912,2879,2847,2807,2760,2701,2655,2626,2615,2605,2586,2569,2572,2588,2610,
+2643,2668,2710,2770,2822,2874,2896,2880,2854,2809,2720,2683,2662,2617,2563,2511,2438,2381,2336,2283,
+2225,2168,2107,2049,2012,1986,1989,1989,1962,1897,1811,1743,1687,1658,1635,1633,1612,1577,1535,1502,
+1478,1462,1450,1438,1418,1384,1323,1284,1264,1254,1262,1256,1249,1260,1287,1312,1311,1333,1345,1325,
+1299,1296,1299,1332,1328,1323,1308,1286,1227,1181,1195,1232,1302,1376,1403,1352,1249,1141,1090,1055,
+1022,1006,990,1008,1016,1024,1032,1074,1135,1155,1129,1112,1125,1142,1149,1130,1094,1085,1082,1004,
+984,987,951,905,840,794,741,681,610,515,385,275,202,132,67,-9,-106,-166,-175,-180,
+-229,-315,-438,-559,-683,-821,-955,-1107,-1250,-1381,-1518,-1674,-1828,-1985,-2114,-2220,-2365,-2512,-2628,-2721,
+-2790,-2834,-2870,-2904,-2936,-2971,-3002,-3038,-3065,-3088,-3105,-3130,-3163,-3179,-3199,-3229,-3277,-3330,-3367,-3394,
+-3389,-3298,-3054,-2693,-2599,-2644,-2627,-2623,-2487,-2412,-2362,-2392,-2420,-2439,-2480,-2532,-2563,-2583,-2610,-2635,
+-2647,-2725,-2822,-2883,-2936,-2978,-3012,-3036,-3065,-3095,-3117,-3128,-3149,-3168,-3187,-3269,-3353,-3440,-3545,-3650,
+-3761,-3882,-4024,-4170,-4254,-4260,-4250,-4308,-4342,-4397,-4464,-4531,-4590,-4626,-4640,-4652,-4686,-4696,-4675,-4593,
+-4495,-4425,-4406,-4450,-4542,-4585,-4633,-4670,-4712,-4741,-4764,-4795,-4809,-4804,-4741,-4730,-4780,-4864,-5005,-5143,
+-5265,-5364,-5420,-5464,-5502,-5522,-5523,-5553,-5573,-5618,-5692,-5761,-5830,-5889,-5946,-5999,-6045,-6082,-6116,-6142,
+-6166,-6186,-6205,-6222,-6249,-6295,-6353,-6405,-6448,-6487,-6520,-6547,-6564,-6567,-6582,-6592,-6587,-6567,-6520,-6481,
+-6448,-6407,-6372,-6322,-6270,-6225,-6161,-6087,-6006,-5886,-5715,-5610,-5548,-5488,-5417,-5357,-5299,-5224,-5120,-4998,
+-4931,-4858,-4745,-4636,-4571,-4537,-4515,-4562,-4672,-4853,-4985,-5066,-5143,-5185,-5079,-5046,-5007,-4988,-4821,-4857,
+-4962,-4968,-4962,-4947,-4925,-4826,-4586,-4559,-4488,-4388,-4306,-4110,-4016,-3972,-3925,-3872,-3811,-3776,-3754,-3734,
+-3704,-3617,-3583,-3540,-3514,-3555,-3423,-3322,-3292,-3254,-3216,-3205,-3197,-3178,-3139,-3106,-3110,-3122,-3133,-3155,
+-3145,-3138,-3061,-2996,-2966,-2910,-2861,-2825,-2752,-2723,-2697,-2639,-2572,-2509,-2444,-2379,-2313,-2209,-2102,-2027,
+-1997,-1958,-1889,-1796,-1699,-1625,-1546,-1472,-1398,-1307,-1212,-1069,-974,-873,-808,-776,-698,-608,-494,-389,
+-305,-219,-111,7,114,214,346,457,553,665,756,881,961,1037,1131,1193,1270,1335,1435,1520,
+1575,1646,1723,1799,1867,1932,2000,2070,2148,2217,2285,2360,2457,2533,2601,2651,2688,2713,2753,2791,
+2798,2830,2892,2907,2859,2769,2646,2615,2601,2651,2699,2673,2573,2506,2475,2551,2682,2832,2986,3119,
+3184,3209,3310,3460,3528,3623,3659,3704,3738,3754,3716,3765,3738,3713,3662,3638,3649,3698,3796,3866,
+3922,3922,3999,3957,3977,4022,4079,4122,4167,4219,4250,4268,4317,4340,4372,4394,4422,4475,4501,4509,
+4495,4470,4379,4161,3927,3847,3896,3997,3923,3712,3492,3401,3614,3843,3965,3917,3789,3675,3671,3748,
+3765,3768,3686,3566,3508,3537,3631,3520,3487,3593,3528,3353,3249,3126,2987,2868,2836,2790,2751,2729,
+2707,2687,2650,2624,2596,2547,2489,2432,2384,2316,2270,2255,2175,2089,1999,1934,1875,1814,1752,1687,
+1618,1549,1490,1440,1400,1365,1337,1314,1280,1246,1226,1197,1163,1129,1084,1032,972,919,876,844,
+817,783,757,732,729,729,700,661,625,585,542,530,448,389,339,303,273,247,226,207,
+173,136,104,69,49,27,8,-3,-18,-69,-104,-146,-156,-124,-193,-209,-252,-266,-285,-293,
+-299,-321,-352,-377,-400,-416,-424,-432,-440,-442,-447,-449,-463,-475,-475,-472,-474,-478,-485,-488,
+-488,-485,-488,-487,-477,-469,-462,-460,-444,-427,-416,-398,-382,-376,-382,-381,-370,-362,-348,-334,
+-317,-300,-282,-262,-248,-237,-232,-227,-199,-159,-192,-191,-184,-175,-168,-149,-131,-97,-36,65,
+209,376,501,505,560,393,309,338,455,573,672,883,768,778,966,1031,906,666,514,546,
+735,712,662,779,774,710,742,850,616,527,369,309,308,334,360,378,426,416,410,409,
+404,406,393,379,366,357,348,338,329,313,296,291,295,297,286,260,242,283,266,201,
+177,160,136,112,97,69,47,11,-19,-52,-88,-129,-170,-210,-252,-288,-333,-380,-425,-464,
+-504,-550,-590,-635,-680,-723,-762,-803,-842,-876,-908,-940,-977,-1013,-1048,-1083,-1117,-1149,-1178,-1202,
+-1225,-1253,-1282,-1311,-1344,-1377,-1409,-1435,-1467,-1495,-1521,-1549,-1572,-1594,-1622,-1655,-1690,-1719,-1750,-1780,
+-1811,-1843,-1879,-1909,-1939,-1972,-2011,-2054,-2103,-2139,-2170,-2196,-2221,-2248,-2282,-2322,-2358,-2403,-2454,-2505,
+-2557,-2602,-2645,-2683,-2720,-2765,-2809,-2847,-2886,-2924,-2967,-3002,-3043,-3091,-3135,-3168,-3217,-3263,-3314,-3338,
+-3370,-3413,-3452,-3502,-3544,-3581,-3627,-3664,-3695,-3733,-3772,-3810,-3850,-3892,-3924,-3959,-3998,-4026,-4055,-4084,
+-4118,-4148,-4184,-4217,-4241,-4259,-4279,-4308,-4331,-4365,-4393,-4422,-4449,-4475,-4502,-4518,-4538,-4544,-4551,-4557,
+-4576,-4579,-4607,-4630,-4638,-4643,-4646,-4652,-4650,-4650,-4662,-4675,-4679,-4664,-4657,-4646,-4637,-4647,-4632,-4589,
+-4581,-4588,-4581,-4565,-4543,-4520,-4512,-4496,-4478,-4447,-4413,-4393,-4369,-4340,-4312,-4285,-4251,-4227,-4213,-4178,
+-4147,-4166,-4183,-4059,-3899,-3771,-3721,-3698,-3718,-3702,-3649,-3538,-3439,-3465,-3483,-3459,-3510,-3509,-3458,-3372,
+-3265,-3195,-3138,-3087,-3035,-2977,-2900,-2795,-2633,-2597,-2407,-2291,-2236,-2135,-2109,-2121,-2124,-2142,-2104,-2057,
+-2032,-2026,-2018,-2041,-2070,-2050,-2008,-1948,-1904,-1865,-1832,-1800,-1781,-1816,-1836,-1814,-1869,-1960,-2010,-2034,
+-2103,-2195,-2288,-2350,-2397,-2419,-2400,-2358,-2292,-2227,-2227,-2283,-2374,-2511,-2712,-2898,-3023,-3149,-3245,-3274,
+-3265,-3228,-3165,-3107,-3067,-3035,-3002,-2964,-2922,-2873,-2843,-2824,-2827,-2828,-2818,-2798,-2764,-2727,-2694,-2677,
+-2658,-2649,-2642,-2636,-2637,-2635,-2617,-2593,-2564,-2547,-2539,-2522,-2495,-2485,-2507,-2569,-2661,-2752,-2772,-2636,
+-2535,-2496,-2482,-2471,-2445,-2435,-2433,-2432,-2408,-2390,-2398,-2426,-2472,-2523,-2557,-2587,-2630,-2698,-2798,-2940,
+-2993,-2928,-2901,-2941,-3002,-3076,-3160,-3320,-3601,-3713,-3935,-4059,-4186,-4271,-4302,-4308,-4296,-4283,-4284,-4314,
+-4368,-4439,-4504,-4561,-4624,-4686,-4739,-4787,-4833,-4882,-4934,-4985,-5038,-5085,-5130,-5169,-5201,-5227,-5245,-5251,
+-5249,-5240,-5226,-5206,-5177,-5154,-5130,-5107,-5087,-5061,-5036,-5019,-5001,-4994,-4995,-4991,-5013,-5033,-5017,-5022,
+-4998,-5016,-5026,-5044,-5056,-5080,-5095,-5111,-5114,-5106,-5095,-5073,-5050,-5029,-4993,-4956,-4922,-4898,-4867,-4831,
+-4801,-4783,-4757,-4721,-4675,-4637,-4575,-4534,-4480,-4445,-4402,-4338,-4281,-4237,-4183,-4130,-4067,-4001,-3942,-3874,
+-3813,-3731,-3653,-3600,-3520,-3443,-3366,-3296,-3217,-3158,-3094,-3020,-2931,-2865,-2786,-2717,-2643,-2552,-2473,-2395,
+-2283,-2212,-2119,-2025,-1933,-1844,-1731,-1620,-1531,-1454,-1370,-1267,-1163,-1051,-947,-848,-755,-743,-658,-537,
+-511,-502,-456,-404,-352,-298,-225,-162,-108,-50,11,61,88,127,181,207,241,285,327,371,
+434,491,519,557,590,636,682,740,787,820,874,910,941,980,1019,1040,1069,1102,1135,1167,
+1192,1225,1275,1325,1385,1431,1470,1514,1547,1572,1616,1650,1703,1750,1795,1855,1913,1964,1998,2036,
+2067,2088,2115,2144,2187,2201,2219,2234,2256,2276,2299,2314,2349,2450,2364,2350,2359,2355,2360,2360,
+2376,2405,2439,2463,2493,2526,2562,2592,2626,2659,2702,2752,2803,2851,2905,2959,3037,3142,3173,3239,
+3311,3371,3413,3439,3437,3407,3361,3297,3225,3151,3088,3055,3075,3151,3248,3306,3332,3351,3390,3430,
+3475,3528,3604,3695,3791,3875,3936,3941,3899,3885,3916,3957,3992,4006,4016,4014,3993,3962,3920,3863,
+3795,3731,3661,3577,3518,3464,3411,3340,3277,3245,3212,3179,3153,3132,3115,3108,3107,3122,3153,3186,
+3191,3163,3112,3073,3044,3025,3006,2987,2955,2903,2827,2757,2707,2684,2675,2673,2658,2635,2605,2650,
+2647,2647,2648,2638,2626,2628,2642,2670,2707,2732,2799,2900,3029,3117,3199,3268,3329,3410,3431,3426,
+3432,3442,3503,3520,3510,3512,3518,3498,3476,3463,3463,3484,3490,3458,3403,3317,3219,3157,3114,3064,
+3021,2998,2949,2917,2916,2941,2897,2869,2841,2802,2752,2699,2658,2621,2595,2571,2553,2538,2539,2560,
+2597,2639,2685,2724,2782,2831,2852,2869,2862,2827,2776,2719,2668,2639,2598,2545,2491,2421,2361,2315,
+2252,2189,2141,2085,2025,1981,1948,1936,1933,1907,1845,1761,1686,1635,1607,1608,1615,1602,1573,1535,
+1493,1477,1466,1456,1448,1431,1405,1350,1310,1292,1287,1310,1310,1306,1294,1279,1276,1304,1354,1361,
+1300,1281,1300,1335,1394,1413,1419,1421,1351,1203,1177,1191,1201,1262,1328,1350,1323,1305,1155,1080,
+1035,1032,1000,986,965,961,986,1000,1050,1136,1127,1112,1085,1065,1089,1136,1149,1089,1059,1049,
+980,960,957,932,899,815,762,700,622,555,491,382,286,217,146,71,0,-90,-137,-153,
+-176,-224,-337,-462,-571,-679,-815,-952,-1095,-1245,-1378,-1519,-1684,-1845,-2003,-2139,-2239,-2385,-2519,-2626,
+-2727,-2813,-2860,-2898,-2932,-2959,-2990,-3023,-3061,-3095,-3113,-3134,-3161,-3185,-3205,-3229,-3262,-3304,-3358,-3396,
+-3420,-3408,-3268,-2985,-2607,-2529,-2655,-2653,-2685,-2641,-2592,-2575,-2585,-2589,-2608,-2638,-2688,-2706,-2716,-2724,
+-2739,-2769,-2806,-2879,-2937,-2983,-3042,-3064,-3075,-3111,-3171,-3195,-3221,-3260,-3293,-3361,-3451,-3532,-3622,-3707,
+-3797,-3926,-4066,-4164,-4225,-4285,-4313,-4319,-4361,-4373,-4419,-4495,-4558,-4613,-4648,-4663,-4671,-4698,-4709,-4669,
+-4590,-4524,-4469,-4472,-4512,-4602,-4674,-4696,-4723,-4748,-4764,-4784,-4804,-4827,-4784,-4705,-4731,-4824,-4954,-5088,
+-5196,-5302,-5378,-5422,-5451,-5471,-5482,-5481,-5517,-5535,-5583,-5655,-5730,-5801,-5873,-5924,-5978,-6018,-6045,-6072,
+-6090,-6108,-6128,-6148,-6170,-6190,-6229,-6273,-6313,-6348,-6384,-6420,-6450,-6474,-6477,-6481,-6490,-6492,-6477,-6449,
+-6415,-6375,-6335,-6291,-6241,-6223,-6192,-6105,-6025,-5956,-5850,-5684,-5579,-5537,-5490,-5438,-5391,-5353,-5281,-5153,
+-4978,-4908,-4880,-4744,-4565,-4448,-4406,-4421,-4476,-4581,-4729,-4866,-4921,-4950,-4926,-4845,-4874,-4965,-4913,-4980,
+-5010,-4975,-4934,-4931,-4895,-4862,-4785,-4613,-4571,-4504,-4418,-4258,-4075,-4060,-4003,-3955,-3904,-3861,-3839,-3807,
+-3744,-3688,-3635,-3579,-3529,-3490,-3477,-3376,-3319,-3315,-3284,-3222,-3224,-3183,-3167,-3118,-3108,-3115,-3114,-3116,
+-3119,-3112,-3155,-3105,-3006,-3008,-2962,-2892,-2823,-2745,-2703,-2678,-2615,-2532,-2451,-2435,-2379,-2323,-2200,-2115,
+-2096,-2005,-1910,-1783,-1724,-1696,-1606,-1505,-1412,-1310,-1205,-1139,-1038,-914,-838,-774,-717,-649,-546,-459,
+-344,-263,-171,-38,44,166,289,436,513,595,718,816,905,1001,1075,1130,1205,1310,1412,1495,
+1547,1621,1693,1757,1832,1883,1944,2019,2076,2129,2172,2255,2321,2390,2464,2539,2600,2657,2704,2756,
+2773,2786,2863,2906,2823,2688,2561,2458,2463,2505,2591,2615,2548,2488,2477,2569,2692,2845,2979,3116,
+3235,3297,3316,3376,3409,3450,3514,3582,3625,3694,3774,3769,3763,3732,3758,3675,3623,3587,3623,3693,
+3765,3899,3926,3976,3997,3988,4044,4094,4145,4190,4236,4276,4293,4330,4370,4400,4421,4451,4484,4512,
+4537,4543,4526,4516,4436,4100,3972,3970,4006,3909,3711,3450,3372,3633,3853,3987,3938,3838,3735,3666,
+3624,3601,3570,3521,3449,3385,3342,3374,3478,3352,3331,3270,3249,3225,3107,2995,2935,2916,2800,2774,
+2757,2738,2718,2695,2674,2654,2583,2534,2487,2435,2385,2346,2373,2252,2160,2071,2002,1940,1875,1803,
+1735,1665,1596,1529,1481,1452,1420,1389,1371,1340,1309,1282,1254,1217,1181,1137,1078,1016,956,909,
+880,857,836,834,808,802,781,739,711,670,637,625,556,511,466,410,353,302,267,236,
+209,176,150,124,106,91,76,57,83,0,-42,-20,-68,-100,-127,-161,-186,-209,-226,-241,
+-248,-257,-277,-308,-341,-366,-380,-388,-399,-405,-408,-411,-415,-432,-436,-434,-434,-433,-440,-456,
+-465,-467,-467,-467,-461,-455,-454,-462,-452,-435,-424,-411,-392,-376,-372,-368,-362,-349,-333,-318,
+-303,-287,-268,-250,-231,-210,-200,-187,-172,-162,-159,-162,-161,-148,-135,-121,-103,-82,-57,-17,
+52,135,207,245,248,313,210,222,340,690,756,724,615,596,847,1151,1337,1329,979,729,
+796,959,746,762,945,1038,1068,1170,1114,802,768,492,331,294,304,328,356,382,397,404,
+409,403,422,403,389,383,385,382,368,350,343,333,323,322,323,312,300,292,277,252,
+242,235,213,191,171,155,146,109,85,57,22,-17,-53,-93,-124,-162,-210,-256,-299,-339,
+-390,-439,-490,-540,-588,-633,-679,-725,-765,-807,-847,-883,-920,-957,-994,-1031,-1066,-1102,-1129,-1146,
+-1173,-1198,-1229,-1260,-1289,-1323,-1356,-1389,-1419,-1452,-1480,-1509,-1535,-1564,-1588,-1617,-1645,-1679,-1709,-1739,
+-1772,-1805,-1834,-1862,-1892,-1925,-1958,-1993,-2037,-2086,-2120,-2149,-2176,-2204,-2239,-2283,-2319,-2351,-2393,-2443,
+-2495,-2553,-2596,-2633,-2673,-2717,-2762,-2809,-2848,-2886,-2928,-2973,-3007,-3048,-3092,-3142,-3187,-3234,-3287,-3319,
+-3345,-3384,-3417,-3451,-3490,-3535,-3575,-3607,-3643,-3690,-3732,-3770,-3804,-3840,-3876,-3911,-3946,-3981,-4016,-4051,
+-4084,-4114,-4142,-4166,-4199,-4223,-4243,-4268,-4295,-4318,-4353,-4385,-4419,-4446,-4465,-4487,-4508,-4523,-4542,-4552,
+-4552,-4574,-4580,-4605,-4631,-4638,-4648,-4654,-4659,-4658,-4662,-4678,-4688,-4687,-4677,-4663,-4645,-4635,-4646,-4644,
+-4615,-4581,-4580,-4575,-4553,-4531,-4530,-4517,-4498,-4481,-4450,-4418,-4403,-4385,-4361,-4331,-4299,-4264,-4234,-4203,
+-4178,-4135,-4122,-4152,-4125,-3948,-3834,-3778,-3706,-3700,-3697,-3662,-3599,-3488,-3413,-3444,-3462,-3497,-3511,-3473,
+-3450,-3341,-3224,-3170,-3105,-3047,-2988,-2930,-2841,-2721,-2615,-2436,-2390,-2303,-2161,-2118,-2111,-2094,-2138,-2111,
+-2070,-2038,-2026,-1983,-2016,-2016,-2023,-1987,-1919,-1836,-1789,-1755,-1745,-1743,-1707,-1680,-1604,-1616,-1797,-1971,
+-2017,-2055,-2121,-2205,-2270,-2318,-2351,-2349,-2316,-2257,-2198,-2210,-2283,-2386,-2521,-2689,-2850,-2987,-3136,-3235,
+-3272,-3264,-3239,-3194,-3146,-3110,-3074,-3036,-3004,-2957,-2894,-2844,-2816,-2799,-2786,-2774,-2753,-2727,-2697,-2672,
+-2658,-2652,-2661,-2679,-2706,-2738,-2738,-2699,-2654,-2605,-2564,-2534,-2506,-2481,-2457,-2466,-2511,-2584,-2679,-2744,
+-2673,-2534,-2453,-2419,-2397,-2367,-2368,-2380,-2397,-2398,-2376,-2365,-2372,-2402,-2453,-2503,-2570,-2650,-2733,-2813,
+-2939,-2957,-2873,-2837,-2873,-2939,-3022,-3131,-3310,-3596,-3733,-3728,-3593,-3812,-4081,-4233,-4291,-4288,-4271,-4265,
+-4288,-4343,-4412,-4488,-4551,-4605,-4663,-4717,-4766,-4813,-4861,-4916,-4969,-5017,-5068,-5112,-5153,-5189,-5217,-5237,
+-5247,-5248,-5241,-5229,-5206,-5180,-5156,-5128,-5104,-5067,-5067,-5067,-5047,-5028,-5013,-5011,-5021,-5014,-5041,-5042,
+-5040,-5045,-5034,-5056,-5064,-5084,-5109,-5124,-5141,-5144,-5135,-5122,-5104,-5076,-5042,-5012,-4982,-4946,-4916,-4889,
+-4856,-4822,-4791,-4757,-4733,-4724,-4690,-4631,-4577,-4522,-4458,-4421,-4374,-4300,-4247,-4197,-4158,-4117,-4036,-3983,
+-3917,-3858,-3778,-3710,-3625,-3569,-3504,-3440,-3367,-3296,-3218,-3157,-3090,-2987,-2891,-2804,-2723,-2647,-2576,-2501,
+-2431,-2318,-2225,-2163,-2074,-1978,-1894,-1811,-1725,-1639,-1545,-1451,-1361,-1268,-1169,-1056,-947,-873,-801,-704,
+-676,-629,-552,-490,-447,-389,-310,-256,-201,-132,-88,-29,-17,18,60,107,151,186,220,276,
+325,375,410,449,494,535,568,617,658,709,747,790,828,861,888,912,971,997,1026,1069,
+1099,1124,1172,1213,1252,1310,1360,1407,1448,1482,1522,1568,1610,1652,1698,1758,1819,1874,1911,1951,
+1982,2007,2030,2058,2104,2126,2157,2175,2190,2203,2215,2234,2252,2267,2276,2265,2276,2287,2290,2296,
+2310,2334,2369,2402,2431,2465,2500,2544,2580,2609,2652,2698,2742,2783,2826,2874,2922,2985,3058,3141,
+3226,3372,3385,3388,3413,3415,3389,3340,3274,3201,3135,3087,3083,3151,3243,3314,3338,3346,3365,3392,
+3424,3469,3541,3637,3736,3831,3910,3960,3946,3907,3900,3921,3960,3972,3968,3965,3959,3945,3912,3868,
+3815,3754,3686,3623,3552,3486,3422,3365,3302,3240,3189,3156,3125,3099,3084,3078,3071,3082,3091,3121,
+3144,3150,3120,3066,3017,2976,2957,2945,2938,2913,2871,2807,2748,2707,2693,2689,2688,2679,2660,2650,
+2697,2710,2729,2727,2718,2698,2699,2703,2718,2744,2770,2846,2953,3076,3173,3264,3324,3368,3409,3441,
+3476,3516,3516,3548,3574,3570,3560,3559,3549,3514,3482,3472,3539,3580,3552,3500,3399,3288,3208,3152,
+3073,3018,3006,2948,2918,2903,2906,2889,2868,2839,2799,2745,2691,2645,2603,2566,2537,2514,2501,2507,
+2524,2570,2625,2673,2721,2790,2840,2859,2861,2845,2801,2755,2717,2672,2629,2583,2532,2486,2422,2360,
+2306,2249,2187,2137,2074,2009,1956,1909,1882,1867,1837,1777,1708,1641,1591,1570,1566,1570,1569,1553,
+1543,1518,1510,1486,1472,1471,1455,1437,1382,1339,1347,1343,1355,1371,1377,1373,1327,1301,1291,1305,
+1320,1291,1278,1307,1354,1418,1435,1433,1468,1399,1216,1184,1161,1161,1212,1258,1284,1305,1307,1212,
+1085,1017,997,990,979,898,883,914,956,1015,1102,1171,1172,1109,1087,1068,1080,1075,1040,1021,
+994,947,927,933,907,849,780,720,648,571,518,473,412,327,249,175,94,27,-32,-84,
+-112,-148,-237,-359,-466,-578,-679,-793,-935,-1088,-1242,-1380,-1523,-1693,-1872,-2032,-2161,-2257,-2404,-2530,
+-2636,-2728,-2818,-2881,-2919,-2952,-2983,-3017,-3056,-3091,-3114,-3132,-3161,-3194,-3213,-3228,-3253,-3281,-3314,-3346,
+-3382,-3415,-3368,-3179,-2821,-2465,-2531,-2673,-2729,-2799,-2799,-2772,-2762,-2768,-2768,-2786,-2833,-2891,-2935,-2931,
+-2920,-2909,-2925,-2947,-2975,-3021,-3071,-3126,-3158,-3210,-3260,-3310,-3342,-3366,-3407,-3481,-3569,-3666,-3761,-3848,
+-3917,-4019,-4128,-4208,-4263,-4298,-4328,-4343,-4372,-4382,-4396,-4436,-4512,-4577,-4633,-4673,-4693,-4702,-4707,-4695,
+-4648,-4580,-4541,-4541,-4570,-4608,-4654,-4761,-4789,-4808,-4795,-4788,-4809,-4838,-4824,-4721,-4723,-4803,-4942,-5092,
+-5166,-5201,-5285,-5365,-5413,-5437,-5453,-5464,-5463,-5502,-5529,-5577,-5647,-5732,-5803,-5858,-5914,-5959,-5987,-6007,
+-6028,-6053,-6069,-6087,-6106,-6123,-6129,-6151,-6186,-6223,-6259,-6294,-6331,-6356,-6380,-6381,-6376,-6387,-6387,-6381,
+-6371,-6352,-6310,-6260,-6204,-6147,-6131,-6109,-6031,-5930,-5861,-5812,-5684,-5552,-5532,-5505,-5466,-5422,-5400,-5358,
+-5257,-5123,-5056,-5006,-4945,-4858,-4746,-4705,-4708,-4673,-4675,-4648,-4731,-4758,-4788,-4827,-4867,-4925,-4954,-5000,
+-5119,-5098,-4993,-4915,-4870,-4824,-4783,-4719,-4657,-4590,-4535,-4386,-4185,-4125,-4079,-4020,-3979,-3926,-3888,-3848,
+-3838,-3761,-3711,-3664,-3573,-3534,-3504,-3456,-3406,-3353,-3319,-3272,-3251,-3226,-3179,-3141,-3116,-3099,-3088,-3137,
+-3131,-3112,-3102,-3141,-3095,-3026,-3016,-2971,-2897,-2830,-2746,-2717,-2683,-2649,-2564,-2481,-2451,-2382,-2317,-2203,
+-2157,-2102,-1996,-1857,-1782,-1712,-1633,-1494,-1362,-1317,-1255,-1201,-1119,-1014,-920,-869,-750,-692,-619,-507,
+-415,-296,-192,-112,18,106,205,358,486,546,641,780,829,908,1013,1092,1156,1247,1337,1436,
+1540,1597,1649,1718,1780,1856,1930,1972,2011,2062,2100,2157,2233,2301,2370,2444,2522,2593,2646,2689,
+2716,2757,2787,2821,2799,2660,2500,2417,2433,2477,2517,2529,2498,2453,2472,2594,2737,2871,2995,3107,
+3219,3329,3398,3465,3531,3532,3530,3483,3441,3452,3479,3573,3716,3751,3693,3653,3616,3593,3608,3662,
+3711,3767,3816,3941,4028,3984,3989,4060,4113,4168,4214,4258,4303,4358,4383,4404,4425,4450,4469,4488,
+4545,4589,4591,4574,4586,4516,4224,4087,4086,4103,3932,3672,3386,3253,3492,3798,3912,3916,3900,3841,
+3769,3690,3624,3576,3526,3463,3390,3339,3385,3495,3293,3210,3297,3377,3412,3235,3088,2964,2860,2811,
+2795,2779,2757,2743,2716,2681,2651,2611,2572,2532,2505,2496,2393,2334,2252,2180,2107,2052,1996,1932,
+1868,1798,1728,1671,1600,1539,1511,1479,1454,1426,1399,1367,1335,1304,1268,1229,1191,1136,1069,1006,
+956,924,900,885,883,870,854,824,815,769,726,724,659,601,565,521,457,397,343,300,
+271,241,207,183,169,156,137,116,96,83,20,-6,-9,-26,-46,-77,-107,-124,-151,-174,
+-188,-196,-210,-233,-265,-294,-315,-328,-341,-350,-354,-362,-367,-375,-383,-389,-388,-391,-393,-404,
+-420,-434,-437,-436,-432,-428,-426,-433,-442,-433,-424,-413,-395,-378,-365,-358,-345,-336,-323,-300,
+-282,-267,-252,-236,-218,-197,-171,-159,-149,-128,-112,-112,-120,-119,-104,-87,-76,-64,-49,-28,
+-8,18,59,91,101,100,97,43,73,249,583,638,678,502,433,548,793,1020,1220,1121,
+857,757,722,638,681,913,1218,1376,1515,1280,906,961,640,382,307,292,313,346,373,394,
+404,412,408,400,398,411,396,397,397,384,367,396,455,413,350,334,337,331,318,304,
+295,286,274,256,236,224,208,195,176,148,125,90,51,23,-11,-47,-86,-134,-181,-223,
+-264,-316,-370,-424,-482,-533,-582,-630,-681,-729,-776,-820,-859,-897,-936,-969,-1002,-1036,-1070,-1101,
+-1126,-1143,-1182,-1215,-1248,-1280,-1311,-1337,-1374,-1402,-1434,-1465,-1494,-1520,-1550,-1580,-1609,-1637,-1669,-1702,
+-1734,-1767,-1803,-1838,-1865,-1887,-1910,-1932,-1966,-2017,-2064,-2097,-2128,-2155,-2185,-2239,-2291,-2325,-2362,-2402,
+-2457,-2508,-2550,-2581,-2616,-2658,-2707,-2764,-2816,-2854,-2891,-2932,-2977,-3022,-3064,-3104,-3149,-3200,-3250,-3286,
+-3318,-3343,-3370,-3409,-3444,-3480,-3515,-3555,-3598,-3646,-3683,-3729,-3760,-3783,-3818,-3858,-3895,-3934,-3979,-4019,
+-4054,-4079,-4110,-4140,-4168,-4194,-4218,-4236,-4259,-4290,-4320,-4350,-4377,-4402,-4429,-4451,-4480,-4503,-4525,-4536,
+-4550,-4558,-4574,-4588,-4610,-4627,-4643,-4649,-4665,-4671,-4656,-4677,-4688,-4694,-4689,-4677,-4664,-4649,-4642,-4644,
+-4643,-4620,-4550,-4585,-4571,-4572,-4558,-4546,-4515,-4498,-4479,-4454,-4435,-4426,-4402,-4366,-4321,-4289,-4265,-4250,
+-4219,-4191,-4158,-4120,-4125,-4127,-4075,-3952,-3835,-3774,-3684,-3682,-3671,-3622,-3532,-3435,-3405,-3458,-3501,-3524,
+-3508,-3453,-3386,-3290,-3194,-3117,-3054,-3006,-2938,-2869,-2772,-2678,-2580,-2480,-2334,-2206,-2120,-2123,-2120,-2092,
+-2061,-2075,-2069,-2039,-2018,-1991,-1964,-1922,-1908,-1887,-1846,-1796,-1703,-1645,-1605,-1594,-1537,-1506,-1467,-1596,
+-1845,-1933,-1974,-2039,-2109,-2177,-2231,-2277,-2293,-2269,-2211,-2172,-2187,-2270,-2391,-2525,-2664,-2827,-2988,-3146,
+-3236,-3270,-3270,-3250,-3210,-3167,-3127,-3085,-3045,-3006,-2948,-2886,-2836,-2802,-2771,-2749,-2735,-2718,-2698,-2672,
+-2657,-2650,-2659,-2685,-2736,-2794,-2833,-2834,-2797,-2746,-2670,-2598,-2537,-2489,-2458,-2434,-2437,-2473,-2534,-2620,
+-2713,-2713,-2551,-2413,-2350,-2316,-2310,-2316,-2343,-2371,-2386,-2376,-2354,-2341,-2352,-2396,-2456,-2532,-2601,-2679,
+-2812,-2918,-2924,-2864,-2792,-2805,-2875,-2958,-3181,-3446,-3549,-3526,-3427,-3371,-3442,-3657,-4038,-4246,-4282,-4266,
+-4254,-4274,-4323,-4391,-4457,-4524,-4590,-4648,-4694,-4738,-4787,-4840,-4894,-4949,-5000,-5053,-5099,-5140,-5175,-5205,
+-5222,-5238,-5244,-5237,-5227,-5207,-5185,-5162,-5139,-5121,-5093,-5069,-5044,-5047,-5047,-5036,-5037,-5040,-5053,-5045,
+-5064,-5076,-5072,-5064,-5086,-5092,-5111,-5127,-5150,-5162,-5166,-5160,-5147,-5128,-5095,-5063,-5033,-5000,-4974,-4941,
+-4910,-4882,-4851,-4816,-4781,-4757,-4729,-4707,-4667,-4632,-4591,-4527,-4475,-4422,-4352,-4276,-4222,-4186,-4116,-4077,
+-4031,-3965,-3865,-3785,-3743,-3676,-3611,-3563,-3503,-3408,-3369,-3290,-3203,-3124,-3035,-2951,-2875,-2779,-2692,-2638,
+-2546,-2461,-2373,-2267,-2185,-2113,-2016,-1920,-1832,-1750,-1656,-1562,-1458,-1357,-1261,-1159,-1049,-920,-921,-805,
+-706,-695,-686,-654,-605,-544,-456,-389,-329,-280,-223,-176,-127,-94,-66,-17,19,67,112,147,
+201,257,303,344,389,435,472,512,555,593,635,672,709,739,766,803,849,906,941,950,
+988,1032,1084,1127,1168,1215,1256,1307,1352,1383,1427,1466,1515,1554,1603,1662,1723,1783,1824,1868,
+1908,1936,1950,1967,2003,2039,2067,2099,2126,2146,2151,2161,2176,2185,2200,2205,2201,2205,2214,2232,
+2244,2260,2291,2332,2367,2411,2441,2478,2514,2547,2577,2617,2660,2703,2750,2799,2847,2901,2972,3018,
+3085,3170,3313,3335,3342,3369,3377,3359,3312,3250,3181,3126,3099,3136,3226,3307,3346,3354,3360,3380,
+3405,3451,3508,3589,3690,3807,3888,3947,3969,3948,3928,3918,3933,3951,3932,3917,3899,3890,3889,3856,
+3819,3766,3707,3636,3572,3522,3461,3407,3346,3284,3228,3175,3133,3101,3063,3054,3048,3036,3045,3053,
+3073,3089,3090,3058,3011,2963,2925,2903,2888,2881,2864,2830,2782,2737,2715,2709,2711,2706,2698,2696,
+2697,2757,2778,2804,2815,2813,2789,2795,2802,2791,2803,2853,2912,3009,3120,3211,3279,3322,3378,3421,
+3461,3523,3580,3598,3577,3599,3604,3590,3580,3577,3567,3521,3517,3557,3563,3551,3522,3463,3385,3300,
+3224,3108,3037,3024,2950,2903,2888,2910,2896,2873,2839,2795,2739,2683,2630,2583,2541,2503,2483,2466,
+2475,2510,2549,2604,2651,2718,2784,2831,2854,2858,2836,2793,2741,2701,2668,2629,2594,2540,2496,2436,
+2367,2299,2249,2193,2138,2068,1998,1931,1870,1826,1795,1756,1705,1653,1597,1558,1529,1522,1529,1537,
+1541,1554,1569,1554,1527,1509,1490,1472,1451,1410,1378,1385,1378,1390,1413,1424,1406,1374,1343,1314,
+1318,1315,1286,1239,1249,1319,1360,1346,1344,1375,1340,1209,1144,1121,1132,1166,1227,1253,1264,1291,
+1254,1114,1023,969,973,925,868,876,882,932,988,1077,1189,1177,1136,1120,1127,1014,977,985,
+976,954,925,903,901,876,807,747,689,623,560,513,476,429,356,270,189,117,57,14,
+-34,-81,-148,-226,-341,-445,-559,-667,-786,-918,-1092,-1259,-1399,-1544,-1719,-1905,-2065,-2182,-2289,-2428,
+-2546,-2642,-2729,-2820,-2899,-2942,-2971,-3007,-3044,-3083,-3113,-3134,-3152,-3179,-3210,-3236,-3257,-3273,-3298,-3323,
+-3344,-3388,-3401,-3327,-3098,-2680,-2412,-2540,-2707,-2827,-2893,-2923,-2919,-2925,-2928,-2956,-2988,-3039,-3096,-3155,
+-3176,-3166,-3152,-3158,-3167,-3174,-3176,-3217,-3259,-3315,-3403,-3476,-3497,-3519,-3559,-3622,-3715,-3832,-3938,-4027,
+-4120,-4210,-4281,-4292,-4286,-4310,-4359,-4375,-4379,-4401,-4412,-4424,-4471,-4539,-4594,-4647,-4691,-4718,-4728,-4725,
+-4695,-4634,-4589,-4592,-4620,-4642,-4677,-4700,-4778,-4816,-4841,-4823,-4814,-4841,-4842,-4736,-4737,-4809,-4909,-5062,
+-5165,-5193,-5205,-5259,-5325,-5399,-5433,-5448,-5461,-5472,-5501,-5544,-5597,-5666,-5746,-5814,-5863,-5909,-5946,-5967,
+-5992,-6014,-6020,-6022,-6016,-6033,-6035,-6043,-6073,-6123,-6151,-6168,-6198,-6231,-6257,-6263,-6250,-6252,-6275,-6270,
+-6253,-6244,-6238,-6194,-6135,-6073,-6021,-6002,-5979,-5921,-5810,-5754,-5749,-5674,-5541,-5506,-5501,-5487,-5450,-5437,
+-5413,-5347,-5273,-5242,-5232,-5221,-5191,-5144,-5119,-5107,-5074,-5010,-4951,-4888,-4901,-4885,-4881,-5004,-5055,-5109,
+-5221,-5313,-5194,-5044,-4862,-4783,-4725,-4717,-4666,-4648,-4600,-4550,-4374,-4202,-4151,-4107,-4047,-4017,-3961,-3921,
+-3884,-3845,-3779,-3723,-3682,-3610,-3558,-3516,-3489,-3461,-3364,-3309,-3289,-3251,-3248,-3186,-3149,-3119,-3112,-3124,
+-3109,-3149,-3156,-3102,-3101,-3104,-3053,-2987,-2919,-2888,-2838,-2762,-2710,-2697,-2664,-2563,-2481,-2453,-2386,-2278,
+-2182,-2130,-2064,-1965,-1850,-1728,-1670,-1582,-1462,-1348,-1318,-1240,-1132,-1016,-957,-935,-856,-757,-665,-559,
+-458,-354,-254,-140,-59,41,142,238,382,489,622,681,796,865,936,1024,1123,1209,1287,1386,
+1474,1572,1623,1686,1742,1826,1904,1970,2025,2008,2007,2049,2135,2216,2288,2353,2438,2525,2593,2673,
+2733,2760,2843,2799,2710,2668,2544,2488,2506,2556,2552,2490,2433,2407,2465,2599,2741,2897,3037,3154,
+3235,3310,3386,3475,3585,3662,3645,3621,3533,3445,3427,3430,3452,3518,3611,3646,3648,3684,3708,3677,
+3696,3713,3753,3852,3890,3957,3937,3937,4079,4131,4179,4230,4270,4330,4384,4401,4423,4454,4465,4476,
+4501,4593,4616,4620,4628,4663,4593,4377,4231,4215,4193,3954,3591,3300,3124,3266,3532,3742,3838,3898,
+3897,3861,3793,3718,3652,3588,3520,3455,3410,3491,3515,3303,3229,3293,3390,3467,3310,3116,2971,2879,
+2840,2827,2812,2784,2760,2730,2695,2674,2652,2606,2583,2603,2559,2432,2348,2271,2200,2145,2098,2051,
+1997,1939,1873,1803,1749,1693,1628,1590,1548,1520,1498,1461,1416,1384,1350,1322,1292,1252,1192,1135,
+1074,1019,980,951,941,929,911,894,916,970,836,788,796,702,657,618,569,503,432,375,
+337,312,282,262,246,232,219,190,164,137,91,64,69,39,24,1,-26,-39,-66,-91,
+-128,-141,-144,-169,-187,-215,-236,-248,-262,-271,-279,-290,-302,-311,-319,-324,-335,-332,-335,-341,
+-360,-377,-391,-396,-388,-383,-383,-391,-401,-408,-404,-401,-391,-375,-355,-344,-331,-321,-310,-296,
+-274,-248,-235,-217,-201,-181,-165,-151,-130,-108,-85,-71,-69,-74,-77,-64,-52,-40,-32,-15,
+-3,11,27,36,40,61,85,41,14,54,201,454,468,461,384,339,380,491,637,800,
+825,716,652,608,563,639,819,1094,1459,1659,1300,980,1101,786,484,371,336,347,371,393,
+406,415,422,425,423,413,404,405,408,407,398,382,397,412,387,366,364,362,359,341,
+333,327,317,302,288,280,271,263,253,239,220,197,170,147,102,67,37,-10,-47,-92,
+-136,-186,-249,-308,-359,-422,-477,-535,-592,-642,-688,-737,-779,-820,-860,-898,-931,-964,-1000,-1038,
+-1068,-1103,-1132,-1165,-1194,-1230,-1266,-1295,-1323,-1355,-1385,-1416,-1448,-1482,-1513,-1536,-1564,-1595,-1625,-1659,
+-1696,-1729,-1763,-1795,-1829,-1853,-1873,-1895,-1926,-1966,-2013,-2052,-2085,-2108,-2143,-2185,-2242,-2291,-2325,-2371,
+-2417,-2469,-2511,-2539,-2567,-2604,-2645,-2698,-2757,-2805,-2845,-2876,-2919,-2969,-3015,-3058,-3098,-3139,-3184,-3228,
+-3264,-3296,-3329,-3364,-3393,-3433,-3468,-3507,-3553,-3598,-3640,-3677,-3707,-3732,-3756,-3785,-3819,-3860,-3906,-3962,
+-4007,-4039,-4070,-4099,-4116,-4144,-4171,-4196,-4222,-4257,-4285,-4319,-4341,-4360,-4406,-4422,-4443,-4467,-4494,-4511,
+-4531,-4544,-4551,-4576,-4594,-4622,-4638,-4648,-4652,-4662,-4672,-4681,-4688,-4699,-4708,-4701,-4691,-4671,-4654,-4645,
+-4637,-4641,-4641,-4625,-4606,-4609,-4598,-4571,-4552,-4515,-4506,-4492,-4469,-4451,-4439,-4414,-4355,-4257,-4181,-4262,
+-4260,-4232,-4194,-4152,-4113,-4089,-4073,-4089,-4011,-3921,-3793,-3726,-3643,-3632,-3621,-3552,-3452,-3353,-3364,-3448,
+-3486,-3466,-3423,-3388,-3326,-3219,-3137,-3083,-3020,-2960,-2890,-2799,-2733,-2644,-2510,-2330,-2218,-2121,-2078,-2102,
+-2073,-2064,-2045,-2042,-1997,-1967,-1961,-1920,-1894,-1853,-1826,-1787,-1753,-1707,-1648,-1587,-1556,-1516,-1493,-1464,
+-1478,-1667,-1818,-1876,-1922,-1977,-2046,-2133,-2198,-2232,-2224,-2182,-2157,-2180,-2277,-2415,-2552,-2704,-2866,-3013,
+-3147,-3231,-3266,-3271,-3255,-3213,-3170,-3123,-3072,-3028,-2976,-2919,-2862,-2818,-2788,-2756,-2733,-2721,-2711,-2698,
+-2675,-2660,-2667,-2693,-2737,-2799,-2854,-2877,-2847,-2797,-2742,-2692,-2651,-2572,-2509,-2468,-2436,-2437,-2461,-2499,
+-2572,-2685,-2746,-2624,-2412,-2311,-2274,-2278,-2290,-2312,-2345,-2378,-2379,-2344,-2317,-2327,-2369,-2435,-2500,-2565,
+-2658,-2789,-2872,-2887,-2830,-2748,-2753,-2799,-2882,-3034,-3319,-3264,-3216,-3221,-3272,-3339,-3468,-3888,-4171,-4258,
+-4268,-4262,-4278,-4326,-4387,-4444,-4496,-4556,-4619,-4670,-4717,-4765,-4815,-4871,-4930,-4985,-5037,-5085,-5124,-5159,
+-5188,-5208,-5226,-5238,-5241,-5236,-5216,-5197,-5175,-5151,-5131,-5115,-5099,-5084,-5057,-5049,-5043,-5032,-5039,-5058,
+-5087,-5084,-5093,-5099,-5101,-5117,-5126,-5141,-5154,-5170,-5184,-5184,-5184,-5169,-5146,-5113,-5083,-5050,-5014,-4979,
+-4949,-4935,-4907,-4865,-4838,-4805,-4778,-4751,-4721,-4689,-4653,-4604,-4552,-4485,-4437,-4409,-4369,-4316,-4261,-4190,
+-4140,-4076,-4019,-3943,-3867,-3802,-3734,-3662,-3581,-3540,-3463,-3398,-3340,-3259,-3184,-3102,-3008,-2927,-2835,-2733,
+-2683,-2621,-2507,-2421,-2348,-2235,-2141,-2058,-1943,-1872,-1782,-1682,-1596,-1464,-1351,-1244,-1149,-1076,-1002,-996,
+-891,-803,-723,-691,-652,-612,-593,-547,-465,-421,-349,-313,-242,-197,-165,-128,-84,-32,-3,24,
+68,131,176,220,283,331,358,417,445,483,502,542,583,643,693,718,775,792,819,858,
+893,946,999,1026,1071,1134,1167,1206,1243,1287,1332,1378,1428,1465,1518,1570,1642,1693,1731,1785,
+1839,1858,1882,1900,1924,1951,1974,2004,2039,2064,2088,2101,2114,2127,2128,2135,2144,2150,2150,2159,
+2181,2203,2241,2275,2302,2336,2371,2410,2444,2480,2509,2540,2581,2623,2670,2714,2762,2810,2867,2925,
+2982,3037,3103,3169,3225,3279,3316,3326,3319,3278,3223,3172,3128,3118,3184,3279,3344,3368,3372,3373,
+3393,3432,3491,3567,3656,3768,3876,3940,3975,3969,3941,3915,3925,3911,3906,3887,3861,3831,3819,3808,
+3785,3757,3720,3665,3595,3536,3487,3426,3382,3333,3272,3207,3160,3118,3084,3048,3034,3030,3002,3011,
+3019,3028,3028,3015,2988,2954,2920,2888,2862,2844,2829,2808,2781,2744,2716,2710,2718,2723,2732,2735,
+2739,2757,2810,2838,2854,2883,2923,2888,2885,2898,2887,2887,2928,2982,3065,3159,3235,3294,3336,3379,
+3434,3498,3556,3602,3644,3619,3641,3642,3618,3600,3603,3593,3544,3506,3501,3509,3512,3503,3468,3405,
+3368,3310,3190,3097,3051,2963,2895,2870,2889,2885,2851,2815,2777,2728,2675,2618,2563,2508,2465,2454,
+2443,2454,2494,2542,2593,2649,2716,2786,2822,2847,2855,2834,2792,2730,2681,2660,2639,2606,2555,2511,
+2439,2370,2309,2252,2193,2137,2065,1989,1918,1846,1780,1729,1681,1634,1587,1546,1515,1489,1479,1488,
+1509,1532,1582,1628,1630,1607,1562,1501,1465,1446,1432,1420,1436,1438,1439,1435,1434,1431,1399,1356,
+1323,1312,1296,1264,1226,1232,1232,1266,1275,1278,1273,1246,1170,1133,1137,1123,1141,1197,1228,1257,
+1272,1260,1159,1043,966,930,901,842,843,877,906,968,1030,1134,1121,1092,1062,1144,1042,936,
+945,944,944,926,901,878,832,771,726,674,621,575,539,509,454,381,307,227,152,92,
+59,5,-77,-159,-265,-354,-441,-544,-651,-773,-940,-1136,-1310,-1435,-1579,-1764,-1955,-2109,-2218,-2335,
+-2463,-2566,-2652,-2737,-2826,-2920,-2971,-3001,-3034,-3072,-3107,-3142,-3165,-3180,-3204,-3236,-3262,-3283,-3289,-3309,
+-3323,-3351,-3382,-3379,-3306,-3115,-2799,-2514,-2525,-2680,-2877,-2943,-2996,-3043,-3082,-3098,-3147,-3199,-3252,-3313,
+-3351,-3381,-3387,-3389,-3395,-3412,-3433,-3429,-3438,-3490,-3577,-3670,-3749,-3805,-3837,-3872,-3966,-4052,-4172,-4267,
+-4321,-4397,-4463,-4509,-4470,-4415,-4388,-4392,-4413,-4424,-4430,-4446,-4476,-4517,-4565,-4617,-4670,-4717,-4748,-4766,
+-4760,-4721,-4647,-4609,-4633,-4666,-4689,-4706,-4746,-4805,-4811,-4807,-4817,-4831,-4869,-4832,-4780,-4807,-4892,-4996,
+-5129,-5195,-5216,-5238,-5281,-5330,-5398,-5443,-5456,-5476,-5496,-5517,-5563,-5615,-5679,-5746,-5804,-5858,-5892,-5926,
+-5945,-5975,-5973,-5937,-5944,-5954,-5985,-5984,-5992,-6013,-6047,-6076,-6091,-6115,-6128,-6144,-6130,-6106,-6123,-6150,
+-6131,-6103,-6078,-6058,-6017,-5950,-5899,-5881,-5843,-5818,-5783,-5685,-5643,-5680,-5651,-5562,-5519,-5512,-5506,-5484,
+-5462,-5424,-5366,-5337,-5336,-5345,-5353,-5355,-5338,-5315,-5301,-5276,-5252,-5239,-5158,-5054,-5014,-5031,-5141,-5210,
+-5337,-5456,-5445,-5281,-5039,-4824,-4675,-4628,-4661,-4672,-4624,-4599,-4546,-4310,-4283,-4202,-4121,-4040,-4028,-3960,
+-3958,-3886,-3848,-3804,-3722,-3671,-3638,-3581,-3557,-3511,-3449,-3381,-3315,-3290,-3261,-3234,-3163,-3136,-3108,-3123,
+-3172,-3154,-3160,-3135,-3133,-3105,-3059,-2983,-2884,-2890,-2837,-2830,-2767,-2729,-2685,-2632,-2547,-2471,-2407,-2356,
+-2257,-2172,-2071,-1982,-1929,-1833,-1696,-1643,-1542,-1426,-1347,-1288,-1199,-1111,-1002,-974,-923,-826,-699,-602,
+-512,-410,-323,-226,-130,-12,96,196,278,396,526,612,691,769,882,982,1089,1190,1263,1346,
+1447,1525,1595,1655,1715,1805,1922,2079,2140,1992,1933,1964,2022,2122,2204,2283,2352,2434,2525,2638,
+2751,2814,2790,2771,2699,2626,2580,2574,2620,2657,2632,2524,2408,2399,2486,2618,2751,2883,3014,3147,
+3256,3339,3396,3442,3511,3614,3744,3739,3739,3633,3526,3469,3466,3479,3523,3590,3679,3725,3730,3776,
+3747,3765,3746,3776,3819,3829,3885,4000,4052,4097,4141,4189,4229,4262,4341,4395,4445,4449,4470,4498,
+4512,4534,4594,4631,4663,4694,4725,4741,4557,4354,4307,4242,4006,3623,3290,3040,3073,3317,3563,3741,
+3838,3885,3893,3863,3800,3726,3653,3584,3524,3483,3511,3520,3347,3285,3291,3359,3316,3208,3078,2974,
+2929,2923,2914,2876,2820,2783,2747,2724,2697,2672,2661,2636,2673,2624,2466,2381,2307,2252,2212,2181,
+2139,2075,2008,1946,1891,1852,1816,1732,1677,1633,1602,1581,1526,1466,1426,1396,1379,1400,1341,1264,
+1205,1149,1105,1043,1009,1002,977,947,940,998,931,867,836,810,771,756,673,612,548,484,
+428,389,360,332,347,306,298,274,240,213,167,128,140,143,97,75,46,25,8,-26,
+-57,-77,-87,-94,-112,-136,-151,-170,-179,-190,-195,-204,-221,-240,-253,-261,-267,-273,-276,-281,
+-291,-308,-321,-332,-340,-328,-328,-334,-346,-354,-359,-364,-366,-363,-350,-333,-316,-301,-292,-283,
+-273,-259,-232,-210,-191,-176,-161,-141,-120,-99,-53,-28,-44,-42,-42,-42,-35,-23,-10,0,
+20,39,46,44,44,53,127,279,138,57,110,270,322,349,352,317,304,329,374,427,
+486,499,522,507,506,509,603,746,1003,1336,1595,1279,1101,1319,1037,699,516,463,460,466,
+455,451,451,452,455,451,437,419,404,407,411,412,402,392,382,374,376,377,375,364,
+358,356,350,341,330,319,313,313,310,306,295,278,260,239,212,172,141,109,79,47,
+3,-49,-108,-170,-240,-300,-364,-429,-489,-544,-594,-645,-690,-734,-776,-817,-860,-900,-939,-979,
+-1014,-1043,-1076,-1106,-1139,-1174,-1210,-1243,-1270,-1304,-1338,-1371,-1399,-1433,-1464,-1493,-1518,-1546,-1576,-1604,
+-1642,-1681,-1716,-1746,-1775,-1807,-1837,-1870,-1900,-1930,-1970,-2011,-2044,-2070,-2096,-2136,-2178,-2236,-2280,-2315,
+-2362,-2409,-2451,-2489,-2520,-2559,-2600,-2641,-2685,-2739,-2777,-2816,-2858,-2902,-2946,-2992,-3037,-3071,-3104,-3146,
+-3194,-3230,-3263,-3302,-3343,-3372,-3404,-3449,-3489,-3539,-3583,-3627,-3661,-3699,-3721,-3751,-3789,-3829,-3872,-3921,
+-3970,-4008,-4034,-4054,-4073,-4095,-4125,-4161,-4189,-4221,-4255,-4288,-4314,-4344,-4357,-4393,-4419,-4447,-4467,-4488,
+-4500,-4515,-4536,-4548,-4567,-4601,-4627,-4643,-4654,-4657,-4664,-4677,-4680,-4691,-4716,-4723,-4719,-4705,-4681,-4661,
+-4649,-4641,-4647,-4656,-4644,-4620,-4635,-4619,-4593,-4564,-4528,-4524,-4512,-4480,-4452,-4451,-4430,-4367,-4210,-4255,
+-4283,-4270,-4244,-4193,-4161,-4137,-4090,-4066,-4081,-4069,-3964,-3825,-3721,-3632,-3605,-3605,-3570,-3482,-3382,-3353,
+-3434,-3431,-3426,-3427,-3401,-3387,-3282,-3204,-3158,-3067,-2990,-2925,-2834,-2744,-2675,-2556,-2440,-2279,-2166,-2086,
+-2058,-2037,-2014,-2013,-1995,-1944,-1932,-1886,-1855,-1850,-1827,-1786,-1752,-1688,-1658,-1602,-1565,-1563,-1539,-1479,
+-1442,-1436,-1516,-1658,-1797,-1805,-1784,-1853,-1993,-2111,-2170,-2180,-2162,-2152,-2192,-2312,-2479,-2624,-2765,-2916,
+-3038,-3151,-3227,-3261,-3265,-3248,-3206,-3158,-3100,-3038,-2987,-2930,-2881,-2831,-2795,-2771,-2757,-2750,-2750,-2746,
+-2748,-2732,-2728,-2728,-2751,-2782,-2822,-2854,-2814,-2690,-2647,-2603,-2586,-2585,-2569,-2548,-2502,-2463,-2445,-2456,
+-2473,-2550,-2664,-2746,-2702,-2512,-2372,-2285,-2255,-2264,-2290,-2331,-2356,-2354,-2336,-2317,-2332,-2371,-2423,-2471,
+-2537,-2641,-2761,-2820,-2850,-2785,-2705,-2714,-2749,-2815,-2913,-3114,-3204,-3122,-3129,-3284,-3439,-3496,-3772,-3883,
+-4099,-4250,-4280,-4299,-4337,-4372,-4419,-4461,-4518,-4573,-4633,-4688,-4746,-4801,-4851,-4906,-4963,-5015,-5061,-5100,
+-5134,-5165,-5192,-5209,-5223,-5230,-5228,-5223,-5210,-5191,-5172,-5154,-5140,-5126,-5110,-5092,-5066,-5076,-5065,-5060,
+-5077,-5102,-5120,-5112,-5111,-5120,-5146,-5161,-5174,-5184,-5188,-5198,-5203,-5187,-5184,-5164,-5138,-5106,-5073,-5040,
+-5010,-4982,-4956,-4927,-4894,-4859,-4828,-4802,-4773,-4736,-4708,-4675,-4639,-4587,-4521,-4470,-4423,-4393,-4344,-4283,
+-4213,-4155,-4102,-4027,-3970,-3879,-3807,-3760,-3691,-3634,-3564,-3512,-3429,-3354,-3271,-3200,-3124,-3041,-2973,-2903,
+-2829,-2764,-2696,-2563,-2472,-2395,-2296,-2210,-2127,-2032,-1949,-1851,-1734,-1631,-1528,-1423,-1347,-1262,-1210,-1136,
+-1039,-950,-891,-836,-771,-713,-669,-598,-556,-525,-481,-431,-363,-335,-305,-252,-177,-150,-115,-87,
+-37,2,50,101,160,196,229,284,312,347,394,453,488,523,553,583,633,672,720,762,
+799,837,897,931,974,1018,1085,1115,1160,1212,1249,1285,1332,1384,1424,1484,1548,1608,1660,1703,
+1752,1793,1814,1833,1856,1882,1912,1930,1960,1988,2008,2032,2050,2062,2072,2087,2088,2105,2112,2117,
+2134,2156,2184,2217,2246,2284,2332,2357,2387,2426,2456,2480,2510,2543,2583,2630,2678,2724,2769,2823,
+2876,2932,2993,3060,3116,3167,3225,3257,3275,3271,3244,3206,3170,3145,3145,3215,3314,3379,3393,3393,
+3395,3418,3471,3552,3650,3745,3846,3936,3983,3985,3954,3914,3893,3898,3875,3864,3847,3821,3789,3765,
+3737,3713,3698,3673,3621,3552,3491,3441,3383,3347,3312,3258,3190,3133,3102,3068,3048,3034,3008,2968,
+2964,2974,2983,2974,2954,2927,2905,2881,2851,2824,2797,2776,2755,2731,2705,2689,2699,2732,2736,2764,
+2771,2780,2810,2850,2890,2908,2943,2980,2961,2955,2966,2961,2973,2995,3048,3146,3202,3264,3311,3342,
+3377,3436,3520,3590,3632,3685,3647,3685,3678,3657,3633,3627,3613,3561,3499,3465,3473,3491,3499,3484,
+3420,3375,3385,3276,3141,3068,2987,2899,2847,2877,2856,2819,2785,2745,2697,2648,2597,2540,2484,2440,
+2428,2433,2447,2489,2536,2585,2642,2719,2782,2818,2846,2848,2830,2792,2739,2690,2670,2653,2631,2593,
+2545,2468,2392,2327,2264,2195,2132,2062,1982,1912,1830,1751,1682,1627,1582,1535,1498,1474,1459,1457,
+1464,1489,1531,1612,1677,1682,1664,1610,1533,1481,1468,1471,1472,1474,1469,1450,1431,1419,1430,1411,
+1382,1340,1308,1293,1271,1234,1182,1202,1218,1232,1228,1221,1194,1134,1105,1095,1090,1125,1177,1210,
+1219,1229,1212,1161,1067,967,911,879,836,808,851,864,877,919,977,976,1049,966,1027,1060,
+959,925,921,930,914,884,839,786,736,709,659,615,579,554,526,472,406,328,257,195,
+133,66,-20,-109,-196,-292,-369,-440,-541,-649,-801,-1004,-1223,-1396,-1506,-1647,-1826,-2011,-2154,-2261,
+-2383,-2497,-2593,-2678,-2766,-2855,-2940,-3000,-3032,-3064,-3106,-3144,-3177,-3204,-3217,-3237,-3263,-3283,-3288,-3300,
+-3313,-3327,-3347,-3362,-3363,-3311,-3157,-2857,-2504,-2509,-2650,-2864,-2960,-3007,-3088,-3200,-3284,-3358,-3429,-3503,
+-3529,-3546,-3579,-3578,-3576,-3582,-3594,-3617,-3663,-3693,-3747,-3825,-3898,-3973,-4041,-4093,-4145,-4250,-4366,-4474,
+-4544,-4591,-4663,-4688,-4679,-4595,-4478,-4418,-4426,-4467,-4470,-4467,-4481,-4521,-4563,-4597,-4649,-4706,-4753,-4786,
+-4801,-4791,-4764,-4702,-4668,-4677,-4698,-4718,-4739,-4808,-4842,-4832,-4845,-4878,-4906,-4924,-4907,-4882,-4919,-4988,
+-5071,-5180,-5250,-5281,-5298,-5333,-5367,-5414,-5451,-5475,-5495,-5515,-5529,-5560,-5611,-5661,-5711,-5759,-5812,-5854,
+-5883,-5885,-5900,-5903,-5902,-5898,-5931,-5972,-5976,-5976,-5967,-5986,-6009,-6025,-6043,-6053,-6051,-6048,-6036,-6025,
+-6010,-5974,-5948,-5913,-5868,-5810,-5763,-5735,-5723,-5713,-5686,-5648,-5570,-5555,-5607,-5628,-5590,-5566,-5553,-5540,
+-5528,-5478,-5427,-5388,-5380,-5382,-5388,-5402,-5415,-5406,-5391,-5370,-5342,-5334,-5304,-5226,-5143,-5073,-5121,-5209,
+-5312,-5479,-5565,-5493,-5265,-5004,-4773,-4674,-4604,-4656,-4639,-4581,-4573,-4494,-4363,-4243,-4205,-4140,-4025,-4020,
+-3997,-3956,-3902,-3838,-3842,-3790,-3699,-3636,-3639,-3618,-3562,-3488,-3403,-3332,-3300,-3287,-3226,-3193,-3141,-3146,
+-3182,-3182,-3169,-3143,-3081,-3058,-3065,-3023,-2927,-2875,-2846,-2821,-2792,-2747,-2689,-2633,-2595,-2528,-2450,-2376,
+-2320,-2242,-2149,-2037,-1936,-1864,-1776,-1698,-1627,-1542,-1419,-1320,-1251,-1189,-1111,-1024,-919,-874,-769,-662,
+-572,-444,-351,-289,-206,-90,38,133,228,326,425,581,644,695,786,903,1033,1164,1265,1350,
+1415,1501,1579,1646,1700,1765,1888,2171,2373,2300,2059,1790,1825,1958,2065,2214,2291,2344,2474,2596,
+2680,2695,2706,2673,2612,2595,2599,2623,2678,2751,2712,2544,2412,2415,2501,2635,2759,2881,2996,3111,
+3232,3337,3407,3452,3489,3544,3623,3740,3809,3797,3786,3712,3570,3545,3564,3650,3636,3707,3710,3719,
+3829,3804,3753,3773,3841,3802,3816,3913,4082,4096,4073,4135,4203,4244,4284,4341,4426,4478,4461,4519,
+4527,4524,4574,4634,4624,4683,4727,4746,4766,4651,4447,4371,4316,4101,3752,3381,3052,2897,3086,3387,
+3628,3750,3814,3858,3860,3821,3763,3696,3636,3581,3539,3512,3486,3403,3348,3318,3300,3257,3172,3085,
+3013,2996,3054,3099,3045,2915,2839,2794,2753,2723,2700,2674,2682,2642,2588,2482,2416,2361,2354,2364,
+2338,2343,2175,2079,2023,1973,1927,1882,1822,1769,1726,1693,1678,1597,1527,1476,1434,1416,1428,1387,
+1329,1272,1214,1165,1110,1088,1093,1028,992,998,1028,945,902,879,855,825,795,707,652,601,
+542,485,452,419,385,375,361,346,316,275,231,197,182,210,176,143,114,97,76,40,
+8,-12,-29,-34,-44,-64,-84,-96,-106,-113,-121,-131,-146,-169,-190,-198,-202,-208,-215,-218,
+-226,-236,-248,-232,-259,-271,-269,-269,-282,-294,-298,-303,-311,-324,-328,-323,-305,-291,-277,-266,
+-253,-247,-243,-225,-200,-177,-157,-138,-117,-92,-66,-38,-26,-37,-31,-28,-29,-25,-8,9,
+23,44,64,74,81,81,83,134,148,115,112,153,236,269,307,317,311,311,325,337,
+354,366,376,387,408,444,482,594,779,945,1201,1425,1271,1170,1429,1432,1057,786,716,729,
+669,609,567,530,516,513,494,471,447,423,421,424,425,422,418,407,406,404,404,409,
+385,369,363,359,354,349,344,342,347,348,346,341,330,311,290,266,239,212,180,146,
+111,65,16,-40,-102,-169,-239,-307,-367,-424,-483,-540,-596,-646,-694,-742,-792,-836,-879,-915,
+-952,-987,-1018,-1050,-1084,-1117,-1150,-1185,-1219,-1251,-1290,-1327,-1359,-1389,-1414,-1442,-1469,-1496,-1525,-1557,
+-1589,-1624,-1660,-1697,-1722,-1760,-1796,-1835,-1870,-1893,-1923,-1962,-2003,-2036,-2063,-2095,-2125,-2168,-2214,-2253,
+-2295,-2341,-2391,-2435,-2478,-2511,-2546,-2588,-2627,-2673,-2727,-2769,-2805,-2840,-2879,-2921,-2965,-3005,-3042,-3087,
+-3125,-3164,-3209,-3244,-3287,-3337,-3380,-3422,-3461,-3504,-3550,-3592,-3628,-3661,-3692,-3713,-3746,-3782,-3830,-3876,
+-3922,-3963,-3991,-4014,-4028,-4056,-4076,-4108,-4149,-4190,-4218,-4246,-4280,-4309,-4343,-4365,-4375,-4405,-4423,-4464,
+-4478,-4491,-4509,-4526,-4544,-4569,-4601,-4625,-4645,-4659,-4664,-4668,-4675,-4685,-4694,-4713,-4721,-4724,-4719,-4698,
+-4676,-4665,-4658,-4662,-4667,-4666,-4662,-4657,-4639,-4611,-4591,-4563,-4547,-4527,-4483,-4432,-4453,-4448,-4411,-4357,
+-4324,-4311,-4281,-4243,-4200,-4163,-4138,-4128,-4096,-4079,-4075,-4024,-3891,-3785,-3673,-3588,-3561,-3574,-3532,-3445,
+-3382,-3390,-3421,-3398,-3372,-3365,-3383,-3308,-3242,-3182,-3100,-2999,-2938,-2861,-2777,-2686,-2577,-2423,-2249,-2129,
+-2064,-2030,-2014,-1972,-1997,-1946,-1901,-1881,-1820,-1821,-1791,-1770,-1745,-1711,-1671,-1599,-1571,-1516,-1536,-1472,
+-1477,-1434,-1387,-1373,-1525,-1748,-1771,-1728,-1771,-1901,-2022,-2110,-2146,-2158,-2170,-2220,-2373,-2536,-2685,-2828,
+-2945,-3052,-3142,-3209,-3245,-3247,-3224,-3184,-3132,-3059,-2991,-2936,-2883,-2838,-2800,-2785,-2792,-2808,-2811,-2801,
+-2787,-2785,-2787,-2779,-2772,-2777,-2799,-2817,-2785,-2675,-2542,-2453,-2433,-2465,-2494,-2493,-2471,-2477,-2491,-2468,
+-2453,-2472,-2556,-2659,-2732,-2733,-2630,-2486,-2372,-2308,-2300,-2319,-2340,-2358,-2364,-2357,-2364,-2397,-2420,-2444,
+-2472,-2552,-2664,-2727,-2773,-2787,-2722,-2661,-2651,-2707,-2747,-2813,-2949,-3177,-3106,-3061,-3172,-3417,-3557,-3615,
+-3608,-3822,-4139,-4262,-4293,-4286,-4335,-4394,-4432,-4475,-4524,-4580,-4643,-4711,-4772,-4834,-4891,-4938,-4983,-5029,
+-5065,-5106,-5132,-5166,-5190,-5210,-5222,-5224,-5226,-5220,-5206,-5189,-5174,-5161,-5149,-5133,-5126,-5101,-5078,-5094,
+-5093,-5097,-5121,-5139,-5144,-5148,-5150,-5161,-5186,-5195,-5203,-5209,-5211,-5215,-5205,-5191,-5177,-5157,-5133,-5097,
+-5062,-5037,-5008,-4981,-4949,-4915,-4876,-4844,-4820,-4791,-4753,-4724,-4693,-4657,-4610,-4543,-4501,-4456,-4409,-4364,
+-4289,-4232,-4186,-4114,-4036,-3957,-3893,-3854,-3783,-3708,-3640,-3576,-3518,-3462,-3381,-3304,-3229,-3131,-3077,-3013,
+-2934,-2855,-2780,-2701,-2630,-2572,-2475,-2363,-2258,-2162,-2062,-1968,-1872,-1781,-1680,-1577,-1473,-1380,-1346,-1207,
+-1112,-1051,-995,-952,-892,-849,-779,-739,-681,-627,-557,-514,-476,-451,-381,-340,-329,-282,-237,-188,
+-139,-111,-62,-18,33,81,120,172,211,260,289,311,350,391,441,480,531,588,620,670,
+714,752,802,849,879,941,1002,1036,1086,1138,1180,1219,1255,1305,1348,1402,1469,1528,1586,1639,
+1673,1713,1752,1780,1804,1823,1852,1875,1903,1919,1943,1967,1994,2008,2013,2028,2046,2051,2078,2084,
+2099,2121,2149,2181,2215,2246,2278,2316,2358,2381,2412,2445,2473,2498,2525,2559,2600,2638,2677,2722,
+2771,2824,2873,2931,2995,3055,3116,3171,3198,3215,3221,3210,3189,3171,3167,3192,3263,3364,3423,3426,
+3424,3436,3472,3547,3642,3748,3859,3942,3982,4000,3983,3935,3896,3868,3847,3828,3807,3795,3777,3746,
+3725,3711,3665,3637,3621,3582,3511,3438,3384,3330,3307,3283,3236,3176,3115,3076,3052,3040,3025,2987,
+2944,2942,2950,2944,2930,2902,2879,2859,2838,2811,2780,2751,2730,2709,2696,2684,2683,2691,2738,2765,
+2793,2815,2832,2850,2906,2945,2967,3005,3028,3031,3030,3040,3050,3057,3072,3131,3183,3256,3293,3324,
+3350,3373,3432,3537,3588,3632,3692,3663,3678,3693,3674,3654,3643,3616,3527,3469,3443,3442,3454,3475,
+3470,3429,3375,3346,3323,3208,3088,3011,2905,2829,2827,2800,2763,2736,2700,2659,2614,2567,2514,2464,
+2422,2410,2426,2445,2481,2535,2600,2664,2740,2790,2828,2851,2851,2829,2788,2747,2701,2686,2680,2664,
+2633,2580,2511,2425,2349,2272,2194,2118,2043,1965,1896,1811,1726,1658,1604,1559,1503,1467,1448,1448,
+1458,1474,1494,1537,1627,1702,1710,1695,1647,1577,1537,1521,1519,1487,1469,1479,1467,1445,1415,1407,
+1403,1379,1333,1311,1294,1273,1223,1178,1178,1187,1210,1210,1199,1176,1132,1106,1096,1089,1113,1165,
+1205,1207,1197,1215,1217,1116,1012,910,863,803,782,813,803,789,804,848,859,868,858,916,
+986,949,911,896,894,880,853,812,750,701,673,635,590,559,540,516,463,409,344,277,
+224,145,53,-44,-112,-191,-285,-384,-482,-565,-685,-851,-1079,-1307,-1487,-1609,-1735,-1907,-2081,-2215,
+-2311,-2426,-2534,-2630,-2721,-2808,-2890,-2964,-3022,-3061,-3098,-3141,-3184,-3227,-3225,-3231,-3254,-3272,-3287,-3288,
+-3300,-3314,-3324,-3335,-3339,-3340,-3307,-3194,-2931,-2646,-2565,-2656,-2778,-2916,-2953,-3021,-3166,-3305,-3441,-3556,
+-3642,-3693,-3713,-3716,-3699,-3699,-3718,-3736,-3775,-3832,-3891,-3959,-4028,-4100,-4179,-4259,-4322,-4395,-4499,-4610,
+-4685,-4737,-4788,-4818,-4797,-4717,-4591,-4514,-4498,-4509,-4527,-4536,-4539,-4548,-4581,-4608,-4641,-4692,-4747,-4791,
+-4817,-4819,-4805,-4780,-4732,-4739,-4748,-4758,-4800,-4854,-4902,-4932,-4940,-4932,-4943,-4990,-5028,-5027,-5011,-5067,
+-5114,-5168,-5253,-5316,-5355,-5384,-5403,-5430,-5452,-5463,-5470,-5494,-5516,-5526,-5542,-5588,-5640,-5677,-5704,-5740,
+-5787,-5803,-5828,-5861,-5876,-5886,-5888,-5937,-5969,-5971,-5955,-5933,-5948,-5963,-5990,-6011,-6014,-6004,-5976,-5952,
+-5920,-5875,-5841,-5801,-5752,-5711,-5669,-5655,-5653,-5661,-5654,-5632,-5584,-5523,-5511,-5557,-5615,-5612,-5598,-5582,
+-5559,-5523,-5477,-5448,-5424,-5408,-5395,-5386,-5390,-5394,-5388,-5371,-5353,-5333,-5308,-5256,-5186,-5104,-5090,-5145,
+-5241,-5427,-5543,-5612,-5482,-5215,-4970,-4774,-4700,-4631,-4664,-4636,-4580,-4531,-4382,-4343,-4261,-4194,-4096,-4011,
+-4049,-3994,-3982,-3875,-3859,-3790,-3783,-3707,-3695,-3601,-3641,-3576,-3486,-3415,-3367,-3315,-3279,-3241,-3211,-3175,
+-3156,-3141,-3143,-3105,-3101,-3083,-3052,-3036,-3005,-2968,-2894,-2841,-2804,-2784,-2713,-2627,-2597,-2541,-2470,-2387,
+-2313,-2273,-2205,-2109,-1989,-1834,-1802,-1728,-1657,-1583,-1471,-1396,-1280,-1223,-1162,-1089,-1026,-933,-840,-754,
+-641,-509,-421,-338,-256,-156,-50,60,173,297,383,484,611,683,768,851,967,1094,1238,1338,
+1405,1476,1552,1636,1709,1744,1806,1966,2282,2497,2364,1878,1468,1545,1742,1881,2058,2190,2287,2401,
+2447,2449,2451,2450,2454,2502,2563,2670,2753,2796,2769,2590,2441,2457,2532,2654,2777,2888,2989,3097,
+3196,3294,3384,3446,3477,3524,3549,3624,3709,3758,3797,3785,3780,3699,3659,3679,3672,3643,3652,3665,
+3682,3727,3749,3762,3788,3815,3812,3825,3897,4019,4078,4096,4159,4216,4259,4306,4364,4430,4473,4468,
+4523,4561,4565,4601,4618,4629,4715,4742,4766,4793,4761,4510,4395,4333,4153,3831,3434,3073,2834,2855,
+3142,3439,3613,3690,3759,3798,3785,3751,3706,3660,3618,3579,3541,3501,3456,3410,3370,3326,3273,3205,
+3130,3062,3059,3187,3372,3317,3108,2986,2884,2809,2762,2735,2715,2746,2666,2571,2497,2444,2410,2466,
+2563,2426,2350,2219,2138,2089,2043,1998,1946,1895,1848,1801,1768,1734,1665,1591,1534,1482,1454,1449,
+1461,1445,1363,1280,1214,1180,1175,1187,1123,1059,1073,1091,993,958,940,904,860,809,746,697,
+664,660,554,498,471,435,422,405,382,351,301,266,263,273,251,212,195,166,147,110,
+78,50,32,26,21,8,-17,-36,-43,-56,-61,-72,-85,-103,-126,-145,-143,-144,-149,-155,
+-163,-172,-186,-188,-151,-203,-213,-216,-221,-235,-237,-236,-241,-256,-273,-288,-289,-276,-266,-261,
+-254,-249,-243,-227,-202,-184,-167,-146,-125,-106,-79,-57,-35,-31,-29,-19,-14,-16,-12,5,
+18,34,64,91,111,120,124,127,149,202,166,210,249,246,282,320,335,350,353,358,
+370,382,391,396,406,423,456,495,615,741,828,916,1116,1115,1044,1318,1590,1474,1153,1042,
+1140,997,876,779,681,649,645,594,538,496,462,450,447,446,448,449,456,469,455,434,
+417,399,381,373,369,365,368,366,368,371,376,376,378,367,348,331,310,291,266,236,
+201,163,121,78,23,-38,-105,-173,-237,-301,-366,-429,-490,-552,-612,-665,-719,-771,-814,-858,
+-891,-926,-963,-994,-1027,-1059,-1093,-1123,-1156,-1194,-1234,-1273,-1309,-1340,-1368,-1397,-1425,-1449,-1480,-1513,
+-1545,-1582,-1617,-1648,-1682,-1717,-1757,-1801,-1836,-1861,-1887,-1919,-1960,-1994,-2032,-2061,-2090,-2120,-2167,-2217,
+-2251,-2283,-2325,-2363,-2402,-2453,-2498,-2544,-2586,-2629,-2670,-2712,-2749,-2789,-2825,-2865,-2908,-2953,-2995,-3039,
+-3073,-3116,-3164,-3200,-3234,-3284,-3337,-3381,-3427,-3469,-3512,-3552,-3588,-3622,-3637,-3660,-3689,-3724,-3772,-3822,
+-3867,-3906,-3939,-3962,-3993,-4019,-4045,-4072,-4113,-4160,-4195,-4221,-4246,-4271,-4297,-4315,-4348,-4384,-4410,-4431,
+-4452,-4466,-4487,-4509,-4532,-4548,-4575,-4604,-4626,-4641,-4656,-4669,-4673,-4677,-4690,-4698,-4707,-4712,-4712,-4709,
+-4697,-4686,-4684,-4681,-4683,-4686,-4681,-4675,-4665,-4648,-4626,-4597,-4570,-4547,-4523,-4502,-4475,-4462,-4453,-4429,
+-4390,-4361,-4329,-4285,-4244,-4203,-4170,-4138,-4115,-4097,-4070,-4049,-4039,-3965,-3822,-3741,-3653,-3575,-3590,-3552,
+-3493,-3385,-3345,-3328,-3343,-3367,-3336,-3356,-3339,-3241,-3192,-3105,-3013,-2957,-2892,-2810,-2703,-2614,-2454,-2300,
+-2125,-2102,-2029,-1981,-1954,-1983,-1948,-1886,-1833,-1784,-1763,-1736,-1727,-1697,-1667,-1639,-1596,-1551,-1512,-1500,
+-1479,-1464,-1433,-1398,-1352,-1485,-1697,-1773,-1790,-1797,-1860,-1959,-2050,-2116,-2151,-2178,-2254,-2400,-2553,-2692,
+-2823,-2932,-3032,-3111,-3173,-3211,-3211,-3173,-3126,-3072,-3000,-2940,-2885,-2835,-2798,-2778,-2797,-2826,-2842,-2840,
+-2829,-2815,-2807,-2801,-2788,-2780,-2778,-2762,-2721,-2574,-2463,-2323,-2228,-2237,-2305,-2369,-2394,-2379,-2355,-2436,
+-2482,-2483,-2503,-2560,-2641,-2702,-2705,-2632,-2491,-2410,-2372,-2381,-2411,-2423,-2439,-2448,-2453,-2460,-2479,-2506,
+-2513,-2546,-2603,-2625,-2638,-2691,-2717,-2668,-2585,-2587,-2636,-2662,-2733,-2843,-3081,-3097,-3018,-3067,-3231,-3485,
+-3607,-3638,-3610,-3886,-4163,-4205,-4089,-4288,-4363,-4400,-4435,-4480,-4537,-4604,-4670,-4734,-4799,-4857,-4912,-4959,
+-4999,-5031,-5084,-5108,-5133,-5158,-5186,-5203,-5215,-5230,-5235,-5222,-5217,-5186,-5190,-5161,-5141,-5141,-5133,-5112,
+-5101,-5120,-5127,-5144,-5159,-5166,-5171,-5179,-5185,-5202,-5214,-5224,-5226,-5227,-5218,-5217,-5200,-5188,-5173,-5150,
+-5118,-5087,-5056,-5025,-4994,-4961,-4927,-4892,-4861,-4829,-4793,-4754,-4724,-4696,-4658,-4621,-4555,-4503,-4465,-4408,
+-4367,-4302,-4238,-4198,-4132,-4049,-3979,-3906,-3842,-3776,-3706,-3660,-3594,-3534,-3490,-3438,-3350,-3263,-3185,-3125,
+-3056,-2957,-2871,-2788,-2730,-2656,-2592,-2497,-2418,-2335,-2239,-2132,-2033,-1926,-1831,-1733,-1611,-1492,-1392,-1390,
+-1234,-1155,-1122,-1094,-1021,-958,-899,-831,-791,-737,-700,-643,-599,-541,-515,-469,-410,-369,-353,-297,
+-243,-218,-159,-133,-87,-36,-6,54,95,150,164,203,242,288,339,375,436,472,501,564,
+629,669,702,728,788,844,909,953,998,1043,1097,1136,1205,1244,1287,1331,1390,1446,1512,1569,
+1609,1648,1675,1715,1750,1771,1788,1817,1839,1860,1887,1904,1920,1940,1969,1981,1998,2011,2014,2041,
+2069,2088,2118,2149,2185,2217,2254,2286,2309,2339,2369,2395,2424,2453,2476,2504,2534,2566,2598,2634,
+2678,2734,2780,2815,2865,2922,2981,3038,3093,3127,3149,3158,3162,3163,3171,3194,3248,3344,3445,3465,
+3458,3461,3487,3550,3650,3752,3872,3976,4022,4007,3989,3969,3931,3879,3850,3813,3795,3777,3758,3739,
+3724,3696,3680,3645,3589,3554,3526,3459,3389,3331,3280,3261,3244,3207,3155,3088,3042,3030,3026,3023,
+2998,2948,2926,2926,2908,2883,2855,2834,2816,2796,2769,2738,2709,2689,2677,2667,2667,2675,2688,2744,
+2782,2808,2840,2875,2906,2946,2982,2996,3063,3061,3088,3098,3113,3120,3143,3154,3191,3228,3292,3327,
+3346,3357,3380,3428,3519,3563,3602,3661,3684,3690,3711,3698,3677,3658,3566,3486,3440,3430,3422,3425,
+3424,3417,3388,3336,3287,3243,3185,3093,3019,2928,2831,2779,2751,2712,2676,2638,2605,2570,2526,2479,
+2438,2411,2415,2437,2471,2510,2567,2646,2712,2775,2826,2866,2885,2869,2834,2803,2765,2727,2708,2699,
+2684,2649,2605,2530,2446,2360,2274,2182,2094,2013,1934,1863,1779,1696,1635,1574,1523,1477,1447,1432,
+1438,1457,1486,1505,1544,1625,1711,1721,1697,1669,1625,1591,1579,1552,1506,1483,1478,1473,1448,1421,
+1411,1408,1372,1321,1301,1266,1227,1185,1167,1164,1170,1178,1183,1181,1166,1136,1111,1102,1090,1100,
+1137,1171,1172,1151,1137,1168,1102,1012,914,836,776,780,753,756,738,734,742,766,774,798,
+839,876,910,860,834,861,843,815,780,740,698,658,623,561,519,513,511,454,383,324,
+275,248,159,49,-37,-97,-158,-276,-412,-533,-611,-708,-899,-1136,-1352,-1530,-1671,-1803,-1971,-2142,
+-2277,-2370,-2475,-2581,-2680,-2777,-2858,-2933,-2996,-3043,-3082,-3132,-3173,-3214,-3246,-3234,-3235,-3252,-3268,-3278,
+-3289,-3296,-3307,-3314,-3320,-3319,-3323,-3305,-3233,-3067,-2815,-2649,-2636,-2685,-2798,-2871,-2929,-3010,-3104,-3232,
+-3424,-3607,-3717,-3772,-3781,-3775,-3791,-3826,-3869,-3918,-3983,-4057,-4137,-4205,-4269,-4349,-4438,-4499,-4549,-4619,
+-4678,-4737,-4768,-4787,-4804,-4791,-4737,-4692,-4634,-4575,-4560,-4575,-4603,-4626,-4630,-4639,-4662,-4696,-4737,-4784,
+-4823,-4844,-4849,-4828,-4807,-4801,-4822,-4853,-4878,-4914,-4981,-5017,-5045,-5068,-5066,-5070,-5119,-5165,-5176,-5180,
+-5210,-5233,-5281,-5347,-5376,-5407,-5443,-5461,-5475,-5490,-5496,-5476,-5474,-5505,-5540,-5564,-5611,-5654,-5680,-5702,
+-5735,-5777,-5822,-5855,-5857,-5856,-5873,-5886,-5911,-5960,-5989,-5998,-5982,-5968,-5959,-5983,-5999,-5981,-5952,-5908,
+-5863,-5833,-5786,-5740,-5692,-5663,-5629,-5603,-5611,-5628,-5625,-5618,-5587,-5547,-5504,-5506,-5564,-5633,-5638,-5603,
+-5563,-5534,-5509,-5495,-5481,-5454,-5429,-5403,-5372,-5354,-5343,-5322,-5306,-5293,-5273,-5228,-5164,-5100,-5056,-5069,
+-5130,-5279,-5511,-5609,-5611,-5424,-5170,-4962,-4836,-4742,-4672,-4640,-4558,-4512,-4469,-4347,-4336,-4273,-4162,-4123,
+-4042,-4029,-3961,-3938,-3941,-3850,-3779,-3793,-3731,-3680,-3666,-3580,-3590,-3467,-3444,-3355,-3343,-3302,-3268,-3250,
+-3162,-3124,-3135,-3117,-3075,-3048,-3019,-3018,-2960,-2979,-2952,-2923,-2860,-2791,-2760,-2712,-2620,-2584,-2499,-2440,
+-2360,-2292,-2236,-2167,-2069,-1928,-1820,-1771,-1698,-1621,-1515,-1460,-1390,-1312,-1228,-1108,-1043,-975,-898,-789,
+-700,-564,-471,-392,-309,-198,-91,9,104,220,326,425,538,627,707,797,872,1006,1159,1288,
+1375,1445,1528,1623,1714,1771,1798,1848,2004,2266,2516,2288,1730,1459,1422,1406,1497,1759,1918,1968,
+2061,2078,2099,2134,2200,2324,2484,2607,2763,2782,2731,2595,2485,2498,2578,2687,2789,2890,2983,3077,
+3170,3269,3353,3416,3482,3526,3559,3562,3626,3679,3706,3706,3733,3727,3727,3764,3776,3738,3688,3668,
+3682,3688,3731,3805,3785,3814,3834,3844,3871,3911,3976,4067,4156,4209,4243,4288,4341,4397,4449,4509,
+4535,4571,4591,4593,4638,4615,4670,4720,4718,4763,4823,4720,4562,4403,4312,4151,3838,3461,3097,2835,
+2722,2822,3173,3398,3526,3590,3677,3704,3701,3681,3655,3626,3598,3570,3541,3507,3475,3429,3381,3349,
+3340,3221,3116,3104,3195,3353,3334,3320,3248,2998,2864,2809,2793,2768,2722,2654,2595,2537,2488,2445,
+2432,2427,2372,2295,2227,2180,2141,2100,2060,2010,1962,1916,1879,1869,1862,1774,1683,1647,1588,1519,
+1532,1659,1690,1581,1390,1287,1250,1272,1366,1252,1131,1071,1073,1045,1057,1003,955,904,851,795,
+747,723,714,617,551,511,478,459,441,411,373,332,310,307,301,274,293,307,222,181,
+151,126,98,88,76,69,53,31,11,-4,-16,-19,-30,-50,-65,-81,-86,-82,-82,-90,
+-97,-106,-118,-129,-121,-126,-166,-169,-172,-179,-187,-178,-172,-180,-196,-215,-237,-242,-242,-244,
+-236,-231,-226,-214,-207,-195,-182,-161,-151,-137,-118,-88,-61,-38,-24,-7,0,6,8,24,
+44,58,81,108,132,152,168,180,186,194,209,229,342,447,336,326,357,382,402,407,
+418,433,447,456,463,470,474,490,521,578,626,633,658,726,788,793,929,1220,1528,1522,
+1418,1385,1415,1266,1078,890,905,1011,819,662,587,543,514,506,494,494,507,534,537,518,
+485,449,418,397,386,379,373,369,371,376,381,384,383,383,380,370,359,332,318,300,
+275,248,211,167,130,81,26,-31,-98,-169,-236,-308,-376,-445,-516,-583,-645,-704,-755,-798,
+-837,-871,-903,-939,-971,-1004,-1039,-1070,-1096,-1128,-1171,-1214,-1249,-1283,-1313,-1345,-1375,-1409,-1439,-1471,
+-1507,-1550,-1585,-1618,-1646,-1678,-1712,-1752,-1799,-1847,-1883,-1917,-1950,-1983,-2015,-2044,-2073,-2094,-2124,-2167,
+-2214,-2248,-2286,-2318,-2354,-2388,-2435,-2483,-2525,-2568,-2612,-2654,-2694,-2743,-2787,-2827,-2861,-2911,-2959,-3011,
+-3055,-3102,-3141,-3171,-3200,-3245,-3297,-3346,-3392,-3436,-3481,-3522,-3553,-3582,-3598,-3611,-3636,-3670,-3707,-3751,
+-3805,-3855,-3888,-3922,-3950,-3985,-4017,-4049,-4081,-4121,-4148,-4187,-4216,-4239,-4267,-4287,-4306,-4329,-4365,-4400,
+-4416,-4431,-4448,-4482,-4503,-4530,-4556,-4585,-4609,-4629,-4641,-4657,-4671,-4678,-4684,-4691,-4700,-4703,-4705,-4703,
+-4694,-4693,-4696,-4698,-4706,-4703,-4696,-4687,-4679,-4673,-4663,-4634,-4602,-4579,-4547,-4525,-4507,-4489,-4483,-4469,
+-4434,-4407,-4376,-4335,-4290,-4249,-4212,-4177,-4158,-4137,-4114,-4087,-4055,-4022,-3997,-3936,-3766,-3672,-3618,-3582,
+-3574,-3520,-3430,-3334,-3231,-3272,-3313,-3346,-3306,-3323,-3290,-3168,-3089,-3036,-2967,-2897,-2831,-2752,-2657,-2555,
+-2412,-2264,-2126,-2057,-1978,-1946,-1953,-1937,-1882,-1829,-1772,-1729,-1721,-1703,-1644,-1616,-1604,-1570,-1526,-1479,
+-1474,-1469,-1424,-1398,-1359,-1340,-1353,-1486,-1704,-1783,-1798,-1832,-1913,-1993,-2091,-2149,-2200,-2289,-2397,-2532,
+-2657,-2777,-2891,-2986,-3063,-3122,-3155,-3152,-3111,-3061,-2995,-2924,-2870,-2827,-2796,-2779,-2781,-2803,-2833,-2847,
+-2848,-2841,-2825,-2804,-2784,-2765,-2745,-2704,-2633,-2470,-2198,-2111,-2088,-2059,-2088,-2154,-2220,-2276,-2279,-2257,
+-2274,-2435,-2505,-2525,-2574,-2617,-2657,-2636,-2586,-2523,-2456,-2416,-2431,-2460,-2488,-2517,-2544,-2581,-2603,-2614,
+-2619,-2617,-2608,-2574,-2512,-2508,-2578,-2647,-2632,-2543,-2525,-2550,-2582,-2658,-2735,-2934,-3078,-3041,-3070,-3121,
+-3322,-3530,-3624,-3669,-3753,-3982,-4074,-3951,-4228,-4341,-4381,-4415,-4448,-4498,-4557,-4627,-4694,-4758,-4817,-4875,
+-4928,-4977,-5025,-5069,-5091,-5117,-5131,-5149,-5170,-5192,-5214,-5233,-5239,-5223,-5200,-5184,-5181,-5161,-5144,-5146,
+-5141,-5130,-5132,-5150,-5164,-5177,-5182,-5182,-5193,-5206,-5220,-5233,-5242,-5244,-5239,-5236,-5226,-5214,-5197,-5177,
+-5160,-5132,-5103,-5074,-5041,-5003,-4973,-4942,-4903,-4867,-4833,-4796,-4749,-4726,-4689,-4654,-4611,-4557,-4515,-4472,
+-4431,-4383,-4321,-4248,-4199,-4125,-4054,-3983,-3902,-3857,-3777,-3730,-3682,-3631,-3562,-3490,-3440,-3358,-3287,-3194,
+-3126,-3049,-2981,-2915,-2848,-2765,-2683,-2606,-2528,-2431,-2330,-2250,-2188,-2121,-2027,-1931,-1851,-1740,-1606,-1527,
+-1466,-1294,-1266,-1224,-1188,-1118,-1040,-955,-896,-831,-782,-744,-711,-685,-633,-579,-528,-491,-453,-400,
+-371,-333,-267,-220,-182,-119,-81,-62,-21,28,86,121,159,192,218,265,314,337,377,432,
+488,537,572,622,670,732,790,850,902,942,994,1049,1092,1159,1213,1267,1325,1388,1437,1496,
+1540,1589,1630,1665,1704,1727,1749,1770,1791,1823,1836,1844,1864,1883,1901,1917,1944,1962,1977,2002,
+2027,2055,2082,2116,2147,2180,2211,2250,2279,2293,2319,2351,2390,2415,2440,2464,2487,2514,2541,2569,
+2601,2653,2775,2763,2768,2811,2859,2907,2953,3001,3039,3070,3089,3101,3122,3169,3228,3313,3433,3497,
+3495,3488,3501,3547,3640,3759,3877,3995,4044,4047,4020,3982,3961,3924,3872,3839,3797,3775,3749,3719,
+3705,3687,3667,3641,3612,3567,3505,3465,3414,3337,3282,3235,3213,3205,3174,3122,3057,3017,2995,3008,
+3021,3010,2953,2907,2885,2863,2833,2803,2784,2769,2750,2728,2702,2677,2651,2633,2630,2649,2666,2721,
+2767,2779,2821,2850,2906,2946,2956,2998,3021,3070,3089,3141,3154,3149,3133,3180,3218,3257,3302,3335,
+3350,3358,3372,3396,3438,3493,3529,3583,3647,3705,3733,3760,3751,3699,3612,3497,3447,3416,3395,3388,
+3381,3367,3341,3305,3236,3172,3133,3093,3064,3010,2947,2847,2762,2724,2676,2616,2576,2550,2527,2492,
+2450,2414,2403,2431,2469,2510,2545,2606,2683,2744,2809,2864,2902,2911,2874,2824,2794,2762,2734,2713,
+2697,2678,2649,2598,2544,2466,2369,2270,2167,2069,1981,1902,1828,1749,1670,1590,1532,1489,1458,1431,
+1422,1431,1459,1485,1510,1553,1625,1718,1732,1710,1690,1661,1634,1595,1565,1518,1482,1468,1465,1453,
+1439,1429,1404,1375,1334,1298,1235,1178,1162,1155,1156,1155,1155,1164,1157,1145,1110,1097,1087,1085,
+1081,1096,1124,1130,1116,1091,1080,1063,972,876,797,772,719,750,743,723,690,670,677,694,
+729,757,813,827,844,810,852,833,812,771,738,705,669,618,540,481,474,479,395,307,
+262,230,219,157,44,-31,-88,-165,-326,-468,-580,-663,-772,-949,-1154,-1370,-1570,-1729,-1863,-2026,
+-2197,-2340,-2446,-2543,-2637,-2730,-2820,-2904,-2975,-3027,-3061,-3102,-3153,-3194,-3225,-3251,-3250,-3256,-3261,-3264,
+-3276,-3290,-3295,-3295,-3302,-3305,-3306,-3311,-3307,-3268,-3169,-2959,-2789,-2711,-2672,-2697,-2801,-2848,-2877,-2901,
+-2946,-3173,-3482,-3688,-3765,-3776,-3787,-3818,-3865,-3911,-3969,-4037,-4122,-4207,-4284,-4372,-4467,-4545,-4594,-4593,
+-4590,-4607,-4628,-4651,-4700,-4817,-4910,-4907,-4805,-4697,-4613,-4559,-4573,-4633,-4684,-4713,-4712,-4717,-4741,-4779,
+-4825,-4853,-4878,-4898,-4900,-4897,-4910,-4927,-4954,-4967,-5013,-5061,-5088,-5124,-5172,-5201,-5207,-5232,-5292,-5327,
+-5329,-5332,-5344,-5373,-5412,-5432,-5439,-5473,-5497,-5515,-5519,-5527,-5503,-5499,-5530,-5573,-5611,-5665,-5704,-5722,
+-5736,-5759,-5804,-5855,-5880,-5873,-5849,-5845,-5839,-5861,-5933,-6010,-6035,-6018,-5979,-5962,-5955,-5981,-5959,-5909,
+-5846,-5789,-5742,-5693,-5670,-5645,-5642,-5626,-5617,-5630,-5632,-5625,-5599,-5580,-5562,-5527,-5518,-5592,-5668,-5660,
+-5599,-5551,-5536,-5534,-5531,-5522,-5496,-5457,-5413,-5371,-5336,-5307,-5278,-5261,-5249,-5223,-5152,-5085,-5033,-5003,
+-5013,-5074,-5264,-5538,-5662,-5580,-5351,-5115,-4969,-4870,-4762,-4684,-4601,-4486,-4449,-4368,-4313,-4291,-4262,-4165,
+-4124,-4063,-4064,-4002,-3975,-3886,-3834,-3845,-3806,-3736,-3660,-3659,-3622,-3595,-3539,-3462,-3390,-3351,-3314,-3295,
+-3205,-3189,-3163,-3125,-3087,-3052,-2993,-2966,-2948,-2921,-2922,-2872,-2866,-2855,-2811,-2728,-2674,-2617,-2580,-2496,
+-2417,-2348,-2276,-2209,-2127,-2012,-1889,-1828,-1757,-1670,-1593,-1488,-1439,-1363,-1266,-1189,-1092,-987,-918,-850,
+-753,-639,-537,-464,-357,-268,-144,-15,75,172,295,361,456,555,632,715,789,905,1075,1228,
+1336,1401,1495,1591,1702,1785,1837,1875,1947,2163,2436,2565,2223,1730,1588,1509,1412,1409,1452,1479,
+1584,1695,1815,1905,2002,2117,2216,2351,2513,2607,2565,2514,2496,2534,2614,2699,2805,2891,2981,3070,
+3153,3231,3308,3392,3450,3500,3536,3565,3569,3576,3612,3657,3669,3698,3730,3727,3757,3773,3795,3791,
+3781,3741,3736,3803,3791,3802,3835,3857,3882,3921,4006,4068,4146,4250,4228,4276,4314,4373,4425,4468,
+4524,4537,4590,4604,4621,4649,4630,4697,4703,4719,4781,4813,4792,4699,4456,4270,4120,3898,3548,3208,
+2909,2731,2692,2855,3120,3297,3390,3472,3558,3605,3620,3615,3610,3597,3586,3569,3555,3529,3486,3439,
+3446,3514,3300,3189,3157,3167,3205,3247,3315,3249,3036,2898,2878,2960,2939,2804,2714,2690,2674,2601,
+2547,2492,2409,2352,2298,2249,2214,2187,2153,2123,2087,2048,1980,1962,2029,2130,1950,1785,1795,1769,
+1630,1571,1643,1807,1736,1473,1356,1311,1323,1421,1320,1180,1124,1084,1121,1222,1067,1008,943,895,
+847,798,762,716,657,604,564,555,514,487,451,405,369,356,352,337,319,331,344,284,
+233,222,178,145,129,120,113,94,71,50,32,28,15,2,-13,-27,-31,-30,-23,-23,
+-29,-38,-48,-63,-57,-26,-98,-126,-134,-134,-111,-134,-121,-114,-123,-134,-153,-176,-188,-192,
+-202,-198,-200,-201,-195,-190,-189,-183,-172,-166,-156,-131,-98,-74,-48,-16,2,20,37,46,
+72,103,118,135,157,186,203,212,221,232,246,259,276,318,379,393,383,409,435,455,
+468,482,499,515,522,534,545,554,556,568,579,579,569,559,567,586,608,671,847,1076,
+1355,1596,1543,1369,1229,1095,1127,1265,1432,1127,834,737,690,643,619,601,594,618,657,658,
+614,546,484,434,403,386,379,373,368,370,371,373,371,370,373,379,378,364,348,335,
+320,298,273,246,212,178,139,93,33,-31,-101,-181,-260,-335,-412,-489,-561,-627,-680,-730,
+-776,-816,-854,-885,-918,-950,-983,-1017,-1047,-1075,-1104,-1144,-1183,-1220,-1256,-1288,-1323,-1364,-1401,-1440,
+-1478,-1512,-1552,-1582,-1617,-1661,-1708,-1751,-1787,-1827,-1857,-1888,-1919,-1951,-1993,-2037,-2068,-2096,-2115,-2136,
+-2165,-2206,-2239,-2274,-2302,-2337,-2376,-2423,-2472,-2521,-2567,-2613,-2658,-2708,-2763,-2810,-2854,-2895,-2938,-2972,
+-3010,-3042,-3079,-3109,-3158,-3203,-3257,-3315,-3362,-3399,-3437,-3476,-3514,-3545,-3563,-3583,-3610,-3638,-3666,-3699,
+-3739,-3777,-3819,-3863,-3913,-3958,-3981,-4018,-4056,-4092,-4127,-4156,-4166,-4193,-4222,-4258,-4287,-4312,-4325,-4358,
+-4392,-4419,-4426,-4449,-4479,-4514,-4533,-4563,-4596,-4614,-4631,-4642,-4651,-4663,-4677,-4687,-4693,-4703,-4706,-4705,
+-4701,-4692,-4695,-4706,-4713,-4720,-4711,-4697,-4683,-4678,-4672,-4661,-4634,-4606,-4580,-4553,-4537,-4522,-4506,-4494,
+-4478,-4457,-4421,-4383,-4349,-4308,-4263,-4225,-4188,-4174,-4130,-4124,-4084,-4048,-4015,-3981,-3954,-3888,-3719,-3649,
+-3612,-3603,-3552,-3464,-3378,-3209,-3148,-3226,-3314,-3344,-3304,-3269,-3215,-3098,-3068,-3009,-2926,-2832,-2760,-2671,
+-2577,-2447,-2370,-2176,-2034,-1986,-1928,-1911,-1881,-1866,-1826,-1742,-1721,-1697,-1671,-1627,-1602,-1570,-1530,-1484,
+-1440,-1434,-1442,-1406,-1393,-1337,-1317,-1226,-1380,-1537,-1703,-1750,-1752,-1845,-1939,-2060,-2142,-2205,-2277,-2369,
+-2483,-2605,-2728,-2839,-2930,-3006,-3065,-3093,-3080,-3041,-2989,-2915,-2842,-2795,-2768,-2759,-2773,-2782,-2797,-2818,
+-2829,-2828,-2822,-2801,-2778,-2735,-2661,-2570,-2455,-2288,-2062,-1930,-1899,-1914,-1917,-1969,-2035,-2081,-2152,-2176,
+-2165,-2246,-2440,-2443,-2445,-2507,-2557,-2609,-2613,-2573,-2542,-2521,-2472,-2496,-2529,-2558,-2584,-2612,-2640,-2664,
+-2676,-2669,-2645,-2617,-2541,-2458,-2429,-2462,-2573,-2603,-2533,-2475,-2474,-2511,-2568,-2644,-2788,-3047,-3159,-3182,
+-3104,-3124,-3310,-3509,-3591,-3651,-3744,-3838,-3973,-4202,-4319,-4366,-4407,-4447,-4478,-4532,-4594,-4655,-4718,-4778,
+-4833,-4887,-4941,-4990,-5031,-5067,-5096,-5118,-5128,-5139,-5154,-5172,-5192,-5211,-5221,-5219,-5200,-5174,-5173,-5174,
+-5167,-5158,-5157,-5150,-5162,-5182,-5190,-5198,-5198,-5204,-5213,-5236,-5250,-5256,-5256,-5251,-5241,-5228,-5216,-5200,
+-5177,-5162,-5135,-5106,-5076,-5048,-5017,-4984,-4951,-4919,-4883,-4858,-4808,-4784,-4730,-4680,-4651,-4608,-4562,-4520,
+-4474,-4434,-4384,-4311,-4249,-4201,-4137,-4050,-3996,-3931,-3862,-3768,-3722,-3677,-3636,-3581,-3504,-3435,-3370,-3284,
+-3234,-3153,-3069,-2994,-2924,-2843,-2795,-2705,-2621,-2529,-2463,-2371,-2276,-2177,-2100,-2012,-1938,-1862,-1791,-1716,
+-1624,-1553,-1438,-1361,-1301,-1270,-1209,-1133,-1042,-962,-911,-860,-814,-768,-724,-684,-633,-587,-550,-512,
+-461,-434,-384,-355,-316,-260,-212,-158,-119,-92,-50,-1,32,81,106,130,166,223,273,325,
+399,452,490,532,582,647,719,780,831,891,932,982,1033,1079,1130,1183,1243,1307,1368,1415,
+1474,1524,1568,1609,1641,1684,1701,1720,1737,1760,1783,1805,1817,1829,1843,1863,1882,1902,1930,1960,
+1982,2009,2042,2074,2106,2138,2169,2198,2235,2266,2290,2320,2345,2369,2385,2405,2434,2470,2498,2518,
+2542,2572,2614,2709,2706,2718,2760,2806,2840,2878,2913,2950,2985,3010,3037,3075,3158,3265,3375,3488,
+3525,3512,3511,3531,3607,3729,3862,3982,4040,4039,4022,4011,3999,3982,3931,3872,3843,3804,3775,3727,
+3692,3671,3660,3645,3608,3558,3518,3465,3418,3370,3297,3243,3202,3173,3165,3138,3091,3035,2995,2976,
+2987,3007,2992,2928,2872,2836,2807,2770,2743,2726,2718,2710,2697,2686,2660,2633,2612,2603,2636,2654,
+2682,2714,2762,2809,2868,2924,2956,2966,3013,3050,3093,3132,3169,3186,3168,3149,3181,3245,3307,3343,
+3350,3351,3362,3388,3399,3429,3454,3509,3603,3689,3751,3785,3769,3715,3634,3532,3439,3392,3386,3368,
+3347,3327,3310,3267,3211,3140,3074,3048,3027,3007,2991,2935,2861,2781,2693,2638,2576,2531,2509,2493,
+2463,2431,2411,2420,2464,2505,2535,2577,2648,2707,2763,2818,2871,2902,2896,2849,2799,2773,2743,2717,
+2695,2686,2664,2618,2571,2523,2453,2357,2249,2145,2052,1957,1872,1799,1727,1644,1560,1496,1454,1438,
+1420,1413,1429,1456,1484,1518,1571,1638,1695,1734,1740,1718,1689,1665,1623,1589,1539,1476,1450,1456,
+1458,1448,1438,1393,1346,1319,1266,1201,1154,1145,1141,1142,1143,1150,1162,1147,1112,1090,1087,1096,
+1102,1075,1070,1091,1105,1096,1060,1018,1009,927,826,771,778,726,702,702,691,683,652,621,
+619,646,676,765,738,773,762,808,811,787,761,709,685,666,599,514,456,445,425,329,
+261,218,195,159,118,16,-68,-139,-232,-393,-526,-646,-745,-841,-999,-1177,-1383,-1605,-1776,-1918,
+-2073,-2237,-2382,-2515,-2618,-2701,-2784,-2867,-2948,-3016,-3059,-3088,-3122,-3166,-3211,-3246,-3262,-3271,-3282,-3281,
+-3277,-3291,-3290,-3284,-3287,-3295,-3291,-3294,-3302,-3304,-3281,-3246,-3161,-3026,-2912,-2754,-2682,-2698,-2691,-2709,
+-2737,-2793,-2951,-3292,-3596,-3718,-3757,-3788,-3825,-3868,-3920,-3976,-4042,-4128,-4241,-4337,-4451,-4547,-4591,-4586,
+-4555,-4499,-4519,-4595,-4711,-4792,-4909,-4959,-4806,-4727,-4699,-4636,-4568,-4556,-4619,-4709,-4785,-4797,-4799,-4812,
+-4840,-4880,-4901,-4917,-4945,-4971,-4990,-5015,-5026,-5034,-5058,-5115,-5160,-5207,-5237,-5265,-5297,-5329,-5360,-5421,
+-5474,-5474,-5459,-5455,-5463,-5468,-5475,-5481,-5517,-5555,-5578,-5583,-5591,-5583,-5574,-5580,-5614,-5670,-5721,-5744,
+-5752,-5770,-5812,-5870,-5914,-5924,-5883,-5843,-5804,-5786,-5820,-5924,-6002,-6031,-6025,-5995,-5969,-5968,-5994,-5961,
+-5896,-5802,-5720,-5630,-5605,-5587,-5589,-5577,-5574,-5580,-5611,-5607,-5606,-5590,-5576,-5560,-5560,-5575,-5645,-5717,
+-5679,-5614,-5573,-5562,-5569,-5572,-5554,-5524,-5475,-5423,-5375,-5337,-5305,-5281,-5263,-5249,-5233,-5148,-5065,-5008,
+-4989,-5001,-5043,-5347,-5597,-5699,-5571,-5308,-5083,-4970,-4851,-4760,-4674,-4584,-4469,-4374,-4284,-4262,-4287,-4206,
+-4160,-4110,-4105,-4110,-4010,-3979,-3909,-3845,-3843,-3808,-3762,-3654,-3654,-3638,-3557,-3546,-3494,-3380,-3344,-3287,
+-3290,-3194,-3158,-3165,-3136,-3099,-3058,-3015,-2940,-2888,-2881,-2870,-2815,-2783,-2767,-2763,-2722,-2647,-2601,-2550,
+-2485,-2377,-2335,-2259,-2176,-2094,-1995,-1891,-1828,-1744,-1652,-1569,-1496,-1406,-1315,-1199,-1116,-1051,-964,-877,
+-780,-690,-597,-511,-404,-319,-217,-107,20,133,234,300,380,484,574,677,751,855,981,1134,
+1268,1370,1462,1564,1661,1766,1834,1876,1925,2064,2410,2675,2598,2272,1887,1684,1569,1505,1479,1468,
+1488,1548,1639,1780,1863,1917,1987,2060,2152,2288,2378,2403,2497,2562,2646,2733,2828,2916,2991,3064,
+3136,3214,3290,3351,3412,3471,3512,3544,3582,3565,3567,3599,3631,3648,3663,3680,3699,3732,3796,3812,
+3815,3830,3775,3764,3810,3812,3891,3880,3885,3928,3922,3964,4025,4111,4210,4216,4271,4338,4379,4418,
+4486,4523,4581,4591,4636,4658,4662,4680,4727,4694,4707,4783,4835,4846,4763,4616,4332,4137,3990,3753,
+3417,3105,2914,2792,2765,2899,3032,3167,3259,3355,3446,3507,3536,3559,3573,3583,3589,3584,3566,3528,
+3492,3540,3461,3345,3275,3239,3220,3211,3207,3179,3122,3018,2938,2929,3000,2975,2862,2801,2886,3054,
+2851,2697,2590,2441,2361,2320,2289,2257,2241,2222,2206,2166,2095,2037,2033,2112,2235,2047,1877,1862,
+1782,1651,1575,1589,1638,1598,1478,1401,1357,1332,1305,1277,1207,1163,1120,1149,1245,1116,1049,971,
+939,899,856,816,767,717,676,634,607,589,555,498,450,431,416,412,389,382,361,331,
+304,280,294,227,193,175,162,148,132,112,91,84,73,54,49,30,14,4,15,26,
+27,23,18,6,-11,-7,13,-65,-88,-75,-101,-61,-75,-71,-64,-65,-74,-92,-116,-129,
+-152,-163,-167,-162,-160,-170,-178,-179,-176,-174,-165,-150,-133,-109,-81,-53,-24,0,32,56,
+76,107,140,154,173,186,209,224,233,246,263,281,303,320,342,374,420,479,457,484,
+513,527,545,566,585,590,600,615,620,623,624,619,603,580,557,546,544,549,569,639,
+760,922,1108,1170,1035,981,988,1163,1435,1540,1382,1007,928,913,861,853,863,853,847,871,
+858,744,616,516,450,413,395,387,380,376,373,369,363,357,354,355,362,361,353,343,
+335,324,307,294,276,249,220,181,132,72,3,-68,-153,-227,-310,-387,-458,-523,-586,-645,
+-702,-751,-792,-830,-871,-906,-937,-969,-1002,-1031,-1059,-1092,-1126,-1163,-1200,-1234,-1274,-1320,-1357,-1390,
+-1431,-1477,-1521,-1563,-1600,-1632,-1655,-1704,-1738,-1775,-1818,-1860,-1901,-1944,-1975,-2002,-2033,-2060,-2083,-2104,
+-2127,-2160,-2191,-2226,-2269,-2308,-2347,-2392,-2441,-2492,-2539,-2582,-2620,-2660,-2705,-2745,-2786,-2829,-2872,-2912,
+-2949,-2978,-3019,-3060,-3091,-3125,-3211,-3259,-3314,-3353,-3390,-3426,-3468,-3503,-3527,-3546,-3568,-3593,-3623,-3654,
+-3695,-3734,-3772,-3817,-3861,-3905,-3954,-3994,-4018,-4055,-4093,-4113,-4139,-4154,-4193,-4208,-4250,-4269,-4308,-4333,
+-4367,-4394,-4420,-4437,-4452,-4479,-4514,-4538,-4564,-4586,-4598,-4609,-4623,-4633,-4656,-4679,-4687,-4699,-4703,-4704,
+-4708,-4704,-4708,-4709,-4716,-4720,-4724,-4719,-4704,-4684,-4672,-4664,-4653,-4633,-4611,-4586,-4570,-4553,-4539,-4527,
+-4508,-4490,-4472,-4434,-4400,-4366,-4321,-4280,-4239,-4202,-4168,-4144,-4118,-4093,-4024,-3998,-3966,-3933,-3908,-3846,
+-3687,-3630,-3605,-3565,-3495,-3420,-3244,-3084,-3184,-3202,-3303,-3293,-3237,-3189,-3142,-3077,-3018,-2950,-2868,-2778,
+-2696,-2604,-2527,-2419,-2264,-2087,-2061,-1929,-1856,-1877,-1830,-1771,-1735,-1693,-1656,-1639,-1597,-1571,-1541,-1511,
+-1465,-1421,-1397,-1396,-1388,-1378,-1351,-1300,-1266,-1349,-1434,-1582,-1657,-1649,-1748,-1871,-1991,-2100,-2181,-2232,
+-2313,-2423,-2550,-2674,-2776,-2864,-2948,-3008,-3023,-3004,-2961,-2906,-2834,-2766,-2728,-2713,-2728,-2753,-2762,-2771,
+-2789,-2800,-2806,-2803,-2773,-2714,-2551,-2352,-2213,-2084,-1950,-1815,-1748,-1751,-1785,-1804,-1854,-1922,-1961,-2024,
+-2048,-2068,-2195,-2344,-2245,-2170,-2309,-2437,-2490,-2522,-2528,-2517,-2482,-2506,-2517,-2551,-2570,-2587,-2588,-2602,
+-2613,-2626,-2629,-2605,-2581,-2548,-2474,-2418,-2422,-2491,-2565,-2532,-2453,-2426,-2441,-2483,-2547,-2673,-2867,-3049,
+-3098,-3033,-3029,-3118,-3240,-3342,-3454,-3702,-3855,-3968,-4092,-4272,-4321,-4369,-4419,-4468,-4510,-4558,-4614,-4677,
+-4739,-4799,-4851,-4905,-4955,-5000,-5042,-5069,-5097,-5113,-5122,-5124,-5133,-5150,-5171,-5197,-5211,-5213,-5204,-5195,
+-5180,-5167,-5162,-5163,-5169,-5179,-5187,-5200,-5208,-5211,-5214,-5229,-5242,-5256,-5263,-5265,-5263,-5250,-5231,-5214,
+-5196,-5176,-5156,-5128,-5102,-5080,-5043,-5019,-4989,-4955,-4925,-4891,-4855,-4814,-4778,-4736,-4700,-4660,-4623,-4589,
+-4543,-4494,-4443,-4375,-4309,-4246,-4211,-4136,-4069,-4010,-3938,-3866,-3796,-3736,-3692,-3637,-3588,-3515,-3421,-3375,
+-3290,-3237,-3159,-3071,-3026,-2955,-2906,-2818,-2734,-2656,-2570,-2508,-2414,-2319,-2212,-2130,-2052,-1975,-1890,-1807,
+-1728,-1656,-1569,-1471,-1378,-1281,-1206,-1218,-1195,-1121,-1056,-998,-919,-868,-827,-787,-729,-683,-673,-628,
+-585,-550,-493,-428,-377,-336,-314,-287,-224,-199,-154,-119,-67,-23,20,69,110,157,208,231,
+272,337,397,442,491,566,620,690,747,797,851,902,947,1006,1065,1126,1201,1254,1321,1371,
+1416,1460,1504,1551,1588,1613,1656,1683,1697,1715,1739,1756,1764,1782,1796,1813,1833,1855,1877,1905,
+1931,1956,1991,2025,2063,2102,2128,2151,2183,2218,2247,2284,2313,2338,2354,2366,2389,2418,2445,2466,
+2489,2512,2539,2567,2601,2631,2665,2704,2741,2773,2807,2841,2873,2905,2939,2983,3047,3153,3280,3413,
+3505,3531,3517,3527,3584,3684,3802,3918,3998,3976,3950,3951,3962,3984,3977,3929,3873,3843,3797,3757,
+3705,3669,3652,3647,3601,3529,3480,3482,3445,3391,3337,3273,3209,3177,3143,3119,3096,3052,3003,2954,
+2947,2954,2961,2933,2875,2817,2773,2737,2705,2684,2674,2671,2671,2665,2667,2653,2644,2625,2615,2643,
+2664,2669,2686,2745,2810,2874,2928,2966,2987,3028,3073,3103,3136,3180,3198,3174,3155,3191,3260,3311,
+3335,3355,3363,3374,3366,3381,3407,3417,3482,3589,3724,3768,3736,3670,3601,3511,3444,3378,3337,3344,
+3349,3323,3297,3252,3202,3144,3079,3026,2997,2988,2976,2962,2919,2862,2794,2698,2619,2568,2518,2491,
+2471,2451,2434,2430,2449,2481,2504,2540,2606,2688,2735,2781,2819,2855,2867,2858,2819,2778,2761,2734,
+2694,2668,2672,2654,2605,2554,2495,2418,2307,2199,2103,2022,1932,1832,1756,1688,1613,1534,1470,1430,
+1420,1410,1406,1420,1450,1483,1529,1580,1647,1709,1730,1736,1732,1689,1651,1615,1577,1532,1468,1432,
+1436,1435,1428,1402,1372,1334,1285,1239,1175,1134,1121,1119,1121,1126,1125,1139,1122,1097,1083,1077,
+1089,1104,1080,1062,1088,1110,1110,1053,973,939,903,815,738,721,700,689,669,675,663,625,
+599,568,581,624,656,669,683,711,767,773,756,730,704,690,645,569,501,453,416,353,
+286,238,203,166,108,42,-51,-141,-216,-324,-480,-599,-708,-796,-906,-1050,-1232,-1434,-1657,-1824,
+-1967,-2112,-2269,-2416,-2559,-2680,-2762,-2838,-2920,-2993,-3054,-3093,-3121,-3153,-3190,-3240,-3282,-3292,-3302,-3309,
+-3301,-3296,-3303,-3297,-3291,-3292,-3288,-3286,-3286,-3292,-3285,-3281,-3287,-3262,-3204,-3066,-2861,-2732,-2728,-2683,
+-2643,-2610,-2693,-2784,-3031,-3385,-3589,-3725,-3801,-3847,-3883,-3927,-3977,-4039,-4119,-4242,-4385,-4496,-4560,-4580,
+-4574,-4540,-4475,-4446,-4657,-4818,-4895,-4960,-4859,-4712,-4687,-4694,-4690,-4652,-4598,-4630,-4742,-4848,-4874,-4895,
+-4904,-4935,-4971,-4991,-5002,-5005,-5025,-5055,-5093,-5121,-5131,-5147,-5185,-5232,-5303,-5343,-5363,-5379,-5410,-5480,
+-5553,-5605,-5605,-5586,-5554,-5547,-5539,-5552,-5561,-5588,-5632,-5662,-5669,-5669,-5670,-5657,-5653,-5680,-5747,-5796,
+-5828,-5859,-5889,-5908,-5939,-5949,-5927,-5870,-5816,-5773,-5764,-5794,-5870,-5949,-6007,-6021,-6029,-6038,-6037,-6032,
+-5997,-5920,-5805,-5692,-5623,-5592,-5593,-5584,-5571,-5570,-5594,-5627,-5618,-5615,-5617,-5607,-5595,-5593,-5628,-5689,
+-5739,-5705,-5646,-5609,-5596,-5592,-5588,-5567,-5534,-5487,-5432,-5383,-5350,-5320,-5294,-5278,-5272,-5258,-5167,-5086,
+-5040,-5000,-4969,-5043,-5419,-5659,-5714,-5548,-5287,-5093,-4971,-4835,-4754,-4647,-4567,-4423,-4275,-4210,-4277,-4295,
+-4245,-4151,-4151,-4132,-4120,-4014,-3974,-3931,-3892,-3847,-3817,-3760,-3712,-3667,-3625,-3573,-3476,-3422,-3437,-3438,
+-3356,-3221,-3200,-3178,-3136,-3130,-3111,-3077,-3052,-2916,-2887,-2863,-2819,-2791,-2766,-2750,-2711,-2664,-2631,-2582,
+-2526,-2451,-2355,-2300,-2226,-2135,-2043,-1968,-1886,-1794,-1712,-1622,-1525,-1450,-1368,-1272,-1172,-1088,-977,-903,
+-810,-727,-631,-543,-443,-358,-272,-154,-52,50,170,269,343,440,542,634,734,819,910,1033,
+1170,1299,1409,1500,1612,1710,1807,1848,1881,1951,2139,2450,2697,2569,2320,2051,1820,1669,1572,1514,
+1463,1517,1548,1619,1708,1770,1848,1913,2010,2118,2256,2382,2490,2611,2680,2762,2856,2935,3011,3079,
+3150,3211,3273,3337,3390,3431,3482,3518,3543,3545,3568,3585,3601,3619,3648,3668,3690,3707,3728,3753,
+3793,3843,3855,3839,3864,3883,3892,3894,3877,3856,3867,3901,3953,4028,4077,4142,4215,4305,4350,4388,
+4424,4491,4529,4617,4615,4664,4681,4670,4683,4697,4700,4745,4824,4864,4894,4805,4670,4525,4318,4102,
+3866,3577,3301,3167,3030,2848,2747,2790,2898,3017,3117,3237,3341,3423,3482,3525,3561,3589,3599,3586,
+3564,3563,3585,3545,3452,3376,3340,3312,3282,3242,3195,3126,3052,2994,2962,2960,2911,2857,2864,3011,
+3191,3187,3023,2668,2465,2395,2364,2343,2329,2325,2342,2356,2241,2124,2083,2091,2075,2028,1970,1952,
+2034,1824,1671,1595,1564,1528,1501,1469,1435,1402,1366,1322,1285,1258,1207,1168,1182,1307,1200,1085,
+1008,977,948,909,865,825,790,750,714,690,656,614,568,539,509,486,469,459,429,400,
+369,353,324,304,278,251,232,210,187,172,151,148,135,137,119,107,89,69,59,60,
+71,75,71,69,59,44,48,-8,-42,-55,-37,-29,10,-20,-25,-16,-12,-17,-33,-55,
+-72,-85,-99,-107,-125,-132,-138,-142,-141,-136,-132,-128,-129,-123,-101,-75,-52,-31,-1,34,
+62,86,123,155,163,172,179,193,207,225,250,285,322,349,369,390,408,437,465,488,
+519,555,574,597,623,645,654,670,680,683,683,681,673,652,625,607,589,583,577,578,
+604,647,718,782,827,825,829,875,975,1167,1384,1378,1050,1034,1087,1173,1214,1202,1192,1135,
+1170,1188,909,703,584,505,450,424,411,403,400,393,377,351,348,337,325,333,332,329,
+327,325,317,304,291,278,258,231,189,138,108,24,-38,-119,-198,-272,-345,-416,-487,-557,
+-620,-674,-726,-774,-817,-857,-893,-926,-957,-984,-1012,-1046,-1079,-1116,-1150,-1186,-1222,-1261,-1306,-1346,
+-1392,-1431,-1480,-1514,-1548,-1583,-1615,-1657,-1704,-1740,-1781,-1824,-1859,-1884,-1924,-1957,-1989,-2017,-2043,-2065,
+-2095,-2127,-2164,-2203,-2250,-2281,-2317,-2352,-2393,-2439,-2481,-2525,-2571,-2611,-2651,-2693,-2737,-2773,-2818,-2854,
+-2895,-2931,-2965,-3006,-3054,-3102,-3155,-3214,-3261,-3293,-3330,-3370,-3408,-3446,-3479,-3502,-3520,-3544,-3565,-3600,
+-3636,-3676,-3718,-3761,-3817,-3865,-3904,-3948,-3992,-4029,-4046,-4075,-4100,-4123,-4155,-4187,-4215,-4229,-4264,-4296,
+-4339,-4374,-4398,-4420,-4447,-4483,-4506,-4526,-4526,-4554,-4584,-4584,-4593,-4610,-4624,-4647,-4668,-4686,-4695,-4695,
+-4706,-4709,-4715,-4719,-4724,-4725,-4724,-4719,-4715,-4705,-4694,-4677,-4663,-4651,-4634,-4621,-4601,-4582,-4564,-4546,
+-4537,-4518,-4499,-4478,-4447,-4414,-4380,-4337,-4290,-4244,-4214,-4185,-4152,-4112,-4080,-4045,-4004,-3963,-3928,-3896,
+-3865,-3802,-3682,-3632,-3603,-3535,-3466,-3327,-3156,-3180,-3175,-3310,-3296,-3248,-3197,-3143,-3098,-3051,-2964,-2892,
+-2824,-2724,-2625,-2542,-2479,-2367,-2248,-2142,-1960,-1901,-1900,-1792,-1738,-1722,-1652,-1633,-1617,-1560,-1529,-1517,
+-1485,-1442,-1390,-1364,-1356,-1368,-1381,-1356,-1298,-1298,-1280,-1320,-1529,-1586,-1552,-1628,-1801,-1915,-2030,-2132,
+-2193,-2261,-2367,-2488,-2619,-2720,-2806,-2889,-2947,-2958,-2930,-2879,-2822,-2751,-2690,-2667,-2674,-2712,-2729,-2734,
+-2734,-2737,-2743,-2747,-2728,-2663,-2529,-2322,-2150,-2001,-1864,-1740,-1643,-1624,-1649,-1689,-1713,-1749,-1805,-1845,
+-1903,-1932,-1967,-2067,-2092,-2014,-2028,-2190,-2315,-2347,-2404,-2461,-2465,-2424,-2428,-2432,-2451,-2459,-2450,-2409,
+-2400,-2440,-2470,-2472,-2448,-2435,-2433,-2434,-2431,-2453,-2493,-2526,-2535,-2474,-2413,-2394,-2415,-2471,-2565,-2684,
+-2801,-2881,-2921,-2968,-3049,-3143,-3229,-3348,-3574,-3803,-3942,-4057,-4143,-4208,-4292,-4379,-4436,-4493,-4546,-4607,
+-4662,-4719,-4779,-4834,-4887,-4932,-4977,-5019,-5046,-5072,-5093,-5107,-5115,-5119,-5125,-5133,-5159,-5181,-5197,-5201,
+-5195,-5191,-5181,-5164,-5165,-5175,-5179,-5197,-5211,-5220,-5230,-5225,-5238,-5246,-5254,-5259,-5258,-5256,-5247,-5231,
+-5209,-5195,-5173,-5147,-5118,-5094,-5074,-5046,-5020,-4990,-4962,-4929,-4890,-4855,-4815,-4779,-4733,-4693,-4657,-4611,
+-4571,-4535,-4490,-4460,-4403,-4332,-4263,-4207,-4144,-4082,-4017,-3956,-3897,-3820,-3764,-3703,-3639,-3579,-3525,-3455,
+-3391,-3327,-3265,-3172,-3107,-3043,-2987,-2934,-2852,-2760,-2707,-2617,-2524,-2458,-2373,-2259,-2178,-2098,-2013,-1927,
+-1829,-1762,-1668,-1588,-1527,-1430,-1356,-1259,-1234,-1162,-1080,-1039,-998,-989,-943,-918,-877,-841,-792,-753,
+-697,-630,-579,-550,-515,-468,-421,-371,-333,-288,-236,-186,-160,-111,-71,-42,3,46,101,154,
+195,244,299,362,425,461,529,595,675,729,798,849,905,956,1010,1078,1132,1195,1263,1307,
+1356,1403,1452,1494,1544,1571,1591,1635,1658,1682,1693,1708,1719,1726,1753,1766,1776,1795,1818,1850,
+1878,1917,1947,1970,2007,2043,2075,2104,2130,2159,2196,2225,2256,2286,2313,2333,2354,2385,2408,2428,
+2444,2466,2490,2516,2534,2556,2584,2617,2651,2679,2707,2735,2766,2792,2823,2868,2926,3008,3121,3245,
+3404,3487,3499,3519,3568,3652,3746,3826,3880,3893,3854,3836,3856,3888,3935,3964,3950,3899,3855,3817,
+3781,3718,3657,3627,3600,3539,3461,3404,3436,3428,3365,3303,3260,3197,3156,3109,3078,3052,3005,2969,
+2926,2912,2911,2900,2861,2807,2759,2715,2678,2650,2637,2634,2634,2638,2635,2639,2634,2655,2661,2658,
+2674,2689,2681,2693,2733,2818,2874,2939,2987,3006,3057,3084,3112,3145,3178,3200,3185,3164,3201,3267,
+3303,3334,3359,3373,3366,3357,3356,3369,3390,3439,3521,3622,3644,3585,3505,3426,3367,3322,3286,3259,
+3272,3287,3274,3234,3191,3143,3086,3027,2982,2966,2955,2959,2940,2891,2840,2777,2703,2619,2571,2516,
+2482,2463,2454,2451,2453,2460,2485,2493,2530,2615,2709,2750,2782,2811,2826,2821,2808,2796,2787,2767,
+2724,2680,2648,2633,2621,2584,2546,2489,2383,2276,2149,2054,1973,1886,1785,1699,1638,1582,1517,1455,
+1417,1404,1402,1399,1410,1442,1485,1534,1591,1651,1713,1740,1744,1726,1676,1644,1602,1556,1502,1462,
+1445,1425,1412,1393,1370,1328,1297,1264,1226,1153,1111,1092,1090,1086,1088,1098,1112,1103,1077,1073,
+1107,1096,1071,1054,1054,1110,1139,1116,1037,972,918,866,817,741,696,688,678,664,639,617,
+624,596,550,548,600,625,646,660,697,782,766,733,695,668,654,609,549,497,448,396,
+329,265,226,214,155,84,-13,-121,-213,-267,-364,-510,-656,-747,-797,-922,-1097,-1282,-1497,-1714,
+-1884,-2023,-2164,-2308,-2444,-2587,-2708,-2805,-2885,-2963,-3034,-3087,-3124,-3152,-3184,-3221,-3266,-3304,-3322,-3340,
+-3343,-3330,-3320,-3320,-3318,-3314,-3300,-3288,-3283,-3281,-3282,-3274,-3284,-3313,-3315,-3271,-3153,-3011,-2925,-2843,
+-2772,-2711,-2653,-2632,-2677,-2756,-3118,-3435,-3661,-3794,-3886,-3924,-3949,-3988,-4038,-4114,-4227,-4362,-4485,-4544,
+-4564,-4582,-4609,-4617,-4479,-4478,-4665,-4739,-4740,-4702,-4688,-4700,-4723,-4766,-4764,-4728,-4736,-4803,-4881,-4941,
+-4979,-5005,-5035,-5073,-5091,-5099,-5103,-5114,-5142,-5168,-5197,-5223,-5248,-5277,-5315,-5372,-5429,-5475,-5474,-5482,
+-5556,-5632,-5697,-5713,-5679,-5636,-5631,-5640,-5636,-5639,-5659,-5685,-5711,-5720,-5737,-5750,-5754,-5763,-5787,-5832,
+-5873,-5931,-5961,-5951,-5933,-5930,-5917,-5866,-5808,-5792,-5770,-5771,-5799,-5840,-5883,-5921,-5987,-6033,-6065,-6077,
+-6064,-6014,-5928,-5832,-5748,-5683,-5656,-5637,-5626,-5610,-5591,-5615,-5639,-5651,-5642,-5650,-5646,-5639,-5642,-5682,
+-5732,-5733,-5697,-5656,-5637,-5623,-5612,-5601,-5575,-5536,-5489,-5442,-5405,-5375,-5348,-5322,-5302,-5284,-5270,-5207,
+-5095,-5039,-5011,-4983,-5096,-5425,-5635,-5694,-5526,-5268,-5114,-5000,-4871,-4755,-4571,-4446,-4401,-4293,-4237,-4287,
+-4271,-4230,-4162,-4177,-4163,-4127,-4066,-3973,-3912,-3856,-3876,-3815,-3784,-3708,-3646,-3619,-3584,-3506,-3432,-3401,
+-3391,-3297,-3316,-3279,-3245,-3184,-3114,-3100,-3083,-3040,-2956,-2927,-2870,-2832,-2775,-2764,-2752,-2694,-2637,-2593,
+-2552,-2485,-2400,-2320,-2242,-2172,-2080,-2017,-1935,-1848,-1747,-1671,-1576,-1481,-1393,-1297,-1224,-1138,-1047,-948,
+-843,-752,-674,-591,-494,-409,-316,-223,-125,-10,78,167,270,379,490,600,698,790,872,964,
+1088,1228,1362,1479,1571,1656,1734,1800,1859,1900,1958,2110,2431,2632,2513,2349,2097,1920,1806,1713,
+1669,1638,1610,1659,1723,1790,1870,1957,2051,2165,2302,2435,2536,2646,2726,2800,2874,2952,3025,3091,
+3153,3218,3279,3339,3386,3425,3457,3486,3515,3539,3524,3548,3561,3589,3616,3649,3676,3699,3720,3745,
+3766,3780,3801,3864,3934,3916,3935,4043,4066,3954,3881,3882,3925,3986,4041,4091,4167,4264,4284,4373,
+4414,4453,4508,4568,4615,4673,4668,4693,4695,4726,4724,4719,4755,4800,4834,4841,4828,4733,4645,4514,
+4290,3993,3718,3522,3450,3365,3069,2792,2657,2659,2749,2871,3006,3148,3269,3375,3458,3526,3577,3603,
+3604,3599,3669,3812,3659,3534,3478,3443,3409,3367,3318,3264,3201,3133,3077,3032,2984,2939,2896,2885,
+2943,3048,3238,3153,2699,2499,2448,2435,2445,2467,2458,2496,2371,2255,2159,2121,2200,2166,2000,1955,
+1958,1978,1828,1708,1632,1582,1551,1533,1498,1463,1442,1416,1381,1333,1293,1252,1216,1219,1235,1193,
+1153,1105,1024,997,958,916,883,853,823,789,753,712,694,678,631,588,548,535,513,487,
+462,432,408,383,355,337,314,289,246,227,212,204,190,180,181,172,165,140,124,116,
+113,112,119,127,113,106,122,73,10,-11,20,137,167,30,13,25,31,28,25,8,
+-3,-3,-30,-51,-69,-75,-75,-72,-67,-63,-67,-71,-82,-92,-87,-72,-53,-33,-13,14,
+44,72,96,125,157,164,167,166,176,196,226,274,321,360,391,412,431,447,470,520,
+518,543,579,611,636,666,691,704,720,730,732,733,730,723,709,691,676,662,652,642,
+638,638,658,675,702,733,769,759,764,834,921,980,991,946,923,955,1026,1014,1048,1170,
+1400,1349,1271,1000,818,736,629,524,479,473,476,489,468,428,376,328,305,295,292,289,
+290,289,288,285,277,268,253,237,218,182,138,92,37,-21,-84,-156,-231,-314,-389,-463,
+-532,-597,-654,-710,-754,-796,-839,-876,-904,-934,-959,-995,-1034,-1070,-1106,-1141,-1180,-1212,-1246,-1277,
+-1326,-1379,-1421,-1470,-1507,-1543,-1576,-1611,-1649,-1703,-1741,-1777,-1810,-1834,-1864,-1905,-1950,-1992,-2028,-2059,
+-2081,-2112,-2137,-2164,-2195,-2230,-2263,-2300,-2343,-2382,-2430,-2476,-2520,-2568,-2617,-2658,-2696,-2736,-2777,-2808,
+-2847,-2883,-2921,-2962,-3005,-3053,-3105,-3161,-3211,-3251,-3282,-3314,-3350,-3380,-3410,-3444,-3472,-3496,-3527,-3560,
+-3594,-3631,-3672,-3719,-3768,-3822,-3872,-3916,-3933,-3976,-4017,-4044,-4058,-4085,-4111,-4141,-4168,-4181,-4224,-4259,
+-4303,-4346,-4383,-4411,-4438,-4460,-4485,-4521,-4537,-4521,-4560,-4597,-4605,-4612,-4613,-4637,-4659,-4667,-4683,-4691,
+-4693,-4703,-4712,-4723,-4735,-4737,-4736,-4730,-4717,-4710,-4706,-4703,-4691,-4676,-4661,-4647,-4630,-4609,-4588,-4572,
+-4558,-4542,-4526,-4505,-4476,-4445,-4418,-4382,-4336,-4290,-4255,-4222,-4195,-4156,-4106,-4069,-4025,-3983,-3954,-3912,
+-3870,-3833,-3804,-3767,-3716,-3642,-3570,-3482,-3389,-3233,-3211,-3242,-3304,-3302,-3230,-3184,-3156,-3104,-3046,-2957,
+-2905,-2862,-2766,-2651,-2563,-2499,-2448,-2329,-2218,-2069,-1914,-1841,-1765,-1760,-1657,-1632,-1611,-1553,-1534,-1500,
+-1484,-1445,-1400,-1372,-1338,-1351,-1324,-1363,-1335,-1318,-1334,-1310,-1356,-1534,-1566,-1572,-1624,-1739,-1859,-1961,
+-2078,-2138,-2204,-2313,-2434,-2561,-2670,-2755,-2829,-2873,-2881,-2853,-2799,-2736,-2670,-2623,-2612,-2639,-2674,-2681,
+-2677,-2668,-2660,-2648,-2608,-2535,-2388,-2236,-2135,-1949,-1821,-1714,-1609,-1554,-1551,-1570,-1605,-1632,-1675,-1701,
+-1737,-1790,-1811,-1836,-1868,-1901,-1932,-2028,-2173,-2246,-2294,-2349,-2362,-2309,-2239,-2172,-2131,-2121,-2129,-2117,
+-2104,-2117,-2161,-2219,-2300,-2339,-2327,-2338,-2328,-2340,-2411,-2466,-2489,-2497,-2483,-2414,-2373,-2375,-2414,-2488,
+-2587,-2686,-2772,-2843,-2935,-3047,-3209,-3446,-3544,-3539,-3691,-3842,-3894,-3935,-3973,-4120,-4320,-4414,-4479,-4547,
+-4615,-4674,-4735,-4785,-4838,-4887,-4932,-4968,-5001,-5027,-5053,-5076,-5089,-5096,-5101,-5108,-5117,-5128,-5151,-5171,
+-5179,-5177,-5181,-5176,-5167,-5163,-5163,-5182,-5194,-5212,-5225,-5237,-5240,-5235,-5244,-5244,-5244,-5243,-5239,-5236,
+-5220,-5202,-5181,-5160,-5139,-5113,-5089,-5069,-5053,-5023,-4994,-4966,-4934,-4891,-4850,-4818,-4772,-4734,-4693,-4659,
+-4618,-4572,-4540,-4479,-4449,-4399,-4344,-4263,-4212,-4154,-4094,-4026,-3960,-3904,-3854,-3773,-3730,-3674,-3610,-3536,
+-3464,-3417,-3333,-3256,-3190,-3123,-3071,-2996,-2938,-2863,-2790,-2711,-2630,-2551,-2452,-2368,-2306,-2237,-2153,-2071,
+-1989,-1888,-1796,-1715,-1626,-1551,-1464,-1368,-1255,-1254,-1195,-1096,-1079,-1056,-1025,-1003,-957,-901,-871,-863,
+-843,-800,-740,-666,-603,-556,-519,-483,-440,-403,-360,-302,-267,-209,-178,-129,-80,-29,8,69,
+129,172,225,282,348,397,445,516,574,649,716,784,847,908,963,1022,1075,1139,1207,1257,
+1305,1344,1393,1439,1475,1517,1556,1591,1607,1639,1669,1689,1698,1695,1699,1709,1720,1736,1758,1781,
+1806,1839,1876,1914,1949,1995,2027,2057,2090,2122,2149,2176,2201,2231,2268,2293,2317,2342,2370,2395,
+2411,2427,2449,2472,2514,2503,2520,2543,2572,2597,2619,2642,2668,2693,2714,2745,2794,2858,2953,3086,
+3219,3367,3420,3457,3542,3613,3679,3742,3787,3803,3790,3763,3751,3777,3826,3879,3920,3941,3916,3871,
+3829,3780,3706,3630,3597,3551,3496,3436,3378,3395,3404,3342,3284,3249,3189,3142,3098,3055,3026,2989,
+2945,2904,2872,2855,2824,2782,2740,2704,2665,2631,2606,2597,2592,2596,2603,2606,2606,2609,2635,2673,
+2699,2716,2719,2708,2724,2758,2835,2881,2946,3006,3007,3072,3129,3124,3150,3179,3192,3182,3186,3215,
+3265,3297,3334,3358,3364,3347,3326,3313,3321,3343,3386,3453,3509,3522,3449,3348,3264,3225,3197,3189,
+3173,3191,3217,3198,3171,3141,3094,3038,2982,2933,2908,2896,2917,2901,2849,2791,2745,2702,2628,2573,
+2522,2482,2466,2459,2458,2446,2447,2471,2463,2498,2590,2688,2733,2762,2785,2787,2775,2765,2781,2798,
+2770,2712,2679,2644,2612,2583,2576,2545,2468,2359,2241,2113,2009,1926,1845,1752,1659,1594,1543,1493,
+1445,1412,1396,1388,1384,1404,1436,1486,1532,1581,1645,1699,1737,1732,1714,1661,1632,1588,1534,1485,
+1460,1441,1404,1393,1357,1329,1294,1267,1248,1213,1135,1085,1060,1053,1058,1057,1056,1059,1053,1048,
+1036,1059,1055,1034,1015,1034,1096,1156,1134,1051,981,947,858,809,757,719,677,635,620,618,
+616,606,575,537,506,528,574,590,623,683,742,731,702,670,642,614,569,535,503,458,
+397,318,241,193,179,151,75,-54,-158,-255,-291,-411,-550,-707,-817,-864,-984,-1189,-1379,-1591,
+-1783,-1949,-2085,-2220,-2350,-2476,-2612,-2734,-2837,-2918,-2995,-3061,-3112,-3153,-3183,-3215,-3254,-3292,-3323,-3350,
+-3374,-3374,-3363,-3350,-3345,-3344,-3333,-3310,-3297,-3288,-3282,-3284,-3288,-3315,-3353,-3361,-3317,-3202,-3075,-3064,
+-3037,-2991,-2923,-2829,-2768,-2758,-2694,-2815,-3187,-3501,-3706,-3851,-3937,-3971,-4005,-4058,-4117,-4218,-4341,-4453,
+-4522,-4578,-4648,-4695,-4546,-4357,-4302,-4393,-4514,-4612,-4646,-4682,-4722,-4790,-4858,-4872,-4854,-4870,-4900,-4939,
+-4998,-5048,-5087,-5113,-5151,-5189,-5192,-5189,-5197,-5220,-5240,-5263,-5280,-5316,-5360,-5408,-5463,-5524,-5575,-5570,
+-5570,-5621,-5697,-5771,-5786,-5758,-5720,-5698,-5710,-5706,-5705,-5709,-5737,-5783,-5813,-5825,-5846,-5886,-5901,-5904,
+-5922,-5949,-5980,-5997,-5988,-5935,-5897,-5867,-5815,-5765,-5781,-5810,-5832,-5845,-5851,-5866,-5901,-5939,-6016,-6050,
+-6081,-6065,-6008,-5935,-5899,-5847,-5805,-5764,-5743,-5701,-5668,-5643,-5655,-5705,-5719,-5714,-5699,-5696,-5696,-5710,
+-5741,-5761,-5745,-5704,-5665,-5649,-5646,-5637,-5618,-5589,-5545,-5497,-5461,-5433,-5405,-5378,-5356,-5329,-5296,-5257,
+-5201,-5109,-5028,-4962,-4974,-5148,-5416,-5553,-5589,-5438,-5231,-5111,-5013,-4902,-4765,-4611,-4471,-4388,-4364,-4332,
+-4341,-4303,-4259,-4196,-4167,-4125,-4119,-4078,-3997,-3898,-3864,-3844,-3815,-3771,-3698,-3661,-3609,-3566,-3544,-3492,
+-3408,-3371,-3329,-3241,-3197,-3261,-3211,-3133,-3077,-3017,-3047,-2938,-2882,-2853,-2855,-2807,-2760,-2728,-2690,-2628,
+-2571,-2502,-2433,-2359,-2281,-2198,-2129,-2052,-1972,-1888,-1809,-1721,-1634,-1537,-1438,-1350,-1285,-1192,-1094,-1023,
+-913,-796,-716,-635,-554,-464,-368,-273,-174,-85,7,97,203,305,422,537,651,761,852,935,
+1042,1164,1295,1422,1539,1609,1686,1764,1838,1889,1925,1960,2061,2382,2456,2350,2376,2144,2030,1966,
+1921,1900,1879,1837,1906,1968,2041,2107,2191,2277,2380,2497,2602,2686,2776,2864,2906,2970,3027,3088,
+3156,3218,3284,3349,3401,3451,3464,3475,3491,3511,3526,3521,3539,3563,3586,3610,3642,3671,3697,3725,
+3758,3783,3806,3826,3847,3887,3939,3959,3982,4062,4065,3985,3967,3988,4015,4061,4115,4191,4281,4314,
+4404,4446,4485,4520,4562,4629,4667,4694,4727,4733,4754,4739,4738,4775,4774,4768,4785,4850,4791,4704,
+4622,4545,4263,3996,3794,3755,3697,3414,2985,2722,2613,2570,2631,2767,2934,3089,3244,3370,3476,3554,
+3600,3618,3623,3650,3720,3654,3590,3561,3529,3490,3441,3394,3342,3284,3224,3176,3126,3067,3020,2963,
+2920,2921,2971,3146,3027,2699,2551,2536,2551,2537,2605,2537,2469,2398,2292,2204,2135,2119,2087,2008,
+1967,1961,1974,1851,1756,1689,1643,1608,1577,1532,1491,1466,1462,1519,1475,1365,1315,1273,1244,1221,
+1199,1197,1103,1066,1044,1011,977,945,917,892,855,813,773,753,732,716,648,605,594,578,
+558,553,494,456,425,401,383,367,325,298,277,268,248,237,224,213,210,194,185,172,
+162,159,159,173,201,153,145,147,77,35,44,184,222,142,48,79,147,88,49,37,
+34,30,13,0,-7,-12,-4,-6,2,4,5,7,-9,-26,-30,-46,-35,-21,-1,19,
+45,70,96,113,135,158,161,167,171,190,214,250,297,344,384,418,442,461,483,501,
+522,548,568,601,636,664,694,722,738,754,762,770,773,774,770,766,758,746,735,729,
+726,703,705,695,698,759,737,698,715,746,787,820,841,847,845,847,854,856,858,897,
+991,1086,1086,1046,931,941,1070,786,611,572,587,641,682,662,576,447,342,292,268,253,
+247,244,241,237,230,227,223,211,198,183,156,126,88,45,-8,-71,-145,-219,-293,-363,
+-435,-507,-573,-634,-686,-731,-770,-815,-843,-879,-924,-963,-1000,-1030,-1059,-1091,-1118,-1145,-1184,-1228,
+-1270,-1305,-1349,-1398,-1451,-1495,-1541,-1578,-1613,-1650,-1698,-1741,-1772,-1806,-1836,-1870,-1918,-1967,-2001,-2029,
+-2050,-2067,-2092,-2125,-2159,-2192,-2234,-2274,-2319,-2359,-2396,-2441,-2479,-2522,-2574,-2615,-2660,-2693,-2736,-2778,
+-2814,-2853,-2892,-2936,-2974,-3015,-3062,-3113,-3157,-3195,-3232,-3266,-3299,-3338,-3373,-3405,-3441,-3468,-3498,-3529,
+-3560,-3598,-3641,-3684,-3734,-3777,-3826,-3871,-3904,-3931,-3955,-3994,-4029,-4063,-4079,-4103,-4130,-4157,-4185,-4214,
+-4241,-4295,-4343,-4383,-4411,-4442,-4451,-4484,-4502,-4532,-4556,-4575,-4601,-4618,-4621,-4631,-4647,-4671,-4682,-4688,
+-4690,-4690,-4705,-4719,-4730,-4738,-4743,-4738,-4730,-4720,-4712,-4710,-4708,-4701,-4686,-4678,-4660,-4639,-4614,-4592,
+-4578,-4560,-4549,-4530,-4509,-4481,-4444,-4420,-4382,-4336,-4299,-4261,-4226,-4195,-4159,-4112,-4077,-4039,-3983,-3926,
+-3892,-3854,-3820,-3784,-3752,-3710,-3654,-3596,-3519,-3454,-3403,-3343,-3335,-3319,-3284,-3230,-3175,-3134,-3101,-3050,
+-2954,-2945,-2881,-2787,-2681,-2588,-2529,-2479,-2383,-2233,-2066,-1959,-1897,-1787,-1779,-1661,-1634,-1564,-1560,-1501,
+-1457,-1455,-1421,-1368,-1342,-1324,-1344,-1310,-1311,-1298,-1347,-1336,-1360,-1459,-1522,-1562,-1586,-1624,-1718,-1809,
+-1900,-2007,-2077,-2153,-2258,-2383,-2516,-2626,-2702,-2761,-2792,-2791,-2763,-2711,-2649,-2594,-2566,-2578,-2607,-2618,
+-2609,-2592,-2577,-2531,-2448,-2334,-2205,-2117,-2048,-1916,-1789,-1701,-1609,-1544,-1512,-1507,-1513,-1536,-1557,-1594,
+-1602,-1631,-1660,-1677,-1712,-1767,-1826,-1891,-2060,-2179,-2237,-2275,-2257,-2160,-2032,-1950,-1885,-1821,-1864,-1886,
+-1869,-1901,-1925,-1946,-1988,-2109,-2182,-2235,-2259,-2279,-2306,-2341,-2387,-2430,-2427,-2433,-2424,-2392,-2369,-2377,
+-2435,-2516,-2612,-2693,-2785,-2908,-3055,-3358,-3549,-3646,-3685,-3714,-3720,-3601,-3661,-3826,-4018,-4185,-4332,-4444,
+-4550,-4631,-4695,-4745,-4797,-4849,-4898,-4940,-4973,-5006,-5024,-5031,-5053,-5071,-5078,-5087,-5091,-5093,-5105,-5113,
+-5120,-5143,-5158,-5165,-5173,-5168,-5166,-5165,-5174,-5184,-5206,-5225,-5234,-5241,-5244,-5236,-5235,-5231,-5224,-5214,
+-5206,-5198,-5185,-5161,-5139,-5108,-5093,-5081,-5065,-5046,-5019,-4992,-4959,-4932,-4893,-4843,-4813,-4770,-4731,-4688,
+-4656,-4613,-4586,-4553,-4482,-4438,-4378,-4340,-4304,-4221,-4157,-4109,-4062,-4015,-3954,-3911,-3850,-3785,-3700,-3641,
+-3601,-3511,-3440,-3367,-3305,-3244,-3155,-3091,-3030,-2973,-2902,-2841,-2746,-2673,-2582,-2523,-2418,-2331,-2236,-2158,
+-2083,-1997,-1926,-1848,-1786,-1714,-1622,-1503,-1408,-1313,-1322,-1223,-1196,-1167,-1134,-1103,-1068,-1031,-972,-927,
+-886,-832,-790,-768,-739,-695,-646,-606,-549,-508,-465,-430,-376,-324,-277,-230,-169,-131,-84,-41,
+10,66,140,208,275,340,403,457,541,603,669,737,797,850,894,962,1035,1080,1136,1186,
+1244,1314,1361,1392,1426,1470,1518,1552,1578,1600,1628,1651,1666,1681,1687,1692,1698,1704,1712,1732,
+1750,1780,1812,1839,1872,1910,1959,2000,2030,2061,2093,2122,2169,2196,2238,2270,2296,2307,2334,2362,
+2385,2402,2419,2435,2452,2467,2473,2487,2508,2531,2547,2562,2583,2608,2630,2646,2668,2714,2782,2901,
+3030,3179,3299,3365,3452,3566,3626,3659,3693,3742,3740,3701,3695,3702,3729,3777,3825,3860,3868,3871,
+3856,3820,3760,3696,3630,3586,3543,3494,3430,3394,3380,3383,3330,3262,3224,3178,3135,3089,3049,3015,
+2978,2930,2885,2844,2813,2771,2725,2694,2670,2632,2602,2579,2563,2552,2553,2564,2571,2576,2584,2619,
+2664,2708,2742,2754,2744,2751,2782,2845,2888,2949,3007,3017,3094,3151,3131,3149,3164,3176,3167,3186,
+3225,3252,3278,3306,3327,3335,3319,3286,3273,3269,3288,3320,3365,3402,3405,3337,3234,3145,3107,3103,
+3106,3092,3096,3132,3131,3103,3093,3055,2997,2946,2894,2846,2806,2849,2864,2808,2769,2714,2666,2621,
+2543,2506,2476,2459,2443,2429,2426,2420,2421,2422,2456,2544,2641,2706,2729,2748,2749,2735,2737,2762,
+2782,2770,2739,2704,2664,2621,2574,2557,2526,2402,2308,2199,2070,1963,1889,1811,1712,1622,1554,1509,
+1464,1426,1398,1378,1368,1371,1392,1427,1476,1518,1564,1623,1685,1725,1711,1668,1638,1607,1560,1502,
+1455,1434,1407,1379,1352,1316,1290,1268,1236,1210,1183,1123,1069,1047,1035,1045,1046,1036,1026,1028,
+1022,1017,1027,1015,994,984,1010,1077,1133,1112,1054,982,947,878,826,779,725,687,622,593,
+590,598,581,555,531,478,479,520,516,553,640,682,698,678,648,616,580,543,535,500,
+450,388,312,226,140,91,65,26,-77,-188,-319,-361,-467,-584,-711,-841,-935,-1070,-1281,-1463,
+-1669,-1852,-2015,-2155,-2284,-2404,-2524,-2648,-2765,-2865,-2945,-3023,-3087,-3140,-3184,-3218,-3245,-3282,-3315,-3343,
+-3377,-3401,-3402,-3394,-3383,-3383,-3378,-3355,-3338,-3324,-3312,-3312,-3326,-3342,-3367,-3409,-3419,-3386,-3297,-3203,
+-3161,-3130,-3083,-3035,-2991,-2945,-2889,-2842,-2792,-3040,-3306,-3591,-3807,-3921,-3971,-4042,-4088,-4130,-4221,-4344,
+-4458,-4584,-4681,-4694,-4527,-4346,-4195,-4147,-4344,-4490,-4582,-4638,-4705,-4789,-4892,-4966,-4978,-4975,-4999,-5051,
+-5050,-5053,-5108,-5152,-5178,-5218,-5252,-5274,-5252,-5248,-5270,-5301,-5331,-5343,-5388,-5437,-5496,-5564,-5615,-5666,
+-5689,-5690,-5712,-5784,-5849,-5849,-5833,-5808,-5770,-5766,-5793,-5822,-5828,-5858,-5896,-5946,-5964,-5969,-5981,-5975,
+-5956,-5959,-5977,-5997,-5977,-5960,-5925,-5856,-5824,-5805,-5801,-5836,-5867,-5888,-5884,-5898,-5907,-5947,-6000,-6047,
+-6062,-6092,-6075,-6052,-6028,-5960,-5925,-5893,-5862,-5830,-5785,-5747,-5714,-5705,-5735,-5756,-5737,-5764,-5773,-5766,
+-5775,-5815,-5822,-5782,-5718,-5675,-5658,-5667,-5659,-5641,-5606,-5556,-5515,-5483,-5458,-5433,-5406,-5386,-5358,-5323,
+-5245,-5181,-5101,-5009,-4963,-4954,-5122,-5376,-5469,-5444,-5308,-5145,-5072,-5016,-4928,-4791,-4638,-4470,-4418,-4402,
+-4430,-4368,-4319,-4260,-4200,-4151,-4124,-4085,-4054,-3981,-3923,-3854,-3797,-3810,-3769,-3717,-3666,-3638,-3595,-3524,
+-3484,-3453,-3311,-3256,-3228,-3104,-3147,-3217,-3099,-3065,-3042,-3047,-2969,-2914,-2898,-2846,-2801,-2766,-2708,-2658,
+-2599,-2532,-2460,-2385,-2317,-2254,-2171,-2093,-2017,-1930,-1845,-1785,-1703,-1612,-1513,-1415,-1288,-1234,-1142,-1072,
+-957,-891,-783,-687,-607,-526,-437,-340,-234,-135,-47,50,156,257,359,474,580,697,800,899,
+1002,1112,1230,1354,1453,1548,1653,1748,1824,1866,1856,1909,1958,2057,2339,2265,2228,2283,2167,2125,
+2120,2112,2099,2105,2061,2156,2235,2292,2338,2396,2470,2563,2651,2737,2822,2908,2922,2969,3028,3086,
+3146,3204,3268,3333,3394,3453,3479,3480,3495,3491,3506,3521,3523,3542,3564,3581,3615,3644,3673,3700,
+3733,3769,3805,3835,3859,3879,3895,3914,3932,3960,4010,4039,4030,4011,3997,4032,4098,4168,4262,4320,
+4376,4439,4476,4513,4532,4602,4641,4681,4695,4742,4752,4746,4745,4784,4803,4746,4742,4783,4896,4841,
+4761,4707,4623,4546,4333,4085,3979,3898,3631,3296,2975,2766,2622,2528,2562,2725,2909,3095,3265,3402,
+3514,3589,3626,3647,3675,3736,3678,3641,3621,3597,3554,3504,3454,3411,3361,3311,3269,3217,3158,3095,
+3038,2982,2934,2904,2876,2789,2683,2615,2635,2696,2578,2537,2497,2436,2363,2301,2226,2173,2129,2082,
+2032,1994,1971,1939,1877,1806,1750,1725,1730,1706,1629,1550,1514,1501,1547,1552,1497,1535,1407,1337,
+1304,1233,1176,1144,1124,1100,1077,1045,1014,984,960,926,880,829,785,749,714,672,657,654,
+645,627,599,551,513,478,512,525,405,371,361,355,336,308,291,260,243,228,215,212,
+205,198,197,212,252,230,195,186,125,93,105,177,253,169,73,49,136,200,101,48,
+64,52,36,33,41,46,44,57,63,55,70,81,71,61,49,31,28,17,24,39,
+53,73,92,113,125,145,168,174,186,197,214,236,269,311,358,403,440,467,496,517,
+538,553,569,593,630,657,683,708,740,759,773,786,799,808,815,816,814,808,810,822,
+805,786,773,759,778,818,748,734,751,770,790,805,815,821,821,815,810,797,790,792,
+812,852,881,882,857,824,851,877,767,708,725,795,920,1000,917,735,546,397,318,272,
+238,223,212,202,176,159,152,151,145,140,130,114,94,73,32,-20,-80,-146,-212,-278,
+-345,-412,-486,-548,-608,-666,-718,-756,-792,-824,-871,-901,-919,-955,-998,-1052,-1093,-1120,-1140,-1159,
+-1186,-1226,-1280,-1336,-1384,-1429,-1472,-1524,-1563,-1601,-1645,-1678,-1713,-1739,-1773,-1806,-1844,-1895,-1940,-1969,
+-1999,-2031,-2068,-2102,-2144,-2177,-2216,-2260,-2291,-2316,-2358,-2405,-2446,-2482,-2533,-2573,-2617,-2657,-2697,-2736,
+-2777,-2811,-2843,-2883,-2918,-2959,-3003,-3056,-3112,-3158,-3203,-3237,-3270,-3305,-3343,-3379,-3410,-3444,-3471,-3503,
+-3534,-3567,-3603,-3646,-3696,-3737,-3763,-3777,-3859,-3890,-3923,-3947,-3977,-4012,-4047,-4090,-4109,-4131,-4155,-4185,
+-4221,-4241,-4302,-4324,-4320,-4397,-4439,-4463,-4478,-4452,-4487,-4526,-4560,-4567,-4600,-4576,-4638,-4656,-4665,-4677,
+-4685,-4694,-4705,-4715,-4731,-4736,-4742,-4738,-4738,-4729,-4723,-4717,-4712,-4710,-4706,-4698,-4687,-4674,-4650,-4628,
+-4605,-4582,-4567,-4556,-4541,-4519,-4489,-4456,-4423,-4380,-4332,-4296,-4257,-4227,-4199,-4163,-4128,-4079,-4039,-4002,
+-3952,-3898,-3849,-3816,-3787,-3754,-3715,-3661,-3597,-3550,-3510,-3473,-3419,-3361,-3314,-3267,-3214,-3166,-3125,-3090,
+-3051,-3001,-2939,-2875,-2795,-2678,-2595,-2544,-2499,-2407,-2292,-2125,-1975,-2000,-1790,-1768,-1679,-1614,-1570,-1557,
+-1480,-1409,-1423,-1381,-1334,-1305,-1284,-1301,-1271,-1267,-1278,-1291,-1280,-1286,-1434,-1463,-1517,-1553,-1590,-1656,
+-1753,-1843,-1954,-2029,-2102,-2217,-2349,-2480,-2580,-2643,-2687,-2713,-2705,-2675,-2623,-2569,-2530,-2523,-2550,-2560,
+-2538,-2494,-2455,-2400,-2240,-2127,-2021,-1944,-1895,-1821,-1746,-1677,-1621,-1569,-1533,-1514,-1484,-1479,-1481,-1486,
+-1516,-1544,-1535,-1525,-1563,-1591,-1695,-1785,-1863,-2032,-2165,-2212,-2179,-2059,-1933,-1859,-1832,-1760,-1694,-1724,
+-1732,-1748,-1801,-1814,-1851,-1907,-2022,-2064,-2135,-2105,-2148,-2233,-2304,-2323,-2337,-2355,-2347,-2347,-2350,-2392,
+-2395,-2417,-2490,-2587,-2680,-2775,-2903,-3042,-3324,-3557,-3663,-3723,-3676,-3655,-3526,-3542,-3746,-3881,-3983,-4110,
+-4299,-4449,-4584,-4675,-4734,-4812,-4876,-4925,-4967,-4996,-5016,-5030,-5032,-5039,-5054,-5068,-5077,-5082,-5076,-5075,
+-5080,-5092,-5107,-5125,-5145,-5153,-5157,-5163,-5170,-5181,-5185,-5197,-5214,-5225,-5229,-5236,-5229,-5222,-5214,-5203,
+-5191,-5178,-5161,-5152,-5134,-5116,-5086,-5069,-5060,-5050,-5035,-5006,-4974,-4952,-4931,-4898,-4852,-4809,-4770,-4722,
+-4686,-4646,-4598,-4559,-4547,-4498,-4425,-4363,-4310,-4265,-4221,-4182,-4128,-4061,-4013,-3977,-3929,-3874,-3822,-3753,
+-3706,-3661,-3583,-3506,-3432,-3365,-3314,-3245,-3167,-3074,-3002,-2923,-2841,-2797,-2716,-2626,-2537,-2472,-2385,-2305,
+-2197,-2120,-2052,-1971,-1874,-1806,-1729,-1646,-1565,-1455,-1380,-1322,-1237,-1212,-1203,-1157,-1146,-1117,-1057,-1013,
+-986,-941,-894,-851,-814,-757,-705,-661,-628,-586,-556,-524,-484,-438,-379,-332,-286,-248,-198,-148,
+-86,-39,36,102,159,215,280,347,424,516,598,649,724,791,848,904,977,1050,1107,1161,
+1225,1275,1337,1377,1422,1462,1499,1525,1552,1589,1610,1633,1656,1680,1689,1693,1694,1703,1713,1717,
+1727,1745,1767,1791,1821,1850,1883,1915,1951,1993,2031,2066,2095,2135,2179,2226,2261,2286,2308,2331,
+2360,2379,2397,2411,2422,2433,2445,2454,2460,2474,2489,2500,2512,2532,2558,2578,2592,2616,2655,2723,
+2838,2997,3174,3270,3356,3468,3565,3586,3617,3670,3714,3681,3631,3633,3655,3685,3724,3763,3804,3819,
+3815,3799,3771,3735,3698,3647,3597,3553,3517,3446,3390,3359,3357,3317,3251,3205,3170,3131,3096,3057,
+3016,2977,2931,2882,2840,2796,2748,2702,2678,2653,2616,2589,2570,2555,2543,2537,2534,2538,2548,2569,
+2602,2660,2706,2750,2784,2776,2787,2813,2854,2903,2956,3017,3035,3104,3147,3139,3140,3144,3164,3156,
+3171,3209,3240,3278,3320,3313,3306,3278,3246,3241,3236,3246,3268,3295,3315,3299,3236,3151,3068,3038,
+3046,3038,3019,3014,3052,3065,3048,3043,3012,2961,2913,2862,2825,2753,2781,2819,2771,2739,2692,2641,
+2596,2531,2485,2441,2417,2401,2389,2375,2375,2379,2385,2413,2487,2579,2640,2688,2714,2726,2723,2739,
+2756,2764,2757,2747,2735,2715,2676,2620,2571,2489,2325,2228,2129,1999,1884,1811,1759,1674,1595,1533,
+1482,1439,1405,1382,1370,1357,1361,1382,1419,1461,1498,1563,1612,1682,1722,1707,1661,1627,1603,1544,
+1471,1419,1397,1375,1346,1314,1277,1246,1223,1206,1183,1146,1107,1071,1045,1039,1045,1039,1026,1015,
+1014,1006,994,998,975,953,954,964,1012,1051,1050,1015,988,975,937,853,801,785,734,668,
+600,581,565,575,552,506,454,441,494,479,511,579,666,722,704,659,618,596,564,538,
+480,414,351,287,216,129,32,-34,-73,-146,-224,-344,-438,-528,-636,-755,-868,-1019,-1182,-1364,
+-1542,-1744,-1932,-2083,-2215,-2341,-2455,-2573,-2689,-2799,-2894,-2974,-3056,-3120,-3170,-3212,-3248,-3276,-3309,-3339,
+-3365,-3395,-3419,-3426,-3420,-3413,-3408,-3395,-3383,-3374,-3360,-3351,-3362,-3384,-3413,-3444,-3472,-3473,-3440,-3379,
+-3291,-3226,-3173,-3122,-3084,-3056,-3010,-2950,-2927,-2936,-3054,-3260,-3582,-3796,-3918,-4000,-4073,-4103,-4127,-4197,
+-4284,-4397,-4627,-4699,-4493,-4298,-4189,-4207,-4337,-4435,-4539,-4622,-4706,-4808,-4923,-5036,-5104,-5125,-5108,-5124,
+-5182,-5217,-5187,-5193,-5211,-5230,-5278,-5301,-5309,-5298,-5287,-5298,-5316,-5353,-5397,-5451,-5502,-5568,-5631,-5682,
+-5715,-5757,-5776,-5808,-5871,-5910,-5914,-5907,-5863,-5836,-5849,-5876,-5920,-5951,-5987,-6017,-6031,-6034,-6039,-6035,
+-6014,-5980,-5954,-5959,-5965,-5928,-5909,-5902,-5871,-5850,-5858,-5883,-5930,-5934,-5933,-5924,-5943,-6024,-6091,-6120,
+-6121,-6129,-6132,-6121,-6108,-6072,-6028,-5978,-5952,-5916,-5885,-5840,-5799,-5735,-5733,-5736,-5758,-5754,-5795,-5840,
+-5844,-5830,-5860,-5859,-5812,-5742,-5699,-5681,-5683,-5678,-5653,-5611,-5568,-5529,-5500,-5480,-5459,-5442,-5424,-5390,
+-5340,-5259,-5163,-5112,-4999,-4930,-4931,-5110,-5339,-5372,-5324,-5209,-5074,-5022,-4971,-4915,-4779,-4644,-4448,-4391,
+-4409,-4427,-4367,-4308,-4268,-4185,-4133,-4092,-4086,-4045,-3962,-3915,-3876,-3806,-3769,-3767,-3724,-3680,-3619,-3586,
+-3532,-3465,-3459,-3362,-3271,-3211,-3136,-3070,-3092,-3152,-3087,-3057,-3015,-2984,-2915,-2879,-2836,-2781,-2736,-2675,
+-2616,-2553,-2479,-2401,-2339,-2293,-2239,-2139,-2052,-1980,-1906,-1818,-1760,-1688,-1601,-1507,-1389,-1230,-1178,-1134,
+-1016,-941,-849,-747,-638,-574,-494,-395,-291,-180,-90,1,103,197,303,406,514,609,721,842,
+951,1061,1179,1289,1388,1476,1573,1699,1787,1821,1810,1847,1921,1965,2049,2250,2185,2197,2335,2220,
+2200,2223,2267,2291,2296,2233,2345,2447,2493,2519,2560,2625,2705,2794,2869,2924,2966,3001,3054,3110,
+3165,3189,3254,3316,3372,3427,3467,3499,3495,3505,3505,3512,3524,3533,3553,3571,3590,3621,3652,3679,
+3705,3743,3776,3814,3846,3879,3902,3924,3940,3954,3963,3972,4012,4031,4018,4010,4078,4158,4214,4302,
+4364,4409,4460,4495,4517,4553,4610,4664,4681,4747,4755,4769,4752,4779,4790,4750,4748,4758,4803,4926,
+4920,4835,4776,4697,4618,4527,4368,4193,4086,3879,3576,3235,3007,2775,2542,2474,2595,2770,2945,3137,
+3310,3458,3562,3625,3668,3710,3755,3711,3685,3672,3651,3608,3554,3521,3468,3423,3377,3329,3280,3225,
+3167,3111,3050,2984,2918,2850,2785,2726,2673,2664,2698,2627,2560,2550,2479,2381,2310,2260,2238,2209,
+2133,2069,2024,1993,1956,1904,1847,1799,1806,1903,1877,1725,1611,1571,1518,1509,1516,1587,1727,1539,
+1450,1421,1310,1242,1188,1161,1142,1132,1115,1085,1050,1017,989,948,885,828,784,739,717,714,
+712,705,683,652,612,571,549,635,569,455,437,434,420,396,371,339,300,273,275,267,
+247,240,237,245,339,280,256,223,174,136,147,214,301,314,280,193,93,86,89,83,
+98,116,114,123,140,181,174,136,152,122,139,141,128,124,130,128,105,86,82,69,
+69,79,95,112,131,140,161,180,195,206,218,233,256,287,329,370,414,455,489,519,
+542,564,575,588,619,668,684,699,726,753,770,784,804,821,833,846,848,849,851,873,
+866,844,832,841,907,867,797,795,817,831,838,840,841,838,834,833,817,794,787,780,
+779,781,795,790,784,765,750,748,758,779,854,1018,1200,1396,1509,1262,911,694,534,429,
+359,299,260,237,203,131,82,63,56,55,65,62,58,49,34,1,-36,-79,-134,-190,
+-256,-327,-402,-472,-533,-588,-643,-691,-736,-783,-827,-871,-895,-932,-970,-1023,-1070,-1090,-1095,-1103,
+-1130,-1166,-1210,-1263,-1308,-1368,-1405,-1440,-1475,-1520,-1567,-1613,-1655,-1696,-1714,-1748,-1796,-1836,-1885,-1934,
+-1977,-2013,-2038,-2063,-2091,-2137,-2187,-2231,-2272,-2303,-2333,-2363,-2404,-2443,-2484,-2519,-2550,-2596,-2641,-2686,
+-2727,-2766,-2799,-2832,-2874,-2917,-2959,-3020,-3078,-3130,-3177,-3212,-3242,-3272,-3303,-3338,-3375,-3406,-3444,-3477,
+-3507,-3535,-3570,-3599,-3637,-3681,-3723,-3755,-3797,-3841,-3877,-3909,-3947,-3974,-4016,-4051,-4090,-4122,-4136,-4153,
+-4179,-4210,-4253,-4295,-4325,-4354,-4396,-4425,-4415,-4410,-4439,-4501,-4534,-4572,-4596,-4607,-4618,-4645,-4662,-4667,
+-4664,-4685,-4695,-4706,-4717,-4735,-4742,-4741,-4740,-4742,-4740,-4737,-4724,-4718,-4716,-4708,-4698,-4685,-4676,-4667,
+-4649,-4625,-4594,-4565,-4554,-4549,-4530,-4495,-4460,-4417,-4384,-4347,-4311,-4275,-4236,-4199,-4168,-4130,-4084,-4042,
+-3991,-3942,-3894,-3846,-3804,-3775,-3740,-3697,-3657,-3597,-3541,-3495,-3454,-3404,-3353,-3303,-3247,-3198,-3160,-3113,
+-3082,-3049,-3000,-2944,-2884,-2774,-2691,-2583,-2533,-2496,-2426,-2327,-2165,-1968,-1980,-1825,-1714,-1688,-1608,-1571,
+-1530,-1467,-1388,-1404,-1360,-1304,-1264,-1268,-1256,-1217,-1235,-1262,-1277,-1236,-1215,-1378,-1418,-1464,-1500,-1538,
+-1599,-1691,-1787,-1899,-1973,-2046,-2166,-2302,-2429,-2521,-2570,-2606,-2625,-2613,-2582,-2532,-2488,-2469,-2480,-2501,
+-2485,-2429,-2332,-2221,-2085,-1928,-1850,-1802,-1751,-1700,-1646,-1609,-1586,-1562,-1545,-1527,-1501,-1459,-1438,-1424,
+-1420,-1446,-1488,-1482,-1438,-1437,-1476,-1615,-1775,-1904,-2051,-2147,-2134,-2014,-1923,-1869,-1825,-1785,-1678,-1656,
+-1676,-1698,-1724,-1760,-1778,-1829,-1888,-1987,-1995,-1995,-2035,-2087,-2122,-2153,-2200,-2256,-2300,-2331,-2331,-2317,
+-2319,-2388,-2489,-2568,-2699,-2792,-2833,-2955,-3067,-3202,-3410,-3513,-3710,-3745,-3692,-3594,-3677,-3822,-3905,-3943,
+-4090,-4214,-4440,-4516,-4521,-4634,-4769,-4869,-4945,-4991,-5015,-5032,-5045,-5049,-5047,-5050,-5059,-5070,-5076,-5067,
+-5055,-5045,-5055,-5082,-5110,-5127,-5143,-5146,-5147,-5158,-5175,-5183,-5195,-5200,-5217,-5221,-5211,-5205,-5195,-5188,
+-5175,-5164,-5149,-5129,-5115,-5099,-5084,-5066,-5056,-5036,-5023,-4999,-4989,-4954,-4937,-4919,-4884,-4843,-4796,-4750,
+-4701,-4673,-4627,-4588,-4533,-4509,-4484,-4444,-4403,-4336,-4275,-4232,-4173,-4128,-4089,-4045,-4003,-3956,-3911,-3856,
+-3813,-3736,-3655,-3610,-3544,-3467,-3424,-3372,-3303,-3239,-3161,-3089,-2999,-2910,-2819,-2747,-2657,-2567,-2483,-2428,
+-2361,-2262,-2168,-2090,-2006,-1923,-1851,-1772,-1673,-1585,-1491,-1423,-1403,-1306,-1259,-1251,-1236,-1206,-1161,-1117,
+-1047,-1020,-983,-933,-901,-870,-848,-817,-742,-697,-650,-595,-561,-498,-457,-393,-358,-311,-257,-214,
+-159,-101,-60,0,46,116,201,266,327,417,483,548,600,677,749,823,908,957,1024,1091,
+1164,1224,1274,1330,1381,1435,1476,1512,1541,1567,1614,1639,1660,1673,1689,1705,1711,1716,1718,1726,
+1733,1746,1756,1776,1798,1816,1845,1874,1903,1932,1974,2009,2048,2081,2117,2156,2196,2242,2267,2297,
+2327,2349,2367,2385,2398,2408,2416,2422,2428,2431,2436,2446,2458,2470,2488,2511,2533,2553,2582,2630,
+2716,2842,3009,3204,3273,3369,3471,3535,3550,3597,3656,3668,3605,3568,3579,3604,3632,3664,3701,3747,
+3783,3779,3762,3724,3700,3685,3645,3594,3548,3504,3445,3386,3343,3320,3288,3244,3203,3174,3146,3117,
+3065,3022,2981,2936,2891,2850,2802,2753,2715,2685,2651,2619,2593,2578,2566,2557,2550,2542,2530,2526,
+2563,2607,2667,2711,2753,2783,2793,2821,2854,2877,2922,2976,3035,3052,3115,3131,3145,3123,3121,3142,
+3154,3171,3222,3266,3302,3321,3303,3281,3236,3214,3218,3208,3215,3233,3249,3253,3217,3158,3085,3024,
+2985,2973,2964,2948,2950,2969,2996,3008,2997,2975,2950,2894,2846,2803,2739,2708,2763,2744,2697,2652,
+2605,2551,2500,2446,2423,2366,2330,2307,2306,2317,2332,2344,2367,2421,2499,2546,2604,2689,2737,2757,
+2779,2797,2807,2793,2769,2783,2811,2796,2724,2640,2475,2253,2141,2030,1906,1803,1738,1697,1655,1596,
+1536,1475,1423,1388,1368,1358,1351,1356,1375,1401,1424,1454,1514,1622,1681,1706,1697,1655,1621,1578,
+1505,1435,1389,1363,1343,1310,1271,1236,1206,1184,1172,1147,1122,1106,1084,1063,1057,1052,1047,1043,
+1026,1007,994,985,979,958,959,956,962,995,1024,1023,1001,994,998,980,859,786,851,833,
+726,629,560,543,541,509,483,430,455,489,483,500,568,643,714,729,690,636,607,582,
+536,450,380,304,242,182,98,-10,-103,-152,-222,-314,-409,-516,-598,-683,-792,-928,-1103,-1263,
+-1443,-1627,-1829,-2010,-2145,-2264,-2381,-2503,-2622,-2726,-2824,-2913,-3003,-3087,-3145,-3191,-3233,-3270,-3307,-3340,
+-3367,-3392,-3421,-3439,-3447,-3444,-3437,-3431,-3422,-3417,-3414,-3407,-3402,-3414,-3437,-3470,-3503,-3527,-3506,-3455,
+-3405,-3336,-3264,-3202,-3169,-3142,-3117,-3075,-3022,-3002,-3029,-3129,-3311,-3626,-3821,-3943,-4035,-4092,-4103,-4110,
+-4100,-4026,-4375,-4624,-4574,-4401,-4346,-4363,-4400,-4456,-4531,-4628,-4735,-4854,-4978,-5090,-5185,-5234,-5248,-5238,
+-5246,-5304,-5365,-5383,-5365,-5323,-5314,-5348,-5361,-5359,-5347,-5316,-5287,-5291,-5339,-5425,-5495,-5571,-5624,-5672,
+-5705,-5699,-5765,-5815,-5878,-5946,-5986,-5970,-5942,-5896,-5875,-5877,-5905,-5933,-5971,-6009,-6039,-6044,-6052,-6055,
+-6055,-6026,-5981,-5945,-5931,-5913,-5897,-5925,-5943,-5940,-5933,-5929,-5953,-6005,-6007,-5997,-6015,-6035,-6131,-6190,
+-6208,-6196,-6189,-6182,-6165,-6150,-6122,-6088,-6034,-6001,-5959,-5892,-5858,-5836,-5753,-5784,-5791,-5777,-5746,-5811,
+-5896,-5909,-5894,-5903,-5882,-5833,-5780,-5735,-5712,-5697,-5681,-5656,-5630,-5590,-5554,-5529,-5518,-5499,-5489,-5463,
+-5423,-5349,-5251,-5133,-5105,-5034,-4939,-4891,-5057,-5273,-5330,-5268,-5152,-5016,-4975,-4935,-4870,-4757,-4610,-4422,
+-4396,-4385,-4379,-4308,-4253,-4242,-4198,-4132,-4118,-4072,-3983,-3952,-3915,-3874,-3810,-3759,-3782,-3727,-3678,-3610,
+-3585,-3537,-3507,-3413,-3401,-3323,-3258,-3214,-3145,-3028,-3022,-3060,-3035,-3039,-3005,-2942,-2920,-2834,-2771,-2701,
+-2637,-2586,-2501,-2430,-2380,-2307,-2262,-2200,-2111,-2021,-1946,-1872,-1791,-1721,-1654,-1553,-1455,-1351,-1239,-1177,
+-1104,-991,-892,-792,-699,-609,-524,-431,-325,-217,-124,-35,61,146,235,350,453,559,669,781,
+896,1008,1108,1215,1329,1419,1445,1537,1667,1735,1773,1794,1858,1927,1957,2006,2153,2151,2165,2358,
+2304,2243,2294,2364,2384,2396,2341,2496,2591,2628,2651,2687,2747,2813,2890,2948,3013,3051,3087,3150,
+3183,3221,3272,3315,3361,3409,3454,3491,3509,3511,3537,3521,3521,3536,3549,3566,3592,3615,3637,3664,
+3695,3724,3761,3794,3822,3853,3891,3914,3939,3968,3993,4002,4009,4021,4031,4051,4063,4111,4163,4236,
+4328,4388,4443,4483,4516,4539,4578,4639,4665,4713,4762,4734,4761,4778,4783,4772,4777,4783,4788,4844,
+4903,4913,4856,4818,4775,4701,4629,4584,4428,4303,4112,3857,3540,3291,3026,2742,2582,2608,2697,2810,
+3004,3210,3387,3527,3610,3677,3729,3785,3738,3714,3708,3685,3645,3612,3550,3505,3460,3410,3357,3310,
+3262,3208,3153,3100,3041,2976,2908,2843,2776,2724,2700,2698,2648,2582,2584,2513,2406,2340,2309,2304,
+2273,2172,2093,2046,2009,1973,1933,1885,1833,1859,2041,2030,1785,1657,1644,1587,1559,1566,1583,1631,
+1556,1476,1424,1406,1347,1280,1231,1185,1170,1166,1143,1104,1071,1043,1003,949,885,822,787,770,
+765,763,753,731,703,680,644,619,608,590,561,529,507,478,455,433,399,365,340,384,
+397,304,294,294,312,369,340,288,225,193,216,282,330,401,463,458,321,223,178,154,
+198,270,279,304,314,352,312,242,204,177,157,145,146,154,164,166,163,159,144,128,
+106,100,106,121,135,148,156,172,193,213,227,239,257,280,308,345,385,428,468,500,
+528,552,572,587,604,627,665,720,716,740,762,783,802,824,839,853,858,867,871,896,
+922,871,871,918,978,894,860,869,884,890,890,886,881,876,869,861,840,826,813,803,
+796,789,780,787,766,752,738,727,734,774,877,1053,1373,1562,1660,1714,1370,1042,972,853,
+728,647,528,423,356,247,117,29,-22,-45,-43,-31,-18,-12,-7,-14,-38,-61,-95,-143,
+-206,-263,-324,-376,-436,-496,-556,-618,-669,-729,-770,-811,-850,-880,-930,-972,-1006,-1032,-1047,-1061,
+-1075,-1103,-1143,-1185,-1240,-1291,-1323,-1365,-1410,-1455,-1510,-1558,-1602,-1639,-1671,-1699,-1750,-1788,-1830,-1866,
+-1904,-1949,-1996,-2032,-2062,-2094,-2143,-2181,-2216,-2246,-2278,-2309,-2343,-2384,-2430,-2465,-2505,-2545,-2589,-2633,
+-2678,-2724,-2769,-2803,-2837,-2879,-2926,-2980,-3038,-3096,-3137,-3181,-3205,-3232,-3258,-3289,-3330,-3368,-3407,-3453,
+-3488,-3517,-3538,-3567,-3594,-3629,-3665,-3709,-3741,-3780,-3822,-3857,-3892,-3932,-3981,-4023,-4067,-4097,-4125,-4147,
+-4157,-4181,-4216,-4255,-4288,-4325,-4363,-4397,-4426,-4446,-4471,-4503,-4533,-4555,-4569,-4584,-4596,-4616,-4639,-4666,
+-4676,-4678,-4700,-4710,-4713,-4725,-4735,-4736,-4740,-4742,-4737,-4739,-4740,-4736,-4722,-4724,-4721,-4703,-4684,-4671,
+-4667,-4650,-4626,-4606,-4573,-4552,-4542,-4527,-4497,-4460,-4421,-4390,-4350,-4321,-4273,-4249,-4206,-4175,-4128,-4086,
+-4040,-3987,-3933,-3883,-3836,-3793,-3755,-3710,-3673,-3624,-3572,-3519,-3477,-3427,-3382,-3336,-3286,-3233,-3194,-3146,
+-3097,-3073,-3042,-2981,-2943,-2905,-2813,-2696,-2565,-2522,-2482,-2427,-2334,-2211,-2039,-1977,-1885,-1763,-1713,-1622,
+-1579,-1503,-1453,-1403,-1384,-1326,-1280,-1240,-1236,-1205,-1191,-1189,-1209,-1243,-1210,-1214,-1351,-1401,-1433,-1471,
+-1487,-1538,-1627,-1729,-1839,-1917,-1977,-2086,-2221,-2348,-2429,-2476,-2516,-2534,-2518,-2489,-2445,-2414,-2407,-2423,
+-2427,-2390,-2282,-2059,-1831,-1742,-1681,-1650,-1641,-1627,-1606,-1563,-1531,-1519,-1514,-1508,-1491,-1469,-1424,-1391,
+-1377,-1366,-1388,-1421,-1417,-1368,-1335,-1402,-1570,-1769,-1950,-2074,-2094,-2001,-1928,-1903,-1866,-1847,-1837,-1747,
+-1721,-1737,-1772,-1783,-1813,-1832,-1872,-1934,-2022,-2065,-2089,-2153,-2068,-2010,-2041,-2076,-2210,-2238,-2260,-2283,
+-2289,-2307,-2373,-2536,-2755,-2866,-2954,-3032,-3133,-3269,-3242,-3302,-3469,-3721,-3781,-3709,-3755,-3801,-3860,-3922,
+-4027,-4206,-4353,-4383,-4315,-4236,-4397,-4611,-4751,-4846,-4974,-5030,-5048,-5047,-5055,-5065,-5069,-5072,-5067,-5068,
+-5066,-5050,-5032,-5028,-5049,-5081,-5109,-5126,-5137,-5143,-5151,-5167,-5177,-5177,-5171,-5197,-5186,-5186,-5174,-5164,
+-5158,-5142,-5132,-5114,-5104,-5087,-5074,-5056,-5034,-5012,-5002,-5000,-4993,-4968,-4942,-4919,-4896,-4857,-4818,-4767,
+-4718,-4671,-4640,-4595,-4558,-4513,-4474,-4440,-4420,-4372,-4318,-4279,-4224,-4177,-4133,-4108,-4047,-4003,-3951,-3924,
+-3884,-3833,-3768,-3698,-3637,-3578,-3512,-3456,-3401,-3343,-3260,-3181,-3124,-3037,-2961,-2888,-2816,-2724,-2634,-2549,
+-2479,-2372,-2297,-2210,-2148,-2077,-2004,-1918,-1823,-1715,-1584,-1537,-1508,-1429,-1367,-1316,-1298,-1291,-1236,-1213,
+-1179,-1140,-1104,-1080,-1033,-978,-922,-879,-856,-822,-747,-696,-672,-600,-565,-525,-459,-414,-356,-323,
+-265,-213,-152,-117,-53,17,104,159,219,289,359,419,489,563,644,716,806,874,936,1011,
+1078,1156,1205,1275,1321,1376,1431,1476,1513,1556,1597,1631,1673,1685,1698,1704,1714,1723,1730,1737,
+1745,1757,1769,1780,1795,1812,1834,1858,1887,1914,1939,1982,2014,2048,2084,2113,2148,2183,2233,2270,
+2295,2322,2345,2359,2372,2387,2396,2401,2401,2403,2404,2405,2410,2419,2429,2445,2469,2492,2512,2547,
+2613,2709,2855,3045,3213,3267,3339,3430,3508,3549,3623,3656,3596,3546,3554,3565,3570,3588,3615,3644,
+3690,3728,3737,3723,3699,3684,3670,3637,3581,3527,3471,3413,3352,3309,3282,3263,3237,3204,3172,3142,
+3110,3064,3020,2979,2942,2900,2860,2817,2774,2735,2694,2657,2635,2621,2607,2601,2596,2582,2569,2555,
+2552,2569,2616,2677,2728,2768,2800,2827,2859,2890,2914,2942,2992,3052,3064,3116,3114,3122,3118,3130,
+3141,3157,3188,3232,3254,3292,3301,3279,3251,3197,3187,3181,3175,3182,3194,3197,3180,3136,3085,3024,
+2969,2923,2897,2883,2870,2870,2887,2916,2941,2952,2944,2924,2878,2827,2783,2742,2696,2713,2715,2655,
+2615,2560,2504,2467,2414,2368,2348,2295,2257,2244,2260,2278,2301,2327,2366,2411,2459,2536,2654,2766,
+2807,2812,2829,2867,2841,2804,2850,2921,2924,2843,2624,2362,2178,2044,1921,1808,1728,1678,1655,1631,
+1596,1540,1468,1402,1356,1342,1339,1337,1340,1358,1370,1380,1406,1465,1569,1651,1683,1675,1641,1605,
+1547,1470,1408,1356,1328,1299,1263,1221,1189,1167,1152,1131,1106,1097,1095,1096,1078,1055,1040,1035,
+1027,1024,996,981,970,954,959,976,968,961,961,967,967,954,958,945,894,806,771,816,
+851,738,636,546,513,508,459,432,423,444,483,508,484,531,619,703,695,662,624,621,
+597,514,448,396,294,196,131,56,-35,-149,-232,-312,-396,-491,-599,-677,-772,-856,-1002,-1181,
+-1329,-1507,-1701,-1901,-2079,-2214,-2318,-2424,-2543,-2658,-2757,-2845,-2934,-3027,-3104,-3158,-3202,-3246,-3288,-3333,
+-3371,-3394,-3416,-3447,-3460,-3468,-3467,-3462,-3457,-3455,-3455,-3455,-3453,-3452,-3465,-3481,-3508,-3544,-3559,-3528,
+-3472,-3421,-3359,-3302,-3253,-3208,-3177,-3157,-3138,-3109,-3094,-3160,-3242,-3437,-3712,-3897,-3997,-4072,-4122,-4137,
+-4127,-3966,-3958,-4396,-4600,-4597,-4531,-4490,-4486,-4512,-4570,-4673,-4793,-4926,-5057,-5167,-5259,-5313,-5335,-5345,
+-5350,-5363,-5419,-5489,-5529,-5520,-5451,-5416,-5418,-5414,-5398,-5397,-5370,-5307,-5312,-5386,-5472,-5538,-5616,-5684,
+-5728,-5724,-5734,-5817,-5882,-5932,-5969,-6005,-5984,-5945,-5911,-5920,-5936,-5940,-5957,-5979,-6011,-6035,-6044,-6045,
+-6063,-6068,-6052,-6028,-5989,-5959,-5943,-5957,-6002,-6042,-6035,-6036,-6050,-6078,-6117,-6132,-6111,-6122,-6166,-6227,
+-6261,-6270,-6262,-6255,-6244,-6220,-6196,-6172,-6137,-6079,-6044,-5996,-5934,-5903,-5891,-5802,-5839,-5850,-5828,-5761,
+-5850,-5947,-5972,-5964,-5950,-5919,-5866,-5809,-5760,-5721,-5706,-5683,-5669,-5648,-5625,-5606,-5576,-5546,-5533,-5511,
+-5485,-5437,-5354,-5249,-5130,-5096,-5050,-4978,-4849,-4963,-5165,-5284,-5251,-5098,-4972,-4959,-4904,-4829,-4730,-4596,
+-4453,-4334,-4319,-4288,-4189,-4173,-4175,-4177,-4143,-4058,-4048,-3954,-3943,-3900,-3874,-3806,-3717,-3765,-3722,-3650,
+-3578,-3546,-3530,-3516,-3460,-3407,-3335,-3258,-3198,-3142,-2959,-2894,-2960,-3011,-3013,-2997,-2950,-2913,-2842,-2764,
+-2669,-2600,-2524,-2428,-2354,-2330,-2286,-2232,-2154,-2070,-1996,-1914,-1826,-1748,-1677,-1595,-1487,-1384,-1294,-1219,
+-1131,-1049,-950,-829,-724,-632,-540,-452,-356,-265,-179,-106,-20,77,172,279,401,517,625,727,
+831,943,1049,1158,1258,1349,1405,1467,1534,1628,1721,1770,1779,1812,1862,1906,1977,2066,2139,2172,
+2393,2403,2302,2337,2432,2437,2407,2411,2585,2697,2715,2734,2780,2847,2909,2969,3005,3088,3109,3154,
+3198,3255,3284,3332,3374,3410,3442,3479,3504,3523,3537,3557,3547,3545,3560,3572,3597,3623,3640,3670,
+3696,3717,3744,3776,3806,3835,3855,3890,3919,3950,3978,4002,4019,4037,4045,4066,4102,4108,4160,4195,
+4319,4384,4412,4456,4495,4531,4558,4601,4646,4686,4727,4734,4744,4778,4804,4795,4806,4808,4810,4811,
+4812,4853,4934,4894,4839,4829,4783,4715,4657,4572,4460,4341,4141,3845,3603,3366,3136,2826,2735,2689,
+2753,2912,3121,3339,3534,3603,3674,3733,3787,3753,3726,3721,3702,3653,3601,3558,3519,3468,3415,3364,
+3334,3306,3239,3180,3138,3101,3059,3004,2928,2845,2778,2739,2717,2680,2627,2563,2504,2438,2377,2354,
+2419,2429,2242,2138,2083,2039,2018,2015,1968,1915,1900,2008,2038,1868,1749,1714,1785,1777,1654,1592,
+1577,1623,1628,1479,1441,1396,1343,1363,1261,1225,1205,1176,1142,1107,1084,1051,998,934,888,861,
+838,827,818,804,777,759,750,723,706,691,720,685,613,576,548,530,502,468,450,465,
+439,379,356,356,352,348,326,337,274,231,252,361,396,429,516,437,403,358,346,408,
+392,373,432,421,409,421,378,344,326,253,210,215,222,197,195,185,174,181,181,174,
+159,144,125,129,137,150,162,166,180,202,226,245,262,281,303,327,361,401,446,480,
+509,534,554,578,595,619,642,670,701,724,745,768,790,815,836,850,859,869,897,918,
+891,871,899,990,984,905,903,928,944,947,934,926,920,911,908,887,878,874,864,852,
+836,825,812,791,780,787,752,740,728,741,800,969,1197,1386,1370,1325,1314,1127,1002,1122,
+1242,1214,1238,1008,760,555,377,217,78,-20,-80,-103,-103,-99,-94,-89,-89,-83,-85,-108,
+-163,-208,-259,-316,-369,-420,-476,-547,-613,-669,-693,-722,-774,-827,-856,-882,-918,-945,-976,-1004,
+-1027,-1049,-1084,-1134,-1186,-1235,-1274,-1308,-1350,-1394,-1444,-1501,-1550,-1589,-1622,-1652,-1684,-1719,-1762,-1821,
+-1865,-1905,-1940,-1976,-2002,-2030,-2069,-2114,-2155,-2194,-2234,-2268,-2302,-2336,-2370,-2405,-2444,-2487,-2533,-2578,
+-2622,-2668,-2716,-2766,-2808,-2843,-2886,-2930,-2980,-3036,-3082,-3121,-3154,-3181,-3208,-3243,-3281,-3318,-3361,-3404,
+-3446,-3486,-3514,-3540,-3563,-3597,-3630,-3664,-3695,-3729,-3770,-3805,-3848,-3888,-3930,-3983,-4030,-4067,-4104,-4128,
+-4155,-4187,-4202,-4241,-4275,-4302,-4332,-4370,-4402,-4433,-4458,-4485,-4507,-4527,-4552,-4563,-4573,-4590,-4610,-4637,
+-4664,-4682,-4693,-4704,-4705,-4709,-4721,-4729,-4733,-4740,-4742,-4736,-4733,-4735,-4731,-4714,-4723,-4723,-4698,-4627,
+-4660,-4653,-4639,-4620,-4604,-4578,-4553,-4536,-4515,-4487,-4454,-4425,-4378,-4352,-4312,-4282,-4245,-4216,-4171,-4123,
+-4079,-4032,-3980,-3930,-3882,-3835,-3792,-3746,-3698,-3652,-3607,-3562,-3513,-3466,-3415,-3369,-3322,-3274,-3221,-3174,
+-3138,-3101,-3067,-3029,-2973,-2945,-2927,-2772,-2669,-2560,-2515,-2472,-2427,-2338,-2215,-2072,-1977,-1851,-1795,-1761,
+-1607,-1559,-1526,-1450,-1408,-1358,-1316,-1259,-1224,-1191,-1201,-1161,-1137,-1152,-1192,-1199,-1221,-1293,-1354,-1377,
+-1409,-1435,-1474,-1554,-1670,-1762,-1841,-1889,-1977,-2090,-2241,-2327,-2380,-2423,-2439,-2425,-2404,-2368,-2345,-2345,
+-2350,-2345,-2288,-2160,-1866,-1676,-1574,-1528,-1517,-1528,-1543,-1534,-1518,-1491,-1467,-1465,-1466,-1451,-1419,-1367,
+-1332,-1319,-1324,-1339,-1353,-1341,-1284,-1253,-1338,-1556,-1796,-1964,-2038,-2041,-2012,-2016,-1987,-2040,-2020,-2009,
+-1940,-1808,-1779,-1799,-1807,-1825,-1858,-1887,-1932,-1997,-2099,-2207,-2284,-2270,-2151,-2099,-2090,-2150,-2146,-2159,
+-2226,-2281,-2340,-2408,-2515,-2707,-2945,-3082,-3176,-3307,-3416,-3392,-3532,-3622,-3718,-3796,-3825,-3839,-3873,-3906,
+-4005,-4138,-4269,-4362,-4215,-4035,-3989,-4079,-4271,-4552,-4736,-4886,-5008,-5064,-5066,-5056,-5069,-5072,-5072,-5078,
+-5072,-5060,-5052,-5040,-5037,-5050,-5067,-5090,-5112,-5125,-5136,-5146,-5152,-5164,-5163,-5154,-5158,-5156,-5147,-5134,
+-5127,-5121,-5109,-5102,-5089,-5082,-5070,-5060,-5043,-5013,-4999,-4980,-4971,-4962,-4948,-4926,-4900,-4873,-4827,-4788,
+-4735,-4685,-4634,-4595,-4547,-4506,-4480,-4453,-4409,-4373,-4338,-4298,-4267,-4224,-4194,-4161,-4113,-4064,-4011,-3971,
+-3911,-3857,-3798,-3735,-3671,-3615,-3548,-3472,-3413,-3365,-3334,-3281,-3232,-3162,-3084,-3011,-2930,-2848,-2761,-2681,
+-2586,-2525,-2443,-2355,-2276,-2190,-2091,-2020,-1934,-1843,-1789,-1664,-1579,-1533,-1483,-1445,-1411,-1384,-1348,-1282,
+-1260,-1217,-1182,-1135,-1086,-1046,-1015,-963,-928,-900,-866,-824,-771,-718,-679,-631,-570,-525,-484,-428,
+-368,-300,-258,-210,-146,-97,-39,41,95,145,225,307,380,463,529,603,682,760,835,916,
+995,1070,1138,1194,1267,1321,1381,1435,1483,1527,1563,1609,1655,1683,1702,1731,1732,1733,1738,1730,
+1739,1756,1770,1780,1798,1824,1835,1858,1883,1914,1943,1978,2018,2042,2069,2099,2121,2150,2187,2222,
+2253,2281,2309,2335,2354,2366,2377,2388,2392,2392,2389,2382,2383,2387,2391,2402,2420,2442,2464,2489,
+2530,2617,2750,2892,3067,3207,3240,3290,3388,3496,3568,3612,3598,3537,3536,3559,3566,3568,3578,3588,
+3611,3641,3668,3689,3688,3684,3675,3662,3622,3561,3493,3428,3369,3315,3276,3256,3245,3223,3192,3162,
+3133,3100,3057,3014,2975,2941,2905,2869,2827,2780,2730,2692,2668,2663,2654,2646,2646,2644,2635,2619,
+2603,2590,2602,2643,2701,2755,2810,2842,2871,2886,2900,2933,2966,3003,3064,3074,3141,3112,3111,3121,
+3140,3154,3163,3186,3232,3254,3262,3246,3249,3213,3167,3155,3145,3138,3137,3141,3130,3102,3055,3007,
+2960,2915,2870,2823,2797,2793,2790,2809,2841,2879,2909,2918,2898,2857,2802,2769,2734,2694,2647,2633,
+2603,2579,2528,2476,2433,2379,2344,2323,2277,2228,2212,2213,2232,2267,2290,2311,2340,2396,2473,2596,
+2749,2828,2821,2819,2871,2895,2856,2906,2999,3024,2862,2559,2299,2107,1942,1823,1722,1652,1605,1586,
+1577,1558,1512,1443,1372,1333,1325,1323,1319,1323,1340,1347,1353,1378,1437,1529,1621,1667,1654,1625,
+1589,1531,1443,1377,1322,1287,1259,1227,1191,1157,1133,1115,1091,1070,1064,1070,1063,1042,1021,1006,
+1008,996,978,960,940,943,930,952,966,960,945,930,912,909,919,953,906,832,790,762,
+788,797,711,638,536,476,457,424,433,394,382,414,487,503,520,580,700,702,663,630,
+609,578,484,434,381,274,160,86,12,-63,-152,-282,-371,-478,-599,-682,-750,-862,-964,-1103,
+-1247,-1397,-1576,-1770,-1954,-2121,-2265,-2364,-2460,-2571,-2686,-2775,-2861,-2952,-3041,-3114,-3167,-3210,-3255,-3302,
+-3351,-3388,-3412,-3437,-3464,-3480,-3492,-3495,-3492,-3492,-3491,-3494,-3494,-3494,-3495,-3504,-3521,-3541,-3567,-3574,
+-3550,-3496,-3433,-3380,-3333,-3259,-3206,-3175,-3188,-3207,-3193,-3225,-3290,-3353,-3582,-3828,-3974,-4053,-4117,-4173,
+-4208,-4151,-4057,-4169,-4536,-4661,-4651,-4611,-4588,-4583,-4621,-4696,-4829,-4979,-5122,-5243,-5339,-5381,-5411,-5424,
+-5421,-5415,-5451,-5512,-5586,-5631,-5594,-5535,-5494,-5476,-5463,-5454,-5452,-5432,-5426,-5438,-5488,-5518,-5586,-5654,
+-5728,-5753,-5761,-5837,-5890,-5934,-5975,-6014,-6036,-6028,-6022,-6060,-6074,-6066,-6058,-6064,-6046,-6029,-6030,-6053,
+-6095,-6127,-6118,-6102,-6066,-6031,-6049,-6073,-6109,-6151,-6167,-6167,-6174,-6190,-6220,-6236,-6254,-6251,-6228,-6288,
+-6311,-6317,-6311,-6308,-6310,-6294,-6270,-6238,-6211,-6180,-6131,-6088,-6005,-5952,-5946,-5936,-5885,-5860,-5887,-5898,
+-5881,-5959,-6010,-6044,-6023,-6028,-5956,-5891,-5824,-5771,-5722,-5681,-5663,-5658,-5633,-5622,-5609,-5591,-5566,-5549,
+-5528,-5500,-5450,-5355,-5239,-5135,-5094,-5064,-5011,-4882,-4826,-5039,-5276,-5331,-5166,-4987,-4946,-4874,-4804,-4710,
+-4562,-4386,-4284,-4290,-4242,-4139,-4158,-4148,-4160,-4129,-4083,-4042,-3953,-3904,-3907,-3843,-3793,-3721,-3721,-3663,
+-3650,-3586,-3527,-3505,-3478,-3447,-3396,-3296,-3230,-3158,-3153,-3052,-2851,-2895,-2940,-2972,-2952,-2911,-2887,-2839,
+-2762,-2669,-2563,-2483,-2421,-2336,-2335,-2287,-2221,-2134,-2056,-1978,-1881,-1791,-1701,-1603,-1515,-1425,-1315,-1222,
+-1151,-1079,-997,-892,-770,-667,-573,-479,-388,-298,-228,-141,-57,26,119,224,351,465,575,676,
+778,891,995,1109,1220,1311,1369,1417,1476,1561,1642,1707,1749,1760,1770,1806,1865,1945,2037,2115,
+2193,2401,2497,2416,2388,2468,2493,2447,2465,2624,2728,2777,2815,2876,2937,2980,3017,3055,3110,3154,
+3201,3244,3285,3330,3371,3425,3455,3511,3525,3586,3552,3551,3562,3565,3565,3591,3602,3625,3647,3671,
+3696,3718,3739,3769,3797,3824,3850,3867,3897,3924,3955,3983,4005,4023,4039,4060,4080,4106,4133,4164,
+4214,4286,4376,4417,4465,4509,4547,4580,4619,4644,4687,4729,4763,4772,4829,4807,4822,4831,4833,4832,
+4831,4817,4832,4871,4913,4881,4860,4830,4782,4742,4667,4573,4506,4370,4165,3949,3710,3407,3067,2905,
+2850,2833,2886,3070,3317,3509,3583,3668,3718,3739,3734,3719,3713,3689,3645,3599,3559,3508,3452,3408,
+3370,3348,3370,3274,3210,3176,3170,3204,3189,3035,2914,2837,2808,2833,2831,2734,2611,2527,2468,2423,
+2400,2420,2436,2290,2196,2154,2120,2118,2142,2072,1957,1916,2116,2259,2103,1941,1840,1856,1791,1657,
+1596,1582,1635,1665,1515,1448,1458,1494,1447,1369,1300,1262,1229,1187,1149,1125,1084,1044,1008,981,
+970,955,924,883,857,832,822,814,797,781,768,754,722,670,631,613,597,571,544,520,
+508,457,432,421,415,398,373,334,305,271,299,402,458,468,475,459,392,369,383,437,
+485,477,446,458,475,443,434,398,386,368,350,329,244,229,233,211,173,172,177,178,
+190,186,168,172,144,150,157,169,178,206,216,237,262,285,305,327,348,379,425,461,
+493,523,544,566,589,617,640,664,690,714,728,742,767,792,820,844,846,861,914,912,
+872,855,888,1002,951,911,925,955,977,982,975,954,939,930,927,925,914,907,897,891,
+880,865,852,838,820,807,805,771,760,750,757,806,922,1002,1000,999,1034,1035,925,831,
+923,1163,1490,1581,1494,1197,945,744,554,348,165,25,-73,-130,-159,-174,-164,-140,-127,-130,
+-147,-174,-211,-255,-303,-358,-412,-467,-514,-564,-603,-642,-679,-736,-786,-825,-856,-880,-913,-946,
+-977,-1004,-1036,-1072,-1127,-1180,-1225,-1266,-1305,-1343,-1390,-1437,-1479,-1521,-1562,-1605,-1643,-1688,-1727,-1765,
+-1803,-1843,-1884,-1916,-1951,-1984,-2020,-2055,-2095,-2140,-2180,-2221,-2258,-2293,-2325,-2357,-2387,-2422,-2461,-2511,
+-2562,-2606,-2655,-2704,-2753,-2794,-2834,-2873,-2915,-2960,-3013,-3063,-3099,-3131,-3169,-3204,-3239,-3281,-3317,-3353,
+-3393,-3432,-3469,-3504,-3542,-3574,-3610,-3648,-3676,-3700,-3730,-3775,-3801,-3842,-3896,-3936,-3983,-4033,-4067,-4098,
+-4127,-4160,-4201,-4225,-4261,-4300,-4317,-4336,-4366,-4397,-4425,-4454,-4478,-4503,-4523,-4539,-4554,-4572,-4583,-4613,
+-4639,-4658,-4691,-4700,-4707,-4714,-4717,-4720,-4730,-4732,-4746,-4751,-4753,-4748,-4733,-4724,-4726,-4729,-4727,-4707,
+-4682,-4667,-4650,-4636,-4618,-4606,-4585,-4558,-4530,-4502,-4474,-4445,-4418,-4381,-4351,-4308,-4279,-4244,-4210,-4168,
+-4124,-4080,-4039,-3988,-3942,-3897,-3844,-3790,-3742,-3693,-3645,-3601,-3552,-3501,-3456,-3410,-3364,-3308,-3264,-3212,
+-3168,-3130,-3089,-3064,-3018,-2975,-2947,-2928,-2911,-2697,-2587,-2554,-2501,-2441,-2344,-2159,-2054,-2024,-1867,-1805,
+-1729,-1595,-1520,-1494,-1410,-1396,-1358,-1291,-1242,-1200,-1178,-1146,-1133,-1101,-1139,-1154,-1149,-1154,-1108,-1196,
+-1306,-1339,-1367,-1403,-1474,-1588,-1684,-1754,-1791,-1868,-1985,-2108,-2213,-2279,-2327,-2344,-2328,-2315,-2295,-2278,
+-2273,-2271,-2246,-2194,-2092,-1808,-1599,-1492,-1441,-1431,-1432,-1448,-1463,-1469,-1464,-1449,-1431,-1434,-1417,-1373,
+-1318,-1274,-1259,-1263,-1281,-1287,-1253,-1203,-1192,-1307,-1567,-1807,-1939,-1995,-2025,-2057,-2075,-2068,-2044,-2035,
+-2039,-2008,-1910,-1811,-1836,-1905,-1902,-1981,-2075,-2156,-2194,-2176,-2252,-2316,-2334,-2267,-2179,-2091,-2071,-2070,
+-2085,-2179,-2271,-2354,-2437,-2525,-2610,-2764,-3003,-3209,-3341,-3429,-3495,-3540,-3603,-3695,-3738,-3887,-3951,-4012,
+-4075,-4137,-4150,-4157,-4283,-4345,-4158,-3993,-4016,-4191,-4387,-4534,-4799,-4940,-5023,-5058,-5058,-5067,-5075,-5075,
+-5083,-5092,-5086,-5058,-5046,-5043,-5052,-5067,-5089,-5105,-5112,-5131,-5141,-5154,-5153,-5154,-5145,-5137,-5134,-5116,
+-5100,-5085,-5085,-5078,-5063,-5069,-5060,-5060,-5050,-5029,-5007,-4981,-4964,-4955,-4940,-4916,-4895,-4873,-4838,-4794,
+-4744,-4694,-4643,-4592,-4541,-4492,-4450,-4416,-4396,-4385,-4377,-4356,-4301,-4265,-4232,-4208,-4164,-4117,-4082,-4034,
+-3987,-3929,-3881,-3838,-3768,-3690,-3634,-3562,-3491,-3425,-3367,-3312,-3264,-3222,-3168,-3120,-3065,-2988,-2907,-2807,
+-2700,-2648,-2564,-2483,-2391,-2331,-2222,-2135,-2054,-1956,-1862,-1791,-1757,-1649,-1601,-1544,-1488,-1449,-1407,-1398,
+-1350,-1314,-1264,-1239,-1184,-1136,-1100,-1076,-1045,-1000,-939,-868,-847,-800,-761,-705,-663,-622,-576,-518,
+-462,-414,-378,-311,-252,-201,-147,-70,-14,44,112,198,264,335,410,480,562,647,719,815,
+896,980,1044,1112,1175,1251,1319,1385,1445,1498,1547,1577,1623,1665,1697,1718,1741,1748,1747,1746,
+1746,1743,1752,1769,1784,1811,1834,1857,1880,1906,1936,1968,1995,2025,2064,2092,2120,2140,2168,2196,
+2217,2244,2276,2304,2331,2348,2364,2378,2386,2388,2388,2384,2376,2371,2374,2379,2390,2409,2433,2460,
+2487,2534,2627,2770,2941,3096,3183,3198,3245,3343,3466,3546,3551,3540,3536,3554,3564,3570,3567,3569,
+3572,3595,3618,3635,3650,3652,3653,3637,3628,3592,3526,3455,3387,3324,3281,3252,3239,3224,3201,3171,
+3144,3119,3086,3043,2998,2962,2933,2904,2872,2835,2791,2744,2706,2693,2699,2692,2690,2690,2695,2686,
+2669,2652,2642,2646,2674,2719,2781,2853,2885,2899,2907,2921,2952,3002,3010,3074,3040,3092,3112,3125,
+3134,3136,3145,3158,3186,3219,3242,3255,3220,3203,3186,3147,3124,3100,3079,3073,3077,3058,3017,2974,
+2935,2907,2877,2824,2761,2721,2710,2718,2742,2773,2814,2848,2871,2870,2835,2781,2746,2722,2693,2624,
+2552,2547,2543,2498,2443,2389,2362,2312,2302,2270,2207,2183,2178,2189,2220,2248,2259,2280,2336,2407,
+2518,2674,2821,2840,2826,2851,2894,2888,2893,2986,3026,2776,2472,2242,2032,1852,1735,1648,1580,1531,
+1508,1509,1501,1471,1414,1359,1332,1328,1319,1308,1311,1330,1342,1344,1369,1423,1501,1580,1622,1603,
+1560,1526,1478,1410,1337,1278,1242,1231,1206,1179,1140,1110,1083,1063,1041,1033,1034,1017,998,980,
+972,968,961,950,941,935,944,931,934,943,935,920,904,889,886,889,897,845,787,765,
+772,800,816,722,640,556,458,438,417,396,384,346,383,463,469,479,490,665,703,650,
+610,580,545,477,413,310,204,132,60,-31,-115,-191,-303,-400,-539,-653,-739,-822,-925,-1039,
+-1183,-1301,-1462,-1646,-1820,-1985,-2149,-2300,-2396,-2486,-2590,-2701,-2788,-2870,-2956,-3048,-3123,-3176,-3214,-3259,
+-3312,-3360,-3401,-3428,-3458,-3482,-3496,-3513,-3516,-3519,-3525,-3534,-3536,-3534,-3535,-3536,-3546,-3556,-3564,-3570,
+-3563,-3540,-3502,-3448,-3405,-3344,-3256,-3187,-3167,-3223,-3269,-3277,-3330,-3391,-3473,-3707,-3918,-4045,-4119,-4181,
+-4241,-4260,-4139,-4102,-4433,-4703,-4741,-4712,-4688,-4672,-4688,-4734,-4837,-4984,-5133,-5276,-5388,-5451,-5482,-5503,
+-5496,-5495,-5498,-5537,-5593,-5668,-5719,-5724,-5662,-5597,-5544,-5522,-5499,-5483,-5477,-5502,-5542,-5585,-5630,-5666,
+-5701,-5753,-5781,-5842,-5921,-5955,-5990,-6024,-6052,-6103,-6143,-6145,-6156,-6141,-6149,-6164,-6175,-6176,-6165,-6165,
+-6186,-6201,-6197,-6183,-6170,-6173,-6190,-6204,-6228,-6254,-6300,-6329,-6313,-6309,-6320,-6324,-6337,-6367,-6363,-6352,
+-6376,-6377,-6368,-6351,-6343,-6352,-6365,-6354,-6318,-6277,-6246,-6201,-6129,-6056,-6008,-5998,-5979,-5947,-5923,-5908,
+-5985,-6017,-6061,-6097,-6111,-6101,-6099,-5999,-5906,-5819,-5747,-5703,-5683,-5677,-5680,-5643,-5616,-5619,-5596,-5568,
+-5545,-5521,-5495,-5440,-5348,-5230,-5147,-5101,-5095,-5043,-4946,-4842,-4944,-5266,-5347,-5239,-5038,-4916,-4846,-4787,
+-4700,-4520,-4283,-4229,-4230,-4184,-4104,-4141,-4149,-4138,-4119,-4073,-4007,-3954,-3897,-3859,-3829,-3736,-3718,-3683,
+-3619,-3623,-3559,-3506,-3464,-3432,-3407,-3349,-3272,-3207,-3160,-3080,-3039,-2959,-2864,-2873,-2891,-2916,-2907,-2864,
+-2809,-2745,-2642,-2544,-2465,-2411,-2369,-2295,-2254,-2190,-2109,-2035,-1960,-1870,-1775,-1669,-1557,-1465,-1373,-1248,
+-1149,-1074,-998,-923,-821,-727,-617,-527,-435,-343,-261,-188,-103,-11,76,180,304,432,541,638,
+736,853,964,1077,1178,1273,1348,1412,1457,1523,1597,1676,1735,1768,1770,1769,1799,1859,1953,2043,
+2082,2202,2525,2605,2581,2475,2486,2552,2514,2515,2664,2771,2829,2885,2932,2988,3027,3051,3111,3182,
+3221,3247,3286,3331,3370,3415,3468,3500,3525,3537,3565,3573,3577,3590,3591,3592,3621,3637,3662,3683,
+3702,3719,3745,3771,3788,3811,3835,3859,3883,3904,3929,3954,3983,4004,4025,4040,4066,4092,4121,4147,
+4171,4236,4357,4395,4447,4489,4527,4571,4598,4630,4666,4718,4747,4774,4791,4818,4810,4832,4828,4835,
+4837,4830,4817,4815,4837,4891,4892,4878,4883,4842,4798,4728,4695,4612,4504,4387,4243,3998,3705,3375,
+3148,3042,2946,2869,2988,3200,3387,3559,3678,3725,3718,3710,3710,3707,3671,3631,3599,3615,3497,3419,
+3382,3359,3338,3323,3287,3242,3214,3210,3304,3360,3112,2962,2891,2894,3029,3157,2957,2715,2568,2500,
+2472,2473,2453,2445,2446,2371,2337,2297,2259,2380,2287,2058,1922,1927,2009,2162,2130,1940,1904,1864,
+1701,1632,1609,1639,1599,1523,1511,1658,1645,1722,1547,1398,1330,1288,1237,1189,1154,1134,1113,1090,
+1079,1112,1180,1065,961,915,894,886,878,864,852,839,809,765,726,682,682,663,631,597,
+567,543,516,502,486,458,425,389,377,391,360,504,494,579,544,516,484,419,406,428,
+482,570,633,558,538,531,484,444,423,433,430,418,366,314,278,277,280,266,272,267,
+223,228,231,211,177,173,162,170,177,193,228,252,270,288,309,332,353,378,411,444,
+480,512,540,567,588,607,627,662,683,701,711,715,724,760,806,812,827,856,881,963,
+918,885,909,957,922,911,939,969,989,996,989,970,947,939,945,951,955,933,919,911,
+901,898,890,876,863,858,836,820,799,786,769,766,783,813,813,800,793,811,823,764,
+682,749,962,1228,1498,1547,1483,1462,1383,1252,1076,811,449,163,-28,-127,-172,-178,-173,-156,
+-159,-166,-183,-204,-239,-283,-334,-384,-435,-479,-531,-581,-629,-673,-720,-764,-802,-839,-872,-911,
+-941,-974,-1007,-1042,-1087,-1143,-1196,-1226,-1267,-1306,-1335,-1375,-1416,-1450,-1489,-1533,-1578,-1623,-1663,-1704,
+-1748,-1789,-1829,-1865,-1895,-1929,-1961,-1999,-2034,-2075,-2121,-2164,-2209,-2248,-2281,-2310,-2338,-2366,-2404,-2441,
+-2491,-2537,-2585,-2634,-2682,-2729,-2775,-2820,-2855,-2897,-2946,-2999,-3051,-3091,-3125,-3171,-3204,-3239,-3280,-3314,
+-3347,-3383,-3421,-3459,-3499,-3540,-3572,-3607,-3646,-3676,-3703,-3730,-3760,-3800,-3851,-3909,-3949,-3989,-4032,-4065,
+-4093,-4127,-4158,-4197,-4227,-4239,-4276,-4305,-4332,-4357,-4389,-4413,-4443,-4472,-4500,-4522,-4533,-4552,-4572,-4593,
+-4613,-4640,-4663,-4685,-4700,-4713,-4735,-4743,-4737,-4751,-4764,-4765,-4761,-4754,-4753,-4742,-4729,-4729,-4732,-4732,
+-4722,-4703,-4680,-4661,-4644,-4634,-4622,-4598,-4569,-4533,-4503,-4472,-4430,-4410,-4379,-4350,-4304,-4278,-4241,-4210,
+-4164,-4126,-4078,-4042,-3987,-3931,-3882,-3841,-3788,-3739,-3688,-3641,-3590,-3540,-3489,-3447,-3398,-3352,-3301,-3252,
+-3210,-3176,-3123,-3086,-3047,-2995,-2971,-2956,-2958,-2996,-3000,-2714,-2586,-2543,-2463,-2350,-2169,-2013,-1951,-1916,
+-1844,-1709,-1616,-1560,-1454,-1415,-1384,-1330,-1279,-1234,-1156,-1136,-1131,-1103,-1057,-1052,-1057,-1002,-1032,-989,
+-1055,-1173,-1246,-1290,-1310,-1367,-1489,-1589,-1654,-1684,-1758,-1873,-1997,-2102,-2185,-2235,-2256,-2242,-2219,-2199,
+-2194,-2190,-2175,-2149,-2115,-2044,-1790,-1553,-1444,-1388,-1379,-1376,-1383,-1391,-1403,-1423,-1428,-1401,-1381,-1368,
+-1317,-1257,-1218,-1197,-1208,-1232,-1221,-1183,-1142,-1175,-1332,-1588,-1804,-1885,-1954,-2010,-2019,-2020,-2014,-2023,
+-2043,-2058,-2066,-2042,-2021,-2050,-2082,-2112,-2165,-2218,-2260,-2295,-2323,-2349,-2386,-2389,-2349,-2192,-2109,-2073,
+-2081,-2063,-2125,-2221,-2340,-2422,-2474,-2544,-2614,-2723,-2880,-3050,-3210,-3278,-3371,-3492,-3638,-3791,-3904,-3995,
+-4094,-4091,-4061,-4110,-4208,-4493,-4562,-4426,-4172,-4093,-4255,-4314,-4483,-4697,-4785,-4933,-4944,-4967,-5045,-5074,
+-5083,-5087,-5099,-5115,-5092,-5057,-5039,-5048,-5068,-5084,-5110,-5130,-5145,-5159,-5170,-5166,-5156,-5140,-5126,-5116,
+-5100,-5082,-5067,-5066,-5057,-5052,-5052,-5045,-5045,-5046,-5024,-4994,-4971,-4952,-4936,-4918,-4896,-4871,-4841,-4798,
+-4746,-4693,-4643,-4588,-4537,-4486,-4443,-4414,-4402,-4401,-4385,-4360,-4352,-4343,-4306,-4263,-4225,-4186,-4136,-4089,
+-4047,-3995,-3940,-3893,-3837,-3780,-3722,-3669,-3599,-3528,-3467,-3401,-3341,-3285,-3230,-3148,-3086,-3025,-2977,-2912,
+-2842,-2756,-2671,-2583,-2519,-2438,-2351,-2270,-2189,-2098,-2022,-1914,-1820,-1794,-1704,-1641,-1592,-1559,-1520,-1475,
+-1438,-1395,-1367,-1330,-1305,-1271,-1202,-1149,-1125,-1085,-1043,-1013,-958,-915,-857,-813,-756,-718,-670,-628,
+-574,-517,-473,-425,-353,-300,-242,-196,-121,-55,8,86,165,229,283,361,445,525,602,676,
+765,850,944,1001,1086,1175,1237,1310,1377,1444,1495,1555,1605,1654,1688,1711,1738,1753,1763,1764,
+1760,1757,1763,1760,1777,1791,1815,1841,1862,1893,1934,1973,2000,2024,2039,2063,2084,2116,2155,2198,
+2229,2255,2270,2293,2318,2343,2359,2371,2384,2392,2396,2396,2388,2381,2375,2378,2383,2391,2411,2436,
+2467,2496,2541,2635,2773,2949,3095,3159,3158,3201,3296,3427,3503,3517,3534,3542,3545,3549,3551,3538,
+3530,3530,3557,3597,3620,3618,3605,3595,3583,3595,3537,3456,3394,3336,3292,3262,3241,3223,3201,3170,
+3142,3120,3096,3060,3012,2966,2934,2906,2882,2858,2830,2796,2763,2740,2728,2727,2725,2725,2731,2737,
+2724,2704,2690,2682,2682,2704,2741,2811,2889,2926,2926,2920,2923,2961,3008,3015,3040,3033,3074,3111,
+3140,3134,3133,3146,3165,3191,3217,3232,3235,3208,3180,3152,3121,3091,3043,3008,2999,2997,2983,2945,
+2903,2865,2839,2808,2754,2695,2652,2631,2642,2669,2699,2738,2776,2819,2828,2800,2764,2731,2708,2675,
+2622,2530,2500,2502,2464,2408,2351,2309,2279,2268,2240,2187,2146,2139,2147,2172,2201,2219,2244,2286,
+2353,2436,2583,2779,2842,2874,2932,2928,2908,2841,2870,2859,2662,2402,2176,1949,1770,1660,1578,1518,
+1472,1443,1435,1428,1412,1384,1351,1337,1336,1322,1300,1300,1323,1353,1361,1390,1432,1491,1540,1563,
+1540,1494,1450,1421,1384,1318,1270,1218,1198,1191,1169,1132,1096,1068,1051,1031,1013,987,964,950,
+946,941,935,937,953,960,977,981,948,931,922,909,886,865,858,857,870,864,815,774,
+761,788,809,782,711,615,536,450,417,412,388,375,316,336,415,441,440,421,506,617,
+668,590,546,510,460,405,295,188,106,24,-71,-153,-229,-330,-437,-563,-688,-791,-880,-978,
+-1101,-1245,-1361,-1510,-1692,-1863,-2022,-2175,-2313,-2409,-2502,-2602,-2710,-2797,-2875,-2959,-3047,-3124,-3175,-3211,
+-3256,-3313,-3363,-3405,-3440,-3470,-3492,-3509,-3525,-3528,-3541,-3547,-3558,-3569,-3572,-3577,-3582,-3586,-3586,-3585,
+-3571,-3553,-3538,-3516,-3479,-3413,-3341,-3253,-3191,-3181,-3267,-3343,-3385,-3430,-3461,-3570,-3820,-3996,-4112,-4184,
+-4258,-4306,-4318,-4362,-4506,-4740,-4814,-4805,-4775,-4755,-4754,-4788,-4855,-4961,-5102,-5247,-5375,-5462,-5509,-5529,
+-5529,-5536,-5539,-5544,-5592,-5664,-5722,-5767,-5797,-5825,-5823,-5787,-5732,-5640,-5552,-5536,-5566,-5624,-5686,-5745,
+-5775,-5809,-5834,-5882,-5989,-6037,-6045,-6052,-6073,-6109,-6206,-6254,-6243,-6214,-6232,-6254,-6280,-6298,-6310,-6312,
+-6317,-6324,-6324,-6325,-6330,-6329,-6314,-6311,-6320,-6348,-6375,-6390,-6424,-6435,-6406,-6408,-6420,-6454,-6469,-6454,
+-6441,-6440,-6432,-6408,-6391,-6385,-6405,-6430,-6437,-6403,-6357,-6312,-6262,-6188,-6125,-6044,-6008,-6028,-6005,-5996,
+-6036,-6054,-6110,-6140,-6167,-6163,-6148,-6124,-6042,-5937,-5827,-5747,-5712,-5713,-5731,-5691,-5654,-5625,-5622,-5598,
+-5562,-5536,-5513,-5479,-5419,-5350,-5247,-5174,-5125,-5134,-5075,-4962,-4897,-4990,-5244,-5356,-5259,-5013,-4864,-4801,
+-4760,-4682,-4489,-4267,-4171,-4199,-4141,-4071,-4130,-4160,-4139,-4126,-4059,-3996,-3939,-3855,-3834,-3811,-3747,-3697,
+-3671,-3601,-3574,-3560,-3492,-3425,-3388,-3339,-3302,-3194,-3151,-3091,-3066,-3046,-3000,-2910,-2854,-2806,-2830,-2837,
+-2835,-2785,-2718,-2635,-2548,-2461,-2389,-2327,-2279,-2223,-2168,-2101,-2025,-1950,-1859,-1763,-1639,-1516,-1408,-1302,
+-1184,-1086,-1010,-942,-861,-778,-665,-571,-487,-402,-307,-224,-138,-38,51,148,254,371,489,593,
+702,810,917,1039,1142,1231,1313,1396,1475,1528,1581,1662,1730,1795,1844,1860,1852,1838,1877,1974,
+2032,2079,2197,2529,2716,2783,2584,2520,2585,2562,2567,2697,2807,2877,2933,2987,3028,3060,3116,3173,
+3214,3249,3282,3326,3367,3421,3457,3486,3524,3549,3549,3557,3584,3602,3623,3626,3618,3648,3674,3695,
+3715,3731,3747,3767,3792,3811,3827,3851,3877,3900,3915,3936,3966,3985,4009,4035,4060,4086,4116,4142,
+4170,4206,4260,4354,4413,4465,4513,4547,4581,4599,4627,4671,4728,4783,4791,4811,4840,4845,4858,4843,
+4841,4838,4827,4817,4822,4842,4885,4950,4906,4906,4862,4847,4827,4760,4675,4618,4486,4380,4200,3984,
+3737,3513,3254,3063,2911,2923,3107,3341,3564,3733,3796,3705,3694,3701,3698,3682,3642,3626,3693,3486,
+3401,3368,3350,3337,3319,3295,3271,3240,3224,3210,3180,3070,2972,2909,2909,3028,3148,3133,2819,2611,
+2545,2573,2687,2665,2555,2652,2682,2493,2351,2307,2396,2371,2099,1945,1882,1866,1878,1876,1851,1845,
+1836,1783,1714,1658,1635,1618,1569,1542,1591,1635,1747,1604,1452,1396,1354,1285,1230,1209,1200,1188,
+1168,1145,1184,1284,1140,1033,979,954,946,930,913,896,881,854,815,772,756,706,692,679,
+657,627,603,581,563,533,496,461,436,455,484,448,469,465,515,536,553,477,426,438,
+487,552,625,624,588,569,633,571,474,411,418,453,445,399,353,344,292,259,252,264,
+249,237,241,245,231,206,193,187,194,202,223,273,396,322,307,327,357,389,416,441,
+474,511,539,568,589,602,615,631,659,681,708,712,740,776,793,810,835,857,884,932,
+923,891,961,918,902,916,941,961,974,979,979,971,964,964,950,940,937,936,926,921,
+911,907,906,904,895,881,864,850,833,818,803,779,763,748,735,718,698,680,672,668,
+644,616,649,769,941,1255,1417,1490,1528,1609,1588,1502,1327,947,559,276,45,-101,-172,-198,
+-213,-212,-218,-222,-241,-269,-306,-351,-392,-437,-480,-529,-576,-622,-672,-716,-751,-790,-833,-874,
+-913,-943,-982,-1020,-1044,-1075,-1116,-1151,-1191,-1228,-1263,-1300,-1338,-1374,-1413,-1461,-1512,-1557,-1602,-1648,
+-1692,-1736,-1775,-1810,-1838,-1868,-1901,-1936,-1979,-2015,-2061,-2107,-2153,-2199,-2235,-2269,-2297,-2322,-2347,-2385,
+-2431,-2473,-2520,-2563,-2611,-2661,-2707,-2754,-2802,-2842,-2881,-2927,-2977,-3034,-3073,-3120,-3165,-3206,-3244,-3279,
+-3312,-3347,-3387,-3426,-3464,-3502,-3538,-3571,-3602,-3636,-3667,-3697,-3723,-3756,-3763,-3834,-3887,-3944,-3983,-4020,
+-4056,-4094,-4124,-4144,-4173,-4208,-4224,-4252,-4295,-4330,-4357,-4382,-4412,-4440,-4472,-4504,-4531,-4548,-4566,-4586,
+-4605,-4612,-4639,-4662,-4678,-4692,-4706,-4725,-4736,-4703,-4750,-4764,-4760,-4754,-4749,-4748,-4737,-4729,-4727,-4722,
+-4716,-4727,-4717,-4692,-4671,-4652,-4641,-4632,-4614,-4581,-4541,-4503,-4475,-4447,-4413,-4375,-4344,-4299,-4270,-4239,
+-4201,-4161,-4122,-4076,-4030,-3980,-3931,-3885,-3833,-3785,-3732,-3686,-3636,-3585,-3542,-3488,-3442,-3390,-3332,-3289,
+-3239,-3196,-3161,-3118,-3085,-3040,-2991,-2945,-2950,-2980,-3047,-3140,-3012,-2639,-2556,-2457,-2295,-2139,-2014,-1906,
+-1833,-1805,-1717,-1650,-1555,-1470,-1408,-1340,-1281,-1259,-1235,-1182,-1112,-1080,-1062,-1016,-975,-965,-955,-912,
+-904,-936,-996,-1079,-1170,-1234,-1309,-1393,-1489,-1549,-1586,-1651,-1767,-1893,-2007,-2094,-2150,-2177,-2164,-2135,
+-2108,-2102,-2092,-2074,-2054,-2031,-1987,-1765,-1523,-1411,-1364,-1351,-1346,-1343,-1339,-1341,-1352,-1371,-1364,-1338,
+-1307,-1255,-1202,-1179,-1165,-1173,-1182,-1161,-1124,-1109,-1223,-1414,-1659,-1763,-1843,-1942,-1936,-1909,-1913,-1931,
+-1962,-2004,-2025,-2031,-2036,-2045,-2057,-2071,-2104,-2144,-2186,-2220,-2239,-2269,-2305,-2342,-2370,-2399,-2375,-2283,
+-2166,-2073,-2057,-2075,-2150,-2261,-2351,-2394,-2381,-2449,-2533,-2604,-2667,-2756,-2808,-2994,-3180,-3399,-3682,-3892,
+-4036,-4095,-4018,-3929,-4019,-4312,-4588,-4727,-4702,-4488,-4268,-4265,-4348,-4465,-4507,-4599,-4843,-4774,-4833,-4929,
+-5039,-5087,-5099,-5098,-5112,-5126,-5113,-5099,-5093,-5096,-5123,-5147,-5174,-5197,-5214,-5216,-5215,-5199,-5170,-5146,
+-5131,-5119,-5104,-5092,-5079,-5063,-5058,-5045,-5045,-5035,-5032,-5007,-4985,-4963,-4945,-4922,-4899,-4872,-4843,-4799,
+-4747,-4699,-4654,-4601,-4543,-4483,-4434,-4412,-4402,-4411,-4422,-4409,-4390,-4354,-4326,-4300,-4270,-4235,-4195,-4142,
+-4097,-4047,-3996,-3952,-3902,-3850,-3786,-3730,-3668,-3618,-3552,-3498,-3448,-3402,-3339,-3252,-3176,-3109,-3047,-2981,
+-2916,-2822,-2745,-2703,-2629,-2568,-2466,-2403,-2334,-2252,-2156,-2084,-1964,-1847,-1838,-1727,-1660,-1636,-1600,-1552,
+-1533,-1473,-1433,-1401,-1348,-1323,-1295,-1260,-1225,-1173,-1123,-1091,-1049,-999,-960,-919,-852,-811,-772,-727,
+-675,-611,-570,-539,-475,-405,-360,-298,-236,-172,-98,-23,55,102,193,260,340,414,500,578,
+664,753,838,919,997,1067,1159,1225,1305,1375,1438,1496,1549,1604,1656,1699,1733,1756,1757,1777,
+1786,1788,1783,1780,1777,1794,1809,1836,1853,1890,1917,1947,1980,2023,2053,2071,2082,2103,2133,2175,
+2206,2233,2260,2279,2305,2328,2353,2379,2391,2400,2408,2414,2413,2407,2395,2389,2393,2400,2406,2418,
+2443,2482,2524,2573,2655,2766,2948,3101,3146,3127,3164,3254,3365,3438,3476,3504,3513,3512,3513,3504,
+3490,3470,3467,3500,3547,3582,3575,3554,3538,3557,3531,3460,3382,3328,3289,3265,3247,3225,3195,3158,
+3123,3100,3081,3053,3010,2960,2921,2891,2866,2844,2825,2811,2791,2770,2750,2732,2727,2732,2742,2754,
+2758,2748,2729,2719,2713,2715,2732,2773,2843,2922,2970,2966,2949,2943,2965,2987,3013,3033,3045,3084,
+3132,3152,3130,3142,3160,3179,3197,3219,3227,3222,3199,3167,3127,3090,3051,2988,2941,2923,2922,2906,
+2875,2836,2800,2766,2731,2684,2629,2591,2576,2582,2609,2645,2685,2720,2764,2776,2770,2747,2721,2694,
+2662,2614,2544,2473,2462,2436,2382,2331,2279,2242,2220,2196,2159,2118,2107,2115,2127,2149,2177,2209,
+2252,2303,2366,2479,2607,2688,2743,2904,2949,2862,2803,2783,2719,2557,2333,2100,1875,1707,1595,1507,
+1461,1428,1389,1363,1357,1358,1341,1337,1344,1338,1319,1299,1298,1323,1352,1374,1407,1443,1481,1509,
+1512,1491,1439,1399,1375,1359,1314,1256,1210,1180,1171,1155,1119,1084,1060,1046,1029,992,959,927,
+918,922,924,917,920,936,982,1025,1041,1014,959,906,879,857,835,826,823,820,825,795,
+751,751,764,759,741,741,623,516,421,397,393,341,315,293,278,309,383,387,349,385,
+416,524,552,523,504,463,394,285,193,84,-12,-91,-192,-287,-374,-476,-599,-729,-843,-940,
+-1036,-1147,-1290,-1424,-1576,-1746,-1902,-2048,-2189,-2314,-2412,-2516,-2612,-2714,-2803,-2875,-2957,-3044,-3118,-3165,
+-3202,-3248,-3302,-3355,-3404,-3448,-3478,-3498,-3520,-3529,-3536,-3552,-3574,-3586,-3600,-3610,-3615,-3617,-3619,-3612,
+-3601,-3587,-3567,-3546,-3517,-3481,-3408,-3333,-3263,-3211,-3245,-3348,-3398,-3462,-3469,-3505,-3725,-3939,-4072,-4180,
+-4260,-4340,-4410,-4484,-4519,-4731,-4856,-4876,-4857,-4834,-4828,-4844,-4890,-4960,-5056,-5178,-5307,-5413,-5475,-5517,
+-5557,-5574,-5570,-5558,-5580,-5635,-5699,-5759,-5834,-5895,-5934,-5956,-5954,-5920,-5820,-5699,-5659,-5675,-5721,-5797,
+-5873,-5927,-5955,-5990,-6060,-6131,-6164,-6157,-6151,-6169,-6232,-6317,-6340,-6322,-6291,-6336,-6367,-6410,-6439,-6441,
+-6425,-6418,-6412,-6419,-6439,-6453,-6449,-6429,-6426,-6438,-6468,-6493,-6508,-6525,-6530,-6506,-6501,-6518,-6550,-6553,
+-6522,-6494,-6476,-6483,-6455,-6436,-6426,-6442,-6461,-6461,-6434,-6397,-6359,-6302,-6239,-6180,-6123,-6038,-6009,-6013,
+-6026,-6071,-6068,-6126,-6167,-6200,-6187,-6187,-6158,-6056,-5944,-5835,-5760,-5735,-5762,-5768,-5711,-5664,-5641,-5631,
+-5597,-5559,-5518,-5488,-5450,-5402,-5345,-5265,-5186,-5157,-5180,-5126,-5027,-4956,-5044,-5250,-5369,-5303,-5046,-4888,
+-4797,-4745,-4677,-4514,-4296,-4170,-4200,-4141,-4086,-4115,-4139,-4148,-4108,-4021,-3973,-3888,-3840,-3817,-3818,-3766,
+-3706,-3644,-3597,-3553,-3538,-3466,-3398,-3341,-3315,-3246,-3157,-3089,-3055,-3036,-3058,-3048,-2913,-2799,-2785,-2787,
+-2760,-2770,-2757,-2709,-2617,-2501,-2403,-2335,-2281,-2241,-2199,-2154,-2105,-2037,-1948,-1842,-1717,-1579,-1469,-1346,
+-1244,-1153,-1056,-964,-897,-819,-724,-626,-537,-448,-359,-261,-168,-71,30,129,232,333,432,535,
+641,744,839,971,1086,1202,1296,1358,1443,1515,1581,1648,1722,1787,1866,1920,1953,1945,1909,1919,
+1982,2024,2078,2225,2578,2880,2915,2695,2597,2611,2590,2636,2759,2857,2928,2981,3034,3077,3102,3172,
+3204,3251,3301,3336,3369,3389,3437,3487,3513,3562,3556,3587,3599,3601,3623,3649,3638,3650,3676,3706,
+3724,3742,3758,3773,3793,3814,3834,3852,3872,3893,3916,3934,3958,3980,4002,4025,4048,4077,4102,4126,
+4149,4176,4226,4298,4392,4431,4493,4540,4559,4591,4623,4657,4702,4760,4790,4796,4802,4842,4887,4864,
+4845,4840,4838,4833,4827,4831,4847,4895,4982,4957,4936,4903,4868,4849,4803,4733,4710,4576,4471,4323,
+4143,4014,3795,3509,3231,3057,2952,3081,3339,3639,3877,3879,3722,3711,3724,3735,3749,3745,3755,3770,
+3532,3434,3415,3404,3369,3339,3303,3283,3263,3229,3188,3130,3048,2969,2894,2860,2884,2932,2943,2756,
+2614,2589,2681,2813,2706,2592,2574,2571,2478,2295,2204,2228,2192,2079,1982,1915,1871,1841,1822,1852,
+1886,1960,1974,1897,1726,1670,1635,1596,1578,1612,1614,1631,1578,1535,1497,1414,1333,1292,1281,1276,
+1258,1232,1197,1193,1198,1153,1090,1044,1017,1000,981,954,926,903,882,851,821,787,760,746,
+734,708,675,650,631,602,568,536,497,470,500,563,571,459,450,469,465,511,511,461,
+459,512,569,568,569,563,560,595,519,443,391,352,355,428,426,382,352,312,296,303,
+275,300,318,323,308,299,270,263,252,238,236,264,342,407,359,332,350,388,421,451,
+476,508,540,571,592,601,617,641,668,679,720,801,820,796,779,880,907,892,874,889,
+892,890,948,919,916,927,940,951,953,954,965,985,980,955,940,928,928,928,923,918,
+911,911,912,916,915,906,891,870,853,834,811,785,757,741,728,721,714,700,685,664,
+643,629,629,652,659,717,873,1087,1054,1195,1524,1615,1661,1782,1478,1113,785,427,118,-96,
+-199,-234,-247,-246,-243,-244,-259,-287,-324,-372,-413,-453,-494,-535,-581,-626,-669,-715,-760,-797,
+-827,-861,-891,-927,-961,-1003,-1046,-1087,-1126,-1168,-1202,-1237,-1274,-1311,-1345,-1397,-1448,-1498,-1539,-1585,
+-1632,-1678,-1717,-1755,-1788,-1815,-1848,-1884,-1921,-1960,-2005,-2054,-2101,-2147,-2189,-2228,-2259,-2286,-2310,-2336,
+-2371,-2421,-2464,-2506,-2544,-2590,-2638,-2684,-2730,-2780,-2826,-2868,-2911,-2956,-3012,-3050,-3109,-3162,-3203,-3240,
+-3275,-3309,-3346,-3388,-3429,-3465,-3498,-3532,-3565,-3596,-3627,-3657,-3689,-3723,-3758,-3796,-3840,-3889,-3931,-3964,
+-4006,-4048,-4088,-4119,-4133,-4152,-4188,-4225,-4251,-4300,-4345,-4372,-4391,-4421,-4447,-4476,-4503,-4531,-4556,-4572,
+-4589,-4606,-4628,-4643,-4660,-4678,-4692,-4705,-4715,-4727,-4745,-4747,-4750,-4744,-4739,-4741,-4745,-4742,-4737,-4736,
+-4738,-4728,-4718,-4702,-4678,-4667,-4652,-4633,-4621,-4606,-4583,-4552,-4519,-4480,-4445,-4411,-4367,-4331,-4296,-4259,
+-4231,-4198,-4163,-4119,-4074,-4022,-3966,-3910,-3865,-3819,-3774,-3725,-3682,-3626,-3577,-3532,-3482,-3432,-3372,-3330,
+-3281,-3226,-3185,-3153,-3121,-3077,-3031,-2986,-2945,-2927,-2949,-3033,-3163,-3145,-2840,-2635,-2486,-2343,-2091,-1887,
+-1849,-1782,-1731,-1667,-1595,-1531,-1476,-1406,-1323,-1265,-1234,-1202,-1175,-1134,-1070,-1030,-988,-954,-915,-851,
+-827,-785,-805,-811,-923,-1043,-1138,-1204,-1290,-1383,-1450,-1485,-1537,-1646,-1788,-1919,-2014,-2078,-2101,-2088,
+-2052,-2016,-2009,-1995,-1970,-1946,-1919,-1905,-1725,-1488,-1388,-1338,-1327,-1322,-1306,-1289,-1285,-1280,-1297,-1306,
+-1280,-1238,-1186,-1149,-1140,-1131,-1126,-1111,-1083,-1066,-1131,-1294,-1485,-1675,-1724,-1829,-1850,-1808,-1780,-1774,
+-1813,-1871,-1927,-1956,-1967,-1972,-1982,-1993,-2006,-2046,-2090,-2113,-2131,-2144,-2174,-2210,-2254,-2298,-2347,-2376,
+-2410,-2355,-2232,-2118,-2076,-2129,-2175,-2214,-2273,-2272,-2313,-2364,-2338,-2353,-2407,-2446,-2563,-2733,-2980,-3360,
+-3724,-3976,-4034,-4065,-4085,-4200,-4356,-4641,-4818,-4845,-4762,-4595,-4453,-4453,-4513,-4551,-4609,-4813,-4610,-4542,
+-4773,-4957,-5071,-5122,-5132,-5154,-5172,-5174,-5185,-5195,-5209,-5239,-5269,-5298,-5328,-5345,-5345,-5324,-5288,-5248,
+-5215,-5188,-5164,-5161,-5152,-5139,-5114,-5097,-5084,-5067,-5053,-5032,-5006,-4993,-4968,-4940,-4910,-4881,-4840,-4796,
+-4745,-4702,-4667,-4628,-4575,-4514,-4459,-4423,-4415,-4417,-4435,-4446,-4442,-4411,-4362,-4337,-4296,-4261,-4248,-4196,
+-4166,-4117,-4077,-4032,-3987,-3933,-3881,-3838,-3777,-3724,-3660,-3595,-3541,-3487,-3439,-3386,-3319,-3251,-3161,-3089,
+-3022,-2945,-2872,-2790,-2708,-2638,-2566,-2485,-2411,-2328,-2254,-2174,-2088,-2020,-1942,-1857,-1767,-1712,-1685,-1630,
+-1579,-1567,-1531,-1495,-1446,-1407,-1363,-1310,-1295,-1278,-1234,-1178,-1180,-1118,-1052,-1003,-960,-913,-866,-806,
+-768,-742,-677,-609,-569,-513,-436,-387,-330,-263,-209,-139,-72,1,83,151,210,271,352,440,
+526,620,708,792,881,970,1045,1134,1214,1288,1356,1427,1492,1550,1602,1648,1697,1734,1771,1787,
+1790,1797,1800,1809,1806,1812,1815,1835,1855,1873,1911,1946,1978,2007,2038,2061,2089,2124,2153,2180,
+2212,2237,2256,2286,2307,2333,2358,2385,2407,2420,2430,2434,2437,2435,2432,2425,2415,2418,2426,2433,
+2441,2459,2500,2565,2662,2751,2859,2992,3105,3141,3133,3164,3229,3315,3382,3427,3456,3459,3446,3447,
+3446,3422,3406,3408,3445,3488,3519,3522,3503,3516,3506,3470,3415,3352,3298,3263,3246,3229,3200,3159,
+3114,3079,3056,3036,2998,2951,2905,2874,2851,2828,2804,2794,2791,2783,2769,2750,2735,2732,2735,2747,
+2762,2763,2749,2740,2730,2723,2725,2751,2796,2872,2953,3000,3003,2989,2978,2981,2998,3020,3045,3065,
+3124,3170,3168,3142,3151,3158,3175,3199,3222,3221,3202,3177,3138,3098,3056,3010,2939,2888,2860,2851,
+2835,2811,2777,2740,2699,2663,2623,2579,2536,2526,2545,2573,2620,2669,2712,2757,2756,2760,2738,2715,
+2680,2651,2601,2551,2474,2429,2405,2361,2308,2258,2217,2190,2158,2124,2102,2082,2083,2090,2110,2139,
+2171,2213,2253,2307,2387,2447,2506,2594,2725,2796,2682,2637,2705,2617,2407,2220,2008,1805,1644,1530,
+1450,1402,1363,1328,1317,1315,1311,1308,1316,1331,1333,1312,1291,1296,1323,1342,1365,1395,1425,1444,
+1451,1445,1445,1394,1354,1342,1333,1310,1264,1220,1188,1158,1141,1107,1075,1046,1028,1008,973,946,
+917,907,903,898,892,889,905,960,1021,1045,1020,951,885,846,818,793,785,770,766,758,
+717,692,686,732,739,733,717,574,473,380,361,348,302,307,275,236,227,278,330,301,
+288,273,314,437,533,541,477,379,294,213,100,-36,-124,-213,-316,-401,-500,-633,-768,-913,
+-1009,-1115,-1231,-1346,-1473,-1637,-1804,-1947,-2077,-2211,-2319,-2418,-2528,-2628,-2718,-2810,-2893,-2967,-3035,-3106,
+-3157,-3193,-3241,-3293,-3347,-3400,-3441,-3471,-3497,-3524,-3530,-3540,-3562,-3591,-3619,-3638,-3643,-3648,-3648,-3642,
+-3632,-3618,-3599,-3574,-3547,-3514,-3460,-3391,-3322,-3282,-3277,-3345,-3401,-3477,-3501,-3522,-3668,-3869,-4005,-4157,
+-4245,-4339,-4421,-4528,-4643,-4757,-4874,-4905,-4901,-4892,-4889,-4900,-4932,-4980,-5044,-5121,-5218,-5314,-5400,-5476,
+-5540,-5597,-5612,-5600,-5589,-5607,-5646,-5718,-5806,-5877,-5941,-6004,-6057,-6097,-6087,-5984,-5857,-5783,-5799,-5853,
+-5920,-5983,-6062,-6113,-6156,-6220,-6259,-6270,-6260,-6243,-6260,-6343,-6404,-6415,-6378,-6399,-6442,-6480,-6516,-6531,
+-6516,-6483,-6475,-6475,-6486,-6526,-6554,-6552,-6541,-6540,-6556,-6564,-6579,-6600,-6616,-6609,-6593,-6601,-6608,-6631,
+-6625,-6584,-6548,-6514,-6520,-6495,-6468,-6464,-6468,-6452,-6462,-6443,-6421,-6381,-6296,-6189,-6136,-6130,-6103,-6088,
+-6061,-6084,-6129,-6162,-6203,-6237,-6263,-6268,-6249,-6185,-6073,-5961,-5861,-5798,-5786,-5814,-5808,-5742,-5700,-5673,
+-5643,-5595,-5547,-5499,-5464,-5423,-5387,-5346,-5290,-5218,-5196,-5211,-5188,-5102,-5028,-5037,-5249,-5387,-5361,-5141,
+-4943,-4830,-4739,-4670,-4515,-4282,-4172,-4191,-4161,-4080,-4093,-4134,-4156,-4065,-3993,-3938,-3919,-3842,-3799,-3824,
+-3749,-3696,-3650,-3569,-3525,-3489,-3422,-3353,-3323,-3311,-3200,-3125,-3020,-3008,-3018,-2993,-2981,-2908,-2780,-2744,
+-2700,-2707,-2713,-2687,-2657,-2608,-2476,-2393,-2324,-2271,-2226,-2209,-2165,-2093,-2010,-1920,-1812,-1686,-1529,-1424,
+-1284,-1187,-1084,-993,-912,-831,-758,-663,-580,-497,-400,-298,-214,-106,-9,88,189,298,407,503,
+592,682,768,874,980,1106,1220,1325,1418,1461,1535,1656,1705,1776,1864,1937,1994,2020,2022,1991,
+1973,2032,2030,2092,2264,2661,2963,2985,2781,2696,2643,2622,2707,2813,2912,2984,3040,3084,3108,3148,
+3224,3254,3307,3345,3379,3394,3417,3462,3500,3526,3545,3568,3600,3622,3638,3654,3679,3672,3688,3708,
+3736,3756,3775,3793,3811,3823,3840,3862,3879,3905,3916,3936,3962,3986,4004,4022,4040,4065,4092,4117,
+4139,4155,4195,4337,4384,4430,4466,4523,4562,4579,4605,4639,4673,4723,4756,4799,4823,4784,4843,4852,
+4862,4860,4853,4850,4862,4857,4852,4855,4886,5002,5013,4969,4951,4908,4874,4832,4787,4721,4672,4568,
+4425,4279,4133,3913,3662,3453,3221,3054,3149,3417,3697,3958,3978,3771,3761,3819,3816,3904,3992,3993,
+3946,3712,3602,3558,3599,3435,3378,3330,3298,3280,3247,3206,3143,3070,2994,2914,2864,2839,2820,2782,
+2702,2629,2649,2823,2873,2870,2679,2519,2410,2320,2230,2178,2162,2136,2082,2021,1967,1921,1890,1878,
+1917,2045,2246,2186,1958,1797,1719,1678,1639,1629,1672,1747,1755,1703,1779,1626,1449,1377,1354,1365,
+1359,1328,1282,1245,1230,1207,1176,1137,1100,1075,1056,1034,1002,964,923,901,883,863,836,813,
+797,774,750,712,693,666,656,635,603,498,454,470,545,560,499,506,496,467,489,531,
+489,494,553,584,588,593,573,549,516,465,436,419,392,361,374,426,399,384,357,350,
+363,381,373,373,357,347,361,328,287,282,284,274,293,385,476,397,359,382,412,450,
+476,502,533,571,589,597,611,713,737,735,758,773,763,762,766,824,888,848,852,871,
+952,965,951,916,923,939,950,950,943,944,977,981,942,940,935,923,919,917,917,917,
+915,918,920,922,916,905,889,871,841,829,820,815,803,790,775,764,755,749,735,717,
+692,667,653,645,634,600,574,593,644,714,967,1290,1462,1540,1509,1460,1303,1071,781,411,
+55,-135,-218,-249,-260,-261,-259,-267,-282,-311,-355,-396,-433,-480,-524,-567,-613,-653,-694,-733,
+-773,-807,-843,-875,-911,-949,-987,-1026,-1067,-1108,-1147,-1177,-1212,-1251,-1289,-1330,-1376,-1423,-1468,-1516,
+-1567,-1615,-1655,-1697,-1736,-1769,-1803,-1839,-1876,-1917,-1953,-1993,-2046,-2092,-2139,-2177,-2216,-2249,-2279,-2305,
+-2334,-2361,-2402,-2448,-2492,-2529,-2571,-2618,-2668,-2712,-2762,-2813,-2857,-2898,-2937,-2983,-3029,-3084,-3136,-3183,
+-3225,-3268,-3302,-3340,-3382,-3423,-3461,-3494,-3529,-3564,-3597,-3631,-3661,-3697,-3733,-3767,-3794,-3831,-3888,-3928,
+-3961,-4004,-4043,-4083,-4111,-4131,-4153,-4192,-4227,-4262,-4289,-4339,-4378,-4408,-4434,-4447,-4468,-4501,-4523,-4544,
+-4557,-4576,-4598,-4621,-4634,-4652,-4672,-4690,-4700,-4710,-4719,-4732,-4736,-4720,-4743,-4741,-4746,-4748,-4758,-4754,
+-4752,-4752,-4736,-4717,-4696,-4678,-4664,-4649,-4623,-4601,-4594,-4575,-4538,-4518,-4492,-4457,-4405,-4360,-4329,-4295,
+-4249,-4211,-4180,-4149,-4111,-4065,-4011,-3962,-3908,-3854,-3804,-3757,-3697,-3648,-3610,-3567,-3516,-3469,-3442,-3360,
+-3331,-3271,-3225,-3188,-3150,-3120,-3067,-3031,-2976,-2949,-2912,-2933,-2997,-3104,-3099,-3006,-2751,-2506,-2250,-1982,
+-1838,-1753,-1698,-1692,-1621,-1543,-1489,-1432,-1384,-1344,-1273,-1219,-1166,-1170,-1131,-1077,-1019,-962,-923,-884,
+-831,-781,-761,-697,-713,-728,-857,-982,-1081,-1183,-1273,-1349,-1379,-1407,-1539,-1700,-1849,-1954,-2016,-2032,
+-2013,-1965,-1911,-1905,-1886,-1862,-1826,-1796,-1790,-1689,-1463,-1372,-1318,-1293,-1286,-1273,-1255,-1231,-1219,-1218,
+-1231,-1227,-1174,-1134,-1110,-1105,-1081,-1054,-1026,-1011,-1059,-1179,-1309,-1536,-1597,-1712,-1763,-1716,-1684,-1664,
+-1664,-1705,-1782,-1853,-1895,-1918,-1919,-1928,-1923,-1939,-1978,-2009,-2008,-2015,-2043,-2067,-2097,-2100,-2125,-2189,
+-2252,-2315,-2349,-2330,-2280,-2225,-2147,-2158,-2176,-2190,-2202,-2228,-2265,-2158,-2099,-2129,-2103,-2162,-2310,-2483,
+-2834,-3336,-3741,-3992,-4191,-4312,-4407,-4514,-4667,-4796,-4847,-4844,-4790,-4763,-4790,-4818,-4838,-4780,-4854,-4648,
+-4477,-4638,-4876,-5037,-5145,-5197,-5236,-5268,-5294,-5316,-5360,-5404,-5451,-5500,-5551,-5584,-5602,-5586,-5546,-5480,
+-5418,-5353,-5302,-5292,-5299,-5285,-5261,-5225,-5194,-5150,-5123,-5095,-5058,-5027,-5005,-4977,-4941,-4895,-4851,-4798,
+-4746,-4701,-4670,-4644,-4608,-4557,-4501,-4453,-4430,-4429,-4459,-4491,-4493,-4479,-4435,-4400,-4368,-4319,-4269,-4238,
+-4221,-4187,-4131,-4087,-4047,-4014,-3982,-3924,-3861,-3794,-3730,-3674,-3632,-3585,-3544,-3484,-3417,-3347,-3281,-3215,
+-3150,-3073,-2989,-2910,-2829,-2749,-2674,-2603,-2538,-2466,-2388,-2325,-2242,-2128,-2017,-1916,-1901,-1864,-1821,-1769,
+-1713,-1683,-1626,-1576,-1520,-1496,-1450,-1405,-1370,-1333,-1280,-1251,-1237,-1210,-1170,-1123,-1076,-1032,-976,-936,
+-880,-817,-769,-719,-673,-612,-562,-494,-437,-379,-334,-279,-201,-117,-55,23,91,134,222,306,
+387,478,574,667,765,848,931,1020,1106,1191,1271,1342,1409,1474,1538,1586,1636,1680,1714,1744,
+1778,1800,1802,1809,1815,1834,1846,1860,1867,1899,1925,1961,1982,2011,2045,2078,2111,2136,2157,2190,
+2223,2254,2273,2281,2312,2338,2359,2382,2418,2442,2459,2469,2472,2472,2469,2465,2458,2453,2453,2457,
+2464,2472,2489,2527,2591,2716,2816,2902,3012,3097,3141,3154,3159,3215,3276,3330,3364,3382,3395,3397,
+3392,3385,3365,3357,3369,3405,3444,3481,3516,3493,3471,3449,3425,3386,3332,3281,3247,3226,3205,3175,
+3129,3085,3053,3031,3002,2957,2904,2866,2843,2824,2802,2782,2775,2778,2776,2759,2739,2732,2742,2748,
+2752,2758,2754,2739,2728,2718,2710,2717,2746,2800,2877,2955,3009,3021,3019,3019,3011,3008,3030,3065,
+3074,3174,3196,3165,3136,3153,3150,3158,3184,3211,3199,3165,3113,3068,3037,2996,2952,2889,2843,2813,
+2793,2776,2751,2716,2684,2641,2606,2574,2542,2505,2496,2512,2546,2610,2676,2737,2769,2737,2745,2733,
+2694,2654,2637,2596,2538,2469,2408,2369,2336,2279,2227,2189,2163,2140,2111,2090,2068,2067,2072,2082,
+2101,2138,2173,2212,2255,2301,2332,2354,2429,2518,2569,2499,2457,2537,2540,2300,2091,1894,1730,1586,
+1476,1393,1341,1306,1283,1276,1279,1280,1278,1301,1321,1323,1300,1282,1288,1312,1326,1343,1367,1381,
+1386,1383,1371,1366,1339,1312,1306,1304,1288,1256,1212,1177,1148,1125,1097,1069,1036,1009,974,948,
+935,916,899,884,872,863,858,875,922,973,986,950,892,840,803,776,745,733,719,705,
+672,644,660,683,733,736,734,713,572,455,338,303,302,280,267,260,208,174,206,249,
+266,262,213,175,214,443,524,464,364,271,200,81,-38,-128,-218,-318,-421,-520,-654,-789,
+-932,-1047,-1181,-1307,-1412,-1517,-1657,-1818,-1961,-2109,-2243,-2326,-2424,-2528,-2632,-2724,-2812,-2892,-2963,-3023,
+-3088,-3145,-3195,-3241,-3287,-3336,-3390,-3428,-3451,-3478,-3513,-3527,-3540,-3572,-3605,-3633,-3656,-3668,-3673,-3671,
+-3663,-3658,-3638,-3612,-3584,-3548,-3494,-3431,-3372,-3319,-3307,-3346,-3433,-3513,-3591,-3612,-3696,-3826,-3973,-4067,
+-4217,-4315,-4413,-4525,-4671,-4843,-4948,-4953,-4927,-4915,-4913,-4920,-4941,-4975,-5021,-5073,-5138,-5217,-5299,-5379,
+-5463,-5532,-5585,-5597,-5589,-5591,-5613,-5663,-5738,-5825,-5903,-5978,-6060,-6142,-6210,-6221,-6117,-5993,-5896,-5912,
+-5975,-6050,-6123,-6199,-6244,-6293,-6347,-6369,-6377,-6354,-6360,-6391,-6475,-6523,-6516,-6480,-6481,-6493,-6529,-6564,
+-6558,-6545,-6541,-6556,-6578,-6593,-6618,-6632,-6634,-6633,-6654,-6676,-6684,-6683,-6695,-6716,-6720,-6709,-6703,-6704,
+-6712,-6694,-6649,-6609,-6588,-6546,-6518,-6502,-6491,-6487,-6490,-6505,-6475,-6442,-6376,-6252,-6160,-6125,-6154,-6144,
+-6156,-6163,-6184,-6205,-6226,-6255,-6292,-6308,-6303,-6279,-6216,-6127,-6041,-5967,-5928,-5922,-5920,-5901,-5847,-5798,
+-5749,-5696,-5635,-5571,-5513,-5471,-5429,-5396,-5353,-5310,-5250,-5222,-5238,-5235,-5189,-5137,-5130,-5186,-5365,-5377,
+-5201,-5015,-4863,-4730,-4664,-4558,-4372,-4215,-4217,-4177,-4092,-4141,-4133,-4100,-4029,-3996,-3950,-3878,-3844,-3831,
+-3826,-3757,-3715,-3652,-3557,-3504,-3443,-3361,-3352,-3330,-3250,-3169,-3087,-2967,-2962,-2921,-2900,-2900,-2831,-2726,
+-2676,-2674,-2639,-2633,-2638,-2586,-2537,-2463,-2402,-2344,-2274,-2232,-2211,-2140,-2060,-1959,-1866,-1748,-1619,-1468,
+-1368,-1244,-1143,-1047,-938,-853,-767,-692,-610,-527,-431,-333,-243,-146,-48,45,144,252,360,460,
+555,630,715,806,914,995,1124,1237,1351,1433,1487,1551,1632,1717,1819,1908,1988,2054,2075,2080,
+2060,2031,2059,2094,2180,2367,2751,3023,2965,2820,2766,2710,2683,2774,2878,2975,3038,3098,3136,3152,
+3206,3270,3296,3343,3384,3415,3439,3460,3488,3524,3553,3578,3605,3626,3646,3669,3693,3711,3713,3721,
+3751,3770,3786,3806,3826,3846,3860,3875,3896,3910,3929,3944,3967,3991,4015,4034,4052,4072,4095,4119,
+4145,4166,4187,4227,4319,4414,4461,4500,4542,4583,4611,4633,4662,4693,4730,4788,4816,4824,4823,4867,
+4876,4887,4880,4873,4867,4881,4876,4874,4875,4899,5005,5055,4997,4979,4968,4949,4871,4840,4761,4671,
+4601,4522,4374,4190,4004,3786,3594,3316,3171,3086,3259,3510,3698,3734,3783,3867,4009,3926,4081,4167,
+4139,4122,3899,3760,3588,3556,3531,3502,3402,3336,3297,3267,3234,3190,3135,3057,2972,2909,2866,2825,
+2780,2726,2677,2701,2834,2918,3070,2790,2551,2444,2400,2294,2228,2185,2146,2104,2056,2016,1981,1963,
+1971,2021,2179,2364,2181,1976,1858,1809,1762,1721,1704,1772,1941,2014,1825,1645,1584,1468,1407,1385,
+1393,1405,1430,1341,1294,1265,1236,1213,1187,1158,1133,1114,1085,1052,1008,965,939,923,912,888,
+855,833,817,783,745,732,697,765,834,684,517,482,521,591,609,554,563,589,503,501,
+505,511,526,605,656,643,620,580,552,498,479,472,466,447,416,396,504,446,407,411,
+385,365,389,398,408,398,397,384,360,353,328,330,324,330,354,375,378,384,407,432,
+465,492,518,569,583,602,600,635,803,754,784,796,821,786,800,854,872,929,911,878,
+969,1030,942,902,936,950,951,934,918,935,929,909,910,922,933,916,906,899,900,901,
+903,902,902,895,893,886,881,875,867,858,842,831,827,818,809,801,796,788,778,765,
+746,716,686,662,637,603,567,545,533,536,589,706,890,991,1172,1407,1645,1793,1585,1129,
+621,229,-27,-161,-234,-263,-275,-273,-278,-296,-315,-349,-385,-429,-470,-508,-551,-594,-633,-674,
+-715,-754,-792,-827,-860,-898,-933,-971,-1010,-1050,-1089,-1123,-1154,-1189,-1221,-1259,-1300,-1345,-1394,-1442,
+-1490,-1545,-1591,-1631,-1671,-1714,-1754,-1791,-1831,-1869,-1902,-1940,-1980,-2029,-2077,-2126,-2167,-2203,-2239,-2269,
+-2295,-2321,-2350,-2393,-2434,-2474,-2511,-2552,-2600,-2652,-2703,-2754,-2806,-2848,-2883,-2918,-2960,-3002,-3049,-3103,
+-3153,-3205,-3253,-3293,-3338,-3383,-3426,-3464,-3496,-3532,-3568,-3602,-3633,-3665,-3704,-3742,-3764,-3760,-3809,-3892,
+-3933,-3970,-4010,-4047,-4083,-4109,-4136,-4165,-4200,-4238,-4273,-4281,-4325,-4362,-4385,-4414,-4446,-4468,-4488,-4501,
+-4522,-4544,-4569,-4592,-4617,-4637,-4647,-4671,-4693,-4705,-4715,-4719,-4729,-4735,-4722,-4745,-4750,-4753,-4757,-4755,
+-4751,-4745,-4745,-4729,-4701,-4681,-4672,-4658,-4646,-4621,-4601,-4586,-4556,-4530,-4494,-4477,-4430,-4404,-4367,-4328,
+-4291,-4250,-4210,-4173,-4132,-4084,-4041,-3997,-3947,-3896,-3847,-3793,-3736,-3692,-3640,-3591,-3552,-3509,-3453,-3419,
+-3371,-3334,-3255,-3214,-3187,-3157,-3121,-3073,-3041,-3002,-2951,-2933,-2924,-2965,-3051,-3073,-2970,-2702,-2426,-2196,
+-2016,-1815,-1694,-1646,-1583,-1524,-1497,-1446,-1405,-1365,-1332,-1255,-1209,-1166,-1122,-1082,-1032,-978,-909,-837,
+-813,-764,-705,-691,-645,-611,-628,-638,-763,-935,-1066,-1153,-1234,-1284,-1305,-1448,-1639,-1796,-1894,-1954,
+-1962,-1928,-1853,-1806,-1791,-1770,-1746,-1704,-1675,-1657,-1629,-1471,-1349,-1291,-1259,-1242,-1231,-1221,-1187,-1159,
+-1143,-1154,-1157,-1111,-1070,-1072,-1049,-1009,-977,-961,-988,-1116,-1221,-1434,-1519,-1557,-1687,-1675,-1605,-1591,
+-1579,-1582,-1623,-1714,-1796,-1833,-1855,-1854,-1864,-1860,-1879,-1891,-1861,-1898,-1925,-1951,-1975,-1979,-2002,-2056,
+-2120,-2167,-2211,-2257,-2278,-2280,-2262,-2227,-2142,-2135,-2150,-2162,-2179,-2208,-2181,-2161,-2140,-2100,-2134,-2226,
+-2332,-2501,-2886,-3307,-3693,-3950,-4070,-4116,-4182,-4269,-4458,-4594,-4623,-4650,-4737,-4822,-4869,-4904,-4901,-4939,
+-4832,-4670,-4782,-4878,-5032,-5054,-5297,-5399,-5456,-5500,-5558,-5613,-5714,-5778,-5843,-5917,-5980,-6013,-5997,-5933,
+-5838,-5738,-5644,-5565,-5528,-5516,-5498,-5472,-5431,-5366,-5299,-5228,-5176,-5116,-5066,-5025,-4987,-4933,-4871,-4804,
+-4749,-4690,-4662,-4645,-4623,-4595,-4549,-4504,-4475,-4464,-4464,-4488,-4516,-4529,-4538,-4522,-4465,-4410,-4362,-4294,
+-4231,-4185,-4140,-4106,-4067,-4044,-4016,-4004,-3959,-3881,-3837,-3807,-3739,-3665,-3608,-3573,-3484,-3427,-3375,-3319,
+-3251,-3185,-3113,-3030,-2964,-2875,-2791,-2704,-2637,-2575,-2497,-2412,-2334,-2266,-2204,-2069,-1977,-1950,-1892,-1821,
+-1778,-1759,-1725,-1703,-1650,-1607,-1574,-1516,-1475,-1437,-1388,-1349,-1295,-1249,-1218,-1174,-1131,-1093,-1050,-1003,
+-980,-933,-883,-829,-769,-729,-652,-604,-570,-501,-427,-370,-292,-224,-168,-86,-30,31,112,174,
+252,343,435,537,635,726,807,901,983,1072,1158,1236,1309,1376,1451,1515,1574,1619,1660,1696,
+1738,1765,1780,1796,1812,1822,1842,1859,1864,1886,1904,1941,1982,2030,2062,2090,2115,2141,2173,2205,
+2240,2259,2285,2306,2313,2331,2356,2386,2419,2457,2487,2507,2515,2516,2514,2508,2501,2498,2489,2489,
+2496,2499,2502,2518,2551,2595,2657,2740,2826,2947,3069,3134,3165,3153,3185,3245,3294,3310,3329,3352,
+3363,3368,3359,3351,3349,3367,3392,3422,3453,3458,3435,3409,3388,3370,3341,3302,3257,3222,3199,3178,
+3144,3104,3064,3039,3015,2983,2935,2885,2853,2829,2813,2791,2778,2771,2771,2768,2753,2731,2720,2730,
+2743,2751,2753,2745,2729,2706,2687,2675,2683,2716,2776,2853,2928,2979,3010,3032,3039,3033,3019,3044,
+3074,3085,3205,3189,3140,3111,3141,3138,3141,3159,3182,3161,3100,3018,2971,2943,2910,2878,2835,2797,
+2766,2741,2711,2685,2651,2625,2587,2566,2537,2512,2472,2464,2476,2531,2612,2698,2746,2752,2735,2731,
+2723,2679,2629,2621,2581,2521,2451,2400,2336,2306,2264,2215,2171,2143,2121,2106,2092,2067,2050,2054,
+2052,2071,2100,2131,2160,2190,2195,2202,2210,2243,2307,2348,2341,2289,2324,2407,2173,1943,1781,1644,
+1524,1422,1343,1292,1266,1252,1247,1246,1245,1254,1278,1303,1308,1301,1278,1287,1304,1312,1331,1340,
+1343,1333,1331,1316,1302,1293,1282,1277,1277,1279,1258,1215,1164,1122,1109,1086,1063,1036,994,958,
+931,922,905,879,859,848,841,838,846,870,892,886,850,812,786,765,733,697,669,653,
+636,619,622,634,668,717,714,719,693,565,437,314,263,263,265,223,239,191,160,136,
+142,183,217,204,151,123,257,439,441,405,298,202,74,-34,-117,-216,-325,-424,-539,-664,
+-806,-945,-1095,-1229,-1339,-1460,-1567,-1677,-1823,-1952,-2114,-2250,-2328,-2423,-2526,-2620,-2719,-2811,-2892,-2958,
+-3009,-3070,-3131,-3189,-3228,-3268,-3322,-3369,-3405,-3433,-3460,-3491,-3516,-3536,-3571,-3611,-3651,-3672,-3675,-3681,
+-3684,-3680,-3670,-3656,-3634,-3590,-3545,-3472,-3404,-3359,-3302,-3309,-3372,-3499,-3593,-3646,-3747,-3795,-3912,-4055,
+-4147,-4244,-4332,-4440,-4567,-4738,-4972,-5003,-4960,-4929,-4916,-4917,-4927,-4958,-4998,-5048,-5104,-5171,-5241,-5312,
+-5390,-5461,-5521,-5570,-5584,-5577,-5574,-5608,-5664,-5749,-5836,-5916,-6006,-6113,-6220,-6311,-6330,-6242,-6120,-6006,
+-6003,-6064,-6145,-6231,-6303,-6355,-6402,-6444,-6469,-6471,-6456,-6465,-6525,-6635,-6670,-6616,-6586,-6578,-6590,-6609,
+-6628,-6651,-6638,-6631,-6658,-6682,-6709,-6723,-6734,-6737,-6740,-6765,-6781,-6794,-6816,-6820,-6807,-6813,-6818,-6827,
+-6808,-6806,-6768,-6733,-6683,-6645,-6578,-6523,-6504,-6504,-6517,-6544,-6529,-6484,-6423,-6330,-6252,-6172,-6164,-6236,
+-6217,-6210,-6219,-6245,-6261,-6299,-6331,-6345,-6355,-6378,-6388,-6357,-6297,-6212,-6148,-6119,-6100,-6083,-6055,-6037,
+-6007,-5947,-5860,-5780,-5704,-5637,-5581,-5534,-5473,-5405,-5341,-5298,-5256,-5247,-5275,-5281,-5263,-5245,-5188,-5310,
+-5315,-5177,-5032,-4897,-4746,-4679,-4562,-4407,-4278,-4255,-4219,-4140,-4166,-4111,-4069,-4024,-3968,-3943,-3937,-3873,
+-3835,-3813,-3759,-3676,-3622,-3522,-3481,-3420,-3389,-3357,-3318,-3200,-3126,-3083,-3005,-2930,-2929,-2856,-2802,-2755,
+-2665,-2588,-2615,-2587,-2546,-2539,-2494,-2472,-2446,-2397,-2343,-2271,-2234,-2172,-2088,-1998,-1890,-1770,-1655,-1540,
+-1423,-1318,-1216,-1102,-992,-889,-801,-718,-634,-556,-462,-362,-263,-170,-80,15,109,197,298,403,
+487,551,622,703,808,929,1044,1144,1242,1342,1417,1501,1580,1654,1761,1859,1952,2024,2089,2146,
+2157,2150,2109,2131,2176,2296,2452,2813,3044,3033,2985,2846,2774,2767,2857,2948,3034,3096,3157,3182,
+3216,3261,3311,3365,3410,3450,3489,3492,3520,3549,3580,3610,3633,3647,3668,3688,3717,3743,3759,3771,
+3772,3798,3811,3823,3843,3858,3873,3894,3905,3921,3939,3961,3981,4001,4022,4045,4065,4084,4109,4130,
+4154,4177,4199,4225,4267,4342,4443,4481,4527,4556,4597,4628,4646,4668,4701,4741,4799,4821,4831,4837,
+4894,4898,4915,4891,4890,4887,4893,4892,4892,4897,4909,4951,5028,5015,4984,4973,4962,4871,4856,4806,
+4723,4658,4621,4431,4272,4058,3822,3606,3333,3159,3028,3140,3352,3500,3633,3814,4028,4156,4013,3910,
+3984,4149,4267,4089,3836,3654,3623,3708,3732,3518,3401,3334,3298,3281,3281,3279,3213,3079,2986,2926,
+2878,2832,2782,2740,2724,2751,2834,2992,2820,2612,2580,2616,2431,2350,2267,2192,2136,2104,2074,2061,
+2083,2148,2187,2196,2155,2028,1932,1904,1962,1907,1850,1807,1826,1820,1827,1732,1586,1501,1478,1457,
+1447,1410,1390,1387,1361,1333,1315,1295,1292,1270,1231,1204,1180,1146,1103,1055,1016,989,970,954,
+928,898,881,851,804,744,684,676,803,911,664,551,569,673,695,695,587,545,540,560,
+571,550,548,572,631,626,632,674,666,603,611,531,517,520,511,474,432,484,480,398,
+440,442,415,413,455,499,472,463,437,441,428,409,392,382,362,373,395,416,433,446,
+463,487,510,553,584,607,613,628,714,792,823,825,838,818,821,930,881,880,975,986,
+957,985,909,880,929,950,913,906,913,920,927,912,908,921,909,905,897,888,877,872,
+873,877,869,869,865,868,872,876,871,862,852,841,834,831,825,818,814,810,793,783,
+769,757,742,722,696,664,628,601,584,587,559,553,546,580,685,961,1403,1826,2213,2282,
+1835,1174,572,160,-77,-203,-254,-270,-277,-281,-296,-320,-347,-381,-422,-462,-502,-540,-582,-620,
+-657,-695,-735,-772,-808,-843,-880,-918,-955,-990,-1029,-1064,-1097,-1124,-1161,-1198,-1235,-1275,-1325,-1370,
+-1420,-1472,-1524,-1567,-1606,-1647,-1688,-1727,-1764,-1806,-1848,-1881,-1923,-1967,-2014,-2059,-2106,-2153,-2187,-2223,
+-2257,-2284,-2313,-2345,-2386,-2421,-2461,-2499,-2540,-2587,-2642,-2696,-2747,-2798,-2842,-2854,-2912,-2947,-2985,-3028,
+-3078,-3128,-3182,-3229,-3280,-3333,-3382,-3424,-3456,-3490,-3528,-3563,-3600,-3634,-3670,-3708,-3750,-3784,-3818,-3855,
+-3895,-3936,-3971,-4004,-4048,-4084,-4111,-4135,-4165,-4204,-4227,-4255,-4285,-4319,-4343,-4365,-4395,-4426,-4452,-4478,
+-4495,-4520,-4544,-4568,-4588,-4609,-4623,-4634,-4661,-4686,-4704,-4718,-4726,-4731,-4732,-4734,-4739,-4747,-4747,-4752,
+-4741,-4738,-4735,-4731,-4721,-4703,-4677,-4663,-4644,-4635,-4613,-4596,-4574,-4550,-4522,-4491,-4465,-4429,-4392,-4354,
+-4323,-4286,-4253,-4213,-4172,-4138,-4093,-4047,-3997,-3948,-3903,-3852,-3793,-3740,-3691,-3640,-3594,-3549,-3506,-3446,
+-3405,-3349,-3326,-3261,-3222,-3175,-3117,-3088,-3060,-3033,-3003,-2951,-2921,-2911,-2927,-2997,-3033,-2921,-2710,-2474,
+-2285,-2092,-1899,-1623,-1632,-1590,-1421,-1450,-1355,-1315,-1304,-1272,-1241,-1160,-1125,-1065,-1039,-997,-945,-882,
+-812,-746,-681,-650,-607,-564,-570,-518,-516,-541,-695,-803,-934,-1041,-1107,-1180,-1319,-1542,-1711,-1826,
+-1888,-1894,-1847,-1770,-1726,-1692,-1664,-1625,-1590,-1562,-1533,-1512,-1431,-1311,-1255,-1220,-1205,-1190,-1172,-1142,
+-1115,-1083,-1076,-1075,-1039,-1014,-1012,-972,-926,-900,-910,-984,-1147,-1323,-1451,-1500,-1586,-1632,-1570,-1507,
+-1506,-1508,-1526,-1568,-1643,-1722,-1744,-1758,-1777,-1781,-1778,-1802,-1778,-1780,-1799,-1848,-1901,-1928,-1940,-1971,
+-2005,-2037,-2058,-2061,-2093,-2127,-2166,-2217,-2218,-2158,-2109,-2075,-2036,-2065,-2240,-2376,-2411,-2413,-2378,-2323,
+-2423,-2527,-2744,-2985,-3234,-3576,-3775,-3753,-3629,-3581,-3585,-3803,-4013,-4113,-4110,-4198,-4350,-4444,-4573,-4682,
+-4807,-4813,-4769,-4939,-5037,-4954,-5038,-5456,-5670,-5792,-5892,-5984,-6075,-6176,-6267,-6347,-6416,-6472,-6492,-6464,
+-6402,-6315,-6193,-6064,-5962,-5903,-5856,-5798,-5761,-5714,-5624,-5516,-5409,-5302,-5208,-5129,-5055,-4988,-4914,-4842,
+-4768,-4698,-4657,-4632,-4613,-4590,-4583,-4550,-4535,-4528,-4530,-4541,-4565,-4582,-4581,-4570,-4512,-4459,-4391,-4336,
+-4280,-4222,-4176,-4134,-4117,-4090,-4068,-4048,-4017,-3974,-3939,-3886,-3832,-3763,-3709,-3653,-3611,-3543,-3470,-3379,
+-3334,-3279,-3217,-3150,-3086,-3008,-2923,-2845,-2774,-2695,-2628,-2556,-2482,-2382,-2290,-2218,-2141,-2030,-2029,-1945,
+-1879,-1813,-1784,-1746,-1712,-1681,-1640,-1589,-1535,-1501,-1488,-1455,-1430,-1376,-1321,-1274,-1233,-1170,-1132,-1093,
+-1046,-1001,-969,-908,-866,-815,-785,-712,-650,-606,-551,-495,-422,-347,-285,-212,-148,-82,-5,64,
+135,212,313,405,507,595,688,771,864,944,1028,1119,1193,1269,1349,1421,1483,1544,1591,1635,
+1676,1713,1745,1767,1787,1807,1817,1838,1855,1871,1902,1932,1967,2000,2037,2073,2119,2154,2188,2220,
+2246,2273,2293,2317,2343,2345,2357,2391,2424,2467,2509,2541,2558,2565,2561,2557,2549,2540,2536,2531,
+2528,2534,2537,2538,2544,2569,2600,2631,2680,2753,2863,3008,3096,3152,3145,3161,3221,3294,3317,3331,
+3345,3367,3377,3379,3380,3377,3381,3404,3401,3386,3374,3357,3338,3312,3294,3276,3253,3221,3194,3172,
+3147,3111,3071,3036,3017,2995,2965,2922,2881,2850,2828,2806,2788,2781,2771,2759,2752,2746,2730,2703,
+2720,2736,2738,2745,2734,2715,2691,2660,2641,2646,2678,2735,2807,2875,2924,2970,3002,3012,3023,3025,
+3044,3085,3121,3252,3152,3095,3092,3134,3136,3118,3128,3128,3111,3047,2949,2891,2859,2830,2806,2780,
+2755,2724,2691,2658,2632,2607,2563,2531,2529,2507,2489,2452,2437,2456,2518,2586,2654,2720,2736,2743,
+2719,2703,2657,2593,2589,2568,2497,2416,2382,2328,2274,2246,2202,2163,2136,2114,2103,2087,2055,2017,
+2023,2027,2038,2057,2072,2081,2099,2092,2092,2094,2103,2120,2152,2144,2106,2129,2221,2027,1832,1690,
+1575,1474,1385,1311,1258,1237,1231,1218,1224,1227,1239,1262,1292,1306,1293,1279,1281,1283,1297,1314,
+1307,1301,1289,1283,1265,1248,1254,1258,1262,1275,1277,1248,1204,1155,1116,1091,1070,1055,1022,976,
+934,905,894,880,852,836,823,827,819,815,816,811,792,764,747,743,723,688,636,600,
+584,580,593,598,616,669,697,701,690,625,514,414,293,228,215,225,216,202,194,142,
+105,87,97,122,145,147,84,120,176,298,410,340,221,103,3,-103,-218,-314,-402,-562,
+-690,-849,-980,-1102,-1244,-1363,-1475,-1597,-1703,-1829,-1944,-2097,-2238,-2334,-2425,-2524,-2613,-2706,-2796,-2878,
+-2944,-3001,-3054,-3116,-3178,-3221,-3256,-3305,-3347,-3387,-3420,-3447,-3472,-3498,-3524,-3559,-3601,-3642,-3663,-3673,
+-3683,-3682,-3681,-3679,-3673,-3643,-3609,-3561,-3478,-3414,-3361,-3318,-3332,-3433,-3567,-3638,-3711,-3750,-3867,-4022,
+-4103,-4165,-4249,-4340,-4446,-4584,-4840,-5002,-4994,-4947,-4922,-4920,-4935,-4964,-5008,-5059,-5112,-5161,-5219,-5284,
+-5346,-5411,-5468,-5518,-5549,-5549,-5546,-5570,-5616,-5679,-5758,-5853,-5943,-6039,-6155,-6284,-6389,-6427,-6392,-6255,
+-6132,-6101,-6143,-6228,-6315,-6403,-6481,-6529,-6556,-6570,-6573,-6550,-6506,-6599,-6769,-6813,-6758,-6697,-6661,-6681,
+-6713,-6738,-6761,-6766,-6772,-6798,-6814,-6825,-6837,-6848,-6850,-6855,-6860,-6879,-6874,-6895,-6901,-6896,-6901,-6910,
+-6939,-6907,-6895,-6859,-6805,-6731,-6661,-6624,-6578,-6550,-6537,-6536,-6549,-6543,-6463,-6368,-6329,-6278,-6224,-6268,
+-6312,-6312,-6300,-6324,-6346,-6364,-6385,-6391,-6426,-6480,-6508,-6511,-6489,-6441,-6357,-6288,-6248,-6219,-6198,-6183,
+-6171,-6145,-6088,-5999,-5914,-5851,-5796,-5749,-5703,-5648,-5576,-5462,-5377,-5337,-5316,-5332,-5347,-5360,-5337,-5222,
+-5185,-5218,-5098,-4994,-4880,-4758,-4694,-4590,-4426,-4263,-4217,-4216,-4197,-4143,-4062,-4027,-3958,-3932,-3935,-3936,
+-3866,-3841,-3792,-3730,-3652,-3584,-3521,-3467,-3419,-3381,-3326,-3250,-3165,-3125,-3069,-2981,-2939,-2885,-2842,-2758,
+-2670,-2576,-2581,-2567,-2550,-2512,-2474,-2439,-2431,-2422,-2388,-2324,-2261,-2217,-2146,-2026,-1919,-1789,-1669,-1548,
+-1443,-1336,-1237,-1147,-1036,-940,-838,-757,-679,-583,-499,-397,-287,-197,-103,-1,92,173,247,308,
+382,459,524,602,710,850,963,1057,1156,1243,1337,1443,1512,1604,1697,1809,1895,1972,2055,2133,
+2195,2232,2217,2183,2213,2281,2384,2554,2887,3052,3138,3044,2919,2850,2842,2929,3007,3090,3144,3199,
+3230,3277,3303,3358,3434,3472,3513,3547,3575,3593,3619,3644,3670,3680,3704,3725,3748,3762,3789,3821,
+3832,3829,3841,3856,3871,3883,3898,3908,3927,3942,3956,3974,3995,4015,4033,4056,4079,4096,4120,4141,
+4166,4190,4211,4223,4252,4338,4438,4479,4506,4538,4572,4609,4636,4661,4686,4719,4777,4828,4834,4840,
+4796,4898,4917,4912,4905,4904,4904,4899,4900,4902,4905,4923,4962,5047,5027,4984,4984,4980,4966,4911,
+4856,4780,4685,4593,4489,4332,4096,3800,3539,3310,3131,3047,3077,3313,3485,3635,3948,4184,4287,4049,
+3807,3776,3933,4112,4167,4089,3793,3739,3874,3919,3643,3481,3403,3364,3356,3475,3555,3448,3200,3081,
+3004,2944,2895,2846,2802,2769,2748,2760,2811,2813,2660,2667,2690,2667,2574,2397,2259,2180,2143,2121,
+2119,2175,2349,2476,2300,2094,1971,1921,1931,2002,2171,2184,1962,1849,1764,1714,1652,1572,1521,1519,
+1584,1594,1518,1441,1405,1406,1395,1384,1398,1474,1490,1366,1316,1268,1217,1155,1098,1064,1039,1019,
+994,964,941,931,883,819,749,662,649,807,970,676,584,628,698,713,662,625,611,588,
+604,617,601,588,617,649,718,696,622,583,550,546,585,529,524,520,501,475,459,515,
+462,440,473,485,464,474,513,517,497,488,495,472,472,445,424,422,426,456,527,536,
+505,507,522,555,581,616,632,647,707,801,823,833,855,826,813,839,934,909,907,967,
+918,859,866,868,871,884,906,937,976,1020,981,921,924,900,892,888,880,863,854,849,
+844,845,852,850,853,853,857,857,859,856,845,833,823,817,810,805,806,808,802,783,
+774,773,769,764,751,728,699,681,658,632,610,592,559,509,487,547,742,1184,1928,2436,
+2692,2246,1583,901,421,16,-170,-240,-262,-270,-275,-291,-313,-345,-378,-418,-458,-498,-540,-578,
+-617,-651,-690,-725,-762,-793,-831,-864,-899,-934,-966,-1004,-1037,-1068,-1098,-1137,-1177,-1215,-1258,-1304,
+-1353,-1403,-1458,-1506,-1546,-1583,-1625,-1664,-1702,-1736,-1779,-1815,-1860,-1906,-1956,-2002,-2045,-2093,-2137,-2177,
+-2215,-2250,-2276,-2305,-2337,-2374,-2412,-2452,-2490,-2535,-2581,-2636,-2686,-2733,-2776,-2820,-2859,-2885,-2930,-2970,
+-3017,-3065,-3113,-3161,-3210,-3267,-3329,-3384,-3421,-3450,-3481,-3520,-3559,-3596,-3632,-3667,-3706,-3744,-3781,-3820,
+-3855,-3887,-3922,-3954,-3989,-4037,-4073,-4105,-4130,-4158,-4192,-4225,-4249,-4278,-4308,-4331,-4360,-4385,-4410,-4430,
+-4462,-4494,-4514,-4538,-4564,-4580,-4602,-4618,-4634,-4647,-4664,-4685,-4705,-4717,-4720,-4728,-4731,-4732,-4744,-4743,
+-4735,-4730,-4725,-4716,-4716,-4706,-4695,-4680,-4659,-4637,-4616,-4593,-4574,-4557,-4531,-4505,-4473,-4445,-4417,-4383,
+-4349,-4317,-4281,-4244,-4194,-4160,-4121,-4077,-4032,-3989,-3930,-3894,-3842,-3793,-3743,-3701,-3657,-3609,-3565,-3525,
+-3491,-3427,-3367,-3307,-3266,-3254,-3263,-3119,-3050,-3025,-3000,-2988,-2955,-2902,-2885,-2894,-2929,-3014,-2953,-2748,
+-2525,-2324,-2120,-1929,-1781,-1667,-1589,-1436,-1380,-1376,-1325,-1295,-1243,-1143,-1107,-1077,-1034,-1007,-968,-883,
+-816,-734,-704,-666,-600,-560,-537,-512,-469,-432,-410,-435,-465,-579,-718,-850,-984,-1195,-1422,-1597,
+-1728,-1802,-1818,-1778,-1694,-1645,-1602,-1547,-1511,-1475,-1446,-1404,-1347,-1309,-1275,-1221,-1181,-1165,-1150,-1118,
+-1089,-1072,-1031,-1001,-998,-969,-946,-926,-881,-848,-840,-871,-977,-1170,-1338,-1418,-1499,-1574,-1522,-1460,
+-1439,-1441,-1456,-1476,-1516,-1584,-1668,-1673,-1660,-1657,-1659,-1683,-1721,-1745,-1703,-1765,-1783,-1811,-1875,-1910,
+-1930,-1908,-1874,-1872,-1897,-1935,-1996,-2048,-2117,-2202,-2301,-2288,-2308,-2436,-2591,-2811,-2994,-3082,-3043,-2969,
+-2893,-2947,-3034,-3159,-3261,-3305,-3364,-3337,-3184,-3006,-3005,-3011,-3112,-3297,-3463,-3548,-3648,-3777,-3873,-4002,
+-4161,-4329,-4514,-4796,-5016,-5139,-5172,-5342,-5736,-6057,-6257,-6372,-6483,-6615,-6722,-6805,-6870,-6898,-6869,-6821,
+-6764,-6701,-6618,-6504,-6385,-6281,-6225,-6185,-6153,-6113,-6038,-5941,-5797,-5642,-5483,-5339,-5208,-5102,-5010,-4939,
+-4870,-4785,-4712,-4678,-4641,-4609,-4586,-4598,-4596,-4604,-4613,-4622,-4640,-4660,-4659,-4637,-4600,-4540,-4488,-4429,
+-4365,-4306,-4249,-4207,-4158,-4118,-4090,-4076,-4060,-4036,-4004,-3961,-3933,-3889,-3810,-3753,-3675,-3631,-3594,-3512,
+-3445,-3391,-3334,-3266,-3183,-3117,-3043,-2963,-2879,-2797,-2722,-2650,-2578,-2504,-2418,-2327,-2234,-2172,-2140,-2069,
+-1963,-1898,-1882,-1875,-1836,-1793,-1746,-1693,-1638,-1594,-1543,-1505,-1469,-1456,-1427,-1396,-1350,-1299,-1242,-1199,
+-1142,-1077,-1048,-998,-969,-908,-858,-826,-770,-716,-658,-602,-545,-467,-396,-328,-256,-197,-141,-58,
+22,100,182,282,386,475,559,644,733,824,906,991,1077,1156,1241,1313,1382,1452,1510,1561,
+1608,1654,1685,1719,1741,1766,1790,1812,1831,1856,1873,1902,1938,1969,2014,2051,2093,2130,2171,2209,
+2248,2274,2308,2323,2333,2366,2386,2398,2426,2463,2504,2549,2583,2603,2611,2609,2601,2592,2581,2575,
+2569,2565,2566,2569,2572,2572,2586,2607,2625,2656,2701,2761,2848,2975,3100,3130,3152,3199,3288,3343,
+3380,3399,3417,3416,3424,3438,3424,3391,3373,3363,3324,3300,3277,3256,3244,3223,3213,3199,3182,3166,
+3148,3119,3077,3032,2998,2978,2962,2936,2903,2872,2847,2821,2797,2780,2771,2763,2744,2726,2716,2702,
+2687,2700,2703,2712,2724,2721,2701,2677,2644,2622,2630,2657,2701,2761,2817,2870,2919,2956,2968,2985,
+3015,3032,3121,3155,3182,3074,3051,3069,3127,3129,3099,3104,3101,3078,2990,2902,2844,2803,2772,2747,
+2724,2704,2677,2640,2606,2582,2558,2513,2495,2503,2481,2452,2423,2415,2448,2515,2583,2658,2720,2733,
+2736,2715,2679,2637,2574,2526,2540,2474,2400,2350,2322,2249,2217,2176,2150,2127,2099,2086,2068,2035,
+1999,1986,2003,1996,2002,2011,2004,1996,1989,1992,1994,2002,1985,1974,1956,1928,1927,1913,1847,1749,
+1648,1541,1435,1357,1294,1240,1222,1212,1205,1210,1218,1227,1241,1259,1274,1274,1265,1268,1265,1274,
+1278,1272,1265,1254,1237,1218,1213,1225,1238,1250,1264,1269,1239,1188,1138,1099,1075,1048,1029,987,
+941,898,870,851,829,812,801,804,807,798,787,772,755,735,714,706,702,683,643,585,
+547,523,526,547,565,560,603,629,656,635,576,483,394,279,194,170,171,195,172,172,
+154,108,72,42,36,60,90,63,-1,30,117,370,368,287,143,13,-85,-201,-297,-408,
+-581,-714,-862,-1009,-1112,-1234,-1366,-1486,-1613,-1714,-1828,-1930,-2066,-2221,-2333,-2411,-2508,-2605,-2687,-2766,
+-2845,-2915,-2979,-3038,-3096,-3148,-3196,-3231,-3277,-3315,-3355,-3400,-3425,-3447,-3467,-3496,-3538,-3581,-3614,-3637,
+-3652,-3661,-3664,-3667,-3684,-3687,-3675,-3651,-3610,-3521,-3448,-3393,-3363,-3375,-3488,-3591,-3679,-3791,-3933,-4022,
+-4096,-4141,-4188,-4266,-4349,-4443,-4570,-4880,-5005,-4989,-4960,-4940,-4943,-4968,-5011,-5062,-5112,-5179,-5240,-5292,
+-5349,-5398,-5442,-5485,-5531,-5559,-5569,-5591,-5634,-5684,-5744,-5819,-5895,-5982,-6085,-6202,-6340,-6462,-6530,-6523,
+-6434,-6287,-6218,-6233,-6307,-6400,-6497,-6619,-6698,-6698,-6654,-6666,-6622,-6587,-6625,-6771,-6887,-6892,-6785,-6765,
+-6774,-6803,-6831,-6855,-6878,-6893,-6914,-6930,-6945,-6957,-6965,-6966,-6958,-6955,-6951,-6943,-6930,-6932,-6947,-6962,
+-6993,-7050,-7044,-6998,-6954,-6883,-6801,-6709,-6679,-6651,-6623,-6597,-6583,-6554,-6543,-6417,-6377,-6356,-6358,-6333,
+-6327,-6367,-6406,-6400,-6405,-6448,-6502,-6541,-6587,-6615,-6619,-6615,-6617,-6596,-6548,-6469,-6404,-6356,-6321,-6300,
+-6291,-6290,-6253,-6181,-6089,-6001,-5935,-5892,-5861,-5830,-5789,-5736,-5664,-5565,-5475,-5410,-5390,-5404,-5397,-5380,
+-5278,-5148,-5165,-5073,-4965,-4855,-4733,-4684,-4594,-4411,-4248,-4182,-4199,-4183,-4131,-4093,-4031,-3976,-3917,-3945,
+-3883,-3849,-3828,-3780,-3725,-3619,-3564,-3472,-3368,-3379,-3369,-3269,-3177,-3105,-3060,-3001,-2941,-2912,-2846,-2770,
+-2726,-2675,-2588,-2575,-2564,-2529,-2508,-2465,-2412,-2390,-2384,-2357,-2286,-2217,-2168,-2081,-1962,-1838,-1694,-1550,
+-1423,-1319,-1225,-1143,-1064,-972,-880,-779,-708,-629,-545,-445,-333,-246,-150,-40,51,130,222,295,
+344,412,481,557,642,734,864,1001,1093,1186,1250,1352,1436,1557,1669,1757,1862,1949,2020,2095,
+2176,2246,2265,2247,2259,2288,2392,2519,2733,3019,3126,3224,3073,2983,2889,2911,3000,3068,3138,3193,
+3237,3312,3346,3379,3407,3479,3543,3578,3606,3629,3654,3689,3729,3741,3748,3762,3779,3798,3820,3836,
+3872,3895,3886,3887,3907,3920,3926,3931,3939,3960,3974,3994,4011,4028,4049,4066,4085,4107,4129,4152,
+4176,4196,4222,4241,4258,4291,4375,4489,4503,4525,4557,4587,4625,4641,4680,4714,4758,4803,4822,4861,
+4846,4840,4907,4921,4942,4926,4914,4915,4909,4915,4914,4914,4924,5007,5043,5047,5010,4988,4986,4992,
+4967,4884,4839,4739,4626,4536,4383,4161,3896,3622,3378,3194,3130,3140,3409,3511,3586,3727,3901,4095,
+4101,3813,3722,3794,3926,4102,4033,3816,3771,3851,3850,3755,3582,3534,3499,3452,3515,3660,3461,3272,
+3157,3085,3020,2963,2912,2864,2820,2780,2739,2718,2719,2657,2599,2628,2788,2796,2513,2319,2229,2192,
+2195,2236,2225,2341,2447,2362,2115,1997,1949,1952,2027,2243,2256,2085,1883,1797,1736,1683,1628,1593,
+1599,1673,1824,1752,1539,1466,1531,1510,1469,1561,1619,1666,1587,1572,1402,1289,1208,1151,1117,1093,
+1070,1040,1006,986,984,917,838,829,760,738,871,878,671,631,679,712,691,666,673,719,
+661,657,671,638,634,629,656,707,704,677,631,559,543,558,545,538,538,530,514,499,
+520,632,471,455,486,515,493,497,524,538,528,551,505,486,468,470,466,501,516,561,
+619,608,561,572,590,618,649,650,707,807,844,836,853,855,856,841,859,945,957,993,
+1009,871,823,841,863,883,938,1059,1126,1072,958,909,898,894,888,875,863,853,844,839,
+835,830,833,839,840,842,841,840,840,835,831,813,792,780,780,786,794,788,780,773,
+766,767,767,768,765,763,746,723,706,693,679,653,620,582,563,541,536,688,1059,1775,
+2543,2744,2293,1685,1009,365,-10,-167,-231,-254,-260,-268,-281,-302,-334,-369,-408,-447,-490,-538,
+-578,-617,-652,-687,-722,-755,-787,-817,-848,-884,-914,-947,-979,-1013,-1041,-1072,-1112,-1155,-1196,-1240,
+-1286,-1334,-1386,-1431,-1472,-1515,-1554,-1598,-1644,-1678,-1705,-1751,-1793,-1838,-1891,-1944,-1989,-2035,-2080,-2124,
+-2166,-2207,-2240,-2269,-2295,-2331,-2367,-2407,-2445,-2486,-2525,-2564,-2610,-2660,-2706,-2749,-2793,-2836,-2864,-2912,
+-2962,-3011,-3060,-3107,-3153,-3193,-3247,-3308,-3367,-3414,-3451,-3477,-3513,-3551,-3588,-3626,-3660,-3694,-3733,-3767,
+-3808,-3842,-3878,-3914,-3946,-3984,-4022,-4060,-4094,-4121,-4145,-4178,-4217,-4257,-4288,-4306,-4316,-4346,-4382,-4398,
+-4418,-4437,-4469,-4489,-4523,-4552,-4578,-4594,-4609,-4626,-4643,-4651,-4667,-4686,-4696,-4703,-4710,-4719,-4721,-4731,
+-4735,-4723,-4716,-4712,-4710,-4703,-4690,-4684,-4668,-4652,-4627,-4604,-4585,-4565,-4548,-4523,-4498,-4469,-4446,-4417,
+-4378,-4340,-4292,-4254,-4221,-4185,-4147,-4110,-4064,-4020,-3977,-3930,-3884,-3835,-3785,-3738,-3689,-3646,-3596,-3533,
+-3441,-3443,-3397,-3354,-3299,-3255,-3207,-3187,-3220,-3110,-3010,-2945,-2952,-2932,-2909,-2860,-2846,-2868,-2937,-2974,
+-2840,-2641,-2443,-2194,-1988,-1857,-1663,-1553,-1508,-1442,-1420,-1412,-1424,-1282,-1113,-1136,-1087,-1019,-1018,-1030,
+-914,-859,-727,-662,-646,-564,-554,-527,-441,-418,-394,-354,-337,-351,-393,-623,-892,-1055,-1203,-1310,
+-1466,-1607,-1690,-1718,-1689,-1612,-1562,-1502,-1449,-1412,-1372,-1328,-1267,-1221,-1205,-1233,-1196,-1149,-1120,-1107,
+-1076,-1050,-1029,-981,-933,-910,-885,-864,-835,-785,-768,-781,-827,-953,-1197,-1337,-1408,-1491,-1463,-1408,
+-1377,-1379,-1397,-1410,-1441,-1495,-1558,-1600,-1603,-1583,-1569,-1585,-1618,-1657,-1720,-1730,-1714,-1679,-1684,-1753,
+-1777,-1847,-1876,-1911,-1946,-2022,-2109,-2153,-2190,-2270,-2413,-2525,-2552,-2596,-2694,-2813,-2951,-3079,-3142,-3192,
+-3209,-3180,-3179,-3174,-3163,-3117,-3030,-2934,-2878,-2908,-2948,-2921,-2760,-2758,-2836,-2957,-3057,-3153,-3285,-3445,
+-3627,-3752,-3859,-4078,-4426,-4731,-4976,-5254,-5552,-5971,-6261,-6431,-6549,-6691,-6822,-6934,-7021,-7079,-7072,-7011,
+-6901,-6786,-6690,-6591,-6452,-6332,-6262,-6236,-6242,-6251,-6266,-6267,-6221,-6111,-5960,-5758,-5561,-5395,-5257,-5150,
+-5071,-4989,-4892,-4799,-4742,-4692,-4656,-4632,-4636,-4660,-4688,-4708,-4720,-4734,-4724,-4697,-4675,-4646,-4593,-4523,
+-4443,-4387,-4315,-4255,-4220,-4185,-4158,-4120,-4094,-4074,-4054,-4013,-3979,-3954,-3886,-3849,-3797,-3746,-3674,-3626,
+-3568,-3466,-3386,-3334,-3292,-3251,-3149,-3067,-3013,-2930,-2831,-2759,-2689,-2615,-2539,-2461,-2359,-2278,-2204,-2168,
+-2056,-2000,-1982,-1968,-1931,-1873,-1829,-1798,-1750,-1703,-1657,-1615,-1565,-1530,-1487,-1441,-1402,-1365,-1314,-1275,
+-1240,-1198,-1167,-1110,-1048,-987,-940,-890,-837,-806,-752,-693,-642,-583,-504,-418,-369,-296,-232,-169,
+-92,-25,68,157,255,353,438,526,610,696,784,872,955,1041,1129,1201,1274,1343,1415,1468,
+1523,1574,1615,1652,1683,1710,1739,1762,1790,1813,1837,1865,1907,1944,1975,2019,2065,2106,2150,2196,
+2239,2276,2313,2343,2352,2362,2391,2422,2429,2454,2492,2541,2587,2622,2642,2648,2648,2641,2631,2618,
+2611,2604,2596,2592,2592,2592,2592,2601,2618,2629,2636,2651,2688,2751,2857,3018,3105,3148,3204,3289,
+3357,3396,3412,3434,3459,3473,3484,3466,3408,3367,3321,3273,3235,3197,3188,3187,3176,3174,3159,3150,
+3140,3123,3091,3046,2997,2963,2943,2927,2906,2879,2856,2833,2809,2784,2765,2757,2746,2729,2707,2694,
+2681,2677,2670,2665,2678,2702,2715,2695,2667,2643,2639,2649,2681,2713,2754,2795,2833,2884,2930,2959,
+2981,3030,3072,3155,3107,3056,3018,3007,3046,3106,3098,3065,3073,3081,3025,2931,2871,2808,2753,2716,
+2686,2669,2653,2627,2595,2569,2533,2501,2474,2477,2499,2459,2427,2401,2400,2453,2520,2588,2709,2829,
+2796,2758,2704,2654,2606,2563,2489,2487,2451,2384,2329,2313,2234,2179,2137,2118,2106,2079,2054,2030,
+1995,1966,1946,1961,1948,1947,1950,1929,1909,1900,1902,1915,1918,1897,1862,1821,1805,1792,1764,1727,
+1684,1603,1505,1411,1333,1283,1243,1231,1222,1213,1210,1199,1206,1216,1230,1234,1232,1256,1266,1255,
+1242,1232,1220,1211,1206,1193,1189,1198,1212,1229,1244,1258,1256,1214,1158,1104,1070,1046,1021,990,
+944,893,853,819,802,783,783,774,785,772,767,749,740,722,704,685,683,671,642,604,
+556,519,495,493,503,537,526,552,579,609,608,562,457,387,286,192,154,140,152,161,
+135,138,117,73,19,-15,-15,20,21,-51,-90,-14,245,410,314,199,78,-33,-168,-270,
+-415,-593,-716,-839,-1002,-1127,-1226,-1361,-1486,-1616,-1716,-1810,-1917,-2055,-2193,-2313,-2400,-2492,-2593,-2682,
+-2754,-2814,-2873,-2936,-2992,-3058,-3120,-3159,-3197,-3247,-3281,-3314,-3357,-3398,-3416,-3429,-3460,-3505,-3538,-3574,
+-3598,-3618,-3622,-3626,-3650,-3691,-3691,-3687,-3653,-3614,-3541,-3481,-3430,-3399,-3452,-3537,-3586,-3690,-3795,-4034,
+-4102,-4144,-4185,-4231,-4295,-4368,-4439,-4664,-4947,-5016,-5000,-4982,-4974,-4984,-5015,-5058,-5106,-5154,-5216,-5289,
+-5349,-5402,-5450,-5495,-5542,-5580,-5628,-5672,-5703,-5741,-5794,-5852,-5914,-5975,-6052,-6138,-6250,-6379,-6512,-6609,
+-6646,-6606,-6476,-6373,-6353,-6390,-6477,-6564,-6688,-6760,-6780,-6780,-6762,-6716,-6672,-6662,-6795,-6958,-6973,-6876,
+-6864,-6867,-6887,-6901,-6928,-6957,-6978,-7004,-7026,-7050,-7066,-7074,-7078,-7067,-7051,-7033,-7020,-7008,-7009,-7038,
+-7037,-7102,-7168,-7188,-7135,-7039,-6961,-6889,-6807,-6759,-6738,-6700,-6676,-6647,-6608,-6531,-6424,-6419,-6437,-6457,
+-6426,-6412,-6473,-6499,-6514,-6527,-6585,-6714,-6798,-6800,-6775,-6734,-6710,-6690,-6667,-6624,-6562,-6505,-6457,-6414,
+-6387,-6379,-6379,-6331,-6245,-6145,-6054,-5991,-5951,-5930,-5914,-5892,-5859,-5817,-5753,-5642,-5517,-5463,-5440,-5414,
+-5404,-5303,-5143,-5128,-5087,-4982,-4858,-4724,-4661,-4597,-4431,-4294,-4220,-4220,-4170,-4124,-4101,-4033,-3987,-3934,
+-3937,-3888,-3843,-3800,-3764,-3708,-3628,-3580,-3441,-3309,-3359,-3369,-3224,-3211,-3095,-3045,-2950,-2912,-2836,-2779,
+-2679,-2676,-2678,-2625,-2571,-2556,-2512,-2499,-2446,-2393,-2353,-2334,-2307,-2236,-2150,-2083,-2006,-1887,-1763,-1585,
+-1426,-1278,-1182,-1098,-1040,-976,-917,-818,-722,-648,-586,-494,-379,-282,-195,-91,3,86,166,259,
+331,394,478,554,643,720,800,899,1018,1143,1210,1291,1380,1495,1645,1757,1855,1956,2042,2109,
+2172,2237,2273,2284,2311,2370,2410,2503,2808,3082,3196,3196,3198,3110,3077,2952,2969,3064,3134,3194,
+3245,3295,3384,3418,3461,3461,3543,3589,3631,3657,3681,3701,3747,3779,3788,3796,3814,3834,3858,3879,
+3892,3915,3938,3930,3944,3961,3954,3957,3969,3976,3989,4009,4027,4043,4065,4082,4089,4117,4135,4160,
+4182,4203,4226,4253,4268,4293,4346,4422,4463,4515,4551,4590,4614,4649,4681,4716,4752,4783,4818,4847,
+4870,4863,4834,4939,4942,4944,4940,4935,4932,4930,4925,4928,4930,4940,4972,5023,5112,5061,5003,4999,
+4992,4988,4928,4867,4782,4645,4544,4395,4171,3986,3785,3549,3372,3195,3108,3259,3407,3522,3654,3769,
+3835,3845,3802,3757,3796,3862,3963,3928,3780,3736,3743,3738,3687,3618,3683,3713,3510,3456,3459,3390,
+3292,3211,3153,3095,3039,2984,2926,2875,2820,2764,2707,2673,2634,2580,2567,2624,2642,2617,2377,2265,
+2233,2245,2302,2234,2229,2246,2202,2095,2018,1995,1983,2008,2118,2132,1999,1905,1845,1802,1761,1707,
+1665,1663,1778,2029,2005,1658,1517,1530,1528,1525,1678,1738,1617,1661,1702,1487,1351,1268,1218,1177,
+1153,1126,1093,1057,1036,1061,967,867,943,998,975,979,861,710,684,828,878,904,782,709,
+719,746,712,698,710,691,664,650,676,667,673,682,632,636,664,568,552,552,554,548,
+534,525,552,545,490,608,521,505,482,503,521,531,525,518,518,514,516,518,530,551,
+591,617,638,620,668,636,650,682,724,816,873,890,836,840,849,825,826,894,943,952,
+995,937,882,836,872,972,1058,1135,1160,1029,904,901,909,906,897,885,869,854,848,844,
+838,828,827,829,827,824,824,820,817,811,798,791,775,762,757,762,764,766,770,769,
+770,763,765,768,767,758,748,745,734,729,715,707,685,664,621,601,585,549,672,978,
+1517,2281,2255,1795,1222,603,167,-57,-164,-211,-243,-255,-261,-272,-289,-318,-352,-394,-434,-480,
+-531,-576,-617,-651,-685,-719,-746,-777,-804,-831,-866,-895,-926,-959,-990,-1017,-1048,-1091,-1132,-1178,
+-1226,-1273,-1319,-1364,-1406,-1445,-1487,-1527,-1570,-1615,-1652,-1683,-1732,-1776,-1820,-1878,-1932,-1976,-2020,-2063,
+-2105,-2148,-2192,-2227,-2258,-2287,-2319,-2359,-2399,-2435,-2474,-2509,-2545,-2584,-2631,-2676,-2723,-2767,-2811,-2857,
+-2904,-2952,-3001,-3051,-3099,-3144,-3187,-3239,-3290,-3348,-3397,-3442,-3477,-3510,-3542,-3582,-3622,-3658,-3688,-3728,
+-3765,-3805,-3841,-3876,-3914,-3951,-3989,-4028,-4055,-4075,-4099,-4131,-4166,-4204,-4243,-4277,-4296,-4308,-4341,-4367,
+-4393,-4401,-4409,-4444,-4411,-4495,-4524,-4565,-4584,-4598,-4609,-4638,-4643,-4658,-4671,-4679,-4690,-4697,-4707,-4715,
+-4723,-4730,-4716,-4712,-4703,-4704,-4692,-4677,-4668,-4652,-4639,-4619,-4605,-4589,-4567,-4552,-4528,-4505,-4475,-4438,
+-4400,-4358,-4333,-4288,-4260,-4221,-4185,-4139,-4096,-4054,-4006,-3960,-3912,-3862,-3819,-3769,-3714,-3678,-3632,-3585,
+-3506,-3429,-3441,-3403,-3338,-3277,-3234,-3200,-3156,-3128,-3158,-3121,-2987,-2901,-2878,-2881,-2862,-2833,-2811,-2834,
+-2890,-2901,-2748,-2543,-2301,-2083,-1952,-1836,-1671,-1648,-1560,-1409,-1463,-1483,-1341,-1213,-1256,-1144,-1063,-1089,
+-1097,-1093,-992,-840,-691,-615,-580,-484,-508,-431,-433,-410,-335,-349,-330,-343,-642,-905,-1125,-1249,
+-1258,-1285,-1434,-1525,-1570,-1554,-1497,-1456,-1411,-1366,-1333,-1287,-1222,-1168,-1125,-1137,-1183,-1161,-1119,-1080,
+-1057,-1036,-1016,-988,-938,-889,-850,-819,-785,-758,-724,-706,-713,-783,-929,-1192,-1293,-1402,-1420,-1356,
+-1323,-1314,-1327,-1364,-1387,-1427,-1483,-1499,-1491,-1478,-1488,-1492,-1520,-1582,-1627,-1668,-1654,-1582,-1541,-1568,
+-1712,-1803,-1910,-2003,-2096,-2138,-2215,-2289,-2344,-2366,-2399,-2464,-2509,-2547,-2591,-2648,-2689,-2811,-2855,-2867,
+-2894,-2979,-2974,-3005,-2972,-2929,-2869,-2792,-2739,-2668,-2723,-2815,-2856,-2717,-2651,-2693,-2781,-2814,-2837,-2849,
+-2937,-3182,-3469,-3665,-3839,-4059,-4247,-4512,-4890,-5241,-5718,-6040,-6144,-6231,-6438,-6633,-6694,-6810,-6868,-6828,
+-6772,-6705,-6558,-6338,-6154,-6020,-6005,-5985,-5965,-6037,-6056,-6196,-6305,-6313,-6278,-6185,-6046,-5882,-5709,-5549,
+-5418,-5297,-5192,-5081,-4967,-4886,-4815,-4754,-4698,-4684,-4712,-4740,-4762,-4779,-4774,-4747,-4719,-4692,-4641,-4599,
+-4526,-4456,-4363,-4294,-4244,-4225,-4204,-4168,-4139,-4111,-4076,-4037,-4010,-3959,-3909,-3884,-3861,-3813,-3761,-3713,
+-3651,-3601,-3534,-3445,-3373,-3308,-3262,-3189,-3107,-3016,-2944,-2897,-2828,-2755,-2680,-2578,-2473,-2372,-2285,-2223,
+-2224,-2123,-2082,-2039,-2011,-1983,-1945,-1896,-1852,-1802,-1757,-1723,-1676,-1634,-1596,-1542,-1486,-1448,-1400,-1357,
+-1310,-1272,-1230,-1188,-1138,-1101,-1055,-1008,-964,-900,-850,-795,-726,-675,-619,-533,-458,-400,-339,-244,
+-186,-112,-43,49,136,228,322,406,488,575,676,756,843,922,1007,1078,1159,1227,1301,1368,
+1426,1481,1530,1569,1610,1638,1674,1707,1742,1763,1791,1818,1852,1884,1928,1982,2024,2073,2117,2166,
+2217,2260,2289,2315,2341,2362,2385,2408,2433,2461,2488,2520,2566,2609,2644,2665,2676,2678,2675,2666,
+2652,2644,2633,2619,2614,2611,2609,2608,2614,2621,2626,2619,2621,2643,2690,2783,2924,3076,3135,3218,
+3321,3380,3405,3424,3447,3482,3521,3539,3493,3431,3371,3301,3246,3195,3169,3163,3158,3157,3144,3137,
+3121,3106,3087,3059,3018,2975,2941,2921,2906,2887,2861,2839,2819,2797,2774,2755,2743,2735,2720,2701,
+2682,2668,2666,2647,2638,2658,2688,2697,2672,2651,2639,2654,2681,2711,2742,2775,2810,2835,2880,2926,
+2960,2990,3037,3092,3107,3039,3025,2975,2976,3046,3089,3058,3027,3033,3020,2931,2853,2811,2747,2683,
+2635,2605,2597,2593,2578,2566,2538,2497,2468,2458,2453,2465,2434,2417,2389,2391,2452,2519,2584,2705,
+2852,2852,2793,2729,2646,2594,2547,2463,2432,2431,2363,2324,2296,2225,2155,2106,2079,2078,2055,2026,
+1987,1946,1928,1923,1909,1906,1903,1886,1859,1840,1829,1830,1839,1838,1818,1773,1718,1682,1662,1636,
+1603,1573,1517,1446,1373,1315,1287,1245,1227,1219,1206,1194,1180,1187,1184,1166,1165,1178,1226,1236,
+1225,1202,1189,1177,1171,1168,1164,1168,1183,1204,1225,1243,1250,1220,1169,1110,1061,1030,1009,981,
+948,898,845,804,777,759,747,751,749,747,746,741,722,731,707,688,674,661,639,608,
+580,546,513,492,483,487,508,497,512,539,575,584,558,469,375,304,225,176,143,118,
+122,126,115,104,73,17,-41,-67,-47,-19,-53,-118,-100,94,377,313,200,85,-21,-143,
+-275,-416,-594,-726,-861,-1008,-1150,-1265,-1379,-1499,-1617,-1710,-1793,-1905,-2044,-2170,-2289,-2378,-2475,-2581,
+-2665,-2738,-2804,-2857,-2902,-2953,-3016,-3078,-3122,-3159,-3202,-3238,-3274,-3318,-3345,-3360,-3386,-3420,-3470,-3501,
+-3526,-3554,-3568,-3571,-3590,-3634,-3677,-3673,-3671,-3636,-3593,-3546,-3506,-3467,-3451,-3536,-3553,-3625,-3732,-3974,
+-4110,-4159,-4205,-4240,-4274,-4341,-4427,-4533,-4858,-5040,-5045,-5027,-5020,-5017,-5028,-5060,-5097,-5151,-5211,-5273,
+-5336,-5392,-5450,-5513,-5579,-5643,-5696,-5740,-5794,-5840,-5868,-5915,-5969,-6014,-6061,-6131,-6208,-6301,-6408,-6525,
+-6647,-6722,-6759,-6693,-6581,-6509,-6497,-6544,-6597,-6674,-6740,-6779,-6833,-6838,-6845,-6809,-6767,-6893,-7028,-7025,
+-6972,-6986,-6986,-6973,-6987,-6995,-7019,-7043,-7068,-7094,-7123,-7150,-7161,-7162,-7153,-7148,-7134,-7120,-7106,-7109,
+-7135,-7143,-7172,-7246,-7274,-7241,-7108,-7012,-6982,-6949,-6890,-6830,-6780,-6759,-6721,-6657,-6535,-6451,-6490,-6545,
+-6570,-6553,-6551,-6621,-6659,-6686,-6712,-6800,-6923,-6975,-6953,-6901,-6831,-6775,-6741,-6721,-6694,-6655,-6596,-6537,
+-6484,-6460,-6458,-6441,-6378,-6286,-6177,-6088,-6027,-5990,-5966,-5955,-5944,-5925,-5899,-5858,-5790,-5672,-5545,-5511,
+-5450,-5401,-5317,-5144,-5035,-5065,-5002,-4874,-4731,-4641,-4597,-4486,-4335,-4210,-4222,-4169,-4097,-4066,-3986,-3953,
+-3919,-3937,-3868,-3813,-3772,-3741,-3699,-3603,-3567,-3443,-3314,-3356,-3356,-3324,-3269,-3205,-3115,-2975,-2926,-2954,
+-2865,-2725,-2683,-2604,-2605,-2609,-2557,-2508,-2477,-2421,-2370,-2325,-2302,-2265,-2192,-2099,-2001,-1917,-1812,-1711,
+-1516,-1332,-1139,-1040,-977,-942,-908,-854,-762,-678,-608,-536,-439,-331,-239,-137,-49,26,103,196,
+286,363,425,503,586,670,766,859,943,1054,1170,1256,1340,1458,1597,1732,1849,1955,2047,2130,
+2193,2245,2274,2301,2344,2437,2524,2561,2747,2989,3286,3308,3380,3372,3265,3181,3023,2992,3117,3192,
+3246,3298,3370,3445,3495,3526,3546,3617,3651,3682,3705,3732,3770,3813,3821,3856,3885,3885,3895,3903,
+3923,3942,3952,3985,3970,3987,3990,3984,3993,3999,4007,4023,4041,4061,4079,4097,4111,4125,4144,4170,
+4191,4214,4233,4259,4281,4297,4326,4384,4483,4509,4545,4582,4613,4643,4672,4708,4733,4757,4794,4833,
+4882,4888,4876,4844,4920,4958,4964,4974,4951,4946,4938,4934,4937,4942,4947,4977,5066,5123,5096,5035,
+5028,5017,5035,4981,4905,4818,4693,4549,4403,4162,3992,3868,3710,3542,3294,3096,3104,3270,3471,3661,
+3827,3849,3804,3807,3821,3840,3861,3882,3859,3782,3740,3722,3689,3640,3605,3631,3625,3497,3438,3408,
+3364,3307,3252,3199,3150,3116,3062,2981,2923,2865,2805,2748,2702,2655,2595,2553,2538,2518,2491,2376,
+2287,2250,2239,2232,2212,2188,2165,2120,2074,2064,2089,2051,2024,2048,2027,1957,1929,1903,1874,1839,
+1787,1739,1729,1847,1963,2001,1709,1553,1520,1523,1535,1581,1608,1567,1570,1552,1467,1388,1324,1277,
+1241,1210,1177,1140,1105,1100,1137,1062,950,1028,1187,1166,1072,986,825,739,811,858,869,806,
+769,787,781,759,734,728,764,732,686,681,667,673,658,627,580,571,569,563,564,568,
+570,562,546,529,521,511,536,543,504,490,496,512,557,543,542,551,550,553,570,574,
+597,614,631,640,663,723,677,683,744,894,908,900,861,851,850,824,812,792,873,969,
+939,961,976,940,902,984,1056,1030,1005,945,895,885,911,926,926,919,897,878,857,848,
+840,834,828,817,809,805,798,792,782,777,781,780,780,765,738,715,705,708,731,745,
+747,758,754,756,757,757,747,734,736,746,754,735,736,740,692,617,585,579,563,637,
+835,1222,1636,1486,1139,684,304,54,-89,-134,-143,-202,-231,-244,-255,-276,-302,-336,-377,-419,
+-466,-517,-567,-611,-645,-678,-706,-728,-756,-784,-815,-846,-876,-906,-935,-967,-992,-1030,-1073,-1114,
+-1159,-1205,-1250,-1299,-1343,-1387,-1431,-1472,-1510,-1553,-1597,-1633,-1667,-1715,-1756,-1808,-1869,-1917,-1960,-2005,
+-2043,-2083,-2125,-2173,-2212,-2245,-2275,-2311,-2349,-2387,-2420,-2456,-2492,-2530,-2570,-2610,-2655,-2699,-2747,-2795,
+-2848,-2897,-2945,-2994,-3039,-3084,-3125,-3176,-3239,-3283,-3331,-3376,-3420,-3465,-3503,-3532,-3567,-3609,-3651,-3691,
+-3729,-3769,-3805,-3841,-3880,-3915,-3947,-3979,-4015,-4036,-4057,-4082,-4120,-4154,-4186,-4218,-4249,-4284,-4291,-4313,
+-4334,-4362,-4382,-4394,-4417,-4432,-4472,-4501,-4546,-4569,-4581,-4594,-4625,-4632,-4641,-4656,-4663,-4676,-4691,-4697,
+-4708,-4713,-4724,-4719,-4713,-4703,-4698,-4685,-4672,-4663,-4653,-4642,-4629,-4616,-4598,-4580,-4560,-4533,-4500,-4473,
+-4439,-4407,-4381,-4347,-4308,-4261,-4222,-4184,-4140,-4096,-4046,-3999,-3947,-3899,-3851,-3803,-3739,-3655,-3659,-3626,
+-3559,-3482,-3470,-3451,-3404,-3339,-3270,-3228,-3174,-3117,-3087,-3107,-3032,-3048,-2993,-2859,-2804,-2799,-2779,-2749,
+-2732,-2731,-2775,-2789,-2657,-2435,-2263,-2099,-1966,-1844,-1712,-1581,-1448,-1402,-1458,-1407,-1348,-1300,-1182,-1125,
+-1174,-1155,-1153,-1078,-955,-776,-644,-640,-606,-568,-461,-434,-433,-389,-369,-326,-338,-652,-913,-1134,
+-1286,-1298,-1240,-1221,-1270,-1339,-1370,-1371,-1357,-1328,-1290,-1253,-1201,-1140,-1097,-1084,-1099,-1126,-1104,-1051,
+-1024,-1002,-979,-967,-948,-910,-849,-795,-767,-731,-715,-698,-671,-696,-765,-960,-1153,-1223,-1335,-1332,
+-1273,-1260,-1269,-1298,-1343,-1391,-1437,-1408,-1409,-1326,-1267,-1327,-1341,-1375,-1439,-1503,-1542,-1572,-1595,-1623,
+-1692,-1787,-1877,-1922,-1955,-1990,-2007,-2040,-2104,-2202,-2264,-2309,-2353,-2395,-2459,-2529,-2572,-2624,-2616,-2662,
+-2663,-2669,-2699,-2719,-2762,-2748,-2737,-2742,-2784,-2834,-2805,-2642,-2608,-2684,-2665,-2540,-2572,-2710,-2768,-2777,
+-2775,-2745,-2885,-3122,-3382,-3547,-3697,-3895,-4128,-4402,-4713,-5105,-5375,-5535,-5679,-5924,-6107,-6120,-6225,-6231,
+-6068,-6018,-5982,-5841,-5649,-5516,-5442,-5448,-5484,-5493,-5656,-5791,-6047,-6145,-6187,-6259,-6246,-6185,-6099,-6007,
+-5889,-5745,-5593,-5442,-5300,-5171,-5056,-4960,-4876,-4796,-4767,-4767,-4774,-4773,-4777,-4761,-4744,-4720,-4681,-4628,
+-4567,-4509,-4445,-4371,-4314,-4271,-4233,-4211,-4169,-4117,-4086,-4077,-4060,-4036,-3990,-3938,-3907,-3875,-3817,-3756,
+-3724,-3687,-3627,-3570,-3503,-3418,-3354,-3296,-3235,-3157,-3096,-3003,-2920,-2844,-2762,-2684,-2618,-2541,-2450,-2367,
+-2304,-2277,-2196,-2157,-2108,-2068,-2021,-1975,-1941,-1905,-1853,-1806,-1760,-1723,-1691,-1648,-1609,-1565,-1516,-1475,
+-1423,-1383,-1328,-1284,-1234,-1177,-1125,-1078,-1034,-985,-934,-875,-815,-760,-703,-648,-568,-492,-436,-364,
+-281,-207,-142,-65,25,109,204,288,375,461,545,642,730,814,887,967,1032,1109,1182,1257,
+1323,1386,1439,1485,1525,1562,1597,1636,1674,1711,1743,1775,1808,1843,1890,1925,1975,2022,2072,2117,
+2166,2213,2255,2286,2318,2346,2364,2389,2422,2444,2484,2512,2548,2586,2624,2655,2676,2687,2697,2698,
+2692,2678,2666,2654,2636,2628,2626,2623,2624,2622,2625,2627,2617,2604,2613,2653,2735,2880,3060,3149,
+3241,3371,3407,3396,3398,3431,3475,3521,3549,3521,3454,3376,3290,3239,3181,3154,3153,3159,3158,3150,
+3129,3094,3065,3042,3017,2988,2955,2925,2906,2891,2873,2851,2828,2809,2790,2770,2751,2739,2730,2718,
+2701,2683,2668,2656,2636,2638,2667,2686,2679,2658,2649,2656,2678,2693,2716,2755,2787,2817,2853,2897,
+2937,2975,3012,3038,3054,3039,3015,2986,2911,2950,3013,3046,3008,2982,2984,2950,2864,2792,2734,2672,
+2597,2549,2533,2536,2527,2515,2508,2485,2466,2448,2431,2424,2430,2407,2397,2376,2383,2439,2509,2585,
+2654,2748,2792,2771,2757,2673,2611,2554,2470,2390,2394,2353,2302,2273,2205,2147,2079,2048,2046,2025,
+1995,1957,1928,1901,1890,1869,1854,1847,1823,1797,1782,1770,1762,1759,1760,1739,1690,1623,1575,1543,
+1512,1474,1440,1413,1377,1324,1288,1274,1246,1217,1200,1194,1185,1161,1143,1134,1129,1135,1168,1196,
+1207,1198,1178,1161,1155,1152,1155,1160,1165,1185,1208,1220,1224,1212,1181,1121,1060,1017,993,970,
+944,907,858,804,767,750,741,735,719,717,710,721,709,698,699,694,681,660,637,607,
+575,558,538,509,488,484,490,466,457,490,518,532,562,545,504,375,290,232,182,156,
+113,74,73,86,77,53,18,-48,-94,-93,-68,-70,-112,-118,-24,322,285,167,105,1,
+-100,-238,-399,-597,-746,-874,-1010,-1157,-1297,-1400,-1504,-1603,-1699,-1792,-1906,-2024,-2142,-2254,-2344,-2437,
+-2527,-2625,-2711,-2784,-2838,-2878,-2929,-2981,-3038,-3073,-3111,-3156,-3184,-3222,-3270,-3284,-3299,-3333,-3377,-3412,
+-3453,-3475,-3498,-3504,-3513,-3537,-3578,-3623,-3640,-3621,-3574,-3543,-3541,-3520,-3513,-3522,-3577,-3604,-3710,-3902,
+-4099,-4186,-4214,-4258,-4300,-4342,-4420,-4540,-4809,-5075,-5134,-5102,-5078,-5068,-5058,-5065,-5097,-5136,-5193,-5262,
+-5324,-5386,-5446,-5512,-5584,-5656,-5722,-5787,-5848,-5916,-5976,-6017,-6051,-6089,-6126,-6160,-6211,-6282,-6359,-6447,
+-6549,-6658,-6777,-6852,-6861,-6808,-6731,-6654,-6643,-6664,-6704,-6759,-6806,-6859,-6895,-6936,-6953,-6957,-7063,-7154,
+-7109,-7099,-7102,-7106,-7116,-7115,-7123,-7132,-7125,-7131,-7145,-7168,-7200,-7213,-7224,-7226,-7237,-7228,-7211,-7193,
+-7191,-7198,-7217,-7241,-7316,-7352,-7334,-7225,-7109,-7093,-7058,-6986,-6954,-6919,-6854,-6783,-6675,-6534,-6481,-6638,
+-6704,-6685,-6745,-6772,-6813,-6846,-6893,-6969,-7071,-7120,-7101,-7045,-6965,-6893,-6837,-6809,-6791,-6772,-6728,-6671,
+-6605,-6554,-6531,-6525,-6486,-6410,-6309,-6198,-6107,-6050,-6008,-5976,-5961,-5953,-5944,-5936,-5908,-5866,-5808,-5698,
+-5576,-5495,-5387,-5313,-5158,-5003,-5044,-5026,-4900,-4744,-4626,-4579,-4499,-4331,-4142,-4201,-4177,-4092,-4050,-3985,
+-3904,-3917,-3944,-3880,-3831,-3767,-3750,-3681,-3592,-3565,-3437,-3312,-3336,-3370,-3357,-3334,-3274,-3151,-3028,-2975,
+-3016,-2997,-2873,-2772,-2635,-2538,-2514,-2520,-2480,-2441,-2402,-2353,-2299,-2269,-2224,-2151,-2057,-1952,-1850,-1781,
+-1679,-1477,-1272,-1161,-1019,-945,-893,-876,-813,-718,-647,-573,-500,-414,-309,-205,-114,-34,20,106,
+216,306,375,436,499,601,702,798,899,993,1095,1210,1302,1410,1551,1701,1822,1927,2023,2109,
+2178,2233,2279,2310,2354,2446,2579,2691,2895,3179,3315,3411,3401,3415,3393,3397,3312,3091,3020,3151,
+3240,3302,3373,3454,3484,3553,3603,3627,3690,3713,3736,3753,3795,3840,3861,3879,3924,3940,3940,3973,
+3977,3985,3985,4006,4016,4004,4024,4028,4026,4034,4036,4044,4060,4076,4090,4115,4133,4148,4158,4176,
+4195,4219,4238,4260,4297,4313,4333,4368,4442,4509,4540,4576,4607,4641,4674,4693,4722,4752,4780,4808,
+4848,4877,4913,4919,4904,4928,4964,4972,4981,4973,4965,4961,4950,4945,4947,4962,5013,5040,5108,5139,
+5072,5071,5068,5042,5013,4946,4864,4753,4658,4510,4185,3996,3862,3713,3563,3384,3175,3112,3261,3458,
+3666,3897,3887,3855,3871,3893,3906,3913,3891,3853,3808,3770,3768,3708,3638,3598,3576,3544,3488,3441,
+3410,3376,3333,3285,3236,3194,3167,3135,3049,2978,2912,2857,2805,2750,2696,2634,2581,2527,2477,2426,
+2369,2314,2282,2266,2249,2229,2205,2171,2129,2100,2148,2191,2082,2040,2027,2014,2038,1988,1964,1950,
+1922,1872,1811,1782,1803,1876,1906,1744,1609,1595,1585,1571,1587,1610,1572,1552,1606,1482,1426,1382,
+1341,1302,1262,1222,1179,1148,1154,1196,1172,1119,1183,1302,1277,1181,1127,1051,875,901,832,827,
+827,836,833,819,801,810,784,771,764,728,704,684,685,715,652,606,596,614,593,577,
+567,574,573,565,550,535,530,602,613,592,585,603,548,525,546,554,561,558,563,586,
+601,669,650,670,679,716,785,773,778,831,915,903,894,895,859,841,842,802,791,801,
+908,937,972,959,932,948,992,896,919,899,875,881,904,931,950,950,934,903,883,868,
+856,849,834,816,799,784,771,770,764,757,763,761,755,755,739,718,697,683,690,694,
+712,722,731,737,740,740,741,734,727,747,794,741,757,869,769,689,629,617,649,555,
+581,655,792,960,808,600,341,141,-2,-93,-141,-166,-190,-207,-223,-239,-263,-289,-324,-364,
+-407,-457,-499,-545,-588,-624,-656,-683,-706,-734,-762,-795,-829,-858,-885,-912,-968,-979,-1010,-1049,
+-1087,-1131,-1176,-1225,-1271,-1319,-1364,-1413,-1457,-1497,-1540,-1579,-1614,-1656,-1698,-1747,-1797,-1851,-1901,-1943,
+-1983,-2020,-2061,-2106,-2155,-2198,-2235,-2266,-2303,-2339,-2374,-2406,-2442,-2479,-2514,-2556,-2597,-2640,-2683,-2730,
+-2781,-2834,-2892,-2943,-2987,-3027,-3067,-3114,-3163,-3230,-3272,-3312,-3360,-3405,-3450,-3491,-3526,-3560,-3601,-3645,
+-3690,-3732,-3770,-3803,-3839,-3873,-3906,-3941,-3971,-3999,-4018,-4043,-4078,-4117,-4147,-4174,-4199,-4229,-4261,-4289,
+-4298,-4312,-4334,-4360,-4369,-4393,-4423,-4451,-4484,-4514,-4541,-4554,-4574,-4591,-4604,-4614,-4626,-4640,-4649,-4668,
+-4681,-4702,-4710,-4726,-4726,-4715,-4699,-4692,-4684,-4677,-4673,-4657,-4644,-4625,-4605,-4582,-4562,-4544,-4523,-4497,
+-4476,-4448,-4411,-4376,-4344,-4307,-4273,-4229,-4191,-4153,-4104,-4054,-4006,-3954,-3904,-3853,-3803,-3749,-3701,-3654,
+-3616,-3542,-3397,-3442,-3442,-3397,-3341,-3281,-3239,-3190,-3130,-3079,-3038,-3032,-2991,-2958,-2879,-2768,-2730,-2703,
+-2698,-2674,-2642,-2635,-2598,-2614,-2573,-2378,-2261,-2150,-1969,-1766,-1520,-1361,-1247,-1296,-1250,-1288,-1278,-1221,
+-1141,-1165,-1167,-1136,-1079,-996,-861,-765,-765,-796,-763,-644,-579,-546,-479,-421,-368,-415,-652,-913,
+-1111,-1283,-1312,-1253,-1111,-988,-1030,-1148,-1242,-1278,-1266,-1232,-1176,-1123,-1090,-1069,-1074,-1097,-1101,-1058,
+-992,-954,-941,-919,-911,-896,-860,-805,-744,-720,-706,-693,-690,-677,-703,-789,-945,-1030,-1175,-1305,
+-1248,-1208,-1211,-1242,-1302,-1352,-1367,-1373,-1329,-1259,-1125,-1144,-1175,-1187,-1294,-1363,-1430,-1488,-1527,-1556,
+-1458,-1454,-1500,-1628,-1659,-1716,-1771,-1793,-1864,-1947,-2046,-2120,-2160,-2180,-2203,-2253,-2329,-2403,-2466,-2495,
+-2497,-2492,-2486,-2466,-2509,-2565,-2594,-2600,-2612,-2603,-2748,-2794,-2739,-2601,-2561,-2605,-2598,-2564,-2619,-2621,
+-2690,-2819,-2920,-2908,-3029,-3230,-3425,-3593,-3736,-3917,-4109,-4275,-4494,-4699,-4868,-5088,-5457,-5436,-5404,-5439,
+-5388,-5283,-5234,-5197,-5140,-5058,-4945,-4825,-4859,-4929,-5098,-5416,-5525,-5614,-5626,-5704,-5915,-6055,-6145,-6188,
+-6152,-6094,-5999,-5864,-5689,-5512,-5351,-5208,-5086,-4988,-4902,-4858,-4831,-4817,-4797,-4767,-4727,-4704,-4690,-4663,
+-4614,-4559,-4493,-4442,-4395,-4333,-4282,-4241,-4206,-4162,-4109,-4080,-4073,-4068,-4053,-4016,-3972,-3912,-3854,-3811,
+-3783,-3732,-3699,-3658,-3593,-3510,-3441,-3393,-3331,-3266,-3196,-3122,-3047,-2971,-2885,-2832,-2716,-2622,-2521,-2437,
+-2384,-2379,-2253,-2213,-2158,-2118,-2121,-2083,-2032,-1973,-1929,-1903,-1860,-1817,-1763,-1731,-1693,-1656,-1622,-1563,
+-1513,-1458,-1421,-1371,-1331,-1280,-1225,-1168,-1123,-1063,-1024,-970,-916,-853,-799,-736,-672,-598,-523,-467,
+-394,-317,-232,-164,-80,0,84,173,257,345,434,522,610,703,786,859,933,1008,1088,1153,
+1208,1275,1339,1388,1442,1486,1525,1564,1605,1648,1686,1723,1762,1794,1829,1874,1912,1957,2008,2053,
+2103,2177,2216,2253,2305,2333,2356,2374,2396,2424,2456,2488,2524,2560,2597,2632,2657,2676,2690,2702,
+2713,2710,2697,2680,2668,2649,2637,2634,2632,2630,2628,2635,2634,2629,2611,2608,2646,2723,2888,3034,
+3171,3282,3397,3413,3373,3355,3393,3448,3503,3533,3543,3485,3400,3303,3230,3169,3143,3143,3169,3177,
+3159,3127,3077,3032,3005,2974,2949,2923,2901,2881,2870,2855,2835,2817,2799,2786,2770,2755,2743,2732,
+2721,2700,2681,2667,2654,2647,2663,2692,2699,2679,2664,2665,2678,2699,2707,2722,2754,2791,2829,2878,
+2920,2950,2970,2986,3007,3005,3015,2978,2913,2874,2914,2949,2981,2943,2909,2885,2839,2790,2738,2676,
+2610,2535,2486,2477,2480,2465,2465,2465,2440,2442,2426,2386,2385,2396,2387,2369,2358,2378,2425,2496,
+2551,2616,2699,2729,2714,2718,2670,2597,2540,2450,2356,2339,2344,2293,2251,2185,2134,2054,2023,2019,
+1997,1963,1941,1921,1897,1878,1850,1823,1793,1757,1730,1721,1712,1698,1684,1680,1662,1622,1556,1496,
+1445,1414,1386,1360,1347,1334,1312,1290,1260,1218,1187,1183,1178,1166,1148,1131,1118,1116,1126,1144,
+1179,1181,1156,1146,1152,1158,1149,1148,1146,1152,1165,1178,1187,1186,1166,1131,1083,1028,987,962,
+938,915,887,830,779,754,741,735,720,695,696,682,689,672,660,658,672,667,651,622,
+581,542,523,511,491,471,467,470,445,442,449,466,476,502,512,492,380,285,236,198,
+159,111,31,18,31,42,27,-1,-51,-110,-138,-125,-122,-138,-116,-72,168,280,178,112,
+33,-85,-216,-378,-589,-739,-876,-981,-1126,-1245,-1372,-1487,-1588,-1695,-1787,-1899,-2001,-2111,-2222,-2304,
+-2384,-2478,-2586,-2693,-2773,-2817,-2855,-2897,-2942,-2981,-3007,-3051,-3078,-3082,-3108,-3172,-3223,-3245,-3282,-3325,
+-3358,-3389,-3409,-3428,-3443,-3455,-3472,-3496,-3522,-3544,-3533,-3506,-3496,-3524,-3521,-3531,-3580,-3601,-3679,-3789,
+-3988,-4169,-4245,-4271,-4313,-4359,-4417,-4527,-4734,-5066,-5228,-5221,-5184,-5151,-5130,-5124,-5124,-5142,-5181,-5237,
+-5300,-5361,-5420,-5482,-5546,-5610,-5681,-5751,-5824,-5894,-5981,-6078,-6164,-6210,-6235,-6260,-6283,-6307,-6361,-6434,
+-6513,-6595,-6689,-6796,-6899,-6950,-6964,-6933,-6857,-6773,-6765,-6803,-6832,-6869,-6912,-6934,-6989,-7065,-7130,-7220,
+-7278,-7211,-7196,-7203,-7220,-7244,-7253,-7251,-7265,-7261,-7241,-7240,-7246,-7257,-7266,-7280,-7302,-7314,-7316,-7285,
+-7270,-7262,-7279,-7298,-7314,-7349,-7386,-7376,-7333,-7258,-7206,-7202,-7144,-7130,-7087,-6984,-6845,-6662,-6545,-6587,
+-6770,-6831,-6845,-6884,-6936,-6991,-7046,-7138,-7245,-7300,-7267,-7193,-7100,-7017,-6963,-6924,-6894,-6872,-6839,-6786,
+-6729,-6666,-6621,-6596,-6565,-6510,-6424,-6314,-6203,-6115,-6052,-5999,-5963,-5944,-5936,-5935,-5935,-5920,-5894,-5856,
+-5791,-5640,-5571,-5479,-5337,-5189,-5002,-5028,-5042,-4950,-4773,-4629,-4573,-4509,-4388,-4182,-4179,-4166,-4108,-4055,
+-3976,-3893,-3947,-3934,-3865,-3833,-3758,-3707,-3666,-3575,-3531,-3401,-3321,-3357,-3360,-3336,-3296,-3252,-3157,-3107,
+-3063,-3046,-3034,-2926,-2805,-2704,-2574,-2474,-2461,-2437,-2383,-2350,-2318,-2262,-2225,-2170,-2092,-2007,-1907,-1797,
+-1715,-1637,-1501,-1333,-1180,-1047,-1003,-939,-864,-781,-698,-619,-543,-485,-410,-310,-203,-135,-62,9,
+108,227,316,381,448,558,671,778,884,976,1063,1165,1291,1400,1524,1657,1787,1901,2001,2094,
+2171,2223,2278,2321,2372,2441,2573,2729,2948,3384,3607,3748,3709,3626,3594,3594,3582,3389,3095,3074,
+3184,3267,3337,3469,3507,3548,3615,3684,3725,3772,3788,3784,3845,3877,3940,3930,3927,3939,3970,4026,
+4063,4047,4033,4047,4051,4043,4044,4054,4060,4067,4075,4085,4098,4113,4129,4138,4152,4167,4185,4198,
+4214,4237,4260,4278,4304,4331,4349,4367,4420,4509,4541,4572,4600,4643,4674,4699,4730,4738,4762,4795,
+4843,4875,4906,4928,4944,4933,4929,4975,5001,4992,4995,4990,4982,4970,4961,4962,4976,4998,5042,5120,
+5156,5098,5097,5084,5063,5053,4986,4910,4797,4677,4477,4214,4008,3859,3723,3559,3428,3245,3190,3334,
+3454,3624,3791,3876,3926,3959,3962,3961,3955,3939,3908,3866,3830,3795,3731,3668,3611,3568,3532,3493,
+3456,3422,3390,3356,3315,3266,3226,3217,3258,3110,3038,2972,2913,2861,2802,2742,2687,2632,2568,2518,
+2462,2410,2365,2337,2318,2300,2279,2255,2221,2177,2155,2259,2192,2149,2099,2074,2060,2052,2034,2021,
+2007,1986,1935,1880,1836,1822,1874,2064,1893,1722,1744,1759,1668,1671,1748,1621,1588,1584,1536,1491,
+1445,1410,1373,1314,1260,1216,1177,1162,1210,1249,1330,1383,1444,1413,1275,1164,1070,965,915,888,
+881,890,902,892,873,867,878,874,865,865,801,755,749,695,677,708,737,635,649,741,
+650,575,579,579,572,563,557,559,660,745,685,654,595,576,551,550,574,566,559,581,
+635,726,739,692,704,797,805,880,866,866,889,952,935,888,856,840,826,826,823,824,
+837,836,855,855,836,882,1008,1008,923,964,890,886,906,924,938,957,963,948,924,899,
+881,863,850,819,799,785,771,768,765,759,756,761,760,747,727,723,706,687,678,673,
+679,689,703,716,723,729,726,723,723,723,731,737,738,773,759,719,679,648,631,625,
+539,524,498,503,502,480,318,177,65,-20,-80,-119,-141,-160,-176,-197,-224,-252,-282,-316,
+-354,-398,-444,-481,-518,-556,-592,-627,-659,-685,-715,-746,-776,-811,-839,-863,-892,-922,-972,-1000,
+-1027,-1057,-1099,-1146,-1195,-1243,-1293,-1341,-1393,-1434,-1474,-1517,-1554,-1595,-1640,-1685,-1734,-1781,-1830,-1874,
+-1918,-1958,-1994,-2038,-2084,-2135,-2178,-2218,-2254,-2289,-2327,-2362,-2395,-2430,-2465,-2504,-2539,-2582,-2625,-2667,
+-2712,-2764,-2821,-2877,-2927,-2973,-3015,-3049,-3094,-3144,-3205,-3256,-3297,-3348,-3391,-3430,-3467,-3504,-3552,-3598,
+-3644,-3689,-3729,-3766,-3795,-3824,-3853,-3888,-3921,-3951,-3975,-3995,-3988,-4064,-4103,-4129,-4153,-4180,-4212,-4246,
+-4289,-4296,-4309,-4326,-4344,-4335,-4363,-4401,-4417,-4439,-4463,-4490,-4514,-4535,-4563,-4578,-4591,-4615,-4634,-4615,
+-4669,-4696,-4713,-4723,-4728,-4728,-4721,-4714,-4694,-4614,-4671,-4664,-4624,-4607,-4602,-4585,-4566,-4533,-4499,-4481,
+-4471,-4455,-4432,-4398,-4365,-4332,-4298,-4251,-4153,-4155,-4141,-4095,-4053,-4002,-3956,-3902,-3854,-3802,-3752,-3704,
+-3653,-3611,-3551,-3490,-3477,-3429,-3382,-3330,-3275,-3226,-3196,-3143,-3088,-3044,-3006,-2986,-2947,-2903,-2832,-2746,
+-2679,-2635,-2570,-2503,-2465,-2431,-2444,-2475,-2487,-2381,-2265,-2102,-1872,-1594,-1383,-1251,-1250,-1166,-1181,-1243,
+-1238,-1190,-1192,-1195,-1145,-1078,-1017,-938,-830,-832,-837,-807,-748,-675,-609,-492,-425,-434,-431,-568,
+-898,-1058,-1208,-1292,-1259,-1082,-846,-820,-984,-1159,-1234,-1232,-1204,-1155,-1102,-1075,-1058,-1068,-1081,-1064,
+-1019,-949,-894,-874,-865,-859,-844,-798,-748,-702,-683,-678,-681,-682,-697,-738,-832,-950,-982,-1057,
+-1211,-1176,-1153,-1176,-1229,-1286,-1332,-1295,-1251,-1208,-1146,-1057,-1080,-1161,-1260,-1255,-1224,-1262,-1263,-1301,
+-1354,-1304,-1333,-1437,-1544,-1619,-1635,-1624,-1659,-1738,-1833,-1912,-1968,-1929,-1816,-1734,-1743,-1820,-1909,-2055,
+-2252,-2318,-2346,-2319,-2271,-2348,-2408,-2449,-2440,-2295,-2216,-2303,-2396,-2479,-2515,-2580,-2582,-2521,-2536,-2633,
+-2732,-2794,-2897,-2996,-3114,-3213,-3315,-3455,-3609,-3752,-3874,-4006,-4111,-4280,-4472,-4583,-4734,-4905,-4803,-4690,
+-4699,-4665,-4623,-4609,-4608,-4599,-4602,-4575,-4520,-4544,-4686,-4864,-4916,-4934,-4878,-4855,-5049,-5302,-5618,-5974,
+-6105,-6145,-6155,-6128,-6051,-5903,-5704,-5500,-5321,-5176,-5065,-4995,-4928,-4892,-4852,-4803,-4752,-4716,-4702,-4681,
+-4646,-4613,-4557,-4504,-4458,-4421,-4373,-4312,-4239,-4208,-4169,-4124,-4083,-4070,-4049,-4041,-4012,-3967,-3927,-3877,
+-3842,-3791,-3748,-3692,-3636,-3586,-3536,-3479,-3414,-3350,-3277,-3211,-3150,-3088,-3007,-2905,-2840,-2776,-2688,-2620,
+-2551,-2489,-2432,-2350,-2292,-2239,-2184,-2146,-2099,-2046,-1999,-1960,-1917,-1878,-1854,-1835,-1775,-1728,-1699,-1660,
+-1623,-1579,-1527,-1481,-1430,-1380,-1321,-1269,-1216,-1169,-1115,-1064,-1005,-951,-892,-832,-781,-718,-650,-585,
+-497,-432,-351,-265,-207,-116,-31,60,144,231,317,400,484,562,656,742,824,892,963,1045,
+1108,1183,1247,1302,1360,1412,1461,1504,1542,1589,1635,1671,1715,1743,1781,1825,1872,1903,1954,1999,
+2048,2102,2148,2209,2258,2297,2333,2357,2372,2406,2428,2457,2490,2522,2555,2592,2620,2646,2663,2677,
+2695,2714,2713,2702,2684,2671,2652,2637,2633,2634,2634,2633,2636,2641,2637,2628,2621,2654,2724,2838,
+3002,3174,3291,3374,3386,3344,3314,3347,3402,3474,3517,3538,3501,3415,3302,3216,3147,3115,3135,3162,
+3164,3133,3100,3056,3005,2966,2922,2899,2879,2859,2844,2834,2826,2811,2796,2786,2775,2764,2753,2742,
+2732,2719,2701,2683,2678,2670,2672,2695,2711,2709,2692,2682,2676,2680,2700,2712,2728,2763,2807,2852,
+2896,2931,2950,2952,2936,2949,2969,2978,2894,2861,2870,2877,2876,2884,2857,2834,2798,2736,2716,2681,
+2618,2558,2487,2437,2436,2436,2429,2425,2429,2409,2402,2383,2361,2362,2365,2355,2339,2341,2366,2406,
+2473,2538,2629,2721,2709,2656,2630,2611,2569,2505,2411,2326,2302,2298,2286,2232,2177,2108,2037,2016,
+2010,1982,1933,1930,1917,1901,1877,1843,1798,1742,1696,1664,1651,1645,1638,1623,1610,1587,1547,1496,
+1435,1370,1340,1331,1315,1302,1291,1281,1283,1260,1220,1184,1159,1148,1129,1123,1124,1117,1119,1134,
+1131,1134,1150,1159,1170,1183,1176,1158,1146,1136,1137,1138,1144,1146,1134,1120,1095,1062,1006,959,
+931,908,887,862,816,772,745,734,728,710,684,674,656,642,624,609,625,639,643,643,
+609,557,514,489,478,466,450,444,438,427,405,392,411,414,436,459,469,363,271,210,
+198,151,98,17,-24,-20,-1,-2,-34,-66,-122,-176,-195,-188,-170,-176,-135,56,241,144,
+99,52,-68,-180,-361,-528,-667,-826,-948,-1068,-1180,-1351,-1477,-1578,-1681,-1764,-1875,-1970,-2073,-2186,
+-2269,-2344,-2446,-2558,-2664,-2731,-2761,-2806,-2837,-2874,-2908,-2921,-2955,-2975,-2976,-2990,-3032,-3108,-3166,-3213,
+-3260,-3297,-3329,-3346,-3347,-3358,-3371,-3380,-3391,-3398,-3415,-3437,-3459,-3480,-3499,-3506,-3547,-3597,-3655,-3765,
+-3909,-4072,-4229,-4293,-4315,-4346,-4395,-4492,-4648,-4915,-5235,-5319,-5288,-5247,-5217,-5202,-5205,-5206,-5222,-5259,
+-5306,-5358,-5413,-5467,-5526,-5590,-5656,-5723,-5791,-5856,-5927,-6019,-6149,-6276,-6358,-6397,-6413,-6424,-6428,-6457,
+-6521,-6597,-6666,-6741,-6830,-6934,-7015,-7059,-7081,-7041,-6950,-6877,-6882,-6908,-6942,-6994,-7013,-7064,-7156,-7218,
+-7345,-7404,-7350,-7285,-7269,-7292,-7318,-7340,-7357,-7370,-7386,-7379,-7353,-7335,-7332,-7339,-7351,-7368,-7377,-7386,
+-7375,-7356,-7352,-7366,-7387,-7402,-7399,-7398,-7397,-7413,-7395,-7329,-7334,-7309,-7279,-7187,-7050,-6861,-6683,-6631,
+-6714,-6895,-6941,-6961,-7014,-7067,-7171,-7292,-7400,-7471,-7463,-7385,-7265,-7157,-7089,-7053,-7014,-6980,-6942,-6892,
+-6834,-6782,-6726,-6676,-6632,-6582,-6510,-6423,-6316,-6211,-6115,-6047,-5990,-5943,-5921,-5912,-5914,-5919,-5918,-5901,
+-5875,-5818,-5693,-5628,-5546,-5389,-5221,-5000,-4983,-5049,-4977,-4811,-4638,-4575,-4522,-4421,-4246,-4155,-4175,-4130,
+-4064,-3990,-3935,-3927,-3871,-3870,-3840,-3765,-3711,-3655,-3539,-3495,-3403,-3351,-3347,-3323,-3270,-3227,-3215,-3182,
+-3134,-3133,-3097,-3041,-2959,-2833,-2730,-2629,-2510,-2338,-2321,-2324,-2279,-2245,-2210,-2172,-2106,-2023,-1943,-1852,
+-1750,-1650,-1585,-1486,-1380,-1263,-1132,-1039,-941,-845,-756,-663,-598,-596,-542,-453,-368,-269,-178,-91,
+-2,101,215,314,410,526,651,754,857,959,1059,1160,1274,1399,1512,1623,1743,1863,1970,2071,
+2160,2239,2291,2345,2397,2466,2569,2683,2864,3321,3586,3752,3947,3904,3825,3786,3808,3719,3404,3131,
+3149,3281,3312,3401,3535,3547,3613,3687,3746,3792,3813,3838,3877,3952,3941,3952,3960,3997,4013,3996,
+4065,4092,4083,4099,4102,4105,4097,4096,4096,4099,4115,4128,4144,4158,4173,4186,4189,4202,4206,4222,
+4236,4252,4277,4304,4327,4347,4386,4386,4408,4513,4539,4572,4603,4645,4665,4700,4725,4751,4771,4783,
+4822,4870,4903,4924,4961,4934,4935,4961,5010,5012,5016,5006,5012,5002,4986,4980,4984,4997,5015,5062,
+5158,5159,5117,5124,5121,5103,5093,5035,4969,4856,4734,4614,4306,4061,3899,3763,3641,3461,3186,3067,
+3195,3386,3582,3748,3872,3981,4033,4037,4016,4008,4050,4075,4062,3990,3836,3764,3753,3675,3594,3556,
+3521,3477,3432,3393,3365,3334,3288,3244,3208,3175,3126,3076,3021,2964,2905,2852,2795,2741,2685,2626,
+2572,2522,2478,2440,2412,2389,2373,2350,2321,2284,2240,2209,2192,2175,2191,2148,2114,2094,2084,2075,
+2068,2053,2033,1994,1946,1897,1855,1860,1919,1855,1779,1846,1852,1772,1687,1694,1689,1707,1694,1608,
+1542,1494,1482,1451,1364,1304,1261,1221,1192,1197,1272,1431,1475,1512,1449,1304,1202,1128,1056,999,
+971,964,986,1004,1016,980,946,915,895,882,834,813,768,762,733,706,691,705,687,664,
+705,696,643,610,597,600,614,636,599,578,652,595,616,660,640,639,578,609,596,606,
+636,701,700,700,716,842,861,909,918,947,965,959,938,893,828,855,855,817,827,840,
+905,946,866,857,844,836,830,861,888,983,944,913,975,943,928,924,942,957,949,936,
+908,876,858,842,821,802,783,761,751,748,752,762,762,759,756,739,718,696,682,673,
+665,679,670,678,695,709,714,710,708,706,712,716,718,722,771,724,694,681,696,665,
+571,513,475,431,373,334,281,200,123,51,-11,-53,-79,-101,-123,-149,-179,-202,-244,-279,
+-311,-350,-390,-432,-468,-502,-536,-570,-604,-633,-667,-701,-732,-767,-797,-825,-850,-887,-897,-926,
+-969,-1008,-1045,-1077,-1118,-1169,-1218,-1264,-1314,-1364,-1412,-1455,-1494,-1529,-1576,-1618,-1659,-1711,-1765,-1810,
+-1855,-1896,-1936,-1975,-2016,-2064,-2112,-2159,-2201,-2243,-2283,-2317,-2349,-2386,-2417,-2449,-2490,-2525,-2566,-2610,
+-2657,-2695,-2746,-2802,-2855,-2904,-2948,-2989,-3027,-3067,-3115,-3175,-3234,-3288,-3335,-3373,-3407,-3443,-3484,-3530,
+-3581,-3627,-3676,-3715,-3749,-3775,-3808,-3838,-3867,-3896,-3924,-3953,-3979,-4010,-4050,-4083,-4109,-4133,-4159,-4188,
+-4218,-4242,-4267,-4288,-4302,-4324,-4340,-4352,-4384,-4413,-4443,-4479,-4515,-4545,-4565,-4578,-4607,-4621,-4626,-4633,
+-4634,-4653,-4670,-4680,-4697,-4693,-4706,-4698,-4693,-4682,-4658,-4663,-4647,-4624,-4598,-4588,-4576,-4566,-4525,-4469,
+-4459,-4463,-4431,-4414,-4385,-4361,-4327,-4290,-4237,-4113,-4122,-4119,-4064,-4012,-3980,-3949,-3898,-3851,-3795,-3739,
+-3684,-3610,-3592,-3558,-3505,-3486,-3418,-3375,-3324,-3278,-3228,-3187,-3148,-3098,-3043,-3000,-2985,-2955,-2915,-2852,
+-2768,-2668,-2609,-2530,-2471,-2426,-2380,-2347,-2323,-2396,-2431,-2371,-2255,-2111,-1876,-1615,-1451,-1377,-1297,-1257,
+-1256,-1205,-1089,-1010,-1081,-1077,-1039,-985,-885,-868,-839,-737,-747,-705,-677,-597,-492,-417,-396,-524,
+-511,-723,-934,-1085,-1219,-1261,-1175,-1001,-891,-1000,-1161,-1227,-1245,-1226,-1173,-1113,-1074,-1064,-1070,-1068,
+-1038,-983,-924,-865,-824,-818,-813,-787,-735,-687,-653,-643,-642,-653,-684,-703,-763,-907,-1017,-1030,
+-1126,-1150,-1125,-1110,-1150,-1193,-1191,-1231,-1234,-1215,-1184,-1172,-1200,-1222,-1216,-1170,-1099,-1107,-1116,-1097,
+-1148,-1236,-1196,-1246,-1352,-1446,-1463,-1415,-1513,-1665,-1708,-1717,-1757,-1794,-1759,-1593,-1500,-1469,-1443,-1478,
+-1587,-1743,-1929,-2114,-2180,-2250,-2251,-2300,-2384,-2449,-2432,-2350,-2305,-2325,-2364,-2438,-2469,-2519,-2608,-2635,
+-2673,-2576,-2748,-2936,-3153,-3363,-3442,-3606,-3730,-3824,-3929,-4001,-4089,-4098,-4261,-4455,-4487,-4506,-4482,-4387,
+-4269,-4207,-4147,-4139,-4197,-4265,-4361,-4403,-4468,-4469,-4607,-4683,-4699,-4688,-4655,-4530,-4499,-4578,-4880,-5357,
+-5587,-5742,-5933,-6098,-6171,-6163,-6049,-5861,-5634,-5418,-5252,-5126,-5039,-4969,-4911,-4874,-4826,-4766,-4730,-4704,
+-4674,-4635,-4600,-4546,-4517,-4478,-4447,-4397,-4348,-4287,-4231,-4169,-4132,-4072,-4057,-4036,-4019,-3990,-3957,-3940,
+-3909,-3871,-3832,-3788,-3718,-3651,-3592,-3537,-3505,-3445,-3379,-3297,-3220,-3157,-3100,-3026,-2933,-2858,-2779,-2698,
+-2628,-2585,-2468,-2381,-2353,-2324,-2312,-2268,-2200,-2145,-2090,-2056,-2052,-1998,-1936,-1897,-1848,-1833,-1823,-1767,
+-1713,-1667,-1614,-1564,-1513,-1446,-1406,-1365,-1317,-1268,-1222,-1167,-1116,-1058,-995,-941,-891,-833,-775,-683,
+-591,-534,-469,-371,-284,-222,-134,-50,29,115,200,280,357,439,517,611,698,771,848,926,
+1004,1074,1140,1202,1257,1323,1382,1443,1489,1537,1579,1620,1659,1689,1736,1782,1832,1867,1906,1953,
+1987,2033,2086,2139,2211,2263,2315,2350,2361,2389,2408,2442,2474,2497,2522,2543,2574,2600,2621,2635,
+2652,2668,2693,2706,2699,2683,2668,2647,2630,2627,2632,2634,2636,2640,2643,2648,2656,2645,2681,2749,
+2837,2978,3172,3297,3352,3356,3309,3283,3317,3372,3447,3509,3527,3503,3411,3282,3172,3101,3086,3089,
+3110,3114,3085,3046,2971,2918,2890,2871,2855,2844,2824,2805,2790,2786,2779,2769,2765,2757,2748,2740,
+2733,2726,2719,2703,2694,2688,2678,2701,2727,2718,2711,2699,2688,2685,2689,2699,2720,2748,2786,2831,
+2872,2908,2927,2923,2916,2896,2896,2912,2894,2841,2836,2862,2845,2814,2800,2791,2762,2715,2654,2637,
+2610,2561,2494,2429,2402,2399,2398,2392,2387,2392,2385,2373,2357,2337,2347,2348,2326,2314,2325,2339,
+2377,2437,2512,2616,2721,2699,2621,2568,2542,2536,2486,2395,2310,2278,2243,2250,2207,2154,2089,2027,
+2007,2000,1990,1951,1923,1900,1882,1852,1817,1763,1704,1652,1616,1599,1590,1582,1563,1538,1513,1471,
+1416,1351,1284,1253,1250,1238,1249,1240,1231,1228,1233,1215,1182,1156,1132,1121,1127,1136,1131,1129,
+1136,1135,1143,1171,1201,1207,1203,1183,1164,1149,1138,1127,1121,1124,1124,1111,1098,1073,1039,981,
+925,893,876,870,853,819,776,744,726,713,687,665,644,616,594,595,573,570,591,610,
+611,591,545,496,467,448,448,431,408,394,366,326,317,355,372,389,390,386,282,202,
+203,204,149,107,31,-38,-57,-49,-42,-61,-86,-132,-197,-245,-263,-247,-244,-265,-204,-66,
+-12,-13,33,-48,-168,-378,-536,-656,-796,-924,-1037,-1187,-1327,-1452,-1545,-1647,-1731,-1837,-1940,-2029,
+-2137,-2245,-2312,-2391,-2497,-2585,-2653,-2692,-2731,-2759,-2795,-2817,-2826,-2851,-2864,-2862,-2872,-2901,-2977,-3057,
+-3112,-3166,-3219,-3245,-3252,-3253,-3270,-3268,-3263,-3274,-3277,-3318,-3341,-3395,-3419,-3460,-3510,-3533,-3624,-3748,
+-3857,-3967,-4140,-4288,-4332,-4342,-4368,-4422,-4538,-4725,-5055,-5327,-5375,-5344,-5300,-5263,-5247,-5254,-5280,-5310,
+-5351,-5388,-5431,-5482,-5535,-5592,-5655,-5720,-5783,-5849,-5915,-5984,-6072,-6204,-6353,-6455,-6528,-6564,-6573,-6569,
+-6574,-6616,-6682,-6751,-6812,-6884,-6965,-7048,-7124,-7188,-7216,-7146,-7038,-6991,-6998,-7023,-7070,-7081,-7124,-7234,
+-7302,-7414,-7494,-7489,-7368,-7356,-7376,-7387,-7408,-7433,-7456,-7480,-7488,-7469,-7435,-7424,-7425,-7436,-7447,-7456,
+-7459,-7463,-7452,-7435,-7442,-7459,-7469,-7480,-7460,-7450,-7438,-7434,-7435,-7400,-7394,-7372,-7213,-7024,-6858,-6776,
+-6852,-6986,-7050,-7055,-7088,-7140,-7257,-7392,-7510,-7590,-7625,-7588,-7487,-7353,-7240,-7175,-7143,-7096,-7048,-6992,
+-6934,-6876,-6826,-6771,-6719,-6656,-6580,-6499,-6412,-6312,-6209,-6115,-6043,-5993,-5941,-5909,-5896,-5897,-5912,-5921,
+-5913,-5888,-5848,-5760,-5700,-5612,-5472,-5273,-5052,-4990,-5052,-4997,-4840,-4667,-4584,-4533,-4442,-4316,-4237,-4200,
+-4152,-4076,-3977,-3944,-3930,-3875,-3854,-3812,-3766,-3696,-3599,-3558,-3474,-3409,-3343,-3327,-3295,-3224,-3200,-3197,
+-3191,-3148,-3090,-3053,-3015,-2946,-2865,-2762,-2652,-2510,-2346,-2227,-2246,-2206,-2157,-2140,-2105,-2050,-1967,-1883,
+-1798,-1703,-1597,-1517,-1435,-1344,-1243,-1126,-1013,-909,-807,-708,-662,-659,-615,-536,-438,-346,-247,-146,
+-39,87,225,323,403,484,609,742,840,934,1041,1137,1241,1362,1477,1594,1705,1811,1917,2024,
+2127,2222,2304,2369,2432,2474,2578,2669,2750,3004,3450,3661,3855,4070,4019,3894,3831,3887,3625,3270,
+3145,3215,3360,3381,3511,3600,3623,3722,3792,3836,3861,3884,3919,3964,3997,3990,3992,3988,4030,4082,
+4100,4078,4085,4081,4146,4158,4172,4156,4152,4155,4155,4170,4183,4202,4223,4239,4243,4240,4250,4248,
+4262,4273,4293,4316,4344,4370,4385,4401,4427,4472,4524,4566,4606,4642,4654,4700,4729,4754,4779,4805,
+4814,4855,4891,4925,4952,4968,4922,4905,5017,5018,5033,5024,5020,5017,5017,5002,5001,5006,5011,5028,
+5077,5195,5205,5173,5142,5138,5133,5134,5068,5028,4922,4829,4701,4396,4159,3981,3849,3703,3481,3233,
+3022,3113,3326,3557,3742,3889,4005,4083,4106,4096,4121,4264,4314,4369,4183,3896,3826,3967,3783,3656,
+3625,3595,3538,3450,3394,3363,3342,3304,3253,3211,3174,3142,3106,3058,2999,2947,2901,2853,2797,2740,
+2691,2634,2585,2550,2521,2500,2484,2461,2431,2397,2359,2316,2277,2241,2216,2201,2176,2151,2138,2127,
+2123,2112,2098,2087,2062,2015,1960,1904,1859,1822,1778,1733,1727,1729,1719,1695,1722,1791,1837,1875,
+1699,1595,1538,1503,1475,1414,1363,1325,1288,1248,1226,1263,1380,1437,1436,1364,1336,1311,1232,1172,
+1128,1080,1074,1081,1022,962,937,904,883,868,851,835,815,832,803,787,757,724,688,675,
+685,758,814,817,710,688,697,678,616,591,575,564,548,567,631,607,580,582,641,638,
+643,638,673,776,786,799,894,898,950,938,901,904,900,881,847,808,812,871,862,842,
+848,873,882,879,880,873,878,866,853,885,911,847,891,1084,991,915,909,918,928,928,
+920,907,893,872,851,830,809,791,776,759,752,759,767,768,761,753,740,719,697,684,
+673,657,648,646,655,671,687,694,691,686,685,688,694,697,697,692,682,667,660,635,
+593,543,500,456,407,357,288,242,189,130,73,22,-18,-45,-66,-89,-120,-161,-186,-235,
+-268,-301,-339,-375,-418,-452,-489,-519,-553,-588,-618,-653,-689,-724,-753,-782,-812,-841,-872,-890,
+-908,-946,-986,-1033,-1063,-1100,-1146,-1196,-1245,-1293,-1344,-1390,-1433,-1474,-1510,-1548,-1587,-1631,-1692,-1744,
+-1798,-1836,-1878,-1916,-1957,-1998,-2043,-2088,-2139,-2188,-2229,-2270,-2302,-2333,-2362,-2393,-2430,-2471,-2517,-2553,
+-2601,-2645,-2680,-2728,-2780,-2827,-2871,-2913,-2953,-2992,-3035,-3081,-3135,-3196,-3259,-3303,-3352,-3391,-3429,-3472,
+-3513,-3557,-3599,-3640,-3683,-3723,-3759,-3795,-3831,-3858,-3887,-3916,-3945,-3972,-4011,-4043,-4074,-4102,-4129,-4159,
+-4188,-4205,-4217,-4241,-4272,-4308,-4345,-4368,-4391,-4420,-4438,-4462,-4478,-4512,-4539,-4556,-4566,-4572,-4575,-4587,
+-4608,-4624,-4649,-4668,-4671,-4664,-4666,-4661,-4655,-4650,-4655,-4653,-4643,-4629,-4602,-4579,-4567,-4561,-4550,-4525,
+-4500,-4482,-4455,-4418,-4396,-4371,-4350,-4325,-4292,-4256,-4212,-4168,-4127,-4076,-4030,-3983,-3938,-3893,-3842,-3786,
+-3735,-3686,-3636,-3583,-3534,-3498,-3431,-3392,-3369,-3313,-3272,-3223,-3190,-3144,-3092,-3042,-3003,-2975,-2937,-2898,
+-2805,-2742,-2670,-2584,-2527,-2463,-2407,-2363,-2311,-2271,-2276,-2322,-2360,-2362,-2295,-2173,-1973,-1778,-1629,-1539,
+-1471,-1386,-1221,-1032,-863,-859,-869,-879,-850,-890,-853,-762,-650,-641,-615,-580,-546,-440,-348,-286,
+-364,-480,-533,-744,-907,-1080,-1186,-1193,-1137,-1115,-1158,-1227,-1233,-1254,-1227,-1158,-1098,-1059,-1061,-1076,
+-1061,-1005,-937,-874,-814,-773,-764,-755,-717,-670,-626,-604,-611,-609,-615,-643,-679,-770,-935,-999,
+-1062,-1098,-1097,-1086,-1079,-1073,-1103,-1109,-1153,-1177,-1198,-1194,-1192,-1195,-1188,-1197,-1178,-1165,-1126,-1105,
+-1068,-1093,-1174,-1090,-1168,-1258,-1315,-1363,-1499,-1600,-1586,-1532,-1547,-1572,-1617,-1695,-1648,-1572,-1490,-1406,
+-1480,-1567,-1596,-1605,-1840,-2027,-2154,-2213,-2319,-2385,-2451,-2526,-2623,-2607,-2568,-2724,-2733,-2853,-2948,-3092,
+-3230,-3182,-2828,-2769,-2910,-3422,-3692,-3735,-3775,-3826,-3911,-4032,-4118,-4152,-4161,-4267,-4539,-4493,-4437,-4400,
+-4253,-4202,-4194,-4171,-4112,-4170,-4363,-4490,-4642,-4740,-4698,-4572,-4634,-4614,-4572,-4510,-4430,-4309,-4360,-4616,
+-4842,-4890,-5058,-5525,-5932,-6134,-6204,-6146,-5995,-5779,-5552,-5364,-5217,-5096,-5002,-4933,-4872,-4840,-4789,-4746,
+-4712,-4684,-4650,-4600,-4557,-4538,-4504,-4460,-4435,-4388,-4325,-4271,-4214,-4160,-4103,-4077,-4076,-4052,-4012,-3972,
+-3937,-3902,-3872,-3836,-3794,-3741,-3688,-3628,-3570,-3508,-3445,-3379,-3303,-3248,-3208,-3136,-3068,-2984,-2900,-2821,
+-2743,-2676,-2653,-2493,-2418,-2376,-2357,-2318,-2292,-2253,-2211,-2147,-2099,-2061,-2021,-1977,-1951,-1915,-1860,-1816,
+-1785,-1754,-1699,-1653,-1597,-1562,-1507,-1461,-1408,-1355,-1282,-1234,-1195,-1127,-1073,-1028,-976,-926,-848,-774,
+-687,-599,-541,-452,-388,-328,-259,-174,-93,-7,83,168,247,323,404,480,562,648,740,819,
+889,963,1031,1108,1171,1243,1309,1358,1414,1466,1515,1558,1609,1643,1684,1730,1769,1820,1855,1904,
+1955,1987,2028,2081,2144,2205,2266,2338,2375,2389,2414,2426,2450,2475,2505,2519,2539,2558,2580,2599,
+2607,2620,2637,2659,2674,2679,2677,2657,2639,2623,2621,2630,2637,2640,2642,2649,2658,2662,2669,2716,
+2786,2862,2989,3179,3303,3316,3298,3272,3264,3296,3343,3402,3482,3510,3479,3386,3251,3128,3042,3020,
+3007,3013,3011,2972,2929,2894,2867,2844,2829,2819,2816,2810,2796,2778,2765,2759,2749,2740,2745,2739,
+2737,2734,2732,2727,2719,2712,2705,2706,2710,2718,2715,2708,2705,2708,2718,2716,2716,2746,2780,2813,
+2850,2881,2899,2901,2883,2864,2855,2877,2879,2841,2803,2813,2837,2818,2770,2730,2723,2688,2642,2587,
+2566,2533,2493,2437,2387,2368,2368,2361,2352,2351,2357,2355,2342,2329,2318,2341,2332,2300,2287,2297,
+2307,2344,2399,2487,2621,2736,2654,2610,2563,2516,2480,2444,2376,2310,2250,2225,2204,2158,2121,2070,
+2014,1989,1980,1969,1945,1904,1864,1837,1802,1768,1716,1661,1612,1574,1553,1538,1520,1500,1469,1431,
+1390,1331,1276,1228,1185,1166,1154,1187,1193,1197,1198,1217,1211,1172,1156,1154,1150,1159,1166,1175,
+1182,1189,1203,1216,1223,1233,1227,1212,1193,1174,1144,1123,1113,1111,1117,1123,1111,1085,1054,1014,
+954,895,861,845,843,834,802,762,731,713,702,674,644,607,609,576,570,550,541,535,
+532,545,536,502,455,432,417,427,405,378,374,325,299,304,336,346,327,295,226,165,
+91,103,205,168,106,63,-28,-86,-95,-84,-84,-112,-150,-210,-273,-317,-315,-279,-260,-275,
+-287,-242,-198,-115,-71,-198,-375,-505,-652,-779,-909,-1031,-1168,-1280,-1376,-1473,-1600,-1680,-1777,-1880,
+-1977,-2079,-2184,-2269,-2332,-2416,-2496,-2557,-2587,-2626,-2661,-2690,-2708,-2734,-2747,-2755,-2719,-2712,-2764,-2828,
+-2915,-2992,-3045,-3108,-3129,-3148,-3130,-3132,-3139,-3134,-3171,-3188,-3306,-3368,-3437,-3441,-3473,-3518,-3574,-3675,
+-3783,-3888,-3947,-4199,-4335,-4338,-4327,-4372,-4430,-4541,-4751,-5148,-5374,-5419,-5395,-5346,-5308,-5293,-5308,-5337,
+-5378,-5422,-5461,-5507,-5559,-5617,-5676,-5737,-5799,-5859,-5917,-5980,-6046,-6130,-6241,-6389,-6520,-6618,-6673,-6709,
+-6721,-6711,-6716,-6761,-6829,-6902,-6966,-7022,-7093,-7175,-7269,-7346,-7342,-7249,-7152,-7124,-7129,-7155,-7172,-7191,
+-7290,-7395,-7493,-7582,-7583,-7475,-7458,-7436,-7429,-7451,-7487,-7521,-7552,-7571,-7569,-7548,-7528,-7531,-7531,-7537,
+-7540,-7540,-7548,-7537,-7530,-7536,-7559,-7575,-7583,-7571,-7548,-7523,-7527,-7515,-7476,-7430,-7352,-7159,-7054,-6972,
+-7008,-7120,-7163,-7162,-7188,-7242,-7370,-7499,-7601,-7691,-7745,-7745,-7692,-7579,-7452,-7338,-7262,-7214,-7163,-7102,
+-7044,-6985,-6922,-6868,-6817,-6750,-6669,-6578,-6488,-6396,-6300,-6198,-6104,-6034,-5986,-5940,-5910,-5901,-5902,-5918,
+-5930,-5931,-5924,-5903,-5886,-5850,-5696,-5533,-5353,-5143,-5066,-5067,-5010,-4881,-4710,-4612,-4559,-4465,-4350,-4284,
+-4265,-4194,-4107,-3960,-3924,-3903,-3865,-3843,-3805,-3759,-3670,-3618,-3550,-3481,-3364,-3346,-3314,-3261,-3197,-3190,
+-3193,-3172,-3094,-3023,-2979,-2959,-2913,-2842,-2767,-2657,-2528,-2379,-2231,-2157,-2131,-2076,-2053,-2024,-1977,-1914,
+-1837,-1755,-1667,-1564,-1457,-1363,-1271,-1185,-1071,-956,-846,-743,-698,-684,-653,-586,-478,-368,-252,-152,
+-46,88,193,307,420,499,577,696,816,921,998,1089,1190,1297,1428,1551,1669,1773,1881,1981,
+2086,2185,2282,2369,2446,2500,2548,2649,2769,2865,3128,3455,3709,3891,4124,4076,3874,3873,3992,3679,
+3246,3148,3265,3488,3479,3552,3650,3737,3846,3893,3932,3948,3966,4037,4083,4054,4039,4043,4061,4082,
+4099,4142,4156,4182,4189,4196,4210,4225,4213,4212,4221,4223,4222,4240,4253,4273,4291,4298,4290,4294,
+4293,4302,4317,4340,4367,4382,4403,4424,4435,4491,4575,4587,4617,4642,4662,4696,4726,4751,4789,4810,
+4822,4848,4872,4905,4946,4985,4996,4954,4958,5007,5044,5028,5029,5020,5019,5024,5017,5017,5026,5026,
+5042,5139,5177,5241,5156,5162,5163,5173,5192,5156,5065,4980,4866,4752,4505,4284,4085,3914,3725,3489,
+3210,2954,3050,3307,3559,3759,3908,4017,4092,4123,4135,4218,4438,4487,4409,4215,4014,3866,3824,3753,
+3777,3794,3741,3658,3486,3392,3363,3357,3324,3270,3217,3184,3159,3127,3077,3029,2997,2958,2911,2853,
+2800,2750,2695,2652,2621,2599,2587,2568,2548,2513,2470,2431,2387,2342,2299,2269,2251,2215,2188,2176,
+2175,2186,2171,2148,2131,2107,2074,2026,1973,1909,1849,1798,1741,1713,1732,1733,1727,1738,1717,1689,
+1705,1662,1612,1561,1517,1489,1451,1406,1374,1385,1313,1265,1269,1352,1366,1327,1288,1264,1235,1235,
+1257,1243,1121,1040,1002,987,977,950,934,922,884,874,880,852,834,836,831,806,779,745,
+712,691,698,727,725,680,673,646,628,618,610,614,602,565,552,557,570,611,597,615,
+634,640,650,695,772,767,851,876,901,900,905,866,801,853,827,864,777,781,801,818,
+841,857,870,881,906,918,899,908,903,878,855,846,836,885,992,1033,910,882,883,897,
+916,928,925,914,885,862,840,820,809,801,786,774,776,782,774,767,749,733,711,695,
+673,661,659,651,641,647,656,665,667,664,657,654,656,663,669,668,659,650,641,656,
+604,563,525,486,438,389,340,296,236,202,158,105,54,12,-22,-45,-69,-98,-138,-178,
+-221,-258,-292,-327,-366,-399,-432,-469,-500,-537,-571,-606,-641,-675,-710,-743,-769,-798,-829,-859,
+-886,-911,-933,-966,-1007,-1046,-1089,-1129,-1178,-1232,-1278,-1324,-1371,-1411,-1449,-1486,-1520,-1557,-1611,-1661,
+-1723,-1769,-1811,-1854,-1895,-1936,-1978,-2020,-2065,-2112,-2161,-2205,-2248,-2281,-2311,-2336,-2370,-2407,-2453,-2494,
+-2539,-2581,-2622,-2660,-2707,-2752,-2794,-2836,-2876,-2913,-2956,-3003,-3052,-3100,-3159,-3223,-3282,-3328,-3369,-3408,
+-3454,-3494,-3533,-3572,-3620,-3666,-3711,-3758,-3798,-3832,-3861,-3894,-3927,-3954,-3981,-4011,-4027,-4056,-4086,-4119,
+-4151,-4184,-4203,-4221,-4247,-4270,-4298,-4325,-4356,-4379,-4408,-4434,-4454,-4453,-4453,-4510,-4539,-4553,-4564,-4572,
+-4586,-4609,-4634,-4652,-4656,-4649,-4642,-4637,-4637,-4631,-4638,-4643,-4635,-4624,-4607,-4584,-4564,-4548,-4533,-4517,
+-4506,-4488,-4462,-4432,-4402,-4375,-4354,-4331,-4303,-4273,-4239,-4198,-4152,-4104,-4058,-4011,-3966,-3925,-3873,-3823,
+-3768,-3721,-3674,-3629,-3578,-3507,-3482,-3432,-3407,-3360,-3312,-3277,-3235,-3176,-3127,-3084,-3034,-2994,-2959,-2922,
+-2872,-2806,-2739,-2666,-2586,-2531,-2476,-2402,-2344,-2272,-2215,-2170,-2152,-2247,-2276,-2321,-2290,-2197,-2061,-1913,
+-1793,-1744,-1629,-1352,-1096,-915,-709,-636,-656,-670,-704,-656,-593,-506,-485,-461,-474,-424,-344,-243,
+-140,-161,-320,-319,-484,-748,-937,-1098,-1185,-1226,-1232,-1252,-1242,-1218,-1204,-1179,-1133,-1061,-995,-986,
+-1006,-992,-922,-862,-810,-757,-722,-701,-682,-648,-605,-560,-558,-571,-568,-569,-585,-624,-752,-874,
+-939,-981,-1039,-1027,-1027,-979,-1035,-1033,-1064,-1077,-1091,-1096,-1109,-1122,-1134,-1153,-1196,-1244,-1230,-1198,
+-1126,-1102,-1100,-1148,-1083,-1128,-1135,-1125,-1218,-1348,-1393,-1404,-1381,-1365,-1411,-1487,-1577,-1614,-1612,-1598,
+-1568,-1579,-1648,-1752,-1795,-1845,-1937,-2016,-2094,-2170,-2271,-2372,-2505,-2665,-2787,-2917,-3067,-3145,-3110,-3145,
+-3199,-3276,-3319,-2991,-2858,-3133,-3490,-3706,-3827,-3865,-3911,-3972,-4093,-4229,-4306,-4350,-4453,-4565,-4582,-4539,
+-4518,-4456,-4438,-4452,-4420,-4349,-4347,-4420,-4557,-4573,-4513,-4387,-4395,-4465,-4387,-4401,-4362,-4354,-4301,-4262,
+-4315,-4374,-4288,-4480,-5120,-5706,-6038,-6189,-6200,-6095,-5916,-5695,-5474,-5284,-5133,-5011,-4932,-4856,-4829,-4807,
+-4765,-4724,-4695,-4667,-4614,-4590,-4566,-4543,-4515,-4480,-4435,-4379,-4335,-4264,-4216,-4161,-4102,-4092,-4086,-4071,
+-4022,-3980,-3954,-3913,-3891,-3819,-3773,-3720,-3645,-3596,-3554,-3517,-3462,-3379,-3282,-3208,-3140,-3064,-2989,-2909,
+-2833,-2736,-2671,-2622,-2609,-2497,-2444,-2399,-2379,-2335,-2290,-2239,-2179,-2153,-2114,-2077,-2045,-2002,-1973,-1925,
+-1884,-1832,-1786,-1735,-1675,-1632,-1568,-1529,-1474,-1440,-1387,-1334,-1286,-1235,-1174,-1104,-1038,-980,-926,-852,
+-782,-705,-634,-563,-486,-422,-356,-277,-190,-115,-24,58,144,225,302,379,455,534,618,699,
+778,854,930,1003,1073,1144,1219,1281,1335,1388,1439,1475,1520,1559,1619,1663,1702,1737,1794,1838,
+1885,1925,1960,1997,2050,2125,2194,2280,2367,2424,2445,2446,2451,2464,2472,2487,2508,2528,2553,2569,
+2582,2589,2596,2609,2624,2637,2649,2654,2647,2633,2618,2622,2634,2644,2647,2647,2659,2672,2681,2703,
+2755,2827,2907,3033,3195,3297,3276,3231,3247,3260,3284,3313,3352,3425,3476,3454,3365,3223,3091,2990,
+2935,2933,2923,2912,2888,2843,2818,2806,2797,2792,2792,2801,2805,2792,2771,2753,2746,2739,2727,2721,
+2722,2739,2743,2743,2743,2738,2730,2725,2727,2724,2724,2719,2717,2721,2731,2738,2743,2763,2793,2821,
+2843,2858,2870,2870,2862,2849,2832,2829,2870,2861,2803,2793,2805,2818,2780,2721,2676,2662,2630,2571,
+2531,2520,2481,2433,2385,2344,2329,2333,2330,2321,2327,2329,2333,2317,2304,2299,2314,2301,2274,2259,
+2255,2272,2307,2360,2445,2526,2581,2582,2562,2536,2501,2427,2376,2347,2314,2235,2204,2171,2114,2086,
+2054,2007,1966,1942,1938,1919,1879,1825,1780,1738,1700,1659,1613,1573,1535,1507,1482,1452,1428,1398,
+1347,1293,1263,1205,1128,1085,1077,1081,1096,1117,1160,1180,1229,1219,1185,1152,1164,1189,1200,1229,
+1246,1267,1262,1259,1247,1244,1241,1225,1208,1194,1164,1132,1105,1096,1099,1104,1103,1084,1062,1033,
+986,928,874,843,824,817,808,780,746,723,709,691,653,613,589,587,555,553,523,525,
+510,480,473,482,453,411,388,365,368,365,350,328,313,291,267,277,295,262,205,137,
+64,14,30,182,195,81,36,-34,-108,-138,-135,-123,-133,-169,-219,-287,-346,-364,-339,-298,
+-272,-318,-351,-253,-191,-139,-216,-355,-493,-636,-771,-911,-1038,-1151,-1237,-1320,-1443,-1557,-1640,-1732,
+-1815,-1913,-2023,-2112,-2189,-2249,-2310,-2378,-2432,-2465,-2503,-2543,-2555,-2584,-2622,-2618,-2616,-2600,-2587,-2629,
+-2696,-2762,-2853,-2917,-2972,-3008,-3030,-3002,-2997,-2992,-3036,-3061,-3172,-3380,-3414,-3443,-3479,-3564,-3673,-3767,
+-3846,-3922,-3984,-4080,-4247,-4355,-4376,-4374,-4371,-4417,-4509,-4753,-5199,-5407,-5447,-5428,-5392,-5361,-5352,-5365,
+-5395,-5433,-5477,-5523,-5573,-5631,-5691,-5752,-5815,-5874,-5934,-5990,-6049,-6115,-6189,-6290,-6410,-6539,-6666,-6771,
+-6814,-6851,-6847,-6828,-6848,-6906,-6985,-7055,-7101,-7154,-7235,-7337,-7435,-7479,-7463,-7396,-7313,-7277,-7264,-7274,
+-7307,-7352,-7480,-7577,-7661,-7691,-7592,-7565,-7548,-7527,-7515,-7536,-7567,-7605,-7635,-7651,-7648,-7646,-7655,-7668,
+-7662,-7649,-7631,-7627,-7634,-7634,-7659,-7684,-7701,-7705,-7704,-7679,-7652,-7601,-7574,-7527,-7456,-7338,-7238,-7197,
+-7154,-7215,-7270,-7303,-7345,-7370,-7501,-7657,-7697,-7759,-7814,-7850,-7832,-7780,-7662,-7536,-7431,-7343,-7279,-7220,
+-7158,-7097,-7035,-6973,-6919,-6855,-6773,-6682,-6587,-6488,-6390,-6295,-6196,-6108,-6043,-5996,-5957,-5931,-5925,-5924,
+-5928,-5936,-5953,-5962,-5957,-5954,-5927,-5763,-5565,-5408,-5180,-5120,-5072,-5002,-4893,-4742,-4646,-4585,-4493,-4393,
+-4342,-4299,-4227,-4144,-3983,-3892,-3869,-3848,-3810,-3783,-3743,-3666,-3604,-3523,-3421,-3365,-3306,-3243,-3234,-3184,
+-3164,-3159,-3105,-3032,-2973,-2918,-2874,-2849,-2807,-2752,-2672,-2544,-2421,-2298,-2181,-2035,-1971,-1951,-1935,-1898,
+-1840,-1769,-1693,-1619,-1531,-1421,-1304,-1198,-1096,-983,-872,-779,-735,-722,-689,-627,-515,-394,-263,-146,
+-37,85,222,303,378,458,539,665,789,883,958,1050,1151,1249,1356,1491,1630,1753,1851,1954,
+2052,2162,2267,2359,2449,2526,2591,2629,2733,2863,2999,3290,3522,3743,4051,4304,4198,3934,3940,4090,
+3869,3425,3236,3295,3484,3523,3631,3774,3881,3964,4006,4060,4094,4098,4146,4137,4112,4104,4110,4132,
+4146,4153,4167,4186,4213,4249,4245,4239,4248,4262,4273,4285,4280,4271,4289,4298,4311,4331,4344,4331,
+4341,4345,4354,4363,4379,4405,4456,4444,4462,4478,4550,4623,4645,4658,4673,4697,4729,4760,4796,4815,
+4832,4861,4876,4915,4949,4982,5006,5002,4980,4992,5045,5051,5047,5029,5028,5026,5034,5029,5033,5043,
+5038,5049,5116,5198,5230,5197,5218,5221,5209,5201,5153,5128,5038,4936,4831,4622,4404,4177,3974,3754,
+3485,3208,2970,3052,3338,3595,3836,3938,4025,4086,4138,4190,4312,4440,4385,4310,4120,4034,3945,3846,
+3798,3912,4018,3879,3791,3516,3413,3467,3464,3427,3324,3224,3184,3165,3143,3121,3065,3042,3010,2964,
+2903,2848,2796,2745,2706,2680,2665,2650,2630,2601,2573,2529,2490,2446,2398,2357,2318,2288,2248,2230,
+2231,2261,2317,2257,2199,2160,2137,2119,2074,2026,1977,1917,1861,1796,1772,1807,1764,1750,1735,1669,
+1663,1657,1640,1614,1583,1545,1506,1473,1447,1424,1404,1349,1294,1274,1321,1330,1293,1220,1163,1177,
+1192,1173,1159,1087,1038,1019,1051,1058,987,960,931,927,936,918,891,879,855,870,851,822,
+798,770,745,717,697,679,676,654,654,666,665,645,625,611,601,582,570,554,545,552,
+659,696,699,662,688,702,741,788,849,861,848,799,788,771,764,762,766,770,782,791,
+812,837,866,885,906,918,922,902,904,886,856,847,855,859,912,903,1045,961,898,884,
+891,919,930,929,922,904,878,855,837,826,820,807,799,799,800,786,765,743,720,699,
+681,667,650,648,650,647,647,646,645,645,636,621,613,616,625,632,635,628,616,616,
+630,590,549,517,475,432,398,347,289,254,218,175,131,79,40,0,-41,-62,-88,-124,
+-162,-206,-251,-292,-328,-361,-387,-417,-449,-483,-519,-557,-591,-628,-663,-702,-737,-764,-793,-824,
+-853,-876,-904,-931,-962,-994,-1049,-1076,-1116,-1155,-1214,-1264,-1305,-1343,-1375,-1412,-1449,-1493,-1535,-1578,
+-1640,-1690,-1740,-1784,-1829,-1870,-1914,-1954,-1994,-2038,-2084,-2126,-2168,-2213,-2250,-2280,-2306,-2340,-2374,-2411,
+-2455,-2501,-2545,-2589,-2627,-2668,-2715,-2755,-2799,-2836,-2876,-2922,-2981,-3033,-3078,-3134,-3198,-3257,-3301,-3348,
+-3392,-3436,-3478,-3517,-3571,-3624,-3666,-3708,-3753,-3782,-3807,-3834,-3864,-3887,-3917,-3951,-3993,-4018,-4049,-4078,
+-4099,-4117,-4133,-4163,-4194,-4223,-4246,-4280,-4320,-4358,-4385,-4392,-4432,-4460,-4465,-4463,-4503,-4522,-4529,-4540,
+-4554,-4571,-4596,-4619,-4647,-4638,-4634,-4617,-4618,-4624,-4623,-4634,-4640,-4637,-4631,-4617,-4599,-4579,-4562,-4538,
+-4516,-4493,-4468,-4438,-4404,-4380,-4357,-4336,-4311,-4280,-4248,-4222,-4177,-4135,-4086,-4044,-3997,-3949,-3911,-3864,
+-3807,-3752,-3704,-3659,-3618,-3569,-3496,-3488,-3427,-3401,-3349,-3295,-3255,-3222,-3187,-3135,-3086,-3037,-2986,-2951,
+-2919,-2875,-2782,-2712,-2657,-2565,-2493,-2440,-2384,-2319,-2255,-2203,-2143,-2090,-2094,-2136,-2165,-2209,-2222,-2165,
+-2073,-1979,-1882,-1769,-1551,-1274,-1054,-848,-739,-659,-598,-548,-577,-523,-458,-374,-351,-386,-319,-236,
+-106,-46,-55,-126,-181,-248,-557,-778,-1006,-1136,-1202,-1224,-1205,-1161,-1116,-1088,-1047,-1025,-913,-789,
+-783,-764,-773,-763,-741,-726,-704,-678,-653,-623,-588,-543,-517,-526,-514,-514,-520,-532,-579,-703,
+-786,-806,-958,-971,-942,-918,-922,-937,-963,-979,-995,-1015,-1016,-997,-924,-822,-841,-996,-1099,-1058,
+-975,-924,-910,-936,-951,-939,-945,-990,-1033,-1120,-1218,-1260,-1275,-1298,-1286,-1277,-1309,-1441,-1506,-1576,
+-1632,-1661,-1673,-1742,-1859,-1894,-1894,-1905,-1964,-2045,-2097,-2230,-2345,-2523,-2666,-2765,-2880,-3023,-3141,-3207,
+-3168,-3214,-3232,-3291,-3071,-2948,-3230,-3422,-3600,-3780,-3893,-3978,-4070,-4190,-4281,-4354,-4423,-4491,-4533,-4531,
+-4515,-4529,-4536,-4583,-4610,-4606,-4589,-4574,-4543,-4521,-4513,-4465,-4448,-4514,-4516,-4318,-4230,-4220,-4239,-4226,
+-4229,-4223,-4179,-4129,-4258,-4864,-5361,-5880,-6173,-6259,-6180,-6008,-5791,-5555,-5333,-5132,-4992,-4889,-4840,-4814,
+-4811,-4791,-4757,-4719,-4691,-4653,-4630,-4607,-4567,-4536,-4524,-4497,-4447,-4385,-4333,-4264,-4215,-4136,-4109,-4090,
+-4077,-4080,-4069,-4026,-3989,-3948,-3869,-3787,-3716,-3675,-3620,-3565,-3501,-3463,-3412,-3337,-3254,-3186,-3115,-3058,
+-2985,-2874,-2776,-2687,-2610,-2626,-2534,-2467,-2443,-2413,-2402,-2358,-2294,-2245,-2184,-2146,-2115,-2068,-2039,-1996,
+-1954,-1915,-1873,-1822,-1774,-1723,-1667,-1623,-1570,-1516,-1479,-1426,-1376,-1315,-1264,-1212,-1155,-1094,-1030,-958,
+-872,-817,-736,-662,-576,-511,-435,-362,-279,-206,-138,-54,30,109,199,278,351,426,505,578,
+656,730,806,885,962,1033,1105,1175,1233,1290,1382,1448,1441,1486,1532,1567,1615,1649,1700,1752,
+1804,1850,1888,1928,1971,2029,2104,2192,2316,2464,2554,2569,2537,2501,2479,2476,2485,2504,2529,2551,
+2564,2582,2584,2591,2590,2588,2601,2620,2633,2637,2632,2623,2628,2642,2652,2655,2658,2670,2692,2715,
+2744,2798,2865,2943,3064,3213,3292,3253,3193,3233,3264,3278,3291,3320,3361,3432,3443,3355,3210,3071,
+2969,2888,2884,2874,2856,2818,2781,2762,2755,2759,2770,2778,2789,2795,2784,2762,2741,2733,2730,2729,
+2724,2713,2739,2751,2754,2753,2752,2748,2742,2739,2732,2730,2724,2723,2732,2742,2757,2776,2806,2838,
+2858,2862,2856,2848,2841,2830,2821,2812,2803,2818,2837,2793,2776,2760,2761,2728,2690,2651,2624,2598,
+2554,2530,2511,2455,2383,2329,2290,2281,2284,2288,2293,2309,2309,2311,2290,2274,2272,2281,2272,2254,
+2232,2219,2239,2284,2333,2388,2460,2477,2494,2497,2487,2454,2410,2362,2304,2268,2213,2156,2109,2073,
+2046,2025,1980,1937,1909,1904,1887,1842,1787,1726,1672,1641,1600,1560,1522,1486,1449,1422,1402,1375,
+1332,1287,1237,1208,1158,1081,1041,1033,1045,1058,1079,1125,1162,1237,1233,1199,1169,1174,1196,1221,
+1262,1289,1300,1291,1274,1260,1244,1227,1204,1186,1170,1139,1104,1081,1072,1072,1069,1058,1044,1033,
+1019,973,912,873,843,816,805,789,758,729,711,696,676,620,588,579,578,555,515,498,
+516,494,474,460,451,419,391,380,331,266,248,303,297,280,261,243,241,244,201,143,
+98,48,7,23,127,142,81,-22,-61,-127,-174,-185,-160,-164,-193,-241,-301,-368,-399,-391,
+-368,-339,-342,-388,-419,-337,-224,-302,-388,-465,-602,-756,-892,-1000,-1109,-1179,-1280,-1414,-1506,-1599,
+-1679,-1755,-1853,-1953,-2035,-2084,-2134,-2196,-2267,-2298,-2328,-2366,-2401,-2414,-2448,-2478,-2481,-2481,-2499,-2489,
+-2524,-2577,-2636,-2723,-2795,-2829,-2868,-2900,-2899,-2923,-2949,-2973,-3040,-3262,-3531,-3563,-3602,-3627,-3685,-3783,
+-3885,-3992,-4031,-4045,-4202,-4305,-4381,-4383,-4368,-4365,-4425,-4544,-4840,-5269,-5445,-5479,-5460,-5431,-5409,-5401,
+-5414,-5443,-5481,-5529,-5580,-5636,-5698,-5762,-5827,-5894,-5960,-6017,-6073,-6129,-6191,-6257,-6345,-6448,-6567,-6692,
+-6826,-6897,-6951,-6970,-6953,-6954,-6991,-7061,-7110,-7179,-7225,-7302,-7396,-7497,-7580,-7613,-7584,-7557,-7491,-7424,
+-7388,-7416,-7416,-7523,-7657,-7725,-7756,-7675,-7670,-7675,-7636,-7589,-7597,-7614,-7653,-7691,-7723,-7742,-7762,-7784,
+-7797,-7793,-7769,-7742,-7716,-7726,-7747,-7775,-7813,-7833,-7849,-7847,-7819,-7773,-7702,-7636,-7622,-7537,-7425,-7390,
+-7345,-7334,-7387,-7470,-7530,-7553,-7623,-7799,-7844,-7857,-7889,-7924,-7936,-7906,-7856,-7736,-7604,-7501,-7410,-7336,
+-7275,-7211,-7152,-7084,-7019,-6951,-6875,-6786,-6694,-6595,-6497,-6398,-6308,-6219,-6134,-6074,-6025,-5987,-5958,-5944,
+-5935,-5931,-5940,-5963,-5987,-5996,-5984,-5933,-5781,-5583,-5388,-5197,-5129,-5060,-4992,-4886,-4756,-4675,-4605,-4513,
+-4424,-4349,-4284,-4222,-4111,-4025,-3891,-3849,-3826,-3784,-3765,-3733,-3678,-3588,-3503,-3406,-3329,-3261,-3182,-3215,
+-3185,-3151,-3112,-3049,-2993,-2917,-2843,-2804,-2761,-2733,-2700,-2646,-2543,-2412,-2288,-2161,-2030,-1901,-1856,-1828,
+-1799,-1756,-1687,-1619,-1549,-1475,-1370,-1245,-1131,-1012,-901,-810,-771,-758,-736,-670,-560,-416,-284,-161,
+-52,76,189,283,363,426,498,612,738,845,934,1051,1172,1265,1351,1452,1581,1706,1821,1923,
+2030,2136,2246,2354,2442,2533,2641,2806,2737,2818,2921,3114,3426,3608,3884,4248,4455,4315,4068,4028,
+4177,4129,3738,3360,3369,3467,3573,3758,3903,3995,4061,4131,4188,4204,4212,4213,4195,4169,4175,4191,
+4221,4206,4204,4207,4213,4242,4291,4322,4307,4289,4292,4332,4346,4340,4343,4338,4350,4360,4367,4384,
+4378,4385,4388,4399,4415,4429,4454,4483,4500,4518,4528,4618,4648,4663,4696,4705,4739,4770,4798,4831,
+4847,4868,4887,4904,4938,4960,5007,5032,5012,4981,5024,5085,5072,5059,5043,5042,5055,5058,5047,5049,
+5058,5058,5068,5139,5221,5277,5250,5234,5232,5252,5256,5199,5182,5094,5026,4924,4743,4534,4276,4037,
+3763,3453,3253,3014,3084,3353,3619,3842,3967,4040,4112,4233,4422,4420,4397,4275,4169,3988,3851,3957,
+4040,3965,3898,3894,3785,3689,3503,3455,3613,3688,3599,3373,3238,3180,3155,3156,3124,3092,3075,3048,
+2993,2935,2887,2832,2785,2749,2728,2713,2694,2662,2619,2593,2564,2529,2483,2440,2402,2362,2321,2279,
+2252,2284,2381,2486,2355,2237,2180,2154,2134,2099,2061,2024,1972,1917,1875,1891,2017,1811,1749,1713,
+1713,1813,1724,1657,1634,1624,1576,1540,1513,1494,1464,1435,1387,1334,1296,1275,1293,1304,1219,1148,
+1170,1178,1160,1137,1080,1037,999,1071,1144,1042,990,949,938,955,939,905,909,912,879,867,
+858,842,820,799,775,742,706,703,681,685,697,691,674,659,646,636,624,609,590,569,
+547,588,693,769,722,747,695,695,727,746,763,754,760,799,824,801,776,780,780,787,
+798,818,839,861,886,910,929,923,908,902,894,876,881,912,897,869,897,1074,1160,1023,
+917,903,916,930,932,927,918,903,877,860,842,834,823,816,816,810,792,764,731,706,
+684,668,656,652,651,649,647,645,637,628,619,605,589,578,579,587,592,597,588,577,
+578,578,580,535,502,469,438,409,349,302,258,223,174,142,92,49,6,-42,-72,-96,
+-129,-167,-212,-260,-304,-334,-367,-393,-417,-445,-477,-512,-550,-584,-619,-652,-687,-720,-750,-777,
+-809,-836,-862,-892,-923,-951,-968,-1017,-1047,-1097,-1130,-1186,-1240,-1285,-1317,-1350,-1382,-1422,-1464,-1511,
+-1560,-1609,-1662,-1711,-1757,-1801,-1844,-1886,-1924,-1964,-2010,-2053,-2089,-2128,-2171,-2209,-2242,-2273,-2306,-2338,
+-2372,-2414,-2459,-2501,-2549,-2587,-2635,-2685,-2728,-2771,-2817,-2862,-2917,-2977,-3032,-3083,-3139,-3196,-3253,-3302,
+-3344,-3389,-3435,-3473,-3507,-3528,-3577,-3614,-3648,-3691,-3732,-3769,-3808,-3845,-3873,-3902,-3934,-3972,-3978,-4022,
+-4037,-4051,-4087,-4123,-4151,-4191,-4226,-4250,-4276,-4306,-4333,-4357,-4383,-4409,-4434,-4450,-4458,-4480,-4497,-4512,
+-4523,-4544,-4562,-4587,-4607,-4613,-4611,-4604,-4595,-4594,-4602,-4606,-4614,-4615,-4615,-4612,-4602,-4588,-4575,-4559,
+-4533,-4498,-4462,-4439,-4410,-4373,-4359,-4355,-4332,-4306,-4267,-4203,-4206,-4168,-4119,-4074,-4033,-3993,-3951,-3902,
+-3844,-3796,-3745,-3700,-3651,-3613,-3564,-3501,-3479,-3416,-3398,-3350,-3289,-3234,-3202,-3182,-3136,-3087,-3046,-2995,
+-2960,-2930,-2870,-2770,-2701,-2635,-2552,-2485,-2424,-2363,-2298,-2244,-2187,-2123,-2062,-2013,-2040,-2042,-2055,-2087,
+-2097,-2086,-2049,-1968,-1866,-1708,-1525,-1316,-1104,-960,-863,-740,-647,-689,-626,-545,-402,-323,-276,-261,
+-193,-76,-41,-27,-46,-109,-199,-404,-594,-864,-996,-1047,-1060,-1026,-983,-954,-899,-910,-859,-683,
+-508,-549,-507,-506,-571,-581,-629,-632,-626,-609,-580,-545,-509,-484,-480,-465,-472,-452,-447,-523,
+-619,-673,-722,-891,-890,-832,-821,-857,-888,-918,-936,-942,-944,-907,-839,-728,-661,-675,-709,-717,
+-706,-723,-738,-752,-801,-831,-872,-915,-941,-930,-977,-1072,-1121,-1189,-1235,-1236,-1190,-1208,-1298,-1385,
+-1475,-1526,-1562,-1654,-1762,-1838,-1883,-1898,-1903,-1949,-2011,-2054,-2179,-2323,-2440,-2583,-2684,-2797,-2920,-3002,
+-3074,-3129,-3190,-3225,-3204,-3022,-3032,-3232,-3371,-3515,-3663,-3791,-3910,-4023,-4141,-4243,-4315,-4386,-4440,-4449,
+-4457,-4472,-4492,-4529,-4557,-4576,-4594,-4607,-4613,-4603,-4586,-4567,-4558,-4552,-4553,-4513,-4332,-4197,-4189,-4216,
+-4206,-4164,-4178,-4159,-4100,-4160,-4539,-4975,-5655,-6151,-6319,-6263,-6088,-5870,-5633,-5388,-5166,-5006,-4900,-4864,
+-4863,-4873,-4865,-4834,-4794,-4746,-4720,-4693,-4655,-4648,-4640,-4606,-4552,-4487,-4412,-4357,-4298,-4252,-4188,-4151,
+-4114,-4093,-4073,-4064,-4053,-4006,-3947,-3915,-3849,-3747,-3667,-3616,-3578,-3520,-3472,-3420,-3336,-3262,-3199,-3144,
+-3084,-3008,-2930,-2826,-2732,-2659,-2645,-2546,-2483,-2441,-2420,-2399,-2372,-2324,-2296,-2266,-2229,-2195,-2149,-2094,
+-2035,-1994,-1931,-1881,-1841,-1801,-1749,-1690,-1650,-1592,-1552,-1510,-1454,-1407,-1354,-1292,-1234,-1177,-1104,-1051,
+-981,-896,-843,-754,-680,-601,-515,-452,-379,-300,-235,-164,-85,-5,71,153,232,305,381,459,
+528,597,676,752,835,899,971,1043,1115,1178,1244,1294,1344,1388,1505,1539,1527,1568,1618,1662,
+1708,1754,1803,1842,1887,1937,1995,2083,2191,2369,2677,2831,2825,2683,2575,2511,2484,2486,2510,2561,
+2610,2618,2597,2600,2690,2602,2557,2565,2589,2613,2628,2632,2634,2639,2652,2661,2665,2669,2686,2712,
+2739,2774,2824,2891,2988,3121,3231,3282,3223,3180,3225,3255,3260,3270,3294,3321,3395,3435,3364,3223,
+3091,2967,2868,2852,2851,2804,2768,2741,2726,2729,2744,2759,2771,2778,2777,2767,2750,2734,2731,2731,
+2734,2736,2737,2745,2759,2764,2764,2767,2771,2762,2749,2742,2731,2723,2731,2747,2760,2779,2803,2839,
+2868,2873,2862,2847,2831,2822,2811,2803,2802,2798,2775,2793,2776,2756,2713,2716,2707,2670,2624,2602,
+2594,2564,2529,2507,2449,2357,2281,2238,2229,2241,2246,2264,2280,2281,2263,2248,2239,2234,2241,2240,
+2218,2198,2196,2212,2258,2280,2324,2372,2401,2424,2430,2431,2403,2386,2344,2272,2226,2176,2123,2075,
+2046,2022,1996,1953,1905,1871,1857,1845,1813,1755,1691,1630,1589,1550,1508,1467,1428,1389,1372,1357,
+1328,1289,1249,1205,1163,1111,1063,1041,1039,1052,1058,1080,1124,1160,1225,1232,1199,1170,1166,1203,
+1216,1239,1269,1302,1298,1280,1253,1228,1204,1176,1157,1137,1105,1073,1051,1040,1038,1023,1013,1006,
+1001,998,951,896,859,840,823,805,780,739,708,687,662,622,584,567,557,561,532,477,
+483,479,450,430,429,404,366,365,361,298,226,195,227,251,239,223,201,192,187,147,
+104,96,62,77,88,59,85,84,-61,-75,-138,-207,-220,-197,-198,-232,-255,-310,-373,-417,
+-438,-438,-410,-402,-382,-436,-369,-251,-307,-370,-438,-547,-694,-855,-967,-1069,-1159,-1265,-1385,-1473,
+-1559,-1627,-1707,-1801,-1874,-1935,-1962,-2013,-2107,-2172,-2182,-2194,-2252,-2271,-2288,-2317,-2334,-2349,-2371,-2387,
+-2406,-2441,-2484,-2518,-2591,-2680,-2728,-2789,-2844,-2978,-3041,-3051,-3129,-3230,-3400,-3490,-3500,-3495,-3544,-3612,
+-3733,-3861,-3970,-4034,-4028,-4251,-4377,-4410,-4391,-4377,-4388,-4450,-4579,-4952,-5341,-5480,-5507,-5491,-5471,-5451,
+-5445,-5457,-5484,-5526,-5577,-5634,-5697,-5764,-5833,-5907,-5978,-6041,-6097,-6154,-6210,-6268,-6333,-6411,-6503,-6614,
+-6732,-6873,-6978,-7050,-7084,-7093,-7084,-7092,-7138,-7183,-7267,-7305,-7369,-7458,-7555,-7649,-7718,-7731,-7720,-7656,
+-7620,-7544,-7510,-7481,-7603,-7726,-7799,-7820,-7789,-7752,-7763,-7739,-7706,-7690,-7688,-7721,-7751,-7791,-7818,-7863,
+-7900,-7920,-7897,-7866,-7842,-7817,-7827,-7844,-7890,-7953,-7981,-7997,-7990,-7956,-7897,-7812,-7714,-7673,-7657,-7628,
+-7569,-7526,-7542,-7611,-7686,-7736,-7792,-7922,-7991,-7981,-7986,-8000,-8018,-7999,-7972,-7917,-7798,-7666,-7558,-7463,
+-7385,-7320,-7257,-7194,-7126,-7056,-6981,-6898,-6800,-6699,-6599,-6504,-6410,-6315,-6235,-6167,-6109,-6052,-6004,-5968,
+-5946,-5935,-5928,-5933,-5955,-5989,-6011,-5998,-5936,-5755,-5538,-5328,-5198,-5099,-5037,-4966,-4875,-4765,-4696,-4622,
+-4523,-4413,-4324,-4240,-4177,-4111,-3988,-3954,-3828,-3823,-3787,-3734,-3704,-3675,-3565,-3465,-3385,-3264,-3281,-3199,
+-3171,-3178,-3147,-3087,-3019,-2948,-2876,-2795,-2725,-2667,-2639,-2616,-2575,-2490,-2378,-2251,-2143,-2026,-1891,-1785,
+-1728,-1683,-1649,-1601,-1536,-1465,-1405,-1322,-1199,-1076,-952,-835,-783,-775,-753,-701,-611,-482,-319,-180,
+-70,54,204,302,370,445,503,600,692,802,901,1051,1147,1250,1357,1446,1546,1662,1777,1880,
+1995,2108,2223,2345,2445,2532,2621,2696,2793,2784,2860,3029,3257,3448,3654,4010,4355,4561,4420,4203,
+4112,4230,4271,3941,3452,3355,3459,3653,3868,3949,4069,4177,4258,4264,4276,4277,4252,4230,4219,4242,
+4275,4275,4272,4290,4319,4318,4331,4350,4361,4341,4354,4388,4327,4414,4418,4415,4401,4399,4404,4405,
+4421,4424,4433,4434,4433,4456,4480,4507,4533,4554,4566,4568,4616,4712,4713,4725,4746,4773,4801,4833,
+4849,4873,4892,4893,4925,4950,5011,5049,5038,5049,4966,5074,5138,5102,5084,5085,5074,5078,5079,5070,
+5073,5077,5079,5092,5162,5233,5324,5274,5274,5275,5281,5292,5279,5233,5166,5098,5031,4848,4661,4372,
+4110,3792,3489,3201,3046,3146,3406,3670,3882,4015,4082,4186,4424,4611,4468,4562,4475,4141,3912,3829,
+4061,4333,4199,3833,3698,3605,3527,3475,3511,3731,3952,3717,3416,3247,3171,3138,3123,3115,3101,3088,
+3055,3009,2956,2909,2862,2812,2776,2756,2740,2714,2675,2635,2599,2572,2541,2502,2467,2432,2393,2350,
+2307,2283,2324,2496,2586,2365,2249,2196,2172,2156,2119,2082,2043,2005,1971,1941,1938,1919,1812,1772,
+1757,1787,1886,1772,1694,1675,1719,1637,1582,1560,1540,1516,1477,1433,1393,1353,1313,1283,1299,1312,
+1200,1185,1174,1154,1136,1097,1064,1034,1015,1009,991,952,934,925,929,938,931,924,940,939,
+899,895,879,863,845,823,791,757,719,716,706,696,690,683,676,676,672,664,646,638,
+617,592,570,600,739,743,696,675,691,708,735,785,757,762,782,815,784,782,791,798,
+815,821,849,846,865,910,929,941,939,940,921,907,894,939,1096,1036,935,910,992,1199,
+1148,998,931,925,938,944,948,937,918,898,885,866,850,835,825,818,811,786,761,761,
+708,682,679,658,651,649,649,645,637,627,612,597,579,564,553,554,555,555,554,544,
+532,528,540,530,506,487,466,435,399,382,320,274,221,186,161,109,60,14,-36,-75,
+-107,-145,-187,-229,-275,-315,-341,-381,-407,-430,-454,-483,-511,-537,-569,-597,-625,-654,-686,-714,
+-746,-781,-816,-850,-877,-905,-928,-956,-982,-1023,-1083,-1121,-1168,-1215,-1262,-1296,-1330,-1364,-1398,-1441,
+-1492,-1543,-1592,-1636,-1682,-1729,-1772,-1814,-1857,-1893,-1934,-1976,-2014,-2048,-2085,-2127,-2167,-2201,-2235,-2268,
+-2304,-2338,-2383,-2432,-2475,-2526,-2569,-2624,-2679,-2724,-2772,-2825,-2881,-2932,-2986,-3041,-3088,-3131,-3170,-3216,
+-3261,-3301,-3346,-3391,-3429,-3458,-3492,-3538,-3577,-3616,-3660,-3704,-3747,-3793,-3830,-3863,-3894,-3923,-3954,-3980,
+-4005,-4028,-4054,-4082,-4111,-4150,-4187,-4222,-4252,-4281,-4291,-4317,-4335,-4355,-4388,-4413,-4430,-4447,-4463,-4485,
+-4502,-4521,-4540,-4559,-4569,-4578,-4581,-4578,-4573,-4567,-4569,-4575,-4590,-4592,-4594,-4594,-4592,-4586,-4570,-4555,
+-4537,-4507,-4456,-4388,-4400,-4379,-4363,-4368,-4361,-4335,-4309,-4280,-4245,-4208,-4161,-4116,-4071,-4036,-3994,-3958,
+-3884,-3840,-3786,-3739,-3694,-3648,-3596,-3546,-3494,-3496,-3416,-3373,-3342,-3293,-3234,-3193,-3168,-3129,-3077,-3027,
+-2982,-2966,-2933,-2862,-2756,-2697,-2600,-2534,-2465,-2413,-2352,-2286,-2226,-2172,-2110,-2051,-1995,-1952,-1973,-1939,
+-1955,-1969,-1986,-1968,-1945,-1900,-1831,-1715,-1600,-1483,-1300,-1126,-969,-851,-766,-716,-617,-485,-412,-389,
+-373,-337,-144,-82,-91,-24,-138,-205,-320,-471,-691,-797,-816,-868,-832,-767,-721,-688,-710,-678,
+-578,-434,-364,-345,-337,-372,-457,-521,-583,-578,-543,-514,-491,-471,-452,-422,-400,-364,-329,-349,
+-446,-548,-562,-703,-794,-787,-762,-781,-823,-858,-882,-871,-821,-781,-696,-615,-593,-576,-592,-537,
+-494,-550,-603,-637,-668,-713,-734,-756,-795,-804,-814,-842,-919,-1017,-1095,-1157,-1208,-1187,-1166,-1215,
+-1283,-1354,-1427,-1461,-1579,-1669,-1721,-1831,-1886,-1896,-1920,-1979,-2025,-2096,-2234,-2359,-2455,-2602,-2719,-2824,
+-2876,-2930,-3008,-3080,-3101,-3029,-2989,-3071,-3180,-3306,-3418,-3535,-3638,-3743,-3846,-3954,-4045,-4124,-4194,-4246,
+-4277,-4305,-4330,-4365,-4398,-4413,-4420,-4439,-4457,-4488,-4509,-4507,-4502,-4511,-4514,-4507,-4465,-4319,-4239,-4236,
+-4236,-4206,-4168,-4123,-4122,-4112,-4157,-4399,-4792,-5448,-6103,-6360,-6336,-6168,-5935,-5712,-5516,-5314,-5132,-5005,
+-4947,-4930,-4938,-4945,-4923,-4870,-4816,-4766,-4754,-4748,-4745,-4732,-4704,-4645,-4579,-4519,-4453,-4394,-4346,-4298,
+-4247,-4205,-4157,-4109,-4067,-4035,-3991,-3942,-3914,-3872,-3790,-3711,-3646,-3562,-3523,-3460,-3416,-3346,-3285,-3221,
+-3148,-3090,-3020,-2942,-2869,-2772,-2693,-2671,-2574,-2488,-2467,-2467,-2433,-2397,-2367,-2313,-2262,-2224,-2185,-2155,
+-2134,-2112,-2062,-2007,-1949,-1894,-1840,-1784,-1741,-1675,-1637,-1575,-1529,-1477,-1412,-1370,-1317,-1256,-1190,-1126,
+-1079,-980,-908,-853,-766,-684,-602,-539,-471,-399,-333,-266,-187,-116,-45,27,100,167,252,330,
+407,482,562,634,708,779,841,919,988,1051,1124,1178,1239,1297,1334,1382,1429,1482,1514,1565,
+1614,1659,1703,1745,1794,1843,1892,1957,2037,2149,2338,2645,3037,3028,2841,2687,2582,2511,2495,2532,
+2641,2795,2776,2657,2593,2583,2539,2511,2530,2559,2589,2612,2627,2635,2642,2655,2664,2668,2675,2693,
+2722,2752,2786,2838,2901,2988,3127,3234,3251,3173,3147,3194,3228,3233,3251,3264,3291,3361,3418,3379,
+3250,3106,2977,2888,2853,2820,2787,2749,2723,2709,2726,2753,2771,2772,2758,2747,2739,2735,2735,2736,
+2737,2742,2747,2750,2775,2784,2776,2764,2781,2817,2794,2773,2762,2749,2750,2766,2787,2804,2818,2839,
+2862,2875,2870,2860,2847,2827,2815,2805,2787,2765,2772,2747,2732,2756,2650,2654,2654,2632,2616,2590,
+2571,2571,2537,2497,2489,2441,2334,2252,2203,2195,2210,2224,2244,2253,2247,2222,2210,2195,2194,2195,
+2197,2188,2185,2180,2189,2226,2235,2273,2327,2344,2357,2364,2359,2341,2337,2295,2211,2157,2117,2084,
+2047,2013,1984,1955,1916,1879,1840,1803,1780,1756,1707,1652,1593,1547,1506,1466,1420,1375,1340,1323,
+1313,1292,1264,1234,1188,1133,1103,1069,1052,1051,1053,1056,1073,1118,1162,1238,1234,1181,1153,1161,
+1179,1179,1192,1227,1274,1286,1269,1237,1203,1178,1154,1127,1102,1068,1039,1016,1008,997,968,962,
+968,962,954,919,871,841,834,829,806,773,722,689,647,611,590,572,554,541,530,500,
+472,455,431,406,378,370,350,323,343,349,286,229,202,182,192,201,175,145,134,134,
+114,86,79,63,142,135,99,123,93,-79,-125,-164,-234,-252,-252,-236,-260,-292,-344,-377,
+-430,-467,-489,-481,-459,-449,-467,-511,-346,-352,-391,-409,-499,-664,-825,-936,-1037,-1146,-1246,-1341,
+-1421,-1503,-1579,-1657,-1725,-1784,-1828,-1851,-1921,-2007,-2092,-2120,-2099,-2140,-2143,-2177,-2202,-2226,-2270,-2321,
+-2353,-2383,-2429,-2460,-2465,-2542,-2571,-2662,-2803,-2925,-3038,-3108,-3202,-3294,-3352,-3431,-3427,-3447,-3489,-3556,
+-3655,-3752,-3880,-3998,-4087,-4109,-4269,-4419,-4466,-4450,-4428,-4413,-4434,-4587,-5053,-5393,-5505,-5531,-5523,-5506,
+-5490,-5487,-5499,-5531,-5574,-5627,-5691,-5757,-5825,-5899,-5978,-6052,-6113,-6172,-6232,-6292,-6351,-6413,-6486,-6569,
+-6665,-6772,-6915,-7047,-7120,-7167,-7202,-7213,-7199,-7225,-7285,-7356,-7393,-7441,-7524,-7622,-7715,-7787,-7826,-7823,
+-7791,-7750,-7675,-7616,-7579,-7686,-7797,-7849,-7884,-7867,-7817,-7828,-7828,-7811,-7803,-7806,-7814,-7834,-7857,-7894,
+-7944,-7988,-8026,-8019,-7990,-7974,-7951,-7964,-7986,-8036,-8088,-8133,-8143,-8131,-8078,-8009,-7900,-7807,-7761,-7772,
+-7740,-7682,-7667,-7700,-7806,-7926,-8028,-8100,-8129,-8119,-8102,-8093,-8087,-8069,-8031,-8010,-7956,-7836,-7711,-7605,
+-7508,-7429,-7362,-7292,-7227,-7159,-7090,-7017,-6924,-6819,-6712,-6608,-6508,-6412,-6330,-6261,-6195,-6125,-6061,-6009,
+-5972,-5946,-5930,-5921,-5933,-5959,-6000,-6020,-6000,-5914,-5682,-5487,-5278,-5157,-5058,-5005,-4933,-4850,-4752,-4688,
+-4616,-4530,-4407,-4297,-4182,-4117,-4087,-3998,-3956,-3850,-3782,-3760,-3702,-3666,-3634,-3540,-3429,-3309,-3228,-3271,
+-3153,-3149,-3155,-3125,-3079,-3012,-2923,-2846,-2777,-2708,-2631,-2562,-2527,-2492,-2425,-2341,-2230,-2106,-2000,-1905,
+-1759,-1669,-1615,-1540,-1497,-1447,-1384,-1323,-1251,-1147,-1033,-912,-821,-791,-765,-711,-631,-523,-345,-227,
+-98,24,145,309,382,454,510,603,680,742,859,991,1121,1246,1361,1410,1515,1636,1734,1835,
+1960,2103,2192,2316,2436,2547,2634,2706,2825,2850,2873,2948,3201,3483,3660,3836,4115,4484,4569,4449,
+4301,4245,4308,4340,3862,3436,3386,3554,3767,3919,4025,4182,4309,4325,4332,4330,4330,4285,4294,4314,
+4352,4329,4307,4325,4355,4382,4389,4399,4403,4398,4379,4391,4433,4387,4432,4496,4478,4471,4458,4461,
+4443,4466,4466,4474,4476,4483,4503,4535,4561,4585,4603,4606,4614,4675,4756,4768,4759,4791,4810,4842,
+4864,4878,4905,4919,4927,4970,4992,5027,5053,5075,5057,5006,5066,5088,5107,5106,5108,5102,5107,5100,
+5096,5096,5101,5098,5119,5211,5252,5311,5294,5302,5311,5321,5339,5320,5281,5227,5188,5158,5009,4823,
+4502,4221,3899,3538,3271,3113,3230,3486,3753,3972,4107,4150,4199,4369,4454,4295,4283,4216,4021,3864,
+3832,4024,4253,4103,3844,3642,3551,3500,3491,3551,3707,3819,3674,3399,3242,3195,3128,3115,3105,3092,
+3079,3048,3012,2971,2936,2920,2853,2803,2776,2748,2722,2686,2651,2612,2576,2553,2517,2480,2447,2409,
+2371,2330,2305,2328,2411,2427,2329,2256,2211,2192,2174,2151,2121,2077,2057,2095,2051,1987,1887,1846,
+1839,1834,1903,1925,1840,1759,1718,1694,1652,1623,1597,1580,1549,1520,1494,1467,1424,1377,1329,1318,
+1342,1250,1216,1194,1167,1152,1135,1118,1094,1060,1031,1004,992,1010,1002,987,979,988,971,957,
+944,939,928,909,894,883,859,826,793,756,738,716,697,688,674,679,690,694,693,685,
+671,670,648,618,607,620,640,653,678,706,720,724,741,756,753,759,767,780,800,814,
+815,822,829,833,845,866,897,923,948,949,952,936,920,914,959,1116,1297,1057,928,941,
+1025,1175,1043,947,946,952,965,965,955,936,921,910,896,871,846,830,818,806,789,771,
+757,719,705,740,677,652,645,640,634,622,610,596,578,558,541,537,535,534,528,518,
+509,491,486,520,491,477,466,451,423,392,368,330,290,241,190,164,117,72,28,-17,
+-62,-108,-148,-189,-231,-268,-299,-330,-365,-399,-427,-455,-474,-495,-516,-540,-565,-595,-622,-653,
+-684,-715,-754,-796,-834,-862,-885,-910,-941,-979,-1031,-1065,-1098,-1148,-1199,-1248,-1281,-1309,-1339,-1378,
+-1422,-1471,-1522,-1571,-1611,-1652,-1697,-1736,-1777,-1814,-1851,-1892,-1936,-1970,-2000,-2037,-2079,-2124,-2164,-2200,
+-2240,-2282,-2324,-2371,-2424,-2476,-2531,-2585,-2638,-2691,-2737,-2781,-2829,-2874,-2910,-2939,-2968,-2987,-3032,-3083,
+-3135,-3193,-3253,-3294,-3290,-3346,-3351,-3397,-3485,-3546,-3588,-3631,-3678,-3713,-3776,-3819,-3850,-3883,-3918,-3945,
+-3969,-3994,-4016,-4041,-4070,-4101,-4138,-4178,-4209,-4235,-4257,-4280,-4301,-4320,-4338,-4368,-4396,-4415,-4433,-4448,
+-4471,-4492,-4508,-4524,-4536,-4545,-4551,-4556,-4555,-4553,-4552,-4554,-4560,-4578,-4584,-4582,-4580,-4576,-4567,-4552,
+-4537,-4521,-4492,-4442,-4384,-4393,-4379,-4390,-4390,-4374,-4350,-4326,-4302,-4258,-4217,-4161,-4117,-4074,-4038,-3992,
+-3944,-3904,-3842,-3793,-3750,-3701,-3648,-3597,-3537,-3540,-3459,-3394,-3370,-3312,-3288,-3242,-3210,-3169,-3125,-3057,
+-2991,-2956,-2910,-2890,-2823,-2737,-2671,-2579,-2525,-2446,-2395,-2337,-2275,-2211,-2161,-2102,-2028,-1968,-1905,-1919,
+-1924,-1887,-1835,-1828,-1860,-1841,-1806,-1795,-1798,-1768,-1670,-1540,-1382,-1253,-1116,-944,-825,-719,-599,-514,
+-491,-468,-422,-280,-187,-71,-13,-114,-183,-293,-434,-586,-637,-682,-771,-726,-628,-559,-551,-558,
+-497,-459,-418,-232,-142,-164,-276,-408,-473,-495,-516,-488,-456,-422,-405,-365,-317,-268,-228,-234,
+-302,-396,-446,-499,-671,-715,-718,-731,-772,-802,-740,-606,-532,-481,-500,-517,-524,-460,-488,-512,
+-515,-535,-538,-502,-504,-541,-565,-619,-655,-699,-726,-720,-756,-848,-920,-1008,-1094,-1166,-1181,-1214,
+-1246,-1275,-1373,-1413,-1463,-1541,-1547,-1619,-1709,-1773,-1808,-1844,-1923,-2000,-2063,-2186,-2287,-2355,-2491,-2633,
+-2705,-2752,-2809,-2879,-2934,-2893,-2860,-2896,-2987,-3080,-3208,-3304,-3397,-3486,-3575,-3658,-3748,-3825,-3894,-3959,
+-4011,-4063,-4109,-4156,-4203,-4246,-4262,-4271,-4297,-4322,-4350,-4384,-4394,-4405,-4420,-4438,-4438,-4402,-4290,-4206,
+-4218,-4218,-4195,-4182,-4147,-4114,-4164,-4217,-4411,-4799,-5407,-5943,-6270,-6368,-6262,-6044,-5817,-5612,-5407,-5155,
+-4959,-4873,-4898,-4966,-4998,-4983,-4934,-4891,-4871,-4861,-4841,-4814,-4792,-4765,-4730,-4665,-4601,-4543,-4474,-4423,
+-4376,-4317,-4278,-4249,-4201,-4153,-4098,-4029,-3982,-3941,-3871,-3821,-3745,-3687,-3597,-3561,-3486,-3422,-3358,-3311,
+-3251,-3186,-3096,-3017,-2942,-2910,-2822,-2687,-2692,-2595,-2542,-2533,-2500,-2472,-2455,-2389,-2352,-2298,-2265,-2222,
+-2184,-2145,-2118,-2081,-2025,-1981,-1929,-1857,-1819,-1768,-1728,-1663,-1610,-1555,-1500,-1451,-1393,-1330,-1258,-1199,
+-1144,-1071,-998,-934,-862,-774,-686,-623,-553,-484,-422,-343,-279,-219,-156,-93,-22,46,108,191,
+274,357,436,512,585,656,712,792,860,926,987,1045,1102,1159,1223,1284,1339,1377,1429,1480,
+1526,1563,1608,1660,1720,1769,1823,1883,1948,2005,2095,2242,2449,2700,2921,2976,2825,2733,2592,2505,
+2555,2746,3046,2931,2715,2591,2520,2472,2461,2483,2522,2555,2584,2608,2619,2631,2646,2657,2661,2667,
+2686,2719,2752,2783,2834,2900,3000,3136,3212,3213,3127,3104,3156,3200,3210,3229,3243,3271,3332,3403,
+3392,3283,3124,2983,2890,2816,2804,2778,2748,2716,2706,2736,2773,2793,2767,2746,2723,2718,2729,2742,
+2747,2745,2746,2748,2760,2792,2801,2788,2764,2785,2838,2830,2813,2798,2794,2802,2816,2837,2849,2861,
+2873,2881,2878,2872,2866,2850,2826,2810,2803,2787,2752,2727,2722,2658,2650,2555,2565,2590,2567,2540,
+2532,2537,2526,2507,2475,2468,2424,2326,2226,2178,2168,2176,2195,2219,2224,2211,2193,2179,2165,2160,
+2150,2150,2160,2165,2166,2171,2192,2213,2228,2276,2294,2305,2317,2302,2290,2262,2225,2151,2092,2060,
+2022,1987,1949,1921,1901,1868,1829,1790,1741,1700,1678,1642,1599,1554,1514,1473,1424,1380,1351,1323,
+1297,1281,1272,1248,1221,1183,1144,1117,1086,1073,1065,1065,1071,1093,1126,1156,1227,1208,1160,1133,
+1150,1165,1168,1180,1217,1261,1276,1232,1194,1173,1156,1128,1096,1066,1035,1008,986,974,952,931,
+915,935,920,909,894,848,824,823,819,792,749,694,643,594,578,575,550,533,540,525,
+484,461,432,401,376,349,321,314,317,329,345,263,201,192,172,151,148,125,95,91,
+97,88,76,52,50,124,153,96,50,40,-97,-161,-199,-261,-308,-313,-274,-283,-344,-387,
+-423,-454,-500,-535,-554,-523,-502,-486,-544,-502,-459,-442,-523,-566,-666,-815,-941,-1038,-1139,-1229,
+-1303,-1377,-1442,-1488,-1578,-1639,-1682,-1736,-1787,-1851,-1921,-2004,-2053,-2047,-2078,-2098,-2118,-2164,-2193,-2256,
+-2324,-2360,-2419,-2491,-2555,-2596,-2654,-2765,-2884,-2958,-3069,-3101,-3114,-3154,-3190,-3293,-3350,-3393,-3461,-3511,
+-3597,-3696,-3776,-3901,-4023,-4129,-4183,-4268,-4428,-4519,-4544,-4517,-4478,-4488,-4653,-5152,-5429,-5527,-5555,-5549,
+-5538,-5525,-5529,-5548,-5577,-5622,-5680,-5748,-5813,-5886,-5959,-6037,-6110,-6180,-6244,-6306,-6370,-6431,-6494,-6566,
+-6642,-6725,-6818,-6940,-7080,-7172,-7217,-7268,-7309,-7308,-7316,-7359,-7429,-7483,-7528,-7606,-7697,-7782,-7842,-7881,
+-7908,-7869,-7856,-7748,-7740,-7726,-7760,-7854,-7899,-7942,-7948,-7874,-7875,-7891,-7892,-7902,-7919,-7939,-7944,-7939,
+-7973,-8022,-8077,-8114,-8131,-8128,-8121,-8109,-8103,-8124,-8153,-8201,-8248,-8259,-8243,-8185,-8105,-8014,-7911,-7898,
+-7881,-7817,-7799,-7803,-7875,-8006,-8134,-8220,-8251,-8252,-8239,-8212,-8182,-8147,-8112,-8072,-8020,-7966,-7859,-7746,
+-7642,-7548,-7475,-7405,-7334,-7261,-7189,-7121,-7049,-6950,-6839,-6729,-6620,-6523,-6435,-6356,-6285,-6207,-6132,-6069,
+-6015,-5976,-5952,-5927,-5924,-5938,-5983,-6030,-6037,-5990,-5847,-5644,-5427,-5221,-5108,-5024,-4970,-4900,-4820,-4728,
+-4681,-4640,-4529,-4421,-4297,-4176,-4090,-4061,-4014,-3891,-3837,-3729,-3729,-3675,-3629,-3593,-3507,-3409,-3286,-3194,
+-3237,-3093,-3101,-3136,-3102,-3058,-3010,-2935,-2855,-2779,-2708,-2641,-2551,-2492,-2444,-2385,-2311,-2207,-2084,-1966,
+-1838,-1738,-1620,-1497,-1431,-1398,-1354,-1310,-1245,-1184,-1094,-987,-881,-833,-789,-732,-650,-555,-426,-282,
+-135,16,157,241,358,503,571,613,690,766,855,979,1131,1229,1331,1408,1487,1589,1692,1802,
+1925,2032,2186,2274,2398,2529,2638,2733,2811,2879,2918,2944,3030,3327,3700,3868,4014,4254,4513,4583,
+4515,4418,4384,4405,4219,3642,3429,3455,3632,3826,3958,4095,4261,4341,4383,4373,4370,4376,4353,4367,
+4380,4383,4356,4372,4390,4402,4414,4421,4428,4440,4441,4435,4458,4496,4504,4459,4491,4503,4544,4518,
+4525,4504,4508,4515,4525,4520,4518,4548,4581,4604,4615,4633,4639,4669,4772,4804,4797,4799,4829,4848,
+4875,4888,4905,4913,4935,4964,4982,5026,5065,5069,5082,5068,5088,5107,5056,5117,5118,5116,5122,5133,
+5127,5121,5120,5126,5127,5148,5207,5296,5360,5316,5329,5334,5354,5372,5360,5335,5283,5246,5232,5146,
+4918,4581,4278,3979,3716,3422,3220,3328,3585,3863,4083,4296,4232,4220,4224,4217,4173,4129,4060,3960,
+3883,3861,3912,3954,3873,3741,3633,3567,3524,3519,3548,3595,3644,3584,3358,3251,3194,3151,3125,3094,
+3072,3052,3033,3006,2973,2955,2985,2894,2835,2792,2766,2731,2703,2674,2639,2598,2569,2529,2485,2450,
+2415,2386,2351,2329,2318,2356,2419,2373,2338,2259,2222,2203,2185,2155,2116,2103,2202,2092,1988,1920,
+1896,1896,1903,2045,2154,1947,1824,1767,1721,1685,1653,1635,1614,1584,1564,1539,1514,1480,1441,1387,
+1355,1328,1275,1260,1325,1215,1179,1171,1160,1144,1113,1084,1057,1056,1056,1041,1048,1040,1031,1023,
+1009,984,971,964,952,925,913,886,848,823,796,764,741,724,690,679,688,723,720,716,
+710,704,716,699,670,660,654,658,680,704,734,756,745,825,758,732,733,746,762,782,
+773,778,784,802,810,829,855,887,914,938,945,938,927,911,907,938,1018,1116,1009,937,
+928,980,1117,1074,967,957,963,972,974,969,956,943,933,921,897,878,871,822,813,805,
+795,775,743,725,747,721,667,651,638,621,603,592,578,560,538,529,531,525,517,505,
+490,477,462,455,454,471,460,442,422,390,370,347,322,288,244,196,146,104,69,36,
+-9,-55,-104,-151,-191,-227,-254,-286,-317,-351,-383,-415,-443,-455,-474,-496,-518,-545,-575,-605,
+-634,-666,-700,-735,-779,-814,-841,-862,-903,-931,-961,-989,-1026,-1074,-1126,-1172,-1213,-1245,-1279,-1314,
+-1354,-1400,-1446,-1496,-1544,-1580,-1616,-1655,-1690,-1730,-1763,-1801,-1840,-1884,-1922,-1957,-1995,-2043,-2090,-2136,
+-2184,-2235,-2285,-2331,-2383,-2438,-2492,-2542,-2584,-2620,-2652,-2681,-2710,-2741,-2777,-2812,-2852,-2901,-2939,-2989,
+-3042,-3102,-3156,-3213,-3258,-3232,-3309,-3385,-3437,-3474,-3522,-3565,-3603,-3649,-3692,-3737,-3778,-3816,-3856,-3893,
+-3927,-3954,-3981,-4012,-4039,-4070,-4093,-4125,-4165,-4194,-4217,-4240,-4256,-4273,-4293,-4314,-4339,-4370,-4395,-4416,
+-4432,-4453,-4477,-4497,-4509,-4514,-4522,-4525,-4538,-4547,-4555,-4555,-4559,-4560,-4573,-4576,-4572,-4575,-4567,-4552,
+-4535,-4523,-4505,-4479,-4452,-4428,-4402,-4395,-4400,-4389,-4371,-4353,-4333,-4310,-4270,-4210,-4129,-4103,-4065,-4020,
+-3973,-3935,-3889,-3846,-3798,-3763,-3716,-3654,-3604,-3561,-3500,-3423,-3398,-3367,-3318,-3276,-3243,-3202,-3156,-3056,
+-3010,-2991,-2939,-2895,-2857,-2800,-2737,-2642,-2580,-2513,-2434,-2375,-2323,-2260,-2194,-2146,-2086,-2030,-1974,-1938,
+-1896,-1866,-1842,-1806,-1760,-1727,-1688,-1687,-1648,-1649,-1656,-1682,-1694,-1648,-1534,-1371,-1213,-1066,-930,-795,
+-690,-608,-531,-435,-306,-258,-169,-40,-39,-79,-139,-323,-474,-678,-740,-807,-779,-748,-666,-593,
+-523,-392,-309,-336,-321,-192,-83,-157,-298,-449,-438,-447,-433,-415,-372,-322,-262,-202,-144,-133,
+-228,-307,-356,-370,-526,-597,-624,-653,-665,-546,-401,-337,-291,-333,-346,-395,-429,-425,-418,-395,
+-401,-386,-369,-357,-357,-364,-419,-465,-528,-556,-585,-632,-637,-669,-762,-848,-937,-1038,-1115,-1160,
+-1188,-1225,-1283,-1354,-1397,-1451,-1479,-1507,-1552,-1592,-1660,-1701,-1797,-1900,-1961,-2041,-2159,-2250,-2286,-2390,
+-2527,-2597,-2652,-2720,-2763,-2763,-2770,-2775,-2828,-2905,-3001,-3104,-3181,-3257,-3337,-3413,-3483,-3554,-3622,-3687,
+-3750,-3810,-3870,-3928,-3990,-4050,-4099,-4126,-4146,-4179,-4203,-4231,-4274,-4291,-4301,-4329,-4355,-4366,-4348,-4240,
+-4186,-4187,-4181,-4164,-4176,-4137,-4148,-4170,-4167,-4262,-4672,-5068,-5343,-5923,-6287,-6304,-6116,-5890,-5680,-5474,
+-5275,-5081,-4925,-4830,-4800,-4841,-4857,-4824,-4792,-4807,-4823,-4803,-4786,-4792,-4773,-4734,-4670,-4634,-4593,-4523,
+-4455,-4421,-4375,-4336,-4286,-4233,-4173,-4118,-4063,-4022,-3971,-3925,-3885,-3832,-3769,-3687,-3612,-3517,-3436,-3376,
+-3319,-3262,-3187,-3108,-3036,-2959,-2904,-2835,-2719,-2698,-2597,-2562,-2575,-2535,-2504,-2478,-2417,-2386,-2344,-2285,
+-2249,-2204,-2157,-2122,-2089,-2044,-1991,-1956,-1910,-1824,-1785,-1739,-1679,-1625,-1576,-1525,-1469,-1414,-1356,-1294,
+-1233,-1164,-1099,-1028,-951,-887,-810,-723,-645,-569,-506,-439,-378,-320,-268,-202,-141,-81,-18,56,
+143,229,310,388,462,527,592,672,731,795,858,926,982,1033,1093,1152,1214,1270,1332,1389,
+1436,1479,1516,1565,1625,1682,1746,1799,1845,1904,1952,2020,2122,2252,2429,2571,2660,2737,2802,2634,
+2474,2538,2760,3019,3026,2805,2644,2509,2438,2420,2442,2476,2509,2544,2577,2592,2608,2625,2637,2644,
+2646,2669,2703,2738,2768,2811,2882,2991,3126,3166,3163,3092,3065,3120,3181,3204,3216,3229,3250,3304,
+3383,3393,3301,3148,2995,2881,2794,2782,2779,2743,2713,2719,2769,2803,2801,2781,2756,2735,2733,2746,
+2760,2761,2755,2749,2757,2768,2780,2797,2785,2780,2793,2821,2835,2836,2833,2835,2844,2855,2868,2873,
+2882,2887,2886,2878,2875,2866,2851,2831,2811,2799,2785,2768,2709,2688,2650,2555,2519,2470,2465,2464,
+2433,2426,2466,2474,2484,2475,2473,2413,2331,2225,2171,2154,2155,2163,2182,2187,2186,2174,2163,2147,
+2131,2115,2114,2118,2139,2154,2158,2169,2198,2206,2231,2253,2258,2267,2262,2252,2220,2179,2119,2064,
+2027,1963,1926,1887,1860,1841,1816,1777,1734,1682,1630,1605,1585,1550,1514,1483,1447,1403,1373,1347,
+1320,1296,1281,1268,1236,1201,1158,1136,1119,1098,1085,1080,1084,1087,1109,1132,1149,1208,1173,1127,
+1119,1138,1143,1152,1178,1213,1236,1255,1210,1174,1150,1131,1105,1063,1033,1005,988,975,944,916,
+902,902,920,900,892,873,829,801,796,782,750,704,653,603,562,547,543,530,543,542,
+512,475,451,412,377,352,320,303,315,314,307,278,220,177,163,133,111,96,75,56,
+50,56,61,58,45,27,68,98,94,49,27,-65,-175,-216,-291,-344,-346,-334,-356,-377,
+-417,-463,-494,-521,-573,-592,-589,-565,-550,-560,-509,-496,-461,-563,-684,-775,-858,-978,-1067,-1153,
+-1233,-1301,-1363,-1397,-1427,-1533,-1585,-1621,-1684,-1755,-1834,-1903,-1961,-2028,-2043,-2063,-2092,-2113,-2152,-2212,
+-2290,-2367,-2435,-2507,-2572,-2650,-2708,-2791,-2825,-2840,-2925,-2998,-3048,-3091,-3148,-3199,-3287,-3344,-3420,-3484,
+-3545,-3626,-3733,-3810,-3926,-4026,-4134,-4213,-4294,-4433,-4561,-4617,-4626,-4559,-4567,-4762,-5248,-5464,-5549,-5575,
+-5573,-5564,-5561,-5573,-5599,-5628,-5673,-5733,-5802,-5870,-5945,-6022,-6097,-6170,-6246,-6316,-6376,-6442,-6506,-6573,
+-6641,-6716,-6793,-6875,-6973,-7102,-7224,-7289,-7351,-7395,-7416,-7418,-7444,-7499,-7569,-7627,-7695,-7779,-7847,-7901,
+-7940,-7966,-7975,-7957,-7932,-7912,-7833,-7838,-7889,-7965,-8005,-8013,-7923,-7911,-7920,-7944,-7988,-8010,-8026,-8025,
+-8027,-8053,-8101,-8142,-8193,-8218,-8239,-8257,-8269,-8265,-8255,-8237,-8294,-8353,-8356,-8330,-8267,-8189,-8103,-8012,
+-7996,-7979,-7937,-7937,-7979,-8056,-8158,-8241,-8291,-8318,-8328,-8315,-8283,-8239,-8191,-8147,-8097,-8037,-7970,-7874,
+-7772,-7673,-7588,-7520,-7452,-7382,-7303,-7227,-7150,-7070,-6970,-6860,-6753,-6655,-6561,-6474,-6385,-6297,-6210,-6138,
+-6077,-6025,-5985,-5950,-5933,-5935,-5963,-6016,-6062,-6061,-5984,-5799,-5609,-5378,-5205,-5077,-5007,-4939,-4871,-4793,
+-4715,-4672,-4642,-4546,-4431,-4301,-4175,-4093,-4048,-3989,-3824,-3835,-3690,-3695,-3659,-3611,-3558,-3495,-3389,-3296,
+-3225,-3177,-3107,-3046,-3076,-3077,-3044,-3014,-2961,-2883,-2803,-2730,-2650,-2563,-2489,-2416,-2353,-2279,-2184,-2064,
+-1917,-1758,-1621,-1513,-1380,-1314,-1288,-1230,-1172,-1157,-1107,-1029,-925,-828,-803,-751,-681,-585,-470,-339,
+-210,-61,92,231,318,428,531,577,648,726,842,969,1101,1295,1478,1583,1585,1560,1661,1764,
+1892,1997,2114,2231,2357,2485,2608,2722,2823,2898,2951,3008,3025,3081,3468,3858,4066,4121,4210,4439,
+4542,4589,4575,4501,4410,3987,3503,3384,3497,3679,3839,3992,4112,4275,4354,4398,4406,4390,4417,4436,
+4438,4423,4407,4433,4465,4490,4484,4477,4466,4458,4472,4483,4502,4521,4564,4577,4591,4547,4498,4572,
+4579,4607,4579,4581,4584,4584,4576,4573,4593,4634,4648,4668,4668,4678,4736,4817,4838,4829,4842,4872,
+4885,4901,4922,4947,4947,4973,4992,5012,5056,5071,5094,5098,5071,5137,5126,5086,5136,5125,5125,5141,
+5151,5147,5139,5139,5146,5146,5162,5253,5287,5330,5344,5349,5366,5375,5406,5387,5371,5325,5297,5282,
+5265,4976,4600,4263,3951,3748,3559,3399,3496,3761,3988,4145,4251,4269,4248,4232,4215,4181,4130,4068,
+4003,3952,3938,4012,4016,3870,3759,3668,3611,3568,3547,3542,3526,3501,3428,3366,3346,3320,3260,3173,
+3095,3053,3030,3011,2994,2971,2952,2934,2902,2860,2815,2804,2774,2727,2704,2685,2653,2608,2553,2499,
+2456,2429,2409,2382,2354,2334,2356,2458,2611,2574,2327,2259,2254,2235,2195,2155,2115,2087,2044,2012,
+1976,1941,1936,1939,1991,2002,1924,1849,1802,1758,1719,1688,1654,1622,1596,1577,1562,1540,1518,1487,
+1448,1396,1341,1300,1281,1323,1293,1209,1190,1187,1178,1155,1135,1109,1099,1094,1069,1074,1087,1089,
+1079,1060,1037,1008,996,988,967,935,916,867,845,829,797,771,741,720,709,720,726,726,
+730,727,737,742,729,727,720,706,694,718,731,785,788,800,770,754,819,745,740,738,
+747,750,766,767,770,775,773,799,865,886,899,905,897,898,909,909,897,953,1042,965,
+943,933,942,997,1102,1040,970,962,968,966,962,961,959,955,946,925,899,874,842,824,
+826,815,796,774,747,738,754,709,712,703,637,597,585,570,554,538,528,524,516,500,
+481,462,447,440,435,436,442,442,413,392,372,367,336,307,265,224,178,138,99,55,
+22,-20,-67,-113,-163,-208,-238,-271,-302,-334,-365,-405,-438,-455,-463,-477,-497,-511,-532,-553,
+-586,-622,-668,-717,-756,-781,-806,-830,-856,-882,-907,-937,-968,-1012,-1058,-1102,-1142,-1183,-1219,-1255,
+-1293,-1334,-1378,-1421,-1468,-1511,-1544,-1575,-1607,-1641,-1678,-1715,-1751,-1793,-1838,-1883,-1919,-1972,-2025,-2073,
+-2123,-2178,-2233,-2280,-2327,-2376,-2415,-2435,-2461,-2469,-2499,-2547,-2597,-2647,-2692,-2731,-2776,-2812,-2861,-2911,
+-2958,-3018,-3071,-3114,-3175,-3231,-3287,-3339,-3383,-3418,-3456,-3495,-3538,-3576,-3618,-3658,-3705,-3750,-3794,-3833,
+-3870,-3904,-3933,-3964,-3998,-4026,-4056,-4088,-4118,-4153,-4184,-4213,-4230,-4247,-4260,-4277,-4302,-4327,-4354,-4380,
+-4404,-4422,-4443,-4474,-4468,-4485,-4505,-4512,-4522,-4538,-4557,-4567,-4571,-4573,-4575,-4575,-4570,-4567,-4567,-4557,
+-4544,-4524,-4500,-4491,-4458,-4455,-4436,-4416,-4405,-4396,-4376,-4354,-4335,-4310,-4278,-4232,-4177,-4121,-4071,-4038,
+-3988,-3936,-3911,-3883,-3839,-3792,-3747,-3716,-3648,-3583,-3538,-3471,-3446,-3414,-3351,-3326,-3275,-3224,-3148,-3065,
+-3001,-2981,-2966,-2929,-2912,-2867,-2788,-2727,-2629,-2562,-2477,-2423,-2366,-2307,-2244,-2188,-2137,-2084,-2024,-1977,
+-1938,-1905,-1858,-1815,-1748,-1688,-1653,-1609,-1587,-1559,-1540,-1529,-1533,-1549,-1568,-1572,-1547,-1479,-1350,-1207,
+-1010,-839,-742,-653,-535,-418,-294,-138,-31,71,97,124,-157,-470,-645,-798,-817,-745,-684,-692,
+-688,-526,-365,-289,-247,-252,-233,-144,-155,-219,-336,-395,-413,-398,-391,-340,-264,-197,-142,-116,
+-159,-192,-234,-261,-398,-456,-450,-406,-393,-317,-236,-259,-228,-208,-249,-275,-274,-278,-275,-285,
+-294,-264,-242,-239,-270,-298,-321,-356,-389,-435,-473,-509,-535,-584,-611,-690,-787,-871,-948,-1019,
+-1049,-1097,-1182,-1268,-1348,-1401,-1391,-1449,-1481,-1522,-1571,-1619,-1660,-1698,-1827,-1892,-2012,-2068,-2165,-2247,
+-2350,-2443,-2512,-2580,-2635,-2647,-2658,-2721,-2740,-2784,-2854,-2929,-3006,-3072,-3134,-3198,-3258,-3323,-3385,-3451,
+-3513,-3576,-3645,-3710,-3775,-3849,-3919,-3975,-4007,-4036,-4071,-4105,-4144,-4184,-4203,-4210,-4261,-4287,-4300,-4291,
+-4213,-4152,-4159,-4157,-4140,-4170,-4147,-4173,-4154,-4021,-4098,-4257,-4423,-4787,-5570,-6105,-6231,-6115,-5913,-5705,
+-5503,-5312,-5148,-5014,-4892,-4802,-4724,-4633,-4562,-4555,-4587,-4616,-4604,-4592,-4654,-4710,-4709,-4682,-4656,-4613,
+-4566,-4509,-4464,-4413,-4375,-4317,-4257,-4189,-4148,-4107,-4066,-4019,-3943,-3862,-3782,-3739,-3700,-3626,-3571,-3475,
+-3427,-3369,-3279,-3210,-3130,-3086,-2995,-2921,-2843,-2747,-2700,-2638,-2609,-2601,-2579,-2529,-2484,-2429,-2406,-2381,
+-2327,-2280,-2233,-2185,-2136,-2099,-2053,-2021,-1984,-1935,-1886,-1825,-1774,-1699,-1651,-1594,-1526,-1475,-1429,-1374,
+-1303,-1241,-1187,-1132,-1067,-987,-920,-847,-769,-697,-618,-557,-492,-434,-380,-318,-261,-205,-128,-59,
+14,97,175,256,329,399,467,534,598,662,728,797,858,913,966,1028,1092,1161,1214,1265,
+1321,1371,1433,1492,1546,1614,1673,1725,1776,1826,1881,1927,1979,2048,2128,2228,2323,2386,2462,2500,
+2436,2422,2532,2827,3224,3239,2971,2756,2533,2411,2385,2400,2425,2455,2493,2528,2551,2572,2594,2610,
+2618,2623,2645,2682,2717,2745,2787,2862,2977,3099,3115,3107,3056,3037,3098,3161,3199,3210,3210,3239,
+3283,3360,3384,3312,3176,3024,2905,2823,2795,2795,2744,2730,2753,2804,2835,2821,2810,2798,2787,2788,
+2793,2797,2787,2772,2760,2764,2765,2771,2785,2789,2786,2796,2808,2816,2825,2841,2842,2826,2835,2852,
+2865,2876,2882,2882,2877,2873,2871,2860,2838,2819,2790,2771,2747,2694,2629,2597,2519,2442,2410,2418,
+2385,2338,2333,2356,2392,2419,2444,2441,2384,2300,2222,2172,2150,2141,2136,2147,2154,2152,2146,2137,
+2120,2092,2066,2067,2076,2107,2132,2129,2135,2157,2173,2188,2204,2206,2204,2210,2192,2163,2143,2095,
+2027,2000,1941,1889,1841,1793,1778,1758,1734,1693,1641,1593,1567,1553,1527,1493,1463,1428,1395,1373,
+1343,1312,1293,1284,1276,1235,1185,1142,1111,1096,1096,1091,1086,1083,1081,1095,1127,1169,1200,1153,
+1104,1094,1113,1120,1132,1158,1191,1231,1226,1192,1150,1132,1115,1080,1027,994,986,973,965,940,
+919,919,904,909,902,875,850,806,769,755,730,693,653,618,578,535,508,500,513,539,
+547,502,456,415,389,353,326,297,291,290,267,268,245,183,118,119,81,65,52,38,
+19,-5,-6,27,48,40,24,23,30,92,138,98,33,-153,-219,-306,-368,-384,-384,-419,
+-450,-465,-491,-544,-567,-594,-623,-627,-609,-611,-609,-526,-509,-416,-532,-666,-809,-934,-1042,-1118,
+-1184,-1234,-1285,-1359,-1426,-1448,-1513,-1609,-1607,-1675,-1749,-1818,-1858,-1928,-1979,-2019,-2070,-2113,-2138,-2139,
+-2176,-2244,-2317,-2384,-2490,-2586,-2660,-2751,-2820,-2818,-2862,-2940,-3016,-3069,-3121,-3189,-3234,-3308,-3371,-3448,
+-3502,-3586,-3655,-3733,-3814,-3931,-4043,-4154,-4268,-4352,-4473,-4601,-4671,-4712,-4618,-4676,-4904,-5310,-5485,-5567,
+-5592,-5593,-5587,-5592,-5607,-5631,-5670,-5721,-5784,-5855,-5927,-6004,-6080,-6156,-6230,-6307,-6381,-6446,-6512,-6578,
+-6644,-6716,-6790,-6868,-6941,-7025,-7129,-7246,-7329,-7395,-7456,-7498,-7517,-7530,-7578,-7650,-7720,-7784,-7854,-7917,
+-7964,-7992,-8021,-8048,-8063,-8066,-8058,-7970,-7956,-7963,-8020,-8064,-8098,-8023,-7975,-7977,-7998,-8044,-8082,-8097,
+-8087,-8086,-8121,-8171,-8231,-8291,-8318,-8346,-8377,-8415,-8438,-8411,-8386,-8398,-8471,-8473,-8420,-8331,-8274,-8164,
+-8106,-8077,-8049,-8061,-8123,-8173,-8229,-8280,-8324,-8371,-8401,-8396,-8374,-8331,-8274,-8216,-8167,-8119,-8058,-7984,
+-7892,-7799,-7706,-7629,-7558,-7493,-7419,-7341,-7257,-7171,-7084,-6986,-6882,-6790,-6706,-6612,-6512,-6400,-6294,-6210,
+-6140,-6083,-6031,-5985,-5956,-5937,-5948,-5987,-6046,-6100,-6097,-6007,-5783,-5613,-5381,-5191,-5045,-4985,-4915,-4845,
+-4775,-4717,-4673,-4633,-4537,-4422,-4291,-4169,-4079,-4032,-3955,-3849,-3757,-3663,-3659,-3625,-3574,-3509,-3462,-3365,
+-3281,-3226,-3179,-3117,-3089,-3048,-3060,-3036,-3002,-2957,-2900,-2821,-2745,-2665,-2576,-2492,-2399,-2311,-2233,-2138,
+-2016,-1858,-1740,-1605,-1466,-1343,-1208,-1139,-1068,-1016,-1055,-1025,-958,-860,-759,-726,-682,-607,-504,-365,
+-220,-81,24,139,264,358,473,596,649,724,812,934,1095,1297,1486,1632,1711,1620,1644,1747,
+1862,1972,2089,2201,2346,2428,2550,2676,2786,2894,2992,3048,3084,3109,3145,3477,3892,4230,4276,4160,
+4255,4480,4604,4592,4373,4071,3595,3352,3308,3454,3635,3826,3990,4137,4264,4360,4414,4433,4439,4469,
+4486,4475,4447,4459,4484,4507,4562,4578,4576,4559,4537,4539,4538,4551,4573,4590,4605,4630,4643,4605,
+4574,4609,4651,4630,4667,4659,4668,4660,4646,4648,4667,4689,4709,4718,4730,4793,4855,4856,4863,4882,
+4918,4924,4932,4955,4971,4989,5019,5022,5050,5084,5119,5109,5130,5116,5120,5086,5110,5126,5147,5139,
+5154,5169,5164,5154,5150,5159,5160,5174,5228,5295,5369,5349,5372,5398,5415,5438,5421,5407,5365,5374,
+5380,5361,4992,4580,4229,3905,3723,3577,3485,3636,3939,4191,4279,4347,4303,4330,4296,4273,4241,4187,
+4130,4074,4031,4021,4110,4153,3994,3853,3753,3678,3625,3583,3547,3506,3459,3424,3466,3569,3654,3522,
+3271,3114,3049,3015,2999,2984,2973,2961,2943,2915,2891,2853,2806,2778,2745,2741,2765,2774,2720,2628,
+2545,2486,2461,2448,2429,2400,2378,2405,2557,2774,2564,2355,2285,2293,2286,2265,2198,2144,2102,2072,
+2041,2009,1989,1978,1942,1918,1901,1876,1851,1823,1789,1747,1705,1659,1626,1600,1579,1569,1556,1541,
+1551,1516,1440,1389,1346,1296,1271,1377,1298,1215,1206,1202,1198,1180,1154,1124,1120,1108,1103,1128,
+1148,1133,1104,1076,1045,1033,1021,999,967,945,907,867,859,826,802,770,747,737,727,734,
+752,737,740,753,754,752,752,747,758,747,730,794,815,778,754,729,737,793,791,763,
+756,767,767,772,769,787,787,784,788,792,821,863,878,860,867,961,979,956,1016,1015,
+1015,975,940,933,954,1012,1132,1023,980,982,978,964,957,964,971,971,955,931,902,871,
+844,836,824,809,790,766,741,724,702,703,720,700,608,590,579,565,545,531,518,506,
+486,463,441,423,437,443,412,404,403,386,365,346,331,311,284,239,187,144,111,85,
+44,0,-40,-87,-124,-160,-199,-240,-276,-308,-339,-373,-405,-428,-438,-445,-453,-466,-483,-509,
+-535,-566,-603,-642,-679,-714,-741,-766,-796,-826,-852,-884,-918,-955,-998,-1041,-1080,-1119,-1155,-1192,
+-1226,-1264,-1305,-1344,-1391,-1433,-1475,-1508,-1537,-1567,-1597,-1636,-1675,-1718,-1762,-1806,-1855,-1900,-1955,-2007,
+-2055,-2100,-2146,-2184,-2211,-2236,-2261,-2286,-2316,-2352,-2393,-2435,-2494,-2559,-2616,-2662,-2699,-2746,-2801,-2851,
+-2893,-2929,-2981,-3037,-3092,-3146,-3202,-3257,-3297,-3347,-3393,-3433,-3475,-3516,-3560,-3605,-3650,-3698,-3740,-3782,
+-3820,-3851,-3883,-3911,-3947,-3982,-4014,-4046,-4074,-4106,-4136,-4168,-4196,-4219,-4234,-4249,-4266,-4288,-4313,-4338,
+-4363,-4386,-4410,-4433,-4460,-4478,-4490,-4479,-4482,-4512,-4533,-4551,-4556,-4565,-4569,-4572,-4567,-4561,-4562,-4555,
+-4542,-4526,-4504,-4484,-4466,-4453,-4444,-4430,-4413,-4392,-4374,-4357,-4329,-4317,-4291,-4243,-4193,-4140,-4090,-4044,
+-4012,-3970,-3914,-3883,-3860,-3818,-3776,-3758,-3692,-3620,-3567,-3513,-3473,-3429,-3388,-3347,-3321,-3256,-3215,-3165,
+-3118,-3077,-2993,-2956,-2947,-2918,-2875,-2811,-2725,-2625,-2559,-2491,-2427,-2362,-2298,-2230,-2176,-2133,-2080,-2025,
+-1985,-1956,-1902,-1843,-1780,-1722,-1674,-1627,-1586,-1532,-1500,-1469,-1444,-1425,-1416,-1414,-1416,-1418,-1421,-1421,
+-1377,-1256,-1097,-947,-853,-717,-584,-454,-342,-246,-134,-6,-105,-337,-588,-760,-888,-807,-645,-532,
+-593,-697,-651,-434,-337,-237,-179,-173,-170,-146,-106,-42,-194,-364,-366,-343,-286,-243,-190,-141,
+-131,-141,-155,-177,-226,-273,-246,-187,-137,-109,-89,-76,-49,-48,-58,-68,-79,-85,-89,-93,
+-101,-109,-135,-170,-199,-234,-249,-271,-293,-324,-366,-399,-435,-479,-561,-599,-676,-659,-742,-830,
+-920,-964,-1055,-1093,-1229,-1283,-1298,-1354,-1413,-1450,-1490,-1567,-1592,-1720,-1782,-1785,-1846,-1945,-2001,-2098,
+-2162,-2287,-2370,-2437,-2486,-2505,-2522,-2583,-2653,-2701,-2750,-2799,-2855,-2930,-2989,-3036,-3087,-3135,-3189,-3244,
+-3309,-3378,-3446,-3516,-3583,-3657,-3741,-3815,-3870,-3908,-3947,-3988,-4028,-4070,-4103,-4128,-4161,-4206,-4230,-4235,
+-4218,-4144,-4114,-4121,-4119,-4143,-4143,-4141,-4175,-4160,-4029,-4045,-4155,-4375,-4644,-5312,-5903,-6117,-6068,-5896,
+-5699,-5490,-5295,-5143,-5018,-4916,-4835,-4758,-4678,-4596,-4564,-4565,-4562,-4560,-4575,-4630,-4681,-4698,-4693,-4674,
+-4636,-4594,-4541,-4496,-4450,-4408,-4362,-4295,-4232,-4190,-4140,-4089,-4041,-3972,-3903,-3846,-3808,-3737,-3650,-3578,
+-3520,-3450,-3434,-3401,-3333,-3242,-3123,-3036,-2949,-2874,-2787,-2740,-2673,-2652,-2611,-2592,-2546,-2522,-2470,-2432,
+-2391,-2354,-2306,-2267,-2226,-2180,-2132,-2101,-2059,-1998,-1956,-1919,-1864,-1821,-1752,-1696,-1623,-1575,-1518,-1451,
+-1392,-1324,-1264,-1222,-1165,-1108,-1038,-966,-886,-809,-743,-662,-561,-517,-467,-405,-363,-317,-243,-171,
+-104,-33,39,121,198,268,339,401,472,532,592,658,722,786,848,911,970,1028,1089,1154,
+1214,1298,1345,1396,1449,1515,1588,1660,1709,1759,1807,1852,1895,1939,1990,2045,2114,2183,2233,2282,
+2312,2331,2386,2548,2908,3264,3277,3041,2765,2525,2386,2344,2354,2372,2404,2442,2478,2507,2532,2555,
+2576,2589,2596,2620,2662,2701,2742,2792,2872,3004,3076,3074,3064,3031,3013,3071,3142,3175,3189,3198,
+3230,3279,3348,3379,3331,3224,3070,2944,2871,2823,2789,2762,2778,2815,2852,2863,2846,2852,2861,2861,
+2859,2854,2846,2826,2800,2784,2784,2788,2796,2805,2796,2789,2801,2793,2793,2796,2808,2802,2784,2791,
+2820,2848,2869,2883,2886,2881,2874,2874,2863,2840,2810,2776,2744,2711,2653,2578,2502,2442,2399,2348,
+2332,2321,2297,2296,2297,2330,2359,2398,2383,2347,2269,2205,2166,2144,2120,2103,2112,2128,2117,2127,
+2121,2101,2061,2030,2022,2040,2051,2084,2097,2101,2116,2129,2130,2143,2156,2153,2152,2135,2117,2089,
+2062,1998,1965,1920,1864,1808,1739,1709,1697,1684,1660,1616,1568,1536,1522,1507,1475,1441,1406,1376,
+1359,1337,1313,1287,1265,1258,1225,1175,1139,1106,1088,1083,1077,1072,1078,1089,1082,1104,1146,1158,
+1118,1068,1046,1057,1078,1105,1138,1186,1224,1208,1166,1126,1102,1072,1031,980,957,962,953,950,
+942,926,896,857,880,888,852,811,769,735,706,679,642,610,582,552,513,476,473,485,
+507,505,458,412,369,357,326,288,274,266,231,207,209,198,152,100,87,47,20,0,
+-15,-21,-31,-32,-1,42,53,38,15,14,61,128,196,180,-106,-197,-292,-358,-403,-434,
+-465,-495,-522,-536,-561,-601,-610,-650,-662,-652,-643,-639,-594,-452,-427,-481,-596,-794,-944,-1067,
+-1152,-1207,-1238,-1266,-1338,-1426,-1489,-1545,-1597,-1628,-1672,-1725,-1778,-1807,-1866,-1891,-1953,-2017,-2075,-2140,
+-2153,-2172,-2229,-2308,-2412,-2471,-2550,-2628,-2758,-2828,-2847,-2912,-2987,-3048,-3106,-3151,-3224,-3299,-3321,-3399,
+-3489,-3528,-3607,-3688,-3754,-3843,-3930,-4029,-4176,-4275,-4362,-4502,-4632,-4720,-4763,-4819,-4857,-5059,-5346,-5496,
+-5581,-5611,-5612,-5610,-5617,-5637,-5667,-5711,-5767,-5837,-5910,-5985,-6062,-6141,-6216,-6288,-6364,-6440,-6514,-6582,
+-6646,-6713,-6784,-6857,-6932,-7009,-7087,-7172,-7265,-7357,-7434,-7503,-7562,-7601,-7625,-7668,-7734,-7802,-7830,-7918,
+-7964,-7999,-8036,-8055,-8113,-8139,-8134,-8179,-8138,-8076,-8053,-8109,-8143,-8178,-8172,-8099,-8084,-8079,-8084,-8118,
+-8142,-8141,-8148,-8179,-8247,-8315,-8370,-8396,-8431,-8471,-8506,-8541,-8559,-8521,-8546,-8589,-8556,-8474,-8382,-8337,
+-8262,-8220,-8171,-8185,-8237,-8303,-8341,-8381,-8412,-8447,-8463,-8461,-8450,-8419,-8362,-8302,-8244,-8191,-8141,-8074,
+-8005,-7914,-7828,-7751,-7663,-7588,-7525,-7452,-7372,-7277,-7181,-7090,-6997,-6914,-6826,-6739,-6639,-6521,-6394,-6294,
+-6213,-6144,-6084,-6032,-5990,-5957,-5944,-5964,-6016,-6082,-6141,-6145,-6033,-5797,-5618,-5397,-5168,-5059,-4993,-4918,
+-4850,-4768,-4710,-4659,-4605,-4521,-4417,-4272,-4156,-4051,-3981,-3922,-3845,-3722,-3640,-3612,-3597,-3539,-3472,-3418,
+-3332,-3261,-3218,-3174,-3106,-3089,-3073,-3043,-3010,-2971,-2928,-2872,-2808,-2731,-2652,-2564,-2475,-2376,-2280,-2175,
+-2075,-1966,-1845,-1745,-1643,-1524,-1305,-1113,-1081,-992,-938,-934,-933,-868,-763,-670,-633,-605,-525,-393,
+-237,-129,-13,120,198,305,418,526,627,702,770,874,1019,1203,1433,1579,1695,1692,1641,1720,
+1823,1936,2051,2171,2276,2387,2496,2598,2733,2825,2945,3036,3113,3174,3178,3158,3416,3851,4265,4413,
+4235,4208,4371,4509,4488,4195,3789,3471,3268,3226,3355,3543,3758,3961,4139,4315,4338,4407,4426,4447,
+4483,4496,4493,4481,4492,4518,4546,4572,4598,4609,4614,4602,4593,4613,4615,4614,4631,4620,4626,4673,
+4690,4687,4657,4631,4652,4721,4713,4730,4734,4709,4716,4717,4745,4793,4799,4806,4880,4899,4901,4911,
+4920,4956,4961,4973,4985,5002,5027,5050,5054,5083,5114,5120,5148,5138,5146,5121,5107,5110,5162,5163,
+5156,5164,5175,5183,5165,5161,5167,5174,5181,5250,5298,5350,5369,5401,5417,5458,5467,5431,5432,5395,
+5396,5409,5331,4953,4550,4161,3867,3718,3575,3486,3689,3999,4215,4394,4387,4363,4374,4371,4339,4300,
+4248,4188,4128,4082,4085,4177,4380,4227,3982,3877,3761,3684,3625,3572,3521,3486,3479,3608,3916,3982,
+3707,3337,3135,3047,3007,2994,2984,2978,2975,2962,2943,2932,2936,2869,2805,2766,2770,2853,3021,2927,
+2761,2608,2538,2505,2494,2498,2454,2420,2440,2536,2655,2528,2358,2304,2302,2314,2335,2228,2169,2136,
+2125,2108,2082,2028,1999,1939,1890,1888,1862,1838,1824,1793,1758,1715,1673,1645,1618,1596,1584,1568,
+1546,1521,1503,1467,1422,1383,1337,1317,1352,1339,1248,1227,1232,1232,1215,1187,1150,1119,1121,1130,
+1145,1172,1175,1150,1102,1067,1051,1039,1029,999,964,958,904,892,868,834,804,773,752,740,
+743,744,751,747,760,762,769,775,767,825,784,736,770,729,724,751,734,728,739,766,
+798,773,772,765,781,801,766,771,776,808,855,913,876,948,886,873,1063,1049,1067,1083,
+1151,1213,1072,969,948,946,992,1078,1040,987,970,969,960,959,965,974,985,976,957,926,
+896,862,836,820,807,794,775,754,733,711,692,672,645,613,600,592,577,559,534,517,
+500,482,455,425,404,416,443,400,381,373,356,333,320,304,284,256,210,167,122,92,
+65,30,-14,-54,-95,-125,-154,-190,-237,-278,-318,-351,-378,-403,-420,-428,-437,-445,-457,-476,
+-501,-527,-556,-589,-619,-651,-680,-711,-745,-778,-810,-837,-868,-902,-938,-976,-1016,-1057,-1091,-1124,
+-1155,-1186,-1225,-1264,-1307,-1352,-1393,-1433,-1470,-1503,-1540,-1575,-1616,-1654,-1702,-1746,-1791,-1836,-1877,-1914,
+-1947,-1971,-1991,-2023,-2058,-2094,-2132,-2173,-2217,-2261,-2310,-2357,-2407,-2464,-2526,-2583,-2628,-2670,-2715,-2773,
+-2823,-2870,-2906,-2955,-3008,-3066,-3119,-3173,-3230,-3279,-3323,-3367,-3414,-3463,-3510,-3557,-3601,-3642,-3686,-3729,
+-3769,-3807,-3842,-3869,-3898,-3935,-3976,-4013,-4040,-4062,-4088,-4116,-4140,-4166,-4191,-4210,-4228,-4252,-4274,-4295,
+-4318,-4348,-4374,-4401,-4425,-4442,-4452,-4459,-4473,-4486,-4500,-4514,-4532,-4532,-4538,-4552,-4554,-4553,-4549,-4541,
+-4528,-4517,-4500,-4479,-4460,-4445,-4441,-4426,-4413,-4397,-4381,-4359,-4338,-4312,-4289,-4255,-4215,-4172,-4124,-4076,
+-4029,-3990,-3950,-3905,-3860,-3839,-3810,-3754,-3719,-3683,-3637,-3558,-3533,-3483,-3430,-3382,-3364,-3304,-3263,-3205,
+-3151,-3128,-3094,-3032,-2988,-2954,-2916,-2864,-2795,-2720,-2641,-2574,-2515,-2433,-2347,-2288,-2217,-2169,-2124,-2065,
+-2021,-1982,-1924,-1871,-1814,-1756,-1704,-1668,-1607,-1561,-1514,-1474,-1423,-1387,-1356,-1328,-1303,-1284,-1276,-1272,
+-1271,-1279,-1277,-1266,-1231,-1127,-1035,-910,-764,-667,-517,-409,-346,-440,-616,-770,-886,-908,-731,-575,
+-441,-475,-589,-643,-581,-453,-236,-117,-44,-45,-34,38,228,38,-165,-228,-203,-150,-134,-122,
+-72,-79,-104,-67,-88,-100,-28,-25,34,62,63,122,86,90,44,82,99,106,99,63,
+25,-1,-36,-77,-124,-161,-190,-203,-213,-232,-258,-297,-327,-361,-441,-565,-636,-656,-631,-719,
+-855,-937,-980,-999,-1100,-1171,-1179,-1248,-1318,-1401,-1432,-1428,-1552,-1563,-1679,-1787,-1790,-1828,-1891,-1995,
+-2088,-2152,-2243,-2316,-2364,-2391,-2393,-2417,-2435,-2566,-2627,-2691,-2747,-2801,-2877,-2935,-2967,-3007,-3044,-3090,
+-3144,-3205,-3273,-3345,-3418,-3496,-3577,-3655,-3723,-3780,-3828,-3873,-3920,-3959,-3993,-4021,-4061,-4107,-4146,-4167,
+-4167,-4133,-4053,-4035,-4054,-4079,-4101,-4122,-4146,-4163,-4155,-4141,-4045,-4105,-4351,-4681,-5155,-5769,-6029,-6004,
+-5845,-5627,-5425,-5245,-5101,-5008,-4947,-4883,-4817,-4752,-4700,-4682,-4679,-4684,-4687,-4695,-4714,-4747,-4758,-4749,
+-4739,-4694,-4647,-4595,-4531,-4479,-4431,-4378,-4320,-4269,-4238,-4175,-4084,-4056,-4012,-3972,-3925,-3874,-3788,-3685,
+-3598,-3516,-3439,-3375,-3319,-3254,-3184,-3130,-3074,-2983,-2886,-2835,-2804,-2726,-2683,-2666,-2653,-2583,-2551,-2513,
+-2482,-2425,-2369,-2324,-2286,-2240,-2203,-2170,-2131,-2078,-2032,-1972,-1915,-1876,-1810,-1787,-1735,-1686,-1626,-1568,
+-1516,-1454,-1386,-1324,-1265,-1197,-1153,-1097,-1031,-946,-859,-774,-702,-582,-559,-550,-489,-435,-357,-290,
+-227,-163,-89,-17,62,136,205,274,348,421,468,538,607,672,728,783,851,913,969,1038,
+1105,1159,1220,1282,1356,1414,1477,1543,1613,1678,1732,1785,1829,1870,1909,1948,1994,2049,2104,2150,
+2203,2244,2300,2404,2613,3071,3195,2972,2828,2688,2475,2329,2294,2297,2317,2354,2399,2437,2462,2486,
+2512,2536,2554,2564,2602,2658,2733,2876,2867,2930,3034,3066,3071,3029,2989,2992,3044,3107,3138,3162,
+3196,3237,3279,3337,3377,3349,3271,3139,3008,2920,2853,2810,2807,2846,2894,2898,2895,2891,2904,2922,
+2923,2919,2910,2897,2871,2843,2828,2823,2828,2828,2828,2809,2799,2796,2777,2767,2786,2802,2787,2777,
+2777,2801,2844,2876,2892,2895,2886,2868,2858,2839,2809,2769,2727,2687,2652,2592,2517,2450,2399,2339,
+2303,2281,2276,2276,2293,2311,2298,2314,2335,2319,2291,2233,2180,2150,2125,2090,2063,2072,2090,2097,
+2117,2122,2099,2047,2007,1994,1997,2007,2033,2055,2068,2069,2070,2069,2086,2098,2110,2110,2119,2098,
+2062,2066,2007,1956,1914,1855,1787,1723,1679,1653,1643,1629,1593,1549,1513,1493,1476,1455,1426,1387,
+1359,1347,1325,1305,1281,1254,1231,1204,1169,1133,1101,1088,1066,1059,1053,1075,1088,1072,1084,1121,
+1116,1063,1014,1001,1013,1033,1069,1115,1174,1187,1168,1137,1109,1082,1050,1009,955,932,930,942,
+933,933,897,853,843,871,875,825,769,735,695,660,636,607,576,552,531,493,451,441,
+452,456,461,429,366,302,297,295,265,224,205,180,156,154,134,85,66,38,10,-23,
+-54,-71,-70,-70,-43,-37,5,36,35,-16,-50,-23,79,163,207,-11,-190,-274,-303,-376,
+-449,-487,-520,-563,-591,-609,-630,-654,-687,-703,-703,-685,-657,-588,-439,-443,-505,-568,-748,-894,
+-1044,-1158,-1213,-1272,-1319,-1393,-1467,-1519,-1542,-1507,-1552,-1581,-1647,-1714,-1772,-1822,-1857,-1879,-1930,-1994,
+-2076,-2161,-2199,-2262,-2274,-2425,-2516,-2590,-2641,-2807,-2830,-2883,-2957,-3021,-3066,-3128,-3180,-3217,-3318,-3341,
+-3406,-3488,-3545,-3624,-3689,-3770,-3886,-3947,-4044,-4198,-4282,-4386,-4485,-4629,-4761,-4859,-4978,-5063,-5198,-5360,
+-5505,-5593,-5623,-5629,-5631,-5644,-5669,-5708,-5761,-5819,-5889,-5964,-6043,-6120,-6200,-6274,-6347,-6425,-6499,-6575,
+-6646,-6712,-6776,-6848,-6920,-6993,-7069,-7152,-7228,-7305,-7384,-7465,-7544,-7623,-7691,-7730,-7772,-7820,-7876,-7876,
+-7967,-8028,-8063,-8083,-8091,-8158,-8204,-8211,-8262,-8236,-8179,-8113,-8157,-8219,-8262,-8305,-8266,-8221,-8184,-8155,
+-8171,-8184,-8174,-8199,-8226,-8305,-8362,-8403,-8448,-8488,-8546,-8578,-8621,-8668,-8652,-8683,-8662,-8606,-8515,-8458,
+-8462,-8390,-8342,-8367,-8431,-8469,-8496,-8528,-8553,-8554,-8547,-8532,-8514,-8487,-8442,-8380,-8327,-8278,-8230,-8180,
+-8120,-8037,-7941,-7859,-7786,-7697,-7613,-7547,-7479,-7392,-7295,-7196,-7100,-7013,-6934,-6849,-6751,-6640,-6509,-6391,
+-6292,-6211,-6143,-6083,-6034,-5992,-5963,-5954,-5983,-6047,-6125,-6186,-6170,-6021,-5792,-5599,-5355,-5178,-5089,-5008,
+-4910,-4842,-4758,-4687,-4633,-4573,-4498,-4397,-4267,-4146,-4051,-3945,-3878,-3762,-3701,-3616,-3607,-3586,-3523,-3454,
+-3387,-3313,-3234,-3202,-3155,-3088,-3064,-3043,-3017,-2976,-2921,-2869,-2812,-2747,-2674,-2603,-2519,-2428,-2332,-2232,
+-2118,-2005,-1902,-1782,-1647,-1574,-1517,-1276,-1062,-971,-924,-887,-839,-802,-767,-668,-568,-541,-519,-431,
+-292,-167,-60,50,165,262,373,467,551,663,739,824,941,1072,1288,1480,1575,1570,1600,1687,
+1802,1911,2011,2122,2281,2349,2454,2568,2673,2789,2902,3006,3094,3196,3235,3165,3153,3353,3763,4288,
+4565,4337,4192,4329,4491,4426,3986,3728,3562,3351,3271,3402,3616,3834,3948,4022,4128,4241,4325,4358,
+4403,4456,4500,4518,4520,4538,4579,4592,4609,4621,4626,4640,4647,4645,4667,4669,4661,4664,4648,4661,
+4679,4711,4738,4752,4730,4694,4740,4764,4791,4775,4770,4789,4779,4813,4851,4871,4891,4935,4949,4940,
+4948,4960,4987,4992,5009,5025,5029,5061,5082,5091,5117,5142,5176,5166,5178,5179,5190,5175,5180,5174,
+5180,5174,5181,5191,5197,5185,5176,5188,5183,5192,5266,5352,5403,5399,5409,5445,5481,5465,5484,5453,
+5432,5439,5457,5293,4893,4520,4105,3819,3665,3535,3544,3802,4134,4318,4285,4285,4344,4449,4455,4379,
+4340,4288,4226,4158,4111,4119,4231,4468,4269,4035,3895,3815,3809,3681,3605,3557,3527,3525,3648,3910,
+3853,3573,3301,3135,3057,3010,2994,2990,2988,2982,2969,2943,2949,3015,2953,2854,2797,2790,2845,2941,
+2941,2838,2714,2665,2567,2549,2660,2518,2462,2476,2559,2677,2526,2376,2332,2320,2319,2292,2245,2209,
+2175,2172,2167,2173,2063,2011,1933,1870,1841,1828,1818,1805,1780,1763,1764,1712,1680,1652,1628,1607,
+1584,1588,1542,1514,1492,1460,1426,1372,1340,1320,1261,1247,1247,1251,1253,1237,1211,1174,1137,1117,
+1149,1164,1176,1193,1180,1144,1101,1073,1066,1052,1037,1000,967,937,914,895,865,832,804,783,
+773,776,764,754,745,761,778,780,796,801,875,793,747,737,731,733,754,754,747,745,
+749,764,769,774,768,760,761,747,753,771,870,1018,919,915,944,903,888,976,942,968,
+933,979,1134,1155,1000,1045,1030,1048,1072,1028,1006,1002,1045,969,955,957,961,978,981,970,
+947,916,885,850,823,813,795,780,764,744,727,709,684,658,630,611,600,586,569,545,
+523,500,477,449,420,394,395,398,404,379,344,324,304,287,273,252,217,176,155,108,
+76,43,5,-39,-78,-118,-148,-175,-206,-245,-285,-324,-359,-379,-392,-405,-419,-428,-436,-447,
+-467,-486,-516,-547,-577,-607,-635,-666,-694,-727,-762,-793,-820,-847,-877,-912,-947,-980,-1022,-1055,
+-1087,-1115,-1147,-1187,-1230,-1273,-1319,-1367,-1411,-1453,-1499,-1544,-1581,-1619,-1649,-1680,-1705,-1728,-1739,-1761,
+-1791,-1831,-1864,-1903,-1944,-1987,-2027,-2075,-2125,-2177,-2233,-2284,-2336,-2383,-2438,-2492,-2543,-2585,-2625,-2670,
+-2722,-2778,-2835,-2883,-2940,-2995,-3050,-3105,-3153,-3202,-3245,-3292,-3335,-3390,-3445,-3499,-3544,-3581,-3618,-3659,
+-3703,-3746,-3788,-3823,-3850,-3887,-3927,-3966,-4000,-4022,-4044,-4064,-4086,-4109,-4138,-4162,-4188,-4207,-4230,-4254,
+-4278,-4301,-4331,-4356,-4389,-4411,-4425,-4440,-4448,-4459,-4468,-4483,-4500,-4520,-4519,-4517,-4531,-4539,-4530,-4522,
+-4512,-4513,-4502,-4488,-4473,-4455,-4449,-4432,-4417,-4405,-4386,-4361,-4348,-4320,-4289,-4266,-4237,-4202,-4163,-4116,
+-4072,-4022,-3982,-3940,-3899,-3858,-3818,-3790,-3757,-3691,-3642,-3610,-3582,-3529,-3480,-3428,-3378,-3327,-3295,-3252,
+-3184,-3146,-3110,-3073,-3025,-2980,-2944,-2902,-2841,-2775,-2703,-2652,-2579,-2502,-2421,-2356,-2286,-2222,-2161,-2118,
+-2064,-2025,-1952,-1922,-1855,-1809,-1758,-1706,-1651,-1600,-1547,-1495,-1451,-1400,-1353,-1313,-1279,-1241,-1214,-1183,
+-1162,-1151,-1145,-1147,-1172,-1174,-1196,-1193,-1150,-1075,-970,-885,-823,-795,-860,-891,-901,-922,-927,-738,
+-534,-446,-455,-523,-586,-598,-569,-440,-187,29,193,268,324,478,350,197,70,49,102,50,
+8,-27,-87,-42,-1,69,184,101,102,205,287,357,308,219,182,232,241,257,261,264,
+195,122,75,27,-28,-75,-115,-146,-162,-162,-165,-185,-220,-249,-290,-365,-517,-567,-571,-651,
+-724,-799,-858,-915,-965,-1027,-1069,-1124,-1184,-1250,-1340,-1417,-1470,-1517,-1539,-1598,-1676,-1772,-1810,-1874,
+-1958,-2009,-2111,-2216,-2276,-2298,-2290,-2296,-2310,-2370,-2456,-2550,-2629,-2704,-2782,-2848,-2903,-2934,-2962,-2988,
+-3032,-3085,-3145,-3210,-3284,-3363,-3440,-3514,-3589,-3658,-3718,-3763,-3803,-3847,-3882,-3911,-3939,-4004,-4056,-4095,
+-4110,-4110,-4085,-3970,-3973,-3972,-4032,-4085,-4110,-4134,-4163,-4193,-4188,-4039,-3992,-4282,-4666,-5058,-5580,-5972,
+-5998,-5851,-5639,-5394,-5178,-4995,-4910,-4903,-4901,-4873,-4826,-4795,-4791,-4798,-4798,-4810,-4812,-4829,-4838,-4835,
+-4815,-4782,-4733,-4677,-4621,-4556,-4503,-4445,-4388,-4334,-4285,-4246,-4212,-4150,-4028,-3975,-3982,-3888,-3857,-3799,
+-3716,-3640,-3552,-3458,-3377,-3338,-3292,-3250,-3184,-3139,-3064,-2983,-2933,-2833,-2760,-2717,-2699,-2680,-2629,-2592,
+-2573,-2522,-2468,-2416,-2364,-2321,-2270,-2219,-2175,-2141,-2100,-2046,-2001,-1949,-1911,-1849,-1794,-1730,-1678,-1620,
+-1572,-1510,-1464,-1400,-1341,-1288,-1238,-1184,-1113,-1024,-974,-902,-826,-754,-699,-649,-605,-539,-465,-399,
+-344,-286,-217,-147,-76,-2,72,133,204,277,337,403,480,544,609,669,748,799,859,911,
+974,1044,1105,1165,1232,1284,1350,1422,1498,1562,1622,1689,1738,1794,1842,1888,1929,1967,2014,2066,
+2130,2195,2267,2365,2530,2767,3055,2976,2717,2568,2437,2365,2286,2234,2235,2258,2300,2345,2379,2409,
+2436,2466,2498,2523,2547,2593,2671,2765,2879,2905,2981,3041,3042,3028,3001,2963,2966,3022,3080,3118,
+3164,3206,3233,3269,3327,3370,3364,3303,3197,3063,2952,2871,2835,2867,2912,2939,2932,2930,2938,2951,
+2960,2955,2950,2939,2924,2906,2884,2865,2853,2851,2847,2839,2812,2796,2780,2769,2768,2798,2821,2809,
+2787,2787,2818,2861,2891,2910,2900,2879,2859,2831,2793,2749,2702,2654,2606,2550,2499,2440,2385,2339,
+2294,2263,2241,2227,2229,2254,2290,2290,2279,2297,2293,2273,2224,2165,2137,2104,2062,2034,2048,2068,
+2076,2105,2111,2091,2038,1998,1977,1968,1978,2013,2028,2025,2022,2025,2044,2060,2075,2091,2079,2068,
+2048,2053,2051,2000,1950,1902,1856,1792,1727,1677,1636,1608,1591,1569,1531,1495,1465,1443,1428,1405,
+1374,1344,1330,1310,1296,1282,1242,1218,1193,1152,1108,1083,1073,1053,1051,1041,1067,1074,1058,1060,
+1089,1056,1006,966,963,976,1001,1049,1106,1128,1129,1118,1092,1066,1047,1028,991,950,922,916,
+927,936,891,839,818,830,893,859,777,727,691,647,622,601,575,549,525,502,472,430,
+413,421,417,407,391,356,288,266,273,251,181,136,101,105,100,68,35,28,5,-19,
+-48,-73,-92,-90,-93,-83,-102,-65,-31,-35,-51,-60,-35,40,112,185,99,-67,-243,-327,
+-365,-398,-463,-531,-585,-628,-657,-667,-709,-719,-751,-766,-746,-711,-630,-560,-480,-508,-602,-733,
+-894,-1028,-1115,-1179,-1280,-1351,-1393,-1431,-1444,-1456,-1430,-1465,-1512,-1568,-1637,-1716,-1806,-1830,-1839,-1883,
+-1970,-2062,-2141,-2254,-2346,-2390,-2476,-2536,-2580,-2672,-2808,-2844,-2904,-2973,-3040,-3085,-3155,-3208,-3261,-3299,
+-3336,-3415,-3480,-3537,-3612,-3689,-3784,-3891,-3966,-4090,-4217,-4299,-4423,-4500,-4606,-4710,-4887,-5148,-5301,-5295,
+-5340,-5497,-5596,-5635,-5646,-5657,-5674,-5705,-5753,-5810,-5872,-5942,-6018,-6098,-6176,-6255,-6334,-6409,-6485,-6558,
+-6629,-6703,-6775,-6847,-6920,-6988,-7055,-7126,-7206,-7282,-7357,-7438,-7541,-7647,-7724,-7787,-7831,-7873,-7906,-7950,
+-8001,-8044,-8081,-8114,-8147,-8169,-8210,-8275,-8306,-8337,-8310,-8263,-8198,-8215,-8286,-8346,-8392,-8369,-8315,-8293,
+-8248,-8233,-8230,-8232,-8263,-8281,-8312,-8378,-8425,-8483,-8544,-8593,-8615,-8681,-8734,-8722,-8747,-8714,-8638,-8578,
+-8578,-8598,-8543,-8579,-8617,-8643,-8658,-8679,-8706,-8719,-8684,-8634,-8596,-8556,-8512,-8459,-8405,-8364,-8329,-8295,
+-8249,-8177,-8078,-7973,-7891,-7813,-7718,-7631,-7565,-7498,-7412,-7316,-7218,-7117,-7027,-6945,-6846,-6736,-6614,-6497,
+-6393,-6299,-6213,-6142,-6090,-6051,-6013,-5979,-5980,-6018,-6084,-6165,-6213,-6149,-5969,-5790,-5586,-5356,-5188,-5109,
+-5010,-4912,-4833,-4755,-4685,-4616,-4548,-4469,-4373,-4252,-4137,-4051,-3940,-3830,-3758,-3622,-3616,-3600,-3573,-3513,
+-3440,-3370,-3301,-3230,-3166,-3105,-3041,-3012,-2983,-2957,-2910,-2844,-2783,-2728,-2664,-2593,-2523,-2445,-2350,-2254,
+-2152,-2047,-1937,-1837,-1681,-1488,-1417,-1433,-1226,-1039,-893,-782,-726,-721,-677,-661,-601,-500,-456,-427,
+-351,-216,-114,3,110,215,338,439,542,613,691,780,871,975,1095,1236,1355,1459,1562,1632,
+1753,1875,1995,2091,2188,2288,2422,2519,2637,2782,2881,3101,3094,3196,3208,3230,3168,3152,3307,3690,
+4237,4512,4357,4191,4322,4504,4389,4066,3854,3749,3690,3643,3744,3989,4203,4225,4115,4075,4147,4219,
+4271,4354,4439,4487,4539,4589,4605,4634,4656,4671,4674,4683,4694,4698,4694,4700,4700,4717,4714,4707,
+4702,4720,4736,4739,4794,4794,4820,4831,4826,4799,4780,4830,4832,4852,4881,4898,4913,4929,4979,4999,
+4996,4995,5008,5023,5028,5039,5051,5071,5103,5106,5127,5157,5178,5190,5198,5224,5203,5149,5190,5235,
+5224,5205,5193,5199,5213,5209,5211,5199,5200,5202,5204,5263,5370,5393,5399,5440,5474,5491,5479,5487,
+5463,5482,5536,5525,5178,4791,4488,4120,3772,3605,3484,3637,3925,4181,4297,4272,4309,4368,4426,4449,
+4393,4354,4306,4244,4170,4112,4087,4136,4179,4084,3983,3890,3822,3771,3716,3659,3622,3572,3560,3613,
+3749,3580,3406,3237,3128,3065,3026,3006,3001,2996,2989,2973,2947,2945,2981,3044,2913,2895,2826,2792,
+2824,2898,2909,2816,2709,2624,2588,2577,2521,2494,2516,2656,2817,2560,2406,2373,2348,2331,2304,2271,
+2252,2239,2205,2187,2157,2094,2045,1946,1918,1830,1804,1796,1786,1775,1788,1833,1774,1740,1698,1660,
+1629,1600,1568,1545,1529,1527,1496,1455,1410,1361,1367,1300,1271,1270,1278,1265,1255,1233,1205,1166,
+1141,1162,1202,1202,1206,1208,1184,1143,1109,1096,1083,1061,1027,981,957,925,901,882,862,842,
+826,828,819,806,797,793,794,787,798,821,831,844,820,801,775,770,793,778,770,771,
+770,772,796,795,784,769,766,814,831,777,777,831,931,880,876,1052,1054,910,849,840,
+847,866,890,944,1015,985,1047,1132,1102,1033,1024,1053,1136,1118,1018,959,950,953,966,975,
+972,954,929,900,869,841,858,818,814,780,756,738,723,699,672,648,623,604,590,570,
+547,527,506,482,453,423,394,371,354,346,355,327,294,289,266,245,226,192,154,124,
+92,61,26,-14,-57,-105,-141,-173,-200,-225,-253,-287,-317,-347,-361,-376,-387,-401,-415,-422,
+-435,-450,-469,-498,-531,-564,-596,-627,-657,-684,-710,-739,-769,-792,-812,-840,-879,-918,-949,-986,
+-1019,-1056,-1087,-1122,-1165,-1215,-1263,-1314,-1366,-1414,-1456,-1494,-1509,-1519,-1529,-1545,-1565,-1591,-1624,-1649,
+-1681,-1718,-1768,-1818,-1866,-1913,-1952,-1989,-2035,-2085,-2137,-2192,-2247,-2300,-2354,-2407,-2459,-2507,-2550,-2591,
+-2636,-2687,-2733,-2791,-2850,-2914,-2968,-3023,-3075,-3123,-3171,-3217,-3264,-3314,-3364,-3417,-3466,-3517,-3561,-3602,
+-3636,-3674,-3715,-3755,-3788,-3819,-3855,-3893,-3931,-3960,-3985,-4008,-4033,-4054,-4083,-4118,-4138,-4159,-4186,-4212,
+-4239,-4269,-4291,-4319,-4350,-4381,-4407,-4423,-4441,-4446,-4452,-4467,-4482,-4494,-4507,-4510,-4505,-4513,-4514,-4506,
+-4503,-4499,-4497,-4489,-4479,-4474,-4461,-4452,-4433,-4414,-4394,-4379,-4358,-4336,-4308,-4277,-4245,-4214,-4181,-4151,
+-4112,-4071,-4033,-3988,-3940,-3897,-3857,-3821,-3781,-3745,-3700,-3629,-3584,-3540,-3477,-3425,-3374,-3354,-3310,-3268,
+-3231,-3179,-3132,-3085,-3061,-3014,-2962,-2926,-2876,-2816,-2760,-2674,-2605,-2546,-2469,-2398,-2357,-2306,-2234,-2171,
+-2104,-2064,-2015,-1943,-1877,-1824,-1778,-1730,-1685,-1629,-1587,-1540,-1489,-1437,-1390,-1340,-1297,-1252,-1215,-1168,
+-1130,-1100,-1073,-1063,-1046,-1051,-1053,-1057,-1063,-1071,-1065,-1047,-1046,-1041,-1037,-1045,-1048,-1055,-1051,-1011,
+-836,-662,-486,-456,-491,-542,-561,-539,-518,-425,-177,132,308,384,399,343,301,255,195,232,
+120,97,94,69,52,96,152,188,166,231,328,362,396,420,367,338,331,300,338,385,
+331,235,177,143,77,15,-29,-65,-90,-106,-113,-121,-126,-151,-196,-246,-342,-458,-499,-561,
+-632,-669,-706,-780,-839,-885,-939,-1008,-1071,-1140,-1208,-1316,-1395,-1451,-1465,-1513,-1526,-1583,-1709,-1784,
+-1844,-1908,-1979,-2073,-2165,-2204,-2192,-2193,-2242,-2253,-2307,-2372,-2461,-2560,-2664,-2759,-2825,-2881,-2918,-2942,
+-2967,-3006,-3058,-3115,-3180,-3254,-3322,-3394,-3467,-3540,-3612,-3672,-3710,-3741,-3770,-3805,-3837,-3877,-3953,-4001,
+-4033,-4042,-4044,-4026,-3930,-3932,-3913,-3966,-4022,-4093,-4123,-4160,-4198,-4204,-4098,-4001,-4129,-4457,-4880,-5368,
+-5824,-5996,-5930,-5745,-5474,-5194,-4960,-4837,-4806,-4834,-4859,-4861,-4848,-4855,-4875,-4881,-4886,-4886,-4885,-4882,
+-4862,-4835,-4800,-4748,-4691,-4630,-4566,-4511,-4453,-4392,-4343,-4302,-4277,-4255,-4196,-4049,-3981,-3977,-3848,-3779,
+-3775,-3724,-3650,-3582,-3530,-3472,-3398,-3331,-3257,-3171,-3122,-3063,-2997,-2949,-2886,-2846,-2807,-2734,-2696,-2648,
+-2626,-2593,-2544,-2494,-2441,-2400,-2369,-2324,-2276,-2216,-2176,-2132,-2064,-2013,-1967,-1921,-1882,-1830,-1782,-1718,
+-1638,-1590,-1535,-1482,-1409,-1350,-1287,-1258,-1210,-1146,-1085,-1014,-949,-873,-810,-749,-711,-633,-569,-515,
+-472,-408,-345,-276,-212,-144,-73,0,66,137,211,276,349,409,475,537,609,680,737,798,
+857,916,982,1044,1102,1168,1226,1297,1360,1430,1498,1564,1625,1692,1737,1777,1821,1855,1913,1982,
+2056,2166,2290,2366,2487,2800,2904,3022,2861,2555,2361,2270,2269,2242,2174,2182,2209,2250,2289,2324,
+2356,2389,2424,2466,2502,2535,2584,2674,2774,2869,2942,3012,3041,3033,3006,2983,2946,2969,3018,3070,
+3107,3145,3172,3190,3237,3296,3353,3372,3333,3239,3095,2966,2900,2899,2927,2929,2944,2949,2955,2984,
+2998,2995,2980,2975,2955,2936,2927,2913,2888,2871,2860,2844,2825,2797,2782,2778,2789,2806,2829,2834,
+2822,2811,2812,2845,2887,2922,2929,2901,2863,2833,2785,2725,2673,2621,2574,2506,2463,2421,2362,2321,
+2294,2260,2241,2226,2215,2217,2235,2251,2266,2257,2294,2304,2272,2223,2159,2124,2084,2048,2041,2049,
+2062,2063,2074,2071,2061,2023,1991,1969,1967,1979,1993,1995,1996,1993,2009,2038,2060,2072,2070,2068,
+2063,2035,2028,2015,1995,1954,1897,1861,1808,1751,1689,1636,1593,1564,1543,1517,1487,1453,1420,1402,
+1383,1357,1336,1318,1300,1277,1260,1227,1194,1168,1135,1100,1077,1058,1053,1042,1030,1033,1034,1021,
+1018,1030,988,956,920,927,956,986,1033,1075,1093,1090,1073,1048,1022,999,983,970,941,921,
+911,908,904,845,801,764,753,759,736,692,668,637,606,584,557,530,509,483,467,441,
+408,391,386,381,369,350,321,281,269,245,198,140,79,49,66,67,34,-1,-22,-40,
+-45,-54,-69,-83,-92,-87,-74,-75,-92,-105,-155,-141,-155,-110,-21,42,93,59,32,-93,
+-291,-377,-419,-442,-517,-594,-654,-693,-714,-736,-761,-791,-813,-807,-782,-727,-619,-626,-557,-652,
+-768,-885,-945,-1023,-1083,-1210,-1303,-1351,-1389,-1378,-1396,-1453,-1469,-1498,-1546,-1598,-1674,-1799,-1901,-2011,
+-2089,-2171,-2272,-2332,-2366,-2418,-2464,-2510,-2597,-2670,-2783,-2815,-2859,-2919,-2975,-3032,-3093,-3163,-3173,-3269,
+-3296,-3358,-3429,-3470,-3536,-3616,-3697,-3779,-3861,-3976,-4113,-4212,-4314,-4443,-4542,-4622,-4735,-4988,-5234,-5333,
+-5248,-5308,-5482,-5592,-5645,-5665,-5681,-5704,-5741,-5793,-5856,-5922,-5997,-6074,-6153,-6233,-6311,-6392,-6471,-6544,
+-6616,-6685,-6760,-6837,-6912,-6981,-7049,-7117,-7179,-7255,-7334,-7408,-7495,-7606,-7720,-7800,-7860,-7913,-7950,-7981,
+-8014,-8058,-8102,-8154,-8181,-8210,-8240,-8285,-8339,-8381,-8402,-8371,-8343,-8295,-8280,-8335,-8402,-8420,-8429,-8410,
+-8382,-8338,-8305,-8308,-8311,-8315,-8329,-8319,-8379,-8455,-8513,-8597,-8663,-8654,-8696,-8775,-8803,-8830,-8783,-8687,
+-8659,-8694,-8724,-8711,-8789,-8792,-8791,-8810,-8840,-8864,-8857,-8798,-8725,-8661,-8599,-8533,-8483,-8441,-8413,-8398,
+-8375,-8322,-8227,-8123,-8013,-7928,-7836,-7750,-7667,-7593,-7521,-7436,-7334,-7233,-7136,-7042,-6946,-6833,-6711,-6593,
+-6490,-6403,-6321,-6237,-6161,-6106,-6072,-6036,-6011,-6018,-6057,-6127,-6197,-6196,-6041,-5910,-5760,-5567,-5377,-5268,
+-5130,-5003,-4912,-4830,-4755,-4681,-4598,-4520,-4448,-4345,-4222,-4123,-4049,-3926,-3813,-3774,-3636,-3603,-3581,-3548,
+-3497,-3419,-3343,-3286,-3211,-3148,-3050,-2973,-2934,-2897,-2860,-2815,-2756,-2696,-2636,-2577,-2503,-2436,-2357,-2257,
+-2157,-2059,-1959,-1847,-1753,-1644,-1469,-1372,-1283,-1201,-1024,-802,-698,-550,-578,-616,-571,-533,-453,-380,
+-330,-255,-149,-46,64,158,272,387,493,592,703,758,837,945,1065,1173,1261,1369,1483,1600,
+1711,1832,1946,2090,2167,2265,2376,2552,2591,2680,2817,2905,3078,3129,3169,3232,3238,3178,3168,3270,
+3587,4142,4442,4306,4183,4340,4568,4541,4364,4255,4153,4120,4110,4161,4292,4451,4523,4398,4274,4155,
+4150,4217,4323,4415,4474,4556,4605,4643,4689,4716,4730,4747,4746,4739,4730,4739,4752,4762,4773,4771,
+4774,4771,4768,4767,4776,4819,4818,4839,4854,4855,4868,4876,4873,4881,4912,4929,4938,4946,4996,5010,
+5041,5031,5037,5058,5066,5073,5077,5099,5100,5119,5145,5170,5188,5196,5207,5246,5245,5230,5202,5222,
+5258,5240,5216,5216,5240,5230,5225,5230,5225,5219,5217,5219,5303,5415,5425,5425,5471,5491,5502,5496,
+5497,5504,5575,5584,5420,4999,4683,4422,4059,3739,3493,3420,3651,3934,4129,4340,4316,4357,4398,4426,
+4468,4399,4356,4306,4243,4174,4106,4061,4030,4008,3971,3924,3879,3830,3784,3731,3677,3623,3580,3559,
+3508,3471,3402,3300,3205,3137,3098,3070,3049,3035,3017,3002,2982,2956,2938,2934,2934,2933,3009,2856,
+2798,2832,3066,3179,2941,2752,2645,2580,2537,2509,2489,2500,2577,2624,2516,2463,2436,2365,2326,2308,
+2284,2265,2258,2264,2250,2235,2152,2087,1990,1919,1833,1806,1793,1786,1801,1840,1872,1899,1834,1746,
+1684,1643,1607,1582,1561,1546,1537,1523,1490,1445,1392,1356,1343,1310,1305,1304,1299,1282,1260,1243,
+1229,1189,1178,1220,1233,1227,1223,1205,1171,1138,1124,1108,1075,1025,978,954,923,895,885,866,
+858,861,869,869,879,877,879,864,830,843,861,863,883,904,840,802,805,837,871,806,
+803,804,810,892,882,834,798,800,968,963,820,813,838,822,912,885,972,1114,949,850,
+845,860,887,944,941,990,992,982,1006,1038,1026,1032,1078,1166,1214,1167,999,960,959,965,
+968,969,962,941,916,888,858,839,841,876,797,758,748,731,707,678,655,630,605,584,
+561,544,529,514,492,466,437,409,379,354,338,327,300,276,278,249,221,197,172,149,
+119,89,53,14,-23,-72,-120,-159,-192,-212,-234,-255,-284,-312,-331,-344,-353,-364,-380,-395,
+-405,-417,-431,-449,-474,-503,-537,-569,-603,-633,-663,-687,-716,-739,-762,-785,-816,-849,-888,-924,
+-969,-1008,-1047,-1087,-1127,-1175,-1230,-1277,-1293,-1305,-1328,-1353,-1371,-1391,-1419,-1441,-1465,-1486,-1516,-1563,
+-1603,-1641,-1684,-1727,-1773,-1824,-1870,-1910,-1951,-2001,-2055,-2111,-2161,-2209,-2261,-2311,-2366,-2419,-2467,-2514,
+-2561,-2608,-2652,-2701,-2754,-2816,-2874,-2937,-2992,-3043,-3094,-3148,-3196,-3242,-3290,-3337,-3389,-3436,-3485,-3527,
+-3569,-3606,-3647,-3683,-3716,-3748,-3784,-3820,-3861,-3899,-3929,-3949,-3970,-3996,-4023,-4064,-4098,-4125,-4147,-4178,
+-4205,-4234,-4265,-4292,-4317,-4347,-4371,-4404,-4424,-4433,-4438,-4446,-4459,-4475,-4483,-4490,-4490,-4490,-4497,-4489,
+-4486,-4481,-4483,-4479,-4477,-4472,-4474,-4470,-4453,-4430,-4406,-4387,-4373,-4355,-4329,-4299,-4268,-4233,-4191,-4159,
+-4132,-4100,-4053,-4031,-3988,-3940,-3901,-3863,-3820,-3777,-3731,-3687,-3636,-3579,-3549,-3492,-3440,-3380,-3380,-3310,
+-3265,-3232,-3193,-3126,-3081,-3044,-3006,-2953,-2896,-2854,-2802,-2736,-2662,-2594,-2518,-2445,-2411,-2342,-2279,-2215,
+-2158,-2092,-2044,-1987,-1929,-1874,-1826,-1768,-1706,-1661,-1630,-1593,-1536,-1483,-1430,-1383,-1338,-1296,-1247,-1194,
+-1148,-1104,-1066,-1024,-996,-986,-963,-953,-944,-940,-926,-921,-918,-912,-909,-901,-891,-927,-988,-1065,
+-1130,-1091,-935,-723,-544,-488,-492,-502,-496,-493,-487,-392,-132,127,324,386,373,350,340,289,
+250,237,161,139,194,212,208,243,235,261,280,345,431,499,448,440,422,431,382,351,
+362,330,280,229,179,130,81,36,0,-31,-47,-64,-70,-76,-106,-155,-211,-298,-392,-455,
+-518,-571,-617,-667,-719,-752,-801,-853,-909,-983,-1078,-1207,-1333,-1373,-1416,-1433,-1475,-1521,-1603,-1681,
+-1743,-1802,-1858,-1928,-2020,-2109,-2122,-2085,-2132,-2157,-2188,-2251,-2313,-2377,-2490,-2618,-2724,-2791,-2866,-2920,
+-2952,-2982,-3014,-3063,-3115,-3168,-3233,-3306,-3375,-3440,-3510,-3592,-3654,-3676,-3676,-3693,-3725,-3767,-3830,-3901,
+-3947,-3965,-3972,-3967,-3966,-3926,-3867,-3841,-3897,-3951,-4034,-4100,-4143,-4176,-4194,-4160,-4041,-4014,-4207,-4606,
+-5084,-5577,-5847,-5918,-5803,-5582,-5331,-5100,-4938,-4874,-4865,-4875,-4908,-4919,-4925,-4939,-4934,-4923,-4910,-4902,
+-4882,-4864,-4829,-4794,-4744,-4680,-4619,-4559,-4490,-4424,-4369,-4319,-4278,-4244,-4219,-4196,-4154,-4096,-4053,-3959,
+-3851,-3776,-3693,-3647,-3584,-3518,-3462,-3426,-3340,-3275,-3230,-3196,-3139,-3075,-3001,-2923,-2870,-2810,-2698,-2629,
+-2566,-2571,-2533,-2509,-2494,-2460,-2417,-2387,-2357,-2312,-2269,-2223,-2170,-2111,-2044,-1981,-1938,-1881,-1827,-1787,
+-1743,-1689,-1623,-1581,-1522,-1458,-1390,-1334,-1305,-1253,-1181,-1126,-1067,-1009,-944,-879,-824,-764,-700,-650,
+-590,-535,-461,-398,-337,-279,-203,-136,-84,3,74,134,199,275,352,414,486,561,624,691,
+744,805,869,928,989,1049,1115,1175,1235,1297,1367,1435,1498,1566,1622,1676,1725,1772,1809,1855,
+1920,2041,2290,2563,2570,2489,2738,2824,2700,2553,2357,2216,2154,2135,2122,2122,2137,2168,2209,2251,
+2288,2322,2354,2392,2440,2483,2523,2579,2674,2788,2917,3008,3043,3052,3030,2991,2967,2956,2973,3039,
+3111,3106,3108,3125,3163,3228,3286,3333,3354,3338,3262,3137,3021,2969,2954,2938,2952,2959,2972,2987,
+3005,3019,3011,2993,2990,2975,2955,2944,2931,2907,2889,2874,2851,2835,2814,2793,2795,2825,2842,2846,
+2843,2832,2833,2849,2881,2916,2943,2935,2916,2835,2761,2691,2630,2584,2535,2514,2465,2422,2380,2299,
+2266,2260,2261,2245,2235,2229,2223,2224,2234,2238,2247,2269,2280,2253,2209,2152,2104,2054,2061,2063,
+2053,2059,2046,2037,2025,2006,1978,1961,1947,1955,1979,1978,1971,1983,1994,2009,2032,2068,2076,2068,
+2073,2068,2036,2020,2013,2003,1952,1897,1865,1816,1758,1686,1643,1592,1552,1521,1497,1475,1441,1404,
+1383,1370,1343,1328,1304,1288,1266,1241,1209,1170,1145,1117,1086,1066,1055,1046,1015,1009,997,1003,
+998,990,978,934,918,907,904,940,973,1025,1053,1063,1058,1043,1012,981,952,933,927,922,
+917,911,900,864,811,765,721,680,664,638,611,603,588,566,537,502,476,468,451,424,
+406,380,364,360,330,316,298,265,239,218,188,135,92,40,23,23,19,0,-33,-45,
+-62,-62,-61,-66,-82,-96,-78,-56,-47,-93,-167,-284,-333,-282,-201,-114,-63,-7,-20,-4,
+-1,-193,-398,-444,-458,-500,-567,-648,-708,-742,-764,-812,-841,-857,-861,-828,-752,-698,-652,-629,
+-688,-775,-858,-867,-911,-993,-1079,-1223,-1324,-1365,-1381,-1427,-1519,-1593,-1629,-1621,-1627,-1684,-1845,-2058,
+-2170,-2240,-2296,-2357,-2379,-2403,-2466,-2501,-2545,-2654,-2755,-2870,-2840,-2869,-2917,-2975,-3038,-3106,-3202,-3240,
+-3323,-3366,-3431,-3495,-3552,-3614,-3667,-3718,-3785,-3873,-3990,-4106,-4226,-4357,-4448,-4568,-4652,-4857,-5016,-5131,
+-5193,-5141,-5286,-5476,-5599,-5659,-5689,-5707,-5736,-5780,-5835,-5901,-5972,-6053,-6129,-6211,-6295,-6376,-6456,-6531,
+-6606,-6679,-6755,-6827,-6897,-6967,-7031,-7098,-7172,-7240,-7308,-7384,-7462,-7544,-7639,-7743,-7830,-7897,-7957,-8005,
+-8043,-8074,-8121,-8167,-8209,-8237,-8264,-8293,-8348,-8404,-8453,-8481,-8467,-8407,-8400,-8352,-8373,-8447,-8484,-8502,
+-8518,-8458,-8419,-8393,-8372,-8381,-8378,-8373,-8370,-8406,-8464,-8534,-8613,-8683,-8681,-8713,-8809,-8877,-8900,-8860,
+-8767,-8736,-8781,-8810,-8870,-8906,-8900,-8906,-8937,-8963,-8973,-8942,-8868,-8789,-8709,-8632,-8565,-8520,-8495,-8486,
+-8485,-8471,-8400,-8283,-8156,-8057,-7977,-7876,-7788,-7710,-7633,-7551,-7465,-7358,-7253,-7150,-7046,-6942,-6829,-6708,
+-6592,-6492,-6410,-6332,-6251,-6181,-6124,-6083,-6050,-6036,-6050,-6096,-6161,-6198,-6120,-6003,-5880,-5757,-5607,-5424,
+-5240,-5106,-4989,-4905,-4819,-4746,-4663,-4575,-4494,-4422,-4329,-4204,-4105,-4030,-3927,-3808,-3743,-3649,-3606,-3553,
+-3534,-3489,-3404,-3319,-3254,-3180,-3088,-2974,-2886,-2839,-2813,-2764,-2714,-2659,-2605,-2546,-2472,-2401,-2331,-2261,
+-2158,-2058,-1962,-1864,-1765,-1684,-1584,-1487,-1371,-1274,-1121,-944,-796,-654,-516,-426,-431,-445,-441,-403,
+-309,-241,-154,-72,8,113,208,306,432,550,656,748,834,953,1064,1176,1254,1360,1452,1568,
+1679,1786,1897,2014,2145,2261,2344,2423,2541,2672,2766,2879,2980,3069,3153,3219,3265,3282,3216,3203,
+3247,3474,3998,4354,4287,4182,4337,4570,4631,4561,4517,4499,4561,4575,4576,4601,4651,4745,4736,4599,
+4377,4194,4180,4271,4381,4481,4556,4642,4702,4751,4796,4801,4817,4817,4808,4801,4790,4789,4809,4826,
+4824,4828,4832,4828,4817,4825,4852,4853,4872,4874,4872,4897,4918,4935,4945,4957,4971,4976,4975,5032,
+5100,5091,5074,5078,5095,5109,5106,5112,5128,5154,5169,5205,5217,5216,5235,5241,5267,5276,5253,5245,
+5202,5274,5282,5241,5221,5225,5235,5238,5243,5244,5243,5234,5248,5314,5401,5403,5439,5479,5488,5495,
+5516,5509,5530,5560,5521,5201,4811,4550,4288,3931,3603,3400,3431,3786,4038,4142,4276,4347,4417,4439,
+4433,4420,4389,4349,4298,4241,4186,4103,4048,3998,3957,3926,3897,3870,3842,3800,3751,3698,3646,3609,
+3638,3490,3396,3334,3286,3257,3214,3189,3179,3169,3133,3070,3023,2986,2963,2942,2925,2911,2897,2884,
+2841,2825,2844,2989,3193,2981,2812,2705,2624,2574,2547,2518,2501,2484,2464,2470,2588,2434,2349,2316,
+2301,2291,2300,2320,2350,2408,2364,2191,2091,2020,1930,1896,1856,1827,1816,1836,1880,2047,2172,1947,
+1791,1710,1660,1621,1594,1573,1565,1558,1542,1508,1474,1423,1389,1382,1354,1348,1339,1322,1300,1287,
+1286,1335,1256,1216,1243,1269,1266,1259,1242,1206,1166,1142,1123,1093,1032,979,942,921,897,877,
+878,934,886,865,877,913,912,908,885,877,884,894,904,901,887,865,852,851,845,886,
+837,832,836,834,844,880,941,842,839,852,896,843,833,857,821,834,865,868,908,890,
+863,876,914,939,982,991,1007,1003,1019,1064,1036,1033,1052,1049,1056,1105,1138,1126,1022,991,
+970,970,973,966,952,929,910,883,848,819,812,786,761,753,738,713,685,661,638,612,
+587,565,547,535,525,506,481,453,427,400,371,350,326,298,269,245,225,200,183,168,
+147,117,84,53,12,-23,-67,-119,-163,-195,-206,-226,-246,-272,-298,-316,-324,-330,-339,-356,
+-370,-378,-388,-405,-423,-440,-464,-498,-529,-560,-593,-625,-653,-689,-722,-757,-787,-814,-848,-893,
+-938,-980,-1017,-1044,-1065,-1090,-1110,-1130,-1153,-1177,-1201,-1230,-1267,-1299,-1330,-1364,-1392,-1422,-1454,-1490,
+-1533,-1578,-1616,-1660,-1698,-1740,-1786,-1834,-1879,-1922,-1970,-2028,-2085,-2134,-2178,-2222,-2272,-2324,-2376,-2427,
+-2480,-2531,-2584,-2629,-2679,-2732,-2788,-2844,-2903,-2960,-3016,-3070,-3121,-3169,-3215,-3266,-3312,-3359,-3402,-3449,
+-3494,-3534,-3572,-3612,-3648,-3683,-3718,-3753,-3787,-3828,-3869,-3894,-3914,-3931,-3961,-3995,-4041,-4078,-4109,-4136,
+-4167,-4195,-4224,-4258,-4287,-4312,-4343,-4372,-4391,-4404,-4410,-4416,-4428,-4438,-4451,-4461,-4465,-4469,-4474,-4477,
+-4473,-4465,-4468,-4466,-4468,-4475,-4475,-4473,-4460,-4439,-4417,-4399,-4383,-4369,-4353,-4329,-4295,-4260,-4223,-4185,
+-4149,-4114,-4086,-4058,-4026,-3984,-3941,-3898,-3851,-3807,-3770,-3721,-3674,-3632,-3590,-3555,-3496,-3437,-3358,-3365,
+-3290,-3258,-3230,-3189,-3140,-3075,-3034,-2998,-2954,-2902,-2837,-2774,-2709,-2646,-2577,-2517,-2456,-2395,-2326,-2268,
+-2215,-2156,-2096,-2033,-1981,-1923,-1867,-1814,-1760,-1716,-1675,-1632,-1582,-1525,-1469,-1416,-1371,-1332,-1292,-1232,
+-1177,-1137,-1093,-1038,-1000,-980,-941,-914,-881,-873,-857,-849,-824,-805,-797,-789,-763,-771,-793,-809,
+-876,-1023,-1138,-1130,-1000,-844,-637,-497,-458,-448,-454,-472,-468,-373,-197,76,258,264,325,286,
+268,257,290,220,207,244,300,287,333,304,350,351,400,415,465,478,452,421,393,412,
+383,367,344,306,268,238,208,155,108,72,43,17,-1,-1,-12,-53,-120,-164,-227,-359,
+-414,-469,-543,-595,-627,-659,-696,-753,-797,-841,-888,-936,-1104,-1307,-1345,-1374,-1402,-1471,-1530,-1586,
+-1644,-1707,-1764,-1815,-1891,-1992,-2076,-2111,-2046,-2059,-2110,-2136,-2212,-2276,-2327,-2420,-2573,-2696,-2756,-2854,
+-2935,-2983,-3019,-3050,-3097,-3146,-3192,-3254,-3318,-3387,-3449,-3515,-3581,-3632,-3650,-3633,-3641,-3666,-3711,-3792,
+-3854,-3879,-3893,-3904,-3909,-3910,-3889,-3818,-3812,-3851,-3896,-3963,-4066,-4118,-4148,-4161,-4144,-3969,-3818,-4069,
+-4431,-4849,-5283,-5607,-5782,-5752,-5611,-5434,-5238,-5091,-5020,-5017,-5007,-4994,-4977,-4979,-4972,-4946,-4908,-4879,
+-4865,-4861,-4846,-4805,-4761,-4716,-4666,-4600,-4536,-4480,-4429,-4381,-4343,-4307,-4259,-4209,-4166,-4148,-4129,-4095,
+-4031,-3979,-3906,-3841,-3772,-3678,-3612,-3498,-3457,-3392,-3306,-3271,-3193,-3111,-3058,-3011,-2941,-2886,-2825,-2713,
+-2637,-2586,-2548,-2457,-2447,-2448,-2399,-2357,-2351,-2313,-2291,-2269,-2234,-2203,-2155,-2093,-2029,-1977,-1918,-1853,
+-1800,-1754,-1701,-1639,-1587,-1546,-1511,-1452,-1409,-1351,-1282,-1232,-1169,-1123,-1048,-964,-923,-870,-795,-734,
+-675,-604,-569,-502,-452,-398,-323,-248,-198,-131,-64,1,77,141,214,292,355,428,501,568,
+640,704,764,812,870,932,995,1054,1121,1176,1240,1307,1370,1433,1500,1553,1606,1662,1703,1739,
+1791,1866,2001,2213,2327,2332,2260,2327,2365,2314,2242,2160,2116,2069,2061,2065,2078,2099,2135,2174,
+2215,2253,2288,2318,2358,2409,2462,2516,2581,2677,2783,2930,3077,3083,3054,3004,2952,2944,2952,2971,
+3020,3065,3075,3094,3110,3142,3201,3262,3312,3337,3335,3295,3197,3073,3003,2983,2977,2986,2985,3031,
+3041,3043,3035,3023,3023,3016,3003,2978,2964,2949,2933,2921,2912,2897,2894,2881,2862,2855,2861,2860,
+2856,2848,2841,2850,2879,2914,2942,2964,2949,2898,2783,2682,2610,2542,2507,2486,2471,2454,2414,2386,
+2335,2274,2261,2303,2278,2272,2243,2231,2231,2246,2245,2270,2261,2249,2231,2213,2182,2122,2066,2078,
+2083,2069,2038,2018,2003,1980,1974,1950,1935,1932,1951,1974,1976,1974,1983,2000,2022,2034,2059,2067,
+2071,2081,2068,2047,2027,2016,2007,1961,1904,1856,1812,1745,1683,1650,1598,1543,1494,1457,1432,1404,
+1375,1350,1361,1342,1321,1289,1269,1249,1220,1189,1156,1128,1105,1084,1058,1047,1032,1007,1017,988,
+964,988,988,938,892,890,885,881,919,967,1014,1041,1048,1038,1013,982,946,913,896,896,
+910,916,908,876,831,786,728,634,603,597,569,545,544,536,542,498,453,437,428,418,
+393,368,343,341,338,316,294,240,200,191,157,117,64,19,-11,-12,-13,-27,-40,-64,
+-74,-76,-80,-83,-95,-121,-126,-103,-73,-62,-119,-215,-363,-378,-277,-153,-109,-113,-101,-40,
+-9,0,-187,-384,-481,-491,-491,-528,-615,-692,-755,-793,-840,-870,-892,-890,-871,-805,-734,-724,
+-698,-691,-734,-818,-822,-857,-931,-1040,-1171,-1298,-1347,-1393,-1504,-1597,-1652,-1724,-1795,-1753,-1789,-1968,
+-2126,-2225,-2256,-2332,-2410,-2452,-2528,-2590,-2580,-2622,-2693,-2850,-2811,-2863,-2876,-2952,-3006,-3103,-3150,-3209,
+-3292,-3325,-3389,-3466,-3501,-3578,-3639,-3716,-3810,-3873,-3904,-4006,-4114,-4240,-4389,-4474,-4590,-4707,-4874,-4945,
+-5077,-5092,-5098,-5301,-5489,-5609,-5674,-5711,-5737,-5771,-5818,-5878,-5950,-6024,-6103,-6184,-6267,-6351,-6433,-6514,
+-6592,-6670,-6744,-6817,-6884,-6946,-7012,-7078,-7150,-7223,-7296,-7361,-7430,-7509,-7590,-7672,-7758,-7843,-7918,-7987,
+-8048,-8105,-8151,-8186,-8213,-8256,-8289,-8314,-8336,-8393,-8464,-8515,-8548,-8578,-8524,-8492,-8444,-8447,-8468,-8528,
+-8580,-8602,-8544,-8503,-8467,-8445,-8445,-8444,-8415,-8402,-8428,-8463,-8531,-8611,-8674,-8702,-8741,-8838,-8902,-8931,
+-8932,-8859,-8827,-8857,-8864,-8947,-8990,-8990,-9001,-9021,-9031,-9016,-8967,-8895,-8820,-8747,-8668,-8602,-8565,-8555,
+-8573,-8583,-8561,-8474,-8342,-8198,-8099,-8012,-7903,-7822,-7746,-7667,-7582,-7485,-7380,-7262,-7155,-7052,-6946,-6842,
+-6723,-6602,-6505,-6419,-6342,-6270,-6204,-6145,-6097,-6069,-6070,-6094,-6133,-6166,-6136,-6085,-6031,-5949,-5847,-5634,
+-5405,-5214,-5084,-4986,-4896,-4801,-4725,-4642,-4555,-4472,-4399,-4307,-4183,-4081,-4005,-3882,-3782,-3680,-3646,-3580,
+-3520,-3522,-3466,-3386,-3298,-3219,-3151,-3044,-2894,-2802,-2753,-2709,-2674,-2622,-2570,-2510,-2448,-2367,-2301,-2231,
+-2149,-2059,-1970,-1863,-1755,-1672,-1601,-1482,-1401,-1302,-1146,-953,-798,-698,-596,-504,-374,-277,-297,-337,
+-323,-237,-163,-76,1,46,156,286,375,482,613,741,801,860,997,1132,1263,1335,1432,1533,
+1638,1745,1863,1968,2096,2213,2327,2413,2530,2635,2739,2842,2945,3048,3133,3227,3289,3325,3325,3267,
+3238,3277,3397,3786,4214,4303,4220,4336,4526,4611,4586,4628,4673,4746,4813,4829,4828,4875,4938,4966,
+4801,4669,4366,4204,4243,4367,4494,4597,4689,4763,4811,4850,4869,4879,4885,4882,4877,4864,4864,4871,
+4867,4875,4879,4876,4879,4877,4882,4904,4895,4913,4908,4921,4926,4939,4948,4968,4966,4976,4990,5020,
+5092,5107,5103,5103,5114,5126,5140,5144,5156,5171,5186,5223,5243,5256,5246,5247,5254,5281,5313,5291,
+5270,5204,5293,5290,5263,5243,5223,5238,5244,5254,5252,5256,5262,5307,5379,5453,5429,5475,5500,5501,
+5504,5514,5516,5538,5521,5344,4995,4641,4366,4091,3727,3409,3288,3495,3973,4175,4196,4276,4375,4521,
+4486,4428,4407,4382,4343,4294,4241,4179,4108,4052,3998,3953,3917,3889,3871,3843,3810,3770,3718,3668,
+3627,3618,3504,3397,3349,3388,3508,3458,3373,3409,3456,3324,3161,3067,3016,2979,2951,2936,2921,2912,
+2897,2877,2859,2855,2880,2924,2943,3041,2844,2693,2631,2590,2559,2569,2481,2444,2445,2472,2423,2362,
+2326,2309,2306,2318,2338,2398,2578,2503,2267,2114,2048,2054,2123,2034,1935,1885,1879,1923,2119,2165,
+1947,1814,1732,1682,1651,1631,1607,1588,1573,1558,1526,1488,1445,1411,1396,1391,1381,1370,1340,1325,
+1327,1370,1307,1315,1294,1320,1327,1315,1300,1281,1268,1207,1159,1138,1119,1079,999,950,915,888,
+877,903,982,912,913,930,937,933,917,905,900,905,902,900,895,887,894,890,874,849,
+879,897,865,862,861,856,856,895,870,931,873,844,845,845,850,844,839,835,847,898,
+948,901,954,1073,1040,1052,1041,1114,1056,1069,1122,1078,1062,1103,1086,1058,1042,1045,1140,1126,
+1033,980,973,981,975,963,945,927,897,858,833,828,799,773,755,740,717,695,674,653,
+625,605,581,559,544,530,514,491,467,441,414,390,367,344,314,278,241,216,195,183,
+167,145,121,94,60,26,-12,-60,-119,-162,-184,-190,-202,-228,-253,-275,-295,-311,-318,-329,
+-342,-354,-361,-374,-391,-411,-428,-449,-477,-512,-552,-592,-632,-673,-715,-760,-788,-806,-819,-833,
+-855,-869,-887,-910,-932,-974,-1007,-1034,-1063,-1083,-1108,-1139,-1171,-1212,-1243,-1274,-1312,-1347,-1389,-1432,
+-1477,-1518,-1562,-1605,-1644,-1678,-1714,-1755,-1801,-1845,-1889,-1931,-1985,-2041,-2096,-2141,-2187,-2237,-2288,-2341,
+-2394,-2450,-2502,-2555,-2604,-2653,-2706,-2760,-2813,-2870,-2929,-2983,-3040,-3095,-3149,-3200,-3251,-3298,-3339,-3379,
+-3421,-3459,-3499,-3535,-3579,-3614,-3651,-3686,-3721,-3749,-3790,-3822,-3849,-3873,-3900,-3932,-3965,-4006,-4045,-4078,
+-4114,-4149,-4178,-4204,-4242,-4270,-4298,-4320,-4336,-4360,-4374,-4385,-4395,-4406,-4414,-4423,-4434,-4445,-4450,-4453,
+-4453,-4463,-4458,-4449,-4449,-4450,-4456,-4450,-4442,-4430,-4415,-4401,-4384,-4366,-4353,-4337,-4315,-4286,-4254,-4223,
+-4188,-4148,-4107,-4072,-4040,-4005,-3966,-3927,-3883,-3842,-3801,-3762,-3716,-3667,-3632,-3586,-3554,-3503,-3416,-3359,
+-3360,-3268,-3260,-3211,-3177,-3127,-3066,-3012,-2972,-2934,-2883,-2823,-2756,-2693,-2635,-2578,-2514,-2447,-2374,-2312,
+-2261,-2207,-2151,-2088,-2034,-1977,-1913,-1855,-1796,-1749,-1700,-1651,-1597,-1544,-1500,-1451,-1402,-1363,-1321,-1274,
+-1211,-1169,-1127,-1077,-1035,-1002,-961,-916,-883,-862,-841,-817,-781,-755,-745,-741,-710,-706,-708,-682,
+-691,-779,-845,-932,-1044,-1115,-1069,-919,-713,-527,-442,-431,-445,-463,-449,-392,-264,-133,8,147,
+239,239,268,246,215,235,290,337,412,370,450,398,416,491,466,488,483,442,429,424,
+441,453,429,410,387,336,303,275,230,190,152,123,88,72,65,47,-25,-81,-87,-168,
+-245,-306,-333,-450,-537,-581,-608,-648,-682,-703,-742,-851,-915,-971,-1235,-1297,-1361,-1425,-1470,-1506,
+-1558,-1620,-1687,-1750,-1810,-1895,-1983,-2058,-2093,-2065,-2053,-2101,-2146,-2207,-2264,-2307,-2369,-2548,-2695,-2767,
+-2839,-2953,-3025,-3075,-3116,-3164,-3208,-3249,-3302,-3362,-3427,-3484,-3525,-3572,-3616,-3631,-3619,-3625,-3642,-3686,
+-3764,-3806,-3822,-3828,-3834,-3848,-3855,-3854,-3760,-3745,-3789,-3845,-3909,-4042,-4089,-4116,-4138,-4148,-4055,-3843,
+-3991,-4353,-4694,-5091,-5480,-5723,-5744,-5619,-5466,-5288,-5161,-5090,-5083,-5069,-5035,-5008,-4983,-4946,-4894,-4841,
+-4824,-4821,-4829,-4816,-4774,-4728,-4688,-4635,-4572,-4510,-4459,-4418,-4371,-4338,-4297,-4259,-4227,-4188,-4147,-4111,
+-4079,-4058,-4023,-3986,-3946,-3875,-3789,-3713,-3616,-3543,-3473,-3395,-3319,-3259,-3186,-3119,-3057,-2980,-2914,-2843,
+-2743,-2646,-2574,-2557,-2479,-2464,-2450,-2407,-2366,-2341,-2301,-2254,-2211,-2165,-2137,-2122,-2092,-2063,-2022,-1976,
+-1908,-1843,-1779,-1720,-1650,-1620,-1578,-1520,-1469,-1423,-1378,-1330,-1265,-1186,-1149,-1078,-1025,-970,-909,-843,
+-787,-723,-672,-626,-584,-524,-466,-405,-330,-260,-183,-119,-45,18,86,165,241,316,385,455,
+524,586,643,705,768,829,884,943,999,1060,1115,1173,1239,1307,1377,1432,1490,1546,1602,1648,
+1687,1736,1794,1879,1962,2011,2035,2037,2057,2073,2055,2033,2012,1998,1993,2005,2022,2041,2066,2101,
+2140,2175,2210,2245,2278,2318,2372,2438,2503,2576,2662,2752,2863,3018,3042,3007,2953,2923,2936,2948,
+2965,2988,3009,3048,3091,3102,3125,3164,3222,3278,3309,3320,3297,3226,3126,3044,3005,3013,3010,3021,
+3053,3068,3073,3051,3041,3058,3048,3033,3009,2989,2979,2965,2954,2947,2938,2938,2929,2911,2898,2889,
+2876,2858,2844,2841,2855,2890,2931,2952,2948,2920,2837,2715,2631,2564,2504,2472,2463,2463,2462,2416,
+2395,2366,2310,2303,2346,2334,2302,2257,2239,2249,2262,2266,2277,2255,2240,2226,2209,2197,2144,2087,
+2083,2080,2065,2030,2009,1980,1963,1960,1929,1915,1927,1951,1961,1954,1965,1992,2012,2034,2043,2059,
+2064,2077,2082,2054,2038,2022,1993,1979,1959,1910,1860,1812,1737,1669,1658,1608,1538,1479,1429,1397,
+1372,1347,1328,1365,1361,1331,1292,1264,1239,1204,1183,1143,1108,1092,1079,1054,1032,1018,1007,1000,
+959,949,979,948,877,843,842,844,864,904,931,967,1011,1027,1014,986,947,911,886,876,
+882,910,896,863,827,793,743,676,590,564,537,507,479,477,492,499,452,419,400,387,
+377,362,336,306,294,285,282,253,180,151,151,119,79,21,-26,-39,-52,-73,-87,-91,
+-90,-93,-90,-104,-120,-161,-184,-175,-146,-123,-119,-162,-229,-282,-318,-262,-196,-123,-107,-67,
+-10,-1,-1,-112,-360,-504,-540,-530,-513,-582,-688,-762,-818,-867,-892,-915,-930,-905,-862,-818,
+-823,-728,-699,-728,-831,-839,-860,-914,-1055,-1167,-1285,-1366,-1459,-1564,-1739,-1813,-1800,-1828,-1849,-1924,
+-2091,-2179,-2222,-2303,-2389,-2460,-2506,-2586,-2635,-2641,-2672,-2787,-2889,-2850,-2904,-2935,-3008,-3100,-3134,-3272,
+-3258,-3328,-3384,-3471,-3513,-3572,-3639,-3701,-3756,-3814,-3920,-4011,-4057,-4133,-4257,-4391,-4513,-4595,-4716,-4885,
+-4993,-5085,-5091,-5172,-5358,-5522,-5631,-5692,-5732,-5765,-5805,-5854,-5921,-5995,-6073,-6151,-6234,-6320,-6404,-6489,
+-6571,-6650,-6727,-6798,-6864,-6926,-6991,-7059,-7128,-7201,-7275,-7348,-7416,-7485,-7563,-7645,-7723,-7801,-7876,-7948,
+-8018,-8093,-8157,-8211,-8249,-8291,-8324,-8346,-8373,-8404,-8448,-8506,-8573,-8618,-8647,-8624,-8559,-8545,-8509,-8528,
+-8582,-8664,-8714,-8661,-8603,-8549,-8523,-8514,-8490,-8444,-8423,-8453,-8456,-8507,-8578,-8642,-8681,-8744,-8831,-8861,
+-8910,-8965,-8944,-8922,-8956,-8947,-9000,-9076,-9072,-9067,-9068,-9059,-9035,-8985,-8920,-8850,-8776,-8702,-8640,-8605,
+-8610,-8648,-8670,-8647,-8553,-8412,-8252,-8125,-8020,-7917,-7845,-7771,-7680,-7583,-7487,-7391,-7274,-7162,-7059,-6949,
+-6848,-6742,-6628,-6521,-6427,-6356,-6288,-6224,-6169,-6121,-6099,-6106,-6137,-6159,-6124,-6054,-6030,-5994,-6013,-5985,
+-5759,-5494,-5269,-5105,-4984,-4888,-4790,-4710,-4623,-4535,-4456,-4375,-4279,-4152,-4054,-3972,-3886,-3787,-3685,-3579,
+-3537,-3496,-3479,-3429,-3359,-3271,-3191,-3119,-3021,-2928,-2794,-2717,-2631,-2560,-2529,-2481,-2427,-2375,-2308,-2234,
+-2162,-2087,-2007,-1915,-1788,-1686,-1602,-1514,-1414,-1321,-1207,-1062,-915,-799,-672,-567,-468,-319,-245,-254,
+-262,-232,-165,-69,-16,28,75,200,315,422,538,665,800,873,988,1095,1173,1309,1418,1492,
+1616,1724,1821,1935,2040,2160,2285,2383,2478,2608,2720,2818,2915,3011,3115,3202,3275,3363,3397,3381,
+3322,3286,3331,3414,3707,4060,4237,4298,4401,4515,4621,4660,4698,4779,4852,4931,4963,5024,5038,5096,
+5158,5076,4883,4554,4296,4244,4334,4483,4613,4727,4823,4883,4902,4928,4946,4948,4949,4953,4952,4950,
+4939,4936,4926,4926,4935,4940,4938,4934,4946,4949,4949,4943,4949,4951,4968,4991,4987,4994,5015,5014,
+5036,5082,5130,5145,5146,5152,5163,5174,5183,5199,5215,5242,5255,5278,5268,5269,5275,5307,5324,5322,
+5309,5308,5243,5316,5296,5280,5258,5241,5251,5246,5246,5258,5260,5277,5341,5446,5447,5447,5475,5498,
+5490,5487,5488,5529,5564,5523,5177,4807,4500,4166,3852,3511,3277,3269,3575,4053,4275,4264,4343,4406,
+4486,4443,4411,4397,4373,4337,4289,4244,4178,4118,4069,4014,3965,3926,3897,3875,3854,3822,3785,3738,
+3685,3650,3671,3532,3414,3374,3421,3631,3838,3732,3724,3747,3432,3230,3177,3125,3031,2975,2958,2951,
+2952,2947,2932,2905,2896,2864,2861,2924,3088,2948,2793,2705,2651,2601,2549,2520,2543,2584,2582,2555,
+2488,2433,2380,2341,2344,2355,2395,2515,2473,2286,2147,2101,2179,2450,2414,2178,2025,1943,1929,1974,
+1972,1895,1820,1772,1717,1700,1681,1657,1632,1608,1580,1547,1521,1506,1447,1406,1412,1410,1399,1386,
+1366,1371,1416,1339,1330,1301,1388,1442,1361,1310,1294,1300,1240,1188,1153,1131,1130,1042,970,928,
+894,892,932,907,908,924,954,963,961,944,935,930,928,933,922,917,926,929,913,899,
+889,899,945,895,883,875,872,873,866,857,855,856,857,887,888,879,926,889,887,894,
+907,978,962,1021,1098,1170,1160,1089,1058,1059,1098,1148,1176,1124,1117,1182,1096,1060,1040,1079,
+1222,1149,1027,990,994,993,985,967,941,911,883,867,891,821,791,773,752,728,706,684,
+665,640,622,597,576,562,545,527,503,483,455,427,402,376,354,320,292,260,236,220,
+197,176,154,127,101,74,24,-19,-59,-91,-130,-167,-192,-209,-228,-249,-267,-287,-294,-302,
+-322,-339,-348,-361,-376,-394,-415,-438,-464,-488,-516,-550,-587,-615,-647,-672,-681,-702,-718,-726,
+-744,-770,-801,-842,-879,-913,-939,-965,-991,-1020,-1050,-1077,-1105,-1133,-1169,-1207,-1237,-1274,-1314,-1353,
+-1394,-1439,-1485,-1531,-1576,-1619,-1653,-1692,-1732,-1773,-1807,-1846,-1888,-1935,-1991,-2045,-2092,-2147,-2201,-2252,
+-2312,-2368,-2420,-2471,-2527,-2578,-2629,-2682,-2734,-2787,-2837,-2893,-2950,-3007,-3064,-3122,-3174,-3222,-3267,-3308,
+-3348,-3388,-3427,-3468,-3508,-3550,-3588,-3626,-3659,-3692,-3719,-3755,-3785,-3816,-3847,-3878,-3913,-3946,-3980,-4016,
+-4053,-4092,-4130,-4157,-4181,-4204,-4228,-4257,-4283,-4311,-4337,-4354,-4368,-4377,-4383,-4394,-4405,-4413,-4426,-4438,
+-4430,-4384,-4441,-4445,-4434,-4428,-4429,-4428,-4414,-4404,-4398,-4388,-4379,-4365,-4354,-4338,-4320,-4299,-4275,-4250,
+-4223,-4186,-4143,-4098,-4058,-4020,-3980,-3943,-3907,-3871,-3841,-3797,-3749,-3708,-3671,-3635,-3589,-3535,-3503,-3449,
+-3360,-3345,-3246,-3244,-3201,-3160,-3117,-3048,-2991,-2940,-2903,-2861,-2797,-2736,-2685,-2617,-2550,-2504,-2436,-2380,
+-2322,-2262,-2204,-2143,-2079,-2033,-1969,-1905,-1851,-1789,-1739,-1685,-1629,-1579,-1533,-1487,-1444,-1401,-1362,-1310,
+-1258,-1205,-1165,-1114,-1066,-1033,-993,-947,-909,-877,-838,-802,-774,-746,-738,-723,-694,-684,-673,-627,
+-619,-673,-690,-708,-753,-826,-935,-1046,-1072,-979,-817,-624,-542,-484,-422,-417,-416,-374,-329,-276,
+-160,-37,92,155,195,190,183,223,317,357,386,428,448,455,487,496,501,501,493,467,
+493,503,522,500,506,474,411,362,325,299,266,223,188,167,138,126,99,19,-8,6,
+-114,-162,-195,-273,-372,-453,-518,-574,-605,-629,-639,-700,-839,-880,-950,-1187,-1272,-1333,-1387,-1440,
+-1490,-1548,-1609,-1681,-1755,-1834,-1913,-1985,-2054,-2106,-2095,-2063,-2128,-2199,-2266,-2310,-2354,-2410,-2570,-2726,
+-2818,-2872,-2975,-3079,-3157,-3215,-3262,-3300,-3330,-3367,-3431,-3487,-3522,-3543,-3575,-3611,-3628,-3624,-3631,-3642,
+-3687,-3748,-3759,-3762,-3772,-3778,-3787,-3803,-3797,-3723,-3673,-3730,-3796,-3902,-4026,-4079,-4101,-4136,-4155,-4089,
+-3923,-3974,-4237,-4510,-4852,-5256,-5586,-5658,-5552,-5389,-5204,-5076,-5011,-5000,-4969,-4931,-4905,-4886,-4861,-4829,
+-4798,-4790,-4785,-4789,-4774,-4738,-4701,-4652,-4602,-4551,-4505,-4455,-4406,-4371,-4345,-4320,-4294,-4273,-4228,-4184,
+-4153,-4116,-4073,-4031,-3991,-3955,-3922,-3862,-3785,-3709,-3628,-3547,-3464,-3390,-3270,-3231,-3142,-3090,-3018,-2940,
+-2866,-2769,-2663,-2595,-2563,-2487,-2473,-2469,-2437,-2400,-2375,-2325,-2275,-2243,-2186,-2153,-2106,-2047,-2018,-1990,
+-1953,-1894,-1848,-1791,-1743,-1696,-1654,-1613,-1568,-1510,-1461,-1419,-1363,-1289,-1231,-1173,-1100,-1039,-980,-911,
+-844,-796,-750,-687,-631,-574,-513,-460,-403,-334,-272,-213,-157,-100,-37,25,96,148,220,307,
+392,459,536,600,664,726,778,832,889,954,1014,1069,1127,1186,1241,1303,1360,1423,1486,1549,
+1591,1632,1674,1720,1773,1823,1859,1879,1888,1903,1908,1907,1909,1911,1921,1938,1960,1979,2005,2032,
+2066,2103,2136,2167,2200,2235,2280,2335,2402,2471,2539,2612,2690,2780,2915,2964,2947,2922,2925,2955,
+2983,2998,2997,3013,3048,3087,3104,3122,3151,3192,3236,3266,3286,3274,3216,3137,3059,3036,3051,3034,
+3053,3084,3096,3100,3073,3079,3096,3088,3067,3037,3024,3008,2986,2972,2962,2953,2949,2943,2929,2910,
+2892,2876,2859,2842,2840,2855,2890,2931,2945,2928,2881,2778,2675,2618,2575,2525,2487,2477,2475,2470,
+2445,2429,2392,2368,2346,2387,2374,2343,2296,2278,2269,2292,2322,2303,2271,2239,2233,2222,2195,2157,
+2123,2108,2076,2064,2030,2010,1980,1961,1944,1910,1892,1903,1932,1940,1948,1969,2000,2038,2068,2070,
+2076,2073,2080,2076,2046,2046,2027,1965,1929,1922,1902,1867,1805,1758,1668,1650,1620,1538,1474,1420,
+1382,1352,1330,1323,1362,1372,1330,1288,1270,1239,1203,1174,1142,1111,1094,1069,1045,1014,994,1004,
+958,937,979,944,876,827,794,782,802,832,863,880,913,951,986,976,939,907,881,867,
+863,876,885,853,792,768,735,687,622,562,538,491,443,417,393,412,430,408,394,371,
+367,356,337,312,278,252,239,235,203,138,103,90,67,31,0,-41,-53,-72,-90,-120,
+-140,-135,-138,-127,-147,-162,-204,-218,-206,-201,-198,-213,-206,-170,-180,-259,-279,-242,-178,-108,
+-64,-72,-95,-53,-80,-355,-511,-566,-593,-556,-584,-699,-764,-825,-872,-910,-935,-970,-954,-926,
+-894,-823,-753,-773,-799,-888,-918,-906,-988,-1170,-1329,-1459,-1554,-1619,-1696,-1775,-1878,-1895,-1915,-1968,
+-2056,-2132,-2194,-2292,-2370,-2446,-2491,-2538,-2615,-2657,-2693,-2723,-2984,-2910,-2915,-2959,-3019,-3080,-3127,-3218,
+-3304,-3350,-3403,-3479,-3557,-3587,-3652,-3722,-3789,-3844,-3885,-3940,-4034,-4154,-4159,-4279,-4397,-4527,-4634,-4798,
+-4904,-5088,-5159,-5163,-5294,-5436,-5565,-5657,-5711,-5753,-5793,-5838,-5895,-5963,-6040,-6119,-6201,-6284,-6370,-6456,
+-6537,-6618,-6698,-6771,-6845,-6913,-6981,-7048,-7115,-7182,-7258,-7332,-7405,-7476,-7549,-7627,-7704,-7778,-7855,-7927,
+-7993,-8063,-8137,-8212,-8271,-8316,-8350,-8381,-8406,-8426,-8460,-8509,-8568,-8633,-8648,-8711,-8730,-8692,-8629,-8577,
+-8604,-8631,-8735,-8830,-8749,-8704,-8651,-8613,-8583,-8533,-8488,-8451,-8461,-8455,-8484,-8537,-8579,-8617,-8688,-8763,
+-8819,-8880,-8949,-9002,-9010,-9013,-9036,-9039,-9160,-9139,-9124,-9108,-9088,-9055,-9006,-8942,-8873,-8799,-8733,-8669,
+-8631,-8639,-8688,-8719,-8694,-8616,-8481,-8295,-8145,-8029,-7934,-7860,-7792,-7695,-7586,-7485,-7394,-7288,-7172,-7059,
+-6943,-6833,-6731,-6638,-6540,-6444,-6369,-6301,-6234,-6178,-6135,-6123,-6144,-6173,-6161,-6078,-5991,-5986,-5990,-6101,
+-6052,-5831,-5568,-5339,-5156,-5020,-4917,-4794,-4695,-4612,-4522,-4439,-4353,-4253,-4126,-4023,-3935,-3879,-3775,-3614,
+-3517,-3491,-3468,-3427,-3381,-3322,-3245,-3173,-3089,-2989,-2905,-2821,-2750,-2669,-2561,-2501,-2459,-2396,-2332,-2260,
+-2169,-2091,-2017,-1945,-1859,-1749,-1628,-1525,-1428,-1330,-1235,-1133,-1039,-933,-825,-677,-525,-407,-301,-229,
+-208,-200,-164,-101,11,30,64,118,227,343,476,601,730,865,963,1064,1127,1260,1371,1460,
+1576,1686,1801,1898,2027,2138,2240,2394,2429,2545,2682,2781,2887,2983,3074,3169,3250,3328,3412,3460,
+3458,3385,3324,3406,3526,3783,4096,4221,4330,4405,4558,4654,4766,4783,4851,4908,5033,5066,5152,5179,
+5220,5261,5267,5065,4695,4386,4243,4324,4487,4632,4738,4862,4932,4954,4972,4999,5020,5031,5020,5020,
+5008,4995,4990,4990,4987,4991,4996,4996,5000,4997,5002,4993,4977,4976,4982,4997,5014,5017,5033,5053,
+5053,5069,5115,5152,5164,5184,5195,5197,5209,5232,5241,5254,5282,5292,5290,5313,5305,5318,5352,5347,
+5347,5335,5290,5288,5329,5302,5289,5268,5254,5256,5253,5248,5248,5260,5320,5387,5458,5427,5453,5479,
+5496,5496,5474,5478,5548,5579,5355,4990,4665,4359,3976,3591,3314,3196,3368,3701,4060,4265,4375,4532,
+4427,4417,4422,4398,4387,4369,4329,4283,4232,4182,4135,4085,4033,3979,3930,3896,3881,3862,3832,3793,
+3747,3696,3650,3599,3519,3440,3392,3405,3517,3766,3825,3597,3451,3296,3254,3471,3353,3101,3019,2991,
+2985,2988,2988,2977,2942,2905,2878,2865,2894,2954,2967,2934,2817,2764,2643,2582,2583,2767,2752,2734,
+2813,2835,2608,2447,2394,2375,2377,2394,2391,2341,2258,2198,2160,2305,2650,2763,2446,2186,2022,1944,
+1923,1911,1876,1833,1788,1764,1759,1739,1713,1682,1651,1617,1578,1559,1587,1476,1439,1425,1438,1468,
+1500,1417,1389,1379,1357,1342,1345,1419,1417,1365,1305,1284,1275,1245,1219,1182,1161,1166,1064,993,
+950,923,904,903,916,933,954,952,949,944,950,965,977,978,986,965,959,964,961,946,
+931,924,932,931,953,897,889,895,898,896,888,878,880,887,924,940,939,1002,937,936,
+925,895,930,1046,1021,967,1086,1172,1155,1045,1025,1040,1067,1104,1211,1116,1154,1116,1138,1104,
+1058,1082,1135,1073,1024,1006,1005,1003,993,966,942,915,892,870,838,813,793,767,743,716,
+688,665,652,637,625,610,594,575,550,525,500,468,441,419,392,372,339,306,272,254,
+273,212,178,150,123,96,64,32,-1,-39,-76,-114,-139,-170,-190,-210,-227,-244,-265,-281,
+-295,-320,-338,-359,-364,-377,-405,-421,-427,-438,-449,-455,-467,-488,-506,-538,-568,-598,-633,-663,
+-692,-716,-744,-767,-799,-836,-873,-901,-931,-957,-991,-1026,-1061,-1085,-1109,-1144,-1180,-1212,-1246,-1287,
+-1327,-1364,-1400,-1444,-1489,-1539,-1585,-1624,-1667,-1706,-1747,-1780,-1815,-1856,-1904,-1952,-2004,-2052,-2107,-2170,
+-2231,-2301,-2346,-2392,-2446,-2500,-2554,-2605,-2656,-2706,-2754,-2804,-2858,-2912,-2972,-3031,-3085,-3138,-3187,-3234,
+-3275,-3321,-3361,-3403,-3439,-3481,-3522,-3561,-3602,-3630,-3661,-3692,-3726,-3755,-3788,-3822,-3861,-3902,-3938,-3968,
+-4002,-4036,-4069,-4103,-4128,-4147,-4169,-4191,-4221,-4255,-4290,-4320,-4333,-4342,-4361,-4361,-4376,-4391,-4399,-4411,
+-4424,-4430,-4409,-4335,-4424,-4431,-4426,-4418,-4407,-4388,-4382,-4378,-4369,-4358,-4346,-4330,-4313,-4298,-4279,-4255,
+-4231,-4201,-4163,-4125,-4087,-4046,-4000,-3957,-3920,-3887,-3853,-3819,-3779,-3737,-3700,-3664,-3620,-3586,-3539,-3477,
+-3432,-3355,-3340,-3265,-3239,-3193,-3151,-3110,-3038,-2983,-2939,-2884,-2832,-2776,-2710,-2663,-2615,-2562,-2495,-2436,
+-2377,-2322,-2264,-2205,-2143,-2084,-2021,-1965,-1899,-1844,-1781,-1729,-1683,-1633,-1579,-1529,-1478,-1446,-1409,-1361,
+-1305,-1251,-1203,-1158,-1111,-1078,-1039,-983,-941,-893,-863,-828,-795,-763,-742,-727,-699,-682,-671,-618,
+-591,-635,-636,-616,-611,-622,-677,-738,-818,-921,-1011,-1005,-890,-763,-623,-469,-395,-367,-356,-342,
+-328,-296,-238,-158,-50,61,137,171,159,197,255,279,339,424,443,514,540,548,550,523,
+550,548,551,549,546,573,544,460,398,364,345,311,293,252,229,199,172,130,65,35,
+48,-50,-100,-165,-232,-301,-385,-472,-547,-592,-646,-608,-625,-824,-903,-1046,-1142,-1203,-1258,-1314,
+-1373,-1445,-1528,-1602,-1677,-1762,-1857,-1924,-1996,-2063,-2118,-2161,-2194,-2226,-2297,-2373,-2420,-2477,-2534,-2652,
+-2810,-2919,-2989,-3071,-3160,-3241,-3321,-3371,-3407,-3436,-3472,-3529,-3568,-3576,-3574,-3598,-3627,-3651,-3654,-3656,
+-3664,-3706,-3746,-3748,-3734,-3721,-3713,-3726,-3743,-3742,-3670,-3646,-3678,-3754,-3868,-4017,-4087,-4101,-4122,-4114,
+-4008,-3740,-3845,-4100,-4325,-4576,-4904,-5287,-5401,-5318,-5159,-5009,-4894,-4848,-4852,-4837,-4808,-4793,-4792,-4785,
+-4780,-4771,-4757,-4746,-4730,-4710,-4690,-4658,-4609,-4567,-4519,-4487,-4464,-4421,-4383,-4354,-4325,-4296,-4254,-4228,
+-4214,-4194,-4163,-4117,-4069,-4022,-3963,-3898,-3839,-3792,-3733,-3662,-3595,-3500,-3430,-3343,-3263,-3201,-3096,-3031,
+-2970,-2879,-2797,-2703,-2632,-2571,-2495,-2483,-2477,-2452,-2422,-2371,-2342,-2290,-2240,-2216,-2169,-2128,-2077,-2030,
+-2001,-1953,-1904,-1854,-1784,-1738,-1688,-1636,-1595,-1549,-1488,-1448,-1415,-1351,-1290,-1238,-1170,-1119,-1066,-1002,
+-942,-892,-840,-771,-716,-665,-611,-551,-486,-430,-362,-298,-235,-169,-103,-44,14,75,130,185,
+248,307,379,445,506,582,654,715,767,824,888,949,1009,1071,1133,1192,1253,1311,1369,1424,
+1480,1527,1571,1611,1648,1693,1730,1760,1780,1791,1805,1812,1818,1831,1845,1862,1887,1918,1944,1971,
+2001,2037,2069,2094,2123,2156,2196,2242,2294,2356,2416,2465,2514,2576,2668,2802,2886,2917,2938,2970,
+3005,3031,3052,3051,3050,3068,3085,3106,3128,3156,3179,3197,3223,3245,3229,3157,3085,3041,3042,3065,
+3057,3064,3080,3126,3137,3110,3112,3123,3120,3102,3072,3047,3027,3009,2987,2961,2943,2947,2942,2922,
+2898,2883,2870,2851,2841,2845,2862,2892,2921,2933,2901,2830,2742,2658,2639,2616,2574,2541,2509,2487,
+2484,2500,2483,2456,2424,2387,2482,2420,2387,2335,2322,2323,2369,2368,2327,2279,2247,2239,2233,2210,
+2165,2135,2122,2091,2063,2033,2014,1978,1958,1930,1898,1883,1891,1915,1933,1958,1991,2030,2067,2116,
+2097,2091,2087,2083,2070,2038,2036,2013,1951,1905,1886,1878,1878,1824,1767,1692,1660,1623,1545,1485,
+1426,1383,1354,1334,1338,1364,1371,1332,1292,1268,1235,1200,1160,1141,1111,1087,1057,1028,991,1004,
+1011,950,950,953,879,834,799,748,743,759,783,810,823,855,902,918,912,885,861,843,
+841,839,852,863,806,734,702,667,640,594,529,475,433,400,377,350,362,386,376,365,
+346,322,326,319,295,251,216,162,143,142,112,71,9,-5,-7,-44,-67,-77,-104,-109,
+-143,-193,-198,-174,-180,-197,-215,-226,-225,-236,-264,-283,-269,-248,-225,-149,-210,-284,-255,-217,
+-209,-197,-169,-150,-147,-156,-387,-538,-579,-620,-647,-637,-688,-753,-827,-886,-929,-971,-1002,-1001,
+-966,-899,-853,-873,-896,-934,-1035,-1060,-1150,-1263,-1360,-1482,-1609,-1714,-1784,-1843,-1893,-1923,-1958,-2030,
+-2096,-2147,-2198,-2258,-2339,-2415,-2475,-2488,-2540,-2619,-2672,-2716,-2825,-2986,-2948,-2973,-3043,-3116,-3163,-3221,
+-3301,-3379,-3413,-3457,-3540,-3611,-3669,-3740,-3819,-3896,-3937,-3969,-4024,-4105,-4172,-4246,-4346,-4422,-4526,-4692,
+-4862,-4961,-5147,-5219,-5239,-5401,-5505,-5612,-5688,-5735,-5777,-5823,-5873,-5937,-6010,-6089,-6171,-6255,-6336,-6419,
+-6504,-6585,-6664,-6745,-6821,-6900,-6975,-7044,-7109,-7173,-7240,-7316,-7388,-7463,-7532,-7609,-7686,-7763,-7837,-7911,
+-7986,-8045,-8110,-8181,-8252,-8326,-8375,-8416,-8446,-8466,-8477,-8508,-8561,-8627,-8651,-8623,-8748,-8796,-8784,-8720,
+-8641,-8652,-8690,-8798,-8893,-8906,-8826,-8739,-8682,-8618,-8571,-8550,-8484,-8456,-8456,-8466,-8499,-8517,-8555,-8617,
+-8677,-8747,-8829,-8896,-9026,-9091,-9093,-9128,-9107,-9230,-9199,-9178,-9152,-9120,-9081,-9031,-8968,-8900,-8832,-8765,
+-8699,-8654,-8650,-8693,-8730,-8711,-8647,-8526,-8341,-8176,-8054,-7959,-7880,-7813,-7721,-7605,-7494,-7401,-7295,-7178,
+-7061,-6939,-6826,-6722,-6634,-6545,-6462,-6384,-6311,-6242,-6192,-6158,-6150,-6179,-6196,-6131,-6022,-5944,-5971,-6052,
+-6212,-6097,-5856,-5564,-5382,-5200,-5064,-4956,-4824,-4716,-4626,-4516,-4416,-4323,-4216,-4083,-3979,-3898,-3858,-3761,
+-3622,-3498,-3457,-3412,-3378,-3322,-3268,-3214,-3148,-3060,-2962,-2868,-2790,-2714,-2630,-2550,-2479,-2426,-2363,-2303,
+-2235,-2141,-2039,-1956,-1880,-1795,-1692,-1586,-1459,-1361,-1259,-1154,-1050,-956,-846,-748,-639,-497,-369,-287,
+-194,-84,-88,-75,-15,97,80,94,149,263,404,550,672,791,924,1033,1106,1233,1331,1428,
+1528,1647,1750,1865,1968,2080,2178,2311,2392,2501,2598,2729,2839,2943,3041,3139,3231,3315,3396,3477,
+3525,3527,3473,3375,3395,3503,3706,3989,4151,4321,4465,4580,4614,4807,4870,4907,4956,5018,5114,5194,
+5233,5236,5252,5296,5109,4758,4462,4240,4294,4471,4637,4757,4871,4954,5007,5047,5065,5093,5085,5076,
+5068,5062,5063,5059,5051,5046,5044,5046,5055,5047,5056,5050,5035,5020,5009,5013,5037,5055,5071,5081,
+5072,5113,5107,5132,5167,5224,5239,5245,5240,5260,5272,5286,5300,5313,5332,5347,5342,5341,5370,5375,
+5385,5363,5364,5313,5362,5340,5305,5287,5268,5263,5261,5266,5265,5270,5296,5354,5423,5427,5471,5471,
+5482,5488,5472,5440,5459,5556,5511,5186,4850,4506,4102,3648,3308,3139,3251,3592,3841,4119,4319,4468,
+4518,4445,4432,4430,4420,4411,4379,4331,4278,4227,4194,4149,4104,4048,3987,3939,3916,3905,3884,3842,
+3794,3743,3701,3652,3591,3528,3469,3420,3392,3418,3478,3421,3327,3249,3195,3217,3393,3289,3128,3067,
+3039,3030,3028,3022,3007,2974,2934,2900,2882,2906,2980,3027,2986,2870,2778,2683,2629,2611,2656,2712,
+2826,2966,2880,2712,2608,2476,2411,2399,2400,2380,2328,2270,2222,2221,2348,2609,2733,2492,2247,2084,
+1975,1923,1907,1885,1858,1837,1816,1805,1792,1766,1733,1696,1665,1628,1587,1549,1509,1477,1458,1461,
+1481,1483,1441,1420,1404,1410,1396,1471,1509,1414,1358,1307,1288,1279,1263,1234,1204,1181,1130,1081,
+1034,1007,991,970,929,914,938,951,969,968,964,980,1001,1014,1021,1023,1016,1014,1013,998,
+983,964,966,934,922,926,910,898,909,915,919,932,961,936,935,929,936,964,1035,943,
+908,901,900,904,958,955,941,941,990,1008,1011,1033,1048,1118,1096,1129,1111,1145,1124,1140,
+1207,1180,1097,1169,1238,1096,1028,1021,1021,1015,996,977,952,926,890,862,837,814,792,767,
+742,711,684,667,652,646,642,633,614,587,558,527,494,459,426,400,378,351,314,281,
+257,247,222,195,166,150,131,101,70,37,5,-26,-56,-85,-116,-151,-176,-213,-243,-267,
+-282,-299,-306,-310,-318,-321,-325,-337,-345,-347,-364,-383,-400,-421,-449,-481,-516,-543,-574,-600,
+-628,-656,-678,-706,-728,-757,-791,-826,-862,-892,-920,-952,-996,-1037,-1070,-1093,-1122,-1150,-1181,-1220,
+-1255,-1295,-1332,-1365,-1407,-1449,-1498,-1544,-1596,-1638,-1682,-1723,-1759,-1803,-1843,-1893,-1945,-1993,-2040,-2085,
+-2142,-2209,-2267,-2300,-2337,-2420,-2463,-2520,-2572,-2621,-2667,-2714,-2771,-2825,-2880,-2934,-2990,-3049,-3099,-3149,
+-3196,-3244,-3290,-3332,-3371,-3411,-3455,-3494,-3532,-3568,-3596,-3630,-3663,-3694,-3720,-3759,-3793,-3834,-3882,-3927,
+-3957,-3989,-4019,-4048,-4074,-4104,-4129,-4152,-4177,-4202,-4233,-4252,-4281,-4306,-4328,-4330,-4348,-4350,-4374,-4380,
+-4389,-4398,-4397,-4366,-4360,-4385,-4405,-4399,-4404,-4395,-4375,-4364,-4359,-4355,-4342,-4328,-4306,-4286,-4273,-4255,
+-4235,-4213,-4182,-4144,-4112,-4076,-4035,-3994,-3950,-3905,-3866,-3832,-3792,-3755,-3717,-3682,-3641,-3599,-3561,-3528,
+-3470,-3394,-3354,-3345,-3259,-3245,-3184,-3142,-3098,-3043,-2980,-2918,-2889,-2826,-2766,-2693,-2634,-2596,-2546,-2489,
+-2427,-2363,-2301,-2247,-2191,-2134,-2075,-2017,-1960,-1894,-1841,-1782,-1723,-1669,-1612,-1560,-1524,-1487,-1444,-1398,
+-1343,-1291,-1243,-1193,-1152,-1104,-1069,-1019,-975,-933,-900,-869,-826,-783,-763,-735,-716,-694,-682,-637,
+-599,-648,-631,-584,-565,-557,-560,-583,-605,-646,-704,-783,-874,-950,-943,-836,-694,-552,-397,-311,
+-276,-261,-269,-289,-280,-230,-112,21,104,159,170,189,202,305,327,352,423,488,584,566,
+619,599,626,592,587,587,597,557,500,436,395,365,347,352,302,275,246,224,173,99,
+44,74,-2,-34,-74,-113,-187,-338,-418,-523,-571,-614,-603,-610,-809,-911,-993,-1043,-1092,-1153,
+-1217,-1293,-1379,-1468,-1552,-1644,-1746,-1839,-1922,-2005,-2070,-2136,-2196,-2292,-2353,-2420,-2489,-2546,-2596,-2674,
+-2770,-2894,-3013,-3111,-3193,-3274,-3350,-3419,-3478,-3516,-3545,-3588,-3633,-3659,-3656,-3639,-3658,-3681,-3703,-3705,
+-3707,-3707,-3745,-3763,-3739,-3695,-3675,-3665,-3669,-3677,-3667,-3609,-3592,-3613,-3709,-3871,-4014,-4087,-4100,-4104,
+-4070,-3931,-3676,-3823,-4059,-4265,-4458,-4701,-4959,-5074,-5041,-4917,-4807,-4734,-4718,-4750,-4766,-4762,-4755,-4753,
+-4741,-4738,-4735,-4725,-4710,-4695,-4685,-4666,-4637,-4610,-4566,-4523,-4485,-4453,-4416,-4386,-4368,-4337,-4309,-4275,
+-4244,-4207,-4188,-4155,-4136,-4114,-4084,-4041,-3951,-3875,-3794,-3734,-3686,-3633,-3558,-3477,-3385,-3304,-3221,-3144,
+-3063,-2984,-2922,-2822,-2739,-2660,-2620,-2517,-2491,-2486,-2448,-2435,-2389,-2365,-2298,-2263,-2237,-2198,-2151,-2114,
+-2072,-2024,-1979,-1937,-1886,-1822,-1770,-1719,-1665,-1613,-1555,-1517,-1473,-1417,-1361,-1314,-1265,-1207,-1156,-1119,
+-1059,-1001,-949,-882,-846,-805,-730,-672,-609,-537,-478,-403,-336,-275,-212,-144,-83,-16,37,104,
+171,242,303,374,432,484,540,573,624,690,752,819,881,946,1012,1076,1142,1201,1265,1325,
+1387,1435,1482,1516,1543,1582,1622,1662,1694,1716,1730,1742,1754,1765,1777,1800,1821,1846,1880,1907,
+1939,1970,2006,2035,2057,2083,2117,2158,2199,2248,2302,2350,2384,2417,2462,2548,2704,2826,2901,2955,
+2997,3026,3055,3085,3121,3113,3091,3092,3103,3131,3153,3166,3184,3204,3208,3166,3084,3053,3034,3051,
+3070,3075,3063,3079,3135,3158,3137,3136,3143,3152,3142,3108,3060,3037,3028,2994,2970,2942,2937,2926,
+2901,2882,2868,2861,2848,2844,2853,2870,2893,2907,2911,2873,2798,2722,2669,2656,2648,2623,2595,2559,
+2538,2532,2536,2542,2506,2500,2482,2525,2483,2432,2395,2376,2368,2389,2383,2359,2297,2266,2244,2232,
+2224,2165,2135,2113,2093,2071,2037,2002,1964,1950,1934,1904,1897,1905,1925,1947,1980,2021,2055,2078,
+2125,2125,2123,2110,2099,2068,2025,2000,1973,1942,1899,1881,1896,1880,1837,1783,1720,1678,1621,1551,
+1497,1437,1391,1366,1350,1347,1356,1340,1310,1280,1244,1223,1194,1164,1129,1090,1073,1050,1018,996,
+1001,988,949,924,871,813,791,762,720,711,709,730,746,770,803,839,834,842,827,810,
+804,803,805,814,828,782,699,664,625,596,552,490,439,412,380,349,328,333,338,324,
+313,304,285,300,295,269,231,194,149,102,77,78,29,-9,-56,-76,-78,-81,-101,-136,
+-145,-172,-217,-241,-203,-217,-234,-238,-251,-261,-273,-304,-328,-303,-287,-254,-190,-173,-258,-203,
+-98,-149,-273,-269,-239,-190,-250,-422,-553,-626,-638,-701,-732,-693,-706,-828,-912,-963,-1007,-1030,
+-1031,-1026,-997,-923,-996,-1055,-1093,-1176,-1273,-1340,-1375,-1435,-1586,-1719,-1778,-1840,-1880,-1950,-1999,-2061,
+-2121,-2159,-2202,-2259,-2298,-2364,-2472,-2468,-2480,-2566,-2650,-2687,-2708,-2901,-2934,-2996,-3041,-3109,-3179,-3237,
+-3300,-3368,-3432,-3496,-3547,-3602,-3680,-3755,-3822,-3911,-3983,-4017,-4057,-4124,-4182,-4212,-4267,-4431,-4465,-4549,
+-4748,-4884,-5050,-5151,-5145,-5300,-5473,-5567,-5651,-5715,-5760,-5801,-5850,-5909,-5978,-6055,-6137,-6223,-6307,-6385,
+-6466,-6550,-6635,-6715,-6795,-6873,-6951,-7028,-7093,-7156,-7224,-7297,-7378,-7456,-7527,-7596,-7667,-7743,-7821,-7898,
+-7970,-8040,-8102,-8161,-8227,-8304,-8389,-8449,-8480,-8507,-8536,-8539,-8566,-8608,-8671,-8699,-8718,-8682,-8831,-8865,
+-8825,-8726,-8716,-8767,-8827,-8906,-8963,-8934,-8810,-8728,-8602,-8600,-8569,-8514,-8470,-8456,-8463,-8478,-8483,-8513,
+-8567,-8623,-8704,-8813,-8934,-9050,-9122,-9192,-9199,-9161,-9289,-9258,-9227,-9194,-9161,-9119,-9066,-9005,-8938,-8866,
+-8799,-8737,-8682,-8660,-8669,-8699,-8696,-8643,-8547,-8391,-8222,-8093,-7996,-7913,-7837,-7751,-7634,-7517,-7414,-7303,
+-7182,-7067,-6952,-6846,-6745,-6656,-6563,-6478,-6389,-6306,-6238,-6193,-6176,-6188,-6216,-6200,-6092,-5970,-5917,-5955,
+-6150,-6282,-6130,-5809,-5505,-5348,-5192,-5064,-4967,-4842,-4737,-4651,-4553,-4396,-4282,-4172,-4040,-3939,-3859,-3829,
+-3779,-3639,-3476,-3424,-3373,-3341,-3278,-3216,-3165,-3104,-3033,-2944,-2838,-2757,-2679,-2596,-2507,-2433,-2374,-2322,
+-2269,-2210,-2125,-2022,-1924,-1828,-1746,-1648,-1535,-1411,-1315,-1205,-1101,-1001,-894,-797,-700,-592,-466,-355,
+-254,-138,3,4,19,69,178,157,163,226,338,469,602,727,848,992,1114,1184,1292,1407,
+1486,1599,1703,1816,1934,2048,2153,2244,2343,2457,2583,2673,2777,2891,3004,3104,3204,3302,3384,3467,
+3578,3612,3611,3573,3474,3378,3390,3457,3755,4141,4401,4576,4629,4673,4831,5001,4959,5007,5039,5100,
+5208,5257,5203,5170,5183,5016,4750,4537,4259,4210,4425,4622,4796,4909,5002,5036,5074,5141,5152,5141,
+5134,5134,5123,5122,5119,5106,5102,5096,5090,5089,5104,5112,5100,5080,5061,5056,5050,5069,5097,5121,
+5130,5118,5192,5159,5173,5257,5291,5297,5298,5290,5305,5318,5336,5352,5355,5369,5379,5379,5400,5411,
+5414,5427,5385,5359,5290,5367,5349,5308,5282,5264,5262,5252,5259,5258,5290,5346,5374,5436,5442,5443,
+5471,5473,5459,5436,5387,5425,5541,5341,5024,4698,4272,3715,3295,3128,3144,3473,3812,4017,4259,4424,
+4519,4515,4495,4484,4471,4457,4456,4410,4338,4280,4247,4223,4165,4115,4053,4005,3975,3959,3951,3913,
+3860,3807,3761,3719,3669,3613,3555,3504,3450,3406,3374,3345,3297,3247,3208,3179,3177,3210,3181,3142,
+3121,3103,3084,3066,3047,3022,2990,2956,2925,2908,2928,3062,3125,2997,2917,2803,2730,2701,2689,2652,
+2673,2823,2827,2767,2796,2813,2551,2445,2423,2424,2405,2359,2312,2253,2256,2315,2446,2467,2346,2199,
+2077,1992,1946,1931,1932,1914,1889,1864,1850,1832,1805,1778,1745,1721,1706,1686,1590,1551,1525,1506,
+1496,1493,1478,1460,1446,1433,1429,1414,1446,1545,1446,1352,1313,1306,1300,1290,1267,1234,1203,1150,
+1108,1088,1115,1199,1100,987,983,986,965,996,1092,1010,1015,1035,1058,1064,1071,1070,1053,1049,
+1032,1011,987,965,939,927,918,935,928,922,921,929,954,1065,1032,976,958,966,973,952,
+934,932,917,912,921,941,948,965,926,940,971,1009,1044,1065,1095,1115,1132,1155,1161,1147,
+1142,1179,1211,1118,1117,1167,1109,1056,1043,1044,1036,1026,1007,980,948,917,887,861,837,820,
+801,780,754,724,702,684,671,667,662,642,615,579,539,501,470,442,422,400,377,346,
+314,287,270,251,233,223,211,186,163,127,91,56,18,-13,-46,-78,-116,-147,-175,-200,
+-226,-233,-257,-272,-277,-286,-298,-305,-315,-321,-337,-348,-363,-388,-410,-426,-451,-481,-508,-536,
+-569,-599,-629,-656,-681,-704,-728,-755,-783,-820,-857,-891,-926,-965,-1004,-1042,-1072,-1094,-1121,-1151,
+-1185,-1221,-1264,-1301,-1337,-1374,-1417,-1470,-1530,-1571,-1622,-1669,-1712,-1747,-1791,-1834,-1885,-1933,-1973,-2018,
+-2062,-2118,-2178,-2233,-2285,-2338,-2392,-2438,-2487,-2540,-2592,-2645,-2692,-2746,-2798,-2849,-2901,-2953,-3010,-3057,
+-3107,-3157,-3209,-3258,-3299,-3342,-3386,-3424,-3460,-3494,-3531,-3564,-3599,-3627,-3656,-3687,-3725,-3761,-3802,-3850,
+-3896,-3926,-3958,-3992,-4015,-4048,-4082,-4111,-4141,-4165,-4181,-4203,-4222,-4245,-4273,-4299,-4319,-4338,-4315,-4342,
+-4355,-4369,-4372,-4345,-4369,-4382,-4374,-4321,-4275,-4376,-4377,-4359,-4344,-4343,-4336,-4324,-4309,-4289,-4266,-4247,
+-4235,-4217,-4197,-4165,-4133,-4092,-4058,-4021,-3986,-3950,-3906,-3862,-3820,-3779,-3740,-3706,-3662,-3616,-3578,-3538,
+-3507,-3455,-3393,-3331,-3348,-3231,-3222,-3196,-3130,-3086,-3035,-2982,-2925,-2874,-2831,-2799,-2747,-2667,-2595,-2524,
+-2461,-2402,-2346,-2289,-2237,-2180,-2120,-2065,-2008,-1951,-1891,-1835,-1772,-1712,-1651,-1602,-1566,-1518,-1471,-1414,
+-1366,-1325,-1282,-1233,-1190,-1150,-1103,-1055,-1016,-970,-936,-899,-863,-823,-789,-767,-738,-718,-694,-662,
+-622,-654,-640,-595,-552,-530,-527,-524,-518,-520,-535,-556,-591,-638,-709,-801,-883,-872,-774,-634,
+-452,-265,-180,-168,-235,-281,-310,-283,-185,-86,-11,39,81,177,204,238,267,325,421,498,
+573,603,645,630,638,625,590,578,562,537,495,443,399,391,381,349,317,297,271,193,
+127,52,110,37,-1,-8,-12,-85,-250,-382,-466,-489,-519,-632,-679,-757,-835,-894,-942,-979,
+-1039,-1109,-1191,-1279,-1379,-1484,-1589,-1700,-1818,-1922,-2012,-2087,-2163,-2244,-2339,-2411,-2466,-2530,-2579,-2636,
+-2708,-2799,-2897,-2980,-3077,-3174,-3256,-3337,-3422,-3494,-3554,-3618,-3683,-3721,-3745,-3743,-3726,-3742,-3770,-3782,
+-3780,-3780,-3785,-3821,-3789,-3735,-3677,-3632,-3617,-3613,-3617,-3600,-3546,-3544,-3552,-3706,-3880,-4039,-4088,-4093,
+-4093,-4031,-3866,-3721,-3926,-4177,-4376,-4545,-4671,-4827,-4897,-4880,-4807,-4723,-4662,-4664,-4718,-4771,-4774,-4757,
+-4735,-4710,-4703,-4699,-4689,-4671,-4652,-4635,-4613,-4595,-4571,-4538,-4503,-4457,-4432,-4410,-4389,-4372,-4346,-4328,
+-4304,-4282,-4257,-4224,-4188,-4150,-4111,-4078,-4045,-4008,-3960,-3887,-3799,-3707,-3629,-3573,-3503,-3436,-3346,-3265,
+-3180,-3093,-3020,-2978,-2889,-2767,-2673,-2618,-2562,-2513,-2506,-2449,-2453,-2402,-2358,-2313,-2292,-2260,-2222,-2151,
+-2108,-2070,-2041,-1999,-1948,-1902,-1844,-1791,-1742,-1689,-1648,-1602,-1566,-1512,-1463,-1416,-1370,-1318,-1260,-1208,
+-1146,-1098,-1052,-1003,-947,-892,-834,-780,-702,-648,-588,-516,-446,-385,-312,-245,-184,-122,-54,16,
+71,142,206,269,337,402,470,522,575,630,673,719,775,834,889,955,1024,1085,1143,1213,
+1274,1333,1383,1427,1464,1505,1540,1574,1606,1637,1658,1686,1701,1719,1720,1735,1757,1784,1811,1840,
+1874,1903,1936,1973,2005,2026,2053,2086,2123,2158,2203,2250,2286,2311,2329,2355,2466,2667,2804,2888,
+2955,2994,3017,3049,3109,3153,3144,3139,3147,3134,3143,3151,3153,3174,3185,3189,3134,3055,3040,3037,
+3058,3069,3104,3087,3094,3142,3176,3161,3170,3192,3196,3183,3146,3091,3056,3044,3015,2987,2944,2922,
+2906,2883,2871,2862,2854,2843,2842,2853,2865,2883,2895,2888,2837,2778,2711,2670,2653,2653,2636,2619,
+2603,2597,2607,2580,2572,2566,2561,2525,2538,2506,2451,2427,2410,2400,2386,2356,2324,2279,2261,2241,
+2214,2222,2165,2131,2098,2079,2054,2028,1990,1957,1943,1939,1931,1924,1935,1955,1980,2002,2046,2073,
+2099,2125,2149,2146,2121,2097,2066,2020,1979,1955,1938,1907,1889,1896,1881,1846,1790,1733,1684,1618,
+1553,1489,1438,1399,1374,1356,1347,1343,1327,1299,1261,1229,1211,1192,1152,1109,1077,1060,1036,1007,
+1003,993,989,954,884,820,771,748,722,697,670,663,675,684,717,749,764,773,787,770,
+755,763,774,766,783,818,797,685,619,572,530,488,452,410,380,350,328,296,274,278,
+270,251,265,271,278,277,249,211,161,122,76,23,14,-4,-18,-50,-99,-121,-112,-128,
+-146,-184,-213,-241,-278,-257,-244,-254,-273,-296,-317,-330,-331,-320,-320,-327,-293,-243,-172,-157,
+-48,99,-88,-346,-339,-259,-223,-338,-456,-560,-656,-700,-712,-757,-722,-725,-849,-925,-985,-1032,
+-1056,-1072,-1076,-1054,-1005,-1048,-1163,-1236,-1305,-1404,-1485,-1588,-1660,-1696,-1763,-1791,-1869,-1953,-2008,-2065,
+-2112,-2152,-2185,-2233,-2316,-2323,-2426,-2449,-2538,-2606,-2670,-2698,-2773,-2869,-2926,-2984,-3053,-3083,-3155,-3223,
+-3300,-3373,-3447,-3508,-3594,-3638,-3691,-3755,-3858,-3937,-4018,-4061,-4118,-4159,-4222,-4254,-4277,-4308,-4470,-4510,
+-4623,-4762,-4932,-5123,-5224,-5160,-5348,-5538,-5616,-5683,-5737,-5781,-5829,-5883,-5948,-6021,-6099,-6183,-6268,-6354,
+-6439,-6521,-6600,-6684,-6765,-6843,-6917,-6990,-7062,-7132,-7200,-7274,-7356,-7442,-7528,-7602,-7665,-7725,-7801,-7874,
+-7952,-8030,-8100,-8164,-8220,-8283,-8355,-8429,-8505,-8539,-8571,-8595,-8614,-8627,-8666,-8706,-8681,-8725,-8726,-8879,
+-8936,-8930,-8860,-8802,-8798,-8823,-8856,-8967,-8983,-8849,-8784,-8681,-8633,-8576,-8532,-8504,-8492,-8486,-8501,-8518,
+-8535,-8581,-8646,-8731,-8860,-8973,-9086,-9164,-9223,-9214,-9199,-9289,-9308,-9271,-9242,-9216,-9168,-9112,-9050,-8981,
+-8907,-8837,-8774,-8716,-8673,-8650,-8658,-8666,-8634,-8558,-8434,-8285,-8151,-8041,-7951,-7869,-7780,-7671,-7545,-7433,
+-7322,-7196,-7074,-6960,-6850,-6755,-6666,-6570,-6475,-6376,-6295,-6238,-6204,-6205,-6232,-6255,-6192,-6074,-5931,-5924,
+-5995,-6192,-6253,-6072,-5727,-5507,-5294,-5121,-5030,-4947,-4844,-4747,-4649,-4554,-4378,-4240,-4122,-3983,-3883,-3825,
+-3782,-3750,-3635,-3507,-3411,-3297,-3252,-3227,-3174,-3125,-3062,-3006,-2934,-2823,-2725,-2640,-2547,-2458,-2382,-2318,
+-2262,-2217,-2168,-2093,-1999,-1898,-1793,-1700,-1599,-1492,-1375,-1271,-1170,-1057,-942,-843,-748,-650,-539,-416,
+-282,-142,-40,19,87,106,155,242,243,275,342,434,538,658,772,887,1033,1166,1248,1350,
+1477,1551,1666,1776,1886,1994,2090,2189,2336,2425,2529,2642,2744,2845,2950,3060,3162,3264,3363,3449,
+3528,3617,3708,3712,3696,3636,3539,3471,3521,3706,4116,4545,4803,4768,4827,4891,5003,4952,5056,5096,
+5193,5258,5311,5317,5293,5152,4953,4735,4526,4298,4158,4356,4612,4798,4944,5036,5096,5161,5206,5206,
+5207,5203,5200,5199,5191,5179,5171,5157,5141,5135,5139,5143,5147,5131,5127,5126,5111,5109,5125,5155,
+5168,5186,5181,5200,5215,5205,5303,5298,5325,5345,5340,5355,5367,5375,5393,5402,5419,5435,5435,5443,
+5443,5464,5452,5417,5364,5351,5390,5342,5313,5279,5257,5243,5239,5243,5255,5284,5337,5403,5432,5434,
+5443,5447,5441,5410,5363,5303,5371,5358,5061,4765,4373,3881,3363,3083,3117,3325,3700,3979,4206,4448,
+4590,4579,4568,4551,4539,4518,4488,4476,4416,4340,4295,4255,4236,4176,4120,4064,4029,4009,4002,3983,
+3939,3893,3843,3796,3748,3700,3652,3605,3554,3498,3441,3390,3343,3303,3306,3326,3297,3220,3187,3181,
+3190,3190,3182,3141,3106,3078,3049,3011,2977,2950,2920,2925,2987,3050,3043,3035,2847,2786,2838,2937,
+2752,2649,2669,2671,2632,2639,2713,2576,2487,2459,2456,2440,2404,2351,2290,2238,2231,2270,2258,2212,
+2155,2090,2022,1984,1972,2002,2035,1952,1917,1898,1875,1848,1821,1787,1757,1750,1762,1648,1597,1577,
+1568,1551,1533,1515,1501,1488,1474,1454,1424,1430,1563,1458,1347,1325,1330,1332,1317,1297,1260,1228,
+1182,1142,1140,1195,1357,1192,1044,1016,978,963,990,1025,1015,1026,1055,1080,1088,1098,1102,1093,
+1082,1088,1058,1009,977,957,946,935,957,1031,953,985,948,952,1014,1029,995,986,989,984,
+963,948,945,945,952,950,954,944,945,954,973,991,1027,1090,1095,1114,1145,1181,1177,1169,
+1179,1159,1167,1228,1164,1141,1235,1131,1089,1072,1064,1057,1053,1031,1002,971,938,906,878,854,
+840,829,816,794,770,744,717,690,675,661,650,630,604,568,537,501,480,457,431,407,
+378,348,340,296,270,255,257,239,212,185,150,124,92,56,26,-6,-36,-67,-99,-133,
+-159,-185,-210,-222,-230,-242,-258,-275,-288,-304,-313,-328,-344,-365,-386,-402,-418,-439,-462,-484,
+-509,-536,-564,-597,-627,-655,-682,-703,-727,-754,-786,-828,-863,-898,-937,-972,-1006,-1031,-1063,-1099,
+-1133,-1167,-1208,-1249,-1288,-1322,-1363,-1404,-1447,-1496,-1556,-1602,-1650,-1691,-1729,-1766,-1814,-1863,-1910,-1959,
+-2008,-2057,-2102,-2152,-2205,-2253,-2304,-2354,-2409,-2462,-2511,-2564,-2619,-2666,-2721,-2772,-2822,-2870,-2921,-2969,
+-3017,-3072,-3126,-3177,-3228,-3272,-3314,-3353,-3389,-3423,-3457,-3498,-3535,-3570,-3600,-3631,-3662,-3699,-3736,-3775,
+-3817,-3858,-3891,-3922,-3951,-3978,-4013,-4051,-4087,-4116,-4136,-4159,-4184,-4208,-4231,-4257,-4277,-4291,-4305,-4321,
+-4329,-4331,-4336,-4339,-4330,-4342,-4356,-4362,-4336,-4330,-4360,-4355,-4323,-4313,-4324,-4322,-4316,-4294,-4274,-4252,
+-4231,-4215,-4199,-4177,-4141,-4104,-4071,-4035,-4003,-3972,-3937,-3897,-3855,-3816,-3777,-3737,-3695,-3649,-3607,-3563,
+-3521,-3482,-3439,-3369,-3311,-3360,-3261,-3126,-3157,-3119,-3084,-3038,-2989,-2935,-2874,-2806,-2754,-2711,-2699,-2642,
+-2538,-2455,-2390,-2333,-2281,-2222,-2169,-2114,-2056,-2002,-1949,-1889,-1827,-1771,-1711,-1656,-1607,-1565,-1491,-1444,
+-1390,-1355,-1319,-1276,-1223,-1184,-1141,-1096,-1053,-1017,-979,-934,-895,-861,-823,-795,-765,-745,-719,-683,
+-652,-691,-675,-621,-576,-539,-524,-517,-500,-479,-467,-465,-466,-471,-478,-506,-549,-633,-744,-799,
+-770,-662,-493,-306,-204,-245,-247,-279,-309,-275,-221,-169,-121,-101,-39,82,141,180,249,364,
+520,564,617,692,703,694,667,628,607,611,600,560,496,445,432,414,394,364,337,285,
+203,147,135,116,68,-17,-67,-74,-135,-253,-337,-401,-456,-519,-577,-624,-685,-756,-809,-850,
+-884,-938,-1010,-1092,-1188,-1297,-1414,-1536,-1664,-1795,-1927,-2035,-2116,-2185,-2273,-2351,-2412,-2478,-2532,-2592,
+-2636,-2685,-2749,-2835,-2874,-2930,-3028,-3119,-3217,-3310,-3385,-3470,-3561,-3671,-3731,-3762,-3775,-3785,-3819,-3861,
+-3876,-3876,-3872,-3881,-3906,-3854,-3774,-3690,-3623,-3586,-3575,-3570,-3561,-3508,-3513,-3579,-3731,-3931,-4060,-4100,
+-4112,-4101,-3997,-3705,-3768,-4055,-4309,-4528,-4693,-4741,-4789,-4917,-4855,-4773,-4699,-4639,-4643,-4701,-4765,-4777,
+-4757,-4724,-4691,-4674,-4661,-4647,-4627,-4609,-4590,-4570,-4546,-4515,-4496,-4456,-4413,-4399,-4400,-4381,-4371,-4355,
+-4336,-4299,-4282,-4262,-4235,-4213,-4189,-4154,-4110,-4053,-4000,-3962,-3909,-3850,-3795,-3736,-3614,-3513,-3437,-3353,
+-3284,-3225,-3137,-3069,-3001,-2910,-2816,-2720,-2647,-2614,-2532,-2527,-2493,-2450,-2417,-2368,-2341,-2288,-2267,-2222,
+-2170,-2126,-2066,-2008,-1970,-1926,-1879,-1843,-1800,-1749,-1699,-1657,-1610,-1565,-1512,-1470,-1433,-1375,-1331,-1276,
+-1249,-1197,-1137,-1082,-1036,-988,-923,-873,-814,-757,-697,-626,-555,-480,-415,-347,-276,-210,-142,-81,
+-10,57,114,172,233,295,359,418,476,535,599,650,702,758,811,867,922,985,1061,1108,
+1166,1219,1274,1326,1374,1418,1457,1490,1528,1561,1596,1616,1639,1650,1655,1673,1689,1717,1747,1771,
+1798,1833,1866,1899,1938,1975,2001,2027,2059,2090,2120,2160,2198,2228,2245,2254,2282,2444,2683,2799,
+2883,2940,2962,2984,3025,3067,3102,3121,3145,3167,3161,3155,3146,3142,3152,3172,3181,3106,3050,3059,
+3066,3065,3073,3110,3118,3112,3146,3184,3205,3206,3226,3224,3218,3191,3127,3085,3067,3031,2994,2956,
+2924,2898,2875,2866,2867,2861,2844,2834,2839,2847,2864,2882,2862,2819,2775,2728,2694,2678,2656,2643,
+2621,2619,2643,2660,2635,2592,2590,2568,2538,2554,2511,2472,2449,2426,2392,2358,2324,2301,2271,2252,
+2230,2217,2216,2162,2120,2081,2047,2024,1999,1970,1956,1959,1960,1969,1974,1983,1999,2027,2048,2076,
+2099,2126,2151,2166,2158,2126,2092,2061,2026,1982,1954,1929,1911,1899,1886,1864,1830,1777,1726,1675,
+1616,1553,1494,1448,1412,1387,1362,1348,1338,1308,1275,1247,1226,1203,1181,1136,1096,1067,1040,1002,
+1002,996,964,944,894,831,772,739,720,690,673,643,633,640,649,665,691,703,737,741,
+713,701,719,725,727,760,838,751,630,553,504,471,427,397,366,336,310,270,237,221,
+208,202,212,225,226,225,204,190,156,106,53,23,-3,-41,-79,-76,-83,-108,-145,-160,
+-192,-192,-231,-265,-286,-308,-307,-307,-302,-328,-366,-396,-387,-351,-364,-341,-319,-295,-254,-193,
+-99,-108,-108,-281,-394,-396,-306,-202,-353,-481,-598,-649,-710,-764,-789,-819,-841,-858,-914,-969,
+-1064,-1088,-1118,-1139,-1139,-1169,-1210,-1271,-1353,-1428,-1495,-1559,-1676,-1748,-1807,-1848,-1876,-1931,-1991,-2036,
+-2109,-2141,-2194,-2218,-2316,-2361,-2436,-2497,-2480,-2559,-2607,-2648,-2665,-2786,-2946,-2980,-3042,-3105,-3161,-3224,
+-3285,-3352,-3454,-3577,-3659,-3639,-3729,-3799,-3882,-3958,-4022,-4090,-4150,-4202,-4242,-4313,-4303,-4346,-4387,-4521,
+-4584,-4710,-4846,-5058,-5122,-5227,-5340,-5487,-5596,-5657,-5710,-5760,-5811,-5862,-5927,-6001,-6070,-6143,-6227,-6318,
+-6411,-6494,-6574,-6648,-6727,-6807,-6887,-6958,-7028,-7101,-7176,-7251,-7328,-7415,-7506,-7594,-7664,-7731,-7786,-7854,
+-7929,-8008,-8090,-8166,-8230,-8282,-8339,-8405,-8484,-8560,-8600,-8632,-8651,-8671,-8680,-8712,-8758,-8755,-8790,-8773,
+-8920,-8990,-9019,-8955,-8930,-8876,-8857,-8881,-8970,-9018,-9027,-8906,-8745,-8670,-8616,-8573,-8572,-8564,-8580,-8602,
+-8607,-8613,-8652,-8724,-8840,-8943,-9037,-9127,-9181,-9206,-9197,-9217,-9290,-9363,-9321,-9298,-9269,-9221,-9167,-9097,
+-9024,-8952,-8883,-8819,-8754,-8698,-8656,-8636,-8633,-8623,-8568,-8473,-8342,-8207,-8090,-7992,-7905,-7812,-7700,-7569,
+-7451,-7335,-7206,-7081,-6954,-6837,-6738,-6645,-6553,-6457,-6358,-6284,-6237,-6219,-6237,-6274,-6299,-6212,-6074,-5958,
+-5957,-6059,-6202,-6186,-5983,-5668,-5469,-5251,-5051,-4972,-4926,-4831,-4751,-4647,-4546,-4368,-4203,-4071,-3938,-3850,
+-3792,-3760,-3704,-3601,-3493,-3361,-3242,-3204,-3185,-3129,-3082,-3022,-2970,-2913,-2825,-2711,-2608,-2524,-2394,-2329,
+-2252,-2206,-2163,-2104,-2040,-1955,-1863,-1765,-1661,-1552,-1447,-1335,-1229,-1136,-1023,-902,-799,-690,-581,-458,
+-337,-201,-50,48,88,133,183,229,298,330,392,463,536,628,749,851,955,1065,1178,1278,
+1389,1511,1619,1739,1846,1922,2014,2154,2275,2391,2496,2591,2707,2812,2907,3003,3106,3211,3319,3420,
+3501,3587,3661,3751,3821,3827,3858,3809,3781,3777,3886,4166,4519,4811,4923,4965,4984,5038,5046,5060,
+5120,5240,5303,5375,5356,5360,5275,5041,4758,4565,4403,4214,4296,4558,4774,4951,5062,5135,5189,5232,
+5257,5279,5286,5286,5281,5265,5253,5234,5226,5210,5201,5192,5191,5202,5194,5204,5187,5170,5175,5185,
+5204,5218,5232,5241,5231,5246,5272,5308,5346,5361,5375,5387,5401,5410,5421,5439,5456,5461,5471,5487,
+5488,5486,5488,5486,5442,5356,5391,5381,5340,5308,5275,5249,5235,5247,5225,5246,5281,5338,5414,5405,
+5418,5433,5420,5386,5323,5240,5198,5166,4923,4575,4230,3846,3430,3122,3119,3422,3662,3955,4204,4406,
+4666,4683,4677,4628,4604,4584,4555,4512,4462,4409,4343,4300,4271,4230,4177,4132,4090,4066,4047,4036,
+4006,3960,3920,3874,3827,3786,3745,3708,3664,3615,3559,3488,3426,3394,3402,3499,3673,3606,3327,3242,
+3277,3281,3245,3227,3184,3148,3118,3090,3048,3006,2965,2935,2924,2941,2971,2980,2955,2853,2816,2882,
+3005,2781,2660,2624,2598,2571,2597,2728,2636,2527,2495,2483,2475,2455,2408,2336,2243,2201,2172,2169,
+2161,2142,2102,2075,2055,2041,2068,2138,2022,1974,1949,1920,1894,1865,1829,1791,1754,1722,1719,1661,
+1630,1623,1603,1587,1571,1559,1548,1526,1491,1451,1431,1461,1441,1365,1345,1378,1382,1337,1315,1282,
+1254,1213,1173,1153,1188,1247,1153,1038,1046,1027,965,986,1004,1010,1025,1066,1079,1098,1116,1127,
+1124,1130,1079,1060,1036,1012,987,975,962,967,990,979,1064,980,954,978,1013,1011,1006,1009,
+1000,977,963,950,965,977,1005,1012,970,974,992,1011,1042,1064,1087,1117,1136,1157,1176,1202,
+1190,1184,1196,1184,1192,1205,1181,1172,1195,1170,1110,1086,1076,1073,1059,1034,1008,974,941,904,
+883,865,854,839,820,790,749,720,708,695,694,688,667,650,613,579,543,538,494,454,
+424,401,381,397,360,300,285,286,268,246,216,185,162,125,95,73,44,15,-15,-49,
+-79,-105,-135,-164,-186,-198,-209,-223,-236,-251,-269,-296,-308,-329,-354,-373,-393,-412,-428,-446,
+-466,-485,-512,-536,-567,-593,-621,-648,-672,-701,-728,-758,-795,-831,-867,-907,-950,-977,-1002,-1036,
+-1080,-1122,-1156,-1191,-1228,-1265,-1306,-1347,-1390,-1432,-1478,-1526,-1574,-1621,-1665,-1713,-1758,-1804,-1848,-1895,
+-1942,-1994,-2046,-2093,-2140,-2186,-2234,-2281,-2329,-2387,-2435,-2486,-2533,-2584,-2636,-2688,-2747,-2802,-2846,-2891,
+-2935,-2983,-3036,-3092,-3145,-3193,-3240,-3280,-3318,-3350,-3384,-3422,-3463,-3505,-3539,-3575,-3609,-3640,-3678,-3718,
+-3750,-3790,-3832,-3871,-3900,-3920,-3944,-3974,-4006,-4041,-4072,-4101,-4129,-4162,-4189,-4208,-4235,-4252,-4260,-4274,
+-4286,-4293,-4303,-4311,-4316,-4315,-4315,-4319,-4324,-4324,-4320,-4325,-4318,-4302,-4302,-4306,-4311,-4294,-4273,-4255,
+-4238,-4216,-4196,-4181,-4154,-4116,-4083,-4052,-4021,-3994,-3974,-3937,-3891,-3841,-3800,-3761,-3722,-3685,-3645,-3610,
+-3564,-3521,-3473,-3426,-3358,-3292,-3302,-3344,-3210,-3103,-3092,-3065,-3026,-2971,-2914,-2860,-2793,-2723,-2672,-2617,
+-2570,-2529,-2487,-2429,-2364,-2292,-2228,-2168,-2112,-2054,-1997,-1943,-1885,-1818,-1772,-1688,-1653,-1595,-1546,-1487,
+-1442,-1398,-1365,-1320,-1265,-1218,-1176,-1135,-1099,-1060,-1010,-958,-920,-882,-848,-820,-795,-772,-744,-712,
+-686,-705,-702,-656,-611,-575,-541,-523,-505,-481,-456,-435,-419,-404,-391,-383,-379,-410,-441,-484,
+-560,-639,-691,-682,-603,-497,-458,-396,-311,-292,-219,-184,-150,-137,-169,-194,-157,-70,63,175,
+283,409,482,590,668,726,716,702,697,683,678,667,621,548,494,478,459,442,415,386,
+295,228,174,161,114,52,8,-33,-84,-161,-209,-275,-343,-393,-409,-467,-541,-607,-672,-726,
+-763,-799,-859,-938,-1023,-1130,-1249,-1381,-1520,-1659,-1798,-1940,-2067,-2160,-2228,-2301,-2353,-2411,-2474,-2527,
+-2563,-2583,-2600,-2632,-2687,-2658,-2657,-2743,-2827,-2966,-3084,-3175,-3276,-3387,-3510,-3614,-3659,-3731,-3795,-3854,
+-3908,-3945,-3969,-3979,-3993,-4005,-3963,-3867,-3753,-3649,-3585,-3555,-3535,-3523,-3482,-3472,-3584,-3771,-3980,-4077,
+-4118,-4135,-4102,-3974,-3679,-3823,-4158,-4408,-4649,-4819,-4847,-4826,-4898,-4810,-4703,-4629,-4585,-4592,-4658,-4717,
+-4732,-4721,-4694,-4662,-4638,-4619,-4599,-4577,-4562,-4545,-4523,-4496,-4467,-4453,-4445,-4439,-4425,-4410,-4398,-4391,
+-4368,-4350,-4331,-4309,-4283,-4257,-4230,-4195,-4152,-4122,-4079,-4044,-3998,-3937,-3864,-3797,-3747,-3660,-3592,-3527,
+-3449,-3353,-3265,-3193,-3114,-3025,-2945,-2865,-2762,-2678,-2664,-2552,-2532,-2510,-2473,-2427,-2384,-2340,-2316,-2282,
+-2254,-2211,-2162,-2103,-2047,-2000,-1963,-1916,-1851,-1786,-1733,-1710,-1664,-1631,-1591,-1539,-1493,-1446,-1401,-1349,
+-1316,-1274,-1219,-1179,-1113,-1055,-1012,-949,-905,-857,-789,-725,-642,-570,-506,-446,-381,-320,-259,-196,
+-125,-48,14,72,142,204,266,327,384,438,490,555,617,675,729,790,849,910,973,1040,
+1086,1133,1179,1218,1267,1310,1361,1403,1439,1479,1514,1549,1588,1602,1618,1632,1639,1657,1681,1707,
+1734,1762,1794,1826,1864,1902,1941,1968,1991,2026,2057,2083,2114,2148,2172,2185,2199,2234,2438,2687,
+2795,2877,2914,2922,2946,2976,3017,3044,3077,3116,3146,3145,3121,3105,3110,3130,3167,3137,3059,3069,
+3107,3113,3085,3094,3112,3147,3140,3176,3192,3211,3226,3241,3250,3244,3212,3154,3118,3086,3042,3003,
+2970,2939,2914,2891,2887,2891,2880,2855,2833,2831,2828,2840,2860,2843,2814,2779,2744,2717,2693,2663,
+2652,2637,2641,2647,2663,2652,2615,2602,2575,2554,2538,2512,2483,2457,2425,2392,2354,2314,2286,2276,
+2250,2221,2216,2219,2165,2097,2054,2015,1986,1973,1959,1954,1974,1988,2005,2014,2015,2032,2062,2087,
+2116,2137,2161,2182,2182,2160,2126,2094,2066,2033,1996,1963,1937,1917,1896,1874,1844,1807,1758,1711,
+1661,1606,1552,1500,1470,1442,1402,1367,1341,1323,1298,1278,1248,1223,1190,1159,1124,1081,1055,1013,
+979,977,945,902,875,834,797,756,726,684,651,629,609,605,611,628,632,637,652,677,
+673,652,653,666,677,694,699,691,649,573,505,451,401,360,323,304,278,253,223,197,
+194,175,153,167,177,162,139,114,101,82,41,7,-6,-36,-52,-124,-135,-171,-188,-201,
+-208,-215,-226,-237,-253,-296,-320,-337,-353,-367,-402,-445,-463,-430,-412,-396,-379,-348,-296,-231,
+-131,-124,-280,-356,-413,-420,-366,-311,-238,-406,-534,-671,-678,-727,-787,-813,-857,-884,-877,-942,
+-1014,-1087,-1122,-1160,-1202,-1243,-1282,-1323,-1391,-1430,-1481,-1565,-1664,-1734,-1789,-1842,-1883,-1909,-1956,-1990,
+-2073,-2142,-2171,-2229,-2331,-2359,-2397,-2461,-2512,-2568,-2624,-2683,-2706,-2758,-2859,-2983,-3049,-3136,-3216,-3259,
+-3309,-3382,-3484,-3561,-3558,-3583,-3586,-3772,-3909,-4005,-4051,-4059,-4170,-4228,-4262,-4331,-4379,-4394,-4425,-4462,
+-4562,-4601,-4747,-5002,-5128,-5135,-5256,-5351,-5518,-5613,-5676,-5727,-5784,-5842,-5909,-5985,-6057,-6118,-6183,-6266,
+-6364,-6457,-6537,-6611,-6685,-6766,-6845,-6923,-6999,-7074,-7150,-7226,-7304,-7384,-7469,-7556,-7644,-7721,-7782,-7841,
+-7913,-7983,-8065,-8146,-8221,-8279,-8335,-8396,-8458,-8538,-8617,-8656,-8692,-8715,-8725,-8732,-8731,-8796,-8839,-8850,
+-8802,-8892,-9030,-9076,-9088,-9057,-8996,-8922,-8925,-8974,-9012,-9055,-8987,-8789,-8701,-8667,-8636,-8642,-8676,-8706,
+-8733,-8722,-8752,-8805,-8862,-8935,-8998,-9109,-9169,-9199,-9191,-9215,-9245,-9371,-9439,-9386,-9359,-9322,-9270,-9216,
+-9147,-9069,-8997,-8933,-8867,-8801,-8734,-8679,-8638,-8622,-8614,-8573,-8499,-8382,-8252,-8137,-8035,-7937,-7836,-7719,
+-7595,-7465,-7343,-7202,-7064,-6939,-6823,-6724,-6630,-6534,-6435,-6341,-6277,-6244,-6239,-6270,-6321,-6339,-6253,-6088,
+-6001,-5993,-6103,-6201,-6167,-5903,-5631,-5372,-5174,-5000,-4946,-4917,-4819,-4735,-4643,-4555,-4377,-4191,-4027,-3906,
+-3826,-3765,-3728,-3666,-3567,-3450,-3342,-3191,-3157,-3130,-3085,-3035,-2984,-2924,-2857,-2781,-2664,-2571,-2491,-2394,
+-2243,-2184,-2135,-2102,-2047,-1980,-1910,-1830,-1721,-1630,-1518,-1397,-1288,-1190,-1093,-972,-857,-732,-617,-495,
+-374,-256,-139,-7,91,184,285,289,307,371,410,479,535,603,694,812,923,1026,1122,1244,
+1363,1475,1585,1692,1803,1897,1985,2126,2253,2361,2464,2582,2676,2774,2887,2948,3061,3147,3256,3372,
+3476,3571,3664,3755,3859,3950,3978,3985,4044,4129,4264,4358,4483,4664,4900,5039,5059,5040,5116,5188,
+5168,5180,5228,5307,5381,5431,5498,5478,5383,5173,5012,4751,4444,4307,4516,4743,4944,5078,5169,5240,
+5286,5331,5357,5366,5363,5359,5339,5324,5314,5299,5289,5275,5264,5259,5260,5255,5259,5242,5231,5228,
+5234,5248,5256,5278,5289,5278,5275,5317,5357,5403,5405,5427,5432,5441,5449,5459,5477,5498,5509,5536,
+5542,5537,5526,5537,5516,5444,5357,5405,5388,5338,5307,5263,5245,5204,5209,5236,5263,5293,5317,5326,
+5361,5370,5383,5354,5298,5200,5063,5055,4825,4348,3961,3671,3405,3216,3189,3352,3680,3983,4244,4435,
+4604,4721,4800,4678,4649,4641,4617,4582,4543,4495,4431,4367,4312,4261,4228,4188,4145,4121,4107,4092,
+4066,4023,3978,3939,3901,3861,3822,3794,3763,3726,3677,3619,3545,3486,3462,3527,3761,3810,3687,3386,
+3293,3413,3370,3280,3264,3234,3193,3170,3148,3096,3038,2988,2946,2922,2925,2944,2920,2876,2833,2823,
+2872,2891,2760,2687,2645,2612,2585,2595,2665,2676,2564,2525,2513,2502,2495,2465,2396,2298,2227,2167,
+2150,2159,2199,2208,2170,2157,2128,2111,2170,2086,2034,2029,1979,1940,1915,1877,1839,1799,1769,1734,
+1705,1693,1674,1658,1645,1631,1618,1600,1569,1525,1481,1451,1467,1481,1384,1363,1372,1374,1346,1326,
+1303,1272,1245,1211,1183,1169,1145,1105,1046,1025,992,1025,1083,1078,1042,1028,1057,1067,1095,1125,
+1139,1121,1103,1094,1077,1056,1044,1026,1012,999,990,988,1000,1028,999,978,1000,1042,1067,1053,
+1041,1027,1006,991,991,997,996,1027,1025,1026,1016,1030,1050,1072,1096,1106,1116,1157,1238,1195,
+1193,1196,1200,1194,1207,1179,1180,1180,1169,1161,1155,1118,1108,1094,1084,1079,1065,1043,1011,978,
+945,914,887,858,839,824,802,787,774,800,744,727,709,686,660,636,629,589,554,527,
+489,458,436,422,407,374,335,326,316,298,281,252,228,194,159,132,107,90,61,34,
+3,-23,-52,-82,-112,-144,-169,-179,-192,-200,-210,-229,-249,-274,-299,-322,-334,-350,-371,-390,
+-416,-441,-466,-493,-524,-538,-568,-585,-607,-635,-664,-695,-728,-762,-793,-842,-892,-906,-952,-980,
+-1020,-1053,-1093,-1131,-1174,-1212,-1244,-1280,-1317,-1362,-1406,-1452,-1501,-1549,-1595,-1640,-1689,-1739,-1787,-1834,
+-1884,-1928,-1988,-2041,-2091,-2135,-2174,-2215,-2260,-2304,-2353,-2405,-2448,-2496,-2546,-2597,-2652,-2708,-2761,-2813,
+-2860,-2903,-2948,-3000,-3055,-3107,-3158,-3200,-3244,-3281,-3312,-3352,-3390,-3429,-3469,-3503,-3544,-3579,-3613,-3649,
+-3690,-3729,-3772,-3812,-3853,-3874,-3896,-3920,-3944,-3972,-4006,-4038,-4068,-4098,-4122,-4146,-4178,-4200,-4219,-4234,
+-4245,-4252,-4259,-4270,-4284,-4296,-4296,-4291,-4294,-4296,-4296,-4297,-4293,-4281,-4276,-4273,-4278,-4274,-4259,-4242,
+-4224,-4212,-4189,-4173,-4159,-4130,-4094,-4065,-4042,-4015,-3990,-3961,-3924,-3882,-3840,-3795,-3752,-3712,-3673,-3631,
+-3593,-3557,-3514,-3467,-3416,-3350,-3308,-3274,-3167,-3277,-3140,-3079,-3047,-3000,-2934,-2894,-2865,-2810,-2751,-2679,
+-2620,-2556,-2497,-2446,-2400,-2335,-2283,-2220,-2159,-2105,-2048,-1993,-1937,-1883,-1817,-1767,-1712,-1652,-1599,-1535,
+-1484,-1457,-1413,-1362,-1306,-1260,-1216,-1175,-1135,-1087,-1046,-993,-951,-921,-889,-853,-825,-804,-774,-745,
+-729,-747,-724,-689,-649,-611,-580,-549,-524,-498,-469,-441,-410,-387,-363,-345,-323,-320,-316,-304,
+-324,-347,-383,-452,-541,-618,-647,-634,-572,-494,-405,-274,-152,-46,-46,-109,-197,-234,-220,-107,
+67,231,351,431,497,596,673,695,700,739,742,737,718,670,598,543,521,505,491,479,
+427,336,281,242,253,140,92,100,55,-45,-113,-136,-186,-250,-293,-313,-388,-475,-544,-599,
+-649,-687,-724,-786,-879,-981,-1095,-1227,-1375,-1527,-1677,-1827,-1972,-2112,-2224,-2290,-2329,-2357,-2369,-2343,
+-2372,-2366,-2371,-2388,-2410,-2391,-2315,-2377,-2487,-2564,-2718,-2916,-3020,-3115,-3245,-3384,-3512,-3584,-3715,-3826,
+-3895,-3928,-3953,-4011,-4075,-4106,-4101,-4055,-3964,-3851,-3728,-3620,-3564,-3524,-3498,-3446,-3442,-3611,-3862,-4007,
+-4090,-4132,-4133,-4066,-3835,-3662,-3965,-4265,-4511,-4763,-4925,-4949,-4968,-4940,-4827,-4669,-4554,-4512,-4528,-4602,
+-4691,-4710,-4694,-4668,-4643,-4622,-4606,-4578,-4551,-4528,-4502,-4479,-4459,-4445,-4440,-4436,-4430,-4426,-4418,-4412,
+-4399,-4384,-4369,-4351,-4331,-4307,-4283,-4260,-4228,-4193,-4150,-4099,-4051,-4002,-3953,-3913,-3867,-3809,-3716,-3628,
+-3545,-3481,-3409,-3340,-3275,-3199,-3121,-3039,-2956,-2856,-2804,-2686,-2582,-2549,-2524,-2493,-2445,-2397,-2364,-2330,
+-2275,-2247,-2203,-2169,-2119,-2079,-2036,-1995,-1948,-1911,-1852,-1804,-1758,-1694,-1659,-1624,-1578,-1525,-1479,-1440,
+-1395,-1345,-1276,-1233,-1182,-1120,-1078,-1033,-995,-937,-870,-810,-744,-676,-602,-523,-467,-417,-345,-262,
+-205,-147,-79,-15,43,102,166,228,298,363,418,474,531,591,647,701,760,817,878,940,
+999,1057,1112,1164,1209,1243,1277,1312,1349,1389,1428,1464,1503,1539,1557,1568,1587,1604,1623,1651,
+1680,1707,1738,1775,1809,1849,1885,1917,1943,1963,1991,2020,2042,2069,2095,2116,2136,2148,2198,2421,
+2665,2765,2847,2875,2896,2928,2948,2969,2967,2987,3056,3098,3089,3062,3058,3078,3124,3157,3082,3053,
+3102,3139,3140,3129,3134,3138,3175,3178,3224,3232,3245,3265,3247,3238,3246,3221,3171,3139,3103,3055,
+3012,2979,2938,2913,2894,2900,2910,2900,2871,2843,2832,2826,2838,2849,2835,2812,2784,2753,2730,2693,
+2663,2656,2636,2642,2641,2633,2628,2607,2588,2551,2538,2524,2495,2472,2444,2416,2399,2364,2308,2269,
+2269,2233,2209,2220,2237,2162,2089,2030,1994,1987,1974,1969,1966,1988,2019,2048,2053,2051,2060,2090,
+2122,2156,2174,2197,2214,2206,2176,2140,2105,2080,2052,2018,1983,1950,1919,1893,1862,1825,1789,1746,
+1703,1650,1600,1552,1507,1483,1461,1420,1379,1335,1304,1299,1284,1253,1218,1184,1148,1105,1084,1040,
+1003,978,937,894,858,827,814,798,752,693,652,619,592,572,569,586,604,598,582,589,
+597,599,583,587,580,614,632,592,551,537,492,437,376,323,295,254,240,211,187,164,
+145,139,128,109,120,109,91,83,55,35,28,-1,-27,-39,-43,-71,-117,-154,-207,-254,
+-270,-279,-269,-274,-282,-304,-345,-369,-390,-411,-435,-463,-501,-483,-449,-440,-436,-424,-390,-273,
+-210,-191,-235,-329,-393,-435,-378,-311,-315,-310,-452,-602,-702,-735,-752,-771,-810,-848,-889,-904,
+-941,-986,-1074,-1129,-1193,-1265,-1317,-1354,-1405,-1459,-1509,-1587,-1656,-1720,-1767,-1817,-1862,-1909,-1937,-2018,
+-2048,-2135,-2163,-2206,-2269,-2323,-2344,-2456,-2503,-2560,-2642,-2704,-2739,-2778,-2849,-2894,-2974,-3086,-3164,-3269,
+-3348,-3411,-3539,-3620,-3564,-3458,-3522,-3470,-3605,-3797,-3997,-4072,-4168,-4261,-4305,-4334,-4393,-4444,-4474,-4469,
+-4541,-4607,-4668,-4818,-5078,-5162,-5188,-5299,-5405,-5504,-5601,-5678,-5734,-5800,-5877,-5960,-6032,-6107,-6160,-6226,
+-6310,-6404,-6497,-6577,-6650,-6725,-6805,-6887,-6963,-7042,-7121,-7199,-7277,-7354,-7435,-7513,-7600,-7687,-7760,-7825,
+-7889,-7963,-8039,-8121,-8201,-8270,-8328,-8391,-8451,-8522,-8598,-8674,-8721,-8760,-8784,-8781,-8782,-8779,-8801,-8871,
+-8922,-8931,-8967,-9079,-9144,-9158,-9149,-9097,-9010,-8977,-8987,-8992,-8993,-8927,-8770,-8733,-8719,-8726,-8740,-8783,
+-8810,-8850,-8845,-8907,-8976,-9007,-9011,-9091,-9162,-9195,-9214,-9222,-9264,-9305,-9495,-9517,-9459,-9428,-9380,-9325,
+-9268,-9194,-9116,-9046,-8979,-8913,-8845,-8777,-8714,-8661,-8632,-8614,-8582,-8523,-8419,-8290,-8179,-8070,-7958,-7845,
+-7731,-7610,-7474,-7345,-7198,-7058,-6938,-6833,-6730,-6631,-6529,-6434,-6341,-6278,-6251,-6255,-6298,-6357,-6366,-6282,
+-6131,-6040,-6038,-6113,-6196,-6098,-5767,-5570,-5335,-5115,-4968,-4935,-4878,-4774,-4718,-4642,-4552,-4371,-4174,-4013,
+-3881,-3802,-3746,-3684,-3621,-3526,-3425,-3311,-3179,-3104,-3069,-3029,-2984,-2929,-2860,-2798,-2720,-2620,-2527,-2439,
+-2344,-2245,-2122,-2021,-2022,-1989,-1932,-1854,-1779,-1683,-1590,-1467,-1342,-1231,-1137,-1042,-925,-817,-681,-554,
+-385,-257,-160,-62,79,206,288,285,325,386,447,481,520,564,646,769,878,996,1097,1217,
+1332,1436,1552,1662,1761,1847,1946,2087,2214,2340,2455,2566,2657,2758,2849,2932,3005,3104,3196,3304,
+3423,3543,3656,3749,3820,3922,4066,4135,4107,4244,4438,4582,4647,4696,4805,4932,5075,5150,5127,5213,
+5251,5338,5314,5295,5374,5451,5567,5606,5656,5659,5557,5481,5273,4835,4489,4457,4694,4915,5081,5191,
+5281,5348,5395,5427,5434,5429,5427,5412,5397,5385,5374,5362,5349,5333,5323,5310,5323,5315,5297,5289,
+5282,5285,5297,5310,5325,5328,5335,5308,5328,5420,5453,5475,5476,5474,5482,5479,5499,5520,5541,5560,
+5564,5557,5553,5550,5558,5526,5475,5428,5422,5406,5335,5282,5220,5184,5173,5161,5153,5070,5103,5171,
+5239,5271,5290,5285,5231,5142,4989,4799,4630,4308,3795,3534,3401,3308,3386,3506,3704,3986,4261,4511,
+4584,4664,4817,4850,4699,4668,4658,4634,4598,4581,4573,4455,4396,4338,4277,4232,4196,4163,4146,4135,
+4116,4079,4030,3988,3949,3917,3884,3854,3836,3809,3774,3726,3660,3589,3535,3521,3623,3703,3601,3476,
+3362,3307,3312,3304,3306,3382,3356,3255,3269,3250,3153,3079,3008,2958,2921,2926,2983,2917,2855,2831,
+2837,2832,2803,2760,2724,2690,2661,2635,2633,2656,2706,2617,2571,2545,2534,2556,2540,2479,2385,2285,
+2224,2201,2211,2258,2305,2261,2293,2253,2165,2168,2129,2154,2135,2051,1995,1954,1926,1894,1855,1818,
+1787,1761,1749,1748,1764,1709,1682,1664,1639,1603,1559,1519,1477,1444,1414,1393,1393,1387,1377,1358,
+1340,1313,1298,1270,1251,1223,1196,1159,1108,1087,1031,1001,1033,1074,1145,1092,1020,1026,1058,1091,
+1117,1143,1144,1131,1115,1091,1078,1080,1064,1052,1029,1018,1019,1025,1033,1035,1026,1033,1055,1094,
+1110,1083,1053,1054,1050,1031,1041,1054,1045,1068,1067,1052,1058,1074,1118,1127,1131,1148,1162,1188,
+1206,1203,1203,1244,1195,1195,1186,1184,1189,1186,1168,1150,1131,1125,1113,1093,1087,1078,1061,1034,
+999,965,938,915,887,864,849,824,805,788,788,766,752,735,710,695,677,639,605,565,
+539,516,496,481,466,444,409,385,373,358,339,308,288,260,231,205,181,156,135,105,
+79,48,21,-1,-31,-65,-99,-133,-143,-155,-162,-174,-188,-207,-239,-262,-283,-299,-314,-337,
+-360,-393,-419,-444,-469,-495,-517,-545,-577,-591,-617,-655,-676,-699,-740,-777,-816,-834,-862,-899,
+-936,-978,-1015,-1062,-1110,-1144,-1182,-1216,-1256,-1293,-1333,-1370,-1409,-1465,-1523,-1572,-1618,-1672,-1726,-1775,
+-1817,-1859,-1912,-1968,-2026,-2080,-2123,-2161,-2199,-2239,-2278,-2327,-2375,-2421,-2467,-2512,-2561,-2613,-2661,-2709,
+-2767,-2819,-2864,-2912,-2961,-3020,-3072,-3120,-3166,-3210,-3243,-3281,-3319,-3358,-3396,-3438,-3473,-3511,-3542,-3582,
+-3617,-3657,-3699,-3749,-3785,-3825,-3850,-3875,-3897,-3921,-3951,-3983,-4008,-4034,-4061,-4086,-4112,-4138,-4159,-4175,
+-4193,-4205,-4214,-4225,-4237,-4248,-4260,-4264,-4268,-4278,-4278,-4280,-4278,-4270,-4259,-4247,-4243,-4241,-4234,-4220,
+-4200,-4180,-4171,-4151,-4141,-4123,-4101,-4068,-4041,-4021,-4000,-3967,-3925,-3882,-3848,-3816,-3783,-3749,-3715,-3667,
+-3618,-3576,-3535,-3493,-3453,-3410,-3347,-3293,-3269,-3184,-3137,-3140,-3073,-3038,-2984,-2931,-2853,-2827,-2800,-2741,
+-2659,-2595,-2552,-2495,-2435,-2375,-2326,-2270,-2214,-2154,-2101,-2042,-1988,-1933,-1879,-1815,-1765,-1703,-1641,-1591,
+-1539,-1494,-1456,-1400,-1349,-1311,-1263,-1217,-1174,-1132,-1084,-1040,-998,-964,-932,-896,-867,-838,-807,-772,
+-770,-784,-759,-721,-679,-651,-622,-586,-553,-519,-487,-462,-429,-394,-365,-340,-307,-299,-267,-243,
+-228,-223,-215,-227,-246,-289,-356,-451,-546,-602,-584,-501,-427,-318,-183,-58,-66,-151,-192,-193,
+-171,-87,85,241,362,419,514,621,687,750,768,784,767,753,716,647,591,562,548,542,
+525,460,387,357,333,338,264,200,127,45,-23,-54,-74,-110,-168,-230,-263,-342,-428,-485,
+-527,-569,-614,-668,-731,-806,-918,-1043,-1188,-1348,-1513,-1679,-1843,-2000,-2148,-2261,-2314,-2327,-2293,-2170,
+-2083,-2011,-2000,-2058,-2138,-2180,-2144,-2110,-2184,-2320,-2430,-2489,-2703,-2861,-2839,-2936,-3114,-3215,-3317,-3460,
+-3632,-3731,-3842,-3871,-3958,-4051,-4101,-4096,-4061,-3992,-3893,-3790,-3672,-3586,-3533,-3491,-3409,-3418,-3682,-3895,
+-4008,-4084,-4123,-4090,-3973,-3685,-3769,-4086,-4357,-4611,-4861,-4994,-4985,-5025,-4997,-4862,-4686,-4562,-4493,-4499,
+-4574,-4691,-4733,-4718,-4687,-4658,-4632,-4609,-4583,-4560,-4533,-4501,-4477,-4451,-4429,-4413,-4409,-4405,-4404,-4409,
+-4403,-4394,-4387,-4373,-4356,-4333,-4312,-4287,-4262,-4230,-4195,-4161,-4122,-4091,-4040,-3978,-3930,-3872,-3811,-3750,
+-3697,-3635,-3553,-3472,-3386,-3296,-3211,-3120,-3042,-2968,-2879,-2797,-2716,-2617,-2582,-2602,-2516,-2475,-2432,-2387,
+-2353,-2306,-2265,-2199,-2170,-2122,-2089,-2044,-1984,-1932,-1902,-1843,-1788,-1743,-1689,-1650,-1611,-1572,-1527,-1463,
+-1401,-1353,-1317,-1276,-1231,-1172,-1124,-1070,-1021,-963,-894,-838,-792,-734,-680,-622,-556,-486,-414,-353,
+-290,-222,-166,-108,-44,20,79,149,213,272,328,384,445,510,572,630,685,739,795,852,
+906,963,1021,1076,1130,1182,1226,1275,1316,1352,1376,1400,1425,1450,1484,1506,1522,1543,1568,1591,
+1618,1650,1681,1717,1748,1784,1827,1869,1902,1926,1945,1968,1989,2006,2028,2056,2080,2099,2109,2167,
+2359,2598,2724,2801,2844,2877,2899,2905,2905,2907,2914,2983,3028,3026,3020,3029,3063,3118,3118,3063,
+3072,3117,3173,3200,3189,3181,3174,3188,3219,3255,3255,3276,3296,3266,3231,3239,3228,3182,3139,3097,
+3054,3016,2983,2947,2923,2902,2901,2919,2914,2895,2862,2849,2852,2863,2857,2832,2802,2790,2772,2734,
+2691,2665,2638,2637,2641,2633,2623,2615,2585,2567,2537,2524,2504,2470,2444,2430,2411,2396,2363,2314,
+2270,2254,2215,2233,2250,2234,2150,2081,2021,1983,1992,1988,1982,1987,2022,2061,2084,2092,2079,2090,
+2118,2143,2169,2191,2215,2230,2219,2194,2158,2128,2103,2077,2044,2005,1964,1924,1889,1859,1826,1791,
+1750,1706,1660,1609,1557,1519,1502,1474,1427,1392,1371,1328,1298,1284,1258,1221,1201,1157,1115,1086,
+1040,1014,951,898,859,823,798,814,799,747,675,621,581,549,539,543,557,557,540,530,
+531,534,520,507,491,507,534,515,471,453,448,407,351,299,255,222,192,181,145,109,
+90,73,81,88,77,63,49,32,36,20,10,-2,-30,-64,-88,-92,-106,-136,-171,-187,
+-268,-338,-355,-320,-324,-334,-362,-388,-408,-423,-446,-467,-492,-509,-486,-476,-441,-409,-463,-392,
+-288,-230,-257,-219,-262,-352,-444,-381,-308,-264,-380,-507,-639,-708,-752,-786,-796,-837,-886,-914,
+-962,-989,-1022,-1064,-1148,-1233,-1329,-1399,-1442,-1495,-1547,-1595,-1648,-1705,-1748,-1800,-1853,-1917,-1987,-2010,
+-2061,-2089,-2131,-2209,-2263,-2307,-2364,-2436,-2514,-2554,-2617,-2693,-2737,-2765,-2826,-2919,-2979,-3107,-3233,-3270,
+-3288,-3380,-3451,-3574,-3656,-3683,-3660,-3669,-3720,-3854,-4022,-4127,-4194,-4219,-4291,-4340,-4405,-4439,-4475,-4503,
+-4555,-4607,-4656,-4741,-4967,-5170,-5222,-5273,-5353,-5445,-5520,-5606,-5671,-5738,-5818,-5908,-5998,-6071,-6137,-6194,
+-6263,-6346,-6436,-6530,-6615,-6692,-6769,-6847,-6928,-7006,-7083,-7164,-7243,-7325,-7402,-7481,-7560,-7646,-7732,-7808,
+-7873,-7939,-8008,-8086,-8167,-8247,-8311,-8378,-8443,-8514,-8585,-8660,-8727,-8787,-8821,-8844,-8851,-8847,-8837,-8846,
+-8905,-8983,-9032,-9086,-9143,-9191,-9225,-9225,-9179,-9104,-9036,-9028,-8996,-9012,-8939,-8824,-8782,-8785,-8790,-8816,
+-8845,-8878,-8945,-8998,-9056,-9100,-9112,-9133,-9162,-9183,-9208,-9205,-9252,-9343,-9490,-9634,-9579,-9530,-9493,-9444,
+-9387,-9320,-9246,-9168,-9095,-9025,-8965,-8898,-8828,-8758,-8697,-8660,-8630,-8603,-8543,-8437,-8314,-8203,-8091,-7971,
+-7852,-7738,-7620,-7483,-7347,-7204,-7069,-6948,-6840,-6740,-6637,-6523,-6422,-6339,-6285,-6267,-6281,-6325,-6383,-6381,
+-6278,-6132,-6050,-6086,-6155,-6139,-5958,-5673,-5480,-5246,-5064,-4939,-4899,-4854,-4749,-4704,-4624,-4519,-4333,-4128,
+-3979,-3839,-3770,-3708,-3626,-3558,-3477,-3379,-3275,-3152,-3048,-3022,-2969,-2927,-2871,-2805,-2747,-2658,-2567,-2465,
+-2385,-2295,-2204,-2060,-1988,-1948,-1918,-1862,-1766,-1696,-1622,-1526,-1408,-1286,-1179,-1087,-988,-874,-773,-679,
+-533,-297,-139,-26,47,193,340,402,351,378,462,517,536,565,606,688,811,927,1039,1158,
+1290,1400,1512,1607,1719,1799,1892,2053,2172,2285,2405,2515,2630,2732,2830,2917,3003,3068,3190,3292,
+3388,3492,3600,3715,3807,3862,3951,4111,4226,4268,4461,4654,4756,4821,4862,4916,5022,5122,5196,5213,
+5312,5299,5333,5417,5407,5499,5590,5700,5709,5782,5891,5859,5805,5685,5329,4802,4516,4642,4878,5063,
+5200,5301,5385,5440,5480,5496,5498,5499,5491,5467,5453,5443,5433,5418,5403,5393,5381,5376,5371,5355,
+5337,5332,5332,5347,5362,5368,5375,5391,5372,5420,5406,5492,5527,5523,5520,5518,5525,5547,5558,5567,
+5583,5578,5587,5582,5590,5587,5571,5501,5449,5424,5385,5328,5267,5165,5097,5033,4942,4833,4855,4935,
+5006,5099,5134,5133,5112,5063,4930,4677,4377,3947,3675,3442,3382,3415,3522,3707,3871,4064,4385,4521,
+4585,4655,4767,4793,4771,4705,4691,4669,4641,4600,4561,4514,4462,4410,4355,4298,4254,4216,4191,4168,
+4144,4119,4075,4031,3990,3958,3931,3908,3887,3870,3847,3817,3766,3697,3625,3570,3558,3740,3762,3543,
+3434,3362,3325,3320,3311,3336,3450,3424,3282,3302,3307,3217,3122,3032,2968,2924,2936,3019,2982,2887,
+2880,2972,2858,2801,2778,2766,2766,2748,2709,2733,2753,2851,2745,2656,2602,2579,2625,2705,2588,2538,
+2415,2330,2273,2289,2288,2289,2339,2503,2442,2219,2130,2176,2326,2300,2132,2045,2000,1973,1944,1906,
+1868,1840,1808,1796,1812,1859,1755,1720,1699,1672,1634,1596,1552,1499,1460,1441,1424,1421,1415,1409,
+1384,1369,1345,1323,1308,1286,1265,1233,1199,1173,1117,1053,1073,1063,1055,1062,1042,1020,1021,1047,
+1095,1137,1159,1161,1144,1123,1100,1093,1103,1089,1080,1064,1051,1045,1050,1047,1065,1084,1065,1075,
+1126,1241,1119,1068,1095,1192,1069,1063,1063,1069,1090,1078,1064,1077,1132,1142,1147,1153,1168,1162,
+1177,1203,1220,1217,1212,1195,1188,1196,1221,1243,1214,1195,1173,1156,1142,1126,1105,1083,1071,1055,
+1034,1017,1010,1032,966,929,907,866,839,818,801,794,788,787,774,758,779,740,655,629,
+611,576,551,532,525,514,493,460,446,430,401,374,343,322,296,271,247,222,202,177,
+146,117,89,68,40,9,-25,-59,-85,-107,-122,-136,-146,-160,-181,-205,-234,-254,-276,-297,
+-316,-338,-364,-390,-418,-443,-468,-492,-519,-551,-578,-609,-637,-659,-695,-719,-739,-771,-815,-845,
+-867,-904,-934,-979,-1017,-1064,-1112,-1152,-1197,-1235,-1270,-1310,-1345,-1384,-1432,-1487,-1543,-1595,-1653,-1706,
+-1755,-1796,-1839,-1890,-1942,-1995,-2048,-2093,-2141,-2182,-2220,-2263,-2308,-2350,-2397,-2449,-2493,-2535,-2580,-2623,
+-2675,-2731,-2782,-2829,-2881,-2938,-2989,-3038,-3086,-3132,-3174,-3208,-3250,-3286,-3326,-3368,-3410,-3450,-3484,-3520,
+-3556,-3593,-3630,-3672,-3715,-3754,-3790,-3819,-3845,-3866,-3891,-3921,-3951,-3972,-3998,-4023,-4047,-4073,-4096,-4116,
+-4138,-4152,-4165,-4176,-4186,-4200,-4207,-4217,-4226,-4228,-4248,-4257,-4250,-4228,-4215,-4244,-4237,-4229,-4222,-4212,
+-4190,-4169,-4146,-4131,-4122,-4109,-4091,-4067,-4042,-4015,-3995,-3973,-3935,-3895,-3853,-3818,-3785,-3756,-3723,-3693,
+-3654,-3609,-3561,-3519,-3474,-3425,-3383,-3340,-3293,-3251,-3186,-3129,-3101,-3049,-3008,-2955,-2922,-2858,-2797,-2772,
+-2712,-2657,-2594,-2534,-2488,-2431,-2371,-2315,-2260,-2203,-2145,-2086,-2035,-1980,-1925,-1875,-1817,-1761,-1707,-1648,
+-1597,-1542,-1492,-1449,-1397,-1351,-1310,-1264,-1214,-1170,-1128,-1084,-1041,-1001,-967,-930,-901,-874,-842,-817,
+-807,-821,-798,-754,-714,-687,-660,-628,-591,-550,-517,-483,-452,-421,-388,-357,-318,-304,-270,-235,
+-208,-187,-158,-142,-134,-129,-138,-159,-197,-256,-336,-419,-475,-489,-453,-384,-318,-254,-230,-183,
+-111,-100,-113,-61,75,231,362,459,554,640,714,783,798,802,782,730,691,653,612,602,
+583,529,447,429,398,395,379,386,184,108,70,40,19,-9,-58,-106,-170,-234,-292,-374,
+-427,-462,-497,-552,-611,-679,-755,-875,-1008,-1160,-1328,-1503,-1663,-1819,-1969,-2096,-2177,-2223,-2245,-2164,
+-1951,-1830,-1770,-1690,-1732,-1824,-1925,-2039,-2122,-2130,-2259,-2325,-2393,-2457,-2625,-2638,-2504,-2662,-2701,-2688,
+-2958,-3037,-3100,-3382,-3341,-3489,-3690,-3825,-3831,-3848,-3863,-3787,-3703,-3593,-3470,-3429,-3415,-3275,-3437,-3719,
+-3878,-3977,-4042,-4056,-3975,-3783,-3688,-3932,-4185,-4430,-4690,-4894,-4974,-4976,-5041,-5043,-4908,-4731,-4592,-4515,
+-4509,-4568,-4694,-4765,-4762,-4735,-4702,-4673,-4643,-4617,-4589,-4561,-4535,-4513,-4479,-4450,-4433,-4423,-4425,-4425,
+-4424,-4423,-4415,-4404,-4387,-4368,-4338,-4322,-4309,-4299,-4279,-4241,-4189,-4147,-4103,-4061,-4008,-3958,-3903,-3833,
+-3770,-3708,-3643,-3568,-3504,-3424,-3344,-3260,-3170,-3098,-3019,-2952,-2876,-2804,-2712,-2644,-2611,-2491,-2395,-2345,
+-2325,-2296,-2262,-2222,-2190,-2140,-2120,-2100,-2069,-2027,-1985,-1930,-1886,-1832,-1769,-1707,-1651,-1595,-1547,-1504,
+-1468,-1425,-1377,-1320,-1268,-1220,-1177,-1126,-1092,-1045,-982,-924,-873,-810,-736,-676,-619,-547,-490,-433,
+-381,-330,-265,-202,-127,-85,-10,59,116,177,236,303,356,417,472,525,589,654,714,772,
+824,879,939,994,1047,1096,1141,1189,1241,1288,1332,1373,1407,1433,1447,1463,1476,1497,1518,1538,
+1562,1594,1627,1660,1691,1725,1759,1804,1846,1877,1895,1914,1934,1956,1976,2007,2040,2066,2092,2105,
+2144,2259,2476,2678,2775,2829,2849,2847,2846,2864,2875,2882,2927,3003,3036,3005,3029,3066,3098,3089,
+3050,3089,3198,3243,3259,3266,3276,3266,3240,3274,3267,3263,3295,3294,3267,3233,3222,3219,3162,3110,
+3094,3050,3017,2982,2956,2934,2914,2914,2927,2929,2924,2898,2875,2870,2876,2856,2824,2798,2803,2788,
+2723,2683,2663,2642,2653,2654,2643,2615,2594,2565,2539,2522,2504,2469,2434,2417,2401,2376,2366,2348,
+2319,2269,2243,2200,2255,2275,2212,2132,2075,2035,2001,1998,2000,2002,2024,2071,2109,2126,2131,2130,
+2138,2153,2162,2176,2197,2212,2222,2214,2200,2178,2154,2131,2104,2071,2027,1978,1930,1893,1855,1824,
+1793,1759,1721,1682,1643,1591,1547,1538,1499,1439,1394,1368,1325,1289,1278,1251,1218,1206,1155,1126,
+1095,1052,985,920,877,844,832,789,793,784,731,668,602,554,526,515,514,513,498,483,
+472,465,456,447,434,424,428,432,400,373,364,368,343,278,225,195,161,127,110,74,
+35,17,4,15,12,0,-24,-18,-22,-21,-13,3,-23,-48,-96,-124,-125,-115,-114,-153,
+-209,-274,-355,-396,-385,-359,-369,-391,-412,-423,-435,-453,-471,-497,-513,-501,-505,-510,-513,-488,
+-351,-292,-307,-312,-305,-271,-299,-402,-403,-345,-261,-387,-552,-667,-728,-770,-816,-865,-901,-939,
+-953,-964,-1030,-1054,-1077,-1194,-1328,-1425,-1500,-1534,-1576,-1621,-1654,-1695,-1736,-1782,-1835,-1903,-1949,-1987,
+-2038,-2073,-2118,-2200,-2271,-2329,-2378,-2436,-2502,-2545,-2586,-2660,-2723,-2762,-2804,-2866,-2934,-3025,-3178,-3281,
+-3393,-3504,-3529,-3534,-3585,-3671,-3745,-3780,-3858,-4030,-4173,-4262,-4257,-4325,-4288,-4321,-4418,-4451,-4493,-4551,
+-4588,-4646,-4673,-4732,-4831,-5134,-5209,-5221,-5280,-5360,-5448,-5529,-5606,-5675,-5749,-5844,-5938,-6024,-6095,-6154,
+-6217,-6292,-6379,-6466,-6561,-6650,-6731,-6806,-6882,-6962,-7041,-7120,-7204,-7288,-7372,-7450,-7529,-7609,-7689,-7775,
+-7856,-7925,-7991,-8061,-8135,-8212,-8287,-8351,-8419,-8493,-8562,-8639,-8712,-8775,-8831,-8861,-8883,-8892,-8892,-8885,
+-8868,-8982,-9030,-9094,-9152,-9186,-9237,-9277,-9302,-9269,-9214,-9103,-9080,-9085,-9166,-9166,-9050,-8896,-8885,-8874,
+-8878,-8879,-8892,-9011,-9134,-9174,-9145,-9156,-9153,-9190,-9203,-9200,-9210,-9311,-9513,-9632,-9636,-9635,-9599,-9568,
+-9513,-9451,-9374,-9296,-9221,-9150,-9090,-9030,-8954,-8879,-8804,-8739,-8687,-8651,-8619,-8549,-8435,-8319,-8211,-8106,
+-7989,-7867,-7745,-7626,-7490,-7353,-7210,-7076,-6960,-6849,-6745,-6635,-6517,-6416,-6338,-6296,-6287,-6309,-6355,-6401,
+-6366,-6209,-6111,-6037,-6088,-6159,-6074,-5856,-5627,-5411,-5225,-5007,-4911,-4895,-4829,-4721,-4673,-4592,-4482,-4288,
+-4090,-3932,-3796,-3733,-3660,-3578,-3498,-3402,-3312,-3215,-3115,-3006,-2980,-2925,-2869,-2820,-2759,-2685,-2592,-2528,
+-2431,-2343,-2254,-2164,-2052,-1915,-1867,-1750,-1715,-1672,-1556,-1534,-1442,-1334,-1228,-1121,-1021,-925,-826,-717,
+-604,-444,-260,-104,14,140,335,455,453,453,436,511,579,580,624,685,775,873,990,1090,
+1242,1358,1461,1567,1635,1736,1852,2001,2124,2242,2358,2471,2571,2679,2778,2880,2970,3070,3217,3347,
+3488,3650,3667,3662,3747,3838,3900,3998,4139,4324,4480,4637,4770,4864,4920,4977,5036,5107,5172,5255,
+5308,5360,5346,5378,5499,5548,5589,5695,5792,5810,5854,5959,6017,6060,5962,5681,5143,4682,4603,4830,
+5044,5205,5324,5413,5479,5529,5551,5557,5562,5552,5536,5513,5501,5493,5477,5463,5456,5447,5434,5428,
+5414,5392,5378,5378,5390,5399,5414,5425,5424,5416,5411,5499,5523,5529,5552,5564,5575,5582,5588,5599,
+5604,5604,5600,5603,5605,5618,5629,5584,5517,5405,5382,5367,5347,5275,5142,4995,4870,4726,4656,4716,
+4626,4582,4776,4898,4910,4900,4852,4674,4263,3817,3491,3372,3421,3565,3754,3925,4069,4189,4322,4536,
+4648,4655,4697,4710,4705,4709,4712,4706,4683,4645,4602,4558,4508,4463,4410,4356,4303,4269,4245,4221,
+4191,4160,4120,4072,4031,3998,3969,3946,3929,3915,3905,3883,3852,3803,3738,3667,3599,3572,3653,3681,
+3581,3469,3403,3390,3403,3336,3324,3332,3298,3251,3246,3276,3336,3178,3050,2980,2945,2952,3077,3121,
+2998,3001,3055,2928,2851,2825,2805,2809,2793,2761,2774,2849,3073,3023,2846,2720,2635,2636,2658,2650,
+2683,2634,2492,2440,2402,2346,2322,2375,2490,2425,2259,2137,2188,2282,2312,2155,2087,2042,2014,1988,
+1957,1922,1888,1851,1829,1831,1821,1786,1755,1728,1698,1666,1626,1574,1531,1507,1478,1462,1463,1456,
+1442,1429,1400,1376,1363,1356,1328,1300,1264,1241,1226,1176,1092,1104,1085,1094,1062,1046,1041,1041,
+1056,1106,1154,1171,1162,1136,1117,1106,1104,1110,1104,1105,1096,1086,1076,1079,1062,1049,1070,1086,
+1097,1132,1145,1113,1075,1073,1121,1067,1074,1060,1076,1061,1059,1070,1123,1148,1157,1160,1163,1168,
+1168,1187,1222,1241,1244,1244,1244,1239,1214,1268,1294,1232,1211,1205,1175,1155,1130,1106,1084,1085,
+1076,1061,1046,1029,1015,979,959,988,912,896,860,827,816,815,813,805,790,779,746,702,
+678,647,607,581,568,562,555,530,503,493,470,437,410,387,365,336,315,294,270,239,
+211,180,149,120,94,68,40,13,-20,-48,-76,-99,-112,-126,-139,-159,-184,-214,-239,-263,
+-276,-295,-317,-338,-367,-394,-419,-444,-470,-500,-526,-551,-581,-608,-632,-653,-694,-732,-751,-779,
+-807,-837,-869,-903,-940,-980,-1024,-1072,-1125,-1168,-1209,-1246,-1286,-1330,-1370,-1415,-1463,-1512,-1568,-1623,
+-1679,-1729,-1768,-1807,-1857,-1909,-1967,-2022,-2068,-2115,-2159,-2203,-2245,-2285,-2320,-2372,-2431,-2474,-2511,-2560,
+-2605,-2650,-2692,-2740,-2790,-2844,-2904,-2953,-3001,-3045,-3089,-3129,-3170,-3212,-3250,-3292,-3339,-3379,-3418,-3456,
+-3493,-3530,-3570,-3608,-3647,-3684,-3720,-3752,-3783,-3810,-3831,-3860,-3889,-3918,-3940,-3966,-3991,-4014,-4037,-4062,
+-4083,-4099,-4116,-4132,-4141,-4153,-4164,-4169,-4177,-4188,-4198,-4207,-4212,-4224,-4210,-4190,-4197,-4217,-4211,-4205,
+-4188,-4168,-4148,-4128,-4107,-4091,-4080,-4068,-4048,-4017,-3983,-3953,-3938,-3908,-3874,-3838,-3799,-3762,-3730,-3701,
+-3671,-3633,-3592,-3540,-3506,-3455,-3378,-3353,-3336,-3276,-3233,-3190,-3134,-3073,-3031,-2991,-2932,-2879,-2847,-2793,
+-2736,-2690,-2639,-2597,-2535,-2478,-2421,-2367,-2312,-2253,-2197,-2145,-2089,-2031,-1975,-1921,-1872,-1814,-1759,-1710,
+-1649,-1598,-1540,-1491,-1447,-1401,-1355,-1301,-1255,-1208,-1165,-1123,-1086,-1041,-1009,-977,-946,-915,-880,-861,
+-861,-862,-832,-788,-755,-723,-693,-663,-629,-591,-545,-510,-478,-449,-413,-385,-344,-320,-289,-254,
+-216,-188,-155,-124,-100,-79,-61,-56,-54,-53,-71,-95,-137,-202,-271,-344,-409,-423,-393,-365,
+-303,-208,-87,-42,-70,-51,76,298,476,547,611,679,743,797,813,801,766,726,688,663,
+646,592,462,408,397,370,363,403,421,252,133,95,89,86,57,-5,-62,-124,-192,-280,
+-345,-384,-421,-464,-515,-567,-643,-740,-865,-996,-1144,-1303,-1461,-1602,-1732,-1836,-1885,-1928,-1969,-2057,
+-1975,-1766,-1638,-1578,-1539,-1574,-1646,-1785,-1965,-2112,-2217,-2237,-2196,-2186,-2305,-2396,-2449,-2384,-2320,-2393,
+-2347,-2569,-2620,-2695,-2855,-2859,-2803,-2980,-3183,-3173,-3425,-3659,-3648,-3492,-3369,-3168,-3092,-3111,-3194,-3475,
+-3653,-3768,-3861,-3913,-3902,-3717,-3640,-3838,-4063,-4262,-4464,-4689,-4839,-4911,-4934,-5007,-4989,-4873,-4740,-4612,
+-4525,-4524,-4592,-4693,-4768,-4785,-4774,-4745,-4720,-4693,-4660,-4630,-4601,-4572,-4546,-4519,-4495,-4481,-4467,-4463,
+-4455,-4453,-4446,-4431,-4410,-4381,-4338,-4326,-4314,-4315,-4321,-4308,-4280,-4238,-4196,-4173,-4119,-4073,-4007,-3930,
+-3874,-3804,-3734,-3659,-3583,-3515,-3434,-3347,-3266,-3185,-3106,-3023,-2939,-2874,-2797,-2697,-2614,-2552,-2553,-2484,
+-2423,-2377,-2331,-2297,-2256,-2196,-2145,-2092,-2055,-2008,-1951,-1915,-1888,-1871,-1822,-1781,-1742,-1689,-1634,-1581,
+-1519,-1453,-1397,-1362,-1317,-1279,-1232,-1185,-1124,-1070,-1015,-956,-907,-855,-773,-727,-677,-613,-554,-501,
+-439,-371,-314,-265,-203,-133,-79,-21,29,96,158,219,271,331,389,454,513,569,625,678,
+728,788,839,894,944,1006,1056,1106,1161,1213,1253,1295,1339,1379,1414,1446,1476,1490,1492,1502,
+1507,1531,1571,1607,1635,1665,1695,1730,1772,1816,1843,1862,1877,1900,1919,1943,1984,2017,2049,2078,
+2113,2167,2270,2452,2649,2753,2813,2823,2817,2808,2835,2858,2892,2942,3004,3037,3030,3046,3096,3123,
+3072,3068,3117,3256,3357,3302,3324,3367,3365,3339,3332,3289,3289,3281,3293,3269,3233,3213,3191,3159,
+3114,3091,3054,3011,2972,2947,2933,2922,2925,2946,2944,2938,2921,2899,2882,2877,2842,2811,2800,2798,
+2769,2698,2668,2646,2642,2655,2662,2648,2601,2564,2537,2518,2498,2469,2448,2412,2398,2385,2363,2334,
+2294,2274,2204,2189,2210,2266,2264,2196,2122,2068,2027,1987,1982,1987,2022,2076,2118,2148,2164,2175,
+2184,2187,2182,2176,2180,2189,2201,2209,2207,2199,2192,2182,2163,2135,2096,2047,1993,1945,1905,1860,
+1828,1792,1762,1732,1705,1673,1635,1590,1564,1508,1439,1393,1357,1302,1254,1244,1224,1197,1174,1124,
+1104,1095,1031,954,897,849,816,810,773,747,735,703,645,579,533,507,496,478,469,450,
+430,412,401,400,383,368,358,355,344,313,293,284,296,283,229,176,150,125,74,13,
+-50,-58,-65,-78,-57,-54,-59,-105,-124,-72,-47,-29,-14,-51,-84,-120,-148,-157,-156,-171,
+-211,-248,-296,-355,-377,-420,-386,-390,-407,-423,-425,-441,-459,-475,-485,-510,-522,-536,-528,-519,
+-513,-379,-304,-289,-325,-333,-279,-254,-337,-379,-336,-322,-427,-590,-692,-770,-805,-855,-908,-961,
+-971,-962,-1000,-1061,-1098,-1208,-1349,-1398,-1464,-1520,-1570,-1628,-1676,-1720,-1765,-1810,-1860,-1887,-1947,-2009,
+-2061,-2097,-2148,-2192,-2286,-2331,-2375,-2420,-2468,-2521,-2564,-2631,-2705,-2754,-2793,-2851,-2873,-2939,-3007,-3131,
+-3273,-3396,-3553,-3676,-3684,-3725,-3808,-3893,-4005,-4193,-4351,-4434,-4440,-4393,-4383,-4332,-4406,-4457,-4499,-4571,
+-4601,-4648,-4706,-4744,-4843,-4983,-5214,-5187,-5192,-5275,-5360,-5459,-5550,-5627,-5714,-5771,-5870,-5966,-6055,-6128,
+-6181,-6247,-6326,-6414,-6503,-6599,-6684,-6762,-6837,-6917,-6997,-7076,-7160,-7245,-7330,-7414,-7493,-7575,-7650,-7728,
+-7809,-7892,-7963,-8032,-8104,-8182,-8256,-8323,-8391,-8463,-8531,-8604,-8685,-8763,-8828,-8877,-8909,-8927,-8929,-8925,
+-8936,-8938,-9030,-9078,-9137,-9181,-9214,-9293,-9326,-9359,-9359,-9319,-9208,-9140,-9150,-9204,-9290,-9192,-9043,-8989,
+-8932,-8899,-8920,-8964,-9083,-9234,-9273,-9206,-9206,-9176,-9213,-9208,-9221,-9251,-9339,-9533,-9621,-9672,-9724,-9676,
+-9641,-9585,-9511,-9430,-9346,-9266,-9201,-9153,-9104,-9020,-8926,-8840,-8771,-8714,-8672,-8631,-8552,-8433,-8323,-8213,
+-8110,-8000,-7872,-7741,-7623,-7492,-7357,-7217,-7083,-6957,-6844,-6736,-6625,-6505,-6404,-6336,-6302,-6301,-6333,-6376,
+-6404,-6332,-6172,-6085,-6048,-6081,-6170,-6057,-5766,-5560,-5376,-5196,-5030,-4913,-4903,-4803,-4703,-4631,-4552,-4438,
+-4246,-4059,-3887,-3770,-3694,-3619,-3526,-3448,-3346,-3245,-3137,-3072,-2978,-2945,-2878,-2819,-2773,-2714,-2641,-2543,
+-2478,-2399,-2293,-2210,-2117,-2025,-1906,-1810,-1712,-1625,-1621,-1532,-1455,-1371,-1269,-1167,-1063,-960,-871,-771,
+-644,-510,-363,-232,-88,83,209,339,450,403,459,490,560,629,635,693,765,856,963,1067,
+1153,1294,1428,1529,1600,1714,1843,1959,2087,2198,2311,2452,2565,2694,2789,2866,2924,3037,3207,3414,
+3519,3718,3824,3879,3817,3817,3899,3984,4091,4227,4413,4619,4754,4853,4936,4989,5061,5125,5193,5256,
+5287,5319,5449,5531,5552,5646,5676,5728,5812,5873,5908,5938,6052,6127,6213,6184,5890,5364,4844,4608,
+4777,5023,5209,5348,5451,5527,5585,5608,5619,5622,5618,5602,5580,5564,5552,5537,5523,5510,5504,5489,
+5479,5472,5456,5440,5436,5435,5433,5444,5465,5478,5461,5452,5534,5540,5603,5635,5623,5624,5655,5636,
+5647,5652,5648,5643,5635,5648,5645,5683,5625,5506,5291,5276,5345,5386,5356,5205,4989,4856,4708,4585,
+4388,4160,4091,4244,4305,4408,4441,4350,4151,3817,3580,3561,3694,3836,4004,4192,4337,4437,4491,4537,
+4612,4714,4795,4767,4738,4724,4718,4713,4702,4681,4642,4609,4562,4511,4465,4408,4350,4311,4291,4272,
+4248,4216,4174,4127,4082,4049,4020,3990,3959,3945,3941,3937,3918,3884,3836,3779,3716,3656,3619,3666,
+3881,3773,3539,3452,3449,3476,3377,3339,3307,3283,3262,3241,3253,3254,3170,3078,3013,2982,3014,3125,
+3291,3267,3309,3299,3065,2943,2936,2867,2835,2813,2790,2786,2829,3004,3091,3135,2959,2731,2656,2662,
+2700,2783,2849,2745,2644,2552,2443,2380,2360,2342,2283,2210,2197,2189,2199,2191,2144,2120,2096,2072,
+2048,2025,1994,1953,1912,1880,1872,1853,1823,1789,1752,1724,1689,1652,1613,1589,1578,1517,1507,1505,
+1485,1473,1462,1444,1421,1403,1378,1360,1334,1304,1291,1254,1215,1175,1160,1091,1068,1062,1055,1061,
+1069,1088,1101,1129,1141,1145,1129,1124,1116,1102,1100,1111,1115,1126,1127,1119,1107,1079,1059,1062,
+1069,1123,1214,1146,1129,1093,1061,1061,1075,1072,1056,1021,1040,1051,1119,1147,1151,1160,1163,1167,
+1166,1164,1195,1247,1266,1268,1284,1318,1353,1268,1323,1341,1271,1243,1249,1210,1172,1155,1136,1120,
+1105,1087,1064,1053,1041,1026,1005,979,963,976,1109,1012,878,854,846,825,816,815,814,792,
+755,724,688,648,611,592,578,572,548,537,519,496,475,453,426,396,364,346,326,300,
+270,245,213,181,149,117,94,63,36,5,-22,-48,-77,-89,-107,-120,-135,-164,-191,-214,
+-238,-251,-268,-286,-313,-343,-367,-395,-420,-445,-470,-497,-534,-561,-593,-628,-652,-668,-697,-720,
+-748,-777,-804,-832,-865,-907,-948,-987,-1035,-1089,-1133,-1177,-1220,-1260,-1305,-1348,-1390,-1437,-1490,-1541,
+-1597,-1655,-1704,-1748,-1786,-1830,-1877,-1930,-1986,-2041,-2095,-2139,-2185,-2230,-2269,-2300,-2347,-2400,-2443,-2486,
+-2538,-2582,-2620,-2656,-2702,-2752,-2810,-2864,-2921,-2960,-3004,-3043,-3081,-3126,-3169,-3211,-3254,-3293,-3334,-3374,
+-3412,-3455,-3496,-3537,-3578,-3614,-3649,-3677,-3709,-3740,-3770,-3794,-3820,-3850,-3881,-3907,-3938,-3968,-3992,-4015,
+-4035,-4054,-4069,-4081,-4095,-4111,-4122,-4135,-4145,-4153,-4159,-4164,-4167,-4169,-4180,-4185,-4188,-4184,-4188,-4176,
+-4166,-4154,-4146,-4129,-4108,-4092,-4069,-4059,-4040,-4016,-3988,-3961,-3930,-3903,-3885,-3858,-3822,-3786,-3751,-3719,
+-3685,-3652,-3614,-3570,-3515,-3472,-3430,-3385,-3355,-3321,-3247,-3198,-3166,-3119,-3072,-3019,-2971,-2924,-2868,-2826,
+-2774,-2720,-2666,-2614,-2571,-2525,-2464,-2409,-2354,-2299,-2243,-2192,-2144,-2088,-2032,-1971,-1916,-1866,-1813,-1757,
+-1707,-1647,-1594,-1543,-1495,-1449,-1398,-1354,-1305,-1259,-1210,-1166,-1126,-1087,-1050,-1023,-991,-963,-934,-913,
+-899,-894,-859,-824,-788,-762,-730,-697,-669,-628,-591,-548,-509,-478,-447,-413,-380,-348,-320,-280,
+-243,-211,-171,-137,-108,-77,-50,-27,-10,1,16,23,29,27,16,-11,-55,-129,-229,-325,
+-382,-375,-301,-202,-100,-41,-58,-38,134,386,527,604,653,712,773,843,849,809,754,722,
+714,675,522,451,454,391,280,248,277,397,320,174,103,83,87,78,33,-24,-86,-168,
+-249,-314,-357,-401,-447,-499,-556,-648,-755,-867,-982,-1102,-1233,-1361,-1464,-1535,-1572,-1596,-1617,-1661,
+-1720,-1677,-1572,-1524,-1493,-1452,-1452,-1527,-1703,-1932,-2101,-2205,-2224,-2150,-2081,-2134,-2186,-2254,-2256,-2227,
+-2238,-2290,-2372,-2492,-2538,-2645,-2645,-2615,-2707,-2789,-2883,-3091,-3407,-3502,-3312,-3234,-3011,-2938,-3029,-3257,
+-3395,-3485,-3542,-3580,-3618,-3651,-3652,-3804,-3987,-4149,-4300,-4443,-4601,-4754,-4826,-4881,-4953,-4907,-4808,-4694,
+-4585,-4526,-4533,-4601,-4704,-4767,-4787,-4788,-4770,-4743,-4709,-4679,-4656,-4627,-4604,-4577,-4555,-4528,-4513,-4490,
+-4486,-4481,-4475,-4470,-4464,-4441,-4419,-4404,-4379,-4356,-4334,-4313,-4292,-4273,-4255,-4231,-4211,-4175,-4141,-4089,
+-4014,-3958,-3894,-3803,-3686,-3626,-3539,-3476,-3411,-3322,-3236,-3156,-3071,-2993,-2909,-2819,-2742,-2637,-2559,-2570,
+-2462,-2378,-2360,-2353,-2324,-2276,-2228,-2182,-2117,-2070,-2025,-1982,-1943,-1893,-1841,-1797,-1743,-1697,-1639,-1593,
+-1539,-1503,-1464,-1418,-1365,-1314,-1260,-1203,-1141,-1091,-1051,-993,-937,-881,-810,-760,-727,-672,-602,-537,
+-488,-429,-380,-322,-271,-213,-154,-93,-35,22,84,142,196,250,313,373,434,491,548,606,
+668,721,770,812,860,918,968,1013,1061,1106,1156,1217,1264,1319,1364,1393,1429,1449,1477,1511,
+1533,1534,1537,1557,1583,1609,1639,1663,1694,1730,1774,1803,1825,1843,1864,1890,1918,1955,1989,2020,
+2060,2096,2150,2248,2432,2634,2739,2802,2809,2806,2813,2826,2857,2908,2943,2989,3024,3045,3068,3104,
+3121,3091,3092,3155,3284,3376,3403,3405,3432,3442,3417,3363,3334,3296,3297,3276,3244,3224,3213,3191,
+3157,3122,3089,3047,3008,2961,2938,2922,2912,2915,2944,2958,2961,2953,2934,2903,2878,2842,2812,2791,
+2775,2733,2668,2645,2614,2630,2650,2650,2627,2583,2543,2512,2487,2459,2448,2409,2388,2387,2366,2343,
+2310,2254,2218,2182,2184,2234,2265,2258,2209,2154,2093,2044,1999,1978,1992,2041,2111,2146,2174,2196,
+2212,2225,2226,2209,2197,2196,2205,2217,2215,2212,2210,2206,2198,2181,2157,2109,2060,2012,1965,1930,
+1890,1840,1800,1772,1739,1707,1672,1634,1596,1547,1496,1445,1410,1377,1311,1247,1213,1190,1181,1135,
+1105,1097,1080,1014,938,879,837,805,802,745,710,689,672,619,554,511,486,463,439,422,
+393,372,354,340,321,309,298,268,271,269,246,230,232,232,203,152,109,80,56,10,
+-64,-134,-149,-147,-169,-175,-149,-102,-159,-188,-131,-101,-56,-62,-100,-136,-169,-181,-199,-222,
+-248,-272,-301,-351,-390,-402,-437,-449,-419,-428,-431,-413,-437,-467,-493,-498,-513,-540,-543,-504,
+-469,-500,-361,-327,-318,-353,-338,-328,-350,-445,-501,-446,-482,-503,-617,-700,-788,-861,-906,-935,
+-961,-1019,-998,-1088,-1119,-1169,-1232,-1330,-1409,-1481,-1554,-1626,-1692,-1745,-1794,-1853,-1895,-1919,-1969,-2022,
+-2062,-2113,-2155,-2197,-2248,-2281,-2333,-2365,-2431,-2511,-2564,-2616,-2679,-2678,-2719,-2776,-2808,-2813,-2882,-3050,
+-3243,-3396,-3541,-3685,-3838,-3924,-3920,-3979,-4138,-4284,-4438,-4571,-4627,-4609,-4530,-4506,-4497,-4485,-4520,-4566,
+-4615,-4645,-4715,-4744,-4805,-4965,-5196,-5205,-5163,-5195,-5282,-5384,-5484,-5572,-5649,-5745,-5804,-5889,-5991,-6091,
+-6166,-6224,-6288,-6368,-6453,-6541,-6632,-6716,-6797,-6876,-6956,-7038,-7116,-7196,-7284,-7370,-7455,-7538,-7617,-7692,
+-7766,-7842,-7920,-7991,-8063,-8140,-8221,-8296,-8365,-8435,-8500,-8574,-8650,-8732,-8811,-8872,-8919,-8951,-8981,-8975,
+-8964,-8981,-9006,-9070,-9113,-9183,-9229,-9240,-9331,-9372,-9389,-9415,-9410,-9354,-9231,-9189,-9204,-9274,-9281,-9169,
+-9103,-8927,-8851,-9031,-9188,-9283,-9372,-9385,-9322,-9273,-9255,-9225,-9236,-9252,-9245,-9342,-9565,-9716,-9812,-9813,
+-9748,-9698,-9639,-9560,-9482,-9393,-9309,-9241,-9197,-9146,-9061,-8963,-8871,-8800,-8745,-8699,-8655,-8576,-8463,-8334,
+-8217,-8109,-7995,-7871,-7742,-7625,-7496,-7360,-7218,-7080,-6945,-6827,-6718,-6610,-6498,-6402,-6336,-6302,-6312,-6350,
+-6392,-6400,-6305,-6157,-6077,-6077,-6149,-6222,-6021,-5667,-5502,-5340,-5175,-5082,-4965,-4872,-4784,-4682,-4587,-4512,
+-4392,-4193,-4019,-3846,-3726,-3634,-3571,-3491,-3404,-3293,-3183,-3086,-3007,-2952,-2898,-2832,-2776,-2725,-2661,-2598,
+-2502,-2438,-2358,-2241,-2170,-2074,-1984,-1870,-1775,-1677,-1629,-1524,-1481,-1406,-1334,-1227,-1121,-1019,-918,-813,
+-710,-590,-457,-315,-195,-100,103,251,335,420,459,463,548,632,697,729,782,843,936,1058,
+1165,1227,1358,1499,1588,1676,1817,1935,2048,2168,2271,2405,2558,2712,2842,2893,2973,3023,3121,3341,
+3582,3695,3819,3899,3949,3949,3938,4005,4083,4202,4360,4552,4731,4834,4931,4988,5057,5130,5208,5269,
+5309,5339,5405,5525,5644,5686,5769,5845,5905,5919,5911,5992,6030,6169,6225,6296,6328,6098,5571,5008,
+4629,4715,5001,5216,5371,5491,5576,5636,5669,5679,5684,5680,5666,5646,5628,5609,5601,5586,5574,5558,
+5544,5532,5524,5518,5507,5500,5491,5484,5489,5510,5526,5514,5516,5582,5654,5652,5671,5677,5685,5688,
+5704,5715,5703,5712,5709,5690,5687,5721,5734,5717,5339,5079,5242,5360,5433,5461,5296,5067,4834,4645,
+4396,4002,3700,3594,3599,3639,3747,3821,3818,3777,3745,3817,3983,4167,4330,4462,4586,4660,4720,4738,
+4740,4771,4867,5023,4845,4771,4746,4723,4704,4686,4661,4635,4603,4556,4513,4465,4407,4355,4336,4323,
+4300,4271,4235,4191,4144,4111,4085,4058,4022,3986,3972,3965,3958,3945,3916,3872,3825,3770,3723,3698,
+3766,4026,3932,3626,3508,3465,3465,3427,3390,3365,3337,3317,3300,3259,3228,3192,3142,3080,3065,3199,
+3235,3212,3246,3402,3548,3220,2978,2938,2898,2874,2853,2833,2830,2808,2840,2918,3097,3081,2793,2669,
+2699,2815,2995,2995,2928,2903,2720,2549,2438,2360,2291,2245,2272,2330,2370,2300,2195,2151,2144,2172,
+2155,2116,2086,2056,2012,1968,1936,1923,1910,1877,1833,1792,1754,1714,1682,1656,1648,1615,1568,1545,
+1533,1523,1497,1485,1468,1443,1429,1411,1408,1381,1365,1309,1249,1235,1218,1184,1143,1117,1077,1051,
+1070,1080,1094,1102,1119,1138,1149,1134,1119,1100,1092,1099,1117,1130,1147,1154,1144,1133,1095,1074,
+1066,1076,1121,1186,1133,1101,1071,1066,1098,1133,1077,1040,1001,1032,1085,1133,1141,1149,1167,1172,
+1161,1178,1171,1197,1244,1263,1276,1300,1311,1301,1286,1311,1463,1364,1304,1294,1248,1208,1196,1187,
+1166,1137,1116,1080,1063,1055,1045,1039,1013,994,998,1069,980,917,970,931,828,814,826,832,
+817,794,762,726,692,656,628,609,589,567,557,540,522,508,493,462,428,400,376,348,
+346,324,284,250,219,194,156,124,100,65,37,4,-23,-47,-65,-77,-96,-108,-132,-153,
+-176,-195,-211,-229,-252,-276,-303,-331,-360,-391,-416,-451,-483,-513,-541,-571,-596,-629,-645,-672,
+-695,-721,-747,-768,-798,-834,-875,-918,-955,-1015,-1054,-1098,-1142,-1185,-1225,-1272,-1313,-1358,-1410,-1462,
+-1517,-1574,-1629,-1678,-1729,-1773,-1811,-1852,-1900,-1951,-2010,-2068,-2121,-2168,-2215,-2253,-2289,-2329,-2370,-2412,
+-2459,-2510,-2555,-2597,-2638,-2683,-2722,-2777,-2834,-2884,-2925,-2965,-2997,-3036,-3080,-3125,-3172,-3214,-3251,-3297,
+-3336,-3377,-3415,-3456,-3494,-3532,-3569,-3603,-3635,-3667,-3693,-3722,-3747,-3772,-3800,-3831,-3864,-3894,-3924,-3950,
+-3972,-3991,-4011,-4029,-4044,-4059,-4075,-4089,-4102,-4111,-4120,-4126,-4134,-4138,-4137,-4138,-4140,-4149,-4151,-4148,
+-4141,-4135,-4125,-4114,-4098,-4090,-4073,-4047,-4027,-4010,-3985,-3959,-3931,-3906,-3880,-3860,-3836,-3802,-3767,-3729,
+-3692,-3661,-3628,-3592,-3551,-3504,-3457,-3389,-3371,-3331,-3278,-3221,-3179,-3135,-3084,-3036,-2991,-2952,-2919,-2856,
+-2796,-2755,-2695,-2645,-2591,-2509,-2502,-2458,-2402,-2344,-2287,-2230,-2181,-2130,-2078,-2024,-1967,-1917,-1864,-1807,
+-1751,-1701,-1644,-1597,-1545,-1495,-1452,-1403,-1358,-1310,-1262,-1216,-1174,-1137,-1105,-1071,-1039,-1018,-991,-961,
+-942,-924,-889,-855,-832,-801,-768,-736,-705,-666,-629,-592,-554,-517,-480,-444,-414,-378,-349,-310,
+-271,-243,-207,-165,-130,-97,-64,-37,-13,8,34,59,72,92,110,127,136,133,102,42,
+-36,-131,-238,-298,-251,-160,-94,-60,-25,79,295,520,603,662,721,794,851,870,835,800,
+777,739,646,529,463,394,319,265,233,221,261,248,186,128,87,67,51,12,-36,-96,
+-164,-226,-288,-343,-396,-440,-491,-557,-656,-763,-870,-957,-1036,-1117,-1204,-1270,-1306,-1277,-1140,-1089,
+-1133,-1198,-1273,-1306,-1338,-1370,-1382,-1402,-1505,-1651,-1845,-2001,-2099,-2128,-2081,-2021,-2004,-1979,-2009,-2031,
+-2042,-2093,-2195,-2311,-2432,-2514,-2578,-2595,-2605,-2655,-2697,-2791,-2937,-3092,-3238,-3251,-3178,-3067,-3001,-3077,
+-3120,-3155,-3207,-3256,-3357,-3484,-3619,-3762,-3902,-4023,-4137,-4218,-4298,-4510,-4676,-4750,-4838,-4862,-4806,-4724,
+-4630,-4552,-4502,-4519,-4600,-4712,-4763,-4782,-4787,-4778,-4757,-4723,-4692,-4655,-4625,-4605,-4584,-4569,-4554,-4541,
+-4529,-4519,-4511,-4500,-4491,-4480,-4461,-4438,-4414,-4383,-4354,-4319,-4289,-4278,-4247,-4231,-4209,-4184,-4155,-4124,
+-4090,-4054,-4015,-3958,-3893,-3826,-3744,-3643,-3561,-3487,-3386,-3300,-3207,-3120,-3031,-2962,-2868,-2753,-2654,-2566,
+-2587,-2473,-2428,-2391,-2341,-2289,-2249,-2205,-2160,-2093,-2042,-1998,-1966,-1930,-1884,-1842,-1802,-1765,-1721,-1659,
+-1606,-1544,-1494,-1440,-1379,-1327,-1265,-1214,-1171,-1136,-1082,-1029,-988,-940,-881,-810,-761,-729,-687,-608,
+-550,-492,-430,-381,-328,-275,-218,-166,-110,-48,2,56,117,172,229,288,345,401,451,506,
+571,629,682,735,796,853,909,955,999,1046,1093,1134,1191,1215,1272,1308,1352,1402,1431,1461,
+1482,1510,1545,1560,1568,1571,1590,1611,1632,1656,1682,1716,1748,1778,1809,1833,1859,1892,1933,1963,
+1998,2031,2071,2116,2206,2393,2615,2717,2785,2812,2809,2817,2848,2879,2901,2918,2943,2991,3051,3098,
+3153,3157,3140,3184,3279,3413,3456,3479,3494,3513,3478,3420,3382,3329,3290,3279,3259,3238,3214,3192,
+3167,3152,3128,3098,3054,3004,2958,2925,2910,2913,2921,2951,2963,2985,2976,2944,2913,2884,2845,2815,
+2790,2752,2702,2671,2656,2614,2620,2636,2631,2597,2554,2518,2471,2451,2439,2409,2389,2376,2375,2351,
+2313,2279,2248,2209,2203,2215,2261,2290,2274,2229,2190,2145,2104,2051,2020,2031,2081,2136,2170,2201,
+2231,2248,2249,2249,2245,2234,2231,2236,2242,2233,2226,2224,2218,2212,2187,2159,2116,2061,2016,1965,
+1925,1887,1840,1805,1781,1744,1705,1665,1621,1590,1539,1487,1439,1410,1385,1315,1261,1207,1182,1167,
+1118,1100,1080,1027,980,920,857,828,795,775,727,683,646,626,595,529,487,458,433,398,
+370,346,320,296,287,273,250,228,203,206,201,190,181,171,156,120,72,4,-23,-22,
+-59,-133,-191,-219,-237,-250,-263,-246,-210,-241,-246,-202,-169,-138,-122,-151,-182,-195,-185,-226,
+-276,-303,-338,-361,-395,-427,-441,-472,-526,-476,-458,-446,-422,-433,-461,-505,-544,-546,-555,-540,
+-509,-494,-470,-388,-349,-277,-300,-395,-453,-473,-547,-548,-458,-457,-517,-601,-707,-816,-913,-956,
+-991,-1011,-1061,-1106,-1104,-1144,-1169,-1220,-1332,-1448,-1507,-1582,-1691,-1743,-1806,-1860,-1916,-1961,-2001,-2036,
+-2079,-2111,-2141,-2169,-2239,-2246,-2301,-2352,-2399,-2458,-2499,-2573,-2637,-2643,-2572,-2531,-2691,-2828,-2938,-3005,
+-3166,-3355,-3526,-3723,-3878,-4018,-4121,-4152,-4182,-4344,-4472,-4542,-4628,-4679,-4681,-4633,-4662,-4597,-4540,-4559,
+-4654,-4717,-4738,-4756,-4803,-4872,-5132,-5270,-5176,-5138,-5172,-5297,-5395,-5481,-5579,-5682,-5776,-5840,-5923,-6011,
+-6111,-6195,-6266,-6321,-6407,-6494,-6577,-6662,-6749,-6831,-6914,-6995,-7077,-7155,-7237,-7322,-7409,-7495,-7576,-7651,
+-7724,-7798,-7880,-7960,-8034,-8106,-8181,-8255,-8337,-8409,-8474,-8543,-8619,-8702,-8782,-8853,-8911,-8956,-8991,-9024,
+-9017,-9037,-9024,-9046,-9092,-9168,-9191,-9210,-9290,-9363,-9400,-9442,-9430,-9466,-9445,-9379,-9265,-9234,-9261,-9309,
+-9302,-9259,-8955,-8995,-9205,-9304,-9374,-9450,-9461,-9380,-9322,-9273,-9259,-9276,-9279,-9297,-9392,-9545,-9721,-9901,
+-9900,-9803,-9743,-9682,-9605,-9524,-9440,-9358,-9284,-9222,-9148,-9066,-8984,-8898,-8825,-8772,-8729,-8677,-8607,-8494,
+-8358,-8222,-8106,-7993,-7871,-7748,-7633,-7504,-7361,-7212,-7066,-6928,-6806,-6701,-6595,-6493,-6406,-6343,-6309,-6315,
+-6346,-6383,-6385,-6276,-6160,-6117,-6128,-6233,-6306,-6021,-5595,-5474,-5319,-5209,-5066,-4935,-4814,-4759,-4655,-4551,
+-4473,-4344,-4149,-3975,-3814,-3689,-3572,-3507,-3438,-3364,-3250,-3142,-3034,-2942,-2921,-2851,-2782,-2724,-2659,-2613,
+-2542,-2455,-2392,-2314,-2214,-2132,-2028,-1936,-1827,-1721,-1641,-1574,-1461,-1426,-1346,-1293,-1195,-1086,-977,-872,
+-758,-650,-539,-415,-290,-186,-84,93,218,250,331,419,504,610,695,761,818,883,946,1041,
+1121,1215,1332,1458,1573,1641,1764,1885,1987,2105,2218,2324,2451,2611,2786,2919,2962,3043,3097,3228,
+3474,3636,3790,3872,3939,3986,4042,4033,4090,4177,4315,4500,4672,4817,4932,5001,5067,5135,5200,5279,
+5342,5396,5427,5461,5524,5708,5714,5834,5976,6036,6005,5995,6069,6115,6203,6295,6378,6451,6322,5901,
+5215,4708,4661,4956,5214,5394,5527,5631,5697,5734,5747,5745,5739,5721,5702,5682,5665,5657,5648,5632,
+5612,5596,5582,5578,5573,5567,5564,5556,5541,5545,5563,5576,5569,5604,5700,5694,5727,5750,5743,5754,
+5755,5761,5756,5761,5757,5745,5729,5743,5783,5816,5777,5260,4911,5149,5235,5197,5303,5124,4921,4762,
+4455,4048,3691,3493,3445,3495,3586,3698,3807,3901,3993,4101,4250,4443,4624,4773,4859,4883,4905,4965,
+4937,4903,4925,5020,4950,4855,4824,4780,4737,4695,4666,4639,4617,4581,4545,4507,4461,4413,4373,4358,
+4345,4324,4294,4252,4203,4171,4146,4126,4107,4083,4052,4022,4002,3989,3976,3948,3910,3875,3826,3781,
+3734,3776,4002,4037,3773,3587,3520,3507,3496,3461,3431,3411,3428,3440,3315,3269,3285,3327,3204,3167,
+3302,3261,3220,3179,3284,3446,3206,2990,2925,2908,2903,2944,2888,2842,2807,2797,2814,2839,2822,2730,
+2689,2843,2947,3093,2940,2879,2962,2772,2596,2458,2359,2314,2257,2345,2582,2703,2468,2288,2186,2171,
+2238,2218,2166,2131,2108,2071,2026,1991,1977,1967,1935,1888,1837,1789,1751,1718,1692,1686,1628,1608,
+1582,1564,1539,1527,1520,1504,1480,1453,1441,1425,1390,1335,1279,1256,1280,1243,1213,1177,1139,1110,
+1085,1093,1090,1116,1111,1116,1141,1141,1129,1123,1106,1090,1099,1117,1132,1153,1163,1164,1138,1119,
+1094,1078,1085,1101,1095,1080,1066,1063,1066,1056,1074,1085,1039,1022,1051,1114,1133,1145,1154,1166,
+1158,1158,1164,1168,1209,1272,1244,1266,1300,1312,1303,1307,1319,1384,1501,1380,1301,1264,1237,1223,
+1226,1219,1230,1190,1149,1133,1092,1069,1069,1056,1034,1012,992,955,936,948,886,846,837,838,
+837,830,815,791,758,723,695,670,641,609,604,577,561,542,524,511,490,461,430,403,
+387,367,346,320,289,263,225,199,166,133,103,68,28,-3,-18,-36,-54,-67,-78,-100,
+-117,-136,-155,-175,-193,-221,-242,-264,-290,-320,-356,-387,-416,-444,-476,-504,-530,-557,-591,-613,
+-638,-669,-696,-718,-750,-784,-816,-854,-889,-939,-980,-1026,-1069,-1114,-1154,-1194,-1240,-1285,-1338,-1392,
+-1445,-1492,-1548,-1603,-1651,-1702,-1748,-1793,-1834,-1874,-1918,-1968,-2020,-2071,-2125,-2171,-2215,-2254,-2293,-2339,
+-2382,-2425,-2475,-2520,-2572,-2625,-2670,-2712,-2762,-2813,-2856,-2895,-2928,-2954,-2991,-3033,-3080,-3127,-3172,-3216,
+-3260,-3301,-3340,-3380,-3416,-3451,-3485,-3523,-3561,-3595,-3621,-3648,-3674,-3702,-3726,-3756,-3788,-3819,-3849,-3880,
+-3907,-3929,-3953,-3970,-3985,-3999,-4018,-4037,-4053,-4065,-4077,-4087,-4096,-4104,-4109,-4108,-4103,-4112,-4121,-4121,
+-4114,-4107,-4099,-4091,-4079,-4062,-4053,-4037,-4015,-3995,-3974,-3950,-3921,-3893,-3870,-3848,-3827,-3800,-3768,-3735,
+-3696,-3657,-3625,-3596,-3565,-3524,-3479,-3434,-3379,-3321,-3284,-3233,-3199,-3162,-3114,-3057,-3004,-2949,-2908,-2883,
+-2846,-2780,-2709,-2668,-2622,-2582,-2540,-2487,-2457,-2397,-2336,-2275,-2223,-2169,-2119,-2070,-2015,-1960,-1908,-1859,
+-1808,-1750,-1707,-1651,-1599,-1549,-1502,-1452,-1408,-1363,-1316,-1268,-1223,-1184,-1157,-1129,-1107,-1074,-1037,-1003,
+-978,-960,-925,-894,-861,-833,-802,-767,-732,-699,-670,-637,-598,-555,-516,-483,-445,-413,-384,-344,
+-305,-270,-242,-204,-169,-131,-94,-62,-34,-6,22,53,76,99,123,147,178,195,208,203,
+184,175,148,49,-88,-216,-201,-109,-36,13,152,305,493,647,696,737,812,856,881,892,
+859,818,749,630,539,478,424,367,308,268,234,200,182,144,112,67,15,-20,-53,-94,
+-130,-174,-220,-279,-335,-384,-436,-491,-558,-651,-760,-855,-912,-933,-955,-1003,-1045,-1040,-964,-625,
+-276,-323,-441,-667,-886,-1033,-1157,-1269,-1392,-1501,-1626,-1759,-1881,-1946,-1959,-1921,-1838,-1749,-1715,-1783,
+-1843,-1870,-1932,-2071,-2234,-2386,-2468,-2502,-2501,-2501,-2532,-2592,-2683,-2798,-2911,-2999,-3051,-3055,-3009,-3023,
+-2996,-2943,-2976,-3090,-3229,-3395,-3536,-3657,-3791,-3921,-4011,-4064,-4143,-4208,-4331,-4545,-4689,-4750,-4732,-4680,
+-4607,-4539,-4487,-4463,-4480,-4571,-4692,-4753,-4767,-4768,-4766,-4750,-4719,-4685,-4651,-4622,-4603,-4582,-4562,-4543,
+-4533,-4529,-4528,-4527,-4520,-4510,-4496,-4483,-4459,-4430,-4406,-4378,-4350,-4327,-4294,-4258,-4235,-4202,-4167,-4131,
+-4090,-4050,-4014,-3974,-3933,-3898,-3854,-3799,-3741,-3679,-3611,-3516,-3414,-3295,-3193,-3084,-3006,-2904,-2797,-2705,
+-2638,-2644,-2493,-2432,-2412,-2374,-2310,-2249,-2208,-2148,-2090,-2033,-1987,-1943,-1905,-1864,-1812,-1762,-1709,-1671,
+-1631,-1605,-1553,-1505,-1458,-1407,-1355,-1305,-1240,-1187,-1140,-1085,-1040,-978,-903,-859,-794,-747,-703,-669,
+-616,-559,-494,-431,-388,-343,-289,-231,-173,-117,-65,-7,46,97,153,212,267,325,376,433,
+486,542,598,648,697,742,799,851,906,954,1008,1062,1112,1155,1202,1248,1293,1334,1375,1408,
+1440,1464,1482,1508,1539,1556,1576,1569,1578,1600,1618,1640,1665,1699,1734,1768,1798,1822,1860,1908,
+1944,1975,2000,2034,2072,2158,2339,2562,2683,2769,2824,2827,2847,2856,2875,2878,2899,2936,2997,3062,
+3115,3178,3222,3194,3232,3332,3465,3529,3520,3520,3493,3444,3406,3343,3301,3277,3257,3239,3223,3199,
+3176,3167,3158,3137,3106,3066,3012,2964,2924,2901,2894,2909,2936,2951,2974,2969,2948,2922,2890,2852,
+2805,2779,2730,2686,2660,2627,2597,2610,2618,2598,2573,2538,2502,2467,2449,2424,2389,2403,2383,2364,
+2335,2295,2251,2230,2225,2229,2264,2312,2323,2286,2246,2230,2202,2184,2146,2111,2107,2146,2178,2200,
+2233,2254,2262,2266,2278,2289,2282,2278,2268,2268,2266,2261,2253,2263,2240,2200,2159,2120,2064,2014,
+1946,1917,1885,1845,1822,1813,1762,1716,1673,1631,1591,1555,1532,1457,1409,1362,1303,1259,1217,1194,
+1142,1094,1068,1031,979,941,894,842,807,754,711,668,631,602,588,560,492,449,415,386,
+355,326,296,274,256,242,222,195,171,157,160,145,117,106,96,62,41,14,-38,-65,
+-78,-99,-128,-184,-245,-285,-292,-318,-329,-326,-336,-321,-286,-252,-248,-184,-187,-201,-214,-223,
+-279,-336,-364,-388,-418,-448,-484,-499,-512,-546,-516,-495,-471,-438,-421,-450,-509,-567,-629,-602,
+-574,-557,-518,-413,-353,-307,-260,-307,-345,-391,-478,-608,-521,-378,-353,-444,-627,-744,-866,-941,
+-974,-997,-1051,-1089,-1139,-1175,-1193,-1217,-1261,-1366,-1475,-1547,-1625,-1731,-1803,-1869,-1928,-1966,-2005,-2025,
+-2033,-2065,-2106,-2143,-2199,-2260,-2280,-2282,-2293,-2297,-2313,-2391,-2492,-2564,-2623,-2589,-2568,-2674,-2827,-3000,
+-3145,-3309,-3477,-3651,-3867,-4034,-4153,-4284,-4349,-4393,-4516,-4587,-4635,-4672,-4697,-4720,-4725,-4732,-4781,-4715,
+-4712,-4766,-4762,-4825,-4827,-4870,-5008,-5259,-5216,-5115,-5080,-5160,-5275,-5393,-5512,-5594,-5698,-5788,-5879,-5973,
+-6041,-6143,-6238,-6311,-6354,-6443,-6530,-6615,-6697,-6781,-6863,-6945,-7027,-7111,-7190,-7276,-7360,-7444,-7531,-7611,
+-7687,-7764,-7845,-7926,-8004,-8080,-8152,-8227,-8309,-8395,-8466,-8522,-8586,-8664,-8744,-8827,-8900,-8958,-8992,-9006,
+-9057,-9077,-9076,-9077,-9099,-9161,-9169,-9170,-9232,-9331,-9390,-9426,-9468,-9510,-9531,-9522,-9485,-9397,-9309,-9283,
+-9307,-9369,-9384,-9296,-9242,-9322,-9366,-9421,-9479,-9514,-9500,-9453,-9391,-9343,-9325,-9334,-9362,-9413,-9533,-9716,
+-9907,-9951,-9841,-9777,-9715,-9638,-9562,-9485,-9405,-9332,-9250,-9159,-9081,-9004,-8926,-8845,-8788,-8751,-8706,-8637,
+-8527,-8386,-8235,-8111,-7995,-7874,-7755,-7640,-7508,-7361,-7210,-7057,-6918,-6798,-6690,-6589,-6495,-6411,-6340,-6305,
+-6305,-6326,-6359,-6351,-6231,-6147,-6111,-6156,-6287,-6413,-6122,-5649,-5513,-5344,-5185,-5030,-4900,-4800,-4723,-4631,
+-4519,-4435,-4288,-4100,-3920,-3775,-3645,-3513,-3453,-3382,-3291,-3210,-3107,-2978,-2918,-2876,-2799,-2727,-2676,-2614,
+-2559,-2497,-2412,-2339,-2271,-2176,-2087,-1987,-1887,-1782,-1668,-1599,-1528,-1405,-1369,-1302,-1255,-1168,-1053,-943,
+-832,-710,-598,-486,-369,-259,-154,-60,73,157,236,325,444,553,658,747,815,885,960,1025,
+1118,1191,1294,1408,1531,1622,1735,1852,1948,2045,2154,2256,2359,2536,2743,2867,2974,3049,3100,3155,
+3281,3462,3691,3812,3897,3951,4024,4063,4091,4156,4255,4415,4613,4774,4904,5019,5078,5144,5205,5273,
+5336,5405,5454,5478,5462,5501,5685,5739,5890,6012,6100,6081,6027,6105,6163,6292,6378,6440,6481,6444,
+6262,5580,4869,4665,4902,5195,5403,5552,5671,5751,5799,5813,5817,5809,5789,5765,5743,5728,5717,5712,
+5691,5665,5651,5641,5626,5626,5628,5628,5610,5601,5603,5617,5630,5639,5652,5711,5796,5822,5826,5801,
+5807,5803,5806,5817,5801,5789,5779,5782,5802,5852,5859,5771,5231,4994,4955,4910,4947,4995,4945,4836,
+4585,4254,3988,3831,3808,3877,3956,4031,4101,4197,4293,4390,4507,4689,4795,4927,5066,5171,5124,5080,
+5072,5108,5040,5035,5051,4977,4901,4861,4816,4774,4699,4674,4629,4600,4563,4533,4503,4460,4415,4385,
+4379,4360,4338,4307,4266,4226,4197,4178,4163,4152,4137,4106,4071,4049,4032,4003,3971,3943,3917,3871,
+3823,3767,3775,3905,4086,3947,3684,3602,3581,3564,3536,3500,3475,3454,3423,3364,3323,3350,3436,3383,
+3296,3307,3309,3331,3172,3153,3195,3112,3005,2958,2928,2934,2931,2894,2851,2810,2776,2762,2751,2729,
+2694,2703,2802,2845,2831,2737,2704,2720,2681,2575,2452,2348,2281,2272,2342,2538,2635,2544,2415,2245,
+2229,2205,2203,2184,2164,2143,2113,2077,2043,2027,2018,1989,1943,1891,1840,1795,1760,1736,1715,1670,
+1645,1611,1592,1572,1553,1561,1532,1517,1500,1486,1453,1411,1339,1325,1300,1275,1249,1232,1201,1162,
+1149,1128,1106,1104,1112,1124,1100,1132,1134,1118,1105,1093,1086,1091,1101,1116,1132,1151,1149,1133,
+1118,1095,1086,1087,1080,1064,1056,1081,1107,1073,1046,1046,1096,1103,1178,1193,1220,1256,1249,1228,
+1229,1167,1196,1176,1171,1194,1225,1241,1270,1281,1293,1304,1314,1330,1380,1433,1357,1304,1288,1285,
+1311,1291,1268,1242,1204,1172,1222,1175,1102,1088,1078,1064,1040,1009,979,948,919,920,895,908,
+872,845,836,829,812,787,758,731,707,676,641,631,611,589,573,550,531,513,489,459,
+439,429,406,388,359,330,308,276,248,208,172,140,105,67,37,18,-3,-22,-37,-49,
+-68,-89,-111,-127,-152,-170,-191,-212,-232,-254,-283,-314,-345,-374,-402,-429,-463,-494,-525,-558,
+-587,-613,-642,-674,-709,-731,-763,-795,-830,-867,-911,-955,-1004,-1049,-1091,-1140,-1172,-1222,-1266,-1324,
+-1375,-1431,-1479,-1531,-1575,-1616,-1661,-1713,-1770,-1819,-1858,-1895,-1931,-1974,-2026,-2075,-2126,-2179,-2221,-2262,
+-2310,-2352,-2393,-2436,-2489,-2544,-2595,-2644,-2692,-2738,-2790,-2835,-2867,-2898,-2924,-2957,-2996,-3039,-3085,-3128,
+-3171,-3213,-3254,-3295,-3337,-3377,-3414,-3449,-3479,-3520,-3551,-3581,-3607,-3633,-3657,-3687,-3720,-3750,-3779,-3811,
+-3841,-3864,-3885,-3907,-3924,-3940,-3958,-3973,-3992,-4014,-4024,-4038,-4048,-4059,-4068,-4073,-4077,-4072,-4083,-4094,
+-4094,-4078,-4074,-4065,-4058,-4047,-4031,-4014,-3995,-3978,-3960,-3939,-3918,-3895,-3869,-3844,-3821,-3800,-3761,-3725,
+-3697,-3659,-3624,-3591,-3561,-3530,-3492,-3449,-3395,-3329,-3288,-3259,-3217,-3171,-3138,-3099,-3046,-3003,-2942,-2891,
+-2856,-2821,-2755,-2695,-2659,-2609,-2556,-2513,-2458,-2423,-2387,-2333,-2275,-2216,-2163,-2111,-2061,-2011,-1961,-1908,
+-1854,-1807,-1751,-1707,-1661,-1601,-1555,-1504,-1458,-1409,-1368,-1324,-1279,-1239,-1216,-1195,-1161,-1123,-1085,-1061,
+-1022,-998,-960,-938,-902,-879,-844,-817,-778,-744,-708,-666,-634,-597,-559,-521,-483,-444,-412,-376,
+-336,-301,-271,-242,-209,-170,-137,-97,-61,-36,-1,30,55,87,109,135,168,194,212,224,
+242,270,285,288,253,176,50,-100,-125,-27,84,220,398,570,689,788,790,838,877,900,
+931,938,892,795,678,592,523,466,416,361,316,263,205,150,96,59,13,-49,-94,-128,
+-149,-170,-196,-235,-283,-332,-379,-425,-495,-556,-637,-728,-801,-832,-822,-796,-813,-810,-781,-673,
+-334,292,570,501,87,-380,-662,-829,-1116,-1318,-1464,-1595,-1700,-1762,-1766,-1727,-1672,-1655,-1604,-1600,
+-1654,-1711,-1786,-1841,-1941,-2117,-2290,-2366,-2328,-2282,-2263,-2299,-2414,-2549,-2697,-2806,-2841,-2894,-2987,-3008,
+-2962,-2936,-2952,-3031,-3146,-3299,-3429,-3574,-3686,-3805,-3952,-4061,-4129,-4176,-4229,-4325,-4508,-4632,-4633,-4592,
+-4530,-4472,-4428,-4405,-4411,-4436,-4534,-4637,-4691,-4721,-4733,-4722,-4713,-4698,-4669,-4637,-4602,-4579,-4558,-4540,
+-4526,-4521,-4519,-4520,-4517,-4510,-4505,-4501,-4489,-4479,-4459,-4434,-4407,-4373,-4337,-4304,-4270,-4242,-4203,-4172,
+-4126,-4083,-4047,-4000,-3944,-3890,-3851,-3801,-3755,-3708,-3662,-3616,-3546,-3482,-3389,-3275,-3198,-3100,-2998,-2932,
+-2859,-2776,-2751,-2614,-2536,-2475,-2382,-2299,-2248,-2206,-2144,-2092,-2054,-2019,-1965,-1916,-1846,-1792,-1765,-1732,
+-1682,-1642,-1612,-1556,-1510,-1456,-1408,-1347,-1285,-1213,-1161,-1104,-1049,-998,-956,-919,-874,-814,-772,-702,
+-656,-610,-570,-518,-461,-405,-350,-298,-238,-174,-121,-73,-19,29,74,130,190,240,293,349,
+406,462,519,568,615,661,710,756,807,862,918,961,1008,1057,1112,1175,1212,1247,1292,1333,
+1375,1416,1458,1488,1511,1522,1535,1559,1570,1579,1582,1601,1621,1630,1659,1690,1725,1763,1798,1836,
+1879,1921,1953,1975,1989,2018,2106,2302,2517,2645,2751,2838,2860,2858,2857,2861,2877,2915,2940,2987,
+3043,3106,3177,3264,3246,3248,3322,3437,3504,3521,3515,3479,3450,3359,3307,3264,3239,3231,3221,3203,
+3191,3181,3172,3157,3138,3110,3070,3024,2967,2922,2891,2873,2886,2904,2937,2938,2947,2949,2931,2897,
+2830,2775,2757,2720,2688,2651,2604,2589,2589,2587,2579,2558,2512,2490,2467,2447,2426,2403,2394,2384,
+2339,2298,2267,2247,2251,2248,2278,2329,2356,2354,2307,2277,2277,2257,2253,2229,2204,2196,2214,2219,
+2234,2254,2256,2251,2253,2280,2315,2326,2326,2306,2299,2299,2305,2312,2304,2252,2210,2173,2127,2076,
+2008,1958,1923,1893,1846,1839,1845,1798,1733,1689,1652,1605,1585,1572,1484,1420,1355,1299,1257,1212,
+1174,1128,1074,1036,998,953,919,884,822,759,706,661,624,584,563,540,503,435,385,345,
+318,297,268,240,217,202,188,168,142,134,114,97,72,58,52,33,0,-27,-26,-49,
+-89,-111,-148,-168,-188,-220,-278,-336,-360,-372,-383,-400,-406,-377,-329,-363,-295,-254,-241,-259,
+-292,-342,-399,-408,-417,-463,-500,-559,-582,-589,-603,-563,-523,-489,-447,-434,-462,-543,-598,-633,
+-574,-515,-537,-485,-431,-431,-397,-418,-413,-253,-304,-521,-659,-578,-495,-471,-516,-661,-769,-902,
+-965,-988,-1033,-1090,-1119,-1146,-1167,-1218,-1267,-1322,-1408,-1504,-1590,-1660,-1745,-1849,-1924,-1985,-2009,-2014,
+-1989,-1982,-2056,-2118,-2191,-2254,-2259,-2198,-2212,-2251,-2266,-2337,-2432,-2504,-2609,-2703,-2740,-2726,-2787,-2920,
+-3106,-3259,-3404,-3563,-3739,-3944,-4109,-4264,-4370,-4436,-4511,-4586,-4642,-4695,-4721,-4739,-4771,-4796,-4811,-4956,
+-4940,-4801,-4930,-4973,-4951,-4856,-4899,-5151,-5185,-5070,-5065,-5028,-5177,-5278,-5394,-5519,-5615,-5695,-5787,-5905,
+-5993,-6073,-6164,-6270,-6350,-6401,-6485,-6574,-6656,-6737,-6819,-6898,-6978,-7060,-7142,-7223,-7309,-7396,-7482,-7569,
+-7651,-7727,-7806,-7885,-7965,-8048,-8123,-8199,-8282,-8369,-8454,-8521,-8575,-8638,-8714,-8794,-8866,-8945,-9002,-9040,
+-9068,-9089,-9144,-9142,-9149,-9163,-9206,-9227,-9225,-9294,-9373,-9399,-9441,-9481,-9554,-9582,-9582,-9559,-9504,-9414,
+-9341,-9342,-9421,-9475,-9484,-9449,-9433,-9441,-9481,-9516,-9548,-9553,-9528,-9475,-9433,-9410,-9397,-9452,-9526,-9602,
+-9739,-9905,-9995,-9872,-9800,-9737,-9668,-9590,-9520,-9445,-9360,-9268,-9183,-9108,-9033,-8954,-8869,-8804,-8761,-8722,
+-8654,-8559,-8418,-8264,-8123,-8003,-7884,-7765,-7646,-7510,-7363,-7211,-7057,-6910,-6781,-6672,-6569,-6473,-6396,-6334,
+-6298,-6291,-6304,-6332,-6316,-6186,-6118,-6077,-6141,-6311,-6455,-6218,-5735,-5524,-5343,-5153,-5005,-4864,-4752,-4676,
+-4589,-4492,-4395,-4242,-4052,-3875,-3738,-3606,-3467,-3405,-3327,-3232,-3155,-3055,-2955,-2889,-2818,-2749,-2679,-2623,
+-2554,-2501,-2447,-2361,-2279,-2209,-2127,-2029,-1943,-1836,-1737,-1626,-1547,-1470,-1340,-1339,-1262,-1203,-1125,-1007,
+-889,-772,-654,-542,-441,-342,-239,-121,-36,50,143,246,354,480,596,710,814,886,956,1000,
+1110,1183,1289,1372,1479,1581,1702,1832,1934,2021,2106,2204,2320,2437,2609,2794,2983,2994,3079,3170,
+3224,3423,3540,3731,3773,3875,3936,4044,4079,4183,4236,4365,4546,4709,4855,4961,5082,5154,5223,5291,
+5353,5412,5452,5487,5508,5480,5544,5674,5782,5919,6048,6200,6113,6096,6197,6234,6337,6413,6482,6516,
+6528,6445,5946,5092,4693,4844,5158,5409,5574,5695,5789,5844,5868,5875,5874,5856,5833,5809,5791,5781,
+5772,5744,5718,5704,5702,5687,5675,5681,5680,5669,5660,5661,5666,5681,5704,5719,5784,5876,5876,5865,
+5843,5853,5857,5855,5856,5845,5835,5841,5846,5867,5894,5844,5522,5145,5268,5194,5091,5151,5221,5131,
+4989,4751,4521,4420,4386,4414,4445,4481,4517,4535,4603,4678,4753,4835,4939,5051,5134,5235,5269,5225,
+5248,5191,5111,5122,5088,5071,5031,4959,4893,4882,4895,4732,4690,4639,4589,4552,4522,4496,4460,4415,
+4401,4392,4375,4353,4319,4281,4255,4231,4211,4196,4183,4166,4140,4106,4089,4065,4031,4000,3984,3964,
+3917,3867,3813,3804,3868,3917,3839,3727,3683,3659,3631,3601,3561,3534,3493,3444,3401,3381,3408,3548,
+3665,3443,3309,3292,3319,3164,3117,3118,3160,3061,2975,2960,2963,2957,2929,2877,2822,2774,2749,2732,
+2724,2712,2723,2761,2753,2654,2613,2597,2585,2560,2516,2438,2364,2311,2305,2328,2404,2515,2531,2398,
+2311,2277,2243,2208,2198,2193,2176,2145,2117,2085,2063,2048,2027,1990,1943,1894,1852,1812,1783,1743,
+1718,1680,1655,1633,1612,1590,1593,1563,1522,1516,1489,1425,1391,1358,1350,1326,1306,1267,1254,1219,
+1192,1184,1175,1152,1129,1112,1119,1111,1107,1132,1120,1100,1083,1071,1071,1077,1085,1096,1122,1126,
+1126,1121,1099,1084,1080,1074,1060,1049,1076,1198,1103,1053,1038,1043,1060,1119,1177,1296,1340,1360,
+1333,1325,1219,1216,1212,1256,1237,1230,1306,1295,1269,1268,1288,1309,1341,1419,1538,1359,1310,1303,
+1323,1465,1405,1316,1293,1262,1222,1208,1225,1142,1102,1088,1076,1067,1052,1025,987,958,996,1050,
+1017,932,894,872,850,833,817,793,766,738,711,685,665,642,625,607,588,568,545,520,
+495,480,459,435,413,389,371,341,314,286,254,234,187,153,119,87,63,35,11,0,
+-17,-37,-59,-77,-99,-122,-141,-163,-186,-210,-231,-249,-274,-302,-332,-364,-396,-431,-465,-492,
+-525,-553,-584,-620,-651,-686,-712,-741,-776,-789,-840,-892,-939,-982,-1022,-1060,-1111,-1142,-1194,-1246,
+-1301,-1355,-1412,-1462,-1504,-1544,-1576,-1620,-1670,-1731,-1790,-1839,-1873,-1907,-1944,-1987,-2035,-2092,-2153,-2199,
+-2246,-2288,-2325,-2363,-2410,-2456,-2507,-2554,-2605,-2657,-2706,-2757,-2798,-2831,-2865,-2896,-2927,-2964,-3002,-3045,
+-3087,-3129,-3170,-3208,-3253,-3295,-3337,-3374,-3409,-3444,-3479,-3512,-3538,-3563,-3592,-3620,-3653,-3680,-3713,-3741,
+-3769,-3797,-3822,-3842,-3859,-3877,-3895,-3915,-3927,-3948,-3967,-3983,-3994,-4007,-4023,-4032,-4036,-4035,-4038,-4042,
+-4048,-4052,-4046,-4038,-4033,-4032,-4022,-4005,-3985,-3966,-3949,-3927,-3904,-3884,-3868,-3848,-3824,-3794,-3752,-3735,
+-3693,-3657,-3621,-3585,-3553,-3523,-3491,-3457,-3424,-3388,-3350,-3311,-3275,-3234,-3175,-3128,-3096,-3050,-3007,-2954,
+-2930,-2897,-2878,-2817,-2730,-2690,-2647,-2571,-2503,-2447,-2399,-2362,-2318,-2262,-2207,-2150,-2101,-2053,-2006,-1957,
+-1905,-1851,-1802,-1754,-1710,-1662,-1611,-1564,-1512,-1466,-1423,-1382,-1342,-1307,-1272,-1245,-1208,-1165,-1131,-1100,
+-1066,-1034,-1002,-964,-943,-915,-881,-846,-814,-771,-733,-696,-658,-622,-587,-553,-518,-480,-447,-410,
+-371,-336,-301,-271,-241,-210,-178,-139,-103,-68,-38,-5,28,55,84,111,142,172,188,204,
+224,264,297,322,344,358,349,280,140,-8,-34,105,284,484,668,778,821,909,919,899,
+930,974,984,965,878,750,643,575,520,469,419,371,314,233,143,68,16,-39,-107,-164,
+-190,-199,-204,-214,-240,-285,-328,-367,-416,-499,-548,-605,-670,-725,-754,-744,-710,-697,-675,-663,
+-563,-276,350,966,860,257,-144,-318,-604,-984,-1237,-1395,-1518,-1600,-1630,-1578,-1498,-1501,-1487,-1468,
+-1483,-1526,-1605,-1654,-1727,-1841,-1958,-2122,-2181,-2127,-2051,-2077,-2162,-2320,-2502,-2721,-2881,-2939,-2966,-2981,
+-3006,-2962,-2956,-3022,-3116,-3230,-3363,-3457,-3636,-3791,-3907,-4052,-4104,-4122,-4162,-4257,-4352,-4466,-4554,-4515,
+-4443,-4376,-4328,-4302,-4305,-4336,-4384,-4494,-4578,-4616,-4639,-4668,-4689,-4682,-4657,-4631,-4602,-4564,-4536,-4520,
+-4512,-4506,-4505,-4499,-4500,-4498,-4497,-4497,-4486,-4478,-4469,-4455,-4425,-4401,-4375,-4349,-4317,-4272,-4235,-4200,
+-4178,-4142,-4105,-4058,-4008,-3956,-3906,-3853,-3792,-3732,-3672,-3623,-3574,-3522,-3467,-3398,-3295,-3186,-3062,-2933,
+-2820,-2785,-2766,-2722,-2686,-2633,-2578,-2509,-2434,-2367,-2298,-2237,-2188,-2084,-2018,-1988,-1931,-1892,-1835,-1793,
+-1740,-1693,-1644,-1588,-1543,-1503,-1464,-1419,-1365,-1306,-1251,-1196,-1137,-1087,-1046,-1002,-949,-879,-826,-772,
+-709,-651,-590,-534,-489,-448,-391,-329,-281,-233,-189,-143,-81,-24,30,72,127,185,235,286,
+348,406,452,501,552,602,662,711,755,814,840,881,931,980,1021,1057,1107,1152,1209,1253,
+1298,1347,1384,1420,1455,1490,1525,1549,1559,1563,1575,1574,1574,1596,1621,1640,1659,1688,1721,1763,
+1805,1846,1889,1923,1939,1945,1982,2112,2334,2498,2627,2743,2837,2884,2862,2863,2887,2913,2946,2954,
+2990,3068,3138,3182,3259,3291,3225,3249,3370,3504,3505,3499,3479,3424,3353,3306,3246,3208,3200,3198,
+3188,3183,3186,3181,3172,3150,3119,3072,3029,2975,2921,2889,2854,2860,2865,2868,2880,2913,2922,2903,
+2853,2804,2754,2741,2705,2658,2635,2597,2589,2581,2576,2569,2537,2499,2462,2448,2439,2417,2394,2376,
+2347,2299,2255,2250,2276,2271,2289,2358,2378,2396,2391,2344,2326,2321,2304,2300,2279,2257,2257,2274,
+2273,2265,2267,2246,2237,2246,2272,2320,2349,2352,2338,2334,2340,2353,2348,2347,2291,2239,2198,2146,
+2089,2011,1940,1903,1864,1839,1838,1841,1823,1744,1701,1661,1611,1612,1553,1472,1405,1340,1273,1236,
+1203,1136,1095,1038,989,954,919,880,849,799,733,674,626,582,534,499,455,411,359,317,
+272,239,216,200,176,143,126,112,103,88,68,31,0,-3,6,14,-19,-40,-79,-104,
+-101,-123,-170,-207,-209,-206,-207,-254,-355,-392,-403,-427,-445,-470,-483,-445,-453,-389,-334,-329,
+-335,-359,-397,-440,-451,-457,-488,-555,-638,-664,-658,-665,-614,-564,-520,-480,-500,-473,-532,-603,
+-635,-577,-480,-511,-528,-594,-574,-504,-516,-474,-376,-404,-564,-723,-715,-665,-636,-631,-663,-822,
+-948,-1026,-1026,-1095,-1107,-1153,-1182,-1216,-1249,-1298,-1351,-1430,-1523,-1620,-1713,-1780,-1863,-1948,-2007,-2008,
+-2005,-2021,-2029,-2047,-2104,-2241,-2338,-2290,-2275,-2331,-2378,-2381,-2419,-2498,-2589,-2693,-2806,-2906,-2980,-3038,
+-3110,-3230,-3365,-3495,-3629,-3787,-3979,-4168,-4362,-4474,-4497,-4581,-4640,-4699,-4750,-4790,-4818,-4838,-4866,-4904,
+-5040,-5140,-5087,-5020,-4926,-4921,-4941,-4988,-5119,-5050,-4999,-5051,-5061,-5205,-5293,-5410,-5534,-5629,-5696,-5800,
+-5916,-6004,-6094,-6175,-6288,-6384,-6444,-6522,-6614,-6700,-6781,-6860,-6939,-7013,-7090,-7173,-7256,-7342,-7431,-7521,
+-7609,-7689,-7763,-7839,-7920,-8002,-8084,-8165,-8246,-8329,-8412,-8485,-8553,-8616,-8686,-8759,-8837,-8912,-8983,-9042,
+-9080,-9124,-9165,-9196,-9218,-9206,-9214,-9283,-9296,-9302,-9339,-9415,-9436,-9490,-9534,-9594,-9634,-9636,-9627,-9601,
+-9516,-9442,-9394,-9450,-9540,-9526,-9445,-9426,-9441,-9474,-9508,-9563,-9557,-9550,-9506,-9528,-9504,-9493,-9544,-9628,
+-9679,-9748,-9894,-10007,-9886,-9819,-9753,-9684,-9615,-9545,-9466,-9380,-9296,-9216,-9135,-9059,-8984,-8905,-8824,-8764,
+-8725,-8661,-8578,-8445,-8293,-8136,-8007,-7894,-7775,-7649,-7505,-7359,-7206,-7050,-6897,-6765,-6652,-6545,-6451,-6382,
+-6327,-6287,-6272,-6288,-6302,-6268,-6143,-6088,-6067,-6168,-6306,-6446,-6253,-5814,-5588,-5331,-5136,-4969,-4832,-4722,
+-4633,-4544,-4459,-4349,-4175,-3988,-3816,-3677,-3539,-3415,-3351,-3263,-3178,-3106,-3014,-2918,-2843,-2763,-2696,-2620,
+-2561,-2492,-2445,-2379,-2300,-2218,-2154,-2072,-1972,-1899,-1799,-1690,-1581,-1488,-1418,-1350,-1283,-1210,-1144,-1054,
+-951,-822,-712,-594,-487,-394,-314,-220,-121,-25,67,178,288,397,532,653,788,889,945,1002,
+1064,1155,1257,1340,1443,1554,1690,1800,1893,2004,2141,2222,2326,2457,2563,2713,2862,2970,3063,3138,
+3268,3340,3548,3589,3699,3814,3929,3940,4019,4101,4200,4321,4490,4679,4803,4937,5065,5167,5240,5304,
+5359,5404,5442,5498,5508,5512,5497,5542,5594,5850,6044,6156,6245,6146,6224,6276,6317,6359,6432,6548,
+6622,6608,6503,6149,5313,4795,4798,5117,5390,5580,5723,5817,5878,5910,5927,5929,5911,5895,5877,5859,
+5843,5826,5805,5772,5761,5756,5747,5729,5726,5722,5717,5719,5727,5721,5750,5770,5807,5846,5913,5911,
+5881,5853,5854,5886,5900,5887,5881,5892,5893,5899,5904,5923,5826,5380,5168,5398,5446,5529,5632,5625,
+5592,5383,5121,4948,4896,4883,4877,4882,4891,4897,4874,4899,4948,4999,5061,5131,5246,5340,5399,5417,
+5335,5331,5284,5203,5173,5150,5129,5064,5016,4950,4900,4898,4794,4764,4700,4613,4550,4517,4489,4463,
+4433,4415,4401,4384,4368,4344,4317,4294,4275,4253,4225,4206,4187,4170,4148,4125,4099,4071,4046,4038,
+4034,4009,3934,3874,3846,3909,3963,3837,3780,3754,3732,3703,3665,3621,3579,3535,3482,3431,3411,3457,
+3576,3767,3665,3415,3297,3226,3184,3163,3154,3201,3261,3048,3011,3034,2999,2947,2911,2843,2787,2760,
+2754,2733,2744,2777,2859,2795,2644,2595,2556,2522,2482,2466,2430,2394,2376,2373,2371,2405,2535,2632,
+2465,2422,2419,2325,2238,2224,2217,2196,2167,2142,2112,2083,2064,2050,2026,1988,1946,1901,1865,1842,
+1813,1772,1728,1690,1675,1665,1651,1670,1613,1545,1467,1430,1426,1433,1395,1382,1358,1317,1282,1265,
+1241,1213,1205,1189,1189,1178,1167,1152,1167,1125,1105,1130,1114,1091,1070,1054,1057,1057,1065,1086,
+1100,1105,1095,1088,1084,1084,1061,1045,1034,1054,1087,1092,1087,1068,1080,1098,1137,1150,1205,1246,
+1302,1274,1227,1252,1207,1235,1331,1373,1336,1383,1399,1311,1259,1270,1300,1322,1370,1429,1368,1330,
+1311,1320,1367,1379,1339,1336,1310,1270,1230,1196,1150,1118,1100,1093,1094,1089,1068,1033,998,1032,
+1162,1078,1009,966,928,883,870,855,832,807,774,743,740,712,687,668,649,632,609,584,
+557,539,519,495,471,448,424,392,371,355,321,290,262,231,202,172,141,114,80,52,
+31,13,-1,-21,-40,-61,-81,-103,-129,-155,-178,-200,-215,-240,-265,-297,-330,-362,-393,-430,
+-461,-491,-520,-545,-580,-619,-650,-681,-713,-749,-783,-824,-868,-905,-947,-986,-1024,-1068,-1117,-1165,
+-1215,-1276,-1335,-1382,-1432,-1474,-1514,-1544,-1583,-1627,-1680,-1743,-1805,-1856,-1893,-1926,-1962,-2008,-2060,-2120,
+-2180,-2228,-2270,-2307,-2342,-2382,-2424,-2468,-2512,-2558,-2610,-2663,-2708,-2747,-2786,-2822,-2859,-2899,-2934,-2971,
+-3012,-3053,-3090,-3130,-3166,-3207,-3245,-3286,-3327,-3368,-3404,-3435,-3466,-3496,-3522,-3553,-3585,-3615,-3647,-3674,
+-3701,-3733,-3760,-3782,-3800,-3821,-3836,-3855,-3873,-3886,-3904,-3922,-3940,-3955,-3969,-3977,-3989,-3998,-3999,-4003,
+-4009,-4009,-4007,-4008,-3998,-3995,-3996,-3987,-3975,-3958,-3941,-3919,-3894,-3871,-3852,-3837,-3812,-3791,-3768,-3670,
+-3690,-3666,-3631,-3591,-3559,-3533,-3504,-3470,-3438,-3406,-3364,-3308,-3274,-3241,-3168,-3112,-3028,-2979,-2985,-2953,
+-2882,-2773,-2765,-2729,-2779,-2828,-2756,-2697,-2651,-2533,-2451,-2406,-2361,-2312,-2265,-2210,-2155,-2106,-2060,-2010,
+-1963,-1907,-1854,-1806,-1757,-1714,-1671,-1622,-1576,-1527,-1484,-1448,-1411,-1363,-1322,-1284,-1235,-1213,-1171,-1146,
+-1106,-1075,-1048,-1007,-967,-945,-927,-894,-855,-817,-775,-739,-700,-662,-618,-583,-549,-515,-483,-448,
+-408,-371,-340,-305,-273,-240,-214,-177,-139,-110,-71,-43,-9,25,51,80,111,136,154,169,
+188,229,272,300,336,366,396,413,396,341,207,72,100,270,490,722,865,892,902,984,
+1019,983,1035,1045,1031,982,835,715,640,585,535,489,435,362,264,151,63,-1,-65,-139,
+-191,-203,-197,-188,-189,-206,-246,-302,-366,-409,-482,-523,-557,-589,-609,-636,-643,-627,-599,-635,
+-637,-569,-367,54,475,524,177,130,-88,-563,-967,-1228,-1379,-1463,-1526,-1530,-1418,-1371,-1340,-1353,
+-1373,-1388,-1436,-1457,-1537,-1643,-1712,-1794,-1879,-1871,-1790,-1741,-1805,-1971,-2222,-2492,-2685,-2825,-2904,-2974,
+-3028,-3043,-2972,-2983,-3076,-3204,-3349,-3556,-3769,-3949,-4075,-4173,-4223,-4228,-4212,-4233,-4304,-4359,-4427,-4460,
+-4417,-4340,-4256,-4198,-4181,-4201,-4260,-4343,-4434,-4501,-4539,-4569,-4595,-4617,-4625,-4635,-4608,-4568,-4535,-4510,
+-4489,-4477,-4478,-4480,-4492,-4498,-4498,-4499,-4495,-4489,-4481,-4473,-4457,-4431,-4407,-4380,-4346,-4317,-4283,-4256,
+-4221,-4188,-4150,-4102,-4056,-4009,-3959,-3905,-3851,-3794,-3743,-3688,-3631,-3571,-3511,-3454,-3388,-3315,-3240,-3159,
+-3087,-3000,-2908,-2832,-2754,-2691,-2633,-2567,-2499,-2420,-2340,-2233,-2123,-2022,-1916,-1900,-1857,-1790,-1757,-1710,
+-1679,-1655,-1617,-1590,-1533,-1461,-1427,-1406,-1349,-1316,-1262,-1220,-1177,-1127,-1075,-1028,-987,-936,-868,-815,
+-741,-681,-633,-547,-503,-450,-382,-323,-260,-216,-157,-123,-79,-32,24,69,115,161,213,268,
+320,372,431,479,528,573,620,672,725,779,816,867,907,956,1007,1050,1079,1116,1154,1185,
+1222,1265,1310,1374,1406,1435,1469,1499,1527,1545,1564,1569,1568,1558,1566,1587,1616,1634,1662,1698,
+1737,1776,1816,1855,1892,1916,1930,2009,2186,2353,2489,2606,2728,2835,2884,2867,2861,2898,2948,2974,
+2993,3022,3103,3152,3179,3234,3306,3249,3222,3315,3408,3444,3440,3438,3408,3345,3296,3255,3217,3206,
+3203,3189,3190,3197,3196,3187,3163,3138,3097,3044,2993,2944,2905,2859,2848,2852,2826,2828,2875,2864,
+2840,2810,2772,2747,2722,2684,2650,2643,2602,2584,2580,2567,2557,2523,2486,2440,2447,2443,2402,2376,
+2370,2330,2285,2247,2235,2263,2281,2342,2423,2434,2447,2428,2384,2370,2359,2341,2335,2318,2291,2289,
+2298,2295,2273,2273,2277,2283,2303,2316,2343,2365,2367,2363,2369,2387,2400,2397,2388,2338,2273,2218,
+2151,2090,1998,1919,1897,1855,1827,1808,1802,1789,1737,1696,1654,1616,1595,1530,1442,1388,1327,1272,
+1238,1209,1145,1078,999,940,889,855,824,797,748,702,644,596,550,496,440,389,337,297,
+257,208,158,109,103,66,27,-8,-30,-30,-18,-20,-28,-26,-28,-27,-31,-52,-81,-107,
+-112,-120,-154,-189,-231,-260,-267,-275,-300,-347,-382,-420,-451,-488,-511,-549,-528,-507,-482,-445,
+-429,-408,-409,-422,-472,-503,-501,-525,-591,-654,-730,-748,-734,-676,-621,-574,-532,-545,-491,-499,
+-585,-651,-673,-634,-603,-596,-599,-607,-615,-610,-567,-533,-552,-677,-777,-780,-787,-715,-637,-688,
+-888,-988,-1107,-1100,-1147,-1172,-1210,-1245,-1278,-1320,-1343,-1360,-1398,-1492,-1628,-1745,-1837,-1919,-1975,-2011,
+-2018,-2036,-2073,-2112,-2119,-2159,-2265,-2359,-2306,-2324,-2401,-2447,-2463,-2470,-2521,-2611,-2742,-2854,-2976,-3072,
+-3153,-3222,-3306,-3408,-3567,-3708,-3888,-4091,-4287,-4497,-4611,-4615,-4660,-4710,-4765,-4829,-4872,-4899,-4926,-4949,
+-4980,-5054,-5083,-5037,-4826,-4761,-4855,-5012,-4996,-4980,-4976,-4944,-5007,-5123,-5179,-5300,-5439,-5512,-5626,-5713,
+-5799,-5898,-6001,-6104,-6209,-6307,-6396,-6484,-6563,-6650,-6737,-6825,-6901,-6975,-7048,-7123,-7206,-7291,-7377,-7463,
+-7553,-7640,-7720,-7798,-7876,-7959,-8043,-8130,-8216,-8299,-8373,-8441,-8512,-8577,-8652,-8728,-8803,-8873,-8949,-9014,
+-9075,-9127,-9169,-9218,-9256,-9278,-9278,-9279,-9341,-9329,-9318,-9393,-9434,-9465,-9522,-9528,-9634,-9685,-9692,-9685,
+-9673,-9650,-9574,-9457,-9462,-9552,-9573,-9491,-9311,-9291,-9325,-9472,-9522,-9549,-9546,-9532,-9577,-9550,-9587,-9641,
+-9710,-9721,-9748,-9836,-9978,-9891,-9827,-9768,-9705,-9635,-9574,-9499,-9407,-9331,-9252,-9174,-9099,-9020,-8933,-8839,
+-8764,-8717,-8658,-8572,-8448,-8301,-8145,-8010,-7897,-7778,-7649,-7501,-7358,-7205,-7047,-6893,-6751,-6625,-6509,-6420,
+-6349,-6305,-6277,-6267,-6276,-6278,-6211,-6087,-6069,-6124,-6247,-6310,-6442,-6295,-5909,-5629,-5333,-5107,-4941,-4785,
+-4644,-4576,-4504,-4417,-4287,-4097,-3918,-3762,-3614,-3484,-3351,-3282,-3208,-3124,-3071,-2967,-2873,-2774,-2723,-2647,
+-2562,-2497,-2425,-2376,-2312,-2238,-2160,-2086,-2018,-1920,-1847,-1748,-1635,-1526,-1432,-1353,-1279,-1214,-1141,-1063,
+-971,-879,-762,-648,-538,-438,-351,-270,-180,-87,30,144,235,332,446,587,718,841,943,968,
+1042,1137,1224,1337,1397,1533,1621,1736,1842,1963,2104,2219,2332,2439,2558,2677,2821,3000,3105,3099,
+3186,3358,3439,3558,3631,3718,3814,3890,3960,4049,4145,4263,4414,4609,4782,4903,5062,5137,5187,5261,
+5303,5314,5373,5453,5490,5511,5544,5495,5467,5617,5893,6088,6209,6213,6214,6308,6328,6426,6485,6444,
+6500,6593,6693,6613,6355,5547,4930,4774,5059,5376,5595,5747,5848,5912,5949,5971,5978,5971,5951,5937,
+5925,5908,5886,5867,5838,5819,5811,5805,5781,5774,5771,5770,5782,5783,5804,5813,5856,5865,5908,5971,
+5919,5876,5851,5832,5845,5916,5921,5922,5941,5948,5951,5976,5988,5840,5382,5283,5530,5638,5881,5964,
+5869,5876,5684,5414,5275,5224,5208,5204,5194,5182,5150,5102,5093,5121,5161,5209,5264,5327,5409,5518,
+5578,5475,5437,5396,5294,5240,5180,5124,5086,5052,5004,4935,4916,5057,4944,4785,4635,4545,4516,4495,
+4490,4454,4428,4405,4392,4385,4375,4360,4343,4325,4293,4259,4235,4212,4188,4171,4150,4127,4107,4095,
+4095,4098,4066,4007,3948,3911,3967,4004,3874,3842,3821,3799,3768,3729,3684,3631,3581,3520,3462,3437,
+3484,3555,3652,3663,3452,3329,3278,3269,3338,3307,3294,3397,3256,3112,3152,3042,2982,2913,2864,2801,
+2768,2753,2754,2825,2939,2814,2723,2663,2612,2552,2513,2481,2469,2456,2447,2511,2537,2515,2501,2581,
+2654,2437,2366,2408,2360,2266,2240,2222,2199,2172,2148,2127,2101,2074,2063,2053,2026,1989,1946,1916,
+1885,1868,1825,1782,1744,1705,1685,1674,1675,1636,1555,1516,1530,1526,1522,1474,1407,1365,1323,1295,
+1266,1256,1223,1219,1207,1200,1207,1197,1190,1191,1185,1147,1104,1105,1102,1053,1037,1044,1059,1052,
+1061,1078,1087,1082,1080,1071,1059,1049,1034,1024,1036,1060,1096,1172,1148,1167,1177,1160,1155,1166,
+1202,1236,1235,1216,1217,1210,1211,1227,1314,1265,1304,1344,1315,1325,1344,1422,1381,1423,1536,1482,
+1346,1305,1306,1342,1374,1377,1387,1336,1296,1266,1232,1196,1150,1118,1113,1125,1118,1100,1071,1042,
+1030,1047,1014,1019,988,962,923,908,889,868,843,816,784,778,750,724,702,684,662,639,
+613,593,573,558,539,515,490,461,442,420,387,358,332,306,276,250,217,185,157,126,
+90,66,46,27,12,-10,-28,-49,-68,-95,-120,-142,-162,-182,-210,-230,-259,-286,-316,-349,
+-389,-426,-457,-487,-513,-547,-587,-623,-659,-698,-730,-767,-803,-842,-886,-919,-957,-990,-1032,-1085,
+-1143,-1199,-1257,-1311,-1360,-1404,-1444,-1483,-1515,-1553,-1597,-1647,-1700,-1758,-1814,-1864,-1909,-1949,-1985,-2035,
+-2092,-2150,-2202,-2251,-2291,-2323,-2354,-2391,-2429,-2472,-2517,-2567,-2620,-2666,-2704,-2743,-2785,-2825,-2868,-2906,
+-2945,-2983,-3020,-3057,-3095,-3128,-3163,-3197,-3236,-3278,-3317,-3351,-3386,-3417,-3455,-3489,-3516,-3547,-3581,-3611,
+-3636,-3667,-3696,-3721,-3742,-3762,-3781,-3797,-3818,-3832,-3847,-3864,-3882,-3901,-3917,-3925,-3936,-3945,-3953,-3964,
+-3972,-3976,-3974,-3968,-3963,-3954,-3950,-3949,-3946,-3934,-3923,-3906,-3884,-3862,-3840,-3814,-3796,-3774,-3750,-3727,
+-3700,-3650,-3617,-3614,-3586,-3554,-3513,-3478,-3447,-3411,-3373,-3340,-3304,-3248,-3190,-3174,-3153,-3095,-3027,-2939,
+-2841,-2808,-2780,-2710,-2711,-2665,-2623,-2563,-2497,-2462,-2574,-2481,-2416,-2368,-2345,-2306,-2251,-2185,-2120,-2069,
+-2019,-1957,-1901,-1861,-1820,-1775,-1720,-1679,-1641,-1601,-1551,-1501,-1455,-1408,-1365,-1326,-1281,-1239,-1232,-1185,
+-1150,-1117,-1085,-1050,-1008,-979,-957,-925,-892,-860,-818,-776,-741,-707,-667,-629,-586,-545,-514,-482,
+-445,-409,-373,-343,-308,-277,-245,-210,-182,-145,-110,-84,-54,-15,14,41,72,106,120,136,
+159,187,237,274,306,341,374,410,434,456,450,394,275,167,241,451,710,948,1021,1006,
+1021,1138,1144,1250,1219,1154,1089,961,826,728,673,622,557,493,398,287,175,94,31,-27,
+-87,-127,-132,-113,-90,-91,-116,-144,-204,-296,-383,-429,-471,-483,-457,-426,-459,-486,-496,-508,
+-551,-610,-618,-460,-213,105,137,108,330,-85,-660,-1030,-1254,-1380,-1452,-1488,-1464,-1318,-1279,-1267,
+-1240,-1231,-1249,-1305,-1356,-1461,-1474,-1533,-1641,-1727,-1707,-1655,-1699,-1840,-1978,-2202,-2392,-2566,-2718,-2847,
+-2912,-2929,-2911,-2896,-2973,-3091,-3254,-3512,-3763,-4007,-4215,-4323,-4399,-4396,-4342,-4284,-4259,-4274,-4282,-4306,
+-4332,-4324,-4271,-4188,-4114,-4092,-4115,-4180,-4275,-4358,-4424,-4468,-4500,-4529,-4561,-4578,-4600,-4580,-4564,-4529,
+-4481,-4461,-4458,-4464,-4470,-4481,-4490,-4490,-4490,-4490,-4488,-4483,-4473,-4458,-4435,-4414,-4385,-4352,-4322,-4286,
+-4252,-4215,-4174,-4137,-4099,-4057,-4012,-3961,-3911,-3864,-3805,-3747,-3685,-3634,-3578,-3528,-3478,-3409,-3343,-3274,
+-3187,-3112,-3024,-2954,-2871,-2804,-2735,-2664,-2585,-2512,-2428,-2345,-2234,-2139,-2043,-1963,-1917,-1792,-1706,-1678,
+-1646,-1620,-1569,-1524,-1477,-1426,-1377,-1329,-1286,-1244,-1218,-1191,-1155,-1099,-1047,-998,-944,-897,-848,-795,
+-745,-692,-639,-571,-503,-435,-387,-339,-312,-280,-234,-172,-109,-55,-9,34,89,144,196,235,
+303,348,385,428,472,526,573,616,672,722,765,814,856,904,948,987,1034,1069,1099,1125,
+1157,1191,1236,1278,1322,1377,1431,1480,1515,1530,1533,1539,1551,1561,1565,1574,1567,1575,1607,1644,
+1691,1733,1777,1811,1847,1887,1919,1940,2027,2222,2363,2475,2586,2704,2818,2882,2886,2877,2902,2971,
+3018,3062,3111,3121,3129,3171,3212,3312,3356,3213,3255,3313,3362,3334,3353,3373,3326,3299,3286,3259,
+3229,3213,3207,3209,3218,3221,3215,3196,3172,3126,3074,3019,2976,2931,2882,2858,2859,2831,2834,2833,
+2826,2808,2783,2750,2737,2716,2689,2671,2681,2628,2593,2581,2558,2533,2490,2450,2447,2449,2419,2387,
+2370,2373,2322,2262,2231,2235,2272,2303,2372,2434,2483,2485,2459,2431,2408,2384,2367,2360,2350,2319,
+2317,2309,2295,2279,2275,2331,2395,2433,2429,2413,2385,2369,2373,2391,2403,2414,2443,2438,2375,2292,
+2220,2150,2079,1969,1905,1882,1860,1820,1786,1746,1769,1730,1677,1633,1616,1565,1504,1417,1381,1320,
+1279,1245,1189,1131,1069,996,923,866,817,780,739,682,642,590,551,512,456,393,353,292,
+247,206,149,97,33,-7,-48,-86,-102,-107,-89,-40,-16,-27,-39,-49,-58,-65,-90,-112,
+-124,-132,-147,-176,-212,-248,-271,-297,-336,-388,-407,-398,-421,-455,-513,-548,-591,-593,-567,-560,
+-543,-506,-489,-467,-471,-519,-552,-547,-568,-606,-652,-716,-767,-779,-745,-678,-622,-593,-614,-536,
+-513,-563,-624,-741,-742,-670,-561,-545,-549,-545,-670,-721,-673,-746,-731,-765,-812,-806,-756,-709,
+-782,-955,-1071,-1149,-1138,-1173,-1224,-1256,-1285,-1316,-1342,-1378,-1405,-1425,-1491,-1601,-1689,-1772,-1861,-1925,
+-1939,-1917,-1971,-2013,-2113,-2124,-2162,-2256,-2324,-2342,-2346,-2390,-2449,-2492,-2529,-2568,-2657,-2784,-2906,-3004,
+-3090,-3166,-3255,-3352,-3475,-3648,-3807,-3995,-4199,-4385,-4622,-4724,-4748,-4790,-4820,-4854,-4899,-4949,-4987,-5020,
+-5041,-5067,-5094,-5099,-5079,-5050,-5031,-5036,-5040,-5004,-4970,-5040,-5035,-5025,-5153,-5203,-5331,-5432,-5498,-5624,
+-5728,-5820,-5889,-6009,-6100,-6209,-6315,-6397,-6505,-6589,-6674,-6775,-6858,-6939,-7015,-7086,-7163,-7239,-7323,-7406,
+-7495,-7587,-7672,-7754,-7834,-7915,-8000,-8091,-8180,-8263,-8341,-8406,-8472,-8545,-8613,-8686,-8760,-8835,-8903,-8976,
+-9042,-9107,-9169,-9220,-9272,-9303,-9328,-9341,-9358,-9375,-9299,-9360,-9431,-9488,-9524,-9572,-9591,-9679,-9724,-9741,
+-9735,-9732,-9727,-9640,-9516,-9486,-9535,-9579,-9561,-9406,-9359,-9477,-9536,-9594,-9598,-9588,-9562,-9550,-9570,-9611,
+-9677,-9731,-9733,-9736,-9757,-9907,-9877,-9829,-9781,-9724,-9658,-9600,-9533,-9451,-9368,-9291,-9213,-9134,-9046,-8948,
+-8846,-8768,-8709,-8642,-8542,-8432,-8294,-8145,-8006,-7891,-7769,-7642,-7502,-7364,-7219,-7057,-6897,-6748,-6606,-6482,
+-6381,-6307,-6264,-6257,-6258,-6264,-6258,-6163,-6066,-6066,-6140,-6275,-6287,-6391,-6324,-5996,-5643,-5280,-5083,-4911,
+-4716,-4584,-4547,-4459,-4368,-4225,-4028,-3846,-3701,-3576,-3429,-3278,-3213,-3138,-3055,-3008,-2878,-2799,-2729,-2658,
+-2588,-2511,-2427,-2367,-2313,-2259,-2178,-2102,-2034,-1959,-1856,-1784,-1698,-1586,-1477,-1374,-1291,-1214,-1139,-1063,
+-980,-890,-798,-695,-586,-484,-390,-320,-224,-123,-14,89,200,293,390,521,657,781,893,962,
+1011,1108,1183,1253,1350,1469,1617,1697,1799,1945,2058,2202,2334,2448,2521,2609,2744,2892,3001,3114,
+3177,3277,3401,3537,3585,3689,3742,3825,3892,3986,4082,4205,4335,4519,4720,4878,5015,5107,5163,5182,
+5179,5183,5259,5348,5447,5514,5605,5613,5370,5390,5748,6078,6215,6339,6222,6311,6319,6366,6442,6477,
+6342,6391,6554,6721,6741,6558,5860,5126,4807,5020,5347,5590,5760,5883,5956,6000,6016,6020,6021,6013,
+6001,5985,5965,5943,5922,5894,5871,5867,5855,5853,5837,5832,5834,5838,5853,5865,5896,5905,5935,5985,
+6029,5969,5946,5946,5994,5968,5952,5969,5988,5987,5993,6011,6027,6063,5988,5443,5442,5671,5800,6034,
+6162,6049,6038,5940,5687,5557,5519,5499,5458,5413,5380,5321,5255,5226,5240,5263,5305,5343,5377,5439,
+5553,5616,5534,5446,5478,5371,5282,5219,5191,5149,5078,5064,5042,5071,5224,5075,4804,4634,4564,4546,
+4542,4526,4496,4457,4417,4406,4408,4411,4411,4409,4386,4350,4315,4279,4243,4212,4191,4175,4164,4151,
+4144,4156,4151,4120,4073,4023,3996,4033,3951,3917,3900,3883,3862,3827,3785,3741,3689,3636,3578,3525,
+3500,3531,3588,3743,3661,3527,3394,3327,3322,3393,3476,3351,3416,3286,3066,3039,3019,2983,2936,2891,
+2816,2776,2770,2781,2837,2978,2808,2721,2667,2632,2589,2557,2531,2516,2484,2478,2563,2850,2777,2630,
+2527,2455,2376,2349,2352,2294,2263,2236,2213,2196,2176,2154,2136,2111,2084,2075,2072,2045,2007,1974,
+1939,1903,1894,1859,1815,1778,1757,1744,1687,1624,1609,1567,1524,1523,1505,1521,1573,1453,1378,1329,
+1317,1285,1260,1241,1216,1224,1216,1219,1218,1213,1200,1196,1197,1151,1110,1099,1084,1057,1048,1057,
+1047,1050,1063,1072,1068,1067,1062,1052,1041,1021,1013,1026,1047,1076,1113,1244,1269,1212,1166,1170,
+1175,1211,1250,1266,1247,1238,1236,1228,1222,1235,1228,1238,1253,1248,1282,1326,1365,1395,1401,1579,
+1621,1439,1356,1316,1336,1367,1393,1397,1367,1320,1292,1283,1350,1238,1158,1137,1139,1141,1135,1116,
+1085,1054,1043,1033,1013,1006,996,957,943,923,898,875,851,824,811,781,755,727,703,690,
+662,638,622,607,594,582,563,540,508,479,449,422,397,373,347,321,288,253,229,200,
+169,139,113,89,68,45,25,5,-15,-39,-62,-84,-106,-127,-154,-172,-198,-220,-251,-282,
+-316,-350,-386,-423,-458,-489,-527,-559,-599,-637,-673,-704,-736,-777,-814,-857,-898,-935,-968,-1009,
+-1060,-1115,-1166,-1218,-1268,-1315,-1362,-1407,-1447,-1485,-1526,-1573,-1620,-1667,-1713,-1761,-1819,-1870,-1920,-1967,
+-2010,-2060,-2112,-2160,-2214,-2266,-2305,-2332,-2364,-2401,-2439,-2484,-2535,-2587,-2632,-2673,-2711,-2748,-2787,-2827,
+-2863,-2903,-2944,-2981,-3019,-3060,-3102,-3134,-3162,-3199,-3236,-3271,-3306,-3343,-3383,-3415,-3445,-3473,-3502,-3536,
+-3567,-3593,-3626,-3654,-3682,-3700,-3719,-3739,-3760,-3780,-3796,-3811,-3823,-3835,-3857,-3877,-3889,-3900,-3907,-3916,
+-3924,-3929,-3930,-3929,-3929,-3925,-3919,-3909,-3902,-3898,-3890,-3876,-3860,-3846,-3831,-3807,-3790,-3761,-3738,-3725,
+-3709,-3694,-3673,-3632,-3596,-3566,-3523,-3491,-3454,-3428,-3385,-3341,-3312,-3272,-3221,-3162,-3146,-3114,-3074,-3030,
+-2980,-2923,-2889,-2827,-2766,-2700,-2616,-2612,-2584,-2535,-2487,-2433,-2454,-2373,-2316,-2283,-2251,-2204,-2155,-2105,
+-2061,-2005,-1938,-1886,-1838,-1803,-1764,-1722,-1680,-1631,-1588,-1541,-1495,-1454,-1411,-1370,-1330,-1293,-1248,-1215,
+-1183,-1145,-1117,-1084,-1045,-1019,-987,-959,-920,-889,-856,-816,-780,-747,-703,-662,-626,-589,-550,-507,
+-469,-441,-412,-382,-346,-315,-284,-251,-220,-185,-148,-118,-86,-52,-27,0,33,60,88,107,
+143,163,199,235,272,308,340,377,413,453,483,496,480,431,335,276,402,630,919,1101,
+1105,1058,1062,1182,1299,1441,1477,1308,1145,1000,851,761,686,613,530,426,320,235,196,152,
+115,91,61,69,105,91,65,27,-25,-70,-168,-305,-378,-409,-391,-283,-231,-261,-314,-349,
+-380,-440,-560,-626,-550,-411,-187,-80,1,202,-317,-793,-1090,-1259,-1385,-1450,-1486,-1451,-1296,-1179,
+-1128,-1042,-1088,-1144,-1253,-1374,-1379,-1418,-1508,-1569,-1579,-1598,-1628,-1670,-1777,-1883,-2031,-2200,-2330,-2504,
+-2685,-2790,-2876,-2918,-2927,-3014,-3260,-3471,-3732,-4007,-4207,-4360,-4436,-4451,-4419,-4356,-4292,-4230,-4194,-4152,
+-4133,-4145,-4173,-4171,-4133,-4078,-4052,-4068,-4112,-4175,-4244,-4323,-4382,-4425,-4468,-4505,-4543,-4574,-4564,-4521,
+-4508,-4489,-4445,-4441,-4447,-4459,-4471,-4475,-4480,-4480,-4480,-4478,-4477,-4464,-4448,-4432,-4415,-4386,-4363,-4333,
+-4293,-4259,-4219,-4181,-4138,-4099,-4058,-4021,-3979,-3934,-3887,-3830,-3773,-3713,-3646,-3588,-3523,-3471,-3423,-3358,
+-3290,-3218,-3142,-3038,-2955,-2878,-2791,-2692,-2613,-2527,-2443,-2372,-2300,-2203,-2107,-2021,-1928,-1874,-1845,-1760,
+-1716,-1690,-1653,-1594,-1548,-1491,-1435,-1378,-1327,-1278,-1230,-1173,-1128,-1071,-1011,-954,-905,-862,-815,-766,
+-731,-682,-646,-602,-554,-511,-467,-420,-373,-317,-250,-192,-143,-90,-37,17,76,128,173,208,
+253,305,348,385,429,476,523,573,620,662,716,762,813,860,911,954,994,1033,1083,1108,
+1132,1160,1194,1231,1270,1310,1351,1382,1413,1485,1537,1558,1589,1583,1567,1568,1582,1597,1596,1626,
+1693,1734,1761,1802,1846,1875,1899,1941,1973,2061,2248,2359,2456,2559,2671,2791,2869,2907,2921,2937,
+3006,3081,3118,3175,3147,3139,3164,3242,3286,3385,3234,3162,3222,3258,3281,3324,3340,3321,3315,3317,
+3293,3274,3252,3236,3248,3263,3270,3265,3249,3215,3163,3107,3051,3002,2956,2904,2888,2873,2848,2843,
+2818,2807,2789,2764,2728,2716,2711,2729,2685,2676,2639,2606,2578,2551,2526,2497,2457,2449,2448,2441,
+2413,2373,2378,2307,2262,2240,2263,2314,2347,2404,2457,2493,2485,2477,2466,2451,2413,2386,2379,2368,
+2346,2339,2319,2290,2275,2288,2377,2512,2582,2560,2482,2404,2359,2360,2378,2399,2410,2454,2465,2394,
+2302,2212,2147,2034,1928,1884,1845,1858,1824,1784,1699,1681,1663,1626,1615,1552,1509,1454,1418,1368,
+1310,1280,1240,1175,1107,1056,1008,936,866,815,765,693,619,562,526,494,463,409,360,317,
+239,181,144,82,26,-24,-69,-109,-122,-88,-95,-87,-57,-57,-77,-87,-74,-86,-107,-146,
+-160,-180,-181,-180,-197,-224,-261,-303,-343,-382,-427,-465,-470,-464,-483,-537,-589,-635,-651,-645,
+-637,-625,-588,-578,-558,-550,-565,-577,-592,-640,-640,-671,-748,-794,-820,-813,-757,-684,-623,-649,
+-575,-533,-508,-534,-638,-721,-720,-617,-611,-612,-549,-592,-661,-705,-754,-737,-678,-695,-719,-681,
+-711,-781,-1030,-1120,-1177,-1213,-1206,-1248,-1274,-1293,-1323,-1351,-1363,-1384,-1429,-1492,-1581,-1663,-1754,-1824,
+-1878,-1881,-1896,-1963,-2033,-2098,-2162,-2215,-2267,-2332,-2363,-2384,-2419,-2474,-2537,-2587,-2639,-2727,-2854,-2967,
+-3049,-3126,-3219,-3329,-3446,-3577,-3756,-3925,-4106,-4314,-4557,-4732,-4789,-4834,-4912,-4951,-4955,-4969,-5013,-5060,
+-5105,-5131,-5154,-5176,-5150,-5100,-5154,-5142,-5070,-4997,-5009,-5053,-5024,-5085,-5160,-5184,-5204,-5355,-5402,-5511,
+-5634,-5715,-5805,-5907,-6011,-6123,-6222,-6307,-6407,-6503,-6615,-6710,-6808,-6886,-6971,-7045,-7119,-7188,-7271,-7359,
+-7443,-7530,-7619,-7706,-7792,-7871,-7953,-8038,-8125,-8214,-8291,-8363,-8430,-8500,-8571,-8644,-8714,-8789,-8864,-8931,
+-8998,-9065,-9132,-9198,-9252,-9303,-9342,-9370,-9391,-9396,-9421,-9413,-9428,-9464,-9496,-9554,-9609,-9653,-9724,-9767,
+-9792,-9767,-9794,-9778,-9707,-9562,-9510,-9510,-9561,-9568,-9457,-9463,-9521,-9600,-9640,-9629,-9599,-9573,-9595,-9626,
+-9628,-9690,-9745,-9721,-9711,-9713,-9835,-9858,-9827,-9793,-9742,-9683,-9624,-9562,-9486,-9403,-9326,-9249,-9164,-9068,
+-8959,-8856,-8767,-8702,-8632,-8540,-8427,-8290,-8142,-7997,-7878,-7759,-7631,-7499,-7366,-7224,-7069,-6904,-6744,-6589,
+-6459,-6353,-6278,-6236,-6229,-6236,-6249,-6229,-6138,-6035,-6008,-6070,-6197,-6199,-6302,-6282,-5997,-5614,-5298,-5055,
+-4825,-4630,-4556,-4506,-4406,-4313,-4165,-3963,-3787,-3649,-3524,-3380,-3221,-3141,-3059,-2994,-2924,-2813,-2710,-2656,
+-2590,-2524,-2458,-2365,-2295,-2249,-2184,-2120,-2044,-1971,-1897,-1787,-1706,-1637,-1535,-1428,-1318,-1235,-1158,-1085,
+-1006,-910,-825,-737,-635,-529,-430,-344,-269,-175,-70,35,142,253,354,461,613,737,851,956,
+992,1054,1141,1207,1319,1425,1536,1652,1777,1917,2007,2140,2270,2407,2537,2585,2668,2792,2919,3086,
+3107,3178,3345,3450,3601,3637,3739,3806,3920,3924,4005,4113,4249,4416,4649,4833,5013,5044,5143,5064,
+5049,5091,5146,5269,5390,5495,5600,5690,5464,5294,5374,5761,6198,6340,6379,6276,6337,6324,6421,6468,
+6377,6202,6225,6441,6709,6817,6725,6191,5374,4907,4990,5326,5592,5775,5905,5987,6040,6063,6066,6063,
+6059,6052,6040,6016,5995,5970,5946,5927,5915,5908,5909,5905,5899,5897,5911,5921,5951,5939,5969,6002,
+6051,6099,6103,6073,6038,6077,6063,6045,6027,6024,6042,6056,6081,6112,6126,6000,5483,5599,5808,5940,
+6113,6143,6098,6067,6147,5949,5850,5808,5778,5705,5626,5565,5469,5383,5332,5320,5329,5354,5389,5408,
+5418,5507,5556,5479,5475,5488,5448,5364,5289,5287,5210,5118,5140,5184,5228,5375,5155,4812,4659,4612,
+4618,4641,4622,4581,4514,4468,4435,4438,4455,4481,4489,4467,4435,4393,4343,4292,4248,4211,4205,4203,
+4197,4203,4206,4198,4173,4135,4092,4060,4044,4006,3980,3961,3938,3907,3871,3829,3789,3738,3686,3639,
+3579,3524,3516,3604,3756,3703,3724,3529,3362,3332,3374,3368,3289,3257,3207,3047,3012,3000,2984,2949,
+2900,2847,2809,2800,2805,2820,2819,2802,2773,2745,2726,2702,2675,2634,2573,2514,2494,2557,2719,2801,
+2716,2645,2552,2462,2386,2362,2294,2260,2229,2202,2187,2178,2166,2148,2123,2107,2098,2085,2047,2007,
+1985,1964,1945,1935,1878,1851,1809,1778,1743,1716,1688,1649,1629,1591,1531,1500,1500,1471,1454,1414,
+1367,1324,1308,1266,1247,1223,1212,1225,1232,1230,1229,1213,1196,1198,1182,1166,1120,1109,1079,1067,
+1059,1049,1042,1043,1051,1055,1055,1049,1045,1034,1018,1009,1024,1042,1063,1081,1180,1210,1177,1165,
+1173,1183,1209,1239,1263,1252,1253,1249,1247,1246,1243,1256,1271,1278,1280,1294,1300,1313,1319,1338,
+1453,1611,1622,1514,1391,1348,1391,1393,1400,1388,1338,1291,1302,1443,1359,1235,1174,1173,1193,1182,
+1157,1125,1096,1084,1119,1079,1025,999,981,965,948,929,909,883,865,856,820,802,764,735,
+711,690,666,657,657,622,616,611,581,554,522,497,470,447,422,395,369,350,325,284,
+253,226,195,164,139,113,91,67,47,26,7,-17,-45,-66,-92,-115,-132,-164,-195,-226,
+-256,-289,-316,-348,-384,-416,-454,-487,-524,-568,-607,-641,-679,-718,-754,-793,-832,-873,-909,-948,
+-995,-1045,-1096,-1144,-1185,-1229,-1274,-1319,-1369,-1416,-1456,-1500,-1548,-1590,-1630,-1671,-1718,-1769,-1821,-1879,
+-1938,-1985,-2032,-2076,-2116,-2166,-2219,-2269,-2312,-2344,-2380,-2419,-2464,-2508,-2558,-2604,-2641,-2675,-2713,-2751,
+-2787,-2825,-2861,-2900,-2938,-2975,-3017,-3061,-3095,-3130,-3156,-3192,-3222,-3261,-3296,-3330,-3365,-3396,-3425,-3455,
+-3486,-3519,-3548,-3578,-3607,-3632,-3653,-3672,-3692,-3717,-3735,-3755,-3770,-3780,-3791,-3813,-3832,-3847,-3857,-3869,
+-3878,-3884,-3881,-3880,-3877,-3880,-3878,-3877,-3872,-3859,-3849,-3840,-3832,-3816,-3805,-3796,-3787,-3773,-3751,-3734,
+-3709,-3667,-3629,-3605,-3575,-3559,-3498,-3496,-3469,-3433,-3394,-3358,-3323,-3286,-3244,-3206,-3163,-3121,-3074,-3036,
+-3005,-2951,-2918,-2870,-2819,-2762,-2715,-2659,-2621,-2572,-2531,-2498,-2440,-2405,-2372,-2324,-2271,-2229,-2182,-2136,
+-2092,-2045,-1993,-1944,-1896,-1835,-1802,-1754,-1719,-1674,-1629,-1589,-1541,-1501,-1458,-1419,-1377,-1340,-1301,-1256,
+-1219,-1181,-1140,-1108,-1076,-1046,-1013,-988,-952,-936,-889,-849,-815,-774,-739,-702,-662,-618,-580,-545,
+-511,-479,-443,-413,-379,-354,-323,-289,-252,-220,-190,-154,-126,-89,-64,-33,-4,21,51,76,
+104,129,166,201,236,271,304,339,386,416,460,491,519,531,516,481,420,407,549,753,
+920,1039,1049,1023,1148,1322,1569,1641,1583,1439,1152,1004,878,785,699,596,484,395,394,377,
+355,333,362,435,564,569,468,401,275,151,62,-32,-190,-307,-346,-299,-154,-91,-122,-187,
+-229,-250,-396,-576,-643,-603,-485,-351,-233,-127,-80,-563,-883,-1115,-1272,-1386,-1442,-1472,-1454,-1289,
+-1113,-902,-767,-922,-1013,-1213,-1349,-1399,-1450,-1494,-1525,-1533,-1576,-1643,-1708,-1799,-1882,-1976,-2110,-2233,
+-2366,-2516,-2647,-2784,-2922,-3041,-3189,-3408,-3638,-3851,-4033,-4175,-4270,-4324,-4326,-4282,-4213,-4145,-4092,-4039,
+-3983,-3950,-3937,-3963,-4008,-4043,-4047,-4039,-4047,-4069,-4088,-4140,-4206,-4267,-4318,-4368,-4414,-4456,-4514,-4547,
+-4528,-4500,-4496,-4498,-4484,-4470,-4457,-4454,-4452,-4456,-4456,-4457,-4459,-4458,-4452,-4440,-4422,-4401,-4376,-4353,
+-4324,-4290,-4249,-4208,-4171,-4125,-4084,-4047,-4005,-3965,-3921,-3881,-3834,-3785,-3734,-3678,-3618,-3553,-3488,-3422,
+-3353,-3277,-3211,-3135,-3067,-2970,-2872,-2786,-2715,-2621,-2547,-2454,-2387,-2311,-2216,-2123,-2009,-1912,-1814,-1791,
+-1730,-1655,-1615,-1575,-1523,-1476,-1419,-1366,-1301,-1260,-1219,-1174,-1118,-1078,-1037,-997,-950,-905,-862,-815,
+-766,-717,-669,-618,-569,-534,-486,-422,-371,-326,-275,-221,-184,-138,-84,-29,20,58,103,145,
+198,240,287,330,377,424,461,510,559,599,650,698,742,794,845,894,941,986,1030,1072,
+1113,1143,1176,1211,1254,1288,1320,1357,1388,1410,1443,1468,1526,1616,1647,1645,1631,1631,1659,1678,
+1700,1717,1748,1785,1835,1886,1913,1933,1986,2015,2085,2249,2350,2428,2523,2627,2738,2824,2887,2933,
+2967,3015,3092,3158,3174,3144,3149,3183,3237,3286,3345,3215,3132,3132,3171,3243,3280,3315,3322,3328,
+3348,3343,3322,3314,3307,3312,3335,3345,3334,3306,3252,3186,3122,3076,3032,2976,2926,2918,2893,2860,
+2836,2827,2813,2784,2750,2719,2716,2715,2724,2677,2675,2644,2619,2578,2551,2542,2504,2464,2452,2459,
+2456,2438,2378,2391,2314,2275,2267,2289,2340,2393,2450,2485,2502,2492,2486,2482,2472,2438,2409,2405,
+2392,2371,2368,2335,2296,2280,2283,2368,2528,2609,2575,2488,2398,2353,2337,2355,2351,2377,2452,2477,
+2419,2308,2185,2109,1988,1899,1861,1838,1812,1772,1723,1667,1637,1634,1598,1552,1521,1485,1457,1439,
+1349,1293,1265,1234,1176,1097,1040,982,910,835,774,708,646,589,527,482,455,427,360,283,
+203,129,78,52,8,-36,-62,-94,-141,-125,-88,-102,-113,-107,-103,-114,-104,-103,-114,-149,
+-181,-207,-215,-215,-212,-220,-243,-285,-332,-387,-438,-485,-510,-511,-506,-520,-566,-603,-662,-697,
+-713,-709,-700,-665,-632,-621,-624,-605,-608,-649,-699,-711,-707,-752,-825,-849,-863,-818,-730,-627,
+-608,-574,-556,-543,-547,-548,-656,-740,-731,-708,-685,-574,-570,-647,-725,-723,-705,-727,-687,-654,
+-649,-710,-885,-1095,-1183,-1233,-1225,-1244,-1228,-1226,-1255,-1281,-1300,-1358,-1405,-1476,-1543,-1599,-1681,-1753,
+-1828,-1896,-1929,-1979,-2041,-2107,-2179,-2252,-2328,-2400,-2448,-2467,-2480,-2527,-2588,-2633,-2670,-2717,-2793,-2913,
+-3026,-3106,-3186,-3293,-3408,-3542,-3680,-3875,-4048,-4234,-4451,-4648,-4792,-4852,-4915,-4983,-5032,-5025,-5036,-5078,
+-5121,-5165,-5195,-5215,-5234,-5213,-5139,-5116,-5074,-5031,-4946,-5016,-5060,-5008,-5070,-5172,-5200,-5280,-5381,-5414,
+-5534,-5643,-5704,-5814,-5891,-6006,-6095,-6203,-6312,-6428,-6531,-6628,-6724,-6810,-6894,-6993,-7070,-7155,-7217,-7304,
+-7395,-7484,-7575,-7662,-7748,-7823,-7900,-7982,-8066,-8156,-8239,-8321,-8393,-8460,-8530,-8600,-8672,-8750,-8826,-8896,
+-8959,-9027,-9093,-9163,-9226,-9279,-9314,-9370,-9411,-9436,-9450,-9447,-9469,-9468,-9480,-9535,-9606,-9638,-9707,-9763,
+-9811,-9845,-9821,-9851,-9829,-9748,-9619,-9541,-9504,-9550,-9592,-9544,-9466,-9581,-9667,-9664,-9645,-9611,-9645,-9668,
+-9632,-9632,-9679,-9734,-9696,-9682,-9665,-9711,-9812,-9811,-9794,-9756,-9696,-9642,-9576,-9496,-9421,-9350,-9273,-9191,
+-9092,-8978,-8869,-8771,-8699,-8625,-8544,-8429,-8300,-8153,-7993,-7866,-7742,-7622,-7499,-7369,-7224,-7074,-6904,-6727,
+-6566,-6439,-6340,-6258,-6203,-6190,-6197,-6208,-6193,-6118,-6003,-5967,-6018,-6106,-6107,-6170,-6222,-5941,-5580,-5254,
+-5016,-4753,-4601,-4523,-4456,-4359,-4256,-4089,-3889,-3724,-3597,-3475,-3324,-3166,-3087,-2995,-2929,-2843,-2701,-2621,
+-2557,-2508,-2462,-2398,-2305,-2231,-2187,-2122,-2051,-1981,-1902,-1827,-1721,-1634,-1555,-1461,-1367,-1262,-1173,-1095,
+-1027,-943,-841,-763,-675,-574,-463,-365,-291,-213,-110,4,111,215,323,440,577,700,798,924,
+1016,1043,1102,1185,1277,1393,1493,1618,1723,1873,2017,2121,2238,2337,2446,2553,2635,2744,2849,2961,
+3052,3158,3285,3371,3520,3623,3707,3769,3858,3898,3962,4056,4182,4357,4567,4752,4940,5070,5058,4986,
+4927,4960,5088,5238,5387,5513,5607,5640,5561,5351,5286,5378,5611,6039,6309,6363,6315,6299,6305,6291,
+6274,6232,6199,6199,6406,6779,6951,6809,6363,5572,5045,4974,5291,5589,5795,5934,6024,6076,6111,6121,
+6116,6111,6094,6077,6069,6055,6028,6008,5991,5979,5979,5977,5975,5976,5988,6000,6026,6019,6021,6013,
+6031,6125,6205,6155,6055,6082,6132,6136,6090,6058,6056,6084,6130,6172,6175,6277,6034,5571,5727,5892,
+6052,6151,6099,6092,6077,6162,6071,6014,5974,5947,5898,5839,5763,5651,5538,5441,5384,5371,5381,5411,
+5418,5416,5458,5487,5488,5486,5526,5540,5477,5382,5300,5200,5131,5186,5342,5351,5287,5067,4844,4753,
+4739,4798,4830,4812,4728,4631,4541,4497,4498,4540,4584,4603,4592,4546,4488,4425,4359,4302,4257,4241,
+4236,4238,4244,4248,4248,4226,4199,4159,4131,4111,4083,4056,4028,3998,3964,3913,3865,3815,3771,3732,
+3683,3631,3573,3531,3538,3564,3544,3576,3491,3356,3309,3297,3322,3224,3172,3152,3074,3051,3044,3027,
+2994,2960,2890,2867,2875,2902,2883,2898,2847,2826,2879,2908,2897,2890,2740,2620,2536,2497,2500,2523,
+2591,2779,2890,2908,2733,2472,2438,2363,2296,2249,2204,2186,2181,2177,2164,2149,2134,2122,2090,2053,
+2011,1991,1974,1950,1935,1890,1852,1831,1801,1754,1697,1723,1740,1711,1652,1595,1531,1496,1494,1467,
+1426,1390,1346,1325,1283,1255,1244,1224,1236,1251,1251,1249,1234,1217,1202,1186,1156,1129,1113,1071,
+1060,1043,1029,1037,1032,1033,1034,1031,1034,1035,1027,1018,1013,1035,1052,1064,1061,1134,1161,1160,
+1163,1170,1177,1209,1217,1231,1249,1238,1237,1242,1252,1260,1279,1301,1312,1318,1323,1322,1330,1319,
+1317,1353,1474,1583,1442,1373,1363,1490,1389,1394,1430,1429,1314,1297,1324,1371,1368,1241,1229,1336,
+1254,1204,1168,1147,1134,1187,1276,1110,1075,1091,1046,1022,981,944,916,903,886,861,833,804,
+776,749,724,708,692,674,657,647,630,607,579,554,535,508,485,464,444,414,382,350,
+320,293,265,243,217,192,166,142,117,98,75,54,23,-4,-31,-59,-85,-109,-139,-174,
+-203,-232,-264,-292,-321,-353,-384,-420,-454,-492,-534,-574,-612,-654,-694,-736,-776,-818,-856,-894,
+-935,-981,-1033,-1080,-1124,-1166,-1207,-1250,-1292,-1341,-1384,-1426,-1475,-1518,-1560,-1597,-1636,-1678,-1729,-1782,
+-1838,-1890,-1943,-1990,-2039,-2084,-2132,-2187,-2234,-2275,-2312,-2356,-2407,-2447,-2483,-2530,-2572,-2607,-2643,-2678,
+-2717,-2750,-2785,-2825,-2864,-2903,-2941,-2980,-3019,-3058,-3094,-3122,-3148,-3176,-3215,-3252,-3288,-3322,-3353,-3380,
+-3407,-3438,-3472,-3503,-3531,-3557,-3580,-3606,-3629,-3651,-3671,-3689,-3707,-3720,-3733,-3746,-3762,-3784,-3801,-3811,
+-3823,-3833,-3839,-3833,-3827,-3823,-3828,-3825,-3823,-3820,-3813,-3797,-3789,-3785,-3776,-3770,-3762,-3740,-3730,-3701,
+-3675,-3641,-3620,-3606,-3584,-3561,-3527,-3503,-3469,-3438,-3408,-3369,-3334,-3296,-3260,-3222,-3176,-3131,-3083,-3027,
+-3009,-2977,-2928,-2886,-2842,-2805,-2746,-2704,-2662,-2624,-2569,-2525,-2490,-2440,-2397,-2378,-2323,-2259,-2219,-2174,
+-2128,-2087,-2038,-1987,-1941,-1896,-1837,-1803,-1763,-1715,-1671,-1629,-1587,-1546,-1502,-1462,-1424,-1383,-1341,-1299,
+-1257,-1218,-1176,-1138,-1104,-1087,-1040,-1014,-990,-968,-917,-894,-849,-817,-783,-732,-698,-659,-616,-577,
+-540,-509,-482,-452,-417,-384,-350,-317,-290,-259,-227,-189,-161,-130,-103,-71,-46,-14,14,40,
+64,91,128,168,201,238,266,300,340,380,424,458,488,526,555,568,562,540,506,529,
+624,716,843,881,911,979,1112,1370,1643,1769,1581,1316,1190,1081,950,823,703,608,545,554,
+530,610,641,740,903,1060,1036,974,919,783,582,324,94,-55,-197,-250,-194,-49,7,-26,
+-75,-146,-193,-347,-538,-596,-556,-456,-377,-261,-51,-297,-666,-926,-1127,-1273,-1368,-1405,-1424,-1373,
+-1196,-935,-619,-653,-861,-1057,-1261,-1344,-1375,-1396,-1425,-1463,-1504,-1523,-1578,-1652,-1742,-1815,-1895,-2014,
+-2107,-2225,-2361,-2504,-2683,-2855,-3013,-3195,-3386,-3565,-3714,-3847,-3957,-4040,-4086,-4091,-4052,-3995,-3926,-3871,
+-3822,-3774,-3734,-3716,-3722,-3772,-3858,-3948,-4013,-4043,-4046,-4046,-4058,-4103,-4159,-4202,-4257,-4316,-4361,-4412,
+-4456,-4490,-4511,-4491,-4465,-4454,-4476,-4482,-4455,-4435,-4432,-4427,-4425,-4421,-4422,-4418,-4410,-4394,-4379,-4361,
+-4335,-4310,-4282,-4249,-4211,-4177,-4139,-4099,-4056,-4001,-3955,-3911,-3861,-3817,-3762,-3710,-3656,-3596,-3538,-3487,
+-3434,-3374,-3306,-3221,-3144,-3079,-2994,-2895,-2796,-2693,-2621,-2542,-2455,-2368,-2304,-2218,-2142,-2061,-1981,-1889,
+-1822,-1739,-1632,-1594,-1553,-1522,-1479,-1425,-1379,-1329,-1268,-1193,-1147,-1112,-1044,-1005,-950,-903,-855,-815,
+-763,-726,-679,-637,-587,-555,-512,-472,-420,-380,-334,-276,-219,-166,-118,-67,-31,27,69,96,
+151,209,250,293,342,401,459,494,537,578,621,669,720,771,813,863,913,953,994,1037,
+1075,1113,1146,1187,1222,1268,1312,1336,1364,1393,1427,1463,1499,1541,1571,1623,1675,1706,1762,1767,
+1790,1816,1803,1795,1818,1846,1890,1916,1936,2007,2075,2070,2167,2314,2405,2484,2568,2657,2750,2822,
+2886,2943,2997,3061,3149,3186,3170,3175,3209,3227,3260,3257,3161,3084,3077,3114,3181,3222,3263,3305,
+3334,3353,3376,3381,3379,3383,3380,3397,3414,3412,3373,3292,3214,3147,3098,3056,2994,2943,2933,2912,
+2872,2839,2833,2822,2806,2761,2734,2728,2709,2714,2689,2686,2657,2634,2601,2558,2535,2495,2482,2477,
+2477,2482,2460,2391,2416,2333,2296,2308,2356,2404,2449,2497,2527,2529,2509,2506,2501,2486,2462,2435,
+2425,2430,2414,2393,2362,2326,2291,2267,2292,2393,2481,2470,2395,2351,2339,2289,2284,2285,2330,2425,
+2428,2364,2261,2135,2032,1966,1911,1864,1832,1796,1778,1763,1719,1677,1649,1605,1549,1502,1460,1431,
+1391,1314,1278,1255,1197,1147,1064,1001,930,851,776,706,642,589,540,493,451,393,323,240,
+168,101,54,4,-20,-49,-84,-96,-117,-147,-144,-119,-111,-139,-147,-125,-107,-89,-84,-127,
+-162,-193,-238,-242,-252,-247,-252,-281,-325,-377,-428,-477,-526,-559,-564,-548,-541,-581,-610,-672,
+-737,-768,-778,-779,-749,-685,-656,-662,-641,-663,-707,-740,-763,-760,-763,-840,-887,-910,-872,-781,
+-719,-702,-602,-611,-599,-601,-589,-605,-696,-720,-696,-665,-623,-583,-668,-745,-666,-597,-631,-650,
+-669,-737,-790,-996,-1157,-1230,-1215,-1209,-1192,-1200,-1247,-1275,-1365,-1438,-1498,-1506,-1560,-1617,-1670,-1758,
+-1840,-1918,-1996,-2063,-2121,-2160,-2194,-2265,-2345,-2428,-2508,-2574,-2602,-2626,-2673,-2725,-2758,-2797,-2836,-2892,
+-2982,-3095,-3184,-3266,-3362,-3487,-3628,-3791,-3981,-4178,-4388,-4597,-4758,-4849,-4924,-4993,-5046,-5083,-5044,-5103,
+-5132,-5169,-5208,-5243,-5263,-5262,-5210,-5177,-5106,-5053,-5061,-5063,-5085,-5042,-5061,-5135,-5233,-5268,-5326,-5355,
+-5436,-5569,-5659,-5726,-5819,-5909,-6006,-6079,-6199,-6311,-6447,-6555,-6641,-6728,-6817,-6897,-6995,-7089,-7173,-7234,
+-7330,-7422,-7514,-7619,-7709,-7782,-7852,-7925,-8009,-8097,-8187,-8270,-8350,-8425,-8490,-8554,-8630,-8711,-8793,-8866,
+-8931,-8993,-9059,-9127,-9197,-9252,-9302,-9354,-9384,-9454,-9475,-9498,-9502,-9510,-9520,-9543,-9613,-9639,-9639,-9738,
+-9801,-9844,-9871,-9892,-9893,-9871,-9772,-9662,-9576,-9523,-9529,-9595,-9586,-9511,-9669,-9707,-9698,-9655,-9648,-9685,
+-9646,-9614,-9631,-9661,-9701,-9643,-9604,-9582,-9583,-9726,-9775,-9776,-9756,-9708,-9647,-9578,-9498,-9429,-9366,-9292,
+-9207,-9106,-8992,-8879,-8774,-8691,-8617,-8534,-8438,-8320,-8161,-7989,-7850,-7723,-7601,-7491,-7365,-7220,-7057,-6885,
+-6700,-6544,-6423,-6312,-6224,-6159,-6132,-6158,-6156,-6151,-6088,-5997,-5942,-5980,-6036,-6052,-6091,-6134,-5845,-5543,
+-5229,-4964,-4694,-4543,-4464,-4404,-4306,-4189,-4006,-3813,-3645,-3544,-3429,-3265,-3132,-3026,-2934,-2875,-2754,-2631,
+-2564,-2486,-2421,-2375,-2312,-2237,-2165,-2129,-2073,-1986,-1916,-1837,-1762,-1667,-1575,-1491,-1391,-1301,-1197,-1109,
+-1033,-960,-872,-783,-700,-600,-495,-397,-308,-221,-132,-26,90,202,306,433,567,682,769,864,
+1003,1067,1096,1157,1251,1366,1461,1572,1688,1837,1985,2094,2207,2314,2431,2514,2606,2691,2823,2929,
+3002,3113,3234,3333,3431,3545,3651,3746,3817,3885,3961,3994,4104,4293,4543,4713,4881,5054,5142,5102,
+4930,4916,5015,5219,5378,5477,5572,5671,5575,5436,5374,5316,5374,5511,5782,6082,6323,6340,6325,6219,
+6129,6185,6344,6530,6407,6501,6779,7051,6947,6558,5774,5212,4996,5255,5579,5805,5957,6060,6122,6162,
+6178,6178,6168,6150,6132,6118,6103,6083,6063,6050,6043,6044,6045,6046,6060,6076,6106,6085,6097,6071,
+6059,6083,6252,6247,6201,6125,6116,6102,6094,6122,6079,6085,6113,6182,6224,6201,6149,5790,5682,5855,
+5996,6114,6131,6108,6067,6067,6123,6115,6075,6013,5990,5962,5956,5922,5825,5709,5591,5502,5428,5419,
+5440,5444,5433,5479,5536,5599,5594,5581,5636,5623,5514,5404,5296,5218,5273,5383,5529,5456,5158,4987,
+4926,4896,5035,5128,5132,4983,4826,4662,4589,4603,4668,4739,4787,4777,4701,4606,4518,4432,4362,4310,
+4279,4271,4278,4287,4298,4307,4290,4271,4241,4209,4195,4159,4133,4096,4056,4003,3962,3902,3851,3810,
+3766,3725,3674,3613,3573,3524,3496,3529,3542,3445,3385,3344,3336,3356,3244,3174,3160,3139,3107,3085,
+3060,3022,2979,2929,2901,2955,3119,3029,2952,2883,2846,2949,3163,3244,3236,2947,2737,2594,2527,2489,
+2464,2499,2641,2847,2972,2708,2510,2500,2505,2399,2312,2237,2196,2188,2188,2181,2172,2148,2131,2095,
+2061,2020,1989,1974,1952,1940,1911,1883,1826,1786,1742,1736,1758,1810,1802,1697,1630,1581,1541,1508,
+1481,1449,1408,1373,1348,1311,1279,1273,1259,1250,1257,1271,1267,1259,1246,1220,1189,1159,1117,1096,
+1092,1064,1058,1050,1027,1016,1029,1018,1017,1023,1024,1020,1019,1024,1045,1065,1070,1068,1123,1145,
+1151,1151,1155,1162,1181,1192,1200,1209,1207,1212,1235,1262,1252,1287,1317,1319,1367,1367,1362,1375,
+1355,1337,1333,1365,1502,1507,1418,1370,1375,1369,1393,1472,1467,1335,1307,1295,1299,1274,1245,1263,
+1314,1291,1266,1202,1180,1249,1218,1208,1123,1154,1285,1205,1269,1136,1029,984,952,932,901,877,
+847,819,793,765,740,719,702,689,677,654,634,610,586,565,543,522,502,479,462,435,
+406,368,326,302,278,254,227,204,179,152,130,103,82,56,30,0,-27,-50,-76,-109,
+-139,-173,-203,-232,-265,-296,-328,-360,-396,-426,-469,-508,-549,-587,-624,-668,-710,-755,-799,-840,
+-876,-922,-962,-1010,-1060,-1101,-1145,-1188,-1228,-1269,-1312,-1352,-1402,-1446,-1488,-1525,-1564,-1607,-1648,-1697,
+-1747,-1794,-1846,-1897,-1948,-1994,-2054,-2108,-2160,-2200,-2238,-2280,-2327,-2378,-2425,-2463,-2503,-2545,-2580,-2617,
+-2648,-2686,-2719,-2749,-2788,-2826,-2858,-2900,-2939,-2981,-3014,-3050,-3085,-3107,-3133,-3172,-3213,-3249,-3280,-3311,
+-3339,-3367,-3394,-3428,-3459,-3486,-3510,-3530,-3553,-3577,-3600,-3629,-3649,-3665,-3679,-3691,-3706,-3720,-3740,-3754,
+-3765,-3771,-3778,-3782,-3777,-3775,-3776,-3776,-3771,-3769,-3766,-3762,-3755,-3746,-3745,-3740,-3726,-3698,-3682,-3665,
+-3652,-3635,-3619,-3602,-3583,-3556,-3524,-3493,-3460,-3427,-3402,-3369,-3340,-3311,-3275,-3244,-3200,-3152,-3124,-3067,
+-3000,-2986,-2945,-2903,-2881,-2822,-2785,-2736,-2696,-2654,-2607,-2563,-2510,-2470,-2435,-2394,-2348,-2302,-2262,-2215,
+-2168,-2125,-2082,-2036,-1986,-1941,-1897,-1837,-1805,-1760,-1715,-1670,-1632,-1590,-1549,-1507,-1464,-1429,-1389,-1345,
+-1309,-1256,-1215,-1169,-1128,-1093,-1077,-1049,-1017,-988,-960,-924,-887,-849,-805,-767,-737,-701,-660,-623,
+-584,-548,-514,-476,-447,-415,-393,-357,-325,-291,-258,-231,-201,-168,-142,-111,-81,-52,-18,6,
+30,50,88,130,169,198,227,263,299,338,377,415,443,495,531,565,590,604,608,600,
+581,584,637,706,703,779,841,983,1180,1303,1431,1550,1646,1498,1301,1171,1044,936,819,747,
+683,763,877,956,1034,1166,1276,1300,1280,1250,1184,1065,807,431,150,-2,-83,-39,62,96,
+69,26,-69,-176,-310,-424,-451,-424,-350,-285,-137,-36,-375,-672,-912,-1095,-1230,-1302,-1326,-1289,
+-1117,-753,-498,-477,-744,-992,-1154,-1242,-1274,-1269,-1273,-1297,-1346,-1398,-1431,-1489,-1557,-1655,-1735,-1800,
+-1873,-1990,-2129,-2260,-2401,-2567,-2730,-2898,-3057,-3207,-3344,-3461,-3571,-3665,-3735,-3775,-3784,-3771,-3744,-3696,
+-3656,-3617,-3565,-3520,-3500,-3497,-3522,-3638,-3791,-3910,-3993,-4038,-4030,-4012,-4028,-4068,-4102,-4142,-4199,-4261,
+-4321,-4363,-4402,-4454,-4474,-4423,-4355,-4306,-4323,-4416,-4414,-4397,-4392,-4389,-4400,-4400,-4398,-4386,-4367,-4347,
+-4329,-4308,-4285,-4258,-4230,-4205,-4179,-4140,-4095,-4053,-4005,-3959,-3914,-3863,-3810,-3757,-3702,-3644,-3596,-3543,
+-3477,-3405,-3343,-3277,-3217,-3152,-3084,-3015,-2936,-2844,-2749,-2653,-2554,-2485,-2420,-2330,-2242,-2138,-2068,-1945,
+-1842,-1765,-1795,-1675,-1636,-1594,-1522,-1459,-1424,-1359,-1305,-1262,-1222,-1150,-1086,-1045,-998,-949,-902,-842,
+-794,-751,-713,-661,-612,-561,-518,-477,-428,-381,-338,-295,-244,-198,-132,-72,-21,14,51,99,
+121,170,242,268,308,347,401,456,495,547,592,637,685,733,774,820,860,919,956,1008,
+1046,1096,1149,1177,1212,1242,1278,1314,1349,1364,1395,1422,1466,1509,1562,1596,1625,1664,1763,1902,
+1846,1803,1842,1907,1865,1816,1810,1839,1875,1890,1943,2055,2104,2112,2211,2321,2433,2502,2558,2620,
+2704,2788,2857,2936,3014,3080,3162,3211,3208,3214,3240,3263,3262,3142,3047,3017,3048,3124,3194,3245,
+3305,3344,3369,3388,3416,3429,3458,3462,3461,3475,3464,3425,3332,3241,3172,3117,3067,3007,2956,2938,
+2923,2879,2859,2856,2842,2823,2761,2742,2730,2708,2712,2712,2710,2679,2654,2615,2567,2529,2496,2493,
+2499,2487,2491,2472,2416,2453,2365,2341,2349,2383,2424,2489,2533,2560,2542,2524,2517,2516,2511,2493,
+2478,2472,2487,2472,2439,2383,2344,2317,2275,2277,2272,2294,2317,2321,2323,2311,2261,2238,2244,2251,
+2261,2259,2203,2135,2062,2001,1979,1928,1882,1846,1820,1835,1839,1788,1741,1739,1653,1582,1523,1464,
+1407,1367,1320,1276,1235,1164,1111,1036,958,871,783,692,615,557,529,513,459,394,327,245,
+180,124,66,19,-14,-28,-50,-78,-96,-117,-143,-154,-140,-124,-142,-143,-103,-72,-45,-63,
+-122,-174,-204,-236,-256,-273,-280,-295,-324,-378,-431,-471,-510,-545,-579,-599,-603,-600,-611,-623,
+-682,-768,-818,-834,-835,-818,-769,-727,-712,-700,-718,-744,-771,-799,-818,-817,-859,-933,-946,-938,
+-866,-803,-763,-673,-616,-599,-627,-626,-629,-709,-729,-654,-699,-718,-693,-652,-697,-660,-655,-699,
+-724,-776,-842,-968,-1092,-1166,-1223,-1193,-1153,-1251,-1321,-1381,-1418,-1500,-1566,-1636,-1651,-1656,-1709,-1754,
+-1808,-1867,-1972,-2063,-2142,-2200,-2253,-2300,-2345,-2410,-2488,-2576,-2648,-2705,-2761,-2822,-2854,-2884,-2919,-2965,
+-3013,-3075,-3166,-3263,-3350,-3444,-3584,-3734,-3915,-4115,-4335,-4593,-4755,-4841,-4920,-5003,-5063,-5107,-5145,-5153,
+-5164,-5184,-5205,-5246,-5283,-5315,-5303,-5222,-5156,-5064,-5039,-5076,-5094,-5083,-5108,-5174,-5194,-5226,-5303,-5366,
+-5330,-5439,-5559,-5651,-5720,-5794,-5915,-5962,-6075,-6196,-6313,-6433,-6558,-6659,-6734,-6828,-6928,-7022,-7112,-7182,
+-7256,-7364,-7460,-7546,-7645,-7737,-7810,-7876,-7952,-8042,-8130,-8219,-8309,-8379,-8446,-8505,-8578,-8660,-8749,-8830,
+-8902,-8969,-9032,-9103,-9166,-9230,-9276,-9329,-9390,-9437,-9479,-9508,-9538,-9552,-9543,-9558,-9568,-9603,-9646,-9726,
+-9770,-9828,-9869,-9896,-9922,-9926,-9896,-9776,-9688,-9614,-9557,-9564,-9623,-9646,-9641,-9706,-9745,-9732,-9710,-9703,
+-9699,-9666,-9641,-9626,-9647,-9648,-9586,-9548,-9514,-9513,-9625,-9707,-9732,-9744,-9710,-9656,-9582,-9506,-9435,-9372,
+-9300,-9208,-9102,-8991,-8877,-8774,-8682,-8603,-8528,-8438,-8325,-8158,-7981,-7833,-7701,-7580,-7472,-7345,-7199,-7016,
+-6830,-6669,-6533,-6417,-6311,-6217,-6147,-6108,-6118,-6101,-6089,-6050,-5963,-5931,-5947,-5988,-6035,-6033,-6039,-5742,
+-5475,-5187,-4904,-4658,-4488,-4422,-4352,-4256,-4112,-3910,-3718,-3591,-3490,-3381,-3231,-3102,-2985,-2887,-2832,-2713,
+-2595,-2499,-2423,-2331,-2272,-2222,-2151,-2109,-2065,-2009,-1923,-1855,-1776,-1706,-1630,-1523,-1427,-1328,-1235,-1143,
+-1047,-965,-895,-810,-712,-630,-526,-436,-359,-274,-165,-68,53,176,285,417,526,631,727,819,
+936,1063,1111,1151,1239,1320,1427,1530,1655,1786,1898,2020,2154,2260,2380,2474,2559,2646,2781,2896,
+3009,3087,3164,3284,3432,3489,3574,3681,3776,3840,3935,4004,4052,4207,4463,4677,4896,5016,5095,5053,
+4968,4919,4979,5131,5346,5468,5513,5589,5559,5528,5524,5439,5362,5349,5394,5560,5737,6103,6284,6337,
+6225,6136,6213,6416,6695,6716,6681,6806,6977,6957,6689,5989,5391,5058,5212,5558,5810,5974,6083,6157,
+6200,6221,6232,6228,6213,6194,6171,6152,6135,6122,6114,6111,6114,6119,6122,6130,6168,6178,6160,6153,
+6123,6115,6186,6318,6286,6238,6172,6132,6138,6107,6170,6168,6178,6189,6231,6258,6226,5957,5706,5833,
+5960,6096,6120,6110,6108,6089,6072,6121,6127,6111,6173,6184,6154,6047,6032,5975,5873,5770,5662,5562,
+5498,5503,5511,5499,5517,5576,5637,5670,5653,5657,5657,5638,5537,5446,5378,5375,5446,5552,5523,5365,
+5235,5104,5048,5202,5424,5567,5437,5055,4805,4687,4738,4852,4964,5054,5061,4918,4748,4612,4508,4429,
+4366,4332,4327,4336,4348,4365,4369,4345,4320,4301,4274,4242,4220,4204,4176,4129,4058,4002,3952,3918,
+3866,3835,3787,3744,3669,3622,3566,3534,3556,3608,3490,3448,3482,3464,3434,3273,3234,3286,3273,3154,
+3100,3081,3041,3002,2954,2919,2953,3142,3202,2995,2991,2864,2835,2898,3027,3216,3154,2834,2663,2590,
+2525,2468,2451,2538,2735,2880,2654,2514,2601,2700,2613,2444,2302,2222,2197,2196,2197,2181,2153,2130,
+2106,2073,2034,1996,1980,1961,1941,1916,1909,1867,1807,1759,1773,1788,1866,1854,1709,1651,1607,1567,
+1525,1495,1459,1429,1401,1368,1352,1318,1298,1291,1299,1291,1282,1288,1287,1273,1248,1207,1176,1134,
+1103,1095,1077,1064,1049,1040,1032,1016,1007,1013,1015,1016,1017,1026,1037,1053,1069,1081,1087,1130,
+1136,1144,1145,1141,1143,1147,1151,1178,1194,1203,1209,1219,1243,1253,1277,1305,1321,1346,1361,1379,
+1387,1372,1355,1338,1341,1372,1396,1415,1386,1377,1396,1445,1398,1351,1344,1375,1329,1304,1285,1277,
+1295,1347,1290,1251,1206,1214,1227,1176,1171,1139,1121,1138,1123,1156,1091,1036,1004,991,969,936,
+908,886,858,835,811,785,763,741,727,696,673,652,633,622,602,582,562,544,523,500,
+474,451,409,365,342,305,277,251,228,195,172,152,132,114,92,66,37,10,-20,-46,
+-78,-112,-149,-179,-214,-241,-270,-301,-339,-372,-408,-449,-489,-524,-565,-598,-645,-688,-733,-777,
+-819,-856,-900,-940,-982,-1034,-1077,-1119,-1165,-1207,-1245,-1286,-1327,-1370,-1413,-1455,-1494,-1532,-1569,-1609,
+-1658,-1704,-1759,-1812,-1857,-1898,-1945,-2001,-2061,-2116,-2158,-2200,-2244,-2293,-2345,-2393,-2429,-2469,-2513,-2555,
+-2589,-2620,-2652,-2684,-2715,-2750,-2782,-2812,-2849,-2890,-2932,-2964,-2997,-3039,-3070,-3095,-3125,-3164,-3205,-3243,
+-3270,-3299,-3327,-3359,-3391,-3422,-3446,-3468,-3485,-3503,-3529,-3552,-3579,-3605,-3626,-3644,-3660,-3674,-3681,-3698,
+-3712,-3715,-3721,-3725,-3726,-3722,-3723,-3722,-3717,-3718,-3720,-3727,-3728,-3715,-3697,-3677,-3675,-3662,-3653,-3640,
+-3629,-3615,-3597,-3585,-3568,-3539,-3511,-3484,-3457,-3428,-3397,-3367,-3336,-3311,-3292,-3254,-3223,-3183,-3143,-3105,
+-3062,-3014,-2983,-2938,-2888,-2866,-2823,-2776,-2740,-2696,-2652,-2593,-2542,-2503,-2458,-2423,-2383,-2333,-2294,-2252,
+-2209,-2163,-2121,-2077,-2034,-1988,-1941,-1894,-1837,-1806,-1760,-1720,-1674,-1632,-1589,-1549,-1506,-1476,-1434,-1389,
+-1347,-1299,-1251,-1215,-1171,-1142,-1112,-1082,-1050,-1025,-991,-958,-933,-878,-846,-811,-769,-731,-701,-667,
+-629,-591,-553,-520,-493,-460,-425,-394,-366,-342,-303,-268,-239,-204,-177,-147,-118,-87,-56,-24,
+-4,18,54,90,130,162,191,223,255,295,334,367,402,441,493,526,563,599,629,642,
+648,646,641,665,642,657,694,751,888,1064,1211,1270,1319,1520,1686,1552,1393,1263,1178,1080,
+972,966,1091,1191,1188,1196,1235,1294,1282,1351,1402,1360,1280,1143,867,527,285,179,198,222,
+204,155,80,-29,-176,-312,-371,-322,-284,-242,-176,20,-77,-329,-598,-827,-1012,-1145,-1193,-1148,
+-933,-480,-188,-225,-574,-870,-1056,-1133,-1165,-1174,-1166,-1178,-1196,-1243,-1305,-1347,-1391,-1444,-1551,-1642,
+-1722,-1793,-1910,-2037,-2159,-2284,-2424,-2572,-2712,-2852,-2981,-3096,-3188,-3280,-3353,-3410,-3453,-3475,-3489,-3476,
+-3438,-3414,-3397,-3376,-3344,-3335,-3338,-3370,-3433,-3569,-3733,-3871,-3959,-3987,-3971,-3973,-3995,-4011,-4028,-4078,
+-4144,-4215,-4257,-4292,-4347,-4390,-4356,-4256,-4184,-4155,-4273,-4379,-4359,-4355,-4359,-4367,-4375,-4373,-4368,-4351,
+-4327,-4305,-4287,-4267,-4244,-4218,-4195,-4167,-4131,-4091,-4053,-4002,-3953,-3915,-3857,-3797,-3739,-3685,-3635,-3580,
+-3526,-3479,-3422,-3360,-3294,-3227,-3156,-3091,-3005,-2925,-2835,-2757,-2696,-2609,-2536,-2467,-2382,-2307,-2213,-2114,
+-2033,-1951,-1875,-1849,-1672,-1615,-1574,-1540,-1483,-1414,-1359,-1305,-1258,-1205,-1140,-1093,-1041,-1005,-947,-872,
+-827,-776,-737,-688,-637,-591,-547,-503,-461,-421,-384,-348,-302,-252,-190,-126,-74,-27,14,54,
+91,125,186,223,263,286,323,374,430,475,528,586,635,685,728,768,806,846,893,936,
+986,1034,1081,1121,1157,1199,1242,1279,1309,1338,1361,1384,1416,1460,1508,1560,1609,1643,1688,1753,
+1918,1958,1858,1918,2104,2033,2023,1874,1871,1907,1939,2034,2105,2087,2096,2104,2174,2302,2408,2454,
+2490,2518,2581,2673,2783,2909,3002,3109,3214,3241,3226,3232,3253,3258,3158,3004,2952,2987,3079,3169,
+3226,3286,3346,3358,3394,3438,3469,3507,3514,3508,3518,3532,3471,3379,3277,3205,3139,3075,3006,2971,
+2957,2931,2899,2886,2874,2851,2830,2777,2737,2725,2712,2725,2736,2729,2704,2672,2624,2572,2535,2514,
+2509,2503,2476,2487,2503,2453,2488,2405,2384,2424,2418,2442,2506,2555,2583,2555,2534,2530,2533,2531,
+2524,2509,2519,2521,2510,2474,2413,2357,2313,2297,2286,2246,2243,2274,2339,2366,2353,2272,2226,2188,
+2192,2159,2130,2107,2080,2033,2014,1989,1932,1882,1860,1832,1869,1901,1826,1765,1741,1707,1613,1591,
+1520,1426,1359,1304,1276,1239,1182,1124,1042,931,847,745,640,553,484,467,454,421,342,282,
+222,188,145,98,65,22,-8,-34,-68,-84,-97,-126,-143,-137,-126,-122,-115,-77,-51,-63,
+-89,-129,-174,-194,-205,-257,-286,-300,-328,-366,-425,-474,-504,-530,-557,-590,-618,-634,-657,-659,
+-650,-681,-756,-832,-876,-880,-864,-846,-792,-762,-761,-759,-771,-790,-827,-854,-868,-905,-955,-982,
+-1007,-964,-900,-872,-779,-614,-656,-701,-670,-654,-675,-706,-711,-764,-770,-773,-702,-687,-694,-768,
+-800,-844,-897,-926,-1039,-1116,-1194,-1177,-1214,-1249,-1387,-1459,-1504,-1567,-1636,-1700,-1750,-1782,-1788,-1819,
+-1852,-1864,-1881,-1970,-2081,-2167,-2235,-2312,-2386,-2450,-2499,-2562,-2635,-2702,-2770,-2844,-2912,-2963,-2991,-3018,
+-3061,-3126,-3188,-3249,-3340,-3431,-3530,-3686,-3886,-4116,-4330,-4561,-4746,-4842,-4920,-5008,-5078,-5128,-5162,-5187,
+-5208,-5213,-5225,-5243,-5274,-5311,-5332,-5319,-5280,-5148,-5038,-5063,-5116,-5127,-5152,-5217,-5228,-5211,-5214,-5335,
+-5383,-5367,-5451,-5558,-5637,-5707,-5800,-5928,-5999,-6081,-6190,-6318,-6416,-6529,-6632,-6751,-6849,-6936,-7035,-7122,
+-7203,-7289,-7390,-7494,-7569,-7658,-7758,-7843,-7910,-7992,-8081,-8165,-8256,-8337,-8401,-8461,-8529,-8606,-8693,-8780,
+-8863,-8933,-9000,-9063,-9134,-9197,-9258,-9299,-9358,-9415,-9466,-9501,-9537,-9570,-9582,-9571,-9581,-9582,-9607,-9689,
+-9749,-9791,-9856,-9889,-9914,-9937,-9946,-9924,-9814,-9748,-9687,-9607,-9610,-9665,-9649,-9577,-9712,-9779,-9789,-9794,
+-9792,-9804,-9777,-9734,-9672,-9630,-9612,-9566,-9502,-9461,-9435,-9500,-9616,-9685,-9720,-9699,-9649,-9574,-9503,-9433,
+-9366,-9292,-9202,-9100,-8995,-8884,-8783,-8682,-8602,-8524,-8436,-8314,-8149,-7971,-7822,-7688,-7572,-7462,-7325,-7158,
+-6976,-6806,-6658,-6534,-6432,-6324,-6218,-6136,-6102,-6087,-6053,-6028,-6008,-5952,-5866,-5879,-5971,-6038,-6003,-5974,
+-5642,-5405,-5081,-4865,-4607,-4440,-4391,-4316,-4205,-4047,-3806,-3642,-3546,-3447,-3321,-3192,-3069,-2928,-2838,-2781,
+-2660,-2559,-2457,-2373,-2216,-2167,-2139,-2081,-2051,-1994,-1924,-1847,-1780,-1712,-1638,-1556,-1469,-1364,-1266,-1184,
+-1085,-986,-893,-823,-735,-642,-555,-460,-366,-294,-204,-102,6,155,267,372,493,594,686,774,
+872,1002,1119,1163,1218,1307,1397,1485,1605,1742,1840,1966,2086,2205,2315,2439,2537,2637,2732,2833,
+2982,3081,3207,3298,3385,3456,3518,3589,3675,3775,3839,3950,4022,4115,4346,4563,4797,4973,5030,5006,
+4883,4858,4925,5074,5239,5415,5433,5475,5570,5569,5552,5548,5502,5431,5362,5327,5363,5616,6037,6343,
+6505,6444,6351,6393,6597,6829,6986,6868,6795,6870,6992,6759,6174,5558,5159,5197,5550,5812,5999,6118,
+6198,6246,6271,6280,6275,6268,6253,6228,6208,6191,6182,6179,6181,6191,6182,6193,6247,6254,6239,6231,
+6212,6202,6210,6288,6366,6288,6215,6130,6125,6188,6241,6268,6228,6256,6305,6328,6320,6117,5668,5691,
+5902,6120,6175,6188,6153,6123,6122,6121,6124,6146,6108,6149,6175,6172,6148,6106,6056,6022,5941,5848,
+5753,5650,5614,5645,5697,5630,5630,5683,5735,5673,5644,5651,5694,5687,5613,5541,5513,5520,5540,5549,
+5554,5569,5406,5197,5335,5671,5936,5791,5244,4939,4794,4911,5135,5294,5379,5492,5170,4890,4710,4588,
+4510,4453,4418,4408,4414,4431,4451,4453,4416,4370,4348,4328,4306,4283,4269,4246,4195,4127,4066,4015,
+3973,3926,3905,3837,3797,3729,3666,3624,3605,3659,3744,3563,3511,3493,3464,3427,3347,3298,3370,3432,
+3180,3094,3066,3044,3012,2967,2930,2917,2970,3014,2948,2910,2849,2799,2780,2822,2971,3095,2801,2684,
+2637,2626,2511,2465,2513,2640,2567,2485,2493,2651,2989,2839,2552,2366,2258,2221,2222,2220,2204,2182,
+2148,2120,2089,2057,2013,1988,1975,1961,1953,1919,1853,1754,1742,1770,1769,1762,1740,1673,1645,1617,
+1589,1558,1516,1482,1451,1430,1395,1382,1361,1342,1340,1332,1336,1320,1303,1305,1298,1270,1233,1196,
+1156,1123,1112,1091,1067,1052,1041,1028,1019,1016,1010,998,1011,1023,1039,1048,1060,1076,1088,1095,
+1118,1127,1138,1136,1138,1137,1137,1151,1172,1188,1222,1221,1224,1237,1248,1268,1291,1318,1332,1347,
+1376,1394,1376,1362,1347,1329,1323,1331,1369,1409,1446,1386,1384,1356,1352,1377,1437,1416,1357,1328,
+1315,1324,1328,1304,1267,1233,1262,1229,1207,1203,1177,1169,1144,1125,1110,1091,1066,1049,1044,1014,
+974,938,919,896,872,850,829,811,792,763,730,702,686,668,652,632,609,584,565,546,
+526,503,483,455,410,381,352,335,297,260,227,199,175,158,139,116,90,65,39,11,
+-16,-47,-79,-116,-152,-188,-219,-251,-282,-313,-342,-380,-425,-461,-501,-540,-575,-612,-659,-705,
+-748,-792,-837,-875,-922,-963,-1013,-1054,-1098,-1147,-1188,-1224,-1262,-1297,-1337,-1383,-1426,-1463,-1496,-1529,
+-1573,-1622,-1677,-1732,-1785,-1825,-1862,-1911,-1966,-2020,-2069,-2117,-2163,-2203,-2248,-2296,-2344,-2390,-2435,-2478,
+-2521,-2559,-2586,-2620,-2655,-2686,-2720,-2749,-2777,-2807,-2843,-2883,-2920,-2953,-2997,-3028,-3056,-3084,-3117,-3161,
+-3198,-3229,-3260,-3290,-3325,-3348,-3376,-3402,-3426,-3447,-3464,-3486,-3512,-3535,-3556,-3575,-3599,-3621,-3636,-3659,
+-3652,-3657,-3657,-3667,-3675,-3683,-3689,-3691,-3691,-3684,-3682,-3680,-3660,-3652,-3645,-3639,-3634,-3635,-3632,-3620,
+-3609,-3591,-3570,-3553,-3536,-3522,-3499,-3473,-3448,-3422,-3398,-3371,-3336,-3308,-3287,-3266,-3225,-3189,-3159,-3124,
+-3084,-3042,-2997,-2960,-2923,-2886,-2856,-2821,-2779,-2737,-2689,-2639,-2591,-2545,-2503,-2454,-2414,-2374,-2334,-2292,
+-2254,-2208,-2165,-2119,-2072,-2026,-1982,-1939,-1885,-1834,-1804,-1759,-1719,-1679,-1636,-1597,-1561,-1525,-1477,-1442,
+-1397,-1346,-1295,-1245,-1209,-1175,-1139,-1109,-1079,-1047,-1022,-999,-962,-922,-881,-835,-804,-772,-736,-701,
+-668,-634,-599,-564,-531,-499,-467,-439,-407,-374,-341,-310,-284,-248,-219,-187,-153,-122,-93,-66,
+-39,-21,15,63,88,123,157,185,215,249,282,320,354,395,438,478,524,561,593,625,
+648,669,692,723,742,743,726,725,760,895,1047,1182,1303,1358,1415,1491,1639,1593,1473,1450,
+1448,1359,1336,1348,1330,1267,1273,1267,1290,1300,1373,1486,1561,1446,1305,1209,946,680,503,437,
+383,332,272,187,57,-127,-282,-307,-228,-168,-124,-92,93,67,-200,-468,-692,-892,-1004,-999,
+-745,-252,43,-18,-462,-759,-954,-1040,-1066,-1082,-1074,-1078,-1099,-1137,-1195,-1262,-1300,-1335,-1366,-1435,
+-1520,-1618,-1719,-1812,-1904,-2010,-2133,-2266,-2389,-2510,-2641,-2758,-2854,-2935,-3014,-3078,-3134,-3175,-3205,-3224,
+-3219,-3203,-3188,-3186,-3189,-3183,-3193,-3231,-3259,-3303,-3359,-3475,-3658,-3802,-3861,-3878,-3906,-3914,-3906,-3915,
+-3962,-4037,-4097,-4127,-4160,-4206,-4261,-4246,-4146,-4065,-4033,-4074,-4196,-4297,-4330,-4341,-4346,-4354,-4355,-4345,
+-4326,-4298,-4277,-4260,-4244,-4228,-4206,-4183,-4163,-4136,-4102,-4068,-4024,-3970,-3917,-3859,-3799,-3735,-3673,-3614,
+-3551,-3492,-3454,-3410,-3350,-3286,-3227,-3174,-3119,-3045,-2964,-2858,-2786,-2717,-2624,-2543,-2452,-2366,-2290,-2207,
+-2133,-2050,-1971,-1904,-1824,-1720,-1630,-1559,-1577,-1503,-1437,-1384,-1337,-1294,-1240,-1179,-1127,-1079,-1028,-955,
+-902,-851,-780,-744,-682,-629,-570,-520,-475,-440,-388,-355,-323,-269,-222,-175,-129,-83,-31,15,
+62,106,138,199,253,302,339,377,421,476,520,560,606,657,698,738,788,819,852,895,
+942,990,1031,1078,1114,1152,1194,1233,1271,1303,1332,1362,1393,1427,1475,1527,1566,1614,1660,1696,
+1733,1786,1831,1869,1884,2007,2055,1986,1944,1937,1954,1983,2043,2094,2141,2078,2070,2118,2253,2307,
+2326,2344,2379,2417,2480,2568,2688,2839,3050,3188,3274,3290,3255,3265,3250,3180,3012,2930,2960,3049,
+3153,3218,3286,3315,3348,3394,3436,3476,3504,3539,3540,3546,3572,3506,3406,3308,3232,3152,3086,3032,
+2995,2971,2959,2943,2921,2897,2868,2842,2794,2749,2724,2703,2736,2751,2743,2724,2684,2641,2587,2550,
+2533,2514,2501,2488,2504,2528,2488,2500,2442,2431,2479,2473,2470,2522,2580,2606,2567,2552,2552,2556,
+2551,2538,2525,2539,2544,2527,2503,2448,2383,2388,2391,2331,2265,2249,2317,2375,2399,2373,2307,2233,
+2147,2130,2104,2083,2073,2068,2040,2014,1977,1923,1899,1887,1852,1849,1913,1832,1757,1707,1648,1619,
+1616,1531,1465,1407,1330,1282,1233,1195,1147,1054,929,836,734,645,570,516,475,434,406,363,
+331,273,222,178,135,87,23,-11,-25,-62,-64,-78,-88,-104,-122,-120,-121,-109,-102,-105,
+-132,-162,-194,-218,-223,-245,-280,-306,-327,-358,-398,-453,-496,-524,-547,-571,-599,-625,-652,-686,
+-701,-706,-720,-748,-831,-896,-929,-921,-901,-870,-848,-825,-805,-795,-813,-845,-891,-896,-929,-977,
+-1007,-1030,-1036,-983,-925,-849,-729,-755,-753,-706,-683,-674,-708,-783,-814,-808,-810,-826,-832,-798,
+-774,-783,-923,-999,-1023,-1073,-1122,-1149,-1233,-1316,-1404,-1496,-1575,-1617,-1690,-1754,-1823,-1850,-1901,-1910,
+-1944,-1991,-2022,-2051,-2116,-2200,-2262,-2299,-2373,-2463,-2536,-2598,-2668,-2726,-2771,-2816,-2880,-2952,-3005,-3044,
+-3085,-3144,-3210,-3299,-3358,-3426,-3507,-3606,-3791,-4056,-4320,-4545,-4690,-4795,-4886,-4999,-5087,-5147,-5182,-5205,
+-5215,-5246,-5261,-5268,-5283,-5304,-5316,-5339,-5355,-5287,-5174,-5089,-5115,-5129,-5170,-5237,-5255,-5213,-5211,-5293,
+-5372,-5408,-5418,-5470,-5556,-5654,-5739,-5849,-5928,-5994,-6081,-6211,-6313,-6426,-6529,-6629,-6745,-6838,-6923,-7022,
+-7126,-7223,-7302,-7401,-7511,-7614,-7700,-7785,-7877,-7953,-8029,-8111,-8194,-8284,-8361,-8417,-8479,-8554,-8637,-8721,
+-8804,-8884,-8959,-9025,-9089,-9158,-9222,-9283,-9324,-9384,-9453,-9493,-9523,-9559,-9593,-9610,-9599,-9589,-9613,-9661,
+-9674,-9734,-9819,-9878,-9905,-9931,-9956,-9977,-9934,-9900,-9867,-9829,-9721,-9644,-9683,-9690,-9650,-9686,-9811,-9846,
+-9851,-9930,-9934,-9872,-9807,-9764,-9648,-9606,-9561,-9500,-9451,-9419,-9415,-9496,-9630,-9671,-9665,-9625,-9557,-9485,
+-9420,-9352,-9280,-9204,-9112,-9006,-8901,-8798,-8694,-8608,-8528,-8437,-8314,-8148,-7969,-7819,-7689,-7585,-7473,-7322,
+-7145,-6967,-6805,-6659,-6540,-6436,-6318,-6204,-6125,-6067,-6038,-5996,-5965,-5955,-5938,-5847,-5837,-5932,-6051,-5990,
+-5865,-5517,-5273,-5002,-4810,-4579,-4410,-4362,-4281,-4150,-3961,-3712,-3590,-3507,-3388,-3272,-3136,-3007,-2878,-2797,
+-2742,-2624,-2510,-2400,-2310,-2194,-2058,-2067,-2005,-1983,-1919,-1847,-1772,-1707,-1647,-1571,-1490,-1399,-1298,-1208,
+-1122,-1023,-919,-828,-749,-657,-570,-485,-390,-303,-230,-133,-26,92,234,337,440,528,637,742,
+825,924,1065,1172,1223,1281,1367,1470,1581,1709,1814,1906,2034,2167,2275,2394,2470,2569,2677,2784,
+2908,3045,3155,3247,3329,3421,3503,3558,3666,3715,3749,3810,3897,4019,4235,4445,4641,4826,4991,4997,
+4900,4819,4847,4989,5172,5314,5381,5393,5432,5540,5577,5565,5568,5564,5510,5480,5503,5558,5849,6272,
+6512,6676,6709,6605,6720,6933,7022,7109,7008,6821,6763,6921,6842,6420,5780,5278,5191,5518,5822,6025,
+6160,6250,6304,6335,6345,6338,6325,6314,6294,6277,6255,6243,6247,6251,6251,6265,6305,6307,6311,6306,
+6286,6282,6316,6292,6318,6433,6352,6224,6203,6265,6366,6377,6325,6268,6333,6393,6402,6373,5824,5578,
+5840,6098,6252,6304,6297,6265,6217,6204,6181,6208,6162,6125,6115,6105,6175,6184,6181,6141,6112,6062,
+6004,5920,5805,5747,5779,5864,5764,5818,5942,5972,5938,5789,5685,5674,5725,5691,5652,5623,5653,5691,
+5735,5818,5848,5652,5356,5511,5661,5721,5579,5286,4962,4908,5095,5305,5567,5512,5412,5214,4971,4790,
+4668,4602,4556,4535,4536,4539,4549,4612,4604,4520,4453,4405,4389,4374,4358,4332,4299,4246,4184,4133,
+4100,4064,4017,3988,3912,3841,3778,3730,3707,3746,3795,3687,3612,3583,3614,3490,3421,3375,3346,3287,
+3243,3149,3101,3069,3051,3029,2994,2953,2921,2910,2904,2869,2854,2825,2789,2773,2825,2865,2880,2755,
+2684,2647,2618,2558,2505,2479,2470,2446,2420,2476,2607,2825,2786,2514,2365,2286,2249,2245,2242,2230,
+2216,2183,2145,2114,2081,2037,2001,1999,1982,1988,1942,1825,1741,1789,1779,1739,1731,1707,1655,1646,
+1621,1605,1579,1541,1508,1473,1450,1431,1424,1406,1383,1378,1366,1354,1350,1330,1330,1317,1294,1257,
+1218,1196,1179,1124,1105,1078,1051,1038,1028,1017,1015,1011,1008,1010,1019,1044,1061,1069,1081,1091,
+1100,1113,1115,1116,1123,1123,1132,1150,1180,1221,1212,1221,1246,1239,1234,1245,1267,1287,1309,1322,
+1334,1358,1389,1365,1359,1350,1336,1323,1329,1411,1535,1500,1402,1368,1359,1407,1483,1398,1410,1399,
+1353,1350,1349,1364,1325,1286,1298,1360,1340,1282,1243,1219,1213,1190,1169,1155,1135,1119,1098,1075,
+1046,1012,980,956,935,916,890,873,859,837,810,778,746,724,706,692,678,651,625,600,
+582,559,535,511,494,463,428,400,372,344,316,289,254,217,190,165,139,114,85,67,
+38,10,-15,-48,-80,-118,-155,-191,-228,-261,-285,-314,-351,-394,-434,-471,-505,-546,-585,-631,
+-675,-717,-767,-814,-855,-897,-942,-984,-1028,-1072,-1114,-1161,-1196,-1229,-1267,-1305,-1353,-1393,-1434,-1460,
+-1493,-1535,-1583,-1643,-1695,-1748,-1796,-1841,-1887,-1934,-1981,-2027,-2080,-2125,-2169,-2211,-2252,-2299,-2352,-2399,
+-2447,-2493,-2528,-2557,-2588,-2624,-2655,-2684,-2718,-2751,-2777,-2808,-2842,-2879,-2918,-2955,-2987,-3013,-3042,-3076,
+-3110,-3141,-3170,-3203,-3238,-3271,-3294,-3319,-3354,-3382,-3407,-3430,-3453,-3473,-3485,-3504,-3526,-3543,-3557,-3562,
+-3572,-3580,-3594,-3613,-3625,-3632,-3634,-3628,-3624,-3621,-3625,-3623,-3619,-3617,-3609,-3606,-3600,-3599,-3596,-3588,
+-3579,-3569,-3554,-3533,-3513,-3499,-3478,-3460,-3441,-3418,-3395,-3367,-3341,-3315,-3281,-3257,-3240,-3213,-3163,-3131,
+-3099,-3058,-3017,-2977,-2954,-2899,-2873,-2844,-2811,-2763,-2727,-2678,-2631,-2586,-2546,-2498,-2454,-2411,-2373,-2317,
+-2284,-2248,-2211,-2168,-2124,-2083,-2036,-1989,-1939,-1890,-1837,-1805,-1756,-1722,-1675,-1640,-1591,-1552,-1502,-1460,
+-1419,-1375,-1326,-1284,-1247,-1205,-1170,-1138,-1107,-1074,-1046,-1014,-984,-950,-925,-894,-842,-802,-771,-738,
+-701,-668,-639,-608,-576,-542,-512,-479,-449,-420,-388,-355,-325,-288,-264,-236,-198,-164,-129,-102,
+-76,-52,-19,10,47,77,114,136,173,202,234,269,305,343,383,425,468,512,545,572,
+602,639,681,724,784,805,815,843,882,851,906,1024,1162,1255,1291,1332,1340,1370,1453,1533,
+1601,1630,1600,1512,1466,1369,1331,1306,1327,1340,1368,1461,1496,1558,1568,1471,1327,1255,975,764,
+617,545,468,385,283,159,-5,-136,-150,-78,-1,-21,-20,220,182,-12,-314,-538,-724,-758,
+-636,-357,-95,50,-336,-674,-842,-942,-990,-1008,-1036,-1044,-1044,-1061,-1087,-1131,-1174,-1219,-1256,-1297,
+-1337,-1397,-1493,-1594,-1673,-1770,-1883,-1986,-2102,-2223,-2338,-2452,-2559,-2640,-2713,-2781,-2835,-2890,-2927,-2959,
+-2978,-2991,-3016,-3032,-3051,-3056,-3073,-3093,-3131,-3167,-3209,-3245,-3294,-3402,-3555,-3662,-3714,-3771,-3801,-3788,
+-3786,-3824,-3894,-3939,-3974,-4024,-4063,-4104,-4096,-4022,-3969,-3939,-3932,-3984,-4048,-4168,-4257,-4319,-4350,-4375,
+-4365,-4335,-4306,-4281,-4254,-4229,-4208,-4187,-4166,-4150,-4136,-4111,-4077,-4035,-3985,-3928,-3874,-3805,-3742,-3681,
+-3611,-3548,-3503,-3461,-3401,-3343,-3293,-3246,-3198,-3135,-3066,-2987,-2904,-2832,-2765,-2698,-2622,-2533,-2435,-2340,
+-2258,-2165,-2062,-1969,-1880,-1793,-1703,-1622,-1589,-1551,-1443,-1365,-1322,-1280,-1244,-1199,-1139,-1077,-1031,-980,
+-922,-887,-835,-786,-723,-671,-621,-572,-530,-479,-436,-393,-334,-289,-253,-202,-156,-122,-77,-32,
+22,83,155,194,239,275,319,360,395,435,504,552,588,633,665,705,750,783,815,860,
+912,970,1011,1057,1086,1123,1164,1209,1254,1283,1314,1341,1376,1422,1460,1494,1529,1557,1596,1640,
+1684,1742,1774,1808,1903,1882,1992,1985,1950,1943,1942,1945,1963,1983,2028,2084,2053,2079,2112,2184,
+2228,2266,2273,2320,2362,2407,2471,2564,2674,2901,3097,3224,3316,3348,3333,3269,3210,3047,2935,2943,
+3050,3149,3218,3297,3304,3343,3396,3439,3476,3508,3533,3544,3575,3571,3499,3416,3326,3248,3159,3089,
+3047,3016,3004,2990,2983,2946,2918,2891,2854,2804,2757,2725,2712,2737,2743,2749,2743,2682,2648,2625,
+2598,2572,2532,2521,2522,2529,2521,2500,2542,2483,2478,2536,2518,2505,2554,2601,2616,2586,2577,2578,
+2578,2568,2554,2543,2553,2557,2553,2549,2535,2466,2458,2443,2397,2326,2286,2329,2387,2403,2363,2299,
+2211,2141,2090,2073,2098,2096,2077,2037,2005,1976,1938,1912,1888,1868,1860,1893,1823,1717,1670,1628,
+1605,1595,1549,1476,1409,1357,1285,1238,1192,1150,1059,950,859,762,694,631,558,489,473,456,
+410,356,309,254,202,167,99,12,-20,-31,-59,-53,-56,-57,-71,-103,-141,-153,-149,-152,
+-176,-198,-246,-272,-284,-291,-300,-312,-337,-366,-399,-428,-474,-519,-546,-559,-586,-615,-639,-659,
+-696,-729,-750,-772,-772,-843,-879,-930,-967,-953,-942,-922,-892,-862,-855,-861,-873,-911,-928,-947,
+-977,-1034,-1050,-1064,-1017,-955,-948,-913,-823,-734,-708,-693,-677,-686,-737,-819,-847,-801,-890,-875,
+-825,-762,-890,-1017,-1029,-1025,-1018,-1032,-1146,-1347,-1398,-1512,-1589,-1648,-1735,-1790,-1864,-1911,-1951,-2013,
+-2023,-2082,-2110,-2118,-2128,-2193,-2257,-2299,-2382,-2471,-2542,-2620,-2695,-2777,-2840,-2879,-2905,-2934,-2979,-3023,
+-3071,-3126,-3189,-3245,-3348,-3439,-3533,-3602,-3724,-3916,-4174,-4410,-4612,-4723,-4852,-4976,-5083,-5150,-5201,-5222,
+-5231,-5210,-5276,-5302,-5317,-5335,-5344,-5324,-5402,-5411,-5293,-5201,-5153,-5173,-5180,-5228,-5274,-5250,-5255,-5297,
+-5363,-5377,-5420,-5479,-5465,-5594,-5627,-5711,-5839,-5913,-5996,-6102,-6204,-6333,-6425,-6533,-6622,-6737,-6828,-6938,
+-7037,-7137,-7237,-7327,-7417,-7516,-7623,-7731,-7819,-7902,-7981,-8030,-8136,-8227,-8298,-8372,-8436,-8504,-8584,-8662,
+-8746,-8824,-8903,-8977,-9043,-9109,-9180,-9246,-9308,-9358,-9404,-9472,-9516,-9540,-9574,-9606,-9613,-9615,-9614,-9620,
+-9642,-9720,-9764,-9855,-9898,-9921,-9951,-9978,-10000,-9980,-9968,-9959,-9921,-9845,-9728,-9644,-9701,-9734,-9778,-9850,
+-9871,-9900,-10021,-10009,-9929,-9879,-9848,-9685,-9628,-9567,-9503,-9449,-9435,-9421,-9408,-9540,-9612,-9625,-9601,-9546,
+-9470,-9407,-9347,-9285,-9217,-9136,-9038,-8925,-8814,-8709,-8620,-8536,-8448,-8313,-8155,-7971,-7828,-7707,-7601,-7478,
+-7328,-7147,-6971,-6805,-6666,-6547,-6441,-6323,-6197,-6097,-6023,-5977,-5922,-5887,-5884,-5891,-5846,-5810,-5924,-6032,
+-5987,-5758,-5442,-5185,-4948,-4755,-4555,-4410,-4346,-4238,-4089,-3861,-3645,-3534,-3464,-3351,-3237,-3106,-2947,-2842,
+-2757,-2703,-2599,-2471,-2350,-2246,-2149,-2042,-2003,-1920,-1898,-1846,-1784,-1698,-1638,-1579,-1505,-1401,-1328,-1235,
+-1153,-1050,-963,-868,-770,-670,-583,-497,-405,-324,-256,-170,-66,42,171,297,392,482,568,672,
+779,863,976,1111,1227,1276,1340,1452,1587,1690,1807,1880,1968,2065,2180,2328,2427,2509,2616,2734,
+2854,2999,3115,3166,3262,3373,3478,3569,3616,3693,3693,3735,3807,3901,4089,4314,4515,4715,4897,5017,
+4985,4899,4859,4933,5097,5248,5294,5334,5421,5504,5547,5579,5593,5621,5621,5587,5675,5943,6156,6307,
+6504,6717,6820,6884,6842,6954,7133,7256,7292,7129,6966,6794,6907,6920,6666,5989,5409,5217,5494,5819,
+6044,6196,6296,6358,6391,6406,6407,6401,6383,6363,6347,6334,6323,6319,6318,6323,6324,6355,6354,6360,
+6349,6338,6323,6370,6376,6377,6500,6485,6328,6282,6292,6292,6299,6341,6366,6491,6458,6438,6272,5730,
+5757,6059,6201,6293,6326,6323,6320,6338,6283,6239,6198,6205,6174,6113,6126,6142,6184,6225,6209,6161,
+6135,6086,6038,5967,5880,5851,5835,5875,6031,6049,5998,6038,5926,5849,5779,5784,5825,5849,5830,5838,
+5847,5876,5958,5993,5796,5434,5416,5409,5394,5289,5136,5000,4986,5074,5233,5336,5336,5250,5128,4989,
+4860,4765,4704,4668,4690,4797,4734,4702,4759,4732,4648,4567,4499,4454,4439,4427,4400,4360,4311,4247,
+4197,4176,4148,4107,4056,4006,3938,3897,3829,3795,3914,3890,3707,3648,3631,3672,3525,3421,3374,3341,
+3276,3210,3173,3144,3110,3074,3051,3024,2982,2942,2914,2890,2869,2858,2834,2793,2770,2838,2890,2832,
+2908,2817,2695,2640,2599,2563,2529,2523,2509,2432,2463,2581,2843,2701,2448,2353,2301,2267,2255,2258,
+2253,2240,2213,2177,2144,2104,2066,2028,2039,2000,2007,1932,1815,1803,1830,1781,1748,1806,1709,1648,
+1639,1647,1640,1581,1548,1526,1504,1470,1463,1455,1434,1411,1399,1386,1370,1356,1357,1350,1341,1312,
+1282,1253,1231,1219,1171,1128,1091,1061,1045,1031,1018,1016,1015,1014,1019,1034,1043,1058,1072,1084,
+1088,1098,1120,1119,1113,1112,1122,1143,1174,1195,1232,1240,1237,1267,1257,1247,1249,1269,1289,1307,
+1313,1328,1336,1349,1351,1350,1349,1342,1335,1344,1462,1673,1550,1416,1390,1387,1468,1511,1404,1396,
+1406,1385,1373,1377,1397,1383,1358,1475,1559,1424,1368,1278,1258,1255,1240,1218,1195,1190,1164,1142,
+1118,1083,1047,1018,997,978,956,936,919,897,874,845,819,789,768,743,723,705,685,662,
+640,619,595,575,557,542,516,486,451,432,402,372,341,308,266,227,195,169,144,117,
+91,61,34,10,-22,-48,-83,-114,-150,-181,-215,-247,-279,-320,-360,-403,-437,-476,-520,-560,
+-607,-647,-689,-740,-785,-825,-865,-914,-957,-997,-1039,-1082,-1122,-1157,-1198,-1231,-1272,-1320,-1362,-1405,
+-1438,-1469,-1508,-1552,-1602,-1648,-1704,-1753,-1806,-1845,-1885,-1930,-1982,-2032,-2088,-2140,-2185,-2223,-2260,-2307,
+-2354,-2409,-2458,-2493,-2523,-2552,-2586,-2614,-2643,-2672,-2708,-2742,-2776,-2801,-2831,-2868,-2899,-2928,-2956,-2985,
+-3020,-3047,-3073,-3102,-3133,-3170,-3207,-3233,-3262,-3294,-3320,-3337,-3359,-3394,-3421,-3451,-3461,-3471,-3484,-3498,
+-3513,-3533,-3552,-3555,-3561,-3566,-3569,-3573,-3568,-3569,-3579,-3573,-3575,-3575,-3575,-3571,-3567,-3562,-3554,-3549,
+-3550,-3543,-3529,-3515,-3499,-3482,-3465,-3439,-3427,-3407,-3393,-3371,-3342,-3318,-3290,-3267,-3237,-3208,-3184,-3142,
+-3093,-3064,-3033,-3000,-2955,-2917,-2886,-2862,-2830,-2781,-2755,-2712,-2661,-2622,-2584,-2546,-2501,-2460,-2426,-2378,
+-2339,-2302,-2261,-2214,-2170,-2126,-2091,-2050,-2001,-1953,-1903,-1857,-1807,-1767,-1723,-1671,-1630,-1583,-1545,-1501,
+-1458,-1416,-1370,-1328,-1292,-1245,-1201,-1177,-1135,-1111,-1079,-1046,-1014,-974,-942,-907,-876,-845,-810,-768,
+-737,-708,-675,-645,-617,-591,-562,-528,-497,-466,-433,-405,-377,-348,-313,-280,-245,-212,-180,-147,
+-122,-96,-64,-35,-1,30,60,90,119,151,185,225,261,292,327,366,405,451,487,522,
+548,584,638,680,720,769,809,881,902,891,944,987,1052,1094,1144,1203,1279,1348,1363,1437,
+1465,1509,1577,1560,1518,1469,1454,1418,1387,1355,1361,1411,1521,1560,1585,1621,1590,1452,1394,1328,
+1021,787,701,631,558,454,325,161,36,6,94,237,102,-19,156,367,258,-111,-361,-451,
+-230,-81,-2,-16,-213,-591,-763,-862,-922,-960,-984,-1005,-1033,-1046,-1045,-1049,-1067,-1090,-1137,-1179,
+-1241,-1292,-1344,-1414,-1485,-1573,-1673,-1770,-1863,-1982,-2093,-2187,-2279,-2370,-2437,-2501,-2571,-2631,-2673,-2683,
+-2720,-2780,-2837,-2900,-2933,-2958,-2976,-2991,-3004,-3039,-3088,-3130,-3166,-3219,-3283,-3342,-3430,-3514,-3579,-3640,
+-3664,-3652,-3687,-3746,-3787,-3829,-3889,-3933,-3951,-3924,-3894,-3868,-3842,-3838,-3861,-3904,-3990,-4123,-4237,-4306,
+-4355,-4378,-4349,-4323,-4302,-4274,-4248,-4222,-4191,-4173,-4158,-4151,-4127,-4087,-4046,-3994,-3943,-3878,-3816,-3753,
+-3690,-3624,-3567,-3512,-3455,-3381,-3316,-3267,-3212,-3151,-3092,-3040,-2984,-2914,-2862,-2819,-2752,-2667,-2582,-2470,
+-2400,-2339,-2245,-2156,-2068,-1984,-1907,-1842,-1769,-1721,-1620,-1483,-1419,-1384,-1295,-1242,-1221,-1163,-1098,-1050,
+-992,-944,-898,-843,-782,-725,-659,-613,-563,-519,-462,-398,-343,-286,-242,-197,-161,-129,-85,-42,
+16,75,112,146,197,259,322,357,417,468,509,541,580,615,662,683,721,782,817,848,
+876,917,958,997,1038,1083,1116,1152,1188,1221,1257,1285,1319,1364,1419,1472,1517,1543,1567,1600,
+1646,1698,1813,1799,1779,1811,1842,1878,1916,1934,1938,1940,1944,1963,1976,1994,2018,2040,2080,2093,
+2143,2186,2217,2249,2298,2339,2383,2426,2490,2548,2709,3015,3164,3258,3353,3389,3269,3220,3118,2974,
+2951,3027,3140,3190,3247,3288,3349,3403,3439,3478,3491,3503,3527,3564,3536,3472,3403,3331,3257,3171,
+3098,3062,3051,3038,3023,2997,2965,2940,2901,2859,2806,2766,2737,2724,2731,2742,2782,2766,2707,2661,
+2644,2644,2617,2571,2553,2546,2546,2550,2542,2599,2525,2522,2557,2555,2557,2578,2616,2629,2619,2605,
+2601,2596,2587,2590,2576,2571,2569,2574,2584,2583,2547,2512,2488,2453,2385,2336,2346,2372,2366,2315,
+2261,2190,2133,2082,2083,2095,2091,2077,2041,1999,1973,1940,1909,1881,1866,1838,1824,1775,1701,1686,
+1655,1607,1563,1535,1473,1457,1441,1378,1311,1229,1141,1050,953,884,812,743,666,592,549,513,
+466,413,368,338,285,222,191,121,37,9,-23,-62,-61,-41,-33,-55,-97,-151,-176,-197,
+-217,-228,-252,-296,-346,-364,-388,-398,-394,-395,-409,-436,-462,-501,-534,-550,-565,-601,-641,-659,
+-678,-715,-753,-783,-802,-817,-864,-878,-885,-953,-990,-993,-976,-944,-903,-898,-905,-926,-947,-964,
+-978,-999,-1057,-1097,-1088,-1060,-1025,-997,-959,-773,-744,-713,-689,-674,-713,-788,-823,-828,-825,-864,
+-897,-811,-852,-1001,-1069,-1070,-960,-938,-1069,-1228,-1390,-1453,-1556,-1625,-1713,-1829,-1881,-1974,-2016,-2070,
+-2141,-2164,-2192,-2203,-2178,-2187,-2251,-2337,-2416,-2496,-2573,-2649,-2739,-2803,-2868,-2922,-2960,-2976,-2998,-3044,
+-3087,-3118,-3170,-3235,-3319,-3409,-3505,-3597,-3708,-3848,-4055,-4309,-4541,-4685,-4807,-4956,-5071,-5157,-5205,-5238,
+-5258,-5261,-5281,-5317,-5351,-5377,-5406,-5435,-5465,-5494,-5462,-5336,-5227,-5192,-5220,-5228,-5266,-5286,-5291,-5315,
+-5370,-5405,-5385,-5432,-5489,-5585,-5642,-5663,-5756,-5872,-5938,-6005,-6124,-6227,-6326,-6406,-6524,-6613,-6720,-6834,
+-6922,-7044,-7123,-7237,-7342,-7431,-7536,-7620,-7730,-7834,-7917,-7992,-8040,-8147,-8243,-8322,-8392,-8463,-8538,-8616,
+-8697,-8775,-8850,-8922,-8992,-9058,-9128,-9199,-9263,-9330,-9378,-9424,-9491,-9540,-9558,-9586,-9621,-9633,-9630,-9631,
+-9662,-9702,-9742,-9813,-9879,-9915,-9935,-9961,-9988,-10001,-10005,-9985,-9998,-9966,-9929,-9834,-9682,-9714,-9771,-9824,
+-9878,-9911,-9986,-10069,-10055,-10003,-9956,-9901,-9709,-9639,-9573,-9494,-9440,-9448,-9436,-9387,-9439,-9568,-9590,-9587,
+-9537,-9474,-9413,-9365,-9308,-9247,-9173,-9083,-8964,-8840,-8729,-8636,-8544,-8447,-8324,-8156,-7973,-7833,-7719,-7608,
+-7479,-7324,-7147,-6969,-6805,-6666,-6549,-6440,-6328,-6188,-6052,-5968,-5893,-5839,-5803,-5808,-5833,-5825,-5797,-5886,
+-5992,-5978,-5795,-5436,-5163,-4929,-4716,-4524,-4379,-4286,-4185,-4011,-3772,-3605,-3499,-3426,-3313,-3200,-3071,-2909,
+-2806,-2709,-2645,-2541,-2434,-2315,-2186,-2095,-2018,-1939,-1849,-1805,-1761,-1710,-1643,-1568,-1510,-1445,-1349,-1260,
+-1178,-1095,-996,-907,-804,-707,-612,-519,-427,-339,-252,-171,-85,10,120,246,349,436,519,600,
+690,779,897,1029,1164,1280,1323,1394,1498,1639,1747,1849,1916,2030,2135,2248,2417,2474,2559,2673,
+2786,2901,3023,3111,3209,3353,3474,3572,3617,3611,3638,3698,3754,3826,3970,4159,4375,4611,4803,4961,
+5022,4976,4922,4945,5069,5214,5274,5286,5360,5431,5507,5579,5608,5638,5658,5652,5683,5906,6441,6680,
+6751,6820,6835,6832,6850,7029,7141,7298,7407,7335,7160,7051,6889,6932,6986,6755,6146,5508,5248,5467,
+5819,6073,6247,6354,6426,6464,6475,6478,6470,6446,6434,6408,6391,6399,6409,6421,6439,6451,6444,6426,
+6421,6410,6386,6366,6398,6420,6456,6626,6463,6084,6199,6247,6235,6232,6324,6467,6529,6546,6557,6068,
+5729,5958,6190,6274,6334,6350,6340,6313,6302,6309,6335,6340,6219,6198,6199,6219,6189,6185,6165,6216,
+6211,6172,6145,6129,6053,5967,5906,5894,5962,6027,5988,6042,6003,5956,5972,5962,5934,5895,5857,5828,
+5874,5907,5947,6014,6020,5826,5479,5371,5305,5249,5168,5108,5067,5086,5102,5213,5265,5244,5177,5089,
+5004,4929,4862,4809,4782,4817,4950,4853,4845,4905,4885,4803,4678,4597,4538,4499,4480,4461,4421,4376,
+4313,4266,4241,4220,4183,4139,4090,4032,3966,3892,3854,3910,3825,3722,3700,3649,3621,3566,3476,3402,
+3367,3341,3257,3222,3194,3164,3118,3078,3050,3015,2978,2949,2919,2900,2882,2851,2813,2774,2756,2767,
+2797,2920,2963,2766,2733,2709,2639,2608,2601,2540,2481,2491,2622,2725,2596,2446,2355,2311,2285,2263,
+2268,2270,2264,2249,2213,2180,2139,2093,2052,2067,2019,1998,1931,1872,1866,1841,1775,1781,1750,1720,
+1673,1657,1648,1628,1616,1580,1536,1523,1499,1482,1477,1446,1428,1413,1392,1375,1365,1370,1367,1357,
+1342,1325,1303,1282,1272,1245,1172,1126,1084,1064,1056,1037,1026,1023,1023,1027,1035,1051,1067,1074,
+1085,1095,1113,1118,1106,1105,1113,1127,1149,1174,1200,1217,1257,1252,1269,1273,1260,1255,1274,1289,
+1302,1312,1318,1325,1340,1345,1346,1349,1345,1348,1352,1387,1443,1447,1418,1462,1426,1427,1423,1423,
+1423,1433,1453,1452,1368,1363,1392,1460,1424,1406,1353,1319,1295,1297,1278,1262,1254,1229,1212,1190,
+1175,1149,1118,1082,1053,1033,1013,994,976,956,936,912,889,864,832,803,775,752,734,716,
+692,671,648,625,605,588,572,550,530,508,484,446,412,390,350,314,278,245,210,180,
+146,117,88,57,34,5,-21,-46,-71,-105,-141,-180,-211,-245,-284,-325,-362,-401,-446,-495,
+-536,-574,-619,-662,-705,-752,-797,-843,-887,-928,-966,-1003,-1045,-1084,-1124,-1162,-1203,-1244,-1287,-1331,
+-1377,-1409,-1440,-1476,-1519,-1562,-1607,-1657,-1711,-1765,-1804,-1845,-1884,-1928,-1978,-2035,-2093,-2145,-2191,-2228,
+-2265,-2306,-2357,-2403,-2442,-2480,-2514,-2543,-2570,-2595,-2627,-2656,-2692,-2723,-2751,-2781,-2805,-2829,-2856,-2889,
+-2922,-2960,-2989,-3015,-3044,-3086,-3127,-3163,-3196,-3225,-3253,-3275,-3292,-3321,-3347,-3368,-3392,-3408,-3431,-3444,
+-3458,-3469,-3479,-3484,-3495,-3501,-3507,-3519,-3523,-3527,-3528,-3528,-3527,-3531,-3535,-3536,-3533,-3526,-3522,-3518,
+-3514,-3511,-3505,-3490,-3476,-3467,-3445,-3433,-3428,-3387,-3380,-3367,-3341,-3312,-3295,-3262,-3237,-3209,-3173,-3151,
+-3116,-3074,-3044,-3014,-2980,-2937,-2901,-2856,-2843,-2803,-2765,-2737,-2696,-2651,-2615,-2568,-2531,-2493,-2459,-2417,
+-2370,-2336,-2294,-2248,-2210,-2172,-2126,-2082,-2043,-1999,-1953,-1902,-1855,-1807,-1764,-1715,-1671,-1626,-1582,-1536,
+-1498,-1460,-1418,-1375,-1337,-1295,-1252,-1215,-1180,-1149,-1115,-1077,-1043,-1012,-980,-941,-911,-879,-842,-805,
+-775,-740,-716,-683,-659,-634,-605,-573,-545,-517,-486,-453,-423,-390,-361,-327,-297,-267,-234,-200,
+-163,-136,-109,-80,-52,-23,3,36,73,106,136,172,206,236,273,307,347,390,428,462,
+493,531,587,625,658,734,808,815,839,886,956,988,1033,1105,1117,1184,1183,1221,1269,1404,
+1484,1509,1527,1585,1589,1577,1574,1562,1525,1465,1431,1410,1456,1544,1586,1636,1674,1659,1613,1510,
+1495,1221,973,902,863,891,663,519,365,248,204,262,373,130,-56,58,467,554,201,-82,
+-3,132,23,-54,-250,-489,-698,-789,-832,-878,-907,-929,-950,-987,-1010,-1015,-1018,-1034,-1060,-1102,
+-1138,-1194,-1257,-1319,-1389,-1443,-1491,-1571,-1676,-1765,-1863,-1961,-2048,-2114,-2161,-2235,-2330,-2420,-2469,-2510,
+-2564,-2625,-2688,-2769,-2831,-2866,-2894,-2923,-2937,-2963,-2992,-3030,-3062,-3111,-3155,-3200,-3236,-3254,-3289,-3346,
+-3437,-3504,-3524,-3563,-3618,-3659,-3713,-3769,-3817,-3831,-3773,-3759,-3751,-3744,-3741,-3770,-3811,-3862,-3956,-4090,
+-4222,-4299,-4325,-4328,-4315,-4294,-4266,-4241,-4220,-4190,-4169,-4157,-4158,-4149,-4114,-4077,-4033,-3979,-3917,-3847,
+-3785,-3714,-3639,-3571,-3499,-3428,-3361,-3300,-3240,-3177,-3118,-3064,-3028,-2969,-2918,-2861,-2825,-2768,-2714,-2649,
+-2568,-2483,-2387,-2299,-2193,-2092,-1988,-1915,-1832,-1769,-1708,-1638,-1554,-1442,-1361,-1269,-1196,-1209,-1096,-1015,
+-965,-942,-877,-817,-758,-705,-651,-603,-556,-515,-478,-443,-397,-337,-288,-232,-195,-160,-146,-89,
+-44,-3,50,97,177,219,267,317,386,458,509,536,568,598,621,671,699,717,765,805,
+843,889,929,966,1004,1053,1087,1120,1151,1185,1214,1241,1278,1314,1365,1425,1476,1520,1549,1571,
+1601,1661,1731,1752,1859,1901,1869,1844,1867,1909,1939,1924,1931,1938,1971,1973,1991,2022,2034,2059,
+2096,2136,2166,2200,2231,2278,2315,2349,2386,2436,2493,2601,2925,3096,3127,3162,3197,3193,3173,3179,
+3064,2983,3026,3108,3177,3238,3295,3344,3396,3420,3450,3462,3480,3504,3508,3481,3431,3387,3335,3272,
+3189,3108,3084,3072,3053,3035,3000,2967,2938,2908,2862,2801,2777,2755,2735,2724,2745,2794,2761,2732,
+2692,2685,2693,2652,2600,2581,2584,2593,2615,2599,2645,2552,2536,2568,2578,2570,2585,2618,2636,2627,
+2619,2622,2603,2596,2593,2589,2579,2561,2564,2580,2582,2569,2538,2516,2463,2396,2349,2328,2331,2323,
+2270,2222,2172,2135,2107,2108,2105,2100,2071,2034,1994,1970,1942,1955,1896,1868,1821,1786,1768,1720,
+1733,1750,1660,1596,1564,1523,1548,1502,1385,1293,1159,1093,1031,956,889,802,733,669,607,559,
+509,471,409,375,347,284,222,172,108,54,8,-40,-67,-79,-62,-43,-53,-96,-148,-194,
+-234,-258,-266,-288,-328,-394,-429,-472,-497,-495,-478,-469,-481,-508,-526,-540,-555,-572,-620,-663,
+-683,-704,-742,-776,-815,-840,-860,-889,-919,-901,-947,-996,-1016,-1019,-1002,-969,-946,-960,-984,-1000,
+-1010,-1018,-1028,-1055,-1104,-1105,-1063,-1048,-1022,-1007,-830,-747,-700,-702,-700,-747,-784,-829,-864,-881,
+-912,-905,-910,-990,-1091,-1079,-1015,-939,-976,-1103,-1203,-1378,-1504,-1570,-1646,-1793,-1913,-1996,-2078,-2119,
+-2180,-2246,-2270,-2267,-2244,-2282,-2338,-2383,-2430,-2509,-2607,-2684,-2770,-2850,-2906,-2949,-2979,-2999,-3028,-3072,
+-3106,-3173,-3211,-3269,-3358,-3439,-3508,-3583,-3665,-3795,-3971,-4224,-4478,-4657,-4768,-4907,-5053,-5155,-5223,-5252,
+-5270,-5284,-5298,-5325,-5359,-5403,-5444,-5483,-5527,-5562,-5563,-5478,-5306,-5203,-5217,-5254,-5273,-5314,-5311,-5322,
+-5381,-5405,-5422,-5447,-5472,-5523,-5528,-5595,-5687,-5815,-5852,-5898,-6024,-6147,-6243,-6327,-6423,-6533,-6606,-6725,
+-6832,-6926,-7046,-7139,-7248,-7347,-7442,-7539,-7633,-7745,-7845,-7937,-8016,-8086,-8145,-8258,-8343,-8422,-8498,-8575,
+-8653,-8732,-8810,-8880,-8946,-9011,-9078,-9145,-9214,-9279,-9347,-9394,-9445,-9507,-9552,-9570,-9600,-9639,-9647,-9640,
+-9633,-9653,-9699,-9723,-9829,-9895,-9928,-9944,-9972,-9987,-10003,-10026,-10000,-10014,-9994,-9983,-9920,-9753,-9736,-9806,
+-9851,-9907,-9971,-10093,-10122,-10127,-10086,-10022,-9939,-9728,-9646,-9565,-9464,-9410,-9441,-9431,-9394,-9354,-9510,-9590,
+-9588,-9545,-9493,-9446,-9400,-9348,-9285,-9215,-9123,-9011,-8874,-8755,-8652,-8551,-8448,-8320,-8167,-7988,-7848,-7727,
+-7612,-7481,-7320,-7142,-6963,-6817,-6691,-6553,-6423,-6287,-6153,-6019,-5900,-5821,-5759,-5730,-5733,-5792,-5819,-5819,
+-5863,-5967,-6034,-5853,-5555,-5233,-4942,-4695,-4517,-4336,-4243,-4128,-3935,-3704,-3562,-3476,-3394,-3298,-3168,-3027,
+-2877,-2773,-2665,-2582,-2482,-2395,-2261,-2142,-2044,-1953,-1873,-1775,-1722,-1679,-1621,-1574,-1507,-1453,-1387,-1299,
+-1198,-1116,-1034,-945,-850,-749,-642,-555,-463,-377,-283,-187,-87,-8,82,197,308,396,496,565,
+642,732,830,955,1090,1214,1324,1374,1441,1544,1668,1754,1871,1966,2088,2197,2367,2508,2507,2607,
+2724,2822,2926,3036,3150,3279,3437,3591,3569,3558,3555,3615,3701,3801,3922,4064,4244,4438,4660,4889,
+5015,5031,5005,5018,5071,5139,5241,5266,5316,5397,5481,5548,5609,5651,5680,5696,5689,5800,6199,6736,
+6848,6805,6843,6883,6881,6859,7073,7226,7393,7332,7251,7259,7064,6902,6946,6983,6781,6191,5563,5266,
+5458,5810,6098,6275,6382,6454,6489,6516,6526,6522,6516,6495,6467,6454,6475,6482,6508,6517,6519,6507,
+6492,6489,6487,6467,6416,6470,6495,6610,6787,6378,5950,6112,6165,6168,6251,6376,6473,6525,6496,6253,
+5883,5926,6164,6271,6331,6375,6374,6363,6338,6312,6294,6290,6304,6329,6320,6303,6266,6225,6216,6208,
+6191,6252,6216,6198,6172,6138,6058,5963,5943,5996,5991,6046,6029,6043,6028,5969,5965,5947,5964,5959,
+5957,5920,5890,5930,5948,5978,5782,5589,5560,5393,5206,5131,5106,5093,5099,5156,5287,5438,5334,5189,
+5104,5054,4999,4947,4911,4894,4883,4878,4890,4922,5040,5157,5037,4833,4685,4604,4558,4527,4495,4466,
+4424,4381,4341,4320,4301,4263,4208,4159,4103,4028,3951,3896,3867,3815,3760,3764,3702,3641,3592,3531,
+3468,3428,3383,3331,3286,3250,3212,3168,3123,3081,3045,3010,2986,2961,2945,2925,2892,2834,2784,2727,
+2689,2721,2827,3010,2892,2856,2882,2709,2698,2638,2581,2534,2528,2583,2645,2517,2493,2415,2359,2329,
+2300,2291,2282,2278,2267,2241,2210,2169,2117,2076,2084,2034,2043,2014,1928,1896,1828,1814,1787,1747,
+1731,1713,1699,1660,1629,1604,1581,1581,1545,1538,1498,1490,1467,1447,1429,1402,1381,1376,1372,1376,
+1392,1394,1389,1375,1341,1318,1288,1251,1163,1112,1081,1073,1080,1044,1034,1032,1035,1037,1049,1061,
+1073,1095,1111,1123,1113,1101,1110,1119,1126,1140,1163,1194,1219,1238,1254,1273,1266,1259,1258,1270,
+1289,1296,1312,1318,1326,1344,1349,1347,1356,1363,1367,1372,1378,1388,1381,1390,1488,1526,1446,1425,
+1430,1430,1433,1447,1525,1421,1375,1376,1394,1388,1391,1371,1357,1385,1337,1299,1277,1269,1251,1254,
+1236,1221,1208,1210,1126,1084,1065,1050,1033,1018,998,980,957,933,914,886,851,822,794,774,
+753,728,699,678,650,629,614,598,578,558,541,504,472,450,432,391,367,328,284,249,
+214,176,147,117,93,63,38,10,-16,-41,-77,-108,-148,-181,-216,-252,-290,-331,-370,-413,
+-456,-500,-539,-586,-626,-675,-720,-767,-812,-857,-897,-934,-973,-1011,-1051,-1088,-1126,-1168,-1208,-1251,
+-1299,-1342,-1377,-1412,-1451,-1491,-1532,-1574,-1625,-1678,-1729,-1777,-1810,-1848,-1878,-1925,-1979,-2039,-2097,-2149,
+-2185,-2220,-2257,-2298,-2339,-2380,-2423,-2460,-2489,-2515,-2540,-2570,-2592,-2628,-2660,-2688,-2725,-2752,-2782,-2816,
+-2849,-2889,-2924,-2956,-2993,-3024,-3051,-3077,-3109,-3134,-3165,-3192,-3214,-3234,-3267,-3291,-3310,-3327,-3348,-3367,
+-3379,-3398,-3407,-3418,-3420,-3435,-3450,-3460,-3468,-3477,-3481,-3480,-3485,-3490,-3495,-3497,-3496,-3496,-3489,-3479,
+-3475,-3463,-3463,-3464,-3455,-3441,-3422,-3411,-3392,-3389,-3378,-3354,-3333,-3311,-3281,-3269,-3239,-3198,-3177,-3138,
+-3116,-3097,-3063,-3031,-2992,-2960,-2923,-2883,-2848,-2822,-2781,-2752,-2718,-2675,-2634,-2598,-2557,-2521,-2482,-2446,
+-2408,-2367,-2325,-2282,-2239,-2197,-2158,-2115,-2075,-2034,-1987,-1941,-1896,-1852,-1810,-1762,-1714,-1673,-1628,-1579,
+-1546,-1502,-1456,-1418,-1380,-1338,-1298,-1260,-1220,-1185,-1145,-1114,-1087,-1049,-1012,-986,-959,-917,-876,-846,
+-810,-790,-757,-725,-701,-670,-646,-617,-587,-561,-534,-501,-471,-438,-400,-376,-345,-316,-286,-254,
+-222,-184,-152,-125,-93,-67,-40,-12,19,50,85,124,151,186,214,248,287,327,366,402,
+439,486,530,571,609,666,756,773,777,867,934,974,1009,1063,1105,1137,1193,1188,1150,1085,
+1266,1371,1460,1569,1597,1598,1627,1689,1649,1617,1550,1485,1446,1457,1525,1590,1667,1831,1827,1775,
+1619,1507,1356,1187,1121,1080,1120,957,805,660,480,398,455,412,115,-60,22,459,763,443,
+235,130,12,-154,-312,-469,-631,-712,-764,-781,-810,-839,-857,-883,-921,-954,-972,-984,-1008,-1038,
+-1073,-1109,-1162,-1224,-1279,-1333,-1398,-1437,-1497,-1589,-1670,-1743,-1811,-1889,-1950,-2007,-2086,-2187,-2281,-2360,
+-2444,-2500,-2568,-2636,-2665,-2755,-2804,-2835,-2886,-2912,-2942,-2972,-2995,-3028,-3063,-3095,-3126,-3148,-3145,-3146,
+-3176,-3234,-3305,-3387,-3442,-3492,-3543,-3596,-3651,-3699,-3711,-3640,-3615,-3605,-3606,-3619,-3659,-3710,-3769,-3858,
+-4001,-4126,-4217,-4253,-4251,-4246,-4235,-4214,-4202,-4189,-4167,-4146,-4132,-4131,-4130,-4112,-4080,-4035,-3990,-3938,
+-3881,-3825,-3753,-3680,-3601,-3522,-3447,-3387,-3329,-3266,-3201,-3133,-3069,-3017,-2959,-2897,-2852,-2837,-2774,-2713,
+-2650,-2566,-2488,-2412,-2340,-2270,-2215,-2132,-2064,-1984,-1896,-1805,-1723,-1651,-1545,-1462,-1384,-1298,-1279,-1122,
+-1052,-1011,-978,-940,-859,-772,-700,-621,-555,-515,-477,-443,-388,-343,-282,-227,-152,-127,-104,-71,
+-40,-4,31,86,144,200,293,328,372,420,456,501,558,596,612,632,686,739,759,800,
+842,890,920,948,964,1006,1033,1068,1115,1158,1195,1216,1239,1269,1310,1366,1410,1462,1505,1546,
+1584,1633,1751,1802,1783,1843,1964,1964,1864,1867,1881,1887,1898,1914,1931,1948,1968,1991,2008,2025,
+2054,2088,2130,2152,2178,2210,2247,2277,2305,2336,2377,2420,2485,2732,2950,3007,3050,3077,3135,3165,
+3176,3158,3055,3042,3090,3169,3247,3294,3329,3356,3371,3385,3400,3436,3466,3460,3415,3365,3373,3347,
+3314,3195,3111,3086,3077,3058,3039,3000,2955,2926,2898,2869,2807,2783,2763,2735,2715,2732,2769,2766,
+2747,2731,2740,2718,2667,2630,2621,2627,2638,2685,2645,2639,2570,2563,2620,2599,2593,2618,2633,2633,
+2623,2628,2617,2586,2578,2570,2567,2550,2518,2524,2541,2543,2530,2496,2475,2433,2393,2351,2317,2309,
+2289,2254,2213,2177,2158,2152,2151,2144,2105,2079,2049,2012,1961,1952,1998,1961,1892,1846,1872,1819,
+1790,1730,1748,1693,1650,1622,1592,1542,1505,1417,1320,1214,1142,1043,969,875,766,709,649,597,
+569,503,457,391,361,321,255,177,113,64,8,-40,-74,-88,-97,-81,-75,-78,-114,-171,
+-225,-269,-284,-297,-317,-357,-409,-456,-520,-570,-581,-560,-539,-545,-558,-570,-570,-581,-604,-647,
+-680,-702,-732,-766,-800,-834,-863,-890,-919,-940,-938,-963,-1001,-1008,-1033,-1051,-1047,-1018,-1011,-1026,
+-1042,-1061,-1071,-1070,-1080,-1112,-1121,-1084,-1047,-1056,-1051,-983,-862,-716,-749,-817,-850,-849,-839,-884,
+-868,-978,-944,-995,-1062,-1119,-1119,-976,-962,-1059,-1210,-1288,-1390,-1497,-1562,-1701,-1880,-2015,-2099,-2187,
+-2237,-2279,-2324,-2355,-2357,-2347,-2414,-2457,-2495,-2546,-2617,-2694,-2773,-2859,-2914,-2963,-3007,-3039,-3061,-3121,
+-3158,-3193,-3288,-3340,-3409,-3507,-3592,-3649,-3696,-3785,-3926,-4106,-4360,-4619,-4762,-4872,-5017,-5136,-5217,-5272,
+-5295,-5305,-5313,-5326,-5366,-5408,-5456,-5496,-5546,-5590,-5617,-5591,-5438,-5290,-5209,-5238,-5280,-5322,-5317,-5341,
+-5386,-5428,-5453,-5477,-5485,-5502,-5571,-5602,-5628,-5706,-5812,-5808,-5930,-6045,-6134,-6223,-6335,-6428,-6535,-6636,
+-6732,-6829,-6927,-7043,-7126,-7243,-7342,-7442,-7534,-7635,-7745,-7845,-7936,-8018,-8090,-8160,-8265,-8356,-8450,-8533,
+-8613,-8693,-8772,-8849,-8914,-8969,-9029,-9098,-9164,-9225,-9305,-9347,-9414,-9458,-9513,-9555,-9579,-9613,-9644,-9646,
+-9637,-9637,-9655,-9679,-9760,-9843,-9907,-9940,-9952,-9968,-9987,-10005,-10030,-10015,-10058,-10027,-10014,-9991,-9858,-9768,
+-9841,-9901,-9971,-10109,-10203,-10216,-10206,-10150,-10077,-9981,-9746,-9642,-9547,-9417,-9309,-9398,-9420,-9384,-9335,-9447,
+-9616,-9606,-9572,-9526,-9482,-9441,-9389,-9324,-9248,-9157,-9044,-8918,-8783,-8671,-8564,-8449,-8333,-8188,-8017,-7871,
+-7741,-7621,-7491,-7336,-7166,-7001,-6856,-6707,-6557,-6397,-6237,-6097,-5972,-5846,-5755,-5700,-5668,-5696,-5755,-5820,
+-5868,-5882,-5980,-6076,-5913,-5600,-5213,-4916,-4692,-4516,-4349,-4209,-4081,-3879,-3660,-3527,-3453,-3364,-3259,-3136,
+-2989,-2857,-2750,-2623,-2516,-2417,-2323,-2215,-2108,-1994,-1904,-1818,-1716,-1644,-1608,-1554,-1493,-1426,-1366,-1309,
+-1228,-1122,-1045,-972,-890,-801,-711,-597,-499,-416,-316,-207,-123,-23,64,167,272,373,457,556,
+644,726,813,912,1030,1155,1267,1375,1454,1526,1619,1682,1772,1878,1988,2115,2231,2378,2461,2534,
+2642,2746,2853,2994,3096,3214,3333,3435,3495,3542,3527,3544,3627,3760,3935,4076,4205,4367,4527,4742,
+4958,5063,5059,5071,5117,5188,5231,5272,5315,5390,5461,5526,5585,5622,5661,5691,5714,5752,5985,6411,
+6767,6801,6813,6826,6842,6784,6716,6938,7158,7303,7269,7243,7260,7018,6815,6855,6906,6737,6165,5520,
+5215,5438,5826,6087,6297,6429,6509,6552,6570,6580,6581,6579,6561,6539,6521,6521,6545,6570,6577,6565,
+6557,6544,6591,6550,6516,6484,6630,6651,6858,6934,6412,6045,6147,6187,6198,6226,6238,6284,6279,6098,
+5955,5991,6198,6260,6349,6381,6388,6403,6408,6380,6350,6336,6321,6312,6319,6338,6347,6374,6351,6245,
+6231,6224,6250,6240,6226,6229,6216,6148,6046,6062,6107,6041,6023,6027,6086,6056,6111,6060,6034,6006,
+5947,5936,5925,5957,5945,5836,5799,5824,5738,5621,5367,5206,5161,5181,5138,5131,5232,5506,5769,5596,
+5273,5146,5109,5072,5016,4971,4948,4925,4906,4906,4970,5157,5460,5253,4962,4778,4668,4589,4542,4505,
+4487,4478,4477,4472,4446,4417,4356,4283,4214,4156,4087,4015,3962,3915,3852,3791,3819,3736,3696,3662,
+3603,3533,3484,3451,3400,3344,3300,3260,3215,3172,3124,3077,3041,3018,3005,2989,2970,2930,2870,2803,
+2727,2673,2670,2711,2828,3044,3125,2941,2718,2756,2829,2629,2560,2533,2561,2633,2551,2541,2520,2457,
+2427,2387,2335,2301,2285,2273,2259,2226,2187,2139,2098,2099,2085,2072,2027,1914,1864,1825,1785,1780,
+1767,1758,1726,1709,1672,1652,1629,1606,1590,1572,1561,1523,1517,1498,1474,1456,1422,1394,1389,1385,
+1401,1432,1438,1444,1434,1398,1361,1326,1278,1201,1142,1099,1079,1074,1062,1055,1050,1044,1047,1053,
+1063,1084,1107,1112,1110,1105,1102,1115,1121,1132,1137,1155,1179,1210,1232,1244,1261,1253,1247,1250,
+1261,1286,1301,1318,1327,1335,1350,1350,1357,1396,1380,1392,1397,1406,1409,1401,1414,1462,1627,1489,
+1427,1426,1421,1399,1417,1556,1642,1445,1403,1433,1460,1445,1415,1390,1371,1378,1375,1342,1297,1272,
+1271,1261,1254,1230,1200,1157,1125,1104,1088,1073,1061,1041,1020,1001,979,954,933,899,869,840,
+815,795,773,744,719,693,672,649,629,605,583,568,545,536,506,464,433,394,360,322,
+286,258,225,193,165,134,105,76,48,17,-13,-41,-78,-113,-148,-187,-223,-259,-302,-343,
+-385,-427,-469,-516,-551,-593,-639,-685,-731,-779,-822,-861,-907,-949,-986,-1024,-1055,-1093,-1127,-1172,
+-1213,-1256,-1299,-1339,-1381,-1417,-1459,-1503,-1551,-1604,-1654,-1703,-1741,-1779,-1806,-1851,-1883,-1929,-1990,-2042,
+-2091,-2131,-2168,-2206,-2242,-2279,-2322,-2360,-2389,-2412,-2439,-2474,-2510,-2535,-2574,-2616,-2655,-2695,-2737,-2771,
+-2802,-2823,-2846,-2865,-2896,-2927,-2962,-2988,-3019,-3054,-3084,-3109,-3138,-3164,-3185,-3208,-3227,-3251,-3268,-3289,
+-3306,-3319,-3336,-3348,-3343,-3368,-3376,-3385,-3402,-3415,-3418,-3424,-3425,-3443,-3450,-3447,-3455,-3452,-3444,-3436,
+-3429,-3429,-3424,-3422,-3417,-3410,-3398,-3386,-3376,-3364,-3346,-3338,-3326,-3300,-3273,-3252,-3225,-3209,-3179,-3145,
+-3123,-3106,-3077,-3050,-3015,-2970,-2931,-2896,-2862,-2833,-2800,-2758,-2729,-2687,-2648,-2613,-2578,-2545,-2511,-2477,
+-2442,-2402,-2362,-2321,-2281,-2242,-2197,-2153,-2110,-2067,-2022,-1986,-1938,-1894,-1852,-1807,-1764,-1714,-1675,-1629,
+-1581,-1547,-1507,-1463,-1424,-1384,-1343,-1302,-1268,-1231,-1193,-1155,-1122,-1081,-1053,-1020,-990,-957,-919,-885,
+-857,-825,-794,-768,-726,-713,-686,-658,-633,-610,-585,-554,-517,-479,-448,-418,-391,-358,-326,-296,
+-263,-229,-199,-167,-141,-112,-88,-62,-33,-3,33,68,100,131,161,191,226,264,309,349,
+388,434,479,523,565,620,662,692,722,803,860,913,967,1017,1075,1152,1158,1163,1170,1149,
+1028,1087,1249,1351,1497,1479,1511,1595,1711,1729,1666,1591,1493,1396,1315,1320,1376,1543,1730,1870,
+1819,1675,1490,1401,1339,1365,1385,1424,1385,1189,978,757,606,576,472,152,-2,57,415,888,
+855,694,346,-92,-324,-456,-563,-624,-657,-681,-701,-738,-781,-807,-835,-865,-892,-905,-921,-960,
+-1006,-1050,-1087,-1138,-1195,-1230,-1279,-1349,-1386,-1438,-1516,-1579,-1620,-1664,-1735,-1820,-1907,-2010,-2102,-2190,
+-2267,-2363,-2428,-2487,-2551,-2617,-2690,-2725,-2764,-2830,-2880,-2912,-2936,-2954,-2981,-3012,-3034,-3058,-3056,-3041,
+-3056,-3088,-3115,-3158,-3207,-3271,-3350,-3408,-3464,-3508,-3538,-3537,-3495,-3483,-3472,-3476,-3499,-3539,-3592,-3649,
+-3751,-3904,-4055,-4152,-4163,-4161,-4163,-4161,-4148,-4138,-4132,-4127,-4113,-4101,-4099,-4097,-4081,-4045,-4003,-3964,
+-3923,-3880,-3830,-3765,-3689,-3613,-3532,-3460,-3397,-3335,-3276,-3214,-3142,-3078,-3007,-2931,-2911,-2888,-2851,-2797,
+-2737,-2657,-2567,-2488,-2420,-2333,-2254,-2178,-2108,-2058,-2004,-1924,-1844,-1768,-1693,-1613,-1540,-1464,-1383,-1288,
+-1190,-1086,-1023,-967,-959,-866,-786,-766,-649,-580,-536,-489,-451,-391,-316,-269,-225,-214,-153,-86,
+-2,29,63,114,161,194,220,276,323,379,430,474,531,574,612,637,650,662,698,760,
+812,852,873,905,943,987,1036,1088,1122,1161,1197,1249,1291,1317,1354,1393,1432,1455,1492,1514,
+1561,1608,1672,1726,1749,1759,1810,1837,1838,1844,1865,1885,1863,1885,1908,1935,1950,1970,1990,2005,
+2021,2042,2075,2101,2128,2154,2183,2205,2226,2244,2263,2299,2338,2374,2469,2635,2845,2940,2993,3054,
+3107,3152,3187,3136,3068,3090,3163,3217,3257,3279,3304,3320,3312,3349,3385,3385,3369,3351,3315,3327,
+3283,3249,3153,3102,3074,3066,3052,3035,3002,2954,2922,2881,2837,2787,2781,2769,2746,2722,2723,2736,
+2759,2760,2759,2772,2739,2681,2649,2615,2602,2626,2675,2639,2609,2580,2594,2643,2629,2626,2650,2646,
+2631,2609,2594,2563,2534,2524,2528,2518,2483,2459,2450,2458,2468,2461,2426,2388,2369,2340,2315,2282,
+2271,2256,2251,2235,2196,2176,2170,2165,2161,2114,2084,2056,2021,1968,1947,1972,2022,1903,1882,1930,
+1920,1922,1803,1762,1702,1649,1611,1586,1575,1563,1497,1362,1240,1143,1067,994,875,762,695,644,
+618,596,503,422,346,285,228,163,89,36,5,-49,-94,-111,-139,-157,-148,-141,-133,-161,
+-204,-264,-314,-332,-346,-359,-393,-429,-462,-541,-620,-642,-643,-630,-625,-629,-636,-636,-643,-659,
+-683,-710,-729,-752,-784,-808,-835,-865,-895,-923,-948,-965,-979,-986,-977,-1011,-1061,-1079,-1067,-1039,
+-1042,-1058,-1084,-1123,-1129,-1120,-1155,-1112,-1092,-1073,-1076,-1082,-1045,-961,-892,-854,-869,-873,-830,-942,
+-977,-1005,-1016,-984,-1044,-1096,-1115,-1062,-1008,-1043,-1078,-1097,-1224,-1316,-1470,-1580,-1755,-1944,-2096,-2202,
+-2288,-2343,-2333,-2393,-2457,-2491,-2502,-2532,-2587,-2615,-2657,-2725,-2786,-2848,-2918,-2955,-3006,-3075,-3140,-3180,
+-3236,-3282,-3335,-3397,-3451,-3546,-3631,-3710,-3769,-3827,-3920,-4056,-4219,-4457,-4716,-4884,-5020,-5130,-5202,-5256,
+-5303,-5331,-5342,-5353,-5370,-5406,-5453,-5503,-5544,-5593,-5629,-5622,-5548,-5345,-5343,-5276,-5258,-5318,-5334,-5341,
+-5375,-5387,-5429,-5485,-5516,-5544,-5568,-5630,-5638,-5665,-5779,-5820,-5874,-5975,-6010,-6124,-6250,-6336,-6427,-6543,
+-6643,-6724,-6829,-6933,-7024,-7131,-7226,-7318,-7442,-7541,-7645,-7741,-7819,-7923,-8008,-8081,-8182,-8274,-8353,-8436,
+-8545,-8640,-8721,-8788,-8869,-8935,-8994,-9054,-9099,-9167,-9239,-9311,-9333,-9421,-9472,-9516,-9552,-9585,-9630,-9663,
+-9669,-9645,-9603,-9662,-9699,-9779,-9859,-9925,-9952,-9958,-9970,-9992,-10012,-10036,-10030,-10076,-10058,-10046,-10055,-10002,
+-9875,-9890,-9973,-10068,-10253,-10304,-10302,-10271,-10205,-10126,-10004,-9776,-9648,-9523,-9371,-9259,-9337,-9379,-9378,-9353,
+-9447,-9644,-9645,-9615,-9566,-9521,-9475,-9424,-9357,-9275,-9182,-9068,-8946,-8807,-8680,-8575,-8458,-8352,-8209,-8043,
+-7898,-7763,-7637,-7501,-7355,-7201,-7032,-6874,-6719,-6561,-6389,-6199,-6062,-5938,-5823,-5731,-5655,-5637,-5652,-5707,
+-5793,-5890,-5948,-5984,-6004,-5910,-5603,-5186,-4908,-4718,-4536,-4340,-4194,-4042,-3842,-3632,-3498,-3437,-3337,-3218,
+-3099,-2954,-2813,-2709,-2574,-2445,-2345,-2258,-2167,-2064,-1957,-1847,-1715,-1655,-1593,-1538,-1467,-1402,-1346,-1277,
+-1212,-1134,-1037,-970,-904,-828,-742,-652,-552,-457,-372,-272,-160,-59,43,153,254,348,434,523,
+629,709,801,895,994,1103,1223,1333,1435,1514,1563,1630,1698,1809,1920,2030,2138,2251,2352,2472,
+2567,2686,2800,2951,3072,3154,3249,3330,3394,3443,3495,3480,3593,3711,3915,4112,4264,4387,4500,4657,
+4867,5030,5101,5105,5127,5206,5268,5260,5299,5352,5393,5482,5553,5582,5611,5648,5701,5797,5994,6305,
+6618,6786,6794,6780,6757,6689,6649,6613,6904,7179,7244,7252,7280,7235,6921,6763,6825,6781,6583,6008,
+5387,5112,5378,5809,6132,6321,6452,6556,6599,6626,6641,6639,6635,6616,6599,6580,6571,6586,6611,6617,
+6603,6593,6594,6617,6571,6591,6605,6660,6746,6983,6823,6350,6192,6294,6292,6312,6140,6026,6012,6014,
+6052,6113,6220,6282,6331,6396,6412,6415,6434,6438,6424,6392,6375,6357,6336,6322,6325,6317,6313,6346,
+6355,6262,6235,6223,6237,6239,6260,6283,6229,6139,6205,6088,6049,5997,6026,6057,6050,6057,6031,6030,
+6011,5924,5918,5944,5858,5852,5779,5777,5801,5838,5636,5349,5249,5225,5222,5254,5224,5304,5581,5779,
+5665,5373,5242,5187,5117,5047,5006,4990,4970,4950,4943,4978,5102,5238,5146,4998,4883,4745,4644,4573,
+4528,4524,4562,4639,4669,4669,4586,4461,4358,4279,4220,4151,4085,4025,3957,3893,3836,3796,3762,3754,
+3725,3658,3591,3522,3502,3462,3399,3337,3299,3260,3222,3180,3128,3080,3043,3027,3018,3001,2965,2905,
+2830,2748,2696,2669,2663,2750,3010,3084,2839,2674,2750,2682,2609,2568,2533,2569,2750,2754,2747,2733,
+2594,2535,2482,2422,2343,2293,2272,2263,2230,2196,2153,2119,2134,2099,2037,1938,1925,1886,1766,1751,
+1775,1793,1780,1740,1714,1686,1677,1658,1636,1618,1600,1585,1555,1541,1531,1504,1489,1463,1433,1423,
+1429,1448,1469,1487,1486,1488,1454,1405,1352,1292,1234,1171,1124,1100,1093,1091,1085,1082,1070,1063,
+1062,1073,1102,1121,1126,1116,1106,1112,1120,1124,1121,1122,1146,1166,1190,1209,1222,1241,1242,1228,
+1237,1256,1286,1315,1332,1343,1350,1355,1358,1362,1403,1389,1412,1428,1441,1444,1435,1433,1444,1482,
+1488,1418,1456,1444,1436,1492,1543,1678,1482,1484,1486,1514,1485,1473,1449,1425,1399,1376,1360,1328,
+1315,1333,1295,1279,1264,1239,1212,1181,1154,1130,1109,1091,1076,1045,1031,1014,991,962,935,900,
+868,845,823,796,776,754,731,709,690,666,646,620,600,610,559,537,503,467,427,394,
+358,327,299,268,236,203,171,143,120,87,56,14,-18,-53,-83,-119,-158,-193,-229,-270,
+-311,-357,-398,-441,-484,-517,-556,-602,-650,-694,-738,-782,-824,-875,-923,-966,-997,-1030,-1064,-1096,
+-1136,-1177,-1217,-1258,-1300,-1345,-1389,-1434,-1473,-1521,-1570,-1617,-1666,-1711,-1748,-1777,-1825,-1843,-1888,-1942,
+-1986,-2027,-2067,-2108,-2148,-2186,-2222,-2263,-2305,-2339,-2381,-2423,-2452,-2481,-2514,-2552,-2590,-2614,-2649,-2678,
+-2708,-2741,-2762,-2788,-2824,-2856,-2884,-2910,-2941,-2970,-2997,-3023,-3054,-3084,-3119,-3134,-3155,-3171,-3199,-3216,
+-3234,-3250,-3261,-3275,-3285,-3300,-3315,-3329,-3342,-3359,-3359,-3357,-3362,-3377,-3386,-3391,-3394,-3398,-3397,-3383,
+-3374,-3379,-3371,-3379,-3377,-3378,-3368,-3362,-3349,-3338,-3329,-3315,-3304,-3283,-3277,-3251,-3212,-3199,-3181,-3153,
+-3125,-3103,-3083,-3056,-3021,-2999,-2951,-2914,-2879,-2841,-2813,-2773,-2730,-2701,-2661,-2628,-2597,-2563,-2532,-2499,
+-2464,-2427,-2390,-2352,-2313,-2276,-2240,-2196,-2152,-2110,-2069,-2021,-1981,-1936,-1893,-1852,-1806,-1765,-1720,-1677,
+-1632,-1585,-1552,-1510,-1468,-1425,-1389,-1350,-1308,-1270,-1232,-1200,-1166,-1127,-1092,-1059,-1027,-993,-953,-926,
+-897,-867,-838,-808,-777,-752,-727,-698,-676,-654,-626,-599,-561,-529,-498,-465,-430,-401,-369,-334,
+-306,-272,-246,-222,-192,-161,-137,-112,-89,-55,-23,10,39,72,100,136,174,213,252,293,
+335,382,428,473,515,554,601,626,657,754,785,812,878,941,1003,1087,1125,1118,1148,1168,
+1131,1026,1049,1108,1185,1325,1354,1365,1495,1613,1603,1534,1423,1348,1233,1193,1222,1201,1272,1367,
+1603,1682,1684,1550,1428,1408,1472,1800,1893,1817,1578,1329,1065,835,683,483,216,115,183,518,
+1043,1225,949,571,-20,-340,-464,-514,-540,-568,-605,-646,-689,-730,-773,-799,-819,-819,-829,-858,
+-917,-982,-1034,-1084,-1124,-1162,-1184,-1222,-1302,-1370,-1385,-1436,-1472,-1488,-1533,-1584,-1693,-1812,-1924,-2024,
+-2115,-2176,-2253,-2333,-2385,-2476,-2559,-2616,-2647,-2692,-2765,-2818,-2857,-2888,-2903,-2928,-2957,-2980,-3007,-3008,
+-2967,-2982,-3032,-3074,-3096,-3128,-3160,-3199,-3247,-3295,-3324,-3342,-3347,-3357,-3368,-3372,-3376,-3401,-3433,-3478,
+-3541,-3636,-3778,-3944,-4043,-4060,-4063,-4072,-4078,-4079,-4072,-4070,-4072,-4064,-4061,-4057,-4055,-4037,-4008,-3971,
+-3925,-3889,-3851,-3811,-3755,-3689,-3617,-3543,-3471,-3406,-3340,-3278,-3219,-3150,-3085,-3028,-2979,-2937,-2886,-2826,
+-2776,-2699,-2627,-2547,-2467,-2391,-2337,-2269,-2196,-2114,-2034,-1966,-1894,-1813,-1723,-1663,-1604,-1513,-1429,-1345,
+-1273,-1151,-1084,-982,-917,-872,-823,-751,-692,-623,-550,-473,-425,-409,-332,-220,-185,-122,-50,-1,
+30,66,106,153,210,253,295,346,389,418,457,492,514,546,578,624,667,692,729,781,
+820,866,911,936,988,1003,1048,1090,1142,1179,1206,1250,1295,1315,1341,1377,1413,1441,1462,1486,
+1530,1564,1605,1706,1706,1715,1748,1744,1729,1771,1821,1862,1877,1860,1884,1914,1937,1944,1956,1975,
+1991,2004,2020,2044,2072,2094,2117,2142,2159,2171,2184,2201,2234,2274,2304,2344,2421,2593,2704,2812,
+2925,3007,3111,3179,3178,3134,3097,3125,3149,3165,3195,3228,3227,3249,3288,3301,3291,3283,3247,3220,
+3211,3171,3151,3134,3089,3066,3058,3053,3035,2999,2962,2916,2864,2812,2776,2780,2778,2754,2741,2737,
+2758,2767,2769,2778,2788,2760,2712,2647,2595,2576,2594,2611,2609,2575,2583,2609,2624,2633,2652,2661,
+2639,2589,2572,2535,2509,2484,2460,2459,2456,2422,2391,2371,2363,2358,2351,2323,2295,2264,2237,2227,
+2211,2226,2245,2261,2246,2207,2184,2170,2147,2133,2109,2088,2082,2049,2009,1970,1954,2058,2064,2006,
+1976,1926,1909,1813,1768,1709,1625,1600,1576,1544,1498,1396,1274,1235,1178,1103,973,861,768,707,
+667,619,572,487,387,296,209,133,59,-10,-69,-88,-119,-160,-200,-236,-256,-252,-233,-221,
+-228,-266,-311,-358,-373,-391,-409,-432,-472,-491,-546,-638,-690,-719,-735,-747,-744,-733,-734,-732,
+-733,-742,-748,-752,-762,-791,-807,-831,-852,-886,-920,-953,-982,-995,-971,-969,-993,-1042,-1090,-1095,
+-1065,-1060,-1074,-1102,-1147,-1179,-1176,-1211,-1143,-1128,-1103,-1097,-1093,-1019,-1015,-961,-893,-989,-942,-951,
+-1034,-978,-994,-1088,-1068,-1120,-1154,-1150,-1073,-1081,-1104,-1052,-1037,-1222,-1389,-1605,-1723,-1864,-2022,-2153,
+-2285,-2382,-2436,-2423,-2495,-2572,-2615,-2653,-2659,-2687,-2734,-2767,-2824,-2873,-2935,-2994,-3039,-3098,-3175,-3259,
+-3309,-3351,-3396,-3453,-3504,-3572,-3658,-3749,-3818,-3877,-3937,-4031,-4161,-4320,-4568,-4781,-4957,-5122,-5214,-5255,
+-5284,-5317,-5346,-5364,-5377,-5399,-5445,-5498,-5546,-5581,-5614,-5617,-5562,-5393,-5344,-5394,-5309,-5272,-5328,-5346,
+-5370,-5396,-5436,-5459,-5513,-5550,-5600,-5633,-5643,-5670,-5745,-5815,-5837,-5913,-5943,-6032,-6139,-6222,-6336,-6444,
+-6522,-6635,-6740,-6827,-6935,-7032,-7130,-7232,-7325,-7425,-7509,-7635,-7724,-7816,-7902,-8006,-8093,-8195,-8301,-8359,
+-8415,-8528,-8621,-8711,-8796,-8867,-8936,-9013,-9062,-9117,-9182,-9257,-9314,-9330,-9422,-9472,-9523,-9550,-9591,-9643,
+-9695,-9688,-9658,-9646,-9648,-9632,-9707,-9840,-9927,-9964,-9982,-9989,-10010,-10029,-10067,-10069,-10089,-10083,-10083,-10102,
+-10102,-10076,-10033,-10095,-10237,-10332,-10365,-10352,-10315,-10246,-10180,-10015,-9778,-9660,-9533,-9306,-9117,-9221,-9341,-9392,
+-9394,-9486,-9688,-9705,-9671,-9615,-9557,-9507,-9453,-9386,-9301,-9201,-9087,-8960,-8826,-8683,-8582,-8469,-8363,-8213,
+-8043,-7908,-7782,-7654,-7512,-7363,-7210,-7044,-6883,-6727,-6561,-6386,-6195,-6038,-5928,-5792,-5688,-5600,-5585,-5601,
+-5651,-5747,-5870,-5947,-5961,-5904,-5817,-5585,-5221,-4969,-4748,-4555,-4324,-4176,-3996,-3793,-3594,-3472,-3401,-3302,
+-3192,-3062,-2923,-2769,-2657,-2511,-2391,-2280,-2192,-2101,-2002,-1905,-1796,-1681,-1593,-1536,-1464,-1386,-1316,-1258,
+-1204,-1137,-1064,-962,-891,-833,-759,-676,-593,-500,-416,-327,-227,-116,3,112,238,345,426,510,
+591,696,788,883,990,1081,1176,1288,1391,1497,1570,1605,1663,1771,1889,1991,2091,2183,2287,2395,
+2512,2614,2737,2839,2997,3106,3181,3265,3318,3355,3379,3409,3480,3630,3854,4100,4325,4468,4540,4615,
+4780,4963,5095,5126,5144,5169,5261,5366,5334,5335,5366,5436,5518,5567,5585,5613,5682,5830,6118,6311,
+6574,6762,6790,6770,6677,6558,6426,6368,6581,7042,7321,7267,7252,7237,7299,6882,6688,6668,6588,6276,
+5662,5151,4974,5321,5798,6130,6347,6490,6590,6654,6677,6692,6685,6680,6665,6644,6625,6613,6614,6629,
+6638,6631,6628,6625,6646,6643,6697,6718,6701,6780,6805,6462,6269,6322,6443,6502,6450,6342,6237,6227,
+6229,6273,6305,6339,6363,6399,6418,6424,6427,6425,6439,6440,6417,6373,6345,6331,6321,6330,6336,6329,
+6363,6390,6316,6307,6301,6264,6217,6228,6242,6264,6258,6185,6219,6131,6053,6042,6025,6038,6029,6029,
+6021,5959,5887,5895,5895,5839,5823,5837,5829,5889,5832,5646,5420,5335,5304,5268,5253,5309,5334,5476,
+5565,5582,5360,5372,5324,5207,5105,5040,5033,5018,4988,4967,4969,5024,5065,5032,4952,4877,4797,4727,
+4683,4665,4627,4677,4864,4980,5064,4760,4536,4409,4324,4279,4222,4147,4077,4012,3960,3914,3854,3811,
+3791,3757,3689,3608,3539,3525,3504,3453,3381,3330,3298,3265,3224,3173,3118,3072,3049,3037,3013,2972,
+2917,2849,2785,2740,2702,2677,2684,2733,2739,2699,2626,2604,2588,2568,2548,2527,2538,2669,2850,2849,
+2853,2650,2529,2476,2494,2378,2308,2278,2264,2233,2198,2161,2123,2111,2046,2026,1968,1960,1851,1740,
+1763,1794,1811,1793,1767,1736,1705,1689,1675,1656,1632,1616,1609,1580,1569,1549,1540,1515,1499,1482,
+1481,1484,1506,1523,1542,1543,1530,1488,1437,1387,1329,1271,1206,1163,1138,1139,1139,1135,1122,1100,
+1089,1086,1098,1118,1132,1133,1135,1124,1130,1125,1112,1112,1113,1133,1155,1181,1199,1208,1227,1230,
+1232,1243,1262,1302,1327,1344,1352,1360,1365,1365,1362,1372,1390,1420,1447,1465,1472,1461,1449,1442,
+1431,1440,1435,1532,1523,1581,1574,1557,1557,1482,1462,1542,1579,1519,1505,1500,1483,1460,1423,1389,
+1355,1338,1339,1337,1328,1311,1290,1263,1233,1199,1169,1146,1127,1107,1079,1077,1056,1024,996,971,
+941,906,877,852,820,788,775,754,728,712,695,681,656,623,601,578,568,539,505,487,
+437,399,362,329,296,266,237,209,182,155,125,92,51,9,-26,-60,-91,-134,-167,-201,
+-236,-278,-322,-364,-408,-449,-485,-527,-568,-616,-658,-701,-743,-785,-832,-885,-930,-966,-996,-1030,
+-1067,-1106,-1148,-1192,-1238,-1275,-1318,-1360,-1393,-1437,-1486,-1527,-1582,-1629,-1673,-1720,-1753,-1788,-1824,-1864,
+-1910,-1949,-1990,-2033,-2070,-2110,-2148,-2189,-2222,-2251,-2283,-2313,-2355,-2380,-2410,-2444,-2477,-2511,-2545,-2574,
+-2608,-2642,-2673,-2705,-2735,-2764,-2796,-2826,-2851,-2884,-2917,-2946,-2974,-3005,-3035,-3066,-3085,-3110,-3130,-3155,
+-3169,-3182,-3200,-3212,-3226,-3240,-3250,-3264,-3277,-3296,-3310,-3309,-3308,-3318,-3323,-3324,-3333,-3348,-3353,-3350,
+-3339,-3334,-3330,-3332,-3341,-3341,-3339,-3330,-3317,-3305,-3299,-3291,-3279,-3265,-3254,-3239,-3227,-3204,-3179,-3164,
+-3130,-3110,-3085,-3053,-3022,-2990,-2964,-2941,-2870,-2829,-2817,-2778,-2741,-2703,-2681,-2631,-2599,-2554,-2525,-2509,
+-2480,-2446,-2409,-2373,-2339,-2305,-2270,-2235,-2196,-2154,-2112,-2068,-2023,-1979,-1934,-1891,-1848,-1806,-1764,-1721,
+-1678,-1637,-1592,-1560,-1517,-1474,-1437,-1398,-1356,-1317,-1280,-1248,-1212,-1172,-1140,-1105,-1070,-1038,-1005,-976,
+-946,-910,-875,-848,-824,-796,-769,-743,-723,-696,-670,-636,-605,-576,-549,-518,-477,-446,-413,-382,
+-349,-320,-284,-255,-233,-212,-187,-164,-135,-100,-74,-45,-13,15,50,79,118,158,196,236,
+281,332,373,415,464,503,545,587,617,684,707,737,803,860,923,988,1028,1083,1122,1114,
+1119,1119,1066,1103,1120,1117,1222,1221,1199,1189,1190,1200,1176,1111,1112,1162,1217,1231,1200,1156,
+1135,1265,1574,1727,1630,1481,1488,1651,1907,2116,2031,1999,1682,1396,1086,800,512,317,284,443,
+790,1197,1485,1275,725,161,-186,-353,-434,-484,-533,-571,-600,-638,-677,-719,-740,-764,-764,-775,
+-822,-899,-985,-1053,-1090,-1106,-1138,-1121,-1149,-1267,-1375,-1415,-1456,-1446,-1429,-1438,-1480,-1592,-1732,-1849,
+-1957,-2033,-2061,-2120,-2204,-2284,-2374,-2450,-2490,-2549,-2611,-2677,-2741,-2788,-2834,-2858,-2884,-2907,-2928,-2958,
+-2966,-2947,-2938,-2978,-3037,-3081,-3117,-3134,-3139,-3154,-3182,-3215,-3234,-3255,-3282,-3297,-3295,-3302,-3319,-3344,
+-3377,-3418,-3498,-3639,-3819,-3903,-3939,-3956,-3963,-3986,-3999,-4008,-4014,-4020,-4019,-4016,-4017,-4013,-3994,-3966,
+-3938,-3897,-3860,-3820,-3779,-3727,-3676,-3615,-3550,-3482,-3418,-3349,-3284,-3224,-3157,-3090,-3037,-2987,-2922,-2865,
+-2806,-2741,-2668,-2593,-2524,-2461,-2387,-2317,-2259,-2189,-2109,-2023,-1954,-1880,-1797,-1714,-1627,-1555,-1468,-1395,
+-1323,-1247,-1187,-1117,-1030,-931,-838,-773,-713,-645,-571,-493,-409,-352,-305,-214,-134,-118,-31,37,
+76,108,151,197,255,312,364,407,440,482,516,543,585,607,634,664,699,743,765,799,
+853,896,940,986,1033,1040,1053,1106,1133,1173,1225,1230,1254,1285,1322,1333,1345,1379,1450,1523,
+1523,1621,1624,1643,1757,1805,1782,1782,1707,1712,1764,1812,1848,1860,1868,1884,1912,1916,1924,1934,
+1952,1961,1977,1990,2011,2032,2057,2079,2102,2115,2124,2137,2157,2189,2223,2251,2277,2312,2377,2442,
+2516,2634,2731,2855,3028,3127,3148,3107,3067,3065,3078,3099,3120,3146,3183,3207,3212,3219,3202,3181,
+3164,3162,3146,3132,3112,3071,3050,3043,3041,3021,2984,2960,2888,2837,2792,2774,2770,2776,2757,2765,
+2757,2757,2758,2771,2782,2782,2743,2722,2673,2607,2580,2572,2579,2575,2561,2581,2611,2611,2629,2643,
+2636,2589,2508,2494,2443,2426,2420,2388,2376,2376,2357,2327,2292,2255,2239,2211,2186,2178,2173,2166,
+2139,2139,2174,2229,2242,2228,2205,2174,2145,2115,2130,2130,2108,2083,2080,2066,2065,2007,2050,2087,
+2048,1952,1890,1851,1791,1747,1703,1582,1527,1508,1449,1386,1313,1285,1245,1168,1086,975,879,780,
+715,667,616,550,444,352,265,159,71,-11,-89,-160,-192,-211,-251,-294,-340,-375,-355,-332,
+-316,-323,-348,-378,-404,-410,-443,-468,-488,-525,-539,-568,-642,-731,-786,-839,-859,-861,-841,-831,
+-827,-818,-798,-778,-768,-777,-796,-806,-827,-849,-883,-922,-963,-1003,-1031,-1008,-985,-1002,-1029,-1095,
+-1128,-1093,-1095,-1102,-1120,-1161,-1199,-1216,-1252,-1201,-1174,-1131,-1121,-1118,-1000,-1035,-1016,-969,-1045,-1073,
+-1092,-1096,-1077,-1097,-1069,-1123,-1197,-1191,-1135,-1087,-1089,-1129,-1178,-1234,-1432,-1687,-1766,-1840,-1966,-2098,
+-2181,-2336,-2456,-2497,-2547,-2601,-2661,-2710,-2773,-2780,-2802,-2834,-2870,-2899,-2932,-3003,-3080,-3136,-3207,-3286,
+-3353,-3401,-3436,-3481,-3570,-3635,-3690,-3779,-3865,-3930,-3979,-4028,-4119,-4243,-4416,-4618,-4699,-4962,-5179,-5259,
+-5290,-5302,-5326,-5355,-5378,-5395,-5421,-5481,-5532,-5574,-5595,-5595,-5549,-5402,-5311,-5382,-5402,-5342,-5317,-5324,
+-5353,-5387,-5427,-5467,-5509,-5541,-5591,-5618,-5655,-5666,-5742,-5792,-5807,-5826,-5909,-6017,-6053,-6138,-6242,-6338,
+-6431,-6532,-6625,-6735,-6837,-6923,-7015,-7107,-7229,-7324,-7412,-7524,-7620,-7729,-7824,-7928,-8021,-8105,-8191,-8278,
+-8336,-8426,-8539,-8663,-8737,-8781,-8856,-8943,-9002,-9068,-9136,-9198,-9266,-9335,-9350,-9420,-9493,-9534,-9560,-9606,
+-9676,-9707,-9689,-9669,-9678,-9699,-9593,-9720,-9854,-9939,-9984,-10008,-10021,-10035,-10049,-10089,-10100,-10113,-10119,-10113,
+-10131,-10157,-10174,-10197,-10262,-10350,-10404,-10402,-10376,-10333,-10279,-10232,-10057,-9812,-9688,-9566,-9366,-9232,-9296,-9424,
+-9433,-9450,-9576,-9783,-9774,-9735,-9673,-9606,-9545,-9485,-9413,-9327,-9226,-9111,-8983,-8846,-8699,-8578,-8465,-8355,
+-8208,-8030,-7904,-7799,-7683,-7537,-7370,-7198,-7029,-6877,-6727,-6561,-6376,-6195,-6038,-5894,-5734,-5619,-5551,-5518,
+-5547,-5594,-5700,-5825,-5905,-5895,-5794,-5704,-5585,-5310,-5117,-4807,-4541,-4373,-4155,-3946,-3751,-3533,-3428,-3365,
+-3284,-3165,-3043,-2907,-2754,-2615,-2467,-2333,-2235,-2139,-2050,-1941,-1844,-1750,-1656,-1538,-1467,-1390,-1310,-1233,
+-1177,-1128,-1064,-993,-895,-825,-756,-686,-608,-528,-454,-363,-270,-166,-53,65,175,309,412,500,
+578,666,764,864,970,1070,1169,1268,1355,1458,1558,1636,1676,1739,1859,1993,2096,2174,2244,2335,
+2454,2571,2679,2800,2900,3065,3152,3197,3238,3287,3294,3343,3434,3566,3772,4002,4249,4446,4562,4635,
+4720,4890,5034,5137,5157,5173,5204,5305,5406,5407,5396,5420,5485,5545,5565,5599,5708,5884,6131,6416,
+6564,6684,6765,6782,6701,6562,6488,6419,6341,6574,7139,7443,7385,7256,7287,7163,6776,6501,6603,6527,
+5894,5330,4882,4820,5241,5757,6118,6349,6513,6625,6689,6721,6725,6734,6726,6711,6689,6663,6646,6639,
+6642,6648,6652,6693,6677,6743,6748,6751,6686,6714,6752,6452,6250,6315,6418,6476,6498,6501,6486,6448,
+6439,6408,6411,6433,6449,6458,6467,6460,6460,6459,6453,6426,6390,6374,6370,6350,6340,6318,6278,6296,
+6310,6285,6257,6314,6385,6397,6421,6340,6270,6229,6208,6197,6188,6183,6165,6118,6078,6057,6064,6030,
+6048,6006,5952,5922,5900,5864,5849,5878,5848,5860,5850,5889,5704,5523,5428,5376,5341,5304,5296,5312,
+5374,5414,5371,5321,5354,5332,5230,5179,5095,5084,5057,5014,4977,4961,4978,5003,5001,4950,4887,4836,
+4789,4750,4738,4750,4807,4985,5160,5112,4779,4538,4412,4346,4331,4363,4211,4119,4062,4020,3981,3922,
+3859,3811,3768,3710,3629,3557,3542,3528,3494,3435,3367,3326,3294,3252,3203,3154,3108,3071,3045,3015,
+2971,2923,2882,2829,2784,2745,2698,2661,2634,2617,2615,2651,2641,2609,2584,2556,2526,2505,2513,2534,
+2549,2596,2633,2579,2490,2416,2372,2336,2297,2274,2243,2203,2168,2131,2079,2070,2084,2033,2003,1816,
+1741,1775,1814,1834,1826,1793,1761,1725,1700,1680,1652,1629,1616,1596,1571,1568,1557,1549,1542,1535,
+1528,1528,1547,1567,1587,1589,1571,1551,1518,1461,1427,1372,1312,1252,1204,1175,1186,1198,1252,1180,
+1130,1113,1116,1124,1138,1149,1153,1148,1144,1146,1134,1121,1106,1109,1136,1157,1182,1191,1201,1221,
+1232,1240,1257,1275,1306,1336,1349,1362,1372,1377,1377,1369,1377,1393,1419,1448,1475,1489,1494,1463,
+1445,1429,1420,1426,1463,1505,1531,1645,1666,1620,1538,1479,1492,1517,1528,1536,1535,1522,1509,1497,
+1451,1418,1392,1404,1376,1361,1345,1328,1304,1277,1243,1212,1186,1167,1148,1124,1105,1085,1072,1046,
+1020,996,957,930,900,870,841,803,783,759,744,723,701,673,652,631,615,593,568,540,
+509,473,465,394,355,321,298,278,251,220,188,155,120,76,38,2,-31,-65,-99,-134,
+-165,-198,-241,-283,-320,-364,-412,-459,-500,-536,-583,-625,-665,-705,-741,-782,-829,-878,-924,-961,
+-1000,-1044,-1084,-1125,-1170,-1204,-1237,-1274,-1315,-1373,-1405,-1457,-1499,-1551,-1593,-1632,-1676,-1721,-1760,-1803,
+-1841,-1871,-1901,-1940,-1976,-2015,-2054,-2093,-2127,-2160,-2189,-2218,-2253,-2285,-2312,-2343,-2379,-2409,-2438,-2468,
+-2498,-2530,-2565,-2599,-2632,-2665,-2694,-2723,-2756,-2786,-2821,-2852,-2886,-2914,-2945,-2975,-3006,-3036,-3055,-3088,
+-3114,-3131,-3142,-3159,-3179,-3196,-3206,-3212,-3224,-3238,-3253,-3265,-3267,-3267,-3288,-3281,-3278,-3286,-3289,-3303,
+-3300,-3298,-3299,-3297,-3307,-3308,-3318,-3310,-3291,-3273,-3263,-3261,-3253,-3242,-3230,-3215,-3201,-3188,-3172,-3154,
+-3136,-3126,-3077,-3051,-3027,-2994,-2967,-2939,-2917,-2874,-2851,-2803,-2758,-2718,-2675,-2642,-2609,-2580,-2542,-2520,
+-2491,-2461,-2428,-2393,-2361,-2328,-2298,-2265,-2227,-2189,-2149,-2107,-2066,-2024,-1978,-1934,-1889,-1841,-1802,-1762,
+-1722,-1682,-1643,-1598,-1565,-1522,-1483,-1438,-1401,-1361,-1329,-1296,-1255,-1214,-1182,-1144,-1113,-1081,-1045,-1021,
+-985,-952,-922,-897,-865,-841,-814,-787,-760,-739,-712,-678,-649,-628,-597,-560,-524,-490,-458,-429,
+-399,-367,-335,-307,-281,-261,-238,-210,-185,-155,-126,-98,-65,-36,-4,30,64,101,139,180,
+235,279,323,357,401,443,484,520,558,611,640,680,735,795,849,917,971,1017,1047,1055,
+1072,1084,1101,1091,1130,1154,1177,1260,1214,1167,1114,1095,1100,1097,1115,1181,1252,1319,1318,1270,
+1169,1087,1141,1497,1718,1684,1544,1576,1821,2128,2239,2329,2253,1908,1606,1278,924,622,444,473,
+797,1084,1299,1579,1587,1247,596,24,-234,-367,-458,-513,-537,-555,-581,-608,-644,-681,-710,-732,
+-758,-819,-906,-994,-1059,-1086,-1089,-1093,-1028,-1038,-1231,-1358,-1377,-1414,-1399,-1396,-1385,-1442,-1549,-1682,
+-1776,-1851,-1899,-1929,-1954,-2056,-2141,-2221,-2298,-2361,-2442,-2500,-2599,-2677,-2741,-2791,-2821,-2851,-2867,-2887,
+-2901,-2910,-2918,-2920,-2935,-2985,-3039,-3091,-3121,-3118,-3112,-3119,-3138,-3166,-3196,-3226,-3236,-3229,-3239,-3257,
+-3272,-3283,-3306,-3364,-3451,-3659,-3744,-3801,-3829,-3853,-3884,-3912,-3936,-3959,-3967,-3973,-3977,-3983,-3977,-3956,
+-3930,-3902,-3865,-3830,-3790,-3754,-3706,-3655,-3606,-3547,-3491,-3429,-3368,-3304,-3236,-3164,-3089,-3028,-2977,-2922,
+-2848,-2769,-2720,-2657,-2587,-2524,-2462,-2387,-2309,-2244,-2166,-2085,-2016,-1946,-1866,-1798,-1739,-1676,-1602,-1520,
+-1428,-1343,-1253,-1171,-1097,-1029,-953,-872,-791,-721,-663,-590,-511,-429,-348,-270,-198,-116,-63,-28,
+48,80,122,171,219,262,311,372,417,474,494,524,553,582,626,676,709,732,762,778,
+816,865,918,959,986,1016,1040,1059,1083,1117,1160,1179,1222,1245,1263,1291,1307,1314,1360,1435,
+1478,1547,1548,1592,1627,1712,1747,1769,1748,1699,1717,1770,1820,1846,1863,1869,1872,1883,1907,1910,
+1910,1916,1932,1947,1962,1981,1997,2017,2038,2055,2066,2077,2092,2119,2148,2177,2201,2223,2241,2280,
+2338,2387,2461,2564,2666,2794,2965,3016,3059,3059,3027,3026,3028,3038,3077,3119,3146,3154,3158,3138,
+3128,3111,3128,3130,3104,3074,3043,3014,3011,3013,2996,2963,2915,2865,2820,2768,2762,2766,2766,2759,
+2760,2746,2753,2759,2761,2775,2758,2722,2703,2680,2673,2629,2592,2567,2561,2556,2578,2591,2596,2622,
+2611,2572,2506,2424,2393,2337,2302,2276,2263,2252,2258,2269,2250,2206,2151,2114,2077,2055,2050,2050,
+2062,2059,2091,2140,2198,2227,2208,2194,2157,2120,2124,2145,2176,2144,2116,2146,2131,2133,2161,2053,
+2010,1971,1914,1857,1814,1753,1680,1625,1572,1507,1444,1396,1329,1251,1220,1188,1124,1042,962,875,
+778,712,641,571,492,398,326,239,128,37,-53,-143,-220,-279,-325,-365,-408,-451,-468,-450,
+-415,-405,-409,-421,-437,-449,-466,-490,-533,-558,-587,-589,-594,-654,-752,-829,-905,-943,-942,-931,
+-921,-917,-895,-858,-821,-802,-813,-821,-823,-840,-863,-905,-945,-983,-1026,-1069,-1078,-1041,-1026,-1035,
+-1091,-1148,-1136,-1120,-1127,-1150,-1199,-1243,-1259,-1273,-1248,-1201,-1162,-1133,-1143,-1142,-1145,-1082,-1083,-1159,
+-1135,-1117,-1045,-1095,-1144,-1129,-1198,-1261,-1236,-1120,-1139,-1194,-1305,-1416,-1562,-1734,-1890,-1931,-1955,-2010,
+-2163,-2279,-2394,-2511,-2598,-2653,-2707,-2751,-2804,-2847,-2867,-2871,-2889,-2917,-2938,-2981,-3060,-3144,-3216,-3292,
+-3360,-3423,-3473,-3505,-3549,-3660,-3752,-3799,-3880,-3961,-4020,-4061,-4114,-4211,-4370,-4552,-4657,-4826,-5046,-5200,
+-5273,-5296,-5309,-5331,-5360,-5380,-5407,-5440,-5503,-5551,-5580,-5580,-5519,-5414,-5269,-5328,-5381,-5356,-5362,-5318,
+-5345,-5372,-5414,-5450,-5479,-5528,-5572,-5615,-5643,-5670,-5738,-5760,-5836,-5810,-5880,-5940,-5998,-6081,-6129,-6228,
+-6337,-6451,-6548,-6625,-6712,-6821,-6924,-7017,-7100,-7221,-7313,-7416,-7520,-7598,-7698,-7815,-7903,-8018,-8115,-8169,
+-8256,-8374,-8467,-8544,-8648,-8717,-8788,-8886,-8961,-8987,-9055,-9117,-9216,-9269,-9324,-9357,-9424,-9499,-9544,-9579,
+-9641,-9691,-9711,-9700,-9684,-9673,-9661,-9601,-9769,-9863,-9935,-9989,-10018,-10031,-10046,-10060,-10097,-10108,-10133,-10154,
+-10141,-10157,-10181,-10208,-10242,-10294,-10366,-10439,-10425,-10392,-10368,-10345,-10266,-10105,-9855,-9736,-9630,-9503,-9482,-9512,
+-9522,-9518,-9574,-9781,-9863,-9844,-9798,-9739,-9665,-9595,-9523,-9444,-9354,-9252,-9139,-9008,-8867,-8721,-8577,-8464,
+-8341,-8196,-8021,-7898,-7790,-7679,-7526,-7355,-7189,-7026,-6869,-6725,-6561,-6357,-6167,-6005,-5846,-5700,-5589,-5486,
+-5440,-5495,-5545,-5641,-5754,-5828,-5798,-5674,-5584,-5568,-5372,-5202,-4825,-4550,-4352,-4140,-3894,-3726,-3517,-3384,
+-3312,-3253,-3153,-3026,-2884,-2718,-2565,-2424,-2294,-2199,-2095,-1996,-1905,-1792,-1689,-1598,-1489,-1392,-1304,-1232,
+-1150,-1088,-1036,-969,-888,-809,-743,-677,-609,-533,-457,-390,-306,-210,-113,3,126,241,368,489,
+572,651,725,816,923,1032,1144,1262,1351,1426,1514,1615,1708,1759,1818,1940,2076,2173,2240,2305,
+2395,2505,2616,2741,2861,2999,3093,3147,3202,3205,3227,3281,3398,3583,3763,3943,4147,4341,4475,4591,
+4697,4839,4986,5145,5206,5215,5188,5233,5347,5459,5520,5511,5506,5527,5557,5608,5739,5921,6207,6442,
+6587,6671,6718,6815,6705,6533,6479,6508,6462,6405,6593,7150,7506,7495,7332,7306,7170,6894,6456,6459,
+6455,5727,5081,4723,4688,5139,5700,6091,6337,6535,6656,6729,6755,6773,6779,6768,6750,6729,6703,6683,
+6671,6668,6672,6668,6686,6745,6800,6798,6763,6768,6762,6546,6320,6311,6400,6467,6514,6546,6562,6577,
+6564,6538,6513,6509,6520,6518,6518,6517,6507,6502,6499,6492,6483,6469,6448,6408,6381,6398,6422,6420,
+6366,6355,6360,6364,6402,6451,6434,6414,6402,6351,6317,6285,6243,6214,6172,6111,6093,6073,6065,6067,
+6089,6071,6016,5992,5973,5955,5908,5894,5922,5834,5809,5806,5757,5765,5609,5504,5437,5389,5360,5340,
+5333,5345,5364,5336,5299,5257,5178,5153,5161,5150,5137,5100,5042,4993,4972,4978,4997,5000,4957,4902,
+4868,4838,4819,4858,4910,4884,4958,4993,4918,4724,4532,4419,4371,4359,4353,4265,4171,4115,4091,4034,
+3964,3895,3836,3789,3735,3668,3600,3566,3550,3526,3482,3413,3349,3312,3272,3228,3181,3129,3091,3063,
+3024,2985,2942,2910,2873,2827,2786,2737,2683,2637,2612,2639,2714,2780,2729,2649,2586,2533,2492,2462,
+2459,2490,2538,2569,2539,2472,2387,2364,2367,2318,2293,2258,2215,2172,2132,2084,2076,2194,2178,2072,
+1830,1755,1791,1832,1857,1854,1819,1790,1747,1705,1675,1648,1619,1608,1592,1571,1561,1565,1562,1555,
+1553,1559,1560,1584,1594,1611,1615,1584,1554,1525,1482,1454,1403,1351,1293,1243,1209,1197,1200,1226,
+1187,1147,1134,1138,1146,1159,1173,1182,1165,1169,1159,1144,1123,1129,1139,1149,1165,1180,1193,1201,
+1224,1246,1253,1265,1277,1300,1330,1338,1368,1383,1391,1393,1387,1388,1397,1410,1445,1478,1505,1501,
+1484,1455,1444,1476,1505,1582,1577,1525,1587,1647,1704,1601,1555,1570,1541,1565,1599,1595,1585,1566,
+1549,1501,1502,1543,1492,1423,1388,1372,1358,1337,1307,1278,1259,1233,1211,1193,1174,1147,1127,1119,
+1082,1063,1046,1018,991,962,929,896,860,809,799,782,746,725,695,673,658,640,625,613,
+572,549,512,472,428,385,352,327,300,271,239,207,180,153,112,70,30,-4,-33,-63,
+-97,-130,-165,-200,-237,-277,-318,-363,-408,-450,-494,-542,-587,-631,-667,-703,-743,-786,-833,-879,
+-924,-964,-1001,-1040,-1085,-1132,-1167,-1203,-1238,-1284,-1336,-1373,-1425,-1475,-1520,-1560,-1597,-1630,-1675,-1720,
+-1754,-1793,-1826,-1854,-1883,-1916,-1954,-1991,-2027,-2057,-2093,-2128,-2162,-2192,-2233,-2263,-2292,-2334,-2353,-2379,
+-2401,-2433,-2468,-2511,-2549,-2577,-2607,-2634,-2665,-2694,-2728,-2758,-2793,-2826,-2859,-2890,-2917,-2945,-2974,-2996,
+-3022,-3051,-3078,-3096,-3117,-3137,-3162,-3169,-3180,-3191,-3200,-3210,-3223,-3228,-3237,-3242,-3242,-3243,-3240,-3246,
+-3259,-3259,-3271,-3267,-3270,-3280,-3285,-3286,-3274,-3258,-3246,-3237,-3230,-3220,-3207,-3191,-3177,-3165,-3148,-3134,
+-3116,-3088,-3071,-3061,-3022,-2999,-2967,-2940,-2913,-2885,-2844,-2813,-2762,-2725,-2668,-2652,-2625,-2591,-2558,-2518,
+-2499,-2474,-2446,-2415,-2379,-2349,-2320,-2285,-2251,-2216,-2177,-2139,-2096,-2056,-2015,-1972,-1932,-1895,-1842,-1796,
+-1759,-1725,-1687,-1650,-1608,-1566,-1527,-1492,-1450,-1411,-1373,-1335,-1296,-1261,-1225,-1189,-1155,-1122,-1093,-1063,
+-1031,-999,-968,-941,-911,-886,-852,-830,-800,-774,-747,-724,-698,-668,-630,-602,-566,-536,-510,-482,
+-448,-420,-388,-360,-334,-306,-281,-257,-236,-210,-183,-155,-122,-87,-55,-23,8,44,87,129,
+179,221,266,304,343,381,420,454,497,535,580,645,691,743,774,825,881,925,968,990,
+1008,1026,1045,1089,1110,1151,1191,1239,1319,1278,1247,1211,1198,1203,1214,1256,1307,1364,1402,1388,
+1321,1223,1113,1092,1337,1620,1763,1640,1663,1931,2306,2419,2272,2331,2017,1707,1389,1030,742,625,
+744,1195,1370,1578,1635,1734,1623,928,162,-156,-325,-422,-458,-477,-492,-517,-546,-576,-632,-682,
+-732,-775,-845,-926,-1004,-1041,-1046,-1025,-989,-971,-1019,-1193,-1282,-1260,-1230,-1315,-1344,-1352,-1427,-1516,
+-1624,-1698,-1739,-1774,-1785,-1770,-1881,-1970,-2064,-2165,-2236,-2307,-2364,-2528,-2614,-2675,-2724,-2756,-2792,-2822,
+-2853,-2857,-2862,-2855,-2865,-2894,-2920,-2952,-3002,-3054,-3083,-3090,-3101,-3119,-3142,-3157,-3168,-3174,-3166,-3183,
+-3208,-3215,-3217,-3225,-3247,-3306,-3446,-3583,-3649,-3681,-3722,-3775,-3825,-3865,-3907,-3928,-3940,-3943,-3940,-3932,
+-3914,-3888,-3863,-3826,-3798,-3757,-3722,-3685,-3629,-3579,-3531,-3482,-3434,-3384,-3322,-3252,-3174,-3101,-3037,-2972,
+-2912,-2842,-2769,-2717,-2646,-2582,-2505,-2442,-2382,-2309,-2238,-2168,-2102,-2030,-1961,-1884,-1818,-1763,-1678,-1622,
+-1546,-1466,-1378,-1286,-1196,-1098,-1020,-943,-853,-779,-716,-646,-571,-492,-408,-336,-255,-164,-88,-49,
+-17,108,160,197,235,271,315,359,402,451,480,524,555,570,603,646,693,715,730,753,
+801,829,881,937,970,989,1007,1022,1039,1067,1115,1144,1178,1201,1232,1264,1277,1281,1297,1341,
+1394,1427,1495,1605,1614,1603,1605,1632,1665,1676,1694,1729,1782,1829,1856,1862,1870,1867,1880,1858,
+1870,1874,1880,1896,1912,1923,1939,1954,1977,2001,2024,2040,2056,2071,2096,2115,2141,2167,2187,2208,
+2244,2293,2339,2399,2459,2528,2607,2734,2831,2910,3000,3009,3000,2982,2987,3005,3054,3100,3126,3117,
+3099,3108,3098,3108,3107,3077,3043,2999,2974,2971,2980,2973,2943,2887,2852,2782,2744,2749,2750,2744,
+2744,2757,2750,2745,2755,2753,2738,2725,2710,2701,2685,2673,2656,2661,2616,2556,2558,2557,2557,2585,
+2584,2534,2472,2388,2309,2255,2201,2157,2113,2088,2096,2112,2124,2134,2109,2044,1998,1958,1930,1912,
+1924,1955,2005,2041,2098,2149,2189,2169,2166,2138,2121,2147,2165,2161,2197,2180,2164,2218,2261,2186,
+1987,1905,1864,1849,1814,1758,1668,1603,1556,1520,1458,1396,1337,1261,1205,1174,1126,1074,1011,934,
+839,774,711,634,569,492,394,312,205,95,10,-79,-177,-275,-347,-412,-465,-515,-526,-534,
+-534,-500,-488,-483,-483,-489,-508,-528,-531,-583,-626,-631,-638,-644,-671,-760,-852,-948,-984,-1002,
+-1019,-1005,-991,-974,-932,-888,-869,-876,-871,-855,-863,-887,-940,-978,-1008,-1047,-1075,-1093,-1077,-1091,
+-1100,-1123,-1158,-1174,-1158,-1172,-1184,-1223,-1274,-1290,-1283,-1274,-1235,-1197,-1128,-1135,-1161,-1128,-1114,-1160,
+-1272,-1187,-1195,-1068,-1148,-1150,-1069,-1235,-1248,-1185,-1121,-1190,-1317,-1416,-1564,-1742,-1864,-1973,-2001,-2071,
+-2101,-2185,-2339,-2408,-2519,-2630,-2699,-2767,-2827,-2867,-2889,-2896,-2892,-2919,-2960,-2993,-3036,-3115,-3200,-3285,
+-3351,-3407,-3469,-3522,-3576,-3632,-3717,-3813,-3888,-3949,-4009,-4054,-4118,-4197,-4311,-4536,-4753,-4802,-4890,-5071,
+-5202,-5283,-5306,-5317,-5334,-5349,-5370,-5413,-5456,-5516,-5560,-5569,-5517,-5354,-5261,-5342,-5355,-5360,-5337,-5358,
+-5320,-5361,-5399,-5460,-5481,-5513,-5551,-5590,-5617,-5676,-5724,-5734,-5809,-5868,-5877,-5942,-5971,-6027,-6094,-6202,
+-6230,-6301,-6400,-6535,-6624,-6723,-6814,-6936,-7008,-7120,-7204,-7315,-7404,-7514,-7602,-7699,-7791,-7872,-7980,-8094,
+-8182,-8255,-8333,-8464,-8551,-8624,-8720,-8823,-8883,-8903,-8953,-9034,-9122,-9221,-9284,-9348,-9382,-9436,-9511,-9567,
+-9615,-9656,-9688,-9709,-9713,-9701,-9659,-9706,-9625,-9685,-9862,-9933,-9986,-10017,-10032,-10043,-10067,-10104,-10128,-10143,
+-10160,-10160,-10176,-10203,-10222,-10246,-10284,-10344,-10441,-10449,-10444,-10473,-10440,-10294,-10184,-9997,-9819,-9720,-9633,-9621,
+-9627,-9644,-9659,-9744,-9946,-9941,-9910,-9857,-9796,-9732,-9648,-9566,-9477,-9386,-9282,-9162,-9028,-8889,-8748,-8612,
+-8488,-8360,-8208,-8033,-7900,-7786,-7656,-7505,-7345,-7182,-7023,-6868,-6722,-6562,-6366,-6179,-6004,-5814,-5676,-5564,
+-5446,-5398,-5457,-5511,-5585,-5673,-5729,-5691,-5529,-5455,-5508,-5423,-5231,-4874,-4572,-4319,-4057,-3879,-3703,-3516,
+-3381,-3296,-3229,-3130,-3004,-2853,-2678,-2508,-2378,-2259,-2156,-2038,-1930,-1833,-1742,-1646,-1546,-1437,-1339,-1238,
+-1130,-1052,-976,-928,-864,-781,-700,-634,-585,-520,-453,-381,-314,-239,-150,-54,52,171,304,438,
+540,644,720,783,874,985,1097,1244,1343,1411,1491,1581,1666,1764,1861,1938,2031,2151,2244,2306,
+2379,2479,2550,2663,2795,2917,3041,3113,3175,3191,3190,3250,3339,3550,3777,3955,4116,4265,4371,4480,
+4617,4772,4972,5110,5209,5250,5251,5196,5241,5386,5495,5588,5647,5658,5639,5680,5765,5950,6227,6422,
+6542,6650,6696,6730,6673,6465,6431,6480,6522,6532,6508,6578,6907,7327,7449,7366,7283,7066,7018,6534,
+6281,6285,5602,4940,4642,4589,5017,5633,6056,6349,6516,6665,6748,6799,6814,6816,6805,6788,6764,6738,
+6723,6704,6698,6697,6695,6716,6757,6817,6812,6851,6847,6660,6462,6474,6436,6459,6516,6575,6603,6638,
+6651,6636,6605,6583,6585,6577,6565,6560,6550,6539,6533,6527,6504,6486,6480,6466,6429,6404,6410,6400,
+6391,6406,6455,6433,6422,6460,6464,6428,6406,6363,6347,6348,6331,6348,6333,6298,6262,6190,6157,6106,
+6080,6061,6066,6048,6019,6011,5999,5984,5966,5891,5838,5828,5782,5741,5891,5783,5659,5573,5450,5378,
+5359,5349,5341,5344,5327,5285,5217,5152,5115,5136,5167,5174,5142,5145,5048,5008,5005,5002,4987,4963,
+4939,4912,4889,4911,4977,4970,4931,4910,4904,4844,4716,4561,4439,4403,4389,4353,4292,4221,4206,4269,
+4113,4010,3929,3863,3813,3763,3707,3653,3607,3582,3556,3520,3466,3406,3343,3296,3247,3198,3153,3117,
+3087,3047,3002,2966,2936,2908,2875,2844,2793,2730,2674,2660,2714,2883,3087,2895,2711,2612,2555,2506,
+2470,2484,2620,2833,2832,2570,2430,2372,2352,2381,2358,2310,2271,2226,2181,2147,2100,2038,2149,2280,
+2183,1905,1796,1813,1850,1882,1875,1846,1811,1768,1714,1683,1650,1626,1612,1607,1580,1574,1588,1581,
+1567,1571,1571,1577,1594,1617,1628,1622,1588,1551,1521,1489,1461,1427,1376,1322,1276,1246,1224,1223,
+1238,1204,1176,1155,1159,1169,1182,1200,1197,1194,1181,1175,1161,1154,1152,1135,1160,1180,1200,1206,
+1211,1240,1259,1270,1290,1294,1308,1328,1335,1345,1383,1403,1407,1411,1403,1399,1411,1448,1485,1518,
+1519,1506,1478,1467,1554,1673,1615,1610,1564,1565,1598,1654,1689,1631,1580,1542,1559,1592,1606,1596,
+1583,1564,1531,1502,1522,1532,1465,1439,1400,1388,1358,1333,1307,1286,1266,1248,1232,1215,1193,1168,
+1144,1118,1098,1075,1053,1031,1009,980,947,905,858,824,794,780,750,719,695,674,664,647,
+626,617,578,567,512,460,407,376,346,315,291,270,243,221,191,155,113,70,31,1,
+-27,-59,-90,-123,-159,-194,-235,-271,-313,-355,-400,-447,-503,-551,-596,-634,-669,-710,-746,-785,
+-827,-871,-917,-962,-1008,-1050,-1096,-1144,-1186,-1229,-1264,-1301,-1341,-1382,-1419,-1460,-1507,-1542,-1585,-1627,
+-1667,-1704,-1747,-1777,-1809,-1833,-1862,-1898,-1929,-1956,-1986,-2023,-2070,-2110,-2143,-2183,-2215,-2246,-2283,-2306,
+-2329,-2355,-2392,-2428,-2470,-2510,-2537,-2560,-2586,-2614,-2643,-2675,-2710,-2743,-2776,-2808,-2836,-2859,-2885,-2908,
+-2935,-2958,-2983,-3009,-3027,-3053,-3078,-3102,-3121,-3132,-3146,-3159,-3167,-3188,-3193,-3205,-3211,-3216,-3214,-3214,
+-3214,-3218,-3236,-3235,-3233,-3246,-3253,-3250,-3244,-3240,-3230,-3222,-3211,-3198,-3184,-3172,-3160,-3147,-3133,-3120,
+-3099,-3084,-3061,-3033,-3014,-2995,-2969,-2937,-2915,-2888,-2854,-2817,-2779,-2746,-2709,-2648,-2633,-2604,-2574,-2540,
+-2517,-2487,-2453,-2426,-2393,-2364,-2337,-2307,-2272,-2237,-2203,-2167,-2126,-2085,-2048,-2013,-1975,-1935,-1900,-1842,
+-1795,-1758,-1723,-1686,-1651,-1612,-1567,-1537,-1497,-1460,-1424,-1383,-1342,-1304,-1274,-1236,-1205,-1173,-1140,-1107,
+-1078,-1047,-1015,-983,-953,-924,-896,-867,-841,-814,-788,-770,-741,-706,-674,-639,-610,-588,-560,-525,
+-496,-467,-440,-414,-382,-354,-328,-308,-284,-262,-237,-210,-179,-142,-110,-77,-41,-3,31,69,
+109,153,193,232,276,319,363,409,453,496,552,576,618,669,713,754,801,849,895,919,
+932,956,982,1009,1037,1079,1134,1193,1248,1332,1319,1291,1276,1294,1304,1327,1352,1375,1409,1435,
+1412,1383,1313,1207,1110,1224,1605,1794,1708,1712,2043,2485,2468,2398,2385,2177,1817,1448,1108,902,
+928,1170,1475,1661,1879,1965,1871,1484,713,151,-146,-290,-351,-372,-392,-416,-445,-485,-531,-595,
+-668,-738,-798,-862,-934,-980,-983,-965,-946,-892,-892,-968,-1086,-1140,-1120,-1015,-1133,-1261,-1316,-1385,
+-1457,-1535,-1592,-1638,-1670,-1641,-1627,-1647,-1788,-1864,-1970,-2047,-2080,-2207,-2340,-2484,-2563,-2623,-2661,-2701,
+-2751,-2792,-2803,-2788,-2774,-2789,-2831,-2852,-2860,-2900,-2974,-3059,-3106,-3133,-3168,-3196,-3186,-3167,-3168,-3172,
+-3181,-3175,-3193,-3220,-3194,-3161,-3251,-3304,-3365,-3488,-3532,-3594,-3662,-3732,-3794,-3853,-3889,-3908,-3899,-3888,
+-3877,-3859,-3838,-3820,-3792,-3758,-3725,-3683,-3649,-3605,-3546,-3500,-3460,-3421,-3376,-3310,-3240,-3166,-3095,-3023,
+-2955,-2894,-2828,-2757,-2706,-2643,-2568,-2493,-2430,-2359,-2296,-2230,-2161,-2093,-2023,-1950,-1887,-1810,-1751,-1693,
+-1626,-1559,-1481,-1399,-1301,-1213,-1137,-1061,-976,-892,-805,-735,-665,-580,-511,-430,-385,-296,-213,-122,
+-53,-25,49,139,187,239,272,296,347,404,447,498,524,538,556,593,638,679,692,735,
+759,803,840,888,934,959,989,997,1007,1029,1054,1078,1125,1168,1183,1209,1290,1327,1266,1293,
+1334,1382,1430,1492,1557,1621,1645,1605,1632,1651,1700,1698,1733,1780,1829,1842,1846,1879,1866,1871,
+1822,1837,1843,1848,1862,1871,1883,1897,1918,1944,1972,2001,2013,2025,2043,2068,2099,2127,2151,2177,
+2203,2233,2258,2291,2329,2370,2417,2481,2567,2663,2756,2859,2938,2985,2966,2971,2984,3016,3070,3095,
+3086,3071,3089,3095,3093,3083,3046,3012,2965,2941,2933,2941,2955,2925,2872,2815,2747,2726,2713,2710,
+2725,2735,2749,2747,2741,2743,2728,2709,2700,2701,2709,2678,2656,2630,2645,2625,2558,2546,2536,2526,
+2518,2465,2396,2299,2167,2081,2007,1958,1889,1810,1782,1809,1863,1908,1973,2012,1992,1947,1900,1856,
+1829,1839,1872,1919,1967,2055,2117,2132,2111,2115,2128,2145,2150,2136,2111,2118,2199,2231,2248,2189,
+2112,1965,1874,1823,1792,1761,1694,1609,1545,1484,1430,1371,1311,1273,1235,1183,1138,1076,1019,979,
+923,845,789,700,618,558,502,402,287,176,56,-38,-143,-242,-325,-402,-459,-518,-576,-593,
+-586,-593,-562,-554,-541,-542,-542,-577,-601,-605,-642,-656,-649,-661,-686,-709,-771,-852,-969,-1023,
+-1068,-1089,-1090,-1079,-1065,-1032,-989,-967,-967,-940,-909,-903,-926,-978,-1025,-1047,-1067,-1072,-1072,-1047,
+-1066,-1138,-1173,-1152,-1188,-1191,-1208,-1231,-1250,-1296,-1318,-1318,-1322,-1294,-1252,-1172,-1173,-1173,-1157,-1196,
+-1276,-1347,-1310,-1210,-1106,-1231,-1131,-1233,-1297,-1290,-1192,-1207,-1289,-1411,-1513,-1633,-1787,-1887,-1997,-2071,
+-2145,-2201,-2260,-2406,-2493,-2514,-2599,-2702,-2790,-2861,-2910,-2935,-2933,-2937,-2989,-3033,-3063,-3094,-3163,-3244,
+-3322,-3401,-3469,-3528,-3584,-3643,-3708,-3794,-3880,-3952,-4005,-4048,-4104,-4192,-4277,-4397,-4607,-4890,-5014,-5000,
+-5084,-5217,-5295,-5320,-5333,-5344,-5357,-5376,-5416,-5469,-5525,-5558,-5546,-5398,-5247,-5326,-5350,-5371,-5346,-5347,
+-5375,-5331,-5349,-5407,-5506,-5525,-5580,-5597,-5610,-5646,-5691,-5730,-5796,-5851,-5880,-5930,-5984,-6008,-6081,-6110,
+-6163,-6274,-6322,-6402,-6522,-6630,-6711,-6801,-6915,-7026,-7120,-7213,-7316,-7416,-7519,-7604,-7706,-7779,-7875,-7971,
+-8075,-8162,-8224,-8345,-8435,-8498,-8607,-8709,-8754,-8802,-8901,-8979,-9063,-9137,-9202,-9277,-9343,-9386,-9439,-9513,
+-9580,-9619,-9654,-9685,-9706,-9720,-9725,-9725,-9728,-9662,-9648,-9835,-9939,-9986,-10016,-10032,-10049,-10075,-10114,-10133,
+-10157,-10174,-10189,-10202,-10217,-10231,-10252,-10279,-10344,-10459,-10507,-10530,-10574,-10497,-10375,-10297,-10151,-9935,-9838,-9775,
+-9752,-9773,-9767,-9827,-9994,-10053,-10016,-9974,-9910,-9838,-9775,-9693,-9602,-9503,-9414,-9307,-9171,-9038,-8907,-8782,
+-8666,-8537,-8405,-8247,-8068,-7928,-7802,-7661,-7505,-7343,-7178,-7021,-6867,-6721,-6551,-6359,-6169,-5993,-5820,-5682,
+-5541,-5444,-5425,-5447,-5480,-5527,-5589,-5630,-5581,-5381,-5310,-5391,-5382,-5245,-4938,-4599,-4253,-3999,-3784,-3653,
+-3507,-3373,-3289,-3201,-3109,-2975,-2812,-2624,-2450,-2332,-2216,-2111,-2015,-1889,-1772,-1671,-1587,-1484,-1386,-1276,
+-1180,-1060,-949,-829,-822,-772,-698,-601,-529,-468,-410,-361,-302,-240,-174,-91,3,106,219,353,
+488,582,680,775,844,940,1053,1166,1295,1404,1504,1574,1644,1726,1820,1917,2038,2140,2219,2300,
+2369,2436,2534,2616,2726,2855,2983,3106,3150,3162,3181,3238,3347,3503,3729,3928,4094,4231,4294,4372,
+4503,4674,4882,5102,5173,5259,5302,5259,5213,5247,5378,5520,5631,5717,5767,5823,5882,6023,6262,6364,
+6460,6630,6658,6665,6650,6523,6396,6440,6497,6537,6565,6566,6576,6663,6804,7054,7276,7189,6937,6854,
+6460,6210,6211,5620,4886,4595,4521,4872,5505,5988,6324,6543,6677,6772,6823,6843,6844,6836,6819,6797,
+6775,6757,6745,6730,6726,6725,6800,6872,6881,6899,6920,6814,6678,6647,6649,6532,6538,6582,6622,6668,
+6699,6696,6684,6658,6641,6632,6625,6606,6592,6581,6571,6552,6527,6501,6500,6485,6455,6424,6420,6394,
+6388,6461,6445,6425,6429,6467,6491,6475,6439,6406,6360,6332,6300,6283,6285,6279,6317,6265,6282,6310,
+6198,6141,6116,6084,6067,6043,6038,6010,5995,5997,5924,5903,5861,5782,5727,5862,5851,5664,5562,5502,
+5398,5365,5337,5346,5332,5345,5299,5238,5218,5249,5265,5229,5229,5225,5226,5118,5048,5029,5016,4997,
+4983,4974,4956,4955,4968,5034,5031,4995,4915,4893,4842,4773,4649,4501,4422,4410,4380,4325,4268,4234,
+4251,4204,4068,3977,3908,3854,3811,3771,3721,3669,3625,3587,3553,3515,3464,3393,3320,3261,3218,3181,
+3144,3108,3064,3016,2981,2952,2936,2971,2951,2899,2811,2730,2716,2789,3007,3260,3049,2758,2648,2587,
+2538,2492,2503,2672,2836,2892,2665,2475,2397,2369,2404,2471,2346,2276,2239,2199,2166,2124,2062,2039,
+2231,2295,1984,1828,1820,1858,1888,1894,1870,1821,1783,1734,1697,1662,1646,1611,1592,1589,1579,1587,
+1596,1593,1594,1606,1612,1619,1628,1629,1611,1579,1545,1517,1493,1480,1451,1408,1359,1310,1273,1247,
+1259,1328,1250,1192,1175,1176,1185,1201,1219,1215,1213,1214,1199,1189,1174,1173,1169,1183,1187,1196,
+1205,1223,1245,1269,1292,1317,1324,1314,1327,1339,1344,1375,1410,1422,1432,1438,1441,1422,1457,1499,
+1530,1538,1522,1498,1485,1499,1530,1532,1596,1660,1618,1626,1653,1690,1662,1596,1595,1564,1612,1632,
+1622,1611,1592,1561,1530,1523,1509,1467,1446,1428,1412,1385,1379,1348,1317,1293,1274,1254,1241,1221,
+1199,1180,1158,1136,1108,1082,1058,1040,1011,985,949,905,858,830,805,775,744,727,702,686,
+671,651,635,596,555,516,479,446,410,373,345,319,294,271,246,220,193,154,112,74,
+40,11,-20,-54,-88,-124,-160,-195,-232,-270,-313,-361,-416,-467,-512,-548,-579,-617,-659,-704,
+-751,-798,-845,-893,-942,-981,-1019,-1062,-1105,-1139,-1181,-1217,-1255,-1298,-1340,-1377,-1421,-1461,-1505,-1551,
+-1593,-1623,-1659,-1691,-1718,-1750,-1787,-1825,-1854,-1880,-1902,-1933,-1973,-2011,-2050,-2087,-2123,-2161,-2200,-2234,
+-2260,-2288,-2319,-2352,-2390,-2430,-2460,-2487,-2511,-2538,-2562,-2595,-2626,-2661,-2693,-2728,-2759,-2786,-2811,-2833,
+-2855,-2882,-2903,-2929,-2957,-2983,-3004,-3028,-3048,-3073,-3089,-3105,-3120,-3129,-3142,-3156,-3165,-3177,-3185,-3183,
+-3183,-3185,-3190,-3200,-3205,-3207,-3214,-3213,-3211,-3212,-3206,-3193,-3180,-3169,-3158,-3149,-3143,-3131,-3119,-3105,
+-3086,-3068,-3050,-3028,-3010,-2983,-2960,-2939,-2916,-2889,-2862,-2828,-2800,-2772,-2737,-2697,-2656,-2619,-2587,-2556,
+-2529,-2498,-2470,-2440,-2407,-2376,-2349,-2319,-2289,-2255,-2223,-2190,-2155,-2118,-2081,-2040,-2010,-1976,-1884,-1826,
+-1841,-1795,-1757,-1725,-1688,-1649,-1615,-1572,-1546,-1506,-1464,-1428,-1392,-1357,-1318,-1283,-1244,-1211,-1181,-1150,
+-1118,-1084,-1051,-1024,-996,-967,-941,-910,-881,-855,-829,-804,-772,-745,-715,-690,-661,-634,-609,-575,
+-542,-511,-482,-458,-428,-404,-382,-353,-329,-309,-286,-262,-233,-196,-161,-129,-92,-56,-23,6,
+42,81,121,165,218,270,323,367,412,429,473,515,554,605,660,707,734,766,792,830,
+854,891,940,954,970,999,1029,1069,1175,1255,1354,1328,1299,1293,1320,1346,1364,1388,1412,1431,
+1434,1423,1406,1392,1316,1196,1234,1526,1807,1714,1711,2051,2604,2511,2394,2423,2253,1843,1488,1207,
+1153,1371,1619,1762,1948,2155,2033,1824,1219,574,122,-105,-229,-268,-286,-311,-341,-373,-416,-475,
+-549,-635,-717,-792,-851,-900,-922,-918,-888,-860,-786,-768,-858,-929,-982,-936,-823,-1000,-1136,-1232,
+-1303,-1370,-1449,-1536,-1624,-1634,-1565,-1507,-1499,-1524,-1547,-1644,-1744,-1856,-1993,-2124,-2243,-2396,-2485,-2547,
+-2598,-2662,-2712,-2732,-2725,-2720,-2740,-2774,-2801,-2803,-2847,-2978,-3115,-3207,-3248,-3265,-3268,-3259,-3236,-3205,
+-3183,-3170,-3176,-3197,-3235,-3250,-3227,-3202,-3215,-3240,-3253,-3361,-3468,-3565,-3652,-3732,-3800,-3852,-3867,-3848,
+-3830,-3817,-3799,-3789,-3773,-3751,-3725,-3688,-3647,-3608,-3558,-3510,-3467,-3433,-3398,-3353,-3286,-3210,-3150,-3080,
+-3007,-2942,-2876,-2813,-2755,-2698,-2636,-2555,-2480,-2415,-2343,-2273,-2210,-2136,-2081,-2020,-1952,-1880,-1807,-1748,
+-1679,-1619,-1551,-1466,-1383,-1293,-1217,-1140,-1054,-974,-885,-813,-741,-681,-590,-531,-465,-384,-285,-188,
+-113,-46,50,101,108,217,262,299,330,365,405,440,486,514,548,577,633,676,692,727,
+758,785,832,866,911,946,965,976,987,1005,1018,1037,1073,1112,1138,1160,1194,1297,1284,1273,
+1322,1353,1406,1444,1547,1511,1535,1563,1594,1619,1643,1671,1698,1728,1773,1822,1843,1839,1835,1819,
+1796,1784,1798,1806,1822,1830,1845,1851,1873,1889,1911,1938,1965,1985,2005,2031,2065,2094,2118,2140,
+2156,2171,2190,2209,2236,2268,2300,2342,2396,2458,2528,2607,2719,2836,2910,2929,2950,2992,3008,3029,
+3044,3047,3053,3066,3073,3064,3047,3022,2986,2941,2911,2902,2918,2923,2892,2844,2785,2733,2713,2698,
+2686,2695,2716,2725,2724,2736,2732,2697,2669,2676,2692,2678,2656,2625,2609,2585,2551,2546,2479,2463,
+2421,2388,2336,2195,2076,1948,1867,1796,1744,1693,1637,1636,1678,1738,1792,1862,1935,1979,1956,1913,
+1857,1814,1796,1814,1848,1903,1991,2055,2052,2055,2084,2136,2170,2150,2112,2075,2053,2104,2231,2211,
+2132,2077,1962,1844,1774,1731,1697,1662,1580,1494,1427,1368,1315,1282,1253,1220,1175,1121,1035,967,
+946,915,842,758,661,586,538,493,376,240,131,11,-96,-204,-300,-381,-468,-524,-576,-605,
+-634,-637,-609,-582,-592,-595,-591,-592,-635,-652,-667,-687,-677,-680,-694,-719,-734,-771,-859,-982,
+-1065,-1113,-1147,-1164,-1174,-1167,-1130,-1094,-1075,-1058,-1021,-966,-950,-973,-1024,-1076,-1089,-1084,-1068,-1042,
+-1023,-1025,-1079,-1163,-1172,-1209,-1243,-1269,-1295,-1307,-1323,-1344,-1367,-1371,-1350,-1315,-1262,-1184,-1208,-1191,
+-1311,-1376,-1418,-1378,-1281,-1222,-1335,-1293,-1337,-1290,-1308,-1276,-1328,-1377,-1461,-1553,-1688,-1787,-1872,-1978,
+-2079,-2191,-2306,-2346,-2462,-2574,-2623,-2655,-2732,-2809,-2861,-2903,-2956,-3000,-3037,-3070,-3119,-3150,-3167,-3207,
+-3275,-3358,-3445,-3522,-3584,-3643,-3708,-3778,-3857,-3939,-4004,-4047,-4095,-4179,-4295,-4419,-4555,-4770,-4964,-5084,
+-5077,-5109,-5241,-5305,-5333,-5344,-5349,-5367,-5389,-5428,-5474,-5522,-5550,-5505,-5319,-5309,-5347,-5345,-5346,-5338,
+-5381,-5404,-5412,-5426,-5452,-5476,-5559,-5599,-5625,-5626,-5667,-5707,-5756,-5819,-5877,-5904,-5966,-6016,-6060,-6109,
+-6171,-6202,-6265,-6370,-6473,-6549,-6608,-6700,-6802,-6919,-7004,-7115,-7225,-7309,-7412,-7518,-7608,-7694,-7778,-7869,
+-7946,-8025,-8113,-8210,-8323,-8391,-8480,-8579,-8683,-8746,-8826,-8932,-8947,-9048,-9108,-9176,-9249,-9319,-9374,-9427,
+-9486,-9562,-9604,-9645,-9681,-9705,-9729,-9750,-9735,-9673,-9613,-9641,-9789,-9937,-9980,-10015,-10034,-10055,-10086,-10126,
+-10157,-10180,-10193,-10221,-10228,-10236,-10247,-10265,-10290,-10352,-10494,-10576,-10626,-10640,-10554,-10453,-10434,-10381,-10220,-10123,
+-10095,-10053,-10002,-9988,-10102,-10138,-10117,-10073,-10020,-9955,-9874,-9799,-9716,-9627,-9524,-9422,-9309,-9172,-9038,-8921,
+-8816,-8703,-8578,-8428,-8271,-8103,-7950,-7808,-7659,-7501,-7339,-7178,-7026,-6873,-6716,-6542,-6347,-6159,-5991,-5855,
+-5730,-5602,-5509,-5455,-5444,-5448,-5469,-5515,-5532,-5472,-5225,-5148,-5211,-5248,-5157,-5008,-4673,-4300,-3907,-3700,
+-3538,-3413,-3315,-3243,-3173,-3074,-2944,-2785,-2583,-2421,-2293,-2178,-2067,-1970,-1850,-1724,-1615,-1515,-1425,-1333,
+-1217,-1112,-989,-846,-750,-714,-682,-613,-510,-431,-356,-299,-260,-209,-160,-102,-29,60,158,266,
+384,518,623,731,823,890,986,1122,1248,1373,1477,1565,1635,1698,1782,1874,1973,2093,2208,2293,
+2364,2432,2505,2585,2694,2823,2966,3100,3168,3140,3156,3224,3351,3504,3674,3869,4064,4196,4266,4307,
+4387,4522,4715,4966,5136,5207,5304,5316,5258,5237,5276,5403,5572,5681,5805,5904,5990,6068,6172,6318,
+6396,6546,6564,6463,6487,6414,6395,6412,6467,6520,6559,6587,6588,6570,6522,6432,6441,6598,6700,6752,
+6661,6310,6134,6062,5604,4880,4568,4512,4751,5320,5872,6252,6504,6657,6778,6846,6877,6883,6875,6854,
+6829,6806,6796,6794,6771,6753,6748,6842,6924,6944,6969,6919,6789,6880,6883,6732,6634,6618,6646,6676,
+6715,6735,6748,6734,6706,6689,6674,6660,6637,6626,6605,6572,6543,6524,6516,6499,6472,6470,6484,6488,
+6464,6470,6454,6450,6459,6463,6476,6495,6494,6466,6426,6378,6344,6323,6318,6292,6289,6258,6235,6304,
+6264,6194,6204,6151,6113,6079,6062,6053,6040,6012,6011,5976,5949,5887,5871,5830,5775,5777,5645,5523,
+5445,5392,5404,5347,5330,5324,5358,5333,5249,5231,5327,5376,5388,5395,5298,5228,5142,5078,5060,5053,
+5055,5039,5013,4990,5007,5040,5089,5149,5017,4935,4919,4875,4835,4742,4605,4500,4446,4399,4326,4267,
+4245,4236,4203,4115,4030,3965,3915,3880,3856,3829,3768,3687,3630,3587,3548,3500,3428,3348,3288,3251,
+3220,3184,3141,3087,3028,2989,2963,2951,2988,3030,3126,2946,2791,2758,2865,2971,3025,2916,2754,2681,
+2623,2574,2514,2491,2544,2583,2646,2743,2592,2494,2400,2394,2429,2336,2284,2257,2227,2183,2139,2093,
+2024,2097,2286,2043,1853,1818,1851,1893,1912,1892,1847,1808,1749,1718,1684,1657,1623,1593,1569,1577,
+1592,1598,1600,1588,1606,1636,1634,1624,1630,1611,1582,1555,1532,1519,1509,1481,1440,1402,1352,1304,
+1266,1266,1282,1313,1244,1210,1194,1198,1215,1232,1241,1249,1241,1205,1194,1190,1188,1189,1199,1203,
+1221,1224,1234,1242,1277,1299,1326,1334,1321,1318,1337,1344,1363,1412,1427,1446,1466,1467,1448,1467,
+1503,1538,1546,1535,1525,1516,1512,1513,1553,1607,1672,1690,1689,1691,1678,1701,1626,1566,1570,1645,
+1665,1667,1657,1631,1591,1552,1520,1514,1491,1470,1457,1435,1419,1405,1384,1352,1333,1318,1303,1294,
+1258,1232,1218,1197,1171,1142,1113,1082,1059,1028,1003,970,929,888,856,826,803,773,747,723,
+701,699,679,655,624,585,574,528,489,455,421,378,347,320,295,268,245,227,197,161,
+117,78,46,16,-18,-51,-90,-129,-166,-200,-236,-276,-316,-358,-397,-442,-486,-534,-584,-634,
+-684,-736,-786,-834,-869,-897,-926,-960,-998,-1042,-1091,-1141,-1184,-1226,-1268,-1311,-1350,-1393,-1431,-1467,
+-1507,-1553,-1587,-1622,-1648,-1671,-1706,-1751,-1767,-1805,-1846,-1865,-1892,-1929,-1963,-2002,-2032,-2078,-2119,-2150,
+-2193,-2224,-2249,-2285,-2319,-2349,-2381,-2410,-2441,-2470,-2499,-2525,-2555,-2581,-2611,-2645,-2680,-2713,-2737,-2760,
+-2784,-2815,-2837,-2864,-2893,-2922,-2946,-2973,-2995,-3020,-3043,-3062,-3076,-3083,-3088,-3095,-3108,-3120,-3133,-3144,
+-3145,-3159,-3162,-3168,-3174,-3174,-3177,-3177,-3177,-3178,-3177,-3165,-3155,-3144,-3136,-3130,-3118,-3112,-3104,-3091,
+-3070,-3052,-3031,-3008,-2991,-2974,-2956,-2933,-2914,-2888,-2864,-2838,-2811,-2785,-2755,-2718,-2681,-2643,-2610,-2579,
+-2543,-2513,-2483,-2444,-2420,-2392,-2362,-2332,-2302,-2272,-2243,-2208,-2174,-2142,-2108,-2076,-2039,-2005,-1975,-1924,
+-1849,-1827,-1792,-1751,-1727,-1693,-1656,-1619,-1580,-1546,-1509,-1471,-1435,-1401,-1361,-1323,-1291,-1260,-1227,-1195,
+-1161,-1128,-1096,-1074,-1040,-1008,-978,-947,-925,-903,-878,-840,-813,-785,-756,-732,-707,-675,-649,-617,
+-592,-559,-526,-498,-477,-455,-429,-404,-379,-358,-334,-307,-277,-247,-219,-183,-145,-112,-78,-43,
+-9,29,71,110,144,190,233,290,336,373,430,473,508,553,600,645,672,693,706,738,
+758,790,826,871,927,953,977,1013,1067,1149,1288,1353,1334,1285,1279,1290,1318,1343,1398,1409,
+1388,1451,1431,1390,1381,1369,1290,1300,1542,1731,1692,1679,1971,2441,2556,2449,2339,2284,1856,1528,
+1345,1397,1590,1969,2074,2119,2102,2031,1566,967,451,126,-62,-160,-191,-201,-235,-269,-301,-347,
+-414,-498,-589,-677,-753,-802,-833,-845,-820,-759,-709,-699,-696,-755,-800,-934,-840,-711,-875,-1063,
+-1149,-1203,-1254,-1328,-1500,-1640,-1627,-1484,-1356,-1362,-1300,-1315,-1358,-1482,-1678,-1814,-1937,-2029,-2192,-2355,
+-2450,-2492,-2558,-2627,-2657,-2663,-2665,-2693,-2736,-2775,-2796,-2868,-3005,-3163,-3271,-3321,-3323,-3308,-3282,-3251,
+-3220,-3196,-3201,-3217,-3240,-3276,-3311,-3313,-3267,-3189,-3233,-3214,-3225,-3322,-3477,-3594,-3681,-3755,-3802,-3812,
+-3797,-3771,-3750,-3740,-3731,-3718,-3706,-3683,-3651,-3611,-3561,-3510,-3466,-3435,-3403,-3362,-3319,-3263,-3201,-3129,
+-3061,-2999,-2932,-2857,-2799,-2746,-2688,-2625,-2549,-2467,-2403,-2334,-2265,-2198,-2143,-2083,-2013,-1946,-1867,-1802,
+-1739,-1671,-1608,-1545,-1454,-1371,-1288,-1209,-1134,-1046,-973,-891,-811,-749,-679,-596,-514,-432,-348,-283,
+-207,-150,-35,25,88,145,168,268,303,353,373,424,465,499,536,581,613,651,673,699,
+748,779,821,859,880,909,933,956,958,973,1047,1048,1043,1066,1111,1125,1148,1195,1269,1252,
+1280,1337,1361,1405,1439,1471,1496,1528,1555,1588,1617,1641,1667,1694,1748,1777,1804,1839,1850,1828,
+1790,1766,1755,1759,1776,1787,1797,1816,1823,1841,1864,1893,1917,1940,1967,1990,2015,2043,2070,2092,
+2110,2119,2129,2140,2161,2190,2219,2251,2293,2343,2390,2437,2489,2557,2656,2778,2861,2924,3002,3021,
+3000,3009,3022,3033,3055,3059,3040,3028,3005,2964,2923,2895,2877,2895,2883,2854,2806,2755,2724,2698,
+2682,2665,2667,2684,2697,2716,2720,2678,2641,2632,2653,2658,2640,2622,2597,2559,2507,2493,2479,2345,
+2298,2241,2230,2172,2067,1964,1863,1784,1719,1659,1619,1609,1633,1676,1734,1807,1885,1955,2021,2028,
+1979,1908,1840,1797,1796,1811,1849,1928,1982,1991,2016,2075,2121,2142,2151,2130,2089,2048,2045,2194,
+2192,2113,2045,1930,1810,1733,1713,1654,1601,1531,1472,1414,1353,1309,1275,1239,1211,1160,1099,1001,
+930,919,867,779,688,630,579,534,473,351,202,71,-46,-156,-271,-373,-457,-517,-569,-604,
+-621,-621,-658,-636,-630,-639,-648,-656,-644,-662,-679,-709,-737,-713,-705,-732,-754,-748,-806,-908,
+-998,-1102,-1146,-1171,-1200,-1234,-1234,-1201,-1169,-1149,-1125,-1080,-1019,-996,-1018,-1071,-1116,-1124,-1109,-1077,
+-1041,-1016,-1031,-1060,-1117,-1184,-1246,-1284,-1313,-1340,-1350,-1360,-1373,-1404,-1406,-1393,-1363,-1329,-1257,-1267,
+-1265,-1370,-1445,-1470,-1485,-1355,-1349,-1425,-1310,-1359,-1366,-1307,-1370,-1473,-1503,-1560,-1643,-1718,-1826,-1897,
+-1991,-2100,-2204,-2322,-2435,-2510,-2639,-2723,-2759,-2773,-2823,-2871,-2909,-2948,-3006,-3089,-3139,-3184,-3220,-3237,
+-3259,-3328,-3420,-3488,-3554,-3630,-3706,-3767,-3827,-3907,-3984,-4035,-4087,-4172,-4286,-4449,-4627,-4759,-4835,-4931,
+-5044,-5114,-5157,-5258,-5313,-5339,-5355,-5358,-5380,-5401,-5437,-5478,-5518,-5532,-5428,-5331,-5345,-5360,-5352,-5334,
+-5375,-5386,-5418,-5439,-5484,-5535,-5522,-5621,-5596,-5633,-5640,-5667,-5722,-5796,-5847,-5903,-5948,-5996,-6053,-6090,
+-6148,-6226,-6261,-6304,-6345,-6452,-6530,-6598,-6678,-6810,-6921,-7022,-7095,-7213,-7313,-7406,-7483,-7598,-7680,-7759,
+-7867,-7941,-8005,-8109,-8219,-8287,-8376,-8468,-8577,-8645,-8712,-8811,-8869,-8930,-9043,-9097,-9170,-9234,-9301,-9365,
+-9430,-9480,-9551,-9602,-9643,-9679,-9708,-9727,-9757,-9751,-9672,-9601,-9693,-9724,-9915,-9983,-10010,-10037,-10061,-10087,
+-10126,-10169,-10196,-10206,-10226,-10249,-10256,-10270,-10287,-10312,-10365,-10506,-10605,-10664,-10667,-10597,-10535,-10532,-10524,-10477,
+-10409,-10333,-10272,-10227,-10194,-10179,-10169,-10147,-10109,-10050,-9981,-9899,-9808,-9715,-9626,-9530,-9415,-9297,-9167,-9034,
+-8927,-8840,-8731,-8586,-8413,-8264,-8114,-7965,-7821,-7661,-7494,-7333,-7180,-7025,-6874,-6695,-6508,-6323,-6146,-6006,
+-5869,-5755,-5671,-5556,-5463,-5416,-5393,-5400,-5430,-5443,-5378,-5121,-4984,-5059,-5107,-5044,-5009,-4767,-4367,-3942,
+-3586,-3370,-3208,-3151,-3147,-3098,-3006,-2865,-2712,-2542,-2397,-2271,-2162,-2039,-1918,-1803,-1684,-1575,-1474,-1376,
+-1279,-1171,-1047,-915,-800,-655,-550,-591,-523,-419,-352,-276,-203,-149,-113,-68,-21,46,131,220,
+321,437,561,679,781,858,942,1032,1146,1294,1441,1514,1611,1699,1764,1840,1925,2016,2130,2254,
+2362,2444,2511,2588,2687,2809,2951,3074,3171,3223,3209,3231,3309,3457,3618,3801,3978,4136,4237,4287,
+4330,4419,4570,4795,4938,5127,5208,5275,5302,5276,5281,5323,5457,5646,5748,5850,5935,6007,6114,6251,
+6343,6465,6491,6442,6325,6290,6333,6424,6445,6484,6522,6569,6611,6617,6595,6499,6348,6206,6175,6262,
+6498,6602,6353,6136,6029,5618,5014,4664,4560,4694,5124,5711,6148,6442,6633,6760,6848,6898,6914,6907,
+6890,6866,6843,6838,6873,6819,6789,6816,6952,6940,6946,6969,6914,6849,6804,6853,6762,6725,6697,6713,
+6745,6760,6763,6771,6765,6742,6715,6694,6678,6673,6637,6606,6586,6577,6564,6552,6537,6516,6548,6522,
+6508,6502,6493,6484,6483,6483,6484,6501,6525,6525,6485,6450,6427,6390,6352,6322,6321,6309,6273,6248,
+6225,6171,6159,6216,6174,6129,6100,6092,6068,6068,6090,6053,6052,6000,5923,6019,5991,5790,5666,5582,
+5522,5452,5413,5393,5367,5340,5331,5324,5297,5254,5255,5311,5414,5613,5625,5415,5236,5150,5124,5102,
+5113,5108,5086,5062,5051,5066,5073,5076,5057,5003,4936,4914,4877,4841,4788,4685,4573,4490,4424,4333,
+4250,4229,4228,4211,4154,4082,4015,3978,3957,3960,4009,3978,3797,3684,3623,3570,3522,3461,3395,3338,
+3302,3278,3248,3199,3130,3046,2997,2976,2966,2988,3035,3091,3002,2841,2790,2846,2881,2834,2791,2745,
+2708,2681,2629,2556,2499,2488,2495,2534,2685,2617,2460,2389,2367,2357,2329,2292,2279,2255,2212,2159,
+2109,2036,2003,2251,2102,1889,1827,1848,1880,1895,1888,1863,1828,1763,1719,1680,1653,1640,1611,1589,
+1583,1622,1668,1612,1605,1609,1603,1594,1601,1605,1606,1585,1571,1555,1537,1524,1496,1467,1428,1392,
+1343,1303,1286,1272,1372,1370,1290,1238,1220,1234,1255,1264,1262,1269,1237,1229,1216,1211,1197,1204,
+1216,1220,1224,1241,1246,1273,1297,1311,1327,1322,1311,1330,1336,1356,1396,1433,1451,1461,1452,1454,
+1473,1491,1522,1535,1550,1559,1562,1550,1537,1555,1587,1633,1695,1680,1739,1694,1600,1587,1563,1563,
+1603,1645,1659,1650,1646,1637,1612,1560,1512,1487,1490,1503,1480,1460,1440,1425,1399,1381,1369,1347,
+1322,1294,1270,1254,1233,1209,1179,1147,1113,1083,1062,1035,1004,966,924,886,847,824,802,779,
+753,728,747,712,676,649,624,590,555,528,495,455,414,382,355,326,304,279,260,231,
+199,158,114,75,44,11,-24,-65,-104,-136,-171,-204,-244,-288,-330,-373,-418,-460,-505,-555,
+-598,-634,-673,-718,-759,-797,-832,-875,-916,-958,-1005,-1045,-1092,-1141,-1184,-1224,-1268,-1310,-1353,-1393,
+-1431,-1470,-1507,-1545,-1583,-1617,-1645,-1678,-1715,-1749,-1787,-1816,-1849,-1877,-1894,-1929,-1968,-2015,-2050,-2058,
+-2089,-2146,-2170,-2189,-2240,-2281,-2305,-2331,-2362,-2381,-2432,-2464,-2488,-2517,-2547,-2581,-2618,-2649,-2682,-2701,
+-2724,-2751,-2782,-2812,-2840,-2869,-2893,-2914,-2943,-2966,-2991,-3014,-3034,-3043,-3050,-3055,-3059,-3063,-3077,-3088,
+-3102,-3117,-3115,-3118,-3123,-3126,-3143,-3142,-3147,-3145,-3143,-3142,-3136,-3128,-3123,-3119,-3108,-3092,-3083,-3070,
+-3053,-3031,-3012,-2994,-2973,-2956,-2942,-2923,-2901,-2878,-2855,-2837,-2814,-2789,-2760,-2728,-2693,-2658,-2625,-2597,
+-2560,-2527,-2495,-2463,-2431,-2403,-2380,-2349,-2314,-2283,-2256,-2228,-2196,-2162,-2129,-2096,-2062,-2028,-1991,-1958,
+-1920,-1884,-1844,-1800,-1759,-1726,-1694,-1657,-1623,-1585,-1555,-1517,-1477,-1445,-1405,-1369,-1337,-1301,-1264,-1235,
+-1204,-1177,-1145,-1117,-1084,-1050,-1021,-993,-972,-945,-911,-881,-852,-825,-803,-773,-748,-715,-689,-660,
+-635,-605,-576,-553,-527,-499,-475,-451,-426,-401,-375,-348,-323,-297,-271,-240,-202,-169,-136,-102,
+-60,-6,13,48,97,164,160,215,283,328,381,485,458,507,561,598,620,654,656,668,
+702,714,757,797,844,897,934,956,996,1043,1089,1201,1277,1231,1200,1216,1251,1265,1316,1357,
+1331,1376,1409,1422,1414,1387,1333,1259,1316,1577,1713,1649,1650,1894,2263,2674,2589,2416,2349,1938,
+1586,1528,1644,1875,2163,2210,2173,2121,1872,1257,722,372,141,-9,-92,-120,-124,-161,-195,-225,
+-282,-360,-446,-536,-619,-687,-726,-744,-722,-715,-652,-617,-665,-704,-842,-939,-887,-821,-666,-851,
+-993,-1062,-1099,-1153,-1314,-1512,-1632,-1611,-1490,-1354,-1256,-1212,-1241,-1283,-1388,-1512,-1698,-1805,-1912,-2043,
+-2238,-2355,-2402,-2471,-2549,-2586,-2598,-2610,-2638,-2688,-2741,-2781,-2844,-2981,-3160,-3292,-3372,-3380,-3361,-3328,
+-3294,-3265,-3254,-3253,-3252,-3267,-3314,-3378,-3385,-3378,-3338,-3326,-3290,-3264,-3266,-3341,-3487,-3646,-3735,-3766,
+-3771,-3747,-3705,-3673,-3658,-3650,-3645,-3641,-3627,-3601,-3564,-3515,-3466,-3426,-3392,-3358,-3320,-3282,-3236,-3184,
+-3100,-3018,-2952,-2894,-2827,-2775,-2729,-2667,-2609,-2535,-2450,-2384,-2324,-2260,-2190,-2130,-2061,-1991,-1921,-1847,
+-1781,-1714,-1642,-1595,-1529,-1447,-1359,-1280,-1198,-1124,-1061,-985,-914,-828,-752,-670,-602,-520,-455,-382,
+-316,-249,-160,-62,10,96,168,218,265,315,361,367,405,466,501,542,583,620,658,684,
+719,756,798,820,855,874,895,911,930,937,960,1040,1034,1023,1056,1084,1113,1146,1214,1239,
+1257,1296,1332,1368,1395,1427,1460,1494,1521,1541,1573,1609,1631,1663,1696,1735,1780,1795,1808,1816,
+1819,1808,1766,1743,1738,1745,1767,1778,1800,1812,1827,1855,1878,1893,1913,1938,1965,1989,2016,2042,
+2063,2078,2086,2092,2101,2117,2152,2182,2212,2254,2301,2334,2365,2391,2425,2487,2605,2731,2855,2967,
+3009,3021,3005,2996,3011,3036,3049,3045,3018,2972,2923,2904,2880,2855,2849,2840,2823,2785,2743,2706,
+2676,2649,2620,2619,2639,2664,2660,2642,2610,2586,2594,2621,2623,2590,2566,2524,2488,2425,2370,2345,
+2202,2109,2080,2068,2041,1985,1902,1824,1755,1691,1640,1609,1611,1644,1690,1747,1828,1906,1978,2058,
+2087,2047,1972,1894,1841,1817,1812,1838,1890,1934,1970,2007,2070,2101,2101,2109,2121,2081,2048,2077,
+2080,2134,2092,1983,1868,1767,1689,1639,1586,1537,1504,1465,1423,1381,1339,1292,1250,1205,1148,1077,
+986,901,853,781,716,652,594,562,532,447,329,169,11,-122,-241,-351,-443,-511,-569,-625,
+-659,-680,-678,-694,-663,-684,-708,-704,-686,-657,-674,-707,-750,-797,-783,-762,-788,-800,-809,-871,
+-936,-1023,-1099,-1138,-1166,-1214,-1241,-1249,-1230,-1215,-1198,-1165,-1118,-1063,-1036,-1052,-1099,-1134,-1138,-1131,
+-1096,-1070,-1052,-1074,-1117,-1166,-1204,-1247,-1279,-1303,-1342,-1357,-1378,-1381,-1395,-1397,-1391,-1375,-1343,-1322,
+-1340,-1365,-1411,-1495,-1555,-1509,-1360,-1354,-1514,-1435,-1416,-1459,-1394,-1437,-1534,-1596,-1667,-1748,-1778,-1816,
+-1899,-1997,-2071,-2130,-2320,-2515,-2578,-2703,-2799,-2847,-2858,-2872,-2905,-2943,-2982,-3049,-3129,-3171,-3226,-3275,
+-3305,-3333,-3389,-3470,-3535,-3624,-3703,-3767,-3820,-3875,-3946,-4014,-4062,-4115,-4230,-4364,-4562,-4723,-4776,-4818,
+-4921,-5029,-5120,-5199,-5270,-5322,-5344,-5369,-5376,-5398,-5417,-5446,-5481,-5508,-5458,-5344,-5352,-5352,-5365,-5345,
+-5339,-5370,-5393,-5426,-5478,-5522,-5563,-5590,-5642,-5632,-5637,-5656,-5709,-5756,-5814,-5884,-5922,-5970,-6029,-6084,
+-6141,-6176,-6254,-6306,-6362,-6403,-6493,-6576,-6647,-6701,-6808,-6910,-7004,-7111,-7197,-7311,-7392,-7487,-7575,-7651,
+-7745,-7854,-7916,-8002,-8119,-8180,-8257,-8346,-8469,-8562,-8629,-8708,-8789,-8855,-8949,-9015,-9083,-9172,-9211,-9279,
+-9365,-9441,-9488,-9549,-9601,-9639,-9678,-9709,-9741,-9742,-9769,-9712,-9599,-9660,-9730,-9888,-9979,-10011,-10036,-10059,
+-10089,-10123,-10170,-10192,-10205,-10244,-10277,-10282,-10303,-10317,-10332,-10366,-10476,-10596,-10641,-10646,-10614,-10583,-10564,-10556,
+-10547,-10515,-10463,-10410,-10365,-10321,-10275,-10236,-10198,-10150,-10076,-9997,-9906,-9804,-9697,-9601,-9503,-9386,-9263,-9149,
+-9028,-8927,-8844,-8728,-8569,-8393,-8256,-8116,-7977,-7835,-7675,-7505,-7343,-7184,-7023,-6855,-6670,-6490,-6316,-6157,
+-6017,-5872,-5749,-5620,-5493,-5412,-5361,-5320,-5317,-5335,-5356,-5308,-5045,-4864,-4890,-5000,-4987,-4985,-4843,-4476,
+-3985,-3534,-3218,-3059,-3014,-2933,-2888,-2822,-2720,-2617,-2489,-2359,-2254,-2141,-2031,-1899,-1770,-1652,-1541,-1440,
+-1348,-1251,-1146,-1024,-849,-731,-543,-528,-510,-443,-325,-258,-198,-120,-55,-8,29,75,133,210,
+295,383,486,598,722,835,916,1001,1098,1204,1342,1485,1573,1672,1771,1838,1903,1982,2071,2161,
+2276,2403,2509,2585,2680,2784,2893,3015,3119,3221,3297,3357,3384,3454,3581,3730,3910,4059,4172,4261,
+4322,4383,4475,4645,4797,4905,5048,5145,5243,5305,5313,5378,5465,5600,5750,5854,5884,5951,6055,6178,
+6299,6408,6443,6323,6260,6249,6275,6323,6402,6487,6504,6528,6577,6624,6657,6649,6585,6438,6266,6135,
+6200,6392,6607,6501,6230,6000,5628,5266,4938,4763,4794,5069,5530,6010,6358,6604,6759,6854,6908,6931,
+6937,6930,6912,6899,6921,6876,6877,6839,6876,7037,7000,6971,7034,6979,6923,6877,6866,6828,6801,6793,
+6785,6799,6800,6793,6801,6798,6778,6754,6747,6712,6673,6647,6603,6600,6585,6581,6595,6609,6588,6556,
+6542,6529,6520,6517,6516,6516,6513,6515,6539,6553,6544,6518,6481,6458,6427,6393,6361,6331,6309,6292,
+6286,6252,6216,6165,6196,6199,6160,6130,6120,6115,6097,6095,6093,6055,5998,5933,5900,5869,5784,5553,
+5531,5528,5460,5428,5407,5387,5364,5344,5326,5305,5287,5278,5290,5350,5487,5545,5412,5271,5150,5119,
+5134,5149,5139,5125,5110,5108,5097,5081,5058,5055,5022,4944,4953,4915,4843,4802,4697,4581,4519,4472,
+4403,4309,4252,4243,4247,4198,4109,4043,4024,4020,4047,4150,4200,3898,3732,3654,3596,3547,3491,3434,
+3393,3361,3339,3307,3254,3167,3072,3030,3018,3004,3016,3106,3014,2938,2861,2820,2822,2832,2803,2799,
+2762,2755,2817,2727,2601,2535,2497,2483,2486,2573,2560,2422,2372,2348,2328,2314,2298,2301,2281,2241,
+2185,2128,2055,1982,2218,2133,1927,1848,1844,1857,1867,1867,1855,1813,1754,1706,1683,1647,1642,1612,
+1609,1600,1635,1640,1629,1616,1612,1607,1591,1591,1598,1600,1591,1583,1573,1573,1553,1522,1496,1468,
+1431,1383,1335,1312,1302,1350,1435,1360,1299,1252,1262,1283,1295,1301,1291,1275,1264,1246,1230,1226,
+1228,1224,1226,1226,1245,1247,1269,1333,1315,1334,1332,1320,1323,1325,1343,1381,1422,1448,1461,1455,
+1456,1461,1481,1499,1531,1569,1596,1601,1581,1562,1584,1656,1651,1617,1694,1632,1662,1686,1607,1570,
+1585,1608,1646,1648,1649,1642,1623,1595,1578,1584,1543,1522,1505,1503,1508,1526,1483,1444,1420,1409,
+1389,1366,1330,1303,1276,1254,1230,1206,1179,1146,1113,1085,1059,1029,997,963,932,894,864,839,
+820,801,776,789,750,707,677,644,608,585,560,529,494,456,433,390,362,339,308,281,
+256,228,189,142,100,63,31,0,-41,-79,-118,-151,-191,-236,-277,-319,-356,-382,-401,-439,
+-471,-501,-544,-594,-647,-694,-745,-790,-837,-875,-923,-966,-1008,-1052,-1103,-1147,-1190,-1230,-1272,-1315,
+-1351,-1390,-1428,-1469,-1507,-1544,-1580,-1612,-1645,-1678,-1710,-1742,-1773,-1812,-1850,-1870,-1903,-1935,-1975,-2008,
+-2039,-2078,-2112,-2144,-2177,-2211,-2239,-2259,-2287,-2319,-2347,-2383,-2417,-2444,-2477,-2510,-2544,-2575,-2608,-2636,
+-2664,-2689,-2718,-2752,-2774,-2801,-2823,-2844,-2867,-2890,-2914,-2939,-2957,-2977,-2995,-3003,-3012,-3016,-3016,-3022,
+-3040,-3051,-3061,-3082,-3094,-3083,-3091,-3105,-3108,-3110,-3111,-3113,-3110,-3108,-3104,-3103,-3096,-3083,-3070,-3053,
+-3035,-3020,-3000,-2980,-2963,-2944,-2931,-2913,-2888,-2867,-2841,-2820,-2805,-2786,-2757,-2729,-2703,-2673,-2637,-2607,
+-2573,-2538,-2509,-2480,-2449,-2418,-2392,-2364,-2331,-2300,-2273,-2243,-2214,-2181,-2150,-2119,-2083,-2050,-2016,-1980,
+-1941,-1904,-1866,-1831,-1798,-1759,-1725,-1692,-1661,-1628,-1588,-1560,-1526,-1487,-1452,-1416,-1378,-1343,-1310,-1275,
+-1244,-1217,-1185,-1152,-1126,-1096,-1069,-1043,-995,-978,-948,-918,-897,-873,-844,-813,-791,-762,-732,-703,
+-672,-643,-619,-593,-568,-541,-517,-495,-468,-445,-423,-397,-373,-349,-321,-288,-257,-220,-179,-159,
+-123,-66,-33,3,28,62,101,152,201,239,291,365,405,451,500,538,573,601,647,614,
+626,655,704,745,773,825,877,916,942,995,1017,1075,1069,1088,1174,1122,1183,1330,1303,1293,
+1326,1373,1401,1431,1450,1449,1421,1328,1246,1299,1468,1571,1560,1642,1940,2337,2621,2525,2515,2501,
+2020,1671,1671,1844,2178,2233,2177,2047,1842,1419,923,603,349,172,53,-15,-44,-54,-83,-117,
+-158,-225,-309,-393,-473,-546,-608,-645,-656,-635,-587,-517,-455,-517,-705,-836,-937,-959,-894,-756,
+-827,-924,-954,-979,-1056,-1208,-1399,-1530,-1528,-1451,-1344,-1191,-1166,-1229,-1276,-1359,-1450,-1561,-1721,-1820,
+-1971,-2140,-2233,-2285,-2388,-2491,-2539,-2555,-2554,-2576,-2634,-2706,-2754,-2821,-2954,-3123,-3276,-3388,-3420,-3408,
+-3374,-3342,-3324,-3314,-3296,-3279,-3281,-3321,-3379,-3440,-3468,-3421,-3406,-3371,-3338,-3319,-3332,-3387,-3503,-3674,
+-3755,-3752,-3702,-3644,-3602,-3579,-3568,-3573,-3568,-3544,-3519,-3498,-3458,-3418,-3386,-3351,-3312,-3274,-3233,-3191,
+-3148,-3091,-3005,-2924,-2853,-2803,-2748,-2704,-2651,-2589,-2524,-2461,-2386,-2309,-2240,-2176,-2119,-2058,-1987,-1920,
+-1851,-1777,-1711,-1646,-1575,-1521,-1445,-1363,-1294,-1221,-1129,-1054,-972,-890,-811,-745,-676,-618,-537,-452,
+-360,-290,-218,-148,-85,-5,80,155,233,259,324,345,372,412,476,521,568,602,630,660,
+685,710,744,777,807,839,869,872,888,900,921,941,973,1004,1035,1058,1096,1122,1156,1182,
+1217,1252,1288,1318,1347,1374,1413,1445,1477,1504,1525,1540,1582,1611,1652,1695,1730,1756,1769,1756,
+1729,1717,1747,1743,1755,1751,1741,1765,1772,1781,1785,1800,1827,1849,1863,1882,1910,1940,1967,1994,
+2017,2034,2046,2055,2059,2061,2086,2121,2156,2187,2221,2263,2289,2314,2335,2348,2385,2466,2588,2692,
+2822,2908,2980,2996,2996,3007,3019,3022,3017,2977,2932,2912,2897,2851,2825,2809,2806,2782,2760,2719,
+2661,2603,2543,2501,2482,2525,2554,2568,2569,2561,2552,2555,2570,2550,2507,2450,2388,2340,2274,2254,
+2202,2019,1967,1965,1974,1950,1910,1859,1793,1723,1661,1615,1596,1604,1644,1685,1741,1819,1898,1981,
+2069,2126,2102,2042,1970,1908,1873,1850,1857,1888,1927,1958,1984,2005,2020,2038,2033,2084,2121,2036,
+2075,1997,1962,1969,1902,1810,1726,1658,1614,1571,1525,1497,1471,1427,1409,1364,1318,1261,1192,1139,
+1068,987,904,811,722,655,603,562,517,489,411,278,111,-66,-209,-322,-408,-486,-555,-625,
+-692,-738,-742,-737,-722,-729,-758,-739,-727,-701,-693,-712,-755,-809,-856,-855,-847,-857,-867,-895,
+-943,-988,-1042,-1076,-1112,-1145,-1186,-1213,-1228,-1239,-1242,-1233,-1206,-1159,-1110,-1084,-1089,-1115,-1133,-1136,
+-1133,-1107,-1093,-1095,-1128,-1179,-1236,-1282,-1309,-1318,-1321,-1322,-1325,-1340,-1338,-1335,-1335,-1332,-1343,-1343,
+-1345,-1369,-1403,-1448,-1536,-1585,-1529,-1432,-1478,-1542,-1453,-1463,-1530,-1457,-1481,-1555,-1614,-1741,-1841,-1863,
+-1862,-1913,-1977,-2039,-2127,-2302,-2524,-2650,-2760,-2863,-2910,-2939,-2952,-2965,-2992,-3029,-3061,-3120,-3181,-3252,
+-3315,-3312,-3383,-3460,-3520,-3594,-3685,-3764,-3818,-3861,-3904,-3964,-4018,-4060,-4168,-4278,-4425,-4610,-4726,-4748,
+-4790,-4871,-4968,-5097,-5185,-5247,-5321,-5357,-5382,-5394,-5411,-5428,-5443,-5462,-5428,-5261,-5291,-5337,-5357,-5356,
+-5337,-5364,-5396,-5411,-5438,-5482,-5528,-5550,-5598,-5616,-5628,-5641,-5652,-5706,-5764,-5836,-5896,-5934,-6004,-6058,
+-6117,-6171,-6210,-6279,-6348,-6396,-6432,-6488,-6556,-6624,-6725,-6785,-6894,-6997,-7093,-7191,-7283,-7413,-7473,-7557,
+-7664,-7731,-7844,-7898,-8008,-8083,-8162,-8236,-8360,-8452,-8530,-8610,-8675,-8749,-8835,-8918,-8998,-9065,-9136,-9199,
+-9292,-9393,-9466,-9502,-9553,-9603,-9639,-9676,-9713,-9745,-9760,-9767,-9703,-9609,-9655,-9769,-9910,-9970,-10009,-10035,
+-10059,-10087,-10124,-10175,-10208,-10207,-10264,-10301,-10318,-10335,-10328,-10349,-10373,-10455,-10579,-10645,-10670,-10651,-10619,-10594,
+-10577,-10568,-10549,-10516,-10476,-10435,-10404,-10361,-10316,-10259,-10189,-10099,-10010,-9915,-9805,-9691,-9573,-9461,-9359,-9235,
+-9122,-9021,-8913,-8798,-8708,-8549,-8385,-8257,-8125,-7983,-7837,-7685,-7517,-7344,-7178,-7024,-6854,-6674,-6510,-6351,
+-6195,-6053,-5908,-5740,-5578,-5429,-5339,-5298,-5252,-5243,-5255,-5283,-5264,-5027,-4753,-4730,-4841,-4924,-4948,-4880,
+-4594,-4104,-3622,-3213,-2906,-2788,-2574,-2551,-2572,-2530,-2500,-2424,-2308,-2211,-2114,-2016,-1903,-1752,-1621,-1503,
+-1402,-1296,-1196,-1081,-981,-832,-693,-531,-527,-464,-368,-274,-189,-118,-43,24,74,130,175,232,
+295,372,449,540,640,766,885,983,1068,1158,1285,1416,1561,1662,1750,1824,1898,1971,2051,2127,
+2206,2309,2430,2534,2629,2729,2835,2943,3054,3151,3253,3346,3432,3518,3609,3725,3860,3974,4083,4180,
+4286,4377,4479,4578,4699,4816,4937,5066,5183,5312,5405,5504,5590,5658,5722,5826,5926,5978,6107,6180,
+6229,6278,6243,6174,6170,6190,6232,6286,6330,6376,6462,6539,6563,6593,6643,6670,6672,6648,6576,6459,
+6319,6293,6454,6706,6700,6400,6074,5737,5553,5326,5125,5090,5233,5445,5879,6283,6555,6739,6856,6928,
+6969,6999,7009,6988,6971,6975,6926,6946,6896,6996,7009,7043,7099,7110,7022,6985,6956,6921,6887,6860,
+6850,6852,6832,6814,6825,6849,6834,6802,6760,6729,6745,6721,6703,6681,6681,6694,6662,6648,6633,6611,
+6589,6573,6559,6550,6545,6547,6546,6543,6561,6576,6584,6566,6542,6506,6478,6452,6408,6375,6347,6334,
+6323,6302,6276,6254,6201,6201,6220,6199,6172,6145,6125,6090,6060,6090,6120,6034,5954,5904,5866,5726,
+5554,5472,5488,5478,5434,5401,5386,5362,5347,5334,5316,5305,5292,5275,5279,5345,5429,5354,5261,5178,
+5159,5207,5181,5178,5171,5147,5133,5113,5108,5102,5068,5026,4962,4924,4882,4854,4782,4683,4589,4567,
+4552,4501,4426,4354,4310,4302,4233,4129,4054,4046,4054,4074,4098,4061,3903,3769,3684,3626,3577,3523,
+3478,3444,3414,3390,3356,3295,3204,3117,3077,3063,3042,3033,3025,2985,2931,2895,2874,2846,2829,2829,
+2883,2789,2771,2796,2741,2644,2577,2521,2494,2483,2520,2570,2475,2420,2368,2328,2319,2313,2309,2298,
+2268,2214,2152,2080,1994,2190,2170,1960,1862,1832,1842,1852,1845,1826,1795,1770,1731,1690,1661,1656,
+1632,1632,1632,1642,1629,1629,1617,1615,1596,1583,1583,1586,1590,1597,1598,1604,1601,1584,1569,1532,
+1499,1459,1416,1387,1344,1328,1329,1346,1339,1314,1289,1290,1305,1315,1328,1325,1314,1297,1273,1257,
+1243,1243,1236,1232,1240,1257,1267,1279,1336,1329,1339,1348,1332,1318,1322,1335,1371,1408,1442,1460,
+1458,1450,1461,1478,1499,1526,1580,1622,1621,1595,1568,1566,1575,1567,1559,1562,1586,1646,1713,1670,
+1615,1643,1634,1635,1652,1677,1673,1667,1642,1610,1582,1559,1555,1555,1530,1518,1512,1496,1477,1447,
+1443,1432,1404,1375,1344,1306,1272,1244,1219,1196,1166,1136,1108,1079,1051,1022,993,967,940,910,
+883,867,850,827,799,768,737,703,669,635,607,585,552,532,494,470,422,387,356,337,
+312,282,256,214,169,122,84,45,13,-27,-60,-91,-122,-168,-202,-222,-255,-284,-305,-335,
+-378,-419,-457,-498,-545,-594,-643,-696,-742,-791,-836,-883,-929,-973,-1020,-1066,-1113,-1159,-1202,-1239,
+-1277,-1316,-1355,-1391,-1430,-1471,-1507,-1540,-1569,-1596,-1630,-1665,-1691,-1726,-1766,-1797,-1827,-1860,-1894,-1925,
+-1958,-1993,-2024,-2055,-2092,-2128,-2164,-2200,-2219,-2250,-2279,-2300,-2335,-2370,-2398,-2427,-2470,-2503,-2533,-2563,
+-2591,-2614,-2643,-2678,-2704,-2729,-2752,-2778,-2805,-2828,-2845,-2874,-2893,-2908,-2927,-2936,-2947,-2953,-2962,-2974,
+-2999,-3011,-3021,-3023,-3022,-3034,-3071,-3067,-3075,-3079,-3079,-3078,-3077,-3080,-3074,-3067,-3061,-3053,-3045,-3035,
+-3026,-3016,-2995,-2973,-2959,-2941,-2923,-2901,-2878,-2856,-2835,-2808,-2784,-2768,-2751,-2721,-2694,-2669,-2643,-2616,
+-2584,-2554,-2519,-2489,-2458,-2435,-2406,-2385,-2354,-2322,-2289,-2263,-2234,-2204,-2171,-2139,-2108,-2074,-2042,-2010,
+-1972,-1932,-1896,-1858,-1827,-1794,-1760,-1723,-1694,-1664,-1634,-1596,-1566,-1525,-1491,-1455,-1423,-1390,-1357,-1321,
+-1285,-1255,-1226,-1194,-1164,-1138,-1110,-1079,-1047,-1019,-992,-966,-943,-917,-892,-864,-832,-802,-773,-742,
+-714,-688,-664,-634,-607,-584,-557,-533,-507,-486,-464,-445,-423,-392,-357,-327,-309,-254,-221,-198,
+-170,-133,-84,-60,-20,25,59,91,120,165,268,335,321,383,447,490,525,548,566,601,
+549,634,629,678,708,751,791,840,889,913,972,986,1079,1110,1158,1229,1173,1194,1292,1343,
+1326,1369,1393,1413,1431,1437,1434,1384,1273,1211,1245,1339,1430,1487,1677,2158,2727,2661,2546,2648,
+2563,2095,1736,1838,2076,2193,2229,2075,1830,1476,1090,772,560,370,236,143,79,44,22,-4,
+-36,-91,-167,-251,-328,-403,-469,-526,-563,-570,-550,-463,-307,-269,-388,-678,-865,-932,-971,-968,
+-888,-858,-860,-780,-871,-952,-1066,-1232,-1351,-1396,-1368,-1337,-1268,-1233,-1271,-1311,-1386,-1422,-1512,-1656,
+-1758,-1945,-2109,-2182,-2226,-2344,-2454,-2518,-2524,-2506,-2530,-2596,-2670,-2734,-2815,-2939,-3100,-3243,-3363,-3416,
+-3415,-3392,-3359,-3356,-3358,-3340,-3332,-3333,-3357,-3399,-3429,-3459,-3448,-3433,-3422,-3403,-3385,-3368,-3361,-3395,
+-3504,-3665,-3687,-3633,-3564,-3509,-3477,-3466,-3473,-3475,-3451,-3430,-3412,-3391,-3367,-3349,-3320,-3282,-3239,-3194,
+-3148,-3110,-3064,-3020,-2951,-2844,-2771,-2720,-2681,-2636,-2580,-2509,-2440,-2374,-2309,-2243,-2180,-2115,-2050,-1985,
+-1904,-1838,-1761,-1693,-1630,-1564,-1515,-1449,-1363,-1283,-1205,-1119,-1055,-980,-896,-814,-740,-675,-590,-511,
+-438,-370,-306,-247,-189,-118,-32,56,154,245,247,350,358,360,400,444,494,549,581,610,
+646,673,694,718,755,798,823,840,852,882,911,936,945,970,995,1026,1064,1090,1117,1154,
+1185,1221,1266,1297,1318,1343,1365,1399,1430,1442,1475,1491,1510,1548,1583,1641,1676,1709,1730,1732,
+1716,1656,1679,1690,1718,1724,1723,1712,1732,1752,1769,1777,1784,1800,1812,1836,1858,1883,1916,1944,
+1972,1994,2009,2016,2023,2028,2036,2056,2097,2128,2153,2190,2228,2252,2276,2293,2301,2325,2384,2465,
+2559,2688,2810,2927,2981,2991,2999,3005,2987,2960,2918,2891,2901,2887,2834,2787,2758,2743,2741,2717,
+2625,2576,2494,2416,2395,2378,2405,2433,2463,2483,2480,2488,2499,2496,2425,2341,2260,2190,2181,2208,
+2125,2019,1912,1902,1914,1913,1895,1863,1812,1751,1686,1628,1590,1575,1584,1622,1659,1712,1790,1884,
+1981,2064,2127,2137,2106,2043,1976,1927,1902,1894,1903,1923,1951,1970,1960,1930,1935,1942,1978,2021,
+1935,1903,1839,1817,1800,1816,1746,1657,1613,1601,1559,1527,1504,1444,1421,1420,1384,1325,1256,1189,
+1136,1064,979,899,820,725,621,558,519,477,448,369,227,45,-161,-300,-372,-437,-519,-588,
+-672,-759,-794,-788,-755,-761,-816,-812,-753,-711,-707,-754,-785,-834,-885,-926,-937,-938,-933,-937,
+-957,-989,-1022,-1047,-1071,-1097,-1130,-1157,-1187,-1212,-1243,-1269,-1276,-1251,-1206,-1157,-1125,-1119,-1121,-1114,
+-1105,-1112,-1104,-1102,-1130,-1160,-1227,-1294,-1325,-1328,-1333,-1342,-1316,-1262,-1267,-1261,-1254,-1249,-1263,-1300,
+-1321,-1337,-1372,-1361,-1428,-1570,-1636,-1592,-1519,-1582,-1587,-1506,-1538,-1578,-1524,-1513,-1572,-1640,-1763,-1885,
+-1941,-1942,-1967,-2022,-2133,-2209,-2327,-2527,-2692,-2810,-2910,-2960,-2985,-2990,-2997,-3013,-3030,-3044,-3078,-3157,
+-3245,-3342,-3363,-3435,-3497,-3551,-3628,-3725,-3807,-3852,-3886,-3917,-3956,-4014,-4094,-4208,-4331,-4509,-4667,-4745,
+-4772,-4791,-4828,-4896,-5049,-5160,-5197,-5306,-5366,-5399,-5413,-5425,-5433,-5427,-5388,-5236,-5216,-5307,-5349,-5355,
+-5336,-5330,-5364,-5398,-5419,-5431,-5458,-5493,-5500,-5573,-5599,-5628,-5681,-5710,-5754,-5801,-5853,-5910,-5961,-6009,
+-6065,-6128,-6195,-6241,-6307,-6376,-6410,-6458,-6533,-6580,-6649,-6758,-6786,-6887,-6978,-7081,-7198,-7280,-7366,-7437,
+-7539,-7665,-7741,-7798,-7913,-7982,-8048,-8125,-8254,-8342,-8421,-8507,-8576,-8657,-8740,-8806,-8891,-8953,-9030,-9125,
+-9192,-9286,-9422,-9472,-9504,-9560,-9607,-9646,-9682,-9719,-9750,-9739,-9750,-9681,-9600,-9646,-9721,-9900,-9965,-10008,
+-10040,-10059,-10088,-10133,-10183,-10214,-10242,-10278,-10330,-10349,-10358,-10351,-10358,-10383,-10435,-10554,-10653,-10689,-10668,-10639,
+-10618,-10600,-10583,-10565,-10541,-10511,-10477,-10444,-10397,-10350,-10290,-10205,-10118,-10023,-9917,-9803,-9688,-9560,-9444,-9352,
+-9239,-9114,-9010,-8892,-8771,-8684,-8533,-8389,-8273,-8144,-7997,-7838,-7684,-7518,-7332,-7157,-7009,-6859,-6692,-6525,
+-6385,-6236,-6087,-5926,-5745,-5569,-5425,-5290,-5243,-5202,-5189,-5200,-5236,-5228,-5049,-4738,-4641,-4696,-4776,-4793,
+-4810,-4641,-4276,-3777,-3382,-3087,-2841,-2578,-2393,-2312,-2253,-2310,-2319,-2278,-2170,-2081,-1977,-1876,-1734,-1591,
+-1469,-1356,-1238,-1137,-1025,-927,-813,-644,-519,-478,-375,-263,-183,-92,-47,3,81,153,209,259,
+308,374,447,528,610,700,818,928,1024,1127,1226,1332,1494,1627,1732,1818,1892,1961,2040,2114,
+2191,2277,2375,2485,2582,2690,2791,2891,2995,3097,3193,3286,3383,3473,3572,3685,3802,3903,3981,4076,
+4193,4323,4456,4599,4752,4845,4893,4975,5095,5251,5402,5515,5632,5698,5738,5771,5895,5976,6065,6152,
+6201,6187,6139,6098,6113,6144,6189,6236,6290,6339,6384,6439,6509,6566,6620,6680,6710,6725,6707,6665,
+6608,6511,6510,6734,6996,6929,6587,6221,5950,5873,5682,5566,5521,5594,5592,5816,6215,6516,6704,6837,
+6927,7003,7044,7043,7032,7088,7009,6974,6948,6968,7128,7084,7140,7185,7116,7066,7055,7047,6953,6954,
+6920,6917,6906,6906,6840,6828,6830,6835,6815,6792,6768,6755,6735,6720,6693,6694,6706,6678,6664,6648,
+6632,6617,6600,6587,6576,6571,6575,6582,6587,6603,6617,6605,6580,6553,6519,6491,6463,6432,6391,6365,
+6353,6347,6336,6311,6292,6253,6215,6227,6209,6204,6181,6153,6127,6098,6083,6120,6062,5988,5936,5865,
+5675,5580,5620,5585,5522,5453,5399,5374,5349,5336,5331,5320,5312,5301,5281,5261,5295,5334,5325,5294,
+5255,5247,5272,5215,5201,5193,5157,5136,5137,5151,5163,5133,5075,4996,4961,4912,4859,4782,4680,4613,
+4613,4620,4598,4548,4479,4415,4360,4247,4129,4041,4037,4066,4079,4059,3992,3895,3801,3724,3664,3611,
+3558,3511,3475,3449,3428,3392,3329,3248,3173,3134,3110,3093,3069,3046,2998,2958,2993,3072,2930,2869,
+2855,2817,2791,2782,2772,2738,2676,2608,2542,2503,2499,2562,2757,2675,2564,2429,2355,2354,2340,2328,
+2317,2289,2235,2169,2091,2016,2229,2200,2056,1884,1834,1837,1846,1845,1830,1803,1780,1754,1713,1689,
+1690,1660,1653,1641,1646,1643,1643,1623,1616,1606,1590,1584,1589,1599,1603,1618,1633,1632,1625,1619,
+1588,1543,1499,1458,1415,1385,1356,1332,1321,1325,1325,1318,1319,1326,1327,1338,1341,1334,1318,1302,
+1282,1268,1262,1253,1248,1271,1282,1296,1305,1292,1329,1332,1331,1325,1317,1321,1334,1353,1397,1440,
+1458,1458,1452,1449,1471,1489,1528,1591,1620,1621,1608,1579,1562,1567,1581,1633,1566,1589,1707,1760,
+1800,1749,1692,1686,1654,1713,1665,1691,1697,1680,1658,1623,1587,1561,1550,1551,1540,1530,1515,1491,
+1483,1473,1446,1424,1400,1372,1345,1305,1271,1237,1213,1191,1163,1138,1104,1072,1043,1017,996,973,
+952,931,907,888,867,829,798,765,729,697,663,636,611,580,553,523,489,444,413,385,
+366,344,316,277,233,185,141,118,86,49,17,-4,-25,-52,-93,-121,-157,-202,-239,-269,
+-305,-346,-391,-432,-468,-508,-549,-595,-645,-691,-743,-792,-838,-882,-926,-979,-1027,-1073,-1121,-1169,
+-1210,-1242,-1278,-1320,-1356,-1396,-1433,-1468,-1499,-1527,-1554,-1586,-1619,-1650,-1688,-1728,-1757,-1791,-1826,-1857,
+-1889,-1919,-1950,-1976,-2013,-2044,-2083,-2123,-2159,-2187,-2214,-2240,-2268,-2303,-2337,-2368,-2397,-2434,-2468,-2493,
+-2519,-2543,-2576,-2604,-2632,-2653,-2675,-2699,-2732,-2751,-2773,-2806,-2829,-2851,-2866,-2884,-2898,-2910,-2926,-2942,
+-2963,-2982,-2997,-3007,-3007,-3007,-3009,-3017,-3029,-3039,-3042,-3043,-3040,-3039,-3038,-3032,-3016,-3004,-2997,-2990,
+-2985,-2979,-2971,-2958,-2947,-2935,-2918,-2893,-2868,-2845,-2822,-2797,-2775,-2756,-2737,-2714,-2686,-2664,-2639,-2613,
+-2585,-2557,-2529,-2501,-2472,-2443,-2416,-2388,-2364,-2335,-2307,-2279,-2254,-2223,-2191,-2158,-2129,-2098,-2066,-2034,
+-2000,-1968,-1934,-1896,-1857,-1822,-1787,-1760,-1725,-1697,-1664,-1637,-1601,-1571,-1535,-1497,-1463,-1431,-1395,-1363,
+-1329,-1297,-1266,-1238,-1210,-1179,-1148,-1111,-1080,-1053,-1028,-1008,-988,-960,-930,-894,-871,-841,-812,-781,
+-751,-726,-704,-680,-658,-629,-603,-580,-558,-536,-512,-492,-466,-425,-398,-373,-344,-316,-262,-224,
+-203,-172,-147,-115,-69,-42,0,62,94,110,136,173,226,279,369,434,492,495,516,525,
+547,541,583,632,658,686,738,773,817,874,905,961,994,952,992,1114,1123,1165,1263,1368,
+1427,1405,1392,1403,1420,1428,1408,1414,1342,1222,1165,1151,1212,1331,1455,1757,2431,2775,2644,2639,
+2830,2652,2096,1788,1917,2140,2271,2279,1988,1494,1167,929,710,553,425,321,242,187,146,116,
+78,34,-23,-102,-179,-256,-329,-387,-439,-480,-500,-480,-434,-343,-150,-290,-618,-836,-895,-929,
+-969,-975,-879,-806,-626,-740,-857,-914,-1052,-1186,-1272,-1299,-1325,-1312,-1292,-1314,-1345,-1376,-1467,-1557,
+-1672,-1777,-1936,-2070,-2132,-2242,-2343,-2444,-2503,-2498,-2482,-2495,-2549,-2640,-2745,-2842,-2979,-3106,-3221,-3312,
+-3375,-3389,-3385,-3386,-3365,-3384,-3395,-3394,-3393,-3417,-3426,-3427,-3424,-3416,-3421,-3438,-3432,-3418,-3412,-3401,
+-3374,-3410,-3507,-3560,-3514,-3449,-3386,-3354,-3337,-3341,-3355,-3340,-3319,-3311,-3314,-3311,-3308,-3286,-3250,-3201,
+-3154,-3106,-3062,-3021,-2989,-2944,-2825,-2743,-2698,-2663,-2626,-2564,-2489,-2420,-2354,-2296,-2228,-2172,-2104,-2030,
+-1966,-1894,-1839,-1775,-1700,-1630,-1567,-1504,-1443,-1355,-1275,-1204,-1133,-1072,-985,-908,-839,-747,-670,-591,
+-510,-456,-398,-315,-235,-185,-119,-45,47,147,216,237,339,340,361,398,437,492,541,584,
+594,618,636,676,720,752,777,804,822,839,861,898,927,944,977,1001,1042,1077,1109,1132,
+1152,1175,1220,1255,1279,1300,1323,1347,1368,1387,1411,1443,1464,1478,1510,1540,1581,1628,1669,1697,
+1698,1684,1635,1645,1664,1675,1681,1680,1688,1710,1727,1738,1747,1754,1766,1787,1808,1831,1859,1888,
+1919,1947,1971,1987,1992,1998,2002,2014,2037,2070,2102,2128,2162,2195,2220,2238,2254,2266,2284,2324,
+2385,2459,2558,2670,2824,2945,2996,2976,2963,2922,2887,2871,2864,2858,2832,2775,2716,2673,2618,2605,
+2543,2525,2490,2401,2347,2332,2350,2365,2375,2397,2466,2439,2380,2390,2350,2263,2194,2147,2134,2162,
+2098,1970,1912,1856,1858,1861,1864,1851,1818,1765,1704,1646,1595,1561,1538,1539,1568,1616,1677,1766,
+1864,1943,2019,2094,2140,2144,2092,2039,1994,1946,1921,1921,1924,1933,1934,1905,1855,1868,1909,1945,
+1935,1822,1745,1731,1757,1793,1754,1677,1599,1555,1540,1514,1497,1459,1416,1432,1407,1365,1293,1235,
+1181,1127,1058,972,888,814,714,616,523,477,437,399,340,189,-9,-221,-370,-449,-506,-567,
+-643,-712,-787,-831,-835,-838,-865,-890,-826,-750,-726,-768,-833,-858,-891,-940,-976,-996,-999,-997,
+-993,-1003,-1023,-1046,-1058,-1072,-1096,-1125,-1153,-1179,-1208,-1245,-1282,-1302,-1284,-1236,-1191,-1154,-1141,-1130,
+-1115,-1100,-1103,-1116,-1133,-1158,-1190,-1236,-1307,-1347,-1345,-1323,-1336,-1324,-1284,-1248,-1225,-1165,-1166,-1220,
+-1282,-1307,-1340,-1382,-1413,-1463,-1553,-1657,-1649,-1576,-1624,-1559,-1557,-1592,-1601,-1558,-1535,-1605,-1682,-1778,
+-1861,-1919,-1937,-1957,-2043,-2178,-2309,-2387,-2528,-2693,-2842,-2942,-2995,-3013,-3012,-3027,-3036,-3028,-3023,-3053,
+-3139,-3240,-3336,-3413,-3475,-3514,-3575,-3660,-3747,-3821,-3876,-3902,-3917,-3956,-4050,-4140,-4239,-4383,-4544,-4659,
+-4743,-4790,-4800,-4812,-4872,-5026,-5164,-5199,-5306,-5377,-5406,-5430,-5441,-5426,-5359,-5161,-5189,-5286,-5336,-5351,
+-5343,-5313,-5325,-5357,-5383,-5417,-5440,-5451,-5510,-5504,-5583,-5621,-5643,-5695,-5757,-5804,-5842,-5885,-5938,-5994,
+-6028,-6104,-6168,-6212,-6284,-6344,-6417,-6441,-6499,-6567,-6605,-6653,-6730,-6851,-6863,-6943,-7066,-7163,-7268,-7339,
+-7429,-7532,-7627,-7703,-7799,-7888,-7963,-8025,-8137,-8232,-8307,-8394,-8470,-8552,-8641,-8720,-8804,-8874,-8963,-9040,
+-9090,-9231,-9320,-9414,-9464,-9490,-9543,-9605,-9653,-9691,-9726,-9749,-9746,-9739,-9628,-9585,-9617,-9639,-9808,-9956,
+-10000,-10026,-10051,-10091,-10168,-10214,-10234,-10254,-10296,-10338,-10370,-10374,-10365,-10369,-10380,-10424,-10507,-10640,-10684,-10671,
+-10638,-10618,-10603,-10584,-10567,-10550,-10524,-10495,-10455,-10407,-10357,-10295,-10212,-10123,-10029,-9920,-9805,-9693,-9581,-9467,
+-9371,-9265,-9129,-9003,-8861,-8766,-8688,-8543,-8403,-8287,-8155,-8003,-7837,-7668,-7505,-7325,-7151,-6997,-6852,-6691,
+-6530,-6390,-6233,-6070,-5912,-5740,-5547,-5411,-5296,-5232,-5174,-5149,-5162,-5199,-5196,-5060,-4752,-4578,-4569,-4643,
+-4702,-4670,-4612,-4359,-3940,-3547,-3265,-2999,-2754,-2404,-2186,-2121,-2130,-2172,-2234,-2173,-2060,-1948,-1822,-1705,
+-1560,-1424,-1304,-1187,-1092,-999,-898,-782,-619,-446,-431,-322,-174,-125,-47,-12,53,123,199,264,
+307,370,448,514,601,683,766,868,977,1065,1180,1290,1410,1561,1673,1773,1857,1940,2026,2112,
+2186,2265,2355,2455,2552,2649,2754,2856,2955,3051,3150,3245,3338,3432,3519,3612,3724,3837,3927,4028,
+4140,4260,4373,4541,4710,4850,4957,4957,4971,5107,5301,5471,5539,5588,5663,5763,5782,5879,5957,6011,
+6081,6061,6000,6025,6052,6078,6126,6180,6228,6277,6332,6385,6439,6494,6562,6628,6687,6730,6762,6767,
+6750,6726,6675,6692,6902,7114,7127,6811,6404,6189,6203,5959,5831,5893,5970,5921,5916,6171,6466,6676,
+6823,6932,7012,7061,7075,7079,7098,7104,7035,7011,7046,7143,7186,7214,7212,7113,7154,7112,7084,6992,
+6989,6971,6957,6917,6937,6910,6872,6883,6862,6831,6795,6773,6755,6745,6745,6709,6720,6727,6716,6694,
+6670,6655,6638,6629,6617,6608,6609,6614,6627,6639,6651,6645,6621,6595,6573,6539,6508,6481,6452,6420,
+6391,6383,6382,6365,6339,6312,6282,6269,6232,6207,6220,6222,6211,6209,6220,6187,6108,6138,6008,5959,
+5841,5619,5606,5683,5664,5590,5502,5421,5372,5347,5336,5330,5315,5303,5305,5289,5282,5303,5322,5331,
+5323,5317,5307,5290,5265,5236,5193,5149,5138,5164,5206,5200,5149,5085,5010,4967,4913,4853,4808,4724,
+4667,4655,4653,4651,4625,4570,4493,4410,4295,4169,4088,4053,4077,4086,4066,4009,3925,3843,3778,3716,
+3659,3600,3555,3513,3488,3465,3421,3364,3297,3242,3201,3173,3149,3117,3086,3056,3010,3054,3140,3005,
+2912,2856,2831,2815,2804,2796,2764,2711,2645,2578,2523,2516,2579,2794,2782,2661,2489,2389,2370,2365,
+2347,2333,2307,2269,2203,2121,2084,2227,2219,2069,1899,1846,1846,1857,1862,1850,1829,1806,1784,1755,
+1729,1720,1685,1655,1658,1662,1661,1655,1644,1626,1609,1587,1584,1587,1592,1606,1627,1654,1667,1651,
+1651,1622,1590,1551,1505,1465,1426,1397,1361,1337,1345,1377,1366,1341,1347,1349,1355,1363,1354,1336,
+1319,1304,1289,1280,1271,1272,1283,1301,1322,1331,1336,1342,1339,1345,1334,1328,1322,1332,1350,1379,
+1410,1422,1445,1455,1448,1447,1474,1518,1558,1590,1605,1608,1588,1584,1600,1607,1653,1602,1579,1592,
+1651,1673,1735,1732,1747,1665,1682,1713,1683,1704,1713,1696,1660,1623,1590,1572,1560,1547,1538,1528,
+1508,1491,1473,1454,1432,1404,1373,1356,1331,1303,1272,1241,1212,1181,1153,1124,1092,1062,1033,1014,
+997,975,958,937,909,881,851,857,797,761,720,680,653,624,604,571,547,518,472,444,
+423,394,361,326,285,245,208,188,168,150,125,102,75,39,-2,-41,-78,-122,-161,-199,
+-231,-265,-308,-349,-390,-430,-471,-509,-553,-595,-644,-698,-745,-788,-831,-876,-928,-978,-1020,-1073,
+-1122,-1162,-1199,-1240,-1280,-1321,-1362,-1399,-1430,-1465,-1495,-1523,-1554,-1582,-1615,-1655,-1700,-1735,-1768,-1808,
+-1844,-1870,-1894,-1918,-1942,-1975,-2011,-2050,-2083,-2114,-2145,-2173,-2202,-2233,-2260,-2290,-2327,-2365,-2400,-2426,
+-2452,-2476,-2500,-2526,-2563,-2604,-2618,-2652,-2664,-2691,-2721,-2750,-2782,-2802,-2825,-2845,-2857,-2873,-2887,-2907,
+-2920,-2928,-2949,-2971,-2973,-2978,-2984,-2982,-2989,-2997,-3002,-3002,-3000,-2998,-2999,-3000,-2991,-2976,-2963,-2957,
+-2949,-2945,-2938,-2922,-2912,-2901,-2887,-2873,-2856,-2833,-2806,-2784,-2761,-2744,-2727,-2704,-2681,-2662,-2639,-2615,
+-2587,-2559,-2530,-2506,-2486,-2459,-2431,-2399,-2372,-2344,-2317,-2291,-2261,-2238,-2208,-2177,-2146,-2118,-2087,-2057,
+-2025,-1994,-1963,-1932,-1893,-1858,-1823,-1790,-1756,-1728,-1697,-1667,-1639,-1607,-1572,-1542,-1507,-1473,-1441,-1408,
+-1375,-1342,-1313,-1282,-1251,-1219,-1189,-1159,-1131,-1102,-1077,-1045,-1018,-997,-964,-934,-907,-879,-850,-824,
+-794,-773,-751,-740,-715,-680,-657,-634,-612,-589,-562,-541,-497,-460,-443,-396,-369,-347,-328,-269,
+-227,-200,-191,-155,-124,-68,-32,6,47,86,118,137,193,261,297,347,412,435,451,471,
+464,483,503,537,579,621,641,719,759,803,855,897,952,971,967,991,1051,1148,1243,1330,
+1416,1376,1399,1414,1375,1400,1416,1385,1371,1267,1142,1108,1076,1178,1288,1461,1816,2409,2886,2695,
+2763,2867,2527,1996,1769,1928,2296,2333,2259,1823,1328,1050,865,714,594,494,410,342,292,247,
+209,167,112,51,-20,-95,-168,-240,-298,-346,-398,-430,-430,-415,-371,-271,-466,-692,-828,-848,
+-810,-819,-874,-857,-748,-623,-644,-812,-871,-908,-1036,-1186,-1266,-1287,-1341,-1343,-1385,-1418,-1465,-1552,
+-1616,-1692,-1795,-1917,-2047,-2110,-2230,-2313,-2404,-2473,-2481,-2461,-2461,-2513,-2613,-2727,-2872,-2998,-3095,-3186,
+-3260,-3309,-3319,-3333,-3370,-3357,-3402,-3424,-3431,-3440,-3443,-3437,-3414,-3396,-3386,-3389,-3409,-3432,-3420,-3393,
+-3428,-3390,-3369,-3374,-3420,-3357,-3288,-3226,-3199,-3200,-3210,-3225,-3226,-3217,-3225,-3247,-3263,-3271,-3259,-3228,
+-3179,-3132,-3079,-3023,-2982,-2956,-2918,-2802,-2717,-2680,-2639,-2593,-2547,-2476,-2405,-2328,-2282,-2228,-2156,-2101,
+-2033,-1969,-1902,-1838,-1770,-1691,-1604,-1547,-1483,-1420,-1343,-1271,-1195,-1120,-1040,-965,-889,-828,-744,-675,
+-600,-526,-446,-373,-317,-256,-196,-138,-64,31,120,210,242,330,358,378,409,427,479,523,
+564,595,623,650,687,715,745,786,800,826,832,860,907,929,950,989,1023,1048,1070,1107,
+1140,1160,1181,1205,1245,1276,1288,1302,1321,1341,1363,1386,1416,1437,1460,1494,1496,1522,1565,1603,
+1634,1638,1640,1631,1628,1634,1636,1637,1638,1653,1685,1702,1718,1729,1733,1742,1759,1782,1806,1834,
+1863,1898,1925,1948,1965,1971,1975,1980,1992,2015,2049,2078,2108,2135,2167,2180,2194,2212,2226,2245,
+2275,2324,2373,2441,2533,2678,2799,2883,2888,2882,2853,2827,2810,2802,2795,2731,2640,2526,2452,2445,
+2464,2464,2431,2397,2348,2294,2259,2251,2262,2258,2248,2287,2322,2268,2244,2202,2166,2150,2153,2157,
+2050,1953,1885,1856,1809,1814,1824,1819,1795,1761,1713,1664,1620,1570,1528,1500,1495,1513,1568,1655,
+1733,1804,1881,1954,2019,2085,2129,2135,2091,2046,1992,1954,1935,1918,1916,1897,1866,1831,1826,1901,
+2054,2138,1787,1682,1671,1680,1684,1643,1570,1526,1507,1484,1479,1450,1408,1393,1389,1353,1292,1215,
+1161,1135,1094,1026,943,851,781,680,583,491,436,394,359,283,147,-42,-259,-423,-528,-576,
+-625,-688,-766,-813,-860,-884,-907,-937,-928,-869,-816,-812,-879,-930,-969,-975,-996,-1016,-1030,-1039,
+-1035,-1035,-1044,-1056,-1070,-1080,-1093,-1111,-1134,-1150,-1176,-1200,-1230,-1266,-1294,-1283,-1249,-1201,-1172,-1164,
+-1147,-1125,-1118,-1127,-1132,-1150,-1174,-1198,-1225,-1285,-1332,-1333,-1339,-1334,-1319,-1285,-1262,-1229,-1132,-1123,
+-1226,-1303,-1326,-1373,-1416,-1454,-1454,-1531,-1651,-1672,-1629,-1619,-1591,-1611,-1650,-1655,-1569,-1557,-1623,-1705,
+-1779,-1855,-1906,-1976,-2013,-2095,-2226,-2367,-2469,-2573,-2719,-2856,-2965,-3020,-3041,-3037,-3043,-3042,-3032,-3034,
+-3074,-3147,-3241,-3330,-3414,-3485,-3540,-3593,-3677,-3763,-3831,-3878,-3905,-3920,-3993,-4083,-4162,-4278,-4431,-4550,
+-4638,-4730,-4800,-4819,-4839,-4896,-5041,-5152,-5243,-5333,-5398,-5417,-5439,-5435,-5385,-5222,-5174,-5257,-5315,-5351,
+-5328,-5321,-5305,-5327,-5354,-5379,-5413,-5453,-5477,-5508,-5550,-5607,-5653,-5695,-5724,-5782,-5826,-5876,-5936,-5984,
+-6008,-6069,-6137,-6183,-6243,-6304,-6379,-6431,-6479,-6511,-6576,-6625,-6679,-6724,-6839,-6918,-6939,-7021,-7113,-7224,
+-7320,-7401,-7507,-7594,-7690,-7782,-7851,-7916,-8031,-8128,-8196,-8289,-8367,-8453,-8530,-8618,-8694,-8781,-8878,-8942,
+-9007,-9122,-9222,-9312,-9363,-9405,-9466,-9532,-9595,-9647,-9685,-9719,-9743,-9741,-9728,-9585,-9574,-9611,-9662,-9862,
+-9951,-9987,-10010,-10040,-10092,-10190,-10237,-10251,-10278,-10294,-10347,-10382,-10395,-10390,-10392,-10394,-10423,-10470,-10578,-10656,
+-10660,-10635,-10604,-10589,-10574,-10558,-10542,-10520,-10492,-10449,-10397,-10342,-10278,-10205,-10124,-10027,-9925,-9823,-9716,-9610,
+-9501,-9391,-9278,-9152,-8997,-8861,-8811,-8709,-8562,-8417,-8296,-8157,-8004,-7834,-7652,-7487,-7325,-7160,-6993,-6842,
+-6681,-6543,-6416,-6249,-6054,-5879,-5732,-5571,-5428,-5337,-5254,-5170,-5131,-5130,-5166,-5164,-5066,-4824,-4566,-4500,
+-4535,-4596,-4572,-4514,-4352,-4079,-3725,-3418,-3177,-2933,-2591,-2182,-2015,-1995,-2007,-2127,-2134,-2036,-1916,-1785,
+-1660,-1534,-1395,-1261,-1153,-1050,-963,-851,-734,-615,-403,-378,-291,-170,-71,15,38,88,176,250,
+299,357,428,506,577,663,749,835,925,1027,1127,1251,1384,1497,1643,1746,1835,1919,2002,2085,
+2173,2252,2337,2425,2522,2620,2717,2817,2923,3020,3111,3207,3309,3400,3485,3571,3664,3773,3884,3994,
+4143,4258,4357,4452,4625,4782,4885,5009,5049,5072,5186,5325,5436,5503,5555,5616,5677,5755,5834,5928,
+5920,5874,5860,5887,5941,5980,6038,6103,6155,6207,6257,6315,6381,6435,6493,6560,6628,6692,6745,6788,
+6808,6814,6814,6799,6799,7044,7220,7247,6966,6565,6444,6478,6179,6017,6049,6235,6272,6151,6183,6432,
+6662,6818,6933,7021,7081,7106,7124,7154,7135,7101,7122,7134,7124,7253,7269,7246,7149,7232,7164,7134,
+7026,7018,6994,6984,6964,6940,6920,6884,6881,6863,6847,6827,6813,6794,6779,6760,6745,6742,6750,6744,
+6714,6690,6670,6663,6654,6643,6640,6641,6650,6659,6679,6680,6667,6641,6617,6590,6556,6527,6495,6467,
+6444,6415,6406,6407,6386,6369,6333,6298,6286,6280,6250,6231,6246,6227,6242,6271,6205,6095,6118,6031,
+5973,5827,5664,5632,5718,5696,5624,5566,5501,5404,5370,5360,5338,5312,5301,5307,5301,5307,5335,5347,
+5357,5359,5365,5363,5347,5325,5272,5213,5166,5162,5201,5247,5228,5154,5066,4983,4949,4918,4887,4848,
+4781,4729,4713,4694,4681,4668,4621,4538,4438,4341,4230,4130,4098,4106,4098,4086,4047,3973,3891,3828,
+3769,3712,3652,3604,3565,3530,3503,3456,3400,3344,3299,3260,3232,3198,3157,3124,3148,3057,3024,3050,
+3018,2974,2902,2864,2836,2811,2797,2771,2735,2683,2608,2544,2524,2567,2689,2766,2796,2539,2419,2387,
+2376,2365,2349,2326,2308,2248,2166,2143,2138,2187,2038,1924,1876,1871,1876,1886,1881,1863,1839,1815,
+1792,1765,1730,1718,1672,1673,1678,1678,1674,1666,1650,1624,1598,1590,1594,1599,1610,1635,1701,1687,
+1677,1670,1659,1626,1592,1544,1505,1471,1444,1414,1384,1378,1394,1391,1364,1356,1369,1376,1384,1385,
+1367,1344,1329,1318,1301,1286,1283,1291,1318,1336,1345,1356,1357,1355,1340,1337,1342,1340,1342,1349,
+1360,1380,1393,1407,1415,1421,1445,1470,1495,1537,1572,1604,1629,1623,1658,1667,1651,1633,1624,1608,
+1591,1588,1608,1688,1725,1705,1703,1707,1678,1686,1714,1728,1716,1687,1658,1620,1594,1572,1557,1542,
+1529,1520,1508,1481,1459,1441,1417,1390,1368,1344,1321,1294,1265,1230,1199,1178,1137,1108,1080,1053,
+1034,1023,1008,989,967,939,921,886,880,828,801,761,721,685,661,617,581,554,548,503,
+462,429,403,373,341,312,288,273,263,233,205,173,140,97,62,23,-15,-50,-88,-122,
+-159,-195,-232,-274,-320,-362,-400,-441,-474,-518,-554,-599,-653,-702,-741,-783,-830,-877,-927,-969,
+-1021,-1070,-1111,-1150,-1198,-1234,-1282,-1324,-1360,-1395,-1430,-1461,-1490,-1518,-1558,-1589,-1625,-1665,-1702,-1738,
+-1775,-1818,-1851,-1871,-1895,-1920,-1952,-1989,-2020,-2052,-2082,-2111,-2136,-2166,-2193,-2222,-2250,-2277,-2312,-2350,
+-2381,-2406,-2437,-2461,-2494,-2530,-2565,-2590,-2631,-2629,-2663,-2691,-2725,-2759,-2779,-2798,-2812,-2822,-2836,-2851,
+-2871,-2887,-2899,-2906,-2913,-2922,-2932,-2939,-2944,-2959,-2967,-2968,-2964,-2958,-2955,-2958,-2962,-2957,-2945,-2934,
+-2929,-2923,-2914,-2903,-2889,-2873,-2858,-2844,-2834,-2816,-2796,-2773,-2751,-2733,-2715,-2696,-2674,-2653,-2633,-2610,
+-2583,-2556,-2533,-2508,-2489,-2467,-2440,-2411,-2382,-2354,-2326,-2300,-2272,-2245,-2218,-2188,-2159,-2132,-2101,-2070,
+-2044,-2013,-1984,-1954,-1927,-1893,-1857,-1825,-1795,-1762,-1730,-1699,-1671,-1641,-1611,-1577,-1547,-1514,-1481,-1449,
+-1416,-1383,-1354,-1321,-1289,-1261,-1224,-1205,-1180,-1144,-1103,-1070,-1058,-1025,-995,-975,-947,-919,-889,-866,
+-840,-823,-808,-790,-751,-734,-710,-675,-645,-619,-593,-556,-553,-500,-469,-437,-392,-372,-343,-319,
+-267,-227,-206,-196,-156,-121,-83,-48,-15,28,65,112,147,192,234,273,312,361,396,409,
+421,420,447,457,495,551,594,631,691,742,788,834,874,936,965,994,1030,1128,1223,1314,
+1343,1353,1378,1423,1365,1373,1392,1394,1350,1297,1168,1066,1025,1044,1172,1307,1522,1949,2640,2836,
+2844,3005,2892,2311,1882,1769,2031,2479,2379,2032,1508,1215,1037,879,747,652,566,494,431,382,
+341,298,250,197,142,77,9,-62,-135,-199,-255,-313,-367,-399,-411,-432,-492,-621,-743,-807,
+-796,-736,-734,-748,-706,-632,-644,-674,-759,-827,-843,-956,-1115,-1228,-1286,-1344,-1392,-1441,-1524,-1617,
+-1690,-1742,-1800,-1841,-1912,-2027,-2068,-2147,-2263,-2346,-2425,-2445,-2445,-2448,-2491,-2575,-2697,-2844,-2961,-3028,
+-3125,-3191,-3230,-3247,-3257,-3286,-3318,-3364,-3397,-3412,-3429,-3424,-3406,-3375,-3345,-3340,-3349,-3362,-3385,-3402,
+-3382,-3392,-3412,-3344,-3278,-3252,-3193,-3119,-3072,-3058,-3070,-3090,-3109,-3123,-3123,-3149,-3184,-3210,-3234,-3232,
+-3210,-3166,-3117,-3061,-3000,-2954,-2924,-2900,-2813,-2724,-2654,-2619,-2576,-2536,-2469,-2387,-2317,-2267,-2200,-2147,
+-2068,-2010,-1945,-1883,-1825,-1758,-1690,-1621,-1552,-1484,-1412,-1337,-1264,-1185,-1117,-1025,-963,-893,-817,-737,
+-648,-584,-521,-444,-379,-314,-246,-179,-127,-56,30,124,195,272,289,357,368,411,440,486,
+520,574,601,613,640,697,713,759,794,807,834,844,873,911,922,948,975,1008,1034,1055,
+1083,1113,1139,1161,1170,1200,1227,1243,1244,1263,1286,1313,1351,1378,1409,1433,1460,1466,1478,1502,
+1549,1557,1571,1581,1591,1594,1599,1607,1608,1609,1631,1666,1683,1696,1704,1710,1723,1743,1763,1784,
+1810,1844,1877,1904,1924,1941,1947,1951,1957,1969,1994,2028,2060,2083,2103,2129,2141,2141,2163,2180,
+2200,2227,2262,2293,2330,2408,2505,2592,2646,2668,2651,2668,2695,2717,2711,2664,2528,2442,2421,2418,
+2427,2438,2423,2375,2324,2292,2241,2186,2144,2121,2100,2083,2108,2165,2157,2159,2144,2167,2166,2099,
+2011,1923,1872,1834,1809,1779,1780,1777,1767,1746,1716,1680,1638,1590,1542,1502,1480,1481,1506,1553,
+1604,1669,1733,1796,1869,1939,2015,2104,2149,2122,2091,2056,2006,1960,1926,1899,1871,1847,1837,1857,
+1907,2007,2010,1790,1666,1604,1554,1509,1486,1481,1491,1479,1442,1400,1332,1304,1295,1248,1192,1147,
+1095,1048,1023,992,938,876,798,711,626,533,456,395,328,318,236,90,-101,-285,-469,-564,
+-621,-663,-715,-770,-814,-866,-913,-954,-985,-978,-946,-922,-931,-978,-1018,-1051,-1044,-1030,-1027,-1033,
+-1039,-1048,-1064,-1080,-1088,-1092,-1094,-1110,-1129,-1144,-1158,-1177,-1196,-1211,-1240,-1262,-1264,-1238,-1206,-1189,
+-1179,-1156,-1132,-1128,-1139,-1152,-1157,-1180,-1198,-1218,-1252,-1275,-1325,-1330,-1343,-1299,-1210,-1186,-1258,-1226,
+-1205,-1226,-1315,-1354,-1427,-1449,-1476,-1496,-1589,-1666,-1660,-1672,-1669,-1691,-1678,-1705,-1721,-1685,-1623,-1673,
+-1747,-1813,-1897,-1954,-2038,-2136,-2216,-2323,-2429,-2570,-2675,-2773,-2883,-2976,-3026,-3060,-3062,-3050,-3036,-3033,
+-3043,-3084,-3153,-3249,-3326,-3413,-3490,-3558,-3618,-3691,-3780,-3833,-3868,-3876,-3932,-4009,-4099,-4226,-4368,-4501,
+-4586,-4651,-4722,-4788,-4847,-4907,-4949,-5076,-5161,-5237,-5343,-5410,-5417,-5423,-5393,-5298,-5197,-5238,-5289,-5329,
+-5352,-5328,-5302,-5307,-5330,-5363,-5394,-5421,-5458,-5491,-5542,-5594,-5643,-5699,-5747,-5799,-5811,-5851,-5908,-5951,
+-5982,-6053,-6098,-6123,-6199,-6265,-6323,-6393,-6459,-6500,-6554,-6610,-6660,-6737,-6778,-6827,-6903,-7006,-7079,-7135,
+-7189,-7302,-7379,-7456,-7543,-7654,-7755,-7814,-7908,-8016,-8093,-8178,-8258,-8347,-8431,-8506,-8596,-8672,-8768,-8855,
+-8926,-9045,-9141,-9217,-9251,-9324,-9382,-9430,-9519,-9586,-9635,-9673,-9708,-9729,-9739,-9717,-9566,-9576,-9620,-9705,
+-9882,-9935,-9981,-9998,-10034,-10097,-10198,-10238,-10260,-10287,-10315,-10344,-10392,-10409,-10410,-10403,-10409,-10416,-10452,-10518,
+-10613,-10624,-10619,-10593,-10564,-10550,-10541,-10529,-10504,-10471,-10428,-10375,-10323,-10262,-10193,-10113,-10024,-9931,-9836,-9731,
+-9622,-9507,-9393,-9272,-9142,-8970,-8896,-8847,-8726,-8565,-8420,-8290,-8150,-7999,-7821,-7634,-7466,-7318,-7167,-7004,
+-6847,-6680,-6539,-6407,-6243,-6037,-5840,-5708,-5594,-5479,-5391,-5289,-5198,-5137,-5112,-5128,-5125,-5056,-4885,-4603,
+-4452,-4452,-4457,-4407,-4296,-4272,-4118,-3846,-3526,-3275,-3066,-2804,-2456,-2124,-1961,-1925,-1970,-2034,-1991,-1880,
+-1741,-1608,-1496,-1356,-1218,-1116,-1009,-917,-795,-680,-584,-398,-312,-229,-131,-21,41,88,142,231,
+295,351,403,477,564,653,739,833,918,1004,1108,1225,1344,1466,1570,1698,1809,1908,1978,2058,
+2139,2218,2310,2399,2489,2583,2683,2782,2886,2987,3078,3175,3265,3364,3459,3546,3625,3726,3829,3948,
+4108,4253,4354,4438,4534,4712,4826,4963,5056,5151,5203,5276,5346,5402,5483,5562,5593,5637,5690,5682,
+5745,5776,5760,5777,5815,5882,5957,6022,6073,6125,6174,6233,6289,6354,6424,6491,6556,6626,6689,6756,
+6806,6832,6853,6869,6870,6873,7100,7310,7338,7039,6587,6484,6549,6279,6145,6219,6473,6528,6400,6291,
+6429,6649,6814,6945,7034,7096,7136,7166,7158,7163,7212,7158,7093,7139,7304,7300,7233,7234,7281,7199,
+7136,7038,7038,7014,7004,6996,6964,6938,6911,6902,6890,6874,6855,6843,6831,6803,6781,6771,6777,6764,
+6766,6745,6714,6700,6688,6677,6673,6665,6668,6676,6704,6721,6722,6696,6671,6646,6618,6588,6556,6526,
+6497,6470,6441,6421,6418,6406,6388,6355,6327,6309,6288,6288,6250,6247,6234,6245,6242,6208,6123,6107,
+6043,5967,5845,5791,5763,5745,5704,5640,5605,5543,5473,5415,5389,5356,5324,5310,5307,5307,5323,5359,
+5375,5380,5386,5416,5448,5458,5392,5316,5269,5237,5246,5285,5311,5276,5196,5089,4982,4945,4941,4945,
+4908,4836,4777,4751,4735,4708,4689,4647,4572,4465,4389,4304,4195,4152,4156,4129,4104,4075,4013,3939,
+3877,3812,3755,3702,3653,3610,3576,3536,3488,3429,3379,3340,3304,3269,3233,3187,3147,3124,3086,3031,
+3011,3018,3021,2944,2890,2847,2814,2798,2789,2783,2720,2643,2571,2532,2534,2563,2596,2657,2542,2451,
+2408,2394,2383,2368,2352,2330,2276,2202,2139,2095,2159,2091,1998,1940,1907,1901,1904,1904,1896,1880,
+1854,1827,1798,1761,1742,1707,1696,1699,1701,1703,1699,1680,1648,1626,1665,1619,1617,1625,1645,1682,
+1717,1729,1714,1692,1663,1629,1584,1547,1519,1494,1458,1424,1409,1399,1382,1371,1371,1378,1389,1405,
+1414,1401,1373,1355,1340,1322,1309,1298,1302,1324,1342,1357,1371,1379,1375,1359,1353,1356,1373,1374,
+1372,1368,1376,1384,1391,1406,1429,1449,1477,1512,1546,1586,1621,1650,1648,1689,1703,1689,1670,1661,
+1644,1622,1607,1629,1665,1648,1760,1822,1794,1699,1688,1703,1725,1734,1719,1673,1642,1614,1587,1566,
+1548,1529,1518,1508,1483,1462,1442,1427,1412,1394,1368,1335,1305,1272,1243,1231,1219,1164,1128,1107,
+1089,1067,1049,1032,1016,996,964,941,910,894,852,818,780,738,703,668,623,585,568,547,
+524,498,466,457,443,409,378,349,319,294,265,237,201,168,130,93,52,15,-17,-50,
+-84,-123,-162,-202,-246,-287,-328,-367,-402,-442,-483,-530,-572,-619,-667,-707,-747,-787,-836,-880,
+-925,-977,-1019,-1063,-1104,-1148,-1187,-1229,-1275,-1319,-1356,-1390,-1422,-1453,-1487,-1526,-1565,-1601,-1635,-1661,
+-1696,-1732,-1774,-1812,-1843,-1872,-1899,-1933,-1960,-1984,-2014,-2044,-2072,-2100,-2127,-2153,-2181,-2211,-2239,-2272,
+-2308,-2338,-2374,-2401,-2429,-2459,-2485,-2519,-2549,-2594,-2619,-2635,-2670,-2702,-2723,-2741,-2759,-2774,-2787,-2804,
+-2823,-2841,-2856,-2863,-2868,-2875,-2885,-2893,-2903,-2911,-2931,-2938,-2930,-2921,-2915,-2915,-2917,-2923,-2917,-2912,
+-2907,-2898,-2894,-2883,-2869,-2853,-2837,-2820,-2804,-2788,-2772,-2754,-2735,-2716,-2700,-2684,-2667,-2649,-2626,-2603,
+-2582,-2557,-2536,-2517,-2490,-2466,-2438,-2410,-2385,-2361,-2336,-2312,-2285,-2256,-2229,-2197,-2168,-2139,-2110,-2081,
+-2053,-2028,-1999,-1971,-1944,-1917,-1887,-1858,-1825,-1796,-1764,-1734,-1702,-1674,-1643,-1616,-1580,-1553,-1518,-1487,
+-1458,-1423,-1394,-1364,-1337,-1305,-1276,-1244,-1211,-1184,-1158,-1128,-1102,-1076,-1044,-1018,-989,-963,-937,-910,
+-889,-874,-857,-819,-799,-788,-746,-709,-687,-653,-626,-610,-574,-549,-517,-481,-449,-404,-385,-349,
+-319,-286,-256,-233,-193,-153,-118,-86,-68,-42,7,35,78,131,175,207,240,274,318,353,
+358,364,380,405,437,463,518,586,617,678,721,770,815,849,905,942,1001,1060,1144,1226,
+1258,1324,1312,1335,1366,1360,1367,1347,1352,1294,1195,1079,1028,994,1055,1198,1375,1650,2132,2700,
+2839,3029,3151,2732,2123,1827,1906,2329,2624,2321,1753,1408,1237,1130,961,838,738,664,594,531,
+485,446,404,355,300,238,179,116,44,-31,-102,-166,-230,-294,-347,-387,-457,-566,-679,-740,
+-756,-715,-643,-607,-632,-620,-569,-595,-625,-681,-763,-820,-940,-1068,-1160,-1263,-1315,-1391,-1472,-1568,
+-1634,-1698,-1767,-1830,-1881,-1940,-2017,-2093,-2147,-2229,-2301,-2360,-2398,-2415,-2431,-2473,-2543,-2648,-2801,-2891,
+-2947,-3028,-3100,-3151,-3156,-3160,-3189,-3239,-3267,-3304,-3339,-3372,-3370,-3338,-3295,-3262,-3259,-3276,-3301,-3336,
+-3357,-3363,-3352,-3342,-3295,-3215,-3155,-3067,-3004,-2963,-2941,-2955,-2987,-3011,-3037,-3050,-3082,-3123,-3164,-3199,
+-3200,-3179,-3136,-3090,-3030,-2974,-2928,-2899,-2876,-2846,-2766,-2679,-2603,-2553,-2503,-2449,-2365,-2304,-2244,-2181,
+-2126,-2062,-2004,-1946,-1867,-1802,-1740,-1671,-1604,-1531,-1465,-1389,-1330,-1265,-1194,-1130,-1056,-986,-914,-838,
+-761,-675,-603,-523,-443,-370,-325,-241,-198,-124,-62,11,109,163,191,222,328,357,383,388,
+447,490,531,559,579,640,694,724,755,790,824,846,861,882,914,932,955,977,998,1025,
+1038,1061,1092,1121,1147,1173,1197,1207,1218,1231,1232,1254,1286,1313,1333,1358,1392,1418,1450,1468,
+1490,1492,1516,1550,1556,1568,1575,1577,1577,1587,1591,1615,1645,1661,1679,1688,1697,1711,1725,1744,
+1761,1789,1822,1855,1882,1901,1914,1924,1926,1937,1951,1976,2006,2031,2054,2071,2091,2110,2101,2106,
+2127,2150,2189,2238,2258,2238,2260,2319,2362,2403,2453,2480,2511,2512,2475,2490,2484,2404,2362,2346,
+2333,2333,2324,2310,2288,2248,2207,2161,2106,2041,1990,1964,1943,1963,2017,2047,2060,2024,1984,1953,
+1915,1872,1837,1804,1780,1779,1737,1733,1731,1720,1714,1691,1654,1615,1567,1527,1496,1495,1500,1507,
+1521,1538,1572,1637,1701,1772,1836,1939,2019,2060,2070,2060,2057,2012,1940,1895,1857,1822,1791,1816,
+1911,2015,1959,1888,1809,1696,1568,1498,1395,1387,1423,1428,1387,1343,1295,1218,1166,1129,1112,1053,
+994,957,921,891,852,811,777,729,634,539,456,377,323,242,215,130,-17,-184,-333,-500,
+-576,-624,-674,-727,-771,-818,-880,-945,-987,-1027,-1045,-1039,-1037,-1046,-1068,-1095,-1104,-1095,-1062,-1035,
+-1036,-1039,-1060,-1092,-1109,-1114,-1109,-1111,-1126,-1138,-1152,-1163,-1177,-1192,-1199,-1216,-1234,-1239,-1225,-1208,
+-1197,-1187,-1154,-1120,-1117,-1141,-1160,-1169,-1174,-1182,-1220,-1253,-1284,-1326,-1374,-1369,-1324,-1245,-1218,-1273,
+-1218,-1218,-1198,-1305,-1438,-1478,-1468,-1506,-1528,-1594,-1668,-1684,-1661,-1696,-1751,-1779,-1781,-1762,-1754,-1778,
+-1771,-1818,-1859,-1943,-2034,-2111,-2237,-2329,-2389,-2477,-2598,-2683,-2781,-2880,-2966,-3031,-3069,-3067,-3056,-3038,
+-3001,-3014,-3062,-3140,-3239,-3325,-3418,-3500,-3575,-3645,-3712,-3784,-3816,-3835,-3880,-3937,-4020,-4209,-4403,-4550,
+-4643,-4695,-4727,-4761,-4797,-4870,-4982,-5061,-5133,-5185,-5210,-5338,-5401,-5397,-5372,-5302,-5176,-5190,-5254,-5305,
+-5336,-5320,-5305,-5289,-5309,-5337,-5368,-5407,-5452,-5486,-5522,-5564,-5615,-5671,-5732,-5784,-5829,-5835,-5866,-5913,
+-5936,-6001,-6082,-6115,-6146,-6217,-6259,-6323,-6402,-6469,-6523,-6594,-6638,-6690,-6761,-6790,-6853,-6911,-6986,-7048,
+-7179,-7261,-7326,-7376,-7410,-7521,-7617,-7712,-7780,-7890,-7980,-8048,-8145,-8233,-8322,-8406,-8483,-8564,-8644,-8747,
+-8829,-8941,-9033,-9110,-9154,-9212,-9291,-9349,-9379,-9511,-9574,-9624,-9669,-9707,-9736,-9745,-9724,-9563,-9564,-9628,
+-9739,-9876,-9945,-9978,-10002,-10028,-10090,-10174,-10221,-10252,-10282,-10316,-10345,-10373,-10417,-10429,-10407,-10414,-10417,-10431,
+-10470,-10552,-10573,-10573,-10565,-10544,-10519,-10509,-10497,-10474,-10437,-10398,-10349,-10302,-10243,-10172,-10097,-10015,-9931,-9838,
+-9730,-9615,-9489,-9378,-9272,-9147,-8960,-8937,-8854,-8721,-8562,-8417,-8283,-8147,-7998,-7818,-7630,-7454,-7309,-7167,
+-7007,-6841,-6692,-6555,-6411,-6237,-6008,-5785,-5638,-5553,-5500,-5432,-5318,-5209,-5138,-5093,-5088,-5075,-5026,-4909,
+-4692,-4437,-4382,-4339,-4274,-4185,-4162,-4071,-3857,-3620,-3338,-3122,-2931,-2676,-2269,-1881,-1816,-1825,-1920,-1937,
+-1825,-1693,-1555,-1429,-1305,-1170,-1057,-962,-867,-752,-634,-535,-414,-250,-169,-88,-5,90,147,203,
+273,324,380,452,540,628,724,819,918,1014,1104,1203,1338,1433,1540,1635,1744,1870,1958,2018,
+2072,2154,2260,2358,2455,2546,2642,2738,2836,2940,3036,3129,3224,3319,3410,3496,3583,3674,3783,3910,
+4079,4229,4353,4441,4531,4618,4754,4902,5026,5115,5202,5290,5343,5360,5421,5493,5552,5585,5622,5665,
+5632,5627,5666,5712,5758,5794,5861,5938,5995,6036,6085,6135,6190,6259,6335,6421,6497,6557,6616,6679,
+6748,6806,6846,6878,6917,6916,6930,7104,7432,7396,7029,6563,6367,6440,6203,6107,6270,6517,6600,6623,
+6438,6457,6638,6816,6946,7050,7113,7153,7198,7191,7218,7221,7145,7133,7201,7303,7326,7211,7315,7283,
+7222,7149,7082,7041,7010,7019,7006,6970,6948,6934,6918,6905,6878,6869,6868,6858,6831,6833,6812,6791,
+6784,6784,6764,6740,6725,6713,6702,6701,6706,6706,6720,6744,6756,6755,6732,6696,6679,6649,6608,6576,
+6551,6527,6495,6462,6441,6429,6420,6402,6375,6358,6339,6316,6314,6284,6284,6256,6246,6240,6228,6165,
+6109,6029,5966,5909,5861,5794,5735,5710,5634,5574,5541,5494,5437,5404,5382,5358,5340,5325,5319,5352,
+5386,5405,5414,5429,5476,5515,5553,5434,5375,5348,5322,5334,5371,5373,5313,5220,5113,5009,4970,4975,
+4989,4948,4880,4818,4779,4760,4732,4704,4664,4594,4512,4456,4370,4267,4195,4180,4159,4122,4084,4035,
+3970,3916,3859,3794,3741,3702,3652,3615,3569,3518,3464,3415,3381,3350,3310,3264,3210,3161,3133,3104,
+3052,3018,3011,3000,2975,2924,2871,2829,2816,2825,2811,2758,2677,2604,2558,2546,2581,2622,2595,2604,
+2495,2427,2410,2402,2381,2372,2380,2338,2240,2160,2102,2149,2148,2064,1992,1950,1933,1926,1927,1929,
+1907,1887,1862,1833,1799,1789,1763,1733,1731,1735,1745,1744,1725,1693,1665,1650,1655,1644,1643,1659,
+1705,1724,1723,1721,1704,1683,1652,1618,1589,1571,1540,1498,1467,1463,1436,1402,1390,1385,1390,1404,
+1417,1424,1423,1401,1383,1359,1338,1322,1309,1330,1339,1352,1368,1384,1389,1389,1383,1373,1381,1398,
+1417,1425,1417,1398,1405,1414,1423,1438,1452,1473,1513,1553,1583,1615,1644,1654,1683,1712,1707,1699,
+1691,1678,1659,1637,1618,1634,1647,1694,1794,1845,1832,1744,1684,1707,1721,1717,1696,1658,1630,1605,
+1580,1568,1558,1526,1507,1480,1463,1437,1423,1411,1401,1383,1357,1325,1296,1272,1236,1208,1186,1156,
+1148,1133,1106,1078,1051,1029,1018,982,951,933,900,864,824,787,746,706,670,635,613,609,
+601,590,572,544,519,488,454,416,389,358,334,307,276,244,209,172,134,91,55,18,
+-15,-46,-84,-123,-165,-215,-260,-296,-337,-373,-410,-451,-499,-542,-587,-635,-677,-720,-759,-802,
+-845,-891,-942,-975,-1017,-1060,-1101,-1137,-1179,-1224,-1269,-1308,-1350,-1381,-1414,-1452,-1492,-1533,-1574,-1604,
+-1631,-1659,-1692,-1731,-1761,-1793,-1829,-1862,-1891,-1919,-1944,-1975,-2010,-2036,-2070,-2096,-2123,-2154,-2185,-2214,
+-2245,-2274,-2307,-2338,-2373,-2403,-2424,-2448,-2480,-2518,-2537,-2566,-2598,-2630,-2653,-2678,-2700,-2724,-2739,-2755,
+-2770,-2792,-2816,-2835,-2845,-2855,-2863,-2870,-2873,-2875,-2880,-2894,-2902,-2899,-2890,-2885,-2884,-2886,-2891,-2885,
+-2880,-2874,-2860,-2849,-2837,-2827,-2812,-2796,-2779,-2767,-2752,-2736,-2715,-2699,-2685,-2672,-2662,-2644,-2625,-2600,
+-2578,-2556,-2536,-2516,-2489,-2462,-2430,-2403,-2381,-2356,-2334,-2315,-2293,-2269,-2240,-2210,-2181,-2152,-2124,-2094,
+-2065,-2038,-2009,-1984,-1959,-1930,-1903,-1877,-1853,-1828,-1800,-1768,-1737,-1706,-1678,-1646,-1618,-1584,-1562,-1524,
+-1495,-1463,-1434,-1404,-1372,-1345,-1309,-1281,-1253,-1220,-1192,-1172,-1146,-1128,-1097,-1065,-1035,-1009,-990,-960,
+-941,-921,-887,-865,-850,-801,-775,-738,-701,-677,-646,-624,-602,-571,-527,-496,-465,-440,-415,-389,
+-360,-326,-297,-263,-232,-197,-164,-131,-106,-71,-66,-42,14,64,107,141,166,213,263,283,
+298,307,325,355,372,409,449,493,562,607,658,705,743,783,817,853,928,976,1052,1090,
+1208,1265,1271,1285,1310,1345,1371,1326,1334,1308,1212,1113,1080,1075,1061,1152,1295,1508,1838,2351,
+2795,2938,3252,3023,2428,2023,1867,2113,2569,2580,2208,1668,1418,1322,1262,1091,948,851,781,709,
+648,607,568,523,471,404,334,275,211,141,68,-1,-69,-138,-197,-232,-322,-407,-555,-680,
+-729,-724,-657,-565,-448,-566,-593,-575,-543,-557,-636,-719,-829,-921,-947,-1073,-1251,-1319,-1391,-1454,
+-1537,-1584,-1638,-1710,-1774,-1855,-1949,-2030,-2090,-2147,-2201,-2253,-2301,-2343,-2381,-2408,-2444,-2519,-2634,-2744,
+-2792,-2872,-2944,-3031,-3075,-3081,-3064,-3074,-3111,-3158,-3215,-3264,-3288,-3293,-3256,-3201,-3159,-3153,-3191,-3237,
+-3263,-3299,-3324,-3320,-3260,-3244,-3189,-3126,-3028,-2936,-2882,-2863,-2879,-2909,-2939,-2972,-2995,-3031,-3074,-3129,
+-3160,-3163,-3139,-3101,-3052,-2998,-2947,-2900,-2868,-2840,-2817,-2770,-2705,-2622,-2548,-2500,-2449,-2359,-2284,-2210,
+-2156,-2107,-2045,-1985,-1916,-1853,-1791,-1737,-1668,-1600,-1511,-1448,-1369,-1307,-1249,-1178,-1101,-1027,-961,-897,
+-841,-761,-687,-613,-541,-480,-399,-349,-273,-208,-166,-94,-20,49,130,184,241,308,380,458,
+432,526,546,578,590,605,651,695,712,761,785,805,829,849,874,880,902,926,948,971,
+983,986,1031,1063,1093,1125,1150,1162,1161,1174,1191,1203,1220,1232,1281,1302,1314,1346,1379,1407,
+1441,1462,1477,1491,1520,1534,1544,1560,1560,1562,1558,1571,1593,1618,1630,1654,1667,1679,1691,1706,
+1722,1739,1764,1797,1832,1857,1875,1887,1894,1902,1912,1931,1953,1982,2005,2027,2054,2074,2083,2068,
+2065,2084,2118,2156,2181,2172,2155,2146,2173,2219,2275,2322,2337,2342,2340,2344,2338,2294,2253,2226,
+2214,2208,2206,2201,2192,2178,2155,2112,2069,2022,1945,1886,1854,1832,1901,1952,1986,1947,1884,1865,
+1845,1818,1795,1771,1761,1750,1737,1706,1701,1704,1700,1689,1667,1631,1593,1558,1537,1527,1516,1506,
+1499,1487,1473,1479,1525,1589,1641,1703,1809,1883,1938,1975,1993,1986,1954,1877,1824,1772,1717,1714,
+1783,1983,2125,1841,1784,1782,1706,1554,1436,1341,1366,1395,1366,1309,1258,1205,1139,1075,1045,1037,
+965,897,857,819,783,733,688,644,616,546,464,351,267,213,147,87,18,-102,-242,-379,
+-500,-578,-638,-699,-759,-808,-860,-928,-990,-1041,-1084,-1116,-1140,-1151,-1155,-1153,-1150,-1153,-1138,-1107,
+-1088,-1081,-1082,-1105,-1130,-1145,-1147,-1142,-1144,-1151,-1159,-1159,-1167,-1183,-1192,-1196,-1202,-1211,-1215,-1210,
+-1203,-1200,-1184,-1137,-1092,-1093,-1124,-1150,-1161,-1161,-1166,-1206,-1276,-1351,-1390,-1403,-1376,-1329,-1285,-1295,
+-1283,-1260,-1242,-1260,-1307,-1464,-1514,-1505,-1525,-1555,-1606,-1695,-1673,-1669,-1673,-1764,-1853,-1844,-1778,-1821,
+-1867,-1928,-1976,-1981,-1989,-2094,-2178,-2293,-2389,-2439,-2510,-2606,-2694,-2773,-2849,-2947,-3026,-3068,-3071,-3061,
+-3048,-3003,-3008,-3058,-3147,-3240,-3328,-3428,-3513,-3591,-3665,-3727,-3771,-3791,-3842,-3890,-3966,-4133,-4361,-4538,
+-4669,-4767,-4825,-4853,-4866,-4863,-4913,-5003,-5114,-5178,-5165,-5164,-5307,-5352,-5338,-5270,-5161,-5126,-5186,-5253,
+-5302,-5313,-5292,-5275,-5284,-5310,-5339,-5374,-5413,-5465,-5514,-5552,-5588,-5620,-5671,-5725,-5785,-5821,-5843,-5851,
+-5919,-5981,-6036,-6073,-6141,-6186,-6233,-6302,-6351,-6413,-6483,-6538,-6589,-6652,-6715,-6777,-6832,-6881,-6941,-7017,
+-7064,-7146,-7192,-7254,-7378,-7446,-7491,-7564,-7677,-7753,-7849,-7915,-8026,-8117,-8213,-8293,-8375,-8460,-8549,-8646,
+-8722,-8848,-8940,-8995,-9078,-9141,-9185,-9262,-9319,-9399,-9504,-9562,-9614,-9664,-9708,-9743,-9768,-9752,-9592,-9575,
+-9603,-9648,-9786,-9936,-9975,-9993,-10010,-10080,-10171,-10222,-10252,-10284,-10315,-10336,-10377,-10416,-10436,-10415,-10401,-10387,
+-10393,-10414,-10449,-10511,-10517,-10516,-10514,-10486,-10466,-10457,-10438,-10405,-10367,-10323,-10274,-10219,-10150,-10078,-10001,-9921,
+-9824,-9710,-9591,-9471,-9372,-9280,-9195,-9084,-8970,-8837,-8695,-8554,-8426,-8292,-8155,-8001,-7830,-7645,-7472,-7325,
+-7176,-7012,-6843,-6694,-6551,-6408,-6233,-6009,-5790,-5629,-5542,-5513,-5462,-5333,-5214,-5124,-5067,-5044,-5018,-4978,
+-4900,-4751,-4469,-4298,-4210,-4162,-4058,-3990,-3935,-3757,-3617,-3408,-3218,-3031,-2842,-2563,-2136,-1810,-1888,-1830,
+-1847,-1730,-1621,-1506,-1390,-1258,-1134,-1017,-920,-826,-719,-604,-503,-407,-242,-173,-77,25,101,177,
+260,331,395,451,528,615,705,801,897,999,1091,1200,1313,1421,1519,1610,1699,1801,1916,2006,
+2080,2124,2193,2303,2402,2504,2598,2695,2791,2884,2992,3086,3178,3273,3359,3442,3523,3616,3719,3857,
+4032,4188,4312,4442,4534,4604,4700,4821,4954,5045,5146,5276,5319,5355,5405,5467,5520,5549,5560,5603,
+5631,5612,5609,5625,5687,5730,5755,5824,5902,5953,5992,6037,6089,6155,6231,6302,6385,6471,6536,6596,
+6650,6721,6792,6845,6883,6922,6946,6961,7084,7432,7382,6937,6504,6215,6100,5981,5947,6140,6350,6447,
+6572,6509,6495,6620,6821,6976,7071,7136,7181,7237,7238,7262,7313,7174,7285,7291,7325,7359,7263,7316,
+7328,7274,7200,7146,7058,7031,7038,7028,6997,6976,6959,6947,6934,6910,6900,6886,6878,6864,6852,6836,
+6819,6818,6812,6789,6767,6754,6735,6726,6729,6744,6755,6768,6765,6776,6774,6763,6734,6708,6672,6636,
+6599,6572,6547,6519,6489,6467,6454,6444,6429,6402,6388,6374,6351,6333,6343,6317,6279,6279,6265,6242,
+6188,6114,6041,5958,5966,5899,5752,5714,5710,5636,5572,5520,5487,5431,5403,5397,5406,5398,5370,5354,
+5382,5424,5446,5452,5473,5526,5515,5519,5440,5414,5396,5390,5405,5427,5392,5328,5230,5134,5053,5008,
+4987,4995,4980,4925,4855,4809,4777,4749,4709,4675,4618,4555,4492,4412,4325,4237,4185,4157,4123,4089,
+4044,3996,3953,3900,3837,3790,3758,3713,3664,3606,3550,3501,3453,3423,3391,3345,3289,3232,3180,3151,
+3119,3070,3037,3024,3020,3006,2964,2908,2868,2859,2850,2830,2787,2710,2648,2601,2586,2647,2759,2832,
+2581,2481,2441,2425,2416,2404,2397,2405,2361,2267,2194,2182,2187,2189,2098,2029,1990,1973,1961,1952,
+1933,1932,1914,1900,1875,1837,1835,1812,1779,1764,1766,1786,1795,1778,1748,1713,1680,1667,1665,1668,
+1683,1733,1722,1714,1719,1709,1686,1661,1629,1617,1600,1575,1528,1506,1515,1474,1430,1414,1398,1397,
+1409,1425,1427,1426,1414,1397,1377,1349,1333,1342,1345,1349,1358,1359,1373,1394,1402,1402,1393,1408,
+1414,1431,1429,1423,1420,1417,1421,1428,1443,1455,1470,1509,1546,1572,1596,1620,1641,1659,1704,1705,
+1709,1706,1700,1683,1660,1638,1722,1759,1757,1808,1779,1810,1832,1701,1679,1693,1702,1693,1673,1652,
+1629,1600,1577,1557,1536,1517,1486,1458,1432,1417,1407,1400,1390,1379,1358,1332,1309,1272,1236,1205,
+1181,1169,1157,1135,1102,1062,1031,1004,976,948,924,905,861,818,788,768,738,718,709,701,
+689,661,632,605,575,548,514,484,451,417,387,360,332,303,271,231,188,148,106,72,
+37,3,-28,-65,-103,-147,-188,-228,-268,-310,-348,-387,-426,-467,-510,-560,-608,-651,-694,-738,
+-779,-821,-867,-907,-944,-980,-1025,-1055,-1093,-1133,-1178,-1222,-1266,-1303,-1340,-1374,-1415,-1449,-1490,-1529,
+-1562,-1601,-1632,-1661,-1688,-1716,-1749,-1782,-1813,-1844,-1878,-1906,-1937,-1966,-1995,-2033,-2064,-2094,-2128,-2160,
+-2192,-2215,-2247,-2279,-2312,-2342,-2370,-2395,-2424,-2457,-2486,-2513,-2542,-2562,-2584,-2612,-2636,-2662,-2680,-2699,
+-2716,-2738,-2758,-2776,-2791,-2808,-2826,-2841,-2843,-2841,-2843,-2849,-2862,-2872,-2871,-2867,-2865,-2864,-2861,-2861,
+-2851,-2841,-2830,-2817,-2807,-2801,-2791,-2775,-2757,-2742,-2731,-2715,-2696,-2678,-2665,-2651,-2638,-2624,-2607,-2585,
+-2565,-2546,-2530,-2511,-2483,-2454,-2425,-2396,-2373,-2352,-2330,-2308,-2290,-2266,-2247,-2221,-2191,-2165,-2139,-2112,
+-2080,-2049,-2019,-1991,-1966,-1940,-1913,-1888,-1863,-1837,-1812,-1785,-1760,-1733,-1706,-1683,-1653,-1620,-1589,-1564,
+-1529,-1503,-1469,-1439,-1412,-1378,-1348,-1315,-1291,-1268,-1244,-1217,-1195,-1160,-1147,-1119,-1092,-1064,-1036,-1011,
+-981,-953,-931,-897,-866,-832,-798,-757,-716,-689,-661,-643,-620,-578,-583,-532,-498,-471,-434,-406,
+-380,-353,-328,-305,-271,-239,-212,-180,-151,-129,-120,-109,-82,-30,20,78,106,127,168,200,
+227,249,268,287,322,354,390,430,480,526,565,635,682,722,765,798,840,935,1019,1055,
+1111,1180,1227,1224,1248,1281,1329,1357,1287,1285,1229,1131,1099,1140,1167,1208,1328,1447,1678,2100,
+2548,2734,2905,3240,2842,2319,2045,2006,2246,2422,2360,1985,1635,1462,1399,1375,1229,1078,983,912,
+833,769,724,688,642,581,509,428,365,304,237,171,106,39,-26,-82,-146,-230,-343,-476,
+-624,-693,-715,-666,-486,-476,-589,-591,-562,-533,-569,-599,-679,-756,-882,-983,-1084,-1221,-1309,-1367,
+-1443,-1496,-1540,-1592,-1657,-1720,-1825,-1928,-1997,-2055,-2114,-2165,-2208,-2251,-2304,-2345,-2384,-2431,-2507,-2618,
+-2723,-2777,-2814,-2888,-2956,-2999,-3009,-2989,-2984,-3018,-3078,-3147,-3199,-3222,-3224,-3190,-3131,-3081,-3077,-3115,
+-3167,-3205,-3249,-3253,-3245,-3195,-3158,-3167,-3103,-3009,-2924,-2864,-2839,-2850,-2876,-2909,-2941,-2966,-2994,-3046,
+-3099,-3128,-3128,-3109,-3069,-3020,-2968,-2924,-2875,-2834,-2799,-2768,-2730,-2686,-2623,-2553,-2499,-2451,-2386,-2298,
+-2209,-2139,-2090,-2030,-1975,-1914,-1847,-1795,-1726,-1660,-1593,-1520,-1441,-1369,-1295,-1231,-1155,-1074,-1018,-974,
+-886,-815,-759,-679,-613,-540,-464,-394,-321,-245,-182,-123,-67,-8,58,125,182,235,274,352,
+458,452,523,541,560,575,604,641,671,723,758,773,800,818,843,847,866,893,907,936,
+959,988,993,1017,1036,1071,1106,1122,1129,1136,1145,1170,1182,1196,1219,1239,1271,1292,1316,1362,
+1382,1405,1408,1435,1458,1480,1506,1518,1535,1530,1531,1535,1541,1559,1583,1605,1630,1651,1658,1672,
+1682,1696,1713,1737,1767,1801,1830,1847,1856,1860,1867,1879,1896,1922,1946,1972,1999,2022,2047,2060,
+2049,2059,2099,2119,2137,2141,2122,2089,2068,2099,2157,2217,2257,2265,2245,2225,2215,2189,2151,2128,
+2110,2099,2093,2097,2097,2095,2081,2061,2033,1994,1944,1868,1795,1760,1766,1847,1895,1852,1843,1828,
+1800,1779,1760,1752,1739,1724,1714,1706,1684,1689,1689,1682,1666,1646,1619,1599,1589,1567,1545,1528,
+1514,1492,1455,1418,1428,1466,1509,1554,1623,1704,1776,1830,1872,1903,1902,1868,1804,1747,1688,1630,
+1642,1703,1892,1843,1657,1637,1701,1651,1520,1410,1369,1363,1381,1335,1260,1210,1158,1096,1034,1007,
+962,881,811,763,736,693,641,581,527,476,416,338,244,159,93,37,-25,-93,-189,-305,
+-422,-512,-606,-686,-758,-826,-887,-940,-1017,-1088,-1140,-1187,-1229,-1266,-1285,-1278,-1253,-1240,-1233,-1222,
+-1190,-1155,-1144,-1145,-1173,-1194,-1196,-1185,-1184,-1187,-1189,-1185,-1176,-1179,-1191,-1198,-1197,-1202,-1206,-1209,
+-1200,-1197,-1198,-1171,-1107,-1053,-1067,-1107,-1122,-1140,-1134,-1152,-1223,-1335,-1422,-1411,-1394,-1361,-1345,-1344,
+-1335,-1299,-1301,-1309,-1321,-1373,-1481,-1523,-1499,-1568,-1571,-1628,-1713,-1691,-1675,-1673,-1760,-1871,-1894,-1872,
+-1918,-1944,-2007,-2056,-2097,-2110,-2212,-2241,-2345,-2430,-2490,-2568,-2622,-2711,-2772,-2841,-2930,-3011,-3069,-3054,
+-3029,-3015,-3015,-3029,-3102,-3180,-3257,-3343,-3437,-3530,-3613,-3690,-3737,-3762,-3813,-3851,-3929,-4089,-4275,-4463,
+-4611,-4708,-4791,-4868,-4921,-4970,-4986,-4988,-5022,-5120,-5180,-5134,-5171,-5259,-5284,-5251,-5129,-5092,-5121,-5181,
+-5248,-5291,-5276,-5269,-5255,-5280,-5311,-5343,-5378,-5420,-5469,-5521,-5567,-5602,-5635,-5675,-5714,-5756,-5816,-5865,
+-5895,-5958,-5997,-6035,-6095,-6124,-6192,-6253,-6317,-6353,-6413,-6480,-6541,-6617,-6685,-6738,-6800,-6852,-6912,-6963,
+-7018,-7091,-7160,-7229,-7293,-7339,-7433,-7523,-7574,-7616,-7736,-7815,-7879,-7970,-8071,-8177,-8256,-8347,-8449,-8531,
+-8606,-8720,-8839,-8892,-8988,-9078,-9111,-9181,-9267,-9316,-9416,-9498,-9538,-9592,-9655,-9702,-9722,-9751,-9771,-9654,
+-9559,-9593,-9655,-9828,-9928,-9962,-9977,-10008,-10092,-10174,-10223,-10259,-10287,-10323,-10344,-10375,-10415,-10433,-10410,-10380,
+-10355,-10349,-10370,-10384,-10448,-10460,-10453,-10449,-10449,-10432,-10421,-10406,-10376,-10342,-10297,-10247,-10188,-10129,-10059,-9980,
+-9896,-9796,-9686,-9572,-9474,-9386,-9307,-9223,-9107,-8977,-8814,-8665,-8539,-8427,-8300,-8165,-8008,-7840,-7673,-7515,
+-7361,-7199,-7020,-6851,-6697,-6566,-6423,-6244,-6037,-5842,-5661,-5562,-5511,-5456,-5329,-5200,-5103,-5035,-5006,-4967,
+-4925,-4868,-4767,-4577,-4304,-4141,-4045,-3940,-3813,-3727,-3616,-3461,-3364,-3263,-3085,-2960,-2778,-2433,-2110,-1910,
+-1867,-1657,-1490,-1484,-1424,-1344,-1224,-1111,-991,-888,-796,-690,-570,-481,-387,-273,-105,-41,60,144,
+215,292,380,457,532,630,707,793,888,979,1067,1154,1262,1388,1475,1592,1674,1753,1841,1960,
+2058,2141,2216,2273,2360,2458,2555,2659,2755,2848,2944,3045,3143,3232,3332,3421,3494,3565,3658,3789,
+3953,4124,4252,4395,4534,4635,4654,4761,4873,4986,5086,5152,5266,5345,5391,5483,5530,5557,5553,5539,
+5572,5597,5574,5575,5575,5626,5668,5698,5781,5847,5890,5928,5982,6038,6101,6169,6244,6321,6409,6488,
+6552,6611,6684,6768,6840,6888,6928,6957,6976,7081,7358,7270,6809,6383,6003,5798,5767,5823,6019,6159,
+6248,6337,6498,6528,6623,6788,7000,7123,7174,7201,7234,7265,7284,7279,7210,7344,7393,7395,7392,7305,
+7337,7325,7292,7243,7174,7101,7060,7052,7051,7030,7010,6995,6982,6960,6944,6934,6920,6905,6894,6867,
+6850,6854,6850,6837,6818,6802,6786,6768,6762,6770,6784,6796,6805,6810,6806,6814,6797,6757,6728,6680,
+6656,6621,6591,6563,6539,6513,6497,6484,6457,6449,6433,6415,6393,6372,6377,6347,6328,6314,6308,6291,
+6254,6205,6149,6067,5968,6006,5943,5727,5731,5710,5684,5608,5541,5500,5438,5396,5413,5446,5455,5419,
+5392,5416,5472,5505,5496,5490,5498,5519,5512,5454,5448,5446,5433,5455,5459,5407,5321,5226,5152,5090,
+5019,4986,5001,4995,4949,4884,4829,4786,4753,4716,4678,4635,4576,4520,4443,4373,4277,4195,4157,4137,
+4102,4054,4013,3982,3945,3877,3828,3792,3749,3690,3633,3584,3537,3494,3465,3429,3373,3313,3252,3202,
+3170,3139,3093,3041,3024,3033,3014,2980,2944,2918,2899,2869,2841,2793,2739,2700,2652,2623,2722,3013,
+2898,2603,2500,2460,2448,2437,2427,2413,2400,2363,2301,2232,2216,2139,2185,2117,2046,2015,2008,1995,
+1984,1964,1955,1942,1937,1914,1885,1872,1849,1820,1801,1816,1817,1815,1804,1787,1758,1722,1691,1684,
+1687,1690,1710,1723,1716,1711,1707,1675,1653,1638,1628,1614,1593,1551,1527,1499,1480,1449,1424,1407,
+1403,1414,1423,1426,1420,1414,1403,1385,1369,1361,1357,1355,1356,1344,1352,1374,1394,1408,1402,1399,
+1412,1415,1417,1410,1421,1421,1418,1429,1446,1463,1473,1485,1511,1535,1552,1573,1591,1610,1628,1663,
+1688,1692,1699,1699,1686,1665,1643,1657,1687,1675,1697,1762,1812,1827,1791,1698,1677,1687,1694,1683,
+1671,1654,1631,1604,1579,1558,1532,1501,1472,1445,1426,1417,1410,1403,1394,1378,1360,1341,1313,1272,
+1230,1201,1176,1156,1139,1103,1072,1040,1009,983,954,936,930,909,883,866,845,818,791,768,
+745,725,701,668,635,600,566,537,505,469,438,412,387,353,318,283,239,196,152,113,
+75,53,23,-3,-37,-70,-115,-155,-195,-239,-282,-321,-360,-398,-439,-484,-532,-577,-624,-667,
+-711,-755,-802,-846,-884,-919,-956,-994,-1025,-1063,-1103,-1139,-1177,-1226,-1261,-1294,-1331,-1365,-1405,-1436,
+-1485,-1514,-1554,-1587,-1618,-1654,-1685,-1716,-1747,-1774,-1802,-1838,-1872,-1900,-1930,-1964,-1996,-2025,-2059,-2086,
+-2118,-2151,-2186,-2219,-2248,-2276,-2305,-2337,-2367,-2391,-2422,-2456,-2481,-2503,-2525,-2545,-2570,-2596,-2615,-2635,
+-2652,-2671,-2694,-2714,-2730,-2750,-2769,-2785,-2799,-2804,-2800,-2801,-2807,-2820,-2831,-2837,-2837,-2835,-2831,-2827,
+-2820,-2811,-2804,-2794,-2788,-2780,-2768,-2752,-2735,-2718,-2705,-2692,-2677,-2658,-2642,-2629,-2615,-2597,-2580,-2562,
+-2541,-2528,-2515,-2499,-2479,-2453,-2423,-2397,-2376,-2355,-2331,-2310,-2287,-2263,-2243,-2220,-2195,-2171,-2147,-2120,
+-2091,-2062,-2033,-2000,-1970,-1945,-1920,-1899,-1874,-1852,-1825,-1801,-1775,-1751,-1726,-1699,-1675,-1649,-1625,-1591,
+-1566,-1536,-1507,-1472,-1446,-1420,-1389,-1365,-1335,-1313,-1291,-1264,-1216,-1185,-1158,-1140,-1120,-1084,-1066,-1041,
+-1012,-992,-962,-942,-901,-868,-830,-798,-769,-731,-706,-677,-647,-620,-591,-558,-528,-500,-472,-445,
+-419,-392,-362,-328,-274,-259,-250,-221,-187,-159,-135,-93,-67,-37,-16,18,61,90,92,112,
+140,179,210,232,256,294,317,367,418,485,483,513,592,638,691,724,750,824,956,998,
+1000,1042,1099,1168,1196,1232,1274,1318,1247,1268,1210,1132,1079,1095,1167,1255,1403,1491,1614,1900,
+2269,2673,2691,2910,3281,2827,2345,1993,2066,2329,2256,2099,2049,1702,1533,1465,1464,1382,1252,1139,
+1039,949,881,829,789,745,684,602,526,451,380,318,258,204,148,86,28,-43,-157,-274,
+-397,-542,-651,-696,-677,-605,-602,-637,-604,-546,-564,-505,-540,-654,-722,-824,-961,-1101,-1209,-1272,
+-1331,-1390,-1443,-1483,-1539,-1611,-1704,-1805,-1881,-1931,-1950,-2037,-2097,-2173,-2218,-2266,-2315,-2350,-2395,-2469,
+-2573,-2669,-2704,-2735,-2784,-2857,-2899,-2915,-2901,-2908,-2948,-3017,-3095,-3151,-3180,-3167,-3124,-3078,-3046,-3041,
+-3073,-3112,-3140,-3174,-3178,-3184,-3125,-3108,-3140,-3086,-3014,-2947,-2895,-2864,-2857,-2866,-2895,-2931,-2952,-2990,
+-3045,-3096,-3116,-3110,-3083,-3044,-2996,-2949,-2902,-2850,-2802,-2761,-2722,-2683,-2643,-2593,-2533,-2476,-2420,-2368,
+-2315,-2251,-2149,-2100,-2047,-1988,-1922,-1853,-1792,-1734,-1666,-1580,-1515,-1436,-1371,-1311,-1237,-1167,-1093,-1025,
+-954,-893,-819,-735,-679,-600,-543,-480,-399,-335,-257,-199,-128,-68,-6,50,122,151,215,300,
+353,446,478,522,556,581,586,623,643,672,717,744,773,789,815,836,849,875,895,911,
+928,946,965,997,1011,1035,1077,1096,1115,1112,1121,1153,1171,1181,1193,1201,1223,1247,1272,1292,
+1329,1344,1365,1361,1388,1419,1450,1477,1491,1510,1510,1507,1510,1510,1527,1553,1581,1607,1631,1643,
+1649,1660,1668,1687,1712,1736,1762,1791,1811,1815,1817,1824,1838,1856,1882,1907,1935,1969,2000,2033,
+2055,2080,2094,2106,2107,2104,2087,2065,2040,2043,2093,2147,2177,2192,2178,2146,2120,2106,2087,2064,
+2049,2037,2021,2014,2023,2024,2017,2007,1992,1960,1921,1869,1812,1759,1737,1755,1798,1823,1823,1812,
+1791,1765,1748,1734,1725,1713,1698,1687,1684,1679,1677,1672,1667,1651,1641,1640,1633,1608,1578,1559,
+1545,1521,1481,1430,1422,1453,1480,1508,1534,1579,1639,1690,1737,1774,1803,1807,1776,1730,1669,1605,
+1586,1624,1587,1584,1547,1519,1539,1603,1554,1462,1378,1352,1368,1354,1292,1235,1205,1164,1105,1024,
+941,857,783,717,668,645,605,550,490,406,339,282,212,121,51,-7,-67,-128,-194,-283,
+-389,-489,-566,-662,-749,-834,-915,-986,-1054,-1130,-1198,-1252,-1307,-1353,-1413,-1441,-1430,-1387,-1348,-1324,
+-1303,-1270,-1244,-1227,-1226,-1245,-1258,-1251,-1246,-1243,-1230,-1224,-1212,-1205,-1202,-1208,-1204,-1200,-1202,-1208,
+-1204,-1197,-1191,-1186,-1154,-1081,-1012,-1017,-1060,-1083,-1121,-1121,-1140,-1234,-1379,-1446,-1412,-1377,-1355,-1359,
+-1370,-1337,-1323,-1321,-1332,-1362,-1418,-1466,-1511,-1509,-1576,-1589,-1633,-1689,-1721,-1694,-1673,-1725,-1867,-1946,
+-1972,-2009,-2043,-2059,-2109,-2159,-2214,-2285,-2299,-2375,-2464,-2530,-2595,-2655,-2729,-2788,-2841,-2918,-3001,-3045,
+-3032,-3006,-2995,-3019,-3083,-3156,-3227,-3299,-3378,-3463,-3556,-3651,-3713,-3748,-3793,-3835,-3922,-4069,-4211,-4397,
+-4553,-4692,-4776,-4833,-4866,-4918,-4995,-5016,-4997,-4952,-5043,-5135,-5093,-5154,-5191,-5189,-5107,-5053,-5081,-5127,
+-5188,-5243,-5267,-5261,-5239,-5245,-5278,-5312,-5348,-5386,-5425,-5470,-5518,-5565,-5607,-5640,-5677,-5684,-5737,-5803,
+-5864,-5921,-5978,-5977,-6045,-6116,-6161,-6203,-6260,-6318,-6372,-6427,-6487,-6556,-6626,-6683,-6757,-6819,-6888,-6945,
+-6973,-7061,-7143,-7198,-7251,-7313,-7359,-7442,-7492,-7602,-7688,-7766,-7832,-7890,-7930,-8021,-8127,-8223,-8331,-8430,
+-8500,-8585,-8717,-8805,-8876,-9001,-9011,-9097,-9181,-9240,-9315,-9414,-9482,-9511,-9589,-9657,-9693,-9736,-9758,-9765,
+-9671,-9541,-9576,-9620,-9832,-9912,-9937,-9961,-10008,-10103,-10183,-10224,-10266,-10292,-10327,-10354,-10381,-10407,-10420,-10400,
+-10354,-10336,-10331,-10353,-10378,-10389,-10416,-10406,-10396,-10409,-10406,-10395,-10381,-10355,-10316,-10274,-10222,-10165,-10104,-10034,
+-9959,-9873,-9780,-9675,-9581,-9496,-9401,-9327,-9210,-9073,-8940,-8781,-8640,-8517,-8412,-8285,-8164,-8032,-7877,-7711,
+-7543,-7377,-7209,-7034,-6857,-6679,-6549,-6414,-6224,-6039,-5855,-5671,-5559,-5509,-5444,-5326,-5202,-5101,-5034,-4989,
+-4927,-4879,-4816,-4748,-4635,-4440,-4179,-4004,-3823,-3669,-3529,-3387,-3209,-3176,-3172,-3087,-2971,-2852,-2636,-2384,
+-2103,-1907,-1626,-1389,-1308,-1289,-1267,-1164,-1067,-971,-868,-783,-670,-559,-451,-350,-255,-114,-9,90,
+162,232,326,424,509,596,695,780,882,972,1046,1117,1213,1302,1424,1545,1652,1735,1801,1884,
+1994,2102,2202,2295,2365,2440,2519,2618,2717,2816,2909,3005,3107,3196,3295,3393,3477,3569,3648,3738,
+3899,4060,4182,4310,4447,4548,4647,4748,4853,4940,5126,5192,5225,5313,5355,5430,5543,5589,5596,5568,
+5556,5551,5547,5530,5501,5488,5530,5574,5641,5712,5767,5805,5847,5902,5968,6032,6098,6163,6244,6331,
+6406,6473,6548,6631,6722,6808,6877,6906,6963,7002,7073,7283,7137,6664,6218,5772,5566,5586,5733,5946,
+6016,6094,6230,6485,6621,6688,6795,7038,7179,7224,7231,7246,7286,7355,7359,7259,7454,7425,7417,7425,
+7330,7348,7345,7283,7269,7213,7123,7090,7079,7070,7059,7033,7022,7011,6988,6984,6965,6948,6941,6920,
+6893,6879,6884,6879,6870,6856,6834,6820,6807,6801,6807,6815,6823,6821,6824,6847,6845,6828,6787,6747,
+6718,6663,6643,6612,6584,6561,6552,6532,6510,6484,6475,6458,6443,6423,6404,6391,6379,6367,6362,6348,
+6319,6269,6220,6145,6063,6051,6064,6004,5771,5747,5756,5712,5644,5592,5544,5487,5437,5455,5489,5504,
+5473,5444,5450,5507,5556,5548,5535,5531,5530,5505,5483,5487,5460,5437,5464,5463,5404,5311,5223,5160,
+5102,5039,5012,5018,4997,4954,4898,4843,4789,4741,4708,4674,4639,4599,4546,4475,4401,4307,4230,4185,
+4161,4123,4079,4033,4002,3980,3910,3867,3826,3775,3716,3661,3616,3575,3536,3506,3463,3402,3341,3279,
+3231,3203,3172,3119,3060,3036,3040,3031,3011,2995,2966,2936,2900,2867,2822,2772,2728,2680,2635,2691,
+2952,2854,2627,2531,2497,2480,2475,2451,2429,2403,2373,2325,2270,2257,2151,2156,2140,2071,2037,2033,
+2026,2022,2001,2001,1975,1963,1943,1905,1900,1892,1862,1849,1844,1842,1834,1830,1823,1797,1782,1740,
+1711,1708,1705,1702,1718,1723,1703,1696,1672,1654,1646,1641,1625,1597,1570,1567,1513,1491,1473,1441,
+1417,1405,1409,1413,1416,1416,1411,1404,1393,1379,1375,1374,1366,1356,1361,1370,1372,1385,1397,1396,
+1399,1403,1403,1399,1403,1416,1410,1425,1461,1516,1492,1488,1502,1513,1525,1533,1549,1567,1582,1604,
+1621,1641,1656,1676,1684,1678,1664,1649,1654,1685,1692,1722,1769,1790,1853,1813,1792,1713,1672,1678,
+1680,1678,1666,1654,1629,1616,1581,1555,1524,1494,1465,1438,1427,1417,1410,1397,1387,1372,1344,1309,
+1269,1226,1196,1174,1149,1136,1116,1088,1066,1052,1038,1017,1000,975,958,937,911,883,857,827,
+805,777,753,722,688,654,620,588,564,531,499,460,432,402,367,330,292,251,209,169,
+139,110,82,47,15,-14,-49,-87,-118,-158,-198,-253,-298,-340,-374,-409,-448,-497,-545,-589,
+-635,-679,-719,-767,-814,-852,-887,-927,-963,-994,-1030,-1070,-1104,-1137,-1183,-1229,-1256,-1286,-1322,-1368,
+-1392,-1438,-1468,-1503,-1537,-1573,-1611,-1644,-1679,-1713,-1743,-1775,-1806,-1835,-1866,-1898,-1930,-1959,-1990,-2019,
+-2043,-2069,-2104,-2142,-2179,-2212,-2242,-2275,-2302,-2326,-2356,-2390,-2419,-2448,-2468,-2490,-2513,-2536,-2560,-2581,
+-2599,-2617,-2639,-2659,-2677,-2696,-2712,-2722,-2736,-2747,-2753,-2758,-2763,-2776,-2790,-2802,-2805,-2808,-2804,-2798,
+-2789,-2780,-2776,-2772,-2766,-2764,-2750,-2727,-2709,-2692,-2677,-2664,-2652,-2641,-2625,-2609,-2596,-2583,-2560,-2543,
+-2523,-2507,-2493,-2479,-2462,-2444,-2419,-2394,-2370,-2354,-2333,-2312,-2291,-2266,-2243,-2221,-2200,-2177,-2152,-2124,
+-2100,-2074,-2040,-2007,-1979,-1952,-1925,-1904,-1884,-1862,-1841,-1819,-1792,-1770,-1748,-1721,-1699,-1674,-1649,-1628,
+-1599,-1573,-1544,-1512,-1487,-1465,-1447,-1414,-1384,-1353,-1319,-1288,-1266,-1245,-1211,-1185,-1169,-1136,-1110,-1093,
+-1068,-1036,-1012,-976,-941,-896,-861,-825,-789,-769,-742,-714,-686,-658,-628,-600,-571,-541,-511,-480,
+-448,-423,-397,-366,-338,-309,-289,-261,-238,-215,-193,-160,-117,-83,-62,-25,6,54,57,36,
+73,106,139,174,202,225,254,293,320,380,467,467,489,576,619,668,721,748,798,943,
+962,961,1018,1066,1128,1174,1214,1263,1276,1197,1229,1130,1059,1078,1185,1312,1503,1602,1655,1818,
+2115,2520,2765,2777,3045,3236,2808,2317,2033,2226,2260,2154,2069,2314,1814,1616,1529,1527,1493,1376,
+1260,1158,1070,998,943,895,843,777,697,613,527,448,387,345,310,269,220,152,58,-77,
+-219,-354,-478,-594,-657,-669,-656,-661,-674,-664,-625,-544,-452,-493,-624,-705,-784,-911,-1044,-1140,
+-1196,-1247,-1310,-1369,-1415,-1470,-1547,-1650,-1735,-1823,-1919,-1979,-2036,-2087,-2136,-2187,-2239,-2282,-2315,-2352,
+-2411,-2489,-2553,-2593,-2614,-2654,-2705,-2746,-2769,-2781,-2834,-2887,-2956,-3033,-3089,-3114,-3107,-3080,-3058,-3030,
+-3034,-3048,-3070,-3082,-3097,-3112,-3105,-3052,-3067,-3110,-3085,-3033,-2989,-2949,-2912,-2885,-2880,-2898,-2933,-2968,
+-3013,-3072,-3117,-3124,-3101,-3067,-3028,-2979,-2931,-2878,-2825,-2779,-2734,-2695,-2650,-2604,-2551,-2492,-2432,-2380,
+-2328,-2280,-2238,-2183,-2118,-2058,-2001,-1913,-1861,-1800,-1728,-1666,-1598,-1523,-1452,-1385,-1315,-1236,-1166,-1091,
+-1022,-953,-883,-805,-749,-674,-626,-554,-486,-422,-357,-285,-217,-161,-100,-27,43,105,139,197,
+261,331,413,488,499,541,549,574,625,647,670,706,728,745,768,787,813,830,859,885,
+895,911,927,940,962,993,1034,1047,1066,1090,1117,1130,1132,1152,1161,1169,1181,1205,1222,1254,
+1275,1293,1307,1317,1326,1344,1369,1408,1444,1461,1471,1469,1456,1460,1472,1491,1518,1554,1580,1605,
+1614,1618,1624,1629,1645,1672,1693,1712,1732,1757,1765,1769,1780,1797,1822,1852,1885,1923,1968,2003,
+2032,2047,2050,2049,2044,2044,2054,2074,2081,2069,2053,2080,2109,2116,2110,2092,2066,2044,2033,2028,
+2020,2005,1988,1969,1962,1964,1959,1950,1942,1926,1894,1853,1815,1799,1800,1812,1832,1839,1823,1800,
+1785,1768,1752,1735,1720,1707,1689,1679,1677,1679,1666,1663,1661,1658,1664,1677,1664,1644,1611,1592,
+1576,1552,1512,1473,1485,1486,1485,1500,1516,1528,1546,1581,1617,1646,1681,1711,1713,1693,1651,1587,
+1557,1547,1607,1556,1467,1439,1440,1454,1462,1426,1406,1360,1394,1370,1327,1267,1228,1207,1170,1099,
+1013,888,782,702,637,595,554,510,453,390,312,236,168,102,33,-26,-96,-167,-227,-289,
+-373,-472,-572,-656,-744,-822,-910,-1011,-1094,-1168,-1234,-1299,-1357,-1415,-1481,-1544,-1578,-1565,-1508,-1442,
+-1400,-1373,-1345,-1335,-1328,-1321,-1319,-1317,-1304,-1298,-1294,-1275,-1259,-1246,-1237,-1239,-1233,-1219,-1208,-1212,
+-1217,-1212,-1197,-1188,-1179,-1142,-1071,-992,-968,-1000,-1044,-1070,-1078,-1102,-1219,-1393,-1468,-1427,-1389,-1358,
+-1360,-1362,-1340,-1328,-1325,-1306,-1369,-1442,-1479,-1505,-1560,-1573,-1557,-1594,-1637,-1700,-1701,-1687,-1661,-1851,
+-1954,-2003,-2036,-2107,-2159,-2157,-2194,-2274,-2337,-2356,-2411,-2482,-2560,-2598,-2664,-2753,-2801,-2846,-2916,-2986,
+-3011,-3011,-2990,-2996,-3040,-3114,-3193,-3268,-3346,-3430,-3511,-3605,-3680,-3720,-3775,-3834,-3909,-4048,-4211,-4365,
+-4498,-4639,-4758,-4838,-4878,-4886,-4923,-5001,-5014,-5008,-4906,-4942,-5099,-5075,-5139,-5141,-5089,-5041,-5047,-5092,
+-5138,-5193,-5235,-5237,-5239,-5225,-5246,-5275,-5310,-5349,-5386,-5430,-5473,-5522,-5561,-5601,-5636,-5670,-5696,-5721,
+-5777,-5830,-5899,-5967,-6002,-6044,-6100,-6160,-6232,-6243,-6322,-6395,-6424,-6496,-6561,-6630,-6706,-6762,-6822,-6896,
+-6962,-7006,-7090,-7154,-7234,-7277,-7320,-7365,-7437,-7487,-7597,-7638,-7690,-7750,-7854,-7960,-7993,-8070,-8203,-8297,
+-8394,-8459,-8588,-8703,-8771,-8890,-8922,-9020,-9120,-9161,-9246,-9331,-9421,-9482,-9525,-9600,-9651,-9673,-9728,-9764,
+-9772,-9667,-9536,-9581,-9693,-9841,-9895,-9922,-9948,-9998,-10087,-10178,-10220,-10255,-10282,-10319,-10352,-10377,-10396,-10407,
+-10401,-10357,-10320,-10319,-10327,-10334,-10375,-10389,-10371,-10377,-10375,-10382,-10378,-10360,-10341,-10305,-10259,-10211,-10153,-10092,
+-10032,-9967,-9877,-9788,-9696,-9614,-9542,-9443,-9320,-9170,-9020,-8873,-8739,-8609,-8484,-8368,-8244,-8149,-8043,-7902,
+-7737,-7565,-7389,-7214,-7040,-6857,-6670,-6513,-6370,-6200,-6026,-5842,-5670,-5547,-5492,-5435,-5334,-5212,-5112,-5040,
+-4979,-4894,-4830,-4751,-4695,-4633,-4521,-4332,-4083,-3825,-3610,-3448,-3256,-3024,-2965,-2983,-2986,-2950,-2847,-2736,
+-2548,-2268,-1987,-1618,-1362,-1256,-1139,-1138,-1107,-1030,-946,-863,-768,-660,-546,-427,-313,-217,-100,20,
+124,204,289,389,470,555,650,760,847,942,1027,1090,1151,1243,1348,1463,1588,1707,1782,1855,
+1937,2032,2131,2246,2353,2423,2506,2599,2679,2776,2879,2973,3061,3162,3260,3354,3461,3556,3649,3736,
+3837,4002,4116,4246,4372,4486,4583,4691,4810,4953,5090,5239,5266,5298,5369,5423,5479,5545,5602,5661,
+5639,5588,5562,5500,5448,5401,5399,5437,5492,5563,5618,5661,5703,5747,5805,5877,5944,5999,6063,6161,
+6235,6308,6381,6466,6561,6661,6741,6819,6877,6946,7057,7164,7170,6936,6533,6052,5598,5412,5435,5676,
+5904,6019,6184,6410,6740,6818,6785,6841,7066,7196,7253,7283,7278,7305,7373,7357,7339,7474,7437,7430,
+7409,7352,7405,7362,7303,7298,7235,7161,7124,7106,7100,7091,7070,7062,7042,7027,7005,6991,6973,6967,
+6948,6924,6921,6909,6902,6888,6874,6866,6854,6840,6838,6836,6844,6842,6848,6856,6868,6867,6853,6820,
+6767,6739,6708,6669,6647,6626,6595,6581,6558,6533,6514,6505,6489,6476,6458,6440,6425,6422,6408,6393,
+6374,6345,6294,6230,6133,6102,6170,6125,6058,5835,5788,5800,5764,5698,5627,5583,5546,5502,5492,5521,
+5555,5534,5492,5480,5518,5582,5598,5583,5564,5543,5517,5502,5483,5439,5424,5454,5446,5388,5316,5238,
+5168,5116,5070,5051,5037,5016,4969,4930,4928,4806,4726,4688,4657,4633,4603,4555,4498,4425,4343,4268,
+4218,4195,4152,4109,4066,4013,3974,3933,3897,3861,3816,3767,3705,3648,3608,3580,3552,3495,3431,3368,
+3316,3276,3244,3205,3157,3102,3063,3059,3061,3049,3036,3011,2984,2944,2911,2878,2827,2757,2691,2637,
+2634,2741,2731,2609,2553,2525,2508,2507,2485,2451,2414,2380,2340,2296,2280,2235,2117,2157,2102,2079,
+2055,2049,2036,2011,1997,1983,1975,1968,1938,1932,1932,1902,1891,1873,1865,1860,1859,1849,1823,1815,
+1805,1739,1720,1709,1702,1716,1722,1712,1703,1685,1668,1663,1653,1635,1628,1588,1547,1524,1520,1506,
+1470,1434,1412,1407,1407,1409,1411,1411,1406,1397,1389,1386,1390,1387,1395,1382,1372,1366,1374,1381,
+1389,1397,1401,1407,1399,1408,1410,1409,1437,1564,1660,1506,1487,1499,1510,1515,1522,1540,1551,1554,
+1572,1583,1610,1630,1645,1654,1662,1670,1669,1673,1688,1706,1713,1729,1737,1782,1815,1813,1804,1687,
+1662,1670,1666,1662,1651,1641,1621,1590,1562,1530,1496,1465,1444,1427,1416,1408,1403,1387,1367,1339,
+1303,1276,1247,1220,1202,1195,1187,1175,1154,1130,1100,1074,1048,1026,1004,982,954,930,903,879,
+857,831,802,769,741,712,683,653,625,595,559,522,487,458,428,389,352,317,279,239,
+200,165,134,97,62,36,6,-22,-54,-88,-130,-175,-229,-276,-318,-351,-381,-416,-462,-510,
+-555,-598,-645,-683,-723,-773,-816,-854,-896,-937,-966,-1004,-1048,-1084,-1111,-1151,-1199,-1232,-1258,-1291,
+-1322,-1357,-1394,-1424,-1457,-1491,-1528,-1566,-1603,-1636,-1677,-1714,-1752,-1772,-1797,-1825,-1861,-1891,-1921,-1950,
+-1976,-2003,-2029,-2067,-2109,-2144,-2174,-2208,-2236,-2265,-2295,-2325,-2352,-2378,-2403,-2429,-2457,-2480,-2505,-2527,
+-2543,-2563,-2585,-2606,-2627,-2643,-2656,-2670,-2681,-2690,-2698,-2706,-2719,-2728,-2742,-2756,-2769,-2784,-2788,-2779,
+-2768,-2757,-2751,-2746,-2743,-2747,-2740,-2719,-2693,-2676,-2660,-2649,-2637,-2624,-2609,-2589,-2574,-2562,-2547,-2528,
+-2514,-2497,-2484,-2465,-2445,-2424,-2403,-2377,-2355,-2336,-2319,-2302,-2282,-2263,-2243,-2223,-2202,-2181,-2158,-2134,
+-2111,-2084,-2052,-2021,-1990,-1961,-1933,-1911,-1889,-1873,-1851,-1835,-1813,-1792,-1768,-1744,-1722,-1701,-1675,-1650,
+-1626,-1605,-1579,-1553,-1522,-1497,-1470,-1441,-1426,-1377,-1353,-1337,-1299,-1263,-1224,-1201,-1180,-1153,-1122,-1107,
+-1086,-1060,-1034,-996,-956,-927,-891,-858,-832,-805,-777,-746,-718,-691,-668,-644,-619,-591,-560,-531,
+-505,-472,-445,-419,-390,-368,-336,-309,-274,-259,-240,-198,-175,-140,-113,-97,-63,-21,-14,5,
+13,28,82,111,143,184,204,239,278,301,358,416,405,480,539,574,627,679,710,756,
+876,927,965,1008,1045,1110,1166,1198,1257,1173,1234,1158,1057,1035,1165,1309,1460,1606,1654,1790,
+2037,2347,2673,2833,2917,3146,2898,2577,2188,2192,2362,2294,2119,2039,2269,1911,1690,1582,1560,1530,
+1458,1363,1275,1194,1121,1054,992,927,857,782,694,602,522,464,442,441,406,331,239,138,
+7,-155,-320,-439,-535,-597,-622,-614,-636,-668,-696,-675,-586,-503,-519,-626,-701,-801,-896,-987,
+-1057,-1106,-1151,-1206,-1267,-1332,-1403,-1492,-1576,-1666,-1777,-1872,-1953,-2012,-2059,-2108,-2160,-2208,-2250,-2283,
+-2316,-2359,-2408,-2449,-2469,-2479,-2501,-2563,-2610,-2646,-2687,-2762,-2826,-2891,-2964,-3011,-3038,-3042,-3037,-3029,
+-3026,-3018,-3012,-3017,-3022,-3039,-3045,-3021,-3004,-3027,-3064,-3068,-3039,-3007,-2988,-2956,-2923,-2888,-2872,-2906,
+-2981,-3052,-3106,-3147,-3154,-3125,-3076,-3023,-2971,-2922,-2874,-2824,-2774,-2728,-2683,-2631,-2578,-2525,-2462,-2405,
+-2358,-2302,-2253,-2206,-2161,-2110,-2056,-2007,-1928,-1868,-1795,-1731,-1664,-1595,-1528,-1464,-1391,-1308,-1241,-1169,
+-1104,-1031,-964,-878,-825,-758,-691,-639,-573,-511,-441,-370,-320,-257,-181,-111,-41,19,94,147,
+209,285,342,415,447,473,557,604,607,621,651,684,710,737,772,789,800,824,850,873,
+885,904,919,942,972,992,1014,1033,1049,1076,1092,1092,1114,1129,1136,1137,1155,1165,1184,1213,
+1239,1258,1270,1276,1281,1288,1306,1341,1370,1406,1433,1433,1427,1421,1415,1429,1454,1480,1514,1538,
+1560,1567,1569,1566,1570,1581,1602,1622,1646,1665,1691,1719,1735,1748,1772,1805,1846,1887,1923,1951,
+1961,1962,1964,1976,1991,2005,2034,2066,2089,2087,2069,2049,2053,2062,2058,2040,2018,2003,1993,1986,
+1985,1978,1969,1943,1915,1900,1900,1894,1885,1877,1860,1836,1831,1853,1873,1883,1885,1872,1842,1812,
+1788,1776,1758,1736,1713,1699,1695,1685,1675,1667,1666,1653,1658,1676,1696,1699,1688,1664,1645,1623,
+1607,1579,1538,1514,1520,1513,1508,1516,1521,1520,1521,1528,1545,1562,1572,1590,1611,1618,1599,1569,
+1546,1524,1506,1527,1553,1426,1402,1394,1370,1361,1342,1370,1366,1362,1351,1315,1271,1258,1206,1146,
+1061,967,844,737,650,582,535,489,433,373,305,228,147,89,23,-51,-109,-168,-235,-302,
+-363,-434,-528,-635,-742,-831,-906,-1000,-1111,-1208,-1286,-1341,-1394,-1439,-1493,-1563,-1634,-1679,-1666,-1610,
+-1530,-1475,-1444,-1421,-1416,-1411,-1394,-1394,-1385,-1369,-1359,-1346,-1321,-1298,-1284,-1277,-1270,-1261,-1244,-1229,
+-1225,-1229,-1221,-1204,-1186,-1169,-1135,-1064,-993,-963,-976,-1001,-1009,-1021,-1048,-1200,-1394,-1497,-1453,-1405,
+-1366,-1367,-1350,-1346,-1339,-1333,-1335,-1390,-1475,-1495,-1436,-1507,-1563,-1569,-1613,-1642,-1672,-1654,-1660,-1675,
+-1829,-1935,-1972,-1997,-2110,-2217,-2235,-2208,-2274,-2352,-2400,-2452,-2528,-2605,-2645,-2688,-2774,-2828,-2880,-2946,
+-2999,-3011,-3000,-2992,-3015,-3062,-3140,-3228,-3317,-3409,-3491,-3574,-3647,-3698,-3732,-3812,-3912,-4048,-4172,-4341,
+-4475,-4590,-4716,-4830,-4902,-4929,-4924,-4957,-5034,-5062,-5041,-4943,-4958,-5076,-5095,-5101,-5048,-5042,-5046,-5066,
+-5101,-5138,-5193,-5218,-5226,-5222,-5226,-5248,-5277,-5307,-5346,-5386,-5428,-5471,-5518,-5553,-5593,-5613,-5646,-5673,
+-5717,-5738,-5805,-5887,-5945,-6015,-6054,-6118,-6156,-6239,-6313,-6339,-6398,-6446,-6515,-6572,-6637,-6715,-6778,-6841,
+-6909,-6965,-7021,-7086,-7141,-7242,-7291,-7345,-7393,-7444,-7508,-7596,-7625,-7708,-7765,-7823,-7918,-8021,-8069,-8167,
+-8276,-8346,-8445,-8599,-8667,-8776,-8851,-8921,-9025,-9069,-9135,-9237,-9349,-9415,-9457,-9521,-9595,-9636,-9649,-9711,
+-9749,-9766,-9699,-9529,-9562,-9735,-9837,-9879,-9903,-9933,-9977,-10052,-10159,-10204,-10233,-10259,-10297,-10327,-10355,-10377,
+-10395,-10397,-10366,-10327,-10317,-10307,-10296,-10333,-10391,-10394,-10381,-10341,-10361,-10362,-10346,-10327,-10302,-10262,-10208,-10159,
+-10102,-10047,-9983,-9902,-9818,-9735,-9662,-9572,-9446,-9292,-9131,-8979,-8840,-8728,-8602,-8465,-8309,-8191,-8136,-8046,
+-7897,-7728,-7553,-7379,-7209,-7027,-6838,-6647,-6459,-6324,-6203,-6061,-5872,-5698,-5584,-5518,-5448,-5336,-5222,-5127,
+-5053,-4980,-4883,-4791,-4684,-4631,-4577,-4509,-4408,-4234,-3975,-3700,-3465,-3261,-3061,-2947,-2832,-2870,-2875,-2804,
+-2773,-2613,-2332,-2042,-1681,-1338,-1190,-1077,-988,-1034,-994,-917,-839,-758,-632,-512,-401,-288,-190,-91,
+27,132,235,331,446,507,607,694,799,905,994,1082,1145,1211,1299,1400,1506,1621,1737,1829,
+1914,1991,2072,2169,2268,2369,2469,2555,2650,2735,2838,2939,3042,3133,3227,3325,3428,3530,3630,3720,
+3821,3945,4075,4180,4305,4412,4529,4632,4727,4882,5047,5189,5284,5351,5367,5404,5458,5512,5534,5609,
+5695,5713,5676,5648,5571,5470,5369,5330,5352,5415,5467,5512,5559,5615,5665,5726,5799,5866,5906,5979,
+6059,6122,6193,6271,6351,6455,6566,6655,6733,6823,6931,6990,7114,7024,6751,6388,5932,5521,5344,5372,
+5663,5989,6267,6559,6829,7099,7041,6889,6896,7086,7201,7216,7292,7307,7333,7383,7359,7377,7396,7400,
+7435,7440,7347,7427,7405,7336,7274,7230,7188,7152,7145,7130,7122,7108,7095,7079,7066,7045,7026,7019,
+7000,6970,6956,6959,6943,6919,6914,6902,6890,6882,6877,6873,6876,6883,6882,6886,6891,6895,6900,6882,
+6844,6807,6771,6755,6715,6684,6653,6625,6608,6583,6568,6556,6538,6518,6502,6491,6471,6451,6447,6446,
+6428,6395,6365,6325,6246,6120,6053,6214,6186,6132,5948,5828,5857,5811,5733,5661,5607,5586,5555,5520,
+5527,5574,5587,5547,5523,5545,5594,5615,5617,5609,5580,5551,5529,5491,5434,5423,5455,5461,5406,5344,
+5270,5205,5146,5105,5088,5074,5047,5000,4953,4914,4794,4710,4674,4644,4615,4597,4562,4518,4450,4383,
+4318,4260,4226,4188,4134,4090,4046,3991,3949,3919,3894,3860,3818,3757,3696,3656,3644,3610,3539,3472,
+3409,3370,3332,3288,3242,3194,3143,3091,3084,3089,3079,3060,3062,3043,3002,2961,2919,2847,2772,2708,
+2650,2630,2660,2676,2626,2642,2571,2551,2564,2535,2495,2426,2388,2352,2323,2302,2293,2115,2163,2136,
+2114,2086,2070,2054,2028,2007,1989,1981,1969,1952,1948,1956,1937,1918,1903,1893,1888,1886,1874,1846,
+1814,1785,1759,1737,1731,1725,1730,1733,1730,1724,1710,1694,1680,1662,1640,1611,1580,1547,1538,1548,
+1589,1521,1464,1429,1411,1403,1403,1409,1407,1404,1400,1397,1399,1418,1419,1416,1396,1379,1373,1376,
+1379,1387,1403,1404,1413,1407,1410,1414,1413,1431,1476,1513,1505,1506,1509,1505,1507,1525,1559,1557,
+1547,1551,1552,1574,1605,1631,1646,1651,1668,1675,1673,1700,1720,1729,1735,1782,1784,1790,1794,1798,
+1745,1680,1662,1647,1637,1638,1632,1620,1596,1569,1536,1502,1468,1443,1424,1405,1390,1378,1372,1362,
+1358,1347,1340,1321,1292,1267,1241,1213,1192,1169,1143,1115,1089,1068,1049,1030,1003,978,952,929,
+906,883,857,826,797,769,740,709,676,647,616,589,554,521,488,455,417,379,340,302,
+264,225,187,153,121,87,57,22,-4,-37,-74,-116,-164,-206,-246,-277,-327,-356,-391,-431,
+-480,-526,-561,-609,-653,-692,-739,-784,-822,-865,-905,-940,-980,-1015,-1052,-1092,-1125,-1168,-1201,-1230,
+-1257,-1286,-1323,-1349,-1380,-1415,-1449,-1483,-1524,-1559,-1597,-1632,-1664,-1695,-1727,-1761,-1795,-1832,-1859,-1889,
+-1913,-1937,-1966,-2001,-2038,-2075,-2105,-2136,-2168,-2194,-2223,-2254,-2285,-2312,-2336,-2361,-2390,-2418,-2444,-2473,
+-2494,-2511,-2535,-2556,-2580,-2595,-2608,-2619,-2633,-2639,-2649,-2656,-2668,-2679,-2689,-2703,-2717,-2728,-2741,-2743,
+-2739,-2728,-2721,-2719,-2718,-2714,-2710,-2701,-2686,-2665,-2651,-2635,-2623,-2608,-2591,-2575,-2556,-2540,-2525,-2511,
+-2495,-2478,-2463,-2446,-2430,-2406,-2383,-2362,-2342,-2326,-2307,-2288,-2271,-2254,-2236,-2215,-2197,-2173,-2149,-2129,
+-2110,-2094,-2072,-2039,-2002,-1971,-1945,-1920,-1899,-1876,-1858,-1838,-1821,-1803,-1784,-1762,-1745,-1721,-1699,-1672,
+-1651,-1631,-1606,-1585,-1559,-1517,-1476,-1438,-1442,-1404,-1382,-1352,-1327,-1288,-1255,-1239,-1217,-1174,-1145,-1114,
+-1096,-1068,-1045,-1013,-978,-953,-928,-887,-860,-849,-804,-786,-759,-730,-700,-674,-646,-618,-594,-571,
+-545,-518,-488,-470,-439,-408,-380,-352,-329,-296,-276,-247,-207,-194,-167,-146,-118,-94,-72,-50,
+-36,-8,10,32,65,107,158,186,220,262,280,341,382,398,473,519,550,605,641,684,
+730,830,890,968,1006,1037,1092,1144,1194,1220,1155,1166,1083,1014,1072,1206,1370,1520,1587,1690,
+1944,2221,2531,2789,2794,2910,3046,2680,2341,2218,2433,2288,2183,2072,2017,2028,1931,1745,1634,1594,
+1582,1538,1470,1396,1315,1233,1156,1086,1009,931,851,768,676,602,547,524,506,472,396,316,
+219,85,-80,-247,-376,-444,-501,-519,-511,-539,-606,-668,-653,-604,-590,-559,-642,-693,-754,-864,
+-934,-987,-1027,-1071,-1109,-1132,-1210,-1326,-1424,-1501,-1594,-1710,-1813,-1897,-1962,-2022,-2076,-2120,-2165,-2207,
+-2246,-2281,-2316,-2354,-2381,-2390,-2405,-2421,-2468,-2530,-2572,-2612,-2687,-2763,-2829,-2891,-2934,-2961,-2973,-2988,
+-2992,-2981,-2960,-2939,-2932,-2943,-2960,-2977,-2969,-2969,-2982,-3000,-3026,-3012,-2995,-2989,-2967,-2935,-2897,-2862,
+-2862,-2957,-3068,-3138,-3180,-3193,-3168,-3106,-3044,-2984,-2935,-2885,-2832,-2780,-2726,-2674,-2616,-2560,-2504,-2444,
+-2390,-2340,-2292,-2238,-2182,-2124,-2087,-2035,-1987,-1925,-1859,-1782,-1718,-1652,-1590,-1530,-1471,-1409,-1334,-1255,
+-1174,-1099,-1020,-938,-874,-816,-747,-680,-626,-576,-527,-460,-403,-336,-275,-198,-128,-52,16,68,
+112,173,238,320,393,451,490,540,549,625,660,654,688,710,730,752,775,799,826,864,
+874,903,912,927,959,970,974,990,1019,1035,1062,1079,1097,1097,1103,1129,1141,1154,1173,1179,
+1175,1195,1231,1244,1250,1250,1267,1275,1308,1341,1362,1371,1365,1363,1358,1358,1381,1403,1424,1454,
+1469,1482,1492,1491,1487,1486,1494,1511,1536,1562,1600,1636,1682,1702,1724,1749,1776,1791,1806,1825,
+1851,1892,1937,1968,1992,2014,2024,2026,2034,2058,2071,2069,2055,2046,2036,2012,1982,1960,1947,1943,
+1939,1936,1938,1917,1881,1852,1830,1823,1818,1821,1833,1849,1866,1898,1914,1915,1908,1884,1860,1831,
+1803,1783,1765,1741,1717,1700,1692,1685,1674,1666,1659,1653,1671,1696,1715,1708,1702,1689,1669,1651,
+1635,1611,1570,1550,1558,1556,1543,1545,1545,1539,1529,1520,1526,1534,1535,1540,1541,1548,1555,1556,
+1556,1537,1497,1465,1449,1433,1410,1394,1360,1314,1321,1322,1340,1346,1376,1349,1300,1251,1192,1132,
+1064,986,894,803,706,623,556,504,460,393,308,225,136,65,11,-23,-80,-144,-220,-290,
+-368,-439,-502,-594,-699,-818,-914,-986,-1085,-1207,-1317,-1395,-1440,-1464,-1487,-1525,-1591,-1663,-1723,-1735,
+-1682,-1609,-1541,-1509,-1498,-1501,-1503,-1494,-1492,-1487,-1469,-1455,-1434,-1407,-1378,-1354,-1331,-1305,-1284,-1273,
+-1255,-1238,-1234,-1228,-1208,-1183,-1153,-1116,-1059,-1009,-991,-999,-1007,-980,-997,-1042,-1197,-1463,-1548,-1468,
+-1403,-1369,-1381,-1371,-1369,-1382,-1391,-1424,-1464,-1494,-1506,-1479,-1427,-1535,-1580,-1630,-1659,-1640,-1661,-1570,
+-1641,-1776,-1875,-1936,-1980,-2140,-2263,-2305,-2263,-2275,-2354,-2435,-2503,-2556,-2629,-2692,-2747,-2809,-2863,-2912,
+-2959,-3009,-3011,-3007,-3015,-3042,-3090,-3169,-3269,-3370,-3461,-3546,-3616,-3671,-3710,-3776,-3889,-4056,-4200,-4338,
+-4463,-4565,-4680,-4810,-4920,-4985,-5013,-5024,-5048,-5089,-5113,-5070,-4959,-4908,-5001,-5049,-5020,-5028,-5038,-5055,
+-5073,-5101,-5133,-5178,-5209,-5223,-5227,-5229,-5251,-5279,-5307,-5344,-5382,-5421,-5463,-5506,-5539,-5570,-5608,-5623,
+-5648,-5693,-5734,-5777,-5863,-5935,-5994,-6046,-6134,-6178,-6217,-6301,-6350,-6387,-6465,-6507,-6563,-6638,-6714,-6780,
+-6838,-6895,-6947,-7026,-7088,-7149,-7237,-7305,-7353,-7411,-7458,-7552,-7581,-7656,-7725,-7780,-7852,-7902,-7952,-8088,
+-8133,-8253,-8335,-8484,-8546,-8660,-8747,-8811,-8938,-8987,-9034,-9138,-9259,-9337,-9381,-9451,-9518,-9577,-9617,-9633,
+-9692,-9736,-9746,-9706,-9546,-9604,-9730,-9812,-9853,-9880,-9919,-9960,-10027,-10131,-10178,-10215,-10245,-10290,-10318,-10341,
+-10367,-10383,-10390,-10378,-10337,-10320,-10315,-10307,-10332,-10385,-10396,-10378,-10371,-10355,-10345,-10341,-10321,-10292,-10257,-10211,
+-10165,-10123,-10067,-10008,-9931,-9847,-9764,-9679,-9568,-9429,-9264,-9111,-8967,-8852,-8739,-8610,-8459,-8306,-8215,-8165,
+-8041,-7877,-7698,-7522,-7359,-7186,-7001,-6807,-6615,-6431,-6296,-6206,-6085,-5932,-5783,-5672,-5569,-5475,-5343,-5224,
+-5138,-5071,-4990,-4880,-4759,-4626,-4553,-4495,-4438,-4362,-4234,-4068,-3880,-3665,-3397,-3196,-3071,-2942,-2858,-2744,
+-2720,-2717,-2613,-2374,-2101,-1769,-1446,-1167,-1048,-956,-936,-935,-890,-799,-708,-590,-471,-369,-275,-180,
+-88,28,140,251,360,459,529,645,738,839,951,1041,1118,1196,1269,1352,1447,1556,1658,1762,
+1883,1956,2039,2117,2205,2303,2400,2502,2599,2684,2765,2888,2992,3093,3186,3281,3385,3487,3590,3692,
+3789,3899,4020,4139,4227,4332,4454,4583,4673,4789,4927,5092,5219,5330,5394,5431,5520,5538,5539,5557,
+5618,5681,5720,5726,5722,5712,5669,5523,5321,5278,5316,5375,5432,5504,5587,5663,5735,5797,5834,5868,
+5916,5961,6014,6077,6149,6231,6325,6446,6547,6642,6757,6892,6954,7054,6910,6589,6274,5867,5529,5374,
+5422,5760,6191,6688,6900,7115,7286,7075,6937,6928,7080,7132,7200,7279,7321,7362,7367,7370,7349,7370,
+7414,7438,7474,7386,7438,7387,7348,7324,7268,7231,7180,7165,7144,7128,7121,7114,7107,7092,7073,7061,
+7044,7028,7006,6979,6995,6975,6966,6955,6945,6930,6917,6909,6911,6910,6913,6924,6927,6920,6920,6915,
+6902,6878,6833,6804,6787,6750,6712,6683,6660,6637,6617,6608,6600,6568,6546,6530,6518,6504,6486,6479,
+6481,6470,6432,6392,6351,6269,6121,5991,6255,6268,6202,6093,5898,5905,5860,5751,5686,5639,5619,5600,
+5568,5547,5577,5625,5614,5603,5592,5600,5621,5644,5651,5640,5613,5577,5537,5478,5447,5468,5475,5434,
+5373,5305,5240,5179,5146,5126,5109,5083,5034,4975,4886,4789,4721,4679,4653,4617,4597,4572,4529,4474,
+4413,4354,4302,4255,4207,4154,4110,4067,4015,3972,3944,3927,3893,3859,3807,3757,3720,3699,3659,3598,
+3534,3475,3432,3383,3343,3296,3247,3184,3127,3101,3099,3079,3066,3082,3085,3048,2998,2936,2857,2785,
+2724,2676,2661,2711,2709,2737,2783,2614,2593,2695,2621,2543,2435,2389,2357,2329,2307,2326,2166,2147,
+2145,2133,2109,2089,2075,2050,2026,2002,1979,1962,1943,1935,1950,1944,1932,1917,1911,1910,1902,1888,
+1867,1841,1810,1785,1766,1751,1748,1753,1755,1751,1745,1732,1719,1694,1666,1639,1615,1589,1556,1549,
+1554,1563,1543,1499,1463,1430,1413,1407,1406,1402,1398,1399,1399,1414,1446,1446,1430,1413,1397,1393,
+1388,1392,1403,1414,1418,1421,1411,1421,1427,1423,1431,1459,1500,1565,1587,1561,1522,1517,1532,1552,
+1564,1564,1583,1546,1546,1571,1600,1623,1633,1654,1668,1672,1700,1725,1729,1729,1740,1762,1802,1841,
+1820,1808,1807,1757,1665,1645,1648,1643,1628,1605,1583,1555,1524,1491,1462,1422,1400,1384,1379,1376,
+1373,1373,1369,1364,1353,1334,1315,1285,1250,1230,1203,1172,1147,1106,1083,1064,1050,1025,997,971,
+944,922,898,880,850,817,784,750,721,701,679,653,622,595,560,522,486,449,410,372,
+334,293,254,210,178,138,95,60,30,-2,-32,-67,-102,-150,-182,-219,-264,-303,-335,-372,
+-414,-458,-500,-540,-583,-625,-667,-715,-761,-802,-842,-884,-921,-957,-988,-1021,-1067,-1104,-1138,-1164,
+-1188,-1222,-1254,-1283,-1314,-1346,-1384,-1410,-1450,-1489,-1521,-1554,-1590,-1620,-1646,-1680,-1717,-1751,-1786,-1818,
+-1849,-1877,-1904,-1936,-1981,-2014,-2050,-2075,-2096,-2126,-2157,-2195,-2227,-2252,-2278,-2305,-2333,-2360,-2392,-2423,
+-2446,-2462,-2480,-2498,-2519,-2538,-2554,-2566,-2581,-2595,-2604,-2612,-2621,-2634,-2645,-2659,-2671,-2683,-2687,-2692,
+-2689,-2691,-2688,-2688,-2685,-2681,-2679,-2671,-2663,-2657,-2639,-2633,-2613,-2592,-2576,-2561,-2543,-2523,-2506,-2495,
+-2480,-2463,-2441,-2424,-2409,-2393,-2371,-2353,-2334,-2315,-2294,-2278,-2265,-2247,-2228,-2210,-2194,-2173,-2149,-2124,
+-2102,-2088,-2066,-2044,-2016,-1985,-1958,-1928,-1906,-1885,-1863,-1844,-1828,-1810,-1794,-1778,-1755,-1736,-1713,-1697,
+-1673,-1654,-1630,-1606,-1583,-1559,-1564,-1538,-1496,-1455,-1410,-1401,-1372,-1336,-1312,-1281,-1261,-1212,-1176,-1160,
+-1136,-1107,-1067,-1037,-1019,-981,-973,-943,-919,-890,-859,-842,-803,-782,-757,-730,-704,-678,-648,-617,
+-580,-545,-515,-493,-474,-448,-421,-399,-370,-344,-315,-300,-270,-238,-219,-199,-176,-151,-130,-95,
+-71,-52,-35,-11,17,56,85,121,165,199,240,263,325,364,367,464,482,527,571,617,
+656,695,790,832,934,977,1023,1093,1137,1175,1156,1150,1099,1041,1022,1143,1213,1380,1531,1603,
+1828,2149,2469,2723,2645,2820,2963,2903,2607,2273,2347,2340,2176,2107,2040,2007,1993,1909,1780,1697,
+1646,1640,1627,1577,1512,1428,1339,1250,1166,1084,1003,921,838,756,679,627,594,557,532,466,
+383,273,147,-16,-181,-308,-362,-406,-403,-386,-413,-512,-613,-651,-668,-663,-658,-688,-695,-751,
+-842,-903,-960,-994,-1012,-1026,-1058,-1126,-1237,-1341,-1427,-1512,-1639,-1747,-1832,-1902,-1970,-2030,-2071,-2106,
+-2150,-2194,-2238,-2274,-2304,-2330,-2345,-2361,-2392,-2413,-2468,-2533,-2583,-2633,-2699,-2772,-2825,-2862,-2891,-2914,
+-2935,-2934,-2913,-2889,-2867,-2848,-2861,-2887,-2910,-2919,-2914,-2929,-2937,-2966,-2973,-2973,-2969,-2959,-2932,-2901,
+-2864,-2844,-2884,-3011,-3107,-3177,-3214,-3200,-3147,-3087,-3024,-2968,-2913,-2856,-2800,-2731,-2667,-2610,-2551,-2495,
+-2439,-2380,-2327,-2273,-2216,-2155,-2091,-2056,-1999,-1901,-1901,-1833,-1759,-1688,-1637,-1575,-1518,-1456,-1399,-1335,
+-1265,-1196,-1119,-1050,-980,-911,-846,-784,-727,-678,-642,-585,-514,-434,-370,-296,-219,-149,-98,-12,
+33,117,168,224,287,357,429,494,545,565,632,661,660,683,700,725,748,799,800,824,
+840,857,868,896,927,948,958,980,1002,1024,1046,1062,1081,1093,1096,1102,1106,1125,1132,1143,
+1156,1164,1167,1173,1182,1196,1210,1222,1231,1257,1296,1309,1297,1276,1277,1283,1299,1328,1355,1380,
+1383,1395,1424,1406,1401,1394,1392,1409,1437,1475,1510,1536,1565,1580,1600,1617,1630,1659,1701,1751,
+1799,1859,1908,1953,1974,1991,2007,2009,2014,2018,2032,2053,2060,2045,2027,2007,1969,1921,1901,1893,
+1885,1877,1871,1857,1828,1799,1776,1768,1773,1799,1844,1887,1911,1921,1924,1923,1917,1901,1877,1848,
+1813,1786,1766,1754,1739,1713,1689,1679,1672,1665,1654,1653,1671,1717,1712,1709,1709,1701,1689,1670,
+1646,1628,1607,1598,1595,1595,1596,1592,1581,1566,1558,1547,1533,1535,1540,1535,1529,1527,1527,1538,
+1558,1576,1582,1545,1488,1449,1424,1414,1394,1351,1324,1324,1291,1312,1340,1332,1305,1266,1207,1140,
+1068,980,917,853,780,703,629,562,497,432,366,270,162,63,-9,-33,-58,-104,-169,-267,
+-356,-447,-524,-595,-688,-789,-896,-979,-1058,-1162,-1286,-1396,-1472,-1505,-1514,-1530,-1553,-1604,-1670,-1743,
+-1765,-1730,-1675,-1609,-1583,-1580,-1596,-1610,-1614,-1616,-1617,-1598,-1571,-1542,-1510,-1482,-1440,-1393,-1336,-1294,
+-1277,-1278,-1258,-1244,-1238,-1223,-1183,-1141,-1103,-1074,-1040,-1029,-1023,-1013,-958,-962,-1076,-1408,-1611,-1579,
+-1464,-1397,-1373,-1391,-1397,-1419,-1443,-1465,-1502,-1536,-1520,-1512,-1504,-1480,-1482,-1571,-1547,-1628,-1640,-1661,
+-1556,-1604,-1723,-1819,-1942,-2068,-2164,-2290,-2365,-2348,-2305,-2367,-2442,-2523,-2609,-2673,-2729,-2787,-2850,-2894,
+-2932,-2958,-3007,-3017,-3026,-3039,-3071,-3119,-3200,-3306,-3412,-3509,-3589,-3654,-3713,-3794,-3904,-4040,-4191,-4315,
+-4446,-4556,-4664,-4781,-4904,-5000,-5063,-5091,-5119,-5151,-5157,-5134,-5059,-4928,-4873,-4946,-4974,-5002,-5031,-5043,
+-5051,-5072,-5098,-5135,-5176,-5206,-5222,-5222,-5236,-5250,-5276,-5306,-5338,-5374,-5411,-5449,-5487,-5516,-5548,-5582,
+-5609,-5634,-5665,-5718,-5781,-5825,-5905,-5983,-6036,-6114,-6195,-6248,-6290,-6332,-6356,-6445,-6509,-6593,-6649,-6713,
+-6763,-6822,-6878,-6943,-7013,-7079,-7145,-7237,-7278,-7361,-7428,-7486,-7523,-7591,-7677,-7738,-7794,-7870,-7895,-7952,
+-8093,-8117,-8206,-8336,-8435,-8527,-8651,-8715,-8822,-8878,-8947,-9053,-9155,-9236,-9296,-9359,-9466,-9509,-9551,-9587,
+-9638,-9680,-9700,-9723,-9716,-9680,-9620,-9611,-9788,-9836,-9869,-9897,-9948,-10022,-10118,-10162,-10199,-10227,-10269,-10305,
+-10342,-10353,-10367,-10380,-10378,-10353,-10333,-10326,-10329,-10340,-10366,-10387,-10352,-10344,-10357,-10344,-10330,-10307,-10276,-10245,
+-10207,-10166,-10125,-10075,-10005,-9927,-9829,-9736,-9650,-9545,-9402,-9257,-9116,-8986,-8871,-8748,-8608,-8471,-8366,-8270,
+-8163,-8020,-7847,-7669,-7494,-7351,-7191,-7011,-6826,-6645,-6468,-6343,-6232,-6082,-5942,-5845,-5758,-5655,-5524,-5369,
+-5235,-5136,-5075,-4995,-4875,-4725,-4577,-4477,-4397,-4328,-4246,-4131,-4001,-3886,-3783,-3625,-3413,-3214,-3075,-2917,
+-2783,-2662,-2629,-2562,-2331,-2093,-1847,-1572,-1307,-1100,-978,-886,-866,-826,-759,-662,-551,-432,-334,-244,
+-150,-55,48,170,287,392,493,597,696,787,881,991,1085,1172,1254,1329,1410,1498,1599,1705,
+1816,1924,2015,2102,2178,2251,2347,2455,2548,2647,2745,2841,2953,3049,3145,3253,3342,3439,3536,3639,
+3743,3849,3954,4055,4163,4259,4367,4483,4593,4714,4810,4957,5092,5197,5315,5404,5481,5551,5608,5595,
+5645,5670,5730,5784,5780,5732,5752,5763,5740,5472,5274,5278,5350,5439,5536,5658,5772,5871,5908,5897,
+5914,5930,5920,5940,5992,6054,6124,6209,6322,6433,6550,6714,6956,7019,6984,6712,6459,6175,5841,5602,
+5481,5578,5957,6520,6959,7024,7101,7136,7044,6962,6870,6981,7090,7202,7282,7330,7378,7387,7372,7344,
+7372,7421,7445,7490,7433,7440,7418,7381,7321,7257,7269,7214,7187,7157,7140,7139,7133,7119,7101,7096,
+7082,7066,7046,7030,7017,7015,7002,6991,6988,6979,6970,6950,6941,6940,6942,6949,6955,6949,6954,6960,
+6951,6939,6906,6880,6846,6813,6780,6746,6718,6694,6676,6656,6645,6625,6595,6576,6562,6549,6538,6521,
+6518,6515,6506,6475,6430,6376,6289,6128,5989,6274,6364,6251,6169,5987,5897,5860,5772,5711,5672,5643,
+5635,5623,5602,5597,5650,5675,5678,5643,5629,5641,5670,5675,5670,5658,5626,5590,5542,5492,5488,5487,
+5463,5407,5345,5290,5240,5201,5165,5128,5100,5051,4989,4903,4823,4753,4707,4671,4632,4598,4578,4535,
+4486,4433,4374,4329,4284,4229,4181,4136,4093,4048,4006,3971,3945,3919,3890,3850,3813,3782,3752,3704,
+3659,3607,3533,3478,3438,3412,3378,3327,3250,3187,3143,3101,3080,3077,3087,3093,3059,3000,2924,2846,
+2784,2732,2701,2727,2890,2879,2851,2687,2578,2558,2607,2634,2524,2452,2386,2352,2335,2311,2297,2231,
+2133,2154,2139,2118,2103,2095,2068,2041,2011,1982,1957,1936,1916,1938,1935,1927,1917,1916,1916,1911,
+1896,1888,1880,1867,1838,1806,1783,1773,1770,1770,1765,1756,1745,1723,1700,1663,1635,1616,1584,1570,
+1555,1548,1541,1526,1514,1511,1467,1432,1417,1407,1401,1398,1396,1400,1423,1451,1453,1445,1430,1419,
+1411,1409,1408,1412,1420,1419,1416,1410,1426,1435,1438,1444,1464,1502,1523,1627,1600,1546,1527,1544,
+1562,1593,1581,1614,1559,1527,1547,1591,1596,1611,1631,1655,1672,1685,1689,1682,1689,1706,1746,1758,
+1830,1838,1867,1993,1929,1769,1682,1672,1658,1630,1612,1592,1581,1552,1524,1484,1443,1418,1399,1386,
+1385,1385,1389,1388,1386,1380,1362,1350,1324,1297,1269,1240,1204,1170,1133,1108,1083,1066,1042,1015,
+988,960,942,922,901,869,838,801,774,748,730,708,679,648,616,579,544,506,470,436,
+407,375,336,297,251,211,166,117,79,42,14,-17,-54,-88,-128,-167,-203,-242,-275,-303,
+-349,-391,-429,-472,-512,-553,-597,-640,-687,-736,-782,-826,-866,-906,-940,-965,-997,-1043,-1080,-1113,
+-1132,-1160,-1189,-1219,-1253,-1284,-1321,-1360,-1389,-1424,-1449,-1484,-1519,-1551,-1578,-1605,-1642,-1678,-1708,-1746,
+-1785,-1816,-1838,-1861,-1896,-1942,-1978,-2015,-2038,-2063,-2095,-2133,-2166,-2197,-2226,-2257,-2283,-2308,-2337,-2368,
+-2391,-2406,-2427,-2449,-2467,-2484,-2504,-2519,-2530,-2544,-2557,-2570,-2580,-2592,-2605,-2618,-2634,-2642,-2650,-2649,
+-2650,-2651,-2652,-2654,-2651,-2644,-2647,-2644,-2636,-2628,-2621,-2608,-2594,-2577,-2554,-2540,-2527,-2509,-2490,-2476,
+-2463,-2448,-2432,-2412,-2394,-2378,-2362,-2345,-2322,-2303,-2288,-2273,-2257,-2239,-2220,-2202,-2186,-2165,-2148,-2127,
+-2107,-2086,-2071,-2049,-2017,-1989,-1968,-1943,-1918,-1892,-1868,-1848,-1832,-1814,-1799,-1786,-1769,-1754,-1736,-1716,
+-1697,-1676,-1652,-1629,-1606,-1587,-1564,-1527,-1509,-1477,-1440,-1411,-1378,-1368,-1332,-1316,-1283,-1274,-1227,-1192,
+-1174,-1126,-1112,-1083,-1060,-1025,-1009,-981,-943,-930,-911,-886,-868,-845,-815,-781,-754,-730,-702,-676,
+-649,-623,-587,-546,-507,-485,-453,-421,-404,-386,-367,-331,-311,-283,-269,-240,-221,-204,-176,-150,
+-122,-94,-69,-39,-15,9,31,68,102,128,181,229,252,298,336,361,433,466,501,540,
+587,629,685,745,802,864,960,1003,1091,1134,1148,1075,1113,1051,1045,1133,1211,1249,1426,1521,
+1701,1997,2315,2648,2639,2637,2981,2962,2743,2407,2296,2281,2118,2094,2042,2000,1979,1960,1903,1818,
+1750,1703,1709,1709,1679,1622,1542,1448,1351,1251,1166,1084,1000,921,832,761,710,678,651,611,
+544,444,312,170,26,-129,-241,-306,-329,-277,-221,-215,-362,-520,-574,-630,-629,-653,-695,-733,
+-791,-828,-891,-952,-982,-978,-975,-1004,-1068,-1159,-1276,-1382,-1474,-1578,-1673,-1752,-1828,-1904,-1963,-2004,
+-2040,-2089,-2137,-2180,-2214,-2254,-2285,-2301,-2337,-2375,-2408,-2438,-2502,-2554,-2604,-2669,-2727,-2779,-2818,-2844,
+-2855,-2871,-2869,-2849,-2834,-2812,-2788,-2785,-2818,-2849,-2867,-2861,-2860,-2872,-2909,-2927,-2937,-2938,-2930,-2903,
+-2877,-2842,-2819,-2816,-2864,-2979,-3094,-3177,-3172,-3144,-3104,-3061,-3008,-2952,-2891,-2824,-2747,-2672,-2614,-2557,
+-2506,-2452,-2388,-2327,-2267,-2202,-2138,-2076,-2030,-1978,-1929,-1882,-1805,-1735,-1666,-1612,-1556,-1507,-1454,-1395,
+-1335,-1272,-1195,-1126,-1050,-975,-915,-865,-810,-756,-712,-663,-594,-498,-432,-379,-315,-231,-169,-101,
+-40,25,78,137,195,253,320,379,434,524,578,604,628,650,645,679,724,750,782,808,
+827,844,884,881,917,939,949,947,956,968,991,1020,1040,1055,1064,1060,1062,1070,1088,1119,
+1123,1129,1134,1141,1153,1166,1156,1152,1153,1167,1199,1229,1244,1214,1208,1238,1271,1290,1303,1321,
+1323,1330,1328,1340,1347,1351,1355,1371,1399,1431,1447,1442,1439,1455,1490,1518,1557,1605,1671,1725,
+1763,1805,1851,1883,1924,1958,1988,2007,2004,2002,1992,1989,2001,2002,1985,1963,1940,1896,1854,1835,
+1828,1815,1820,1817,1814,1815,1819,1812,1824,1840,1854,1889,1911,1919,1926,1927,1920,1902,1878,1847,
+1819,1791,1769,1752,1738,1717,1691,1675,1667,1662,1664,1676,1698,1717,1720,1715,1706,1701,1697,1678,
+1657,1635,1617,1615,1614,1619,1625,1630,1623,1604,1590,1583,1573,1560,1556,1548,1540,1534,1528,1527,
+1541,1576,1661,1810,1754,1543,1466,1423,1403,1403,1393,1370,1376,1295,1307,1326,1304,1266,1237,1183,
+1112,1044,968,890,826,763,704,641,578,504,421,335,255,121,33,-21,-23,-50,-116,-207,
+-323,-433,-525,-606,-701,-794,-884,-971,-1044,-1126,-1232,-1346,-1442,-1507,-1530,-1530,-1550,-1573,-1618,-1670,
+-1732,-1769,-1767,-1724,-1670,-1642,-1659,-1689,-1717,-1734,-1740,-1735,-1719,-1688,-1654,-1621,-1580,-1523,-1439,-1348,
+-1299,-1282,-1289,-1293,-1284,-1276,-1253,-1210,-1157,-1121,-1091,-1067,-1057,-1064,-1065,-1038,-1070,-1349,-1585,-1582,
+-1474,-1418,-1399,-1391,-1399,-1412,-1428,-1481,-1527,-1555,-1589,-1578,-1525,-1479,-1503,-1468,-1530,-1546,-1607,-1636,
+-1647,-1539,-1524,-1650,-1789,-1912,-2092,-2189,-2275,-2398,-2436,-2429,-2420,-2466,-2551,-2653,-2729,-2772,-2823,-2882,
+-2925,-2945,-2976,-3006,-3020,-3055,-3072,-3106,-3158,-3239,-3345,-3464,-3573,-3661,-3751,-3841,-3944,-4060,-4182,-4286,
+-4409,-4529,-4627,-4741,-4857,-4963,-5042,-5093,-5124,-5156,-5182,-5163,-5111,-5032,-4898,-4905,-4948,-4985,-5011,-5037,
+-5048,-5052,-5058,-5099,-5138,-5175,-5190,-5194,-5204,-5228,-5247,-5269,-5298,-5330,-5362,-5393,-5420,-5453,-5485,-5523,
+-5568,-5591,-5624,-5650,-5689,-5762,-5831,-5884,-5960,-6028,-6119,-6188,-6237,-6316,-6340,-6384,-6429,-6516,-6569,-6659,
+-6686,-6759,-6811,-6872,-6936,-6996,-7063,-7158,-7228,-7298,-7368,-7438,-7481,-7534,-7607,-7691,-7744,-7793,-7867,-7883,
+-7991,-8085,-8083,-8179,-8329,-8390,-8545,-8603,-8711,-8782,-8873,-8939,-9054,-9139,-9199,-9273,-9369,-9423,-9485,-9512,
+-9562,-9642,-9660,-9659,-9692,-9699,-9687,-9629,-9673,-9775,-9812,-9857,-9886,-9935,-10030,-10115,-10147,-10174,-10216,-10258,
+-10290,-10319,-10343,-10346,-10367,-10375,-10360,-10347,-10344,-10334,-10340,-10350,-10368,-10369,-10324,-10368,-10355,-10321,-10296,-10263,
+-10226,-10196,-10155,-10104,-10045,-9968,-9872,-9769,-9684,-9609,-9513,-9389,-9270,-9140,-9015,-8891,-8761,-8617,-8503,-8395,
+-8275,-8149,-7996,-7828,-7652,-7483,-7334,-7200,-7045,-6881,-6721,-6553,-6415,-6246,-6061,-5913,-5850,-5790,-5696,-5563,
+-5402,-5240,-5113,-5051,-4973,-4858,-4700,-4540,-4416,-4313,-4219,-4114,-3995,-3873,-3786,-3727,-3631,-3500,-3375,-3194,
+-2984,-2857,-2691,-2572,-2452,-2269,-2036,-1844,-1650,-1419,-1157,-1006,-853,-828,-772,-711,-625,-530,-420,-310,
+-197,-105,-23,64,186,299,415,529,635,729,823,917,1026,1118,1211,1294,1373,1451,1543,1637,
+1742,1843,1949,2063,2149,2230,2323,2406,2512,2616,2714,2828,2949,3046,3109,3205,3312,3400,3489,3578,
+3671,3787,3902,4000,4108,4227,4327,4408,4515,4619,4732,4865,4981,5129,5225,5316,5426,5474,5600,5670,
+5710,5674,5719,5805,5885,5879,5831,5796,5812,5784,5678,5368,5351,5436,5540,5649,5764,5897,6040,6026,
+5951,5945,5939,5912,5913,5948,5995,6069,6147,6241,6354,6503,6729,7024,7098,6913,6614,6350,6090,5851,
+5737,5593,5786,6265,6835,7148,7098,7076,7116,7069,6948,6879,6962,7088,7206,7271,7323,7389,7385,7433,
+7450,7431,7421,7432,7460,7417,7495,7436,7372,7346,7263,7265,7222,7197,7172,7164,7158,7144,7133,7121,
+7120,7103,7082,7055,7039,7040,7022,7023,7010,7009,7004,6997,6979,6974,6978,6981,6985,6989,6985,6987,
+6988,6976,6961,6939,6910,6872,6849,6815,6782,6756,6743,6722,6706,6687,6654,6636,6618,6601,6587,6569,
+6558,6551,6548,6532,6512,6474,6412,6317,6153,6002,6281,6408,6296,6212,6111,5913,5843,5816,5794,5702,
+5679,5671,5678,5675,5666,5670,5685,5692,5673,5661,5674,5692,5689,5689,5685,5663,5642,5595,5542,5513,
+5489,5474,5441,5397,5356,5308,5256,5204,5146,5097,5051,4999,4930,4857,4790,4728,4676,4642,4609,4576,
+4542,4496,4441,4390,4348,4304,4251,4207,4164,4128,4089,4050,4006,3972,3947,3920,3889,3856,3822,3786,
+3744,3699,3640,3569,3506,3480,3453,3421,3378,3304,3218,3150,3090,3080,3088,3092,3087,3057,2994,2916,
+2843,2791,2752,2737,2774,2906,3017,2793,2656,2578,2555,2570,2570,2550,2486,2409,2371,2362,2338,2288,
+2270,2161,2164,2153,2122,2110,2097,2074,2046,2017,1993,1970,1941,1905,1921,1918,1914,1914,1924,1925,
+1919,1912,1913,1940,2015,1905,1846,1810,1788,1779,1771,1760,1748,1740,1723,1700,1666,1635,1616,1596,
+1580,1562,1543,1531,1526,1531,1591,1510,1458,1433,1416,1407,1398,1401,1405,1426,1456,1456,1449,1445,
+1441,1441,1441,1429,1423,1418,1416,1413,1412,1438,1450,1453,1460,1468,1482,1502,1522,1529,1524,1527,
+1551,1570,1567,1567,1553,1541,1537,1548,1592,1551,1567,1584,1607,1641,1665,1686,1689,1711,1747,1747,
+1803,1800,1830,1895,1966,1966,1838,1748,1686,1657,1642,1620,1594,1582,1566,1551,1515,1484,1459,1434,
+1413,1404,1400,1402,1409,1412,1402,1403,1386,1345,1324,1295,1258,1228,1193,1162,1133,1104,1088,1067,
+1040,1011,984,964,940,910,884,855,820,791,761,744,718,690,661,624,589,561,532,498,
+468,436,401,361,322,281,238,187,139,95,56,24,-14,-44,-77,-110,-145,-184,-220,-257,
+-299,-340,-381,-415,-453,-492,-537,-576,-619,-665,-714,-761,-801,-841,-879,-906,-938,-967,-1009,-1059,
+-1091,-1115,-1137,-1158,-1187,-1218,-1254,-1290,-1322,-1359,-1386,-1415,-1446,-1488,-1524,-1551,-1577,-1609,-1644,-1678,
+-1712,-1747,-1775,-1793,-1821,-1866,-1906,-1941,-1968,-1995,-2029,-2070,-2104,-2134,-2162,-2194,-2222,-2246,-2270,-2298,
+-2327,-2354,-2373,-2397,-2419,-2439,-2461,-2478,-2489,-2502,-2515,-2532,-2545,-2559,-2569,-2577,-2590,-2601,-2610,-2613,
+-2616,-2616,-2616,-2615,-2615,-2614,-2617,-2615,-2608,-2604,-2590,-2580,-2569,-2552,-2534,-2522,-2508,-2492,-2475,-2461,
+-2447,-2432,-2418,-2404,-2387,-2371,-2355,-2337,-2317,-2295,-2279,-2264,-2248,-2229,-2212,-2196,-2175,-2156,-2132,-2116,
+-2101,-2081,-2062,-2048,-2027,-2001,-1979,-1955,-1935,-1912,-1887,-1860,-1838,-1823,-1804,-1791,-1775,-1755,-1738,-1721,
+-1704,-1688,-1670,-1651,-1632,-1603,-1583,-1562,-1537,-1515,-1503,-1462,-1436,-1418,-1400,-1362,-1342,-1321,-1297,-1267,
+-1246,-1218,-1163,-1137,-1108,-1084,-1059,-1046,-1027,-1000,-977,-953,-927,-904,-876,-854,-822,-790,-759,-727,
+-699,-668,-643,-612,-584,-542,-489,-487,-468,-429,-404,-386,-359,-329,-290,-274,-262,-240,-218,-197,
+-176,-153,-125,-96,-63,-34,-1,27,56,86,119,151,198,233,276,302,340,407,441,482,
+517,572,599,675,736,797,872,907,996,1046,1073,1078,1060,1071,1034,1111,1171,1229,1372,1504,
+1597,1885,2189,2433,2505,2549,2771,2972,2845,2566,2383,2262,2106,2049,2009,1973,1956,1949,1947,1911,
+1844,1775,1756,1789,1776,1771,1717,1635,1537,1431,1338,1253,1169,1081,987,909,845,806,779,750,
+700,602,466,290,150,51,-74,-176,-227,-220,-136,-40,18,-171,-345,-508,-594,-612,-656,-726,
+-764,-789,-825,-876,-927,-952,-894,-875,-980,-1070,-1161,-1261,-1357,-1444,-1523,-1604,-1677,-1746,-1816,-1894,
+-1938,-1983,-2042,-2093,-2133,-2176,-2223,-2265,-2281,-2311,-2351,-2387,-2428,-2475,-2524,-2577,-2639,-2698,-2745,-2785,
+-2805,-2811,-2818,-2827,-2818,-2793,-2766,-2731,-2718,-2746,-2795,-2824,-2827,-2805,-2806,-2842,-2858,-2881,-2895,-2892,
+-2869,-2844,-2804,-2779,-2761,-2761,-2810,-2953,-3050,-3097,-3100,-3071,-3034,-2976,-2932,-2853,-2815,-2750,-2679,-2623,
+-2575,-2522,-2454,-2388,-2330,-2259,-2191,-2131,-2072,-2016,-1957,-1908,-1855,-1785,-1719,-1662,-1608,-1566,-1516,-1455,
+-1391,-1324,-1260,-1190,-1130,-1067,-995,-930,-880,-833,-793,-740,-672,-587,-492,-413,-368,-289,-230,-161,
+-99,-51,4,71,126,181,245,294,352,417,509,557,586,624,638,649,652,675,718,757,
+788,821,827,840,875,890,895,891,890,899,936,968,997,1011,1031,1057,1081,1092,1061,1097,
+1122,1122,1116,1117,1130,1148,1157,1170,1172,1146,1146,1170,1188,1184,1177,1221,1249,1267,1283,1316,
+1342,1315,1303,1289,1299,1312,1329,1365,1399,1391,1409,1400,1416,1446,1473,1514,1545,1581,1621,1669,
+1716,1761,1794,1834,1881,1923,1958,1977,1977,1961,1927,1905,1893,1890,1886,1878,1849,1835,1811,1806,
+1823,1844,1851,1866,1864,1889,1895,1881,1874,1870,1870,1881,1904,1923,1932,1924,1908,1890,1869,1846,
+1825,1804,1774,1749,1724,1710,1695,1679,1669,1677,1692,1703,1712,1719,1720,1714,1712,1702,1698,1690,
+1670,1654,1638,1622,1616,1618,1636,1646,1645,1635,1620,1612,1610,1603,1586,1575,1562,1550,1539,1539,
+1537,1541,1572,1739,2009,1867,1575,1457,1417,1412,1410,1417,1402,1364,1291,1306,1300,1284,1250,1214,
+1171,1123,1056,978,883,808,749,696,645,582,503,405,312,234,112,27,-12,-20,-35,-145,
+-269,-388,-512,-622,-698,-796,-881,-954,-1024,-1098,-1184,-1287,-1382,-1457,-1508,-1539,-1558,-1576,-1609,-1654,
+-1700,-1738,-1775,-1794,-1773,-1731,-1698,-1710,-1751,-1793,-1821,-1837,-1835,-1823,-1793,-1754,-1712,-1662,-1595,-1493,
+-1396,-1333,-1305,-1301,-1309,-1309,-1296,-1270,-1218,-1168,-1133,-1093,-1066,-1058,-1090,-1120,-1203,-1426,-1558,-1534,
+-1445,-1405,-1399,-1398,-1392,-1399,-1410,-1441,-1491,-1540,-1578,-1599,-1561,-1466,-1474,-1457,-1405,-1464,-1529,-1565,
+-1593,-1568,-1498,-1558,-1636,-1760,-1879,-2027,-2171,-2244,-2406,-2489,-2534,-2560,-2526,-2606,-2692,-2755,-2801,-2864,
+-2918,-2953,-2974,-2995,-3031,-3065,-3107,-3127,-3152,-3206,-3281,-3392,-3532,-3669,-3792,-3908,-4020,-4108,-4185,-4279,
+-4372,-4491,-4585,-4682,-4780,-4875,-4969,-5035,-5078,-5118,-5146,-5155,-5121,-5055,-4995,-4906,-4932,-4964,-4997,-5017,
+-5032,-5044,-5047,-5060,-5087,-5123,-5155,-5160,-5158,-5177,-5202,-5230,-5254,-5280,-5308,-5341,-5362,-5386,-5416,-5454,
+-5494,-5538,-5550,-5610,-5638,-5678,-5748,-5832,-5900,-5952,-6010,-6096,-6167,-6229,-6323,-6364,-6403,-6454,-6515,-6549,
+-6633,-6681,-6735,-6805,-6847,-6928,-6986,-7075,-7150,-7235,-7300,-7372,-7425,-7452,-7539,-7608,-7681,-7737,-7803,-7848,
+-7859,-7957,-8048,-8109,-8182,-8280,-8412,-8509,-8588,-8685,-8764,-8845,-8941,-9031,-9098,-9185,-9253,-9323,-9384,-9443,
+-9500,-9577,-9613,-9616,-9627,-9658,-9667,-9668,-9681,-9711,-9753,-9796,-9828,-9874,-9924,-10026,-10108,-10133,-10154,-10189,
+-10227,-10262,-10282,-10292,-10306,-10352,-10367,-10365,-10349,-10341,-10343,-10339,-10341,-10349,-10360,-10352,-10340,-10345,-10301,-10280,
+-10247,-10204,-10169,-10129,-10066,-9989,-9899,-9788,-9703,-9645,-9591,-9510,-9409,-9301,-9179,-9050,-8924,-8795,-8657,-8552,
+-8429,-8285,-8144,-7987,-7822,-7648,-7479,-7330,-7204,-7055,-6894,-6753,-6609,-6444,-6245,-6051,-5899,-5833,-5802,-5715,
+-5597,-5442,-5263,-5119,-5035,-4946,-4835,-4671,-4516,-4384,-4255,-4130,-3999,-3875,-3770,-3688,-3621,-3519,-3430,-3391,
+-3287,-3042,-2851,-2628,-2424,-2279,-2192,-2008,-1826,-1651,-1453,-1246,-1002,-921,-855,-759,-684,-598,-507,-405,
+-289,-163,-53,18,106,210,313,422,548,653,758,856,949,1049,1145,1240,1327,1409,1484,1583,
+1670,1764,1879,1987,2099,2200,2287,2382,2482,2569,2669,2761,2866,2979,3084,3175,3261,3369,3440,3517,
+3612,3717,3858,4011,4093,4201,4300,4408,4474,4565,4667,4786,4920,5069,5170,5237,5313,5398,5495,5663,
+5693,5692,5669,5728,5792,5892,5918,5937,5891,5851,5802,5703,5513,5403,5481,5595,5721,5878,6130,6279,
+6180,6094,6083,6042,5997,5952,5971,6044,6119,6225,6315,6432,6636,6887,7075,7129,6887,6493,6243,6010,
+5921,5821,5736,6032,6562,7022,7233,7190,7238,7340,7211,6989,6938,7013,7105,7187,7287,7328,7373,7400,
+7453,7486,7451,7436,7452,7482,7415,7466,7431,7391,7352,7253,7236,7209,7191,7168,7157,7148,7141,7131,
+7124,7137,7121,7101,7073,7055,7057,7045,7053,7040,7036,7031,7022,7015,7013,7016,7022,7021,7020,7018,
+7018,7013,7003,6991,6976,6955,6924,6896,6867,6837,6815,6806,6781,6756,6732,6705,6680,6659,6640,6625,
+6611,6596,6590,6580,6565,6550,6518,6459,6358,6193,6010,6275,6434,6338,6246,6171,6044,5869,5809,5870,
+5754,5732,5716,5719,5719,5705,5672,5649,5662,5679,5694,5721,5732,5715,5710,5706,5706,5690,5643,5581,
+5528,5511,5492,5468,5436,5398,5350,5298,5237,5165,5096,5043,4993,4936,4877,4816,4748,4694,4651,4619,
+4579,4542,4503,4452,4404,4369,4321,4273,4237,4191,4152,4129,4095,4052,4014,3984,3947,3917,3883,3844,
+3801,3762,3716,3664,3599,3535,3499,3478,3445,3390,3333,3245,3149,3087,3087,3100,3102,3093,3066,3007,
+2932,2867,2821,2786,2766,2789,2928,3126,2856,2746,2631,2575,2581,2579,2561,2527,2464,2428,2504,2437,
+2308,2269,2205,2184,2179,2136,2121,2100,2080,2046,2019,2009,1992,1959,1914,1911,1902,1907,1918,1957,
+1953,1933,1927,1930,1950,1975,1921,1871,1840,1814,1795,1776,1758,1745,1734,1721,1702,1675,1650,1627,
+1613,1598,1574,1553,1532,1525,1533,1533,1508,1480,1456,1434,1421,1415,1413,1418,1438,1454,1455,1445,
+1449,1457,1457,1459,1448,1435,1420,1411,1414,1421,1445,1454,1456,1470,1488,1501,1509,1509,1514,1518,
+1524,1548,1563,1573,1557,1540,1539,1552,1543,1522,1530,1544,1569,1600,1641,1685,1684,1703,1746,1784,
+1816,1758,1759,1764,1826,1860,1876,1818,1754,1675,1657,1658,1632,1614,1597,1571,1531,1510,1515,1490,
+1462,1447,1430,1422,1422,1417,1416,1415,1403,1386,1358,1338,1310,1276,1248,1210,1187,1159,1128,1113,
+1094,1072,1042,1009,987,967,936,901,875,844,813,783,755,727,701,675,644,610,581,553,
+521,480,442,405,372,337,298,256,211,168,132,88,49,13,-15,-57,-80,-117,-164,-205,
+-242,-283,-323,-363,-402,-443,-481,-523,-564,-608,-653,-694,-733,-772,-808,-837,-866,-901,-939,-974,
+-1016,-1056,-1087,-1115,-1138,-1162,-1188,-1218,-1252,-1286,-1322,-1354,-1383,-1419,-1464,-1501,-1533,-1561,-1594,-1619,
+-1649,-1684,-1708,-1729,-1757,-1794,-1838,-1867,-1896,-1924,-1954,-1992,-2031,-2063,-2092,-2118,-2149,-2182,-2211,-2239,
+-2266,-2291,-2312,-2330,-2360,-2382,-2401,-2422,-2438,-2454,-2467,-2483,-2496,-2514,-2531,-2537,-2549,-2559,-2571,-2577,
+-2579,-2575,-2575,-2578,-2586,-2583,-2584,-2582,-2574,-2571,-2571,-2556,-2548,-2536,-2521,-2507,-2494,-2478,-2465,-2448,
+-2436,-2421,-2409,-2392,-2375,-2361,-2343,-2326,-2306,-2287,-2269,-2254,-2235,-2217,-2200,-2183,-2167,-2146,-2128,-2109,
+-2093,-2071,-2055,-2041,-2027,-2005,-1984,-1960,-1941,-1921,-1900,-1875,-1850,-1829,-1809,-1794,-1781,-1767,-1747,-1732,
+-1712,-1699,-1680,-1660,-1646,-1630,-1602,-1580,-1551,-1522,-1547,-1509,-1473,-1446,-1420,-1391,-1370,-1358,-1324,-1313,
+-1294,-1277,-1243,-1216,-1180,-1150,-1126,-1098,-1078,-1064,-1052,-1014,-992,-973,-937,-908,-881,-853,-821,-795,
+-765,-741,-707,-670,-637,-606,-584,-535,-504,-484,-450,-428,-412,-363,-344,-320,-303,-282,-262,-236,
+-215,-195,-170,-145,-118,-89,-59,-27,2,34,67,106,138,185,215,260,286,322,370,394,
+438,489,543,583,652,736,798,881,901,989,1020,1045,1043,1011,1005,1085,1159,1236,1308,1484,
+1607,1795,2185,2427,2571,2607,2691,2809,2857,2484,2425,2319,2077,2032,2007,1956,1917,1916,1934,1953,
+1943,1890,1836,1848,1860,1854,1842,1786,1705,1612,1522,1429,1341,1251,1154,1061,987,929,892,862,
+839,785,674,496,319,179,80,-12,-91,-130,-116,-24,109,128,8,-207,-428,-560,-596,-665,
+-709,-745,-775,-810,-849,-895,-893,-860,-894,-962,-1052,-1156,-1248,-1327,-1395,-1487,-1562,-1613,-1654,-1751,
+-1837,-1883,-1930,-2003,-2074,-2121,-2160,-2210,-2258,-2287,-2313,-2344,-2373,-2410,-2446,-2494,-2542,-2603,-2657,-2708,
+-2748,-2773,-2782,-2787,-2798,-2797,-2769,-2732,-2686,-2659,-2676,-2728,-2774,-2777,-2773,-2760,-2753,-2806,-2821,-2852,
+-2869,-2835,-2808,-2780,-2755,-2726,-2700,-2698,-2753,-2894,-2984,-3013,-3011,-2987,-2947,-2895,-2839,-2791,-2734,-2677,
+-2626,-2572,-2508,-2449,-2386,-2319,-2250,-2191,-2127,-2065,-2006,-1948,-1895,-1844,-1785,-1728,-1673,-1625,-1568,-1503,
+-1428,-1375,-1305,-1245,-1183,-1120,-1063,-984,-931,-878,-835,-788,-738,-670,-592,-512,-440,-378,-309,-274,
+-217,-160,-96,-38,36,102,165,227,269,313,379,455,514,570,594,596,605,624,655,690,
+720,753,773,789,798,836,843,856,872,910,906,937,982,995,985,1074,1092,1064,1118,1046,
+1042,1037,1058,1065,1068,1089,1110,1115,1131,1151,1154,1183,1201,1218,1250,1245,1268,1287,1315,1305,
+1301,1280,1255,1261,1269,1286,1320,1356,1393,1409,1402,1410,1402,1430,1456,1497,1537,1559,1589,1645,
+1683,1730,1765,1798,1812,1830,1854,1865,1843,1826,1809,1776,1766,1764,1761,1770,1797,1820,1853,1896,
+1909,1920,1931,1935,1937,1908,1913,1914,1912,1911,1904,1902,1918,1906,1899,1894,1888,1878,1866,1848,
+1824,1798,1778,1753,1733,1709,1692,1689,1700,1711,1729,1730,1725,1715,1712,1714,1706,1707,1705,1699,
+1688,1674,1655,1636,1621,1640,1639,1647,1656,1647,1632,1629,1632,1635,1625,1609,1595,1577,1561,1555,
+1554,1543,1537,1553,1685,1855,1741,1530,1438,1409,1399,1387,1390,1387,1302,1252,1253,1257,1260,1240,
+1191,1156,1112,1050,988,905,821,747,692,643,580,493,385,284,206,97,11,-19,-50,-97,
+-204,-336,-459,-593,-727,-797,-871,-948,-1012,-1076,-1138,-1220,-1312,-1394,-1462,-1498,-1537,-1576,-1610,-1648,
+-1685,-1717,-1740,-1775,-1807,-1802,-1775,-1767,-1760,-1796,-1848,-1881,-1898,-1905,-1895,-1856,-1807,-1764,-1718,-1653,
+-1556,-1452,-1386,-1348,-1337,-1329,-1311,-1293,-1261,-1204,-1153,-1131,-1100,-1073,-1084,-1112,-1145,-1333,-1568,-1504,
+-1396,-1387,-1383,-1386,-1381,-1382,-1380,-1379,-1409,-1455,-1515,-1560,-1573,-1497,-1222,-1292,-1344,-1270,-1229,-1486,
+-1526,-1575,-1447,-1422,-1516,-1578,-1766,-1881,-1963,-2101,-2217,-2368,-2479,-2566,-2626,-2642,-2652,-2711,-2770,-2836,
+-2903,-2960,-2996,-3026,-3054,-3104,-3142,-3177,-3215,-3245,-3283,-3344,-3447,-3616,-3800,-3956,-4088,-4188,-4241,-4287,
+-4356,-4446,-4541,-4634,-4716,-4790,-4869,-4944,-5008,-5051,-5093,-5115,-5113,-5073,-5022,-4966,-4906,-4932,-4959,-4988,
+-5005,-5023,-5035,-5044,-5056,-5070,-5100,-5120,-5120,-5128,-5141,-5170,-5206,-5230,-5252,-5279,-5306,-5323,-5342,-5383,
+-5435,-5468,-5428,-5510,-5596,-5630,-5678,-5743,-5821,-5899,-5962,-6008,-6074,-6162,-6239,-6308,-6364,-6416,-6481,-6532,
+-6560,-6614,-6681,-6737,-6797,-6874,-6918,-6982,-7074,-7133,-7228,-7293,-7358,-7376,-7455,-7525,-7598,-7664,-7740,-7806,
+-7822,-7888,-7934,-8001,-8078,-8166,-8256,-8387,-8461,-8571,-8640,-8732,-8826,-8913,-8984,-9074,-9149,-9228,-9301,-9371,
+-9444,-9504,-9548,-9568,-9591,-9605,-9624,-9630,-9630,-9614,-9655,-9689,-9760,-9796,-9846,-9916,-10012,-10090,-10113,-10137,
+-10176,-10214,-10244,-10264,-10293,-10320,-10335,-10346,-10349,-10341,-10336,-10340,-10332,-10339,-10340,-10344,-10340,-10335,-10317,-10292,
+-10260,-10226,-10182,-10137,-10086,-10011,-9917,-9801,-9695,-9636,-9611,-9572,-9506,-9426,-9326,-9214,-9090,-8969,-8841,-8707,
+-8585,-8444,-8289,-8140,-7985,-7822,-7655,-7496,-7345,-7203,-7058,-6895,-6750,-6584,-6432,-6238,-6051,-5916,-5851,-5811,
+-5717,-5619,-5490,-5335,-5194,-5071,-4939,-4811,-4649,-4501,-4369,-4214,-4059,-3906,-3783,-3694,-3609,-3497,-3374,-3312,
+-3323,-3304,-3138,-2847,-2519,-2285,-2161,-2070,-1970,-1824,-1632,-1463,-1251,-1041,-879,-835,-741,-662,-583,-488,
+-386,-262,-147,-26,63,147,246,345,438,543,666,776,868,959,1062,1173,1265,1351,1441,1519,
+1609,1717,1821,1919,2016,2105,2219,2334,2418,2515,2623,2705,2801,2900,3020,3132,3221,3303,3397,3475,
+3569,3654,3760,3893,4027,4120,4222,4317,4428,4539,4676,4775,4870,4995,5141,5228,5215,5296,5438,5532,
+5630,5694,5619,5604,5666,5765,5858,5890,5927,5960,5939,5846,5683,5460,5400,5483,5639,5807,6002,6379,
+6567,6509,6375,6334,6346,6312,6235,6239,6349,6393,6379,6445,6591,6810,7025,7147,7030,6697,6345,6087,
+5876,5844,5784,5892,6297,6819,7145,7295,7331,7494,7568,7401,7138,7163,7206,7217,7240,7306,7308,7378,
+7404,7495,7455,7440,7440,7450,7469,7462,7448,7413,7387,7345,7313,7263,7193,7160,7139,7126,7111,7105,
+7108,7116,7110,7116,7120,7097,7067,7065,7066,7075,7069,7070,7066,7056,7061,7060,7062,7059,7061,7059,
+7056,7041,7038,7032,7027,7025,7012,6986,6952,6925,6901,6885,6864,6835,6804,6783,6758,6721,6699,6679,
+6658,6640,6623,6614,6605,6594,6578,6550,6502,6413,6248,6042,6175,6466,6386,6275,6193,6133,5992,5890,
+5928,5826,5794,5774,5750,5760,5734,5684,5640,5647,5689,5727,5759,5770,5756,5763,5753,5744,5732,5692,
+5630,5568,5537,5518,5492,5458,5421,5377,5323,5259,5188,5110,5048,4990,4936,4888,4833,4780,4729,4679,
+4631,4592,4549,4512,4465,4421,4383,4341,4295,4263,4218,4181,4153,4124,4090,4050,4015,3973,3939,3897,
+3854,3822,3787,3737,3694,3626,3563,3534,3508,3469,3420,3367,3286,3174,3100,3085,3098,3124,3137,3108,
+3048,2974,2910,2864,2824,2794,2808,2923,3084,2896,2705,2628,2603,2610,2607,2596,2590,2534,2479,2544,
+2437,2318,2266,2288,2263,2208,2169,2135,2108,2078,2051,2034,2021,2017,1994,1948,1913,1914,1928,1946,
+1979,1979,1955,1939,1937,1944,1936,1920,1899,1878,1855,1814,1786,1762,1749,1738,1725,1713,1692,1673,
+1663,1636,1619,1593,1564,1535,1529,1534,1524,1515,1501,1485,1461,1446,1440,1439,1440,1449,1450,1443,
+1439,1446,1462,1468,1467,1459,1445,1429,1420,1422,1429,1450,1454,1462,1489,1514,1526,1535,1535,1534,
+1524,1524,1531,1546,1562,1536,1533,1554,1659,1612,1568,1599,1578,1590,1602,1614,1723,1676,1658,1678,
+1702,1746,1745,1753,1752,1756,1782,1805,1800,1724,1686,1656,1639,1625,1613,1599,1579,1557,1540,1574,
+1524,1496,1475,1459,1454,1445,1434,1421,1418,1413,1414,1366,1350,1320,1292,1260,1227,1199,1178,1147,
+1131,1111,1093,1071,1042,1014,1001,977,940,903,872,837,802,767,740,712,688,662,629,597,
+570,534,500,467,433,399,362,328,288,249,209,166,119,79,40,-1,-45,-84,-124,-164,
+-196,-236,-273,-307,-341,-388,-423,-460,-502,-545,-587,-625,-665,-703,-739,-771,-794,-826,-865,-910,
+-943,-978,-1019,-1056,-1081,-1105,-1133,-1160,-1194,-1224,-1253,-1285,-1322,-1355,-1394,-1438,-1472,-1508,-1540,-1564,
+-1590,-1620,-1650,-1667,-1689,-1726,-1768,-1798,-1825,-1857,-1887,-1918,-1948,-1978,-2017,-2047,-2078,-2110,-2140,-2174,
+-2203,-2227,-2254,-2277,-2301,-2322,-2347,-2366,-2388,-2403,-2416,-2433,-2449,-2464,-2478,-2493,-2502,-2521,-2530,-2538,
+-2542,-2541,-2537,-2537,-2538,-2543,-2550,-2551,-2544,-2546,-2543,-2535,-2532,-2523,-2511,-2499,-2482,-2466,-2451,-2441,
+-2427,-2412,-2401,-2387,-2367,-2350,-2333,-2315,-2299,-2284,-2262,-2239,-2221,-2205,-2192,-2175,-2155,-2137,-2114,-2097,
+-2078,-2063,-2049,-2040,-2024,-2000,-1978,-1960,-1943,-1926,-1905,-1881,-1858,-1836,-1816,-1802,-1788,-1773,-1755,-1739,
+-1728,-1711,-1702,-1679,-1658,-1641,-1624,-1599,-1572,-1550,-1514,-1507,-1480,-1478,-1462,-1439,-1422,-1399,-1368,-1344,
+-1321,-1297,-1267,-1235,-1214,-1203,-1183,-1153,-1123,-1122,-1088,-1061,-1037,-1018,-1013,-987,-963,-940,-909,-871,
+-829,-799,-770,-734,-699,-663,-624,-603,-576,-531,-509,-467,-437,-421,-378,-365,-350,-325,-308,-288,
+-267,-241,-212,-188,-163,-139,-113,-84,-56,-25,8,42,78,122,145,185,234,258,287,322,
+357,410,466,515,565,649,715,783,852,884,975,985,996,974,930,965,1161,1265,1376,1510,
+1647,1749,2012,2408,2741,2819,2765,2818,2761,2560,2221,2103,2013,1982,1979,1968,1913,1882,1899,1941,
+1979,1979,1928,1862,1839,1863,1926,1897,1838,1757,1668,1584,1505,1423,1332,1233,1132,1067,1015,960,
+915,887,837,724,546,367,236,135,44,-15,-54,-51,37,175,173,83,-113,-351,-555,-616,
+-627,-659,-705,-748,-790,-828,-861,-869,-889,-906,-954,-1040,-1134,-1215,-1286,-1380,-1467,-1533,-1582,-1645,
+-1698,-1804,-1866,-1922,-1988,-2067,-2131,-2169,-2213,-2261,-2293,-2320,-2346,-2370,-2402,-2428,-2468,-2510,-2562,-2616,
+-2658,-2702,-2736,-2753,-2763,-2784,-2781,-2749,-2705,-2653,-2612,-2612,-2653,-2697,-2716,-2710,-2725,-2746,-2772,-2799,
+-2814,-2836,-2801,-2773,-2748,-2724,-2699,-2669,-2639,-2642,-2690,-2801,-2875,-2916,-2923,-2909,-2870,-2826,-2780,-2731,
+-2687,-2640,-2587,-2527,-2456,-2385,-2321,-2257,-2202,-2138,-2068,-2011,-1960,-1873,-1848,-1793,-1741,-1688,-1630,-1506,
+-1483,-1427,-1372,-1287,-1232,-1169,-1114,-1047,-977,-923,-867,-813,-762,-708,-647,-582,-516,-450,-404,-351,
+-306,-240,-177,-114,-58,8,79,124,179,236,320,369,441,497,500,564,599,590,594,595,
+619,654,691,725,733,750,777,804,827,865,887,894,934,955,982,1020,1029,1032,1041,1057,
+1034,1028,1027,1048,1100,1106,1123,1169,1190,1213,1234,1259,1264,1262,1274,1270,1277,1277,1281,1307,
+1319,1312,1293,1282,1284,1282,1307,1331,1342,1356,1371,1383,1390,1404,1445,1513,1577,1623,1650,1680,
+1711,1748,1765,1754,1708,1671,1673,1673,1670,1660,1690,1729,1777,1814,1856,1867,1893,1922,1947,1963,
+1993,2000,2006,1989,1972,1961,1956,1952,1932,1924,1908,1890,1887,1879,1879,1878,1871,1864,1842,1824,
+1809,1795,1777,1762,1745,1737,1739,1740,1745,1745,1750,1748,1732,1723,1716,1710,1706,1706,1700,1703,
+1700,1681,1661,1644,1631,1628,1635,1661,1650,1658,1647,1634,1628,1639,1645,1645,1637,1619,1587,1569,
+1566,1557,1550,1547,1563,1598,1628,1548,1461,1413,1387,1360,1334,1346,1310,1224,1166,1150,1216,1244,
+1221,1150,1120,1082,1041,1012,944,855,769,700,652,577,480,363,255,168,59,-30,-82,-128,
+-199,-287,-398,-522,-644,-774,-863,-928,-1010,-1070,-1132,-1183,-1248,-1326,-1394,-1456,-1496,-1539,-1585,-1639,
+-1683,-1716,-1732,-1743,-1772,-1811,-1837,-1842,-1831,-1820,-1844,-1889,-1919,-1938,-1940,-1926,-1889,-1840,-1804,-1759,
+-1693,-1611,-1525,-1443,-1386,-1364,-1343,-1312,-1260,-1205,-1141,-1101,-1108,-1096,-1081,-1093,-1130,-1261,-1428,-1450,
+-1350,-1340,-1358,-1353,-1360,-1367,-1362,-1343,-1334,-1355,-1400,-1478,-1536,-1546,-1449,-1199,-1246,-1316,-1253,-1221,
+-1491,-1551,-1535,-1430,-1371,-1486,-1601,-1764,-1886,-1966,-2058,-2176,-2305,-2427,-2553,-2647,-2678,-2708,-2732,-2800,
+-2894,-2955,-3018,-3056,-3100,-3154,-3199,-3227,-3257,-3307,-3345,-3372,-3438,-3585,-3783,-3966,-4105,-4204,-4279,-4314,
+-4355,-4417,-4503,-4604,-4676,-4737,-4792,-4849,-4912,-4973,-5024,-5061,-5076,-5065,-5030,-4999,-4924,-4890,-4930,-4959,
+-4981,-4996,-5007,-5014,-5020,-5029,-5049,-5079,-5081,-5092,-5092,-5109,-5134,-5170,-5203,-5220,-5244,-5270,-5283,-5308,
+-5356,-5404,-5414,-5371,-5523,-5584,-5624,-5680,-5746,-5815,-5886,-5962,-6025,-6078,-6143,-6218,-6275,-6326,-6386,-6456,
+-6509,-6565,-6629,-6719,-6736,-6806,-6885,-6928,-6998,-7050,-7129,-7215,-7284,-7312,-7366,-7455,-7522,-7583,-7656,-7727,
+-7771,-7815,-7925,-7940,-7942,-8040,-8188,-8246,-8315,-8460,-8528,-8615,-8701,-8797,-8891,-8942,-9036,-9118,-9213,-9261,
+-9336,-9401,-9453,-9494,-9543,-9580,-9585,-9600,-9595,-9577,-9557,-9604,-9651,-9716,-9772,-9830,-9916,-10002,-10069,-10095,
+-10119,-10151,-10184,-10211,-10241,-10259,-10289,-10312,-10331,-10336,-10334,-10328,-10320,-10327,-10322,-10323,-10323,-10316,-10305,-10288,
+-10265,-10237,-10203,-10163,-10103,-10036,-9948,-9838,-9693,-9592,-9549,-9528,-9507,-9463,-9398,-9304,-9199,-9096,-8991,-8864,
+-8724,-8589,-8434,-8272,-8121,-7970,-7816,-7664,-7513,-7359,-7210,-7070,-6924,-6781,-6606,-6441,-6261,-6094,-5985,-5929,
+-5839,-5731,-5628,-5502,-5367,-5231,-5100,-4957,-4803,-4637,-4489,-4359,-4192,-4020,-3858,-3731,-3638,-3534,-3386,-3248,
+-3202,-3215,-3220,-3161,-2914,-2536,-2269,-2078,-1939,-1899,-1777,-1596,-1411,-1231,-1040,-868,-728,-680,-611,-540,
+-467,-365,-246,-122,-12,103,180,285,378,462,545,657,796,920,1006,1090,1195,1290,1379,1463,
+1538,1637,1754,1865,1965,2045,2137,2238,2343,2455,2543,2645,2730,2830,2921,3042,3177,3307,3339,3423,
+3517,3623,3700,3809,3922,4032,4150,4259,4356,4440,4561,4680,4851,4953,5047,5124,5139,5217,5347,5459,
+5490,5588,5603,5546,5560,5616,5713,5801,5833,5850,5887,5928,5917,5711,5411,5375,5495,5754,6037,6192,
+6492,6596,6526,6577,6750,6720,6654,6627,6535,6594,6664,6644,6705,6711,6893,7068,7000,6826,6494,6117,
+5808,5691,5763,5730,6017,6491,6928,7194,7318,7512,7603,7577,7474,7345,7379,7367,7289,7299,7276,7280,
+7364,7392,7525,7473,7450,7454,7480,7503,7467,7454,7414,7384,7343,7330,7314,7248,7143,7088,7075,7070,
+7067,7066,7061,7070,7090,7103,7098,7096,7070,7070,7093,7095,7099,7097,7095,7094,7099,7099,7098,7103,
+7094,7081,7078,7073,7068,7065,7070,7061,7033,7006,6987,6967,6942,6916,6882,6852,6830,6803,6771,6743,
+6719,6694,6668,6644,6628,6621,6612,6603,6583,6539,6460,6318,6107,6124,6485,6432,6307,6206,6148,6106,
+5958,5942,5905,5862,5811,5771,5783,5769,5717,5669,5660,5694,5742,5786,5793,5779,5831,5775,5768,5758,
+5741,5703,5650,5587,5542,5514,5481,5436,5392,5338,5268,5198,5126,5053,4994,4943,4904,4861,4813,4765,
+4710,4653,4600,4556,4518,4476,4444,4407,4370,4324,4279,4247,4205,4169,4146,4120,4077,4036,3995,3951,
+3910,3873,3836,3815,3774,3722,3654,3591,3560,3535,3498,3448,3395,3319,3215,3125,3096,3112,3154,3186,
+3173,3106,3027,2954,2901,2861,2811,2805,2901,3086,2837,2690,2640,2620,2617,2617,2619,2659,2606,2497,
+2468,2409,2314,2274,2291,2246,2235,2208,2174,2138,2108,2096,2066,2034,2025,2003,1961,1909,1932,1992,
+2068,1979,1970,1958,1942,1940,1940,1936,1932,1936,1971,1948,1852,1808,1780,1766,1748,1737,1725,1711,
+1694,1672,1657,1640,1610,1577,1551,1536,1533,1528,1518,1516,1505,1483,1470,1470,1472,1468,1468,1457,
+1438,1435,1443,1448,1459,1464,1464,1451,1445,1444,1440,1447,1463,1474,1489,1511,1528,1534,1534,1532,
+1524,1511,1509,1517,1535,1556,1573,1619,1619,1615,1580,1587,1643,1578,1619,1618,1587,1606,1619,1627,
+1654,1676,1700,1732,1749,1753,1738,1733,1766,1773,1726,1688,1667,1672,1626,1607,1596,1575,1553,1537,
+1520,1516,1550,1532,1495,1484,1462,1440,1418,1419,1402,1387,1365,1367,1336,1311,1277,1245,1222,1206,
+1179,1154,1136,1116,1094,1070,1047,1029,1007,976,942,905,868,830,784,751,727,704,685,649,
+614,587,559,525,494,461,422,386,347,311,267,226,186,142,95,56,20,-34,-75,-118,
+-155,-186,-223,-260,-298,-337,-376,-412,-451,-490,-532,-568,-606,-643,-677,-708,-731,-755,-787,-827,
+-870,-913,-939,-984,-1017,-1042,-1074,-1107,-1136,-1167,-1194,-1223,-1257,-1289,-1322,-1358,-1394,-1430,-1467,-1499,
+-1528,-1558,-1584,-1607,-1628,-1662,-1706,-1738,-1761,-1788,-1821,-1853,-1882,-1909,-1942,-1980,-2015,-2046,-2072,-2105,
+-2138,-2168,-2191,-2212,-2228,-2257,-2277,-2294,-2317,-2335,-2355,-2367,-2384,-2409,-2421,-2447,-2459,-2468,-2483,-2485,
+-2494,-2498,-2503,-2504,-2506,-2513,-2517,-2518,-2515,-2516,-2520,-2517,-2509,-2503,-2491,-2483,-2469,-2453,-2436,-2423,
+-2414,-2402,-2384,-2370,-2353,-2334,-2319,-2303,-2291,-2277,-2258,-2238,-2217,-2195,-2179,-2166,-2151,-2133,-2109,-2088,
+-2071,-2052,-2042,-2029,-2021,-2010,-1985,-1966,-1944,-1926,-1910,-1889,-1866,-1846,-1829,-1811,-1793,-1779,-1764,-1753,
+-1738,-1723,-1705,-1686,-1668,-1653,-1636,-1621,-1597,-1581,-1552,-1536,-1519,-1491,-1469,-1449,-1433,-1414,-1390,-1371,
+-1349,-1324,-1300,-1278,-1257,-1238,-1213,-1182,-1159,-1143,-1134,-1099,-1083,-1061,-1047,-1036,-1008,-1002,-974,-953,
+-925,-884,-854,-815,-778,-741,-710,-673,-641,-605,-577,-506,-497,-472,-431,-398,-377,-363,-339,-322,
+-304,-282,-258,-230,-206,-181,-157,-128,-100,-69,-39,-9,24,57,91,137,138,198,222,271,
+297,331,397,458,503,552,632,711,762,825,885,951,958,952,917,881,1043,1283,1420,1586,
+1701,1891,2124,2358,2527,2884,2925,2803,2829,2561,2252,2005,1928,1898,1914,1941,1936,1886,1876,1918,
+1967,2008,2007,1966,1890,1857,1945,1905,1898,1874,1811,1725,1637,1567,1490,1408,1310,1200,1122,1066,
+1023,973,921,872,762,592,426,307,213,124,50,4,-1,116,131,124,49,-154,-364,-505,
+-568,-600,-623,-619,-659,-745,-790,-822,-854,-878,-902,-951,-1031,-1108,-1173,-1243,-1342,-1444,-1503,-1565,
+-1644,-1716,-1804,-1889,-1959,-2008,-2089,-2143,-2183,-2230,-2276,-2300,-2329,-2354,-2377,-2399,-2418,-2444,-2487,-2531,
+-2587,-2621,-2632,-2681,-2701,-2710,-2724,-2729,-2709,-2663,-2607,-2570,-2557,-2575,-2611,-2636,-2652,-2697,-2726,-2755,
+-2787,-2790,-2796,-2771,-2745,-2719,-2704,-2680,-2645,-2630,-2593,-2567,-2570,-2655,-2751,-2810,-2840,-2829,-2791,-2767,
+-2737,-2707,-2673,-2628,-2564,-2491,-2428,-2369,-2314,-2255,-2191,-2131,-2070,-2018,-1964,-1912,-1857,-1794,-1728,-1682,
+-1613,-1555,-1500,-1421,-1337,-1281,-1217,-1148,-1084,-1036,-998,-927,-832,-777,-726,-665,-600,-534,-482,-446,
+-413,-350,-301,-233,-143,-95,-30,34,72,130,187,246,313,384,439,450,525,548,554,569,
+652,620,661,707,701,724,724,784,826,851,877,837,864,906,942,971,1006,1043,1066,1073,
+1058,1059,1044,1068,1092,1122,1127,1145,1173,1195,1214,1250,1273,1261,1256,1272,1283,1274,1255,1246,
+1265,1267,1242,1218,1221,1219,1233,1258,1299,1348,1406,1467,1522,1559,1605,1682,1722,1741,1747,1710,
+1709,1737,1742,1718,1695,1652,1639,1665,1710,1755,1773,1835,1887,1928,1970,1993,2007,2001,2007,2014,
+2005,1992,1978,1973,1955,1958,1950,1939,1930,1916,1907,1896,1887,1882,1865,1867,1849,1828,1823,1816,
+1809,1802,1794,1799,1796,1789,1785,1782,1774,1761,1762,1772,1759,1737,1725,1720,1713,1706,1712,1711,
+1705,1692,1679,1664,1654,1649,1650,1649,1646,1657,1663,1656,1647,1640,1648,1656,1665,1654,1626,1593,
+1576,1579,1584,1598,1609,1596,1542,1490,1453,1422,1386,1350,1314,1297,1306,1270,1151,1087,1069,1114,
+1193,1183,1132,1119,1107,1068,1041,980,897,805,716,648,570,472,356,231,128,7,-84,-153,
+-229,-289,-350,-440,-555,-672,-774,-894,-998,-1073,-1136,-1195,-1245,-1292,-1354,-1412,-1463,-1512,-1570,-1624,
+-1671,-1718,-1735,-1740,-1747,-1778,-1824,-1870,-1890,-1872,-1871,-1892,-1924,-1946,-1959,-1968,-1949,-1916,-1874,-1837,
+-1792,-1724,-1650,-1580,-1509,-1441,-1392,-1351,-1316,-1245,-1165,-1086,-1035,-1045,-1056,-1052,-1065,-1149,-1217,-1155,
+-1163,-1231,-1274,-1309,-1302,-1320,-1344,-1346,-1316,-1307,-1329,-1386,-1467,-1525,-1556,-1527,-1436,-1385,-1349,-1268,
+-1294,-1508,-1539,-1506,-1387,-1385,-1477,-1628,-1769,-1883,-1952,-2027,-2116,-2225,-2353,-2500,-2617,-2674,-2728,-2780,
+-2856,-2930,-2989,-3048,-3106,-3158,-3220,-3267,-3307,-3344,-3389,-3450,-3510,-3620,-3791,-3954,-4088,-4197,-4275,-4335,
+-4358,-4392,-4454,-4551,-4653,-4706,-4749,-4789,-4838,-4892,-4944,-4991,-5027,-5038,-5033,-5006,-4973,-4923,-4901,-4927,
+-4950,-4960,-4977,-4989,-4989,-4994,-5000,-5029,-5053,-5044,-5065,-5064,-5081,-5108,-5134,-5164,-5191,-5208,-5235,-5253,
+-5287,-5335,-5339,-5341,-5469,-5530,-5573,-5623,-5683,-5751,-5817,-5879,-5943,-6019,-6086,-6140,-6199,-6282,-6326,-6366,
+-6432,-6481,-6593,-6665,-6727,-6754,-6832,-6872,-6904,-6976,-7068,-7158,-7222,-7254,-7291,-7384,-7445,-7517,-7579,-7644,
+-7703,-7739,-7849,-7878,-7872,-7928,-8021,-8186,-8203,-8316,-8389,-8486,-8588,-8655,-8750,-8826,-8921,-8996,-9088,-9131,
+-9224,-9291,-9353,-9407,-9461,-9522,-9557,-9566,-9573,-9569,-9512,-9400,-9512,-9626,-9681,-9746,-9825,-9936,-10032,-10057,
+-10084,-10106,-10133,-10160,-10200,-10235,-10261,-10289,-10310,-10322,-10328,-10325,-10320,-10312,-10314,-10312,-10309,-10311,-10309,-10299,
+-10280,-10254,-10221,-10180,-10133,-10071,-9989,-9886,-9762,-9609,-9511,-9467,-9448,-9440,-9414,-9346,-9255,-9159,-9060,-8961,
+-8827,-8683,-8553,-8398,-8238,-8095,-7959,-7816,-7673,-7527,-7379,-7229,-7081,-6964,-6826,-6654,-6478,-6321,-6195,-6108,
+-6010,-5876,-5758,-5639,-5509,-5374,-5253,-5127,-4977,-4811,-4645,-4503,-4359,-4177,-4010,-3845,-3713,-3605,-3481,-3312,
+-3163,-3100,-3096,-3124,-3133,-2994,-2645,-2340,-2134,-1915,-1883,-1720,-1527,-1376,-1200,-978,-790,-616,-558,-540,
+-482,-413,-340,-217,-77,11,109,208,318,414,492,570,678,811,944,1047,1137,1228,1331,1418,
+1494,1572,1667,1790,1906,2003,2090,2176,2276,2376,2473,2573,2681,2785,2881,2974,3088,3192,3286,3385,
+3464,3557,3636,3718,3817,3929,4033,4127,4226,4334,4446,4582,4685,4804,4888,4980,5070,5161,5223,5326,
+5432,5464,5514,5483,5480,5518,5569,5645,5688,5706,5706,5747,5802,5816,5724,5452,5372,5559,5953,6206,
+6373,6530,6606,6575,6571,6630,6649,6554,6473,6458,6550,6689,6640,6757,6855,6862,6908,6739,6512,6126,
+5793,5511,5460,5525,5701,6118,6615,7011,7320,7458,7614,7603,7550,7477,7524,7510,7471,7428,7457,7385,
+7330,7377,7446,7526,7470,7463,7461,7467,7490,7442,7438,7406,7367,7337,7316,7255,7159,7047,7014,6997,
+7002,7012,7024,7030,7035,7051,7068,7070,7089,7082,7094,7091,7113,7132,7129,7126,7127,7133,7134,7136,
+7137,7128,7122,7122,7108,7110,7103,7107,7098,7083,7067,7041,7011,6990,6966,6925,6895,6869,6850,6817,
+6785,6758,6728,6701,6667,6643,6630,6621,6616,6602,6574,6509,6380,6163,6037,6415,6461,6327,6221,6163,
+6153,6026,5940,5959,5922,5843,5794,5777,5775,5744,5711,5685,5707,5749,5784,5791,5788,5780,5771,5775,
+5777,5783,5764,5720,5654,5583,5523,5490,5454,5409,5354,5293,5228,5151,5076,5010,4960,4918,4885,4855,
+4818,4752,4680,4617,4562,4532,4508,4470,4431,4394,4350,4302,4263,4222,4189,4159,4133,4095,4050,4009,
+3965,3924,3883,3849,3827,3790,3734,3676,3623,3586,3568,3527,3473,3423,3349,3249,3165,3133,3156,3196,
+3218,3205,3152,3070,2979,2908,2852,2802,2784,2854,2973,2891,2734,2714,2674,2626,2602,2603,2615,2578,
+2507,2446,2395,2340,2305,2301,2291,2258,2240,2218,2185,2156,2139,2113,2093,2073,2047,2006,1955,1965,
+1989,2035,1986,1967,1960,1953,1943,1934,1933,1934,1958,2046,2014,1874,1825,1800,1786,1764,1748,1737,
+1725,1710,1692,1678,1660,1635,1596,1562,1541,1531,1526,1518,1520,1518,1503,1494,1496,1498,1493,1483,
+1470,1455,1460,1448,1441,1442,1445,1450,1464,1463,1476,1466,1461,1479,1491,1507,1515,1515,1512,1512,
+1519,1535,1550,1548,1605,1665,1625,1572,1570,1579,1577,1565,1563,1556,1553,1641,1630,1574,1596,1617,
+1626,1649,1669,1711,1766,1694,1779,1721,1714,1727,1777,1751,1711,1669,1659,1659,1630,1597,1578,1555,
+1531,1514,1499,1497,1497,1484,1484,1467,1445,1435,1401,1414,1420,1370,1363,1340,1318,1293,1265,1233,
+1209,1189,1170,1142,1126,1111,1094,1075,1060,1042,1020,987,959,917,874,828,791,760,729,701,
+665,634,606,580,549,517,480,441,406,367,328,286,246,204,163,124,82,38,-8,-49,
+-92,-129,-165,-203,-238,-277,-323,-363,-398,-434,-469,-502,-542,-580,-614,-649,-682,-717,-740,-771,
+-799,-838,-879,-909,-948,-980,-1007,-1040,-1073,-1099,-1130,-1159,-1191,-1221,-1252,-1285,-1320,-1355,-1388,-1425,
+-1460,-1487,-1517,-1546,-1578,-1607,-1643,-1679,-1707,-1737,-1765,-1796,-1827,-1856,-1887,-1918,-1952,-1980,-2015,-2045,
+-2068,-2098,-2116,-2137,-2156,-2177,-2203,-2225,-2246,-2268,-2289,-2311,-2333,-2355,-2373,-2387,-2402,-2413,-2423,-2434,
+-2438,-2448,-2458,-2471,-2477,-2480,-2484,-2486,-2488,-2488,-2485,-2487,-2483,-2476,-2464,-2455,-2443,-2432,-2418,-2404,
+-2390,-2377,-2363,-2344,-2330,-2313,-2297,-2283,-2272,-2260,-2249,-2233,-2215,-2197,-2177,-2160,-2145,-2127,-2107,-2087,
+-2068,-2050,-2030,-2017,-2008,-1997,-1986,-1968,-1948,-1926,-1907,-1888,-1871,-1856,-1838,-1823,-1805,-1789,-1772,-1756,
+-1739,-1725,-1710,-1694,-1677,-1661,-1648,-1632,-1617,-1590,-1578,-1553,-1533,-1516,-1492,-1467,-1446,-1428,-1406,-1382,
+-1361,-1343,-1321,-1303,-1282,-1262,-1243,-1221,-1205,-1192,-1171,-1147,-1134,-1117,-1105,-1086,-1068,-1055,-1040,-1007,
+-977,-942,-904,-891,-852,-808,-777,-745,-711,-677,-653,-619,-584,-508,-510,-421,-435,-394,-375,-348,
+-325,-303,-285,-258,-237,-211,-189,-166,-146,-114,-86,-58,-22,9,46,81,112,136,170,198,
+245,267,316,387,434,493,563,616,704,773,828,887,919,927,907,873,902,1134,1364,1539,
+1709,1868,2104,2335,2561,2642,2852,2878,2849,2612,2280,2006,1884,1839,1841,1879,1914,1921,1886,1885,
+1937,1993,2025,2013,1979,1943,1935,1944,1908,1882,1869,1839,1773,1691,1622,1562,1477,1374,1264,1155,
+1095,1061,1022,967,916,810,652,497,380,287,197,120,63,51,141,30,49,-71,-204,-337,
+-441,-505,-548,-589,-625,-642,-700,-743,-785,-821,-852,-887,-939,-1017,-1085,-1140,-1207,-1308,-1418,-1493,
+-1565,-1652,-1739,-1810,-1897,-1972,-2043,-2121,-2181,-2214,-2252,-2295,-2324,-2339,-2365,-2384,-2401,-2418,-2434,-2474,
+-2514,-2546,-2573,-2602,-2621,-2646,-2647,-2625,-2645,-2645,-2620,-2560,-2531,-2518,-2526,-2552,-2574,-2601,-2640,-2713,
+-2734,-2787,-2793,-2769,-2732,-2715,-2702,-2698,-2649,-2604,-2614,-2576,-2526,-2471,-2424,-2472,-2576,-2668,-2702,-2701,
+-2682,-2645,-2651,-2643,-2598,-2526,-2451,-2391,-2341,-2293,-2240,-2183,-2129,-2075,-2019,-1978,-1934,-1883,-1785,-1692,
+-1705,-1645,-1558,-1511,-1458,-1411,-1361,-1307,-1247,-1180,-1143,-1108,-1053,-972,-914,-854,-789,-736,-690,-626,
+-578,-524,-457,-398,-314,-243,-194,-123,-72,-33,33,84,132,176,229,291,314,368,416,482,
+531,574,595,627,653,679,688,701,758,774,838,862,865,811,867,902,897,946,963,1003,
+1002,1004,1019,1048,1066,1091,1128,1167,1184,1219,1230,1250,1249,1268,1256,1237,1242,1214,1192,1180,
+1172,1174,1195,1215,1235,1266,1297,1340,1397,1477,1544,1635,1739,1804,1848,1864,1859,1828,1736,1715,
+1701,1722,1760,1801,1822,1834,1842,1859,1869,1895,1946,1949,1960,1972,2001,2018,2018,2004,2013,2007,
+2002,1975,1968,1967,1962,1967,1960,1943,1938,1931,1912,1908,1899,1876,1865,1854,1849,1845,1850,1855,
+1858,1861,1848,1843,1819,1812,1796,1796,1796,1780,1768,1767,1763,1745,1730,1723,1720,1719,1712,1721,
+1726,1718,1702,1689,1681,1666,1658,1651,1650,1675,1668,1677,1677,1672,1663,1659,1666,1668,1656,1629,
+1608,1602,1610,1633,1699,1794,1778,1579,1479,1431,1391,1364,1319,1273,1276,1319,1261,1097,1004,998,
+1043,1102,1113,1107,1090,1074,1064,1047,981,920,830,728,639,562,475,357,226,103,-17,-123,
+-199,-265,-326,-380,-455,-563,-694,-780,-876,-1004,-1108,-1183,-1252,-1309,-1354,-1401,-1441,-1482,-1530,-1590,
+-1649,-1698,-1735,-1744,-1746,-1755,-1788,-1835,-1881,-1903,-1899,-1910,-1933,-1962,-1992,-2005,-1999,-1973,-1942,-1898,
+-1857,-1800,-1733,-1661,-1612,-1557,-1483,-1412,-1356,-1316,-1241,-1140,-1034,-966,-945,-968,-975,-1003,-996,-870,
+-1026,-1084,-1159,-1232,-1272,-1295,-1319,-1321,-1326,-1304,-1306,-1331,-1398,-1484,-1517,-1571,-1588,-1565,-1505,-1395,
+-1278,-1285,-1470,-1544,-1444,-1363,-1368,-1413,-1570,-1746,-1848,-1884,-1989,-2091,-2192,-2309,-2446,-2559,-2652,-2719,
+-2773,-2869,-2951,-3018,-3087,-3157,-3216,-3275,-3312,-3341,-3392,-3446,-3528,-3649,-3801,-3950,-4065,-4162,-4245,-4320,
+-4357,-4391,-4432,-4481,-4560,-4669,-4727,-4749,-4784,-4829,-4884,-4931,-4969,-4999,-5016,-5019,-4976,-4913,-4912,-4895,
+-4925,-4947,-4953,-4952,-4959,-4960,-4961,-4984,-5002,-5028,-5031,-5040,-5051,-5065,-5085,-5103,-5131,-5163,-5191,-5208,
+-5236,-5274,-5283,-5193,-5380,-5466,-5512,-5566,-5617,-5680,-5747,-5813,-5873,-5938,-5997,-6065,-6138,-6209,-6269,-6314,
+-6385,-6456,-6505,-6581,-6630,-6677,-6746,-6814,-6859,-6926,-7008,-7058,-7132,-7182,-7239,-7306,-7356,-7417,-7490,-7557,
+-7629,-7689,-7749,-7837,-7819,-7887,-7958,-8049,-8085,-8194,-8264,-8339,-8466,-8549,-8644,-8704,-8804,-8877,-8950,-9015,
+-9108,-9190,-9268,-9309,-9346,-9435,-9482,-9532,-9550,-9550,-9547,-9398,-9327,-9407,-9592,-9667,-9730,-9829,-9973,-10047,
+-10066,-10071,-10076,-10120,-10152,-10195,-10231,-10262,-10285,-10291,-10299,-10308,-10312,-10308,-10305,-10305,-10308,-10298,-10293,-10295,
+-10292,-10275,-10250,-10214,-10162,-10104,-10037,-9946,-9839,-9714,-9574,-9475,-9417,-9398,-9397,-9365,-9291,-9207,-9110,-9007,
+-8903,-8762,-8622,-8497,-8345,-8197,-8065,-7940,-7811,-7670,-7532,-7389,-7240,-7097,-6987,-6892,-6724,-6557,-6431,-6320,
+-6179,-6053,-5909,-5772,-5650,-5522,-5387,-5273,-5149,-5000,-4827,-4670,-4520,-4356,-4171,-4005,-3842,-3709,-3586,-3462,
+-3268,-3088,-3001,-3012,-3055,-3085,-3040,-2840,-2546,-2263,-1992,-1918,-1731,-1479,-1331,-1207,-1062,-861,-606,-573,
+-521,-446,-357,-285,-198,-83,27,136,237,344,455,539,631,733,868,965,1083,1180,1283,1370,
+1459,1536,1611,1702,1820,1935,2039,2118,2204,2306,2402,2499,2591,2706,2815,2921,3004,3120,3213,3293,
+3395,3476,3576,3660,3747,3862,3943,4055,4149,4236,4321,4444,4571,4711,4820,4888,5040,5126,5141,5189,
+5234,5302,5342,5344,5384,5417,5462,5507,5554,5573,5512,5467,5484,5583,5646,5653,5515,5424,5688,6038,
+6300,6356,6423,6440,6462,6466,6476,6475,6376,6203,6154,6186,6347,6430,6590,6551,6570,6488,6265,5950,
+5654,5357,5144,5167,5297,5650,6191,6742,7069,7326,7497,7557,7561,7582,7530,7475,7499,7493,7523,7539,
+7538,7523,7544,7589,7633,7531,7489,7435,7418,7442,7428,7420,7403,7370,7330,7268,7145,7043,6960,6934,
+6914,6908,6937,6958,6971,6988,6999,7011,7022,7054,7071,7087,7116,7111,7132,7141,7154,7158,7169,7175,
+7182,7178,7170,7172,7164,7145,7147,7140,7145,7140,7135,7129,7105,7073,7036,7010,6976,6938,6914,6890,
+6861,6831,6802,6772,6738,6698,6656,6630,6620,6610,6606,6597,6558,6451,6241,6016,6248,6425,6334,6228,
+6170,6157,6081,5990,5920,5924,5883,5832,5797,5779,5753,5730,5718,5719,5740,5780,5830,5841,5816,5799,
+5792,5800,5817,5807,5767,5708,5631,5551,5501,5462,5425,5380,5325,5265,5187,5105,5040,4991,4938,4903,
+4883,4855,4793,4714,4637,4574,4543,4516,4485,4444,4402,4364,4328,4285,4240,4207,4175,4144,4107,4061,
+4016,3971,3930,3898,3862,3831,3794,3744,3701,3658,3622,3595,3545,3485,3435,3367,3271,3209,3184,3192,
+3213,3226,3201,3148,3071,2991,2919,2843,2789,2768,2793,2893,2926,2868,2942,2843,2643,2589,2579,2578,
+2551,2513,2463,2425,2378,2333,2320,2313,2305,2276,2257,2231,2204,2180,2162,2150,2132,2111,2075,2021,
+2022,2007,1997,1979,1973,1972,1957,1947,1935,1924,1926,1931,1943,1920,1875,1838,1815,1798,1780,1761,
+1752,1741,1729,1710,1691,1677,1653,1617,1574,1545,1531,1528,1523,1526,1524,1514,1505,1507,1511,1511,
+1505,1495,1478,1459,1451,1444,1442,1441,1449,1466,1476,1476,1477,1496,1506,1502,1498,1488,1479,1501,
+1561,1657,1775,1750,1559,1544,1574,1564,1561,1578,1591,1588,1579,1574,1559,1552,1559,1556,1570,1654,
+1659,1640,1662,1675,1680,1669,1650,1695,1722,1689,1686,1699,1765,1746,1692,1654,1646,1627,1620,1580,
+1548,1529,1513,1499,1497,1485,1476,1462,1473,1476,1435,1428,1394,1376,1379,1373,1343,1322,1301,1272,
+1238,1207,1183,1168,1153,1139,1134,1111,1089,1073,1060,1044,1018,992,956,910,860,824,790,755,
+720,689,662,633,596,562,528,489,445,409,372,336,299,262,218,182,151,112,70,32,
+-7,-49,-86,-119,-157,-198,-243,-290,-328,-371,-409,-455,-490,-531,-564,-594,-625,-666,-697,-724,
+-770,-789,-823,-858,-886,-917,-945,-974,-1009,-1043,-1074,-1101,-1128,-1154,-1187,-1218,-1253,-1290,-1324,-1359,
+-1396,-1433,-1460,-1491,-1526,-1554,-1586,-1620,-1646,-1675,-1706,-1740,-1774,-1807,-1831,-1864,-1888,-1923,-1953,-1983,
+-2015,-2034,-2055,-2076,-2101,-2122,-2142,-2168,-2194,-2212,-2231,-2256,-2275,-2295,-2310,-2325,-2342,-2353,-2359,-2375,
+-2387,-2397,-2408,-2422,-2430,-2437,-2444,-2447,-2453,-2459,-2453,-2449,-2447,-2448,-2440,-2431,-2425,-2414,-2397,-2386,
+-2371,-2356,-2344,-2328,-2307,-2291,-2276,-2261,-2247,-2233,-2225,-2214,-2205,-2190,-2173,-2155,-2139,-2121,-2104,-2085,
+-2065,-2044,-2029,-2013,-1995,-1979,-1963,-1950,-1941,-1927,-1908,-1891,-1873,-1858,-1841,-1825,-1810,-1794,-1776,-1756,
+-1741,-1725,-1714,-1698,-1685,-1672,-1660,-1641,-1628,-1611,-1582,-1574,-1551,-1531,-1512,-1492,-1475,-1451,-1430,-1409,
+-1387,-1359,-1341,-1321,-1305,-1289,-1272,-1246,-1226,-1215,-1196,-1176,-1158,-1135,-1111,-1097,-1081,-1062,-1049,-1031,
+-1019,-996,-972,-939,-901,-877,-828,-808,-796,-740,-727,-711,-680,-671,-637,-575,-438,-414,-398,-393,
+-370,-363,-348,-324,-303,-281,-260,-239,-209,-184,-156,-121,-87,-56,-21,14,47,81,126,139,
+173,229,248,313,378,448,509,562,636,693,764,822,889,917,912,868,834,971,1205,1400,
+1620,1778,2024,2290,2479,2639,2738,2744,2791,2593,2327,2050,1920,1832,1795,1816,1867,1918,1928,1904,
+1886,1941,1998,2021,1999,1956,1980,1949,1929,1889,1876,1859,1841,1796,1745,1683,1607,1529,1426,1299,
+1182,1117,1080,1058,1018,967,867,718,573,457,360,273,191,128,85,48,22,18,-85,-212,
+-304,-390,-447,-491,-533,-574,-611,-655,-705,-755,-795,-827,-865,-919,-997,-1064,-1119,-1191,-1290,-1391,
+-1472,-1551,-1637,-1742,-1833,-1906,-1982,-2065,-2144,-2196,-2236,-2270,-2317,-2352,-2371,-2379,-2391,-2410,-2417,-2433,
+-2475,-2510,-2537,-2551,-2576,-2606,-2618,-2604,-2586,-2580,-2603,-2585,-2535,-2495,-2481,-2486,-2522,-2530,-2570,-2603,
+-2680,-2722,-2815,-2763,-2722,-2689,-2689,-2680,-2683,-2607,-2583,-2571,-2532,-2509,-2491,-2448,-2400,-2376,-2450,-2520,
+-2563,-2586,-2595,-2558,-2594,-2531,-2506,-2453,-2398,-2351,-2299,-2253,-2198,-2135,-2062,-2008,-1981,-1946,-1893,-1779,
+-1717,-1728,-1668,-1592,-1529,-1480,-1438,-1387,-1329,-1269,-1225,-1186,-1154,-1110,-1058,-1007,-947,-870,-834,-781,
+-722,-660,-614,-565,-501,-433,-372,-332,-273,-223,-172,-104,-38,21,88,141,187,232,270,309,
+347,422,485,531,570,604,649,686,704,740,769,827,854,870,870,888,942,947,992,960,
+1039,1055,1066,1052,1075,1094,1125,1145,1166,1178,1187,1201,1211,1212,1194,1172,1155,1149,1156,1164,
+1159,1168,1187,1228,1283,1331,1401,1476,1579,1688,1786,1829,1815,1820,1864,1832,1781,1759,1761,1765,
+1768,1803,1853,1889,1923,1948,1946,1946,1949,1955,1953,1959,1957,1951,1951,1967,1989,1989,1986,2007,
+2006,2001,1995,1985,1971,1948,1953,1947,1939,1933,1931,1914,1905,1914,1909,1919,1910,1910,1904,1897,
+1891,1876,1862,1843,1834,1817,1812,1795,1797,1781,1781,1764,1756,1742,1742,1733,1730,1733,1725,1721,
+1725,1719,1717,1705,1693,1687,1675,1672,1671,1664,1672,1689,1704,1705,1687,1674,1679,1669,1669,1651,
+1634,1624,1620,1632,1670,1785,2075,1991,1637,1489,1421,1376,1349,1322,1277,1269,1276,1217,1090,977,
+927,928,988,1034,1063,1038,1019,1021,1011,955,900,822,730,639,564,486,365,217,84,-27,
+-131,-198,-265,-324,-371,-443,-562,-722,-856,-918,-971,-1082,-1193,-1287,-1356,-1408,-1454,-1487,-1512,-1554,
+-1621,-1676,-1720,-1759,-1774,-1781,-1785,-1816,-1858,-1898,-1927,-1932,-1947,-1978,-2017,-2047,-2050,-2029,-1996,-1958,
+-1904,-1861,-1800,-1737,-1685,-1637,-1578,-1514,-1435,-1358,-1312,-1228,-1107,-992,-898,-857,-843,-825,-942,-888,
+-863,-1071,-1106,-1165,-1237,-1280,-1293,-1305,-1300,-1291,-1294,-1335,-1395,-1458,-1529,-1568,-1602,-1623,-1623,-1581,
+-1491,-1355,-1275,-1404,-1484,-1389,-1358,-1353,-1361,-1418,-1620,-1783,-1879,-2010,-2108,-2191,-2301,-2428,-2554,-2648,
+-2730,-2797,-2885,-2971,-3056,-3146,-3225,-3285,-3317,-3333,-3336,-3381,-3467,-3607,-3788,-3947,-4060,-4145,-4220,-4279,
+-4354,-4385,-4423,-4470,-4500,-4557,-4654,-4734,-4760,-4789,-4831,-4883,-4923,-4955,-4976,-4994,-5003,-4935,-4872,-4902,
+-4888,-4919,-4937,-4940,-4928,-4930,-4932,-4938,-4954,-4979,-5001,-5011,-5015,-5029,-5041,-5062,-5084,-5108,-5136,-5170,
+-5183,-5199,-5261,-5236,-5273,-5378,-5441,-5497,-5555,-5610,-5671,-5734,-5801,-5862,-5916,-5969,-6030,-6111,-6185,-6240,
+-6294,-6353,-6421,-6489,-6546,-6591,-6631,-6706,-6780,-6846,-6946,-6987,-7044,-7118,-7189,-7270,-7287,-7338,-7402,-7466,
+-7541,-7599,-7667,-7751,-7763,-7795,-7898,-7919,-8041,-8073,-8135,-8198,-8322,-8415,-8496,-8598,-8676,-8754,-8840,-8918,
+-8990,-9063,-9146,-9216,-9239,-9329,-9403,-9446,-9505,-9547,-9548,-9546,-9425,-9360,-9468,-9599,-9664,-9713,-9800,-9968,
+-10052,-10061,-10055,-10063,-10090,-10127,-10168,-10209,-10237,-10255,-10265,-10272,-10289,-10293,-10295,-10292,-10292,-10299,-10293,-10281,
+-10276,-10270,-10260,-10237,-10196,-10141,-10074,-10000,-9909,-9795,-9660,-9541,-9463,-9417,-9399,-9369,-9320,-9237,-9144,-9041,
+-8936,-8825,-8694,-8565,-8440,-8296,-8156,-8036,-7918,-7795,-7663,-7525,-7381,-7227,-7087,-6992,-6893,-6756,-6582,-6483,
+-6353,-6226,-6081,-5930,-5786,-5661,-5523,-5398,-5294,-5167,-5016,-4843,-4685,-4522,-4349,-4166,-3992,-3836,-3700,-3581,
+-3446,-3239,-3044,-2973,-2975,-2997,-3026,-3015,-2925,-2662,-2365,-2058,-1918,-1749,-1471,-1296,-1208,-1110,-993,-827,
+-605,-462,-389,-293,-218,-156,-68,35,152,259,374,488,596,688,791,904,1012,1125,1225,1328,
+1413,1489,1580,1652,1732,1835,1952,2048,2142,2230,2318,2414,2507,2603,2707,2843,2963,3038,3136,3240,
+3329,3404,3465,3553,3639,3727,3839,3924,4030,4141,4273,4414,4507,4619,4725,4839,4905,4993,5072,5120,
+5169,5181,5210,5259,5277,5317,5366,5399,5452,5501,5480,5399,5350,5324,5366,5448,5472,5499,5542,5746,
+6059,6125,6171,6242,6245,6249,6239,6236,6160,6015,5835,5722,5688,5762,5883,5944,5908,5870,5831,5659,
+5423,5153,4888,4762,4863,5097,5564,6177,6827,7125,7279,7421,7407,7371,7392,7456,7436,7482,7475,7543,
+7614,7608,7556,7530,7535,7518,7465,7403,7367,7346,7343,7363,7384,7387,7374,7318,7247,7162,7077,7049,
+6953,6866,6838,6841,6859,6894,6915,6936,6945,6958,6985,7033,7056,7096,7102,7126,7143,7161,7184,7197,
+7213,7226,7219,7216,7213,7211,7190,7191,7189,7196,7190,7174,7172,7148,7118,7074,7040,7005,6973,6948,
+6923,6897,6873,6845,6810,6769,6722,6671,6627,6608,6597,6595,6600,6581,6502,6314,6083,6191,6387,6341,
+6238,6170,6150,6140,6074,5976,5978,5979,5896,5850,5816,5785,5761,5761,5771,5782,5826,5894,5934,5889,
+5849,5846,5846,5850,5846,5805,5747,5681,5602,5538,5485,5444,5405,5358,5299,5220,5140,5080,5026,4973,
+4928,4895,4864,4810,4735,4661,4589,4542,4508,4476,4438,4396,4368,4344,4310,4261,4225,4195,4158,4118,
+4067,4013,3966,3933,3906,3871,3833,3797,3761,3737,3699,3657,3612,3548,3489,3453,3379,3292,3251,3218,
+3199,3204,3213,3182,3125,3065,3004,2937,2856,2793,2763,2799,2827,2949,3064,2983,2873,2643,2575,2559,
+2562,2546,2525,2490,2450,2408,2364,2341,2326,2332,2305,2288,2266,2241,2219,2203,2190,2177,2159,2131,
+2087,2075,2055,2023,1997,1985,1979,1972,1963,1950,1920,1919,1913,1940,2028,1907,1843,1822,1803,1787,
+1775,1764,1753,1741,1718,1702,1694,1670,1635,1592,1555,1536,1530,1533,1528,1530,1519,1512,1516,1524,
+1530,1525,1510,1492,1473,1474,1471,1470,1470,1468,1479,1473,1470,1475,1483,1481,1472,1462,1453,1467,
+1590,1698,1661,1647,1592,1571,1590,1585,1569,1567,1583,1596,1598,1593,1589,1577,1563,1551,1547,1574,
+1691,1658,1639,1666,1684,1689,1676,1646,1642,1694,1685,1669,1668,1686,1710,1695,1650,1647,1633,1606,
+1579,1550,1527,1512,1502,1490,1482,1471,1458,1451,1438,1454,1445,1424,1385,1376,1345,1325,1316,1297,
+1276,1245,1216,1208,1169,1160,1157,1193,1120,1088,1066,1052,1031,1013,990,955,911,872,836,806,
+775,746,717,675,639,594,561,524,484,443,411,376,344,311,275,240,209,177,143,101,
+67,29,-15,-56,-93,-126,-170,-208,-254,-288,-338,-379,-421,-462,-505,-543,-572,-598,-644,-679,
+-646,-742,-783,-809,-835,-863,-886,-921,-954,-985,-1017,-1043,-1072,-1098,-1127,-1158,-1186,-1221,-1257,-1288,
+-1324,-1366,-1404,-1431,-1465,-1495,-1525,-1551,-1583,-1612,-1637,-1674,-1707,-1745,-1772,-1808,-1841,-1872,-1902,-1937,
+-1971,-1994,-2012,-2032,-2054,-2076,-2097,-2117,-2141,-2161,-2177,-2196,-2221,-2240,-2256,-2274,-2290,-2302,-2310,-2322,
+-2337,-2347,-2354,-2367,-2378,-2388,-2398,-2406,-2413,-2416,-2416,-2418,-2418,-2417,-2415,-2408,-2399,-2395,-2383,-2367,
+-2355,-2342,-2325,-2313,-2296,-2276,-2258,-2240,-2225,-2211,-2199,-2189,-2181,-2169,-2155,-2142,-2129,-2113,-2094,-2074,
+-2057,-2038,-2020,-2005,-1992,-1973,-1957,-1938,-1924,-1910,-1898,-1885,-1875,-1861,-1846,-1829,-1813,-1797,-1780,-1765,
+-1750,-1731,-1715,-1700,-1688,-1675,-1663,-1648,-1632,-1619,-1604,-1580,-1565,-1546,-1528,-1511,-1490,-1472,-1450,-1432,
+-1409,-1393,-1373,-1351,-1329,-1309,-1291,-1271,-1246,-1227,-1210,-1192,-1177,-1159,-1142,-1124,-1106,-1087,-1065,-1050,
+-1033,-1021,-1006,-988,-963,-930,-912,-880,-847,-825,-798,-774,-766,-716,-625,-624,-662,-566,-416,-402,
+-377,-408,-401,-369,-349,-324,-305,-283,-257,-229,-201,-169,-136,-106,-74,-43,-12,13,39,96,
+112,141,204,245,286,372,446,519,581,650,709,785,870,935,940,914,842,850,1073,1238,
+1422,1638,1774,2040,2289,2412,2660,2724,2795,2627,2275,2047,1927,1837,1777,1757,1789,1859,1922,1925,
+1887,1890,1950,1989,1988,1964,1923,1914,1911,1894,1867,1863,1868,1850,1810,1755,1692,1641,1569,1467,
+1317,1160,1103,1101,1088,1053,992,902,771,643,532,435,354,272,199,133,68,6,-57,-127,
+-206,-277,-344,-398,-440,-480,-518,-561,-614,-676,-733,-773,-808,-844,-900,-976,-1043,-1104,-1178,-1267,
+-1360,-1443,-1525,-1614,-1718,-1823,-1900,-1975,-2057,-2136,-2195,-2234,-2270,-2311,-2345,-2367,-2377,-2389,-2402,-2424,
+-2439,-2467,-2499,-2522,-2518,-2527,-2576,-2581,-2579,-2567,-2562,-2565,-2554,-2510,-2467,-2448,-2425,-2437,-2511,-2560,
+-2606,-2681,-2707,-2723,-2716,-2671,-2688,-2681,-2692,-2657,-2628,-2617,-2598,-2568,-2550,-2554,-2505,-2432,-2387,-2358,
+-2345,-2334,-2399,-2519,-2611,-2617,-2581,-2546,-2500,-2452,-2405,-2361,-2308,-2239,-2166,-1965,-1959,-1955,-1927,-1860,
+-1863,-1817,-1783,-1725,-1653,-1590,-1539,-1491,-1433,-1374,-1326,-1280,-1241,-1200,-1157,-1106,-1043,-979,-919,-876,
+-826,-773,-724,-673,-620,-546,-488,-389,-333,-287,-237,-198,-145,-100,-47,6,62,130,179,246,
+292,321,376,435,472,514,549,599,648,682,732,760,802,830,857,878,892,944,988,1007,
+1019,1068,1079,1047,1034,1047,1066,1092,1105,1128,1134,1144,1149,1149,1122,1110,1093,1108,1136,1159,
+1204,1236,1271,1300,1332,1369,1421,1515,1586,1654,1637,1591,1549,1596,1670,1786,1864,1843,1835,1851,
+1881,1871,1894,1917,1935,1943,1941,1952,1956,1942,1952,1947,1935,1923,1926,1931,1944,1983,2003,2002,
+1992,1982,1965,1960,1960,1948,1929,1924,1909,1934,1942,1936,1930,1936,1947,1952,1955,1936,1927,1911,
+1898,1882,1857,1845,1835,1823,1814,1807,1793,1773,1767,1770,1760,1754,1738,1737,1738,1733,1725,1726,
+1725,1722,1716,1708,1708,1703,1694,1685,1694,1686,1690,1701,1705,1713,1712,1698,1684,1680,1668,1657,
+1648,1642,1633,1624,1631,1671,1759,1937,1787,1585,1488,1430,1383,1358,1335,1272,1207,1214,1194,1120,
+1053,940,861,884,960,998,988,955,927,910,890,867,804,728,652,579,498,380,229,87,
+-28,-127,-184,-240,-312,-358,-431,-543,-708,-882,-994,-1022,-1062,-1149,-1255,-1356,-1434,-1494,-1534,-1559,
+-1600,-1668,-1717,-1754,-1789,-1819,-1840,-1844,-1852,-1871,-1899,-1945,-1972,-1999,-2038,-2072,-2096,-2086,-2050,-2010,
+-1965,-1919,-1870,-1810,-1750,-1710,-1668,-1615,-1539,-1452,-1370,-1322,-1241,-1116,-978,-867,-826,-789,-745,-883,
+-1015,-1078,-1144,-1143,-1206,-1271,-1304,-1309,-1308,-1295,-1310,-1343,-1398,-1487,-1565,-1612,-1637,-1657,-1672,-1694,
+-1700,-1633,-1512,-1373,-1406,-1439,-1377,-1318,-1326,-1337,-1313,-1482,-1783,-1960,-2069,-2153,-2232,-2335,-2446,-2567,
+-2669,-2762,-2834,-2913,-2999,-3095,-3192,-3270,-3318,-3329,-3326,-3331,-3381,-3515,-3723,-3924,-4051,-4133,-4195,-4239,
+-4288,-4357,-4398,-4436,-4481,-4500,-4548,-4636,-4726,-4771,-4804,-4841,-4890,-4914,-4944,-4961,-4975,-4974,-4909,-4838,
+-4895,-4884,-4911,-4923,-4923,-4908,-4901,-4904,-4912,-4924,-4949,-4968,-4994,-5000,-5003,-5018,-5042,-5069,-5096,-5120,
+-5151,-5143,-5150,-5218,-5169,-5284,-5384,-5429,-5488,-5548,-5598,-5655,-5714,-5770,-5827,-5885,-5944,-6001,-6079,-6154,
+-6214,-6259,-6329,-6404,-6480,-6556,-6609,-6678,-6729,-6790,-6841,-6888,-6965,-7074,-7157,-7225,-7245,-7299,-7370,-7412,
+-7461,-7506,-7577,-7665,-7697,-7737,-7829,-7863,-7911,-7968,-8037,-8051,-8183,-8299,-8392,-8483,-8560,-8647,-8723,-8805,
+-8853,-8947,-9020,-9100,-9129,-9207,-9307,-9352,-9424,-9500,-9540,-9553,-9551,-9480,-9478,-9533,-9583,-9639,-9691,-9785,
+-9952,-10041,-10037,-10026,-10032,-10063,-10096,-10124,-10167,-10200,-10215,-10223,-10237,-10255,-10269,-10274,-10276,-10274,-10282,-10279,
+-10267,-10259,-10242,-10225,-10199,-10156,-10101,-10035,-9956,-9858,-9737,-9586,-9462,-9417,-9414,-9397,-9348,-9277,-9182,-9080,
+-8969,-8864,-8763,-8645,-8525,-8411,-8265,-8133,-8016,-7904,-7781,-7660,-7526,-7378,-7212,-7064,-6972,-6882,-6728,-6555,
+-6452,-6328,-6214,-6089,-5941,-5804,-5665,-5523,-5403,-5302,-5175,-5021,-4844,-4687,-4526,-4341,-4159,-3983,-3825,-3682,
+-3559,-3424,-3228,-3067,-3003,-2969,-2957,-2959,-2943,-2892,-2670,-2400,-2098,-1908,-1723,-1511,-1313,-1241,-1180,-1077,
+-929,-692,-468,-298,-197,-163,-102,-25,64,165,281,391,509,640,741,842,925,1036,1153,1272,
+1342,1445,1514,1597,1678,1749,1841,1951,2055,2161,2260,2345,2438,2524,2611,2733,2858,2977,3063,3144,
+3251,3353,3434,3507,3587,3673,3759,3843,3948,4033,4139,4272,4357,4470,4588,4659,4787,4897,4974,5079,
+5116,5131,5177,5200,5222,5255,5292,5313,5352,5412,5461,5448,5412,5334,5277,5294,5357,5419,5490,5633,
+5828,5982,5985,6007,6035,6057,6114,6173,6203,6160,6031,5796,5600,5463,5348,5317,5328,5338,5350,5297,
+5129,4977,4728,4479,4440,4599,4898,5422,6095,6789,7120,7217,7336,7332,7274,7284,7313,7378,7425,7491,
+7506,7602,7631,7638,7656,7581,7436,7297,7210,7198,7224,7259,7273,7288,7315,7336,7309,7311,7280,7264,
+7347,7273,7013,6899,6835,6796,6804,6818,6840,6859,6881,6912,6943,6998,7041,7052,7090,7139,7168,7192,
+7212,7231,7242,7250,7257,7251,7246,7239,7242,7241,7242,7227,7210,7196,7183,7144,7091,7065,7034,6994,
+6961,6940,6917,6895,6865,6822,6772,6717,6664,6615,6584,6566,6557,6564,6564,6511,6369,6170,6151,6424,
+6362,6240,6173,6162,6160,6163,6090,6029,6042,5953,5896,5863,5840,5816,5808,5833,5860,5882,5924,5965,
+5944,5903,5904,5895,5880,5865,5832,5784,5726,5651,5580,5517,5468,5427,5378,5325,5252,5179,5115,5060,
+4998,4944,4899,4862,4814,4746,4674,4603,4542,4488,4454,4425,4390,4365,4349,4319,4277,4237,4201,4165,
+4124,4065,4014,3974,3955,3916,3882,3852,3823,3796,3767,3725,3680,3634,3576,3508,3467,3416,3339,3288,
+3244,3204,3192,3195,3165,3118,3068,3012,2947,2875,2810,2774,2766,2757,2804,2907,2835,2695,2618,2580,
+2565,2565,2546,2522,2501,2467,2435,2408,2362,2339,2324,2319,2309,2293,2267,2241,2222,2201,2183,2168,
+2154,2128,2103,2097,2051,2020,2001,1992,2004,2001,1946,1914,1902,1895,1903,1918,1882,1847,1818,1795,
+1784,1774,1766,1756,1747,1727,1714,1705,1684,1652,1614,1573,1552,1541,1544,1555,1551,1539,1521,1525,
+1528,1532,1535,1525,1502,1481,1475,1473,1488,1495,1484,1475,1479,1475,1470,1462,1447,1440,1465,1479,
+1449,1469,1538,1564,1573,1600,1602,1594,1574,1563,1563,1571,1586,1597,1603,1600,1592,1575,1560,1556,
+1573,1612,1618,1622,1649,1683,1698,1691,1664,1659,1675,1660,1658,1668,1654,1682,1717,1683,1636,1650,
+1623,1588,1565,1537,1517,1504,1495,1480,1470,1456,1443,1428,1420,1408,1394,1374,1376,1354,1359,1346,
+1314,1291,1255,1224,1200,1174,1166,1160,1155,1119,1085,1066,1041,1017,993,965,937,906,871,838,
+809,782,748,713,670,632,593,566,532,496,456,422,389,358,326,289,255,225,191,156,
+116,79,38,1,-39,-78,-114,-154,-187,-227,-263,-302,-349,-399,-441,-482,-528,-561,-582,-614,
+-658,-676,-643,-731,-781,-819,-846,-865,-903,-929,-955,-987,-1015,-1042,-1069,-1100,-1130,-1161,-1194,-1227,
+-1258,-1295,-1330,-1363,-1399,-1431,-1460,-1492,-1521,-1553,-1578,-1617,-1654,-1680,-1716,-1741,-1776,-1813,-1849,-1880,
+-1912,-1941,-1957,-1981,-2004,-2032,-2055,-2072,-2092,-2113,-2128,-2145,-2170,-2192,-2209,-2226,-2244,-2258,-2268,-2273,
+-2285,-2298,-2308,-2316,-2330,-2345,-2358,-2368,-2375,-2380,-2381,-2383,-2389,-2387,-2380,-2376,-2371,-2367,-2361,-2347,
+-2335,-2326,-2310,-2292,-2278,-2263,-2246,-2227,-2209,-2191,-2180,-2169,-2157,-2147,-2138,-2122,-2105,-2090,-2073,-2056,
+-2042,-2026,-2009,-1994,-1976,-1964,-1953,-1941,-1922,-1907,-1889,-1874,-1863,-1849,-1840,-1829,-1815,-1801,-1788,-1771,
+-1755,-1738,-1721,-1709,-1694,-1682,-1668,-1655,-1643,-1629,-1614,-1599,-1577,-1561,-1542,-1526,-1508,-1488,-1470,-1450,
+-1431,-1411,-1393,-1373,-1354,-1336,-1314,-1297,-1275,-1258,-1243,-1222,-1201,-1185,-1167,-1152,-1135,-1116,-1097,-1078,
+-1065,-1051,-1038,-1026,-1012,-987,-961,-931,-908,-878,-851,-841,-837,-822,-735,-500,-449,-648,-594,-540,
+-426,-405,-425,-411,-358,-358,-349,-299,-287,-259,-238,-211,-180,-150,-127,-103,-71,-34,1,8,
+66,81,117,188,243,286,381,442,522,617,675,757,858,958,1008,986,910,839,951,1125,
+1287,1463,1637,1807,2048,2294,2555,2707,2713,2769,2510,2222,1946,1820,1772,1752,1745,1782,1847,1911,
+1922,1899,1909,1960,1979,1974,1954,1922,1889,1880,1880,1862,1860,1875,1873,1839,1774,1703,1657,1582,
+1495,1351,1210,1151,1129,1104,1052,979,893,796,693,599,509,428,345,265,190,114,38,-36,
+-106,-169,-230,-291,-345,-390,-430,-476,-526,-582,-646,-706,-751,-789,-829,-883,-954,-1025,-1094,-1167,
+-1255,-1335,-1412,-1495,-1592,-1689,-1784,-1874,-1947,-2009,-2087,-2155,-2201,-2236,-2274,-2307,-2330,-2367,-2379,-2397,
+-2414,-2445,-2477,-2491,-2506,-2497,-2493,-2526,-2539,-2546,-2538,-2543,-2536,-2527,-2477,-2443,-2418,-2396,-2380,-2490,
+-2554,-2592,-2646,-2678,-2659,-2691,-2681,-2685,-2679,-2686,-2640,-2654,-2647,-2622,-2583,-2556,-2527,-2469,-2403,-2362,
+-2340,-2328,-2298,-2268,-2332,-2512,-2580,-2582,-2548,-2492,-2454,-2408,-2368,-2326,-2271,-2195,-2099,-2049,-1999,-1934,
+-1907,-1863,-1841,-1795,-1725,-1670,-1604,-1552,-1508,-1460,-1413,-1362,-1310,-1266,-1218,-1171,-1118,-1050,-991,-934,
+-886,-833,-782,-740,-699,-645,-579,-507,-444,-377,-321,-267,-208,-154,-107,-50,5,56,127,174,
+195,245,287,344,414,449,482,527,565,611,660,694,744,780,800,817,831,856,907,925,
+987,1005,1033,1055,1025,1011,1022,1029,1035,1045,1065,1060,1060,1054,1048,1039,1072,1105,1193,1281,
+1313,1355,1395,1400,1374,1343,1347,1351,1362,1322,1347,1400,1464,1535,1676,1757,1851,1886,1888,1885,
+1897,1896,1904,1903,1918,1930,1931,1934,1944,1939,1929,1935,1935,1927,1921,1932,1928,1938,1958,1960,
+1926,1912,1905,1919,1943,1970,1969,1964,1953,1928,1941,1953,1952,1950,1967,1971,1967,1951,1937,1921,
+1900,1888,1864,1859,1841,1821,1812,1807,1796,1789,1777,1769,1762,1754,1744,1736,1735,1738,1737,1727,
+1725,1722,1726,1728,1719,1722,1717,1704,1697,1696,1698,1701,1719,1712,1703,1709,1707,1702,1683,1663,
+1651,1648,1637,1611,1602,1630,1693,1683,1668,1610,1538,1478,1428,1400,1380,1346,1273,1205,1222,1213,
+1136,1104,996,864,852,909,955,930,878,844,835,832,829,782,716,668,593,505,385,249,
+114,1,-88,-154,-226,-291,-344,-417,-517,-683,-852,-1006,-1114,-1151,-1158,-1197,-1307,-1428,-1510,-1568,
+-1610,-1653,-1707,-1756,-1796,-1839,-1872,-1889,-1893,-1890,-1895,-1911,-1955,-2008,-2047,-2084,-2109,-2119,-2111,-2076,
+-2025,-1972,-1919,-1872,-1820,-1769,-1717,-1672,-1622,-1556,-1471,-1393,-1344,-1266,-1151,-999,-868,-812,-743,-721,
+-997,-1159,-1158,-1107,-1111,-1205,-1285,-1322,-1314,-1303,-1334,-1373,-1404,-1479,-1566,-1648,-1694,-1711,-1730,-1761,
+-1786,-1793,-1726,-1588,-1422,-1371,-1405,-1374,-1296,-1265,-1354,-1328,-1541,-1819,-2009,-2090,-2162,-2238,-2345,-2470,
+-2601,-2684,-2781,-2860,-2931,-3026,-3128,-3215,-3276,-3311,-3325,-3317,-3349,-3447,-3634,-3846,-4007,-4110,-4173,-4209,
+-4238,-4280,-4340,-4383,-4416,-4452,-4487,-4548,-4632,-4709,-4764,-4800,-4836,-4886,-4913,-4934,-4948,-4954,-4938,-4879,
+-4823,-4881,-4865,-4891,-4907,-4900,-4882,-4883,-4876,-4882,-4897,-4921,-4939,-4973,-4981,-4990,-4991,-5013,-5040,-5071,
+-5106,-5130,-5104,-5176,-5209,-5190,-5319,-5376,-5422,-5479,-5531,-5581,-5628,-5681,-5733,-5792,-5861,-5913,-5969,-6036,
+-6116,-6182,-6228,-6297,-6378,-6460,-6541,-6605,-6669,-6727,-6777,-6835,-6899,-6986,-7066,-7143,-7207,-7257,-7298,-7337,
+-7385,-7436,-7480,-7578,-7615,-7660,-7762,-7778,-7840,-7834,-7925,-7971,-8029,-8151,-8250,-8346,-8427,-8505,-8601,-8683,
+-8739,-8827,-8894,-8984,-9028,-9094,-9196,-9244,-9328,-9393,-9455,-9493,-9514,-9497,-9462,-9456,-9490,-9555,-9605,-9661,
+-9767,-9938,-10015,-10010,-9997,-10003,-10032,-10068,-10108,-10128,-10148,-10166,-10172,-10192,-10208,-10228,-10240,-10247,-10250,-10257,
+-10255,-10243,-10227,-10211,-10189,-10155,-10105,-10052,-9985,-9905,-9808,-9690,-9535,-9418,-9408,-9421,-9389,-9323,-9242,-9149,
+-9043,-8931,-8826,-8731,-8621,-8509,-8398,-8251,-8127,-8012,-7899,-7783,-7661,-7526,-7376,-7201,-7027,-6922,-6839,-6684,
+-6499,-6374,-6248,-6147,-6044,-5931,-5808,-5677,-5535,-5407,-5297,-5176,-5021,-4845,-4681,-4527,-4347,-4164,-3982,-3820,
+-3679,-3562,-3412,-3227,-3092,-2997,-2949,-2917,-2872,-2850,-2843,-2707,-2427,-2160,-1962,-1757,-1584,-1428,-1326,-1267,
+-1154,-995,-796,-508,-287,-169,-95,-40,11,117,207,304,404,515,641,760,856,951,1055,1189,
+1312,1368,1446,1540,1609,1688,1771,1856,1953,2053,2164,2260,2355,2453,2539,2628,2711,2842,2975,3069,
+3152,3262,3365,3453,3555,3645,3735,3826,3882,3968,4055,4159,4250,4340,4442,4599,4644,4717,4849,4948,
+5017,5041,5066,5093,5160,5212,5248,5280,5303,5335,5379,5424,5448,5455,5373,5284,5293,5349,5442,5586,
+5694,5849,5921,5869,5899,5960,6058,6124,6194,6275,6339,6287,6042,5825,5592,5356,5223,5106,5028,5046,
+5007,4709,4530,4367,4205,4197,4372,4669,5204,5862,6622,7024,7138,7289,7303,7239,7194,7168,7187,7288,
+7404,7412,7500,7598,7670,7657,7684,7614,7389,7284,7307,7401,7512,7486,7423,7360,7317,7319,7313,7323,
+7326,7391,7461,7418,7231,7045,6908,6816,6783,6768,6775,6795,6828,6861,6905,6938,6975,7030,7098,7149,
+7185,7215,7248,7257,7272,7281,7280,7283,7277,7286,7281,7274,7251,7248,7221,7198,7157,7115,7075,7042,
+7006,6970,6939,6922,6890,6856,6819,6766,6709,6673,6637,6595,6558,6533,6521,6531,6505,6393,6240,6157,
+6410,6373,6254,6188,6184,6171,6179,6164,6023,5989,5980,5938,5904,5893,5870,5858,5871,5902,5941,5948,
+5954,5952,5940,5928,5914,5899,5880,5849,5805,5753,5688,5613,5550,5499,5446,5398,5345,5286,5217,5152,
+5090,5016,4950,4898,4865,4828,4771,4705,4631,4552,4483,4437,4407,4386,4367,4352,4319,4280,4241,4203,
+4169,4128,4077,4019,3988,3960,3925,3898,3883,3875,3847,3788,3738,3693,3650,3594,3534,3495,3457,3388,
+3324,3267,3223,3196,3187,3171,3138,3099,3047,2987,2900,2835,2799,2802,2724,2716,2777,2762,2673,2666,
+2636,2590,2560,2534,2510,2490,2473,2458,2426,2376,2357,2335,2330,2328,2316,2288,2256,2228,2201,2179,
+2163,2155,2134,2109,2111,2070,2037,2016,2007,2014,1998,1943,1914,1893,1881,1868,1876,1941,1923,1816,
+1780,1768,1766,1760,1755,1748,1732,1719,1710,1694,1669,1635,1602,1574,1555,1565,1615,1581,1565,1556,
+1537,1536,1535,1536,1519,1500,1504,1499,1490,1493,1489,1485,1489,1478,1459,1463,1463,1411,1405,1460,
+1481,1474,1489,1513,1540,1560,1570,1567,1559,1553,1550,1547,1549,1560,1577,1590,1596,1591,1581,1567,
+1562,1597,1687,1624,1591,1615,1656,1682,1683,1671,1652,1660,1660,1688,1723,1638,1638,1689,1688,1638,
+1600,1610,1603,1569,1550,1534,1518,1495,1478,1465,1447,1442,1423,1406,1399,1400,1376,1367,1356,1346,
+1329,1300,1283,1260,1235,1213,1193,1176,1164,1146,1122,1091,1062,1037,1014,980,952,931,910,874,
+835,797,765,744,719,685,655,615,594,559,514,466,430,397,365,331,292,256,220,185,
+154,122,91,54,15,-22,-60,-98,-135,-173,-207,-246,-287,-330,-374,-418,-460,-508,-543,-567,
+-591,-622,-657,-696,-742,-773,-797,-824,-849,-875,-899,-928,-956,-983,-1014,-1045,-1069,-1096,-1127,-1162,
+-1196,-1233,-1268,-1295,-1326,-1364,-1394,-1425,-1458,-1493,-1523,-1558,-1591,-1627,-1651,-1681,-1716,-1750,-1785,-1819,
+-1850,-1874,-1891,-1914,-1941,-1972,-2001,-2026,-2048,-2069,-2088,-2103,-2124,-2147,-2166,-2179,-2194,-2212,-2226,-2238,
+-2245,-2257,-2266,-2274,-2284,-2295,-2306,-2318,-2333,-2342,-2346,-2351,-2353,-2351,-2345,-2341,-2341,-2338,-2335,-2327,
+-2316,-2304,-2293,-2275,-2258,-2244,-2231,-2213,-2195,-2182,-2167,-2154,-2139,-2125,-2116,-2106,-2094,-2078,-2062,-2050,
+-2028,-2010,-1994,-1980,-1965,-1950,-1935,-1919,-1908,-1899,-1889,-1876,-1862,-1848,-1834,-1823,-1808,-1797,-1782,-1769,
+-1761,-1750,-1733,-1716,-1702,-1685,-1672,-1658,-1646,-1630,-1619,-1607,-1588,-1574,-1558,-1539,-1520,-1503,-1482,-1466,
+-1446,-1428,-1411,-1395,-1374,-1357,-1338,-1318,-1301,-1282,-1265,-1247,-1229,-1210,-1195,-1179,-1166,-1153,-1138,-1121,
+-1106,-1095,-1082,-1066,-1050,-1036,-1012,-983,-952,-933,-896,-877,-865,-873,-871,-722,-482,-376,-551,-415,
+-452,-489,-438,-456,-428,-381,-379,-315,-327,-294,-285,-264,-242,-220,-187,-157,-127,-91,-51,-15,
+31,59,110,136,175,235,303,368,442,537,627,710,804,881,992,1043,985,893,925,1083,
+1205,1399,1517,1649,1822,2116,2321,2600,2673,2761,2709,2444,2204,1888,1769,1739,1719,1748,1795,1865,
+1904,1898,1901,1915,1942,1969,1976,1967,1946,1915,1889,1880,1872,1877,1895,1889,1846,1786,1710,1648,
+1586,1504,1398,1290,1224,1172,1118,1043,958,879,807,728,647,568,485,399,314,237,166,92,
+19,-53,-113,-174,-235,-292,-344,-395,-448,-501,-556,-617,-678,-731,-778,-818,-869,-936,-1007,-1085,
+-1163,-1246,-1316,-1376,-1464,-1574,-1671,-1757,-1847,-1914,-1976,-2041,-2090,-2148,-2188,-2227,-2263,-2300,-2350,-2375,
+-2389,-2401,-2441,-2482,-2495,-2492,-2477,-2464,-2479,-2499,-2510,-2513,-2520,-2509,-2485,-2447,-2419,-2403,-2407,-2445,
+-2509,-2551,-2592,-2631,-2623,-2638,-2663,-2666,-2639,-2652,-2647,-2634,-2650,-2632,-2607,-2570,-2520,-2477,-2417,-2363,
+-2324,-2293,-2292,-2322,-2316,-2253,-2342,-2486,-2515,-2490,-2444,-2371,-2341,-2316,-2291,-2248,-2191,-2130,-2071,-2004,
+-1944,-1898,-1860,-1817,-1756,-1692,-1657,-1597,-1538,-1486,-1440,-1396,-1349,-1288,-1234,-1186,-1135,-1080,-1017,-955,
+-901,-853,-801,-752,-715,-669,-615,-553,-485,-435,-376,-323,-273,-223,-178,-125,-76,-30,19,74,
+112,156,203,246,319,379,420,466,508,554,593,645,675,700,737,765,778,795,819,845,
+882,948,1015,978,1038,1012,992,985,990,988,975,966,964,974,1009,1055,1108,1161,1178,1196,
+1232,1255,1274,1300,1304,1264,1203,1143,1138,1255,1392,1508,1597,1648,1702,1764,1815,1824,1870,1893,
+1903,1916,1875,1896,1888,1904,1915,1914,1928,1937,1929,1930,1923,1921,1904,1923,1913,1930,1941,1911,
+1944,1975,1975,1993,1996,1966,1964,1975,1983,1984,1971,1962,1962,1969,1982,1954,1960,1946,1938,1914,
+1906,1885,1877,1862,1852,1830,1826,1811,1806,1797,1790,1780,1772,1761,1760,1763,1755,1749,1744,1729,
+1726,1726,1726,1745,1753,1746,1745,1735,1721,1726,1703,1730,1763,1732,1705,1707,1719,1725,1707,1687,
+1664,1655,1646,1618,1601,1604,1613,1629,1620,1569,1539,1500,1456,1424,1416,1404,1379,1355,1274,1247,
+1212,1127,1085,1016,877,829,874,916,896,836,814,815,814,799,767,722,680,600,496,385,
+268,147,29,-62,-151,-235,-279,-357,-406,-496,-645,-809,-988,-1133,-1204,-1216,-1234,-1284,-1423,-1514,
+-1585,-1642,-1691,-1744,-1791,-1831,-1870,-1901,-1920,-1932,-1941,-1951,-1952,-1983,-2044,-2072,-2095,-2111,-2117,-2117,
+-2096,-2050,-1981,-1911,-1857,-1813,-1757,-1711,-1664,-1621,-1557,-1466,-1396,-1338,-1260,-1164,-1019,-890,-782,-739,
+-849,-1102,-1176,-1104,-1064,-1111,-1194,-1282,-1333,-1346,-1358,-1409,-1463,-1505,-1559,-1628,-1697,-1739,-1756,-1760,
+-1766,-1743,-1671,-1576,-1509,-1411,-1338,-1377,-1391,-1314,-1264,-1423,-1548,-1708,-1887,-1993,-2063,-2149,-2235,-2345,
+-2476,-2603,-2705,-2785,-2870,-2946,-3043,-3138,-3209,-3260,-3293,-3323,-3347,-3413,-3568,-3774,-3948,-4068,-4141,-4182,
+-4201,-4223,-4261,-4318,-4354,-4387,-4428,-4479,-4551,-4631,-4696,-4750,-4784,-4826,-4875,-4908,-4921,-4935,-4926,-4897,
+-4845,-4844,-4876,-4862,-4878,-4889,-4877,-4871,-4856,-4853,-4861,-4882,-4892,-4928,-4951,-4961,-4972,-4973,-4986,-5011,
+-5040,-5078,-5105,-5108,-5171,-5227,-5261,-5285,-5362,-5406,-5455,-5508,-5557,-5601,-5650,-5703,-5761,-5817,-5875,-5932,
+-5991,-6069,-6152,-6211,-6261,-6338,-6420,-6501,-6569,-6638,-6716,-6786,-6843,-6890,-6963,-7027,-7067,-7111,-7210,-7285,
+-7310,-7354,-7425,-7509,-7537,-7564,-7676,-7708,-7776,-7772,-7819,-7930,-7974,-8028,-8080,-8220,-8277,-8395,-8464,-8557,
+-8632,-8706,-8775,-8864,-8922,-9001,-9077,-9145,-9219,-9289,-9354,-9399,-9466,-9455,-9431,-9393,-9394,-9450,-9509,-9554,
+-9623,-9739,-9919,-9990,-9989,-9973,-9972,-9987,-10028,-10066,-10085,-10095,-10121,-10134,-10144,-10153,-10176,-10201,-10216,-10220,
+-10225,-10223,-10208,-10187,-10169,-10147,-10112,-10068,-10014,-9947,-9862,-9775,-9667,-9541,-9472,-9459,-9429,-9372,-9299,-9218,
+-9129,-9026,-8923,-8823,-8727,-8621,-8511,-8397,-8254,-8131,-8017,-7904,-7794,-7676,-7543,-7379,-7201,-7020,-6915,-6814,
+-6642,-6473,-6314,-6212,-6107,-6016,-5934,-5822,-5695,-5565,-5430,-5307,-5181,-5019,-4835,-4675,-4528,-4361,-4185,-3994,
+-3832,-3696,-3579,-3413,-3239,-3102,-2984,-2927,-2868,-2768,-2765,-2795,-2765,-2579,-2319,-2119,-1804,-1629,-1555,-1489,
+-1420,-1285,-1100,-900,-614,-331,-205,-54,38,75,147,244,343,424,523,639,756,873,974,1064,
+1179,1324,1389,1462,1536,1634,1716,1797,1873,1955,2053,2152,2242,2351,2462,2547,2625,2703,2797,2941,
+3066,3162,3268,3371,3464,3559,3645,3802,3869,3932,4017,4103,4209,4305,4405,4481,4560,4648,4732,4806,
+4887,4962,4958,4960,5017,5113,5193,5263,5296,5323,5340,5359,5389,5443,5496,5439,5312,5301,5356,5474,
+5649,5778,5890,5998,5863,5878,5994,6126,6173,6223,6291,6272,6170,6066,6002,5823,5578,5269,4946,4779,
+4741,4729,4418,4151,4069,4040,4087,4233,4492,4909,5533,6295,6789,7022,7030,7201,7226,7208,7119,7051,
+7069,7194,7353,7468,7525,7534,7548,7513,7407,7313,7346,7534,7804,7921,7947,7812,7586,7412,7340,7314,
+7280,7311,7375,7481,7591,7541,7400,7193,7049,6932,6844,6790,6772,6783,6808,6833,6855,6890,6963,7045,
+7104,7160,7206,7238,7261,7277,7293,7300,7309,7315,7316,7300,7289,7291,7277,7254,7212,7181,7144,7104,
+7066,7014,6980,6971,6982,6987,6992,6995,6972,6932,6915,6902,6837,6777,6738,6673,6656,6615,6479,6324,
+6237,6329,6334,6285,6205,6179,6172,6200,6195,6097,5999,6066,6013,5953,5927,5902,5880,5881,5925,5975,
+5965,5934,5928,5936,5943,5932,5922,5895,5859,5819,5777,5724,5664,5597,5540,5482,5422,5362,5312,5257,
+5195,5122,5044,4970,4918,4880,4847,4798,4735,4655,4577,4508,4456,4416,4381,4378,4355,4321,4282,4237,
+4198,4167,4127,4084,4028,3982,3954,3928,3917,3916,3953,3979,3820,3746,3703,3666,3605,3550,3510,3487,
+3430,3368,3305,3270,3231,3205,3192,3172,3136,3095,3035,2962,2889,2832,2784,2724,2688,2686,2714,2800,
+2991,2811,2644,2568,2537,2509,2493,2476,2456,2431,2384,2370,2346,2346,2356,2385,2326,2274,2232,2205,
+2175,2154,2145,2127,2102,2104,2074,2039,2022,2011,2010,2018,1962,1922,1894,1872,1858,1886,1991,1917,
+1797,1748,1740,1747,1748,1743,1740,1736,1725,1716,1705,1686,1658,1630,1601,1579,1582,1589,1599,1642,
+1611,1615,1546,1529,1526,1514,1503,1488,1488,1486,1483,1497,1511,1491,1487,1501,1524,1511,1461,1462,
+1485,1462,1459,1485,1490,1506,1529,1538,1535,1534,1534,1532,1532,1531,1537,1547,1561,1576,1580,1579,
+1568,1560,1587,1673,1587,1550,1576,1620,1651,1660,1657,1645,1628,1620,1610,1616,1610,1603,1644,1713,
+1677,1668,1604,1579,1585,1551,1540,1527,1506,1488,1466,1444,1420,1409,1393,1382,1373,1363,1351,1342,
+1332,1316,1290,1268,1240,1217,1205,1195,1183,1166,1146,1133,1110,1086,1049,1015,983,965,936,911,
+884,848,812,777,751,732,694,661,629,599,565,520,475,440,403,360,323,289,255,220,
+190,160,127,98,65,36,-1,-41,-82,-121,-158,-197,-230,-264,-305,-346,-391,-440,-485,-521,
+-556,-580,-606,-632,-654,-693,-739,-774,-802,-821,-848,-879,-902,-929,-962,-997,-1031,-1057,-1074,-1103,
+-1135,-1168,-1206,-1238,-1268,-1301,-1343,-1380,-1408,-1433,-1463,-1495,-1524,-1558,-1588,-1620,-1652,-1685,-1720,-1756,
+-1787,-1814,-1831,-1851,-1880,-1908,-1934,-1963,-1992,-2016,-2039,-2057,-2074,-2095,-2119,-2134,-2146,-2162,-2183,-2198,
+-2210,-2218,-2228,-2235,-2243,-2254,-2258,-2267,-2281,-2293,-2300,-2308,-2316,-2318,-2313,-2310,-2310,-2309,-2305,-2302,
+-2295,-2289,-2275,-2260,-2244,-2227,-2214,-2200,-2183,-2163,-2146,-2137,-2127,-2119,-2105,-2089,-2075,-2060,-2046,-2030,
+-2017,-2005,-1990,-1975,-1961,-1944,-1928,-1916,-1902,-1888,-1876,-1863,-1852,-1840,-1828,-1815,-1804,-1792,-1781,-1767,
+-1752,-1743,-1730,-1719,-1704,-1690,-1678,-1665,-1648,-1635,-1622,-1609,-1595,-1580,-1568,-1551,-1532,-1517,-1501,-1481,
+-1463,-1446,-1430,-1413,-1396,-1376,-1358,-1342,-1322,-1303,-1288,-1268,-1252,-1235,-1222,-1206,-1193,-1176,-1162,-1149,
+-1135,-1123,-1115,-1105,-1093,-1076,-1054,-1028,-1002,-973,-949,-935,-903,-893,-900,-905,-785,-534,-423,-411,
+-459,-391,-408,-421,-393,-391,-394,-367,-364,-301,-321,-278,-257,-239,-219,-190,-156,-131,-100,-67,
+-30,3,58,95,128,180,238,309,378,450,555,642,730,816,887,957,981,919,837,965,
+1121,1280,1442,1575,1696,1878,2131,2384,2591,2667,2782,2649,2417,2132,1832,1717,1698,1704,1741,1801,
+1854,1869,1876,1894,1922,1929,1964,1991,1990,1965,1941,1930,1922,1909,1901,1897,1886,1856,1786,1719,
+1654,1594,1527,1443,1358,1298,1232,1150,1055,969,900,833,757,683,609,532,446,358,284,217,
+146,70,-4,-69,-130,-191,-248,-305,-363,-426,-485,-540,-601,-664,-723,-774,-817,-863,-928,-1000,
+-1079,-1157,-1231,-1295,-1367,-1450,-1558,-1651,-1753,-1839,-1897,-1969,-2031,-2085,-2119,-2166,-2202,-2236,-2289,-2339,
+-2366,-2390,-2400,-2428,-2469,-2491,-2473,-2447,-2435,-2442,-2449,-2453,-2487,-2505,-2497,-2463,-2429,-2390,-2348,-2380,
+-2470,-2522,-2559,-2601,-2617,-2594,-2623,-2639,-2637,-2612,-2614,-2606,-2600,-2600,-2594,-2569,-2530,-2479,-2432,-2385,
+-2334,-2300,-2265,-2250,-2267,-2305,-2295,-2249,-2345,-2425,-2427,-2390,-2345,-2209,-2205,-2220,-2214,-2167,-2109,-2048,
+-1978,-1917,-1863,-1820,-1782,-1710,-1616,-1637,-1609,-1548,-1489,-1440,-1394,-1341,-1283,-1221,-1167,-1114,-1055,-989,
+-925,-877,-820,-768,-715,-676,-634,-586,-535,-490,-443,-390,-346,-300,-252,-204,-152,-108,-67,-17,
+38,79,129,174,238,298,354,402,448,492,530,568,604,644,666,697,723,748,756,787,
+801,833,883,957,923,984,957,930,931,927,926,940,968,992,1019,1035,1051,1104,1121,1116,
+1108,1077,1011,1035,1153,1229,1238,1285,1339,1391,1440,1504,1550,1605,1636,1710,1763,1827,1882,1853,
+1898,1898,1876,1851,1889,1881,1879,1900,1902,1921,1919,1918,1939,1945,1928,1916,1929,1956,1969,1976,
+1992,2013,1999,2003,1997,1982,1980,1985,1982,1992,1979,1975,1974,1963,1970,1961,1952,1950,1940,1924,
+1911,1887,1875,1858,1863,1842,1827,1813,1796,1790,1790,1790,1790,1798,1786,1779,1767,1753,1754,1743,
+1744,1742,1742,1745,1769,1777,1779,1765,1743,1748,1748,1725,1751,1764,1715,1710,1723,1726,1724,1710,
+1691,1673,1659,1639,1621,1615,1610,1601,1591,1570,1532,1500,1483,1453,1431,1430,1432,1413,1392,1320,
+1235,1174,1104,1059,986,878,820,848,890,897,885,856,850,835,820,787,723,669,592,505,
+410,298,174,60,-32,-137,-219,-289,-382,-401,-470,-606,-771,-963,-1125,-1227,-1294,-1311,-1301,-1390,
+-1490,-1572,-1651,-1719,-1777,-1832,-1871,-1898,-1925,-1946,-1966,-1985,-2002,-2000,-2014,-2071,-2089,-2092,-2103,-2112,
+-2113,-2101,-2064,-1989,-1916,-1853,-1805,-1763,-1718,-1676,-1635,-1566,-1452,-1369,-1313,-1237,-1149,-1038,-927,-805,
+-786,-916,-1068,-1033,-993,-1039,-1114,-1202,-1285,-1341,-1393,-1429,-1483,-1546,-1596,-1633,-1674,-1719,-1755,-1774,
+-1783,-1735,-1677,-1574,-1489,-1476,-1431,-1377,-1344,-1397,-1381,-1371,-1510,-1658,-1784,-1912,-1992,-2085,-2168,-2271,
+-2373,-2498,-2623,-2729,-2808,-2876,-2959,-3055,-3143,-3210,-3247,-3276,-3328,-3390,-3516,-3713,-3891,-4026,-4110,-4149,
+-4171,-4189,-4209,-4250,-4294,-4330,-4368,-4414,-4476,-4566,-4651,-4709,-4742,-4769,-4813,-4863,-4899,-4906,-4911,-4894,
+-4857,-4823,-4867,-4879,-4846,-4862,-4865,-4851,-4841,-4833,-4823,-4847,-4865,-4879,-4908,-4920,-4939,-4941,-4945,-4960,
+-4977,-5001,-5034,-5057,-5089,-5135,-5187,-5245,-5294,-5348,-5391,-5426,-5478,-5530,-5567,-5617,-5669,-5722,-5777,-5840,
+-5897,-5960,-6043,-6122,-6198,-6246,-6305,-6383,-6455,-6525,-6603,-6680,-6749,-6823,-6882,-6942,-7008,-7070,-7152,-7213,
+-7244,-7267,-7339,-7428,-7477,-7489,-7567,-7628,-7692,-7734,-7745,-7814,-7848,-7894,-7988,-8072,-8138,-8226,-8344,-8420,
+-8518,-8581,-8660,-8728,-8821,-8904,-8980,-9029,-9119,-9166,-9233,-9313,-9400,-9428,-9415,-9382,-9348,-9358,-9415,-9463,
+-9511,-9575,-9701,-9896,-9965,-9943,-9930,-9932,-9940,-9977,-10009,-10031,-10059,-10083,-10101,-10107,-10125,-10144,-10166,-10182,
+-10187,-10194,-10190,-10178,-10150,-10114,-10080,-10063,-10033,-9985,-9926,-9851,-9757,-9647,-9557,-9517,-9482,-9419,-9344,-9271,
+-9196,-9114,-9004,-8921,-8821,-8729,-8623,-8515,-8399,-8260,-8138,-8027,-7922,-7819,-7702,-7560,-7391,-7212,-7057,-6926,
+-6764,-6581,-6424,-6299,-6197,-6103,-6028,-5956,-5843,-5715,-5588,-5456,-5330,-5193,-5017,-4826,-4673,-4532,-4375,-4210,
+-4021,-3854,-3722,-3599,-3426,-3258,-3125,-3017,-2935,-2818,-2685,-2714,-2748,-2745,-2659,-2421,-2131,-1849,-1694,-1591,
+-1606,-1557,-1441,-1233,-1005,-726,-341,-170,-37,75,143,205,293,399,484,544,650,766,877,977,
+1070,1173,1286,1390,1481,1561,1646,1741,1821,1889,1966,2053,2148,2232,2330,2441,2527,2609,2695,2791,
+2932,3063,3165,3262,3361,3452,3552,3649,3762,3899,3942,4046,4151,4216,4314,4420,4487,4570,4601,4679,
+4755,4833,4890,4916,4916,5001,5108,5205,5279,5316,5349,5341,5339,5381,5454,5516,5440,5306,5293,5361,
+5488,5673,5862,5975,6102,6010,5987,6068,6132,6081,6143,6188,6170,6121,6059,6020,5925,5753,5382,4965,
+4700,4583,4434,4200,4077,4033,4069,4147,4259,4431,4703,5180,5881,6378,6724,6932,7071,7158,7161,7099,
+7059,7082,7172,7317,7355,7421,7511,7550,7474,7440,7475,7577,7690,7869,7950,8020,8030,7896,7683,7578,
+7505,7355,7348,7389,7450,7551,7698,7686,7526,7320,7227,7106,7011,6935,6890,6848,6818,6813,6843,6903,
+6980,7054,7113,7179,7234,7261,7279,7300,7317,7332,7345,7332,7336,7333,7320,7289,7241,7192,7158,7125,
+7121,7109,7113,7123,7193,7284,7239,7204,7150,7136,7137,7133,7100,7018,7004,6984,6931,6904,6843,6767,
+6638,6543,6420,6263,6226,6183,6161,6164,6192,6197,6148,6024,6103,6102,6023,5977,5938,5900,5881,5906,
+5950,5951,5915,5918,5951,5968,5963,5946,5911,5873,5838,5804,5761,5707,5643,5580,5527,5461,5400,5344,
+5289,5228,5167,5090,5013,4959,4907,4859,4806,4737,4665,4602,4544,4495,4446,4407,4396,4365,4328,4284,
+4240,4206,4172,4134,4094,4043,3993,3965,3942,3937,3933,3956,3943,3831,3760,3724,3687,3636,3572,3541,
+3519,3480,3471,3374,3330,3283,3237,3224,3197,3173,3129,3076,3023,2956,2893,2816,2741,2692,2680,2738,
+2890,3133,3013,2723,2606,2573,2581,2526,2499,2468,2442,2396,2381,2361,2356,2368,2475,2351,2280,2245,
+2214,2180,2156,2136,2114,2087,2085,2070,2043,2023,2018,2017,2022,1981,1936,1904,1875,1864,1889,1955,
+1869,1762,1718,1716,1723,1728,1730,1733,1735,1734,1730,1720,1701,1687,1659,1635,1612,1623,1602,1620,
+1650,1633,1620,1567,1556,1545,1526,1503,1503,1504,1495,1474,1465,1466,1484,1532,1565,1511,1514,1515,
+1501,1466,1445,1442,1460,1470,1489,1529,1528,1524,1527,1518,1512,1513,1511,1512,1518,1528,1546,1563,
+1563,1555,1551,1561,1570,1529,1519,1554,1589,1612,1630,1634,1623,1606,1596,1591,1648,1646,1596,1597,
+1660,1601,1601,1642,1639,1562,1578,1547,1522,1508,1494,1468,1444,1421,1403,1391,1375,1363,1354,1341,
+1330,1312,1311,1280,1255,1230,1221,1195,1184,1174,1165,1149,1134,1116,1096,1077,1047,1014,989,957,
+921,892,862,830,792,761,731,701,684,624,591,574,520,480,441,400,361,326,287,251,
+219,190,159,132,111,79,47,11,-28,-66,-102,-138,-178,-212,-249,-296,-339,-380,-418,-458,
+-494,-535,-570,-598,-617,-638,-668,-708,-747,-777,-798,-834,-858,-883,-908,-939,-979,-1010,-1035,-1056,
+-1082,-1114,-1145,-1180,-1215,-1252,-1290,-1330,-1363,-1384,-1402,-1429,-1460,-1489,-1523,-1561,-1598,-1626,-1655,-1690,
+-1723,-1751,-1777,-1800,-1820,-1850,-1873,-1898,-1920,-1950,-1976,-2000,-2015,-2032,-2053,-2072,-2087,-2106,-2126,-2144,
+-2155,-2170,-2183,-2199,-2209,-2215,-2222,-2229,-2238,-2247,-2253,-2260,-2266,-2270,-2273,-2273,-2276,-2272,-2272,-2270,
+-2264,-2258,-2249,-2239,-2223,-2211,-2200,-2184,-2169,-2151,-2132,-2116,-2104,-2095,-2087,-2077,-2064,-2051,-2039,-2025,
+-2009,-1993,-1977,-1963,-1952,-1936,-1924,-1909,-1896,-1883,-1870,-1856,-1845,-1831,-1819,-1806,-1793,-1780,-1766,-1757,
+-1746,-1731,-1723,-1710,-1699,-1684,-1669,-1657,-1650,-1639,-1628,-1616,-1601,-1589,-1569,-1559,-1548,-1526,-1514,-1496,
+-1480,-1462,-1447,-1435,-1419,-1404,-1386,-1365,-1345,-1329,-1312,-1294,-1275,-1260,-1249,-1232,-1222,-1206,-1190,-1179,
+-1172,-1158,-1145,-1132,-1119,-1106,-1086,-1067,-1044,-1025,-1001,-974,-951,-935,-922,-923,-925,-862,-640,-418,
+-404,-451,-396,-365,-370,-366,-354,-352,-358,-353,-343,-324,-297,-264,-249,-228,-191,-170,-145,-117,
+-85,-43,-4,43,92,150,200,264,333,399,504,585,666,743,820,872,908,908,845,800,
+1035,1222,1363,1484,1637,1727,1840,2047,2440,2661,2695,2727,2485,2180,1962,1754,1677,1669,1686,1732,
+1789,1828,1838,1856,1889,1911,1931,1968,2003,2005,1984,1963,1974,1963,1950,1923,1901,1880,1842,1789,
+1729,1666,1607,1545,1473,1399,1341,1273,1181,1086,1009,942,868,788,711,639,562,482,401,329,
+262,188,110,41,-26,-92,-156,-215,-274,-340,-405,-467,-531,-599,-670,-726,-773,-815,-869,-933,
+-999,-1071,-1146,-1223,-1284,-1369,-1451,-1552,-1647,-1729,-1821,-1882,-1952,-2026,-2087,-2132,-2177,-2208,-2242,-2289,
+-2332,-2354,-2382,-2398,-2417,-2456,-2493,-2479,-2438,-2419,-2413,-2413,-2452,-2480,-2507,-2489,-2442,-2399,-2364,-2339,
+-2353,-2407,-2502,-2537,-2578,-2591,-2581,-2593,-2610,-2618,-2592,-2591,-2576,-2546,-2547,-2534,-2532,-2505,-2459,-2404,
+-2369,-2304,-2274,-2247,-2221,-2224,-2251,-2284,-2258,-2181,-2303,-2352,-2343,-2317,-2267,-2162,-2146,-2188,-2148,-2084,
+-2016,-1949,-1895,-1844,-1805,-1772,-1724,-1664,-1611,-1617,-1563,-1502,-1449,-1402,-1342,-1282,-1220,-1161,-1100,-1036,
+-971,-910,-855,-793,-749,-695,-650,-612,-560,-520,-486,-448,-409,-367,-320,-267,-220,-175,-129,-78,
+-28,21,79,133,195,241,305,353,397,449,483,514,547,596,639,645,657,696,712,711,
+726,756,799,840,894,889,895,894,886,906,949,981,987,994,982,961,933,898,875,857,
+877,938,1028,1065,1154,1185,1216,1248,1294,1355,1409,1457,1511,1548,1594,1614,1681,1720,1780,1835,
+1834,1899,1866,1845,1856,1879,1876,1878,1893,1906,1924,1909,1897,1939,1961,1968,1971,1992,2013,1997,
+1992,2006,2010,2002,2014,2004,1995,2009,2002,1988,1961,1959,1977,1984,1972,1959,1959,1948,1933,1918,
+1905,1893,1869,1855,1839,1827,1821,1809,1811,1803,1807,1799,1782,1784,1785,1782,1777,1777,1762,1753,
+1758,1758,1764,1767,1769,1795,1794,1793,1769,1759,1744,1750,1799,1767,1747,1739,1740,1735,1732,1719,
+1709,1691,1673,1654,1643,1634,1628,1618,1602,1572,1528,1488,1466,1456,1442,1425,1430,1448,1448,1439,
+1313,1212,1154,1105,1051,955,849,816,819,869,911,950,924,916,874,828,802,738,665,591,
+511,430,334,224,110,5,-100,-215,-330,-403,-411,-458,-577,-754,-936,-1090,-1216,-1344,-1399,-1374,
+-1375,-1460,-1548,-1640,-1721,-1788,-1848,-1900,-1929,-1950,-1972,-2004,-2038,-2049,-2049,-2054,-2094,-2112,-2107,-2103,
+-2110,-2116,-2106,-2071,-2011,-1941,-1884,-1840,-1795,-1750,-1712,-1670,-1595,-1485,-1378,-1292,-1200,-1127,-1055,-960,
+-865,-783,-851,-914,-824,-879,-1008,-1126,-1202,-1294,-1366,-1431,-1474,-1525,-1585,-1638,-1670,-1697,-1727,-1755,
+-1775,-1776,-1723,-1628,-1559,-1535,-1509,-1474,-1453,-1439,-1471,-1488,-1504,-1581,-1642,-1750,-1841,-1945,-2096,-2210,
+-2307,-2411,-2534,-2655,-2750,-2820,-2890,-2979,-3065,-3144,-3202,-3241,-3285,-3351,-3462,-3650,-3823,-3963,-4058,-4121,
+-4145,-4156,-4175,-4203,-4243,-4283,-4328,-4370,-4416,-4485,-4590,-4681,-4733,-4746,-4749,-4782,-4844,-4878,-4880,-4877,
+-4858,-4816,-4809,-4877,-4854,-4828,-4843,-4834,-4814,-4808,-4790,-4803,-4823,-4848,-4868,-4877,-4907,-4912,-4901,-4913,
+-4933,-4941,-4962,-4986,-5015,-5051,-5090,-5133,-5158,-5262,-5321,-5362,-5399,-5445,-5489,-5534,-5580,-5631,-5688,-5751,
+-5813,-5873,-5937,-6013,-6096,-6176,-6238,-6287,-6352,-6419,-6485,-6557,-6636,-6713,-6778,-6850,-6924,-6989,-7075,-7129,
+-7172,-7241,-7279,-7367,-7404,-7398,-7467,-7525,-7579,-7669,-7661,-7750,-7774,-7778,-7856,-7959,-8024,-8099,-8190,-8289,
+-8363,-8442,-8531,-8603,-8703,-8773,-8854,-8930,-9023,-9060,-9129,-9242,-9316,-9363,-9392,-9385,-9338,-9326,-9353,-9387,
+-9426,-9473,-9529,-9677,-9880,-9930,-9892,-9879,-9886,-9899,-9933,-9970,-9997,-10024,-10047,-10064,-10074,-10100,-10117,-10128,
+-10144,-10162,-10168,-10170,-10156,-10112,-10055,-10030,-10024,-9998,-9943,-9874,-9796,-9712,-9626,-9565,-9517,-9457,-9380,-9304,
+-9238,-9171,-9079,-9011,-8910,-8806,-8712,-8606,-8499,-8381,-8249,-8132,-8027,-7927,-7828,-7711,-7562,-7387,-7210,-7069,
+-6912,-6730,-6559,-6423,-6313,-6206,-6115,-6052,-5983,-5876,-5735,-5601,-5473,-5344,-5199,-5002,-4820,-4670,-4528,-4385,
+-4234,-4050,-3879,-3744,-3616,-3446,-3288,-3158,-3059,-2958,-2791,-2664,-2644,-2689,-2709,-2679,-2523,-2172,-1910,-1709,
+-1576,-1617,-1653,-1557,-1357,-1107,-837,-408,-46,94,110,181,254,326,428,559,627,688,789,888,
+986,1088,1182,1283,1380,1494,1583,1665,1748,1843,1924,1991,2060,2141,2225,2320,2426,2517,2606,2698,
+2800,2929,3057,3149,3237,3340,3441,3539,3645,3759,3874,3943,4038,4112,4191,4265,4350,4419,4499,4571,
+4650,4727,4805,4869,4890,4914,5004,5118,5226,5299,5339,5348,5304,5309,5368,5454,5499,5381,5292,5291,
+5375,5519,5709,5894,6128,6195,6188,6097,5931,5936,6073,6342,6353,6332,6329,6314,6105,5915,5750,5424,
+5119,4896,4739,4516,4372,4311,4297,4337,4404,4468,4549,4689,4943,5403,5887,6284,6618,6814,7030,7046,
+7019,7064,7140,7198,7243,7184,7225,7313,7445,7443,7446,7493,7559,7615,7681,7782,7898,7908,7945,7959,
+7846,7683,7437,7374,7422,7426,7403,7504,7579,7628,7490,7389,7305,7278,7212,7163,7062,6949,6904,6914,
+6912,6936,6997,7078,7165,7226,7253,7273,7298,7325,7348,7359,7351,7375,7364,7338,7268,7256,7282,7300,
+7264,7301,7389,7454,7357,7334,7336,7350,7278,7248,7273,7280,7241,7214,7184,7144,7160,7110,7032,6972,
+6968,6885,6913,6780,6498,6358,6279,6208,6162,6153,6148,6127,6067,6019,6090,6093,6046,5986,5932,5893,
+5890,5910,5921,5926,5953,5986,5999,5985,5958,5926,5893,5869,5838,5796,5743,5688,5622,5561,5507,5447,
+5383,5324,5258,5196,5121,5053,4997,4935,4870,4805,4727,4678,4632,4572,4519,4471,4439,4431,4398,4357,
+4303,4259,4221,4186,4145,4117,4078,4021,3987,3966,3946,3931,3929,3898,3844,3802,3771,3735,3674,3611,
+3565,3536,3498,3494,3421,3360,3319,3280,3260,3222,3189,3153,3113,3071,3021,2946,2854,2773,2723,2703,
+2734,2806,2875,2971,2872,2694,2610,2615,2598,2601,2556,2498,2422,2390,2366,2354,2356,2356,2332,2292,
+2256,2222,2189,2160,2144,2120,2088,2080,2067,2047,2033,2027,2029,2043,2004,1945,1913,1889,1876,1895,
+1999,1933,1774,1718,1711,1719,1725,1725,1729,1735,1739,1739,1732,1718,1711,1685,1654,1635,1634,1601,
+1584,1575,1587,1589,1579,1576,1568,1571,1564,1538,1499,1458,1403,1367,1427,1519,1555,1601,1584,1562,
+1542,1501,1471,1458,1451,1448,1459,1485,1504,1516,1517,1516,1507,1497,1493,1488,1489,1491,1499,1511,
+1529,1542,1544,1544,1550,1545,1527,1516,1535,1558,1582,1602,1611,1601,1590,1601,1593,1592,1614,1604,
+1584,1625,1571,1557,1560,1574,1589,1567,1535,1518,1527,1489,1464,1444,1425,1408,1391,1375,1354,1334,
+1322,1308,1298,1285,1267,1242,1224,1199,1183,1174,1164,1153,1145,1130,1112,1096,1084,1063,1033,997,
+966,932,907,878,844,808,775,738,700,667,622,579,546,516,480,449,415,376,338,297,
+262,225,198,176,150,123,98,65,34,-2,-42,-87,-119,-156,-195,-229,-271,-316,-352,-387,
+-420,-465,-501,-543,-580,-606,-631,-652,-690,-731,-754,-784,-825,-849,-869,-892,-925,-961,-994,-1014,
+-1034,-1063,-1097,-1128,-1158,-1192,-1231,-1271,-1303,-1327,-1348,-1366,-1396,-1428,-1463,-1501,-1539,-1571,-1603,-1630,
+-1662,-1690,-1719,-1745,-1766,-1790,-1819,-1839,-1860,-1879,-1909,-1936,-1960,-1977,-1996,-2016,-2029,-2043,-2061,-2078,
+-2093,-2107,-2122,-2139,-2157,-2173,-2182,-2189,-2197,-2203,-2209,-2217,-2223,-2228,-2230,-2226,-2227,-2229,-2235,-2233,
+-2227,-2221,-2217,-2204,-2198,-2185,-2177,-2173,-2156,-2140,-2121,-2103,-2089,-2077,-2065,-2053,-2041,-2028,-2017,-2005,
+-1996,-1983,-1971,-1961,-1948,-1935,-1916,-1900,-1887,-1873,-1860,-1846,-1835,-1826,-1815,-1803,-1785,-1772,-1760,-1748,
+-1737,-1722,-1713,-1701,-1691,-1678,-1667,-1654,-1641,-1630,-1620,-1610,-1601,-1588,-1579,-1560,-1552,-1536,-1519,-1505,
+-1489,-1475,-1462,-1445,-1426,-1412,-1397,-1378,-1365,-1347,-1333,-1319,-1304,-1287,-1278,-1266,-1246,-1235,-1225,-1211,
+-1199,-1182,-1170,-1159,-1148,-1130,-1110,-1091,-1074,-1060,-1045,-1023,-995,-967,-950,-940,-934,-942,-900,-677,
+-504,-475,-489,-449,-413,-400,-384,-373,-385,-356,-353,-351,-333,-306,-275,-264,-252,-221,-192,-161,
+-134,-104,-56,-12,36,88,159,211,292,356,424,499,580,672,751,797,851,882,860,782,
+823,1147,1381,1490,1632,1708,1728,1766,1950,2468,2630,2651,2561,2217,1942,1782,1681,1638,1640,1670,
+1731,1771,1798,1826,1862,1905,1935,1954,1983,2006,2010,1990,1971,1976,1986,1974,1941,1908,1877,1838,
+1787,1730,1673,1617,1560,1498,1431,1368,1307,1216,1127,1051,980,894,807,729,660,589,510,436,
+368,298,222,150,85,15,-56,-124,-188,-252,-324,-392,-455,-524,-604,-680,-734,-773,-819,-877,
+-946,-1004,-1053,-1122,-1203,-1277,-1366,-1457,-1541,-1629,-1712,-1787,-1858,-1927,-1993,-2078,-2152,-2204,-2219,-2238,
+-2278,-2320,-2320,-2351,-2386,-2411,-2435,-2467,-2451,-2383,-2344,-2367,-2403,-2430,-2439,-2473,-2476,-2449,-2415,-2381,
+-2358,-2318,-2367,-2457,-2506,-2528,-2549,-2558,-2544,-2549,-2577,-2561,-2557,-2553,-2525,-2514,-2505,-2518,-2539,-2479,
+-2403,-2343,-2311,-2286,-2254,-2218,-2200,-2205,-2236,-2255,-2188,-2164,-2261,-2286,-2292,-2284,-2249,-2215,-2175,-2117,
+-2051,-1983,-1925,-1875,-1829,-1792,-1753,-1706,-1654,-1598,-1588,-1544,-1482,-1438,-1384,-1330,-1272,-1208,-1143,-1077,
+-1009,-946,-890,-842,-792,-745,-697,-636,-589,-548,-510,-452,-417,-383,-345,-313,-269,-223,-169,-112,
+-70,-9,36,72,119,161,211,279,331,372,426,434,458,490,519,553,588,604,621,631,
+638,629,659,654,683,733,732,767,817,825,830,833,828,829,837,839,802,823,876,904,
+930,962,994,1034,1074,1089,1115,1161,1224,1280,1345,1413,1453,1501,1528,1575,1605,1646,1691,1750,
+1811,1793,1865,1835,1815,1823,1833,1833,1823,1836,1853,1897,1892,1940,1989,2013,2016,1998,1998,1989,
+1978,1985,2003,2009,2005,1998,1999,2010,1998,1983,1988,1989,1985,1984,1973,1960,1947,1939,1929,1907,
+1889,1882,1871,1858,1858,1845,1833,1823,1806,1808,1790,1788,1785,1773,1771,1773,1780,1774,1771,1773,
+1771,1780,1781,1789,1799,1795,1819,1807,1797,1781,1771,1767,1773,1795,1778,1759,1763,1767,1749,1735,
+1711,1702,1682,1665,1660,1642,1630,1635,1653,1625,1532,1470,1431,1415,1408,1398,1392,1403,1419,1425,
+1420,1290,1195,1154,1133,1056,904,836,833,795,867,934,977,966,928,894,849,805,757,663,
+597,523,443,352,258,161,50,-65,-169,-306,-399,-415,-443,-552,-720,-880,-1026,-1167,-1310,-1413,
+-1446,-1429,-1462,-1536,-1625,-1705,-1773,-1834,-1891,-1934,-1967,-2000,-2034,-2062,-2077,-2077,-2080,-2109,-2124,-2117,
+-2107,-2108,-2109,-2101,-2071,-2035,-1985,-1932,-1886,-1839,-1790,-1752,-1698,-1616,-1499,-1379,-1285,-1184,-1109,-1031,
+-930,-818,-710,-736,-739,-715,-800,-960,-1093,-1195,-1284,-1377,-1447,-1497,-1551,-1602,-1655,-1688,-1712,-1735,
+-1758,-1779,-1770,-1723,-1661,-1599,-1587,-1557,-1512,-1503,-1553,-1580,-1597,-1589,-1617,-1619,-1694,-1793,-1928,-2113,
+-2228,-2331,-2438,-2564,-2680,-2763,-2821,-2896,-2992,-3073,-3138,-3187,-3235,-3303,-3427,-3599,-3765,-3894,-3994,-4058,
+-4107,-4132,-4146,-4166,-4199,-4236,-4287,-4344,-4387,-4433,-4502,-4609,-4703,-4753,-4759,-4737,-4746,-4809,-4835,-4845,
+-4848,-4833,-4779,-4801,-4864,-4800,-4796,-4799,-4795,-4779,-4757,-4753,-4774,-4795,-4826,-4852,-4860,-4875,-4862,-4870,
+-4886,-4897,-4906,-4926,-4953,-4980,-5016,-5053,-5100,-5164,-5220,-5287,-5333,-5373,-5405,-5444,-5499,-5549,-5602,-5659,
+-5722,-5786,-5847,-5906,-5975,-6046,-6129,-6205,-6268,-6326,-6395,-6458,-6524,-6594,-6667,-6742,-6816,-6896,-6963,-7040,
+-7088,-7149,-7189,-7273,-7316,-7329,-7366,-7447,-7486,-7573,-7601,-7676,-7695,-7736,-7775,-7813,-7918,-7941,-8027,-8138,
+-8232,-8313,-8385,-8476,-8564,-8639,-8736,-8813,-8896,-8958,-9023,-9117,-9179,-9241,-9302,-9330,-9342,-9303,-9296,-9315,
+-9342,-9378,-9416,-9490,-9687,-9859,-9881,-9846,-9832,-9837,-9868,-9903,-9932,-9955,-9983,-10008,-10025,-10042,-10061,-10084,
+-10098,-10125,-10160,-10174,-10168,-10148,-10102,-10046,-10028,-10015,-9975,-9909,-9826,-9730,-9655,-9582,-9526,-9460,-9403,-9321,
+-9260,-9213,-9161,-9080,-8980,-8876,-8773,-8682,-8570,-8462,-8340,-8216,-8112,-8015,-7920,-7822,-7699,-7547,-7376,-7202,
+-7082,-6923,-6728,-6567,-6441,-6359,-6259,-6178,-6112,-6009,-5894,-5749,-5611,-5486,-5350,-5195,-4995,-4823,-4676,-4524,
+-4382,-4247,-4075,-3899,-3765,-3638,-3468,-3321,-3202,-3111,-2970,-2765,-2642,-2593,-2625,-2669,-2672,-2589,-2292,-2011,
+-1726,-1581,-1553,-1682,-1638,-1480,-1209,-894,-535,-44,79,118,206,282,348,426,555,692,752,831,
+910,994,1097,1199,1298,1396,1482,1584,1671,1746,1844,1933,2006,2076,2148,2230,2320,2419,2521,2609,
+2706,2812,2928,3038,3121,3205,3319,3441,3525,3623,3732,3847,3920,3992,4069,4162,4230,4306,4379,4455,
+4537,4623,4693,4747,4805,4817,4856,4989,5149,5239,5301,5309,5290,5261,5283,5357,5424,5407,5305,5271,
+5290,5381,5544,5764,5917,6219,6292,6401,6251,6045,6151,6365,6612,6526,6440,6313,6181,6104,6118,5967,
+5742,5448,5258,5118,4946,4845,4800,4787,4812,4843,4856,4867,4900,5028,5276,5755,6311,6584,6652,6744,
+6862,6935,6980,7033,7118,7125,7060,7048,7150,7250,7309,7348,7398,7463,7518,7567,7616,7702,7779,7799,
+7905,7952,7929,7534,7384,7404,7407,7374,7358,7423,7490,7518,7503,7488,7452,7425,7382,7340,7240,7198,
+7191,7071,6982,6984,7048,7143,7208,7253,7267,7269,7287,7308,7334,7361,7371,7334,7325,7338,7391,7412,
+7441,7479,7543,7690,7635,7509,7454,7451,7395,7354,7371,7398,7392,7352,7293,7285,7294,7280,7225,7156,
+7079,7064,7055,7088,7112,6964,6763,6615,6505,6380,6255,6163,6107,6082,5983,6014,6130,6139,6067,6003,
+5955,5925,5920,5943,5978,5998,6023,6027,6005,5984,5960,5939,5908,5867,5832,5783,5731,5665,5596,5539,
+5486,5425,5361,5287,5208,5125,5058,4998,4934,4862,4799,4753,4721,4682,4625,4546,4492,4484,4482,4454,
+4400,4348,4294,4247,4209,4169,4145,4136,4062,4022,3995,3965,3940,3920,3899,3869,3832,3806,3770,3708,
+3651,3606,3563,3518,3478,3436,3382,3335,3294,3268,3242,3203,3169,3139,3111,3079,2993,2898,2825,2771,
+2728,2714,2716,2752,2887,3092,2851,2677,2636,2722,2825,2743,2668,2490,2410,2370,2353,2349,2343,2341,
+2337,2271,2233,2200,2175,2162,2146,2121,2105,2098,2061,2046,2037,2035,2033,1998,1950,1918,1901,1890,
+1892,1961,1929,1805,1766,1761,1774,1768,1749,1738,1745,1747,1748,1749,1734,1718,1700,1671,1645,1618,
+1603,1576,1583,1582,1589,1605,1605,1600,1582,1561,1520,1457,1390,1411,1495,1521,1563,1585,1582,1581,
+1575,1542,1509,1488,1473,1471,1474,1479,1485,1494,1506,1511,1510,1502,1492,1481,1479,1475,1477,1488,
+1502,1518,1527,1535,1542,1550,1550,1547,1548,1543,1548,1567,1597,1592,1586,1583,1583,1589,1591,1567,
+1572,1553,1606,1625,1562,1550,1541,1549,1571,1539,1531,1503,1478,1474,1444,1432,1412,1402,1388,1362,
+1332,1311,1292,1280,1269,1259,1240,1223,1206,1187,1165,1147,1137,1125,1106,1090,1078,1065,1050,1024,
+992,964,931,904,877,844,808,777,749,711,674,627,595,565,529,494,466,429,394,360,
+317,270,231,200,173,146,119,93,64,34,0,-36,-69,-100,-133,-172,-207,-247,-291,-337,
+-369,-399,-437,-476,-514,-553,-592,-623,-641,-674,-710,-737,-768,-802,-838,-868,-891,-923,-956,-985,
+-1006,-1024,-1051,-1087,-1123,-1155,-1187,-1217,-1247,-1274,-1296,-1315,-1334,-1366,-1407,-1456,-1490,-1520,-1553,-1580,
+-1608,-1635,-1664,-1690,-1712,-1734,-1759,-1784,-1804,-1821,-1845,-1870,-1898,-1924,-1945,-1963,-1983,-1993,-2005,-2022,
+-2038,-2053,-2068,-2085,-2103,-2121,-2132,-2142,-2148,-2157,-2164,-2178,-2187,-2190,-2193,-2193,-2192,-2189,-2193,-2198,
+-2198,-2193,-2188,-2180,-2167,-2159,-2152,-2144,-2134,-2124,-2109,-2091,-2077,-2064,-2052,-2041,-2026,-2011,-1995,-1983,
+-1971,-1962,-1946,-1929,-1916,-1909,-1901,-1893,-1880,-1868,-1858,-1845,-1827,-1815,-1799,-1785,-1772,-1764,-1754,-1742,
+-1731,-1720,-1706,-1698,-1683,-1673,-1663,-1653,-1639,-1628,-1617,-1610,-1595,-1588,-1577,-1567,-1552,-1544,-1528,-1515,
+-1499,-1484,-1472,-1458,-1443,-1425,-1413,-1399,-1382,-1368,-1356,-1341,-1327,-1314,-1301,-1287,-1275,-1256,-1251,-1241,
+-1225,-1209,-1193,-1181,-1170,-1157,-1142,-1122,-1109,-1095,-1078,-1063,-1040,-1018,-991,-962,-946,-940,-944,-938,
+-895,-838,-772,-654,-497,-464,-440,-435,-413,-426,-423,-387,-383,-366,-356,-339,-307,-315,-272,-229,
+-202,-163,-125,-78,-30,18,79,143,211,277,340,415,499,560,646,718,771,814,847,810,
+740,869,1204,1474,1650,1807,1802,1732,1721,1909,2469,2630,2616,2468,2039,1827,1658,1578,1583,1601,
+1637,1689,1726,1754,1795,1848,1922,1952,1973,2012,2051,2043,1992,1967,1972,1988,1982,1951,1914,1877,
+1835,1789,1738,1685,1632,1576,1519,1461,1398,1335,1256,1166,1087,998,906,816,740,673,599,523,
+456,398,330,257,189,125,53,-23,-95,-161,-233,-313,-389,-452,-522,-605,-682,-739,-776,-826,
+-892,-959,-1001,-1042,-1105,-1191,-1281,-1370,-1454,-1536,-1623,-1701,-1763,-1821,-1901,-1978,-2059,-2137,-2183,-2200,
+-2215,-2224,-2255,-2296,-2348,-2386,-2398,-2400,-2421,-2389,-2360,-2344,-2337,-2371,-2402,-2410,-2450,-2474,-2469,-2453,
+-2406,-2359,-2343,-2369,-2431,-2482,-2465,-2481,-2528,-2525,-2499,-2535,-2538,-2522,-2528,-2511,-2487,-2496,-2522,-2565,
+-2521,-2428,-2373,-2358,-2323,-2286,-2257,-2214,-2191,-2208,-2221,-2198,-2109,-2145,-2209,-2246,-2260,-2246,-2203,-2142,
+-2074,-2006,-1942,-1884,-1839,-1801,-1764,-1727,-1682,-1625,-1535,-1479,-1462,-1358,-1358,-1267,-1250,-1232,-1183,-1123,
+-1061,-1010,-963,-916,-878,-844,-798,-737,-698,-654,-620,-581,-527,-498,-476,-433,-365,-330,-291,-256,
+-216,-165,-109,-66,-36,-8,25,58,124,235,295,327,349,358,362,382,394,437,436,450,
+441,454,404,409,410,445,497,537,548,574,596,615,668,702,751,764,741,738,749,769,
+786,831,878,922,984,1032,1067,1103,1155,1211,1268,1329,1379,1420,1460,1501,1554,1601,1632,1657,
+1709,1752,1731,1790,1791,1742,1710,1681,1709,1773,1854,1931,1963,1999,1983,2053,2052,2015,1980,1984,
+1984,1994,2003,2009,2023,2024,2031,2022,2007,1984,1991,2007,1996,1972,1964,1950,1931,1915,1914,1913,
+1922,1895,1888,1858,1855,1841,1825,1817,1807,1790,1793,1783,1782,1782,1768,1763,1762,1776,1775,1771,
+1793,1795,1803,1813,1821,1831,1819,1835,1817,1838,1812,1806,1789,1795,1798,1778,1771,1760,1752,1750,
+1721,1700,1687,1683,1706,1683,1645,1647,1611,1668,1632,1484,1426,1384,1369,1360,1345,1350,1356,1347,
+1333,1315,1232,1155,1133,1123,996,819,795,765,730,801,900,927,917,908,901,865,831,755,
+667,590,524,459,372,281,193,92,-28,-143,-277,-373,-394,-425,-549,-683,-828,-957,-1093,-1232,
+-1353,-1420,-1438,-1469,-1536,-1617,-1689,-1756,-1813,-1874,-1924,-1970,-2010,-2044,-2065,-2071,-2075,-2086,-2106,-2115,
+-2106,-2103,-2101,-2099,-2097,-2085,-2059,-2021,-1970,-1919,-1867,-1815,-1762,-1698,-1628,-1522,-1413,-1328,-1226,-1153,
+-1061,-928,-737,-648,-632,-571,-673,-754,-936,-1077,-1194,-1272,-1366,-1449,-1520,-1581,-1625,-1672,-1703,-1725,
+-1745,-1761,-1777,-1778,-1761,-1723,-1652,-1635,-1596,-1537,-1511,-1629,-1725,-1700,-1605,-1587,-1581,-1677,-1804,-1959,
+-2135,-2243,-2348,-2465,-2581,-2688,-2769,-2828,-2894,-2992,-3068,-3118,-3157,-3226,-3361,-3551,-3722,-3855,-3947,-4008,
+-4051,-4091,-4116,-4130,-4153,-4193,-4246,-4308,-4366,-4410,-4457,-4521,-4623,-4720,-4774,-4767,-4724,-4722,-4769,-4789,
+-4810,-4832,-4809,-4750,-4797,-4837,-4769,-4770,-4763,-4757,-4730,-4708,-4714,-4736,-4767,-4799,-4828,-4839,-4846,-4844,
+-4839,-4846,-4862,-4875,-4890,-4916,-4947,-4972,-5008,-5060,-5126,-5196,-5254,-5300,-5342,-5373,-5419,-5476,-5528,-5580,
+-5631,-5688,-5739,-5798,-5862,-5932,-5996,-6076,-6166,-6250,-6304,-6372,-6438,-6498,-6567,-6630,-6698,-6779,-6853,-6921,
+-7003,-7053,-7096,-7151,-7184,-7223,-7262,-7345,-7392,-7461,-7483,-7568,-7628,-7665,-7706,-7717,-7815,-7885,-7927,-7968,
+-8076,-8150,-8261,-8335,-8458,-8500,-8598,-8669,-8751,-8825,-8899,-9009,-9060,-9154,-9207,-9220,-9263,-9284,-9256,-9265,
+-9272,-9298,-9320,-9356,-9454,-9697,-9827,-9831,-9798,-9793,-9805,-9826,-9848,-9875,-9903,-9943,-9975,-9993,-10008,-10033,
+-10053,-10079,-10116,-10151,-10168,-10156,-10137,-10100,-10064,-10034,-9995,-9937,-9863,-9777,-9688,-9604,-9525,-9458,-9397,-9339,
+-9277,-9225,-9191,-9145,-9066,-8960,-8841,-8733,-8639,-8523,-8418,-8299,-8182,-8089,-7999,-7901,-7792,-7658,-7498,-7332,
+-7195,-7083,-6925,-6727,-6583,-6488,-6409,-6328,-6232,-6126,-6020,-5909,-5760,-5614,-5492,-5351,-5193,-4995,-4835,-4688,
+-4524,-4387,-4268,-4104,-3926,-3788,-3659,-3489,-3351,-3246,-3124,-2971,-2753,-2638,-2563,-2572,-2618,-2633,-2598,-2407,
+-2138,-1846,-1599,-1530,-1609,-1688,-1595,-1342,-1008,-681,-253,59,177,254,346,412,451,539,652,757,
+840,926,1011,1111,1219,1309,1406,1511,1604,1662,1747,1846,1942,2020,2094,2166,2248,2332,2429,2521,
+2618,2722,2828,2922,3024,3112,3199,3298,3405,3512,3607,3708,3786,3876,3993,4051,4129,4192,4266,4336,
+4413,4505,4595,4653,4702,4744,4774,4832,4991,5149,5212,5296,5266,5242,5243,5283,5327,5335,5288,5239,
+5228,5279,5375,5547,5751,5919,6175,6343,6481,6452,6306,6489,6543,6654,6530,6405,6192,6083,6099,6178,
+6114,6024,5844,5757,5716,5640,5566,5521,5459,5410,5395,5386,5340,5303,5355,5554,5965,6414,6700,6651,
+6622,6662,6778,6824,6823,6888,6923,6949,6991,7070,7126,7178,7235,7264,7309,7356,7398,7416,7435,7507,
+7514,7563,7661,7606,7374,7260,7304,7348,7406,7392,7432,7460,7499,7506,7532,7555,7524,7509,7534,7527,
+7483,7464,7356,7120,7005,7014,7074,7136,7198,7207,7220,7248,7291,7314,7346,7358,7380,7396,7492,7545,
+7486,7517,7547,7647,7750,7733,7696,7681,7562,7486,7463,7467,7461,7450,7413,7365,7372,7380,7380,7327,
+7249,7190,7142,7127,7114,7240,7263,7073,6926,6839,6741,6552,6445,6343,6244,6094,6011,6075,6216,6215,
+6190,6132,6050,5995,6011,6036,6056,6073,6071,6057,6036,6025,5997,5960,5918,5878,5830,5771,5699,5628,
+5565,5513,5460,5392,5313,5227,5141,5063,4996,4923,4863,4815,4802,4799,4761,4709,4626,4529,4532,4544,
+4504,4450,4390,4337,4279,4243,4201,4156,4132,4090,4056,4022,3984,3952,3928,3916,3878,3841,3812,3783,
+3740,3694,3654,3606,3558,3508,3461,3406,3353,3307,3285,3282,3249,3207,3176,3150,3111,3032,2948,2880,
+2820,2764,2722,2699,2706,2787,2989,3057,2779,2716,2713,2742,2694,2727,2539,2429,2382,2371,2360,2353,
+2342,2320,2284,2250,2220,2199,2180,2173,2148,2133,2111,2082,2051,2036,2026,2015,1987,1953,1923,1912,
+1896,1891,1919,1955,1859,1854,1937,1947,1896,1818,1765,1742,1750,1755,1755,1750,1729,1705,1685,1657,
+1643,1621,1601,1593,1586,1591,1598,1612,1604,1583,1539,1529,1537,1604,1587,1554,1529,1543,1546,1561,
+1568,1567,1540,1514,1504,1504,1501,1484,1490,1496,1503,1502,1506,1510,1509,1498,1488,1480,1468,1459,
+1469,1485,1504,1520,1531,1539,1553,1558,1571,1640,1580,1553,1555,1566,1576,1575,1572,1584,1566,1556,
+1541,1545,1548,1534,1576,1579,1543,1531,1524,1531,1542,1524,1502,1478,1454,1442,1429,1413,1409,1398,
+1377,1345,1319,1291,1271,1260,1251,1238,1223,1207,1193,1167,1142,1119,1110,1085,1070,1048,1036,1016,
+996,971,943,917,888,863,836,806,777,743,709,680,640,604,580,547,518,490,458,422,
+384,343,299,261,227,189,158,130,94,63,25,-5,-33,-65,-95,-128,-164,-200,-243,-287,
+-328,-362,-384,-409,-456,-497,-537,-577,-605,-633,-659,-687,-715,-744,-775,-812,-849,-881,-911,-932,
+-953,-984,-1018,-1049,-1079,-1121,-1156,-1186,-1212,-1235,-1257,-1274,-1292,-1318,-1345,-1387,-1427,-1462,-1498,-1528,
+-1557,-1587,-1616,-1644,-1662,-1683,-1706,-1730,-1752,-1776,-1796,-1814,-1838,-1861,-1888,-1911,-1928,-1947,-1960,-1970,
+-1988,-2006,-2021,-2039,-2054,-2072,-2083,-2091,-2101,-2110,-2118,-2129,-2143,-2155,-2162,-2166,-2164,-2160,-2162,-2165,
+-2166,-2161,-2157,-2154,-2144,-2134,-2122,-2115,-2108,-2097,-2088,-2073,-2059,-2045,-2032,-2023,-2013,-2000,-1985,-1975,
+-1958,-1946,-1935,-1925,-1909,-1888,-1873,-1863,-1851,-1845,-1833,-1827,-1819,-1811,-1794,-1780,-1766,-1751,-1740,-1730,
+-1718,-1708,-1697,-1689,-1680,-1664,-1656,-1646,-1637,-1627,-1618,-1610,-1598,-1585,-1575,-1565,-1554,-1545,-1535,-1519,
+-1507,-1492,-1479,-1469,-1458,-1442,-1429,-1414,-1400,-1386,-1372,-1361,-1347,-1334,-1323,-1311,-1296,-1282,-1265,-1257,
+-1249,-1235,-1220,-1207,-1193,-1184,-1172,-1157,-1142,-1127,-1110,-1094,-1077,-1059,-1035,-1015,-988,-958,-940,-941,
+-948,-948,-940,-926,-868,-696,-574,-538,-543,-549,-509,-496,-480,-470,-469,-459,-427,-403,-346,-289,
+-251,-225,-190,-155,-103,-54,1,60,125,190,250,326,401,462,525,615,663,711,767,767,
+744,692,907,1244,1548,1796,1941,1915,1809,1743,1936,2460,2617,2636,2395,1935,1756,1577,1523,1526,
+1562,1600,1637,1655,1696,1771,1838,1912,1956,1981,2014,2058,2071,1991,1955,1960,1982,1983,1962,1926,
+1883,1839,1795,1750,1704,1654,1601,1546,1490,1428,1366,1294,1205,1108,1015,919,823,745,675,600,
+521,471,427,370,299,231,158,77,-7,-77,-143,-221,-310,-389,-455,-523,-605,-684,-740,-783,
+-847,-917,-968,-1006,-1043,-1103,-1186,-1276,-1365,-1449,-1530,-1611,-1673,-1719,-1769,-1858,-1949,-2009,-2058,-2080,
+-2076,-2065,-2090,-2183,-2263,-2322,-2377,-2406,-2408,-2389,-2362,-2349,-2309,-2300,-2323,-2376,-2426,-2456,-2471,-2468,
+-2452,-2416,-2351,-2339,-2359,-2402,-2451,-2438,-2420,-2470,-2502,-2440,-2465,-2509,-2515,-2516,-2497,-2463,-2463,-2495,
+-2537,-2539,-2482,-2447,-2433,-2426,-2394,-2341,-2279,-2200,-2181,-2187,-2173,-2112,-2022,-2098,-2166,-2184,-2180,-2139,
+-2073,-2008,-1946,-1881,-1828,-1792,-1759,-1730,-1691,-1648,-1599,-1516,-1280,-1374,-1248,-1265,-1197,-1138,-1157,-1157,
+-1129,-1086,-1052,-1018,-979,-948,-916,-869,-846,-806,-754,-721,-693,-655,-621,-599,-576,-528,-497,-468,
+-433,-390,-333,-285,-244,-217,-184,-160,-134,-101,-49,0,26,54,83,97,138,174,214,264,
+278,279,301,345,353,378,405,445,492,515,538,568,583,601,618,654,679,724,788,832,
+863,896,902,940,956,974,1031,1066,1102,1148,1197,1250,1307,1349,1389,1438,1464,1508,1550,1573,
+1586,1607,1618,1594,1635,1623,1646,1689,1724,1754,1793,1830,1890,1965,2022,1977,2037,2018,1990,1985,
+2003,2026,2033,2028,2028,2024,2013,1994,1991,1997,2011,1996,1992,1961,1930,1935,1947,1946,1935,1907,
+1890,1875,1861,1858,1860,1832,1818,1808,1796,1802,1796,1787,1783,1785,1765,1775,1769,1764,1778,1776,
+1788,1807,1816,1830,1842,1849,1844,1835,1832,1813,1812,1818,1829,1818,1844,1824,1786,1779,1764,1746,
+1730,1704,1684,1692,1684,1659,1644,1595,1559,1519,1525,1504,1451,1406,1363,1327,1309,1298,1298,1298,
+1260,1212,1160,1135,1090,1080,1049,871,726,702,675,680,692,762,809,858,895,899,885,851,
+768,665,586,516,466,405,313,229,143,31,-97,-240,-345,-359,-405,-542,-665,-789,-910,-1021,
+-1139,-1251,-1339,-1402,-1458,-1532,-1613,-1681,-1744,-1797,-1848,-1904,-1957,-2009,-2043,-2054,-2057,-2053,-2071,-2092,
+-2104,-2106,-2097,-2097,-2092,-2095,-2082,-2061,-2032,-1984,-1928,-1873,-1813,-1749,-1674,-1634,-1576,-1466,-1358,-1267,
+-1198,-1103,-937,-718,-649,-669,-596,-708,-789,-911,-1053,-1171,-1248,-1351,-1437,-1543,-1609,-1646,-1681,-1711,
+-1734,-1754,-1760,-1780,-1771,-1782,-1751,-1682,-1669,-1609,-1553,-1544,-1704,-1877,-1773,-1595,-1550,-1559,-1661,-1814,
+-1973,-2131,-2260,-2366,-2478,-2589,-2692,-2776,-2851,-2902,-2983,-3051,-3095,-3140,-3251,-3471,-3679,-3820,-3917,-3992,
+-4031,-4054,-4077,-4104,-4118,-4143,-4194,-4276,-4348,-4399,-4440,-4481,-4536,-4608,-4690,-4746,-4747,-4707,-4692,-4729,
+-4742,-4776,-4801,-4774,-4720,-4785,-4777,-4728,-4722,-4727,-4709,-4679,-4665,-4675,-4694,-4733,-4764,-4791,-4802,-4807,
+-4804,-4816,-4799,-4826,-4839,-4849,-4882,-4914,-4941,-4972,-5016,-5080,-5155,-5211,-5260,-5307,-5343,-5391,-5441,-5496,
+-5544,-5587,-5635,-5686,-5746,-5816,-5885,-5958,-6046,-6134,-6217,-6282,-6343,-6411,-6474,-6541,-6606,-6668,-6735,-6809,
+-6881,-6945,-7020,-7061,-7107,-7140,-7152,-7233,-7284,-7351,-7385,-7471,-7531,-7556,-7606,-7636,-7725,-7772,-7781,-7872,
+-7978,-8001,-8117,-8177,-8300,-8389,-8450,-8556,-8642,-8719,-8775,-8891,-8956,-9027,-9076,-9099,-9150,-9198,-9222,-9185,
+-9220,-9248,-9264,-9273,-9297,-9403,-9657,-9766,-9768,-9737,-9729,-9737,-9769,-9795,-9838,-9876,-9919,-9952,-9969,-9991,
+-10021,-10032,-10051,-10083,-10121,-10141,-10124,-10104,-10080,-10042,-9993,-9944,-9883,-9797,-9705,-9599,-9504,-9420,-9356,-9333,
+-9291,-9235,-9200,-9162,-9109,-9035,-8928,-8809,-8702,-8616,-8497,-8385,-8267,-8159,-8072,-7981,-7868,-7736,-7571,-7401,
+-7280,-7186,-7077,-6920,-6743,-6623,-6542,-6466,-6363,-6257,-6143,-6030,-5914,-5774,-5631,-5500,-5361,-5197,-5003,-4854,
+-4703,-4540,-4419,-4290,-4141,-3972,-3822,-3679,-3495,-3341,-3254,-3098,-2976,-2804,-2676,-2583,-2569,-2588,-2588,-2545,
+-2438,-2245,-1970,-1686,-1553,-1545,-1622,-1667,-1507,-1185,-840,-474,3,308,393,445,484,512,567,648,
+742,833,923,1024,1132,1235,1329,1424,1516,1606,1673,1755,1836,1939,2025,2099,2172,2260,2342,2420,
+2506,2602,2697,2793,2900,3011,3113,3198,3285,3376,3476,3579,3652,3733,3809,3920,4002,4075,4142,4214,
+4293,4370,4461,4554,4617,4662,4697,4738,4819,4954,5074,5185,5238,5225,5228,5257,5305,5308,5248,5200,
+5176,5182,5259,5370,5511,5710,5917,6178,6335,6497,6472,6438,6545,6408,6378,6272,6186,6027,5979,6038,
+6110,6152,6123,6075,6079,6116,6266,6354,6278,6228,6199,6188,6166,6033,5913,5816,5864,6048,6297,6398,
+6397,6338,6364,6498,6592,6662,6728,6849,6947,6976,6974,6987,7026,7084,7143,7176,7205,7239,7253,7248,
+7232,7228,7193,7165,7163,7134,7124,7195,7184,7220,7283,7417,7536,7620,7638,7541,7485,7454,7444,7469,
+7516,7562,7557,7484,7290,7098,7019,7044,7087,7114,7115,7145,7162,7202,7248,7300,7364,7428,7543,7615,
+7601,7607,7627,7656,7731,7800,7794,7765,7742,7683,7615,7577,7562,7547,7553,7536,7523,7499,7492,7495,
+7460,7397,7352,7295,7243,7226,7253,7286,7255,7161,7098,7026,6850,6713,6641,6537,6378,6166,6063,6137,
+6314,6510,6494,6198,6077,6068,6102,6120,6118,6119,6113,6100,6080,6051,6012,5970,5930,5881,5812,5734,
+5664,5598,5538,5475,5414,5341,5268,5179,5094,5021,4955,4898,4863,4868,4862,4829,4777,4695,4604,4585,
+4593,4546,4492,4433,4373,4324,4283,4230,4174,4129,4109,4078,4042,4004,3981,3969,3943,3897,3854,3831,
+3812,3784,3744,3700,3655,3603,3538,3481,3440,3392,3337,3305,3300,3281,3250,3240,3214,3161,3069,2990,
+2928,2868,2812,2760,2722,2698,2702,2745,2809,2797,2898,2773,2650,2594,2566,2501,2442,2419,2406,2390,
+2370,2347,2322,2299,2273,2249,2227,2207,2191,2160,2132,2114,2082,2053,2027,2009,2005,1973,1964,1928,
+1922,1907,1889,1875,1889,1883,1917,2045,2035,2057,1907,1786,1754,1752,1767,1768,1753,1748,1723,1706,
+1682,1659,1632,1607,1591,1592,1600,1610,1591,1585,1598,1637,1631,1636,1617,1582,1531,1508,1506,1529,
+1536,1554,1555,1537,1521,1516,1511,1503,1494,1499,1512,1509,1513,1514,1512,1513,1509,1498,1483,1466,
+1455,1452,1464,1485,1499,1515,1529,1546,1553,1572,1585,1570,1556,1556,1560,1566,1567,1559,1556,1536,
+1526,1521,1542,1584,1534,1509,1515,1554,1555,1517,1523,1516,1505,1496,1477,1455,1435,1421,1417,1407,
+1388,1375,1352,1327,1301,1276,1257,1247,1236,1219,1206,1191,1170,1145,1125,1102,1080,1060,1040,1020,
+1002,980,954,926,896,870,841,820,796,770,736,704,671,639,606,581,553,524,496,470,
+438,404,367,327,288,250,212,188,186,103,63,33,5,-26,-59,-91,-129,-166,-210,-254,
+-297,-337,-365,-388,-414,-454,-498,-536,-573,-608,-628,-648,-672,-690,-711,-737,-778,-818,-854,-884,
+-910,-928,-956,-994,-1030,-1062,-1100,-1134,-1164,-1190,-1217,-1236,-1255,-1274,-1302,-1333,-1370,-1404,-1435,-1470,
+-1503,-1534,-1563,-1589,-1616,-1637,-1660,-1685,-1712,-1733,-1752,-1772,-1790,-1809,-1827,-1849,-1871,-1894,-1916,-1932,
+-1942,-1957,-1977,-1993,-2007,-2023,-2032,-2042,-2050,-2064,-2075,-2082,-2092,-2102,-2119,-2135,-2140,-2137,-2134,-2134,
+-2137,-2135,-2128,-2124,-2119,-2113,-2104,-2094,-2083,-2075,-2065,-2053,-2039,-2024,-2009,-1996,-1983,-1972,-1964,-1951,
+-1943,-1930,-1921,-1911,-1902,-1890,-1872,-1855,-1839,-1825,-1811,-1800,-1794,-1785,-1779,-1769,-1762,-1751,-1736,-1721,
+-1710,-1698,-1689,-1678,-1667,-1658,-1651,-1639,-1629,-1620,-1612,-1603,-1597,-1585,-1573,-1562,-1554,-1544,-1535,-1525,
+-1511,-1501,-1490,-1477,-1467,-1458,-1442,-1429,-1414,-1400,-1389,-1377,-1365,-1356,-1345,-1333,-1320,-1306,-1293,-1284,
+-1272,-1262,-1248,-1236,-1225,-1209,-1202,-1190,-1175,-1161,-1144,-1128,-1106,-1096,-1078,-1051,-1031,-1003,-976,-952,
+-938,-938,-937,-934,-925,-900,-855,-764,-713,-750,-723,-676,-632,-588,-558,-533,-498,-459,-423,-374,
+-328,-288,-253,-199,-152,-104,-56,-9,45,103,163,224,305,350,407,482,560,603,648,702,
+694,668,630,872,1220,1499,1827,1975,2008,1911,1825,1951,2408,2583,2642,2331,1887,1730,1537,1461,
+1473,1515,1562,1619,1631,1665,1756,1844,1896,1929,1966,2004,2031,2052,1982,1939,1941,1969,1980,1971,
+1947,1896,1846,1801,1763,1724,1682,1635,1579,1516,1451,1381,1307,1221,1114,1016,933,845,763,687,
+610,529,493,467,414,344,267,179,82,-6,-79,-142,-218,-305,-384,-453,-524,-611,-690,-752,
+-805,-867,-933,-979,-1014,-1052,-1105,-1171,-1252,-1349,-1445,-1510,-1575,-1630,-1673,-1710,-1777,-1865,-1930,-1960,
+-1952,-1909,-1885,-1944,-2072,-2174,-2249,-2312,-2365,-2374,-2357,-2310,-2289,-2260,-2269,-2327,-2373,-2401,-2418,-2427,
+-2417,-2403,-2385,-2349,-2333,-2356,-2369,-2383,-2391,-2417,-2421,-2467,-2459,-2463,-2485,-2510,-2518,-2504,-2476,-2464,
+-2486,-2510,-2513,-2507,-2521,-2542,-2551,-2539,-2475,-2387,-2282,-2199,-2180,-2168,-2135,-2026,-1966,-2032,-2064,-2070,
+-2032,-1975,-1918,-1860,-1778,-1742,-1727,-1703,-1678,-1642,-1608,-1577,-1518,-1398,-1374,-1300,-1244,-1222,-1222,-1152,
+-1126,-1164,-1113,-1070,-1050,-1022,-979,-961,-938,-907,-865,-820,-782,-746,-704,-676,-658,-645,-620,-594,
+-564,-524,-478,-432,-384,-351,-322,-291,-263,-233,-208,-176,-148,-112,-78,-44,-27,15,55,95,
+129,163,188,211,258,300,340,399,439,494,545,565,585,579,595,619,637,675,708,758,
+792,812,844,852,896,922,962,1006,1048,1091,1137,1188,1240,1292,1313,1336,1373,1396,1431,1444,
+1465,1468,1495,1521,1543,1592,1664,1675,1696,1730,1755,1801,1830,1898,1971,2012,1965,2049,2068,2049,
+2033,2024,2018,2002,2003,1991,2003,2013,2011,1998,1987,1968,1960,1961,1965,1967,1955,1931,1914,1903,
+1895,1897,1889,1864,1848,1839,1818,1818,1808,1793,1778,1776,1777,1765,1766,1773,1781,1768,1768,1784,
+1789,1796,1823,1834,1845,1857,1860,1848,1832,1832,1827,1834,1836,1836,1872,1842,1796,1786,1771,1759,
+1743,1727,1685,1655,1653,1641,1627,1586,1535,1537,1478,1442,1431,1407,1408,1377,1287,1260,1243,1238,
+1219,1165,1082,1014,1028,1062,1041,957,778,680,635,612,641,636,641,701,771,826,840,840,
+810,744,667,595,531,485,444,350,257,150,49,-83,-206,-296,-347,-425,-531,-652,-767,-877,
+-973,-1071,-1165,-1260,-1348,-1430,-1517,-1602,-1674,-1730,-1772,-1807,-1855,-1922,-1987,-2024,-2040,-2042,-2050,-2059,
+-2085,-2093,-2091,-2091,-2092,-2093,-2095,-2075,-2054,-2028,-1985,-1928,-1872,-1808,-1747,-1682,-1639,-1595,-1512,-1408,
+-1339,-1245,-1118,-931,-684,-690,-682,-623,-734,-865,-953,-1045,-1151,-1230,-1345,-1448,-1566,-1630,-1659,-1688,
+-1720,-1740,-1754,-1771,-1792,-1820,-1826,-1784,-1719,-1674,-1619,-1583,-1640,-1854,-1940,-1773,-1580,-1539,-1583,-1684,
+-1821,-1973,-2135,-2275,-2389,-2492,-2596,-2708,-2799,-2885,-2934,-2972,-3016,-3057,-3144,-3349,-3594,-3770,-3883,-3964,
+-4016,-4057,-4069,-4075,-4089,-4110,-4144,-4207,-4291,-4373,-4423,-4460,-4495,-4535,-4571,-4624,-4668,-4688,-4683,-4667,
+-4695,-4697,-4730,-4754,-4731,-4683,-4766,-4714,-4691,-4690,-4681,-4656,-4642,-4638,-4641,-4664,-4702,-4735,-4754,-4760,
+-4775,-4817,-4800,-4769,-4773,-4799,-4813,-4845,-4882,-4910,-4943,-4985,-5043,-5109,-5167,-5218,-5267,-5306,-5350,-5400,
+-5451,-5495,-5538,-5582,-5637,-5708,-5770,-5857,-5940,-6017,-6098,-6176,-6244,-6306,-6377,-6442,-6510,-6577,-6637,-6697,
+-6774,-6839,-6910,-6939,-6990,-7037,-7098,-7146,-7183,-7255,-7277,-7351,-7445,-7470,-7523,-7567,-7606,-7694,-7721,-7753,
+-7782,-7922,-7977,-8071,-8106,-8257,-8328,-8417,-8503,-8584,-8636,-8744,-8835,-8900,-8942,-8988,-9059,-9117,-9157,-9184,
+-9158,-9167,-9205,-9216,-9221,-9241,-9365,-9611,-9704,-9704,-9672,-9670,-9694,-9735,-9786,-9842,-9885,-9918,-9948,-9972,
+-9976,-9992,-9993,-10012,-10041,-10066,-10087,-10076,-10057,-10028,-9983,-9933,-9883,-9810,-9721,-9618,-9514,-9418,-9333,-9266,
+-9243,-9213,-9164,-9127,-9091,-9038,-8964,-8877,-8784,-8699,-8619,-8492,-8375,-8256,-8147,-8053,-7951,-7825,-7667,-7481,
+-7308,-7226,-7163,-7054,-6913,-6758,-6638,-6585,-6490,-6386,-6259,-6130,-6017,-5897,-5763,-5630,-5502,-5372,-5204,-5011,
+-4874,-4722,-4566,-4449,-4318,-4176,-4020,-3866,-3703,-3527,-3383,-3281,-3145,-3039,-2869,-2737,-2646,-2603,-2580,-2546,
+-2461,-2406,-2342,-2117,-1839,-1691,-1618,-1528,-1591,-1588,-1386,-1038,-639,-203,177,378,496,521,543,574,
+659,742,841,930,1026,1136,1257,1359,1447,1528,1607,1678,1759,1841,1930,2020,2093,2168,2264,2358,
+2431,2513,2604,2691,2777,2880,2988,3088,3180,3271,3349,3439,3527,3599,3677,3757,3853,3942,4022,4102,
+4179,4247,4313,4389,4478,4536,4586,4652,4714,4788,4883,4968,5121,5178,5211,5257,5272,5319,5330,5228,
+5163,5126,5139,5235,5356,5497,5756,6004,6231,6444,6483,6432,6355,6297,6212,6152,6099,5982,5898,5938,
+5971,6041,6092,6126,6143,6119,6197,6298,6319,6337,6365,6497,6541,6531,6352,6258,6148,6117,6087,6074,
+5970,5868,5876,5984,6199,6378,6504,6607,6728,6808,6848,6842,6850,6876,6938,7007,7065,7102,7119,7113,
+7105,7040,6993,6943,6872,6934,7004,7064,7221,7172,7122,7125,7195,7259,7323,7400,7399,7380,7348,7348,
+7352,7377,7451,7523,7486,7384,7246,7083,7040,7070,7049,7057,7091,7099,7125,7181,7255,7340,7487,7605,
+7603,7617,7687,7723,7754,7773,7800,7815,7813,7813,7822,7798,7778,7771,7756,7783,7801,7800,7750,7690,
+7663,7619,7551,7512,7475,7381,7343,7322,7294,7277,7241,7179,7110,6995,6922,6899,6788,6658,6458,6285,
+6186,6270,6401,6448,6213,6137,6131,6156,6166,6155,6159,6152,6144,6122,6092,6056,6016,5973,5921,5851,
+5775,5701,5635,5569,5505,5439,5372,5304,5226,5145,5065,4998,4978,4942,4914,4903,4878,4815,4731,4643,
+4602,4623,4580,4529,4462,4413,4378,4313,4259,4199,4169,4152,4107,4069,4045,4034,4020,3982,3928,3888,
+3865,3859,3830,3781,3738,3696,3643,3572,3512,3482,3437,3372,3325,3312,3293,3284,3275,3257,3203,3107,
+3037,2979,2922,2873,2810,2754,2714,2686,2684,2706,2760,2921,2794,2685,2666,2539,2484,2446,2431,2425,
+2420,2401,2363,2336,2309,2294,2273,2252,2231,2208,2171,2125,2104,2073,2034,2013,1996,1987,1975,1955,
+1945,1937,1926,1902,1879,1875,1921,1875,1876,1890,1948,1852,1780,1764,1764,1760,1761,1768,1765,1729,
+1701,1674,1648,1622,1602,1592,1599,1615,1607,1615,1625,1665,1663,1654,1695,1609,1570,1556,1540,1521,
+1544,1572,1533,1549,1551,1531,1528,1521,1503,1507,1519,1520,1512,1516,1524,1521,1517,1510,1500,1485,
+1471,1455,1437,1442,1461,1486,1502,1516,1523,1531,1544,1550,1546,1547,1551,1552,1556,1559,1549,1535,
+1523,1518,1508,1528,1578,1525,1508,1498,1505,1506,1495,1503,1516,1490,1478,1475,1452,1435,1418,1417,
+1404,1390,1360,1342,1323,1301,1277,1257,1242,1230,1215,1202,1188,1173,1148,1120,1100,1073,1046,1024,
+1002,978,963,942,912,881,849,818,801,775,749,719,690,657,626,599,572,545,515,495,
+478,451,413,375,336,288,251,210,188,163,120,77,46,17,-18,-54,-95,-144,-188,-232,
+-271,-309,-337,-368,-396,-428,-463,-496,-527,-564,-601,-629,-649,-668,-681,-694,-716,-750,-784,-818,
+-852,-887,-920,-948,-971,-1000,-1025,-1060,-1092,-1130,-1161,-1189,-1213,-1237,-1266,-1296,-1327,-1361,-1388,-1417,
+-1444,-1466,-1495,-1524,-1553,-1580,-1604,-1637,-1664,-1695,-1711,-1731,-1752,-1772,-1788,-1802,-1816,-1832,-1855,-1877,
+-1898,-1912,-1922,-1945,-1971,-1983,-1991,-1996,-2005,-2019,-2034,-2044,-2049,-2056,-2065,-2080,-2093,-2103,-2105,-2106,
+-2102,-2101,-2096,-2089,-2081,-2074,-2073,-2068,-2061,-2053,-2041,-2030,-2018,-2006,-1990,-1976,-1964,-1951,-1938,-1927,
+-1916,-1903,-1894,-1885,-1874,-1864,-1855,-1847,-1833,-1822,-1812,-1798,-1782,-1768,-1757,-1746,-1736,-1730,-1727,-1716,
+-1703,-1689,-1680,-1668,-1657,-1646,-1638,-1629,-1621,-1612,-1603,-1594,-1588,-1580,-1571,-1561,-1552,-1541,-1530,-1524,
+-1512,-1504,-1494,-1485,-1471,-1461,-1450,-1434,-1424,-1413,-1404,-1393,-1381,-1372,-1364,-1352,-1340,-1329,-1319,-1313,
+-1297,-1290,-1273,-1264,-1250,-1236,-1226,-1214,-1205,-1191,-1175,-1163,-1152,-1131,-1109,-1087,-1073,-1051,-1021,-994,
+-972,-957,-943,-926,-903,-893,-882,-862,-827,-792,-762,-723,-681,-646,-608,-569,-533,-494,-459,-426,
+-387,-344,-306,-265,-212,-157,-113,-56,-5,33,87,137,203,264,325,390,468,500,560,599,
+637,634,587,564,831,1127,1336,1577,1802,1879,1861,1823,1945,2297,2578,2699,2374,1914,1695,1506,
+1377,1353,1413,1490,1561,1625,1659,1723,1801,1848,1894,1966,1998,2004,2002,1987,1943,1926,1953,1965,
+1955,1932,1898,1845,1801,1763,1729,1696,1654,1601,1537,1467,1397,1323,1243,1129,1035,948,864,790,
+716,645,582,547,512,463,389,290,191,91,-6,-81,-145,-215,-291,-364,-439,-520,-609,-693,
+-758,-821,-882,-943,-991,-1022,-1061,-1113,-1167,-1236,-1322,-1422,-1502,-1568,-1609,-1628,-1658,-1709,-1784,-1837,
+-1847,-1817,-1764,-1758,-1821,-1942,-2066,-2152,-2214,-2265,-2285,-2256,-2213,-2219,-2236,-2263,-2300,-2321,-2333,-2335,
+-2349,-2350,-2339,-2325,-2319,-2341,-2374,-2366,-2366,-2358,-2426,-2446,-2457,-2489,-2506,-2523,-2553,-2559,-2538,-2506,
+-2470,-2487,-2526,-2512,-2520,-2594,-2656,-2695,-2684,-2617,-2537,-2424,-2300,-2248,-2228,-2204,-2128,-2005,-1930,-1904,
+-1909,-1906,-1875,-1836,-1754,-1612,-1608,-1607,-1607,-1616,-1610,-1614,-1607,-1589,-1545,-1457,-1344,-1344,-1256,-1326,
+-1282,-1250,-1244,-1222,-1189,-1156,-1116,-1058,-996,-946,-907,-869,-835,-797,-767,-737,-704,-683,-664,-634,
+-600,-564,-530,-494,-454,-416,-385,-372,-353,-332,-305,-282,-251,-212,-173,-134,-92,-58,-20,19,
+59,103,144,177,224,262,308,349,391,423,451,496,522,539,557,564,579,604,640,686,
+712,743,760,794,809,840,888,938,973,1019,1066,1102,1146,1181,1205,1217,1235,1273,1313,1363,
+1395,1443,1459,1499,1524,1570,1609,1646,1673,1701,1727,1770,1813,1840,1863,1911,1939,1935,1972,2002,
+2027,2016,2018,1992,2005,1999,1995,2006,2001,1979,1973,1976,1975,1984,1949,1945,1935,1932,1923,1921,
+1905,1897,1891,1875,1836,1841,1827,1801,1794,1787,1791,1779,1788,1786,1776,1771,1761,1761,1768,1774,
+1780,1800,1816,1837,1873,1856,1847,1849,1847,1832,1839,1830,1838,1858,1844,1880,1849,1796,1785,1763,
+1748,1705,1684,1658,1641,1617,1608,1572,1528,1571,1515,1435,1389,1364,1339,1316,1291,1226,1203,1180,
+1153,1118,1041,950,913,965,1044,1038,937,792,671,615,560,591,614,582,596,662,711,755,
+758,743,707,652,592,543,511,464,371,271,168,72,-51,-149,-246,-331,-428,-543,-641,-736,
+-842,-938,-1029,-1116,-1207,-1300,-1396,-1489,-1580,-1661,-1713,-1736,-1750,-1775,-1839,-1927,-1984,-2005,-2020,-2045,
+-2063,-2077,-2073,-2078,-2083,-2083,-2087,-2085,-2069,-2047,-2025,-1989,-1934,-1874,-1810,-1746,-1692,-1641,-1595,-1544,
+-1456,-1416,-1276,-1116,-890,-702,-726,-662,-660,-735,-862,-954,-1034,-1123,-1217,-1339,-1447,-1567,-1628,-1660,
+-1695,-1734,-1763,-1779,-1809,-1825,-1844,-1815,-1752,-1705,-1674,-1654,-1663,-1809,-1975,-1936,-1723,-1596,-1574,-1610,
+-1699,-1823,-1975,-2138,-2296,-2423,-2517,-2604,-2719,-2828,-2924,-2966,-2955,-2967,-3028,-3177,-3442,-3652,-3801,-3902,
+-3972,-4019,-4049,-4066,-4068,-4064,-4089,-4144,-4204,-4286,-4377,-4431,-4469,-4497,-4522,-4553,-4581,-4609,-4629,-4636,
+-4631,-4662,-4650,-4665,-4699,-4685,-4660,-4716,-4667,-4657,-4643,-4638,-4619,-4605,-4596,-4607,-4624,-4668,-4698,-4719,
+-4735,-4751,-4777,-4802,-4756,-4752,-4757,-4774,-4803,-4836,-4870,-4910,-4954,-5014,-5070,-5125,-5176,-5222,-5263,-5306,
+-5356,-5413,-5457,-5501,-5544,-5596,-5664,-5746,-5821,-5892,-5956,-6030,-6123,-6204,-6270,-6334,-6404,-6467,-6537,-6601,
+-6658,-6740,-6791,-6873,-6908,-6952,-7018,-7059,-7112,-7170,-7180,-7234,-7311,-7344,-7405,-7488,-7531,-7588,-7625,-7675,
+-7719,-7764,-7839,-7945,-7961,-8112,-8185,-8274,-8369,-8464,-8517,-8614,-8722,-8759,-8808,-8856,-8947,-9000,-9038,-9103,
+-9142,-9130,-9112,-9157,-9177,-9193,-9229,-9394,-9591,-9651,-9662,-9639,-9646,-9673,-9713,-9773,-9824,-9860,-9888,-9911,
+-9923,-9929,-9936,-9938,-9956,-9984,-10001,-10020,-10015,-9995,-9961,-9919,-9865,-9799,-9706,-9614,-9534,-9462,-9387,-9291,
+-9214,-9155,-9104,-9070,-9033,-8974,-8927,-8885,-8832,-8771,-8696,-8612,-8493,-8371,-8249,-8141,-8034,-7913,-7776,-7615,
+-7425,-7279,-7214,-7144,-7039,-6912,-6775,-6676,-6609,-6501,-6366,-6236,-6097,-5990,-5875,-5746,-5618,-5498,-5373,-5207,
+-5018,-4886,-4735,-4589,-4479,-4349,-4213,-4063,-3902,-3717,-3580,-3457,-3308,-3153,-3036,-2894,-2760,-2676,-2621,-2570,
+-2503,-2395,-2345,-2344,-2256,-2036,-1874,-1757,-1593,-1482,-1530,-1463,-1218,-843,-405,-26,340,505,572,618,
+625,660,750,847,943,1042,1153,1263,1373,1463,1536,1612,1688,1769,1855,1937,2016,2089,2169,2257,
+2352,2438,2524,2614,2694,2776,2861,2955,3052,3137,3239,3322,3398,3474,3540,3618,3705,3798,3882,3961,
+4043,4119,4187,4256,4319,4392,4457,4527,4606,4681,4729,4784,4869,5034,5134,5202,5270,5281,5329,5366,
+5340,5264,5163,5130,5213,5328,5509,5811,6113,6391,6481,6478,6400,6314,6307,6150,6124,6036,5909,5845,
+5850,5894,5956,5914,5938,5893,5906,5969,6025,6058,6168,6177,6171,6336,6536,6289,6251,6175,6090,6066,
+5926,5726,5529,5528,5737,5939,6093,6237,6321,6431,6522,6601,6631,6666,6714,6769,6845,6915,6966,7013,
+7030,7029,6967,6883,6815,6772,6840,6929,7043,7079,7118,7036,6985,6991,7034,7078,7121,7206,7259,7263,
+7266,7262,7225,7277,7350,7443,7417,7299,7205,7138,7175,7173,7175,7197,7186,7163,7184,7286,7361,7506,
+7616,7668,7689,7705,7757,7810,7809,7810,7828,7861,7871,7876,7878,7876,7887,7919,7933,7921,7912,7881,
+7851,7817,7763,7709,7659,7608,7576,7508,7438,7405,7415,7425,7340,7209,7082,6997,6983,6983,6932,6781,
+6602,6470,6344,6215,6186,6163,6169,6184,6197,6195,6183,6178,6180,6179,6161,6133,6094,6050,6007,5953,
+5885,5813,5740,5671,5603,5545,5485,5403,5329,5270,5202,5123,5059,5033,5009,4974,4946,4906,4844,4760,
+4679,4650,4663,4598,4536,4481,4466,4413,4344,4286,4265,4312,4212,4142,4123,4083,4057,4043,4009,3960,
+3927,3910,3895,3862,3822,3782,3741,3690,3629,3580,3537,3485,3421,3365,3333,3312,3318,3292,3263,3226,
+3157,3088,3036,2995,2944,2864,2795,2743,2707,2702,2756,2750,2817,2755,2713,2696,2601,2569,2499,2466,
+2442,2484,2470,2428,2441,2338,2320,2295,2270,2264,2245,2195,2147,2108,2104,2039,2008,1995,1990,1984,
+1978,1970,1965,1953,1929,1900,1879,1896,1872,1840,1817,1821,1784,1761,1763,1768,1777,1778,1769,1745,
+1721,1701,1700,1680,1637,1607,1589,1603,1645,1648,1672,1684,1639,1613,1634,1652,1622,1596,1594,1587,
+1564,1564,1582,1560,1532,1529,1542,1536,1545,1521,1512,1522,1524,1519,1527,1526,1521,1517,1513,1507,
+1493,1474,1455,1440,1434,1447,1470,1488,1496,1499,1502,1507,1513,1514,1526,1532,1536,1542,1545,1540,
+1524,1509,1495,1484,1504,1496,1486,1483,1487,1488,1486,1485,1481,1485,1479,1468,1471,1454,1442,1427,
+1419,1410,1396,1362,1332,1307,1290,1273,1255,1239,1224,1208,1196,1177,1160,1136,1109,1084,1062,1036,
+1010,989,965,947,921,893,866,839,811,787,762,731,702,679,649,618,591,561,535,512,
+489,467,441,406,364,325,286,248,208,175,148,125,91,53,18,-22,-65,-108,-156,-201,
+-233,-271,-304,-335,-365,-392,-427,-454,-484,-511,-542,-576,-611,-637,-662,-675,-686,-702,-729,-766,
+-800,-835,-868,-901,-930,-960,-986,-1011,-1034,-1060,-1093,-1129,-1154,-1186,-1212,-1240,-1285,-1320,-1346,-1368,
+-1394,-1419,-1438,-1461,-1493,-1520,-1549,-1583,-1616,-1645,-1669,-1684,-1703,-1720,-1738,-1756,-1771,-1781,-1798,-1815,
+-1836,-1859,-1880,-1896,-1912,-1941,-1952,-1959,-1961,-1970,-1986,-2002,-2007,-2017,-2025,-2033,-2041,-2050,-2058,-2062,
+-2068,-2060,-2059,-2055,-2050,-2039,-2032,-2031,-2027,-2025,-2019,-2007,-1994,-1980,-1969,-1956,-1942,-1929,-1920,-1909,
+-1898,-1886,-1873,-1863,-1850,-1838,-1825,-1817,-1809,-1804,-1792,-1781,-1771,-1762,-1751,-1738,-1721,-1709,-1699,-1691,
+-1685,-1675,-1665,-1655,-1645,-1636,-1629,-1621,-1611,-1605,-1596,-1588,-1579,-1574,-1568,-1558,-1548,-1540,-1531,-1519,
+-1514,-1501,-1493,-1482,-1473,-1460,-1452,-1444,-1434,-1424,-1417,-1408,-1398,-1389,-1381,-1369,-1358,-1345,-1334,-1326,
+-1316,-1305,-1294,-1287,-1274,-1261,-1251,-1238,-1229,-1222,-1208,-1192,-1184,-1171,-1150,-1125,-1112,-1092,-1075,-1048,
+-1027,-1006,-985,-962,-932,-897,-875,-854,-841,-814,-777,-739,-709,-678,-645,-614,-581,-546,-509,-475,
+-442,-406,-365,-321,-281,-238,-189,-138,-81,-30,27,87,161,180,270,345,380,395,456,521,
+568,598,586,541,509,745,1028,1202,1268,1321,1487,1606,1663,1821,2165,2546,2675,2282,1896,1661,
+1420,1265,1253,1321,1395,1475,1563,1623,1665,1735,1814,1887,1959,1996,1985,1974,1983,1962,1924,1938,
+1941,1933,1910,1873,1832,1791,1754,1725,1694,1659,1613,1554,1481,1410,1329,1248,1137,1039,943,856,
+788,725,668,624,583,543,492,416,313,199,99,3,-75,-143,-211,-275,-341,-420,-513,-608,
+-688,-756,-824,-893,-952,-1000,-1038,-1082,-1130,-1176,-1238,-1324,-1415,-1502,-1555,-1599,-1620,-1633,-1662,-1697,
+-1729,-1726,-1687,-1673,-1690,-1735,-1811,-1926,-2021,-2087,-2127,-2148,-2156,-2165,-2185,-2202,-2222,-2235,-2240,-2246,
+-2261,-2293,-2304,-2287,-2277,-2284,-2296,-2331,-2346,-2351,-2353,-2405,-2460,-2476,-2525,-2576,-2606,-2619,-2615,-2584,
+-2534,-2489,-2492,-2513,-2497,-2524,-2631,-2729,-2791,-2767,-2731,-2665,-2561,-2454,-2381,-2325,-2279,-2256,-2166,-2068,
+-1984,-1922,-1891,-1863,-1813,-1743,-1644,-1561,-1489,-1472,-1461,-1457,-1527,-1568,-1587,-1570,-1430,-1243,-1380,-1378,
+-1356,-1334,-1306,-1273,-1236,-1195,-1147,-1088,-1029,-972,-925,-894,-862,-834,-804,-773,-737,-704,-671,-644,
+-616,-590,-563,-532,-500,-471,-443,-413,-397,-373,-344,-316,-287,-253,-218,-183,-147,-107,-75,-37,
+-1,31,64,122,149,203,220,239,291,341,382,378,407,434,465,476,490,528,540,567,
+611,650,669,701,720,775,813,845,858,877,914,948,976,1026,1089,1166,1223,1238,1251,1268,
+1293,1348,1407,1458,1508,1542,1582,1612,1642,1676,1702,1729,1769,1794,1820,1841,1885,1928,1964,1961,
+1954,1968,1993,2012,2023,2013,2001,1987,1983,1969,1981,1968,1970,1955,1951,1942,1953,1943,1919,1911,
+1905,1892,1883,1861,1854,1850,1833,1829,1822,1810,1791,1790,1776,1771,1770,1768,1769,1766,1765,1778,
+1786,1792,1821,1842,1868,1845,1846,1863,1852,1848,1839,1832,1836,1835,1847,1847,1855,1798,1799,1804,
+1767,1746,1670,1634,1653,1665,1576,1545,1523,1480,1479,1459,1367,1333,1302,1267,1223,1192,1160,1134,
+1105,1070,1022,926,867,880,925,992,1007,944,855,668,602,551,530,562,547,537,568,619,
+663,683,677,657,623,580,537,515,452,375,280,168,87,-11,-105,-208,-331,-434,-547,-630,
+-722,-817,-912,-1010,-1099,-1180,-1270,-1362,-1451,-1541,-1626,-1682,-1690,-1678,-1680,-1725,-1817,-1901,-1949,-1976,
+-2010,-2031,-2053,-2063,-2057,-2058,-2061,-2059,-2059,-2053,-2041,-2029,-1995,-1941,-1878,-1810,-1743,-1679,-1630,-1569,
+-1509,-1449,-1400,-1291,-1122,-877,-734,-746,-640,-646,-761,-875,-949,-1038,-1127,-1224,-1331,-1437,-1556,-1617,
+-1645,-1692,-1742,-1766,-1794,-1813,-1823,-1822,-1810,-1781,-1724,-1690,-1690,-1728,-1874,-1982,-1896,-1701,-1642,-1621,
+-1635,-1705,-1805,-1959,-2130,-2296,-2438,-2528,-2608,-2724,-2852,-2960,-3002,-2962,-2953,-3020,-3241,-3496,-3664,-3798,
+-3896,-3956,-3999,-4026,-4041,-4041,-4043,-4075,-4133,-4193,-4270,-4354,-4422,-4465,-4489,-4510,-4534,-4555,-4573,-4588,
+-4586,-4596,-4630,-4628,-4622,-4662,-4649,-4668,-4651,-4628,-4617,-4611,-4601,-4586,-4564,-4562,-4565,-4589,-4611,-4648,
+-4679,-4702,-4707,-4697,-4751,-4723,-4708,-4716,-4732,-4757,-4788,-4812,-4856,-4902,-4976,-5037,-5082,-5129,-5174,-5222,
+-5256,-5309,-5362,-5411,-5463,-5502,-5554,-5623,-5696,-5769,-5838,-5909,-5983,-6076,-6161,-6226,-6290,-6360,-6420,-6485,
+-6548,-6621,-6686,-6746,-6832,-6873,-6934,-6986,-7041,-7099,-7108,-7150,-7212,-7248,-7309,-7384,-7440,-7497,-7529,-7579,
+-7617,-7665,-7722,-7837,-7850,-7954,-8032,-8133,-8215,-8323,-8393,-8491,-8596,-8635,-8708,-8735,-8827,-8867,-8931,-9002,
+-9059,-9092,-9071,-9075,-9096,-9135,-9146,-9192,-9440,-9558,-9600,-9598,-9601,-9616,-9654,-9685,-9718,-9764,-9806,-9826,
+-9837,-9847,-9858,-9870,-9881,-9888,-9903,-9914,-9934,-9934,-9920,-9893,-9854,-9798,-9728,-9634,-9545,-9478,-9415,-9325,
+-9227,-9140,-9047,-9004,-8978,-8939,-8876,-8856,-8851,-8813,-8759,-8689,-8601,-8488,-8360,-8236,-8118,-8000,-7876,-7750,
+-7607,-7459,-7346,-7246,-7146,-7036,-6919,-6767,-6653,-6561,-6457,-6326,-6194,-6072,-5989,-5867,-5738,-5618,-5501,-5377,
+-5208,-5024,-4888,-4742,-4610,-4507,-4366,-4243,-4068,-3909,-3761,-3610,-3489,-3337,-3186,-3042,-2891,-2770,-2677,-2619,
+-2554,-2466,-2343,-2276,-2280,-2290,-2209,-2059,-1886,-1718,-1536,-1377,-1405,-1317,-1036,-637,-238,179,558,689,
+697,728,728,766,840,950,1055,1165,1269,1365,1456,1544,1633,1705,1782,1866,1944,2010,2082,2159,
+2252,2350,2424,2503,2592,2669,2755,2846,2935,3015,3111,3205,3286,3357,3424,3490,3568,3659,3751,3831,
+3901,3975,4058,4140,4213,4286,4348,4421,4494,4572,4624,4645,4694,4832,5053,5103,5175,5237,5268,5319,
+5371,5394,5375,5269,5168,5208,5365,5633,5937,6161,6438,6449,6249,6252,6210,6206,6172,6181,6140,5959,
+5777,5705,5726,5749,5695,5659,5685,5719,5787,5837,5935,6080,6126,6098,6108,6314,6163,6133,6034,5948,
+5856,5717,5500,5398,5460,5620,5745,5803,5873,5943,6038,6140,6227,6273,6336,6438,6552,6656,6733,6822,
+6918,6960,6970,6921,6858,6806,6789,6852,6920,7048,7021,7024,6917,6866,6865,6915,6951,7040,7211,7304,
+7319,7283,7265,7203,7191,7312,7451,7437,7330,7307,7354,7422,7531,7615,7516,7430,7416,7376,7377,7405,
+7467,7585,7668,7727,7776,7828,7856,7849,7846,7859,7892,7901,7901,7909,7900,7926,7949,7953,7952,7950,
+7951,7891,7816,7798,7763,7717,7683,7651,7623,7558,7525,7566,7664,7561,7428,7268,7123,7047,7078,7087,
+6932,6813,6719,6565,6317,6132,6121,6181,6226,6239,6232,6215,6204,6215,6216,6197,6163,6123,6079,6032,
+5980,5916,5854,5785,5715,5644,5586,5532,5455,5382,5323,5262,5183,5120,5086,5053,5020,4994,4945,4870,
+4782,4711,4718,4695,4608,4537,4496,4499,4425,4350,4320,4401,4321,4218,4158,4128,4093,4080,4055,4021,
+3986,3956,3939,3922,3894,3875,3841,3793,3756,3702,3658,3603,3539,3468,3402,3359,3330,3315,3285,3261,
+3240,3202,3143,3097,3077,3029,2934,2848,2786,2741,2715,2718,2746,2764,2733,2823,2678,2688,2730,2567,
+2485,2469,2463,2461,2430,2398,2370,2367,2332,2297,2281,2264,2237,2189,2139,2126,2100,2022,2015,2012,
+2007,1998,1987,1986,1966,1940,1911,1887,1870,1900,1921,1855,1784,1765,1765,1780,1789,1788,1779,1769,
+1753,1732,1729,1771,1772,1708,1658,1646,1642,1621,1596,1624,1664,1652,1660,1664,1652,1641,1622,1607,
+1605,1597,1586,1584,1572,1560,1544,1542,1545,1550,1530,1519,1522,1530,1522,1525,1524,1513,1517,1520,
+1514,1499,1481,1462,1457,1454,1455,1464,1473,1481,1481,1477,1476,1482,1488,1497,1508,1517,1528,1525,
+1523,1513,1498,1481,1464,1455,1461,1487,1481,1475,1474,1471,1473,1473,1465,1460,1454,1466,1450,1444,
+1437,1424,1413,1395,1369,1337,1308,1287,1273,1254,1237,1221,1203,1189,1166,1149,1122,1098,1076,1050,
+1021,997,972,949,927,901,874,848,819,799,775,751,718,687,657,626,598,575,545,518,
+489,460,436,406,375,342,315,283,247,213,180,147,120,83,38,6,-24,-65,-101,-145,
+-177,-211,-252,-288,-326,-352,-381,-409,-436,-460,-488,-526,-560,-591,-627,-664,-682,-683,-696,-719,
+-755,-778,-820,-840,-874,-906,-933,-964,-997,-1027,-1049,-1066,-1098,-1125,-1158,-1186,-1213,-1252,-1290,-1320,
+-1341,-1368,-1395,-1417,-1441,-1470,-1501,-1531,-1560,-1588,-1618,-1638,-1660,-1677,-1693,-1701,-1710,-1726,-1743,-1764,
+-1784,-1802,-1820,-1837,-1859,-1878,-1895,-1903,-1914,-1924,-1935,-1953,-1965,-1975,-1981,-1988,-1994,-1996,-2001,-2014,
+-2016,-2024,-2018,-2016,-2011,-2006,-2001,-1990,-1990,-1989,-1988,-1982,-1973,-1960,-1943,-1930,-1918,-1908,-1896,-1887,
+-1875,-1863,-1850,-1840,-1829,-1817,-1807,-1794,-1782,-1772,-1761,-1754,-1748,-1737,-1729,-1717,-1709,-1696,-1684,-1674,
+-1667,-1658,-1648,-1635,-1628,-1623,-1614,-1609,-1603,-1596,-1589,-1580,-1570,-1559,-1552,-1544,-1542,-1538,-1526,-1517,
+-1509,-1503,-1497,-1486,-1475,-1467,-1458,-1449,-1438,-1428,-1423,-1420,-1412,-1401,-1391,-1379,-1369,-1364,-1354,-1346,
+-1337,-1325,-1316,-1305,-1299,-1292,-1282,-1272,-1255,-1246,-1236,-1224,-1214,-1199,-1185,-1174,-1156,-1134,-1118,-1097,
+-1078,-1056,-1038,-1012,-981,-943,-910,-883,-859,-835,-807,-774,-746,-714,-683,-653,-625,-595,-561,-528,
+-497,-465,-428,-389,-341,-297,-252,-202,-148,-94,-43,7,58,110,162,217,266,317,378,431,
+480,522,551,542,490,445,629,875,1004,1072,1052,1155,1302,1547,1880,2208,2430,2484,2029,1758,
+1472,1265,1145,1153,1241,1312,1405,1511,1573,1620,1678,1761,1858,1937,1991,1978,1966,1980,1998,1965,
+1948,1930,1917,1885,1854,1818,1786,1748,1736,1704,1667,1625,1570,1498,1431,1337,1218,1102,1011,923,
+848,786,734,691,660,620,570,513,431,325,210,105,13,-68,-142,-210,-270,-331,-412,-512,
+-604,-681,-746,-816,-889,-953,-1001,-1046,-1088,-1132,-1180,-1233,-1316,-1408,-1482,-1528,-1569,-1614,-1634,-1635,
+-1626,-1612,-1604,-1603,-1624,-1654,-1691,-1738,-1802,-1872,-1933,-1973,-2000,-2055,-2087,-2114,-2137,-2153,-2154,-2155,
+-2189,-2231,-2277,-2289,-2263,-2249,-2258,-2262,-2287,-2325,-2337,-2368,-2406,-2446,-2487,-2551,-2619,-2657,-2671,-2648,
+-2611,-2581,-2550,-2534,-2508,-2486,-2524,-2626,-2740,-2825,-2834,-2800,-2716,-2621,-2539,-2450,-2383,-2341,-2340,-2299,
+-2223,-2149,-2075,-2044,-1994,-1913,-1813,-1696,-1581,-1471,-1439,-1410,-1355,-1312,-1353,-1442,-1457,-1390,-1278,-1311,
+-1312,-1295,-1270,-1261,-1216,-1185,-1142,-1091,-1032,-980,-940,-907,-883,-855,-827,-801,-768,-734,-699,-662,
+-626,-595,-567,-537,-510,-485,-462,-444,-423,-408,-385,-351,-318,-284,-254,-222,-195,-158,-130,-100,
+-71,-47,-21,-6,31,64,96,122,156,185,217,249,265,278,303,326,327,347,383,415,
+445,492,519,551,590,620,659,685,722,769,814,885,935,968,967,1002,1044,1070,1096,1167,
+1228,1274,1323,1390,1431,1470,1525,1567,1605,1629,1652,1687,1721,1726,1753,1793,1846,1901,1937,1964,
+1999,2031,1964,2024,2027,2008,1971,1963,1972,1968,1964,1941,1954,1957,1946,1946,1932,1925,1917,1909,
+1903,1885,1882,1877,1872,1867,1858,1844,1824,1818,1807,1793,1782,1779,1774,1765,1769,1780,1774,1777,
+1785,1798,1801,1799,1829,1840,1849,1869,1855,1857,1843,1832,1840,1860,1839,1854,1821,1812,1788,1774,
+1752,1725,1696,1685,1632,1588,1551,1515,1490,1465,1431,1400,1362,1314,1276,1240,1207,1167,1130,1096,
+1062,1030,998,940,843,784,811,846,884,930,908,857,703,540,504,478,523,541,515,503,
+527,557,590,594,591,584,562,525,488,445,362,257,170,102,24,-101,-219,-352,-443,-560,
+-649,-746,-840,-928,-1020,-1096,-1171,-1252,-1333,-1411,-1484,-1554,-1604,-1621,-1603,-1586,-1610,-1686,-1783,-1877,
+-1937,-1961,-1983,-2007,-2035,-2040,-2027,-2026,-2028,-2030,-2034,-2036,-2027,-1997,-1942,-1876,-1814,-1752,-1686,-1614,
+-1571,-1514,-1462,-1400,-1299,-1113,-945,-772,-849,-773,-711,-788,-869,-938,-1063,-1151,-1241,-1314,-1432,-1550,
+-1608,-1630,-1692,-1750,-1781,-1796,-1801,-1805,-1813,-1813,-1793,-1757,-1728,-1725,-1744,-1788,-1892,-1875,-1750,-1697,
+-1659,-1616,-1677,-1821,-1939,-2106,-2261,-2401,-2504,-2601,-2718,-2848,-2963,-3044,-3014,-2979,-3054,-3285,-3507,-3660,
+-3783,-3879,-3942,-3978,-3997,-4005,-4011,-4023,-4060,-4116,-4182,-4253,-4330,-4398,-4447,-4482,-4497,-4513,-4533,-4549,
+-4552,-4541,-4552,-4598,-4624,-4620,-4624,-4631,-4637,-4600,-4584,-4582,-4578,-4553,-4546,-4536,-4522,-4524,-4545,-4564,
+-4598,-4628,-4651,-4676,-4659,-4678,-4652,-4640,-4664,-4687,-4707,-4741,-4744,-4793,-4847,-4930,-4999,-5036,-5081,-5126,
+-5172,-5213,-5258,-5314,-5373,-5426,-5467,-5515,-5583,-5647,-5714,-5805,-5875,-5934,-6019,-6106,-6176,-6237,-6307,-6376,
+-6426,-6496,-6576,-6623,-6690,-6764,-6806,-6872,-6927,-6969,-6989,-7071,-7130,-7149,-7227,-7272,-7344,-7388,-7452,-7497,
+-7543,-7579,-7600,-7690,-7798,-7837,-7886,-7955,-8066,-8161,-8240,-8336,-8448,-8503,-8584,-8623,-8707,-8744,-8816,-8897,
+-8936,-8992,-9026,-9012,-9021,-9073,-9091,-9088,-9142,-9385,-9492,-9533,-9531,-9548,-9592,-9629,-9652,-9672,-9704,-9739,
+-9765,-9777,-9786,-9791,-9799,-9802,-9803,-9807,-9820,-9848,-9853,-9849,-9829,-9795,-9745,-9675,-9597,-9519,-9462,-9386,
+-9279,-9166,-9037,-8930,-8889,-8871,-8870,-8866,-8865,-8865,-8822,-8757,-8674,-8585,-8470,-8342,-8207,-8069,-7946,-7827,
+-7715,-7606,-7502,-7385,-7270,-7154,-7036,-6910,-6759,-6627,-6523,-6408,-6283,-6177,-6095,-6004,-5877,-5745,-5628,-5512,
+-5388,-5211,-5029,-4887,-4754,-4633,-4528,-4374,-4260,-4088,-3924,-3772,-3627,-3500,-3379,-3234,-3090,-2929,-2792,-2705,
+-2629,-2540,-2422,-2256,-2201,-2192,-2244,-2293,-2223,-2035,-1821,-1618,-1348,-1284,-1310,-1154,-827,-437,6,413,
+727,749,764,781,800,844,937,1053,1168,1276,1378,1469,1555,1639,1713,1792,1867,1937,2020,2086,
+2158,2247,2318,2379,2454,2545,2645,2740,2815,2899,2973,3074,3166,3252,3319,3379,3444,3526,3619,3714,
+3801,3872,3949,4031,4113,4190,4265,4341,4410,4470,4515,4550,4579,4677,4896,5030,5074,5154,5198,5243,
+5298,5353,5390,5389,5371,5284,5206,5474,5847,6103,6322,6460,6369,6131,6014,6125,6154,6219,6192,6206,
+6066,5868,5700,5649,5632,5608,5653,5695,5759,5829,5883,5941,6060,6079,6036,6045,6136,6056,6079,6059,
+5966,5806,5597,5450,5469,5582,5730,5786,5847,5859,5891,5890,5932,5980,5993,5996,6045,6195,6389,6532,
+6679,6878,6936,6931,6879,6845,6817,6835,6887,6918,6999,7012,6923,6829,6816,6838,6866,6989,7227,7370,
+7443,7421,7418,7355,7243,7197,7226,7348,7422,7361,7365,7452,7563,7649,7714,7725,7759,7807,7728,7650,
+7552,7530,7584,7700,7779,7830,7853,7865,7857,7851,7877,7903,7907,7899,7906,7900,7942,7980,7985,7971,
+7981,7968,7938,7875,7847,7825,7799,7776,7753,7723,7676,7677,7672,7664,7617,7545,7480,7323,7180,7131,
+7176,6963,6895,6880,6670,6408,6232,6104,6171,6253,6296,6293,6266,6265,6267,6262,6236,6194,6154,6113,
+6062,6010,5953,5888,5820,5757,5690,5634,5567,5507,5460,5406,5335,5246,5168,5139,5109,5075,5045,4993,
+4922,4835,4763,4770,4724,4642,4580,4581,4498,4424,4369,4362,4384,4276,4221,4173,4140,4181,4129,4066,
+4030,3999,3980,3963,3941,3922,3904,3872,3823,3795,3758,3710,3652,3582,3510,3438,3388,3349,3318,3293,
+3268,3249,3231,3185,3142,3137,3099,3005,2912,2838,2779,2742,2718,2699,2684,2662,2663,2656,2670,2707,
+2614,2498,2489,2486,2483,2472,2444,2411,2377,2355,2336,2314,2294,2273,2239,2181,2133,2085,2046,2031,
+2023,2016,2013,2001,1991,1967,1963,1930,1890,1869,1882,1941,1946,1803,1770,1773,1784,1795,1808,1807,
+1791,1784,1764,1765,1818,1966,1848,1739,1692,1643,1608,1589,1608,1677,1695,1655,1641,1638,1644,1641,
+1624,1618,1608,1623,1586,1567,1542,1562,1547,1551,1557,1544,1539,1532,1540,1527,1524,1521,1514,1524,
+1529,1518,1505,1492,1481,1477,1474,1473,1470,1472,1476,1468,1459,1458,1462,1467,1469,1482,1499,1505,
+1506,1505,1503,1490,1474,1458,1450,1457,1478,1482,1457,1455,1453,1450,1448,1438,1420,1415,1419,1421,
+1426,1430,1417,1407,1392,1371,1341,1312,1288,1275,1260,1237,1219,1199,1184,1163,1139,1118,1090,1065,
+1037,1008,985,961,941,920,893,864,829,803,783,760,733,703,670,638,605,575,546,520,
+492,465,439,409,383,361,337,312,282,249,209,172,133,124,71,39,-1,-28,-57,-87,
+-123,-167,-210,-243,-271,-291,-320,-354,-394,-426,-461,-492,-520,-555,-592,-625,-671,-695,-697,-701,
+-720,-748,-777,-804,-834,-862,-894,-919,-951,-982,-1019,-1046,-1065,-1082,-1108,-1133,-1170,-1187,-1216,-1250,
+-1289,-1316,-1343,-1371,-1403,-1429,-1457,-1482,-1510,-1533,-1559,-1583,-1611,-1633,-1654,-1669,-1677,-1682,-1698,-1715,
+-1733,-1752,-1769,-1786,-1799,-1810,-1822,-1837,-1851,-1867,-1880,-1893,-1907,-1924,-1939,-1949,-1958,-1965,-1965,-1965,
+-1970,-1969,-1973,-1973,-1974,-1978,-1972,-1966,-1960,-1958,-1961,-1957,-1947,-1937,-1925,-1911,-1895,-1881,-1872,-1860,
+-1853,-1846,-1834,-1818,-1804,-1791,-1780,-1772,-1762,-1752,-1744,-1734,-1722,-1713,-1707,-1697,-1686,-1677,-1661,-1648,
+-1642,-1635,-1630,-1622,-1613,-1605,-1599,-1591,-1587,-1577,-1569,-1564,-1560,-1550,-1541,-1532,-1528,-1522,-1519,-1511,
+-1504,-1496,-1489,-1487,-1477,-1471,-1465,-1455,-1446,-1441,-1429,-1424,-1418,-1411,-1406,-1398,-1386,-1380,-1375,-1368,
+-1362,-1350,-1336,-1334,-1321,-1316,-1307,-1297,-1285,-1275,-1267,-1257,-1249,-1234,-1219,-1205,-1197,-1176,-1152,-1138,
+-1116,-1102,-1081,-1060,-1035,-1004,-971,-941,-911,-875,-847,-824,-794,-764,-736,-706,-677,-650,-623,-593,
+-558,-525,-487,-449,-412,-364,-319,-272,-220,-167,-114,-62,-10,44,95,149,195,248,302,360,
+408,451,487,504,476,387,331,513,643,811,883,915,1006,1208,1652,2101,2151,2235,2237,1786,
+1545,1231,1079,1021,1071,1153,1240,1348,1450,1530,1574,1614,1691,1818,1909,1964,1980,1971,1976,1986,
+1992,1966,1933,1923,1914,1894,1854,1811,1773,1749,1722,1686,1645,1590,1518,1445,1359,1222,1089,993,
+911,845,785,742,718,688,650,593,523,441,346,234,126,29,-58,-142,-217,-280,-340,-417,
+-511,-603,-675,-740,-805,-866,-923,-969,-1017,-1066,-1115,-1163,-1225,-1298,-1375,-1454,-1504,-1555,-1589,-1601,
+-1593,-1549,-1511,-1517,-1557,-1611,-1663,-1715,-1747,-1765,-1773,-1810,-1852,-1900,-1949,-1995,-2029,-2076,-2109,-2116,
+-2149,-2226,-2285,-2305,-2300,-2273,-2246,-2235,-2236,-2261,-2296,-2327,-2369,-2408,-2435,-2470,-2516,-2575,-2626,-2654,
+-2640,-2612,-2609,-2602,-2589,-2578,-2551,-2565,-2639,-2726,-2798,-2815,-2774,-2689,-2584,-2510,-2389,-2335,-2317,-2312,
+-2309,-2280,-2237,-2168,-2078,-1966,-1871,-1755,-1624,-1531,-1473,-1405,-1358,-1301,-1224,-1178,-1233,-1296,-1300,-1266,
+-1246,-1211,-1219,-1234,-1197,-1158,-1125,-1083,-1041,-992,-956,-926,-903,-881,-860,-832,-801,-763,-717,-676,
+-642,-605,-580,-558,-530,-510,-486,-467,-451,-433,-411,-387,-352,-321,-299,-271,-242,-223,-199,-175,
+-145,-122,-92,-62,-32,0,38,70,100,136,162,183,206,197,210,256,276,286,314,341,
+383,413,445,476,506,534,577,614,655,691,738,797,850,896,926,959,987,1012,1047,1091,
+1147,1190,1230,1275,1324,1368,1413,1476,1511,1545,1575,1595,1629,1668,1721,1771,1804,1821,1837,1869,
+1911,1961,2002,1984,1990,1992,1956,1962,1964,1932,1955,1961,1951,1947,1942,1923,1919,1928,1917,1909,
+1904,1906,1890,1879,1876,1870,1862,1855,1849,1831,1827,1816,1820,1791,1784,1778,1774,1773,1777,1786,
+1788,1798,1805,1822,1813,1814,1818,1832,1838,1836,1841,1846,1840,1828,1824,1868,1984,1843,1797,1778,
+1737,1710,1686,1690,1622,1573,1538,1471,1452,1423,1400,1376,1346,1298,1262,1222,1181,1154,1116,1075,
+1036,1007,980,942,875,767,714,727,732,754,806,850,815,722,562,477,497,493,510,480,
+438,438,440,473,499,513,519,520,502,452,397,331,251,172,102,18,-107,-256,-363,-455,
+-564,-670,-769,-860,-940,-1025,-1098,-1164,-1229,-1302,-1370,-1420,-1471,-1521,-1537,-1524,-1504,-1516,-1576,-1675,
+-1789,-1865,-1909,-1948,-1976,-2000,-2010,-1996,-1985,-1992,-2004,-2013,-2019,-2015,-1982,-1925,-1871,-1816,-1760,-1700,
+-1640,-1592,-1544,-1475,-1410,-1273,-1139,-933,-699,-837,-949,-817,-821,-878,-973,-1096,-1187,-1254,-1336,-1440,
+-1552,-1611,-1641,-1701,-1756,-1793,-1824,-1821,-1817,-1820,-1823,-1806,-1775,-1761,-1770,-1760,-1656,-1872,-1897,-1802,
+-1738,-1662,-1456,-1554,-1814,-1975,-2080,-2219,-2353,-2472,-2581,-2710,-2840,-2961,-3059,-3088,-3048,-3139,-3324,-3502,
+-3639,-3749,-3857,-3923,-3955,-3975,-3984,-3998,-4025,-4065,-4116,-4178,-4251,-4321,-4382,-4431,-4470,-4482,-4496,-4509,
+-4524,-4521,-4502,-4514,-4567,-4591,-4580,-4579,-4601,-4565,-4556,-4550,-4552,-4536,-4526,-4515,-4494,-4483,-4483,-4498,
+-4514,-4548,-4570,-4586,-4618,-4649,-4629,-4605,-4586,-4601,-4624,-4660,-4705,-4686,-4728,-4798,-4880,-4946,-4976,-5033,
+-5081,-5122,-5167,-5211,-5261,-5298,-5368,-5414,-5467,-5530,-5585,-5622,-5708,-5821,-5888,-5946,-6037,-6115,-6180,-6249,
+-6318,-6370,-6443,-6511,-6558,-6623,-6699,-6743,-6777,-6853,-6896,-6976,-7033,-7073,-7138,-7183,-7212,-7286,-7344,-7415,
+-7461,-7487,-7488,-7570,-7652,-7669,-7741,-7796,-7905,-8005,-8106,-8184,-8277,-8351,-8443,-8500,-8583,-8651,-8701,-8771,
+-8835,-8880,-8913,-8955,-8961,-8983,-9010,-9023,-9042,-9129,-9333,-9440,-9468,-9478,-9497,-9541,-9575,-9588,-9616,-9645,
+-9678,-9710,-9724,-9729,-9733,-9727,-9717,-9706,-9707,-9741,-9773,-9780,-9776,-9759,-9732,-9689,-9636,-9567,-9506,-9443,
+-9365,-9262,-9136,-8988,-8857,-8786,-8811,-8863,-8876,-8876,-8859,-8808,-8724,-8650,-8563,-8438,-8308,-8171,-8036,-7931,
+-7813,-7690,-7601,-7506,-7389,-7270,-7149,-7020,-6878,-6746,-6611,-6493,-6394,-6287,-6193,-6126,-6019,-5901,-5767,-5649,
+-5529,-5403,-5222,-5033,-4892,-4769,-4647,-4536,-4370,-4250,-4082,-3949,-3805,-3663,-3555,-3447,-3297,-3119,-2952,-2828,
+-2748,-2652,-2534,-2376,-2191,-2153,-2138,-2196,-2266,-2261,-2130,-1907,-1674,-1437,-1218,-1216,-1177,-948,-593,-184,
+196,518,756,824,817,831,876,963,1068,1159,1263,1372,1472,1564,1636,1710,1795,1867,1940,2020,
+2082,2150,2231,2304,2359,2421,2510,2617,2703,2778,2850,2938,3031,3112,3164,3244,3327,3407,3504,3590,
+3688,3778,3859,3932,4010,4086,4154,4228,4299,4377,4436,4465,4496,4553,4726,4926,4979,5039,5120,5178,
+5217,5259,5306,5354,5362,5352,5332,5213,5412,5822,6067,6214,6268,6233,6075,5929,5971,6111,6234,6200,
+6163,6153,6051,5910,5809,5704,5675,5677,5696,5768,5851,5908,5931,5943,5967,5987,6063,6120,6150,6197,
+6179,6001,5782,5658,5684,5789,5924,6036,6027,5999,6030,6042,5964,5943,5958,5922,5852,5841,5859,5971,
+6193,6391,6590,6842,6859,6829,6827,6828,6859,6921,6981,6946,6985,6939,6856,6838,6899,6940,7227,7512,
+7556,7595,7674,7720,7650,7493,7393,7365,7399,7445,7420,7426,7541,7581,7649,7686,7673,7692,7745,7797,
+7851,7836,7772,7736,7698,7746,7778,7808,7859,7859,7846,7853,7871,7888,7889,7895,7895,7912,7966,7991,
+7979,7982,8002,7994,8005,7977,7907,7878,7852,7835,7809,7774,7735,7703,7669,7634,7621,7547,7489,7458,
+7289,7170,6992,6981,6939,6665,6507,6347,6193,6121,6271,6369,6370,6331,6328,6332,6312,6276,6231,6189,
+6147,6100,6052,5993,5931,5862,5804,5742,5685,5619,5561,5516,5460,5399,5310,5233,5198,5175,5143,5099,
+5046,4988,4928,4874,4830,4781,4744,4669,4598,4503,4449,4424,4417,4355,4296,4272,4268,4196,4236,4146,
+4086,4043,4020,4027,3996,3958,3932,3916,3892,3854,3821,3792,3744,3683,3613,3538,3469,3418,3381,3348,
+3313,3280,3256,3236,3198,3171,3163,3135,3061,2970,2879,2812,2774,2742,2712,2677,2643,2612,2595,2587,
+2632,2628,2530,2524,2516,2515,2516,2504,2471,2430,2401,2377,2352,2326,2295,2261,2209,2159,2105,2062,
+2038,2028,2018,2010,2008,1996,1982,1977,1955,1921,1894,1869,1865,1853,1810,1794,1804,1819,1822,1821,
+1816,1801,1791,1779,1778,1797,1873,1905,1885,1808,1680,1622,1631,1665,1676,1661,1642,1634,1645,1651,
+1648,1642,1639,1620,1613,1595,1590,1565,1561,1599,1569,1576,1576,1573,1565,1558,1547,1534,1527,1522,
+1530,1531,1524,1512,1503,1500,1494,1487,1479,1471,1463,1456,1446,1441,1445,1448,1453,1457,1465,1476,
+1481,1482,1484,1484,1476,1472,1462,1457,1455,1449,1459,1440,1437,1434,1426,1420,1405,1385,1373,1374,
+1383,1392,1400,1403,1399,1385,1365,1339,1307,1289,1274,1259,1237,1217,1195,1177,1155,1133,1113,1089,
+1064,1039,1006,973,946,919,898,872,842,811,787,763,740,718,691,660,627,591,558,524,
+499,475,446,421,392,365,343,320,293,264,234,201,168,135,101,69,45,17,-16,-54,
+-85,-114,-148,-188,-219,-253,-282,-317,-351,-391,-428,-461,-496,-523,-551,-591,-625,-668,-706,-720,
+-726,-741,-759,-787,-814,-836,-861,-898,-921,-942,-971,-1000,-1031,-1064,-1090,-1103,-1125,-1150,-1167,-1182,
+-1215,-1256,-1292,-1323,-1352,-1380,-1408,-1439,-1466,-1493,-1515,-1534,-1552,-1577,-1601,-1629,-1646,-1664,-1672,-1681,
+-1690,-1702,-1717,-1732,-1747,-1759,-1765,-1777,-1792,-1806,-1824,-1838,-1851,-1863,-1878,-1891,-1906,-1922,-1925,-1930,
+-1937,-1938,-1934,-1933,-1932,-1938,-1943,-1934,-1930,-1927,-1927,-1925,-1921,-1913,-1902,-1895,-1882,-1868,-1855,-1842,
+-1829,-1819,-1810,-1802,-1788,-1777,-1767,-1754,-1743,-1727,-1716,-1709,-1702,-1691,-1683,-1679,-1670,-1664,-1652,-1638,
+-1627,-1622,-1614,-1604,-1596,-1580,-1572,-1571,-1558,-1555,-1553,-1543,-1541,-1538,-1531,-1528,-1520,-1517,-1508,-1507,
+-1497,-1488,-1485,-1477,-1478,-1470,-1460,-1456,-1448,-1442,-1433,-1429,-1421,-1417,-1411,-1405,-1397,-1389,-1386,-1377,
+-1369,-1362,-1350,-1346,-1339,-1333,-1327,-1326,-1313,-1305,-1291,-1287,-1278,-1265,-1252,-1235,-1225,-1210,-1194,-1170,
+-1153,-1138,-1120,-1100,-1082,-1060,-1034,-1005,-975,-939,-904,-882,-848,-818,-791,-766,-740,-710,-683,-650,
+-618,-581,-549,-511,-463,-420,-380,-343,-293,-240,-191,-140,-89,-37,13,62,113,164,217,271,
+326,374,415,442,429,346,235,256,384,418,531,669,764,959,1262,1723,2044,2040,2092,1872,
+1596,1328,1062,913,890,963,1073,1175,1263,1366,1462,1516,1565,1650,1761,1867,1937,1974,1987,1995,
+1992,1984,1963,1949,1958,1970,1963,1932,1885,1830,1781,1748,1712,1675,1619,1554,1471,1368,1234,1100,
+1009,933,861,805,761,737,714,669,611,538,465,374,272,164,60,-42,-141,-221,-294,-358,
+-430,-513,-598,-674,-736,-784,-825,-871,-924,-959,-1020,-1087,-1139,-1199,-1267,-1335,-1411,-1470,-1520,-1554,
+-1559,-1516,-1444,-1427,-1473,-1535,-1614,-1708,-1780,-1816,-1796,-1751,-1757,-1785,-1829,-1875,-1917,-1993,-2076,-2117,
+-2166,-2252,-2344,-2395,-2402,-2359,-2307,-2263,-2252,-2259,-2274,-2306,-2343,-2377,-2411,-2434,-2446,-2448,-2498,-2562,
+-2599,-2615,-2624,-2626,-2636,-2651,-2664,-2643,-2636,-2683,-2738,-2783,-2790,-2752,-2688,-2585,-2496,-2394,-2319,-2265,
+-2229,-2215,-2199,-2169,-2096,-2014,-1939,-1841,-1731,-1614,-1486,-1438,-1368,-1307,-1232,-1158,-1085,-1070,-1101,-1157,
+-1181,-1158,-1025,-1062,-1133,-1128,-1094,-1049,-1027,-1008,-970,-936,-908,-883,-865,-848,-826,-795,-752,-707,
+-668,-637,-604,-581,-560,-538,-520,-499,-482,-465,-444,-427,-399,-367,-332,-304,-284,-265,-253,-238,
+-216,-176,-149,-120,-94,-62,-25,2,32,56,88,109,126,151,159,188,223,237,285,316,
+352,375,407,429,468,493,508,565,612,655,687,727,760,797,829,862,915,953,994,1036,
+1085,1136,1187,1244,1289,1334,1380,1413,1453,1499,1544,1575,1615,1658,1679,1719,1750,1751,1778,1829,
+1849,1901,1940,1982,1971,1953,1977,1983,1966,1958,1948,1941,1928,1926,1914,1916,1926,1943,1928,1922,
+1916,1902,1892,1884,1883,1876,1868,1859,1851,1845,1830,1823,1812,1802,1784,1785,1776,1781,1777,1767,
+1772,1772,1775,1788,1790,1792,1809,1826,1840,1845,1835,1838,1840,1828,1834,1806,1821,1842,1799,1771,
+1831,1750,1699,1671,1604,1547,1514,1463,1431,1402,1366,1338,1310,1277,1241,1201,1161,1125,1095,1066,
+1028,990,961,935,897,843,744,673,664,647,647,674,744,778,749,667,547,542,550,501,
+439,397,366,344,352,404,447,478,490,478,426,366,293,230,185,128,17,-114,-251,-370,
+-436,-540,-660,-762,-840,-916,-1001,-1076,-1123,-1178,-1250,-1320,-1368,-1409,-1452,-1465,-1463,-1456,-1463,-1503,
+-1594,-1708,-1792,-1858,-1908,-1934,-1954,-1965,-1953,-1946,-1957,-1970,-1979,-1983,-1976,-1942,-1892,-1846,-1803,-1751,
+-1689,-1626,-1593,-1563,-1483,-1402,-1310,-1142,-903,-765,-796,-1054,-908,-857,-928,-1022,-1123,-1217,-1303,-1372,
+-1451,-1537,-1620,-1670,-1727,-1774,-1814,-1858,-1874,-1870,-1878,-1880,-1847,-1817,-1802,-1807,-1759,-1773,-1898,-1891,
+-1807,-1735,-1760,-1725,-1709,-1888,-1963,-2040,-2153,-2297,-2429,-2556,-2699,-2838,-2976,-3085,-3153,-3142,-3182,-3324,
+-3488,-3622,-3737,-3840,-3907,-3939,-3962,-3977,-4004,-4041,-4088,-4131,-4190,-4256,-4322,-4378,-4420,-4457,-4472,-4478,
+-4486,-4491,-4487,-4477,-4487,-4550,-4565,-4556,-4562,-4527,-4525,-4526,-4519,-4515,-4503,-4496,-4477,-4460,-4441,-4453,
+-4454,-4473,-4503,-4524,-4529,-4552,-4598,-4584,-4564,-4546,-4544,-4584,-4628,-4605,-4614,-4681,-4747,-4811,-4862,-4904,
+-4963,-5017,-5069,-5117,-5152,-5193,-5239,-5301,-5366,-5415,-5472,-5536,-5568,-5591,-5700,-5797,-5886,-5970,-6048,-6124,
+-6187,-6255,-6310,-6376,-6433,-6491,-6585,-6624,-6683,-6745,-6812,-6900,-6961,-7016,-7065,-7094,-7131,-7180,-7233,-7263,
+-7325,-7364,-7422,-7468,-7537,-7557,-7662,-7666,-7732,-7817,-7940,-8008,-8124,-8215,-8295,-8355,-8444,-8521,-8611,-8679,
+-8720,-8771,-8801,-8836,-8871,-8914,-8927,-8965,-8987,-9016,-9119,-9328,-9392,-9403,-9413,-9438,-9489,-9514,-9534,-9558,
+-9582,-9596,-9630,-9646,-9655,-9656,-9645,-9637,-9638,-9653,-9690,-9708,-9708,-9700,-9682,-9657,-9630,-9600,-9550,-9490,
+-9420,-9338,-9240,-9115,-8958,-8818,-8789,-8803,-8871,-8876,-8868,-8826,-8762,-8674,-8614,-8525,-8387,-8261,-8129,-8027,
+-7931,-7802,-7692,-7606,-7514,-7401,-7283,-7161,-7025,-6858,-6715,-6591,-6479,-6391,-6312,-6212,-6143,-6024,-5926,-5793,
+-5674,-5555,-5419,-5240,-5051,-4912,-4788,-4649,-4540,-4384,-4248,-4081,-3971,-3845,-3737,-3638,-3519,-3367,-3158,-2982,
+-2876,-2791,-2667,-2547,-2372,-2209,-2145,-2115,-2135,-2187,-2209,-2161,-2020,-1786,-1549,-1295,-1137,-1132,-1021,-723,
+-342,27,349,663,832,835,836,888,969,1079,1156,1238,1345,1449,1548,1629,1703,1781,1861,1938,
+2009,2086,2162,2227,2287,2343,2405,2493,2586,2674,2746,2808,2892,2980,3049,3111,3193,3284,3375,3464,
+3551,3651,3744,3818,3906,3973,4041,4115,4197,4265,4342,4400,4436,4470,4576,4736,4882,4941,5012,5081,
+5128,5181,5221,5250,5284,5309,5298,5281,5160,5287,5661,5868,6093,6100,6190,6062,5861,5823,6092,6340,
+6253,6182,6156,6065,6016,5966,5897,5765,5674,5662,5712,5806,5879,5906,5897,5900,5916,6053,6315,6502,
+6418,6278,6126,5919,5871,6011,6082,6089,6135,6069,6011,6126,6157,6083,6054,6062,5986,5805,5708,5681,
+5708,5791,5937,6179,6497,6729,6775,6791,6842,6927,7017,7008,6987,7034,7035,6995,6990,7106,7187,7499,
+7759,7782,7811,7951,8041,8011,7818,7670,7589,7570,7574,7558,7520,7571,7591,7566,7579,7609,7687,7741,
+7759,7839,7836,7839,7837,7834,7828,7859,7837,7752,7826,7839,7811,7820,7840,7854,7872,7890,7898,7923,
+7947,7959,7979,8003,8016,8028,8027,7997,7982,7940,7903,7880,7848,7817,7786,7746,7703,7668,7637,7571,
+7509,7502,7363,7051,6917,6776,6624,6614,6428,6258,6168,6301,6479,6469,6386,6377,6374,6352,6316,6272,
+6234,6193,6149,6097,6040,5977,5914,5857,5800,5741,5678,5620,5564,5501,5438,5373,5320,5265,5237,5209,
+5149,5098,5049,5027,4991,4891,4821,4840,4708,4574,4521,4515,4544,4474,4393,4381,4362,4302,4275,4243,
+4177,4134,4114,4087,4081,4037,3986,3956,3938,3916,3887,3857,3820,3773,3708,3638,3560,3490,3445,3411,
+3384,3342,3300,3268,3243,3215,3191,3169,3145,3092,3008,2919,2856,2814,2779,2754,2724,2671,2632,2604,
+2577,2591,2580,2553,2571,2571,2550,2545,2546,2521,2484,2441,2396,2357,2328,2291,2259,2216,2160,2109,
+2071,2055,2042,2030,2027,2021,2012,1996,1979,1950,1917,1883,1857,1839,1838,1898,1853,1848,1860,1842,
+1839,1835,1819,1807,1794,1760,1738,1754,1771,1823,1835,1699,1647,1640,1643,1639,1634,1678,1650,1664,
+1660,1675,1656,1635,1628,1613,1646,1605,1624,1622,1631,1676,1622,1593,1601,1614,1600,1577,1554,1538,
+1525,1530,1533,1532,1525,1520,1514,1502,1490,1475,1459,1442,1433,1430,1435,1435,1434,1438,1443,1445,
+1449,1456,1461,1462,1462,1466,1474,1470,1451,1437,1428,1474,1433,1408,1402,1396,1391,1383,1372,1349,
+1333,1339,1353,1369,1372,1370,1356,1340,1321,1296,1281,1268,1249,1236,1221,1200,1177,1155,1131,1109,
+1084,1058,1033,999,967,939,913,891,862,831,799,771,751,730,711,685,652,621,581,543,
+506,479,455,428,407,408,355,327,311,291,262,230,197,163,133,100,66,45,23,-15,
+-47,-78,-112,-149,-186,-222,-256,-288,-316,-346,-381,-420,-455,-489,-517,-541,-573,-613,-657,-692,
+-722,-735,-759,-773,-790,-822,-851,-870,-897,-923,-946,-972,-996,-1022,-1051,-1076,-1095,-1115,-1136,-1149,
+-1165,-1193,-1232,-1270,-1300,-1323,-1350,-1379,-1407,-1432,-1460,-1486,-1508,-1524,-1543,-1566,-1589,-1614,-1632,-1646,
+-1652,-1654,-1666,-1681,-1697,-1712,-1725,-1735,-1746,-1762,-1776,-1789,-1800,-1814,-1823,-1838,-1849,-1864,-1875,-1880,
+-1885,-1889,-1899,-1899,-1902,-1903,-1905,-1902,-1893,-1887,-1888,-1887,-1883,-1875,-1869,-1862,-1861,-1848,-1835,-1823,
+-1812,-1801,-1792,-1780,-1766,-1758,-1746,-1736,-1733,-1721,-1707,-1691,-1679,-1671,-1661,-1655,-1645,-1641,-1632,-1624,
+-1612,-1604,-1598,-1589,-1587,-1585,-1574,-1569,-1550,-1547,-1539,-1528,-1520,-1513,-1505,-1508,-1505,-1500,-1487,-1482,
+-1482,-1478,-1475,-1472,-1465,-1466,-1458,-1449,-1446,-1440,-1436,-1427,-1424,-1416,-1413,-1409,-1406,-1398,-1392,-1389,
+-1387,-1381,-1375,-1371,-1361,-1353,-1346,-1339,-1333,-1328,-1316,-1310,-1302,-1296,-1282,-1267,-1254,-1237,-1226,-1213,
+-1187,-1173,-1159,-1142,-1121,-1104,-1084,-1059,-1030,-1006,-971,-941,-914,-883,-849,-829,-801,-772,-746,-721,
+-687,-647,-614,-570,-528,-490,-443,-396,-355,-314,-263,-213,-168,-120,-72,-21,28,80,133,187,
+242,298,347,377,368,304,205,126,216,302,301,383,556,788,1000,1303,1684,1814,1973,1895,
+1689,1577,1312,1013,832,780,856,985,1099,1187,1272,1362,1437,1501,1592,1708,1819,1897,1956,2007,
+2030,2018,1994,1970,1963,1985,2017,2031,2005,1960,1897,1831,1787,1748,1707,1647,1582,1511,1407,1277,
+1159,1068,972,899,836,790,760,732,688,633,573,506,423,326,222,100,-13,-121,-217,-305,
+-380,-449,-526,-607,-675,-731,-755,-767,-801,-854,-904,-979,-1049,-1110,-1155,-1215,-1293,-1364,-1415,-1461,
+-1487,-1472,-1411,-1349,-1355,-1419,-1515,-1625,-1740,-1828,-1879,-1859,-1786,-1759,-1773,-1819,-1849,-1897,-2009,-2110,
+-2177,-2240,-2352,-2445,-2490,-2482,-2417,-2344,-2308,-2297,-2300,-2312,-2335,-2362,-2388,-2422,-2447,-2446,-2437,-2441,
+-2509,-2555,-2577,-2590,-2607,-2639,-2684,-2719,-2708,-2712,-2737,-2777,-2814,-2812,-2764,-2724,-2659,-2548,-2436,-2329,
+-2234,-2164,-2130,-2129,-2095,-2046,-1984,-1914,-1798,-1675,-1581,-1510,-1449,-1371,-1317,-1237,-1132,-1053,-1001,-979,
+-980,-993,-1069,-963,-801,-1001,-1052,-996,-944,-925,-953,-937,-910,-870,-825,-846,-849,-827,-784,-739,
+-692,-660,-640,-616,-593,-572,-565,-553,-535,-518,-493,-470,-437,-398,-366,-336,-308,-292,-282,-276,
+-268,-247,-215,-182,-152,-121,-91,-64,-39,-13,12,33,65,84,101,130,162,192,237,266,
+294,349,367,396,430,453,488,520,560,607,651,679,717,756,792,832,863,916,961,1006,
+1051,1096,1144,1196,1231,1273,1319,1360,1404,1442,1485,1530,1556,1572,1601,1642,1680,1723,1767,1785,
+1774,1810,1852,1892,1932,1921,1998,1986,1958,1943,1933,1911,1905,1921,1928,1939,1923,1923,1900,1911,
+1899,1885,1874,1884,1889,1874,1877,1860,1848,1837,1827,1815,1809,1795,1789,1778,1786,1796,1787,1777,
+1779,1787,1781,1794,1802,1810,1815,1831,1846,1855,1858,1858,1865,1860,1834,1901,1811,1796,1817,1782,
+1754,1745,1672,1625,1572,1521,1469,1443,1451,1445,1360,1317,1274,1242,1209,1179,1138,1100,1073,1044,
+1017,982,951,920,890,857,824,757,665,618,575,556,574,626,700,746,731,657,582,541,
+498,436,352,337,289,276,328,402,456,465,442,400,332,254,207,183,138,39,-102,-221,
+-314,-391,-498,-617,-725,-794,-869,-945,-1010,-1041,-1091,-1157,-1234,-1292,-1334,-1379,-1396,-1398,-1422,-1441,
+-1464,-1528,-1629,-1707,-1782,-1841,-1864,-1887,-1903,-1914,-1918,-1923,-1937,-1941,-1947,-1933,-1902,-1863,-1825,-1796,
+-1744,-1677,-1601,-1599,-1573,-1510,-1443,-1327,-1124,-1003,-881,-872,-1108,-891,-872,-965,-1086,-1207,-1270,-1337,
+-1414,-1460,-1528,-1616,-1686,-1740,-1798,-1856,-1907,-1941,-1946,-1954,-1955,-1934,-1903,-1904,-1946,-1877,-1904,-1921,
+-1873,-1838,-1836,-1860,-1928,-1970,-1988,-1997,-2030,-2126,-2262,-2399,-2551,-2702,-2857,-3019,-3133,-3210,-3195,-3202,
+-3318,-3470,-3607,-3725,-3822,-3896,-3933,-3957,-3975,-4009,-4054,-4104,-4155,-4212,-4264,-4319,-4373,-4405,-4434,-4446,
+-4448,-4450,-4453,-4451,-4460,-4498,-4543,-4530,-4517,-4531,-4511,-4504,-4502,-4498,-4487,-4477,-4463,-4442,-4427,-4426,
+-4417,-4421,-4448,-4475,-4481,-4488,-4496,-4515,-4485,-4528,-4500,-4496,-4557,-4527,-4482,-4520,-4573,-4636,-4689,-4741,
+-4808,-4882,-4945,-5001,-5047,-5084,-5135,-5198,-5264,-5312,-5359,-5419,-5503,-5517,-5572,-5692,-5767,-5825,-5900,-5980,
+-6064,-6118,-6183,-6257,-6318,-6366,-6445,-6541,-6576,-6644,-6719,-6791,-6837,-6879,-6936,-6975,-7018,-7053,-7109,-7147,
+-7206,-7254,-7339,-7372,-7395,-7477,-7548,-7560,-7636,-7724,-7795,-7845,-7944,-8068,-8128,-8208,-8315,-8377,-8483,-8546,
+-8627,-8667,-8684,-8723,-8756,-8788,-8836,-8854,-8874,-8905,-8981,-9118,-9275,-9311,-9321,-9348,-9387,-9419,-9449,-9474,
+-9495,-9509,-9523,-9543,-9563,-9571,-9579,-9584,-9588,-9605,-9628,-9652,-9666,-9655,-9629,-9604,-9582,-9568,-9551,-9505,
+-9452,-9381,-9299,-9199,-9082,-8938,-8825,-8817,-8847,-8868,-8855,-8821,-8765,-8689,-8600,-8547,-8460,-8329,-8211,-8083,
+-7992,-7883,-7758,-7669,-7595,-7501,-7398,-7286,-7152,-7017,-6849,-6668,-6562,-6445,-6372,-6279,-6208,-6134,-6024,-5944,
+-5816,-5704,-5581,-5440,-5268,-5091,-4951,-4818,-4653,-4547,-4448,-4296,-4129,-4014,-3906,-3810,-3714,-3574,-3425,-3237,
+-3060,-2947,-2820,-2654,-2565,-2399,-2226,-2154,-2115,-2072,-2100,-2103,-2094,-2059,-1905,-1667,-1436,-1185,-1045,-1019,
+-833,-511,-165,178,468,714,839,860,889,950,1024,1118,1232,1343,1448,1542,1615,1688,1757,1833,
+1912,1996,2071,2151,2220,2283,2334,2403,2487,2576,2660,2735,2807,2873,2942,3000,3076,3171,3251,3332,
+3421,3510,3593,3678,3758,3857,3919,3987,4058,4153,4228,4295,4356,4411,4483,4620,4740,4823,4882,4958,
+5032,5091,5136,5167,5193,5214,5203,5142,5047,5008,5107,5408,5612,5813,5881,6097,6024,5736,5710,6127,
+6319,6251,6190,6088,6017,5984,5948,5989,5846,5669,5612,5621,5721,5805,5866,5889,5905,5902,5972,6169,
+6398,6356,6273,6246,6065,5859,5993,6113,6139,6142,6016,5831,5826,5852,5824,5935,6055,5994,5833,5667,
+5569,5533,5563,5643,5851,6238,6578,6725,6764,6806,6930,6980,7033,7037,7076,7188,7211,7290,7451,7558,
+7851,8023,8059,8071,8151,8273,8298,8114,7945,7911,7868,7812,7697,7641,7636,7649,7617,7578,7580,7636,
+7682,7682,7729,7796,7812,7810,7877,7889,7892,7832,7756,7727,7746,7764,7766,7758,7774,7803,7829,7856,
+7876,7901,7933,7963,7986,8023,8047,8067,8060,8024,8002,7977,7953,7920,7887,7862,7820,7773,7712,7658,
+7597,7533,7454,7370,7181,6920,6682,6571,6614,6428,6301,6239,6253,6417,6466,6409,6407,6408,6391,6360,
+6327,6290,6251,6207,6155,6096,6034,5972,5916,5858,5801,5742,5687,5632,5567,5494,5437,5382,5343,5303,
+5260,5205,5148,5105,5107,5063,4952,4860,4804,4701,4613,4588,4633,4598,4502,4441,4441,4393,4353,4291,
+4251,4225,4202,4174,4144,4114,4066,4023,3990,3961,3934,3907,3882,3844,3798,3732,3660,3576,3510,3467,
+3433,3399,3359,3327,3298,3260,3232,3208,3183,3151,3106,3037,2973,2919,2867,2828,2809,2785,2734,2692,
+2647,2613,2604,2599,2596,2618,2606,2580,2557,2553,2537,2503,2456,2404,2365,2321,2279,2258,2236,2187,
+2130,2095,2077,2060,2048,2036,2021,2001,1982,1966,1944,1909,1873,1843,1823,1838,1942,1903,1944,1947,
+1859,1847,1840,1811,1776,1761,1752,1725,1763,1855,1764,1766,1768,1687,1638,1622,1615,1636,1656,1618,
+1670,1664,1675,1638,1627,1622,1620,1620,1624,1644,1663,1660,1677,1705,1647,1612,1626,1639,1622,1588,
+1560,1546,1546,1544,1547,1545,1541,1530,1515,1501,1478,1455,1433,1431,1437,1474,1444,1427,1424,1426,
+1429,1430,1435,1439,1442,1451,1462,1491,1492,1440,1424,1420,1456,1428,1386,1374,1363,1361,1352,1341,
+1335,1324,1306,1318,1334,1345,1341,1329,1315,1296,1277,1265,1256,1245,1229,1215,1198,1179,1157,1133,
+1109,1084,1051,1021,990,953,929,902,879,851,818,790,762,745,729,707,681,647,616,574,
+534,499,472,447,421,395,374,350,324,303,279,248,214,175,149,126,102,73,47,17,
+-16,-50,-88,-123,-157,-192,-227,-259,-291,-318,-343,-378,-414,-450,-481,-507,-528,-554,-591,-631,
+-669,-698,-725,-763,-775,-798,-830,-853,-877,-895,-912,-930,-953,-982,-1010,-1037,-1059,-1078,-1101,-1122,
+-1139,-1149,-1176,-1209,-1246,-1271,-1296,-1317,-1343,-1367,-1396,-1426,-1451,-1473,-1492,-1510,-1531,-1553,-1572,-1589,
+-1601,-1611,-1620,-1636,-1654,-1671,-1685,-1699,-1712,-1723,-1738,-1748,-1761,-1767,-1779,-1791,-1809,-1821,-1830,-1836,
+-1845,-1845,-1844,-1851,-1855,-1862,-1870,-1864,-1862,-1860,-1852,-1849,-1847,-1843,-1831,-1824,-1817,-1820,-1811,-1797,
+-1785,-1778,-1766,-1756,-1746,-1732,-1719,-1715,-1705,-1702,-1691,-1678,-1667,-1655,-1645,-1635,-1627,-1620,-1608,-1596,
+-1591,-1584,-1582,-1578,-1572,-1554,-1548,-1540,-1536,-1529,-1522,-1513,-1510,-1507,-1502,-1500,-1499,-1491,-1477,-1468,
+-1455,-1449,-1450,-1457,-1457,-1455,-1453,-1449,-1444,-1438,-1430,-1428,-1426,-1421,-1418,-1412,-1408,-1403,-1400,-1395,
+-1392,-1390,-1386,-1377,-1376,-1371,-1366,-1361,-1354,-1349,-1341,-1333,-1324,-1313,-1308,-1293,-1285,-1271,-1258,-1240,
+-1231,-1207,-1191,-1180,-1161,-1140,-1121,-1102,-1082,-1057,-1038,-1003,-968,-936,-908,-880,-851,-828,-804,-777,
+-752,-719,-679,-642,-604,-559,-512,-470,-421,-372,-329,-281,-242,-195,-148,-99,-49,5,56,111,
+174,231,276,302,291,250,198,124,58,207,376,371,491,679,900,1120,1393,1691,1762,1867,
+1776,1600,1546,1290,1006,851,798,847,965,1060,1120,1186,1244,1316,1408,1524,1646,1762,1856,1939,
+2012,2052,2051,2017,1986,1982,2011,2036,2047,2035,2002,1947,1888,1831,1784,1737,1673,1613,1541,1448,
+1342,1232,1135,1043,961,882,825,788,759,718,673,616,549,467,374,264,145,26,-94,-205,
+-309,-401,-483,-559,-632,-684,-719,-720,-709,-731,-784,-846,-912,-979,-1043,-1097,-1144,-1209,-1271,-1319,
+-1358,-1369,-1347,-1304,-1273,-1310,-1405,-1541,-1671,-1787,-1867,-1911,-1914,-1879,-1859,-1862,-1900,-1938,-1994,-2068,
+-2139,-2215,-2278,-2371,-2449,-2492,-2484,-2429,-2372,-2336,-2328,-2322,-2334,-2347,-2361,-2390,-2431,-2472,-2469,-2458,
+-2441,-2487,-2524,-2537,-2548,-2580,-2626,-2687,-2721,-2743,-2764,-2793,-2821,-2844,-2829,-2793,-2768,-2705,-2575,-2445,
+-2340,-2223,-2140,-2123,-2125,-2085,-2032,-1965,-1880,-1752,-1594,-1559,-1521,-1427,-1410,-1346,-1248,-1144,-1075,-999,
+-944,-909,-887,-927,-956,-814,-897,-996,-953,-932,-918,-899,-878,-844,-786,-698,-807,-839,-823,-764,
+-696,-664,-626,-641,-630,-596,-583,-587,-580,-570,-547,-510,-472,-437,-402,-365,-337,-312,-302,-298,
+-296,-292,-276,-249,-214,-181,-151,-116,-98,-77,-50,-24,-1,25,45,66,101,137,169,209,
+237,278,302,330,368,411,461,501,546,568,596,638,675,707,729,785,831,867,921,971,
+1011,1060,1102,1145,1192,1236,1276,1317,1343,1377,1411,1455,1498,1533,1586,1631,1671,1680,1709,1732,
+1756,1784,1844,1879,1913,1957,1943,1967,1969,1959,1926,1908,1925,1928,1900,1909,1918,1909,1913,1892,
+1902,1905,1899,1890,1874,1862,1851,1851,1846,1826,1817,1807,1808,1817,1806,1804,1802,1800,1807,1799,
+1797,1793,1781,1782,1795,1803,1817,1830,1845,1863,1859,1872,1881,1891,1894,1901,1818,1796,1787,1743,
+1722,1692,1654,1601,1557,1538,1498,1454,1411,1390,1431,1302,1244,1210,1177,1147,1120,1086,1054,1025,
+1000,969,939,914,890,861,836,810,770,696,602,526,490,489,513,574,648,674,635,562,
+499,458,409,347,305,275,278,313,351,413,424,394,345,284,234,193,181,145,38,-80,
+-191,-249,-318,-415,-539,-646,-721,-794,-868,-909,-947,-998,-1075,-1142,-1198,-1254,-1297,-1332,-1358,-1393,
+-1427,-1455,-1508,-1559,-1613,-1676,-1726,-1766,-1803,-1834,-1858,-1872,-1883,-1901,-1911,-1916,-1899,-1877,-1852,-1834,
+-1802,-1749,-1686,-1645,-1615,-1580,-1534,-1466,-1325,-1174,-1054,-961,-1025,-1177,-971,-907,-1003,-1175,-1279,-1321,
+-1396,-1450,-1489,-1540,-1602,-1665,-1739,-1800,-1871,-1927,-1967,-1976,-1994,-2019,-2031,-2035,-1989,-1925,-1834,-1931,
+-1938,-1851,-1792,-1835,-1878,-1939,-2016,-2035,-2059,-2094,-2164,-2266,-2410,-2577,-2733,-2912,-3111,-3209,-3224,-3235,
+-3234,-3300,-3448,-3593,-3699,-3800,-3877,-3924,-3956,-3982,-4010,-4057,-4114,-4167,-4221,-4263,-4308,-4356,-4379,-4400,
+-4403,-4404,-4413,-4421,-4432,-4440,-4441,-4473,-4475,-4399,-4434,-4430,-4450,-4448,-4454,-4459,-4445,-4432,-4416,-4411,
+-4397,-4392,-4405,-4431,-4447,-4437,-4461,-4450,-4457,-4424,-4461,-4440,-4459,-4460,-4351,-4311,-4246,-4276,-4322,-4390,
+-4510,-4684,-4796,-4882,-4943,-4981,-5022,-5075,-5143,-5215,-5267,-5309,-5376,-5470,-5481,-5567,-5620,-5700,-5760,-5818,
+-5917,-6006,-6064,-6116,-6192,-6245,-6317,-6416,-6487,-6519,-6561,-6644,-6707,-6763,-6805,-6859,-6912,-6961,-7010,-7045,
+-7093,-7144,-7219,-7283,-7311,-7386,-7467,-7481,-7498,-7539,-7620,-7720,-7792,-7909,-7975,-8070,-8163,-8232,-8319,-8408,
+-8490,-8519,-8571,-8648,-8691,-8702,-8708,-8740,-8761,-8802,-8841,-8874,-9102,-9225,-9233,-9251,-9284,-9316,-9333,-9366,
+-9396,-9419,-9424,-9445,-9467,-9490,-9505,-9516,-9522,-9528,-9545,-9570,-9582,-9592,-9568,-9521,-9489,-9481,-9494,-9490,
+-9456,-9406,-9332,-9245,-9145,-9042,-8914,-8817,-8789,-8828,-8821,-8791,-8753,-8690,-8613,-8532,-8491,-8412,-8287,-8182,
+-8054,-7946,-7819,-7702,-7630,-7548,-7462,-7372,-7262,-7135,-6973,-6811,-6641,-6520,-6422,-6332,-6251,-6194,-6138,-6050,
+-5969,-5850,-5738,-5610,-5469,-5311,-5157,-5013,-4867,-4693,-4593,-4457,-4342,-4194,-4077,-3960,-3862,-3757,-3601,-3452,
+-3279,-3118,-3013,-2847,-2706,-2602,-2421,-2233,-2164,-2118,-2045,-2018,-1984,-1973,-1994,-1955,-1776,-1547,-1317,-1060,
+-966,-879,-655,-358,-14,271,553,751,875,918,970,1032,1103,1206,1315,1436,1529,1601,1677,1752,
+1820,1901,1980,2051,2128,2203,2273,2326,2393,2483,2573,2652,2721,2778,2842,2902,2977,3053,3133,3209,
+3295,3378,3452,3536,3627,3716,3792,3872,3943,4012,4110,4193,4267,4305,4369,4498,4641,4678,4739,4815,
+4903,4964,5032,5074,5112,5130,5122,5026,4951,4895,4894,4985,5164,5390,5623,5719,5737,5779,5660,5642,
+5886,6114,6197,6083,5996,5982,5953,5913,5923,5877,5659,5587,5618,5696,5761,5854,5902,5903,5886,5915,
+5946,6102,6263,6305,6195,6058,5924,5918,6130,6063,5970,5971,5887,5761,5731,5744,5795,5916,5907,5822,
+5648,5546,5480,5438,5508,5695,6030,6502,6770,6739,6752,6812,6891,6938,6978,7023,7148,7424,7611,7814,
+7813,7865,8073,8218,8318,8376,8394,8371,8265,8176,8093,7999,8030,7965,7859,7817,7802,7728,7735,7762,
+7716,7669,7699,7695,7686,7694,7696,7701,7712,7736,7751,7741,7663,7640,7651,7641,7650,7682,7722,7762,
+7798,7834,7859,7903,7944,7978,8019,8042,8058,8061,8062,8052,8026,8005,7973,7948,7929,7877,7833,7776,
+7705,7648,7569,7479,7328,7159,7081,6829,6520,6396,6417,6392,6274,6218,6265,6362,6406,6439,6447,6431,
+6414,6387,6357,6323,6281,6227,6166,6101,6039,5981,5924,5870,5815,5757,5697,5632,5560,5500,5444,5399,
+5372,5331,5269,5204,5153,5140,5099,5029,4931,4826,4751,4712,4718,4711,4632,4553,4526,4492,4413,4363,
+4315,4302,4294,4261,4229,4186,4137,4093,4059,4023,3990,3959,3934,3908,3872,3825,3758,3674,3600,3537,
+3495,3468,3433,3403,3371,3330,3284,3243,3215,3191,3155,3111,3052,3000,2962,2917,2877,2865,2890,2854,
+2793,2706,2659,2637,2637,2638,2653,2644,2604,2569,2553,2542,2512,2484,2457,2432,2375,2327,2275,2233,
+2192,2151,2121,2092,2071,2049,2033,2012,1990,1969,1952,1932,1905,1870,1839,1823,1833,1874,1905,1912,
+1903,1848,1868,1896,1839,1807,1792,1785,1779,1798,1815,1740,1769,1873,1733,1629,1616,1639,1669,1649,
+1673,1643,1677,1671,1656,1645,1624,1610,1622,1644,1650,1658,1699,1723,1678,1722,1726,1720,1651,1675,
+1640,1610,1577,1566,1567,1564,1556,1546,1532,1517,1492,1475,1453,1422,1407,1419,1465,1448,1424,1421,
+1414,1406,1401,1403,1406,1411,1424,1436,1443,1444,1414,1404,1398,1391,1393,1417,1402,1349,1330,1321,
+1326,1318,1305,1318,1295,1298,1316,1324,1311,1292,1276,1260,1248,1235,1231,1220,1202,1183,1165,1146,
+1123,1104,1082,1050,1019,992,966,935,902,877,847,817,783,751,733,718,697,669,640,612,
+576,542,513,490,462,426,384,353,331,303,282,256,237,211,183,152,123,93,68,37,
+0,-36,-68,-101,-130,-162,-196,-233,-271,-304,-329,-360,-395,-429,-456,-484,-505,-528,-548,-573,
+-605,-642,-673,-708,-745,-764,-791,-826,-850,-872,-894,-908,-923,-943,-972,-1000,-1033,-1057,-1073,-1093,
+-1115,-1133,-1148,-1171,-1198,-1226,-1249,-1272,-1290,-1310,-1333,-1357,-1388,-1417,-1440,-1462,-1481,-1493,-1512,-1533,
+-1550,-1561,-1574,-1588,-1605,-1621,-1638,-1652,-1668,-1688,-1700,-1714,-1725,-1736,-1741,-1752,-1767,-1783,-1790,-1799,
+-1803,-1806,-1809,-1812,-1812,-1814,-1817,-1822,-1821,-1820,-1823,-1820,-1812,-1808,-1807,-1797,-1792,-1784,-1776,-1773,
+-1766,-1754,-1744,-1734,-1723,-1712,-1697,-1683,-1677,-1670,-1663,-1657,-1652,-1642,-1632,-1615,-1598,-1592,-1584,-1586,
+-1583,-1569,-1563,-1564,-1551,-1529,-1508,-1501,-1503,-1497,-1493,-1489,-1483,-1479,-1472,-1465,-1463,-1464,-1456,-1468,
+-1459,-1469,-1472,-1475,-1471,-1457,-1442,-1441,-1441,-1437,-1434,-1430,-1426,-1422,-1418,-1414,-1409,-1405,-1399,-1399,
+-1398,-1394,-1393,-1389,-1381,-1378,-1373,-1366,-1363,-1361,-1355,-1352,-1350,-1337,-1325,-1316,-1307,-1293,-1286,-1275,
+-1259,-1240,-1224,-1211,-1196,-1179,-1156,-1142,-1121,-1101,-1079,-1053,-1028,-996,-967,-939,-908,-875,-845,-816,
+-794,-767,-732,-698,-672,-638,-584,-537,-488,-443,-391,-346,-303,-256,-210,-172,-121,-67,-13,38,
+97,159,204,233,213,211,199,154,67,31,228,335,465,724,973,1198,1339,1467,1651,1779,
+1744,1637,1620,1458,1251,1018,909,865,904,981,1040,1084,1114,1156,1228,1331,1452,1574,1704,1812,
+1912,1993,2036,2043,2036,2025,2009,2028,2049,2056,2047,2024,1989,1932,1870,1816,1768,1708,1650,1585,
+1507,1406,1297,1204,1118,1038,953,887,843,807,766,723,673,603,516,423,304,178,60,-63,
+-191,-310,-420,-519,-598,-656,-690,-705,-683,-651,-676,-742,-797,-828,-867,-915,-973,-1032,-1082,-1131,
+-1169,-1206,-1227,-1222,-1207,-1232,-1339,-1472,-1614,-1735,-1838,-1912,-1953,-1973,-1983,-1977,-1976,-2008,-2057,-2101,
+-2143,-2206,-2258,-2306,-2374,-2436,-2466,-2450,-2409,-2364,-2336,-2320,-2313,-2326,-2336,-2346,-2373,-2425,-2487,-2526,
+-2514,-2497,-2504,-2507,-2502,-2490,-2548,-2624,-2669,-2696,-2743,-2773,-2806,-2821,-2836,-2817,-2791,-2757,-2680,-2570,
+-2455,-2355,-2248,-2179,-2150,-2140,-2098,-2033,-1958,-1854,-1743,-1606,-1482,-1499,-1459,-1444,-1351,-1244,-1142,-1075,
+-999,-941,-905,-873,-847,-867,-938,-965,-965,-930,-905,-843,-784,-736,-724,-639,-775,-734,-836,-825,
+-682,-519,-573,-487,-611,-579,-448,-505,-588,-594,-595,-573,-531,-481,-442,-404,-370,-343,-324,-314,
+-312,-316,-312,-295,-276,-245,-215,-185,-153,-131,-109,-84,-63,-34,-11,12,41,74,106,132,
+163,209,242,276,312,347,397,441,493,526,544,570,615,643,684,724,770,817,865,917,
+971,1021,1055,1099,1132,1163,1204,1253,1288,1342,1393,1437,1468,1514,1541,1584,1606,1626,1659,1695,
+1734,1759,1790,1809,1850,1898,1954,1948,1914,1926,1907,1911,1890,1893,1885,1907,1886,1900,1910,1907,
+1914,1902,1883,1860,1850,1834,1820,1819,1820,1827,1832,1832,1827,1821,1814,1807,1813,1807,1802,1801,
+1799,1798,1779,1781,1782,1791,1807,1815,1827,1839,1844,1864,1859,1842,1822,1803,1818,1790,1756,1751,
+1713,1664,1632,1580,1563,1541,1505,1495,1444,1420,1304,1264,1223,1179,1164,1147,1104,1073,1046,1012,
+981,957,927,902,881,859,833,819,800,777,727,633,530,464,441,450,482,546,598,611,
+576,532,454,384,330,308,291,314,320,323,351,353,332,292,236,217,183,152,91,22,
+-64,-132,-177,-231,-324,-446,-551,-628,-704,-791,-837,-873,-928,-1020,-1099,-1165,-1219,-1257,-1292,-1333,
+-1381,-1428,-1448,-1463,-1484,-1529,-1585,-1626,-1678,-1739,-1790,-1817,-1817,-1822,-1843,-1870,-1879,-1868,-1863,-1843,
+-1813,-1790,-1743,-1706,-1679,-1639,-1597,-1559,-1493,-1424,-1260,-1126,-969,-1102,-1264,-1168,-1009,-1122,-1254,-1333,
+-1374,-1410,-1458,-1489,-1524,-1583,-1655,-1714,-1775,-1855,-1916,-1945,-1968,-2004,-2037,-2047,-2001,-1927,-1820,-1775,
+-1927,-1920,-1824,-1731,-1758,-1847,-1945,-2045,-2037,-2093,-2163,-2214,-2295,-2470,-2631,-2774,-2977,-3142,-3187,-3192,
+-3278,-3279,-3289,-3413,-3572,-3692,-3795,-3868,-3926,-3959,-3994,-4027,-4060,-4109,-4170,-4214,-4250,-4286,-4325,-4341,
+-4356,-4359,-4364,-4376,-4393,-4416,-4426,-4391,-4407,-4422,-4415,-4415,-4411,-4424,-4429,-4432,-4427,-4418,-4402,-4391,
+-4380,-4366,-4373,-4386,-4410,-4393,-4392,-4403,-4401,-4398,-4394,-4384,-4386,-4416,-4317,-4177,-4128,-4128,-4171,-4203,
+-4290,-4348,-4508,-4682,-4812,-4877,-4919,-4955,-5012,-5079,-5117,-5222,-5275,-5339,-5412,-5440,-5525,-5579,-5633,-5681,
+-5768,-5857,-5935,-6018,-6058,-6121,-6187,-6261,-6361,-6396,-6438,-6514,-6593,-6657,-6698,-6745,-6800,-6860,-6890,-6933,
+-6985,-7033,-7111,-7162,-7204,-7275,-7371,-7382,-7408,-7464,-7518,-7553,-7621,-7735,-7823,-7919,-8012,-8092,-8176,-8267,
+-8342,-8398,-8470,-8540,-8584,-8612,-8612,-8611,-8622,-8659,-8723,-8775,-8833,-9068,-9169,-9174,-9190,-9229,-9257,-9265,
+-9292,-9323,-9350,-9365,-9370,-9395,-9417,-9433,-9433,-9432,-9442,-9465,-9486,-9491,-9489,-9454,-9391,-9364,-9380,-9430,
+-9431,-9395,-9338,-9261,-9166,-9063,-8956,-8840,-8748,-8717,-8733,-8735,-8719,-8691,-8630,-8567,-8518,-8477,-8384,-8269,
+-8145,-8008,-7899,-7791,-7694,-7614,-7531,-7456,-7359,-7240,-7109,-6942,-6769,-6614,-6479,-6377,-6304,-6248,-6206,-6169,
+-6087,-5996,-5876,-5759,-5631,-5501,-5352,-5212,-5077,-4916,-4751,-4635,-4492,-4382,-4257,-4138,-4004,-3893,-3774,-3609,
+-3444,-3281,-3159,-3071,-2905,-2755,-2613,-2434,-2267,-2184,-2118,-2030,-1959,-1883,-1846,-1897,-1942,-1860,-1638,-1414,
+-1148,-916,-871,-779,-561,-223,85,369,701,946,1027,1045,1101,1138,1221,1311,1411,1505,1588,1668,
+1740,1809,1890,1972,2042,2118,2201,2277,2325,2397,2479,2558,2624,2685,2737,2814,2886,2953,3016,3099,
+3176,3249,3327,3412,3474,3568,3657,3732,3816,3887,3963,4073,4171,4224,4275,4378,4449,4496,4551,4668,
+4777,4856,4920,4962,4984,5033,5037,4958,4856,4827,4815,4834,4928,5101,5280,5469,5647,5597,5600,5585,
+5500,5701,5929,5981,5979,5936,5917,5922,5924,5920,5893,5602,5523,5598,5661,5716,5751,5798,5868,5866,
+5864,5897,5960,5867,5892,5890,6025,5945,5940,6000,5911,5916,5919,5887,5792,5718,5720,5761,5682,5731,
+5713,5671,5588,5460,5399,5453,5621,5880,6284,6690,6713,6670,6661,6670,6750,6818,6903,7063,7327,7684,
+7865,7826,7841,7971,8207,8392,8526,8516,8509,8461,8420,8386,8309,8312,8334,8115,8020,7859,7786,7761,
+7792,7741,7747,7777,7745,7673,7701,7712,7662,7597,7556,7579,7576,7536,7495,7473,7483,7545,7574,7626,
+7680,7727,7763,7814,7857,7902,7942,7989,8029,8051,8067,8068,8085,8061,8043,8018,7997,7961,7930,7888,
+7824,7755,7700,7676,7545,7401,7219,7078,7056,6647,6297,6357,6469,6335,6241,6173,6275,6399,6467,6493,
+6486,6473,6455,6436,6410,6373,6318,6252,6176,6106,6045,5989,5935,5888,5840,5777,5699,5627,5562,5501,
+5456,5426,5390,5334,5250,5178,5153,5129,5077,4997,4915,4845,4830,4845,4776,4710,4680,4550,4477,4435,
+4394,4400,4372,4336,4313,4277,4245,4191,4144,4103,4055,4025,4000,3982,3953,3915,3867,3799,3728,3662,
+3596,3542,3525,3508,3468,3424,3361,3301,3257,3226,3190,3153,3113,3065,3013,2982,2946,2912,2905,2979,
+3059,2893,2766,2706,2669,2665,2655,2689,2678,2644,2615,2569,2574,2569,2539,2494,2442,2394,2341,2294,
+2241,2194,2150,2121,2095,2075,2051,2025,2006,1986,1969,1954,1941,1914,1878,1847,1832,1881,1930,1881,
+1850,1839,1836,1859,1920,1877,1826,1796,1774,1748,1749,1725,1707,1758,1743,1688,1645,1642,1658,1672,
+1650,1691,1685,1674,1685,1675,1668,1654,1638,1640,1637,1647,1654,1696,1727,1692,1672,1753,1742,1714,
+1688,1697,1657,1624,1581,1578,1571,1576,1552,1519,1495,1479,1477,1446,1418,1385,1381,1395,1413,1449,
+1470,1426,1388,1373,1372,1376,1381,1389,1401,1411,1407,1399,1388,1379,1358,1349,1421,1514,1399,1310,
+1303,1308,1297,1278,1266,1251,1256,1278,1293,1290,1266,1252,1233,1224,1214,1208,1198,1180,1161,1136,
+1118,1104,1082,1063,1040,1017,990,966,942,908,869,836,811,773,740,718,704,686,663,637,
+609,579,543,503,474,444,411,369,336,318,293,299,261,252,210,177,143,106,79,49,
+13,-21,-53,-82,-107,-140,-173,-204,-239,-275,-307,-339,-369,-404,-437,-464,-488,-508,-530,-549,
+-566,-586,-613,-653,-681,-732,-749,-778,-806,-840,-860,-881,-901,-918,-940,-969,-998,-1029,-1061,-1084,
+-1107,-1123,-1142,-1159,-1178,-1198,-1221,-1237,-1255,-1272,-1293,-1313,-1336,-1362,-1386,-1409,-1429,-1447,-1464,-1479,
+-1496,-1516,-1529,-1541,-1555,-1569,-1579,-1588,-1604,-1623,-1644,-1666,-1687,-1698,-1711,-1719,-1726,-1739,-1755,-1765,
+-1771,-1773,-1775,-1776,-1778,-1781,-1785,-1787,-1786,-1785,-1781,-1780,-1777,-1771,-1766,-1765,-1763,-1760,-1755,-1745,
+-1737,-1734,-1727,-1716,-1703,-1692,-1682,-1666,-1653,-1641,-1636,-1631,-1620,-1616,-1605,-1599,-1579,-1567,-1577,-1550,
+-1544,-1538,-1516,-1519,-1522,-1511,-1498,-1497,-1486,-1473,-1462,-1458,-1454,-1447,-1437,-1443,-1447,-1440,-1435,-1426,
+-1429,-1440,-1438,-1424,-1412,-1411,-1409,-1417,-1435,-1442,-1439,-1436,-1446,-1434,-1428,-1424,-1417,-1413,-1405,-1404,
+-1400,-1397,-1399,-1395,-1389,-1385,-1382,-1379,-1375,-1370,-1365,-1361,-1356,-1352,-1337,-1331,-1324,-1315,-1307,-1296,
+-1279,-1267,-1250,-1242,-1230,-1213,-1198,-1180,-1160,-1138,-1118,-1095,-1072,-1045,-1018,-987,-956,-931,-900,-871,
+-847,-815,-776,-752,-715,-683,-645,-603,-552,-508,-465,-416,-369,-328,-285,-241,-195,-141,-81,-30,
+20,72,124,129,148,181,192,169,113,12,22,195,385,717,1020,1215,1389,1582,1678,1690,
+1716,1684,1555,1516,1400,1236,1020,952,885,921,964,983,1005,1057,1118,1187,1288,1400,1518,1652,
+1773,1877,1950,2001,2026,2044,2047,2039,2037,2047,2062,2065,2053,2015,1965,1909,1845,1797,1762,1703,
+1640,1574,1480,1370,1278,1195,1116,1042,971,926,883,834,786,742,680,591,483,366,231,90,
+-46,-182,-306,-422,-527,-602,-651,-670,-665,-631,-605,-643,-706,-735,-716,-701,-729,-809,-884,-925,
+-954,-992,-1053,-1117,-1170,-1211,-1288,-1419,-1551,-1680,-1782,-1865,-1933,-1995,-2034,-2054,-2060,-2068,-2093,-2118,
+-2159,-2196,-2264,-2307,-2349,-2393,-2424,-2431,-2409,-2381,-2350,-2316,-2286,-2270,-2287,-2299,-2319,-2352,-2418,-2500,
+-2573,-2583,-2537,-2508,-2489,-2462,-2446,-2522,-2617,-2642,-2685,-2736,-2774,-2793,-2803,-2809,-2792,-2751,-2713,-2648,
+-2560,-2467,-2369,-2276,-2212,-2169,-2158,-2109,-2044,-1950,-1847,-1741,-1631,-1461,-1496,-1499,-1449,-1349,-1226,-1145,
+-1062,-972,-921,-892,-861,-824,-801,-838,-911,-934,-923,-860,-700,-554,-614,-674,-651,-829,-834,-842,
+-795,-648,-523,-582,-604,-637,-579,-486,-545,-592,-591,-618,-594,-551,-494,-451,-415,-387,-358,-343,
+-335,-336,-340,-340,-326,-307,-287,-254,-229,-199,-172,-148,-125,-95,-63,-37,-10,18,41,54,
+77,123,184,207,238,279,313,370,415,458,481,503,543,581,617,653,706,767,802,851,
+909,970,1022,1059,1103,1139,1178,1227,1264,1305,1363,1375,1428,1465,1507,1529,1562,1604,1628,1657,
+1699,1724,1758,1781,1806,1841,1888,1890,1860,1915,1924,1943,1915,1918,1914,1908,1900,1892,1889,1895,
+1886,1880,1863,1845,1829,1822,1829,1836,1849,1850,1851,1842,1829,1820,1803,1798,1795,1800,1796,1791,
+1793,1794,1791,1778,1763,1768,1773,1789,1798,1811,1813,1830,1820,1803,1798,1797,1785,1790,1735,1722,
+1701,1673,1630,1604,1583,1553,1523,1474,1427,1369,1345,1248,1211,1168,1130,1132,1233,1092,1035,1005,
+972,942,921,892,869,848,831,810,798,787,777,742,677,593,507,446,423,425,456,497,
+545,581,576,497,385,324,306,322,361,370,338,313,309,287,273,252,235,183,103,37,
+-8,-32,-71,-101,-147,-227,-346,-471,-554,-642,-717,-767,-820,-892,-979,-1067,-1125,-1164,-1215,-1244,
+-1302,-1346,-1390,-1411,-1419,-1430,-1449,-1479,-1521,-1576,-1664,-1742,-1775,-1769,-1760,-1773,-1816,-1844,-1861,-1841,
+-1826,-1799,-1785,-1748,-1712,-1692,-1659,-1619,-1578,-1547,-1486,-1366,-1165,-1008,-1178,-1290,-1277,-1182,-1243,-1306,
+-1372,-1405,-1423,-1453,-1470,-1501,-1570,-1648,-1709,-1758,-1812,-1863,-1903,-1937,-1997,-1994,-1967,-1918,-1846,-1787,
+-1796,-1874,-1887,-1813,-1737,-1792,-1809,-1906,-2063,-2089,-2091,-2232,-2294,-2345,-2479,-2659,-2831,-3017,-3116,-3132,
+-3212,-3315,-3327,-3330,-3419,-3567,-3687,-3787,-3859,-3927,-3978,-4014,-4038,-4062,-4106,-4156,-4197,-4233,-4256,-4288,
+-4299,-4306,-4312,-4319,-4338,-4373,-4402,-4413,-4365,-4370,-4388,-4415,-4413,-4408,-4405,-4403,-4402,-4400,-4378,-4371,
+-4361,-4342,-4336,-4339,-4353,-4358,-4336,-4343,-4341,-4322,-4317,-4335,-4337,-4334,-4293,-4144,-4102,-4093,-4107,-4128,
+-4175,-4222,-4270,-4337,-4526,-4698,-4810,-4859,-4898,-4951,-5030,-5094,-5151,-5240,-5279,-5339,-5374,-5466,-5508,-5561,
+-5635,-5728,-5799,-5875,-5941,-5995,-6054,-6131,-6199,-6281,-6318,-6391,-6456,-6494,-6555,-6627,-6694,-6748,-6773,-6841,
+-6886,-6937,-7006,-7058,-7101,-7157,-7247,-7284,-7319,-7349,-7396,-7502,-7531,-7576,-7660,-7754,-7852,-7938,-8038,-8133,
+-8194,-8260,-8340,-8415,-8467,-8504,-8538,-8514,-8498,-8503,-8556,-8626,-8692,-8789,-9047,-9130,-9117,-9126,-9164,-9191,
+-9216,-9228,-9257,-9286,-9299,-9308,-9317,-9331,-9344,-9339,-9337,-9363,-9391,-9409,-9414,-9407,-9361,-9312,-9293,-9326,
+-9376,-9367,-9322,-9251,-9159,-9048,-8952,-8858,-8748,-8668,-8657,-8672,-8677,-8682,-8660,-8609,-8563,-8527,-8465,-8361,
+-8245,-8106,-7959,-7861,-7775,-7693,-7626,-7556,-7464,-7360,-7233,-7095,-6933,-6772,-6637,-6505,-6433,-6379,-6331,-6268,
+-6200,-6114,-6010,-5881,-5765,-5645,-5531,-5387,-5251,-5120,-4947,-4778,-4634,-4486,-4405,-4310,-4189,-4045,-3914,-3799,
+-3638,-3447,-3291,-3214,-3124,-2943,-2784,-2596,-2415,-2317,-2226,-2101,-1995,-1902,-1831,-1769,-1766,-1886,-1915,-1785,
+-1523,-1279,-987,-862,-867,-752,-462,-110,146,428,709,1059,1146,1147,1166,1223,1293,1397,1487,1571,
+1648,1709,1772,1848,1935,2023,2109,2195,2268,2327,2384,2447,2500,2559,2650,2735,2802,2875,2935,2996,
+3068,3138,3211,3288,3377,3444,3521,3621,3704,3772,3839,3918,4020,4116,4187,4258,4344,4359,4384,4478,
+4601,4734,4794,4838,4875,4915,4950,4938,4827,4734,4739,4748,4788,4894,5115,5297,5428,5640,5565,5567,
+5519,5398,5524,5746,5888,5922,5849,5860,5877,5919,5899,5705,5408,5452,5561,5633,5703,5728,5736,5775,
+5823,5835,5861,5885,5821,5789,5839,5892,5899,5851,5821,5833,5884,5933,5949,5813,5772,5838,5803,5545,
+5460,5500,5462,5446,5395,5322,5382,5538,5751,6000,6250,6409,6526,6485,6419,6462,6592,6774,6955,7085,
+7334,7458,7397,7437,7447,7597,7824,8032,8110,8065,8098,8158,8376,8514,8411,8477,8444,8282,7939,7775,
+7753,7760,7799,7917,7920,7861,7807,7800,7815,7744,7616,7487,7433,7426,7414,7381,7289,7306,7366,7450,
+7537,7569,7618,7658,7713,7779,7836,7882,7929,7980,8018,8047,8062,8083,8094,8075,8061,8047,8007,7962,
+7922,7858,7794,7739,7793,7756,7522,7264,6958,6926,6774,6193,6042,6178,6367,6360,6314,6234,6377,6474,
+6526,6538,6529,6522,6516,6505,6477,6419,6340,6249,6175,6112,6052,5997,5960,5929,5875,5783,5706,5635,
+5571,5525,5481,5433,5373,5303,5233,5200,5164,5120,5048,4982,4936,4918,4876,4812,4774,4684,4595,4524,
+4495,4485,4456,4412,4377,4340,4313,4290,4243,4198,4149,4091,4065,4053,4035,4003,3962,3915,3858,3799,
+3722,3658,3605,3577,3565,3527,3468,3400,3340,3290,3247,3208,3160,3121,3073,3026,2998,2967,2931,2919,
+2971,2975,2916,2826,2786,2728,2696,2693,2710,2739,2680,2647,2611,2594,2574,2541,2505,2462,2412,2363,
+2307,2245,2193,2149,2120,2102,2081,2053,2023,2006,1989,1974,1968,1955,1924,1896,1867,1872,1943,1984,
+1893,1846,1821,1817,1819,1815,1784,1814,1859,1872,1812,1762,1773,1794,1742,1692,1652,1635,1644,1652,
+1665,1658,1701,1702,1693,1702,1691,1679,1670,1664,1671,1673,1657,1671,1696,1729,1693,1719,1757,1723,
+1704,1705,1661,1647,1651,1576,1577,1591,1555,1526,1531,1516,1476,1443,1414,1395,1388,1373,1386,1398,
+1435,1531,1451,1395,1376,1371,1372,1369,1367,1371,1374,1376,1374,1372,1358,1332,1307,1310,1346,1323,
+1288,1294,1290,1294,1271,1251,1229,1225,1227,1249,1255,1245,1225,1215,1201,1196,1182,1171,1150,1133,
+1099,1081,1068,1047,1031,1010,994,971,952,932,903,872,834,789,746,715,696,683,666,650,
+619,585,550,515,478,455,436,420,400,370,337,310,285,262,236,203,172,135,99,67,
+37,12,-14,-41,-69,-93,-132,-172,-210,-240,-264,-292,-322,-355,-388,-428,-465,-490,-512,-531,
+-548,-568,-585,-607,-638,-672,-705,-733,-764,-793,-832,-855,-875,-894,-912,-933,-958,-986,-1019,-1052,
+-1084,-1112,-1133,-1151,-1168,-1188,-1206,-1221,-1228,-1242,-1257,-1279,-1302,-1323,-1339,-1358,-1378,-1400,-1416,-1436,
+-1455,-1470,-1486,-1501,-1513,-1523,-1539,-1551,-1557,-1569,-1583,-1602,-1623,-1646,-1663,-1678,-1690,-1698,-1711,-1728,
+-1743,-1747,-1748,-1751,-1750,-1751,-1753,-1757,-1759,-1759,-1757,-1749,-1745,-1744,-1738,-1731,-1726,-1726,-1725,-1725,
+-1716,-1707,-1699,-1692,-1684,-1671,-1662,-1655,-1643,-1628,-1616,-1607,-1597,-1591,-1576,-1562,-1556,-1540,-1541,-1506,
+-1501,-1506,-1490,-1492,-1504,-1469,-1457,-1470,-1466,-1460,-1463,-1454,-1447,-1437,-1430,-1419,-1417,-1408,-1410,-1410,
+-1402,-1408,-1407,-1406,-1414,-1416,-1417,-1414,-1412,-1412,-1410,-1409,-1400,-1401,-1413,-1421,-1426,-1431,-1418,-1418,
+-1410,-1403,-1403,-1402,-1399,-1394,-1388,-1389,-1382,-1378,-1375,-1372,-1369,-1365,-1349,-1353,-1341,-1332,-1328,-1317,
+-1307,-1293,-1280,-1272,-1255,-1244,-1227,-1210,-1192,-1172,-1153,-1135,-1111,-1088,-1065,-1035,-1009,-980,-957,-928,
+-892,-864,-840,-807,-772,-739,-690,-649,-610,-577,-524,-480,-438,-389,-349,-308,-260,-207,-152,-99,
+-53,-1,13,46,93,136,167,177,125,45,-52,-4,238,646,977,1254,1369,1548,1739,1872,
+1804,1729,1687,1468,1328,1257,1128,985,932,883,904,916,924,943,1015,1096,1166,1248,1355,1480,
+1611,1733,1840,1912,1963,2004,2041,2054,2046,2038,2039,2059,2079,2078,2032,1981,1932,1859,1818,1795,
+1761,1720,1655,1552,1445,1358,1278,1200,1128,1060,1014,968,904,859,817,767,681,571,440,283,
+112,-38,-172,-296,-406,-503,-565,-611,-630,-619,-579,-531,-556,-632,-660,-633,-581,-593,-705,-793,
+-828,-858,-911,-1007,-1125,-1234,-1318,-1396,-1508,-1618,-1720,-1801,-1868,-1935,-2003,-2050,-2075,-2078,-2086,-2097,
+-2107,-2155,-2225,-2299,-2348,-2378,-2402,-2417,-2405,-2383,-2354,-2324,-2286,-2252,-2231,-2233,-2242,-2268,-2312,-2390,
+-2491,-2568,-2589,-2540,-2500,-2457,-2427,-2419,-2476,-2571,-2637,-2699,-2754,-2760,-2767,-2768,-2767,-2745,-2711,-2686,
+-2625,-2553,-2482,-2383,-2307,-2249,-2203,-2163,-2115,-2052,-1946,-1828,-1726,-1623,-1470,-1443,-1500,-1433,-1319,-1193,
+-1118,-1037,-908,-892,-870,-855,-809,-789,-776,-797,-879,-903,-865,-814,-743,-780,-840,-875,-925,-914,
+-875,-821,-759,-705,-677,-544,-661,-682,-659,-651,-650,-648,-645,-616,-569,-510,-470,-438,-415,-393,
+-381,-375,-375,-374,-365,-353,-333,-318,-290,-245,-217,-180,-156,-118,-86,-64,-32,-20,12,33,
+54,79,116,170,189,230,296,327,377,411,455,480,514,543,586,629,667,705,738,816,
+868,926,968,1004,1037,1071,1114,1155,1190,1246,1279,1317,1379,1419,1468,1491,1529,1556,1582,1601,
+1622,1651,1682,1706,1716,1751,1802,1846,1872,1888,1940,1924,1910,1904,1898,1897,1887,1881,1874,1861,
+1862,1853,1835,1846,1845,1864,1861,1853,1846,1840,1829,1828,1820,1810,1803,1792,1796,1780,1803,1774,
+1771,1772,1777,1778,1773,1772,1764,1855,1821,1793,1801,1801,1801,1790,1782,1782,1773,1757,1735,1710,
+1712,1686,1661,1621,1583,1543,1511,1474,1424,1366,1302,1250,1215,1253,1150,1087,1080,1082,1035,997,
+968,941,911,892,869,848,826,808,791,780,774,768,749,711,665,599,519,459,445,421,
+417,447,526,589,549,439,346,314,340,376,408,386,329,304,319,334,309,253,187,116,
+73,33,17,3,-16,-57,-141,-272,-408,-507,-595,-660,-700,-760,-837,-915,-995,-1037,-1082,-1134,
+-1178,-1217,-1276,-1317,-1357,-1369,-1382,-1408,-1428,-1452,-1502,-1588,-1688,-1719,-1700,-1691,-1720,-1761,-1788,-1811,
+-1790,-1769,-1765,-1760,-1722,-1701,-1681,-1657,-1621,-1590,-1553,-1499,-1416,-1278,-1136,-1168,-1316,-1370,-1291,-1289,
+-1345,-1385,-1420,-1431,-1449,-1459,-1482,-1571,-1663,-1722,-1764,-1802,-1844,-1891,-1944,-2004,-1978,-1925,-1882,-1845,
+-1821,-1829,-1867,-1896,-1856,-1825,-1843,-1855,-1911,-2056,-2145,-2155,-2165,-2302,-2371,-2490,-2699,-2905,-3011,-3048,
+-3128,-3258,-3341,-3377,-3383,-3454,-3589,-3688,-3779,-3848,-3915,-3975,-4011,-4039,-4063,-4089,-4133,-4172,-4203,-4229,
+-4251,-4256,-4259,-4264,-4279,-4308,-4344,-4362,-4374,-4335,-4331,-4359,-4393,-4386,-4385,-4378,-4375,-4372,-4357,-4352,
+-4341,-4322,-4308,-4302,-4294,-4295,-4301,-4289,-4296,-4280,-4249,-4251,-4325,-4309,-4208,-4159,-4087,-4077,-4072,-4077,
+-4090,-4134,-4191,-4215,-4237,-4390,-4569,-4715,-4794,-4847,-4902,-4969,-5045,-5107,-5175,-5234,-5308,-5374,-5421,-5469,
+-5530,-5598,-5669,-5740,-5805,-5876,-5921,-5987,-6058,-6130,-6178,-6235,-6338,-6403,-6464,-6529,-6606,-6667,-6676,-6737,
+-6779,-6841,-6898,-6944,-6989,-7059,-7130,-7179,-7216,-7275,-7303,-7375,-7351,-7420,-7548,-7574,-7706,-7788,-7896,-7963,
+-8054,-8113,-8201,-8279,-8309,-8383,-8445,-8458,-8422,-8360,-8383,-8454,-8538,-8615,-8746,-8999,-9060,-9031,-9067,-9102,
+-9130,-9167,-9171,-9198,-9220,-9231,-9241,-9237,-9244,-9267,-9272,-9273,-9292,-9324,-9354,-9363,-9356,-9318,-9293,-9285,
+-9318,-9344,-9306,-9244,-9155,-9048,-8949,-8870,-8803,-8693,-8647,-8638,-8668,-8695,-8681,-8643,-8594,-8549,-8501,-8421,
+-8314,-8198,-8062,-7928,-7839,-7763,-7689,-7619,-7543,-7453,-7345,-7214,-7085,-6943,-6810,-6680,-6565,-6501,-6434,-6377,
+-6296,-6212,-6124,-6011,-5883,-5766,-5657,-5560,-5419,-5285,-5143,-4946,-4770,-4631,-4488,-4425,-4351,-4241,-4099,-3968,
+-3860,-3712,-3506,-3364,-3273,-3165,-3025,-2876,-2668,-2515,-2405,-2292,-2107,-1993,-1905,-1834,-1763,-1756,-1860,-1916,
+-1877,-1679,-1419,-1173,-951,-884,-887,-707,-369,-109,148,390,663,899,1021,1082,1156,1234,1341,1449,
+1544,1620,1694,1754,1818,1888,1959,2047,2138,2222,2292,2346,2399,2459,2538,2647,2726,2790,2850,2905,
+2951,3027,3099,3175,3254,3337,3410,3480,3567,3637,3699,3773,3871,3975,4059,4132,4204,4268,4304,4357,
+4459,4564,4672,4713,4743,4785,4837,4871,4840,4730,4678,4684,4702,4760,4934,5149,5365,5483,5632,5566,
+5585,5529,5391,5416,5604,5778,5830,5802,5791,5804,5841,5867,5587,5338,5395,5506,5586,5653,5691,5703,
+5712,5774,5797,5839,5882,5940,5903,5919,5879,5834,5810,5781,5787,5896,5876,5850,5777,5787,5884,5788,
+5533,5249,5179,5170,5158,5180,5185,5233,5374,5586,5836,6081,6136,6177,6227,6217,6267,6479,6722,6832,
+6900,6952,6970,6984,7013,7054,7132,7231,7339,7403,7427,7470,7569,7791,8014,8123,8127,8278,8432,8228,
+7939,7868,7833,7860,8038,7991,7990,7973,7947,7908,7824,7635,7494,7430,7398,7363,7286,7203,7159,7201,
+7319,7360,7405,7491,7515,7575,7647,7712,7794,7860,7919,7972,8018,8038,8090,8104,8100,8076,8064,8031,
+7999,7956,7897,7827,7804,7789,7853,7598,7249,6743,6691,6515,5904,5703,5843,6207,6487,6453,6303,6328,
+6462,6545,6570,6574,6582,6592,6600,6578,6506,6409,6309,6235,6169,6108,6061,6027,6037,6001,5871,5808,
+5731,5662,5602,5554,5496,5423,5351,5304,5258,5201,5157,5100,5035,4995,4966,4908,4855,4797,4709,4657,
+4599,4566,4510,4477,4431,4392,4357,4331,4310,4274,4226,4175,4129,4106,4088,4070,4035,3997,3956,3908,
+3864,3770,3705,3656,3621,3595,3557,3496,3432,3385,3343,3301,3252,3199,3156,3110,3069,3040,3010,2963,
+2935,2920,2895,2880,2884,2877,2819,2740,2729,2734,2732,2719,2661,2610,2582,2571,2534,2502,2466,2427,
+2383,2330,2271,2217,2173,2141,2122,2096,2068,2042,2027,2016,1999,1988,1972,1950,1924,1881,1863,1873,
+1935,1977,1864,1791,1773,1768,1782,1812,1830,1885,2077,1963,1833,1821,1915,1750,1672,1648,1646,1651,
+1650,1661,1670,1668,1676,1693,1698,1699,1694,1691,1683,1678,1676,1671,1675,1690,1738,1703,1696,1752,
+1723,1697,1714,1627,1627,1608,1564,1558,1541,1561,1575,1525,1489,1456,1451,1435,1410,1389,1387,1383,
+1394,1409,1426,1422,1402,1378,1362,1349,1336,1330,1331,1330,1331,1336,1338,1326,1310,1290,1288,1344,
+1268,1258,1277,1283,1268,1264,1247,1212,1183,1185,1190,1204,1208,1199,1187,1174,1159,1148,1127,1102,
+1079,1060,1039,1019,1002,990,965,949,931,914,901,886,863,840,771,728,699,679,653,632,
+603,574,548,521,497,470,441,435,422,399,378,344,317,288,262,230,201,171,137,100,
+67,37,18,-4,-30,-55,-79,-120,-158,-196,-224,-253,-285,-316,-343,-386,-423,-460,-489,-514,
+-531,-553,-573,-595,-616,-642,-672,-697,-727,-748,-785,-820,-849,-873,-894,-912,-926,-951,-973,-1005,
+-1037,-1067,-1095,-1112,-1131,-1143,-1167,-1189,-1210,-1217,-1225,-1238,-1257,-1283,-1311,-1321,-1337,-1353,-1379,-1402,
+-1422,-1436,-1451,-1463,-1475,-1492,-1504,-1516,-1528,-1539,-1549,-1555,-1568,-1586,-1604,-1624,-1640,-1655,-1668,-1681,
+-1698,-1714,-1718,-1720,-1722,-1724,-1725,-1726,-1726,-1723,-1722,-1722,-1720,-1716,-1715,-1715,-1710,-1701,-1696,-1695,
+-1691,-1683,-1678,-1667,-1659,-1648,-1634,-1622,-1618,-1614,-1608,-1596,-1587,-1576,-1561,-1536,-1543,-1524,-1502,-1476,
+-1477,-1478,-1467,-1451,-1446,-1434,-1435,-1436,-1434,-1428,-1425,-1418,-1408,-1397,-1396,-1412,-1408,-1400,-1399,-1402,
+-1391,-1386,-1391,-1401,-1399,-1399,-1403,-1406,-1408,-1403,-1400,-1397,-1398,-1401,-1407,-1411,-1416,-1426,-1429,-1430,
+-1423,-1408,-1411,-1399,-1396,-1395,-1392,-1388,-1385,-1382,-1384,-1379,-1375,-1371,-1368,-1365,-1357,-1350,-1347,-1339,
+-1330,-1318,-1305,-1298,-1281,-1269,-1251,-1241,-1222,-1206,-1188,-1169,-1148,-1127,-1106,-1082,-1054,-1026,-999,-975,
+-947,-915,-888,-865,-827,-798,-761,-716,-668,-632,-591,-550,-501,-454,-413,-369,-319,-268,-222,-173,
+-120,-86,-70,-18,39,91,128,155,141,77,-10,-118,-19,317,794,1123,1307,1430,1618,1791,
+1929,1848,1837,1627,1400,1189,1096,1020,970,921,882,871,880,887,919,996,1077,1140,1215,1317,
+1448,1580,1698,1805,1878,1932,1990,2040,2055,2045,2040,2040,2058,2094,2106,2067,2016,1951,1878,1846,
+1832,1822,1810,1744,1632,1523,1433,1355,1285,1216,1142,1088,1040,970,917,883,837,764,650,520,
+344,149,-9,-140,-257,-365,-447,-490,-546,-581,-582,-560,-532,-548,-598,-628,-615,-603,-636,-732,
+-813,-868,-908,-972,-1080,-1195,-1305,-1391,-1474,-1564,-1643,-1712,-1776,-1832,-1898,-1955,-2013,-2055,-2084,-2073,
+-2086,-2109,-2156,-2235,-2301,-2342,-2368,-2383,-2389,-2373,-2349,-2318,-2287,-2252,-2223,-2196,-2187,-2175,-2191,-2240,
+-2318,-2426,-2518,-2539,-2488,-2449,-2430,-2412,-2415,-2478,-2573,-2653,-2712,-2745,-2733,-2708,-2691,-2703,-2707,-2693,
+-2665,-2608,-2540,-2477,-2386,-2313,-2268,-2215,-2164,-2105,-2044,-1948,-1819,-1695,-1609,-1511,-1489,-1485,-1394,-1274,
+-1133,-1052,-1012,-937,-899,-857,-822,-810,-788,-778,-772,-789,-838,-836,-847,-860,-871,-875,-890,-930,
+-930,-875,-838,-814,-789,-765,-719,-729,-729,-714,-692,-684,-674,-666,-634,-585,-544,-508,-460,-447,
+-425,-421,-414,-403,-389,-371,-356,-341,-317,-293,-260,-230,-198,-174,-143,-119,-97,-69,-53,-36,
+-5,30,38,69,100,137,199,239,279,326,352,397,428,466,510,552,598,633,696,735,
+785,832,880,938,983,1025,1064,1100,1142,1184,1221,1268,1332,1376,1407,1442,1474,1499,1521,1554,
+1605,1636,1653,1679,1704,1731,1774,1818,1841,1855,1866,1910,1888,1892,1884,1872,1872,1859,1840,1848,
+1843,1857,1870,1853,1857,1839,1837,1829,1820,1812,1810,1815,1805,1796,1789,1779,1766,1760,1757,1758,
+1747,1748,1744,1742,1761,1749,1773,1750,1765,1796,1786,1776,1777,1773,1765,1753,1727,1719,1716,1710,
+1715,1690,1667,1629,1586,1567,1486,1437,1405,1365,1310,1251,1196,1191,1185,1110,1044,1048,1011,983,
+963,940,915,893,872,851,830,810,790,774,768,762,761,746,729,708,680,636,574,522,
+472,436,436,474,543,609,528,422,364,350,372,396,388,375,343,301,328,310,266,231,
+197,170,117,90,76,54,8,-75,-208,-336,-448,-529,-577,-613,-676,-747,-829,-903,-932,-980,
+-1046,-1086,-1122,-1167,-1223,-1277,-1307,-1334,-1370,-1407,-1440,-1489,-1554,-1635,-1663,-1635,-1620,-1652,-1686,-1713,
+-1726,-1719,-1713,-1716,-1701,-1678,-1673,-1665,-1652,-1624,-1582,-1545,-1503,-1451,-1374,-1226,-1153,-1368,-1454,-1405,
+-1381,-1414,-1415,-1428,-1438,-1441,-1431,-1456,-1550,-1660,-1739,-1784,-1809,-1849,-1898,-1959,-2001,-1976,-1922,-1878,
+-1863,-1871,-1878,-1881,-1884,-1874,-1847,-1858,-1870,-1920,-2036,-2170,-2252,-2147,-2185,-2357,-2549,-2765,-2913,-2946,
+-3013,-3166,-3294,-3364,-3404,-3431,-3500,-3637,-3737,-3789,-3845,-3906,-3965,-4001,-4029,-4045,-4069,-4107,-4142,-4175,
+-4196,-4212,-4208,-4212,-4222,-4239,-4267,-4300,-4324,-4326,-4292,-4300,-4333,-4363,-4350,-4344,-4344,-4352,-4342,-4325,
+-4321,-4305,-4286,-4270,-4257,-4245,-4248,-4244,-4242,-4248,-4231,-4195,-4230,-4202,-4133,-4212,-4198,-4146,-4080,-4028,
+-4047,-4061,-4085,-4153,-4193,-4203,-4223,-4421,-4594,-4689,-4768,-4853,-4913,-4980,-5046,-5112,-5169,-5253,-5323,-5374,
+-5426,-5478,-5546,-5600,-5670,-5737,-5796,-5842,-5940,-5991,-6063,-6094,-6191,-6282,-6340,-6418,-6463,-6507,-6585,-6646,
+-6672,-6732,-6793,-6835,-6898,-6942,-7020,-7074,-7097,-7141,-7198,-7278,-7249,-7275,-7404,-7432,-7516,-7625,-7709,-7824,
+-7896,-7975,-8054,-8144,-8186,-8256,-8313,-8338,-8314,-8255,-8236,-8331,-8417,-8462,-8552,-8711,-8930,-8965,-8968,-9004,
+-9041,-9073,-9105,-9122,-9149,-9156,-9162,-9170,-9170,-9179,-9197,-9211,-9213,-9237,-9286,-9320,-9336,-9330,-9309,-9295,
+-9298,-9313,-9314,-9260,-9183,-9082,-8988,-8908,-8842,-8787,-8695,-8653,-8650,-8686,-8703,-8685,-8633,-8571,-8509,-8450,
+-8366,-8256,-8135,-8006,-7888,-7807,-7738,-7672,-7608,-7532,-7446,-7336,-7213,-7090,-6962,-6832,-6700,-6581,-6522,-6467,
+-6404,-6320,-6217,-6129,-6013,-5886,-5767,-5665,-5573,-5441,-5303,-5156,-4951,-4814,-4681,-4551,-4475,-4400,-4294,-4171,
+-4049,-3933,-3778,-3588,-3437,-3322,-3214,-3117,-2955,-2730,-2606,-2492,-2350,-2176,-2039,-1937,-1862,-1823,-1825,-1855,
+-1880,-1885,-1800,-1551,-1346,-1148,-972,-931,-884,-655,-445,-217,17,277,584,861,993,1137,1225,1321,
+1418,1511,1592,1666,1715,1791,1864,1918,2018,2113,2195,2261,2341,2402,2468,2536,2614,2696,2757,2809,
+2865,2918,2997,3070,3152,3231,3297,3350,3402,3503,3592,3644,3721,3806,3878,3974,4053,4127,4192,4255,
+4325,4439,4555,4608,4619,4648,4710,4757,4808,4798,4695,4671,4675,4704,4776,4944,5163,5326,5454,5600,
+5574,5596,5574,5462,5348,5501,5671,5707,5751,5723,5744,5766,5758,5688,5497,5422,5472,5529,5581,5622,
+5641,5675,5730,5760,5811,5828,5862,5881,5801,5777,5769,5778,5758,5678,5706,5694,5656,5664,5687,5655,
+5631,5422,5058,4802,4742,4748,4812,4992,5043,5198,5413,5721,5950,5991,5911,5964,5980,6134,6480,6705,
+6802,6818,6808,6785,6803,6856,6910,6977,7014,7033,7049,7080,7136,7209,7309,7420,7531,7617,7734,8011,
+8133,7991,7994,8003,8053,8138,8150,8144,8096,8078,8004,7884,7739,7626,7558,7526,7458,7339,7222,7074,
+7020,7153,7152,7136,7228,7281,7343,7466,7564,7666,7773,7863,7911,7983,8010,8039,8069,8097,8119,8085,
+8069,8038,7986,7928,7886,7870,7817,7760,7642,7223,6526,6313,6160,5653,5472,5620,5988,6452,6602,6407,
+6290,6457,6580,6574,6607,6625,6641,6654,6658,6550,6445,6350,6269,6206,6156,6114,6078,6057,6012,5937,
+5882,5820,5750,5681,5625,5569,5502,5434,5383,5312,5241,5189,5141,5075,5050,5029,4965,4899,4812,4778,
+4709,4632,4584,4546,4492,4448,4416,4406,4353,4328,4293,4244,4197,4166,4141,4113,4087,4049,4015,3986,
+3939,3872,3804,3743,3691,3650,3610,3562,3504,3449,3409,3380,3348,3301,3257,3231,3202,3176,3139,3097,
+3042,3005,2960,2915,2896,2869,2929,2874,2786,2770,2782,2770,2729,2667,2614,2592,2634,2542,2503,2474,
+2438,2397,2350,2302,2250,2207,2174,2151,2135,2113,2089,2073,2073,2048,2021,1993,1961,1925,1892,1874,
+1857,1913,2063,1901,1802,1763,1764,1797,1816,1832,1880,1946,1899,1812,1768,1758,1727,1691,1672,1662,
+1673,1655,1670,1676,1680,1672,1663,1683,1702,1700,1707,1713,1700,1683,1693,1677,1696,1733,1712,1672,
+1767,1726,1705,1720,1634,1679,1643,1609,1588,1574,1559,1512,1507,1492,1472,1447,1431,1435,1435,1413,
+1402,1401,1394,1382,1368,1356,1332,1315,1312,1306,1302,1306,1308,1297,1301,1303,1296,1291,1275,1269,
+1269,1258,1250,1248,1256,1245,1253,1253,1199,1161,1138,1133,1141,1151,1155,1150,1134,1115,1097,1078,
+1050,1036,1019,995,985,954,932,914,888,879,863,862,856,833,798,736,697,669,640,610,
+593,579,566,553,516,492,466,436,412,394,376,350,325,306,281,252,223,195,169,138,
+104,72,44,18,-1,-24,-48,-81,-106,-144,-178,-210,-249,-281,-315,-344,-386,-420,-455,-492,
+-519,-544,-571,-588,-605,-628,-652,-673,-698,-721,-745,-769,-801,-827,-859,-887,-905,-922,-940,-966,
+-997,-1020,-1042,-1068,-1081,-1095,-1113,-1137,-1166,-1192,-1206,-1214,-1224,-1239,-1264,-1294,-1315,-1331,-1346,-1359,
+-1381,-1403,-1421,-1433,-1442,-1452,-1466,-1487,-1499,-1503,-1513,-1521,-1530,-1540,-1556,-1572,-1590,-1605,-1619,-1635,
+-1649,-1664,-1678,-1686,-1689,-1690,-1691,-1693,-1695,-1689,-1684,-1681,-1679,-1678,-1682,-1682,-1684,-1682,-1680,-1672,
+-1669,-1662,-1648,-1639,-1634,-1629,-1620,-1605,-1586,-1583,-1577,-1574,-1570,-1558,-1546,-1520,-1522,-1488,-1468,-1458,
+-1453,-1442,-1432,-1426,-1419,-1421,-1411,-1400,-1402,-1402,-1393,-1389,-1379,-1372,-1364,-1365,-1368,-1367,-1369,-1372,
+-1367,-1367,-1378,-1382,-1389,-1392,-1387,-1395,-1398,-1397,-1396,-1392,-1387,-1382,-1376,-1390,-1391,-1402,-1410,-1430,
+-1428,-1419,-1413,-1402,-1391,-1388,-1385,-1388,-1389,-1386,-1386,-1385,-1381,-1378,-1376,-1370,-1365,-1360,-1356,-1353,
+-1348,-1336,-1326,-1319,-1304,-1295,-1278,-1271,-1253,-1237,-1220,-1201,-1184,-1164,-1143,-1119,-1095,-1069,-1046,-1017,
+-988,-956,-935,-903,-876,-845,-811,-775,-737,-692,-654,-613,-566,-521,-473,-430,-382,-331,-281,-241,
+-189,-165,-131,-80,-19,32,74,115,109,107,58,-54,-173,-48,353,801,1086,1249,1401,1560,
+1837,1923,1984,1867,1636,1419,1176,1030,981,1046,962,902,874,868,877,912,968,1031,1106,1192,
+1303,1433,1560,1672,1774,1859,1924,1983,2028,2056,2049,2044,2056,2086,2120,2142,2116,2058,1992,1930,
+1898,1883,1883,1874,1810,1704,1597,1503,1426,1365,1296,1228,1164,1098,1032,974,936,890,814,705,
+583,418,225,51,-73,-188,-291,-371,-424,-473,-504,-521,-522,-522,-546,-590,-629,-651,-666,-688,
+-774,-869,-937,-1003,-1067,-1155,-1244,-1332,-1405,-1469,-1538,-1596,-1652,-1714,-1778,-1832,-1890,-1966,-2020,-2061,
+-2081,-2088,-2100,-2135,-2197,-2269,-2304,-2317,-2332,-2340,-2326,-2307,-2274,-2242,-2211,-2189,-2161,-2138,-2117,-2129,
+-2168,-2228,-2328,-2437,-2480,-2433,-2392,-2404,-2420,-2425,-2486,-2567,-2647,-2686,-2721,-2696,-2668,-2637,-2654,-2660,
+-2655,-2628,-2571,-2513,-2459,-2372,-2317,-2263,-2204,-2153,-2094,-2034,-1947,-1832,-1725,-1635,-1521,-1491,-1458,-1341,
+-1199,-1120,-1049,-993,-942,-879,-826,-801,-804,-779,-783,-774,-744,-714,-706,-738,-754,-686,-631,-640,
+-720,-847,-855,-835,-821,-817,-805,-790,-777,-762,-741,-717,-701,-690,-683,-655,-613,-562,-542,-508,
+-475,-451,-438,-435,-426,-417,-408,-387,-372,-356,-329,-307,-277,-250,-221,-186,-151,-129,-110,-90,
+-72,-44,-13,2,29,65,108,135,185,242,271,309,353,392,432,487,527,566,611,657,
+713,768,814,862,906,953,994,1031,1081,1133,1178,1209,1272,1312,1353,1396,1436,1468,1501,1524,
+1548,1554,1579,1613,1648,1665,1712,1763,1805,1838,1825,1878,1881,1874,1863,1839,1825,1832,1836,1851,
+1861,1857,1868,1859,1849,1841,1805,1806,1822,1811,1790,1790,1788,1780,1762,1751,1747,1746,1741,1732,
+1728,1721,1715,1716,1719,1730,1741,1736,1724,1738,1733,1742,1740,1736,1734,1739,1759,1730,1722,1707,
+1715,1709,1663,1623,1578,1541,1524,1452,1385,1335,1299,1266,1218,1175,1129,1131,1093,1013,1003,984,
+964,940,918,901,883,862,840,818,795,773,761,758,753,752,746,733,732,732,723,692,
+636,569,512,489,500,544,623,624,523,451,395,374,415,393,395,383,353,317,302,305,
+299,296,280,232,202,149,94,34,-27,-143,-239,-336,-412,-468,-505,-587,-672,-723,-785,-805,
+-850,-912,-982,-1041,-1066,-1112,-1184,-1244,-1293,-1335,-1378,-1417,-1460,-1511,-1560,-1584,-1577,-1576,-1586,-1608,
+-1620,-1638,-1650,-1658,-1664,-1651,-1642,-1646,-1643,-1646,-1623,-1599,-1570,-1523,-1468,-1422,-1326,-1213,-1413,-1492,
+-1491,-1470,-1446,-1444,-1425,-1430,-1423,-1403,-1422,-1508,-1633,-1731,-1792,-1816,-1852,-1896,-1948,-1989,-1982,-1932,
+-1876,-1900,-1929,-1939,-1929,-1885,-1856,-1826,-1837,-1851,-1900,-2016,-2175,-2287,-2300,-2288,-2410,-2622,-2862,-2972,
+-2894,-2999,-3187,-3287,-3372,-3430,-3477,-3556,-3657,-3759,-3799,-3846,-3896,-3948,-3986,-4012,-4027,-4048,-4080,-4112,
+-4144,-4163,-4169,-4170,-4177,-4182,-4207,-4228,-4251,-4270,-4272,-4260,-4269,-4307,-4334,-4332,-4310,-4317,-4317,-4302,
+-4291,-4280,-4259,-4249,-4229,-4207,-4201,-4181,-4194,-4191,-4195,-4185,-4174,-4239,-4025,-4163,-4342,-4360,-4312,-4238,
+-4122,-4062,-4077,-4094,-4090,-4116,-4190,-4209,-4238,-4441,-4580,-4678,-4777,-4854,-4920,-4985,-5042,-5110,-5175,-5234,
+-5308,-5366,-5425,-5480,-5540,-5605,-5675,-5739,-5805,-5883,-5929,-5987,-6054,-6137,-6201,-6275,-6341,-6386,-6468,-6543,
+-6595,-6643,-6678,-6729,-6790,-6830,-6916,-6959,-7005,-7029,-7090,-7174,-7181,-7160,-7266,-7367,-7388,-7456,-7541,-7657,
+-7738,-7818,-7909,-8002,-8068,-8128,-8160,-8168,-8152,-8099,-8052,-8140,-8244,-8331,-8401,-8520,-8703,-8875,-8874,-8898,
+-8954,-8992,-9029,-9050,-9071,-9099,-9111,-9105,-9117,-9126,-9131,-9140,-9146,-9161,-9194,-9240,-9278,-9295,-9294,-9275,
+-9267,-9275,-9279,-9268,-9217,-9150,-9060,-8971,-8895,-8828,-8763,-8671,-8625,-8652,-8697,-8708,-8683,-8615,-8531,-8448,
+-8385,-8306,-8203,-8079,-7945,-7841,-7768,-7701,-7639,-7574,-7501,-7417,-7310,-7198,-7077,-6943,-6828,-6709,-6596,-6540,
+-6486,-6421,-6335,-6233,-6134,-6021,-5897,-5777,-5660,-5565,-5442,-5307,-5164,-4983,-4898,-4760,-4640,-4546,-4456,-4343,
+-4245,-4133,-3981,-3805,-3624,-3479,-3370,-3270,-3152,-2972,-2798,-2653,-2564,-2413,-2236,-2096,-1991,-1905,-1848,-1834,
+-1830,-1837,-1859,-1846,-1686,-1455,-1309,-1112,-947,-871,-793,-694,-547,-346,-138,165,544,893,1096,1227,
+1285,1367,1466,1535,1626,1684,1767,1841,1936,2013,2090,2169,2249,2327,2388,2435,2488,2546,2625,2704,
+2780,2849,2910,2978,3035,3116,3190,3242,3278,3350,3456,3533,3601,3669,3763,3814,3891,3967,4049,4120,
+4181,4285,4385,4457,4487,4519,4567,4625,4681,4733,4709,4680,4738,4751,4782,4862,4947,5102,5265,5379,
+5520,5550,5500,5485,5419,5279,5354,5556,5589,5635,5664,5685,5690,5632,5556,5486,5490,5520,5498,5491,
+5538,5599,5698,5715,5725,5725,5751,5737,5742,5734,5756,5769,5750,5700,5664,5655,5595,5582,5558,5539,
+5491,5402,5233,4911,4487,4314,4327,4451,4690,4907,5101,5382,5676,5880,5877,5771,5751,5771,6014,6423,
+6685,6772,6766,6728,6707,6754,6820,6879,6927,6970,6986,6969,6984,7022,7075,7129,7185,7276,7375,7488,
+7612,7736,7796,7940,7951,8216,8312,8241,8254,8211,8242,8193,8159,8090,8017,7888,7795,7751,7701,7505,
+7256,7023,6917,6959,6857,6803,6900,7033,7213,7388,7511,7623,7709,7805,7901,7987,8001,8029,8046,8064,
+8113,8161,8129,8026,7986,7986,7984,7915,7745,7371,6780,6163,6006,5875,5599,5433,5577,5895,6335,6732,
+6539,6307,6329,6450,6541,6613,6637,6643,6633,6606,6531,6441,6351,6282,6229,6185,6149,6127,6153,6091,
+6003,5946,5886,5817,5760,5704,5641,5580,5525,5480,5389,5297,5241,5200,5132,5068,5045,5004,4937,4867,
+4825,4746,4670,4642,4598,4522,4476,4446,4410,4367,4340,4313,4274,4233,4195,4174,4145,4106,4075,4037,
+4001,3959,3901,3837,3778,3722,3674,3632,3582,3522,3474,3437,3414,3386,3353,3332,3325,3301,3265,3229,
+3183,3130,3083,3034,2996,2972,2919,2926,2898,2829,2798,2798,2771,2729,2671,2622,2586,2570,2555,2520,
+2487,2454,2421,2380,2343,2301,2259,2222,2184,2159,2144,2128,2101,2058,2028,1995,1969,1943,1912,1898,
+1884,1869,1874,1889,1846,1812,1774,1781,1819,1831,1829,1836,1837,1814,1789,1747,1731,1728,1719,1686,
+1665,1655,1659,1685,1672,1686,1693,1696,1677,1693,1707,1713,1720,1722,1695,1695,1687,1674,1695,1697,
+1668,1759,1713,1707,1708,1651,1672,1695,1721,1694,1550,1504,1501,1512,1493,1465,1450,1455,1447,1439,
+1423,1403,1382,1358,1333,1318,1328,1324,1334,1317,1306,1297,1296,1281,1279,1274,1278,1283,1277,1254,
+1256,1262,1227,1216,1209,1215,1212,1187,1234,1206,1161,1116,1098,1091,1099,1102,1135,1088,1062,1047,
+1035,1011,999,995,967,947,923,892,872,854,831,812,806,788,754,730,704,668,651,625,
+615,604,568,551,525,500,475,443,413,388,367,351,331,309,290,275,247,213,186,163,
+136,108,82,58,29,5,-19,-51,-81,-112,-140,-171,-207,-239,-271,-303,-336,-374,-410,-445,
+-477,-511,-545,-573,-591,-609,-632,-654,-677,-700,-718,-739,-763,-793,-821,-845,-869,-888,-907,-927,
+-952,-980,-1004,-1022,-1039,-1055,-1069,-1095,-1114,-1143,-1176,-1193,-1208,-1224,-1239,-1258,-1277,-1301,-1314,-1330,
+-1345,-1364,-1391,-1406,-1417,-1425,-1434,-1446,-1459,-1469,-1474,-1479,-1489,-1501,-1515,-1532,-1545,-1562,-1573,-1587,
+-1603,-1620,-1632,-1643,-1652,-1661,-1662,-1664,-1660,-1657,-1653,-1648,-1644,-1645,-1644,-1646,-1647,-1648,-1647,-1646,
+-1641,-1633,-1626,-1616,-1604,-1600,-1597,-1590,-1580,-1560,-1550,-1546,-1539,-1538,-1525,-1500,-1485,-1472,-1442,-1432,
+-1419,-1421,-1408,-1399,-1394,-1384,-1381,-1372,-1362,-1376,-1366,-1355,-1347,-1344,-1342,-1329,-1336,-1338,-1338,-1341,
+-1343,-1342,-1346,-1351,-1356,-1360,-1353,-1372,-1377,-1377,-1384,-1385,-1386,-1397,-1400,-1399,-1384,-1383,-1390,-1402,
+-1413,-1412,-1407,-1396,-1401,-1400,-1381,-1380,-1375,-1388,-1383,-1383,-1385,-1385,-1379,-1376,-1370,-1370,-1366,-1361,
+-1358,-1349,-1339,-1332,-1323,-1317,-1301,-1288,-1275,-1263,-1245,-1228,-1212,-1196,-1175,-1156,-1131,-1109,-1082,-1060,
+-1036,-1006,-972,-946,-916,-892,-857,-822,-793,-744,-710,-672,-631,-586,-538,-487,-440,-391,-342,-296,
+-261,-229,-181,-128,-73,-27,12,52,79,112,81,7,-98,-208,-76,322,778,1054,1187,1328,
+1453,1711,1952,2051,1958,1709,1513,1238,1068,1058,1171,1090,969,901,879,880,900,934,990,1071,
+1173,1293,1422,1549,1658,1757,1845,1916,1964,2012,2051,2076,2095,2112,2128,2153,2169,2159,2122,2060,
+2000,1959,1944,1946,1929,1857,1759,1662,1571,1498,1434,1370,1304,1231,1162,1095,1037,990,930,845,
+736,605,451,291,141,13,-108,-221,-300,-357,-387,-401,-428,-463,-497,-538,-586,-630,-671,-703,
+-727,-792,-890,-967,-1043,-1109,-1187,-1259,-1314,-1365,-1403,-1463,-1503,-1555,-1610,-1675,-1746,-1827,-1902,-1974,
+-2019,-2057,-2089,-2116,-2143,-2187,-2239,-2260,-2273,-2282,-2281,-2280,-2268,-2239,-2199,-2169,-2145,-2123,-2092,-2069,
+-2080,-2108,-2155,-2240,-2358,-2429,-2413,-2378,-2402,-2426,-2436,-2476,-2542,-2607,-2655,-2670,-2667,-2657,-2624,-2608,
+-2613,-2626,-2587,-2529,-2475,-2425,-2355,-2296,-2249,-2196,-2150,-2093,-2026,-1942,-1842,-1737,-1638,-1524,-1476,-1412,
+-1299,-1194,-1126,-1054,-986,-926,-870,-825,-797,-787,-765,-756,-741,-696,-675,-636,-608,-588,-565,-536,
+-538,-605,-716,-826,-823,-823,-830,-814,-803,-795,-781,-764,-744,-725,-707,-685,-661,-628,-602,-556,
+-539,-512,-495,-483,-475,-471,-460,-448,-432,-414,-387,-364,-344,-317,-290,-245,-211,-173,-165,-121,
+-118,-107,-72,-43,-18,14,55,92,127,173,214,256,284,330,346,382,442,488,535,572,
+617,671,731,776,828,888,934,985,1023,1070,1120,1170,1211,1257,1300,1340,1386,1408,1451,1471,
+1477,1504,1540,1573,1600,1627,1646,1688,1722,1757,1783,1771,1790,1830,1840,1821,1840,1862,1869,1857,
+1849,1853,1838,1833,1835,1822,1816,1819,1788,1784,1791,1775,1770,1748,1750,1752,1731,1735,1723,1716,
+1715,1710,1705,1689,1698,1705,1705,1696,1672,1668,1663,1663,1673,1707,1736,1745,1759,1756,1752,1733,
+1724,1709,1680,1633,1611,1562,1561,1480,1447,1409,1300,1254,1342,1218,1139,1076,1056,1017,1019,1025,
+986,1019,918,899,890,874,851,824,801,780,764,751,744,741,744,741,736,738,753,756,
+751,731,675,611,575,576,608,656,696,653,576,516,441,436,425,399,370,343,326,339,
+361,356,371,366,335,305,227,144,61,16,-60,-110,-191,-257,-340,-415,-514,-581,-638,-668,
+-693,-735,-794,-862,-919,-988,-1047,-1098,-1164,-1208,-1261,-1313,-1348,-1385,-1434,-1489,-1530,-1550,-1578,-1562,
+-1542,-1540,-1567,-1597,-1605,-1620,-1612,-1595,-1598,-1607,-1623,-1616,-1604,-1568,-1518,-1490,-1437,-1369,-1295,-1427,
+-1504,-1525,-1500,-1431,-1412,-1403,-1405,-1407,-1393,-1406,-1485,-1607,-1718,-1787,-1815,-1838,-1881,-1919,-1967,-1971,
+-1941,-1906,-1925,-1975,-1994,-1969,-1894,-1843,-1782,-1804,-1817,-1857,-1988,-2147,-2272,-2350,-2396,-2492,-2708,-2947,
+-2962,-2849,-2999,-3179,-3288,-3369,-3443,-3516,-3592,-3688,-3764,-3789,-3832,-3879,-3929,-3961,-3982,-4000,-4021,-4052,
+-4078,-4113,-4126,-4130,-4138,-4155,-4167,-4178,-4196,-4210,-4232,-4228,-4231,-4246,-4272,-4285,-4295,-4264,-4269,-4273,
+-4251,-4242,-4228,-4225,-4205,-4191,-4177,-4150,-4142,-4128,-4132,-4138,-4141,-4179,-4224,-3932,-4141,-4296,-4326,-4318,
+-4269,-4238,-4248,-4215,-4117,-4089,-4082,-4160,-4193,-4233,-4294,-4472,-4584,-4685,-4780,-4857,-4925,-4979,-5037,-5097,
+-5157,-5235,-5308,-5367,-5405,-5474,-5547,-5623,-5685,-5758,-5826,-5855,-5924,-5996,-6065,-6130,-6209,-6273,-6355,-6414,
+-6479,-6540,-6587,-6624,-6656,-6717,-6808,-6847,-6866,-6932,-6965,-7069,-7043,-7056,-7141,-7182,-7280,-7352,-7362,-7471,
+-7587,-7664,-7754,-7859,-7929,-7995,-8014,-8023,-8011,-7899,-7921,-7989,-8098,-8200,-8278,-8373,-8492,-8711,-8807,-8790,
+-8839,-8893,-8937,-8975,-8999,-9023,-9046,-9067,-9067,-9071,-9077,-9081,-9087,-9097,-9119,-9165,-9204,-9233,-9234,-9227,
+-9212,-9214,-9220,-9212,-9198,-9155,-9104,-9037,-8957,-8875,-8803,-8731,-8641,-8611,-8639,-8686,-8694,-8657,-8585,-8490,
+-8403,-8327,-8257,-8145,-8022,-7905,-7807,-7733,-7668,-7604,-7534,-7464,-7378,-7278,-7177,-7059,-6936,-6812,-6690,-6576,
+-6519,-6462,-6395,-6331,-6242,-6142,-6037,-5920,-5794,-5651,-5534,-5426,-5305,-5148,-5012,-4954,-4828,-4719,-4622,-4517,
+-4404,-4326,-4196,-4013,-3799,-3597,-3504,-3432,-3326,-3164,-2962,-2817,-2681,-2606,-2481,-2304,-2163,-2057,-1959,-1874,
+-1828,-1792,-1792,-1812,-1829,-1767,-1558,-1376,-1234,-1023,-811,-730,-766,-751,-651,-507,-250,129,552,888,
+1110,1218,1300,1401,1515,1594,1654,1731,1805,1917,1979,2056,2131,2216,2278,2328,2386,2476,2552,2629,
+2700,2760,2829,2878,2935,3008,3087,3138,3188,3247,3332,3419,3485,3539,3607,3679,3745,3820,3905,3982,
+4065,4160,4229,4283,4350,4396,4427,4490,4546,4608,4636,4631,4684,4786,4786,4811,4857,4934,5056,5189,
+5288,5450,5569,5387,5243,5183,5190,5222,5400,5532,5595,5562,5593,5623,5635,5551,5581,5552,5600,5672,
+5553,5475,5575,5608,5637,5643,5669,5688,5714,5728,5731,5771,5740,5748,5706,5755,5666,5565,5537,5490,
+5448,5395,5324,5182,4768,4260,3973,3963,4108,4358,4769,5023,5329,5648,5916,5922,5772,5571,5634,5998,
+6454,6662,6737,6730,6704,6706,6775,6834,6876,6919,6947,6999,7011,6994,6984,7019,7062,7110,7187,7290,
+7388,7479,7578,7655,7744,7826,7956,8076,8236,8313,8281,8186,8184,8248,8264,8287,8276,8113,8034,7864,
+7877,7611,7273,6933,6772,6731,6618,6651,6739,6927,7229,7367,7475,7591,7673,7782,7915,7960,7979,8009,
+8066,8145,8231,8173,8115,8043,8061,8099,7918,7655,7257,6475,5944,5786,5721,5585,5482,5732,5992,6305,
+6793,6761,6437,6308,6353,6475,6574,6614,6606,6575,6530,6462,6384,6313,6254,6213,6180,6151,6153,6275,
+6182,6073,6002,5947,5879,5817,5763,5702,5644,5594,5540,5440,5362,5302,5240,5178,5121,5047,4995,4963,
+4915,4854,4798,4747,4698,4656,4600,4542,4483,4431,4387,4355,4331,4309,4270,4238,4204,4166,4127,4099,
+4059,4010,3969,3925,3873,3816,3757,3700,3656,3607,3555,3513,3482,3461,3449,3432,3407,3374,3337,3296,
+3251,3211,3188,3145,3078,3040,3006,2989,3058,2928,2842,2807,2793,2772,2737,2685,2635,2596,2578,2641,
+2578,2521,2484,2453,2415,2379,2340,2296,2243,2203,2172,2154,2127,2090,2068,2038,1993,1998,1998,1954,
+1924,1918,1941,1893,1848,1854,1917,1857,1824,1818,1807,1805,1806,1798,1787,1773,1760,1751,1738,1719,
+1702,1700,1695,1702,1710,1695,1685,1691,1703,1703,1699,1720,1725,1722,1725,1715,1719,1685,1677,1668,
+1664,1652,1729,1696,1709,1701,1626,1600,1675,1719,1607,1589,1518,1517,1513,1471,1452,1447,1448,1440,
+1429,1406,1384,1396,1405,1407,1390,1320,1272,1273,1273,1281,1282,1276,1265,1258,1252,1257,1269,1247,
+1225,1213,1198,1177,1155,1131,1132,1146,1140,1169,1184,1162,1114,1076,1063,1055,1065,1064,1049,1035,
+1029,1013,992,975,960,944,918,877,848,824,798,775,756,736,734,739,734,706,688,639,
+610,590,576,565,543,514,480,454,426,394,367,350,338,323,302,280,256,230,201,182,
+158,134,106,83,61,28,7,-24,-51,-93,-110,-141,-165,-200,-242,-269,-303,-334,-367,-399,
+-432,-462,-500,-538,-561,-583,-607,-630,-650,-673,-697,-716,-738,-760,-789,-818,-840,-861,-880,-893,
+-914,-935,-958,-980,-1009,-1025,-1040,-1060,-1081,-1104,-1131,-1165,-1187,-1201,-1214,-1239,-1250,-1279,-1305,-1323,
+-1317,-1337,-1359,-1383,-1399,-1408,-1414,-1421,-1427,-1437,-1444,-1447,-1456,-1465,-1477,-1493,-1511,-1524,-1538,-1545,
+-1557,-1571,-1587,-1600,-1612,-1621,-1633,-1635,-1635,-1634,-1634,-1626,-1618,-1616,-1620,-1623,-1625,-1624,-1621,-1619,
+-1617,-1614,-1599,-1592,-1586,-1578,-1571,-1566,-1559,-1549,-1536,-1523,-1519,-1507,-1493,-1480,-1473,-1447,-1433,-1424,
+-1405,-1388,-1381,-1377,-1367,-1358,-1351,-1348,-1352,-1339,-1335,-1332,-1331,-1327,-1325,-1320,-1304,-1315,-1314,-1317,
+-1322,-1326,-1328,-1333,-1343,-1343,-1344,-1337,-1335,-1337,-1347,-1362,-1374,-1385,-1402,-1400,-1415,-1407,-1384,-1380,
+-1404,-1404,-1395,-1394,-1396,-1394,-1385,-1392,-1395,-1385,-1376,-1382,-1381,-1381,-1383,-1379,-1377,-1373,-1370,-1367,
+-1362,-1355,-1350,-1341,-1336,-1329,-1320,-1307,-1291,-1282,-1270,-1253,-1235,-1221,-1202,-1185,-1163,-1144,-1120,-1100,
+-1077,-1045,-1016,-983,-949,-934,-907,-875,-838,-801,-765,-724,-683,-639,-596,-544,-495,-448,-404,-369,
+-333,-285,-234,-177,-122,-83,-46,-5,44,91,59,37,-13,-110,-224,-94,298,790,1069,1119,
+1199,1272,1389,1613,1936,2038,1865,1573,1359,1179,1229,1307,1266,1129,989,924,912,918,932,984,
+1063,1159,1281,1406,1532,1643,1746,1839,1904,1938,1998,2066,2125,2161,2179,2189,2195,2198,2201,2186,
+2141,2085,2044,2032,2027,1993,1903,1817,1726,1646,1574,1503,1420,1353,1292,1221,1152,1092,1034,962,
+867,749,625,492,364,233,93,-35,-150,-227,-274,-297,-309,-337,-380,-436,-505,-568,-626,-682,
+-718,-751,-811,-873,-949,-1015,-1087,-1165,-1228,-1261,-1290,-1317,-1364,-1402,-1449,-1491,-1557,-1646,-1751,-1839,
+-1910,-1970,-2023,-2082,-2130,-2160,-2189,-2209,-2226,-2235,-2240,-2239,-2240,-2235,-2206,-2166,-2130,-2108,-2086,-2053,
+-2032,-2040,-2055,-2086,-2181,-2311,-2395,-2422,-2410,-2422,-2460,-2477,-2487,-2522,-2575,-2615,-2629,-2644,-2652,-2618,
+-2575,-2578,-2580,-2536,-2483,-2432,-2393,-2334,-2266,-2225,-2180,-2144,-2093,-2026,-1926,-1825,-1705,-1588,-1471,-1440,
+-1389,-1292,-1183,-1112,-1064,-1008,-952,-899,-844,-809,-770,-743,-717,-702,-661,-644,-606,-572,-565,-551,
+-513,-520,-559,-679,-800,-811,-814,-818,-808,-803,-797,-792,-783,-760,-742,-721,-697,-675,-655,-639,
+-614,-591,-557,-537,-525,-519,-517,-505,-490,-472,-453,-425,-399,-378,-349,-328,-293,-224,-209,-190,
+-172,-140,-109,-76,-62,-34,-10,30,70,108,162,197,234,269,293,357,414,444,484,529,
+568,610,656,704,757,805,853,907,963,1011,1058,1106,1158,1211,1252,1284,1314,1340,1361,1393,
+1427,1445,1481,1509,1539,1571,1600,1630,1660,1677,1687,1706,1744,1785,1819,1863,1836,1881,1882,1852,
+1841,1828,1828,1822,1814,1810,1802,1798,1791,1789,1781,1750,1746,1741,1751,1736,1726,1702,1681,1668,
+1667,1676,1664,1641,1615,1604,1605,1590,1601,1604,1613,1635,1648,1681,1704,1726,1762,1771,1763,1754,
+1739,1714,1680,1673,1652,1702,1585,1536,1599,1479,1449,1297,1224,1229,1170,1121,1080,1028,992,982,
+959,935,924,898,886,876,860,832,802,785,766,750,740,736,735,738,733,733,738,751,
+761,778,785,751,713,676,675,707,757,814,816,744,658,579,522,476,434,376,350,345,
+363,375,389,441,438,431,405,317,222,129,87,22,-3,-58,-115,-220,-331,-421,-471,-536,
+-572,-598,-646,-714,-770,-800,-860,-942,-966,-1049,-1097,-1148,-1198,-1244,-1300,-1358,-1443,-1507,-1538,-1574,
+-1550,-1497,-1475,-1495,-1518,-1534,-1545,-1541,-1531,-1539,-1550,-1585,-1592,-1593,-1579,-1531,-1488,-1417,-1360,-1291,
+-1361,-1490,-1522,-1504,-1454,-1387,-1361,-1383,-1405,-1406,-1410,-1483,-1598,-1705,-1767,-1792,-1823,-1845,-1881,-1917,
+-1941,-1937,-1934,-1966,-2022,-2039,-1983,-1921,-1847,-1782,-1804,-1809,-1868,-1997,-2144,-2261,-2351,-2436,-2626,-2812,
+-2937,-2957,-2920,-3058,-3197,-3300,-3378,-3457,-3539,-3621,-3708,-3771,-3782,-3812,-3852,-3902,-3931,-3950,-3966,-3991,
+-4019,-4046,-4078,-4090,-4095,-4109,-4133,-4151,-4164,-4169,-4174,-4204,-4198,-4200,-4212,-4218,-4208,-4246,-4231,-4215,
+-4224,-4196,-4180,-4169,-4164,-4163,-4150,-4128,-4117,-4096,-4088,-4084,-4086,-4132,-4233,-4069,-3828,-3967,-4117,-4254,
+-4259,-4267,-4294,-4327,-4284,-4278,-4322,-4295,-4181,-4166,-4221,-4319,-4442,-4494,-4582,-4691,-4777,-4863,-4920,-4974,
+-5027,-5094,-5167,-5240,-5314,-5369,-5422,-5482,-5555,-5636,-5711,-5748,-5790,-5862,-5930,-5999,-6067,-6152,-6222,-6267,
+-6320,-6389,-6453,-6497,-6546,-6617,-6697,-6716,-6775,-6829,-6862,-6940,-6949,-6964,-7031,-7072,-7096,-7189,-7243,-7313,
+-7415,-7516,-7590,-7711,-7784,-7863,-7912,-7927,-7906,-7845,-7821,-7883,-7931,-8065,-8193,-8249,-8343,-8455,-8677,-8729,
+-8722,-8779,-8827,-8875,-8913,-8941,-8964,-8981,-8991,-8985,-8986,-8998,-9008,-9024,-9044,-9075,-9105,-9130,-9150,-9152,
+-9141,-9131,-9136,-9133,-9127,-9113,-9074,-9029,-8965,-8890,-8814,-8754,-8707,-8658,-8643,-8659,-8676,-8657,-8607,-8545,
+-8467,-8384,-8293,-8207,-8085,-7963,-7850,-7761,-7690,-7633,-7573,-7507,-7433,-7351,-7259,-7156,-7033,-6910,-6784,-6661,
+-6546,-6461,-6404,-6359,-6314,-6245,-6146,-6052,-5936,-5813,-5659,-5517,-5417,-5270,-5143,-5031,-4991,-4877,-4790,-4692,
+-4572,-4462,-4374,-4229,-4052,-3812,-3614,-3574,-3508,-3373,-3193,-3007,-2881,-2754,-2686,-2567,-2386,-2246,-2137,-2031,
+-1910,-1817,-1758,-1747,-1745,-1759,-1764,-1659,-1453,-1284,-1147,-923,-740,-747,-854,-866,-797,-590,-235,233,
+617,864,1058,1231,1313,1432,1534,1614,1688,1784,1872,1933,2013,2077,2182,2243,2305,2388,2461,2525,
+2589,2647,2716,2790,2851,2916,2990,3055,3105,3162,3228,3294,3355,3419,3486,3557,3616,3676,3753,3827,
+3909,3993,4085,4142,4207,4271,4313,4351,4412,4470,4525,4534,4603,4694,4755,4787,4788,4811,4835,4948,
+5088,5207,5327,5378,5299,5070,5021,5066,5121,5246,5427,5482,5458,5511,5573,5450,5452,5556,5600,5606,
+5624,5656,5602,5568,5581,5573,5566,5584,5594,5606,5633,5674,5685,5766,5757,5647,5604,5543,5487,5463,
+5425,5370,5309,5218,5094,4709,4100,3730,3712,3842,4134,4633,4945,5267,5608,5912,5871,5630,5420,5640,
+6158,6378,6644,6711,6719,6706,6725,6795,6834,6867,6925,6967,7005,7023,7018,6981,7000,7031,7076,7153,
+7247,7340,7422,7497,7553,7617,7661,7690,7736,7869,8024,8049,8187,8265,8286,8370,8397,8363,8319,8197,
+8136,7973,7881,7621,7240,6967,6855,6806,6746,6693,6768,6973,7131,7263,7536,7657,7731,7963,8052,8090,
+8051,8116,8222,8267,8211,8169,8113,8127,8105,7631,7203,6805,6222,5771,5612,5582,5546,5491,5801,6190,
+6391,6742,6937,6742,6471,6374,6410,6508,6558,6548,6503,6447,6377,6300,6236,6187,6155,6135,6130,6142,
+6209,6218,6117,6021,5981,5937,5870,5793,5718,5661,5616,5553,5482,5436,5377,5317,5255,5186,5114,5034,
+4976,4929,4879,4838,4793,4755,4707,4647,4590,4534,4506,4460,4392,4367,4348,4316,4278,4241,4197,4157,
+4123,4085,4038,3988,3940,3899,3850,3804,3737,3686,3641,3599,3575,3559,3543,3514,3471,3432,3392,3354,
+3316,3278,3244,3222,3197,3171,3173,3168,3077,2998,2967,2876,2854,2830,2807,2774,2722,2658,2611,2595,
+2624,2730,2588,2499,2449,2408,2373,2337,2302,2271,2233,2208,2168,2147,2117,2100,2075,2034,2011,2050,
+1971,1934,1909,1911,1901,1863,1902,2038,1966,1840,1804,1792,1794,1803,1806,1813,1807,1789,1771,1747,
+1725,1715,1785,1725,1689,1692,1698,1692,1712,1697,1703,1699,1724,1745,1744,1735,1758,1754,1727,1675,
+1627,1629,1642,1705,1679,1730,1656,1605,1567,1540,1548,1535,1536,1504,1499,1480,1450,1458,1450,1460,
+1448,1424,1436,1430,1368,1336,1309,1279,1263,1257,1248,1252,1254,1259,1245,1228,1223,1215,1231,1315,
+1273,1201,1218,1165,1150,1145,1137,1131,1139,1143,1124,1113,1166,1125,1073,1054,1047,1049,1048,1035,
+1018,1017,1016,990,949,905,862,830,813,791,772,757,737,740,730,706,684,666,657,634,
+607,587,570,555,539,520,494,466,437,409,383,359,339,324,309,288,266,238,208,183,
+161,140,119,102,85,59,34,10,-21,-49,-88,-109,-138,-165,-206,-248,-276,-306,-334,-359,
+-388,-421,-454,-497,-529,-558,-583,-610,-630,-653,-676,-698,-719,-740,-757,-784,-814,-841,-867,-884,
+-899,-911,-927,-944,-963,-986,-1007,-1025,-1051,-1076,-1098,-1124,-1151,-1172,-1183,-1195,-1224,-1253,-1267,-1284,
+-1292,-1306,-1329,-1347,-1375,-1395,-1406,-1413,-1417,-1419,-1428,-1434,-1437,-1444,-1450,-1460,-1472,-1489,-1500,-1512,
+-1522,-1531,-1544,-1558,-1566,-1579,-1591,-1601,-1602,-1601,-1609,-1620,-1619,-1604,-1593,-1593,-1597,-1599,-1598,-1593,
+-1589,-1587,-1585,-1572,-1559,-1555,-1546,-1540,-1534,-1526,-1520,-1511,-1500,-1497,-1480,-1456,-1452,-1435,-1408,-1399,
+-1392,-1382,-1362,-1350,-1344,-1339,-1334,-1326,-1328,-1323,-1325,-1314,-1306,-1300,-1299,-1298,-1288,-1286,-1290,-1291,
+-1294,-1298,-1304,-1308,-1307,-1316,-1323,-1330,-1335,-1334,-1332,-1343,-1347,-1356,-1374,-1384,-1402,-1394,-1394,-1398,
+-1388,-1390,-1391,-1387,-1385,-1383,-1380,-1384,-1379,-1376,-1398,-1382,-1380,-1382,-1383,-1383,-1382,-1379,-1374,-1371,
+-1366,-1358,-1355,-1348,-1341,-1336,-1331,-1321,-1311,-1296,-1290,-1274,-1257,-1242,-1227,-1208,-1192,-1174,-1151,-1132,
+-1111,-1084,-1056,-1026,-998,-966,-951,-918,-885,-847,-812,-776,-734,-690,-646,-601,-558,-522,-480,-437,
+-388,-337,-284,-230,-185,-145,-115,-72,-8,31,29,37,29,9,-111,-240,-159,179,623,911,
+1071,1112,1123,1220,1437,1811,2023,1810,1456,1315,1415,1453,1481,1418,1270,1164,1048,992,968,959,
+1008,1079,1159,1268,1392,1528,1644,1742,1824,1877,1927,2004,2102,2172,2213,2236,2241,2236,2239,2246,
+2246,2212,2173,2148,2140,2132,2073,1969,1888,1803,1725,1648,1559,1462,1397,1337,1269,1200,1144,1080,
+992,884,769,645,539,427,303,165,28,-68,-134,-177,-206,-223,-242,-282,-349,-437,-522,-598,
+-660,-700,-729,-774,-831,-892,-952,-1020,-1099,-1160,-1187,-1208,-1227,-1267,-1316,-1357,-1392,-1453,-1556,-1674,
+-1779,-1858,-1920,-1984,-2051,-2112,-2142,-2157,-2178,-2193,-2205,-2203,-2204,-2204,-2197,-2169,-2132,-2101,-2076,-2049,
+-2023,-2010,-2012,-2026,-2060,-2150,-2279,-2370,-2420,-2418,-2438,-2481,-2479,-2518,-2543,-2564,-2593,-2615,-2629,-2627,
+-2595,-2563,-2551,-2537,-2490,-2429,-2395,-2372,-2311,-2230,-2170,-2151,-2117,-2085,-2008,-1908,-1797,-1679,-1560,-1436,
+-1411,-1360,-1261,-1150,-1090,-1074,-1033,-971,-915,-852,-801,-759,-740,-707,-675,-654,-636,-601,-560,-529,
+-512,-506,-519,-529,-707,-794,-799,-812,-806,-791,-783,-790,-795,-796,-783,-763,-746,-730,-707,-685,
+-668,-650,-634,-604,-582,-572,-565,-563,-548,-528,-505,-487,-458,-436,-416,-386,-368,-344,-305,-254,
+-224,-192,-163,-134,-105,-67,-44,-28,14,52,96,145,165,223,258,295,329,371,414,457,
+504,533,578,633,684,732,780,834,887,939,995,1045,1094,1139,1174,1212,1248,1281,1315,1343,
+1374,1408,1438,1468,1479,1501,1522,1548,1584,1622,1662,1688,1716,1749,1754,1801,1845,1820,1885,1839,
+1814,1811,1797,1794,1798,1798,1794,1793,1776,1766,1759,1742,1739,1727,1708,1690,1664,1648,1633,1621,
+1615,1614,1606,1580,1558,1546,1558,1588,1578,1602,1622,1635,1655,1700,1727,1739,1736,1747,1757,1751,
+1742,1730,1713,1673,1650,1605,1567,1515,1483,1539,1417,1273,1237,1212,1182,1140,1162,1200,1030,983,
+973,957,923,905,893,883,864,838,811,789,771,756,741,732,728,733,733,733,735,738,
+744,758,778,800,804,788,768,765,803,867,952,974,908,821,730,628,557,488,420,386,
+371,398,413,430,488,516,528,488,393,300,217,178,132,93,44,-7,-103,-220,-288,-355,
+-406,-465,-518,-582,-659,-716,-750,-783,-825,-877,-962,-1027,-1059,-1099,-1157,-1235,-1327,-1422,-1469,-1492,
+-1510,-1494,-1461,-1435,-1435,-1452,-1474,-1479,-1470,-1478,-1502,-1527,-1550,-1565,-1575,-1581,-1548,-1487,-1435,-1360,
+-1325,-1381,-1443,-1484,-1494,-1482,-1406,-1359,-1406,-1430,-1434,-1441,-1496,-1592,-1682,-1747,-1774,-1788,-1799,-1825,
+-1861,-1892,-1925,-1958,-2026,-2072,-2054,-1988,-1908,-1885,-1826,-1811,-1835,-1908,-2021,-2153,-2260,-2355,-2456,-2673,
+-2827,-2846,-2942,-3051,-3125,-3230,-3312,-3382,-3459,-3531,-3627,-3720,-3771,-3771,-3794,-3829,-3871,-3899,-3916,-3925,
+-3952,-3981,-4009,-4032,-4050,-4056,-4075,-4105,-4122,-4135,-4144,-4149,-4183,-4176,-4168,-4167,-4154,-4113,-4208,-4211,
+-4189,-4138,-4125,-4129,-4116,-4120,-4113,-4094,-4084,-4072,-4052,-4042,-4062,-4070,-4165,-4183,-3903,-3777,-3959,-4075,
+-4184,-4200,-4231,-4277,-4302,-4191,-4249,-4424,-4418,-4206,-4154,-4270,-4384,-4426,-4446,-4488,-4570,-4660,-4763,-4848,
+-4915,-4969,-5030,-5104,-5173,-5241,-5306,-5361,-5416,-5496,-5581,-5645,-5665,-5729,-5800,-5869,-5930,-5997,-6080,-6118,
+-6187,-6264,-6335,-6390,-6464,-6507,-6577,-6600,-6657,-6703,-6726,-6806,-6843,-6828,-6914,-6961,-7002,-7065,-7085,-7149,
+-7241,-7359,-7434,-7557,-7645,-7714,-7752,-7805,-7843,-7784,-7742,-7741,-7716,-7724,-7800,-7959,-8132,-8281,-8381,-8611,
+-8623,-8632,-8707,-8759,-8800,-8836,-8858,-8874,-8890,-8905,-8910,-8909,-8921,-8941,-8947,-8966,-8995,-9021,-9041,-9052,
+-9058,-9053,-9046,-9049,-9046,-9040,-9021,-8984,-8939,-8877,-8809,-8749,-8711,-8682,-8645,-8633,-8628,-8619,-8585,-8538,
+-8478,-8415,-8351,-8264,-8147,-8019,-7903,-7787,-7700,-7643,-7593,-7538,-7476,-7406,-7329,-7245,-7141,-7014,-6873,-6739,
+-6613,-6518,-6426,-6352,-6306,-6287,-6241,-6151,-6056,-5950,-5831,-5702,-5575,-5445,-5284,-5134,-5050,-4993,-4913,-4845,
+-4745,-4609,-4486,-4391,-4269,-4114,-3905,-3733,-3658,-3556,-3414,-3235,-3083,-2984,-2862,-2786,-2640,-2457,-2315,-2212,
+-2094,-1941,-1811,-1729,-1706,-1671,-1665,-1693,-1676,-1581,-1403,-1258,-1099,-932,-859,-920,-980,-989,-841,-526,
+-75,350,645,819,1004,1164,1290,1454,1560,1651,1746,1822,1888,1962,2039,2128,2192,2266,2342,2403,
+2455,2524,2588,2660,2742,2802,2870,2952,3013,3070,3098,3166,3222,3301,3370,3438,3487,3545,3615,3679,
+3752,3837,3913,3995,4066,4124,4178,4221,4277,4335,4396,4431,4460,4560,4622,4693,4717,4767,4770,4774,
+4807,4889,4997,5096,5159,5202,5019,4933,5006,5037,5095,5234,5281,5296,5346,5350,5209,5235,5413,5547,
+5590,5580,5578,5546,5529,5502,5503,5497,5481,5504,5494,5525,5584,5571,5560,5521,5469,5433,5417,5400,
+5395,5358,5284,5225,5095,4910,4581,3953,3572,3544,3660,3968,4503,4859,5184,5503,5651,5560,5341,5351,
+5756,6215,6435,6627,6678,6693,6698,6726,6767,6802,6854,6918,6961,6997,7019,7019,6980,6984,7004,7046,
+7122,7215,7300,7382,7455,7489,7509,7517,7522,7531,7551,7628,7717,7877,8228,8229,8259,8359,8368,8419,
+8370,8256,8183,8113,8039,7649,7273,7172,7223,7123,7028,6941,6952,7063,7164,7338,7486,7554,7760,7919,
+7927,7968,8060,8249,8301,8254,8159,8156,8046,7673,7099,6557,6186,5862,5639,5544,5496,5448,5400,5627,
+6123,6439,6705,7001,7148,6827,6529,6433,6435,6478,6477,6426,6358,6283,6207,6140,6096,6071,6065,6069,
+6084,6103,6104,6062,6018,5985,5945,5901,5832,5744,5676,5633,5580,5535,5488,5443,5394,5326,5260,5193,
+5123,5047,4976,4916,4862,4822,4795,4756,4705,4651,4598,4546,4490,4450,4421,4397,4369,4332,4289,4246,
+4200,4156,4119,4081,4032,3973,3918,3881,3843,3797,3747,3707,3677,3650,3632,3597,3550,3503,3457,3413,
+3379,3349,3317,3280,3242,3202,3192,3231,3254,3209,3007,2970,2956,2951,2905,2844,2795,2745,2687,2645,
+2624,2639,2681,2633,2524,2473,2429,2407,2365,2346,2317,2295,2266,2200,2152,2130,2097,2079,2041,2016,
+1986,1955,1935,1915,1904,1885,1867,1928,1989,1931,1835,1796,1799,1815,1828,1845,1855,1842,1814,1790,
+1764,1735,1763,1812,1726,1699,1707,1690,1684,1685,1690,1707,1699,1706,1722,1754,1755,1770,1741,1735,
+1703,1646,1631,1639,1657,1688,1647,1637,1618,1572,1529,1494,1508,1513,1487,1548,1504,1496,1494,1458,
+1440,1402,1429,1376,1346,1326,1297,1268,1248,1236,1228,1198,1199,1195,1216,1206,1204,1207,1203,1223,
+1319,1298,1189,1169,1164,1161,1145,1131,1122,1120,1124,1107,1079,1082,1125,1086,1046,1038,1032,1018,
+1006,973,947,917,890,875,839,803,795,778,753,742,735,735,702,667,650,635,622,611,
+601,578,555,540,527,513,495,477,457,429,401,376,357,338,317,295,278,255,232,203,
+180,157,135,114,96,82,62,35,12,-12,-44,-75,-121,-142,-172,-209,-244,-274,-304,-335,
+-359,-382,-413,-454,-496,-531,-561,-589,-615,-643,-666,-682,-699,-727,-744,-755,-782,-809,-839,-863,
+-885,-903,-920,-931,-942,-955,-979,-1003,-1019,-1041,-1063,-1085,-1109,-1129,-1150,-1167,-1186,-1210,-1226,-1272,
+-1260,-1290,-1311,-1322,-1343,-1361,-1384,-1399,-1407,-1410,-1415,-1425,-1433,-1438,-1446,-1448,-1453,-1458,-1469,-1482,
+-1495,-1499,-1509,-1520,-1528,-1536,-1547,-1555,-1560,-1563,-1563,-1582,-1601,-1607,-1593,-1568,-1558,-1555,-1558,-1556,
+-1556,-1553,-1549,-1548,-1542,-1532,-1522,-1515,-1511,-1504,-1496,-1490,-1482,-1476,-1462,-1438,-1421,-1424,-1380,-1369,
+-1357,-1348,-1341,-1334,-1326,-1317,-1308,-1304,-1299,-1300,-1299,-1295,-1287,-1281,-1273,-1269,-1269,-1255,-1265,-1266,
+-1267,-1273,-1277,-1282,-1287,-1307,-1305,-1303,-1306,-1314,-1324,-1321,-1321,-1333,-1342,-1353,-1365,-1390,-1386,-1378,
+-1374,-1378,-1379,-1376,-1378,-1378,-1380,-1368,-1376,-1373,-1368,-1376,-1376,-1381,-1376,-1378,-1384,-1382,-1381,-1376,
+-1371,-1365,-1359,-1352,-1346,-1340,-1335,-1329,-1319,-1309,-1298,-1284,-1274,-1260,-1241,-1228,-1214,-1196,-1176,-1159,
+-1142,-1119,-1091,-1061,-1036,-1002,-981,-957,-930,-882,-851,-821,-788,-745,-699,-658,-623,-576,-526,-492,
+-442,-396,-342,-289,-248,-214,-176,-132,-61,-42,-12,17,34,55,-21,-133,-251,-220,108,600,
+901,1002,1027,1000,1075,1285,1687,1856,1715,1443,1374,1490,1687,1707,1496,1321,1245,1229,1120,1052,
+1024,1057,1105,1161,1256,1382,1527,1662,1753,1809,1851,1917,2020,2125,2198,2246,2266,2269,2264,2280,
+2295,2290,2270,2249,2235,2237,2233,2175,2070,1975,1889,1811,1718,1614,1507,1426,1366,1310,1250,1186,
+1111,1016,904,796,689,590,473,350,218,99,19,-32,-70,-102,-124,-145,-181,-254,-362,-466,
+-542,-610,-651,-681,-718,-762,-819,-875,-934,-1004,-1063,-1093,-1122,-1152,-1204,-1255,-1296,-1338,-1408,-1499,
+-1609,-1726,-1805,-1873,-1936,-2011,-2063,-2097,-2113,-2124,-2148,-2160,-2154,-2157,-2155,-2136,-2111,-2091,-2065,-2035,
+-2000,-1986,-1979,-2004,-2021,-2082,-2165,-2274,-2365,-2417,-2417,-2438,-2472,-2463,-2509,-2543,-2557,-2575,-2597,-2602,
+-2588,-2552,-2533,-2514,-2481,-2428,-2379,-2358,-2341,-2282,-2208,-2160,-2134,-2086,-2054,-1977,-1882,-1773,-1645,-1534,
+-1412,-1370,-1318,-1214,-1107,-1101,-1083,-1046,-999,-932,-839,-785,-740,-728,-690,-664,-637,-619,-580,-538,
+-523,-501,-496,-500,-508,-684,-772,-812,-817,-803,-781,-775,-785,-789,-787,-794,-782,-776,-767,-744,
+-718,-700,-688,-677,-651,-632,-625,-618,-608,-586,-570,-548,-520,-495,-470,-450,-426,-403,-369,-341,
+-299,-262,-231,-203,-156,-121,-90,-64,-32,2,32,77,110,136,194,244,268,308,351,388,
+431,474,512,548,596,648,711,772,828,867,921,970,1026,1075,1132,1173,1216,1249,1277,1304,
+1338,1364,1393,1409,1440,1457,1480,1508,1550,1593,1609,1639,1666,1690,1727,1751,1793,1840,1790,1844,
+1841,1800,1790,1778,1767,1778,1776,1769,1762,1756,1742,1731,1709,1669,1656,1649,1635,1604,1596,1602,
+1601,1600,1606,1589,1581,1573,1573,1576,1598,1601,1617,1640,1673,1688,1712,1729,1732,1738,1740,1747,
+1739,1727,1762,1700,1650,1602,1576,1553,1528,1512,1530,1369,1237,1223,1202,1161,1118,1086,1061,1012,
+978,980,956,928,910,893,871,847,825,803,782,759,745,734,726,724,727,728,732,733,
+736,742,751,768,792,814,816,843,851,898,964,1035,1065,1051,971,874,739,661,580,521,
+456,407,412,432,468,543,584,596,558,484,407,331,273,239,186,155,98,24,-65,-137,
+-211,-287,-369,-441,-525,-592,-636,-692,-715,-746,-789,-861,-942,-1011,-1061,-1138,-1220,-1308,-1393,-1425,
+-1446,-1439,-1430,-1436,-1417,-1409,-1416,-1421,-1426,-1429,-1430,-1463,-1500,-1531,-1560,-1586,-1585,-1558,-1494,-1442,
+-1358,-1307,-1362,-1368,-1384,-1415,-1423,-1373,-1383,-1423,-1434,-1446,-1453,-1483,-1551,-1638,-1705,-1742,-1746,-1738,
+-1741,-1778,-1836,-1893,-1951,-2056,-2095,-2058,-2007,-1973,-1948,-1883,-1822,-1855,-1910,-1994,-2169,-2283,-2381,-2474,
+-2693,-2809,-2816,-2895,-3089,-3167,-3246,-3309,-3369,-3449,-3518,-3611,-3706,-3751,-3748,-3770,-3805,-3843,-3872,-3884,
+-3897,-3909,-3922,-3944,-3975,-3995,-4005,-4028,-4065,-4090,-4102,-4116,-4135,-4172,-4172,-4161,-4126,-4115,-4074,-4144,
+-4170,-4162,-4115,-4061,-4075,-4078,-4072,-4056,-4041,-4021,-4016,-4009,-4003,-4022,-4065,-4151,-3936,-3764,-3855,-4100,
+-4156,-4139,-4126,-4157,-4228,-4266,-4128,-4258,-4434,-4415,-4168,-4256,-4429,-4439,-4388,-4386,-4443,-4484,-4550,-4650,
+-4766,-4840,-4902,-4970,-5037,-5110,-5172,-5229,-5293,-5368,-5448,-5522,-5561,-5598,-5667,-5735,-5800,-5862,-5937,-6012,
+-6057,-6132,-6202,-6253,-6329,-6393,-6438,-6474,-6537,-6582,-6601,-6686,-6720,-6725,-6793,-6834,-6873,-6925,-6935,-6971,
+-7064,-7211,-7268,-7369,-7471,-7567,-7647,-7687,-7723,-7722,-7670,-7598,-7537,-7564,-7595,-7659,-7821,-8057,-8217,-8311,
+-8540,-8517,-8538,-8614,-8680,-8721,-8751,-8772,-8785,-8800,-8812,-8825,-8826,-8832,-8857,-8861,-8873,-8903,-8932,-8947,
+-8958,-8967,-8961,-8956,-8957,-8957,-8953,-8924,-8885,-8843,-8789,-8730,-8680,-8652,-8615,-8581,-8566,-8555,-8531,-8494,
+-8445,-8396,-8346,-8288,-8192,-8074,-7952,-7845,-7731,-7655,-7612,-7562,-7505,-7444,-7377,-7302,-7228,-7131,-6999,-6844,
+-6689,-6556,-6455,-6393,-6348,-6298,-6259,-6229,-6170,-6072,-5966,-5846,-5743,-5639,-5500,-5337,-5178,-5059,-5007,-4936,
+-4871,-4761,-4620,-4493,-4421,-4335,-4202,-4010,-3845,-3722,-3594,-3453,-3294,-3132,-3008,-2919,-2860,-2685,-2497,-2356,
+-2258,-2140,-1957,-1793,-1700,-1679,-1626,-1586,-1622,-1633,-1647,-1564,-1404,-1235,-1100,-1039,-995,-1014,-1029,-975,
+-752,-375,66,434,643,742,958,1149,1316,1494,1617,1709,1783,1846,1908,1981,2057,2124,2190,2262,
+2321,2397,2460,2533,2602,2673,2736,2801,2862,2911,2971,3034,3090,3164,3227,3285,3352,3410,3481,3550,
+3620,3697,3771,3843,3907,3980,4042,4096,4156,4217,4274,4320,4341,4420,4487,4554,4614,4643,4696,4730,
+4747,4760,4771,4810,4898,4987,5091,5054,4863,5016,4966,4985,5121,5157,5148,5184,5220,5156,5092,5158,
+5329,5460,5494,5486,5505,5513,5456,5427,5424,5418,5384,5395,5417,5433,5407,5398,5395,5337,5310,5312,
+5310,5302,5258,5184,5118,4988,4762,4315,3791,3496,3473,3622,3962,4433,4744,5062,5305,5259,5216,5227,
+5479,5950,6281,6513,6608,6655,6671,6693,6727,6753,6777,6822,6888,6930,6954,6968,6991,6973,6978,6995,
+7037,7103,7188,7267,7346,7412,7444,7438,7423,7407,7421,7433,7483,7526,7644,7862,8068,8117,8237,8242,
+8322,8338,8253,8367,8240,8109,7958,7745,7416,7256,7300,7392,7257,7302,7382,7327,7156,7113,7189,7341,
+7451,7529,7641,7785,8016,8094,8127,8089,7879,7564,7060,6569,6204,5964,5858,5839,5809,5698,5486,5293,
+5336,5704,6147,6575,6951,7252,7164,6869,6615,6448,6400,6401,6361,6280,6192,6111,6042,5994,5973,5970,
+5982,6010,6049,6053,6029,6014,5988,5955,5919,5872,5787,5718,5662,5615,5566,5519,5490,5444,5384,5324,
+5257,5195,5130,5065,5008,4944,4883,4833,4787,4750,4703,4655,4600,4557,4514,4480,4450,4417,4372,4336,
+4293,4245,4201,4157,4111,4058,4005,3947,3905,3876,3842,3797,3757,3728,3701,3672,3629,3584,3540,3489,
+3444,3414,3386,3357,3324,3284,3234,3194,3174,3173,3253,3103,3039,3114,3151,3069,2920,2848,2798,2752,
+2728,2694,2684,2705,2764,2616,2545,2483,2440,2400,2342,2312,2280,2254,2198,2193,2171,2122,2092,2060,
+2039,2023,1992,1985,1969,1941,1901,1874,1897,1920,1950,1860,1812,1818,1840,1858,1871,1867,1855,1833,
+1804,1772,1744,1725,1735,1720,1716,1714,1688,1685,1685,1688,1690,1690,1698,1727,1742,1746,1758,1753,
+1720,1686,1631,1644,1623,1607,1641,1627,1631,1614,1579,1540,1503,1517,1623,1486,1547,1533,1475,1416,
+1394,1412,1412,1352,1324,1306,1283,1260,1246,1233,1221,1209,1174,1158,1164,1185,1195,1200,1198,1193,
+1195,1203,1192,1154,1128,1123,1135,1129,1110,1097,1091,1090,1087,1061,1053,1118,1079,1034,1015,1002,
+991,979,955,914,881,880,848,816,785,761,751,739,722,699,674,653,622,596,578,569,
+564,552,539,518,506,497,488,475,457,438,418,398,379,358,339,319,298,271,247,219,
+191,162,142,120,101,86,73,69,49,30,2,-30,-72,-109,-136,-160,-199,-231,-269,-304,
+-335,-360,-388,-416,-455,-495,-533,-570,-598,-621,-649,-672,-692,-717,-736,-748,-767,-790,-811,-833,
+-855,-880,-898,-916,-930,-944,-957,-975,-999,-1018,-1037,-1053,-1077,-1097,-1117,-1131,-1150,-1175,-1195,-1211,
+-1241,-1249,-1285,-1306,-1326,-1340,-1355,-1379,-1390,-1399,-1403,-1407,-1421,-1434,-1440,-1447,-1450,-1453,-1457,-1464,
+-1471,-1480,-1487,-1495,-1503,-1506,-1510,-1517,-1520,-1526,-1523,-1526,-1537,-1550,-1557,-1553,-1543,-1535,-1530,-1531,
+-1525,-1528,-1528,-1522,-1514,-1512,-1507,-1498,-1487,-1480,-1475,-1466,-1462,-1456,-1447,-1429,-1404,-1412,-1371,-1346,
+-1331,-1321,-1314,-1308,-1298,-1293,-1286,-1279,-1275,-1270,-1269,-1265,-1268,-1259,-1257,-1244,-1241,-1234,-1231,-1235,
+-1239,-1246,-1247,-1256,-1264,-1276,-1275,-1280,-1288,-1289,-1301,-1304,-1314,-1317,-1342,-1352,-1363,-1353,-1371,-1366,
+-1363,-1362,-1359,-1362,-1364,-1370,-1368,-1366,-1361,-1353,-1372,-1369,-1368,-1368,-1376,-1375,-1374,-1376,-1378,-1378,
+-1379,-1372,-1364,-1358,-1353,-1346,-1342,-1339,-1328,-1318,-1305,-1294,-1285,-1273,-1259,-1244,-1231,-1218,-1201,-1182,
+-1164,-1147,-1123,-1089,-1061,-1031,-1010,-990,-958,-918,-892,-861,-832,-792,-749,-709,-665,-623,-583,-537,
+-493,-445,-401,-351,-306,-279,-233,-187,-125,-99,-57,-23,20,42,2,-44,-131,-256,-256,60,
+592,977,993,1003,928,973,1158,1551,1711,1625,1531,1601,1718,1821,1946,1786,1449,1315,1314,1193,
+1097,1057,1074,1125,1177,1267,1399,1528,1660,1770,1816,1851,1919,2023,2123,2192,2242,2280,2297,2307,
+2329,2345,2348,2324,2300,2287,2283,2287,2240,2145,2051,1969,1878,1776,1659,1550,1469,1404,1351,1287,
+1218,1139,1046,941,843,745,642,521,399,276,172,110,77,51,19,-11,-47,-99,-184,-299,
+-405,-477,-535,-575,-610,-642,-682,-735,-787,-839,-894,-950,-987,-1029,-1082,-1143,-1204,-1273,-1332,-1405,
+-1489,-1578,-1677,-1751,-1814,-1882,-1944,-1994,-2025,-2054,-2079,-2093,-2103,-2108,-2105,-2106,-2085,-2061,-2043,-2011,
+-1985,-1967,-1955,-1933,-1953,-1985,-2042,-2151,-2264,-2355,-2402,-2416,-2433,-2433,-2438,-2484,-2521,-2546,-2555,-2565,
+-2557,-2529,-2498,-2476,-2457,-2426,-2382,-2343,-2329,-2293,-2256,-2195,-2161,-2124,-2070,-2021,-1927,-1847,-1738,-1639,
+-1521,-1382,-1317,-1264,-1188,-1106,-1073,-1066,-1067,-1018,-939,-820,-772,-726,-723,-705,-659,-638,-573,-506,
+-492,-494,-475,-475,-480,-478,-576,-719,-813,-830,-816,-797,-787,-792,-804,-810,-806,-802,-803,-794,
+-775,-753,-739,-727,-718,-684,-674,-663,-641,-644,-625,-615,-591,-556,-525,-505,-486,-463,-431,-398,
+-370,-347,-309,-284,-251,-214,-174,-133,-107,-74,-40,-5,37,73,116,169,220,243,291,324,
+362,411,451,486,528,570,629,693,761,822,865,915,967,1020,1075,1118,1169,1199,1228,1247,
+1267,1290,1315,1350,1379,1405,1431,1461,1500,1522,1568,1601,1617,1641,1671,1697,1710,1751,1767,1777,
+1814,1808,1787,1769,1767,1751,1753,1747,1742,1726,1711,1677,1657,1629,1596,1591,1589,1590,1594,1603,
+1607,1633,1615,1609,1597,1577,1585,1581,1592,1614,1627,1634,1658,1677,1705,1709,1708,1711,1714,1721,
+1730,1725,1724,1684,1642,1602,1604,1639,1572,1466,1536,1532,1312,1215,1201,1191,1157,1097,1045,1024,
+993,969,956,943,928,912,886,864,848,830,803,774,752,736,720,719,721,721,722,726,
+730,731,735,742,759,783,802,814,869,919,979,1060,1137,1174,1158,1090,996,870,773,680,
+621,547,459,425,435,523,577,639,662,632,585,525,444,356,332,259,238,191,142,76,
+5,-77,-181,-293,-395,-465,-516,-572,-642,-681,-688,-722,-779,-858,-962,-1053,-1149,-1222,-1291,-1338,
+-1375,-1383,-1347,-1392,-1422,-1394,-1365,-1374,-1364,-1372,-1364,-1386,-1437,-1494,-1540,-1570,-1588,-1601,-1570,-1500,
+-1420,-1347,-1257,-1264,-1281,-1272,-1306,-1378,-1387,-1415,-1444,-1442,-1437,-1447,-1457,-1504,-1569,-1633,-1680,-1690,
+-1678,-1681,-1723,-1807,-1869,-1939,-2018,-2098,-2074,-2015,-2002,-2005,-1922,-1865,-1889,-2001,-2098,-2220,-2303,-2403,
+-2531,-2704,-2796,-2822,-2874,-3045,-3186,-3253,-3306,-3357,-3437,-3518,-3608,-3684,-3720,-3727,-3750,-3784,-3814,-3840,
+-3853,-3872,-3889,-3903,-3898,-3910,-3952,-3961,-3988,-4028,-4059,-4080,-4100,-4117,-4168,-4185,-4184,-4182,-4155,-4102,
+-4107,-4131,-4128,-4063,-4031,-4025,-4029,-4012,-3999,-3985,-3968,-3953,-3943,-3959,-3977,-4051,-4058,-3867,-3823,-4012,
+-4160,-4133,-4089,-4026,-4050,-4177,-4223,-4219,-4337,-4406,-4375,-4131,-4274,-4445,-4424,-4361,-4370,-4385,-4427,-4482,
+-4571,-4683,-4773,-4833,-4897,-4966,-5038,-5112,-5169,-5231,-5309,-5386,-5452,-5481,-5536,-5605,-5666,-5727,-5790,-5861,
+-5928,-5999,-6042,-6111,-6175,-6239,-6295,-6351,-6395,-6449,-6485,-6569,-6595,-6626,-6686,-6708,-6766,-6831,-6828,-6878,
+-6920,-7022,-7087,-7196,-7292,-7391,-7480,-7568,-7630,-7665,-7627,-7495,-7443,-7457,-7497,-7551,-7630,-7828,-8002,-8131,
+-8197,-8441,-8420,-8458,-8526,-8590,-8632,-8668,-8694,-8709,-8723,-8731,-8743,-8751,-8749,-8763,-8777,-8787,-8811,-8841,
+-8846,-8864,-8878,-8866,-8862,-8858,-8859,-8846,-8814,-8777,-8739,-8695,-8644,-8590,-8548,-8501,-8481,-8464,-8449,-8426,
+-8394,-8353,-8307,-8261,-8199,-8105,-8011,-7903,-7797,-7697,-7634,-7590,-7538,-7479,-7417,-7349,-7271,-7191,-7097,-6967,
+-6813,-6648,-6509,-6416,-6350,-6331,-6332,-6309,-6239,-6188,-6088,-5980,-5865,-5771,-5669,-5540,-5397,-5233,-5097,-5027,
+-4942,-4868,-4759,-4621,-4527,-4470,-4394,-4260,-4058,-3901,-3778,-3649,-3501,-3346,-3134,-3013,-2964,-2921,-2734,-2547,
+-2400,-2300,-2177,-1975,-1788,-1680,-1662,-1612,-1562,-1598,-1612,-1650,-1644,-1539,-1363,-1191,-1119,-1071,-1036,-1002,
+-977,-862,-643,-280,154,393,535,791,1030,1225,1458,1561,1680,1762,1829,1882,1945,2018,2082,2144,
+2207,2267,2333,2394,2466,2534,2600,2668,2728,2794,2849,2894,2954,3031,3085,3146,3213,3278,3342,3407,
+3480,3551,3627,3689,3757,3825,3904,3961,4028,4089,4155,4215,4243,4268,4342,4407,4467,4521,4571,4616,
+4647,4696,4711,4718,4696,4724,4826,4974,5047,4829,5027,4950,4922,5012,5019,5035,5113,5160,5138,5094,
+5072,5085,5173,5267,5302,5293,5283,5332,5318,5318,5321,5329,5328,5332,5323,5311,5301,5270,5249,5231,
+5213,5212,5198,5176,5143,5059,4960,4599,4082,3708,3531,3530,3752,4096,4364,4650,4917,5013,5000,5112,
+5389,5729,6097,6346,6531,6595,6649,6678,6703,6732,6755,6774,6807,6854,6907,6934,6955,6978,6985,6977,
+7012,7050,7105,7169,7237,7303,7361,7387,7385,7360,7347,7368,7370,7401,7458,7531,7662,7857,7969,8006,
+8088,8163,8216,8126,8150,8155,8062,7983,7858,7759,7492,7234,7234,7369,7576,7681,7605,7063,6710,6641,
+6680,6753,6878,7000,7277,7523,7620,7645,7527,7195,6850,6524,6289,6176,6174,6215,6241,6215,6100,5865,
+5515,5278,5341,5673,6217,6741,7069,7186,7196,6955,6659,6471,6387,6324,6220,6117,6028,5966,5916,5873,
+5866,5875,5915,6005,6008,5978,5983,5980,5968,5945,5896,5828,5773,5699,5647,5606,5550,5516,5471,5419,
+5359,5300,5244,5193,5136,5075,5013,4960,4912,4860,4805,4755,4714,4671,4627,4583,4537,4498,4461,4415,
+4374,4329,4284,4240,4194,4144,4094,4044,3997,3963,3924,3887,3857,3830,3779,3733,3697,3659,3620,3578,
+3531,3505,3469,3433,3408,3381,3336,3277,3215,3175,3181,3307,3192,3111,3079,3157,3153,2975,2899,2851,
+2815,2791,2764,2734,2725,2724,2680,2583,2523,2472,2451,2387,2319,2264,2259,2259,2230,2176,2131,2097,
+2082,2063,2054,2032,2014,1992,1960,1924,1892,1874,1879,1954,1924,1832,1824,1847,1865,1882,1882,1871,
+1852,1822,1791,1772,1737,1742,1734,1728,1716,1689,1677,1678,1681,1687,1701,1713,1724,1732,1747,1752,
+1748,1725,1669,1627,1626,1603,1577,1578,1587,1595,1595,1564,1537,1509,1489,1522,1454,1445,1450,1421,
+1409,1400,1419,1394,1336,1310,1290,1271,1261,1248,1232,1212,1194,1175,1167,1164,1164,1170,1185,1174,
+1165,1154,1138,1127,1103,1084,1081,1097,1092,1083,1073,1062,1053,1047,1030,1012,1080,1038,1002,985,
+979,959,940,914,890,880,860,831,803,771,740,708,695,679,657,631,603,576,546,527,
+520,516,506,495,476,467,460,452,443,429,411,395,384,366,350,334,314,293,267,230,
+200,169,141,123,103,83,68,63,63,59,43,11,-24,-57,-93,-122,-156,-189,-218,-258,
+-297,-333,-362,-397,-428,-460,-488,-522,-558,-592,-617,-645,-672,-696,-729,-749,-760,-780,-797,-817,
+-829,-849,-873,-895,-913,-926,-937,-957,-973,-994,-1019,-1040,-1059,-1078,-1093,-1110,-1125,-1138,-1155,-1184,
+-1207,-1232,-1231,-1255,-1277,-1314,-1328,-1346,-1365,-1374,-1383,-1390,-1398,-1410,-1420,-1426,-1437,-1441,-1445,-1454,
+-1461,-1468,-1471,-1477,-1481,-1491,-1494,-1496,-1496,-1495,-1496,-1497,-1505,-1504,-1501,-1506,-1512,-1514,-1517,-1515,
+-1517,-1512,-1506,-1503,-1499,-1487,-1478,-1471,-1463,-1455,-1446,-1437,-1430,-1428,-1428,-1418,-1389,-1381,-1376,-1338,
+-1319,-1306,-1294,-1280,-1269,-1263,-1260,-1257,-1248,-1242,-1243,-1241,-1237,-1232,-1230,-1225,-1214,-1215,-1202,-1205,
+-1210,-1214,-1227,-1229,-1242,-1250,-1256,-1257,-1259,-1269,-1276,-1281,-1289,-1299,-1305,-1321,-1334,-1349,-1342,-1355,
+-1346,-1345,-1351,-1360,-1361,-1360,-1360,-1358,-1357,-1353,-1352,-1358,-1362,-1367,-1361,-1363,-1367,-1367,-1368,-1372,
+-1370,-1375,-1371,-1365,-1356,-1349,-1346,-1344,-1337,-1323,-1313,-1301,-1290,-1281,-1271,-1260,-1244,-1234,-1219,-1203,
+-1181,-1165,-1148,-1124,-1092,-1063,-1041,-1021,-1003,-964,-928,-896,-863,-828,-791,-753,-712,-674,-633,-594,
+-545,-499,-453,-411,-373,-337,-287,-239,-196,-153,-112,-70,-18,-7,3,-2,-36,-119,-239,-277,
+-18,410,818,945,982,925,917,1055,1413,1735,1665,1707,1704,1760,1894,2031,1912,1655,1488,1352,
+1233,1135,1117,1088,1138,1202,1307,1446,1553,1665,1783,1845,1888,1947,2031,2105,2177,2240,2297,2337,
+2363,2380,2391,2392,2367,2333,2310,2305,2332,2287,2209,2111,2019,1915,1808,1698,1596,1515,1452,1389,
+1319,1242,1161,1074,981,891,805,701,583,465,355,268,215,188,174,152,113,52,-37,-143,
+-261,-345,-398,-438,-478,-516,-548,-583,-633,-689,-737,-784,-832,-886,-949,-1018,-1093,-1170,-1239,-1322,
+-1396,-1485,-1560,-1637,-1698,-1761,-1818,-1879,-1925,-1957,-2001,-2029,-2051,-2047,-2050,-2049,-2054,-2028,-2006,-1989,
+-1969,-1941,-1936,-1944,-1925,-1933,-1979,-2049,-2158,-2268,-2353,-2381,-2376,-2397,-2397,-2409,-2448,-2480,-2509,-2521,
+-2534,-2514,-2477,-2444,-2416,-2397,-2372,-2336,-2293,-2276,-2268,-2215,-2171,-2149,-2109,-2069,-1980,-1899,-1818,-1725,
+-1621,-1497,-1360,-1278,-1222,-1162,-1109,-1084,-1087,-1091,-1038,-952,-815,-794,-763,-742,-733,-689,-612,-539,
+-475,-435,-459,-458,-458,-478,-491,-581,-746,-782,-856,-863,-845,-828,-820,-819,-823,-825,-822,-820,
+-817,-805,-794,-782,-764,-732,-728,-710,-695,-682,-671,-659,-641,-626,-596,-562,-540,-513,-488,-455,
+-422,-397,-376,-350,-321,-289,-247,-192,-159,-127,-77,-50,-31,11,43,78,142,182,234,265,
+304,358,397,437,465,511,550,611,696,768,823,871,923,968,1016,1051,1080,1109,1127,1152,
+1178,1221,1266,1294,1328,1363,1385,1409,1449,1459,1512,1553,1574,1598,1627,1643,1668,1688,1723,1750,
+1777,1769,1779,1758,1742,1741,1723,1701,1698,1674,1650,1624,1607,1602,1609,1603,1603,1600,1599,1586,
+1589,1602,1614,1595,1597,1592,1573,1581,1570,1599,1612,1635,1659,1657,1672,1695,1698,1688,1694,1686,
+1697,1693,1692,1686,1645,1615,1604,1683,1668,1495,1431,1453,1558,1292,1195,1172,1164,1115,1061,1018,
+984,968,955,941,930,916,899,884,868,850,827,801,774,749,731,721,723,723,722,724,
+725,723,724,729,740,753,778,803,819,881,961,1034,1117,1173,1215,1215,1158,1072,977,868,
+772,703,618,522,472,454,510,638,699,734,714,675,614,540,422,387,339,296,259,221,
+168,102,16,-96,-217,-314,-388,-434,-495,-580,-637,-657,-674,-718,-801,-908,-1027,-1127,-1191,-1242,
+-1276,-1308,-1312,-1301,-1320,-1341,-1328,-1295,-1293,-1282,-1280,-1283,-1345,-1416,-1492,-1552,-1574,-1580,-1595,-1575,
+-1506,-1410,-1326,-1235,-1176,-1217,-1255,-1326,-1380,-1389,-1414,-1462,-1461,-1436,-1435,-1440,-1466,-1508,-1557,-1601,
+-1621,-1616,-1629,-1681,-1765,-1836,-1915,-1996,-2073,-2083,-2054,-2039,-2028,-2014,-1948,-1963,-2134,-2218,-2258,-2332,
+-2425,-2561,-2685,-2756,-2815,-2887,-3010,-3143,-3202,-3277,-3344,-3432,-3498,-3588,-3669,-3704,-3710,-3728,-3758,-3781,
+-3803,-3818,-3834,-3868,-3891,-3899,-3909,-3928,-3942,-3975,-4016,-4048,-4085,-4113,-4112,-4172,-4211,-4226,-4217,-4185,
+-4143,-4120,-4096,-4019,-3975,-3959,-3972,-3976,-3959,-3945,-3930,-3907,-3887,-3877,-3870,-3896,-4005,-4039,-3870,-3988,
+-4152,-4122,-4063,-4030,-4024,-4069,-4136,-4160,-4179,-4280,-4335,-4284,-4148,-4295,-4422,-4418,-4323,-4351,-4364,-4384,
+-4417,-4508,-4615,-4700,-4765,-4831,-4901,-4973,-5042,-5104,-5165,-5239,-5311,-5370,-5410,-5475,-5531,-5593,-5660,-5726,
+-5791,-5860,-5924,-5983,-6047,-6129,-6183,-6234,-6276,-6305,-6366,-6446,-6482,-6495,-6578,-6608,-6667,-6710,-6711,-6740,
+-6775,-6917,-6925,-7020,-7134,-7220,-7317,-7395,-7457,-7530,-7562,-7522,-7409,-7377,-7413,-7456,-7516,-7659,-7792,-7926,
+-8037,-8101,-8339,-8327,-8371,-8438,-8497,-8540,-8580,-8613,-8634,-8652,-8662,-8673,-8683,-8683,-8692,-8708,-8718,-8730,
+-8758,-8762,-8781,-8782,-8770,-8763,-8756,-8745,-8721,-8691,-8660,-8630,-8593,-8532,-8449,-8406,-8366,-8347,-8334,-8328,
+-8314,-8294,-8261,-8220,-8169,-8110,-8014,-7942,-7855,-7758,-7681,-7627,-7576,-7516,-7447,-7375,-7307,-7226,-7143,-7051,
+-6929,-6765,-6604,-6464,-6387,-6343,-6298,-6286,-6291,-6248,-6212,-6106,-5987,-5881,-5802,-5697,-5560,-5438,-5272,-5135,
+-5036,-4934,-4855,-4761,-4650,-4577,-4515,-4418,-4263,-4060,-3947,-3829,-3712,-3594,-3439,-3242,-3101,-3026,-2972,-2790,
+-2600,-2458,-2350,-2207,-2020,-1817,-1694,-1670,-1635,-1590,-1611,-1621,-1642,-1635,-1585,-1472,-1299,-1169,-1090,-1049,
+-995,-917,-829,-764,-591,-275,4,256,618,865,1134,1351,1558,1724,1804,1899,1946,1973,2008,2053,
+2105,2156,2206,2268,2331,2408,2471,2532,2600,2668,2759,2821,2843,2898,2962,3024,3086,3139,3201,3264,
+3340,3412,3475,3544,3606,3677,3749,3829,3910,3974,4036,4091,4137,4150,4180,4246,4308,4365,4409,4476,
+4528,4580,4633,4658,4666,4642,4623,4678,4871,4894,4788,5053,5045,4863,4901,4933,4984,5019,5033,5019,
+4983,4947,4982,5025,5095,5125,5148,5249,5310,5253,5224,5241,5254,5279,5279,5245,5228,5215,5185,5158,
+5134,5120,5127,5135,5141,5132,5051,4809,4383,4009,3777,3698,3682,3893,4195,4377,4597,4757,4869,5002,
+5298,5659,5940,6205,6392,6562,6612,6655,6697,6726,6738,6759,6787,6823,6865,6916,6950,6968,6986,6998,
+6994,7023,7056,7102,7152,7205,7261,7317,7353,7352,7336,7331,7355,7362,7385,7426,7481,7561,7711,7771,
+7841,7913,8014,8063,8027,7944,7929,7970,8040,7939,7887,7714,7331,7143,7181,7338,7492,7298,6949,6379,
+6051,5961,6052,6203,6376,6641,6846,6944,6941,6849,6668,6489,6391,6398,6451,6508,6543,6566,6533,6440,
+6249,5942,5586,5364,5475,5865,6495,6909,7098,7250,7183,6932,6744,6644,6448,6254,6098,5991,5926,5884,
+5850,5794,5774,5796,5839,5871,5887,5916,5939,5939,5932,5914,5866,5821,5778,5689,5650,5588,5539,5493,
+5439,5383,5332,5283,5237,5190,5143,5081,5017,4961,4910,4872,4818,4788,4765,4712,4666,4610,4552,4510,
+4459,4412,4369,4326,4282,4237,4190,4142,4094,4041,4001,3957,3919,3874,3833,3788,3755,3723,3691,3664,
+3632,3587,3569,3532,3500,3482,3442,3393,3334,3265,3214,3196,3203,3179,3213,3075,3053,3070,2993,2940,
+2901,2865,2835,2804,2757,2717,2680,2651,2596,2534,2488,2476,2410,2349,2315,2296,2286,2247,2218,2166,
+2121,2105,2086,2055,2032,2019,2004,1980,1951,1919,1891,1882,1929,1978,1870,1839,1847,1879,1905,1907,
+1895,1871,1844,1825,1822,1782,1756,1758,1734,1711,1682,1663,1666,1673,1691,1698,1705,1709,1720,1731,
+1734,1733,1724,1689,1669,1647,1631,1575,1571,1620,1559,1554,1536,1509,1479,1437,1418,1410,1414,1402,
+1371,1385,1381,1363,1346,1322,1320,1296,1283,1268,1241,1217,1196,1179,1165,1149,1139,1132,1127,1138,
+1140,1134,1122,1103,1093,1079,1059,1059,1053,1046,1046,1043,1032,1021,1012,1005,980,977,1032,966,
+945,937,927,904,890,876,853,821,785,754,727,692,665,638,623,605,578,553,533,510,
+485,471,465,459,445,430,419,419,410,400,391,382,368,363,349,333,317,300,274,243,
+212,177,147,123,101,84,63,48,40,46,43,28,5,-24,-56,-79,-106,-141,-177,-211,
+-250,-284,-318,-350,-389,-427,-464,-487,-516,-540,-575,-608,-636,-664,-698,-727,-757,-778,-794,-810,
+-830,-842,-857,-877,-891,-909,-925,-943,-963,-978,-1000,-1018,-1035,-1063,-1076,-1095,-1112,-1124,-1138,-1153,
+-1176,-1199,-1219,-1224,-1236,-1248,-1288,-1319,-1338,-1345,-1357,-1364,-1368,-1377,-1387,-1395,-1404,-1414,-1417,-1428,
+-1439,-1448,-1455,-1458,-1461,-1466,-1480,-1483,-1491,-1490,-1484,-1480,-1479,-1482,-1485,-1486,-1480,-1475,-1476,-1480,
+-1482,-1486,-1485,-1482,-1483,-1475,-1461,-1448,-1438,-1428,-1420,-1413,-1405,-1399,-1397,-1392,-1379,-1349,-1352,-1311,
+-1299,-1291,-1281,-1272,-1257,-1245,-1233,-1224,-1220,-1218,-1210,-1206,-1204,-1203,-1199,-1196,-1195,-1186,-1182,-1185,
+-1190,-1195,-1203,-1208,-1214,-1226,-1226,-1235,-1234,-1236,-1247,-1253,-1258,-1270,-1280,-1288,-1296,-1320,-1338,-1337,
+-1336,-1334,-1340,-1347,-1352,-1350,-1348,-1344,-1343,-1346,-1343,-1345,-1346,-1353,-1350,-1357,-1351,-1355,-1358,-1358,
+-1362,-1365,-1367,-1362,-1357,-1350,-1342,-1340,-1341,-1334,-1316,-1312,-1301,-1291,-1277,-1269,-1257,-1245,-1237,-1221,
+-1202,-1179,-1164,-1151,-1121,-1099,-1068,-1047,-1029,-1007,-965,-927,-897,-868,-832,-799,-759,-713,-682,-638,
+-594,-547,-509,-474,-429,-385,-347,-296,-252,-212,-165,-129,-69,-46,-19,-2,1,-33,-111,-215,
+-282,-87,227,657,876,947,914,874,972,1218,1524,1708,1806,1900,1860,1956,2097,1907,1736,1530,
+1296,1190,1195,1209,1160,1172,1238,1358,1504,1634,1733,1841,1919,1965,2012,2065,2124,2196,2269,2332,
+2374,2404,2416,2418,2416,2393,2344,2317,2305,2369,2317,2235,2145,2041,1941,1843,1742,1648,1567,1496,
+1425,1351,1271,1190,1104,1025,948,862,763,654,556,462,386,333,294,279,261,218,139,18,
+-118,-224,-280,-313,-344,-383,-418,-455,-492,-539,-590,-644,-688,-742,-802,-875,-944,-1034,-1121,-1197,
+-1285,-1353,-1440,-1516,-1587,-1660,-1718,-1778,-1832,-1871,-1907,-1951,-1979,-1996,-1993,-1997,-1997,-1983,-1974,-1944,
+-1924,-1917,-1905,-1903,-1913,-1938,-1968,-2015,-2075,-2190,-2284,-2336,-2354,-2350,-2369,-2375,-2395,-2440,-2442,-2454,
+-2461,-2493,-2473,-2441,-2396,-2362,-2340,-2326,-2297,-2271,-2256,-2246,-2181,-2141,-2125,-2095,-2055,-1982,-1884,-1796,
+-1687,-1570,-1470,-1329,-1230,-1186,-1133,-1107,-1093,-1092,-1083,-1041,-959,-882,-836,-802,-788,-758,-692,-615,
+-538,-450,-408,-416,-423,-471,-483,-508,-533,-722,-771,-825,-898,-887,-871,-870,-861,-860,-860,-857,
+-850,-844,-839,-834,-833,-813,-784,-758,-745,-722,-711,-689,-699,-682,-657,-626,-605,-580,-539,-506,
+-478,-445,-417,-402,-374,-349,-323,-285,-259,-223,-167,-127,-104,-82,-15,10,41,94,130,176,
+224,266,326,360,413,430,479,527,588,666,734,776,821,875,928,973,1017,1047,1077,1111,
+1143,1171,1217,1256,1294,1316,1341,1366,1393,1420,1446,1502,1539,1561,1591,1609,1615,1636,1659,1692,
+1723,1727,1675,1695,1686,1682,1678,1654,1635,1634,1632,1632,1636,1628,1626,1626,1620,1608,1596,1586,
+1585,1573,1595,1582,1583,1588,1574,1561,1573,1570,1589,1604,1630,1634,1652,1669,1659,1675,1673,1673,
+1679,1683,1659,1674,1659,1625,1643,1683,1574,1502,1464,1421,1377,1397,1258,1177,1150,1122,1078,1032,
+988,964,954,952,930,913,906,901,890,870,848,822,796,778,761,746,740,738,741,739,
+732,726,723,725,732,744,760,779,809,832,886,978,1068,1146,1197,1239,1261,1198,1126,1039,
+934,841,776,690,597,523,503,551,685,775,805,793,757,691,610,491,441,394,328,307,
+273,232,172,91,-17,-130,-217,-294,-354,-423,-504,-575,-609,-631,-667,-739,-847,-963,-1055,-1117,
+-1159,-1189,-1204,-1208,-1191,-1201,-1212,-1214,-1195,-1195,-1203,-1189,-1222,-1317,-1403,-1470,-1536,-1560,-1571,-1573,
+-1547,-1489,-1409,-1312,-1232,-1143,-1165,-1228,-1308,-1395,-1421,-1402,-1453,-1464,-1438,-1398,-1435,-1461,-1476,-1500,
+-1535,-1555,-1557,-1568,-1620,-1715,-1793,-1873,-1970,-2054,-2092,-2090,-2100,-2012,-1984,-2019,-2107,-2228,-2253,-2287,
+-2383,-2492,-2593,-2647,-2689,-2764,-2903,-2987,-3027,-3129,-3228,-3321,-3418,-3483,-3558,-3641,-3679,-3687,-3697,-3721,
+-3740,-3756,-3777,-3803,-3837,-3859,-3872,-3886,-3909,-3942,-3973,-4024,-4070,-4108,-4149,-4173,-4215,-4258,-4275,-4267,
+-4233,-4163,-4085,-3970,-3839,-3882,-3891,-3915,-3914,-3905,-3883,-3861,-3842,-3823,-3797,-3785,-3801,-3939,-4043,-3806,
+-4015,-4079,-4010,-3978,-3980,-4004,-4055,-4090,-4097,-4108,-4196,-4252,-4194,-4195,-4296,-4338,-4373,-4367,-4337,-4339,
+-4359,-4381,-4434,-4526,-4605,-4690,-4769,-4843,-4904,-4966,-5030,-5089,-5159,-5227,-5280,-5338,-5399,-5461,-5513,-5581,
+-5654,-5720,-5784,-5843,-5893,-5979,-6039,-6089,-6136,-6201,-6272,-6316,-6336,-6374,-6448,-6484,-6551,-6586,-6601,-6621,
+-6646,-6717,-6771,-6863,-6972,-7056,-7167,-7246,-7309,-7378,-7427,-7428,-7391,-7355,-7383,-7426,-7443,-7484,-7639,-7735,
+-7838,-7977,-8077,-8233,-8229,-8287,-8354,-8412,-8447,-8489,-8531,-8560,-8577,-8591,-8602,-8614,-8627,-8634,-8639,-8650,
+-8656,-8675,-8677,-8692,-8699,-8693,-8674,-8653,-8630,-8599,-8570,-8538,-8506,-8464,-8398,-8330,-8282,-8252,-8237,-8220,
+-8212,-8202,-8189,-8169,-8134,-8078,-8018,-7924,-7872,-7797,-7723,-7660,-7609,-7558,-7499,-7421,-7341,-7274,-7197,-7118,
+-7031,-6916,-6746,-6595,-6480,-6409,-6357,-6319,-6299,-6301,-6276,-6223,-6112,-5996,-5894,-5837,-5727,-5584,-5460,-5301,
+-5161,-5051,-4950,-4869,-4790,-4701,-4626,-4549,-4434,-4255,-4069,-3988,-3887,-3786,-3673,-3525,-3324,-3172,-3078,-3010,
+-2832,-2642,-2502,-2393,-2249,-2069,-1879,-1767,-1729,-1701,-1660,-1640,-1625,-1617,-1576,-1527,-1512,-1418,-1266,-1136,
+-1058,-1028,-958,-865,-826,-778,-682,-530,-197,352,702,982,1252,1612,1826,1910,2062,2011,2111,2150,
+2114,2122,2162,2163,2224,2285,2355,2422,2474,2530,2611,2677,2736,2780,2860,2918,2976,3021,3070,3121,
+3195,3271,3328,3393,3457,3523,3595,3671,3770,3863,3910,3965,3999,4024,4036,4085,4160,4212,4259,4317,
+4382,4450,4508,4582,4621,4605,4569,4544,4621,4740,4777,4820,5001,4984,4772,4766,4814,4918,4937,4967,
+4932,4887,4858,4893,4937,4989,5038,5069,5089,5095,5110,5132,5158,5170,5185,5197,5151,5124,5111,5098,
+5073,5068,5063,5070,5093,5118,5070,4860,4604,4330,4128,3996,3899,3956,4185,4342,4470,4618,4762,4926,
+5208,5550,5838,6074,6292,6458,6594,6630,6665,6719,6748,6738,6752,6784,6832,6880,6921,6952,6982,7001,
+7020,7001,7019,7047,7089,7138,7183,7236,7290,7324,7328,7309,7311,7348,7370,7385,7414,7453,7510,7590,
+7700,7768,7765,7845,7918,7870,7837,7777,7791,7868,7867,7898,7877,7571,7352,7340,7201,7172,6940,6531,
+6213,5903,5765,5794,5931,6074,6251,6404,6512,6553,6543,6520,6521,6570,6632,6696,6745,6781,6788,6750,
+6668,6524,6291,5995,5699,5547,5715,6183,6720,6986,7114,7104,7074,7015,7004,6830,6513,6235,6100,6023,
+5970,5930,5890,5817,5756,5720,5723,5748,5806,5860,5895,5911,5925,5915,5883,5830,5757,5702,5680,5574,
+5515,5458,5399,5348,5301,5264,5230,5191,5142,5090,5038,4991,4952,4922,4861,4828,4796,4738,4678,4611,
+4563,4506,4455,4416,4371,4326,4275,4228,4187,4142,4081,4034,3993,3947,3913,3873,3829,3786,3753,3735,
+3702,3679,3653,3629,3601,3572,3539,3499,3448,3380,3313,3257,3200,3158,3143,3133,3064,3016,3026,3018,
+2985,2926,2894,2870,2834,2789,2740,2692,2670,2626,2567,2545,2481,2443,2404,2365,2335,2337,2279,2245,
+2196,2157,2126,2100,2074,2054,2043,2040,2035,1989,1962,1922,1918,1938,1975,1905,1858,1870,1895,1921,
+1929,1914,1894,1874,1871,1866,1825,1782,1778,1743,1706,1663,1650,1682,1694,1685,1683,1693,1699,1698,
+1694,1700,1703,1701,1693,1678,1657,1637,1595,1577,1576,1565,1505,1494,1459,1438,1429,1423,1423,1388,
+1376,1393,1366,1347,1291,1310,1314,1312,1301,1272,1245,1217,1194,1177,1156,1137,1119,1103,1091,1087,
+1097,1108,1115,1108,1096,1087,1073,1052,1031,1017,1015,1021,1018,1009,997,991,988,965,955,1018,
+991,893,888,858,854,847,830,806,779,736,704,673,641,623,600,578,557,542,518,499,
+474,454,433,422,411,398,385,371,370,371,362,354,344,342,330,321,311,296,284,260,
+231,193,157,126,98,76,57,38,20,15,19,19,8,-13,-29,-57,-76,-98,-133,-172,
+-209,-244,-278,-309,-339,-376,-415,-445,-478,-508,-535,-569,-602,-634,-658,-689,-726,-756,-789,-810,
+-824,-840,-859,-871,-887,-901,-914,-928,-949,-963,-987,-1015,-1026,-1046,-1062,-1080,-1097,-1124,-1123,-1144,
+-1156,-1169,-1197,-1203,-1214,-1216,-1234,-1268,-1311,-1320,-1329,-1334,-1340,-1346,-1355,-1365,-1372,-1378,-1387,-1399,
+-1411,-1423,-1435,-1438,-1440,-1443,-1450,-1463,-1469,-1482,-1486,-1488,-1474,-1465,-1462,-1463,-1470,-1460,-1448,-1442,
+-1447,-1445,-1445,-1444,-1443,-1443,-1440,-1434,-1423,-1408,-1395,-1387,-1381,-1376,-1375,-1373,-1367,-1339,-1303,-1307,
+-1276,-1260,-1248,-1245,-1236,-1226,-1213,-1204,-1199,-1190,-1183,-1181,-1179,-1177,-1172,-1170,-1166,-1166,-1157,-1158,
+-1154,-1157,-1162,-1172,-1178,-1188,-1193,-1205,-1208,-1209,-1216,-1228,-1238,-1241,-1248,-1259,-1271,-1294,-1302,-1329,
+-1326,-1302,-1302,-1320,-1327,-1326,-1323,-1328,-1334,-1335,-1338,-1337,-1332,-1341,-1345,-1337,-1346,-1341,-1341,-1347,
+-1350,-1354,-1360,-1360,-1357,-1350,-1346,-1340,-1338,-1335,-1325,-1319,-1307,-1298,-1290,-1278,-1266,-1253,-1245,-1235,
+-1221,-1200,-1184,-1165,-1147,-1127,-1103,-1076,-1054,-1034,-1006,-969,-938,-910,-875,-838,-803,-766,-720,-683,
+-646,-602,-562,-525,-486,-440,-397,-351,-303,-260,-222,-190,-137,-106,-55,-20,0,-1,-31,-87,
+-176,-281,-201,86,445,728,877,865,854,939,1132,1410,1750,1927,2000,1998,1989,2156,1950,1674,
+1452,1187,1132,1137,1226,1263,1257,1298,1396,1550,1711,1836,1939,2001,2044,2091,2129,2177,2250,2315,
+2361,2400,2415,2416,2410,2403,2379,2336,2306,2284,2330,2317,2262,2168,2063,1966,1875,1784,1696,1615,
+1542,1471,1394,1318,1231,1147,1065,995,912,815,726,655,588,518,452,390,361,339,294,209,
+87,-45,-140,-186,-220,-257,-298,-340,-382,-418,-459,-498,-547,-594,-662,-723,-811,-886,-982,-1077,
+-1140,-1215,-1291,-1383,-1457,-1526,-1605,-1658,-1725,-1781,-1813,-1850,-1897,-1931,-1936,-1939,-1940,-1927,-1914,-1888,
+-1887,-1880,-1873,-1864,-1868,-1871,-1916,-1964,-2023,-2113,-2230,-2312,-2345,-2336,-2332,-2355,-2371,-2391,-2438,-2436,
+-2434,-2440,-2454,-2450,-2420,-2365,-2333,-2317,-2319,-2301,-2264,-2258,-2246,-2195,-2147,-2123,-2080,-2034,-1979,-1891,
+-1786,-1654,-1540,-1443,-1311,-1207,-1138,-1084,-1089,-1066,-1069,-1050,-1023,-972,-929,-895,-849,-809,-754,-689,
+-614,-527,-449,-402,-402,-411,-464,-478,-485,-507,-692,-791,-869,-887,-863,-904,-909,-885,-894,-902,
+-901,-899,-890,-885,-877,-874,-860,-829,-795,-779,-736,-743,-727,-703,-701,-688,-661,-641,-607,-567,
+-532,-508,-487,-464,-437,-402,-379,-346,-320,-306,-266,-230,-187,-143,-98,-72,-19,15,58,110,
+154,197,251,302,351,399,432,479,538,594,653,704,757,816,874,927,975,1016,1037,1066,
+1105,1129,1165,1207,1253,1288,1302,1327,1345,1376,1401,1433,1482,1510,1539,1553,1567,1569,1589,1612,
+1625,1650,1659,1625,1625,1624,1642,1660,1649,1653,1657,1661,1657,1651,1636,1630,1614,1610,1595,1580,
+1559,1553,1551,1560,1550,1543,1535,1535,1542,1553,1573,1591,1611,1634,1638,1643,1642,1640,1639,1647,
+1641,1647,1641,1648,1657,1627,1705,1671,1574,1519,1436,1387,1339,1279,1234,1188,1155,1125,1090,1044,
+1004,968,958,971,957,917,905,904,896,882,861,841,820,799,786,780,772,765,764,759,
+760,749,740,740,741,748,758,770,788,817,858,911,982,1080,1148,1209,1247,1290,1239,1160,
+1077,999,913,847,769,684,631,618,665,770,856,883,870,838,756,668,568,472,417,356,
+335,314,284,231,160,66,-33,-122,-193,-282,-344,-424,-493,-550,-584,-622,-688,-781,-871,-950,
+-997,-1037,-1074,-1093,-1095,-1083,-1067,-1050,-1058,-1062,-1091,-1125,-1155,-1204,-1323,-1407,-1452,-1517,-1531,-1547,
+-1546,-1520,-1467,-1410,-1323,-1209,-1125,-1104,-1182,-1279,-1382,-1440,-1396,-1407,-1445,-1441,-1415,-1451,-1489,-1483,
+-1485,-1502,-1516,-1512,-1536,-1589,-1662,-1736,-1823,-1930,-2034,-2100,-2115,-2097,-2055,-1954,-2014,-2165,-2240,-2233,
+-2292,-2427,-2518,-2588,-2589,-2633,-2717,-2823,-2949,-2955,-3068,-3186,-3296,-3393,-3456,-3522,-3597,-3632,-3653,-3675,
+-3697,-3707,-3726,-3738,-3767,-3807,-3825,-3834,-3856,-3887,-3906,-3940,-3993,-4060,-4114,-4171,-4239,-4283,-4291,-4306,
+-4299,-4254,-4169,-4014,-3828,-3797,-3838,-3838,-3861,-3857,-3846,-3820,-3802,-3789,-3771,-3737,-3714,-3723,-3878,-4020,
+-3732,-3922,-3957,-3934,-3922,-3941,-3978,-3978,-4045,-4049,-4049,-4120,-4181,-4164,-4056,-4216,-4208,-4262,-4354,-4383,
+-4331,-4328,-4348,-4362,-4440,-4507,-4592,-4690,-4772,-4833,-4885,-4944,-5011,-5077,-5142,-5200,-5258,-5317,-5378,-5434,
+-5504,-5580,-5644,-5702,-5765,-5832,-5884,-5950,-6004,-6090,-6134,-6162,-6202,-6245,-6321,-6363,-6430,-6453,-6481,-6482,
+-6545,-6619,-6621,-6696,-6807,-6887,-7003,-7102,-7172,-7243,-7309,-7317,-7316,-7224,-7153,-7265,-7353,-7421,-7492,-7587,
+-7679,-7781,-7908,-8048,-8133,-8140,-8201,-8269,-8327,-8363,-8403,-8444,-8476,-8496,-8511,-8522,-8534,-8549,-8561,-8566,
+-8573,-8585,-8602,-8609,-8612,-8635,-8628,-8594,-8565,-8538,-8508,-8470,-8430,-8400,-8354,-8289,-8237,-8206,-8182,-8163,
+-8138,-8108,-8089,-8082,-8072,-8039,-7996,-7956,-7864,-7815,-7750,-7694,-7635,-7579,-7528,-7469,-7399,-7328,-7252,-7168,
+-7091,-7015,-6915,-6766,-6622,-6526,-6461,-6427,-6404,-6379,-6358,-6312,-6232,-6117,-6004,-5911,-5867,-5744,-5592,-5473,
+-5321,-5169,-5069,-4986,-4905,-4826,-4748,-4658,-4561,-4441,-4257,-4100,-4044,-3956,-3853,-3719,-3550,-3342,-3193,-3126,
+-3041,-2849,-2660,-2516,-2421,-2298,-2130,-1954,-1849,-1813,-1775,-1744,-1701,-1645,-1601,-1524,-1451,-1473,-1468,-1390,
+-1240,-1146,-1066,-1011,-945,-927,-921,-903,-850,-615,-149,295,555,874,1292,1639,1879,2051,2167,2213,
+2247,2240,2254,2240,2197,2239,2332,2379,2480,2516,2528,2561,2609,2680,2720,2774,2836,2901,2926,2981,
+3036,3125,3206,3278,3326,3376,3443,3527,3597,3693,3771,3847,3900,3930,3952,3966,4005,4052,4106,4151,
+4211,4286,4340,4410,4473,4459,4415,4381,4386,4402,4547,4832,4873,4850,4921,4768,4719,4733,4841,4848,
+4769,4751,4754,4786,4819,4862,4904,4934,4963,5005,5032,5043,5067,5078,5065,5056,5069,5036,4990,4967,
+4929,4925,5005,5024,4976,4966,4951,4784,4640,4536,4387,4348,4238,4165,4221,4372,4513,4632,4748,4881,
+5126,5438,5716,5951,6171,6361,6502,6577,6639,6673,6719,6743,6720,6724,6763,6821,6873,6915,6948,6981,
+7008,7023,7013,7020,7039,7079,7121,7169,7224,7273,7304,7302,7289,7307,7346,7368,7386,7407,7440,7471,
+7488,7530,7625,7696,7672,7689,7702,7712,7690,7615,7639,7754,7945,7967,7728,7670,7677,7482,7234,6797,
+6330,6012,5785,5710,5766,5869,5994,6153,6309,6438,6539,6608,6655,6693,6739,6798,6869,6939,6967,6961,
+6914,6823,6713,6551,6331,6092,5870,5772,5993,6367,6730,6946,7024,6988,6938,7029,7053,6891,6603,6403,
+6302,6215,6158,6113,6056,5952,5769,5630,5609,5661,5745,5813,5862,5906,5920,5914,5887,5854,5824,5721,
+5633,5561,5500,5432,5367,5328,5283,5252,5218,5183,5152,5114,5080,5041,4984,4931,4891,4842,4790,4722,
+4687,4639,4558,4511,4471,4419,4371,4320,4267,4213,4162,4114,4073,4043,4016,3970,3931,3879,3827,3793,
+3768,3745,3726,3705,3681,3663,3642,3614,3572,3519,3459,3408,3348,3264,3215,3205,3163,3146,3118,3043,
+3014,2992,2989,2980,2943,2904,2873,2828,2757,2730,2650,2601,2581,2525,2510,2465,2426,2388,2365,2339,
+2297,2244,2211,2179,2156,2132,2102,2092,2089,2066,2035,1998,1970,1980,2052,1996,1917,1892,1901,1916,
+1935,1953,1940,1950,1921,1919,1905,1849,1817,1786,1748,1707,1668,1654,1676,1689,1678,1688,1689,1702,
+1685,1675,1685,1687,1698,1697,1698,1683,1655,1628,1606,1580,1562,1471,1463,1511,1465,1457,1453,1481,
+1359,1355,1413,1398,1408,1326,1282,1274,1263,1241,1223,1214,1196,1177,1153,1144,1122,1100,1082,1066,
+1061,1068,1085,1096,1091,1081,1072,1063,1042,1015,1001,1006,1016,1003,985,967,966,965,945,913,
+949,959,848,814,795,782,789,774,752,726,695,667,640,602,587,576,553,529,512,494,
+468,439,418,403,389,375,357,340,329,325,327,321,311,301,303,296,282,274,261,254,
+235,206,169,135,108,82,58,38,24,5,-1,-8,-8,-19,-31,-48,-66,-79,-101,-137,
+-173,-216,-249,-282,-313,-340,-375,-409,-438,-473,-508,-541,-573,-604,-634,-656,-684,-717,-753,-787,
+-816,-829,-846,-873,-889,-906,-921,-931,-943,-959,-973,-1002,-1026,-1040,-1048,-1064,-1076,-1096,-1110,-1127,
+-1144,-1154,-1170,-1191,-1202,-1207,-1208,-1228,-1256,-1295,-1309,-1317,-1318,-1319,-1321,-1337,-1344,-1353,-1358,-1363,
+-1380,-1394,-1402,-1411,-1422,-1424,-1422,-1430,-1438,-1442,-1451,-1462,-1469,-1461,-1451,-1453,-1453,-1452,-1442,-1435,
+-1428,-1422,-1416,-1411,-1402,-1397,-1398,-1397,-1394,-1388,-1379,-1365,-1360,-1353,-1352,-1350,-1350,-1340,-1306,-1303,
+-1262,-1244,-1233,-1220,-1210,-1197,-1189,-1180,-1176,-1170,-1160,-1156,-1152,-1149,-1145,-1141,-1141,-1141,-1134,-1130,
+-1133,-1132,-1134,-1140,-1138,-1149,-1160,-1162,-1172,-1180,-1187,-1197,-1214,-1224,-1231,-1232,-1239,-1261,-1268,-1286,
+-1310,-1279,-1291,-1297,-1295,-1310,-1321,-1317,-1322,-1329,-1327,-1325,-1320,-1318,-1331,-1323,-1312,-1325,-1321,-1325,
+-1334,-1340,-1346,-1349,-1350,-1349,-1343,-1336,-1329,-1327,-1327,-1322,-1309,-1300,-1294,-1283,-1271,-1261,-1252,-1245,
+-1231,-1214,-1197,-1178,-1156,-1140,-1124,-1102,-1080,-1058,-1033,-1000,-967,-938,-914,-877,-838,-809,-765,-723,
+-690,-655,-616,-570,-528,-493,-448,-403,-359,-316,-280,-242,-201,-167,-112,-58,-22,-5,-6,-18,
+-58,-133,-251,-279,-38,328,659,766,836,855,944,1109,1387,1813,1954,2078,2131,2018,2214,1985,
+1684,1372,1101,1042,1114,1216,1253,1292,1321,1400,1574,1748,1893,2005,2065,2109,2160,2201,2253,2321,
+2370,2398,2393,2383,2397,2402,2404,2376,2341,2306,2285,2301,2297,2253,2175,2082,1994,1909,1820,1736,
+1667,1599,1528,1451,1363,1275,1178,1094,1021,945,855,791,748,707,639,563,492,446,419,372,
+288,170,56,-27,-75,-121,-167,-215,-261,-309,-353,-382,-411,-454,-509,-582,-663,-745,-838,-944,
+-1037,-1089,-1152,-1230,-1320,-1392,-1466,-1544,-1605,-1666,-1709,-1746,-1784,-1834,-1874,-1884,-1891,-1894,-1878,-1873,
+-1860,-1848,-1839,-1835,-1833,-1842,-1847,-1904,-1954,-2024,-2132,-2248,-2336,-2366,-2348,-2318,-2345,-2361,-2382,-2420,
+-2436,-2436,-2437,-2437,-2432,-2422,-2392,-2358,-2322,-2314,-2298,-2277,-2268,-2220,-2169,-2127,-2090,-2049,-2013,-1955,
+-1879,-1782,-1645,-1546,-1434,-1319,-1227,-1128,-1063,-1057,-1017,-1029,-1016,-997,-961,-922,-892,-863,-798,-728,
+-669,-585,-489,-440,-408,-384,-389,-444,-443,-461,-517,-649,-857,-914,-939,-939,-957,-960,-955,-959,
+-951,-946,-943,-937,-934,-914,-895,-881,-864,-840,-810,-781,-765,-733,-719,-726,-718,-696,-664,-631,
+-597,-563,-537,-515,-496,-474,-430,-402,-376,-353,-326,-302,-274,-227,-183,-133,-85,-49,-7,40,
+94,135,178,253,279,341,383,437,491,549,585,647,709,774,820,870,923,965,998,1010,
+1028,1063,1088,1133,1180,1215,1237,1259,1294,1307,1325,1363,1401,1432,1457,1473,1477,1480,1504,1538,
+1582,1586,1578,1591,1612,1633,1636,1657,1665,1654,1659,1660,1660,1656,1635,1626,1621,1607,1585,1575,
+1563,1554,1543,1538,1536,1524,1531,1536,1544,1564,1575,1573,1580,1597,1606,1623,1615,1622,1619,1617,
+1619,1632,1631,1632,1635,1631,1573,1587,1558,1519,1426,1376,1328,1278,1234,1189,1153,1124,1097,1065,
+1027,991,966,947,929,919,911,902,896,888,875,858,839,821,809,800,795,792,789,786,
+783,774,767,761,759,762,765,771,784,804,831,877,957,997,1082,1143,1200,1230,1268,1262,
+1198,1117,1057,998,936,882,798,755,755,790,878,951,963,956,925,840,734,630,516,443,
+393,346,339,322,286,226,150,64,-20,-101,-195,-261,-341,-417,-480,-532,-571,-636,-702,-770,
+-822,-871,-906,-953,-982,-984,-967,-928,-899,-904,-950,-1013,-1072,-1141,-1223,-1349,-1417,-1451,-1500,-1497,
+-1494,-1494,-1466,-1428,-1402,-1323,-1210,-1123,-1071,-1071,-1142,-1391,-1484,-1428,-1314,-1322,-1421,-1455,-1475,-1499,
+-1490,-1478,-1488,-1495,-1479,-1529,-1573,-1611,-1658,-1737,-1856,-1987,-2061,-2053,-2006,-2018,-2002,-2029,-2149,-2231,
+-2288,-2337,-2485,-2549,-2548,-2523,-2609,-2715,-2824,-2943,-2987,-3057,-3172,-3293,-3386,-3447,-3504,-3567,-3593,-3625,
+-3656,-3675,-3681,-3697,-3710,-3742,-3783,-3796,-3811,-3844,-3862,-3889,-3917,-3920,-3976,-4028,-4135,-4177,-4173,-4182,
+-4246,-4270,-4233,-4155,-4024,-3938,-3862,-3802,-3753,-3782,-3808,-3805,-3778,-3759,-3748,-3721,-3691,-3655,-3670,-3821,
+-4000,-3734,-3811,-3873,-3870,-3869,-3909,-3943,-3989,-4009,-4009,-4000,-4046,-4107,-4100,-4001,-4144,-4071,-4077,-4274,
+-4338,-4353,-4311,-4312,-4328,-4348,-4410,-4494,-4596,-4680,-4749,-4806,-4858,-4924,-4995,-5058,-5117,-5179,-5241,-5291,
+-5343,-5421,-5504,-5564,-5620,-5685,-5742,-5809,-5879,-5942,-5975,-6019,-6078,-6143,-6192,-6233,-6295,-6331,-6357,-6373,
+-6408,-6483,-6556,-6583,-6662,-6715,-6847,-6941,-7034,-7122,-7169,-7212,-7235,-7203,-7151,-7119,-7148,-7263,-7319,-7383,
+-7453,-7631,-7715,-7813,-8001,-8043,-8062,-8125,-8183,-8238,-8275,-8317,-8355,-8383,-8401,-8415,-8430,-8439,-8452,-8466,
+-8482,-8494,-8517,-8529,-8548,-8556,-8588,-8579,-8544,-8513,-8489,-8457,-8402,-8354,-8314,-8263,-8215,-8185,-8182,-8158,
+-8119,-8069,-8028,-8013,-8016,-8016,-7982,-7943,-7912,-7829,-7762,-7722,-7663,-7607,-7548,-7488,-7426,-7363,-7294,-7216,
+-7136,-7072,-7001,-6911,-6786,-6655,-6543,-6484,-6457,-6438,-6413,-6388,-6331,-6234,-6114,-6000,-5917,-5887,-5748,-5586,
+-5476,-5334,-5206,-5094,-5030,-4959,-4861,-4758,-4656,-4550,-4445,-4297,-4181,-4113,-4026,-3914,-3746,-3540,-3332,-3217,
+-3180,-3098,-2880,-2684,-2545,-2460,-2349,-2206,-2051,-1952,-1907,-1866,-1811,-1750,-1665,-1598,-1508,-1411,-1423,-1441,
+-1449,-1373,-1277,-1186,-1086,-1022,-1012,-1020,-1036,-1018,-896,-680,-375,-117,290,939,1508,1773,1912,2146,
+2304,2346,2279,2254,2225,2261,2318,2487,2495,2643,2710,2645,2595,2514,2533,2594,2651,2736,2789,2832,
+2864,2908,2980,3035,3115,3191,3260,3328,3409,3488,3548,3585,3642,3729,3799,3828,3858,3895,3932,3983,
+4040,4102,4158,4211,4212,4235,4164,4103,4076,4099,4178,4373,4616,4684,4678,4723,4797,4841,4799,4763,
+4687,4627,4640,4687,4715,4744,4769,4807,4855,4882,4904,4922,4951,5001,5003,4975,4923,4901,4920,4838,
+4803,4797,4828,4874,4947,4872,4730,4651,4569,4574,4591,4546,4499,4443,4402,4467,4548,4650,4782,4877,
+5064,5337,5611,5827,6032,6224,6393,6519,6598,6640,6667,6707,6727,6698,6691,6738,6800,6849,6900,6929,
+6964,7000,7012,7006,7019,7051,7075,7113,7163,7211,7256,7281,7283,7274,7302,7341,7365,7404,7428,7446,
+7448,7450,7467,7492,7538,7606,7612,7604,7595,7565,7516,7516,7597,7878,7974,7959,7882,7889,7891,7608,
+7091,6477,6053,5796,5708,5746,5855,6027,6242,6462,6620,6704,6767,6771,6800,6843,6906,6999,7069,7103,
+7092,7044,6943,6852,6727,6568,6425,6284,6117,6048,6225,6501,6761,6834,6783,6772,6816,6905,6948,6922,
+6753,6578,6452,6370,6319,6229,6051,5932,5763,5574,5561,5629,5709,5776,5848,5893,5930,5926,5944,5889,
+5804,5701,5630,5601,5524,5400,5345,5313,5275,5245,5229,5222,5191,5161,5120,5070,5013,4960,4898,4840,
+4779,4709,4653,4615,4568,4523,4478,4427,4372,4311,4247,4191,4149,4100,4067,4033,3999,3957,3914,3872,
+3841,3817,3797,3781,3758,3755,3724,3706,3686,3655,3606,3544,3484,3414,3351,3297,3274,3281,3315,3322,
+3126,3066,3048,3079,3146,3117,3073,2999,2902,2825,2763,2691,2630,2614,2585,2563,2516,2488,2446,2421,
+2385,2342,2295,2263,2237,2215,2192,2166,2152,2145,2128,2097,2061,2037,2092,2159,2075,1960,1922,1927,
+1948,1953,1968,1980,1962,1960,1954,1922,1868,1859,1813,1759,1723,1697,1682,1667,1662,1683,1700,1702,
+1700,1685,1689,1674,1668,1689,1697,1702,1697,1683,1663,1623,1590,1568,1491,1433,1494,1445,1418,1424,
+1477,1356,1372,1428,1349,1304,1341,1293,1282,1247,1210,1203,1171,1175,1162,1142,1127,1107,1081,1063,
+1051,1047,1056,1075,1089,1067,1055,1042,1036,1021,996,985,990,983,975,960,944,942,947,928,
+893,893,969,890,790,746,744,741,727,706,682,662,634,605,577,555,547,528,504,479,
+462,438,411,388,371,353,336,322,304,297,293,294,294,279,261,275,261,252,247,236,
+222,198,170,138,112,99,86,70,56,44,19,-3,-23,-34,-48,-59,-66,-80,-90,-109,
+-143,-180,-222,-258,-290,-322,-346,-378,-410,-447,-483,-520,-552,-580,-610,-632,-656,-686,-714,-742,
+-774,-801,-826,-845,-866,-893,-917,-935,-949,-965,-978,-994,-1020,-1040,-1053,-1058,-1069,-1085,-1093,-1106,
+-1131,-1138,-1152,-1167,-1175,-1180,-1194,-1195,-1220,-1247,-1279,-1293,-1301,-1305,-1313,-1329,-1320,-1341,-1347,-1352,
+-1360,-1372,-1385,-1393,-1402,-1403,-1405,-1400,-1404,-1405,-1404,-1411,-1415,-1419,-1419,-1422,-1425,-1431,-1425,-1423,
+-1420,-1415,-1407,-1394,-1385,-1372,-1362,-1358,-1352,-1347,-1342,-1336,-1328,-1318,-1311,-1319,-1319,-1308,-1275,-1272,
+-1239,-1227,-1219,-1197,-1188,-1173,-1167,-1157,-1150,-1142,-1136,-1128,-1122,-1119,-1116,-1116,-1112,-1108,-1108,-1101,
+-1103,-1105,-1106,-1109,-1114,-1120,-1122,-1134,-1141,-1146,-1156,-1164,-1173,-1184,-1194,-1207,-1216,-1222,-1252,-1262,
+-1276,-1255,-1285,-1289,-1303,-1298,-1299,-1303,-1307,-1314,-1316,-1318,-1311,-1308,-1310,-1317,-1321,-1313,-1310,-1303,
+-1304,-1312,-1322,-1332,-1338,-1339,-1339,-1333,-1327,-1324,-1322,-1321,-1313,-1302,-1291,-1288,-1277,-1264,-1252,-1243,
+-1232,-1216,-1205,-1186,-1168,-1152,-1134,-1115,-1092,-1072,-1048,-1018,-986,-958,-933,-917,-878,-839,-810,-770,
+-732,-698,-663,-623,-578,-540,-499,-456,-413,-378,-338,-301,-258,-212,-167,-112,-64,-34,-15,-8,
+-2,-33,-98,-203,-302,-164,134,460,606,761,845,947,1100,1391,1703,1892,2068,2141,2149,2221,
+2120,1753,1390,1136,1067,1178,1229,1190,1199,1250,1365,1552,1744,1896,2011,2102,2147,2189,2241,2310,
+2374,2402,2406,2395,2387,2411,2420,2410,2385,2347,2317,2300,2289,2261,2224,2168,2101,2027,1943,1853,
+1771,1714,1656,1584,1498,1396,1297,1206,1112,1037,971,893,856,844,813,752,674,607,572,530,
+462,365,254,158,88,28,-27,-78,-123,-161,-218,-271,-299,-320,-372,-436,-499,-597,-690,-774,
+-880,-971,-1034,-1094,-1168,-1253,-1328,-1404,-1480,-1538,-1597,-1647,-1689,-1727,-1780,-1822,-1834,-1838,-1849,-1844,
+-1830,-1810,-1809,-1812,-1806,-1812,-1846,-1881,-1905,-1954,-2023,-2127,-2247,-2346,-2388,-2368,-2301,-2320,-2331,-2353,
+-2386,-2407,-2409,-2405,-2423,-2444,-2450,-2406,-2364,-2322,-2293,-2279,-2268,-2241,-2181,-2134,-2088,-2054,-2023,-1975,
+-1912,-1822,-1734,-1640,-1542,-1417,-1314,-1206,-1085,-1044,-1032,-1007,-995,-1034,-1018,-969,-914,-891,-861,-787,
+-685,-606,-553,-508,-473,-437,-409,-409,-407,-423,-453,-508,-619,-893,-991,-982,-964,-978,-989,-998,
+-997,-987,-982,-978,-973,-968,-942,-917,-898,-882,-863,-841,-808,-787,-763,-714,-736,-740,-723,-688,
+-658,-626,-596,-571,-549,-527,-504,-467,-437,-406,-378,-352,-326,-298,-268,-219,-162,-121,-67,-15,
+24,80,125,165,210,280,351,372,426,479,533,579,638,695,754,794,839,886,922,947,
+962,978,1010,1041,1078,1112,1173,1216,1231,1246,1263,1282,1301,1335,1377,1407,1409,1487,1464,1538,
+1536,1544,1567,1567,1601,1620,1631,1643,1644,1656,1649,1641,1638,1641,1630,1611,1594,1591,1573,1564,
+1559,1551,1536,1532,1534,1524,1515,1522,1525,1535,1555,1564,1579,1589,1586,1587,1596,1591,1595,1601,
+1593,1603,1598,1592,1601,1603,1592,1557,1571,1496,1426,1422,1346,1289,1276,1295,1177,1122,1095,1082,
+1065,1016,984,962,946,928,917,905,896,891,884,872,858,844,831,822,815,813,810,808,
+805,803,795,792,790,783,784,788,795,807,826,850,883,956,1007,1078,1127,1170,1203,1223,
+1226,1206,1172,1121,1078,1018,939,875,838,844,889,945,1030,1049,1044,1003,900,803,684,570,
+480,427,383,355,343,330,285,222,147,67,-19,-115,-181,-260,-331,-396,-460,-500,-557,-614,
+-660,-702,-755,-791,-841,-867,-873,-855,-816,-788,-799,-860,-941,-1026,-1129,-1233,-1337,-1399,-1439,-1456,
+-1443,-1423,-1399,-1371,-1357,-1329,-1288,-1242,-1151,-1060,-1017,-1089,-1420,-1563,-1504,-1336,-1240,-1385,-1469,-1502,
+-1503,-1491,-1483,-1475,-1480,-1488,-1550,-1591,-1599,-1601,-1664,-1773,-1891,-1942,-1893,-1886,-1977,-2042,-2027,-2143,
+-2259,-2354,-2437,-2513,-2554,-2531,-2541,-2607,-2714,-2836,-2894,-2949,-3077,-3184,-3308,-3405,-3457,-3503,-3542,-3558,
+-3596,-3625,-3650,-3665,-3665,-3676,-3692,-3721,-3747,-3769,-3797,-3838,-3891,-3950,-4009,-4028,-4038,-4038,-3941,-3862,
+-3896,-3978,-4050,-4086,-4121,-4023,-3929,-3829,-3703,-3690,-3722,-3747,-3713,-3743,-3738,-3711,-3684,-3642,-3605,-3612,
+-3779,-3975,-3745,-3681,-3806,-3808,-3818,-3852,-3904,-3948,-3926,-3946,-3946,-3979,-4033,-4080,-4041,-4099,-4112,-4005,
+-4171,-4269,-4312,-4319,-4266,-4287,-4303,-4334,-4407,-4494,-4570,-4651,-4719,-4772,-4834,-4900,-4970,-5034,-5100,-5156,
+-5197,-5259,-5336,-5417,-5482,-5541,-5598,-5673,-5739,-5783,-5844,-5927,-5970,-6005,-6030,-6096,-6165,-6209,-6224,-6232,
+-6277,-6364,-6358,-6371,-6506,-6548,-6659,-6790,-6882,-6963,-7011,-7060,-7105,-7132,-7116,-7091,-7099,-7064,-7227,-7294,
+-7348,-7371,-7588,-7649,-7749,-7940,-7945,-7993,-8056,-8108,-8154,-8186,-8227,-8261,-8290,-8307,-8321,-8334,-8348,-8363,
+-8389,-8403,-8416,-8444,-8465,-8490,-8509,-8533,-8540,-8506,-8480,-8458,-8418,-8354,-8297,-8249,-8198,-8162,-8152,-8168,
+-8145,-8097,-8042,-7999,-7984,-7981,-7975,-7955,-7915,-7844,-7763,-7707,-7682,-7625,-7570,-7510,-7450,-7392,-7333,-7264,
+-7190,-7118,-7048,-6978,-6894,-6783,-6679,-6554,-6499,-6491,-6459,-6423,-6395,-6343,-6235,-6108,-5990,-5920,-5886,-5743,
+-5587,-5477,-5366,-5259,-5132,-5073,-5006,-4898,-4768,-4659,-4544,-4452,-4350,-4251,-4178,-4086,-3964,-3769,-3520,-3333,
+-3275,-3237,-3141,-2922,-2735,-2601,-2519,-2415,-2292,-2161,-2072,-2018,-1955,-1884,-1800,-1702,-1613,-1509,-1419,-1402,
+-1402,-1428,-1415,-1390,-1327,-1229,-1132,-1084,-1077,-1089,-1091,-1035,-931,-763,-511,-69,587,1041,1316,1525,
+1731,1944,2129,2163,2149,2178,2161,2212,2322,2451,2562,2671,2652,2666,2489,2525,2613,2563,2661,2675,
+2736,2835,2845,2875,2931,3026,3115,3200,3270,3324,3366,3404,3422,3443,3500,3596,3686,3729,3776,3823,
+3885,3945,3977,3983,3992,3996,3961,3904,3850,3835,3875,3959,4074,4152,4232,4415,4527,4494,4591,4595,
+4650,4632,4597,4603,4616,4637,4653,4662,4694,4743,4792,4802,4821,4858,4898,4865,4886,4946,4844,4822,
+4852,4827,4747,4687,4685,4633,4520,4451,4442,4558,4671,4745,4645,4503,4521,4549,4592,4689,4791,4877,
+5015,5242,5500,5734,5919,6082,6238,6385,6505,6578,6625,6658,6694,6713,6677,6669,6711,6768,6820,6867,
+6903,6928,6962,6992,7012,7036,7060,7075,7108,7151,7189,7225,7247,7270,7268,7289,7323,7364,7414,7436,
+7442,7440,7434,7441,7452,7472,7500,7530,7534,7518,7493,7454,7442,7527,7731,7874,7891,7971,8121,8223,
+8047,7600,6979,6417,6102,5968,5861,5915,6081,6295,6510,6683,6781,6845,6861,6871,6900,6933,6995,7065,
+7125,7147,7127,7081,6976,6876,6756,6660,6601,6519,6400,6331,6427,6635,6683,6718,6772,6842,6835,6846,
+6917,6889,6781,6666,6542,6443,6364,6177,6058,5971,5774,5667,5658,5659,5684,5754,5834,5915,5959,5998,
+5988,5894,5779,5695,5627,5559,5474,5387,5342,5307,5272,5259,5255,5257,5241,5202,5153,5100,5044,4968,
+4900,4830,4783,4723,4661,4617,4578,4537,4484,4425,4364,4302,4242,4188,4136,4093,4054,4016,3979,3950,
+3921,3894,3870,3856,3838,3820,3795,3776,3759,3735,3707,3665,3616,3559,3503,3445,3378,3329,3360,3384,
+3414,3225,3180,3157,3199,3254,3276,3229,3150,2954,2864,2818,2766,2724,2663,2622,2587,2572,2535,2488,
+2452,2418,2382,2340,2309,2295,2287,2260,2232,2217,2186,2156,2134,2105,2085,2083,2069,2038,2000,1967,
+1954,1962,1973,1982,1988,2002,1989,1977,1927,1914,1870,1818,1789,1758,1732,1721,1704,1680,1694,1699,
+1726,1745,1694,1663,1656,1668,1687,1708,1699,1709,1704,1680,1632,1594,1563,1536,1476,1501,1465,1414,
+1392,1425,1342,1383,1416,1293,1255,1257,1317,1383,1323,1241,1183,1163,1146,1134,1111,1091,1072,1041,
+1030,1018,1022,1033,1063,1074,1040,1025,1018,1012,1001,983,962,961,960,949,939,934,932,931,
+919,891,871,901,928,910,746,726,717,702,684,661,636,609,581,548,519,504,489,476,
+452,421,400,381,357,338,319,303,284,270,261,260,263,265,254,243,262,233,229,218,
+200,180,156,132,109,102,117,139,156,161,138,89,17,-28,-57,-73,-84,-89,-99,-108,
+-124,-149,-184,-221,-259,-295,-330,-357,-388,-424,-461,-497,-535,-571,-604,-623,-639,-665,-693,-720,
+-744,-767,-787,-811,-836,-859,-889,-910,-931,-952,-970,-983,-1002,-1020,-1037,-1056,-1071,-1080,-1097,-1106,
+-1116,-1126,-1146,-1148,-1160,-1160,-1167,-1186,-1195,-1218,-1237,-1258,-1273,-1282,-1288,-1303,-1306,-1314,-1321,-1321,
+-1321,-1339,-1354,-1365,-1372,-1379,-1384,-1384,-1380,-1379,-1377,-1377,-1380,-1379,-1382,-1380,-1388,-1389,-1392,-1386,
+-1391,-1391,-1390,-1383,-1372,-1362,-1350,-1347,-1335,-1323,-1313,-1305,-1296,-1290,-1287,-1280,-1262,-1250,-1229,-1237,
+-1213,-1201,-1180,-1176,-1163,-1146,-1133,-1127,-1118,-1111,-1107,-1103,-1093,-1092,-1087,-1083,-1085,-1082,-1077,-1078,
+-1072,-1076,-1073,-1078,-1082,-1085,-1093,-1100,-1109,-1119,-1126,-1138,-1147,-1153,-1162,-1171,-1179,-1186,-1198,-1235,
+-1254,-1274,-1289,-1281,-1266,-1260,-1262,-1271,-1282,-1298,-1305,-1308,-1309,-1308,-1308,-1307,-1305,-1307,-1289,-1299,
+-1308,-1301,-1304,-1315,-1323,-1324,-1328,-1324,-1323,-1320,-1317,-1318,-1313,-1300,-1291,-1284,-1277,-1266,-1252,-1238,
+-1230,-1217,-1205,-1191,-1175,-1159,-1142,-1122,-1102,-1077,-1054,-1031,-1000,-974,-952,-931,-910,-874,-836,-805,
+-772,-737,-705,-669,-627,-592,-554,-511,-471,-435,-394,-357,-307,-258,-213,-170,-116,-78,-47,-18,
+6,11,-12,-65,-151,-286,-252,-15,292,487,694,855,964,1100,1364,1640,1839,2061,2162,2201,
+2159,2244,1882,1558,1278,1162,1256,1260,1231,1193,1219,1329,1491,1679,1861,2012,2124,2172,2206,2259,
+2328,2380,2393,2378,2388,2430,2442,2452,2438,2410,2383,2369,2343,2300,2258,2215,2172,2117,2054,1978,
+1881,1801,1752,1710,1647,1547,1427,1325,1238,1143,1066,1005,962,945,933,910,865,809,744,717,
+653,552,442,344,261,196,129,68,12,-32,-67,-116,-169,-213,-250,-311,-363,-421,-529,-624,
+-727,-815,-886,-957,-1019,-1088,-1167,-1246,-1329,-1408,-1476,-1530,-1592,-1644,-1685,-1735,-1776,-1800,-1806,-1812,
+-1804,-1788,-1759,-1769,-1779,-1770,-1784,-1807,-1846,-1876,-1946,-2030,-2144,-2263,-2358,-2398,-2361,-2279,-2268,-2272,
+-2295,-2335,-2372,-2385,-2396,-2413,-2430,-2435,-2397,-2344,-2302,-2266,-2256,-2241,-2191,-2135,-2096,-2046,-2003,-1965,
+-1910,-1846,-1762,-1680,-1593,-1502,-1398,-1297,-1165,-1087,-1059,-1032,-1019,-977,-969,-1014,-974,-926,-901,-839,
+-738,-659,-610,-561,-535,-508,-477,-443,-412,-390,-413,-473,-545,-612,-884,-1015,-1032,-1001,-903,-991,
+-1016,-1015,-1013,-1013,-1009,-1005,-999,-974,-944,-920,-900,-879,-858,-831,-804,-783,-770,-757,-750,-745,
+-713,-681,-652,-628,-605,-584,-557,-528,-498,-467,-437,-411,-382,-360,-331,-304,-251,-209,-151,-92,
+-44,3,62,115,158,196,240,297,348,397,453,513,542,597,670,712,754,792,830,864,
+891,918,943,968,1000,1040,1081,1117,1149,1165,1178,1202,1235,1289,1336,1396,1433,1415,1534,1529,
+1556,1553,1564,1579,1564,1593,1607,1613,1611,1623,1635,1625,1619,1592,1583,1574,1558,1561,1528,1513,
+1512,1517,1531,1528,1523,1518,1512,1507,1520,1516,1533,1555,1569,1568,1577,1566,1559,1572,1573,1575,
+1570,1574,1578,1565,1570,1578,1571,1559,1527,1504,1463,1422,1442,1323,1267,1312,1434,1187,1094,1072,
+1066,1055,1012,988,968,954,940,922,905,892,885,881,873,867,858,849,840,835,831,827,
+826,827,824,822,819,817,816,819,820,826,840,856,875,907,975,1003,1056,1092,1119,1144,
+1165,1171,1177,1209,1210,1177,1108,1032,973,912,923,954,1008,1088,1123,1112,1066,971,841,733,
+626,536,467,426,394,367,357,336,279,214,139,56,-34,-109,-190,-253,-318,-371,-425,-472,
+-516,-559,-605,-654,-690,-737,-761,-773,-770,-747,-726,-739,-790,-881,-994,-1106,-1203,-1284,-1335,-1387,
+-1388,-1358,-1304,-1260,-1247,-1266,-1273,-1275,-1242,-1163,-1059,-1028,-1152,-1439,-1619,-1598,-1387,-1232,-1216,-1403,
+-1538,-1596,-1568,-1539,-1497,-1479,-1519,-1589,-1607,-1616,-1605,-1635,-1680,-1720,-1751,-1771,-1813,-1948,-1969,-2068,
+-2199,-2278,-2354,-2424,-2503,-2542,-2547,-2576,-2615,-2721,-2825,-2818,-2902,-3050,-3159,-3284,-3388,-3454,-3496,-3527,
+-3553,-3576,-3600,-3622,-3645,-3649,-3645,-3654,-3680,-3707,-3723,-3751,-3796,-3850,-3896,-3975,-4069,-4089,-3969,-3783,
+-3575,-3609,-3691,-3714,-3960,-4049,-3988,-3871,-3770,-3689,-3615,-3655,-3702,-3643,-3601,-3698,-3687,-3656,-3632,-3600,
+-3607,-3705,-3917,-3717,-3614,-3743,-3754,-3773,-3800,-3844,-3871,-3867,-3890,-3907,-3915,-3935,-3989,-3957,-4019,-4106,
+-4092,-4064,-4188,-4241,-4277,-4284,-4289,-4274,-4273,-4323,-4384,-4468,-4548,-4620,-4681,-4740,-4797,-4872,-4945,-5007,
+-5059,-5104,-5168,-5244,-5329,-5400,-5471,-5522,-5573,-5641,-5718,-5784,-5804,-5850,-5919,-5987,-6029,-6075,-6088,-6110,
+-6158,-6249,-6263,-6287,-6352,-6353,-6472,-6630,-6710,-6793,-6853,-6912,-6961,-7011,-7033,-7002,-7007,-6995,-6998,-7158,
+-7237,-7303,-7385,-7535,-7585,-7691,-7859,-7876,-7924,-7979,-8025,-8065,-8094,-8131,-8165,-8196,-8213,-8231,-8249,-8265,
+-8288,-8317,-8337,-8347,-8375,-8402,-8422,-8442,-8473,-8481,-8456,-8431,-8405,-8357,-8295,-8243,-8196,-8160,-8135,-8127,
+-8134,-8100,-8057,-8014,-7978,-7962,-7948,-7945,-7934,-7895,-7824,-7751,-7680,-7637,-7587,-7534,-7474,-7416,-7360,-7304,
+-7238,-7164,-7095,-7026,-6945,-6867,-6769,-6659,-6542,-6520,-6513,-6482,-6438,-6397,-6338,-6224,-6095,-5976,-5917,-5893,
+-5753,-5610,-5508,-5414,-5310,-5172,-5108,-5036,-4939,-4799,-4660,-4538,-4451,-4363,-4284,-4220,-4135,-4005,-3801,-3564,
+-3388,-3331,-3290,-3171,-2960,-2788,-2677,-2598,-2497,-2389,-2287,-2198,-2130,-2057,-1968,-1865,-1768,-1653,-1525,-1452,
+-1415,-1390,-1391,-1376,-1370,-1354,-1310,-1244,-1195,-1142,-1108,-1112,-1078,-1018,-935,-751,-463,-89,271,537,
+847,1152,1439,1641,1833,1945,1980,2050,2109,2218,2353,2442,2564,2619,2633,2639,2676,2774,2689,2828,
+2699,2826,3111,3008,2985,2957,3103,3240,3286,3330,3336,3335,3347,3354,3346,3358,3424,3514,3572,3635,
+3694,3742,3763,3773,3772,3770,3747,3726,3708,3675,3673,3697,3745,3801,3834,3888,3975,4027,4085,4232,
+4345,4505,4480,4488,4487,4508,4612,4598,4571,4599,4644,4679,4691,4717,4732,4859,5085,5144,5136,4906,
+4717,4684,4618,4531,4560,4523,4369,4280,4295,4445,4546,4664,4691,4653,4561,4581,4621,4697,4792,4868,
+4968,5171,5387,5612,5824,5983,6103,6225,6343,6455,6538,6594,6634,6671,6691,6655,6645,6684,6732,6784,
+6836,6877,6894,6927,6958,7006,7029,7058,7080,7102,7138,7167,7192,7211,7245,7268,7289,7323,7364,7411,
+7439,7449,7451,7449,7434,7420,7432,7451,7466,7469,7459,7438,7407,7382,7483,7641,7741,7715,7849,8157,
+8296,8425,8052,7489,6932,6617,6390,6197,6139,6240,6424,6608,6774,6899,6952,6944,6911,6883,6876,6898,
+6959,7021,7076,7112,7105,7048,6977,6915,6865,6821,6739,6734,6682,6648,6588,6632,6649,6754,6970,6972,
+6889,6860,6791,6699,6635,6528,6441,6465,6367,6224,6210,6139,5995,5841,5825,5747,5688,5757,5818,5890,
+5954,5971,5953,5865,5777,5700,5623,5564,5468,5398,5340,5288,5281,5298,5297,5299,5266,5217,5163,5095,
+5027,4955,4894,4843,4804,4739,4686,4649,4612,4557,4494,4424,4355,4327,4233,4187,4146,4103,4067,4024,
+3988,3959,3939,3918,3900,3884,3857,3838,3831,3808,3777,3742,3704,3663,3620,3573,3527,3455,3393,3381,
+3398,3379,3275,3227,3243,3284,3284,3209,3122,3062,2977,2893,2833,2794,2745,2702,2679,2653,2618,2581,
+2543,2520,2495,2462,2427,2384,2354,2330,2309,2280,2252,2214,2186,2159,2143,2114,2085,2055,2048,2097,
+2037,2014,2013,2003,2009,2044,2017,2013,1999,1955,1972,1886,1840,1823,1813,1769,1759,1749,1730,1704,
+1716,1735,1736,1699,1671,1661,1675,1667,1684,1693,1706,1704,1678,1625,1578,1563,1567,1445,1515,1498,
+1430,1384,1368,1358,1434,1420,1317,1294,1282,1265,1232,1242,1263,1186,1149,1126,1099,1068,1051,1040,
+1020,998,996,996,1011,1028,1022,1001,985,970,963,972,973,946,931,933,935,926,923,920,
+920,912,888,873,899,858,860,801,719,701,685,664,639,614,588,563,536,499,475,456,
+441,422,394,370,347,330,305,281,262,246,235,226,225,231,230,227,211,233,197,194,
+172,151,126,106,84,73,104,176,264,318,338,331,198,62,-14,-74,-98,-103,-108,-118,
+-131,-145,-166,-195,-229,-263,-300,-339,-371,-405,-437,-475,-509,-545,-585,-613,-630,-649,-675,-707,
+-731,-754,-772,-786,-805,-831,-849,-881,-904,-922,-942,-961,-980,-1000,-1014,-1025,-1038,-1057,-1073,-1094,
+-1110,-1120,-1128,-1142,-1158,-1165,-1163,-1167,-1178,-1204,-1219,-1235,-1246,-1258,-1267,-1275,-1278,-1286,-1289,-1300,
+-1296,-1306,-1316,-1323,-1342,-1351,-1360,-1367,-1362,-1358,-1356,-1355,-1357,-1355,-1356,-1360,-1359,-1362,-1360,-1361,
+-1359,-1358,-1362,-1359,-1352,-1344,-1337,-1331,-1327,-1321,-1308,-1298,-1284,-1275,-1259,-1248,-1225,-1216,-1216,-1219,
+-1195,-1173,-1152,-1148,-1136,-1128,-1110,-1101,-1094,-1086,-1076,-1072,-1065,-1060,-1056,-1055,-1052,-1050,-1044,-1039,
+-1045,-1044,-1043,-1046,-1047,-1058,-1056,-1061,-1072,-1082,-1090,-1098,-1111,-1121,-1133,-1143,-1150,-1160,-1167,-1175,
+-1215,-1259,-1278,-1273,-1290,-1309,-1317,-1329,-1330,-1331,-1329,-1324,-1321,-1313,-1311,-1316,-1315,-1317,-1319,-1299,
+-1299,-1310,-1314,-1307,-1308,-1311,-1313,-1309,-1308,-1305,-1301,-1301,-1302,-1298,-1291,-1282,-1274,-1269,-1260,-1248,
+-1231,-1220,-1209,-1194,-1178,-1162,-1147,-1132,-1117,-1093,-1070,-1045,-1018,-995,-972,-949,-922,-902,-870,-841,
+-808,-771,-742,-708,-677,-638,-600,-565,-524,-482,-449,-408,-362,-308,-261,-219,-172,-127,-92,-51,
+-11,14,22,6,-32,-108,-245,-305,-119,131,421,646,843,983,1138,1276,1529,1919,2074,2246,
+2280,2244,2263,2008,1726,1377,1283,1304,1318,1302,1274,1253,1322,1448,1630,1829,2006,2147,2212,2233,
+2262,2330,2372,2370,2359,2407,2481,2507,2510,2486,2454,2435,2422,2390,2346,2294,2244,2193,2142,2089,
+2022,1939,1859,1807,1761,1699,1598,1472,1360,1267,1177,1109,1059,1031,1023,1012,997,973,931,874,
+830,749,634,524,436,353,289,221,157,104,53,8,-42,-87,-145,-211,-279,-335,-387,-469,
+-553,-652,-740,-802,-863,-931,-1000,-1077,-1154,-1241,-1332,-1415,-1474,-1538,-1600,-1642,-1689,-1731,-1757,-1768,
+-1766,-1763,-1755,-1746,-1753,-1730,-1726,-1752,-1779,-1799,-1847,-1936,-2054,-2178,-2280,-2360,-2389,-2332,-2244,-2221,
+-2226,-2254,-2289,-2320,-2345,-2371,-2379,-2383,-2378,-2341,-2306,-2254,-2223,-2214,-2181,-2123,-2081,-2057,-1992,-1943,
+-1885,-1830,-1769,-1703,-1619,-1540,-1441,-1347,-1250,-1157,-1106,-1091,-1063,-1034,-1006,-988,-972,-934,-900,-857,
+-786,-744,-693,-628,-596,-574,-548,-506,-478,-449,-451,-464,-480,-551,-623,-831,-1022,-1066,-1042,-992,
+-1011,-1037,-1019,-1030,-1025,-1039,-1040,-1028,-1003,-972,-944,-917,-898,-876,-849,-822,-794,-782,-774,-771,
+-748,-725,-701,-678,-660,-643,-618,-587,-556,-527,-496,-466,-442,-413,-390,-367,-341,-290,-247,-196,
+-134,-85,-27,31,68,119,169,211,256,310,361,420,467,508,560,619,674,714,756,797,
+845,884,912,934,959,985,1026,1044,1075,1126,1168,1206,1244,1266,1349,1395,1430,1483,1480,1510,
+1522,1517,1523,1528,1542,1545,1553,1571,1575,1582,1580,1568,1555,1548,1556,1560,1536,1531,1523,1519,
+1528,1495,1492,1512,1507,1505,1504,1500,1492,1505,1503,1516,1533,1546,1540,1539,1537,1533,1529,1542,
+1546,1551,1560,1553,1547,1555,1545,1539,1526,1495,1501,1443,1442,1307,1264,1241,1324,1408,1148,1072,
+1050,1051,1037,1004,984,967,960,944,921,900,890,887,887,883,880,874,866,857,852,851,
+847,848,848,848,850,847,847,847,852,856,865,879,894,907,932,968,1005,1034,1072,1090,
+1096,1116,1136,1169,1250,1283,1287,1240,1152,1053,983,987,1029,1066,1133,1172,1161,1095,994,876,
+751,660,598,512,466,442,423,413,391,338,275,204,125,42,-30,-112,-176,-235,-281,-333,
+-378,-413,-456,-500,-553,-593,-641,-665,-688,-710,-697,-680,-685,-734,-834,-964,-1075,-1161,-1222,-1285,
+-1331,-1328,-1245,-1141,-1093,-1139,-1167,-1203,-1249,-1235,-1186,-1089,-1112,-1244,-1433,-1607,-1641,-1462,-1265,-1144,
+-1179,-1505,-1673,-1679,-1589,-1511,-1500,-1536,-1569,-1613,-1636,-1627,-1586,-1574,-1576,-1641,-1704,-1815,-2021,-2133,
+-2164,-2227,-2276,-2334,-2405,-2454,-2505,-2544,-2592,-2661,-2751,-2790,-2791,-2909,-3041,-3147,-3248,-3344,-3419,-3465,
+-3489,-3511,-3540,-3575,-3591,-3606,-3609,-3607,-3613,-3636,-3656,-3665,-3702,-3740,-3786,-3812,-3816,-3926,-3953,-3848,
+-3657,-3460,-3590,-3723,-3824,-3990,-4006,-3934,-3837,-3717,-3648,-3597,-3596,-3620,-3590,-3601,-3656,-3662,-3638,-3646,
+-3604,-3582,-3647,-3843,-3810,-3597,-3664,-3696,-3724,-3760,-3790,-3801,-3798,-3813,-3839,-3852,-3843,-3883,-3886,-3911,
+-4043,-4074,-4026,-4116,-4166,-4213,-4265,-4285,-4256,-4223,-4257,-4283,-4337,-4433,-4513,-4582,-4650,-4703,-4776,-4856,
+-4913,-4955,-5009,-5075,-5153,-5241,-5321,-5375,-5415,-5503,-5569,-5617,-5689,-5753,-5815,-5850,-5893,-5947,-5967,-6008,
+-6055,-6123,-6128,-6158,-6243,-6287,-6349,-6456,-6543,-6618,-6696,-6769,-6833,-6876,-6903,-6918,-6924,-6914,-6931,-6968,
+-7081,-7161,-7250,-7364,-7470,-7518,-7637,-7769,-7804,-7845,-7890,-7929,-7965,-7995,-8030,-8066,-8097,-8122,-8147,-8171,
+-8190,-8223,-8247,-8272,-8285,-8308,-8335,-8349,-8357,-8395,-8396,-8366,-8340,-8306,-8269,-8221,-8171,-8135,-8108,-8095,
+-8082,-8074,-8036,-8000,-7970,-7939,-7920,-7905,-7900,-7889,-7840,-7772,-7709,-7645,-7592,-7543,-7493,-7436,-7384,-7329,
+-7271,-7208,-7142,-7078,-7008,-6934,-6850,-6733,-6603,-6509,-6523,-6522,-6489,-6445,-6399,-6320,-6203,-6078,-5965,-5922,
+-5908,-5778,-5655,-5545,-5452,-5346,-5202,-5132,-5061,-4959,-4815,-4654,-4539,-4461,-4376,-4303,-4245,-4165,-4037,-3858,
+-3646,-3501,-3411,-3319,-3182,-2990,-2844,-2762,-2675,-2579,-2485,-2397,-2308,-2233,-2151,-2056,-1950,-1842,-1715,-1579,
+-1509,-1451,-1394,-1360,-1317,-1290,-1275,-1249,-1216,-1210,-1202,-1188,-1170,-1114,-1040,-1007,-868,-653,-463,-310,
+-93,191,525,851,1111,1359,1573,1747,1893,1986,2094,2196,2273,2376,2467,2563,2632,2690,2781,2774,
+2813,2761,2900,3084,3152,3308,3076,3276,3385,3498,3499,3304,3300,3364,3396,3342,3292,3305,3397,3473,
+3480,3502,3562,3621,3670,3738,3696,3671,3679,3734,3771,3752,3743,3767,3834,3866,3852,3824,3836,3929,
+4084,4246,4280,4276,4412,4387,4386,4426,4563,4583,4623,4704,4667,4640,4599,4602,4854,4834,4846,4750,
+4561,4462,4438,4350,4267,4250,4208,4224,4247,4268,4302,4429,4562,4505,4558,4621,4644,4697,4766,4807,
+4910,5098,5303,5501,5707,5893,6027,6119,6210,6294,6385,6478,6545,6591,6636,6673,6644,6627,6650,6694,
+6743,6798,6834,6861,6893,6926,6969,7003,7050,7084,7110,7142,7158,7184,7216,7239,7262,7280,7314,7353,
+7392,7439,7464,7469,7455,7445,7425,7413,7419,7435,7434,7423,7399,7368,7351,7405,7509,7540,7570,7737,
+8162,8455,8441,8308,7865,7430,7145,6924,6671,6594,6692,6836,6952,7061,7249,7368,7327,7230,7050,6928,
+6866,6871,6931,7005,7050,7068,7033,7008,6988,6963,6934,6909,6981,6965,6904,6843,6804,6731,6756,6993,
+7009,7011,6911,6865,6641,6475,6349,6264,6297,6479,6512,6422,6391,6237,6066,5969,5958,5671,5580,5632,
+5738,5856,5919,5940,5912,5853,5783,5719,5650,5590,5521,5437,5358,5313,5289,5254,5238,5240,5193,5136,
+5103,5064,5013,4958,4911,4881,4845,4768,4726,4691,4633,4572,4498,4426,4361,4297,4254,4231,4154,4112,
+4109,4100,4059,4005,3974,3953,3920,3892,3872,3861,3836,3810,3772,3726,3693,3659,3626,3592,3520,3461,
+3428,3439,3394,3331,3298,3314,3458,3386,3193,3101,3058,3014,2960,2874,2818,2786,2749,2724,2702,2682,
+2666,2642,2612,2571,2530,2487,2443,2407,2388,2363,2337,2295,2252,2230,2191,2178,2158,2123,2098,2086,
+2110,2190,2154,2107,2059,2064,2037,2040,2042,2023,1987,1964,1920,1887,1883,1827,1817,1798,1782,1750,
+1741,1723,1722,1713,1691,1690,1693,1658,1650,1679,1684,1685,1678,1648,1592,1558,1541,1534,1455,1527,
+1509,1470,1413,1370,1371,1429,1431,1330,1276,1249,1213,1179,1155,1201,1185,1150,1104,1069,1032,1013,
+1007,1000,987,980,973,971,975,972,957,939,934,927,956,1000,919,900,900,912,904,899,
+894,893,894,882,871,844,814,806,911,755,681,663,643,617,593,575,549,527,491,463,
+435,401,392,371,346,319,301,278,253,225,204,192,186,185,192,191,196,186,171,156,
+151,128,102,75,55,49,45,133,231,316,423,316,214,174,88,33,-88,-125,-128,-132,
+-139,-150,-165,-183,-214,-248,-279,-314,-351,-385,-419,-452,-483,-514,-552,-583,-611,-635,-658,-683,
+-714,-744,-770,-784,-801,-814,-836,-856,-884,-902,-918,-940,-958,-979,-1000,-1013,-1022,-1028,-1040,-1058,
+-1073,-1092,-1103,-1118,-1146,-1162,-1170,-1172,-1173,-1177,-1199,-1207,-1219,-1226,-1233,-1243,-1255,-1264,-1265,-1279,
+-1276,-1280,-1285,-1301,-1307,-1317,-1327,-1338,-1344,-1345,-1340,-1336,-1334,-1332,-1333,-1334,-1334,-1332,-1332,-1333,
+-1332,-1330,-1328,-1336,-1336,-1328,-1319,-1308,-1299,-1291,-1282,-1275,-1277,-1260,-1247,-1225,-1215,-1210,-1198,-1178,
+-1164,-1142,-1130,-1119,-1110,-1099,-1084,-1077,-1068,-1063,-1057,-1051,-1042,-1036,-1034,-1030,-1026,-1022,-1023,-1015,
+-1014,-1010,-1010,-1012,-1020,-1023,-1031,-1034,-1037,-1048,-1055,-1063,-1074,-1084,-1095,-1108,-1122,-1131,-1143,-1153,
+-1167,-1190,-1210,-1264,-1275,-1285,-1290,-1299,-1316,-1311,-1295,-1289,-1289,-1291,-1294,-1292,-1295,-1292,-1294,-1290,
+-1285,-1281,-1279,-1291,-1307,-1295,-1301,-1303,-1298,-1294,-1291,-1290,-1284,-1280,-1279,-1276,-1269,-1259,-1252,-1244,
+-1233,-1225,-1219,-1204,-1188,-1171,-1156,-1141,-1126,-1112,-1093,-1067,-1040,-1015,-995,-976,-951,-919,-895,-874,
+-844,-813,-779,-745,-711,-677,-643,-609,-564,-527,-497,-457,-409,-364,-323,-274,-226,-180,-138,-97,
+-51,-7,19,32,26,-8,-77,-188,-299,-190,63,367,635,872,1062,1228,1331,1516,1874,2223,
+2333,2340,2243,2162,2122,1887,1547,1444,1385,1415,1328,1336,1322,1348,1454,1601,1803,2012,2173,2268,
+2272,2288,2330,2349,2348,2354,2408,2487,2554,2568,2535,2484,2446,2445,2435,2404,2352,2301,2241,2177,
+2125,2077,2012,1938,1873,1812,1748,1648,1525,1414,1320,1246,1180,1128,1095,1080,1069,1063,1057,1024,
+976,913,833,726,626,540,453,382,314,255,199,136,80,30,-23,-96,-174,-253,-300,-342,
+-404,-488,-570,-639,-708,-752,-811,-884,-977,-1067,-1158,-1252,-1337,-1416,-1493,-1557,-1609,-1640,-1692,-1723,
+-1739,-1733,-1723,-1717,-1719,-1696,-1693,-1713,-1737,-1762,-1787,-1827,-1936,-2060,-2170,-2265,-2334,-2356,-2293,-2213,
+-2182,-2202,-2230,-2258,-2279,-2294,-2313,-2326,-2325,-2299,-2275,-2250,-2187,-2156,-2138,-2103,-2042,-2029,-2010,-1935,
+-1875,-1811,-1745,-1678,-1624,-1560,-1471,-1383,-1292,-1217,-1145,-1098,-1104,-1089,-1065,-1046,-1026,-972,-931,-905,
+-857,-813,-751,-700,-646,-630,-601,-570,-552,-530,-525,-532,-527,-529,-585,-668,-772,-918,-1078,-1100,
+-1079,-1048,-1072,-1058,-1054,-1024,-1072,-1076,-1060,-1031,-995,-963,-936,-917,-899,-864,-822,-808,-794,-784,
+-768,-757,-741,-722,-707,-690,-674,-642,-615,-581,-553,-521,-493,-470,-441,-418,-393,-367,-324,-281,
+-240,-193,-144,-78,-16,37,76,127,172,216,278,333,385,441,485,538,583,650,703,752,
+800,850,880,913,939,974,1022,1057,1089,1105,1142,1174,1209,1227,1281,1442,1450,1430,1462,1477,
+1505,1498,1523,1525,1533,1509,1537,1530,1542,1524,1526,1532,1531,1515,1503,1501,1501,1493,1494,1482,
+1476,1476,1467,1470,1490,1492,1492,1492,1485,1468,1482,1493,1505,1517,1524,1518,1516,1503,1513,1506,
+1524,1530,1542,1519,1538,1538,1531,1513,1504,1466,1435,1405,1353,1307,1298,1243,1222,1298,1172,1084,
+1085,1048,1028,1008,981,968,963,948,939,920,900,895,898,896,894,893,889,882,876,868,
+868,868,872,876,878,878,879,877,884,892,899,908,921,936,953,972,991,1002,1022,1057,
+1078,1085,1111,1142,1190,1294,1381,1385,1350,1271,1141,1049,1036,1067,1107,1160,1219,1198,1128,1002,
+858,752,685,655,568,518,491,481,483,456,399,338,268,194,120,50,-26,-91,-146,-189,
+-243,-276,-312,-350,-400,-440,-481,-533,-572,-602,-638,-634,-631,-643,-693,-787,-901,-1028,-1097,-1153,
+-1232,-1274,-1237,-1122,-1008,-976,-1043,-1074,-1112,-1176,-1206,-1197,-1168,-1267,-1341,-1429,-1552,-1625,-1540,-1316,
+-1176,-1140,-1361,-1620,-1712,-1627,-1494,-1488,-1496,-1542,-1622,-1651,-1621,-1574,-1535,-1563,-1640,-1711,-1875,-2132,
+-2205,-2211,-2220,-2257,-2321,-2370,-2408,-2474,-2538,-2551,-2619,-2714,-2776,-2860,-2967,-3073,-3159,-3240,-3315,-3382,
+-3424,-3437,-3457,-3490,-3537,-3561,-3578,-3576,-3570,-3570,-3582,-3592,-3602,-3641,-3684,-3741,-3791,-3824,-3835,-3765,
+-3656,-3479,-3430,-3566,-3806,-3947,-3981,-3944,-3849,-3760,-3651,-3605,-3588,-3551,-3549,-3580,-3588,-3614,-3637,-3653,
+-3630,-3592,-3581,-3613,-3735,-3837,-3537,-3564,-3639,-3681,-3709,-3714,-3727,-3721,-3735,-3775,-3784,-3805,-3833,-3823,
+-3816,-3969,-4023,-4025,-4053,-4099,-4163,-4214,-4229,-4211,-4178,-4198,-4224,-4246,-4288,-4390,-4479,-4549,-4623,-4692,
+-4757,-4813,-4859,-4918,-4983,-5066,-5155,-5237,-5269,-5347,-5431,-5497,-5572,-5628,-5671,-5722,-5782,-5822,-5839,-5866,
+-5925,-5993,-6005,-6051,-6118,-6102,-6141,-6350,-6398,-6464,-6527,-6613,-6686,-6741,-6745,-6766,-6775,-6773,-6852,-6878,
+-6936,-7002,-7094,-7198,-7330,-7389,-7471,-7578,-7674,-7718,-7762,-7787,-7828,-7862,-7893,-7929,-7968,-8003,-8032,-8062,
+-8093,-8116,-8151,-8168,-8201,-8216,-8236,-8255,-8265,-8263,-8293,-8288,-8249,-8215,-8185,-8158,-8113,-8076,-8052,-8029,
+-8004,-7993,-7982,-7949,-7924,-7904,-7880,-7855,-7835,-7824,-7806,-7756,-7689,-7636,-7583,-7537,-7494,-7440,-7392,-7345,
+-7293,-7233,-7171,-7108,-7053,-6982,-6910,-6825,-6709,-6574,-6491,-6510,-6512,-6485,-6443,-6403,-6304,-6184,-6051,-5937,
+-5935,-5917,-5795,-5681,-5572,-5476,-5365,-5235,-5167,-5081,-4960,-4809,-4657,-4547,-4465,-4395,-4321,-4261,-4189,-4083,
+-3925,-3758,-3600,-3455,-3344,-3197,-3030,-2909,-2841,-2762,-2665,-2575,-2496,-2402,-2318,-2230,-2134,-2028,-1921,-1788,
+-1648,-1569,-1500,-1416,-1348,-1270,-1207,-1185,-1162,-1124,-1118,-1129,-1174,-1219,-1208,-1130,-1004,-916,-751,-609,
+-505,-398,-277,-71,213,490,743,976,1216,1444,1669,1804,1910,2061,2179,2287,2378,2450,2509,2583,
+2661,2667,2681,2771,2908,3044,3101,3004,3096,3295,3494,3396,3315,3401,3493,3653,3601,3393,3429,3622,
+3725,3560,3540,3591,3729,3813,4069,3898,3909,3920,4008,3962,3996,4051,4113,4233,4295,4194,4128,4053,
+4013,4120,4172,4260,4269,4426,4485,4521,4515,4596,4638,4763,4857,4925,4864,4656,4702,4634,4606,4593,
+4554,4465,4345,4106,4004,3934,3904,3917,3986,4030,4087,4107,4172,4313,4384,4497,4621,4715,4797,4820,
+4891,5060,5247,5419,5591,5784,5954,6071,6144,6203,6263,6326,6409,6482,6533,6596,6658,6642,6610,6621,
+6658,6704,6751,6780,6814,6846,6877,6922,6969,7018,7068,7105,7135,7146,7166,7204,7238,7247,7259,7281,
+7311,7355,7414,7448,7456,7459,7453,7429,7413,7404,7405,7413,7421,7401,7370,7356,7394,7434,7432,7475,
+7668,8051,8374,8539,8408,8147,7767,7565,7445,7322,7293,7406,7459,7476,7522,7705,7796,7768,7687,7492,
+7273,7108,6989,6922,6943,6998,7053,7079,7066,7045,7050,7103,7123,7115,7070,7031,7000,6973,6899,6865,
+6976,6925,6985,6993,6961,6787,6531,6310,6162,6127,6260,6471,6566,6469,6349,6227,6097,6130,5793,5465,
+5449,5557,5686,5801,5879,5911,5907,5837,5821,5804,5791,5709,5630,5572,5498,5354,5229,5162,5106,5056,
+5043,5061,5071,5067,5034,4993,4934,4889,4883,4790,4748,4710,4654,4583,4511,4445,4376,4320,4292,4211,
+4185,4151,4121,4088,4064,4040,4018,3988,3964,3951,3930,3877,3852,3828,3782,3735,3698,3660,3646,3597,
+3523,3490,3508,3505,3399,3369,3362,3371,3317,3236,3208,3171,3080,3012,2960,2905,2865,2824,2793,2765,
+2736,2713,2690,2662,2631,2597,2553,2512,2472,2447,2416,2377,2334,2294,2259,2233,2229,2211,2183,2165,
+2148,2166,2259,2300,2230,2151,2090,2055,2069,2068,2052,2029,1997,1976,1951,1896,1885,1855,1829,1799,
+1777,1768,1742,1714,1708,1715,1735,1707,1651,1664,1651,1648,1643,1626,1607,1569,1526,1514,1467,1488,
+1528,1519,1500,1442,1393,1371,1402,1512,1352,1321,1294,1256,1228,1249,1238,1198,1126,1064,1028,999,
+991,997,1008,993,970,947,933,927,921,917,907,903,909,916,900,880,872,872,885,887,
+867,862,857,855,867,857,828,788,764,866,836,667,644,628,601,576,560,536,517,487,
+454,415,391,364,344,323,299,275,255,231,199,175,153,145,138,144,152,150,155,141,
+124,109,98,71,44,21,9,10,79,147,234,228,132,52,7,5,-18,-111,-152,-160,
+-160,-163,-169,-182,-200,-227,-262,-295,-330,-365,-399,-430,-461,-491,-521,-553,-584,-611,-635,-662,
+-690,-722,-754,-784,-803,-818,-837,-855,-874,-885,-900,-916,-937,-956,-977,-997,-1012,-1022,-1027,-1035,
+-1045,-1054,-1075,-1086,-1107,-1132,-1153,-1169,-1177,-1179,-1183,-1190,-1198,-1207,-1211,-1215,-1221,-1230,-1244,-1255,
+-1253,-1250,-1250,-1260,-1269,-1273,-1286,-1301,-1309,-1319,-1321,-1319,-1314,-1311,-1310,-1308,-1310,-1307,-1306,-1301,
+-1303,-1305,-1298,-1293,-1297,-1302,-1304,-1295,-1278,-1273,-1260,-1248,-1233,-1254,-1240,-1238,-1213,-1202,-1163,-1132,
+-1120,-1116,-1108,-1092,-1087,-1084,-1074,-1061,-1056,-1046,-1034,-1021,-1016,-1006,-999,-997,-994,-993,-994,-990,
+-983,-984,-979,-986,-984,-994,-1003,-1009,-1018,-1023,-1029,-1033,-1038,-1051,-1061,-1070,-1080,-1099,-1116,-1125,
+-1136,-1149,-1186,-1201,-1245,-1244,-1262,-1257,-1259,-1272,-1273,-1270,-1276,-1285,-1288,-1286,-1287,-1290,-1290,-1295,
+-1286,-1277,-1270,-1279,-1269,-1265,-1225,-1234,-1267,-1278,-1281,-1282,-1282,-1275,-1268,-1264,-1259,-1253,-1245,-1238,
+-1228,-1222,-1210,-1203,-1193,-1176,-1162,-1147,-1133,-1120,-1109,-1089,-1064,-1035,-1010,-992,-969,-947,-918,-892,
+-872,-844,-810,-777,-746,-707,-676,-641,-604,-568,-530,-495,-456,-418,-382,-341,-288,-236,-188,-145,
+-100,-51,-8,22,39,35,7,-54,-132,-259,-267,24,342,623,896,1090,1272,1389,1482,1737,
+2134,2311,2305,2316,2043,2097,1958,1729,1461,1459,1518,1383,1348,1375,1399,1490,1607,1784,1985,2167,
+2304,2333,2326,2330,2335,2361,2386,2428,2505,2589,2617,2590,2519,2486,2481,2478,2451,2406,2351,2288,
+2217,2171,2128,2075,2000,1919,1853,1781,1691,1576,1459,1366,1299,1241,1190,1151,1126,1110,1110,1112,
+1090,1044,982,905,818,726,638,546,473,410,346,282,211,155,98,32,-49,-131,-205,-240,
+-293,-359,-444,-519,-577,-625,-667,-709,-777,-858,-964,-1079,-1188,-1269,-1364,-1456,-1522,-1578,-1618,-1662,
+-1698,-1712,-1711,-1703,-1693,-1687,-1671,-1676,-1709,-1717,-1730,-1764,-1825,-1914,-2033,-2151,-2242,-2303,-2318,-2241,
+-2173,-2158,-2170,-2210,-2224,-2243,-2252,-2254,-2267,-2264,-2234,-2215,-2170,-2111,-2086,-2059,-2017,-1970,-1970,-1974,
+-1891,-1818,-1746,-1655,-1585,-1537,-1478,-1400,-1327,-1263,-1209,-1152,-1130,-1117,-1104,-1085,-1069,-1048,-980,-927,
+-903,-863,-826,-777,-727,-687,-647,-609,-577,-574,-555,-536,-537,-542,-592,-622,-743,-811,-834,-1065,
+-1140,-1135,-1127,-1111,-1087,-1082,-1085,-1101,-1101,-1092,-1064,-1021,-983,-949,-923,-896,-842,-756,-818,-805,
+-796,-785,-767,-761,-744,-728,-713,-697,-649,-643,-611,-582,-548,-509,-483,-464,-440,-412,-388,-351,
+-311,-269,-220,-176,-131,-76,-19,28,80,125,181,249,302,365,431,490,542,601,660,714,
+760,808,858,892,915,951,995,1034,1055,1084,1093,1122,1159,1188,1220,1282,1336,1357,1404,1459,
+1441,1499,1502,1480,1485,1488,1498,1488,1493,1500,1491,1484,1477,1467,1473,1463,1471,1492,1467,1466,
+1449,1460,1463,1465,1469,1475,1472,1471,1470,1459,1475,1471,1471,1483,1496,1506,1499,1485,1485,1483,
+1496,1500,1506,1493,1518,1516,1519,1499,1477,1447,1414,1391,1370,1339,1298,1266,1216,1196,1258,1089,
+1049,1114,1044,1009,989,967,953,945,942,927,915,895,898,910,913,914,912,909,903,900,
+897,897,899,900,904,910,911,912,916,920,931,943,955,971,987,1005,1021,1034,1034,1036,
+1079,1104,1118,1141,1178,1248,1334,1437,1468,1427,1361,1230,1132,1127,1140,1178,1215,1279,1255,1188,
+1064,909,781,726,706,629,569,546,542,532,503,463,404,336,263,190,123,47,-11,-63,
+-104,-146,-183,-225,-251,-304,-333,-384,-441,-486,-525,-561,-561,-576,-610,-675,-771,-880,-973,-1021,
+-1101,-1162,-1183,-1075,-950,-903,-898,-955,-1035,-1086,-1116,-1232,-1273,-1293,-1366,-1412,-1457,-1535,-1575,-1547,
+-1364,-1191,-1129,-1184,-1400,-1478,-1581,-1589,-1469,-1426,-1542,-1606,-1603,-1574,-1518,-1517,-1579,-1705,-1821,-2046,
+-2148,-2178,-2177,-2201,-2254,-2312,-2345,-2388,-2473,-2552,-2530,-2546,-2650,-2765,-2925,-3039,-3118,-3172,-3251,-3313,
+-3359,-3393,-3401,-3414,-3443,-3481,-3507,-3526,-3525,-3518,-3531,-3541,-3545,-3544,-3581,-3618,-3674,-3740,-3812,-3867,
+-3809,-3707,-3473,-3198,-3305,-3711,-3925,-3949,-3870,-3743,-3634,-3590,-3524,-3511,-3565,-3622,-3670,-3700,-3675,-3650,
+-3572,-3497,-3523,-3538,-3560,-3633,-3773,-3582,-3475,-3555,-3616,-3623,-3645,-3658,-3663,-3684,-3718,-3725,-3736,-3778,
+-3782,-3771,-3904,-3935,-3956,-3993,-4046,-4117,-4161,-4163,-4157,-4132,-4150,-4161,-4163,-4163,-4249,-4390,-4459,-4523,
+-4601,-4656,-4707,-4768,-4828,-4892,-4985,-5073,-5142,-5195,-5265,-5326,-5402,-5459,-5512,-5593,-5657,-5678,-5699,-5728,
+-5790,-5862,-5883,-5943,-5993,-5985,-6032,-6171,-6256,-6311,-6353,-6424,-6511,-6573,-6621,-6618,-6625,-6677,-6709,-6746,
+-6809,-6858,-6920,-6999,-7102,-7196,-7274,-7373,-7491,-7571,-7623,-7677,-7696,-7728,-7756,-7789,-7828,-7868,-7909,-7944,
+-7978,-8007,-8036,-8069,-8084,-8120,-8135,-8148,-8166,-8164,-8161,-8183,-8168,-8126,-8093,-8065,-8040,-8003,-7975,-7953,
+-7925,-7893,-7870,-7867,-7846,-7847,-7843,-7830,-7800,-7770,-7742,-7714,-7659,-7594,-7555,-7505,-7462,-7433,-7390,-7341,
+-7293,-7248,-7180,-7113,-7056,-7005,-6941,-6868,-6787,-6674,-6546,-6467,-6486,-6499,-6486,-6452,-6404,-6287,-6158,-6027,
+-5940,-5951,-5913,-5787,-5668,-5584,-5502,-5400,-5285,-5201,-5098,-4944,-4790,-4680,-4596,-4489,-4388,-4318,-4260,-4210,
+-4125,-3989,-3851,-3678,-3499,-3379,-3224,-3072,-2978,-2909,-2839,-2748,-2663,-2584,-2489,-2393,-2302,-2194,-2088,-1976,
+-1847,-1711,-1622,-1544,-1448,-1351,-1243,-1169,-1146,-1111,-1065,-1037,-1027,-1063,-1131,-1181,-1161,-1042,-899,-786,
+-695,-578,-481,-412,-354,-229,-42,153,390,600,796,1031,1274,1466,1686,1851,1981,2097,2164,2209,
+2271,2321,2374,2422,2508,2642,2769,2817,2904,2968,3131,3243,3227,3225,3297,3392,3440,3536,3455,3599,
+3855,3970,3749,3814,3878,3841,3863,3889,3988,4068,4104,4129,4111,4201,4263,4398,4554,4606,4584,4508,
+4345,4267,4251,4223,4230,4318,4324,4280,4305,4388,4315,4396,4477,4509,4509,4474,4492,4585,4627,4660,
+4638,4533,4372,4227,3955,3694,3492,3436,3516,3653,3790,3922,4005,4117,4233,4365,4528,4671,4774,4845,
+4939,5078,5242,5411,5557,5698,5857,6000,6090,6145,6185,6230,6282,6353,6421,6486,6554,6624,6617,6590,
+6598,6624,6661,6698,6729,6751,6783,6819,6870,6925,6980,7030,7075,7101,7118,7152,7174,7217,7225,7220,
+7238,7277,7320,7370,7416,7430,7449,7446,7422,7413,7407,7398,7415,7438,7425,7406,7387,7370,7334,7314,
+7368,7533,7859,8163,8461,8495,8398,8062,7813,7676,7647,7681,7693,7753,7792,7816,7874,7903,7911,7896,
+7809,7663,7472,7276,7153,7084,7054,7006,7015,7062,7091,7123,7236,7282,7159,7095,7080,7054,7048,6991,
+6934,6950,6892,6885,7001,6894,6828,6717,6445,6224,6111,6109,6220,6404,6433,6278,6143,6158,6287,5962,
+5505,5353,5406,5526,5679,5821,5945,5981,5929,5951,5957,5937,5838,5752,5611,5454,5346,5326,5235,5222,
+5120,5063,5088,5104,5104,5084,5075,5011,4960,4979,4861,4821,4781,4740,4659,4601,4530,4458,4423,4345,
+4287,4253,4208,4175,4145,4106,4071,4060,4036,4012,3999,3976,3938,3902,3882,3845,3803,3766,3731,3690,
+3669,3604,3555,3533,3533,3459,3447,3430,3372,3318,3306,3453,3409,3177,3099,3038,2983,2929,2889,2848,
+2811,2782,2762,2746,2721,2692,2657,2614,2573,2530,2496,2463,2423,2374,2348,2324,2302,2293,2281,2273,
+2238,2225,2215,2255,2325,2431,2246,2135,2081,2070,2086,2083,2059,2036,2009,1968,1948,1925,1878,1844,
+1804,1793,1778,1740,1712,1696,1690,1701,1672,1645,1645,1633,1623,1615,1587,1564,1535,1519,1473,1442,
+1519,1551,1522,1506,1474,1414,1444,1390,1407,1355,1329,1303,1260,1215,1270,1220,1128,1083,1036,999,
+982,1007,1076,1112,1056,981,929,913,904,886,878,876,877,880,877,864,857,847,828,832,
+840,836,827,820,812,828,821,799,771,745,844,814,666,628,613,589,567,545,521,502,
+479,452,410,381,352,322,302,275,251,227,202,176,150,125,110,103,101,108,106,106,
+97,79,61,55,36,19,-3,-21,-28,-12,31,133,191,132,61,32,7,-40,-115,-167,
+-184,-188,-187,-192,-203,-217,-240,-271,-304,-338,-374,-408,-440,-468,-499,-527,-557,-586,-612,-640,
+-670,-705,-735,-763,-789,-813,-827,-843,-866,-886,-891,-902,-918,-933,-957,-975,-992,-1005,-1020,-1032,
+-1034,-1038,-1041,-1066,-1072,-1094,-1120,-1142,-1157,-1169,-1173,-1175,-1178,-1184,-1187,-1187,-1188,-1192,-1199,-1206,
+-1209,-1211,-1216,-1220,-1228,-1236,-1244,-1252,-1262,-1276,-1286,-1294,-1295,-1294,-1295,-1294,-1292,-1290,-1291,-1282,
+-1277,-1274,-1276,-1266,-1258,-1257,-1257,-1261,-1255,-1248,-1244,-1229,-1222,-1224,-1212,-1200,-1170,-1172,-1140,-1128,
+-1107,-1088,-1082,-1063,-1051,-1044,-1038,-1027,-1021,-1014,-1018,-1010,-1000,-991,-981,-973,-968,-964,-963,-973,
+-962,-949,-955,-952,-956,-958,-966,-972,-980,-993,-1006,-1012,-1022,-1025,-1030,-1041,-1047,-1055,-1071,-1087,
+-1105,-1120,-1136,-1180,-1188,-1220,-1226,-1228,-1223,-1230,-1252,-1251,-1246,-1265,-1277,-1270,-1273,-1273,-1270,-1279,
+-1279,-1275,-1279,-1282,-1280,-1294,-1297,-1286,-1277,-1287,-1268,-1261,-1261,-1269,-1252,-1259,-1257,-1245,-1239,-1230,
+-1224,-1214,-1205,-1200,-1189,-1173,-1157,-1142,-1132,-1121,-1110,-1100,-1078,-1053,-1026,-1007,-986,-962,-939,-914,
+-890,-867,-833,-804,-773,-746,-708,-672,-639,-606,-568,-534,-500,-463,-430,-390,-348,-301,-244,-194,
+-147,-100,-58,-9,28,37,39,23,-34,-89,-206,-278,-89,258,524,844,1044,1252,1404,1518,
+1635,1902,2196,2296,2225,1996,1974,2092,1861,1629,1563,1591,1433,1382,1435,1480,1538,1626,1788,1964,
+2157,2326,2397,2371,2350,2362,2391,2415,2460,2532,2604,2656,2649,2591,2568,2554,2536,2498,2445,2390,
+2330,2270,2221,2179,2121,2045,1961,1890,1825,1745,1638,1517,1414,1349,1305,1258,1212,1172,1149,1149,
+1157,1145,1106,1042,975,904,822,726,630,552,486,417,348,278,224,168,98,4,-90,-148,
+-200,-261,-339,-433,-514,-585,-616,-659,-695,-743,-804,-892,-1000,-1133,-1234,-1331,-1422,-1489,-1539,-1588,
+-1631,-1662,-1676,-1679,-1678,-1674,-1664,-1645,-1651,-1679,-1688,-1711,-1757,-1820,-1893,-2003,-2118,-2218,-2264,-2254,
+-2167,-2117,-2120,-2132,-2169,-2187,-2193,-2204,-2196,-2214,-2205,-2176,-2150,-2103,-2057,-2028,-1990,-1950,-1932,-1926,
+-1897,-1837,-1766,-1674,-1549,-1478,-1439,-1410,-1380,-1319,-1271,-1223,-1203,-1183,-1167,-1144,-1114,-1083,-1061,-1019,
+-973,-926,-877,-857,-837,-801,-735,-694,-659,-632,-624,-613,-577,-585,-569,-610,-638,-823,-910,-940,
+-1081,-1169,-1152,-1138,-1122,-1106,-1098,-1033,-1074,-1070,-1077,-1073,-1030,-982,-944,-917,-897,-872,-849,-832,
+-814,-800,-784,-785,-776,-764,-740,-720,-702,-679,-637,-584,-555,-542,-530,-508,-480,-449,-420,-387,
+-331,-297,-255,-215,-179,-148,-86,-14,51,122,170,223,277,313,375,436,497,551,605,657,
+708,755,796,849,894,915,959,1062,1017,1037,1060,1088,1119,1160,1183,1216,1281,1313,1359,1413,
+1423,1447,1487,1464,1470,1463,1460,1465,1463,1467,1463,1456,1456,1447,1433,1455,1448,1453,1449,1427,
+1438,1455,1450,1443,1455,1466,1464,1471,1464,1453,1449,1446,1445,1452,1474,1482,1490,1486,1473,1470,
+1467,1468,1481,1474,1498,1485,1482,1481,1460,1427,1399,1393,1369,1338,1314,1266,1235,1191,1128,1088,
+1048,1021,1020,1013,998,989,970,950,942,930,921,909,901,907,914,928,931,931,928,927,
+926,925,925,928,930,935,941,946,951,955,960,970,987,1005,1022,1040,1057,1072,1081,1076,
+1089,1129,1167,1181,1199,1245,1326,1406,1483,1522,1488,1440,1327,1238,1229,1257,1289,1317,1366,1337,
+1261,1161,1014,861,803,769,693,644,606,595,587,553,517,466,398,326,255,188,117,66,
+17,-19,-56,-96,-132,-159,-215,-249,-315,-387,-438,-482,-515,-516,-546,-593,-663,-784,-870,-944,
+-1002,-1035,-1066,-1061,-920,-870,-849,-856,-894,-996,-1045,-1150,-1267,-1313,-1354,-1388,-1402,-1423,-1439,-1412,
+-1438,-1331,-1178,-1125,-1143,-1224,-1282,-1259,-1356,-1379,-1317,-1438,-1488,-1457,-1460,-1457,-1498,-1645,-1817,-2007,
+-2112,-2127,-2063,-2098,-2200,-2270,-2320,-2360,-2387,-2457,-2502,-2512,-2554,-2620,-2761,-2978,-3104,-3177,-3201,-3272,
+-3321,-3342,-3355,-3364,-3378,-3404,-3432,-3445,-3468,-3469,-3471,-3484,-3493,-3497,-3499,-3521,-3549,-3601,-3663,-3736,
+-3804,-3822,-3726,-3436,-3074,-3175,-3522,-3832,-3853,-3776,-3651,-3541,-3518,-3471,-3459,-3480,-3521,-3559,-3574,-3536,
+-3443,-3402,-3225,-3303,-3459,-3514,-3547,-3641,-3714,-3566,-3557,-3556,-3577,-3581,-3576,-3596,-3628,-3665,-3670,-3679,
+-3729,-3736,-3748,-3840,-3835,-3883,-3932,-3985,-4056,-4076,-4100,-4125,-4125,-4097,-4096,-4080,-4061,-4153,-4298,-4386,
+-4451,-4512,-4565,-4622,-4677,-4740,-4816,-4902,-4990,-5055,-5119,-5187,-5246,-5310,-5389,-5456,-5508,-5529,-5560,-5610,
+-5666,-5709,-5733,-5797,-5840,-5871,-5953,-6097,-6089,-6148,-6193,-6246,-6338,-6397,-6471,-6491,-6508,-6503,-6552,-6605,
+-6644,-6720,-6776,-6835,-6909,-6993,-7072,-7168,-7291,-7397,-7475,-7533,-7585,-7600,-7628,-7661,-7701,-7737,-7775,-7816,
+-7857,-7890,-7921,-7951,-7981,-7998,-8031,-8046,-8054,-8068,-8061,-8057,-8077,-8053,-8017,-7984,-7960,-7948,-7916,-7890,
+-7858,-7830,-7794,-7756,-7754,-7741,-7755,-7762,-7748,-7720,-7685,-7652,-7622,-7565,-7507,-7473,-7441,-7410,-7372,-7321,
+-7267,-7220,-7173,-7119,-7059,-7006,-6950,-6899,-6836,-6750,-6623,-6507,-6456,-6477,-6492,-6485,-6455,-6395,-6263,-6135,
+-6015,-5932,-5947,-5897,-5753,-5633,-5588,-5513,-5412,-5302,-5218,-5100,-4908,-4781,-4725,-4687,-4554,-4374,-4279,-4232,
+-4214,-4148,-4039,-3890,-3721,-3533,-3424,-3281,-3129,-3040,-2984,-2920,-2839,-2748,-2662,-2564,-2459,-2353,-2247,-2125,
+-2005,-1873,-1754,-1668,-1584,-1477,-1379,-1271,-1203,-1165,-1111,-1046,-996,-958,-957,-1004,-1057,-1094,-1054,-941,
+-813,-717,-654,-557,-494,-394,-330,-233,-132,-22,115,278,481,711,897,1089,1293,1505,1663,1722,
+1776,1851,1933,1992,2071,2185,2291,2413,2509,2577,2641,2751,2847,2932,3020,3060,3161,3240,3339,3369,
+3539,3652,3694,3669,3847,3897,3874,3807,3765,3795,3883,3917,3947,3982,4085,4214,4344,4462,4508,4503,
+4492,4380,4265,4270,4127,3984,3927,3759,3698,3696,3775,3848,3982,4069,4138,4275,4439,4551,4656,4602,
+4496,4351,4244,4091,3915,3709,3512,3360,3350,3450,3593,3758,3931,4075,4183,4271,4414,4597,4754,4874,
+4998,5137,5277,5422,5537,5631,5739,5866,5989,6069,6112,6149,6195,6248,6309,6367,6441,6526,6594,6594,
+6580,6586,6596,6611,6635,6661,6692,6730,6777,6834,6892,6939,6984,7020,7054,7082,7112,7146,7166,7188,
+7192,7200,7243,7295,7332,7380,7421,7439,7430,7421,7413,7397,7401,7427,7465,7463,7425,7386,7299,7234,
+7202,7236,7374,7621,7970,8256,8329,8388,8284,8048,7834,7723,7707,7698,7670,7666,7741,7795,7801,7793,
+7800,7771,7750,7723,7589,7492,7423,7281,7121,7012,7075,7173,7290,7327,7286,7208,7149,7107,7083,7057,
+7035,6980,6962,6944,6906,6883,6897,6848,6823,6593,6360,6256,6188,6166,6250,6413,6343,6076,6097,6313,
+6173,5764,5481,5382,5423,5587,5787,5950,6028,6059,6054,6008,5932,5824,5657,5531,5519,5521,5540,5505,
+5460,5420,5317,5249,5270,5265,5232,5201,5151,5003,4908,4903,4904,4878,4841,4764,4702,4615,4578,4500,
+4443,4378,4317,4266,4236,4192,4162,4136,4114,4071,4051,4038,4028,4005,3974,3952,3910,3872,3833,3785,
+3772,3717,3663,3602,3563,3534,3492,3465,3493,3422,3367,3345,3393,3340,3227,3205,3120,3045,2994,2953,
+2910,2865,2835,2824,2809,2783,2747,2705,2667,2629,2592,2550,2510,2468,2429,2408,2389,2401,2365,2355,
+2340,2321,2312,2298,2284,2312,2359,2264,2184,2145,2120,2111,2107,2092,2082,2027,2007,1981,1948,1908,
+1861,1825,1802,1769,1725,1714,1694,1678,1676,1658,1652,1658,1629,1590,1577,1558,1544,1521,1484,1449,
+1473,1531,1553,1522,1506,1473,1420,1391,1344,1297,1295,1296,1286,1250,1189,1214,1141,1104,1053,1009,
+978,977,1047,1206,1322,1189,1017,926,943,949,869,845,846,854,855,856,845,828,810,810,
+806,803,838,786,783,789,787,782,772,752,725,750,819,725,627,597,575,552,527,509,
+484,456,426,406,370,344,321,283,248,223,197,175,149,125,108,92,77,68,67,66,
+64,50,37,26,15,1,-11,-31,-47,-61,-68,-53,17,224,252,326,321,208,113,-62,
+-161,-194,-211,-217,-222,-227,-239,-257,-284,-317,-346,-381,-415,-447,-477,-504,-529,-563,-593,-621,
+-648,-680,-713,-742,-770,-798,-819,-827,-842,-864,-883,-894,-904,-914,-932,-952,-972,-985,-998,-1011,
+-1030,-1034,-1032,-1037,-1047,-1058,-1076,-1103,-1124,-1144,-1151,-1150,-1151,-1153,-1155,-1154,-1157,-1162,-1159,-1168,
+-1169,-1172,-1173,-1178,-1186,-1189,-1198,-1207,-1217,-1228,-1240,-1254,-1261,-1265,-1273,-1277,-1279,-1283,-1271,-1274,
+-1267,-1264,-1256,-1250,-1244,-1234,-1224,-1219,-1217,-1210,-1230,-1207,-1203,-1188,-1167,-1158,-1165,-1128,-1108,-1104,
+-1088,-1082,-1067,-1041,-1025,-1013,-999,-992,-988,-984,-976,-967,-962,-956,-952,-950,-947,-942,-931,-933,
+-932,-929,-930,-926,-927,-935,-935,-937,-943,-949,-956,-971,-978,-997,-1009,-1022,-1026,-1030,-1043,-1056,
+-1072,-1088,-1094,-1108,-1145,-1179,-1206,-1205,-1214,-1219,-1214,-1213,-1212,-1224,-1272,-1258,-1252,-1257,-1262,-1260,
+-1261,-1262,-1267,-1269,-1267,-1267,-1267,-1269,-1259,-1246,-1255,-1253,-1248,-1238,-1237,-1227,-1228,-1220,-1215,-1215,
+-1216,-1216,-1208,-1200,-1182,-1174,-1161,-1141,-1125,-1113,-1104,-1095,-1084,-1065,-1041,-1019,-1000,-979,-954,-928,
+-903,-881,-853,-821,-795,-766,-732,-701,-669,-636,-605,-573,-538,-505,-465,-426,-387,-345,-298,-247,
+-196,-147,-104,-59,-14,22,42,49,38,-6,-56,-155,-261,-189,111,413,696,988,1221,1388,
+1527,1622,1763,2043,2219,2211,2054,2005,2174,2138,1950,1692,1660,1542,1458,1512,1583,1646,1697,1821,
+1967,2166,2349,2456,2438,2395,2412,2435,2461,2489,2547,2594,2644,2673,2665,2648,2630,2611,2561,2495,
+2434,2386,2342,2295,2246,2181,2098,2018,1952,1890,1825,1727,1607,1504,1436,1386,1337,1277,1223,1195,
+1199,1218,1211,1173,1113,1051,984,899,798,703,620,549,476,404,339,282,228,153,56,-42,
+-112,-190,-248,-326,-434,-527,-599,-642,-691,-742,-798,-848,-910,-984,-1068,-1154,-1269,-1352,-1436,-1493,
+-1545,-1578,-1608,-1618,-1610,-1617,-1617,-1619,-1603,-1601,-1625,-1648,-1676,-1746,-1810,-1871,-1984,-2074,-2162,-2194,
+-2171,-2096,-2069,-2077,-2080,-2110,-2126,-2135,-2150,-2155,-2170,-2152,-2137,-2082,-2026,-1995,-1953,-1910,-1890,-1887,
+-1846,-1783,-1725,-1663,-1575,-1474,-1396,-1389,-1402,-1391,-1352,-1313,-1289,-1263,-1237,-1214,-1199,-1167,-1114,-1087,
+-1059,-1022,-988,-958,-936,-921,-850,-775,-740,-672,-649,-655,-639,-635,-628,-598,-625,-711,-866,-976,
+-1018,-1109,-1156,-1126,-1121,-1112,-1102,-1095,-1077,-1058,-1012,-1011,-1051,-1036,-998,-964,-937,-917,-898,-875,
+-843,-823,-809,-805,-794,-779,-765,-744,-717,-687,-662,-628,-601,-581,-554,-525,-491,-460,-423,-395,
+-353,-314,-272,-230,-201,-167,-133,-66,6,61,131,191,228,280,327,377,436,496,549,611,
+652,701,749,779,823,866,896,930,957,986,1032,1059,1096,1121,1161,1197,1217,1249,1296,1329,
+1374,1402,1435,1450,1446,1440,1444,1436,1437,1434,1422,1413,1413,1410,1398,1392,1424,1430,1453,1430,
+1428,1423,1410,1428,1438,1439,1451,1455,1459,1444,1435,1433,1436,1430,1436,1454,1464,1466,1453,1442,
+1441,1443,1448,1446,1435,1438,1451,1451,1435,1422,1394,1368,1353,1324,1287,1258,1235,1172,1128,1096,
+1062,1030,1005,998,998,996,991,979,966,942,932,922,916,915,921,919,930,938,944,944,
+945,945,945,948,953,956,964,975,982,990,1000,1005,1014,1031,1051,1076,1094,1104,1113,1122,
+1145,1150,1204,1249,1266,1288,1333,1413,1500,1559,1584,1557,1482,1421,1380,1356,1400,1430,1443,1468,
+1437,1359,1258,1138,988,912,831,756,703,674,661,638,604,560,517,455,382,315,248,187,
+143,102,59,23,-18,-48,-76,-132,-189,-277,-372,-438,-490,-512,-527,-563,-622,-693,-790,-855,
+-926,-960,-951,-933,-933,-822,-827,-840,-789,-807,-941,-1048,-1151,-1249,-1309,-1346,-1354,-1358,-1366,-1336,
+-1313,-1274,-1190,-1147,-1139,-1153,-1195,-1201,-1148,-1133,-1217,-1248,-1252,-1253,-1262,-1307,-1344,-1448,-1645,-1872,
+-2065,-2123,-2095,-2046,-2123,-2211,-2296,-2343,-2384,-2416,-2451,-2470,-2496,-2560,-2597,-2713,-2965,-3137,-3209,-3233,
+-3296,-3349,-3343,-3323,-3317,-3332,-3360,-3380,-3399,-3415,-3418,-3427,-3432,-3440,-3445,-3445,-3464,-3493,-3527,-3578,
+-3630,-3672,-3695,-3652,-3484,-3207,-3475,-3661,-3757,-3750,-3678,-3577,-3447,-3428,-3502,-3495,-3438,-3379,-3410,-3434,
+-3483,-3344,-3372,-3302,-3362,-3432,-3454,-3462,-3510,-3610,-3720,-3696,-3581,-3536,-3523,-3520,-3545,-3583,-3611,-3614,
+-3637,-3674,-3680,-3674,-3778,-3809,-3839,-3885,-3927,-3996,-4045,-4072,-4088,-4083,-4069,-4054,-4041,-3994,-4019,-4190,
+-4305,-4376,-4440,-4487,-4536,-4599,-4663,-4736,-4822,-4902,-4969,-5037,-5102,-5185,-5243,-5312,-5356,-5405,-5443,-5495,
+-5534,-5573,-5614,-5671,-5696,-5743,-5838,-5977,-5938,-5980,-6027,-6099,-6188,-6239,-6309,-6343,-6395,-6410,-6396,-6437,
+-6501,-6569,-6625,-6679,-6752,-6823,-6897,-6976,-7096,-7203,-7279,-7392,-7433,-7483,-7506,-7535,-7570,-7609,-7649,-7685,
+-7726,-7766,-7801,-7829,-7862,-7889,-7906,-7937,-7954,-7957,-7967,-7967,-7961,-7976,-7955,-7924,-7900,-7885,-7880,-7850,
+-7822,-7791,-7758,-7709,-7679,-7677,-7671,-7684,-7685,-7659,-7631,-7602,-7563,-7539,-7481,-7432,-7392,-7354,-7332,-7281,
+-7241,-7194,-7148,-7093,-7048,-7001,-6962,-6906,-6852,-6794,-6707,-6595,-6493,-6451,-6471,-6483,-6481,-6447,-6375,-6246,
+-6115,-5995,-5927,-5935,-5870,-5726,-5654,-5611,-5515,-5410,-5298,-5193,-5089,-4947,-4862,-4803,-4724,-4588,-4358,-4242,
+-4217,-4232,-4172,-4052,-3900,-3733,-3557,-3470,-3339,-3199,-3110,-3054,-2999,-2922,-2823,-2730,-2621,-2514,-2398,-2284,
+-2168,-2030,-1909,-1804,-1730,-1653,-1540,-1437,-1333,-1266,-1213,-1133,-1054,-985,-923,-877,-887,-907,-944,-959,
+-950,-891,-805,-728,-636,-558,-470,-388,-312,-206,-149,-105,-9,124,289,417,555,716,988,1154,
+1157,1196,1285,1428,1516,1633,1817,1931,2025,2148,2210,2311,2367,2388,2430,2519,2654,2761,2875,2985,
+3073,3158,3274,3357,3459,3593,3565,3531,3422,3361,3360,3428,3517,3617,3754,3894,4024,4107,4157,4142,
+4114,4075,3937,3821,3695,3526,3404,3307,3253,3251,3310,3447,3573,3745,3910,4133,4301,4396,4355,4384,
+4257,4118,3993,3879,3779,3686,3592,3479,3399,3418,3515,3697,3889,4086,4244,4370,4513,4654,4800,4944,
+5053,5179,5323,5445,5538,5620,5686,5773,5885,5996,6073,6112,6141,6180,6222,6260,6311,6396,6500,6578,
+6591,6573,6576,6568,6564,6576,6602,6643,6692,6747,6801,6852,6887,6925,6961,7002,7048,7084,7116,7143,
+7152,7171,7192,7211,7260,7311,7368,7418,7429,7425,7419,7398,7388,7408,7439,7480,7471,7423,7324,7212,
+7124,7064,7058,7202,7424,7675,7953,8190,8286,8272,8273,8036,7899,7860,7818,7685,7618,7652,7734,7736,
+7717,7672,7599,7611,7683,7680,7718,7773,7633,7356,7227,7304,7368,7381,7323,7230,7182,7161,7139,7106,
+7064,7037,7014,6970,6893,6848,6809,6784,6782,6741,6657,6489,6419,6431,6381,6273,6311,6394,6231,6069,
+6240,6335,6064,5746,5524,5417,5523,5763,5942,6028,6030,5974,5903,5842,5717,5721,5736,5704,5669,5624,
+5589,5550,5527,5495,5432,5438,5409,5359,5314,5277,5213,5026,4898,4949,4967,4931,4869,4797,4740,4665,
+4603,4538,4462,4393,4338,4296,4258,4236,4222,4168,4132,4135,4090,4078,4060,4036,3992,3962,3926,3888,
+3836,3801,3762,3705,3654,3621,3575,3526,3485,3474,3442,3399,3357,3322,3284,3245,3222,3183,3118,3058,
+3008,2973,2926,2895,2883,2872,2846,2806,2761,2720,2684,2655,2618,2570,2526,2482,2465,2446,2458,2445,
+2444,2434,2413,2392,2364,2338,2326,2308,2293,2301,2316,2214,2176,2149,2116,2113,2058,2038,2004,1972,
+1939,1893,1857,1806,1768,1759,1741,1701,1713,1709,1687,1645,1642,1603,1590,1589,1567,1530,1518,1472,
+1480,1520,1556,1557,1523,1508,1465,1425,1416,1299,1255,1252,1259,1251,1208,1166,1176,1105,1062,1028,
+996,965,973,1054,1239,1518,1280,1027,913,910,908,843,819,821,833,835,835,821,798,786,
+794,815,798,772,753,753,764,768,757,750,733,708,692,732,740,634,587,544,524,511,
+506,479,447,416,397,357,323,298,270,232,199,174,147,124,103,86,71,53,42,35,
+28,26,12,3,-4,-16,-19,-43,-56,-78,-101,-114,-112,-56,73,165,316,347,198,188,
+-39,-143,-187,-218,-233,-246,-254,-263,-279,-303,-332,-359,-391,-424,-459,-484,-513,-537,-565,-589,
+-620,-648,-684,-716,-746,-774,-797,-814,-831,-842,-860,-881,-895,-908,-916,-929,-945,-963,-975,-987,
+-999,-1013,-1030,-1034,-1036,-1037,-1046,-1056,-1073,-1097,-1117,-1124,-1128,-1129,-1126,-1133,-1137,-1137,-1142,-1138,
+-1137,-1132,-1132,-1144,-1141,-1144,-1150,-1152,-1164,-1182,-1185,-1196,-1207,-1216,-1226,-1230,-1245,-1246,-1255,-1244,
+-1246,-1243,-1249,-1246,-1238,-1228,-1210,-1203,-1193,-1173,-1174,-1183,-1164,-1162,-1140,-1137,-1133,-1124,-1070,-1056,
+-1052,-1045,-1043,-1023,-1006,-998,-981,-967,-958,-948,-938,-935,-930,-924,-917,-911,-911,-907,-900,-895,
+-904,-910,-903,-906,-904,-909,-913,-915,-924,-929,-932,-934,-946,-959,-967,-980,-997,-1011,-1023,-1032,
+-1043,-1055,-1074,-1090,-1122,-1157,-1175,-1187,-1192,-1197,-1206,-1199,-1201,-1216,-1236,-1228,-1235,-1235,-1248,-1244,
+-1250,-1241,-1243,-1243,-1243,-1246,-1248,-1248,-1248,-1232,-1232,-1230,-1236,-1237,-1242,-1208,-1191,-1224,-1215,-1201,
+-1189,-1180,-1182,-1186,-1188,-1182,-1162,-1145,-1135,-1115,-1102,-1086,-1077,-1064,-1047,-1025,-1006,-987,-965,-943,
+-918,-888,-870,-839,-811,-793,-752,-720,-692,-666,-636,-604,-570,-535,-497,-461,-422,-382,-341,-298,
+-245,-196,-151,-107,-62,-19,18,47,61,55,17,-24,-112,-217,-256,-48,277,643,874,1143,
+1335,1476,1592,1673,1942,2283,2386,2392,2339,2374,2421,2259,1938,1803,1706,1574,1625,1711,1793,1787,
+1872,2002,2179,2363,2474,2484,2449,2478,2481,2491,2528,2551,2584,2612,2663,2701,2710,2703,2688,2638,
+2574,2510,2458,2423,2387,2320,2245,2175,2103,2034,1973,1913,1830,1726,1623,1549,1487,1419,1342,1277,
+1249,1264,1284,1275,1232,1177,1121,1055,969,868,766,683,608,534,459,392,326,267,189,94,
+6,-75,-153,-247,-338,-443,-523,-596,-657,-713,-770,-834,-894,-939,-985,-1039,-1103,-1196,-1264,-1339,
+-1412,-1472,-1514,-1536,-1538,-1523,-1511,-1510,-1520,-1537,-1540,-1561,-1599,-1651,-1713,-1797,-1862,-1958,-2033,-2093,
+-2117,-2091,-2043,-2035,-2041,-2036,-2059,-2077,-2092,-2096,-2118,-2119,-2103,-2067,-1994,-1935,-1907,-1890,-1840,-1834,
+-1815,-1720,-1664,-1603,-1557,-1496,-1450,-1417,-1421,-1432,-1422,-1394,-1367,-1342,-1315,-1288,-1267,-1229,-1188,-1158,
+-1126,-1116,-1147,-1096,-1024,-959,-926,-881,-829,-763,-686,-666,-685,-695,-689,-708,-711,-687,-862,-1037,
+-1053,-1090,-1126,-1123,-1098,-1091,-1093,-1086,-1088,-1096,-1095,-1097,-1042,-1014,-989,-1000,-976,-947,-924,-904,
+-879,-854,-833,-814,-802,-783,-768,-754,-733,-712,-683,-658,-632,-606,-586,-552,-531,-492,-449,-429,
+-388,-345,-319,-270,-222,-208,-143,-118,-76,-8,51,120,184,226,281,324,365,474,547,538,
+584,631,682,721,757,789,830,863,912,956,986,1022,1045,1063,1092,1108,1135,1174,1223,1251,
+1287,1338,1392,1420,1439,1433,1412,1408,1413,1400,1407,1398,1411,1406,1389,1373,1382,1407,1399,1416,
+1418,1405,1407,1399,1421,1426,1438,1444,1435,1437,1427,1422,1432,1418,1414,1418,1428,1435,1426,1428,
+1420,1425,1413,1416,1420,1414,1409,1431,1409,1400,1373,1349,1314,1296,1287,1259,1232,1172,1159,1146,
+1110,1096,1029,994,987,993,993,989,981,971,953,940,930,926,933,931,938,942,949,956,
+961,963,966,966,970,975,981,988,1001,1012,1027,1040,1050,1063,1082,1105,1129,1142,1150,1160,
+1176,1219,1231,1267,1335,1355,1385,1418,1504,1596,1623,1625,1597,1542,1499,1482,1487,1515,1556,1571,
+1589,1539,1459,1357,1241,1132,1041,905,815,761,728,703,685,653,604,562,505,439,373,308,
+255,210,170,132,93,52,24,-7,-60,-142,-249,-365,-448,-506,-531,-549,-600,-654,-705,-755,
+-810,-852,-875,-828,-776,-827,-821,-838,-759,-692,-758,-906,-1003,-1095,-1171,-1251,-1280,-1279,-1276,-1298,
+-1291,-1265,-1199,-1122,-1097,-1127,-1171,-1202,-1199,-1173,-1117,-1109,-1229,-1364,-1271,-1182,-1192,-1257,-1397,-1600,
+-1872,-2070,-2094,-2008,-2037,-2132,-2234,-2298,-2344,-2395,-2419,-2419,-2413,-2450,-2518,-2558,-2642,-2882,-3095,-3193,
+-3215,-3305,-3357,-3327,-3263,-3237,-3254,-3284,-3320,-3360,-3371,-3368,-3383,-3388,-3391,-3397,-3399,-3411,-3441,-3466,
+-3496,-3520,-3505,-3431,-3451,-3511,-3423,-3589,-3649,-3639,-3647,-3590,-3510,-3400,-3320,-3481,-3525,-3437,-3315,-3322,
+-3384,-3378,-3187,-3281,-3338,-3289,-3369,-3407,-3412,-3413,-3369,-3519,-3514,-3417,-3505,-3464,-3457,-3501,-3543,-3570,
+-3585,-3582,-3624,-3627,-3651,-3731,-3752,-3794,-3836,-3886,-3952,-3997,-4026,-4040,-4050,-4053,-4016,-3994,-3967,-3955,
+-4105,-4229,-4299,-4363,-4410,-4454,-4530,-4594,-4659,-4732,-4815,-4886,-4958,-5032,-5095,-5156,-5232,-5263,-5306,-5365,
+-5411,-5434,-5480,-5546,-5551,-5600,-5715,-5755,-5766,-5816,-5860,-5933,-6026,-6088,-6136,-6204,-6249,-6294,-6313,-6348,
+-6394,-6425,-6473,-6516,-6598,-6671,-6754,-6811,-6884,-7008,-7073,-7188,-7298,-7340,-7376,-7408,-7442,-7478,-7518,-7558,
+-7593,-7628,-7669,-7709,-7741,-7770,-7792,-7813,-7840,-7854,-7862,-7873,-7876,-7871,-7885,-7871,-7846,-7831,-7822,-7814,
+-7784,-7758,-7728,-7691,-7652,-7642,-7646,-7641,-7645,-7631,-7593,-7558,-7535,-7509,-7486,-7422,-7368,-7323,-7296,-7266,
+-7238,-7204,-7151,-7091,-7034,-6985,-6946,-6921,-6880,-6827,-6764,-6681,-6583,-6466,-6442,-6465,-6467,-6460,-6429,-6367,
+-6252,-6116,-6005,-5930,-5912,-5869,-5758,-5705,-5657,-5536,-5420,-5296,-5168,-5087,-5019,-4956,-4860,-4723,-4588,-4384,
+-4254,-4252,-4265,-4195,-4055,-3888,-3721,-3576,-3522,-3413,-3274,-3185,-3137,-3081,-2995,-2893,-2786,-2669,-2548,-2421,
+-2311,-2206,-2083,-1970,-1882,-1818,-1751,-1650,-1531,-1412,-1336,-1278,-1181,-1080,-997,-911,-833,-788,-771,-775,
+-789,-816,-858,-879,-837,-749,-657,-576,-463,-366,-272,-214,-139,-45,76,157,170,248,376,550,
+674,655,638,690,799,934,1110,1309,1483,1606,1731,1817,1930,2038,2034,1995,2048,2151,2279,2393,
+2523,2610,2684,2761,2839,2921,3002,3023,2976,2927,2940,3019,3144,3321,3529,3744,3924,4043,4114,4074,
+4003,3862,3722,3574,3430,3280,3140,3019,2944,2935,2984,3105,3296,3503,3789,4085,4248,4228,4173,4084,
+3946,3823,3732,3664,3615,3611,3609,3602,3589,3624,3688,3847,4027,4225,4392,4534,4650,4760,4871,4989,
+5117,5220,5330,5457,5554,5625,5692,5756,5834,5931,6025,6092,6134,6149,6170,6194,6218,6270,6358,6478,
+6562,6576,6560,6552,6541,6526,6535,6569,6611,6668,6720,6762,6801,6837,6872,6912,6966,7014,7055,7086,
+7113,7115,7145,7182,7207,7241,7297,7353,7408,7414,7432,7414,7389,7394,7421,7444,7463,7438,7367,7223,
+7109,7011,6944,6920,7018,7219,7467,7706,7952,8243,8334,8225,8148,8084,8049,7991,7839,7714,7696,7797,
+7788,7786,7718,7576,7525,7580,7648,7677,7754,7725,7582,7487,7484,7444,7400,7283,7211,7193,7182,7146,
+7117,7077,7055,6996,6966,6947,6871,6799,6757,6706,6653,6626,6515,6476,6544,6465,6462,6468,6423,6403,
+6219,6145,6229,6167,5862,5676,5513,5485,5723,5827,5834,5842,5872,5884,5859,5863,5834,5791,5739,5716,
+5688,5668,5640,5621,5613,5578,5529,5474,5424,5381,5352,5319,5240,5058,4989,5026,5019,4976,4895,4841,
+4781,4713,4637,4558,4476,4414,4375,4321,4295,4238,4211,4190,4170,4156,4140,4111,4072,4028,3994,3967,
+3922,3891,3855,3817,3768,3716,3669,3628,3580,3540,3511,3483,3430,3406,3382,3320,3320,3403,3329,3208,
+3125,3068,3024,2993,2969,2964,2934,2909,2864,2821,2782,2747,2718,2684,2649,2593,2554,2524,2513,2532,
+2530,2540,2528,2504,2489,2453,2440,2375,2342,2328,2383,2437,2318,2338,2212,2145,2122,2084,2050,2023,
+1991,1960,1920,1885,1825,1795,1787,1748,1726,1714,1703,1677,1642,1608,1600,1572,1574,1565,1519,1510,
+1488,1547,1556,1570,1569,1536,1510,1467,1427,1399,1341,1270,1250,1251,1232,1188,1173,1188,1140,1048,
+1015,986,963,962,1005,1091,1179,1106,967,893,866,844,813,794,796,811,814,811,797,774,
+762,757,761,757,744,735,731,739,737,737,731,718,697,670,647,657,653,576,522,503,
+494,481,460,424,393,365,336,305,280,251,218,179,151,124,104,82,65,54,27,14,
+8,0,-8,-25,-31,-35,-47,-59,-72,-86,-106,-131,-152,-167,-144,-52,32,134,180,46,
+-21,-53,-54,-120,-196,-235,-261,-277,-289,-303,-324,-350,-372,-407,-440,-470,-499,-525,-548,-570,
+-592,-614,-643,-680,-714,-740,-763,-782,-801,-818,-831,-850,-867,-879,-896,-907,-920,-932,-948,-961,
+-974,-983,-1003,-1017,-1019,-1016,-1014,-1016,-1029,-1049,-1068,-1081,-1090,-1090,-1088,-1091,-1097,-1102,-1107,-1109,
+-1105,-1108,-1109,-1108,-1108,-1111,-1117,-1120,-1124,-1138,-1152,-1156,-1166,-1176,-1182,-1192,-1193,-1200,-1205,-1204,
+-1199,-1199,-1217,-1222,-1220,-1217,-1207,-1193,-1184,-1163,-1144,-1156,-1124,-1116,-1109,-1100,-1076,-1062,-1054,-1043,
+-1035,-1011,-1005,-984,-970,-968,-955,-947,-936,-924,-917,-910,-897,-890,-889,-881,-875,-873,-864,-862,
+-866,-866,-869,-868,-873,-885,-896,-892,-901,-901,-908,-917,-925,-924,-933,-943,-954,-966,-981,-999,
+-1013,-1035,-1042,-1059,-1089,-1148,-1153,-1165,-1171,-1177,-1183,-1185,-1186,-1197,-1205,-1212,-1218,-1224,-1228,-1225,
+-1229,-1235,-1232,-1231,-1228,-1228,-1228,-1227,-1224,-1219,-1217,-1208,-1210,-1198,-1196,-1198,-1200,-1188,-1173,-1191,
+-1197,-1186,-1173,-1161,-1154,-1149,-1144,-1139,-1140,-1117,-1107,-1089,-1074,-1062,-1044,-1028,-1008,-989,-965,-946,
+-924,-900,-873,-848,-826,-798,-774,-742,-708,-679,-656,-627,-597,-564,-531,-493,-455,-418,-379,-336,
+-294,-246,-205,-161,-116,-67,-19,20,50,68,67,31,1,-66,-162,-257,-199,84,456,733,
+983,1183,1348,1506,1646,1885,2281,2474,2604,2646,2603,2726,2535,2199,1971,1949,1779,1788,1853,1975,
+1895,1915,2033,2201,2382,2485,2532,2516,2513,2513,2535,2583,2607,2622,2614,2658,2697,2708,2733,2741,
+2698,2646,2597,2548,2497,2456,2393,2321,2264,2203,2132,2063,2000,1934,1854,1761,1678,1604,1504,1402,
+1325,1311,1332,1352,1333,1285,1232,1183,1125,1042,934,830,744,667,592,512,434,359,293,219,
+132,59,-13,-96,-214,-323,-420,-500,-584,-645,-703,-764,-827,-901,-951,-994,-1045,-1083,-1144,-1188,
+-1250,-1329,-1397,-1444,-1462,-1459,-1423,-1398,-1389,-1421,-1466,-1494,-1504,-1544,-1608,-1681,-1770,-1850,-1937,-2003,
+-2042,-2059,-2033,-1998,-2004,-1990,-1986,-2023,-2042,-2055,-2074,-2075,-2076,-2047,-1970,-1898,-1831,-1827,-1795,-1774,
+-1763,-1686,-1583,-1545,-1530,-1530,-1526,-1502,-1488,-1487,-1499,-1476,-1446,-1415,-1389,-1345,-1311,-1285,-1236,-1193,
+-1163,-1139,-1134,-1209,-1168,-1078,-1006,-959,-910,-866,-815,-736,-692,-725,-753,-756,-822,-825,-825,-970,
+-1095,-1103,-1086,-1109,-1100,-1089,-1084,-1085,-1081,-1084,-1086,-1065,-1088,-1031,-990,-1022,-1009,-986,-957,-931,
+-906,-879,-852,-842,-826,-809,-785,-761,-744,-724,-710,-690,-663,-644,-625,-605,-584,-566,-528,-485,
+-451,-405,-372,-323,-275,-256,-215,-157,-111,-70,-11,41,107,176,231,281,323,380,436,500,
+526,570,621,675,706,739,775,825,871,913,947,959,972,990,1011,1045,1079,1122,1146,1204,
+1227,1263,1305,1351,1364,1403,1423,1395,1404,1392,1393,1379,1381,1374,1361,1353,1346,1343,1361,1366,
+1380,1392,1401,1398,1408,1420,1419,1421,1417,1415,1407,1395,1398,1404,1404,1394,1389,1392,1385,1381,
+1382,1386,1387,1386,1379,1398,1402,1386,1361,1338,1330,1321,1315,1303,1271,1250,1231,1195,1159,1146,
+1144,1168,1184,1035,994,987,992,993,995,988,979,971,955,940,942,941,949,960,957,964,
+969,975,981,986,992,993,1000,1007,1016,1021,1033,1052,1069,1089,1108,1126,1151,1173,1191,1207,
+1225,1245,1292,1317,1342,1398,1429,1455,1477,1549,1645,1661,1674,1651,1623,1559,1533,1540,1554,1594,
+1659,1703,1654,1558,1434,1309,1202,1109,969,870,825,788,754,732,706,656,604,556,493,433,
+372,317,271,228,194,157,116,82,46,-4,-102,-220,-346,-433,-490,-510,-548,-603,-650,-670,
+-679,-722,-760,-780,-700,-665,-750,-821,-818,-709,-667,-733,-851,-924,-992,-1051,-1154,-1231,-1251,-1253,
+-1249,-1221,-1187,-1159,-1111,-1095,-1118,-1161,-1177,-1185,-1194,-1177,-1184,-1252,-1533,-1617,-1400,-1252,-1268,-1408,
+-1601,-1886,-2026,-2024,-1974,-2036,-2123,-2199,-2267,-2311,-2351,-2375,-2360,-2355,-2398,-2471,-2530,-2566,-2757,-2974,
+-3102,-3148,-3266,-3330,-3293,-3189,-3159,-3169,-3198,-3250,-3301,-3320,-3336,-3343,-3344,-3340,-3347,-3350,-3363,-3384,
+-3399,-3427,-3428,-3379,-3202,-3238,-3456,-3516,-3538,-3483,-3480,-3519,-3499,-3447,-3380,-3315,-3468,-3527,-3415,-3297,
+-3281,-3368,-3345,-3062,-3188,-3252,-3220,-3331,-3347,-3334,-3335,-3345,-3365,-3351,-3408,-3446,-3406,-3418,-3456,-3492,
+-3520,-3542,-3551,-3576,-3582,-3615,-3677,-3699,-3743,-3793,-3847,-3910,-3946,-3981,-3997,-4017,-4020,-3951,-3919,-3931,
+-3934,-4058,-4123,-4185,-4220,-4300,-4356,-4446,-4516,-4560,-4646,-4730,-4802,-4873,-4956,-5022,-5070,-5125,-5167,-5228,
+-5281,-5303,-5362,-5418,-5423,-5487,-5558,-5523,-5601,-5647,-5688,-5756,-5859,-5924,-5960,-6036,-6103,-6177,-6197,-6211,
+-6247,-6316,-6373,-6404,-6459,-6510,-6569,-6663,-6727,-6783,-6881,-6995,-7125,-7196,-7242,-7268,-7311,-7348,-7388,-7427,
+-7468,-7508,-7545,-7579,-7612,-7644,-7672,-7695,-7724,-7744,-7757,-7767,-7777,-7783,-7785,-7793,-7784,-7770,-7756,-7750,
+-7742,-7710,-7684,-7655,-7623,-7603,-7608,-7616,-7605,-7596,-7573,-7543,-7515,-7495,-7466,-7438,-7379,-7316,-7269,-7240,
+-7231,-7198,-7141,-7087,-7034,-6984,-6946,-6919,-6901,-6878,-6832,-6778,-6690,-6577,-6458,-6446,-6461,-6452,-6442,-6423,
+-6374,-6257,-6128,-6019,-5933,-5921,-5872,-5786,-5719,-5642,-5513,-5394,-5293,-5204,-5118,-5059,-4993,-4881,-4765,-4619,
+-4451,-4318,-4296,-4287,-4212,-4066,-3891,-3726,-3624,-3584,-3494,-3359,-3272,-3221,-3152,-3056,-2947,-2837,-2706,-2574,
+-2452,-2335,-2237,-2133,-2050,-1980,-1911,-1850,-1750,-1632,-1503,-1413,-1349,-1241,-1128,-1021,-910,-801,-723,-671,
+-637,-621,-629,-709,-795,-844,-852,-809,-733,-604,-472,-363,-291,-216,-132,-18,57,72,203,290,
+371,450,435,347,383,459,592,702,845,1015,1193,1373,1476,1547,1656,1662,1623,1667,1742,1834,
+1963,2091,2175,2282,2331,2373,2440,2496,2533,2540,2555,2668,2787,2977,3249,3558,3838,4010,4128,4182,
+4098,4008,3821,3617,3400,3218,3044,2903,2804,2727,2731,2820,2980,3229,3628,3947,4123,4042,3961,3841,
+3696,3593,3545,3513,3502,3513,3570,3675,3817,3949,3989,4119,4263,4396,4535,4675,4773,4861,4952,5044,
+5137,5247,5343,5446,5553,5633,5699,5751,5808,5878,5972,6055,6112,6147,6144,6143,6159,6187,6240,6327,
+6441,6528,6546,6531,6517,6509,6492,6507,6540,6576,6631,6677,6714,6743,6775,6821,6869,6931,6981,7012,
+7043,7045,7060,7107,7160,7212,7231,7254,7319,7364,7385,7429,7427,7391,7405,7429,7423,7410,7385,7242,
+7105,7003,6940,6879,6845,6867,6981,7222,7506,7763,7927,8135,8082,8005,8038,8043,8010,7881,7766,7715,
+7771,7790,7812,7718,7605,7519,7525,7593,7536,7596,7543,7477,7417,7423,7406,7337,7242,7239,7208,7189,
+7137,7111,7076,7046,7009,6965,6921,6891,6809,6745,6698,6631,6553,6458,6425,6379,6384,6491,6700,6702,
+6657,6417,6227,6095,6100,5997,5766,5654,5460,5614,5728,5859,5976,5998,5982,5968,5912,5860,5805,5790,
+5776,5767,5728,5709,5664,5630,5653,5629,5555,5508,5465,5437,5396,5359,5297,5195,4998,5030,5050,5007,
+4951,4886,4838,4751,4665,4586,4520,4456,4407,4361,4322,4286,4268,4236,4215,4188,4149,4103,4075,4046,
+4029,3981,3943,3914,3875,3826,3775,3727,3696,3643,3589,3564,3540,3489,3456,3430,3378,3404,3508,3402,
+3268,3195,3141,3103,3076,3047,3025,3001,2963,2917,2875,2847,2817,2784,2750,2715,2668,2625,2597,2591,
+2598,2618,2627,2621,2603,2577,2542,2502,2448,2405,2379,2391,2374,2366,2386,2262,2178,2137,2109,2105,
+2048,2020,2023,1937,1905,1866,1816,1788,1766,1750,1731,1714,1688,1665,1616,1593,1575,1556,1536,1510,
+1518,1552,1520,1593,1575,1571,1546,1514,1483,1451,1438,1431,1311,1276,1240,1212,1175,1191,1171,1223,
+1042,994,999,974,951,946,955,961,946,909,887,911,872,797,772,771,777,780,776,764,
+741,730,718,721,723,733,725,695,696,696,698,693,687,678,656,626,608,613,607,554,
+486,468,459,441,417,382,344,318,290,263,237,206,227,144,109,87,67,46,29,16,
+-5,-26,-34,-41,-57,-67,-77,-79,-91,-101,-115,-132,-157,-186,-212,-213,-177,-107,6,85,
+0,-60,30,113,-20,-147,-222,-269,-294,-311,-324,-345,-369,-393,-422,-456,-483,-515,-537,-562,
+-582,-598,-619,-644,-676,-703,-728,-746,-763,-784,-800,-819,-839,-859,-877,-891,-898,-913,-918,-927,
+-944,-957,-972,-984,-991,-1001,-1007,-1001,-1012,-1023,-1034,-1046,-1052,-1064,-1063,-1064,-1066,-1068,-1074,-1080,
+-1085,-1091,-1096,-1098,-1091,-1088,-1079,-1083,-1084,-1088,-1102,-1113,-1117,-1134,-1144,-1149,-1155,-1158,-1158,-1166,
+-1164,-1164,-1163,-1176,-1178,-1180,-1180,-1176,-1171,-1160,-1142,-1138,-1107,-1098,-1084,-1079,-1079,-1062,-1044,-1014,
+-1005,-985,-969,-951,-932,-926,-912,-910,-906,-899,-892,-885,-880,-870,-863,-856,-848,-843,-842,-827,
+-825,-829,-835,-834,-837,-844,-851,-856,-866,-873,-887,-885,-892,-902,-908,-914,-924,-933,-944,-958,
+-971,-989,-1008,-1026,-1063,-1090,-1113,-1130,-1149,-1150,-1155,-1161,-1172,-1175,-1189,-1201,-1197,-1204,-1211,-1211,
+-1212,-1214,-1218,-1222,-1211,-1212,-1210,-1213,-1211,-1202,-1198,-1195,-1189,-1184,-1177,-1170,-1164,-1166,-1164,-1155,
+-1152,-1144,-1153,-1148,-1153,-1145,-1129,-1118,-1109,-1101,-1097,-1100,-1075,-1066,-1050,-1033,-1014,-995,-971,-950,
+-929,-905,-883,-861,-833,-811,-793,-755,-725,-695,-668,-643,-612,-584,-554,-525,-489,-454,-415,-379,
+-338,-295,-255,-214,-168,-118,-69,-20,21,52,65,72,58,35,-23,-103,-205,-262,-79,234,
+549,855,1012,1206,1394,1609,1833,2155,2517,2609,2663,2723,2836,2846,2525,2233,2161,1979,1950,1957,
+2048,2006,1959,2055,2217,2386,2497,2566,2565,2543,2552,2582,2645,2687,2696,2699,2721,2724,2719,2713,
+2723,2717,2699,2671,2642,2572,2508,2451,2386,2343,2299,2235,2161,2096,2032,1965,1884,1805,1715,1611,
+1498,1420,1397,1421,1428,1402,1347,1289,1247,1195,1109,996,889,799,718,640,559,475,392,324,
+248,167,93,16,-81,-202,-310,-397,-497,-580,-628,-646,-695,-762,-838,-907,-976,-1052,-1092,-1139,
+-1151,-1200,-1272,-1343,-1388,-1412,-1403,-1367,-1337,-1336,-1364,-1412,-1448,-1448,-1483,-1563,-1658,-1756,-1852,-1928,
+-1982,-2012,-2020,-1987,-1959,-1961,-1937,-1949,-1984,-2001,-2012,-2032,-2034,-2011,-1982,-1902,-1816,-1769,-1749,-1745,
+-1732,-1674,-1569,-1486,-1477,-1555,-1582,-1605,-1596,-1578,-1577,-1563,-1519,-1477,-1444,-1403,-1364,-1318,-1289,-1229,
+-1200,-1160,-1140,-1152,-1237,-1203,-1107,-1055,-986,-942,-918,-871,-798,-742,-760,-811,-868,-893,-889,-984,
+-1043,-1101,-1114,-1124,-1130,-1118,-1111,-1107,-1097,-1089,-1087,-1084,-1067,-1072,-1052,-1020,-1030,-1002,-979,-945,
+-905,-902,-876,-863,-855,-844,-827,-799,-768,-737,-720,-707,-688,-680,-662,-638,-629,-604,-571,-540,
+-516,-488,-449,-413,-354,-313,-249,-213,-161,-112,-67,-23,19,82,149,249,289,325,368,416,
+457,497,537,588,647,700,740,771,802,831,872,897,934,952,977,997,1033,1069,1089,1133,
+1169,1201,1239,1258,1302,1365,1398,1400,1378,1368,1368,1346,1341,1341,1340,1344,1321,1323,1324,1341,
+1350,1371,1374,1380,1382,1395,1400,1405,1396,1384,1373,1365,1377,1393,1404,1418,1384,1381,1366,1360,
+1357,1362,1358,1376,1382,1402,1350,1361,1351,1323,1324,1325,1303,1268,1245,1241,1261,1370,1231,1146,
+1137,1229,1355,1132,1028,996,994,998,998,1000,998,992,981,972,968,955,964,973,967,974,
+976,981,986,994,1005,1013,1021,1028,1041,1048,1058,1083,1090,1114,1126,1142,1165,1185,1208,1233,
+1261,1290,1319,1364,1405,1417,1457,1487,1506,1522,1590,1668,1697,1736,1724,1696,1648,1570,1542,1577,
+1662,1725,1773,1740,1639,1501,1371,1254,1151,1049,919,870,849,810,775,746,701,660,608,548,
+490,430,373,322,280,247,210,167,120,87,40,-50,-184,-313,-397,-441,-460,-500,-553,-586,
+-579,-574,-619,-644,-644,-601,-666,-747,-796,-790,-694,-643,-715,-795,-845,-913,-986,-1116,-1211,-1241,
+-1237,-1213,-1174,-1154,-1129,-1103,-1105,-1126,-1164,-1186,-1199,-1213,-1214,-1247,-1303,-1506,-1677,-1657,-1431,-1394,
+-1505,-1649,-1842,-1982,-1975,-1970,-2012,-2073,-2166,-2244,-2272,-2308,-2324,-2318,-2322,-2365,-2422,-2439,-2469,-2629,
+-2824,-2953,-3014,-3144,-3255,-3218,-3111,-3076,-3082,-3117,-3162,-3216,-3250,-3276,-3296,-3298,-3291,-3290,-3298,-3309,
+-3326,-3337,-3360,-3363,-3348,-3297,-3183,-3386,-3462,-3433,-3198,-3244,-3406,-3424,-3393,-3344,-3335,-3397,-3477,-3368,
+-3263,-3227,-3261,-3275,-3036,-2989,-3155,-3223,-3288,-3284,-3270,-3275,-3300,-3316,-3307,-3375,-3394,-3362,-3376,-3412,
+-3444,-3471,-3488,-3505,-3532,-3522,-3572,-3628,-3642,-3687,-3739,-3805,-3869,-3918,-3943,-3957,-3968,-3968,-3913,-3808,
+-3853,-3911,-3970,-3991,-3956,-3988,-4089,-4133,-4272,-4404,-4483,-4556,-4640,-4720,-4792,-4874,-4941,-5005,-5064,-5105,
+-5119,-5156,-5233,-5285,-5292,-5366,-5413,-5450,-5475,-5491,-5530,-5625,-5709,-5774,-5812,-5865,-5941,-6014,-6064,-6088,
+-6167,-6190,-6224,-6291,-6321,-6383,-6440,-6489,-6561,-6630,-6691,-6784,-6896,-7016,-7088,-7145,-7173,-7222,-7262,-7302,
+-7340,-7379,-7414,-7450,-7484,-7515,-7549,-7576,-7604,-7629,-7644,-7660,-7673,-7684,-7691,-7695,-7701,-7697,-7685,-7675,
+-7667,-7658,-7627,-7603,-7577,-7558,-7544,-7549,-7558,-7540,-7524,-7506,-7485,-7470,-7450,-7418,-7388,-7321,-7253,-7213,
+-7164,-7147,-7110,-7081,-7033,-6992,-6961,-6937,-6921,-6906,-6886,-6849,-6789,-6706,-6593,-6486,-6453,-6455,-6442,-6432,
+-6420,-6381,-6271,-6122,-6019,-5947,-5937,-5874,-5796,-5697,-5591,-5459,-5353,-5316,-5283,-5204,-5116,-5006,-4918,-4800,
+-4648,-4501,-4371,-4316,-4293,-4217,-4089,-3931,-3772,-3689,-3659,-3570,-3436,-3341,-3289,-3221,-3108,-2997,-2880,-2737,
+-2606,-2491,-2373,-2283,-2201,-2143,-2099,-2028,-1954,-1848,-1731,-1598,-1485,-1405,-1306,-1191,-1060,-923,-779,-681,
+-600,-534,-478,-491,-568,-666,-754,-796,-818,-808,-759,-667,-534,-390,-290,-216,-128,-83,-74,35,
+109,122,236,236,215,275,433,605,619,654,766,943,1175,1273,1291,1289,1265,1264,1299,1352,
+1416,1550,1659,1729,1823,1896,1956,2007,2060,2123,2155,2203,2384,2507,2721,3003,3306,3595,3804,3999,
+4115,4076,3987,3793,3563,3323,3124,2924,2763,2667,2602,2593,2712,2914,3169,3600,3786,3885,3847,3738,
+3540,3436,3416,3434,3457,3516,3626,3776,3922,4112,4247,4341,4441,4551,4658,4775,4878,4949,5017,5092,
+5174,5260,5345,5427,5517,5605,5676,5738,5788,5830,5899,5996,6082,6134,6145,6135,6129,6139,6164,6211,
+6292,6387,6473,6521,6506,6471,6463,6454,6467,6489,6518,6567,6610,6654,6693,6730,6780,6835,6894,6938,
+6952,6965,6972,7005,7058,7114,7170,7192,7209,7254,7289,7330,7377,7396,7388,7398,7415,7374,7343,7291,
+7140,7006,6954,6937,6863,6811,6804,6837,6962,7221,7516,7695,7840,7982,7968,8022,8216,8173,7944,7804,
+7723,7669,7686,7710,7642,7571,7476,7439,7445,7464,7461,7423,7376,7367,7336,7326,7320,7244,7233,7192,
+7169,7142,7105,7078,7026,6986,6941,6892,6854,6796,6750,6680,6617,6537,6440,6371,6266,6232,6302,6562,
+6773,6790,6755,6491,6183,5988,5976,5887,5843,5496,5506,5805,6001,6045,6028,6006,5979,5936,5890,5835,
+5815,5831,5791,5782,5801,5755,5697,5677,5746,5651,5609,5552,5540,5476,5433,5392,5337,5158,4999,5069,
+5088,5060,5014,4945,4866,4779,4713,4647,4578,4503,4448,4409,4368,4335,4309,4270,4227,4180,4136,4129,
+4106,4076,4024,3977,3946,3918,3861,3813,3759,3735,3694,3642,3600,3561,3524,3500,3491,3454,3455,3453,
+3417,3340,3294,3257,3227,3195,3160,3117,3070,3026,2977,2941,2910,2886,2857,2823,2791,2749,2712,2685,
+2684,2690,2697,2709,2698,2676,2652,2628,2572,2530,2479,2431,2399,2385,2356,2304,2256,2193,2153,2165,
+2130,2086,2064,2028,1958,1976,1897,1844,1813,1796,1766,1750,1742,1696,1668,1623,1595,1599,1621,1539,
+1515,1553,1553,1541,1597,1577,1573,1553,1530,1515,1483,1453,1405,1333,1304,1256,1227,1180,1186,1158,
+1130,1043,1042,990,978,939,910,895,903,880,855,842,858,836,790,760,752,748,746,745,
+738,721,699,683,678,688,710,685,664,665,671,665,646,631,632,634,616,579,562,574,
+548,468,435,433,422,388,350,313,281,259,235,214,188,176,195,98,66,44,23,7,
+-10,-24,-51,-72,-85,-98,-104,-112,-116,-127,-134,-142,-159,-184,-212,-243,-253,-243,-213,-167,
+-140,-87,-65,97,291,102,-87,-162,-242,-293,-322,-340,-364,-385,-410,-436,-465,-490,-526,-552,
+-574,-591,-604,-621,-644,-668,-698,-720,-738,-762,-785,-804,-826,-844,-867,-887,-897,-899,-897,-899,
+-899,-907,-923,-941,-959,-979,-983,-996,-1008,-1014,-1015,-1022,-1027,-1029,-1034,-1034,-1031,-1034,-1040,-1046,
+-1055,-1062,-1066,-1072,-1075,-1073,-1074,-1074,-1058,-1053,-1065,-1079,-1080,-1105,-1100,-1109,-1110,-1116,-1120,-1119,
+-1127,-1131,-1130,-1132,-1133,-1130,-1127,-1130,-1136,-1132,-1127,-1117,-1095,-1079,-1064,-1049,-1048,-1037,-1008,-980,
+-979,-964,-944,-932,-909,-896,-888,-873,-869,-864,-859,-857,-853,-844,-838,-832,-826,-817,-812,-807,
+-802,-800,-803,-806,-810,-815,-817,-822,-826,-830,-837,-845,-867,-879,-883,-896,-902,-905,-917,-932,
+-948,-955,-977,-996,-1029,-1054,-1069,-1082,-1117,-1138,-1135,-1140,-1146,-1152,-1157,-1173,-1181,-1182,-1188,-1192,
+-1194,-1199,-1205,-1204,-1199,-1194,-1192,-1191,-1191,-1186,-1181,-1185,-1179,-1179,-1167,-1163,-1159,-1147,-1142,-1137,
+-1132,-1126,-1129,-1113,-1124,-1113,-1106,-1113,-1107,-1087,-1079,-1071,-1064,-1064,-1053,-1029,-1023,-1006,-980,-956,
+-932,-912,-889,-868,-845,-817,-789,-771,-735,-710,-687,-659,-629,-602,-572,-546,-520,-487,-449,-413,
+-379,-344,-305,-268,-219,-170,-117,-74,-27,13,38,70,83,81,64,26,-38,-130,-234,-207,
+86,368,608,851,1083,1305,1553,1840,2153,2595,2661,2606,2750,2765,2824,2725,2564,2400,2218,2136,
+2051,2029,2040,1991,2070,2239,2397,2510,2587,2596,2575,2592,2664,2711,2730,2741,2763,2789,2807,2789,
+2758,2734,2722,2713,2706,2682,2627,2557,2491,2444,2407,2373,2326,2265,2200,2136,2074,2013,1945,1861,
+1760,1648,1559,1522,1529,1530,1491,1430,1373,1325,1267,1174,1064,952,857,768,686,592,510,426,
+351,276,188,100,0,-111,-219,-309,-393,-486,-551,-553,-528,-557,-629,-725,-820,-928,-1021,-1088,
+-1129,-1151,-1191,-1252,-1308,-1352,-1374,-1374,-1347,-1322,-1322,-1346,-1382,-1398,-1408,-1449,-1544,-1651,-1771,-1867,
+-1926,-1956,-1978,-1982,-1939,-1902,-1897,-1869,-1908,-1937,-1949,-1954,-1971,-1966,-1958,-1927,-1830,-1751,-1718,-1704,
+-1695,-1684,-1605,-1500,-1462,-1501,-1587,-1639,-1668,-1664,-1644,-1631,-1581,-1517,-1473,-1422,-1371,-1339,-1296,-1277,
+-1231,-1199,-1167,-1162,-1204,-1262,-1230,-1140,-1071,-996,-961,-937,-895,-830,-795,-822,-904,-933,-916,-1001,
+-1117,-1135,-1124,-1050,-1154,-1155,-1140,-1131,-1123,-1115,-1102,-1089,-1076,-1063,-1046,-1035,-1011,-989,-951,-938,
+-947,-925,-917,-903,-877,-855,-835,-831,-807,-781,-749,-736,-719,-711,-698,-681,-661,-645,-623,-588,
+-580,-537,-496,-454,-401,-371,-330,-278,-231,-169,-138,-104,-49,7,56,121,181,247,311,365,
+407,450,488,524,568,619,650,704,738,772,804,842,866,900,910,942,981,992,1014,1039,
+1077,1118,1174,1204,1256,1261,1313,1369,1383,1394,1329,1340,1368,1321,1322,1325,1326,1315,1306,1297,
+1305,1315,1334,1349,1348,1362,1369,1362,1355,1336,1326,1327,1347,1374,1375,1388,1389,1384,1413,1382,
+1340,1330,1329,1347,1365,1362,1364,1354,1334,1320,1298,1279,1271,1274,1273,1274,1274,1300,1265,1176,
+1137,1117,1204,1234,1089,1023,1006,1004,1005,1009,1013,1010,1006,998,989,995,981,975,975,980,
+988,992,998,1005,1017,1031,1040,1051,1062,1075,1088,1099,1112,1130,1150,1166,1181,1195,1216,1242,
+1274,1305,1337,1368,1411,1468,1484,1508,1531,1554,1572,1621,1684,1753,1777,1781,1748,1697,1607,1607,
+1653,1734,1786,1819,1784,1699,1569,1436,1311,1196,1098,1009,962,937,877,826,791,750,722,662,
+599,538,475,425,372,327,291,254,214,169,123,79,-2,-137,-261,-338,-376,-387,-415,-461,
+-482,-463,-477,-489,-469,-497,-553,-645,-723,-765,-764,-698,-623,-691,-748,-772,-840,-943,-1093,-1171,
+-1197,-1208,-1190,-1166,-1146,-1117,-1102,-1113,-1128,-1167,-1185,-1224,-1271,-1293,-1237,-1245,-1448,-1644,-1737,-1667,
+-1560,-1601,-1740,-1869,-1943,-1947,-1966,-1989,-2065,-2166,-2243,-2250,-2304,-2313,-2300,-2308,-2339,-2347,-2349,-2433,
+-2553,-2661,-2770,-2830,-2935,-3129,-3163,-3057,-3002,-3000,-3032,-3077,-3126,-3162,-3194,-3224,-3236,-3232,-3231,-3239,
+-3250,-3264,-3276,-3296,-3318,-3325,-3321,-3316,-3348,-3334,-3372,-3261,-3160,-3318,-3354,-3349,-3307,-3305,-3331,-3385,
+-3264,-3202,-3128,-3065,-3021,-3015,-2985,-3081,-3185,-3235,-3232,-3225,-3238,-3252,-3269,-3276,-3296,-3283,-3330,-3327,
+-3381,-3408,-3430,-3441,-3460,-3487,-3453,-3487,-3587,-3614,-3643,-3677,-3737,-3813,-3871,-3897,-3907,-3898,-3916,-3917,
+-3788,-3733,-3752,-3789,-3790,-3827,-3878,-3921,-3984,-4063,-4210,-4398,-4478,-4553,-4629,-4695,-4779,-4862,-4911,-4945,
+-4967,-5014,-5100,-5121,-5163,-5234,-5247,-5233,-5329,-5325,-5390,-5475,-5561,-5594,-5665,-5714,-5792,-5861,-5909,-5952,
+-6035,-6083,-6100,-6149,-6186,-6247,-6280,-6316,-6412,-6479,-6544,-6612,-6722,-6837,-6910,-6983,-7054,-7089,-7138,-7177,
+-7217,-7253,-7287,-7322,-7357,-7386,-7420,-7452,-7480,-7509,-7534,-7548,-7565,-7577,-7589,-7596,-7597,-7603,-7604,-7592,
+-7585,-7577,-7573,-7544,-7519,-7497,-7486,-7471,-7489,-7483,-7464,-7449,-7434,-7427,-7416,-7398,-7365,-7331,-7265,-7178,
+-7138,-7095,-7059,-7025,-7001,-6984,-6966,-6947,-6930,-6908,-6881,-6871,-6840,-6783,-6694,-6601,-6515,-6463,-6449,-6437,
+-6433,-6418,-6370,-6262,-6105,-6003,-5939,-5921,-5875,-5801,-5667,-5556,-5457,-5375,-5353,-5336,-5268,-5166,-5039,-4933,
+-4801,-4657,-4532,-4398,-4330,-4297,-4200,-4084,-3975,-3846,-3765,-3728,-3637,-3506,-3409,-3354,-3278,-3157,-3045,-2922,
+-2777,-2647,-2530,-2424,-2345,-2295,-2252,-2191,-2142,-2043,-1934,-1806,-1677,-1553,-1458,-1362,-1250,-1109,-946,-791,
+-681,-585,-485,-400,-383,-478,-590,-670,-716,-744,-761,-766,-745,-681,-582,-482,-403,-333,-254,-238,
+-207,-86,-76,0,32,149,223,308,468,510,574,685,815,1034,1177,1122,1053,1016,1021,1020,
+1042,1052,1147,1246,1308,1403,1507,1573,1616,1664,1748,1794,1837,1969,2127,2358,2606,2810,3018,3272,
+3570,3839,3929,3859,3658,3438,3223,3049,2870,2716,2601,2533,2529,2679,2927,3141,3379,3504,3534,3587,
+3443,3336,3328,3384,3485,3611,3723,3863,4036,4207,4355,4476,4559,4646,4749,4854,4946,5004,5052,5108,
+5167,5240,5325,5394,5477,5557,5624,5692,5751,5807,5850,5906,6005,6088,6118,6122,6125,6124,6131,6158,
+6191,6252,6337,6420,6488,6479,6429,6413,6415,6431,6448,6482,6513,6552,6599,6642,6692,6748,6812,6870,
+6890,6897,6902,6920,6950,7009,7051,7096,7127,7162,7208,7238,7310,7358,7380,7377,7374,7372,7307,7277,
+7227,7069,6977,7025,7016,6888,6827,6809,6825,6878,7017,7276,7477,7597,7681,7767,7902,7986,8048,8143,
+7943,7727,7598,7615,7644,7674,7616,7453,7424,7419,7404,7386,7365,7342,7317,7300,7283,7281,7235,7215,
+7181,7145,7097,7058,7014,6997,6963,6913,6876,6832,6754,6713,6632,6533,6436,6371,6314,6275,6195,6093,
+6129,6209,6264,6412,6441,6301,6077,5958,5915,5952,5581,5558,5865,6019,6027,6024,5993,5957,5922,5874,
+5849,5825,5833,5851,5885,5879,5876,5813,5741,5697,5747,5649,5595,5578,5569,5518,5487,5441,5334,5147,
+5055,5068,5105,5102,5063,4985,4905,4848,4790,4713,4626,4546,4505,4454,4420,4383,4332,4277,4213,4183,
+4172,4160,4118,4048,3997,3959,3926,3886,3842,3803,3761,3723,3700,3655,3603,3571,3539,3514,3505,3511,
+3514,3524,3483,3412,3365,3312,3270,3229,3179,3140,3088,3036,2993,2965,2938,2910,2883,2857,2828,2804,
+2770,2746,2750,2756,2758,2742,2726,2707,2682,2637,2592,2548,2501,2457,2430,2375,2315,2248,2192,2168,
+2157,2134,2113,2081,2040,1985,1943,1896,1873,1842,1811,1792,1753,1729,1693,1657,1656,1605,1568,1551,
+1515,1488,1492,1520,1528,1579,1581,1572,1558,1542,1522,1500,1468,1407,1355,1332,1322,1323,1193,1172,
+1126,1077,1011,1040,994,975,931,895,867,856,841,819,806,797,785,787,791,745,725,719,
+728,739,720,688,666,657,650,634,630,628,672,722,712,615,577,566,578,579,560,551,
+606,543,477,398,396,389,357,322,283,248,227,211,199,164,134,109,73,41,18,0,
+-18,-38,-58,-81,-98,-114,-130,-142,-147,-156,-160,-168,-180,-192,-212,-234,-260,-278,-283,-278,
+-272,-267,-231,-167,-2,156,91,-49,-55,-176,-259,-317,-351,-372,-395,-414,-440,-467,-495,-531,
+-559,-588,-609,-623,-640,-664,-692,-713,-736,-751,-768,-778,-788,-800,-813,-830,-845,-859,-871,-884,
+-899,-917,-933,-937,-940,-950,-966,-971,-970,-988,-994,-989,-969,-998,-1011,-1020,-1023,-1025,-1028,-1029,
+-1024,-1025,-1030,-1044,-1054,-1056,-1065,-1070,-1063,-1064,-1082,-1066,-1067,-1079,-1063,-1060,-1061,-1065,-1069,-1078,
+-1091,-1087,-1095,-1101,-1099,-1096,-1091,-1086,-1087,-1090,-1092,-1084,-1068,-1060,-1054,-1044,-1025,-1026,-998,-987,
+-973,-940,-922,-908,-889,-877,-870,-856,-850,-842,-833,-826,-821,-819,-814,-806,-799,-796,-789,-779,
+-771,-770,-771,-772,-774,-771,-789,-793,-796,-800,-802,-807,-818,-825,-837,-854,-864,-875,-888,-897,
+-905,-922,-943,-956,-974,-1007,-1031,-1047,-1082,-1107,-1110,-1110,-1119,-1129,-1134,-1143,-1152,-1165,-1165,-1170,
+-1173,-1177,-1184,-1190,-1188,-1181,-1179,-1176,-1171,-1169,-1164,-1157,-1160,-1160,-1156,-1151,-1145,-1138,-1128,-1118,
+-1113,-1114,-1120,-1113,-1108,-1105,-1092,-1083,-1090,-1082,-1071,-1068,-1062,-1050,-1041,-1033,-1023,-1000,-986,-964,
+-942,-918,-896,-878,-855,-830,-804,-777,-753,-726,-704,-679,-657,-628,-599,-569,-537,-508,-478,-444,
+-413,-382,-349,-313,-270,-221,-170,-123,-83,-45,-2,45,77,93,100,94,72,26,-48,-144,
+-231,-107,161,367,622,949,1210,1475,1765,2070,2409,2716,2661,2707,2741,2755,2684,2723,2620,2479,
+2305,2134,2017,2038,2060,2100,2269,2429,2546,2627,2643,2601,2620,2700,2715,2732,2743,2776,2824,2863,
+2848,2818,2766,2728,2723,2720,2701,2656,2601,2545,2489,2450,2426,2400,2358,2310,2262,2218,2169,2115,
+2038,1929,1811,1716,1660,1652,1640,1606,1541,1472,1418,1344,1241,1126,1025,933,841,736,635,541,
+461,385,306,207,104,-7,-116,-209,-295,-369,-449,-491,-466,-408,-409,-484,-616,-740,-856,-961,
+-1034,-1096,-1147,-1201,-1244,-1284,-1314,-1335,-1354,-1347,-1330,-1326,-1338,-1349,-1351,-1361,-1426,-1533,-1650,-1763,
+-1854,-1911,-1940,-1950,-1935,-1874,-1844,-1839,-1803,-1848,-1887,-1900,-1902,-1903,-1907,-1880,-1846,-1770,-1692,-1642,
+-1622,-1618,-1622,-1567,-1503,-1500,-1531,-1596,-1658,-1687,-1690,-1664,-1635,-1568,-1490,-1440,-1355,-1317,-1320,-1257,
+-1246,-1226,-1199,-1181,-1190,-1231,-1273,-1276,-1172,-1061,-968,-929,-927,-917,-892,-869,-890,-934,-944,-1004,
+-1084,-1163,-1169,-1127,-1137,-1142,-1125,-1104,-1107,-1101,-1092,-1080,-1065,-1058,-1050,-1034,-1020,-1004,-995,-982,
+-972,-951,-935,-922,-898,-878,-851,-842,-825,-812,-788,-761,-746,-738,-725,-710,-692,-679,-665,-634,
+-608,-583,-555,-518,-478,-424,-376,-341,-308,-261,-218,-161,-110,-57,-9,43,98,157,256,297,
+349,399,437,471,505,524,569,611,665,694,725,764,792,814,841,871,900,918,962,1004,
+1029,1070,1094,1139,1169,1203,1255,1293,1323,1332,1333,1309,1294,1299,1302,1305,1309,1308,1294,1282,
+1276,1280,1278,1300,1296,1310,1318,1329,1316,1309,1321,1323,1321,1323,1339,1353,1337,1330,1345,1444,
+1400,1344,1342,1338,1344,1338,1332,1299,1279,1253,1265,1285,1289,1283,1275,1276,1305,1264,1245,1187,
+1127,1117,1091,1108,1095,1053,1030,1019,1018,1021,1025,1028,1026,1021,1015,1007,1003,999,995,997,
+998,1008,1010,1017,1030,1043,1059,1068,1081,1098,1114,1131,1149,1161,1177,1197,1209,1221,1235,1250,
+1278,1313,1344,1376,1405,1432,1478,1528,1551,1577,1594,1621,1663,1716,1793,1826,1825,1799,1732,1649,
+1692,1760,1807,1832,1846,1820,1775,1653,1511,1374,1248,1137,1058,1011,991,947,897,871,809,765,
+712,651,586,528,475,421,375,337,297,258,216,167,122,41,-89,-210,-283,-314,-316,-334,
+-363,-371,-343,-360,-342,-318,-378,-467,-590,-672,-723,-733,-684,-598,-658,-727,-734,-785,-918,-1054,
+-1132,-1169,-1179,-1156,-1123,-1112,-1104,-1091,-1113,-1150,-1196,-1238,-1290,-1375,-1378,-1234,-1194,-1316,-1537,-1741,
+-1791,-1702,-1730,-1782,-1856,-1885,-1911,-1953,-1983,-2075,-2170,-2245,-2284,-2315,-2309,-2287,-2289,-2297,-2313,-2341,
+-2418,-2458,-2513,-2570,-2645,-2763,-2980,-3116,-3031,-2926,-2908,-2943,-2998,-3054,-3092,-3121,-3145,-3155,-3159,-3162,
+-3169,-3180,-3203,-3225,-3248,-3268,-3289,-3304,-3316,-3319,-3303,-3323,-3288,-3224,-3278,-3303,-3291,-3261,-3198,-3245,
+-3270,-3197,-3170,-3143,-2978,-2991,-2979,-3005,-3122,-3169,-3187,-3189,-3178,-3188,-3198,-3222,-3233,-3258,-3261,-3281,
+-3312,-3329,-3355,-3369,-3393,-3416,-3443,-3456,-3400,-3513,-3573,-3594,-3623,-3679,-3740,-3799,-3845,-3855,-3857,-3883,
+-3898,-3840,-3680,-3676,-3688,-3713,-3762,-3810,-3850,-3896,-3963,-4113,-4311,-4398,-4454,-4542,-4607,-4685,-4748,-4807,
+-4852,-4919,-4964,-4974,-5041,-5105,-5114,-5126,-5117,-5140,-5218,-5320,-5392,-5434,-5536,-5572,-5613,-5692,-5756,-5814,
+-5877,-5930,-5933,-6022,-6050,-6085,-6135,-6180,-6235,-6318,-6402,-6463,-6548,-6659,-6758,-6823,-6895,-6963,-6999,-7048,
+-7086,-7121,-7158,-7193,-7229,-7262,-7289,-7323,-7355,-7386,-7414,-7440,-7456,-7471,-7482,-7495,-7499,-7501,-7502,-7507,
+-7494,-7486,-7477,-7483,-7453,-7433,-7414,-7400,-7396,-7419,-7408,-7385,-7377,-7369,-7365,-7359,-7339,-7301,-7268,-7192,
+-7095,-7074,-7040,-6980,-6962,-6946,-6958,-6947,-6932,-6915,-6888,-6863,-6853,-6832,-6770,-6668,-6584,-6508,-6453,-6429,
+-6423,-6426,-6420,-6374,-6246,-6075,-5973,-5934,-5935,-5876,-5806,-5664,-5558,-5483,-5404,-5382,-5356,-5283,-5195,-5080,
+-4935,-4802,-4684,-4559,-4430,-4347,-4311,-4190,-4065,-3994,-3907,-3827,-3782,-3690,-3559,-3452,-3400,-3317,-3203,-3096,
+-2933,-2823,-2692,-2581,-2480,-2428,-2395,-2344,-2281,-2225,-2129,-1998,-1867,-1741,-1619,-1527,-1441,-1321,-1169,-996,
+-819,-696,-608,-481,-324,-304,-463,-587,-654,-678,-702,-716,-712,-699,-668,-612,-552,-521,-490,-434,
+-411,-427,-392,-332,-250,-71,81,183,281,355,419,526,616,680,831,974,1000,908,888,901,
+952,955,937,928,974,1068,1142,1215,1270,1313,1361,1452,1530,1555,1621,1764,1962,2135,2296,2468,
+2732,3090,3387,3509,3501,3368,3225,3106,3048,2952,2815,2632,2565,2615,2741,2927,3059,3213,3226,3214,
+3269,3237,3300,3418,3549,3682,3824,3945,4097,4270,4393,4516,4645,4723,4803,4889,4967,5015,5041,5080,
+5133,5186,5272,5352,5426,5496,5549,5618,5686,5754,5813,5863,5925,5998,6056,6090,6099,6110,6106,6114,
+6144,6161,6208,6290,6373,6456,6445,6385,6363,6364,6390,6416,6437,6468,6512,6560,6608,6658,6720,6791,
+6841,6867,6852,6852,6850,6859,6902,6979,7018,7046,7095,7153,7214,7276,7318,7352,7353,7344,7312,7259,
+7271,7169,7054,7021,7079,7039,6935,6903,6867,6872,6880,6931,7029,7181,7316,7416,7496,7582,7672,7768,
+7864,7883,7876,7793,7728,7681,7682,7578,7512,7481,7440,7405,7390,7335,7317,7314,7299,7280,7262,7234,
+7181,7137,7107,7048,7004,6968,6927,6907,6866,6812,6649,6695,6816,6814,6746,6670,6616,6558,6472,6319,
+6206,6068,5962,5958,6051,6159,6173,6315,6371,6270,6194,5907,5817,5906,5984,6014,6013,5998,5958,5883,
+5804,5790,5792,5792,5764,5826,5879,5942,5899,5866,5812,5781,5817,5684,5636,5611,5590,5573,5532,5478,
+5417,5316,5160,5017,5076,5103,5053,4990,4964,4936,4877,4774,4683,4629,4554,4504,4464,4410,4346,4283,
+4245,4229,4210,4155,4075,4023,3988,3958,3922,3896,3861,3816,3770,3735,3699,3654,3624,3609,3610,3648,
+3723,3722,3665,3685,3547,3468,3420,3350,3294,3242,3208,3149,3099,3055,3025,2999,2975,2951,2929,2907,
+2873,2851,2812,2798,2792,2781,2763,2752,2750,2718,2690,2647,2626,2563,2511,2473,2410,2336,2265,2201,
+2169,2156,2150,2145,2117,2050,2008,1958,1935,1890,1866,1828,1798,1772,1737,1689,1643,1603,1636,1590,
+1508,1501,1495,1508,1539,1531,1553,1574,1557,1544,1535,1527,1516,1490,1432,1381,1376,1367,1366,1222,
+1151,1106,1082,1046,1024,983,966,931,887,861,839,827,813,799,785,772,782,794,762,712,
+696,696,715,703,681,693,670,628,608,595,596,611,624,617,573,557,538,525,526,528,
+516,487,461,458,361,353,354,338,304,262,227,202,181,165,143,116,86,50,20,1,
+-27,-48,-61,-89,-109,-133,-149,-160,-180,-190,-191,-197,-208,-205,-225,-242,-259,-277,-292,-302,
+-313,-323,-328,-316,-267,-159,-50,-30,-54,-122,-149,-229,-316,-362,-388,-407,-422,-445,-475,-510,
+-547,-581,-603,-637,-662,-677,-693,-699,-709,-715,-728,-744,-760,-780,-790,-803,-810,-832,-863,-889,
+-905,-915,-928,-932,-927,-924,-931,-946,-960,-968,-964,-985,-988,-970,-952,-988,-1004,-1008,-1010,-1015,
+-1018,-1012,-1009,-1014,-1034,-1031,-1036,-1042,-1035,-1027,-1043,-1024,-1034,-1036,-1049,-1047,-1041,-1032,-1028,-1032,
+-1042,-1059,-1059,-1058,-1067,-1057,-1059,-1059,-1058,-1052,-1044,-1037,-1035,-1026,-1019,-1010,-1006,-991,-982,-964,
+-949,-933,-914,-903,-881,-866,-856,-846,-834,-825,-814,-809,-800,-792,-785,-778,-772,-769,-761,-756,
+-749,-738,-739,-743,-737,-748,-756,-761,-767,-768,-773,-780,-781,-790,-795,-801,-814,-829,-843,-861,
+-873,-889,-902,-915,-935,-988,-990,-1006,-1035,-1074,-1085,-1080,-1082,-1096,-1104,-1119,-1128,-1133,-1130,-1134,
+-1140,-1148,-1154,-1158,-1165,-1165,-1159,-1159,-1156,-1153,-1146,-1144,-1143,-1141,-1139,-1139,-1136,-1126,-1114,-1104,
+-1095,-1089,-1100,-1100,-1051,-1091,-1076,-1064,-1054,-1063,-1056,-1047,-1041,-1039,-1036,-1023,-1007,-1000,-993,-966,
+-944,-922,-903,-882,-861,-837,-814,-790,-765,-742,-716,-691,-667,-648,-620,-593,-561,-526,-498,-464,
+-438,-410,-381,-344,-304,-263,-219,-176,-139,-89,-32,13,51,83,105,117,127,126,94,30,
+-58,-176,-216,-26,192,407,772,1094,1361,1627,1955,2304,2538,2634,2721,2817,2786,2707,2799,2816,
+2713,2479,2266,2115,2178,2242,2204,2342,2482,2604,2698,2680,2633,2673,2685,2668,2689,2724,2782,2846,
+2899,2918,2882,2816,2757,2751,2745,2728,2689,2659,2618,2573,2527,2476,2461,2442,2417,2391,2366,2331,
+2282,2193,2078,1955,1851,1792,1771,1750,1715,1649,1586,1515,1417,1296,1192,1106,1024,923,798,682,
+580,495,425,337,239,141,33,-77,-178,-273,-344,-410,-446,-421,-381,-373,-449,-584,-730,-839,
+-918,-993,-1066,-1126,-1186,-1223,-1245,-1268,-1295,-1322,-1336,-1325,-1310,-1313,-1302,-1298,-1324,-1425,-1552,-1661,
+-1769,-1850,-1898,-1924,-1928,-1893,-1832,-1782,-1776,-1761,-1784,-1838,-1854,-1850,-1837,-1832,-1826,-1770,-1686,-1611,
+-1565,-1550,-1548,-1551,-1528,-1506,-1501,-1524,-1589,-1645,-1679,-1672,-1644,-1616,-1581,-1518,-1377,-1292,-1294,-1315,
+-1256,-1225,-1227,-1210,-1187,-1200,-1232,-1295,-1358,-1267,-1090,-973,-921,-916,-940,-954,-934,-922,-935,-1045,
+-1123,-1140,-1156,-1162,-1150,-1134,-1117,-1108,-1101,-1087,-1079,-1070,-1063,-1064,-1057,-1042,-1027,-1008,-998,-992,
+-972,-954,-936,-926,-911,-892,-878,-850,-829,-830,-814,-798,-776,-761,-753,-737,-717,-698,-674,-654,
+-634,-616,-594,-574,-533,-485,-440,-410,-366,-308,-261,-228,-189,-139,-75,-35,18,79,128,196,
+304,309,368,412,453,482,530,558,593,630,654,689,721,757,775,804,811,849,893,932,
+964,999,1032,1064,1095,1148,1179,1222,1257,1265,1311,1301,1284,1284,1266,1267,1268,1266,1257,1259,
+1241,1231,1241,1242,1244,1240,1239,1259,1296,1277,1279,1270,1268,1271,1282,1299,1316,1331,1328,1330,
+1354,1349,1322,1315,1304,1311,1319,1298,1265,1253,1257,1263,1260,1249,1251,1257,1298,1239,1192,1157,
+1125,1097,1091,1085,1078,1064,1049,1041,1038,1039,1041,1040,1038,1035,1033,1026,1020,1015,1013,1012,
+1015,1022,1023,1029,1037,1054,1068,1080,1095,1109,1128,1147,1167,1187,1205,1216,1233,1246,1259,1268,
+1289,1335,1348,1367,1396,1443,1457,1470,1549,1588,1609,1634,1662,1711,1756,1806,1864,1870,1847,1757,
+1716,1789,1865,1895,1899,1907,1883,1846,1745,1582,1444,1313,1197,1113,1057,1028,1004,958,930,869,
+808,768,705,645,582,523,471,425,382,338,299,261,215,170,89,-31,-155,-230,-259,-260,
+-275,-277,-262,-231,-222,-229,-261,-311,-413,-514,-578,-647,-672,-674,-590,-644,-704,-723,-810,-935,
+-1029,-1090,-1112,-1095,-1066,-1058,-1062,-1064,-1087,-1134,-1181,-1240,-1310,-1380,-1508,-1473,-1274,-1189,-1150,-1356,
+-1735,-1845,-1787,-1776,-1775,-1815,-1830,-1880,-1950,-2008,-2080,-2178,-2262,-2300,-2318,-2298,-2273,-2274,-2298,-2322,
+-2316,-2369,-2405,-2429,-2455,-2503,-2621,-2834,-3043,-3006,-2864,-2830,-2866,-2929,-2986,-3024,-3052,-3061,-3071,-3080,
+-3088,-3098,-3116,-3143,-3168,-3191,-3214,-3238,-3259,-3263,-3251,-3194,-3239,-3257,-3240,-3237,-3239,-3228,-3200,-3099,
+-3075,-3207,-3191,-3162,-3124,-2919,-3018,-3105,-3119,-3126,-3154,-3141,-3129,-3129,-3138,-3168,-3185,-3205,-3221,-3233,
+-3264,-3292,-3294,-3307,-3303,-3334,-3368,-3390,-3416,-3408,-3370,-3513,-3541,-3570,-3613,-3660,-3725,-3778,-3816,-3828,
+-3853,-3874,-3853,-3688,-3627,-3641,-3658,-3699,-3748,-3785,-3824,-3884,-4012,-4225,-4306,-4354,-4447,-4513,-4582,-4665,
+-4726,-4781,-4805,-4843,-4923,-4961,-4959,-4970,-5010,-5026,-5044,-5144,-5210,-5264,-5376,-5406,-5444,-5523,-5595,-5673,
+-5731,-5787,-5846,-5884,-5930,-5960,-5979,-6023,-6069,-6132,-6231,-6321,-6389,-6472,-6566,-6675,-6749,-6817,-6875,-6909,
+-6950,-6983,-7016,-7055,-7091,-7128,-7164,-7194,-7226,-7256,-7293,-7322,-7343,-7363,-7373,-7382,-7394,-7397,-7391,-7398,
+-7406,-7394,-7389,-7385,-7383,-7358,-7338,-7319,-7312,-7321,-7332,-7329,-7315,-7310,-7305,-7304,-7294,-7272,-7238,-7187,
+-7097,-7012,-7021,-6992,-6950,-6935,-6923,-6942,-6940,-6915,-6888,-6861,-6835,-6820,-6803,-6736,-6616,-6532,-6458,-6416,
+-6405,-6416,-6419,-6420,-6386,-6228,-6043,-5956,-5954,-5931,-5871,-5794,-5680,-5575,-5503,-5423,-5404,-5363,-5280,-5196,
+-5077,-4925,-4798,-4708,-4601,-4497,-4407,-4340,-4200,-4053,-3993,-3936,-3859,-3813,-3719,-3595,-3503,-3429,-3348,-3251,
+-3130,-2968,-2863,-2750,-2640,-2550,-2500,-2471,-2412,-2348,-2273,-2192,-2033,-1913,-1804,-1700,-1619,-1532,-1393,-1242,
+-1056,-892,-739,-656,-535,-243,-247,-515,-636,-685,-691,-680,-666,-656,-625,-599,-551,-491,-459,-439,
+-348,-350,-357,-339,-282,-186,-64,54,122,182,239,365,468,516,535,609,708,757,700,719,
+751,839,904,910,902,960,1058,1118,1159,1183,1232,1294,1376,1463,1513,1585,1657,1777,1884,1970,
+2125,2352,2681,2878,2939,2962,2945,2905,2926,2999,3000,2906,2736,2680,2729,2822,2918,2956,2989,2974,
+3055,3160,3283,3430,3582,3720,3855,3989,4113,4261,4406,4508,4605,4730,4818,4881,4934,4971,4993,5012,
+5062,5130,5205,5292,5373,5437,5502,5536,5596,5666,5741,5802,5857,5913,5972,6031,6061,6061,6048,6035,
+6039,6079,6114,6146,6204,6304,6381,6382,6335,6316,6316,6341,6375,6397,6434,6486,6536,6585,6639,6701,
+6764,6803,6830,6810,6786,6739,6740,6808,6916,6945,6974,7026,7093,7163,7224,7294,7317,7319,7304,7261,
+7206,7181,7124,7061,7074,7079,7046,7006,6985,6951,6929,6900,6896,6926,6988,7056,7110,7160,7227,7315,
+7438,7569,7653,7672,7746,7719,7650,7636,7623,7574,7504,7434,7393,7393,7368,7300,7283,7281,7266,7236,
+7218,7148,7106,7061,7012,6977,6922,6896,6820,6755,6638,6712,6952,7073,7070,6981,6854,6754,6654,6600,
+6523,6466,6308,6089,5983,5888,5871,5940,6208,6541,6638,6559,6291,6039,5924,5968,5956,5966,5959,5870,
+5779,5682,5632,5657,5595,5644,5761,5755,5750,5739,5777,5822,5820,5833,5808,5717,5685,5674,5650,5613,
+5574,5526,5482,5365,5142,5067,5080,5053,5023,5039,5054,5018,4937,4838,4759,4671,4596,4550,4500,4439,
+4378,4341,4293,4268,4205,4156,4114,4055,4003,3979,3960,3926,3877,3828,3781,3736,3700,3684,3685,3724,
+3817,4037,3976,3842,3743,3627,3608,3521,3429,3367,3306,3256,3207,3156,3123,3095,3073,3034,3009,2992,
+2972,2936,2903,2870,2866,2827,2805,2779,2760,2751,2732,2712,2677,2635,2603,2559,2512,2450,2384,2305,
+2230,2183,2165,2160,2147,2112,2070,2028,1985,1949,1911,1868,1837,1798,1757,1744,1689,1635,1604,1616,
+1567,1504,1476,1436,1484,1534,1547,1528,1566,1552,1531,1529,1526,1523,1506,1456,1404,1380,1380,1398,
+1230,1144,1104,1084,1059,1030,998,961,926,878,861,832,824,817,811,792,780,775,762,737,
+706,684,669,662,656,666,755,674,604,581,572,569,573,558,536,518,525,522,506,501,
+505,489,449,411,388,430,337,312,311,287,250,207,181,163,149,129,98,70,40,7,
+-20,-53,-73,-96,-115,-141,-157,-173,-188,-201,-226,-232,-238,-247,-254,-261,-274,-288,-295,-301,
+-319,-332,-346,-349,-343,-315,-258,-172,-23,-77,-192,-256,-282,-339,-381,-411,-427,-430,-472,-498,
+-534,-572,-602,-623,-628,-644,-662,-680,-696,-720,-736,-748,-761,-774,-790,-805,-832,-846,-854,-866,
+-870,-879,-885,-886,-895,-909,-915,-926,-935,-948,-953,-963,-973,-976,-974,-976,-989,-994,-998,-979,
+-995,-1004,-1001,-993,-995,-1003,-1012,-1013,-1020,-1026,-996,-1015,-1007,-1001,-1002,-1027,-1011,-1014,-1013,-1005,
+-1010,-1014,-1022,-1028,-1033,-1030,-1022,-1023,-1024,-1023,-1016,-1001,-1001,-998,-991,-978,-964,-955,-943,-935,
+-924,-911,-896,-876,-857,-848,-835,-825,-812,-804,-793,-786,-778,-770,-764,-759,-745,-741,-736,-729,
+-728,-722,-708,-709,-718,-726,-726,-726,-731,-739,-742,-749,-754,-759,-763,-772,-779,-791,-811,-815,
+-829,-845,-864,-883,-903,-918,-937,-966,-994,-1018,-1059,-1066,-1058,-1061,-1068,-1080,-1098,-1110,-1108,-1106,
+-1093,-1098,-1111,-1123,-1128,-1129,-1130,-1134,-1131,-1135,-1133,-1128,-1122,-1120,-1120,-1122,-1121,-1116,-1107,-1092,
+-1082,-1072,-1068,-1087,-1065,-1027,-1069,-1046,-1037,-1025,-1034,-1029,-1020,-1014,-1011,-1007,-998,-993,-979,-971,
+-959,-929,-910,-892,-869,-844,-821,-797,-775,-753,-730,-704,-681,-655,-634,-609,-584,-548,-516,-485,
+-459,-435,-404,-375,-339,-302,-267,-229,-179,-128,-78,-36,6,48,86,118,147,165,166,144,
+102,24,-88,-192,-153,36,247,550,908,1202,1484,1802,2073,2357,2502,2765,2853,2817,2803,2895,
+2941,2873,2688,2481,2362,2401,2462,2390,2479,2571,2657,2742,2713,2678,2678,2661,2658,2680,2732,2802,
+2862,2916,2943,2912,2854,2811,2796,2769,2763,2726,2717,2703,2669,2619,2570,2548,2530,2519,2508,2491,
+2462,2398,2297,2178,2068,1979,1924,1894,1863,1826,1752,1688,1601,1488,1372,1262,1172,1098,994,866,
+741,632,547,471,388,281,183,94,-22,-149,-254,-326,-395,-451,-450,-424,-434,-507,-659,-812,
+-924,-972,-1012,-1064,-1116,-1160,-1182,-1198,-1219,-1250,-1280,-1291,-1278,-1267,-1277,-1265,-1267,-1306,-1416,-1575,
+-1695,-1787,-1850,-1884,-1902,-1896,-1859,-1795,-1724,-1690,-1693,-1717,-1784,-1811,-1804,-1778,-1783,-1770,-1727,-1654,
+-1589,-1556,-1588,-1588,-1570,-1565,-1559,-1540,-1544,-1598,-1648,-1672,-1654,-1614,-1599,-1576,-1500,-1355,-1281,-1302,
+-1297,-1255,-1241,-1235,-1223,-1207,-1234,-1282,-1392,-1460,-1354,-1095,-996,-953,-961,-983,-991,-961,-898,-916,
+-1020,-1086,-1117,-1127,-1126,-1124,-1119,-1111,-1105,-1087,-1067,-1053,-1047,-1049,-1042,-1039,-1033,-1016,-1000,-984,
+-976,-957,-936,-917,-911,-899,-886,-876,-856,-834,-824,-805,-786,-790,-781,-765,-751,-726,-710,-687,
+-662,-642,-625,-594,-572,-538,-488,-460,-429,-378,-335,-289,-239,-197,-152,-100,-52,2,55,102,
+157,221,281,346,373,417,469,501,522,554,594,647,684,699,720,735,753,792,828,871,
+907,945,976,1003,1032,1068,1093,1133,1179,1226,1240,1285,1280,1266,1243,1221,1225,1220,1220,1214,
+1215,1209,1211,1199,1199,1193,1204,1203,1193,1197,1216,1237,1255,1273,1293,1303,1309,1297,1310,1313,
+1309,1313,1316,1322,1321,1334,1351,1352,1332,1279,1230,1234,1230,1226,1217,1223,1220,1215,1171,1140,
+1120,1104,1093,1085,1085,1076,1069,1064,1063,1061,1058,1057,1053,1049,1046,1045,1039,1037,1034,1032,
+1031,1034,1043,1050,1054,1060,1076,1096,1108,1126,1139,1156,1172,1192,1217,1239,1251,1263,1278,1296,
+1307,1332,1357,1380,1402,1428,1444,1465,1523,1562,1620,1632,1656,1694,1731,1787,1816,1870,1893,1880,
+1790,1764,1868,1923,1951,1958,1950,1926,1931,1844,1676,1525,1391,1278,1190,1127,1094,1064,1022,971,
+922,871,823,762,701,635,571,520,471,424,380,340,305,261,214,142,31,-76,-150,-189,
+-194,-184,-173,-153,-125,-93,-126,-217,-282,-343,-422,-497,-547,-580,-615,-628,-629,-662,-743,-863,
+-944,-999,-1021,-1021,-1001,-979,-980,-1002,-1032,-1071,-1124,-1188,-1245,-1350,-1449,-1589,-1547,-1368,-1235,-1158,
+-1306,-1694,-1842,-1766,-1721,-1784,-1818,-1864,-1918,-1985,-2039,-2106,-2187,-2258,-2293,-2312,-2307,-2294,-2304,-2321,
+-2337,-2324,-2358,-2388,-2384,-2376,-2423,-2537,-2744,-2966,-2943,-2799,-2766,-2805,-2865,-2925,-2959,-2972,-2969,-2985,
+-2997,-3013,-3032,-3052,-3074,-3105,-3137,-3159,-3188,-3204,-3207,-3153,-3158,-3190,-3205,-3193,-3178,-3170,-3145,-3119,
+-3116,-3060,-3107,-3159,-3148,-3062,-2937,-3087,-3138,-3125,-3108,-3108,-3088,-3075,-3075,-3101,-3129,-3160,-3183,-3201,
+-3213,-3224,-3235,-3244,-3257,-3270,-3273,-3303,-3336,-3370,-3404,-3424,-3459,-3481,-3508,-3532,-3589,-3650,-3704,-3753,
+-3780,-3810,-3834,-3834,-3755,-3607,-3597,-3616,-3642,-3670,-3712,-3757,-3814,-3931,-4143,-4212,-4284,-4370,-4430,-4508,
+-4570,-4616,-4655,-4720,-4790,-4821,-4818,-4854,-4838,-4829,-4907,-4981,-5018,-5096,-5219,-5252,-5275,-5358,-5448,-5496,
+-5563,-5637,-5695,-5754,-5776,-5796,-5808,-5873,-5930,-5981,-6042,-6152,-6238,-6314,-6411,-6459,-6609,-6669,-6733,-6773,
+-6808,-6842,-6876,-6907,-6949,-6985,-7025,-7063,-7096,-7129,-7165,-7200,-7225,-7249,-7265,-7275,-7284,-7293,-7292,-7287,
+-7294,-7303,-7293,-7282,-7282,-7277,-7252,-7240,-7229,-7228,-7239,-7248,-7250,-7236,-7232,-7238,-7239,-7224,-7191,-7143,
+-7086,-7009,-6957,-6972,-6956,-6940,-6934,-6917,-6917,-6914,-6895,-6853,-6828,-6811,-6800,-6755,-6681,-6560,-6434,-6355,
+-6336,-6363,-6402,-6415,-6421,-6378,-6218,-6030,-5965,-5968,-5923,-5831,-5758,-5669,-5585,-5521,-5446,-5415,-5366,-5270,
+-5167,-5033,-4909,-4817,-4734,-4627,-4561,-4470,-4367,-4207,-4051,-3975,-3940,-3888,-3831,-3750,-3627,-3513,-3468,-3402,
+-3301,-3168,-2963,-2847,-2802,-2705,-2624,-2571,-2532,-2464,-2403,-2325,-2225,-2026,-1945,-1870,-1768,-1692,-1606,-1469,
+-1312,-1141,-958,-752,-720,-631,-497,-529,-646,-719,-742,-716,-677,-636,-621,-591,-543,-501,-440,-363,
+-323,-147,-223,-205,-149,-78,3,94,181,230,268,322,385,440,443,425,412,426,457,472,
+545,600,703,771,840,877,950,1056,1159,1240,1283,1339,1390,1460,1539,1584,1630,1718,1803,1832,
+1860,1932,2102,2368,2545,2649,2704,2752,2803,2892,2952,2971,2863,2815,2830,2894,2951,2983,2922,2893,
+2932,3093,3287,3448,3586,3702,3832,3969,4100,4228,4359,4475,4573,4661,4757,4824,4867,4904,4932,4952,
+4986,5037,5107,5191,5280,5366,5419,5477,5527,5573,5648,5731,5779,5836,5898,5959,6022,6034,6009,5992,
+5964,5956,5986,6037,6072,6124,6209,6285,6301,6272,6266,6274,6295,6323,6357,6405,6458,6512,6568,6617,
+6667,6722,6756,6771,6748,6725,6683,6670,6743,6818,6864,6902,6959,7042,7122,7179,7256,7282,7296,7280,
+7221,7145,7101,7073,7062,7051,7054,7045,7035,7036,7012,6981,6939,6902,6899,6914,6932,6952,6985,7035,
+7095,7153,7232,7317,7423,7509,7551,7596,7618,7600,7498,7474,7407,7416,7428,7393,7347,7235,7222,7210,
+7180,7155,7154,7101,7069,7022,6998,6951,6803,6670,6553,6624,6909,7118,7171,7081,6958,6809,6689,6588,
+6537,6551,6503,6444,6307,6139,5983,5841,5816,5925,6248,6565,6706,6556,6274,5996,5874,5836,5813,5800,
+5713,5557,5344,5321,5361,5465,5553,5681,5762,5762,5702,5766,5826,5845,5839,5856,5820,5759,5747,5721,
+5699,5668,5611,5568,5501,5384,5289,5235,5194,5067,5012,5087,5113,5065,4982,4897,4795,4689,4625,4587,
+4541,4494,4460,4379,4350,4312,4274,4216,4135,4068,4050,4036,4002,3952,3894,3852,3811,3790,3775,3781,
+3814,3880,4069,4119,3913,3813,3724,3739,3624,3517,3448,3379,3315,3268,3215,3186,3183,3153,3103,3075,
+3047,3029,2990,2954,2916,2877,2847,2804,2782,2777,2774,2762,2735,2704,2678,2650,2610,2562,2494,2426,
+2351,2273,2218,2185,2163,2145,2118,2090,2054,2008,1952,1936,1866,1842,1815,1736,1700,1683,1640,1630,
+1718,1668,1533,1485,1453,1494,1527,1539,1500,1533,1538,1527,1529,1533,1525,1506,1474,1428,1379,1325,
+1249,1202,1147,1113,1088,1060,1018,999,957,921,867,838,828,818,816,814,799,784,772,762,
+715,688,667,650,637,629,632,643,613,578,556,544,530,556,528,486,475,481,490,483,
+476,482,469,434,389,364,450,350,270,285,273,240,192,169,147,126,110,86,56,26,
+-5,-31,-66,-91,-123,-138,-157,-175,-194,-210,-223,-247,-263,-271,-280,-286,-296,-311,-312,-318,
+-325,-335,-348,-356,-360,-360,-356,-333,-287,-236,-236,-290,-322,-326,-336,-384,-418,-471,-493,-507,
+-512,-521,-538,-579,-614,-646,-675,-695,-712,-733,-755,-765,-774,-787,-785,-793,-802,-823,-821,-833,
+-846,-858,-869,-888,-896,-907,-917,-924,-926,-931,-941,-939,-940,-946,-948,-951,-953,-973,-988,-990,
+-988,-987,-984,-979,-980,-978,-983,-993,-992,-985,-1001,-1002,-975,-971,-967,-969,-988,-986,-984,-993,
+-984,-984,-990,-993,-1001,-1006,-1001,-991,-998,-998,-988,-976,-959,-968,-959,-953,-943,-923,-910,-899,
+-896,-886,-862,-853,-835,-819,-805,-791,-777,-764,-752,-749,-745,-738,-733,-731,-728,-720,-713,-707,
+-700,-698,-694,-685,-690,-692,-698,-697,-704,-706,-713,-715,-719,-727,-735,-739,-746,-756,-768,-781,
+-793,-808,-827,-842,-859,-878,-904,-921,-939,-971,-1000,-1007,-1024,-1028,-1036,-1045,-1054,-1064,-1072,-1069,
+-1070,-1073,-1065,-1073,-1085,-1092,-1096,-1101,-1105,-1102,-1106,-1104,-1105,-1102,-1099,-1096,-1094,-1094,-1092,-1082,
+-1071,-1060,-1053,-1058,-1073,-1036,-1056,-1038,-1017,-1012,-1005,-1009,-1013,-1003,-996,-987,-982,-970,-948,-944,
+-938,-919,-910,-890,-875,-854,-828,-802,-780,-758,-735,-711,-688,-666,-642,-618,-597,-572,-539,-506,
+-477,-451,-428,-401,-369,-339,-304,-259,-217,-174,-128,-82,-36,9,53,104,145,175,194,213,
+201,163,115,37,-79,-193,-99,111,355,668,1024,1348,1672,1945,2229,2577,2806,2853,2857,2844,
+2912,2909,2833,2774,2675,2632,2664,2661,2666,2654,2661,2712,2758,2752,2707,2667,2657,2663,2688,2750,
+2820,2875,2920,2941,2935,2922,2893,2862,2815,2781,2767,2775,2776,2747,2706,2679,2662,2649,2633,2614,
+2584,2535,2462,2354,2240,2133,2060,2027,2008,1975,1915,1824,1748,1647,1545,1440,1326,1244,1175,1064,
+940,812,697,609,539,454,342,239,136,7,-121,-232,-320,-390,-452,-483,-493,-537,-639,-790,
+-935,-1026,-1064,-1067,-1079,-1107,-1127,-1145,-1161,-1177,-1215,-1248,-1249,-1251,-1262,-1281,-1303,-1323,-1377,-1483,
+-1613,-1725,-1804,-1854,-1878,-1884,-1868,-1828,-1757,-1671,-1642,-1646,-1641,-1716,-1763,-1766,-1753,-1739,-1723,-1692,
+-1646,-1600,-1593,-1623,-1648,-1646,-1668,-1669,-1621,-1606,-1639,-1666,-1682,-1651,-1596,-1594,-1570,-1497,-1362,-1287,
+-1289,-1265,-1249,-1253,-1239,-1232,-1245,-1270,-1325,-1445,-1520,-1365,-1063,-982,-972,-1009,-1013,-972,-888,-896,
+-958,-1037,-1103,-1129,-1128,-1116,-1110,-1110,-1084,-1101,-1084,-1063,-1045,-1029,-1020,-1016,-1017,-1014,-1003,-991,
+-981,-969,-955,-930,-912,-900,-891,-876,-863,-844,-825,-814,-789,-787,-784,-776,-762,-755,-730,-711,
+-683,-655,-629,-615,-592,-560,-535,-503,-477,-421,-397,-352,-306,-250,-207,-165,-105,-62,-7,43,
+98,137,174,228,297,365,393,432,470,522,550,581,601,635,677,701,735,769,791,826,
+861,899,934,965,990,1011,1047,1073,1102,1137,1181,1244,1220,1251,1228,1207,1189,1189,1195,1189,
+1191,1186,1181,1173,1154,1149,1128,1134,1142,1171,1207,1229,1241,1241,1247,1261,1281,1292,1296,1300,
+1307,1307,1299,1294,1293,1282,1286,1293,1305,1295,1255,1222,1219,1217,1216,1203,1195,1176,1159,1134,
+1129,1140,1138,1110,1085,1102,1081,1081,1085,1082,1082,1074,1074,1072,1068,1065,1061,1059,1058,1055,
+1054,1051,1055,1061,1070,1082,1093,1102,1117,1135,1159,1173,1186,1198,1217,1245,1268,1283,1301,1314,
+1333,1355,1375,1402,1428,1451,1471,1490,1490,1516,1586,1610,1694,1685,1714,1742,1792,1817,1844,1891,
+1914,1836,1818,1937,1992,2003,2030,2014,2008,1986,1934,1796,1648,1508,1385,1284,1208,1168,1132,1078,
+1020,980,934,877,816,754,687,622,570,521,473,430,388,352,308,262,199,110,18,-50,
+-88,-98,-89,-78,-52,-39,-35,-95,-178,-232,-272,-330,-403,-460,-491,-516,-571,-593,-660,-788,
+-874,-918,-942,-951,-956,-946,-931,-948,-985,-1027,-1058,-1098,-1153,-1235,-1354,-1471,-1614,-1616,-1401,-1305,
+-1303,-1375,-1649,-1814,-1706,-1636,-1777,-1854,-1909,-1962,-2027,-2097,-2161,-2202,-2239,-2285,-2300,-2318,-2334,-2349,
+-2364,-2364,-2347,-2386,-2389,-2354,-2341,-2385,-2486,-2679,-2885,-2855,-2738,-2722,-2751,-2812,-2861,-2879,-2859,-2846,
+-2886,-2914,-2942,-2970,-2989,-3018,-3055,-3090,-3113,-3133,-3149,-3147,-3123,-3057,-3084,-3117,-3119,-3110,-3100,-3071,
+-3033,-3038,-3020,-2996,-2983,-2981,-3040,-2951,-2988,-3082,-3080,-3066,-3055,-3035,-3032,-3051,-3067,-3108,-3135,-3161,
+-3174,-3174,-3174,-3188,-3188,-3210,-3220,-3244,-3246,-3290,-3318,-3347,-3375,-3390,-3423,-3457,-3496,-3544,-3588,-3636,
+-3669,-3712,-3756,-3791,-3818,-3806,-3686,-3567,-3565,-3585,-3608,-3638,-3684,-3745,-3868,-4059,-4138,-4222,-4288,-4355,
+-4421,-4462,-4524,-4577,-4652,-4683,-4679,-4725,-4719,-4730,-4759,-4847,-4881,-4953,-5049,-5078,-5130,-5180,-5273,-5324,
+-5395,-5465,-5536,-5606,-5638,-5642,-5713,-5706,-5756,-5828,-5887,-5969,-6072,-6140,-6226,-6331,-6372,-6503,-6570,-6628,
+-6659,-6693,-6730,-6763,-6798,-6844,-6884,-6923,-6967,-7002,-7039,-7074,-7107,-7131,-7154,-7169,-7177,-7187,-7190,-7190,
+-7186,-7194,-7202,-7189,-7181,-7176,-7173,-7154,-7143,-7140,-7151,-7161,-7176,-7180,-7173,-7175,-7174,-7160,-7130,-7092,
+-7051,-6996,-6932,-6939,-6945,-6933,-6956,-6955,-6945,-6920,-6902,-6874,-6810,-6770,-6768,-6771,-6717,-6643,-6502,-6338,
+-6264,-6261,-6322,-6386,-6416,-6420,-6383,-6222,-6032,-5954,-5938,-5862,-5757,-5710,-5661,-5602,-5552,-5466,-5414,-5342,
+-5253,-5158,-5027,-4929,-4863,-4770,-4676,-4597,-4497,-4367,-4206,-4040,-3943,-3920,-3901,-3848,-3779,-3657,-3511,-3508,
+-3445,-3346,-3199,-3028,-2919,-2843,-2762,-2690,-2623,-2572,-2513,-2449,-2374,-2265,-2107,-1971,-1903,-1822,-1747,-1660,
+-1471,-1350,-1227,-1055,-919,-817,-759,-719,-752,-814,-840,-819,-770,-719,-671,-606,-562,-518,-468,-401,
+-323,-250,-152,-152,-77,2,74,143,209,279,346,407,472,528,580,585,556,508,440,386,
+374,408,466,531,592,694,803,876,969,1091,1198,1269,1332,1375,1423,1477,1522,1582,1651,1737,
+1767,1762,1813,1947,2154,2366,2524,2589,2684,2769,2818,2877,2899,2874,2894,2941,3001,3016,2966,2950,
+2992,3102,3285,3459,3593,3688,3779,3904,4039,4164,4287,4406,4504,4588,4664,4725,4780,4816,4855,4889,
+4911,4937,4973,5032,5130,5240,5322,5392,5448,5506,5570,5643,5718,5773,5821,5868,5919,5962,5979,5952,
+5924,5902,5896,5924,5971,6019,6070,6144,6207,6211,6191,6204,6229,6254,6283,6318,6371,6419,6467,6524,
+6574,6618,6646,6661,6670,6666,6681,6659,6639,6673,6723,6776,6827,6900,6988,7059,7134,7205,7241,7261,
+7241,7193,7090,7015,7000,7031,7031,7022,7027,7035,7029,7025,6994,6948,6897,6881,6874,6867,6885,6879,
+6904,6943,6984,7017,7066,7136,7193,7271,7378,7469,7491,7425,7333,7297,7320,7391,7398,7336,7304,7224,
+7166,7138,7135,7173,7132,7086,7031,6870,6709,6567,6456,6540,6783,6997,7037,6990,6900,6803,6660,6568,
+6499,6456,6499,6507,6476,6421,6219,6071,5970,5833,5781,5900,6091,6239,6230,6072,5694,5551,5541,5482,
+5437,5353,5342,5292,5243,5207,5260,5279,5329,5461,5614,5688,5793,5816,5872,5873,5890,5892,5823,5816,
+5805,5789,5763,5705,5665,5639,5528,5481,5331,5258,5181,5020,5013,5108,5140,5120,5053,4937,4813,4735,
+4689,4658,4633,4598,4551,4513,4478,4440,4390,4287,4179,4157,4130,4094,4042,3991,3978,4001,4001,3968,
+3925,3922,3938,3955,3996,3949,3887,3831,3832,3771,3671,3569,3476,3394,3336,3274,3255,3321,3269,3177,
+3130,3097,3069,3037,2990,2958,2901,2857,2815,2813,2790,2776,2777,2745,2726,2708,2675,2645,2601,2545,
+2512,2481,2332,2275,2221,2191,2163,2134,2099,2056,2005,1958,1918,1869,1836,1777,1749,1674,1646,1641,
+1637,1734,1745,1628,1500,1471,1493,1499,1504,1481,1462,1513,1508,1506,1520,1525,1505,1490,1440,1382,
+1301,1221,1199,1153,1120,1093,1077,1037,977,931,899,852,826,810,811,811,804,796,781,764,
+738,701,668,640,623,612,604,601,594,580,566,546,522,497,481,465,476,482,445,451,
+445,437,445,438,412,369,358,302,264,229,242,239,217,178,145,126,108,88,62,31,
+-1,-28,-52,-74,-102,-133,-173,-191,-207,-221,-234,-248,-271,-297,-305,-309,-313,-320,-328,-340,
+-343,-347,-352,-366,-370,-379,-390,-398,-359,-360,-360,-368,-384,-389,-415,-438,-462,-463,-459,-466,
+-501,-542,-570,-597,-623,-653,-683,-705,-729,-737,-749,-759,-767,-773,-782,-793,-797,-810,-823,-833,
+-844,-855,-861,-875,-882,-896,-902,-903,-909,-914,-924,-926,-930,-936,-937,-937,-944,-949,-954,-954,
+-957,-964,-968,-966,-962,-969,-972,-976,-975,-971,-962,-959,-962,-955,-939,-944,-949,-953,-955,-957,
+-968,-962,-964,-973,-970,-965,-971,-971,-974,-978,-969,-955,-950,-936,-923,-921,-914,-903,-886,-872,
+-865,-860,-847,-828,-813,-797,-782,-766,-756,-744,-733,-723,-713,-706,-699,-694,-691,-687,-686,-683,
+-676,-674,-669,-663,-661,-659,-661,-663,-673,-675,-679,-686,-692,-694,-699,-710,-714,-723,-731,-741,
+-756,-769,-783,-801,-819,-836,-861,-895,-926,-935,-934,-954,-983,-994,-1005,-1009,-1021,-1029,-1035,-1040,
+-1037,-1034,-1042,-1030,-1044,-1052,-1064,-1068,-1075,-1077,-1075,-1077,-1077,-1075,-1079,-1078,-1072,-1070,-1067,-1059,
+-1054,-1048,-1039,-1037,-1048,-1043,-1033,-1027,-1006,-993,-990,-985,-989,-990,-986,-981,-977,-964,-951,-944,
+-928,-913,-903,-894,-865,-852,-834,-809,-784,-763,-737,-714,-688,-663,-642,-623,-604,-582,-557,-532,
+-506,-477,-451,-422,-392,-361,-324,-285,-247,-209,-171,-132,-87,-34,17,68,103,139,178,220,
+233,242,231,191,117,8,-121,-156,10,238,488,853,1229,1542,1880,2200,2497,2730,2933,2946,
+2921,2988,3096,2910,2827,2838,2838,2885,2921,2906,2825,2806,2814,2805,2807,2769,2735,2719,2701,2701,
+2741,2806,2868,2905,2926,2950,2960,2949,2912,2863,2809,2805,2814,2813,2798,2778,2773,2779,2777,2756,
+2709,2642,2560,2470,2377,2277,2187,2118,2077,2058,2048,1964,1870,1793,1708,1615,1507,1414,1337,1268,
+1145,1020,899,791,695,628,541,420,304,197,75,-51,-156,-244,-335,-414,-465,-517,-601,-724,
+-874,-1025,-1110,-1131,-1104,-1093,-1098,-1100,-1105,-1128,-1161,-1196,-1220,-1214,-1238,-1254,-1268,-1307,-1368,-1444,
+-1537,-1638,-1727,-1804,-1855,-1882,-1884,-1860,-1805,-1737,-1656,-1620,-1621,-1630,-1656,-1707,-1719,-1715,-1698,-1686,
+-1655,-1640,-1628,-1649,-1678,-1714,-1749,-1774,-1769,-1704,-1662,-1676,-1686,-1671,-1623,-1568,-1582,-1543,-1457,-1364,
+-1274,-1268,-1235,-1226,-1244,-1228,-1237,-1255,-1280,-1335,-1453,-1516,-1354,-1087,-991,-971,-1048,-1034,-956,-950,
+-986,-1043,-1108,-1156,-1162,-1146,-1122,-1104,-1100,-1100,-1098,-1085,-1065,-1048,-1021,-1005,-999,-994,-993,-989,
+-981,-971,-961,-948,-927,-905,-893,-886,-873,-857,-845,-829,-800,-791,-784,-780,-766,-765,-758,-738,
+-722,-691,-659,-648,-621,-594,-563,-526,-500,-473,-441,-393,-356,-309,-272,-233,-188,-131,-82,-30,
+13,55,101,150,200,248,303,367,406,443,487,533,555,594,629,654,690,727,759,791,
+812,859,883,926,960,978,1002,1033,1048,1067,1110,1158,1191,1180,1205,1193,1181,1170,1167,1165,
+1161,1157,1145,1121,1123,1121,1134,1145,1143,1156,1177,1196,1214,1227,1232,1241,1251,1261,1307,1282,
+1289,1276,1286,1281,1294,1281,1296,1281,1253,1276,1257,1240,1227,1210,1211,1206,1185,1171,1148,1134,
+1143,1169,1260,1268,1165,1102,1107,1094,1093,1094,1094,1095,1090,1085,1081,1078,1075,1072,1075,1076,
+1077,1074,1072,1073,1079,1088,1099,1114,1132,1151,1166,1183,1199,1218,1233,1247,1270,1294,1315,1338,
+1353,1374,1400,1425,1451,1482,1506,1517,1522,1532,1544,1566,1595,1636,1656,1702,1752,1796,1853,1882,
+1947,1984,1941,1941,2001,2068,2062,2076,2063,2080,2064,2024,1922,1789,1654,1513,1388,1296,1243,1201,
+1144,1090,1043,988,922,867,806,742,679,627,579,529,484,444,406,360,308,252,177,92,
+26,-9,-9,5,11,22,22,2,-79,-156,-199,-219,-271,-342,-381,-404,-431,-480,-565,-685,
+-810,-862,-873,-876,-888,-919,-918,-916,-937,-981,-1009,-1033,-1049,-1108,-1235,-1379,-1527,-1632,-1628,-1451,
+-1374,-1367,-1428,-1680,-1836,-1824,-1695,-1775,-1865,-1904,-1966,-2053,-2140,-2218,-2227,-2246,-2256,-2281,-2331,-2377,
+-2396,-2404,-2386,-2363,-2336,-2361,-2366,-2361,-2386,-2464,-2644,-2830,-2791,-2692,-2673,-2710,-2761,-2799,-2777,-2667,
+-2660,-2772,-2831,-2871,-2909,-2937,-2963,-3000,-3045,-3071,-3080,-3089,-3086,-3065,-3014,-2924,-2987,-3031,-3031,-3029,
+-3007,-2951,-2906,-2935,-2887,-2866,-2848,-2926,-2921,-2987,-3059,-3052,-3011,-2985,-2994,-3012,-3021,-3054,-3083,-3112,
+-3118,-3121,-3117,-3118,-3125,-3118,-3149,-3167,-3176,-3199,-3240,-3269,-3291,-3303,-3331,-3369,-3413,-3460,-3500,-3545,
+-3582,-3593,-3631,-3685,-3742,-3789,-3798,-3771,-3614,-3528,-3535,-3554,-3576,-3609,-3669,-3789,-3969,-4071,-4136,-4203,
+-4262,-4313,-4369,-4430,-4506,-4537,-4566,-4587,-4582,-4597,-4635,-4709,-4767,-4790,-4880,-4921,-4978,-5032,-5106,-5156,
+-5239,-5296,-5366,-5439,-5493,-5514,-5550,-5574,-5612,-5678,-5728,-5795,-5899,-5974,-6056,-6138,-6267,-6307,-6373,-6446,
+-6506,-6546,-6575,-6615,-6655,-6694,-6741,-6782,-6824,-6865,-6902,-6943,-6982,-7016,-7040,-7059,-7072,-7080,-7090,-7095,
+-7092,-7091,-7101,-7108,-7094,-7087,-7078,-7070,-7052,-7045,-7058,-7073,-7089,-7104,-7121,-7110,-7101,-7087,-7065,-7039,
+-7005,-6955,-6904,-6865,-6936,-6922,-6931,-6964,-6971,-6954,-6938,-6900,-6836,-6765,-6725,-6752,-6768,-6728,-6624,-6477,
+-6292,-6180,-6205,-6296,-6382,-6406,-6405,-6354,-6194,-6013,-5903,-5837,-5787,-5723,-5705,-5676,-5629,-5586,-5493,-5418,
+-5342,-5250,-5148,-5051,-4971,-4888,-4783,-4700,-4608,-4490,-4343,-4186,-4027,-3935,-3900,-3889,-3854,-3797,-3689,-3555,
+-3553,-3468,-3337,-3148,-3153,-3037,-2939,-2864,-2772,-2690,-2637,-2555,-2483,-2391,-2274,-2177,-2090,-2000,-1896,-1807,
+-1748,-1612,-1382,-1210,-1123,-1018,-898,-903,-899,-916,-965,-953,-883,-832,-778,-713,-638,-571,-515,-456,
+-385,-320,-259,-179,-92,-3,66,134,208,266,335,413,496,567,628,695,713,693,659,578,
+528,512,517,562,620,654,681,757,819,894,982,1072,1144,1205,1263,1311,1367,1422,1478,1543,
+1616,1712,1750,1788,1870,2014,2220,2393,2485,2594,2696,2769,2816,2861,2877,2906,2976,3034,3066,3112,
+3165,3230,3327,3469,3622,3690,3740,3831,3963,4084,4191,4295,4402,4493,4567,4621,4655,4688,4742,4791,
+4819,4832,4852,4890,4953,5049,5187,5293,5358,5408,5460,5535,5596,5648,5704,5750,5783,5820,5863,5893,
+5869,5849,5841,5846,5881,5929,5984,6042,6089,6134,6125,6125,6149,6188,6222,6248,6275,6324,6375,6421,
+6473,6522,6551,6512,6541,6573,6595,6605,6592,6589,6598,6639,6702,6762,6837,6933,7006,7074,7130,7172,
+7175,7176,7140,7024,6940,6912,6944,6970,6981,6992,7024,7022,6992,6957,6917,6874,6845,6833,6822,6828,
+6825,6813,6835,6859,6883,6920,6962,6997,7013,7061,7150,7244,7278,7284,7302,7337,7369,7359,7357,7325,
+7255,7220,7201,7143,7032,6982,6870,6724,6590,6469,6400,6490,6688,6861,6943,6927,6858,6772,6681,6575,
+6509,6453,6398,6479,6620,6620,6490,6323,6192,6103,5993,5870,5794,5800,5734,5683,5554,5366,5286,5361,
+5472,5504,5525,5532,5560,5430,5222,5037,4950,4935,5156,5475,5708,5767,5846,5891,5932,5941,5947,5912,
+5913,5886,5877,5840,5791,5804,5785,5649,5643,5508,5364,5251,5191,5114,5111,5125,5125,5134,5052,4952,
+4875,4839,4815,4811,4756,4723,4710,4686,4680,4645,4488,4342,4293,4255,4207,4144,4128,4175,4266,4356,
+4254,4097,3982,3982,4091,3966,3877,3923,3981,3997,3943,3822,3703,3620,3530,3445,3345,3291,3315,3298,
+3214,3171,3129,3101,3059,3018,2964,2914,2868,2832,2815,2806,2791,2769,2748,2729,2713,2691,2659,2624,
+2574,2539,2474,2383,2324,2252,2232,2202,2152,2109,2061,1999,1932,1889,1868,1813,1766,1724,1675,1650,
+1632,1618,1641,1660,1605,1528,1499,1500,1480,1472,1460,1439,1469,1488,1487,1503,1501,1500,1491,1453,
+1385,1306,1236,1210,1164,1121,1088,1061,1027,972,921,890,867,852,806,796,794,797,791,773,
+753,727,698,666,634,607,597,586,577,564,552,544,531,508,483,453,433,471,523,476,
+405,399,396,398,393,376,338,295,265,260,267,204,189,180,155,126,106,84,62,30,
+-4,-36,-67,-84,-103,-130,-157,-196,-223,-243,-254,-267,-274,-287,-305,-324,-337,-349,-364,-366,
+-365,-372,-379,-386,-401,-406,-413,-434,-422,-436,-455,-444,-440,-436,-428,-419,-415,-455,-492,-512,
+-537,-564,-600,-625,-643,-659,-682,-698,-715,-725,-745,-762,-776,-785,-792,-798,-805,-807,-823,-839,
+-844,-846,-848,-860,-876,-881,-892,-901,-904,-911,-914,-919,-919,-921,-925,-929,-930,-937,-943,-948,
+-949,-944,-934,-940,-946,-945,-957,-964,-965,-963,-956,-950,-945,-936,-937,-925,-931,-923,-924,-942,
+-943,-933,-938,-938,-950,-950,-953,-951,-949,-960,-954,-945,-938,-925,-913,-903,-892,-882,-866,-844,
+-849,-828,-814,-804,-794,-782,-768,-750,-735,-722,-713,-707,-699,-691,-685,-671,-665,-664,-653,-650,
+-650,-645,-641,-642,-632,-630,-630,-632,-630,-642,-648,-648,-658,-667,-675,-676,-688,-693,-702,-707,
+-717,-729,-744,-761,-780,-792,-813,-829,-852,-876,-899,-912,-930,-942,-951,-969,-985,-997,-1009,-1010,
+-1002,-1007,-1011,-1019,-1031,-1033,-1035,-1039,-1039,-1045,-1049,-1046,-1047,-1044,-1046,-1048,-1046,-1046,-1046,-1037,
+-1031,-1024,-1025,-1018,-1023,-1040,-1008,-1024,-1000,-974,-971,-974,-970,-970,-966,-962,-957,-951,-948,-926,
+-910,-910,-888,-869,-862,-843,-833,-811,-786,-761,-738,-715,-694,-672,-646,-627,-607,-587,-569,-544,
+-524,-499,-472,-445,-413,-379,-348,-313,-279,-244,-210,-175,-134,-85,-31,10,52,90,152,212,
+242,271,277,267,251,197,117,4,-98,-39,173,414,705,1121,1459,1797,2132,2407,2713,2938,
+3011,3012,3056,3112,2987,2977,3143,3102,3082,3077,3080,3000,2963,2931,2887,2888,2866,2824,2797,2768,
+2734,2745,2801,2860,2889,2917,2950,2981,2979,2942,2891,2854,2844,2842,2836,2827,2828,2843,2868,2885,
+2867,2793,2687,2565,2464,2387,2303,2215,2151,2106,2073,2039,1979,1906,1853,1789,1709,1611,1518,1446,
+1379,1257,1115,1024,917,822,721,629,500,390,310,251,160,34,-74,-187,-287,-379,-459,-585,
+-719,-879,-1021,-1117,-1141,-1119,-1102,-1096,-1084,-1094,-1123,-1147,-1147,-1156,-1172,-1216,-1242,-1256,-1293,-1351,
+-1435,-1536,-1623,-1707,-1793,-1859,-1890,-1883,-1845,-1778,-1701,-1639,-1600,-1600,-1617,-1622,-1637,-1665,-1684,-1673,
+-1652,-1657,-1645,-1651,-1667,-1694,-1735,-1773,-1806,-1805,-1768,-1717,-1683,-1676,-1644,-1551,-1507,-1536,-1492,-1401,
+-1301,-1213,-1206,-1197,-1222,-1216,-1192,-1204,-1226,-1260,-1313,-1419,-1504,-1381,-1130,-992,-994,-1065,-1091,-1054,
+-1046,-1090,-1127,-1167,-1198,-1189,-1166,-1134,-1108,-1094,-1079,-1067,-1058,-1037,-1024,-1013,-999,-987,-981,-977,
+-973,-966,-958,-947,-933,-917,-899,-887,-880,-869,-856,-842,-832,-809,-790,-777,-774,-762,-763,-754,
+-737,-727,-701,-676,-633,-607,-576,-561,-530,-489,-450,-440,-402,-366,-330,-290,-250,-203,-155,-102,
+-52,-3,46,90,124,169,226,282,324,364,413,451,491,522,569,613,645,678,707,744,
+766,796,841,866,907,942,965,991,1008,1027,1050,1071,1103,1151,1128,1172,1147,1124,1101,1101,
+1109,1110,1104,1102,1086,1077,1092,1113,1144,1158,1160,1171,1172,1191,1193,1206,1217,1221,1241,1271,
+1272,1265,1296,1284,1282,1298,1299,1361,1265,1254,1271,1243,1249,1232,1229,1210,1199,1175,1154,1162,
+1166,1214,1200,1327,1326,1181,1107,1119,1108,1107,1106,1105,1103,1099,1093,1089,1087,1082,1083,1084,
+1089,1090,1092,1095,1100,1105,1113,1125,1140,1156,1171,1190,1204,1221,1239,1256,1273,1296,1321,1345,
+1371,1389,1409,1439,1469,1487,1514,1539,1564,1579,1588,1599,1609,1620,1642,1660,1698,1754,1806,1897,
+1969,2091,2063,2039,2050,2068,2128,2131,2119,2091,2102,2130,2069,1984,1908,1794,1636,1501,1400,1324,
+1259,1200,1159,1111,1048,984,930,870,804,741,685,637,587,538,497,456,410,356,300,226,
+141,78,49,74,80,72,72,48,-7,-90,-156,-181,-203,-247,-312,-330,-348,-385,-454,-566,
+-698,-791,-800,-807,-827,-852,-897,-905,-903,-930,-966,-994,-1008,-1019,-1102,-1258,-1423,-1580,-1656,-1568,
+-1419,-1369,-1370,-1492,-1742,-1893,-1912,-1773,-1753,-1812,-1859,-1955,-2062,-2158,-2242,-2272,-2273,-2268,-2282,-2321,
+-2377,-2405,-2391,-2363,-2314,-2259,-2322,-2370,-2390,-2425,-2481,-2646,-2775,-2710,-2657,-2656,-2704,-2741,-2749,-2672,
+-2415,-2432,-2634,-2737,-2792,-2840,-2876,-2910,-2942,-2983,-3012,-3031,-3037,-3031,-3002,-2948,-2758,-2788,-2942,-2943,
+-2929,-2905,-2862,-2829,-2804,-2722,-2788,-2774,-2824,-2889,-2955,-2964,-2985,-2956,-2950,-2956,-2963,-3007,-3020,-3047,
+-3059,-3056,-3055,-3043,-3066,-3051,-3057,-3074,-3108,-3106,-3130,-3189,-3219,-3234,-3251,-3285,-3323,-3366,-3410,-3452,
+-3499,-3536,-3551,-3558,-3609,-3674,-3734,-3761,-3765,-3701,-3531,-3491,-3501,-3511,-3545,-3606,-3717,-3907,-3998,-4060,
+-4120,-4167,-4229,-4308,-4370,-4377,-4425,-4449,-4448,-4479,-4536,-4548,-4598,-4695,-4715,-4750,-4815,-4877,-4932,-5007,
+-5069,-5136,-5196,-5278,-5317,-5354,-5405,-5449,-5483,-5535,-5582,-5645,-5711,-5808,-5880,-5972,-6055,-6145,-6235,-6278,
+-6328,-6388,-6425,-6463,-6510,-6551,-6592,-6639,-6680,-6725,-6767,-6808,-6852,-6888,-6918,-6943,-6963,-6975,-6988,-6997,
+-6998,-7000,-6999,-7012,-7014,-7003,-6997,-6988,-6975,-6959,-6960,-6981,-7002,-7020,-7039,-7042,-7031,-7012,-6990,-6970,
+-6951,-6909,-6862,-6826,-6851,-6913,-6916,-6932,-6950,-6957,-6957,-6938,-6873,-6791,-6727,-6723,-6746,-6725,-6662,-6558,
+-6433,-6250,-6152,-6178,-6268,-6364,-6384,-6362,-6279,-6129,-5945,-5818,-5780,-5766,-5743,-5749,-5729,-5682,-5622,-5521,
+-5429,-5358,-5276,-5163,-5076,-5004,-4906,-4791,-4687,-4594,-4461,-4320,-4208,-4085,-3969,-3898,-3868,-3828,-3799,-3722,
+-3594,-3618,-3525,-3419,-3330,-3288,-3203,-3082,-2997,-2877,-2779,-2690,-2588,-2519,-2430,-2312,-2207,-2127,-2054,-1952,
+-1855,-1793,-1667,-1480,-1213,-1188,-1146,-940,-1015,-1041,-1063,-1081,-1039,-986,-918,-788,-760,-686,-599,-535,
+-477,-389,-322,-241,-148,-64,15,97,153,221,281,353,443,534,606,657,696,728,748,734,
+679,651,637,661,723,796,852,867,908,954,1015,1092,1169,1228,1270,1321,1375,1439,1511,1587,
+1673,1775,1865,1916,1956,2029,2099,2189,2300,2402,2498,2599,2696,2794,2836,2864,2926,3023,3159,3253,
+3328,3397,3449,3522,3621,3710,3742,3781,3882,3986,4084,4178,4277,4367,4442,4506,4539,4564,4606,4667,
+4719,4734,4745,4768,4810,4872,4952,5100,5243,5317,5361,5386,5449,5508,5531,5567,5648,5695,5746,5805,
+5816,5817,5798,5786,5797,5836,5898,5965,6032,6076,6105,6081,6095,6111,6140,6187,6213,6238,6288,6348,
+6401,6436,6447,6446,6424,6445,6479,6503,6528,6527,6516,6538,6562,6621,6693,6770,6855,6930,6991,7060,
+7096,7102,7106,7081,6958,6865,6844,6875,6912,6938,6953,6965,6952,6929,6900,6866,6827,6791,6782,6780,
+6766,6763,6746,6742,6750,6771,6787,6804,6816,6810,6837,6894,6934,6970,6967,6964,6983,7066,7171,7240,
+7238,7222,7176,7140,7145,6960,6788,6669,6482,6381,6388,6476,6624,6764,6854,6886,6867,6795,6716,6637,
+6584,6499,6431,6343,6335,6571,6679,6727,6591,6381,6278,6164,6059,5987,5877,5724,5598,5564,5583,5625,
+5706,5803,5817,5788,5728,5664,5542,5335,5047,4772,4700,4938,5354,5606,5755,5924,5928,5951,5980,6002,
+5967,5947,5956,5956,5917,5891,5955,5881,5804,5700,5648,5551,5491,5422,5352,5251,5159,5114,5065,5048,
+5070,5040,5016,4979,4867,4841,4803,4814,4892,4938,4903,4726,4557,4492,4445,4345,4257,4274,4376,4522,
+4560,4356,4156,4049,4084,4123,4093,4121,4002,4034,3982,4001,3979,3897,3820,3745,3607,3427,3327,3297,
+3280,3238,3196,3168,3134,3096,3047,2998,2946,2893,2864,2854,2831,2804,2779,2754,2730,2718,2692,2668,
+2639,2592,2541,2471,2410,2344,2297,2252,2238,2161,2113,2056,1983,1917,1878,1842,1811,1769,1726,1703,
+1668,1647,1609,1570,1578,1622,1556,1514,1512,1485,1467,1454,1440,1426,1467,1465,1476,1486,1493,1487,
+1451,1396,1322,1271,1207,1145,1107,1076,1045,1014,981,933,895,869,891,801,783,778,776,771,
+761,741,717,697,674,645,613,589,572,549,533,529,524,516,497,467,436,422,500,479,
+501,382,356,356,353,355,350,321,271,216,203,245,158,134,138,124,107,85,59,42,
+17,-19,-61,-103,-132,-156,-180,-198,-209,-253,-270,-291,-300,-300,-302,-315,-333,-351,-366,-388,
+-400,-397,-409,-437,-465,-472,-473,-474,-484,-485,-482,-483,-459,-440,-439,-458,-478,-498,-519,-542,
+-565,-584,-611,-631,-664,-682,-705,-720,-725,-738,-750,-763,-775,-787,-798,-806,-807,-816,-817,-827,
+-843,-852,-855,-854,-860,-868,-880,-894,-902,-906,-915,-922,-923,-924,-925,-926,-926,-924,-930,-935,
+-936,-940,-941,-942,-935,-931,-937,-940,-948,-953,-942,-943,-937,-941,-922,-928,-937,-941,-920,-906,
+-908,-918,-919,-911,-906,-912,-924,-930,-921,-922,-917,-917,-905,-903,-895,-889,-881,-867,-848,-840,
+-841,-814,-786,-776,-764,-756,-748,-733,-718,-705,-693,-687,-681,-675,-665,-660,-650,-644,-638,-632,
+-622,-617,-615,-613,-614,-603,-604,-609,-608,-605,-609,-615,-620,-628,-637,-651,-659,-662,-667,-679,
+-689,-696,-705,-719,-733,-754,-769,-789,-819,-831,-864,-894,-907,-919,-917,-924,-937,-948,-957,-962,
+-971,-971,-969,-978,-1006,-1012,-1009,-1007,-1016,-1042,-1033,-1033,-1024,-1015,-1018,-1020,-1020,-1018,-1015,-1016,
+-1010,-1005,-1002,-1000,-998,-1004,-1018,-1000,-1001,-974,-952,-951,-958,-951,-951,-943,-938,-930,-921,-915,
+-911,-900,-881,-870,-848,-830,-834,-811,-788,-764,-742,-716,-696,-676,-657,-635,-614,-594,-577,-556,
+-533,-507,-483,-461,-438,-405,-369,-334,-306,-271,-238,-208,-171,-127,-83,-45,-11,37,121,180,
+211,241,273,306,321,311,278,218,131,24,-19,131,356,615,981,1371,1705,2014,2334,2638,
+2936,3072,3093,3105,3113,3141,3143,3308,3288,3253,3278,3272,3287,3168,3026,2962,2979,2964,2922,2885,
+2843,2809,2813,2847,2873,2884,2903,2935,2976,2988,2963,2923,2893,2874,2863,2856,2858,2865,2893,2925,
+2951,2941,2870,2742,2594,2485,2414,2344,2259,2192,2147,2114,2075,2018,1967,1917,1877,1815,1726,1641,
+1563,1478,1366,1240,1173,1076,948,824,707,590,533,496,420,360,294,183,51,-82,-203,-322,
+-458,-621,-801,-948,-1044,-1076,-1068,-1056,-1051,-1043,-1048,-1050,-1049,-1061,-1077,-1122,-1182,-1229,-1250,-1271,
+-1303,-1369,-1476,-1592,-1697,-1780,-1840,-1871,-1862,-1811,-1719,-1640,-1585,-1576,-1586,-1610,-1630,-1646,-1684,-1692,
+-1678,-1646,-1641,-1645,-1650,-1660,-1676,-1715,-1758,-1782,-1771,-1754,-1717,-1678,-1658,-1612,-1504,-1446,-1494,-1444,
+-1367,-1274,-1164,-1167,-1197,-1208,-1215,-1181,-1174,-1188,-1209,-1268,-1371,-1449,-1329,-1113,-1019,-1031,-1109,-1197,
+-1153,-1139,-1164,-1186,-1208,-1211,-1204,-1186,-1146,-1129,-1100,-1068,-1052,-1038,-993,-957,-967,-962,-970,-970,
+-964,-957,-955,-946,-934,-925,-911,-897,-884,-877,-868,-856,-842,-829,-811,-792,-780,-772,-762,-757,
+-748,-731,-723,-703,-678,-650,-637,-591,-576,-535,-500,-453,-437,-401,-365,-339,-305,-265,-220,-177,
+-124,-73,-33,18,71,102,147,198,257,306,336,392,420,465,498,543,579,602,653,676,
+715,751,778,818,849,886,916,941,967,978,1000,1025,1053,1094,1091,1022,1032,1042,1055,1066,
+1073,1072,1080,1075,1080,1080,1093,1105,1113,1124,1142,1145,1165,1164,1180,1183,1195,1200,1215,1233,
+1247,1258,1288,1286,1277,1317,1414,1337,1282,1253,1270,1279,1260,1252,1250,1262,1206,1197,1176,1160,
+1163,1201,1307,1188,1177,1164,1132,1119,1117,1115,1109,1108,1108,1106,1104,1102,1099,1100,1100,1101,
+1104,1105,1106,1109,1115,1123,1133,1142,1153,1167,1178,1192,1211,1231,1249,1263,1278,1300,1323,1345,
+1372,1392,1416,1438,1465,1493,1516,1540,1567,1597,1622,1630,1637,1640,1647,1676,1700,1720,1763,1800,
+1875,1988,2081,2084,2048,2116,2094,2175,2212,2175,2144,2156,2173,2135,2080,2018,1920,1772,1622,1517,
+1421,1341,1270,1219,1176,1112,1052,994,935,866,809,746,689,629,574,531,492,446,389,328,
+253,172,117,92,106,110,84,78,30,-46,-110,-150,-166,-187,-225,-280,-303,-329,-377,-455,
+-569,-675,-751,-753,-769,-785,-823,-861,-879,-882,-900,-948,-992,-986,-1019,-1147,-1330,-1491,-1628,-1616,
+-1466,-1388,-1359,-1352,-1578,-1831,-1947,-1964,-1825,-1770,-1759,-1812,-1948,-2088,-2176,-2243,-2288,-2306,-2295,-2287,
+-2319,-2367,-2382,-2354,-2321,-2299,-2285,-2277,-2346,-2388,-2436,-2518,-2654,-2717,-2660,-2639,-2667,-2712,-2744,-2717,
+-2557,-2251,-2235,-2519,-2651,-2693,-2736,-2782,-2827,-2876,-2917,-2946,-2960,-2960,-2952,-2940,-2916,-2867,-2850,-2820,
+-2792,-2787,-2752,-2703,-2685,-2601,-2623,-2690,-2703,-2753,-2818,-2884,-2925,-2918,-2906,-2895,-2896,-2924,-2951,-2960,
+-2984,-3000,-3004,-3001,-3015,-3013,-3012,-3008,-3020,-3048,-3050,-3087,-3134,-3165,-3177,-3194,-3229,-3274,-3318,-3359,
+-3397,-3430,-3474,-3505,-3498,-3529,-3596,-3658,-3689,-3696,-3664,-3554,-3458,-3447,-3450,-3483,-3579,-3767,-3847,-3918,
+-3987,-4044,-4119,-4172,-4211,-4244,-4283,-4281,-4314,-4372,-4432,-4424,-4442,-4501,-4561,-4618,-4668,-4725,-4767,-4866,
+-4901,-4965,-5048,-5120,-5171,-5225,-5267,-5300,-5350,-5390,-5443,-5495,-5560,-5636,-5719,-5807,-5890,-5958,-6041,-6127,
+-6171,-6223,-6281,-6321,-6357,-6406,-6448,-6488,-6534,-6576,-6622,-6670,-6711,-6755,-6793,-6821,-6846,-6871,-6883,-6894,
+-6903,-6904,-6904,-6907,-6922,-6916,-6912,-6907,-6894,-6879,-6876,-6888,-6910,-6936,-6953,-6953,-6946,-6936,-6915,-6890,
+-6885,-6870,-6771,-6768,-6773,-6858,-6871,-6889,-6921,-6938,-6942,-6932,-6885,-6809,-6728,-6695,-6713,-6746,-6714,-6615,
+-6498,-6379,-6204,-6115,-6158,-6247,-6344,-6348,-6296,-6210,-6082,-5939,-5820,-5809,-5792,-5784,-5795,-5775,-5723,-5644,
+-5542,-5451,-5382,-5308,-5207,-5109,-5008,-4917,-4803,-4667,-4574,-4462,-4333,-4264,-4114,-3900,-3880,-3876,-3827,-3806,
+-3738,-3627,-3674,-3588,-3488,-3422,-3352,-3283,-3214,-3139,-3015,-2890,-2742,-2584,-2556,-2438,-2316,-2243,-2164,-2102,
+-2019,-1849,-1809,-1699,-1610,-1428,-1405,-1311,-1197,-1139,-1167,-1173,-1173,-1142,-1031,-930,-746,-774,-751,-656,
+-573,-496,-424,-342,-254,-159,-75,15,75,143,210,273,357,448,532,606,636,651,697,735,
+717,699,686,700,739,789,863,914,960,1037,1098,1147,1224,1297,1344,1376,1428,1476,1534,1595,
+1666,1756,1856,1941,1997,2056,2134,2229,2287,2287,2339,2433,2530,2639,2739,2797,2879,3034,3164,3308,
+3408,3496,3539,3567,3617,3680,3733,3771,3851,3935,4008,4076,4158,4242,4311,4373,4424,4458,4493,4535,
+4589,4636,4655,4663,4693,4732,4788,4865,5007,5174,5269,5309,5321,5357,5394,5439,5501,5558,5632,5698,
+5753,5776,5779,5758,5748,5753,5792,5861,5942,6019,6073,6098,6075,6068,6077,6099,6132,6177,6222,6273,
+6322,6369,6370,6348,6354,6378,6392,6389,6408,6442,6459,6470,6488,6493,6552,6630,6708,6783,6864,6934,
+6994,7013,7035,7035,7003,6858,6743,6745,6800,6839,6858,6881,6893,6879,6853,6811,6784,6767,6744,6723,
+6702,6675,6661,6648,6641,6656,6650,6649,6659,6660,6656,6670,6699,6718,6739,6741,6740,6748,6768,6809,
+6915,7011,7024,7045,6983,6927,6780,6604,6479,6392,6413,6499,6613,6720,6797,6843,6854,6856,6788,6732,
+6660,6606,6533,6464,6356,6281,6431,6645,6733,6740,6648,6464,6312,6215,6160,6072,5975,5887,5853,5904,
+5904,5893,5932,5951,5896,5817,5734,5626,5436,5157,4766,4521,4709,5195,5524,5735,5960,5968,5989,6043,
+6053,6032,6037,6015,6015,5983,5941,5947,5903,5844,5785,5736,5709,5625,5570,5524,5522,5472,5312,5170,
+5071,5155,5239,5253,5206,4983,4838,4787,4809,4883,4964,4882,4891,4820,4727,4669,4494,4383,4381,4454,
+4550,4601,4499,4282,4138,4165,4144,4125,4221,4331,4161,4020,4034,4064,4080,4102,3950,3753,3483,3390,
+3346,3320,3301,3267,3244,3211,3161,3102,3041,2994,2955,2927,2913,2881,2830,2784,2751,2728,2709,2696,
+2669,2635,2590,2538,2479,2423,2366,2317,2270,2220,2167,2115,2054,1982,1908,1865,1838,1815,1772,1722,
+1692,1679,1657,1608,1554,1548,1551,1536,1511,1512,1510,1478,1447,1442,1430,1442,1437,1457,1486,1492,
+1475,1446,1400,1336,1295,1204,1132,1100,1095,1037,1009,981,940,902,858,821,792,772,765,759,
+758,744,726,707,694,676,647,615,587,564,542,522,510,505,495,479,451,418,396,382,
+368,355,354,317,317,317,322,320,297,261,209,164,138,112,110,98,87,81,66,45,
+28,-2,-41,-84,-133,-163,-183,-207,-226,-249,-282,-302,-318,-328,-335,-335,-340,-350,-368,-389,
+-414,-431,-435,-439,-452,-441,-489,-496,-502,-486,-460,-453,-464,-464,-473,-485,-498,-518,-541,-558,
+-577,-598,-612,-632,-653,-674,-698,-718,-736,-754,-767,-780,-791,-795,-803,-813,-821,-826,-834,-832,
+-837,-843,-850,-853,-851,-855,-863,-874,-884,-897,-903,-910,-915,-916,-918,-920,-923,-931,-933,-937,
+-938,-933,-935,-934,-938,-933,-930,-937,-927,-932,-932,-926,-928,-928,-934,-930,-927,-918,-916,-915,
+-895,-895,-902,-899,-890,-887,-892,-899,-894,-888,-886,-880,-884,-879,-869,-863,-858,-843,-835,-816,
+-805,-799,-778,-757,-740,-731,-719,-709,-695,-687,-677,-668,-658,-649,-642,-635,-629,-621,-611,-604,
+-603,-596,-592,-587,-585,-581,-577,-579,-586,-590,-586,-588,-589,-594,-599,-611,-623,-632,-636,-640,
+-650,-662,-671,-679,-694,-706,-729,-746,-767,-789,-810,-842,-863,-892,-881,-904,-912,-919,-926,-927,
+-936,-941,-941,-934,-960,-970,-990,-989,-986,-990,-1005,-1005,-1002,-1000,-999,-997,-1002,-1003,-999,-994,
+-986,-980,-978,-976,-972,-967,-973,-987,-981,-971,-959,-941,-935,-934,-930,-924,-918,-915,-908,-898,
+-890,-877,-869,-863,-854,-832,-816,-815,-793,-770,-749,-726,-697,-681,-661,-644,-626,-608,-590,-570,
+-548,-520,-493,-472,-450,-421,-393,-365,-333,-304,-273,-234,-199,-167,-135,-109,-68,-6,64,116,
+156,193,240,294,340,361,364,343,304,241,156,70,106,302,549,814,1195,1562,1885,2236,
+2607,2968,3141,3125,3135,3158,3205,3348,3407,3401,3455,3414,3307,3404,3357,3146,3053,3078,3098,3067,
+3028,2983,2920,2892,2895,2883,2864,2860,2889,2926,2950,2952,2938,2919,2901,2887,2884,2908,2932,2949,
+2970,2990,2992,2926,2795,2646,2536,2475,2408,2325,2254,2207,2166,2129,2073,2012,1973,1939,1893,1828,
+1744,1672,1590,1498,1410,1312,1212,1063,928,785,670,642,624,524,516,585,428,257,98,-14,
+-131,-259,-420,-615,-781,-895,-932,-948,-946,-945,-938,-926,-924,-945,-970,-994,-1058,-1139,-1201,-1210,
+-1202,-1224,-1290,-1402,-1532,-1646,-1733,-1793,-1816,-1803,-1741,-1643,-1558,-1522,-1538,-1570,-1612,-1648,-1687,-1731,
+-1741,-1711,-1677,-1630,-1630,-1630,-1624,-1634,-1642,-1700,-1723,-1718,-1707,-1695,-1661,-1635,-1595,-1519,-1442,-1423,
+-1405,-1338,-1242,-1163,-1171,-1189,-1209,-1217,-1191,-1167,-1163,-1169,-1201,-1291,-1352,-1220,-1067,-1042,-1059,-1177,
+-1221,-1181,-1195,-1209,-1216,-1224,-1218,-1203,-1200,-1169,-1120,-1088,-1074,-1049,-1028,-992,-923,-856,-873,-914,
+-943,-942,-929,-932,-925,-924,-915,-907,-896,-884,-875,-865,-858,-843,-826,-812,-792,-781,-770,-762,
+-751,-744,-722,-723,-702,-675,-633,-601,-620,-569,-539,-512,-478,-446,-408,-369,-335,-308,-269,-230,
+-193,-146,-94,-55,-9,47,86,128,176,224,266,316,365,405,441,478,519,569,615,641,
+671,697,714,747,784,818,852,877,897,917,917,948,999,1012,1021,1026,1026,1023,1036,1042,
+1046,1056,1063,1070,1069,1074,1074,1082,1085,1083,1086,1111,1110,1133,1159,1167,1178,1197,1198,1215,
+1224,1255,1261,1280,1263,1272,1317,1392,1319,1287,1287,1274,1276,1266,1255,1263,1247,1223,1201,1167,
+1162,1189,1178,1180,1151,1135,1128,1131,1117,1131,1127,1123,1117,1114,1115,1117,1117,1117,1119,1121,
+1121,1124,1129,1135,1140,1141,1147,1157,1165,1172,1182,1195,1211,1227,1245,1263,1283,1305,1323,1348,
+1367,1392,1410,1430,1454,1481,1508,1534,1558,1585,1615,1643,1663,1664,1666,1685,1720,1726,1757,1793,
+1841,1924,2012,2090,2102,2077,2155,2131,2199,2259,2225,2202,2214,2213,2187,2155,2100,1996,1863,1734,
+1614,1520,1421,1339,1283,1235,1171,1111,1061,1005,942,868,798,729,658,593,549,508,457,397,
+335,270,207,161,135,131,106,84,56,-6,-78,-120,-142,-149,-172,-212,-250,-285,-326,-376,
+-471,-564,-650,-709,-725,-730,-747,-786,-824,-841,-852,-876,-944,-978,-995,-1062,-1260,-1413,-1551,-1618,
+-1514,-1400,-1359,-1354,-1393,-1650,-1880,-1994,-1995,-1859,-1749,-1714,-1776,-1946,-2094,-2159,-2210,-2253,-2269,-2262,
+-2250,-2288,-2327,-2335,-2302,-2283,-2278,-2275,-2284,-2296,-2348,-2416,-2539,-2642,-2676,-2645,-2669,-2704,-2744,-2777,
+-2735,-2625,-2464,-2319,-2451,-2535,-2498,-2475,-2626,-2715,-2774,-2827,-2864,-2867,-2832,-2815,-2841,-2873,-2861,-2757,
+-2573,-2488,-2543,-2524,-2465,-2431,-2378,-2469,-2554,-2617,-2679,-2745,-2807,-2839,-2855,-2851,-2851,-2854,-2869,-2895,
+-2926,-2944,-2962,-2969,-2973,-2984,-2993,-2988,-2979,-2983,-2975,-3011,-3031,-3078,-3108,-3106,-3136,-3166,-3215,-3253,
+-3286,-3315,-3346,-3393,-3429,-3462,-3475,-3515,-3577,-3606,-3606,-3584,-3519,-3416,-3390,-3401,-3461,-3612,-3718,-3804,
+-3873,-3931,-3982,-4028,-4045,-4111,-4137,-4145,-4184,-4232,-4284,-4315,-4342,-4352,-4396,-4449,-4503,-4559,-4610,-4700,
+-4762,-4814,-4885,-4972,-5005,-5034,-5096,-5149,-5200,-5259,-5308,-5360,-5417,-5478,-5556,-5642,-5731,-5807,-5881,-5955,
+-6023,-6063,-6115,-6177,-6219,-6260,-6299,-6342,-6387,-6433,-6477,-6520,-6567,-6610,-6655,-6694,-6726,-6749,-6777,-6791,
+-6799,-6806,-6812,-6809,-6809,-6826,-6824,-6818,-6813,-6799,-6786,-6798,-6816,-6838,-6850,-6852,-6858,-6849,-6842,-6816,
+-6796,-6781,-6790,-6745,-6719,-6734,-6811,-6824,-6863,-6902,-6916,-6907,-6876,-6815,-6744,-6678,-6660,-6698,-6724,-6694,
+-6581,-6458,-6331,-6170,-6105,-6136,-6245,-6321,-6306,-6250,-6170,-6070,-5962,-5888,-5879,-5838,-5822,-5830,-5805,-5738,
+-5659,-5566,-5477,-5407,-5325,-5235,-5128,-5009,-4905,-4803,-4660,-4570,-4476,-4368,-4296,-4163,-3875,-3861,-3933,-3890,
+-3851,-3777,-3681,-3736,-3649,-3536,-3474,-3407,-3350,-3302,-3229,-3100,-2946,-2729,-2662,-2617,-2447,-2337,-2318,-2233,
+-2175,-2100,-2008,-1937,-1836,-1730,-1623,-1548,-1452,-1366,-1329,-1310,-1293,-1255,-1215,-1137,-1026,-949,-887,-791,
+-726,-639,-551,-471,-378,-271,-190,-113,-31,28,107,172,243,335,423,524,578,585,566,633,
+717,670,662,671,693,770,825,925,924,994,1092,1160,1209,1286,1363,1401,1433,1477,1507,1555,
+1609,1675,1760,1853,1936,2009,2078,2166,2285,2324,2335,2348,2400,2483,2586,2690,2789,2948,3118,3214,
+3356,3464,3530,3575,3611,3656,3702,3739,3798,3879,3953,4003,4046,4111,4174,4239,4307,4355,4394,4427,
+4457,4502,4562,4598,4599,4616,4656,4718,4799,4935,5100,5205,5242,5274,5294,5320,5370,5441,5508,5571,
+5645,5710,5730,5740,5713,5701,5713,5745,5815,5898,5986,6055,6092,6052,6031,6047,6053,6083,6138,6174,
+6204,6247,6278,6266,6241,6273,6308,6305,6303,6310,6346,6369,6386,6402,6444,6499,6570,6646,6717,6806,
+6891,6922,6934,6948,6958,6880,6707,6633,6657,6716,6766,6780,6788,6809,6813,6766,6737,6723,6720,6714,
+6698,6667,6631,6598,6574,6558,6552,6549,6556,6563,6566,6567,6573,6576,6588,6603,6620,6635,6632,6617,
+6606,6611,6641,6645,6672,6669,6607,6515,6444,6436,6479,6562,6657,6750,6809,6858,6874,6844,6807,6790,
+6751,6671,6667,6594,6513,6407,6297,6306,6564,6663,6673,6670,6603,6445,6338,6286,6218,6139,6093,6092,
+6055,5990,6017,6032,5999,5949,5886,5822,5718,5539,5276,4897,4504,4552,4986,5376,5580,5820,5988,6048,
+6076,6113,6090,6078,6064,6058,6038,6016,5985,5961,5981,5927,5866,5776,5741,5715,5700,5725,5678,5477,
+5365,5233,5270,5296,5279,5245,5110,4996,4990,5018,4999,4976,4907,4851,4839,4821,4698,4673,4612,4607,
+4610,4599,4581,4513,4409,4255,4166,4135,4209,4208,4370,4398,4185,4039,4034,4025,3945,3801,3680,3612,
+3532,3475,3471,3458,3424,3393,3366,3273,3184,3119,3122,3116,3051,3029,2963,2862,2793,2750,2723,2704,
+2686,2659,2623,2576,2529,2476,2430,2390,2344,2292,2239,2178,2122,2064,1993,1933,1886,1847,1825,1778,
+1727,1698,1685,1663,1617,1550,1500,1490,1483,1477,1478,1488,1482,1454,1426,1410,1410,1417,1452,1484,
+1486,1463,1424,1389,1343,1300,1206,1133,1082,1064,1030,1002,979,949,910,872,841,814,792,779,
+767,753,726,710,695,683,666,642,622,592,559,533,515,499,498,479,461,432,409,382,
+356,327,286,267,271,285,277,277,277,264,235,192,154,118,121,228,75,47,50,42,
+25,-4,-39,-71,-121,-148,-170,-183,-201,-227,-269,-301,-325,-342,-351,-359,-370,-379,-393,-409,
+-433,-455,-472,-467,-470,-478,-469,-451,-462,-465,-458,-455,-465,-476,-495,-507,-516,-531,-548,-570,
+-588,-608,-630,-645,-659,-677,-697,-718,-733,-750,-762,-776,-798,-817,-829,-842,-843,-845,-848,-848,
+-853,-854,-856,-856,-859,-856,-857,-860,-869,-879,-888,-898,-909,-913,-916,-916,-916,-918,-919,-922,
+-927,-934,-937,-937,-937,-938,-938,-934,-928,-919,-919,-921,-917,-916,-919,-925,-915,-912,-909,-907,
+-911,-900,-876,-872,-877,-871,-873,-871,-869,-867,-867,-857,-845,-840,-834,-833,-829,-824,-813,-801,
+-787,-769,-754,-738,-728,-709,-695,-685,-669,-658,-645,-635,-625,-619,-613,-608,-601,-598,-587,-584,
+-578,-578,-569,-563,-559,-557,-548,-553,-550,-555,-563,-566,-573,-569,-568,-570,-575,-588,-601,-609,
+-615,-622,-632,-641,-653,-665,-684,-702,-722,-742,-782,-789,-824,-838,-841,-864,-884,-896,-904,-914,
+-911,-919,-922,-919,-927,-937,-943,-949,-950,-958,-957,-965,-970,-970,-972,-968,-972,-977,-982,-983,
+-977,-970,-963,-955,-950,-944,-940,-950,-946,-941,-939,-928,-919,-918,-918,-914,-902,-898,-893,-884,
+-877,-864,-854,-844,-840,-826,-816,-807,-795,-781,-762,-736,-714,-690,-673,-653,-636,-614,-595,-573,
+-554,-533,-505,-473,-452,-427,-404,-379,-355,-324,-297,-262,-232,-205,-193,-163,-101,-45,0,44,
+88,134,184,249,317,359,388,401,398,381,343,283,204,151,251,452,680,975,1419,1760,
+2107,2468,2787,3082,3180,3173,3241,3271,3354,3478,3393,3460,3473,3284,3346,3420,3224,3142,3224,3345,
+3321,3274,3178,3073,2990,2928,2875,2839,2831,2839,2869,2891,2911,2929,2937,2935,2929,2952,2994,3026,
+3035,3036,3048,3044,2974,2836,2685,2584,2534,2479,2405,2337,2282,2245,2199,2135,2071,2018,1974,1926,
+1860,1792,1676,1633,1580,1506,1419,1296,1160,1019,865,735,685,686,695,665,711,652,414,269,
+147,35,-81,-211,-373,-537,-652,-713,-771,-787,-793,-797,-793,-824,-855,-879,-921,-996,-1082,-1147,
+-1155,-1149,-1172,-1234,-1336,-1454,-1564,-1662,-1714,-1721,-1699,-1626,-1538,-1469,-1461,-1506,-1546,-1596,-1670,-1745,
+-1784,-1792,-1749,-1675,-1604,-1582,-1573,-1559,-1537,-1568,-1618,-1630,-1632,-1632,-1654,-1632,-1622,-1597,-1529,-1458,
+-1365,-1347,-1306,-1226,-1183,-1206,-1207,-1219,-1238,-1195,-1152,-1139,-1141,-1167,-1209,-1242,-1162,-1080,-1044,-1098,
+-1234,-1184,-1170,-1195,-1226,-1228,-1222,-1220,-1208,-1193,-1160,-1089,-1081,-1027,-966,-977,-971,-940,-861,-850,
+-821,-834,-897,-908,-899,-900,-899,-904,-901,-891,-884,-874,-863,-857,-844,-825,-811,-791,-779,-768,
+-765,-754,-751,-740,-726,-704,-686,-648,-606,-605,-574,-554,-516,-480,-451,-415,-395,-364,-322,-288,
+-244,-209,-166,-114,-70,-26,28,83,120,167,198,248,288,326,371,405,444,497,535,566,
+595,617,641,673,719,750,773,799,823,860,910,944,951,997,985,971,981,1002,1026,1043,
+1049,1046,1036,1035,1043,1049,1056,1052,1055,1057,1067,1085,1094,1109,1142,1147,1157,1182,1202,1221,
+1227,1252,1246,1265,1258,1238,1250,1265,1302,1280,1281,1282,1293,1283,1259,1257,1254,1229,1220,1208,
+1198,1189,1215,1177,1148,1135,1130,1120,1122,1131,1151,1137,1137,1133,1135,1133,1133,1136,1136,1137,
+1141,1142,1144,1147,1154,1160,1167,1175,1179,1185,1192,1200,1215,1229,1239,1255,1271,1294,1317,1341,
+1366,1383,1403,1424,1442,1464,1490,1520,1543,1566,1598,1626,1655,1671,1676,1692,1715,1748,1772,1792,
+1850,1924,2007,2080,2144,2128,2155,2175,2177,2224,2289,2269,2248,2234,2235,2237,2214,2161,2066,1937,
+1805,1693,1583,1476,1406,1349,1288,1226,1159,1113,1063,1005,935,855,773,687,614,566,519,463,
+403,339,285,241,200,164,148,112,89,43,-18,-67,-100,-124,-127,-162,-211,-244,-282,-333,
+-398,-480,-562,-604,-650,-665,-677,-694,-728,-754,-768,-789,-855,-930,-994,-1040,-1155,-1376,-1494,-1619,
+-1577,-1449,-1373,-1334,-1325,-1395,-1679,-1881,-1987,-1972,-1848,-1700,-1647,-1712,-1900,-2071,-2132,-2167,-2194,-2205,
+-2206,-2215,-2243,-2276,-2272,-2248,-2242,-2233,-2217,-2220,-2230,-2310,-2405,-2521,-2592,-2574,-2598,-2693,-2741,-2781,
+-2807,-2803,-2739,-2619,-2389,-2182,-2354,-2329,-2216,-2483,-2564,-2615,-2679,-2765,-2750,-2589,-2499,-2685,-2803,-2773,
+-2578,-2185,-2126,-2236,-2220,-2163,-2160,-2181,-2285,-2387,-2483,-2572,-2653,-2724,-2760,-2782,-2790,-2800,-2808,-2815,
+-2837,-2858,-2882,-2887,-2925,-2935,-2951,-2959,-2951,-2943,-2948,-2934,-2956,-2974,-3010,-3026,-3023,-3073,-3105,-3146,
+-3178,-3206,-3234,-3268,-3307,-3344,-3386,-3435,-3473,-3512,-3545,-3546,-3510,-3464,-3357,-3314,-3390,-3549,-3631,-3689,
+-3749,-3792,-3841,-3868,-3905,-3974,-3985,-4015,-4053,-4119,-4132,-4164,-4243,-4237,-4223,-4278,-4331,-4403,-4439,-4523,
+-4586,-4630,-4729,-4800,-4848,-4904,-4957,-5007,-5050,-5108,-5165,-5227,-5276,-5331,-5390,-5473,-5565,-5648,-5714,-5788,
+-5864,-5932,-5965,-6017,-6069,-6116,-6156,-6196,-6238,-6287,-6330,-6372,-6418,-6464,-6510,-6554,-6591,-6629,-6657,-6682,
+-6698,-6702,-6708,-6712,-6708,-6706,-6730,-6721,-6717,-6711,-6697,-6697,-6704,-6716,-6738,-6750,-6762,-6763,-6756,-6752,
+-6730,-6713,-6712,-6683,-6654,-6660,-6723,-6765,-6785,-6829,-6870,-6874,-6848,-6787,-6740,-6686,-6632,-6636,-6679,-6698,
+-6651,-6546,-6433,-6285,-6133,-6061,-6115,-6228,-6293,-6279,-6218,-6145,-6035,-5979,-5921,-5909,-5871,-5856,-5850,-5803,
+-5732,-5669,-5588,-5505,-5423,-5328,-5220,-5111,-4985,-4865,-4784,-4610,-4528,-4428,-4322,-4240,-4142,-3961,-3914,-4002,
+-3966,-3910,-3830,-3718,-3798,-3699,-3595,-3532,-3488,-3444,-3392,-3303,-3178,-3017,-2844,-2776,-2692,-2543,-2383,-2383,
+-2311,-2247,-2169,-2102,-2004,-1903,-1820,-1767,-1667,-1570,-1499,-1484,-1458,-1415,-1359,-1302,-1220,-1137,-1026,-973,
+-880,-791,-705,-621,-527,-436,-347,-258,-183,-121,-43,28,82,167,268,355,458,519,500,466,
+559,685,647,605,612,658,734,799,844,897,992,1090,1156,1225,1307,1368,1400,1431,1450,1486,
+1530,1583,1645,1723,1810,1902,1990,2074,2172,2292,2334,2386,2404,2439,2511,2583,2684,2806,2928,3056,
+3206,3351,3466,3519,3552,3598,3646,3695,3722,3772,3842,3904,3941,3984,4036,4091,4158,4226,4279,4322,
+4359,4390,4430,4480,4538,4557,4543,4568,4644,4730,4866,5024,5133,5163,5218,5246,5264,5310,5369,5439,
+5503,5581,5643,5676,5692,5679,5646,5657,5693,5748,5826,5918,5997,6011,5982,5957,5971,5987,6008,6044,
+6073,6112,6144,6170,6168,6161,6199,6221,6221,6220,6226,6261,6288,6303,6323,6376,6431,6515,6600,6656,
+6728,6833,6855,6877,6879,6891,6759,6600,6560,6587,6642,6681,6701,6710,6737,6745,6726,6702,6686,6697,
+6701,6690,6666,6628,6590,6555,6530,6516,6514,6513,6511,6513,6515,6518,6523,6534,6547,6559,6563,6553,
+6527,6506,6496,6489,6444,6426,6462,6471,6475,6503,6566,6648,6733,6806,6836,6870,6897,6888,6839,6804,
+6798,6745,6695,6658,6616,6562,6478,6357,6277,6441,6647,6643,6601,6561,6480,6416,6378,6321,6255,6229,
+6201,6121,6101,6111,6073,6044,6015,5958,5874,5770,5622,5406,5059,4607,4484,4844,5288,5516,5760,5982,
+6068,6124,6144,6149,6145,6157,6115,6088,6094,6051,6018,6027,5975,5926,5860,5824,5845,5785,5753,5670,
+5605,5564,5447,5334,5282,5192,5146,5144,5151,5151,5125,5094,5054,5009,4968,4919,4878,4829,4786,4727,
+4687,4681,4641,4573,4464,4418,4339,4223,4156,4155,4224,4343,4468,4324,4170,4067,4027,3896,3829,3843,
+3911,3720,3609,3651,3626,3586,3566,3594,3357,3281,3220,3351,3307,3265,3277,3066,2885,2797,2750,2723,
+2701,2682,2648,2614,2566,2522,2478,2443,2411,2373,2331,2276,2208,2140,2075,2013,1952,1916,1868,1835,
+1779,1730,1700,1694,1684,1630,1552,1481,1451,1435,1449,1456,1462,1457,1431,1400,1385,1384,1397,1443,
+1459,1451,1432,1410,1361,1319,1260,1201,1112,1065,1023,997,990,975,950,914,896,866,841,817,
+796,779,755,734,711,696,682,661,642,617,591,559,519,492,483,476,463,440,421,403,
+380,347,309,267,262,246,252,251,242,237,231,198,165,136,113,101,110,54,6,13,
+5,-16,-48,-68,-73,-146,-171,-182,-187,-200,-230,-279,-307,-358,-377,-393,-402,-421,-433,-452,
+-468,-488,-500,-496,-464,-440,-434,-431,-444,-459,-482,-490,-493,-502,-515,-517,-531,-551,-567,-594,
+-620,-639,-656,-673,-690,-701,-717,-736,-753,-764,-774,-777,-784,-800,-819,-835,-848,-852,-853,-853,
+-853,-862,-871,-881,-889,-887,-881,-880,-882,-889,-896,-896,-903,-910,-916,-919,-919,-919,-918,-915,
+-918,-919,-923,-924,-920,-923,-933,-934,-933,-921,-918,-920,-912,-904,-904,-900,-904,-909,-907,-890,
+-884,-893,-887,-867,-844,-856,-861,-861,-853,-843,-841,-835,-824,-813,-808,-801,-793,-788,-790,-783,
+-774,-750,-745,-728,-707,-691,-684,-667,-647,-640,-630,-608,-596,-588,-585,-582,-577,-572,-564,-559,
+-550,-545,-540,-539,-531,-532,-534,-523,-527,-529,-528,-532,-540,-547,-548,-554,-552,-551,-551,-560,
+-571,-585,-599,-606,-615,-627,-638,-657,-673,-695,-717,-726,-765,-779,-803,-825,-838,-858,-868,-881,
+-883,-893,-899,-902,-900,-909,-909,-922,-921,-925,-929,-933,-941,-942,-941,-946,-945,-942,-943,-953,
+-956,-950,-945,-944,-940,-926,-921,-916,-925,-921,-915,-909,-901,-901,-899,-898,-886,-877,-871,-871,
+-870,-855,-841,-831,-821,-811,-797,-791,-786,-775,-762,-746,-722,-699,-678,-656,-637,-620,-602,-578,
+-558,-536,-515,-490,-464,-441,-415,-396,-370,-343,-316,-287,-255,-238,-225,-196,-136,-92,-57,-22,
+23,74,127,192,264,322,368,406,432,446,447,432,398,342,275,259,405,597,845,1206,
+1606,1932,2271,2660,3032,3147,3293,3310,3357,3374,3522,3464,3546,3462,3301,3403,3504,3393,3337,3432,
+3597,3647,3624,3491,3280,3106,2963,2849,2795,2805,2847,2866,2870,2881,2918,2950,2964,2977,3023,3083,
+3114,3109,3106,3110,3096,3012,2857,2701,2605,2565,2530,2479,2416,2368,2327,2278,2214,2140,2065,1990,
+1915,1823,1707,1619,1661,1615,1543,1469,1359,1249,1116,956,781,702,740,806,763,653,695,504,
+344,251,139,21,-73,-177,-321,-442,-517,-580,-616,-648,-672,-701,-742,-768,-807,-872,-936,-1011,
+-1066,-1098,-1119,-1148,-1207,-1286,-1383,-1482,-1575,-1629,-1627,-1586,-1511,-1429,-1388,-1408,-1466,-1528,-1589,-1695,
+-1789,-1821,-1821,-1745,-1650,-1554,-1524,-1507,-1488,-1464,-1483,-1501,-1508,-1509,-1521,-1578,-1613,-1630,-1603,-1620,
+-1538,-1369,-1297,-1274,-1251,-1250,-1227,-1217,-1232,-1243,-1195,-1160,-1139,-1138,-1153,-1182,-1202,-1144,-1061,-1061,
+-1177,-1206,-1170,-1175,-1200,-1220,-1220,-1206,-1195,-1190,-1167,-1148,-1062,-1062,-1035,-962,-959,-949,-885,-903,
+-878,-796,-683,-839,-878,-877,-874,-879,-887,-885,-881,-875,-868,-856,-848,-839,-824,-811,-793,-776,
+-769,-765,-756,-751,-750,-738,-715,-692,-661,-625,-614,-580,-557,-516,-480,-451,-424,-386,-357,-315,
+-279,-252,-215,-174,-133,-93,-48,-3,53,97,141,186,220,273,296,318,369,400,435,463,
+508,542,582,616,653,703,743,774,815,850,882,902,952,934,969,976,980,979,995,1012,
+1014,1018,1029,1030,1028,1025,1023,1025,1027,1038,1049,1057,1073,1092,1113,1134,1165,1181,1183,1200,
+1218,1234,1233,1241,1226,1217,1207,1224,1256,1288,1301,1297,1286,1287,1273,1270,1261,1243,1225,1227,
+1222,1217,1212,1196,1158,1133,1140,1155,1151,1159,1151,1164,1160,1159,1154,1151,1149,1150,1153,1153,
+1154,1155,1159,1162,1167,1171,1176,1182,1191,1200,1207,1216,1225,1236,1246,1258,1271,1287,1311,1329,
+1350,1372,1391,1411,1433,1455,1480,1504,1527,1551,1568,1592,1623,1647,1664,1681,1705,1736,1780,1807,
+1840,1903,1997,2093,2173,2207,2159,2176,2186,2213,2263,2282,2305,2290,2265,2274,2282,2239,2181,2104,
+1983,1858,1747,1636,1535,1457,1397,1342,1281,1221,1171,1116,1063,1001,916,822,724,642,591,543,
+485,426,369,323,280,236,190,165,128,83,52,18,-18,-55,-86,-96,-129,-185,-236,-287,
+-345,-403,-476,-558,-577,-587,-593,-599,-622,-645,-664,-672,-721,-828,-912,-1018,-1103,-1291,-1463,-1584,
+-1615,-1502,-1386,-1331,-1306,-1317,-1423,-1633,-1830,-1932,-1942,-1847,-1674,-1628,-1631,-1797,-2003,-2095,-2149,-2165,
+-2178,-2179,-2171,-2189,-2211,-2221,-2213,-2212,-2203,-2171,-2164,-2192,-2267,-2373,-2492,-2578,-2648,-2673,-2703,-2755,
+-2802,-2830,-2837,-2790,-2665,-2384,-2251,-2421,-2515,-2481,-2436,-2224,-2335,-2540,-2694,-2709,-2570,-2541,-2653,-2743,
+-2686,-2423,-2015,-2040,-2106,-2043,-1996,-1973,-1992,-2112,-2257,-2362,-2464,-2562,-2642,-2672,-2704,-2719,-2735,-2745,
+-2747,-2771,-2785,-2814,-2854,-2872,-2898,-2908,-2890,-2874,-2875,-2871,-2887,-2876,-2909,-2928,-2931,-2957,-2999,-3029,
+-3067,-3100,-3126,-3154,-3195,-3222,-3252,-3300,-3353,-3407,-3467,-3505,-3519,-3452,-3343,-3261,-3263,-3419,-3522,-3592,
+-3617,-3633,-3669,-3729,-3800,-3841,-3865,-3900,-3935,-3994,-4009,-4057,-4080,-4058,-4093,-4166,-4169,-4205,-4264,-4352,
+-4430,-4472,-4549,-4635,-4705,-4744,-4788,-4841,-4891,-4957,-5015,-5063,-5137,-5192,-5238,-5303,-5381,-5474,-5546,-5612,
+-5695,-5783,-5844,-5856,-5918,-5964,-6016,-6059,-6094,-6142,-6189,-6230,-6273,-6319,-6365,-6412,-6453,-6495,-6531,-6564,
+-6584,-6600,-6603,-6608,-6610,-6598,-6602,-6627,-6613,-6604,-6601,-6594,-6596,-6601,-6619,-6640,-6655,-6665,-6649,-6666,
+-6675,-6655,-6631,-6601,-6571,-6581,-6614,-6692,-6720,-6740,-6785,-6812,-6803,-6758,-6711,-6669,-6621,-6601,-6617,-6650,
+-6666,-6608,-6502,-6387,-6239,-6096,-6044,-6098,-6209,-6273,-6257,-6192,-6106,-6009,-5948,-5922,-5939,-5898,-5871,-5834,
+-5769,-5710,-5668,-5603,-5518,-5433,-5329,-5219,-5113,-4981,-4826,-4720,-4595,-4437,-4394,-4310,-4239,-4176,-4121,-4083,
+-4056,-4009,-3961,-3885,-3757,-3835,-3749,-3651,-3584,-3542,-3529,-3486,-3406,-3278,-3094,-2943,-2839,-2755,-2603,-2467,
+-2404,-2356,-2314,-2239,-2167,-2064,-1996,-1934,-1906,-1809,-1716,-1658,-1604,-1604,-1544,-1470,-1392,-1297,-1179,-1152,
+-1036,-978,-883,-795,-703,-607,-502,-419,-341,-280,-238,-186,-95,-51,24,123,218,321,403,411,
+351,427,601,638,537,511,609,670,729,783,851,947,1033,1098,1186,1255,1296,1340,1375,1392,
+1428,1470,1519,1586,1662,1748,1844,1943,2039,2143,2239,2316,2452,2472,2521,2637,2628,2719,2815,2905,
+3034,3182,3290,3362,3433,3492,3553,3617,3681,3713,3731,3772,3797,3827,3876,3936,3994,4047,4112,4182,
+4245,4291,4326,4363,4406,4461,4505,4501,4497,4558,4650,4779,4924,5015,5064,5139,5190,5220,5266,5319,
+5377,5427,5499,5580,5618,5642,5644,5607,5613,5635,5676,5743,5832,5901,5917,5890,5869,5871,5904,5940,
+5970,5996,6030,6060,6092,6096,6097,6123,6144,6152,6162,6172,6185,6209,6236,6253,6291,6359,6452,6526,
+6574,6642,6752,6825,6822,6823,6820,6634,6510,6501,6531,6574,6610,6646,6675,6701,6722,6697,6652,6620,
+6625,6643,6637,6621,6603,6578,6547,6528,6521,6511,6499,6492,6489,6486,6490,6495,6506,6515,6517,6509,
+6493,6469,6452,6448,6437,6406,6410,6442,6492,6532,6582,6655,6740,6825,6875,6883,6899,6887,6856,6828,
+6806,6780,6762,6713,6674,6635,6593,6562,6439,6303,6344,6512,6687,6618,6540,6483,6471,6460,6386,6314,
+6291,6242,6184,6178,6160,6150,6129,6078,6016,5947,5833,5691,5489,5195,4763,4485,4777,5252,5510,5745,
+5990,6088,6141,6161,6178,6147,6180,6170,6166,6140,6104,6098,6049,6006,5995,5938,5933,5851,5837,5793,
+5797,5717,5747,5571,5483,5422,5343,5331,5327,5277,5250,5234,5198,5150,5105,5056,4998,4945,4952,4995,
+4874,4799,4742,4709,4627,4495,4459,4415,4301,4250,4200,4218,4241,4354,4257,4178,4156,4109,4111,4047,
+4033,4083,3829,3745,3879,3654,3554,3499,3456,3389,3297,3230,3246,3298,3345,3214,3090,2905,2811,2764,
+2737,2715,2691,2654,2615,2569,2525,2491,2463,2441,2415,2374,2318,2245,2171,2100,2042,1991,1939,1897,
+1847,1789,1761,1704,1704,1772,1651,1551,1475,1421,1406,1412,1431,1434,1421,1398,1382,1378,1368,1389,
+1419,1415,1409,1407,1367,1333,1292,1232,1166,1091,1058,1010,983,976,963,945,921,893,878,855,
+824,801,782,764,742,719,703,683,663,644,614,586,561,518,482,462,451,447,428,413,
+400,381,346,304,272,248,212,210,215,204,193,201,165,138,113,84,38,-3,30,-32,
+-36,-35,-45,-70,-106,-101,-136,-202,-211,-218,-238,-268,-303,-347,-380,-418,-446,-464,-475,-483,
+-491,-490,-478,-453,-427,-429,-435,-448,-462,-482,-500,-516,-521,-523,-528,-548,-560,-572,-587,-609,
+-628,-653,-671,-690,-709,-730,-744,-759,-777,-792,-803,-814,-813,-817,-824,-840,-856,-862,-865,-861,
+-860,-867,-869,-876,-887,-903,-907,-898,-905,-910,-908,-902,-895,-899,-905,-911,-913,-911,-917,-922,
+-926,-929,-926,-925,-924,-919,-921,-926,-926,-924,-918,-914,-910,-904,-892,-891,-893,-883,-888,-891,
+-881,-875,-878,-892,-857,-841,-837,-844,-847,-839,-827,-819,-811,-803,-794,-777,-777,-772,-768,-764,
+-752,-736,-728,-707,-684,-679,-668,-655,-637,-623,-615,-607,-592,-577,-571,-563,-550,-541,-542,-536,
+-529,-523,-519,-515,-512,-506,-507,-508,-501,-502,-504,-504,-508,-510,-512,-523,-532,-537,-536,-535,
+-536,-544,-556,-568,-584,-598,-607,-618,-634,-649,-667,-688,-706,-736,-758,-778,-798,-818,-827,-832,
+-847,-863,-873,-880,-883,-885,-886,-903,-911,-915,-905,-908,-911,-918,-919,-916,-917,-916,-919,-923,
+-918,-916,-918,-917,-919,-924,-942,-938,-919,-887,-891,-890,-883,-880,-880,-872,-867,-863,-855,-846,
+-839,-836,-832,-815,-800,-790,-785,-771,-766,-755,-745,-736,-720,-703,-682,-657,-635,-619,-595,-581,
+-557,-535,-516,-495,-474,-451,-431,-409,-388,-365,-346,-316,-290,-276,-259,-212,-172,-141,-111,-77,
+-37,16,73,132,202,266,322,369,413,453,481,500,509,496,467,412,350,377,546,784,
+1089,1407,1728,2087,2484,2871,3201,3384,3511,3517,3497,3562,3614,3652,3710,3535,3418,3598,3532,3566,
+3723,3846,3900,3986,3809,3599,3328,3087,2892,2805,2822,2877,2908,2906,2898,2922,2951,2967,2997,3056,
+3118,3140,3126,3114,3121,3104,3013,2862,2716,2624,2582,2561,2526,2481,2431,2387,2330,2268,2199,2110,
+2020,1931,1842,1766,1783,1782,1686,1598,1523,1440,1326,1188,1011,833,747,784,819,823,753,760,
+558,396,283,179,72,-34,-121,-226,-341,-397,-448,-508,-562,-594,-631,-682,-726,-780,-841,-892,
+-937,-981,-1028,-1079,-1113,-1156,-1229,-1309,-1396,-1487,-1545,-1539,-1489,-1417,-1331,-1317,-1377,-1437,-1524,-1616,
+-1728,-1818,-1846,-1819,-1738,-1622,-1507,-1454,-1442,-1421,-1398,-1404,-1415,-1421,-1437,-1487,-1551,-1593,-1631,-1657,
+-1678,-1594,-1400,-1263,-1243,-1237,-1285,-1244,-1217,-1223,-1243,-1222,-1193,-1174,-1143,-1144,-1175,-1180,-1117,-1047,
+-1140,-1191,-1171,-1177,-1192,-1212,-1224,-1222,-1203,-1184,-1172,-1160,-1143,-1115,-1079,-1040,-983,-961,-920,-847,
+-873,-869,-845,-772,-792,-815,-846,-847,-852,-855,-856,-857,-856,-855,-850,-838,-830,-817,-805,-787,
+-771,-765,-756,-749,-744,-738,-729,-712,-702,-670,-632,-620,-579,-558,-527,-492,-468,-421,-387,-359,
+-336,-296,-260,-212,-181,-135,-108,-73,-38,20,66,114,153,186,235,278,314,341,390,425,
+474,512,552,597,630,666,688,714,721,757,805,889,873,962,961,967,964,964,970,979,
+992,1009,1007,1021,1015,997,1005,1011,1014,1027,1041,1050,1063,1083,1076,1102,1127,1129,1141,1177,
+1181,1206,1208,1227,1221,1218,1222,1260,1290,1355,1407,1411,1340,1328,1328,1314,1299,1282,1268,1274,
+1302,1308,1259,1222,1202,1190,1183,1183,1172,1176,1171,1164,1188,1189,1183,1175,1168,1165,1165,1164,
+1166,1167,1169,1174,1176,1182,1186,1192,1199,1209,1216,1225,1233,1244,1254,1264,1277,1291,1307,1324,
+1343,1362,1380,1399,1420,1440,1463,1488,1512,1538,1562,1572,1586,1610,1638,1652,1673,1698,1741,1789,
+1822,1866,1962,2074,2176,2230,2200,2180,2120,2119,2164,2248,2262,2290,2304,2286,2286,2278,2239,2185,
+2102,1990,1886,1777,1670,1584,1509,1443,1378,1325,1281,1227,1170,1112,1044,966,861,751,663,613,
+564,510,457,404,367,318,266,231,203,156,115,88,72,48,17,-16,-47,-96,-152,-208,
+-280,-346,-402,-465,-529,-551,-543,-534,-536,-559,-591,-600,-605,-683,-795,-881,-984,-1133,-1358,-1513,
+-1574,-1510,-1397,-1326,-1306,-1316,-1338,-1398,-1525,-1748,-1866,-1902,-1773,-1631,-1592,-1525,-1692,-1905,-2039,-2097,
+-2110,-2117,-2121,-2113,-2120,-2134,-2146,-2158,-2156,-2146,-2131,-2117,-2136,-2222,-2358,-2495,-2572,-2632,-2678,-2700,
+-2747,-2801,-2825,-2835,-2804,-2704,-2568,-2538,-2617,-2656,-2582,-2373,-2024,-2062,-2406,-2648,-2716,-2709,-2687,-2702,
+-2702,-2620,-2387,-2030,-2071,-2034,-1982,-1944,-1915,-1904,-1967,-2055,-2143,-2304,-2478,-2558,-2587,-2621,-2644,-2655,
+-2678,-2690,-2711,-2741,-2771,-2808,-2824,-2848,-2843,-2819,-2798,-2790,-2785,-2812,-2796,-2810,-2839,-2841,-2873,-2922,
+-2956,-2985,-3027,-3049,-3073,-3108,-3137,-3175,-3219,-3273,-3349,-3413,-3461,-3464,-3355,-3216,-3184,-3290,-3361,-3427,
+-3497,-3506,-3559,-3617,-3668,-3705,-3735,-3778,-3828,-3847,-3883,-3956,-3941,-3945,-3982,-3975,-4007,-4099,-4122,-4168,
+-4257,-4316,-4407,-4470,-4522,-4552,-4615,-4673,-4724,-4792,-4829,-4906,-4967,-5031,-5103,-5148,-5211,-5281,-5363,-5452,
+-5521,-5599,-5660,-5712,-5751,-5822,-5863,-5910,-5956,-5997,-6045,-6091,-6134,-6175,-6219,-6267,-6310,-6357,-6395,-6432,
+-6460,-6481,-6494,-6500,-6502,-6503,-6493,-6498,-6518,-6494,-6488,-6497,-6491,-6496,-6502,-6527,-6547,-6573,-6590,-6603,
+-6602,-6586,-6564,-6533,-6512,-6500,-6518,-6560,-6643,-6671,-6691,-6724,-6742,-6709,-6675,-6631,-6588,-6564,-6561,-6573,
+-6596,-6604,-6552,-6453,-6334,-6190,-6038,-5990,-6062,-6181,-6240,-6228,-6149,-6046,-5972,-5933,-5934,-5943,-5889,-5845,
+-5781,-5704,-5659,-5647,-5590,-5503,-5424,-5330,-5257,-5162,-5002,-4817,-4673,-4610,-4446,-4405,-4346,-4274,-4225,-4182,
+-4134,-4084,-4050,-4015,-3949,-3802,-3877,-3816,-3701,-3633,-3605,-3600,-3559,-3489,-3366,-3174,-3026,-2913,-2818,-2701,
+-2499,-2444,-2409,-2381,-2305,-2221,-2151,-2109,-2020,-2044,-1960,-1885,-1827,-1724,-1690,-1662,-1572,-1481,-1400,-1288,
+-1173,-1100,-1069,-994,-831,-768,-709,-590,-474,-412,-353,-331,-309,-266,-204,-147,-70,11,102,187,
+239,240,299,442,502,418,439,504,564,622,695,774,852,917,1015,1097,1151,1199,1241,1273,
+1309,1348,1387,1447,1510,1587,1678,1779,1885,1996,2110,2212,2273,2389,2459,2527,2605,2652,2724,2795,
+2876,2989,3137,3240,3299,3357,3421,3494,3578,3648,3686,3697,3705,3703,3720,3765,3814,3855,3905,3972,
+4059,4149,4215,4258,4298,4341,4394,4447,4462,4441,4475,4569,4684,4831,4913,4968,5047,5113,5170,5223,
+5272,5313,5350,5412,5515,5566,5598,5585,5569,5564,5566,5597,5646,5721,5796,5810,5790,5772,5795,5844,
+5883,5901,5920,5951,5983,6014,6024,6028,6043,6058,6074,6100,6123,6139,6156,6175,6183,6237,6317,6381,
+6439,6494,6566,6672,6756,6788,6777,6791,6586,6460,6474,6486,6521,6543,6594,6640,6666,6666,6629,6598,
+6545,6538,6563,6576,6568,6551,6538,6528,6519,6512,6504,6500,6490,6483,6474,6473,6479,6483,6487,6485,
+6473,6458,6447,6437,6432,6426,6423,6456,6473,6519,6572,6627,6693,6774,6852,6882,6883,6892,6871,6864,
+6834,6787,6743,6708,6664,6601,6579,6564,6583,6503,6347,6278,6360,6564,6685,6547,6490,6506,6489,6419,
+6353,6289,6255,6255,6217,6192,6201,6180,6136,6093,6016,5916,5795,5605,5351,4957,4574,4741,5247,5537,
+5751,5973,6096,6140,6206,6192,6182,6199,6200,6217,6187,6161,6134,6099,6067,6037,6000,5958,5909,5928,
+5849,5844,5772,5738,5634,5587,5539,5482,5516,5415,5375,5351,5308,5263,5219,5174,5142,5122,5064,5010,
+4973,4927,4904,4807,4785,4705,4616,4627,4581,4424,4311,4243,4170,4137,4231,4382,4303,4283,4191,4075,
+4062,3982,3920,3781,3744,3760,3615,3506,3492,3526,3544,3417,3275,3269,3298,3263,3143,3034,2912,2847,
+2815,2790,2765,2738,2694,2640,2587,2541,2511,2490,2469,2447,2406,2350,2279,2202,2131,2075,2030,1983,
+1930,1862,1797,1748,1707,1693,1674,1620,1549,1474,1421,1387,1389,1392,1396,1388,1375,1364,1371,1363,
+1375,1390,1378,1389,1374,1334,1306,1265,1212,1145,1089,1042,992,974,957,937,926,894,870,852,
+843,814,792,774,755,737,720,708,691,666,636,610,583,551,518,484,461,441,439,433,
+415,395,381,351,314,281,244,206,285,202,148,149,145,123,107,96,69,28,-15,7,
+-53,-82,-85,-75,-86,-126,-162,-172,-225,-240,-262,-289,-311,-349,-378,-398,-426,-434,-447,-436,
+-423,-407,-410,-422,-438,-449,-458,-474,-486,-498,-510,-529,-549,-557,-558,-569,-580,-595,-606,-618,
+-638,-655,-675,-694,-718,-737,-766,-784,-795,-809,-818,-826,-839,-850,-858,-871,-877,-884,-886,-885,
+-878,-873,-879,-879,-890,-899,-903,-901,-901,-904,-913,-919,-908,-903,-904,-904,-907,-912,-911,-912,
+-919,-917,-922,-931,-928,-931,-929,-930,-927,-922,-916,-910,-904,-900,-897,-885,-881,-875,-868,-866,
+-868,-861,-851,-839,-820,-812,-830,-819,-813,-812,-807,-809,-803,-799,-792,-779,-768,-763,-757,-753,
+-740,-706,-706,-699,-675,-659,-645,-630,-617,-601,-595,-586,-570,-566,-553,-543,-539,-528,-521,-519,
+-511,-508,-503,-497,-495,-490,-486,-485,-484,-478,-480,-480,-482,-486,-486,-487,-492,-498,-506,-511,
+-517,-527,-532,-538,-545,-565,-584,-593,-602,-611,-627,-648,-665,-677,-703,-732,-750,-768,-787,-802,
+-810,-819,-828,-844,-855,-865,-861,-866,-876,-884,-897,-891,-883,-886,-895,-894,-893,-889,-887,-893,
+-894,-888,-885,-887,-891,-889,-897,-905,-887,-862,-870,-870,-864,-862,-859,-860,-852,-844,-837,-826,
+-818,-812,-801,-794,-786,-780,-765,-755,-749,-739,-730,-720,-712,-692,-675,-653,-631,-615,-597,-583,
+-564,-540,-516,-497,-477,-456,-432,-409,-394,-371,-364,-353,-339,-319,-283,-244,-209,-188,-158,-124,
+-85,-39,10,70,138,203,260,316,369,421,468,510,545,568,577,564,531,472,421,501,
+713,967,1233,1563,1893,2262,2671,3113,3342,3595,3654,3617,3641,3734,3715,3824,3847,3548,3527,3629,
+3798,3951,4075,4206,4236,4102,3860,3625,3355,3084,2925,2913,2955,2999,3001,2989,2977,2955,2939,2960,
+3021,3090,3110,3087,3067,3061,3043,2970,2857,2745,2668,2624,2605,2585,2551,2502,2440,2375,2311,2242,
+2151,2052,1965,1905,1876,1862,1814,1741,1661,1592,1509,1397,1226,1044,903,833,814,823,832,864,
+877,630,482,312,172,61,-51,-154,-221,-283,-321,-375,-448,-504,-539,-577,-630,-688,-746,-810,
+-865,-881,-872,-915,-979,-1036,-1093,-1160,-1229,-1314,-1399,-1456,-1456,-1422,-1354,-1263,-1265,-1357,-1408,-1509,
+-1610,-1739,-1820,-1835,-1791,-1726,-1605,-1451,-1398,-1382,-1357,-1333,-1334,-1341,-1368,-1394,-1459,-1508,-1559,-1617,
+-1655,-1668,-1613,-1410,-1242,-1187,-1177,-1273,-1246,-1213,-1205,-1201,-1198,-1177,-1172,-1133,-1131,-1158,-1155,-1073,
+-1079,-1177,-1145,-1166,-1194,-1222,-1235,-1234,-1222,-1201,-1178,-1159,-1143,-1130,-1082,-1027,-1025,-987,-939,-916,
+-859,-826,-808,-831,-808,-746,-810,-828,-827,-829,-825,-826,-829,-837,-839,-832,-831,-819,-808,-800,
+-777,-759,-753,-735,-728,-731,-744,-740,-701,-699,-668,-644,-623,-595,-564,-530,-499,-463,-442,-390,
+-361,-335,-305,-266,-226,-185,-168,-131,-94,-54,-8,28,76,121,160,212,262,304,354,405,
+444,480,500,525,550,586,635,673,699,738,801,829,900,915,936,954,954,965,962,960,
+973,964,974,1002,999,1003,1003,998,1006,1024,1036,1035,1061,1063,1068,1072,1088,1101,1132,1157,
+1173,1189,1213,1238,1245,1256,1277,1366,1504,1488,1446,1402,1369,1340,1337,1336,1320,1299,1289,1288,
+1289,1390,1393,1272,1235,1224,1218,1204,1193,1193,1198,1184,1188,1209,1204,1194,1190,1184,1181,1181,
+1183,1188,1188,1187,1191,1193,1196,1200,1205,1213,1220,1228,1239,1248,1258,1267,1279,1293,1306,1320,
+1339,1357,1374,1391,1405,1428,1448,1469,1493,1515,1538,1562,1578,1596,1618,1638,1656,1678,1704,1737,
+1799,1849,1901,2014,2134,2216,2207,2167,2126,2110,2116,2151,2208,2283,2268,2282,2269,2255,2231,2197,
+2150,2068,1978,1887,1788,1694,1609,1534,1482,1417,1362,1308,1257,1208,1151,1091,1005,887,757,664,
+616,577,528,481,435,380,331,290,273,253,216,167,137,132,125,97,65,23,-35,-113,
+-189,-266,-319,-366,-426,-488,-527,-516,-499,-489,-518,-545,-556,-592,-670,-752,-855,-958,-1144,-1346,
+-1474,-1478,-1378,-1278,-1267,-1281,-1277,-1275,-1322,-1465,-1680,-1804,-1836,-1727,-1646,-1594,-1526,-1647,-1798,-1926,
+-1996,-2015,-2032,-2032,-2022,-2031,-2050,-2059,-2070,-2074,-2076,-2072,-2074,-2116,-2218,-2356,-2480,-2520,-2549,-2614,
+-2643,-2693,-2747,-2777,-2792,-2784,-2739,-2693,-2694,-2713,-2703,-2602,-2359,-2078,-2127,-2427,-2619,-2691,-2704,-2693,
+-2683,-2657,-2580,-2408,-2254,-2116,-1979,-1906,-1881,-1870,-1840,-1876,-1924,-2028,-2224,-2371,-2466,-2518,-2554,-2574,
+-2582,-2605,-2625,-2655,-2693,-2724,-2758,-2767,-2783,-2785,-2761,-2740,-2722,-2705,-2727,-2714,-2740,-2751,-2766,-2812,
+-2853,-2887,-2912,-2947,-2973,-3002,-3028,-3058,-3104,-3150,-3219,-3293,-3348,-3386,-3362,-3216,-3063,-3105,-3219,-3285,
+-3334,-3378,-3428,-3475,-3523,-3564,-3591,-3644,-3692,-3715,-3763,-3819,-3824,-3829,-3860,-3876,-3899,-3919,-3940,-4062,
+-4062,-4146,-4245,-4265,-4313,-4374,-4426,-4505,-4578,-4620,-4661,-4723,-4807,-4881,-4943,-5003,-5059,-5123,-5196,-5271,
+-5350,-5409,-5488,-5558,-5595,-5655,-5725,-5756,-5809,-5856,-5898,-5948,-5993,-6041,-6078,-6119,-6159,-6209,-6255,-6296,
+-6326,-6356,-6375,-6383,-6388,-6391,-6392,-6386,-6388,-6407,-6378,-6380,-6395,-6404,-6414,-6418,-6439,-6470,-6498,-6515,
+-6523,-6519,-6500,-6473,-6453,-6445,-6450,-6477,-6527,-6600,-6626,-6637,-6657,-6657,-6641,-6615,-6571,-6530,-6511,-6511,
+-6526,-6532,-6527,-6485,-6391,-6267,-6117,-5977,-5934,-6005,-6152,-6190,-6182,-6122,-5995,-5908,-5900,-5931,-5931,-5858,
+-5803,-5719,-5628,-5592,-5611,-5568,-5478,-5394,-5308,-5268,-5213,-5077,-4884,-4702,-4644,-4499,-4443,-4338,-4224,-4236,
+-4234,-4184,-4131,-4106,-4074,-4015,-3863,-3913,-3863,-3751,-3696,-3660,-3665,-3624,-3556,-3442,-3280,-3132,-2981,-2855,
+-2742,-2567,-2547,-2521,-2425,-2389,-2313,-2255,-2204,-2129,-2165,-2096,-2024,-1992,-1894,-1731,-1638,-1628,-1566,-1489,
+-1391,-1312,-1180,-1077,-1068,-999,-848,-792,-712,-547,-453,-401,-422,-441,-417,-367,-317,-271,-202,-132,
+-50,85,137,183,213,241,298,370,432,491,547,603,660,721,814,908,984,1048,1094,1123,
+1164,1206,1247,1298,1359,1428,1508,1595,1699,1807,1922,2057,2214,2288,2346,2422,2492,2557,2613,2669,
+2758,2876,2974,3083,3169,3227,3288,3356,3439,3531,3602,3629,3638,3639,3647,3670,3704,3722,3744,3784,
+3846,3933,4025,4107,4182,4231,4275,4336,4401,4429,4401,4404,4478,4587,4730,4797,4862,4938,5020,5091,
+5147,5202,5231,5259,5339,5445,5493,5520,5527,5515,5517,5502,5522,5562,5621,5703,5709,5696,5693,5725,
+5771,5815,5844,5864,5887,5917,5937,5941,5940,5950,5969,5993,6032,6064,6085,6100,6116,6126,6213,6288,
+6329,6367,6428,6501,6596,6671,6720,6732,6766,6597,6437,6415,6426,6473,6482,6529,6579,6597,6588,6566,
+6549,6513,6469,6479,6496,6508,6502,6496,6489,6489,6486,6480,6482,6471,6465,6463,6462,6464,6464,6464,
+6457,6453,6444,6429,6427,6419,6427,6441,6460,6483,6529,6574,6634,6702,6770,6823,6850,6861,6856,6844,
+6813,6782,6752,6684,6629,6625,6579,6538,6548,6574,6519,6387,6298,6320,6471,6622,6615,6523,6506,6483,
+6416,6350,6350,6323,6285,6247,6210,6190,6171,6183,6192,6131,6056,5960,5780,5527,5150,4705,4756,5304,
+5595,5773,6009,6087,6167,6259,6237,6233,6241,6225,6243,6232,6214,6192,6160,6131,6104,6071,6025,6012,
+5961,5896,5844,5813,5770,5707,5663,5669,5620,5529,5486,5462,5420,5385,5350,5299,5248,5210,5166,5113,
+5079,5063,5014,4947,4882,4841,4782,4665,4681,4704,4576,4368,4187,4067,4133,4240,4378,4366,4336,4269,
+4152,4058,3987,3840,3730,3701,3676,3654,3652,3585,3628,3557,3455,3360,3435,3501,3410,3165,3059,2986,
+2969,2931,2899,2904,2886,2824,2714,2632,2570,2534,2513,2491,2469,2433,2379,2308,2232,2157,2099,2054,
+2013,1959,1892,1825,1767,1718,1688,1652,1609,1548,1482,1427,1412,1380,1363,1356,1346,1334,1335,1357,
+1378,1377,1356,1347,1340,1323,1305,1268,1241,1181,1122,1065,1013,963,938,923,908,896,869,850,
+828,810,786,765,753,739,722,709,702,688,663,634,599,565,541,517,490,465,440,430,
+421,408,391,378,352,323,297,263,234,217,186,128,143,133,86,64,55,46,25,15,
+129,24,-73,-106,-114,-125,-161,-200,-229,-244,-257,-284,-305,-321,-338,-366,-395,-406,-369,-345,
+-347,-381,-416,-448,-467,-481,-489,-492,-508,-514,-522,-530,-559,-582,-586,-580,-589,-594,-615,-624,
+-638,-667,-687,-706,-725,-750,-762,-785,-802,-820,-836,-848,-855,-866,-876,-888,-898,-906,-905,-904,
+-902,-901,-900,-894,-887,-894,-901,-906,-910,-906,-908,-908,-911,-907,-918,-922,-921,-920,-921,-919,
+-919,-920,-919,-916,-914,-914,-919,-925,-931,-933,-929,-920,-904,-898,-893,-891,-882,-876,-877,-865,
+-853,-845,-845,-837,-826,-822,-807,-804,-792,-782,-775,-770,-771,-772,-771,-766,-761,-757,-750,-747,
+-742,-712,-665,-669,-675,-665,-641,-622,-605,-587,-570,-556,-548,-536,-530,-520,-516,-505,-502,-500,
+-501,-494,-489,-480,-474,-469,-469,-467,-463,-456,-454,-458,-459,-459,-464,-465,-469,-471,-477,-479,
+-484,-488,-500,-510,-518,-524,-541,-555,-569,-584,-592,-607,-619,-640,-649,-663,-693,-720,-738,-755,
+-771,-782,-798,-806,-805,-826,-824,-829,-835,-835,-845,-867,-872,-862,-860,-860,-867,-864,-855,-858,
+-858,-859,-858,-854,-855,-857,-865,-871,-882,-860,-855,-844,-838,-838,-846,-839,-836,-832,-825,-819,
+-811,-796,-790,-784,-767,-755,-752,-745,-731,-718,-711,-705,-687,-684,-669,-647,-632,-616,-595,-581,
+-566,-547,-528,-514,-495,-467,-447,-422,-397,-383,-386,-382,-362,-336,-298,-272,-245,-221,-194,-159,
+-119,-80,-39,7,70,137,199,255,312,369,427,482,534,580,618,640,647,629,586,531,
+517,656,873,1117,1384,1708,2023,2410,2802,3284,3629,3706,3688,3708,3759,3733,3737,3912,3797,3676,
+3939,4150,4123,4289,4614,4575,4380,4103,3871,3442,3217,3174,3086,3088,3146,3159,3137,3063,2951,2870,
+2861,2941,3020,3045,3032,3000,2957,2925,2886,2840,2798,2750,2716,2688,2674,2651,2595,2509,2417,2341,
+2269,2178,2081,2000,1947,1915,1885,1829,1755,1704,1656,1584,1435,1278,1118,1005,931,906,859,892,
+943,912,698,546,377,209,68,-63,-187,-271,-293,-308,-356,-412,-447,-467,-518,-586,-655,-715,
+-793,-843,-843,-820,-853,-894,-946,-1034,-1118,-1180,-1241,-1311,-1361,-1377,-1356,-1299,-1261,-1275,-1339,-1365,
+-1468,-1564,-1718,-1803,-1822,-1785,-1709,-1597,-1450,-1366,-1327,-1296,-1273,-1275,-1288,-1323,-1358,-1417,-1464,-1514,
+-1571,-1604,-1608,-1604,-1421,-1219,-1142,-1140,-1187,-1233,-1214,-1161,-1093,-1070,-1075,-1133,-1129,-1101,-1101,-1097,
+-1100,-1130,-1111,-1138,-1176,-1215,-1246,-1258,-1247,-1227,-1205,-1180,-1155,-1134,-1118,-1075,-935,-998,-979,-942,
+-911,-869,-834,-812,-814,-813,-800,-807,-812,-800,-801,-809,-811,-813,-820,-826,-820,-828,-825,-812,
+-800,-780,-763,-746,-728,-719,-708,-699,-684,-671,-673,-650,-643,-624,-575,-538,-526,-499,-472,-439,
+-413,-392,-372,-347,-315,-271,-227,-179,-131,-86,-36,8,57,101,140,181,222,256,295,322,
+367,404,440,480,513,566,611,635,667,713,744,787,835,872,911,907,957,945,935,954,
+954,948,971,986,996,996,990,993,1016,1024,1035,1039,1052,1065,1056,1057,1073,1083,1112,1148,
+1178,1194,1213,1226,1246,1247,1280,1306,1395,1566,1573,1431,1434,1353,1328,1320,1317,1307,1312,1337,
+1353,1305,1355,1340,1288,1252,1259,1229,1224,1221,1216,1211,1207,1209,1216,1214,1207,1206,1202,1200,
+1203,1207,1209,1210,1209,1207,1209,1212,1217,1223,1230,1235,1243,1254,1259,1266,1279,1292,1308,1323,
+1337,1351,1367,1385,1401,1419,1437,1455,1473,1492,1511,1535,1560,1584,1606,1626,1649,1666,1685,1714,
+1751,1804,1871,1930,2076,2185,2200,2210,2115,2105,2126,2122,2144,2201,2267,2269,2253,2238,2211,2174,
+2133,2101,2036,1960,1878,1792,1709,1623,1548,1497,1433,1378,1327,1284,1231,1173,1119,1030,897,755,
+653,608,577,540,498,454,396,364,338,321,296,257,213,199,191,179,144,109,66,6,
+-74,-153,-213,-268,-320,-385,-448,-492,-496,-471,-457,-471,-488,-524,-583,-674,-760,-890,-1001,-1199,
+-1325,-1390,-1373,-1282,-1204,-1191,-1206,-1212,-1206,-1240,-1357,-1570,-1705,-1748,-1681,-1590,-1550,-1554,-1637,-1740,
+-1829,-1879,-1904,-1922,-1928,-1935,-1951,-1956,-1956,-1980,-2001,-2018,-2031,-2063,-2131,-2240,-2354,-2473,-2424,-2433,
+-2511,-2554,-2603,-2657,-2703,-2724,-2736,-2730,-2725,-2731,-2737,-2723,-2655,-2513,-2402,-2423,-2537,-2629,-2663,-2657,
+-2645,-2633,-2611,-2545,-2428,-2262,-2022,-1874,-1835,-1817,-1779,-1769,-1738,-1801,-1890,-2051,-2234,-2364,-2436,-2465,
+-2494,-2508,-2532,-2561,-2593,-2628,-2620,-2676,-2704,-2707,-2703,-2685,-2666,-2668,-2656,-2683,-2658,-2676,-2678,-2712,
+-2755,-2788,-2807,-2838,-2875,-2907,-2937,-2954,-2979,-3021,-3087,-3145,-3211,-3276,-3298,-3225,-3015,-2936,-3029,-3126,
+-3201,-3261,-3301,-3333,-3373,-3432,-3478,-3531,-3554,-3587,-3651,-3688,-3679,-3694,-3717,-3757,-3782,-3823,-3851,-3885,
+-3938,-4029,-4052,-4097,-4166,-4244,-4278,-4333,-4414,-4461,-4505,-4562,-4633,-4715,-4786,-4853,-4894,-4965,-5030,-5114,
+-5181,-5262,-5331,-5387,-5480,-5491,-5566,-5617,-5660,-5711,-5760,-5801,-5846,-5892,-5935,-5972,-6013,-6056,-6102,-6147,
+-6187,-6217,-6248,-6262,-6266,-6273,-6281,-6282,-6271,-6271,-6297,-6275,-6282,-6301,-6315,-6325,-6333,-6372,-6404,-6431,
+-6437,-6434,-6435,-6419,-6406,-6391,-6382,-6400,-6438,-6475,-6547,-6575,-6585,-6590,-6589,-6580,-6552,-6512,-6469,-6471,
+-6490,-6483,-6456,-6446,-6410,-6311,-6189,-6062,-5945,-5930,-6006,-6125,-6151,-6121,-6065,-5933,-5846,-5897,-5932,-5926,
+-5842,-5773,-5669,-5575,-5546,-5577,-5535,-5454,-5362,-5288,-5271,-5259,-5175,-5011,-4811,-4695,-4561,-4429,-4301,-4130,
+-4235,-4297,-4244,-4175,-4137,-4115,-4068,-3929,-3964,-3923,-3823,-3778,-3734,-3722,-3675,-3611,-3501,-3360,-3196,-3044,
+-2917,-2816,-2711,-2650,-2559,-2463,-2485,-2427,-2413,-2404,-2358,-2298,-2229,-2174,-2119,-1922,-1883,-1834,-1752,-1625,
+-1564,-1468,-1408,-1318,-1237,-1148,-1000,-876,-789,-730,-626,-515,-539,-583,-562,-536,-513,-477,-422,-356,
+-271,-172,-64,33,88,117,169,216,292,353,402,453,493,534,616,704,787,857,916,965,
+1005,1050,1095,1144,1199,1261,1332,1409,1492,1602,1722,1833,1986,2183,2300,2288,2362,2430,2473,2522,
+2597,2728,2896,2982,3037,3096,3145,3209,3290,3376,3467,3522,3539,3560,3588,3613,3635,3670,3680,3699,
+3736,3783,3853,3921,3987,4075,4147,4209,4284,4373,4417,4371,4334,4391,4495,4629,4694,4763,4846,4917,
+4994,5070,5121,5164,5221,5269,5390,5440,5438,5433,5430,5429,5429,5446,5470,5526,5605,5617,5625,5636,
+5674,5713,5751,5770,5793,5822,5837,5849,5856,5860,5868,5884,5917,5961,5997,6019,6037,6050,6079,6165,
+6234,6278,6300,6359,6428,6499,6582,6645,6693,6748,6650,6447,6388,6392,6403,6435,6470,6505,6520,6514,
+6525,6525,6520,6462,6423,6426,6436,6439,6447,6439,6444,6450,6441,6447,6447,6429,6437,6427,6445,6440,
+6445,6449,6439,6430,6412,6403,6404,6422,6430,6447,6460,6501,6546,6614,6673,6721,6769,6805,6808,6798,
+6793,6775,6742,6677,6599,6572,6557,6506,6503,6542,6572,6513,6414,6360,6441,6464,6462,6520,6515,6483,
+6434,6434,6435,6399,6346,6318,6280,6235,6204,6184,6228,6302,6270,6197,6103,5936,5688,5341,4868,4749,
+5255,5607,5790,6052,6124,6248,6290,6294,6282,6283,6294,6265,6263,6260,6235,6208,6184,6151,6119,6068,
+6051,5995,5962,5940,5896,5852,5799,5729,5737,5682,5640,5593,5551,5489,5452,5430,5362,5330,5278,5230,
+5192,5146,5105,5058,5004,4962,4920,4850,4775,4699,4704,4579,4401,4193,4233,4324,4400,4451,4468,4400,
+4327,4277,4198,4100,3915,3745,3685,3651,3725,3932,3784,3620,3540,3473,3456,3529,3489,3385,3180,3094,
+3111,3122,3150,3115,3242,3269,3033,2848,2725,2630,2574,2544,2524,2503,2466,2415,2343,2261,2180,2114,
+2067,2030,1978,1907,1832,1775,1727,1698,1664,1621,1560,1509,1449,1410,1384,1363,1341,1331,1369,1349,
+1364,1472,1441,1328,1299,1301,1301,1276,1234,1204,1146,1103,1041,984,938,911,898,886,868,848,
+830,865,791,760,742,735,719,702,688,683,678,662,633,594,558,533,514,493,469,435,
+409,400,395,383,371,351,328,307,277,240,193,125,104,164,104,39,21,18,18,9,
+-9,-27,-60,-109,-144,-152,-164,-197,-225,-243,-259,-270,-285,-296,-302,-316,-328,-347,-361,-344,
+-372,-407,-442,-470,-498,-511,-522,-524,-527,-538,-538,-543,-556,-590,-614,-608,-608,-620,-614,-633,
+-650,-675,-697,-717,-734,-757,-775,-788,-805,-817,-835,-849,-861,-876,-882,-898,-905,-917,-925,-930,
+-926,-927,-925,-919,-910,-910,-906,-895,-910,-919,-922,-917,-907,-912,-922,-906,-904,-909,-925,-918,
+-919,-920,-918,-921,-918,-911,-906,-903,-902,-912,-917,-923,-919,-909,-897,-887,-881,-875,-871,-856,
+-846,-840,-833,-829,-818,-817,-810,-803,-794,-776,-769,-759,-749,-746,-746,-742,-730,-719,-713,-713,
+-709,-692,-695,-677,-668,-655,-623,-588,-580,-588,-582,-561,-544,-531,-516,-499,-491,-495,-481,-473,
+-471,-466,-465,-463,-457,-449,-444,-429,-437,-442,-433,-434,-436,-439,-439,-441,-444,-446,-450,-458,
+-463,-462,-466,-476,-482,-491,-500,-513,-527,-549,-565,-574,-588,-599,-616,-636,-636,-665,-692,-708,
+-723,-739,-755,-774,-793,-820,-817,-801,-807,-811,-818,-816,-851,-853,-840,-837,-836,-834,-832,-824,
+-820,-822,-825,-825,-825,-826,-831,-832,-834,-847,-841,-841,-830,-818,-818,-823,-825,-822,-809,-800,
+-802,-788,-777,-769,-763,-751,-734,-729,-717,-707,-691,-679,-674,-656,-652,-649,-626,-608,-594,-577,
+-572,-549,-529,-511,-490,-482,-450,-432,-422,-407,-415,-406,-382,-350,-322,-300,-278,-250,-225,-189,
+-150,-111,-75,-32,19,82,141,196,249,305,365,427,490,548,609,657,691,710,704,679,
+647,604,632,796,1018,1236,1574,1897,2178,2526,3040,3490,3692,3733,3756,3804,3822,3785,3904,3871,
+3937,4094,4356,4389,4426,4567,4640,4632,4541,4320,3870,3580,3459,3339,3330,3400,3374,3305,3149,2944,
+2810,2782,2858,2949,2958,2933,2888,2830,2795,2785,2806,2822,2809,2775,2760,2755,2741,2682,2572,2452,
+2363,2283,2195,2104,2025,1971,1927,1887,1832,1772,1714,1674,1623,1471,1315,1197,1110,1059,1021,973,
+962,980,969,745,578,458,300,132,-25,-170,-270,-319,-349,-381,-416,-445,-471,-521,-595,-661,
+-727,-788,-802,-803,-818,-850,-894,-941,-1034,-1114,-1163,-1194,-1236,-1268,-1292,-1279,-1240,-1234,-1266,-1314,
+-1319,-1411,-1524,-1638,-1754,-1790,-1796,-1715,-1585,-1424,-1337,-1275,-1237,-1222,-1214,-1228,-1273,-1305,-1364,-1417,
+-1460,-1509,-1541,-1561,-1573,-1439,-1237,-1185,-1146,-1137,-1189,-1175,-1070,-998,-993,-1013,-1093,-1098,-1051,-1058,
+-1113,-1075,-1047,-1087,-1147,-1190,-1230,-1258,-1270,-1257,-1233,-1209,-1181,-1154,-1130,-1109,-1081,-1022,-962,-979,
+-931,-897,-861,-831,-810,-804,-805,-802,-798,-797,-779,-771,-800,-807,-805,-806,-808,-798,-799,-798,
+-784,-775,-755,-744,-737,-719,-710,-710,-693,-682,-668,-666,-654,-651,-640,-610,-584,-551,-519,-489,
+-471,-435,-397,-358,-336,-299,-270,-224,-190,-149,-109,-63,-25,18,61,99,145,195,236,294,
+332,371,407,456,488,528,552,580,613,654,685,725,777,816,864,917,921,911,911,933,
+949,953,942,977,978,981,1001,996,1000,1019,1037,1042,1040,1043,1063,1084,1101,1113,1118,1121,
+1140,1160,1180,1211,1214,1245,1249,1267,1304,1334,1370,1369,1324,1316,1311,1296,1307,1325,1345,1371,
+1416,1344,1293,1298,1293,1265,1242,1240,1226,1234,1235,1232,1226,1230,1216,1234,1235,1228,1226,1220,
+1222,1221,1223,1224,1225,1224,1224,1227,1231,1236,1242,1246,1250,1259,1268,1272,1280,1284,1304,1314,
+1331,1349,1365,1383,1395,1414,1429,1446,1463,1479,1495,1511,1532,1557,1583,1603,1630,1654,1677,1697,
+1734,1775,1812,1851,1932,2076,2196,2180,2165,2080,2070,2120,2154,2218,2265,2257,2260,2239,2224,2183,
+2131,2080,2054,2011,1948,1870,1792,1716,1633,1558,1510,1447,1386,1336,1298,1248,1195,1141,1048,908,
+761,657,608,579,545,514,488,450,422,397,368,334,290,248,230,226,209,168,125,85,
+34,-35,-99,-162,-212,-262,-328,-374,-412,-439,-435,-442,-453,-467,-496,-584,-698,-856,-1013,-1086,
+-1223,-1282,-1317,-1331,-1243,-1172,-1117,-1124,-1149,-1140,-1137,-1229,-1448,-1588,-1648,-1612,-1519,-1517,-1562,-1633,
+-1702,-1746,-1767,-1783,-1823,-1861,-1869,-1867,-1862,-1871,-1919,-1964,-1988,-2011,-2064,-2145,-2244,-2313,-2428,-2372,
+-2313,-2386,-2455,-2508,-2568,-2617,-2646,-2668,-2682,-2695,-2705,-2721,-2716,-2683,-2631,-2594,-2589,-2602,-2616,-2620,
+-2607,-2585,-2569,-2547,-2486,-2360,-2134,-1890,-1813,-1746,-1709,-1679,-1619,-1568,-1726,-1765,-1939,-2114,-2255,-2336,
+-2372,-2410,-2439,-2462,-2490,-2522,-2548,-2568,-2602,-2611,-2628,-2622,-2612,-2601,-2612,-2621,-2645,-2640,-2636,-2649,
+-2663,-2698,-2702,-2720,-2758,-2795,-2816,-2847,-2871,-2894,-2937,-3008,-3062,-3132,-3196,-3209,-3100,-2833,-2809,-2879,
+-3017,-3108,-3160,-3210,-3264,-3315,-3366,-3412,-3428,-3474,-3505,-3557,-3574,-3582,-3610,-3639,-3679,-3711,-3722,-3752,
+-3811,-3862,-3901,-3961,-4031,-4070,-4127,-4174,-4233,-4290,-4368,-4431,-4498,-4574,-4639,-4684,-4746,-4809,-4870,-4937,
+-5010,-5094,-5172,-5214,-5301,-5390,-5400,-5477,-5510,-5557,-5609,-5654,-5699,-5745,-5790,-5829,-5867,-5910,-5951,-5993,
+-6041,-6074,-6102,-6126,-6142,-6152,-6156,-6164,-6170,-6159,-6165,-6193,-6174,-6189,-6216,-6235,-6238,-6255,-6306,-6346,
+-6343,-6341,-6353,-6360,-6350,-6338,-6308,-6299,-6337,-6382,-6418,-6489,-6528,-6543,-6549,-6550,-6535,-6497,-6458,-6437,
+-6451,-6446,-6402,-6360,-6344,-6309,-6216,-6123,-5995,-5913,-5916,-5979,-6098,-6120,-6084,-6016,-5907,-5856,-5896,-5930,
+-5912,-5836,-5753,-5647,-5563,-5540,-5562,-5510,-5429,-5337,-5278,-5281,-5291,-5239,-5094,-4912,-4757,-4643,-4489,-4437,
+-4363,-4338,-4323,-4288,-4193,-4129,-4125,-4113,-3989,-4018,-3988,-3899,-3854,-3793,-3765,-3708,-3649,-3551,-3433,-3308,
+-3152,-2998,-2873,-2792,-2739,-2613,-2563,-2604,-2606,-2591,-2533,-2467,-2408,-2360,-2321,-2231,-1962,-1969,-1991,-1884,
+-1753,-1646,-1559,-1459,-1435,-1410,-1334,-1194,-1079,-921,-744,-748,-732,-726,-725,-705,-668,-633,-588,-529,
+-445,-383,-283,-178,-86,-14,54,135,149,220,273,311,350,377,438,515,593,666,733,791,
+841,886,934,984,1039,1098,1158,1224,1303,1396,1498,1619,1730,1880,2033,2178,2239,2284,2331,2370,
+2425,2521,2678,2846,2918,2960,3007,3060,3131,3215,3302,3386,3437,3456,3492,3527,3557,3594,3622,3635,
+3678,3712,3756,3824,3869,3911,3967,4020,4105,4217,4333,4391,4326,4263,4305,4414,4538,4576,4645,4734,
+4818,4904,4978,5022,5098,5171,5208,5279,5333,5362,5365,5342,5344,5360,5371,5379,5433,5495,5524,5545,
+5577,5617,5655,5690,5710,5731,5747,5751,5756,5767,5779,5791,5807,5844,5894,5927,5955,5973,6011,6038,
+6109,6180,6213,6241,6313,6360,6423,6501,6588,6656,6716,6703,6515,6407,6396,6411,6433,6453,6462,6468,
+6479,6505,6496,6496,6468,6435,6396,6381,6378,6374,6370,6370,6376,6376,6380,6386,6390,6396,6404,6397,
+6417,6411,6412,6409,6408,6400,6395,6395,6400,6404,6417,6436,6473,6519,6568,6612,6647,6698,6737,6761,
+6774,6756,6718,6665,6618,6534,6490,6479,6481,6516,6541,6548,6499,6408,6428,6490,6462,6458,6484,6440,
+6438,6456,6462,6447,6409,6387,6343,6319,6299,6284,6272,6293,6331,6359,6311,6239,6105,5852,5483,5001,
+4728,5046,5501,5756,6095,6217,6311,6337,6336,6320,6343,6362,6351,6323,6316,6286,6256,6225,6196,6158,
+6119,6101,6073,6038,5981,5920,5894,5868,5836,5797,5749,5682,5628,5565,5520,5516,5465,5425,5402,5363,
+5307,5256,5200,5159,5117,5071,5044,5008,4961,4888,4825,4734,4648,4538,4432,4563,4597,4535,4556,4533,
+4484,4410,4365,4290,4171,4058,3918,4007,3864,3806,3858,3766,3625,3576,3527,3503,3478,3419,3327,3194,
+3092,3043,3048,3164,3463,3676,3589,3346,3107,2892,2732,2646,2604,2591,2574,2540,2484,2404,2311,2213,
+2130,2072,2030,1976,1904,1827,1775,1730,1702,1664,1623,1577,1529,1478,1440,1408,1377,1353,1326,1330,
+1348,1360,1404,1357,1287,1261,1260,1260,1234,1192,1142,1111,1079,1028,975,936,902,887,875,850,
+826,807,794,771,747,731,721,703,688,675,668,666,659,639,607,566,535,514,498,474,
+442,410,392,383,377,363,348,333,316,288,249,200,136,97,170,170,53,50,18,3,
+7,-20,-78,-113,-133,-184,-198,-204,-207,-218,-236,-253,-259,-257,-266,-281,-303,-315,-330,-361,
+-390,-426,-462,-492,-507,-521,-537,-548,-547,-557,-570,-565,-573,-590,-617,-636,-640,-639,-640,-646,
+-658,-681,-700,-719,-730,-751,-780,-795,-811,-824,-837,-854,-864,-873,-889,-904,-920,-924,-938,-941,
+-941,-935,-933,-936,-929,-920,-924,-924,-926,-932,-935,-938,-932,-928,-927,-925,-928,-932,-931,-924,
+-922,-921,-918,-920,-925,-923,-915,-911,-906,-902,-902,-903,-899,-894,-894,-893,-883,-875,-872,-869,
+-861,-855,-841,-831,-822,-807,-798,-793,-781,-773,-763,-754,-747,-740,-728,-717,-703,-696,-690,-678,
+-661,-659,-662,-658,-649,-631,-620,-608,-592,-580,-559,-534,-494,-499,-512,-498,-464,-473,-459,-460,
+-450,-440,-438,-436,-438,-430,-429,-428,-430,-437,-427,-413,-418,-419,-422,-423,-427,-431,-430,-434,
+-440,-447,-452,-454,-458,-464,-468,-478,-485,-505,-525,-542,-552,-566,-577,-587,-602,-627,-641,-663,
+-682,-694,-708,-727,-755,-774,-783,-792,-786,-783,-791,-794,-809,-821,-813,-817,-818,-814,-810,-806,
+-803,-799,-794,-796,-796,-792,-795,-802,-806,-796,-819,-822,-819,-813,-803,-799,-801,-796,-786,-784,
+-782,-774,-768,-763,-753,-744,-727,-714,-706,-695,-680,-672,-654,-650,-626,-612,-603,-602,-593,-578,
+-566,-543,-532,-513,-499,-483,-468,-454,-444,-444,-436,-414,-396,-375,-352,-332,-312,-289,-256,-221,
+-182,-145,-112,-69,-17,34,90,144,193,243,299,362,427,495,563,630,682,728,757,767,
+760,744,714,677,734,907,1155,1457,1795,2035,2367,2804,3343,3612,3804,3826,3737,3728,3809,3911,
+3941,3979,4055,4212,4325,4424,4543,4611,4660,4741,4662,4487,4027,3688,3688,3699,3690,3603,3461,3221,
+2976,2822,2780,2839,2889,2866,2818,2770,2725,2702,2712,2756,2792,2797,2768,2772,2781,2763,2701,2584,
+2463,2373,2292,2205,2114,2042,1989,1944,1898,1841,1788,1732,1689,1625,1496,1373,1302,1232,1183,1124,
+1070,991,938,956,761,601,497,388,210,33,-125,-231,-303,-349,-392,-443,-487,-523,-565,-631,
+-694,-755,-781,-781,-806,-841,-869,-909,-974,-1053,-1116,-1147,-1159,-1185,-1215,-1229,-1219,-1191,-1208,-1248,
+-1281,-1286,-1397,-1526,-1560,-1643,-1762,-1755,-1702,-1578,-1415,-1316,-1260,-1226,-1204,-1193,-1204,-1235,-1274,-1298,
+-1357,-1403,-1425,-1438,-1470,-1502,-1443,-1262,-1227,-1165,-1144,-1184,-1161,-1029,-963,-959,-989,-1055,-1017,-981,
+-1023,-1094,-1041,-1045,-1101,-1163,-1208,-1242,-1266,-1274,-1259,-1233,-1205,-1180,-1152,-1121,-1094,-1072,-1039,-1008,
+-980,-924,-899,-868,-845,-824,-814,-802,-797,-793,-787,-787,-783,-782,-779,-779,-775,-782,-784,-767,
+-763,-752,-760,-747,-728,-726,-719,-715,-696,-678,-671,-673,-640,-629,-626,-610,-596,-566,-544,-523,
+-490,-468,-431,-402,-369,-338,-304,-271,-231,-177,-140,-91,-58,-11,33,73,111,154,195,237,
+281,311,346,394,431,465,485,514,565,585,617,660,698,744,809,855,861,873,906,944,
+940,947,933,949,954,967,981,971,983,1015,1015,1034,1044,1061,1065,1068,1094,1109,1098,1104,
+1112,1142,1174,1194,1214,1238,1274,1259,1276,1301,1307,1319,1324,1306,1312,1325,1348,1358,1365,1376,
+1390,1342,1303,1272,1257,1262,1259,1261,1272,1281,1266,1260,1251,1242,1242,1234,1257,1248,1253,1248,
+1244,1246,1242,1241,1241,1242,1242,1241,1243,1248,1256,1263,1266,1268,1276,1280,1287,1294,1302,1313,
+1322,1338,1356,1376,1398,1414,1427,1438,1453,1463,1480,1495,1511,1526,1542,1562,1585,1613,1645,1678,
+1720,1761,1798,1813,1856,1972,2094,2173,2157,2188,2113,2084,2138,2243,2279,2254,2252,2254,2251,2223,
+2170,2102,2056,2027,1993,1939,1866,1789,1710,1627,1558,1508,1455,1399,1349,1300,1252,1206,1151,1060,
+932,791,688,629,593,557,535,518,499,477,449,406,361,314,274,252,242,223,178,134,
+93,55,6,-41,-96,-150,-207,-263,-314,-353,-385,-426,-467,-485,-497,-526,-622,-768,-959,-1062,
+-1157,-1213,-1209,-1241,-1244,-1199,-1173,-1131,-1139,-1125,-1082,-1067,-1129,-1304,-1475,-1567,-1550,-1457,-1475,-1551,
+-1631,-1683,-1700,-1696,-1716,-1766,-1810,-1822,-1822,-1829,-1848,-1907,-1966,-1999,-2027,-2070,-2132,-2193,-2225,-2386,
+-2395,-2275,-2295,-2352,-2408,-2470,-2525,-2558,-2593,-2619,-2640,-2661,-2678,-2685,-2674,-2652,-2636,-2623,-2608,-2588,
+-2572,-2560,-2529,-2496,-2462,-2401,-2265,-2004,-1786,-1724,-1673,-1554,-1476,-1505,-1461,-1619,-1682,-1820,-2023,-2160,
+-2237,-2286,-2335,-2372,-2397,-2429,-2456,-2479,-2507,-2527,-2545,-2557,-2557,-2553,-2551,-2549,-2564,-2591,-2576,-2586,
+-2592,-2624,-2608,-2619,-2636,-2661,-2704,-2731,-2694,-2798,-2835,-2887,-2943,-3005,-3076,-3124,-3106,-2921,-2700,-2687,
+-2737,-2904,-3029,-3071,-3127,-3183,-3217,-3270,-3322,-3357,-3391,-3418,-3444,-3477,-3506,-3536,-3565,-3583,-3593,-3632,
+-3711,-3735,-3741,-3786,-3845,-3893,-3957,-4022,-4089,-4142,-4207,-4266,-4344,-4418,-4477,-4525,-4580,-4635,-4684,-4766,
+-4835,-4925,-5002,-5062,-5129,-5208,-5279,-5299,-5373,-5407,-5455,-5506,-5552,-5599,-5649,-5690,-5724,-5762,-5802,-5846,
+-5888,-5927,-5957,-5983,-6003,-6016,-6030,-6042,-6050,-6058,-6055,-6071,-6091,-6084,-6106,-6137,-6157,-6166,-6183,-6211,
+-6236,-6249,-6258,-6269,-6272,-6264,-6258,-6238,-6229,-6258,-6321,-6381,-6441,-6480,-6499,-6507,-6494,-6464,-6425,-6401,
+-6387,-6371,-6318,-6264,-6229,-6231,-6192,-6138,-6045,-5915,-5852,-5893,-5988,-6072,-6095,-6046,-5980,-5912,-5824,-5863,
+-5914,-5899,-5835,-5746,-5639,-5562,-5541,-5555,-5481,-5404,-5318,-5267,-5281,-5290,-5233,-5095,-4941,-4791,-4670,-4576,
+-4517,-4439,-4334,-4332,-4295,-4184,-4110,-4123,-4150,-4061,-4072,-4048,-3963,-3910,-3839,-3820,-3739,-3682,-3608,-3513,
+-3374,-3216,-3078,-2957,-2878,-2827,-2720,-2721,-2724,-2738,-2695,-2632,-2563,-2519,-2497,-2452,-2379,-2203,-2087,-2070,
+-1967,-1870,-1779,-1710,-1642,-1580,-1516,-1424,-1331,-1215,-1011,-823,-818,-856,-845,-840,-834,-793,-750,-704,
+-658,-572,-499,-413,-318,-225,-131,-40,39,79,145,185,217,235,273,339,412,485,552,613,
+672,727,775,821,876,929,986,1048,1118,1199,1296,1402,1518,1664,1823,1940,2050,2142,2193,2224,
+2277,2352,2439,2625,2776,2833,2876,2927,2983,3051,3132,3216,3298,3353,3401,3437,3468,3496,3536,3568,
+3605,3653,3684,3732,3798,3851,3890,3913,3945,3990,4102,4241,4310,4256,4193,4230,4337,4446,4473,4532,
+4601,4682,4788,4886,4930,4983,5067,5117,5176,5239,5264,5269,5251,5256,5263,5276,5298,5344,5408,5434,
+5456,5500,5564,5607,5619,5638,5657,5661,5664,5670,5680,5691,5709,5736,5772,5818,5854,5889,5920,5959,
+5972,6023,6109,6162,6179,6263,6308,6345,6431,6541,6611,6681,6711,6647,6477,6440,6420,6436,6446,6458,
+6438,6430,6503,6507,6506,6490,6456,6408,6355,6335,6320,6307,6301,6299,6300,6304,6310,6320,6336,6346,
+6349,6367,6371,6371,6379,6374,6370,6378,6377,6386,6382,6377,6394,6420,6462,6502,6537,6589,6644,6677,
+6703,6695,6696,6657,6600,6523,6472,6461,6450,6465,6520,6532,6507,6435,6390,6464,6495,6488,6496,6427,
+6451,6455,6442,6433,6425,6428,6392,6351,6321,6320,6313,6283,6279,6238,6297,6291,6263,6180,6009,5641,
+5139,4738,4913,5325,5676,6061,6351,6388,6401,6397,6377,6338,6338,6369,6363,6340,6347,6320,6286,6245,
+6209,6191,6169,6134,6037,6019,6004,5960,5905,5858,5819,5776,5721,5678,5639,5597,5556,5517,5467,5426,
+5390,5345,5301,5262,5214,5170,5137,5113,5063,5034,4998,4935,4862,4798,4747,4685,4695,4654,4637,4600,
+4577,4542,4480,4444,4398,4336,4292,4218,4230,4187,4046,3840,3654,3573,3593,3589,3581,3550,3461,3360,
+3247,3141,3073,3081,3185,3435,3724,3773,3712,3568,3225,2902,2764,2720,2726,2753,2695,2626,2529,2400,
+2263,2149,2075,2021,1960,1900,1824,1774,1730,1696,1659,1615,1573,1536,1499,1457,1422,1401,1370,1330,
+1293,1294,1321,1332,1296,1244,1226,1230,1211,1175,1110,1093,1087,1049,1015,968,933,907,884,867,
+838,810,781,766,757,747,731,713,700,680,667,659,654,648,635,611,580,547,526,506,
+489,468,434,414,397,380,361,351,337,321,296,262,222,188,212,313,292,144,213,180,
+13,4,-15,-69,-121,-166,-186,-187,-184,-186,-213,-235,-257,-271,-276,-285,-287,-316,-334,-355,
+-375,-388,-438,-473,-492,-515,-530,-547,-560,-564,-574,-579,-581,-588,-607,-633,-658,-667,-668,-666,
+-671,-682,-706,-720,-733,-751,-778,-798,-821,-833,-847,-858,-872,-882,-892,-909,-915,-926,-937,-949,
+-952,-957,-955,-949,-955,-948,-945,-946,-942,-937,-936,-936,-936,-933,-935,-937,-934,-932,-934,-934,
+-937,-930,-927,-923,-922,-920,-921,-917,-915,-914,-911,-904,-902,-892,-880,-875,-874,-872,-864,-860,
+-859,-855,-852,-837,-826,-814,-805,-796,-786,-776,-768,-761,-752,-739,-728,-722,-712,-699,-688,-674,
+-663,-648,-634,-623,-618,-610,-585,-582,-571,-562,-548,-532,-522,-519,-503,-491,-466,-447,-448,-443,
+-425,-412,-408,-414,-412,-411,-405,-403,-400,-394,-389,-390,-399,-401,-406,-406,-409,-410,-417,-420,
+-420,-424,-430,-437,-442,-448,-455,-457,-459,-465,-480,-496,-510,-525,-542,-557,-562,-587,-612,-621,
+-635,-654,-671,-690,-724,-745,-746,-756,-749,-751,-756,-758,-756,-773,-766,-781,-783,-788,-780,-770,
+-771,-773,-777,-777,-774,-781,-784,-783,-778,-791,-777,-784,-797,-798,-787,-782,-780,-783,-780,-769,
+-765,-758,-751,-749,-747,-739,-727,-714,-701,-686,-673,-661,-651,-638,-628,-604,-602,-594,-587,-575,
+-566,-552,-534,-520,-508,-488,-472,-463,-459,-451,-438,-409,-397,-386,-375,-354,-333,-311,-283,-248,
+-215,-177,-141,-104,-59,-8,42,95,144,188,238,296,361,430,499,572,639,698,748,790,
+819,834,833,812,780,756,835,1034,1333,1638,1970,2244,2625,3143,3531,3818,3864,3780,3767,3793,
+3885,3917,4057,4198,4213,4378,4440,4517,4664,4735,4791,4865,4783,4274,4051,4193,4152,4055,3920,3675,
+3424,3129,2967,2889,2873,2844,2762,2703,2674,2662,2664,2687,2714,2726,2744,2744,2737,2730,2707,2643,
+2537,2433,2353,2283,2201,2117,2050,2001,1958,1911,1856,1826,1785,1736,1639,1513,1410,1375,1340,1274,
+1203,1120,995,907,941,820,613,483,386,240,99,-56,-173,-251,-309,-369,-448,-503,-549,-589,
+-642,-702,-749,-767,-788,-816,-858,-905,-960,-1018,-1067,-1102,-1108,-1104,-1109,-1133,-1154,-1162,-1164,-1183,
+-1210,-1222,-1301,-1416,-1532,-1586,-1618,-1665,-1680,-1669,-1562,-1399,-1315,-1269,-1234,-1213,-1202,-1194,-1194,-1217,
+-1257,-1328,-1356,-1362,-1382,-1383,-1404,-1408,-1381,-1310,-1237,-1184,-1211,-1173,-1050,-978,-968,-1007,-1002,-932,
+-924,-1009,-1094,-1080,-1089,-1135,-1188,-1227,-1252,-1266,-1268,-1255,-1229,-1203,-1177,-1148,-1117,-1086,-1055,-1038,
+-1008,-968,-920,-862,-860,-852,-831,-817,-800,-778,-761,-747,-758,-759,-718,-731,-744,-715,-671,-742,
+-730,-729,-726,-724,-715,-708,-702,-690,-686,-686,-645,-636,-637,-640,-626,-610,-592,-576,-544,-525,
+-516,-475,-447,-419,-391,-356,-331,-301,-254,-218,-178,-156,-105,-61,-17,21,56,106,141,177,
+220,259,294,339,373,412,440,486,520,556,581,618,653,694,733,774,806,824,854,926,
+907,919,929,940,933,934,938,957,980,1011,1022,1028,1044,1047,1058,1063,1066,1084,1111,1109,
+1117,1137,1163,1192,1223,1236,1329,1264,1271,1286,1297,1314,1329,1332,1338,1321,1332,1335,1346,1347,
+1341,1345,1336,1328,1322,1311,1313,1300,1294,1291,1286,1268,1267,1269,1267,1270,1257,1278,1266,1269,
+1268,1278,1270,1269,1264,1264,1261,1260,1261,1264,1271,1276,1285,1287,1288,1293,1295,1300,1308,1318,
+1327,1337,1351,1367,1391,1410,1425,1442,1454,1465,1474,1488,1501,1512,1515,1522,1534,1558,1588,1633,
+1681,1734,1782,1816,1827,1889,2046,2105,2137,2127,2138,2136,2125,2156,2250,2277,2256,2254,2256,2236,
+2199,2145,2076,2037,2004,1966,1909,1844,1771,1697,1630,1566,1497,1452,1399,1346,1295,1245,1202,1148,
+1070,953,830,732,664,610,581,561,553,540,516,476,431,386,344,305,281,265,235,175,
+130,102,81,52,17,-27,-84,-145,-211,-264,-308,-365,-426,-485,-512,-530,-581,-672,-853,-969,
+-1051,-1096,-1106,-1132,-1150,-1158,-1184,-1200,-1207,-1205,-1156,-1071,-1037,-1040,-1137,-1361,-1477,-1502,-1427,-1443,
+-1541,-1617,-1644,-1660,-1680,-1695,-1732,-1773,-1795,-1817,-1839,-1858,-1919,-1980,-2015,-2035,-2069,-2114,-2140,-2150,
+-2307,-2448,-2369,-2236,-2265,-2310,-2369,-2430,-2479,-2520,-2550,-2575,-2608,-2630,-2640,-2642,-2632,-2616,-2602,-2588,
+-2564,-2543,-2515,-2470,-2418,-2397,-2333,-2198,-1983,-1807,-1636,-1516,-1440,-1350,-1451,-1520,-1549,-1626,-1715,-1911,
+-2064,-2170,-2229,-2275,-2307,-2340,-2371,-2397,-2411,-2431,-2458,-2473,-2475,-2494,-2500,-2484,-2491,-2497,-2514,-2516,
+-2526,-2526,-2523,-2524,-2543,-2553,-2573,-2631,-2655,-2697,-2752,-2796,-2858,-2907,-2966,-3031,-3074,-2980,-2669,-2577,
+-2587,-2635,-2800,-2942,-3011,-3047,-3086,-3126,-3161,-3204,-3255,-3307,-3322,-3372,-3392,-3422,-3440,-3449,-3469,-3503,
+-3574,-3589,-3568,-3614,-3684,-3746,-3794,-3858,-3930,-3976,-4036,-4104,-4165,-4233,-4277,-4359,-4420,-4464,-4546,-4598,
+-4662,-4732,-4811,-4886,-4958,-5046,-5099,-5162,-5216,-5271,-5309,-5358,-5400,-5446,-5493,-5535,-5576,-5615,-5654,-5690,
+-5733,-5774,-5807,-5835,-5857,-5879,-5899,-5916,-5929,-5939,-5950,-5953,-5974,-5993,-6006,-6034,-6055,-6073,-6086,-6101,
+-6125,-6151,-6168,-6175,-6184,-6187,-6187,-6194,-6189,-6198,-6252,-6283,-6319,-6367,-6426,-6443,-6430,-6403,-6359,-6319,
+-6294,-6271,-6217,-6156,-6099,-6074,-6091,-6077,-6024,-5946,-5838,-5822,-5885,-5986,-6052,-6073,-6016,-5912,-5879,-5794,
+-5826,-5903,-5890,-5835,-5739,-5635,-5569,-5564,-5551,-5460,-5384,-5293,-5250,-5268,-5264,-5205,-5096,-4944,-4800,-4696,
+-4627,-4590,-4527,-4468,-4391,-4274,-4103,-4105,-4149,-4193,-4127,-4112,-4107,-4011,-3960,-3886,-3825,-3782,-3717,-3655,
+-3572,-3434,-3297,-3170,-3066,-2977,-2924,-2880,-2847,-2812,-2783,-2776,-2733,-2683,-2648,-2618,-2571,-2485,-2383,-2263,
+-2147,-2051,-1955,-1870,-1826,-1746,-1666,-1587,-1493,-1392,-1293,-1154,-992,-953,-954,-918,-979,-954,-911,-874,
+-828,-783,-722,-636,-541,-456,-355,-240,-136,-67,7,73,84,110,123,174,244,311,375,437,
+501,560,616,667,711,761,820,880,948,1021,1103,1198,1298,1413,1560,1710,1846,1946,2017,2069,
+2113,2176,2249,2365,2592,2711,2756,2804,2862,2919,2988,3069,3149,3230,3295,3341,3372,3408,3445,3486,
+3533,3585,3630,3669,3713,3783,3845,3888,3910,3928,3945,4003,4131,4221,4172,4115,4161,4266,4362,4406,
+4437,4486,4563,4656,4750,4799,4856,4926,4983,5048,5101,5137,5159,5159,5158,5163,5190,5218,5263,5312,
+5342,5379,5437,5509,5543,5555,5560,5573,5573,5572,5582,5586,5601,5628,5659,5697,5743,5783,5819,5853,
+5876,5907,5968,6056,6112,6119,6201,6266,6309,6361,6466,6550,6621,6674,6690,6649,6598,6471,6450,6445,
+6461,6447,6412,6430,6519,6511,6505,6464,6428,6372,6339,6301,6283,6255,6250,6245,6241,6243,6250,6264,
+6277,6282,6295,6308,6318,6324,6333,6334,6336,6341,6359,6355,6350,6358,6375,6401,6431,6469,6522,6581,
+6601,6605,6622,6590,6530,6491,6443,6411,6418,6445,6490,6502,6503,6463,6389,6373,6473,6472,6526,6402,
+6444,6484,6410,6403,6361,6376,6351,6342,6304,6246,6236,6222,6189,6121,6113,6149,6189,6181,6119,6041,
+5792,5294,4829,4898,5282,5629,5977,6282,6382,6417,6422,6406,6367,6408,6447,6424,6366,6346,6351,6326,
+6297,6279,6210,6197,6177,6127,6077,6029,5991,5948,5906,5869,5830,5783,5732,5687,5653,5611,5569,5528,
+5489,5444,5401,5366,5314,5265,5226,5198,5168,5133,5086,5043,5015,4965,4890,4827,4768,4737,4705,4689,
+4657,4617,4584,4567,4534,4481,4421,4380,4337,4283,4252,4228,4107,3805,3596,3600,3629,3643,3626,3528,
+3424,3305,3189,3095,3066,3136,3295,3378,3533,3655,3700,3499,3108,2921,2913,2912,2934,2955,2884,2752,
+2539,2355,2189,2086,2018,1957,1886,1822,1766,1725,1684,1646,1611,1577,1538,1501,1463,1432,1410,1373,
+1329,1287,1278,1294,1297,1276,1248,1234,1213,1183,1121,1052,1066,1058,1015,993,952,924,900,875,
+856,823,806,767,767,762,751,740,725,704,679,667,658,649,638,626,614,592,571,550,
+532,512,492,466,441,419,404,386,371,355,333,302,269,239,222,221,260,298,208,179,
+238,96,-19,-43,-39,-56,-98,-135,-165,-193,-218,-245,-263,-277,-297,-314,-318,-330,-328,-344,
+-363,-360,-402,-438,-471,-496,-512,-520,-534,-548,-566,-524,-544,-580,-603,-615,-651,-680,-688,-700,
+-697,-700,-715,-731,-746,-759,-774,-801,-829,-845,-857,-870,-880,-893,-911,-915,-918,-923,-932,-948,
+-963,-969,-964,-960,-960,-967,-963,-964,-959,-951,-944,-938,-941,-937,-937,-936,-939,-942,-937,-933,
+-929,-930,-923,-921,-922,-922,-920,-918,-917,-908,-909,-912,-902,-893,-886,-869,-864,-864,-857,-853,
+-851,-850,-850,-843,-833,-824,-810,-801,-791,-781,-770,-757,-753,-744,-735,-728,-716,-701,-691,-679,
+-667,-652,-628,-610,-598,-596,-580,-562,-550,-534,-522,-502,-488,-482,-475,-467,-451,-449,-444,-437,
+-421,-405,-401,-397,-393,-391,-389,-378,-383,-383,-382,-381,-380,-382,-389,-394,-395,-388,-386,-395,
+-402,-403,-407,-408,-412,-416,-429,-441,-451,-455,-460,-469,-477,-488,-504,-517,-533,-541,-567,-586,
+-612,-611,-628,-646,-662,-685,-714,-723,-723,-724,-727,-736,-740,-745,-748,-754,-744,-750,-751,-747,
+-740,-740,-741,-744,-749,-746,-742,-744,-735,-746,-776,-753,-744,-769,-765,-758,-756,-757,-754,-752,
+-751,-751,-742,-732,-733,-733,-725,-718,-712,-691,-672,-658,-646,-635,-624,-603,-598,-590,-579,-570,
+-565,-551,-540,-527,-508,-495,-483,-479,-468,-456,-434,-412,-400,-394,-381,-364,-347,-327,-301,-270,
+-238,-206,-171,-134,-93,-49,-1,47,94,143,190,243,305,366,432,502,574,643,708,767,
+820,861,894,912,910,890,856,842,944,1167,1494,1842,2167,2486,2844,3362,3744,3839,3944,3930,
+3894,3905,3967,4076,4111,4216,4355,4419,4540,4643,4686,4686,4750,4655,4514,4614,4686,4630,4495,4298,
+4012,3666,3440,3234,3073,2948,2795,2638,2569,2580,2604,2640,2663,2670,2667,2677,2680,2668,2650,2617,
+2556,2460,2364,2298,2240,2172,2097,2039,1992,1953,1907,1873,1842,1810,1776,1658,1536,1428,1402,1405,
+1344,1241,1137,1014,906,969,859,627,495,374,252,148,14,-98,-188,-261,-338,-432,-491,-517,
+-552,-607,-671,-717,-768,-806,-824,-880,-928,-990,-1035,-1051,-1056,-1041,-1015,-1018,-1036,-1070,-1102,-1124,
+-1150,-1179,-1226,-1314,-1426,-1529,-1575,-1534,-1608,-1652,-1634,-1552,-1409,-1331,-1276,-1239,-1227,-1224,-1219,-1208,
+-1231,-1293,-1334,-1346,-1344,-1347,-1344,-1338,-1391,-1413,-1368,-1315,-1265,-1241,-1173,-1050,-985,-985,-996,-936,
+-874,-883,-1012,-1107,-1126,-1145,-1177,-1219,-1250,-1267,-1270,-1261,-1245,-1223,-1194,-1169,-1140,-1111,-1080,-1051,
+-1026,-988,-941,-904,-855,-803,-826,-809,-798,-784,-759,-738,-728,-728,-736,-736,-730,-739,-729,-717,
+-722,-698,-707,-708,-695,-698,-702,-712,-699,-677,-678,-666,-661,-642,-633,-631,-615,-600,-569,-543,
+-515,-491,-462,-446,-420,-394,-361,-328,-290,-264,-230,-178,-152,-120,-70,-37,15,54,88,132,
+169,211,253,289,326,367,415,451,482,503,548,574,608,649,704,741,776,817,826,822,
+909,859,907,923,949,955,968,970,978,984,998,1009,1020,1026,1031,1046,1056,1074,1084,1121,
+1124,1130,1153,1180,1197,1207,1233,1257,1278,1277,1286,1308,1322,1330,1318,1326,1323,1332,1343,1330,
+1318,1307,1308,1315,1309,1296,1272,1270,1294,1298,1300,1287,1298,1299,1293,1295,1297,1278,1299,1290,
+1292,1294,1296,1293,1290,1286,1283,1281,1282,1283,1287,1294,1298,1305,1309,1309,1311,1311,1313,1321,
+1329,1337,1349,1364,1383,1404,1424,1441,1456,1470,1479,1492,1501,1504,1506,1505,1509,1535,1556,1634,
+1663,1689,1741,1796,1836,1844,1890,2030,2089,2130,2119,2130,2145,2176,2214,2285,2314,2303,2278,2250,
+2208,2159,2111,2051,2002,1963,1929,1870,1814,1744,1678,1622,1558,1494,1444,1394,1340,1288,1240,1196,
+1147,1074,972,864,774,700,641,613,594,584,571,538,496,451,416,388,361,331,293,246,
+182,136,112,98,87,64,25,-29,-92,-152,-204,-253,-327,-400,-465,-509,-540,-593,-749,-869,
+-969,-1009,-1011,-1004,-1033,-1067,-1118,-1186,-1216,-1226,-1236,-1195,-1129,-1033,-977,-998,-1209,-1375,-1426,-1441,
+-1418,-1508,-1566,-1578,-1601,-1635,-1664,-1693,-1744,-1785,-1822,-1846,-1869,-1925,-1984,-2015,-2044,-2073,-2095,-2081,
+-2074,-2193,-2445,-2450,-2244,-2218,-2236,-2287,-2349,-2411,-2447,-2482,-2514,-2548,-2579,-2592,-2600,-2600,-2589,-2573,
+-2561,-2538,-2507,-2469,-2419,-2381,-2348,-2262,-2098,-1957,-1825,-1678,-1450,-1331,-1327,-1447,-1522,-1532,-1559,-1609,
+-1809,-1979,-2089,-2155,-2215,-2265,-2302,-2327,-2348,-2359,-2370,-2393,-2404,-2434,-2432,-2438,-2432,-2415,-2421,-2427,
+-2436,-2439,-2426,-2446,-2445,-2458,-2477,-2510,-2546,-2586,-2606,-2672,-2739,-2795,-2855,-2915,-2974,-2980,-2732,-2485,
+-2468,-2497,-2551,-2738,-2859,-2911,-2967,-2997,-3035,-3086,-3138,-3178,-3213,-3267,-3271,-3293,-3310,-3343,-3371,-3404,
+-3410,-3438,-3447,-3471,-3499,-3570,-3622,-3691,-3756,-3823,-3874,-3936,-3999,-4052,-4110,-4172,-4260,-4312,-4367,-4410,
+-4492,-4569,-4631,-4713,-4792,-4853,-4938,-5027,-5050,-5137,-5174,-5205,-5259,-5291,-5331,-5377,-5422,-5464,-5505,-5538,
+-5582,-5622,-5661,-5689,-5717,-5740,-5760,-5782,-5801,-5817,-5832,-5842,-5857,-5882,-5904,-5925,-5946,-5967,-5990,-6003,
+-6018,-6040,-6058,-6072,-6091,-6101,-6104,-6113,-6130,-6134,-6155,-6192,-6232,-6258,-6301,-6362,-6367,-6338,-6288,-6238,
+-6204,-6168,-6102,-6036,-5972,-5937,-5927,-5939,-5941,-5919,-5858,-5781,-5771,-5863,-5976,-6044,-6065,-5998,-5879,-5860,
+-5808,-5793,-5869,-5871,-5822,-5721,-5626,-5571,-5553,-5533,-5438,-5360,-5263,-5238,-5250,-5250,-5189,-5081,-4926,-4799,
+-4736,-4699,-4669,-4601,-4496,-4384,-4258,-4149,-4121,-4188,-4230,-4169,-4133,-4144,-4048,-3988,-3932,-3842,-3820,-3753,
+-3697,-3620,-3511,-3373,-3259,-3174,-3101,-3024,-2978,-2926,-2892,-2868,-2875,-2838,-2801,-2771,-2730,-2666,-2570,-2470,
+-2356,-2253,-2135,-2040,-1964,-1909,-1774,-1746,-1673,-1568,-1477,-1386,-1260,-1135,-1089,-1078,-1126,-1118,-1068,-1025,
+-994,-944,-897,-836,-751,-645,-542,-460,-343,-221,-123,-76,4,11,-6,9,80,139,202,261,
+326,390,444,498,552,600,651,712,777,847,920,1006,1097,1188,1299,1438,1598,1706,1815,1893,
+1961,2033,2111,2210,2357,2553,2650,2707,2760,2822,2880,2953,3030,3096,3178,3247,3291,3322,3350,3389,
+3446,3504,3566,3609,3655,3701,3765,3842,3894,3903,3893,3908,3945,4012,4100,4079,4027,4111,4204,4296,
+4339,4365,4389,4449,4514,4596,4661,4728,4787,4850,4936,4988,5009,5026,5050,5070,5077,5111,5140,5177,
+5220,5264,5313,5376,5432,5466,5481,5482,5491,5481,5480,5483,5496,5516,5538,5567,5620,5667,5706,5739,
+5791,5803,5833,5932,5999,6043,6048,6139,6222,6268,6316,6382,6481,6543,6598,6650,6675,6649,6612,6534,
+6469,6418,6397,6390,6367,6426,6477,6474,6457,6445,6423,6388,6336,6279,6252,6249,6234,6220,6211,6207,
+6208,6215,6219,6228,6241,6258,6270,6284,6302,6315,6326,6319,6323,6331,6334,6340,6360,6384,6399,6454,
+6547,6570,6553,6495,6457,6406,6384,6360,6400,6416,6444,6518,6499,6481,6423,6364,6413,6471,6466,6382,
+6432,6465,6441,6377,6271,6253,6316,6280,6273,6241,6175,6159,6157,6159,6063,5997,5976,6055,6125,6050,
+5970,5824,5460,5009,5001,5365,5667,5973,6362,6415,6421,6423,6412,6417,6426,6450,6443,6421,6393,6394,
+6372,6337,6307,6283,6248,6181,6152,6118,6069,6023,5980,5960,5916,5867,5825,5784,5738,5701,5659,5628,
+5577,5536,5494,5447,5401,5355,5316,5282,5248,5205,5167,5131,5088,5043,5017,4945,4900,4846,4805,4770,
+4730,4704,4660,4627,4581,4567,4537,4471,4463,4416,4357,4317,4276,4215,4066,3843,3706,3655,3668,3635,
+3547,3436,3321,3185,3071,3007,3017,3084,3116,3127,3153,3193,3208,3131,3093,3226,3192,3073,3001,3010,
+2995,2672,2477,2248,2126,2058,1983,1887,1822,1762,1718,1675,1634,1610,1580,1540,1496,1460,1422,1381,
+1347,1322,1300,1278,1278,1269,1259,1239,1226,1248,1174,1086,1062,1057,1022,995,972,933,905,883,
+866,849,816,794,782,760,754,745,742,730,709,685,673,659,649,636,625,617,598,586,
+569,549,526,507,482,457,441,425,413,396,376,337,296,263,225,200,247,313,329,207,
+259,281,187,36,-3,32,23,-27,-53,-91,-133,-194,-214,-190,-189,-216,-275,-265,-255,-265,
+-280,-338,-396,-429,-431,-463,-492,-499,-509,-520,-545,-560,-546,-509,-564,-588,-625,-656,-686,-708,
+-729,-727,-724,-745,-763,-778,-792,-813,-830,-853,-865,-880,-891,-905,-915,-927,-937,-935,-942,-945,
+-957,-961,-963,-958,-956,-960,-955,-955,-954,-956,-954,-955,-948,-945,-939,-938,-938,-946,-943,-942,
+-940,-928,-931,-922,-916,-913,-915,-912,-909,-908,-902,-901,-901,-894,-888,-886,-881,-876,-863,-854,
+-853,-848,-842,-835,-827,-822,-809,-797,-790,-778,-766,-759,-752,-743,-736,-726,-718,-708,-697,-688,
+-677,-663,-648,-635,-612,-591,-572,-558,-538,-528,-517,-504,-491,-476,-466,-451,-438,-423,-417,-410,
+-403,-394,-387,-380,-378,-375,-369,-370,-360,-364,-364,-362,-360,-363,-358,-367,-368,-371,-365,-363,
+-365,-368,-378,-386,-389,-394,-391,-401,-413,-427,-438,-449,-456,-465,-475,-487,-498,-515,-519,-539,
+-569,-602,-600,-604,-622,-637,-642,-671,-695,-699,-699,-703,-713,-727,-725,-711,-707,-720,-713,-715,
+-717,-713,-708,-706,-705,-714,-724,-727,-721,-720,-762,-735,-715,-738,-742,-733,-730,-730,-729,-728,
+-726,-728,-727,-724,-723,-719,-714,-708,-702,-679,-677,-669,-659,-638,-627,-608,-593,-592,-579,-571,
+-569,-553,-535,-523,-511,-506,-498,-489,-473,-467,-445,-426,-417,-409,-395,-377,-353,-336,-314,-288,
+-259,-226,-194,-158,-122,-83,-40,8,54,99,145,202,261,319,376,443,514,585,656,724,
+789,846,897,943,977,994,988,963,922,910,1038,1307,1674,2044,2373,2624,3003,3444,3751,4024,
+3972,3860,3832,3935,4006,4055,4154,4288,4370,4450,4477,4556,4589,4619,4739,4804,4788,4828,4825,4786,
+4605,4372,3955,3683,3422,3241,2974,2745,2558,2468,2474,2505,2550,2582,2600,2600,2604,2602,2582,2567,
+2538,2480,2391,2295,2232,2190,2136,2076,2030,1987,1952,1931,1901,1868,1826,1816,1695,1571,1487,1422,
+1429,1372,1268,1171,1058,966,1005,899,653,472,351,248,160,51,-55,-149,-232,-314,-398,-453,
+-471,-502,-546,-608,-685,-742,-775,-796,-848,-900,-954,-987,-993,-983,-958,-931,-940,-965,-1001,-1057,
+-1099,-1149,-1209,-1267,-1315,-1429,-1507,-1518,-1533,-1622,-1639,-1601,-1544,-1449,-1350,-1277,-1235,-1227,-1234,-1257,
+-1268,-1288,-1315,-1339,-1344,-1328,-1305,-1297,-1291,-1357,-1361,-1345,-1319,-1286,-1231,-1129,-1002,-961,-987,-994,
+-929,-866,-866,-1011,-1099,-1158,-1200,-1226,-1253,-1277,-1285,-1277,-1257,-1233,-1214,-1188,-1159,-1125,-1095,-1069,
+-1039,-1000,-955,-918,-889,-862,-835,-787,-745,-751,-777,-752,-723,-706,-703,-710,-721,-724,-728,-727,
+-725,-714,-705,-694,-691,-696,-696,-686,-702,-690,-661,-663,-653,-649,-641,-624,-606,-593,-570,-556,
+-545,-522,-499,-474,-436,-407,-383,-351,-326,-288,-248,-211,-172,-132,-97,-73,-48,1,46,88,
+116,168,198,238,280,316,347,388,422,457,498,529,551,593,634,662,701,726,757,796,
+848,876,882,918,918,958,966,964,967,967,967,985,1003,1025,1045,1060,1060,1068,1086,1112,
+1140,1157,1178,1193,1189,1188,1211,1234,1229,1249,1254,1272,1298,1309,1315,1315,1328,1326,1321,1331,
+1320,1301,1298,1311,1309,1315,1319,1290,1290,1325,1327,1326,1306,1338,1319,1312,1305,1308,1299,1312,
+1307,1312,1316,1308,1319,1308,1309,1309,1305,1303,1306,1311,1315,1318,1324,1327,1329,1332,1332,1331,
+1334,1339,1348,1361,1378,1398,1417,1435,1451,1465,1472,1479,1487,1501,1505,1501,1492,1503,1535,1578,
+1631,1664,1705,1745,1797,1850,1863,1906,2043,2113,2101,2102,2137,2204,2266,2311,2341,2352,2334,2288,
+2235,2196,2145,2082,2013,1958,1921,1887,1838,1783,1721,1675,1620,1559,1501,1440,1391,1343,1287,1239,
+1195,1144,1075,989,898,820,753,697,656,633,612,589,554,510,470,446,427,407,380,335,
+283,225,174,141,115,109,99,70,22,-40,-96,-148,-192,-257,-333,-409,-480,-550,-639,-795,
+-848,-947,-955,-941,-934,-968,-1025,-1088,-1161,-1208,-1224,-1224,-1207,-1131,-1057,-981,-957,-1061,-1271,-1334,
+-1412,-1380,-1446,-1500,-1511,-1543,-1590,-1626,-1657,-1705,-1747,-1797,-1836,-1866,-1916,-1977,-2007,-2026,-2048,-2051,
+-2024,-2014,-2096,-2374,-2485,-2310,-2215,-2197,-2222,-2283,-2359,-2403,-2425,-2460,-2475,-2523,-2557,-2566,-2575,-2574,
+-2559,-2537,-2499,-2445,-2406,-2370,-2297,-2239,-2153,-2019,-1921,-1825,-1680,-1414,-1336,-1337,-1365,-1456,-1459,-1504,
+-1562,-1739,-1912,-2019,-2098,-2158,-2203,-2256,-2289,-2307,-2313,-2321,-2326,-2343,-2350,-2366,-2373,-2360,-2342,-2330,
+-2363,-2345,-2349,-2348,-2366,-2368,-2388,-2417,-2414,-2468,-2477,-2531,-2604,-2673,-2740,-2805,-2871,-2905,-2846,-2531,
+-2370,-2383,-2413,-2469,-2673,-2792,-2839,-2873,-2921,-2953,-3005,-3048,-3105,-3144,-3140,-3173,-3189,-3209,-3226,-3290,
+-3301,-3282,-3324,-3331,-3387,-3392,-3426,-3528,-3575,-3644,-3704,-3780,-3834,-3883,-3926,-4003,-4077,-4141,-4198,-4261,
+-4341,-4391,-4469,-4525,-4619,-4687,-4758,-4830,-4901,-4961,-5050,-5078,-5118,-5166,-5197,-5233,-5275,-5312,-5352,-5390,
+-5428,-5470,-5508,-5548,-5571,-5591,-5619,-5646,-5666,-5687,-5707,-5721,-5743,-5761,-5788,-5812,-5831,-5851,-5874,-5896,
+-5914,-5929,-5953,-5975,-5990,-6001,-6011,-6030,-6043,-6071,-6093,-6107,-6132,-6168,-6187,-6213,-6282,-6297,-6268,-6217,
+-6168,-6111,-6034,-5955,-5885,-5829,-5793,-5793,-5817,-5833,-5832,-5763,-5694,-5727,-5838,-5961,-6039,-6057,-5986,-5872,
+-5849,-5793,-5785,-5816,-5832,-5785,-5685,-5599,-5547,-5529,-5508,-5414,-5338,-5247,-5231,-5250,-5245,-5176,-5043,-4887,
+-4786,-4752,-4752,-4727,-4658,-4532,-4400,-4293,-4225,-4200,-4221,-4262,-4205,-4137,-4170,-4081,-4016,-3976,-3925,-3861,
+-3792,-3740,-3655,-3575,-3461,-3335,-3241,-3181,-3143,-3075,-3022,-2989,-2980,-2970,-2954,-2925,-2879,-2835,-2756,-2658,
+-2551,-2454,-2360,-2244,-2102,-2100,-2034,-1869,-1821,-1778,-1682,-1585,-1501,-1379,-1251,-1200,-1188,-1254,-1235,-1181,
+-1141,-1108,-1056,-1007,-948,-853,-744,-621,-554,-446,-330,-183,-142,-25,-77,-104,-45,-10,32,94,
+156,217,271,330,390,447,496,546,601,665,742,823,905,986,1071,1192,1337,1468,1572,1692,
+1807,1926,2023,2114,2232,2398,2524,2617,2666,2726,2790,2858,2929,2996,3058,3135,3197,3238,3265,3296,
+3345,3403,3463,3542,3609,3637,3682,3748,3813,3861,3880,3851,3824,3842,3869,3938,3961,3957,4035,4132,
+4201,4223,4260,4297,4343,4396,4457,4527,4586,4653,4713,4800,4846,4873,4901,4928,4955,4988,5019,5051,
+5077,5127,5185,5242,5308,5361,5407,5412,5416,5417,5413,5410,5423,5436,5447,5459,5489,5535,5581,5626,
+5671,5724,5724,5769,5871,5937,5956,5966,6056,6122,6199,6283,6309,6402,6466,6521,6559,6583,6599,6611,
+6609,6547,6403,6339,6374,6349,6353,6413,6442,6451,6447,6451,6438,6391,6351,6313,6278,6242,6233,6232,
+6211,6186,6178,6172,6173,6185,6203,6223,6237,6258,6272,6283,6285,6286,6303,6305,6310,6321,6334,6347,
+6395,6472,6479,6452,6401,6363,6370,6341,6323,6370,6399,6457,6481,6511,6490,6387,6347,6481,6457,6366,
+6374,6447,6417,6377,6243,6185,6181,6237,6190,6206,6202,6131,6147,6166,6190,6116,6032,5990,5967,6025,
+6038,5884,5762,5563,5275,5322,5564,5806,5952,6132,6288,6439,6421,6430,6445,6463,6470,6476,6452,6411,
+6419,6398,6360,6337,6320,6279,6228,6181,6143,6094,6059,6012,5984,5960,5919,5873,5834,5792,5755,5708,
+5672,5628,5582,5543,5493,5446,5405,5364,5328,5280,5249,5205,5166,5122,5072,5042,5030,4957,4902,4858,
+4816,4780,4751,4710,4683,4637,4585,4525,4480,4502,4474,4416,4367,4337,4295,4244,4166,3952,3823,3865,
+3871,3727,3548,3325,3123,2970,2848,2799,2824,2856,2872,2914,2988,3015,3039,3036,3077,3022,3008,3035,
+2890,2748,2568,2392,2279,2178,2169,2046,1892,1824,1768,1725,1679,1639,1607,1570,1525,1487,1442,1396,
+1359,1331,1310,1289,1273,1264,1253,1231,1198,1181,1165,1146,1068,1045,1029,994,985,960,925,892,
+868,857,843,819,792,777,765,747,738,723,722,712,688,679,664,648,632,617,610,598,
+587,567,549,530,510,493,470,452,434,398,370,337,302,278,256,213,194,213,215,304,
+149,119,216,244,109,66,101,99,72,18,-18,-50,-102,-90,-49,-95,-178,-223,-198,-184,
+-252,-305,-356,-377,-365,-410,-469,-463,-497,-513,-531,-557,-533,-567,-567,-585,-613,-636,-636,-683,
+-718,-741,-754,-765,-784,-805,-818,-838,-853,-867,-882,-895,-911,-921,-933,-943,-951,-959,-961,-962,
+-962,-964,-964,-968,-964,-959,-958,-957,-958,-960,-966,-964,-959,-952,-948,-943,-948,-950,-954,-951,
+-945,-939,-934,-932,-941,-930,-924,-924,-922,-915,-913,-905,-899,-895,-888,-884,-880,-872,-871,-862,
+-855,-854,-844,-835,-827,-816,-805,-797,-791,-779,-768,-753,-738,-730,-725,-717,-708,-701,-689,-679,
+-674,-669,-650,-640,-626,-610,-585,-565,-547,-524,-513,-499,-487,-468,-460,-444,-436,-418,-412,-402,
+-395,-391,-374,-367,-361,-360,-355,-355,-352,-345,-346,-345,-344,-342,-342,-339,-343,-345,-348,-347,
+-344,-350,-353,-355,-362,-367,-372,-374,-382,-386,-398,-406,-420,-438,-458,-473,-484,-497,-520,-518,
+-543,-567,-589,-596,-611,-621,-626,-634,-648,-651,-662,-672,-677,-698,-703,-692,-734,-711,-707,-690,
+-693,-695,-697,-690,-678,-682,-686,-697,-710,-708,-696,-707,-707,-711,-715,-711,-706,-707,-710,-714,
+-711,-707,-705,-705,-707,-704,-705,-701,-687,-678,-677,-674,-657,-643,-621,-616,-604,-593,-582,-561,
+-550,-546,-538,-527,-513,-506,-499,-487,-478,-473,-454,-437,-423,-413,-405,-389,-365,-344,-322,-298,
+-273,-246,-212,-179,-140,-109,-72,-23,21,61,103,160,218,272,330,392,461,529,599,673,
+740,808,872,932,991,1037,1063,1072,1061,1030,978,977,1152,1483,1841,2158,2462,2730,3071,3559,
+3920,3997,3867,3858,3872,3962,4046,4169,4270,4345,4364,4367,4430,4452,4542,4619,4707,4787,4845,4896,
+4964,4876,4571,4109,3876,3600,3408,2988,2677,2513,2386,2378,2395,2435,2477,2513,2527,2527,2514,2494,
+2490,2475,2437,2359,2269,2209,2173,2135,2086,2048,2003,1961,1933,1924,1899,1874,1868,1778,1655,1543,
+1458,1395,1355,1274,1215,1102,1000,994,925,680,458,327,211,111,38,-69,-144,-210,-276,-352,
+-399,-426,-461,-501,-561,-628,-668,-687,-707,-744,-784,-842,-884,-903,-900,-882,-867,-891,-925,-968,
+-1036,-1080,-1138,-1248,-1318,-1377,-1441,-1491,-1504,-1533,-1611,-1606,-1571,-1514,-1449,-1343,-1252,-1223,-1229,-1230,
+-1256,-1271,-1292,-1334,-1338,-1330,-1312,-1272,-1260,-1251,-1305,-1325,-1292,-1258,-1235,-1183,-1092,-993,-946,-1008,
+-985,-929,-869,-883,-1012,-1107,-1194,-1251,-1283,-1296,-1307,-1304,-1285,-1260,-1230,-1200,-1170,-1141,-1104,-1079,
+-1054,-1024,-986,-942,-906,-874,-846,-823,-792,-747,-697,-759,-737,-715,-692,-683,-688,-694,-704,-714,
+-717,-717,-711,-703,-698,-700,-708,-701,-693,-690,-694,-682,-685,-674,-662,-643,-623,-603,-596,-579,
+-563,-539,-502,-501,-479,-438,-418,-393,-362,-342,-306,-284,-253,-211,-150,-107,-81,-37,-3,33,
+61,116,143,202,231,272,306,350,373,418,460,493,518,520,543,606,643,694,733,774,
+815,849,886,934,939,933,973,977,959,961,972,980,1001,1021,1045,1058,1054,1068,1090,1113,
+1133,1157,1175,1180,1192,1187,1185,1205,1226,1232,1240,1252,1275,1295,1316,1308,1311,1340,1348,1322,
+1314,1307,1319,1326,1307,1311,1332,1322,1326,1348,1364,1361,1336,1322,1339,1309,1324,1322,1316,1312,
+1350,1340,1335,1328,1337,1335,1335,1330,1331,1330,1326,1327,1330,1332,1340,1343,1346,1350,1353,1353,
+1353,1351,1354,1361,1375,1392,1410,1426,1442,1455,1465,1470,1477,1486,1500,1502,1499,1501,1529,1569,
+1615,1648,1679,1722,1765,1828,1884,1909,1954,2063,2111,2104,2129,2204,2339,2370,2399,2389,2375,2370,
+2281,2212,2167,2114,2048,1985,1923,1882,1844,1806,1762,1707,1664,1613,1561,1505,1448,1395,1345,1292,
+1240,1194,1138,1072,998,918,852,797,751,711,676,645,611,574,529,503,486,465,439,417,
+387,347,301,249,206,170,153,152,136,84,19,-38,-95,-153,-212,-296,-400,-506,-614,-715,
+-790,-867,-890,-896,-895,-901,-936,-975,-1042,-1101,-1149,-1174,-1182,-1186,-1129,-1069,-1025,-990,-1001,-1153,
+-1283,-1380,-1372,-1397,-1439,-1456,-1491,-1543,-1595,-1613,-1656,-1707,-1770,-1814,-1851,-1907,-1955,-1986,-2009,-2031,
+-2029,-1987,-1967,-2037,-2290,-2464,-2308,-2203,-2168,-2173,-2239,-2316,-2369,-2398,-2427,-2437,-2446,-2523,-2546,-2555,
+-2549,-2520,-2478,-2430,-2374,-2336,-2267,-2171,-2100,-2004,-1935,-1868,-1805,-1662,-1431,-1307,-1316,-1367,-1392,-1431,
+-1485,-1529,-1684,-1847,-1957,-2032,-2092,-2149,-2207,-2237,-2244,-2260,-2267,-2274,-2273,-2277,-2301,-2299,-2289,-2262,
+-2247,-2268,-2261,-2270,-2271,-2277,-2305,-2319,-2351,-2390,-2415,-2455,-2500,-2548,-2614,-2688,-2758,-2816,-2836,-2740,
+-2434,-2283,-2295,-2338,-2397,-2593,-2706,-2759,-2802,-2843,-2885,-2928,-2977,-3022,-3027,-3051,-3074,-3087,-3126,-3159,
+-3146,-3182,-3223,-3228,-3239,-3278,-3346,-3391,-3392,-3460,-3541,-3609,-3680,-3737,-3775,-3842,-3911,-3969,-4013,-4098,
+-4182,-4256,-4316,-4364,-4429,-4506,-4581,-4661,-4733,-4787,-4899,-4950,-5000,-5049,-5085,-5115,-5145,-5183,-5215,-5252,
+-5285,-5320,-5361,-5394,-5422,-5452,-5482,-5502,-5530,-5555,-5579,-5598,-5615,-5641,-5666,-5693,-5716,-5729,-5758,-5784,
+-5806,-5822,-5839,-5869,-5894,-5906,-5913,-5917,-5959,-5981,-6000,-6028,-6054,-6084,-6098,-6129,-6175,-6195,-6217,-6204,
+-6157,-6105,-6033,-5951,-5873,-5801,-5750,-5704,-5691,-5723,-5759,-5764,-5700,-5640,-5682,-5821,-5939,-6020,-6034,-5957,
+-5808,-5801,-5764,-5736,-5751,-5780,-5733,-5642,-5563,-5518,-5512,-5477,-5386,-5322,-5235,-5234,-5256,-5242,-5163,-5021,
+-4872,-4742,-4647,-4679,-4750,-4709,-4585,-4434,-4341,-4299,-4274,-4275,-4309,-4253,-4180,-4203,-4123,-4027,-4015,-3985,
+-3891,-3836,-3782,-3693,-3621,-3548,-3459,-3377,-3267,-3239,-3176,-3136,-3103,-3085,-3065,-3038,-3013,-2984,-2926,-2843,
+-2746,-2647,-2561,-2467,-2263,-2241,-2222,-2147,-2039,-1964,-1891,-1798,-1710,-1626,-1525,-1449,-1351,-1346,-1371,-1335,
+-1294,-1253,-1210,-1160,-1110,-1050,-955,-836,-714,-641,-556,-440,-302,-237,-187,-191,-138,-49,-124,-81,
+-10,59,119,177,236,295,347,393,443,498,565,641,723,801,877,944,1095,1210,1348,1488,
+1616,1752,1867,1996,2136,2270,2395,2497,2578,2637,2702,2766,2840,2907,2964,3030,3096,3145,3179,3206,
+3244,3303,3375,3454,3517,3586,3625,3654,3708,3759,3791,3829,3829,3776,3746,3751,3796,3838,3877,3947,
+4013,4050,4080,4133,4185,4231,4276,4339,4397,4453,4515,4587,4657,4708,4745,4777,4809,4852,4879,4922,
+4965,5001,5048,5112,5169,5226,5292,5346,5374,5383,5371,5360,5360,5365,5372,5378,5388,5412,5448,5484,
+5522,5579,5627,5632,5700,5794,5847,5851,5878,5959,6032,6121,6225,6250,6323,6407,6451,6492,6521,6558,
+6573,6575,6533,6412,6291,6336,6317,6335,6373,6416,6442,6435,6445,6465,6460,6425,6394,6343,6310,6293,
+6283,6259,6223,6186,6160,6151,6151,6163,6179,6193,6214,6227,6237,6251,6247,6260,6267,6275,6288,6296,
+6309,6374,6415,6437,6395,6330,6331,6440,6386,6329,6360,6426,6438,6478,6494,6441,6345,6327,6446,6448,
+6329,6402,6382,6331,6253,6164,6136,6132,6160,6136,6143,6184,6145,6208,6272,6278,6219,6121,6064,6010,
+5961,5916,5812,5635,5521,5418,5675,5922,6017,6009,6023,6187,6442,6391,6431,6476,6507,6514,6516,6496,
+6458,6447,6426,6386,6370,6343,6308,6266,6222,6174,6127,6098,6051,6007,6001,5963,5914,5874,5836,5793,
+5754,5708,5669,5627,5586,5542,5497,5456,5420,5380,5337,5305,5256,5208,5156,5106,5056,5048,4998,4941,
+4902,4866,4820,4790,4763,4721,4685,4651,4609,4557,4548,4513,4473,4443,4393,4346,4285,4226,4115,4078,
+4062,4039,3959,3877,3649,3364,3080,2758,2553,2525,2624,2758,2817,2883,2918,2902,2900,2974,2925,2825,
+2788,2703,2572,2451,2340,2240,2164,2110,2010,1905,1846,1784,1742,1689,1641,1600,1561,1519,1475,1429,
+1378,1348,1334,1317,1296,1276,1254,1239,1211,1178,1155,1115,1079,1040,1033,1008,976,968,947,920,
+893,869,861,847,822,794,762,745,732,710,719,721,706,691,673,655,639,623,616,606,
+601,594,577,559,553,536,518,497,477,433,397,370,351,333,295,268,236,211,196,176,
+150,83,53,161,245,202,139,184,197,164,92,33,-44,-95,-122,-146,-172,-194,-212,-208,
+-271,-297,-303,-327,-362,-406,-450,-470,-463,-497,-487,-533,-539,-519,-544,-562,-581,-610,-630,-649,
+-681,-718,-754,-753,-758,-753,-837,-866,-886,-897,-905,-914,-915,-935,-961,-973,-971,-969,-980,-988,
+-994,-985,-994,-992,-989,-986,-979,-976,-975,-976,-978,-975,-967,-956,-945,-944,-944,-948,-947,-952,
+-952,-946,-943,-942,-939,-942,-936,-927,-922,-916,-911,-902,-893,-880,-877,-871,-873,-871,-857,-856,
+-846,-852,-848,-839,-827,-820,-807,-797,-786,-780,-768,-761,-747,-725,-711,-702,-698,-692,-683,-671,
+-657,-646,-638,-624,-619,-602,-592,-580,-563,-538,-516,-495,-484,-468,-453,-439,-428,-417,-412,-405,
+-391,-381,-373,-365,-354,-351,-347,-342,-341,-332,-330,-329,-325,-326,-326,-325,-325,-325,-326,-329,
+-333,-332,-334,-337,-335,-339,-346,-349,-363,-374,-380,-380,-386,-395,-413,-428,-451,-481,-492,-504,
+-518,-529,-548,-563,-571,-578,-591,-596,-605,-628,-630,-639,-640,-657,-666,-703,-692,-683,-696,-685,
+-678,-678,-680,-673,-674,-662,-662,-667,-676,-694,-695,-690,-681,-675,-676,-677,-677,-678,-684,-690,
+-696,-701,-699,-697,-689,-691,-690,-693,-683,-678,-677,-672,-661,-652,-635,-619,-607,-601,-586,-572,
+-553,-541,-532,-528,-520,-511,-496,-484,-474,-465,-452,-439,-426,-416,-405,-394,-374,-350,-329,-306,
+-284,-260,-232,-196,-162,-126,-93,-50,-5,34,74,121,173,229,284,343,412,478,548,620,
+693,763,833,901,970,1032,1078,1116,1138,1144,1139,1097,1046,1059,1257,1572,1917,2223,2510,2824,
+3232,3648,3869,3818,3829,3889,3903,4020,4168,4257,4315,4328,4322,4357,4358,4448,4550,4667,4783,4824,
+4946,5007,4975,4881,4462,4088,3753,3477,3062,2693,2500,2374,2322,2325,2340,2366,2413,2447,2445,2430,
+2428,2439,2448,2435,2382,2309,2256,2226,2182,2124,2082,2037,1990,1957,1959,1945,1925,1879,1835,1723,
+1610,1529,1384,1322,1261,1199,1086,995,907,779,601,421,298,204,108,7,-57,-110,-154,-212,
+-273,-317,-329,-378,-438,-493,-533,-570,-602,-619,-615,-657,-727,-775,-801,-807,-813,-821,-858,-914,
+-975,-1035,-1070,-1155,-1259,-1372,-1429,-1430,-1435,-1454,-1504,-1589,-1574,-1528,-1444,-1413,-1325,-1257,-1226,-1218,
+-1220,-1229,-1243,-1282,-1319,-1330,-1324,-1312,-1286,-1249,-1215,-1232,-1227,-1214,-1197,-1174,-1090,-1008,-968,-979,
+-1021,-994,-948,-866,-844,-1006,-1121,-1214,-1280,-1323,-1331,-1338,-1329,-1299,-1259,-1224,-1182,-1149,-1127,-1094,
+-1069,-1040,-1006,-973,-938,-904,-870,-835,-809,-785,-777,-770,-748,-728,-718,-698,-686,-683,-685,-698,
+-707,-709,-706,-700,-707,-703,-700,-711,-718,-710,-708,-699,-688,-674,-679,-660,-652,-643,-617,-610,
+-580,-567,-559,-529,-495,-467,-450,-421,-396,-374,-328,-293,-253,-224,-183,-164,-130,-100,-66,-21,
+24,57,100,133,165,212,269,292,318,367,390,431,487,524,551,581,619,651,691,721,
+753,775,818,867,893,921,936,969,970,970,975,978,990,1018,1032,1045,1062,1083,1078,1092,
+1114,1130,1145,1164,1168,1171,1182,1187,1197,1214,1232,1240,1245,1258,1276,1299,1302,1315,1352,1339,
+1315,1313,1321,1346,1393,1352,1345,1335,1338,1352,1338,1332,1332,1324,1337,1334,1342,1334,1334,1332,
+1350,1348,1352,1353,1351,1356,1349,1353,1354,1351,1354,1347,1347,1349,1356,1360,1364,1366,1370,1376,
+1375,1376,1374,1375,1380,1390,1401,1416,1431,1443,1453,1459,1466,1474,1482,1495,1503,1511,1535,1559,
+1599,1630,1659,1688,1732,1794,1868,1983,1977,2052,2115,2132,2117,2145,2345,2440,2417,2419,2392,2365,
+2326,2240,2166,2118,2067,2001,1945,1890,1847,1816,1785,1743,1695,1658,1613,1564,1512,1457,1398,1350,
+1296,1247,1193,1141,1074,1006,940,883,838,801,764,720,675,638,603,563,529,512,501,484,
+468,453,433,396,344,293,250,208,180,159,114,64,14,-29,-74,-145,-247,-340,-454,-534,
+-637,-737,-856,-885,-870,-873,-887,-902,-920,-956,-1009,-1050,-1087,-1140,-1179,-1162,-1105,-1084,-1044,-1018,
+-1144,-1251,-1320,-1328,-1352,-1374,-1402,-1445,-1489,-1555,-1584,-1634,-1683,-1736,-1782,-1807,-1880,-1936,-1968,-1989,
+-2009,-2001,-1955,-1924,-2000,-2261,-2410,-2292,-2170,-2131,-2133,-2186,-2273,-2337,-2372,-2398,-2405,-2391,-2472,-2509,
+-2511,-2512,-2484,-2428,-2362,-2290,-2216,-2117,-1990,-1938,-1908,-1860,-1814,-1749,-1612,-1473,-1277,-1277,-1325,-1359,
+-1420,-1416,-1480,-1623,-1795,-1921,-1989,-2044,-2095,-2143,-2179,-2194,-2209,-2221,-2218,-2221,-2235,-2238,-2225,-2219,
+-2193,-2168,-2187,-2212,-2215,-2217,-2219,-2237,-2260,-2303,-2345,-2393,-2417,-2438,-2478,-2542,-2634,-2701,-2756,-2748,
+-2572,-2269,-2189,-2211,-2263,-2310,-2448,-2628,-2683,-2720,-2767,-2806,-2852,-2898,-2911,-2933,-2956,-2980,-3027,-3030,
+-3057,-3089,-3121,-3127,-3143,-3166,-3196,-3199,-3261,-3311,-3351,-3417,-3504,-3551,-3603,-3682,-3754,-3809,-3855,-3929,
+-3998,-4063,-4142,-4206,-4274,-4335,-4405,-4475,-4554,-4628,-4722,-4798,-4865,-4907,-4967,-5001,-5039,-5070,-5112,-5141,
+-5163,-5194,-5222,-5248,-5284,-5320,-5337,-5363,-5386,-5413,-5445,-5470,-5485,-5510,-5537,-5566,-5590,-5610,-5630,-5662,
+-5689,-5715,-5738,-5759,-5786,-5811,-5824,-5831,-5850,-5883,-5909,-5942,-5978,-6006,-6029,-6043,-6081,-6123,-6122,-6125,
+-6117,-6104,-6062,-5989,-5912,-5840,-5763,-5699,-5659,-5641,-5654,-5687,-5688,-5637,-5612,-5655,-5793,-5911,-5995,-5981,
+-5871,-5700,-5715,-5710,-5710,-5725,-5734,-5698,-5607,-5538,-5492,-5487,-5452,-5371,-5321,-5238,-5237,-5261,-5235,-5156,
+-5024,-4873,-4793,-4787,-4813,-4806,-4740,-4596,-4464,-4399,-4377,-4359,-4355,-4369,-4305,-4219,-4239,-4176,-4059,-4045,
+-4057,-3918,-3880,-3824,-3745,-3675,-3621,-3541,-3481,-3411,-3342,-3285,-3246,-3225,-3192,-3163,-3126,-3090,-3045,-2992,
+-2925,-2833,-2742,-2660,-2579,-2478,-2402,-2328,-2246,-2163,-2079,-1998,-1906,-1821,-1739,-1665,-1592,-1542,-1511,-1473,
+-1419,-1393,-1358,-1307,-1256,-1205,-1140,-1049,-917,-793,-720,-656,-590,-522,-425,-387,-365,-261,-159,-242,
+-187,-111,-43,16,74,138,194,243,291,344,402,466,540,621,699,766,821,974,1110,1273,
+1423,1572,1698,1817,1972,2136,2257,2363,2465,2544,2606,2667,2736,2797,2857,2916,2959,3021,3070,3111,
+3151,3189,3239,3340,3431,3505,3551,3593,3624,3666,3694,3722,3763,3753,3697,3675,3675,3683,3711,3765,
+3844,3907,3949,3990,4007,4089,4131,4170,4230,4286,4330,4373,4439,4509,4573,4625,4666,4707,4743,4782,
+4825,4863,4910,4966,5036,5098,5154,5215,5274,5320,5337,5312,5300,5302,5305,5306,5305,5318,5344,5378,
+5402,5436,5495,5536,5560,5630,5710,5753,5764,5804,5897,5975,6076,6152,6179,6261,6356,6404,6440,6473,
+6505,6547,6529,6515,6406,6263,6275,6261,6308,6342,6387,6413,6424,6440,6463,6474,6452,6433,6414,6399,
+6386,6379,6355,6313,6265,6210,6170,6151,6147,6159,6170,6183,6183,6191,6201,6212,6214,6219,6227,6255,
+6266,6281,6319,6375,6375,6346,6331,6283,6280,6286,6309,6347,6381,6405,6415,6413,6373,6295,6269,6339,
+6400,6288,6371,6336,6222,6144,6107,6097,6085,6100,6132,6141,6159,6221,6292,6372,6348,6286,6204,6124,
+6037,5935,5788,5616,5476,5375,5422,5790,6202,6233,6182,6066,6175,6485,6439,6437,6499,6532,6538,6536,
+6523,6501,6480,6454,6420,6408,6377,6338,6297,6264,6214,6167,6132,6100,6050,6033,5992,5945,5905,5865,
+5825,5793,5749,5717,5674,5631,5590,5547,5498,5458,5428,5375,5333,5289,5245,5195,5154,5101,5057,5014,
+4981,4929,4896,4851,4826,4804,4755,4718,4686,4666,4619,4579,4574,4499,4482,4444,4403,4361,4311,4263,
+4205,4157,4117,4048,3966,3843,3689,3557,3164,2595,2316,2370,2670,2718,2813,2871,2877,2878,2931,2856,
+2714,2626,2542,2456,2368,2287,2208,2142,2067,1985,1911,1845,1798,1749,1691,1640,1596,1558,1514,1473,
+1423,1375,1344,1331,1311,1303,1318,1234,1220,1197,1167,1125,1090,1057,1021,1018,995,977,965,949,
+929,901,884,873,852,828,797,767,752,749,712,724,703,717,694,661,640,631,652,638,
+631,630,621,605,604,590,561,528,493,467,442,404,377,355,330,315,287,256,224,203,
+183,150,121,100,84,152,227,230,297,283,310,202,100,-9,-90,-131,-172,-202,-212,-203,
+-231,-275,-247,-264,-288,-322,-400,-450,-452,-393,-470,-463,-533,-464,-500,-513,-529,-568,-587,-617,
+-636,-666,-714,-752,-771,-787,-801,-848,-884,-910,-917,-920,-934,-915,-967,-997,-998,-976,-956,-979,
+-1001,-1004,-1007,-1014,-1015,-1009,-1006,-1003,-1001,-995,-990,-985,-980,-976,-963,-952,-947,-946,-943,-944,
+-950,-954,-954,-951,-947,-941,-935,-947,-931,-924,-918,-912,-909,-897,-884,-872,-862,-865,-858,-857,
+-857,-847,-842,-833,-822,-809,-803,-795,-787,-777,-768,-759,-752,-740,-724,-707,-694,-684,-676,-666,
+-658,-644,-628,-612,-600,-590,-577,-568,-559,-545,-523,-511,-494,-476,-455,-445,-434,-421,-409,-397,
+-385,-375,-369,-359,-350,-341,-336,-333,-330,-319,-313,-314,-314,-312,-310,-313,-314,-313,-316,-312,
+-315,-315,-319,-321,-324,-322,-324,-324,-329,-340,-353,-368,-371,-373,-380,-396,-413,-429,-451,-465,
+-472,-479,-490,-505,-521,-536,-553,-566,-569,-581,-601,-615,-623,-624,-629,-648,-667,-660,-649,-642,
+-637,-638,-641,-645,-656,-672,-674,-654,-653,-656,-662,-633,-671,-667,-652,-650,-651,-654,-657,-662,
+-674,-680,-686,-681,-687,-683,-677,-673,-668,-659,-677,-686,-656,-642,-642,-637,-626,-612,-593,-577,
+-561,-549,-536,-522,-512,-510,-493,-487,-469,-454,-445,-440,-430,-418,-404,-393,-380,-358,-333,-310,
+-289,-268,-242,-215,-183,-148,-111,-74,-32,7,44,88,137,183,239,302,366,431,494,562,
+636,708,778,852,920,991,1056,1104,1146,1187,1215,1229,1209,1164,1099,1099,1302,1607,1949,2307,
+2759,2996,3364,3584,3649,3733,3802,3889,4002,4136,4163,4224,4261,4285,4305,4374,4460,4540,4637,4717,
+4793,4880,4920,4913,4879,4713,4348,3910,3567,3226,2841,2640,2492,2359,2316,2293,2286,2322,2362,2365,
+2361,2382,2408,2446,2467,2436,2383,2345,2313,2266,2196,2142,2102,2051,2017,2023,2008,1977,1922,1839,
+1766,1694,1580,1442,1321,1259,1172,1074,977,838,686,544,412,309,218,108,65,36,-28,-68,
+-93,-135,-193,-258,-319,-364,-414,-445,-483,-522,-534,-530,-594,-646,-687,-715,-728,-751,-778,-824,
+-894,-963,-1036,-1108,-1162,-1226,-1371,-1422,-1437,-1441,-1456,-1504,-1544,-1510,-1443,-1404,-1367,-1312,-1254,-1224,
+-1197,-1210,-1216,-1217,-1239,-1296,-1314,-1317,-1304,-1242,-1216,-1165,-1149,-1140,-1103,-1081,-1042,-976,-956,-983,
+-1031,-1038,-1031,-966,-831,-760,-942,-1106,-1208,-1291,-1339,-1364,-1361,-1339,-1305,-1264,-1211,-1168,-1140,-1109,
+-1076,-1045,-1011,-979,-952,-927,-899,-865,-833,-802,-780,-778,-766,-739,-729,-713,-701,-690,-680,-677,
+-686,-695,-700,-697,-703,-706,-711,-706,-705,-704,-717,-712,-724,-705,-689,-685,-678,-675,-667,-650,
+-628,-595,-566,-535,-533,-516,-484,-457,-436,-404,-363,-349,-307,-283,-253,-206,-164,-135,-87,-50,
+-25,22,50,88,119,135,185,237,287,297,351,409,433,476,511,546,576,620,646,680,
+709,732,766,806,828,868,915,929,974,972,964,966,976,985,1007,1021,1037,1053,1066,1081,
+1092,1106,1123,1144,1153,1172,1162,1195,1218,1196,1218,1226,1241,1248,1256,1282,1287,1292,1305,1319,
+1319,1318,1319,1295,1333,1414,1352,1321,1322,1339,1329,1343,1362,1355,1360,1363,1360,1366,1357,1361,
+1359,1348,1363,1365,1359,1370,1364,1362,1368,1377,1370,1370,1372,1374,1373,1374,1377,1380,1385,1389,
+1393,1394,1398,1397,1399,1399,1405,1413,1420,1432,1442,1450,1458,1465,1468,1474,1491,1503,1523,1548,
+1574,1605,1636,1660,1688,1745,1822,1914,1975,2044,2140,2183,2179,2157,2176,2337,2426,2426,2413,2380,
+2326,2253,2182,2119,2076,2018,1951,1904,1868,1827,1804,1772,1743,1699,1664,1618,1571,1523,1470,1410,
+1365,1312,1257,1210,1156,1093,1029,966,915,875,838,801,751,709,672,644,601,564,554,551,
+546,531,524,514,473,422,357,306,243,193,161,123,81,52,23,-4,-72,-155,-259,-355,
+-471,-591,-726,-826,-874,-877,-883,-859,-850,-867,-887,-911,-943,-1005,-1111,-1189,-1213,-1159,-1120,-1072,
+-1037,-1149,-1219,-1194,-1239,-1279,-1311,-1347,-1404,-1458,-1464,-1547,-1633,-1690,-1741,-1778,-1814,-1871,-1931,-1964,
+-1974,-1978,-1947,-1895,-1884,-1994,-2225,-2364,-2261,-2137,-2111,-2116,-2123,-2205,-2297,-2343,-2357,-2353,-2346,-2392,
+-2454,-2495,-2511,-2468,-2385,-2278,-2149,-2032,-1922,-1866,-1860,-1826,-1790,-1754,-1665,-1561,-1450,-1321,-1230,-1234,
+-1357,-1448,-1373,-1400,-1504,-1711,-1865,-1941,-1985,-2029,-2083,-2121,-2150,-2164,-2163,-2169,-2180,-2178,-2184,-2178,
+-2160,-2120,-2099,-2112,-2143,-2155,-2157,-2179,-2180,-2206,-2244,-2297,-2333,-2354,-2375,-2415,-2513,-2577,-2612,-2657,
+-2655,-2482,-2201,-2122,-2138,-2191,-2249,-2339,-2510,-2598,-2645,-2704,-2747,-2745,-2792,-2823,-2837,-2871,-2928,-2934,
+-2959,-2969,-3016,-3035,-3054,-3062,-3078,-3114,-3128,-3143,-3213,-3256,-3325,-3408,-3439,-3529,-3620,-3650,-3703,-3758,
+-3806,-3891,-3968,-4035,-4108,-4172,-4233,-4301,-4387,-4457,-4541,-4621,-4713,-4766,-4822,-4864,-4884,-4930,-4969,-5013,
+-5054,-5074,-5098,-5121,-5154,-5196,-5209,-5234,-5252,-5282,-5309,-5339,-5362,-5380,-5408,-5439,-5467,-5494,-5512,-5537,
+-5568,-5596,-5623,-5649,-5672,-5704,-5731,-5743,-5749,-5784,-5825,-5860,-5894,-5936,-5965,-5974,-5983,-6022,-6061,-6049,
+-6015,-6014,-6041,-6038,-5964,-5892,-5832,-5766,-5705,-5655,-5625,-5606,-5634,-5619,-5585,-5561,-5629,-5755,-5876,-5955,
+-5915,-5776,-5612,-5667,-5690,-5690,-5697,-5699,-5660,-5581,-5518,-5475,-5462,-5431,-5362,-5330,-5257,-5242,-5252,-5221,
+-5134,-4977,-4826,-4791,-4856,-4894,-4852,-4740,-4592,-4480,-4453,-4449,-4435,-4418,-4407,-4350,-4279,-4287,-4212,-4126,
+-4095,-4095,-3932,-3915,-3886,-3822,-3742,-3675,-3631,-3558,-3477,-3439,-3382,-3338,-3321,-3297,-3253,-3209,-3155,-3104,
+-3045,-2967,-2911,-2833,-2750,-2670,-2587,-2506,-2420,-2334,-2253,-2176,-2096,-2009,-1926,-1843,-1765,-1693,-1646,-1583,
+-1565,-1533,-1495,-1458,-1400,-1345,-1289,-1213,-1129,-996,-883,-817,-815,-794,-737,-650,-579,-528,-425,-358,
+-357,-292,-216,-154,-93,-32,29,86,131,183,242,303,368,444,523,600,659,751,895,1089,
+1198,1351,1502,1631,1788,1980,2125,2235,2332,2420,2492,2549,2603,2659,2714,2768,2830,2871,2920,2967,
+3025,3075,3128,3207,3295,3385,3458,3514,3556,3587,3610,3630,3636,3646,3647,3629,3620,3608,3599,3629,
+3693,3752,3805,3854,3878,3900,3975,4024,4071,4133,4175,4209,4246,4294,4359,4440,4512,4563,4605,4653,
+4698,4734,4768,4814,4871,4954,5023,5084,5148,5205,5227,5233,5228,5239,5250,5252,5246,5249,5264,5284,
+5317,5354,5395,5431,5463,5500,5554,5633,5685,5689,5751,5843,5907,6018,6077,6114,6213,6317,6368,6393,
+6423,6447,6487,6477,6474,6409,6243,6203,6189,6251,6319,6364,6395,6400,6424,6444,6455,6448,6434,6418,
+6422,6422,6420,6426,6401,6355,6302,6243,6192,6169,6171,6166,6158,6148,6134,6142,6164,6182,6199,6203,
+6203,6222,6243,6264,6314,6321,6333,6283,6274,6259,6290,6312,6320,6333,6339,6346,6348,6311,6258,6243,
+6309,6288,6267,6304,6280,6175,6098,6073,6056,6049,6069,6114,6153,6162,6249,6322,6347,6303,6231,6163,
+6082,5991,5900,5778,5677,5567,5546,5656,5929,6330,6406,6335,6152,6316,6554,6521,6454,6511,6547,6552,
+6556,6532,6512,6494,6473,6463,6440,6406,6372,6337,6298,6238,6197,6167,6127,6082,6068,6022,5981,5951,
+5907,5870,5835,5801,5762,5708,5665,5626,5583,5531,5487,5450,5387,5327,5284,5255,5229,5188,5133,5091,
+5053,5012,4958,4914,4875,4820,4807,4786,4754,4728,4687,4663,4607,4580,4541,4489,4469,4455,4421,4393,
+4331,4274,4238,4199,4134,4064,3970,3856,3713,3494,2994,2471,2219,2310,2521,2729,2845,2880,2873,2823,
+2744,2660,2579,2497,2415,2332,2256,2187,2125,2061,1987,1921,1842,1790,1736,1687,1648,1603,1557,1512,
+1483,1424,1381,1350,1328,1307,1262,1239,1212,1202,1187,1162,1120,1079,1064,1029,1008,993,988,978,
+953,934,914,898,881,859,836,818,779,755,744,727,717,721,739,735,662,649,650,650,
+646,621,623,619,611,610,613,611,572,503,458,433,396,369,358,346,334,298,275,252,
+229,204,176,159,124,79,47,69,132,189,203,249,257,156,75,141,-27,-81,-199,-225,
+-186,-204,-310,-371,-388,-379,-388,-389,-472,-470,-478,-538,-550,-522,-498,-508,-510,-515,-539,-562,
+-602,-608,-636,-691,-740,-784,-806,-831,-862,-889,-915,-919,-942,-955,-969,-994,-1011,-1002,-997,-989,
+-1011,-986,-976,-1021,-1012,-1022,-1019,-1018,-1012,-1008,-997,-995,-998,-994,-988,-978,-974,-966,-958,-950,
+-946,-950,-949,-951,-947,-944,-940,-932,-935,-933,-924,-915,-910,-909,-902,-899,-889,-882,-866,-859,
+-848,-837,-829,-820,-816,-813,-803,-792,-783,-776,-766,-755,-749,-738,-728,-715,-706,-698,-682,-669,
+-652,-637,-624,-614,-599,-586,-570,-556,-540,-523,-515,-509,-494,-481,-460,-430,-434,-429,-413,-401,
+-392,-378,-365,-357,-346,-336,-327,-326,-320,-314,-309,-299,-300,-294,-300,-297,-300,-301,-306,-306,
+-302,-305,-305,-308,-306,-314,-318,-315,-308,-310,-316,-328,-340,-353,-364,-373,-387,-403,-415,-433,
+-445,-446,-452,-459,-477,-490,-507,-534,-548,-557,-567,-580,-595,-604,-603,-606,-612,-612,-612,-606,
+-603,-605,-607,-612,-620,-624,-605,-633,-638,-642,-646,-662,-647,-656,-649,-638,-638,-637,-640,-645,
+-646,-649,-658,-662,-671,-671,-668,-662,-664,-662,-654,-649,-646,-642,-645,-638,-621,-610,-592,-576,
+-561,-548,-541,-530,-518,-494,-491,-482,-466,-458,-448,-439,-427,-417,-397,-385,-372,-352,-335,-313,
+-288,-269,-248,-223,-199,-168,-134,-101,-62,-21,15,54,99,146,195,253,319,384,445,508,
+573,644,712,777,847,924,996,1063,1121,1171,1228,1282,1309,1312,1278,1219,1141,1132,1311,1630,
+2008,2424,2782,3187,3379,3471,3672,3811,3869,3906,3996,4126,4184,4198,4238,4247,4332,4411,4515,4673,
+4718,4716,4757,4746,4773,4809,4713,4476,4131,3744,3426,3057,2819,2692,2510,2386,2298,2247,2252,2291,
+2305,2305,2347,2410,2481,2514,2502,2486,2462,2431,2376,2287,2215,2184,2153,2117,2101,2064,2017,1974,
+1896,1820,1736,1647,1518,1366,1265,1183,1083,973,845,694,567,447,354,275,168,124,118,82,
+27,9,-37,-130,-211,-287,-336,-363,-398,-453,-489,-483,-473,-528,-592,-617,-628,-647,-687,-732,
+-782,-852,-941,-1047,-1123,-1167,-1248,-1332,-1388,-1408,-1419,-1418,-1437,-1474,-1437,-1371,-1355,-1327,-1282,-1249,
+-1218,-1216,-1237,-1236,-1227,-1258,-1289,-1313,-1335,-1327,-1267,-1179,-1140,-1082,-1039,-989,-956,-922,-898,-920,
+-983,-1039,-1050,-1007,-903,-814,-759,-861,-1061,-1184,-1284,-1336,-1370,-1375,-1350,-1304,-1247,-1203,-1161,-1122,
+-1082,-1040,-1001,-969,-945,-924,-904,-883,-860,-832,-802,-784,-776,-762,-745,-726,-712,-706,-690,-675,
+-669,-674,-681,-689,-692,-701,-703,-706,-723,-722,-727,-723,-740,-749,-757,-744,-737,-735,-728,-706,
+-692,-678,-648,-619,-582,-563,-541,-517,-489,-454,-425,-388,-375,-325,-294,-252,-238,-208,-174,-133,
+-95,-68,-19,35,77,120,158,201,241,289,332,353,392,432,470,505,540,582,616,646,
+682,706,732,768,796,824,872,907,932,952,969,963,963,968,983,992,1015,1023,1045,1057,
+1081,1100,1107,1120,1128,1130,1148,1159,1201,1269,1210,1200,1223,1247,1265,1264,1266,1286,1295,1306,
+1310,1300,1306,1303,1311,1324,1347,1349,1340,1348,1358,1360,1380,1393,1395,1398,1385,1364,1381,1385,
+1363,1361,1363,1400,1387,1387,1396,1388,1387,1386,1394,1397,1396,1394,1389,1392,1392,1396,1400,1404,
+1407,1411,1414,1416,1417,1418,1419,1423,1429,1436,1441,1440,1442,1452,1459,1465,1476,1488,1503,1515,
+1539,1575,1606,1629,1669,1699,1771,1868,1972,2046,2136,2178,2219,2233,2222,2227,2269,2348,2403,2389,
+2346,2279,2201,2135,2090,2047,1991,1926,1885,1849,1826,1798,1769,1747,1717,1681,1638,1595,1546,1494,
+1438,1393,1339,1284,1229,1172,1115,1057,999,946,906,867,823,781,748,709,680,650,624,615,
+613,607,600,588,574,533,475,382,329,278,224,180,147,114,94,82,71,20,-85,-205,
+-323,-489,-605,-639,-755,-882,-931,-917,-871,-840,-857,-871,-875,-891,-945,-1081,-1164,-1220,-1195,-1131,
+-1094,-1085,-1144,-1112,-1048,-1127,-1206,-1275,-1328,-1380,-1452,-1517,-1575,-1648,-1710,-1766,-1800,-1818,-1863,-1921,
+-1960,-1958,-1926,-1870,-1840,-1867,-2000,-2198,-2326,-2247,-2106,-2081,-2081,-2105,-2120,-2243,-2307,-2329,-2321,-2295,
+-2282,-2294,-2286,-2311,-2313,-2238,-2088,-1931,-1841,-1823,-1822,-1807,-1764,-1723,-1672,-1589,-1491,-1401,-1284,-1187,
+-1178,-1330,-1468,-1373,-1370,-1438,-1642,-1811,-1883,-1932,-1971,-2014,-2069,-2090,-2097,-2111,-2117,-2111,-2116,-2126,
+-2118,-2094,-2062,-2048,-2051,-2073,-2097,-2091,-2122,-2140,-2162,-2204,-2229,-2253,-2285,-2314,-2365,-2470,-2484,-2494,
+-2493,-2442,-2393,-2200,-2067,-2069,-2119,-2178,-2254,-2394,-2531,-2554,-2597,-2640,-2667,-2709,-2740,-2781,-2818,-2861,
+-2842,-2822,-2882,-2896,-2938,-2948,-2958,-2991,-3030,-3062,-3089,-3085,-3183,-3222,-3255,-3377,-3459,-3481,-3554,-3591,
+-3626,-3706,-3784,-3875,-3933,-4000,-4070,-4140,-4212,-4291,-4363,-4442,-4527,-4600,-4653,-4699,-4729,-4770,-4810,-4855,
+-4903,-4924,-4958,-4980,-5010,-5052,-5076,-5120,-5139,-5157,-5178,-5207,-5235,-5260,-5279,-5310,-5345,-5376,-5404,-5415,
+-5442,-5471,-5505,-5532,-5556,-5587,-5617,-5643,-5659,-5675,-5713,-5772,-5819,-5855,-5888,-5908,-5917,-5928,-5959,-5977,
+-5966,-5970,-5964,-5969,-5981,-5977,-5873,-5817,-5785,-5717,-5672,-5619,-5592,-5589,-5564,-5514,-5502,-5581,-5700,-5826,
+-5891,-5850,-5719,-5579,-5681,-5699,-5672,-5662,-5667,-5615,-5557,-5491,-5450,-5431,-5414,-5360,-5332,-5263,-5239,-5234,
+-5188,-5072,-4906,-4813,-4835,-4924,-4939,-4871,-4737,-4596,-4518,-4515,-4517,-4491,-4462,-4437,-4387,-4314,-4324,-4264,
+-4189,-4141,-4102,-3938,-3959,-3949,-3900,-3825,-3743,-3689,-3635,-3575,-3533,-3481,-3434,-3407,-3379,-3331,-3265,-3217,
+-3156,-3091,-3029,-2953,-2874,-2821,-2749,-2677,-2590,-2508,-2425,-2342,-2269,-2189,-2101,-2019,-1938,-1876,-1814,-1759,
+-1702,-1662,-1637,-1596,-1546,-1484,-1424,-1361,-1274,-1194,-1078,-976,-911,-917,-923,-884,-825,-750,-662,-571,
+-528,-459,-389,-321,-267,-206,-139,-78,-22,22,80,144,205,268,345,425,506,567,709,903,
+1044,1140,1283,1442,1595,1790,1964,2099,2208,2294,2358,2418,2461,2514,2562,2634,2676,2732,2791,2849,
+2894,2945,3001,3059,3147,3262,3338,3414,3464,3499,3529,3560,3569,3548,3537,3550,3547,3547,3534,3533,
+3572,3617,3653,3693,3716,3755,3806,3861,3918,3977,4044,4079,4112,4153,4194,4246,4327,4403,4464,4517,
+4575,4630,4672,4704,4751,4802,4878,4944,4997,5065,5132,5169,5148,5153,5174,5187,5187,5181,5193,5213,
+5233,5263,5310,5356,5391,5410,5449,5491,5557,5621,5624,5691,5791,5858,5952,6014,6065,6176,6288,6344,
+6356,6376,6420,6431,6419,6423,6401,6225,6155,6154,6180,6235,6310,6354,6371,6396,6406,6419,6414,6417,
+6410,6426,6439,6439,6444,6434,6413,6373,6332,6293,6263,6231,6201,6148,6118,6100,6103,6124,6148,6169,
+6175,6168,6193,6217,6227,6274,6305,6271,6242,6277,6291,6294,6298,6298,6289,6291,6285,6278,6252,6225,
+6243,6265,6193,6282,6232,6212,6147,6077,6038,6028,6037,6066,6116,6152,6157,6180,6217,6188,6129,6101,
+6130,6102,6045,5984,5949,5935,5853,5860,5853,6007,6417,6501,6451,6265,6356,6461,6558,6484,6530,6563,
+6564,6586,6571,6541,6525,6511,6492,6463,6434,6405,6369,6327,6270,6241,6203,6178,6119,6104,6063,6017,
+5985,5947,5905,5877,5844,5796,5743,5716,5655,5602,5552,5501,5447,5396,5356,5320,5279,5247,5210,5163,
+5126,5085,5033,4993,4935,4902,4854,4820,4796,4784,4755,4704,4679,4654,4607,4581,4522,4520,4481,4456,
+4468,4397,4343,4311,4274,4225,4148,4070,3990,3846,3660,3290,2742,2269,2158,2362,2616,2776,2869,2881,
+2835,2756,2668,2585,2498,2413,2328,2245,2183,2123,2063,1992,1912,1828,1768,1720,1688,1654,1614,1566,
+1515,1459,1413,1381,1360,1322,1287,1246,1212,1197,1189,1179,1160,1121,1076,1036,1037,1030,1005,1002,
+989,957,935,916,901,885,866,846,816,782,759,725,713,723,703,714,692,666,664,666,
+632,628,622,623,632,627,617,633,682,602,523,473,436,409,381,370,356,349,321,294,
+272,249,221,200,191,154,103,56,16,43,36,25,39,51,107,108,107,75,53,-124,
+-150,-114,-222,-248,-343,-422,-441,-463,-499,-527,-516,-519,-553,-536,-507,-485,-509,-501,-524,-535,
+-547,-585,-596,-631,-680,-726,-773,-794,-823,-856,-877,-907,-920,-940,-952,-966,-990,-1011,-1023,-1032,
+-1041,-1032,-1032,-1028,-1039,-1024,-1035,-1034,-1026,-1018,-1013,-1002,-1011,-1010,-1004,-998,-986,-965,-946,-964,
+-957,-944,-951,-952,-952,-946,-946,-941,-931,-928,-930,-934,-917,-912,-905,-894,-888,-879,-885,-868,
+-860,-857,-847,-829,-819,-800,-794,-787,-781,-774,-762,-751,-735,-727,-718,-712,-697,-689,-681,-675,
+-659,-648,-632,-615,-598,-586,-574,-558,-541,-524,-504,-490,-482,-436,-441,-435,-420,-414,-403,-390,
+-383,-370,-361,-348,-337,-325,-319,-315,-311,-303,-299,-298,-287,-284,-284,-282,-286,-285,-289,-291,
+-291,-290,-289,-294,-291,-293,-298,-304,-310,-306,-304,-305,-311,-324,-337,-350,-362,-371,-387,-403,
+-412,-415,-415,-430,-443,-459,-474,-497,-518,-533,-545,-552,-551,-561,-569,-562,-578,-579,-582,-583,
+-587,-588,-582,-581,-588,-598,-597,-571,-608,-608,-603,-619,-620,-624,-628,-633,-628,-629,-634,-638,
+-638,-639,-639,-639,-644,-650,-632,-645,-661,-666,-650,-638,-625,-639,-644,-641,-623,-602,-583,-576,
+-560,-547,-540,-531,-515,-498,-488,-475,-465,-446,-441,-430,-416,-409,-397,-376,-362,-343,-322,-308,
+-289,-270,-249,-229,-210,-180,-149,-118,-84,-46,-12,23,63,111,160,214,275,341,401,461,
+517,575,640,706,771,843,919,992,1057,1122,1195,1266,1328,1375,1392,1380,1342,1264,1165,1149,
+1360,1695,2020,2366,2730,3078,3424,3644,3823,3891,3823,3922,4152,4161,4114,4176,4257,4319,4358,4471,
+4596,4660,4620,4618,4641,4652,4702,4627,4523,4377,3981,3563,3238,2986,2836,2708,2515,2376,2260,2225,
+2246,2264,2260,2310,2393,2465,2492,2483,2493,2504,2476,2424,2351,2286,2251,2243,2223,2180,2134,2070,
+2027,1960,1872,1775,1667,1577,1449,1322,1221,1124,1013,884,748,618,494,407,318,259,226,198,
+172,167,123,17,-87,-176,-247,-280,-313,-370,-442,-481,-488,-474,-523,-548,-546,-557,-595,-644,
+-701,-736,-802,-906,-1042,-1134,-1187,-1228,-1268,-1319,-1321,-1344,-1351,-1349,-1388,-1368,-1354,-1331,-1322,-1278,
+-1253,-1246,-1257,-1273,-1277,-1247,-1256,-1261,-1307,-1327,-1332,-1292,-1183,-1136,-1074,-1021,-965,-921,-892,-869,
+-859,-927,-983,-1024,-983,-916,-852,-822,-857,-1011,-1141,-1235,-1291,-1354,-1373,-1349,-1288,-1226,-1182,-1139,
+-1096,-1042,-991,-955,-929,-907,-886,-873,-860,-848,-833,-808,-789,-774,-761,-742,-726,-715,-712,-698,
+-680,-670,-667,-672,-677,-683,-695,-695,-697,-700,-710,-706,-705,-714,-717,-721,-716,-731,-727,-734,
+-714,-688,-678,-647,-612,-585,-562,-546,-521,-485,-457,-420,-393,-354,-319,-292,-265,-236,-204,-155,
+-128,-93,-52,-7,40,76,110,148,197,242,288,333,369,397,442,477,513,545,584,619,
+649,682,712,737,768,786,820,874,910,936,947,984,968,968,980,980,994,1015,1031,1050,
+1057,1080,1102,1097,1111,1125,1133,1138,1152,1191,1185,1194,1198,1224,1266,1362,1295,1310,1308,1311,
+1332,1342,1359,1314,1295,1324,1334,1327,1349,1342,1346,1346,1335,1344,1341,1349,1353,1352,1359,1359,
+1371,1394,1407,1400,1409,1406,1403,1404,1406,1406,1407,1407,1419,1410,1408,1409,1411,1411,1415,1419,
+1423,1426,1427,1431,1432,1437,1437,1442,1447,1451,1458,1459,1453,1452,1457,1469,1478,1494,1497,1499,
+1512,1539,1567,1595,1634,1668,1719,1801,1929,2052,2112,2181,2182,2206,2226,2248,2245,2261,2306,2378,
+2356,2332,2265,2194,2129,2080,2039,1977,1921,1882,1849,1826,1808,1787,1759,1737,1705,1668,1626,1578,
+1525,1470,1422,1370,1313,1254,1196,1137,1084,1030,980,938,900,855,818,786,754,718,698,686,
+682,679,675,665,647,631,589,501,415,372,324,278,231,185,157,142,113,91,26,-82,
+-246,-430,-548,-587,-601,-703,-877,-963,-972,-931,-889,-870,-858,-833,-840,-908,-1044,-1142,-1164,-1162,
+-1136,-1116,-1099,-1105,-975,-965,-1032,-1122,-1244,-1327,-1402,-1488,-1563,-1601,-1667,-1716,-1773,-1807,-1818,-1844,
+-1881,-1911,-1886,-1830,-1766,-1771,-1825,-1991,-2161,-2273,-2212,-2053,-2036,-2031,-2074,-2121,-2188,-2249,-2265,-2223,
+-2143,-2008,-1932,-1920,-1946,-1971,-1923,-1868,-1818,-1793,-1786,-1764,-1739,-1689,-1607,-1564,-1478,-1374,-1308,-1235,
+-1182,-1153,-1280,-1451,-1420,-1368,-1431,-1621,-1761,-1833,-1881,-1927,-1968,-1993,-2014,-2042,-2044,-2031,-2037,-2045,
+-2059,-2052,-1986,-1977,-1995,-1997,-2007,-2015,-2057,-2065,-2096,-2123,-2145,-2162,-2173,-2217,-2250,-2305,-2333,-2332,
+-2311,-2247,-2150,-2125,-2041,-2010,-2026,-2074,-2122,-2200,-2398,-2494,-2484,-2530,-2546,-2595,-2637,-2662,-2707,-2747,
+-2749,-2725,-2758,-2786,-2790,-2806,-2837,-2880,-2910,-2926,-2979,-2981,-3031,-3103,-3116,-3232,-3275,-3300,-3392,-3441,
+-3480,-3533,-3617,-3715,-3780,-3845,-3904,-3964,-4042,-4119,-4179,-4268,-4348,-4399,-4478,-4529,-4577,-4617,-4679,-4697,
+-4741,-4790,-4817,-4840,-4874,-4899,-4969,-4991,-5032,-5055,-5072,-5087,-5108,-5131,-5156,-5182,-5215,-5252,-5278,-5300,
+-5312,-5343,-5383,-5414,-5445,-5472,-5507,-5534,-5556,-5575,-5600,-5642,-5710,-5769,-5806,-5846,-5865,-5867,-5872,-5905,
+-5919,-5928,-5940,-5944,-5940,-5928,-5900,-5829,-5814,-5809,-5770,-5710,-5633,-5603,-5564,-5511,-5465,-5465,-5541,-5643,
+-5768,-5843,-5814,-5692,-5570,-5702,-5699,-5650,-5618,-5624,-5561,-5515,-5454,-5411,-5387,-5375,-5332,-5309,-5249,-5216,
+-5193,-5129,-4998,-4879,-4875,-4938,-4992,-4960,-4877,-4735,-4611,-4558,-4572,-4571,-4531,-4487,-4463,-4413,-4336,-4285,
+-4314,-4248,-4156,-4096,-3991,-4017,-3997,-3970,-3909,-3823,-3757,-3716,-3657,-3594,-3542,-3496,-3474,-3447,-3395,-3322,
+-3271,-3206,-3142,-3083,-3016,-2948,-2881,-2821,-2745,-2671,-2588,-2513,-2437,-2360,-2277,-2199,-2107,-2028,-1957,-1901,
+-1851,-1802,-1759,-1724,-1679,-1627,-1560,-1497,-1426,-1334,-1254,-1161,-1062,-981,-922,-953,-940,-868,-809,-806,
+-746,-657,-556,-479,-416,-373,-319,-244,-181,-125,-82,-24,40,100,167,244,328,412,461,628,
+846,998,1109,1229,1393,1595,1772,1919,2049,2163,2232,2290,2349,2375,2420,2483,2557,2612,2663,2715,
+2771,2814,2863,2919,3004,3109,3194,3300,3357,3394,3432,3464,3481,3478,3480,3484,3513,3499,3486,3445,
+3436,3489,3524,3550,3594,3647,3688,3735,3787,3818,3875,3951,4000,4045,4088,4123,4159,4225,4296,4354,
+4412,4485,4558,4610,4644,4682,4731,4799,4858,4896,4947,5014,5047,5041,5048,5075,5102,5120,5140,5157,
+5168,5195,5230,5273,5316,5350,5374,5385,5427,5478,5544,5576,5657,5737,5782,5869,5963,6011,6097,6211,
+6298,6327,6351,6376,6385,6392,6383,6365,6201,6138,6117,6134,6171,6233,6288,6329,6343,6362,6374,6371,
+6385,6400,6427,6449,6429,6432,6444,6438,6400,6375,6360,6342,6311,6261,6179,6106,6087,6089,6100,6128,
+6149,6146,6129,6155,6190,6216,6236,6243,6215,6211,6225,6264,6284,6295,6281,6274,6262,6246,6227,6208,
+6217,6269,6179,6216,6242,6162,6151,6124,6055,6016,6010,6033,6059,6099,6132,6125,6078,6036,5986,5876,
+5877,5976,6074,6099,6102,6109,6090,6021,6000,5964,6011,6263,6389,6457,6299,6209,6378,6639,6524,6559,
+6585,6588,6607,6592,6572,6562,6548,6515,6488,6464,6431,6390,6355,6309,6267,6237,6206,6169,6124,6104,
+6052,6011,5983,5947,5916,5876,5816,5821,5747,5686,5633,5600,5583,5502,5446,5427,5423,5359,5281,5235,
+5173,5147,5106,5081,5117,5068,4962,4913,4845,4810,4783,4786,4738,4717,4670,4652,4613,4570,4537,4505,
+4481,4466,4441,4393,4374,4340,4296,4242,4170,4096,3933,3765,3395,2875,2396,2133,2267,2513,2683,2785,
+2859,2857,2792,2699,2607,2515,2428,2341,2263,2194,2129,2067,1994,1922,1820,1796,1714,1689,1659,1626,
+1575,1517,1452,1402,1369,1344,1310,1271,1259,1229,1194,1179,1174,1151,1120,1080,1044,1051,1051,1026,
+1018,996,967,941,919,908,891,866,845,812,787,754,719,717,703,699,669,712,702,674,
+746,712,628,632,629,657,716,626,604,596,566,523,487,455,426,403,393,385,376,348,
+319,285,254,220,204,190,160,119,76,33,27,59,-80,-104,-52,95,130,198,103,22,
+-26,-101,-145,-158,-188,-233,-370,-437,-466,-502,-526,-509,-494,-503,-492,-457,-493,-521,-521,-532,
+-530,-518,-559,-599,-625,-665,-711,-750,-794,-818,-844,-867,-891,-906,-935,-943,-964,-981,-1002,-1014,
+-1028,-1038,-1036,-1031,-1040,-1045,-1055,-1057,-1052,-1044,-1040,-1030,-1029,-1026,-1021,-1009,-1001,-986,-976,-967,
+-972,-967,-952,-949,-952,-956,-942,-940,-945,-947,-938,-931,-929,-913,-911,-918,-905,-895,-883,-886,
+-865,-861,-857,-849,-829,-823,-810,-795,-781,-775,-770,-762,-743,-727,-712,-704,-691,-682,-671,-662,
+-656,-649,-637,-622,-606,-593,-577,-561,-546,-528,-512,-499,-479,-466,-453,-435,-416,-402,-394,-381,
+-372,-362,-347,-337,-330,-321,-311,-302,-298,-295,-289,-287,-281,-274,-271,-270,-268,-270,-270,-271,
+-275,-272,-273,-276,-277,-281,-289,-289,-289,-297,-300,-306,-305,-310,-318,-323,-333,-343,-354,-369,
+-380,-383,-377,-389,-408,-428,-449,-466,-481,-495,-503,-511,-523,-519,-529,-541,-564,-566,-551,-553,
+-565,-566,-569,-599,-593,-599,-585,-594,-573,-594,-593,-589,-594,-609,-619,-622,-614,-615,-616,-623,
+-627,-620,-626,-630,-629,-641,-642,-639,-646,-636,-632,-623,-624,-634,-640,-630,-613,-598,-583,-575,
+-562,-545,-534,-528,-520,-507,-485,-469,-456,-439,-426,-417,-403,-398,-388,-373,-357,-335,-314,-299,
+-287,-269,-250,-233,-216,-189,-156,-128,-99,-62,-32,0,34,78,124,180,234,293,352,409,
+466,519,574,631,695,760,834,909,987,1054,1123,1205,1285,1359,1421,1449,1451,1430,1379,1299,
+1214,1183,1377,1668,1957,2272,2650,3051,3442,3737,3764,3762,3802,4021,3951,3974,4182,4257,4300,4340,
+4415,4466,4530,4552,4593,4607,4598,4633,4631,4573,4601,4220,3778,3474,3269,3053,2903,2749,2504,2338,
+2235,2218,2211,2206,2233,2292,2335,2381,2399,2441,2476,2469,2460,2420,2378,2333,2314,2295,2265,2199,
+2120,2066,1992,1898,1797,1690,1634,1517,1385,1281,1181,1077,934,804,682,579,450,405,368,340,
+281,215,211,193,55,-48,-142,-205,-230,-275,-356,-434,-475,-486,-482,-501,-516,-495,-509,-546,
+-598,-660,-704,-765,-853,-975,-1067,-1134,-1150,-1173,-1226,-1238,-1260,-1291,-1306,-1325,-1331,-1336,-1319,-1329,
+-1333,-1305,-1289,-1293,-1315,-1313,-1275,-1232,-1250,-1300,-1315,-1303,-1277,-1196,-1139,-1090,-1023,-955,-908,-868,
+-841,-860,-892,-940,-971,-955,-917,-906,-883,-845,-939,-1013,-1029,-1206,-1326,-1365,-1344,-1280,-1220,-1167,
+-1120,-1064,-998,-940,-913,-892,-871,-854,-845,-836,-831,-821,-802,-789,-775,-759,-740,-722,-711,-713,
+-706,-694,-679,-671,-671,-668,-670,-679,-681,-685,-687,-699,-700,-703,-711,-715,-725,-733,-724,-709,
+-698,-697,-670,-653,-641,-616,-585,-549,-530,-510,-477,-444,-415,-376,-343,-307,-279,-255,-226,-198,
+-154,-121,-80,-43,-1,41,77,112,157,206,249,290,334,380,416,455,486,521,556,585,
+621,649,684,715,744,774,799,826,847,877,923,922,951,981,990,979,971,975,1004,1030,
+1045,1062,1077,1093,1103,1122,1118,1133,1131,1134,1155,1181,1191,1193,1208,1257,1388,1311,1267,1290,
+1357,1466,1420,1363,1326,1307,1318,1316,1308,1318,1314,1317,1343,1343,1348,1357,1380,1386,1388,1395,
+1395,1404,1396,1407,1409,1416,1417,1425,1430,1426,1420,1421,1432,1431,1430,1428,1431,1429,1431,1433,
+1440,1443,1442,1442,1445,1449,1453,1456,1463,1467,1471,1477,1478,1478,1484,1496,1490,1493,1494,1509,
+1513,1528,1594,1572,1592,1633,1685,1744,1846,1972,2093,2147,2199,2178,2174,2198,2225,2241,2311,2358,
+2348,2343,2325,2277,2208,2137,2079,2031,1975,1933,1894,1868,1843,1828,1810,1790,1764,1733,1700,1662,
+1612,1557,1496,1447,1394,1338,1281,1222,1162,1106,1056,1007,969,937,900,860,827,798,770,754,
+749,747,739,734,725,713,686,628,537,483,448,414,374,322,280,246,216,180,121,1,
+-176,-324,-403,-424,-445,-483,-610,-803,-919,-969,-953,-903,-857,-831,-814,-825,-896,-999,-1072,-1089,
+-1078,-1062,-1087,-1120,-1095,-948,-937,-973,-1070,-1237,-1328,-1403,-1495,-1574,-1626,-1677,-1718,-1753,-1773,-1773,
+-1791,-1797,-1789,-1745,-1685,-1641,-1632,-1780,-1968,-2115,-2219,-2158,-1989,-1980,-1986,-2023,-2086,-2127,-2134,-2117,
+-2010,-1873,-1813,-1767,-1764,-1765,-1765,-1767,-1769,-1758,-1748,-1735,-1696,-1635,-1575,-1489,-1430,-1308,-1210,-1162,
+-1138,-1133,-1159,-1285,-1418,-1426,-1339,-1444,-1620,-1732,-1799,-1844,-1888,-1913,-1936,-1960,-1964,-1965,-1961,-1964,
+-1969,-1979,-1975,-1879,-1918,-1934,-1936,-1935,-1959,-1989,-2009,-2045,-2060,-2088,-2088,-2092,-2162,-2205,-2180,-2136,
+-2138,-2083,-1881,-1789,-1833,-1846,-1910,-1988,-2046,-2090,-2159,-2381,-2451,-2434,-2435,-2472,-2523,-2551,-2596,-2608,
+-2620,-2620,-2630,-2671,-2676,-2691,-2723,-2751,-2795,-2804,-2850,-2896,-2917,-2920,-3011,-3094,-3113,-3138,-3233,-3286,
+-3322,-3367,-3450,-3538,-3613,-3686,-3742,-3811,-3884,-3953,-4023,-4083,-4157,-4222,-4295,-4329,-4410,-4469,-4533,-4564,
+-4570,-4641,-4668,-4712,-4735,-4764,-4803,-4872,-4909,-4941,-4974,-4985,-4987,-4996,-5018,-5048,-5081,-5119,-5153,-5175,
+-5197,-5217,-5251,-5292,-5329,-5361,-5391,-5420,-5453,-5475,-5494,-5527,-5577,-5653,-5717,-5763,-5790,-5797,-5801,-5828,
+-5862,-5877,-5887,-5896,-5899,-5901,-5887,-5852,-5824,-5823,-5819,-5784,-5726,-5663,-5602,-5524,-5454,-5402,-5396,-5471,
+-5576,-5717,-5801,-5770,-5643,-5541,-5679,-5671,-5610,-5577,-5578,-5519,-5463,-5395,-5356,-5309,-5308,-5269,-5253,-5223,
+-5188,-5147,-5073,-4953,-4910,-4973,-5032,-5039,-4977,-4878,-4744,-4640,-4601,-4623,-4615,-4562,-4500,-4478,-4443,-4368,
+-4286,-4338,-4287,-4160,-4092,-4049,-4059,-4046,-4019,-3973,-3912,-3831,-3774,-3718,-3662,-3614,-3569,-3533,-3499,-3449,
+-3381,-3312,-3247,-3186,-3136,-3073,-3013,-2951,-2884,-2816,-2748,-2669,-2596,-2523,-2443,-2363,-2287,-2195,-2113,-2047,
+-1992,-1946,-1892,-1834,-1801,-1753,-1698,-1633,-1565,-1484,-1391,-1310,-1237,-1157,-1075,-984,-939,-906,-830,-731,
+-773,-845,-797,-705,-610,-536,-483,-426,-356,-299,-256,-206,-145,-82,-15,54,132,220,311,398,
+607,814,969,1087,1214,1388,1585,1729,1860,1977,2086,2148,2192,2240,2292,2356,2423,2488,2558,2615,
+2655,2681,2722,2768,2845,2934,3043,3152,3238,3312,3353,3372,3393,3406,3417,3442,3448,3459,3441,3400,
+3361,3346,3359,3395,3435,3508,3569,3628,3691,3708,3733,3796,3870,3942,3992,4030,4058,4088,4133,4190,
+4240,4295,4376,4456,4514,4570,4608,4659,4733,4777,4805,4840,4895,4935,4945,4958,4975,5016,5064,5099,
+5128,5155,5172,5199,5239,5291,5321,5327,5347,5372,5417,5471,5527,5603,5676,5740,5824,5899,5953,6023,
+6116,6219,6265,6304,6334,6347,6351,6352,6345,6216,6134,6102,6094,6137,6163,6219,6269,6286,6319,6333,
+6348,6346,6379,6436,6450,6416,6409,6427,6435,6405,6387,6373,6346,6319,6274,6191,6125,6090,6088,6103,
+6136,6156,6153,6126,6123,6154,6170,6171,6168,6153,6176,6225,6267,6297,6291,6284,6266,6240,6214,6182,
+6163,6205,6212,6157,6141,6125,6120,6108,6092,6051,6015,5992,5993,6026,6078,6114,6099,6031,5912,5750,
+5758,5861,5985,6061,6127,6100,6078,6060,6017,6027,5997,6017,6136,6218,6407,6323,6302,6442,6653,6577,
+6592,6600,6612,6614,6603,6593,6584,6570,6541,6510,6481,6453,6413,6376,6343,6285,6282,6247,6215,6152,
+6124,6088,6044,6014,5976,5940,5899,5851,5824,5767,5733,5686,5633,5601,5543,5487,5470,5421,5347,5309,
+5261,5228,5181,5156,5095,5074,5058,5059,5023,4905,4847,4812,4788,4766,4743,4711,4673,4647,4624,4567,
+4539,4524,4510,4475,4454,4427,4395,4360,4301,4246,4168,4003,3810,3421,2949,2502,2168,2227,2457,2647,
+2756,2838,2879,2831,2736,2627,2531,2443,2357,2280,2213,2143,2063,2015,1909,1816,1757,1716,1685,1661,
+1637,1581,1508,1443,1398,1370,1343,1308,1272,1247,1242,1182,1175,1173,1154,1124,1089,1066,1059,1055,
+1039,1029,1009,981,948,920,905,889,864,844,814,783,757,728,705,692,679,665,653,664,
+655,641,644,619,607,615,640,674,624,581,553,535,515,492,480,463,465,472,486,474,
+414,360,307,266,227,197,185,152,121,86,41,23,26,-98,-155,-96,36,96,80,47,
+12,56,-29,-106,-125,-151,-205,-281,-359,-411,-419,-417,-413,-447,-483,-437,-465,-521,-537,-527,
+-515,-547,-561,-582,-578,-624,-675,-708,-755,-784,-821,-839,-864,-889,-904,-932,-946,-967,-990,-1011,
+-1024,-1033,-1044,-1047,-1051,-1045,-1045,-1057,-1060,-1047,-1049,-1053,-1043,-1038,-1037,-1036,-1028,-1015,-999,-987,
+-989,-985,-973,-962,-954,-956,-958,-953,-950,-946,-953,-946,-934,-922,-922,-911,-907,-893,-891,-886,
+-881,-861,-853,-855,-849,-835,-826,-807,-795,-785,-778,-764,-758,-741,-723,-709,-696,-679,-664,-653,
+-647,-639,-622,-612,-597,-582,-578,-567,-552,-531,-513,-501,-484,-468,-455,-432,-423,-408,-395,-380,
+-370,-361,-350,-342,-335,-324,-313,-301,-292,-285,-282,-277,-274,-263,-263,-256,-257,-255,-255,-256,
+-260,-262,-262,-260,-265,-269,-277,-285,-288,-287,-291,-296,-302,-305,-305,-313,-309,-312,-319,-332,
+-355,-358,-349,-347,-365,-399,-424,-445,-457,-459,-465,-475,-482,-492,-514,-518,-520,-516,-508,-516,
+-537,-562,-564,-541,-555,-555,-567,-569,-588,-586,-592,-591,-584,-586,-585,-591,-591,-599,-598,-612,
+-618,-629,-635,-638,-628,-627,-637,-630,-632,-633,-637,-624,-617,-623,-619,-616,-610,-596,-586,-575,
+-567,-550,-530,-519,-514,-505,-491,-471,-447,-432,-420,-409,-394,-379,-373,-362,-352,-329,-307,-285,
+-271,-264,-252,-236,-216,-193,-160,-133,-104,-77,-47,-19,9,44,91,145,200,251,302,357,
+414,464,520,568,623,686,755,828,907,986,1065,1140,1223,1305,1392,1448,1493,1509,1503,1465,
+1413,1342,1226,1182,1315,1531,1813,2159,2522,2943,3357,3510,3561,3661,3766,3704,3973,4106,4132,4198,
+4258,4367,4427,4490,4536,4522,4542,4539,4539,4580,4610,4657,4511,4073,3753,3527,3344,3176,2969,2729,
+2469,2307,2232,2179,2147,2119,2107,2118,2172,2226,2314,2391,2430,2469,2477,2447,2405,2385,2356,2334,
+2279,2195,2108,2013,1909,1803,1708,1654,1560,1427,1321,1213,1117,988,874,785,648,549,520,480,
+430,351,279,227,212,91,-32,-119,-199,-248,-272,-334,-399,-444,-476,-498,-518,-501,-475,-478,
+-525,-572,-631,-667,-714,-782,-886,-947,-1020,-1073,-1115,-1165,-1210,-1234,-1284,-1291,-1302,-1315,-1314,-1303,
+-1344,-1361,-1358,-1341,-1345,-1351,-1293,-1252,-1229,-1248,-1290,-1289,-1258,-1221,-1199,-1135,-1110,-1029,-968,-919,
+-866,-850,-871,-900,-913,-921,-923,-923,-911,-867,-816,-728,-673,-752,-1082,-1292,-1352,-1339,-1287,-1226,
+-1163,-1096,-1025,-953,-896,-889,-871,-841,-823,-820,-818,-814,-802,-790,-781,-771,-755,-734,-714,-703,
+-697,-699,-697,-685,-674,-668,-661,-662,-679,-683,-690,-698,-709,-718,-719,-723,-727,-731,-731,-720,
+-739,-749,-736,-724,-696,-678,-630,-615,-580,-552,-528,-494,-455,-422,-366,-332,-299,-268,-241,-212,
+-188,-136,-101,-63,-26,13,49,89,135,165,207,250,284,348,377,430,466,500,539,571,
+597,627,659,692,724,757,766,784,817,859,898,927,905,913,933,938,932,955,983,1014,
+1041,1066,1083,1087,1085,1094,1108,1123,1138,1133,1138,1166,1192,1198,1208,1217,1238,1259,1268,1261,
+1301,1402,1657,1467,1337,1305,1296,1310,1321,1319,1340,1344,1338,1343,1352,1376,1371,1395,1389,1388,
+1389,1399,1403,1415,1412,1416,1444,1438,1436,1440,1435,1442,1440,1442,1442,1446,1449,1451,1449,1450,
+1453,1459,1460,1457,1457,1461,1466,1469,1477,1482,1490,1494,1497,1501,1504,1511,1511,1513,1516,1518,
+1523,1543,1559,1576,1609,1635,1671,1711,1784,1883,1996,2092,2202,2189,2166,2161,2158,2181,2274,2335,
+2348,2346,2344,2329,2288,2221,2142,2071,2024,1980,1946,1916,1892,1875,1860,1845,1825,1800,1767,1738,
+1698,1650,1590,1529,1474,1418,1364,1314,1258,1196,1131,1079,1035,1004,978,949,915,875,842,824,
+811,804,799,791,784,779,761,714,649,601,568,553,542,504,449,396,332,264,208,107,
+-47,-175,-202,-164,-173,-219,-337,-431,-596,-719,-789,-807,-782,-761,-760,-767,-812,-889,-943,-975,
+-986,-1003,-987,-994,-1026,-1089,-1058,-988,-1024,-1101,-1246,-1333,-1394,-1493,-1570,-1618,-1670,-1696,-1710,-1707,
+-1716,-1702,-1679,-1636,-1593,-1563,-1547,-1601,-1773,-1928,-2050,-2145,-2096,-1916,-1866,-1908,-1927,-1975,-2000,-1973,
+-1922,-1766,-1709,-1679,-1639,-1618,-1611,-1630,-1641,-1662,-1676,-1665,-1651,-1592,-1520,-1437,-1340,-1259,-1122,-998,
+-1001,-998,-1057,-1131,-1264,-1344,-1404,-1368,-1487,-1634,-1718,-1772,-1802,-1844,-1889,-1903,-1894,-1897,-1892,-1900,
+-1905,-1912,-1925,-1931,-1923,-1900,-1875,-1872,-1878,-1898,-1910,-1953,-1977,-2000,-2019,-2010,-2037,-2120,-2159,-2124,
+-2057,-2031,-1940,-1696,-1668,-1760,-1815,-1907,-1976,-2070,-2156,-2218,-2271,-2348,-2330,-2342,-2372,-2402,-2449,-2471,
+-2501,-2512,-2526,-2557,-2567,-2574,-2617,-2644,-2674,-2690,-2727,-2763,-2790,-2814,-2859,-2897,-2947,-3020,-3093,-3118,
+-3178,-3222,-3279,-3373,-3447,-3526,-3587,-3650,-3728,-3786,-3849,-3913,-3979,-4035,-4107,-4148,-4243,-4298,-4339,-4423,
+-4431,-4495,-4510,-4543,-4607,-4625,-4670,-4711,-4779,-4808,-4844,-4864,-4868,-4869,-4883,-4909,-4940,-4975,-5019,-5050,
+-5071,-5094,-5123,-5160,-5204,-5243,-5279,-5312,-5343,-5365,-5389,-5423,-5460,-5526,-5609,-5673,-5702,-5711,-5736,-5758,
+-5786,-5801,-5807,-5818,-5839,-5856,-5859,-5840,-5802,-5788,-5792,-5789,-5753,-5698,-5644,-5566,-5475,-5389,-5320,-5322,
+-5392,-5510,-5663,-5741,-5701,-5571,-5485,-5618,-5621,-5561,-5515,-5528,-5469,-5420,-5361,-5284,-5262,-5233,-5209,-5226,
+-5198,-5164,-5107,-5019,-4933,-4960,-5072,-5093,-5062,-4984,-4884,-4747,-4664,-4641,-4670,-4657,-4593,-4519,-4492,-4466,
+-4396,-4345,-4367,-4317,-4183,-4125,-4108,-4088,-4099,-4075,-4026,-3973,-3903,-3841,-3781,-3735,-3690,-3637,-3592,-3545,
+-3477,-3418,-3351,-3289,-3238,-3186,-3127,-3068,-3012,-2952,-2883,-2816,-2748,-2677,-2596,-2519,-2442,-2368,-2290,-2208,
+-2144,-2085,-2029,-1980,-1918,-1869,-1821,-1762,-1700,-1634,-1546,-1452,-1367,-1301,-1237,-1155,-1044,-958,-886,-803,
+-745,-770,-818,-787,-769,-694,-624,-609,-558,-509,-443,-423,-375,-311,-229,-148,-69,16,106,213,
+403,616,789,943,1094,1239,1388,1532,1657,1773,1889,1986,2049,2094,2150,2221,2302,2349,2398,2467,
+2552,2602,2618,2648,2699,2774,2852,2958,3061,3166,3263,3299,3310,3326,3341,3374,3413,3413,3396,3351,
+3332,3264,3247,3280,3307,3362,3462,3520,3581,3615,3633,3669,3730,3800,3867,3924,3968,3998,4013,4050,
+4089,4124,4176,4253,4328,4390,4471,4517,4590,4646,4689,4718,4752,4800,4835,4850,4872,4901,4952,5008,
+5066,5113,5147,5166,5203,5230,5263,5285,5277,5305,5347,5405,5462,5482,5533,5617,5695,5760,5823,5879,
+5954,6036,6117,6166,6210,6273,6361,6317,6309,6312,6258,6153,6093,6064,6094,6101,6167,6231,6230,6264,
+6287,6294,6293,6338,6406,6425,6415,6391,6395,6399,6392,6380,6368,6352,6310,6265,6200,6143,6097,6101,
+6113,6142,6167,6177,6148,6117,6136,6145,6139,6121,6108,6149,6213,6237,6243,6266,6270,6227,6200,6179,
+6127,6119,6179,6160,6104,6075,6055,6060,6064,6065,6036,6002,5964,5962,6021,6108,6157,6115,6015,5815,
+5785,5818,5886,5950,6003,6055,6057,6024,5979,5948,5918,5910,5936,5953,6014,6235,6442,6465,6623,6711,
+6603,6606,6610,6615,6610,6612,6616,6608,6587,6560,6535,6506,6475,6440,6403,6367,6338,6307,6279,6239,
+6185,6167,6117,6087,6053,6003,5962,5920,5875,5827,5802,5762,5713,5660,5606,5586,5512,5435,5373,5396,
+5421,5371,5331,5297,5329,5292,5121,5066,5061,5049,4977,4890,4820,4790,4779,4776,4734,4702,4643,4605,
+4570,4567,4558,4558,4537,4505,4477,4450,4420,4376,4331,4211,4067,3795,3414,2983,2550,2183,2210,2436,
+2635,2769,2857,2910,2875,2779,2653,2547,2465,2383,2304,2232,2161,2098,2055,1893,1833,1778,1730,1689,
+1658,1669,1601,1502,1445,1412,1386,1343,1307,1268,1238,1212,1181,1173,1169,1158,1135,1111,1098,1087,
+1061,1038,1030,1012,985,959,914,898,893,861,841,813,784,766,732,705,700,685,685,667,
+669,657,640,622,600,593,605,635,628,600,565,540,521,505,491,506,528,579,623,722,
+660,558,429,343,281,229,206,179,148,114,76,39,7,-27,-97,-176,-179,-69,31,34,
+6,-32,-51,19,-44,-139,-147,-184,-226,-268,-314,-333,-370,-379,-428,-478,-431,-508,-526,-543,
+-533,-513,-568,-609,-617,-633,-648,-679,-715,-757,-782,-811,-838,-873,-885,-910,-938,-955,-988,-1012,
+-1039,-1048,-1053,-1058,-1060,-1063,-1064,-1068,-1068,-1065,-1063,-1059,-1061,-1054,-1052,-1054,-1052,-1048,-1039,-1026,
+-1017,-1008,-993,-985,-977,-968,-962,-956,-955,-953,-956,-960,-953,-942,-935,-935,-914,-914,-892,-871,
+-884,-880,-866,-857,-841,-831,-820,-815,-804,-792,-781,-768,-760,-748,-744,-725,-707,-698,-683,-664,
+-644,-628,-618,-604,-592,-571,-562,-556,-545,-534,-522,-506,-492,-478,-461,-445,-425,-412,-396,-383,
+-371,-359,-345,-334,-327,-319,-314,-302,-293,-285,-275,-269,-265,-263,-248,-247,-246,-245,-241,-242,
+-248,-248,-252,-254,-253,-255,-261,-267,-273,-279,-281,-289,-296,-296,-299,-306,-304,-304,-302,-307,
+-321,-334,-324,-321,-346,-392,-446,-473,-480,-474,-460,-449,-454,-443,-492,-497,-489,-483,-495,-492,
+-506,-521,-534,-525,-538,-549,-564,-562,-575,-585,-596,-606,-605,-603,-611,-608,-608,-615,-606,-606,
+-608,-607,-612,-621,-605,-600,-612,-611,-594,-619,-607,-605,-606,-605,-598,-591,-586,-583,-576,-568,
+-552,-541,-528,-513,-505,-497,-485,-470,-448,-430,-413,-407,-384,-369,-353,-346,-338,-329,-305,-279,
+-266,-252,-241,-227,-213,-189,-163,-132,-106,-82,-56,-31,-7,21,66,121,168,213,263,313,
+368,419,470,519,572,626,687,760,834,909,992,1076,1160,1239,1329,1402,1463,1498,1530,1541,
+1528,1490,1429,1340,1233,1156,1244,1500,1757,2052,2389,2695,3013,3223,3412,3530,3559,3735,3851,3911,
+4090,4232,4353,4417,4468,4488,4469,4456,4482,4475,4497,4558,4612,4620,4352,4019,3835,3670,3498,3261,
+3006,2745,2497,2317,2202,2111,2023,1922,1866,1920,2042,2196,2307,2372,2443,2467,2434,2419,2403,2388,
+2380,2325,2242,2146,2049,1935,1814,1703,1611,1519,1432,1337,1231,1151,1062,952,876,741,675,648,
+575,499,423,351,301,251,107,-16,-110,-185,-229,-262,-301,-342,-392,-436,-475,-474,-480,-478,
+-486,-489,-542,-599,-629,-663,-731,-822,-876,-923,-987,-1084,-1160,-1213,-1260,-1277,-1274,-1289,-1328,-1334,
+-1302,-1319,-1359,-1384,-1383,-1386,-1358,-1294,-1267,-1246,-1244,-1266,-1249,-1215,-1203,-1190,-1159,-1122,-1056,-998,
+-927,-859,-820,-852,-871,-866,-860,-891,-905,-888,-824,-771,-676,-675,-737,-1045,-1269,-1336,-1325,-1278,
+-1207,-1139,-1071,-1000,-938,-898,-878,-857,-828,-814,-809,-807,-797,-779,-771,-764,-753,-739,-723,-706,
+-692,-682,-688,-686,-679,-668,-662,-662,-665,-655,-668,-681,-686,-692,-705,-715,-727,-730,-738,-746,
+-755,-757,-745,-736,-729,-684,-654,-618,-595,-566,-533,-510,-481,-441,-401,-369,-322,-294,-259,-235,
+-207,-174,-135,-98,-67,-29,7,39,77,130,168,215,257,308,353,402,432,473,509,541,
+582,609,639,664,688,714,740,749,778,801,821,869,859,873,904,930,949,974,991,1010,
+1033,1043,1060,1078,1089,1099,1112,1111,1125,1135,1148,1157,1199,1200,1225,1244,1228,1244,1246,1247,
+1252,1277,1338,1415,1361,1318,1313,1317,1328,1329,1326,1332,1342,1349,1343,1356,1380,1378,1396,1402,
+1408,1426,1439,1435,1426,1429,1444,1446,1449,1450,1445,1456,1450,1454,1457,1461,1464,1467,1466,1467,
+1473,1474,1475,1476,1476,1474,1477,1485,1490,1499,1505,1514,1521,1527,1532,1532,1536,1542,1549,1552,
+1557,1580,1588,1614,1622,1645,1678,1715,1767,1837,1926,2038,2130,2201,2163,2166,2166,2177,2200,2284,
+2337,2373,2381,2372,2342,2294,2230,2146,2077,2032,2000,1973,1948,1928,1909,1897,1883,1864,1839,1811,
+1773,1736,1688,1629,1569,1514,1459,1408,1361,1306,1238,1167,1108,1064,1040,1024,1002,973,933,900,
+876,859,851,843,837,824,816,774,704,655,634,627,637,641,617,577,512,410,260,117,
+-2,-96,-138,-120,-53,-4,-35,-104,-170,-250,-305,-357,-404,-455,-493,-572,-650,-732,-806,-878,
+-902,-910,-914,-898,-868,-894,-956,-1065,-1080,-1101,-1142,-1242,-1319,-1385,-1463,-1527,-1565,-1604,-1631,-1638,
+-1637,-1637,-1611,-1567,-1520,-1502,-1495,-1510,-1630,-1755,-1864,-1972,-2064,-2039,-1870,-1747,-1794,-1838,-1861,-1869,
+-1809,-1693,-1622,-1588,-1552,-1526,-1464,-1458,-1486,-1504,-1528,-1543,-1536,-1537,-1507,-1422,-1312,-1214,-1068,-971,
+-978,-918,-938,-1019,-1121,-1237,-1300,-1389,-1369,-1503,-1645,-1711,-1748,-1780,-1814,-1835,-1833,-1833,-1846,-1849,
+-1847,-1847,-1866,-1877,-1874,-1870,-1844,-1813,-1806,-1819,-1843,-1860,-1863,-1895,-1926,-1943,-1957,-2035,-2077,-2071,
+-2032,-2005,-1983,-1871,-1631,-1584,-1690,-1782,-1857,-1957,-2069,-2212,-2187,-2208,-2257,-2223,-2235,-2276,-2322,-2363,
+-2377,-2395,-2413,-2445,-2462,-2488,-2511,-2544,-2564,-2584,-2599,-2613,-2645,-2701,-2715,-2740,-2798,-2892,-2944,-2995,
+-3021,-3077,-3130,-3191,-3283,-3346,-3430,-3502,-3566,-3633,-3692,-3735,-3786,-3883,-3940,-4000,-4071,-4109,-4169,-4245,
+-4282,-4310,-4358,-4409,-4466,-4514,-4545,-4583,-4649,-4676,-4692,-4726,-4746,-4733,-4758,-4779,-4803,-4840,-4876,-4917,
+-4943,-4967,-5002,-5034,-5072,-5132,-5165,-5200,-5235,-5266,-5287,-5314,-5349,-5403,-5475,-5543,-5594,-5612,-5639,-5663,
+-5690,-5706,-5714,-5728,-5752,-5780,-5804,-5809,-5784,-5746,-5740,-5741,-5730,-5694,-5652,-5585,-5492,-5392,-5309,-5235,
+-5241,-5294,-5437,-5596,-5670,-5633,-5517,-5422,-5552,-5564,-5507,-5467,-5484,-5434,-5370,-5325,-5269,-5236,-5219,-5199,
+-5204,-5176,-5139,-5069,-4973,-4909,-4990,-5123,-5126,-5066,-4979,-4886,-4758,-4689,-4685,-4711,-4684,-4618,-4542,-4506,
+-4486,-4423,-4369,-4379,-4343,-4242,-4193,-4155,-4106,-4121,-4118,-4087,-4029,-3971,-3914,-3854,-3810,-3753,-3704,-3645,
+-3592,-3510,-3455,-3391,-3329,-3284,-3233,-3182,-3126,-3066,-3014,-2949,-2874,-2817,-2752,-2668,-2588,-2508,-2433,-2360,
+-2294,-2222,-2168,-2115,-2048,-2000,-1943,-1890,-1824,-1763,-1696,-1613,-1517,-1434,-1362,-1313,-1237,-1141,-1011,-919,
+-838,-801,-830,-840,-801,-732,-606,-518,-569,-573,-581,-524,-447,-405,-364,-364,-299,-209,-111,55,
+238,410,592,765,935,1087,1222,1346,1464,1573,1676,1789,1889,1953,2015,2081,2161,2257,2312,2363,
+2439,2504,2562,2584,2591,2604,2676,2767,2879,2981,3079,3159,3200,3229,3248,3279,3324,3353,3353,3319,
+3276,3222,3174,3177,3199,3232,3312,3435,3486,3536,3561,3588,3626,3679,3735,3797,3863,3912,3940,3944,
+3971,3994,4021,4073,4157,4241,4306,4377,4439,4515,4557,4610,4654,4668,4696,4728,4763,4806,4845,4891,
+4952,5021,5075,5122,5170,5200,5231,5242,5243,5253,5271,5323,5369,5408,5429,5478,5564,5642,5699,5767,
+5808,5867,5927,6003,6062,6118,6182,6239,6303,6258,6277,6266,6182,6093,6046,6027,6047,6077,6168,6216,
+6222,6232,6232,6243,6285,6338,6377,6362,6363,6365,6359,6358,6357,6348,6349,6310,6254,6196,6155,6125,
+6108,6118,6140,6147,6151,6139,6127,6131,6130,6143,6153,6109,6146,6182,6185,6191,6213,6208,6164,6153,
+6105,6078,6098,6098,6089,6124,6040,5997,5993,6005,6018,5991,5955,5932,5946,6039,6152,6184,6093,5912,
+5847,5913,5948,5935,5933,5962,5989,6016,6005,5947,5928,5928,5934,5938,5939,5950,6066,6371,6509,6565,
+6691,6616,6600,6610,6619,6616,6618,6627,6615,6596,6578,6550,6528,6496,6465,6431,6388,6363,6330,6306,
+6261,6231,6201,6172,6116,6066,6027,5989,5940,5889,5884,5864,5810,5739,5650,5616,5605,5572,5514,5530,
+5523,5499,5467,5495,5453,5419,5284,5169,5130,5085,5040,5011,4964,4888,4835,4802,4773,4769,4768,4690,
+4669,4638,4607,4610,4608,4572,4559,4527,4506,4476,4443,4374,4309,4130,3840,3482,3009,2554,2184,2219,
+2447,2620,2767,2875,2929,2899,2814,2694,2583,2498,2418,2333,2254,2182,2088,1998,1904,1839,1783,1734,
+1690,1650,1620,1570,1504,1457,1421,1380,1342,1305,1269,1240,1207,1181,1175,1172,1167,1150,1129,1128,
+1109,1063,1034,1020,1006,984,960,921,894,878,857,834,808,806,777,740,714,702,691,681,
+677,677,664,643,639,619,592,618,757,673,578,557,550,525,491,499,604,645,696,693,
+858,819,661,521,392,300,244,213,186,149,113,71,39,7,-27,-93,-172,-232,-253,-240,
+-128,-85,-114,-129,-104,-53,-134,-183,-214,-222,-213,-227,-269,-350,-393,-419,-462,-493,-515,-503,
+-571,-594,-580,-588,-664,-672,-657,-673,-690,-715,-750,-752,-799,-843,-869,-886,-911,-939,-961,-995,
+-1024,-1052,-1065,-1075,-1078,-1080,-1080,-1082,-1084,-1085,-1081,-1076,-1071,-1072,-1065,-1062,-1060,-1059,-1062,-1060,
+-1048,-1037,-1030,-1016,-1003,-991,-983,-977,-976,-969,-966,-964,-960,-954,-953,-946,-942,-937,-925,-901,
+-897,-894,-886,-870,-853,-835,-814,-801,-802,-793,-788,-773,-763,-755,-744,-736,-726,-710,-696,-684,
+-667,-645,-632,-616,-603,-585,-565,-547,-532,-520,-508,-497,-484,-475,-463,-448,-433,-416,-399,-383,
+-368,-357,-341,-330,-322,-311,-299,-293,-281,-278,-270,-266,-258,-250,-246,-233,-234,-236,-234,-232,
+-231,-231,-236,-235,-242,-245,-250,-251,-253,-259,-263,-267,-275,-280,-282,-285,-289,-288,-290,-294,
+-305,-315,-315,-304,-345,-425,-495,-533,-524,-496,-461,-459,-439,-452,-437,-451,-484,-490,-489,-478,
+-489,-501,-499,-507,-538,-557,-556,-563,-561,-574,-575,-580,-598,-599,-592,-595,-609,-613,-607,-605,
+-602,-600,-602,-595,-597,-605,-602,-598,-596,-598,-596,-597,-583,-583,-577,-565,-561,-559,-556,-547,
+-541,-528,-515,-503,-495,-485,-477,-466,-449,-434,-425,-407,-383,-356,-341,-326,-317,-309,-296,-278,
+-264,-254,-235,-220,-202,-180,-160,-135,-108,-84,-60,-37,-19,10,48,97,143,188,229,270,
+327,384,431,477,525,583,641,705,773,840,913,995,1074,1161,1246,1328,1399,1460,1515,1542,
+1564,1569,1550,1510,1447,1373,1251,1165,1222,1420,1636,1861,2101,2354,2606,2852,3101,3309,3472,3586,
+3774,3970,4182,4300,4283,4408,4431,4467,4444,4446,4477,4506,4525,4581,4591,4513,4305,4095,3978,3918,
+3616,3399,3144,2853,2534,2307,2150,2020,1868,1766,1814,1969,2140,2262,2326,2389,2400,2393,2387,2399,
+2372,2362,2321,2257,2176,2094,1983,1849,1733,1629,1534,1448,1358,1263,1201,1131,1029,920,827,780,
+729,657,573,494,415,329,256,130,37,-68,-145,-185,-219,-265,-295,-337,-403,-444,-445,-451,
+-479,-490,-527,-546,-571,-618,-656,-746,-853,-899,-938,-981,-1071,-1153,-1195,-1240,-1250,-1244,-1249,-1286,
+-1335,-1333,-1315,-1349,-1379,-1393,-1394,-1381,-1342,-1311,-1259,-1217,-1235,-1202,-1175,-1194,-1204,-1172,-1122,-1052,
+-1042,-968,-899,-853,-815,-824,-825,-861,-893,-902,-882,-828,-811,-860,-1002,-1057,-1099,-1226,-1277,-1268,
+-1213,-1131,-1094,-1036,-977,-933,-899,-875,-850,-822,-804,-800,-797,-782,-766,-756,-746,-730,-718,-709,
+-696,-685,-674,-671,-668,-666,-660,-659,-656,-659,-669,-682,-689,-694,-704,-713,-716,-725,-741,-758,
+-770,-775,-763,-749,-749,-731,-708,-659,-633,-618,-577,-547,-521,-485,-451,-411,-349,-317,-289,-251,
+-207,-185,-158,-119,-74,-45,-17,22,63,101,152,183,228,283,338,366,417,456,489,518,
+546,580,613,632,654,669,685,705,717,774,773,826,894,884,897,927,951,976,958,989,
+1023,1037,1067,1082,1080,1090,1104,1109,1102,1098,1127,1203,1169,1186,1202,1225,1236,1232,1248,1264,
+1277,1276,1280,1297,1300,1302,1301,1313,1324,1329,1323,1326,1341,1331,1344,1361,1332,1347,1376,1382,
+1379,1388,1403,1415,1437,1447,1444,1446,1469,1463,1459,1464,1467,1470,1475,1484,1489,1486,1487,1488,
+1494,1501,1502,1496,1493,1492,1495,1498,1505,1512,1523,1535,1545,1556,1560,1559,1557,1562,1568,1577,
+1594,1602,1598,1617,1640,1666,1687,1714,1750,1806,1876,1959,2076,2190,2201,2169,2177,2191,2232,2256,
+2305,2357,2394,2415,2402,2354,2304,2248,2177,2110,2071,2044,2017,1989,1964,1946,1931,1913,1894,1873,
+1844,1808,1767,1723,1673,1617,1569,1518,1467,1416,1356,1282,1204,1138,1092,1070,1063,1049,1027,994,
+960,935,918,906,890,881,868,844,780,708,665,654,689,726,734,725,676,579,419,196,
+43,-62,-117,-125,-67,24,74,87,47,13,-48,-57,-92,-178,-263,-350,-459,-560,-651,-705,
+-781,-832,-828,-830,-800,-792,-798,-847,-942,-1060,-1168,-1203,-1233,-1283,-1331,-1405,-1455,-1475,-1506,-1529,
+-1550,-1565,-1565,-1535,-1491,-1464,-1451,-1457,-1523,-1609,-1702,-1804,-1894,-1988,-1992,-1839,-1670,-1668,-1718,-1732,
+-1716,-1597,-1519,-1504,-1497,-1486,-1445,-1336,-1282,-1330,-1366,-1384,-1419,-1419,-1431,-1390,-1288,-1173,-1058,-940,
+-882,-917,-878,-892,-969,-1104,-1205,-1304,-1332,-1339,-1501,-1636,-1701,-1739,-1757,-1758,-1776,-1789,-1797,-1794,
+-1795,-1796,-1815,-1830,-1831,-1815,-1805,-1785,-1744,-1751,-1782,-1781,-1787,-1802,-1827,-1861,-1906,-1965,-2004,-2013,
+-1990,-1956,-1936,-1925,-1815,-1603,-1558,-1660,-1738,-1831,-1919,-2107,-2087,-2087,-2120,-2159,-2136,-2148,-2205,-2248,
+-2278,-2299,-2327,-2342,-2346,-2403,-2418,-2459,-2469,-2476,-2472,-2495,-2524,-2589,-2599,-2630,-2660,-2752,-2795,-2825,
+-2867,-2911,-2975,-3037,-3103,-3208,-3265,-3339,-3409,-3456,-3511,-3563,-3616,-3708,-3791,-3822,-3880,-3950,-4007,-4079,
+-4113,-4155,-4195,-4272,-4320,-4352,-4408,-4448,-4498,-4541,-4571,-4585,-4619,-4635,-4629,-4655,-4681,-4708,-4746,-4783,
+-4819,-4843,-4875,-4924,-4983,-5027,-5045,-5079,-5117,-5151,-5185,-5215,-5243,-5278,-5334,-5412,-5464,-5510,-5541,-5562,
+-5586,-5609,-5627,-5639,-5662,-5685,-5717,-5740,-5744,-5711,-5679,-5673,-5669,-5657,-5636,-5587,-5501,-5412,-5318,-5235,
+-5166,-5146,-5213,-5365,-5530,-5606,-5566,-5470,-5400,-5503,-5500,-5444,-5417,-5447,-5391,-5334,-5299,-5247,-5224,-5224,
+-5197,-5185,-5153,-5109,-5022,-4919,-4880,-5000,-5137,-5136,-5061,-4969,-4881,-4780,-4731,-4736,-4746,-4705,-4630,-4555,
+-4522,-4509,-4448,-4379,-4373,-4397,-4292,-4225,-4203,-4137,-4150,-4156,-4141,-4080,-4029,-3971,-3923,-3865,-3820,-3761,
+-3696,-3636,-3573,-3500,-3429,-3374,-3322,-3276,-3227,-3176,-3123,-3063,-3004,-2943,-2889,-2815,-2734,-2652,-2571,-2513,
+-2446,-2375,-2299,-2245,-2190,-2124,-2075,-2014,-1954,-1883,-1822,-1749,-1666,-1576,-1496,-1421,-1378,-1318,-1235,-1095,
+-956,-868,-821,-853,-874,-819,-668,-535,-480,-455,-480,-555,-567,-453,-401,-349,-380,-340,-313,-201,
+41,244,401,562,743,916,1053,1174,1282,1387,1490,1587,1683,1790,1884,1965,2032,2095,2155,2224,
+2328,2408,2449,2484,2493,2505,2535,2598,2689,2775,2858,2953,3026,3079,3132,3173,3212,3267,3290,3303,
+3291,3236,3153,3114,3132,3158,3201,3286,3380,3440,3480,3509,3528,3562,3621,3679,3742,3801,3849,3872,
+3872,3892,3915,3934,3987,4090,4188,4251,4307,4378,4452,4495,4550,4586,4594,4607,4636,4685,4742,4790,
+4825,4892,4963,5022,5062,5119,5164,5191,5206,5205,5221,5246,5266,5298,5343,5380,5446,5532,5598,5661,
+5726,5766,5786,5846,5924,6000,6064,6127,6189,6208,6255,6233,6247,6218,6108,6040,5995,5963,6013,6081,
+6106,6149,6182,6180,6190,6233,6272,6306,6316,6344,6331,6338,6328,6325,6328,6329,6306,6261,6196,6165,
+6159,6134,6138,6151,6153,6136,6123,6118,6130,6144,6188,6171,6129,6148,6133,6114,6109,6114,6115,6116,
+6085,6060,6029,6020,5968,6039,6058,6015,5966,5930,5937,5943,5913,5885,5883,5921,6015,6105,6113,6020,
+5829,5876,5939,5950,5960,5955,5985,5962,6015,5983,5965,5959,5962,5961,5953,5930,5895,5888,6050,6224,
+6429,6640,6679,6619,6615,6627,6627,6631,6637,6625,6606,6587,6565,6545,6518,6488,6457,6424,6395,6357,
+6318,6284,6271,6219,6187,6116,6088,6042,6028,6003,5954,5905,5874,5816,5762,5707,5664,5675,5704,5609,
+5548,5516,5501,5546,5546,5399,5322,5269,5238,5147,5070,5022,5025,4993,4941,4904,4846,4806,4772,4770,
+4766,4701,4689,4674,4662,4643,4626,4597,4579,4555,4540,4505,4459,4404,4208,3962,3603,3044,2530,2196,
+2284,2492,2636,2747,2871,2920,2907,2835,2731,2630,2544,2458,2368,2283,2200,2129,2020,1903,1833,1777,
+1735,1696,1653,1605,1558,1528,1479,1434,1392,1348,1301,1263,1227,1195,1183,1179,1179,1174,1159,1150,
+1150,1109,1057,1031,1009,996,982,963,926,888,866,845,826,798,785,770,741,712,699,694,
+686,684,671,650,644,612,609,648,599,640,606,583,670,627,556,481,471,489,507,536,
+599,737,889,758,688,449,327,280,244,223,198,144,91,49,16,-25,-86,-141,-216,-275,
+-321,-320,-245,-156,-204,-217,-176,-130,-167,-179,-249,-252,-257,-274,-298,-400,-419,-421,-489,-508,
+-518,-576,-627,-648,-663,-692,-704,-690,-701,-716,-728,-746,-763,-801,-827,-860,-898,-917,-939,-964,
+-989,-1018,-1046,-1068,-1081,-1081,-1090,-1089,-1091,-1096,-1092,-1090,-1085,-1081,-1081,-1073,-1067,-1066,-1069,-1075,
+-1074,-1065,-1047,-1037,-1039,-1032,-1013,-1003,-1006,-997,-987,-983,-976,-968,-965,-957,-941,-931,-932,-913,
+-908,-894,-891,-876,-869,-864,-856,-842,-827,-815,-800,-785,-771,-761,-750,-738,-726,-711,-704,-688,
+-664,-663,-648,-630,-611,-597,-569,-570,-560,-543,-525,-508,-491,-474,-460,-448,-429,-414,-398,-383,
+-368,-356,-345,-332,-320,-309,-297,-291,-280,-270,-263,-256,-256,-247,-239,-231,-221,-221,-220,-222,
+-222,-222,-222,-224,-227,-231,-237,-241,-242,-239,-245,-248,-251,-254,-258,-264,-271,-285,-288,-276,
+-282,-293,-301,-303,-341,-381,-407,-380,-304,-260,-238,-310,-437,-468,-456,-441,-451,-458,-460,-465,
+-471,-486,-499,-515,-535,-549,-558,-559,-567,-574,-573,-580,-591,-594,-596,-590,-595,-593,-593,-593,
+-586,-585,-579,-577,-576,-573,-576,-583,-587,-575,-581,-565,-576,-574,-564,-556,-546,-540,-533,-529,
+-526,-515,-504,-495,-483,-473,-464,-457,-439,-427,-416,-401,-374,-354,-337,-320,-311,-297,-286,-275,
+-266,-252,-234,-218,-202,-182,-158,-137,-113,-90,-68,-46,-21,8,44,86,127,163,203,249,
+296,341,398,448,493,544,598,657,722,785,857,930,1003,1084,1167,1255,1329,1394,1462,1499,
+1543,1573,1584,1582,1570,1525,1470,1393,1297,1191,1168,1254,1399,1608,1825,2060,2321,2573,2846,3178,
+3426,3590,3806,3958,4009,4152,4342,4401,4442,4425,4452,4418,4455,4516,4607,4611,4531,4397,4376,4337,
+4247,4063,3969,3639,3352,2911,2532,2298,2126,1964,1875,1918,2046,2154,2227,2285,2344,2354,2348,2347,
+2335,2317,2297,2258,2219,2162,2112,2032,1912,1812,1705,1612,1510,1380,1284,1231,1173,1091,988,918,
+863,791,712,623,543,458,363,258,166,97,-12,-89,-110,-161,-216,-265,-328,-386,-419,-446,
+-443,-461,-498,-559,-536,-546,-590,-663,-772,-887,-945,-1002,-1057,-1096,-1142,-1172,-1207,-1211,-1217,-1232,
+-1259,-1325,-1349,-1350,-1351,-1363,-1383,-1381,-1376,-1377,-1341,-1249,-1202,-1198,-1121,-1134,-1177,-1200,-1163,-1105,
+-1080,-1014,-971,-903,-870,-799,-777,-804,-845,-891,-914,-889,-840,-849,-1035,-1146,-1148,-1053,-1071,-1134,
+-1138,-1111,-1070,-1015,-951,-930,-918,-894,-867,-843,-822,-811,-802,-791,-775,-756,-742,-729,-718,-706,
+-696,-686,-674,-663,-656,-649,-647,-646,-644,-648,-656,-667,-677,-687,-691,-702,-716,-721,-731,-749,
+-755,-756,-759,-744,-742,-745,-731,-715,-698,-681,-648,-611,-573,-531,-487,-446,-407,-365,-316,-251,
+-227,-196,-163,-147,-103,-77,-38,6,28,67,114,147,193,237,289,331,372,419,457,492,
+521,545,564,591,612,650,674,712,746,797,806,832,892,884,888,893,913,938,972,1006,
+1028,1045,1053,1063,1073,1082,1107,1118,1108,1090,1102,1121,1140,1167,1186,1209,1231,1244,1253,1257,
+1261,1273,1278,1289,1292,1295,1297,1311,1298,1306,1305,1307,1321,1316,1306,1322,1336,1372,1388,1404,
+1411,1431,1441,1451,1451,1464,1472,1468,1469,1467,1481,1477,1480,1486,1501,1501,1506,1510,1512,1510,
+1512,1518,1522,1524,1516,1511,1511,1515,1519,1526,1539,1552,1568,1580,1591,1591,1592,1598,1594,1613,
+1611,1613,1624,1639,1658,1676,1696,1720,1745,1773,1826,1897,1988,2105,2192,2193,2172,2185,2204,2272,
+2330,2335,2370,2389,2416,2392,2358,2319,2284,2239,2187,2139,2103,2072,2038,2009,1987,1962,1937,1913,
+1893,1869,1837,1797,1759,1714,1669,1620,1576,1528,1474,1406,1323,1242,1171,1124,1101,1095,1086,1068,
+1042,1008,987,968,951,928,913,890,864,793,724,697,715,760,798,809,790,713,581,350,
+137,25,-22,-17,9,16,71,114,146,149,142,99,113,67,-13,-112,-236,-377,-488,-584,
+-660,-720,-776,-790,-787,-754,-729,-744,-805,-890,-1042,-1153,-1186,-1212,-1243,-1281,-1320,-1348,-1341,-1360,
+-1400,-1453,-1498,-1525,-1511,-1454,-1387,-1390,-1438,-1494,-1561,-1648,-1733,-1807,-1903,-1931,-1788,-1599,-1563,-1607,
+-1513,-1578,-1451,-1409,-1399,-1388,-1377,-1346,-1232,-1159,-1204,-1200,-1243,-1300,-1304,-1299,-1240,-1136,-999,-889,
+-883,-816,-824,-816,-869,-956,-1075,-1163,-1247,-1247,-1331,-1498,-1619,-1682,-1708,-1713,-1736,-1739,-1737,-1736,
+-1736,-1735,-1746,-1766,-1776,-1763,-1748,-1746,-1729,-1704,-1726,-1720,-1724,-1731,-1750,-1783,-1829,-1883,-1928,-1939,
+-1958,-1954,-1911,-1850,-1818,-1704,-1542,-1547,-1637,-1731,-1797,-1907,-1996,-1969,-1991,-2023,-2063,-2035,-2062,-2109,
+-2161,-2182,-2203,-2236,-2256,-2301,-2341,-2366,-2391,-2391,-2378,-2389,-2415,-2439,-2467,-2456,-2544,-2599,-2632,-2681,
+-2712,-2750,-2814,-2874,-2949,-3021,-3100,-3182,-3240,-3295,-3339,-3408,-3465,-3511,-3574,-3647,-3714,-3795,-3839,-3896,
+-3930,-3999,-4074,-4107,-4164,-4210,-4258,-4305,-4356,-4397,-4434,-4464,-4484,-4496,-4498,-4524,-4562,-4598,-4627,-4662,
+-4689,-4718,-4756,-4819,-4869,-4897,-4937,-4949,-4989,-5032,-5067,-5104,-5138,-5170,-5208,-5267,-5335,-5388,-5427,-5450,
+-5464,-5484,-5499,-5537,-5565,-5593,-5620,-5647,-5663,-5657,-5622,-5600,-5583,-5584,-5577,-5553,-5505,-5438,-5344,-5255,
+-5164,-5085,-5082,-5170,-5322,-5473,-5549,-5507,-5437,-5412,-5478,-5441,-5389,-5368,-5417,-5360,-5311,-5283,-5232,-5214,
+-5217,-5190,-5169,-5124,-5062,-4960,-4865,-4877,-5044,-5154,-5124,-5048,-4965,-4893,-4806,-4770,-4771,-4765,-4716,-4639,
+-4572,-4540,-4541,-4478,-4409,-4378,-4436,-4342,-4246,-4223,-4180,-4175,-4192,-4181,-4143,-4091,-4036,-3976,-3918,-3865,
+-3805,-3738,-3672,-3612,-3538,-3475,-3415,-3361,-3312,-3266,-3215,-3165,-3108,-3051,-2991,-2927,-2854,-2782,-2710,-2643,
+-2575,-2514,-2444,-2378,-2312,-2250,-2190,-2134,-2074,-2013,-1941,-1880,-1805,-1725,-1645,-1571,-1492,-1436,-1369,-1287,
+-1177,-1014,-907,-843,-867,-878,-804,-685,-596,-543,-519,-560,-669,-624,-536,-442,-427,-348,-258,-338,
+-244,-34,181,365,543,727,889,1017,1128,1219,1303,1386,1481,1569,1668,1767,1874,1956,2004,2038,
+2100,2184,2272,2333,2370,2407,2444,2482,2532,2588,2676,2731,2805,2874,2946,3017,3085,3144,3206,3229,
+3266,3301,3234,3121,3069,3080,3136,3213,3278,3346,3394,3430,3449,3464,3492,3561,3622,3678,3733,3783,
+3804,3807,3818,3832,3858,3916,4026,4129,4202,4271,4343,4398,4449,4483,4513,4531,4541,4571,4613,4666,
+4723,4759,4825,4900,4968,5024,5078,5116,5148,5180,5182,5191,5210,5213,5240,5277,5319,5385,5466,5545,
+5619,5685,5736,5759,5801,5848,5923,6006,6098,6151,6190,6213,6195,6176,6169,6128,6019,5959,5932,5957,
+6015,6051,6086,6100,6121,6131,6193,6219,6278,6305,6303,6283,6278,6276,6283,6292,6313,6319,6267,6204,
+6174,6174,6135,6131,6163,6144,6122,6089,6092,6123,6178,6222,6193,6146,6115,6058,6019,6028,6075,6083,
+6076,6043,6011,5972,5947,5908,5990,5971,5977,5958,5911,5896,5875,5836,5826,5838,5888,5960,6023,6010,
+5899,5805,5952,5944,5911,5926,5974,6016,6026,5998,5995,6009,6006,6004,5985,5948,5890,5820,5705,5727,
+5833,6142,6468,6653,6651,6631,6625,6634,6643,6645,6639,6621,6601,6580,6564,6538,6503,6484,6450,6416,
+6382,6338,6317,6283,6246,6228,6158,6109,6087,6067,6034,5971,5922,5875,5823,5779,5746,5738,5776,5716,
+5568,5484,5445,5424,5493,5398,5245,5156,5140,5128,5056,5038,5049,5055,5043,4971,4909,4875,4869,4808,
+4780,4775,4768,4737,4715,4705,4687,4671,4644,4621,4622,4600,4556,4548,4496,4305,4075,3663,3084,2562,
+2252,2390,2619,2718,2777,2900,2909,2887,2835,2756,2669,2586,2499,2408,2307,2220,2170,2029,1918,1843,
+1780,1744,1709,1662,1617,1571,1534,1500,1462,1411,1356,1298,1252,1214,1197,1190,1186,1182,1177,1166,
+1155,1156,1106,1061,1030,1005,987,977,973,948,891,859,834,811,784,767,749,727,687,679,
+680,678,685,667,642,617,624,594,590,562,543,518,514,563,594,534,459,430,430,425,
+459,503,584,684,636,534,430,342,296,289,319,350,221,139,79,32,-21,-66,-110,-157,
+-223,-280,-315,-313,-249,-200,-251,-290,-303,-288,-239,-253,-313,-338,-360,-358,-282,-393,-465,-525,
+-569,-576,-600,-646,-665,-681,-703,-727,-726,-739,-746,-755,-757,-767,-785,-824,-868,-899,-919,-942,
+-961,-979,-1007,-1035,-1054,-1072,-1076,-1090,-1092,-1095,-1097,-1094,-1095,-1089,-1088,-1094,-1082,-1086,-1082,-1083,
+-1088,-1087,-1079,-1064,-1042,-1058,-1057,-1046,-1031,-1021,-1010,-1007,-998,-990,-986,-980,-968,-955,-947,-944,
+-941,-917,-901,-894,-883,-876,-862,-857,-837,-821,-807,-791,-777,-768,-759,-746,-737,-722,-708,-696,
+-681,-671,-656,-637,-626,-603,-601,-585,-575,-555,-533,-515,-489,-488,-479,-463,-448,-431,-409,-394,
+-383,-367,-355,-343,-332,-319,-305,-293,-285,-273,-263,-251,-246,-243,-233,-227,-220,-211,-211,-207,
+-208,-209,-210,-212,-218,-218,-220,-223,-224,-227,-228,-232,-238,-240,-242,-248,-249,-257,-260,-274,
+-285,-309,-343,-346,-329,-345,-348,-340,-319,-297,-306,-347,-390,-419,-417,-418,-426,-432,-432,-438,
+-456,-470,-494,-510,-521,-535,-538,-543,-538,-543,-554,-562,-571,-574,-574,-577,-588,-581,-575,-569,
+-565,-567,-574,-578,-568,-565,-556,-557,-554,-559,-550,-544,-550,-549,-547,-546,-544,-540,-530,-522,
+-512,-504,-497,-482,-470,-462,-453,-446,-433,-417,-405,-386,-364,-347,-333,-322,-310,-297,-279,-272,
+-261,-247,-228,-212,-193,-175,-159,-137,-118,-97,-76,-53,-25,1,37,75,113,151,186,223,
+267,316,365,404,458,510,562,612,670,737,805,871,944,1016,1099,1182,1256,1323,1376,1432,
+1486,1532,1569,1574,1596,1599,1581,1559,1510,1450,1351,1223,1109,1113,1247,1420,1594,1853,2120,2346,
+2682,3067,3292,3512,3732,3887,4120,4263,4329,4419,4420,4453,4421,4417,4459,4550,4644,4626,4521,4588,
+4644,4534,4460,4471,4237,3844,3397,2952,2622,2388,2210,2114,2120,2179,2222,2250,2275,2305,2310,2315,
+2302,2273,2239,2206,2165,2143,2118,2095,2037,1926,1821,1740,1678,1561,1407,1303,1253,1221,1165,1080,
+1002,925,836,748,659,568,475,374,272,184,141,43,-46,-88,-147,-191,-236,-304,-368,-401,
+-419,-418,-443,-498,-550,-534,-546,-590,-680,-800,-905,-986,-1057,-1124,-1142,-1155,-1157,-1197,-1201,-1208,
+-1228,-1258,-1308,-1345,-1357,-1352,-1352,-1355,-1333,-1321,-1346,-1309,-1244,-1197,-1171,-1069,-1082,-1153,-1171,-1147,
+-1092,-1028,-976,-968,-936,-900,-857,-818,-793,-845,-887,-900,-879,-837,-846,-1055,-1157,-1092,-894,-765,
+-859,-898,-882,-974,-894,-865,-901,-902,-877,-858,-848,-836,-825,-807,-790,-768,-753,-736,-720,-708,
+-696,-684,-675,-665,-654,-642,-633,-632,-627,-626,-631,-642,-656,-668,-679,-681,-689,-708,-715,-729,
+-738,-738,-744,-753,-756,-760,-768,-746,-722,-698,-681,-647,-616,-588,-546,-506,-452,-395,-354,-309,
+-256,-225,-193,-154,-137,-112,-78,-47,-15,27,71,110,173,219,255,297,338,364,401,439,
+466,501,543,589,626,654,661,670,714,757,816,861,824,891,899,903,906,924,960,979,
+997,1021,1039,1048,1063,1086,1098,1084,1095,1083,1103,1135,1165,1171,1201,1204,1228,1233,1248,1264,
+1279,1284,1278,1283,1280,1276,1296,1299,1316,1321,1322,1318,1324,1321,1308,1326,1334,1350,1352,1374,
+1392,1410,1440,1435,1439,1456,1475,1480,1485,1467,1500,1498,1502,1511,1523,1525,1528,1528,1531,1535,
+1534,1539,1534,1537,1537,1532,1528,1529,1534,1541,1550,1565,1582,1597,1617,1626,1627,1631,1635,1638,
+1641,1637,1639,1653,1678,1692,1709,1726,1750,1762,1782,1826,1898,1999,2145,2220,2186,2140,2164,2184,
+2232,2329,2454,2457,2468,2435,2408,2373,2358,2341,2314,2269,2214,2164,2123,2084,2052,2028,1998,1963,
+1937,1915,1895,1868,1834,1799,1760,1713,1669,1621,1579,1526,1456,1371,1287,1217,1167,1140,1129,1118,
+1098,1073,1047,1029,1009,985,956,919,881,849,798,755,754,777,803,831,847,804,699,491,
+265,152,96,55,44,43,54,83,144,204,231,224,197,209,154,86,6,-101,-224,-338,
+-445,-571,-677,-745,-769,-768,-738,-726,-730,-791,-881,-1009,-1086,-1139,-1171,-1193,-1217,-1225,-1211,-1180,
+-1190,-1244,-1332,-1420,-1441,-1390,-1332,-1332,-1363,-1413,-1462,-1526,-1589,-1649,-1717,-1808,-1837,-1715,-1548,-1505,
+-1554,-1543,-1503,-1354,-1318,-1303,-1271,-1273,-1251,-1148,-1042,-1079,-1095,-1135,-1171,-1162,-1155,-1081,-968,-841,
+-775,-813,-786,-767,-768,-819,-953,-1041,-1117,-1156,-1205,-1385,-1528,-1618,-1661,-1684,-1685,-1694,-1703,-1703,
+-1690,-1676,-1680,-1686,-1699,-1705,-1694,-1683,-1683,-1675,-1677,-1679,-1683,-1682,-1692,-1713,-1753,-1809,-1839,-1854,
+-1876,-1908,-1922,-1863,-1705,-1649,-1631,-1475,-1514,-1626,-1703,-1773,-1886,-1856,-1871,-1887,-1923,-1952,-1980,-2016,
+-2044,-2072,-2098,-2126,-2142,-2176,-2234,-2243,-2258,-2250,-2257,-2291,-2329,-2338,-2370,-2380,-2435,-2423,-2500,-2541,
+-2569,-2616,-2659,-2716,-2774,-2849,-2932,-3013,-3081,-3138,-3195,-3248,-3303,-3372,-3429,-3468,-3557,-3613,-3665,-3694,
+-3792,-3858,-3882,-3939,-4014,-4059,-4106,-4150,-4194,-4249,-4307,-4328,-4336,-4352,-4355,-4408,-4442,-4463,-4510,-4542,
+-4562,-4590,-4624,-4674,-4738,-4789,-4808,-4819,-4848,-4892,-4938,-4983,-5024,-5061,-5095,-5137,-5195,-5248,-5280,-5315,
+-5341,-5363,-5383,-5415,-5457,-5495,-5519,-5549,-5569,-5577,-5557,-5520,-5501,-5494,-5506,-5498,-5475,-5421,-5362,-5279,
+-5171,-5078,-5006,-5020,-5125,-5276,-5414,-5488,-5467,-5408,-5397,-5432,-5382,-5337,-5327,-5385,-5336,-5295,-5271,-5231,
+-5212,-5210,-5181,-5146,-5072,-4983,-4897,-4854,-4940,-5104,-5153,-5105,-5032,-4961,-4904,-4833,-4794,-4787,-4769,-4718,
+-4649,-4592,-4563,-4571,-4507,-4449,-4406,-4467,-4391,-4284,-4260,-4226,-4194,-4202,-4205,-4189,-4137,-4085,-4017,-3956,
+-3902,-3840,-3774,-3709,-3643,-3583,-3518,-3455,-3399,-3349,-3298,-3251,-3201,-3149,-3095,-3034,-2969,-2898,-2829,-2762,
+-2701,-2641,-2569,-2500,-2434,-2372,-2315,-2253,-2189,-2128,-2068,-1994,-1927,-1857,-1783,-1712,-1642,-1569,-1500,-1427,
+-1356,-1237,-1097,-988,-910,-904,-901,-874,-834,-802,-777,-782,-783,-743,-659,-586,-518,-460,-350,-318,
+-373,-261,-41,133,335,533,702,841,959,1066,1145,1206,1276,1363,1453,1536,1629,1728,1817,1878,
+1931,1969,2038,2128,2204,2284,2352,2399,2427,2469,2510,2575,2650,2684,2745,2817,2910,2998,3070,3131,
+3174,3244,3275,3163,3020,2972,3016,3103,3188,3247,3325,3354,3377,3403,3412,3438,3478,3541,3601,3654,
+3703,3730,3753,3758,3761,3788,3861,3972,4076,4158,4221,4279,4326,4371,4400,4439,4475,4487,4510,4546,
+4593,4641,4690,4751,4821,4891,4958,5021,5072,5100,5126,5122,5135,5158,5173,5200,5224,5262,5321,5390,
+5464,5536,5618,5680,5713,5740,5809,5886,5961,6058,6106,6161,6198,6182,6126,6121,6114,6031,5933,5895,
+5920,5961,6011,6055,6061,6051,6070,6126,6171,6229,6279,6258,6240,6238,6241,6243,6273,6312,6323,6247,
+6180,6163,6143,6101,6092,6100,6109,6109,6077,6069,6127,6216,6217,6178,6152,6091,6051,6048,6033,6019,
+6015,6010,5985,5947,5928,5939,5902,5930,5911,5921,5925,5890,5852,5805,5776,5779,5826,5895,5950,5965,
+5930,5826,5842,5945,5967,5965,5955,5984,6014,6039,6018,6014,6032,6035,6045,6008,5946,5856,5758,5598,
+5538,5620,5981,6363,6601,6652,6663,6668,6636,6647,6651,6645,6626,6611,6594,6575,6547,6517,6502,6469,
+6441,6399,6359,6343,6305,6261,6231,6184,6135,6101,6081,6055,5988,5936,5870,5845,5787,5746,5838,5801,
+5717,5645,5582,5511,5465,5404,5255,5219,5166,5060,5044,5040,5067,5062,5094,5081,5012,4926,4885,4861,
+4843,4817,4798,4810,4799,4777,4759,4747,4726,4698,4676,4686,4638,4631,4619,4515,4380,4126,3686,3040,
+2513,2291,2478,2707,2831,2842,2838,2837,2828,2810,2757,2690,2611,2522,2428,2328,2244,2157,2053,1953,
+1874,1805,1757,1715,1674,1630,1582,1549,1517,1476,1423,1361,1298,1247,1210,1199,1206,1206,1200,1187,
+1174,1174,1162,1120,1092,1049,1012,990,972,978,957,890,847,823,798,775,756,735,717,698,
+671,670,672,668,647,627,603,577,548,510,498,495,475,457,459,461,450,421,396,383,
+387,404,424,452,471,466,421,377,354,363,381,444,455,359,221,124,57,9,-43,-86,
+-121,-158,-189,-229,-246,-303,-288,-194,-255,-372,-428,-435,-402,-377,-430,-385,-421,-437,-431,-505,
+-537,-577,-618,-635,-638,-686,-714,-730,-754,-769,-775,-770,-781,-785,-791,-805,-820,-819,-878,-915,
+-933,-956,-977,-1000,-1018,-1037,-1057,-1069,-1081,-1090,-1094,-1097,-1094,-1098,-1092,-1094,-1105,-1096,-1097,-1096,
+-1096,-1097,-1093,-1087,-1080,-1070,-1072,-1071,-1062,-1047,-1036,-1034,-1029,-1017,-1003,-1004,-998,-992,-985,-972,
+-960,-956,-932,-916,-909,-900,-886,-873,-865,-843,-826,-811,-785,-778,-767,-758,-742,-730,-715,-700,
+-685,-670,-655,-642,-630,-615,-597,-585,-574,-550,-538,-529,-516,-503,-490,-466,-452,-427,-413,-401,
+-388,-365,-368,-350,-332,-325,-315,-302,-287,-275,-269,-259,-249,-234,-229,-222,-220,-209,-202,-203,
+-199,-196,-202,-197,-198,-202,-203,-208,-209,-212,-217,-221,-228,-233,-237,-243,-245,-243,-246,-250,
+-255,-270,-281,-297,-306,-304,-299,-293,-309,-327,-341,-360,-374,-385,-387,-384,-397,-403,-411,-429,
+-427,-453,-466,-491,-495,-504,-516,-524,-525,-515,-521,-538,-550,-562,-567,-558,-564,-573,-567,-564,
+-565,-557,-560,-560,-567,-562,-551,-543,-544,-549,-535,-529,-526,-524,-522,-518,-511,-510,-511,-512,
+-506,-500,-491,-488,-472,-456,-442,-431,-421,-403,-386,-377,-362,-349,-333,-318,-304,-294,-277,-258,
+-252,-240,-223,-207,-189,-169,-152,-132,-112,-94,-78,-60,-34,-5,25,62,100,137,174,209,
+247,290,334,380,424,466,521,575,626,682,748,819,890,963,1038,1109,1193,1255,1303,1357,
+1410,1462,1507,1544,1566,1596,1617,1622,1612,1593,1559,1501,1411,1281,1145,1092,1140,1269,1521,1778,
+1995,2259,2591,2906,3193,3492,3629,3844,4036,4125,4296,4404,4502,4468,4448,4454,4512,4589,4641,4664,
+4676,4763,4784,4720,4731,4556,4312,3986,3600,3191,2914,2694,2489,2349,2304,2280,2260,2240,2247,2265,
+2279,2271,2238,2187,2124,2094,2067,2063,2055,2011,1916,1811,1757,1725,1608,1465,1356,1296,1271,1232,
+1159,1070,973,875,781,690,593,488,384,288,206,160,73,-25,-92,-145,-190,-224,-252,-335,
+-380,-404,-404,-412,-464,-505,-545,-586,-621,-706,-831,-938,-1026,-1097,-1148,-1165,-1171,-1181,-1204,-1197,
+-1194,-1208,-1250,-1285,-1324,-1342,-1323,-1306,-1286,-1268,-1268,-1277,-1250,-1228,-1194,-1137,-1084,-1075,-1123,-1136,
+-1080,-1016,-944,-922,-956,-960,-927,-875,-844,-851,-873,-880,-883,-841,-804,-810,-943,-1069,-1068,-964,
+-900,-941,-863,-928,-990,-957,-918,-890,-871,-857,-861,-861,-848,-830,-808,-786,-762,-743,-724,-708,
+-692,-681,-672,-663,-654,-642,-631,-623,-618,-612,-611,-615,-629,-645,-659,-665,-670,-678,-697,-704,
+-723,-726,-727,-732,-715,-716,-738,-747,-720,-725,-696,-681,-659,-625,-597,-555,-514,-470,-420,-363,
+-308,-270,-224,-182,-174,-144,-110,-82,-59,-24,8,54,101,144,199,234,292,338,384,426,
+467,482,523,555,605,636,634,656,693,713,741,799,863,839,910,924,918,934,949,965,
+1001,1020,1030,1041,1037,1045,1053,1063,1086,1106,1119,1146,1145,1159,1183,1200,1230,1235,1252,1264,
+1274,1286,1293,1285,1280,1290,1283,1300,1298,1297,1299,1300,1303,1302,1301,1325,1325,1339,1362,1382,
+1410,1425,1441,1456,1470,1470,1482,1489,1496,1507,1500,1531,1526,1528,1533,1536,1539,1541,1539,1541,
+1544,1548,1558,1560,1566,1555,1543,1540,1544,1553,1563,1573,1589,1607,1624,1649,1666,1675,1677,1683,
+1683,1682,1679,1703,1692,1711,1719,1728,1744,1758,1779,1801,1837,1901,1994,2118,2210,2183,2146,2185,
+2253,2262,2392,2498,2531,2524,2503,2481,2446,2426,2403,2371,2319,2260,2206,2158,2111,2077,2056,2028,
+1996,1970,1950,1929,1907,1880,1850,1810,1761,1712,1669,1626,1578,1509,1421,1338,1267,1216,1187,1171,
+1154,1132,1108,1085,1065,1045,1016,970,906,862,833,812,805,816,823,819,817,823,758,587,
+380,258,211,188,157,110,106,114,133,180,235,276,269,278,279,267,199,127,34,-82,
+-195,-312,-441,-583,-678,-725,-732,-700,-689,-703,-766,-862,-965,-1012,-1077,-1109,-1133,-1150,-1142,-1093,
+-1035,-1026,-1070,-1140,-1242,-1308,-1321,-1322,-1332,-1362,-1399,-1446,-1492,-1533,-1576,-1629,-1701,-1738,-1643,-1499,
+-1442,-1491,-1491,-1452,-1301,-1239,-1221,-1185,-1193,-1133,-1067,-999,-991,-1022,-1034,-1055,-1039,-998,-903,-790,
+-725,-695,-720,-692,-710,-716,-747,-889,-971,-1041,-1116,-1303,-1441,-1533,-1585,-1614,-1634,-1647,-1668,-1673,
+-1653,-1641,-1640,-1632,-1637,-1646,-1650,-1654,-1647,-1631,-1618,-1658,-1644,-1641,-1649,-1658,-1677,-1698,-1764,-1775,
+-1800,-1834,-1862,-1884,-1876,-1828,-1746,-1625,-1472,-1461,-1596,-1679,-1796,-1784,-1775,-1784,-1765,-1803,-1863,-1897,
+-1926,-1943,-1973,-2000,-2024,-2052,-2091,-2106,-2105,-2101,-2145,-2182,-2191,-2188,-2215,-2296,-2286,-2317,-2367,-2401,
+-2436,-2484,-2525,-2563,-2617,-2692,-2759,-2834,-2896,-2979,-3018,-3098,-3162,-3222,-3267,-3340,-3378,-3445,-3483,-3538,
+-3610,-3675,-3731,-3767,-3841,-3895,-3938,-4012,-4041,-4093,-4159,-4197,-4199,-4210,-4253,-4252,-4282,-4335,-4386,-4416,
+-4459,-4464,-4499,-4526,-4579,-4647,-4702,-4710,-4723,-4757,-4797,-4849,-4898,-4945,-4984,-5019,-5061,-5108,-5152,-5180,
+-5217,-5247,-5271,-5315,-5355,-5383,-5415,-5434,-5472,-5481,-5470,-5436,-5406,-5397,-5411,-5437,-5449,-5428,-5376,-5301,
+-5207,-5095,-4997,-4927,-4957,-5073,-5224,-5359,-5440,-5423,-5368,-5368,-5381,-5326,-5274,-5287,-5349,-5319,-5288,-5266,
+-5230,-5211,-5197,-5163,-5101,-4986,-4917,-4888,-4924,-5036,-5133,-5133,-5080,-5017,-4961,-4920,-4858,-4823,-4802,-4773,
+-4723,-4659,-4610,-4588,-4593,-4536,-4489,-4436,-4471,-4423,-4341,-4302,-4251,-4210,-4206,-4221,-4210,-4178,-4127,-4060,
+-3997,-3937,-3878,-3816,-3738,-3677,-3615,-3547,-3496,-3438,-3386,-3334,-3285,-3236,-3185,-3131,-3070,-3010,-2943,-2872,
+-2802,-2742,-2683,-2617,-2559,-2498,-2438,-2379,-2314,-2244,-2181,-2117,-2037,-1971,-1903,-1830,-1772,-1704,-1641,-1569,
+-1501,-1444,-1333,-1210,-1075,-1012,-968,-986,-990,-941,-918,-903,-878,-846,-777,-706,-634,-561,-483,-416,
+-409,-362,-249,-50,132,343,516,654,772,890,979,1027,1073,1155,1256,1349,1417,1499,1590,1663,
+1735,1812,1875,1959,2046,2097,2170,2257,2336,2380,2407,2445,2482,2515,2564,2626,2713,2818,2906,2985,
+3048,3090,3167,3121,2977,2898,2890,2954,3060,3171,3239,3301,3318,3336,3342,3361,3373,3411,3454,3513,
+3564,3611,3653,3689,3697,3709,3731,3816,3920,4007,4076,4139,4199,4229,4268,4307,4355,4405,4425,4445,
+4477,4529,4577,4624,4684,4745,4820,4887,4955,5009,5047,5051,5046,5059,5075,5100,5124,5159,5206,5267,
+5331,5394,5452,5525,5597,5650,5691,5770,5850,5914,5997,6085,6153,6187,6134,6072,6067,6075,6021,5919,
+5855,5834,5848,5889,6020,6065,6018,6025,6066,6120,6171,6211,6235,6236,6236,6228,6219,6267,6243,6179,
+6174,6139,6118,6088,6043,6053,6071,6078,6091,6078,6046,6065,6110,6123,6156,6151,6071,6055,6047,6026,
+6002,5971,5936,5901,5886,5931,6062,5964,5856,5853,5871,5889,5892,5843,5781,5745,5750,5803,5885,5980,
+6006,5920,5844,5825,5904,5973,6064,6060,6002,5999,6017,6021,6008,6032,6057,6051,6017,5949,5875,5736,
+5572,5466,5612,5981,6393,6610,6608,6646,6668,6680,6655,6642,6645,6634,6621,6603,6580,6552,6543,6530,
+6477,6442,6415,6390,6354,6325,6287,6258,6204,6161,6122,6085,6055,5989,5941,5873,5840,5806,5755,5852,
+5821,5774,5720,5686,5586,5533,5388,5306,5170,5102,5035,4999,5009,5036,5052,5056,5073,5018,4943,4902,
+4886,4880,4854,4842,4837,4835,4812,4800,4785,4763,4745,4727,4744,4705,4700,4651,4541,4406,4113,3620,
+2960,2453,2322,2536,2756,2880,2911,2865,2811,2770,2748,2735,2696,2626,2533,2431,2336,2259,2178,2081,
+1993,1905,1826,1764,1718,1695,1635,1586,1555,1519,1478,1425,1367,1305,1264,1241,1229,1246,1250,1242,
+1215,1193,1185,1164,1143,1112,1069,1026,995,968,961,933,883,837,814,792,770,756,732,715,
+698,672,651,662,659,638,623,599,567,530,500,508,516,450,441,430,400,383,376,366,
+351,341,345,358,364,368,366,366,388,375,401,497,650,742,567,328,183,84,36,16,
+-76,-131,-153,-157,-189,-245,-301,-355,-349,-262,-307,-438,-475,-488,-481,-486,-507,-435,-527,-520,
+-509,-516,-565,-607,-608,-658,-709,-742,-748,-762,-790,-797,-809,-803,-805,-807,-810,-824,-852,-876,
+-899,-920,-950,-970,-992,-1001,-1021,-1035,-1058,-1070,-1084,-1093,-1099,-1101,-1104,-1104,-1107,-1116,-1104,-1104,
+-1104,-1104,-1105,-1101,-1092,-1086,-1082,-1080,-1075,-1069,-1059,-1055,-1052,-1047,-1036,-1029,-1030,-1025,-1013,-999,
+-980,-968,-968,-959,-940,-927,-918,-907,-890,-883,-864,-840,-832,-811,-798,-781,-769,-755,-734,-719,
+-698,-685,-670,-656,-639,-626,-610,-595,-575,-565,-549,-535,-523,-507,-486,-477,-465,-450,-430,-415,
+-394,-376,-362,-351,-334,-322,-317,-310,-290,-285,-273,-264,-251,-243,-230,-224,-215,-212,-198,-196,
+-193,-193,-190,-193,-184,-189,-192,-195,-197,-205,-207,-211,-220,-226,-231,-235,-238,-244,-248,-246,
+-251,-268,-281,-282,-279,-280,-288,-294,-302,-318,-336,-344,-351,-360,-366,-369,-371,-379,-391,-404,
+-413,-428,-441,-459,-472,-477,-479,-492,-507,-505,-501,-511,-523,-539,-545,-553,-550,-562,-563,-565,
+-557,-554,-553,-544,-552,-550,-558,-554,-545,-538,-532,-526,-536,-498,-501,-504,-495,-489,-480,-476,
+-477,-478,-473,-465,-457,-442,-429,-416,-404,-390,-376,-367,-360,-352,-339,-316,-297,-281,-275,-257,
+-245,-237,-219,-201,-188,-172,-151,-128,-114,-94,-75,-61,-44,-18,10,45,82,118,152,191,
+230,268,312,353,397,440,486,531,588,645,704,767,836,906,979,1040,1114,1185,1236,1271,
+1327,1384,1434,1483,1519,1545,1579,1615,1638,1644,1645,1631,1614,1574,1504,1368,1206,1087,1130,1331,
+1558,1803,1987,2254,2560,2849,3236,3396,3462,3666,3872,4214,4398,4414,4432,4472,4451,4469,4540,4578,
+4635,4688,4759,4811,4757,4663,4465,4370,4284,4138,3799,3490,3244,2964,2717,2538,2422,2323,2246,2202,
+2188,2204,2224,2227,2198,2143,2103,2048,2025,2023,1985,1902,1825,1762,1726,1626,1513,1426,1359,1321,
+1281,1215,1128,1021,912,816,724,625,516,410,318,239,184,85,-6,-85,-148,-201,-217,-248,
+-299,-356,-372,-395,-424,-466,-505,-550,-608,-660,-722,-844,-953,-1029,-1106,-1162,-1199,-1202,-1205,-1206,
+-1187,-1172,-1167,-1221,-1266,-1294,-1294,-1268,-1231,-1217,-1192,-1213,-1215,-1156,-1118,-1142,-1083,-1086,-1078,-1098,
+-1082,-1013,-927,-887,-887,-932,-958,-936,-901,-874,-881,-890,-883,-853,-811,-782,-777,-800,-839,-911,
+-919,-955,-1059,-1069,-1049,-1001,-919,-832,-792,-813,-845,-863,-858,-844,-823,-800,-775,-747,-729,-712,
+-689,-673,-665,-655,-648,-641,-629,-619,-609,-600,-594,-593,-595,-610,-626,-641,-651,-661,-672,-684,
+-694,-701,-721,-712,-724,-720,-712,-696,-715,-699,-710,-683,-671,-646,-618,-599,-570,-531,-484,-429,
+-382,-322,-272,-232,-208,-175,-149,-120,-91,-63,-48,7,47,96,156,216,258,311,350,389,
+425,451,473,517,542,577,606,632,667,694,708,744,790,838,837,850,906,957,968,947,
+969,992,997,1015,1023,1034,1064,1084,1090,1097,1115,1158,1157,1162,1187,1221,1224,1248,1263,1279,
+1281,1285,1292,1291,1288,1283,1302,1304,1299,1292,1300,1304,1301,1312,1312,1319,1331,1328,1352,1378,
+1382,1412,1409,1436,1456,1481,1494,1511,1511,1511,1524,1531,1529,1547,1540,1534,1536,1541,1545,1550,
+1563,1564,1568,1571,1567,1565,1558,1558,1563,1566,1573,1581,1600,1623,1646,1665,1686,1703,1710,1711,
+1719,1724,1728,1722,1717,1713,1712,1735,1739,1757,1780,1800,1821,1848,1904,1976,2057,2171,2190,2164,
+2224,2313,2360,2424,2513,2557,2556,2547,2550,2525,2493,2459,2406,2338,2277,2221,2166,2116,2083,2065,
+2045,2021,2001,1984,1967,1945,1923,1902,1865,1813,1764,1724,1686,1633,1558,1470,1382,1312,1260,1231,
+1216,1199,1171,1142,1118,1098,1078,1044,989,926,888,879,880,890,892,844,789,757,725,638,
+460,346,334,350,331,252,192,173,169,180,229,276,303,296,346,357,372,312,237,173,
+63,-78,-190,-262,-428,-595,-648,-652,-626,-637,-670,-740,-831,-917,-968,-1020,-1040,-1058,-1070,-1052,
+-993,-933,-915,-950,-1053,-1202,-1285,-1309,-1323,-1344,-1371,-1400,-1436,-1466,-1487,-1508,-1541,-1603,-1667,-1581,
+-1444,-1369,-1407,-1415,-1394,-1288,-1184,-1149,-1092,-1107,-1103,-1028,-977,-928,-919,-887,-870,-842,-783,-717,
+-622,-578,-586,-583,-591,-637,-619,-652,-772,-857,-965,-1122,-1329,-1440,-1504,-1541,-1558,-1590,-1608,-1610,
+-1613,-1617,-1605,-1592,-1592,-1600,-1606,-1611,-1615,-1604,-1576,-1585,-1611,-1600,-1598,-1601,-1617,-1631,-1685,-1702,
+-1729,-1759,-1790,-1808,-1821,-1831,-1830,-1753,-1572,-1406,-1421,-1564,-1698,-1716,-1676,-1703,-1716,-1730,-1767,-1793,
+-1801,-1827,-1851,-1890,-1911,-1940,-1962,-1976,-1988,-1995,-2041,-2076,-2069,-2068,-2161,-2178,-2176,-2193,-2219,-2247,
+-2295,-2329,-2380,-2417,-2470,-2522,-2582,-2668,-2723,-2801,-2865,-2930,-2986,-3067,-3120,-3154,-3219,-3272,-3333,-3387,
+-3421,-3494,-3559,-3632,-3684,-3737,-3788,-3856,-3918,-3946,-4002,-4029,-4062,-4084,-4104,-4136,-4133,-4206,-4244,-4296,
+-4326,-4356,-4378,-4416,-4437,-4479,-4563,-4612,-4619,-4638,-4673,-4717,-4768,-4817,-4864,-4904,-4939,-4979,-5023,-5059,
+-5101,-5139,-5172,-5212,-5245,-5268,-5297,-5324,-5358,-5385,-5389,-5362,-5326,-5305,-5311,-5350,-5393,-5408,-5394,-5338,
+-5253,-5143,-5031,-4923,-4861,-4906,-5007,-5189,-5324,-5391,-5375,-5324,-5294,-5318,-5269,-5226,-5240,-5308,-5292,-5275,
+-5248,-5211,-5182,-5166,-5124,-5034,-4924,-4899,-4951,-5027,-5094,-5129,-5105,-5046,-4997,-4955,-4929,-4876,-4840,-4821,
+-4783,-4730,-4672,-4629,-4612,-4615,-4568,-4525,-4468,-4477,-4448,-4376,-4327,-4279,-4242,-4232,-4213,-4228,-4201,-4160,
+-4100,-4033,-3971,-3909,-3847,-3792,-3716,-3653,-3593,-3531,-3478,-3421,-3369,-3318,-3268,-3220,-3162,-3106,-3043,-2977,
+-2917,-2852,-2791,-2737,-2679,-2618,-2565,-2509,-2447,-2376,-2299,-2229,-2154,-2079,-2018,-1947,-1882,-1836,-1771,-1711,
+-1640,-1586,-1540,-1451,-1315,-1192,-1145,-1120,-1104,-1056,-977,-951,-937,-881,-823,-744,-710,-644,-588,-536,
+-491,-410,-319,-190,-40,171,367,503,614,711,804,866,911,965,1051,1144,1228,1312,1389,1474,
+1543,1610,1691,1772,1859,1929,1992,2068,2139,2199,2251,2291,2340,2372,2389,2406,2475,2591,2695,2780,
+2863,2931,3000,3036,2958,2840,2814,2857,2922,3012,3139,3212,3259,3269,3281,3293,3300,3310,3338,3374,
+3426,3473,3527,3580,3606,3626,3644,3685,3765,3852,3917,3968,4034,4093,4119,4152,4205,4264,4329,4370,
+4392,4432,4480,4528,4592,4645,4700,4767,4833,4885,4939,4987,5003,4983,4994,5025,5035,5051,5092,5137,
+5205,5295,5349,5405,5450,5517,5582,5647,5733,5813,5889,5973,6044,6088,6109,6061,6012,6033,6028,6009,
+5927,5838,5806,5806,5844,5901,5990,5971,5963,6008,6059,6101,6116,6148,6162,6133,6126,6141,6140,6101,
+6084,6087,6068,6050,6015,5976,6012,6001,6006,6000,5981,6004,6027,6038,6066,6103,6073,6015,6008,6000,
+5978,5949,5897,5847,5820,5820,5905,6032,5964,5815,5808,5831,5863,5897,5861,5819,5769,5735,5743,5794,
+5894,5990,5951,5964,5951,5958,5938,5959,6060,5993,5993,5990,6009,6007,6016,6033,6035,6003,5948,5875,
+5738,5527,5403,5571,5940,6304,6519,6572,6603,6618,6688,6675,6649,6648,6637,6623,6603,6583,6575,6549,
+6519,6483,6467,6432,6399,6377,6334,6297,6278,6215,6177,6138,6097,6073,5996,5973,5891,5868,5805,5742,
+5799,5829,5813,5757,5734,5639,5587,5446,5275,5241,5154,5031,4999,4998,5014,5050,5050,5083,5047,4970,
+4926,4911,4902,4889,4883,4863,4871,4855,4843,4835,4813,4795,4776,4787,4752,4733,4687,4595,4451,4105,
+3516,2857,2403,2370,2586,2776,2892,2944,2934,2879,2801,2728,2714,2717,2649,2553,2484,2397,2283,2199,
+2099,2006,1919,1839,1770,1711,1666,1624,1589,1555,1514,1469,1423,1374,1329,1312,1302,1285,1315,1339,
+1324,1254,1209,1188,1164,1145,1112,1067,1030,1000,970,947,918,879,829,804,784,769,760,741,
+738,715,680,680,681,666,643,617,590,561,531,498,478,462,448,526,523,397,349,337,
+329,318,297,293,300,299,298,306,325,389,374,361,427,559,811,732,401,203,94,64,
+41,-75,-153,-199,-219,-234,-266,-290,-348,-405,-418,-333,-364,-470,-501,-515,-530,-545,-555,-564,
+-587,-600,-567,-562,-639,-671,-702,-757,-753,-681,-774,-808,-822,-841,-844,-823,-826,-831,-832,-852,
+-873,-894,-919,-940,-965,-979,-992,-1008,-1018,-1048,-1058,-1071,-1084,-1096,-1102,-1106,-1110,-1121,-1124,-1112,
+-1113,-1105,-1108,-1106,-1100,-1093,-1086,-1082,-1079,-1076,-1070,-1061,-1060,-1059,-1055,-1049,-1048,-1049,-1043,-1029,
+-1013,-996,-980,-982,-982,-972,-946,-937,-933,-923,-909,-882,-861,-845,-831,-811,-802,-781,-762,-740,
+-722,-705,-685,-669,-656,-643,-627,-617,-602,-582,-569,-550,-529,-516,-497,-480,-463,-449,-438,-427,
+-408,-391,-368,-355,-340,-328,-313,-297,-288,-287,-274,-268,-263,-248,-241,-232,-224,-216,-207,-191,
+-194,-191,-191,-188,-185,-187,-186,-185,-191,-194,-198,-205,-210,-220,-226,-232,-232,-235,-239,-247,
+-253,-265,-272,-272,-274,-280,-286,-291,-299,-309,-318,-330,-340,-349,-356,-357,-366,-370,-379,-388,
+-402,-413,-420,-428,-449,-459,-463,-471,-484,-497,-501,-502,-506,-521,-531,-534,-535,-538,-539,-538,
+-541,-537,-536,-538,-533,-539,-531,-542,-538,-529,-519,-504,-490,-512,-494,-478,-492,-473,-469,-464,
+-458,-451,-443,-441,-437,-424,-412,-400,-387,-375,-364,-355,-343,-334,-327,-310,-292,-278,-269,-254,
+-241,-229,-212,-196,-183,-170,-152,-134,-112,-92,-85,-63,-44,-22,6,36,68,104,140,176,
+207,243,283,327,371,411,453,498,549,597,656,722,784,846,913,983,1044,1108,1154,1199,
+1239,1294,1359,1414,1461,1501,1531,1570,1610,1635,1661,1673,1681,1689,1684,1647,1560,1449,1308,1178,
+1225,1382,1559,1757,1987,2272,2536,2790,3067,3191,3392,3654,4036,4286,4363,4427,4477,4500,4486,4514,
+4557,4594,4653,4685,4703,4708,4610,4448,4390,4350,4222,3997,3811,3572,3343,3139,2891,2681,2461,2289,
+2184,2135,2126,2144,2177,2188,2167,2126,2077,2042,2029,1987,1907,1831,1768,1713,1638,1545,1475,1423,
+1373,1319,1252,1167,1062,952,857,765,665,554,446,349,253,188,82,-11,-115,-161,-194,-223,
+-257,-318,-380,-389,-412,-455,-502,-547,-588,-631,-676,-722,-813,-906,-1017,-1083,-1155,-1236,-1252,-1220,
+-1209,-1158,-1130,-1132,-1183,-1214,-1238,-1212,-1177,-1158,-1143,-1134,-1141,-1134,-1094,-1050,-1086,-1035,-1052,-1052,
+-1056,-1019,-964,-905,-876,-897,-923,-948,-946,-937,-910,-887,-882,-863,-828,-799,-771,-751,-707,-654,
+-643,-630,-712,-912,-1056,-1052,-956,-763,-529,-562,-754,-829,-849,-843,-830,-807,-782,-755,-732,-718,
+-693,-672,-658,-648,-640,-631,-621,-611,-601,-591,-580,-573,-572,-578,-587,-603,-619,-633,-648,-659,
+-677,-685,-701,-715,-715,-724,-732,-727,-713,-721,-713,-694,-682,-669,-633,-614,-592,-561,-533,-497,
+-445,-390,-334,-287,-242,-214,-184,-160,-122,-97,-75,-40,-10,60,107,151,182,226,279,320,
+369,407,445,476,507,538,576,613,638,665,683,720,758,806,817,830,838,808,851,900,
+895,955,975,991,1023,1031,1068,1069,1079,1097,1106,1150,1160,1167,1191,1216,1237,1237,1257,1277,
+1284,1283,1284,1290,1290,1291,1293,1282,1286,1287,1292,1292,1298,1296,1296,1288,1299,1303,1330,1324,
+1350,1374,1414,1441,1470,1484,1508,1518,1514,1530,1523,1525,1529,1554,1558,1553,1556,1564,1583,1585,
+1574,1573,1572,1575,1574,1576,1581,1578,1580,1582,1588,1603,1620,1636,1659,1682,1701,1717,1729,1741,
+1751,1756,1760,1764,1764,1757,1751,1741,1753,1759,1778,1795,1818,1840,1864,1906,1954,2023,2144,2208,
+2198,2239,2345,2439,2479,2532,2531,2511,2543,2577,2561,2530,2486,2417,2338,2271,2216,2160,2111,2079,
+2063,2051,2037,2026,2015,2000,1980,1961,1946,1918,1877,1834,1795,1755,1695,1610,1511,1419,1343,1291,
+1264,1255,1243,1214,1178,1146,1123,1102,1074,1032,978,955,967,980,983,957,878,794,713,608,
+486,411,395,423,437,392,341,309,272,260,258,302,339,331,342,401,419,418,403,354,
+294,193,75,-15,-71,-234,-452,-523,-537,-541,-580,-637,-715,-798,-864,-923,-972,-986,-993,-991,
+-966,-920,-884,-877,-961,-1084,-1178,-1241,-1284,-1316,-1344,-1370,-1395,-1421,-1436,-1442,-1452,-1477,-1507,-1549,
+-1418,-1378,-1295,-1312,-1340,-1338,-1296,-1155,-1117,-1091,-1091,-1051,-1012,-954,-851,-768,-706,-708,-651,-603,
+-546,-477,-428,-467,-457,-508,-541,-536,-594,-715,-814,-949,-1154,-1332,-1424,-1470,-1496,-1517,-1531,-1545,
+-1568,-1577,-1563,-1556,-1558,-1559,-1565,-1569,-1570,-1569,-1548,-1541,-1549,-1547,-1548,-1551,-1561,-1588,-1647,-1660,
+-1673,-1688,-1698,-1712,-1715,-1705,-1694,-1730,-1705,-1608,-1575,-1580,-1603,-1668,-1631,-1627,-1654,-1671,-1701,-1712,
+-1714,-1711,-1741,-1760,-1791,-1826,-1848,-1868,-1874,-1901,-1947,-1971,-1961,-1978,-1958,-1974,-2027,-2039,-2077,-2112,
+-2148,-2190,-2231,-2276,-2322,-2368,-2422,-2477,-2560,-2606,-2693,-2752,-2826,-2893,-2966,-3007,-3020,-3091,-3189,-3235,
+-3271,-3330,-3406,-3465,-3516,-3566,-3623,-3689,-3759,-3821,-3873,-3904,-3940,-3959,-3963,-4008,-4025,-4055,-4112,-4141,
+-4195,-4227,-4258,-4293,-4338,-4359,-4396,-4494,-4531,-4534,-4555,-4592,-4641,-4689,-4736,-4783,-4821,-4852,-4893,-4939,
+-4981,-5020,-5057,-5091,-5132,-5163,-5190,-5224,-5256,-5280,-5301,-5293,-5264,-5235,-5224,-5260,-5320,-5360,-5367,-5342,
+-5285,-5185,-5063,-4963,-4857,-4814,-4851,-4965,-5159,-5279,-5329,-5328,-5285,-5236,-5251,-5214,-5183,-5202,-5272,-5263,
+-5253,-5225,-5176,-5128,-5118,-5073,-4966,-4903,-4928,-5016,-5070,-5096,-5102,-5064,-5009,-4977,-4950,-4937,-4876,-4843,
+-4829,-4791,-4736,-4687,-4646,-4633,-4633,-4599,-4559,-4499,-4490,-4484,-4430,-4368,-4315,-4275,-4268,-4236,-4234,-4228,
+-4186,-4140,-4066,-3996,-3934,-3872,-3807,-3753,-3688,-3629,-3568,-3513,-3458,-3404,-3350,-3300,-3246,-3191,-3137,-3077,
+-3020,-2963,-2907,-2847,-2793,-2734,-2674,-2629,-2576,-2509,-2435,-2354,-2279,-2200,-2125,-2062,-1993,-1938,-1897,-1837,
+-1778,-1710,-1659,-1618,-1531,-1408,-1299,-1243,-1212,-1167,-1113,-1057,-1048,-1014,-942,-871,-790,-738,-676,-608,
+-534,-481,-411,-287,-126,40,204,362,488,574,654,750,810,855,911,999,1102,1173,1232,1292,
+1360,1435,1516,1600,1674,1747,1810,1875,1942,1996,2034,2082,2134,2185,2250,2301,2338,2385,2483,2566,
+2651,2740,2808,2883,2895,2807,2744,2770,2830,2889,2960,3077,3154,3197,3206,3216,3232,3228,3224,3233,
+3275,3325,3378,3433,3488,3520,3556,3583,3635,3699,3770,3819,3859,3924,3980,4015,4053,4114,4191,4268,
+4323,4367,4400,4441,4486,4544,4584,4626,4682,4745,4817,4891,4941,4962,4963,4976,4976,4979,4988,5018,
+5069,5138,5239,5307,5366,5413,5466,5552,5613,5683,5784,5860,5957,6009,6038,6053,5974,5946,5970,6013,
+5999,5950,5864,5799,5779,5793,5826,5879,5896,5894,5938,5976,6006,6031,6017,6006,5997,5997,6004,5993,
+5989,6007,6007,5990,5984,5956,5929,5918,5925,5935,5939,5954,6018,6057,6018,6013,6013,6018,5990,5949,
+5933,5905,5866,5819,5772,5751,5761,5822,5946,5890,5769,5763,5797,5834,5861,5869,5846,5780,5720,5705,
+5724,5788,5891,5948,6068,6176,6114,5993,5918,5985,5997,6002,5980,5985,6025,6016,6017,6026,6003,5950,
+5875,5741,5528,5334,5455,5750,6094,6358,6466,6551,6597,6646,6698,6657,6640,6631,6623,6607,6596,6574,
+6541,6515,6493,6472,6441,6405,6380,6344,6316,6284,6243,6195,6146,6097,6070,6008,5975,5932,5854,5817,
+5743,5682,5808,5851,5820,5799,5695,5559,5391,5249,5266,5138,5054,5045,5025,5025,5053,5070,5072,5080,
+5044,4961,4945,4925,4925,4916,4905,4909,4911,4921,4891,4862,4846,4828,4840,4817,4792,4688,4614,4461,
+4096,3405,2768,2384,2433,2634,2790,2884,2938,2958,2936,2888,2795,2717,2720,2676,2586,2486,2388,2318,
+2228,2107,2010,1924,1845,1777,1730,1666,1620,1581,1545,1504,1462,1418,1384,1363,1371,1372,1344,1420,
+1490,1419,1269,1210,1175,1156,1136,1104,1063,1042,1013,978,946,905,869,835,809,784,774,763,
+769,771,734,702,707,696,668,637,606,575,546,517,484,457,432,435,452,446,388,338,
+311,304,313,282,266,263,268,260,262,267,269,273,281,319,412,524,497,323,185,85,
+43,12,-98,-182,-236,-268,-275,-289,-306,-342,-397,-452,-471,-426,-431,-512,-526,-542,-570,-588,
+-601,-629,-707,-635,-509,-674,-742,-734,-715,-666,-743,-835,-797,-810,-851,-858,-856,-856,-861,-859,
+-873,-891,-907,-926,-945,-965,-972,-993,-1002,-1004,-1043,-1050,-1063,-1078,-1086,-1098,-1103,-1110,-1121,-1121,
+-1112,-1117,-1109,-1111,-1105,-1100,-1094,-1089,-1084,-1077,-1071,-1065,-1060,-1059,-1055,-1053,-1049,-1046,-1049,-1046,
+-1040,-1029,-1015,-1000,-992,-986,-985,-945,-948,-936,-939,-930,-895,-876,-854,-839,-810,-812,-792,-770,
+-754,-736,-713,-693,-672,-660,-647,-631,-615,-599,-582,-569,-557,-531,-516,-498,-482,-460,-441,-426,
+-411,-399,-389,-377,-359,-344,-328,-313,-302,-288,-278,-266,-257,-252,-235,-235,-225,-217,-212,-200,
+-191,-192,-186,-189,-190,-188,-183,-185,-185,-193,-195,-190,-189,-200,-209,-214,-224,-228,-234,-237,
+-247,-257,-257,-264,-272,-284,-290,-294,-297,-304,-309,-317,-323,-334,-345,-351,-358,-369,-375,-383,
+-393,-400,-409,-418,-427,-436,-450,-463,-470,-483,-495,-495,-495,-503,-514,-521,-514,-511,-514,-518,
+-520,-515,-519,-522,-527,-520,-520,-518,-514,-505,-496,-484,-485,-459,-463,-474,-473,-474,-460,-451,
+-449,-438,-430,-419,-416,-413,-401,-392,-376,-357,-344,-338,-329,-319,-311,-296,-281,-272,-261,-246,
+-231,-219,-204,-189,-178,-166,-152,-130,-114,-98,-80,-60,-38,-13,12,40,68,96,128,164,
+197,225,256,298,341,383,424,462,506,558,613,663,721,788,847,915,984,1036,1086,1119,
+1187,1214,1272,1337,1392,1441,1490,1523,1569,1605,1630,1652,1682,1708,1735,1754,1740,1724,1685,1576,
+1422,1282,1264,1384,1543,1764,2052,2276,2517,2751,2952,3120,3381,3793,4179,4356,4358,4458,4496,4504,
+4510,4538,4566,4573,4609,4644,4647,4563,4459,4339,4263,4177,4009,3804,3602,3434,3279,3114,2910,2597,
+2333,2172,2106,2087,2091,2105,2122,2124,2089,2076,2079,2050,2004,1935,1843,1758,1703,1662,1583,1536,
+1495,1427,1360,1291,1200,1100,996,900,809,706,598,491,387,281,186,74,-25,-119,-179,-224,
+-225,-263,-332,-396,-423,-425,-491,-554,-607,-630,-655,-683,-713,-764,-870,-1017,-1076,-1161,-1241,-1249,
+-1222,-1180,-1123,-1107,-1098,-1122,-1149,-1156,-1133,-1102,-1088,-1090,-1103,-1070,-1049,-1056,-1042,-1015,-989,-1016,
+-1019,-1009,-996,-992,-976,-949,-917,-937,-945,-961,-944,-922,-888,-864,-827,-815,-787,-741,-681,-633,
+-590,-570,-539,-583,-786,-1023,-1028,-922,-670,-388,-581,-769,-825,-839,-834,-813,-789,-765,-738,-719,
+-700,-677,-656,-640,-630,-617,-607,-598,-589,-578,-568,-559,-552,-554,-559,-567,-581,-599,-612,-630,
+-643,-664,-672,-684,-701,-716,-732,-737,-733,-732,-732,-731,-709,-699,-680,-653,-631,-608,-574,-544,
+-510,-463,-407,-345,-287,-229,-206,-181,-160,-134,-105,-84,-47,-1,29,62,113,156,199,254,
+295,343,380,418,483,520,535,557,602,634,656,692,724,722,754,806,838,863,876,913,
+946,974,1015,1024,1037,1052,1041,1053,1076,1089,1108,1129,1147,1169,1192,1210,1231,1249,1253,1273,
+1283,1294,1283,1290,1291,1284,1272,1290,1270,1265,1275,1272,1274,1290,1284,1301,1305,1328,1331,1336,
+1340,1372,1393,1442,1459,1486,1506,1511,1517,1520,1531,1535,1547,1554,1581,1609,1616,1617,1603,1598,
+1587,1581,1591,1591,1597,1601,1600,1605,1611,1611,1611,1623,1636,1652,1667,1688,1706,1725,1746,1762,
+1770,1780,1790,1797,1799,1801,1801,1797,1786,1777,1792,1809,1824,1842,1860,1876,1910,1947,2034,2174,
+2276,2261,2261,2353,2437,2507,2528,2526,2561,2618,2619,2577,2545,2494,2417,2335,2268,2214,2161,2114,
+2084,2071,2063,2055,2049,2043,2031,2014,1996,1981,1962,1936,1908,1873,1823,1750,1659,1562,1468,1389,
+1330,1303,1302,1295,1265,1220,1178,1151,1134,1117,1093,1059,1050,1036,1029,1029,1003,929,836,728,
+632,548,519,519,531,519,476,426,412,399,398,360,378,393,411,428,457,458,473,454,
+425,361,286,208,151,80,-136,-335,-419,-448,-465,-526,-614,-695,-752,-798,-872,-926,-944,-939,
+-918,-892,-863,-846,-893,-993,-1087,-1153,-1203,-1255,-1305,-1338,-1361,-1379,-1395,-1402,-1400,-1405,-1418,-1423,
+-1442,-1385,-1318,-1230,-1214,-1248,-1265,-1274,-1190,-1088,-1059,-1045,-995,-926,-899,-778,-646,-592,-558,-515,
+-464,-391,-342,-301,-371,-380,-401,-453,-483,-563,-705,-803,-947,-1165,-1318,-1390,-1429,-1450,-1452,-1484,
+-1508,-1512,-1509,-1515,-1515,-1514,-1502,-1512,-1511,-1511,-1507,-1500,-1502,-1475,-1498,-1492,-1504,-1540,-1592,-1609,
+-1618,-1623,-1619,-1588,-1570,-1548,-1428,-1430,-1535,-1549,-1548,-1557,-1532,-1608,-1596,-1579,-1601,-1606,-1603,-1645,
+-1627,-1648,-1641,-1666,-1680,-1699,-1731,-1758,-1789,-1815,-1850,-1869,-1881,-1860,-1826,-1848,-1854,-1897,-1936,-1982,
+-2022,-2053,-2093,-2130,-2175,-2230,-2273,-2324,-2375,-2449,-2512,-2577,-2637,-2719,-2786,-2840,-2875,-2941,-3028,-3080,
+-3133,-3204,-3251,-3283,-3343,-3403,-3458,-3514,-3579,-3657,-3699,-3750,-3778,-3818,-3834,-3871,-3889,-3924,-3982,-4013,
+-4050,-4096,-4130,-4170,-4218,-4264,-4287,-4328,-4421,-4445,-4445,-4472,-4514,-4560,-4610,-4655,-4696,-4730,-4759,-4798,
+-4851,-4892,-4935,-4976,-5019,-5058,-5095,-5129,-5156,-5177,-5188,-5201,-5182,-5156,-5148,-5174,-5235,-5294,-5323,-5325,
+-5283,-5206,-5103,-4994,-4866,-4778,-4741,-4805,-4945,-5116,-5231,-5262,-5269,-5245,-5205,-5213,-5164,-5148,-5171,-5228,
+-5235,-5220,-5194,-5133,-5089,-5074,-4999,-4906,-4895,-4959,-5032,-5067,-5079,-5069,-5017,-4972,-4950,-4941,-4929,-4871,
+-4837,-4824,-4788,-4739,-4700,-4668,-4658,-4654,-4636,-4593,-4543,-4515,-4507,-4475,-4419,-4353,-4312,-4302,-4284,-4239,
+-4226,-4194,-4140,-4090,-4028,-3965,-3904,-3845,-3782,-3723,-3661,-3605,-3547,-3493,-3436,-3382,-3328,-3269,-3218,-3164,
+-3114,-3066,-3009,-2949,-2890,-2833,-2779,-2727,-2689,-2632,-2559,-2490,-2406,-2326,-2246,-2171,-2095,-2033,-1988,-1946,
+-1895,-1832,-1769,-1725,-1669,-1588,-1491,-1384,-1321,-1274,-1239,-1201,-1169,-1160,-1123,-1044,-958,-873,-796,-720,
+-643,-552,-466,-387,-250,-75,84,206,330,437,516,602,683,759,822,878,964,1056,1114,1172,
+1236,1294,1344,1410,1502,1600,1675,1722,1766,1819,1864,1906,1957,2006,2057,2113,2197,2281,2347,2406,
+2478,2521,2599,2674,2728,2713,2645,2651,2709,2774,2835,2908,3001,3070,3114,3113,3126,3142,3134,3131,
+3131,3169,3204,3264,3321,3374,3433,3479,3519,3579,3630,3686,3735,3772,3827,3881,3924,3968,4036,4111,
+4177,4238,4281,4328,4381,4424,4470,4495,4526,4582,4656,4735,4821,4876,4883,4910,4935,4936,4926,4926,
+4946,4995,5065,5152,5247,5317,5385,5428,5525,5587,5651,5761,5837,5937,5998,6001,5997,5998,5918,5926,
+5956,5958,5955,5906,5830,5788,5782,5790,5806,5812,5822,5840,5861,5893,5901,5899,5890,5895,5891,5891,
+5894,5903,5910,5907,5898,5884,5871,5854,5848,5859,5877,5921,5986,6009,6022,6056,6025,6019,5961,5928,
+5887,5874,5856,5823,5759,5718,5715,5752,5873,5985,5860,5727,5723,5763,5799,5830,5847,5802,5767,5734,
+5714,5731,5794,5896,5948,6116,6246,6225,6092,5938,5936,5998,6015,5993,6003,6026,6019,6012,6011,5995,
+5947,5876,5745,5531,5273,5311,5488,5914,6236,6348,6493,6593,6651,6674,6668,6637,6629,6613,6611,6597,
+6571,6552,6527,6508,6484,6451,6418,6386,6344,6308,6274,6246,6200,6144,6096,6042,6020,5986,5927,5848,
+5800,5746,5680,5637,5664,5700,5700,5557,5370,5237,5142,5089,4997,5031,5032,4991,5003,5047,5068,5117,
+5110,5077,4982,4964,4955,4951,4946,4944,4953,4956,4938,4919,4906,4893,4870,4875,4839,4786,4634,4480,
+4187,3734,3163,2684,2421,2561,2724,2817,2883,2927,2950,2942,2907,2831,2741,2745,2710,2666,2565,2411,
+2396,2290,2107,2005,1920,1842,1776,1719,1660,1606,1560,1522,1492,1451,1416,1425,1454,1406,1334,1314,
+1321,1362,1318,1229,1183,1162,1152,1142,1113,1079,1060,1026,989,958,913,871,841,815,794,792,
+765,753,763,739,717,707,679,644,614,589,551,519,493,469,443,418,407,479,488,363,
+364,374,380,434,327,277,256,247,238,228,213,197,184,175,188,234,291,276,185,112,
+95,-14,-79,-146,-211,-260,-291,-306,-322,-333,-363,-403,-450,-494,-527,-498,-496,-543,-554,-576,
+-599,-626,-666,-722,-724,-571,-670,-750,-772,-755,-629,-688,-830,-816,-822,-859,-881,-890,-898,-893,
+-882,-902,-921,-946,-954,-947,-940,-978,-991,-1014,-1023,-1040,-1054,-1071,-1077,-1083,-1089,-1096,-1105,-1113,
+-1114,-1113,-1122,-1119,-1118,-1111,-1102,-1094,-1091,-1084,-1078,-1069,-1061,-1060,-1055,-1052,-1048,-1050,-1044,-1043,
+-1039,-1036,-1030,-1021,-1002,-992,-987,-980,-964,-931,-944,-927,-916,-915,-891,-864,-841,-771,-799,-806,
+-780,-763,-740,-719,-694,-683,-667,-652,-634,-618,-601,-585,-567,-550,-529,-515,-504,-489,-475,-459,
+-437,-420,-405,-387,-371,-357,-341,-331,-317,-306,-294,-280,-268,-257,-239,-233,-229,-223,-214,-210,
+-204,-193,-191,-184,-186,-184,-184,-177,-180,-184,-181,-194,-193,-194,-199,-205,-209,-212,-216,-224,
+-232,-241,-252,-262,-269,-270,-277,-280,-284,-293,-301,-310,-317,-319,-325,-341,-349,-353,-362,-371,
+-380,-386,-395,-405,-415,-422,-430,-442,-453,-473,-484,-485,-493,-489,-488,-498,-499,-496,-493,-494,
+-502,-506,-508,-522,-522,-518,-512,-502,-498,-494,-478,-468,-461,-457,-453,-447,-450,-407,-452,-442,
+-425,-424,-417,-408,-398,-392,-389,-381,-367,-351,-330,-321,-310,-300,-289,-281,-265,-259,-250,-226,
+-214,-204,-191,-180,-173,-159,-144,-132,-113,-94,-77,-55,-29,-8,13,40,66,95,123,152,
+185,212,242,273,309,350,390,429,466,513,570,623,674,721,782,844,912,968,1015,1055,
+1108,1151,1201,1268,1324,1374,1424,1473,1508,1549,1585,1613,1647,1693,1733,1760,1768,1802,1830,1817,
+1775,1668,1502,1347,1295,1413,1604,1857,2043,2318,2518,2760,3015,3266,3637,4060,4341,4376,4434,4425,
+4442,4454,4473,4498,4509,4529,4570,4581,4513,4464,4348,4264,4162,4060,3861,3667,3468,3358,3187,2965,
+2632,2339,2165,2101,2081,2084,2085,2084,2072,2040,2022,2027,2018,1985,1932,1888,1760,1673,1645,1625,
+1595,1547,1470,1400,1317,1228,1137,1038,943,848,743,638,535,433,317,211,80,-25,-112,-185,
+-233,-245,-287,-342,-399,-438,-460,-525,-604,-659,-664,-669,-683,-710,-749,-848,-993,-1101,-1152,-1208,
+-1225,-1208,-1142,-1094,-1080,-1059,-1063,-1075,-1069,-1062,-1030,-1036,-1053,-1089,-1048,-1031,-1062,-1047,-978,-925,
+-950,-958,-1014,-1027,-1027,-1001,-1028,-1012,-1003,-994,-981,-965,-927,-885,-833,-801,-770,-712,-650,-605,
+-570,-571,-577,-630,-832,-952,-1011,-1012,-941,-828,-736,-763,-812,-831,-833,-819,-798,-770,-744,-722,
+-707,-685,-660,-638,-620,-606,-591,-582,-575,-564,-554,-545,-540,-537,-540,-545,-554,-564,-584,-598,
+-613,-627,-648,-660,-675,-694,-708,-708,-728,-741,-716,-715,-694,-708,-685,-665,-650,-616,-602,-578,
+-528,-492,-447,-402,-370,-318,-258,-220,-186,-162,-136,-107,-75,-45,-9,28,64,112,156,208,
+252,293,342,380,415,456,495,526,559,597,617,640,665,683,721,760,787,827,850,893,
+903,945,1011,1013,1057,1043,1054,1061,1086,1106,1127,1144,1155,1171,1187,1211,1223,1238,1251,1263,
+1274,1281,1279,1266,1265,1262,1273,1268,1266,1272,1271,1279,1281,1295,1292,1294,1305,1313,1329,1341,
+1353,1377,1393,1418,1445,1468,1491,1505,1517,1533,1520,1523,1541,1556,1581,1621,1631,1629,1619,1617,
+1614,1612,1613,1611,1616,1626,1630,1633,1637,1635,1636,1642,1653,1666,1681,1693,1706,1723,1752,1778,
+1799,1810,1823,1831,1836,1840,1843,1843,1843,1834,1830,1833,1849,1859,1873,1884,1892,1910,1971,2104,
+2218,2369,2355,2339,2362,2432,2485,2519,2556,2617,2666,2649,2592,2553,2499,2425,2347,2285,2233,2182,
+2139,2115,2104,2098,2090,2085,2079,2069,2056,2040,2024,2006,1986,1964,1932,1879,1800,1709,1619,1530,
+1445,1376,1347,1355,1355,1324,1275,1221,1183,1180,1173,1155,1137,1110,1092,1081,1055,1022,971,895,
+801,728,703,679,638,605,585,561,527,499,491,498,451,448,471,470,473,493,502,514,
+473,410,349,284,238,170,61,-143,-286,-376,-418,-423,-506,-604,-666,-706,-776,-837,-881,-884,
+-863,-829,-805,-790,-809,-907,-1005,-1078,-1128,-1173,-1223,-1279,-1324,-1346,-1358,-1365,-1365,-1357,-1357,-1355,
+-1335,-1326,-1265,-1239,-1158,-1109,-1151,-1166,-1196,-1187,-1072,-1026,-998,-954,-889,-866,-769,-587,-483,-421,
+-372,-363,-299,-261,-235,-270,-273,-330,-402,-458,-604,-689,-771,-952,-1172,-1284,-1343,-1382,-1402,-1417,
+-1427,-1447,-1454,-1469,-1468,-1460,-1447,-1445,-1445,-1451,-1445,-1438,-1443,-1443,-1457,-1441,-1431,-1474,-1532,-1556,
+-1570,-1574,-1551,-1515,-1448,-1409,-1367,-1190,-1189,-1261,-1188,-1377,-1421,-1482,-1491,-1489,-1526,-1557,-1567,-1549,
+-1573,-1605,-1596,-1587,-1601,-1627,-1627,-1666,-1701,-1730,-1738,-1751,-1757,-1764,-1735,-1722,-1739,-1779,-1796,-1845,
+-1894,-1932,-1959,-1995,-2036,-2079,-2129,-2190,-2229,-2278,-2337,-2396,-2463,-2533,-2609,-2679,-2717,-2780,-2843,-2933,
+-2980,-3038,-3097,-3152,-3198,-3233,-3288,-3350,-3414,-3483,-3556,-3605,-3649,-3672,-3689,-3735,-3777,-3797,-3840,-3886,
+-3921,-3977,-4007,-4054,-4101,-4150,-4194,-4216,-4274,-4340,-4355,-4365,-4393,-4433,-4480,-4528,-4570,-4608,-4645,-4676,
+-4715,-4777,-4815,-4863,-4904,-4943,-4978,-5011,-5047,-5068,-5084,-5083,-5083,-5065,-5070,-5092,-5137,-5200,-5248,-5266,
+-5256,-5208,-5132,-5025,-4913,-4790,-4711,-4713,-4799,-4944,-5082,-5179,-5197,-5190,-5185,-5164,-5161,-5120,-5121,-5145,
+-5197,-5196,-5175,-5148,-5095,-5056,-5017,-4920,-4864,-4897,-4977,-5029,-5045,-5040,-5017,-4979,-4941,-4929,-4922,-4911,
+-4870,-4834,-4817,-4777,-4729,-4698,-4678,-4678,-4681,-4669,-4622,-4576,-4534,-4531,-4509,-4463,-4396,-4331,-4325,-4322,
+-4275,-4222,-4187,-4160,-4109,-4053,-3994,-3932,-3872,-3811,-3751,-3689,-3634,-3578,-3524,-3467,-3408,-3348,-3294,-3242,
+-3198,-3157,-3102,-3047,-2987,-2929,-2874,-2829,-2776,-2733,-2678,-2609,-2536,-2459,-2373,-2293,-2214,-2130,-2079,-2055,
+-2018,-1963,-1914,-1862,-1821,-1730,-1659,-1562,-1448,-1391,-1343,-1309,-1287,-1276,-1264,-1226,-1148,-1048,-939,-829,
+-729,-635,-535,-430,-322,-194,-54,69,173,275,364,457,540,622,728,832,876,924,988,1050,
+1109,1163,1228,1299,1365,1430,1498,1574,1635,1680,1726,1793,1829,1860,1902,1946,2001,2092,2184,2266,
+2323,2357,2378,2457,2543,2572,2548,2517,2565,2641,2705,2768,2846,2932,2996,3031,3022,3027,3038,3048,
+3045,3040,3054,3084,3151,3211,3263,3335,3392,3448,3517,3573,3615,3660,3697,3744,3790,3835,3892,3949,
+4009,4061,4111,4176,4248,4309,4348,4380,4392,4426,4490,4566,4651,4734,4776,4786,4807,4849,4869,4872,
+4859,4879,4932,5002,5095,5197,5286,5347,5417,5518,5579,5636,5732,5809,5869,5930,5955,5986,5966,5890,
+5866,5887,5909,5923,5903,5869,5837,5792,5781,5788,5785,5782,5788,5807,5832,5839,5831,5832,5836,5833,
+5843,5850,5850,5868,5870,5838,5817,5806,5804,5813,5817,5808,5851,5906,5935,5968,6018,5983,5918,5921,
+5885,5857,5816,5787,5759,5724,5676,5685,5760,5932,5999,5794,5687,5690,5735,5763,5792,5794,5771,5749,
+5743,5736,5759,5831,5850,5862,6024,6191,6189,6100,5975,5924,6039,6092,6015,6024,6044,6059,6057,6005,
+5978,5940,5873,5759,5543,5269,5200,5373,5847,6198,6275,6453,6593,6635,6669,6653,6627,6621,6619,6621,
+6603,6581,6560,6536,6513,6491,6454,6428,6391,6354,6315,6289,6243,6205,6159,6100,6033,6043,5994,5940,
+5873,5840,5777,5711,5671,5617,5610,5607,5364,5248,5182,5133,5041,4934,5033,5095,4996,4996,5029,5055,
+5079,5105,5078,5004,4984,4996,4978,4976,4986,4994,4987,4967,4968,4950,4938,4919,4885,4861,4774,4663,
+4409,3922,3415,2980,2607,2545,2871,2910,2857,2894,2930,2938,2935,2901,2830,2760,2777,2741,2709,2583,
+2412,2324,2219,2092,1988,1909,1839,1772,1716,1664,1608,1553,1509,1476,1436,1401,1392,1391,1333,1297,
+1269,1250,1235,1204,1176,1156,1146,1139,1131,1109,1087,1067,1040,999,984,959,921,882,842,816,
+800,798,785,775,745,702,668,642,609,581,557,528,509,491,468,440,414,397,443,464,
+333,315,331,337,325,396,301,229,212,191,180,168,147,132,122,115,123,135,114,59,
+22,-1,-81,-136,-188,-236,-274,-308,-338,-363,-376,-397,-424,-462,-500,-532,-565,-556,-543,-572,
+-586,-611,-640,-666,-723,-775,-696,-656,-754,-802,-814,-744,-731,-780,-834,-812,-820,-869,-878,-918,
+-901,-933,-946,-953,-967,-985,-975,-958,-975,-935,-975,-1013,-1043,-1053,-1074,-1070,-1088,-1087,-1098,-1099,
+-1111,-1112,-1116,-1125,-1125,-1121,-1115,-1110,-1105,-1103,-1098,-1090,-1082,-1074,-1066,-1060,-1053,-1046,-1047,-1039,
+-1036,-1030,-1024,-1022,-1015,-1004,-988,-978,-970,-956,-932,-911,-926,-907,-896,-885,-864,-853,-826,-810,
+-794,-771,-756,-737,-717,-700,-689,-667,-650,-632,-622,-602,-584,-564,-547,-533,-513,-504,-493,-479,
+-464,-449,-435,-419,-401,-382,-363,-343,-330,-318,-308,-298,-281,-266,-257,-249,-241,-231,-225,-218,
+-211,-205,-198,-193,-187,-183,-182,-178,-178,-178,-177,-181,-187,-188,-191,-199,-204,-208,-208,-214,
+-220,-228,-237,-245,-249,-258,-267,-276,-279,-281,-288,-295,-302,-312,-319,-325,-334,-345,-343,-355,
+-370,-375,-382,-388,-400,-412,-420,-432,-437,-444,-456,-464,-467,-468,-468,-468,-476,-479,-479,-481,
+-488,-497,-500,-509,-514,-502,-488,-482,-481,-475,-474,-461,-449,-439,-434,-433,-443,-418,-371,-421,
+-420,-398,-396,-389,-384,-378,-372,-369,-356,-338,-323,-310,-297,-285,-271,-260,-254,-247,-240,-221,
+-202,-185,-175,-169,-165,-160,-145,-126,-109,-92,-70,-49,-29,-7,15,32,58,83,108,138,
+168,200,230,264,296,327,363,406,442,481,532,583,639,683,723,782,848,907,955,1016,
+1046,1086,1137,1195,1254,1313,1356,1407,1451,1493,1521,1562,1608,1670,1705,1737,1767,1811,1851,1871,
+1886,1884,1849,1752,1577,1407,1343,1435,1604,1853,2117,2270,2554,2900,3248,3619,3997,4271,4434,4431,
+4384,4409,4389,4425,4435,4466,4470,4524,4572,4531,4462,4392,4286,4192,4038,3879,3674,3481,3295,3224,
+2929,2580,2315,2164,2119,2101,2107,2112,2101,2063,2017,1978,1971,1965,1931,1906,1852,1791,1733,1668,
+1623,1584,1540,1485,1417,1330,1248,1161,1071,979,878,770,668,571,468,358,228,85,-31,-126,
+-204,-254,-275,-317,-358,-399,-436,-490,-563,-640,-689,-704,-705,-703,-723,-764,-831,-946,-1067,-1132,
+-1154,-1168,-1134,-1102,-1062,-1035,-1004,-989,-985,-995,-988,-979,-992,-1042,-1076,-1041,-1029,-1022,-1002,-946,
+-910,-918,-986,-1018,-1030,-1032,-1054,-1094,-1082,-1038,-1007,-975,-965,-915,-866,-810,-786,-719,-625,-555,
+-546,-540,-546,-586,-824,-1062,-1062,-1029,-1009,-958,-904,-857,-843,-843,-836,-823,-806,-782,-753,-728,
+-707,-690,-662,-634,-612,-593,-579,-565,-556,-551,-542,-536,-529,-527,-527,-529,-534,-542,-555,-565,
+-583,-603,-612,-632,-650,-666,-682,-705,-713,-720,-724,-733,-716,-711,-707,-697,-681,-669,-648,-624,
+-586,-554,-516,-467,-431,-383,-333,-298,-241,-210,-178,-144,-105,-77,-33,4,35,73,122,154,
+220,256,301,343,375,414,451,493,528,559,587,618,636,676,699,726,759,776,814,836,
+873,895,961,1020,1008,1064,1082,1109,1108,1119,1105,1119,1138,1166,1190,1209,1221,1233,1248,1262,
+1261,1270,1276,1273,1274,1266,1261,1276,1268,1265,1279,1270,1276,1284,1288,1285,1303,1310,1318,1332,
+1340,1361,1374,1396,1418,1441,1459,1483,1514,1535,1568,1577,1593,1632,1620,1621,1634,1640,1644,1634,
+1624,1609,1614,1623,1627,1640,1640,1639,1644,1648,1654,1662,1668,1680,1691,1702,1718,1738,1759,1789,
+1819,1845,1859,1873,1882,1884,1884,1886,1887,1885,1876,1876,1876,1888,1900,1905,1902,1890,1934,2114,
+2217,2305,2444,2445,2422,2391,2422,2473,2480,2526,2578,2651,2640,2603,2562,2514,2450,2388,2334,2288,
+2239,2201,2183,2172,2161,2153,2144,2137,2130,2120,2104,2082,2057,2030,2004,1970,1922,1847,1768,1688,
+1603,1506,1421,1376,1379,1406,1378,1329,1275,1240,1239,1233,1190,1174,1160,1148,1115,1071,1048,1010,
+949,880,828,797,759,713,678,652,629,581,548,527,534,521,528,551,533,528,537,562,
+551,489,395,307,222,171,98,55,-136,-272,-363,-417,-445,-511,-577,-612,-669,-726,-772,-796,
+-783,-749,-720,-707,-725,-801,-919,-1008,-1064,-1102,-1135,-1185,-1243,-1287,-1315,-1327,-1330,-1322,-1310,-1300,
+-1283,-1246,-1226,-1194,-1176,-1097,-1026,-1054,-1096,-1119,-1123,-1069,-986,-953,-928,-861,-803,-736,-557,-423,
+-351,-300,-291,-237,-193,-173,-177,-188,-278,-335,-450,-626,-689,-760,-978,-1162,-1259,-1309,-1334,-1345,
+-1357,-1375,-1399,-1410,-1406,-1406,-1402,-1395,-1386,-1384,-1384,-1383,-1374,-1373,-1376,-1399,-1411,-1423,-1464,-1499,
+-1518,-1536,-1521,-1442,-1354,-1260,-1176,-1215,-1206,-1210,-1240,-1193,-1266,-1289,-1367,-1313,-1319,-1387,-1492,-1508,
+-1489,-1502,-1525,-1541,-1542,-1541,-1558,-1586,-1604,-1621,-1615,-1594,-1590,-1597,-1640,-1647,-1632,-1649,-1698,-1691,
+-1748,-1792,-1835,-1873,-1905,-1947,-1998,-2033,-2103,-2142,-2183,-2238,-2294,-2366,-2446,-2496,-2543,-2628,-2684,-2758,
+-2831,-2880,-2942,-2992,-3030,-3080,-3134,-3186,-3234,-3307,-3374,-3433,-3474,-3521,-3543,-3586,-3642,-3682,-3720,-3757,
+-3781,-3843,-3890,-3936,-3972,-4020,-4074,-4106,-4147,-4220,-4249,-4262,-4274,-4313,-4358,-4404,-4448,-4489,-4522,-4560,
+-4598,-4640,-4697,-4753,-4798,-4832,-4863,-4898,-4925,-4953,-4985,-4980,-4974,-4971,-4973,-5000,-5046,-5103,-5152,-5186,
+-5199,-5168,-5108,-5028,-4936,-4811,-4726,-4666,-4704,-4801,-4932,-5044,-5120,-5132,-5105,-5107,-5110,-5115,-5077,-5084,
+-5104,-5152,-5141,-5117,-5084,-5037,-4989,-4940,-4877,-4864,-4916,-4983,-5018,-5010,-4998,-4974,-4932,-4907,-4902,-4903,
+-4893,-4858,-4821,-4798,-4767,-4727,-4702,-4692,-4697,-4709,-4702,-4649,-4606,-4562,-4554,-4550,-4498,-4428,-4367,-4343,
+-4323,-4294,-4255,-4202,-4166,-4121,-4068,-4012,-3952,-3892,-3831,-3772,-3713,-3655,-3602,-3543,-3485,-3425,-3366,-3325,
+-3281,-3236,-3178,-3130,-3076,-3017,-2968,-2921,-2871,-2816,-2770,-2713,-2641,-2575,-2501,-2412,-2333,-2251,-2182,-2161,
+-2131,-2100,-2101,-2054,-1988,-1908,-1806,-1721,-1625,-1514,-1444,-1406,-1383,-1375,-1371,-1357,-1312,-1221,-1099,-947,
+-790,-667,-575,-483,-382,-275,-171,-57,28,113,208,307,413,504,592,709,838,895,952,1013,
+1064,1095,1132,1181,1240,1292,1362,1429,1478,1516,1568,1636,1714,1783,1817,1817,1854,1901,1955,2031,
+2133,2194,2235,2273,2330,2402,2429,2411,2424,2502,2589,2661,2714,2778,2859,2922,2952,2946,2934,2938,
+2949,2951,2941,2943,2985,3054,3127,3170,3221,3299,3378,3456,3511,3546,3581,3618,3656,3698,3742,3794,
+3837,3888,3927,3976,4052,4144,4219,4255,4263,4289,4339,4419,4508,4596,4668,4700,4757,4789,4804,4820,
+4813,4799,4827,4874,4946,5033,5125,5225,5314,5397,5490,5553,5609,5696,5771,5804,5864,5877,5912,5933,
+5860,5825,5829,5857,5878,5872,5837,5844,5823,5812,5811,5807,5812,5811,5814,5824,5821,5807,5805,5801,
+5800,5807,5829,5860,5893,5890,5851,5792,5757,5764,5755,5747,5729,5756,5789,5829,5864,5848,5821,5864,
+5858,5829,5824,5814,5772,5723,5694,5635,5622,5718,5943,5939,5756,5656,5652,5689,5736,5774,5757,5727,
+5710,5713,5710,5738,5784,5791,5770,5821,6019,6115,6083,6011,5905,5946,6036,6065,6060,6097,6070,6041,
+6005,5975,5929,5859,5752,5576,5320,5207,5319,5772,6111,6233,6502,6649,6612,6596,6618,6610,6601,6627,
+6615,6578,6569,6562,6533,6505,6487,6453,6427,6394,6364,6320,6289,6241,6210,6163,6105,6065,6008,5980,
+5933,5868,5807,5753,5726,5706,5663,5594,5495,5423,5459,5321,5174,5042,4927,5016,5099,5040,5020,5041,
+5078,5110,5131,5104,5028,5000,5020,5021,5014,5022,5034,5029,5021,5007,5010,4987,4963,4938,4873,4822,
+4785,4399,3773,3237,2837,2511,2599,2923,2975,2895,2900,2915,2927,2922,2898,2859,2814,2805,2747,2653,
+2527,2421,2328,2219,2098,1984,1907,1864,1793,1737,1684,1627,1562,1505,1453,1403,1366,1341,1317,1292,
+1268,1244,1222,1199,1175,1158,1150,1137,1117,1107,1090,1075,1063,1044,1020,1024,1068,1099,952,879,
+857,843,809,785,775,737,692,659,634,601,572,542,519,501,487,461,438,403,378,367,
+349,304,283,279,257,272,330,392,247,175,161,154,152,137,112,99,73,59,43,32,
+-2,-30,-91,-143,-181,-217,-259,-288,-324,-364,-386,-410,-430,-456,-490,-525,-554,-577,-600,-586,
+-578,-605,-621,-644,-677,-714,-777,-803,-716,-655,-792,-844,-795,-861,-880,-886,-883,-894,-932,-942,
+-905,-873,-937,-981,-981,-939,-977,-992,-992,-994,-994,-993,-1015,-1035,-1053,-1051,-1056,-1073,-1069,-1092,
+-1101,-1101,-1115,-1121,-1128,-1129,-1125,-1123,-1119,-1115,-1113,-1112,-1109,-1105,-1095,-1085,-1076,-1061,-1053,-1048,
+-1042,-1033,-1026,-1022,-1024,-1019,-1007,-991,-977,-960,-954,-938,-925,-912,-900,-879,-869,-856,-846,-825,
+-807,-790,-770,-752,-734,-718,-701,-681,-660,-643,-624,-605,-587,-572,-557,-540,-529,-507,-491,-483,
+-469,-455,-440,-424,-408,-394,-384,-364,-349,-333,-316,-306,-291,-284,-276,-262,-253,-247,-235,-231,
+-221,-215,-207,-200,-195,-190,-188,-183,-184,-183,-184,-180,-178,-183,-186,-190,-197,-204,-209,-214,
+-225,-230,-229,-238,-241,-244,-251,-258,-265,-273,-281,-285,-289,-291,-299,-315,-325,-328,-334,-342,
+-357,-372,-379,-382,-389,-395,-404,-408,-411,-415,-423,-430,-435,-438,-444,-447,-450,-461,-465,-469,
+-472,-481,-483,-491,-492,-484,-475,-461,-459,-461,-462,-455,-447,-439,-421,-409,-407,-413,-405,-398,
+-390,-386,-377,-363,-360,-355,-354,-349,-347,-335,-320,-303,-290,-277,-262,-249,-239,-241,-233,-214,
+-200,-181,-165,-156,-154,-152,-144,-127,-111,-91,-65,-46,-21,0,17,36,53,77,100,126,
+153,183,212,245,282,319,356,389,425,470,510,555,604,652,694,731,783,844,909,963,
+998,1045,1087,1141,1193,1245,1298,1338,1381,1423,1466,1500,1555,1606,1653,1696,1732,1785,1820,1853,
+1889,1922,1953,1968,1929,1816,1623,1409,1333,1452,1659,1949,2151,2437,2838,3280,3613,3927,4238,4384,
+4400,4415,4407,4370,4384,4399,4444,4441,4478,4518,4556,4496,4453,4371,4286,4104,3964,3786,3535,3303,
+3132,2826,2508,2285,2172,2133,2141,2168,2192,2168,2112,2049,2000,1976,1941,1879,1840,1820,1781,1734,
+1683,1627,1574,1518,1470,1415,1343,1263,1180,1100,1010,905,790,685,586,488,389,249,89,-34,
+-127,-200,-259,-310,-353,-391,-428,-466,-510,-585,-656,-719,-745,-729,-725,-737,-764,-810,-897,-989,
+-1069,-1114,-1112,-1075,-1017,-992,-966,-949,-901,-892,-934,-916,-935,-959,-1024,-1053,-1032,-997,-976,-974,
+-947,-891,-933,-1016,-1040,-1043,-1044,-1098,-1123,-1112,-1067,-1018,-970,-944,-897,-840,-799,-765,-709,-680,
+-627,-571,-550,-537,-578,-912,-1101,-1086,-1036,-999,-962,-925,-889,-869,-853,-836,-814,-796,-769,-740,
+-713,-690,-666,-637,-609,-588,-570,-556,-546,-539,-533,-529,-524,-520,-522,-522,-522,-527,-532,-542,
+-555,-570,-592,-614,-626,-644,-656,-674,-696,-698,-711,-721,-725,-733,-741,-739,-727,-702,-681,-656,
+-635,-592,-550,-515,-476,-440,-398,-350,-309,-270,-231,-188,-153,-108,-68,-42,-2,29,59,100,
+137,191,235,292,349,383,426,462,496,531,582,611,640,655,679,704,726,757,775,804,
+833,870,914,961,984,1020,1042,1086,1108,1118,1132,1142,1150,1169,1191,1205,1208,1228,1243,1253,
+1264,1260,1265,1262,1256,1243,1249,1270,1275,1263,1263,1265,1278,1283,1292,1302,1301,1306,1309,1315,
+1321,1329,1349,1379,1405,1437,1473,1508,1537,1558,1569,1590,1601,1615,1632,1639,1634,1625,1622,1626,
+1636,1633,1637,1643,1639,1635,1640,1646,1653,1664,1671,1678,1686,1689,1698,1719,1740,1766,1790,1813,
+1834,1865,1888,1908,1922,1926,1931,1934,1934,1929,1923,1923,1919,1917,1922,1928,1922,1929,1975,2065,
+2161,2235,2330,2459,2481,2467,2445,2423,2453,2493,2509,2518,2576,2589,2572,2569,2534,2492,2449,2410,
+2372,2328,2295,2274,2258,2248,2239,2227,2220,2210,2194,2171,2140,2103,2065,2032,1996,1955,1894,1825,
+1752,1667,1560,1465,1408,1404,1427,1422,1377,1327,1300,1285,1254,1208,1194,1188,1168,1141,1103,1072,
+1041,983,924,879,846,811,785,757,729,694,642,626,621,625,626,646,649,602,603,601,
+607,585,507,388,253,158,117,58,-9,-171,-259,-327,-371,-424,-477,-526,-550,-598,-647,-680,
+-684,-652,-614,-605,-630,-705,-833,-948,-1027,-1074,-1097,-1104,-1140,-1189,-1231,-1257,-1269,-1276,-1278,-1265,
+-1242,-1213,-1166,-1153,-1149,-1154,-1053,-963,-969,-1021,-1048,-1054,-1012,-926,-893,-881,-829,-753,-700,-490,
+-356,-320,-279,-241,-171,-108,-87,-109,-130,-237,-308,-410,-582,-646,-784,-1031,-1176,-1241,-1273,-1277,
+-1285,-1308,-1333,-1333,-1337,-1353,-1355,-1351,-1347,-1339,-1339,-1338,-1321,-1310,-1321,-1330,-1331,-1336,-1402,-1416,
+-1440,-1473,-1502,-1483,-1386,-1228,-1015,-762,-819,-980,-1228,-1372,-1362,-1284,-1244,-1238,-1244,-1252,-1336,-1409,
+-1426,-1428,-1443,-1435,-1474,-1503,-1497,-1534,-1537,-1534,-1509,-1464,-1458,-1482,-1517,-1542,-1553,-1548,-1556,-1604,
+-1604,-1648,-1704,-1740,-1789,-1825,-1862,-1904,-1954,-2002,-2043,-2089,-2146,-2197,-2280,-2324,-2380,-2451,-2498,-2577,
+-2656,-2718,-2784,-2831,-2895,-2940,-2975,-3016,-3063,-3121,-3192,-3264,-3321,-3370,-3405,-3430,-3496,-3553,-3577,-3631,
+-3655,-3710,-3757,-3793,-3835,-3887,-3945,-3991,-4030,-4050,-4127,-4152,-4174,-4193,-4242,-4283,-4328,-4369,-4407,-4441,
+-4479,-4516,-4556,-4621,-4683,-4732,-4764,-4794,-4819,-4845,-4863,-4872,-4875,-4866,-4874,-4904,-4944,-4994,-5058,-5090,
+-5108,-5104,-5070,-5007,-4932,-4837,-4736,-4662,-4649,-4670,-4777,-4889,-4983,-5050,-5061,-5041,-5028,-5045,-5073,-5035,
+-5033,-5054,-5090,-5064,-5035,-4984,-4928,-4909,-4885,-4869,-4878,-4927,-4974,-4988,-4958,-4956,-4927,-4904,-4878,-4875,
+-4883,-4875,-4851,-4814,-4782,-4757,-4731,-4713,-4709,-4716,-4725,-4730,-4676,-4639,-4594,-4574,-4572,-4530,-4453,-4409,
+-4374,-4342,-4319,-4266,-4225,-4175,-4127,-4075,-4021,-3967,-3904,-3842,-3786,-3730,-3669,-3616,-3555,-3495,-3441,-3391,
+-3348,-3307,-3259,-3210,-3152,-3105,-3058,-3012,-2962,-2904,-2847,-2797,-2738,-2667,-2602,-2532,-2444,-2370,-2292,-2231,
+-2236,-2218,-2213,-2218,-2125,-2047,-1952,-1854,-1765,-1670,-1566,-1486,-1459,-1446,-1448,-1454,-1432,-1372,-1258,-1092,
+-889,-722,-604,-519,-438,-346,-258,-183,-96,-36,67,171,273,384,483,574,676,777,861,947,
+1016,1055,1086,1105,1132,1178,1225,1277,1347,1392,1421,1463,1518,1601,1698,1764,1780,1780,1800,1841,
+1892,1960,2039,2113,2160,2221,2270,2290,2303,2336,2431,2534,2615,2668,2710,2769,2840,2871,2861,2832,
+2839,2851,2864,2850,2855,2903,2968,3043,3089,3138,3210,3297,3379,3437,3464,3492,3531,3568,3612,3639,
+3677,3732,3786,3824,3858,3952,4061,4134,4159,4171,4204,4268,4365,4470,4558,4619,4660,4722,4770,4765,
+4781,4771,4763,4776,4811,4876,4960,5054,5154,5288,5380,5459,5529,5579,5646,5708,5782,5806,5802,5824,
+5838,5866,5822,5781,5802,5832,5843,5829,5825,5819,5810,5825,5826,5816,5820,5814,5826,5816,5801,5807,
+5814,5837,5847,5877,5891,5923,5962,5908,5802,5729,5721,5712,5710,5682,5680,5702,5721,5749,5727,5715,
+5753,5795,5769,5762,5764,5799,5730,5673,5630,5585,5671,5902,5953,5860,5701,5696,5723,5764,5762,5727,
+5659,5662,5682,5674,5672,5712,5745,5721,5709,5898,6069,6129,5993,5948,5906,5941,6029,6064,6077,6046,
+6001,5983,5965,5902,5846,5760,5599,5371,5213,5284,5584,5975,6155,6348,6538,6541,6520,6585,6616,6605,
+6603,6597,6588,6561,6547,6531,6505,6478,6452,6438,6397,6365,6326,6289,6252,6211,6167,6116,6067,6015,
+5976,5893,5878,5816,5745,5717,5651,5599,5565,5552,5563,5471,5265,5147,5028,4956,5026,5063,5076,4984,
+5027,5087,5091,5145,5134,5056,5026,5051,5055,5053,5061,5070,5060,5058,5060,5047,5026,5001,4983,4874,
+4903,4740,4265,3591,3055,2606,2367,2526,2759,2879,2894,2903,2919,2922,2911,2894,2901,3012,2944,2767,
+2600,2479,2408,2331,2236,2115,1990,1897,1842,1794,1755,1709,1657,1603,1545,1473,1418,1370,1338,1311,
+1284,1263,1248,1223,1204,1181,1168,1151,1136,1109,1083,1061,1054,1048,1033,1012,1019,1081,1176,994,
+943,945,905,850,801,784,740,705,656,630,611,582,544,523,504,490,466,434,396,369,
+376,366,299,272,249,227,201,181,200,251,269,267,200,152,89,57,39,28,27,15,
+-31,-74,-92,-131,-174,-210,-239,-276,-312,-345,-378,-411,-440,-463,-494,-522,-563,-589,-596,-611,
+-633,-599,-629,-644,-661,-685,-722,-764,-813,-825,-788,-768,-795,-810,-834,-878,-894,-893,-905,-946,
+-966,-957,-968,-980,-977,-993,-978,-1005,-963,-1007,-1013,-1022,-1025,-1026,-1028,-1040,-1043,-1054,-1061,-1068,
+-1082,-1094,-1101,-1119,-1132,-1139,-1133,-1126,-1127,-1124,-1122,-1118,-1114,-1112,-1117,-1120,-1117,-1099,-1084,-1070,
+-1059,-1050,-1037,-1036,-1037,-1037,-1032,-1023,-1011,-991,-974,-967,-950,-925,-913,-893,-893,-856,-838,-834,
+-824,-806,-789,-768,-756,-732,-716,-696,-680,-659,-638,-620,-603,-586,-570,-553,-536,-521,-503,-488,
+-476,-460,-446,-432,-418,-404,-388,-372,-361,-352,-328,-316,-301,-294,-283,-276,-266,-255,-246,-239,
+-232,-223,-218,-209,-203,-196,-192,-187,-185,-186,-187,-187,-187,-188,-191,-194,-199,-199,-206,-215,
+-224,-231,-238,-238,-241,-249,-252,-250,-260,-266,-277,-283,-286,-286,-293,-298,-308,-321,-325,-329,
+-338,-349,-359,-369,-373,-376,-381,-387,-389,-393,-400,-407,-416,-422,-427,-434,-434,-436,-443,-447,
+-453,-460,-469,-466,-469,-466,-460,-452,-442,-440,-443,-445,-446,-439,-422,-402,-388,-397,-396,-380,
+-377,-360,-350,-351,-330,-326,-327,-324,-323,-317,-307,-294,-281,-271,-258,-242,-231,-225,-223,-214,
+-198,-180,-160,-149,-142,-135,-132,-122,-108,-91,-72,-47,-19,3,22,38,53,72,92,113,
+139,167,200,227,262,299,339,374,412,451,495,537,578,625,671,701,740,794,846,911,
+962,998,1041,1084,1133,1183,1231,1271,1309,1349,1395,1447,1489,1543,1602,1643,1686,1735,1773,1809,
+1847,1888,1932,1981,2018,2028,1981,1842,1594,1357,1341,1537,1781,2044,2349,2769,3283,3609,3870,4166,
+4343,4371,4410,4413,4327,4338,4346,4393,4404,4425,4484,4566,4548,4451,4392,4323,4192,4083,3911,3682,
+3397,3067,2751,2504,2312,2218,2197,2214,2249,2280,2254,2188,2113,2053,2007,1939,1851,1784,1757,1749,
+1725,1694,1646,1589,1525,1484,1435,1365,1281,1208,1139,1054,939,810,689,588,490,424,273,117,
+-25,-119,-193,-269,-341,-400,-443,-481,-509,-549,-601,-672,-731,-764,-768,-759,-747,-744,-769,-823,
+-904,-991,-1071,-1081,-1023,-981,-951,-937,-917,-855,-815,-863,-853,-888,-949,-1010,-1011,-982,-947,-917,
+-925,-923,-881,-941,-1019,-1078,-1110,-1115,-1151,-1124,-1074,-1019,-974,-895,-893,-867,-821,-787,-750,-717,
+-725,-666,-598,-570,-538,-572,-898,-1090,-1078,-1032,-995,-961,-932,-901,-881,-859,-833,-806,-783,-757,
+-731,-701,-677,-642,-614,-590,-567,-549,-540,-532,-524,-519,-518,-519,-518,-522,-522,-523,-525,-531,
+-544,-557,-570,-587,-599,-623,-648,-660,-673,-683,-698,-707,-715,-717,-707,-707,-695,-688,-670,-663,
+-640,-615,-591,-569,-521,-481,-453,-413,-375,-338,-306,-269,-227,-184,-138,-91,-46,9,36,66,
+108,152,196,237,292,335,380,424,474,503,537,581,592,617,637,671,696,721,755,781,
+812,836,854,888,939,988,1043,1062,1091,1135,1139,1151,1147,1155,1178,1200,1205,1230,1233,1248,
+1242,1252,1246,1241,1240,1249,1258,1271,1262,1253,1260,1256,1285,1283,1276,1276,1280,1281,1285,1308,
+1328,1349,1356,1376,1404,1431,1458,1487,1510,1532,1551,1580,1591,1597,1621,1632,1629,1625,1652,1659,
+1661,1663,1649,1640,1630,1637,1643,1653,1664,1681,1685,1690,1698,1711,1723,1740,1764,1787,1820,1848,
+1869,1885,1907,1932,1951,1962,1969,1972,1974,1978,1982,1974,1977,1974,1970,1963,1978,2031,2149,2178,
+2210,2221,2257,2343,2450,2483,2472,2472,2471,2473,2484,2469,2476,2498,2537,2556,2578,2567,2544,2518,
+2489,2461,2422,2389,2365,2350,2342,2335,2333,2330,2305,2269,2229,2186,2138,2095,2058,2030,1994,1944,
+1879,1808,1718,1612,1519,1466,1463,1481,1469,1424,1379,1344,1321,1284,1263,1232,1205,1182,1151,1123,
+1096,1055,1003,953,920,896,871,845,813,782,739,709,712,745,710,673,688,710,684,675,
+656,634,587,492,371,241,123,71,28,5,-127,-208,-260,-336,-375,-417,-467,-486,-520,-560,
+-580,-566,-528,-501,-526,-601,-736,-900,-1027,-1099,-1130,-1125,-1102,-1101,-1125,-1163,-1186,-1201,-1207,-1211,
+-1207,-1187,-1152,-1102,-1092,-1145,-1139,-1015,-904,-896,-957,-989,-986,-947,-864,-830,-831,-809,-736,-667,
+-478,-311,-292,-264,-201,-118,-29,37,-19,-63,-188,-303,-423,-527,-608,-834,-1065,-1183,-1227,-1233,
+-1234,-1239,-1251,-1268,-1283,-1291,-1294,-1294,-1295,-1289,-1282,-1284,-1281,-1255,-1262,-1277,-1282,-1288,-1325,-1336,
+-1339,-1379,-1425,-1462,-1447,-1389,-1245,-907,-616,-508,-693,-1083,-1388,-1437,-1390,-1282,-1239,-1278,-1277,-1306,
+-1328,-1300,-1277,-1299,-1281,-1326,-1413,-1467,-1479,-1437,-1414,-1401,-1399,-1412,-1415,-1438,-1454,-1464,-1477,-1478,
+-1497,-1534,-1556,-1606,-1655,-1693,-1741,-1775,-1815,-1869,-1901,-1951,-1998,-2059,-2122,-2171,-2227,-2293,-2346,-2409,
+-2478,-2539,-2605,-2673,-2728,-2784,-2828,-2860,-2917,-2966,-3025,-3084,-3154,-3210,-3247,-3289,-3335,-3409,-3464,-3497,
+-3537,-3574,-3631,-3667,-3709,-3750,-3792,-3853,-3899,-3915,-3984,-4004,-4070,-4084,-4123,-4168,-4211,-4251,-4288,-4324,
+-4363,-4400,-4437,-4474,-4549,-4605,-4663,-4691,-4715,-4742,-4769,-4781,-4777,-4780,-4777,-4800,-4843,-4895,-4941,-4982,
+-5009,-5011,-4994,-4954,-4891,-4825,-4738,-4643,-4589,-4583,-4648,-4730,-4815,-4905,-4978,-4996,-4971,-4958,-4986,-5000,
+-4982,-4974,-4992,-5016,-4971,-4928,-4875,-4843,-4850,-4847,-4858,-4879,-4924,-4951,-4955,-4949,-4925,-4900,-4875,-4860,
+-4856,-4858,-4844,-4830,-4802,-4773,-4757,-4734,-4723,-4724,-4731,-4737,-4749,-4699,-4666,-4620,-4597,-4593,-4545,-4497,
+-4436,-4404,-4361,-4327,-4287,-4242,-4192,-4141,-4080,-4025,-3970,-3913,-3854,-3796,-3739,-3681,-3625,-3566,-3514,-3466,
+-3418,-3361,-3322,-3276,-3229,-3187,-3141,-3095,-3047,-2994,-2934,-2871,-2819,-2757,-2691,-2630,-2549,-2473,-2401,-2333,
+-2297,-2279,-2274,-2299,-2260,-2163,-2084,-1990,-1890,-1789,-1700,-1602,-1528,-1521,-1519,-1520,-1518,-1484,-1400,-1259,
+-1043,-825,-673,-574,-495,-425,-363,-305,-262,-185,-81,40,132,228,319,419,519,623,730,816,
+893,966,1013,1044,1080,1094,1106,1145,1194,1248,1289,1305,1346,1403,1477,1559,1647,1715,1745,1744,
+1755,1793,1833,1899,1970,2025,2088,2138,2164,2198,2265,2358,2447,2548,2625,2669,2713,2736,2769,2751,
+2724,2734,2747,2757,2759,2778,2830,2876,2946,3004,3060,3128,3214,3291,3354,3381,3403,3445,3484,3514,
+3547,3608,3654,3707,3750,3798,3890,3993,4061,4089,4108,4142,4211,4328,4445,4536,4596,4622,4687,4741,
+4727,4734,4709,4700,4706,4727,4786,4868,4973,5093,5218,5323,5407,5465,5523,5587,5673,5709,5727,5721,
+5736,5741,5772,5790,5757,5766,5792,5798,5809,5801,5772,5810,5809,5806,5819,5831,5804,5814,5816,5802,
+5798,5807,5845,5889,5915,5919,5914,5933,5893,5799,5712,5671,5661,5666,5638,5623,5632,5641,5656,5657,
+5651,5661,5675,5688,5680,5661,5701,5693,5635,5593,5584,5738,5963,6026,5912,5739,5709,5784,5787,5806,
+5757,5684,5673,5680,5678,5660,5655,5657,5660,5651,5776,6026,6114,6117,5963,5916,5912,5963,6068,6077,
+6110,6067,5972,5950,5907,5850,5762,5626,5419,5205,5190,5399,5749,6020,6182,6397,6528,6530,6534,6603,
+6593,6565,6565,6557,6542,6533,6523,6504,6484,6457,6425,6391,6366,6329,6303,6259,6229,6170,6114,6060,
+6025,5964,5906,5856,5790,5724,5670,5617,5568,5535,5560,5435,5267,5102,5050,5015,5064,5119,5027,5000,
+4984,5019,5040,5062,5130,5142,5076,5050,5072,5089,5092,5100,5108,5101,5108,5104,5093,5069,5043,4962,
+4924,4906,4645,4129,3442,2909,2466,2334,2518,2706,2825,2884,2909,2918,2909,2888,2867,2878,2926,2859,
+2769,2529,2424,2364,2305,2225,2128,2055,1943,1855,1810,1761,1703,1654,1612,1588,1509,1446,1396,1360,
+1322,1292,1273,1260,1244,1225,1196,1164,1142,1126,1092,1070,1051,1042,1036,1013,992,981,989,980,
+953,981,1126,985,885,833,791,757,700,653,618,590,561,534,508,490,481,468,434,400,
+359,336,322,294,270,247,219,182,148,135,148,257,374,188,266,137,68,22,0,-2,
+-40,-71,-94,-98,-127,-191,-234,-265,-295,-330,-365,-403,-438,-465,-503,-523,-552,-591,-618,-623,
+-628,-652,-664,-655,-673,-686,-705,-733,-760,-801,-844,-872,-859,-756,-839,-846,-855,-889,-902,-911,
+-921,-889,-909,-883,-982,-999,-1003,-1011,-1033,-1041,-1043,-1038,-1031,-1038,-1042,-1061,-1056,-1071,-1066,-1069,
+-1073,-1088,-1094,-1088,-1117,-1135,-1144,-1141,-1139,-1135,-1133,-1130,-1126,-1115,-1115,-1116,-1124,-1129,-1115,-1094,
+-1086,-1072,-1058,-1050,-1047,-1046,-1044,-1040,-1033,-1027,-1010,-994,-983,-964,-935,-916,-899,-878,-873,-834,
+-829,-825,-800,-783,-769,-752,-739,-726,-710,-691,-672,-653,-633,-614,-595,-577,-552,-536,-520,-501,
+-485,-472,-459,-447,-430,-415,-399,-389,-371,-360,-345,-329,-315,-303,-291,-283,-278,-270,-259,-252,
+-241,-236,-232,-229,-214,-207,-204,-200,-194,-190,-190,-188,-190,-195,-196,-198,-202,-206,-207,-209,
+-217,-225,-233,-238,-239,-245,-251,-255,-260,-262,-267,-279,-285,-286,-281,-284,-297,-303,-315,-322,
+-328,-336,-345,-354,-359,-364,-371,-376,-382,-385,-390,-398,-404,-411,-417,-421,-421,-418,-421,-424,
+-433,-443,-452,-451,-446,-448,-443,-437,-431,-427,-429,-434,-434,-432,-423,-408,-384,-368,-367,-377,
+-362,-357,-335,-317,-317,-311,-302,-301,-303,-298,-295,-287,-274,-262,-257,-239,-217,-209,-199,-196,
+-188,-183,-159,-145,-128,-119,-108,-102,-90,-79,-59,-41,-20,2,23,40,55,69,86,105,
+126,152,180,212,245,280,315,352,387,431,473,517,556,599,642,685,707,743,795,850,
+908,956,992,1041,1075,1117,1167,1211,1240,1275,1321,1372,1421,1480,1541,1583,1626,1675,1716,1753,
+1790,1834,1881,1932,1984,2032,2068,2066,1995,1792,1494,1297,1370,1650,1970,2320,2718,3245,3579,3802,
+4084,4277,4335,4328,4347,4299,4332,4301,4336,4366,4369,4430,4509,4476,4405,4347,4325,4249,4137,4012,
+3745,3437,3049,2772,2563,2381,2268,2251,2279,2316,2329,2303,2245,2174,2113,2064,1986,1866,1762,1692,
+1666,1681,1688,1662,1619,1569,1531,1463,1402,1312,1249,1193,1109,984,836,696,586,489,412,298,
+158,0,-102,-184,-276,-355,-434,-497,-525,-549,-566,-608,-678,-741,-777,-780,-772,-770,-763,-741,
+-761,-828,-901,-977,-1029,-1011,-965,-934,-909,-882,-847,-814,-793,-803,-827,-907,-958,-949,-918,-886,
+-870,-855,-860,-844,-862,-997,-1083,-1131,-1158,-1116,-1039,-981,-915,-908,-857,-843,-816,-809,-773,-719,
+-710,-726,-690,-618,-560,-527,-626,-976,-1079,-1065,-1029,-996,-964,-935,-910,-891,-866,-834,-808,-783,
+-757,-730,-694,-663,-628,-599,-572,-553,-533,-522,-517,-514,-511,-517,-524,-527,-528,-527,-530,-533,
+-541,-548,-562,-578,-592,-608,-623,-632,-647,-653,-667,-674,-679,-685,-678,-679,-676,-672,-665,-647,
+-625,-606,-587,-568,-530,-512,-477,-440,-403,-357,-327,-291,-258,-215,-179,-145,-98,-58,-17,21,
+75,99,135,185,228,254,308,356,395,438,484,510,543,569,599,628,653,678,722,748,
+770,805,831,884,922,965,1004,1054,1085,1118,1141,1179,1159,1162,1179,1191,1200,1226,1237,1236,
+1235,1251,1256,1254,1256,1257,1257,1257,1253,1259,1259,1258,1257,1264,1278,1282,1296,1305,1321,1320,
+1335,1343,1360,1377,1402,1419,1445,1471,1502,1523,1544,1559,1568,1571,1583,1592,1618,1642,1652,1657,
+1647,1647,1646,1666,1652,1648,1648,1655,1670,1687,1703,1720,1726,1735,1747,1764,1782,1805,1831,1869,
+1900,1923,1937,1948,1969,1985,1997,2001,2008,2015,2024,2033,2033,2031,2023,2037,2091,2146,2164,2275,
+2276,2271,2293,2308,2358,2423,2485,2493,2500,2524,2505,2502,2502,2519,2544,2547,2563,2584,2597,2589,
+2579,2552,2533,2510,2483,2464,2458,2452,2444,2446,2454,2405,2334,2268,2218,2177,2136,2104,2075,2041,
+1992,1929,1857,1764,1664,1593,1559,1565,1574,1529,1478,1437,1402,1366,1330,1303,1252,1220,1183,1163,
+1150,1123,1080,1033,989,964,944,925,900,867,827,811,818,839,867,821,775,752,766,758,
+684,653,621,578,482,357,230,120,52,38,102,-22,-141,-233,-288,-280,-344,-407,-429,-454,
+-479,-488,-469,-438,-435,-501,-630,-826,-996,-1119,-1178,-1181,-1158,-1103,-1064,-1064,-1096,-1127,-1144,-1149,
+-1135,-1123,-1100,-1085,-1079,-1060,-1093,-1086,-978,-870,-847,-889,-929,-939,-887,-788,-757,-762,-754,-719,
+-634,-510,-375,-282,-230,-158,-65,43,72,46,-9,-188,-309,-407,-486,-598,-867,-1064,-1158,-1184,
+-1183,-1185,-1190,-1200,-1221,-1234,-1236,-1235,-1241,-1240,-1229,-1225,-1232,-1213,-1205,-1188,-1182,-1218,-1250,-1276,
+-1246,-1274,-1314,-1363,-1411,-1428,-1425,-1324,-1015,-615,-458,-620,-988,-1320,-1433,-1399,-1273,-1276,-1230,-1220,
+-1241,-1241,-1252,-1243,-1182,-1112,-1046,-1134,-1290,-1357,-1297,-1251,-1239,-1293,-1317,-1345,-1348,-1365,-1387,-1392,
+-1406,-1411,-1445,-1464,-1497,-1556,-1595,-1648,-1682,-1748,-1763,-1807,-1870,-1934,-1968,-2013,-2074,-2124,-2183,-2235,
+-2301,-2377,-2432,-2497,-2579,-2630,-2671,-2721,-2764,-2824,-2872,-2937,-2989,-3043,-3089,-3120,-3177,-3247,-3322,-3370,
+-3410,-3441,-3471,-3531,-3579,-3616,-3666,-3718,-3766,-3780,-3830,-3879,-3929,-3968,-3995,-4029,-4090,-4131,-4165,-4199,
+-4240,-4280,-4319,-4354,-4391,-4472,-4533,-4581,-4612,-4639,-4667,-4686,-4690,-4690,-4692,-4706,-4744,-4789,-4830,-4867,
+-4891,-4905,-4893,-4866,-4817,-4767,-4703,-4627,-4560,-4516,-4520,-4569,-4656,-4743,-4826,-4901,-4932,-4901,-4893,-4937,
+-4953,-4925,-4917,-4928,-4940,-4890,-4844,-4807,-4798,-4809,-4816,-4834,-4874,-4913,-4920,-4919,-4916,-4894,-4868,-4852,
+-4844,-4841,-4836,-4817,-4812,-4783,-4753,-4757,-4743,-4733,-4736,-4746,-4751,-4763,-4717,-4688,-4644,-4610,-4611,-4573,
+-4526,-4483,-4425,-4376,-4325,-4291,-4249,-4209,-4154,-4087,-4028,-3961,-3917,-3854,-3790,-3734,-3672,-3625,-3578,-3525,
+-3479,-3434,-3379,-3336,-3302,-3264,-3221,-3174,-3128,-3075,-3019,-2958,-2896,-2837,-2774,-2717,-2654,-2569,-2497,-2440,
+-2397,-2368,-2330,-2312,-2322,-2280,-2203,-2121,-2029,-1921,-1825,-1735,-1647,-1592,-1591,-1590,-1579,-1560,-1506,-1391,
+-1218,-978,-771,-638,-560,-531,-509,-479,-410,-316,-233,-119,9,83,145,238,356,454,550,634,
+738,843,902,966,1016,1048,1062,1079,1079,1122,1153,1179,1199,1236,1290,1355,1419,1491,1573,1643,
+1670,1674,1686,1720,1782,1844,1893,1939,1991,2055,2125,2216,2293,2359,2444,2532,2579,2603,2623,2649,
+2650,2624,2622,2635,2631,2648,2677,2716,2767,2820,2896,2969,3038,3110,3180,3258,3296,3339,3374,3411,
+3453,3504,3551,3599,3636,3682,3749,3838,3926,3979,4002,4037,4087,4169,4292,4402,4511,4565,4590,4656,
+4707,4683,4660,4612,4611,4612,4642,4696,4786,4881,4989,5093,5206,5298,5371,5461,5544,5596,5615,5627,
+5662,5663,5676,5719,5733,5761,5724,5771,5758,5722,5735,5737,5759,5777,5778,5795,5799,5804,5792,5777,
+5765,5763,5774,5812,5852,5879,5885,5888,5861,5829,5770,5686,5633,5613,5605,5584,5570,5576,5586,5588,
+5613,5591,5608,5678,5703,5607,5591,5612,5611,5589,5567,5597,5818,5971,5982,5866,5720,5703,5723,5718,
+5701,5680,5673,5696,5671,5667,5658,5654,5644,5640,5631,5666,5898,6072,6123,6012,5951,5905,5899,5931,
+6025,6101,6064,6001,5947,5901,5845,5769,5637,5465,5255,5091,5126,5352,5718,6017,6343,6507,6487,6463,
+6577,6579,6543,6539,6541,6533,6520,6511,6501,6478,6443,6419,6382,6362,6330,6290,6273,6204,6146,6114,
+6073,6019,5974,5918,5843,5776,5720,5670,5606,5557,5549,5474,5333,5139,5003,4991,5062,5053,5011,5003,
+5001,5001,5033,5045,5059,5122,5150,5094,5071,5088,5110,5113,5136,5144,5145,5142,5149,5135,5110,5111,
+5024,5022,4872,4528,3975,3336,2759,2358,2370,2565,2727,2831,2895,2919,2922,2899,2865,2823,2787,2746,
+2675,2591,2461,2383,2334,2273,2195,2113,2045,1960,1875,1818,1760,1692,1642,1614,1580,1531,1477,1431,
+1388,1341,1304,1284,1272,1265,1244,1210,1169,1135,1115,1098,1072,1056,1040,1017,997,976,959,952,
+925,912,930,972,961,919,889,848,792,727,670,622,585,560,536,518,493,477,461,434,
+403,360,331,337,294,259,241,214,184,155,128,104,122,117,84,91,50,16,-7,-29,
+-29,-23,-98,-111,-124,-121,-207,-262,-281,-311,-358,-388,-424,-464,-492,-528,-547,-564,-593,-611,
+-638,-668,-690,-704,-702,-709,-723,-735,-752,-778,-800,-835,-863,-882,-887,-860,-870,-809,-857,-928,
+-949,-949,-924,-966,-944,-966,-999,-1013,-1018,-1035,-1045,-1029,-1028,-1053,-1058,-1069,-1076,-1089,-1090,-1096,
+-1101,-1082,-1115,-1108,-1114,-1100,-1129,-1143,-1133,-1130,-1129,-1134,-1127,-1131,-1127,-1131,-1132,-1141,-1141,-1129,
+-1111,-1102,-1082,-1069,-1058,-1055,-1046,-1044,-1032,-1036,-1032,-1020,-1005,-993,-975,-957,-934,-917,-898,-876,
+-848,-831,-828,-815,-793,-786,-772,-756,-737,-712,-687,-667,-646,-628,-619,-604,-583,-558,-538,-521,
+-505,-489,-472,-458,-448,-431,-413,-397,-381,-367,-357,-348,-338,-322,-311,-297,-283,-279,-269,-263,
+-253,-244,-245,-239,-237,-221,-215,-210,-206,-201,-199,-196,-194,-195,-202,-203,-207,-209,-212,-215,
+-216,-224,-230,-233,-239,-245,-252,-259,-260,-262,-267,-272,-280,-287,-289,-289,-294,-298,-309,-314,
+-320,-325,-332,-345,-350,-355,-359,-365,-374,-381,-387,-388,-390,-393,-396,-400,-403,-403,-404,-407,
+-416,-422,-430,-430,-425,-425,-426,-424,-417,-411,-413,-416,-421,-419,-414,-402,-378,-362,-353,-350,
+-344,-344,-333,-309,-304,-286,-292,-286,-284,-279,-278,-270,-264,-255,-243,-233,-220,-207,-187,-171,
+-163,-154,-160,-136,-131,-109,-90,-82,-71,-60,-47,-29,-8,8,25,41,57,72,85,104,
+125,144,170,200,228,261,293,328,365,402,443,489,538,575,607,643,694,718,812,825,
+858,899,944,975,1012,1055,1103,1142,1177,1213,1250,1291,1349,1406,1460,1512,1566,1616,1654,1689,
+1726,1770,1818,1874,1927,1975,2024,2070,2094,2069,1947,1665,1365,1262,1458,1814,2280,2703,3179,3557,
+3781,3982,4188,4293,4292,4334,4290,4319,4312,4317,4338,4343,4388,4435,4415,4368,4330,4319,4268,4173,
+4012,3750,3419,3035,2756,2575,2431,2293,2269,2305,2344,2361,2341,2290,2233,2196,2136,2039,1918,1787,
+1686,1633,1644,1676,1673,1650,1615,1561,1486,1406,1344,1293,1238,1149,1015,853,705,587,512,394,
+275,163,25,-85,-174,-293,-405,-475,-526,-560,-576,-592,-611,-687,-747,-787,-786,-781,-790,-787,
+-750,-744,-775,-844,-911,-963,-980,-949,-907,-877,-840,-812,-776,-758,-752,-800,-887,-919,-897,-886,
+-841,-816,-779,-780,-774,-785,-938,-1013,-1074,-1122,-1004,-919,-891,-865,-856,-822,-799,-795,-802,-757,
+-702,-705,-750,-749,-670,-588,-597,-673,-942,-1024,-1040,-1023,-996,-967,-941,-915,-894,-872,-846,-817,
+-793,-768,-728,-689,-653,-621,-590,-564,-542,-521,-512,-505,-506,-514,-524,-534,-537,-538,-538,-541,
+-546,-554,-560,-571,-590,-606,-623,-638,-648,-661,-667,-668,-675,-685,-684,-681,-687,-677,-664,-646,
+-625,-604,-589,-580,-559,-537,-512,-483,-449,-405,-365,-331,-302,-261,-222,-182,-145,-108,-75,-23,
+1,39,85,121,168,204,256,286,321,360,403,446,479,519,548,581,613,645,677,711,
+751,789,818,853,875,911,960,997,1034,1086,1144,1156,1172,1183,1197,1194,1181,1212,1214,1218,
+1225,1244,1261,1251,1251,1254,1254,1252,1244,1245,1254,1263,1276,1289,1301,1304,1315,1313,1312,1319,
+1335,1353,1361,1383,1396,1411,1445,1461,1478,1496,1520,1552,1576,1604,1614,1623,1630,1638,1657,1657,
+1633,1640,1647,1678,1659,1658,1667,1672,1675,1696,1721,1729,1735,1748,1767,1785,1802,1823,1846,1877,
+1913,1949,1971,1985,1993,2004,2014,2027,2035,2042,2064,2065,2072,2071,2092,2154,2211,2211,2248,2284,
+2283,2315,2308,2326,2344,2377,2424,2485,2510,2517,2555,2534,2509,2512,2530,2562,2599,2607,2599,2601,
+2605,2602,2602,2598,2593,2583,2575,2579,2560,2545,2536,2515,2455,2377,2313,2273,2242,2206,2172,2136,
+2094,2040,1973,1903,1820,1730,1670,1643,1643,1624,1574,1538,1506,1465,1426,1385,1332,1285,1253,1215,
+1196,1185,1157,1115,1063,1034,1026,1010,991,972,950,927,928,944,963,975,930,906,827,784,
+749,664,606,569,528,458,332,210,113,60,114,206,130,-60,-178,-165,-159,-257,-339,-380,
+-402,-422,-422,-408,-391,-422,-533,-724,-910,-1054,-1141,-1179,-1177,-1140,-1060,-1004,-1006,-1031,-1066,-1087,
+-1096,-1074,-1039,-1011,-1001,-1029,-1027,-1023,-1023,-929,-830,-792,-815,-872,-887,-846,-724,-647,-658,-696,
+-670,-622,-530,-370,-264,-179,-92,-10,63,98,100,9,-173,-296,-350,-452,-623,-878,-1040,-1117,
+-1139,-1140,-1141,-1149,-1155,-1167,-1174,-1184,-1177,-1168,-1169,-1169,-1174,-1167,-1161,-1146,-1011,-1030,-1167,-1186,
+-1177,-1139,-1182,-1226,-1290,-1341,-1390,-1410,-1347,-1100,-667,-386,-605,-1032,-1301,-1383,-1325,-1261,-1200,-1142,
+-1123,-1135,-1155,-1150,-1179,-1188,-1185,-1181,-1168,-1141,-1132,-1095,-1050,-1021,-1050,-1155,-1235,-1224,-1273,-1307,
+-1320,-1341,-1350,-1365,-1411,-1414,-1462,-1509,-1546,-1619,-1632,-1673,-1756,-1796,-1818,-1873,-1929,-1991,-2039,-2088,
+-2139,-2209,-2277,-2337,-2412,-2475,-2532,-2581,-2625,-2671,-2715,-2778,-2828,-2884,-2939,-2979,-3033,-3116,-3163,-3222,
+-3274,-3296,-3326,-3382,-3443,-3484,-3532,-3579,-3630,-3662,-3698,-3741,-3786,-3846,-3878,-3918,-3955,-4010,-4045,-4079,
+-4121,-4156,-4199,-4236,-4267,-4303,-4385,-4444,-4490,-4515,-4532,-4552,-4573,-4594,-4611,-4621,-4653,-4683,-4717,-4748,
+-4776,-4785,-4774,-4756,-4733,-4697,-4649,-4600,-4538,-4492,-4469,-4449,-4481,-4596,-4671,-4755,-4837,-4897,-4854,-4854,
+-4874,-4896,-4871,-4862,-4865,-4859,-4825,-4794,-4777,-4782,-4788,-4798,-4813,-4863,-4892,-4890,-4885,-4880,-4862,-4844,
+-4833,-4831,-4832,-4821,-4793,-4784,-4765,-4744,-4755,-4753,-4744,-4745,-4757,-4761,-4769,-4736,-4701,-4664,-4630,-4605,
+-4595,-4552,-4508,-4436,-4373,-4329,-4284,-4249,-4211,-4166,-4106,-4035,-3975,-3918,-3843,-3764,-3716,-3668,-3620,-3572,
+-3525,-3481,-3432,-3387,-3361,-3329,-3292,-3249,-3203,-3154,-3102,-3044,-2978,-2922,-2856,-2787,-2740,-2654,-2596,-2525,
+-2484,-2454,-2435,-2387,-2346,-2345,-2310,-2248,-2163,-2068,-1968,-1880,-1798,-1726,-1684,-1669,-1654,-1633,-1583,-1496,
+-1346,-1134,-890,-727,-639,-640,-654,-626,-576,-468,-353,-294,-178,-74,-22,66,170,278,367,470,
+545,625,740,857,927,979,1005,1024,1027,1031,1061,1087,1103,1106,1135,1188,1251,1300,1358,1428,
+1507,1554,1579,1592,1622,1675,1741,1797,1845,1901,1980,2050,2141,2228,2292,2355,2416,2465,2478,2536,
+2552,2552,2533,2542,2527,2519,2528,2556,2590,2641,2694,2772,2857,2935,3022,3112,3181,3239,3283,3320,
+3354,3400,3448,3485,3527,3567,3620,3699,3776,3842,3889,3922,3956,4022,4125,4249,4350,4455,4535,4562,
+4630,4669,4640,4585,4540,4540,4541,4566,4620,4702,4776,4866,4962,5055,5154,5269,5344,5448,5496,5528,
+5572,5626,5630,5640,5664,5688,5696,5685,5685,5704,5693,5705,5709,5707,5720,5734,5750,5762,5776,5763,
+5745,5744,5733,5743,5765,5804,5827,5851,5833,5812,5779,5735,5665,5602,5567,5541,5518,5491,5525,5606,
+5537,5543,5541,5550,5630,5670,5579,5543,5554,5564,5559,5552,5598,5803,5925,5927,5862,5713,5672,5659,
+5663,5674,5649,5645,5693,5683,5647,5630,5616,5625,5635,5629,5621,5689,5953,6084,6105,6059,5935,5887,
+5890,5932,6073,6140,6092,6012,5918,5853,5783,5678,5525,5324,5085,4937,4982,5333,5760,6081,6289,6380,
+6421,6478,6551,6522,6524,6525,6512,6506,6500,6473,6467,6433,6415,6397,6355,6323,6287,6249,6185,6140,
+6120,6078,6021,5983,5916,5849,5780,5727,5660,5578,5559,5504,5331,5181,5111,5039,5088,5086,5037,4996,
+4983,4997,5013,5079,5099,5094,5146,5168,5108,5091,5106,5120,5147,5162,5179,5180,5188,5182,5166,5175,
+5162,5108,5060,4843,4426,3828,3202,2648,2337,2448,2642,2776,2865,2915,2936,2932,2906,2863,2814,2757,
+2677,2578,2478,2401,2348,2307,2249,2174,2118,2064,1964,1879,1818,1764,1694,1641,1614,1576,1549,1496,
+1450,1408,1363,1328,1300,1281,1274,1261,1231,1188,1154,1122,1100,1095,1073,1036,1020,995,970,951,
+937,917,897,892,894,919,958,1021,946,943,809,707,638,596,565,539,522,505,483,459,
+435,405,363,324,297,261,236,224,205,180,154,121,91,67,41,30,20,7,-10,-15,
+-61,-104,-128,-160,-205,-213,-227,-278,-315,-332,-342,-368,-399,-438,-486,-526,-555,-583,-571,-556,
+-520,-594,-677,-711,-729,-729,-734,-760,-773,-781,-802,-813,-826,-848,-869,-899,-921,-886,-813,-814,
+-899,-930,-920,-966,-999,-1004,-956,-985,-1004,-1018,-1022,-1035,-1059,-1057,-1076,-1092,-1093,-1100,-1106,-1116,
+-1114,-1124,-1121,-1137,-1138,-1136,-1123,-1142,-1152,-1139,-1135,-1143,-1140,-1132,-1137,-1147,-1156,-1165,-1162,-1145,
+-1142,-1132,-1105,-1097,-1086,-1065,-1062,-1055,-1042,-1037,-1035,-1030,-1025,-1003,-994,-984,-980,-956,-938,-922,
+-904,-869,-845,-831,-828,-801,-793,-780,-762,-740,-718,-697,-677,-652,-631,-619,-607,-586,-564,-541,
+-529,-513,-491,-471,-456,-444,-427,-411,-397,-381,-371,-359,-349,-340,-331,-315,-308,-295,-283,-278,
+-275,-265,-255,-254,-249,-247,-231,-224,-218,-213,-209,-207,-204,-202,-201,-206,-206,-211,-212,-214,
+-219,-224,-227,-231,-237,-242,-250,-259,-264,-267,-269,-268,-272,-278,-286,-290,-296,-296,-301,-308,
+-314,-313,-319,-326,-337,-343,-348,-348,-354,-360,-368,-374,-378,-380,-384,-385,-386,-385,-386,-394,
+-404,-416,-415,-412,-407,-402,-405,-407,-405,-398,-392,-395,-399,-397,-398,-387,-370,-360,-345,-340,
+-326,-321,-315,-300,-296,-287,-266,-264,-267,-265,-265,-264,-258,-246,-237,-227,-210,-197,-184,-163,
+-160,-145,-131,-119,-123,-106,-92,-71,-54,-46,-34,-18,-4,11,27,43,59,75,90,106,
+125,145,167,189,217,247,276,306,341,377,418,462,510,558,592,631,677,703,747,800,
+829,855,895,932,965,1005,1047,1086,1121,1154,1184,1231,1278,1331,1382,1442,1498,1544,1594,1629,
+1667,1706,1751,1803,1858,1916,1966,2014,2056,2092,2099,2037,1839,1496,1260,1353,1691,2185,2622,3092,
+3574,3746,3894,4118,4284,4327,4351,4323,4311,4331,4285,4287,4315,4325,4344,4332,4342,4345,4286,4242,
+4183,3976,3733,3354,2988,2743,2580,2453,2303,2282,2319,2358,2376,2349,2311,2267,2246,2198,2103,1985,
+1864,1761,1694,1673,1685,1694,1675,1632,1568,1490,1412,1365,1322,1247,1149,1013,852,699,582,505,
+379,242,136,46,-74,-181,-299,-416,-495,-536,-565,-586,-607,-640,-692,-743,-781,-787,-798,-799,
+-795,-755,-735,-746,-763,-822,-891,-952,-938,-910,-860,-812,-781,-741,-724,-730,-793,-860,-869,-826,
+-809,-778,-757,-708,-689,-685,-741,-864,-972,-1032,-1042,-906,-802,-825,-835,-807,-750,-718,-724,-781,
+-749,-715,-759,-885,-912,-824,-664,-578,-579,-672,-832,-988,-998,-971,-941,-911,-885,-873,-863,-847,
+-823,-795,-767,-722,-685,-650,-618,-588,-564,-543,-524,-513,-506,-509,-522,-533,-543,-547,-552,-555,
+-562,-562,-565,-570,-580,-598,-615,-631,-647,-655,-666,-673,-670,-665,-680,-686,-674,-663,-656,-659,
+-651,-634,-613,-588,-570,-552,-536,-517,-483,-463,-422,-379,-345,-291,-256,-229,-197,-155,-124,-72,
+-50,-12,28,68,110,150,197,236,265,319,357,389,436,471,510,537,575,603,639,669,
+699,742,774,799,838,871,901,953,993,1031,1090,1140,1147,1203,1201,1188,1185,1200,1205,1214,
+1238,1249,1250,1239,1237,1232,1239,1254,1256,1273,1284,1292,1295,1299,1301,1301,1303,1314,1323,1338,
+1348,1355,1362,1380,1396,1415,1429,1455,1474,1505,1518,1533,1543,1560,1571,1593,1611,1619,1618,1623,
+1633,1657,1635,1644,1662,1681,1696,1705,1710,1719,1726,1732,1748,1766,1780,1801,1824,1846,1869,1892,
+1922,1956,1991,2013,2030,2105,2065,2068,2076,2088,2088,2095,2092,2089,2184,2278,2266,2263,2265,2286,
+2270,2280,2346,2358,2351,2362,2397,2440,2493,2541,2562,2581,2554,2504,2495,2514,2545,2608,2599,2598,
+2614,2638,2655,2667,2670,2672,2673,2664,2660,2647,2626,2585,2540,2491,2442,2406,2376,2339,2299,2257,
+2209,2156,2098,2027,1951,1869,1791,1735,1697,1665,1615,1592,1578,1562,1559,1532,1457,1392,1354,1317,
+1272,1246,1240,1208,1166,1115,1106,1109,1086,1069,1065,1055,1050,1041,1030,1040,1040,979,938,864,
+802,727,642,587,527,486,416,305,204,110,71,173,239,128,-37,-84,0,-63,-193,-287,
+-341,-363,-380,-381,-373,-382,-455,-627,-799,-929,-1024,-1071,-1088,-1085,-1054,-975,-919,-929,-957,-994,
+-1020,-1020,-1007,-964,-942,-937,-941,-945,-934,-936,-861,-780,-745,-767,-825,-842,-806,-669,-543,-561,
+-613,-586,-547,-504,-353,-230,-121,5,75,91,143,127,-1,-164,-274,-342,-421,-651,-865,-1011,
+-1079,-1098,-1095,-1097,-1105,-1108,-1115,-1117,-1119,-1123,-1118,-1115,-1124,-1118,-1108,-1121,-1110,-1061,-1079,-1100,
+-1083,-1055,-1047,-1066,-1105,-1174,-1249,-1312,-1337,-1270,-1018,-549,-397,-772,-1075,-1268,-1283,-1235,-1160,-1108,
+-1062,-1031,-1027,-1042,-1045,-1081,-1124,-1163,-1182,-1196,-1214,-1216,-1164,-1152,-1151,-1173,-1202,-1207,-1208,-1211,
+-1225,-1243,-1264,-1283,-1291,-1307,-1379,-1372,-1467,-1466,-1485,-1564,-1622,-1647,-1677,-1739,-1786,-1841,-1887,-1938,
+-2012,-2065,-2110,-2168,-2257,-2325,-2379,-2432,-2487,-2537,-2579,-2629,-2682,-2736,-2794,-2831,-2885,-2958,-3014,-3064,
+-3121,-3158,-3199,-3234,-3301,-3346,-3393,-3439,-3496,-3540,-3565,-3613,-3645,-3687,-3735,-3776,-3832,-3874,-3914,-3948,
+-3990,-4027,-4066,-4110,-4150,-4176,-4214,-4302,-4342,-4381,-4398,-4435,-4476,-4506,-4514,-4518,-4542,-4576,-4608,-4631,
+-4648,-4660,-4660,-4652,-4621,-4610,-4589,-4557,-4523,-4471,-4426,-4405,-4410,-4458,-4555,-4626,-4700,-4782,-4823,-4824,
+-4789,-4802,-4826,-4814,-4810,-4802,-4782,-4751,-4758,-4755,-4764,-4778,-4788,-4805,-4856,-4876,-4864,-4851,-4841,-4828,
+-4820,-4816,-4819,-4819,-4804,-4767,-4758,-4749,-4740,-4754,-4761,-4754,-4755,-4771,-4769,-4770,-4755,-4713,-4677,-4645,
+-4606,-4599,-4578,-4533,-4437,-4358,-4325,-4286,-4241,-4199,-4167,-4104,-4050,-3993,-3925,-3854,-3784,-3718,-3649,-3593,
+-3563,-3522,-3460,-3428,-3403,-3383,-3350,-3316,-3272,-3226,-3179,-3126,-3067,-3005,-2928,-2877,-2830,-2773,-2709,-2699,
+-2632,-2561,-2518,-2492,-2424,-2379,-2357,-2333,-2282,-2208,-2114,-2016,-1940,-1874,-1819,-1778,-1745,-1705,-1657,-1576,
+-1449,-1260,-1034,-876,-773,-744,-748,-736,-695,-631,-551,-474,-374,-282,-200,-119,-21,76,192,280,
+361,445,515,601,774,882,926,962,986,984,973,989,1013,1029,1056,1079,1115,1168,1201,1251,
+1315,1373,1436,1485,1518,1557,1604,1662,1718,1774,1842,1904,1965,2042,2134,2203,2260,2315,2353,2406,
+2436,2424,2448,2446,2451,2435,2409,2415,2445,2490,2529,2586,2668,2756,2839,2925,3023,3107,3179,3228,
+3270,3310,3337,3365,3398,3437,3501,3575,3654,3709,3751,3801,3859,3909,3978,4086,4198,4298,4400,4473,
+4526,4587,4632,4616,4550,4502,4503,4506,4510,4554,4605,4676,4763,4841,4909,5003,5119,5211,5315,5391,
+5445,5498,5534,5553,5572,5594,5617,5638,5659,5658,5662,5690,5678,5655,5655,5682,5694,5730,5735,5735,
+5743,5723,5714,5719,5703,5710,5743,5767,5774,5767,5761,5750,5700,5642,5575,5517,5478,5440,5412,5442,
+5471,5479,5486,5485,5483,5550,5542,5500,5497,5509,5528,5528,5537,5566,5659,5828,5928,5861,5646,5570,
+5582,5698,5785,5747,5701,5763,5733,5657,5607,5578,5583,5590,5593,5582,5577,5703,5984,6090,6137,6052,
+5944,5912,5908,5977,6049,6105,6085,5987,5886,5806,5730,5602,5420,5154,4865,4783,5008,5531,5896,6109,
+6317,6400,6426,6502,6488,6488,6498,6496,6488,6477,6456,6448,6427,6403,6374,6343,6312,6279,6228,6168,
+6133,6116,6077,6020,5974,5920,5845,5786,5721,5662,5611,5529,5312,5206,5110,5106,5140,5114,5074,5035,
+5009,4993,4999,5025,5076,5111,5120,5167,5191,5158,5119,5127,5139,5171,5187,5215,5216,5214,5208,5191,
+5189,5152,5188,5085,4795,4317,3671,3072,2542,2377,2539,2718,2831,2902,2937,2948,2934,2904,2862,2807,
+2742,2648,2547,2451,2371,2322,2303,2233,2157,2150,2212,1978,1855,1804,1801,1698,1635,1598,1557,1536,
+1501,1465,1424,1388,1350,1323,1298,1286,1272,1241,1201,1174,1147,1114,1118,1086,1041,1022,1002,975,
+953,935,919,898,883,884,918,958,1028,1020,975,884,787,675,616,564,539,528,498,482,
+458,426,399,362,325,286,252,221,200,183,168,157,106,88,62,35,15,2,-15,-17,
+-61,-114,-120,-144,-165,-182,-207,-244,-289,-326,-355,-387,-403,-368,-446,-503,-551,-583,-600,-603,
+-545,-518,-610,-703,-741,-751,-748,-718,-766,-797,-808,-819,-826,-822,-839,-853,-876,-908,-935,-944,
+-893,-838,-862,-918,-961,-988,-1020,-1001,-931,-958,-1014,-1020,-1027,-1047,-1065,-1079,-1095,-1110,-1122,-1125,
+-1142,-1134,-1139,-1138,-1136,-1145,-1157,-1152,-1165,-1163,-1153,-1151,-1153,-1159,-1160,-1157,-1156,-1156,-1141,-1130,
+-1134,-1134,-1125,-1114,-1108,-1097,-1088,-1077,-1063,-1056,-1052,-1040,-1030,-1023,-1007,-994,-987,-991,-976,-958,
+-939,-917,-892,-869,-842,-831,-827,-805,-786,-765,-744,-721,-700,-687,-663,-645,-626,-610,-590,-572,
+-536,-524,-518,-501,-483,-467,-451,-433,-419,-408,-392,-383,-369,-355,-342,-332,-319,-310,-300,-292,
+-291,-280,-276,-267,-262,-261,-253,-241,-231,-226,-220,-216,-213,-208,-207,-207,-207,-208,-213,-213,
+-213,-218,-223,-228,-233,-241,-246,-254,-262,-265,-269,-271,-275,-278,-282,-287,-292,-296,-299,-303,
+-307,-310,-312,-315,-323,-327,-333,-337,-341,-346,-351,-361,-370,-373,-375,-380,-387,-382,-378,-379,
+-387,-396,-400,-396,-389,-383,-385,-391,-391,-389,-379,-377,-378,-376,-369,-370,-362,-347,-340,-331,
+-308,-305,-302,-281,-266,-280,-265,-250,-241,-246,-239,-238,-240,-241,-228,-211,-201,-183,-170,-156,
+-150,-136,-121,-108,-99,-96,-77,-61,-55,-36,-21,-11,3,15,30,48,64,76,92,107,
+125,147,169,191,211,237,266,294,321,354,395,433,481,528,573,615,659,702,725,765,
+794,810,850,890,924,960,997,1037,1059,1084,1132,1176,1225,1268,1317,1373,1425,1473,1518,1565,
+1610,1643,1683,1729,1786,1848,1904,1955,2001,2042,2071,2091,2068,1900,1597,1306,1298,1650,2120,2532,
+3018,3496,3682,3803,4019,4229,4282,4357,4332,4276,4284,4262,4257,4282,4309,4301,4267,4293,4324,4306,
+4265,4189,4039,3726,3361,2967,2730,2543,2409,2292,2285,2324,2363,2374,2339,2296,2259,2245,2215,2148,
+2050,1957,1878,1811,1761,1736,1720,1691,1639,1564,1479,1404,1365,1342,1233,1120,994,835,688,581,
+474,358,230,141,44,-79,-185,-302,-412,-488,-522,-549,-591,-625,-657,-700,-740,-776,-784,-780,
+-795,-783,-752,-731,-742,-752,-796,-844,-891,-888,-869,-846,-786,-752,-717,-718,-749,-820,-831,-794,
+-719,-683,-660,-627,-618,-567,-571,-655,-799,-903,-982,-933,-781,-689,-726,-732,-699,-612,-574,-672,
+-759,-740,-758,-885,-981,-1010,-947,-774,-630,-649,-727,-776,-906,-914,-874,-843,-788,-757,-777,-809,
+-822,-799,-768,-740,-708,-675,-648,-618,-592,-572,-550,-530,-519,-513,-514,-525,-543,-551,-556,-568,
+-572,-578,-576,-575,-576,-591,-608,-612,-631,-653,-659,-660,-665,-665,-662,-664,-666,-664,-664,-651,
+-650,-638,-604,-582,-555,-547,-516,-497,-482,-460,-430,-404,-373,-334,-312,-276,-244,-204,-158,-111,
+-82,-49,-11,31,69,104,155,197,237,283,319,353,396,441,469,508,539,578,607,635,
+664,704,731,758,798,840,887,918,969,1013,1063,1103,1142,1162,1197,1217,1229,1225,1230,1229,
+1222,1220,1221,1225,1235,1251,1259,1277,1286,1277,1284,1288,1284,1292,1304,1309,1313,1315,1341,1338,
+1341,1358,1374,1390,1388,1403,1418,1438,1458,1477,1501,1510,1535,1557,1572,1577,1590,1615,1633,1637,
+1643,1657,1653,1658,1685,1705,1712,1712,1712,1710,1721,1737,1757,1777,1801,1820,1841,1863,1889,1913,
+1939,1962,1993,2025,2055,2077,2140,2141,2131,2142,2144,2140,2139,2152,2204,2289,2325,2312,2315,2336,
+2357,2294,2280,2358,2382,2370,2373,2411,2442,2483,2548,2584,2584,2558,2502,2480,2527,2563,2612,2579,
+2613,2651,2687,2708,2711,2721,2734,2746,2747,2737,2714,2677,2638,2595,2552,2544,2523,2489,2452,2404,
+2345,2286,2222,2156,2081,1998,1919,1847,1787,1736,1686,1644,1622,1611,1636,1649,1634,1560,1482,1432,
+1392,1344,1320,1313,1272,1226,1192,1195,1199,1181,1163,1155,1162,1160,1150,1134,1146,1107,1025,958,
+882,809,720,620,534,489,438,338,237,173,123,103,215,243,150,43,24,69,-36,-151,
+-235,-296,-324,-347,-360,-355,-397,-546,-705,-828,-900,-938,-954,-956,-953,-932,-870,-831,-844,-878,
+-919,-942,-943,-910,-874,-863,-847,-850,-852,-848,-853,-808,-715,-694,-722,-764,-792,-755,-601,-462,
+-483,-536,-510,-495,-444,-310,-155,-53,26,81,102,118,87,-11,-139,-217,-271,-420,-679,-857,
+-984,-1043,-1065,-1065,-1060,-1062,-1061,-1065,-1068,-1069,-1057,-1057,-1067,-1057,-1042,-1061,-1070,-1066,-1062,-1035,
+-998,-936,-896,-869,-851,-900,-1002,-1117,-1200,-1222,-1130,-814,-306,-365,-858,-1122,-1173,-1160,-1142,-1067,
+-1020,-988,-960,-952,-958,-961,-986,-1007,-1042,-1061,-1087,-1096,-1112,-1120,-1127,-1105,-1093,-1103,-1106,-1115,
+-1129,-1150,-1172,-1199,-1215,-1231,-1254,-1319,-1334,-1333,-1395,-1424,-1482,-1515,-1539,-1595,-1628,-1693,-1741,-1795,
+-1852,-1901,-1965,-2023,-2082,-2164,-2209,-2271,-2338,-2393,-2432,-2494,-2535,-2579,-2634,-2662,-2728,-2802,-2856,-2922,
+-2982,-3018,-3050,-3097,-3144,-3205,-3252,-3304,-3354,-3410,-3436,-3486,-3520,-3559,-3604,-3641,-3687,-3741,-3789,-3824,
+-3861,-3903,-3943,-3986,-4025,-4066,-4097,-4127,-4209,-4261,-4290,-4327,-4350,-4378,-4395,-4415,-4430,-4458,-4501,-4524,
+-4534,-4552,-4536,-4539,-4536,-4516,-4499,-4501,-4471,-4453,-4415,-4375,-4362,-4387,-4428,-4524,-4588,-4650,-4716,-4765,
+-4772,-4723,-4743,-4775,-4763,-4752,-4742,-4732,-4717,-4738,-4739,-4746,-4764,-4783,-4812,-4841,-4852,-4837,-4825,-4813,
+-4800,-4796,-4793,-4795,-4793,-4766,-4734,-4735,-4730,-4733,-4751,-4769,-4759,-4763,-4779,-4780,-4773,-4762,-4724,-4680,
+-4648,-4609,-4582,-4570,-4580,-4485,-4378,-4338,-4295,-4243,-4207,-4165,-4103,-4047,-3995,-3922,-3859,-3800,-3723,-3668,
+-3597,-3540,-3515,-3484,-3450,-3426,-3404,-3371,-3338,-3290,-3247,-3203,-3150,-3086,-3033,-2968,-2925,-2875,-2797,-2759,
+-2724,-2698,-2650,-2609,-2558,-2495,-2427,-2353,-2343,-2315,-2263,-2178,-2083,-2008,-1949,-1908,-1862,-1813,-1750,-1664,
+-1538,-1367,-1161,-1045,-978,-911,-840,-794,-744,-721,-684,-629,-539,-476,-393,-294,-219,-146,-27,124,
+216,273,357,443,539,658,794,850,873,924,949,928,920,927,945,980,1015,1058,1102,1118,
+1168,1234,1267,1313,1390,1449,1495,1530,1576,1630,1689,1755,1818,1882,1939,2010,2059,2108,2181,2216,
+2265,2294,2332,2351,2374,2389,2380,2357,2350,2358,2394,2443,2502,2580,2661,2746,2822,2913,3020,3102,
+3171,3205,3238,3266,3280,3290,3332,3410,3515,3592,3625,3671,3730,3793,3852,3925,4038,4140,4235,4345,
+4422,4487,4552,4571,4570,4524,4459,4469,4465,4467,4491,4524,4585,4665,4726,4794,4874,4964,5056,5183,
+5272,5351,5414,5457,5478,5472,5500,5549,5575,5603,5622,5605,5642,5654,5622,5626,5641,5667,5690,5686,
+5682,5695,5699,5688,5690,5678,5660,5670,5705,5714,5725,5714,5712,5671,5618,5551,5474,5424,5381,5345,
+5370,5400,5414,5422,5422,5426,5435,5441,5448,5475,5506,5527,5556,5574,5533,5533,5654,5819,5690,5543,
+5497,5545,5638,5729,5813,5882,5865,5774,5709,5609,5563,5544,5558,5554,5539,5515,5538,5749,6020,6141,
+6146,6080,6014,5947,5934,5976,6059,6136,6099,5990,5881,5780,5672,5517,5280,4951,4751,4888,5338,5789,
+6021,6333,6386,6406,6429,6445,6463,6470,6473,6463,6449,6439,6424,6405,6388,6360,6328,6296,6254,6192,
+6161,6141,6105,6055,5994,5952,5903,5838,5752,5683,5648,5538,5376,5228,5171,5159,5178,5152,5103,5058,
+5032,5012,5018,5021,5053,5072,5093,5122,5188,5190,5164,5132,5149,5163,5191,5211,5240,5244,5240,5229,
+5237,5220,5228,5250,5101,4742,4157,3490,2908,2469,2444,2633,2784,2879,2932,2951,2948,2926,2893,2848,
+2792,2719,2629,2528,2453,2426,2311,2278,2205,2134,2087,2031,1913,1813,1761,1748,1666,1618,1583,1554,
+1528,1501,1455,1425,1403,1372,1337,1309,1294,1269,1239,1199,1186,1168,1138,1107,1078,1052,1035,1015,
+989,960,944,931,914,888,879,905,905,889,867,838,847,828,693,626,571,538,510,491,
+475,450,423,390,358,323,286,248,215,185,162,144,110,107,92,70,49,35,4,-5,
+-60,-114,-149,-177,-184,-186,-238,-289,-334,-362,-382,-387,-393,-426,-444,-483,-524,-565,-602,-619,
+-628,-630,-635,-671,-717,-746,-754,-713,-708,-761,-784,-794,-828,-838,-844,-857,-869,-858,-867,-915,
+-952,-968,-963,-879,-884,-917,-896,-1008,-1035,-1017,-970,-1017,-1033,-1043,-1053,-1061,-1069,-1083,-1100,-1114,
+-1120,-1129,-1141,-1140,-1139,-1122,-1123,-1137,-1133,-1151,-1164,-1171,-1174,-1164,-1151,-1141,-1151,-1161,-1153,-1147,
+-1141,-1133,-1131,-1126,-1117,-1107,-1102,-1095,-1083,-1076,-1074,-1067,-1058,-1041,-1020,-1014,-989,-977,-989,-967,
+-959,-948,-929,-913,-890,-849,-831,-829,-813,-787,-765,-744,-721,-699,-684,-670,-645,-620,-601,-592,
+-580,-561,-535,-521,-506,-483,-467,-453,-435,-424,-407,-393,-379,-367,-355,-345,-331,-320,-308,-304,
+-300,-293,-288,-281,-276,-271,-272,-258,-247,-237,-233,-229,-226,-222,-215,-211,-209,-209,-211,-214,
+-217,-218,-221,-225,-229,-237,-245,-250,-260,-265,-271,-272,-278,-281,-283,-282,-287,-291,-296,-300,
+-305,-306,-309,-315,-316,-318,-321,-331,-335,-338,-345,-348,-357,-363,-361,-362,-366,-368,-367,-365,
+-367,-367,-368,-368,-370,-372,-368,-372,-377,-378,-368,-361,-361,-352,-341,-347,-340,-338,-332,-324,
+-305,-290,-281,-286,-272,-250,-249,-237,-223,-216,-220,-222,-214,-210,-207,-201,-188,-184,-162,-143,
+-138,-125,-114,-101,-84,-74,-66,-60,-41,-27,-10,3,10,22,38,55,67,80,93,108,
+127,144,167,189,212,236,258,287,312,337,372,416,460,502,544,591,645,681,713,747,
+788,780,799,848,878,916,953,969,1002,1046,1083,1130,1176,1210,1260,1304,1360,1412,1455,1494,
+1544,1587,1625,1664,1714,1769,1828,1889,1944,1983,2017,2042,2063,2069,1990,1695,1375,1274,1606,2076,
+2548,2994,3399,3604,3668,3889,4152,4272,4341,4286,4277,4275,4264,4230,4254,4305,4302,4277,4318,4320,
+4299,4269,4168,3969,3614,3304,2966,2709,2543,2428,2293,2276,2321,2358,2367,2327,2261,2221,2211,2201,
+2170,2108,2048,1996,1935,1864,1796,1740,1685,1618,1537,1453,1382,1329,1301,1212,1087,976,833,690,
+570,457,342,243,171,46,-89,-204,-303,-403,-478,-508,-541,-582,-633,-667,-708,-749,-776,-769,
+-759,-772,-760,-742,-741,-750,-758,-800,-816,-803,-784,-748,-712,-756,-740,-705,-697,-758,-790,-769,
+-705,-616,-574,-532,-491,-498,-477,-503,-582,-742,-856,-877,-791,-673,-611,-609,-605,-578,-444,-511,
+-668,-742,-726,-817,-951,-1041,-1069,-1032,-939,-805,-771,-778,-752,-793,-772,-684,-615,-578,-534,-577,
+-700,-750,-701,-635,-652,-666,-651,-631,-611,-594,-579,-556,-535,-520,-508,-508,-520,-546,-554,-547,
+-567,-583,-583,-574,-541,-523,-541,-570,-622,-652,-649,-654,-663,-651,-650,-652,-650,-647,-634,-622,
+-631,-605,-600,-601,-585,-567,-557,-530,-499,-481,-456,-428,-398,-368,-349,-306,-263,-229,-195,-170,
+-126,-91,-55,-10,28,66,111,165,200,220,261,307,351,400,440,469,509,545,578,616,
+643,670,702,738,774,811,837,860,914,980,988,1039,1084,1132,1172,1170,1203,1204,1219,1207,
+1206,1216,1238,1253,1257,1259,1261,1256,1267,1274,1268,1264,1286,1297,1305,1306,1313,1316,1337,1339,
+1345,1347,1363,1377,1375,1400,1426,1447,1464,1478,1495,1514,1524,1546,1549,1568,1603,1625,1635,1625,
+1643,1632,1653,1693,1694,1711,1711,1711,1717,1726,1731,1751,1779,1799,1814,1832,1857,1883,1909,1935,
+1961,1984,2017,2065,2096,2123,2135,2166,2181,2192,2198,2184,2189,2223,2248,2275,2317,2348,2364,2394,
+2371,2320,2301,2288,2348,2364,2365,2381,2411,2431,2462,2526,2579,2598,2588,2540,2521,2541,2586,2584,
+2589,2638,2676,2711,2735,2740,2783,2811,2825,2820,2803,2764,2723,2680,2659,2648,2662,2649,2613,2559,
+2494,2421,2355,2287,2217,2138,2053,1972,1900,1835,1773,1715,1674,1661,1673,1705,1714,1688,1623,1562,
+1510,1463,1411,1396,1374,1342,1306,1285,1295,1275,1253,1232,1234,1242,1238,1218,1189,1155,1106,1030,
+978,897,821,774,619,521,440,366,279,247,220,191,172,269,276,204,150,140,87,-22,
+-111,-178,-242,-285,-318,-331,-347,-440,-592,-705,-772,-801,-810,-818,-803,-771,-761,-742,-735,-759,
+-795,-833,-853,-848,-811,-783,-779,-776,-758,-753,-753,-765,-753,-657,-621,-652,-687,-717,-661,-522,
+-450,-447,-459,-443,-416,-359,-234,-69,52,128,140,153,125,67,-16,-134,-145,-185,-434,-666,
+-833,-948,-1002,-1029,-1033,-1029,-1024,-1020,-1021,-1019,-1007,-1020,-1013,-995,-988,-993,-1007,-1016,-1014,-977,
+-961,-868,-751,-653,-558,-501,-575,-762,-945,-1061,-1105,-1019,-704,-489,-656,-948,-1056,-1047,-1064,-1032,
+-984,-944,-916,-892,-889,-888,-883,-899,-923,-950,-957,-973,-1003,-1005,-1014,-1013,-1008,-1002,-1006,-1030,
+-1043,-1064,-1092,-1113,-1135,-1155,-1188,-1190,-1205,-1247,-1308,-1327,-1337,-1397,-1420,-1454,-1504,-1512,-1582,-1641,
+-1693,-1756,-1808,-1869,-1929,-1992,-2063,-2126,-2183,-2242,-2289,-2360,-2389,-2427,-2488,-2521,-2576,-2641,-2708,-2765,
+-2821,-2875,-2913,-2947,-3001,-3044,-3111,-3166,-3207,-3266,-3304,-3356,-3392,-3427,-3467,-3513,-3556,-3608,-3660,-3710,
+-3747,-3793,-3821,-3862,-3906,-3941,-3988,-4001,-4029,-4118,-4157,-4201,-4240,-4271,-4300,-4320,-4324,-4350,-4370,-4411,
+-4402,-4441,-4451,-4410,-4427,-4434,-4430,-4415,-4417,-4408,-4386,-4361,-4329,-4321,-4350,-4401,-4475,-4528,-4601,-4687,
+-4722,-4708,-4679,-4687,-4732,-4722,-4664,-4702,-4702,-4691,-4720,-4724,-4730,-4748,-4769,-4816,-4826,-4828,-4813,-4795,
+-4786,-4773,-4770,-4767,-4762,-4759,-4731,-4704,-4711,-4720,-4725,-4739,-4764,-4763,-4769,-4784,-4781,-4773,-4764,-4727,
+-4683,-4649,-4612,-4565,-4533,-4512,-4537,-4444,-4373,-4316,-4254,-4195,-4151,-4090,-4031,-3970,-3919,-3864,-3790,-3718,
+-3661,-3623,-3583,-3542,-3512,-3475,-3445,-3427,-3397,-3364,-3314,-3258,-3216,-3165,-3107,-3060,-3017,-2976,-2912,-2853,
+-2800,-2761,-2737,-2707,-2683,-2638,-2598,-2525,-2417,-2349,-2340,-2309,-2245,-2166,-2095,-2041,-1991,-1934,-1867,-1779,
+-1654,-1485,-1288,-1160,-1120,-1074,-993,-896,-829,-745,-739,-728,-668,-623,-547,-482,-399,-329,-270,-153,
+-32,73,169,260,374,419,505,650,734,762,828,881,880,863,861,886,902,927,954,981,
+1005,1060,1112,1156,1206,1287,1347,1390,1434,1483,1532,1580,1650,1717,1765,1818,1873,1924,1986,2031,
+2051,2093,2160,2220,2258,2300,2332,2346,2355,2356,2341,2346,2387,2442,2510,2574,2640,2724,2823,2919,
+3011,3105,3168,3198,3214,3206,3230,3276,3345,3429,3496,3545,3596,3658,3722,3784,3866,3968,4063,4161,
+4281,4385,4459,4519,4506,4491,4475,4428,4431,4430,4420,4435,4452,4500,4567,4622,4680,4751,4831,4915,
+5009,5109,5198,5280,5357,5399,5426,5455,5492,5523,5540,5545,5553,5566,5604,5642,5608,5600,5622,5640,
+5651,5644,5637,5652,5646,5647,5644,5618,5618,5634,5669,5693,5683,5672,5654,5597,5529,5443,5374,5340,
+5310,5329,5342,5355,5364,5362,5388,5427,5381,5424,5478,5504,5513,5517,5491,5432,5444,5588,5766,5721,
+5583,5491,5510,5575,5650,5718,5816,5876,5839,5719,5674,5589,5542,5522,5511,5498,5471,5471,5552,5830,
+6061,6168,6239,6180,6106,5991,5955,5994,6145,6231,6167,6095,5900,5729,5594,5415,5123,4827,4835,5169,
+5612,5916,6129,6263,6355,6392,6425,6440,6443,6445,6438,6434,6416,6391,6375,6354,6329,6297,6265,6227,
+6182,6163,6143,6096,6037,5994,5936,5883,5826,5768,5711,5574,5450,5332,5240,5228,5233,5192,5135,5085,
+5045,5037,5015,5014,5029,5082,5100,5115,5158,5216,5215,5192,5160,5172,5210,5218,5237,5262,5269,5261,
+5249,5274,5255,5299,5289,5090,4657,4011,3329,2771,2458,2542,2719,2838,2914,2953,2960,2944,2913,2869,
+2821,2764,2692,2612,2518,2431,2357,2286,2232,2176,2119,2055,1971,1883,1799,1736,1687,1640,1604,1576,
+1552,1527,1486,1446,1417,1392,1368,1350,1331,1303,1265,1225,1190,1182,1175,1153,1121,1094,1072,1054,
+1037,1014,999,976,947,927,902,874,849,823,800,778,764,775,742,691,639,583,544,515,
+496,465,435,407,380,355,320,283,238,199,167,138,117,102,92,80,61,42,27,9,
+-40,-109,-148,-140,-154,-174,-233,-269,-297,-333,-358,-383,-414,-438,-464,-480,-505,-542,-568,-605,
+-628,-638,-652,-672,-681,-717,-745,-764,-746,-655,-700,-774,-827,-844,-855,-865,-882,-890,-868,-835,
+-900,-938,-968,-989,-943,-886,-876,-934,-936,-1008,-1025,-1016,-1030,-1056,-1076,-1097,-1086,-1082,-1084,-1095,
+-1104,-1115,-1122,-1129,-1131,-1138,-1142,-1144,-1141,-1139,-1147,-1160,-1163,-1171,-1169,-1157,-1166,-1174,-1175,-1171,
+-1168,-1160,-1152,-1146,-1135,-1132,-1117,-1115,-1107,-1098,-1086,-1082,-1076,-1062,-1043,-1028,-1013,-997,-980,-982,
+-965,-960,-950,-934,-919,-898,-869,-834,-825,-814,-793,-768,-741,-714,-706,-691,-669,-645,-624,-601,
+-585,-571,-555,-542,-519,-514,-495,-481,-461,-443,-430,-418,-404,-391,-373,-362,-352,-340,-328,-318,
+-316,-307,-299,-293,-289,-286,-285,-279,-262,-253,-249,-246,-239,-235,-229,-225,-221,-216,-214,-216,
+-220,-225,-229,-234,-237,-238,-241,-248,-254,-260,-266,-270,-275,-285,-289,-289,-286,-288,-287,-295,
+-305,-302,-304,-306,-309,-312,-314,-324,-330,-337,-340,-343,-348,-351,-352,-348,-349,-342,-339,-342,
+-344,-343,-344,-346,-346,-348,-351,-353,-355,-355,-355,-345,-343,-333,-327,-305,-322,-321,-314,-318,
+-303,-283,-269,-262,-258,-246,-234,-225,-214,-194,-183,-189,-191,-195,-189,-178,-166,-163,-151,-137,
+-126,-114,-103,-91,-74,-65,-49,-36,-32,-11,-1,2,19,29,43,58,71,82,90,106,
+125,144,164,186,208,229,255,277,309,333,356,386,433,480,523,567,600,654,706,740,
+766,786,772,812,860,881,900,927,962,1010,1046,1087,1119,1159,1206,1242,1283,1346,1391,1446,
+1479,1522,1566,1609,1649,1701,1755,1813,1870,1917,1955,1991,2011,2025,2048,1995,1815,1472,1304,1600,
+2093,2576,3009,3353,3508,3548,3737,4045,4249,4312,4283,4264,4273,4256,4223,4239,4260,4279,4289,4318,
+4298,4230,4183,4062,3794,3484,3210,2967,2743,2570,2417,2296,2267,2315,2354,2360,2320,2240,2182,2176,
+2149,2190,2145,2101,2061,2003,1919,1824,1739,1666,1593,1518,1445,1380,1321,1274,1211,1099,979,844,
+698,570,452,344,265,174,40,-92,-213,-302,-389,-454,-492,-524,-561,-618,-657,-701,-739,-771,
+-775,-763,-749,-727,-703,-718,-731,-744,-783,-789,-758,-718,-683,-636,-657,-680,-708,-686,-702,-710,
+-679,-618,-528,-483,-436,-422,-407,-424,-425,-497,-666,-755,-768,-691,-620,-554,-505,-587,-631,-574,
+-623,-700,-722,-723,-864,-988,-1070,-1104,-1095,-1015,-840,-673,-685,-672,-575,-697,-661,-654,-524,-310,
+-350,-563,-630,-480,-275,-460,-572,-594,-588,-586,-593,-588,-565,-539,-492,-441,-434,-497,-545,-549,
+-538,-573,-591,-590,-568,-452,-317,-430,-461,-605,-642,-654,-658,-656,-649,-640,-632,-628,-623,-640,
+-643,-627,-611,-605,-598,-577,-552,-530,-500,-482,-453,-435,-406,-384,-350,-321,-290,-260,-226,-194,
+-165,-131,-93,-40,-16,42,85,126,152,179,235,274,327,359,400,437,482,513,543,577,
+590,623,657,714,750,773,817,844,896,930,979,1010,1018,1078,1149,1195,1189,1218,1231,1221,
+1239,1239,1249,1246,1248,1246,1257,1283,1288,1292,1276,1284,1301,1306,1307,1315,1323,1325,1331,1327,
+1332,1335,1347,1364,1390,1408,1422,1425,1445,1469,1473,1485,1498,1513,1540,1564,1570,1578,1601,1623,
+1646,1682,1680,1693,1674,1692,1701,1713,1722,1731,1746,1764,1800,1813,1827,1852,1872,1896,1931,1959,
+1981,2010,2044,2101,2169,2194,2186,2198,2220,2232,2238,2226,2202,2223,2270,2319,2336,2321,2397,2456,
+2360,2296,2269,2285,2276,2299,2327,2348,2366,2383,2405,2436,2496,2557,2598,2615,2589,2572,2564,2565,
+2591,2610,2655,2696,2714,2756,2804,2859,2883,2890,2872,2838,2798,2767,2750,2751,2766,2782,2773,2731,
+2663,2575,2493,2422,2351,2276,2192,2106,2031,1953,1879,1815,1759,1725,1729,1733,1750,1761,1725,1667,
+1612,1564,1507,1467,1448,1427,1400,1377,1371,1382,1373,1347,1302,1283,1275,1262,1237,1192,1143,1085,
+1023,948,893,818,740,632,545,458,387,328,300,290,286,284,320,301,307,294,177,86,
+11,-50,-110,-174,-230,-276,-305,-350,-469,-572,-643,-671,-665,-669,-660,-620,-596,-603,-622,-636,
+-671,-711,-745,-759,-756,-721,-700,-693,-688,-666,-659,-666,-665,-680,-601,-545,-562,-592,-612,-518,
+-436,-409,-388,-367,-362,-322,-244,-154,-14,57,171,203,210,172,38,-65,-103,-93,-185,-423,
+-616,-784,-880,-926,-963,-979,-988,-979,-967,-963,-961,-963,-953,-935,-931,-938,-945,-954,-957,-899,
+-913,-839,-731,-544,-321,-140,-63,-201,-495,-756,-918,-1001,-1001,-925,-895,-937,-955,-955,-970,-939,
+-901,-894,-870,-839,-840,-819,-823,-826,-819,-847,-877,-891,-900,-919,-941,-943,-933,-932,-936,-953,
+-968,-982,-999,-1019,-1049,-1062,-1077,-1089,-1121,-1184,-1203,-1212,-1239,-1266,-1291,-1328,-1370,-1430,-1470,-1499,
+-1548,-1608,-1668,-1724,-1781,-1838,-1889,-1960,-2023,-2091,-2136,-2209,-2253,-2305,-2349,-2373,-2423,-2486,-2547,-2611,
+-2667,-2723,-2771,-2812,-2861,-2914,-2974,-3023,-3084,-3136,-3174,-3227,-3276,-3295,-3341,-3389,-3427,-3462,-3522,-3570,
+-3617,-3659,-3699,-3739,-3781,-3816,-3861,-3907,-3913,-3961,-4034,-4071,-4121,-4160,-4193,-4228,-4215,-4232,-4249,-4287,
+-4293,-4253,-4325,-4323,-4290,-4330,-4337,-4330,-4342,-4334,-4340,-4319,-4294,-4284,-4281,-4298,-4362,-4431,-4464,-4571,
+-4673,-4674,-4653,-4634,-4643,-4678,-4681,-4623,-4651,-4665,-4673,-4704,-4704,-4712,-4722,-4744,-4788,-4800,-4796,-4785,
+-4763,-4757,-4745,-4740,-4732,-4718,-4709,-4691,-4669,-4676,-4685,-4707,-4720,-4753,-4759,-4769,-4780,-4780,-4765,-4764,
+-4724,-4681,-4636,-4611,-4563,-4522,-4485,-4451,-4438,-4386,-4325,-4265,-4202,-4141,-4068,-4009,-3952,-3899,-3838,-3775,
+-3708,-3649,-3614,-3577,-3557,-3534,-3516,-3481,-3454,-3421,-3390,-3340,-3276,-3225,-3175,-3130,-3095,-3062,-3015,-2966,
+-2914,-2862,-2825,-2793,-2758,-2739,-2713,-2685,-2635,-2533,-2414,-2355,-2335,-2302,-2244,-2181,-2125,-2064,-1992,-1906,
+-1793,-1643,-1452,-1242,-1173,-1152,-1097,-1000,-885,-844,-830,-810,-761,-725,-686,-624,-558,-490,-399,-341,
+-263,-139,-7,80,168,274,301,386,509,615,650,711,799,823,801,795,815,828,843,868,
+888,918,963,1008,1056,1105,1161,1226,1271,1315,1381,1438,1477,1532,1596,1632,1683,1744,1790,1828,
+1871,1909,1956,2026,2092,2156,2226,2279,2306,2329,2357,2364,2382,2407,2468,2525,2562,2597,2662,2751,
+2846,2931,3032,3119,3173,3177,3160,3177,3230,3304,3366,3426,3471,3520,3575,3636,3700,3793,3913,4008,
+4091,4198,4321,4415,4472,4455,4424,4431,4413,4394,4371,4379,4389,4390,4417,4466,4516,4571,4641,4709,
+4791,4881,4978,5049,5130,5202,5273,5314,5353,5386,5424,5462,5477,5493,5518,5537,5598,5632,5612,5583,
+5593,5599,5604,5580,5590,5606,5608,5616,5612,5597,5591,5613,5648,5652,5630,5619,5580,5511,5409,5320,
+5305,5318,5349,5292,5289,5307,5342,5440,5403,5359,5400,5417,5457,5459,5449,5396,5402,5441,5598,5727,
+5760,5634,5476,5456,5490,5556,5636,5730,5805,5790,5755,5721,5660,5582,5506,5475,5454,5438,5423,5442,
+5552,5846,6085,6199,6244,6232,6128,5997,5933,5968,6070,6068,6147,6117,5880,5688,5512,5291,4992,4841,
+5053,5413,5745,6040,6220,6347,6400,6398,6409,6409,6420,6427,6409,6364,6362,6328,6299,6279,6255,6227,
+6203,6173,6158,6109,6049,6018,5966,5920,5866,5848,5741,5623,5468,5381,5327,5351,5329,5271,5190,5126,
+5075,5026,5011,5000,5006,5047,5107,5124,5159,5209,5240,5245,5214,5184,5196,5227,5243,5263,5282,5290,
+5281,5267,5267,5269,5294,5211,4970,4491,3834,3157,2626,2506,2651,2797,2890,2947,2971,2968,2941,2899,
+2845,2794,2739,2679,2607,2524,2439,2354,2284,2229,2173,2112,2044,1967,1893,1816,1747,1684,1633,1596,
+1569,1551,1521,1475,1430,1402,1392,1374,1360,1362,1315,1274,1233,1208,1179,1184,1171,1145,1112,1091,
+1072,1060,1053,1039,1030,999,957,916,870,825,785,752,723,703,696,704,721,648,561,528,
+503,483,446,413,387,367,341,308,263,221,177,143,125,111,100,88,65,30,5,-12,
+-3,10,-131,-168,-194,-229,-254,-266,-283,-307,-338,-367,-398,-429,-455,-482,-509,-537,-562,-583,
+-606,-630,-651,-676,-684,-696,-713,-741,-779,-783,-756,-716,-722,-825,-854,-872,-884,-899,-911,-915,
+-899,-920,-938,-959,-985,-1015,-1013,-933,-950,-911,-907,-984,-960,-995,-1040,-1114,-1130,-1128,-1131,-1123,
+-1119,-1119,-1125,-1136,-1142,-1150,-1153,-1152,-1151,-1145,-1148,-1159,-1168,-1171,-1176,-1176,-1179,-1175,-1165,-1142,
+-1167,-1155,-1161,-1177,-1169,-1159,-1145,-1139,-1127,-1111,-1101,-1089,-1084,-1075,-1066,-1051,-1035,-1026,-1011,-997,
+-990,-975,-966,-954,-942,-927,-911,-890,-848,-828,-813,-795,-775,-752,-728,-710,-697,-678,-656,-636,
+-609,-591,-569,-555,-541,-529,-512,-494,-482,-466,-454,-441,-430,-420,-402,-391,-376,-366,-337,-346,
+-331,-322,-315,-311,-304,-299,-293,-290,-278,-273,-263,-261,-260,-254,-252,-247,-247,-244,-237,-235,
+-234,-233,-239,-245,-251,-253,-255,-252,-256,-259,-262,-266,-270,-275,-287,-293,-295,-293,-292,-292,
+-300,-298,-298,-304,-306,-305,-308,-311,-315,-318,-329,-337,-338,-341,-343,-343,-341,-341,-331,-326,
+-325,-329,-330,-333,-332,-332,-332,-332,-338,-336,-336,-326,-329,-326,-316,-303,-302,-296,-295,-292,
+-286,-272,-260,-249,-240,-234,-223,-203,-194,-188,-170,-165,-164,-162,-166,-159,-158,-145,-136,-120,
+-112,-98,-93,-83,-76,-57,-39,-28,-9,-5,1,6,26,39,57,69,82,90,101,112,
+123,146,170,186,208,228,247,274,299,328,357,386,425,451,495,546,591,649,682,723,
+784,809,768,795,830,846,867,894,927,967,1011,1048,1078,1111,1159,1197,1234,1277,1330,1388,
+1413,1453,1507,1548,1594,1645,1698,1752,1801,1849,1895,1937,1962,1994,2009,2014,1978,1829,1532,1337,
+1598,2084,2594,2997,3306,3420,3458,3622,3951,4196,4313,4305,4265,4287,4243,4232,4231,4215,4214,4257,
+4269,4249,4189,4050,3952,3738,3499,3163,2913,2728,2581,2385,2291,2270,2315,2365,2368,2322,2210,2159,
+2155,2207,2211,2161,2115,2076,2021,1932,1825,1726,1644,1574,1515,1467,1415,1353,1296,1250,1128,999,
+853,714,576,457,353,268,164,44,-87,-199,-296,-363,-412,-464,-506,-555,-602,-638,-672,-713,
+-748,-762,-759,-735,-716,-698,-702,-704,-731,-752,-744,-734,-692,-648,-642,-625,-616,-637,-635,-633,
+-618,-597,-551,-468,-414,-373,-347,-354,-376,-409,-489,-594,-669,-690,-655,-660,-647,-585,-633,-679,
+-667,-703,-709,-693,-751,-905,-1005,-1074,-1112,-1125,-1067,-919,-678,-535,-674,-755,-840,-885,-862,-771,
+-616,-536,-481,-559,-446,-179,-331,-468,-478,-456,-488,-578,-601,-582,-552,-442,-322,-305,-482,-552,
+-569,-578,-587,-596,-595,-579,-522,-421,-508,-569,-608,-636,-649,-647,-644,-629,-627,-621,-614,-618,
+-618,-620,-609,-606,-600,-570,-545,-538,-524,-499,-484,-453,-432,-405,-379,-359,-329,-293,-256,-224,
+-181,-155,-104,-70,-34,8,39,79,127,177,219,261,291,338,368,407,431,459,486,520,
+558,616,644,673,693,746,787,819,850,898,924,942,982,1039,1102,1138,1193,1202,1228,1241,
+1242,1255,1243,1234,1232,1252,1264,1275,1273,1269,1270,1280,1292,1297,1296,1302,1307,1312,1313,1322,
+1334,1355,1372,1382,1388,1394,1396,1402,1418,1426,1441,1456,1475,1483,1517,1538,1564,1598,1600,1603,
+1602,1617,1649,1655,1674,1687,1707,1713,1726,1746,1771,1790,1814,1825,1841,1861,1881,1917,1942,1976,
+2014,2052,2084,2123,2169,2249,2230,2211,2231,2246,2260,2269,2275,2274,2290,2334,2378,2360,2313,2305,
+2311,2268,2243,2230,2240,2248,2251,2267,2311,2328,2339,2379,2430,2476,2533,2589,2622,2626,2615,2593,
+2582,2594,2638,2708,2715,2759,2823,2880,2915,2936,2936,2906,2867,2843,2832,2833,2843,2863,2880,2872,
+2831,2750,2637,2555,2490,2413,2326,2237,2150,2080,1994,1914,1853,1804,1771,1765,1770,1774,1778,1738,
+1703,1655,1607,1553,1509,1482,1455,1435,1421,1421,1438,1441,1425,1360,1316,1296,1264,1232,1189,1139,
+1088,1042,972,899,834,764,689,605,524,456,425,416,420,432,414,402,390,383,318,202,
+116,56,15,-32,-108,-167,-220,-268,-350,-445,-506,-541,-547,-542,-536,-509,-484,-477,-490,-522,
+-550,-588,-631,-664,-677,-678,-653,-625,-616,-615,-602,-597,-594,-584,-593,-531,-467,-472,-490,-474,
+-376,-335,-315,-299,-297,-272,-214,-123,-60,13,57,118,209,204,172,30,-91,-148,-115,-190,
+-406,-587,-731,-804,-856,-889,-913,-921,-918,-913,-914,-909,-888,-873,-874,-882,-885,-890,-902,-866,
+-842,-797,-733,-632,-416,-77,285,512,164,-271,-577,-784,-900,-963,-988,-967,-980,-909,-889,-905,
+-872,-832,-793,-777,-763,-758,-749,-754,-771,-759,-783,-807,-836,-853,-876,-887,-892,-867,-880,-891,
+-893,-905,-923,-938,-961,-975,-995,-1015,-1057,-1090,-1086,-1116,-1149,-1173,-1192,-1227,-1275,-1300,-1322,-1359,
+-1444,-1463,-1523,-1596,-1638,-1698,-1764,-1810,-1876,-1927,-1985,-2060,-2090,-2160,-2207,-2235,-2283,-2328,-2383,-2455,
+-2515,-2574,-2634,-2675,-2714,-2769,-2825,-2881,-2942,-2994,-3045,-3087,-3146,-3169,-3211,-3261,-3302,-3346,-3401,-3445,
+-3490,-3534,-3579,-3616,-3651,-3689,-3731,-3775,-3814,-3848,-3882,-3940,-3985,-4030,-4058,-4102,-4135,-4130,-4153,-4176,
+-4194,-4208,-4222,-4239,-4220,-4193,-4243,-4259,-4254,-4270,-4269,-4280,-4260,-4234,-4221,-4235,-4261,-4303,-4355,-4411,
+-4535,-4590,-4598,-4585,-4588,-4602,-4632,-4626,-4607,-4614,-4630,-4655,-4691,-4687,-4695,-4699,-4718,-4755,-4778,-4778,
+-4749,-4733,-4726,-4713,-4706,-4691,-4673,-4662,-4654,-4640,-4645,-4657,-4679,-4698,-4740,-4750,-4763,-4776,-4776,-4756,
+-4748,-4722,-4677,-4638,-4603,-4563,-4513,-4483,-4442,-4410,-4371,-4325,-4269,-4206,-4140,-4068,-3998,-3938,-3869,-3791,
+-3709,-3655,-3612,-3562,-3538,-3535,-3544,-3531,-3509,-3481,-3436,-3399,-3353,-3288,-3233,-3181,-3150,-3134,-3097,-3056,
+-3021,-2978,-2916,-2879,-2858,-2825,-2793,-2749,-2720,-2685,-2637,-2538,-2427,-2357,-2336,-2313,-2256,-2193,-2115,-2026,
+-1914,-1792,-1644,-1444,-1240,-1179,-1144,-1056,-949,-838,-832,-820,-828,-776,-727,-707,-680,-632,-560,-514,
+-455,-335,-197,-45,34,76,192,278,334,395,490,548,596,687,748,745,743,742,749,767,
+790,804,837,868,896,938,983,1040,1099,1144,1193,1257,1318,1368,1430,1485,1537,1585,1653,1686,
+1709,1750,1788,1862,1938,2001,2071,2145,2194,2236,2280,2326,2362,2395,2435,2489,2555,2614,2659,2705,
+2749,2792,2855,2923,3024,3103,3112,3122,3148,3198,3260,3300,3353,3397,3439,3496,3547,3622,3721,3846,
+3945,4015,4125,4253,4359,4392,4364,4357,4375,4350,4333,4309,4333,4352,4347,4351,4385,4444,4509,4560,
+4615,4677,4752,4833,4913,4983,5068,5143,5205,5257,5297,5342,5384,5411,5441,5463,5481,5537,5602,5633,
+5545,5537,5545,5552,5533,5537,5548,5559,5557,5549,5550,5555,5564,5612,5623,5604,5575,5561,5492,5403,
+5310,5282,5294,5250,5200,5221,5242,5322,5439,5356,5352,5395,5422,5422,5379,5372,5434,5449,5465,5538,
+5650,5689,5620,5465,5408,5423,5466,5564,5660,5695,5707,5710,5734,5694,5684,5541,5460,5421,5406,5383,
+5370,5398,5531,5828,6063,6176,6210,6182,6117,5974,5889,5883,5944,6047,6173,6084,5930,5658,5435,5177,
+4916,4938,5226,5612,5943,6162,6290,6324,6355,6369,6377,6391,6390,6399,6355,6317,6282,6262,6243,6212,
+6182,6178,6149,6113,6068,6018,5979,5947,5903,5875,5809,5732,5544,5324,5313,5383,5386,5319,5264,5181,
+5113,5078,5050,5004,5002,5017,5072,5134,5151,5178,5240,5249,5231,5210,5191,5209,5235,5265,5290,5298,
+5302,5283,5280,5245,5280,5236,5055,4765,4225,3551,2911,2556,2593,2742,2860,2933,2974,2988,2976,2946,
+2898,2839,2781,2728,2670,2604,2532,2455,2376,2338,2273,2176,2112,2043,1975,1911,1844,1768,1694,1637,
+1600,1568,1541,1505,1461,1420,1386,1375,1368,1364,1352,1317,1283,1242,1233,1181,1191,1183,1159,1135,
+1106,1089,1083,1077,1084,1102,1109,1019,948,886,823,772,731,693,656,632,639,659,612,547,
+503,488,460,436,411,384,350,318,283,241,205,168,127,109,98,101,99,34,1,-20,
+-47,-64,-79,-148,-185,-208,-229,-260,-278,-298,-330,-362,-392,-426,-454,-483,-512,-537,-549,-577,
+-594,-619,-643,-671,-682,-703,-706,-722,-737,-779,-799,-801,-801,-812,-835,-849,-866,-891,-911,-927,
+-943,-946,-941,-949,-956,-972,-1001,-1027,-1029,-1042,-1010,-949,-999,-1041,-990,-953,-998,-1015,-1062,-1135,
+-1144,-1139,-1130,-1130,-1139,-1138,-1137,-1143,-1138,-1143,-1133,-1134,-1154,-1165,-1181,-1167,-1137,-1183,-1180,-1169,
+-1169,-1175,-1175,-1166,-1149,-1138,-1136,-1163,-1162,-1149,-1137,-1127,-1120,-1112,-1103,-1086,-1063,-1048,-1032,-1021,
+-1015,-1006,-988,-972,-960,-948,-930,-914,-898,-861,-833,-809,-793,-768,-751,-728,-706,-686,-668,-646,
+-628,-606,-592,-576,-562,-550,-540,-521,-508,-491,-471,-455,-443,-428,-414,-402,-390,-377,-373,-359,
+-347,-335,-329,-319,-316,-307,-308,-298,-292,-282,-281,-272,-264,-264,-259,-258,-260,-261,-254,-253,
+-252,-256,-256,-252,-257,-261,-268,-271,-267,-275,-273,-270,-271,-275,-278,-286,-292,-297,-295,-294,
+-293,-292,-284,-290,-298,-295,-293,-299,-308,-312,-311,-318,-323,-325,-327,-331,-327,-324,-322,-319,
+-314,-316,-321,-327,-328,-332,-330,-327,-322,-325,-321,-313,-302,-304,-305,-300,-287,-279,-281,-282,
+-274,-263,-253,-240,-227,-215,-206,-200,-179,-172,-157,-151,-146,-137,-137,-142,-138,-130,-112,-110,
+-102,-91,-80,-73,-61,-53,-33,-19,-2,13,24,23,29,49,70,81,94,102,110,117,
+127,143,165,189,213,229,250,269,292,318,341,376,407,445,484,543,567,625,674,711,
+755,810,781,763,796,819,847,873,904,923,964,1003,1039,1067,1108,1144,1175,1224,1272,1317,
+1362,1405,1440,1488,1533,1583,1640,1700,1755,1800,1834,1874,1914,1955,1987,2023,2030,1975,1837,1546,
+1345,1574,2044,2559,2973,3290,3354,3374,3524,3863,4161,4280,4271,4252,4271,4245,4255,4235,4210,4199,
+4221,4233,4212,4233,4010,3851,3639,3439,3148,2854,2646,2512,2329,2284,2269,2311,2358,2362,2318,2229,
+2151,2164,2222,2218,2158,2106,2070,2017,1928,1812,1701,1613,1548,1512,1498,1455,1410,1321,1282,1152,
+1010,871,739,611,504,387,274,148,29,-90,-193,-279,-345,-388,-434,-485,-535,-578,-615,-638,
+-666,-699,-722,-734,-734,-732,-710,-699,-703,-712,-724,-708,-721,-707,-661,-619,-585,-526,-514,-516,
+-527,-541,-515,-502,-454,-400,-354,-331,-323,-325,-355,-448,-542,-631,-698,-686,-709,-707,-645,-626,
+-664,-711,-694,-667,-679,-822,-922,-1003,-1062,-1097,-1117,-1087,-997,-890,-856,-901,-950,-983,-992,-969,
+-916,-833,-771,-745,-734,-664,-525,-496,-448,-416,-476,-498,-599,-623,-610,-587,-546,-503,-490,-532,
+-565,-580,-586,-590,-596,-597,-593,-578,-569,-584,-610,-628,-642,-647,-644,-637,-617,-616,-609,-608,
+-611,-613,-601,-595,-587,-579,-567,-551,-528,-493,-463,-442,-415,-386,-369,-341,-317,-280,-250,-215,
+-191,-154,-121,-86,-59,-21,14,43,83,119,166,202,238,265,299,345,380,426,462,504,
+541,585,619,652,695,724,747,778,788,831,886,941,974,1013,1044,1083,1142,1195,1228,1187,
+1235,1229,1224,1222,1252,1265,1260,1261,1261,1269,1282,1290,1283,1279,1285,1287,1298,1323,1337,1337,
+1341,1349,1344,1350,1348,1338,1345,1359,1389,1422,1444,1463,1477,1506,1531,1549,1554,1556,1581,1608,
+1606,1610,1620,1647,1679,1687,1698,1716,1739,1761,1778,1793,1809,1829,1845,1866,1893,1922,1957,1997,
+2030,2067,2107,2135,2177,2211,2255,2227,2228,2242,2268,2298,2320,2335,2361,2359,2358,2374,2325,2277,
+2256,2252,2259,2260,2259,2253,2247,2248,2251,2285,2317,2336,2377,2427,2467,2523,2594,2642,2664,2672,
+2628,2597,2641,2739,2792,2794,2834,2873,2914,2935,2944,2945,2947,2920,2903,2902,2907,2908,2915,2924,
+2911,2875,2802,2707,2628,2554,2471,2375,2276,2186,2105,2021,1939,1870,1820,1792,1787,1810,1819,1804,
+1771,1732,1693,1657,1607,1548,1514,1489,1465,1456,1460,1463,1453,1440,1398,1336,1312,1286,1244,1187,
+1144,1101,1031,981,927,880,822,764,703,646,613,589,576,578,595,546,490,418,359,290,
+214,164,125,94,53,-25,-96,-153,-204,-304,-375,-407,-414,-412,-434,-423,-404,-388,-393,-414,
+-452,-489,-520,-546,-549,-556,-583,-581,-555,-543,-535,-538,-541,-523,-507,-509,-454,-387,-365,-359,
+-300,-238,-190,-202,-215,-212,-186,-117,-34,38,87,109,161,241,230,191,42,-93,-139,-62,
+-192,-409,-567,-671,-742,-802,-836,-868,-873,-862,-862,-850,-833,-820,-817,-817,-816,-823,-833,-827,
+-788,-761,-725,-680,-590,-382,-66,248,534,424,-79,-436,-680,-827,-926,-906,-916,-865,-843,-827,
+-791,-776,-728,-721,-680,-680,-695,-709,-714,-702,-712,-727,-749,-784,-802,-817,-821,-836,-838,-838,
+-842,-852,-862,-869,-877,-895,-909,-937,-978,-986,-998,-1024,-1036,-1073,-1090,-1125,-1167,-1207,-1229,-1250,
+-1314,-1354,-1376,-1449,-1507,-1564,-1607,-1672,-1725,-1778,-1853,-1907,-1944,-2025,-2067,-2103,-2139,-2180,-2233,-2298,
+-2373,-2417,-2481,-2536,-2582,-2628,-2683,-2740,-2793,-2845,-2906,-2943,-3020,-3035,-3078,-3129,-3172,-3215,-3272,-3328,
+-3365,-3408,-3451,-3488,-3519,-3560,-3601,-3640,-3686,-3724,-3760,-3799,-3851,-3882,-3927,-3980,-4003,-4040,-4056,-4070,
+-4092,-4113,-4127,-4127,-4131,-4134,-4141,-4146,-4156,-4179,-4195,-4215,-4223,-4206,-4193,-4178,-4172,-4187,-4251,-4298,
+-4361,-4506,-4507,-4518,-4527,-4544,-4547,-4576,-4569,-4565,-4578,-4597,-4631,-4674,-4670,-4672,-4676,-4694,-4721,-4744,
+-4745,-4727,-4702,-4691,-4687,-4678,-4658,-4637,-4619,-4619,-4619,-4624,-4643,-4662,-4681,-4732,-4743,-4756,-4769,-4762,
+-4745,-4736,-4716,-4671,-4634,-4587,-4562,-4513,-4472,-4428,-4396,-4363,-4311,-4276,-4211,-4136,-4068,-4007,-3928,-3856,
+-3763,-3680,-3598,-3537,-3495,-3490,-3497,-3534,-3554,-3549,-3515,-3440,-3410,-3370,-3299,-3234,-3187,-3165,-3134,-3104,
+-3087,-3053,-2998,-2974,-2960,-2930,-2890,-2817,-2800,-2765,-2725,-2683,-2641,-2562,-2458,-2380,-2368,-2311,-2223,-2132,
+-2015,-1891,-1765,-1619,-1440,-1276,-1202,-1118,-987,-895,-826,-832,-843,-833,-824,-764,-729,-721,-696,-626,
+-608,-535,-367,-256,-131,-54,-5,104,192,254,278,367,456,500,600,660,682,692,686,675,
+684,700,719,741,757,791,836,881,930,973,1024,1107,1175,1238,1274,1340,1394,1441,1500,1580,
+1607,1641,1678,1747,1821,1888,1945,2004,2053,2076,2106,2145,2207,2285,2348,2407,2457,2512,2583,2639,
+2687,2739,2771,2808,2866,2951,3018,3048,3073,3104,3149,3207,3251,3298,3320,3367,3413,3478,3567,3662,
+3775,3859,3949,4046,4182,4283,4299,4274,4303,4313,4302,4281,4276,4288,4290,4293,4290,4316,4383,4445,
+4483,4530,4581,4639,4715,4790,4860,4940,5032,5109,5167,5217,5266,5319,5349,5370,5388,5403,5458,5512,
+5578,5501,5470,5480,5488,5498,5499,5497,5491,5501,5495,5489,5499,5504,5545,5578,5573,5544,5507,5464,
+5395,5305,5233,5204,5153,5128,5160,5191,5266,5407,5290,5283,5291,5292,5277,5301,5383,5398,5403,5396,
+5435,5570,5658,5622,5492,5411,5388,5412,5499,5600,5606,5606,5611,5630,5678,5667,5567,5459,5398,5372,
+5342,5327,5328,5353,5488,5753,6028,6147,6185,6195,6147,5957,5858,5832,5867,5943,6004,6017,5928,5664,
+5385,5081,4938,5127,5488,5809,5994,6125,6226,6287,6321,6328,6332,6341,6327,6310,6270,6242,6215,6198,
+6168,6141,6133,6098,6045,6006,5975,5949,5915,5879,5867,5760,5566,5377,5306,5339,5359,5329,5276,5214,
+5161,5112,5060,5024,5002,4995,5011,5086,5132,5139,5169,5235,5259,5231,5210,5203,5219,5244,5290,5311,
+5308,5303,5285,5307,5251,5231,5118,4861,4493,3890,3234,2713,2552,2674,2810,2905,2965,2997,3002,2987,
+2954,2898,2840,2780,2719,2665,2607,2539,2466,2393,2339,2262,2176,2118,2052,1990,1935,1863,1783,1702,
+1635,1599,1559,1526,1482,1441,1404,1367,1363,1348,1330,1317,1301,1264,1231,1194,1174,1187,1184,1162,
+1146,1118,1102,1099,1102,1105,1169,1270,1075,969,900,833,777,728,684,637,600,576,567,550,
+513,483,482,464,448,424,383,339,293,252,208,168,131,101,75,69,65,52,8,-23,
+-47,-70,-84,-38,-157,-197,-235,-261,-280,-303,-328,-360,-396,-424,-443,-474,-510,-536,-551,-564,
+-582,-607,-632,-657,-676,-690,-699,-713,-732,-748,-769,-801,-812,-821,-830,-832,-826,-849,-879,-911,
+-932,-949,-957,-941,-940,-956,-974,-989,-1006,-1027,-1042,-1048,-1050,-1034,-1063,-1077,-1027,-982,-964,-959,
+-1001,-1052,-1095,-1093,-1091,-1117,-1121,-1122,-1128,-1136,-1149,-1144,-1148,-1156,-1162,-1170,-1170,-1162,-1162,-1161,
+-1151,-1143,-1145,-1148,-1151,-1151,-1153,-1156,-1158,-1164,-1140,-1121,-1116,-1135,-1130,-1120,-1105,-1091,-1071,-1058,
+-1043,-1024,-1008,-994,-982,-964,-952,-934,-916,-900,-872,-832,-814,-796,-770,-749,-728,-705,-688,-667,
+-650,-630,-613,-599,-584,-573,-558,-548,-529,-510,-492,-476,-469,-453,-436,-419,-405,-393,-378,-372,
+-369,-358,-347,-338,-328,-319,-313,-310,-305,-291,-286,-282,-273,-279,-276,-276,-272,-271,-264,-259,
+-258,-262,-264,-268,-264,-262,-261,-263,-267,-273,-278,-280,-283,-289,-286,-292,-288,-290,-294,-294,
+-296,-294,-293,-288,-298,-297,-295,-294,-295,-303,-310,-311,-310,-310,-309,-314,-315,-316,-319,-319,
+-323,-314,-315,-318,-321,-322,-323,-320,-315,-306,-302,-304,-295,-285,-291,-295,-287,-276,-265,-262,
+-252,-250,-242,-235,-221,-201,-189,-181,-167,-159,-159,-146,-136,-131,-128,-120,-115,-116,-105,-104,
+-100,-87,-68,-55,-42,-33,-61,-17,-1,10,28,36,41,56,72,90,98,111,120,126,
+137,148,169,193,214,235,256,266,287,309,334,360,390,430,480,513,548,612,664,709,
+764,782,759,710,745,797,833,849,869,887,915,943,988,1004,1060,1086,1128,1163,1211,1256,
+1296,1339,1379,1426,1467,1517,1576,1636,1697,1754,1794,1816,1855,1915,1945,1990,2028,2040,2002,1849,
+1567,1358,1546,2031,2537,2936,3288,3323,3316,3456,3799,4120,4227,4233,4246,4284,4260,4261,4235,4227,
+4211,4220,4195,4168,4218,3995,3882,3692,3461,3164,2815,2607,2423,2279,2274,2267,2300,2325,2325,2285,
+2192,2097,2128,2212,2196,2130,2088,2061,2011,1918,1793,1674,1580,1517,1497,1511,1488,1438,1357,1285,
+1153,1018,898,761,660,526,388,254,147,21,-89,-182,-258,-318,-367,-418,-465,-508,-553,-584,
+-612,-639,-669,-686,-698,-722,-726,-704,-687,-689,-687,-695,-695,-704,-686,-664,-628,-558,-508,-458,
+-435,-440,-456,-451,-430,-403,-384,-346,-320,-308,-317,-329,-418,-537,-595,-626,-684,-710,-704,-691,
+-682,-688,-682,-641,-616,-677,-825,-923,-991,-1042,-1078,-1096,-1072,-1039,-1007,-1004,-1008,-1029,-1042,-1029,
+-1014,-977,-943,-910,-876,-846,-800,-739,-696,-658,-647,-641,-644,-655,-649,-633,-622,-594,-577,-573,
+-576,-580,-583,-587,-587,-593,-599,-601,-602,-605,-611,-624,-632,-635,-636,-637,-632,-624,-624,-618,
+-618,-609,-599,-602,-595,-572,-562,-547,-524,-491,-472,-460,-437,-414,-388,-366,-332,-309,-284,-250,
+-211,-178,-146,-114,-68,-39,3,33,63,108,142,185,225,265,305,339,377,410,441,470,
+506,537,566,601,629,677,721,758,806,840,880,910,948,978,1010,1054,1117,1168,1176,1175,
+1195,1216,1240,1253,1250,1236,1229,1244,1256,1252,1262,1276,1277,1288,1292,1301,1320,1331,1322,1319,
+1314,1299,1298,1314,1336,1354,1370,1396,1419,1433,1452,1468,1494,1507,1509,1515,1542,1566,1607,1613,
+1633,1654,1648,1655,1663,1683,1698,1721,1739,1751,1764,1789,1811,1829,1849,1873,1899,1927,1958,1996,
+2032,2069,2104,2134,2157,2175,2188,2201,2225,2245,2266,2310,2351,2376,2390,2408,2401,2383,2356,2309,
+2260,2257,2262,2268,2273,2279,2270,2261,2262,2272,2289,2322,2348,2376,2415,2451,2512,2597,2653,2678,
+2704,2674,2648,2698,2780,2792,2830,2877,2942,2978,2978,2962,2972,2994,2986,2974,2969,2962,2943,2923,
+2904,2876,2842,2794,2732,2663,2589,2503,2404,2304,2211,2122,2035,1952,1886,1842,1823,1829,1851,1858,
+1843,1814,1770,1730,1705,1655,1601,1566,1536,1509,1499,1497,1495,1478,1444,1407,1359,1316,1292,1223,
+1164,1134,1099,1075,1028,978,944,905,871,852,821,802,773,738,726,705,622,514,408,341,
+295,271,245,219,185,146,84,9,-57,-118,-214,-266,-273,-268,-284,-330,-329,-324,-324,-344,
+-372,-403,-425,-434,-430,-365,-285,-431,-474,-466,-452,-441,-444,-456,-442,-425,-424,-395,-318,-263,
+-218,-166,-153,-124,-127,-134,-144,-114,-59,58,156,173,194,221,272,289,210,45,-73,-68,
+3,-195,-408,-548,-625,-678,-735,-769,-801,-811,-806,-790,-777,-769,-763,-755,-751,-752,-763,-763,
+-715,-677,-683,-656,-617,-546,-413,-220,1,126,51,-185,-439,-639,-772,-816,-817,-772,-746,-743,
+-720,-693,-695,-678,-647,-637,-628,-634,-657,-665,-661,-671,-676,-710,-725,-746,-740,-755,-769,-774,
+-783,-794,-810,-822,-825,-835,-831,-856,-873,-886,-925,-921,-942,-984,-991,-1034,-1073,-1113,-1140,-1167,
+-1195,-1220,-1285,-1294,-1360,-1425,-1473,-1533,-1585,-1643,-1710,-1753,-1797,-1882,-1927,-1962,-2005,-2047,-2099,-2137,
+-2211,-2283,-2339,-2402,-2444,-2496,-2538,-2587,-2648,-2705,-2758,-2801,-2880,-2916,-2955,-3001,-3028,-3088,-3133,-3188,
+-3245,-3290,-3327,-3360,-3388,-3428,-3459,-3510,-3555,-3600,-3648,-3678,-3712,-3764,-3791,-3838,-3894,-3938,-3934,-3975,
+-4002,-4014,-4022,-4031,-4039,-4044,-4045,-4058,-4066,-4085,-4114,-4135,-4144,-4159,-4142,-4126,-4116,-4102,-4127,-4155,
+-4215,-4290,-4418,-4420,-4447,-4496,-4502,-4498,-4531,-4536,-4535,-4548,-4568,-4608,-4647,-4659,-4654,-4658,-4674,-4693,
+-4712,-4703,-4698,-4678,-4668,-4662,-4648,-4630,-4604,-4589,-4593,-4599,-4610,-4631,-4645,-4670,-4713,-4732,-4744,-4755,
+-4753,-4731,-4713,-4696,-4657,-4620,-4580,-4545,-4508,-4470,-4418,-4373,-4337,-4304,-4259,-4191,-4131,-4066,-4013,-3934,
+-3842,-3747,-3636,-3539,-3465,-3440,-3437,-3443,-3500,-3538,-3560,-3536,-3447,-3425,-3388,-3311,-3242,-3191,-3144,-3122,
+-3113,-3101,-3027,-3062,-3044,-3016,-2990,-2947,-2886,-2875,-2821,-2769,-2718,-2670,-2620,-2547,-2474,-2443,-2347,-2224,
+-2106,-1990,-1850,-1683,-1533,-1406,-1303,-1198,-1063,-953,-870,-820,-849,-889,-854,-797,-743,-724,-731,-719,
+-700,-666,-596,-477,-350,-291,-168,-65,43,97,106,156,246,346,418,516,587,631,645,628,
+614,607,610,623,643,661,696,734,773,812,855,896,963,1037,1137,1194,1268,1326,1362,1407,
+1507,1553,1580,1630,1705,1764,1798,1832,1853,1859,1881,1925,1969,2038,2148,2239,2308,2349,2397,2455,
+2514,2573,2655,2715,2748,2782,2860,2920,2974,3018,3056,3113,3179,3220,3253,3280,3320,3362,3422,3508,
+3609,3704,3779,3877,3988,4096,4176,4211,4219,4241,4239,4236,4212,4220,4228,4227,4232,4234,4259,4334,
+4381,4419,4462,4507,4552,4610,4688,4761,4839,4939,5020,5091,5152,5201,5244,5288,5312,5318,5342,5364,
+5416,5462,5492,5475,5464,5449,5445,5462,5458,5435,5451,5449,5436,5427,5449,5485,5519,5521,5491,5460,
+5432,5372,5300,5222,5178,5125,5082,5108,5141,5175,5210,5261,5309,5314,5300,5315,5305,5342,5345,5341,
+5318,5329,5383,5507,5636,5634,5431,5362,5360,5390,5481,5534,5526,5530,5550,5560,5602,5572,5496,5399,
+5337,5315,5301,5294,5288,5322,5431,5668,5924,6095,6177,6219,6163,6004,5875,5840,5829,5880,5984,6043,
+5868,5645,5347,5040,5021,5306,5605,5804,5997,6112,6204,6260,6274,6277,6277,6266,6236,6204,6182,6152,
+6122,6102,6082,6069,6032,5995,5977,5975,5952,5895,5801,5708,5516,5405,5354,5348,5345,5316,5264,5211,
+5159,5116,5077,5049,5023,4998,4996,5023,5085,5118,5136,5187,5250,5259,5231,5209,5221,5225,5256,5304,
+5319,5308,5299,5281,5256,5215,5130,4939,4616,4106,3498,2963,2591,2610,2758,2870,2946,2996,3017,3015,
+2996,2955,2895,2836,2779,2718,2663,2601,2536,2471,2400,2322,2244,2182,2125,2060,2002,1941,1871,1791,
+1705,1639,1594,1552,1505,1463,1429,1390,1350,1327,1324,1315,1302,1287,1256,1228,1199,1177,1161,1163,
+1155,1151,1122,1106,1098,1097,1094,1108,1115,1040,976,901,830,773,734,699,645,588,545,520,
+501,484,466,460,468,509,438,372,336,288,241,199,159,115,81,56,35,26,7,-8,
+-9,-51,-86,-116,-129,-169,-209,-237,-266,-291,-320,-352,-374,-415,-445,-460,-499,-523,-543,-565,
+-584,-590,-605,-612,-642,-670,-687,-703,-717,-740,-758,-770,-813,-827,-823,-827,-834,-838,-855,-879,
+-901,-931,-959,-950,-882,-869,-938,-981,-999,-1013,-1015,-1008,-1018,-1023,-1049,-1035,-1050,-1083,-1013,-1009,
+-997,-952,-990,-1004,-982,-971,-1068,-1111,-1116,-1114,-1121,-1132,-1130,-1143,-1148,-1145,-1148,-1146,-1140,-1138,
+-1136,-1133,-1130,-1132,-1129,-1132,-1132,-1133,-1133,-1132,-1135,-1133,-1136,-1123,-1121,-1114,-1117,-1112,-1105,-1094,
+-1079,-1064,-1045,-1022,-1000,-989,-979,-968,-949,-931,-910,-894,-864,-834,-813,-793,-771,-748,-726,-704,
+-684,-661,-641,-625,-606,-592,-581,-566,-548,-528,-517,-501,-489,-484,-463,-442,-424,-415,-396,-386,
+-379,-369,-359,-348,-345,-335,-330,-324,-318,-312,-297,-291,-285,-284,-288,-286,-293,-290,-280,-281,
+-274,-269,-266,-272,-276,-277,-275,-276,-276,-276,-275,-280,-286,-292,-293,-300,-298,-296,-296,-300,
+-300,-297,-302,-301,-301,-304,-297,-290,-288,-295,-301,-304,-308,-306,-306,-304,-307,-310,-311,-315,
+-314,-315,-311,-311,-307,-303,-305,-304,-296,-291,-282,-281,-277,-280,-274,-277,-273,-263,-253,-248,
+-241,-236,-227,-218,-209,-199,-182,-167,-165,-154,-143,-140,-126,-118,-115,-111,-97,-92,-90,-89,
+-84,-76,-64,-46,-34,-29,-13,-2,-12,11,35,33,49,57,75,91,108,121,126,141,
+151,159,174,196,221,242,260,275,296,310,334,359,393,424,460,499,539,571,618,677,
+751,785,757,661,671,736,812,840,847,861,872,905,947,981,1000,1027,1070,1116,1151,1192,
+1234,1280,1326,1365,1400,1449,1506,1566,1634,1687,1735,1768,1789,1827,1889,1932,1993,2025,2036,1990,
+1838,1569,1348,1526,2008,2545,2951,3319,3374,3318,3433,3794,4061,4180,4238,4293,4312,4269,4274,4264,
+4249,4229,4203,4167,4143,4181,4065,3941,3631,3406,3112,2851,2645,2423,2284,2269,2278,2306,2304,2282,
+2219,2126,2044,2044,2166,2142,2070,2060,2049,2007,1910,1782,1661,1569,1514,1500,1509,1510,1487,1400,
+1293,1161,1029,906,792,671,531,381,244,127,20,-94,-179,-243,-289,-347,-405,-442,-487,-530,
+-551,-571,-607,-647,-670,-678,-691,-696,-681,-675,-683,-678,-686,-694,-693,-688,-658,-624,-589,-513,
+-424,-370,-356,-355,-356,-349,-352,-341,-311,-312,-313,-294,-323,-396,-498,-541,-615,-669,-694,-670,
+-682,-688,-685,-647,-602,-594,-652,-807,-909,-959,-1009,-1052,-1072,-1052,-1053,-1051,-1047,-1044,-1045,-1045,
+-1025,-1014,-992,-969,-941,-910,-887,-862,-829,-799,-769,-743,-719,-702,-690,-671,-657,-643,-622,-607,
+-600,-594,-587,-586,-587,-584,-590,-601,-606,-611,-617,-620,-624,-627,-630,-631,-633,-630,-622,-619,
+-608,-607,-605,-602,-592,-572,-558,-527,-524,-487,-465,-443,-414,-406,-392,-361,-342,-319,-288,-252,
+-219,-188,-152,-121,-86,-42,-7,31,58,93,132,164,198,232,265,298,324,353,379,410,
+451,502,545,589,635,679,715,756,795,813,828,886,904,927,959,1003,1035,1087,1135,1153,
+1205,1265,1259,1258,1238,1225,1260,1251,1248,1240,1239,1246,1253,1270,1277,1276,1282,1278,1272,1270,
+1288,1295,1322,1343,1354,1361,1381,1395,1412,1432,1449,1455,1480,1466,1509,1522,1524,1574,1588,1603,
+1609,1621,1638,1656,1683,1698,1712,1721,1731,1750,1765,1786,1804,1829,1856,1878,1896,1928,1957,1996,
+2035,2068,2104,2123,2142,2157,2164,2181,2218,2278,2331,2358,2378,2399,2421,2436,2424,2425,2419,2412,
+2369,2270,2258,2266,2270,2267,2267,2262,2253,2264,2275,2293,2328,2353,2377,2409,2450,2512,2597,2656,
+2670,2684,2759,2734,2773,2788,2811,2850,2926,2987,3018,3010,2987,2998,3025,3042,3036,3019,3001,2961,
+2902,2850,2810,2779,2745,2713,2665,2598,2512,2415,2318,2227,2136,2047,1973,1920,1892,1881,1884,1901,
+1907,1892,1862,1818,1781,1756,1696,1649,1613,1579,1554,1540,1534,1526,1502,1457,1425,1391,1346,1294,
+1230,1181,1144,1114,1082,1053,1016,989,976,973,979,977,991,947,882,824,742,642,531,422,
+359,329,322,316,302,275,233,174,104,49,-16,-101,-137,-155,-161,-210,-238,-249,-254,-268,
+-297,-330,-351,-344,-286,-230,-175,-245,-287,-340,-357,-346,-342,-358,-359,-349,-349,-346,-351,-300,
+-235,-132,-82,-74,-55,-44,-70,-83,-65,-2,142,239,258,266,295,331,347,254,54,-58,
+-42,-9,-212,-391,-519,-587,-638,-676,-705,-728,-736,-728,-722,-716,-707,-700,-693,-692,-699,-701,
+-659,-637,-613,-588,-581,-550,-504,-430,-323,-211,-161,-187,-311,-468,-596,-682,-697,-687,-671,-674,
+-657,-620,-658,-632,-602,-570,-566,-563,-571,-603,-630,-624,-620,-639,-661,-670,-678,-684,-684,-694,
+-710,-717,-729,-745,-751,-735,-799,-783,-796,-813,-840,-844,-854,-917,-912,-925,-966,-1008,-1040,-1068,
+-1090,-1117,-1141,-1192,-1259,-1272,-1330,-1403,-1461,-1513,-1552,-1627,-1659,-1721,-1779,-1821,-1870,-1929,-1964,-2000,
+-2065,-2151,-2201,-2250,-2301,-2347,-2400,-2449,-2502,-2555,-2616,-2659,-2716,-2776,-2822,-2885,-2902,-2956,-3009,-3056,
+-3111,-3155,-3203,-3241,-3265,-3293,-3328,-3381,-3428,-3471,-3529,-3563,-3595,-3635,-3682,-3707,-3760,-3802,-3840,-3868,
+-3878,-3918,-3937,-3940,-3933,-3938,-3950,-3966,-3984,-3997,-4030,-4059,-4080,-4046,-4095,-4083,-4053,-4035,-4031,-4053,
+-4080,-4126,-4203,-4319,-4370,-4411,-4465,-4454,-4461,-4507,-4515,-4509,-4523,-4545,-4584,-4609,-4631,-4627,-4633,-4651,
+-4664,-4683,-4672,-4665,-4646,-4637,-4635,-4623,-4604,-4581,-4563,-4572,-4582,-4591,-4621,-4632,-4653,-4694,-4719,-4726,
+-4734,-4727,-4708,-4688,-4668,-4643,-4600,-4565,-4525,-4498,-4445,-4411,-4359,-4318,-4275,-4248,-4193,-4104,-4019,-3967,
+-3918,-3812,-3687,-3587,-3480,-3407,-3391,-3400,-3442,-3490,-3522,-3570,-3551,-3503,-3444,-3400,-3323,-3239,-3176,-3135,
+-3111,-3127,-3107,-3053,-3103,-3082,-3063,-3046,-3009,-2978,-2937,-2884,-2823,-2764,-2712,-2657,-2585,-2522,-2469,-2361,
+-2216,-2099,-1952,-1760,-1561,-1454,-1375,-1295,-1193,-1061,-954,-880,-831,-865,-897,-856,-762,-742,-737,-727,
+-734,-712,-679,-631,-564,-476,-393,-253,-121,-58,-1,54,85,159,238,338,426,508,569,591,
+572,545,539,539,546,563,581,610,648,688,717,740,780,841,917,1007,1093,1190,1253,1272,
+1328,1408,1453,1479,1527,1592,1628,1646,1655,1652,1666,1700,1747,1794,1867,1965,2046,2113,2137,2179,
+2291,2388,2469,2544,2620,2656,2715,2775,2831,2885,2928,2987,3066,3121,3165,3184,3222,3265,3327,3378,
+3448,3532,3634,3723,3809,3905,4005,4067,4128,4158,4175,4162,4177,4174,4163,4158,4154,4154,4164,4197,
+4249,4300,4334,4388,4428,4469,4523,4590,4666,4748,4845,4946,5025,5081,5118,5165,5217,5253,5255,5284,
+5299,5324,5367,5409,5432,5436,5406,5385,5398,5406,5385,5377,5400,5387,5378,5400,5432,5466,5461,5427,
+5398,5378,5374,5318,5256,5184,5101,5057,5086,5109,5115,5108,5179,5268,5295,5291,5279,5256,5268,5252,
+5234,5197,5182,5221,5317,5514,5634,5395,5315,5299,5320,5364,5410,5456,5449,5475,5462,5495,5511,5492,
+5430,5341,5287,5275,5271,5259,5255,5276,5362,5519,5761,5994,6120,6203,6156,6056,5902,5833,5814,5862,
+5939,5898,5780,5541,5237,5003,5032,5259,5540,5777,5959,6076,6134,6168,6176,6192,6172,6146,6122,6092,
+6071,6047,6045,5993,5970,5958,5961,5966,5903,5841,5736,5569,5452,5421,5410,5368,5346,5310,5272,5213,
+5155,5109,5062,5030,5021,5025,4998,5006,5047,5110,5122,5145,5194,5252,5255,5231,5211,5213,5230,5282,
+5304,5312,5312,5291,5281,5257,5174,5036,4672,4195,3619,3101,2682,2555,2696,2840,2931,2989,3025,3038,
+3030,3003,2953,2888,2827,2775,2718,2655,2591,2529,2464,2397,2321,2247,2187,2131,2066,2006,1946,1880,
+1801,1719,1650,1594,1550,1502,1457,1421,1380,1341,1315,1300,1282,1273,1260,1248,1228,1192,1156,1138,
+1138,1141,1185,1123,1097,1088,1082,1059,1053,1026,986,946,886,824,775,755,783,704,596,532,
+499,476,463,451,434,421,420,385,372,441,339,259,203,168,130,99,68,35,13,-10,
+-23,-29,-25,-107,-138,-172,-203,-226,-246,-273,-303,-340,-370,-408,-431,-461,-489,-508,-541,-570,
+-591,-598,-603,-621,-633,-658,-674,-692,-707,-721,-731,-742,-772,-812,-834,-830,-840,-848,-864,-881,
+-908,-929,-958,-969,-947,-837,-832,-942,-992,-1018,-1017,-988,-919,-904,-938,-998,-1008,-1030,-1062,-1059,
+-1070,-1057,-1051,-1035,-1033,-1049,-1042,-1056,-1089,-1115,-1117,-1120,-1118,-1118,-1127,-1138,-1137,-1132,-1127,-1129,
+-1124,-1120,-1118,-1121,-1113,-1113,-1115,-1118,-1121,-1120,-1118,-1116,-1116,-1118,-1116,-1111,-1103,-1100,-1100,-1096,
+-1084,-1071,-1056,-1038,-1029,-1013,-997,-992,-980,-971,-946,-925,-910,-880,-847,-837,-816,-792,-772,-752,
+-731,-712,-690,-669,-649,-627,-612,-592,-571,-561,-548,-522,-507,-494,-480,-463,-450,-438,-425,-410,
+-400,-392,-377,-370,-358,-354,-343,-337,-331,-326,-320,-309,-293,-292,-299,-300,-298,-299,-296,-292,
+-296,-295,-288,-279,-281,-282,-290,-290,-291,-295,-294,-286,-283,-287,-289,-298,-303,-302,-303,-308,
+-309,-310,-311,-308,-304,-303,-301,-297,-297,-295,-289,-298,-307,-304,-306,-305,-306,-309,-310,-309,
+-305,-299,-299,-298,-296,-296,-298,-297,-292,-281,-277,-276,-267,-266,-270,-269,-260,-261,-243,-241,
+-235,-224,-215,-207,-197,-189,-178,-167,-156,-152,-139,-125,-119,-109,-100,-93,-86,-81,-73,-72,
+-72,-62,-54,-41,-25,-14,-9,7,21,11,34,41,63,67,75,96,115,129,140,152,
+160,174,187,204,228,245,268,287,303,320,336,357,386,415,452,478,514,553,610,658,
+696,734,749,769,643,642,729,804,836,855,861,872,899,932,949,987,1019,1058,1096,1132,
+1171,1219,1277,1314,1352,1398,1443,1498,1565,1626,1676,1711,1739,1767,1804,1872,1932,1983,2021,2018,
+1966,1805,1534,1311,1490,1969,2541,3018,3473,3490,3387,3484,3802,4017,4128,4229,4313,4350,4320,4312,
+4294,4278,4253,4205,4175,4186,4156,4073,3902,3570,3289,3025,2865,2662,2458,2343,2308,2316,2339,2318,
+2258,2174,2084,2022,2052,2123,2111,2068,2044,2036,1995,1903,1784,1676,1593,1541,1518,1506,1507,1479,
+1422,1293,1142,1022,916,828,686,543,392,252,125,15,-97,-172,-217,-257,-322,-377,-413,-457,
+-486,-503,-540,-580,-615,-638,-656,-668,-667,-652,-651,-664,-663,-687,-685,-677,-683,-661,-627,-588,
+-514,-392,-344,-293,-315,-331,-317,-329,-305,-291,-310,-315,-305,-348,-391,-439,-512,-582,-636,-658,
+-658,-621,-688,-668,-621,-597,-597,-630,-756,-884,-944,-986,-1033,-1041,-1034,-1040,-1045,-1041,-1032,-1022,
+-1005,-976,-962,-972,-963,-941,-913,-896,-878,-857,-832,-805,-778,-752,-730,-706,-690,-674,-655,-638,
+-625,-609,-596,-588,-587,-590,-584,-591,-604,-613,-617,-618,-618,-624,-628,-625,-629,-631,-631,-621,
+-617,-610,-612,-600,-591,-577,-572,-559,-541,-522,-504,-496,-476,-450,-416,-390,-358,-325,-306,-271,
+-242,-205,-162,-143,-105,-75,-34,-3,27,59,98,130,163,198,224,256,300,340,369,412,
+457,487,528,571,617,650,682,708,734,775,814,851,875,918,970,1009,1040,1078,1128,1172,
+1209,1162,1229,1231,1210,1218,1233,1226,1209,1230,1240,1244,1247,1260,1270,1269,1257,1260,1270,1276,
+1281,1302,1318,1335,1346,1354,1359,1357,1368,1401,1420,1429,1446,1449,1483,1506,1512,1531,1548,1572,
+1591,1618,1661,1673,1682,1703,1716,1727,1731,1739,1758,1779,1808,1827,1853,1873,1904,1935,1966,1998,
+2030,2064,2092,2133,2146,2167,2180,2187,2210,2260,2361,2412,2430,2439,2446,2469,2465,2451,2459,2458,
+2454,2394,2295,2265,2259,2259,2253,2244,2237,2243,2263,2278,2294,2326,2354,2376,2408,2453,2523,2614,
+2670,2670,2675,2748,2796,2806,2828,2853,2883,2945,2993,2992,3012,3030,3033,3047,3058,3064,3057,3034,
+2966,2882,2804,2756,2717,2688,2677,2645,2585,2503,2413,2320,2232,2151,2072,2011,1974,1962,1958,1952,
+1952,1957,1947,1919,1881,1815,1769,1724,1689,1658,1631,1607,1589,1573,1561,1548,1509,1462,1422,1379,
+1335,1284,1229,1174,1130,1106,1068,1040,1025,1027,1053,1070,1056,1047,1008,935,865,744,634,526,
+428,387,374,367,369,363,350,313,262,207,158,96,16,-27,-46,-82,-126,-154,-171,-188,
+-214,-248,-277,-287,-277,-209,-135,-91,-188,-187,-221,-250,-249,-254,-269,-262,-258,-268,-282,-298,
+-256,-166,-48,-10,11,62,65,29,40,39,112,248,361,357,357,368,399,390,262,74,
+-13,16,-22,-226,-392,-497,-559,-601,-626,-643,-658,-659,-660,-658,-654,-647,-643,-644,-645,-646,
+-583,-576,-574,-558,-538,-513,-479,-449,-420,-380,-340,-316,-328,-396,-492,-572,-588,-598,-591,-610,
+-597,-578,-591,-592,-565,-536,-505,-491,-507,-520,-534,-575,-575,-569,-591,-610,-619,-610,-609,-622,
+-631,-656,-681,-681,-687,-685,-682,-699,-710,-745,-752,-778,-803,-822,-841,-849,-901,-922,-939,-963,
+-1001,-1033,-1061,-1087,-1104,-1167,-1217,-1271,-1308,-1365,-1417,-1493,-1547,-1579,-1644,-1710,-1745,-1789,-1841,-1872,
+-1928,-1982,-2057,-2104,-2161,-2221,-2262,-2305,-2353,-2407,-2467,-2528,-2563,-2637,-2678,-2739,-2782,-2821,-2873,-2921,
+-2985,-3035,-3081,-3122,-3149,-3176,-3206,-3254,-3301,-3343,-3389,-3432,-3464,-3506,-3543,-3573,-3623,-3671,-3719,-3751,
+-3770,-3795,-3810,-3833,-3849,-3853,-3861,-3878,-3901,-3921,-3937,-3973,-4000,-4019,-3998,-4024,-4025,-3997,-3959,-3953,
+-3965,-3991,-4038,-4137,-4297,-4353,-4361,-4384,-4398,-4426,-4493,-4497,-4488,-4501,-4527,-4558,-4580,-4600,-4593,-4600,
+-4619,-4625,-4646,-4637,-4634,-4620,-4610,-4608,-4598,-4580,-4559,-4549,-4559,-4573,-4583,-4613,-4626,-4641,-4672,-4703,
+-4709,-4706,-4700,-4684,-4662,-4642,-4624,-4578,-4536,-4502,-4455,-4429,-4383,-4340,-4311,-4253,-4212,-4205,-4128,-4054,
+-3995,-3944,-3824,-3697,-3580,-3491,-3419,-3374,-3357,-3411,-3477,-3512,-3571,-3593,-3533,-3449,-3391,-3312,-3208,-3146,
+-3112,-3120,-3136,-3088,-3090,-3120,-3109,-3110,-3100,-3060,-3040,-2998,-2940,-2883,-2824,-2766,-2704,-2631,-2554,-2449,
+-2315,-2180,-2051,-1885,-1675,-1487,-1424,-1365,-1281,-1207,-1088,-994,-914,-852,-816,-833,-822,-748,-713,-742,
+-722,-734,-749,-713,-662,-599,-533,-466,-327,-231,-181,-95,-20,26,92,147,247,347,445,510,
+524,509,484,469,472,481,486,506,533,557,586,618,647,676,719,798,889,977,1092,1165,
+1189,1244,1302,1345,1368,1405,1448,1479,1490,1494,1493,1500,1536,1586,1636,1712,1805,1867,1914,1975,
+2039,2115,2263,2366,2429,2508,2575,2628,2680,2744,2799,2844,2905,3002,3064,3076,3121,3160,3215,3268,
+3309,3373,3439,3533,3641,3736,3829,3922,3951,4034,4084,4106,4085,4086,4114,4109,4090,4069,4068,4081,
+4113,4158,4218,4259,4300,4346,4394,4455,4519,4587,4663,4760,4854,4929,4993,5047,5104,5147,5192,5192,
+5218,5224,5231,5286,5331,5378,5398,5342,5340,5336,5332,5314,5317,5326,5333,5337,5360,5376,5394,5387,
+5358,5331,5321,5310,5295,5227,5148,5063,5030,5076,5132,5127,5077,5103,5146,5190,5197,5183,5181,5170,
+5127,5095,5082,5109,5171,5267,5372,5401,5281,5227,5223,5259,5306,5364,5392,5394,5400,5395,5398,5407,
+5416,5408,5365,5280,5243,5251,5240,5227,5227,5269,5342,5449,5657,5931,6089,6158,6160,6083,5935,5828,
+5798,5815,5843,5824,5708,5458,5184,4930,4968,5156,5437,5715,5901,5966,6035,6059,6062,6051,6035,6009,
+5983,5982,5962,5917,5905,5886,5849,5786,5753,5674,5565,5432,5411,5422,5403,5398,5368,5311,5273,5231,
+5182,5128,5095,5063,5024,5002,4991,4986,5008,5049,5104,5135,5159,5206,5272,5256,5247,5222,5222,5228,
+5269,5293,5309,5298,5285,5243,5207,5128,4894,4392,3745,3191,2774,2528,2608,2783,2910,2984,3031,3056,
+3058,3039,3002,2949,2885,2826,2769,2707,2642,2574,2512,2451,2383,2307,2240,2184,2127,2060,1998,1942,
+1877,1807,1734,1659,1598,1552,1510,1469,1415,1373,1334,1315,1287,1259,1245,1238,1239,1233,1193,1168,
+1137,1128,1115,1113,1099,1084,1077,1068,1037,1017,980,936,905,866,818,778,770,858,749,599,
+533,494,469,457,431,405,381,366,363,346,366,326,270,211,190,164,120,91,54,20,
+-3,-37,-47,-75,-103,-137,-178,-216,-242,-268,-295,-326,-352,-385,-421,-450,-483,-514,-539,-563,
+-586,-596,-600,-596,-611,-637,-642,-667,-683,-703,-716,-721,-724,-775,-816,-830,-844,-849,-875,-887,
+-886,-903,-919,-942,-955,-954,-938,-952,-979,-985,-996,-987,-982,-930,-961,-1024,-1061,-1076,-1071,-1070,
+-1072,-1085,-1093,-1083,-1030,-1072,-1061,-1072,-1061,-1078,-1094,-1089,-1108,-1108,-1123,-1133,-1139,-1137,-1129,-1124,
+-1127,-1128,-1129,-1120,-1123,-1116,-1118,-1113,-1110,-1103,-1103,-1103,-1101,-1096,-1099,-1103,-1099,-1094,-1082,-1076,
+-1070,-1058,-1048,-1040,-1029,-1013,-999,-988,-975,-964,-953,-937,-923,-910,-887,-867,-843,-825,-790,-761,
+-755,-749,-719,-702,-687,-672,-648,-631,-609,-591,-577,-561,-540,-524,-505,-492,-475,-462,-453,-435,
+-424,-409,-397,-391,-382,-370,-364,-358,-349,-339,-336,-330,-321,-318,-318,-313,-311,-312,-315,-313,
+-310,-310,-310,-307,-303,-299,-294,-298,-297,-297,-301,-304,-302,-296,-295,-301,-306,-309,-310,-312,
+-313,-314,-313,-311,-308,-308,-310,-306,-293,-294,-299,-299,-300,-303,-299,-298,-301,-303,-308,-305,
+-297,-298,-297,-299,-298,-297,-298,-299,-292,-279,-271,-270,-266,-264,-260,-260,-248,-246,-241,-231,
+-227,-220,-211,-202,-193,-184,-171,-161,-156,-150,-139,-121,-114,-104,-87,-79,-72,-68,-57,-52,
+-37,-42,-39,-38,-23,-8,1,15,25,31,33,60,53,79,83,95,112,131,143,155,
+168,179,194,212,227,242,263,285,305,318,338,360,385,405,432,459,513,555,621,674,
+652,628,669,766,846,680,649,732,800,820,849,860,869,884,911,948,975,1007,1043,1082,
+1120,1157,1206,1261,1308,1351,1398,1454,1511,1572,1631,1665,1701,1725,1756,1789,1850,1922,1985,2014,
+2005,1933,1769,1482,1272,1454,1933,2512,3087,3543,3545,3453,3528,3778,3969,4072,4209,4270,4306,4317,
+4356,4349,4302,4205,4210,4220,4206,4203,4139,3924,3559,3199,2940,2802,2624,2477,2402,2370,2375,2384,
+2340,2263,2172,2086,2033,2034,2034,2043,2051,2035,2019,1976,1895,1796,1705,1632,1576,1537,1523,1524,
+1486,1416,1272,1128,990,928,861,712,556,411,261,133,21,-77,-158,-187,-226,-297,-346,-383,
+-410,-437,-464,-504,-539,-577,-600,-616,-633,-635,-616,-624,-643,-641,-670,-675,-661,-648,-626,-615,
+-595,-518,-416,-318,-266,-268,-299,-284,-286,-280,-266,-308,-344,-355,-379,-422,-472,-506,-527,-527,
+-574,-589,-654,-675,-656,-618,-579,-582,-612,-709,-864,-952,-989,-1021,-1031,-1022,-1013,-1012,-1006,-986,
+-982,-958,-910,-901,-937,-934,-917,-900,-883,-873,-855,-836,-813,-788,-764,-742,-718,-701,-680,-660,
+-641,-625,-607,-591,-587,-590,-587,-590,-601,-610,-616,-618,-616,-619,-623,-627,-627,-634,-631,-629,
+-630,-630,-623,-616,-605,-597,-586,-563,-544,-518,-500,-476,-472,-459,-450,-410,-367,-343,-314,-284,
+-245,-209,-173,-140,-108,-78,-46,-8,32,62,98,123,163,202,232,266,294,333,365,390,
+427,462,504,549,584,602,658,682,722,770,814,831,883,934,968,989,1026,1081,1126,1168,
+1208,1178,1132,1168,1194,1195,1204,1210,1214,1229,1229,1246,1260,1272,1267,1270,1269,1270,1273,1288,
+1296,1299,1324,1328,1341,1352,1344,1345,1364,1393,1402,1412,1426,1452,1462,1507,1525,1546,1565,1578,
+1586,1584,1618,1653,1675,1701,1711,1715,1727,1739,1763,1778,1800,1826,1851,1871,1904,1937,1967,1994,
+2024,2056,2083,2105,2130,2168,2205,2216,2227,2260,2318,2409,2453,2475,2481,2509,2517,2496,2477,2485,
+2460,2438,2423,2316,2263,2252,2248,2241,2237,2241,2250,2262,2279,2294,2321,2342,2371,2402,2446,2517,
+2605,2696,2725,2725,2757,2810,2820,2856,2882,2908,2951,2976,3007,3021,3039,3049,3073,3099,3106,3119,
+3061,2974,2880,2788,2721,2680,2658,2646,2619,2567,2486,2398,2316,2241,2167,2103,2057,2026,2027,2018,
+1994,1989,1984,1990,1959,1900,1841,1791,1756,1734,1715,1689,1662,1638,1619,1599,1586,1557,1499,1452,
+1410,1375,1339,1296,1230,1180,1124,1087,1079,1081,1068,1079,1073,1047,1020,992,953,907,771,643,
+543,470,430,426,413,415,416,415,393,364,317,267,205,121,70,47,13,-27,-73,-99,
+-125,-161,-192,-217,-223,-209,-178,-145,-139,-147,-143,-111,-124,-166,-178,-190,-172,-173,-194,-231,
+-248,-194,-93,21,66,105,178,175,155,167,147,241,386,480,462,420,430,438,412,248,
+99,68,88,-56,-262,-399,-464,-497,-535,-569,-590,-591,-598,-601,-601,-601,-601,-604,-600,-579,
+-549,-509,-493,-492,-491,-477,-445,-419,-403,-397,-385,-374,-380,-390,-430,-482,-489,-504,-505,-526,
+-530,-524,-548,-549,-552,-521,-488,-444,-458,-477,-506,-520,-553,-569,-563,-582,-575,-565,-560,-551,
+-567,-563,-589,-609,-618,-621,-627,-631,-633,-661,-674,-698,-721,-737,-755,-786,-822,-832,-848,-873,
+-893,-918,-967,-1000,-1021,-1023,-1096,-1142,-1160,-1227,-1308,-1366,-1398,-1428,-1489,-1576,-1591,-1646,-1703,-1750,
+-1785,-1842,-1911,-1960,-2019,-2081,-2131,-2171,-2211,-2261,-2323,-2381,-2437,-2495,-2537,-2602,-2655,-2672,-2731,-2790,
+-2842,-2896,-2960,-3010,-3029,-3051,-3087,-3128,-3178,-3219,-3256,-3310,-3353,-3394,-3435,-3470,-3499,-3541,-3598,-3641,
+-3656,-3697,-3699,-3721,-3740,-3758,-3782,-3808,-3833,-3856,-3868,-3890,-3912,-3931,-3941,-3960,-3948,-3922,-3941,-3891,
+-3877,-3892,-3915,-3980,-4131,-4269,-4265,-4276,-4329,-4355,-4388,-4462,-4467,-4461,-4472,-4493,-4521,-4542,-4559,-4551,
+-4563,-4581,-4582,-4606,-4600,-4603,-4582,-4577,-4581,-4569,-4554,-4537,-4533,-4543,-4555,-4568,-4601,-4615,-4625,-4653,
+-4684,-4685,-4681,-4674,-4657,-4630,-4614,-4593,-4555,-4511,-4472,-4427,-4388,-4365,-4321,-4289,-4251,-4171,-4157,-4166,
+-4105,-4016,-3977,-3928,-3804,-3648,-3563,-3471,-3398,-3368,-3415,-3440,-3506,-3570,-3611,-3535,-3471,-3358,-3263,-3185,
+-3142,-3133,-3144,-3147,-3114,-3152,-3133,-3125,-3150,-3151,-3092,-3096,-3048,-2994,-2944,-2890,-2827,-2756,-2672,-2570,
+-2442,-2292,-2139,-2024,-1859,-1643,-1493,-1438,-1354,-1295,-1216,-1127,-1040,-961,-889,-832,-791,-787,-780,-738,
+-743,-741,-733,-724,-722,-680,-619,-564,-493,-400,-326,-252,-158,-92,-64,-11,46,141,245,350,
+412,443,438,432,427,412,414,413,422,444,459,486,523,553,574,618,692,786,890,1002,
+1085,1098,1148,1190,1231,1267,1301,1326,1343,1357,1369,1381,1392,1422,1490,1556,1624,1690,1729,1773,
+1837,1933,2011,2126,2244,2341,2417,2498,2555,2606,2662,2712,2767,2826,2912,2970,3001,3029,3082,3128,
+3186,3240,3287,3359,3462,3555,3630,3719,3810,3842,3931,3998,4031,4011,3992,4021,4034,4016,3992,3987,
+3994,4033,4077,4116,4152,4198,4263,4316,4387,4458,4523,4599,4681,4752,4824,4897,4962,5044,5078,5121,
+5140,5163,5173,5161,5199,5252,5296,5329,5283,5279,5294,5281,5259,5243,5256,5269,5299,5306,5303,5316,
+5305,5290,5275,5260,5243,5234,5193,5111,5042,4998,5043,5195,5157,5056,5061,5039,5057,5067,5075,5084,
+5070,5049,5029,5023,5037,5113,5297,5495,5337,5184,5140,5156,5203,5267,5320,5324,5334,5342,5335,5355,
+5355,5331,5329,5316,5307,5226,5217,5219,5214,5213,5249,5307,5358,5439,5639,5905,6021,6080,6073,6033,
+5913,5814,5764,5746,5766,5772,5632,5401,5087,4832,4830,5046,5393,5634,5759,5883,5941,5959,5909,5887,
+5882,5854,5796,5776,5752,5643,5529,5466,5496,5530,5403,5309,5349,5431,5434,5407,5368,5342,5282,5240,
+5189,5153,5122,5094,5057,5037,5017,4998,4985,4998,5035,5093,5131,5158,5213,5277,5265,5240,5211,5210,
+5224,5265,5289,5293,5274,5275,5216,5153,5034,4712,4027,3393,2921,2579,2509,2693,2859,2963,3030,3065,
+3077,3070,3043,3004,2944,2879,2817,2755,2685,2620,2556,2495,2436,2372,2296,2224,2169,2111,2048,1985,
+1926,1864,1805,1740,1670,1607,1561,1515,1470,1412,1369,1336,1316,1284,1248,1234,1220,1225,1225,1201,
+1167,1163,1124,1094,1082,1073,1063,1058,1051,1017,994,953,907,875,845,808,768,754,715,660,
+587,534,499,466,440,418,393,371,350,331,312,295,283,242,196,162,138,135,151,99,
+28,-10,-39,-56,-24,-39,-111,-166,-228,-260,-290,-317,-342,-371,-389,-425,-465,-497,-531,-559,
+-583,-609,-619,-624,-631,-643,-658,-673,-693,-701,-710,-726,-740,-727,-784,-818,-832,-865,-864,-861,
+-842,-848,-873,-898,-925,-944,-962,-978,-990,-1016,-1039,-1048,-1043,-1024,-999,-900,-1022,-1064,-1044,-1056,
+-1070,-1078,-1094,-1099,-1098,-1117,-1142,-1143,-1152,-1129,-1083,-1109,-1093,-1096,-1115,-1124,-1135,-1141,-1135,-1134,
+-1129,-1122,-1126,-1127,-1135,-1133,-1135,-1131,-1126,-1115,-1107,-1100,-1098,-1096,-1086,-1084,-1085,-1088,-1086,-1079,
+-1063,-1054,-1042,-1034,-1029,-1019,-1008,-993,-978,-961,-948,-937,-923,-915,-895,-877,-866,-852,-834,-810,
+-786,-744,-716,-707,-685,-676,-668,-652,-633,-614,-594,-583,-562,-550,-536,-521,-507,-496,-480,-461,
+-446,-436,-424,-415,-400,-391,-381,-374,-369,-360,-354,-351,-340,-328,-320,-323,-326,-324,-322,-325,
+-329,-331,-329,-328,-328,-324,-316,-312,-311,-312,-311,-309,-314,-311,-315,-312,-317,-318,-319,-322,
+-324,-324,-324,-321,-316,-313,-308,-315,-317,-302,-295,-296,-297,-299,-300,-302,-303,-300,-302,-303,
+-298,-293,-290,-291,-293,-292,-296,-294,-292,-285,-273,-261,-255,-259,-253,-250,-245,-239,-230,-228,
+-227,-209,-206,-200,-191,-188,-177,-163,-150,-139,-124,-117,-96,-92,-81,-66,-60,-55,-47,-38,
+-33,-21,-18,-14,-10,-1,0,15,26,42,46,58,69,78,85,106,113,128,146,158,
+167,180,199,210,228,242,258,270,293,316,338,350,362,380,400,426,476,530,582,626,
+643,630,570,619,764,795,655,676,752,797,827,845,846,860,886,915,944,971,1001,1036,
+1073,1107,1148,1206,1270,1319,1361,1409,1460,1522,1586,1632,1666,1685,1721,1818,1798,1859,1925,1986,
+2017,1988,1913,1735,1444,1239,1455,1974,2573,3150,3511,3559,3493,3546,3709,3835,3956,4111,4221,4265,
+4318,4336,4329,4298,4267,4252,4226,4262,4236,4172,3886,3462,3033,2834,2696,2562,2455,2415,2404,2417,
+2409,2363,2292,2206,2125,2072,2055,2060,2075,2062,2032,2002,1961,1891,1807,1728,1661,1601,1555,1539,
+1530,1492,1403,1268,1123,975,918,862,726,572,427,286,151,28,-65,-130,-160,-203,-271,-314,
+-338,-350,-380,-423,-471,-508,-536,-556,-589,-617,-603,-588,-592,-613,-622,-652,-643,-649,-641,-618,
+-596,-571,-513,-423,-345,-292,-277,-266,-241,-209,-254,-248,-342,-425,-426,-431,-461,-458,-432,-427,
+-442,-493,-617,-666,-668,-654,-588,-531,-571,-625,-729,-880,-961,-998,-1023,-1030,-1010,-989,-971,-916,
+-882,-947,-939,-925,-914,-907,-901,-889,-877,-864,-853,-838,-825,-808,-789,-769,-745,-726,-705,-685,
+-662,-642,-621,-604,-594,-594,-594,-596,-601,-606,-614,-615,-616,-620,-622,-618,-616,-625,-624,-620,
+-621,-613,-602,-597,-588,-571,-556,-545,-527,-511,-494,-463,-454,-435,-405,-396,-374,-341,-311,-279,
+-254,-216,-175,-146,-118,-82,-51,-16,14,44,86,115,142,174,216,249,283,319,358,376,
+406,439,476,509,544,577,623,652,691,735,775,822,865,904,940,982,1023,1059,1086,1074,
+1091,1084,1095,1150,1192,1215,1210,1208,1219,1232,1247,1257,1260,1267,1268,1270,1272,1280,1285,1287,
+1289,1301,1313,1315,1311,1316,1323,1334,1355,1382,1402,1421,1440,1459,1478,1503,1528,1550,1571,1569,
+1574,1591,1621,1671,1678,1701,1718,1732,1738,1749,1763,1774,1800,1825,1859,1890,1915,1941,1964,1993,
+2031,2062,2093,2118,2140,2165,2195,2231,2256,2284,2325,2368,2440,2487,2512,2524,2541,2541,2547,2548,
+2482,2432,2331,2311,2305,2268,2245,2233,2231,2237,2249,2256,2263,2278,2291,2306,2329,2357,2391,2430,
+2493,2581,2705,2770,2783,2777,2788,2824,2873,2889,2923,2945,2982,3029,3060,3100,3129,3185,3203,3166,
+3161,3088,2989,2876,2774,2708,2673,2645,2627,2593,2532,2465,2398,2331,2266,2204,2157,2123,2082,2069,
+2054,2028,2020,2003,2011,1978,1926,1876,1834,1806,1789,1776,1746,1712,1684,1666,1645,1610,1563,1525,
+1489,1448,1411,1378,1338,1298,1249,1205,1180,1178,1172,1161,1141,1117,1088,1055,1037,1019,943,813,
+685,595,523,487,476,477,471,471,474,476,458,414,366,304,214,157,125,90,58,9,
+-23,-61,-98,-126,-143,-139,-117,-99,-90,-93,-98,-98,-57,-56,-99,-107,-121,-102,-105,-136,
+-182,-205,-170,-74,54,133,193,278,291,267,247,260,371,487,542,552,487,451,426,360,
+236,132,166,103,-117,-288,-379,-402,-413,-448,-483,-506,-522,-536,-544,-549,-552,-562,-558,-515,
+-479,-482,-432,-407,-415,-407,-399,-381,-357,-351,-360,-358,-371,-378,-392,-413,-432,-417,-413,-432,
+-448,-452,-465,-489,-485,-493,-478,-443,-442,-448,-477,-498,-508,-515,-511,-503,-505,-512,-512,-495,
+-489,-490,-510,-511,-527,-536,-556,-550,-569,-595,-595,-623,-649,-673,-689,-713,-733,-753,-772,-799,
+-808,-863,-884,-905,-929,-943,-990,-1020,-1079,-1120,-1178,-1201,-1263,-1294,-1376,-1450,-1488,-1516,-1571,-1626,
+-1658,-1713,-1757,-1824,-1889,-1947,-1993,-2036,-2075,-2121,-2170,-2238,-2296,-2357,-2393,-2456,-2502,-2540,-2577,-2655,
+-2709,-2767,-2825,-2883,-2905,-2931,-2958,-3006,-3053,-3091,-3133,-3187,-3229,-3263,-3304,-3355,-3395,-3423,-3460,-3506,
+-3556,-3572,-3605,-3616,-3637,-3659,-3679,-3706,-3755,-3784,-3797,-3822,-3836,-3848,-3860,-3872,-3878,-3897,-3872,-3862,
+-3847,-3824,-3827,-3848,-3940,-4129,-4180,-4177,-4207,-4276,-4307,-4337,-4407,-4430,-4419,-4427,-4445,-4482,-4495,-4511,
+-4505,-4519,-4536,-4544,-4563,-4559,-4562,-4543,-4544,-4544,-4541,-4528,-4514,-4517,-4526,-4538,-4543,-4574,-4599,-4615,
+-4640,-4665,-4657,-4651,-4642,-4628,-4606,-4584,-4559,-4536,-4487,-4444,-4405,-4372,-4328,-4289,-4280,-4246,-4163,-4147,
+-4103,-4059,-4010,-3957,-3932,-3878,-3770,-3636,-3573,-3497,-3450,-3455,-3512,-3568,-3580,-3619,-3562,-3506,-3366,-3257,
+-3216,-3187,-3156,-3161,-3113,-3127,-3163,-3143,-3148,-3188,-3185,-3122,-3131,-3083,-3035,-2992,-2940,-2876,-2798,-2694,
+-2559,-2419,-2252,-2134,-2018,-1852,-1665,-1546,-1476,-1373,-1315,-1237,-1170,-1099,-1016,-944,-880,-828,-793,-777,
+-755,-771,-786,-744,-676,-653,-624,-602,-568,-535,-489,-417,-332,-245,-164,-126,-80,-18,60,163,
+250,326,362,379,385,383,353,339,344,345,365,386,401,434,470,494,536,599,682,797,
+913,1002,1022,1040,1054,1072,1105,1148,1193,1232,1258,1271,1283,1300,1354,1435,1511,1581,1625,1664,
+1704,1756,1835,1929,2022,2141,2251,2351,2445,2501,2537,2581,2621,2684,2747,2822,2882,2916,2949,2996,
+3050,3116,3177,3229,3286,3369,3461,3538,3609,3694,3731,3806,3891,3944,3940,3927,3915,3943,3939,3922,
+3910,3921,3952,3975,4000,4036,4089,4162,4225,4305,4388,4454,4530,4606,4672,4744,4813,4880,4984,5030,
+5067,5100,5115,5124,5115,5119,5163,5207,5258,5239,5231,5214,5213,5198,5182,5186,5204,5225,5247,5241,
+5235,5224,5206,5195,5188,5173,5172,5164,5113,5043,4967,4951,4975,4971,4968,5006,4973,4979,4982,4995,
+5003,4995,4975,4958,4948,4973,5038,5201,5429,5298,5138,5083,5094,5146,5219,5283,5319,5302,5300,5291,
+5322,5334,5296,5265,5257,5227,5211,5201,5201,5196,5189,5228,5277,5318,5359,5467,5640,5836,5922,5990,
+6002,5945,5879,5798,5738,5728,5739,5701,5503,5283,5010,4812,4836,5082,5285,5432,5612,5753,5786,5713,
+5693,5659,5515,5408,5343,5330,5284,5233,5214,5197,5189,5255,5299,5373,5412,5418,5389,5347,5299,5257,
+5213,5162,5141,5186,5110,5069,5066,5044,5048,5032,5034,5044,5082,5114,5167,5223,5266,5246,5224,5192,
+5213,5227,5242,5267,5275,5252,5224,5179,5069,4834,4313,3640,3090,2693,2452,2569,2776,2922,3011,3064,
+3090,3095,3082,3048,3000,2940,2875,2814,2739,2662,2595,2536,2479,2426,2369,2294,2218,2157,2092,2031,
+1971,1909,1853,1799,1742,1679,1620,1569,1522,1478,1427,1385,1350,1326,1288,1246,1227,1213,1204,1206,
+1211,1183,1174,1137,1089,1067,1047,1038,1027,1025,995,977,938,892,857,826,788,747,709,668,
+621,573,534,503,466,433,407,378,349,331,309,286,262,249,214,178,153,141,158,241,
+171,50,-23,-55,-57,41,99,15,-166,-238,-267,-294,-327,-348,-375,-407,-432,-475,-515,-548,
+-575,-595,-615,-628,-634,-648,-660,-671,-698,-723,-727,-746,-767,-793,-809,-809,-828,-845,-860,-853,
+-835,-837,-846,-867,-888,-900,-948,-964,-992,-1012,-1023,-1044,-1058,-1062,-1062,-1050,-1043,-1073,-1095,-1076,
+-1081,-1107,-1109,-1108,-1108,-1123,-1131,-1142,-1153,-1159,-1175,-1172,-1150,-1137,-1120,-1137,-1141,-1135,-1131,-1131,
+-1125,-1128,-1127,-1127,-1134,-1140,-1139,-1143,-1135,-1134,-1127,-1118,-1113,-1107,-1101,-1092,-1084,-1078,-1076,-1068,
+-1062,-1054,-1045,-1036,-1031,-1020,-1012,-1005,-995,-974,-954,-938,-927,-922,-905,-884,-876,-859,-847,-823,
+-806,-785,-766,-751,-726,-698,-682,-666,-653,-637,-620,-604,-586,-568,-551,-535,-522,-509,-497,-482,
+-463,-455,-451,-436,-419,-413,-411,-400,-381,-374,-373,-368,-363,-349,-342,-337,-332,-337,-337,-343,
+-341,-342,-335,-332,-333,-343,-340,-339,-331,-332,-327,-324,-323,-325,-325,-325,-326,-330,-334,-334,
+-336,-335,-334,-333,-330,-325,-322,-323,-326,-319,-309,-305,-303,-310,-309,-308,-304,-303,-302,-303,
+-300,-296,-293,-287,-288,-286,-288,-292,-294,-289,-279,-264,-254,-242,-237,-230,-228,-224,-227,-222,
+-209,-218,-191,-195,-189,-184,-179,-166,-149,-135,-123,-104,-98,-94,-79,-68,-51,-44,-40,-33,
+-24,-16,-13,-5,-1,9,3,4,28,42,54,62,70,87,93,108,120,130,146,161,
+174,184,196,208,222,238,256,273,282,303,328,347,363,380,418,467,536,538,541,549,
+581,640,584,582,718,673,649,651,702,771,796,807,809,830,856,881,908,933,964,1004,
+1042,1074,1107,1154,1220,1282,1337,1381,1425,1464,1525,1591,1640,1668,1681,1715,1769,1821,1895,1972,
+2019,2025,2006,1897,1709,1415,1222,1465,2011,2626,3161,3532,3576,3509,3517,3646,3810,3935,4043,4152,
+4226,4282,4295,4302,4288,4279,4267,4225,4264,4262,4180,3838,3320,2900,2687,2596,2495,2438,2421,2419,
+2411,2401,2372,2318,2249,2175,2119,2101,2102,2090,2056,2016,1985,1946,1881,1802,1728,1665,1605,1558,
+1535,1514,1465,1383,1250,1124,999,918,857,740,594,440,299,168,47,-56,-113,-145,-181,-228,
+-257,-291,-309,-339,-386,-438,-477,-505,-536,-567,-590,-583,-575,-574,-576,-584,-616,-626,-629,-608,
+-600,-571,-542,-487,-428,-335,-220,-230,-222,-220,-211,-285,-338,-408,-444,-463,-459,-441,-427,-470,
+-551,-528,-590,-651,-673,-653,-597,-529,-529,-608,-707,-814,-932,-984,-1016,-1032,-1025,-993,-975,-958,
+-907,-883,-936,-935,-923,-908,-886,-876,-862,-852,-841,-827,-813,-802,-792,-781,-765,-748,-732,-711,
+-691,-667,-646,-625,-611,-605,-609,-607,-610,-613,-615,-617,-618,-618,-620,-620,-615,-614,-608,-607,
+-612,-612,-608,-602,-594,-580,-565,-552,-535,-510,-495,-475,-454,-431,-405,-378,-361,-332,-311,-270,
+-242,-221,-191,-156,-122,-97,-66,-35,0,29,69,102,136,168,206,228,259,298,332,362,
+395,439,478,498,533,580,608,652,691,724,774,821,874,906,931,963,978,1001,1049,1042,
+1038,1102,1128,1176,1202,1215,1236,1246,1253,1257,1254,1264,1274,1278,1273,1274,1272,1279,1280,1281,
+1279,1303,1310,1307,1327,1345,1344,1349,1359,1377,1389,1398,1426,1445,1470,1489,1522,1553,1567,1583,
+1585,1607,1641,1675,1689,1697,1718,1724,1746,1750,1753,1774,1815,1839,1852,1880,1904,1933,1964,2001,
+2034,2056,2095,2132,2156,2178,2207,2231,2258,2299,2357,2395,2429,2475,2529,2569,2570,2556,2557,2582,
+2570,2476,2334,2303,2309,2311,2312,2240,2226,2232,2234,2244,2255,2266,2276,2288,2304,2329,2362,2398,
+2434,2488,2574,2696,2797,2812,2815,2828,2878,2902,2900,2914,2939,2992,3058,3145,3186,3217,3241,3254,
+3233,3174,3111,3021,2951,2835,2735,2677,2651,2619,2579,2531,2479,2426,2371,2313,2260,2222,2193,2148,
+2117,2098,2085,2083,2055,2040,2007,1959,1918,1878,1847,1832,1822,1804,1772,1742,1720,1693,1658,1614,
+1569,1548,1520,1476,1435,1416,1388,1350,1331,1301,1291,1286,1278,1287,1243,1191,1128,1095,1122,1019,
+880,751,659,593,555,536,536,534,536,548,556,544,504,458,406,317,242,200,152,130,
+87,54,9,-23,-47,-52,-35,-13,-6,-15,-34,-56,-55,-44,-39,-32,-31,-48,-43,-46,
+-78,-123,-158,-182,-144,6,164,238,332,357,316,310,351,441,545,587,610,582,515,426,
+356,249,151,185,97,-114,-261,-313,-324,-341,-374,-406,-443,-469,-480,-490,-504,-516,-507,-457,
+-433,-438,-397,-352,-344,-336,-331,-331,-319,-308,-299,-307,-319,-340,-344,-348,-357,-345,-328,-341,
+-359,-367,-394,-422,-435,-450,-419,-429,-433,-407,-390,-406,-427,-444,-436,-431,-437,-434,-445,-452,
+-433,-417,-430,-433,-449,-458,-470,-480,-491,-522,-538,-552,-573,-593,-621,-639,-662,-690,-698,-714,
+-739,-764,-779,-805,-836,-841,-892,-909,-938,-986,-1034,-1073,-1146,-1175,-1241,-1302,-1341,-1380,-1431,-1482,
+-1542,-1586,-1623,-1672,-1751,-1817,-1863,-1906,-1938,-1979,-2028,-2089,-2142,-2206,-2265,-2316,-2357,-2388,-2444,-2504,
+-2574,-2622,-2676,-2738,-2785,-2811,-2836,-2879,-2923,-2964,-3009,-3056,-3100,-3132,-3172,-3237,-3270,-3312,-3341,-3376,
+-3420,-3454,-3480,-3507,-3540,-3561,-3576,-3604,-3641,-3705,-3727,-3744,-3758,-3771,-3782,-3797,-3802,-3803,-3844,-3837,
+-3811,-3792,-3777,-3782,-3810,-3932,-4062,-4108,-4117,-4145,-4219,-4249,-4286,-4351,-4376,-4370,-4377,-4395,-4437,-4444,
+-4466,-4462,-4479,-4496,-4508,-4521,-4513,-4520,-4507,-4505,-4510,-4509,-4501,-4494,-4499,-4502,-4517,-4526,-4560,-4581,
+-4595,-4610,-4637,-4632,-4622,-4612,-4601,-4581,-4561,-4533,-4504,-4465,-4413,-4383,-4342,-4304,-4272,-4251,-4247,-4170,
+-4133,-4089,-4059,-3999,-3848,-3802,-3820,-3821,-3744,-3693,-3622,-3565,-3567,-3622,-3622,-3605,-3621,-3568,-3515,-3424,
+-3306,-3265,-3223,-3177,-3184,-3159,-3159,-3162,-3154,-3164,-3212,-3206,-3170,-3163,-3110,-3068,-3030,-2978,-2906,-2817,
+-2685,-2536,-2373,-2236,-2134,-2021,-1854,-1704,-1596,-1504,-1411,-1336,-1260,-1188,-1131,-1063,-985,-939,-905,-839,
+-811,-851,-812,-769,-759,-677,-592,-576,-559,-549,-564,-535,-473,-410,-327,-239,-177,-112,-58,0,
+68,127,201,258,277,292,289,280,282,287,295,316,346,356,373,396,428,465,509,591,
+706,833,905,929,933,940,951,981,1015,1061,1113,1159,1201,1251,1302,1363,1425,1486,1549,1607,
+1675,1732,1791,1853,1919,2002,2097,2162,2253,2344,2418,2472,2525,2553,2611,2658,2717,2785,2824,2868,
+2923,2983,3047,3114,3163,3211,3275,3356,3427,3495,3578,3628,3682,3765,3818,3855,3851,3836,3836,3850,
+3836,3823,3837,3850,3862,3880,3915,3972,4046,4119,4196,4276,4356,4441,4524,4616,4688,4758,4809,4900,
+4971,5018,5051,5052,5057,5053,5044,5074,5119,5158,5180,5191,5208,5179,5156,5139,5131,5148,5173,5184,
+5184,5170,5143,5128,5126,5108,5095,5099,5107,5096,5027,4939,4873,4858,4890,4894,4883,4891,4907,4925,
+4933,4945,4937,4904,4886,4876,4906,4960,5050,5244,5185,5135,5048,5060,5081,5149,5227,5275,5274,5258,
+5247,5281,5308,5289,5231,5197,5177,5189,5197,5212,5199,5179,5208,5259,5294,5328,5403,5504,5619,5757,
+5852,5887,5909,5868,5825,5787,5723,5709,5667,5554,5417,5197,5038,4870,4842,4965,5036,5226,5356,5376,
+5246,5246,5345,5228,5090,4926,4989,5084,5087,5107,5160,5240,5313,5363,5387,5390,5380,5358,5317,5271,
+5220,5193,5153,5115,5106,5071,5050,5039,5028,5022,5039,5071,5073,5076,5109,5157,5206,5256,5232,5198,
+5193,5212,5220,5230,5248,5243,5243,5188,5143,4978,4578,3924,3325,2798,2456,2460,2673,2862,2986,3058,
+3099,3118,3116,3094,3050,2996,2934,2872,2809,2727,2644,2573,2522,2466,2414,2359,2287,2211,2145,2077,
+2011,1953,1893,1836,1784,1736,1678,1628,1573,1534,1488,1444,1402,1367,1335,1301,1257,1228,1219,1206,
+1193,1187,1182,1167,1153,1091,1056,1036,1011,1000,993,971,938,908,861,834,799,765,718,681,
+644,593,545,514,492,464,427,400,369,336,305,279,278,274,237,205,165,152,127,124,
+140,144,14,-45,-80,-93,-48,-5,-57,-173,-247,-276,-300,-343,-370,-397,-425,-456,-484,-514,
+-543,-567,-589,-617,-632,-649,-663,-684,-709,-743,-768,-786,-804,-814,-814,-812,-813,-826,-838,-851,
+-858,-861,-861,-871,-868,-901,-909,-946,-961,-990,-1018,-1033,-1042,-1047,-1059,-1081,-1084,-1087,-1101,-1114,
+-1119,-1111,-1104,-1110,-1124,-1138,-1146,-1155,-1166,-1176,-1174,-1160,-1152,-1175,-1207,-1192,-1131,-1109,-1145,-1140,
+-1133,-1128,-1129,-1132,-1129,-1128,-1140,-1124,-1137,-1125,-1127,-1121,-1117,-1108,-1103,-1087,-1099,-1092,-1081,-1073,
+-1062,-1048,-1040,-1032,-1024,-1021,-1018,-1015,-1008,-998,-982,-964,-952,-938,-927,-903,-890,-879,-861,-843,
+-818,-806,-791,-771,-761,-748,-723,-705,-682,-658,-640,-619,-611,-592,-580,-563,-543,-527,-513,-504,
+-489,-472,-468,-468,-446,-438,-422,-420,-404,-410,-394,-386,-381,-372,-360,-348,-347,-352,-349,-361,
+-360,-367,-359,-354,-332,-312,-331,-350,-356,-353,-349,-344,-344,-343,-339,-340,-339,-342,-344,-347,
+-344,-345,-343,-342,-339,-336,-335,-335,-337,-337,-331,-316,-307,-306,-310,-313,-310,-307,-303,-302,
+-304,-300,-300,-293,-288,-278,-276,-280,-281,-282,-274,-262,-250,-244,-227,-220,-213,-206,-207,-208,
+-212,-200,-189,-193,-179,-175,-166,-153,-141,-130,-122,-108,-95,-85,-82,-75,-55,-41,-26,-18,
+-15,-6,2,6,16,34,27,24,33,45,54,66,70,84,101,109,120,133,143,158,
+171,185,199,213,228,244,254,272,286,303,321,339,360,379,395,430,443,477,488,510,
+520,590,613,553,638,808,729,652,682,733,770,788,797,809,826,848,874,899,929,970,
+1016,1056,1084,1116,1168,1239,1303,1361,1405,1443,1485,1537,1589,1635,1673,1706,1749,1806,1867,1940,
+2010,2038,2032,1994,1882,1679,1385,1223,1489,2055,2668,3173,3484,3547,3488,3494,3673,3819,3901,3889,
+4032,4183,4267,4280,4302,4319,4306,4285,4239,4253,4270,4128,3746,3235,2810,2592,2531,2462,2421,2405,
+2399,2391,2391,2372,2333,2281,2219,2162,2133,2119,2096,2055,2005,1971,1929,1862,1782,1711,1653,1605,
+1562,1518,1465,1411,1337,1237,1140,1031,930,817,713,595,443,300,171,54,-43,-104,-135,-158,
+-180,-215,-239,-263,-291,-341,-397,-458,-495,-524,-546,-556,-545,-543,-540,-532,-539,-549,-581,-605,
+-590,-576,-552,-516,-464,-392,-293,-225,-159,-203,-229,-332,-333,-280,-323,-389,-440,-518,-529,-552,
+-584,-590,-596,-606,-615,-617,-599,-535,-532,-591,-724,-823,-940,-1006,-1039,-1052,-1050,-1025,-983,-962,
+-948,-937,-939,-943,-935,-919,-896,-870,-853,-837,-826,-813,-801,-789,-779,-772,-760,-746,-741,-730,
+-718,-700,-675,-652,-631,-619,-616,-618,-616,-616,-616,-615,-614,-614,-618,-619,-616,-609,-606,-603,
+-602,-599,-595,-593,-590,-579,-567,-556,-540,-525,-504,-487,-462,-442,-415,-395,-361,-339,-313,-289,
+-256,-235,-198,-164,-133,-95,-73,-41,-3,22,54,89,126,163,191,216,255,295,334,376,
+416,434,472,506,539,570,608,638,683,721,743,791,826,851,885,913,954,956,986,1063,
+1074,1089,1148,1189,1217,1240,1249,1254,1256,1251,1258,1252,1261,1251,1257,1262,1270,1263,1279,1275,
+1285,1292,1310,1303,1316,1308,1337,1346,1346,1357,1372,1394,1414,1437,1460,1486,1511,1520,1519,1570,
+1600,1638,1657,1683,1712,1712,1729,1737,1760,1770,1784,1791,1815,1825,1852,1880,1905,1935,1962,1995,
+2026,2055,2082,2120,2158,2181,2201,2233,2269,2297,2337,2413,2470,2498,2519,2555,2608,2608,2599,2580,
+2552,2490,2388,2306,2314,2391,2418,2321,2240,2215,2216,2230,2247,2261,2271,2285,2297,2321,2349,2389,
+2427,2460,2512,2588,2701,2796,2801,2848,2955,3001,2942,2916,2932,2981,3035,3100,3138,3166,3210,3264,
+3279,3240,3165,3104,3079,2992,2880,2762,2707,2672,2635,2591,2550,2510,2468,2418,2367,2323,2289,2260,
+2221,2187,2169,2153,2152,2118,2083,2052,2014,1971,1925,1884,1859,1852,1850,1839,1813,1770,1727,1689,
+1647,1606,1581,1563,1542,1524,1524,1506,1479,1480,1461,1483,1475,1437,1346,1256,1183,1131,1107,1139,
+1077,946,831,736,672,627,589,590,594,606,623,632,622,591,543,495,404,310,256,201,
+187,149,117,77,46,38,44,67,77,84,68,35,10,-6,8,17,31,22,9,-2,
+4,-23,-71,-116,-142,-166,-63,133,257,327,372,351,352,420,484,582,618,652,658,587,
+469,361,276,218,238,133,-55,-190,-233,-253,-290,-331,-364,-400,-427,-461,-465,-472,-446,-401,
+-401,-369,-381,-341,-305,-288,-270,-265,-266,-257,-249,-234,-242,-271,-284,-304,-301,-287,-254,-267,
+-286,-290,-305,-334,-363,-394,-383,-373,-371,-381,-365,-363,-391,-413,-407,-386,-368,-379,-395,-406,
+-357,-362,-377,-379,-386,-384,-412,-415,-407,-433,-454,-468,-494,-508,-546,-562,-592,-612,-627,-653,
+-668,-665,-693,-725,-750,-762,-795,-802,-839,-892,-932,-952,-999,-1061,-1121,-1169,-1201,-1253,-1303,-1338,
+-1390,-1458,-1492,-1550,-1618,-1687,-1725,-1765,-1800,-1846,-1885,-1930,-1997,-2057,-2131,-2165,-2209,-2268,-2300,-2351,
+-2421,-2481,-2543,-2598,-2649,-2678,-2715,-2752,-2795,-2837,-2879,-2930,-2973,-3011,-3052,-3113,-3150,-3186,-3226,-3259,
+-3278,-3335,-3339,-3391,-3408,-3465,-3476,-3503,-3536,-3579,-3618,-3659,-3676,-3685,-3699,-3721,-3739,-3737,-3757,-3780,
+-3769,-3763,-3749,-3727,-3743,-3775,-3864,-3973,-4042,-4050,-4081,-4156,-4186,-4228,-4287,-4320,-4325,-4329,-4338,-4386,
+-4393,-4420,-4420,-4439,-4454,-4468,-4479,-4464,-4474,-4464,-4466,-4474,-4473,-4467,-4469,-4481,-4483,-4479,-4493,-4535,
+-4556,-4567,-4579,-4603,-4602,-4589,-4579,-4566,-4543,-4533,-4502,-4471,-4429,-4389,-4352,-4318,-4270,-4234,-4243,-4238,
+-4167,-4114,-4057,-4032,-3997,-3959,-3876,-3734,-3677,-3750,-3740,-3725,-3700,-3683,-3665,-3643,-3632,-3640,-3580,-3525,
+-3451,-3343,-3307,-3247,-3216,-3184,-3164,-3147,-3148,-3149,-3177,-3235,-3232,-3224,-3193,-3143,-3105,-3067,-3003,-2911,
+-2790,-2634,-2479,-2337,-2244,-2140,-2004,-1853,-1731,-1643,-1545,-1458,-1391,-1300,-1227,-1177,-1114,-1035,-975,-935,
+-908,-898,-884,-872,-825,-791,-683,-605,-585,-577,-570,-554,-532,-512,-466,-390,-298,-233,-166,-116,
+-83,-25,4,60,110,141,162,168,164,177,196,225,252,288,312,328,335,354,384,436,
+532,614,703,765,792,816,827,849,886,925,975,1036,1098,1171,1248,1289,1309,1336,1357,1405,
+1484,1604,1711,1802,1892,1961,2021,2078,2111,2164,2219,2289,2363,2396,2429,2529,2623,2677,2684,2712,
+2768,2835,2896,2954,3015,3072,3112,3172,3247,3317,3383,3458,3541,3584,3662,3713,3744,3755,3749,3733,
+3741,3733,3731,3731,3736,3752,3773,3808,3862,3933,4008,4091,4166,4243,4324,4434,4543,4623,4692,4732,
+4798,4893,4948,4971,4966,4963,4971,4985,4989,5018,5053,5110,5131,5171,5141,5113,5089,5081,5097,5124,
+5122,5112,5094,5071,5044,5044,5018,5017,5019,5033,5039,4986,4898,4780,4800,4894,4874,4850,4843,4861,
+4863,4885,4885,4872,4839,4823,4821,4858,4902,4957,5058,5144,5093,5042,5021,5039,5111,5155,5202,5219,
+5206,5192,5226,5271,5269,5232,5172,5143,5151,5171,5211,5223,5193,5199,5255,5280,5306,5372,5456,5539,
+5619,5710,5763,5782,5844,5799,5803,5777,5682,5634,5622,5525,5322,5199,5052,4916,4813,4762,4823,4907,
+4950,4919,4901,5020,4990,4924,4909,4991,5082,5170,5254,5289,5333,5358,5378,5384,5377,5352,5317,5283,
+5240,5204,5167,5125,5087,5078,5056,5030,5022,5020,5021,5023,5036,5056,5072,5102,5155,5232,5270,5230,
+5202,5183,5204,5224,5219,5228,5200,5180,5172,5088,4869,4345,3598,2974,2497,2373,2579,2797,2954,3050,
+3108,3139,3148,3138,3101,3049,2996,2939,2875,2809,2723,2639,2565,2510,2452,2392,2339,2271,2199,2130,
+2063,2001,1941,1883,1826,1778,1730,1675,1623,1576,1539,1496,1466,1421,1384,1342,1309,1262,1223,1204,
+1192,1180,1169,1166,1163,1146,1096,1049,1029,997,981,969,945,906,869,834,804,765,729,687,
+655,619,574,523,490,469,445,417,390,361,333,298,267,250,273,225,186,172,140,114,
+90,64,34,-11,-64,-99,-127,-132,-117,-117,-174,-247,-290,-317,-330,-348,-374,-412,-452,-477,
+-501,-529,-555,-584,-615,-644,-669,-686,-707,-734,-743,-745,-744,-741,-746,-745,-776,-800,-822,-839,
+-857,-863,-879,-887,-893,-894,-905,-931,-950,-964,-987,-1009,-1019,-1029,-1047,-1057,-1069,-1082,-1094,-1115,
+-1127,-1133,-1109,-1019,-1057,-1091,-1139,-1161,-1174,-1184,-1191,-1164,-1086,-965,-1087,-1180,-1216,-1215,-1210,-1185,
+-1170,-1159,-1149,-1141,-1121,-1126,-1123,-1120,-1111,-1125,-1123,-1108,-1111,-1109,-1100,-1096,-1090,-1085,-1082,-1086,
+-1080,-1071,-1058,-1041,-1031,-1027,-1018,-1016,-1014,-1009,-1001,-990,-981,-965,-948,-928,-917,-905,-893,-866,
+-836,-824,-813,-788,-776,-776,-760,-742,-727,-704,-672,-661,-643,-633,-612,-596,-582,-567,-551,-533,
+-525,-506,-491,-487,-476,-462,-453,-442,-432,-430,-422,-417,-396,-392,-389,-374,-340,-343,-352,-326,
+-355,-386,-384,-370,-382,-438,-368,-335,-362,-370,-364,-360,-354,-357,-358,-358,-354,-355,-353,-354,
+-356,-355,-354,-351,-349,-344,-344,-341,-342,-345,-345,-335,-327,-317,-309,-310,-309,-308,-303,-300,
+-300,-300,-300,-297,-293,-284,-269,-268,-268,-266,-271,-266,-253,-237,-227,-215,-213,-204,-203,-199,
+-199,-197,-185,-172,-171,-160,-158,-144,-134,-117,-110,-104,-91,-79,-70,-65,-55,-44,-35,-13,
+-6,-2,1,14,23,38,40,40,20,43,64,70,77,85,95,113,123,139,145,158,
+173,187,197,210,219,239,252,271,287,305,323,338,347,368,388,410,448,432,439,458,
+556,629,637,555,579,655,696,644,659,706,760,793,804,807,811,831,859,881,913,941,
+991,1036,1070,1095,1135,1191,1257,1324,1378,1422,1456,1499,1545,1593,1636,1679,1745,1784,1839,1897,
+1951,2001,2028,2012,1964,1852,1639,1342,1222,1528,2105,2708,3175,3405,3434,3409,3450,3631,3827,3794,
+3730,3898,4147,4224,4252,4308,4320,4302,4289,4252,4225,4186,4128,3823,3227,2764,2561,2477,2432,2403,
+2376,2369,2383,2381,2371,2351,2311,2260,2211,2178,2148,2109,2056,2003,1957,1904,1832,1757,1698,1651,
+1610,1566,1509,1443,1378,1311,1227,1130,1018,914,792,697,577,436,297,164,61,-22,-79,-102,
+-130,-152,-175,-193,-210,-249,-286,-328,-398,-463,-486,-501,-518,-507,-493,-481,-476,-485,-499,-509,
+-553,-546,-531,-513,-459,-393,-353,-295,-265,-276,-319,-352,-327,-324,-340,-446,-453,-486,-524,-535,
+-566,-606,-613,-592,-574,-578,-579,-542,-524,-583,-723,-878,-976,-1032,-1068,-1091,-1089,-1072,-1032,-980,
+-962,-953,-950,-947,-947,-934,-910,-884,-861,-839,-823,-810,-798,-784,-773,-761,-751,-740,-733,-729,
+-725,-717,-700,-682,-657,-637,-626,-621,-621,-620,-616,-611,-608,-609,-609,-610,-608,-605,-602,-602,
+-599,-593,-587,-582,-579,-571,-564,-553,-539,-517,-493,-470,-448,-430,-390,-377,-344,-319,-295,-266,
+-234,-209,-190,-160,-128,-100,-81,-51,-4,17,56,91,121,155,191,229,268,310,340,372,
+404,437,464,487,518,555,585,630,668,688,715,734,766,803,839,876,913,949,967,1072,
+1126,1133,1155,1176,1195,1203,1218,1224,1231,1249,1248,1240,1243,1262,1284,1302,1293,1287,1274,1262,
+1280,1295,1289,1289,1307,1312,1326,1335,1350,1369,1382,1393,1415,1441,1464,1476,1515,1533,1562,1560,
+1618,1628,1653,1658,1662,1679,1693,1718,1740,1772,1785,1797,1803,1825,1850,1874,1898,1915,1941,1964,
+1994,2033,2076,2111,2140,2170,2203,2226,2257,2296,2337,2387,2446,2491,2527,2559,2585,2622,2623,2614,
+2577,2551,2455,2371,2303,2326,2465,2611,2398,2263,2227,2221,2235,2248,2266,2280,2295,2311,2336,2374,
+2422,2466,2502,2548,2614,2711,2800,2852,2879,2970,3009,2952,2945,2956,3000,3052,3108,3115,3143,3232,
+3300,3288,3247,3180,3117,3079,2994,2906,2787,2728,2680,2648,2609,2579,2549,2511,2469,2425,2388,2362,
+2345,2335,2289,2250,2219,2212,2192,2143,2108,2077,2038,1983,1930,1896,1882,1879,1875,1855,1812,1768,
+1728,1685,1635,1603,1592,1587,1597,1620,1635,1636,1634,1636,1613,1580,1479,1331,1233,1164,1136,1128,
+1166,1132,1023,906,826,758,712,667,652,658,678,702,709,703,682,643,595,497,394,306,
+246,246,214,180,155,128,136,153,154,147,153,135,96,71,50,66,74,78,68,56,
+36,45,20,-29,-82,-108,-119,-44,118,265,336,394,371,387,462,548,612,649,673,721,
+639,510,402,333,298,309,159,5,-102,-161,-210,-255,-284,-323,-384,-421,-430,-421,-377,-350,
+-338,-325,-321,-325,-262,-246,-234,-222,-215,-206,-204,-188,-178,-191,-222,-240,-168,-221,-186,-186,
+-214,-225,-226,-245,-280,-318,-338,-343,-324,-316,-310,-324,-352,-342,-354,-330,-316,-312,-329,-335,
+-348,-344,-344,-359,-337,-327,-326,-343,-355,-349,-371,-380,-415,-441,-438,-469,-492,-521,-551,-585,
+-587,-594,-617,-635,-658,-680,-712,-732,-773,-776,-798,-854,-854,-922,-994,-1029,-1080,-1128,-1199,-1222,
+-1271,-1293,-1368,-1410,-1487,-1558,-1609,-1634,-1664,-1692,-1740,-1773,-1849,-1911,-1982,-2024,-2063,-2123,-2166,-2210,
+-2280,-2331,-2399,-2454,-2517,-2558,-2584,-2621,-2663,-2701,-2745,-2796,-2849,-2900,-2950,-2984,-3016,-3059,-3105,-3145,
+-3150,-3196,-3230,-3250,-3295,-3330,-3376,-3402,-3423,-3463,-3505,-3546,-3581,-3597,-3617,-3640,-3658,-3670,-3678,-3699,
+-3700,-3702,-3693,-3694,-3689,-3691,-3736,-3831,-3975,-3987,-3980,-4017,-4088,-4119,-4165,-4233,-4263,-4279,-4287,-4298,
+-4331,-4349,-4375,-4381,-4396,-4409,-4425,-4434,-4419,-4427,-4423,-4423,-4435,-4433,-4433,-4445,-4453,-4450,-4459,-4487,
+-4510,-4528,-4536,-4546,-4566,-4570,-4551,-4544,-4532,-4524,-4499,-4467,-4434,-4405,-4374,-4329,-4289,-4249,-4222,-4265,
+-4211,-4149,-4100,-4062,-4023,-3996,-3970,-3929,-3861,-3783,-3700,-3697,-3742,-3745,-3723,-3700,-3664,-3669,-3628,-3595,
+-3550,-3493,-3385,-3332,-3279,-3228,-3200,-3153,-3136,-3140,-3158,-3198,-3245,-3238,-3255,-3222,-3177,-3138,-3092,-3004,
+-2877,-2727,-2574,-2448,-2332,-2212,-2098,-1978,-1870,-1778,-1700,-1604,-1520,-1451,-1361,-1290,-1235,-1172,-1074,-1019,
+-973,-943,-933,-932,-910,-856,-773,-704,-638,-602,-601,-597,-568,-553,-534,-487,-412,-309,-226,-194,
+-173,-166,-124,-95,-78,-64,-38,-26,-1,27,44,81,136,189,222,254,272,275,280,300,
+355,437,509,589,636,659,687,717,731,755,793,847,907,961,997,1041,1071,1076,1080,1077,
+1127,1224,1331,1447,1578,1712,1809,1861,1909,1973,2022,2055,2128,2180,2221,2287,2386,2487,2578,2617,
+2630,2672,2732,2790,2849,2903,2959,2983,3043,3121,3214,3279,3342,3423,3499,3556,3617,3646,3651,3642,
+3623,3614,3624,3621,3610,3617,3634,3664,3701,3754,3825,3896,3987,4062,4134,4217,4327,4440,4525,4599,
+4648,4709,4801,4877,4891,4901,4895,4903,4927,4913,4935,4986,5033,5091,5123,5108,5083,5049,5024,5046,
+5073,5084,5062,5021,5001,4964,4949,4940,4932,4938,4954,4951,4910,4800,4685,4771,4899,4857,4808,4807,
+4840,4841,4862,4840,4818,4792,4771,4772,4818,4864,4888,4947,5149,5104,5014,4992,5006,5058,5106,5148,
+5172,5172,5147,5157,5199,5224,5216,5175,5128,5114,5128,5166,5206,5192,5198,5244,5263,5262,5318,5389,
+5466,5529,5589,5644,5681,5725,5785,5751,5718,5661,5605,5601,5578,5413,5337,5227,5094,5013,4939,4865,
+4853,4857,4867,4887,4961,5030,5069,5112,5195,5238,5291,5322,5355,5359,5376,5380,5372,5352,5322,5284,
+5253,5220,5172,5140,5126,5090,5067,5045,5029,5018,5009,5013,5025,5023,5044,5068,5109,5162,5222,5257,
+5218,5189,5184,5203,5214,5215,5197,5166,5146,5146,4960,4608,3990,3238,2638,2311,2439,2713,2918,3045,
+3117,3157,3177,3179,3154,3108,3055,3001,2940,2875,2802,2718,2632,2560,2500,2438,2378,2323,2261,2188,
+2119,2055,2000,1931,1872,1814,1765,1719,1668,1615,1577,1536,1508,1469,1422,1393,1336,1305,1263,1227,
+1199,1178,1166,1157,1150,1152,1137,1121,1050,1025,997,975,949,919,879,842,802,773,738,699,
+660,633,609,568,516,474,445,426,402,371,347,320,291,263,242,229,216,200,175,147,
+116,86,49,9,-24,-72,-106,-138,-160,-152,-115,-81,-215,-299,-261,-218,-178,-310,-392,-417,
+-437,-469,-511,-537,-574,-615,-651,-682,-686,-687,-696,-674,-684,-705,-725,-732,-740,-777,-808,-832,
+-850,-865,-886,-896,-901,-906,-911,-925,-937,-952,-964,-984,-994,-1012,-1032,-1041,-1051,-1064,-1084,-1098,
+-1114,-1128,-1139,-1130,-1103,-1056,-1074,-1146,-1174,-1180,-1180,-1180,-1137,-998,-861,-1040,-1103,-1185,-1217,-1227,
+-1205,-1200,-1187,-1179,-1173,-1147,-1129,-1123,-1123,-1112,-1103,-1097,-1110,-1105,-1097,-1080,-1080,-1071,-1068,-1068,
+-1068,-1076,-1076,-1061,-1043,-1034,-1027,-1019,-1009,-1003,-992,-996,-992,-978,-968,-956,-943,-927,-912,-892,
+-871,-843,-828,-816,-788,-783,-773,-763,-747,-731,-717,-698,-673,-658,-642,-625,-616,-604,-584,-574,
+-564,-547,-524,-520,-503,-487,-478,-465,-456,-449,-444,-430,-413,-414,-405,-401,-406,-410,-411,-423,
+-426,-419,-404,-392,-380,-367,-363,-390,-360,-374,-385,-374,-371,-367,-370,-375,-366,-366,-363,-362,
+-364,-363,-362,-360,-361,-357,-354,-350,-346,-342,-344,-338,-333,-327,-321,-316,-308,-303,-303,-300,
+-298,-298,-295,-291,-289,-287,-280,-269,-255,-260,-261,-261,-254,-241,-222,-211,-209,-209,-198,-190,
+-184,-186,-189,-180,-161,-162,-139,-147,-132,-118,-105,-94,-88,-71,-64,-57,-55,-48,-34,-25,
+1,8,6,8,21,27,42,49,48,53,51,54,85,96,101,108,130,130,151,162,
+173,188,198,213,225,236,248,263,285,302,316,322,336,362,371,400,425,421,439,487,
+532,545,610,586,571,771,793,634,611,673,731,779,803,809,811,818,846,876,905,933,
+972,1015,1051,1083,1118,1158,1214,1280,1342,1391,1428,1459,1498,1542,1595,1637,1688,1746,1795,1847,
+1896,1943,1983,2003,1994,1941,1828,1614,1306,1210,1553,2125,2717,3135,3292,3290,3338,3400,3588,3715,
+3636,3648,3842,4108,4199,4260,4305,4286,4286,4284,4238,4203,4149,4061,3805,3200,2760,2571,2491,2447,
+2413,2381,2377,2375,2372,2364,2355,2333,2304,2267,2229,2184,2125,2058,1992,1935,1879,1810,1746,1699,
+1652,1609,1565,1504,1436,1375,1298,1220,1125,1001,889,795,699,570,435,311,197,98,25,-25,
+-63,-115,-137,-157,-176,-180,-216,-232,-251,-315,-383,-392,-407,-420,-422,-409,-400,-427,-448,-463,
+-484,-494,-487,-481,-464,-411,-342,-316,-289,-310,-338,-344,-350,-336,-332,-427,-497,-516,-533,-513,
+-488,-534,-593,-579,-539,-563,-588,-578,-551,-578,-689,-862,-993,-1053,-1086,-1113,-1129,-1113,-1082,-1028,
+-979,-967,-964,-959,-953,-944,-925,-898,-878,-855,-835,-816,-803,-791,-775,-760,-748,-738,-732,-726,
+-720,-719,-715,-700,-680,-667,-650,-642,-638,-632,-628,-621,-618,-615,-614,-612,-608,-609,-597,-593,
+-586,-579,-564,-553,-544,-542,-534,-521,-513,-501,-483,-459,-421,-394,-387,-376,-350,-309,-282,-253,
+-219,-192,-171,-154,-130,-102,-82,-45,-16,17,42,71,108,142,184,216,254,286,319,356,
+377,418,445,490,522,550,580,602,625,640,683,711,743,783,834,883,946,989,1048,1073,
+1082,1152,1167,1158,1175,1183,1198,1208,1230,1241,1243,1255,1274,1264,1272,1272,1266,1263,1268,1278,
+1277,1278,1288,1303,1320,1338,1355,1361,1368,1379,1391,1409,1421,1424,1444,1463,1476,1503,1504,1514,
+1561,1587,1603,1621,1656,1661,1696,1719,1732,1753,1754,1773,1800,1828,1850,1838,1858,1887,1918,1957,
+1990,2025,2063,2101,2128,2161,2199,2236,2264,2297,2337,2378,2426,2474,2524,2567,2599,2612,2654,2654,
+2626,2580,2550,2476,2348,2292,2300,2390,2408,2344,2279,2254,2247,2252,2262,2274,2286,2302,2320,2349,
+2392,2443,2492,2527,2572,2629,2709,2788,2831,2848,2879,2919,2940,2960,2989,3014,3062,3106,3121,3162,
+3254,3331,3303,3255,3173,3105,3065,3004,2912,2814,2741,2691,2660,2627,2604,2582,2552,2519,2486,2459,
+2437,2415,2397,2353,2307,2273,2260,2245,2212,2178,2142,2099,2047,1999,1956,1926,1912,1899,1880,1844,
+1793,1753,1702,1658,1637,1638,1650,1682,1715,1738,1758,1718,1717,1672,1613,1504,1342,1209,1141,1123,
+1126,1164,1167,1105,1016,922,847,799,760,738,735,750,777,789,791,782,738,681,597,487,
+366,331,343,310,267,232,217,227,242,233,222,216,181,135,111,116,130,127,119,104,
+85,68,83,56,11,-28,-56,-66,-15,139,298,378,412,405,465,536,613,651,686,710,
+733,688,572,504,425,417,370,223,71,-32,-94,-159,-203,-240,-281,-339,-365,-354,-313,-292,
+-280,-269,-265,-249,-238,-235,-188,-181,-178,-165,-158,-153,-139,-117,-147,-173,-160,-159,-123,-101,
+-126,-146,-154,-168,-192,-218,-242,-266,-279,-281,-275,-276,-268,-273,-287,-300,-262,-255,-245,-248,
+-237,-250,-256,-255,-255,-273,-281,-292,-309,-320,-311,-314,-328,-349,-363,-386,-404,-433,-456,-479,
+-496,-527,-537,-547,-572,-622,-617,-638,-659,-675,-709,-736,-787,-809,-850,-902,-946,-1015,-1059,-1089,
+-1144,-1188,-1223,-1280,-1353,-1421,-1459,-1508,-1531,-1559,-1595,-1626,-1703,-1772,-1830,-1901,-1927,-1984,-2027,-2073,
+-2137,-2190,-2256,-2310,-2377,-2424,-2458,-2491,-2535,-2579,-2617,-2667,-2723,-2776,-2819,-2856,-2893,-2928,-2981,-3032,
+-3030,-3071,-3114,-3138,-3163,-3202,-3240,-3277,-3320,-3354,-3388,-3431,-3477,-3505,-3545,-3557,-3571,-3595,-3613,-3634,
+-3643,-3644,-3631,-3633,-3637,-3640,-3644,-3693,-3819,-3921,-3920,-3912,-3954,-4025,-4060,-4122,-4199,-4217,-4236,-4245,
+-4254,-4283,-4306,-4330,-4340,-4352,-4370,-4384,-4388,-4371,-4381,-4380,-4388,-4398,-4400,-4410,-4419,-4418,-4437,-4447,
+-4470,-4488,-4498,-4512,-4506,-4518,-4542,-4520,-4508,-4507,-4492,-4460,-4430,-4413,-4379,-4348,-4308,-4268,-4229,-4252,
+-4180,-4141,-4113,-4084,-4052,-4014,-3986,-3970,-3941,-3902,-3878,-3826,-3695,-3626,-3687,-3721,-3716,-3700,-3677,-3631,
+-3611,-3575,-3530,-3434,-3365,-3290,-3249,-3214,-3163,-3146,-3143,-3177,-3228,-3234,-3254,-3279,-3243,-3204,-3159,-3097,
+-2988,-2833,-2667,-2528,-2408,-2287,-2180,-2078,-1988,-1909,-1831,-1757,-1674,-1597,-1524,-1435,-1348,-1281,-1215,-1137,
+-1058,-1026,-991,-980,-975,-959,-927,-861,-782,-721,-699,-672,-638,-632,-605,-555,-504,-450,-359,-291,
+-266,-260,-237,-220,-188,-194,-199,-191,-178,-163,-143,-94,-41,23,82,138,191,216,210,204,
+223,264,337,405,464,509,529,560,582,592,601,617,665,689,697,716,755,770,773,777,
+798,857,936,1029,1138,1241,1347,1467,1569,1644,1710,1763,1802,1867,1960,2040,2124,2231,2347,2436,
+2509,2557,2592,2634,2677,2730,2792,2847,2873,2924,2995,3105,3186,3238,3308,3391,3440,3495,3525,3526,
+3515,3498,3491,3491,3482,3478,3497,3523,3549,3587,3635,3702,3784,3882,3960,4036,4119,4219,4327,4415,
+4501,4567,4638,4721,4823,4830,4845,4834,4825,4848,4848,4868,4916,4962,5029,5063,5085,5043,5004,5003,
+5002,5019,5031,5038,4990,4954,4916,4867,4839,4813,4808,4820,4821,4788,4692,4599,4670,4741,4786,4778,
+4782,4790,4818,4817,4785,4766,4752,4727,4727,4769,4809,4815,4823,4878,4929,4932,4940,4960,4994,5050,
+5090,5128,5143,5113,5098,5110,5142,5173,5171,5130,5089,5067,5089,5115,5124,5152,5199,5225,5213,5239,
+5306,5374,5427,5499,5575,5623,5670,5707,5697,5667,5654,5578,5560,5597,5490,5388,5334,5231,5172,5124,
+5081,5058,5060,5076,5098,5143,5184,5226,5266,5304,5336,5357,5372,5376,5390,5377,5366,5349,5324,5292,
+5256,5225,5195,5161,5119,5110,5081,5058,5036,5017,5000,4996,5020,5047,5044,5050,5080,5111,5138,5178,
+5225,5208,5178,5174,5204,5209,5211,5167,5140,5122,5067,4811,4335,3636,2894,2402,2330,2579,2837,3017,
+3123,3180,3206,3212,3204,3170,3120,3064,3008,2943,2869,2793,2709,2628,2558,2493,2426,2365,2311,2255,
+2186,2115,2042,1976,1913,1856,1802,1749,1704,1656,1607,1564,1530,1506,1466,1417,1385,1352,1291,1259,
+1221,1190,1169,1158,1147,1144,1136,1136,1088,1044,1021,982,962,929,894,855,821,779,749,716,
+675,640,613,592,560,517,476,441,419,394,357,330,305,278,257,234,229,214,199,172,
+138,113,72,34,-11,-49,-74,-108,-142,-170,-182,-150,-88,-204,-296,-292,-233,-154,-279,-402,
+-453,-477,-490,-490,-500,-549,-607,-623,-633,-628,-628,-652,-667,-687,-711,-734,-740,-752,-787,-819,
+-838,-855,-868,-887,-903,-911,-918,-924,-934,-943,-953,-969,-989,-993,-1008,-1027,-1043,-1055,-1071,-1086,
+-1101,-1113,-1125,-1134,-1143,-1137,-1133,-1149,-1171,-1183,-1166,-1090,-1150,-1122,-1132,-1133,-1153,-1123,-1167,-1213,
+-1210,-1221,-1215,-1209,-1214,-1199,-1185,-1161,-1162,-1153,-1151,-1137,-1133,-1109,-1088,-1099,-1087,-1074,-1064,-1053,
+-1049,-1062,-1054,-1061,-1053,-1047,-1031,-1026,-1018,-1007,-1008,-1002,-998,-979,-975,-963,-953,-942,-927,-913,
+-889,-872,-856,-841,-824,-798,-791,-780,-761,-746,-724,-712,-698,-682,-673,-662,-636,-630,-618,-598,
+-582,-573,-549,-534,-528,-505,-492,-481,-476,-465,-453,-454,-438,-429,-419,-396,-391,-409,-415,-418,
+-422,-420,-411,-409,-392,-390,-386,-377,-390,-382,-388,-398,-389,-380,-376,-378,-384,-385,-383,-377,
+-375,-371,-371,-371,-365,-369,-366,-362,-358,-354,-351,-344,-335,-327,-321,-313,-313,-308,-305,-302,
+-296,-293,-292,-290,-288,-282,-278,-268,-257,-251,-258,-256,-247,-237,-226,-218,-211,-207,-201,-191,
+-178,-171,-175,-179,-174,-150,-139,-144,-137,-122,-110,-92,-78,-63,-44,-39,-37,-43,-17,-30,
+-8,20,27,25,25,31,46,54,60,65,69,74,73,89,107,122,123,139,144,160,
+172,184,195,209,224,234,246,266,276,294,314,322,348,386,418,416,456,439,412,457,
+472,532,606,513,537,582,757,791,629,632,702,749,783,790,798,801,823,853,892,925,
+958,985,1016,1055,1100,1144,1187,1238,1296,1353,1397,1428,1456,1489,1528,1575,1646,1703,1759,1813,
+1852,1880,1923,1954,1983,1971,1916,1800,1570,1288,1221,1589,2172,2714,3046,3179,3188,3215,3281,3466,
+3586,3587,3647,3834,4093,4219,4257,4267,4274,4280,4248,4196,4140,4106,3942,3561,3130,2743,2589,2552,
+2509,2453,2413,2396,2383,2374,2373,2366,2351,2330,2307,2267,2205,2130,2051,1976,1912,1860,1811,1749,
+1703,1659,1608,1555,1495,1428,1356,1276,1194,1105,997,871,778,678,569,444,334,245,160,90,
+53,11,-40,-70,-105,-150,-181,-195,-192,-178,-218,-264,-268,-294,-318,-320,-315,-326,-336,-361,
+-385,-413,-422,-428,-429,-410,-354,-322,-319,-322,-323,-349,-355,-391,-429,-465,-496,-525,-524,-505,
+-497,-524,-579,-628,-608,-589,-608,-610,-596,-611,-668,-817,-949,-1043,-1096,-1135,-1157,-1152,-1122,-1066,
+-1009,-985,-965,-963,-960,-949,-935,-919,-898,-874,-848,-830,-815,-800,-784,-771,-756,-741,-735,-731,
+-725,-721,-718,-713,-701,-684,-666,-658,-648,-641,-630,-621,-616,-612,-612,-605,-595,-584,-593,-574,
+-570,-567,-555,-550,-539,-531,-525,-513,-510,-498,-480,-459,-438,-421,-395,-365,-345,-340,-316,-286,
+-259,-231,-190,-151,-121,-90,-54,-37,-14,10,46,76,105,145,174,202,244,278,323,360,
+394,413,437,450,469,499,539,582,615,650,696,741,780,813,858,900,936,981,1016,1064,
+1099,1094,1164,1159,1175,1201,1181,1207,1214,1222,1242,1252,1257,1262,1263,1267,1285,1307,1300,1300,
+1289,1293,1303,1294,1305,1319,1323,1341,1358,1377,1376,1382,1383,1392,1421,1441,1457,1478,1518,1538,
+1553,1583,1605,1618,1630,1623,1636,1656,1676,1708,1724,1746,1777,1804,1824,1838,1870,1893,1930,1970,
+2000,2023,2046,2076,2105,2140,2173,2205,2241,2279,2324,2370,2413,2452,2503,2557,2597,2648,2669,2689,
+2694,2646,2596,2559,2502,2377,2298,2293,2318,2325,2312,2293,2288,2284,2285,2288,2294,2301,2313,2329,
+2357,2401,2452,2508,2540,2582,2630,2693,2785,2820,2823,2862,2911,2944,2973,3012,3045,3081,3127,3169,
+3230,3323,3337,3300,3241,3156,3081,3030,2976,2900,2820,2743,2709,2679,2646,2620,2600,2571,2558,2547,
+2529,2504,2462,2429,2393,2346,2323,2303,2288,2267,2239,2203,2164,2120,2072,2029,1993,1964,1935,1907,
+1871,1813,1750,1699,1667,1687,1704,1721,1772,1805,1835,1832,1776,1751,1697,1635,1520,1331,1189,1129,
+1104,1107,1163,1232,1198,1119,1020,936,883,851,823,806,823,846,864,871,861,811,762,676,
+549,455,429,444,401,341,289,286,304,309,306,288,260,226,191,181,182,186,177,160,
+144,117,106,124,105,63,31,7,-15,8,181,366,420,439,510,607,663,706,718,740,
+770,777,733,660,610,505,498,382,264,121,24,-52,-76,-136,-174,-208,-253,-258,-250,-245,
+-234,-222,-210,-197,-188,-171,-159,-170,-143,-125,-118,-113,-104,-91,-93,-103,-157,-104,-84,-51,
+-57,-66,-74,-98,-120,-142,-167,-190,-207,-217,-221,-222,-223,-218,-222,-228,-226,-204,-215,-195,
+-194,-205,-192,-189,-202,-195,-205,-237,-248,-267,-268,-262,-287,-285,-297,-309,-332,-344,-362,-383,
+-415,-423,-424,-460,-500,-509,-521,-575,-598,-620,-631,-640,-661,-679,-760,-760,-825,-886,-920,-972,
+-1003,-1073,-1110,-1140,-1198,-1291,-1343,-1368,-1397,-1438,-1457,-1520,-1573,-1637,-1697,-1768,-1793,-1842,-1890,-1937,
+-1987,-2040,-2112,-2167,-2222,-2290,-2335,-2367,-2408,-2449,-2501,-2548,-2603,-2646,-2676,-2731,-2779,-2816,-2862,-2907,
+-2932,-2961,-3001,-3029,-3056,-3087,-3114,-3160,-3202,-3226,-3273,-3316,-3361,-3401,-3442,-3460,-3500,-3522,-3539,-3560,
+-3573,-3579,-3582,-3571,-3549,-3566,-3590,-3606,-3657,-3781,-3848,-3856,-3854,-3901,-3975,-4017,-4082,-4164,-4172,-4186,
+-4194,-4203,-4234,-4255,-4291,-4298,-4303,-4327,-4339,-4347,-4326,-4339,-4346,-4353,-4364,-4376,-4387,-4398,-4414,-4420,
+-4441,-4453,-4456,-4463,-4468,-4472,-4486,-4502,-4481,-4479,-4477,-4452,-4424,-4400,-4379,-4355,-4318,-4289,-4244,-4246,
+-4228,-4127,-4124,-4112,-4080,-4046,-4009,-3976,-3947,-3925,-3907,-3887,-3867,-3830,-3720,-3597,-3645,-3672,-3719,-3687,
+-3664,-3652,-3617,-3563,-3472,-3376,-3299,-3246,-3205,-3178,-3158,-3175,-3221,-3248,-3240,-3309,-3292,-3254,-3214,-3163,
+-3076,-2953,-2807,-2650,-2495,-2365,-2260,-2158,-2072,-2006,-1947,-1885,-1820,-1742,-1665,-1610,-1526,-1429,-1338,-1275,
+-1226,-1163,-1104,-1069,-1055,-1038,-1016,-999,-957,-878,-803,-756,-695,-642,-608,-541,-484,-458,-442,-398,
+-378,-350,-322,-302,-283,-275,-278,-291,-296,-281,-268,-254,-219,-164,-105,-39,39,99,135,123,
+106,131,181,249,318,368,398,423,449,454,464,470,477,495,490,476,481,504,529,560,
+574,617,680,754,840,925,1012,1096,1190,1273,1336,1387,1458,1537,1628,1752,1884,2001,2105,2211,
+2311,2391,2449,2495,2537,2577,2618,2665,2731,2799,2833,2874,2977,3073,3147,3205,3269,3315,3364,3392,
+3387,3373,3369,3352,3337,3342,3353,3385,3414,3447,3471,3516,3591,3688,3788,3866,3941,4021,4118,4214,
+4314,4405,4482,4562,4640,4705,4732,4768,4780,4770,4782,4817,4847,4845,4890,4947,5009,5056,5051,4981,
+4973,4959,4966,4964,4979,4976,4936,4891,4843,4765,4683,4640,4651,4675,4633,4548,4503,4534,4605,4665,
+4705,4731,4742,4741,4740,4715,4698,4695,4687,4686,4698,4742,4745,4772,4800,4809,4830,4866,4915,4949,
+4994,5042,5103,5113,5091,5065,5053,5066,5093,5117,5098,5058,5030,5018,5032,5048,5088,5147,5181,5177,
+5181,5242,5296,5349,5419,5499,5555,5601,5627,5643,5632,5632,5564,5531,5567,5577,5469,5415,5335,5268,
+5255,5221,5197,5208,5222,5236,5277,5297,5317,5345,5360,5381,5389,5385,5378,5373,5361,5342,5319,5295,
+5266,5234,5198,5181,5157,5114,5090,5072,5051,5019,4999,4984,4983,4984,5027,5045,5057,5073,5091,5136,
+5215,5234,5199,5168,5170,5200,5203,5198,5136,5087,5050,4935,4632,4109,3363,2663,2338,2455,2729,2952,
+3102,3190,3236,3248,3243,3225,3185,3134,3076,3016,2943,2858,2776,2699,2627,2558,2490,2414,2351,2292,
+2243,2185,2112,2039,1975,1910,1848,1787,1733,1689,1648,1602,1557,1524,1496,1467,1417,1364,1346,1274,
+1244,1208,1179,1154,1141,1132,1124,1117,1112,1083,1037,1012,982,951,929,917,840,802,760,730,
+698,658,630,604,576,545,508,470,443,424,404,365,322,296,271,250,233,216,210,236,
+154,123,94,63,21,-10,-58,-79,-106,-138,-171,-195,-207,-220,-254,-299,-318,-310,-318,-348,
+-424,-478,-509,-506,-414,-330,-411,-512,-558,-596,-613,-629,-653,-671,-694,-721,-746,-746,-764,-797,
+-823,-836,-851,-860,-889,-897,-907,-918,-933,-944,-954,-965,-982,-998,-1001,-1015,-1031,-1044,-1058,-1077,
+-1093,-1109,-1116,-1129,-1137,-1151,-1158,-1159,-1179,-1194,-1195,-1191,-1176,-1185,-1195,-1213,-1227,-1224,-1187,-1185,
+-1223,-1161,-1199,-1187,-1221,-1220,-1215,-1212,-1189,-1155,-1142,-1158,-1132,-1123,-1134,-1109,-1098,-1099,-1086,-1065,
+-1060,-1070,-1055,-1062,-1050,-1048,-1047,-1042,-1030,-1019,-1005,-1007,-1000,-989,-975,-966,-954,-945,-931,-922,
+-902,-887,-875,-855,-847,-835,-809,-802,-785,-763,-746,-729,-712,-707,-690,-675,-665,-641,-635,-615,
+-600,-584,-575,-555,-544,-529,-516,-500,-492,-486,-474,-466,-459,-450,-433,-430,-429,-428,-431,-431,
+-426,-419,-417,-417,-416,-400,-399,-403,-412,-389,-379,-403,-411,-402,-392,-386,-392,-397,-399,-394,
+-391,-391,-385,-383,-383,-375,-372,-371,-369,-369,-360,-356,-348,-338,-328,-319,-316,-311,-308,-306,
+-304,-298,-293,-287,-282,-282,-277,-275,-264,-252,-243,-248,-245,-238,-225,-215,-206,-202,-195,-184,
+-171,-161,-157,-153,-153,-147,-134,-122,-115,-111,-104,-88,-68,-51,-34,-20,-13,-23,-32,17,
+20,6,28,38,38,37,46,55,69,71,80,87,81,91,98,119,142,146,145,172,
+178,192,202,211,227,243,256,262,272,285,302,332,355,353,375,405,428,421,411,434,
+464,494,511,533,548,620,666,697,633,611,655,725,757,770,777,786,797,825,867,908,
+949,979,1000,1032,1074,1123,1167,1209,1256,1310,1362,1401,1429,1446,1477,1510,1567,1670,1748,1774,
+1826,1861,1877,1904,1937,1956,1939,1890,1772,1535,1281,1271,1668,2187,2740,3072,3137,3101,3148,3251,
+3426,3586,3646,3727,3904,4119,4226,4232,4278,4265,4293,4224,4179,4157,3986,3689,3253,2898,2722,2662,
+2623,2548,2475,2439,2410,2390,2379,2370,2374,2370,2352,2314,2271,2206,2131,2052,1976,1911,1858,1812,
+1760,1715,1674,1621,1560,1498,1428,1348,1262,1160,1061,955,841,747,666,577,472,373,294,227,
+156,120,74,29,-4,-40,-83,-151,-192,-179,-151,-107,-119,-118,-158,-185,-191,-187,-213,-225,
+-239,-273,-321,-348,-369,-380,-351,-315,-312,-322,-339,-368,-423,-414,-429,-443,-488,-511,-520,-517,
+-533,-590,-639,-670,-677,-694,-708,-708,-709,-715,-734,-814,-916,-1007,-1074,-1120,-1156,-1172,-1163,-1118,
+-1047,-994,-975,-966,-958,-948,-940,-927,-919,-904,-876,-851,-837,-826,-808,-788,-777,-767,-753,-746,
+-738,-730,-717,-710,-703,-691,-675,-660,-638,-627,-618,-613,-611,-609,-606,-600,-589,-586,-578,-571,
+-570,-563,-558,-549,-540,-527,-510,-492,-479,-476,-465,-445,-425,-395,-387,-375,-342,-309,-297,-268,
+-242,-200,-197,-175,-137,-107,-81,-48,-13,16,42,73,101,129,153,186,213,247,282,315,
+344,387,437,470,502,541,574,614,648,685,721,756,793,825,847,892,919,942,971,1031,
+1095,1151,1128,1172,1191,1211,1200,1208,1201,1214,1235,1248,1251,1265,1269,1292,1286,1280,1285,1287,
+1295,1298,1301,1310,1316,1323,1341,1327,1353,1361,1376,1390,1405,1414,1423,1460,1483,1502,1524,1552,
+1576,1589,1585,1577,1585,1604,1617,1643,1668,1693,1708,1719,1734,1769,1807,1846,1870,1918,1951,1983,
+2004,2028,2056,2088,2112,2135,2161,2186,2215,2243,2273,2309,2354,2412,2459,2508,2571,2626,2660,2699,
+2728,2724,2703,2620,2574,2526,2438,2335,2303,2307,2315,2315,2309,2311,2317,2319,2316,2317,2321,2329,
+2340,2361,2400,2453,2504,2546,2584,2631,2699,2797,2892,2873,2888,2930,2955,2964,3021,3071,3106,3152,
+3196,3260,3332,3344,3301,3238,3153,3076,3022,2960,2889,2824,2769,2732,2703,2669,2641,2623,2602,2599,
+2596,2577,2538,2498,2462,2424,2371,2350,2334,2313,2294,2282,2263,2241,2198,2155,2115,2071,2038,1991,
+1933,1887,1827,1759,1714,1689,1712,1772,1817,1882,1918,1916,1906,1853,1826,1744,1664,1574,1379,1246,
+1169,1134,1144,1211,1293,1287,1206,1103,1012,956,915,892,879,892,912,932,933,925,894,833,
+730,620,552,532,526,465,396,347,346,367,380,371,343,301,276,258,250,246,241,225,
+200,181,169,157,175,161,120,84,54,23,10,180,401,470,544,663,735,763,764,764,
+830,828,748,706,729,708,540,508,365,266,136,40,-17,-52,-85,-129,-163,-167,-180,-195,
+-198,-185,-169,-152,-140,-125,-117,-114,-102,-113,-88,-66,-71,-62,-64,-65,-94,-76,-51,-26,
+-20,-14,-5,-29,-45,-79,-106,-132,-148,-163,-164,-161,-164,-164,-164,-161,-167,-166,-156,-151,
+-151,-156,-147,-151,-148,-156,-158,-172,-187,-184,-203,-212,-224,-233,-235,-250,-264,-269,-284,-313,
+-328,-349,-347,-384,-404,-409,-440,-473,-494,-516,-539,-557,-606,-617,-618,-681,-689,-743,-801,-842,
+-907,-950,-978,-1020,-1075,-1134,-1203,-1229,-1268,-1286,-1335,-1391,-1443,-1491,-1561,-1636,-1647,-1702,-1758,-1805,
+-1849,-1902,-1970,-2029,-2083,-2146,-2205,-2241,-2282,-2325,-2373,-2420,-2467,-2511,-2555,-2600,-2657,-2699,-2741,-2793,
+-2828,-2852,-2885,-2924,-2946,-2975,-3005,-3041,-3092,-3108,-3157,-3199,-3242,-3293,-3328,-3374,-3403,-3439,-3465,-3485,
+-3503,-3509,-3514,-3521,-3512,-3491,-3492,-3492,-3534,-3612,-3727,-3767,-3802,-3807,-3859,-3938,-3986,-4041,-4113,-4122,
+-4130,-4139,-4151,-4183,-4206,-4240,-4256,-4259,-4283,-4296,-4303,-4287,-4298,-4314,-4325,-4335,-4353,-4370,-4387,-4399,
+-4406,-4414,-4433,-4434,-4422,-4437,-4438,-4442,-4461,-4448,-4449,-4435,-4409,-4388,-4368,-4344,-4317,-4295,-4262,-4225,
+-4252,-4130,-4115,-4118,-4099,-4070,-4033,-4006,-3980,-3954,-3920,-3883,-3857,-3837,-3831,-3816,-3749,-3611,-3637,-3685,
+-3702,-3697,-3678,-3660,-3602,-3499,-3380,-3299,-3245,-3225,-3204,-3187,-3205,-3251,-3268,-3314,-3339,-3308,-3261,-3206,
+-3117,-3017,-2905,-2781,-2614,-2475,-2354,-2245,-2144,-2079,-2032,-1989,-1950,-1885,-1803,-1723,-1692,-1626,-1515,-1416,
+-1353,-1295,-1254,-1223,-1190,-1157,-1134,-1112,-1083,-1036,-964,-895,-823,-752,-678,-600,-521,-479,-459,-453,
+-443,-423,-389,-358,-350,-343,-345,-351,-352,-367,-364,-351,-339,-305,-261,-216,-156,-47,29,53,
+29,17,29,92,161,208,262,303,324,332,347,371,377,387,398,384,365,363,379,400,
+425,476,533,596,656,726,802,871,929,1002,1078,1146,1211,1280,1382,1480,1580,1722,1870,2004,
+2108,2196,2275,2341,2394,2448,2503,2541,2566,2622,2697,2757,2775,2831,2941,3038,3091,3143,3185,3226,
+3251,3250,3239,3225,3207,3217,3233,3249,3277,3303,3335,3370,3424,3501,3590,3678,3754,3842,3934,4029,
+4115,4217,4313,4393,4475,4555,4612,4656,4693,4726,4721,4719,4749,4785,4787,4826,4874,4933,4971,5011,
+4964,4925,4922,4925,4915,4912,4913,4911,4860,4806,4729,4598,4500,4485,4467,4420,4424,4446,4496,4513,
+4538,4606,4653,4662,4659,4650,4641,4639,4636,4633,4635,4645,4671,4689,4820,4957,4835,4789,4828,4856,
+4894,4937,4987,5057,5085,5071,5039,5010,4999,5018,5053,5052,5023,4990,4967,4953,4972,5013,5087,5150,
+5155,5134,5181,5219,5283,5339,5422,5483,5524,5553,5561,5584,5591,5544,5491,5487,5584,5454,5368,5322,
+5316,5330,5302,5280,5307,5306,5310,5320,5359,5354,5374,5386,5392,5386,5379,5375,5354,5332,5309,5288,
+5263,5238,5210,5175,5172,5128,5098,5073,5050,5026,4993,4978,4967,4970,4975,5002,5029,5054,5086,5104,
+5149,5210,5229,5189,5162,5168,5186,5183,5149,5106,5010,4936,4796,4463,3864,3133,2567,2403,2607,2863,
+3055,3177,3252,3287,3292,3273,3244,3197,3143,3085,3021,2944,2867,2804,2694,2628,2563,2491,2410,2347,
+2278,2231,2173,2110,2042,1977,1912,1843,1775,1721,1676,1630,1587,1554,1524,1499,1485,1419,1368,1359,
+1277,1239,1202,1161,1130,1124,1122,1111,1112,1097,1072,1036,1001,999,940,912,873,833,789,745,
+716,695,645,618,595,563,534,499,466,445,445,470,411,337,289,267,249,210,199,172,
+161,141,120,112,42,15,-12,-43,-69,-92,-123,-158,-191,-225,-254,-276,-301,-332,-351,-375,
+-379,-374,-455,-485,-478,-412,-289,-319,-428,-552,-560,-608,-631,-650,-667,-693,-727,-757,-756,-782,
+-817,-832,-836,-846,-857,-884,-886,-894,-910,-928,-945,-959,-976,-994,-989,-1014,-1030,-1043,-1054,-1066,
+-1085,-1106,-1110,-1128,-1140,-1147,-1158,-1157,-1167,-1189,-1198,-1207,-1201,-1212,-1226,-1231,-1241,-1247,-1246,-1243,
+-1245,-1252,-1243,-1222,-1206,-1208,-1220,-1219,-1215,-1211,-1208,-1197,-1195,-1172,-1116,-1139,-1130,-1115,-1118,-1097,
+-1099,-1083,-1067,-1083,-1074,-1044,-1043,-1029,-1027,-1037,-1021,-1018,-1019,-1010,-998,-983,-969,-963,-948,-942,
+-925,-906,-892,-880,-864,-859,-827,-822,-793,-784,-767,-747,-732,-719,-704,-695,-662,-667,-649,-633,
+-617,-604,-595,-575,-561,-551,-537,-535,-519,-506,-499,-479,-476,-471,-457,-454,-442,-444,-456,-453,
+-445,-440,-428,-435,-433,-425,-419,-421,-423,-403,-418,-398,-408,-423,-414,-407,-403,-405,-407,-409,
+-406,-404,-400,-393,-392,-386,-386,-376,-375,-375,-373,-369,-362,-355,-346,-336,-325,-317,-312,-306,
+-302,-299,-294,-291,-282,-281,-276,-275,-270,-259,-244,-238,-232,-225,-220,-200,-190,-186,-182,-171,
+-158,-146,-138,-132,-127,-124,-121,-112,-92,-102,-89,-83,-67,-51,-36,-19,-10,-6,-21,-15,
+13,15,32,36,41,48,55,58,67,74,93,96,104,97,104,135,135,157,166,170,
+210,194,207,220,229,245,256,266,271,284,298,322,357,365,343,342,365,396,547,482,
+420,461,524,577,526,537,613,640,601,593,635,691,742,762,771,789,784,805,840,883,
+923,968,987,1008,1036,1078,1130,1177,1216,1259,1312,1361,1400,1426,1446,1470,1514,1579,1661,1726,
+1786,1832,1849,1873,1893,1916,1921,1905,1858,1740,1514,1266,1325,1763,2285,2924,3239,3272,3161,3169,
+3288,3459,3623,3771,3865,4015,4130,4184,4218,4259,4262,4286,4255,4179,4155,3849,3442,3097,2824,2829,
+2781,2656,2556,2483,2448,2430,2410,2397,2388,2387,2382,2364,2320,2273,2215,2141,2066,2000,1939,1886,
+1839,1790,1738,1690,1645,1588,1521,1446,1360,1262,1152,1046,930,832,753,671,601,519,436,358,
+281,218,175,128,85,48,12,-20,-81,-137,-144,-94,-25,0,-11,0,-11,-25,-37,-78,
+-96,-111,-145,-196,-264,-334,-367,-360,-340,-324,-368,-452,-484,-463,-467,-455,-476,-505,-514,-551,
+-579,-619,-679,-716,-747,-778,-811,-835,-833,-846,-876,-908,-948,-1002,-1057,-1094,-1120,-1135,-1139,-1137,
+-1111,-1043,-992,-970,-960,-948,-945,-939,-928,-918,-900,-882,-866,-852,-843,-825,-798,-786,-774,-759,
+-754,-738,-722,-699,-675,-666,-657,-644,-631,-621,-615,-612,-608,-607,-601,-596,-588,-579,-577,-571,
+-563,-561,-551,-542,-532,-520,-506,-494,-478,-465,-467,-449,-418,-407,-388,-370,-334,-292,-249,-225,
+-193,-157,-135,-117,-91,-61,-32,-15,5,37,64,94,132,152,186,221,252,285,324,360,
+396,425,454,493,527,560,590,620,660,686,726,752,771,807,841,873,894,936,973,996,
+1046,1104,1147,1163,1163,1212,1208,1222,1226,1217,1234,1248,1255,1275,1280,1281,1284,1289,1302,1308,
+1305,1308,1326,1327,1339,1358,1369,1370,1382,1400,1409,1416,1421,1427,1437,1446,1463,1479,1504,1527,
+1553,1570,1586,1608,1630,1648,1658,1667,1681,1680,1704,1739,1765,1797,1825,1860,1887,1918,1954,1982,
+2012,2044,2056,2088,2108,2130,2157,2184,2204,2233,2259,2289,2318,2353,2400,2452,2512,2571,2623,2668,
+2712,2749,2769,2737,2669,2592,2531,2470,2399,2334,2319,2327,2333,2333,2337,2343,2347,2343,2342,2343,
+2348,2352,2363,2394,2441,2488,2532,2571,2629,2704,2799,2909,2934,2935,2964,2986,3000,3047,3086,3131,
+3193,3238,3301,3366,3346,3308,3243,3160,3076,3015,2962,2896,2832,2781,2749,2723,2697,2671,2658,2639,
+2641,2628,2602,2571,2538,2501,2450,2401,2375,2358,2330,2315,2310,2303,2296,2268,2225,2190,2153,2115,
+2062,1989,1934,1885,1825,1764,1739,1769,1839,1926,1945,1983,1994,1973,1971,1847,1770,1717,1623,1475,
+1310,1230,1197,1201,1249,1314,1367,1290,1189,1099,1035,981,961,953,959,969,979,992,997,960,
+883,780,685,623,598,582,500,438,423,425,433,444,424,387,346,329,315,310,301,293,
+281,254,237,232,217,216,216,180,139,101,61,42,216,447,540,668,755,786,805,792,
+791,830,849,791,707,693,698,553,523,356,243,153,65,16,-9,-46,-62,-66,-111,-138,
+-155,-147,-127,-106,-86,-74,-60,-54,-57,-59,-47,-54,-28,-26,-36,-46,-41,-38,-9,-1,
+5,8,26,15,6,-6,-35,-65,-85,-100,-112,-114,-108,-104,-97,-104,-109,-112,-112,-95,
+-91,-102,-96,-91,-91,-102,-101,-104,-108,-113,-126,-153,-168,-164,-183,-187,-192,-203,-208,-224,
+-238,-261,-257,-302,-302,-329,-380,-389,-406,-416,-457,-490,-520,-532,-546,-556,-596,-650,-666,-726,
+-791,-823,-853,-889,-957,-996,-1056,-1093,-1137,-1158,-1220,-1259,-1323,-1368,-1416,-1498,-1552,-1563,-1628,-1675,
+-1703,-1769,-1822,-1873,-1950,-2011,-2068,-2101,-2148,-2195,-2246,-2299,-2335,-2382,-2422,-2471,-2533,-2589,-2630,-2669,
+-2690,-2716,-2758,-2802,-2837,-2865,-2897,-2928,-2973,-3000,-3036,-3081,-3117,-3169,-3213,-3248,-3295,-3334,-3374,-3402,
+-3425,-3443,-3453,-3457,-3459,-3453,-3436,-3419,-3431,-3475,-3550,-3645,-3665,-3751,-3770,-3828,-3904,-3944,-3987,-4052,
+-4065,-4072,-4077,-4094,-4127,-4152,-4188,-4212,-4216,-4240,-4254,-4266,-4254,-4266,-4289,-4290,-4308,-4336,-4365,-4367,
+-4374,-4380,-4378,-4392,-4403,-4404,-4409,-4411,-4408,-4411,-4414,-4407,-4390,-4375,-4353,-4333,-4311,-4292,-4265,-4225,
+-4216,-4200,-4118,-4125,-4101,-4072,-4049,-4025,-4010,-3983,-3947,-3914,-3872,-3834,-3808,-3793,-3801,-3813,-3764,-3653,
+-3641,-3667,-3688,-3704,-3676,-3596,-3525,-3430,-3359,-3298,-3280,-3253,-3232,-3233,-3260,-3265,-3337,-3339,-3319,-3267,
+-3196,-3090,-2984,-2872,-2725,-2589,-2466,-2344,-2228,-2145,-2092,-2063,-2039,-2008,-1945,-1864,-1785,-1750,-1705,-1614,
+-1500,-1428,-1371,-1335,-1313,-1308,-1292,-1254,-1219,-1183,-1130,-1060,-977,-895,-802,-720,-638,-573,-529,-514,
+-499,-499,-489,-460,-443,-412,-401,-418,-441,-450,-461,-450,-422,-404,-377,-341,-300,-236,-134,-61,
+-28,-38,-55,-74,-31,12,49,123,194,224,240,271,310,324,332,333,326,305,291,304,
+320,349,400,468,537,612,659,712,765,830,897,974,1038,1101,1187,1274,1365,1445,1558,1709,
+1886,2001,2083,2157,2234,2299,2344,2392,2447,2488,2525,2586,2649,2694,2718,2808,2916,2976,3020,3062,
+3099,3114,3112,3092,3078,3092,3108,3118,3147,3179,3204,3237,3278,3346,3414,3501,3587,3664,3757,3845,
+3930,4008,4106,4213,4299,4376,4458,4515,4569,4625,4650,4667,4661,4675,4707,4712,4750,4800,4861,4901,
+4943,4964,4922,4883,4871,4861,4849,4845,4841,4825,4797,4729,4537,4380,4334,4322,4325,4353,4396,4464,
+4447,4418,4451,4544,4581,4575,4571,4584,4588,4572,4571,4576,4596,4618,4636,4707,4813,4768,4746,4787,
+4804,4848,4882,4923,4995,5040,5040,5016,4989,4965,4967,4988,4995,4981,4955,4916,4894,4906,4942,5016,
+5090,5111,5083,5100,5154,5237,5330,5355,5401,5440,5475,5495,5501,5516,5508,5444,5422,5444,5483,5350,
+5329,5384,5359,5350,5329,5347,5345,5354,5347,5399,5375,5371,5378,5370,5372,5356,5339,5321,5306,5278,
+5253,5228,5206,5181,5153,5135,5108,5085,5057,5036,5006,4977,4960,4957,4960,4973,5024,5033,5040,5056,
+5086,5139,5206,5208,5180,5150,5149,5168,5156,5112,5056,4960,4857,4660,4288,3637,3028,2571,2505,2746,
+2974,3142,3245,3307,3336,3331,3302,3262,3210,3157,3097,3025,2943,2870,2794,2698,2633,2568,2494,2407,
+2336,2286,2216,2161,2102,2037,1976,1912,1840,1774,1717,1664,1613,1574,1550,1528,1496,1464,1418,1370,
+1357,1276,1236,1187,1142,1109,1105,1099,1098,1092,1083,1057,1024,993,985,937,903,870,840,792,
+748,703,659,627,596,573,548,515,476,446,433,448,490,429,345,293,263,234,208,187,
+161,142,182,139,98,47,25,-4,-39,-74,-95,-126,-162,-182,-216,-256,-288,-318,-354,-368,
+-377,-386,-344,-343,-319,-375,-371,-312,-373,-434,-476,-521,-570,-592,-603,-634,-669,-717,-747,-753,
+-788,-821,-833,-838,-851,-857,-874,-883,-895,-914,-933,-947,-962,-979,-1008,-1014,-1028,-1043,-1056,-1069,
+-1081,-1093,-1106,-1118,-1123,-1138,-1152,-1148,-1157,-1172,-1192,-1202,-1209,-1210,-1217,-1237,-1237,-1241,-1244,-1238,
+-1243,-1245,-1252,-1253,-1247,-1239,-1235,-1239,-1234,-1224,-1215,-1207,-1210,-1196,-1184,-1181,-1161,-1152,-1148,-1118,
+-1124,-1121,-1115,-1060,-1011,-1038,-1067,-1035,-1039,-1033,-1029,-1035,-1020,-1015,-1014,-1006,-989,-973,-967,-946,
+-943,-926,-903,-904,-883,-864,-859,-836,-821,-804,-788,-773,-766,-745,-730,-715,-703,-684,-661,-643,
+-649,-629,-616,-608,-587,-574,-576,-554,-541,-532,-513,-507,-502,-483,-482,-498,-478,-479,-484,-482,
+-472,-465,-458,-452,-454,-451,-447,-438,-450,-434,-436,-411,-412,-423,-432,-424,-418,-416,-417,-422,
+-424,-421,-417,-408,-402,-399,-397,-395,-392,-386,-383,-381,-375,-366,-356,-350,-340,-328,-318,-309,
+-301,-294,-289,-287,-280,-275,-273,-267,-266,-255,-243,-223,-214,-218,-207,-197,-184,-170,-164,-157,
+-148,-134,-127,-117,-113,-110,-108,-103,-95,-86,-77,-64,-72,-65,-50,-32,-14,-4,-13,-18,
+19,5,21,48,51,54,68,77,78,85,87,103,117,123,127,127,169,148,165,182,
+197,206,212,221,223,231,237,254,270,297,333,347,323,320,328,338,379,401,443,481,
+466,429,493,536,550,550,551,620,602,590,619,669,716,752,763,771,787,798,817,860,
+902,942,970,991,1006,1029,1073,1130,1179,1205,1242,1293,1344,1394,1425,1448,1473,1520,1594,1673,
+1748,1809,1839,1847,1854,1872,1893,1890,1876,1822,1714,1500,1267,1362,1816,2379,3081,3448,3406,3254,
+3281,3375,3564,3713,3870,3963,4096,4111,4156,4224,4220,4284,4272,4254,4196,4120,3759,3315,3078,2866,
+2958,2865,2665,2561,2485,2452,2454,2445,2434,2425,2417,2407,2381,2341,2291,2232,2162,2091,2034,1978,
+1927,1876,1824,1773,1726,1673,1610,1543,1463,1371,1271,1163,1046,934,856,780,697,618,548,478,
+414,332,280,231,180,127,95,75,57,13,-53,-56,-48,6,67,106,148,181,178,151,
+103,56,10,-37,-88,-204,-356,-401,-400,-389,-400,-432,-465,-473,-477,-458,-456,-474,-491,-532,
+-588,-646,-705,-759,-810,-853,-894,-929,-948,-955,-967,-1002,-1027,-1039,-1064,-1102,-1113,-1119,-1109,-1094,
+-1084,-1073,-1037,-998,-965,-955,-951,-943,-931,-917,-899,-883,-870,-855,-845,-827,-808,-789,-779,-765,
+-753,-735,-719,-695,-668,-643,-636,-634,-627,-619,-615,-612,-607,-604,-597,-593,-582,-572,-567,-568,
+-563,-555,-541,-519,-501,-485,-478,-450,-440,-430,-389,-398,-379,-345,-314,-280,-279,-242,-201,-169,
+-142,-98,-72,-51,-25,-2,21,48,80,105,121,157,183,199,233,253,285,313,333,370,
+394,428,465,499,533,571,603,646,673,692,721,750,773,818,849,877,903,928,970,1007,
+1037,1078,1141,1184,1209,1180,1206,1230,1240,1232,1246,1244,1245,1256,1260,1283,1298,1308,1311,1313,
+1311,1313,1323,1340,1345,1350,1366,1368,1375,1379,1386,1394,1392,1408,1427,1452,1466,1485,1501,1525,
+1543,1561,1581,1593,1604,1615,1647,1667,1684,1707,1732,1760,1784,1822,1860,1877,1893,1924,1954,1992,
+1993,2013,2038,2062,2081,2112,2145,2174,2191,2212,2243,2272,2302,2335,2378,2405,2443,2509,2562,2614,
+2684,2738,2759,2761,2739,2735,2617,2541,2497,2416,2355,2333,2345,2355,2356,2359,2363,2365,2364,2364,
+2360,2360,2360,2363,2389,2431,2476,2524,2574,2639,2713,2797,2915,2989,2975,2990,3019,3036,3074,3108,
+3149,3205,3233,3294,3353,3358,3319,3265,3179,3090,3021,2967,2913,2848,2796,2763,2741,2719,2701,2688,
+2681,2673,2652,2630,2609,2582,2541,2474,2425,2395,2377,2355,2339,2343,2334,2324,2300,2270,2254,2218,
+2183,2128,2072,2014,1961,1918,1878,1850,1873,1949,2015,2021,2044,2017,1940,1888,1828,1830,1823,1754,
+1593,1475,1400,1305,1270,1284,1334,1414,1372,1261,1169,1109,1063,1036,1031,1024,1023,1031,1040,1040,
+1009,930,833,744,681,663,625,527,472,477,488,490,491,464,423,382,363,350,345,343,
+337,328,306,294,288,276,256,262,235,193,146,99,81,212,414,568,699,783,806,814,
+808,813,827,850,806,739,716,589,567,564,397,267,174,105,56,38,22,9,-7,-43,
+-68,-77,-75,-63,-48,-28,-15,-3,3,0,-8,-12,-2,-6,-2,-13,1,17,26,32,
+31,39,52,49,49,50,35,13,-9,-28,-44,-53,-57,-56,-50,-45,-46,-45,-43,-44,
+-50,-60,-44,-34,-32,-39,-30,-26,-45,-66,-87,-109,-114,-111,-117,-139,-156,-139,-137,-168,
+-170,-173,-195,-226,-223,-263,-286,-298,-330,-364,-377,-402,-425,-442,-451,-481,-501,-508,-553,-596,
+-641,-678,-718,-774,-842,-867,-923,-969,-1012,-1038,-1088,-1145,-1176,-1247,-1288,-1354,-1422,-1439,-1500,-1542,
+-1579,-1641,-1688,-1751,-1807,-1882,-1937,-1987,-2019,-2061,-2117,-2173,-2205,-2251,-2292,-2346,-2410,-2468,-2516,-2549,
+-2570,-2590,-2635,-2676,-2716,-2752,-2778,-2828,-2860,-2897,-2933,-2965,-3011,-3052,-3090,-3135,-3168,-3222,-3258,-3307,
+-3339,-3361,-3376,-3386,-3393,-3405,-3391,-3353,-3339,-3347,-3391,-3479,-3575,-3591,-3698,-3724,-3780,-3849,-3883,-3927,
+-3993,-4009,-4022,-4021,-4038,-4075,-4105,-4142,-4167,-4173,-4202,-4217,-4229,-4229,-4236,-4259,-4262,-4283,-4299,-4314,
+-4336,-4338,-4332,-4347,-4356,-4366,-4364,-4373,-4375,-4374,-4369,-4367,-4365,-4352,-4339,-4319,-4295,-4275,-4251,-4220,
+-4188,-4209,-4161,-4121,-4122,-4076,-4041,-4023,-4005,-4003,-3976,-3944,-3912,-3874,-3824,-3790,-3762,-3746,-3780,-3846,
+-3815,-3627,-3611,-3665,-3695,-3702,-3671,-3536,-3479,-3430,-3404,-3353,-3321,-3294,-3274,-3291,-3315,-3340,-3348,-3322,
+-3276,-3218,-3112,-2980,-2858,-2717,-2585,-2471,-2351,-2238,-2157,-2116,-2101,-2087,-2058,-2000,-1929,-1856,-1789,-1747,
+-1695,-1594,-1501,-1468,-1453,-1434,-1426,-1408,-1387,-1353,-1305,-1245,-1182,-1097,-1010,-915,-816,-725,-664,-612,
+-578,-572,-588,-586,-573,-552,-512,-495,-500,-516,-536,-549,-534,-509,-487,-460,-411,-359,-295,-201,
+-121,-112,-120,-129,-161,-168,-122,-61,13,80,143,168,201,254,287,303,322,329,301,285,
+280,296,325,368,426,497,561,613,656,697,761,825,884,961,1035,1119,1201,1271,1359,1461,
+1589,1745,1872,1953,2035,2125,2188,2229,2265,2314,2379,2424,2471,2539,2607,2670,2713,2798,2859,2893,
+2943,2968,2966,2954,2945,2955,2982,3004,3025,3054,3082,3100,3134,3202,3271,3341,3434,3525,3591,3660,
+3733,3813,3895,3994,4088,4199,4287,4348,4415,4488,4564,4598,4614,4600,4607,4638,4643,4679,4727,4777,
+4830,4870,4925,4921,4868,4834,4803,4804,4789,4777,4772,4760,4725,4559,4351,4289,4282,4289,4318,4351,
+4463,4373,4324,4332,4419,4477,4493,4509,4529,4514,4518,4520,4521,4542,4573,4582,4620,4705,4727,4738,
+4757,4764,4783,4821,4866,4923,4976,4995,4981,4946,4933,4920,4922,4929,4923,4896,4864,4841,4857,4874,
+4942,5015,5049,5038,5034,5093,5160,5215,5278,5334,5375,5401,5417,5438,5453,5470,5412,5381,5380,5447,
+5399,5319,5347,5340,5353,5347,5348,5347,5361,5349,5350,5366,5368,5371,5328,5326,5312,5298,5279,5265,
+5241,5223,5207,5193,5161,5140,5102,5086,5067,5041,5012,4986,4970,4947,4950,4956,4963,5000,5020,5026,
+5036,5063,5129,5186,5201,5168,5142,5174,5162,5139,5090,5030,4895,4787,4555,4112,3495,2994,2617,2621,
+2865,3076,3216,3304,3359,3376,3365,3334,3285,3231,3175,3110,3030,2942,2853,2775,2706,2631,2563,2488,
+2401,2314,2294,2215,2143,2084,2023,1963,1905,1839,1775,1714,1657,1612,1572,1546,1524,1498,1461,1408,
+1371,1350,1268,1228,1172,1122,1087,1084,1086,1076,1067,1058,1040,1005,981,976,920,894,869,840,
+796,752,704,661,624,592,563,541,501,456,426,409,406,395,366,326,285,258,237,218,
+191,155,139,107,79,59,35,12,-5,-40,-85,-103,-116,-157,-201,-240,-276,-285,-284,-289,
+-309,-344,-380,-378,-306,-244,-397,-446,-456,-490,-514,-546,-561,-551,-535,-485,-551,-624,-685,-722,
+-737,-769,-798,-814,-833,-848,-858,-875,-888,-904,-925,-943,-954,-966,-980,-992,-1005,-1023,-1045,-1064,
+-1093,-1107,-1115,-1119,-1122,-1143,-1148,-1135,-1147,-1163,-1181,-1194,-1201,-1208,-1212,-1220,-1236,-1236,-1245,-1247,
+-1244,-1242,-1243,-1244,-1249,-1255,-1252,-1251,-1254,-1242,-1241,-1232,-1220,-1210,-1199,-1183,-1171,-1162,-1159,-1152,
+-1148,-1141,-1129,-1121,-1119,-1095,-1052,-1067,-1061,-1057,-1055,-1053,-1032,-1022,-1016,-1025,-1012,-1004,-994,-984,
+-975,-933,-919,-912,-896,-876,-874,-858,-847,-832,-822,-817,-806,-791,-761,-731,-729,-709,-684,-675,
+-660,-663,-655,-640,-623,-597,-591,-594,-562,-554,-544,-542,-520,-503,-513,-505,-479,-490,-492,-492,
+-487,-475,-475,-482,-478,-474,-469,-470,-467,-453,-442,-431,-419,-427,-428,-435,-441,-432,-429,-430,
+-433,-434,-429,-426,-420,-414,-408,-404,-404,-400,-396,-392,-386,-379,-365,-355,-345,-337,-326,-312,
+-305,-301,-291,-282,-276,-269,-264,-265,-259,-256,-244,-226,-219,-203,-212,-203,-189,-178,-163,-160,
+-149,-150,-138,-133,-125,-125,-124,-130,-131,-119,-93,-68,-63,-69,-68,-41,-34,-20,-7,-12,
+29,20,14,45,63,67,71,74,80,111,122,101,106,117,125,126,136,166,167,148,
+175,196,205,215,214,212,242,305,297,311,319,294,298,310,335,350,384,440,412,425,
+476,513,448,491,550,637,597,563,616,665,613,629,675,716,754,764,780,801,817,841,
+877,914,951,974,998,1021,1045,1087,1139,1181,1201,1225,1270,1329,1383,1421,1447,1473,1536,1614,
+1700,1774,1824,1838,1848,1881,1858,1869,1873,1857,1798,1689,1492,1272,1386,1855,2485,3203,3586,3595,
+3386,3376,3499,3678,3825,4005,4065,4128,4116,4141,4196,4219,4284,4252,4239,4141,3964,3662,3244,3015,
+2911,2973,2812,2669,2588,2536,2507,2491,2480,2480,2475,2463,2442,2406,2357,2300,2244,2178,2115,2059,
+2002,1948,1902,1852,1805,1762,1717,1652,1569,1478,1374,1270,1173,1055,950,883,810,737,650,575,
+506,446,376,338,302,249,176,126,107,106,101,56,62,45,97,141,199,249,318,344,
+294,223,127,64,10,-109,-213,-295,-343,-346,-367,-387,-415,-439,-458,-445,-436,-429,-455,-513,
+-572,-642,-724,-798,-868,-927,-975,-1017,-1039,-1043,-1040,-1050,-1070,-1089,-1094,-1113,-1125,-1133,-1136,-1106,
+-1063,-1068,-1053,-1023,-993,-963,-949,-929,-918,-904,-891,-869,-854,-837,-820,-805,-786,-769,-757,-754,
+-750,-743,-727,-710,-690,-667,-645,-632,-627,-620,-612,-607,-606,-602,-601,-595,-583,-568,-546,-546,
+-536,-530,-517,-501,-482,-466,-447,-439,-427,-395,-382,-353,-369,-328,-323,-274,-251,-227,-187,-153,
+-127,-99,-75,-42,0,27,47,69,87,108,132,161,186,204,230,263,288,324,346,371,
+411,438,466,497,527,550,574,602,627,658,699,730,763,798,831,865,894,924,950,987,
+1023,1071,1090,1109,1162,1174,1198,1244,1257,1255,1237,1222,1252,1268,1297,1300,1302,1303,1310,1314,
+1324,1333,1350,1348,1339,1336,1342,1350,1361,1372,1399,1409,1422,1435,1441,1450,1458,1469,1483,1496,
+1524,1546,1572,1593,1626,1653,1667,1687,1700,1730,1757,1782,1805,1827,1859,1903,1930,1941,1971,1992,
+1996,2007,2029,2056,2060,2077,2106,2148,2182,2203,2225,2259,2285,2317,2345,2385,2412,2442,2503,2545,
+2595,2661,2739,2780,2810,2809,2778,2643,2547,2489,2402,2363,2354,2364,2377,2380,2382,2386,2389,2386,
+2381,2373,2373,2373,2375,2393,2432,2480,2537,2592,2642,2710,2789,2894,2989,3001,2995,3029,3059,3096,
+3137,3170,3210,3253,3320,3411,3383,3335,3281,3193,3097,3017,2972,2926,2864,2810,2775,2753,2739,2729,
+2726,2722,2702,2668,2658,2647,2624,2580,2507,2449,2430,2411,2393,2393,2412,2412,2388,2346,2326,2316,
+2302,2280,2234,2190,2139,2096,2032,1993,2004,2045,2074,2082,2076,2079,2022,1949,1895,1893,1931,2012,
+1943,1754,1665,1587,1423,1327,1326,1395,1483,1464,1343,1239,1173,1131,1102,1095,1096,1095,1091,1086,
+1075,1042,969,882,794,751,751,692,581,528,524,536,531,523,490,451,414,391,370,360,
+355,349,342,327,319,320,313,300,297,283,249,200,154,133,179,327,575,717,805,822,
+825,829,833,865,886,842,728,699,617,594,585,397,293,216,161,125,108,84,69,54,
+35,17,7,3,12,23,28,40,47,52,47,41,29,28,30,20,19,51,67,73,
+73,73,76,78,88,83,83,76,58,35,19,8,-2,-7,-11,-2,2,6,17,12,
+4,10,12,21,12,4,-6,-14,-9,-24,-21,-20,-31,-42,-50,-58,-56,-84,-94,-92,
+-104,-112,-108,-127,-136,-189,-196,-211,-234,-266,-285,-308,-341,-338,-374,-419,-420,-442,-456,-517,
+-521,-564,-629,-680,-702,-759,-801,-839,-886,-923,-961,-1035,-1063,-1100,-1151,-1226,-1284,-1321,-1358,-1410,
+-1456,-1503,-1558,-1618,-1658,-1732,-1778,-1834,-1899,-1938,-1989,-2041,-2091,-2116,-2167,-2228,-2292,-2359,-2405,-2426,
+-2465,-2461,-2507,-2557,-2596,-2635,-2675,-2715,-2755,-2795,-2829,-2859,-2890,-2929,-2970,-3010,-3044,-3090,-3145,-3192,
+-3237,-3269,-3287,-3303,-3318,-3329,-3337,-3319,-3277,-3264,-3269,-3294,-3362,-3502,-3527,-3640,-3665,-3725,-3792,-3824,
+-3867,-3934,-3957,-3975,-3974,-3987,-4018,-4056,-4094,-4117,-4126,-4160,-4178,-4189,-4199,-4209,-4225,-4241,-4252,-4270,
+-4284,-4295,-4300,-4284,-4302,-4330,-4333,-4337,-4340,-4343,-4343,-4336,-4333,-4323,-4313,-4294,-4284,-4264,-4244,-4215,
+-4177,-4158,-4192,-4110,-4116,-4103,-4053,-4018,-4008,-3991,-3984,-3962,-3930,-3899,-3866,-3827,-3791,-3750,-3724,-3739,
+-3794,-3857,-3700,-3544,-3644,-3708,-3719,-3713,-3674,-3593,-3499,-3493,-3428,-3372,-3345,-3328,-3326,-3330,-3349,-3357,
+-3331,-3289,-3214,-3110,-2977,-2864,-2728,-2587,-2475,-2361,-2251,-2182,-2149,-2141,-2133,-2105,-2056,-1991,-1919,-1829,
+-1779,-1743,-1659,-1579,-1548,-1548,-1541,-1534,-1533,-1517,-1476,-1435,-1394,-1337,-1244,-1152,-1053,-953,-876,-805,
+-739,-689,-670,-666,-658,-634,-590,-551,-545,-556,-569,-590,-614,-625,-614,-585,-553,-496,-428,-360,
+-274,-196,-188,-202,-228,-257,-269,-231,-172,-123,-45,43,108,157,217,269,312,322,335,321,
+308,299,301,326,359,409,466,509,548,591,637,690,740,803,875,952,1029,1122,1213,1306,
+1412,1521,1635,1737,1815,1897,2005,2066,2115,2145,2180,2229,2280,2339,2412,2491,2572,2632,2683,2729,
+2757,2778,2787,2798,2810,2825,2847,2885,2920,2940,2959,2974,2994,3044,3126,3191,3263,3350,3451,3526,
+3576,3635,3707,3799,3889,3987,4094,4189,4271,4340,4426,4541,4573,4562,4543,4552,4589,4583,4621,4660,
+4712,4774,4831,4855,4835,4828,4798,4763,4753,4741,4721,4712,4698,4686,4602,4373,4259,4235,4256,4306,
+4342,4300,4258,4234,4236,4299,4379,4409,4433,4452,4458,4487,4494,4472,4469,4493,4523,4614,4852,4837,
+4763,4714,4715,4732,4762,4799,4850,4895,4924,4919,4912,4914,4894,4863,4862,4862,4843,4818,4802,4825,
+4820,4877,4943,4988,4988,4982,5025,5089,5131,5214,5273,5320,5359,5401,5399,5408,5412,5390,5360,5349,
+5426,5391,5287,5283,5309,5319,5341,5366,5356,5333,5334,5340,5343,5326,5332,5302,5294,5284,5268,5253,
+5232,5212,5193,5170,5150,5132,5109,5080,5064,5040,5013,4986,4972,4951,4940,4941,4940,4971,5012,5008,
+5010,5021,5063,5134,5175,5175,5138,5126,5142,5153,5116,5076,4983,4855,4733,4510,4002,3405,2948,2662,
+2717,2962,3151,3277,3352,3398,3413,3398,3362,3314,3258,3193,3120,3037,2941,2848,2774,2704,2626,2555,
+2481,2398,2315,2245,2181,2123,2066,2006,1952,1900,1838,1775,1711,1655,1602,1560,1539,1521,1488,1445,
+1388,1380,1305,1260,1222,1160,1108,1072,1065,1061,1051,1036,1027,1019,980,954,933,909,887,858,
+827,790,744,709,666,618,588,559,530,493,453,415,391,372,347,326,304,274,251,227,
+205,187,159,124,92,70,54,40,23,-6,-47,-86,-114,-142,-169,-208,-226,-249,-226,-257,
+-249,-278,-336,-364,-397,-393,-386,-413,-455,-459,-464,-484,-514,-534,-537,-501,-419,-521,-595,-652,
+-691,-718,-755,-779,-782,-811,-835,-850,-865,-879,-896,-920,-946,-958,-973,-988,-1000,-1010,-1026,-1043,
+-1064,-1091,-1109,-1125,-1131,-1124,-1138,-1142,-1143,-1164,-1169,-1184,-1195,-1200,-1202,-1209,-1220,-1231,-1241,-1256,
+-1261,-1252,-1244,-1238,-1243,-1251,-1254,-1254,-1254,-1255,-1258,-1251,-1249,-1244,-1233,-1208,-1159,-1185,-1168,-1147,
+-1140,-1131,-1129,-1120,-1109,-1106,-1107,-1103,-1084,-1073,-1068,-1063,-1053,-1055,-1043,-1035,-1019,-998,-1007,-988,
+-922,-906,-919,-893,-906,-884,-895,-893,-864,-860,-857,-852,-837,-754,-748,-777,-753,-731,-715,-711,
+-694,-689,-688,-604,-621,-640,-632,-620,-608,-587,-574,-557,-542,-533,-514,-511,-518,-532,-498,-503,
+-497,-496,-494,-497,-498,-496,-495,-492,-479,-473,-463,-454,-441,-440,-440,-439,-438,-451,-442,-442,
+-440,-446,-445,-440,-435,-433,-426,-416,-412,-411,-405,-400,-391,-383,-373,-363,-350,-340,-332,-323,
+-308,-300,-292,-288,-276,-266,-262,-252,-253,-258,-254,-238,-219,-209,-206,-213,-213,-200,-194,-191,
+-186,-190,-181,-179,-161,-154,-157,-138,-134,-102,-114,-116,-88,-80,-81,-31,-3,-20,-8,-5,
+4,87,20,28,47,66,70,61,76,98,93,111,112,98,101,97,104,104,129,178,
+160,172,181,185,202,224,243,232,235,259,287,291,280,320,354,367,382,396,495,438,
+448,504,502,474,486,526,568,576,569,629,730,674,667,665,706,754,771,792,808,824,
+846,870,908,941,968,996,1036,1070,1112,1150,1188,1205,1230,1267,1323,1372,1413,1450,1490,1555,
+1636,1707,1779,1813,1825,1837,1855,1870,1875,1867,1844,1798,1681,1486,1283,1409,1843,2455,3216,3590,
+3654,3525,3508,3644,3759,3897,4069,4126,4110,4098,4121,4220,4238,4260,4277,4199,4052,3808,3426,3172,
+2986,2995,2875,2755,2682,2633,2597,2564,2538,2524,2520,2517,2499,2466,2418,2361,2303,2245,2183,2123,
+2068,2018,1974,1927,1881,1839,1796,1756,1692,1594,1504,1393,1268,1174,1080,1011,946,862,773,684,
+622,541,482,421,384,367,320,246,181,138,133,144,167,182,155,158,216,270,325,389,
+404,375,281,171,115,49,-48,-116,-213,-261,-283,-310,-328,-350,-367,-411,-409,-398,-432,-466,
+-544,-631,-737,-816,-899,-983,-1045,-1083,-1115,-1123,-1118,-1108,-1088,-1075,-1102,-1126,-1138,-1149,-1160,-1146,
+-1123,-1087,-1076,-1054,-1027,-996,-967,-938,-913,-894,-881,-866,-851,-836,-816,-795,-782,-763,-746,-736,
+-733,-734,-730,-719,-703,-689,-669,-648,-627,-609,-599,-586,-580,-578,-578,-575,-564,-552,-523,-513,
+-510,-513,-504,-492,-475,-461,-446,-428,-403,-388,-368,-348,-335,-322,-300,-279,-253,-216,-192,-162,
+-118,-99,-57,-22,4,31,53,84,105,133,155,170,202,229,256,282,315,339,356,385,
+407,423,447,479,514,540,582,616,644,676,714,737,767,800,835,863,889,914,940,977,
+1017,1045,1077,1125,1178,1214,1206,1196,1221,1237,1245,1259,1263,1280,1289,1293,1301,1299,1308,1318,
+1325,1328,1330,1331,1347,1356,1369,1381,1393,1394,1403,1418,1423,1433,1443,1453,1470,1490,1508,1531,
+1548,1569,1583,1605,1623,1636,1658,1685,1717,1756,1769,1810,1852,1864,1887,1905,1929,1951,1948,1961,
+1996,2007,2029,2045,2066,2114,2110,2141,2169,2199,2217,2230,2253,2285,2318,2350,2379,2406,2439,2491,
+2528,2571,2636,2721,2780,2830,2818,2745,2657,2561,2497,2413,2385,2386,2391,2404,2408,2407,2412,2413,
+2412,2404,2396,2393,2395,2400,2412,2444,2499,2563,2613,2654,2706,2769,2854,2971,3029,3005,3028,3081,
+3117,3174,3217,3264,3313,3360,3426,3429,3370,3315,3218,3105,3014,2972,2929,2875,2824,2788,2766,2758,
+2759,2766,2765,2743,2713,2696,2682,2654,2613,2559,2506,2480,2463,2440,2439,2458,2466,2448,2408,2395,
+2388,2406,2410,2355,2308,2262,2226,2150,2119,2134,2201,2168,2140,2104,2104,2050,1987,1972,2014,2098,
+2183,2100,1973,1847,1711,1507,1395,1372,1435,1543,1546,1447,1332,1251,1192,1165,1158,1159,1151,1150,
+1143,1129,1084,1003,919,848,832,830,757,659,598,570,572,561,550,514,481,453,428,392,
+374,366,356,348,338,330,335,338,337,336,323,299,263,229,221,247,326,573,738,802,
+830,839,849,844,899,954,886,728,673,637,661,554,390,318,262,217,168,148,127,121,
+107,89,72,68,66,75,80,84,90,86,88,85,78,74,67,61,61,69,81,104,
+110,113,114,110,115,121,122,122,116,99,80,68,52,43,36,35,40,43,48,48,
+49,48,45,48,55,35,31,40,38,38,25,24,6,0,-12,-14,-11,-5,-10,-16,
+-31,-25,-35,-57,-80,-101,-110,-141,-161,-182,-194,-227,-247,-269,-285,-316,-335,-343,-394,-400,
+-406,-494,-506,-555,-584,-661,-689,-735,-778,-803,-833,-898,-948,-980,-1044,-1108,-1145,-1190,-1236,-1268,
+-1326,-1369,-1417,-1469,-1536,-1602,-1647,-1679,-1754,-1812,-1867,-1920,-1957,-1998,-2032,-2097,-2162,-2234,-2274,-2305,
+-2338,-2344,-2376,-2433,-2481,-2520,-2571,-2598,-2647,-2689,-2726,-2756,-2788,-2826,-2860,-2894,-2923,-2963,-3020,-3072,
+-3121,-3165,-3195,-3216,-3234,-3248,-3264,-3264,-3241,-3197,-3186,-3187,-3229,-3301,-3432,-3452,-3580,-3609,-3668,-3736,
+-3766,-3804,-3868,-3904,-3933,-3927,-3936,-3967,-4008,-4041,-4068,-4077,-4111,-4132,-4147,-4170,-4177,-4187,-4207,-4220,
+-4242,-4256,-4267,-4280,-4292,-4262,-4302,-4305,-4310,-4315,-4319,-4318,-4308,-4298,-4290,-4278,-4263,-4249,-4233,-4207,
+-4175,-4140,-4159,-4128,-4080,-4086,-4065,-4029,-4005,-3997,-3987,-3965,-3939,-3904,-3882,-3854,-3822,-3788,-3746,-3720,
+-3706,-3729,-3782,-3795,-3662,-3672,-3699,-3731,-3716,-3699,-3681,-3640,-3579,-3514,-3450,-3437,-3419,-3389,-3383,-3384,
+-3366,-3337,-3290,-3211,-3094,-2957,-2862,-2734,-2590,-2482,-2362,-2273,-2214,-2178,-2175,-2169,-2142,-2100,-2043,-1968,
+-1885,-1813,-1776,-1708,-1629,-1592,-1590,-1607,-1621,-1639,-1636,-1619,-1574,-1530,-1466,-1373,-1279,-1195,-1125,-1045,
+-973,-901,-851,-784,-751,-724,-696,-648,-609,-596,-609,-626,-650,-676,-688,-686,-663,-626,-570,-495,
+-443,-387,-320,-280,-268,-276,-291,-296,-286,-229,-185,-127,-41,30,99,156,224,277,302,298,
+303,297,303,316,317,324,358,403,442,470,517,569,616,659,712,784,860,953,1066,1169,
+1263,1365,1448,1524,1601,1687,1766,1864,1947,2001,2031,2056,2095,2143,2191,2254,2330,2411,2477,2525,
+2568,2593,2607,2629,2659,2694,2719,2755,2796,2833,2845,2857,2869,2898,2962,3043,3117,3193,3268,3352,
+3430,3489,3543,3617,3716,3803,3894,3989,4090,4189,4262,4359,4455,4490,4483,4466,4488,4517,4535,4563,
+4595,4638,4719,4801,4777,4769,4766,4772,4724,4704,4685,4666,4659,4654,4663,4601,4438,4237,4178,4205,
+4283,4426,4259,4181,4154,4163,4183,4253,4313,4364,4388,4389,4433,4440,4438,4402,4417,4460,4570,4826,
+4924,4795,4677,4656,4689,4700,4752,4780,4820,4851,4878,4877,4891,4875,4829,4815,4813,4805,4791,4777,
+4771,4770,4809,4871,4919,4933,4940,4977,5018,5069,5160,5221,5269,5284,5300,5324,5364,5349,5369,5323,
+5281,5324,5381,5284,5255,5266,5289,5310,5320,5342,5312,5306,5317,5316,5299,5284,5277,5256,5247,5232,
+5224,5202,5184,5165,5143,5118,5106,5086,5059,5042,5025,4990,4962,4950,4936,4928,4924,4929,4940,5006,
+4993,4983,4992,5019,5084,5158,5148,5113,5113,5131,5133,5105,5046,4943,4862,4722,4423,3883,3348,2951,
+2726,2800,3027,3204,3317,3383,3423,3433,3423,3391,3344,3287,3216,3135,3044,2948,2860,2771,2695,2623,
+2548,2474,2399,2322,2248,2180,2116,2057,2001,1952,1900,1841,1774,1711,1649,1594,1553,1528,1506,1480,
+1435,1374,1348,1279,1251,1210,1156,1100,1063,1049,1042,1021,1004,997,993,976,945,914,884,862,
+833,797,766,740,721,683,610,575,548,518,486,447,409,378,352,324,304,286,261,238,
+219,197,176,162,137,107,79,42,22,10,-7,-34,-69,-95,-124,-156,-189,-212,-240,-247,
+-252,-269,-278,-319,-361,-403,-399,-275,-221,-378,-418,-451,-473,-504,-536,-554,-547,-536,-569,-587,
+-623,-628,-695,-733,-753,-767,-785,-810,-832,-846,-862,-890,-918,-930,-954,-975,-993,-1006,-1022,-1034,
+-1047,-1063,-1086,-1106,-1126,-1126,-1136,-1134,-1147,-1158,-1173,-1181,-1189,-1197,-1201,-1206,-1213,-1219,-1231,-1236,
+-1252,-1262,-1251,-1250,-1246,-1243,-1248,-1254,-1258,-1258,-1253,-1261,-1261,-1264,-1258,-1249,-1235,-1219,-1195,-1169,
+-1111,-1089,-1125,-1110,-1095,-1100,-1102,-1095,-1089,-1082,-1076,-1072,-1066,-1066,-1062,-1061,-1056,-1047,-1031,-1021,
+-1022,-970,-944,-978,-959,-949,-936,-916,-905,-885,-879,-863,-813,-769,-792,-768,-767,-757,-744,-730,
+-722,-691,-680,-688,-668,-670,-654,-642,-603,-584,-591,-581,-563,-565,-551,-535,-517,-543,-525,-520,
+-520,-516,-511,-509,-510,-520,-512,-498,-488,-485,-484,-483,-473,-460,-454,-459,-460,-455,-459,-460,
+-456,-458,-459,-458,-448,-441,-436,-432,-429,-414,-410,-403,-399,-383,-377,-363,-362,-349,-337,-331,
+-324,-313,-301,-289,-284,-281,-269,-264,-260,-251,-247,-246,-242,-227,-215,-219,-214,-200,-190,-153,
+-153,-143,-143,-119,-132,-76,-64,-92,-31,-72,-17,27,-64,-94,-46,-11,12,-37,-23,-2,
+-15,18,46,18,15,27,30,31,50,62,61,70,69,93,77,124,206,191,140,175,
+182,183,205,193,199,217,287,396,380,281,225,229,254,293,334,385,363,361,370,398,
+410,402,414,423,455,474,502,526,542,539,564,669,822,822,694,699,753,785,815,826,
+832,836,856,885,921,951,984,1026,1076,1125,1157,1182,1206,1234,1269,1317,1374,1423,1470,1523,
+1578,1650,1709,1767,1790,1813,1841,1852,1879,1893,1886,1854,1799,1682,1471,1270,1413,1859,2422,3010,
+3508,3640,3615,3639,3766,3881,3966,4087,4146,4126,4140,4151,4241,4287,4298,4299,4132,3963,3727,3335,
+3153,2989,2943,2828,2747,2701,2666,2631,2596,2569,2558,2548,2527,2503,2469,2423,2356,2291,2237,2186,
+2133,2083,2038,1994,1948,1905,1863,1828,1787,1720,1624,1532,1441,1322,1226,1137,1063,1000,916,804,
+695,628,573,512,454,427,405,359,300,252,205,188,193,216,264,278,261,270,325,356,
+396,421,379,315,297,248,133,40,-56,-174,-205,-208,-162,-165,-215,-297,-361,-388,-431,-461,
+-517,-596,-699,-827,-933,-1021,-1071,-1112,-1133,-1140,-1139,-1130,-1121,-1100,-1094,-1109,-1125,-1153,-1166,-1179,
+-1161,-1129,-1085,-1074,-1064,-1038,-1005,-978,-944,-914,-899,-884,-870,-857,-838,-814,-788,-765,-745,-726,
+-713,-712,-712,-709,-694,-673,-651,-625,-606,-589,-576,-563,-563,-559,-558,-554,-549,-544,-530,-509,
+-496,-473,-473,-460,-448,-440,-430,-423,-409,-394,-375,-364,-349,-328,-299,-289,-256,-230,-205,-177,
+-146,-109,-75,-37,-5,24,55,74,101,119,139,170,193,230,254,291,311,315,348,382,
+408,446,477,499,533,558,590,617,638,674,695,724,748,788,821,861,891,917,953,987,
+1021,1043,1071,1102,1126,1138,1150,1232,1266,1267,1271,1284,1267,1286,1292,1291,1292,1301,1303,1314,
+1337,1349,1355,1356,1369,1368,1379,1392,1401,1390,1395,1406,1421,1446,1457,1471,1478,1491,1509,1529,
+1552,1571,1590,1622,1651,1674,1677,1699,1729,1761,1785,1806,1817,1842,1863,1869,1896,1906,1931,1961,
+1980,2007,2000,2022,2050,2074,2101,2122,2153,2190,2227,2256,2267,2268,2294,2324,2361,2391,2415,2447,
+2494,2561,2607,2639,2726,2834,2858,2828,2744,2626,2537,2505,2452,2415,2414,2421,2432,2440,2440,2437,
+2440,2438,2429,2422,2418,2421,2426,2436,2465,2519,2578,2624,2653,2690,2748,2836,2953,3034,3025,3034,
+3098,3144,3193,3249,3296,3351,3401,3441,3469,3423,3362,3248,3104,3014,2964,2925,2882,2836,2800,2779,
+2779,2794,2808,2807,2785,2756,2734,2713,2683,2639,2592,2553,2536,2532,2526,2522,2526,2528,2492,2466,
+2457,2466,2476,2485,2464,2425,2369,2308,2261,2266,2275,2314,2286,2235,2198,2195,2163,2126,2136,2158,
+2235,2329,2292,2172,1987,1765,1589,1475,1451,1511,1642,1650,1554,1438,1342,1277,1235,1209,1202,1185,
+1193,1188,1176,1107,1025,936,888,888,880,831,751,680,623,592,585,575,546,510,487,448,
+415,390,377,369,358,360,356,366,378,381,374,364,351,332,308,310,313,351,493,703,
+784,816,841,848,858,918,983,927,789,729,749,709,516,384,343,306,257,206,211,178,
+167,152,130,114,110,110,113,118,121,126,126,125,123,107,107,101,100,93,116,135,
+144,154,156,151,154,157,159,159,160,157,144,130,112,99,88,80,83,85,83,87,
+88,86,96,87,75,69,50,60,62,43,46,63,79,84,63,50,33,44,48,37,
+14,10,15,5,-11,-35,-57,-71,-83,-108,-124,-152,-182,-188,-208,-215,-232,-267,-300,-302,
+-329,-341,-416,-426,-463,-542,-570,-621,-652,-681,-732,-781,-823,-860,-911,-971,-1020,-1069,-1105,-1140,
+-1190,-1239,-1302,-1328,-1402,-1462,-1523,-1575,-1624,-1674,-1733,-1784,-1833,-1865,-1925,-1971,-2049,-2109,-2146,-2193,
+-2224,-2253,-2261,-2319,-2357,-2407,-2446,-2499,-2528,-2573,-2617,-2653,-2689,-2711,-2752,-2785,-2819,-2849,-2889,-2941,
+-3003,-3056,-3100,-3131,-3148,-3169,-3183,-3194,-3182,-3159,-3123,-3102,-3104,-3147,-3253,-3353,-3394,-3529,-3559,-3617,
+-3679,-3707,-3746,-3809,-3854,-3883,-3879,-3894,-3923,-3960,-3993,-4010,-4028,-4057,-4082,-4092,-4138,-4147,-4154,-4179,
+-4185,-4207,-4224,-4242,-4261,-4276,-4276,-4274,-4283,-4293,-4292,-4283,-4281,-4271,-4265,-4251,-4238,-4229,-4218,-4202,
+-4173,-4142,-4124,-4076,-3986,-4026,-4051,-4041,-4014,-3997,-3985,-3974,-3950,-3915,-3888,-3865,-3847,-3821,-3793,-3761,
+-3719,-3696,-3687,-3712,-3755,-3814,-3826,-3701,-3619,-3728,-3717,-3710,-3704,-3679,-3618,-3544,-3506,-3489,-3456,-3439,
+-3422,-3385,-3347,-3291,-3204,-3094,-2975,-2877,-2755,-2615,-2502,-2384,-2312,-2259,-2217,-2208,-2200,-2179,-2140,-2083,
+-2011,-1922,-1836,-1790,-1724,-1671,-1619,-1605,-1623,-1653,-1670,-1677,-1648,-1633,-1604,-1528,-1462,-1385,-1327,-1264,
+-1157,-1056,-996,-968,-916,-846,-811,-783,-759,-726,-721,-728,-734,-748,-753,-752,-738,-711,-679,-639,
+-590,-543,-491,-445,-398,-352,-301,-285,-263,-254,-225,-155,-98,-58,-6,47,97,158,220,286,
+311,299,278,277,288,276,262,260,281,310,347,389,446,503,559,619,694,784,886,1004,
+1126,1214,1300,1371,1432,1491,1566,1627,1701,1794,1866,1908,1938,1976,2025,2077,2111,2169,2247,2315,
+2365,2410,2437,2455,2475,2537,2588,2619,2661,2706,2733,2740,2768,2791,2828,2892,2971,3046,3107,3172,
+3237,3304,3376,3444,3536,3637,3720,3804,3893,3986,4074,4149,4259,4333,4343,4373,4396,4405,4439,4434,
+4454,4496,4554,4638,4737,4700,4685,4715,4716,4686,4681,4656,4623,4616,4613,4609,4583,4499,4301,4132,
+4133,4268,4327,4178,4116,4097,4105,4124,4153,4210,4283,4319,4321,4350,4354,4347,4325,4341,4405,4553,
+4778,4866,4714,4612,4593,4609,4656,4702,4747,4778,4786,4801,4831,4842,4842,4799,4778,4774,4778,4769,
+4745,4728,4729,4741,4797,4851,4876,4887,4912,4956,5003,5100,5164,5200,5206,5228,5268,5310,5319,5317,
+5308,5244,5250,5326,5330,5227,5223,5252,5272,5284,5300,5291,5279,5282,5282,5260,5250,5240,5229,5221,
+5204,5184,5172,5158,5136,5123,5093,5084,5059,5034,5016,4997,4975,4948,4930,4921,4921,4924,4928,4934,
+4977,4964,4959,4967,4997,5085,5143,5117,5086,5094,5103,5105,5078,5014,4948,4842,4712,4371,3789,3271,
+2960,2805,2899,3096,3244,3342,3407,3444,3443,3437,3399,3348,3299,3229,3142,3052,2961,2865,2774,2696,
+2620,2546,2468,2396,2322,2250,2180,2120,2061,2006,1954,1902,1839,1775,1710,1650,1594,1555,1519,1495,
+1470,1425,1362,1321,1272,1241,1197,1150,1091,1052,1037,1018,993,968,973,974,953,928,906,864,
+836,811,768,744,720,704,666,616,572,534,507,473,438,400,364,329,304,281,260,241,
+222,206,188,171,160,140,118,83,50,52,50,-7,-22,-54,-84,-106,-142,-167,-188,-205,
+-216,-238,-260,-286,-314,-349,-381,-383,-268,-230,-352,-423,-457,-468,-466,-501,-534,-532,-516,-479,
+-557,-603,-647,-674,-703,-725,-742,-760,-792,-809,-824,-854,-881,-902,-921,-936,-955,-980,-999,-1021,
+-1037,-1053,-1072,-1088,-1104,-1117,-1126,-1130,-1137,-1155,-1163,-1176,-1187,-1196,-1210,-1214,-1214,-1219,-1230,-1236,
+-1245,-1251,-1253,-1247,-1249,-1248,-1252,-1247,-1252,-1260,-1267,-1261,-1255,-1262,-1264,-1260,-1259,-1250,-1241,-1224,
+-1201,-1157,-1142,-1140,-1100,-1067,-1094,-1101,-1096,-1083,-1080,-1075,-1066,-1066,-1061,-1060,-1057,-1056,-1048,-1036,
+-1028,-1023,-1013,-990,-979,-960,-950,-937,-924,-906,-899,-884,-873,-865,-846,-817,-797,-778,-763,-763,
+-749,-732,-719,-718,-709,-698,-678,-649,-644,-647,-640,-619,-607,-590,-577,-562,-561,-539,-554,-536,
+-533,-527,-529,-509,-519,-522,-520,-514,-513,-508,-497,-497,-496,-482,-478,-471,-472,-470,-470,-467,
+-475,-474,-465,-467,-466,-457,-448,-444,-433,-430,-418,-406,-398,-394,-377,-374,-362,-361,-353,-346,
+-337,-331,-327,-310,-301,-299,-300,-298,-287,-272,-254,-255,-247,-242,-227,-219,-215,-192,-131,-128,
+-176,-148,-152,-109,-74,-72,-115,-103,-127,-131,-103,-120,-70,-54,-53,-57,-37,-68,-52,-26,
+-24,-29,-24,-36,2,3,13,64,83,21,39,63,76,127,119,148,186,175,148,171,
+188,250,209,179,220,228,188,180,212,275,323,297,257,307,283,285,310,328,344,365,
+413,443,447,450,463,472,474,472,484,501,528,550,638,841,822,754,707,756,800,834,
+851,850,836,841,863,907,943,982,1029,1083,1125,1161,1181,1204,1233,1268,1313,1372,1433,1497,
+1566,1618,1655,1699,1733,1765,1781,1804,1826,1882,1929,1927,1872,1790,1651,1426,1240,1431,1869,2399,
+2879,3339,3510,3581,3684,3865,3937,4005,4119,4152,4185,4251,4232,4281,4279,4313,4185,3956,3869,3654,
+3310,3164,2986,2870,2798,2763,2728,2693,2648,2613,2588,2570,2552,2526,2494,2459,2410,2342,2277,2226,
+2185,2148,2103,2054,2009,1962,1917,1876,1842,1804,1745,1652,1556,1498,1386,1280,1187,1110,1038,948,
+836,728,643,577,506,450,419,382,327,280,252,250,248,253,282,341,384,386,365,388,
+386,392,409,400,395,389,291,115,-8,-92,-150,-185,-157,-110,-135,-208,-293,-361,-413,-456,
+-509,-565,-654,-795,-931,-1028,-1076,-1117,-1132,-1144,-1138,-1119,-1104,-1089,-1095,-1095,-1114,-1144,-1176,-1170,
+-1160,-1152,-1095,-1047,-1063,-1066,-1060,-1047,-1020,-976,-941,-918,-902,-883,-865,-838,-813,-786,-758,-728,
+-703,-687,-679,-673,-660,-638,-626,-609,-590,-571,-555,-543,-534,-532,-527,-524,-523,-520,-517,-506,
+-485,-477,-461,-451,-446,-432,-425,-404,-385,-370,-340,-304,-290,-278,-262,-214,-211,-199,-164,-127,
+-91,-62,-28,7,35,52,78,102,126,145,175,199,223,246,275,298,314,341,378,393,
+419,447,465,487,529,558,573,607,637,676,710,738,772,802,835,866,865,899,924,973,
+1003,1013,1035,1069,1125,1164,1187,1212,1243,1265,1260,1255,1255,1260,1268,1278,1289,1302,1322,1341,
+1355,1348,1358,1364,1374,1388,1386,1387,1404,1396,1413,1420,1429,1442,1453,1456,1477,1500,1529,1537,
+1571,1591,1610,1627,1655,1672,1687,1712,1730,1755,1768,1781,1804,1808,1830,1857,1877,1895,1902,1942,
+1989,2003,2000,2015,2045,2062,2085,2115,2142,2175,2209,2238,2255,2266,2284,2303,2332,2372,2415,2445,
+2480,2514,2557,2603,2665,2734,2811,2879,2828,2704,2541,2481,2477,2462,2435,2439,2457,2459,2463,2466,
+2462,2459,2457,2452,2444,2441,2444,2449,2459,2485,2531,2585,2635,2668,2702,2757,2838,2944,3022,3033,
+3052,3114,3165,3222,3279,3323,3359,3415,3484,3499,3469,3396,3267,3122,3018,2956,2922,2886,2842,2806,
+2790,2799,2826,2846,2843,2820,2791,2764,2739,2708,2661,2615,2594,2590,2602,2601,2585,2571,2550,2526,
+2514,2524,2540,2551,2550,2537,2516,2462,2396,2373,2366,2368,2412,2418,2390,2377,2345,2328,2319,2306,
+2345,2421,2491,2416,2274,2090,1851,1676,1598,1578,1627,1768,1748,1655,1528,1425,1332,1267,1251,1251,
+1237,1235,1216,1187,1121,1038,978,938,925,924,910,851,749,670,624,603,594,573,541,513,
+474,437,407,391,385,379,384,390,400,417,424,425,416,404,387,373,367,364,382,455,
+660,759,795,858,866,883,910,971,964,886,834,769,641,499,399,378,341,300,261,253,
+223,216,199,175,161,152,146,142,149,151,156,160,162,155,148,138,139,132,136,166,
+178,189,198,189,192,199,200,197,196,193,195,189,175,161,149,141,135,132,131,126,
+125,126,109,128,120,114,98,92,86,76,81,104,105,87,140,120,103,109,100,88,
+83,70,55,72,58,37,26,4,-26,-46,-57,-55,-61,-71,-103,-120,-126,-161,-192,-206,
+-225,-252,-271,-353,-335,-401,-455,-510,-533,-558,-614,-680,-696,-745,-784,-843,-897,-939,-988,-1021,
+-1082,-1114,-1173,-1203,-1261,-1339,-1399,-1452,-1505,-1569,-1607,-1643,-1689,-1735,-1800,-1849,-1914,-1975,-2019,-2069,
+-2098,-2144,-2148,-2193,-2242,-2290,-2332,-2387,-2434,-2464,-2515,-2549,-2575,-2605,-2631,-2669,-2703,-2744,-2764,-2816,
+-2878,-2933,-2981,-3021,-3053,-3075,-3101,-3119,-3119,-3103,-3077,-3055,-3033,-3036,-3090,-3173,-3303,-3338,-3478,-3511,
+-3563,-3625,-3654,-3688,-3747,-3802,-3837,-3837,-3850,-3878,-3915,-3940,-3973,-3986,-4009,-4030,-4042,-4090,-4099,-4111,
+-4137,-4155,-4161,-4187,-4213,-4232,-4245,-4247,-4248,-4264,-4264,-4257,-4257,-4248,-4238,-4223,-4211,-4200,-4196,-4187,
+-4167,-4137,-4073,-3999,-3946,-3913,-3975,-4030,-4024,-4005,-3994,-3975,-3964,-3935,-3906,-3880,-3857,-3838,-3814,-3792,
+-3763,-3737,-3704,-3693,-3693,-3696,-3708,-3752,-3765,-3675,-3711,-3747,-3724,-3721,-3725,-3700,-3654,-3604,-3547,-3519,
+-3493,-3463,-3415,-3369,-3302,-3212,-3119,-3021,-2936,-2813,-2659,-2533,-2433,-2359,-2305,-2265,-2247,-2236,-2214,-2172,
+-2113,-2049,-1957,-1857,-1798,-1728,-1696,-1664,-1625,-1630,-1643,-1648,-1644,-1621,-1603,-1585,-1537,-1465,-1413,-1353,
+-1266,-1165,-1111,-1060,-1048,-1009,-943,-911,-889,-867,-847,-852,-881,-871,-844,-837,-824,-794,-756,-721,
+-690,-658,-628,-590,-551,-530,-479,-378,-273,-239,-220,-185,-94,-6,16,56,68,76,133,220,
+312,369,370,318,255,222,190,167,151,150,175,221,273,330,397,462,532,626,730,842,
+957,1063,1140,1207,1274,1329,1387,1461,1529,1593,1659,1729,1779,1818,1860,1921,1976,2013,2069,2143,
+2192,2241,2290,2315,2340,2386,2446,2499,2535,2575,2597,2626,2649,2688,2731,2776,2833,2908,2980,3024,
+3077,3134,3195,3268,3370,3477,3560,3639,3718,3801,3891,3967,4042,4144,4192,4201,4240,4268,4306,4322,
+4311,4335,4379,4436,4539,4651,4646,4638,4661,4653,4641,4652,4627,4590,4568,4565,4559,4544,4497,4300,
+4085,4034,4081,4111,4100,4057,4041,4053,4085,4117,4156,4202,4221,4234,4264,4265,4252,4259,4285,4350,
+4508,4685,4726,4589,4534,4529,4550,4617,4665,4701,4728,4750,4754,4771,4784,4789,4762,4735,4743,4747,
+4739,4702,4704,4706,4690,4726,4779,4815,4834,4866,4917,4965,5052,5110,5132,5131,5165,5199,5250,5277,
+5252,5261,5228,5207,5257,5291,5200,5185,5218,5231,5254,5293,5268,5254,5242,5246,5236,5228,5209,5208,
+5190,5171,5154,5138,5127,5115,5095,5073,5054,5030,5007,4988,4970,4946,4927,4916,4905,4904,4893,4904,
+4941,4960,4949,4948,4955,4992,5047,5113,5049,5051,5062,5074,5079,5039,4967,4897,4804,4597,4237,3661,
+3239,2974,2868,2998,3174,3286,3361,3408,3437,3440,3445,3404,3343,3293,3227,3144,3059,2968,2873,2786,
+2701,2622,2550,2466,2403,2328,2246,2172,2113,2059,2009,1961,1910,1848,1780,1716,1653,1601,1559,1516,
+1486,1458,1410,1351,1299,1255,1220,1186,1143,1091,1050,1026,999,973,945,936,940,925,902,872,
+838,814,787,752,725,705,682,647,603,563,520,494,461,421,380,344,311,282,257,236,
+217,195,187,174,157,128,120,106,78,45,6,-8,-18,-20,-49,-78,-103,-132,-146,-157,
+-152,-91,-178,-231,-270,-300,-333,-365,-383,-376,-369,-384,-420,-440,-436,-436,-417,-408,-472,-479,
+-463,-528,-590,-622,-645,-681,-711,-726,-744,-776,-800,-801,-843,-859,-885,-904,-920,-945,-967,-990,
+-1009,-1032,-1053,-1074,-1091,-1107,-1119,-1128,-1132,-1135,-1152,-1167,-1179,-1194,-1207,-1214,-1221,-1226,-1234,-1245,
+-1252,-1259,-1259,-1259,-1249,-1246,-1247,-1245,-1254,-1254,-1263,-1265,-1266,-1261,-1260,-1267,-1261,-1255,-1258,-1245,
+-1242,-1226,-1212,-1199,-1186,-1155,-1112,-1115,-1111,-1099,-1088,-1082,-1070,-1061,-1072,-1068,-1063,-1056,-1058,-1052,
+-1041,-1028,-1022,-1012,-995,-985,-969,-952,-936,-931,-912,-905,-882,-881,-872,-855,-836,-813,-796,-790,
+-769,-731,-737,-738,-720,-713,-695,-678,-689,-672,-659,-659,-632,-600,-600,-589,-572,-563,-549,-545,
+-560,-562,-552,-547,-542,-542,-531,-527,-530,-527,-518,-515,-520,-500,-493,-484,-486,-481,-474,-476,
+-469,-474,-477,-472,-466,-471,-467,-454,-452,-442,-444,-432,-418,-396,-391,-380,-373,-366,-362,-356,
+-356,-345,-336,-328,-298,-299,-317,-319,-315,-288,-283,-265,-270,-260,-247,-237,-214,-227,-227,-217,
+-206,-201,-189,-165,-128,-125,-132,-68,-145,-128,-90,-108,-87,-81,-80,-84,-67,-75,-55,-50,
+-49,-31,-38,-33,-15,4,18,47,39,89,92,137,119,157,202,188,113,130,137,120,
+140,160,213,149,216,237,338,304,219,226,220,209,240,324,468,341,335,328,320,347,
+396,522,529,427,433,500,593,558,533,516,557,632,647,702,761,738,765,713,756,800,
+834,854,856,850,849,865,900,948,991,1038,1081,1128,1158,1195,1213,1241,1277,1311,1382,1441,
+1530,1593,1617,1639,1660,1681,1717,1725,1737,1770,1854,1926,1937,1871,1834,1640,1405,1226,1436,1894,
+2471,2926,3248,3447,3557,3697,3881,3979,4061,4138,4193,4257,4245,4244,4299,4298,4247,4050,3820,3755,
+3583,3312,3232,2976,2830,2835,2776,2720,2682,2643,2610,2590,2573,2552,2522,2486,2447,2395,2331,2269,
+2226,2193,2159,2119,2072,2021,1971,1925,1878,1836,1798,1748,1682,1599,1525,1449,1331,1230,1143,1067,
+972,862,762,672,580,511,454,402,351,300,256,250,243,266,298,360,397,446,469,442,
+421,412,399,414,422,412,385,320,92,-19,-90,-131,-109,-90,-129,-188,-260,-330,-389,-448,
+-502,-554,-636,-750,-906,-1014,-1078,-1108,-1118,-1114,-1113,-1099,-1076,-1067,-1066,-1065,-1087,-1106,-1110,-1164,
+-1159,-1167,-1136,-1095,-1061,-1065,-1089,-1097,-1090,-1050,-998,-966,-939,-919,-897,-871,-846,-817,-781,-743,
+-705,-672,-651,-640,-631,-617,-600,-586,-571,-558,-536,-522,-511,-500,-496,-488,-485,-485,-486,-478,
+-471,-456,-445,-430,-418,-404,-391,-387,-367,-352,-324,-309,-283,-263,-235,-199,-186,-164,-132,-91,
+-62,-59,-20,7,45,71,96,116,141,158,183,205,229,260,276,300,334,360,378,394,
+433,449,468,501,532,553,585,619,647,679,715,734,751,777,813,839,865,902,941,960,
+976,998,1036,1088,1122,1170,1213,1248,1248,1209,1233,1244,1251,1270,1290,1307,1326,1336,1327,1332,
+1342,1357,1365,1372,1376,1382,1383,1394,1392,1396,1400,1414,1427,1446,1480,1487,1503,1524,1539,1555,
+1563,1588,1607,1623,1637,1661,1678,1692,1706,1728,1744,1772,1785,1810,1823,1840,1866,1890,1917,1935,
+1963,1989,2000,2015,2026,2043,2059,2087,2107,2119,2149,2190,2224,2247,2272,2298,2315,2356,2398,2442,
+2480,2519,2563,2602,2645,2716,2776,2843,2861,2800,2664,2498,2448,2452,2452,2448,2465,2480,2481,2487,
+2481,2476,2469,2470,2469,2464,2465,2464,2471,2480,2502,2540,2592,2644,2682,2721,2783,2863,2961,3035,
+3032,3062,3125,3192,3253,3296,3338,3367,3425,3496,3535,3482,3404,3290,3152,3041,2968,2931,2895,2851,
+2813,2804,2827,2859,2879,2870,2846,2822,2796,2771,2735,2687,2643,2631,2633,2647,2653,2626,2600,2580,
+2563,2550,2557,2590,2604,2601,2587,2589,2572,2533,2515,2516,2503,2510,2512,2476,2465,2475,2495,2503,
+2501,2548,2599,2616,2516,2365,2181,1985,1834,1775,1679,1724,1851,1823,1748,1630,1510,1392,1327,1306,
+1300,1295,1275,1248,1188,1134,1071,1026,989,968,977,990,948,849,729,661,629,611,600,569,
+538,502,463,434,415,406,406,417,433,449,463,474,479,467,453,439,423,419,432,486,
+538,591,719,813,864,874,909,950,967,880,823,773,702,635,566,500,427,387,351,332,
+302,282,262,246,223,206,198,189,181,180,181,185,188,192,191,179,172,177,171,192,
+207,220,228,223,229,242,244,244,237,233,227,229,229,221,210,200,192,189,182,176,
+168,169,166,142,163,155,147,107,123,135,132,133,166,135,141,221,194,174,206,177,
+163,139,123,97,98,89,86,62,50,36,28,22,23,19,22,26,2,-22,-31,-88,
+-140,-189,-223,-227,-258,-303,-317,-367,-404,-447,-497,-553,-575,-620,-683,-720,-772,-810,-865,-905,
+-960,-981,-1028,-1083,-1144,-1207,-1268,-1329,-1391,-1435,-1493,-1526,-1577,-1619,-1667,-1711,-1789,-1851,-1893,-1939,
+-1987,-2023,-2042,-2073,-2116,-2162,-2215,-2267,-2305,-2347,-2392,-2436,-2465,-2486,-2521,-2561,-2605,-2641,-2673,-2708,
+-2758,-2815,-2868,-2918,-2952,-2980,-3005,-3031,-3049,-3051,-3028,-3008,-2984,-2976,-2987,-3047,-3200,-3235,-3282,-3425,
+-3469,-3513,-3572,-3592,-3625,-3684,-3749,-3792,-3791,-3807,-3836,-3874,-3889,-3925,-3946,-3967,-3987,-4013,-4047,-4042,
+-4067,-4093,-4119,-4125,-4155,-4180,-4198,-4208,-4216,-4230,-4226,-4222,-4230,-4234,-4218,-4202,-4178,-4168,-4163,-4165,
+-4155,-4129,-4033,-3960,-3926,-3880,-3862,-3940,-3999,-4008,-3996,-3981,-3965,-3953,-3928,-3903,-3878,-3851,-3829,-3806,
+-3790,-3775,-3752,-3725,-3716,-3697,-3678,-3669,-3669,-3690,-3667,-3684,-3751,-3742,-3747,-3738,-3735,-3725,-3684,-3634,
+-3564,-3537,-3508,-3455,-3403,-3332,-3245,-3156,-3071,-2982,-2858,-2701,-2570,-2481,-2417,-2360,-2317,-2298,-2273,-2247,
+-2201,-2145,-2081,-1994,-1900,-1832,-1761,-1765,-1729,-1673,-1650,-1639,-1637,-1638,-1634,-1623,-1605,-1559,-1464,-1386,
+-1318,-1272,-1203,-1161,-1123,-1103,-1088,-1049,-1018,-993,-978,-949,-958,-983,-981,-939,-902,-884,-843,-809,
+-763,-726,-700,-677,-653,-627,-621,-595,-500,-368,-250,-208,-171,-37,75,51,44,71,118,184,
+281,353,394,400,361,262,175,118,84,64,72,97,141,187,258,324,401,500,615,725,
+827,914,988,1047,1104,1168,1224,1292,1365,1432,1495,1559,1619,1669,1717,1760,1815,1884,1948,2004,
+2058,2091,2127,2173,2199,2234,2282,2356,2400,2432,2451,2480,2514,2564,2612,2669,2723,2781,2832,2888,
+2944,2997,3047,3104,3198,3306,3385,3473,3565,3626,3714,3808,3876,3967,4027,4041,4048,4103,4120,4149,
+4169,4174,4208,4261,4327,4431,4550,4572,4591,4600,4598,4584,4598,4564,4534,4533,4517,4513,4500,4459,
+4252,4025,3947,3995,4076,4064,4025,3996,4011,4029,4053,4090,4114,4131,4152,4183,4179,4189,4193,4207,
+4257,4360,4453,4460,4453,4457,4476,4496,4534,4576,4619,4652,4685,4709,4720,4718,4722,4719,4697,4699,
+4705,4701,4670,4652,4662,4648,4684,4717,4749,4778,4815,4874,4973,5049,5063,5065,5087,5139,5136,5199,
+5208,5196,5180,5181,5182,5190,5228,5196,5169,5175,5196,5228,5269,5246,5235,5213,5220,5227,5210,5194,
+5182,5165,5140,5125,5103,5094,5091,5070,5044,5033,5003,4980,4959,4937,4919,4901,4887,4878,4874,4861,
+4869,4919,4951,4940,4928,4935,4995,5046,5101,5044,5021,5041,5039,5029,5009,4944,4821,4647,4413,3990,
+3517,3136,2942,2952,3169,3310,3354,3383,3423,3457,3447,3426,3388,3330,3293,3223,3144,3056,2973,2878,
+2784,2705,2624,2543,2468,2395,2319,2249,2177,2107,2056,2012,1967,1916,1857,1792,1722,1659,1609,1566,
+1523,1485,1451,1407,1358,1302,1252,1211,1183,1144,1100,1057,1017,989,955,927,917,911,890,874,
+893,839,801,778,750,719,691,663,635,596,558,514,480,441,396,362,330,303,272,243,
+218,192,172,161,157,144,117,100,89,57,39,0,23,-17,-27,-51,-82,-107,-125,-148,
+-150,-148,-139,-151,-201,-250,-274,-304,-343,-362,-370,-377,-387,-412,-443,-457,-367,-321,-366,-473,
+-510,-514,-541,-563,-587,-611,-647,-679,-690,-714,-748,-776,-773,-810,-843,-872,-894,-910,-935,-960,
+-985,-1006,-1029,-1047,-1063,-1081,-1100,-1114,-1127,-1135,-1138,-1151,-1177,-1188,-1196,-1210,-1218,-1230,-1241,-1245,
+-1256,-1267,-1270,-1272,-1273,-1267,-1262,-1255,-1255,-1257,-1257,-1264,-1263,-1270,-1270,-1261,-1271,-1271,-1253,-1253,
+-1245,-1244,-1239,-1231,-1221,-1216,-1202,-1172,-1152,-1142,-1124,-1108,-1100,-1100,-1096,-1081,-1078,-1074,-1061,-1062,
+-1055,-1044,-1032,-1022,-1006,-993,-984,-978,-963,-952,-940,-922,-906,-889,-890,-877,-860,-831,-823,-811,
+-812,-797,-757,-747,-758,-693,-725,-709,-718,-707,-690,-677,-671,-665,-648,-634,-605,-598,-587,-573,
+-552,-568,-593,-559,-569,-563,-555,-548,-550,-547,-544,-525,-523,-524,-509,-507,-500,-500,-492,-485,
+-483,-479,-472,-481,-475,-461,-463,-467,-460,-460,-454,-449,-450,-437,-415,-403,-391,-385,-389,-374,
+-371,-363,-351,-334,-329,-324,-302,-313,-315,-311,-300,-288,-260,-278,-266,-235,-216,-212,-231,-225,
+-135,-114,-106,-158,-212,-209,-159,-161,-133,-175,-157,-129,-124,-117,-112,-103,-73,-43,-40,-37,
+-19,-12,89,61,89,57,71,6,57,47,94,103,56,73,53,63,77,88,112,152,
+199,168,143,160,179,222,189,199,196,206,221,231,238,270,292,309,332,455,487,446,
+398,398,536,498,448,535,553,537,631,640,677,731,798,732,707,630,619,662,707,749,
+792,819,836,855,863,866,884,906,951,1001,1048,1080,1120,1159,1201,1289,1274,1314,1332,1392,
+1436,1490,1577,1582,1604,1618,1630,1681,1728,1757,1770,1839,1866,1897,1880,1822,1662,1405,1227,1480,
+1997,2588,3022,3263,3455,3578,3732,3919,4011,4076,4147,4184,4234,4217,4280,4325,4330,4233,4011,3792,
+3608,3544,3400,3181,2966,2869,2841,2772,2709,2666,2631,2600,2582,2573,2559,2521,2481,2433,2380,2323,
+2269,2231,2199,2162,2123,2080,2033,1985,1935,1872,1816,1782,1753,1705,1635,1549,1461,1349,1244,1160,
+1078,984,877,787,701,615,532,471,433,387,340,310,298,294,325,367,421,478,524,514,
+505,443,410,397,401,402,388,366,299,78,-19,-62,-58,-17,-74,-163,-241,-312,-379,-439,
+-501,-563,-622,-724,-860,-997,-1078,-1100,-1100,-1095,-1081,-1080,-1071,-1047,-1038,-1026,-1031,-1053,-1045,-1077,
+-1115,-1139,-1144,-1105,-1086,-1088,-1099,-1111,-1101,-1087,-1057,-1017,-978,-945,-914,-886,-861,-832,-805,-769,
+-729,-691,-658,-630,-613,-602,-587,-567,-552,-534,-521,-500,-484,-469,-460,-448,-441,-442,-447,-447,
+-437,-428,-419,-402,-397,-386,-372,-362,-348,-328,-312,-291,-270,-243,-208,-184,-173,-144,-119,-100,
+-75,-43,-4,22,58,77,100,133,163,182,200,224,244,268,290,305,328,357,388,413,
+416,440,463,491,528,557,589,619,653,686,706,731,755,788,813,841,866,895,923,957,
+981,1018,1050,1088,1123,1135,1129,1148,1179,1247,1285,1305,1294,1296,1306,1315,1317,1322,1329,1344,
+1350,1352,1367,1370,1381,1387,1386,1382,1393,1406,1424,1435,1451,1470,1479,1490,1499,1514,1532,1547,
+1559,1577,1597,1615,1630,1647,1669,1690,1706,1726,1746,1766,1788,1813,1832,1857,1871,1894,1902,1900,
+1914,1929,1954,1992,2026,2038,2072,2092,2120,2140,2170,2187,2200,2214,2250,2283,2311,2346,2389,2428,
+2472,2518,2560,2593,2637,2686,2744,2804,2832,2822,2798,2706,2531,2460,2456,2459,2467,2481,2498,2500,
+2497,2493,2487,2478,2470,2474,2479,2483,2484,2491,2502,2518,2554,2603,2650,2689,2740,2810,2891,2983,
+3064,3056,3061,3119,3185,3255,3308,3338,3368,3408,3492,3534,3481,3386,3303,3176,3055,2988,2952,2917,
+2875,2845,2844,2872,2902,2910,2892,2868,2851,2829,2800,2770,2716,2659,2655,2667,2696,2688,2658,2623,
+2592,2580,2585,2604,2639,2643,2633,2643,2652,2637,2613,2628,2638,2610,2595,2590,2570,2538,2564,2603,
+2651,2678,2727,2756,2733,2582,2420,2215,2065,2002,1883,1789,1836,1982,1898,1819,1740,1614,1481,1408,
+1366,1351,1342,1311,1264,1219,1191,1120,1056,1020,1018,1033,1062,1026,929,771,677,635,619,603,
+582,563,526,485,456,443,444,445,464,493,509,515,525,528,524,509,491,475,481,529,
+577,586,595,660,801,864,891,951,1000,915,825,776,750,720,703,654,559,489,450,413,
+401,379,325,314,293,272,254,242,229,219,217,215,216,215,216,213,207,205,206,221,
+235,244,251,252,260,279,288,289,285,285,282,279,273,271,263,252,242,238,237,229,
+220,209,203,186,189,188,183,165,153,149,172,172,193,199,184,198,249,268,253,246,
+231,205,197,189,162,157,140,135,124,120,107,125,147,159,139,124,98,71,19,-36,
+-132,-170,-159,-125,-151,-190,-243,-270,-319,-338,-413,-437,-442,-486,-569,-594,-649,-698,-739,-787,
+-835,-868,-892,-952,-1023,-1077,-1130,-1200,-1259,-1297,-1353,-1402,-1455,-1496,-1549,-1586,-1653,-1716,-1766,-1820,
+-1866,-1905,-1920,-1948,-1994,-2041,-2094,-2145,-2198,-2236,-2285,-2322,-2360,-2387,-2417,-2450,-2492,-2535,-2570,-2600,
+-2641,-2701,-2753,-2803,-2843,-2884,-2907,-2936,-2964,-2983,-2987,-2955,-2934,-2921,-2934,-2950,-3092,-3126,-3193,-3247,
+-3372,-3410,-3444,-3509,-3535,-3565,-3631,-3703,-3743,-3743,-3764,-3794,-3839,-3853,-3872,-3892,-3922,-3948,-3977,-4000,
+-4002,-4025,-4049,-4071,-4089,-4117,-4138,-4161,-4187,-4195,-4192,-4182,-4175,-4198,-4200,-4182,-4167,-4145,-4136,-4134,
+-4130,-4115,-4085,-3961,-3909,-3890,-3863,-3872,-3952,-3990,-3991,-3981,-3972,-3960,-3947,-3928,-3901,-3868,-3848,-3831,
+-3809,-3790,-3777,-3759,-3751,-3739,-3712,-3702,-3691,-3687,-3685,-3648,-3666,-3701,-3735,-3749,-3749,-3754,-3752,-3741,
+-3705,-3650,-3579,-3559,-3517,-3458,-3387,-3300,-3204,-3112,-3040,-2920,-2771,-2634,-2550,-2486,-2432,-2379,-2339,-2308,
+-2275,-2231,-2175,-2107,-2013,-1944,-1891,-1866,-1838,-1768,-1669,-1662,-1665,-1671,-1659,-1658,-1664,-1656,-1621,-1534,
+-1440,-1370,-1331,-1256,-1196,-1176,-1156,-1137,-1100,-1089,-1085,-1070,-1037,-1039,-1063,-1075,-1025,-968,-934,-891,
+-843,-814,-781,-743,-720,-709,-702,-693,-673,-621,-518,-385,-276,-192,-51,60,37,46,87,129,
+231,318,385,394,387,366,279,169,118,98,79,99,125,153,200,250,333,428,526,627,
+729,808,867,911,957,1002,1058,1121,1216,1275,1334,1398,1456,1509,1559,1598,1660,1718,1789,1866,
+1928,1973,1993,2019,2073,2106,2145,2198,2259,2279,2318,2342,2373,2410,2473,2553,2611,2660,2711,2750,
+2798,2861,2922,2983,3049,3137,3226,3304,3391,3471,3531,3638,3737,3807,3866,3907,3892,3919,3972,3969,
+3989,4022,4042,4088,4150,4224,4334,4442,4500,4536,4535,4520,4535,4554,4515,4487,4498,4480,4463,4452,
+4407,4210,3955,3883,3946,4043,3999,3970,3961,3959,3971,3995,4015,4040,4047,4074,4108,4121,4118,4111,
+4125,4162,4230,4286,4310,4350,4390,4411,4446,4476,4512,4550,4586,4615,4644,4652,4667,4664,4671,4656,
+4647,4638,4645,4627,4590,4594,4598,4643,4678,4705,4722,4746,4809,4928,5007,5027,5024,5028,5063,5095,
+5107,5148,5151,5143,5158,5151,5141,5175,5186,5141,5143,5168,5199,5204,5196,5214,5184,5180,5187,5184,
+5170,5149,5129,5113,5100,5076,5070,5063,5047,5019,4997,4974,4951,4927,4903,4885,4871,4860,4853,4845,
+4847,4872,4920,4946,4931,4915,4918,4985,5064,5092,5046,5002,4992,4989,4991,4960,4868,4745,4530,4227,
+3786,3346,3009,2831,2967,3350,3398,3393,3400,3423,3440,3438,3424,3390,3323,3257,3210,3128,3046,2954,
+2866,2784,2700,2625,2563,2480,2389,2311,2272,2222,2096,2044,2010,1963,1918,1864,1803,1739,1676,1624,
+1580,1533,1484,1447,1415,1366,1315,1270,1229,1186,1151,1105,1064,1010,980,947,921,912,889,866,
+853,831,842,794,765,742,709,671,642,614,582,544,501,457,425,380,346,315,292,266,
+235,203,176,150,137,139,126,106,87,63,37,4,-17,-7,-35,-39,-58,-91,-117,-132,
+-147,-152,-160,-177,-195,-220,-241,-235,-256,-299,-326,-335,-358,-380,-402,-451,-420,-231,-263,-261,
+-364,-460,-511,-542,-550,-542,-580,-616,-643,-659,-686,-713,-740,-757,-778,-806,-844,-869,-889,-922,
+-950,-977,-997,-1019,-1036,-1049,-1073,-1092,-1108,-1121,-1138,-1144,-1154,-1175,-1187,-1195,-1208,-1217,-1226,-1244,
+-1258,-1271,-1282,-1290,-1294,-1293,-1282,-1281,-1275,-1275,-1275,-1270,-1270,-1272,-1274,-1267,-1263,-1265,-1269,-1271,
+-1254,-1242,-1246,-1238,-1227,-1230,-1225,-1211,-1193,-1175,-1162,-1149,-1134,-1118,-1108,-1105,-1095,-1089,-1084,-1073,
+-1069,-1058,-1054,-1041,-1024,-1010,-999,-997,-991,-979,-964,-950,-939,-918,-899,-886,-885,-879,-869,-853,
+-832,-812,-773,-757,-787,-773,-747,-754,-746,-728,-710,-709,-696,-684,-663,-634,-660,-656,-631,-585,
+-573,-584,-575,-595,-582,-552,-566,-568,-572,-566,-557,-545,-547,-552,-536,-523,-523,-513,-511,-501,
+-496,-491,-499,-484,-482,-486,-474,-469,-472,-467,-466,-467,-456,-458,-452,-438,-422,-419,-416,-416,
+-392,-378,-371,-352,-367,-359,-344,-327,-312,-288,-256,-271,-250,-278,-274,-199,-111,-168,-214,-216,
+-168,-152,-103,-160,-169,-137,-177,-180,-181,-177,-154,-139,-106,-123,-124,-104,-79,-40,-26,-64,
+-47,-13,-31,-30,-33,-38,-34,-6,-26,6,2,13,25,33,41,49,63,88,157,114,
+110,145,155,158,136,131,140,141,147,162,196,225,257,263,273,290,293,301,324,368,
+366,436,385,388,392,430,495,573,565,528,502,517,555,571,583,590,607,638,683,721,
+743,777,808,835,891,911,903,914,924,958,1007,1047,1085,1116,1152,1210,1265,1312,1363,1392,
+1431,1463,1486,1492,1522,1559,1600,1650,1718,1779,1800,1808,1834,1840,1851,1840,1787,1639,1380,1234,
+1531,2092,2616,3031,3247,3424,3579,3753,3945,4040,4108,4188,4201,4172,4209,4230,4292,4299,4211,4049,
+3953,3660,3498,3311,3085,3007,2924,2817,2737,2680,2640,2608,2580,2560,2553,2545,2509,2466,2414,2359,
+2313,2267,2227,2194,2160,2119,2077,2036,1985,1928,1862,1800,1759,1738,1705,1650,1583,1486,1394,1276,
+1192,1107,1018,923,815,722,632,557,507,480,448,401,390,357,371,424,471,495,535,546,
+544,520,455,412,398,398,392,369,339,280,44,-28,-27,46,15,-91,-200,-278,-341,-411,
+-485,-567,-635,-719,-841,-955,-1042,-1101,-1094,-1079,-1062,-1047,-1047,-1038,-1016,-1017,-1004,-1000,-1007,-1040,
+-1076,-1097,-1119,-1105,-1095,-1083,-1105,-1117,-1103,-1084,-1055,-1028,-1006,-976,-940,-907,-874,-848,-822,-792,
+-756,-718,-679,-644,-612,-587,-571,-556,-536,-516,-500,-486,-466,-449,-431,-415,-403,-399,-405,-405,
+-398,-393,-379,-365,-359,-348,-339,-327,-311,-293,-269,-248,-225,-209,-179,-151,-139,-133,-120,-91,
+-81,-49,-15,17,55,87,119,143,142,182,207,233,255,287,300,329,355,375,403,434,
+460,485,518,529,548,568,596,626,658,679,719,736,758,780,815,838,876,903,937,962,
+1001,1026,1043,1063,1068,1088,1127,1165,1224,1244,1272,1303,1304,1300,1295,1290,1304,1312,1320,1340,
+1354,1357,1366,1363,1373,1375,1399,1404,1417,1419,1438,1438,1451,1463,1478,1491,1502,1516,1527,1555,
+1565,1577,1594,1613,1633,1646,1666,1685,1704,1722,1743,1771,1797,1814,1830,1835,1852,1865,1896,1913,
+1926,1938,1970,1978,1998,2038,2049,2076,2095,2111,2133,2152,2203,2209,2231,2261,2303,2330,2393,2418,
+2465,2490,2534,2583,2632,2687,2734,2759,2760,2783,2818,2865,2757,2532,2460,2450,2472,2493,2503,2513,
+2511,2502,2494,2482,2475,2478,2487,2495,2500,2503,2510,2520,2536,2573,2621,2668,2707,2756,2826,2912,
+3009,3093,3095,3081,3120,3177,3229,3295,3312,3320,3358,3415,3455,3474,3377,3298,3176,3058,3020,3007,
+2976,2935,2916,2923,2943,2959,2951,2925,2900,2887,2878,2855,2816,2746,2693,2690,2715,2728,2718,2691,
+2641,2610,2619,2645,2672,2693,2701,2689,2711,2718,2698,2687,2691,2680,2665,2656,2652,2681,2685,2667,
+2661,2690,2801,2863,2876,2779,2628,2505,2372,2241,2156,2032,1927,1943,2063,1994,1901,1810,1694,1558,
+1469,1426,1409,1404,1359,1311,1281,1232,1166,1097,1080,1070,1086,1112,1068,934,763,675,626,614,
+600,585,576,544,503,479,476,480,490,515,545,563,573,578,580,583,573,549,531,541,
+596,610,617,623,658,762,856,909,950,940,870,827,794,765,735,704,671,626,576,514,
+462,458,411,393,369,346,324,307,292,277,263,257,254,252,249,245,233,238,238,249,
+265,274,280,280,288,311,324,330,334,335,338,337,336,332,325,312,299,288,281,274,
+267,262,255,239,225,218,227,226,199,203,222,255,237,229,289,260,293,336,318,338,
+316,329,306,248,235,247,242,240,245,233,242,249,246,237,221,165,139,115,30,-48,
+-63,-45,-15,-35,-80,-121,-129,-178,-225,-257,-300,-297,-386,-398,-451,-476,-529,-588,-623,-669,
+-712,-759,-793,-857,-897,-938,-1005,-1070,-1127,-1165,-1222,-1275,-1319,-1367,-1417,-1473,-1531,-1587,-1633,-1682,
+-1723,-1769,-1794,-1819,-1866,-1913,-1967,-2029,-2085,-2132,-2167,-2217,-2256,-2288,-2319,-2355,-2392,-2434,-2478,-2509,
+-2534,-2586,-2635,-2694,-2735,-2772,-2811,-2838,-2868,-2897,-2913,-2915,-2888,-2870,-2854,-2869,-2941,-3012,-3069,-3159,
+-3246,-3326,-3345,-3383,-3439,-3478,-3514,-3574,-3656,-3696,-3702,-3722,-3755,-3800,-3813,-3827,-3851,-3875,-3893,-3932,
+-3952,-3970,-3994,-4011,-4031,-4051,-4079,-4102,-4126,-4149,-4155,-4151,-4139,-4134,-4145,-4154,-4143,-4128,-4116,-4111,
+-4103,-4095,-4075,-4062,-3993,-3976,-3955,-3934,-3945,-3977,-3977,-3962,-3960,-3959,-3955,-3944,-3917,-3891,-3863,-3840,
+-3822,-3794,-3782,-3771,-3774,-3768,-3746,-3739,-3733,-3720,-3711,-3705,-3678,-3689,-3690,-3691,-3723,-3762,-3775,-3778,
+-3771,-3750,-3717,-3660,-3591,-3570,-3525,-3457,-3373,-3265,-3174,-3107,-2996,-2873,-2733,-2623,-2565,-2504,-2437,-2376,
+-2340,-2296,-2256,-2202,-2125,-2032,-1961,-1941,-1897,-1857,-1758,-1700,-1690,-1692,-1687,-1691,-1701,-1705,-1727,-1703,
+-1635,-1548,-1463,-1385,-1314,-1241,-1184,-1198,-1166,-1147,-1145,-1151,-1150,-1115,-1071,-1096,-1140,-1101,-1046,-1002,
+-943,-879,-857,-845,-814,-785,-776,-769,-761,-743,-701,-641,-537,-394,-269,-182,-115,-113,-82,-25,
+57,203,322,377,372,379,358,317,262,220,183,181,221,247,279,293,340,402,483,570,
+645,710,766,801,833,859,905,952,1007,1109,1188,1249,1305,1357,1410,1461,1508,1568,1635,1700,
+1764,1830,1870,1878,1915,1961,2001,2041,2099,2169,2202,2234,2259,2300,2339,2408,2500,2558,2594,2629,
+2663,2717,2792,2859,2942,3027,3092,3149,3231,3305,3376,3454,3559,3654,3715,3765,3790,3778,3808,3849,
+3851,3871,3907,3929,3984,4048,4119,4227,4338,4418,4447,4444,4456,4493,4510,4511,4472,4458,4445,4425,
+4404,4342,4137,3892,3822,3870,3907,3903,3886,3895,3907,3911,3924,3942,3968,3974,4018,4046,4037,4019,
+4038,4058,4108,4159,4203,4219,4253,4298,4338,4382,4414,4449,4495,4524,4551,4574,4598,4601,4624,4626,
+4606,4595,4584,4581,4555,4523,4520,4547,4587,4626,4660,4685,4700,4733,4844,4950,4994,4984,4976,5017,
+5041,5054,5107,5104,5108,5115,5118,5115,5125,5123,5116,5107,5126,5175,5153,5151,5190,5153,5139,5153,
+5142,5126,5110,5099,5087,5062,5056,5041,5024,5007,4986,4972,4949,4922,4897,4875,4855,4839,4830,4827,
+4820,4808,4823,4903,4925,4907,4901,4922,5004,5054,5040,5024,5001,4989,4987,4961,4895,4812,4663,4438,
+4153,3690,3224,2877,2732,2896,3202,3397,3423,3417,3420,3421,3412,3390,3358,3305,3261,3208,3139,3056,
+2973,2872,2775,2687,2613,2561,2481,2396,2303,2227,2151,2085,2037,2001,1957,1906,1854,1801,1739,1685,
+1634,1578,1529,1482,1436,1402,1366,1328,1305,1254,1183,1147,1109,1055,1008,974,948,930,911,878,
+854,837,819,799,804,755,719,692,655,617,594,567,527,484,442,408,373,338,307,280,
+252,225,190,161,135,119,119,105,79,54,40,32,7,-19,-40,-57,-60,-71,-97,-118,
+-130,-139,-152,-156,-178,-195,-212,-232,-250,-262,-247,-286,-316,-339,-361,-409,-462,-419,-224,-266,
+-333,-371,-401,-400,-432,-472,-490,-543,-578,-608,-631,-659,-660,-702,-720,-732,-759,-808,-828,-865,
+-904,-937,-960,-981,-1001,-1020,-1042,-1067,-1091,-1102,-1112,-1127,-1140,-1153,-1171,-1186,-1197,-1204,-1214,-1222,
+-1237,-1256,-1275,-1288,-1301,-1309,-1314,-1306,-1299,-1294,-1290,-1287,-1287,-1288,-1293,-1287,-1283,-1275,-1267,-1267,
+-1270,-1271,-1255,-1244,-1240,-1233,-1221,-1216,-1211,-1196,-1188,-1174,-1169,-1153,-1137,-1131,-1120,-1114,-1105,-1103,
+-1099,-1090,-1083,-1064,-1052,-1040,-1029,-1024,-1023,-1010,-991,-979,-960,-948,-928,-910,-897,-891,-898,-881,
+-870,-858,-847,-836,-819,-808,-800,-785,-766,-758,-756,-741,-740,-733,-717,-718,-677,-628,-624,-648,
+-653,-646,-628,-619,-607,-618,-551,-557,-572,-583,-572,-563,-566,-571,-557,-549,-541,-537,-527,-520,
+-516,-510,-503,-513,-496,-488,-496,-495,-481,-482,-488,-471,-453,-457,-454,-454,-435,-449,-440,-418,
+-366,-385,-397,-389,-371,-358,-351,-348,-335,-314,-284,-252,-262,-254,-220,-232,-218,-218,-198,-155,
+-205,-219,-208,-199,-222,-203,-181,-189,-169,-154,-162,-157,-152,-129,-132,-133,-119,-99,-113,-93,
+-78,-98,-85,-82,-73,-51,-38,-31,3,0,13,26,36,56,77,84,127,118,90,163,
+130,110,134,125,167,164,168,176,172,188,213,226,238,258,271,279,299,308,300,322,
+368,387,366,369,380,390,401,419,435,445,442,460,493,517,540,582,618,652,670,704,
+757,769,784,819,859,1010,1099,1024,949,940,968,1013,1077,1157,1132,1147,1202,1262,1316,1371,
+1415,1430,1456,1504,1530,1558,1592,1649,1722,1772,1807,1834,1853,1864,1864,1841,1801,1724,1565,1315,
+1225,1566,2150,2649,3028,3265,3429,3597,3800,3914,4004,4155,4219,4210,4136,4227,4161,4197,4223,4142,
+4086,4051,3736,3537,3264,3041,3063,2915,2774,2685,2637,2599,2577,2549,2523,2514,2508,2480,2435,2387,
+2342,2311,2271,2227,2188,2148,2103,2057,2030,1987,1919,1858,1802,1754,1721,1694,1653,1597,1504,1412,
+1319,1220,1120,1031,948,862,761,659,594,551,528,508,482,466,445,462,490,561,605,626,
+629,585,524,472,437,407,395,382,350,306,186,34,-24,24,100,11,-114,-214,-287,-350,
+-431,-528,-614,-698,-798,-919,-974,-1015,-1063,-1071,-1045,-1015,-1006,-1023,-1015,-1011,-1004,-988,-990,-1000,
+-1020,-1039,-1047,-1070,-1081,-1070,-915,-1051,-1031,-994,-1060,-1038,-1002,-984,-961,-929,-897,-864,-838,-813,
+-781,-742,-703,-664,-628,-591,-564,-544,-526,-506,-484,-470,-452,-434,-417,-402,-384,-375,-368,-363,
+-357,-348,-338,-320,-316,-304,-301,-288,-280,-266,-247,-227,-215,-193,-170,-157,-142,-117,-103,-78,
+-47,-38,-11,16,45,71,100,126,166,191,216,248,260,278,310,337,355,381,402,421,
+442,460,480,511,543,560,598,633,649,683,706,737,767,798,827,859,881,911,933,951,
+963,980,1006,1036,1069,1100,1132,1183,1229,1258,1268,1261,1318,1326,1328,1331,1329,1336,1340,1346,
+1346,1360,1360,1371,1381,1398,1404,1406,1411,1412,1423,1434,1450,1460,1470,1487,1500,1515,1527,1547,
+1564,1579,1592,1613,1627,1645,1664,1686,1707,1729,1750,1768,1778,1797,1819,1836,1854,1871,1886,1906,
+1917,1940,1960,1978,2007,2039,2049,2035,2063,2116,2145,2179,2206,2206,2226,2257,2285,2315,2338,2392,
+2476,2527,2525,2547,2593,2658,2704,2696,2713,2721,2632,2657,2644,2555,2463,2448,2466,2495,2522,2535,
+2535,2528,2509,2494,2483,2483,2494,2506,2516,2519,2521,2525,2537,2555,2589,2636,2687,2730,2775,2839,
+2920,3031,3122,3138,3122,3134,3178,3212,3263,3289,3315,3366,3441,3484,3492,3375,3259,3164,3061,3048,
+3047,3035,3019,3017,3019,3023,3014,2989,2958,2932,2921,2912,2878,2835,2783,2737,2735,2752,2758,2737,
+2721,2675,2654,2683,2727,2759,2785,2780,2770,2785,2780,2769,2783,2756,2735,2749,2770,2778,2792,2796,
+2768,2737,2747,2826,2875,2877,2812,2716,2630,2517,2363,2248,2117,2034,2041,2161,2071,1977,1873,1754,
+1627,1535,1488,1465,1446,1413,1371,1323,1270,1207,1169,1154,1138,1158,1160,1081,900,767,689,642,
+619,596,587,585,566,533,516,522,535,552,574,601,616,630,637,642,648,640,612,586,
+590,622,616,609,600,634,742,835,894,903,898,876,873,841,806,776,751,749,706,650,
+574,533,519,483,459,423,406,382,362,344,329,313,306,302,296,290,280,271,269,279,
+294,306,313,317,320,348,364,377,380,390,397,402,403,400,394,381,369,356,339,328,
+312,308,295,285,256,255,270,291,281,253,276,285,290,281,318,366,348,400,422,399,
+395,385,417,414,380,349,357,351,326,315,290,298,328,348,298,246,206,148,43,27,
+92,106,86,51,-13,-42,-61,-87,-122,-164,-174,-196,-242,-303,-325,-370,-394,-438,-497,-548,
+-595,-624,-672,-732,-772,-811,-874,-927,-991,-1036,-1076,-1136,-1194,-1238,-1295,-1340,-1399,-1461,-1507,-1558,
+-1593,-1656,-1674,-1695,-1750,-1795,-1850,-1911,-1969,-2019,-2066,-2105,-2143,-2169,-2209,-2246,-2287,-2329,-2374,-2413,
+-2452,-2488,-2528,-2585,-2628,-2666,-2703,-2736,-2763,-2798,-2822,-2835,-2842,-2829,-2814,-2821,-2866,-2878,-2923,-3019,
+-3116,-3197,-3277,-3288,-3332,-3386,-3424,-3465,-3530,-3607,-3650,-3656,-3676,-3708,-3752,-3771,-3792,-3808,-3832,-3857,
+-3879,-3909,-3937,-3953,-3972,-3989,-4010,-4030,-4054,-4071,-4089,-4105,-4104,-4095,-4087,-4087,-4097,-4095,-4092,-4083,
+-4075,-4071,-4052,-4030,-4017,-4015,-4019,-4011,-4003,-3990,-3969,-3950,-3943,-3943,-3950,-3947,-3931,-3906,-3876,-3850,
+-3828,-3803,-3787,-3772,-3769,-3771,-3759,-3764,-3757,-3750,-3742,-3732,-3713,-3708,-3729,-3695,-3721,-3734,-3747,-3781,
+-3786,-3792,-3789,-3772,-3734,-3680,-3614,-3579,-3523,-3449,-3335,-3241,-3183,-3062,-2952,-2850,-2721,-2650,-2565,-2481,
+-2408,-2366,-2317,-2266,-2205,-2128,-2042,-1994,-1976,-1887,-1832,-1758,-1733,-1713,-1696,-1701,-1711,-1723,-1735,-1750,
+-1746,-1680,-1635,-1573,-1504,-1440,-1360,-1267,-1249,-1245,-1200,-1207,-1203,-1187,-1183,-1140,-1121,-1160,-1155,-1125,
+-1094,-1017,-951,-931,-921,-887,-861,-855,-854,-843,-822,-796,-741,-660,-562,-482,-430,-413,-370,-316,
+-228,-134,-39,68,180,238,247,239,260,269,272,226,213,260,317,340,363,392,427,473,
+516,573,618,666,693,718,780,828,857,896,992,1088,1166,1224,1279,1327,1379,1426,1487,1553,
+1605,1664,1733,1774,1789,1815,1861,1912,1966,2029,2089,2128,2164,2203,2235,2276,2348,2439,2497,2536,
+2565,2604,2668,2750,2814,2893,2990,3054,3091,3142,3206,3287,3369,3480,3567,3618,3657,3663,3668,3703,
+3735,3761,3773,3794,3828,3885,3950,4023,4112,4222,4312,4346,4366,4389,4437,4456,4480,4458,4422,4393,
+4379,4344,4257,3989,3798,3755,3789,3830,3837,3833,3824,3838,3845,3855,3866,3870,3895,3955,3950,3946,
+3949,3990,4031,4081,4177,4220,4194,4201,4224,4276,4308,4360,4382,4431,4470,4490,4510,4528,4550,4571,
+4590,4552,4539,4535,4522,4490,4465,4474,4499,4523,4563,4619,4653,4657,4666,4799,4900,4935,4943,4929,
+4948,4993,4977,5048,5063,5075,5080,5084,5085,5086,5081,5082,5084,5089,5118,5118,5115,5113,5100,5116,
+5108,5100,5097,5086,5077,5060,5043,5021,5009,4991,4968,4957,4937,4918,4894,4868,4849,4830,4819,4808,
+4806,4797,4784,4779,4851,4892,4879,4876,4885,4954,5047,5014,4990,4980,4963,4963,4933,4867,4757,4605,
+4378,4050,3597,3137,2777,2655,2839,3150,3497,3520,3442,3402,3397,3385,3363,3329,3280,3232,3186,3126,
+3050,2964,2866,2781,2692,2616,2539,2459,2384,2307,2220,2140,2080,2038,1996,1947,1902,1856,1804,1746,
+1695,1648,1596,1533,1472,1418,1388,1363,1324,1282,1238,1196,1151,1114,1059,1009,978,948,928,910,
+881,839,810,805,789,762,762,709,684,651,609,580,547,513,472,433,400,361,324,291,
+263,238,212,178,145,117,99,87,77,58,32,26,7,2,-25,-47,-55,-75,-86,-90,
+-111,-129,-135,-150,-155,-179,-202,-217,-238,-256,-269,-233,-276,-311,-333,-355,-409,-460,-465,-323,
+-324,-292,-372,-418,-408,-414,-410,-445,-491,-524,-560,-587,-624,-657,-672,-672,-702,-726,-774,-794,
+-829,-866,-903,-931,-961,-983,-1003,-1025,-1047,-1072,-1089,-1104,-1114,-1125,-1138,-1158,-1178,-1194,-1208,-1222,
+-1229,-1244,-1260,-1273,-1291,-1299,-1311,-1318,-1320,-1319,-1312,-1310,-1298,-1300,-1298,-1302,-1298,-1295,-1288,-1283,
+-1276,-1271,-1273,-1265,-1253,-1249,-1237,-1226,-1214,-1208,-1202,-1193,-1184,-1175,-1168,-1148,-1141,-1137,-1135,-1122,
+-1118,-1113,-1106,-1100,-1084,-1078,-1067,-1052,-1042,-1038,-1019,-1009,-994,-980,-960,-944,-922,-907,-904,-909,
+-881,-876,-866,-850,-844,-834,-814,-802,-795,-775,-767,-757,-755,-751,-751,-741,-738,-732,-723,-710,
+-687,-664,-629,-604,-649,-655,-647,-624,-610,-599,-602,-596,-581,-586,-579,-572,-558,-554,-548,-538,
+-528,-529,-518,-489,-509,-506,-497,-501,-511,-503,-500,-502,-480,-482,-465,-462,-458,-445,-440,-420,
+-396,-366,-343,-353,-347,-317,-273,-316,-316,-328,-322,-313,-303,-290,-307,-301,-295,-287,-283,-283,
+-250,-265,-239,-239,-214,-216,-197,-201,-194,-184,-180,-183,-169,-165,-153,-154,-135,-132,-105,-85,
+-101,-88,-82,-66,-62,-43,-23,-13,-1,-1,6,16,32,70,79,108,111,105,112,102,
+99,110,115,132,139,165,180,192,198,204,216,225,234,249,259,276,292,306,316,320,
+371,358,349,369,397,406,412,419,423,437,459,475,505,540,576,591,618,659,679,704,
+722,742,761,785,815,853,943,1077,1088,981,963,983,1027,1077,1119,1139,1166,1211,1261,1302,
+1327,1373,1398,1435,1475,1520,1586,1635,1688,1742,1777,1812,1847,1881,1898,1899,1872,1807,1701,1514,
+1249,1225,1614,2197,2670,3057,3268,3433,3639,3831,3960,4034,4130,4188,4180,4198,4203,4101,4147,4164,
+4061,4011,3907,3637,3614,3330,3047,2991,2837,2717,2633,2589,2550,2527,2507,2483,2460,2457,2440,2403,
+2364,2321,2293,2261,2222,2172,2125,2080,2037,2013,1977,1920,1864,1811,1755,1714,1692,1663,1626,1533,
+1432,1355,1256,1150,1063,979,870,766,677,627,602,570,526,500,491,493,506,557,616,677,
+719,707,655,595,523,483,416,376,383,363,233,119,24,-18,47,111,13,-105,-202,-277,
+-352,-452,-547,-640,-738,-839,-905,-931,-965,-1020,-1052,-1039,-1007,-1017,-1009,-1010,-1004,-983,-964,-975,
+-986,-1007,-1016,-1010,-1012,-1066,-1084,-1071,-1112,-1063,-1052,-1050,-1019,-978,-958,-939,-912,-883,-850,-821,
+-798,-764,-726,-686,-649,-613,-577,-550,-529,-511,-490,-467,-446,-428,-409,-385,-355,-335,-327,-326,
+-328,-326,-320,-309,-296,-291,-283,-273,-262,-244,-226,-209,-187,-173,-154,-140,-131,-116,-101,-67,
+-34,3,33,69,87,112,143,167,187,213,241,273,293,314,328,367,379,402,427,448,
+471,495,525,554,572,593,621,640,663,694,721,735,763,784,810,841,863,876,900,934,
+962,990,1016,1053,1073,1095,1130,1167,1190,1212,1253,1287,1267,1331,1327,1334,1311,1325,1330,1337,
+1349,1370,1378,1378,1391,1397,1409,1411,1414,1427,1435,1440,1441,1463,1476,1493,1509,1518,1527,1539,
+1557,1573,1592,1605,1627,1643,1673,1683,1677,1700,1727,1736,1764,1786,1810,1825,1839,1859,1874,1892,
+1915,1936,1953,1977,1981,1994,2017,2035,2082,2105,2125,2162,2174,2195,2212,2228,2258,2289,2309,2340,
+2393,2489,2543,2554,2578,2608,2632,2606,2661,2624,2587,2530,2500,2493,2473,2461,2472,2493,2520,2541,
+2553,2551,2546,2530,2516,2508,2507,2515,2529,2534,2534,2532,2537,2550,2573,2605,2651,2704,2750,2793,
+2848,2930,3030,3130,3165,3149,3141,3171,3206,3233,3279,3332,3406,3481,3529,3492,3380,3254,3173,3078,
+3057,3075,3086,3103,3114,3107,3087,3044,3000,2970,2956,2942,2922,2886,2851,2821,2784,2786,2808,2819,
+2789,2772,2747,2726,2763,2814,2840,2843,2842,2847,2848,2836,2839,2846,2813,2808,2833,2877,2878,2862,
+2857,2848,2838,2859,2842,2872,2887,2854,2787,2701,2555,2470,2347,2241,2132,2116,2229,2134,2052,1954,
+1811,1670,1591,1547,1514,1493,1462,1424,1370,1315,1281,1249,1226,1221,1230,1218,1112,912,799,727,
+681,657,624,602,601,595,575,567,577,598,615,631,659,676,684,696,703,711,701,672,
+642,629,622,597,587,610,673,778,859,911,934,941,935,943,916,881,852,841,829,777,
+706,643,607,582,564,524,487,475,441,416,397,383,369,365,358,345,337,320,311,318,
+328,337,348,357,362,389,406,423,434,449,460,461,467,471,463,453,443,429,413,394,
+372,344,334,338,326,302,289,339,346,322,327,349,384,361,334,415,422,449,501,526,
+495,491,484,520,516,476,465,464,467,431,405,370,386,429,436,365,298,175,116,187,
+193,208,187,128,68,30,29,-14,-50,-68,-81,-120,-171,-198,-206,-241,-312,-333,-356,-415,
+-470,-515,-551,-617,-658,-686,-748,-792,-858,-904,-959,-1003,-1069,-1139,-1178,-1217,-1272,-1338,-1385,-1418,
+-1471,-1523,-1564,-1581,-1625,-1684,-1736,-1793,-1850,-1909,-1955,-1988,-2020,-2043,-2078,-2130,-2179,-2227,-2271,-2310,
+-2350,-2384,-2418,-2463,-2512,-2556,-2592,-2630,-2653,-2684,-2720,-2745,-2770,-2778,-2779,-2795,-2819,-2786,-2768,-2843,
+-2950,-3059,-3153,-3230,-3239,-3283,-3328,-3370,-3416,-3478,-3557,-3602,-3609,-3623,-3654,-3701,-3728,-3743,-3759,-3778,
+-3797,-3822,-3846,-3890,-3898,-3918,-3944,-3961,-3975,-3999,-4011,-4018,-4045,-4054,-4048,-4042,-4037,-4041,-4044,-4046,
+-4041,-4031,-4028,-4005,-3991,-3986,-3992,-3982,-3978,-3975,-3970,-3940,-3914,-3913,-3918,-3916,-3916,-3904,-3885,-3858,
+-3836,-3817,-3801,-3794,-3785,-3780,-3761,-3771,-3775,-3767,-3766,-3768,-3770,-3752,-3682,-3736,-3726,-3727,-3745,-3745,
+-3762,-3772,-3793,-3802,-3803,-3783,-3753,-3705,-3636,-3579,-3519,-3419,-3343,-3268,-3140,-3024,-2926,-2819,-2745,-2636,
+-2529,-2463,-2408,-2344,-2277,-2208,-2121,-2040,-2027,-1997,-1882,-1822,-1779,-1758,-1727,-1719,-1722,-1728,-1738,-1753,
+-1778,-1762,-1691,-1697,-1667,-1606,-1546,-1482,-1397,-1351,-1345,-1284,-1272,-1257,-1217,-1230,-1212,-1167,-1196,-1195,
+-1181,-1161,-1094,-1034,-1011,-995,-955,-936,-933,-938,-934,-921,-911,-868,-800,-723,-664,-624,-625,-571,
+-512,-447,-376,-318,-208,-86,5,59,76,94,103,116,148,178,221,245,250,258,267,272,
+288,331,400,471,526,575,643,721,774,799,827,905,994,1087,1151,1216,1266,1312,1360,1411,
+1475,1532,1592,1649,1692,1723,1745,1787,1842,1902,1964,2018,2068,2111,2151,2191,2226,2292,2370,2431,
+2486,2526,2560,2638,2709,2767,2845,2930,3008,3053,3091,3155,3221,3299,3402,3458,3509,3536,3544,3572,
+3606,3641,3667,3683,3706,3734,3793,3856,3915,3992,4095,4191,4247,4273,4341,4387,4394,4391,4415,4377,
+4334,4327,4288,4151,3880,3721,3684,3721,3829,3793,3772,3774,3768,3781,3782,3782,3789,3839,3860,3918,
+3905,3902,3943,4003,4083,4231,4311,4143,4134,4150,4196,4241,4285,4321,4366,4393,4429,4445,4464,4483,
+4507,4520,4486,4483,4485,4470,4430,4392,4387,4405,4447,4511,4574,4612,4614,4604,4673,4755,4857,4877,
+4862,4882,4942,4961,4975,4978,4999,4988,5024,5030,5049,5057,5058,5064,5055,5063,5073,5074,5063,5078,
+5075,5072,5071,5062,5045,5037,5036,5023,4999,4985,4965,4948,4931,4900,4885,4869,4845,4823,4802,4790,
+4779,4776,4772,4759,4750,4809,4850,4849,4839,4873,4908,5031,5018,4958,4951,4936,4938,4902,4845,4722,
+4538,4305,3983,3510,3047,2690,2595,2803,3094,3409,3530,3418,3375,3366,3350,3330,3298,3257,3207,3160,
+3104,3030,2936,2845,2811,2712,2624,2541,2461,2391,2314,2226,2149,2081,2033,1983,1933,1891,1849,1804,
+1747,1699,1655,1599,1526,1457,1415,1376,1352,1328,1288,1249,1206,1158,1115,1070,1022,987,954,920,
+898,861,824,794,769,761,741,728,695,663,632,597,560,529,496,468,427,389,348,298,
+264,238,220,198,170,139,98,65,54,48,39,21,4,-4,-23,-41,-52,-71,-89,-98,
+-96,-93,-108,-120,-132,-149,-174,-200,-220,-246,-260,-287,-300,-304,-320,-328,-348,-387,-437,-470,
+-392,-296,-248,-328,-365,-444,-401,-386,-392,-439,-481,-521,-547,-604,-638,-645,-658,-676,-698,-736,
+-750,-788,-831,-873,-900,-935,-966,-988,-1006,-1023,-1043,-1061,-1083,-1100,-1116,-1137,-1159,-1174,-1187,-1204,
+-1217,-1234,-1247,-1265,-1284,-1296,-1303,-1309,-1316,-1319,-1321,-1322,-1321,-1321,-1314,-1312,-1304,-1305,-1304,-1303,
+-1291,-1290,-1280,-1284,-1278,-1271,-1266,-1258,-1241,-1227,-1217,-1203,-1198,-1191,-1181,-1174,-1167,-1160,-1149,-1143,
+-1123,-1131,-1122,-1113,-1106,-1097,-1086,-1077,-1063,-1047,-1039,-1029,-1011,-1000,-985,-969,-956,-940,-927,-916,
+-910,-898,-887,-876,-862,-826,-843,-830,-816,-813,-804,-792,-783,-768,-765,-760,-750,-740,-734,-728,
+-727,-717,-699,-702,-690,-670,-652,-639,-660,-628,-614,-601,-584,-592,-596,-589,-589,-579,-575,-565,
+-554,-545,-540,-531,-517,-504,-491,-496,-522,-531,-521,-502,-512,-497,-491,-475,-452,-459,-438,-425,
+-440,-463,-410,-374,-361,-382,-397,-397,-339,-342,-356,-344,-340,-337,-333,-324,-305,-315,-315,-260,
+-276,-278,-272,-253,-252,-208,-227,-197,-209,-210,-202,-189,-189,-189,-173,-159,-153,-140,-138,-147,
+-126,-116,-95,-78,-63,-48,-28,-25,-15,-2,3,11,26,37,48,79,97,112,80,80,
+90,96,101,111,116,132,149,169,188,195,208,218,223,231,245,263,285,305,314,334,
+340,342,345,361,383,405,415,420,432,449,467,495,513,538,571,599,613,634,650,680,
+697,715,732,759,787,808,829,868,928,959,964,980,1007,1036,1081,1121,1157,1204,1242,1290,
+1328,1347,1396,1367,1400,1465,1528,1589,1643,1695,1739,1770,1804,1841,1872,1889,1892,1864,1795,1671,
+1451,1207,1259,1679,2254,2753,3111,3334,3514,3712,3884,4008,4042,4113,4148,4191,4199,4162,4113,4055,
+4019,3971,3855,3752,3638,3641,3274,2956,2824,2726,2659,2581,2537,2503,2477,2459,2438,2416,2417,2402,
+2370,2332,2286,2260,2237,2195,2138,2095,2060,2026,2003,1968,1915,1858,1813,1763,1719,1699,1669,1604,
+1521,1457,1377,1276,1173,1080,978,858,759,700,679,650,593,539,515,499,501,516,569,628,
+695,747,733,669,610,580,550,466,378,345,326,200,110,22,-16,53,129,30,-80,-182,
+-267,-348,-446,-552,-654,-761,-821,-831,-872,-928,-1005,-1046,-1052,-1026,-1013,-1006,-1004,-999,-976,-963,
+-975,-983,-1000,-1002,-1022,-1050,-1087,-1110,-1074,-1107,-973,-966,-998,-978,-939,-911,-918,-904,-875,-837,
+-800,-769,-740,-706,-674,-640,-604,-572,-550,-525,-503,-469,-422,-390,-360,-341,-330,-319,-310,-302,
+-293,-284,-282,-272,-264,-245,-232,-211,-189,-178,-159,-146,-125,-108,-86,-85,-81,-60,-44,-16,
+3,24,60,78,96,123,148,174,198,224,255,272,304,328,346,373,392,406,425,448,
+468,487,510,530,556,580,602,623,650,669,713,742,766,796,827,839,854,887,909,939,
+966,986,1009,1034,1057,1098,1121,1141,1166,1192,1212,1247,1326,1329,1318,1361,1368,1363,1341,1357,
+1361,1372,1380,1391,1392,1402,1406,1413,1423,1427,1439,1451,1465,1480,1484,1492,1497,1520,1526,1545,
+1553,1565,1582,1601,1601,1614,1630,1644,1667,1693,1717,1730,1756,1778,1793,1806,1828,1842,1864,1885,
+1894,1910,1935,1952,1970,1998,2029,2056,2082,2070,2110,2124,2152,2180,2199,2216,2246,2259,2280,2314,
+2364,2418,2496,2564,2581,2604,2614,2587,2541,2517,2521,2543,2531,2483,2482,2483,2488,2502,2527,2540,
+2546,2547,2550,2552,2547,2547,2538,2533,2539,2544,2551,2548,2542,2545,2562,2584,2616,2662,2716,2763,
+2803,2850,2921,3010,3096,3152,3145,3132,3154,3201,3220,3264,3308,3363,3415,3470,3457,3371,3273,3197,
+3117,3116,3165,3177,3218,3220,3174,3109,3045,2987,2960,2963,2961,2936,2904,2887,2869,2847,2856,2888,
+2884,2859,2836,2834,2833,2857,2891,2894,2883,2896,2886,2893,2882,2888,2886,2871,2867,2894,2924,2910,
+2929,2924,2904,2890,2905,2926,2922,2921,2881,2833,2748,2621,2519,2450,2344,2250,2236,2324,2201,2106,
+2005,1841,1709,1637,1587,1563,1533,1503,1480,1443,1401,1373,1340,1304,1291,1300,1279,1160,960,854,
+785,738,717,668,639,630,629,624,626,636,658,676,699,728,739,749,757,763,771,761,
+727,694,665,630,586,577,643,774,889,941,995,1034,1053,1052,1026,995,984,927,949,932,
+871,812,754,714,687,656,612,572,547,508,482,463,451,441,435,423,408,394,374,378,
+377,385,393,399,405,434,452,473,491,506,518,522,530,538,532,523,515,506,488,468,
+443,414,384,376,399,387,366,393,407,396,384,424,458,464,390,442,544,515,534,599,
+586,567,593,580,566,552,572,571,541,556,531,489,472,494,484,450,387,289,214,287,
+318,299,260,194,153,112,98,84,28,10,-10,-42,-85,-111,-137,-167,-197,-227,-286,-330,
+-342,-380,-434,-463,-531,-558,-630,-677,-724,-779,-832,-874,-931,-983,-1052,-1088,-1149,-1208,-1264,-1296,
+-1338,-1398,-1442,-1459,-1511,-1570,-1621,-1675,-1732,-1793,-1843,-1871,-1900,-1927,-1959,-2010,-2061,-2115,-2170,-2212,
+-2250,-2266,-2311,-2353,-2392,-2434,-2475,-2515,-2550,-2584,-2608,-2648,-2673,-2702,-2721,-2748,-2764,-2742,-2703,-2679,
+-2768,-2913,-3062,-3119,-3183,-3196,-3231,-3269,-3309,-3358,-3418,-3511,-3559,-3558,-3569,-3596,-3647,-3669,-3681,-3689,
+-3716,-3747,-3766,-3804,-3837,-3854,-3880,-3906,-3916,-3933,-3945,-3954,-3971,-3978,-4000,-4000,-3985,-3992,-3985,-3986,
+-3992,-3984,-3969,-3972,-3963,-3967,-3968,-3963,-3966,-3951,-3943,-3935,-3912,-3892,-3890,-3891,-3891,-3886,-3872,-3857,
+-3839,-3824,-3812,-3808,-3803,-3798,-3772,-3775,-3779,-3778,-3773,-3776,-3787,-3803,-3796,-3754,-3753,-3755,-3754,-3767,
+-3765,-3779,-3768,-3777,-3802,-3802,-3799,-3790,-3766,-3718,-3650,-3591,-3512,-3439,-3345,-3222,-3098,-2998,-2906,-2819,
+-2699,-2595,-2517,-2445,-2376,-2282,-2203,-2111,-2041,-2031,-2023,-1893,-1847,-1810,-1795,-1759,-1748,-1741,-1746,-1737,
+-1750,-1789,-1784,-1727,-1739,-1718,-1654,-1619,-1574,-1514,-1467,-1424,-1401,-1352,-1316,-1278,-1278,-1263,-1230,-1250,
+-1244,-1227,-1212,-1171,-1117,-1080,-1058,-1036,-1012,-1013,-1021,-1029,-1025,-1018,-993,-944,-879,-806,-763,-773,
+-729,-676,-640,-604,-583,-522,-411,-306,-217,-156,-108,-77,-31,25,59,67,53,23,7,11,
+7,34,120,237,353,442,515,585,657,711,758,789,837,909,1011,1091,1154,1203,1247,1294,
+1343,1394,1455,1509,1563,1600,1627,1659,1698,1757,1820,1881,1941,2001,2050,2096,2146,2187,2260,2332,
+2386,2436,2485,2535,2600,2662,2724,2801,2879,2961,3036,3083,3118,3182,3262,3341,3373,3398,3415,3439,
+3483,3516,3558,3582,3596,3614,3663,3713,3781,3825,3883,3975,4078,4152,4202,4259,4326,4332,4326,4324,
+4314,4264,4255,4240,4143,3872,3682,3631,3647,3743,3725,3700,3709,3712,3722,3699,3695,3742,3782,3801,
+3855,3864,3867,3884,3955,4034,4185,4151,4064,4054,4068,4115,4175,4211,4254,4300,4333,4366,4374,4392,
+4416,4437,4449,4414,4421,4418,4394,4347,4299,4297,4313,4366,4434,4511,4567,4568,4553,4631,4733,4807,
+4814,4790,4816,4870,4913,4951,4966,4961,4956,5001,4988,5006,5005,5020,5036,5036,5022,5006,5007,5001,
+5036,5050,5045,5095,5069,5016,5004,5001,4998,4982,4953,4943,4925,4898,4886,4862,4844,4827,4804,4787,
+4767,4761,4754,4743,4735,4727,4785,4819,4817,4817,4848,4934,5005,4990,4945,4919,4912,4914,4876,4781,
+4624,4453,4241,3907,3429,2928,2587,2558,2786,3024,3228,3354,3365,3357,3338,3320,3297,3263,3224,3182,
+3142,3088,3010,2920,2840,2865,2710,2666,2553,2465,2386,2319,2231,2159,2092,2034,1968,1923,1880,1839,
+1798,1750,1704,1659,1593,1520,1458,1411,1367,1341,1321,1286,1242,1199,1163,1119,1076,1036,993,947,
+905,880,850,809,779,756,746,731,715,690,658,614,583,549,513,487,451,417,376,327,
+274,237,220,203,184,164,135,92,52,34,30,23,9,-6,-24,-41,-62,-67,-85,-89,
+-100,-101,-82,-78,-100,-119,-144,-174,-195,-220,-245,-270,-292,-313,-322,-332,-338,-345,-367,-404,
+-439,-407,-299,-364,-350,-268,-414,-411,-419,-456,-481,-465,-418,-502,-556,-586,-588,-609,-632,-670,
+-705,-711,-761,-788,-833,-877,-917,-941,-962,-982,-1008,-1026,-1043,-1067,-1085,-1110,-1138,-1161,-1177,-1192,
+-1207,-1221,-1231,-1246,-1259,-1275,-1284,-1296,-1303,-1310,-1313,-1317,-1322,-1320,-1318,-1320,-1322,-1319,-1316,-1320,
+-1313,-1310,-1302,-1294,-1294,-1295,-1285,-1285,-1273,-1260,-1242,-1226,-1215,-1208,-1200,-1199,-1181,-1172,-1161,-1151,
+-1151,-1151,-1141,-1133,-1127,-1118,-1106,-1097,-1081,-1071,-1058,-1046,-1037,-1028,-1006,-998,-982,-970,-954,-936,
+-929,-923,-917,-897,-888,-883,-866,-856,-852,-840,-831,-828,-814,-808,-796,-786,-784,-778,-768,-764,
+-745,-737,-747,-735,-732,-715,-718,-699,-674,-668,-645,-668,-663,-645,-628,-610,-612,-602,-593,-587,
+-579,-569,-560,-559,-545,-516,-510,-516,-462,-508,-520,-476,-434,-495,-508,-504,-491,-474,-463,-449,
+-454,-452,-463,-398,-401,-409,-414,-395,-375,-386,-382,-343,-332,-343,-326,-318,-323,-269,-307,-306,
+-260,-251,-285,-256,-268,-263,-196,-251,-242,-227,-222,-218,-209,-204,-201,-192,-178,-163,-145,-143,
+-139,-138,-127,-107,-94,-91,-70,-57,-37,-33,-1,-7,-3,-4,10,40,44,55,68,69,
+88,92,85,96,100,114,139,148,158,168,178,191,204,211,220,238,259,294,316,309,
+342,342,356,357,367,374,389,406,419,434,451,474,507,515,539,565,586,610,626,641,
+667,688,722,737,766,788,805,815,832,869,916,955,990,1020,1038,1079,1128,1180,1231,1264,
+1302,1339,1354,1374,1394,1427,1499,1532,1575,1626,1671,1715,1749,1789,1823,1852,1860,1858,1831,1762,
+1625,1389,1188,1324,1746,2324,2812,3123,3384,3541,3693,3868,3994,4043,4172,4265,4250,4132,3965,3966,
+3893,3785,3687,3619,3634,3714,3482,3023,2789,2711,2670,2613,2544,2486,2459,2440,2422,2402,2396,2397,
+2374,2336,2299,2259,2235,2198,2153,2102,2064,2043,2014,1989,1957,1910,1859,1817,1778,1740,1695,1651,
+1589,1514,1448,1368,1270,1180,1081,968,854,779,747,719,664,606,555,544,529,526,568,607,
+653,706,714,656,618,650,598,562,504,414,339,275,189,84,8,-10,78,134,35,-75,
+-172,-255,-346,-448,-569,-675,-743,-755,-748,-788,-890,-957,-1011,-1039,-1041,-1027,-1016,-1016,-998,-982,
+-978,-994,-998,-1031,-1067,-1107,-1138,-1140,-1142,-1126,-1099,-1002,-898,-892,-875,-871,-830,-908,-892,-860,
+-816,-776,-745,-713,-688,-659,-624,-584,-549,-516,-475,-431,-397,-369,-349,-336,-329,-319,-302,-284,
+-267,-253,-243,-233,-222,-222,-211,-195,-176,-156,-157,-148,-145,-128,-128,-108,-92,-80,-51,-28,
+5,41,73,98,119,140,169,189,207,239,259,282,299,328,349,376,399,415,443,469,
+488,506,537,563,587,607,615,654,680,705,724,750,769,785,812,839,856,884,902,927,
+952,976,1005,1043,1057,1096,1106,1123,1149,1181,1227,1250,1296,1318,1342,1326,1375,1381,1370,1373,
+1371,1374,1380,1394,1398,1407,1408,1421,1428,1441,1452,1465,1463,1472,1471,1485,1507,1512,1528,1533,
+1542,1540,1548,1562,1585,1604,1623,1646,1657,1677,1704,1714,1737,1761,1775,1798,1810,1828,1844,1866,
+1891,1910,1927,1948,1974,1986,2014,2030,2059,2070,2088,2112,2131,2163,2197,2217,2234,2254,2267,2295,
+2340,2395,2455,2505,2568,2587,2604,2582,2529,2486,2485,2503,2527,2509,2501,2507,2522,2518,2518,2538,
+2544,2538,2540,2546,2548,2549,2551,2550,2551,2556,2555,2555,2553,2550,2552,2566,2590,2621,2664,2719,
+2765,2807,2847,2905,2982,3055,3108,3117,3122,3143,3190,3212,3256,3295,3321,3339,3373,3401,3359,3266,
+3203,3161,3209,3244,3270,3317,3289,3210,3111,3026,2955,2920,2941,2963,2949,2934,2942,2940,2921,2928,
+2986,2984,2984,2972,2963,2958,2954,2962,2944,2908,2907,2889,2924,2911,2901,2902,2900,2910,2938,2947,
+2935,2962,3013,3023,3031,2994,2989,2972,2948,2916,2874,2789,2687,2567,2461,2382,2290,2319,2373,2259,
+2164,2031,1854,1747,1684,1645,1619,1594,1569,1544,1513,1489,1448,1398,1371,1335,1331,1310,1214,1024,
+919,855,803,779,726,691,672,673,679,684,690,717,744,769,795,811,824,824,822,827,
+819,788,754,718,665,617,608,709,874,949,1000,1078,1105,1112,1095,1110,1091,1062,1049,1045,
+1050,1042,982,892,868,803,757,706,662,622,580,553,540,531,519,513,500,478,459,456,
+453,452,455,460,461,492,505,528,547,563,577,585,592,601,598,589,585,577,562,544,
+517,497,486,459,458,457,424,472,457,446,483,476,513,538,490,479,566,624,614,633,
+672,639,670,704,706,649,632,640,662,659,614,583,590,568,509,498,390,305,283,338,
+401,378,327,264,226,206,188,150,105,76,70,32,-1,-31,-69,-89,-112,-147,-163,-187,
+-237,-290,-304,-368,-398,-460,-502,-558,-604,-652,-713,-749,-806,-861,-920,-968,-1011,-1081,-1134,-1182,
+-1222,-1273,-1323,-1332,-1390,-1453,-1511,-1560,-1621,-1675,-1719,-1757,-1783,-1810,-1843,-1889,-1943,-1999,-2055,-2104,
+-2148,-2181,-2199,-2255,-2284,-2321,-2363,-2402,-2440,-2482,-2518,-2548,-2574,-2601,-2635,-2657,-2691,-2706,-2675,-2648,
+-2636,-2735,-2811,-2953,-3051,-3114,-3152,-3185,-3213,-3249,-3298,-3361,-3459,-3515,-3517,-3515,-3531,-3581,-3602,-3616,
+-3627,-3662,-3693,-3717,-3750,-3777,-3800,-3825,-3852,-3868,-3882,-3889,-3900,-3912,-3895,-3936,-3947,-3946,-3944,-3930,
+-3930,-3947,-3942,-3914,-3938,-3950,-3947,-3950,-3953,-3950,-3938,-3924,-3908,-3890,-3883,-3880,-3879,-3872,-3861,-3850,
+-3836,-3821,-3804,-3796,-3791,-3788,-3777,-3779,-3779,-3785,-3791,-3788,-3783,-3789,-3814,-3813,-3824,-3794,-3802,-3802,
+-3813,-3821,-3817,-3812,-3806,-3800,-3797,-3794,-3794,-3778,-3746,-3715,-3667,-3592,-3502,-3409,-3301,-3197,-3090,-2981,
+-2872,-2754,-2653,-2563,-2480,-2399,-2296,-2194,-2093,-2033,-2048,-2055,-1928,-1882,-1850,-1833,-1802,-1784,-1777,-1795,
+-1815,-1808,-1831,-1840,-1808,-1795,-1757,-1696,-1640,-1625,-1590,-1539,-1490,-1471,-1430,-1387,-1358,-1334,-1314,-1306,
+-1299,-1297,-1269,-1244,-1220,-1181,-1148,-1139,-1115,-1089,-1095,-1109,-1122,-1120,-1113,-1096,-1052,-999,-938,-895,
+-894,-867,-835,-819,-808,-811,-786,-719,-630,-535,-447,-386,-322,-252,-225,-218,-227,-240,-257,-266,
+-246,-210,-127,25,193,326,426,497,555,612,659,703,734,790,858,948,1029,1089,1131,1171,
+1209,1242,1282,1346,1407,1476,1519,1561,1591,1635,1687,1742,1802,1867,1945,2008,2058,2107,2151,2219,
+2286,2334,2384,2439,2496,2551,2617,2687,2764,2840,2900,2974,3034,3088,3158,3224,3274,3284,3296,3313,
+3349,3397,3446,3491,3518,3531,3561,3607,3648,3712,3750,3795,3877,3996,4060,4124,4190,4255,4270,4271,
+4246,4258,4192,4187,4178,4118,3903,3663,3587,3603,3686,3719,3669,3644,3646,3640,3626,3623,3701,3738,
+3745,3793,3798,3817,3814,3871,3934,3997,4010,3987,3983,4000,4045,4094,4141,4189,4236,4257,4294,4303,
+4321,4343,4363,4380,4362,4352,4336,4294,4254,4219,4217,4235,4276,4345,4424,4481,4496,4504,4617,4734,
+4758,4759,4731,4765,4803,4846,4870,4885,4887,4910,4983,4937,4971,4974,4981,4996,4996,4994,4977,4956,
+4960,4975,4984,4989,4997,4991,5004,4984,4975,4969,4952,4914,4912,4906,4876,4861,4851,4825,4807,4791,
+4773,4755,4742,4735,4724,4715,4738,4753,4778,4790,4797,4846,4939,4994,4966,4914,4897,4887,4870,4822,
+4757,4579,4388,4220,3830,3318,2820,2494,2533,2781,3000,3203,3415,3440,3397,3340,3304,3266,3232,3195,
+3159,3119,3066,2988,2898,2867,2889,2711,2623,2550,2469,2387,2307,2233,2161,2096,2026,1956,1911,1866,
+1827,1793,1749,1706,1659,1590,1517,1448,1403,1361,1331,1308,1286,1252,1213,1174,1130,1084,1040,994,
+941,920,889,856,807,776,751,737,723,704,682,640,605,577,540,510,485,453,398,355,
+307,259,224,209,193,169,146,120,90,52,33,25,11,-6,-17,-30,-59,-71,-87,-80,
+-96,-97,-85,-89,-80,-89,-112,-108,-154,-174,-196,-213,-239,-269,-299,-324,-343,-347,-347,-357,
+-384,-415,-416,-391,-420,-414,-390,-418,-367,-369,-399,-403,-382,-454,-466,-461,-476,-570,-562,-578,
+-647,-653,-694,-724,-753,-800,-851,-893,-914,-936,-966,-992,-1014,-1036,-1061,-1078,-1098,-1121,-1141,-1166,
+-1182,-1201,-1213,-1227,-1236,-1254,-1267,-1276,-1288,-1295,-1298,-1308,-1311,-1315,-1294,-1313,-1313,-1315,-1315,-1319,
+-1319,-1320,-1320,-1317,-1310,-1301,-1297,-1298,-1286,-1282,-1275,-1259,-1251,-1236,-1224,-1217,-1210,-1192,-1182,-1174,
+-1169,-1162,-1150,-1148,-1142,-1136,-1123,-1113,-1103,-1090,-1079,-1069,-1054,-1047,-1037,-1023,-1008,-1000,-992,-979,
+-965,-953,-946,-935,-913,-908,-898,-883,-877,-874,-864,-852,-859,-849,-839,-826,-818,-820,-816,-807,
+-795,-788,-782,-750,-761,-755,-745,-735,-733,-726,-714,-697,-675,-668,-652,-653,-623,-626,-613,-609,
+-603,-602,-593,-581,-579,-574,-570,-568,-554,-560,-552,-533,-437,-470,-511,-517,-497,-508,-498,-465,
+-473,-470,-466,-459,-407,-444,-437,-410,-382,-375,-344,-347,-378,-369,-307,-337,-316,-337,-330,-325,
+-323,-328,-300,-292,-277,-280,-255,-272,-248,-254,-239,-238,-237,-229,-226,-218,-212,-199,-192,-178,
+-170,-163,-159,-147,-123,-115,-109,-88,-80,-62,-54,-36,-28,-25,15,6,16,88,64,54,
+73,89,86,85,92,103,112,141,132,147,157,174,186,195,220,223,237,267,288,310,
+317,325,333,337,360,361,366,375,397,421,428,450,471,497,509,525,546,561,589,616,
+627,658,687,709,737,762,782,799,810,818,851,907,954,985,1014,1044,1084,1140,1190,1231,
+1271,1303,1324,1347,1360,1386,1447,1490,1536,1545,1589,1633,1677,1717,1762,1800,1827,1832,1821,1799,
+1735,1573,1338,1221,1434,1833,2382,2775,3036,3263,3445,3711,3898,3991,4053,4207,4305,4198,3946,3673,
+3650,3655,3473,3462,3528,3622,3536,3114,2829,2696,2651,2623,2570,2508,2450,2424,2406,2391,2379,2378,
+2376,2352,2312,2275,2243,2210,2158,2118,2083,2042,2029,2012,1982,1944,1907,1869,1833,1789,1739,1687,
+1634,1577,1511,1428,1354,1258,1172,1067,939,859,818,770,733,678,635,605,597,588,600,621,
+625,635,667,652,607,606,621,574,558,538,435,355,308,229,110,18,14,63,112,31,
+-74,-168,-268,-374,-495,-608,-685,-709,-691,-696,-735,-807,-925,-981,-1013,-1029,-1029,-1021,-1010,-1006,
+-997,-1031,-1054,-1081,-1100,-1122,-1147,-1157,-1167,-1165,-1131,-1083,-1048,-971,-903,-961,-954,-931,-914,-884,
+-840,-792,-745,-710,-680,-641,-604,-574,-543,-502,-445,-406,-380,-363,-354,-343,-331,-321,-303,-282,
+-267,-243,-223,-197,-188,-181,-173,-162,-146,-132,-117,-113,-101,-94,-70,-55,-29,-19,-12,18,
+37,59,91,114,133,149,176,205,229,254,282,294,321,341,367,383,412,431,450,477,
+490,509,529,549,566,597,621,649,673,698,722,744,770,798,818,848,866,886,902,931,
+959,967,995,1024,1056,1098,1118,1153,1174,1193,1216,1231,1264,1292,1331,1372,1352,1386,1382,1370,
+1371,1383,1398,1403,1411,1417,1425,1428,1443,1441,1450,1465,1451,1477,1480,1489,1490,1499,1500,1511,
+1529,1541,1559,1574,1584,1598,1616,1625,1642,1657,1665,1698,1714,1733,1754,1780,1797,1816,1840,1859,
+1881,1898,1914,1926,1957,1983,1998,2028,2036,2059,2088,2099,2125,2151,2180,2219,2237,2253,2271,2283,
+2315,2363,2416,2477,2508,2554,2551,2533,2480,2447,2452,2464,2485,2492,2499,2509,2516,2514,2510,2514,
+2528,2524,2524,2525,2532,2536,2541,2544,2548,2555,2558,2562,2558,2552,2549,2554,2571,2594,2625,2667,
+2718,2769,2809,2844,2899,2963,3017,3063,3103,3126,3149,3177,3204,3240,3278,3305,3313,3332,3357,3359,
+3286,3216,3200,3236,3279,3327,3322,3288,3224,3110,3026,2953,2912,2934,2980,2981,2988,3003,3016,3009,
+3017,3076,3117,3134,3127,3080,3062,3039,3014,2985,2935,2924,2928,2936,2938,2923,2921,2943,2951,2960,
+2995,3012,3035,3099,3136,3148,3117,3067,3043,3016,2953,2876,2822,2729,2617,2509,2409,2335,2343,2406,
+2311,2210,2049,1870,1780,1721,1699,1687,1668,1642,1611,1580,1549,1500,1456,1418,1383,1369,1323,1237,
+1069,979,921,867,840,787,749,728,727,733,738,745,771,803,826,855,875,889,885,882,
+885,875,845,810,772,712,665,658,778,995,1032,1070,1104,1143,1137,1147,1200,1147,1125,1129,
+1113,1100,1082,1035,1012,981,921,862,804,744,698,654,632,620,611,601,589,570,551,544,
+541,530,525,525,525,551,570,590,609,624,635,642,653,659,663,660,653,644,629,616,
+592,569,566,557,558,545,496,498,548,567,547,581,530,569,620,572,603,693,728,678,
+733,733,744,753,770,746,733,735,719,722,784,706,633,570,514,492,466,450,447,447,
+454,464,401,336,307,280,260,232,190,176,160,103,71,52,9,-4,-41,-66,-94,-113,
+-142,-178,-239,-276,-317,-346,-390,-414,-464,-524,-579,-642,-678,-748,-801,-833,-895,-951,-1016,-1060,
+-1105,-1152,-1202,-1234,-1271,-1337,-1402,-1449,-1490,-1549,-1600,-1642,-1667,-1695,-1722,-1768,-1820,-1877,-1936,-1991,
+-2036,-2071,-2094,-2138,-2177,-2211,-2258,-2304,-2342,-2378,-2414,-2448,-2481,-2500,-2531,-2562,-2585,-2625,-2634,-2652,
+-2605,-2628,-2733,-2777,-2836,-2924,-3043,-3106,-3135,-3159,-3192,-3235,-3295,-3400,-3467,-3465,-3457,-3471,-3519,-3541,
+-3553,-3559,-3597,-3625,-3654,-3690,-3720,-3755,-3768,-3789,-3816,-3830,-3838,-3848,-3866,-3883,-3889,-3901,-3902,-3893,
+-3884,-3879,-3882,-3875,-3842,-3826,-3860,-3884,-3934,-3946,-3939,-3925,-3908,-3900,-3889,-3883,-3876,-3870,-3852,-3831,
+-3812,-3793,-3781,-3772,-3782,-3771,-3773,-3776,-3786,-3792,-3797,-3798,-3797,-3803,-3822,-3833,-3812,-3848,-3831,-3832,
+-3846,-3863,-3875,-3873,-3865,-3850,-3831,-3820,-3816,-3818,-3804,-3770,-3738,-3701,-3645,-3572,-3471,-3376,-3283,-3184,
+-3064,-2943,-2827,-2726,-2617,-2517,-2417,-2327,-2197,-2086,-2023,-2069,-2084,-1970,-1942,-1910,-1882,-1867,-1854,-1843,
+-1843,-1846,-1849,-1864,-1861,-1849,-1829,-1797,-1739,-1681,-1673,-1647,-1599,-1553,-1524,-1466,-1450,-1422,-1409,-1370,
+-1350,-1339,-1328,-1318,-1289,-1250,-1222,-1204,-1194,-1174,-1170,-1180,-1196,-1211,-1208,-1196,-1182,-1152,-1093,-1037,
+-1012,-999,-980,-979,-993,-991,-991,-972,-914,-860,-801,-732,-645,-571,-529,-518,-515,-503,-488,-473,
+-437,-375,-285,-152,28,215,371,455,506,554,601,623,663,705,762,841,905,960,1015,1062,
+1095,1127,1155,1197,1245,1315,1395,1460,1511,1537,1578,1624,1676,1733,1805,1869,1935,1990,2046,2090,
+2155,2225,2280,2337,2399,2455,2508,2574,2654,2741,2803,2861,2921,2976,3025,3089,3144,3184,3204,3206,
+3225,3266,3321,3372,3419,3442,3465,3502,3538,3573,3642,3684,3724,3804,3902,3989,4044,4115,4164,4191,
+4172,4150,4151,4129,4120,4119,4067,3880,3688,3589,3584,3807,3957,3707,3615,3592,3582,3553,3571,3624,
+3666,3686,3730,3774,3763,3751,3778,3834,3878,3896,3892,3905,3926,3964,4029,4081,4128,4159,4190,4217,
+4226,4249,4260,4290,4308,4302,4288,4267,4226,4197,4162,4139,4173,4196,4255,4327,4379,4403,4435,4505,
+4603,4678,4690,4670,4714,4742,4773,4793,4806,4816,4839,4856,4892,4929,4943,4936,4945,4942,4940,4935,
+4923,4907,4952,4946,4946,4973,4981,4974,4992,4960,4937,4924,4911,4868,4863,4854,4841,4830,4811,4792,
+4780,4766,4755,4728,4736,4710,4717,4735,4759,4763,4772,4781,4849,4971,4968,4939,4897,4873,4852,4820,
+4765,4679,4466,4312,4158,3744,3185,2717,2414,2523,2786,3003,3209,3447,3687,3551,3386,3308,3250,3205,
+3169,3133,3096,3040,2962,2895,2887,2925,2711,2617,2556,2468,2391,2312,2242,2175,2107,2031,1957,1903,
+1851,1808,1776,1741,1701,1657,1592,1524,1453,1397,1360,1329,1300,1282,1258,1227,1190,1143,1087,1037,
+990,950,905,878,857,823,779,740,725,712,694,670,622,591,554,523,504,471,438,396,
+345,294,256,221,199,174,150,133,113,90,62,38,16,-4,-25,-31,-34,-47,-76,-95,
+-95,-123,-117,-112,-93,-90,-88,-81,-87,-114,-155,-178,-200,-224,-254,-278,-309,-328,-343,-348,
+-357,-376,-402,-408,-397,-406,-424,-374,-401,-338,-345,-321,-293,-281,-343,-366,-426,-422,-494,-516,
+-589,-627,-644,-672,-720,-759,-795,-825,-864,-882,-912,-936,-963,-1002,-1027,-1053,-1069,-1089,-1112,-1130,
+-1149,-1168,-1187,-1202,-1216,-1225,-1242,-1257,-1276,-1287,-1295,-1298,-1304,-1308,-1313,-1316,-1314,-1320,-1328,-1321,
+-1325,-1324,-1324,-1329,-1329,-1323,-1317,-1309,-1301,-1285,-1285,-1272,-1262,-1257,-1245,-1236,-1227,-1218,-1206,-1195,
+-1182,-1176,-1168,-1159,-1148,-1146,-1136,-1126,-1113,-1102,-1099,-1088,-1077,-1065,-1058,-1047,-1043,-1024,-1019,-1008,
+-1006,-984,-962,-965,-962,-938,-936,-920,-912,-904,-888,-887,-885,-887,-877,-869,-860,-855,-853,-845,
+-840,-826,-823,-815,-809,-797,-769,-770,-759,-756,-751,-749,-730,-718,-700,-665,-655,-646,-635,-622,
+-623,-619,-615,-609,-608,-610,-603,-603,-586,-569,-564,-562,-559,-557,-558,-551,-537,-526,-497,-497,
+-488,-482,-489,-471,-475,-471,-461,-453,-416,-384,-410,-425,-365,-402,-383,-386,-363,-356,-362,-348,
+-340,-355,-352,-338,-336,-311,-295,-294,-292,-283,-274,-267,-258,-259,-253,-249,-238,-231,-219,-197,
+-202,-192,-190,-183,-159,-141,-118,-107,-98,-80,-76,-61,-57,-23,-13,-26,0,2,5,32,
+42,62,81,83,91,98,115,122,124,132,145,160,176,189,199,209,223,245,270,303,
+288,304,320,322,332,344,354,362,376,401,425,428,441,457,473,485,503,525,542,566,
+587,614,646,676,696,727,747,758,777,789,808,842,895,938,963,987,1032,1079,1136,1171,
+1213,1249,1314,1303,1321,1334,1368,1419,1472,1512,1529,1552,1591,1637,1675,1712,1759,1782,1792,1788,
+1782,1743,1536,1312,1269,1568,1975,2416,2728,2964,3193,3449,3698,3902,3954,4046,4107,4145,4035,3793,
+3487,3447,3447,3266,3251,3249,3284,3219,2940,2743,2657,2626,2595,2550,2473,2433,2404,2382,2369,2370,
+2375,2367,2339,2301,2261,2228,2183,2136,2094,2065,2031,2011,1993,1964,1922,1895,1866,1824,1779,1730,
+1682,1626,1562,1494,1410,1335,1260,1170,1051,945,882,837,785,751,726,717,699,689,684,690,
+699,704,693,658,617,607,606,595,567,560,545,490,405,341,287,189,73,43,59,85,
+37,-57,-155,-268,-381,-499,-602,-661,-672,-652,-658,-709,-788,-909,-985,-1017,-1024,-1021,-1015,-1003,
+-1005,-1031,-1069,-1098,-1107,-1125,-1153,-1160,-1167,-1167,-1146,-1110,-1082,-1060,-1026,-988,-979,-974,-968,-913,
+-863,-811,-773,-725,-677,-639,-610,-585,-543,-499,-459,-422,-391,-370,-353,-340,-329,-314,-289,-264,
+-239,-208,-180,-153,-136,-129,-118,-104,-94,-89,-86,-77,-78,-73,-66,-53,-30,-8,5,19,
+41,52,61,88,116,133,166,200,218,257,294,302,325,347,367,399,424,448,476,490,
+522,546,571,591,612,627,651,673,692,711,736,752,772,799,824,835,865,882,900,930,
+963,984,1017,1041,1074,1095,1120,1136,1157,1186,1204,1219,1239,1267,1287,1344,1362,1357,1434,1421,
+1404,1416,1422,1424,1412,1427,1433,1433,1436,1447,1453,1447,1445,1456,1464,1470,1474,1486,1497,1506,
+1521,1537,1551,1559,1572,1581,1587,1608,1625,1647,1672,1688,1698,1719,1743,1761,1784,1803,1816,1834,
+1851,1877,1896,1922,1948,1968,1992,2013,2031,2039,2060,2099,2092,2116,2159,2195,2226,2244,2260,2283,
+2307,2343,2392,2438,2495,2501,2503,2471,2420,2397,2409,2426,2440,2449,2461,2472,2488,2508,2534,2507,
+2493,2499,2499,2504,2511,2517,2523,2532,2537,2541,2553,2563,2564,2562,2556,2554,2559,2579,2602,2633,
+2672,2725,2778,2826,2857,2898,2941,2981,3029,3084,3141,3172,3181,3199,3239,3276,3288,3294,3308,3340,
+3337,3262,3192,3194,3248,3267,3274,3267,3241,3193,3116,3045,2979,2950,2952,2995,3036,3052,3062,3074,
+3072,3091,3161,3222,3225,3201,3176,3126,3082,3052,3007,2948,2954,2963,2980,2980,2972,2961,2977,2986,
+3011,3021,3032,3095,3194,3255,3240,3170,3111,3108,3074,2974,2856,2757,2728,2660,2611,2494,2398,2376,
+2417,2357,2240,2053,1894,1813,1758,1737,1730,1711,1686,1657,1631,1601,1562,1520,1477,1426,1398,1343,
+1240,1092,1022,979,933,899,852,814,790,786,788,795,808,830,861,893,918,933,945,945,
+939,942,929,896,862,822,764,719,731,851,1024,1100,1109,1164,1166,1164,1226,1225,1213,1165,
+1140,1164,1122,1131,1135,1126,1096,1046,982,880,819,777,737,711,695,685,676,660,641,637,
+632,622,608,609,606,622,640,662,679,692,702,705,712,716,723,727,721,713,702,684,
+661,644,641,645,602,618,638,584,607,643,666,662,648,602,640,687,667,765,807,767,
+749,828,815,835,834,813,755,710,707,704,719,747,675,566,548,580,623,596,574,553,
+521,529,487,417,381,353,339,309,276,264,239,190,161,125,94,79,52,13,-18,-39,
+-73,-101,-123,-166,-188,-211,-262,-335,-371,-401,-446,-511,-570,-617,-672,-712,-781,-814,-875,-933,
+-973,-1029,-1085,-1123,-1149,-1205,-1265,-1317,-1377,-1421,-1488,-1523,-1559,-1577,-1609,-1651,-1703,-1768,-1821,-1872,
+-1922,-1965,-1989,-2025,-2070,-2104,-2142,-2186,-2225,-2277,-2316,-2344,-2371,-2404,-2433,-2454,-2482,-2536,-2571,-2599,
+-2620,-2621,-2641,-2730,-2769,-2810,-2864,-2977,-3059,-3083,-3098,-3133,-3170,-3229,-3334,-3414,-3409,-3401,-3418,-3462,
+-3491,-3497,-3507,-3531,-3571,-3585,-3625,-3660,-3697,-3713,-3729,-3752,-3775,-3788,-3802,-3814,-3813,-3839,-3841,-3852,
+-3860,-3851,-3837,-3816,-3786,-3728,-3692,-3752,-3847,-3918,-3935,-3932,-3914,-3902,-3891,-3892,-3894,-3883,-3868,-3838,
+-3820,-3808,-3796,-3775,-3768,-3767,-3770,-3773,-3779,-3791,-3807,-3808,-3809,-3821,-3826,-3835,-3856,-3855,-3859,-3857,
+-3861,-3881,-3899,-3910,-3910,-3900,-3890,-3873,-3866,-3857,-3834,-3807,-3791,-3766,-3725,-3675,-3625,-3560,-3465,-3372,
+-3275,-3165,-3038,-2910,-2808,-2686,-2575,-2464,-2361,-2244,-2113,-2044,-2094,-2118,-2022,-2001,-1978,-1950,-1928,-1904,
+-1885,-1867,-1878,-1893,-1911,-1913,-1891,-1874,-1839,-1795,-1757,-1731,-1707,-1663,-1602,-1577,-1542,-1509,-1513,-1490,
+-1440,-1398,-1381,-1364,-1360,-1350,-1323,-1316,-1300,-1285,-1274,-1272,-1276,-1280,-1289,-1286,-1277,-1259,-1228,-1177,
+-1131,-1114,-1119,-1096,-1089,-1129,-1126,-1120,-1098,-1048,-996,-959,-908,-847,-777,-748,-744,-723,-689,-637,
+-562,-479,-377,-244,-74,111,267,397,430,477,520,537,571,621,692,755,802,845,877,933,
+992,1030,1060,1098,1144,1183,1239,1315,1394,1440,1475,1516,1566,1612,1650,1711,1790,1877,1929,1962,
+2007,2074,2156,2224,2288,2355,2404,2463,2520,2607,2687,2741,2814,2868,2908,2941,3004,3058,3098,3113,
+3121,3149,3196,3256,3309,3343,3360,3403,3439,3460,3494,3560,3613,3661,3734,3828,3919,3984,4046,4103,
+4130,4116,4071,4056,4062,4059,4054,4001,3873,3722,3600,3527,3615,3858,3766,3643,3568,3517,3486,3492,
+3563,3608,3637,3683,3724,3727,3706,3695,3745,3793,3813,3804,3812,3852,3911,3958,4012,4068,4108,4125,
+4134,4154,4175,4199,4224,4242,4235,4215,4201,4163,4144,4113,4078,4105,4131,4185,4246,4297,4331,4369,
+4411,4510,4598,4632,4630,4663,4688,4709,4726,4746,4753,4783,4783,4832,4869,4884,4882,4889,4888,4876,
+4882,4869,4857,4907,4943,4935,4937,4939,4933,4930,4915,4896,4876,4859,4840,4821,4809,4813,4806,4788,
+4787,4765,4758,4743,4725,4718,4741,4751,4746,4752,4752,4759,4829,4879,4936,4938,4903,4870,4865,4837,
+4795,4734,4584,4367,4184,3992,3594,3058,2611,2363,2519,2789,3002,3180,3415,3670,3598,3451,3341,3257,
+3192,3146,3109,3072,3018,2949,2876,2846,2804,2678,2616,2544,2468,2389,2313,2247,2184,2119,2044,1968,
+1914,1861,1803,1766,1732,1694,1649,1592,1528,1453,1401,1368,1329,1306,1282,1256,1229,1196,1148,1091,
+1038,997,953,908,875,853,827,789,749,719,700,677,650,615,577,544,507,487,460,427,
+382,332,286,250,220,191,163,136,114,99,85,64,39,14,-4,-23,-38,-38,-43,-67,
+-97,-119,-114,-128,-118,-98,-56,-55,-102,-126,-149,-144,-165,-193,-221,-254,-282,-301,-315,-329,
+-344,-360,-380,-400,-407,-412,-414,-451,-434,-410,-448,-467,-491,-485,-417,-333,-371,-413,-401,-437,
+-507,-533,-582,-619,-649,-695,-734,-767,-804,-838,-862,-886,-919,-952,-988,-1017,-1044,-1063,-1084,-1105,
+-1124,-1138,-1158,-1179,-1200,-1213,-1222,-1236,-1245,-1265,-1283,-1289,-1302,-1309,-1317,-1318,-1322,-1326,-1334,-1339,
+-1340,-1335,-1330,-1333,-1331,-1331,-1328,-1316,-1305,-1297,-1285,-1279,-1271,-1268,-1259,-1244,-1242,-1229,-1222,-1205,
+-1202,-1188,-1177,-1169,-1160,-1149,-1145,-1136,-1127,-1112,-1105,-1101,-1095,-1080,-1071,-1063,-1053,-1050,-1037,-1028,
+-1022,-1014,-1001,-993,-980,-954,-957,-961,-955,-942,-938,-916,-910,-905,-902,-905,-901,-889,-890,-879,
+-875,-863,-857,-841,-828,-821,-816,-797,-791,-777,-772,-764,-759,-754,-740,-726,-710,-685,-698,-640,
+-642,-635,-641,-638,-641,-636,-631,-617,-613,-603,-564,-577,-570,-570,-567,-564,-563,-557,-543,-544,
+-536,-520,-512,-514,-500,-494,-482,-480,-461,-442,-434,-424,-427,-431,-429,-412,-391,-407,-407,-375,
+-368,-360,-374,-383,-360,-357,-330,-319,-310,-304,-304,-271,-289,-277,-265,-265,-261,-263,-259,-249,
+-233,-208,-207,-190,-183,-173,-148,-136,-119,-108,-93,-85,-71,-61,-58,-40,-39,-20,-4,6,
+25,32,50,70,79,92,104,116,133,134,140,152,169,177,191,204,212,228,248,276,
+279,302,276,292,324,313,328,344,357,376,399,420,424,430,449,455,462,479,489,508,
+532,555,598,626,638,682,701,715,725,740,767,799,833,873,902,925,968,1019,1068,1102,
+1131,1178,1203,1242,1269,1297,1323,1352,1396,1442,1477,1527,1539,1568,1606,1640,1678,1738,1741,1747,
+1731,1695,1619,1455,1278,1363,1671,2110,2567,2776,2990,3266,3477,3694,3854,3934,4040,4069,4048,3915,
+3711,3389,3313,3191,3011,2948,2886,2963,3147,2969,2757,2684,2667,2625,2551,2461,2414,2390,2370,2358,
+2362,2366,2356,2329,2291,2251,2204,2153,2120,2085,2058,2026,1995,1967,1936,1903,1870,1842,1801,1758,
+1713,1666,1610,1547,1480,1402,1324,1249,1158,1057,972,902,843,824,811,797,790,782,775,779,
+754,764,761,745,683,646,630,619,618,596,586,573,540,474,411,335,243,132,82,95,
+128,64,-19,-111,-218,-332,-462,-573,-623,-637,-648,-680,-737,-819,-924,-985,-1025,-1047,-1030,-1023,
+-1010,-1017,-1036,-1059,-1081,-1095,-1109,-1121,-1140,-1146,-1121,-1088,-1072,-1086,-1053,-1022,-988,-964,-970,-969,
+-874,-838,-803,-758,-713,-675,-637,-605,-575,-534,-490,-449,-409,-375,-349,-320,-303,-289,-268,-240,
+-213,-179,-149,-113,-76,-33,-35,-69,-65,-50,-36,-32,-26,-19,-5,7,36,58,80,94,
+94,109,127,158,170,184,194,212,227,251,270,300,318,348,373,398,431,454,477,496,
+515,550,573,587,606,622,631,661,683,693,714,744,762,786,814,844,876,906,923,949,
+961,986,1017,1045,1055,1083,1110,1131,1155,1175,1202,1218,1236,1251,1272,1293,1334,1372,1402,1414,
+1440,1427,1416,1427,1436,1429,1434,1437,1425,1421,1427,1438,1447,1455,1462,1467,1480,1486,1493,1507,
+1517,1522,1523,1540,1551,1573,1596,1617,1631,1649,1662,1684,1694,1712,1726,1736,1747,1756,1790,1811,
+1836,1856,1880,1901,1926,1947,1972,1994,2013,2025,2046,2075,2092,2101,2127,2166,2195,2227,2254,2279,
+2308,2345,2370,2408,2454,2478,2486,2460,2403,2369,2367,2380,2397,2412,2414,2423,2440,2464,2487,2525,
+2492,2479,2475,2486,2488,2494,2505,2527,2538,2541,2536,2549,2564,2568,2570,2564,2563,2571,2587,2612,
+2642,2681,2734,2791,2844,2877,2900,2934,2969,3030,3100,3163,3198,3190,3193,3218,3264,3292,3295,3274,
+3239,3202,3171,3154,3172,3203,3238,3239,3227,3177,3129,3084,3047,3014,3010,3009,3032,3067,3109,3112,
+3126,3116,3132,3207,3302,3263,3231,3213,3165,3111,3072,3017,2976,2982,3004,3024,3025,3011,2984,2994,
+3026,3052,3054,3053,3113,3213,3308,3323,3222,3157,3134,3095,2928,2819,2731,2697,2652,2581,2484,2407,
+2391,2411,2402,2270,2067,1908,1825,1781,1771,1769,1750,1726,1695,1668,1636,1603,1567,1538,1483,1431,
+1357,1250,1110,1057,1025,989,957,918,882,857,849,852,859,870,890,918,953,978,989,998,
+999,1002,997,977,945,914,871,810,785,828,949,1131,1165,1159,1200,1231,1227,1250,1252,1224,
+1227,1213,1219,1202,1220,1236,1225,1193,1147,1091,987,904,863,825,789,771,758,742,730,727,
+723,717,702,697,699,712,723,743,759,766,776,781,785,789,791,793,792,782,768,752,
+733,712,705,731,699,650,688,730,685,679,718,749,785,726,712,745,746,785,919,890,
+844,869,951,880,842,818,788,774,800,808,763,722,694,656,692,718,711,742,681,607,
+577,586,576,502,459,428,419,393,360,328,310,282,235,225,192,167,120,94,72,43,
+9,-19,-46,-75,-112,-151,-176,-214,-260,-303,-360,-399,-436,-499,-557,-599,-653,-708,-749,-808,
+-858,-890,-965,-1003,-1014,-1092,-1142,-1201,-1255,-1314,-1370,-1417,-1453,-1484,-1495,-1532,-1586,-1643,-1703,-1755,
+-1809,-1852,-1889,-1918,-1958,-1988,-2026,-2066,-2109,-2154,-2196,-2233,-2270,-2302,-2338,-2372,-2407,-2444,-2474,-2497,
+-2536,-2569,-2613,-2647,-2708,-2773,-2812,-2839,-2915,-3005,-3028,-3038,-3063,-3104,-3155,-3260,-3348,-3353,-3350,-3365,
+-3409,-3440,-3449,-3463,-3453,-3519,-3531,-3549,-3588,-3636,-3651,-3660,-3677,-3707,-3734,-3754,-3746,-3766,-3776,-3787,
+-3812,-3822,-3822,-3802,-3765,-3667,-3622,-3610,-3639,-3743,-3871,-3918,-3920,-3912,-3906,-3892,-3879,-3886,-3894,-3884,
+-3860,-3842,-3826,-3789,-3778,-3771,-3772,-3786,-3792,-3795,-3807,-3824,-3835,-3829,-3842,-3840,-3855,-3870,-3888,-3867,
+-3861,-3876,-3907,-3914,-3927,-3927,-3923,-3914,-3910,-3906,-3891,-3859,-3820,-3791,-3768,-3744,-3718,-3666,-3617,-3544,
+-3458,-3356,-3257,-3118,-3011,-2905,-2773,-2634,-2515,-2417,-2288,-2171,-2107,-2141,-2171,-2094,-2072,-2052,-2037,-2011,
+-1996,-1973,-1958,-1937,-1929,-1952,-1937,-1895,-1915,-1879,-1808,-1793,-1792,-1775,-1737,-1672,-1642,-1593,-1576,-1597,
+-1585,-1541,-1483,-1454,-1428,-1415,-1416,-1393,-1377,-1382,-1389,-1388,-1386,-1378,-1361,-1361,-1354,-1335,-1303,-1252,
+-1229,-1217,-1222,-1231,-1223,-1203,-1225,-1225,-1212,-1201,-1154,-1104,-1069,-1011,-961,-901,-870,-845,-810,-762,
+-682,-569,-447,-308,-154,27,183,281,332,370,424,463,490,523,584,653,737,779,801,814,
+863,922,969,996,1038,1089,1144,1199,1259,1329,1371,1415,1453,1503,1539,1600,1684,1760,1821,1867,
+1899,1951,2023,2087,2161,2222,2283,2343,2411,2479,2548,2615,2673,2735,2790,2828,2869,2919,2964,2991,
+3008,3040,3074,3136,3193,3241,3269,3289,3327,3357,3385,3428,3491,3547,3594,3669,3756,3815,3900,3959,
+4011,4059,4099,4034,4002,3996,4014,3985,3922,3805,3659,3549,3459,3444,3563,3811,3803,3552,3452,3416,
+3431,3499,3554,3585,3620,3665,3677,3654,3627,3666,3717,3744,3743,3758,3805,3862,3898,3948,3993,4047,
+4057,4061,4089,4104,4124,4160,4171,4159,4138,4129,4093,4087,4055,4026,4030,4079,4132,4184,4228,4262,
+4311,4360,4447,4547,4591,4588,4613,4648,4678,4688,4707,4712,4733,4757,4780,4802,4827,4832,4829,4840,
+4848,4865,4836,4794,4830,4915,4901,4890,4899,4876,4889,4876,4842,4820,4821,4850,4808,4778,4781,4786,
+4774,4754,4755,4740,4732,4739,4712,4722,4741,4745,4736,4734,4741,4774,4861,4912,4910,4867,4846,4843,
+4815,4754,4662,4526,4270,4072,3833,3415,2908,2504,2354,2553,2806,2996,3144,3282,3398,3520,3524,3408,
+3275,3185,3127,3083,3044,2995,2936,2860,2789,2718,2652,2596,2531,2460,2379,2311,2245,2187,2118,2047,
+1982,1932,1885,1805,1764,1727,1687,1644,1590,1526,1458,1404,1384,1350,1315,1286,1253,1221,1185,1140,
+1093,1046,994,957,914,874,843,834,795,757,721,695,665,634,615,567,525,498,475,455,
+416,373,329,287,257,225,186,156,128,114,96,74,54,35,20,5,-11,-27,-37,-47,
+-64,-98,-121,-123,-128,-150,-124,-116,-111,-105,-124,-115,-151,-137,-187,-223,-257,-288,-309,-323,
+-332,-347,-366,-389,-404,-416,-414,-433,-458,-475,-488,-501,-527,-540,-558,-556,-485,-369,-402,-402,
+-479,-520,-539,-546,-578,-625,-676,-726,-747,-777,-813,-834,-863,-898,-932,-975,-1008,-1041,-1062,-1078,
+-1094,-1109,-1127,-1149,-1162,-1181,-1195,-1207,-1220,-1241,-1257,-1272,-1276,-1289,-1299,-1313,-1319,-1330,-1336,-1340,
+-1343,-1343,-1342,-1341,-1342,-1340,-1337,-1334,-1320,-1312,-1304,-1296,-1287,-1286,-1279,-1269,-1254,-1243,-1239,-1227,
+-1214,-1202,-1194,-1181,-1174,-1163,-1154,-1146,-1137,-1130,-1121,-1112,-1101,-1097,-1088,-1082,-1076,-1072,-1054,-1050,
+-1044,-1035,-1024,-1009,-994,-988,-967,-973,-975,-975,-957,-965,-945,-929,-912,-921,-918,-913,-906,-906,
+-895,-895,-889,-878,-869,-852,-837,-833,-824,-813,-808,-794,-787,-778,-765,-758,-745,-731,-727,-723,
+-678,-668,-664,-670,-672,-664,-666,-657,-645,-639,-632,-619,-609,-600,-588,-578,-566,-580,-575,-565,
+-555,-557,-559,-542,-547,-532,-515,-511,-490,-499,-473,-476,-467,-461,-455,-444,-445,-429,-441,-419,
+-396,-391,-396,-401,-408,-384,-377,-357,-347,-333,-334,-324,-319,-316,-297,-278,-282,-283,-284,-271,
+-251,-237,-221,-209,-205,-191,-168,-157,-144,-142,-126,-107,-98,-90,-77,-69,-55,-29,-20,-2,
+13,15,32,42,56,69,90,111,118,137,138,147,155,169,175,195,210,221,235,254,
+256,271,300,272,289,292,308,320,332,346,363,386,400,411,422,434,445,448,447,453,
+472,499,539,570,595,622,642,663,675,690,707,741,794,867,848,876,920,965,1001,1037,
+1061,1081,1131,1162,1209,1283,1301,1304,1337,1383,1431,1456,1526,1532,1556,1603,1636,1681,1724,1741,
+1731,1698,1638,1552,1401,1273,1442,1809,2281,2719,2827,3009,3281,3444,3637,3793,3845,3925,3930,3876,
+3793,3624,3336,3092,3023,2888,2790,2760,2899,3132,3005,2823,2745,2716,2637,2546,2456,2401,2381,2368,
+2358,2356,2352,2337,2310,2277,2241,2193,2142,2114,2086,2052,2017,1984,1950,1912,1877,1842,1807,1773,
+1735,1694,1649,1595,1528,1458,1388,1310,1231,1151,1058,983,917,878,853,845,843,852,853,836,
+837,811,829,838,792,725,678,672,677,661,641,631,618,604,559,463,305,209,140,111,
+143,159,77,-3,-69,-150,-269,-425,-549,-605,-631,-669,-714,-778,-841,-926,-987,-1024,-1041,-1043,
+-1033,-1015,-1026,-1041,-1048,-1076,-1072,-1077,-1082,-1078,-1063,-1039,-1033,-1061,-1061,-1021,-992,-969,-952,-949,
+-938,-869,-845,-802,-748,-696,-651,-597,-565,-536,-504,-467,-426,-387,-352,-319,-294,-266,-239,-211,
+-171,-144,-112,-93,-70,-75,-102,-94,-65,-10,12,13,6,14,29,48,56,81,104,119,
+134,146,132,136,152,174,192,214,229,242,271,290,308,326,357,391,408,430,481,490,
+510,536,566,590,602,623,635,660,696,725,748,768,789,808,839,867,888,909,926,951,
+972,991,1018,1028,1052,1073,1103,1121,1145,1176,1192,1215,1234,1256,1276,1309,1332,1362,1382,1423,
+1389,1461,1442,1431,1428,1418,1409,1413,1427,1433,1429,1436,1444,1453,1454,1462,1473,1480,1496,1495,
+1501,1510,1510,1525,1546,1563,1579,1599,1618,1628,1644,1656,1675,1691,1698,1715,1729,1747,1772,1784,
+1805,1828,1847,1869,1897,1926,1955,1979,2000,2019,2035,2053,2081,2101,2103,2128,2171,2200,2230,2262,
+2293,2327,2366,2393,2426,2463,2440,2473,2568,2475,2412,2353,2356,2372,2384,2386,2397,2427,2452,2469,
+2467,2471,2474,2469,2471,2475,2474,2493,2508,2519,2532,2543,2557,2566,2579,2584,2581,2583,2588,2602,
+2624,2653,2691,2741,2798,2849,2877,2884,2913,2969,3037,3119,3194,3207,3181,3185,3206,3226,3250,3273,
+3263,3190,3178,3140,3134,3163,3192,3222,3221,3190,3152,3100,3068,3042,3022,3027,3057,3084,3101,3118,
+3128,3149,3140,3160,3239,3332,3290,3256,3216,3170,3114,3055,3018,3009,3020,3042,3054,3056,3057,3043,
+3049,3061,3056,3063,3057,3123,3261,3367,3394,3282,3181,3110,2999,2844,2750,2713,2682,2658,2568,2492,
+2427,2382,2396,2400,2285,2065,1904,1826,1800,1803,1789,1777,1763,1735,1701,1666,1633,1604,1576,1519,
+1449,1352,1227,1127,1088,1058,1026,1000,968,945,926,915,915,919,928,947,977,1007,1033,1044,
+1053,1054,1057,1047,1024,1000,973,922,889,896,957,1085,1174,1214,1257,1334,1286,1277,1281,1278,
+1271,1269,1273,1280,1307,1307,1312,1325,1303,1251,1188,1121,1005,956,915,866,843,824,808,807,
+806,806,797,788,786,800,815,831,848,854,859,864,866,868,869,870,865,854,836,819,
+797,777,765,778,776,762,724,774,803,780,755,799,848,847,804,823,852,832,878,943,
+1006,980,970,960,891,827,833,877,939,978,981,917,838,779,776,793,788,763,785,726,
+636,620,629,581,543,509,492,466,451,413,389,367,322,294,265,243,208,190,176,140,
+102,52,40,13,-42,-63,-90,-137,-173,-190,-214,-300,-337,-366,-424,-480,-532,-581,-618,-668,
+-719,-770,-841,-871,-890,-952,-1019,-1069,-1125,-1186,-1240,-1290,-1324,-1367,-1390,-1422,-1475,-1527,-1586,-1641,
+-1697,-1741,-1772,-1801,-1840,-1876,-1918,-1962,-2002,-2043,-2085,-2128,-2163,-2191,-2238,-2286,-2318,-2366,-2397,-2417,
+-2419,-2469,-2528,-2569,-2614,-2666,-2707,-2750,-2760,-2845,-2933,-2960,-2975,-2994,-3025,-3073,-3166,-3275,-3304,-3315,
+-3327,-3364,-3393,-3407,-3423,-3413,-3465,-3474,-3478,-3518,-3560,-3568,-3576,-3593,-3622,-3640,-3662,-3679,-3687,-3706,
+-3754,-3769,-3783,-3786,-3765,-3717,-3603,-3576,-3572,-3579,-3681,-3805,-3892,-3909,-3906,-3907,-3897,-3875,-3874,-3882,
+-3876,-3851,-3821,-3779,-3794,-3777,-3763,-3768,-3791,-3816,-3817,-3810,-3815,-3845,-3851,-3866,-3853,-3851,-3882,-3919,
+-3903,-3870,-3879,-3905,-3917,-3926,-3929,-3930,-3934,-3937,-3930,-3913,-3884,-3845,-3814,-3774,-3751,-3742,-3711,-3656,
+-3597,-3527,-3438,-3339,-3209,-3092,-2993,-2876,-2721,-2590,-2486,-2375,-2245,-2200,-2215,-2240,-2198,-2147,-2129,-2114,
+-2103,-2072,-2076,-2053,-2021,-2002,-1988,-1938,-1919,-1950,-1918,-1889,-1865,-1857,-1849,-1824,-1790,-1740,-1676,-1664,
+-1661,-1643,-1623,-1579,-1519,-1495,-1467,-1455,-1450,-1430,-1432,-1445,-1461,-1468,-1460,-1451,-1443,-1408,-1355,-1319,
+-1318,-1318,-1320,-1335,-1327,-1323,-1317,-1320,-1318,-1302,-1277,-1236,-1187,-1137,-1076,-1022,-972,-937,-897,-839,
+-761,-647,-501,-352,-213,-56,90,164,188,245,303,369,418,461,497,559,605,688,752,766,
+789,832,872,918,958,1006,1062,1117,1176,1230,1273,1307,1350,1397,1436,1492,1563,1633,1700,1761,
+1830,1887,1949,2022,2052,2093,2147,2203,2273,2351,2426,2487,2557,2621,2662,2699,2749,2801,2839,2861,
+2882,2918,2957,3015,3084,3133,3183,3204,3210,3246,3278,3311,3362,3425,3474,3525,3595,3657,3717,3800,
+3884,3942,3995,4034,4036,3980,3963,3978,3916,3849,3682,3534,3441,3365,3347,3452,3726,3769,3506,3393,
+3364,3388,3440,3475,3506,3552,3602,3613,3592,3577,3604,3661,3691,3704,3722,3755,3800,3834,3883,3924,
+3964,3980,3992,4025,4041,4070,4096,4101,4079,4063,4055,4029,4027,3994,3986,3992,4032,4082,4128,4170,
+4209,4254,4317,4431,4514,4559,4556,4567,4610,4652,4641,4651,4675,4696,4717,4744,4760,4799,4805,4784,
+4805,4803,4833,4789,4745,4785,4881,4847,4841,4848,4825,4840,4825,4800,4804,4873,4857,4776,4764,4754,
+4755,4755,4743,4722,4719,4718,4710,4717,4718,4713,4708,4704,4704,4710,4739,4825,4887,4870,4844,4813,
+4827,4798,4719,4619,4405,4148,3936,3672,3238,2752,2408,2366,2596,2840,3000,3115,3198,3270,3364,3452,
+3442,3301,3189,3104,3053,3010,2968,2911,2848,2783,2706,2635,2558,2491,2424,2357,2296,2233,2180,2114,
+2048,1989,1938,1878,1814,1768,1728,1686,1642,1585,1524,1458,1415,1398,1363,1319,1288,1236,1201,1166,
+1132,1093,1051,994,952,910,883,860,826,786,750,715,729,666,632,599,564,514,489,466,
+442,408,354,314,281,264,243,191,153,133,117,95,69,46,30,18,11,-3,-20,-34,
+-46,-72,-92,-113,-124,-135,-140,-132,-90,-93,-100,-96,-124,-163,-191,-208,-212,-259,-289,-318,
+-336,-346,-360,-380,-392,-404,-410,-418,-437,-453,-464,-483,-495,-511,-525,-538,-565,-554,-522,-513,
+-479,-507,-546,-528,-558,-594,-634,-669,-711,-751,-771,-788,-810,-840,-882,-916,-956,-989,-1020,-1043,
+-1059,-1079,-1098,-1119,-1137,-1154,-1170,-1191,-1201,-1206,-1226,-1243,-1264,-1275,-1284,-1287,-1291,-1301,-1319,-1330,
+-1336,-1342,-1345,-1344,-1346,-1342,-1343,-1346,-1342,-1334,-1321,-1310,-1306,-1295,-1292,-1286,-1279,-1266,-1258,-1254,
+-1248,-1237,-1224,-1211,-1206,-1197,-1184,-1174,-1154,-1150,-1136,-1134,-1125,-1115,-1109,-1107,-1099,-1092,-1088,-1070,
+-1061,-1048,-1042,-1029,-1020,-1001,-998,-984,-978,-975,-977,-977,-970,-957,-938,-928,-932,-931,-929,-927,
+-924,-917,-918,-907,-901,-889,-875,-862,-856,-856,-833,-827,-816,-811,-799,-783,-773,-761,-753,-754,
+-748,-719,-700,-690,-697,-699,-695,-692,-689,-682,-661,-638,-634,-624,-616,-604,-600,-596,-597,-590,
+-576,-587,-580,-571,-558,-566,-531,-531,-535,-522,-524,-506,-504,-497,-484,-479,-475,-471,-473,-457,
+-443,-422,-418,-422,-421,-424,-405,-382,-382,-361,-355,-352,-344,-336,-330,-319,-307,-299,-290,-282,
+-279,-269,-252,-231,-214,-202,-193,-177,-174,-167,-166,-158,-133,-123,-110,-87,-79,-62,-46,-35,
+-18,2,7,21,33,55,79,99,112,131,147,145,154,167,182,178,196,209,224,237,
+257,246,271,272,287,289,294,303,306,315,332,347,366,381,389,398,418,428,436,435,
+432,448,482,517,548,579,592,613,632,655,681,690,719,759,805,819,859,910,958,995,
+1013,1032,1071,1116,1154,1185,1234,1262,1282,1320,1366,1417,1457,1502,1539,1576,1611,1657,1700,1739,
+1747,1735,1693,1621,1505,1335,1267,1503,1946,2410,2758,2890,3071,3322,3511,3595,3705,3731,3776,3762,
+3679,3602,3498,3295,3015,2930,2850,2744,2728,2910,3146,2985,2907,2809,2731,2619,2520,2445,2395,2375,
+2371,2362,2356,2345,2336,2318,2280,2233,2188,2136,2098,2072,2044,2004,1959,1927,1902,1858,1811,1776,
+1752,1712,1667,1626,1575,1510,1442,1372,1292,1213,1138,1059,1000,945,913,892,876,867,878,881,
+869,861,853,880,865,769,751,727,707,708,700,660,643,627,622,580,401,216,144,131,
+156,210,175,86,13,-41,-111,-240,-413,-539,-605,-647,-694,-743,-803,-859,-922,-977,-1014,-1043,
+-1050,-1043,-1016,-1009,-1008,-1024,-1038,-1031,-1023,-1028,-1007,-999,-993,-994,-1030,-1005,-962,-931,-912,-904,
+-907,-905,-874,-804,-758,-694,-634,-590,-551,-532,-509,-482,-454,-417,-375,-328,-294,-264,-231,-192,
+-152,-120,-92,-63,-64,-83,-85,-56,-9,54,114,95,60,51,57,70,83,100,112,120,
+130,134,146,154,166,183,210,225,251,271,275,293,323,341,370,385,425,451,479,500,
+524,550,572,585,606,637,663,689,718,740,761,781,800,819,837,871,881,902,928,954,
+964,983,1003,1012,1045,1076,1095,1118,1135,1160,1187,1213,1238,1263,1283,1309,1332,1347,1367,1375,
+1397,1389,1422,1424,1416,1461,1452,1448,1445,1440,1436,1438,1450,1451,1466,1463,1465,1468,1470,1479,
+1490,1511,1535,1547,1552,1561,1569,1572,1581,1598,1614,1630,1645,1663,1681,1693,1710,1733,1748,1767,
+1786,1808,1828,1860,1882,1902,1927,1958,1989,2013,2030,2047,2063,2082,2103,2128,2151,2182,2204,2237,
+2263,2300,2341,2378,2410,2443,2480,2441,2423,2510,2418,2346,2338,2348,2356,2366,2374,2394,2426,2447,
+2460,2457,2464,2471,2469,2457,2463,2476,2483,2492,2505,2527,2547,2563,2574,2581,2588,2588,2593,2603,
+2616,2638,2664,2697,2740,2795,2846,2879,2888,2905,2959,3042,3139,3208,3200,3158,3159,3173,3187,3204,
+3240,3252,3207,3211,3185,3135,3158,3188,3228,3211,3171,3158,3112,3048,3024,3011,2983,2995,3046,3079,
+3119,3137,3155,3156,3187,3253,3314,3278,3254,3194,3139,3095,3045,3037,3034,3042,3046,3053,3067,3082,
+3090,3102,3081,3064,3056,3085,3170,3323,3451,3481,3386,3244,3107,2942,2806,2719,2684,2654,2646,2608,
+2547,2482,2460,2454,2398,2249,2056,1920,1838,1807,1808,1806,1791,1780,1779,1740,1694,1657,1632,1612,
+1551,1471,1355,1225,1155,1118,1089,1069,1049,1029,1018,1002,982,977,977,984,1002,1030,1059,1084,
+1094,1102,1105,1106,1098,1081,1054,1018,987,984,1010,1092,1182,1218,1290,1336,1358,1339,1330,1336,
+1320,1316,1323,1351,1367,1380,1388,1380,1381,1355,1325,1262,1187,1103,1042,994,945,910,888,884,
+884,887,883,881,883,895,911,927,946,952,952,955,960,956,955,953,944,932,903,880,
+862,845,834,832,842,815,834,818,866,900,859,849,898,958,971,933,938,980,930,982,
+1017,1074,1057,971,898,926,962,1005,1004,986,1007,1008,957,861,819,818,847,823,805,805,
+731,699,682,641,612,589,566,544,530,492,470,449,405,382,359,325,287,264,251,223,
+186,139,119,74,34,14,-8,-58,-90,-113,-127,-181,-252,-245,-290,-355,-418,-459,-505,-556,
+-605,-647,-704,-756,-755,-827,-900,-943,-998,-1050,-1109,-1149,-1193,-1233,-1263,-1303,-1357,-1407,-1469,-1528,
+-1583,-1629,-1665,-1687,-1724,-1755,-1800,-1851,-1897,-1944,-1986,-2028,-2067,-2099,-2130,-2168,-2185,-2243,-2289,-2312,
+-2284,-2352,-2421,-2468,-2485,-2535,-2599,-2636,-2668,-2675,-2765,-2843,-2888,-2914,-2932,-2956,-2997,-3080,-3195,-3251,
+-3269,-3285,-3314,-3347,-3358,-3377,-3408,-3420,-3418,-3409,-3433,-3473,-3477,-3486,-3500,-3522,-3547,-3578,-3599,-3618,
+-3658,-3708,-3727,-3744,-3745,-3732,-3669,-3582,-3561,-3559,-3575,-3669,-3743,-3839,-3863,-3869,-3874,-3864,-3856,-3858,
+-3866,-3866,-3858,-3839,-3822,-3768,-3739,-3756,-3749,-3770,-3783,-3803,-3812,-3825,-3850,-3863,-3870,-3855,-3791,-3861,
+-3920,-3899,-3884,-3879,-3902,-3914,-3919,-3923,-3932,-3947,-3953,-3946,-3930,-3902,-3876,-3843,-3807,-3767,-3741,-3712,
+-3689,-3645,-3582,-3511,-3430,-3327,-3185,-3077,-2981,-2839,-2693,-2581,-2486,-2371,-2308,-2328,-2333,-2274,-2217,-2211,
+-2199,-2193,-2160,-2146,-2116,-2081,-2050,-2029,-1997,-1976,-1979,-1957,-1937,-1926,-1921,-1908,-1893,-1875,-1844,-1764,
+-1724,-1687,-1691,-1679,-1646,-1580,-1560,-1539,-1519,-1504,-1495,-1490,-1514,-1525,-1527,-1521,-1519,-1503,-1466,-1445,
+-1430,-1429,-1435,-1440,-1435,-1412,-1409,-1419,-1413,-1410,-1383,-1339,-1293,-1233,-1180,-1112,-1060,-1024,-980,-913,
+-829,-719,-574,-419,-279,-136,-25,39,85,135,183,254,335,389,433,477,516,557,620,713,
+736,767,810,845,881,916,949,1013,1089,1143,1185,1226,1264,1298,1341,1391,1461,1526,1584,1656,
+1741,1820,1879,1935,1999,2017,2049,2104,2169,2234,2307,2361,2420,2495,2560,2600,2632,2677,2725,2752,
+2775,2807,2855,2914,2983,3039,3084,3128,3145,3160,3177,3204,3244,3297,3365,3408,3456,3522,3556,3618,
+3706,3795,3879,3925,3916,3937,3918,3886,3888,3850,3784,3568,3393,3313,3248,3269,3378,3658,3603,3425,
+3343,3319,3340,3374,3393,3413,3458,3510,3537,3530,3541,3587,3635,3654,3665,3670,3695,3735,3778,3825,
+3865,3900,3914,3932,3950,3971,3983,4012,4027,4021,3989,3990,3948,3959,3957,3934,3961,4004,4030,4085,
+4118,4159,4209,4283,4421,4470,4544,4596,4550,4576,4592,4594,4598,4629,4654,4671,4711,4735,4745,4738,
+4748,4765,4761,4790,4750,4702,4758,4861,4808,4783,4786,4787,4784,4777,4770,4753,4749,4748,4766,4748,
+4742,4727,4734,4725,4697,4694,4711,4694,4703,4698,4698,4694,4688,4681,4691,4726,4837,4852,4842,4824,
+4797,4789,4760,4693,4573,4298,4033,3790,3481,3051,2615,2327,2395,2648,2871,3010,3101,3153,3202,3256,
+3346,3433,3394,3194,3075,3015,2974,2932,2883,2830,2761,2691,2606,2541,2454,2388,2329,2271,2214,2168,
+2111,2048,1987,1929,1891,1846,1770,1727,1685,1639,1582,1520,1452,1401,1402,1362,1320,1293,1227,1192,
+1157,1120,1079,1039,989,952,922,888,858,817,791,739,701,696,643,612,591,549,512,472,
+455,427,391,344,300,273,269,250,193,155,134,121,99,71,44,27,16,9,-5,-20,
+-36,-33,-67,-89,-112,-125,-134,-128,-112,-110,-110,-112,-119,-136,-151,-170,-200,-226,-248,-282,
+-312,-339,-360,-378,-393,-404,-413,-420,-425,-438,-455,-468,-478,-484,-490,-510,-521,-543,-566,-590,
+-590,-573,-606,-631,-618,-577,-575,-620,-668,-700,-738,-761,-782,-793,-804,-843,-887,-939,-973,-1005,
+-1029,-1049,-1070,-1089,-1111,-1129,-1144,-1164,-1182,-1198,-1215,-1228,-1231,-1257,-1274,-1286,-1290,-1293,-1299,-1308,
+-1319,-1324,-1330,-1333,-1336,-1340,-1341,-1340,-1335,-1340,-1336,-1322,-1306,-1306,-1295,-1285,-1289,-1289,-1287,-1271,
+-1271,-1269,-1262,-1253,-1241,-1225,-1216,-1205,-1193,-1179,-1173,-1159,-1150,-1135,-1121,-1116,-1107,-1106,-1102,-1090,
+-1082,-1075,-1058,-1046,-1041,-1036,-1010,-1005,-1003,-984,-984,-978,-981,-977,-972,-962,-951,-940,-938,-943,
+-935,-935,-929,-922,-918,-916,-903,-895,-883,-877,-868,-861,-854,-841,-830,-818,-812,-800,-786,-778,
+-776,-777,-766,-728,-732,-726,-727,-719,-711,-711,-689,-685,-673,-664,-646,-636,-639,-625,-616,-617,
+-608,-606,-601,-595,-593,-583,-578,-577,-569,-558,-554,-545,-539,-527,-532,-521,-505,-505,-497,-478,
+-468,-463,-459,-446,-444,-436,-431,-432,-398,-402,-380,-378,-377,-367,-354,-344,-336,-332,-320,-313,
+-306,-300,-285,-274,-262,-253,-234,-224,-213,-205,-196,-191,-171,-148,-137,-124,-111,-93,-73,-58,
+-44,-27,-20,4,18,29,52,73,93,109,130,145,157,165,159,179,177,193,192,214,
+234,257,227,250,260,278,289,283,280,289,297,310,334,351,364,370,368,387,411,418,
+421,428,453,480,521,541,567,581,601,624,648,674,694,718,747,779,809,870,906,953,
+997,1022,1059,1103,1144,1167,1203,1216,1245,1282,1318,1360,1405,1454,1500,1543,1582,1621,1663,1704,
+1735,1742,1725,1671,1581,1444,1271,1286,1581,2081,2535,2785,2956,3181,3379,3613,3708,3686,3651,3655,
+3589,3423,3316,3288,3248,3031,2966,2950,2765,2765,2946,3047,2860,2911,2813,2709,2597,2497,2440,2386,
+2372,2367,2361,2354,2338,2331,2316,2264,2210,2170,2128,2084,2050,2018,1979,1927,1901,1887,1843,1791,
+1753,1721,1682,1644,1606,1561,1503,1433,1357,1279,1206,1136,1071,1008,965,946,939,927,904,899,
+910,909,874,858,851,826,781,764,729,711,698,695,668,639,625,595,503,296,168,121,
+156,213,249,174,82,13,-48,-124,-265,-424,-538,-613,-667,-715,-768,-817,-864,-909,-949,-987,
+-1015,-1025,-1026,-1010,-981,-964,-964,-974,-990,-1002,-1015,-1018,-1016,-1004,-984,-944,-903,-865,-841,-823,
+-820,-838,-855,-852,-830,-770,-677,-600,-558,-534,-516,-490,-461,-439,-406,-361,-309,-259,-225,-188,
+-165,-123,-92,-46,-10,-3,20,50,84,99,156,219,206,157,110,103,102,153,164,148,
+141,149,157,170,196,206,221,240,256,274,298,316,333,363,394,413,434,452,475,498,
+532,550,580,604,629,645,670,700,723,747,763,777,793,816,832,854,872,898,924,943,
+961,978,1002,1023,1045,1072,1089,1113,1137,1162,1187,1209,1227,1257,1277,1298,1321,1335,1351,1373,
+1397,1425,1460,1466,1473,1451,1467,1471,1439,1444,1437,1437,1443,1453,1452,1453,1463,1467,1496,1499,
+1503,1513,1526,1529,1531,1545,1547,1553,1559,1570,1587,1604,1622,1638,1659,1679,1694,1715,1740,1757,
+1776,1793,1810,1836,1861,1880,1904,1931,1969,2002,2031,2061,2077,2076,2101,2128,2140,2159,2171,2188,
+2223,2262,2299,2349,2399,2434,2456,2486,2485,2376,2313,2311,2321,2337,2352,2363,2372,2384,2401,2425,
+2443,2450,2445,2448,2455,2458,2461,2467,2472,2490,2499,2515,2534,2557,2571,2581,2590,2592,2596,2604,
+2614,2629,2649,2671,2699,2735,2782,2840,2891,2908,2915,2953,3027,3137,3213,3203,3145,3127,3143,3159,
+3174,3207,3232,3234,3235,3240,3172,3170,3194,3208,3181,3163,3159,3100,3084,3091,3074,3023,2979,2990,
+3048,3125,3170,3162,3165,3198,3256,3261,3239,3206,3158,3114,3067,3063,3070,3071,3078,3074,3072,3073,
+3089,3105,3129,3088,3077,3087,3140,3228,3363,3499,3582,3590,3375,3181,3021,2900,2787,2718,2683,2657,
+2609,2578,2540,2519,2496,2392,2221,2049,1925,1847,1805,1821,1829,1819,1814,1797,1750,1723,1723,1714,
+1679,1615,1531,1393,1262,1200,1165,1134,1119,1107,1093,1087,1073,1050,1045,1041,1045,1060,1086,1110,
+1128,1140,1152,1154,1158,1152,1133,1100,1076,1065,1067,1113,1239,1302,1331,1370,1384,1389,1426,1421,
+1416,1400,1397,1403,1431,1443,1442,1437,1426,1408,1387,1359,1315,1249,1186,1102,1063,1021,988,968,
+956,961,968,962,967,983,1001,1022,1040,1053,1056,1057,1057,1058,1050,1037,1030,1013,979,981,
+961,929,925,912,903,905,871,923,907,932,992,946,956,999,1040,1034,1024,1045,1089,1004,
+1024,1047,1099,1043,957,994,1047,1059,1057,1063,1012,1027,978,943,909,885,853,832,810,817,
+798,778,734,703,676,663,635,622,609,580,545,531,494,452,443,401,370,344,325,290,
+261,222,197,163,127,104,72,33,4,-23,-51,-94,-116,-154,-219,-231,-267,-321,-389,-430,
+-474,-530,-581,-627,-636,-710,-766,-821,-873,-931,-980,-1036,-1063,-1115,-1145,-1181,-1227,-1287,-1350,-1410,
+-1468,-1517,-1546,-1570,-1606,-1640,-1685,-1734,-1789,-1838,-1882,-1922,-1962,-1997,-2021,-2049,-2076,-2112,-2161,-2199,
+-2241,-2280,-2320,-2348,-2369,-2381,-2428,-2513,-2571,-2594,-2612,-2683,-2768,-2834,-2864,-2877,-2899,-2932,-3004,-3116,
+-3174,-3197,-3227,-3253,-3290,-3307,-3325,-3346,-3358,-3348,-3346,-3354,-3396,-3401,-3409,-3416,-3441,-3477,-3514,-3545,
+-3575,-3624,-3653,-3684,-3703,-3704,-3704,-3631,-3560,-3536,-3547,-3586,-3628,-3714,-3803,-3818,-3823,-3834,-3838,-3841,
+-3845,-3845,-3846,-3839,-3831,-3833,-3827,-3792,-3758,-3769,-3787,-3815,-3824,-3836,-3827,-3856,-3877,-3848,-3864,-3861,
+-3855,-3905,-3895,-3879,-3889,-3902,-3907,-3918,-3925,-3940,-3951,-3957,-3954,-3944,-3921,-3904,-3882,-3842,-3805,-3769,
+-3722,-3691,-3666,-3637,-3589,-3516,-3439,-3328,-3208,-3090,-2955,-2809,-2701,-2612,-2521,-2435,-2444,-2443,-2384,-2301,
+-2286,-2270,-2269,-2251,-2199,-2181,-2150,-2110,-2071,-2030,-2033,-1997,-1990,-1976,-1963,-1962,-1954,-1957,-1946,-1930,
+-1899,-1834,-1770,-1733,-1725,-1687,-1630,-1612,-1611,-1599,-1588,-1584,-1584,-1608,-1608,-1587,-1579,-1562,-1558,-1551,
+-1542,-1541,-1553,-1558,-1549,-1535,-1516,-1516,-1523,-1511,-1490,-1448,-1400,-1346,-1279,-1221,-1152,-1100,-1061,-997,
+-906,-798,-659,-519,-383,-259,-163,-90,-26,34,88,171,255,319,363,392,417,461,505,554,
+626,676,728,781,807,852,890,926,991,1055,1100,1145,1180,1218,1265,1317,1367,1428,1479,1555,
+1639,1715,1784,1851,1897,1939,1969,2011,2059,2128,2204,2265,2311,2343,2409,2479,2528,2573,2614,2660,
+2693,2725,2768,2821,2886,2939,2981,3044,3080,3105,3110,3125,3154,3180,3230,3302,3349,3406,3449,3481,
+3549,3630,3717,3792,3832,3829,3837,3836,3785,3758,3762,3713,3468,3301,3236,3163,3187,3283,3493,3451,
+3349,3288,3265,3280,3297,3319,3342,3383,3425,3445,3458,3499,3569,3613,3621,3611,3609,3629,3668,3724,
+3765,3810,3835,3868,3900,3913,3943,3950,3935,3953,3954,3933,3916,3879,3882,3891,3879,3915,3966,3984,
+4036,4092,4127,4173,4221,4315,4411,4568,4680,4577,4549,4548,4543,4551,4573,4595,4627,4665,4699,4692,
+4697,4713,4742,4719,4749,4719,4664,4727,4851,4771,4748,4745,4744,4744,4735,4719,4719,4723,4730,4742,
+4729,4720,4725,4704,4690,4676,4677,4678,4679,4670,4677,4675,4669,4665,4671,4688,4752,4846,4822,4793,
+4782,4781,4754,4702,4642,4524,4186,3901,3644,3304,2867,2488,2279,2438,2704,2904,3029,3094,3128,3156,
+3188,3270,3360,3310,3146,3036,2973,2928,2889,2849,2800,2732,2661,2580,2519,2447,2370,2305,2252,2202,
+2155,2100,2044,1982,1932,1888,1819,1766,1722,1680,1634,1578,1519,1448,1398,1393,1368,1322,1268,1219,
+1190,1152,1112,1067,1027,993,958,917,884,851,817,778,741,704,662,632,611,572,536,498,
+471,428,403,372,330,296,270,256,229,191,165,138,125,99,72,54,30,14,3,-10,
+-23,-47,-61,-86,-110,-113,-126,-146,-167,-156,-121,-127,-129,-132,-137,-138,-154,-175,-213,-231,
+-260,-292,-333,-364,-378,-390,-406,-421,-431,-436,-446,-462,-475,-485,-489,-497,-511,-524,-545,-564,
+-585,-599,-601,-617,-651,-673,-672,-660,-647,-668,-705,-712,-706,-746,-769,-787,-825,-885,-911,-952,
+-978,-1005,-1024,-1051,-1073,-1094,-1108,-1131,-1154,-1176,-1189,-1209,-1231,-1250,-1258,-1276,-1295,-1297,-1307,-1307,
+-1311,-1314,-1321,-1332,-1330,-1334,-1343,-1345,-1346,-1341,-1337,-1324,-1319,-1311,-1305,-1298,-1287,-1285,-1283,-1281,
+-1275,-1270,-1263,-1260,-1248,-1240,-1229,-1217,-1204,-1198,-1182,-1175,-1167,-1154,-1138,-1122,-1111,-1102,-1101,-1098,
+-1083,-1078,-1074,-1066,-1053,-1048,-1035,-1028,-1023,-1006,-995,-989,-989,-981,-976,-975,-967,-964,-960,-956,
+-957,-945,-944,-933,-923,-925,-918,-911,-905,-894,-883,-873,-869,-867,-849,-851,-841,-836,-818,-815,
+-807,-798,-793,-791,-761,-753,-752,-754,-738,-734,-727,-709,-703,-694,-686,-670,-661,-651,-663,-647,
+-634,-631,-628,-622,-613,-608,-602,-593,-584,-577,-579,-575,-572,-567,-560,-548,-556,-530,-518,-510,
+-505,-508,-494,-487,-486,-472,-456,-451,-450,-434,-420,-409,-401,-395,-379,-369,-359,-353,-355,-335,
+-310,-322,-313,-304,-293,-283,-275,-260,-252,-235,-226,-215,-202,-187,-165,-159,-144,-132,-117,-95,
+-68,-54,-33,-29,-18,0,20,43,61,77,100,113,130,140,150,157,158,162,174,170,
+194,207,210,209,211,233,259,272,267,261,268,276,287,322,342,350,340,345,376,393,
+403,408,430,465,494,522,549,567,586,610,631,651,676,702,730,762,790,813,851,893,
+951,988,1025,1075,1124,1164,1181,1191,1214,1249,1286,1326,1362,1406,1451,1502,1545,1582,1626,1659,
+1697,1721,1721,1693,1632,1529,1369,1214,1329,1686,2235,2684,2925,3056,3229,3455,3632,3692,3635,3594,
+3569,3467,3269,3148,3242,3291,3102,3134,3039,2809,2761,2785,2692,2739,2829,2743,2648,2562,2465,2425,
+2402,2385,2374,2357,2349,2337,2313,2281,2238,2193,2151,2107,2060,2018,1984,1958,1926,1897,1859,1818,
+1777,1737,1700,1661,1625,1590,1546,1492,1425,1354,1285,1214,1142,1079,1033,1007,1004,995,988,962,
+934,920,918,895,866,851,845,823,746,708,682,676,653,636,625,613,542,329,178,124,
+144,201,254,234,158,56,-45,-131,-206,-314,-444,-541,-614,-674,-725,-777,-810,-837,-864,-889,
+-915,-934,-951,-953,-954,-927,-904,-909,-935,-946,-943,-951,-955,-944,-933,-900,-856,-810,-767,-751,
+-765,-786,-808,-822,-824,-829,-790,-685,-540,-526,-510,-492,-463,-432,-415,-390,-354,-300,-238,-196,
+-160,-117,-76,-36,0,42,50,67,71,101,179,217,245,270,245,220,206,145,179,194,
+185,177,192,207,203,213,223,226,240,264,284,306,320,347,382,423,443,466,483,510,
+530,556,576,610,630,650,674,699,720,743,763,781,803,824,841,865,882,903,923,943,
+965,983,1015,1029,1061,1080,1104,1131,1148,1157,1180,1207,1231,1242,1276,1302,1334,1357,1383,1390,
+1405,1416,1441,1460,1478,1476,1433,1427,1439,1446,1446,1439,1447,1462,1466,1480,1489,1486,1482,1491,
+1502,1511,1511,1519,1524,1531,1539,1545,1559,1568,1582,1592,1610,1626,1642,1654,1676,1697,1717,1744,
+1765,1789,1807,1826,1848,1864,1890,1907,1938,1959,2003,2036,2051,2067,2085,2111,2140,2136,2155,2174,
+2199,2236,2270,2322,2374,2420,2472,2470,2479,2499,2471,2308,2299,2322,2342,2358,2372,2381,2390,2406,
+2422,2430,2431,2429,2440,2452,2459,2469,2471,2478,2496,2509,2523,2541,2560,2582,2588,2590,2594,2598,
+2605,2620,2638,2657,2676,2700,2734,2774,2831,2886,2909,2910,2936,3010,3123,3210,3208,3159,3134,3141,
+3140,3141,3169,3212,3237,3250,3251,3261,3257,3240,3212,3208,3211,3175,3156,3152,3160,3120,3072,3024,
+3010,3062,3132,3198,3195,3190,3227,3247,3245,3237,3170,3118,3071,3083,3096,3098,3104,3116,3122,3110,
+3107,3117,3121,3115,3109,3109,3132,3189,3260,3399,3566,3655,3691,3601,3414,3174,3060,2964,2884,2832,
+2793,2704,2645,2592,2562,2503,2377,2201,2059,1954,1878,1841,1844,1852,1862,1842,1815,1807,1825,1832,
+1806,1755,1688,1558,1427,1309,1256,1222,1194,1177,1161,1148,1141,1124,1106,1103,1101,1105,1117,1138,
+1160,1176,1182,1193,1201,1207,1203,1184,1162,1152,1141,1150,1215,1340,1420,1442,1472,1476,1478,1510,
+1515,1484,1493,1474,1477,1492,1504,1502,1491,1474,1458,1437,1411,1362,1295,1241,1164,1134,1105,1076,
+1054,1047,1039,1042,1044,1053,1077,1103,1128,1141,1154,1157,1159,1160,1153,1139,1121,1104,1090,1070,
+1047,1040,1034,1005,979,968,984,964,1001,1000,981,1046,1034,1085,1111,1147,1106,1121,1163,1118,
+1048,1049,1046,1096,1069,1097,1126,1094,1092,1098,1070,1034,994,947,962,938,906,883,855,849,
+831,806,777,752,741,724,714,692,673,656,621,601,568,544,531,483,450,426,399,366,
+340,310,277,250,214,177,150,121,89,44,18,-20,-42,-64,-89,-118,-188,-219,-250,-309,
+-353,-412,-476,-494,-525,-587,-649,-697,-754,-804,-866,-904,-957,-991,-1027,-1069,-1113,-1171,-1231,-1294,
+-1350,-1398,-1427,-1453,-1490,-1527,-1568,-1625,-1682,-1728,-1771,-1807,-1842,-1880,-1911,-1940,-1971,-2002,-2046,-2098,
+-2122,-2165,-2224,-2243,-2264,-2290,-2299,-2316,-2397,-2449,-2482,-2540,-2609,-2689,-2783,-2812,-2827,-2840,-2865,-2924,
+-3020,-3071,-3091,-3125,-3192,-3240,-3255,-3265,-3277,-3286,-3265,-3259,-3300,-3335,-3352,-3365,-3375,-3402,-3435,-3470,
+-3508,-3543,-3578,-3606,-3638,-3667,-3686,-3680,-3629,-3568,-3528,-3544,-3592,-3647,-3718,-3764,-3787,-3797,-3823,-3844,
+-3847,-3848,-3843,-3840,-3834,-3828,-3827,-3832,-3839,-3842,-3837,-3842,-3833,-3829,-3844,-3863,-3852,-3876,-3892,-3889,
+-3881,-3869,-3886,-3875,-3886,-3900,-3905,-3907,-3915,-3929,-3940,-3947,-3951,-3956,-3952,-3940,-3927,-3908,-3874,-3840,
+-3803,-3764,-3727,-3684,-3656,-3628,-3602,-3530,-3448,-3349,-3231,-3068,-2923,-2808,-2728,-2673,-2591,-2584,-2581,-2489,
+-2381,-2363,-2349,-2347,-2302,-2233,-2213,-2195,-2161,-2109,-2050,-2053,-2038,-2023,-2019,-2021,-2022,-2009,-2006,-1998,
+-2007,-1996,-1958,-1882,-1827,-1807,-1756,-1717,-1718,-1704,-1686,-1685,-1679,-1678,-1675,-1659,-1629,-1615,-1612,-1611,
+-1588,-1594,-1614,-1645,-1638,-1625,-1625,-1622,-1623,-1622,-1590,-1552,-1515,-1461,-1410,-1334,-1264,-1198,-1149,-1089,
+-1003,-897,-764,-618,-488,-395,-295,-213,-142,-70,0,76,152,216,265,315,360,392,431,466,
+501,549,600,649,702,746,808,868,925,979,1028,1073,1109,1142,1192,1239,1289,1342,1408,1464,
+1546,1629,1698,1752,1820,1876,1900,1926,1963,2007,2087,2165,2234,2271,2302,2352,2396,2448,2516,2569,
+2610,2645,2682,2739,2796,2833,2858,2923,2995,3034,3043,3053,3071,3092,3126,3175,3240,3297,3369,3432,
+3457,3511,3575,3646,3722,3768,3781,3776,3754,3697,3662,3664,3628,3395,3221,3127,3097,3123,3180,3263,
+3383,3335,3238,3212,3226,3235,3256,3279,3347,3409,3426,3431,3467,3549,3588,3576,3553,3551,3588,3625,
+3684,3712,3754,3784,3813,3842,3863,3886,3898,3895,3881,3876,3878,3859,3810,3800,3818,3814,3854,3898,
+3932,3984,4048,4096,4136,4170,4244,4348,4554,4694,4586,4504,4483,4464,4503,4536,4556,4583,4609,4653,
+4652,4662,4683,4708,4708,4710,4678,4627,4694,4814,4749,4705,4691,4686,4683,4666,4671,4680,4681,4687,
+4692,4684,4672,4667,4689,4661,4669,4673,4672,4659,4652,4646,4644,4656,4677,4673,4692,4783,4844,4814,
+4772,4756,4757,4719,4648,4574,4358,4023,3751,3487,3149,2731,2379,2280,2510,2771,2946,3044,3096,3116,
+3131,3145,3163,3180,3172,3077,2992,2933,2887,2846,2806,2758,2700,2632,2549,2525,2422,2335,2286,2236,
+2192,2145,2093,2042,1975,1917,1868,1814,1765,1718,1675,1630,1576,1523,1457,1408,1392,1372,1330,1277,
+1222,1180,1141,1102,1062,1029,998,957,911,874,835,813,773,739,704,665,623,596,559,530,
+489,461,433,393,358,328,304,275,257,225,195,164,141,131,109,82,63,40,19,1,
+-14,-31,-45,-67,-86,-113,-122,-135,-143,-140,-116,-142,-145,-154,-142,-148,-136,-139,-171,-202,
+-222,-252,-290,-327,-356,-382,-403,-419,-431,-448,-456,-467,-482,-495,-505,-518,-514,-530,-548,-560,
+-578,-586,-595,-599,-610,-632,-663,-693,-706,-711,-711,-712,-725,-735,-747,-745,-695,-804,-863,-909,
+-943,-971,-985,-1018,-1042,-1051,-1070,-1093,-1114,-1143,-1165,-1185,-1199,-1216,-1235,-1253,-1271,-1285,-1293,-1305,
+-1312,-1313,-1313,-1318,-1324,-1329,-1331,-1332,-1335,-1338,-1341,-1343,-1333,-1331,-1326,-1322,-1316,-1303,-1295,-1288,
+-1291,-1280,-1258,-1252,-1243,-1243,-1239,-1225,-1211,-1196,-1186,-1180,-1176,-1172,-1159,-1144,-1133,-1114,-1110,-1100,
+-1089,-1080,-1073,-1068,-1062,-1055,-1047,-1047,-1040,-1028,-1025,-1014,-999,-997,-996,-987,-986,-987,-990,-982,
+-979,-963,-961,-954,-946,-938,-932,-924,-918,-908,-907,-897,-889,-882,-877,-872,-866,-857,-849,-843,
+-833,-822,-821,-818,-814,-789,-772,-776,-773,-768,-754,-749,-741,-727,-719,-699,-689,-692,-688,-668,
+-670,-666,-655,-650,-640,-635,-627,-621,-611,-602,-597,-596,-592,-587,-580,-571,-567,-572,-561,-542,
+-534,-531,-524,-520,-509,-502,-488,-487,-474,-463,-441,-435,-433,-409,-411,-395,-392,-385,-373,-375,
+-354,-327,-332,-322,-314,-308,-299,-289,-277,-268,-252,-243,-228,-213,-204,-192,-175,-163,-152,-134,
+-114,-93,-60,-57,-42,19,-1,1,31,50,69,89,107,122,134,136,129,170,146,155,
+164,179,183,174,173,190,205,224,241,243,251,248,253,275,306,322,316,321,326,364,
+383,391,405,437,475,506,544,550,572,597,617,633,653,674,703,738,771,806,830,863,
+899,950,989,1041,1085,1129,1149,1177,1188,1220,1251,1285,1329,1378,1419,1472,1515,1553,1585,1614,
+1656,1690,1706,1693,1655,1583,1466,1294,1179,1362,1819,2352,2719,2958,3196,3398,3481,3588,3683,3621,
+3510,3463,3350,3265,3130,3295,3356,3094,3114,2974,2780,2595,2502,2526,2627,2742,2653,2584,2504,2429,
+2420,2421,2423,2396,2360,2334,2305,2279,2255,2227,2192,2143,2090,2023,1980,1950,1924,1898,1873,1833,
+1793,1760,1725,1685,1640,1603,1564,1522,1473,1412,1352,1303,1245,1163,1092,1069,1065,1063,1043,1019,
+998,984,960,935,906,882,879,850,799,723,666,632,636,644,641,625,581,471,243,147,
+141,196,258,269,216,134,8,-121,-216,-296,-379,-471,-551,-618,-673,-732,-776,-788,-799,-813,
+-831,-849,-855,-876,-884,-876,-870,-875,-882,-903,-908,-894,-902,-914,-910,-897,-876,-849,-806,-753,
+-746,-765,-776,-776,-774,-768,-760,-750,-679,-586,-515,-493,-462,-415,-379,-362,-349,-316,-258,-206,
+-167,-126,-87,-47,-14,25,75,93,82,40,89,185,224,238,265,264,253,249,233,234,
+243,228,217,213,225,231,238,249,257,270,297,320,323,357,380,406,441,452,475,504,
+532,558,583,613,638,655,684,704,728,747,768,790,816,841,858,877,896,918,941,960,
+984,1007,1024,1051,1064,1088,1106,1123,1146,1176,1203,1228,1250,1266,1292,1307,1326,1350,1370,1389,
+1391,1391,1400,1429,1432,1452,1471,1453,1439,1464,1478,1484,1478,1483,1494,1485,1493,1494,1495,1500,
+1499,1474,1499,1498,1508,1520,1535,1535,1542,1554,1572,1585,1595,1613,1626,1646,1661,1678,1700,1720,
+1748,1773,1796,1811,1829,1852,1871,1894,1923,1937,1959,1993,2020,2051,2086,2107,2120,2136,2141,2160,
+2205,2240,2265,2301,2345,2391,2423,2469,2487,2427,2385,2334,2293,2296,2319,2342,2363,2376,2386,2390,
+2404,2412,2419,2421,2427,2442,2452,2461,2472,2483,2497,2506,2515,2535,2560,2591,2576,2589,2592,2587,
+2593,2610,2625,2644,2659,2676,2700,2729,2762,2809,2854,2883,2891,2919,2987,3084,3177,3211,3200,3173,
+3152,3113,3098,3127,3179,3215,3246,3235,3255,3321,3326,3297,3284,3280,3274,3261,3245,3202,3159,3116,
+3087,3062,3065,3108,3168,3214,3211,3211,3251,3236,3198,3140,3100,3102,3133,3151,3151,3146,3169,3188,
+3179,3170,3175,3174,3151,3149,3162,3173,3232,3326,3508,3680,3708,3712,3627,3583,3370,3183,3069,2981,
+2883,2834,2766,2716,2649,2612,2533,2363,2203,2088,1996,1924,1909,1892,1875,1893,1890,1873,1874,1907,
+1903,1860,1814,1759,1608,1475,1369,1308,1270,1246,1230,1211,1197,1185,1169,1160,1164,1163,1170,1174,
+1187,1211,1226,1232,1236,1244,1256,1261,1252,1248,1244,1241,1302,1380,1468,1540,1553,1583,1584,1568,
+1572,1578,1582,1600,1591,1574,1555,1556,1560,1551,1532,1519,1490,1453,1408,1350,1288,1277,1237,1198,
+1170,1147,1125,1116,1120,1122,1136,1165,1193,1215,1235,1246,1257,1261,1258,1242,1226,1210,1197,1188,
+1165,1148,1129,1102,1084,1077,1055,1077,1079,1109,1081,1091,1150,1143,1191,1227,1241,1184,1207,1257,
+1230,1062,1087,1201,1234,1187,1227,1169,1100,1095,1099,1098,1076,998,976,968,950,927,926,915,
+881,853,837,820,806,800,778,759,744,724,694,666,646,621,605,563,542,519,489,451,
+410,407,351,331,287,263,229,202,171,135,112,93,49,10,-21,-50,-70,-98,-174,-173,
+-225,-295,-351,-359,-421,-455,-513,-576,-630,-686,-733,-789,-844,-872,-909,-949,-1000,-1060,-1112,-1169,
+-1226,-1276,-1310,-1342,-1382,-1424,-1453,-1511,-1569,-1622,-1659,-1702,-1736,-1762,-1798,-1840,-1870,-1899,-1939,-1990,
+-2033,-2062,-2131,-2153,-2168,-2193,-2221,-2205,-2212,-2268,-2340,-2386,-2439,-2502,-2585,-2691,-2746,-2764,-2774,-2795,
+-2839,-2909,-2960,-3006,-3057,-3103,-3171,-3196,-3203,-3215,-3205,-3184,-3192,-3238,-3279,-3303,-3329,-3343,-3368,-3397,
+-3433,-3461,-3483,-3508,-3553,-3593,-3624,-3641,-3653,-3650,-3595,-3536,-3554,-3604,-3664,-3717,-3731,-3764,-3790,-3823,
+-3854,-3863,-3849,-3837,-3841,-3836,-3827,-3825,-3827,-3835,-3840,-3829,-3837,-3846,-3855,-3836,-3836,-3869,-3858,-3896,
+-3918,-3897,-3876,-3867,-3877,-3898,-3908,-3909,-3912,-3918,-3931,-3938,-3943,-3949,-3957,-3952,-3948,-3942,-3927,-3893,
+-3863,-3833,-3797,-3760,-3718,-3674,-3638,-3619,-3608,-3560,-3483,-3367,-3191,-3024,-2887,-2802,-2781,-2744,-2752,-2746,
+-2614,-2477,-2442,-2399,-2390,-2334,-2291,-2259,-2235,-2206,-2169,-2128,-2109,-2093,-2074,-2068,-2069,-2066,-2053,-2064,
+-2036,-2069,-2070,-2032,-1975,-1952,-1918,-1850,-1825,-1830,-1811,-1793,-1783,-1781,-1774,-1736,-1683,-1640,-1638,-1628,
+-1638,-1640,-1657,-1674,-1683,-1672,-1668,-1679,-1681,-1690,-1679,-1645,-1610,-1577,-1519,-1454,-1384,-1318,-1256,-1200,
+-1117,-1017,-901,-762,-620,-516,-432,-341,-259,-190,-124,-54,6,85,162,229,276,327,363,411,
+438,464,493,532,584,634,675,729,799,882,949,1003,1056,1102,1134,1174,1213,1264,1329,1398,
+1471,1541,1618,1683,1742,1811,1858,1877,1900,1937,1994,2057,2129,2190,2235,2272,2310,2350,2397,2455,
+2521,2569,2611,2656,2699,2717,2753,2807,2879,2947,2983,2985,2992,3014,3036,3074,3125,3188,3260,3340,
+3421,3459,3503,3567,3638,3695,3717,3711,3683,3661,3614,3596,3588,3551,3346,3176,3048,3042,3070,3098,
+3159,3214,3213,3163,3144,3156,3179,3194,3231,3308,3389,3420,3408,3450,3603,3570,3527,3503,3500,3554,
+3591,3628,3662,3695,3725,3751,3796,3809,3820,3851,3839,3823,3818,3805,3788,3733,3730,3751,3745,3769,
+3812,3870,3925,3986,4045,4082,4126,4187,4247,4461,4643,4603,4479,4421,4409,4459,4498,4526,4538,4551,
+4588,4609,4632,4663,4670,4658,4675,4646,4590,4655,4736,4701,4682,4669,4644,4673,4627,4622,4631,4635,
+4637,4637,4641,4636,4624,4631,4627,4619,4619,4629,4634,4627,4620,4620,4625,4637,4649,4693,4798,4804,
+4777,4750,4742,4703,4674,4599,4520,4192,3836,3592,3322,2962,2579,2296,2321,2585,2822,2973,3067,3097,
+3119,3128,3130,3147,3138,3183,3064,2957,2891,2844,2805,2765,2718,2662,2600,2511,2443,2388,2320,2264,
+2218,2180,2135,2086,2031,1971,1935,1890,1811,1759,1712,1668,1619,1571,1524,1470,1420,1388,1378,1341,
+1291,1233,1193,1151,1115,1076,1033,990,948,898,868,825,797,762,724,690,657,620,582,560,
+521,490,457,430,395,358,323,298,278,256,227,202,174,152,134,118,94,78,51,26,
+6,-11,-29,-49,-73,-88,-103,-119,-137,-146,-150,-138,-157,-156,-164,-154,-160,-149,-153,-161,
+-170,-198,-229,-276,-310,-353,-386,-411,-422,-448,-466,-481,-491,-502,-516,-530,-538,-548,-560,-572,
+-586,-596,-609,-616,-618,-617,-633,-651,-687,-706,-711,-734,-744,-747,-760,-771,-780,-791,-833,-865,
+-898,-921,-945,-974,-991,-1013,-1030,-1056,-1071,-1096,-1127,-1149,-1170,-1187,-1199,-1214,-1225,-1240,-1256,-1271,
+-1282,-1294,-1300,-1307,-1317,-1324,-1331,-1329,-1327,-1329,-1329,-1327,-1332,-1329,-1329,-1327,-1329,-1321,-1308,-1299,
+-1293,-1287,-1269,-1250,-1240,-1238,-1231,-1223,-1212,-1200,-1187,-1181,-1177,-1168,-1171,-1164,-1153,-1143,-1125,-1120,
+-1102,-1095,-1092,-1079,-1070,-1067,-1056,-1048,-1049,-1047,-1040,-1037,-1028,-1019,-1011,-1013,-1005,-999,-1003,-1003,
+-998,-992,-988,-984,-957,-953,-937,-936,-926,-923,-911,-912,-909,-907,-903,-894,-884,-878,-871,-865,
+-858,-848,-843,-834,-832,-827,-816,-801,-791,-773,-780,-765,-769,-753,-747,-737,-725,-718,-710,-703,
+-699,-691,-687,-681,-674,-672,-659,-656,-654,-645,-633,-629,-616,-605,-601,-602,-596,-585,-582,-583,
+-575,-573,-558,-549,-533,-527,-519,-531,-480,-495,-487,-473,-457,-443,-433,-429,-412,-409,-404,-389,
+-378,-371,-367,-353,-343,-333,-321,-312,-306,-300,-288,-276,-263,-249,-238,-230,-217,-203,-190,-170,
+-151,-130,-109,-88,-72,-59,-21,-9,-3,28,49,65,75,96,109,115,116,108,123,129,
+143,155,160,162,161,159,162,177,183,203,213,219,232,244,272,287,300,283,309,320,
+359,379,383,406,445,481,509,531,552,573,593,612,630,650,674,705,751,786,828,847,
+880,917,948,989,1042,1082,1107,1124,1151,1181,1218,1254,1291,1335,1376,1434,1480,1522,1558,1581,
+1611,1648,1678,1685,1665,1617,1532,1405,1229,1166,1423,1914,2374,2712,3024,3363,3693,3768,3781,3699,
+3575,3470,3404,3187,3122,3062,3151,3212,2984,2924,2815,2560,2412,2392,2444,2512,2589,2558,2528,2460,
+2424,2435,2461,2481,2450,2384,2329,2277,2239,2227,2216,2164,2113,2073,2004,1953,1925,1899,1873,1846,
+1815,1781,1751,1719,1681,1631,1586,1539,1492,1454,1405,1354,1312,1260,1195,1135,1100,1080,1080,1057,
+1036,1023,1001,983,952,912,888,862,829,755,682,627,625,602,597,617,613,547,371,222,
+174,192,247,295,269,197,105,-28,-163,-272,-354,-416,-483,-554,-617,-673,-735,-765,-761,-766,
+-783,-805,-826,-834,-855,-871,-860,-859,-873,-886,-899,-921,-912,-917,-920,-910,-908,-908,-881,-832,
+-780,-762,-759,-740,-734,-727,-716,-699,-687,-654,-586,-532,-471,-419,-361,-322,-301,-281,-240,-189,
+-147,-119,-82,-84,-32,-9,14,55,77,71,61,104,181,226,221,227,244,250,261,280,
+295,285,280,280,278,286,283,286,298,302,309,334,345,363,392,402,432,458,495,513,
+539,562,591,612,638,666,688,711,743,772,794,815,836,847,870,893,919,942,958,974,
+989,1018,1043,1054,1078,1104,1127,1149,1173,1199,1219,1237,1250,1264,1281,1293,1307,1320,1339,1355,
+1373,1391,1410,1414,1447,1485,1489,1488,1498,1501,1493,1497,1493,1493,1495,1499,1494,1492,1489,1493,
+1493,1498,1513,1510,1500,1509,1523,1532,1533,1547,1564,1575,1588,1599,1618,1625,1644,1661,1674,1696,
+1719,1748,1773,1797,1820,1844,1864,1887,1892,1902,1922,1957,1979,2007,2031,2058,2094,2106,2141,2159,
+2188,2217,2243,2264,2296,2332,2361,2432,2446,2457,2427,2407,2306,2279,2286,2306,2335,2357,2373,2378,
+2385,2396,2406,2410,2416,2424,2437,2455,2470,2477,2486,2501,2515,2535,2556,2572,2583,2590,2603,2595,
+2595,2602,2616,2627,2639,2653,2667,2690,2714,2743,2784,2831,2868,2886,2907,2970,3080,3166,3207,3214,
+3196,3154,3095,3073,3094,3138,3185,3224,3231,3246,3326,3384,3385,3380,3369,3352,3340,3312,3261,3216,
+3190,3160,3134,3123,3133,3176,3209,3229,3229,3237,3246,3203,3171,3165,3170,3191,3189,3178,3183,3202,
+3230,3247,3253,3255,3253,3226,3211,3220,3231,3315,3445,3618,3711,3755,3663,3658,3605,3382,3246,3122,
+3004,2913,2882,2815,2763,2724,2647,2507,2347,2214,2110,2040,1999,1977,1958,1952,1958,1949,1940,1941,
+1974,1964,1919,1875,1808,1657,1534,1424,1362,1323,1302,1285,1265,1253,1232,1216,1214,1226,1225,1233,
+1240,1246,1267,1282,1289,1289,1299,1323,1349,1359,1362,1353,1361,1423,1510,1567,1621,1685,1685,1678,
+1690,1679,1737,1745,1689,1677,1673,1648,1629,1615,1604,1579,1550,1525,1495,1441,1399,1381,1367,1330,
+1287,1266,1232,1202,1192,1198,1208,1224,1247,1262,1296,1319,1336,1353,1353,1343,1326,1325,1324,1290,
+1291,1277,1247,1230,1205,1187,1172,1163,1197,1190,1202,1176,1228,1239,1271,1327,1332,1339,1289,1322,
+1356,1332,1107,1211,1359,1311,1246,1266,1235,1150,1122,1126,1126,1078,1004,993,1003,990,985,962,
+936,922,905,889,876,869,858,836,807,795,770,744,725,699,664,636,614,597,561,533,
+477,478,444,386,381,344,317,281,252,225,192,170,123,83,57,27,2,-24,-45,-88,
+-131,-176,-224,-233,-296,-352,-402,-455,-500,-551,-608,-654,-701,-748,-804,-846,-891,-938,-1005,-1062,
+-1114,-1152,-1194,-1221,-1250,-1302,-1331,-1387,-1452,-1506,-1548,-1591,-1632,-1672,-1707,-1735,-1766,-1794,-1836,-1881,
+-1936,-1957,-2013,-2074,-2097,-2100,-2134,-2154,-2146,-2168,-2151,-2192,-2267,-2337,-2381,-2446,-2554,-2627,-2654,-2673,
+-2693,-2740,-2800,-2850,-2928,-2990,-3023,-3094,-3140,-3149,-3143,-3126,-3121,-3142,-3179,-3224,-3247,-3270,-3289,-3308,
+-3340,-3376,-3408,-3431,-3456,-3509,-3554,-3583,-3597,-3607,-3613,-3597,-3545,-3581,-3616,-3675,-3721,-3743,-3770,-3788,
+-3812,-3839,-3848,-3837,-3824,-3825,-3833,-3824,-3827,-3830,-3838,-3847,-3853,-3854,-3859,-3811,-3839,-3870,-3881,-3876,
+-3845,-3891,-3925,-3895,-3885,-3882,-3902,-3911,-3919,-3924,-3929,-3939,-3945,-3949,-3952,-3959,-3954,-3953,-3946,-3931,
+-3903,-3885,-3851,-3817,-3782,-3737,-3695,-3657,-3625,-3600,-3590,-3551,-3462,-3302,-3114,-2972,-2825,-2825,-2826,-2845,
+-2863,-2773,-2597,-2528,-2471,-2436,-2404,-2350,-2287,-2276,-2262,-2237,-2200,-2176,-2147,-2125,-2104,-2106,-2114,-2114,
+-2129,-2125,-2130,-2138,-2127,-2091,-2036,-1989,-1951,-1918,-1915,-1907,-1890,-1869,-1881,-1870,-1806,-1726,-1666,-1634,
+-1631,-1676,-1698,-1718,-1725,-1698,-1664,-1674,-1692,-1699,-1721,-1724,-1704,-1665,-1629,-1574,-1512,-1444,-1381,-1329,
+-1257,-1158,-1048,-926,-795,-663,-571,-472,-386,-313,-240,-188,-154,-92,-21,39,103,145,197,261,
+367,423,443,462,486,528,588,639,673,733,814,902,969,1036,1092,1132,1158,1186,1227,1285,
+1372,1450,1519,1587,1664,1733,1799,1827,1851,1884,1920,1972,2028,2091,2150,2198,2238,2281,2313,2351,
+2417,2471,2513,2557,2594,2636,2686,2723,2773,2840,2897,2927,2929,2935,2952,2979,3020,3082,3149,3219,
+3304,3390,3433,3494,3555,3635,3691,3714,3674,3613,3577,3540,3531,3518,3460,3291,3102,2997,3010,3024,
+3054,3066,3079,3076,3092,3084,3095,3113,3141,3225,3309,3360,3388,3353,3387,3552,3535,3456,3438,3449,
+3495,3542,3575,3603,3639,3667,3700,3732,3756,3770,3778,3773,3757,3744,3731,3711,3672,3677,3699,3696,
+3706,3761,3821,3878,3930,3982,4033,4076,4122,4190,4374,4526,4517,4455,4396,4390,4433,4465,4483,4458,
+4508,4530,4560,4583,4604,4630,4625,4657,4634,4570,4623,4691,4657,4634,4639,4590,4574,4572,4579,4585,
+4592,4596,4595,4599,4599,4600,4596,4592,4593,4589,4598,4614,4612,4619,4618,4604,4626,4643,4700,4791,
+4785,4735,4721,4707,4661,4611,4541,4362,3971,3650,3405,3120,2753,2425,2231,2375,2647,2865,2998,3073,
+3103,3122,3123,3104,3101,3154,3152,3022,2915,2848,2803,2763,2724,2676,2621,2560,2472,2416,2366,2305,
+2242,2195,2161,2114,2069,2015,1962,1927,1872,1803,1752,1704,1655,1603,1564,1522,1474,1429,1417,1397,
+1351,1300,1240,1205,1161,1122,1081,1034,985,939,897,861,822,789,755,718,679,643,609,569,
+536,506,487,463,430,391,352,332,291,271,250,245,206,185,163,141,125,106,81,55,
+31,16,1,-20,-50,-79,-85,-91,-101,-115,-128,-144,-175,-172,-150,-154,-149,-148,-146,-129,
+-123,-150,-180,-199,-244,-299,-339,-374,-413,-429,-451,-467,-487,-489,-510,-527,-542,-549,-556,-573,
+-592,-613,-621,-630,-647,-651,-652,-657,-668,-690,-712,-730,-739,-749,-759,-772,-789,-809,-828,-854,
+-873,-893,-914,-927,-947,-967,-992,-1016,-1017,-1052,-1079,-1099,-1125,-1143,-1163,-1181,-1192,-1205,-1219,-1229,
+-1243,-1253,-1264,-1278,-1289,-1297,-1310,-1321,-1325,-1331,-1335,-1334,-1333,-1329,-1327,-1323,-1318,-1311,-1306,-1302,
+-1288,-1283,-1280,-1280,-1267,-1238,-1228,-1218,-1215,-1209,-1196,-1186,-1182,-1180,-1175,-1177,-1170,-1158,-1150,-1143,
+-1134,-1121,-1111,-1103,-1091,-1082,-1075,-1069,-1066,-1065,-1063,-1059,-1050,-1047,-1043,-1037,-1033,-1026,-1021,-1020,
+-1017,-1017,-1001,-985,-984,-975,-972,-963,-952,-949,-945,-942,-937,-937,-923,-917,-911,-903,-894,-886,
+-879,-872,-864,-860,-849,-848,-845,-835,-821,-823,-810,-786,-784,-786,-775,-763,-756,-746,-738,-735,
+-723,-719,-711,-702,-698,-695,-690,-682,-673,-668,-661,-656,-650,-640,-630,-622,-616,-613,-601,-594,
+-587,-524,-588,-571,-560,-549,-538,-536,-533,-528,-512,-489,-475,-462,-453,-445,-439,-431,-421,-408,
+-393,-384,-380,-375,-369,-363,-353,-346,-328,-317,-307,-290,-290,-278,-272,-266,-255,-242,-232,-211,
+-189,-169,-138,-120,-102,-84,-62,-44,-26,3,24,42,59,64,69,87,93,101,106,117,
+130,137,139,145,137,142,145,150,161,164,172,182,194,216,243,265,271,266,269,293,
+318,348,367,378,403,445,479,500,525,550,565,582,602,627,649,676,716,758,796,831,
+866,891,915,938,982,1032,1067,1077,1095,1118,1156,1196,1245,1289,1332,1382,1431,1476,1513,1540,
+1565,1604,1638,1663,1661,1634,1573,1483,1340,1174,1157,1440,1906,2350,2748,3101,3554,4042,4043,3887,
+3685,3559,3401,3387,3124,2934,2924,2970,3106,2937,2818,2727,2446,2342,2345,2411,2453,2485,2477,2457,
+2439,2436,2464,2517,2533,2465,2385,2324,2270,2221,2216,2208,2162,2103,2053,1996,1946,1914,1881,1851,
+1826,1796,1771,1747,1717,1677,1622,1569,1522,1473,1446,1408,1364,1317,1270,1224,1173,1136,1100,1083,
+1053,1041,1015,1006,991,943,916,905,847,781,708,623,576,547,517,542,507,526,457,314,
+239,221,245,298,312,264,192,94,-39,-177,-294,-378,-433,-489,-548,-617,-681,-729,-744,-736,
+-743,-757,-785,-812,-822,-844,-860,-857,-849,-858,-885,-911,-935,-943,-954,-956,-936,-931,-916,-878,
+-819,-808,-769,-730,-710,-697,-682,-666,-654,-633,-591,-533,-490,-417,-347,-301,-265,-250,-209,-159,
+-102,-66,-56,-49,-51,-28,6,21,34,64,81,99,136,180,196,221,250,261,273,302,
+322,330,318,325,327,332,342,345,349,357,358,366,393,405,401,417,432,451,480,520,
+539,560,610,638,661,689,713,741,762,782,796,817,837,849,884,916,919,946,958,981,
+1004,1030,1055,1078,1095,1112,1133,1157,1175,1196,1211,1222,1232,1244,1260,1268,1292,1311,1336,1355,
+1389,1425,1444,1489,1456,1524,1515,1490,1469,1485,1503,1503,1506,1493,1493,1491,1490,1492,1485,1482,
+1492,1489,1495,1508,1510,1515,1504,1522,1528,1540,1552,1565,1576,1591,1605,1619,1627,1643,1660,1676,
+1697,1721,1747,1774,1799,1828,1836,1854,1865,1898,1911,1932,1952,1974,2005,2039,2057,2092,2130,2159,
+2148,2200,2241,2262,2271,2269,2288,2323,2373,2416,2400,2455,2432,2386,2301,2276,2289,2322,2344,2357,
+2359,2381,2376,2383,2389,2398,2417,2435,2454,2463,2473,2490,2507,2525,2537,2555,2571,2584,2593,2598,
+2596,2597,2606,2613,2616,2625,2637,2653,2678,2701,2733,2778,2833,2876,2907,2926,2976,3083,3160,3200,
+3206,3191,3162,3119,3091,3091,3111,3155,3202,3222,3232,3311,3387,3422,3439,3427,3399,3382,3339,3300,
+3284,3268,3229,3201,3189,3196,3210,3225,3252,3286,3301,3289,3258,3229,3240,3240,3238,3220,3203,3208,
+3236,3278,3321,3376,3355,3322,3296,3268,3273,3328,3414,3533,3651,3651,3705,3617,3631,3493,3336,3216,
+3110,3031,2950,2904,2843,2808,2737,2617,2457,2323,2228,2146,2090,2056,2037,2035,2044,2035,2013,1995,
+2000,2015,1996,1969,1901,1826,1718,1610,1490,1416,1374,1356,1344,1327,1314,1293,1276,1280,1287,1292,
+1299,1305,1316,1331,1341,1349,1355,1376,1418,1446,1458,1463,1456,1463,1531,1601,1686,1760,1797,1809,
+1832,1830,1826,1811,1807,1761,1762,1743,1717,1693,1683,1666,1635,1601,1563,1523,1478,1446,1430,1415,
+1387,1370,1348,1317,1289,1279,1279,1291,1310,1330,1347,1372,1401,1419,1443,1429,1429,1431,1428,1402,
+1398,1378,1356,1340,1331,1305,1281,1294,1280,1284,1284,1256,1270,1347,1340,1399,1452,1449,1492,1402,
+1424,1420,1407,1280,1357,1396,1347,1256,1286,1286,1202,1160,1174,1143,1057,1035,1037,1038,1009,999,
+988,981,970,963,955,941,923,906,888,864,842,820,795,775,733,711,699,665,631,600,
+572,526,524,474,454,422,404,362,334,303,271,247,188,168,149,127,87,43,15,1,
+-7,-65,-109,-119,-176,-236,-290,-333,-378,-424,-480,-523,-561,-628,-698,-721,-775,-822,-883,-938,
+-991,-1035,-1081,-1106,-1128,-1172,-1208,-1257,-1323,-1386,-1443,-1485,-1528,-1572,-1607,-1636,-1659,-1687,-1726,-1776,
+-1821,-1861,-1919,-1941,-1976,-2027,-2046,-2068,-2076,-2040,-2073,-2075,-2103,-2181,-2236,-2282,-2354,-2424,-2499,-2541,
+-2577,-2618,-2672,-2740,-2785,-2859,-2915,-2956,-3011,-3061,-3068,-3056,-3062,-3081,-3112,-3139,-3178,-3203,-3216,-3232,
+-3255,-3290,-3325,-3352,-3376,-3409,-3461,-3518,-3528,-3557,-3565,-3569,-3567,-3552,-3579,-3617,-3678,-3712,-3731,-3749,
+-3770,-3795,-3819,-3825,-3818,-3811,-3814,-3827,-3828,-3825,-3831,-3842,-3854,-3866,-3880,-3891,-3879,-3879,-3884,-3901,
+-3911,-3858,-3806,-3932,-3914,-3901,-3887,-3899,-3910,-3931,-3934,-3945,-3958,-3964,-3961,-3963,-3967,-3963,-3962,-3955,
+-3934,-3912,-3889,-3865,-3827,-3790,-3745,-3709,-3676,-3644,-3615,-3582,-3581,-3530,-3438,-3289,-3111,-2913,-2818,-2845,
+-2879,-2938,-2906,-2731,-2627,-2540,-2483,-2446,-2396,-2353,-2340,-2333,-2310,-2273,-2231,-2210,-2187,-2123,-2153,-2176,
+-2178,-2188,-2173,-2180,-2171,-2179,-2169,-2130,-2076,-2025,-1990,-1981,-1977,-1979,-1986,-1988,-1957,-1889,-1792,-1705,
+-1655,-1709,-1740,-1759,-1773,-1752,-1703,-1686,-1691,-1700,-1710,-1749,-1775,-1769,-1729,-1673,-1606,-1546,-1489,-1444,
+-1396,-1314,-1213,-1096,-960,-817,-720,-621,-525,-433,-360,-311,-255,-197,-141,-61,-8,41,77,104,
+156,242,330,365,386,417,480,546,604,656,703,766,834,915,996,1074,1139,1180,1197,1213,
+1261,1341,1422,1485,1550,1634,1716,1760,1778,1808,1846,1890,1944,1998,2044,2072,2117,2176,2220,2255,
+2296,2344,2374,2410,2484,2561,2610,2632,2681,2736,2794,2837,2862,2867,2870,2888,2918,2966,3038,3126,
+3195,3288,3353,3402,3462,3527,3620,3673,3658,3590,3561,3521,3483,3476,3437,3327,3128,2977,2939,2956,
+2976,2988,2979,2988,3017,3102,3057,3036,3049,3124,3229,3287,3295,3320,3293,3312,3397,3413,3374,3372,
+3402,3433,3476,3524,3564,3585,3626,3651,3672,3697,3701,3711,3706,3693,3672,3656,3641,3621,3633,3653,
+3658,3671,3724,3773,3838,3876,3916,3971,4020,4072,4121,4264,4393,4377,4324,4327,4358,4389,4393,4408,
+4491,4487,4474,4503,4526,4540,4571,4584,4643,4660,4550,4600,4668,4632,4596,4594,4573,4538,4525,4538,
+4562,4571,4568,4564,4564,4562,4567,4573,4568,4572,4573,4575,4603,4617,4585,4583,4595,4608,4667,4760,
+4800,4763,4721,4707,4689,4627,4530,4434,4153,3780,3470,3203,2889,2564,2277,2200,2421,2700,2901,3020,
+3086,3112,3125,3107,3078,3071,3121,3102,2979,2886,2814,2764,2720,2684,2640,2583,2519,2443,2390,2342,
+2284,2220,2171,2132,2095,2049,1996,1945,1910,1892,1799,1730,1678,1635,1589,1555,1515,1469,1413,1384,
+1396,1346,1292,1244,1200,1150,1117,1080,1037,988,940,902,855,822,788,751,718,684,647,607,
+569,526,492,473,457,430,394,359,319,288,269,242,247,207,186,165,144,126,104,82,
+58,39,21,3,-17,-43,-70,-79,-80,-86,-104,-126,-141,-143,-149,-144,-166,-161,-129,-102,
+-125,-136,-154,-170,-200,-239,-280,-320,-360,-387,-424,-434,-459,-481,-501,-521,-531,-546,-562,-584,
+-592,-608,-627,-643,-642,-667,-686,-692,-691,-698,-704,-718,-735,-749,-765,-778,-786,-799,-816,-846,
+-866,-881,-893,-888,-917,-935,-951,-976,-999,-1026,-1046,-1061,-1085,-1102,-1117,-1133,-1147,-1163,-1178,-1195,
+-1206,-1219,-1232,-1242,-1255,-1267,-1278,-1290,-1300,-1310,-1313,-1319,-1319,-1326,-1325,-1327,-1324,-1322,-1310,-1306,
+-1298,-1281,-1277,-1274,-1274,-1264,-1237,-1222,-1216,-1208,-1210,-1199,-1192,-1180,-1177,-1172,-1167,-1164,-1156,-1145,
+-1136,-1133,-1122,-1126,-1120,-1107,-1092,-1085,-1085,-1084,-1078,-1075,-1070,-1061,-1061,-1053,-1049,-1043,-1039,-1033,
+-1025,-1024,-1017,-1012,-1007,-1001,-995,-989,-958,-949,-925,-933,-947,-953,-949,-941,-935,-928,-919,-908,
+-897,-892,-884,-882,-876,-865,-861,-855,-850,-839,-831,-820,-808,-802,-794,-792,-783,-776,-770,-761,
+-758,-743,-736,-729,-721,-717,-711,-705,-700,-697,-687,-687,-680,-665,-663,-656,-639,-635,-625,-616,
+-606,-616,-611,-596,-578,-574,-560,-548,-544,-541,-533,-523,-501,-489,-482,-471,-465,-457,-450,-432,
+-425,-410,-401,-382,-388,-384,-372,-368,-357,-338,-333,-328,-311,-305,-291,-283,-274,-267,-256,-250,
+-225,-199,-184,-153,-138,-131,-111,-78,-51,-33,0,17,34,51,54,61,69,76,83,100,
+115,128,125,129,126,121,125,134,138,150,157,157,168,186,218,242,249,252,242,257,
+274,312,336,348,367,401,438,465,486,516,539,551,568,593,620,643,675,716,755,791,
+826,855,881,903,932,974,1012,1049,1053,1061,1086,1127,1173,1222,1273,1321,1373,1419,1459,1491,
+1509,1548,1587,1618,1633,1622,1588,1524,1432,1281,1116,1152,1459,1867,2307,2738,3115,3476,3750,3852,
+3780,3657,3570,3398,3395,3230,2861,2812,2941,3097,3065,2811,2675,2420,2328,2349,2391,2405,2401,2411,
+2433,2441,2456,2514,2580,2542,2425,2344,2294,2252,2220,2203,2188,2144,2083,2023,1972,1931,1900,1863,
+1830,1800,1776,1759,1740,1714,1660,1603,1551,1513,1466,1442,1416,1375,1338,1305,1271,1225,1185,1135,
+1085,1062,1054,1029,988,954,939,902,873,810,741,673,605,559,523,493,465,437,411,369,
+285,256,262,296,316,297,252,178,85,-36,-174,-289,-379,-439,-493,-548,-616,-684,-720,-727,
+-719,-720,-734,-764,-790,-801,-819,-840,-841,-834,-841,-871,-908,-935,-953,-963,-936,-915,-921,-888,
+-856,-811,-813,-769,-712,-690,-667,-643,-622,-604,-570,-522,-456,-389,-238,-197,-220,-211,-190,-143,
+-67,-11,22,19,-13,-18,1,23,47,55,77,117,143,175,185,219,261,289,292,302,
+314,339,377,376,374,368,374,380,383,393,400,425,438,443,444,454,456,470,498,524,
+543,580,612,639,673,701,722,748,772,794,820,840,865,886,903,926,941,948,973,993,
+1016,1034,1056,1074,1094,1110,1125,1137,1150,1168,1187,1204,1229,1251,1266,1290,1308,1320,1375,1395,
+1432,1464,1477,1481,1490,1490,1510,1524,1535,1527,1522,1521,1516,1505,1510,1503,1503,1497,1498,1494,
+1490,1496,1494,1496,1510,1508,1514,1527,1526,1532,1541,1553,1559,1573,1583,1598,1614,1624,1641,1661,
+1675,1695,1721,1745,1776,1808,1818,1830,1861,1878,1898,1912,1935,1966,1983,2018,2045,2057,2084,2100,
+2148,2164,2227,2279,2303,2294,2259,2288,2310,2321,2367,2435,2541,2547,2527,2430,2274,2267,2299,2335,
+2343,2353,2362,2356,2357,2365,2380,2399,2415,2432,2455,2474,2490,2501,2520,2538,2552,2571,2586,2595,
+2598,2598,2603,2605,2602,2600,2608,2621,2637,2666,2693,2725,2768,2819,2866,2897,2916,2961,3042,3130,
+3178,3182,3172,3147,3121,3104,3085,3098,3133,3167,3196,3192,3275,3357,3411,3453,3450,3429,3406,3368,
+3338,3331,3313,3278,3261,3256,3261,3273,3272,3282,3293,3331,3332,3299,3275,3279,3274,3268,3261,3234,
+3222,3253,3322,3427,3519,3474,3371,3325,3307,3337,3392,3461,3588,3598,3587,3576,3540,3510,3408,3296,
+3167,3094,2989,2969,2921,2836,2778,2704,2572,2411,2286,2221,2168,2140,2120,2116,2120,2113,2089,2066,
+2034,2041,2059,2037,2007,1958,1882,1777,1677,1556,1465,1426,1409,1389,1374,1371,1356,1344,1345,1352,
+1364,1368,1370,1379,1392,1402,1413,1428,1459,1498,1523,1541,1552,1553,1559,1630,1738,1831,1899,1923,
+1912,1944,1933,1928,1921,1960,1866,1823,1805,1787,1760,1734,1714,1668,1629,1583,1543,1512,1494,1481,
+1470,1468,1441,1417,1402,1394,1366,1372,1377,1388,1406,1431,1457,1481,1495,1498,1506,1512,1514,1505,
+1503,1486,1473,1452,1430,1418,1415,1387,1401,1417,1412,1353,1403,1402,1460,1423,1486,1547,1552,1540,
+1503,1504,1533,1435,1354,1428,1412,1389,1291,1305,1284,1231,1214,1171,1123,1099,1086,1083,1067,1052,
+1051,1047,1042,1031,1019,1007,988,976,956,933,917,896,879,846,814,788,773,745,707,682,
+648,612,595,560,531,500,480,443,419,385,351,330,295,272,249,197,156,134,104,92,
+83,25,-32,-48,-73,-122,-170,-216,-269,-301,-331,-388,-445,-502,-568,-597,-653,-710,-766,-817,
+-864,-904,-959,-993,-1023,-1064,-1100,-1141,-1197,-1254,-1310,-1363,-1416,-1459,-1496,-1525,-1553,-1580,-1611,-1661,
+-1717,-1757,-1773,-1844,-1840,-1901,-1947,-1961,-1968,-2003,-2036,-2023,-2033,-2065,-2126,-2172,-2206,-2249,-2316,-2399,
+-2452,-2511,-2560,-2602,-2655,-2726,-2802,-2861,-2906,-2939,-2951,-2964,-2985,-3013,-3043,-3068,-3089,-3115,-3148,-3160,
+-3170,-3190,-3234,-3274,-3309,-3339,-3370,-3433,-3483,-3504,-3518,-3525,-3539,-3549,-3560,-3574,-3606,-3643,-3654,-3680,
+-3713,-3751,-3778,-3788,-3790,-3798,-3800,-3808,-3810,-3784,-3800,-3824,-3843,-3871,-3892,-3896,-3900,-3880,-3879,-3887,
+-3934,-3940,-3876,-3875,-3948,-3933,-3913,-3897,-3908,-3924,-3939,-3948,-3967,-3980,-3985,-3982,-3982,-3981,-3977,-3970,
+-3956,-3939,-3914,-3895,-3871,-3840,-3801,-3761,-3730,-3700,-3674,-3639,-3618,-3603,-3582,-3535,-3437,-3292,-3076,-2898,
+-2870,-2896,-2967,-3003,-2901,-2718,-2614,-2535,-2472,-2433,-2398,-2389,-2379,-2364,-2332,-2292,-2267,-2238,-2187,-2200,
+-2230,-2222,-2231,-2217,-2212,-2219,-2206,-2201,-2175,-2149,-2099,-2083,-2049,-2061,-2057,-2087,-2090,-2039,-1949,-1812,
+-1760,-1766,-1798,-1812,-1821,-1816,-1774,-1753,-1740,-1743,-1737,-1752,-1803,-1836,-1829,-1781,-1720,-1653,-1594,-1533,
+-1488,-1441,-1364,-1266,-1146,-1013,-862,-750,-679,-569,-489,-430,-366,-304,-267,-209,-125,-83,-59,-35,
+12,70,143,212,266,312,353,429,512,574,632,681,732,794,857,957,1059,1150,1223,1237,
+1228,1262,1311,1377,1450,1510,1581,1667,1711,1728,1759,1798,1846,1901,1955,1996,2027,2061,2105,2141,
+2177,2229,2277,2312,2359,2437,2497,2536,2568,2618,2682,2734,2768,2792,2807,2801,2822,2856,2910,2986,
+3096,3189,3273,3349,3377,3435,3511,3595,3644,3635,3568,3547,3490,3442,3390,3319,3140,2937,2853,2872,
+2898,2910,2902,2908,2926,2952,2978,2976,2977,3020,3089,3171,3249,3239,3222,3194,3228,3381,3338,3304,
+3322,3371,3404,3445,3483,3525,3547,3570,3594,3619,3629,3640,3642,3646,3631,3627,3604,3588,3567,3584,
+3601,3608,3624,3670,3716,3778,3818,3850,3890,3942,4017,4101,4208,4273,4226,4209,4231,4263,4314,4334,
+4349,4379,4404,4420,4466,4487,4525,4512,4543,4567,4559,4509,4590,4631,4599,4560,4523,4522,4527,4479,
+4493,4520,4516,4535,4529,4524,4521,4527,4536,4535,4534,4538,4550,4551,4554,4559,4571,4584,4590,4666,
+4746,4771,4738,4705,4671,4658,4618,4496,4351,3985,3626,3320,2993,2643,2340,2155,2233,2506,2760,2936,
+3033,3088,3112,3110,3085,3060,3060,3105,3097,2981,2869,2780,2718,2671,2632,2593,2539,2469,2411,2358,
+2316,2256,2198,2149,2109,2073,2027,1972,1923,1870,1849,1775,1709,1657,1608,1567,1537,1498,1454,1397,
+1349,1380,1338,1287,1238,1185,1149,1109,1073,1036,995,948,908,877,840,794,753,714,685,648,
+610,565,524,517,463,433,412,390,361,322,288,269,239,212,194,181,162,141,123,102,
+88,64,47,31,7,-9,-28,-51,-60,-64,-75,-93,-121,-149,-162,-165,-159,-169,-153,-120,
+-121,-135,-146,-150,-170,-198,-234,-271,-312,-348,-379,-397,-434,-450,-477,-505,-528,-544,-562,-580,
+-602,-612,-628,-648,-668,-679,-691,-713,-723,-722,-726,-733,-739,-749,-761,-777,-802,-816,-814,-821,
+-849,-868,-873,-887,-905,-914,-923,-950,-971,-991,-1013,-1032,-1047,-1060,-1075,-1097,-1108,-1120,-1138,-1154,
+-1173,-1186,-1201,-1213,-1228,-1245,-1258,-1272,-1284,-1295,-1304,-1307,-1306,-1306,-1309,-1314,-1319,-1320,-1320,-1312,
+-1310,-1309,-1294,-1280,-1275,-1267,-1257,-1250,-1225,-1214,-1205,-1198,-1195,-1187,-1177,-1172,-1165,-1153,-1150,-1147,
+-1141,-1130,-1123,-1113,-1115,-1110,-1102,-1088,-1081,-1078,-1069,-1068,-1061,-1063,-1055,-1059,-1054,-1043,-1043,-1045,
+-1040,-1033,-1031,-1024,-1021,-1011,-1003,-1006,-996,-965,-975,-981,-971,-964,-960,-953,-945,-938,-936,-926,
+-910,-902,-903,-895,-891,-885,-877,-872,-868,-860,-853,-843,-831,-825,-819,-814,-806,-802,-797,-793,
+-781,-780,-765,-757,-752,-747,-739,-731,-723,-718,-715,-713,-703,-700,-694,-686,-679,-666,-656,-643,
+-633,-624,-615,-619,-605,-596,-588,-573,-556,-554,-552,-550,-541,-523,-510,-501,-499,-492,-482,-470,
+-453,-443,-432,-420,-405,-405,-402,-392,-383,-370,-363,-355,-344,-336,-323,-312,-301,-290,-283,-261,
+-249,-242,-218,-194,-167,-158,-154,-134,-101,-79,-51,-22,9,22,40,57,58,61,65,70,
+84,100,108,104,104,107,112,110,117,134,134,145,155,178,192,216,225,229,227,230,
+238,268,297,329,331,356,393,424,446,481,500,520,535,553,582,607,632,674,712,748,
+783,814,844,863,885,918,969,989,1016,1035,1046,1067,1113,1164,1220,1268,1310,1355,1400,1436,
+1456,1489,1532,1568,1587,1598,1581,1543,1489,1393,1239,1079,1179,1476,1906,2357,2719,3025,3268,3584,
+3647,3633,3668,3482,3209,3214,3057,2760,2635,2902,3048,3033,2828,2599,2456,2374,2380,2394,2356,2338,
+2364,2424,2453,2505,2595,2574,2446,2345,2294,2251,2211,2191,2171,2144,2097,2042,1992,1942,1899,1864,
+1833,1810,1787,1769,1753,1732,1707,1658,1600,1549,1512,1477,1451,1428,1395,1363,1339,1308,1263,1226,
+1185,1138,1122,1113,1073,1016,972,974,941,899,836,766,696,640,594,550,508,470,424,377,
+330,297,284,302,338,326,282,224,156,77,-37,-174,-281,-376,-440,-492,-547,-622,-686,-727,
+-732,-720,-709,-720,-745,-766,-775,-799,-806,-811,-809,-827,-853,-895,-925,-943,-951,-917,-886,-899,
+-875,-846,-824,-822,-769,-701,-664,-636,-604,-580,-560,-511,-454,-396,-297,-168,-65,-137,-139,-95,
+-47,-1,64,90,94,73,43,34,50,78,87,99,125,170,190,233,253,273,288,298,
+315,346,384,428,421,414,415,420,405,410,443,447,468,468,473,479,491,512,513,537,
+568,578,621,643,669,697,721,746,774,789,809,833,852,866,887,908,930,953,963,987,
+1001,1024,1050,1067,1096,1122,1134,1151,1175,1199,1219,1238,1257,1282,1308,1326,1336,1355,1397,1409,
+1420,1408,1430,1466,1497,1505,1519,1555,1555,1538,1530,1530,1530,1517,1517,1521,1517,1513,1508,1503,
+1502,1503,1501,1505,1509,1514,1517,1520,1535,1534,1543,1549,1553,1572,1575,1577,1588,1610,1626,1645,
+1664,1686,1705,1730,1759,1782,1790,1820,1837,1867,1876,1894,1914,1920,1948,1976,2013,2038,2046,2073,
+2101,2164,2157,2236,2317,2320,2360,2344,2298,2287,2269,2293,2433,2566,2604,2602,2417,2253,2247,2287,
+2304,2325,2344,2336,2331,2335,2345,2358,2376,2402,2426,2445,2458,2476,2496,2511,2529,2546,2568,2585,
+2594,2602,2605,2598,2593,2595,2589,2595,2609,2631,2659,2690,2721,2762,2807,2850,2884,2906,2948,2998,
+3065,3124,3152,3156,3134,3112,3102,3088,3089,3120,3144,3171,3171,3237,3369,3445,3471,3469,3449,3426,
+3398,3371,3358,3350,3339,3327,3317,3313,3326,3313,3305,3304,3314,3340,3324,3292,3293,3299,3303,3308,
+3288,3261,3266,3324,3422,3482,3471,3410,3361,3360,3413,3439,3485,3550,3596,3590,3465,3409,3372,3326,
+3261,3146,3059,3032,2965,2886,2792,2720,2595,2435,2315,2225,2171,2167,2170,2171,2174,2171,2161,2137,
+2111,2090,2103,2115,2112,2097,2033,1940,1860,1737,1587,1513,1481,1461,1433,1420,1422,1415,1410,1412,
+1419,1430,1437,1437,1446,1455,1461,1476,1499,1528,1558,1597,1639,1649,1628,1675,1829,1898,1950,1993,
+2008,2039,2049,2041,2036,2023,2005,1958,1908,1884,1867,1842,1794,1752,1696,1654,1617,1595,1582,1566,
+1555,1541,1529,1515,1500,1477,1464,1453,1456,1459,1468,1481,1500,1524,1535,1539,1547,1575,1583,1586,
+1590,1581,1570,1561,1564,1522,1511,1515,1498,1484,1499,1492,1487,1524,1536,1583,1516,1575,1648,1661,
+1604,1581,1554,1533,1425,1351,1442,1392,1396,1370,1322,1304,1266,1222,1211,1179,1153,1151,1123,1120,
+1123,1124,1112,1099,1085,1077,1058,1045,1026,1003,983,961,951,913,885,871,850,819,790,743,
+730,698,682,651,615,570,546,521,494,470,441,404,373,343,307,278,242,228,183,169,
+135,95,82,62,13,-19,-55,-105,-152,-197,-206,-271,-323,-382,-440,-477,-522,-573,-637,-689,
+-741,-785,-842,-884,-913,-950,-988,-1027,-1081,-1140,-1183,-1239,-1293,-1338,-1381,-1418,-1447,-1480,-1502,-1553,
+-1603,-1653,-1693,-1742,-1769,-1782,-1823,-1862,-1880,-1921,-1985,-1911,-1945,-1984,-2030,-2068,-2120,-2129,-2143,-2216,
+-2315,-2388,-2433,-2461,-2500,-2558,-2640,-2719,-2794,-2841,-2859,-2860,-2864,-2900,-2939,-2974,-3004,-3025,-3030,-3062,
+-3082,-3096,-3129,-3178,-3220,-3264,-3302,-3353,-3401,-3427,-3469,-3482,-3491,-3506,-3515,-3532,-3556,-3587,-3604,-3602,
+-3640,-3689,-3734,-3758,-3774,-3777,-3774,-3783,-3807,-3799,-3753,-3752,-3821,-3861,-3889,-3900,-3898,-3904,-3886,-3883,
+-3930,-3983,-3990,-3905,-3910,-3973,-3947,-3931,-3921,-3934,-3946,-3957,-3966,-3983,-3996,-4002,-3999,-3989,-3989,-3987,
+-3978,-3966,-3944,-3925,-3903,-3880,-3847,-3826,-3792,-3753,-3722,-3700,-3674,-3646,-3629,-3604,-3565,-3516,-3438,-3268,
+-3049,-2930,-2936,-3004,-3078,-3028,-2806,-2662,-2574,-2507,-2466,-2435,-2426,-2409,-2392,-2365,-2333,-2317,-2299,-2228,
+-2215,-2254,-2269,-2273,-2257,-2249,-2228,-2221,-2203,-2168,-2169,-2158,-2123,-2112,-2123,-2147,-2165,-2151,-2084,-1943,
+-1822,-1832,-1881,-1880,-1874,-1871,-1844,-1808,-1800,-1795,-1800,-1793,-1812,-1861,-1899,-1887,-1838,-1774,-1710,-1654,
+-1599,-1541,-1468,-1398,-1309,-1197,-1076,-934,-807,-721,-625,-565,-499,-443,-407,-349,-275,-228,-199,-175,
+-143,-93,-40,17,100,181,232,293,369,451,525,587,651,710,769,845,946,1063,1174,1219,
+1184,1166,1188,1243,1320,1387,1456,1518,1584,1653,1692,1717,1749,1793,1838,1883,1921,1954,1990,2030,
+2073,2121,2176,2230,2282,2325,2382,2431,2492,2545,2589,2642,2677,2708,2728,2736,2723,2751,2798,2869,
+2949,3056,3159,3275,3343,3385,3415,3462,3544,3586,3588,3553,3525,3473,3383,3279,3148,2919,2795,2795,
+2822,2834,2839,2836,2849,2878,2912,2925,2923,2935,2960,3040,3113,3141,3137,3125,3112,3134,3206,3235,
+3263,3299,3345,3360,3400,3426,3471,3488,3497,3522,3548,3568,3585,3578,3578,3571,3567,3552,3536,3523,
+3512,3538,3559,3574,3597,3646,3711,3744,3785,3824,3866,3968,4088,4153,4194,4140,4135,4160,4205,4235,
+4275,4303,4327,4336,4374,4416,4437,4472,4461,4469,4492,4487,4499,4583,4637,4582,4513,4477,4462,4448,
+4435,4447,4464,4472,4483,4496,4484,4480,4480,4490,4502,4502,4509,4517,4520,4531,4538,4549,4568,4586,
+4626,4723,4747,4697,4685,4649,4594,4538,4479,4241,3832,3476,3153,2787,2419,2151,2111,2328,2599,2828,
+2974,3054,3100,3116,3105,3077,3047,3039,3096,3157,3013,2862,2751,2676,2622,2580,2540,2490,2421,2364,
+2323,2285,2231,2177,2129,2084,2044,1993,1940,1896,1838,1788,1740,1691,1639,1587,1543,1515,1470,1417,
+1358,1310,1352,1326,1276,1233,1187,1140,1107,1065,1030,992,956,922,877,838,792,748,709,676,
+643,609,572,526,495,455,428,391,374,357,326,286,245,224,201,182,187,159,137,117,
+100,90,76,56,37,18,2,-15,-39,-53,-61,-75,-90,-109,-140,-155,-157,-154,-168,-148,
+-134,-133,-154,-154,-166,-192,-211,-230,-269,-302,-335,-370,-403,-425,-453,-483,-510,-538,-567,-576,
+-601,-618,-637,-658,-681,-692,-705,-712,-731,-741,-748,-756,-762,-768,-768,-773,-782,-798,-827,-844,
+-852,-853,-866,-875,-881,-898,-921,-935,-952,-967,-982,-999,-1018,-1036,-1053,-1069,-1086,-1096,-1113,-1125,
+-1134,-1159,-1171,-1194,-1212,-1227,-1241,-1257,-1272,-1279,-1293,-1302,-1307,-1303,-1302,-1307,-1311,-1314,-1316,-1321,
+-1316,-1314,-1306,-1296,-1280,-1275,-1265,-1252,-1243,-1228,-1212,-1199,-1200,-1194,-1182,-1170,-1157,-1148,-1144,-1139,
+-1139,-1135,-1126,-1114,-1102,-1094,-1090,-1090,-1073,-1067,-1064,-1055,-1059,-1060,-1056,-1058,-1057,-1054,-1047,-1042,
+-1040,-1040,-1039,-1034,-1028,-1024,-1020,-1011,-1011,-1010,-1003,-991,-985,-973,-975,-969,-962,-959,-950,-938,
+-930,-930,-924,-922,-917,-907,-899,-890,-887,-882,-873,-866,-860,-851,-847,-830,-832,-822,-816,-811,
+-803,-796,-795,-789,-777,-771,-765,-758,-754,-749,-740,-732,-729,-719,-713,-711,-706,-703,-690,-681,
+-664,-654,-645,-636,-632,-630,-617,-614,-601,-580,-571,-568,-563,-555,-540,-524,-519,-515,-510,-496,
+-482,-469,-459,-449,-438,-432,-431,-423,-414,-403,-394,-379,-374,-364,-349,-342,-305,-318,-310,-302,
+-285,-268,-257,-241,-215,-191,-168,-158,-140,-114,-100,-77,-53,-25,-1,18,38,42,44,57,
+69,64,71,78,79,76,80,84,91,101,115,135,141,155,173,188,196,204,195,204,
+222,239,267,291,302,322,349,378,404,428,460,482,502,520,544,571,593,622,671,715,
+752,784,808,821,837,861,904,990,964,999,1025,1050,1079,1121,1167,1210,1252,1293,1330,1370,
+1399,1425,1464,1512,1543,1570,1581,1560,1530,1477,1373,1211,1080,1217,1529,2013,2446,2800,3131,3509,
+3969,3821,3628,3621,3354,3065,3014,2799,2602,2482,2672,2963,2927,2764,2622,2520,2488,2452,2403,2335,
+2314,2335,2406,2471,2551,2621,2544,2409,2324,2261,2209,2166,2134,2107,2084,2046,1993,1942,1897,1857,
+1823,1796,1785,1769,1751,1740,1721,1693,1659,1615,1568,1522,1484,1464,1441,1416,1389,1373,1351,1307,
+1274,1247,1218,1195,1158,1114,1093,1071,1050,1011,967,901,831,771,718,674,625,559,509,450,
+398,357,333,307,314,346,308,258,198,133,51,-61,-191,-304,-387,-441,-494,-554,-634,-692,
+-737,-745,-736,-724,-724,-737,-753,-750,-776,-790,-786,-789,-808,-832,-870,-908,-937,-941,-923,-906,
+-906,-853,-837,-817,-811,-750,-681,-642,-605,-576,-556,-524,-463,-405,-335,-237,-181,-116,-56,-16,
+8,41,64,123,167,174,163,129,99,90,97,112,121,142,176,212,262,267,294,314,
+321,355,414,428,484,481,469,455,435,429,443,488,488,505,519,511,518,537,552,563,
+585,618,657,680,702,729,748,765,788,815,824,846,872,894,911,932,956,976,995,1012,
+1039,1069,1081,1080,1107,1135,1155,1174,1197,1224,1241,1267,1276,1298,1311,1331,1347,1352,1395,1408,
+1410,1436,1458,1473,1512,1532,1536,1541,1572,1558,1549,1546,1530,1529,1529,1521,1521,1528,1522,1518,
+1514,1507,1511,1507,1516,1519,1519,1523,1523,1535,1546,1547,1549,1556,1566,1575,1590,1608,1619,1627,
+1644,1658,1678,1703,1722,1733,1752,1773,1802,1818,1827,1838,1854,1882,1909,1950,1982,2009,2049,2064,
+2100,2110,2157,2169,2231,2263,2319,2326,2349,2245,2230,2238,2348,2386,2466,2547,2555,2392,2251,2245,
+2270,2305,2319,2323,2310,2305,2311,2321,2344,2367,2390,2409,2430,2448,2464,2484,2503,2518,2540,2559,
+2580,2593,2599,2596,2589,2590,2582,2583,2589,2607,2632,2663,2695,2728,2762,2801,2840,2872,2896,2911,
+2934,2975,3028,3085,3128,3136,3117,3101,3095,3084,3104,3127,3145,3171,3191,3281,3385,3433,3449,3428,
+3404,3405,3401,3386,3374,3360,3367,3359,3354,3361,3363,3370,3366,3363,3359,3361,3345,3339,3345,3349,
+3364,3366,3341,3303,3310,3379,3419,3434,3440,3431,3440,3465,3494,3547,3600,3641,3568,3436,3388,3344,
+3302,3252,3147,3053,3007,2940,2835,2722,2576,2433,2320,2216,2149,2132,2144,2181,2208,2209,2204,2192,
+2174,2151,2147,2173,2192,2188,2159,2092,2010,1937,1782,1626,1567,1534,1510,1482,1470,1476,1475,1475,
+1475,1484,1491,1500,1503,1513,1520,1526,1545,1566,1585,1620,1667,1696,1694,1733,1883,1997,2037,2072,
+2105,2130,2140,2138,2145,2123,2119,2081,2046,1994,1970,1962,1946,1891,1829,1773,1724,1686,1668,1650,
+1633,1620,1609,1592,1596,1575,1554,1547,1538,1535,1541,1546,1553,1561,1570,1574,1575,1606,1648,1654,
+1661,1661,1668,1678,1651,1657,1652,1609,1629,1626,1591,1592,1596,1637,1641,1651,1713,1644,1728,1808,
+1739,1648,1575,1541,1519,1494,1434,1484,1434,1421,1403,1349,1353,1324,1269,1259,1226,1215,1202,1193,
+1194,1192,1180,1170,1150,1135,1122,1106,1098,1077,1065,1036,1008,986,964,941,922,891,860,827,
+802,779,754,722,687,658,633,607,580,539,513,472,452,397,382,358,335,296,282,257,
+229,173,168,146,113,84,51,4,-33,-64,-100,-154,-211,-260,-308,-337,-390,-449,-509,-571,
+-630,-673,-718,-764,-806,-846,-875,-926,-980,-1028,-1077,-1125,-1168,-1210,-1252,-1297,-1343,-1381,-1409,-1443,
+-1492,-1531,-1572,-1638,-1679,-1671,-1696,-1730,-1783,-1811,-1840,-1903,-1893,-1900,-1928,-1962,-1994,-2048,-2104,-2119,
+-2169,-2249,-2317,-2351,-2371,-2443,-2516,-2538,-2590,-2678,-2715,-2728,-2728,-2750,-2795,-2836,-2868,-2899,-2930,-2927,
+-2952,-2994,-3030,-3075,-3120,-3171,-3228,-3285,-3334,-3359,-3401,-3432,-3447,-3467,-3480,-3474,-3494,-3530,-3555,-3575,
+-3576,-3612,-3671,-3717,-3745,-3761,-3759,-3752,-3773,-3801,-3808,-3785,-3783,-3836,-3866,-3896,-3905,-3904,-3900,-3903,
+-3922,-3962,-4038,-3969,-3882,-3969,-3981,-3958,-3957,-3956,-3969,-3975,-3979,-3988,-3999,-4005,-4008,-4003,-3996,-3994,
+-3987,-3984,-3972,-3951,-3935,-3914,-3893,-3878,-3850,-3817,-3777,-3755,-3724,-3701,-3678,-3659,-3634,-3605,-3561,-3501,
+-3384,-3164,-3007,-2985,-3044,-3130,-3111,-2890,-2705,-2615,-2557,-2504,-2475,-2458,-2443,-2418,-2399,-2386,-2378,-2359,
+-2348,-2330,-2312,-2303,-2310,-2300,-2269,-2240,-2236,-2231,-2181,-2195,-2193,-2183,-2187,-2211,-2214,-2211,-2183,-2081,
+-1917,-1859,-1890,-1945,-1954,-1943,-1925,-1879,-1866,-1853,-1844,-1844,-1836,-1862,-1920,-1946,-1932,-1885,-1824,-1760,
+-1702,-1660,-1606,-1530,-1448,-1357,-1261,-1142,-1009,-864,-778,-694,-629,-579,-531,-498,-438,-378,-367,-347,
+-302,-247,-178,-114,-38,35,105,175,253,326,394,465,536,603,681,748,844,969,1104,1180,
+1163,1112,1097,1119,1173,1252,1337,1412,1468,1524,1566,1656,1702,1718,1735,1757,1792,1812,1835,1868,
+1907,1952,2015,2079,2155,2215,2273,2327,2388,2459,2518,2562,2595,2618,2654,2679,2696,2702,2710,2766,
+2827,2915,3022,3090,3175,3295,3335,3380,3412,3468,3487,3475,3465,3398,3328,3251,3179,2984,2754,2713,
+2743,2766,2760,2750,2767,2792,2828,2942,3040,2934,2886,2921,2985,3021,3042,3032,3028,3046,3086,3150,
+3187,3250,3278,3310,3327,3356,3388,3399,3413,3427,3446,3476,3505,3517,3520,3516,3514,3499,3504,3479,
+3474,3462,3457,3499,3514,3531,3576,3625,3679,3721,3755,3796,3879,3945,4072,4107,4060,4066,4088,4138,
+4169,4245,4258,4302,4264,4305,4316,4331,4382,4401,4409,4450,4458,4492,4572,4573,4537,4474,4440,4416,
+4465,4412,4417,4429,4433,4435,4439,4433,4433,4439,4449,4461,4467,4472,4479,4491,4504,4512,4518,4540,
+4579,4647,4727,4719,4664,4643,4610,4538,4487,4403,4058,3652,3294,2930,2547,2209,2011,2103,2380,2666,
+2861,2991,3069,3113,3123,3102,3063,3023,2995,3004,3090,3050,2885,2740,2645,2583,2535,2487,2438,2386,
+2319,2291,2260,2206,2159,2107,2059,2008,1972,1908,1865,1823,1765,1718,1671,1621,1569,1520,1485,1442,
+1376,1308,1252,1298,1306,1260,1215,1179,1145,1100,1062,1023,988,949,913,871,826,785,743,698,
+664,640,644,580,534,487,450,417,384,362,347,323,288,247,225,188,171,179,162,142,
+122,102,88,81,63,39,19,6,-7,-25,-44,-59,-75,-89,-102,-121,-142,-152,-149,-164,
+-149,-142,-154,-165,-168,-183,-207,-229,-245,-263,-296,-326,-358,-391,-423,-454,-485,-518,-545,-571,
+-591,-620,-647,-664,-686,-704,-717,-732,-737,-755,-769,-775,-785,-787,-795,-796,-795,-794,-804,-820,
+-843,-868,-876,-871,-877,-884,-904,-930,-944,-958,-966,-976,-993,-1013,-1027,-1043,-1064,-1083,-1087,-1110,
+-1128,-1147,-1162,-1175,-1190,-1201,-1212,-1222,-1234,-1247,-1267,-1269,-1285,-1296,-1299,-1300,-1302,-1306,-1310,-1314,
+-1312,-1309,-1300,-1287,-1282,-1271,-1271,-1258,-1245,-1230,-1217,-1207,-1201,-1184,-1181,-1171,-1158,-1143,-1135,-1132,
+-1127,-1128,-1124,-1120,-1110,-1107,-1098,-1089,-1090,-1075,-1067,-1061,-1061,-1061,-1067,-1063,-1062,-1057,-1059,-1051,
+-1053,-1059,-1043,-1048,-1046,-1041,-1040,-1032,-1021,-1018,-1007,-1004,-998,-992,-986,-986,-975,-977,-973,-966,
+-944,-929,-950,-938,-934,-924,-920,-916,-901,-895,-888,-880,-877,-871,-860,-849,-842,-842,-836,-835,
+-826,-821,-816,-808,-802,-792,-786,-781,-773,-769,-762,-756,-747,-739,-729,-720,-719,-713,-708,-697,
+-685,-679,-673,-674,-664,-652,-643,-644,-632,-619,-608,-600,-591,-584,-565,-547,-538,-536,-526,-520,
+-509,-496,-491,-490,-482,-473,-463,-460,-449,-434,-414,-415,-409,-400,-386,-367,-364,-349,-341,-329,
+-318,-313,-294,-273,-262,-242,-210,-186,-163,-149,-131,-120,-100,-83,-55,-37,-19,0,16,27,
+38,46,35,42,50,57,56,64,77,83,94,105,118,133,146,152,168,169,167,180,
+209,217,238,260,269,291,318,344,366,393,414,447,466,488,505,536,560,582,622,671,
+715,752,779,788,788,818,839,877,914,944,980,1022,1059,1086,1122,1157,1192,1232,1268,1300,
+1331,1358,1400,1447,1497,1541,1571,1595,1575,1543,1474,1363,1204,1084,1248,1578,2074,2487,2779,3071,
+3489,3955,3807,3524,3474,3253,3014,2981,2703,2489,2366,2441,2804,2861,2716,2636,2573,2597,2521,2437,
+2356,2332,2367,2446,2528,2622,2635,2548,2397,2307,2238,2175,2125,2084,2049,2017,1983,1938,1889,1851,
+1818,1790,1762,1751,1743,1733,1723,1708,1691,1658,1619,1560,1514,1486,1471,1458,1442,1417,1395,1383,
+1352,1323,1304,1280,1264,1236,1202,1186,1176,1141,1079,1053,995,920,860,818,753,684,617,549,
+491,438,398,357,324,335,330,286,223,143,61,-23,-133,-261,-363,-426,-481,-529,-580,-641,
+-700,-743,-763,-767,-757,-752,-751,-757,-749,-767,-787,-781,-776,-795,-809,-842,-875,-901,-919,-919,
+-913,-890,-874,-849,-833,-806,-729,-675,-634,-596,-570,-541,-496,-456,-406,-334,-266,-184,-91,-41,
+72,97,89,115,160,211,233,237,218,200,181,153,145,153,167,182,219,254,276,295,
+316,336,374,421,449,498,520,515,480,456,453,476,502,524,544,562,547,574,582,613,
+636,653,678,700,720,748,767,791,805,825,854,869,892,902,928,954,973,999,1016,1032,
+1051,1070,1087,1108,1136,1150,1170,1193,1220,1243,1245,1275,1296,1308,1327,1338,1352,1376,1405,1410,
+1428,1445,1468,1474,1482,1511,1549,1567,1548,1591,1569,1551,1539,1539,1543,1540,1539,1536,1541,1530,
+1524,1520,1519,1522,1518,1520,1518,1524,1525,1524,1530,1537,1544,1549,1550,1558,1553,1559,1569,1595,
+1617,1634,1659,1675,1702,1732,1740,1762,1776,1807,1820,1827,1839,1860,1887,1918,1942,1978,2006,2034,
+2040,2068,2112,2169,2191,2183,2162,2205,2171,2195,2210,2198,2218,2353,2486,2483,2505,2481,2414,2268,
+2260,2286,2314,2316,2299,2287,2286,2295,2313,2334,2359,2384,2402,2420,2431,2449,2466,2488,2508,2526,
+2548,2571,2578,2594,2598,2590,2578,2572,2576,2586,2608,2636,2668,2702,2732,2764,2799,2837,2875,2892,
+2894,2890,2902,2923,2968,3052,3116,3138,3122,3106,3079,3085,3110,3135,3180,3185,3211,3275,3327,3352,
+3363,3367,3391,3417,3422,3412,3395,3392,3404,3427,3447,3460,3468,3461,3450,3421,3402,3402,3423,3443,
+3440,3422,3421,3389,3362,3380,3424,3470,3504,3514,3509,3501,3519,3582,3631,3637,3646,3535,3415,3347,
+3288,3280,3238,3151,3068,2999,2886,2716,2590,2464,2384,2309,2222,2149,2144,2181,2212,2229,2230,2222,
+2216,2208,2189,2178,2210,2240,2234,2193,2132,2044,1953,1806,1669,1622,1589,1561,1530,1523,1529,1531,
+1532,1536,1545,1549,1564,1565,1569,1575,1592,1611,1626,1657,1719,1776,1775,1784,1902,2056,2124,2153,
+2180,2193,2202,2210,2202,2193,2189,2185,2150,2127,2082,2074,2066,2036,1985,1920,1848,1791,1751,1732,
+1717,1697,1684,1676,1670,1666,1641,1629,1664,1632,1618,1616,1616,1620,1612,1623,1617,1635,1697,1705,
+1713,1726,1740,1754,1775,1746,1754,1768,1711,1736,1735,1679,1678,1693,1738,1727,1777,1805,1749,1832,
+1832,1730,1653,1683,1742,1688,1583,1496,1507,1519,1476,1393,1387,1399,1334,1343,1298,1268,1266,1271,
+1260,1252,1241,1227,1208,1200,1182,1167,1155,1145,1118,1108,1077,1050,1025,1009,998,959,932,918,
+886,871,834,802,771,739,711,691,668,611,582,547,524,483,466,438,413,384,347,333,
+301,248,234,219,191,157,136,113,62,27,2,-55,-104,-142,-187,-230,-275,-332,-393,-451,
+-509,-561,-598,-659,-698,-746,-780,-823,-882,-930,-976,-1019,-1058,-1098,-1138,-1176,-1217,-1264,-1305,-1338,
+-1375,-1420,-1452,-1515,-1572,-1585,-1584,-1654,-1720,-1792,-1823,-1805,-1807,-1794,-1783,-1813,-1857,-1912,-1956,-2045,
+-2115,-2156,-2198,-2212,-2275,-2358,-2435,-2467,-2505,-2524,-2564,-2597,-2591,-2592,-2630,-2690,-2716,-2719,-2742,-2784,
+-2818,-2855,-2917,-2958,-3009,-3068,-3137,-3206,-3256,-3307,-3344,-3372,-3387,-3411,-3435,-3438,-3438,-3479,-3504,-3526,
+-3554,-3575,-3603,-3660,-3690,-3706,-3728,-3738,-3744,-3713,-3756,-3830,-3833,-3826,-3840,-3869,-3895,-3916,-3911,-3911,
+-3914,-3935,-3984,-4028,-3860,-3886,-3954,-3974,-3971,-3975,-3980,-3995,-3999,-3997,-4000,-4006,-4007,-4003,-3996,-3996,
+-3993,-3993,-3988,-3973,-3970,-3953,-3933,-3907,-3887,-3867,-3833,-3804,-3777,-3754,-3732,-3711,-3689,-3664,-3635,-3585,
+-3525,-3429,-3249,-3095,-3031,-3087,-3189,-3172,-2934,-2728,-2656,-2614,-2564,-2524,-2502,-2477,-2461,-2453,-2440,-2431,
+-2416,-2410,-2390,-2381,-2363,-2341,-2330,-2308,-2314,-2283,-2246,-2226,-2261,-2236,-2253,-2278,-2306,-2307,-2267,-2195,
+-2055,-1950,-1932,-1957,-1999,-2013,-1995,-1967,-1928,-1915,-1864,-1874,-1858,-1857,-1907,-1974,-1989,-1965,-1927,-1864,
+-1790,-1723,-1683,-1640,-1579,-1510,-1432,-1341,-1223,-1102,-968,-858,-775,-715,-658,-615,-591,-556,-529,-505,
+-461,-407,-324,-250,-169,-65,0,83,142,213,281,343,405,469,545,626,716,834,969,1104,
+1121,1085,1030,1033,1056,1107,1189,1285,1376,1446,1510,1526,1579,1666,1686,1686,1680,1687,1702,1719,
+1735,1766,1805,1867,1960,2056,2126,2180,2260,2335,2407,2472,2510,2539,2549,2598,2628,2653,2673,2696,
+2729,2807,2891,2973,3036,3091,3186,3253,3314,3364,3419,3414,3348,3288,3238,3181,3131,3074,2805,2642,
+2639,2676,2691,2674,2667,2680,2703,2768,2986,3245,3001,2865,2867,2909,2927,2943,2928,2950,2982,3021,
+3096,3150,3181,3230,3267,3295,3307,3349,3341,3345,3356,3371,3402,3434,3458,3455,3454,3449,3440,3433,
+3417,3407,3407,3402,3420,3447,3462,3503,3571,3633,3655,3687,3732,3786,3886,4010,4042,4001,4008,4065,
+4074,4104,4150,4176,4207,4207,4231,4220,4268,4298,4336,4338,4376,4402,4451,4523,4519,4520,4475,4435,
+4413,4384,4361,4378,4386,4391,4389,4393,4393,4396,4397,4408,4420,4432,4443,4455,4462,4476,4490,4502,
+4514,4562,4651,4699,4660,4628,4605,4577,4509,4420,4281,3894,3476,3091,2693,2281,2019,1954,2171,2479,
+2726,2887,3000,3074,3117,3118,3083,3037,2989,2943,2913,2911,2935,2916,2751,2647,2567,2499,2438,2384,
+2339,2287,2267,2233,2183,2138,2087,2032,1982,1942,1876,1840,1796,1737,1692,1648,1602,1552,1504,1459,
+1417,1351,1266,1212,1263,1285,1240,1204,1180,1145,1111,1064,1020,977,937,898,859,816,774,739,
+727,655,629,605,570,536,500,462,425,389,360,337,315,286,252,215,182,160,154,152,
+145,132,103,88,81,67,34,20,6,-6,-27,-42,-55,-74,-91,-101,-117,-134,-147,-154,
+-143,-123,-123,-147,-170,-176,-189,-216,-235,-251,-278,-301,-330,-352,-389,-423,-456,-487,-516,-563,
+-583,-604,-629,-662,-684,-697,-710,-726,-741,-760,-770,-789,-794,-807,-812,-810,-815,-817,-817,-823,
+-832,-845,-862,-882,-891,-895,-891,-909,-930,-949,-957,-971,-989,-1006,-1024,-1037,-1048,-1061,-1074,-1091,
+-1113,-1137,-1150,-1167,-1172,-1183,-1199,-1216,-1231,-1238,-1249,-1252,-1264,-1272,-1272,-1276,-1279,-1284,-1285,-1285,
+-1291,-1290,-1288,-1281,-1273,-1271,-1266,-1259,-1248,-1233,-1218,-1205,-1193,-1190,-1171,-1168,-1162,-1156,-1139,-1134,
+-1126,-1123,-1112,-1112,-1113,-1117,-1115,-1106,-1101,-1097,-1085,-1074,-1071,-1067,-1067,-1062,-1063,-1060,-1059,-1058,
+-1054,-1050,-1051,-1042,-1049,-1051,-1044,-1047,-1045,-1026,-1022,-1015,-1009,-1009,-985,-985,-991,-979,-979,-974,
+-973,-973,-962,-956,-955,-949,-936,-939,-930,-919,-908,-902,-895,-891,-881,-874,-865,-859,-845,-845,
+-842,-837,-829,-822,-819,-813,-801,-796,-794,-789,-785,-778,-772,-760,-750,-737,-732,-723,-717,-709,
+-702,-694,-688,-683,-680,-673,-664,-652,-634,-636,-625,-615,-597,-597,-596,-580,-572,-556,-553,-545,
+-539,-536,-524,-514,-514,-503,-483,-479,-474,-465,-454,-439,-438,-428,-418,-416,-399,-385,-367,-352,
+-342,-342,-333,-314,-292,-270,-247,-236,-211,-185,-162,-144,-123,-116,-93,-86,-72,-50,-16,1,
+7,8,9,12,19,27,37,43,50,53,64,75,92,101,106,115,127,139,144,156,
+183,187,205,224,240,256,280,314,335,359,377,407,438,457,473,502,528,550,577,617,
+665,709,741,766,767,800,790,830,873,903,937,979,1013,1052,1084,1112,1146,1177,1215,1254,
+1275,1307,1350,1397,1453,1508,1552,1591,1607,1597,1557,1478,1368,1199,1081,1264,1632,2108,2491,2742,
+2958,3196,3461,3471,3360,3270,3115,3040,2919,2670,2439,2317,2342,2610,2815,2685,2618,2632,2659,2554,
+2459,2403,2383,2447,2527,2583,2691,2657,2538,2400,2289,2214,2160,2106,2060,2014,1975,1938,1895,1854,
+1822,1789,1763,1738,1724,1716,1707,1697,1689,1687,1658,1628,1576,1527,1494,1480,1475,1466,1458,1434,
+1415,1408,1374,1351,1336,1325,1306,1282,1261,1222,1192,1143,1106,1042,955,888,843,780,708,641,
+583,525,478,431,380,368,352,299,220,100,-9,-108,-206,-305,-384,-445,-491,-519,-550,-583,
+-628,-683,-732,-759,-779,-782,-776,-774,-774,-773,-779,-794,-781,-763,-770,-783,-809,-848,-877,-896,
+-889,-877,-855,-838,-819,-819,-790,-730,-685,-637,-592,-560,-517,-481,-461,-397,-285,-186,-185,-65,
+-15,29,134,138,120,180,241,284,297,302,294,264,235,211,199,199,208,229,250,289,
+324,346,344,365,399,472,502,537,549,524,480,476,492,505,516,537,552,556,584,596,
+619,645,668,694,720,752,781,797,824,838,867,896,901,919,945,965,992,1014,1038,1057,
+1074,1088,1112,1134,1147,1169,1183,1199,1227,1247,1262,1285,1308,1324,1337,1353,1374,1386,1401,1417,
+1431,1457,1465,1476,1490,1513,1530,1558,1583,1596,1562,1594,1598,1583,1565,1541,1539,1543,1541,1544,
+1537,1531,1535,1534,1530,1527,1525,1518,1522,1523,1521,1520,1534,1540,1551,1546,1548,1566,1559,1564,
+1596,1612,1630,1660,1688,1688,1722,1763,1777,1791,1814,1833,1839,1852,1876,1894,1901,1920,1960,1993,
+2029,2065,2112,2168,2191,2127,2072,2059,2082,2113,2144,2170,2185,2212,2260,2378,2505,2462,2267,2242,
+2259,2281,2306,2314,2298,2276,2275,2277,2286,2302,2325,2352,2375,2386,2402,2418,2428,2451,2471,2493,
+2509,2529,2552,2573,2579,2582,2579,2567,2569,2571,2585,2605,2639,2673,2706,2735,2764,2794,2827,2861,
+2877,2886,2884,2884,2887,2909,2989,3064,3122,3134,3108,3070,3064,3096,3127,3164,3199,3207,3219,3214,
+3221,3251,3322,3392,3444,3479,3475,3457,3451,3464,3493,3519,3529,3538,3543,3531,3482,3461,3452,3461,
+3473,3476,3473,3473,3470,3467,3486,3515,3543,3549,3545,3547,3563,3558,3588,3626,3636,3598,3450,3349,
+3284,3224,3198,3193,3151,3073,2952,2779,2624,2509,2435,2384,2331,2258,2188,2174,2212,2242,2255,2256,
+2247,2252,2247,2237,2233,2243,2254,2232,2208,2178,2086,1956,1810,1742,1690,1643,1610,1581,1574,1578,
+1584,1583,1593,1604,1613,1623,1626,1628,1632,1657,1679,1697,1747,1799,1830,1836,1895,2060,2182,2221,
+2244,2272,2278,2276,2275,2261,2257,2253,2241,2204,2182,2162,2155,2123,2071,2009,1951,1896,1845,1815,
+1799,1782,1764,1753,1748,1745,1733,1721,1715,1712,1698,1700,1694,1688,1678,1674,1669,1675,1727,1768,
+1759,1772,1801,1829,1820,1850,1806,1814,1843,1816,1792,1833,1763,1791,1795,1857,1861,1911,1912,1785,
+1830,1771,1757,1798,1827,1816,1791,1616,1534,1538,1563,1490,1430,1438,1427,1402,1371,1336,1319,1327,
+1322,1314,1310,1307,1282,1259,1251,1238,1216,1190,1188,1178,1140,1121,1102,1081,1061,1036,1005,978,
+963,928,906,874,852,814,792,764,730,703,664,634,603,571,536,505,470,454,422,400,
+390,343,323,274,281,246,223,198,156,123,85,51,4,-35,-77,-111,-159,-211,-270,-330,
+-384,-446,-484,-530,-584,-631,-675,-713,-767,-823,-875,-914,-951,-992,-1036,-1079,-1109,-1146,-1196,-1241,
+-1264,-1302,-1360,-1396,-1460,-1497,-1512,-1546,-1607,-1679,-1718,-1736,-1735,-1726,-1696,-1689,-1717,-1749,-1824,-1901,
+-1989,-2071,-2131,-2195,-2245,-2303,-2382,-2434,-2476,-2535,-2622,-2669,-2725,-2751,-2736,-2776,-2825,-2822,-2772,-2684,
+-2676,-2729,-2795,-2874,-2916,-2961,-3022,-3102,-3166,-3219,-3261,-3298,-3322,-3353,-3390,-3408,-3410,-3419,-3454,-3486,
+-3507,-3530,-3560,-3586,-3621,-3662,-3690,-3714,-3718,-3678,-3632,-3735,-3836,-3847,-3840,-3856,-3885,-3915,-3929,-3922,
+-3918,-3925,-3944,-3990,-4040,-3869,-3864,-3959,-3981,-3985,-3986,-3992,-4001,-4002,-4004,-4009,-4003,-4007,-4005,-3995,
+-3993,-3995,-3990,-3983,-3972,-3964,-3955,-3933,-3913,-3895,-3876,-3860,-3830,-3813,-3790,-3767,-3746,-3718,-3695,-3652,
+-3593,-3520,-3436,-3325,-3193,-3101,-3153,-3238,-3221,-2994,-2762,-2687,-2651,-2607,-2575,-2553,-2529,-2506,-2489,-2474,
+-2474,-2453,-2430,-2430,-2418,-2388,-2371,-2352,-2338,-2340,-2313,-2286,-2291,-2296,-2293,-2315,-2365,-2387,-2371,-2304,
+-2217,-2105,-2030,-2034,-2019,-2046,-2040,-2013,-2008,-1968,-1953,-1930,-1897,-1872,-1875,-1945,-2016,-2019,-1982,-1934,
+-1877,-1803,-1741,-1706,-1666,-1615,-1561,-1502,-1413,-1300,-1182,-1057,-957,-879,-805,-787,-757,-703,-660,-641,
+-599,-537,-471,-393,-306,-227,-138,-49,40,107,175,239,296,358,419,493,570,652,770,926,
+1048,1051,1015,978,981,1011,1066,1150,1249,1334,1421,1499,1506,1510,1592,1636,1602,1586,1571,1581,
+1619,1648,1670,1705,1760,1843,1955,2048,2101,2182,2266,2349,2425,2464,2488,2491,2526,2576,2601,2615,
+2673,2747,2810,2871,2930,2995,3032,3091,3176,3244,3301,3372,3385,3309,3257,3162,3095,3062,2988,2745,
+2569,2575,2600,2611,2606,2598,2616,2634,2697,2823,3005,2917,2772,2783,2822,2850,2866,2855,2889,2940,
+2986,3065,3118,3164,3200,3219,3242,3255,3289,3283,3292,3298,3303,3331,3364,3396,3393,3382,3385,3379,
+3375,3357,3344,3347,3352,3352,3370,3388,3431,3493,3553,3616,3647,3697,3706,3784,3948,3996,3956,3954,
+3991,4017,4049,4088,4124,4141,4157,4160,4165,4211,4250,4295,4279,4320,4341,4408,4496,4436,4411,4402,
+4376,4326,4339,4317,4333,4344,4345,4343,4345,4352,4353,4361,4368,4378,4394,4409,4427,4436,4453,4470,
+4483,4498,4544,4633,4653,4600,4580,4564,4541,4467,4375,4143,3711,3266,2854,2437,2086,1907,1972,2266,
+2558,2808,2923,3022,3072,3100,3095,3069,3024,2966,2901,2849,2808,2787,2797,2765,2695,2591,2481,2399,
+2340,2297,2246,2225,2196,2154,2110,2059,2004,1959,1905,1847,1808,1765,1712,1667,1627,1583,1540,1484,
+1439,1395,1333,1257,1198,1216,1264,1222,1188,1162,1132,1101,1061,1013,970,927,884,842,810,765,
+712,702,667,650,624,588,552,512,476,438,401,365,331,304,290,263,226,182,165,143,
+137,143,138,110,84,75,66,38,25,16,0,-17,-33,-51,-74,-95,-105,-120,-130,-144,
+-158,-141,-143,-130,-145,-187,-194,-210,-250,-278,-279,-280,-298,-315,-350,-388,-422,-461,-495,-524,
+-550,-585,-614,-634,-664,-686,-698,-715,-730,-751,-770,-785,-798,-807,-815,-820,-824,-829,-834,-838,
+-837,-848,-857,-866,-886,-910,-921,-923,-914,-925,-945,-960,-977,-990,-1011,-1036,-1052,-1066,-1075,-1083,
+-1092,-1114,-1141,-1160,-1166,-1171,-1177,-1181,-1204,-1209,-1213,-1224,-1234,-1242,-1259,-1267,-1271,-1276,-1264,-1267,
+-1265,-1266,-1259,-1265,-1257,-1258,-1251,-1248,-1251,-1233,-1224,-1208,-1202,-1191,-1178,-1172,-1161,-1165,-1164,-1152,
+-1140,-1131,-1123,-1110,-1112,-1111,-1116,-1120,-1118,-1107,-1101,-1085,-1079,-1072,-1074,-1068,-1066,-1070,-1068,-1072,
+-1069,-1056,-1055,-1052,-1055,-1053,-1053,-1050,-1052,-1048,-1036,-1033,-1033,-1032,-1024,-1021,-1013,-1006,-1002,-1000,
+-988,-979,-977,-975,-972,-971,-963,-947,-936,-932,-925,-920,-908,-889,-900,-895,-884,-873,-869,-858,
+-860,-852,-851,-839,-836,-830,-826,-816,-813,-809,-802,-795,-787,-777,-768,-763,-752,-747,-740,-730,
+-721,-706,-698,-690,-687,-682,-671,-670,-658,-658,-642,-633,-625,-614,-604,-599,-586,-587,-577,-571,
+-568,-558,-555,-541,-528,-519,-505,-489,-486,-478,-472,-466,-457,-451,-442,-439,-429,-417,-403,-388,
+-374,-364,-353,-339,-331,-308,-287,-267,-247,-229,-208,-189,-164,-148,-129,-119,-101,-76,-56,-38,
+-41,-16,-21,-26,-22,-9,4,18,28,33,33,38,55,72,77,90,95,100,114,126,
+146,158,175,188,204,219,241,276,307,333,342,365,398,423,443,464,494,517,538,568,
+612,655,691,729,750,747,763,791,830,870,906,941,977,1011,1039,1069,1101,1139,1179,1221,
+1256,1283,1317,1370,1419,1475,1522,1567,1608,1622,1612,1568,1492,1375,1192,1088,1277,1667,2114,2504,
+2740,2941,3164,3336,3407,3308,3189,2960,3001,2907,2649,2432,2342,2376,2515,2821,2725,2599,2632,2657,
+2552,2484,2440,2461,2567,2617,2693,2721,2649,2520,2385,2291,2227,2169,2105,2052,2009,1969,1924,1880,
+1845,1814,1780,1752,1729,1717,1710,1697,1685,1672,1667,1657,1641,1615,1584,1536,1510,1505,1506,1495,
+1484,1460,1449,1423,1396,1378,1362,1350,1326,1299,1269,1225,1179,1112,1050,972,906,849,797,730,
+655,601,557,542,489,451,409,332,216,82,-39,-147,-236,-314,-378,-437,-479,-499,-517,-538,
+-562,-598,-644,-693,-744,-778,-792,-796,-794,-790,-794,-799,-805,-784,-758,-750,-758,-788,-828,-865,
+-884,-872,-853,-824,-789,-766,-775,-778,-736,-692,-636,-593,-547,-506,-489,-465,-411,-341,-269,-201,
+-88,-34,-13,32,72,75,90,177,280,313,329,333,321,305,294,277,250,247,261,260,
+270,295,314,343,375,404,474,518,548,568,543,494,499,507,513,523,543,555,576,611,
+622,642,675,712,739,764,788,805,832,857,882,900,919,945,968,987,1006,1034,1058,1079,
+1099,1112,1129,1147,1166,1184,1205,1223,1243,1270,1269,1304,1319,1338,1350,1366,1384,1402,1414,1432,
+1443,1458,1480,1490,1512,1531,1535,1557,1569,1590,1623,1583,1620,1603,1583,1562,1552,1543,1545,1550,
+1544,1545,1540,1537,1532,1528,1530,1523,1520,1521,1525,1526,1525,1534,1535,1543,1548,1556,1574,1589,
+1604,1619,1635,1647,1663,1676,1700,1732,1752,1766,1773,1798,1816,1823,1836,1868,1899,1915,1943,1966,
+1993,2032,2081,2110,2148,2127,2019,2013,2043,2086,2117,2137,2142,2206,2203,2254,2440,2495,2353,2215,
+2225,2268,2296,2304,2304,2293,2281,2271,2274,2280,2294,2314,2338,2358,2375,2382,2391,2410,2435,2465,
+2483,2494,2508,2528,2548,2563,2568,2563,2564,2556,2561,2581,2607,2642,2676,2709,2734,2756,2780,2807,
+2837,2860,2880,2885,2883,2880,2902,2965,3039,3096,3125,3117,3072,3049,3072,3106,3147,3194,3216,3204,
+3168,3157,3217,3271,3362,3464,3528,3538,3538,3519,3517,3516,3531,3543,3550,3566,3572,3537,3510,3509,
+3529,3526,3533,3523,3502,3495,3496,3477,3492,3529,3549,3541,3565,3584,3577,3580,3582,3533,3470,3365,
+3282,3219,3177,3152,3171,3124,3030,2858,2704,2575,2488,2432,2391,2346,2293,2232,2210,2241,2267,2282,
+2280,2279,2291,2298,2293,2289,2289,2285,2282,2252,2193,2116,1998,1873,1813,1740,1698,1660,1631,1627,
+1626,1634,1636,1651,1663,1675,1684,1689,1692,1702,1735,1761,1783,1838,1879,1895,1928,2020,2193,2288,
+2303,2355,2348,2357,2357,2356,2356,2348,2333,2320,2289,2257,2233,2195,2144,2089,2048,2013,1976,1937,
+1903,1876,1856,1837,1824,1816,1815,1813,1810,1802,1797,1797,1788,1772,1756,1733,1729,1741,1785,1833,
+1832,1837,1842,1860,1879,1887,1918,1890,1898,1917,1877,1878,1906,1863,1905,1908,1976,1982,2023,1983,
+1855,1879,1891,1904,1906,1908,1833,1789,1640,1579,1557,1591,1505,1464,1525,1485,1449,1410,1388,1385,
+1382,1374,1366,1356,1341,1324,1313,1301,1267,1250,1257,1227,1203,1197,1165,1148,1137,1109,1071,1050,
+1031,1001,984,945,925,896,863,834,808,777,749,724,690,643,612,593,553,529,507,488,
+466,425,396,376,355,344,311,274,241,217,180,160,112,70,31,3,-53,-102,-153,-208,
+-264,-313,-366,-421,-459,-514,-560,-597,-643,-702,-753,-798,-838,-877,-921,-966,-985,-1050,-1081,-1130,
+-1157,-1190,-1241,-1284,-1345,-1409,-1444,-1427,-1489,-1557,-1606,-1643,-1676,-1676,-1650,-1632,-1623,-1656,-1695,-1757,
+-1817,-1947,-2031,-2099,-2165,-2215,-2262,-2305,-2356,-2415,-2477,-2547,-2612,-2665,-2707,-2765,-2806,-2844,-2885,-2913,
+-2909,-2838,-2799,-2838,-2853,-2863,-2905,-2955,-3010,-3078,-3137,-3189,-3225,-3269,-3322,-3367,-3393,-3406,-3403,-3419,
+-3453,-3498,-3513,-3538,-3578,-3604,-3645,-3694,-3711,-3702,-3659,-3647,-3725,-3797,-3798,-3829,-3885,-3906,-3939,-3945,
+-3957,-3948,-3938,-3946,-3981,-4040,-3928,-3879,-3983,-4014,-4011,-4006,-4007,-4008,-4010,-4016,-4016,-4002,-4014,-4011,
+-4007,-3986,-3986,-3980,-3974,-3960,-3947,-3937,-3925,-3914,-3904,-3889,-3877,-3863,-3841,-3817,-3794,-3771,-3747,-3717,
+-3670,-3613,-3535,-3438,-3384,-3274,-3198,-3225,-3276,-3258,-3056,-2794,-2720,-2689,-2657,-2632,-2610,-2584,-2560,-2529,
+-2501,-2485,-2475,-2455,-2435,-2417,-2390,-2383,-2377,-2362,-2361,-2358,-2347,-2353,-2341,-2366,-2377,-2418,-2441,-2406,
+-2317,-2227,-2210,-2182,-2142,-2084,-2066,-2060,-2051,-2048,-2016,-1982,-1955,-1908,-1877,-1894,-1961,-2026,-2029,-1998,
+-1945,-1892,-1828,-1762,-1720,-1681,-1654,-1619,-1548,-1454,-1346,-1218,-1108,-1015,-948,-929,-913,-877,-830,-777,
+-725,-663,-600,-531,-451,-360,-270,-176,-86,-5,79,146,202,261,312,373,443,506,571,682,
+837,972,962,941,923,931,974,1042,1125,1212,1287,1378,1462,1490,1456,1495,1564,1518,1467,1463,
+1480,1512,1553,1602,1648,1697,1775,1876,1981,2054,2117,2203,2289,2366,2403,2444,2440,2461,2518,2552,
+2585,2659,2766,2815,2861,2903,2954,2983,3014,3111,3174,3249,3325,3346,3291,3211,3105,3036,2999,2901,
+2629,2492,2492,2517,2529,2539,2540,2565,2586,2592,2630,2658,2653,2646,2683,2739,2784,2811,2800,2818,
+2903,2968,3090,3134,3135,3149,3164,3172,3196,3228,3233,3248,3247,3261,3265,3299,3327,3335,3320,3324,
+3320,3310,3297,3290,3285,3296,3290,3313,3333,3350,3407,3479,3580,3697,3715,3668,3690,3861,3938,3889,
+3901,3935,3949,3985,4015,4052,4064,4097,4099,4110,4148,4210,4272,4229,4254,4285,4359,4413,4400,4353,
+4311,4300,4278,4272,4331,4346,4353,4357,4305,4303,4307,4325,4327,4337,4345,4362,4381,4398,4415,4434,
+4443,4450,4475,4528,4606,4600,4558,4542,4533,4479,4430,4317,3972,3482,2994,2566,2224,1939,1860,2059,
+2381,2615,2793,2941,3004,3061,3109,3076,3048,3003,2940,2873,2809,2755,2718,2724,2853,2899,2676,2485,
+2370,2298,2258,2203,2185,2154,2122,2084,2033,1981,1936,1884,1822,1777,1733,1687,1638,1603,1561,1518,
+1473,1426,1374,1312,1255,1196,1188,1245,1208,1170,1139,1115,1083,1037,993,943,904,875,852,826,
+779,751,705,681,659,633,604,558,521,479,434,398,364,330,304,284,264,233,194,178,
+140,120,128,127,108,85,71,64,47,28,16,13,-3,-26,-49,-74,-95,-112,-122,-144,
+-153,-171,-172,-180,-186,-195,-210,-212,-224,-243,-264,-294,-310,-326,-344,-367,-395,-434,-469,-501,
+-531,-559,-573,-603,-648,-662,-688,-705,-727,-745,-771,-779,-801,-810,-822,-828,-833,-846,-858,-865,
+-863,-860,-867,-886,-884,-896,-911,-930,-942,-948,-950,-939,-963,-982,-998,-1009,-1037,-1058,-1072,-1083,
+-1086,-1097,-1106,-1123,-1135,-1145,-1155,-1168,-1185,-1174,-1189,-1200,-1214,-1220,-1232,-1245,-1250,-1255,-1253,-1251,
+-1256,-1252,-1251,-1244,-1243,-1242,-1238,-1237,-1239,-1227,-1224,-1210,-1210,-1194,-1171,-1168,-1164,-1162,-1161,-1160,
+-1154,-1148,-1135,-1121,-1117,-1114,-1112,-1113,-1113,-1116,-1109,-1100,-1092,-1078,-1080,-1083,-1080,-1079,-1076,-1074,
+-1072,-1064,-1060,-1060,-1058,-1058,-1059,-1054,-1053,-1054,-1050,-1046,-1056,-1049,-1047,-1044,-1039,-1027,-1017,-1012,
+-1006,-1005,-988,-988,-987,-982,-977,-958,-954,-947,-939,-931,-927,-920,-910,-903,-897,-891,-879,-879,
+-867,-857,-852,-853,-849,-841,-841,-837,-836,-832,-831,-824,-812,-807,-793,-787,-782,-775,-763,-755,
+-749,-735,-720,-709,-697,-689,-684,-678,-678,-666,-660,-647,-641,-632,-622,-613,-606,-599,-597,-590,
+-583,-578,-568,-557,-547,-535,-527,-520,-501,-495,-496,-496,-486,-480,-473,-466,-461,-448,-432,-422,
+-410,-397,-389,-373,-361,-344,-328,-308,-280,-264,-239,-231,-210,-190,-174,-156,-132,-111,-86,-65,
+-55,-44,-34,-7,-22,-44,-39,-20,3,17,18,15,32,51,60,69,74,84,87,103,
+111,130,144,151,161,184,209,241,276,296,312,329,359,386,409,429,460,485,505,530,
+565,610,651,686,716,731,735,758,790,829,870,909,945,974,999,1031,1067,1107,1157,1204,
+1243,1280,1307,1348,1387,1446,1490,1535,1577,1607,1633,1613,1578,1500,1371,1182,1087,1271,1640,2097,
+2501,2750,3023,3331,3448,3444,3377,3163,2902,2915,2831,2596,2462,2430,2643,2596,2649,2596,2507,2564,
+2598,2541,2489,2494,2505,2637,2718,2777,2673,2592,2506,2394,2324,2254,2183,2103,2039,1998,1961,1923,
+1883,1845,1812,1780,1751,1726,1712,1699,1693,1680,1664,1655,1652,1644,1641,1637,1612,1564,1527,1521,
+1516,1520,1505,1469,1448,1430,1415,1393,1367,1336,1321,1300,1260,1210,1153,1087,1010,927,855,797,
+732,666,608,585,583,538,497,412,259,112,-17,-124,-210,-274,-330,-385,-435,-460,-471,-481,
+-491,-517,-551,-595,-644,-698,-748,-783,-799,-807,-800,-797,-806,-805,-788,-761,-747,-749,-774,-818,
+-858,-871,-854,-823,-783,-757,-734,-740,-756,-733,-683,-643,-600,-556,-521,-509,-467,-430,-400,-357,
+-268,-174,-89,2,99,138,188,211,133,127,252,306,321,322,318,312,301,285,286,291,
+278,288,295,317,347,376,410,469,517,548,574,543,512,518,523,532,540,562,585,605,
+629,653,679,710,752,769,794,818,840,870,893,917,937,967,990,1011,1029,1051,1077,1095,
+1113,1131,1148,1163,1183,1199,1224,1241,1265,1286,1301,1312,1338,1350,1366,1382,1396,1410,1428,1442,
+1458,1467,1488,1498,1516,1529,1537,1553,1570,1597,1634,1643,1611,1596,1609,1601,1587,1573,1553,1551,
+1561,1557,1549,1544,1534,1539,1531,1534,1529,1521,1512,1517,1520,1523,1539,1548,1552,1563,1573,1588,
+1591,1604,1606,1621,1626,1640,1659,1682,1705,1730,1756,1786,1821,1844,1851,1871,1898,1903,1919,1933,
+1950,1982,2014,2071,2121,2104,2019,1983,2013,2079,2193,2136,2107,2109,2158,2282,2418,2497,2427,2257,
+2202,2226,2271,2304,2312,2302,2286,2275,2265,2266,2274,2287,2307,2326,2346,2358,2367,2376,2393,2438,
+2539,2528,2483,2481,2494,2513,2536,2545,2553,2544,2539,2552,2586,2616,2648,2682,2706,2725,2740,2760,
+2782,2808,2835,2855,2872,2884,2891,2921,2970,3026,3084,3118,3119,3085,3034,3042,3078,3123,3168,3210,
+3217,3187,3173,3228,3299,3383,3488,3560,3584,3591,3589,3574,3562,3561,3558,3556,3572,3594,3572,3566,
+3532,3542,3565,3587,3579,3550,3518,3471,3441,3436,3460,3502,3547,3541,3539,3525,3494,3454,3395,3321,
+3246,3184,3156,3164,3121,3106,3039,2916,2771,2641,2542,2475,2422,2380,2344,2306,2263,2253,2272,2286,
+2296,2302,2310,2333,2355,2355,2345,2339,2344,2340,2323,2300,2244,2109,1962,1886,1802,1756,1715,1685,
+1686,1685,1686,1695,1712,1723,1735,1741,1748,1759,1783,1829,1855,1873,1906,1944,1985,2040,2181,2280,
+2367,2386,2415,2423,2434,2438,2441,2444,2433,2415,2399,2375,2335,2286,2242,2192,2161,2143,2112,2077,
+2041,2010,1977,1953,1934,1916,1905,1899,1897,1894,1891,1888,1885,1872,1847,1826,1809,1802,1827,1880,
+1901,1899,1909,1908,1916,1942,1964,1989,1958,1968,2009,1963,1997,1985,1950,1958,1976,2035,2030,2045,
+1975,2003,2083,1996,1973,1943,1902,1861,1817,1672,1627,1602,1613,1533,1575,1557,1511,1485,1460,1449,
+1444,1440,1428,1418,1402,1390,1378,1361,1332,1332,1324,1269,1265,1261,1240,1215,1200,1175,1130,1120,
+1101,1070,1053,1025,1000,976,944,912,876,843,814,787,769,727,698,679,647,619,589,572,
+534,490,475,443,425,422,384,336,323,297,261,240,219,172,110,103,51,4,-40,-88,
+-137,-187,-238,-300,-336,-395,-463,-486,-527,-585,-635,-686,-725,-763,-808,-856,-881,-928,-977,-1018,
+-1052,-1079,-1119,-1153,-1209,-1278,-1335,-1347,-1364,-1441,-1501,-1470,-1496,-1602,-1607,-1595,-1577,-1586,-1619,-1662,
+-1716,-1815,-1917,-1985,-2041,-2088,-2134,-2192,-2255,-2315,-2365,-2417,-2460,-2507,-2556,-2597,-2637,-2669,-2698,-2746,
+-2794,-2833,-2872,-2927,-2973,-2976,-2863,-2837,-2864,-2900,-2968,-3036,-3102,-3157,-3212,-3281,-3327,-3355,-3367,-3367,
+-3378,-3422,-3473,-3488,-3508,-3548,-3590,-3617,-3663,-3692,-3682,-3665,-3653,-3678,-3713,-3748,-3821,-3904,-3923,-3967,
+-3984,-3982,-3971,-3961,-3956,-3977,-4039,-4067,-4009,-4024,-4033,-4034,-4028,-4020,-4023,-4019,-4024,-4036,-4033,-4030,
+-4020,-4011,-4004,-3990,-3975,-3964,-3944,-3932,-3920,-3908,-3905,-3894,-3890,-3882,-3870,-3857,-3839,-3816,-3794,-3769,
+-3739,-3696,-3636,-3556,-3466,-3425,-3351,-3287,-3316,-3341,-3299,-3123,-2864,-2771,-2726,-2702,-2680,-2667,-2639,-2616,
+-2573,-2527,-2503,-2488,-2467,-2443,-2433,-2424,-2415,-2410,-2411,-2409,-2416,-2411,-2408,-2421,-2441,-2464,-2445,-2441,
+-2367,-2253,-2261,-2293,-2277,-2228,-2169,-2112,-2092,-2083,-2069,-2028,-1973,-1939,-1904,-1887,-1902,-1962,-2015,-2023,
+-1996,-1957,-1911,-1859,-1802,-1752,-1712,-1708,-1672,-1600,-1510,-1392,-1251,-1127,-1037,-1024,-1029,-1045,-1035,-997,
+-915,-838,-782,-708,-609,-497,-388,-281,-186,-94,-18,54,123,172,221,281,340,400,444,504,
+613,780,901,902,888,883,893,950,1022,1087,1170,1248,1335,1424,1449,1416,1399,1453,1433,1373,
+1379,1383,1406,1453,1523,1599,1668,1734,1830,1929,2004,2068,2137,2211,2281,2334,2383,2406,2424,2461,
+2513,2556,2614,2722,2774,2817,2872,2916,2939,2955,3027,3130,3215,3254,3227,3162,3116,3046,2997,2945,
+2798,2510,2404,2403,2429,2454,2472,2484,2484,2470,2488,2500,2514,2539,2565,2609,2677,2731,2747,2745,
+2745,2820,2966,3234,3172,3095,3076,3100,3113,3131,3162,3190,3188,3193,3195,3217,3241,3254,3266,3265,
+3257,3254,3239,3230,3226,3227,3246,3235,3265,3284,3291,3339,3420,3530,3714,3750,3646,3621,3779,3861,
+3811,3849,3867,3890,3915,3938,3968,3996,4024,4039,4060,4114,4146,4206,4162,4214,4262,4329,4378,4369,
+4317,4264,4257,4280,4230,4235,4247,4260,4286,4288,4270,4280,4291,4304,4313,4318,4333,4358,4366,4386,
+4400,4413,4424,4456,4515,4562,4546,4517,4504,4487,4422,4336,4179,3745,3225,2707,2312,2034,1842,1891,
+2158,2458,2682,2802,2911,2997,3044,3065,3050,3026,2980,2922,2854,2784,2717,2668,2656,2730,2861,2685,
+2460,2332,2251,2202,2168,2147,2121,2090,2056,2009,1973,1920,1858,1812,1767,1717,1661,1618,1579,1549,
+1504,1467,1417,1358,1294,1247,1197,1170,1210,1189,1154,1122,1090,1056,1014,971,941,897,866,849,
+829,794,754,720,692,657,628,602,556,526,474,429,388,357,329,305,285,268,245,205,
+161,125,115,120,119,107,85,68,60,55,44,29,25,10,-13,-41,-71,-91,-114,-133,
+-154,-172,-189,-207,-200,-208,-212,-221,-235,-242,-257,-286,-299,-322,-318,-357,-367,-397,-446,-483,
+-516,-540,-567,-589,-609,-638,-679,-708,-722,-746,-769,-785,-797,-822,-829,-831,-849,-854,-868,-884,
+-898,-895,-898,-901,-912,-915,-918,-926,-937,-954,-972,-973,-977,-972,-988,-993,-1016,-1036,-1043,-1053,
+-1067,-1068,-1080,-1094,-1108,-1115,-1123,-1134,-1153,-1165,-1167,-1183,-1201,-1184,-1196,-1235,-1243,-1244,-1244,-1242,
+-1244,-1251,-1254,-1247,-1236,-1237,-1232,-1221,-1193,-1191,-1195,-1176,-1174,-1161,-1172,-1161,-1156,-1159,-1155,-1147,
+-1148,-1144,-1142,-1128,-1127,-1128,-1120,-1115,-1108,-1109,-1110,-1101,-1094,-1093,-1072,-1083,-1084,-1083,-1078,-1071,
+-1070,-1069,-1066,-1065,-1066,-1064,-1068,-1066,-1060,-1061,-1061,-1063,-1056,-1060,-1060,-1052,-1038,-1037,-1039,-1032,
+-1029,-1024,-1014,-1012,-1000,-994,-993,-987,-978,-972,-962,-955,-946,-938,-929,-928,-918,-908,-902,-883,
+-876,-873,-861,-858,-854,-856,-854,-846,-850,-845,-854,-847,-842,-831,-823,-812,-809,-800,-796,-787,
+-772,-762,-754,-740,-725,-711,-710,-696,-692,-692,-680,-676,-665,-654,-648,-638,-637,-621,-614,-608,
+-599,-593,-587,-575,-568,-557,-547,-543,-528,-530,-530,-519,-516,-508,-499,-490,-480,-470,-458,-446,
+-435,-432,-416,-409,-397,-386,-373,-352,-327,-304,-285,-260,-254,-235,-211,-185,-170,-143,-129,-104,
+-81,-64,-53,-59,-39,-48,-50,-44,-35,-24,-11,-1,3,4,26,42,48,52,70,76,
+90,103,114,121,131,151,178,208,234,266,278,296,315,350,373,394,421,450,469,494,
+533,571,610,641,674,698,707,733,763,795,830,876,917,945,973,1000,1039,1086,1129,1177,
+1222,1259,1300,1328,1368,1408,1462,1501,1534,1573,1621,1629,1635,1581,1502,1355,1145,1075,1259,1547,
+2018,2438,2733,2991,3299,3457,3387,3340,3112,2874,2947,2770,2531,2394,2451,2635,2457,2449,2462,2457,
+2523,2555,2532,2473,2453,2491,2648,2755,2790,2648,2542,2471,2402,2335,2259,2174,2098,2036,1997,1963,
+1921,1882,1841,1803,1774,1747,1716,1700,1688,1684,1678,1669,1663,1661,1653,1649,1644,1631,1613,1585,
+1569,1545,1532,1519,1502,1483,1463,1443,1409,1378,1341,1313,1292,1271,1216,1141,1070,985,910,837,
+781,714,641,586,582,598,578,518,384,197,49,-66,-156,-222,-263,-311,-367,-402,-417,-424,
+-428,-445,-476,-507,-544,-592,-645,-697,-742,-776,-795,-804,-803,-806,-798,-779,-758,-737,-747,-766,
+-804,-831,-836,-810,-785,-762,-735,-720,-729,-744,-728,-691,-668,-607,-584,-573,-541,-517,-488,-462,
+-392,-282,-201,-127,-57,13,53,119,181,214,141,121,227,266,279,283,280,268,274,286,
+301,291,296,316,343,360,386,423,468,516,551,559,540,535,538,539,553,562,588,615,
+639,655,683,717,763,789,802,831,847,872,896,923,951,985,1008,1031,1051,1071,1087,1111,
+1129,1147,1168,1184,1205,1221,1238,1264,1282,1303,1322,1327,1352,1373,1387,1400,1411,1425,1442,1456,
+1468,1483,1495,1517,1535,1550,1562,1569,1580,1602,1601,1624,1629,1602,1664,1660,1615,1600,1594,1571,
+1562,1565,1565,1555,1550,1540,1536,1526,1527,1528,1534,1541,1546,1553,1554,1556,1562,1556,1561,1561,
+1576,1578,1587,1594,1605,1617,1637,1656,1677,1701,1741,1782,1805,1834,1867,1851,1855,1866,1889,1934,
+1987,2015,2047,2070,2077,2033,1990,1983,1974,2016,2126,2173,2094,2073,2087,2193,2422,2509,2357,2222,
+2169,2191,2240,2278,2305,2307,2296,2279,2269,2260,2261,2270,2284,2301,2316,2333,2344,2353,2368,2386,
+2426,2536,2524,2455,2454,2478,2501,2521,2529,2530,2529,2535,2549,2581,2616,2649,2675,2696,2706,2722,
+2740,2756,2777,2805,2827,2852,2885,2905,2930,2952,2989,3053,3104,3126,3108,3058,3032,3062,3121,3175,
+3211,3236,3236,3256,3262,3303,3338,3451,3584,3622,3638,3627,3621,3616,3598,3586,3590,3608,3617,3574,
+3540,3523,3492,3514,3557,3570,3555,3540,3497,3435,3424,3435,3453,3477,3457,3449,3415,3376,3351,3274,
+3192,3116,3109,3121,3119,3080,3019,2915,2810,2687,2585,2508,2447,2400,2364,2333,2306,2284,2283,2293,
+2301,2313,2325,2344,2380,2405,2420,2434,2423,2435,2431,2407,2364,2296,2167,2045,1951,1866,1819,1771,
+1744,1746,1742,1742,1756,1773,1786,1799,1805,1810,1834,1880,1926,1947,1973,2009,2047,2078,2126,2259,
+2351,2414,2468,2510,2531,2534,2539,2529,2524,2509,2483,2468,2447,2397,2346,2309,2279,2252,2238,2221,
+2191,2157,2126,2095,2074,2048,2029,2012,2001,1983,1967,1961,1957,1948,1945,1931,1912,1892,1887,1926,
+1974,1965,1968,1957,1971,2017,2019,2031,2073,2021,2061,2070,2071,2109,2054,2049,1995,1994,2022,2051,
+2037,1971,2057,2118,2044,1974,1939,1875,1879,1842,1721,1663,1632,1645,1602,1611,1597,1549,1536,1526,
+1509,1491,1481,1481,1463,1458,1447,1431,1404,1399,1373,1345,1344,1325,1305,1274,1270,1247,1212,1191,
+1181,1153,1124,1099,1071,1041,1018,984,956,925,889,859,828,791,770,756,711,685,670,654,
+611,563,554,522,492,484,463,425,413,377,343,316,293,250,211,187,163,109,65,21,
+-18,-70,-127,-173,-226,-263,-350,-372,-408,-466,-518,-572,-616,-656,-699,-741,-768,-814,-864,-909,
+-953,-984,-1016,-1050,-1075,-1155,-1228,-1272,-1265,-1295,-1417,-1452,-1483,-1485,-1522,-1535,-1531,-1512,-1534,-1579,
+-1629,-1703,-1793,-1866,-1925,-1979,-2032,-2084,-2143,-2210,-2264,-2312,-2365,-2412,-2458,-2503,-2545,-2584,-2603,-2652,
+-2666,-2700,-2734,-2774,-2820,-2868,-2934,-3003,-2975,-2841,-2820,-2857,-2920,-2983,-3045,-3116,-3191,-3233,-3253,-3275,
+-3289,-3314,-3354,-3396,-3422,-3453,-3491,-3527,-3564,-3581,-3601,-3611,-3585,-3589,-3624,-3659,-3737,-3844,-3917,-3961,
+-3990,-4005,-4011,-4007,-4003,-4000,-4011,-4045,-4079,-4064,-4051,-4006,-4010,-4033,-4022,-4026,-4018,-4027,-4043,-4041,
+-4036,-4034,-4022,-4002,-3990,-3975,-3954,-3937,-3920,-3908,-3899,-3894,-3892,-3890,-3881,-3875,-3868,-3854,-3836,-3812,
+-3784,-3760,-3721,-3663,-3583,-3495,-3448,-3428,-3397,-3402,-3384,-3337,-3158,-2896,-2794,-2740,-2718,-2695,-2688,-2674,
+-2640,-2604,-2569,-2543,-2521,-2501,-2483,-2479,-2480,-2477,-2473,-2482,-2492,-2486,-2473,-2455,-2500,-2547,-2553,-2489,
+-2384,-2269,-2300,-2334,-2340,-2328,-2291,-2230,-2157,-2116,-2098,-2076,-2031,-1980,-1945,-1907,-1893,-1915,-1965,-2003,
+-2011,-1998,-1971,-1940,-1905,-1865,-1809,-1767,-1743,-1709,-1652,-1569,-1452,-1320,-1214,-1143,-1117,-1138,-1177,-1164,
+-1108,-1050,-962,-879,-789,-672,-554,-420,-293,-198,-106,-29,40,97,142,182,229,280,340,398,
+455,571,721,834,871,866,861,865,927,1002,1065,1134,1214,1316,1379,1388,1360,1335,1367,1356,
+1320,1311,1306,1343,1380,1439,1506,1611,1679,1777,1871,1952,2017,2076,2126,2182,2252,2303,2355,2402,
+2424,2474,2528,2578,2662,2708,2763,2833,2911,2915,2917,2958,3027,3111,3144,3089,3029,2998,2956,2927,
+2866,2703,2439,2322,2315,2348,2380,2402,2418,2394,2385,2401,2416,2437,2458,2492,2550,2618,2679,2677,
+2660,2668,2745,2882,3057,3159,3041,3013,3035,3060,3080,3097,3120,3130,3134,3143,3149,3150,3168,3200,
+3199,3198,3183,3159,3160,3167,3190,3195,3191,3216,3232,3238,3299,3395,3529,3693,3713,3635,3590,3747,
+3815,3762,3745,3770,3808,3845,3869,3900,3947,3959,3990,4012,4070,4076,4100,4104,4172,4231,4288,4301,
+4298,4284,4253,4271,4205,4194,4197,4203,4214,4232,4248,4257,4259,4275,4287,4295,4296,4305,4332,4343,
+4355,4363,4381,4401,4444,4495,4505,4498,4481,4453,4438,4374,4258,4005,3526,3007,2544,2169,1897,1793,
+2009,2293,2554,2709,2826,2921,2991,3027,3034,3030,3010,2947,2895,2828,2759,2692,2622,2573,2557,2556,
+2501,2393,2295,2216,2160,2127,2108,2070,2043,2013,1969,1947,1888,1845,1803,1754,1701,1649,1600,1560,
+1531,1496,1451,1401,1327,1267,1229,1196,1158,1194,1178,1136,1106,1077,1030,1005,975,946,898,869,
+854,826,783,749,710,681,652,618,596,573,534,484,438,391,354,331,311,288,270,252,
+223,179,135,119,121,121,107,90,75,58,50,46,42,33,17,15,-26,-71,-97,-116,
+-139,-160,-178,-198,-222,-223,-244,-254,-253,-265,-254,-278,-305,-319,-328,-332,-342,-371,-414,-448,
+-484,-518,-549,-576,-598,-626,-653,-685,-706,-736,-758,-783,-806,-825,-833,-846,-844,-853,-876,-894,
+-904,-914,-916,-916,-919,-931,-933,-945,-952,-951,-956,-973,-991,-992,-992,-998,-1006,-1015,-1029,-1040,
+-1045,-1054,-1061,-1072,-1087,-1098,-1110,-1123,-1133,-1145,-1162,-1176,-1177,-1200,-1189,-1226,-1220,-1224,-1235,-1229,
+-1231,-1236,-1235,-1238,-1238,-1233,-1229,-1232,-1210,-1218,-1215,-1206,-1214,-1210,-1196,-1182,-1170,-1152,-1129,-1142,
+-1152,-1129,-1128,-1131,-1130,-1125,-1116,-1116,-1109,-1104,-1099,-1096,-1080,-1082,-1072,-1078,-1077,-1084,-1078,-1076,
+-1076,-1080,-1068,-1072,-1076,-1078,-1081,-1078,-1070,-1071,-1074,-1067,-1063,-1052,-1054,-1047,-1046,-1041,-1041,-1041,
+-1039,-1038,-1031,-1027,-1021,-1013,-1009,-1007,-997,-983,-983,-976,-964,-957,-949,-939,-938,-927,-914,-907,
+-894,-891,-879,-886,-881,-876,-859,-877,-872,-861,-852,-855,-851,-852,-841,-825,-821,-815,-805,-797,
+-784,-781,-766,-770,-757,-749,-738,-725,-725,-716,-712,-699,-686,-679,-670,-665,-653,-640,-624,-622,
+-613,-603,-599,-604,-592,-584,-571,-567,-560,-549,-543,-540,-535,-529,-529,-518,-507,-492,-486,-476,
+-465,-457,-446,-440,-419,-411,-400,-386,-377,-358,-341,-318,-293,-275,-248,-229,-212,-186,-174,-157,
+-129,-106,-81,-69,-73,-61,-65,-71,-67,-52,-38,-33,2,-19,-9,0,17,31,28,37,
+53,66,81,91,98,117,141,170,198,223,247,264,279,312,339,364,388,415,439,465,
+498,536,574,601,630,661,684,709,726,764,802,840,884,918,952,983,1019,1059,1098,1146,
+1189,1236,1276,1306,1337,1370,1417,1453,1492,1535,1569,1608,1630,1615,1575,1484,1318,1115,1050,1206,
+1491,1955,2377,2651,2912,3199,3396,3410,3289,3115,2885,2948,2853,2561,2332,2336,2387,2315,2309,2352,
+2439,2505,2506,2511,2473,2455,2475,2546,2684,2784,2648,2499,2416,2388,2320,2244,2156,2091,2043,1998,
+1962,1922,1879,1838,1801,1763,1731,1707,1699,1690,1678,1671,1670,1672,1671,1666,1656,1649,1634,1622,
+1615,1621,1613,1570,1525,1515,1503,1487,1467,1428,1375,1337,1308,1276,1242,1179,1102,1035,960,893,
+824,758,684,611,585,583,606,594,515,332,157,20,-84,-159,-201,-234,-280,-328,-352,-370,
+-383,-398,-421,-454,-483,-509,-548,-594,-640,-687,-726,-758,-785,-794,-793,-778,-755,-734,-716,-729,
+-756,-776,-797,-795,-786,-764,-739,-721,-711,-732,-746,-714,-685,-676,-660,-631,-611,-574,-493,-458,
+-454,-373,-289,-211,-146,-102,-71,-36,20,54,107,137,140,84,143,182,217,251,258,255,
+265,264,275,317,345,345,361,397,436,482,538,565,569,555,555,557,561,576,590,605,
+633,664,699,727,766,825,825,848,874,886,907,938,966,988,1025,1050,1077,1092,1114,1127,
+1146,1164,1186,1207,1225,1241,1258,1278,1303,1327,1344,1349,1373,1394,1410,1422,1435,1446,1455,1476,
+1487,1499,1511,1527,1550,1576,1591,1600,1603,1621,1625,1631,1667,1673,1652,1634,1638,1625,1603,1581,
+1572,1569,1553,1557,1559,1559,1551,1555,1554,1557,1556,1555,1549,1543,1554,1557,1546,1536,1542,1549,
+1555,1561,1571,1587,1607,1629,1639,1651,1670,1689,1715,1745,1780,1815,1840,1893,1858,1866,1878,1907,
+1937,1965,2009,2047,2046,2012,1950,1948,1974,2012,2074,2056,2052,2049,2041,2055,2151,2394,2427,2249,
+2141,2141,2187,2235,2273,2292,2295,2283,2270,2261,2256,2257,2266,2274,2289,2305,2324,2340,2357,2359,
+2373,2388,2409,2424,2427,2435,2452,2476,2493,2500,2507,2520,2526,2545,2575,2607,2641,2664,2680,2692,
+2705,2720,2735,2754,2774,2799,2829,2876,2886,2891,2901,2931,2996,3065,3122,3133,3081,3036,3053,3103,
+3164,3225,3260,3271,3267,3275,3271,3284,3349,3508,3615,3658,3666,3645,3642,3632,3608,3595,3597,3594,
+3533,3454,3426,3419,3454,3486,3469,3438,3454,3476,3429,3382,3386,3384,3417,3403,3361,3322,3274,3244,
+3184,3138,3092,3062,3087,3078,3028,2956,2846,2722,2619,2537,2468,2417,2384,2352,2330,2311,2302,2303,
+2312,2319,2334,2362,2407,2444,2466,2512,2519,2531,2542,2493,2465,2422,2333,2212,2105,1999,1928,1873,
+1829,1807,1810,1804,1804,1817,1833,1848,1862,1871,1882,1915,1986,2009,2026,2065,2116,2147,2158,2185,
+2288,2407,2499,2580,2644,2664,2658,2637,2624,2607,2581,2567,2546,2522,2469,2426,2393,2370,2345,2321,
+2303,2285,2253,2223,2193,2170,2144,2133,2118,2103,2092,2084,2076,2062,2038,2021,2009,1989,1971,1968,
+1980,2048,2027,2034,2053,2059,2104,2091,2091,2135,2116,2158,2145,2169,2209,2150,2168,2063,2135,2174,
+2229,2196,2081,2083,2135,2054,1967,1886,1882,1895,1854,1733,1697,1669,1653,1676,1675,1631,1614,1599,
+1573,1563,1542,1541,1532,1525,1504,1480,1479,1468,1423,1403,1412,1401,1362,1356,1345,1312,1269,1271,
+1246,1217,1197,1174,1142,1114,1089,1058,1030,996,962,937,911,888,864,833,807,780,747,740,
+689,638,627,580,550,545,529,500,474,456,427,402,368,340,311,291,249,210,172,128,
+82,42,-5,-61,-115,-167,-229,-252,-297,-350,-408,-452,-498,-545,-583,-628,-655,-692,-740,-797,
+-850,-889,-922,-972,-1004,-1053,-1130,-1185,-1223,-1260,-1277,-1345,-1362,-1375,-1424,-1446,-1454,-1428,-1432,-1485,
+-1521,-1578,-1659,-1736,-1817,-1878,-1941,-1991,-2041,-2099,-2162,-2216,-2259,-2311,-2361,-2410,-2449,-2500,-2532,-2562,
+-2601,-2645,-2666,-2699,-2738,-2775,-2820,-2858,-2919,-3012,-3046,-2938,-2894,-2935,-2900,-2923,-2965,-3041,-3091,-3131,
+-3157,-3184,-3229,-3273,-3300,-3320,-3352,-3382,-3411,-3452,-3515,-3555,-3584,-3565,-3529,-3559,-3617,-3739,-3843,-3913,
+-3961,-3998,-4026,-4033,-4038,-4044,-4045,-4045,-4059,-4071,-4042,-4018,-3999,-4011,-4048,-4038,-4017,-4015,-4022,-4042,
+-4047,-4041,-4034,-4024,-4011,-3971,-3966,-3950,-3926,-3911,-3897,-3882,-3880,-3886,-3885,-3879,-3879,-3879,-3865,-3846,
+-3825,-3799,-3781,-3744,-3685,-3602,-3512,-3459,-3493,-3482,-3459,-3408,-3339,-3141,-2898,-2789,-2737,-2702,-2690,-2688,
+-2673,-2652,-2621,-2602,-2595,-2569,-2552,-2528,-2508,-2524,-2531,-2541,-2560,-2558,-2556,-2545,-2534,-2579,-2619,-2587,
+-2457,-2292,-2299,-2328,-2361,-2380,-2382,-2340,-2264,-2172,-2121,-2100,-2074,-2044,-1998,-1949,-1915,-1915,-1942,-1980,
+-2000,-2010,-2011,-1995,-1967,-1938,-1900,-1858,-1805,-1755,-1720,-1681,-1605,-1500,-1367,-1272,-1216,-1207,-1280,-1299,
+-1262,-1209,-1155,-1072,-976,-872,-754,-622,-482,-345,-238,-153,-59,8,67,111,148,195,238,293,
+360,432,547,675,791,822,838,854,875,930,999,1050,1108,1188,1271,1313,1305,1287,1269,1231,
+1236,1185,1184,1217,1268,1302,1363,1447,1526,1619,1699,1790,1876,1954,2003,2042,2087,2166,2246,2304,
+2357,2398,2433,2484,2548,2625,2679,2704,2751,2793,2828,2835,2838,2895,2988,3059,2959,2895,2887,2851,
+2822,2737,2516,2288,2226,2223,2264,2302,2332,2317,2309,2324,2339,2355,2369,2384,2416,2468,2548,2638,
+2627,2599,2619,2669,2728,2791,2858,2879,2912,2951,2988,3033,3048,3054,3064,3066,3095,3106,3111,3120,
+3140,3155,3159,3135,3109,3101,3108,3129,3151,3159,3194,3209,3203,3248,3384,3516,3658,3643,3588,3577,
+3615,3761,3764,3630,3638,3705,3763,3809,3855,3885,3904,3925,3947,3999,4005,4054,4057,4100,4160,4211,
+4226,4220,4227,4184,4177,4183,4224,4183,4174,4186,4195,4205,4219,4242,4258,4266,4273,4275,4284,4304,
+4315,4324,4344,4360,4380,4429,4466,4458,4456,4442,4425,4365,4305,4208,3833,3341,2837,2396,2028,1775,
+1780,2059,2362,2560,2712,2847,2916,2976,3012,3004,2994,2966,2919,2871,2804,2731,2654,2577,2512,2471,
+2461,2466,2397,2287,2193,2135,2100,2077,2038,2008,1975,1943,1909,1872,1831,1778,1727,1678,1629,1583,
+1543,1503,1474,1432,1376,1307,1248,1220,1197,1141,1178,1163,1118,1094,1056,1011,992,953,917,894,
+867,841,822,783,745,702,658,626,611,593,569,542,506,455,426,376,329,312,289,272,
+252,227,191,146,122,124,125,112,98,82,65,48,43,41,22,11,-8,-1,-63,-97,
+-121,-144,-164,-180,-197,-215,-225,-242,-262,-268,-305,-302,-312,-316,-314,-331,-291,-342,-362,-402,
+-436,-480,-510,-541,-573,-601,-626,-655,-683,-708,-737,-750,-782,-803,-833,-834,-858,-869,-881,-891,
+-897,-912,-919,-930,-931,-937,-940,-945,-954,-964,-964,-965,-974,-990,-1003,-1009,-1007,-1012,-1019,-1035,
+-1043,-1046,-1054,-1064,-1074,-1087,-1101,-1111,-1127,-1140,-1150,-1165,-1177,-1188,-1170,-1203,-1217,-1220,-1201,-1196,
+-1206,-1194,-1200,-1216,-1228,-1228,-1223,-1219,-1213,-1195,-1201,-1194,-1183,-1186,-1177,-1169,-1163,-1169,-1175,-1178,
+-1167,-1158,-1104,-1105,-1116,-1115,-1104,-1101,-1101,-1092,-1094,-1090,-1084,-1083,-1073,-1074,-1055,-1073,-1074,-1072,
+-1073,-1072,-1082,-1065,-1077,-1078,-1083,-1071,-1077,-1075,-1073,-1065,-1069,-1063,-1056,-1058,-1051,-1051,-1049,-1049,
+-1044,-1041,-1040,-1034,-1031,-1028,-1025,-1018,-1013,-1001,-993,-994,-988,-979,-971,-961,-956,-943,-937,-928,
+-916,-907,-903,-892,-888,-885,-888,-879,-866,-870,-861,-866,-856,-854,-856,-846,-835,-824,-812,-805,
+-799,-793,-780,-769,-774,-773,-774,-763,-750,-734,-736,-726,-720,-705,-693,-686,-680,-671,-662,-648,
+-640,-633,-628,-614,-608,-609,-605,-595,-585,-577,-566,-555,-551,-543,-545,-538,-535,-525,-513,-503,
+-492,-484,-473,-459,-450,-438,-424,-413,-401,-393,-371,-352,-308,-265,-271,-266,-237,-217,-206,-178,
+-153,-134,-142,-110,-100,-102,-91,-84,-82,-82,-74,-54,-47,-42,-18,-22,-22,-7,-5,5,
+22,32,45,64,76,86,101,130,152,178,204,230,250,279,315,340,362,387,410,436,
+471,505,539,572,597,624,653,675,699,730,775,806,840,882,917,952,987,1022,1063,1105,
+1146,1189,1233,1269,1304,1327,1359,1397,1433,1473,1510,1540,1578,1598,1590,1542,1463,1296,1082,1011,
+1159,1458,1932,2350,2666,2958,3163,3334,3574,3399,3143,3009,2923,2730,2435,2217,2174,2196,2213,2243,
+2306,2369,2393,2417,2430,2439,2434,2452,2512,2643,2678,2626,2505,2440,2379,2298,2216,2145,2080,2028,
+1978,1942,1898,1866,1836,1800,1761,1730,1707,1705,1700,1683,1678,1684,1698,1697,1684,1675,1664,1645,
+1633,1620,1623,1635,1595,1544,1514,1492,1477,1446,1410,1366,1329,1302,1249,1213,1155,1084,1016,951,
+891,830,754,682,615,580,593,615,597,478,291,131,6,-84,-145,-179,-213,-254,-297,-324,
+-350,-371,-398,-427,-459,-484,-508,-539,-574,-612,-653,-689,-722,-751,-766,-771,-768,-753,-728,-704,
+-707,-725,-738,-757,-777,-780,-772,-757,-732,-720,-735,-739,-701,-679,-668,-656,-641,-608,-569,-525,
+-484,-433,-358,-283,-219,-160,-122,-109,-93,-69,-35,3,45,89,114,76,73,164,323,239,
+228,238,253,296,322,323,336,366,398,437,484,530,568,575,566,571,574,584,604,623,
+646,687,723,732,753,792,827,845,882,900,910,938,973,996,1029,1067,1093,1118,1132,1155,
+1166,1187,1209,1233,1250,1264,1283,1297,1319,1342,1363,1377,1393,1414,1424,1439,1455,1470,1478,1492,
+1509,1518,1531,1546,1566,1587,1605,1624,1632,1645,1663,1670,1676,1682,1682,1646,1583,1586,1597,1614,
+1629,1631,1623,1606,1589,1579,1577,1566,1567,1571,1566,1562,1540,1549,1552,1552,1544,1542,1543,1553,
+1555,1556,1567,1575,1586,1606,1621,1636,1656,1679,1704,1737,1779,1812,1919,1926,1926,1864,1849,1857,
+1889,1927,1959,1996,2004,1968,1926,1936,1967,2012,2110,2092,2013,2016,2022,2020,2040,2126,2312,2264,
+2107,2085,2118,2174,2232,2260,2272,2273,2269,2260,2255,2249,2248,2255,2264,2277,2300,2323,2332,2341,
+2347,2359,2371,2383,2390,2421,2416,2433,2451,2472,2488,2495,2503,2512,2532,2566,2598,2622,2640,2659,
+2679,2694,2710,2731,2771,2750,2769,2804,2839,2853,2853,2848,2873,2935,2998,3084,3141,3119,3056,3045,
+3079,3134,3199,3252,3279,3296,3309,3326,3264,3274,3354,3529,3640,3667,3642,3630,3598,3533,3494,3458,
+3478,3404,3364,3335,3317,3337,3336,3283,3260,3322,3394,3401,3353,3290,3330,3389,3397,3334,3299,3240,
+3163,3102,3090,3073,3051,3046,3034,2973,2886,2768,2654,2563,2488,2429,2392,2370,2350,2339,2329,2328,
+2331,2337,2353,2380,2411,2458,2491,2536,2581,2627,2667,2647,2591,2528,2476,2374,2257,2135,2040,1978,
+1929,1889,1870,1870,1862,1869,1880,1897,1912,1922,1933,1949,1988,2053,2082,2099,2138,2188,2214,2217,
+2231,2292,2447,2596,2705,2770,2798,2779,2760,2743,2711,2691,2673,2645,2603,2556,2513,2474,2442,2422,
+2395,2371,2344,2325,2301,2278,2261,2243,2230,2215,2203,2203,2191,2167,2152,2126,2081,2093,2083,2063,
+2070,2054,2106,2116,2103,2165,2131,2183,2183,2198,2208,2207,2255,2238,2277,2309,2233,2201,2105,2249,
+2250,2302,2248,2118,2105,2159,2054,2032,1917,1899,1935,1855,1732,1729,1728,1719,1751,1700,1668,1663,
+1641,1631,1620,1602,1609,1594,1576,1548,1547,1537,1488,1477,1479,1466,1432,1419,1411,1376,1333,1334,
+1323,1286,1264,1241,1216,1185,1161,1134,1105,1069,1036,1013,989,956,926,904,865,839,821,811,
+775,720,695,682,649,615,592,571,544,528,504,477,454,409,387,362,333,302,266,229,
+190,141,92,49,-6,-53,-120,-134,-182,-243,-287,-337,-389,-434,-477,-524,-555,-584,-635,-678,
+-724,-787,-824,-868,-908,-949,-987,-1066,-1086,-1119,-1174,-1212,-1265,-1316,-1337,-1347,-1365,-1370,-1361,-1391,
+-1426,-1471,-1541,-1619,-1695,-1772,-1841,-1896,-1943,-1995,-2053,-2113,-2167,-2212,-2258,-2307,-2358,-2404,-2438,-2489,
+-2514,-2547,-2599,-2638,-2679,-2729,-2763,-2797,-2822,-2860,-2934,-3002,-2976,-2993,-2993,-3035,-3052,-2981,-2982,-3042,
+-3133,-3159,-3175,-3191,-3247,-3310,-3343,-3321,-3300,-3333,-3369,-3396,-3500,-3558,-3568,-3561,-3537,-3599,-3719,-3807,
+-3872,-3932,-3992,-4024,-4040,-4051,-4054,-4046,-4039,-4056,-4075,-4056,-3984,-3961,-3996,-4026,-4072,-4045,-4023,-4020,
+-4034,-4042,-4042,-4031,-4016,-4005,-3986,-3969,-3940,-3922,-3896,-3883,-3876,-3873,-3876,-3881,-3878,-3881,-3883,-3870,
+-3852,-3835,-3811,-3794,-3759,-3696,-3611,-3518,-3445,-3429,-3465,-3441,-3378,-3308,-3097,-2882,-2777,-2727,-2703,-2700,
+-2683,-2662,-2645,-2627,-2625,-2631,-2626,-2615,-2588,-2557,-2573,-2595,-2614,-2626,-2617,-2611,-2620,-2628,-2670,-2655,
+-2584,-2414,-2342,-2339,-2363,-2408,-2436,-2424,-2369,-2270,-2172,-2123,-2098,-2077,-2054,-2015,-1977,-1956,-1947,-1957,
+-1987,-1999,-2006,-2006,-2005,-1985,-1956,-1924,-1887,-1839,-1786,-1730,-1682,-1620,-1527,-1408,-1319,-1270,-1334,-1369,
+-1346,-1321,-1293,-1232,-1162,-1060,-940,-806,-676,-550,-422,-295,-191,-112,-41,25,84,126,180,217,
+258,318,425,510,645,744,779,815,856,895,944,989,1031,1086,1149,1194,1210,1209,1187,1134,
+1096,1130,1098,1098,1132,1185,1237,1297,1395,1488,1573,1640,1719,1797,1881,1920,1946,2001,2075,2178,
+2256,2301,2369,2402,2448,2513,2588,2642,2663,2697,2703,2726,2734,2743,2784,2835,2849,2838,2796,2780,
+2755,2707,2582,2318,2160,2129,2152,2192,2224,2265,2270,2264,2271,2300,2326,2352,2358,2362,2409,2485,
+2547,2558,2545,2559,2581,2611,2651,2701,2730,2808,2881,2922,2956,2981,2995,3002,3003,3042,3054,3079,
+3087,3086,3114,3113,3096,3071,3059,3059,3070,3098,3120,3158,3181,3173,3216,3347,3494,3603,3588,3589,
+3575,3530,3626,3687,3624,3646,3697,3663,3725,3802,3832,3864,3859,3876,3930,3957,3979,4009,4027,4085,
+4137,4154,4158,4161,4130,4114,4123,4133,4137,4144,4156,4162,4179,4198,4221,4233,4242,4247,4255,4257,
+4273,4282,4289,4310,4348,4397,4438,4445,4425,4436,4418,4388,4301,4248,4101,3658,3154,2648,2212,1897,
+1726,1860,2145,2387,2578,2729,2834,2898,2962,2980,2980,2961,2923,2882,2832,2772,2697,2615,2539,2473,
+2434,2443,2525,2468,2292,2176,2112,2072,2040,2012,1983,1946,1913,1877,1849,1809,1751,1696,1653,1607,
+1567,1532,1490,1448,1415,1349,1288,1235,1213,1195,1142,1158,1142,1102,1067,1028,1023,1007,969,935,
+902,865,822,798,776,748,706,658,619,604,600,582,556,519,477,424,396,331,304,286,
+267,249,221,191,151,123,117,113,110,103,90,72,54,39,28,12,-1,-17,-38,-30,
+-84,-128,-146,-159,-177,-192,-209,-224,-245,-267,-287,-302,-301,-322,-321,-333,-346,-350,-346,-340,
+-393,-435,-467,-503,-540,-566,-597,-613,-641,-664,-690,-728,-761,-784,-816,-840,-857,-875,-889,-891,
+-902,-902,-906,-936,-949,-951,-955,-956,-954,-964,-974,-977,-983,-982,-985,-1003,-1018,-1030,-1028,-1029,
+-1036,-1039,-1059,-1067,-1074,-1088,-1100,-1115,-1126,-1138,-1152,-1162,-1171,-1183,-1194,-1202,-1203,-1207,-1218,-1230,
+-1237,-1235,-1236,-1234,-1226,-1217,-1214,-1204,-1209,-1197,-1196,-1194,-1184,-1173,-1165,-1163,-1157,-1159,-1175,-1193,
+-1191,-1173,-1130,-1118,-1154,-1132,-1070,-1092,-1090,-1073,-1082,-1084,-1070,-1066,-1077,-1066,-1074,-1041,-1070,-1074,
+-1072,-1065,-1078,-1082,-1040,-1076,-1074,-1077,-1066,-1064,-1079,-1069,-1063,-1068,-1067,-1068,-1067,-1067,-1063,-1058,
+-1058,-1054,-1048,-1052,-1050,-1050,-1035,-1034,-1025,-1017,-1010,-1012,-1008,-999,-990,-985,-977,-962,-960,-950,
+-942,-927,-921,-916,-902,-883,-894,-892,-895,-901,-876,-900,-896,-833,-839,-854,-851,-848,-829,-824,
+-816,-810,-792,-786,-783,-778,-783,-781,-765,-753,-739,-731,-722,-717,-710,-701,-694,-690,-682,-669,
+-661,-648,-641,-635,-624,-614,-616,-612,-608,-596,-579,-582,-572,-564,-552,-551,-551,-550,-536,-529,
+-518,-509,-500,-485,-473,-453,-445,-437,-426,-414,-401,-380,-356,-357,-340,-306,-274,-266,-262,-237,
+-192,-160,-151,-145,-146,-137,-122,-109,-100,-99,-95,-87,-75,-66,-44,-44,-36,-28,-18,-15,
+-8,7,18,35,52,66,76,94,109,133,165,194,219,252,287,320,339,361,388,409,
+439,474,507,533,561,591,617,640,663,695,726,765,799,830,868,901,936,972,1008,1049,
+1089,1126,1167,1208,1238,1279,1302,1340,1373,1400,1420,1472,1513,1538,1550,1541,1508,1430,1246,1024,
+971,1145,1487,1897,2302,2605,2877,3080,3283,3476,3394,3290,3109,2865,2618,2261,2114,2086,2104,2134,
+2192,2261,2325,2339,2393,2428,2434,2438,2459,2508,2624,2650,2582,2502,2437,2366,2281,2199,2116,2053,
+2007,1960,1923,1888,1857,1819,1775,1744,1723,1704,1694,1696,1698,1701,1713,1723,1726,1717,1710,1685,
+1665,1652,1639,1619,1621,1598,1544,1524,1510,1493,1458,1418,1378,1336,1300,1241,1191,1139,1079,1019,
+950,884,824,748,679,625,604,631,648,601,442,271,124,8,-73,-130,-164,-205,-248,-289,
+-325,-356,-383,-415,-445,-475,-503,-522,-544,-574,-607,-642,-676,-704,-724,-735,-745,-753,-749,-730,
+-704,-696,-701,-719,-746,-766,-774,-784,-773,-753,-735,-739,-737,-696,-683,-662,-651,-633,-617,-582,
+-546,-499,-428,-352,-290,-221,-176,-145,-131,-124,-110,-78,-45,-9,25,53,78,89,78,126,
+155,197,224,246,267,287,310,341,363,393,427,462,499,552,579,581,593,599,610,635,
+665,685,716,747,759,786,819,857,878,896,914,935,966,997,1033,1074,1102,1128,1155,1173,
+1194,1205,1230,1250,1274,1291,1304,1326,1354,1362,1383,1399,1421,1435,1453,1460,1476,1494,1511,1519,
+1531,1543,1553,1571,1586,1595,1617,1630,1645,1659,1664,1661,1651,1624,1617,1627,1652,1679,1683,1676,
+1667,1653,1629,1604,1592,1593,1590,1580,1569,1561,1560,1553,1543,1543,1556,1553,1547,1534,1528,1531,
+1538,1544,1550,1566,1581,1604,1621,1638,1664,1698,1718,1746,1785,1798,1821,1913,1927,1864,1821,1812,
+1834,1856,1899,1932,1937,1926,1913,1937,2021,2137,2110,2169,2054,1984,1996,2004,2015,2087,2257,2366,
+2221,2093,2078,2106,2154,2196,2230,2243,2246,2252,2248,2236,2230,2228,2237,2252,2271,2289,2303,2313,
+2330,2341,2348,2347,2354,2365,2380,2392,2414,2449,2452,2460,2478,2489,2506,2527,2550,2570,2595,2623,
+2642,2664,2685,2702,2708,2715,2722,2740,2764,2796,2818,2819,2814,2837,2877,2922,3009,3111,3140,3099,
+3060,3067,3101,3150,3213,3268,3291,3312,3378,3301,3269,3302,3386,3553,3627,3615,3543,3445,3381,3344,
+3329,3324,3303,3268,3240,3210,3195,3167,3134,3109,3124,3164,3230,3244,3208,3235,3257,3255,3231,3261,
+3218,3132,3066,3028,3038,3034,3034,3003,2910,2798,2688,2589,2511,2451,2406,2389,2379,2369,2365,2364,
+2371,2380,2400,2422,2444,2483,2533,2576,2631,2686,2732,2750,2727,2661,2575,2506,2410,2287,2165,2081,
+2028,1979,1947,1936,1930,1926,1934,1946,1957,1971,1980,1988,2010,2066,2116,2138,2151,2183,2229,2257,
+2260,2273,2330,2489,2653,2814,2892,2913,2918,2902,2871,2831,2804,2772,2727,2675,2633,2589,2548,2511,
+2488,2467,2445,2418,2400,2382,2362,2343,2323,2302,2291,2275,2259,2241,2230,2231,2214,2165,2168,2177,
+2161,2145,2140,2191,2220,2210,2234,2212,2263,2265,2317,2295,2319,2342,2313,2397,2393,2306,2247,2146,
+2268,2245,2263,2237,2131,2129,2142,2084,2055,1933,1925,1952,1888,1764,1759,1814,1787,1773,1730,1728,
+1711,1706,1698,1686,1687,1662,1637,1634,1626,1573,1559,1561,1550,1524,1492,1477,1479,1435,1411,1404,
+1380,1353,1331,1308,1279,1252,1230,1207,1183,1158,1125,1095,1059,1022,991,977,941,916,899,878,
+845,796,754,740,720,682,664,636,622,578,572,553,525,486,469,441,405,380,347,321,
+283,243,204,151,103,56,5,-24,-89,-134,-173,-220,-279,-326,-373,-418,-459,-484,-540,-588,
+-591,-601,-699,-761,-806,-858,-830,-855,-929,-1027,-1104,-1147,-1180,-1228,-1237,-1245,-1269,-1286,-1297,-1311,
+-1339,-1381,-1447,-1509,-1587,-1663,-1734,-1791,-1845,-1893,-1953,-2007,-2061,-2113,-2162,-2207,-2256,-2301,-2338,-2377,
+-2414,-2468,-2502,-2544,-2591,-2639,-2685,-2732,-2771,-2790,-2820,-2867,-2933,-2971,-3023,-3065,-3151,-3215,-3133,-3141,
+-3255,-3354,-3336,-3361,-3404,-3436,-3447,-3462,-3476,-3458,-3426,-3442,-3517,-3529,-3607,-3622,-3625,-3689,-3713,-3733,
+-3752,-3813,-3899,-3950,-3988,-4017,-4036,-4039,-4031,-4040,-4049,-4091,-4080,-3975,-3955,-3969,-3971,-3945,-3970,-4043,
+-4037,-4036,-4030,-4031,-4017,-4007,-3995,-3980,-3962,-3935,-3921,-3903,-3881,-3867,-3858,-3858,-3877,-3885,-3882,-3875,
+-3864,-3851,-3836,-3823,-3795,-3762,-3690,-3592,-3517,-3409,-3376,-3412,-3410,-3360,-3285,-3053,-2864,-2768,-2714,-2696,
+-2700,-2700,-2675,-2651,-2652,-2663,-2676,-2683,-2681,-2666,-2646,-2659,-2671,-2676,-2676,-2680,-2686,-2701,-2724,-2732,
+-2685,-2595,-2508,-2448,-2423,-2432,-2462,-2479,-2446,-2371,-2280,-2204,-2151,-2128,-2114,-2080,-2052,-2022,-1995,-1979,
+-1984,-2005,-2013,-2010,-2010,-2006,-1999,-1979,-1945,-1910,-1864,-1811,-1759,-1700,-1639,-1532,-1422,-1338,-1308,-1405,
+-1447,-1423,-1403,-1364,-1296,-1222,-1121,-992,-846,-706,-584,-478,-374,-261,-170,-103,-18,48,98,144,
+189,232,281,391,477,617,699,751,800,840,879,907,926,967,1023,1069,1092,1096,1081,1034,
+1004,1025,1050,1041,1040,1081,1124,1216,1295,1373,1445,1524,1583,1645,1722,1802,1836,1855,1919,2002,
+2108,2202,2244,2320,2365,2432,2479,2530,2592,2641,2674,2691,2690,2693,2690,2678,2685,2708,2709,2699,
+2676,2652,2595,2409,2157,2027,2032,2076,2122,2170,2206,2222,2211,2225,2260,2377,2522,2401,2354,2369,
+2406,2439,2475,2483,2478,2496,2518,2546,2569,2624,2708,2793,2851,2889,2912,2923,2936,2944,2973,3007,
+3018,3041,3043,3061,3061,3049,3014,2997,3029,3043,3051,3085,3117,3137,3125,3169,3268,3419,3551,3560,
+3525,3595,3566,3511,3564,3597,3598,3593,3539,3613,3724,3758,3766,3793,3804,3851,3882,3935,3962,3975,
+4038,4082,4096,4110,4115,4112,4082,4072,4083,4103,4115,4127,4135,4156,4170,4196,4206,4222,4223,4222,
+4224,4237,4243,4260,4296,4351,4430,4435,4412,4405,4370,4356,4310,4268,4236,3936,3472,2961,2468,2072,
+1821,1758,1974,2243,2447,2608,2737,2825,2891,2940,2943,2943,2921,2885,2846,2798,2740,2662,2583,2506,
+2437,2390,2380,2433,2485,2299,2169,2083,2039,2023,1994,1959,1919,1883,1854,1826,1784,1725,1668,1628,
+1586,1546,1514,1473,1429,1380,1326,1270,1233,1214,1166,1143,1126,1125,1088,1047,1018,998,980,954,
+925,889,850,807,776,760,745,713,657,615,597,590,572,552,529,491,436,386,342,308,
+277,260,241,213,185,152,132,113,104,100,95,88,72,49,32,15,1,-6,-21,-42,
+-65,-87,-120,-145,-155,-171,-187,-207,-222,-245,-272,-290,-322,-338,-356,-346,-349,-352,-365,-357,
+-372,-405,-434,-471,-506,-526,-556,-587,-610,-640,-669,-700,-729,-761,-787,-811,-824,-846,-882,-889,
+-893,-909,-919,-938,-931,-940,-960,-962,-962,-958,-964,-974,-983,-993,-995,-998,-1004,-1023,-1046,-1055,
+-1051,-1044,-1051,-1068,-1075,-1084,-1098,-1113,-1124,-1133,-1138,-1147,-1158,-1172,-1184,-1194,-1207,-1217,-1218,-1221,
+-1225,-1225,-1217,-1210,-1206,-1207,-1213,-1210,-1202,-1201,-1188,-1194,-1172,-1171,-1181,-1174,-1173,-1164,-1167,-1172,
+-1172,-1133,-1075,-1114,-1106,-1119,-1062,-1116,-1159,-1079,-1060,-1081,-1086,-1088,-1060,-1053,-1078,-1067,-1084,-1084,
+-1052,-1039,-1083,-1071,-1061,-1036,-1081,-1074,-1079,-1068,-1070,-1070,-1075,-1071,-1073,-1077,-1077,-1077,-1074,-1070,
+-1063,-1059,-1063,-1061,-1053,-1046,-1050,-1042,-1038,-1035,-1031,-1024,-1021,-1013,-1004,-998,-990,-984,-974,-968,
+-958,-946,-940,-930,-912,-905,-907,-915,-918,-911,-911,-890,-850,-904,-903,-877,-871,-861,-856,-845,
+-834,-823,-815,-802,-793,-788,-785,-777,-768,-756,-746,-738,-732,-725,-720,-707,-702,-692,-689,-685,
+-676,-666,-653,-642,-630,-626,-616,-615,-614,-602,-605,-596,-586,-575,-576,-565,-563,-558,-551,-538,
+-522,-508,-501,-492,-484,-478,-466,-455,-445,-435,-426,-409,-389,-377,-344,-321,-289,-298,-275,-249,
+-268,-234,-193,-182,-165,-159,-151,-142,-135,-125,-120,-117,-97,-89,-75,-54,-49,-38,-26,-25,
+-18,-14,-7,7,25,44,58,76,90,105,134,171,197,223,260,295,315,338,361,386,
+411,444,470,497,522,557,587,610,631,644,673,719,747,783,814,845,874,907,941,978,
+1019,1051,1088,1122,1158,1195,1234,1275,1306,1330,1362,1388,1437,1482,1507,1518,1511,1473,1375,1176,
+981,979,1166,1425,1847,2272,2564,2832,3023,3196,3486,3490,3371,3059,2838,2598,2193,2044,2042,2075,
+2115,2155,2208,2319,2364,2425,2480,2531,2510,2489,2501,2587,2635,2572,2500,2424,2335,2260,2181,2094,
+2027,1984,1957,1925,1876,1841,1804,1768,1735,1709,1689,1689,1696,1713,1726,1729,1732,1735,1728,1714,
+1696,1691,1672,1647,1640,1636,1609,1552,1528,1535,1516,1480,1437,1399,1357,1306,1253,1195,1147,1091,
+1029,949,878,822,755,692,659,684,719,703,596,430,274,142,33,-52,-115,-159,-205,-254,
+-299,-338,-373,-401,-429,-456,-485,-510,-530,-551,-579,-608,-640,-674,-699,-714,-724,-734,-745,-750,
+-741,-723,-712,-711,-731,-754,-769,-780,-782,-754,-749,-733,-728,-722,-689,-685,-677,-652,-642,-621,
+-595,-566,-520,-445,-371,-306,-247,-202,-175,-149,-146,-133,-104,-68,-29,2,28,57,83,81,
+75,99,137,169,210,236,250,300,351,384,431,430,456,481,549,597,611,628,635,637,
+660,692,707,739,767,773,790,832,852,878,922,946,968,999,1031,1053,1083,1112,1153,1190,
+1214,1232,1248,1273,1287,1310,1328,1347,1367,1385,1406,1431,1449,1467,1478,1491,1509,1524,1543,1554,
+1563,1576,1583,1592,1600,1604,1607,1614,1610,1624,1636,1649,1658,1651,1674,1726,1714,1712,1697,1693,
+1667,1663,1661,1643,1621,1616,1595,1584,1560,1568,1567,1562,1553,1541,1530,1533,1536,1533,1546,1552,
+1565,1567,1578,1586,1599,1616,1649,1643,1683,1671,1684,1702,1728,1770,1791,1803,1815,1819,1815,1817,
+1802,1803,1830,1850,1867,1889,1897,1936,2013,2097,2162,2169,2156,1987,1961,1984,2001,2027,2188,2399,
+2398,2269,2207,2127,2106,2125,2175,2193,2207,2234,2253,2222,2205,2203,2209,2216,2234,2254,2269,2288,
+2303,2317,2318,2317,2325,2335,2343,2362,2383,2416,2431,2434,2448,2465,2482,2496,2508,2522,2544,2571,
+2593,2621,2644,2670,2688,2692,2694,2701,2712,2722,2754,2776,2783,2783,2796,2814,2843,2913,3032,3123,
+3123,3094,3069,3097,3137,3178,3231,3267,3279,3375,3378,3310,3327,3381,3432,3515,3509,3431,3343,3296,
+3254,3260,3271,3242,3191,3153,3118,3097,3066,3024,2985,2983,3009,3043,3086,3074,3079,3088,3085,3076,
+3083,3091,3055,3027,3004,3010,3032,3015,2950,2840,2720,2614,2535,2479,2440,2415,2412,2411,2413,2414,
+2421,2433,2457,2480,2499,2525,2568,2613,2667,2741,2803,2822,2815,2794,2734,2630,2537,2450,2327,2203,
+2133,2078,2025,2000,1996,1991,1991,1997,2005,2016,2025,2037,2046,2084,2144,2168,2181,2190,2223,2271,
+2297,2309,2326,2388,2560,2737,2893,2986,3016,3024,3008,2971,2938,2905,2854,2808,2757,2709,2667,2622,
+2574,2542,2523,2509,2488,2467,2451,2432,2412,2394,2376,2359,2349,2339,2328,2316,2307,2294,2266,2242,
+2245,2243,2229,2240,2288,2311,2318,2290,2295,2357,2350,2414,2365,2404,2431,2383,2450,2475,2405,2358,
+2218,2390,2274,2301,2265,2137,2137,2143,2123,2090,1958,1951,1973,1889,1800,1814,1856,1836,1788,1779,
+1778,1773,1777,1773,1755,1735,1718,1713,1686,1636,1636,1631,1617,1581,1570,1559,1541,1494,1472,1467,
+1448,1422,1394,1374,1347,1320,1296,1275,1252,1225,1199,1159,1136,1111,1082,1058,1023,993,972,953,
+904,857,858,825,807,754,715,693,682,656,647,624,590,570,546,516,491,454,427,394,
+365,334,302,263,212,159,122,86,15,-18,-52,-97,-163,-214,-262,-305,-346,-368,-426,-480,
+-535,-572,-599,-644,-687,-736,-819,-862,-800,-917,-969,-1054,-1100,-1121,-1133,-1144,-1164,-1192,-1224,-1243,
+-1260,-1299,-1343,-1408,-1468,-1541,-1617,-1684,-1739,-1788,-1837,-1894,-1950,-2002,-2060,-2111,-2154,-2201,-2238,-2275,
+-2335,-2371,-2403,-2456,-2495,-2541,-2591,-2636,-2684,-2724,-2759,-2791,-2825,-2854,-2907,-2964,-3018,-3086,-3157,-3183,
+-3260,-3296,-3265,-3346,-3376,-3382,-3420,-3423,-3397,-3422,-3459,-3503,-3521,-3504,-3503,-3531,-3624,-3705,-3787,-3837,
+-3868,-3870,-3879,-3894,-3914,-3944,-3979,-4002,-4011,-4000,-4018,-4036,-4086,-4057,-3993,-3984,-3990,-3987,-3988,-3980,
+-4004,-4042,-4052,-4047,-4029,-4017,-3998,-3985,-3971,-3945,-3913,-3879,-3840,-3804,-3794,-3815,-3839,-3859,-3870,-3867,
+-3862,-3855,-3847,-3832,-3817,-3786,-3727,-3653,-3579,-3482,-3359,-3320,-3382,-3404,-3358,-3260,-3012,-2843,-2771,-2715,
+-2685,-2686,-2688,-2680,-2670,-2686,-2708,-2718,-2724,-2729,-2728,-2728,-2734,-2744,-2738,-2738,-2742,-2753,-2778,-2790,
+-2774,-2699,-2628,-2568,-2535,-2525,-2516,-2520,-2509,-2454,-2375,-2310,-2253,-2209,-2188,-2169,-2133,-2107,-2069,-2045,
+-2039,-2037,-2045,-2041,-2036,-2024,-2019,-2012,-2000,-1973,-1935,-1889,-1847,-1798,-1739,-1669,-1573,-1476,-1388,-1359,
+-1438,-1486,-1481,-1452,-1399,-1329,-1249,-1152,-1017,-876,-755,-649,-559,-471,-362,-269,-175,-86,-2,62,
+112,143,183,245,340,445,585,685,742,772,782,799,806,821,877,923,957,971,970,936,
+926,930,959,965,962,984,1037,1105,1178,1250,1309,1371,1443,1516,1582,1652,1712,1774,1812,1866,
+1939,2038,2141,2197,2270,2327,2397,2454,2496,2559,2628,2667,2674,2689,2683,2660,2627,2617,2619,2603,
+2601,2585,2539,2434,2211,2023,1938,1962,2013,2069,2108,2121,2135,2143,2157,2226,2351,2485,2386,2290,
+2285,2320,2357,2394,2411,2419,2431,2425,2450,2485,2545,2646,2732,2777,2817,2843,2858,2874,2877,2895,
+2941,2965,2983,3010,3013,3023,3007,2977,2952,2992,3022,3053,3073,3091,3106,3081,3075,3129,3283,3462,
+3525,3463,3518,3502,3446,3479,3522,3540,3536,3556,3532,3584,3638,3673,3714,3740,3794,3834,3867,3907,
+3911,3987,4034,4051,4069,4067,4088,4069,4034,4041,4061,4074,4086,4102,4121,4138,4156,4163,4174,4189,
+4194,4206,4198,4219,4227,4290,4348,4390,4364,4367,4380,4346,4287,4259,4226,4097,3713,3261,2757,2287,
+1975,1775,1826,2079,2317,2495,2630,2739,2816,2877,2900,2911,2908,2888,2852,2817,2765,2700,2621,2545,
+2471,2398,2335,2308,2336,2410,2340,2167,2059,2007,1983,1965,1931,1895,1864,1824,1800,1755,1700,1650,
+1612,1568,1534,1497,1457,1419,1357,1319,1251,1225,1206,1146,1144,1107,1106,1070,1026,997,971,949,
+925,899,868,825,794,770,750,737,711,665,620,591,578,568,551,520,476,435,391,352,
+332,269,246,232,214,192,162,144,123,102,95,79,74,61,39,12,-3,-11,-17,-24,
+-40,-59,-84,-111,-139,-159,-169,-184,-200,-222,-240,-270,-285,-312,-337,-344,-343,-343,-334,-362,
+-369,-388,-401,-426,-441,-467,-498,-538,-577,-611,-634,-662,-692,-733,-762,-784,-815,-835,-852,-867,
+-885,-888,-904,-919,-936,-943,-947,-951,-954,-956,-955,-965,-978,-990,-1007,-1011,-1011,-1012,-1022,-1040,
+-1050,-1057,-1064,-1050,-1060,-1073,-1090,-1099,-1108,-1116,-1123,-1134,-1152,-1170,-1181,-1187,-1189,-1199,-1204,-1205,
+-1200,-1199,-1194,-1193,-1194,-1203,-1213,-1209,-1141,-1118,-1164,-1112,-1121,-1154,-1160,-1147,-1139,-1153,-1123,-1146,
+-1160,-1149,-1084,-1068,-1072,-1122,-1117,-1136,-1140,-1120,-1043,-1123,-1103,-1104,-1118,-1106,-1113,-1124,-1117,-1106,
+-1109,-1111,-1105,-1079,-1076,-1099,-1095,-1067,-1074,-1104,-1090,-1093,-1093,-1093,-1091,-1086,-1089,-1086,-1079,-1074,
+-1071,-1071,-1078,-1069,-1066,-1064,-1055,-1055,-1053,-1048,-1050,-1042,-1035,-1026,-1018,-1016,-1003,-1003,-991,-980,
+-974,-970,-951,-952,-945,-932,-926,-923,-932,-917,-925,-905,-903,-896,-873,-891,-877,-881,-889,-867,
+-848,-838,-834,-823,-811,-807,-797,-791,-779,-765,-754,-745,-742,-731,-726,-724,-715,-709,-693,-688,
+-675,-670,-663,-654,-639,-630,-617,-618,-616,-609,-606,-602,-596,-590,-584,-574,-569,-565,-556,-555,
+-547,-536,-518,-509,-499,-488,-474,-459,-455,-453,-445,-437,-427,-406,-379,-356,-323,-310,-298,-286,
+-267,-248,-233,-225,-206,-194,-182,-169,-168,-162,-153,-142,-130,-109,-103,-92,-75,-63,-55,-49,
+-35,-31,-24,-8,2,18,34,48,69,84,110,146,173,193,228,260,283,305,328,356,
+380,414,439,462,488,519,553,583,606,619,628,652,688,721,755,782,810,835,864,896,
+930,967,1003,1037,1080,1121,1157,1194,1229,1258,1282,1312,1348,1409,1453,1487,1543,1552,1464,1313,
+1125,959,1010,1159,1405,1869,2262,2561,2812,2894,3063,3295,3381,3267,3052,2826,2540,2153,2044,2044,
+2079,2117,2146,2184,2266,2361,2440,2555,2611,2523,2490,2504,2567,2560,2521,2444,2394,2310,2214,2120,
+2050,1996,1959,1934,1908,1869,1854,1824,1778,1728,1697,1678,1680,1697,1719,1731,1732,1729,1723,1724,
+1726,1721,1700,1677,1661,1658,1655,1620,1573,1537,1543,1530,1507,1483,1438,1367,1311,1268,1210,1168,
+1104,1028,949,882,825,766,724,737,784,790,735,595,441,297,169,56,-42,-110,-163,-213,
+-265,-307,-344,-377,-404,-434,-459,-484,-509,-529,-556,-583,-610,-640,-669,-689,-703,-716,-727,-744,
+-758,-757,-744,-733,-733,-743,-757,-759,-764,-771,-770,-760,-739,-730,-722,-685,-681,-675,-669,-642,
+-629,-600,-569,-534,-477,-405,-344,-282,-242,-211,-193,-181,-164,-123,-86,-53,-19,12,44,82,
+116,119,118,144,165,192,229,253,286,325,365,401,425,462,501,547,622,631,660,666,
+673,701,702,719,757,775,790,815,835,857,876,907,940,982,1015,1051,1082,1123,1161,1192,
+1206,1244,1274,1293,1307,1323,1347,1363,1383,1400,1426,1445,1471,1479,1500,1520,1531,1549,1558,1563,
+1570,1580,1580,1585,1597,1606,1612,1636,1646,1650,1691,1693,1714,1725,1699,1753,1751,1738,1715,1692,
+1676,1677,1657,1639,1639,1625,1607,1596,1575,1566,1556,1554,1547,1553,1557,1570,1563,1570,1568,1584,
+1587,1591,1594,1598,1596,1608,1622,1631,1640,1653,1663,1681,1686,1706,1741,1771,1775,1766,1760,1780,
+1879,1942,1901,1825,1813,1835,1862,1865,1906,2073,2144,2191,2156,1977,1921,1946,1977,2002,2046,2213,
+2277,2266,2278,2264,2150,2104,2115,2144,2164,2169,2191,2214,2189,2180,2176,2177,2190,2209,2228,2254,
+2271,2282,2285,2287,2289,2300,2317,2334,2350,2366,2390,2409,2420,2442,2453,2464,2473,2489,2503,2516,
+2539,2561,2594,2629,2655,2674,2680,2683,2684,2690,2697,2717,2735,2745,2746,2753,2771,2804,2864,2967,
+3090,3136,3124,3104,3112,3124,3145,3175,3201,3252,3368,3414,3359,3345,3382,3433,3420,3404,3354,3266,
+3230,3201,3230,3239,3199,3142,3084,3036,3008,2947,2894,2857,2832,2833,2861,2902,2916,2943,2974,2976,
+2966,2976,2979,2973,2964,2981,3008,3006,2963,2873,2771,2663,2573,2509,2471,2450,2441,2448,2456,2462,
+2468,2487,2510,2522,2545,2568,2587,2629,2678,2745,2807,2851,2888,2871,2846,2797,2718,2612,2504,2356,
+2248,2175,2122,2076,2057,2056,2055,2057,2060,2067,2078,2085,2091,2102,2153,2195,2210,2217,2237,2278,
+2311,2342,2349,2358,2439,2647,2830,2971,3059,3095,3096,3088,3055,3034,2995,2952,2900,2844,2785,2737,
+2690,2638,2603,2581,2561,2546,2528,2514,2501,2486,2471,2461,2448,2434,2421,2409,2401,2402,2391,2371,
+2353,2340,2332,2369,2331,2368,2407,2418,2357,2396,2433,2459,2489,2458,2498,2530,2480,2520,2594,2518,
+2511,2307,2358,2289,2303,2282,2159,2201,2165,2139,2130,1995,1999,2005,1909,1855,1887,1901,1851,1821,
+1827,1829,1824,1828,1822,1795,1804,1789,1757,1730,1725,1709,1683,1655,1649,1630,1596,1556,1550,1534,
+1507,1491,1467,1440,1418,1390,1363,1340,1322,1299,1265,1239,1215,1186,1148,1122,1088,1070,1043,1024,
+980,928,919,906,871,844,801,772,754,727,717,696,646,637,618,590,564,534,508,480,
+447,410,380,349,318,265,217,190,117,77,33,0,-50,-103,-145,-192,-234,-268,-320,-379,
+-428,-477,-516,-550,-593,-636,-700,-771,-792,-801,-878,-936,-960,-995,-1042,-1059,-1068,-1101,-1115,-1154,
+-1190,-1217,-1261,-1319,-1374,-1441,-1511,-1569,-1632,-1686,-1737,-1793,-1839,-1891,-1946,-2003,-2058,-2107,-2147,-2189,
+-2234,-2264,-2317,-2357,-2404,-2449,-2494,-2541,-2585,-2631,-2671,-2714,-2749,-2783,-2820,-2851,-2893,-2918,-2964,-3007,
+-3065,-3119,-3177,-3202,-3251,-3292,-3309,-3315,-3323,-3328,-3332,-3356,-3387,-3476,-3538,-3527,-3485,-3494,-3540,-3643,
+-3735,-3797,-3806,-3840,-3885,-3922,-3945,-3968,-3990,-4012,-4016,-4024,-4032,-4081,-4036,-4022,-4023,-4022,-4014,-4028,
+-4036,-4030,-3986,-4023,-4054,-4044,-4024,-4000,-3979,-3957,-3923,-3884,-3835,-3736,-3674,-3681,-3706,-3771,-3825,-3845,
+-3848,-3837,-3824,-3813,-3810,-3815,-3770,-3688,-3628,-3577,-3455,-3334,-3287,-3332,-3388,-3354,-3225,-2973,-2832,-2764,
+-2724,-2698,-2691,-2695,-2693,-2692,-2708,-2733,-2748,-2763,-2770,-2776,-2786,-2800,-2820,-2816,-2806,-2801,-2815,-2825,
+-2835,-2797,-2733,-2680,-2642,-2625,-2615,-2602,-2583,-2543,-2486,-2428,-2370,-2311,-2268,-2243,-2214,-2197,-2175,-2147,
+-2133,-2130,-2121,-2113,-2110,-2099,-2078,-2069,-2059,-2044,-2012,-1974,-1925,-1886,-1849,-1805,-1736,-1645,-1544,-1467,
+-1395,-1438,-1490,-1490,-1463,-1417,-1355,-1276,-1169,-1047,-935,-845,-747,-642,-540,-438,-330,-231,-142,-44,
+10,69,96,129,192,269,404,548,661,718,728,727,725,729,757,800,838,853,861,831,
+837,856,869,872,864,896,938,1013,1081,1139,1195,1260,1314,1379,1447,1508,1570,1632,1706,1754,
+1816,1893,1987,2077,2143,2201,2271,2348,2415,2475,2512,2586,2640,2631,2614,2617,2578,2552,2562,2538,
+2514,2506,2473,2390,2207,2029,1898,1871,1909,1955,1994,2031,2038,2037,2065,2114,2221,2416,2563,2339,
+2229,2226,2229,2284,2339,2352,2362,2380,2359,2365,2409,2489,2597,2704,2733,2744,2768,2797,2813,2818,
+2834,2876,2904,2929,2953,2984,2973,2973,2947,2913,2938,2984,3033,3062,3061,3063,3051,3011,3019,3144,
+3341,3450,3411,3412,3391,3384,3417,3447,3476,3491,3537,3614,3650,3618,3613,3658,3719,3751,3787,3810,
+3850,3843,3884,3937,3959,4009,4041,4061,4051,4004,3988,4001,4015,4031,4047,4076,4085,4106,4121,4130,
+4149,4159,4164,4185,4191,4205,4252,4326,4357,4322,4322,4324,4284,4232,4193,4152,3861,3449,2982,2507,
+2116,1855,1758,1919,2162,2375,2528,2659,2736,2799,2884,2874,2878,2866,2845,2819,2783,2723,2651,2583,
+2513,2439,2361,2289,2254,2265,2341,2334,2159,2042,1974,1937,1921,1901,1870,1832,1797,1767,1722,1675,
+1638,1604,1563,1525,1483,1440,1390,1338,1304,1245,1218,1187,1147,1132,1087,1086,1046,1007,974,948,
+922,897,875,852,815,774,753,735,717,699,663,622,591,569,560,536,501,466,427,398,
+354,312,273,256,218,210,199,178,164,139,105,84,70,63,54,27,0,-11,-20,-28,
+-40,-48,-62,-84,-110,-143,-171,-184,-189,-201,-222,-240,-258,-291,-307,-312,-336,-345,-358,-366,
+-382,-388,-389,-356,-406,-443,-473,-499,-532,-566,-600,-638,-670,-699,-733,-752,-779,-799,-819,-833,
+-856,-872,-876,-889,-903,-924,-935,-939,-948,-953,-956,-957,-971,-985,-997,-1005,-1012,-1023,-1021,-1024,
+-1031,-1048,-1063,-1074,-1076,-1064,-1069,-1088,-1107,-1115,-1123,-1124,-1131,-1143,-1154,-1164,-1175,-1180,-1186,-1191,
+-1191,-1191,-1189,-1185,-1185,-1187,-1197,-1207,-1191,-1166,-1185,-1191,-1161,-1162,-1159,-1139,-1161,-1163,-1157,-1153,
+-1150,-1153,-1148,-1142,-1138,-1156,-1104,-1094,-1072,-1090,-1048,-1049,-1125,-1088,-1135,-1120,-1135,-1128,-1131,-1123,
+-1116,-1109,-1112,-1112,-1107,-1102,-1107,-1115,-1095,-1081,-1115,-1095,-1082,-1079,-1067,-1090,-1093,-1095,-1076,-1090,
+-1089,-1080,-1083,-1080,-1069,-1077,-1067,-1071,-1061,-1059,-1062,-1055,-1049,-1050,-1034,-1028,-1025,-1008,-1006,-1003,
+-993,-983,-978,-959,-953,-935,-951,-953,-967,-953,-936,-937,-912,-922,-911,-930,-899,-894,-879,-882,
+-878,-862,-846,-836,-830,-824,-819,-807,-802,-788,-772,-759,-750,-738,-735,-727,-729,-722,-710,-698,
+-693,-684,-680,-671,-662,-644,-639,-632,-621,-613,-616,-611,-599,-593,-585,-581,-574,-571,-568,-560,
+-560,-556,-536,-519,-507,-502,-499,-485,-481,-469,-455,-450,-436,-424,-424,-397,-369,-341,-323,-306,
+-301,-286,-277,-252,-235,-217,-218,-202,-184,-178,-171,-160,-149,-136,-119,-110,-103,-102,-91,-81,
+-62,-55,-36,-29,-14,0,9,24,36,53,78,110,138,164,191,219,246,265,292,320,
+351,382,411,430,452,480,518,549,576,590,600,615,641,672,702,735,768,794,819,833,
+859,890,931,968,1018,1068,1104,1128,1148,1179,1211,1247,1290,1336,1399,1451,1492,1567,1540,1432,
+1280,1078,904,953,1169,1511,1959,2276,2485,2727,2804,2997,3054,3356,3413,3181,2727,2393,2190,2091,
+2085,2104,2135,2166,2198,2277,2375,2419,2559,2553,2496,2502,2523,2546,2473,2432,2376,2350,2286,2185,
+2086,2022,1979,1949,1922,1890,1860,1842,1806,1757,1717,1684,1678,1687,1705,1726,1729,1738,1731,1717,
+1720,1729,1737,1720,1698,1685,1680,1667,1632,1596,1565,1543,1526,1509,1476,1431,1364,1327,1287,1229,
+1177,1103,1015,934,873,812,754,727,773,832,822,741,601,458,323,195,69,-40,-111,-167,
+-219,-268,-311,-346,-375,-399,-426,-452,-476,-501,-521,-547,-579,-605,-627,-654,-675,-687,-698,-715,
+-735,-753,-760,-755,-747,-743,-746,-753,-753,-753,-763,-763,-758,-728,-728,-724,-691,-688,-684,-655,
+-642,-628,-597,-566,-532,-501,-447,-383,-337,-302,-267,-247,-194,-186,-145,-109,-77,-37,-3,30,
+72,124,163,191,227,226,204,232,283,326,339,362,407,439,484,526,558,612,637,668,
+667,676,682,695,734,751,778,795,843,844,867,879,907,934,980,1019,1055,1098,1133,1160,
+1191,1220,1248,1264,1281,1302,1326,1344,1367,1382,1403,1431,1447,1467,1460,1494,1511,1520,1535,1551,
+1563,1587,1599,1618,1644,1662,1668,1669,1679,1673,1678,1684,1720,1731,1763,1752,1761,1758,1723,1709,
+1707,1684,1666,1633,1628,1626,1625,1616,1608,1597,1594,1595,1597,1595,1588,1566,1576,1570,1566,1563,
+1564,1574,1585,1594,1594,1603,1611,1629,1644,1651,1651,1660,1769,1780,1782,1785,1777,1777,1737,1732,
+1774,1975,2123,2095,1980,1871,1834,1831,1837,1854,1959,2051,2059,1977,1883,1893,1934,1971,1980,1988,
+2024,2064,2145,2315,2233,2106,2088,2101,2118,2127,2130,2148,2156,2158,2152,2150,2154,2170,2182,2211,
+2228,2240,2253,2257,2267,2281,2293,2304,2323,2339,2359,2385,2406,2410,2425,2441,2449,2460,2470,2480,
+2495,2518,2546,2576,2602,2629,2651,2660,2664,2666,2669,2674,2684,2696,2708,2716,2720,2745,2785,2839,
+2935,3053,3129,3154,3153,3152,3140,3135,3147,3182,3210,3328,3407,3398,3370,3376,3389,3361,3329,3330,
+3269,3224,3225,3236,3206,3160,3099,3056,3016,2960,2895,2834,2805,2776,2748,2737,2773,2794,2832,2895,
+2930,2926,2918,2925,2916,2927,2960,2958,2935,2868,2781,2698,2630,2567,2517,2487,2477,2474,2484,2500,
+2512,2531,2555,2564,2581,2604,2629,2698,2756,2788,2818,2856,2925,2938,2926,2872,2807,2730,2626,2516,
+2381,2293,2224,2171,2126,2114,2123,2122,2125,2127,2130,2138,2143,2144,2155,2209,2237,2251,2267,2292,
+2327,2361,2384,2386,2402,2503,2707,2866,3012,3124,3170,3182,3165,3148,3128,3091,3038,2987,2926,2862,
+2808,2762,2715,2679,2645,2624,2609,2595,2583,2571,2565,2558,2550,2540,2525,2513,2503,2483,2476,2464,
+2446,2428,2409,2405,2457,2439,2442,2481,2484,2447,2504,2521,2580,2598,2538,2618,2646,2586,2620,2692,
+2602,2565,2401,2418,2336,2334,2308,2192,2229,2199,2143,2114,2015,2029,2012,1906,1918,1947,1942,1891,
+1875,1877,1879,1874,1858,1858,1873,1859,1819,1818,1808,1788,1757,1727,1719,1694,1657,1633,1617,1603,
+1579,1552,1532,1512,1484,1457,1431,1410,1385,1361,1331,1310,1289,1256,1224,1192,1162,1135,1113,1092,
+1042,998,980,979,952,916,880,853,813,789,774,744,702,694,689,660,634,607,580,550,
+527,496,471,439,395,370,328,274,220,192,156,116,63,16,-39,-74,-128,-169,-197,-251,
+-315,-372,-417,-454,-503,-546,-588,-662,-712,-760,-792,-817,-847,-876,-922,-956,-979,-1011,-1028,-1054,
+-1086,-1125,-1172,-1227,-1285,-1345,-1410,-1468,-1528,-1584,-1633,-1684,-1735,-1789,-1836,-1883,-1942,-1989,-2041,-2095,
+-2133,-2177,-2209,-2268,-2311,-2353,-2399,-2439,-2485,-2534,-2579,-2620,-2662,-2704,-2748,-2787,-2822,-2861,-2887,-2935,
+-2970,-3008,-3049,-3095,-3132,-3160,-3198,-3225,-3261,-3287,-3300,-3308,-3317,-3337,-3370,-3427,-3468,-3540,-3643,-3754,
+-3823,-3810,-3840,-3840,-3835,-3871,-3929,-3934,-3957,-3984,-4009,-4020,-4010,-4034,-4090,-4061,-4061,-4063,-4051,-4075,
+-4035,-3987,-3948,-3939,-3918,-4004,-4031,-4024,-4001,-3976,-3943,-3902,-3842,-3740,-3657,-3628,-3626,-3647,-3702,-3752,
+-3789,-3808,-3798,-3766,-3763,-3794,-3808,-3770,-3689,-3627,-3575,-3474,-3331,-3252,-3254,-3339,-3341,-3211,-2954,-2839,
+-2775,-2744,-2732,-2719,-2707,-2707,-2716,-2734,-2761,-2783,-2805,-2823,-2836,-2848,-2864,-2880,-2885,-2865,-2847,-2849,
+-2858,-2852,-2823,-2772,-2749,-2732,-2714,-2697,-2678,-2641,-2590,-2537,-2489,-2423,-2374,-2338,-2312,-2281,-2277,-2267,
+-2253,-2259,-2252,-2230,-2238,-2245,-2245,-2222,-2207,-2164,-2127,-2083,-2042,-2006,-1971,-1940,-1899,-1819,-1715,-1627,
+-1553,-1469,-1441,-1489,-1486,-1463,-1421,-1369,-1293,-1196,-1109,-1040,-956,-839,-732,-613,-494,-375,-283,-179,
+-70,-12,26,43,56,131,216,329,482,611,657,650,641,639,654,677,707,738,739,717,
+729,753,787,796,790,812,861,918,977,1040,1098,1153,1198,1253,1324,1388,1452,1510,1575,1643,
+1699,1766,1843,1931,2001,2063,2134,2182,2258,2354,2466,2490,2513,2592,2609,2586,2537,2496,2466,2471,
+2443,2428,2403,2317,2146,1939,1832,1789,1811,1850,1891,1938,1963,1968,1981,2008,2053,2177,2496,2566,
+2284,2163,2128,2151,2214,2254,2288,2307,2317,2320,2318,2335,2409,2528,2626,2673,2669,2694,2710,2738,
+2750,2759,2798,2839,2873,2899,2921,2932,2934,2931,2905,2883,2920,2975,3006,3012,3014,3018,2987,2956,
+3020,3231,3354,3346,3353,3339,3349,3377,3395,3413,3435,3464,3550,3674,3753,3666,3606,3659,3723,3779,
+3797,3810,3815,3823,3883,3913,3916,3955,3988,3997,3978,3950,3946,3953,3970,3996,4018,4032,4062,4116,
+4091,4118,4136,4133,4158,4164,4175,4245,4316,4283,4284,4290,4259,4224,4175,4120,3950,3615,3197,2736,
+2287,1960,1765,1781,1996,2225,2408,2549,2674,2725,2805,2839,2844,2851,2855,2816,2787,2742,2683,2616,
+2554,2486,2413,2333,2258,2214,2203,2252,2316,2168,2034,1950,1904,1876,1858,1837,1803,1774,1735,1681,
+1642,1616,1589,1555,1512,1467,1424,1392,1324,1282,1244,1205,1160,1156,1112,1064,1064,1030,988,950,
+923,896,869,844,823,794,758,733,722,697,678,654,627,599,572,547,519,481,445,415,
+385,358,316,271,257,211,205,198,182,165,143,108,85,67,59,47,25,1,-17,-33,
+-44,-55,-68,-84,-99,-124,-148,-175,-194,-205,-209,-219,-238,-258,-280,-297,-319,-334,-329,-339,
+-338,-357,-382,-388,-398,-416,-450,-479,-501,-538,-569,-603,-630,-658,-696,-726,-751,-763,-783,-806,
+-826,-852,-874,-890,-898,-913,-918,-934,-943,-955,-965,-966,-968,-979,-989,-997,-1007,-1017,-1026,-1035,
+-1037,-1042,-1045,-1052,-1071,-1078,-1078,-1084,-1094,-1100,-1102,-1116,-1128,-1139,-1148,-1160,-1172,-1179,-1190,-1191,
+-1190,-1191,-1188,-1184,-1183,-1184,-1185,-1186,-1190,-1170,-1144,-1176,-1169,-1160,-1164,-1160,-1146,-1136,-1137,-1138,
+-1135,-1126,-1128,-1130,-1128,-1125,-1123,-1103,-1097,-1071,-1097,-1117,-1125,-1155,-1092,-1091,-1096,-1123,-1094,-1147,
+-1152,-1130,-1146,-1127,-1120,-1113,-1106,-1107,-1120,-1123,-1127,-1100,-1125,-1137,-1132,-1126,-1128,-1122,-1097,-1117,
+-1112,-1094,-1079,-1080,-1088,-1078,-1083,-1088,-1084,-1073,-1070,-1066,-1063,-1061,-1051,-1045,-1038,-1038,-1032,-1020,
+-1011,-1001,-991,-980,-967,-967,-964,-954,-968,-962,-959,-945,-927,-926,-925,-919,-947,-891,-897,-892,
+-889,-881,-877,-859,-844,-835,-818,-814,-813,-809,-799,-788,-769,-764,-753,-739,-736,-728,-725,-716,
+-704,-690,-690,-683,-672,-657,-649,-637,-630,-623,-620,-619,-614,-603,-598,-592,-580,-584,-572,-571,
+-559,-550,-548,-542,-525,-514,-506,-492,-477,-474,-475,-462,-449,-438,-426,-420,-396,-372,-346,-324,
+-312,-306,-290,-278,-259,-252,-231,-216,-207,-189,-178,-170,-161,-153,-143,-132,-129,-125,-120,-113,
+-101,-85,-70,-59,-46,-27,-11,4,18,30,46,73,103,132,152,179,200,221,246,277,
+310,346,376,396,417,443,477,515,544,569,585,607,629,658,686,715,753,800,849,874,
+877,888,922,972,1051,1074,1114,1134,1107,1118,1148,1197,1252,1319,1374,1425,1460,1480,1486,1455,
+1372,1211,991,858,961,1217,1626,2046,2313,2479,2652,2688,2912,2916,3163,3281,2969,2572,2333,2228,
+2171,2152,2162,2180,2194,2228,2320,2388,2390,2474,2481,2447,2461,2469,2455,2391,2343,2333,2304,2257,
+2179,2089,2008,1960,1927,1905,1876,1844,1811,1778,1733,1698,1682,1678,1686,1705,1717,1726,1734,1726,
+1717,1721,1728,1722,1717,1709,1694,1679,1663,1631,1601,1578,1545,1527,1500,1453,1409,1365,1346,1319,
+1268,1188,1089,992,920,846,778,738,750,818,848,814,713,584,457,329,193,57,-46,-114,
+-171,-222,-270,-311,-346,-373,-394,-420,-442,-463,-485,-505,-532,-562,-581,-600,-626,-653,-667,-679,
+-699,-718,-738,-755,-756,-753,-750,-748,-750,-753,-746,-750,-748,-740,-734,-731,-729,-709,-688,-673,
+-662,-642,-615,-582,-550,-528,-507,-473,-421,-379,-345,-307,-277,-225,-200,-152,-129,-89,-55,-26,
+11,58,118,176,212,212,237,263,320,380,409,422,418,468,525,557,581,590,601,620,
+635,651,658,676,711,730,743,774,816,854,881,902,912,920,952,997,1031,1066,1089,1119,
+1154,1175,1200,1223,1246,1269,1297,1317,1332,1351,1375,1394,1416,1445,1473,1495,1517,1534,1557,1580,
+1598,1622,1635,1650,1653,1657,1675,1674,1695,1701,1691,1715,1739,1755,1778,1795,1781,1743,1768,1718,
+1697,1682,1673,1660,1650,1659,1655,1652,1644,1635,1629,1617,1604,1592,1586,1581,1571,1572,1567,1564,
+1564,1571,1571,1581,1586,1587,1591,1604,1620,1637,1660,1675,1675,1703,1801,1825,1787,1835,1808,1747,
+1723,1740,1840,1982,2025,1997,1926,1924,1841,1828,1864,2010,2146,2005,1883,1868,1893,1941,2003,1985,
+1967,1984,2056,2097,2165,2134,2082,2074,2083,2091,2100,2108,2120,2127,2128,2123,2126,2134,2151,2162,
+2184,2196,2209,2229,2238,2256,2269,2282,2297,2317,2331,2356,2382,2398,2403,2424,2440,2442,2446,2458,
+2477,2503,2509,2534,2561,2588,2611,2629,2635,2641,2643,2647,2651,2655,2663,2674,2688,2695,2717,2756,
+2811,2890,2990,3072,3131,3170,3181,3148,3131,3139,3164,3201,3301,3369,3391,3374,3347,3334,3311,3286,
+3289,3294,3241,3227,3212,3206,3169,3125,3090,3071,3017,2949,2884,2822,2786,2749,2698,2658,2661,2720,
+2812,2877,2915,2931,2928,2952,2909,2903,2894,2832,2766,2701,2645,2602,2569,2538,2519,2513,2513,2520,
+2536,2557,2590,2609,2623,2640,2672,2717,2780,2834,2844,2849,2891,2921,2968,2972,2908,2814,2736,2651,
+2561,2410,2333,2268,2212,2180,2181,2180,2183,2192,2190,2193,2196,2194,2195,2215,2261,2280,2299,2327,
+2354,2388,2414,2432,2434,2462,2583,2746,2877,3018,3130,3167,3207,3225,3222,3206,3175,3128,3069,2996,
+2936,2889,2846,2798,2758,2724,2697,2680,2668,2656,2646,2640,2633,2626,2616,2606,2596,2590,2569,2560,
+2546,2528,2519,2513,2499,2523,2525,2555,2561,2565,2553,2626,2599,2672,2649,2648,2748,2739,2669,2671,
+2713,2611,2548,2420,2471,2365,2387,2336,2238,2245,2219,2161,2119,2043,2073,2035,1961,1985,1975,1969,
+1941,1925,1929,1939,1906,1918,1925,1915,1905,1896,1877,1862,1841,1823,1799,1769,1720,1718,1701,1675,
+1649,1626,1602,1577,1553,1527,1503,1476,1455,1427,1403,1383,1354,1328,1299,1273,1241,1213,1191,1151,
+1113,1077,1066,1035,1025,986,961,926,903,880,850,815,765,762,750,725,700,680,655,628,
+589,569,549,518,493,440,400,360,330,295,254,213,166,124,78,28,-9,-61,-82,-139,
+-207,-263,-304,-353,-399,-435,-488,-518,-604,-654,-714,-736,-755,-779,-814,-854,-893,-928,-958,-979,
+-1019,-1041,-1080,-1127,-1178,-1244,-1310,-1372,-1423,-1477,-1530,-1576,-1619,-1683,-1735,-1781,-1835,-1880,-1932,-1989,
+-2028,-2070,-2115,-2160,-2213,-2263,-2299,-2345,-2384,-2422,-2470,-2515,-2563,-2608,-2653,-2701,-2748,-2789,-2833,-2871,
+-2900,-2939,-2976,-3020,-3051,-3085,-3123,-3154,-3191,-3228,-3253,-3269,-3273,-3289,-3309,-3330,-3359,-3395,-3465,-3601,
+-3824,-3877,-3794,-3745,-3767,-3778,-3817,-3883,-3935,-3967,-3982,-4004,-4022,-4013,-4064,-4067,-4067,-4075,-4090,-4105,
+-4053,-4006,-3985,-3980,-3966,-3921,-3879,-3981,-4006,-3992,-3961,-3922,-3854,-3808,-3700,-3652,-3629,-3617,-3631,-3642,
+-3668,-3696,-3725,-3730,-3720,-3728,-3768,-3800,-3772,-3692,-3622,-3577,-3445,-3315,-3242,-3221,-3289,-3321,-3207,-2976,
+-2865,-2806,-2773,-2760,-2747,-2723,-2724,-2738,-2767,-2801,-2821,-2852,-2884,-2901,-2917,-2924,-2953,-2952,-2906,-2865,
+-2862,-2876,-2877,-2865,-2850,-2830,-2813,-2789,-2763,-2727,-2680,-2633,-2595,-2529,-2470,-2430,-2397,-2380,-2370,-2387,
+-2386,-2380,-2381,-2385,-2390,-2401,-2396,-2389,-2404,-2417,-2399,-2303,-2226,-2172,-2140,-2126,-2096,-2052,-1974,-1873,
+-1767,-1682,-1600,-1538,-1535,-1504,-1466,-1421,-1363,-1310,-1253,-1187,-1118,-1017,-907,-779,-656,-541,-437,-336,
+-228,-108,-48,-32,-11,12,75,170,268,395,528,594,572,565,568,583,589,622,628,612,
+624,642,676,703,711,732,792,849,897,951,1002,1055,1089,1132,1194,1262,1339,1410,1471,1525,
+1588,1650,1722,1795,1872,1936,1994,2053,2094,2159,2277,2407,2465,2464,2515,2540,2527,2475,2419,2386,
+2366,2354,2329,2261,2088,1878,1739,1698,1716,1753,1805,1846,1876,1891,1901,1916,1932,1968,2043,2155,
+2196,2114,2075,2058,2074,2103,2168,2194,2213,2234,2253,2245,2238,2332,2448,2526,2586,2589,2596,2626,
+2652,2671,2674,2723,2769,2812,2843,2867,2877,2872,2879,2860,2825,2826,2880,2926,2953,2972,2975,2961,
+2926,2933,3113,3260,3298,3264,3307,3302,3319,3343,3360,3385,3412,3444,3531,3621,3665,3628,3649,3731,
+3716,3769,3757,3827,3824,3852,3848,3855,3860,3910,3942,3961,3964,3955,3958,3969,3976,4019,3994,4035,
+4083,4109,4103,4100,4107,4110,4116,4143,4206,4242,4211,4224,4226,4173,4125,4072,4013,3739,3369,2945,
+2484,2095,1830,1716,1836,2065,2276,2439,2557,2642,2705,2775,2811,2820,2826,2812,2788,2753,2704,2648,
+2589,2525,2460,2403,2338,2243,2178,2162,2222,2322,2193,2026,1935,1873,1836,1819,1798,1780,1735,1698,
+1657,1614,1598,1574,1542,1501,1453,1399,1365,1330,1269,1222,1177,1170,1152,1096,1038,1041,1016,970,
+931,904,874,846,819,796,774,738,719,706,681,668,655,633,601,569,536,502,463,431,
+400,375,346,314,273,232,209,202,192,171,150,130,105,81,66,55,42,22,-1,-23,
+-41,-62,-77,-92,-113,-130,-149,-164,-188,-207,-219,-224,-228,-241,-261,-279,-295,-316,-343,-337,
+-338,-343,-361,-380,-400,-414,-431,-442,-465,-505,-551,-583,-616,-646,-672,-699,-726,-759,-773,-786,
+-807,-837,-863,-886,-899,-904,-914,-931,-935,-943,-956,-966,-976,-977,-976,-983,-985,-1003,-1019,-1035,
+-1048,-1053,-1053,-1051,-1053,-1057,-1062,-1069,-1072,-1078,-1092,-1112,-1115,-1130,-1149,-1163,-1176,-1185,-1190,-1197,
+-1197,-1189,-1186,-1183,-1178,-1178,-1177,-1174,-1170,-1166,-1152,-1147,-1129,-1119,-1120,-1114,-1104,-1109,-1111,-1100,
+-1113,-1100,-1104,-1107,-1095,-1098,-1092,-1095,-1100,-1099,-1096,-1100,-1118,-1147,-1120,-1048,-1020,-1154,-1136,-984,
+-1094,-1157,-1157,-1142,-1113,-1122,-1144,-1159,-1152,-1138,-1128,-1119,-1114,-1117,-1123,-1121,-1123,-1128,-1127,-1131,
+-1133,-1134,-1120,-1131,-1130,-1118,-1112,-1111,-1108,-1108,-1085,-1090,-1096,-1081,-1074,-1061,-1066,-1055,-1035,-1029,
+-1031,-1019,-1007,-997,-987,-973,-983,-980,-978,-973,-974,-969,-946,-952,-941,-935,-926,-901,-903,-896,
+-894,-892,-885,-884,-867,-860,-844,-834,-816,-813,-810,-810,-806,-795,-776,-766,-761,-753,-735,-733,
+-719,-711,-698,-689,-684,-674,-660,-652,-637,-632,-623,-606,-615,-605,-609,-597,-576,-581,-569,-576,
+-577,-565,-556,-540,-533,-525,-525,-512,-501,-493,-480,-461,-473,-444,-423,-427,-416,-389,-370,-352,
+-329,-306,-307,-303,-287,-269,-258,-245,-230,-216,-200,-183,-181,-174,-169,-169,-158,-145,-143,-133,
+-117,-110,-94,-83,-74,-58,-34,-10,8,21,28,46,64,87,115,145,169,187,210,240,
+275,312,349,365,382,408,437,482,522,549,576,625,685,707,717,748,781,810,895,1062,
+1094,1098,1063,1057,1144,1135,1097,1175,1181,1111,1121,1171,1228,1294,1352,1407,1442,1463,1468,1451,
+1399,1293,1102,903,831,1010,1344,1753,2113,2350,2459,2548,2613,2817,3008,3138,3155,2884,2486,2308,
+2278,2257,2209,2190,2186,2203,2248,2306,2353,2368,2424,2439,2410,2400,2379,2349,2317,2288,2285,2258,
+2223,2162,2075,1992,1943,1915,1891,1860,1828,1793,1759,1724,1694,1685,1680,1682,1694,1705,1712,1712,
+1712,1709,1709,1708,1707,1697,1682,1670,1657,1641,1622,1601,1579,1550,1529,1495,1452,1422,1414,1394,
+1382,1305,1177,1067,973,899,821,768,759,804,841,827,754,640,523,404,275,141,27,-54,
+-119,-182,-229,-274,-314,-348,-375,-401,-425,-447,-468,-488,-505,-525,-546,-561,-580,-604,-631,-649,
+-664,-681,-703,-723,-742,-749,-751,-748,-746,-745,-746,-744,-744,-734,-726,-724,-732,-741,-710,-680,
+-679,-655,-624,-597,-564,-541,-523,-508,-484,-440,-401,-364,-330,-301,-260,-219,-182,-142,-105,-71,
+-38,-3,59,120,156,212,233,249,231,294,431,484,484,508,554,591,617,643,645,623,
+649,655,682,702,717,769,772,801,847,881,911,943,957,957,984,1013,1034,1056,1091,1109,
+1138,1164,1188,1216,1241,1267,1295,1327,1357,1379,1402,1418,1435,1460,1488,1506,1527,1547,1565,1597,
+1616,1635,1659,1675,1684,1692,1706,1715,1720,1728,1731,1736,1751,1765,1769,1797,1807,1768,1741,1772,
+1765,1757,1722,1716,1701,1685,1688,1673,1655,1636,1627,1627,1624,1614,1609,1607,1601,1582,1579,1573,
+1569,1571,1576,1583,1588,1602,1621,1651,1628,1625,1645,1667,1684,1699,1721,1745,1770,1762,1755,1743,
+1759,1819,1832,1768,1756,1790,1814,1890,1961,1873,1884,2001,2096,2004,1904,1868,1864,1900,1948,1992,
+1993,1963,1968,2043,2102,2049,2048,2046,2052,2061,2070,2080,2089,2096,2100,2098,2100,2103,2112,2129,
+2140,2156,2168,2184,2201,2217,2237,2251,2270,2288,2312,2329,2350,2377,2389,2398,2410,2428,2441,2449,
+2461,2474,2497,2514,2538,2557,2579,2595,2609,2618,2624,2629,2630,2628,2627,2634,2644,2654,2672,2684,
+2721,2776,2839,2905,2967,3050,3148,3183,3162,3121,3122,3144,3213,3307,3284,3306,3314,3323,3331,3311,
+3273,3266,3270,3250,3253,3226,3209,3188,3160,3141,3101,3056,3011,2958,2894,2822,2820,2771,2707,2677,
+2697,2780,2861,2921,2960,2959,2932,2900,2841,2792,2736,2686,2641,2611,2584,2564,2549,2538,2539,2546,
+2549,2574,2603,2626,2645,2677,2717,2774,2824,2878,2914,2902,2893,2906,2915,2945,2943,2896,2817,2741,
+2677,2566,2438,2364,2308,2255,2233,2244,2240,2252,2260,2255,2257,2253,2247,2251,2281,2313,2328,2351,
+2380,2411,2442,2464,2478,2484,2519,2630,2778,2889,2993,3066,3126,3219,3251,3264,3271,3241,3205,3137,
+3073,3025,2978,2935,2890,2846,2804,2770,2750,2735,2724,2721,2713,2709,2699,2692,2692,2681,2673,2660,
+2651,2643,2608,2607,2611,2613,2617,2621,2612,2649,2681,2664,2714,2699,2783,2766,2772,2865,2790,2678,
+2652,2645,2598,2507,2414,2459,2382,2426,2372,2277,2278,2248,2202,2116,2100,2121,2045,2033,2046,2020,
+2012,1982,1982,1982,1976,1949,1966,1962,1972,1973,1959,1933,1919,1891,1868,1835,1807,1800,1778,1747,
+1723,1698,1675,1653,1625,1599,1570,1549,1524,1500,1470,1447,1422,1398,1369,1343,1325,1298,1267,1223,
+1185,1152,1149,1122,1078,1059,1033,1014,991,951,921,874,836,821,808,785,760,740,722,678,
+662,639,611,582,544,487,473,473,431,400,358,338,270,232,183,138,98,45,22,-39,
+-98,-154,-197,-241,-289,-334,-402,-423,-420,-544,-626,-663,-676,-693,-733,-773,-803,-840,-870,-891,
+-930,-961,-1004,-1029,-1075,-1125,-1194,-1267,-1328,-1381,-1427,-1468,-1521,-1568,-1626,-1669,-1727,-1778,-1823,-1870,
+-1932,-1976,-2018,-2069,-2099,-2144,-2211,-2245,-2283,-2326,-2362,-2404,-2449,-2505,-2566,-2607,-2653,-2697,-2742,-2787,
+-2826,-2857,-2892,-2931,-2967,-3012,-3053,-3088,-3117,-3153,-3186,-3220,-3231,-3235,-3248,-3279,-3306,-3333,-3377,-3417,
+-3497,-3672,-3678,-3591,-3552,-3634,-3687,-3709,-3792,-3868,-3913,-3988,-4061,-4059,-4067,-4076,-4054,-4044,-4035,-4063,
+-4069,-4076,-4059,-4030,-4015,-4000,-3973,-3930,-3878,-3958,-3975,-3950,-3907,-3866,-3808,-3709,-3657,-3633,-3627,-3625,
+-3618,-3630,-3662,-3685,-3701,-3710,-3730,-3764,-3784,-3770,-3706,-3612,-3543,-3454,-3345,-3245,-3199,-3251,-3292,-3184,
+-2987,-2883,-2822,-2784,-2771,-2761,-2742,-2743,-2767,-2809,-2852,-2883,-2914,-2954,-2986,-3009,-3021,-3003,-2978,-2922,
+-2889,-2899,-2913,-2921,-2931,-2919,-2899,-2875,-2843,-2804,-2762,-2718,-2675,-2626,-2570,-2515,-2474,-2450,-2456,-2483,
+-2485,-2494,-2534,-2538,-2534,-2530,-2526,-2530,-2555,-2578,-2611,-2602,-2506,-2384,-2309,-2269,-2245,-2222,-2173,-2104,
+-2013,-1936,-1852,-1761,-1661,-1570,-1506,-1451,-1395,-1328,-1258,-1193,-1129,-1059,-976,-875,-759,-657,-551,-459,
+-385,-295,-194,-125,-96,-58,-20,39,148,223,315,438,497,482,482,495,504,504,511,502,
+519,540,567,598,619,651,710,770,822,875,924,966,1005,1040,1095,1158,1224,1294,1366,1428,
+1482,1545,1597,1665,1759,1823,1875,1935,1979,2046,2103,2198,2302,2374,2448,2492,2491,2417,2379,2331,
+2286,2277,2242,2187,2057,1831,1691,1621,1622,1660,1707,1745,1770,1822,1821,1833,1850,1861,1881,1924,
+1967,1995,1991,1990,1995,2023,2040,2069,2086,2096,2111,2141,2140,2153,2243,2349,2420,2483,2496,2495,
+2539,2568,2571,2597,2648,2700,2751,2784,2789,2808,2799,2801,2807,2793,2773,2786,2832,2871,2901,2906,
+2913,2907,2904,2970,3174,3282,3243,3225,3248,3248,3273,3306,3319,3337,3360,3400,3450,3507,3557,3577,
+3679,3751,3740,3765,3816,3893,3921,3865,3832,3817,3822,3872,3941,3940,3942,3952,3942,3957,3994,3990,
+4034,4065,4074,4075,4073,4070,4057,4057,4109,4177,4172,4173,4164,4170,4068,4035,3927,3739,3445,3091,
+2676,2243,1929,1735,1721,1906,2128,2316,2466,2577,2639,2703,2766,2785,2797,2796,2776,2753,2710,2661,
+2611,2555,2493,2437,2387,2335,2240,2148,2122,2164,2295,2178,2005,1900,1835,1806,1781,1754,1735,1700,
+1668,1630,1600,1585,1565,1530,1482,1428,1371,1338,1314,1266,1224,1163,1175,1143,1081,1018,1003,995,
+953,919,889,859,830,802,777,754,718,699,692,676,661,646,626,597,555,521,490,456,
+428,387,357,328,305,273,233,212,201,184,160,139,125,105,86,72,57,39,23,-4,
+-24,-48,-70,-97,-120,-140,-158,-176,-191,-206,-223,-240,-246,-249,-255,-269,-290,-304,-313,-339,
+-344,-365,-369,-382,-401,-430,-454,-466,-477,-504,-521,-546,-586,-623,-656,-687,-706,-732,-762,-765,
+-784,-809,-822,-816,-856,-880,-893,-918,-932,-937,-950,-951,-966,-970,-972,-979,-984,-997,-1009,-1024,
+-1043,-1056,-1059,-1056,-1052,-1048,-1052,-1057,-1066,-1073,-1077,-1091,-1107,-1131,-1139,-1149,-1163,-1170,-1180,-1186,
+-1186,-1183,-1175,-1175,-1176,-1170,-1164,-1163,-1162,-1158,-1143,-1127,-1130,-1110,-1101,-1111,-1100,-1109,-1101,-1102,
+-1104,-1103,-1116,-1119,-1115,-1113,-1108,-1110,-1096,-1090,-1081,-1087,-1091,-1115,-1138,-1109,-961,-1047,-1174,-1165,
+-1127,-1144,-1170,-1174,-1162,-1176,-1160,-1151,-1142,-1141,-1171,-1169,-1148,-1137,-1126,-1115,-1112,-1114,-1114,-1114,
+-1119,-1126,-1115,-1111,-1118,-1118,-1118,-1121,-1124,-1127,-1122,-1119,-1109,-1104,-1101,-1099,-1103,-1089,-1079,-1063,
+-1053,-1040,-1029,-1012,-1007,-996,-984,-984,-981,-986,-988,-988,-984,-973,-956,-946,-941,-935,-900,-909,
+-890,-896,-890,-883,-875,-876,-856,-846,-841,-825,-817,-818,-810,-810,-797,-783,-773,-772,-759,-749,
+-739,-735,-724,-707,-693,-684,-678,-667,-667,-647,-625,-627,-615,-615,-605,-605,-596,-594,-573,-585,
+-583,-575,-568,-564,-546,-531,-528,-536,-529,-501,-481,-469,-467,-473,-462,-443,-427,-417,-388,-365,
+-354,-338,-313,-312,-298,-296,-281,-262,-248,-238,-228,-217,-205,-194,-189,-190,-184,-173,-165,-148,
+-135,-130,-114,-102,-90,-80,-63,-42,-16,1,21,33,39,56,77,106,134,162,182,213,
+243,278,310,333,351,379,413,461,513,571,565,597,728,899,809,784,827,873,871,968,
+1211,1261,1211,1019,968,1055,1046,1041,1070,1096,1125,1162,1218,1275,1333,1379,1422,1445,1451,1446,
+1407,1336,1204,1008,845,878,1131,1445,1832,2151,2370,2466,2544,2604,2794,2987,3129,3065,2837,2491,
+2332,2335,2309,2245,2210,2192,2200,2225,2256,2271,2294,2375,2368,2326,2308,2289,2271,2245,2221,2218,
+2202,2173,2119,2049,1985,1945,1916,1888,1861,1831,1802,1763,1723,1700,1700,1707,1706,1695,1692,1694,
+1686,1680,1677,1682,1675,1672,1673,1662,1653,1643,1631,1616,1597,1574,1546,1512,1477,1451,1423,1407,
+1361,1305,1218,1111,1009,926,859,807,791,804,835,809,717,625,531,420,299,178,79,-1,
+-72,-137,-199,-251,-300,-344,-382,-411,-437,-463,-481,-498,-512,-523,-538,-553,-561,-577,-601,-625,
+-649,-667,-680,-692,-708,-727,-740,-745,-744,-741,-741,-737,-737,-733,-725,-720,-719,-727,-738,-711,
+-691,-667,-637,-611,-580,-555,-541,-525,-511,-486,-451,-408,-370,-337,-317,-282,-240,-195,-158,-116,
+-71,-43,-2,43,92,152,224,307,313,292,219,161,225,407,535,580,612,636,670,672,
+654,675,681,703,721,739,780,796,823,851,878,904,936,959,986,1010,1031,1050,1080,1112,
+1139,1170,1191,1214,1238,1271,1302,1321,1350,1378,1401,1424,1437,1455,1493,1544,1568,1575,1587,1605,
+1635,1655,1671,1691,1706,1713,1734,1732,1730,1735,1732,1739,1733,1755,1783,1782,1784,1788,1776,1839,
+1825,1780,1763,1721,1710,1687,1684,1675,1666,1670,1665,1652,1644,1642,1633,1622,1616,1595,1602,1595,
+1597,1592,1596,1595,1601,1600,1612,1608,1617,1614,1618,1635,1657,1678,1700,1719,1729,1736,1724,1711,
+1730,1890,1989,1936,1774,1715,1712,1735,1813,1980,2005,2008,1896,1878,1844,1842,1864,1865,1905,1949,
+2042,2071,1961,1939,1955,1977,1990,2006,2023,2036,2046,2056,2064,2073,2074,2075,2075,2079,2084,2095,
+2112,2121,2133,2150,2166,2179,2196,2219,2236,2253,2275,2304,2321,2339,2367,2379,2391,2401,2421,2439,
+2451,2467,2484,2504,2524,2548,2563,2579,2590,2596,2606,2612,2615,2614,2613,2605,2606,2612,2622,2639,
+2653,2683,2727,2763,2797,2853,2943,3077,3148,3138,3111,3113,3135,3227,3265,3309,3300,3277,3274,3304,
+3305,3295,3290,3269,3237,3224,3190,3153,3104,3093,3075,3043,3038,3016,2981,2929,2880,2821,2806,2802,
+2790,2795,2849,2920,2967,2961,2928,2885,2824,2769,2722,2679,2641,2608,2588,2577,2564,2557,2552,2556,
+2569,2590,2606,2621,2641,2686,2736,2800,2856,2923,2975,3000,2985,2948,2934,2923,2910,2882,2844,2792,
+2743,2674,2553,2463,2393,2352,2300,2285,2293,2294,2322,2328,2319,2316,2308,2300,2308,2346,2362,2382,
+2406,2434,2462,2486,2502,2515,2532,2572,2664,2802,2918,2996,3057,3132,3246,3315,3309,3300,3294,3265,
+3211,3154,3103,3059,3008,2954,2906,2868,2843,2821,2800,2788,2785,2786,2782,2781,2786,2800,2781,2765,
+2747,2735,2734,2698,2684,2703,2726,2773,2713,2705,2724,2777,2797,2836,2802,2910,2854,2845,2918,2779,
+2689,2757,2749,2675,2631,2478,2472,2413,2435,2370,2316,2307,2290,2232,2151,2147,2148,2111,2079,2066,
+2075,2056,2043,2035,2030,2012,2007,2018,2025,2025,2021,2011,1987,1966,1942,1909,1898,1879,1851,1827,
+1805,1777,1753,1729,1703,1676,1646,1622,1595,1569,1539,1508,1485,1464,1439,1412,1391,1374,1344,1299,
+1259,1234,1213,1180,1156,1116,1098,1073,1051,1019,995,957,904,893,874,838,814,798,785,742,
+730,715,689,661,624,590,587,545,522,497,447,415,368,334,286,242,203,152,116,81,
+11,-46,-94,-132,-173,-224,-289,-350,-353,-416,-490,-531,-572,-601,-635,-679,-714,-750,-781,-813,
+-858,-887,-910,-948,-978,-1021,-1074,-1155,-1211,-1272,-1333,-1382,-1422,-1475,-1527,-1585,-1620,-1669,-1723,-1771,
+-1816,-1861,-1926,-1953,-2011,-2045,-2084,-2149,-2188,-2225,-2265,-2317,-2357,-2400,-2445,-2495,-2544,-2593,-2641,-2690,
+-2739,-2781,-2820,-2856,-2894,-2933,-2973,-3010,-3048,-3078,-3111,-3149,-3175,-3186,-3193,-3220,-3250,-3282,-3316,-3353,
+-3398,-3442,-3518,-3612,-3573,-3591,-3650,-3643,-3641,-3751,-3821,-3873,-3960,-3958,-3990,-4028,-4060,-4081,-4082,-4068,
+-4070,-4073,-4093,-4076,-4048,-4032,-4020,-4012,-3979,-3936,-3933,-3966,-3948,-3911,-3867,-3818,-3717,-3650,-3615,-3609,
+-3600,-3604,-3616,-3648,-3687,-3707,-3718,-3737,-3765,-3781,-3768,-3709,-3603,-3541,-3480,-3349,-3259,-3209,-3261,-3287,
+-3173,-2991,-2914,-2866,-2824,-2810,-2793,-2786,-2787,-2815,-2858,-2914,-2954,-2993,-3036,-3069,-3068,-3062,-3036,-3003,
+-2975,-2968,-2977,-2986,-2998,-2992,-2976,-2951,-2922,-2892,-2841,-2790,-2744,-2699,-2661,-2616,-2585,-2567,-2575,-2609,
+-2631,-2671,-2708,-2748,-2750,-2778,-2783,-2767,-2776,-2785,-2787,-2797,-2757,-2676,-2588,-2505,-2420,-2363,-2320,-2272,
+-2217,-2157,-2097,-2022,-1923,-1819,-1709,-1582,-1497,-1424,-1335,-1256,-1183,-1115,-1042,-970,-879,-788,-682,-572,
+-480,-394,-330,-262,-218,-172,-116,-56,31,124,169,227,340,415,407,406,408,409,409,385,
+400,433,458,490,525,571,629,685,739,791,841,883,924,969,1019,1072,1128,1189,1252,1320,
+1377,1431,1492,1530,1593,1697,1782,1815,1866,1918,1977,2052,2122,2187,2259,2338,2421,2412,2330,2293,
+2242,2200,2174,2105,1980,1803,1632,1539,1528,1569,1614,1652,1693,1714,1753,1763,1768,1781,1794,1813,
+1847,1895,1919,1925,1929,1936,1961,1980,1993,2007,2029,2041,2036,2027,2039,2122,2231,2342,2379,2398,
+2408,2442,2480,2496,2533,2572,2625,2681,2727,2730,2731,2729,2725,2746,2747,2745,2735,2727,2773,2811,
+2826,2851,2874,2895,2905,3032,3170,3216,3171,3197,3205,3221,3259,3268,3278,3297,3327,3362,3402,3449,
+3482,3565,3708,3829,3877,3822,3884,3920,3946,3886,3839,3820,3837,3895,3898,3915,3936,3943,3930,3958,
+3958,3980,4013,4022,4028,4026,4016,4015,4016,4082,4132,4101,4102,4095,4035,3997,3886,3721,3445,3142,
+2801,2421,2062,1821,1690,1768,1983,2188,2350,2478,2585,2694,2731,2743,2759,2773,2758,2735,2708,2666,
+2619,2572,2521,2463,2409,2328,2265,2188,2119,2082,2080,2093,2108,1972,1882,1815,1778,1744,1714,1696,
+1665,1635,1605,1586,1572,1552,1517,1470,1414,1355,1306,1285,1264,1218,1181,1179,1134,1076,1012,995,
+981,936,902,876,848,817,786,758,736,705,687,678,664,644,629,610,577,540,502,471,
+441,415,382,350,319,291,261,227,207,196,176,146,126,118,107,92,73,58,40,16,
+-6,-35,-57,-83,-114,-147,-171,-188,-202,-215,-229,-246,-257,-272,-274,-272,-281,-298,-325,-344,
+-351,-372,-398,-411,-422,-435,-446,-451,-471,-497,-525,-539,-526,-586,-639,-668,-694,-715,-734,-755,
+-777,-788,-818,-846,-862,-885,-902,-904,-909,-918,-942,-952,-955,-966,-973,-977,-982,-989,-997,-1004,
+-1014,-1032,-1046,-1054,-1056,-1049,-1049,-1050,-1061,-1075,-1092,-1096,-1102,-1114,-1129,-1148,-1144,-1148,-1156,-1164,
+-1167,-1167,-1172,-1178,-1179,-1179,-1171,-1167,-1165,-1152,-1138,-1132,-1142,-1158,-1154,-1140,-1144,-1123,-1141,-1140,
+-1138,-1117,-1087,-1086,-1071,-1083,-1084,-1084,-1105,-1102,-1090,-1093,-1092,-1080,-1102,-1140,-1161,-1084,-1125,-1167,
+-1146,-1131,-1140,-1159,-1170,-1149,-1192,-1203,-1205,-1217,-1195,-1211,-1209,-1189,-1168,-1158,-1144,-1142,-1146,-1148,
+-1143,-1141,-1135,-1110,-1113,-1107,-1101,-1103,-1110,-1117,-1122,-1122,-1116,-1112,-1106,-1108,-1106,-1099,-1089,-1082,
+-1084,-1081,-1085,-1047,-1023,-1014,-1002,-994,-1002,-1021,-1013,-1013,-1002,-996,-977,-965,-946,-943,-929,-921,
+-926,-898,-902,-891,-883,-877,-875,-867,-859,-848,-837,-836,-825,-814,-796,-788,-785,-772,-757,-742,
+-739,-738,-734,-725,-709,-694,-681,-674,-670,-660,-657,-639,-628,-624,-616,-610,-602,-599,-588,-579,
+-573,-570,-570,-563,-560,-547,-532,-529,-531,-519,-498,-479,-461,-467,-457,-456,-438,-420,-401,-376,
+-370,-362,-346,-340,-320,-312,-309,-293,-274,-258,-250,-234,-216,-210,-204,-211,-206,-198,-182,-167,
+-161,-152,-142,-128,-115,-104,-90,-78,-63,-38,-16,0,11,27,41,65,95,126,157,180,
+208,240,269,293,318,348,384,429,488,530,548,546,587,669,739,762,784,747,752,779,
+858,972,1009,971,921,906,930,965,1007,1054,1105,1149,1199,1254,1303,1351,1390,1414,1437,1437,
+1408,1361,1259,1110,930,839,954,1242,1576,1930,2214,2368,2459,2563,2616,2848,3084,3168,3086,2879,
+2590,2422,2383,2332,2255,2216,2194,2180,2193,2210,2237,2288,2320,2282,2246,2235,2232,2210,2190,2183,
+2193,2151,2115,2079,2027,1989,1944,1910,1880,1848,1820,1801,1772,1736,1717,1723,1719,1716,1705,1702,
+1692,1678,1660,1641,1639,1648,1651,1654,1645,1641,1633,1620,1592,1568,1554,1539,1511,1477,1450,1387,
+1343,1269,1175,1104,1023,953,887,832,804,841,873,830,706,569,483,409,310,206,114,35,
+-35,-102,-169,-231,-290,-341,-389,-428,-461,-490,-514,-526,-539,-552,-563,-571,-578,-582,-590,-616,
+-639,-662,-683,-693,-697,-704,-720,-734,-744,-743,-737,-730,-725,-717,-717,-718,-718,-720,-728,-734,
+-724,-684,-663,-629,-610,-580,-555,-535,-519,-503,-484,-451,-409,-364,-334,-319,-288,-245,-195,-147,
+-116,-76,-26,6,45,110,157,217,278,320,352,373,343,276,240,329,511,580,620,654,
+677,650,656,661,669,702,734,781,823,859,884,927,934,957,984,1024,1069,1090,1103,1117,
+1133,1164,1203,1232,1263,1289,1319,1343,1359,1377,1403,1428,1476,1496,1503,1545,1564,1579,1609,1606,
+1639,1656,1675,1702,1710,1724,1739,1732,1745,1749,1762,1775,1785,1807,1821,1831,1842,1862,1870,1772,
+1769,1760,1757,1763,1752,1759,1728,1715,1703,1697,1683,1675,1657,1654,1645,1647,1636,1627,1619,1619,
+1614,1614,1621,1619,1618,1620,1612,1616,1623,1630,1634,1647,1658,1664,1671,1683,1702,1703,1703,1700,
+1698,1766,1934,1894,1794,1708,1685,1689,1711,1811,1959,2000,1958,1829,1792,1802,1829,1865,1867,1921,
+1961,1962,1958,1922,1916,1928,1945,1968,1992,2011,2025,2035,2045,2052,2055,2054,2056,2058,2063,2067,
+2079,2097,2105,2117,2128,2145,2160,2179,2197,2216,2239,2274,2283,2314,2334,2358,2373,2388,2397,2419,
+2445,2462,2475,2494,2515,2536,2553,2562,2573,2581,2590,2594,2600,2605,2599,2592,2584,2582,2586,2594,
+2614,2631,2653,2678,2707,2739,2796,2870,2991,3086,3111,3104,3105,3127,3174,3196,3241,3260,3262,3266,
+3255,3260,3246,3231,3209,3180,3144,3092,3049,3029,3016,3009,3000,3001,2990,2956,2921,2871,2810,2767,
+2779,2823,2848,2893,2931,2937,2936,2882,2819,2772,2724,2681,2645,2612,2588,2574,2564,2556,2560,2561,
+2575,2602,2616,2632,2649,2689,2744,2808,2860,2914,2973,3030,3051,3025,2991,2953,2941,2921,2881,2835,
+2779,2730,2655,2550,2477,2423,2388,2344,2344,2345,2360,2378,2376,2370,2370,2363,2354,2374,2406,2420,
+2440,2464,2490,2511,2527,2536,2554,2580,2624,2719,2859,2983,3045,3088,3173,3256,3292,3309,3334,3336,
+3310,3267,3231,3171,3111,3067,3039,2985,2925,2904,2897,2893,2877,2867,2866,2874,2874,2861,2877,2873,
+2866,2866,2826,2811,2791,2774,2805,2798,2852,2812,2825,2855,2846,2898,2926,2881,2984,2919,2855,2869,
+2780,2796,2890,2818,2722,2671,2541,2520,2461,2469,2386,2387,2350,2298,2239,2181,2186,2149,2126,2103,
+2110,2104,2096,2092,2083,2067,2044,2067,2079,2076,2075,2067,2061,2041,2013,1999,1985,1958,1933,1904,
+1880,1860,1833,1806,1783,1757,1726,1695,1668,1638,1611,1582,1555,1530,1504,1482,1463,1441,1406,1360,
+1341,1314,1293,1258,1221,1193,1157,1138,1124,1087,1070,1028,973,951,940,908,877,864,848,811,
+810,800,768,724,669,659,661,647,615,576,542,515,471,429,386,348,303,266,234,170,
+129,59,11,-28,-71,-110,-173,-186,-252,-314,-413,-444,-459,-502,-535,-566,-608,-646,-703,-733,
+-772,-808,-840,-871,-910,-948,-984,-1045,-1109,-1163,-1228,-1286,-1339,-1389,-1439,-1487,-1529,-1570,-1614,-1669,
+-1723,-1761,-1797,-1855,-1900,-1936,-1987,-2036,-2095,-2132,-2176,-2225,-2254,-2290,-2339,-2379,-2435,-2486,-2540,-2591,
+-2648,-2697,-2739,-2778,-2819,-2846,-2882,-2922,-2962,-3002,-3034,-3071,-3106,-3129,-3145,-3164,-3180,-3213,-3253,-3286,
+-3327,-3365,-3389,-3435,-3541,-3639,-3651,-3689,-3703,-3711,-3723,-3734,-3813,-3840,-3870,-3937,-4006,-4053,-4085,-4099,
+-4097,-4092,-4093,-4081,-4062,-4045,-4033,-4025,-4010,-3990,-3979,-3981,-3989,-3961,-3929,-3888,-3833,-3733,-3662,-3619,
+-3594,-3594,-3602,-3611,-3639,-3671,-3693,-3728,-3755,-3778,-3803,-3795,-3735,-3635,-3557,-3480,-3357,-3274,-3236,-3288,
+-3299,-3193,-3029,-2972,-2938,-2908,-2891,-2885,-2879,-2874,-2886,-2919,-2976,-3035,-3063,-3089,-3095,-3089,-3069,-3051,
+-3042,-3045,-3063,-3065,-3060,-3047,-3029,-3012,-2979,-2946,-2916,-2883,-2842,-2793,-2759,-2746,-2754,-2797,-2806,-2806,
+-2870,-2912,-2939,-2948,-2953,-2960,-2955,-2941,-2918,-2905,-2894,-2883,-2884,-2858,-2810,-2743,-2661,-2553,-2470,-2403,
+-2348,-2296,-2247,-2196,-2139,-2057,-1955,-1848,-1740,-1608,-1489,-1380,-1292,-1215,-1138,-1068,-999,-918,-837,-738,
+-623,-516,-429,-388,-339,-285,-234,-166,-89,11,68,97,149,242,319,331,326,326,330,316,
+306,327,362,395,428,470,531,592,646,698,745,790,829,889,947,986,1026,1077,1137,1203,
+1262,1314,1363,1414,1459,1504,1599,1703,1758,1794,1866,1938,1994,2062,2132,2201,2263,2320,2315,2269,
+2239,2180,2103,2046,1927,1734,1568,1456,1446,1474,1514,1566,1611,1648,1663,1676,1706,1708,1716,1734,
+1755,1791,1839,1856,1864,1874,1887,1902,1919,1933,1939,1943,1947,1940,1939,1963,2038,2138,2249,2300,
+2336,2349,2354,2389,2425,2450,2503,2550,2616,2662,2664,2650,2661,2669,2682,2692,2696,2694,2686,2675,
+2711,2753,2791,2819,2840,2849,2886,2990,3074,3128,3132,3185,3182,3249,3238,3221,3224,3256,3283,3323,
+3381,3406,3454,3576,3744,3841,3909,3911,3881,3924,3956,3912,3852,3833,3874,3862,3863,3860,3892,3899,
+3910,3920,3933,3932,3968,3958,3965,3967,3973,4005,4026,4034,4030,4021,4004,3940,3866,3778,3466,3170,
+2874,2560,2211,1925,1754,1702,1845,2055,2234,2378,2485,2578,2677,2709,2727,2734,2731,2718,2696,2664,
+2619,2575,2529,2481,2425,2360,2300,2230,2169,2102,2051,2006,1970,1936,1898,1882,1816,1761,1718,1688,
+1675,1641,1615,1593,1573,1557,1533,1501,1455,1401,1342,1302,1278,1260,1194,1193,1177,1133,1070,1015,
+996,977,926,889,865,839,806,771,746,723,694,670,650,632,604,597,586,563,529,495,
+459,430,411,365,342,314,282,248,215,197,185,160,132,113,103,96,84,65,49,31,
+13,-10,-41,-71,-99,-130,-160,-187,-207,-224,-237,-248,-259,-276,-291,-297,-296,-301,-312,-331,
+-360,-383,-399,-438,-430,-451,-460,-476,-478,-515,-521,-551,-563,-585,-612,-643,-670,-696,-721,-741,
+-757,-776,-800,-819,-829,-848,-868,-887,-899,-911,-920,-934,-949,-953,-961,-971,-975,-980,-986,-992,
+-1007,-1017,-1027,-1035,-1044,-1044,-1043,-1045,-1053,-1060,-1074,-1092,-1109,-1112,-1113,-1122,-1131,-1130,-1134,-1136,
+-1140,-1146,-1158,-1172,-1171,-1160,-1149,-1140,-1150,-1159,-1163,-1165,-1154,-1133,-1140,-1111,-1064,-1050,-1091,-1066,
+-1045,-1056,-1091,-1113,-1119,-1118,-1111,-1106,-1110,-1094,-1091,-1088,-1092,-1104,-1098,-1093,-1129,-1125,-1105,-1130,
+-1141,-1125,-1115,-1119,-1141,-1161,-1136,-1111,-1152,-1148,-1183,-1152,-1226,-1238,-1212,-1195,-1173,-1163,-1154,-1150,
+-1161,-1155,-1158,-1160,-1146,-1147,-1135,-1130,-1126,-1125,-1122,-1114,-1111,-1116,-1109,-1103,-1105,-1098,-1089,-1084,
+-1074,-1078,-1080,-1081,-1070,-1052,-1020,-1011,-1003,-991,-1007,-966,-1041,-1024,-1006,-991,-975,-957,-947,-930,
+-912,-919,-910,-911,-906,-895,-884,-876,-872,-868,-859,-844,-839,-825,-813,-800,-792,-780,-773,-749,
+-735,-729,-723,-723,-717,-709,-690,-675,-657,-658,-650,-638,-625,-614,-615,-611,-604,-597,-591,-582,
+-574,-571,-569,-564,-566,-556,-541,-516,-523,-509,-503,-484,-465,-462,-450,-436,-421,-411,-413,-398,
+-386,-363,-360,-357,-343,-328,-323,-324,-296,-287,-257,-249,-242,-225,-213,-205,-208,-211,-209,-200,
+-187,-170,-157,-153,-142,-131,-116,-104,-92,-77,-53,-33,-16,0,11,31,58,92,122,153,
+182,209,235,258,288,320,348,383,428,470,503,516,532,567,610,654,691,711,699,715,
+751,804,861,892,896,895,903,931,973,1024,1077,1129,1180,1232,1280,1317,1348,1384,1399,1405,
+1394,1353,1284,1167,1013,901,917,1079,1344,1680,2030,2249,2317,2390,2464,2576,2805,3106,3242,3132,
+2925,2651,2531,2439,2336,2256,2223,2182,2161,2171,2181,2193,2254,2257,2207,2177,2163,2154,2151,2158,
+2151,2150,2116,2062,2027,1990,1957,1916,1883,1859,1842,1819,1800,1780,1758,1735,1750,1743,1719,1696,
+1684,1677,1664,1638,1615,1609,1608,1616,1620,1614,1611,1599,1589,1567,1532,1515,1506,1479,1456,1400,
+1346,1308,1209,1119,1048,979,916,858,818,800,846,864,749,610,475,383,302,222,135,52,
+-21,-87,-152,-218,-280,-336,-391,-434,-473,-500,-527,-548,-560,-571,-582,-593,-597,-603,-605,-612,
+-637,-657,-680,-699,-707,-708,-709,-721,-735,-745,-746,-736,-725,-716,-705,-697,-709,-712,-714,-717,
+-718,-717,-696,-670,-643,-611,-584,-559,-533,-517,-496,-478,-447,-413,-372,-328,-305,-285,-248,-207,
+-164,-131,-87,-39,-4,42,94,129,170,227,284,338,383,423,430,404,305,307,398,498,
+553,575,622,650,679,719,747,791,840,883,920,946,983,987,998,1027,1070,1110,1139,1167,
+1190,1213,1240,1269,1305,1338,1361,1393,1415,1432,1460,1488,1496,1519,1540,1550,1568,1578,1598,1619,
+1634,1648,1667,1702,1719,1755,1767,1794,1794,1808,1809,1814,1823,1818,1807,1803,1810,1796,1862,1863,
+1847,1840,1826,1829,1805,1782,1763,1748,1745,1730,1722,1721,1704,1685,1677,1671,1661,1652,1643,1635,
+1632,1633,1637,1644,1646,1637,1634,1629,1632,1640,1638,1655,1674,1680,1684,1685,1695,1711,1729,1703,
+1697,1731,1790,1847,1821,1708,1678,1682,1693,1714,1771,1889,1980,1857,1829,1811,1811,1832,1867,1850,
+1917,1964,1920,1886,1885,1897,1917,1937,1960,1985,2002,2013,2024,2032,2036,2038,2038,2044,2048,2053,
+2056,2070,2082,2090,2103,2116,2130,2147,2163,2179,2204,2222,2245,2273,2305,2322,2338,2360,2383,2403,
+2421,2441,2462,2485,2505,2528,2541,2551,2559,2573,2582,2584,2588,2589,2590,2585,2580,2567,2566,2568,
+2578,2597,2618,2641,2664,2695,2735,2780,2844,2911,3009,3078,3091,3115,3127,3139,3170,3202,3226,3231,
+3234,3221,3201,3175,3152,3129,3098,3060,3031,3001,2995,2997,2999,3008,3014,2999,2969,2906,2835,2782,
+2741,2727,2748,2790,2830,2877,2893,2868,2816,2772,2732,2691,2653,2620,2594,2577,2564,2559,2552,2560,
+2574,2598,2624,2645,2661,2680,2729,2784,2851,2911,2960,2980,3001,3014,3018,3002,2970,2954,2925,2891,
+2855,2799,2724,2627,2559,2491,2456,2418,2395,2397,2404,2421,2424,2419,2420,2422,2419,2411,2440,2466,
+2476,2495,2514,2535,2555,2565,2574,2609,2635,2692,2809,2991,3187,3144,3149,3223,3310,3297,3322,3352,
+3347,3323,3286,3243,3205,3168,3143,3108,3061,3025,2993,2961,2970,2956,2944,2941,2953,2967,2943,2958,
+2947,2954,2942,2902,2894,2880,2872,2871,2869,2927,2925,2930,2961,2917,2966,2934,2899,2986,2910,2886,
+2923,2855,2896,2931,2822,2755,2716,2577,2528,2490,2492,2405,2415,2383,2338,2250,2235,2225,2181,2147,
+2156,2148,2141,2142,2140,2129,2114,2099,2125,2129,2125,2125,2113,2103,2087,2081,2065,2035,2014,1986,
+1964,1940,1914,1889,1867,1836,1807,1775,1743,1710,1680,1652,1625,1602,1578,1552,1529,1505,1470,1426,
+1406,1385,1365,1340,1306,1268,1232,1194,1179,1152,1127,1090,1041,1036,1007,969,941,930,925,885,
+872,862,832,778,733,730,739,712,679,651,630,594,564,536,493,451,402,356,327,289,
+240,174,128,73,15,-14,-70,-74,-144,-240,-324,-368,-384,-403,-426,-482,-530,-568,-598,-642,
+-681,-723,-749,-777,-816,-864,-915,-970,-1028,-1076,-1125,-1183,-1237,-1292,-1341,-1386,-1433,-1474,-1508,-1549,
+-1613,-1658,-1703,-1742,-1806,-1852,-1873,-1935,-1980,-2032,-2088,-2122,-2172,-2200,-2233,-2278,-2335,-2382,-2430,-2483,
+-2534,-2587,-2645,-2690,-2728,-2767,-2804,-2839,-2883,-2922,-2959,-2990,-3027,-3061,-3088,-3104,-3121,-3143,-3182,-3218,
+-3260,-3292,-3319,-3339,-3372,-3408,-3500,-3656,-3730,-3719,-3682,-3734,-3791,-3820,-3821,-3841,-3919,-4000,-4040,-4069,
+-4082,-4085,-4095,-4094,-4076,-4061,-4048,-4039,-4030,-4013,-3983,-3989,-3979,-3986,-3982,-3960,-3927,-3871,-3790,-3695,
+-3653,-3634,-3621,-3621,-3646,-3664,-3679,-3694,-3728,-3780,-3813,-3841,-3833,-3790,-3705,-3600,-3495,-3395,-3317,-3304,
+-3315,-3318,-3256,-3139,-3104,-3071,-3046,-3022,-3003,-2987,-2995,-3003,-3024,-3060,-3104,-3134,-3129,-3134,-3123,-3114,
+-3123,-3147,-3164,-3144,-3123,-3109,-3090,-3068,-3031,-2995,-2969,-2948,-2934,-2912,-2888,-2935,-3021,-3025,-3040,-3043,
+-3035,-3034,-3038,-3044,-3048,-3056,-3059,-3050,-3036,-3013,-3000,-2980,-2963,-2954,-2933,-2901,-2848,-2773,-2674,-2569,
+-2480,-2413,-2364,-2320,-2276,-2220,-2148,-2062,-1960,-1867,-1757,-1607,-1467,-1372,-1290,-1200,-1110,-1043,-970,-887,
+-796,-679,-553,-520,-474,-410,-357,-297,-220,-126,-37,-1,21,65,143,226,250,261,270,273,
+256,256,270,308,347,395,439,489,543,594,646,692,735,790,855,903,942,976,1023,1082,
+1144,1195,1255,1293,1337,1406,1452,1519,1619,1694,1752,1816,1895,1939,2001,2067,2139,2203,2240,2234,
+2212,2187,2094,1998,1896,1696,1502,1367,1338,1369,1422,1474,1518,1555,1583,1602,1608,1630,1648,1657,
+1662,1694,1729,1757,1789,1808,1821,1835,1849,1854,1869,1879,1874,1875,1865,1864,1883,1950,2083,2136,
+2205,2236,2264,2275,2315,2347,2389,2406,2471,2534,2568,2582,2589,2598,2613,2627,2640,2654,2650,2651,
+2638,2632,2658,2707,2750,2779,2804,2824,2877,2934,3005,3071,3088,3108,3170,3225,3214,3211,3190,3194,
+3234,3289,3324,3358,3422,3550,3674,3779,3839,3858,3902,3933,3922,3916,3878,3873,3852,3850,3841,3839,
+3853,3859,3861,3867,3886,3888,3888,3908,3913,3932,3998,3975,3956,3955,3949,3927,3853,3743,3529,3212,
+2922,2655,2370,2060,1830,1719,1743,1911,2105,2265,2395,2494,2565,2621,2663,2706,2711,2699,2685,2656,
+2617,2576,2528,2481,2432,2377,2321,2265,2207,2143,2082,2021,1959,1912,1908,1876,1880,1845,1768,1710,
+1675,1647,1620,1603,1580,1556,1535,1508,1476,1435,1387,1337,1300,1272,1247,1186,1191,1167,1124,1071,
+1018,982,973,924,885,859,833,802,766,736,711,675,653,630,602,592,558,555,546,523,
+490,453,415,411,351,331,303,270,234,202,186,175,147,134,112,87,81,68,46,26,
+13,-3,-31,-58,-85,-113,-142,-171,-198,-223,-237,-249,-264,-277,-291,-302,-308,-321,-319,-329,
+-345,-369,-396,-420,-444,-473,-481,-499,-494,-517,-531,-545,-570,-588,-606,-627,-646,-677,-701,-724,
+-743,-764,-776,-789,-804,-818,-847,-859,-867,-875,-898,-912,-917,-939,-949,-961,-973,-978,-983,-984,
+-993,-1002,-1009,-1012,-1020,-1022,-1028,-1034,-1036,-1044,-1049,-1055,-1070,-1092,-1118,-1113,-1110,-1114,-1121,-1122,
+-1123,-1134,-1152,-1161,-1157,-1136,-1107,-1077,-1134,-1186,-1179,-1124,-1074,-1042,-1062,-1095,-1110,-1097,-1098,-1111,
+-1113,-1119,-1134,-1132,-1130,-1127,-1122,-1117,-1132,-1126,-1091,-1104,-1099,-1109,-1125,-1121,-1112,-1107,-1037,-1084,
+-1130,-1123,-1113,-1108,-1111,-1126,-1148,-1160,-1162,-1192,-1219,-1205,-1132,-1130,-1210,-1194,-1185,-1190,-1172,-1161,
+-1167,-1172,-1162,-1157,-1168,-1159,-1157,-1154,-1146,-1145,-1139,-1135,-1121,-1113,-1111,-1110,-1105,-1104,-1098,-1086,
+-1076,-1072,-1069,-1072,-1071,-1069,-1074,-1043,-1023,-1005,-1000,-1013,-993,-981,-998,-980,-982,-980,-955,-944,
+-932,-920,-927,-892,-887,-894,-892,-890,-887,-881,-875,-870,-858,-841,-831,-821,-806,-799,-789,-781,
+-763,-744,-726,-717,-714,-707,-700,-687,-670,-657,-655,-644,-624,-618,-609,-609,-606,-603,-596,-586,
+-581,-570,-563,-571,-552,-561,-549,-542,-538,-521,-492,-492,-481,-468,-451,-430,-421,-409,-394,-390,
+-390,-382,-370,-346,-335,-325,-311,-306,-311,-300,-284,-259,-246,-248,-235,-222,-208,-212,-220,-215,
+-206,-199,-187,-176,-165,-155,-142,-124,-113,-100,-83,-65,-39,-23,-5,15,34,60,85,114,
+144,173,205,239,267,295,327,358,388,426,466,497,517,538,568,600,633,661,684,710,
+729,761,792,829,856,877,900,926,961,1007,1058,1108,1160,1204,1251,1286,1311,1337,1352,1374,
+1360,1341,1292,1203,1064,944,930,1022,1220,1416,1717,2068,2246,2291,2334,2420,2687,3038,3222,3272,
+3065,2891,2688,2601,2504,2355,2271,2221,2181,2151,2142,2142,2153,2209,2197,2151,2124,2116,2120,2117,
+2123,2123,2097,2051,2014,1980,1953,1917,1878,1858,1844,1831,1818,1805,1791,1781,1771,1768,1744,1716,
+1692,1674,1655,1634,1616,1600,1594,1587,1589,1592,1594,1591,1587,1553,1508,1463,1448,1462,1460,1417,
+1353,1303,1238,1147,1074,1018,950,895,861,845,852,862,793,661,531,413,315,231,151,70,
+-6,-76,-142,-210,-278,-339,-391,-439,-483,-518,-537,-553,-566,-579,-589,-601,-609,-611,-613,-617,
+-627,-649,-676,-692,-708,-713,-714,-720,-727,-738,-745,-746,-739,-728,-716,-705,-693,-701,-713,-711,
+-707,-705,-700,-691,-675,-654,-622,-598,-569,-539,-514,-492,-471,-448,-417,-379,-338,-297,-265,-237,
+-199,-157,-124,-42,-4,0,32,69,111,155,194,240,298,367,444,507,557,550,486,454,
+444,460,452,475,552,626,687,731,773,825,862,915,965,1021,1053,1046,1057,1096,1147,1174,
+1205,1236,1270,1303,1333,1362,1394,1421,1444,1464,1485,1505,1526,1540,1549,1564,1580,1602,1627,1653,
+1682,1697,1698,1716,1751,1766,1780,1792,1798,1805,1806,1816,1810,1797,1793,1827,1865,1895,1867,1865,
+1874,1860,1840,1829,1809,1795,1777,1761,1750,1745,1738,1727,1725,1714,1709,1703,1687,1680,1667,1657,
+1651,1655,1657,1666,1663,1662,1659,1655,1662,1654,1658,1657,1662,1665,1667,1674,1676,1688,1751,1882,
+1776,1715,1764,1920,1937,1859,1699,1681,1703,1722,1724,1720,1745,1793,1830,1974,1851,1811,1823,1850,
+1821,1846,1875,1864,1853,1861,1882,1906,1930,1954,1973,1989,1999,2007,2013,2018,2022,2028,2032,2037,
+2042,2048,2061,2073,2083,2099,2111,2125,2140,2156,2174,2197,2215,2245,2273,2299,2316,2337,2357,2377,
+2395,2420,2447,2471,2486,2505,2525,2536,2549,2560,2571,2588,2589,2583,2580,2582,2574,2566,2558,2556,
+2560,2574,2594,2618,2643,2672,2711,2759,2802,2834,2871,2940,3018,3078,3112,3121,3131,3154,3179,3196,
+3209,3206,3195,3160,3129,3107,3087,3065,3045,3022,3002,2991,2983,2978,2981,2983,2969,2938,2870,2783,
+2725,2661,2643,2679,2761,2834,2849,2831,2790,2755,2728,2703,2672,2641,2619,2599,2584,2577,2569,2567,
+2576,2599,2624,2647,2667,2687,2711,2751,2816,2866,2914,2968,2992,3000,3003,3001,2978,2986,2968,2930,
+2900,2850,2797,2717,2623,2569,2512,2485,2454,2449,2444,2459,2471,2466,2467,2470,2472,2472,2470,2503,
+2519,2530,2541,2556,2578,2594,2604,2630,2663,2691,2752,2857,3007,3116,3169,3233,3237,3269,3282,3323,
+3352,3356,3343,3294,3267,3245,3235,3176,3121,3095,3078,3052,3040,3039,3041,3024,3041,3044,3040,3026,
+3068,3039,3035,3026,2972,3000,2984,2988,2954,2991,2994,3007,3053,3045,2994,3066,3001,2944,2961,2957,
+3031,3023,2921,2907,2923,2798,2791,2704,2609,2547,2511,2501,2421,2447,2400,2345,2283,2264,2241,2215,
+2195,2187,2187,2191,2192,2185,2177,2164,2190,2182,2179,2175,2166,2159,2158,2146,2113,2101,2093,2072,
+2044,2020,1999,1970,1944,1925,1892,1857,1825,1793,1758,1729,1699,1676,1645,1621,1594,1569,1537,1510,
+1479,1456,1432,1406,1380,1352,1320,1277,1250,1221,1187,1156,1126,1119,1080,1050,1017,993,992,948,
+921,909,896,842,805,807,813,787,751,723,699,673,650,615,572,556,509,463,437,386,
+329,277,233,185,122,98,16,-29,-69,-129,-209,-262,-286,-313,-351,-393,-434,-479,-521,-560,
+-603,-643,-673,-699,-724,-769,-824,-882,-936,-979,-1036,-1087,-1135,-1183,-1232,-1290,-1339,-1382,-1420,-1474,
+-1517,-1541,-1581,-1641,-1691,-1725,-1785,-1822,-1866,-1935,-1980,-2027,-2079,-2114,-2149,-2201,-2229,-2277,-2317,-2375,
+-2431,-2479,-2535,-2591,-2635,-2676,-2712,-2758,-2798,-2839,-2878,-2906,-2950,-2987,-3017,-3037,-3059,-3083,-3116,-3146,
+-3185,-3219,-3250,-3269,-3302,-3320,-3340,-3383,-3451,-3564,-3695,-3713,-3732,-3743,-3760,-3780,-3847,-3901,-3940,-4003,
+-4031,-4046,-4069,-4095,-4097,-4088,-4077,-4066,-4053,-4042,-4027,-4013,-3990,-3972,-3965,-3959,-3971,-3969,-3929,-3875,
+-3799,-3716,-3675,-3665,-3678,-3691,-3697,-3722,-3750,-3776,-3818,-3864,-3869,-3877,-3852,-3803,-3695,-3569,-3460,-3399,
+-3374,-3336,-3303,-3291,-3235,-3213,-3191,-3171,-3166,-3151,-3141,-3137,-3150,-3173,-3187,-3212,-3232,-3241,-3267,-3313,
+-3323,-3319,-3318,-3348,-3328,-3319,-3331,-3328,-3261,-3198,-3165,-3168,-3154,-3141,-3099,-3128,-3159,-3141,-3143,-3155,
+-3170,-3174,-3176,-3178,-3184,-3183,-3186,-3185,-3171,-3156,-3134,-3110,-3086,-3065,-3048,-3024,-2997,-2964,-2903,-2810,
+-2696,-2588,-2508,-2448,-2400,-2351,-2295,-2221,-2133,-2049,-1962,-1875,-1773,-1623,-1495,-1386,-1278,-1193,-1122,-1046,
+-963,-862,-728,-629,-582,-539,-485,-422,-340,-266,-182,-108,-87,-69,-24,74,153,159,196,212,
+207,213,219,226,262,309,353,402,446,496,547,594,637,689,756,808,853,889,931,972,
+1016,1064,1133,1196,1238,1302,1351,1388,1430,1515,1606,1690,1765,1841,1874,1937,2009,2065,2109,2135,
+2139,2107,2050,1984,1869,1715,1473,1299,1238,1265,1319,1374,1406,1446,1488,1508,1532,1561,1570,1576,
+1591,1620,1644,1669,1700,1728,1747,1758,1772,1788,1794,1807,1811,1814,1811,1797,1799,1814,1871,1974,
+2028,2086,2137,2165,2191,2214,2242,2275,2349,2407,2449,2484,2504,2523,2537,2565,2572,2583,2598,2623,
+2631,2632,2637,2632,2629,2684,2725,2747,2772,2814,2864,2886,2940,3019,3058,3100,3160,3221,3205,3185,
+3177,3160,3194,3235,3279,3332,3399,3481,3574,3677,3758,3819,3888,3913,3902,3911,3897,3879,3870,3844,
+3837,3818,3817,3812,3812,3817,3810,3840,3832,3852,3899,3917,3890,3877,3893,3870,3813,3729,3581,3286,
+2998,2741,2497,2200,1931,1751,1713,1795,1973,2143,2304,2413,2499,2578,2613,2640,2687,2677,2659,2634,
+2607,2572,2526,2472,2427,2372,2319,2266,2219,2164,2115,2059,1996,1934,1879,1850,1865,1961,1916,1785,
+1707,1657,1635,1605,1592,1564,1536,1507,1476,1446,1406,1365,1324,1291,1254,1212,1170,1184,1153,1115,
+1072,1014,970,969,920,881,855,827,797,762,729,697,660,644,620,588,558,545,530,524,
+515,487,448,405,373,340,310,287,251,218,191,177,166,139,103,78,67,59,41,21,
+3,-14,-36,-61,-86,-106,-129,-155,-183,-210,-235,-249,-263,-277,-290,-300,-311,-322,-325,-341,
+-353,-372,-387,-408,-430,-461,-496,-515,-514,-524,-532,-545,-570,-598,-610,-623,-651,-668,-690,-715,
+-741,-761,-776,-782,-794,-816,-832,-838,-854,-861,-876,-900,-902,-919,-932,-935,-951,-958,-967,-974,
+-980,-983,-987,-997,-1001,-1005,-1014,-1022,-1024,-1035,-1039,-1052,-1057,-1068,-1080,-1096,-1110,-1098,-1105,-1110,
+-1106,-1121,-1135,-1149,-1151,-1110,-1054,-1114,-1039,-1031,-1093,-1083,-1021,-1063,-1097,-1058,-1106,-1133,-1097,-1088,
+-1105,-1103,-1098,-1104,-1120,-1095,-1081,-1094,-1107,-1106,-1094,-1110,-1113,-1100,-1130,-1135,-1091,-1076,-1086,-1111,
+-1107,-1112,-1108,-1111,-1110,-1115,-1126,-1136,-1156,-1179,-1199,-1221,-1219,-1132,-1017,-1173,-1183,-1171,-1196,-1178,
+-1147,-1185,-1176,-1146,-1150,-1151,-1153,-1172,-1172,-1168,-1165,-1154,-1158,-1137,-1130,-1122,-1120,-1114,-1114,-1104,
+-1092,-1091,-1088,-1085,-1074,-1076,-1075,-1073,-1063,-1042,-1022,-1010,-1038,-1047,-1018,-987,-989,-982,-974,-977,
+-972,-962,-944,-945,-958,-954,-954,-902,-894,-909,-896,-885,-876,-868,-859,-844,-832,-815,-813,-805,
+-796,-783,-758,-733,-728,-717,-709,-697,-689,-679,-656,-650,-644,-618,-608,-591,-593,-606,-606,-596,
+-589,-586,-580,-566,-559,-562,-553,-546,-532,-524,-511,-492,-460,-459,-438,-442,-427,-418,-408,-398,
+-384,-369,-367,-354,-325,-320,-308,-299,-296,-297,-298,-290,-271,-256,-248,-245,-225,-216,-217,-215,
+-216,-219,-214,-200,-195,-183,-168,-158,-144,-125,-110,-92,-67,-40,-27,-5,15,25,52,78,
+106,133,164,196,238,272,299,328,362,397,436,469,497,521,547,571,606,637,674,702,
+721,748,776,805,829,856,886,918,951,991,1041,1089,1133,1177,1219,1257,1276,1294,1313,1330,
+1331,1321,1285,1216,1098,975,931,996,1116,1347,1560,1823,2069,2166,2263,2293,2393,2656,2979,3203,
+3154,3003,2776,2652,2590,2552,2425,2289,2208,2159,2128,2116,2124,2135,2142,2129,2103,2082,2066,2064,
+2075,2080,2078,2057,1989,1965,1931,1896,1876,1859,1845,1836,1820,1801,1793,1786,1773,1757,1747,1740,
+1722,1696,1672,1650,1631,1619,1609,1599,1596,1590,1585,1575,1557,1540,1507,1478,1447,1417,1405,1378,
+1332,1294,1236,1162,1080,1034,981,920,890,880,894,913,850,717,591,486,377,270,181,97,
+17,-54,-120,-191,-262,-333,-390,-439,-483,-518,-543,-559,-570,-575,-579,-586,-598,-608,-617,-616,
+-618,-632,-651,-673,-689,-703,-709,-711,-719,-729,-738,-745,-748,-741,-731,-724,-710,-698,-697,-706,
+-709,-704,-702,-694,-686,-678,-666,-646,-618,-586,-559,-525,-491,-466,-446,-418,-388,-349,-311,-270,
+-237,-203,-162,-127,-93,-56,-8,29,68,102,137,166,206,267,380,478,550,597,637,648,
+639,646,655,629,581,598,664,743,793,772,813,849,921,1000,1069,1102,1074,1092,1134,1174,
+1204,1248,1293,1321,1382,1403,1423,1450,1477,1507,1539,1561,1593,1612,1618,1620,1640,1653,1666,1679,
+1700,1720,1740,1744,1729,1747,1758,1776,1803,1832,1835,1823,1834,1836,1843,1868,1894,1895,1908,1880,
+1862,1883,1890,1851,1830,1813,1803,1794,1757,1769,1758,1760,1756,1746,1731,1723,1716,1707,1698,1697,
+1696,1694,1695,1692,1697,1687,1671,1657,1650,1648,1650,1654,1652,1650,1655,1666,1704,1701,1715,1777,
+1819,1840,1852,1863,1895,1780,1693,1682,1704,1741,1777,1767,1738,1733,1758,1847,1887,1823,1799,1805,
+1821,1794,1829,1953,1866,1835,1846,1872,1897,1921,1939,1957,1967,1978,1984,1991,1996,2001,2011,2017,
+2025,2034,2043,2055,2070,2080,2093,2108,2127,2143,2163,2179,2200,2217,2248,2279,2298,2313,2333,2352,
+2374,2397,2419,2443,2467,2485,2506,2524,2537,2547,2559,2571,2580,2583,2581,2579,2575,2566,2557,2549,
+2551,2560,2576,2597,2621,2644,2686,2734,2784,2818,2862,2907,2934,2970,3032,3082,3100,3115,3140,3162,
+3172,3187,3183,3160,3139,3123,3102,3086,3068,3054,3033,3007,2977,2949,2921,2907,2892,2866,2824,2749,
+2665,2625,2617,2629,2679,2760,2792,2785,2764,2737,2719,2704,2691,2671,2656,2643,2629,2612,2599,2593,
+2598,2609,2624,2642,2668,2699,2711,2734,2767,2809,2857,2910,2948,2981,2988,2983,2974,2970,2980,2967,
+2925,2896,2841,2759,2696,2647,2583,2544,2506,2489,2490,2492,2511,2519,2515,2515,2521,2523,2522,2531,
+2557,2564,2572,2587,2603,2619,2630,2649,2694,2717,2755,2810,2901,3036,3133,3161,3209,3284,3343,3296,
+3322,3338,3345,3316,3293,3283,3278,3270,3184,3169,3171,3154,3139,3126,3097,3120,3112,3125,3135,3125,
+3099,3117,3106,3111,3080,3061,3093,3079,3068,3054,3100,3052,3101,3177,3126,3045,3140,3101,3092,3132,
+3067,3121,3057,2927,2909,2879,2797,2812,2718,2678,2567,2544,2513,2463,2475,2425,2396,2338,2300,2262,
+2269,2239,2230,2234,2241,2237,2220,2202,2226,2241,2236,2227,2220,2216,2210,2204,2204,2174,2177,2158,
+2131,2101,2074,2049,2026,1999,1973,1942,1907,1875,1841,1810,1780,1757,1725,1687,1662,1640,1612,1571,
+1549,1529,1510,1478,1446,1418,1388,1359,1315,1304,1271,1220,1196,1179,1156,1111,1079,1064,1046,1010,
+997,991,960,912,874,883,875,855,818,799,780,753,727,703,687,636,580,569,532,474,
+421,387,337,287,232,214,165,94,22,-36,-104,-162,-176,-204,-249,-290,-333,-375,-421,-470,
+-518,-559,-589,-619,-647,-679,-726,-776,-841,-893,-938,-985,-1031,-1082,-1134,-1183,-1235,-1286,-1323,-1368,
+-1420,-1464,-1503,-1536,-1592,-1639,-1673,-1729,-1765,-1800,-1875,-1916,-1976,-2022,-2056,-2081,-2142,-2173,-2221,-2277,
+-2332,-2380,-2428,-2482,-2536,-2583,-2621,-2660,-2704,-2750,-2789,-2832,-2866,-2901,-2935,-2969,-2995,-3019,-3042,-3075,
+-3102,-3137,-3177,-3207,-3226,-3260,-3275,-3308,-3336,-3378,-3438,-3550,-3684,-3716,-3709,-3714,-3758,-3793,-3827,-3857,
+-3934,-3999,-4025,-4043,-4057,-4066,-4066,-4066,-4061,-4054,-4044,-4035,-4029,-4002,-3975,-3976,-3985,-3989,-3993,-3959,
+-3931,-3899,-3797,-3770,-3776,-3808,-3811,-3813,-3799,-3818,-3882,-3923,-3963,-3986,-3975,-3946,-3876,-3803,-3669,-3566,
+-3495,-3446,-3371,-3332,-3325,-3290,-3269,-3244,-3214,-3213,-3212,-3207,-3223,-3248,-3272,-3295,-3312,-3354,-3405,-3425,
+-3450,-3472,-3462,-3461,-3452,-3432,-3416,-3407,-3402,-3402,-3378,-3350,-3325,-3319,-3320,-3305,-3282,-3278,-3279,-3282,
+-3295,-3300,-3304,-3300,-3299,-3299,-3296,-3290,-3282,-3262,-3236,-3204,-3175,-3145,-3117,-3092,-3066,-3043,-3022,-2987,
+-2918,-2822,-2716,-2624,-2546,-2476,-2410,-2350,-2287,-2209,-2133,-2051,-1969,-1885,-1789,-1684,-1568,-1440,-1353,-1270,
+-1155,-1043,-920,-814,-723,-653,-582,-529,-470,-394,-308,-256,-200,-174,-154,-87,32,63,61,117,
+144,142,165,184,209,240,293,328,374,414,459,503,544,598,661,721,761,804,848,884,
+923,970,1031,1089,1124,1187,1256,1307,1342,1369,1434,1523,1637,1723,1788,1840,1873,1947,2011,2065,
+2068,2057,2022,1936,1847,1721,1530,1301,1181,1164,1204,1254,1303,1345,1379,1416,1436,1459,1494,1495,
+1512,1555,1569,1592,1625,1638,1662,1707,1700,1707,1718,1727,1746,1743,1741,1736,1734,1742,1761,1792,
+1851,1939,2001,2045,2082,2099,2139,2156,2189,2256,2326,2371,2401,2433,2450,2466,2488,2520,2546,2572,
+2595,2620,2625,2632,2623,2600,2607,2661,2700,2727,2753,2777,2797,2827,2866,2957,3058,3121,3155,3181,
+3185,3154,3134,3121,3154,3197,3248,3295,3359,3455,3542,3640,3722,3802,3852,3886,3909,3908,3894,3876,
+3841,3839,3823,3784,3778,3765,3767,3753,3768,3781,3802,3849,3822,3790,3790,3772,3743,3696,3596,3341,
+3080,2833,2615,2374,2068,1829,1710,1720,1848,2014,2175,2309,2418,2499,2556,2587,2608,2622,2618,2603,
+2580,2555,2517,2467,2415,2363,2302,2252,2207,2166,2131,2078,2024,1980,1933,1908,1841,1859,1936,1854,
+1780,1700,1658,1614,1591,1572,1544,1517,1481,1451,1421,1383,1338,1294,1262,1226,1182,1165,1159,1124,
+1093,1059,1004,967,963,929,873,844,818,788,756,721,686,644,625,613,591,554,536,503,
+502,497,471,431,393,350,320,288,266,234,204,188,176,161,134,103,71,47,30,13,
+-5,-21,-42,-64,-86,-111,-130,-151,-173,-196,-217,-241,-260,-274,-288,-298,-307,-314,-325,-338,
+-352,-369,-389,-410,-429,-447,-473,-510,-533,-550,-552,-563,-582,-595,-623,-637,-652,-665,-679,-708,
+-732,-752,-775,-789,-799,-808,-820,-824,-838,-844,-863,-869,-879,-899,-907,-919,-930,-933,-940,-945,
+-954,-958,-964,-971,-980,-988,-997,-1011,-1006,-1019,-1010,-1040,-1058,-1067,-1074,-1080,-1088,-1102,-1113,-1108,
+-1100,-1102,-1110,-1119,-1131,-1139,-1130,-1126,-1139,-1099,-1046,-990,-1075,-1103,-1138,-1118,-1090,-1094,-1099,-1095,
+-1108,-1093,-1089,-1088,-1098,-1110,-1123,-1121,-1122,-1080,-1077,-1104,-1112,-1111,-1096,-1097,-1050,-945,-1045,-1061,
+-1106,-1104,-1102,-1101,-1113,-1121,-1126,-1129,-1138,-1152,-1169,-1186,-1211,-1229,-1216,-1152,-1194,-1120,-1149,-1166,
+-1138,-1198,-1196,-1173,-1116,-1141,-1099,-1081,-1179,-1196,-1185,-1179,-1171,-1166,-1176,-1154,-1144,-1140,-1133,-1123,
+-1106,-1096,-1097,-1099,-1095,-1083,-1074,-1071,-1065,-1062,-1052,-1046,-1030,-1011,-1003,-1014,-1034,-997,-990,-992,
+-979,-959,-947,-951,-953,-934,-930,-939,-946,-948,-949,-943,-945,-928,-902,-884,-864,-856,-832,-820,
+-799,-785,-776,-761,-740,-728,-710,-711,-696,-693,-682,-663,-653,-639,-618,-600,-597,-595,-600,-598,
+-597,-595,-598,-591,-579,-564,-558,-550,-537,-534,-529,-512,-494,-473,-454,-450,-441,-437,-422,-395,
+-381,-362,-353,-343,-335,-324,-303,-293,-287,-279,-275,-287,-288,-275,-271,-267,-259,-238,-215,-212,
+-208,-210,-216,-212,-203,-200,-192,-184,-170,-161,-137,-114,-100,-63,-53,-35,-14,1,17,43,
+73,102,135,163,203,233,266,300,339,374,409,442,463,491,520,547,580,614,654,689,
+718,739,769,794,817,837,870,902,934,974,1014,1061,1103,1144,1183,1222,1249,1261,1277,1296,
+1308,1299,1272,1218,1117,1005,915,947,1084,1247,1474,1719,1948,2109,2152,2205,2250,2389,2622,2853,
+3031,3029,2815,2652,2576,2544,2543,2477,2316,2213,2150,2117,2103,2094,2093,2081,2063,2046,2027,2010,
+1995,2021,2044,2035,1998,1931,1900,1882,1864,1852,1847,1845,1834,1815,1784,1760,1743,1719,1714,1724,
+1727,1712,1687,1682,1672,1657,1644,1632,1615,1589,1570,1563,1550,1524,1500,1471,1424,1368,1351,1334,
+1314,1269,1228,1165,1098,1041,1002,948,902,878,871,899,889,770,635,524,430,337,239,141,
+53,-22,-95,-163,-239,-304,-368,-419,-461,-499,-527,-545,-558,-568,-573,-574,-577,-587,-599,-609,
+-612,-616,-627,-649,-671,-686,-693,-696,-697,-710,-721,-730,-741,-746,-742,-734,-728,-719,-707,-697,
+-697,-700,-690,-693,-691,-685,-674,-666,-651,-621,-599,-569,-534,-497,-465,-443,-421,-394,-361,-331,
+-293,-254,-221,-181,-141,-97,-53,-13,24,62,110,122,146,197,285,357,431,495,549,594,
+644,683,711,736,745,717,705,754,820,836,834,851,883,938,1010,1052,1088,1109,1134,1171,
+1208,1236,1273,1309,1345,1396,1432,1450,1478,1502,1537,1565,1590,1618,1634,1652,1665,1672,1670,1676,
+1688,1701,1721,1759,1771,1770,1779,1797,1822,1836,1861,1855,1865,1866,1866,1874,1878,1879,1889,1906,
+1883,1903,1893,1869,1849,1839,1829,1812,1806,1794,1790,1788,1780,1780,1780,1769,1759,1749,1729,1719,
+1711,1696,1692,1695,1689,1687,1683,1673,1670,1670,1665,1671,1682,1733,1669,1665,1690,1692,1700,1730,
+1769,1789,1802,1826,1759,1704,1671,1672,1702,1726,1750,1770,1768,1744,1742,1750,1764,1775,1776,1779,
+1782,1794,1762,1777,1802,1807,1819,1833,1862,1885,1906,1923,1932,1942,1953,1962,1966,1973,1982,1993,
+2004,2013,2023,2038,2053,2070,2086,2102,2118,2137,2153,2176,2198,2216,2229,2257,2277,2302,2323,2343,
+2365,2386,2406,2427,2448,2468,2494,2516,2533,2537,2545,2559,2570,2573,2573,2576,2602,2577,2556,2552,
+2549,2554,2566,2584,2603,2627,2656,2695,2745,2806,2859,2892,2910,2927,2965,2985,3021,3069,3097,3121,
+3143,3160,3164,3175,3174,3156,3124,3106,3100,3085,3067,3043,2991,2925,2857,2804,2772,2763,2738,2702,
+2665,2615,2593,2606,2693,2746,2768,2760,2742,2731,2719,2710,2705,2700,2693,2688,2681,2667,2650,2639,
+2636,2637,2641,2649,2665,2684,2705,2729,2760,2799,2836,2855,2893,2936,2951,2974,2965,2961,2955,2944,
+2931,2906,2862,2830,2783,2731,2665,2609,2556,2536,2530,2534,2538,2556,2560,2564,2569,2574,2577,2569,
+2585,2604,2606,2612,2629,2648,2660,2682,2717,2758,2775,2816,2874,2945,3041,3131,3187,3232,3277,3314,
+3304,3313,3320,3324,3315,3315,3314,3319,3299,3286,3240,3244,3228,3217,3195,3168,3207,3173,3217,3198,
+3188,3194,3188,3179,3180,3168,3153,3173,3192,3172,3185,3184,3114,3195,3275,3217,3066,3158,3060,3184,
+3158,3083,3128,3047,2930,2967,2904,2792,2807,2711,2677,2575,2583,2520,2491,2483,2431,2382,2354,2332,
+2304,2286,2270,2273,2278,2284,2276,2255,2245,2286,2281,2286,2272,2277,2268,2259,2261,2253,2223,2205,
+2204,2179,2150,2122,2096,2070,2048,2014,1984,1953,1917,1885,1857,1833,1794,1746,1743,1725,1683,1634,
+1616,1594,1569,1544,1517,1487,1452,1424,1397,1366,1345,1291,1266,1257,1217,1175,1153,1130,1108,1086,
+1064,1040,1009,977,966,942,956,922,898,877,847,829,808,781,763,743,695,651,646,592,
+535,488,440,390,344,311,247,198,133,72,3,-67,-81,-104,-144,-183,-232,-275,-322,-370,
+-418,-465,-499,-530,-557,-589,-633,-679,-743,-800,-851,-897,-934,-975,-1024,-1074,-1128,-1177,-1225,-1264,
+-1309,-1363,-1412,-1446,-1486,-1545,-1583,-1626,-1672,-1702,-1749,-1808,-1863,-1915,-1964,-1998,-2048,-2076,-2113,-2174,
+-2220,-2279,-2331,-2379,-2430,-2480,-2526,-2564,-2601,-2647,-2690,-2736,-2779,-2815,-2849,-2886,-2919,-2948,-2971,-3001,
+-3030,-3054,-3089,-3131,-3161,-3194,-3219,-3242,-3277,-3309,-3344,-3378,-3431,-3511,-3613,-3678,-3700,-3725,-3705,-3707,
+-3738,-3800,-3888,-3951,-3964,-3950,-3942,-3942,-3957,-3977,-3990,-3988,-3989,-3994,-3993,-3991,-3983,-3975,-3976,-3979,
+-3987,-3959,-3954,-3946,-3923,-3919,-3918,-3923,-3932,-3937,-3951,-3985,-4029,-4036,-4048,-4035,-3996,-3935,-3876,-3829,
+-3737,-3678,-3619,-3567,-3527,-3446,-3372,-3313,-3279,-3261,-3260,-3262,-3262,-3266,-3290,-3331,-3398,-3476,-3507,-3576,
+-3581,-3570,-3579,-3571,-3559,-3551,-3544,-3522,-3501,-3490,-3488,-3481,-3461,-3443,-3423,-3404,-3390,-3383,-3383,-3379,
+-3381,-3388,-3394,-3388,-3386,-3384,-3376,-3362,-3343,-3319,-3298,-3263,-3222,-3186,-3159,-3129,-3102,-3076,-3055,-3029,
+-3007,-2976,-2925,-2852,-2764,-2683,-2595,-2494,-2409,-2338,-2277,-2217,-2150,-2082,-2007,-1928,-1845,-1760,-1665,-1562,
+-1443,-1300,-1164,-1030,-911,-819,-732,-645,-575,-502,-429,-374,-320,-282,-255,-218,-129,-50,-52,-35,
+24,74,82,119,143,188,233,271,314,343,388,429,469,516,579,640,684,725,774,823,
+862,913,952,994,1036,1076,1131,1204,1265,1306,1328,1381,1465,1578,1675,1735,1859,1889,1896,1962,
+1991,1998,1980,1918,1807,1699,1542,1331,1155,1087,1099,1141,1192,1243,1282,1309,1344,1370,1390,1411,
+1429,1484,1496,1514,1547,1564,1579,1603,1626,1627,1644,1654,1652,1652,1653,1659,1666,1673,1694,1710,
+1736,1785,1840,1911,1960,1979,2016,2055,2082,2113,2167,2230,2276,2315,2349,2383,2391,2408,2439,2494,
+2534,2558,2596,2617,2626,2612,2594,2563,2579,2639,2691,2719,2739,2765,2768,2769,2799,2860,2967,3079,
+3173,3205,3192,3142,3105,3112,3124,3161,3203,3249,3312,3399,3520,3621,3661,3749,3822,3876,3881,3884,
+3880,3854,3836,3793,3770,3764,3715,3705,3692,3688,3704,3744,3746,3709,3698,3682,3642,3577,3507,3315,
+3101,2899,2698,2491,2204,1932,1758,1678,1744,1896,2054,2196,2317,2417,2483,2528,2552,2568,2579,2576,
+2556,2526,2495,2456,2405,2352,2291,2238,2195,2149,2111,2077,2031,1982,1932,1904,1901,1845,1810,1839,
+1946,1850,1713,1631,1583,1561,1536,1512,1487,1459,1430,1398,1363,1320,1271,1227,1198,1155,1151,1134,
+1100,1068,1036,984,956,946,905,862,826,802,775,743,710,676,628,610,595,577,544,503,
+485,471,472,452,419,375,337,303,268,244,221,197,178,169,150,125,97,58,26,3,
+-8,-19,-37,-58,-82,-106,-124,-143,-164,-183,-201,-223,-243,-265,-279,-296,-305,-310,-315,-328,
+-341,-355,-379,-404,-428,-446,-463,-485,-520,-554,-566,-585,-609,-612,-612,-638,-643,-656,-677,-700,
+-718,-740,-761,-775,-797,-809,-809,-822,-833,-846,-854,-860,-888,-890,-896,-905,-910,-926,-933,-944,
+-950,-953,-955,-955,-965,-978,-990,-1001,-1006,-998,-1025,-1028,-1038,-1045,-1059,-1072,-1079,-1083,-1092,-1102,
+-1112,-1113,-1098,-1092,-1100,-1117,-1133,-1131,-1137,-1144,-1149,-1138,-1129,-1148,-1147,-1138,-1119,-1117,-1115,-1120,
+-1125,-1127,-1131,-1135,-1136,-1141,-1133,-1141,-1143,-1135,-1140,-1143,-1140,-1120,-1127,-1141,-1146,-1087,-1033,-1123,
+-1104,-1091,-1103,-1120,-1108,-1125,-1127,-1131,-1130,-1139,-1147,-1161,-1176,-1199,-1224,-1232,-1240,-1219,-1191,-1163,
+-1136,-1180,-1215,-1178,-1111,-1190,-1208,-1185,-1175,-1183,-1179,-1196,-1169,-1121,-1165,-1173,-1159,-1148,-1160,-1152,
+-1136,-1114,-1105,-1097,-1095,-1086,-1073,-1073,-1069,-1066,-1061,-1052,-1048,-1043,-1030,-1004,-996,-989,-993,-983,
+-970,-950,-955,-963,-959,-952,-945,-940,-939,-933,-929,-911,-889,-910,-930,-937,-935,-919,-915,-900,
+-865,-831,-805,-787,-772,-752,-738,-726,-707,-690,-686,-673,-663,-649,-640,-625,-612,-606,-601,-593,
+-590,-584,-579,-589,-593,-582,-568,-562,-552,-539,-537,-529,-516,-489,-472,-458,-440,-432,-427,-410,
+-386,-370,-360,-346,-340,-327,-315,-300,-283,-283,-280,-284,-282,-277,-271,-269,-263,-259,-244,-226,
+-205,-202,-195,-213,-210,-205,-194,-186,-187,-167,-148,-136,-110,-94,-82,-39,-41,-15,1,21,
+49,78,109,137,167,197,236,275,307,344,382,410,432,460,490,518,551,588,621,662,
+700,726,753,779,794,817,852,886,911,946,983,1025,1068,1102,1138,1185,1220,1234,1247,1262,
+1280,1280,1260,1216,1147,1033,925,877,990,1162,1411,1638,1864,2034,2105,2139,2165,2252,2445,2682,
+2852,2912,2924,2738,2566,2520,2519,2543,2516,2380,2241,2156,2110,2085,2065,2061,2047,2018,2002,1988,
+1960,1942,1965,1982,1966,1926,1890,1870,1848,1846,1848,1852,1852,1833,1815,1788,1772,1763,1750,1747,
+1748,1755,1740,1716,1709,1710,1705,1682,1653,1620,1585,1564,1544,1526,1494,1448,1405,1360,1318,1305,
+1287,1266,1227,1175,1114,1056,1010,970,922,884,860,880,889,800,676,560,468,381,290,195,
+101,14,-62,-131,-200,-273,-330,-382,-425,-461,-489,-515,-534,-550,-559,-561,-565,-569,-576,-586,
+-597,-605,-609,-621,-642,-663,-679,-681,-682,-689,-701,-711,-720,-732,-739,-738,-735,-731,-725,-713,
+-702,-690,-687,-688,-683,-678,-677,-668,-659,-644,-622,-597,-569,-537,-505,-473,-443,-422,-400,-373,
+-349,-315,-277,-240,-205,-163,-111,-56,-23,19,61,91,110,158,206,257,319,376,431,466,
+503,566,609,637,663,684,708,727,766,841,869,873,896,945,984,1038,1082,1126,1152,1187,
+1217,1246,1274,1307,1329,1358,1398,1427,1448,1472,1503,1532,1568,1590,1624,1646,1666,1684,1706,1717,
+1730,1745,1763,1778,1807,1835,1857,1866,1848,1842,1866,1880,1894,1892,1885,1881,1864,1860,1885,1877,
+1874,1852,1850,1861,1876,1878,1876,1874,1866,1853,1834,1821,1821,1809,1779,1778,1768,1763,1756,1732,
+1726,1713,1712,1715,1707,1704,1708,1703,1695,1693,1697,1707,1711,1710,1716,1680,1688,1696,1727,1716,
+1741,1789,1838,1760,1722,1682,1673,1682,1707,1742,1749,1760,1761,1764,1748,1740,1741,1742,1739,1743,
+1746,1750,1762,1734,1744,1759,1779,1802,1828,1849,1873,1885,1899,1908,1917,1926,1932,1941,1954,1962,
+1979,1992,2005,2018,2035,2053,2076,2096,2114,2136,2154,2174,2197,2219,2231,2248,2268,2290,2322,2346,
+2353,2367,2387,2410,2435,2453,2478,2499,2514,2525,2533,2540,2551,2566,2570,2565,2566,2591,2575,2553,
+2555,2555,2564,2578,2592,2612,2633,2667,2703,2744,2790,2839,2870,2888,2908,2940,2961,2973,3013,3070,
+3108,3132,3152,3161,3166,3161,3152,3133,3117,3104,3088,3057,3022,2941,2836,2751,2705,2684,2696,2687,
+2668,2642,2609,2643,2716,2763,2767,2759,2744,2730,2721,2718,2714,2714,2718,2720,2722,2715,2704,2694,
+2692,2683,2675,2678,2681,2692,2706,2722,2741,2782,2830,2876,2897,2905,2920,2945,2966,2974,2981,2981,
+2958,2933,2916,2891,2860,2801,2743,2686,2632,2578,2565,2577,2574,2582,2599,2607,2609,2619,2628,2626,
+2618,2644,2659,2660,2663,2676,2693,2711,2747,2770,2817,2843,2890,2938,2996,3078,3174,3231,3263,3286,
+3314,3336,3330,3341,3345,3349,3359,3354,3329,3332,3352,3298,3305,3301,3294,3268,3253,3274,3248,3298,
+3277,3294,3272,3258,3264,3259,3268,3253,3267,3298,3289,3269,3229,3193,3271,3346,3305,3091,3157,3114,
+3209,3173,3102,3128,3045,2942,2973,2890,2806,2807,2705,2677,2600,2600,2542,2513,2482,2418,2370,2338,
+2340,2339,2317,2308,2314,2318,2315,2305,2293,2297,2324,2329,2309,2316,2320,2315,2306,2302,2290,2274,
+2266,2241,2211,2189,2165,2143,2122,2090,2057,2025,1996,1965,1933,1907,1875,1833,1794,1790,1747,1713,
+1688,1661,1635,1607,1577,1550,1518,1493,1459,1432,1399,1356,1345,1324,1289,1253,1221,1195,1174,1138,
+1115,1094,1065,1022,1036,1042,1001,999,968,946,928,905,877,862,848,821,775,748,742,693,
+635,584,543,506,455,411,361,304,245,196,116,33,11,-3,-38,-88,-134,-174,-217,-265,
+-313,-362,-404,-438,-471,-499,-535,-583,-654,-717,-763,-802,-834,-875,-921,-971,-1019,-1069,-1120,-1164,
+-1200,-1240,-1289,-1344,-1379,-1420,-1474,-1523,-1568,-1611,-1653,-1698,-1743,-1804,-1851,-1898,-1931,-1982,-2025,-2065,
+-2119,-2171,-2221,-2269,-2325,-2374,-2423,-2469,-2507,-2545,-2590,-2637,-2681,-2731,-2770,-2802,-2835,-2866,-2899,-2927,
+-2957,-2981,-3010,-3042,-3078,-3104,-3151,-3177,-3211,-3246,-3278,-3313,-3340,-3371,-3416,-3478,-3549,-3636,-3735,-3756,
+-3725,-3713,-3718,-3768,-3812,-3863,-3853,-3809,-3802,-3838,-3887,-3917,-3938,-3955,-3968,-3977,-3989,-4004,-4009,-4001,
+-4003,-4006,-4006,-3999,-3993,-3959,-3946,-3941,-3952,-3974,-3993,-4008,-4021,-4036,-4061,-4072,-4060,-4031,-3993,-3952,
+-3901,-3862,-3858,-3749,-3733,-3663,-3629,-3586,-3535,-3475,-3437,-3471,-3465,-3448,-3429,-3487,-3576,-3658,-3699,-3705,
+-3691,-3683,-3682,-3679,-3682,-3677,-3666,-3653,-3639,-3614,-3588,-3576,-3567,-3560,-3544,-3523,-3502,-3483,-3473,-3463,
+-3453,-3451,-3457,-3455,-3444,-3434,-3415,-3399,-3375,-3345,-3314,-3279,-3246,-3206,-3161,-3123,-3097,-3080,-3048,-3028,
+-3009,-2991,-2977,-2950,-2907,-2850,-2788,-2724,-2627,-2518,-2424,-2354,-2294,-2238,-2186,-2126,-2063,-1989,-1917,-1844,
+-1767,-1669,-1514,-1327,-1187,-1072,-959,-850,-721,-635,-561,-489,-423,-377,-350,-321,-235,-176,-162,-150,
+-115,-62,0,21,59,103,161,215,245,299,332,370,404,442,487,544,602,629,667,735,
+787,835,874,903,940,986,1041,1079,1152,1208,1246,1286,1357,1433,1539,1667,1748,1884,1915,1894,
+1921,1946,1922,1856,1762,1668,1527,1316,1145,1024,1016,1039,1079,1129,1174,1219,1248,1276,1293,1326,
+1361,1390,1425,1438,1478,1517,1517,1522,1533,1547,1564,1580,1587,1596,1589,1588,1596,1602,1609,1625,
+1641,1660,1688,1723,1787,1871,1905,1937,1984,1998,2024,2067,2117,2154,2204,2255,2293,2318,2336,2360,
+2416,2478,2512,2571,2599,2612,2609,2579,2549,2532,2571,2631,2676,2704,2741,2757,2763,2785,2817,2843,
+2902,3004,3073,3114,3126,3100,3071,3077,3105,3142,3181,3228,3307,3402,3463,3522,3600,3706,3777,3817,
+3846,3842,3836,3803,3778,3757,3760,3713,3667,3628,3610,3628,3651,3642,3619,3587,3538,3474,3404,3276,
+3088,2932,2766,2580,2355,2051,1826,1696,1669,1786,1942,2087,2211,2320,2403,2460,2494,2514,2529,2546,
+2537,2500,2468,2436,2393,2341,2281,2222,2173,2127,2092,2057,2022,1982,1940,1892,1851,1816,1790,1773,
+1786,1901,1933,1741,1613,1552,1519,1489,1465,1453,1439,1416,1384,1342,1299,1253,1205,1164,1144,1143,
+1122,1083,1044,1009,959,931,927,887,839,796,775,754,726,697,663,619,594,577,558,529,
+491,471,447,435,424,401,368,328,289,252,221,204,190,172,158,137,116,87,49,11,
+-9,-23,-35,-52,-74,-95,-111,-128,-153,-175,-193,-213,-230,-247,-268,-286,-303,-315,-322,-324,
+-333,-347,-366,-392,-414,-441,-462,-479,-503,-531,-558,-580,-603,-610,-617,-635,-645,-653,-664,-677,
+-699,-724,-742,-762,-782,-803,-816,-824,-836,-849,-854,-875,-888,-895,-909,-914,-913,-919,-930,-920,
+-942,-947,-935,-963,-967,-969,-983,-996,-999,-1010,-1015,-1022,-1031,-1040,-1052,-1067,-1077,-1086,-1090,-1097,
+-1105,-1112,-1128,-1130,-1111,-1101,-1105,-1119,-1127,-1124,-1135,-1140,-1144,-1142,-1142,-1132,-1122,-1113,-1111,-1118,
+-1120,-1126,-1126,-1128,-1134,-1136,-1142,-1144,-1141,-1143,-1146,-1147,-1143,-1132,-1117,-1110,-1116,-1134,-1128,-1122,
+-1144,-1135,-1116,-1110,-1136,-1123,-1130,-1137,-1138,-1129,-1132,-1138,-1149,-1164,-1179,-1201,-1218,-1221,-1215,-1203,
+-1169,-1196,-1212,-1221,-1207,-1194,-1210,-1212,-1157,-1154,-1125,-1158,-1183,-1127,-1113,-1162,-1153,-1197,-1193,-1179,
+-1162,-1150,-1140,-1121,-1105,-1097,-1096,-1088,-1073,-1067,-1074,-1057,-1062,-1056,-1043,-1038,-1028,-1019,-1012,-989,
+-980,-973,-965,-963,-962,-954,-951,-946,-947,-941,-934,-931,-917,-902,-894,-890,-883,-877,-874,-877,
+-872,-859,-832,-818,-847,-817,-796,-772,-736,-715,-703,-686,-673,-660,-648,-634,-621,-608,-605,-609,
+-596,-590,-581,-574,-569,-565,-550,-541,-544,-543,-539,-533,-528,-517,-496,-472,-452,-438,-434,-416,
+-405,-386,-372,-362,-342,-325,-314,-289,-278,-283,-286,-270,-272,-279,-274,-273,-265,-261,-256,-249,
+-240,-212,-216,-206,-217,-218,-210,-197,-186,-178,-166,-143,-125,-106,-92,-81,-66,-43,-18,2,
+27,53,85,114,143,167,202,238,273,302,330,366,401,430,459,492,526,559,594,625,
+664,699,726,753,770,794,825,859,886,916,952,987,1029,1066,1098,1135,1176,1202,1212,1230,
+1248,1251,1249,1221,1172,1074,961,867,880,1075,1305,1605,1846,2030,2118,2126,2116,2137,2260,2513,
+2735,2862,2844,2837,2688,2548,2499,2527,2599,2637,2477,2304,2189,2106,2064,2040,2034,2021,1995,1966,
+1940,1916,1902,1905,1904,1895,1881,1866,1851,1839,1841,1844,1852,1848,1824,1812,1797,1778,1761,1751,
+1748,1745,1745,1731,1730,1740,1753,1735,1702,1676,1649,1622,1586,1545,1507,1455,1411,1357,1325,1293,
+1277,1269,1247,1202,1142,1085,1033,990,937,892,863,852,869,826,704,577,483,413,337,246,
+153,59,-22,-95,-161,-227,-288,-340,-384,-421,-448,-474,-495,-514,-530,-540,-547,-552,-555,-563,
+-572,-584,-593,-598,-612,-632,-654,-664,-667,-669,-681,-689,-700,-709,-719,-723,-728,-729,-727,-724,
+-716,-704,-688,-674,-674,-672,-667,-667,-666,-653,-642,-624,-600,-573,-544,-514,-483,-451,-426,-401,
+-378,-356,-328,-298,-257,-212,-168,-114,-70,-25,27,63,83,120,159,199,246,299,360,412,
+449,495,545,599,649,691,711,726,734,759,808,855,874,892,932,994,1049,1095,1163,1178,
+1213,1249,1278,1295,1319,1343,1370,1404,1433,1463,1494,1520,1550,1576,1604,1630,1655,1685,1701,1729,
+1746,1763,1787,1802,1813,1832,1850,1883,1892,1882,1864,1875,1881,1879,1872,1867,1865,1872,1882,1893,
+1910,1925,1926,1923,1921,1904,1906,1904,1867,1843,1839,1842,1840,1822,1813,1787,1779,1782,1785,1764,
+1763,1770,1751,1739,1730,1741,1741,1735,1737,1729,1723,1714,1707,1700,1687,1685,1671,1673,1694,1751,
+1795,1738,1744,1757,1753,1739,1712,1712,1737,1742,1755,1760,1748,1735,1730,1723,1726,1730,1732,1730,
+1723,1720,1728,1734,1723,1728,1743,1767,1788,1816,1832,1852,1864,1873,1886,1889,1899,1910,1922,1934,
+1949,1965,1983,2000,2019,2039,2061,2086,2109,2129,2152,2170,2190,2216,2239,2252,2270,2297,2321,2336,
+2349,2362,2377,2403,2418,2440,2451,2480,2498,2509,2524,2532,2539,2553,2564,2564,2557,2549,2547,2547,
+2547,2554,2565,2576,2587,2601,2621,2644,2672,2701,2727,2757,2795,2824,2853,2884,2923,2943,2946,2940,
+2993,3071,3118,3140,3153,3149,3145,3145,3146,3136,3112,3086,3053,2980,2851,2765,2719,2685,2671,2666,
+2648,2624,2648,2692,2727,2748,2767,2772,2762,2748,2734,2726,2730,2733,2737,2744,2749,2753,2750,2744,
+2744,2740,2730,2717,2714,2717,2726,2735,2752,2775,2817,2860,2902,2929,2940,2950,2966,2979,2991,2999,
+3002,2994,2974,2952,2920,2856,2790,2719,2690,2650,2621,2611,2618,2612,2626,2637,2646,2657,2669,2683,
+2671,2676,2719,2727,2725,2729,2736,2747,2766,2793,2817,2865,2907,2963,3005,3055,3136,3222,3285,3298,
+3323,3389,3406,3408,3399,3397,3393,3395,3399,3401,3392,3391,3330,3349,3371,3373,3339,3348,3359,3361,
+3367,3366,3364,3371,3338,3347,3338,3359,3359,3353,3358,3365,3393,3304,3259,3304,3367,3344,3319,3329,
+3219,3275,3181,3117,3150,3059,2966,2964,2868,2828,2787,2712,2678,2633,2618,2558,2516,2471,2421,2375,
+2375,2366,2349,2340,2344,2352,2359,2351,2329,2335,2349,2358,2354,2343,2355,2353,2350,2346,2338,2326,
+2309,2292,2272,2246,2231,2208,2188,2168,2126,2099,2072,2041,2007,1977,1951,1907,1874,1848,1823,1784,
+1754,1728,1697,1671,1641,1613,1581,1553,1529,1499,1459,1419,1402,1389,1357,1326,1290,1261,1243,1208,
+1187,1166,1127,1082,1096,1101,1076,1026,1039,1008,993,978,953,937,927,884,857,848,815,795,
+751,703,659,614,565,530,476,418,362,300,228,117,92,77,52,13,-32,-74,-121,-167,
+-213,-258,-298,-340,-377,-413,-448,-496,-561,-620,-667,-712,-743,-776,-814,-864,-914,-969,-1017,-1063,
+-1105,-1145,-1188,-1232,-1287,-1316,-1360,-1407,-1453,-1508,-1548,-1595,-1641,-1692,-1739,-1786,-1832,-1874,-1917,-1962,
+-2010,-2068,-2115,-2170,-2218,-2272,-2322,-2366,-2409,-2451,-2491,-2535,-2582,-2627,-2667,-2704,-2749,-2779,-2815,-2851,
+-2879,-2910,-2940,-2969,-2997,-3027,-3068,-3102,-3139,-3178,-3217,-3249,-3278,-3305,-3331,-3356,-3385,-3427,-3488,-3549,
+-3623,-3689,-3737,-3775,-3802,-3815,-3817,-3812,-3814,-3822,-3857,-3910,-3937,-3939,-3941,-3945,-3966,-3987,-3996,-3995,
+-4001,-3998,-4000,-4014,-4033,-4047,-4031,-4005,-4001,-3995,-4004,-4036,-4036,-4062,-4076,-4066,-4069,-4053,-4022,-3996,
+-3991,-3959,-3928,-3922,-3907,-3851,-3785,-3755,-3718,-3682,-3644,-3624,-3628,-3617,-3637,-3679,-3710,-3742,-3754,-3770,
+-3776,-3777,-3771,-3772,-3769,-3770,-3778,-3769,-3752,-3734,-3709,-3680,-3655,-3640,-3629,-3615,-3597,-3577,-3555,-3536,
+-3529,-3512,-3497,-3488,-3482,-3467,-3445,-3414,-3382,-3349,-3316,-3286,-3259,-3228,-3186,-3147,-3108,-3076,-3051,-3022,
+-2991,-2971,-2948,-2930,-2900,-2868,-2835,-2796,-2763,-2716,-2634,-2543,-2460,-2400,-2349,-2301,-2250,-2190,-2122,-2059,
+-1995,-1935,-1857,-1754,-1631,-1468,-1232,-1060,-957,-841,-717,-621,-552,-492,-451,-417,-361,-335,-295,-253,
+-228,-197,-131,-74,-19,25,68,128,181,224,268,316,350,377,407,454,499,551,578,618,
+682,730,754,793,831,872,921,985,1019,1084,1151,1186,1245,1309,1392,1507,1626,1770,1869,1907,
+1901,1883,1881,1805,1706,1617,1516,1297,1119,973,936,948,991,1034,1075,1116,1144,1177,1203,1235,
+1262,1305,1335,1355,1364,1411,1439,1456,1464,1481,1489,1500,1511,1521,1527,1534,1536,1541,1534,1537,
+1541,1558,1576,1592,1630,1706,1812,1857,1864,1901,1914,1936,1964,2005,2051,2080,2145,2206,2234,2269,
+2289,2339,2405,2465,2522,2560,2567,2565,2553,2536,2522,2530,2565,2615,2652,2693,2728,2748,2785,2814,
+2824,2839,2872,2919,2957,2983,3010,3008,3019,3065,3087,3119,3167,3224,3291,3386,3485,3534,3612,3660,
+3709,3758,3779,3777,3767,3766,3746,3718,3708,3681,3610,3549,3550,3529,3522,3509,3454,3373,3317,3175,
+3022,2905,2792,2659,2472,2193,1937,1758,1678,1708,1847,1998,2125,2231,2321,2392,2437,2465,2481,2486,
+2475,2462,2438,2409,2372,2324,2263,2203,2154,2110,2077,2042,2023,1974,1936,1902,1857,1811,1771,1747,
+1714,1704,1738,1772,1723,1631,1568,1504,1446,1425,1421,1416,1401,1370,1325,1282,1237,1192,1158,1140,
+1125,1106,1078,1032,994,936,909,913,880,828,785,755,730,704,680,651,615,581,568,548,
+523,493,454,432,410,395,383,360,324,278,246,208,187,178,165,148,128,102,73,39,
+5,-18,-43,-58,-73,-92,-103,-112,-130,-164,-190,-209,-231,-251,-266,-285,-299,-311,-324,-334,
+-339,-347,-359,-380,-403,-427,-452,-480,-499,-523,-546,-573,-602,-624,-640,-637,-646,-648,-669,-684,
+-694,-709,-731,-748,-768,-789,-806,-824,-841,-858,-880,-888,-892,-904,-911,-915,-927,-933,-934,-938,
+-941,-957,-959,-910,-944,-979,-985,-988,-995,-997,-1007,-1018,-1030,-1045,-1057,-1067,-1081,-1084,-1091,-1109,
+-1110,-1115,-1122,-1128,-1143,-1148,-1137,-1123,-1121,-1129,-1124,-1120,-1120,-1124,-1125,-1121,-1110,-1110,-1109,-1117,
+-1124,-1128,-1127,-1131,-1128,-1129,-1134,-1143,-1145,-1144,-1146,-1146,-1144,-1140,-1130,-1131,-1129,-1119,-1122,-1083,
+-1063,-1077,-1097,-1099,-1119,-1136,-1137,-1143,-1142,-1141,-1133,-1132,-1134,-1148,-1157,-1160,-1168,-1191,-1203,-1199,
+-1208,-1206,-1211,-1209,-1212,-1217,-1208,-1204,-1201,-1190,-1191,-1196,-1202,-1181,-1098,-1152,-1202,-1218,-1217,-1173,
+-1113,-1111,-1074,-1161,-1148,-1110,-1083,-1063,-1070,-1071,-1070,-1060,-1060,-1057,-1040,-1039,-1036,-1026,-1017,-1011,
+-988,-986,-976,-971,-966,-954,-952,-950,-947,-949,-946,-939,-936,-930,-915,-907,-900,-894,-895,-889,
+-868,-863,-846,-826,-813,-830,-826,-822,-824,-781,-748,-747,-736,-726,-710,-685,-669,-651,-627,-613,
+-599,-579,-567,-563,-559,-554,-552,-547,-539,-532,-518,-513,-509,-504,-494,-483,-472,-456,-444,-428,
+-414,-405,-391,-383,-369,-360,-348,-331,-318,-307,-304,-302,-299,-293,-285,-279,-278,-273,-266,-267,
+-266,-260,-258,-239,-229,-238,-235,-222,-212,-202,-190,-176,-154,-130,-115,-99,-85,-71,-55,-33,
+-9,18,50,75,95,131,163,193,220,258,285,328,358,396,432,465,500,534,568,597,
+629,658,688,717,741,764,795,824,856,886,917,955,989,1027,1059,1089,1124,1154,1180,1201,
+1224,1236,1235,1221,1182,1112,1008,907,856,977,1231,1521,1767,1963,2118,2136,2105,2082,2131,2305,
+2456,2659,2799,2798,2757,2687,2613,2539,2559,2631,2643,2490,2327,2209,2112,2058,2028,2009,1998,1981,
+1945,1914,1895,1882,1873,1864,1856,1854,1851,1837,1836,1827,1823,1835,1836,1821,1801,1778,1756,1741,
+1727,1718,1710,1702,1703,1705,1725,1746,1739,1735,1730,1713,1677,1636,1593,1531,1466,1415,1356,1319,
+1293,1273,1256,1239,1185,1131,1079,1018,954,909,872,838,810,764,704,605,501,426,361,287,
+200,107,17,-56,-122,-184,-242,-290,-336,-375,-412,-436,-455,-474,-490,-509,-521,-531,-540,-545,
+-551,-561,-575,-582,-588,-600,-619,-639,-649,-653,-656,-667,-680,-691,-699,-705,-713,-723,-725,-718,
+-715,-713,-700,-687,-678,-662,-661,-671,-669,-662,-650,-640,-625,-601,-578,-551,-523,-494,-462,-431,
+-402,-377,-356,-331,-298,-258,-216,-168,-124,-68,-12,31,59,96,132,175,210,247,302,355,
+394,438,483,511,562,623,668,699,749,789,831,868,900,927,951,980,1004,1036,1094,1147,
+1165,1203,1254,1292,1325,1348,1369,1394,1429,1469,1501,1530,1558,1585,1615,1644,1673,1689,1717,1741,
+1767,1787,1801,1813,1822,1827,1854,1874,1886,1891,1894,1912,1930,1920,1998,1975,1962,1939,1944,1936,
+1942,1941,1942,1944,1948,1944,1925,1925,1915,1897,1878,1864,1858,1859,1849,1838,1827,1810,1801,1807,
+1796,1808,1791,1786,1777,1777,1775,1773,1766,1767,1769,1762,1749,1726,1706,1696,1688,1683,1720,1721,
+1725,1754,1747,1746,1765,1783,1770,1752,1755,1769,1752,1757,1760,1739,1715,1707,1703,1709,1723,1746,
+1804,1748,1707,1713,1723,1711,1722,1735,1757,1775,1798,1813,1827,1843,1849,1860,1865,1874,1888,1903,
+1919,1939,1960,1983,2001,2023,2046,2069,2092,2112,2140,2161,2190,2203,2230,2256,2277,2300,2312,2334,
+2349,2366,2379,2388,2405,2417,2436,2454,2477,2493,2507,2516,2528,2540,2553,2560,2559,2557,2552,2550,
+2549,2559,2572,2575,2584,2594,2607,2627,2645,2669,2691,2708,2724,2751,2780,2813,2851,2887,2895,2900,
+2913,2952,3021,3074,3131,3151,3152,3153,3151,3158,3151,3130,3095,3051,2964,2846,2787,2771,2766,2737,
+2717,2711,2732,2736,2727,2735,2752,2764,2774,2776,2761,2747,2752,2765,2767,2765,2774,2780,2788,2798,
+2795,2784,2775,2769,2760,2752,2753,2756,2764,2794,2821,2859,2899,2932,2953,2964,2977,2988,2995,3012,
+3027,3035,3034,3026,2993,2939,2873,2796,2743,2707,2674,2647,2659,2654,2655,2671,2680,2690,2702,2720,
+2737,2728,2753,2795,2795,2796,2806,2808,2816,2834,2848,2880,2914,2959,3021,3068,3119,3179,3267,3331,
+3344,3372,3415,3441,3456,3467,3466,3468,3461,3464,3468,3455,3424,3377,3421,3446,3440,3407,3438,3413,
+3453,3435,3457,3459,3429,3443,3449,3450,3424,3439,3436,3453,3479,3492,3338,3264,3315,3372,3431,3345,
+3355,3263,3276,3170,3135,3159,3049,2991,2961,2868,2849,2790,2737,2675,2667,2636,2566,2514,2465,2457,
+2436,2399,2377,2372,2371,2377,2380,2381,2371,2369,2371,2374,2371,2377,2377,2374,2384,2380,2373,2363,
+2349,2335,2323,2307,2287,2262,2247,2227,2199,2158,2139,2111,2082,2056,2026,1990,1942,1910,1883,1860,
+1832,1798,1769,1736,1707,1677,1647,1621,1591,1568,1524,1485,1479,1460,1415,1393,1363,1335,1307,1271,
+1247,1222,1190,1151,1158,1157,1133,1109,1085,1084,1053,1040,1025,1007,997,955,931,944,922,894,
+849,820,776,719,679,633,573,524,470,415,346,225,170,158,133,96,55,11,-35,-75,
+-118,-164,-206,-244,-283,-320,-355,-399,-459,-524,-579,-613,-640,-677,-724,-767,-813,-862,-910,-961,
+-1010,-1047,-1079,-1125,-1174,-1215,-1253,-1301,-1358,-1412,-1451,-1496,-1542,-1592,-1639,-1685,-1728,-1769,-1819,-1861,
+-1902,-1951,-2008,-2063,-2112,-2162,-2213,-2261,-2308,-2348,-2389,-2431,-2478,-2520,-2572,-2614,-2652,-2696,-2724,-2761,
+-2802,-2834,-2863,-2892,-2923,-2953,-2983,-3022,-3059,-3097,-3139,-3175,-3208,-3239,-3269,-3296,-3317,-3348,-3379,-3417,
+-3453,-3494,-3527,-3564,-3605,-3697,-3794,-3798,-3812,-3840,-3858,-3880,-3886,-3877,-3866,-3873,-3895,-3922,-3934,-3968,
+-3964,-3950,-3940,-3936,-3959,-4002,-4039,-4037,-4008,-3976,-3982,-4025,-4040,-4028,-4065,-4085,-4061,-4026,-4007,-4011,
+-4012,-4000,-3984,-3957,-3931,-3912,-3925,-3863,-3824,-3816,-3795,-3767,-3757,-3751,-3762,-3768,-3768,-3776,-3788,-3809,
+-3824,-3829,-3833,-3836,-3841,-3849,-3846,-3840,-3827,-3808,-3777,-3750,-3728,-3707,-3688,-3668,-3646,-3633,-3615,-3592,
+-3563,-3549,-3539,-3521,-3497,-3473,-3449,-3411,-3379,-3346,-3323,-3299,-3283,-3273,-3247,-3203,-3163,-3129,-3098,-3071,
+-3047,-3017,-2989,-2967,-2940,-2909,-2883,-2855,-2822,-2781,-2748,-2712,-2654,-2590,-2542,-2502,-2455,-2400,-2329,-2250,
+-2177,-2120,-2067,-2005,-1931,-1835,-1704,-1482,-1203,-1055,-935,-815,-729,-666,-611,-552,-505,-459,-423,-377,
+-334,-299,-262,-188,-128,-79,-24,20,75,130,184,231,280,324,351,375,414,449,489,550,
+602,636,670,713,753,802,842,871,936,978,1027,1097,1156,1201,1286,1355,1429,1516,1702,1848,
+1837,1836,1798,1797,1714,1591,1498,1354,1130,944,866,862,887,920,966,1008,1044,1078,1110,1135,
+1167,1202,1236,1266,1299,1326,1318,1375,1397,1408,1424,1436,1437,1440,1450,1453,1460,1470,1480,1465,
+1464,1477,1483,1500,1520,1550,1628,1730,1782,1801,1808,1820,1852,1883,1931,1959,1985,2024,2090,2149,
+2191,2220,2266,2322,2393,2447,2490,2509,2511,2518,2508,2505,2508,2510,2531,2577,2624,2658,2696,2740,
+2778,2804,2826,2842,2853,2871,2894,2908,2931,2949,2982,3012,3049,3082,3122,3173,3232,3300,3399,3462,
+3506,3588,3659,3689,3702,3706,3702,3698,3678,3659,3620,3548,3464,3428,3421,3394,3351,3296,3172,3049,
+2915,2816,2737,2649,2520,2334,2084,1871,1741,1719,1798,1922,2056,2171,2258,2327,2388,2419,2445,2451,
+2444,2429,2407,2379,2343,2301,2248,2190,2143,2088,2046,2020,1988,1970,1924,1882,1843,1809,1800,1725,
+1689,1651,1645,1625,1614,1602,1615,1681,1512,1420,1392,1389,1390,1375,1345,1306,1261,1219,1177,1136,
+1091,1103,1085,1055,1014,967,915,887,898,873,823,775,741,714,688,664,641,612,580,560,
+542,523,497,460,419,394,378,367,353,325,279,236,199,178,165,158,140,123,86,57,
+24,-8,-39,-70,-87,-94,-102,-108,-116,-138,-174,-202,-222,-243,-268,-291,-309,-320,-330,-340,
+-353,-364,-372,-383,-401,-424,-444,-470,-492,-518,-543,-565,-590,-618,-641,-652,-662,-674,-679,-697,
+-708,-713,-719,-743,-764,-781,-793,-811,-843,-846,-866,-885,-897,-914,-915,-928,-933,-930,-941,-943,
+-944,-936,-947,-968,-971,-981,-981,-992,-999,-999,-999,-1002,-1014,-1021,-1039,-1050,-1059,-1074,-1085,-1095,
+-1106,-1113,-1124,-1138,-1141,-1152,-1165,-1170,-1156,-1133,-1122,-1126,-1126,-1117,-1119,-1121,-1118,-1120,-1120,-1126,
+-1133,-1131,-1128,-1135,-1137,-1142,-1145,-1144,-1150,-1148,-1150,-1154,-1150,-1149,-1147,-1133,-1139,-1143,-1135,-1151,
+-1157,-1132,-1086,-1013,-961,-1083,-1159,-1170,-1164,-1161,-1154,-1144,-1140,-1133,-1133,-1145,-1161,-1168,-1177,-1188,
+-1199,-1205,-1211,-1201,-1205,-1210,-1214,-1202,-1195,-1187,-1190,-1192,-1199,-1202,-1198,-1195,-1203,-1208,-1213,-1218,
+-1161,-1071,-1100,-1127,-1131,-1113,-1057,-1080,-1083,-1071,-1079,-1066,-1052,-1046,-1049,-1043,-1041,-1035,-1029,-1020,
+-1007,-988,-976,-977,-973,-968,-959,-954,-951,-953,-954,-953,-949,-944,-937,-928,-918,-910,-902,-901,
+-896,-884,-871,-846,-820,-795,-787,-787,-788,-784,-782,-777,-754,-753,-750,-751,-734,-732,-725,-694,
+-661,-658,-644,-635,-614,-587,-571,-552,-530,-522,-512,-497,-490,-484,-481,-478,-472,-465,-455,-440,
+-431,-425,-423,-423,-415,-401,-379,-364,-342,-327,-313,-305,-292,-289,-289,-287,-281,-283,-280,-283,
+-283,-277,-263,-251,-246,-246,-243,-232,-219,-202,-186,-182,-172,-155,-144,-129,-117,-102,-100,-88,
+-69,-39,-14,4,18,39,87,143,186,219,258,294,320,353,389,431,470,505,540,566,
+591,619,646,673,701,733,766,790,815,849,884,919,955,987,1021,1051,1082,1113,1143,1174,
+1201,1217,1221,1209,1183,1134,1061,960,883,910,1133,1457,1653,1862,2091,2185,2142,2101,2090,2178,
+2385,2529,2678,2762,2779,2706,2621,2660,2575,2545,2565,2523,2401,2279,2167,2082,2035,2021,2011,2002,
+1972,1933,1906,1894,1886,1865,1850,1838,1831,1822,1816,1833,1822,1812,1806,1817,1814,1786,1762,1743,
+1730,1717,1700,1693,1696,1699,1698,1696,1699,1699,1700,1703,1715,1701,1672,1642,1587,1526,1461,1390,
+1341,1301,1264,1242,1215,1171,1122,1072,1015,946,896,853,815,750,668,591,505,428,368,302,
+234,146,56,-15,-82,-145,-202,-253,-289,-327,-360,-394,-417,-434,-454,-475,-494,-511,-520,-533,
+-544,-554,-560,-571,-579,-588,-597,-611,-626,-633,-639,-647,-659,-672,-684,-693,-699,-704,-708,-713,
+-710,-710,-703,-694,-688,-672,-660,-658,-666,-664,-658,-651,-639,-624,-601,-581,-559,-535,-503,-471,
+-436,-404,-375,-350,-319,-283,-242,-200,-154,-110,-62,-13,32,75,113,146,185,221,258,312,
+351,395,428,468,509,556,611,662,690,740,795,853,894,924,961,996,1030,1060,1097,1128,
+1158,1195,1229,1275,1317,1359,1397,1424,1440,1463,1495,1535,1560,1580,1609,1632,1655,1675,1707,1728,
+1755,1777,1794,1816,1833,1834,1844,1869,1890,1907,1934,1960,1979,2014,1976,2026,2015,1981,1969,1979,
+1976,1958,1974,1985,1975,1968,1964,1959,1957,1953,1936,1924,1917,1909,1901,1897,1878,1872,1862,1850,
+1833,1822,1816,1817,1825,1820,1813,1811,1803,1797,1792,1788,1778,1765,1755,1769,1805,1738,1710,1773,
+1767,1717,1724,1739,1757,1782,1789,1780,1778,1775,1773,1751,1736,1732,1714,1686,1670,1674,1677,1699,
+1763,1717,1696,1686,1698,1711,1701,1725,1732,1743,1761,1774,1794,1807,1819,1829,1836,1844,1853,1869,
+1886,1907,1929,1957,1981,2006,2032,2055,2074,2100,2125,2145,2168,2195,2235,2261,2289,2302,2315,2325,
+2343,2359,2368,2377,2386,2402,2418,2438,2460,2470,2488,2498,2506,2520,2531,2543,2548,2553,2555,2559,
+2564,2568,2576,2611,2590,2594,2603,2610,2624,2641,2660,2674,2685,2697,2723,2752,2779,2808,2831,2844,
+2849,2880,2941,2976,2988,3071,3151,3174,3172,3171,3162,3156,3141,3102,3049,2971,2888,2840,2829,2839,
+2888,2856,2824,2790,2759,2744,2763,2792,2807,2789,2791,2793,2814,2824,2858,2827,2798,2805,2820,2836,
+2831,2828,2817,2811,2806,2803,2794,2789,2791,2809,2839,2870,2906,2946,2970,2983,2992,3005,3017,3029,
+3044,3055,3062,3055,3039,3003,2951,2883,2806,2773,2746,2700,2675,2686,2690,2708,2721,2728,2745,2759,
+2779,2789,2780,2821,2850,2854,2862,2869,2874,2886,2908,2910,2946,2965,3016,3076,3131,3178,3227,3296,
+3363,3407,3432,3463,3492,3510,3507,3522,3515,3517,3522,3517,3507,3471,3461,3502,3501,3476,3484,3524,
+3515,3536,3528,3555,3547,3543,3541,3554,3562,3526,3529,3525,3539,3576,3593,3356,3317,3417,3417,3293,
+3299,3359,3268,3260,3169,3148,3157,3054,3016,2973,2872,2859,2790,2771,2702,2675,2648,2577,2510,2494,
+2479,2434,2416,2407,2408,2410,2407,2401,2391,2388,2391,2393,2395,2389,2396,2399,2396,2401,2397,2395,
+2393,2382,2367,2356,2340,2324,2311,2278,2258,2226,2189,2171,2145,2120,2086,2050,2012,1981,1957,1921,
+1896,1871,1841,1804,1775,1745,1719,1690,1664,1632,1589,1563,1538,1522,1490,1452,1432,1399,1378,1343,
+1308,1278,1248,1216,1225,1212,1192,1169,1143,1141,1118,1100,1086,1079,1057,1019,1025,1007,998,971,
+948,917,864,812,798,731,673,628,582,526,473,360,259,233,215,185,141,97,53,8,
+-35,-74,-114,-149,-185,-222,-263,-307,-359,-420,-469,-514,-549,-574,-611,-661,-712,-763,-813,-858,
+-906,-953,-989,-1031,-1073,-1117,-1156,-1208,-1257,-1311,-1359,-1399,-1445,-1482,-1538,-1586,-1628,-1672,-1721,-1758,
+-1803,-1849,-1898,-1952,-2004,-2055,-2105,-2155,-2206,-2249,-2285,-2324,-2370,-2414,-2468,-2510,-2547,-2597,-2641,-2672,
+-2707,-2747,-2784,-2813,-2844,-2873,-2906,-2946,-2973,-3011,-3059,-3104,-3136,-3166,-3196,-3230,-3256,-3278,-3310,-3342,
+-3377,-3407,-3443,-3483,-3503,-3546,-3572,-3608,-3654,-3706,-3753,-3782,-3809,-3824,-3794,-3782,-3802,-3825,-3849,-3871,
+-3914,-3924,-3901,-3868,-3858,-3868,-3882,-3915,-3946,-3966,-3951,-3924,-3958,-4018,-4006,-4022,-4042,-4032,-4006,-3986,
+-4006,-4005,-3985,-3985,-3949,-3934,-3917,-3911,-3917,-3888,-3863,-3865,-3853,-3840,-3838,-3842,-3839,-3826,-3816,-3816,
+-3824,-3840,-3851,-3864,-3879,-3883,-3884,-3872,-3851,-3843,-3824,-3793,-3761,-3731,-3706,-3684,-3665,-3643,-3631,-3619,
+-3592,-3565,-3537,-3515,-3498,-3476,-3461,-3427,-3394,-3366,-3336,-3311,-3287,-3276,-3269,-3239,-3196,-3155,-3123,-3092,
+-3064,-3040,-3013,-2989,-2965,-2938,-2910,-2884,-2852,-2823,-2787,-2755,-2738,-2700,-2657,-2628,-2608,-2576,-2528,-2457,
+-2369,-2294,-2226,-2169,-2122,-2064,-1989,-1870,-1689,-1442,-1176,-1025,-930,-840,-763,-703,-640,-583,-530,-483,
+-436,-404,-381,-329,-254,-182,-128,-91,-52,13,82,147,203,238,285,328,353,389,425,462,
+517,562,606,646,692,733,763,800,840,884,927,979,1048,1137,1194,1281,1379,1419,1478,1675,
+1795,1764,1747,1723,1685,1579,1498,1394,1172,963,813,783,794,823,858,903,944,976,1009,1036,
+1064,1097,1138,1170,1199,1230,1262,1275,1295,1345,1374,1392,1388,1372,1372,1377,1384,1388,1400,1424,
+1402,1409,1434,1408,1465,1497,1522,1552,1622,1687,1701,1720,1744,1790,1819,1855,1902,1930,1950,1986,
+2037,2089,2141,2202,2263,2342,2373,2407,2437,2449,2456,2465,2454,2474,2489,2502,2527,2547,2575,2619,
+2663,2713,2752,2790,2823,2848,2864,2878,2879,2875,2888,2907,2939,2958,2988,3044,3072,3123,3173,3231,
+3297,3395,3480,3531,3590,3620,3622,3634,3638,3608,3569,3524,3447,3403,3343,3286,3224,3172,3069,2940,
+2783,2689,2627,2583,2509,2368,2190,1995,1844,1762,1802,1908,2014,2114,2214,2288,2340,2380,2408,2421,
+2423,2409,2386,2352,2314,2272,2228,2180,2129,2073,2027,1987,1958,1933,1906,1868,1825,1787,1748,1722,
+1667,1627,1604,1595,1548,1518,1520,1580,1548,1447,1379,1357,1356,1353,1338,1314,1279,1234,1197,1165,
+1133,1060,1080,1067,1026,991,941,884,859,873,852,805,758,726,697,671,649,631,608,577,
+564,540,522,500,467,422,394,369,355,340,327,289,245,199,167,144,142,131,105,75,
+48,20,-10,-43,-77,-98,-110,-117,-121,-129,-154,-187,-223,-233,-248,-272,-302,-326,-347,-360,
+-366,-380,-394,-408,-420,-433,-448,-472,-487,-510,-532,-556,-582,-603,-634,-665,-673,-672,-686,-695,
+-699,-719,-736,-749,-762,-789,-797,-808,-833,-849,-865,-885,-892,-908,-921,-929,-923,-939,-953,-957,
+-959,-955,-956,-959,-963,-969,-978,-982,-992,-998,-998,-999,-1002,-1006,-1013,-1024,-1034,-1044,-1059,-1074,
+-1082,-1096,-1115,-1130,-1143,-1147,-1154,-1164,-1166,-1169,-1165,-1139,-1130,-1141,-1148,-1150,-1150,-1148,-1150,-1145,
+-1148,-1147,-1150,-1152,-1154,-1161,-1165,-1162,-1158,-1159,-1161,-1166,-1169,-1167,-1159,-1151,-1140,-1133,-1135,-1133,
+-1148,-1148,-1155,-1161,-1127,-1023,-1099,-1158,-1149,-1165,-1161,-1154,-1155,-1150,-1147,-1148,-1156,-1164,-1177,-1179,
+-1195,-1212,-1209,-1216,-1214,-1205,-1209,-1209,-1205,-1193,-1184,-1188,-1184,-1190,-1195,-1193,-1194,-1195,-1195,-1196,
+-1203,-1200,-1178,-1124,-1131,-1086,-1044,-1077,-1102,-1042,-1000,-1059,-1065,-1068,-1060,-1042,-1046,-1020,-1033,-1030,
+-1012,-1004,-993,-993,-982,-973,-973,-968,-965,-953,-957,-955,-955,-954,-952,-942,-934,-924,-913,-905,
+-896,-890,-882,-871,-856,-839,-824,-795,-773,-756,-722,-722,-739,-735,-714,-693,-708,-721,-723,-707,
+-695,-685,-675,-677,-691,-670,-661,-659,-620,-606,-599,-577,-554,-528,-515,-498,-490,-490,-495,-470,
+-456,-448,-430,-416,-391,-365,-342,-337,-324,-312,-294,-288,-283,-277,-275,-291,-278,-274,-276,-275,
+-275,-267,-261,-256,-251,-244,-240,-235,-222,-212,-198,-192,-183,-160,-157,-137,-123,-108,-91,-76,
+-58,-30,-17,0,47,81,116,120,153,192,232,257,295,324,354,384,423,464,499,527,
+550,573,605,631,656,694,727,757,782,808,847,881,913,944,979,1010,1043,1074,1109,1143,
+1174,1193,1200,1196,1180,1150,1099,1014,926,894,1016,1273,1581,1751,1926,2129,2174,2156,2088,2089,
+2241,2456,2567,2661,2741,2738,2717,2595,2600,2594,2554,2485,2399,2310,2207,2113,2045,1989,1985,1986,
+1975,1952,1922,1891,1882,1879,1864,1850,1823,1813,1815,1819,1823,1812,1794,1787,1790,1780,1767,1753,
+1742,1731,1715,1701,1701,1699,1694,1682,1668,1664,1657,1646,1643,1638,1632,1619,1608,1587,1554,1492,
+1416,1347,1298,1247,1204,1158,1122,1086,1059,1010,950,893,838,769,686,597,516,448,384,319,
+246,171,89,12,-47,-107,-163,-216,-258,-289,-321,-349,-377,-399,-420,-443,-465,-480,-495,-504,
+-516,-527,-538,-547,-555,-566,-577,-587,-601,-616,-623,-630,-639,-659,-669,-678,-688,-693,-700,-703,
+-704,-707,-702,-695,-689,-683,-677,-667,-660,-654,-653,-652,-646,-631,-618,-601,-583,-560,-532,-500,
+-465,-431,-398,-370,-338,-295,-255,-219,-186,-142,-99,-59,-8,39,81,125,156,186,232,277,
+304,337,364,418,462,524,570,609,667,703,744,809,874,916,944,979,1020,1063,1097,1121,
+1152,1194,1220,1259,1289,1337,1370,1398,1426,1448,1474,1505,1531,1557,1587,1617,1639,1667,1688,1716,
+1737,1766,1792,1804,1818,1840,1864,1881,1899,1918,1939,1956,1981,2016,2041,2061,2021,2055,2040,2000,
+2023,2016,2010,1995,1997,1989,1990,1990,2001,2003,1971,1961,1962,1963,1953,1935,1927,1917,1913,1897,
+1897,1878,1859,1857,1858,1863,1859,1848,1846,1840,1830,1829,1823,1807,1806,1842,1927,1878,1805,1766,
+1738,1733,1744,1749,1757,1775,1786,1773,1768,1765,1757,1754,1737,1707,1694,1687,1665,1645,1643,1667,
+1727,1684,1671,1678,1681,1687,1701,1701,1707,1719,1733,1744,1766,1771,1786,1801,1809,1815,1821,1833,
+1853,1874,1902,1927,1957,1985,2013,2041,2065,2085,2104,2120,2151,2184,2219,2252,2279,2299,2335,2357,
+2339,2341,2353,2367,2373,2385,2401,2415,2434,2456,2464,2480,2492,2497,2512,2527,2526,2536,2546,2556,
+2566,2580,2584,2587,2591,2598,2600,2603,2612,2621,2636,2648,2661,2669,2679,2703,2731,2747,2770,2792,
+2803,2799,2831,2946,2947,2931,2961,3080,3156,3173,3164,3149,3128,3103,3066,3006,2937,2870,2852,2840,
+2869,2927,2864,2816,2792,2782,2784,2822,2851,2866,2878,2892,2902,2905,2880,2858,2845,2842,2845,2862,
+2861,2842,2846,2844,2841,2843,2844,2838,2838,2840,2863,2888,2913,2942,2976,2997,3012,3013,3030,3045,
+3052,3063,3070,3073,3062,3043,3005,2948,2880,2824,2818,2781,2728,2716,2724,2729,2755,2762,2777,2799,
+2815,2842,2836,2842,2893,2918,2926,2937,2949,2955,2952,2981,2973,3009,3027,3075,3137,3176,3222,3279,
+3360,3437,3482,3499,3529,3570,3592,3586,3564,3568,3576,3565,3568,3553,3522,3540,3572,3565,3543,3580,
+3602,3598,3651,3682,3661,3641,3673,3665,3692,3681,3633,3612,3605,3615,3653,3690,3421,3471,3580,3521,
+3354,3316,3374,3275,3259,3175,3186,3142,3039,3043,2985,2890,2883,2801,2815,2749,2671,2655,2598,2525,
+2523,2485,2462,2455,2450,2448,2440,2427,2414,2404,2403,2398,2401,2404,2409,2413,2414,2415,2413,2416,
+2411,2409,2406,2397,2382,2367,2354,2327,2311,2287,2243,2215,2195,2174,2152,2110,2083,2047,2021,1997,
+1964,1931,1901,1873,1842,1815,1780,1761,1732,1697,1654,1631,1607,1574,1551,1520,1491,1462,1447,1416,
+1384,1347,1313,1285,1295,1276,1251,1218,1194,1187,1168,1151,1143,1131,1112,1099,1087,1088,1059,1041,
+1018,994,976,926,887,832,782,736,678,630,576,484,364,321,298,268,230,184,140,97,
+55,17,-20,-60,-99,-131,-166,-215,-268,-315,-363,-406,-440,-472,-509,-555,-604,-655,-708,-758,
+-808,-856,-897,-926,-970,-1024,-1062,-1108,-1161,-1208,-1257,-1305,-1349,-1392,-1432,-1484,-1526,-1577,-1618,-1658,
+-1706,-1751,-1794,-1839,-1894,-1950,-2002,-2045,-2094,-2145,-2197,-2231,-2268,-2314,-2365,-2414,-2457,-2501,-2546,-2586,
+-2618,-2653,-2690,-2732,-2767,-2797,-2826,-2865,-2888,-2920,-2965,-3013,-3055,-3085,-3119,-3152,-3186,-3210,-3241,-3273,
+-3303,-3337,-3372,-3409,-3433,-3456,-3497,-3510,-3531,-3554,-3601,-3642,-3679,-3693,-3615,-3607,-3657,-3700,-3745,-3774,
+-3809,-3889,-3892,-3867,-3831,-3800,-3779,-3781,-3808,-3869,-3899,-3926,-3887,-3916,-3963,-3964,-3969,-4000,-4010,-3992,
+-3971,-3952,-3939,-3936,-3928,-3918,-3897,-3891,-3903,-3880,-3870,-3877,-3867,-3882,-3885,-3890,-3902,-3890,-3870,-3857,
+-3851,-3853,-3868,-3878,-3881,-3887,-3886,-3877,-3856,-3838,-3826,-3797,-3770,-3741,-3708,-3685,-3664,-3649,-3628,-3603,
+-3577,-3558,-3529,-3509,-3492,-3475,-3462,-3433,-3410,-3377,-3343,-3312,-3277,-3252,-3246,-3242,-3211,-3167,-3120,-3086,
+-3057,-3029,-2997,-2974,-2948,-2925,-2907,-2879,-2846,-2816,-2783,-2758,-2739,-2719,-2685,-2638,-2622,-2613,-2590,-2551,
+-2488,-2401,-2317,-2253,-2210,-2160,-2109,-2063,-1985,-1868,-1706,-1488,-1240,-1092,-976,-881,-789,-711,-644,-588,
+-542,-504,-469,-440,-382,-315,-243,-186,-137,-105,-39,30,100,159,197,251,313,337,367,403,
+442,493,532,576,619,660,697,720,765,819,870,903,959,1027,1129,1213,1297,1369,1452,1534,
+1655,1677,1642,1640,1649,1594,1474,1388,1250,989,813,722,709,725,755,793,832,879,911,940,
+970,1000,1033,1072,1106,1134,1164,1196,1210,1223,1303,1410,1442,1379,1323,1304,1307,1316,1326,1340,
+1366,1329,1325,1330,1339,1356,1391,1440,1484,1533,1571,1587,1625,1661,1712,1757,1788,1826,1870,1894,
+1908,1937,1988,2063,2128,2193,2253,2296,2326,2357,2368,2379,2416,2429,2450,2478,2491,2506,2523,2537,
+2548,2581,2628,2671,2711,2765,2812,2842,2854,2851,2839,2837,2839,2862,2897,2903,2952,2992,3029,3088,
+3137,3199,3297,3370,3419,3492,3522,3530,3544,3556,3543,3492,3428,3360,3314,3249,3133,3044,2929,2787,
+2634,2532,2476,2456,2452,2397,2274,2112,1951,1850,1839,1929,2028,2122,2197,2258,2309,2348,2377,2396,
+2400,2397,2374,2342,2298,2252,2206,2162,2119,2066,2010,1974,1943,1903,1872,1846,1807,1764,1726,1682,
+1641,1604,1594,1567,1525,1485,1473,1483,1494,1445,1375,1327,1307,1307,1299,1289,1269,1239,1197,1165,
+1145,1124,1072,1069,1043,1004,965,916,857,827,842,828,783,734,701,673,650,633,617,594,
+570,560,541,519,495,465,438,396,365,348,340,324,297,251,211,169,147,128,121,91,
+54,32,13,-11,-34,-61,-90,-109,-127,-135,-148,-168,-203,-233,-255,-260,-280,-308,-338,-368,
+-395,-403,-409,-426,-445,-460,-468,-478,-498,-515,-535,-551,-568,-592,-613,-635,-661,-680,-677,-695,
+-711,-729,-750,-756,-774,-781,-791,-809,-829,-850,-856,-866,-885,-903,-922,-937,-945,-950,-955,-962,
+-957,-951,-956,-960,-970,-975,-982,-992,-990,-1000,-1006,-1015,-1014,-1014,-1016,-1021,-1028,-1030,-1038,-1049,
+-1066,-1080,-1096,-1111,-1134,-1148,-1155,-1154,-1164,-1167,-1170,-1182,-1182,-1159,-1153,-1166,-1174,-1177,-1177,-1174,
+-1165,-1162,-1161,-1166,-1171,-1172,-1171,-1170,-1171,-1171,-1176,-1179,-1184,-1183,-1176,-1167,-1152,-1146,-1136,-1132,
+-1125,-1125,-1134,-1139,-1140,-1137,-1127,-1162,-1213,-1155,-1144,-1152,-1135,-1145,-1165,-1159,-1166,-1168,-1171,-1180,
+-1196,-1223,-1188,-1196,-1202,-1206,-1208,-1216,-1217,-1218,-1204,-1195,-1193,-1188,-1188,-1190,-1191,-1193,-1189,-1187,
+-1184,-1186,-1194,-1182,-1171,-1164,-1095,-1067,-1107,-1117,-1100,-1084,-1102,-1092,-1085,-1082,-1068,-1053,-1036,-1018,
+-1010,-1004,-998,-990,-988,-982,-977,-975,-970,-967,-957,-964,-957,-956,-954,-956,-951,-945,-939,-920,
+-905,-898,-892,-882,-873,-858,-843,-834,-822,-811,-794,-776,-765,-756,-754,-756,-749,-729,-711,-677,
+-667,-670,-657,-644,-624,-607,-597,-600,-607,-610,-609,-609,-602,-576,-546,-517,-486,-452,-435,-457,
+-412,-404,-389,-364,-362,-347,-333,-318,-305,-301,-293,-287,-282,-278,-273,-265,-261,-246,-250,-257,
+-262,-255,-257,-256,-257,-258,-250,-244,-231,-211,-200,-194,-186,-172,-153,-135,-118,-99,-78,-61,
+-45,-29,-6,16,41,69,91,117,140,170,197,232,253,279,317,349,375,406,445,480,
+512,539,567,594,620,652,687,717,741,764,800,838,870,903,932,964,998,1031,1064,1097,
+1133,1162,1177,1175,1168,1155,1120,1058,973,913,944,1126,1376,1625,1812,1987,2100,2112,2096,2064,
+2126,2326,2511,2581,2638,2728,2713,2703,2576,2594,2627,2505,2394,2312,2238,2174,2083,2007,1954,1930,
+1931,1933,1921,1893,1861,1860,1867,1855,1837,1807,1791,1793,1791,1790,1790,1770,1756,1754,1745,1739,
+1736,1732,1721,1714,1709,1712,1707,1694,1676,1663,1650,1629,1608,1592,1573,1556,1543,1539,1535,1524,
+1497,1438,1352,1280,1214,1148,1109,1088,1063,1043,1021,965,879,803,730,646,551,478,407,345,
+272,194,114,39,-28,-85,-134,-182,-229,-262,-294,-320,-343,-367,-392,-413,-432,-450,-464,-479,
+-492,-507,-520,-531,-537,-548,-558,-571,-585,-597,-610,-618,-627,-637,-653,-662,-670,-682,-692,-700,
+-703,-705,-704,-697,-690,-682,-677,-673,-667,-661,-651,-646,-645,-638,-624,-615,-596,-580,-555,-526,
+-496,-462,-428,-398,-367,-331,-286,-242,-205,-171,-133,-93,-56,-5,37,77,129,163,199,236,
+275,304,341,368,417,472,533,587,619,675,707,758,807,854,893,925,964,1003,1040,1076,
+1113,1148,1189,1229,1267,1302,1337,1369,1403,1426,1459,1489,1523,1550,1580,1601,1628,1653,1675,1699,
+1722,1739,1755,1783,1804,1833,1846,1875,1898,1913,1942,1981,1992,1993,2010,2028,2091,2058,2070,2067,
+2039,2038,2039,2037,2024,2024,2032,2028,2036,2031,2012,2009,2002,1994,1994,1987,1970,1961,1952,1939,
+1928,1922,1909,1891,1895,1897,1898,1893,1887,1880,1875,1862,1855,1859,1860,1844,1921,1852,1792,1773,
+1777,1798,1780,1782,1786,1789,1788,1782,1780,1763,1756,1752,1734,1706,1676,1666,1655,1637,1619,1612,
+1622,1635,1635,1648,1666,1676,1686,1701,1684,1700,1716,1727,1741,1756,1763,1771,1784,1790,1794,1804,
+1818,1837,1867,1898,1929,1961,1988,2022,2046,2065,2087,2114,2141,2170,2203,2232,2260,2299,2317,2327,
+2332,2341,2346,2351,2356,2364,2376,2391,2409,2421,2436,2461,2471,2481,2482,2505,2519,2520,2531,2544,
+2561,2574,2592,2599,2606,2608,2609,2612,2616,2621,2624,2637,2648,2659,2668,2683,2701,2718,2728,2749,
+2813,2853,2804,2781,2796,2826,2860,2904,3003,3082,3120,3117,3088,3018,2928,2858,2861,2913,2921,2912,
+2875,2826,2796,2788,2781,2790,2818,2839,2863,2898,2927,2968,2963,2956,2937,2931,2903,2895,2888,2886,
+2893,2891,2874,2869,2869,2882,2880,2880,2884,2889,2899,2914,2931,2955,2987,3005,3012,3008,3010,3025,
+3047,3058,3065,3073,3076,3071,3050,3014,2951,2887,2868,2854,2807,2766,2765,2764,2777,2796,2803,2827,
+2848,2875,2897,2886,2911,2964,2986,2999,3015,3026,3016,3026,3051,3047,3068,3095,3132,3191,3234,3282,
+3348,3422,3493,3537,3576,3606,3651,3659,3646,3635,3613,3615,3601,3611,3603,3574,3627,3657,3647,3604,
+3682,3702,3708,3758,3790,3771,3754,3749,3758,3759,3762,3726,3694,3678,3673,3689,3738,3489,3515,3628,
+3562,3419,3389,3342,3275,3270,3199,3204,3151,3062,3055,2994,2926,2910,2844,2831,2752,2674,2638,2590,
+2556,2529,2506,2497,2492,2485,2479,2465,2447,2434,2423,2419,2415,2417,2419,2423,2427,2427,2427,2424,
+2421,2422,2424,2425,2414,2404,2387,2364,2345,2315,2287,2260,2240,2220,2189,2162,2141,2115,2094,2068,
+2039,2006,1971,1936,1911,1884,1856,1829,1800,1757,1723,1701,1672,1640,1607,1574,1548,1530,1511,1480,
+1456,1419,1378,1351,1353,1336,1307,1273,1261,1252,1238,1218,1217,1179,1160,1167,1137,1148,1131,1113,
+1087,1055,1033,1033,992,936,895,843,788,729,674,585,463,412,389,367,328,283,235,190,
+147,108,72,32,-2,-39,-77,-123,-174,-222,-261,-305,-338,-372,-410,-451,-492,-545,-598,-650,
+-702,-750,-795,-831,-867,-919,-968,-1004,-1056,-1110,-1149,-1196,-1250,-1296,-1337,-1373,-1427,-1459,-1504,-1563,
+-1603,-1648,-1691,-1734,-1779,-1833,-1895,-1943,-1982,-2027,-2072,-2134,-2178,-2219,-2264,-2305,-2357,-2405,-2447,-2490,
+-2534,-2566,-2602,-2636,-2675,-2713,-2754,-2785,-2817,-2846,-2882,-2923,-2964,-3005,-3038,-3069,-3101,-3134,-3173,-3202,
+-3231,-3263,-3298,-3333,-3361,-3391,-3411,-3442,-3454,-3484,-3497,-3517,-3532,-3555,-3578,-3619,-3630,-3616,-3632,-3642,
+-3676,-3740,-3776,-3786,-3812,-3822,-3782,-3734,-3743,-3784,-3843,-3888,-3931,-3941,-3928,-3926,-3915,-3924,-3957,-3956,
+-3927,-3914,-3914,-3919,-3913,-3910,-3875,-3844,-3854,-3855,-3855,-3844,-3857,-3854,-3847,-3882,-3889,-3902,-3894,-3876,
+-3865,-3856,-3859,-3869,-3878,-3874,-3865,-3854,-3847,-3817,-3797,-3780,-3747,-3728,-3704,-3681,-3673,-3646,-3631,-3606,
+-3571,-3553,-3531,-3505,-3479,-3473,-3453,-3443,-3414,-3382,-3346,-3308,-3274,-3238,-3220,-3218,-3210,-3173,-3120,-3071,
+-3047,-3029,-3007,-2970,-2933,-2908,-2886,-2868,-2842,-2813,-2781,-2741,-2721,-2710,-2686,-2643,-2603,-2576,-2562,-2526,
+-2492,-2445,-2383,-2318,-2236,-2194,-2146,-2102,-2064,-2023,-1951,-1848,-1719,-1585,-1418,-1255,-1146,-956,-819,-722,
+-656,-608,-583,-552,-514,-455,-393,-322,-248,-208,-143,-85,-26,52,121,170,225,280,317,339,
+387,431,469,511,552,602,629,653,681,731,788,869,906,989,1064,1166,1240,1359,1396,1421,
+1515,1539,1498,1503,1516,1521,1478,1363,1263,1131,877,715,641,641,662,687,728,767,805,841,
+873,903,937,973,1011,1044,1074,1100,1126,1151,1191,1299,1425,1514,1337,1260,1226,1221,1239,1265,
+1271,1253,1254,1253,1267,1281,1290,1308,1340,1387,1432,1470,1511,1539,1579,1635,1677,1715,1758,1782,
+1822,1841,1862,1920,1998,2045,2103,2150,2197,2245,2276,2299,2307,2340,2367,2391,2431,2472,2489,2500,
+2518,2532,2556,2582,2597,2623,2673,2730,2771,2788,2796,2796,2791,2790,2788,2811,2841,2868,2910,2947,
+2994,3048,3107,3177,3269,3332,3388,3445,3465,3484,3503,3476,3414,3347,3262,3205,3104,3011,2869,2684,
+2514,2369,2291,2276,2295,2301,2263,2187,2030,1907,1869,1947,2050,2143,2208,2255,2294,2328,2337,2370,
+2375,2375,2364,2339,2296,2247,2194,2143,2102,2054,1997,1944,1907,1870,1829,1804,1774,1736,1702,1663,
+1638,1588,1562,1625,1609,1487,1447,1452,1527,1586,1466,1354,1294,1265,1264,1242,1227,1212,1188,1155,
+1125,1117,1141,1070,1055,1014,967,928,882,823,789,816,798,759,714,675,648,629,616,602,
+581,557,544,529,518,496,465,429,420,365,349,333,319,298,262,224,185,147,127,110,
+90,59,32,9,-7,-33,-55,-87,-110,-129,-143,-162,-181,-211,-244,-264,-274,-287,-308,-340,
+-368,-400,-426,-438,-456,-475,-490,-502,-511,-524,-539,-560,-563,-583,-597,-614,-632,-657,-683,-692,
+-705,-724,-740,-749,-756,-766,-778,-804,-817,-842,-858,-875,-890,-904,-919,-923,-933,-944,-955,-969,
+-974,-982,-977,-971,-966,-983,-992,-993,-998,-1010,-1019,-1029,-1031,-1036,-1037,-1044,-1043,-1045,-1042,-1050,
+-1055,-1068,-1084,-1100,-1116,-1134,-1147,-1155,-1167,-1171,-1174,-1175,-1186,-1200,-1205,-1181,-1168,-1174,-1181,-1175,
+-1173,-1174,-1177,-1183,-1189,-1189,-1177,-1158,-1174,-1171,-1168,-1186,-1185,-1185,-1185,-1173,-1164,-1155,-1146,-1139,
+-1138,-1138,-1144,-1154,-1162,-1171,-1172,-1176,-1168,-1167,-1163,-1157,-1151,-1140,-1142,-1140,-1164,-1162,-1181,-1190,
+-1203,-1221,-1208,-1205,-1208,-1212,-1224,-1229,-1235,-1232,-1235,-1223,-1210,-1202,-1201,-1203,-1208,-1202,-1204,-1199,
+-1191,-1183,-1179,-1175,-1165,-1153,-1157,-1149,-1140,-1132,-1121,-1110,-1091,-1092,-1043,-994,-1027,-1072,-1033,-1034,
+-1023,-1009,-1003,-995,-993,-986,-976,-979,-971,-968,-964,-960,-961,-963,-957,-964,-962,-955,-949,-944,
+-927,-918,-908,-899,-889,-879,-866,-853,-848,-837,-826,-819,-815,-803,-790,-786,-777,-758,-735,-701,
+-685,-676,-661,-639,-625,-612,-604,-597,-587,-574,-567,-550,-534,-530,-522,-510,-494,-469,-432,-400,
+-428,-394,-395,-377,-366,-350,-335,-308,-290,-277,-268,-258,-254,-253,-257,-253,-252,-253,-245,-241,
+-247,-248,-246,-241,-239,-230,-226,-226,-230,-225,-208,-189,-193,-190,-177,-159,-141,-116,-94,-78,
+-57,-39,-21,1,23,44,66,87,115,140,162,182,220,253,286,319,348,381,402,433,
+468,503,538,564,593,614,640,672,699,723,752,792,828,856,884,914,945,980,1012,1047,
+1083,1117,1136,1150,1156,1149,1127,1087,1016,940,907,1006,1207,1452,1680,1873,2029,2075,2076,2058,
+2054,2157,2362,2478,2562,2584,2733,2739,2598,2505,2500,2476,2396,2312,2238,2164,2105,2030,1958,1910,
+1891,1881,1896,1888,1855,1823,1832,1851,1835,1808,1792,1782,1779,1770,1765,1766,1744,1723,1711,1701,
+1699,1710,1713,1706,1708,1710,1715,1710,1703,1692,1675,1650,1624,1593,1569,1552,1527,1505,1492,1485,
+1472,1453,1410,1344,1262,1171,1107,1061,1038,1028,1020,993,924,829,744,648,557,484,421,355,
+292,218,142,67,0,-62,-117,-161,-202,-240,-269,-298,-322,-341,-365,-390,-405,-421,-438,-455,
+-470,-482,-496,-509,-521,-526,-538,-551,-564,-575,-587,-599,-611,-622,-631,-647,-657,-669,-680,-691,
+-698,-702,-701,-699,-692,-682,-677,-673,-671,-667,-664,-657,-650,-639,-630,-619,-609,-594,-574,-549,
+-520,-490,-457,-429,-400,-365,-316,-270,-225,-187,-149,-115,-79,-49,-14,24,74,113,176,220,
+257,297,324,371,406,444,490,546,606,640,674,716,744,784,836,873,906,946,986,1027,
+1067,1113,1148,1183,1228,1270,1310,1342,1377,1409,1444,1475,1508,1545,1572,1599,1622,1642,1673,1689,
+1698,1702,1715,1743,1773,1789,1818,1838,1861,1891,1929,1951,1976,2005,2026,2029,2058,2087,2096,2100,
+2095,2082,2074,2065,2065,2078,2050,2059,2060,2060,2048,2041,2034,2021,2007,2015,2006,1997,1995,1994,
+1973,1952,1949,1957,1936,1934,1943,1939,1931,1923,1919,1910,1905,1900,1888,1868,1853,1843,1828,1850,
+1859,1827,1828,1825,1830,1841,1839,1830,1811,1810,1765,1750,1741,1712,1674,1656,1648,1631,1632,1625,
+1621,1614,1617,1630,1637,1648,1661,1674,1684,1683,1698,1707,1716,1728,1740,1751,1759,1769,1777,1782,
+1793,1809,1834,1867,1905,1942,1971,1998,2017,2041,2073,2098,2122,2148,2178,2199,2229,2251,2329,2309,
+2314,2342,2340,2341,2346,2349,2351,2358,2378,2390,2408,2424,2441,2454,2467,2477,2492,2500,2513,2525,
+2546,2563,2581,2600,2618,2629,2631,2633,2632,2630,2635,2639,2648,2655,2664,2674,2703,2721,2747,2732,
+2734,2750,2774,2776,2769,2758,2764,2798,2865,2937,2994,3010,2971,2872,2777,2772,2822,2913,3032,2988,
+3048,2896,2791,2760,2764,2781,2815,2865,2906,2939,2962,2970,3001,2994,2995,2984,3009,3011,2947,2908,
+2912,2947,2940,2947,2950,2957,2954,2919,2906,2913,2936,2942,2952,2974,2999,3029,3044,3032,3016,3011,
+3029,3052,3068,3080,3092,3097,3080,3050,3006,2956,2918,2917,2880,2831,2813,2812,2805,2832,2847,2858,
+2885,2902,2930,2935,2951,2994,3033,3064,3072,3080,3091,3087,3091,3109,3136,3158,3196,3212,3244,3296,
+3361,3401,3461,3542,3593,3630,3653,3671,3687,3690,3691,3688,3648,3677,3674,3651,3647,3708,3729,3724,
+3710,3795,3800,3812,3830,3861,3844,3833,3832,3833,3829,3826,3822,3805,3775,3737,3742,3737,3463,3527,
+3613,3540,3426,3437,3358,3316,3272,3213,3216,3145,3096,3084,2988,2980,2920,2864,2841,2768,2681,2667,
+2630,2580,2550,2535,2528,2520,2511,2501,2485,2472,2456,2448,2435,2428,2435,2436,2439,2437,2438,2433,
+2432,2429,2429,2433,2435,2430,2415,2395,2368,2357,2340,2317,2293,2275,2239,2214,2198,2184,2157,2138,
+2113,2083,2054,2021,1988,1958,1926,1898,1867,1821,1795,1773,1746,1711,1677,1644,1619,1588,1569,1542,
+1520,1485,1446,1428,1419,1388,1359,1340,1317,1307,1290,1271,1263,1231,1221,1223,1209,1209,1191,1178,
+1158,1139,1139,1134,1092,1041,982,951,894,828,749,651,557,507,481,455,420,380,334,287,
+240,202,168,129,88,54,19,-23,-78,-116,-155,-206,-243,-272,-311,-350,-389,-436,-486,-542,
+-593,-642,-689,-734,-764,-815,-866,-907,-959,-1009,-1052,-1090,-1136,-1190,-1237,-1278,-1320,-1363,-1401,-1454,
+-1503,-1550,-1592,-1635,-1675,-1718,-1769,-1831,-1881,-1921,-1961,-2015,-2058,-2114,-2151,-2202,-2241,-2302,-2346,-2387,
+-2434,-2474,-2515,-2552,-2583,-2618,-2657,-2698,-2730,-2766,-2805,-2840,-2879,-2919,-2953,-2983,-3023,-3056,-3096,-3128,
+-3154,-3185,-3219,-3255,-3286,-3311,-3339,-3362,-3385,-3410,-3427,-3454,-3471,-3468,-3484,-3501,-3524,-3556,-3608,-3644,
+-3661,-3641,-3626,-3639,-3654,-3659,-3697,-3685,-3694,-3779,-3791,-3772,-3875,-3863,-3788,-3752,-3778,-3817,-3834,-3883,
+-3903,-3886,-3877,-3878,-3889,-3895,-3897,-3881,-3871,-3855,-3810,-3800,-3820,-3815,-3831,-3857,-3865,-3859,-3876,-3865,
+-3838,-3841,-3834,-3833,-3835,-3822,-3805,-3802,-3797,-3786,-3753,-3719,-3682,-3669,-3663,-3647,-3632,-3628,-3620,-3594,
+-3567,-3539,-3525,-3502,-3482,-3445,-3426,-3400,-3365,-3350,-3319,-3297,-3270,-3240,-3221,-3223,-3204,-3180,-3146,-3106,
+-3069,-3039,-3004,-2987,-2972,-2942,-2905,-2876,-2851,-2819,-2793,-2765,-2725,-2705,-2678,-2661,-2625,-2582,-2549,-2521,
+-2479,-2432,-2405,-2364,-2314,-2256,-2201,-2155,-2112,-2059,-1986,-1940,-1875,-1784,-1696,-1600,-1493,-1373,-1184,-1011,
+-882,-790,-730,-686,-641,-609,-556,-479,-409,-355,-290,-217,-137,-75,-3,84,155,213,268,303,
+330,362,421,446,485,527,588,610,635,653,708,788,852,896,995,1093,1175,1282,1381,1356,
+1360,1423,1390,1373,1426,1421,1404,1350,1279,1154,1036,788,629,564,562,594,623,660,698,732,
+770,802,836,870,908,943,970,1000,1029,1054,1085,1116,1143,1193,1230,1193,1161,1143,1148,1168,
+1191,1194,1188,1188,1193,1211,1224,1236,1254,1273,1300,1330,1367,1407,1450,1478,1524,1579,1626,1669,
+1706,1725,1761,1793,1865,1936,1977,2024,2071,2103,2136,2162,2209,2231,2263,2300,2325,2391,2448,2472,
+2494,2504,2511,2542,2561,2580,2596,2609,2630,2669,2704,2729,2747,2752,2745,2742,2744,2768,2800,2834,
+2867,2918,2958,2993,3068,3193,3272,3304,3337,3387,3417,3418,3403,3329,3265,3183,3115,3001,2871,2688,
+2480,2292,2142,2078,2101,2151,2146,2122,2067,1961,1892,1927,2037,2147,2215,2261,2301,2326,2352,2333,
+2329,2336,2336,2326,2297,2250,2196,2136,2084,2038,1985,1929,1887,1871,1805,1769,1736,1705,1670,1639,
+1604,1565,1529,1515,1559,1546,1440,1405,1403,1488,1632,1467,1346,1278,1229,1197,1178,1165,1148,1126,
+1107,1107,1143,1088,1027,1022,981,926,887,844,794,758,785,763,726,684,650,625,609,597,
+586,565,538,517,512,503,495,472,434,404,371,348,332,310,298,271,235,200,165,129,
+106,88,63,39,11,-12,-33,-63,-91,-116,-134,-147,-173,-191,-220,-247,-272,-289,-300,-314,
+-336,-370,-401,-431,-453,-474,-495,-515,-532,-545,-558,-568,-581,-599,-601,-616,-626,-638,-653,-677,
+-696,-712,-741,-767,-767,-772,-788,-800,-818,-842,-857,-870,-884,-908,-919,-947,-959,-969,-962,-958,
+-984,-996,-1002,-1004,-1001,-1006,-1000,-998,-1006,-1008,-1021,-1037,-1043,-1056,-1055,-1062,-1073,-1079,-1079,-1077,
+-1076,-1078,-1081,-1096,-1110,-1120,-1135,-1149,-1160,-1169,-1177,-1180,-1188,-1187,-1201,-1214,-1221,-1200,-1178,-1155,
+-1157,-1175,-1181,-1177,-1173,-1180,-1173,-1175,-1169,-1166,-1172,-1189,-1189,-1185,-1191,-1197,-1186,-1186,-1179,-1170,
+-1164,-1161,-1155,-1153,-1156,-1161,-1166,-1174,-1170,-1164,-1150,-1148,-1163,-1194,-1246,-1248,-1165,-1084,-1086,-1136,
+-1162,-1169,-1203,-1205,-1201,-1208,-1219,-1230,-1238,-1245,-1243,-1243,-1238,-1226,-1214,-1209,-1216,-1220,-1220,-1218,
+-1212,-1205,-1192,-1187,-1178,-1169,-1152,-1152,-1154,-1147,-1135,-1130,-1110,-1040,-1051,-1072,-1040,-998,-1022,-1019,
+-1013,-1024,-1020,-1009,-994,-991,-979,-977,-977,-973,-966,-964,-964,-964,-967,-968,-964,-972,-965,-960,
+-951,-938,-924,-916,-908,-898,-886,-876,-869,-862,-850,-839,-834,-831,-817,-808,-793,-775,-763,-741,
+-711,-688,-695,-687,-677,-664,-651,-636,-622,-606,-589,-566,-544,-549,-542,-533,-513,-482,-453,-441,
+-452,-471,-443,-434,-429,-403,-380,-365,-338,-323,-305,-303,-299,-286,-279,-277,-273,-266,-262,-261,
+-262,-265,-264,-261,-248,-239,-234,-225,-215,-211,-213,-222,-202,-172,-180,-176,-168,-151,-125,-97,
+-77,-54,-39,-22,-1,15,38,57,74,100,129,157,186,220,257,285,312,347,363,404,
+444,459,493,529,558,585,609,636,660,683,713,748,787,813,833,863,892,923,959,998,
+1033,1069,1095,1115,1133,1137,1124,1093,1046,977,911,899,1032,1299,1568,1777,1946,2069,2082,2060,
+2035,2053,2198,2378,2518,2562,2561,2649,2659,2612,2464,2395,2364,2328,2259,2178,2105,2049,1984,1914,
+1869,1857,1844,1845,1836,1809,1782,1791,1806,1796,1772,1755,1771,1765,1763,1756,1735,1717,1694,1666,
+1655,1659,1671,1676,1680,1682,1683,1696,1708,1701,1687,1664,1641,1622,1596,1564,1538,1515,1487,1461,
+1443,1428,1400,1357,1311,1249,1167,1089,1031,1000,991,982,929,842,757,656,544,443,375,333,
+293,242,173,97,35,-28,-85,-134,-176,-216,-247,-273,-299,-322,-341,-360,-377,-394,-413,-429,
+-445,-465,-479,-493,-506,-519,-526,-537,-552,-566,-575,-587,-600,-614,-629,-639,-651,-662,-674,-682,
+-692,-698,-698,-699,-694,-689,-681,-675,-672,-668,-663,-658,-654,-645,-635,-617,-608,-600,-586,-566,
+-542,-516,-484,-454,-429,-402,-374,-326,-272,-233,-190,-149,-108,-72,-36,-7,27,73,106,170,
+220,254,293,345,379,420,459,509,562,601,634,669,709,744,779,824,876,917,957,997,
+1039,1089,1135,1173,1206,1244,1276,1306,1340,1375,1409,1443,1482,1515,1548,1571,1597,1627,1648,1665,
+1682,1698,1716,1745,1769,1808,1838,1858,1878,1914,1934,1957,1974,1992,2002,2020,2049,2077,2111,2116,
+2103,2117,2108,2089,2097,2102,2091,2093,2085,2087,2087,2080,2074,2057,2045,2041,2046,2045,2055,2101,
+2146,2044,1989,1972,1977,1973,1976,1976,1974,1973,1960,1950,1945,1948,1946,1925,1907,1902,1918,1957,
+1964,1880,1868,1882,1893,1886,1867,1850,1837,1815,1789,1772,1754,1766,1749,1679,1648,1662,1681,1698,
+1679,1632,1605,1600,1617,1623,1632,1649,1679,1683,1668,1679,1696,1711,1722,1739,1752,1755,1762,1766,
+1781,1798,1818,1842,1874,1906,1935,1969,2002,2028,2048,2074,2098,2128,2154,2184,2196,2214,2237,2256,
+2278,2295,2312,2328,2334,2330,2331,2339,2346,2356,2371,2389,2408,2425,2440,2460,2473,2490,2505,2515,
+2527,2543,2564,2591,2614,2640,2643,2650,2649,2646,2645,2647,2643,2639,2651,2664,2686,2732,2752,2740,
+2738,2743,2759,2780,2778,2777,2752,2745,2791,2852,2852,2849,2785,2740,2732,2769,2826,2907,2963,2977,
+2920,2872,2817,2774,2758,2773,2799,2838,2889,2950,2982,3001,3018,3026,3041,3050,3041,3035,3034,3011,
+2989,2988,2984,2985,2992,3007,3069,3024,2962,2937,2923,2940,2948,2965,3000,3031,3052,3061,3055,3050,
+3047,3056,3072,3090,3106,3113,3123,3105,3076,3047,3003,2970,2958,2909,2869,2862,2852,2852,2878,2897,
+2907,2922,2944,2971,2990,3017,3052,3082,3112,3126,3142,3165,3174,3188,3211,3239,3241,3274,3300,3329,
+3379,3425,3461,3539,3605,3637,3665,3690,3711,3719,3722,3735,3712,3712,3740,3731,3720,3732,3779,3813,
+3801,3829,3883,3875,3912,3918,3939,3933,3898,3889,3903,3913,3881,3861,3832,3811,3766,3727,3644,3526,
+3590,3614,3525,3435,3459,3366,3355,3291,3247,3228,3153,3125,3086,3017,3034,2949,2900,2843,2782,2707,
+2704,2638,2603,2585,2571,2558,2545,2532,2517,2503,2489,2479,2473,2462,2452,2450,2452,2451,2450,2448,
+2443,2441,2439,2437,2440,2442,2439,2423,2396,2386,2378,2354,2339,2323,2296,2271,2251,2235,2226,2210,
+2181,2157,2126,2076,2073,2049,2007,1973,1937,1897,1873,1844,1817,1784,1747,1713,1688,1657,1631,1607,
+1582,1560,1509,1491,1481,1449,1424,1401,1378,1359,1336,1317,1318,1295,1268,1274,1261,1248,1238,1219,
+1204,1222,1235,1212,1184,1153,1107,1059,999,938,863,736,652,610,575,538,508,481,436,387,
+338,297,267,240,204,162,119,74,22,-22,-60,-105,-136,-173,-212,-250,-291,-332,-374,-427,
+-483,-535,-585,-627,-668,-708,-777,-810,-857,-906,-944,-989,-1034,-1080,-1132,-1179,-1218,-1254,-1285,-1334,
+-1394,-1443,-1490,-1535,-1573,-1617,-1660,-1710,-1767,-1824,-1866,-1907,-1958,-2008,-2057,-2093,-2146,-2192,-2239,-2283,
+-2327,-2371,-2411,-2455,-2495,-2524,-2564,-2602,-2638,-2674,-2712,-2754,-2791,-2830,-2869,-2901,-2929,-2968,-3002,-3043,
+-3077,-3107,-3142,-3176,-3207,-3235,-3261,-3287,-3309,-3328,-3354,-3385,-3404,-3431,-3427,-3440,-3458,-3475,-3483,-3511,
+-3537,-3575,-3594,-3617,-3636,-3628,-3625,-3609,-3647,-3698,-3747,-3776,-3788,-3779,-3750,-3713,-3752,-3807,-3811,-3809,
+-3827,-3832,-3789,-3792,-3817,-3826,-3828,-3820,-3816,-3812,-3837,-3839,-3796,-3750,-3774,-3797,-3818,-3825,-3820,-3834,
+-3811,-3746,-3769,-3763,-3765,-3763,-3746,-3753,-3741,-3710,-3679,-3643,-3631,-3638,-3630,-3618,-3606,-3586,-3572,-3557,
+-3550,-3509,-3475,-3453,-3449,-3439,-3415,-3400,-3391,-3360,-3333,-3308,-3293,-3268,-3250,-3225,-3211,-3184,-3151,-3118,
+-3086,-3047,-3030,-2999,-2978,-2954,-2928,-2899,-2871,-2836,-2808,-2792,-2763,-2733,-2699,-2675,-2653,-2620,-2590,-2552,
+-2512,-2476,-2429,-2393,-2362,-2318,-2268,-2214,-2172,-2132,-2093,-2032,-1964,-1891,-1812,-1735,-1669,-1585,-1487,-1402,
+-1294,-1198,-1062,-946,-872,-817,-739,-663,-594,-516,-432,-370,-304,-222,-135,-44,33,122,183,246,
+296,329,355,399,436,465,530,588,614,635,641,693,753,813,892,988,1118,1182,1193,1241,
+1260,1221,1258,1220,1252,1293,1309,1253,1212,1154,1068,954,716,554,486,493,527,553,587,628,
+663,700,740,770,803,838,870,899,928,969,995,1017,1018,1053,1094,1101,1084,1072,1071,1085,
+1105,1122,1124,1120,1121,1121,1134,1157,1178,1200,1218,1239,1261,1285,1318,1349,1394,1453,1498,1515,
+1554,1595,1640,1690,1762,1846,1905,1936,1973,2019,2054,2068,2080,2104,2137,2181,2213,2273,2351,2409,
+2444,2453,2469,2492,2510,2541,2563,2574,2567,2556,2572,2607,2646,2680,2700,2703,2700,2696,2707,2724,
+2758,2794,2831,2868,2915,2973,3073,3155,3190,3230,3288,3319,3295,3314,3238,3181,3101,3041,2920,2769,
+2557,2357,2171,2025,1942,1997,2048,2055,2047,2014,1938,1926,2005,2114,2245,2275,2305,2328,2338,2358,
+2331,2318,2303,2293,2278,2251,2206,2151,2089,2034,1979,1923,1870,1846,1844,1769,1708,1671,1639,1609,
+1578,1544,1506,1480,1462,1456,1422,1383,1345,1332,1354,1414,1418,1383,1307,1219,1156,1124,1106,1093,
+1073,1077,1106,1133,1022,984,978,943,889,856,815,776,740,737,729,700,659,624,601,585,
+577,566,542,515,496,491,490,487,476,446,407,391,366,342,310,282,266,243,212,171,
+132,106,88,63,34,11,-7,-31,-64,-101,-126,-140,-156,-182,-207,-229,-250,-282,-303,-317,
+-326,-345,-370,-399,-431,-455,-480,-505,-529,-551,-569,-581,-595,-612,-627,-634,-633,-644,-654,-663,
+-672,-690,-709,-734,-768,-773,-791,-813,-816,-838,-866,-886,-892,-909,-925,-925,-938,-968,-968,-975,
+-986,-997,-1003,-1018,-1016,-1018,-1018,-1024,-1029,-1029,-1039,-1037,-1051,-1065,-1071,-1074,-1079,-1085,-1096,-1099,
+-1097,-1095,-1096,-1099,-1109,-1117,-1124,-1136,-1150,-1158,-1167,-1177,-1182,-1187,-1183,-1191,-1196,-1203,-1212,-1204,
+-1179,-1167,-1177,-1173,-1175,-1176,-1177,-1178,-1187,-1197,-1205,-1200,-1210,-1210,-1207,-1212,-1204,-1189,-1185,-1177,
+-1171,-1166,-1162,-1156,-1160,-1168,-1177,-1182,-1183,-1178,-1163,-1150,-1148,-1148,-1159,-1186,-1241,-1302,-1306,-1219,
+-1238,-1322,-1286,-1242,-1221,-1206,-1202,-1201,-1211,-1243,-1253,-1255,-1258,-1255,-1243,-1227,-1219,-1224,-1239,-1239,
+-1237,-1228,-1222,-1216,-1213,-1203,-1187,-1171,-1161,-1167,-1147,-1104,-1118,-1121,-1114,-1111,-1103,-1087,-1083,-1077,
+-1067,-1045,-1021,-1011,-1003,-991,-989,-971,-977,-977,-973,-968,-965,-965,-968,-970,-972,-968,-973,-971,
+-966,-959,-948,-940,-927,-918,-910,-899,-884,-879,-872,-858,-853,-842,-834,-827,-820,-809,-786,-767,
+-753,-747,-741,-735,-719,-707,-700,-681,-667,-659,-649,-624,-600,-563,-546,-525,-506,-494,-480,-446,
+-414,-415,-406,-410,-398,-401,-386,-380,-377,-387,-355,-328,-310,-292,-277,-278,-278,-283,-269,-256,
+-248,-250,-243,-237,-233,-219,-214,-209,-204,-197,-197,-190,-189,-199,-186,-176,-158,-147,-151,-136,
+-114,-92,-70,-55,-33,-11,11,32,58,75,103,134,165,190,215,245,275,309,338,373,
+405,419,453,480,513,544,576,606,630,651,674,704,738,764,790,812,846,873,903,943,
+981,1018,1053,1074,1097,1114,1109,1094,1062,1018,950,888,897,1074,1341,1630,1873,2021,2129,2082,
+2040,2004,2047,2214,2387,2510,2559,2521,2559,2530,2582,2422,2334,2309,2239,2174,2109,2045,1994,1948,
+1901,1860,1825,1807,1811,1799,1757,1715,1738,1753,1748,1743,1725,1730,1747,1734,1720,1718,1691,1674,
+1647,1631,1627,1632,1635,1640,1639,1645,1657,1666,1673,1663,1659,1647,1635,1612,1583,1555,1528,1499,
+1465,1423,1384,1334,1294,1254,1215,1164,1111,1052,996,948,886,802,731,662,572,440,337,284,
+251,225,183,123,59,7,-54,-104,-147,-190,-222,-253,-276,-300,-319,-336,-354,-373,-390,-408,
+-422,-442,-459,-474,-489,-499,-513,-527,-537,-552,-569,-580,-593,-601,-614,-628,-641,-651,-662,-671,
+-680,-688,-694,-697,-696,-693,-686,-679,-669,-670,-667,-658,-654,-649,-640,-626,-609,-595,-585,-572,
+-554,-531,-506,-479,-453,-430,-407,-379,-340,-292,-244,-201,-156,-112,-70,-34,-9,29,62,97,
+159,207,259,304,345,402,446,486,554,607,627,642,670,714,765,811,856,896,938,976,
+1023,1068,1109,1151,1186,1210,1248,1278,1315,1339,1367,1397,1434,1469,1509,1535,1560,1587,1610,1637,
+1660,1674,1692,1725,1770,1800,1848,1861,1884,1912,1935,1953,1972,1983,2008,2038,2062,2094,2132,2153,
+2164,2101,2123,2128,2140,2117,2106,2096,2100,2106,2117,2116,2116,2115,2102,2083,2061,2075,2114,2234,
+2235,2191,2076,2025,2007,2007,2004,2008,2008,2012,2010,1993,1995,1994,1983,1980,1976,1974,2042,2062,
+1981,1933,1923,1930,1934,1934,1919,1895,1865,1837,1827,1841,1818,1825,1858,1900,1717,1686,1745,1871,
+1937,1763,1652,1611,1612,1648,1627,1619,1638,1655,1668,1665,1682,1699,1709,1718,1727,1744,1755,1760,
+1778,1799,1812,1831,1851,1879,1912,1950,1981,2006,2031,2057,2078,2099,2124,2148,2161,2179,2198,2217,
+2235,2252,2276,2294,2312,2319,2314,2317,2321,2327,2343,2358,2371,2393,2418,2437,2455,2471,2492,2513,
+2520,2531,2555,2578,2611,2630,2643,2652,2664,2667,2656,2649,2645,2649,2647,2659,2673,2692,2720,2744,
+2750,2750,2765,2837,2823,2779,2754,2738,2746,2770,2778,2760,2733,2712,2749,2817,2908,2918,2924,2945,
+3007,2917,2818,2782,2771,2774,2801,2837,2874,2921,2987,3019,3035,3057,3061,3076,3077,3085,3084,3078,
+3067,3073,3082,3048,3049,3040,3030,3028,3017,3010,3003,2979,2974,2977,2990,3027,3056,3064,3064,3073,
+3078,3079,3087,3107,3129,3137,3146,3145,3148,3121,3070,3026,3011,2991,2937,2911,2906,2890,2905,2919,
+2942,2954,2986,3015,3025,3045,3074,3111,3149,3169,3196,3239,3265,3264,3278,3294,3319,3339,3349,3391,
+3426,3461,3492,3545,3609,3655,3679,3713,3755,3755,3757,3771,3798,3767,3781,3824,3811,3781,3823,3890,
+3914,3890,3903,3967,3979,3986,4000,4016,4019,4010,3969,3966,3973,3965,3882,3840,3842,3842,3805,3709,
+3566,3619,3601,3514,3475,3479,3376,3363,3294,3291,3248,3165,3156,3098,3072,3050,2967,2923,2864,2810,
+2749,2711,2664,2641,2625,2608,2590,2572,2557,2541,2526,2507,2502,2490,2480,2476,2469,2468,2465,2462,
+2455,2453,2451,2449,2447,2444,2447,2446,2436,2407,2408,2397,2388,2372,2359,2318,2298,2290,2276,2258,
+2225,2207,2183,2165,2135,2107,2078,2049,2012,1976,1945,1916,1882,1855,1816,1781,1751,1725,1697,1671,
+1646,1613,1572,1566,1538,1498,1477,1449,1430,1410,1398,1376,1353,1351,1330,1325,1314,1301,1291,1261,
+1250,1257,1300,1302,1276,1247,1207,1165,1108,1045,964,856,778,725,679,640,599,567,526,480,
+435,396,361,332,300,263,224,182,128,75,41,-7,-44,-76,-107,-146,-188,-231,-275,-320,
+-371,-427,-478,-527,-569,-610,-668,-697,-750,-799,-844,-881,-926,-976,-1025,-1071,-1117,-1149,-1180,-1238,
+-1284,-1333,-1385,-1431,-1474,-1513,-1558,-1599,-1645,-1706,-1753,-1807,-1845,-1898,-1952,-1996,-2041,-2080,-2132,-2181,
+-2221,-2260,-2307,-2352,-2395,-2434,-2469,-2506,-2545,-2584,-2624,-2653,-2693,-2737,-2776,-2816,-2849,-2879,-2911,-2943,
+-2991,-3022,-3054,-3091,-3127,-3155,-3183,-3210,-3238,-3264,-3279,-3305,-3339,-3365,-3385,-3397,-3408,-3425,-3440,-3446,
+-3466,-3461,-3484,-3493,-3510,-3527,-3546,-3562,-3568,-3601,-3644,-3644,-3656,-3655,-3663,-3667,-3686,-3716,-3733,-3701,
+-3705,-3706,-3732,-3727,-3730,-3744,-3731,-3724,-3722,-3742,-3752,-3753,-3767,-3750,-3686,-3684,-3739,-3758,-3759,-3754,
+-3775,-3771,-3745,-3733,-3731,-3719,-3713,-3702,-3681,-3658,-3598,-3549,-3565,-3594,-3600,-3610,-3577,-3565,-3552,-3521,
+-3508,-3490,-3505,-3480,-3432,-3432,-3424,-3403,-3390,-3383,-3352,-3316,-3292,-3279,-3237,-3218,-3208,-3182,-3148,-3122,
+-3095,-3072,-3034,-3003,-2973,-2957,-2934,-2913,-2891,-2857,-2809,-2791,-2776,-2743,-2714,-2683,-2655,-2631,-2604,-2576,
+-2544,-2512,-2475,-2431,-2396,-2359,-2314,-2257,-2203,-2141,-2106,-2078,-2042,-1983,-1920,-1845,-1771,-1716,-1649,-1576,
+-1502,-1421,-1361,-1297,-1197,-1073,-978,-868,-757,-674,-580,-483,-423,-361,-297,-219,-110,-9,75,140,
+200,255,299,336,356,372,439,509,564,572,567,587,648,726,811,901,975,1027,1080,1080,
+1029,1058,1061,1042,1025,1067,1107,1092,1066,1039,1011,955,844,606,460,403,421,461,490,526,
+560,601,640,672,707,736,765,796,836,868,894,911,941,946,963,1003,1039,1018,1007,1010,
+1027,1039,1044,1056,1056,1050,1057,1064,1094,1118,1150,1174,1185,1193,1211,1238,1279,1321,1370,1417,
+1443,1459,1476,1520,1584,1681,1798,1865,1899,1933,1970,2003,2008,1994,2010,2047,2092,2135,2218,2285,
+2330,2386,2426,2461,2491,2521,2532,2546,2558,2547,2529,2523,2526,2547,2582,2608,2626,2642,2655,2681,
+2687,2692,2726,2757,2792,2833,2892,2971,3059,3105,3165,3195,3225,3217,3212,3147,3096,3035,2936,2848,
+2710,2543,2388,2256,2104,1962,1973,2036,2039,2025,1979,1939,1998,2089,2173,2284,2306,2323,2344,2352,
+2330,2317,2289,2255,2246,2232,2210,2167,2111,2047,1985,1924,1865,1808,1767,1748,1697,1646,1608,1575,
+1545,1521,1490,1451,1433,1411,1391,1360,1337,1287,1262,1259,1294,1428,1542,1428,1254,1140,1090,1063,
+1038,1028,1048,1066,1006,971,943,923,894,847,819,787,755,728,707,707,687,644,604,581,
+560,550,542,521,494,479,476,482,480,467,445,417,395,378,356,316,284,251,234,210,
+176,132,104,90,56,33,9,-13,-36,-63,-97,-126,-140,-160,-187,-224,-242,-260,-282,-305,
+-321,-338,-354,-369,-392,-422,-461,-486,-511,-539,-564,-591,-609,-618,-633,-646,-657,-658,-669,-669,
+-681,-693,-700,-714,-737,-767,-785,-801,-844,-855,-871,-879,-897,-922,-923,-933,-940,-957,-980,-989,
+-992,-995,-1012,-1025,-1039,-1047,-1046,-1037,-1040,-1046,-1050,-1061,-1062,-1059,-1067,-1078,-1084,-1089,-1096,-1096,
+-1097,-1102,-1103,-1106,-1113,-1123,-1133,-1142,-1152,-1161,-1161,-1170,-1172,-1175,-1173,-1177,-1181,-1187,-1195,-1198,
+-1202,-1205,-1195,-1182,-1179,-1185,-1178,-1179,-1180,-1191,-1197,-1199,-1199,-1193,-1197,-1199,-1197,-1198,-1194,-1187,
+-1186,-1187,-1186,-1183,-1180,-1188,-1196,-1204,-1207,-1202,-1193,-1179,-1171,-1171,-1166,-1161,-1163,-1168,-1173,-1193,
+-1224,-1244,-1235,-1225,-1241,-1268,-1287,-1270,-1208,-1194,-1240,-1258,-1263,-1269,-1269,-1259,-1242,-1231,-1226,-1230,
+-1226,-1226,-1224,-1221,-1214,-1208,-1190,-1188,-1181,-1173,-1165,-1109,-1088,-1118,-1126,-1108,-1090,-1090,-1083,-1075,
+-1067,-1054,-1042,-1038,-1015,-1004,-985,-977,-968,-977,-975,-972,-970,-966,-964,-969,-970,-971,-970,-970,
+-966,-961,-956,-951,-946,-935,-931,-923,-903,-900,-890,-878,-867,-860,-843,-839,-836,-827,-810,-780,
+-770,-761,-764,-758,-748,-734,-720,-713,-699,-682,-667,-646,-620,-601,-581,-549,-526,-511,-501,-489,
+-471,-455,-422,-400,-388,-370,-347,-334,-322,-308,-302,-307,-292,-275,-257,-249,-250,-254,-244,-245,
+-243,-230,-222,-229,-224,-217,-220,-217,-209,-203,-194,-185,-177,-167,-163,-156,-152,-155,-154,-130,
+-123,-112,-99,-79,-61,-30,-11,13,32,56,79,108,136,164,191,220,246,274,300,331,
+356,379,407,432,467,497,535,568,598,620,641,665,692,726,749,772,796,835,868,899,
+940,977,1009,1036,1055,1081,1095,1093,1082,1053,1008,932,873,911,1110,1358,1647,1912,2072,2130,
+2035,1985,1986,2054,2224,2408,2495,2543,2522,2528,2449,2421,2405,2329,2293,2232,2145,2051,1985,1942,
+1911,1885,1858,1827,1802,1784,1753,1716,1693,1695,1703,1704,1697,1699,1687,1700,1692,1677,1693,1672,
+1665,1642,1616,1601,1601,1597,1591,1587,1590,1600,1626,1638,1642,1625,1616,1608,1589,1571,1548,1520,
+1487,1450,1403,1348,1299,1251,1206,1168,1137,1109,1055,983,889,774,687,626,575,476,344,269,
+231,209,184,146,90,28,-18,-73,-121,-161,-200,-229,-257,-281,-299,-319,-338,-353,-370,-383,
+-400,-412,-428,-446,-462,-478,-491,-503,-518,-535,-549,-565,-580,-594,-606,-618,-629,-642,-651,-662,
+-672,-679,-688,-693,-695,-692,-688,-681,-677,-671,-661,-661,-657,-651,-643,-632,-616,-598,-585,-569,
+-553,-537,-514,-492,-466,-445,-430,-408,-383,-350,-310,-263,-214,-170,-119,-80,-45,-2,30,65,
+99,143,198,246,292,329,382,432,475,566,610,643,681,711,735,769,817,869,905,955,
+986,1029,1073,1104,1148,1188,1214,1250,1280,1312,1338,1372,1409,1437,1483,1523,1549,1565,1593,1616,
+1633,1668,1706,1737,1770,1813,1845,1881,1901,1908,1929,1952,1974,1989,2003,2022,2039,2061,2090,2128,
+2123,2111,2191,2206,2164,2147,2149,2158,2152,2155,2160,2152,2163,2164,2156,2134,2124,2115,2109,2134,
+2211,2217,2137,2064,2035,2028,2035,2058,2065,2065,2069,2064,2061,2053,2064,2040,2010,2064,2047,2030,
+1998,1979,1967,1969,1964,1956,1945,1932,1917,1893,1866,1853,1850,1808,1792,1769,1767,1709,1717,1779,
+1801,1857,1744,1652,1611,1616,1622,1619,1628,1639,1652,1665,1671,1687,1690,1699,1712,1729,1731,1747,
+1761,1794,1797,1816,1846,1875,1901,1930,1955,1984,2011,2031,2053,2075,2097,2114,2134,2166,2169,2184,
+2198,2219,2234,2255,2277,2302,2302,2302,2310,2305,2314,2333,2349,2367,2390,2407,2424,2451,2466,2488,
+2509,2528,2547,2566,2576,2597,2625,2648,2661,2664,2664,2665,2671,2664,2678,2684,2686,2694,2706,2726,
+2745,2755,2757,2766,2779,2779,2746,2734,2728,2727,2731,2717,2722,2733,2769,2866,2916,2922,2887,2877,
+2876,2875,2849,2806,2785,2788,2799,2826,2860,2895,2940,3005,3044,3066,3084,3106,3119,3117,3115,3111,
+3109,3114,3095,3080,3084,3100,3096,3068,3059,3068,3078,3083,3077,3069,3067,3071,3077,3070,3079,3071,
+3095,3110,3113,3112,3118,3147,3169,3184,3207,3200,3143,3088,3056,3058,3020,2970,2968,2951,2933,2959,
+2972,2990,3007,3044,3077,3081,3114,3121,3169,3205,3244,3269,3313,3341,3353,3360,3383,3405,3424,3449,
+3485,3510,3537,3585,3627,3685,3717,3738,3796,3799,3796,3808,3829,3827,3802,3841,3872,3877,3833,3921,
+3977,4012,3999,4004,4033,4059,4060,4055,4047,4021,3984,3985,3980,3999,3990,3938,3933,3951,3898,3836,
+3715,3566,3581,3574,3579,3532,3484,3388,3353,3294,3308,3246,3180,3181,3123,3114,3060,2981,2934,2886,
+2860,2786,2736,2701,2677,2661,2645,2625,2603,2584,2564,2544,2529,2525,2513,2498,2492,2489,2482,2479,
+2474,2470,2466,2465,2460,2455,2453,2455,2457,2443,2420,2425,2417,2406,2395,2369,2353,2347,2330,2309,
+2285,2271,2243,2227,2204,2175,2150,2125,2089,2054,2028,1996,1960,1928,1893,1860,1827,1792,1764,1740,
+1705,1673,1638,1636,1605,1565,1536,1501,1485,1467,1443,1431,1421,1387,1393,1376,1370,1361,1353,1326,
+1299,1311,1387,1390,1359,1332,1297,1246,1211,1152,1092,979,883,823,777,738,698,656,614,570,
+526,483,450,422,395,362,323,278,234,172,142,97,56,22,-9,-45,-85,-129,-174,-220,
+-266,-317,-369,-417,-464,-500,-550,-593,-644,-699,-737,-776,-816,-862,-912,-961,-1008,-1051,-1090,-1127,
+-1174,-1203,-1258,-1319,-1382,-1419,-1457,-1496,-1541,-1585,-1646,-1690,-1745,-1791,-1836,-1889,-1935,-1981,-2024,-2070,
+-2117,-2160,-2194,-2245,-2292,-2336,-2374,-2414,-2456,-2494,-2527,-2565,-2597,-2639,-2681,-2718,-2757,-2794,-2826,-2858,
+-2888,-2937,-2971,-3001,-3037,-3073,-3099,-3129,-3161,-3192,-3215,-3238,-3263,-3300,-3325,-3344,-3357,-3364,-3383,-3398,
+-3419,-3438,-3419,-3425,-3429,-3443,-3449,-3461,-3471,-3483,-3516,-3525,-3529,-3540,-3549,-3553,-3568,-3602,-3624,-3634,
+-3632,-3645,-3635,-3638,-3654,-3674,-3673,-3678,-3677,-3674,-3690,-3702,-3696,-3693,-3681,-3683,-3679,-3649,-3659,-3662,
+-3684,-3693,-3681,-3672,-3642,-3618,-3621,-3650,-3654,-3627,-3608,-3599,-3573,-3561,-3561,-3559,-3552,-3528,-3506,-3487,
+-3486,-3477,-3459,-3456,-3436,-3411,-3401,-3387,-3365,-3362,-3358,-3326,-3285,-3249,-3234,-3222,-3200,-3174,-3143,-3124,
+-3097,-3082,-3058,-3014,-2979,-2960,-2935,-2918,-2886,-2876,-2847,-2808,-2762,-2749,-2728,-2694,-2665,-2641,-2623,-2583,
+-2553,-2523,-2497,-2458,-2411,-2375,-2329,-2284,-2238,-2193,-2135,-2095,-2060,-2020,-1974,-1932,-1865,-1805,-1761,-1712,
+-1651,-1577,-1505,-1479,-1440,-1367,-1220,-1109,-1016,-924,-831,-712,-614,-529,-444,-365,-287,-200,-99,-31,
+54,139,195,225,250,272,309,381,425,447,438,460,492,540,614,729,832,906,910,869,
+846,837,840,852,853,859,887,906,904,916,911,873,840,724,509,364,335,359,398,431,
+470,499,543,578,613,640,665,685,708,751,788,817,851,864,867,907,934,955,946,943,
+952,970,981,985,996,993,983,983,990,1007,1040,1073,1099,1110,1128,1144,1169,1202,1248,1293,
+1325,1340,1362,1390,1422,1468,1577,1713,1791,1834,1873,1910,1921,1922,1926,1929,1957,1977,2033,2126,
+2188,2261,2338,2396,2441,2485,2517,2537,2539,2544,2537,2523,2507,2489,2467,2467,2486,2516,2546,2568,
+2585,2593,2606,2636,2675,2711,2750,2803,2896,2970,3013,3065,3104,3105,3133,3096,3083,3032,2953,2866,
+2765,2651,2527,2427,2320,2195,2070,2024,2021,2047,2032,1999,2010,2076,2155,2214,2270,2299,2312,2326,
+2315,2317,2301,2267,2249,2212,2170,2156,2125,2071,2010,1941,1871,1809,1752,1703,1660,1623,1586,1547,
+1508,1482,1460,1426,1398,1381,1369,1346,1311,1275,1232,1201,1186,1197,1262,1368,1397,1233,1157,1140,
+1077,1019,1002,994,956,942,916,886,869,847,810,783,756,732,712,690,682,669,627,587,
+555,532,516,507,495,470,456,458,459,463,456,438,418,398,379,354,319,300,281,221,
+203,176,138,107,87,66,35,4,-18,-40,-65,-97,-125,-142,-163,-195,-236,-253,-267,-283,
+-299,-315,-342,-369,-384,-399,-426,-462,-502,-529,-547,-574,-606,-635,-644,-651,-666,-682,-695,-699,
+-695,-702,-718,-725,-731,-747,-773,-804,-821,-838,-870,-894,-912,-929,-941,-949,-953,-960,-970,-990,
+-999,-1017,-1029,-1040,-1045,-1046,-1048,-1048,-1060,-1061,-1063,-1065,-1053,-1063,-1078,-1078,-1087,-1096,-1098,-1102,
+-1102,-1103,-1107,-1116,-1120,-1125,-1140,-1151,-1157,-1164,-1166,-1167,-1172,-1174,-1175,-1175,-1181,-1187,-1194,-1194,
+-1191,-1187,-1187,-1192,-1192,-1197,-1188,-1180,-1173,-1181,-1184,-1188,-1190,-1188,-1186,-1193,-1199,-1209,-1213,-1213,
+-1213,-1213,-1211,-1209,-1206,-1208,-1216,-1220,-1221,-1212,-1205,-1193,-1182,-1183,-1180,-1175,-1172,-1169,-1181,-1185,
+-1186,-1195,-1202,-1208,-1217,-1228,-1235,-1240,-1240,-1237,-1238,-1252,-1262,-1270,-1275,-1270,-1263,-1253,-1245,-1241,
+-1232,-1223,-1217,-1215,-1214,-1199,-1196,-1188,-1187,-1187,-1177,-1169,-1166,-1162,-1148,-1137,-1114,-1067,-1090,-1094,
+-1049,-1070,-1044,-1032,-1030,-1021,-1012,-988,-978,-979,-980,-978,-976,-974,-970,-968,-965,-968,-969,-972,
+-972,-963,-963,-957,-950,-946,-938,-931,-928,-918,-907,-897,-886,-879,-864,-851,-848,-842,-833,-811,
+-802,-797,-783,-770,-762,-748,-739,-727,-717,-708,-693,-681,-678,-663,-628,-597,-574,-556,-539,-521,
+-511,-486,-461,-447,-430,-406,-390,-376,-357,-344,-330,-316,-303,-281,-269,-258,-254,-241,-242,-242,
+-232,-216,-225,-227,-225,-220,-214,-210,-206,-201,-194,-181,-172,-161,-150,-143,-134,-132,-123,-123,
+-125,-113,-101,-77,-55,-36,-19,-7,5,29,57,79,108,136,166,201,228,249,270,289,
+316,347,368,402,441,466,490,522,557,587,608,632,660,690,717,739,762,790,831,865,
+900,939,969,997,1023,1052,1074,1096,1098,1085,1057,996,923,865,930,1160,1385,1651,1887,2038,
+2098,2005,1936,1957,2043,2189,2355,2455,2517,2484,2503,2436,2352,2347,2285,2243,2235,2153,2021,1938,
+1895,1870,1864,1853,1832,1795,1760,1730,1690,1667,1660,1659,1667,1659,1656,1641,1637,1656,1652,1668,
+1672,1645,1622,1618,1590,1573,1557,1541,1526,1517,1523,1540,1544,1552,1547,1547,1548,1547,1549,1536,
+1498,1451,1423,1369,1308,1256,1203,1174,1130,1108,1085,1031,938,806,688,596,536,472,368,286,
+241,210,190,157,112,55,5,-43,-92,-134,-174,-210,-235,-259,-286,-307,-325,-335,-350,-367,
+-378,-393,-406,-423,-441,-457,-473,-488,-503,-515,-528,-542,-559,-578,-598,-611,-624,-634,-644,-656,
+-665,-673,-677,-684,-689,-693,-687,-682,-678,-669,-661,-656,-657,-653,-649,-643,-631,-615,-603,-589,
+-574,-555,-534,-507,-481,-457,-434,-419,-402,-379,-354,-317,-274,-226,-183,-132,-86,-48,-9,29,
+70,101,147,193,236,289,329,380,424,472,559,609,648,679,713,751,791,834,867,920,
+972,991,1043,1074,1119,1155,1193,1228,1262,1292,1325,1355,1392,1429,1457,1491,1516,1552,1580,1599,
+1632,1681,1717,1751,1788,1822,1846,1859,1887,1906,1924,1950,1965,1980,1994,2027,2054,2077,2105,2123,
+2150,2186,2165,2190,2205,2205,2193,2179,2178,2189,2185,2181,2181,2186,2189,2185,2175,2153,2139,2127,
+2129,2143,2144,2132,2131,2115,2107,2105,2119,2104,2108,2107,2099,2094,2089,2084,2097,2046,2031,2037,
+2029,2015,2005,1995,2010,2023,2034,2009,1997,1936,1916,1899,1869,1824,1794,1769,1742,1716,1687,1677,
+1677,1688,1694,1653,1630,1621,1620,1627,1625,1631,1644,1651,1671,1663,1678,1695,1710,1733,1729,1738,
+1759,1774,1795,1818,1845,1874,1894,1917,1938,1959,1981,2006,2024,2044,2064,2086,2096,2118,2131,2152,
+2167,2186,2206,2217,2245,2262,2278,2284,2289,2292,2305,2315,2332,2352,2362,2384,2408,2429,2455,2476,
+2508,2533,2546,2549,2563,2579,2593,2611,2621,2640,2667,2698,2734,2788,2716,2678,2678,2688,2706,2726,
+2736,2746,2747,2752,2751,2737,2722,2716,2712,2713,2716,2720,2721,2766,2846,2900,2920,2911,2879,2862,
+2854,2850,2839,2826,2811,2804,2810,2826,2853,2885,2923,2964,3018,3063,3097,3130,3155,3164,3171,3183,
+3171,3165,3148,3144,3134,3123,3130,3118,3095,3094,3119,3138,3140,3133,3123,3109,3104,3102,3108,3117,
+3121,3129,3148,3147,3143,3150,3174,3195,3222,3236,3205,3159,3123,3101,3095,3045,3007,3012,3002,2989,
+3006,3024,3027,3063,3089,3118,3127,3161,3180,3225,3264,3304,3331,3365,3400,3422,3448,3474,3488,3509,
+3532,3559,3591,3635,3670,3707,3741,3768,3802,3837,3833,3845,3865,3899,3872,3850,3896,3907,3904,3926,
+4041,4088,4078,4061,4084,4091,4063,4065,4043,4028,4085,4098,4110,4083,4054,4026,3958,3929,3918,3916,
+3850,3721,3622,3585,3594,3578,3551,3474,3428,3374,3326,3339,3276,3241,3226,3156,3115,3066,3025,2961,
+2906,2874,2825,2773,2739,2717,2699,2679,2659,2637,2616,2592,2568,2562,2549,2538,2522,2508,2503,2499,
+2495,2490,2483,2479,2476,2470,2467,2463,2464,2466,2446,2448,2448,2434,2430,2403,2394,2391,2378,2364,
+2346,2315,2302,2278,2251,2232,2206,2183,2153,2129,2102,2072,2037,2007,1979,1939,1909,1876,1836,1802,
+1768,1736,1712,1700,1665,1630,1592,1566,1547,1532,1502,1482,1475,1449,1436,1432,1418,1412,1410,1390,
+1365,1348,1358,1413,1436,1399,1365,1323,1292,1242,1187,1099,974,905,873,836,796,751,708,665,
+622,577,541,504,476,450,415,378,329,270,236,193,154,118,85,50,15,-24,-67,-120,
+-163,-211,-262,-313,-360,-395,-450,-491,-534,-595,-638,-666,-704,-749,-802,-851,-898,-942,-986,-1027,
+-1063,-1104,-1155,-1208,-1261,-1308,-1359,-1393,-1434,-1480,-1527,-1579,-1632,-1684,-1732,-1778,-1826,-1872,-1912,-1965,
+-2008,-2053,-2097,-2135,-2179,-2224,-2271,-2313,-2354,-2398,-2434,-2472,-2511,-2545,-2587,-2626,-2665,-2701,-2735,-2770,
+-2803,-2844,-2885,-2917,-2952,-2984,-3015,-3045,-3071,-3102,-3136,-3159,-3187,-3219,-3254,-3283,-3293,-3304,-3320,-3345,
+-3359,-3378,-3387,-3390,-3395,-3395,-3407,-3404,-3401,-3419,-3422,-3424,-3460,-3473,-3483,-3488,-3508,-3531,-3547,-3570,
+-3579,-3595,-3596,-3596,-3602,-3622,-3619,-3640,-3642,-3647,-3655,-3660,-3665,-3655,-3649,-3624,-3630,-3614,-3664,-3664,
+-3683,-3688,-3686,-3685,-3652,-3591,-3575,-3610,-3642,-3637,-3621,-3609,-3575,-3556,-3544,-3533,-3533,-3521,-3496,-3489,
+-3468,-3442,-3430,-3432,-3420,-3401,-3377,-3360,-3342,-3329,-3325,-3313,-3304,-3261,-3213,-3191,-3197,-3176,-3146,-3130,
+-3110,-3097,-3069,-3035,-3001,-2977,-2942,-2926,-2896,-2873,-2858,-2820,-2805,-2767,-2746,-2723,-2686,-2661,-2640,-2617,
+-2577,-2542,-2509,-2486,-2449,-2411,-2365,-2317,-2269,-2231,-2183,-2139,-2094,-2059,-2032,-1994,-1958,-1911,-1856,-1814,
+-1768,-1717,-1658,-1602,-1570,-1532,-1473,-1355,-1225,-1156,-1094,-1006,-908,-777,-656,-557,-470,-387,-302,-217,
+-156,-83,18,82,119,139,185,230,265,304,308,318,348,395,454,519,577,660,708,719,
+671,642,634,638,651,665,683,715,746,754,759,748,733,693,544,360,271,266,290,337,
+375,412,447,485,526,561,579,601,633,651,691,735,767,773,763,791,820,842,854,868,
+871,878,893,910,927,936,937,929,922,920,934,962,992,1024,1050,1062,1084,1116,1147,1172,
+1213,1240,1262,1277,1306,1347,1401,1482,1592,1678,1725,1777,1823,1840,1845,1842,1858,1892,1907,1937,
+2033,2105,2172,2273,2336,2392,2426,2469,2498,2515,2523,2524,2504,2491,2458,2428,2414,2403,2404,2430,
+2461,2488,2505,2523,2549,2590,2628,2670,2728,2805,2870,2913,2971,3032,3033,3050,3019,3001,2945,2880,
+2777,2695,2578,2501,2432,2361,2229,2139,2098,2083,2052,2034,2041,2081,2137,2196,2241,2289,2286,2291,
+2303,2305,2306,2298,2256,2212,2156,2102,2094,2071,2026,1966,1895,1822,1753,1697,1640,1590,1556,1522,
+1477,1434,1413,1387,1352,1341,1341,1333,1318,1277,1231,1185,1154,1132,1118,1123,1143,1153,1169,1220,
+1332,1181,1061,997,938,915,892,863,835,816,807,779,744,726,703,692,661,643,638,600,
+562,530,500,482,468,457,442,431,432,439,440,437,421,412,388,358,340,318,287,252,
+208,192,172,145,113,81,51,28,5,-11,-33,-57,-97,-130,-144,-161,-190,-225,-252,-271,
+-287,-301,-315,-342,-378,-407,-421,-437,-468,-506,-540,-559,-583,-611,-646,-669,-680,-690,-706,-719,
+-727,-736,-738,-742,-748,-758,-766,-784,-810,-833,-861,-892,-919,-925,-941,-944,-956,-971,-979,-983,
+-1004,-1014,-1031,-1047,-1066,-1056,-1067,-1062,-1066,-1061,-1077,-1080,-1090,-1088,-1082,-1090,-1094,-1105,-1116,-1121,
+-1124,-1125,-1125,-1123,-1129,-1132,-1139,-1146,-1158,-1169,-1177,-1180,-1184,-1187,-1189,-1197,-1201,-1203,-1200,-1202,
+-1197,-1192,-1185,-1185,-1190,-1195,-1195,-1182,-1172,-1177,-1172,-1179,-1187,-1191,-1194,-1200,-1208,-1219,-1230,-1236,
+-1236,-1235,-1237,-1232,-1227,-1219,-1218,-1219,-1214,-1212,-1202,-1192,-1186,-1192,-1196,-1206,-1210,-1209,-1213,-1221,
+-1231,-1238,-1240,-1243,-1254,-1262,-1270,-1268,-1252,-1248,-1249,-1245,-1250,-1257,-1265,-1268,-1266,-1263,-1259,-1255,
+-1246,-1247,-1245,-1238,-1232,-1223,-1213,-1197,-1190,-1187,-1180,-1169,-1159,-1161,-1147,-1121,-1127,-1124,-1109,-1089,
+-1076,-1055,-1068,-1056,-1042,-1028,-1021,-1010,-1001,-982,-986,-987,-986,-981,-978,-973,-975,-970,-972,-972,
+-976,-976,-967,-962,-957,-953,-946,-942,-936,-931,-922,-913,-901,-892,-880,-869,-861,-852,-843,-829,
+-818,-813,-805,-785,-770,-760,-747,-743,-733,-719,-707,-698,-691,-682,-660,-612,-617,-589,-565,-554,
+-542,-523,-494,-472,-454,-437,-421,-404,-389,-371,-358,-340,-313,-308,-299,-284,-269,-262,-239,-224,
+-241,-222,-217,-211,-201,-201,-197,-192,-190,-187,-188,-177,-171,-162,-155,-151,-146,-142,-132,-122,
+-106,-94,-82,-70,-59,-49,-31,-19,-1,15,38,61,94,119,142,171,201,230,255,277,
+299,324,347,376,404,435,474,496,520,546,573,600,628,655,686,712,731,756,793,834,
+872,906,937,961,994,1027,1056,1081,1098,1102,1089,1050,990,911,854,923,1190,1448,1644,1815,
+1935,1930,1909,1941,1985,2084,2247,2345,2427,2498,2439,2456,2410,2331,2296,2281,2168,2088,2039,1986,
+1921,1870,1841,1829,1830,1811,1782,1742,1708,1668,1640,1619,1611,1618,1617,1610,1596,1584,1604,1622,
+1645,1652,1627,1600,1580,1574,1549,1512,1475,1444,1430,1431,1439,1451,1451,1448,1455,1474,1499,1514,
+1508,1486,1453,1405,1354,1311,1265,1201,1144,1103,1085,1053,978,861,752,640,545,459,381,320,
+264,231,201,174,132,80,26,-23,-69,-111,-144,-181,-215,-243,-264,-288,-307,-325,-337,-348,
+-367,-380,-396,-410,-426,-441,-459,-476,-489,-507,-517,-530,-546,-565,-583,-602,-615,-628,-640,-650,
+-658,-667,-675,-678,-685,-690,-691,-689,-684,-675,-664,-656,-650,-646,-648,-646,-640,-635,-622,-613,
+-602,-586,-568,-545,-520,-492,-463,-431,-411,-390,-372,-348,-317,-277,-229,-186,-135,-91,-47,-1,
+39,82,107,150,202,234,288,336,388,425,469,543,598,640,673,709,770,805,859,908,
+916,951,997,1048,1077,1115,1150,1193,1230,1271,1310,1385,1392,1420,1451,1481,1510,1534,1574,1613,
+1636,1677,1713,1743,1776,1806,1828,1860,1866,1890,1914,1935,1963,1985,2005,2028,2045,2072,2081,2099,
+2125,2158,2184,2178,2200,2219,2212,2224,2221,2225,2209,2207,2205,2195,2190,2182,2180,2190,2192,2204,
+2211,2197,2197,2193,2191,2181,2162,2145,2135,2134,2138,2128,2130,2119,2118,2111,2108,2093,2069,2049,
+2050,2043,2042,2051,2041,2033,2020,1988,1961,1957,1989,1989,1978,1896,1846,1833,1803,1760,1749,1725,
+1697,1675,1664,1645,1650,1617,1618,1635,1644,1653,1647,1643,1646,1663,1692,1699,1700,1703,1705,1721,
+1748,1776,1799,1816,1839,1860,1879,1900,1925,1945,1958,1977,1993,2011,2030,2052,2068,2085,2099,2116,
+2135,2155,2169,2188,2208,2233,2248,2264,2273,2286,2293,2310,2321,2331,2351,2378,2402,2422,2446,2474,
+2497,2530,2568,2562,2569,2574,2581,2586,2595,2612,2640,2679,2751,2865,2800,2720,2681,2687,2707,2719,
+2736,2742,2745,2741,2739,2732,2714,2709,2709,2696,2691,2707,2743,2809,2878,2899,2900,2900,2886,2864,
+2856,2858,2863,2857,2847,2842,2836,2839,2856,2884,2911,2951,2998,3053,3096,3136,3178,3197,3211,3216,
+3202,3196,3197,3206,3203,3202,3197,3163,3125,3123,3137,3160,3173,3168,3167,3165,3157,3142,3128,3133,
+3154,3162,3176,3176,3174,3162,3166,3211,3220,3226,3212,3174,3139,3129,3150,3123,3069,3051,3075,3057,
+3055,3069,3082,3088,3111,3112,3141,3176,3192,3225,3282,3311,3338,3383,3440,3486,3510,3540,3562,3579,
+3595,3622,3653,3683,3722,3747,3780,3803,3817,3868,3874,3898,3902,3929,3939,3895,3934,3988,3967,3934,
+4018,4116,4140,4163,4186,4180,4117,4058,4127,4138,4152,4158,4127,4099,4054,4000,3970,3950,3948,3944,
+3916,3839,3713,3649,3618,3618,3577,3560,3466,3446,3386,3376,3351,3279,3255,3237,3179,3115,3088,3062,
+3025,2933,2873,2854,2812,2778,2759,2737,2715,2697,2675,2647,2620,2602,2597,2581,2565,2548,2533,2523,
+2517,2512,2505,2500,2499,2493,2486,2480,2479,2478,2473,2460,2475,2468,2459,2439,2438,2429,2416,2413,
+2392,2366,2355,2336,2317,2295,2267,2239,2219,2191,2166,2141,2114,2078,2052,2026,1983,1954,1910,1876,
+1839,1803,1781,1762,1731,1699,1663,1628,1604,1578,1566,1543,1523,1495,1488,1478,1471,1466,1462,1452,
+1430,1417,1393,1401,1443,1459,1423,1394,1354,1316,1262,1197,1097,1003,957,926,894,852,806,757,
+714,671,630,596,569,538,507,468,427,374,335,296,254,213,173,139,107,72,30,-16,
+-59,-105,-156,-202,-249,-289,-337,-384,-428,-478,-537,-574,-595,-636,-685,-733,-783,-831,-876,-919,
+-961,-1002,-1044,-1090,-1150,-1207,-1259,-1300,-1335,-1378,-1417,-1468,-1524,-1569,-1621,-1666,-1708,-1764,-1806,-1855,
+-1900,-1939,-1986,-2027,-2074,-2121,-2163,-2210,-2251,-2292,-2335,-2376,-2414,-2455,-2492,-2529,-2569,-2608,-2644,-2684,
+-2718,-2757,-2804,-2832,-2863,-2897,-2928,-2959,-2992,-3014,-3045,-3088,-3111,-3135,-3168,-3204,-3231,-3246,-3250,-3277,
+-3303,-3319,-3332,-3338,-3349,-3359,-3370,-3378,-3378,-3381,-3387,-3389,-3378,-3419,-3442,-3463,-3473,-3492,-3507,-3517,
+-3536,-3561,-3575,-3581,-3599,-3588,-3587,-3593,-3594,-3608,-3618,-3628,-3631,-3627,-3617,-3608,-3603,-3573,-3576,-3616,
+-3644,-3648,-3658,-3647,-3629,-3625,-3603,-3627,-3611,-3579,-3567,-3596,-3572,-3518,-3532,-3520,-3505,-3495,-3482,-3467,
+-3453,-3427,-3432,-3405,-3387,-3376,-3356,-3338,-3323,-3307,-3287,-3304,-3293,-3265,-3239,-3203,-3179,-3187,-3160,-3135,
+-3113,-3100,-3080,-3061,-3027,-2993,-2964,-2946,-2920,-2896,-2870,-2846,-2818,-2794,-2763,-2743,-2725,-2697,-2661,-2619,
+-2604,-2576,-2537,-2507,-2474,-2435,-2391,-2363,-2321,-2280,-2245,-2208,-2159,-2119,-2083,-2046,-2026,-1993,-1945,-1901,
+-1859,-1810,-1759,-1714,-1664,-1611,-1553,-1508,-1449,-1327,-1257,-1208,-1148,-1069,-973,-844,-706,-601,-505,-417,
+-341,-285,-217,-138,-66,-12,45,95,128,161,189,200,209,244,319,381,411,460,527,557,
+542,526,490,463,473,501,524,553,569,581,576,567,540,531,463,353,228,186,202,235,
+282,330,363,398,430,470,494,521,545,574,609,686,676,683,692,697,728,726,758,773,
+784,792,797,806,826,851,862,869,869,873,877,902,929,961,981,994,1007,1025,1052,1084,
+1118,1144,1166,1187,1202,1231,1293,1360,1425,1485,1548,1605,1665,1720,1751,1760,1759,1783,1823,1834,
+1876,1939,2026,2130,2202,2271,2317,2359,2400,2428,2458,2470,2488,2482,2463,2437,2410,2388,2366,2351,
+2337,2355,2386,2419,2447,2477,2512,2570,2632,2688,2718,2754,2813,2882,2943,2954,2977,2916,2895,2820,
+2772,2690,2609,2509,2424,2338,2268,2217,2175,2163,2129,2043,2059,2082,2122,2170,2219,2257,2278,2273,
+2277,2282,2279,2265,2229,2164,2119,2094,2035,2003,1990,1963,1909,1835,1758,1686,1621,1567,1521,1483,
+1443,1396,1366,1347,1307,1278,1282,1288,1284,1273,1251,1225,1144,1105,1077,1053,1030,1019,1037,1121,
+1187,1285,1386,1238,1043,928,869,835,805,785,770,766,743,722,709,678,663,637,614,601,
+567,530,501,473,451,434,423,414,407,404,411,411,406,394,372,367,375,328,311,285,
+242,203,183,166,145,120,81,45,17,2,-11,-23,-43,-79,-119,-141,-157,-179,-208,-238,
+-262,-287,-307,-324,-348,-384,-419,-445,-459,-482,-510,-543,-571,-592,-615,-646,-681,-708,-724,-732,
+-738,-750,-745,-765,-768,-774,-781,-788,-798,-814,-834,-861,-895,-922,-944,-955,-959,-966,-968,-979,
+-995,-1008,-1017,-1036,-1055,-1062,-1063,-1067,-1075,-1082,-1089,-1093,-1092,-1101,-1114,-1108,-1105,-1106,-1118,-1134,
+-1141,-1144,-1145,-1146,-1145,-1145,-1146,-1155,-1166,-1172,-1180,-1189,-1197,-1209,-1215,-1220,-1229,-1232,-1230,-1226,
+-1219,-1213,-1210,-1202,-1201,-1201,-1205,-1207,-1204,-1199,-1185,-1185,-1192,-1202,-1211,-1216,-1218,-1226,-1236,-1242,
+-1242,-1240,-1242,-1238,-1230,-1224,-1216,-1216,-1215,-1215,-1213,-1207,-1200,-1194,-1202,-1208,-1211,-1217,-1221,-1227,
+-1228,-1237,-1240,-1246,-1251,-1260,-1259,-1258,-1253,-1256,-1266,-1272,-1275,-1270,-1264,-1253,-1262,-1263,-1266,-1267,
+-1262,-1246,-1257,-1257,-1254,-1250,-1239,-1234,-1219,-1208,-1191,-1189,-1172,-1163,-1153,-1140,-1131,-1122,-1116,-1107,
+-1104,-1098,-1066,-1062,-1060,-1044,-1028,-1031,-1023,-1004,-987,-996,-994,-992,-990,-985,-981,-978,-972,-975,
+-977,-976,-976,-968,-964,-959,-953,-949,-939,-931,-927,-922,-914,-905,-893,-878,-871,-860,-848,-839,
+-830,-818,-809,-799,-787,-775,-761,-748,-737,-723,-715,-705,-695,-683,-681,-681,-651,-627,-577,-567,
+-550,-534,-511,-492,-473,-456,-442,-425,-413,-404,-387,-371,-354,-338,-326,-303,-284,-270,-274,-257,
+-230,-225,-203,-203,-209,-219,-214,-209,-203,-197,-183,-169,-168,-165,-160,-148,-138,-122,-112,-102,
+-90,-74,-64,-55,-46,-36,-28,-13,10,31,56,58,61,89,97,132,157,183,208,234,
+257,283,307,338,367,396,428,463,496,525,548,561,593,620,649,679,707,735,767,804,
+844,885,912,938,969,1002,1035,1061,1088,1102,1098,1076,1037,970,900,864,949,1221,1464,1612,
+1788,1903,1894,1864,1894,1959,2071,2248,2346,2401,2478,2449,2428,2395,2291,2235,2234,2124,2022,1986,
+1971,1930,1879,1837,1814,1794,1775,1757,1725,1693,1646,1612,1587,1582,1579,1579,1571,1554,1543,1539,
+1564,1596,1595,1574,1553,1535,1519,1481,1464,1424,1376,1355,1347,1351,1367,1372,1379,1391,1407,1424,
+1434,1433,1415,1397,1381,1348,1299,1241,1184,1129,1097,1086,1057,966,845,735,633,552,469,349,
+277,242,213,187,154,106,53,0,-48,-92,-125,-157,-192,-224,-250,-272,-291,-308,-323,-340,
+-357,-370,-387,-403,-417,-432,-447,-464,-479,-492,-508,-519,-536,-553,-572,-593,-610,-625,-638,-644,
+-654,-663,-672,-679,-682,-687,-691,-693,-691,-686,-675,-666,-656,-646,-638,-636,-637,-640,-636,-629,
+-621,-612,-598,-574,-549,-529,-504,-476,-431,-404,-379,-361,-338,-307,-270,-229,-191,-136,-86,-43,
+-4,34,76,107,158,206,246,280,315,375,430,471,527,588,633,679,718,753,818,865,
+877,920,950,990,1043,1060,1085,1136,1195,1247,1283,1311,1360,1395,1434,1466,1504,1534,1558,1590,
+1613,1632,1663,1698,1736,1772,1800,1828,1844,1869,1899,1927,1951,1976,2017,2031,2041,2051,2068,2086,
+2120,2163,2186,2217,2243,2224,2217,2267,2246,2211,2217,2221,2230,2236,2243,2244,2254,2238,2239,2238,
+2234,2232,2225,2224,2213,2212,2210,2199,2182,2163,2159,2151,2149,2153,2147,2136,2134,2133,2125,2110,
+2085,2100,2074,2088,2072,2063,2049,2028,2005,1972,1966,1968,1955,1936,1903,1868,1856,1830,1792,1773,
+1743,1737,1707,1687,1655,1638,1643,1660,1663,1668,1660,1664,1676,1682,1692,1675,1676,1689,1711,1728,
+1752,1770,1788,1809,1823,1844,1870,1895,1911,1929,1947,1957,1969,1980,2002,2021,2045,2060,2077,2087,
+2106,2127,2141,2155,2178,2194,2218,2239,2251,2263,2283,2290,2299,2319,2347,2375,2399,2420,2438,2456,
+2476,2508,2543,2574,2596,2587,2571,2614,2695,2666,2655,2672,2720,2723,2749,2715,2703,2700,2709,2728,
+2737,2744,2744,2745,2736,2730,2721,2707,2688,2684,2693,2725,2783,2844,2871,2883,2894,2891,2886,2882,
+2880,2883,2891,2892,2888,2882,2878,2871,2871,2884,2911,2946,2987,3038,3094,3144,3193,3231,3255,3259,
+3261,3251,3246,3247,3272,3267,3217,3186,3168,3176,3186,3196,3204,3194,3184,3181,3179,3178,3179,3164,
+3165,3178,3188,3197,3196,3193,3184,3193,3237,3221,3229,3190,3153,3138,3165,3185,3143,3106,3097,3133,
+3120,3120,3130,3143,3153,3168,3161,3175,3227,3253,3288,3318,3394,3415,3458,3510,3556,3590,3620,3652,
+3670,3690,3718,3735,3763,3781,3802,3835,3869,3904,3932,3921,3951,3951,3986,3990,3938,3993,4026,4024,
+3986,4090,4208,4210,4189,4215,4183,4089,4144,4196,4195,4159,4127,4069,4056,4016,3984,3957,3956,3975,
+3963,3892,3800,3695,3659,3633,3625,3573,3571,3479,3469,3416,3426,3374,3315,3256,3243,3182,3138,3113,
+3060,3036,2975,2938,2891,2847,2823,2800,2777,2752,2732,2707,2676,2649,2640,2626,2609,2590,2575,2561,
+2546,2541,2534,2527,2522,2520,2512,2506,2500,2498,2496,2487,2494,2497,2481,2471,2483,2476,2464,2445,
+2439,2413,2403,2390,2375,2357,2339,2311,2282,2258,2231,2204,2174,2153,2123,2093,2068,2031,1995,1951,
+1911,1866,1849,1834,1797,1765,1732,1701,1667,1644,1613,1604,1590,1552,1549,1537,1517,1513,1515,1506,
+1485,1483,1463,1440,1455,1506,1508,1476,1424,1371,1341,1288,1184,1095,1045,1015,989,952,909,861,
+814,768,728,690,657,630,599,561,522,470,420,396,353,313,272,231,196,165,133,90,
+47,-2,-49,-98,-144,-179,-227,-285,-326,-371,-419,-467,-499,-534,-576,-626,-670,-721,-777,-821,
+-861,-905,-948,-986,-1028,-1078,-1127,-1177,-1223,-1271,-1312,-1356,-1405,-1455,-1504,-1554,-1604,-1651,-1697,-1743,
+-1788,-1833,-1876,-1920,-1961,-2010,-2059,-2104,-2146,-2187,-2231,-2277,-2313,-2354,-2395,-2434,-2473,-2510,-2550,-2588,
+-2626,-2664,-2718,-2751,-2784,-2817,-2846,-2874,-2897,-2928,-2956,-2991,-3032,-3062,-3090,-3120,-3149,-3174,-3198,-3204,
+-3222,-3250,-3271,-3288,-3306,-3317,-3331,-3338,-3348,-3351,-3351,-3358,-3371,-3398,-3370,-3380,-3433,-3455,-3466,-3483,
+-3485,-3506,-3524,-3544,-3545,-3551,-3558,-3577,-3577,-3565,-3578,-3589,-3599,-3600,-3591,-3580,-3573,-3578,-3561,-3563,
+-3576,-3593,-3599,-3607,-3602,-3584,-3592,-3603,-3566,-3557,-3564,-3540,-3542,-3519,-3484,-3500,-3489,-3477,-3470,-3456,
+-3440,-3415,-3419,-3404,-3389,-3356,-3351,-3338,-3315,-3296,-3276,-3265,-3274,-3265,-3232,-3209,-3185,-3174,-3162,-3131,
+-3113,-3091,-3079,-3061,-3045,-3013,-2987,-2958,-2936,-2913,-2883,-2867,-2846,-2807,-2770,-2753,-2742,-2731,-2700,-2668,
+-2652,-2623,-2588,-2538,-2500,-2465,-2435,-2395,-2361,-2320,-2281,-2256,-2224,-2177,-2152,-2117,-2077,-2046,-2018,-1975,
+-1931,-1886,-1838,-1790,-1733,-1681,-1623,-1561,-1514,-1482,-1437,-1375,-1329,-1259,-1196,-1113,-1025,-916,-791,-653,
+-540,-457,-390,-323,-256,-200,-147,-80,-4,59,110,114,82,114,172,255,300,343,387,424,
+465,457,388,347,343,371,400,425,444,427,311,268,278,305,290,239,151,112,120,148,
+189,236,277,313,347,377,403,433,459,491,526,561,577,586,607,622,639,630,622,663,
+705,728,735,739,746,758,771,778,790,825,814,826,849,870,884,895,909,928,953,989,
+1019,1048,1070,1088,1108,1131,1174,1250,1297,1336,1387,1441,1513,1577,1635,1676,1694,1689,1708,1721,
+1790,1828,1909,1997,2084,2158,2206,2244,2280,2316,2353,2377,2389,2405,2415,2406,2384,2355,2335,2323,
+2309,2293,2281,2297,2338,2394,2452,2497,2540,2556,2568,2599,2611,2680,2786,2816,2865,2888,2822,2749,
+2692,2665,2567,2482,2399,2297,2197,2182,2196,2204,2182,2069,1999,2033,2086,2144,2202,2241,2264,2260,
+2244,2245,2244,2222,2186,2135,2086,2059,2055,1982,1914,1887,1867,1827,1764,1689,1618,1553,1501,1459,
+1408,1350,1306,1303,1279,1245,1227,1227,1229,1222,1200,1169,1128,1090,1056,1022,991,960,938,947,
+988,1063,1232,1420,1309,1064,898,811,764,740,729,719,718,702,696,680,652,631,612,592,
+571,533,502,478,453,428,410,398,388,380,376,387,380,372,359,347,376,381,307,295,
+275,243,206,171,156,138,117,87,55,26,10,1,-16,-36,-69,-99,-124,-150,-173,-199,
+-224,-251,-279,-309,-335,-359,-391,-425,-453,-476,-499,-527,-558,-585,-602,-624,-652,-683,-717,-744,
+-753,-755,-766,-778,-782,-788,-794,-801,-807,-816,-830,-844,-862,-886,-912,-941,-959,-963,-974,-982,
+-987,-1007,-1011,-1018,-1036,-1056,-1067,-1070,-1068,-1068,-1085,-1094,-1099,-1109,-1106,-1111,-1113,-1138,-1137,-1137,
+-1150,-1152,-1152,-1155,-1159,-1163,-1169,-1176,-1183,-1187,-1196,-1207,-1205,-1208,-1217,-1226,-1238,-1249,-1253,-1245,
+-1240,-1236,-1239,-1238,-1230,-1225,-1225,-1218,-1214,-1214,-1212,-1219,-1211,-1217,-1226,-1230,-1231,-1228,-1228,-1229,
+-1229,-1229,-1232,-1241,-1247,-1246,-1240,-1235,-1233,-1225,-1217,-1205,-1188,-1184,-1187,-1195,-1205,-1204,-1208,-1217,
+-1222,-1225,-1234,-1243,-1246,-1245,-1248,-1254,-1266,-1266,-1269,-1278,-1283,-1282,-1287,-1271,-1257,-1249,-1244,-1263,
+-1259,-1260,-1254,-1250,-1250,-1249,-1243,-1236,-1227,-1214,-1212,-1199,-1190,-1183,-1178,-1166,-1154,-1145,-1136,-1125,
+-1102,-1091,-1090,-1081,-1061,-1054,-1047,-1040,-1029,-1027,-1011,-1003,-1004,-1002,-995,-985,-993,-987,-983,-977,
+-978,-984,-982,-981,-973,-966,-957,-941,-945,-935,-929,-928,-923,-913,-904,-889,-875,-873,-854,-845,
+-830,-817,-809,-802,-796,-786,-775,-761,-745,-737,-727,-717,-708,-697,-688,-681,-679,-665,-634,-607,
+-591,-566,-542,-528,-513,-495,-483,-463,-443,-424,-414,-395,-377,-360,-347,-327,-303,-292,-283,-275,
+-262,-254,-241,-217,-214,-230,-195,-182,-171,-160,-153,-148,-151,-151,-154,-155,-144,-128,-119,-106,
+-94,-83,-74,-65,-55,-39,-26,-9,6,19,36,63,90,79,77,105,123,152,191,217,
+241,257,281,312,334,366,399,430,457,493,522,553,575,589,622,651,685,715,745,782,
+817,854,890,920,947,981,1010,1032,1061,1086,1089,1080,1057,1022,971,903,891,1005,1184,1446,
+1583,1738,1860,1833,1805,1837,1917,2052,2208,2333,2383,2475,2458,2374,2341,2278,2194,2145,2081,2006,
+1958,1929,1896,1856,1829,1807,1773,1739,1719,1688,1662,1618,1579,1553,1534,1522,1527,1527,1510,1494,
+1494,1497,1513,1518,1519,1523,1494,1467,1439,1410,1381,1340,1309,1289,1280,1284,1290,1290,1302,1329,
+1344,1349,1353,1345,1341,1340,1319,1265,1221,1174,1121,1114,1089,1032,941,834,733,638,558,452,
+333,266,220,185,151,116,68,20,-22,-68,-109,-143,-173,-203,-234,-259,-277,-298,-312,-326,
+-344,-364,-378,-395,-411,-425,-437,-450,-468,-479,-496,-511,-525,-543,-560,-573,-593,-613,-630,-642,
+-650,-660,-671,-678,-686,-692,-696,-699,-699,-697,-688,-680,-672,-659,-645,-636,-630,-629,-629,-631,
+-624,-619,-610,-598,-574,-544,-518,-501,-470,-430,-398,-377,-352,-327,-295,-262,-229,-196,-140,-90,
+-46,-4,41,75,113,157,207,252,291,325,375,409,463,529,587,631,675,720,755,811,
+877,913,925,939,988,1053,1081,1114,1145,1187,1223,1254,1299,1343,1386,1426,1464,1502,1525,1550,
+1582,1615,1639,1664,1703,1745,1776,1812,1837,1866,1902,1925,1949,1978,1998,2009,2031,2066,2072,2080,
+2122,2138,2141,2154,2175,2194,2205,2239,2283,2269,2259,2303,2312,2295,2290,2272,2272,2268,2259,2260,
+2264,2258,2259,2250,2241,2235,2227,2224,2214,2199,2185,2175,2164,2204,2194,2182,2159,2161,2160,2162,
+2156,2138,2129,2124,2125,2122,2088,2070,2033,2013,2000,1992,1972,1955,1933,1905,1898,1878,1855,1843,
+1825,1798,1764,1745,1715,1695,1698,1693,1684,1686,1675,1673,1679,1686,1677,1675,1692,1694,1702,1721,
+1743,1763,1779,1800,1819,1838,1863,1889,1913,1918,1932,1950,1961,1971,1992,2000,2018,2034,2044,2053,
+2066,2096,2109,2117,2148,2161,2179,2205,2234,2246,2254,2275,2283,2307,2344,2370,2393,2416,2438,2459,
+2489,2521,2535,2556,2588,2593,2584,2582,2618,2753,2920,2849,2780,2753,2688,2682,2698,2715,2725,2733,
+2741,2749,2750,2750,2740,2732,2720,2705,2698,2696,2715,2771,2836,2867,2876,2891,2902,2905,2892,2893,
+2900,2902,2908,2908,2912,2916,2910,2909,2906,2900,2912,2944,2986,3034,3081,3140,3206,3261,3286,3307,
+3317,3320,3303,3297,3291,3267,3245,3246,3225,3212,3226,3242,3245,3240,3225,3211,3197,3184,3173,3182,
+3187,3188,3189,3201,3212,3213,3202,3194,3206,3237,3233,3236,3190,3169,3174,3216,3214,3167,3141,3149,
+3186,3171,3172,3185,3195,3198,3199,3214,3224,3256,3285,3322,3363,3421,3489,3525,3561,3613,3659,3679,
+3704,3731,3744,3772,3804,3829,3843,3877,3906,3943,3982,3959,3965,4000,4017,4046,4015,4004,4059,4072,
+4089,4036,4105,4147,4158,4170,4173,4143,4170,4207,4213,4167,4129,4078,4070,4065,4053,4026,3965,3958,
+3998,3994,3919,3818,3685,3670,3661,3642,3603,3573,3515,3507,3444,3433,3402,3340,3284,3254,3213,3177,
+3137,3081,3036,2999,2959,2922,2898,2871,2843,2814,2788,2764,2735,2703,2686,2677,2655,2637,2619,2603,
+2588,2573,2568,2559,2552,2548,2541,2536,2529,2523,2521,2517,2524,2539,2523,2494,2521,2514,2491,2491,
+2468,2454,2445,2432,2421,2408,2392,2371,2348,2322,2293,2268,2239,2205,2176,2156,2134,2100,2063,2026,
+1989,1948,1929,1896,1863,1838,1805,1774,1740,1710,1678,1661,1641,1610,1606,1589,1577,1563,1558,1555,
+1541,1533,1516,1487,1467,1495,1584,1536,1494,1463,1431,1367,1286,1182,1137,1109,1079,1046,1004,962,
+913,870,824,783,749,717,689,652,610,561,516,484,448,416,375,338,300,262,227,190,
+152,104,55,6,-40,-79,-122,-185,-224,-260,-305,-360,-399,-426,-466,-520,-559,-607,-668,-701,
+-741,-782,-828,-861,-910,-960,-1013,-1067,-1114,-1158,-1202,-1248,-1294,-1345,-1397,-1444,-1487,-1535,-1589,-1630,
+-1677,-1724,-1768,-1813,-1856,-1894,-1944,-1995,-2042,-2081,-2128,-2173,-2218,-2258,-2299,-2339,-2377,-2417,-2456,-2494,
+-2533,-2571,-2613,-2657,-2693,-2735,-2767,-2795,-2821,-2846,-2873,-2906,-2940,-2983,-3008,-3034,-3063,-3095,-3119,-3148,
+-3172,-3170,-3196,-3226,-3258,-3275,-3286,-3295,-3306,-3315,-3319,-3322,-3339,-3355,-3369,-3372,-3380,-3392,-3425,-3445,
+-3460,-3469,-3477,-3488,-3503,-3520,-3534,-3544,-3547,-3547,-3542,-3550,-3560,-3568,-3569,-3559,-3545,-3541,-3543,-3548,
+-3532,-3532,-3537,-3553,-3561,-3554,-3557,-3566,-3554,-3532,-3538,-3534,-3511,-3494,-3495,-3473,-3471,-3468,-3461,-3446,
+-3448,-3413,-3397,-3400,-3384,-3365,-3336,-3329,-3322,-3301,-3277,-3249,-3254,-3247,-3231,-3207,-3194,-3168,-3146,-3141,
+-3119,-3094,-3077,-3059,-3036,-3022,-3001,-2977,-2945,-2919,-2901,-2879,-2856,-2829,-2809,-2768,-2761,-2758,-2735,-2708,
+-2673,-2655,-2628,-2591,-2544,-2500,-2460,-2428,-2388,-2357,-2329,-2310,-2295,-2256,-2205,-2171,-2146,-2106,-2060,-2023,
+-1978,-1936,-1892,-1844,-1792,-1735,-1691,-1632,-1566,-1522,-1481,-1469,-1413,-1360,-1319,-1290,-1227,-1154,-1067,-962,
+-858,-733,-599,-513,-437,-362,-295,-241,-177,-89,-7,-1,-20,5,55,116,167,222,266,292,
+331,337,303,273,272,290,312,342,362,361,295,176,113,88,90,74,37,23,28,55,
+86,132,179,227,259,285,314,342,367,393,428,472,509,524,537,547,577,570,579,595,
+594,636,675,678,687,698,709,719,738,736,737,742,766,785,793,798,806,829,863,882,
+904,937,967,997,1015,1040,1075,1114,1158,1214,1248,1306,1371,1444,1507,1562,1609,1633,1617,1595,
+1630,1685,1728,1825,1924,2001,2082,2141,2184,2229,2266,2294,2311,2324,2325,2313,2294,2285,2271,2259,
+2257,2250,2239,2232,2245,2279,2345,2407,2430,2441,2434,2431,2441,2458,2524,2607,2665,2707,2762,2674,
+2602,2606,2526,2419,2306,2201,2148,2187,2181,2197,2199,2163,2028,1997,2029,2086,2169,2221,2243,2250,
+2231,2212,2216,2179,2139,2103,2069,2034,2036,1948,1898,1841,1796,1773,1745,1694,1624,1552,1485,1435,
+1388,1328,1269,1250,1233,1209,1180,1172,1170,1169,1156,1133,1098,1056,1022,983,958,931,901,877,
+871,882,925,1036,1101,1057,992,885,775,709,690,684,670,657,653,655,641,618,592,574,
+568,535,500,471,449,430,408,391,377,364,352,342,343,343,334,323,304,290,283,276,
+251,242,227,195,158,140,125,110,89,65,42,61,53,-3,-31,-59,-92,-114,-142,-170,
+-193,-213,-235,-269,-305,-337,-366,-390,-419,-450,-483,-513,-545,-578,-604,-620,-639,-662,-690,-718,
+-740,-757,-766,-775,-790,-804,-796,-821,-827,-836,-844,-855,-865,-877,-892,-907,-933,-958,-973,-984,
+-995,-1005,-1012,-1025,-1028,-1041,-1057,-1070,-1074,-1075,-1075,-1083,-1094,-1106,-1113,-1128,-1140,-1143,-1143,-1147,
+-1156,-1164,-1165,-1171,-1173,-1178,-1186,-1191,-1199,-1197,-1205,-1213,-1223,-1221,-1217,-1217,-1221,-1237,-1245,-1244,
+-1246,-1241,-1250,-1259,-1262,-1255,-1252,-1245,-1242,-1234,-1228,-1227,-1225,-1235,-1233,-1234,-1225,-1219,-1225,-1227,
+-1235,-1242,-1253,-1252,-1254,-1247,-1238,-1227,-1218,-1216,-1214,-1210,-1200,-1191,-1191,-1200,-1209,-1209,-1210,-1210,
+-1210,-1220,-1226,-1233,-1239,-1243,-1243,-1245,-1252,-1263,-1266,-1276,-1286,-1291,-1277,-1283,-1263,-1267,-1263,-1266,
+-1257,-1262,-1265,-1260,-1255,-1252,-1245,-1241,-1235,-1221,-1214,-1205,-1200,-1191,-1185,-1179,-1174,-1162,-1156,-1142,
+-1132,-1115,-1099,-1090,-1095,-1072,-1058,-1050,-1044,-1037,-1030,-1016,-1012,-1011,-1005,-1002,-1002,-997,-994,-989,
+-982,-988,-986,-986,-984,-973,-966,-959,-950,-942,-943,-934,-924,-927,-918,-902,-890,-879,-867,-853,
+-833,-818,-805,-793,-785,-776,-773,-770,-767,-751,-741,-729,-716,-709,-699,-686,-674,-664,-644,-628,
+-626,-611,-587,-580,-536,-503,-483,-462,-444,-424,-407,-391,-382,-369,-353,-336,-321,-305,-286,-265,
+-250,-235,-228,-221,-205,-193,-201,-166,-167,-165,-155,-157,-159,-165,-156,-134,-120,-114,-117,-107,
+-91,-74,-63,-55,-45,-33,-24,-14,-1,12,32,44,66,76,72,90,103,121,149,187,
+223,249,271,295,324,356,388,419,448,474,502,532,561,592,620,642,665,694,724,757,
+794,833,864,902,928,961,992,1011,1032,1062,1078,1067,1060,1048,1007,954,903,926,1075,1213,
+1368,1485,1579,1672,1726,1768,1815,1881,2043,2241,2338,2390,2445,2492,2417,2338,2257,2187,2121,2060,
+2002,1962,1900,1855,1819,1800,1779,1760,1729,1700,1667,1632,1597,1566,1529,1507,1495,1497,1503,1490,
+1469,1460,1454,1464,1466,1461,1483,1487,1474,1441,1396,1359,1320,1281,1252,1233,1223,1225,1227,1241,
+1265,1285,1293,1307,1310,1310,1305,1278,1240,1199,1142,1101,1089,1053,992,909,818,729,641,550,
+429,311,248,203,169,130,85,40,-6,-50,-88,-126,-156,-184,-214,-243,-266,-285,-305,-324,
+-342,-359,-379,-395,-411,-430,-444,-454,-469,-486,-499,-512,-523,-539,-558,-571,-586,-604,-618,-635,
+-647,-658,-668,-678,-685,-692,-699,-702,-705,-705,-702,-697,-690,-680,-664,-652,-641,-633,-626,-624,
+-623,-616,-609,-599,-582,-561,-532,-508,-480,-454,-422,-394,-368,-345,-317,-283,-253,-227,-195,-150,
+-97,-54,-17,24,71,109,150,203,252,296,326,374,412,458,527,587,641,686,741,780,
+802,834,894,934,956,994,1049,1089,1124,1164,1194,1222,1262,1319,1365,1392,1410,1453,1490,1528,
+1560,1599,1640,1674,1711,1739,1764,1795,1824,1867,1885,1904,1933,1953,1976,1991,2016,2026,2040,2054,
+2067,2091,2133,2161,2181,2187,2204,2252,2269,2285,2298,2322,2294,2335,2320,2295,2292,2286,2290,2288,
+2294,2287,2274,2268,2264,2259,2264,2260,2253,2326,2277,2242,2210,2238,2311,2236,2204,2190,2188,2180,
+2174,2171,2164,2156,2150,2140,2119,2095,2054,2029,2011,2004,2007,2006,1940,1922,1925,1914,1890,1888,
+1882,1864,1826,1801,1786,1748,1737,1717,1711,1708,1698,1685,1668,1674,1683,1689,1692,1701,1707,1718,
+1739,1753,1769,1787,1803,1823,1847,1871,1895,1913,1927,1944,1960,1970,1982,1987,2000,2015,2017,2033,
+2048,2060,2078,2086,2103,2134,2149,2173,2196,2218,2242,2269,2283,2307,2340,2369,2383,2401,2435,2467,
+2496,2512,2549,2568,2579,2590,2595,2614,2603,2612,2691,2896,3004,2850,2720,2681,2688,2702,2724,2731,
+2737,2752,2756,2752,2740,2727,2719,2718,2718,2728,2758,2822,2869,2885,2890,2899,2917,2920,2910,2897,
+2897,2902,2904,2917,2925,2928,2928,2930,2932,2933,2940,2950,2974,3016,3072,3136,3204,3259,3304,3341,
+3367,3396,3398,3371,3369,3369,3327,3307,3303,3276,3254,3259,3272,3277,3263,3246,3234,3219,3190,3169,
+3178,3193,3201,3214,3226,3234,3236,3232,3228,3231,3234,3231,3242,3232,3200,3217,3244,3235,3191,3175,
+3189,3222,3223,3220,3228,3241,3264,3280,3296,3296,3297,3337,3397,3424,3457,3529,3574,3622,3675,3702,
+3713,3742,3779,3799,3826,3858,3915,3917,3941,3974,4007,4039,3989,4028,4039,4067,4095,4066,4091,4107,
+4126,4107,4064,4205,4254,4257,4289,4242,4225,4216,4195,4170,4164,4116,4094,4081,4084,4035,3987,3984,
+4001,3982,3952,3910,3837,3732,3705,3693,3639,3641,3613,3555,3538,3479,3428,3424,3351,3311,3265,3231,
+3196,3147,3109,3069,3031,2997,2970,2943,2912,2884,2857,2831,2798,2767,2742,2732,2714,2690,2670,2648,
+2630,2611,2602,2597,2588,2579,2572,2567,2561,2560,2556,2551,2544,2567,2572,2541,2535,2546,2525,2523,
+2510,2486,2478,2468,2460,2451,2442,2426,2397,2378,2357,2330,2308,2280,2245,2215,2189,2160,2128,2090,
+2051,2023,1994,1962,1933,1908,1872,1841,1814,1782,1751,1721,1695,1673,1664,1641,1628,1616,1610,1600,
+1584,1574,1572,1537,1501,1476,1496,1549,1589,1532,1504,1459,1377,1289,1233,1205,1175,1139,1100,1055,
+1007,965,926,881,842,806,776,737,701,655,613,587,546,513,474,433,400,366,332,292,
+252,211,165,114,65,25,-16,-78,-113,-153,-196,-246,-295,-339,-374,-402,-452,-491,-543,-592,
+-627,-671,-716,-764,-805,-849,-904,-950,-1000,-1048,-1097,-1138,-1184,-1236,-1286,-1337,-1379,-1426,-1472,-1525,
+-1571,-1614,-1658,-1704,-1744,-1789,-1834,-1883,-1933,-1980,-2027,-2073,-2117,-2158,-2195,-2238,-2279,-2326,-2361,-2399,
+-2437,-2473,-2511,-2558,-2599,-2636,-2678,-2714,-2740,-2766,-2791,-2816,-2847,-2884,-2922,-2957,-2981,-3007,-3036,-3067,
+-3092,-3114,-3136,-3143,-3182,-3222,-3240,-3243,-3263,-3275,-3277,-3292,-3303,-3314,-3327,-3337,-3346,-3357,-3373,-3390,
+-3410,-3418,-3432,-3444,-3465,-3477,-3486,-3499,-3515,-3515,-3511,-3513,-3517,-3531,-3540,-3539,-3524,-3514,-3511,-3517,
+-3522,-3526,-3519,-3518,-3525,-3529,-3529,-3526,-3528,-3519,-3499,-3514,-3507,-3476,-3472,-3455,-3441,-3440,-3432,-3426,
+-3421,-3401,-3395,-3394,-3375,-3366,-3345,-3318,-3296,-3296,-3281,-3260,-3258,-3238,-3221,-3195,-3191,-3178,-3153,-3132,
+-3120,-3100,-3077,-3060,-3038,-3018,-3009,-2983,-2961,-2933,-2906,-2888,-2867,-2854,-2829,-2803,-2747,-2761,-2755,-2734,
+-2701,-2678,-2652,-2621,-2581,-2534,-2494,-2457,-2422,-2394,-2352,-2319,-2322,-2307,-2264,-2226,-2187,-2149,-2106,-2061,
+-2017,-1967,-1923,-1881,-1836,-1789,-1741,-1692,-1648,-1590,-1550,-1508,-1488,-1455,-1416,-1362,-1330,-1299,-1231,-1173,
+-1097,-1014,-925,-834,-744,-641,-524,-404,-324,-263,-197,-135,-106,-65,-11,36,68,110,145,185,
+215,233,230,216,209,206,216,245,287,317,327,313,212,115,57,21,-47,-60,-54,-38,
+-11,26,67,114,154,194,223,250,273,315,325,368,413,439,460,466,476,485,491,520,
+538,537,547,592,607,620,644,656,663,669,668,674,680,694,711,723,733,745,765,788,
+813,836,865,897,922,947,971,1006,1047,1092,1155,1200,1224,1283,1358,1435,1493,1539,1572,1559,
+1527,1560,1586,1631,1714,1808,1900,1989,2064,2121,2165,2212,2229,2242,2247,2241,2211,2192,2180,2177,
+2164,2164,2167,2169,2176,2189,2223,2285,2316,2321,2309,2292,2278,2299,2319,2367,2422,2466,2528,2578,
+2533,2515,2453,2328,2169,2033,1992,2041,2162,2181,2165,2141,2104,2017,2029,2036,2085,2156,2203,2222,
+2218,2200,2184,2170,2120,2069,2047,2077,2024,1948,1878,1836,1786,1734,1687,1665,1630,1568,1493,1427,
+1370,1317,1262,1224,1199,1177,1146,1126,1120,1110,1100,1087,1058,1012,964,925,895,879,863,843,
+822,803,791,817,877,929,1010,1087,1012,867,763,734,676,637,609,617,592,581,564,544,
+524,522,501,476,447,427,409,388,371,355,340,327,309,296,303,292,284,272,272,275,
+294,270,207,198,178,143,115,103,93,82,64,48,55,38,-5,-34,-59,-87,-110,-135,
+-164,-189,-208,-231,-259,-295,-333,-364,-387,-415,-447,-481,-518,-556,-589,-617,-640,-657,-676,-698,
+-722,-742,-759,-774,-784,-800,-820,-826,-839,-840,-864,-869,-875,-889,-898,-908,-918,-933,-954,-976,
+-997,-1007,-1018,-1033,-1036,-1043,-1057,-1064,-1076,-1079,-1085,-1087,-1094,-1102,-1113,-1125,-1135,-1139,-1148,-1166,
+-1166,-1163,-1166,-1176,-1182,-1191,-1196,-1202,-1203,-1207,-1214,-1219,-1224,-1225,-1225,-1219,-1221,-1224,-1221,-1232,
+-1236,-1240,-1246,-1253,-1265,-1270,-1268,-1267,-1262,-1259,-1258,-1252,-1248,-1246,-1244,-1241,-1247,-1248,-1228,-1242,
+-1241,-1235,-1234,-1238,-1231,-1236,-1228,-1223,-1219,-1218,-1217,-1220,-1221,-1212,-1207,-1205,-1208,-1209,-1214,-1216,
+-1212,-1194,-1219,-1221,-1226,-1232,-1237,-1244,-1248,-1248,-1258,-1259,-1276,-1286,-1292,-1280,-1278,-1274,-1280,-1274,
+-1277,-1273,-1278,-1281,-1271,-1262,-1249,-1239,-1232,-1225,-1217,-1213,-1203,-1190,-1181,-1173,-1168,-1162,-1154,-1152,
+-1144,-1134,-1131,-1112,-1103,-1102,-1088,-1070,-1057,-1048,-1044,-1037,-1020,-1021,-1017,-1012,-1010,-1005,-1004,-999,
+-993,-991,-994,-988,-989,-989,-974,-968,-959,-952,-947,-943,-936,-930,-928,-912,-896,-886,-874,-868,
+-847,-839,-808,-794,-774,-761,-752,-748,-748,-745,-742,-740,-732,-722,-716,-705,-692,-677,-662,-647,
+-635,-630,-620,-602,-574,-544,-515,-491,-471,-454,-438,-418,-399,-387,-374,-358,-342,-330,-316,-301,
+-282,-275,-255,-245,-230,-219,-216,-217,-191,-182,-173,-182,-161,-150,-142,-133,-122,-113,-105,-97,
+-88,-76,-65,-49,-43,-31,-22,-14,-5,2,13,35,56,68,69,70,96,109,125,142,
+176,212,242,274,302,329,365,399,427,460,487,516,542,568,596,629,654,685,713,736,
+764,800,840,876,910,942,974,991,1007,1030,1051,1072,1074,1067,1037,1003,956,919,967,1062,
+1171,1294,1387,1460,1574,1682,1751,1817,1887,2019,2194,2326,2395,2401,2439,2400,2324,2256,2188,2129,
+2065,2002,1955,1905,1851,1804,1771,1751,1736,1723,1693,1655,1638,1614,1571,1530,1505,1501,1500,1489,
+1473,1452,1438,1433,1438,1441,1432,1439,1445,1449,1437,1402,1364,1330,1293,1258,1231,1209,1203,1206,
+1214,1235,1262,1284,1302,1303,1287,1265,1250,1234,1202,1148,1107,1082,1028,952,870,798,721,612,
+491,369,274,212,176,148,114,72,30,-11,-52,-91,-129,-159,-194,-222,-248,-269,-286,-305,
+-325,-346,-364,-384,-400,-419,-436,-449,-464,-477,-491,-505,-521,-534,-548,-565,-580,-594,-608,-622,
+-634,-648,-656,-670,-681,-692,-698,-703,-708,-710,-711,-707,-704,-698,-687,-673,-661,-649,-637,-628,
+-621,-616,-605,-597,-584,-568,-544,-516,-489,-461,-431,-405,-384,-361,-336,-310,-280,-253,-231,-199,
+-159,-114,-71,-33,16,72,115,150,196,251,299,338,385,423,457,526,592,651,690,738,
+778,816,856,895,931,971,1007,1057,1104,1146,1183,1219,1252,1286,1313,1355,1395,1433,1471,1509,
+1546,1581,1621,1652,1687,1723,1753,1776,1803,1827,1846,1868,1884,1906,1925,1945,1980,2016,2042,2062,
+2083,2103,2128,2142,2172,2201,2212,2228,2245,2266,2307,2335,2362,2333,2347,2363,2328,2319,2320,2306,
+2304,2300,2309,2305,2299,2301,2302,2298,2287,2281,2268,2243,2222,2221,2228,2235,2227,2230,2230,2229,
+2222,2206,2194,2188,2191,2172,2148,2115,2091,2067,2058,2045,2023,2025,2024,1955,1947,1944,1935,1912,
+1906,1896,1877,1833,1807,1772,1737,1721,1713,1718,1720,1710,1709,1711,1710,1696,1704,1701,1712,1724,
+1734,1746,1760,1782,1796,1814,1832,1858,1879,1905,1931,1940,1952,1960,1971,1979,1987,1999,2018,2027,
+2029,2030,2044,2051,2072,2105,2122,2145,2172,2193,2215,2244,2274,2296,2326,2350,2374,2416,2449,2474,
+2495,2515,2531,2551,2576,2597,2620,2629,2635,2627,2629,2672,2803,2918,2781,2660,2648,2670,2697,2718,
+2734,2745,2762,2767,2757,2736,2733,2736,2746,2777,2834,2860,2898,2904,2901,2894,2903,2918,2921,2915,
+2904,2901,2907,2918,2928,2934,2937,2941,2946,2952,2963,2975,2992,3017,3058,3124,3199,3270,3325,3361,
+3390,3433,3460,3448,3427,3414,3413,3386,3350,3335,3326,3307,3295,3296,3302,3289,3264,3247,3238,3209,
+3177,3176,3199,3224,3256,3278,3280,3273,3276,3277,3285,3277,3296,3293,3260,3235,3260,3271,3258,3226,
+3208,3219,3256,3288,3270,3281,3288,3313,3338,3349,3362,3364,3386,3444,3493,3557,3580,3620,3670,3726,
+3766,3780,3801,3863,3882,3892,3916,3946,3970,3993,4029,4056,4043,4035,4094,4119,4137,4161,4124,4124,
+4159,4183,4181,4168,4293,4287,4295,4291,4279,4253,4195,4178,4184,4151,4109,4098,4074,4054,4032,3981,
+3987,3975,3957,3938,3894,3830,3748,3742,3710,3680,3702,3648,3579,3571,3524,3459,3429,3379,3336,3285,
+3243,3214,3184,3151,3114,3078,3048,3019,2985,2955,2926,2897,2866,2835,2808,2794,2775,2757,2728,2702,
+2677,2652,2644,2637,2629,2619,2610,2602,2598,2595,2590,2588,2583,2586,2593,2604,2566,2579,2553,2560,
+2539,2518,2520,2501,2495,2489,2486,2475,2457,2432,2419,2400,2375,2350,2322,2292,2259,2226,2191,2158,
+2124,2097,2063,2031,2000,1968,1942,1907,1882,1856,1828,1804,1761,1739,1730,1701,1686,1668,1666,1655,
+1641,1616,1614,1599,1579,1543,1538,1578,1597,1602,1566,1524,1482,1405,1335,1304,1272,1230,1189,1146,
+1100,1057,1016,976,936,901,863,826,785,750,713,685,650,607,571,536,499,461,426,388,
+353,315,271,225,179,136,92,27,-17,-60,-95,-141,-179,-223,-267,-312,-336,-379,-423,-479,
+-532,-568,-609,-649,-694,-737,-787,-843,-890,-936,-979,-1033,-1073,-1122,-1165,-1224,-1276,-1313,-1370,-1413,
+-1462,-1509,-1549,-1595,-1640,-1679,-1720,-1767,-1818,-1870,-1920,-1967,-2007,-2057,-2094,-2132,-2179,-2222,-2270,-2312,
+-2346,-2381,-2419,-2467,-2504,-2537,-2581,-2623,-2656,-2684,-2709,-2732,-2755,-2784,-2826,-2865,-2897,-2926,-2956,-2982,
+-3013,-3043,-3065,-3093,-3106,-3135,-3168,-3192,-3200,-3218,-3232,-3242,-3245,-3261,-3291,-3304,-3308,-3315,-3331,-3345,
+-3360,-3368,-3378,-3396,-3420,-3432,-3446,-3453,-3466,-3481,-3479,-3481,-3485,-3490,-3495,-3501,-3501,-3492,-3488,-3493,
+-3500,-3497,-3495,-3500,-3499,-3497,-3496,-3493,-3490,-3498,-3490,-3485,-3474,-3473,-3429,-3448,-3430,-3423,-3418,-3408,
+-3399,-3388,-3375,-3366,-3362,-3357,-3341,-3320,-3306,-3290,-3268,-3251,-3251,-3235,-3222,-3202,-3189,-3170,-3156,-3128,
+-3113,-3102,-3084,-3066,-3040,-3015,-3013,-2993,-2969,-2948,-2918,-2897,-2882,-2866,-2853,-2831,-2802,-2759,-2764,-2754,
+-2731,-2702,-2671,-2637,-2602,-2565,-2531,-2496,-2455,-2417,-2390,-2359,-2336,-2331,-2304,-2267,-2232,-2195,-2150,-2102,
+-2048,-2002,-1955,-1906,-1867,-1822,-1774,-1746,-1701,-1660,-1613,-1573,-1524,-1502,-1478,-1456,-1430,-1372,-1333,-1315,
+-1267,-1205,-1137,-1071,-995,-912,-807,-698,-583,-439,-350,-285,-212,-167,-104,-31,9,19,27,56,
+98,124,132,134,124,127,145,152,181,214,239,282,321,280,167,42,-58,-97,-102,-109,
+-95,-74,-43,-1,41,91,131,160,185,215,284,276,315,342,375,384,395,398,399,422,
+447,468,483,482,484,530,559,580,594,609,609,610,607,608,614,627,652,664,682,705,
+722,740,770,796,830,853,876,900,930,976,1051,1143,1187,1209,1223,1289,1364,1425,1458,1482,
+1485,1465,1485,1512,1551,1622,1726,1815,1889,1959,2014,2063,2116,2143,2154,2160,2155,2134,2123,2111,
+2104,2085,2081,2078,2088,2125,2167,2193,2215,2214,2196,2156,2123,2116,2180,2154,2162,2190,2229,2300,
+2398,2399,2362,2256,2085,1924,1860,1891,1989,2088,2162,2152,2078,1995,1964,1981,2029,2079,2127,2169,
+2179,2165,2148,2146,2157,2080,2032,2002,1996,1928,1862,1823,1787,1742,1690,1644,1612,1571,1512,1438,
+1367,1304,1246,1204,1172,1144,1117,1085,1070,1061,1046,1031,1013,974,923,881,843,814,807,799,
+785,765,740,716,719,762,826,941,1092,1010,812,715,659,624,592,550,533,532,557,519,
+484,477,485,469,446,422,401,382,363,341,327,311,292,283,264,259,253,247,239,239,
+241,257,223,184,165,151,129,101,82,69,61,45,24,3,-13,-33,-47,-68,-86,-114,
+-130,-155,-181,-208,-234,-264,-295,-327,-358,-386,-418,-451,-480,-522,-561,-594,-620,-647,-671,-693,
+-714,-736,-754,-771,-786,-798,-812,-822,-842,-861,-877,-889,-889,-906,-915,-924,-931,-939,-949,-964,
+-980,-1004,-1019,-1026,-1044,-1058,-1062,-1066,-1079,-1092,-1094,-1097,-1100,-1111,-1123,-1136,-1135,-1147,-1156,-1162,
+-1171,-1171,-1175,-1180,-1179,-1190,-1195,-1202,-1205,-1211,-1214,-1221,-1226,-1227,-1227,-1223,-1225,-1233,-1234,-1230,
+-1228,-1237,-1242,-1255,-1258,-1264,-1268,-1270,-1270,-1272,-1274,-1272,-1271,-1271,-1267,-1255,-1243,-1230,-1223,-1217,
+-1216,-1228,-1232,-1230,-1227,-1224,-1225,-1228,-1227,-1224,-1222,-1229,-1230,-1224,-1214,-1214,-1210,-1211,-1219,-1213,
+-1212,-1217,-1218,-1224,-1224,-1223,-1228,-1237,-1246,-1255,-1258,-1267,-1277,-1282,-1279,-1287,-1285,-1288,-1299,-1275,
+-1276,-1280,-1279,-1272,-1264,-1264,-1264,-1251,-1240,-1233,-1221,-1213,-1208,-1203,-1189,-1187,-1169,-1161,-1153,-1150,
+-1140,-1122,-1121,-1116,-1111,-1105,-1106,-1096,-1082,-1066,-1057,-1053,-1041,-1021,-1026,-1022,-1017,-1013,-1008,-1007,
+-999,-1000,-997,-999,-996,-991,-988,-977,-968,-958,-953,-951,-944,-941,-932,-921,-909,-892,-883,-873,
+-859,-839,-829,-801,-786,-768,-759,-751,-745,-744,-741,-737,-733,-729,-727,-720,-711,-695,-677,-657,
+-641,-630,-623,-612,-599,-586,-560,-536,-504,-480,-456,-437,-423,-405,-389,-373,-357,-341,-325,-315,
+-300,-284,-268,-252,-240,-224,-204,-192,-180,-165,-158,-145,-149,-132,-125,-124,-118,-107,-99,-88,
+-82,-72,-63,-54,-45,-36,-27,-17,-9,-1,10,20,37,56,75,78,65,64,98,122,
+150,178,212,239,270,299,328,364,399,434,457,491,522,549,572,601,630,656,683,725,
+750,785,813,847,886,913,936,966,993,1029,1055,1072,1082,1080,1064,1046,1010,965,932,991,
+1083,1162,1257,1347,1422,1546,1672,1764,1833,1895,2007,2141,2269,2363,2371,2398,2351,2277,2202,2139,
+2097,2074,2041,1983,1948,1910,1854,1804,1779,1757,1733,1709,1690,1672,1638,1606,1568,1525,1508,1498,
+1475,1454,1452,1444,1429,1420,1415,1400,1401,1410,1415,1403,1388,1380,1376,1359,1325,1288,1254,1234,
+1231,1228,1242,1268,1297,1308,1305,1301,1288,1262,1231,1194,1158,1122,1077,1003,922,852,761,660,
+546,412,311,242,188,154,123,90,54,17,-14,-56,-95,-131,-166,-196,-226,-252,-275,-298,
+-311,-329,-344,-362,-382,-399,-416,-436,-451,-465,-478,-491,-506,-525,-541,-557,-573,-585,-599,-614,
+-623,-637,-651,-661,-674,-686,-698,-705,-710,-715,-718,-717,-713,-708,-701,-692,-680,-669,-657,-645,
+-634,-622,-610,-596,-582,-566,-548,-528,-502,-471,-446,-415,-388,-369,-350,-330,-305,-279,-247,-218,
+-185,-150,-114,-75,-43,16,66,111,158,203,249,289,332,383,422,473,520,587,645,686,
+736,786,831,873,919,963,1003,1032,1060,1100,1139,1178,1216,1252,1290,1324,1368,1413,1452,1483,
+1519,1558,1586,1612,1634,1671,1704,1733,1763,1797,1825,1856,1888,1908,1923,1937,1968,2002,2032,2060,
+2082,2112,2129,2161,2192,2202,2229,2247,2259,2277,2293,2311,2326,2337,2336,2380,2389,2359,2339,2331,
+2330,2328,2321,2324,2332,2319,2324,2320,2320,2314,2310,2305,2303,2304,2287,2269,2264,2238,2233,2233,
+2222,2217,2207,2207,2217,2271,2293,2199,2128,2096,2097,2127,2120,2075,2034,1999,1961,1938,1929,1928,
+1914,1897,1877,1843,1821,1803,1790,1779,1773,1762,1761,1765,1759,1750,1741,1731,1716,1708,1712,1729,
+1728,1735,1750,1768,1790,1806,1821,1840,1855,1882,1903,1923,1937,1947,1949,1964,1980,1991,1998,2008,
+2007,2014,2020,2036,2059,2072,2088,2112,2136,2158,2182,2215,2245,2272,2301,2338,2380,2412,2444,2470,
+2491,2515,2539,2543,2557,2574,2605,2643,2664,2674,2676,2698,2704,2733,2701,2642,2611,2623,2658,2683,
+2711,2739,2765,2768,2764,2768,2757,2764,2783,2821,2881,2901,2899,2897,2898,2900,2898,2902,2906,2914,
+2920,2911,2911,2920,2929,2932,2938,2946,2955,2964,2974,2987,2999,3022,3049,3100,3175,3248,3319,3369,
+3409,3444,3481,3490,3476,3467,3444,3432,3415,3389,3365,3363,3360,3340,3323,3327,3319,3297,3271,3262,
+3235,3200,3197,3224,3265,3311,3341,3353,3347,3341,3332,3332,3324,3328,3323,3289,3277,3297,3292,3280,
+3278,3260,3263,3297,3335,3308,3308,3328,3340,3372,3416,3437,3447,3462,3532,3574,3603,3639,3681,3736,
+3789,3808,3834,3866,3964,3992,3970,3999,4019,4032,4058,4075,4078,4100,4091,4160,4201,4180,4196,4175,
+4182,4216,4256,4244,4224,4298,4276,4258,4255,4281,4234,4154,4167,4169,4129,4092,4086,4057,4049,4034,
+3989,4004,3989,3959,3923,3897,3824,3792,3786,3749,3731,3719,3660,3613,3590,3547,3486,3444,3403,3363,
+3315,3283,3254,3226,3193,3160,3127,3094,3058,3026,2997,2970,2937,2904,2876,2855,2840,2819,2796,2769,
+2737,2703,2685,2694,2677,2664,2653,2644,2639,2638,2625,2640,2632,2621,2631,2622,2602,2598,2587,2577,
+2572,2555,2545,2524,2527,2523,2516,2497,2494,2486,2479,2459,2443,2421,2388,2363,2333,2298,2257,2220,
+2205,2174,2144,2108,2072,2042,2013,1985,1955,1933,1901,1878,1843,1811,1792,1764,1741,1728,1719,1705,
+1681,1675,1674,1645,1622,1586,1569,1626,1643,1628,1622,1590,1559,1512,1435,1386,1355,1324,1279,1234,
+1188,1146,1104,1067,1035,998,959,917,875,836,798,770,741,703,663,629,594,557,522,489,
+449,413,372,330,285,237,191,130,85,45,10,-36,-81,-117,-150,-189,-234,-262,-308,-363,
+-418,-463,-510,-549,-584,-629,-674,-722,-783,-824,-869,-925,-966,-1019,-1057,-1097,-1162,-1211,-1254,-1306,
+-1351,-1399,-1443,-1487,-1532,-1575,-1619,-1664,-1707,-1757,-1813,-1860,-1909,-1949,-1991,-2034,-2079,-2123,-2166,-2210,
+-2256,-2291,-2330,-2378,-2411,-2443,-2484,-2530,-2565,-2597,-2621,-2647,-2673,-2704,-2736,-2767,-2806,-2843,-2875,-2901,
+-2927,-2963,-2993,-3015,-3029,-3052,-3087,-3121,-3143,-3158,-3172,-3185,-3193,-3215,-3232,-3258,-3272,-3278,-3289,-3303,
+-3317,-3327,-3348,-3378,-3385,-3395,-3406,-3416,-3421,-3428,-3442,-3452,-3458,-3460,-3462,-3469,-3469,-3466,-3462,-3463,
+-3469,-3477,-3481,-3472,-3469,-3472,-3467,-3464,-3464,-3464,-3460,-3453,-3450,-3443,-3436,-3424,-3416,-3401,-3402,-3395,
+-3391,-3382,-3367,-3357,-3356,-3342,-3332,-3311,-3309,-3292,-3270,-3251,-3239,-3233,-3221,-3207,-3186,-3170,-3150,-3133,
+-3104,-3091,-3079,-3062,-3049,-3024,-3012,-2995,-2964,-2948,-2928,-2902,-2883,-2865,-2853,-2841,-2816,-2792,-2765,-2766,
+-2744,-2717,-2690,-2653,-2617,-2580,-2552,-2527,-2498,-2462,-2434,-2400,-2375,-2357,-2322,-2281,-2250,-2216,-2175,-2130,
+-2085,-2029,-1980,-1939,-1899,-1859,-1818,-1778,-1741,-1697,-1669,-1629,-1594,-1538,-1518,-1499,-1496,-1457,-1445,-1401,
+-1374,-1327,-1272,-1225,-1183,-1120,-1041,-939,-845,-731,-605,-450,-356,-263,-201,-133,-69,-36,-45,-47,
+-26,0,19,32,41,59,68,85,112,137,167,194,235,284,271,126,7,-105,-127,-135,
+-142,-142,-126,-102,-69,-28,21,68,101,122,149,196,215,232,270,292,363,344,326,338,
+355,369,394,424,442,448,436,489,508,513,527,538,533,540,544,557,562,584,597,610,
+626,646,674,714,754,780,794,814,839,868,902,987,1084,1140,1169,1176,1226,1293,1357,1385,
+1416,1409,1387,1408,1444,1499,1572,1676,1746,1818,1883,1926,1968,2006,2040,2068,2070,2068,2059,2044,
+2032,2030,2019,2017,2021,2038,2079,2112,2125,2114,2098,2053,1995,1935,1900,1889,1873,1883,1895,1912,
+1950,2007,2060,2051,1985,1853,1785,1815,1895,1983,2055,2109,2120,2051,1958,1935,1983,2019,2067,2120,
+2115,2113,2105,2098,2094,2079,2031,1990,1955,1909,1845,1801,1759,1720,1671,1636,1599,1560,1508,1443,
+1365,1298,1225,1167,1137,1109,1079,1053,1030,1013,994,972,957,931,896,848,807,769,761,755,
+740,721,702,678,655,661,695,728,758,802,868,748,736,718,666,597,521,475,451,441,
+446,448,425,433,425,409,389,363,339,317,300,284,271,254,239,224,211,214,207,199,
+188,191,186,198,157,133,116,103,83,61,41,34,24,8,-13,-36,-56,-72,-89,-111,
+-124,-145,-159,-179,-211,-244,-275,-302,-325,-353,-384,-414,-450,-490,-527,-561,-590,-612,-644,-677,
+-706,-730,-752,-772,-788,-803,-818,-831,-844,-857,-875,-902,-918,-920,-931,-941,-953,-961,-969,-973,
+-981,-987,-1005,-1028,-1036,-1052,-1059,-1064,-1074,-1082,-1095,-1100,-1104,-1112,-1121,-1133,-1147,-1168,-1173,-1180,
+-1178,-1181,-1188,-1191,-1191,-1184,-1189,-1196,-1213,-1212,-1218,-1223,-1228,-1232,-1231,-1232,-1231,-1232,-1238,-1248,
+-1253,-1252,-1251,-1258,-1263,-1265,-1267,-1266,-1269,-1273,-1280,-1285,-1287,-1284,-1283,-1280,-1267,-1254,-1245,-1227,
+-1218,-1214,-1217,-1224,-1224,-1224,-1226,-1228,-1229,-1225,-1221,-1221,-1227,-1225,-1218,-1212,-1213,-1213,-1216,-1215,
+-1213,-1213,-1216,-1220,-1225,-1226,-1223,-1224,-1235,-1247,-1254,-1261,-1269,-1275,-1278,-1283,-1290,-1292,-1275,-1272,
+-1278,-1278,-1278,-1272,-1264,-1265,-1255,-1264,-1249,-1238,-1230,-1221,-1213,-1207,-1203,-1193,-1190,-1170,-1153,-1144,
+-1139,-1130,-1123,-1114,-1106,-1098,-1094,-1093,-1093,-1080,-1065,-1060,-1049,-1026,-1026,-1028,-1021,-1018,-1016,-1010,
+-1010,-1006,-1007,-1002,-999,-996,-990,-990,-979,-961,-959,-951,-948,-947,-940,-933,-919,-904,-891,-883,
+-864,-849,-833,-820,-799,-791,-778,-767,-756,-754,-748,-748,-744,-738,-728,-717,-705,-698,-692,-678,
+-659,-643,-632,-613,-604,-593,-571,-566,-546,-512,-471,-443,-421,-402,-381,-365,-352,-336,-324,-310,
+-297,-282,-269,-256,-239,-221,-208,-194,-176,-169,-159,-143,-136,-144,-119,-114,-113,-106,-96,-90,
+-82,-75,-68,-59,-50,-38,-31,-23,-17,-7,6,15,30,47,59,61,57,67,74,83,
+120,165,196,225,256,284,310,338,370,399,435,445,489,517,548,579,608,643,668,692,
+718,752,786,821,851,886,911,946,990,1025,1053,1067,1077,1092,1094,1085,1062,1019,965,939,
+1003,1083,1159,1241,1325,1418,1557,1659,1787,1871,1946,2091,2226,2261,2322,2325,2340,2295,2235,2180,
+2128,2087,2053,2039,2024,2022,1963,1892,1848,1800,1764,1758,1748,1730,1716,1682,1647,1607,1570,1541,
+1514,1490,1469,1457,1454,1440,1425,1403,1376,1365,1373,1371,1372,1362,1371,1380,1388,1375,1347,1324,
+1304,1288,1276,1278,1296,1316,1316,1310,1299,1280,1252,1217,1181,1146,1109,1057,984,908,819,713,
+602,469,347,270,212,169,133,96,66,36,9,-20,-60,-101,-139,-172,-201,-227,-255,-276,
+-296,-314,-337,-357,-369,-387,-402,-422,-442,-459,-474,-488,-500,-517,-536,-554,-574,-584,-596,-611,
+-621,-634,-645,-659,-670,-683,-695,-702,-710,-717,-721,-725,-724,-718,-714,-706,-696,-685,-677,-663,
+-648,-636,-620,-604,-585,-566,-548,-531,-509,-486,-461,-435,-405,-374,-351,-331,-317,-293,-262,-232,
+-209,-181,-153,-118,-83,-45,0,45,87,141,192,251,294,328,373,425,468,517,587,634,
+688,740,785,825,870,912,957,988,1033,1069,1114,1158,1198,1241,1278,1317,1359,1396,1436,1475,
+1508,1548,1580,1607,1627,1658,1696,1725,1756,1784,1819,1848,1876,1896,1916,1927,1964,1990,2022,2057,
+2084,2107,2131,2155,2174,2198,2224,2241,2262,2278,2291,2317,2332,2357,2388,2347,2385,2377,2368,2350,
+2346,2341,2342,2340,2346,2355,2349,2344,2342,2354,2337,2335,2323,2308,2298,2289,2280,2279,2278,2307,
+2325,2267,2282,2249,2223,2216,2225,2274,2318,2166,2120,2191,2363,2385,2316,2277,2130,2022,1974,1939,
+1929,1922,1898,1878,1868,1890,1874,1839,1814,1801,1789,1779,1777,1774,1768,1760,1740,1727,1723,1729,
+1742,1746,1757,1765,1783,1798,1810,1828,1845,1858,1878,1895,1912,1927,1950,1962,1965,1975,1986,1990,
+1992,2001,2013,2028,2039,2048,2062,2084,2105,2130,2151,2182,2208,2246,2280,2321,2360,2400,2431,2463,
+2486,2511,2536,2553,2561,2573,2584,2616,2663,2685,2688,2681,2673,2699,2656,2622,2601,2606,2628,2658,
+2679,2703,2725,2748,2760,2766,2776,2787,2838,2870,2888,2899,2905,2913,2911,2913,2907,2902,2899,2912,
+2924,2934,2926,2926,2929,2933,2933,2945,2954,2965,2972,2983,3005,3026,3048,3092,3147,3218,3289,3356,
+3404,3446,3479,3513,3513,3512,3503,3483,3456,3436,3431,3401,3392,3378,3347,3327,3340,3327,3317,3303,
+3285,3252,3228,3231,3263,3318,3369,3397,3408,3403,3387,3381,3383,3353,3353,3333,3306,3317,3318,3312,
+3308,3310,3302,3303,3324,3367,3375,3393,3383,3397,3440,3448,3493,3511,3527,3585,3661,3652,3691,3727,
+3811,3834,3868,3901,3915,3943,3977,4027,4053,4066,4095,4132,4173,4151,4146,4154,4210,4233,4253,4243,
+4238,4279,4289,4336,4287,4245,4294,4253,4232,4234,4241,4181,4160,4166,4146,4103,4077,4085,4061,4039,
+4018,4004,4023,4003,3961,3959,3946,3832,3814,3838,3822,3756,3731,3696,3648,3611,3564,3521,3477,3441,
+3396,3363,3334,3304,3272,3244,3210,3175,3140,3100,3070,3040,3009,2978,2943,2915,2907,2887,2864,2838,
+2806,2776,2752,2742,2729,2713,2697,2693,2681,2681,2679,2676,2668,2672,2663,2666,2650,2633,2624,2605,
+2589,2575,2580,2554,2558,2555,2540,2542,2542,2532,2522,2516,2504,2483,2461,2425,2394,2368,2328,2305,
+2284,2249,2218,2188,2157,2123,2086,2057,2024,1995,1976,1946,1918,1886,1863,1835,1808,1785,1771,1758,
+1733,1726,1721,1704,1678,1632,1619,1652,1688,1670,1656,1644,1620,1590,1539,1479,1436,1399,1360,1317,
+1277,1236,1198,1162,1125,1089,1050,1010,964,923,890,867,828,795,764,727,690,651,615,580,
+546,511,474,429,384,337,286,226,170,153,121,75,32,-7,-40,-78,-117,-166,-199,-244,
+-303,-352,-407,-446,-484,-525,-567,-610,-665,-718,-762,-810,-860,-905,-953,-1004,-1046,-1098,-1148,-1198,
+-1248,-1291,-1337,-1379,-1424,-1470,-1513,-1558,-1607,-1657,-1703,-1754,-1800,-1847,-1886,-1930,-1975,-2020,-2068,-2109,
+-2151,-2189,-2228,-2262,-2311,-2353,-2390,-2433,-2477,-2506,-2533,-2566,-2592,-2612,-2648,-2681,-2715,-2753,-2789,-2818,
+-2842,-2873,-2905,-2938,-2969,-2976,-2999,-3025,-3069,-3091,-3111,-3129,-3137,-3150,-3172,-3192,-3223,-3238,-3238,-3257,
+-3277,-3288,-3300,-3331,-3331,-3346,-3370,-3384,-3390,-3392,-3392,-3401,-3417,-3431,-3435,-3443,-3442,-3436,-3429,-3430,
+-3437,-3442,-3446,-3447,-3444,-3440,-3443,-3441,-3438,-3439,-3436,-3438,-3433,-3420,-3417,-3407,-3397,-3383,-3376,-3383,
+-3375,-3368,-3358,-3345,-3337,-3332,-3324,-3313,-3298,-3273,-3278,-3271,-3242,-3224,-3217,-3205,-3188,-3177,-3162,-3138,
+-3110,-3088,-3081,-3058,-3046,-3036,-3014,-2996,-2976,-2941,-2931,-2910,-2893,-2871,-2858,-2848,-2831,-2799,-2784,-2777,
+-2760,-2730,-2701,-2666,-2627,-2603,-2584,-2557,-2513,-2500,-2477,-2447,-2419,-2389,-2348,-2305,-2269,-2229,-2190,-2149,
+-2103,-2062,-2023,-1981,-1939,-1897,-1855,-1816,-1779,-1747,-1712,-1688,-1649,-1610,-1571,-1542,-1507,-1498,-1507,-1490,
+-1455,-1418,-1357,-1327,-1290,-1262,-1214,-1147,-1069,-968,-856,-745,-604,-433,-319,-221,-151,-102,-93,-110,
+-105,-88,-73,-57,-34,-12,21,37,41,59,83,111,155,190,225,217,94,-28,-133,-161,
+-167,-170,-168,-167,-143,-109,-76,-36,-2,32,64,92,111,141,189,273,238,242,254,261,
+277,291,306,331,363,382,383,370,389,425,438,455,463,468,473,478,490,501,517,532,
+539,558,589,626,658,685,715,743,769,794,821,846,899,1004,1043,1064,1089,1126,1185,1258,
+1293,1314,1307,1296,1309,1347,1410,1518,1618,1697,1742,1793,1846,1879,1907,1935,1955,1966,1986,1977,
+1960,1952,1950,1948,1954,1958,1968,2000,2029,2034,2006,1964,1927,1877,1779,1700,1635,1597,1591,1561,
+1542,1545,1606,1696,1796,1832,1780,1810,1871,1912,1945,1974,2007,2048,1969,1889,1907,1983,2019,2041,
+2062,2072,2069,2062,2056,2036,2008,1971,1931,1886,1831,1786,1747,1705,1669,1623,1592,1542,1502,1440,
+1368,1283,1204,1148,1101,1081,1049,1021,994,971,948,922,898,876,851,818,777,740,716,705,
+691,674,660,638,625,626,645,643,632,618,614,617,613,667,715,779,683,545,444,391,
+376,382,360,366,377,372,363,347,328,309,287,267,246,222,213,199,188,171,168,163,
+154,147,142,137,137,137,102,75,67,57,38,20,7,2,-8,-28,-47,-74,-90,-107,
+-129,-153,-166,-176,-193,-218,-250,-274,-297,-321,-352,-381,-413,-446,-485,-524,-557,-581,-609,-644,
+-678,-715,-744,-769,-794,-814,-827,-841,-853,-866,-882,-901,-922,-938,-947,-954,-969,-979,-994,-1001,
+-1002,-998,-1002,-1008,-1024,-1037,-1051,-1065,-1072,-1083,-1095,-1103,-1109,-1112,-1127,-1131,-1137,-1159,-1173,-1175,
+-1188,-1198,-1205,-1211,-1213,-1208,-1204,-1211,-1215,-1219,-1217,-1224,-1229,-1234,-1237,-1236,-1237,-1241,-1249,-1255,
+-1261,-1266,-1276,-1278,-1283,-1277,-1269,-1274,-1280,-1277,-1284,-1288,-1289,-1292,-1288,-1287,-1282,-1278,-1268,-1262,
+-1257,-1251,-1246,-1238,-1240,-1237,-1233,-1234,-1235,-1228,-1221,-1214,-1213,-1216,-1213,-1210,-1211,-1212,-1210,-1209,
+-1207,-1208,-1211,-1212,-1217,-1223,-1231,-1237,-1234,-1248,-1254,-1258,-1258,-1264,-1269,-1274,-1282,-1288,-1292,-1290,
+-1284,-1263,-1267,-1266,-1262,-1258,-1250,-1246,-1248,-1245,-1237,-1229,-1224,-1214,-1206,-1192,-1185,-1171,-1169,-1148,
+-1146,-1140,-1133,-1121,-1115,-1104,-1095,-1084,-1079,-1080,-1076,-1066,-1061,-1057,-1035,-1031,-1030,-1024,-1020,-1019,
+-1015,-1014,-1011,-1011,-1007,-1003,-1000,-989,-994,-980,-967,-959,-952,-951,-942,-935,-927,-916,-901,-888,
+-882,-869,-852,-834,-816,-806,-797,-789,-777,-767,-765,-755,-749,-749,-744,-736,-726,-713,-709,-698,
+-677,-666,-655,-642,-629,-617,-590,-575,-562,-531,-483,-466,-444,-415,-388,-371,-364,-348,-335,-317,
+-300,-285,-270,-257,-244,-225,-210,-194,-182,-170,-162,-154,-140,-120,-137,-111,-108,-107,-103,-95,
+-88,-81,-69,-62,-52,-46,-42,-33,-18,-12,2,13,24,34,48,45,46,74,82,99,
+125,135,159,199,231,259,286,315,346,374,400,435,455,494,520,553,583,609,638,665,
+692,722,758,792,825,865,906,930,955,994,1034,1061,1080,1096,1104,1107,1092,1060,1011,953,
+924,1002,1092,1179,1285,1368,1476,1584,1675,1794,1887,1986,2093,2204,2274,2270,2284,2296,2283,2248,
+2192,2160,2120,2119,2101,2073,2054,1989,1918,1861,1810,1780,1761,1742,1734,1718,1676,1629,1579,1566,
+1546,1524,1502,1478,1455,1432,1420,1406,1376,1349,1337,1342,1353,1362,1350,1352,1358,1366,1366,1357,
+1344,1328,1312,1295,1289,1301,1313,1316,1306,1295,1282,1252,1216,1177,1141,1103,1039,942,847,740,
+642,537,416,318,238,183,144,107,68,46,22,-1,-30,-66,-105,-144,-174,-199,-220,-244,
+-269,-286,-305,-332,-357,-375,-387,-400,-421,-440,-460,-475,-489,-506,-520,-538,-552,-572,-591,-604,
+-618,-629,-641,-650,-664,-677,-691,-699,-707,-716,-721,-726,-731,-733,-726,-721,-714,-703,-692,-681,
+-665,-651,-634,-619,-600,-576,-555,-533,-515,-494,-473,-449,-426,-392,-365,-335,-308,-295,-271,-242,
+-209,-187,-161,-133,-108,-72,-39,2,41,95,150,193,237,290,332,379,426,481,518,584,
+643,689,739,782,823,864,906,946,988,1024,1063,1098,1140,1182,1224,1265,1313,1355,1395,1437,
+1477,1505,1535,1567,1593,1617,1646,1684,1719,1756,1788,1823,1858,1883,1907,1925,1958,1984,2018,2057,
+2080,2108,2137,2161,2181,2205,2231,2244,2263,2278,2298,2311,2322,2344,2362,2375,2365,2363,2382,2374,
+2383,2385,2386,2393,2377,2358,2347,2335,2325,2327,2327,2330,2322,2337,2347,2350,2341,2332,2307,2286,
+2282,2270,2247,2240,2230,2222,2214,2204,2195,2189,2169,2162,2207,2266,2267,2278,2307,2217,2117,2023,
+1963,1939,1935,1926,1912,1885,1879,1860,1850,1840,1824,1807,1792,1784,1776,1770,1761,1750,1751,1747,
+1742,1764,1768,1767,1776,1790,1805,1821,1830,1844,1858,1872,1891,1906,1922,1928,1941,1960,1972,1969,
+1979,1992,1996,2003,2017,2029,2045,2058,2079,2097,2134,2159,2188,2224,2259,2299,2345,2380,2410,2452,
+2479,2495,2528,2547,2565,2574,2590,2617,2651,2685,2716,2691,2678,2670,2646,2620,2624,2652,2651,2690,
+2748,2732,2727,2735,2752,2769,2787,2824,2844,2875,2874,2890,2903,2907,2916,2926,2928,2929,2924,2918,
+2935,2940,2939,2938,2932,2939,2938,2938,2949,2965,2974,2980,2992,3022,3054,3086,3138,3197,3262,3334,
+3393,3430,3467,3512,3536,3535,3533,3526,3511,3485,3462,3452,3431,3427,3394,3364,3336,3336,3335,3325,
+3313,3298,3273,3244,3256,3291,3346,3395,3426,3441,3424,3401,3390,3390,3389,3367,3336,3334,3345,3334,
+3319,3327,3339,3328,3332,3361,3388,3444,3476,3453,3483,3554,3529,3527,3544,3594,3660,3707,3724,3762,
+3814,3876,3898,3927,3945,3973,4003,4053,4099,4124,4139,4184,4217,4268,4215,4200,4237,4281,4303,4294,
+4264,4306,4299,4324,4297,4219,4277,4284,4255,4225,4220,4224,4180,4170,4157,4155,4122,4081,4094,4078,
+4070,4069,4042,4030,3997,3994,3988,3949,3831,3877,3869,3861,3782,3747,3717,3676,3627,3593,3554,3515,
+3475,3446,3418,3388,3355,3324,3292,3259,3221,3183,3148,3113,3080,3048,3014,2977,2962,2950,2926,2902,
+2875,2844,2821,2802,2792,2775,2754,2737,2727,2721,2716,2712,2705,2697,2698,2699,2686,2669,2643,2633,
+2615,2600,2608,2590,2571,2575,2567,2562,2567,2564,2560,2558,2550,2538,2529,2481,2467,2434,2398,2383,
+2357,2333,2301,2262,2234,2203,2169,2132,2098,2069,2041,2008,1984,1962,1932,1911,1881,1857,1838,1812,
+1787,1785,1783,1759,1731,1697,1682,1716,1717,1709,1712,1703,1684,1658,1609,1557,1519,1483,1445,1403,
+1361,1317,1284,1249,1215,1178,1143,1097,1048,1009,991,968,932,892,854,819,786,750,712,669,
+630,598,567,530,485,437,384,321,258,257,236,193,145,102,66,32,-1,-32,-88,-126,
+-181,-238,-279,-335,-383,-421,-459,-502,-556,-608,-653,-699,-740,-796,-844,-889,-938,-985,-1035,-1087,
+-1136,-1184,-1233,-1277,-1319,-1362,-1410,-1455,-1504,-1549,-1600,-1648,-1697,-1742,-1781,-1822,-1867,-1915,-1960,-2010,
+-2054,-2097,-2138,-2164,-2209,-2261,-2298,-2340,-2380,-2417,-2451,-2475,-2497,-2528,-2562,-2589,-2624,-2657,-2696,-2731,
+-2760,-2785,-2813,-2842,-2883,-2914,-2928,-2953,-2985,-3016,-3038,-3059,-3087,-3101,-3109,-3131,-3158,-3181,-3193,-3208,
+-3222,-3250,-3257,-3267,-3281,-3291,-3320,-3337,-3342,-3359,-3360,-3357,-3367,-3381,-3399,-3407,-3412,-3409,-3403,-3400,
+-3404,-3406,-3414,-3417,-3413,-3404,-3400,-3404,-3409,-3414,-3409,-3410,-3403,-3405,-3398,-3392,-3382,-3372,-3362,-3356,
+-3362,-3351,-3341,-3331,-3318,-3319,-3314,-3309,-3296,-3284,-3263,-3244,-3254,-3228,-3211,-3198,-3186,-3167,-3147,-3138,
+-3113,-3095,-3072,-3055,-3038,-3024,-3017,-3003,-2985,-2961,-2922,-2917,-2902,-2881,-2869,-2849,-2831,-2813,-2798,-2780,
+-2760,-2741,-2716,-2674,-2646,-2618,-2587,-2573,-2551,-2526,-2508,-2474,-2437,-2407,-2362,-2319,-2276,-2238,-2201,-2165,
+-2134,-2101,-2058,-2014,-1971,-1938,-1897,-1856,-1821,-1786,-1757,-1725,-1695,-1663,-1625,-1585,-1544,-1533,-1498,-1516,
+-1508,-1482,-1437,-1392,-1373,-1350,-1312,-1276,-1230,-1163,-1073,-987,-885,-735,-525,-373,-262,-182,-151,-157,
+-168,-148,-128,-118,-107,-84,-68,-43,-12,11,18,30,67,127,153,172,167,85,-32,-164,
+-199,-200,-199,-198,-192,-178,-147,-113,-82,-48,-28,-1,31,67,119,130,188,137,158,186,
+205,220,236,252,274,296,315,327,328,342,364,361,384,401,408,409,416,432,446,455,
+472,491,539,547,565,594,632,668,699,725,754,781,805,826,883,932,966,996,1032,1080,
+1142,1179,1199,1196,1193,1215,1272,1330,1443,1545,1607,1659,1709,1756,1788,1805,1828,1848,1864,1873,
+1882,1876,1877,1889,1891,1893,1892,1893,1906,1926,1946,1932,1881,1830,1779,1670,1568,1484,1424,1368,
+1273,1205,1219,1310,1464,1658,1713,1773,1857,1886,1872,1866,1870,1904,1917,1846,1822,1863,1941,1986,
+2023,2047,2055,2043,2029,2013,1992,1961,1916,1864,1817,1782,1749,1702,1665,1610,1553,1514,1475,1427,
+1355,1283,1212,1155,1104,1047,1020,1003,973,936,910,883,851,822,800,776,743,711,685,667,
+653,637,620,597,586,611,629,614,591,568,544,497,484,487,505,561,676,678,581,424,
+349,316,299,290,293,315,317,307,293,281,265,249,231,201,177,155,146,141,128,116,
+113,108,103,96,94,85,78,72,31,22,18,5,-2,-18,-20,-29,-45,-68,-90,-110,
+-124,-155,-180,-199,-203,-215,-232,-253,-275,-299,-331,-360,-384,-407,-441,-477,-517,-552,-578,-609,
+-643,-678,-711,-746,-778,-812,-838,-854,-865,-874,-890,-906,-926,-944,-958,-968,-976,-985,-998,-1012,
+-1020,-1022,-1028,-1025,-1019,-1020,-1025,-1045,-1066,-1084,-1088,-1099,-1111,-1122,-1120,-1121,-1137,-1146,-1146,-1164,
+-1182,-1186,-1206,-1221,-1227,-1230,-1228,-1233,-1243,-1234,-1232,-1232,-1233,-1239,-1244,-1252,-1258,-1258,-1262,-1267,
+-1270,-1277,-1280,-1287,-1291,-1292,-1292,-1288,-1284,-1287,-1290,-1290,-1284,-1283,-1286,-1282,-1281,-1279,-1279,-1277,
+-1273,-1275,-1275,-1276,-1267,-1260,-1254,-1251,-1243,-1239,-1234,-1222,-1216,-1206,-1208,-1209,-1217,-1219,-1216,-1208,
+-1204,-1201,-1201,-1204,-1203,-1204,-1213,-1221,-1236,-1248,-1251,-1258,-1260,-1260,-1262,-1268,-1273,-1274,-1277,-1273,
+-1272,-1282,-1268,-1252,-1260,-1254,-1253,-1252,-1245,-1239,-1235,-1227,-1219,-1214,-1204,-1192,-1184,-1177,-1174,-1175,
+-1160,-1150,-1141,-1134,-1125,-1118,-1109,-1096,-1086,-1078,-1071,-1069,-1068,-1060,-1053,-1036,-1032,-1031,-1026,-1019,
+-1014,-1022,-1017,-1016,-1012,-1007,-1001,-994,-988,-984,-981,-971,-961,-960,-952,-939,-930,-917,-908,-895,
+-884,-881,-866,-852,-835,-818,-801,-795,-790,-783,-778,-773,-769,-758,-754,-743,-735,-730,-724,-716,
+-703,-690,-677,-667,-654,-635,-617,-602,-578,-554,-533,-512,-476,-452,-420,-403,-384,-362,-350,-335,
+-316,-300,-280,-264,-254,-238,-222,-206,-195,-178,-170,-162,-151,-128,-128,-120,-95,-99,-99,-101,
+-91,-84,-77,-69,-61,-61,-52,-39,-34,-25,-14,-4,9,25,29,27,31,62,62,64,
+98,129,145,154,191,219,256,290,322,348,373,400,432,459,485,508,537,563,593,628,
+661,693,719,752,786,821,856,888,914,942,984,1010,1044,1072,1102,1106,1097,1075,1048,1011,
+958,936,1013,1111,1212,1313,1457,1609,1677,1759,1832,1919,2060,2162,2224,2288,2282,2263,2281,2295,
+2246,2220,2200,2174,2177,2156,2122,2094,2018,1948,1880,1817,1774,1752,1723,1695,1675,1637,1595,1554,
+1532,1511,1502,1496,1479,1457,1424,1398,1371,1343,1319,1314,1317,1339,1360,1348,1340,1331,1332,1334,
+1335,1341,1336,1326,1309,1303,1308,1313,1310,1301,1296,1288,1266,1220,1170,1128,1079,984,873,762,
+651,557,455,358,283,211,156,113,78,45,23,3,-17,-44,-78,-114,-145,-175,-197,-218,
+-244,-266,-285,-304,-326,-348,-365,-378,-398,-420,-439,-459,-475,-491,-505,-520,-539,-556,-571,-591,
+-607,-622,-635,-645,-657,-670,-685,-698,-707,-712,-720,-726,-730,-735,-737,-733,-728,-722,-712,-698,
+-685,-669,-651,-632,-615,-593,-570,-546,-523,-501,-480,-463,-442,-419,-387,-359,-329,-298,-276,-258,
+-233,-208,-175,-141,-124,-96,-72,-43,-12,26,64,111,170,214,274,318,366,422,479,517,
+579,643,690,736,776,815,856,893,930,972,1008,1048,1086,1132,1173,1213,1257,1306,1349,1387,
+1426,1459,1487,1516,1543,1569,1604,1634,1668,1710,1752,1787,1831,1871,1894,1920,1944,1969,2003,2038,
+2068,2100,2128,2159,2177,2196,2215,2235,2247,2265,2282,2292,2322,2354,2367,2353,2409,2430,2419,2402,
+2398,2385,2372,2375,2375,2371,2372,2369,2362,2346,2346,2348,2345,2337,2334,2346,2345,2349,2339,2325,
+2324,2306,2284,2263,2243,2245,2283,2300,2247,2223,2207,2197,2179,2191,2235,2149,2118,2105,2133,2143,
+2065,2000,1965,1946,1930,1909,1884,1871,1886,1878,1864,1830,1814,1800,1799,1798,1788,1776,1770,1765,
+1764,1764,1768,1772,1775,1782,1789,1800,1817,1835,1849,1866,1877,1889,1900,1916,1929,1941,1953,1954,
+1963,1973,1972,1990,2003,2012,2019,2035,2051,2074,2099,2134,2170,2204,2246,2284,2324,2367,2401,2436,
+2467,2493,2518,2546,2566,2589,2614,2637,2650,2665,2686,2702,2694,2676,2680,2667,2623,2627,2684,2792,
+2860,2939,2933,2877,2849,2827,2816,2832,2858,2865,2876,2878,2887,2907,2920,2936,2949,2950,2947,2938,
+2936,2943,2946,2948,2949,2944,2950,2956,2959,2964,2974,2982,2992,3010,3042,3079,3128,3183,3233,3287,
+3353,3411,3457,3493,3525,3546,3547,3553,3540,3523,3515,3513,3520,3510,3479,3445,3413,3386,3359,3345,
+3330,3320,3315,3308,3290,3280,3299,3346,3387,3425,3430,3414,3389,3403,3407,3395,3366,3340,3369,3370,
+3360,3339,3337,3371,3369,3388,3428,3461,3495,3531,3526,3574,3621,3624,3649,3646,3678,3737,3768,3791,
+3833,3885,3929,3956,3979,4006,4064,4103,4134,4163,4176,4185,4223,4277,4258,4290,4254,4294,4335,4345,
+4307,4332,4303,4294,4349,4304,4229,4303,4283,4243,4220,4243,4221,4224,4195,4156,4167,4153,4120,4122,
+4114,4094,4091,4078,4045,4023,4017,4021,3934,3873,3904,3877,3852,3804,3778,3745,3699,3658,3621,3583,
+3552,3529,3503,3475,3444,3408,3372,3340,3301,3264,3222,3185,3151,3118,3088,3050,3027,3015,2993,2968,
+2940,2910,2883,2860,2849,2829,2812,2796,2779,2762,2748,2744,2742,2732,2733,2736,2726,2709,2692,2679,
+2648,2637,2624,2636,2611,2605,2599,2598,2595,2596,2599,2583,2581,2577,2573,2555,2529,2493,2471,2450,
+2425,2401,2371,2340,2309,2273,2244,2207,2173,2145,2110,2080,2051,2024,1997,1980,1958,1934,1905,1878,
+1857,1851,1835,1814,1782,1750,1740,1746,1767,1762,1740,1742,1714,1688,1669,1637,1593,1558,1521,1486,
+1450,1408,1367,1336,1301,1265,1227,1187,1141,1102,1081,1057,1029,993,959,921,880,841,803,767,
+730,695,658,618,579,536,488,422,352,362,345,303,259,216,177,137,105,69,29,-11,
+-77,-125,-176,-223,-274,-315,-356,-400,-447,-496,-544,-591,-635,-682,-731,-776,-826,-876,-921,-968,
+-1021,-1072,-1119,-1170,-1217,-1260,-1304,-1349,-1398,-1446,-1495,-1541,-1590,-1636,-1681,-1719,-1759,-1803,-1850,-1901,
+-1954,-1999,-2033,-2052,-2113,-2163,-2193,-2236,-2281,-2322,-2356,-2389,-2418,-2444,-2474,-2512,-2544,-2565,-2596,-2637,
+-2676,-2700,-2726,-2755,-2792,-2834,-2863,-2875,-2893,-2928,-2970,-2993,-3019,-3042,-3052,-3071,-3101,-3129,-3145,-3151,
+-3169,-3183,-3210,-3223,-3237,-3252,-3269,-3285,-3303,-3313,-3327,-3331,-3332,-3343,-3357,-3371,-3381,-3379,-3374,-3371,
+-3373,-3376,-3379,-3381,-3380,-3378,-3376,-3374,-3373,-3374,-3375,-3386,-3375,-3367,-3380,-3369,-3364,-3354,-3344,-3338,
+-3326,-3324,-3324,-3312,-3301,-3295,-3294,-3288,-3284,-3274,-3253,-3237,-3233,-3224,-3207,-3197,-3178,-3162,-3141,-3133,
+-3120,-3096,-3070,-3054,-3036,-3021,-3006,-2996,-2987,-2966,-2940,-2919,-2903,-2883,-2866,-2845,-2830,-2818,-2811,-2788,
+-2766,-2745,-2727,-2689,-2654,-2629,-2609,-2596,-2584,-2553,-2525,-2494,-2457,-2418,-2376,-2344,-2305,-2268,-2232,-2197,
+-2161,-2124,-2086,-2048,-2011,-1973,-1936,-1899,-1864,-1832,-1800,-1763,-1731,-1703,-1673,-1645,-1603,-1562,-1554,-1535,
+-1526,-1527,-1511,-1474,-1435,-1420,-1394,-1359,-1322,-1283,-1239,-1181,-1113,-1012,-853,-642,-440,-332,-252,-221,
+-235,-226,-209,-178,-152,-143,-112,-99,-85,-54,-31,-18,-10,27,83,107,112,108,15,-91,
+-208,-235,-237,-238,-241,-241,-218,-194,-161,-137,-104,-85,-59,-39,-6,54,92,61,55,86,
+112,142,163,182,202,221,235,244,250,262,298,288,296,317,336,344,353,354,365,380,
+398,418,450,472,490,514,546,585,621,648,679,701,722,744,762,813,859,884,914,953,
+992,1030,1053,1058,1073,1102,1180,1227,1255,1355,1453,1526,1588,1637,1674,1698,1715,1730,1739,1748,
+1762,1772,1781,1789,1811,1817,1825,1829,1830,1844,1856,1885,1889,1850,1786,1705,1587,1460,1368,1328,
+1212,1097,1045,1087,1207,1392,1562,1697,1790,1842,1849,1808,1754,1754,1753,1745,1740,1761,1807,1878,
+1950,1996,2036,2048,2034,2008,1985,1962,1921,1859,1803,1759,1746,1698,1652,1594,1533,1473,1438,1403,
+1334,1278,1225,1174,1135,1077,1035,1011,970,929,892,857,822,786,756,736,712,687,662,641,
+625,608,591,562,540,578,602,594,571,557,519,473,435,416,405,404,422,476,484,462,
+401,335,286,261,258,231,240,250,245,239,230,219,202,180,157,134,109,98,90,82,
+67,65,59,53,51,48,51,23,5,-13,-20,-11,-22,-32,-46,-47,-59,-74,-92,-114,
+-136,-160,-183,-208,-223,-235,-237,-248,-263,-278,-304,-335,-348,-397,-413,-438,-476,-512,-547,-583,
+-618,-651,-684,-708,-739,-774,-811,-843,-867,-883,-899,-912,-927,-944,-963,-981,-992,-996,-1007,-1014,
+-1021,-1031,-1040,-1044,-1043,-1037,-1029,-1033,-1042,-1063,-1089,-1104,-1115,-1119,-1117,-1126,-1138,-1143,-1151,-1166,
+-1167,-1187,-1193,-1203,-1213,-1229,-1245,-1249,-1252,-1246,-1230,-1231,-1256,-1265,-1259,-1260,-1271,-1273,-1278,-1281,
+-1280,-1282,-1288,-1290,-1287,-1287,-1288,-1286,-1289,-1290,-1288,-1290,-1292,-1290,-1287,-1280,-1275,-1271,-1275,-1276,
+-1278,-1279,-1282,-1282,-1285,-1279,-1277,-1272,-1265,-1259,-1250,-1242,-1229,-1222,-1216,-1217,-1221,-1223,-1220,-1215,
+-1207,-1199,-1195,-1195,-1191,-1185,-1185,-1196,-1207,-1224,-1233,-1238,-1244,-1245,-1255,-1263,-1269,-1272,-1276,-1276,
+-1274,-1267,-1266,-1287,-1266,-1262,-1261,-1252,-1248,-1244,-1235,-1225,-1217,-1206,-1201,-1193,-1188,-1185,-1181,-1177,
+-1175,-1175,-1147,-1138,-1141,-1130,-1120,-1114,-1103,-1096,-1087,-1078,-1071,-1068,-1059,-1046,-1034,-1029,-1032,-1031,
+-1028,-1018,-1019,-1016,-1013,-1006,-998,-990,-984,-983,-983,-980,-975,-966,-958,-946,-939,-933,-915,-902,
+-888,-879,-866,-857,-846,-831,-815,-804,-789,-780,-773,-770,-762,-755,-750,-744,-733,-731,-726,-722,
+-713,-708,-699,-688,-678,-662,-647,-629,-601,-575,-554,-535,-513,-478,-463,-422,-391,-377,-366,-346,
+-332,-318,-299,-280,-266,-258,-250,-244,-227,-212,-195,-177,-169,-151,-145,-122,-127,-113,-100,-102,
+-108,-105,-90,-74,-60,-47,-44,-33,-20,-9,-1,8,22,29,40,44,57,62,53,50,
+79,107,132,162,187,216,247,268,289,310,330,359,392,430,457,464,489,523,558,601,
+638,675,703,726,749,777,805,836,864,902,942,976,1003,1046,1080,1124,1122,1114,1097,1069,
+1016,960,958,1026,1133,1241,1370,1566,1723,1739,1788,1841,1910,2033,2130,2252,2280,2334,2284,2259,
+2296,2243,2211,2229,2223,2203,2180,2149,2102,2042,1970,1894,1828,1775,1738,1693,1649,1615,1592,1561,
+1528,1506,1495,1474,1455,1437,1424,1403,1372,1346,1314,1297,1287,1295,1321,1341,1344,1336,1321,1311,
+1305,1309,1317,1330,1333,1324,1312,1300,1291,1276,1265,1262,1262,1247,1212,1165,1111,1016,893,771,
+664,558,457,354,277,219,170,127,83,52,24,2,-17,-36,-62,-92,-120,-142,-169,-186,
+-209,-234,-256,-280,-300,-321,-340,-362,-382,-399,-419,-438,-455,-470,-486,-503,-519,-539,-558,-577,
+-595,-608,-623,-636,-648,-663,-674,-688,-705,-712,-718,-724,-730,-734,-738,-742,-740,-736,-729,-719,
+-705,-690,-674,-656,-638,-614,-592,-568,-540,-515,-494,-476,-458,-444,-426,-394,-363,-331,-291,-272,
+-257,-234,-206,-189,-162,-131,-96,-74,-49,-17,28,65,101,163,212,262,315,354,417,471,
+528,575,641,689,731,767,807,848,892,922,959,996,1033,1073,1116,1160,1203,1246,1293,1328,
+1363,1400,1431,1462,1496,1524,1559,1603,1642,1671,1718,1761,1800,1851,1882,1912,1938,1961,1987,2014,
+2041,2070,2099,2125,2153,2179,2193,2219,2237,2274,2300,2335,2359,2381,2403,2396,2379,2391,2399,2395,
+2404,2414,2417,2413,2410,2401,2388,2365,2359,2388,2338,2323,2339,2338,2347,2352,2345,2352,2353,2346,
+2347,2363,2445,2362,2292,2268,2270,2299,2314,2271,2242,2225,2209,2195,2180,2165,2141,2123,2110,2126,
+2129,2120,2034,1986,1960,1945,1921,1908,1907,1898,1876,1857,1870,1873,1841,1816,1803,1789,1785,1777,
+1777,1772,1768,1775,1769,1762,1774,1791,1808,1815,1830,1840,1853,1871,1887,1905,1915,1925,1939,1949,
+1960,1961,1965,1970,1985,1995,2012,2026,2038,2059,2084,2114,2151,2189,2227,2271,2311,2355,2393,2429,
+2458,2487,2525,2553,2572,2602,2627,2644,2657,2672,2691,2702,2711,2707,2697,2681,2652,2645,2686,2782,
+2894,2946,2967,2945,2888,2851,2855,2854,2866,2881,2877,2884,2889,2904,2918,2937,2954,2961,2965,2959,
+2945,2939,2946,2947,2952,2964,2967,2976,2974,2978,2985,2987,2998,3010,3036,3070,3109,3161,3215,3254,
+3297,3356,3415,3472,3516,3547,3553,3559,3562,3569,3557,3556,3561,3569,3554,3519,3475,3432,3399,3362,
+3338,3327,3324,3326,3332,3326,3322,3322,3334,3361,3386,3387,3380,3375,3419,3400,3366,3337,3350,3385,
+3378,3382,3366,3375,3420,3426,3465,3499,3537,3577,3593,3587,3633,3697,3706,3718,3737,3788,3820,3839,
+3866,3912,3955,3983,4004,4023,4082,4133,4168,4186,4210,4215,4210,4226,4237,4245,4317,4347,4364,4406,
+4375,4367,4283,4288,4354,4411,4353,4248,4295,4282,4254,4245,4276,4245,4254,4188,4189,4170,4155,4134,
+4130,4122,4103,4106,4090,4072,4061,4048,4028,3962,3939,3950,3911,3879,3845,3808,3774,3728,3688,3642,
+3617,3603,3579,3553,3525,3492,3452,3417,3378,3338,3297,3257,3222,3195,3162,3127,3093,3081,3061,3033,
+3005,2972,2944,2915,2899,2888,2867,2847,2830,2819,2804,2786,2773,2771,2766,2761,2762,2751,2734,2720,
+2705,2686,2662,2661,2663,2634,2639,2630,2631,2625,2628,2628,2615,2615,2611,2606,2589,2554,2531,2522,
+2498,2471,2440,2410,2378,2345,2311,2276,2244,2211,2185,2152,2122,2090,2059,2044,2032,2010,1977,1939,
+1929,1917,1897,1862,1825,1791,1789,1805,1815,1796,1794,1785,1762,1760,1742,1698,1680,1645,1606,1561,
+1531,1491,1454,1423,1391,1353,1312,1270,1230,1197,1179,1153,1122,1084,1054,1021,981,939,898,859,
+823,789,754,721,677,629,581,525,454,465,457,414,377,334,293,254,210,172,136,95,
+44,-19,-68,-112,-154,-204,-248,-286,-337,-387,-432,-483,-530,-573,-614,-661,-712,-763,-811,-862,
+-907,-959,-1008,-1055,-1106,-1153,-1198,-1245,-1294,-1340,-1387,-1438,-1487,-1532,-1573,-1610,-1656,-1702,-1743,-1790,
+-1844,-1896,-1938,-1977,-2017,-2062,-2091,-2131,-2178,-2222,-2261,-2294,-2332,-2366,-2387,-2417,-2455,-2492,-2514,-2538,
+-2577,-2615,-2639,-2666,-2698,-2737,-2765,-2805,-2832,-2843,-2881,-2915,-2946,-2969,-2993,-3008,-3034,-3066,-3093,-3108,
+-3115,-3129,-3150,-3172,-3188,-3201,-3212,-3229,-3251,-3269,-3281,-3296,-3301,-3304,-3314,-3323,-3335,-3344,-3342,-3337,
+-3337,-3344,-3347,-3346,-3345,-3342,-3341,-3338,-3335,-3341,-3342,-3344,-3359,-3344,-3334,-3353,-3336,-3330,-3328,-3318,
+-3314,-3314,-3305,-3298,-3286,-3276,-3272,-3274,-3268,-3257,-3237,-3222,-3228,-3216,-3199,-3183,-3173,-3159,-3140,-3120,
+-3117,-3102,-3078,-3050,-3035,-3017,-3005,-2988,-2978,-2966,-2947,-2924,-2901,-2895,-2871,-2855,-2837,-2824,-2808,-2795,
+-2778,-2756,-2727,-2699,-2671,-2649,-2619,-2602,-2589,-2567,-2541,-2504,-2468,-2427,-2388,-2351,-2319,-2282,-2248,-2212,
+-2176,-2144,-2110,-2076,-2044,-2011,-1974,-1943,-1904,-1875,-1845,-1807,-1774,-1741,-1713,-1686,-1649,-1617,-1586,-1557,
+-1540,-1542,-1538,-1538,-1514,-1462,-1467,-1468,-1424,-1378,-1329,-1286,-1253,-1209,-1114,-960,-766,-551,-419,-350,
+-297,-271,-265,-238,-205,-172,-158,-156,-136,-106,-95,-71,-67,-63,-29,29,73,76,53,-67,
+-181,-264,-285,-293,-298,-295,-288,-267,-242,-215,-192,-165,-144,-125,-106,-70,27,52,-8,-5,
+17,41,68,99,122,149,164,172,177,180,187,209,239,231,263,270,274,280,285,293,
+313,346,373,393,416,439,464,491,523,553,580,615,645,664,672,696,743,782,825,866,
+906,921,936,954,948,977,1030,1074,1109,1181,1287,1376,1447,1504,1550,1585,1613,1639,1663,1671,
+1672,1672,1675,1686,1706,1733,1750,1758,1766,1781,1792,1828,1876,1883,1843,1742,1628,1514,1367,1288,
+1245,1140,1054,1056,1151,1315,1464,1616,1713,1787,1805,1755,1712,1689,1672,1664,1658,1673,1721,1769,
+1839,1913,1967,2007,2015,2034,1976,1944,1934,1889,1814,1753,1712,1668,1627,1591,1538,1478,1425,1403,
+1312,1265,1238,1194,1157,1121,1063,1019,989,943,896,851,805,769,732,701,678,658,639,625,
+613,597,575,539,522,519,555,560,544,519,489,449,419,388,368,350,332,329,358,443,
+562,505,425,323,261,215,199,186,185,180,180,180,169,156,134,116,90,66,51,43,
+36,25,13,9,1,-1,-4,29,-14,-36,-54,-60,-52,-46,-57,-68,-78,-93,-108,-126,
+-147,-169,-195,-218,-239,-256,-265,-269,-276,-282,-292,-309,-343,-381,-413,-434,-454,-478,-507,-542,
+-591,-634,-665,-696,-717,-739,-772,-809,-844,-869,-893,-917,-934,-947,-964,-983,-1003,-1016,-1024,-1031,
+-1035,-1037,-1052,-1052,-1062,-1063,-1064,-1054,-1051,-1055,-1063,-1085,-1110,-1126,-1134,-1139,-1147,-1154,-1157,-1163,
+-1179,-1184,-1189,-1205,-1225,-1235,-1228,-1239,-1247,-1260,-1262,-1280,-1292,-1294,-1288,-1293,-1292,-1292,-1289,-1290,
+-1292,-1290,-1294,-1292,-1293,-1289,-1292,-1284,-1291,-1290,-1299,-1302,-1300,-1299,-1299,-1300,-1294,-1292,-1285,-1282,
+-1279,-1281,-1282,-1288,-1291,-1291,-1289,-1287,-1283,-1278,-1266,-1263,-1250,-1245,-1237,-1232,-1232,-1235,-1232,-1221,
+-1214,-1202,-1192,-1191,-1189,-1185,-1183,-1182,-1192,-1207,-1213,-1214,-1220,-1229,-1240,-1254,-1265,-1272,-1273,-1278,
+-1280,-1278,-1272,-1261,-1277,-1292,-1268,-1269,-1265,-1261,-1254,-1240,-1222,-1209,-1199,-1194,-1188,-1187,-1181,-1175,
+-1166,-1161,-1161,-1145,-1134,-1124,-1119,-1112,-1102,-1092,-1084,-1080,-1072,-1074,-1064,-1051,-1033,-1026,-1027,-1020,
+-1027,-1018,-1017,-1016,-1012,-1005,-999,-998,-992,-990,-985,-982,-978,-972,-966,-956,-945,-934,-922,-907,
+-894,-880,-870,-864,-852,-842,-830,-818,-805,-794,-783,-772,-768,-760,-751,-743,-740,-737,-737,-733,
+-728,-725,-718,-705,-698,-684,-675,-658,-631,-604,-567,-545,-548,-496,-452,-426,-408,-391,-375,-359,
+-341,-330,-318,-303,-291,-272,-257,-241,-228,-211,-201,-196,-165,-160,-138,-136,-107,-98,-103,-90,
+-81,-79,-77,-65,-54,-38,-30,-21,-9,3,15,21,29,45,59,69,82,83,83,102,
+115,151,163,164,202,230,253,269,278,295,325,344,368,392,419,449,479,513,542,568,
+595,619,650,688,740,780,815,850,883,915,949,986,1019,1049,1082,1113,1129,1135,1128,1110,
+1078,1032,989,1021,1085,1176,1298,1448,1645,1750,1783,1845,1874,1964,2168,2232,2261,2289,2302,2282,
+2249,2244,2213,2224,2249,2245,2223,2197,2173,2118,2060,1983,1911,1841,1786,1731,1661,1607,1584,1561,
+1549,1519,1486,1471,1434,1407,1395,1398,1387,1356,1333,1310,1301,1295,1293,1304,1319,1335,1334,1325,
+1320,1309,1304,1304,1315,1326,1334,1319,1282,1249,1219,1201,1194,1197,1194,1171,1120,1026,896,777,
+681,584,477,376,288,223,177,137,101,67,33,6,-14,-35,-55,-80,-104,-124,-143,-164,
+-184,-206,-235,-249,-272,-294,-316,-331,-354,-377,-390,-405,-422,-440,-455,-472,-489,-507,-528,-549,
+-567,-586,-601,-616,-634,-648,-665,-681,-696,-709,-718,-726,-732,-735,-737,-744,-749,-750,-743,-737,
+-727,-713,-696,-679,-660,-639,-615,-593,-565,-539,-516,-500,-482,-467,-452,-431,-405,-373,-342,-304,
+-278,-259,-239,-217,-196,-172,-142,-110,-78,-49,-17,24,66,99,153,210,271,323,362,421,
+480,525,571,637,686,727,767,808,838,871,922,956,993,1025,1064,1108,1146,1189,1232,1272,
+1306,1340,1380,1415,1450,1491,1532,1575,1619,1665,1698,1736,1784,1823,1856,1885,1907,1936,1968,1989,
+2027,2058,2092,2119,2156,2184,2215,2226,2243,2260,2266,2285,2311,2326,2348,2364,2390,2458,2445,2435,
+2427,2422,2418,2418,2419,2412,2403,2389,2372,2366,2357,2347,2344,2344,2360,2357,2358,2370,2364,2350,
+2344,2346,2358,2397,2357,2304,2286,2286,2300,2295,2283,2275,2254,2238,2219,2200,2188,2191,2228,2234,
+2287,2173,2073,2038,2014,1983,1964,1948,1927,1933,1928,1903,1891,1898,1875,1853,1843,1827,1820,1812,
+1787,1772,1771,1775,1744,1748,1759,1769,1782,1798,1812,1825,1840,1859,1876,1889,1903,1914,1928,1944,
+1957,1964,1968,1981,1992,2002,2016,2033,2043,2063,2086,2112,2143,2180,2217,2258,2300,2342,2387,2417,
+2451,2482,2518,2546,2572,2592,2619,2642,2666,2686,2699,2717,2725,2724,2712,2691,2668,2673,2721,2811,
+2883,2925,2943,2909,2869,2875,2870,2874,2880,2889,2886,2884,2887,2899,2916,2924,2932,2949,2955,2960,
+2962,2956,2950,2946,2953,2965,2978,2986,2999,2999,2996,3002,3015,3029,3039,3066,3100,3138,3187,3237,
+3282,3310,3364,3425,3489,3541,3567,3567,3567,3567,3575,3575,3564,3555,3556,3547,3518,3474,3428,3389,
+3359,3334,3322,3323,3333,3349,3348,3339,3332,3328,3334,3347,3346,3342,3327,3358,3351,3315,3300,3362,
+3388,3385,3408,3399,3422,3473,3495,3532,3564,3616,3640,3660,3655,3690,3758,3795,3775,3796,3842,3882,
+3903,3957,3986,4000,4012,4038,4077,4137,4164,4199,4221,4238,4244,4246,4248,4217,4237,4367,4390,4387,
+4371,4368,4301,4309,4338,4402,4389,4282,4249,4271,4265,4254,4261,4254,4250,4262,4202,4207,4189,4185,
+4162,4163,4136,4125,4128,4095,4096,4075,4092,4061,3986,3979,3979,3950,3945,3912,3853,3814,3768,3722,
+3678,3664,3645,3623,3597,3562,3529,3495,3456,3415,3373,3336,3295,3264,3232,3202,3167,3144,3132,3106,
+3074,3044,3012,2974,2949,2938,2921,2903,2886,2862,2845,2835,2819,2801,2795,2787,2788,2786,2776,2762,
+2749,2734,2720,2698,2696,2693,2684,2685,2669,2665,2659,2652,2653,2646,2646,2641,2614,2593,2587,2577,
+2555,2529,2506,2479,2447,2416,2382,2350,2314,2279,2251,2224,2196,2165,2132,2115,2096,2078,2043,2007,
+1999,1985,1953,1917,1872,1841,1855,1866,1864,1859,1851,1829,1814,1804,1789,1772,1752,1702,1679,1643,
+1615,1583,1543,1509,1475,1443,1396,1356,1319,1293,1267,1242,1213,1176,1147,1111,1073,1032,994,958,
+917,879,843,813,773,730,680,626,569,581,561,521,483,441,401,367,324,287,241,197,
+149,91,38,0,-38,-92,-136,-177,-219,-266,-324,-368,-416,-467,-508,-552,-598,-646,-704,-753,
+-796,-848,-896,-944,-994,-1042,-1093,-1134,-1181,-1232,-1282,-1329,-1377,-1427,-1470,-1511,-1552,-1590,-1639,-1688,
+-1738,-1788,-1833,-1875,-1914,-1967,-1991,-2024,-2076,-2126,-2162,-2197,-2235,-2277,-2309,-2331,-2360,-2394,-2421,-2458,
+-2489,-2516,-2551,-2577,-2605,-2633,-2672,-2707,-2748,-2784,-2804,-2840,-2863,-2895,-2916,-2936,-2961,-2990,-3025,-3057,
+-3069,-3080,-3096,-3115,-3134,-3151,-3164,-3181,-3200,-3220,-3236,-3246,-3259,-3266,-3273,-3285,-3293,-3303,-3309,-3304,
+-3303,-3310,-3311,-3314,-3315,-3315,-3314,-3309,-3304,-3304,-3302,-3304,-3305,-3308,-3298,-3315,-3310,-3298,-3296,-3301,
+-3289,-3281,-3279,-3275,-3273,-3264,-3252,-3250,-3246,-3237,-3225,-3223,-3220,-3204,-3189,-3173,-3160,-3153,-3135,-3119,
+-3112,-3097,-3076,-3052,-3028,-3013,-2997,-2983,-2971,-2961,-2948,-2924,-2907,-2894,-2869,-2859,-2842,-2824,-2804,-2789,
+-2783,-2767,-2742,-2713,-2683,-2662,-2636,-2612,-2601,-2580,-2549,-2516,-2480,-2444,-2404,-2368,-2333,-2303,-2275,-2244,
+-2211,-2182,-2150,-2118,-2084,-2047,-2013,-1978,-1945,-1915,-1886,-1857,-1826,-1791,-1755,-1715,-1698,-1661,-1625,-1606,
+-1580,-1571,-1557,-1555,-1551,-1533,-1504,-1489,-1498,-1492,-1449,-1386,-1331,-1294,-1268,-1192,-1063,-901,-704,-534,
+-437,-372,-326,-282,-243,-215,-195,-161,-147,-134,-107,-101,-86,-85,-78,-54,-2,26,29,-6,
+-154,-277,-340,-361,-364,-360,-355,-347,-329,-307,-278,-251,-237,-217,-191,-175,-139,-56,-71,-87,
+-71,-49,-32,-5,30,59,84,94,95,106,117,130,142,170,175,154,181,204,204,211,
+234,253,273,301,331,355,376,402,432,462,496,529,555,574,592,609,628,658,701,746,
+782,802,822,849,878,899,925,954,998,1034,1117,1230,1320,1369,1420,1468,1505,1533,1555,1572,
+1588,1599,1590,1588,1595,1618,1643,1673,1695,1714,1723,1735,1794,1901,1941,1845,1708,1569,1484,1382,
+1316,1219,1139,1104,1173,1338,1519,1580,1678,1726,1733,1728,1679,1626,1608,1598,1604,1605,1627,1683,
+1742,1812,1888,1928,1956,1959,1948,1918,1891,1871,1836,1779,1711,1658,1619,1603,1568,1506,1435,1369,
+1320,1277,1240,1212,1180,1145,1098,1052,1023,980,904,842,782,743,715,686,661,644,628,604,
+589,586,560,519,485,465,488,508,498,478,454,429,401,381,359,319,296,274,260,293,
+374,406,565,624,473,330,233,178,145,135,136,128,126,119,105,98,75,50,25,7,
+-1,-8,-20,-32,-36,-47,-53,-58,-57,-48,-73,-96,-96,-88,-82,-81,-92,-115,-134,-150,
+-171,-192,-213,-235,-254,-276,-289,-300,-309,-315,-319,-327,-336,-359,-402,-444,-471,-484,-499,-522,
+-554,-596,-649,-689,-710,-726,-743,-776,-812,-849,-878,-902,-924,-946,-968,-990,-1005,-1021,-1034,-1044,
+-1052,-1057,-1062,-1070,-1077,-1068,-1082,-1069,-1080,-1074,-1074,-1074,-1086,-1108,-1128,-1140,-1138,-1148,-1161,-1168,
+-1175,-1187,-1192,-1191,-1216,-1255,-1234,-1247,-1264,-1273,-1271,-1278,-1282,-1293,-1310,-1319,-1318,-1310,-1310,-1313,
+-1311,-1309,-1313,-1310,-1307,-1304,-1305,-1305,-1311,-1312,-1317,-1324,-1324,-1323,-1320,-1319,-1320,-1319,-1312,-1308,
+-1300,-1296,-1293,-1291,-1295,-1296,-1292,-1289,-1286,-1285,-1277,-1264,-1267,-1268,-1258,-1251,-1249,-1247,-1241,-1233,
+-1221,-1212,-1207,-1198,-1196,-1196,-1197,-1195,-1194,-1198,-1205,-1210,-1209,-1211,-1221,-1234,-1247,-1260,-1264,-1264,
+-1267,-1269,-1273,-1282,-1267,-1260,-1278,-1254,-1261,-1246,-1254,-1241,-1227,-1218,-1209,-1201,-1197,-1187,-1178,-1172,
+-1165,-1155,-1147,-1144,-1142,-1127,-1114,-1104,-1092,-1087,-1084,-1075,-1066,-1057,-1052,-1056,-1058,-1044,-1023,-1025,
+-1023,-1019,-1018,-1019,-1016,-1011,-1006,-1000,-996,-992,-989,-984,-980,-971,-964,-957,-946,-936,-927,-916,
+-904,-891,-885,-869,-859,-842,-839,-825,-820,-810,-804,-789,-781,-774,-767,-761,-757,-737,-740,-735,
+-732,-734,-740,-731,-713,-696,-689,-678,-662,-625,-600,-572,-535,-497,-468,-440,-421,-405,-386,-366,
+-348,-335,-324,-323,-309,-289,-269,-253,-241,-228,-221,-221,-187,-168,-155,-132,-127,-123,-95,-90,
+-95,-81,-68,-54,-46,-44,-35,-23,-16,-5,6,15,24,33,44,59,74,93,109,128,
+137,146,159,174,181,192,217,231,251,274,300,329,354,390,428,449,480,508,540,570,
+598,642,685,728,756,783,808,841,880,923,965,991,1018,1046,1072,1097,1114,1128,1131,1126,
+1111,1078,1040,1010,1069,1156,1250,1366,1537,1735,1816,1870,1896,1887,1938,2123,2235,2243,2302,2299,
+2277,2257,2253,2223,2228,2231,2209,2202,2205,2181,2120,2056,1993,1950,1905,1853,1779,1708,1645,1595,
+1557,1543,1518,1475,1429,1395,1389,1403,1412,1397,1359,1318,1302,1297,1288,1282,1277,1300,1324,1339,
+1336,1326,1307,1291,1280,1285,1294,1290,1273,1244,1205,1177,1159,1140,1128,1132,1105,1020,881,758,
+671,597,502,397,306,245,195,150,112,81,48,21,-6,-28,-46,-65,-88,-113,-132,-153,
+-169,-187,-208,-237,-257,-274,-294,-309,-320,-335,-355,-373,-385,-399,-414,-432,-449,-468,-488,-508,
+-528,-549,-568,-587,-605,-625,-642,-665,-684,-699,-712,-721,-731,-737,-741,-742,-749,-751,-754,-749,
+-742,-731,-716,-700,-683,-662,-642,-619,-595,-567,-540,-520,-501,-484,-470,-449,-430,-405,-375,-346,
+-310,-280,-269,-251,-229,-207,-176,-144,-109,-77,-50,-9,37,73,108,165,215,271,322,381,
+433,478,532,569,628,685,725,770,807,835,863,907,939,995,1036,1082,1116,1151,1190,1229,
+1270,1307,1345,1378,1416,1458,1504,1551,1594,1633,1665,1693,1730,1758,1786,1821,1858,1904,1935,1982,
+2045,2069,2098,2118,2129,2147,2159,2177,2194,2217,2243,2276,2307,2343,2397,2432,2448,2403,2451,2446,
+2429,2421,2417,2421,2415,2412,2418,2417,2412,2404,2399,2399,2401,2385,2386,2379,2386,2385,2367,2364,
+2364,2364,2356,2355,2342,2328,2309,2301,2294,2296,2297,2291,2284,2266,2251,2233,2214,2214,2254,2221,
+2214,2282,2193,2084,2059,2095,2021,1981,1964,1961,1972,2037,1959,1930,1915,1890,1888,1869,1850,1805,
+1779,1779,1763,1751,1744,1729,1733,1742,1769,1802,1826,1838,1847,1857,1867,1882,1892,1906,1922,1935,
+1948,1963,1975,1988,1999,2013,2027,2043,2060,2078,2101,2128,2153,2186,2215,2252,2295,2337,2375,2415,
+2444,2476,2502,2539,2566,2584,2608,2633,2658,2685,2708,2727,2732,2727,2710,2693,2691,2699,2751,2845,
+2905,2932,2906,2895,2901,2878,2868,2873,2882,2886,2891,2892,2886,2887,2892,2920,2934,2928,2928,2927,
+2937,2951,2955,2957,2958,2976,2990,3002,3011,3023,3023,3022,3026,3044,3063,3080,3102,3133,3170,3213,
+3257,3295,3326,3363,3436,3504,3561,3579,3585,3582,3567,3564,3571,3564,3550,3534,3524,3487,3442,3401,
+3376,3351,3333,3323,3326,3340,3347,3351,3345,3330,3330,3336,3344,3347,3335,3313,3310,3303,3276,3300,
+3363,3396,3398,3439,3458,3478,3535,3563,3582,3642,3658,3691,3706,3721,3751,3785,3829,3872,3893,3938,
+3962,3987,4020,4032,4043,4066,4103,4147,4175,4217,4236,4252,4272,4287,4312,4268,4200,4286,4296,4318,
+4325,4326,4336,4302,4310,4373,4439,4372,4262,4266,4284,4293,4272,4287,4259,4245,4253,4218,4216,4231,
+4215,4215,4204,4169,4154,4150,4115,4141,4115,4137,4082,4008,4012,3995,4007,3995,3951,3906,3862,3816,
+3757,3714,3697,3678,3654,3629,3596,3563,3528,3488,3451,3414,3377,3343,3310,3277,3247,3217,3209,3186,
+3154,3115,3088,3050,3013,2999,2982,2960,2939,2917,2900,2877,2855,2840,2824,2818,2817,2817,2808,2801,
+2791,2779,2767,2754,2741,2718,2725,2720,2722,2714,2713,2701,2702,2695,2685,2666,2656,2650,2644,2622,
+2599,2585,2564,2539,2517,2486,2456,2420,2384,2349,2323,2292,2263,2234,2202,2190,2174,2151,2112,2070,
+2057,2043,2006,1969,1928,1909,1933,1936,1923,1916,1906,1896,1878,1858,1835,1818,1801,1774,1745,1723,
+1683,1650,1620,1590,1557,1525,1486,1445,1404,1385,1365,1332,1299,1268,1238,1203,1169,1128,1090,1050,
+1008,973,940,901,866,819,776,725,675,674,658,625,585,544,504,466,425,383,343,302,
+251,200,144,104,63,21,-27,-70,-111,-157,-204,-257,-310,-352,-384,-443,-489,-527,-589,-642,
+-690,-736,-784,-836,-886,-932,-981,-1030,-1076,-1123,-1174,-1225,-1268,-1317,-1374,-1407,-1445,-1485,-1532,-1583,
+-1630,-1679,-1730,-1772,-1812,-1854,-1897,-1920,-1964,-2019,-2064,-2106,-2140,-2180,-2219,-2251,-2275,-2301,-2332,-2376,
+-2412,-2437,-2465,-2493,-2520,-2551,-2581,-2620,-2660,-2695,-2735,-2766,-2797,-2824,-2841,-2855,-2882,-2919,-2948,-2979,
+-3012,-3028,-3042,-3052,-3069,-3089,-3108,-3130,-3154,-3171,-3179,-3196,-3211,-3224,-3234,-3242,-3252,-3261,-3267,-3272,
+-3271,-3272,-3274,-3279,-3287,-3291,-3286,-3279,-3271,-3271,-3270,-3268,-3266,-3265,-3264,-3269,-3275,-3276,-3267,-3259,
+-3262,-3247,-3245,-3237,-3233,-3240,-3241,-3238,-3226,-3217,-3205,-3207,-3195,-3183,-3174,-3168,-3151,-3139,-3124,-3115,
+-3093,-3084,-3074,-3059,-3036,-3010,-2996,-2977,-2966,-2951,-2938,-2921,-2906,-2892,-2877,-2855,-2848,-2835,-2818,-2800,
+-2773,-2764,-2747,-2727,-2703,-2676,-2641,-2619,-2610,-2585,-2556,-2521,-2492,-2463,-2426,-2386,-2355,-2324,-2295,-2269,
+-2241,-2208,-2179,-2150,-2119,-2089,-2054,-2020,-1984,-1953,-1918,-1888,-1861,-1831,-1795,-1757,-1724,-1696,-1674,-1647,
+-1627,-1607,-1598,-1573,-1570,-1548,-1541,-1508,-1487,-1507,-1495,-1492,-1450,-1387,-1341,-1298,-1244,-1154,-1032,-893,
+-716,-545,-447,-370,-305,-260,-217,-171,-157,-164,-170,-131,-107,-81,-73,-68,-45,-26,-14,-31,
+-90,-259,-382,-427,-439,-436,-430,-426,-416,-399,-379,-351,-331,-313,-288,-256,-223,-194,-165,-162,
+-145,-128,-108,-102,-79,-45,-9,17,25,26,30,54,80,96,115,118,122,143,154,149,
+157,173,186,208,232,264,295,321,345,372,402,426,447,467,491,511,539,568,603,641,
+674,720,760,768,796,826,862,885,908,943,1001,1082,1173,1260,1315,1346,1377,1418,1450,1465,
+1472,1481,1498,1514,1520,1519,1533,1562,1588,1618,1657,1676,1689,1759,1922,1980,1881,1711,1559,1476,
+1420,1336,1242,1172,1195,1320,1477,1535,1610,1689,1669,1647,1608,1566,1555,1540,1537,1541,1572,1599,
+1661,1726,1788,1842,1867,1880,1884,1876,1855,1830,1812,1778,1735,1669,1606,1575,1553,1523,1453,1391,
+1346,1298,1265,1245,1222,1171,1131,1093,1047,1012,960,880,797,732,695,671,656,646,627,596,
+578,568,541,500,430,398,424,453,504,469,406,387,371,351,328,305,285,249,223,212,
+208,214,242,316,409,492,401,287,219,160,116,86,71,66,57,66,61,42,14,-10,
+-24,-35,-46,-58,-75,-86,-86,-97,-105,-114,-107,-98,-136,-138,-140,-133,-131,-132,-145,-174,
+-202,-221,-239,-264,-286,-303,-314,-326,-339,-345,-350,-361,-372,-381,-396,-427,-467,-499,-517,-529,
+-550,-573,-607,-650,-696,-726,-746,-760,-784,-813,-852,-887,-913,-936,-959,-980,-1002,-1023,-1041,-1055,
+-1067,-1073,-1078,-1080,-1083,-1087,-1095,-1099,-1083,-1086,-1095,-1093,-1093,-1097,-1107,-1128,-1155,-1157,-1170,-1182,
+-1187,-1201,-1221,-1240,-1235,-1231,-1236,-1243,-1261,-1273,-1289,-1295,-1305,-1304,-1312,-1317,-1315,-1328,-1330,-1326,
+-1336,-1338,-1334,-1329,-1323,-1337,-1329,-1317,-1313,-1314,-1320,-1323,-1339,-1347,-1350,-1347,-1343,-1339,-1333,-1324,
+-1322,-1314,-1310,-1308,-1311,-1312,-1311,-1305,-1297,-1292,-1288,-1274,-1253,-1256,-1264,-1262,-1258,-1253,-1253,-1247,
+-1233,-1218,-1216,-1214,-1208,-1210,-1211,-1206,-1202,-1201,-1202,-1198,-1199,-1204,-1209,-1215,-1225,-1236,-1246,-1251,
+-1255,-1252,-1248,-1246,-1272,-1254,-1249,-1264,-1273,-1247,-1234,-1223,-1214,-1210,-1206,-1201,-1198,-1185,-1180,-1168,
+-1155,-1147,-1136,-1133,-1133,-1127,-1119,-1106,-1099,-1095,-1089,-1084,-1076,-1066,-1061,-1055,-1052,-1052,-1040,-1021,
+-1021,-1012,-1011,-1017,-1016,-1018,-1015,-1011,-1001,-997,-993,-987,-980,-977,-970,-962,-955,-943,-933,-925,
+-911,-895,-885,-876,-869,-856,-841,-837,-829,-832,-823,-815,-802,-786,-771,-769,-767,-763,-759,-763,
+-765,-758,-741,-738,-717,-689,-680,-674,-688,-670,-637,-592,-526,-491,-481,-470,-447,-422,-404,-394,
+-378,-355,-341,-330,-318,-306,-288,-272,-255,-239,-225,-212,-206,-198,-183,-170,-151,-158,-145,-118,
+-115,-99,-89,-92,-86,-69,-49,-30,-16,-4,7,18,24,31,39,34,42,58,67,81,
+97,111,131,148,167,189,211,235,258,284,313,343,375,409,447,478,504,530,554,578,
+608,634,666,703,745,778,808,836,867,909,942,980,997,1015,1046,1071,1098,1116,1130,1131,
+1128,1113,1088,1056,1044,1123,1221,1286,1416,1595,1788,1836,1889,1872,1872,1993,2115,2195,2260,2242,
+2270,2252,2244,2248,2213,2212,2200,2161,2138,2169,2165,2112,2065,2028,1982,1954,1913,1847,1773,1688,
+1618,1582,1546,1514,1455,1415,1390,1381,1379,1381,1382,1355,1302,1259,1253,1240,1234,1241,1260,1291,
+1321,1332,1312,1280,1260,1243,1236,1234,1228,1217,1211,1195,1174,1144,1106,1085,1073,1019,872,738,
+647,583,503,400,311,249,212,170,130,96,68,38,6,-21,-41,-60,-79,-103,-122,-139,
+-163,-174,-189,-207,-232,-251,-269,-287,-294,-304,-320,-334,-346,-362,-374,-388,-406,-423,-445,-464,
+-487,-505,-528,-551,-570,-590,-611,-634,-656,-679,-699,-712,-720,-732,-740,-745,-745,-747,-752,-751,
+-749,-742,-731,-719,-705,-687,-668,-646,-623,-597,-571,-545,-524,-502,-483,-464,-442,-421,-399,-372,
+-345,-319,-290,-271,-253,-229,-205,-169,-133,-96,-55,-29,5,51,89,125,180,242,280,319,
+369,423,468,510,575,624,688,736,779,816,849,886,935,975,1008,1049,1088,1123,1164,1197,
+1240,1279,1315,1348,1392,1430,1472,1517,1561,1600,1640,1677,1717,1757,1799,1836,1862,1905,1938,1964,
+1996,2020,2043,2079,2118,2146,2170,2195,2210,2223,2243,2264,2289,2321,2349,2397,2423,2433,2427,2481,
+2464,2436,2424,2425,2434,2438,2434,2437,2438,2439,2443,2443,2434,2425,2424,2414,2410,2405,2401,2388,
+2382,2362,2361,2355,2348,2354,2340,2325,2309,2303,2301,2308,2313,2315,2300,2288,2270,2246,2222,2190,
+2171,2210,2177,2124,2078,2056,2058,2034,2021,2016,2004,2012,2017,1985,1966,1950,1927,1884,1848,1831,
+1791,1754,1752,1746,1736,1729,1716,1723,1741,1799,1921,1946,1884,1873,1908,1956,1948,1923,1924,1937,
+1951,1964,1979,1990,2015,2026,2042,2057,2074,2091,2112,2142,2167,2200,2226,2259,2289,2330,2355,2391,
+2423,2464,2499,2529,2553,2573,2594,2615,2642,2671,2696,2708,2713,2705,2707,2708,2712,2753,2840,2884,
+2883,2865,2888,2921,2942,2924,2880,2885,2893,2887,2880,2888,2888,2887,2896,2922,2938,2929,2920,2943,
+2928,2919,2941,2951,2967,2978,2990,3010,3026,3031,3036,3044,3043,3058,3076,3099,3117,3139,3173,3205,
+3232,3267,3304,3342,3387,3459,3534,3575,3590,3597,3593,3567,3562,3563,3551,3537,3534,3512,3463,3427,
+3401,3380,3352,3336,3320,3317,3330,3336,3336,3332,3322,3330,3347,3367,3373,3354,3354,3344,3322,3324,
+3327,3360,3391,3422,3469,3539,3544,3585,3606,3647,3677,3709,3748,3765,3781,3843,3899,3921,3939,3968,
+3998,4044,4056,4056,4074,4103,4125,4167,4201,4215,4253,4266,4290,4329,4348,4347,4307,4267,4431,4392,
+4362,4359,4351,4337,4313,4316,4412,4429,4355,4284,4299,4281,4288,4273,4286,4261,4270,4239,4228,4251,
+4247,4235,4230,4207,4188,4197,4160,4153,4153,4150,4170,4136,4058,4056,4055,4057,4045,4016,3976,3917,
+3842,3792,3766,3750,3718,3686,3658,3630,3599,3563,3525,3485,3449,3414,3383,3353,3319,3293,3279,3263,
+3232,3199,3166,3132,3094,3067,3062,3029,3008,2985,2958,2933,2910,2884,2856,2851,2840,2849,2838,2830,
+2823,2814,2807,2794,2777,2766,2752,2753,2760,2762,2748,2748,2737,2738,2730,2706,2695,2691,2676,2668,
+2652,2628,2610,2593,2566,2549,2524,2493,2462,2426,2391,2364,2325,2293,2272,2252,2232,2213,2165,2146,
+2136,2109,2070,2029,1986,1973,1998,1994,1983,1975,1964,1951,1933,1922,1906,1878,1857,1830,1816,1797,
+1765,1728,1694,1664,1635,1605,1571,1532,1483,1448,1447,1418,1391,1355,1322,1290,1258,1220,1178,1142,
+1105,1063,1023,983,952,914,864,807,758,771,749,726,693,657,618,568,526,480,439,403,
+357,310,256,213,167,127,88,35,-5,-48,-96,-145,-193,-245,-294,-337,-375,-425,-477,-531,
+-581,-625,-674,-720,-773,-822,-871,-921,-973,-1014,-1065,-1116,-1162,-1205,-1254,-1304,-1350,-1388,-1429,-1474,
+-1525,-1573,-1624,-1672,-1707,-1746,-1794,-1828,-1866,-1911,-1960,-2009,-2043,-2081,-2121,-2160,-2194,-2220,-2248,-2277,
+-2313,-2338,-2391,-2418,-2436,-2466,-2501,-2535,-2566,-2606,-2642,-2686,-2721,-2753,-2771,-2782,-2801,-2830,-2866,-2900,
+-2932,-2965,-2981,-2995,-3008,-3027,-3047,-3066,-3091,-3100,-3129,-3145,-3159,-3174,-3184,-3192,-3206,-3214,-3224,-3234,
+-3233,-3233,-3234,-3236,-3240,-3251,-3256,-3255,-3248,-3242,-3240,-3236,-3234,-3234,-3229,-3225,-3226,-3235,-3237,-3238,
+-3227,-3219,-3207,-3215,-3208,-3204,-3208,-3205,-3199,-3197,-3185,-3173,-3180,-3171,-3157,-3149,-3138,-3118,-3111,-3107,
+-3093,-3066,-3050,-3046,-3031,-3014,-2993,-2978,-2959,-2947,-2937,-2916,-2899,-2885,-2870,-2860,-2844,-2835,-2822,-2807,
+-2793,-2767,-2749,-2724,-2703,-2684,-2657,-2633,-2615,-2588,-2558,-2531,-2502,-2477,-2437,-2398,-2373,-2343,-2315,-2292,
+-2269,-2243,-2211,-2182,-2153,-2124,-2089,-2053,-2020,-1989,-1954,-1924,-1894,-1864,-1830,-1799,-1766,-1737,-1711,-1688,
+-1664,-1643,-1629,-1623,-1598,-1580,-1554,-1559,-1518,-1490,-1514,-1505,-1499,-1485,-1432,-1375,-1326,-1284,-1222,-1144,
+-1055,-917,-738,-569,-454,-361,-288,-198,-141,-124,-140,-147,-136,-115,-110,-55,-28,-31,-38,-76,
+-106,-183,-303,-439,-485,-495,-498,-500,-495,-484,-470,-448,-424,-399,-375,-339,-287,-193,-194,-238,
+-218,-199,-184,-177,-169,-147,-116,-81,-51,-39,-36,-25,0,28,46,61,61,73,70,81,
+105,117,131,131,145,169,200,231,263,289,309,323,348,370,399,420,445,471,504,537,
+570,605,634,669,700,736,777,808,843,867,892,931,1012,1108,1184,1240,1268,1297,1331,1362,
+1382,1394,1400,1411,1432,1445,1455,1477,1507,1525,1544,1575,1618,1661,1721,1825,1883,1837,1687,1583,
+1541,1437,1333,1243,1186,1261,1380,1448,1553,1624,1607,1533,1497,1486,1466,1451,1442,1447,1479,1530,
+1583,1663,1728,1766,1794,1807,1815,1815,1798,1781,1762,1738,1711,1670,1610,1542,1504,1485,1458,1418,
+1381,1354,1313,1277,1239,1212,1154,1105,1067,1034,1009,944,870,792,715,672,646,642,626,589,
+568,546,514,473,422,388,410,401,394,398,386,342,324,310,302,273,256,264,236,189,
+166,151,127,121,139,179,226,269,380,373,245,125,60,26,4,4,8,10,2,-17,
+-41,-59,-73,-85,-101,-114,-128,-131,-140,-146,-160,-174,-147,-170,-200,-200,-193,-189,-183,-188,
+-216,-249,-271,-287,-309,-329,-348,-358,-368,-377,-385,-394,-406,-420,-431,-445,-468,-497,-521,-540,
+-561,-579,-602,-626,-665,-705,-740,-762,-778,-793,-820,-853,-889,-921,-946,-970,-991,-1013,-1036,-1055,
+-1071,-1088,-1095,-1099,-1101,-1099,-1098,-1098,-1105,-1112,-1098,-1103,-1112,-1113,-1118,-1121,-1135,-1160,-1177,-1182,
+-1199,-1220,-1232,-1247,-1258,-1258,-1257,-1261,-1269,-1277,-1282,-1297,-1310,-1315,-1311,-1309,-1322,-1330,-1338,-1342,
+-1351,-1352,-1359,-1361,-1360,-1353,-1350,-1338,-1329,-1323,-1326,-1335,-1334,-1342,-1353,-1359,-1362,-1359,-1353,-1339,
+-1328,-1321,-1318,-1316,-1315,-1318,-1316,-1312,-1306,-1298,-1292,-1286,-1279,-1270,-1261,-1255,-1252,-1247,-1250,-1251,
+-1246,-1233,-1223,-1215,-1212,-1208,-1205,-1201,-1198,-1198,-1190,-1188,-1185,-1185,-1192,-1202,-1213,-1222,-1228,-1236,
+-1247,-1253,-1248,-1242,-1241,-1252,-1252,-1252,-1239,-1245,-1235,-1223,-1220,-1212,-1206,-1194,-1186,-1184,-1173,-1172,
+-1162,-1157,-1148,-1137,-1133,-1129,-1125,-1126,-1112,-1093,-1088,-1071,-1070,-1064,-1051,-1043,-1024,-1035,-1039,-1029,
+-1017,-1012,-1009,-1016,-1011,-1010,-1007,-1005,-1002,-997,-996,-993,-985,-981,-973,-968,-957,-948,-939,-933,
+-924,-908,-904,-897,-887,-874,-864,-865,-861,-851,-842,-831,-818,-805,-786,-782,-782,-771,-776,-771,
+-781,-773,-769,-769,-749,-769,-803,-790,-740,-685,-649,-589,-502,-468,-453,-454,-455,-451,-437,-423,
+-411,-394,-382,-369,-351,-334,-322,-309,-295,-282,-267,-254,-242,-225,-213,-204,-198,-183,-184,-168,
+-163,-167,-140,-130,-136,-149,-134,-123,-94,-85,-68,-47,-35,-23,-9,-13,2,18,37,70,
+100,113,123,134,144,162,189,232,274,309,334,349,358,391,418,444,477,508,538,569,
+598,644,674,704,735,769,796,819,849,878,924,946,967,989,1019,1049,1078,1102,1118,1134,
+1137,1128,1111,1085,1055,1071,1156,1233,1308,1404,1568,1745,1816,1848,1824,1876,1987,2155,2236,2260,
+2270,2249,2229,2233,2223,2218,2200,2175,2133,2107,2108,2099,2099,2087,2050,2022,1990,1953,1918,1858,
+1759,1667,1602,1552,1503,1443,1398,1382,1358,1342,1327,1325,1311,1269,1232,1213,1204,1198,1206,1217,
+1244,1283,1303,1281,1248,1219,1201,1191,1190,1189,1186,1190,1188,1168,1135,1100,1067,1027,896,738,
+628,560,489,383,297,243,212,188,154,117,84,63,35,5,-24,-48,-69,-87,-109,-131,
+-151,-171,-182,-198,-221,-239,-255,-273,-283,-286,-291,-303,-313,-323,-336,-350,-362,-379,-397,-418,
+-442,-461,-484,-508,-532,-553,-575,-598,-622,-647,-670,-692,-709,-720,-731,-740,-747,-749,-749,-749,
+-748,-742,-737,-727,-717,-703,-687,-671,-651,-630,-602,-574,-548,-524,-501,-476,-452,-434,-414,-395,
+-373,-347,-316,-279,-251,-230,-205,-176,-144,-108,-72,-37,-10,24,48,84,139,188,229,276,
+322,391,445,486,522,585,633,678,722,754,799,844,885,928,974,1018,1057,1103,1148,1183,
+1216,1256,1290,1326,1364,1406,1443,1480,1526,1566,1609,1650,1684,1709,1748,1793,1831,1870,1909,1947,
+1979,2000,2042,2070,2098,2131,2153,2173,2196,2209,2236,2254,2271,2299,2329,2369,2409,2427,2432,2424,
+2488,2483,2469,2452,2451,2455,2454,2453,2459,2461,2464,2464,2458,2450,2442,2434,2429,2417,2410,2408,
+2393,2384,2376,2372,2371,2370,2369,2359,2346,2347,2346,2343,2338,2334,2317,2301,2286,2273,2256,2235,
+2210,2181,2165,2147,2127,2091,2068,2065,2057,2046,2054,2034,2028,2023,2006,1970,1943,1933,1893,1844,
+1815,1765,1742,1737,1721,1714,1716,1820,1808,1787,1838,2026,2054,1970,1966,2043,2088,2034,1952,1940,
+1948,1962,1979,1993,2014,2025,2046,2063,2081,2104,2122,2146,2171,2207,2236,2259,2285,2321,2353,2387,
+2414,2444,2473,2507,2539,2564,2590,2613,2638,2660,2674,2680,2682,2681,2683,2703,2741,2808,2849,2816,
+2807,2822,2839,2891,2919,2927,2907,2897,2891,2896,2894,2891,2874,2877,2912,2937,2946,2950,2938,2932,
+2925,2944,2960,2958,2959,2973,3003,3016,3021,3031,3038,3045,3062,3073,3086,3108,3127,3146,3179,3210,
+3238,3264,3300,3338,3384,3435,3497,3559,3594,3614,3622,3612,3580,3550,3536,3525,3527,3510,3474,3461,
+3467,3444,3404,3365,3338,3319,3314,3318,3318,3321,3322,3335,3343,3367,3385,3383,3375,3366,3343,3331,
+3386,3397,3407,3432,3473,3518,3582,3624,3646,3652,3688,3718,3789,3839,3827,3883,3954,3990,4007,4022,
+4049,4082,4096,4099,4103,4134,4159,4180,4223,4251,4274,4301,4329,4357,4383,4373,4371,4313,4311,4434,
+4386,4447,4427,4407,4370,4334,4400,4438,4415,4345,4308,4309,4302,4289,4296,4283,4255,4263,4247,4258,
+4251,4271,4268,4245,4232,4232,4208,4184,4189,4170,4159,4162,4140,4070,4053,4065,4083,4085,4069,4000,
+3933,3883,3846,3824,3796,3753,3722,3691,3659,3630,3599,3565,3524,3489,3456,3427,3399,3369,3348,3338,
+3314,3280,3248,3214,3177,3139,3136,3111,3076,3052,3028,2992,2969,2942,2914,2887,2882,2869,2875,2864,
+2854,2847,2833,2825,2813,2801,2798,2796,2779,2784,2792,2778,2773,2783,2769,2750,2747,2742,2727,2714,
+2693,2682,2664,2641,2615,2604,2581,2559,2527,2499,2469,2437,2396,2366,2346,2317,2291,2260,2224,2211,
+2200,2174,2139,2099,2062,2066,2063,2056,2044,2037,2020,2010,1998,1979,1962,1944,1919,1893,1871,1852,
+1822,1791,1766,1739,1714,1682,1655,1614,1553,1525,1526,1503,1476,1449,1410,1374,1340,1304,1273,1232,
+1194,1157,1122,1074,1031,999,960,898,833,855,840,804,771,740,711,677,632,585,540,497,
+453,408,368,319,281,230,189,144,101,57,13,-34,-88,-134,-183,-232,-276,-319,-368,-414,
+-467,-515,-566,-613,-660,-710,-758,-811,-860,-912,-954,-1003,-1056,-1101,-1144,-1195,-1241,-1291,-1338,-1375,
+-1423,-1467,-1519,-1572,-1613,-1643,-1689,-1731,-1766,-1807,-1853,-1902,-1955,-1988,-2023,-2060,-2096,-2131,-2162,-2187,
+-2221,-2261,-2298,-2335,-2362,-2385,-2415,-2451,-2484,-2520,-2558,-2600,-2639,-2673,-2699,-2715,-2727,-2748,-2778,-2818,
+-2860,-2890,-2911,-2933,-2946,-2962,-2983,-3003,-3024,-3048,-3062,-3082,-3105,-3120,-3132,-3144,-3153,-3165,-3178,-3188,
+-3194,-3197,-3197,-3197,-3201,-3208,-3218,-3224,-3219,-3217,-3214,-3210,-3206,-3204,-3202,-3196,-3191,-3200,-3203,-3197,
+-3193,-3195,-3182,-3172,-3183,-3178,-3173,-3175,-3171,-3163,-3159,-3152,-3142,-3147,-3142,-3127,-3116,-3102,-3086,-3080,
+-3074,-3063,-3038,-3025,-3022,-3005,-2984,-2973,-2958,-2942,-2928,-2915,-2902,-2885,-2873,-2858,-2841,-2826,-2821,-2805,
+-2785,-2772,-2750,-2735,-2717,-2688,-2662,-2643,-2630,-2610,-2579,-2550,-2514,-2478,-2447,-2414,-2390,-2358,-2333,-2312,
+-2293,-2268,-2242,-2211,-2178,-2145,-2117,-2083,-2050,-2017,-1989,-1960,-1927,-1894,-1864,-1832,-1799,-1773,-1747,-1722,
+-1693,-1669,-1656,-1631,-1630,-1615,-1595,-1579,-1577,-1547,-1509,-1510,-1514,-1510,-1486,-1463,-1437,-1377,-1335,-1281,
+-1241,-1185,-1080,-925,-747,-554,-460,-350,-256,-189,-134,-109,-116,-125,-125,-129,-97,-34,-21,-66,
+-126,-189,-255,-365,-478,-540,-557,-564,-563,-558,-549,-532,-515,-495,-463,-422,-383,-368,-313,-317,
+-302,-277,-254,-244,-236,-225,-204,-178,-149,-120,-104,-96,-79,-55,-27,-9,3,11,0,-10,
+28,68,72,73,81,100,127,142,162,186,207,223,249,277,310,333,360,390,422,448,
+474,506,537,565,600,637,677,715,756,797,824,841,854,900,987,1070,1132,1173,1208,1245,
+1269,1295,1312,1320,1325,1345,1363,1384,1424,1460,1484,1491,1507,1554,1632,1713,1791,1833,1755,1715,
+1676,1537,1382,1247,1147,1112,1170,1258,1416,1451,1396,1349,1318,1310,1298,1297,1315,1344,1376,1428,
+1495,1577,1664,1716,1730,1736,1737,1736,1732,1718,1692,1673,1652,1624,1589,1536,1476,1443,1424,1407,
+1387,1348,1327,1294,1253,1206,1170,1123,1076,1038,1030,1034,922,839,766,709,673,657,632,584,
+559,534,482,444,435,418,409,386,354,335,326,298,266,243,235,233,211,193,197,186,
+163,139,111,81,56,49,52,72,135,288,472,317,140,43,-4,-18,-39,-42,-45,-56,
+-70,-84,-99,-108,-122,-134,-151,-168,-171,-173,-176,-185,-204,-215,-219,-247,-249,-248,-245,-237,
+-244,-260,-293,-321,-333,-347,-363,-384,-400,-412,-422,-428,-439,-453,-468,-481,-497,-515,-535,-550,
+-566,-591,-595,-628,-660,-689,-722,-757,-781,-796,-808,-823,-860,-898,-931,-953,-975,-997,-1022,-1043,
+-1065,-1081,-1095,-1107,-1116,-1120,-1119,-1117,-1111,-1110,-1114,-1119,-1118,-1125,-1131,-1137,-1146,-1151,-1165,-1186,
+-1210,-1222,-1229,-1249,-1266,-1275,-1287,-1285,-1276,-1278,-1286,-1291,-1306,-1308,-1329,-1341,-1329,-1325,-1328,-1336,
+-1350,-1358,-1362,-1362,-1365,-1364,-1356,-1353,-1352,-1344,-1342,-1343,-1343,-1338,-1343,-1350,-1360,-1367,-1366,-1361,
+-1349,-1337,-1328,-1328,-1328,-1324,-1322,-1319,-1313,-1305,-1301,-1293,-1290,-1288,-1272,-1267,-1257,-1252,-1248,-1247,
+-1242,-1236,-1235,-1226,-1217,-1212,-1204,-1201,-1200,-1196,-1191,-1187,-1185,-1182,-1187,-1188,-1207,-1221,-1226,-1231,
+-1239,-1247,-1242,-1244,-1248,-1248,-1249,-1246,-1246,-1234,-1228,-1217,-1212,-1207,-1203,-1197,-1190,-1187,-1177,-1171,
+-1166,-1162,-1161,-1155,-1144,-1134,-1120,-1119,-1112,-1093,-1087,-1083,-1080,-1078,-1065,-1060,-1053,-1044,-1037,-1030,
+-1023,-1017,-1008,-1007,-1007,-1009,-1009,-1003,-999,-996,-994,-990,-980,-979,-976,-969,-960,-951,-942,-935,
+-929,-919,-916,-900,-901,-895,-891,-884,-866,-872,-872,-855,-836,-827,-819,-808,-799,-800,-794,-783,
+-778,-766,-743,-737,-746,-739,-751,-761,-762,-768,-753,-729,-698,-651,-634,-604,-575,-545,-490,-458,
+-445,-437,-433,-424,-404,-393,-379,-367,-350,-336,-309,-297,-286,-264,-247,-225,-214,-201,-192,-176,
+-155,-139,-129,-127,-129,-117,-108,-96,-78,-62,-52,-34,-32,-34,-17,-11,-27,8,28,57,
+85,126,147,166,162,177,219,239,254,297,313,341,374,398,422,437,486,516,547,576,
+600,623,657,686,716,749,780,803,830,854,880,914,940,965,990,1021,1051,1079,1102,1121,
+1133,1140,1126,1105,1072,1047,1083,1168,1248,1312,1393,1555,1713,1792,1801,1811,1886,2008,2113,2209,
+2226,2235,2268,2239,2212,2212,2237,2215,2172,2154,2131,2129,2102,2094,2072,2040,2008,1986,1955,1942,
+1885,1787,1687,1598,1546,1496,1433,1381,1364,1350,1326,1298,1284,1261,1244,1229,1212,1192,1178,1176,
+1186,1208,1234,1247,1242,1224,1204,1187,1175,1171,1170,1170,1176,1176,1154,1124,1082,1038,933,779,
+644,556,480,387,299,241,211,190,167,133,100,74,52,27,0,-29,-53,-74,-93,-113,
+-133,-152,-164,-166,-194,-218,-239,-253,-269,-271,-277,-279,-293,-307,-314,-324,-335,-347,-358,-377,
+-397,-416,-438,-462,-486,-513,-533,-557,-580,-607,-633,-657,-680,-696,-712,-721,-733,-742,-746,-748,
+-746,-742,-738,-731,-723,-713,-700,-688,-671,-653,-630,-606,-580,-551,-526,-501,-476,-454,-428,-402,
+-382,-358,-333,-312,-281,-245,-209,-177,-151,-118,-92,-54,-18,7,38,64,98,155,212,255,
+293,328,391,446,492,524,585,638,688,726,764,807,844,880,926,968,1020,1064,1103,1149,
+1186,1225,1261,1296,1332,1382,1422,1460,1503,1547,1586,1621,1663,1701,1742,1783,1818,1860,1892,1925,
+1955,1989,2018,2042,2072,2098,2130,2161,2184,2209,2227,2241,2267,2290,2318,2338,2370,2410,2461,2487,
+2462,2474,2528,2514,2496,2494,2471,2476,2475,2470,2471,2468,2474,2465,2456,2452,2442,2430,2433,2421,
+2409,2395,2389,2383,2383,2375,2365,2355,2355,2360,2366,2358,2352,2359,2357,2353,2347,2330,2318,2303,
+2276,2246,2213,2193,2167,2140,2119,2127,2121,2110,2099,2092,2100,2083,2050,2029,2000,1953,1919,1875,
+1842,1808,1778,1742,1735,1746,1773,1820,2130,2121,1988,1957,2108,2239,2244,2246,2239,2074,1995,1961,
+1958,1961,1973,1991,2010,2027,2041,2057,2084,2097,2123,2143,2169,2200,2228,2252,2280,2310,2339,2377,
+2409,2435,2466,2494,2520,2547,2578,2599,2620,2634,2648,2655,2655,2654,2670,2706,2771,2784,2803,2810,
+2836,2888,2888,2875,2855,2850,2875,2905,2902,2914,2910,2897,2881,2886,2911,2934,2937,2935,2953,2954,
+2957,2928,2966,2974,2967,2986,3003,3008,3031,3038,3041,3068,3068,3087,3105,3120,3139,3158,3180,3209,
+3234,3264,3309,3354,3384,3415,3462,3515,3553,3578,3596,3603,3598,3572,3547,3535,3513,3504,3480,3480,
+3495,3483,3451,3410,3379,3354,3340,3325,3314,3309,3311,3315,3342,3364,3386,3393,3390,3384,3366,3348,
+3380,3443,3445,3490,3517,3530,3565,3607,3678,3713,3736,3754,3784,3832,3896,3889,3943,4016,4048,4059,
+4071,4093,4131,4148,4162,4169,4180,4206,4243,4292,4318,4333,4348,4371,4395,4395,4395,4399,4306,4352,
+4389,4362,4429,4428,4420,4371,4328,4397,4421,4401,4327,4306,4319,4303,4289,4307,4283,4292,4290,4289,
+4285,4280,4301,4296,4287,4285,4286,4250,4220,4225,4202,4196,4194,4162,4088,4062,4052,4048,4044,4037,
+4015,3987,3954,3917,3869,3827,3794,3761,3723,3694,3665,3634,3598,3561,3534,3504,3478,3453,3425,3414,
+3395,3368,3336,3305,3264,3223,3195,3169,3144,3102,3078,3047,3018,2993,2977,2939,2915,2914,2907,2898,
+2901,2896,2888,2874,2862,2856,2841,2829,2817,2802,2811,2812,2800,2809,2799,2784,2792,2791,2774,2759,
+2745,2729,2711,2698,2676,2660,2633,2618,2588,2560,2533,2504,2464,2438,2415,2396,2371,2321,2305,2294,
+2268,2239,2201,2165,2135,2139,2131,2121,2109,2100,2091,2077,2061,2043,2024,2000,1977,1955,1936,1908,
+1888,1857,1833,1806,1777,1748,1723,1684,1629,1617,1618,1590,1551,1521,1494,1466,1432,1393,1356,1320,
+1287,1251,1215,1176,1129,1089,1050,1004,945,936,914,889,853,819,788,749,715,681,645,598,
+548,512,456,424,385,355,289,244,206,162,112,65,19,-24,-81,-127,-175,-217,-262,-309,
+-358,-410,-451,-503,-553,-604,-648,-695,-748,-796,-851,-898,-947,-995,-1037,-1086,-1136,-1189,-1231,-1281,
+-1324,-1367,-1413,-1466,-1513,-1546,-1583,-1632,-1663,-1702,-1750,-1800,-1851,-1902,-1938,-1973,-2004,-2036,-2063,-2104,
+-2143,-2164,-2192,-2234,-2276,-2307,-2333,-2366,-2404,-2436,-2474,-2512,-2551,-2591,-2622,-2644,-2654,-2669,-2698,-2731,
+-2777,-2819,-2849,-2866,-2883,-2899,-2913,-2933,-2958,-2987,-3004,-3025,-3043,-3063,-3080,-3093,-3106,-3116,-3126,-3140,
+-3150,-3155,-3159,-3157,-3156,-3163,-3172,-3178,-3181,-3186,-3188,-3186,-3183,-3177,-3173,-3167,-3159,-3157,-3174,-3167,
+-3159,-3154,-3154,-3146,-3140,-3138,-3138,-3141,-3141,-3138,-3134,-3128,-3119,-3120,-3121,-3114,-3104,-3090,-3076,-3064,
+-3058,-3046,-3028,-3009,-3003,-2995,-2975,-2957,-2942,-2930,-2916,-2904,-2892,-2880,-2865,-2853,-2840,-2825,-2811,-2814,
+-2787,-2768,-2756,-2727,-2714,-2696,-2672,-2645,-2628,-2606,-2579,-2553,-2524,-2490,-2459,-2429,-2404,-2379,-2353,-2332,
+-2312,-2291,-2265,-2234,-2210,-2178,-2145,-2111,-2080,-2048,-2020,-1989,-1959,-1929,-1901,-1872,-1840,-1812,-1782,-1761,
+-1740,-1716,-1693,-1667,-1642,-1632,-1626,-1605,-1586,-1577,-1560,-1544,-1516,-1513,-1499,-1496,-1488,-1489,-1463,-1395,
+-1351,-1322,-1273,-1185,-1050,-880,-661,-542,-461,-365,-294,-212,-124,-65,-25,-43,-136,-147,-123,-119,
+-109,-175,-257,-340,-403,-515,-591,-619,-621,-619,-613,-609,-598,-581,-557,-535,-510,-477,-452,-430,
+-400,-369,-344,-321,-305,-295,-283,-258,-237,-214,-192,-171,-156,-136,-112,-101,-92,-81,-83,-64,
+-39,-19,-5,3,14,29,49,65,74,83,104,131,156,180,212,248,291,312,341,427,
+421,417,446,474,506,539,573,607,638,682,724,762,795,816,833,881,952,1007,1058,1108,
+1141,1163,1186,1202,1217,1220,1237,1269,1298,1334,1395,1442,1459,1485,1552,1635,1698,1707,1723,1763,
+1745,1645,1533,1414,1240,1113,1048,1039,1021,1079,1099,1087,1093,1106,1118,1150,1187,1233,1298,1350,
+1414,1484,1569,1642,1674,1675,1667,1652,1643,1660,1665,1605,1580,1553,1524,1493,1462,1419,1393,1367,
+1357,1341,1307,1275,1240,1203,1160,1123,1083,1043,1003,966,933,876,798,744,718,706,669,603,
+565,530,468,448,458,459,436,390,333,294,289,289,253,201,158,144,152,144,132,135,
+125,108,92,77,56,27,1,-6,-3,22,77,149,169,157,60,-17,-23,-70,-81,-89,
+-102,-121,-140,-151,-161,-168,-175,-187,-199,-206,-207,-213,-221,-244,-268,-288,-301,-307,-296,-300,
+-301,-306,-314,-335,-358,-377,-383,-396,-419,-440,-456,-466,-475,-485,-497,-509,-523,-535,-554,-575,
+-592,-602,-613,-638,-659,-694,-716,-740,-764,-783,-801,-817,-843,-875,-909,-938,-958,-980,-1003,-1024,
+-1047,-1069,-1087,-1102,-1120,-1131,-1139,-1141,-1136,-1125,-1120,-1124,-1132,-1142,-1141,-1147,-1158,-1164,-1168,-1179,
+-1193,-1212,-1233,-1253,-1276,-1291,-1301,-1308,-1296,-1297,-1302,-1306,-1299,-1304,-1331,-1329,-1340,-1344,-1329,-1327,
+-1335,-1347,-1360,-1357,-1360,-1364,-1365,-1357,-1356,-1358,-1351,-1346,-1344,-1347,-1347,-1349,-1356,-1359,-1366,-1366,
+-1362,-1356,-1349,-1345,-1343,-1342,-1345,-1339,-1334,-1323,-1316,-1308,-1303,-1298,-1292,-1281,-1279,-1268,-1261,-1254,
+-1252,-1242,-1240,-1235,-1231,-1224,-1218,-1211,-1201,-1197,-1192,-1185,-1181,-1180,-1180,-1189,-1198,-1204,-1210,-1215,
+-1216,-1230,-1231,-1229,-1234,-1238,-1242,-1239,-1236,-1237,-1225,-1214,-1208,-1201,-1200,-1194,-1191,-1187,-1181,-1178,
+-1176,-1160,-1154,-1153,-1146,-1138,-1126,-1113,-1100,-1099,-1098,-1089,-1083,-1067,-1065,-1062,-1049,-1040,-1037,-1035,
+-1031,-1020,-1016,-1002,-1002,-1002,-1002,-998,-999,-994,-991,-989,-986,-984,-975,-973,-966,-960,-951,-942,
+-934,-923,-921,-912,-900,-897,-890,-887,-889,-879,-883,-873,-853,-843,-851,-850,-821,-805,-811,-788,
+-769,-768,-759,-740,-729,-730,-731,-731,-720,-719,-721,-734,-742,-741,-712,-668,-621,-582,-556,-512,
+-493,-474,-468,-457,-453,-426,-415,-403,-384,-361,-347,-330,-322,-305,-285,-259,-230,-213,-197,-179,
+-166,-156,-147,-140,-129,-112,-97,-91,-80,-73,-65,-57,-40,-16,1,19,40,59,78,90,
+111,135,156,178,201,226,236,264,297,320,347,345,361,421,440,452,485,504,528,559,
+579,613,637,670,703,730,766,791,817,843,869,890,916,944,975,1002,1030,1064,1091,1114,
+1130,1143,1139,1126,1100,1060,1031,1080,1177,1274,1337,1435,1584,1698,1753,1748,1771,1857,1971,2082,
+2116,2205,2188,2240,2216,2184,2199,2205,2196,2194,2171,2169,2160,2106,2087,2072,2022,1996,1974,1916,
+1893,1844,1739,1641,1566,1512,1471,1426,1373,1349,1338,1325,1308,1286,1258,1228,1230,1216,1199,1182,
+1168,1172,1190,1212,1215,1210,1201,1194,1186,1177,1173,1173,1172,1161,1145,1123,1089,1040,958,828,
+697,595,511,419,316,249,212,190,168,139,105,76,53,38,16,-8,-34,-58,-80,-102,
+-122,-139,-158,-170,-188,-217,-228,-245,-244,-264,-270,-272,-277,-289,-301,-307,-311,-318,-327,-336,
+-353,-377,-398,-419,-440,-463,-487,-512,-538,-563,-591,-615,-639,-659,-679,-691,-707,-720,-735,-742,
+-743,-743,-744,-735,-725,-719,-708,-697,-688,-674,-656,-636,-615,-586,-558,-529,-500,-476,-452,-428,
+-407,-386,-359,-332,-308,-278,-245,-202,-160,-130,-102,-71,-34,-3,14,40,85,126,175,232,
+294,332,358,426,478,518,545,596,638,687,729,767,809,846,885,927,967,1018,1066,1107,
+1149,1188,1224,1262,1301,1330,1373,1415,1451,1488,1533,1572,1616,1665,1706,1748,1778,1814,1849,1884,
+1917,1943,1972,1998,2036,2071,2101,2136,2171,2191,2216,2243,2266,2288,2319,2354,2360,2381,2411,2431,
+2471,2479,2490,2475,2496,2505,2486,2484,2482,2461,2467,2470,2473,2473,2469,2464,2456,2451,2444,2442,
+2434,2429,2410,2402,2400,2378,2372,2379,2379,2391,2387,2366,2363,2373,2374,2355,2345,2344,2335,2322,
+2299,2268,2240,2226,2201,2179,2190,2174,2166,2153,2133,2134,2134,2120,2095,2078,2038,1988,1945,1925,
+1877,1851,1820,1781,1769,1797,1871,1989,2130,2418,2434,2273,2166,2181,2336,2337,2219,2120,2095,2038,
+1987,1969,1971,1984,2002,2021,2043,2057,2071,2087,2105,2124,2154,2182,2212,2237,2267,2297,2329,2356,
+2387,2412,2443,2470,2490,2512,2533,2557,2580,2588,2594,2608,2626,2652,2696,2729,2699,2714,2712,2779,
+2881,2885,2867,2850,2877,2891,2866,2836,2858,2889,2908,2893,2896,2907,2924,2922,2938,2942,2945,2945,
+2954,2963,2962,2972,2977,2987,3002,3021,3028,3042,3048,3058,3068,3081,3106,3133,3149,3172,3195,3217,
+3235,3262,3303,3357,3400,3426,3437,3457,3484,3510,3535,3550,3552,3540,3526,3517,3515,3508,3491,3487,
+3494,3483,3465,3438,3411,3389,3377,3364,3342,3318,3294,3281,3302,3340,3373,3389,3391,3386,3368,3361,
+3378,3427,3494,3497,3536,3581,3621,3650,3670,3719,3775,3806,3813,3857,3914,3932,3959,4013,4085,4115,
+4112,4133,4169,4207,4209,4215,4232,4247,4258,4303,4351,4378,4394,4400,4407,4434,4452,4428,4472,4309,
+4410,4362,4376,4403,4396,4376,4334,4320,4379,4388,4363,4305,4297,4332,4321,4304,4320,4313,4326,4312,
+4309,4310,4324,4329,4336,4326,4322,4309,4288,4255,4249,4238,4234,4222,4181,4119,4119,4108,4087,4070,
+4067,4062,4048,4019,3968,3908,3879,3840,3798,3765,3735,3703,3666,3636,3603,3578,3553,3528,3499,3482,
+3472,3448,3421,3391,3356,3310,3277,3248,3213,3185,3154,3126,3098,3064,3035,3006,2989,2967,2953,2946,
+2930,2928,2923,2915,2908,2901,2887,2870,2849,2838,2828,2831,2828,2829,2826,2802,2810,2816,2805,2789,
+2776,2759,2748,2735,2719,2706,2689,2669,2640,2616,2588,2559,2526,2508,2483,2466,2438,2389,2383,2378,
+2350,2314,2270,2231,2211,2204,2195,2185,2175,2165,2158,2141,2122,2102,2082,2059,2037,2017,1994,1981,
+1959,1932,1904,1878,1848,1823,1784,1749,1717,1708,1696,1673,1641,1601,1568,1536,1507,1482,1450,1406,
+1372,1338,1309,1272,1241,1202,1169,1103,1027,1010,990,962,941,909,870,833,797,760,718,683,
+650,608,546,506,474,444,399,348,300,260,213,164,117,70,27,-16,-66,-115,-161,-206,
+-252,-302,-348,-396,-443,-493,-545,-589,-635,-685,-734,-783,-833,-885,-929,-976,-1026,-1085,-1135,-1175,
+-1218,-1269,-1316,-1366,-1410,-1451,-1487,-1532,-1566,-1601,-1644,-1698,-1751,-1804,-1849,-1887,-1919,-1946,-1977,-2018,
+-2042,-2069,-2105,-2137,-2168,-2214,-2247,-2273,-2306,-2350,-2391,-2429,-2464,-2499,-2536,-2566,-2586,-2600,-2613,-2645,
+-2686,-2733,-2777,-2800,-2814,-2834,-2852,-2867,-2886,-2913,-2944,-2968,-2986,-3005,-3018,-3039,-3051,-3068,-3078,-3091,
+-3102,-3106,-3115,-3118,-3121,-3124,-3128,-3135,-3137,-3145,-3155,-3160,-3160,-3158,-3151,-3141,-3134,-3123,-3129,-3134,
+-3132,-3126,-3115,-3115,-3115,-3106,-3106,-3109,-3109,-3111,-3104,-3099,-3095,-3092,-3093,-3092,-3086,-3075,-3063,-3052,
+-3042,-3031,-3021,-2996,-2976,-2978,-2964,-2949,-2929,-2912,-2904,-2893,-2881,-2871,-2861,-2845,-2827,-2815,-2800,-2795,
+-2790,-2767,-2756,-2737,-2710,-2697,-2677,-2652,-2630,-2610,-2589,-2559,-2530,-2500,-2472,-2448,-2420,-2396,-2368,-2347,
+-2325,-2309,-2292,-2266,-2239,-2208,-2176,-2144,-2111,-2074,-2047,-2020,-1990,-1959,-1930,-1901,-1872,-1839,-1814,-1795,
+-1774,-1754,-1730,-1699,-1675,-1643,-1627,-1617,-1598,-1590,-1573,-1555,-1547,-1526,-1511,-1504,-1504,-1509,-1502,-1495,
+-1476,-1432,-1381,-1332,-1256,-1151,-1015,-822,-639,-572,-466,-350,-248,-148,-70,-50,-43,-79,-135,-172,
+-146,-201,-271,-328,-422,-485,-584,-641,-672,-669,-666,-662,-660,-651,-632,-612,-589,-568,-551,-523,
+-491,-460,-435,-408,-389,-378,-370,-354,-325,-298,-277,-259,-239,-229,-217,-198,-184,-178,-170,-161,
+-121,-108,-96,-81,-61,-35,-16,-16,-16,-6,16,34,58,87,117,149,181,223,252,277,
+315,340,361,385,410,441,479,514,544,565,597,643,687,737,775,791,801,838,886,927,
+974,1013,1055,1080,1092,1108,1120,1145,1180,1207,1259,1331,1383,1420,1487,1594,1635,1652,1663,1712,
+1761,1740,1664,1547,1407,1190,1033,958,897,837,840,873,910,942,983,1032,1082,1133,1191,1268,
+1343,1404,1476,1553,1591,1600,1591,1573,1553,1542,1543,1536,1502,1479,1452,1428,1418,1378,1355,1328,
+1297,1287,1275,1237,1197,1156,1123,1098,1068,1041,1010,957,911,866,823,775,755,739,704,647,
+602,551,502,480,463,449,425,373,312,258,225,211,208,209,148,101,73,73,64,71,
+76,63,62,44,22,12,-7,-34,-58,-65,-63,-51,-33,16,97,20,-43,-28,-22,-80,
+-122,-147,-166,-185,-196,-205,-212,-221,-226,-225,-234,-239,-235,-249,-268,-296,-317,-331,-364,-356,
+-349,-353,-356,-366,-380,-393,-411,-419,-431,-449,-473,-490,-512,-524,-529,-535,-546,-564,-582,-599,
+-619,-636,-647,-657,-673,-697,-722,-732,-759,-783,-800,-820,-837,-863,-895,-928,-950,-970,-989,-1006,
+-1029,-1046,-1069,-1088,-1109,-1123,-1142,-1152,-1155,-1157,-1151,-1144,-1142,-1154,-1141,-1147,-1167,-1177,-1183,-1191,
+-1202,-1214,-1226,-1238,-1258,-1280,-1300,-1317,-1339,-1329,-1312,-1307,-1334,-1333,-1336,-1345,-1334,-1346,-1356,-1356,
+-1342,-1346,-1362,-1369,-1371,-1374,-1372,-1382,-1377,-1371,-1361,-1366,-1370,-1371,-1371,-1372,-1375,-1375,-1378,-1374,
+-1371,-1366,-1359,-1354,-1351,-1352,-1354,-1355,-1354,-1351,-1340,-1326,-1316,-1318,-1303,-1296,-1288,-1284,-1277,-1266,
+-1260,-1257,-1251,-1240,-1230,-1227,-1218,-1212,-1203,-1197,-1194,-1190,-1187,-1182,-1181,-1180,-1184,-1183,-1187,-1187,
+-1193,-1207,-1214,-1212,-1215,-1222,-1221,-1215,-1212,-1212,-1215,-1213,-1210,-1198,-1196,-1189,-1189,-1187,-1183,-1180,
+-1169,-1165,-1159,-1159,-1150,-1140,-1128,-1123,-1113,-1103,-1102,-1097,-1079,-1065,-1053,-1042,-1043,-1047,-1042,-1023,
+-1020,-1012,-1011,-1005,-996,-999,-999,-994,-993,-992,-990,-986,-985,-986,-982,-976,-978,-968,-961,-958,
+-951,-936,-917,-919,-908,-903,-891,-887,-882,-875,-871,-862,-852,-840,-833,-833,-856,-834,-799,-818,
+-816,-806,-794,-766,-759,-747,-732,-733,-731,-730,-721,-724,-728,-722,-697,-659,-620,-585,-542,-524,
+-497,-492,-499,-512,-504,-489,-463,-443,-426,-408,-402,-377,-367,-356,-337,-308,-284,-259,-243,-235,
+-203,-177,-185,-174,-164,-144,-124,-113,-102,-86,-67,-57,-40,-21,3,30,56,78,102,125,
+142,165,177,195,219,247,255,278,308,330,359,387,403,398,414,458,475,509,527,544,
+573,588,616,642,677,707,740,769,798,822,847,872,898,926,952,982,1012,1044,1073,1085,
+1101,1113,1128,1131,1116,1086,1047,1022,1084,1193,1296,1369,1468,1621,1709,1747,1745,1764,1826,1920,
+2093,2119,2164,2144,2171,2153,2130,2157,2162,2146,2149,2158,2169,2146,2132,2101,2101,2045,2011,1973,
+1916,1840,1771,1690,1600,1525,1484,1455,1421,1384,1363,1331,1316,1309,1284,1258,1242,1226,1217,1204,
+1189,1174,1166,1178,1196,1206,1202,1200,1199,1193,1193,1189,1188,1176,1137,1106,1068,1012,927,826,
+718,622,536,441,343,268,220,190,167,138,111,82,58,37,21,0,-19,-43,-68,-90,
+-111,-132,-151,-168,-184,-197,-216,-223,-237,-253,-257,-264,-264,-275,-280,-278,-282,-288,-291,-298,
+-314,-342,-368,-395,-410,-424,-442,-467,-492,-518,-547,-571,-597,-618,-637,-659,-679,-693,-708,-721,
+-732,-735,-737,-735,-730,-720,-716,-708,-698,-690,-679,-662,-640,-618,-590,-561,-533,-509,-487,-459,
+-437,-409,-387,-362,-336,-314,-282,-251,-217,-177,-142,-109,-81,-53,-38,-18,22,67,103,149,
+202,265,326,375,431,479,513,556,601,638,682,727,768,809,852,897,937,974,1023,1072,
+1112,1150,1184,1218,1264,1292,1328,1368,1407,1451,1490,1530,1564,1605,1643,1691,1730,1774,1817,1838,
+1882,1911,1941,1965,1993,2030,2071,2105,2142,2176,2202,2228,2251,2277,2297,2324,2346,2350,2396,2405,
+2426,2462,2504,2524,2492,2535,2530,2517,2507,2485,2468,2476,2478,2484,2481,2476,2469,2464,2459,2449,
+2443,2439,2436,2422,2421,2416,2397,2390,2377,2378,2366,2365,2375,2384,2376,2370,2350,2350,2342,2332,
+2319,2313,2301,2277,2260,2243,2220,2196,2203,2196,2191,2184,2169,2146,2132,2113,2070,2028,1988,1956,
+1946,1931,1919,1912,1887,1874,1942,2112,2294,2418,2426,2371,2260,2171,2060,2072,2084,2038,2091,2213,
+2088,2001,1987,1993,2006,2023,2042,2063,2077,2086,2105,2120,2143,2172,2202,2228,2251,2280,2304,2335,
+2359,2384,2409,2438,2458,2473,2497,2518,2527,2530,2543,2570,2633,2694,2672,2627,2685,2782,2806,2852,
+2855,2836,2830,2825,2821,2848,2858,2864,2842,2842,2869,2864,2877,2894,2912,2910,2914,2913,2925,2936,
+2939,2949,2968,2962,2967,2980,2999,3014,3032,3052,3063,3066,3073,3086,3106,3127,3149,3171,3200,3225,
+3253,3273,3299,3348,3399,3436,3453,3450,3464,3472,3475,3487,3502,3506,3498,3490,3482,3486,3484,3475,
+3463,3460,3460,3437,3429,3408,3394,3393,3381,3355,3322,3285,3279,3304,3345,3375,3385,3387,3376,3372,
+3370,3417,3460,3524,3539,3583,3645,3683,3713,3745,3781,3862,3892,3887,3919,3954,3977,4024,4118,4154,
+4164,4180,4212,4245,4255,4260,4270,4293,4300,4297,4367,4404,4411,4421,4432,4437,4456,4463,4426,4503,
+4336,4491,4373,4371,4375,4368,4386,4334,4359,4378,4391,4347,4321,4320,4353,4336,4327,4345,4349,4342,
+4337,4340,4350,4358,4362,4363,4352,4341,4331,4309,4301,4291,4278,4270,4256,4203,4167,4173,4169,4160,
+4144,4128,4139,4091,4038,4005,3986,3933,3883,3843,3810,3775,3741,3710,3680,3650,3625,3603,3567,3541,
+3540,3524,3499,3472,3438,3396,3352,3337,3292,3265,3235,3201,3170,3144,3115,3082,3047,3023,2998,2995,
+2984,2962,2949,2947,2942,2935,2924,2907,2892,2877,2861,2852,2850,2844,2859,2844,2842,2840,2831,2814,
+2799,2788,2781,2768,2754,2738,2720,2701,2683,2667,2640,2606,2585,2566,2549,2531,2495,2457,2457,2446,
+2414,2376,2337,2304,2283,2277,2265,2256,2244,2232,2222,2208,2184,2160,2141,2118,2098,2077,2062,2043,
+2019,1997,1971,1941,1916,1890,1858,1819,1805,1791,1767,1742,1722,1682,1648,1617,1586,1555,1528,1493,
+1460,1429,1393,1363,1333,1293,1250,1178,1097,1075,1056,1037,1015,987,953,914,878,842,801,763,
+720,683,650,603,563,521,482,445,408,360,311,266,225,169,124,82,36,-10,-56,-105,
+-152,-201,-240,-289,-339,-389,-439,-483,-530,-578,-623,-675,-724,-773,-823,-869,-918,-973,-1027,-1070,
+-1115,-1161,-1219,-1266,-1306,-1353,-1386,-1430,-1471,-1503,-1547,-1597,-1652,-1710,-1760,-1798,-1832,-1862,-1888,-1916,
+-1949,-1984,-2021,-2043,-2076,-2117,-2160,-2192,-2222,-2254,-2293,-2337,-2373,-2415,-2446,-2477,-2505,-2530,-2545,-2567,
+-2597,-2640,-2681,-2721,-2745,-2760,-2783,-2803,-2823,-2841,-2871,-2896,-2922,-2933,-2960,-2975,-2995,-3011,-3025,-3038,
+-3046,-3055,-3064,-3073,-3080,-3087,-3086,-3093,-3099,-3101,-3109,-3116,-3127,-3126,-3131,-3123,-3115,-3103,-3098,-3102,
+-3100,-3099,-3092,-3085,-3085,-3085,-3076,-3085,-3085,-3081,-3079,-3072,-3068,-3060,-3059,-3060,-3060,-3052,-3042,-3029,
+-3024,-3018,-3010,-2998,-2971,-2950,-2943,-2939,-2925,-2904,-2886,-2873,-2864,-2851,-2842,-2834,-2823,-2808,-2796,-2778,
+-2776,-2767,-2753,-2733,-2709,-2697,-2678,-2661,-2635,-2608,-2587,-2566,-2538,-2512,-2487,-2462,-2435,-2412,-2388,-2366,
+-2344,-2325,-2307,-2283,-2256,-2231,-2207,-2174,-2137,-2104,-2075,-2043,-2018,-1994,-1964,-1932,-1900,-1870,-1847,-1823,
+-1804,-1783,-1759,-1732,-1699,-1674,-1639,-1616,-1607,-1598,-1587,-1563,-1552,-1541,-1519,-1504,-1493,-1494,-1502,-1503,
+-1490,-1478,-1479,-1444,-1376,-1311,-1229,-1121,-956,-766,-643,-528,-434,-342,-244,-163,-156,-152,-150,-165,
+-201,-219,-284,-333,-388,-490,-545,-651,-723,-732,-723,-710,-708,-698,-687,-668,-651,-629,-611,-596,
+-562,-532,-509,-492,-473,-456,-444,-431,-408,-384,-360,-340,-320,-304,-296,-288,-277,-264,-233,-224,
+-212,-194,-191,-170,-149,-112,-95,-90,-94,-85,-74,-56,-33,-1,24,54,86,121,149,180,
+216,245,274,295,322,364,394,407,434,463,486,512,554,602,658,706,729,730,756,814,
+848,879,920,953,978,1002,1022,1037,1059,1097,1145,1193,1264,1320,1375,1462,1530,1545,1630,1641,
+1708,1684,1636,1553,1448,1286,1080,936,834,783,775,795,830,880,927,977,1028,1085,1139,1199,
+1278,1356,1410,1447,1483,1508,1512,1502,1481,1459,1440,1431,1419,1402,1388,1369,1356,1338,1317,1302,
+1274,1230,1209,1176,1124,1085,1054,1034,1014,993,967,936,895,847,803,776,766,767,725,652,
+602,539,497,473,448,420,380,338,285,238,198,162,151,146,139,111,68,45,25,-14,
+-12,2,-6,-23,-25,-35,-44,-60,-76,-96,-115,-128,-136,-134,-128,-113,-106,-69,62,97,
+-50,-134,-181,-212,-234,-251,-259,-268,-273,-272,-271,-269,-272,-276,-287,-304,-326,-348,-388,-390,
+-383,-392,-395,-397,-410,-422,-437,-451,-463,-478,-482,-493,-514,-543,-562,-570,-575,-586,-603,-624,
+-644,-663,-683,-696,-709,-721,-735,-744,-755,-784,-801,-822,-842,-861,-886,-913,-947,-968,-986,-1002,
+-1027,-1044,-1057,-1077,-1093,-1110,-1127,-1146,-1158,-1169,-1175,-1175,-1171,-1165,-1169,-1182,-1171,-1193,-1199,-1210,
+-1219,-1233,-1241,-1252,-1266,-1279,-1296,-1313,-1339,-1350,-1355,-1341,-1356,-1344,-1331,-1344,-1350,-1353,-1351,-1372,
+-1371,-1373,-1380,-1370,-1360,-1384,-1388,-1389,-1392,-1393,-1395,-1397,-1404,-1408,-1407,-1403,-1402,-1405,-1407,-1392,
+-1386,-1382,-1375,-1369,-1361,-1353,-1349,-1356,-1364,-1362,-1355,-1347,-1336,-1322,-1320,-1310,-1299,-1289,-1279,-1277,
+-1272,-1263,-1260,-1255,-1250,-1239,-1226,-1218,-1213,-1206,-1199,-1199,-1199,-1192,-1191,-1190,-1186,-1185,-1184,-1178,
+-1184,-1192,-1198,-1201,-1207,-1197,-1193,-1203,-1206,-1201,-1203,-1195,-1192,-1190,-1190,-1189,-1185,-1181,-1167,-1160,
+-1160,-1160,-1151,-1145,-1149,-1143,-1134,-1130,-1126,-1113,-1104,-1087,-1080,-1087,-1078,-1073,-1035,-1037,-1042,-1028,
+-1026,-1021,-1014,-1007,-997,-992,-997,-991,-994,-990,-984,-983,-981,-980,-982,-973,-968,-966,-962,-955,
+-944,-941,-928,-926,-917,-909,-901,-895,-889,-874,-860,-851,-848,-835,-823,-821,-834,-847,-844,-830,
+-828,-828,-824,-808,-795,-779,-770,-769,-761,-738,-725,-719,-713,-697,-676,-645,-613,-580,-554,-527,
+-493,-495,-487,-484,-481,-480,-473,-467,-461,-446,-429,-411,-384,-367,-350,-331,-316,-305,-286,-272,
+-248,-222,-200,-180,-160,-148,-134,-118,-103,-88,-72,-52,-37,-23,-2,18,40,62,88,113,
+136,158,176,193,210,231,249,266,282,310,329,350,371,419,454,461,476,505,521,532,
+559,579,602,630,654,694,718,745,776,804,827,854,882,903,921,936,958,990,1026,1059,
+1097,1128,1139,1138,1132,1107,1070,1030,1014,1096,1199,1284,1362,1506,1690,1732,1755,1733,1747,1805,
+1901,2047,2117,2128,2146,2122,2133,2107,2109,2136,2131,2113,2112,2132,2145,2121,2103,2078,2051,1990,
+1931,1871,1816,1748,1654,1562,1489,1453,1435,1427,1410,1385,1358,1326,1320,1295,1254,1236,1228,1208,
+1201,1189,1177,1165,1162,1171,1190,1202,1207,1204,1203,1198,1185,1169,1136,1094,1047,969,872,784,
+703,623,543,461,372,295,239,200,171,140,112,87,63,42,26,8,-12,-30,-53,-75,
+-95,-114,-133,-150,-164,-182,-193,-208,-218,-231,-239,-236,-250,-252,-250,-250,-252,-259,-259,-256,
+-266,-289,-317,-352,-383,-404,-415,-431,-454,-473,-496,-523,-547,-573,-596,-615,-636,-655,-675,-692,
+-702,-714,-723,-729,-731,-727,-726,-720,-712,-702,-693,-679,-657,-635,-610,-585,-560,-538,-515,-491,
+-466,-442,-415,-390,-364,-339,-315,-280,-251,-217,-181,-142,-107,-77,-50,-31,-3,43,89,132,
+180,235,282,345,396,445,497,538,582,626,663,702,737,780,816,855,902,936,970,1021,
+1063,1107,1139,1170,1208,1244,1277,1316,1355,1395,1426,1477,1520,1558,1607,1649,1694,1738,1772,1805,
+1841,1878,1911,1940,1971,2005,2040,2078,2113,2153,2183,2208,2233,2258,2283,2312,2329,2360,2377,2394,
+2410,2433,2465,2493,2535,2537,2519,2532,2520,2519,2504,2482,2493,2488,2494,2495,2485,2482,2480,2476,
+2467,2454,2447,2438,2429,2417,2427,2409,2389,2365,2351,2365,2359,2351,2356,2357,2351,2346,2325,2325,
+2324,2307,2295,2291,2279,2265,2254,2230,2214,2212,2210,2196,2173,2169,2160,2131,2096,2058,2030,2003,
+1983,2000,2063,2180,2302,2225,2063,2146,2326,2433,2426,2229,2137,2038,1970,1929,1928,1957,2027,2027,
+2060,2063,2034,2025,2023,2032,2045,2064,2085,2101,2111,2121,2145,2169,2194,2218,2244,2270,2298,2318,
+2336,2356,2376,2390,2416,2435,2460,2474,2482,2496,2533,2594,2601,2559,2581,2687,2792,2800,2803,2811,
+2811,2806,2806,2802,2819,2836,2847,2846,2838,2803,2807,2848,2895,2897,2899,2912,2923,2921,2920,2921,
+2929,2932,2941,2950,2968,2977,2984,3011,3038,3055,3069,3079,3082,3090,3111,3129,3144,3167,3194,3223,
+3252,3279,3296,3326,3374,3414,3430,3433,3424,3421,3424,3430,3439,3454,3460,3459,3454,3448,3446,3434,
+3419,3401,3403,3420,3419,3413,3398,3390,3390,3377,3346,3315,3299,3309,3320,3345,3364,3380,3384,3381,
+3393,3411,3438,3490,3560,3597,3639,3690,3728,3765,3791,3839,3939,3958,3954,4003,4029,4038,4127,4192,
+4205,4238,4244,4266,4296,4302,4314,4333,4370,4364,4375,4443,4458,4471,4487,4455,4439,4473,4424,4391,
+4468,4363,4466,4359,4347,4365,4384,4356,4340,4368,4380,4383,4342,4326,4355,4375,4367,4358,4377,4368,
+4364,4366,4368,4377,4388,4385,4381,4369,4363,4358,4349,4342,4332,4321,4314,4291,4253,4220,4201,4197,
+4193,4183,4156,4138,4133,4101,4056,4016,3973,3927,3890,3852,3820,3785,3756,3729,3701,3670,3636,3602,
+3598,3590,3570,3545,3517,3480,3436,3408,3372,3327,3294,3264,3234,3209,3179,3151,3119,3082,3056,3037,
+3034,3014,2995,2978,2966,2969,2963,2951,2934,2915,2901,2892,2883,2870,2881,2883,2882,2882,2870,2850,
+2836,2815,2808,2807,2793,2776,2758,2738,2729,2713,2680,2662,2651,2622,2597,2579,2546,2527,2526,2500,
+2465,2422,2390,2372,2364,2348,2331,2321,2315,2303,2287,2269,2247,2223,2201,2177,2156,2138,2119,2099,
+2078,2054,2030,2003,1980,1951,1928,1897,1890,1866,1837,1807,1778,1753,1726,1698,1664,1634,1603,1572,
+1536,1509,1479,1444,1407,1376,1320,1229,1166,1147,1126,1109,1088,1060,1031,995,959,921,880,843,
+802,759,718,681,645,611,573,526,484,444,409,370,322,271,226,181,136,91,42,-5,
+-50,-99,-144,-188,-236,-280,-335,-387,-425,-469,-515,-565,-615,-664,-714,-761,-811,-866,-921,-963,
+-1010,-1054,-1099,-1161,-1224,-1251,-1298,-1331,-1376,-1407,-1444,-1498,-1554,-1608,-1662,-1712,-1750,-1775,-1795,-1823,
+-1853,-1885,-1918,-1959,-1996,-2030,-2071,-2111,-2140,-2175,-2209,-2246,-2291,-2324,-2356,-2388,-2418,-2447,-2475,-2497,
+-2522,-2555,-2587,-2630,-2664,-2689,-2709,-2732,-2754,-2771,-2795,-2826,-2850,-2877,-2890,-2912,-2930,-2953,-2971,-2985,
+-2995,-3002,-3013,-3026,-3034,-3041,-3050,-3052,-3056,-3060,-3065,-3075,-3088,-3093,-3097,-3095,-3095,-3086,-3075,-3070,
+-3080,-3074,-3066,-3057,-3049,-3046,-3054,-3055,-3057,-3057,-3054,-3049,-3047,-3040,-3029,-3034,-3038,-3031,-3023,-3010,
+-3000,-2996,-2992,-2986,-2971,-2946,-2922,-2912,-2913,-2902,-2884,-2864,-2845,-2837,-2825,-2817,-2808,-2795,-2786,-2771,
+-2757,-2760,-2751,-2735,-2712,-2690,-2687,-2671,-2640,-2610,-2590,-2568,-2545,-2521,-2495,-2472,-2448,-2423,-2403,-2383,
+-2361,-2342,-2323,-2301,-2277,-2252,-2223,-2196,-2163,-2131,-2101,-2071,-2045,-2016,-1988,-1957,-1927,-1896,-1871,-1849,
+-1831,-1808,-1788,-1764,-1738,-1707,-1672,-1635,-1595,-1580,-1588,-1586,-1567,-1553,-1541,-1535,-1516,-1491,-1479,-1484,
+-1493,-1500,-1489,-1480,-1482,-1448,-1363,-1264,-1162,-1028,-845,-656,-547,-495,-433,-351,-282,-257,-278,-253,
+-255,-257,-297,-361,-410,-470,-572,-645,-736,-788,-799,-778,-764,-747,-731,-716,-696,-675,-660,-650,
+-634,-610,-583,-562,-542,-533,-516,-502,-485,-462,-441,-424,-402,-381,-370,-361,-344,-327,-316,-305,
+-294,-289,-281,-257,-228,-211,-195,-182,-180,-169,-162,-152,-130,-97,-60,-27,-1,25,53,85,
+124,157,186,213,243,259,324,367,374,370,375,399,437,471,516,571,623,652,667,685,
+710,752,801,822,853,889,927,960,984,1022,1061,1106,1147,1199,1257,1314,1383,1444,1510,1583,
+1620,1584,1522,1462,1360,1238,1068,917,820,794,810,846,894,953,998,1052,1110,1154,1203,1244,
+1276,1318,1374,1417,1420,1426,1433,1436,1436,1425,1409,1399,1387,1402,1384,1374,1369,1363,1342,1315,
+1286,1258,1219,1179,1126,1065,1017,992,982,964,930,898,867,828,779,746,725,716,686,622,
+571,511,482,449,388,372,354,322,289,246,208,177,134,113,130,107,82,45,0,-38,
+-83,-105,-85,-85,-89,-94,-100,-109,-116,-123,-141,-159,-180,-197,-205,-208,-211,-200,-158,-93,
+-60,-105,-145,-184,-227,-270,-294,-310,-321,-328,-322,-318,-315,-318,-323,-328,-337,-353,-385,-409,
+-423,-432,-429,-446,-442,-455,-471,-488,-503,-509,-509,-513,-519,-539,-568,-595,-610,-618,-627,-643,
+-664,-684,-705,-729,-746,-760,-772,-779,-786,-799,-810,-822,-846,-875,-890,-907,-929,-956,-982,-1005,
+-1029,-1048,-1062,-1077,-1083,-1112,-1125,-1137,-1152,-1168,-1176,-1184,-1188,-1189,-1188,-1188,-1198,-1207,-1210,-1219,
+-1231,-1244,-1258,-1270,-1279,-1287,-1303,-1316,-1332,-1351,-1368,-1375,-1378,-1381,-1369,-1363,-1366,-1367,-1373,-1373,
+-1378,-1385,-1393,-1390,-1394,-1393,-1402,-1399,-1392,-1399,-1402,-1406,-1407,-1414,-1409,-1411,-1411,-1413,-1411,-1404,
+-1404,-1393,-1385,-1381,-1372,-1360,-1365,-1366,-1363,-1368,-1365,-1353,-1352,-1345,-1329,-1321,-1311,-1305,-1295,-1288,
+-1283,-1276,-1268,-1264,-1259,-1256,-1249,-1233,-1229,-1221,-1212,-1205,-1199,-1205,-1203,-1202,-1195,-1192,-1193,-1185,
+-1179,-1187,-1180,-1187,-1187,-1188,-1186,-1186,-1192,-1193,-1191,-1189,-1179,-1178,-1176,-1177,-1170,-1167,-1163,-1159,
+-1155,-1147,-1142,-1134,-1131,-1131,-1127,-1124,-1108,-1114,-1108,-1100,-1094,-1084,-1075,-1054,-1060,-1052,-1044,-1033,
+-1025,-1017,-1010,-1008,-1006,-996,-990,-993,-989,-985,-987,-981,-981,-978,-976,-976,-967,-961,-953,-945,
+-933,-929,-915,-914,-916,-909,-904,-893,-885,-875,-865,-858,-851,-849,-834,-827,-825,-823,-822,-815,
+-808,-802,-799,-809,-791,-788,-790,-776,-761,-759,-748,-719,-703,-683,-658,-635,-606,-577,-553,-538,
+-532,-523,-513,-500,-488,-487,-484,-471,-474,-470,-451,-427,-403,-387,-369,-352,-337,-321,-304,-289,
+-272,-255,-238,-220,-199,-181,-164,-150,-132,-114,-99,-85,-66,-47,-26,-3,12,35,61,86,
+117,139,162,183,200,209,224,246,257,280,293,337,359,381,408,443,477,487,516,530,
+550,576,593,626,651,682,702,728,757,781,798,820,846,869,887,911,942,969,1000,1029,
+1065,1091,1119,1125,1123,1114,1087,1050,1017,1010,1101,1186,1236,1331,1494,1687,1717,1717,1734,1754,
+1820,1927,2011,2134,2159,2130,2177,2129,2090,2077,2119,2115,2100,2121,2116,2121,2084,2051,2021,2012,
+1992,1909,1828,1765,1687,1619,1531,1465,1437,1422,1414,1398,1368,1353,1344,1329,1305,1252,1227,1202,
+1194,1182,1177,1165,1153,1144,1156,1172,1193,1194,1192,1195,1190,1167,1133,1091,1034,932,828,749,
+678,612,539,466,398,329,266,214,178,150,120,94,76,61,43,21,0,-21,-41,-65,
+-88,-107,-125,-144,-157,-166,-181,-193,-210,-222,-226,-235,-241,-245,-243,-242,-242,-243,-246,-249,
+-252,-260,-278,-304,-334,-361,-382,-400,-422,-436,-453,-476,-499,-526,-550,-574,-597,-617,-637,-655,
+-668,-682,-695,-705,-710,-715,-715,-714,-709,-705,-695,-682,-666,-648,-626,-605,-584,-562,-541,-520,
+-493,-468,-446,-423,-395,-370,-345,-321,-286,-259,-226,-189,-156,-123,-90,-62,-34,-7,61,108,
+166,211,253,311,370,423,465,506,547,593,636,675,716,749,785,819,860,897,937,971,
+1017,1049,1096,1153,1183,1217,1242,1278,1311,1348,1378,1402,1447,1495,1544,1585,1631,1672,1720,1769,
+1811,1848,1882,1916,1953,1992,2021,2053,2093,2119,2158,2189,2212,2238,2266,2286,2311,2348,2365,2370,
+2389,2419,2442,2448,2496,2533,2531,2522,2562,2553,2536,2513,2499,2510,2509,2517,2508,2511,2509,2491,
+2484,2472,2459,2457,2454,2444,2437,2428,2419,2405,2376,2364,2362,2359,2351,2348,2339,2324,2335,2354,
+2353,2324,2313,2288,2273,2261,2264,2257,2239,2221,2212,2201,2187,2177,2163,2152,2106,2078,2064,2042,
+2037,2060,2087,2200,2432,2499,2327,2079,2103,2257,2304,2229,1931,1942,2027,1943,1949,2005,2053,2037,
+2063,2121,2162,2132,2063,2054,2055,2064,2087,2112,2130,2143,2162,2181,2200,2229,2256,2281,2299,2323,
+2337,2349,2360,2370,2390,2409,2437,2484,2497,2512,2532,2518,2497,2552,2665,2744,2771,2775,2778,2788,
+2792,2794,2803,2811,2814,2828,2846,2850,2848,2811,2767,2821,2877,2867,2880,2912,2926,2929,2931,2919,
+2919,2947,2972,2977,2967,2985,2990,3010,3024,3054,3072,3085,3092,3104,3117,3134,3154,3171,3195,3226,
+3259,3298,3319,3322,3335,3349,3376,3382,3377,3378,3377,3384,3393,3407,3421,3428,3431,3428,3424,3414,
+3400,3387,3381,3393,3411,3413,3407,3386,3380,3379,3366,3342,3310,3310,3319,3331,3338,3357,3370,3378,
+3391,3422,3487,3484,3520,3599,3654,3702,3721,3754,3830,3851,3914,4001,4007,4013,4062,4065,4108,4230,
+4262,4278,4296,4310,4314,4344,4357,4364,4378,4399,4407,4465,4511,4509,4532,4540,4516,4486,4484,4365,
+4357,4376,4384,4421,4349,4340,4379,4386,4353,4368,4411,4410,4383,4349,4348,4366,4374,4367,4383,4386,
+4385,4381,4382,4387,4392,4391,4393,4395,4395,4390,4377,4363,4343,4326,4316,4299,4297,4287,4268,4246,
+4233,4231,4231,4226,4198,4165,4137,4101,4058,4012,3971,3933,3895,3861,3830,3801,3771,3743,3710,3677,
+3654,3648,3633,3611,3587,3556,3517,3476,3443,3400,3352,3318,3291,3260,3229,3203,3181,3148,3117,3092,
+3074,3055,3036,3019,3005,2996,2990,2982,2970,2957,2944,2924,2911,2902,2888,2911,2909,2912,2908,2893,
+2877,2863,2847,2842,2837,2823,2805,2789,2771,2745,2726,2714,2692,2668,2650,2631,2608,2600,2595,2565,
+2520,2477,2448,2446,2431,2416,2401,2388,2372,2366,2353,2332,2310,2289,2268,2242,2220,2197,2175,2159,
+2136,2115,2087,2062,2037,2016,1984,1955,1957,1929,1898,1866,1840,1819,1804,1769,1739,1712,1683,1653,
+1618,1582,1546,1513,1477,1432,1372,1282,1243,1226,1210,1185,1164,1134,1104,1069,1035,1000,960,925,
+893,840,796,764,729,692,653,611,568,527,483,443,403,367,328,278,230,183,137,94,
+47,0,-50,-92,-130,-179,-230,-282,-324,-370,-413,-465,-508,-556,-607,-658,-703,-751,-808,-861,
+-907,-956,-1001,-1053,-1104,-1160,-1210,-1235,-1277,-1310,-1346,-1392,-1452,-1507,-1563,-1613,-1661,-1696,-1718,-1739,
+-1762,-1795,-1826,-1870,-1905,-1945,-1981,-2015,-2053,-2091,-2124,-2162,-2199,-2237,-2272,-2303,-2330,-2359,-2388,-2421,
+-2453,-2481,-2514,-2549,-2579,-2606,-2633,-2660,-2682,-2703,-2723,-2752,-2786,-2813,-2837,-2853,-2868,-2887,-2909,-2929,
+-2940,-2950,-2960,-2974,-2988,-2997,-3004,-3016,-3020,-3027,-3027,-3035,-3048,-3056,-3058,-3063,-3065,-3062,-3054,-3041,
+-3043,-3045,-3042,-3040,-3030,-3021,-3014,-3023,-3024,-3025,-3025,-3020,-3019,-3017,-3013,-3006,-3009,-3008,-2997,-2988,
+-2976,-2966,-2963,-2962,-2953,-2939,-2920,-2899,-2878,-2881,-2882,-2864,-2842,-2821,-2811,-2804,-2795,-2787,-2774,-2762,
+-2743,-2723,-2737,-2724,-2716,-2706,-2665,-2663,-2647,-2622,-2602,-2580,-2557,-2533,-2504,-2483,-2463,-2442,-2418,-2394,
+-2375,-2355,-2337,-2316,-2296,-2271,-2245,-2217,-2186,-2153,-2125,-2098,-2071,-2046,-2016,-1985,-1950,-1925,-1896,-1870,
+-1848,-1828,-1810,-1793,-1767,-1740,-1707,-1670,-1643,-1611,-1594,-1583,-1582,-1574,-1559,-1551,-1537,-1523,-1509,-1491,
+-1477,-1477,-1484,-1490,-1478,-1465,-1443,-1373,-1304,-1229,-1116,-945,-717,-601,-537,-499,-432,-381,-328,-303,
+-333,-349,-357,-365,-434,-483,-572,-671,-738,-799,-835,-844,-834,-821,-802,-779,-750,-716,-685,-683,
+-685,-675,-654,-634,-612,-594,-585,-577,-563,-542,-520,-496,-479,-456,-432,-415,-402,-387,-375,-364,
+-352,-341,-343,-334,-322,-311,-279,-266,-260,-247,-243,-239,-219,-190,-153,-117,-82,-54,-35,0,
+29,55,88,124,153,180,192,245,310,303,313,289,309,350,399,438,483,512,547,572,
+591,630,693,742,773,785,811,854,893,925,962,1011,1085,1138,1183,1237,1290,1385,1477,1541,
+1568,1526,1464,1350,1292,1230,1141,1000,887,869,902,961,1023,1075,1121,1158,1200,1247,1287,1341,
+1376,1404,1429,1457,1483,1469,1462,1448,1441,1441,1435,1423,1417,1411,1404,1389,1372,1355,1341,1316,
+1288,1262,1241,1221,1183,1136,1091,1052,1028,1015,986,941,902,865,820,760,709,676,628,589,
+539,479,447,406,359,318,301,283,268,246,206,159,114,82,52,35,20,8,-27,-70,
+-112,-155,-178,-172,-167,-164,-166,-170,-174,-180,-184,-196,-203,-219,-241,-261,-267,-272,-267,-255,
+-234,-213,-182,-163,-119,-202,-291,-333,-356,-370,-376,-374,-369,-367,-371,-373,-374,-376,-389,-402,
+-423,-446,-455,-478,-483,-483,-495,-512,-524,-551,-551,-542,-539,-551,-570,-590,-618,-642,-656,-667,
+-681,-698,-719,-746,-773,-790,-801,-814,-823,-828,-836,-837,-851,-884,-895,-926,-939,-955,-977,-1000,
+-1023,-1043,-1066,-1084,-1098,-1110,-1127,-1138,-1151,-1161,-1173,-1185,-1196,-1200,-1206,-1208,-1208,-1213,-1221,-1223,
+-1226,-1247,-1263,-1279,-1296,-1308,-1313,-1321,-1332,-1343,-1357,-1370,-1380,-1392,-1401,-1405,-1403,-1394,-1387,-1389,
+-1385,-1392,-1403,-1410,-1413,-1420,-1419,-1405,-1402,-1409,-1410,-1413,-1413,-1415,-1416,-1415,-1416,-1416,-1416,-1415,
+-1411,-1406,-1403,-1397,-1396,-1397,-1387,-1354,-1372,-1373,-1366,-1364,-1356,-1349,-1348,-1343,-1330,-1324,-1315,-1312,
+-1303,-1294,-1291,-1281,-1274,-1264,-1258,-1252,-1244,-1237,-1232,-1223,-1211,-1186,-1201,-1194,-1186,-1154,-1175,-1187,
+-1182,-1181,-1177,-1176,-1175,-1168,-1170,-1169,-1170,-1171,-1168,-1164,-1162,-1164,-1162,-1159,-1153,-1148,-1147,-1143,
+-1136,-1132,-1131,-1127,-1124,-1120,-1117,-1109,-1103,-1104,-1094,-1083,-1079,-1072,-1060,-1064,-1059,-1053,-1038,-1027,
+-1022,-1018,-1012,-1011,-1005,-996,-985,-988,-990,-986,-981,-980,-981,-978,-974,-971,-970,-962,-952,-948,
+-941,-931,-919,-911,-913,-908,-905,-899,-886,-875,-865,-859,-854,-848,-843,-835,-822,-813,-807,-801,
+-788,-781,-775,-769,-767,-764,-761,-758,-768,-762,-750,-740,-717,-689,-664,-639,-613,-595,-586,-577,
+-563,-543,-533,-522,-507,-497,-493,-491,-492,-489,-466,-444,-418,-401,-391,-372,-347,-335,-318,-304,
+-286,-271,-253,-241,-225,-210,-192,-175,-157,-137,-121,-109,-95,-75,-56,-32,-7,12,37,68,
+95,122,146,167,186,200,220,226,244,266,293,317,344,365,395,420,448,490,483,526,
+545,561,573,606,622,641,664,685,718,739,771,800,825,842,865,891,914,937,962,991,
+1018,1046,1079,1093,1109,1110,1100,1074,1039,1005,1014,1116,1198,1244,1312,1435,1586,1684,1709,1736,
+1759,1810,1952,2027,2117,2139,2181,2191,2109,2089,2071,2094,2103,2093,2113,2128,2097,2066,2046,2027,
+2003,1937,1847,1758,1684,1621,1564,1506,1460,1431,1413,1401,1368,1323,1316,1312,1309,1287,1247,1225,
+1204,1190,1178,1160,1144,1136,1139,1144,1158,1176,1178,1176,1170,1158,1129,1091,1042,934,820,737,
+671,605,536,479,427,363,298,240,195,160,128,105,82,63,49,37,18,0,-24,-47,
+-74,-101,-122,-140,-156,-170,-181,-191,-197,-211,-218,-221,-222,-229,-238,-241,-239,-237,-237,-240,
+-243,-254,-270,-283,-304,-324,-343,-358,-377,-394,-411,-420,-448,-468,-495,-519,-542,-567,-590,-614,
+-633,-650,-662,-676,-685,-693,-701,-706,-704,-702,-698,-687,-677,-661,-647,-628,-605,-583,-563,-545,
+-528,-504,-476,-447,-422,-400,-374,-347,-316,-287,-260,-225,-192,-158,-128,-94,-63,-38,-13,41,
+94,156,210,272,330,376,434,472,521,559,599,639,680,716,753,792,831,871,905,939,
+973,1012,1054,1092,1127,1164,1197,1228,1262,1298,1328,1373,1411,1452,1501,1547,1591,1640,1683,1725,
+1775,1804,1845,1882,1932,1965,1997,2023,2043,2064,2104,2143,2176,2211,2239,2264,2283,2308,2329,2349,
+2369,2394,2428,2461,2487,2523,2566,2551,2513,2537,2539,2525,2511,2523,2530,2519,2513,2518,2514,2505,
+2503,2510,2498,2472,2465,2458,2446,2432,2421,2409,2404,2391,2366,2362,2365,2364,2356,2331,2320,2338,
+2382,2417,2319,2286,2289,2279,2268,2257,2242,2228,2211,2203,2199,2186,2173,2158,2140,2110,2094,2078,
+2082,2145,2302,2235,2166,2213,2198,2062,1928,1895,1942,1953,1931,1875,1916,1976,1997,2080,2280,2203,
+2103,2108,2218,2265,2143,2090,2083,2087,2095,2119,2140,2164,2180,2198,2225,2245,2264,2288,2311,2334,
+2355,2370,2393,2406,2430,2482,2526,2489,2504,2512,2479,2496,2596,2692,2755,2774,2774,2773,2769,2769,
+2777,2783,2789,2796,2809,2822,2833,2827,2799,2760,2743,2802,2858,2874,2894,2900,2895,2916,2919,2915,
+2936,2952,2963,2971,2977,2987,2996,3008,3023,3045,3068,3076,3100,3110,3125,3138,3153,3167,3191,3221,
+3252,3277,3314,3329,3327,3330,3343,3350,3351,3349,3359,3366,3371,3381,3397,3407,3410,3413,3415,3405,
+3389,3370,3361,3376,3410,3406,3402,3394,3378,3372,3367,3354,3332,3313,3310,3330,3331,3347,3360,3369,
+3381,3412,3449,3516,3516,3548,3626,3692,3753,3763,3814,3888,3922,3969,4027,4045,4061,4097,4131,4216,
+4292,4327,4338,4342,4354,4377,4384,4400,4403,4416,4465,4465,4545,4582,4563,4574,4577,4563,4538,4529,
+4441,4515,4368,4400,4401,4366,4369,4403,4393,4375,4406,4444,4436,4400,4390,4390,4383,4378,4385,4387,
+4382,4385,4390,4395,4402,4408,4413,4416,4418,4415,4410,4403,4395,4384,4362,4330,4315,4323,4316,4302,
+4278,4276,4285,4283,4273,4245,4209,4176,4136,4094,4052,4012,3976,3936,3902,3873,3843,3811,3781,3747,
+3718,3706,3690,3673,3650,3624,3588,3548,3514,3471,3429,3391,3344,3307,3276,3242,3211,3186,3158,3141,
+3128,3106,3086,3068,3049,3034,3021,3012,3000,2992,2988,2976,2948,2942,2934,2932,2938,2951,2943,2927,
+2913,2903,2893,2878,2869,2862,2850,2837,2821,2801,2790,2774,2754,2729,2704,2685,2671,2669,2648,2623,
+2582,2537,2515,2520,2499,2483,2466,2456,2446,2421,2409,2396,2377,2354,2331,2304,2278,2259,2240,2214,
+2197,2165,2143,2120,2098,2083,2046,2023,2016,1993,1962,1931,1906,1883,1863,1833,1808,1780,1756,1730,
+1697,1660,1618,1581,1544,1502,1440,1364,1333,1314,1290,1271,1243,1208,1175,1142,1106,1071,1038,998,
+962,923,882,844,816,778,738,699,660,616,574,533,492,451,406,369,330,292,236,189,
+141,92,49,0,-42,-89,-130,-181,-226,-271,-317,-362,-413,-460,-503,-550,-600,-649,-701,-751,
+-797,-845,-895,-945,-1002,-1058,-1105,-1142,-1179,-1224,-1251,-1293,-1346,-1402,-1457,-1512,-1559,-1603,-1633,-1654,
+-1676,-1704,-1739,-1772,-1809,-1853,-1898,-1928,-1961,-2000,-2035,-2073,-2111,-2147,-2183,-2217,-2246,-2274,-2301,-2334,
+-2371,-2408,-2439,-2469,-2500,-2525,-2549,-2574,-2608,-2638,-2662,-2683,-2714,-2741,-2764,-2788,-2806,-2821,-2841,-2865,
+-2883,-2893,-2906,-2916,-2930,-2943,-2954,-2967,-2977,-2987,-2995,-2990,-3004,-3015,-3021,-3029,-3031,-3032,-3028,-3023,
+-3015,-3017,-3015,-3010,-3005,-2999,-2994,-2982,-3003,-2996,-2991,-2990,-2989,-2988,-2988,-2980,-2977,-2982,-2981,-2966,
+-2959,-2948,-2939,-2938,-2933,-2923,-2913,-2895,-2874,-2860,-2866,-2858,-2842,-2820,-2797,-2781,-2780,-2767,-2756,-2744,
+-2733,-2723,-2712,-2727,-2706,-2704,-2677,-2655,-2650,-2628,-2606,-2589,-2570,-2549,-2526,-2495,-2468,-2448,-2426,-2405,
+-2384,-2367,-2349,-2330,-2309,-2287,-2264,-2237,-2209,-2179,-2149,-2122,-2093,-2067,-2042,-2013,-1982,-1949,-1926,-1896,
+-1872,-1847,-1828,-1808,-1785,-1762,-1735,-1700,-1670,-1652,-1635,-1624,-1612,-1600,-1584,-1570,-1565,-1545,-1536,-1520,
+-1504,-1486,-1481,-1466,-1469,-1473,-1459,-1449,-1432,-1380,-1324,-1221,-1069,-860,-685,-625,-583,-535,-479,-427,
+-392,-390,-405,-439,-454,-501,-576,-686,-761,-811,-845,-858,-856,-853,-845,-830,-811,-795,-764,-707,
+-723,-732,-723,-706,-686,-664,-649,-640,-631,-617,-599,-575,-549,-521,-493,-470,-453,-448,-442,-429,
+-416,-404,-399,-413,-403,-376,-362,-344,-317,-304,-307,-309,-300,-272,-240,-209,-170,-140,-116,-94,
+-65,-38,-8,19,70,71,83,115,166,222,254,243,233,257,279,332,369,398,407,427,
+459,489,538,618,664,694,719,741,778,815,851,907,977,1043,1102,1161,1255,1380,1491,1525,
+1493,1492,1470,1365,1287,1252,1196,1132,1047,1002,1021,1068,1133,1196,1242,1265,1275,1302,1334,1366,
+1403,1431,1454,1475,1489,1492,1488,1487,1474,1449,1432,1418,1402,1384,1367,1358,1343,1325,1306,1287,
+1261,1240,1232,1224,1210,1185,1153,1116,1087,1059,1024,980,936,902,867,823,764,705,639,568,
+509,451,404,359,312,281,253,235,217,209,191,151,97,51,24,-6,-36,-54,-92,-127,
+-181,-207,-225,-237,-239,-241,-240,-237,-238,-243,-248,-248,-254,-260,-274,-289,-309,-320,-320,-320,
+-321,-319,-314,-304,-292,-266,-284,-319,-350,-380,-404,-420,-432,-429,-426,-422,-426,-431,-429,-417,
+-441,-465,-491,-511,-519,-522,-528,-532,-546,-575,-587,-590,-578,-572,-581,-602,-627,-651,-668,-686,
+-703,-719,-734,-755,-781,-804,-823,-838,-848,-865,-868,-872,-876,-894,-922,-939,-960,-973,-983,-1000,
+-1013,-1035,-1052,-1079,-1101,-1116,-1126,-1137,-1149,-1163,-1172,-1174,-1179,-1195,-1210,-1219,-1223,-1228,-1234,-1238,
+-1241,-1254,-1264,-1276,-1291,-1310,-1330,-1340,-1346,-1347,-1352,-1364,-1368,-1372,-1386,-1405,-1423,-1417,-1419,-1404,
+-1417,-1406,-1405,-1407,-1407,-1420,-1418,-1424,-1411,-1411,-1408,-1413,-1417,-1417,-1420,-1424,-1424,-1429,-1428,-1426,
+-1426,-1424,-1390,-1419,-1414,-1405,-1400,-1394,-1385,-1383,-1373,-1369,-1365,-1364,-1362,-1355,-1354,-1349,-1342,-1335,
+-1329,-1319,-1310,-1302,-1295,-1280,-1272,-1263,-1253,-1246,-1240,-1233,-1224,-1219,-1209,-1200,-1193,-1188,-1179,-1182,
+-1181,-1171,-1173,-1174,-1173,-1170,-1169,-1167,-1160,-1160,-1156,-1148,-1146,-1140,-1144,-1145,-1134,-1128,-1136,-1133,
+-1128,-1126,-1122,-1119,-1114,-1110,-1106,-1101,-1095,-1089,-1081,-1077,-1069,-1062,-1054,-1053,-1060,-1047,-1026,-1018,
+-1023,-1020,-1017,-1012,-1006,-989,-996,-982,-988,-985,-982,-979,-978,-979,-976,-967,-973,-968,-964,-958,
+-947,-943,-931,-926,-925,-918,-912,-905,-895,-887,-875,-865,-857,-853,-847,-843,-836,-824,-811,-805,
+-797,-782,-774,-764,-756,-753,-744,-742,-736,-740,-738,-709,-712,-706,-681,-645,-616,-600,-596,-589,
+-577,-555,-554,-529,-525,-513,-496,-485,-487,-485,-471,-448,-428,-414,-398,-371,-356,-339,-323,-312,
+-300,-285,-270,-255,-239,-223,-206,-192,-176,-157,-141,-127,-108,-93,-75,-51,-30,-8,17,43,
+74,105,131,156,173,191,203,218,235,270,285,309,320,335,349,380,398,436,464,463,
+506,528,530,571,599,631,646,683,704,733,743,776,798,821,841,867,892,916,940,963,
+992,1019,1049,1077,1100,1113,1109,1098,1066,1030,999,1022,1123,1230,1275,1320,1426,1572,1669,1699,
+1721,1766,1817,1928,2072,2121,2136,2107,2118,2106,2096,2077,2094,2132,2146,2098,2074,2050,2009,2011,
+1979,1912,1834,1753,1695,1644,1592,1549,1508,1469,1431,1393,1372,1340,1320,1315,1297,1285,1260,1242,
+1222,1198,1187,1177,1152,1131,1126,1126,1140,1149,1157,1154,1148,1127,1104,1066,1015,922,816,735,
+668,602,544,494,452,398,335,276,224,183,149,124,100,78,59,48,34,15,-1,-27,
+-51,-80,-111,-133,-152,-168,-177,-179,-185,-197,-203,-208,-203,-205,-207,-219,-226,-228,-232,-235,
+-241,-254,-269,-282,-289,-304,-314,-324,-337,-352,-370,-386,-402,-424,-449,-479,-504,-528,-554,-575,
+-596,-619,-633,-648,-661,-672,-682,-689,-695,-696,-694,-688,-680,-674,-663,-647,-631,-614,-591,-576,
+-560,-540,-514,-487,-456,-424,-401,-374,-344,-317,-291,-258,-221,-183,-153,-127,-98,-53,-15,9,
+42,86,145,199,256,313,364,422,470,523,566,602,643,686,728,769,803,840,875,908,
+943,976,1007,1043,1079,1121,1157,1191,1223,1256,1293,1328,1374,1419,1456,1504,1556,1599,1644,1677,
+1718,1772,1802,1852,1891,1919,1961,1996,2019,2045,2066,2096,2132,2166,2196,2229,2257,2287,2311,2342,
+2374,2390,2424,2453,2479,2494,2518,2514,2495,2566,2562,2546,2542,2526,2517,2518,2514,2529,2521,2517,
+2518,2519,2502,2490,2475,2468,2449,2451,2443,2438,2426,2399,2396,2382,2377,2358,2355,2343,2355,2351,
+2332,2335,2311,2300,2311,2288,2266,2247,2232,2224,2223,2246,2234,2201,2193,2193,2169,2137,2094,2088,
+2097,2190,2261,2323,2121,2014,1980,1951,1913,1870,1844,1841,1851,1875,1947,1944,1966,2014,2092,2172,
+2143,2099,2095,2116,2120,2112,2100,2103,2114,2126,2143,2163,2184,2207,2227,2252,2279,2304,2326,2348,
+2379,2414,2455,2492,2535,2538,2526,2531,2523,2498,2539,2601,2654,2707,2754,2766,2752,2753,2746,2756,
+2761,2777,2795,2803,2809,2819,2810,2798,2760,2748,2764,2757,2817,2874,2900,2892,2885,2898,2913,2937,
+2955,2954,2953,2966,2982,2993,2999,3011,3029,3044,3059,3079,3093,3110,3132,3142,3152,3165,3183,3204,
+3227,3257,3270,3289,3306,3312,3314,3330,3340,3339,3338,3353,3357,3364,3375,3390,3406,3407,3397,3397,
+3394,3377,3357,3349,3380,3388,3384,3384,3378,3369,3365,3359,3346,3333,3325,3341,3346,3343,3366,3375,
+3385,3400,3422,3484,3540,3566,3593,3646,3721,3794,3810,3879,3967,4018,4038,4056,4059,4118,4169,4225,
+4341,4388,4392,4394,4392,4402,4411,4465,4459,4471,4482,4433,4435,4548,4569,4556,4579,4640,4619,4593,
+4534,4481,4546,4405,4423,4397,4394,4415,4433,4412,4406,4437,4459,4457,4427,4416,4416,4398,4396,4397,
+4397,4401,4408,4415,4420,4427,4430,4440,4448,4453,4453,4452,4447,4438,4424,4406,4375,4334,4331,4326,
+4306,4289,4297,4307,4305,4288,4264,4233,4203,4168,4133,4093,4054,4016,3980,3945,3916,3884,3853,3821,
+3785,3764,3746,3728,3707,3686,3653,3614,3582,3554,3507,3453,3414,3379,3338,3295,3261,3230,3198,3183,
+3169,3156,3138,3120,3100,3078,3060,3048,3035,3030,3025,3023,2991,2984,2989,2966,2969,2971,2975,2964,
+2951,2941,2928,2915,2905,2895,2884,2880,2867,2855,2851,2837,2824,2801,2764,2747,2730,2710,2689,2660,
+2626,2597,2589,2578,2569,2557,2541,2527,2508,2495,2470,2455,2438,2419,2395,2366,2334,2325,2300,2279,
+2254,2226,2204,2175,2154,2144,2115,2089,2078,2055,2025,1994,1973,1951,1924,1900,1871,1849,1823,1797,
+1767,1728,1686,1650,1606,1568,1515,1454,1433,1402,1381,1354,1320,1282,1252,1214,1181,1149,1116,1077,
+1038,1001,961,927,893,859,821,783,744,701,659,619,577,534,490,455,407,366,326,287,
+238,194,147,102,53,5,-39,-87,-130,-175,-220,-268,-317,-365,-408,-450,-497,-550,-599,-650,
+-696,-741,-791,-838,-893,-950,-996,-1043,-1084,-1129,-1159,-1196,-1247,-1299,-1354,-1406,-1458,-1506,-1539,-1568,
+-1591,-1614,-1645,-1681,-1718,-1761,-1803,-1839,-1875,-1910,-1951,-1985,-2021,-2058,-2091,-2133,-2165,-2192,-2216,-2248,
+-2286,-2324,-2363,-2396,-2417,-2448,-2472,-2500,-2528,-2560,-2592,-2614,-2639,-2674,-2696,-2716,-2736,-2756,-2774,-2795,
+-2821,-2838,-2854,-2866,-2879,-2891,-2901,-2914,-2924,-2937,-2951,-2957,-2963,-2968,-2977,-2988,-2991,-2994,-2995,-2991,
+-2983,-2979,-2985,-2985,-2977,-2968,-2966,-2964,-2964,-2968,-2964,-2963,-2964,-2958,-2962,-2960,-2951,-2948,-2956,-2951,
+-2938,-2927,-2920,-2918,-2914,-2907,-2894,-2881,-2865,-2849,-2832,-2832,-2836,-2822,-2803,-2782,-2766,-2756,-2749,-2737,
+-2726,-2716,-2698,-2692,-2702,-2680,-2682,-2667,-2633,-2630,-2620,-2612,-2576,-2550,-2533,-2510,-2485,-2464,-2443,-2421,
+-2399,-2378,-2358,-2338,-2318,-2297,-2276,-2249,-2226,-2199,-2172,-2145,-2116,-2089,-2061,-2037,-2007,-1982,-1957,-1925,
+-1900,-1875,-1852,-1831,-1811,-1789,-1759,-1727,-1699,-1679,-1667,-1662,-1658,-1644,-1620,-1596,-1583,-1578,-1556,-1546,
+-1533,-1516,-1500,-1487,-1467,-1465,-1462,-1460,-1460,-1446,-1412,-1383,-1303,-1177,-1050,-876,-756,-686,-646,-600,
+-521,-477,-496,-502,-524,-530,-573,-676,-791,-842,-873,-887,-879,-860,-852,-838,-822,-819,-823,-821,
+-812,-796,-792,-780,-768,-745,-720,-700,-689,-679,-666,-642,-615,-587,-559,-539,-529,-521,-509,-501,
+-497,-490,-485,-482,-456,-422,-411,-398,-379,-372,-376,-379,-377,-361,-332,-292,-259,-227,-204,-187,
+-153,-125,-101,-74,-43,-19,3,22,40,66,105,153,191,172,199,227,262,314,338,344,
+344,349,366,414,490,549,588,619,660,692,735,794,864,945,1020,1110,1238,1364,1440,1416,
+1413,1430,1381,1319,1249,1195,1170,1145,1120,1098,1089,1113,1158,1217,1280,1333,1345,1342,1352,1363,
+1386,1402,1419,1440,1450,1449,1444,1436,1421,1405,1390,1375,1355,1334,1313,1292,1281,1267,1247,1229,
+1212,1200,1186,1190,1197,1199,1190,1168,1131,1090,1047,1001,946,895,851,807,759,690,621,555,
+493,437,385,344,300,246,212,191,174,156,124,89,43,-12,-50,-78,-97,-116,-138,-164,
+-211,-243,-278,-285,-286,-303,-310,-323,-327,-319,-311,-316,-320,-324,-329,-338,-350,-360,-368,-370,
+-372,-376,-381,-380,-382,-380,-362,-334,-299,-311,-376,-426,-455,-473,-481,-479,-478,-472,-475,-474,
+-481,-490,-513,-537,-548,-551,-551,-566,-569,-581,-604,-617,-612,-607,-608,-621,-644,-671,-684,-697,
+-712,-731,-752,-770,-787,-805,-828,-847,-865,-886,-905,-909,-915,-922,-934,-949,-964,-988,-997,-1008,
+-1024,-1036,-1049,-1069,-1089,-1105,-1121,-1131,-1140,-1152,-1164,-1174,-1183,-1185,-1197,-1213,-1227,-1239,-1248,-1256,
+-1262,-1266,-1275,-1284,-1299,-1313,-1324,-1344,-1360,-1371,-1375,-1372,-1375,-1377,-1378,-1387,-1406,-1431,-1436,-1445,
+-1442,-1428,-1419,-1419,-1408,-1412,-1419,-1421,-1428,-1418,-1407,-1406,-1412,-1412,-1416,-1423,-1428,-1433,-1435,-1435,
+-1437,-1432,-1428,-1424,-1423,-1416,-1412,-1404,-1399,-1393,-1390,-1387,-1384,-1385,-1387,-1386,-1380,-1371,-1360,-1349,
+-1348,-1344,-1329,-1320,-1311,-1302,-1292,-1280,-1270,-1259,-1248,-1244,-1239,-1228,-1221,-1216,-1202,-1188,-1187,-1189,
+-1186,-1179,-1172,-1168,-1168,-1168,-1168,-1159,-1142,-1131,-1129,-1128,-1141,-1135,-1131,-1132,-1119,-1127,-1127,-1128,
+-1131,-1127,-1124,-1118,-1119,-1114,-1111,-1106,-1101,-1092,-1089,-1078,-1071,-1062,-1058,-1055,-1057,-1057,-1045,-1031,
+-1025,-1017,-1014,-1008,-1007,-1003,-994,-985,-983,-986,-986,-985,-985,-985,-977,-975,-969,-968,-958,-952,
+-952,-952,-943,-937,-934,-931,-915,-909,-902,-891,-881,-873,-865,-859,-857,-852,-844,-839,-828,-818,
+-807,-793,-780,-771,-761,-751,-747,-734,-722,-719,-712,-728,-721,-690,-693,-669,-634,-623,-611,-602,
+-602,-533,-400,-479,-532,-542,-532,-507,-493,-483,-472,-450,-432,-416,-394,-375,-358,-348,-331,-316,
+-303,-296,-284,-267,-252,-237,-221,-207,-192,-175,-160,-142,-119,-104,-93,-73,-52,-28,-7,18,
+47,76,104,128,153,173,193,201,213,233,250,268,293,316,335,352,384,414,462,474,
+486,519,548,572,587,611,623,648,692,710,717,746,769,791,818,839,863,889,914,938,
+964,991,1021,1052,1081,1101,1109,1106,1092,1061,1024,993,1029,1175,1259,1290,1332,1427,1530,1611,
+1669,1720,1772,1861,1956,2039,2101,2132,2082,2104,2089,2105,2104,2119,2134,2134,2131,2034,2006,1984,
+1953,1895,1823,1762,1707,1662,1625,1587,1547,1509,1472,1423,1379,1350,1329,1313,1302,1296,1277,1245,
+1230,1210,1187,1176,1166,1146,1124,1116,1124,1136,1141,1140,1135,1115,1082,1047,1002,917,804,724,
+668,615,568,528,487,433,367,307,254,208,170,145,127,106,82,62,47,33,14,-5,
+-27,-53,-82,-115,-141,-161,-175,-184,-187,-188,-188,-189,-188,-191,-197,-210,-219,-223,-230,-236,
+-237,-246,-259,-273,-285,-295,-299,-304,-311,-320,-333,-350,-367,-387,-411,-440,-468,-492,-517,-538,
+-558,-579,-604,-619,-634,-649,-662,-674,-682,-688,-691,-690,-686,-679,-673,-660,-647,-627,-609,-589,
+-573,-561,-543,-518,-494,-467,-439,-411,-378,-342,-309,-271,-245,-220,-189,-156,-127,-93,-53,-14,
+20,51,90,155,208,262,317,361,412,463,512,559,601,649,697,736,771,811,850,885,
+920,949,985,1021,1056,1093,1129,1169,1202,1237,1276,1311,1354,1389,1440,1475,1505,1555,1595,1638,
+1671,1720,1765,1800,1837,1884,1914,1949,1980,2005,2036,2065,2099,2133,2154,2195,2234,2269,2286,2305,
+2327,2367,2412,2413,2422,2451,2485,2525,2552,2523,2563,2577,2550,2529,2507,2520,2532,2522,2514,2525,
+2523,2520,2508,2505,2501,2494,2483,2465,2455,2450,2437,2419,2401,2391,2384,2369,2372,2360,2357,2353,
+2351,2341,2324,2326,2316,2299,2281,2261,2253,2232,2227,2244,2277,2240,2234,2249,2285,2223,2162,2125,
+2121,2120,2156,2236,2174,2049,1976,1955,1974,1993,1958,1916,1913,1943,1947,1988,1979,2003,2036,2068,
+2087,2091,2086,2090,2096,2095,2100,2106,2112,2120,2138,2153,2170,2191,2215,2244,2272,2299,2326,2350,
+2379,2413,2455,2500,2514,2536,2533,2492,2448,2453,2484,2539,2604,2659,2698,2716,2722,2727,2734,2742,
+2755,2775,2787,2802,2802,2791,2761,2762,2773,2791,2781,2782,2786,2768,2791,2827,2856,2883,2910,2957,
+2958,2944,2941,2961,2986,2994,3001,3010,3021,3045,3065,3086,3106,3120,3133,3146,3161,3165,3175,3190,
+3209,3238,3247,3275,3283,3290,3298,3307,3318,3335,3338,3338,3355,3360,3364,3376,3385,3403,3407,3399,
+3385,3375,3355,3343,3348,3364,3367,3363,3365,3362,3359,3354,3352,3346,3332,3347,3355,3356,3381,3395,
+3398,3399,3436,3451,3518,3603,3638,3679,3714,3746,3804,3864,3964,4066,4087,4083,4084,4114,4191,4214,
+4332,4441,4469,4468,4455,4442,4464,4499,4543,4486,4540,4557,4500,4559,4606,4604,4547,4567,4688,4679,
+4633,4492,4510,4544,4437,4444,4427,4423,4451,4446,4433,4442,4463,4477,4474,4443,4432,4429,4419,4412,
+4407,4410,4418,4424,4431,4440,4450,4458,4462,4467,4476,4476,4474,4466,4446,4422,4396,4374,4361,4354,
+4340,4329,4316,4316,4316,4305,4294,4282,4262,4235,4206,4172,4132,4095,4060,4025,3989,3956,3926,3892,
+3854,3825,3805,3784,3763,3741,3714,3677,3643,3621,3580,3532,3483,3434,3391,3358,3324,3288,3256,3225,
+3208,3194,3182,3162,3140,3123,3102,3089,3075,3064,3060,3062,3044,3006,3023,3011,3000,2993,2997,2998,
+2980,2964,2953,2945,2936,2928,2912,2909,2907,2897,2896,2889,2874,2858,2829,2795,2791,2767,2739,2710,
+2697,2689,2676,2662,2646,2629,2613,2595,2576,2557,2531,2512,2496,2476,2458,2429,2401,2377,2360,2337,
+2317,2290,2263,2236,2217,2197,2172,2156,2141,2118,2093,2062,2035,2015,1997,1970,1937,1914,1889,1863,
+1829,1788,1752,1715,1682,1626,1569,1537,1524,1489,1460,1426,1398,1365,1328,1284,1256,1218,1186,1148,
+1110,1064,1033,1000,959,932,894,857,816,778,740,698,659,618,576,529,490,448,404,359,
+323,280,238,192,152,109,62,10,-40,-83,-129,-177,-221,-267,-317,-359,-404,-453,-498,-549,
+-598,-643,-691,-736,-789,-838,-894,-937,-984,-1031,-1064,-1095,-1139,-1194,-1250,-1306,-1355,-1401,-1442,-1478,
+-1504,-1529,-1550,-1584,-1625,-1666,-1703,-1750,-1789,-1818,-1856,-1893,-1927,-1964,-2006,-2044,-2078,-2112,-2139,-2162,
+-2196,-2238,-2278,-2318,-2348,-2373,-2395,-2426,-2455,-2483,-2514,-2540,-2562,-2592,-2621,-2649,-2669,-2685,-2708,-2727,
+-2749,-2774,-2796,-2810,-2827,-2839,-2851,-2862,-2874,-2881,-2895,-2912,-2922,-2928,-2936,-2943,-2946,-2952,-2953,-2955,
+-2952,-2948,-2953,-2956,-2954,-2945,-2934,-2926,-2933,-2938,-2939,-2937,-2933,-2927,-2922,-2926,-2924,-2915,-2919,-2933,
+-2926,-2911,-2895,-2886,-2885,-2887,-2877,-2867,-2851,-2836,-2821,-2808,-2808,-2821,-2807,-2792,-2769,-2756,-2743,-2730,
+-2719,-2705,-2693,-2681,-2677,-2681,-2667,-2673,-2652,-2619,-2633,-2628,-2589,-2564,-2547,-2524,-2497,-2470,-2449,-2429,
+-2407,-2386,-2367,-2346,-2326,-2306,-2286,-2267,-2244,-2219,-2192,-2168,-2139,-2111,-2083,-2056,-2028,-2000,-1968,-1943,
+-1919,-1896,-1871,-1852,-1834,-1815,-1792,-1764,-1733,-1708,-1686,-1675,-1671,-1678,-1657,-1627,-1613,-1587,-1589,-1579,
+-1563,-1550,-1532,-1516,-1505,-1488,-1482,-1472,-1461,-1463,-1457,-1453,-1398,-1330,-1243,-1161,-1041,-922,-832,-743,
+-696,-624,-564,-599,-591,-600,-617,-665,-772,-874,-915,-933,-933,-912,-883,-853,-827,-815,-812,-825,
+-845,-855,-834,-828,-829,-821,-798,-772,-746,-725,-714,-704,-680,-656,-628,-607,-596,-589,-583,-576,
+-571,-570,-580,-566,-520,-487,-462,-448,-432,-430,-437,-440,-447,-440,-411,-376,-344,-317,-288,-266,
+-247,-220,-183,-157,-115,-79,-73,-46,-25,-17,3,24,49,83,108,136,168,211,253,281,
+290,278,257,247,270,322,395,462,520,567,613,681,781,874,959,1106,1255,1314,1330,1352,
+1351,1339,1273,1221,1188,1165,1156,1140,1126,1115,1121,1111,1119,1162,1219,1281,1326,1330,1324,1329,
+1331,1337,1348,1350,1358,1362,1355,1344,1335,1329,1320,1299,1275,1255,1243,1228,1211,1196,1178,1160,
+1141,1119,1111,1106,1110,1130,1148,1155,1125,1095,1048,1009,951,908,832,765,732,674,610,546,
+479,417,368,319,280,232,188,157,129,97,71,28,-33,-93,-136,-168,-195,-212,-229,-251,
+-269,-277,-315,-325,-335,-347,-372,-381,-393,-398,-404,-401,-397,-399,-402,-400,-407,-416,-424,-426,
+-422,-422,-425,-428,-432,-435,-433,-413,-343,-146,-152,-324,-416,-462,-492,-513,-526,-523,-529,-531,
+-531,-531,-542,-558,-569,-581,-586,-578,-601,-601,-603,-601,-631,-628,-629,-647,-666,-693,-717,-727,
+-729,-738,-752,-777,-802,-818,-833,-848,-864,-888,-916,-934,-932,-937,-943,-953,-966,-980,-1001,-1021,
+-1040,-1054,-1060,-1065,-1078,-1089,-1103,-1122,-1135,-1152,-1158,-1166,-1176,-1181,-1192,-1201,-1219,-1235,-1251,-1266,
+-1279,-1285,-1289,-1292,-1303,-1317,-1333,-1345,-1353,-1364,-1376,-1393,-1394,-1393,-1394,-1398,-1403,-1414,-1431,-1450,
+-1460,-1463,-1463,-1456,-1447,-1436,-1441,-1426,-1424,-1417,-1435,-1418,-1407,-1409,-1417,-1418,-1421,-1422,-1426,-1427,
+-1430,-1426,-1424,-1416,-1412,-1411,-1407,-1406,-1402,-1398,-1402,-1400,-1393,-1392,-1394,-1391,-1386,-1384,-1376,-1364,
+-1357,-1350,-1341,-1340,-1326,-1321,-1315,-1301,-1290,-1279,-1265,-1254,-1249,-1236,-1225,-1218,-1208,-1199,-1190,-1181,
+-1177,-1174,-1167,-1169,-1168,-1160,-1160,-1145,-1144,-1141,-1138,-1136,-1134,-1129,-1119,-1124,-1124,-1121,-1121,-1114,
+-1114,-1118,-1121,-1121,-1116,-1115,-1111,-1105,-1098,-1093,-1090,-1083,-1077,-1069,-1063,-1058,-1054,-1054,-1048,-1031,
+-1030,-1024,-1015,-1009,-1005,-1003,-994,-993,-979,-982,-985,-982,-978,-983,-975,-969,-973,-969,-966,-959,
+-954,-948,-946,-942,-931,-921,-919,-914,-908,-898,-887,-876,-865,-857,-854,-849,-846,-835,-833,-825,
+-818,-808,-793,-785,-775,-763,-750,-744,-727,-716,-711,-703,-700,-696,-658,-667,-662,-631,-618,-602,
+-585,-572,-528,-463,-435,-445,-520,-536,-515,-491,-472,-451,-423,-401,-392,-386,-369,-372,-369,-361,
+-340,-318,-300,-286,-271,-256,-243,-229,-213,-197,-180,-167,-148,-131,-113,-102,-83,-63,-38,-19,
+10,33,62,91,116,138,161,189,217,235,255,278,299,315,337,352,373,401,422,443,
+467,481,515,549,570,581,622,635,648,652,683,708,731,754,784,808,833,860,883,909,
+935,964,998,1032,1058,1078,1089,1092,1087,1070,1044,1008,990,1052,1209,1287,1300,1294,1370,1485,
+1560,1637,1698,1762,1870,1989,2049,2085,2081,2049,2071,2064,2078,2105,2124,2110,2081,2091,2025,1987,
+1943,1888,1836,1788,1753,1710,1666,1617,1571,1534,1497,1452,1423,1382,1340,1312,1297,1272,1252,1243,
+1224,1209,1183,1165,1153,1148,1134,1115,1105,1120,1132,1128,1119,1106,1086,1050,997,930,819,736,
+673,639,611,585,541,479,405,337,276,226,187,159,140,126,105,85,65,51,35,14,
+-4,-29,-56,-87,-118,-147,-167,-176,-180,-184,-182,-182,-186,-186,-187,-191,-203,-218,-224,-230,
+-235,-238,-248,-260,-273,-285,-294,-301,-305,-309,-319,-326,-339,-358,-378,-403,-429,-452,-478,-504,
+-524,-540,-560,-584,-602,-621,-637,-651,-662,-671,-678,-684,-685,-680,-675,-665,-653,-638,-619,-600,
+-585,-572,-558,-542,-520,-497,-473,-447,-413,-385,-356,-318,-278,-241,-211,-172,-142,-113,-87,-58,
+-21,16,40,75,147,209,256,320,360,407,475,517,564,602,638,686,723,765,802,836,
+870,908,939,976,1010,1042,1090,1131,1179,1211,1252,1296,1328,1367,1401,1453,1472,1527,1565,1599,
+1644,1676,1733,1774,1800,1827,1870,1900,1935,1971,2008,2043,2076,2103,2137,2171,2196,2231,2250,2306,
+2338,2355,2391,2414,2438,2449,2458,2501,2510,2557,2526,2572,2582,2561,2529,2531,2525,2520,2518,2520,
+2532,2533,2540,2531,2533,2520,2514,2504,2498,2473,2454,2445,2441,2423,2411,2406,2399,2388,2391,2387,
+2385,2378,2368,2350,2339,2338,2321,2313,2286,2266,2249,2247,2250,2284,2266,2274,2388,2498,2286,2188,
+2139,2116,2113,2144,2222,2145,2025,1998,2059,2230,2358,2230,2061,2019,2006,1988,2021,2030,2048,2067,
+2082,2091,2091,2090,2094,2099,2099,2100,2104,2105,2112,2125,2147,2168,2178,2201,2231,2259,2287,2312,
+2349,2386,2409,2421,2446,2464,2452,2434,2430,2438,2463,2499,2542,2590,2632,2656,2675,2695,2710,2728,
+2743,2752,2760,2761,2762,2749,2765,2762,2769,2775,2806,2817,2782,2790,2828,2808,2796,2848,2921,2950,
+2945,2936,2932,2944,2964,2982,2984,3000,3013,3045,3061,3086,3119,3143,3157,3159,3167,3172,3180,3188,
+3200,3221,3234,3249,3260,3278,3289,3297,3305,3310,3329,3335,3337,3349,3359,3365,3376,3383,3392,3394,
+3386,3374,3366,3345,3335,3352,3349,3347,3347,3354,3352,3348,3345,3348,3334,3340,3358,3366,3391,3414,
+3422,3419,3416,3445,3488,3550,3646,3677,3756,3792,3818,3863,3917,4029,4094,4099,4128,4145,4206,4245,
+4305,4451,4522,4525,4523,4503,4515,4552,4582,4575,4539,4593,4639,4571,4627,4671,4691,4596,4564,4651,
+4662,4550,4436,4534,4491,4462,4448,4441,4454,4461,4458,4456,4455,4470,4478,4482,4473,4461,4456,4440,
+4429,4426,4423,4430,4444,4447,4442,4444,4451,4452,4447,4443,4442,4440,4435,4416,4398,4386,4373,4355,
+4339,4325,4323,4321,4325,4327,4326,4324,4314,4295,4269,4238,4204,4164,4129,4096,4064,4032,4001,3964,
+3927,3893,3873,3848,3821,3799,3775,3741,3701,3674,3642,3601,3554,3508,3462,3422,3381,3344,3316,3283,
+3254,3233,3218,3206,3189,3175,3156,3137,3114,3100,3095,3089,3079,3064,3052,3048,3033,3018,3015,3016,
+3014,3005,2991,2971,2962,2954,2945,2937,2946,2952,2934,2930,2904,2903,2904,2873,2849,2829,2806,2784,
+2770,2777,2756,2733,2719,2705,2683,2660,2641,2622,2600,2574,2551,2534,2513,2488,2464,2440,2427,2394,
+2380,2349,2322,2301,2276,2252,2230,2215,2196,2183,2156,2127,2106,2083,2064,2035,2002,1978,1950,1929,
+1891,1846,1808,1777,1743,1687,1642,1622,1611,1579,1546,1513,1475,1437,1410,1363,1309,1293,1264,1213,
+1191,1143,1105,1072,1041,1001,964,924,885,846,815,774,733,694,655,617,573,529,487,446,
+407,364,320,277,236,191,146,108,66,15,-29,-80,-128,-174,-222,-267,-310,-358,-409,-450,
+-495,-547,-590,-637,-680,-734,-786,-846,-880,-921,-966,-998,-1039,-1090,-1144,-1194,-1243,-1296,-1342,-1381,
+-1415,-1439,-1464,-1493,-1526,-1571,-1610,-1650,-1693,-1725,-1756,-1794,-1839,-1874,-1914,-1954,-1991,-2022,-2054,-2084,
+-2113,-2151,-2191,-2233,-2268,-2295,-2320,-2348,-2380,-2414,-2446,-2474,-2499,-2519,-2549,-2575,-2601,-2615,-2634,-2651,
+-2679,-2708,-2737,-2754,-2770,-2785,-2799,-2812,-2818,-2828,-2838,-2851,-2866,-2882,-2895,-2901,-2906,-2912,-2917,-2918,
+-2918,-2913,-2909,-2920,-2916,-2926,-2916,-2908,-2902,-2895,-2910,-2907,-2902,-2901,-2895,-2895,-2893,-2893,-2887,-2887,
+-2896,-2891,-2879,-2865,-2859,-2862,-2860,-2847,-2835,-2824,-2808,-2798,-2791,-2781,-2778,-2781,-2772,-2754,-2741,-2726,
+-2708,-2699,-2694,-2673,-2661,-2665,-2664,-2654,-2663,-2637,-2614,-2613,-2596,-2571,-2551,-2538,-2517,-2490,-2465,-2437,
+-2419,-2396,-2372,-2351,-2332,-2313,-2295,-2278,-2257,-2234,-2210,-2187,-2160,-2130,-2101,-2075,-2052,-2019,-1995,-1968,
+-1943,-1919,-1892,-1871,-1852,-1836,-1817,-1793,-1764,-1735,-1710,-1691,-1676,-1680,-1690,-1664,-1640,-1630,-1618,-1608,
+-1590,-1581,-1563,-1545,-1532,-1526,-1513,-1500,-1478,-1467,-1470,-1459,-1468,-1430,-1323,-1288,-1245,-1158,-1046,-933,
+-823,-785,-737,-699,-685,-688,-698,-704,-786,-888,-967,-982,-990,-986,-954,-907,-852,-808,-781,-821,
+-840,-853,-873,-863,-865,-871,-863,-839,-810,-788,-770,-756,-740,-722,-700,-681,-668,-655,-650,-645,
+-633,-630,-639,-631,-579,-535,-521,-501,-491,-492,-489,-490,-495,-496,-482,-458,-427,-405,-378,-360,
+-341,-332,-310,-269,-220,-176,-146,-122,-92,-76,-65,-52,-32,-2,32,58,81,112,145,184,
+208,218,202,175,134,156,200,259,340,419,511,617,719,845,941,1043,1132,1185,1209,1274,
+1233,1193,1131,1099,1077,1077,1096,1152,1155,1104,1092,1088,1078,1078,1097,1130,1173,1205,1232,1240,
+1251,1244,1241,1237,1228,1233,1234,1229,1224,1223,1219,1209,1191,1173,1159,1150,1141,1134,1124,1100,
+1072,1057,1039,1030,1031,1036,1055,1086,1105,1104,1080,1046,960,900,854,802,725,668,609,532,
+457,403,341,295,245,208,180,127,97,74,29,-35,-108,-166,-203,-240,-261,-268,-304,-333,
+-356,-370,-365,-344,-377,-395,-416,-437,-460,-465,-464,-466,-479,-478,-479,-479,-477,-478,-483,-487,
+-487,-484,-476,-473,-483,-487,-488,-485,-476,-435,-343,-291,-293,-364,-421,-481,-528,-558,-582,-591,
+-588,-603,-618,-625,-636,-621,-616,-620,-613,-628,-646,-651,-653,-659,-652,-656,-675,-702,-736,-760,
+-769,-765,-765,-777,-801,-828,-850,-861,-872,-887,-909,-936,-946,-949,-952,-969,-983,-986,-1001,-1019,
+-1044,-1066,-1082,-1084,-1088,-1091,-1097,-1110,-1131,-1144,-1163,-1172,-1187,-1183,-1188,-1192,-1209,-1227,-1243,-1262,
+-1280,-1294,-1305,-1310,-1315,-1324,-1340,-1356,-1368,-1377,-1381,-1389,-1403,-1412,-1417,-1417,-1417,-1423,-1432,-1443,
+-1459,-1477,-1476,-1476,-1470,-1461,-1465,-1449,-1440,-1431,-1418,-1413,-1409,-1411,-1414,-1419,-1426,-1434,-1439,-1438,
+-1437,-1422,-1414,-1411,-1407,-1402,-1399,-1399,-1396,-1402,-1406,-1403,-1402,-1400,-1394,-1393,-1388,-1381,-1372,-1365,
+-1361,-1355,-1344,-1341,-1334,-1332,-1322,-1313,-1302,-1291,-1277,-1265,-1254,-1245,-1234,-1217,-1214,-1205,-1195,-1183,
+-1173,-1170,-1163,-1160,-1156,-1153,-1153,-1144,-1138,-1133,-1131,-1128,-1126,-1117,-1114,-1110,-1119,-1115,-1116,-1115,
+-1112,-1110,-1110,-1094,-1110,-1105,-1102,-1099,-1095,-1092,-1087,-1083,-1078,-1069,-1063,-1063,-1063,-1057,-1046,-1030,
+-1024,-1020,-1014,-1011,-1003,-1001,-995,-991,-988,-977,-983,-982,-976,-977,-974,-977,-977,-971,-965,-965,
+-953,-955,-952,-942,-940,-929,-918,-914,-907,-903,-896,-888,-876,-867,-861,-857,-850,-846,-841,-832,
+-823,-815,-805,-793,-783,-776,-764,-753,-741,-728,-713,-700,-691,-676,-662,-648,-650,-642,-613,-576,
+-563,-573,-559,-543,-546,-517,-424,-426,-492,-503,-491,-456,-418,-394,-394,-391,-385,-386,-391,-384,
+-368,-345,-327,-313,-303,-282,-268,-252,-238,-223,-206,-190,-177,-153,-140,-123,-108,-88,-73,-49,
+-19,14,49,79,105,128,152,168,193,218,240,256,276,293,307,327,345,358,384,411,
+439,454,470,503,534,571,571,624,628,648,673,706,724,743,757,785,804,833,855,883,
+914,946,977,1003,1026,1042,1053,1060,1062,1059,1049,1028,1002,1009,1113,1204,1260,1256,1260,1352,
+1451,1533,1606,1676,1758,1843,1964,2006,2075,2073,2068,2018,2039,2091,2091,2071,2052,2008,2003,1972,
+1917,1874,1845,1813,1772,1736,1683,1651,1610,1562,1511,1480,1449,1418,1382,1326,1292,1264,1243,1233,
+1221,1211,1198,1172,1156,1143,1133,1114,1102,1099,1109,1117,1114,1108,1094,1063,1013,944,851,758,
+693,654,642,642,612,564,480,396,312,249,203,169,146,132,119,102,79,65,50,34,
+12,-6,-30,-57,-91,-117,-149,-170,-180,-185,-188,-189,-192,-196,-194,-195,-199,-210,-216,-222,
+-224,-231,-239,-250,-263,-278,-290,-300,-308,-313,-320,-325,-333,-341,-355,-373,-395,-417,-440,-463,
+-489,-509,-525,-538,-558,-576,-596,-612,-628,-643,-654,-662,-669,-671,-665,-661,-651,-637,-621,-603,
+-589,-574,-566,-556,-538,-516,-496,-469,-440,-410,-381,-346,-312,-282,-247,-214,-178,-145,-110,-81,
+-55,-7,32,61,87,148,188,239,307,355,398,465,507,546,592,643,683,733,784,824,
+847,887,928,961,997,1038,1085,1128,1165,1207,1249,1281,1316,1343,1380,1421,1447,1486,1530,1575,
+1615,1658,1687,1733,1776,1809,1844,1872,1905,1946,1992,2028,2055,2089,2115,2153,2179,2217,2252,2276,
+2291,2304,2339,2366,2391,2412,2440,2473,2510,2546,2569,2544,2570,2585,2552,2557,2539,2548,2551,2552,
+2550,2556,2564,2556,2547,2556,2546,2552,2553,2523,2498,2483,2476,2465,2457,2438,2427,2421,2413,2413,
+2415,2410,2404,2395,2376,2369,2360,2348,2340,2319,2302,2287,2266,2270,2286,2291,2301,2390,2341,2254,
+2215,2198,2192,2178,2197,2192,2102,2081,2142,2303,2403,2431,2287,2110,2038,2020,2021,2067,2082,2085,
+2098,2112,2105,2099,2097,2101,2105,2103,2102,2102,2105,2108,2121,2144,2166,2179,2199,2217,2226,2238,
+2261,2296,2335,2355,2372,2395,2418,2433,2439,2442,2453,2483,2517,2552,2583,2612,2634,2652,2665,2689,
+2719,2729,2717,2727,2748,2743,2750,2739,2741,2762,2777,2793,2817,2847,2839,2840,2828,2806,2880,2933,
+2943,2933,2938,2938,2938,2959,2992,3022,3033,3044,3062,3084,3116,3142,3167,3186,3191,3188,3186,3195,
+3204,3216,3231,3240,3252,3261,3270,3282,3303,3310,3313,3327,3337,3344,3348,3354,3364,3371,3377,3371,
+3371,3368,3367,3367,3335,3336,3338,3334,3334,3339,3344,3339,3339,3336,3337,3334,3348,3367,3394,3425,
+3433,3436,3418,3456,3509,3529,3577,3661,3743,3808,3854,3884,3917,3978,4083,4128,4141,4173,4236,4292,
+4297,4436,4544,4578,4550,4568,4573,4594,4610,4623,4596,4589,4637,4620,4564,4612,4641,4670,4630,4598,
+4619,4574,4523,4478,4542,4483,4476,4477,4477,4485,4483,4486,4472,4485,4501,4507,4512,4499,4484,4476,
+4471,4474,4464,4456,4456,4459,4462,4458,4450,4440,4436,4438,4439,4435,4431,4423,4413,4405,4397,4384,
+4373,4362,4352,4347,4350,4352,4349,4348,4343,4333,4316,4292,4265,4236,4201,4165,4134,4104,4075,4038,
+4001,3965,3942,3921,3894,3869,3842,3811,3773,3741,3713,3671,3628,3582,3539,3495,3453,3415,3377,3337,
+3306,3287,3265,3244,3234,3221,3205,3191,3167,3150,3134,3127,3109,3099,3094,3079,3068,3057,3043,3032,
+3030,3026,3021,3013,3000,2990,2983,2977,2972,2981,2984,2966,2954,2948,2948,2936,2903,2881,2865,2846,
+2858,2854,2830,2806,2791,2772,2755,2728,2708,2688,2668,2644,2623,2599,2570,2549,2525,2512,2492,2456,
+2434,2411,2384,2356,2339,2310,2294,2282,2261,2242,2219,2192,2175,2150,2126,2103,2073,2039,2008,1983,
+1952,1913,1871,1839,1802,1757,1718,1702,1682,1656,1625,1582,1543,1514,1465,1431,1390,1360,1323,1287,
+1256,1213,1188,1151,1111,1077,1037,1001,962,925,891,854,818,776,737,699,659,622,580,536,
+493,451,411,367,322,285,233,185,144,103,63,21,-27,-75,-116,-164,-220,-265,-303,-356,
+-400,-445,-498,-542,-587,-635,-693,-747,-778,-822,-864,-902,-940,-989,-1044,-1096,-1144,-1192,-1238,-1278,
+-1315,-1347,-1374,-1402,-1431,-1468,-1513,-1556,-1590,-1632,-1669,-1702,-1743,-1790,-1826,-1860,-1899,-1928,-1966,-2001,
+-2034,-2072,-2109,-2147,-2183,-2212,-2246,-2271,-2303,-2339,-2375,-2399,-2426,-2449,-2471,-2502,-2526,-2544,-2566,-2576,
+-2604,-2634,-2663,-2688,-2708,-2725,-2739,-2754,-2767,-2775,-2782,-2793,-2806,-2827,-2844,-2860,-2866,-2871,-2877,-2881,
+-2883,-2877,-2878,-2884,-2891,-2882,-2888,-2877,-2870,-2864,-2867,-2873,-2864,-2873,-2868,-2862,-2857,-2858,-2855,-2854,
+-2863,-2865,-2860,-2848,-2841,-2830,-2833,-2834,-2823,-2806,-2798,-2787,-2775,-2772,-2764,-2754,-2736,-2742,-2742,-2722,
+-2698,-2688,-2687,-2674,-2662,-2648,-2658,-2651,-2646,-2652,-2614,-2597,-2593,-2580,-2565,-2553,-2514,-2489,-2475,-2451,
+-2425,-2403,-2381,-2357,-2340,-2320,-2303,-2285,-2265,-2246,-2223,-2197,-2171,-2146,-2120,-2093,-2067,-2039,-2018,-1993,
+-1966,-1941,-1915,-1892,-1870,-1849,-1833,-1810,-1787,-1762,-1737,-1715,-1694,-1678,-1690,-1694,-1673,-1658,-1650,-1630,
+-1630,-1606,-1583,-1574,-1558,-1556,-1547,-1536,-1521,-1498,-1479,-1475,-1463,-1476,-1500,-1384,-1242,-1266,-1238,-1152,
+-1042,-924,-850,-818,-787,-751,-761,-778,-836,-924,-1012,-1029,-1025,-1039,-1034,-993,-941,-885,-813,-751,
+-836,-877,-880,-900,-893,-902,-912,-908,-891,-865,-846,-822,-803,-786,-767,-748,-734,-727,-716,-705,
+-686,-689,-704,-677,-622,-595,-584,-571,-563,-556,-551,-553,-557,-561,-560,-546,-526,-497,-461,-437,
+-419,-409,-393,-359,-320,-276,-234,-197,-167,-147,-135,-126,-111,-85,-50,-20,2,18,37,57,
+78,105,110,83,41,-3,-10,60,142,257,457,599,700,818,907,964,1015,1050,1024,1079,
+1089,1091,1017,983,969,958,976,998,1025,1023,1016,1009,995,981,994,1016,1037,1069,1100,1121,
+1139,1147,1135,1117,1107,1098,1090,1080,1071,1065,1060,1054,1048,1043,1035,1029,1031,1037,1032,1033,
+1028,1003,976,948,937,938,943,940,942,966,1003,1003,946,906,871,806,734,640,567,495,
+419,355,302,250,206,158,121,76,36,5,-26,-71,-147,-210,-250,-284,-300,-337,-354,-362,
+-398,-425,-435,-433,-429,-451,-470,-487,-509,-527,-539,-539,-543,-550,-562,-556,-556,-557,-556,-551,
+-550,-547,-545,-540,-535,-537,-544,-547,-547,-549,-537,-508,-463,-400,-302,-369,-480,-541,-579,-611,
+-634,-650,-674,-680,-672,-683,-685,-674,-663,-651,-659,-673,-662,-654,-676,-676,-686,-707,-728,-754,
+-785,-799,-797,-794,-800,-821,-847,-874,-889,-904,-914,-930,-944,-952,-956,-977,-1001,-1018,-1022,-1029,
+-1046,-1065,-1089,-1110,-1116,-1119,-1117,-1117,-1124,-1144,-1164,-1185,-1199,-1201,-1203,-1207,-1207,-1216,-1236,-1254,
+-1275,-1295,-1309,-1318,-1330,-1342,-1350,-1363,-1378,-1389,-1393,-1396,-1399,-1412,-1421,-1430,-1435,-1438,-1438,-1442,
+-1449,-1460,-1471,-1483,-1489,-1488,-1486,-1471,-1464,-1450,-1438,-1422,-1404,-1420,-1430,-1438,-1446,-1457,-1443,-1444,
+-1441,-1434,-1419,-1414,-1411,-1406,-1402,-1401,-1396,-1398,-1396,-1400,-1406,-1403,-1403,-1400,-1394,-1386,-1374,-1367,
+-1356,-1350,-1344,-1337,-1334,-1335,-1323,-1315,-1304,-1296,-1287,-1272,-1258,-1247,-1240,-1234,-1226,-1214,-1208,-1194,
+-1184,-1176,-1164,-1158,-1153,-1149,-1136,-1133,-1132,-1129,-1124,-1113,-1109,-1113,-1115,-1115,-1113,-1112,-1109,-1102,
+-1068,-1092,-1096,-1097,-1095,-1093,-1090,-1088,-1087,-1083,-1080,-1071,-1066,-1061,-1058,-1060,-1062,-1060,-1043,-1032,
+-1022,-1018,-1012,-1011,-1004,-999,-994,-989,-988,-978,-983,-980,-973,-974,-970,-967,-968,-965,-962,-947,
+-964,-953,-943,-930,-940,-934,-922,-913,-905,-901,-898,-893,-886,-886,-881,-877,-874,-867,-859,-846,
+-833,-825,-812,-803,-791,-779,-772,-762,-751,-736,-721,-708,-690,-674,-652,-643,-644,-616,-600,-598,
+-579,-562,-568,-564,-559,-552,-544,-511,-474,-458,-470,-473,-442,-419,-407,-401,-396,-396,-396,-385,
+-363,-342,-323,-314,-305,-294,-277,-263,-248,-235,-223,-208,-195,-175,-158,-141,-123,-111,-90,-71,
+-40,-11,13,43,72,95,115,139,162,186,208,226,244,263,281,298,323,338,351,374,
+401,433,458,488,511,544,582,598,604,657,659,673,700,728,740,753,786,809,839,866,
+898,931,959,979,993,1002,1013,1028,1044,1058,1065,1060,1046,1025,1052,1163,1235,1257,1271,1319,
+1418,1496,1563,1624,1697,1791,1861,1907,1978,2069,2077,2029,2017,2013,2032,2042,2056,2043,1989,1982,
+1925,1883,1857,1840,1802,1762,1719,1667,1621,1576,1536,1493,1463,1428,1395,1366,1317,1286,1250,1231,
+1214,1202,1187,1174,1161,1150,1140,1122,1114,1110,1097,1097,1100,1101,1103,1096,1059,1004,911,786,
+712,673,655,665,652,616,546,460,370,288,230,188,158,140,126,114,96,81,64,46,
+27,6,-13,-35,-66,-98,-124,-149,-172,-185,-195,-198,-202,-207,-213,-213,-212,-214,-218,-221,
+-223,-223,-228,-235,-250,-265,-281,-297,-311,-320,-327,-336,-341,-344,-347,-356,-373,-390,-410,-431,
+-454,-475,-492,-510,-525,-537,-558,-567,-579,-595,-610,-624,-632,-640,-643,-638,-633,-626,-613,-600,
+-585,-572,-563,-552,-539,-523,-503,-487,-464,-436,-409,-379,-346,-313,-281,-248,-209,-180,-146,-113,
+-78,-38,0,28,56,99,134,176,231,300,350,396,444,492,543,597,653,705,734,768,
+813,851,888,932,962,1001,1041,1079,1122,1171,1214,1259,1297,1335,1364,1394,1433,1471,1515,1558,
+1594,1645,1676,1713,1752,1784,1824,1850,1880,1910,1945,1987,2019,2044,2077,2107,2143,2186,2226,2258,
+2291,2315,2327,2344,2363,2398,2424,2415,2448,2497,2541,2569,2578,2578,2600,2590,2569,2558,2581,2580,
+2578,2579,2580,2583,2594,2593,2608,2580,2561,2549,2527,2521,2505,2485,2471,2465,2459,2468,2456,2452,
+2453,2450,2449,2441,2427,2410,2396,2378,2372,2357,2345,2338,2332,2328,2327,2364,2351,2297,2281,2263,
+2253,2247,2231,2222,2201,2189,2170,2166,2231,2297,2447,2391,2221,2127,2063,2039,2042,2067,2122,2139,
+2144,2138,2123,2114,2100,2098,2094,2098,2101,2094,2091,2096,2108,2126,2142,2150,2164,2172,2158,2174,
+2218,2241,2267,2300,2340,2392,2412,2423,2426,2431,2440,2462,2495,2529,2563,2593,2614,2628,2632,2651,
+2670,2697,2703,2723,2735,2724,2723,2743,2739,2741,2745,2756,2785,2814,2816,2816,2820,2814,2804,2854,
+2895,2912,2927,2931,2947,2985,3011,3019,3030,3041,3063,3085,3113,3136,3159,3173,3195,3208,3215,3217,
+3223,3228,3236,3244,3252,3263,3271,3278,3289,3302,3311,3318,3327,3335,3341,3346,3354,3364,3366,3368,
+3361,3355,3357,3365,3340,3327,3334,3328,3329,3330,3334,3332,3334,3331,3329,3328,3336,3363,3388,3421,
+3436,3442,3427,3470,3532,3561,3587,3624,3693,3792,3886,3914,3940,3965,4033,4149,4202,4199,4232,4313,
+4338,4380,4515,4580,4582,4613,4604,4609,4669,4676,4626,4585,4626,4629,4571,4584,4627,4649,4644,4638,
+4650,4662,4639,4564,4490,4548,4517,4509,4498,4493,4499,4515,4511,4499,4511,4521,4538,4568,4521,4503,
+4507,4517,4519,4517,4509,4511,4510,4508,4505,4494,4477,4468,4465,4460,4453,4447,4440,4434,4426,4417,
+4405,4397,4384,4377,4370,4367,4365,4365,4359,4352,4343,4328,4309,4284,4255,4229,4201,4173,4144,4107,
+4074,4039,4013,3994,3970,3947,3920,3889,3847,3811,3782,3738,3694,3655,3616,3574,3529,3491,3451,3414,
+3379,3342,3311,3294,3280,3253,3240,3226,3213,3193,3176,3161,3152,3133,3122,3112,3105,3102,3092,3089,
+3058,3040,3040,3039,3034,3029,3029,3029,3019,3003,3011,3012,2996,2995,2987,2978,2969,2956,2935,2914,
+2898,2911,2909,2885,2863,2846,2824,2796,2773,2751,2731,2709,2685,2661,2638,2608,2597,2569,2545,2523,
+2502,2472,2443,2423,2397,2369,2359,2349,2330,2306,2286,2256,2232,2214,2193,2166,2135,2100,2071,2045,
+2010,1971,1927,1900,1868,1825,1800,1778,1750,1717,1682,1649,1618,1590,1550,1517,1485,1455,1419,1359,
+1325,1302,1271,1228,1183,1144,1109,1076,1037,999,958,923,887,849,815,776,740,696,659,620,
+580,539,498,452,412,367,321,280,235,193,148,105,60,16,-31,-73,-119,-164,-207,-251,
+-293,-346,-403,-445,-489,-539,-589,-646,-697,-725,-762,-805,-844,-891,-943,-991,-1042,-1090,-1135,-1182,
+-1222,-1253,-1282,-1310,-1344,-1378,-1414,-1464,-1498,-1539,-1575,-1614,-1647,-1690,-1741,-1777,-1807,-1841,-1876,-1911,
+-1950,-1986,-2024,-2065,-2100,-2130,-2159,-2196,-2228,-2256,-2290,-2325,-2348,-2370,-2399,-2421,-2458,-2479,-2496,-2516,
+-2528,-2556,-2584,-2611,-2638,-2661,-2680,-2695,-2712,-2722,-2734,-2739,-2751,-2767,-2786,-2805,-2818,-2827,-2834,-2839,
+-2843,-2846,-2842,-2843,-2848,-2851,-2857,-2858,-2852,-2832,-2825,-2830,-2839,-2837,-2838,-2829,-2829,-2830,-2833,-2826,
+-2826,-2834,-2833,-2827,-2817,-2813,-2804,-2817,-2812,-2799,-2785,-2768,-2768,-2757,-2753,-2746,-2725,-2712,-2725,-2719,
+-2703,-2689,-2689,-2668,-2659,-2641,-2629,-2646,-2626,-2623,-2637,-2597,-2585,-2592,-2575,-2541,-2528,-2501,-2483,-2455,
+-2430,-2408,-2386,-2362,-2347,-2329,-2311,-2294,-2280,-2260,-2239,-2218,-2195,-2170,-2143,-2116,-2088,-2066,-2042,-2016,
+-1991,-1966,-1940,-1919,-1894,-1876,-1853,-1834,-1812,-1790,-1757,-1729,-1704,-1686,-1675,-1685,-1695,-1694,-1684,-1675,
+-1648,-1636,-1613,-1600,-1590,-1580,-1573,-1568,-1554,-1531,-1513,-1501,-1483,-1467,-1479,-1511,-1517,-1382,-1300,-1302,
+-1225,-1151,-1082,-1012,-968,-972,-917,-916,-953,-1023,-1073,-1111,-1085,-1075,-1089,-1083,-1036,-997,-953,-922,
+-914,-927,-939,-947,-947,-942,-950,-959,-960,-942,-922,-906,-884,-860,-838,-821,-804,-790,-777,-769,
+-755,-741,-744,-756,-717,-678,-662,-653,-637,-620,-613,-617,-623,-635,-639,-628,-607,-573,-532,-499,
+-476,-463,-447,-422,-390,-352,-314,-275,-237,-211,-197,-188,-177,-150,-123,-101,-85,-69,-59,-54,
+-42,-38,-37,-48,-83,-126,-157,-170,-104,80,361,600,765,827,894,889,912,948,923,951,
+1023,1004,953,910,899,895,883,883,897,906,905,894,874,859,857,880,907,939,957,976,
+993,1017,1056,1030,991,977,964,942,933,920,905,891,877,864,861,861,861,866,879,880,
+883,879,866,852,839,828,826,838,833,840,847,884,890,861,826,782,715,634,553,462,
+377,289,214,149,102,55,20,-25,-71,-105,-139,-168,-215,-260,-289,-324,-360,-392,-407,-432,
+-448,-452,-480,-505,-511,-516,-527,-545,-566,-583,-600,-609,-613,-618,-622,-629,-640,-640,-639,-638,
+-629,-621,-617,-609,-601,-598,-600,-608,-614,-616,-622,-622,-610,-582,-544,-525,-543,-562,-544,-546,
+-616,-652,-678,-710,-722,-730,-736,-739,-726,-706,-697,-692,-708,-719,-719,-716,-696,-683,-735,-757,
+-772,-793,-810,-821,-823,-826,-837,-864,-889,-914,-932,-939,-951,-953,-965,-976,-1001,-1027,-1047,-1061,
+-1067,-1079,-1090,-1104,-1120,-1136,-1143,-1142,-1147,-1156,-1171,-1181,-1197,-1210,-1221,-1226,-1230,-1239,-1247,-1256,
+-1272,-1291,-1308,-1326,-1337,-1344,-1360,-1373,-1385,-1397,-1409,-1416,-1417,-1420,-1425,-1431,-1436,-1447,-1450,-1453,
+-1455,-1457,-1463,-1470,-1486,-1495,-1483,-1482,-1483,-1481,-1458,-1459,-1470,-1456,-1439,-1443,-1448,-1459,-1465,-1472,
+-1466,-1462,-1457,-1447,-1432,-1427,-1423,-1415,-1414,-1408,-1406,-1407,-1413,-1409,-1410,-1410,-1408,-1401,-1388,-1370,
+-1361,-1354,-1351,-1350,-1341,-1334,-1325,-1307,-1311,-1305,-1294,-1284,-1275,-1261,-1252,-1247,-1234,-1223,-1219,-1214,
+-1204,-1194,-1185,-1175,-1165,-1149,-1139,-1131,-1126,-1124,-1120,-1114,-1109,-1112,-1102,-1100,-1101,-1103,-1102,-1095,
+-1097,-1099,-1095,-1088,-1087,-1082,-1083,-1083,-1081,-1076,-1069,-1064,-1057,-1056,-1053,-1051,-1052,-1046,-1032,-1024,
+-1020,-1013,-1009,-1007,-1001,-994,-991,-986,-985,-981,-969,-978,-976,-970,-968,-967,-967,-963,-959,-953,
+-958,-967,-960,-955,-930,-920,-929,-918,-905,-897,-893,-893,-886,-883,-888,-894,-893,-858,-865,-869,
+-851,-831,-819,-809,-800,-787,-774,-761,-751,-735,-724,-708,-693,-683,-667,-642,-625,-620,-600,-588,
+-573,-553,-537,-534,-533,-529,-519,-519,-521,-510,-501,-479,-451,-431,-412,-401,-407,-394,-382,-363,
+-352,-341,-329,-315,-308,-295,-280,-265,-258,-246,-233,-224,-211,-195,-180,-166,-148,-128,-105,-81,
+-60,-37,-12,13,36,61,80,109,129,149,172,193,214,235,254,273,295,316,341,359,
+381,397,415,440,472,497,530,567,607,586,642,657,668,695,715,740,751,785,829,863,
+901,923,944,952,952,957,975,1015,1053,1083,1107,1110,1099,1079,1059,1086,1191,1276,1288,1326,
+1396,1502,1558,1587,1642,1710,1809,1911,1972,2022,2021,1997,1960,1969,1983,2003,2009,1998,1986,1962,
+1967,1905,1864,1852,1865,1807,1745,1687,1637,1599,1563,1514,1487,1452,1415,1383,1345,1294,1267,1238,
+1217,1200,1180,1167,1153,1146,1141,1138,1119,1113,1112,1100,1096,1099,1103,1102,1090,1053,982,864,
+742,667,631,622,615,591,555,493,422,338,270,214,170,142,130,120,109,94,79,65,
+47,21,-1,-19,-45,-73,-100,-128,-158,-179,-194,-208,-211,-214,-218,-226,-226,-230,-231,-237,
+-245,-244,-242,-254,-259,-270,-282,-292,-306,-320,-330,-341,-350,-357,-354,-355,-358,-368,-385,-402,
+-414,-437,-454,-475,-495,-512,-527,-540,-545,-557,-568,-583,-595,-606,-611,-615,-610,-605,-603,-594,
+-579,-561,-550,-539,-527,-511,-493,-475,-462,-443,-418,-393,-362,-334,-301,-270,-234,-199,-166,-131,
+-99,-68,-38,1,37,69,121,152,186,235,289,343,389,440,491,538,580,630,688,736,
+788,814,850,887,934,980,1026,1067,1111,1154,1194,1223,1265,1301,1332,1369,1413,1456,1506,1539,
+1567,1613,1652,1692,1724,1754,1785,1807,1841,1872,1911,1954,1987,2026,2065,2098,2143,2173,2198,2230,
+2250,2275,2307,2320,2350,2365,2393,2426,2444,2459,2499,2533,2569,2600,2558,2636,2606,2591,2586,2576,
+2568,2568,2578,2589,2580,2585,2584,2578,2576,2575,2571,2555,2542,2528,2514,2506,2500,2492,2489,2485,
+2493,2491,2482,2476,2457,2436,2424,2419,2411,2398,2400,2400,2394,2385,2383,2370,2351,2337,2311,2288,
+2275,2261,2255,2251,2242,2228,2228,2232,2237,2223,2272,2248,2184,2123,2077,2064,2080,2107,2122,2163,
+2158,2146,2134,2111,2102,2100,2088,2079,2078,2075,2070,2063,2063,2076,2097,2150,2220,2270,2291,2246,
+2224,2235,2258,2298,2343,2383,2413,2423,2417,2417,2432,2461,2488,2521,2544,2571,2598,2609,2617,2624,
+2638,2653,2675,2679,2688,2709,2706,2701,2715,2721,2735,2753,2776,2775,2772,2793,2823,2857,2887,2875,
+2825,2859,2900,2944,2968,2985,2997,3007,3021,3038,3062,3084,3106,3136,3159,3175,3194,3205,3212,3226,
+3236,3242,3245,3251,3253,3260,3272,3284,3298,3314,3318,3321,3326,3332,3330,3332,3345,3354,3356,3353,
+3352,3349,3345,3347,3340,3318,3331,3329,3327,3326,3327,3327,3327,3331,3328,3320,3330,3351,3375,3407,
+3431,3446,3438,3440,3511,3564,3632,3660,3689,3735,3818,3932,3952,3986,4012,4120,4214,4224,4259,4332,
+4356,4325,4463,4559,4609,4648,4658,4625,4609,4653,4624,4583,4614,4671,4648,4581,4632,4643,4634,4638,
+4649,4666,4680,4656,4571,4552,4574,4564,4536,4516,4516,4521,4532,4531,4516,4528,4538,4531,4530,4527,
+4535,4547,4564,4574,4577,4570,4561,4554,4543,4533,4527,4522,4492,4476,4466,4460,4452,4448,4444,4435,
+4427,4420,4422,4414,4395,4387,4380,4373,4370,4366,4358,4347,4338,4321,4302,4282,4262,4239,4213,4177,
+4139,4105,4082,4064,4048,4025,4000,3969,3930,3884,3852,3813,3768,3725,3688,3649,3610,3570,3530,3489,
+3453,3417,3385,3357,3327,3298,3274,3259,3247,3226,3209,3193,3179,3170,3157,3145,3135,3129,3131,3123,
+3112,3104,3088,3071,3063,3061,3069,3076,3078,3066,3044,3048,3045,3031,3023,3017,3017,3019,3008,2995,
+2976,2950,2951,2955,2933,2909,2890,2866,2844,2818,2798,2773,2744,2727,2704,2675,2651,2634,2605,2591,
+2559,2534,2506,2480,2464,2433,2424,2415,2396,2377,2351,2319,2291,2271,2251,2230,2198,2162,2130,2105,
+2074,2029,2001,1961,1932,1895,1871,1847,1819,1782,1747,1719,1691,1661,1625,1587,1552,1519,1482,1435,
+1402,1377,1338,1301,1259,1220,1181,1143,1107,1070,1032,998,958,923,886,848,811,774,737,697,
+656,619,588,547,498,453,411,369,329,291,240,193,151,107,69,28,-24,-67,-108,-153,
+-192,-243,-303,-346,-394,-437,-489,-544,-587,-633,-668,-715,-752,-795,-842,-890,-944,-990,-1031,-1074,
+-1116,-1160,-1191,-1219,-1250,-1285,-1327,-1369,-1414,-1442,-1486,-1524,-1562,-1599,-1643,-1692,-1727,-1754,-1787,-1817,
+-1859,-1902,-1937,-1978,-2016,-2044,-2073,-2108,-2146,-2173,-2209,-2237,-2266,-2291,-2314,-2338,-2390,-2417,-2435,-2449,
+-2468,-2487,-2514,-2536,-2561,-2589,-2612,-2631,-2647,-2666,-2681,-2696,-2702,-2714,-2729,-2745,-2763,-2777,-2787,-2793,
+-2799,-2801,-2807,-2808,-2808,-2809,-2812,-2819,-2816,-2808,-2801,-2796,-2805,-2799,-2805,-2803,-2799,-2791,-2800,-2801,
+-2792,-2800,-2808,-2801,-2797,-2794,-2792,-2788,-2799,-2796,-2782,-2769,-2757,-2750,-2739,-2736,-2729,-2708,-2694,-2705,
+-2693,-2678,-2678,-2667,-2652,-2643,-2622,-2618,-2626,-2603,-2605,-2622,-2564,-2554,-2565,-2556,-2539,-2520,-2494,-2465,
+-2442,-2414,-2394,-2372,-2351,-2335,-2318,-2304,-2288,-2273,-2255,-2233,-2209,-2183,-2160,-2137,-2108,-2085,-2061,-2035,
+-2014,-1989,-1964,-1939,-1914,-1891,-1869,-1847,-1828,-1806,-1781,-1755,-1730,-1702,-1685,-1690,-1705,-1726,-1702,-1692,
+-1676,-1653,-1645,-1629,-1616,-1615,-1596,-1590,-1576,-1556,-1544,-1541,-1529,-1505,-1482,-1472,-1513,-1540,-1507,-1426,
+-1366,-1325,-1230,-1193,-1167,-1152,-1131,-1102,-1105,-1124,-1151,-1186,-1187,-1149,-1138,-1142,-1129,-1101,-1058,-1023,
+-1009,-1004,-1003,-1001,-1003,-1011,-1004,-1008,-1008,-1008,-993,-973,-956,-937,-918,-895,-868,-844,-836,-825,
+-808,-789,-798,-810,-789,-753,-726,-709,-696,-686,-680,-686,-689,-697,-704,-698,-670,-635,-594,-558,
+-529,-509,-493,-476,-446,-420,-384,-346,-311,-280,-258,-247,-236,-211,-184,-162,-148,-142,-141,-144,
+-150,-158,-177,-204,-240,-268,-279,-266,-213,-27,290,565,760,855,867,829,779,859,892,909,
+965,1031,1003,904,852,840,819,813,804,794,786,769,753,740,736,740,756,782,808,824,
+836,851,867,877,874,852,833,817,795,777,770,757,742,727,710,688,671,664,673,683,
+690,690,687,679,698,696,652,648,656,653,656,669,692,707,706,660,604,536,467,397,
+317,219,150,94,44,-13,-57,-98,-141,-173,-195,-225,-274,-314,-344,-366,-388,-427,-450,-458,
+-501,-520,-524,-541,-560,-587,-599,-612,-623,-643,-655,-667,-681,-690,-696,-699,-705,-709,-722,-722,
+-711,-709,-702,-694,-684,-676,-672,-669,-669,-676,-684,-688,-689,-687,-679,-665,-654,-654,-653,-646,
+-644,-629,-661,-681,-689,-725,-761,-767,-775,-775,-756,-742,-736,-744,-754,-748,-746,-750,-722,-766,
+-780,-799,-795,-834,-852,-851,-859,-867,-888,-916,-941,-953,-967,-973,-982,-986,-1002,-1030,-1064,-1083,
+-1094,-1098,-1103,-1118,-1124,-1131,-1139,-1153,-1163,-1168,-1181,-1195,-1213,-1223,-1230,-1239,-1244,-1252,-1263,-1273,
+-1285,-1298,-1315,-1329,-1344,-1358,-1368,-1382,-1394,-1407,-1421,-1427,-1436,-1438,-1437,-1442,-1445,-1451,-1457,-1463,
+-1468,-1466,-1467,-1472,-1480,-1494,-1502,-1508,-1509,-1508,-1502,-1502,-1507,-1490,-1480,-1474,-1480,-1484,-1487,-1483,
+-1480,-1484,-1481,-1474,-1467,-1457,-1448,-1436,-1429,-1429,-1419,-1413,-1409,-1407,-1404,-1415,-1410,-1410,-1402,-1396,
+-1387,-1371,-1361,-1348,-1337,-1330,-1326,-1316,-1311,-1305,-1298,-1293,-1285,-1278,-1264,-1254,-1243,-1237,-1228,-1223,
+-1216,-1207,-1192,-1184,-1165,-1160,-1148,-1126,-1131,-1131,-1125,-1120,-1104,-1111,-1107,-1093,-1095,-1088,-1087,-1089,
+-1085,-1079,-1077,-1082,-1071,-1078,-1082,-1078,-1074,-1067,-1061,-1059,-1054,-1052,-1050,-1050,-1043,-1034,-1024,-1023,
+-1018,-1017,-1011,-1006,-1002,-997,-990,-985,-982,-976,-970,-967,-971,-969,-967,-965,-965,-963,-960,-956,
+-952,-953,-957,-960,-955,-930,-912,-926,-912,-904,-893,-887,-883,-879,-873,-874,-869,-868,-860,-857,
+-855,-842,-828,-817,-809,-798,-786,-771,-756,-741,-727,-713,-695,-684,-676,-661,-643,-629,-619,-612,
+-606,-574,-561,-552,-539,-514,-501,-496,-494,-486,-489,-477,-459,-429,-422,-412,-400,-392,-375,-359,
+-349,-344,-339,-330,-321,-308,-293,-282,-268,-251,-241,-228,-216,-204,-189,-171,-156,-142,-121,-97,
+-74,-52,-28,-12,7,28,50,70,93,114,134,155,179,204,225,248,273,294,313,332,
+351,373,392,410,430,461,493,516,552,601,589,638,667,668,692,712,735,770,802,837,
+859,879,871,864,881,930,965,1013,1061,1089,1107,1127,1126,1102,1082,1062,1113,1229,1311,1341,
+1368,1447,1544,1572,1604,1661,1725,1813,1889,1972,2024,2037,2010,1987,2000,1996,1971,1967,1944,1920,
+1914,1943,1870,1807,1839,1832,1765,1706,1643,1595,1565,1532,1509,1484,1436,1386,1336,1301,1261,1231,
+1213,1203,1190,1177,1163,1145,1128,1126,1129,1119,1109,1112,1106,1101,1102,1102,1097,1076,1030,957,
+819,710,638,586,548,519,484,453,413,366,307,242,188,153,128,115,108,99,86,75,
+61,42,16,-9,-31,-55,-85,-106,-135,-164,-187,-207,-221,-225,-228,-238,-245,-250,-255,-254,
+-256,-262,-267,-271,-281,-289,-298,-311,-325,-334,-343,-353,-359,-365,-368,-365,-365,-359,-356,-366,
+-381,-399,-412,-429,-449,-468,-488,-502,-513,-523,-532,-542,-552,-558,-561,-567,-572,-567,-562,-563,
+-556,-543,-528,-519,-505,-492,-477,-461,-445,-431,-413,-393,-370,-348,-323,-303,-268,-228,-189,-152,
+-117,-80,-48,-24,8,51,78,109,163,200,240,271,330,389,441,493,539,587,641,693,
+742,786,825,864,895,938,988,1025,1071,1119,1159,1192,1235,1277,1316,1351,1381,1420,1468,1514,
+1548,1580,1623,1654,1695,1721,1740,1786,1820,1849,1889,1923,1970,2012,2035,2070,2121,2151,2176,2211,
+2232,2272,2291,2311,2334,2355,2373,2397,2424,2436,2450,2484,2537,2582,2610,2591,2577,2629,2636,2632,
+2615,2614,2604,2601,2580,2576,2582,2599,2600,2591,2584,2575,2578,2562,2547,2539,2534,2527,2508,2513,
+2511,2517,2512,2506,2499,2486,2486,2484,2466,2456,2442,2446,2432,2413,2404,2400,2388,2381,2350,2341,
+2327,2328,2345,2346,2318,2315,2297,2299,2299,2218,2192,2197,2173,2137,2110,2102,2099,2114,2154,2163,
+2160,2128,2102,2089,2073,2064,2073,2074,2080,2080,2077,2079,2085,2124,2220,2247,2260,2265,2235,2164,
+2160,2192,2231,2280,2335,2374,2392,2396,2384,2392,2410,2439,2466,2492,2524,2555,2575,2596,2607,2610,
+2617,2628,2639,2646,2651,2660,2670,2682,2702,2713,2728,2734,2745,2750,2758,2792,2815,2858,2891,2904,
+2867,2827,2888,2925,2949,2976,2988,2999,3009,3029,3049,3062,3093,3136,3156,3177,3190,3200,3209,3225,
+3231,3242,3255,3258,3259,3266,3274,3286,3301,3319,3322,3341,3348,3343,3337,3337,3339,3336,3332,3336,
+3339,3342,3341,3325,3332,3321,3326,3329,3328,3327,3329,3327,3332,3330,3329,3321,3325,3339,3361,3392,
+3423,3442,3449,3461,3490,3552,3590,3688,3744,3771,3819,3855,3927,3966,4036,4079,4227,4269,4268,4323,
+4403,4370,4378,4502,4600,4666,4650,4601,4622,4699,4682,4658,4680,4688,4718,4654,4619,4639,4633,4642,
+4631,4638,4655,4657,4642,4596,4575,4576,4558,4542,4530,4532,4538,4539,4543,4558,4575,4568,4566,4566,
+4564,4571,4583,4600,4611,4612,4607,4589,4565,4548,4538,4535,4533,4497,4475,4469,4464,4464,4466,4465,
+4462,4461,4461,4453,4441,4425,4412,4400,4388,4382,4375,4366,4357,4347,4333,4319,4300,4283,4262,4237,
+4205,4167,4140,4128,4115,4097,4074,4045,4010,3965,3927,3892,3850,3808,3768,3729,3692,3654,3614,3572,
+3532,3489,3451,3419,3393,3366,3336,3304,3271,3245,3231,3221,3211,3198,3185,3178,3169,3163,3157,3156,
+3155,3148,3142,3136,3124,3110,3107,3108,3121,3119,3104,3078,3083,3081,3070,3063,3061,3065,3067,3062,
+3049,3027,2999,3001,2997,2979,2958,2931,2911,2888,2868,2840,2806,2783,2765,2744,2718,2697,2665,2643,
+2620,2592,2565,2541,2509,2503,2496,2480,2461,2439,2416,2380,2354,2329,2315,2288,2255,2223,2192,2163,
+2131,2092,2049,2018,1995,1966,1933,1921,1888,1852,1817,1787,1754,1720,1684,1650,1619,1583,1552,1501,
+1460,1445,1413,1377,1331,1292,1251,1215,1176,1140,1103,1069,1032,997,959,920,885,843,808,776,
+737,696,660,618,578,535,491,453,417,374,334,287,243,197,155,112,67,22,-13,-51,
+-102,-144,-194,-247,-290,-341,-390,-446,-501,-538,-574,-615,-662,-701,-750,-805,-854,-895,-932,-975,
+-1018,-1057,-1093,-1129,-1157,-1188,-1227,-1278,-1327,-1359,-1399,-1439,-1477,-1515,-1548,-1591,-1635,-1675,-1703,-1732,
+-1767,-1808,-1851,-1892,-1929,-1966,-1989,-2022,-2056,-2090,-2122,-2160,-2186,-2206,-2236,-2259,-2310,-2345,-2369,-2390,
+-2409,-2419,-2441,-2465,-2487,-2509,-2537,-2562,-2583,-2605,-2623,-2641,-2655,-2668,-2677,-2691,-2708,-2720,-2735,-2749,
+-2756,-2763,-2766,-2773,-2773,-2777,-2773,-2779,-2782,-2777,-2771,-2765,-2755,-2768,-2771,-2776,-2774,-2773,-2758,-2768,
+-2769,-2762,-2777,-2763,-2766,-2775,-2756,-2756,-2769,-2785,-2771,-2762,-2739,-2742,-2741,-2724,-2726,-2716,-2696,-2675,
+-2694,-2678,-2665,-2660,-2661,-2632,-2621,-2602,-2617,-2607,-2578,-2586,-2602,-2570,-2568,-2549,-2525,-2512,-2487,-2468,
+-2447,-2423,-2400,-2378,-2358,-2340,-2321,-2306,-2290,-2274,-2259,-2240,-2217,-2194,-2170,-2146,-2127,-2103,-2080,-2055,
+-2032,-2008,-1981,-1958,-1934,-1912,-1889,-1865,-1844,-1828,-1804,-1781,-1755,-1725,-1704,-1689,-1693,-1716,-1725,-1717,
+-1696,-1683,-1670,-1652,-1644,-1637,-1624,-1617,-1609,-1593,-1571,-1569,-1562,-1544,-1519,-1499,-1486,-1508,-1500,-1483,
+-1437,-1429,-1428,-1367,-1309,-1265,-1227,-1220,-1207,-1211,-1215,-1226,-1246,-1245,-1215,-1201,-1197,-1173,-1137,-1107,
+-1089,-1078,-1074,-1083,-1089,-1082,-1080,-1067,-1059,-1056,-1046,-1029,-1013,-1002,-983,-956,-929,-901,-880,-875,
+-864,-846,-851,-841,-796,-801,-809,-780,-758,-744,-741,-739,-743,-751,-755,-747,-719,-689,-660,-626,
+-598,-576,-556,-538,-516,-492,-460,-427,-387,-355,-326,-308,-292,-270,-238,-214,-202,-200,-200,-207,
+-224,-247,-273,-320,-370,-401,-423,-376,-225,-1,319,566,722,791,838,834,776,747,792,907,
+972,992,922,911,837,785,755,728,709,686,649,620,600,593,596,602,619,628,647,674,
+688,701,709,710,703,699,690,675,661,652,639,621,615,606,587,562,532,501,487,491,
+505,515,507,495,487,493,496,491,492,486,488,484,488,484,470,443,376,341,300,257,
+186,128,81,67,24,-43,-102,-147,-191,-226,-253,-242,-287,-360,-376,-395,-432,-460,-490,-519,
+-538,-551,-578,-590,-618,-631,-652,-678,-694,-705,-717,-728,-733,-742,-754,-769,-771,-767,-772,-781,
+-790,-797,-792,-784,-774,-760,-753,-743,-740,-739,-739,-744,-737,-743,-741,-738,-733,-725,-725,-727,
+-724,-720,-720,-717,-703,-682,-669,-735,-788,-796,-792,-787,-786,-780,-778,-780,-745,-752,-763,-752,
+-800,-817,-820,-844,-860,-877,-881,-889,-905,-926,-945,-960,-974,-987,-1005,-1011,-1024,-1044,-1064,-1084,
+-1100,-1110,-1128,-1137,-1146,-1149,-1147,-1149,-1156,-1174,-1189,-1201,-1218,-1234,-1248,-1255,-1260,-1266,-1273,-1283,
+-1293,-1309,-1322,-1336,-1346,-1361,-1373,-1383,-1401,-1415,-1424,-1436,-1444,-1452,-1456,-1457,-1457,-1460,-1464,-1468,
+-1471,-1475,-1478,-1478,-1482,-1490,-1501,-1506,-1518,-1530,-1540,-1542,-1527,-1513,-1515,-1530,-1541,-1526,-1519,-1509,
+-1500,-1486,-1487,-1488,-1475,-1459,-1463,-1464,-1466,-1452,-1440,-1431,-1417,-1421,-1421,-1421,-1420,-1415,-1411,-1413,
+-1412,-1401,-1384,-1364,-1353,-1344,-1331,-1320,-1314,-1308,-1301,-1290,-1284,-1275,-1266,-1258,-1249,-1238,-1229,-1221,
+-1214,-1203,-1192,-1189,-1181,-1164,-1142,-1140,-1150,-1145,-1137,-1126,-1118,-1108,-1105,-1101,-1107,-1098,-1089,-1087,
+-1083,-1076,-1075,-1073,-1076,-1069,-1069,-1059,-1054,-1058,-1058,-1052,-1053,-1050,-1051,-1047,-1039,-1029,-1025,-1021,
+-1019,-1012,-1009,-1003,-997,-992,-988,-972,-973,-973,-971,-957,-963,-967,-963,-964,-964,-960,-962,-963,
+-963,-962,-961,-958,-961,-947,-940,-929,-928,-917,-910,-896,-889,-883,-876,-873,-868,-858,-849,-842,
+-832,-827,-828,-827,-820,-818,-808,-790,-775,-756,-739,-724,-707,-695,-683,-676,-667,-654,-646,-644,
+-635,-626,-607,-583,-565,-547,-528,-520,-505,-506,-494,-481,-466,-452,-436,-408,-425,-396,-388,-377,
+-365,-355,-350,-342,-333,-322,-306,-295,-286,-270,-252,-239,-225,-213,-198,-189,-170,-156,-138,-113,
+-92,-71,-45,-31,-15,9,25,45,67,90,110,127,148,171,192,216,239,266,290,311,
+327,348,368,395,418,440,466,474,501,540,581,609,598,646,653,662,680,682,685,678,
+691,718,759,811,877,940,985,995,1044,1072,1092,1111,1117,1113,1096,1077,1062,1129,1265,1320,
+1338,1364,1459,1549,1570,1640,1701,1757,1847,1882,1950,1979,2013,2020,2022,2026,1991,1941,1930,1898,
+1874,1896,1895,1810,1773,1771,1762,1722,1689,1621,1562,1527,1511,1503,1461,1402,1340,1288,1257,1224,
+1205,1205,1207,1198,1188,1175,1152,1130,1114,1110,1112,1105,1107,1104,1102,1096,1095,1085,1062,1007,
+925,787,686,618,556,501,435,394,369,359,333,289,226,173,142,119,103,93,86,72,
+61,50,31,12,-10,-37,-61,-87,-112,-143,-172,-196,-217,-230,-238,-243,-247,-259,-267,-272,
+-272,-277,-281,-285,-294,-304,-314,-321,-333,-348,-364,-373,-376,-381,-382,-378,-376,-372,-370,-367,
+-367,-367,-373,-391,-408,-424,-433,-447,-464,-479,-493,-502,-509,-516,-521,-525,-529,-531,-532,-530,
+-523,-514,-506,-494,-486,-473,-463,-448,-434,-421,-406,-389,-368,-346,-321,-310,-293,-270,-238,-198,
+-160,-120,-83,-47,-14,18,58,92,110,152,193,237,280,340,394,441,496,536,582,642,
+690,740,787,829,871,913,951,1001,1045,1086,1126,1165,1210,1233,1272,1310,1351,1398,1437,1478,
+1521,1552,1604,1639,1669,1699,1727,1755,1780,1813,1844,1891,1933,1967,2013,2043,2074,2107,2143,2174,
+2203,2223,2261,2284,2330,2339,2340,2371,2389,2419,2466,2490,2521,2558,2563,2600,2596,2632,2618,2628,
+2656,2639,2621,2616,2622,2613,2607,2609,2622,2606,2615,2603,2597,2592,2591,2564,2562,2553,2545,2543,
+2540,2545,2551,2548,2538,2526,2513,2506,2495,2480,2465,2456,2459,2459,2464,2448,2433,2423,2415,2404,
+2415,2425,2379,2365,2366,2366,2350,2352,2294,2242,2211,2205,2173,2152,2144,2141,2133,2129,2140,2157,
+2160,2098,2078,2074,2078,2085,2095,2111,2128,2151,2171,2178,2177,2183,2209,2230,2248,2286,2267,2242,
+2183,2168,2185,2217,2248,2276,2312,2335,2350,2361,2380,2408,2438,2467,2498,2536,2567,2587,2603,2609,
+2613,2617,2624,2617,2628,2644,2655,2667,2679,2683,2700,2710,2724,2750,2764,2784,2801,2825,2848,2856,
+2844,2834,2826,2866,2927,2955,2972,2984,2993,3007,3026,3045,3082,3121,3130,3163,3188,3203,3212,3225,
+3240,3254,3259,3264,3263,3266,3270,3291,3310,3324,3331,3338,3339,3338,3351,3350,3341,3336,3331,3329,
+3332,3327,3333,3334,3324,3326,3324,3327,3325,3325,3327,3327,3328,3327,3328,3322,3322,3332,3354,3379,
+3416,3442,3452,3458,3497,3531,3592,3626,3712,3813,3859,3876,3900,3919,3979,4086,4157,4271,4290,4302,
+4395,4442,4423,4626,4653,4651,4676,4666,4668,4697,4737,4697,4671,4663,4719,4695,4629,4634,4639,4633,
+4641,4639,4634,4631,4622,4599,4590,4595,4575,4550,4535,4546,4547,4545,4538,4556,4580,4574,4568,4569,
+4577,4588,4595,4613,4633,4645,4636,4628,4615,4597,4577,4548,4522,4504,4489,4476,4472,4478,4491,4500,
+4512,4524,4533,4534,4521,4501,4478,4458,4436,4416,4400,4389,4379,4368,4359,4347,4335,4319,4305,4284,
+4254,4222,4193,4183,4174,4158,4139,4114,4082,4039,4000,3967,3927,3889,3851,3811,3774,3736,3699,3657,
+3614,3574,3530,3486,3452,3418,3391,3365,3341,3314,3283,3247,3228,3223,3212,3200,3194,3188,3184,3183,
+3187,3187,3186,3182,3175,3169,3157,3147,3137,3134,3139,3124,3107,3124,3125,3117,3115,3111,3109,3115,
+3113,3101,3076,3044,3041,3043,3027,3006,2974,2950,2934,2910,2875,2850,2824,2800,2774,2759,2732,2706,
+2677,2650,2625,2603,2594,2587,2569,2551,2529,2506,2480,2444,2411,2391,2376,2355,2320,2287,2256,2226,
+2193,2154,2115,2083,2059,2036,2007,1992,1957,1918,1888,1856,1828,1795,1754,1712,1679,1649,1614,1579,
+1552,1506,1476,1450,1409,1365,1323,1284,1246,1214,1180,1144,1107,1071,1035,997,959,918,883,847,
+811,773,737,699,656,618,569,529,494,451,410,368,326,283,239,193,150,110,67,30,
+-2,-54,-99,-146,-198,-237,-291,-346,-397,-445,-485,-528,-566,-606,-653,-708,-761,-804,-841,-880,
+-920,-961,-1001,-1038,-1071,-1098,-1136,-1182,-1237,-1276,-1310,-1349,-1389,-1431,-1471,-1503,-1544,-1586,-1621,-1647,
+-1680,-1719,-1758,-1799,-1840,-1877,-1911,-1939,-1971,-2005,-2034,-2071,-2104,-2123,-2142,-2174,-2213,-2259,-2287,-2308,
+-2347,-2354,-2372,-2393,-2414,-2438,-2460,-2483,-2508,-2533,-2554,-2572,-2589,-2605,-2620,-2637,-2652,-2667,-2678,-2692,
+-2706,-2719,-2725,-2728,-2732,-2735,-2740,-2742,-2744,-2742,-2737,-2729,-2727,-2731,-2742,-2747,-2747,-2748,-2748,-2741,
+-2734,-2730,-2726,-2754,-2746,-2751,-2738,-2728,-2726,-2744,-2748,-2744,-2732,-2733,-2728,-2708,-2704,-2708,-2695,-2682,
+-2670,-2670,-2658,-2652,-2642,-2632,-2632,-2607,-2586,-2611,-2581,-2565,-2570,-2587,-2546,-2533,-2522,-2507,-2491,-2470,
+-2449,-2429,-2407,-2387,-2366,-2349,-2330,-2312,-2294,-2281,-2264,-2246,-2228,-2205,-2184,-2160,-2140,-2118,-2095,-2073,
+-2050,-2026,-2003,-1975,-1950,-1929,-1906,-1884,-1862,-1843,-1820,-1797,-1776,-1754,-1729,-1707,-1694,-1697,-1735,-1724,
+-1720,-1714,-1708,-1678,-1663,-1666,-1655,-1638,-1634,-1612,-1598,-1586,-1578,-1578,-1550,-1531,-1517,-1501,-1521,-1510,
+-1494,-1476,-1444,-1433,-1392,-1337,-1317,-1299,-1282,-1291,-1325,-1336,-1329,-1309,-1287,-1265,-1247,-1226,-1204,-1183,
+-1160,-1144,-1137,-1148,-1163,-1164,-1153,-1126,-1110,-1098,-1090,-1074,-1054,-1033,-1021,-1002,-979,-947,-925,-919,
+-904,-901,-902,-898,-882,-863,-887,-859,-817,-794,-790,-793,-795,-809,-819,-797,-770,-735,-709,-692,
+-669,-646,-621,-604,-587,-564,-536,-504,-464,-427,-397,-376,-352,-329,-300,-265,-253,-246,-257,-269,
+-284,-302,-334,-387,-449,-482,-533,-520,-311,73,432,584,649,736,791,767,753,768,742,783,
+802,870,914,901,822,749,698,646,599,534,477,451,444,447,453,459,473,491,509,530,
+553,564,569,566,555,545,539,530,520,512,496,492,493,482,466,436,407,377,355,339,
+328,337,348,345,329,316,311,305,295,289,282,272,277,269,258,222,168,120,112,86,
+21,-19,-28,-67,-87,-113,-161,-203,-248,-290,-315,-344,-376,-416,-440,-447,-471,-506,-535,-559,
+-582,-605,-627,-649,-667,-681,-696,-717,-734,-762,-777,-787,-794,-801,-805,-813,-825,-837,-837,-828,
+-837,-849,-856,-859,-846,-836,-831,-827,-822,-816,-812,-812,-810,-805,-800,-793,-791,-791,-789,-782,
+-777,-776,-779,-781,-769,-734,-723,-720,-736,-724,-726,-746,-775,-798,-813,-818,-827,-834,-830,-794,
+-785,-838,-858,-864,-880,-894,-901,-908,-915,-938,-957,-970,-983,-994,-1010,-1034,-1047,-1064,-1080,-1092,
+-1108,-1122,-1131,-1141,-1156,-1169,-1171,-1168,-1167,-1172,-1186,-1203,-1217,-1234,-1255,-1270,-1273,-1278,-1285,-1290,
+-1305,-1322,-1338,-1350,-1361,-1370,-1384,-1401,-1413,-1424,-1435,-1447,-1453,-1460,-1467,-1471,-1477,-1477,-1478,-1483,
+-1485,-1485,-1484,-1487,-1492,-1497,-1504,-1510,-1514,-1525,-1541,-1546,-1551,-1546,-1568,-1589,-1575,-1564,-1549,-1539,
+-1521,-1503,-1484,-1494,-1498,-1475,-1495,-1500,-1487,-1480,-1472,-1452,-1448,-1435,-1437,-1426,-1427,-1432,-1424,-1430,
+-1426,-1413,-1402,-1387,-1376,-1366,-1357,-1342,-1332,-1320,-1311,-1304,-1293,-1285,-1269,-1259,-1245,-1233,-1235,-1224,
+-1211,-1202,-1190,-1177,-1168,-1162,-1155,-1165,-1157,-1157,-1148,-1134,-1129,-1125,-1123,-1119,-1117,-1116,-1106,-1082,
+-1087,-1076,-1065,-1060,-1066,-1064,-1065,-1063,-1054,-1040,-1043,-1048,-1046,-1055,-1049,-1037,-1015,-1020,-1020,-1016,
+-1011,-1003,-998,-994,-989,-983,-980,-976,-972,-967,-965,-962,-950,-958,-961,-961,-959,-960,-961,-957,
+-956,-959,-956,-954,-949,-955,-949,-942,-926,-908,-920,-914,-906,-894,-889,-880,-874,-868,-864,-857,
+-852,-828,-822,-830,-830,-824,-818,-809,-796,-782,-764,-750,-731,-715,-708,-696,-693,-687,-677,-665,
+-663,-662,-639,-628,-623,-600,-582,-565,-549,-535,-526,-518,-492,-458,-429,-425,-417,-400,-380,-361,
+-365,-371,-366,-358,-349,-337,-325,-313,-303,-291,-273,-255,-238,-226,-214,-200,-184,-170,-152,-129,
+-111,-88,-66,-46,-30,-13,8,27,46,63,80,98,114,134,159,182,204,228,257,283,
+302,321,341,360,392,401,426,449,468,486,496,522,540,558,595,608,601,602,613,641,
+671,710,761,812,856,909,964,995,1009,1053,1071,1098,1112,1121,1112,1092,1072,1068,1161,1256,
+1299,1323,1371,1453,1548,1610,1687,1766,1831,1890,1955,1943,1957,1987,2008,1985,1964,1952,1927,1885,
+1840,1830,1854,1851,1797,1763,1754,1731,1704,1674,1608,1529,1505,1503,1446,1398,1355,1301,1266,1238,
+1213,1201,1207,1207,1205,1196,1170,1149,1127,1111,1111,1104,1104,1099,1094,1092,1082,1079,1071,1048,
+998,908,777,684,611,554,499,427,349,338,355,334,285,218,167,130,106,88,73,69,
+57,47,37,22,7,-11,-36,-63,-92,-120,-150,-180,-204,-224,-239,-250,-255,-261,-273,-280,
+-287,-291,-300,-307,-313,-322,-332,-341,-350,-367,-373,-378,-390,-393,-391,-390,-381,-379,-375,-372,
+-366,-366,-367,-367,-365,-372,-393,-405,-428,-452,-473,-487,-495,-495,-498,-503,-508,-512,-510,-505,
+-501,-495,-486,-476,-467,-455,-440,-427,-413,-403,-389,-375,-361,-344,-330,-315,-298,-287,-268,-236,
+-207,-173,-127,-83,-47,-12,33,67,99,134,172,214,251,300,358,402,437,483,529,575,
+636,687,741,792,833,874,909,954,992,1034,1079,1105,1153,1191,1218,1270,1310,1344,1379,1422,
+1464,1500,1532,1575,1612,1657,1694,1729,1750,1785,1814,1849,1886,1917,1963,2002,2042,2088,2129,2158,
+2182,2193,2232,2247,2283,2323,2328,2357,2380,2399,2418,2444,2463,2495,2530,2568,2592,2635,2648,2632,
+2615,2673,2693,2683,2655,2659,2633,2626,2621,2627,2630,2621,2614,2604,2606,2602,2599,2604,2611,2592,
+2581,2567,2563,2568,2560,2539,2532,2532,2526,2517,2506,2498,2492,2486,2484,2480,2475,2466,2468,2456,
+2439,2422,2408,2391,2409,2395,2342,2306,2273,2235,2227,2218,2204,2186,2175,2163,2147,2145,2139,2135,
+2117,2098,2142,2183,2216,2186,2176,2179,2184,2203,2210,2211,2199,2193,2187,2166,2149,2151,2185,2214,
+2195,2191,2205,2230,2226,2226,2244,2276,2305,2328,2346,2367,2395,2429,2464,2498,2539,2571,2592,2602,
+2607,2610,2610,2629,2618,2636,2651,2652,2650,2668,2686,2700,2720,2732,2759,2784,2798,2806,2829,2829,
+2823,2820,2826,2866,2901,2938,2951,2954,2956,2967,2992,3027,3060,3084,3121,3146,3152,3183,3205,3219,
+3232,3247,3252,3260,3264,3270,3281,3283,3301,3315,3331,3344,3340,3339,3341,3329,3315,3329,3329,3328,
+3320,3322,3321,3326,3324,3311,3312,3326,3323,3324,3328,3330,3332,3335,3333,3326,3321,3333,3349,3373,
+3403,3441,3458,3461,3487,3535,3578,3651,3691,3775,3860,3951,3938,3926,3958,4025,4121,4253,4316,4311,
+4379,4483,4455,4469,4695,4653,4620,4670,4653,4663,4702,4688,4674,4640,4644,4684,4665,4618,4638,4643,
+4652,4643,4639,4645,4634,4606,4586,4592,4612,4624,4575,4539,4536,4540,4528,4517,4524,4534,4532,4536,
+4552,4572,4593,4621,4647,4665,4662,4657,4657,4657,4643,4612,4565,4517,4492,4477,4471,4474,4490,4523,
+4573,4633,4662,4681,4668,4652,4624,4569,4525,4484,4458,4436,4418,4401,4387,4373,4363,4354,4343,4327,
+4304,4273,4244,4232,4222,4211,4195,4173,4143,4107,4070,4038,4001,3967,3927,3893,3854,3813,3776,3738,
+3695,3653,3611,3564,3522,3484,3447,3420,3390,3368,3350,3328,3297,3268,3253,3234,3223,3213,3206,3203,
+3204,3210,3215,3221,3220,3214,3210,3202,3184,3166,3157,3160,3156,3167,3178,3177,3171,3171,3167,3160,
+3169,3168,3154,3130,3094,3087,3094,3074,3046,3018,2998,2982,2951,2913,2884,2859,2837,2817,2792,2764,
+2746,2720,2695,2672,2672,2663,2639,2615,2592,2569,2545,2510,2473,2458,2438,2412,2385,2354,2319,2285,
+2256,2220,2186,2149,2118,2093,2082,2051,2020,1989,1953,1923,1892,1860,1823,1787,1749,1718,1689,1661,
+1617,1592,1551,1512,1487,1444,1407,1363,1320,1285,1247,1214,1182,1145,1109,1069,1031,994,958,921,
+887,847,806,771,729,692,650,607,570,525,488,445,404,362,320,271,228,192,142,105,
+62,20,-14,-55,-102,-146,-188,-241,-304,-354,-392,-433,-469,-512,-561,-613,-661,-708,-752,-789,
+-825,-862,-900,-938,-971,-1008,-1041,-1084,-1143,-1196,-1231,-1268,-1305,-1341,-1386,-1427,-1458,-1496,-1534,-1568,
+-1594,-1633,-1669,-1708,-1748,-1784,-1817,-1850,-1886,-1914,-1946,-1982,-2023,-2050,-2064,-2083,-2116,-2168,-2212,-2245,
+-2272,-2287,-2304,-2320,-2343,-2366,-2392,-2416,-2441,-2464,-2490,-2510,-2529,-2542,-2556,-2578,-2597,-2613,-2626,-2641,
+-2654,-2667,-2678,-2681,-2684,-2689,-2692,-2700,-2708,-2705,-2706,-2700,-2691,-2692,-2704,-2712,-2714,-2714,-2712,-2716,
+-2717,-2709,-2708,-2703,-2727,-2713,-2712,-2714,-2709,-2705,-2725,-2714,-2711,-2700,-2709,-2699,-2681,-2687,-2690,-2682,
+-2659,-2668,-2658,-2645,-2636,-2627,-2621,-2600,-2591,-2588,-2594,-2554,-2556,-2554,-2565,-2529,-2509,-2498,-2486,-2469,
+-2451,-2432,-2413,-2396,-2375,-2356,-2340,-2323,-2306,-2288,-2274,-2255,-2237,-2217,-2193,-2174,-2150,-2129,-2110,-2087,
+-2062,-2038,-2010,-1989,-1967,-1943,-1921,-1898,-1877,-1857,-1839,-1818,-1795,-1774,-1753,-1719,-1708,-1697,-1700,-1735,
+-1742,-1742,-1717,-1697,-1689,-1687,-1682,-1657,-1657,-1639,-1612,-1602,-1593,-1586,-1579,-1554,-1537,-1526,-1513,-1524,
+-1531,-1445,-1420,-1362,-1363,-1379,-1347,-1363,-1336,-1318,-1338,-1356,-1369,-1351,-1323,-1297,-1281,-1266,-1253,-1244,
+-1230,-1222,-1219,-1219,-1221,-1218,-1209,-1197,-1183,-1166,-1151,-1130,-1108,-1081,-1058,-1040,-1016,-996,-975,-968,
+-955,-949,-948,-954,-944,-927,-912,-910,-913,-865,-847,-838,-838,-844,-850,-844,-821,-791,-769,-750,
+-727,-715,-687,-667,-653,-628,-598,-563,-540,-514,-478,-450,-419,-393,-370,-340,-316,-310,-312,-332,
+-357,-370,-390,-432,-487,-538,-589,-599,-446,-20,467,668,670,605,678,754,783,774,816,768,
+756,816,807,834,833,758,666,591,504,418,356,326,316,319,335,345,355,365,380,398,
+423,443,451,449,441,423,413,404,389,379,369,360,352,358,350,324,300,287,280,271,
+245,212,188,185,172,159,143,128,110,98,85,74,70,73,74,59,39,27,-52,-90,
+-76,-97,-164,-187,-204,-235,-275,-314,-347,-370,-386,-409,-438,-474,-505,-534,-555,-575,-595,-610,
+-630,-648,-666,-689,-710,-727,-734,-752,-770,-786,-803,-833,-850,-856,-861,-867,-872,-880,-891,-905,
+-897,-893,-904,-911,-909,-904,-894,-889,-888,-889,-885,-885,-881,-875,-872,-866,-855,-843,-841,-835,
+-833,-827,-825,-824,-823,-823,-815,-806,-792,-749,-665,-565,-510,-678,-783,-826,-848,-865,-875,-877,
+-841,-802,-867,-888,-887,-907,-907,-920,-935,-952,-972,-986,-1002,-1016,-1022,-1039,-1055,-1078,-1097,-1114,
+-1133,-1140,-1143,-1155,-1163,-1170,-1180,-1191,-1192,-1192,-1195,-1207,-1226,-1242,-1261,-1279,-1285,-1284,-1281,-1287,
+-1294,-1311,-1339,-1365,-1387,-1395,-1406,-1415,-1428,-1436,-1454,-1459,-1468,-1479,-1486,-1487,-1491,-1494,-1501,-1499,
+-1502,-1499,-1497,-1498,-1500,-1504,-1514,-1528,-1530,-1535,-1545,-1557,-1572,-1579,-1585,-1599,-1614,-1587,-1571,-1578,
+-1550,-1516,-1494,-1506,-1525,-1535,-1531,-1512,-1504,-1492,-1494,-1497,-1491,-1472,-1450,-1442,-1435,-1424,-1426,-1429,
+-1419,-1413,-1407,-1400,-1393,-1382,-1374,-1364,-1349,-1335,-1318,-1319,-1302,-1283,-1282,-1265,-1255,-1251,-1244,-1232,
+-1214,-1206,-1201,-1191,-1178,-1164,-1150,-1140,-1143,-1136,-1129,-1121,-1118,-1116,-1110,-1107,-1105,-1100,-1103,-1100,
+-1069,-1087,-1084,-1078,-1065,-1074,-1064,-1055,-1043,-1054,-1043,-1035,-1038,-1043,-1040,-1028,-1022,-1018,-1014,-1007,
+-1003,-996,-992,-988,-985,-978,-974,-970,-967,-963,-963,-963,-950,-949,-956,-959,-955,-953,-957,-957,
+-952,-946,-948,-948,-942,-940,-941,-936,-937,-923,-922,-933,-921,-909,-902,-898,-894,-886,-880,-877,
+-873,-864,-837,-825,-835,-828,-817,-809,-799,-791,-789,-780,-769,-752,-738,-725,-719,-713,-709,-694,
+-672,-667,-663,-641,-621,-620,-613,-606,-595,-578,-556,-541,-526,-503,-450,-335,-396,-413,-396,-383,
+-352,-342,-370,-370,-362,-358,-336,-308,-313,-309,-299,-282,-260,-247,-229,-215,-200,-182,-165,-146,
+-127,-105,-83,-64,-47,-32,-18,3,26,40,54,64,78,96,117,145,166,189,215,239,
+264,283,300,312,326,344,369,395,424,458,490,514,540,560,577,595,617,641,668,697,
+726,754,784,820,862,889,929,966,1004,1034,1046,1080,1097,1106,1110,1103,1089,1062,1063,1149,
+1251,1271,1275,1377,1484,1561,1653,1734,1819,1880,1937,1922,1942,1928,1995,2005,1971,1943,1937,1907,
+1849,1803,1777,1795,1784,1732,1723,1721,1699,1678,1640,1568,1512,1496,1442,1395,1363,1321,1281,1257,
+1232,1212,1204,1208,1203,1190,1184,1171,1157,1147,1131,1119,1107,1098,1087,1083,1081,1070,1061,1049,
+1028,982,896,783,693,618,555,487,423,372,356,373,349,289,220,163,115,85,67,54,
+51,48,35,24,16,2,-12,-34,-62,-94,-125,-156,-182,-208,-230,-244,-255,-262,-265,-285,
+-300,-307,-316,-326,-333,-340,-350,-358,-367,-373,-382,-393,-388,-393,-395,-394,-389,-381,-378,-376,
+-374,-369,-368,-365,-364,-363,-373,-389,-412,-433,-450,-466,-482,-497,-506,-518,-514,-518,-519,-515,
+-505,-494,-485,-477,-468,-461,-449,-436,-424,-409,-392,-372,-359,-344,-328,-319,-302,-290,-275,-252,
+-228,-202,-166,-128,-91,-59,-15,33,81,122,155,188,220,261,308,353,391,444,480,528,
+584,640,690,743,784,831,875,910,953,1001,1038,1073,1108,1140,1171,1205,1254,1297,1340,1369,
+1415,1463,1499,1523,1568,1608,1632,1674,1714,1738,1765,1795,1842,1874,1908,1950,1975,2022,2051,2089,
+2118,2150,2163,2197,2240,2280,2310,2338,2350,2364,2400,2427,2460,2477,2498,2507,2548,2584,2612,2627,
+2653,2666,2640,2684,2679,2668,2663,2675,2667,2655,2650,2660,2663,2666,2664,2649,2639,2645,2629,2611,
+2606,2604,2596,2593,2585,2569,2553,2550,2553,2548,2532,2535,2525,2519,2513,2511,2506,2502,2493,2482,
+2461,2441,2420,2407,2400,2369,2337,2300,2270,2251,2243,2246,2238,2224,2218,2210,2201,2193,2187,2166,
+2150,2136,2142,2220,2275,2285,2202,2191,2192,2187,2183,2180,2161,2148,2141,2131,2125,2135,2153,2149,
+2188,2234,2255,2287,2235,2218,2212,2218,2243,2268,2297,2322,2350,2377,2413,2450,2489,2534,2563,2580,
+2593,2600,2606,2608,2622,2627,2630,2638,2648,2667,2683,2697,2705,2722,2738,2753,2777,2786,2797,2816,
+2801,2742,2792,2835,2881,2911,2919,2929,2945,2958,2973,2999,3034,3073,3100,3120,3146,3168,3182,3203,
+3220,3240,3254,3256,3259,3268,3266,3279,3298,3317,3309,3321,3340,3336,3337,3323,3324,3321,3309,3317,
+3313,3309,3308,3314,3320,3305,3302,3313,3325,3323,3327,3332,3334,3338,3339,3340,3322,3334,3351,3371,
+3397,3430,3457,3472,3500,3525,3597,3621,3685,3747,3831,3886,3981,4013,3983,4022,4063,4204,4291,4308,
+4379,4484,4512,4414,4528,4651,4613,4600,4613,4624,4623,4639,4643,4632,4609,4642,4669,4627,4600,4597,
+4574,4621,4648,4616,4610,4617,4601,4618,4597,4590,4592,4563,4540,4528,4522,4503,4485,4456,4459,4481,
+4514,4550,4586,4620,4659,4686,4684,4672,4672,4688,4696,4673,4645,4596,4533,4490,4469,4471,4484,4519,
+4600,4719,4840,4931,4911,4874,4899,4824,4718,4630,4560,4510,4481,4457,4436,4417,4401,4383,4368,4358,
+4339,4316,4292,4283,4270,4255,4242,4223,4199,4169,4131,4101,4069,4034,3998,3960,3925,3893,3852,3812,
+3772,3728,3688,3643,3595,3556,3519,3484,3449,3424,3398,3380,3362,3340,3310,3275,3258,3244,3231,3225,
+3220,3225,3234,3239,3241,3245,3245,3247,3251,3248,3252,3258,3256,3256,3263,3270,3261,3231,3231,3233,
+3230,3234,3218,3199,3174,3147,3151,3146,3113,3084,3056,3046,3028,2993,2959,2927,2900,2876,2852,2825,
+2807,2788,2761,2742,2752,2731,2702,2676,2656,2633,2603,2572,2542,2520,2497,2475,2454,2417,2378,2364,
+2352,2285,2245,2214,2178,2161,2129,2117,2090,2061,2029,1994,1962,1932,1899,1864,1830,1793,1758,1725,
+1699,1661,1642,1598,1551,1528,1489,1438,1399,1360,1321,1286,1253,1215,1177,1142,1106,1070,1036,1000,
+960,920,887,846,805,767,731,694,650,603,566,522,486,442,400,348,300,261,223,183,
+142,105,63,33,-10,-58,-103,-142,-195,-271,-307,-349,-378,-416,-460,-514,-559,-611,-655,-695,
+-733,-769,-804,-846,-883,-921,-952,-992,-1043,-1106,-1138,-1182,-1220,-1256,-1299,-1342,-1374,-1412,-1448,-1482,
+-1517,-1549,-1587,-1622,-1657,-1690,-1727,-1761,-1800,-1839,-1857,-1890,-1928,-1966,-1991,-2009,-2037,-2072,-2124,-2149,
+-2189,-2218,-2227,-2250,-2274,-2292,-2316,-2345,-2373,-2397,-2419,-2441,-2463,-2484,-2501,-2518,-2535,-2557,-2576,-2586,
+-2602,-2608,-2625,-2636,-2645,-2647,-2651,-2654,-2663,-2673,-2678,-2670,-2661,-2656,-2661,-2683,-2688,-2690,-2687,-2684,
+-2692,-2677,-2682,-2681,-2690,-2700,-2697,-2700,-2691,-2686,-2681,-2706,-2686,-2689,-2685,-2678,-2673,-2671,-2662,-2660,
+-2655,-2636,-2648,-2634,-2620,-2608,-2603,-2606,-2595,-2581,-2575,-2583,-2538,-2525,-2525,-2530,-2509,-2489,-2480,-2466,
+-2454,-2437,-2421,-2399,-2382,-2363,-2343,-2327,-2310,-2294,-2277,-2261,-2246,-2226,-2204,-2184,-2160,-2139,-2119,-2100,
+-2079,-2057,-2031,-2008,-1982,-1958,-1938,-1916,-1897,-1875,-1851,-1833,-1814,-1793,-1774,-1750,-1723,-1710,-1698,-1695,
+-1740,-1748,-1730,-1722,-1731,-1708,-1702,-1687,-1672,-1663,-1641,-1621,-1608,-1600,-1594,-1580,-1561,-1553,-1541,-1521,
+-1521,-1549,-1463,-1388,-1364,-1368,-1361,-1375,-1332,-1370,-1367,-1366,-1348,-1350,-1349,-1340,-1329,-1313,-1294,-1277,
+-1275,-1275,-1280,-1279,-1276,-1274,-1261,-1246,-1233,-1222,-1205,-1187,-1174,-1147,-1124,-1097,-1072,-1051,-1035,-1022,
+-1013,-1009,-1003,-995,-998,-997,-981,-958,-929,-932,-936,-937,-902,-900,-899,-879,-867,-860,-836,-818,
+-802,-778,-748,-728,-703,-665,-648,-629,-599,-572,-567,-544,-502,-465,-441,-420,-389,-363,-373,-393,
+-417,-433,-440,-464,-491,-533,-579,-596,-477,-107,419,656,697,617,560,614,704,691,728,772,
+764,783,806,813,760,741,645,552,444,329,262,236,223,218,221,231,237,244,254,273,
+284,308,330,339,334,320,312,298,283,264,261,253,244,247,237,210,187,172,168,160,
+149,121,94,68,57,57,44,16,-19,-59,-85,-102,-112,-122,-117,-97,-99,-129,-140,-132,
+-202,-224,-210,-230,-280,-297,-314,-358,-398,-427,-454,-479,-486,-523,-570,-602,-623,-640,-659,-673,
+-672,-694,-706,-719,-745,-764,-785,-798,-814,-829,-843,-859,-876,-900,-913,-917,-923,-930,-935,-940,
+-944,-956,-954,-954,-957,-966,-970,-965,-954,-946,-940,-939,-942,-940,-936,-930,-921,-911,-900,-888,
+-882,-877,-870,-866,-865,-867,-868,-877,-878,-858,-797,-666,-469,-572,-689,-779,-797,-847,-886,-899,
+-908,-901,-895,-913,-915,-920,-929,-937,-946,-970,-993,-1009,-1022,-1039,-1052,-1063,-1070,-1082,-1102,-1113,
+-1134,-1150,-1160,-1169,-1176,-1181,-1189,-1195,-1203,-1210,-1216,-1223,-1232,-1249,-1264,-1282,-1300,-1308,-1304,-1295,
+-1289,-1298,-1318,-1347,-1370,-1394,-1414,-1429,-1439,-1450,-1466,-1482,-1484,-1491,-1502,-1508,-1511,-1510,-1513,-1519,
+-1522,-1521,-1519,-1516,-1507,-1500,-1511,-1528,-1535,-1552,-1560,-1563,-1573,-1591,-1598,-1590,-1592,-1586,-1573,-1568,
+-1565,-1563,-1586,-1576,-1539,-1512,-1505,-1506,-1507,-1499,-1495,-1494,-1495,-1498,-1489,-1492,-1481,-1470,-1452,-1441,
+-1438,-1430,-1422,-1411,-1397,-1389,-1378,-1368,-1353,-1346,-1334,-1329,-1317,-1298,-1292,-1280,-1271,-1265,-1252,-1225,
+-1230,-1225,-1217,-1208,-1196,-1185,-1166,-1149,-1135,-1127,-1118,-1110,-1105,-1101,-1093,-1086,-1080,-1078,-1080,-1083,
+-1089,-1094,-1083,-1077,-1071,-1070,-1069,-1066,-1056,-1026,-1030,-1040,-1034,-1037,-1034,-1019,-1019,-1017,-1013,-1005,
+-997,-997,-996,-991,-981,-983,-971,-969,-961,-952,-955,-959,-954,-939,-949,-953,-953,-953,-950,-948,
+-950,-945,-941,-941,-942,-935,-931,-924,-926,-949,-942,-938,-933,-922,-921,-911,-904,-899,-895,-889,
+-885,-874,-852,-858,-858,-846,-837,-826,-816,-801,-787,-778,-771,-760,-758,-755,-748,-738,-721,-699,
+-679,-688,-667,-641,-612,-589,-575,-569,-578,-583,-584,-567,-550,-535,-515,-485,-468,-465,-460,-417,
+-392,-327,-330,-366,-354,-352,-355,-319,-237,-292,-307,-294,-284,-272,-254,-238,-217,-199,-185,-167,
+-152,-130,-110,-90,-73,-59,-45,-26,3,23,33,45,56,71,84,105,117,134,147,158,
+175,188,210,236,258,296,333,381,427,461,484,505,522,536,550,567,594,628,664,701,
+733,751,775,807,841,864,894,922,964,1001,1041,1047,1073,1091,1100,1100,1100,1097,1079,1068,
+1156,1259,1299,1331,1418,1511,1584,1675,1758,1833,1907,1891,1855,1864,1901,1930,1963,1952,1927,1904,
+1851,1802,1768,1746,1752,1771,1712,1675,1657,1652,1638,1601,1569,1526,1448,1389,1352,1317,1280,1261,
+1250,1224,1205,1194,1185,1182,1184,1182,1175,1158,1146,1136,1127,1114,1102,1090,1089,1072,1057,1044,
+1029,1008,967,879,784,702,626,555,485,428,405,412,422,379,307,236,173,112,73,60,
+46,36,26,21,18,12,0,-18,-43,-70,-98,-129,-160,-187,-209,-232,-253,-268,-280,-293,
+-304,-315,-325,-332,-344,-357,-366,-375,-384,-390,-396,-400,-400,-394,-389,-387,-387,-378,-371,-366,
+-367,-368,-370,-372,-366,-359,-363,-379,-394,-416,-434,-450,-461,-474,-489,-496,-513,-516,-518,-520,
+-517,-506,-494,-480,-469,-461,-452,-443,-431,-416,-397,-380,-363,-343,-333,-315,-305,-286,-271,-253,
+-234,-210,-190,-170,-139,-98,-62,-17,28,88,129,156,191,223,253,293,345,393,446,503,
+547,597,648,699,744,784,833,875,911,955,992,1024,1066,1103,1143,1198,1223,1251,1288,1324,
+1360,1399,1441,1474,1507,1551,1593,1616,1651,1684,1721,1758,1792,1836,1866,1890,1914,1952,1998,2035,
+2068,2099,2132,2175,2205,2226,2245,2271,2302,2334,2364,2391,2419,2448,2456,2485,2520,2547,2568,2580,
+2603,2662,2682,2684,2657,2704,2717,2714,2724,2705,2684,2686,2683,2670,2661,2652,2651,2654,2648,2646,
+2646,2643,2622,2619,2597,2590,2583,2574,2567,2573,2567,2565,2542,2530,2511,2495,2495,2488,2477,2469,
+2453,2426,2396,2373,2349,2336,2302,2295,2284,2287,2301,2293,2295,2292,2288,2287,2265,2258,2272,2281,
+2270,2234,2208,2220,2282,2247,2179,2157,2148,2152,2146,2139,2141,2142,2139,2123,2133,2146,2158,2168,
+2181,2192,2205,2263,2278,2267,2244,2249,2293,2361,2355,2309,2320,2340,2361,2394,2427,2469,2508,2537,
+2551,2564,2571,2582,2597,2604,2615,2625,2641,2652,2658,2666,2687,2695,2714,2725,2731,2758,2779,2789,
+2763,2731,2764,2828,2859,2881,2895,2906,2929,2948,2979,2997,3014,3047,3078,3114,3135,3151,3175,3193,
+3207,3224,3240,3257,3257,3269,3283,3259,3264,3290,3313,3309,3309,3323,3326,3321,3308,3314,3304,3305,
+3300,3296,3296,3299,3309,3307,3280,3300,3316,3319,3325,3328,3337,3342,3343,3347,3332,3334,3347,3370,
+3397,3426,3462,3480,3513,3545,3573,3656,3680,3738,3814,3893,3931,4020,4039,4007,4053,4151,4264,4364,
+4385,4464,4528,4462,4394,4640,4647,4596,4590,4599,4605,4608,4598,4589,4595,4600,4618,4610,4574,4560,
+4533,4541,4544,4551,4557,4565,4570,4577,4606,4624,4616,4579,4577,4573,4542,4525,4503,4466,4436,4435,
+4456,4502,4554,4597,4637,4674,4691,4685,4682,4690,4708,4711,4687,4647,4591,4537,4490,4464,4473,4517,
+4598,4742,4905,5015,5104,5086,5099,5131,5004,4880,4766,4660,4590,4551,4511,4476,4442,4414,4398,4383,
+4365,4339,4320,4317,4307,4298,4284,4267,4243,4218,4182,4150,4128,4095,4059,4021,3984,3952,3917,3882,
+3838,3795,3757,3715,3668,3621,3581,3549,3516,3489,3460,3439,3420,3395,3377,3352,3329,3320,3278,3252,
+3238,3237,3246,3260,3263,3265,3271,3291,3291,3295,3324,3348,3349,3349,3353,3355,3352,3335,3302,3290,
+3288,3295,3282,3264,3247,3225,3204,3207,3188,3151,3125,3109,3093,3066,3032,3005,2970,2946,2917,2892,
+2866,2849,2832,2819,2820,2800,2768,2744,2719,2693,2665,2636,2602,2580,2569,2536,2518,2475,2448,2414,
+2384,2344,2313,2285,2246,2217,2200,2178,2153,2124,2096,2062,2028,1994,1964,1933,1901,1868,1827,1791,
+1760,1738,1718,1665,1629,1601,1560,1526,1476,1438,1397,1361,1324,1285,1251,1215,1181,1143,1108,1071,
+1032,994,953,917,880,842,804,760,721,682,647,599,557,518,474,431,386,348,306,264,
+225,185,150,112,68,21,-24,-70,-104,-157,-203,-249,-287,-323,-367,-414,-463,-512,-557,-601,
+-638,-676,-714,-752,-789,-829,-869,-907,-952,-1006,-1047,-1094,-1136,-1170,-1204,-1250,-1292,-1329,-1359,-1395,
+-1434,-1473,-1507,-1538,-1571,-1606,-1640,-1672,-1704,-1745,-1776,-1811,-1836,-1872,-1904,-1931,-1957,-1995,-2038,-2075,
+-2107,-2138,-2163,-2183,-2198,-2223,-2245,-2269,-2297,-2324,-2351,-2376,-2395,-2414,-2434,-2451,-2471,-2489,-2511,-2533,
+-2548,-2562,-2574,-2586,-2597,-2606,-2609,-2617,-2626,-2629,-2636,-2639,-2635,-2627,-2625,-2634,-2650,-2654,-2658,-2656,
+-2654,-2661,-2653,-2656,-2660,-2671,-2672,-2668,-2671,-2669,-2655,-2654,-2676,-2667,-2678,-2660,-2649,-2654,-2649,-2648,
+-2640,-2634,-2615,-2630,-2626,-2611,-2595,-2591,-2584,-2576,-2549,-2541,-2551,-2514,-2512,-2513,-2524,-2489,-2468,-2460,
+-2449,-2432,-2415,-2399,-2383,-2365,-2349,-2330,-2314,-2296,-2281,-2266,-2249,-2232,-2213,-2196,-2174,-2152,-2130,-2108,
+-2085,-2062,-2042,-2022,-1999,-1977,-1955,-1931,-1908,-1890,-1871,-1850,-1832,-1814,-1795,-1770,-1747,-1729,-1713,-1700,
+-1703,-1746,-1758,-1751,-1747,-1739,-1723,-1704,-1691,-1678,-1665,-1654,-1634,-1610,-1604,-1595,-1592,-1582,-1563,-1547,
+-1531,-1528,-1555,-1489,-1445,-1431,-1426,-1397,-1387,-1334,-1340,-1383,-1363,-1361,-1367,-1357,-1356,-1343,-1337,-1323,
+-1268,-1244,-1295,-1322,-1310,-1248,-1258,-1300,-1292,-1280,-1227,-1254,-1239,-1211,-1192,-1168,-1135,-1114,-1103,-1096,
+-1084,-1068,-1059,-1051,-1044,-1040,-1034,-1022,-1003,-983,-972,-965,-977,-984,-986,-952,-916,-908,-904,-898,
+-875,-836,-810,-792,-768,-737,-709,-689,-667,-649,-638,-633,-601,-557,-512,-479,-456,-431,-416,-439,
+-459,-477,-474,-473,-488,-507,-522,-534,-435,-134,284,517,611,620,543,563,583,558,583,617,
+667,675,680,738,703,660,618,531,420,287,198,153,131,121,121,122,130,140,147,150,
+159,170,182,202,211,221,211,206,187,168,156,144,140,138,121,98,74,54,38,26,
+22,0,-22,-39,-65,-79,-84,-95,-117,-155,-189,-219,-240,-248,-247,-238,-233,-236,-247,-262,
+-278,-298,-276,-300,-345,-365,-386,-413,-444,-473,-488,-528,-558,-575,-606,-641,-668,-699,-722,-741,
+-753,-764,-772,-767,-792,-811,-822,-845,-858,-877,-888,-899,-915,-928,-940,-957,-968,-973,-980,-984,
+-988,-988,-1000,-1006,-997,-1006,-1003,-1007,-1019,-1015,-1005,-993,-991,-989,-988,-985,-981,-975,-967,-959,
+-949,-937,-930,-921,-914,-908,-913,-919,-927,-933,-929,-908,-862,-812,-818,-838,-848,-864,-891,-916,
+-917,-898,-918,-945,-949,-940,-935,-942,-948,-972,-1003,-1026,-1044,-1057,-1067,-1078,-1095,-1104,-1115,-1120,
+-1128,-1139,-1159,-1176,-1187,-1195,-1206,-1210,-1215,-1219,-1222,-1231,-1243,-1253,-1271,-1287,-1306,-1311,-1325,-1328,
+-1319,-1311,-1313,-1326,-1349,-1371,-1394,-1416,-1437,-1453,-1464,-1475,-1485,-1495,-1505,-1514,-1522,-1527,-1529,-1531,
+-1535,-1539,-1539,-1538,-1533,-1537,-1538,-1534,-1544,-1558,-1573,-1579,-1576,-1584,-1612,-1611,-1602,-1586,-1571,-1562,
+-1580,-1614,-1624,-1582,-1518,-1507,-1503,-1504,-1506,-1505,-1501,-1492,-1489,-1488,-1485,-1486,-1483,-1487,-1489,-1489,
+-1480,-1464,-1447,-1432,-1417,-1400,-1387,-1376,-1368,-1356,-1347,-1328,-1323,-1314,-1299,-1290,-1277,-1266,-1252,-1236,
+-1241,-1237,-1233,-1225,-1214,-1201,-1185,-1162,-1149,-1136,-1129,-1123,-1110,-1106,-1096,-1083,-1076,-1069,-1064,-1064,
+-1064,-1067,-1070,-1068,-1066,-1058,-1053,-1044,-1039,-1050,-1033,-1033,-1019,-1040,-1031,-1013,-1012,-1008,-1004,-1005,
+-998,-991,-985,-981,-981,-978,-976,-967,-961,-957,-954,-952,-949,-937,-941,-949,-949,-944,-949,-950,
+-950,-950,-947,-943,-939,-937,-935,-933,-928,-929,-936,-939,-935,-931,-926,-928,-919,-908,-902,-895,
+-889,-881,-873,-871,-874,-874,-858,-843,-834,-824,-817,-809,-792,-777,-765,-759,-758,-755,-748,-737,
+-722,-705,-683,-658,-623,-592,-565,-550,-539,-545,-550,-561,-559,-552,-544,-539,-521,-502,-486,-475,
+-448,-428,-400,-385,-369,-367,-365,-358,-347,-337,-334,-335,-329,-315,-303,-284,-263,-242,-236,-226,
+-217,-198,-172,-150,-123,-93,-68,-46,-42,-13,15,19,25,51,67,68,89,108,112,131,
+160,177,202,223,244,269,302,339,373,401,423,445,468,478,495,524,556,587,621,659,
+691,716,735,763,803,828,856,880,905,930,973,1007,1014,1032,1058,1088,1088,1080,1134,1115,
+1089,1160,1286,1334,1411,1508,1569,1627,1682,1704,1754,1854,1882,1881,1832,1823,1858,1915,1928,1880,
+1835,1814,1786,1748,1718,1706,1735,1685,1647,1625,1616,1617,1595,1527,1439,1386,1347,1321,1294,1262,
+1229,1211,1193,1181,1172,1170,1173,1188,1189,1172,1154,1139,1133,1126,1112,1100,1094,1087,1066,1043,
+1032,1016,999,964,881,791,712,635,563,496,465,467,472,454,399,328,264,199,136,90,
+68,51,32,23,18,8,-2,-15,-32,-54,-80,-107,-136,-165,-190,-210,-234,-256,-274,-292,
+-305,-319,-330,-342,-350,-358,-369,-383,-393,-400,-404,-405,-404,-400,-395,-386,-387,-379,-371,-368,
+-364,-367,-367,-364,-360,-354,-349,-357,-379,-400,-424,-440,-451,-460,-468,-478,-488,-501,-505,-508,
+-507,-503,-495,-482,-467,-453,-446,-439,-429,-418,-404,-387,-372,-348,-331,-316,-302,-291,-280,-264,
+-247,-230,-205,-183,-155,-117,-87,-48,0,45,89,127,161,199,242,287,324,357,401,451,
+507,552,615,669,711,759,801,839,886,925,968,1004,1039,1070,1106,1156,1205,1238,1258,1293,
+1332,1375,1413,1443,1476,1503,1535,1562,1588,1626,1680,1719,1748,1781,1805,1833,1883,1925,1963,1999,
+2031,2061,2093,2113,2145,2176,2209,2248,2284,2313,2344,2367,2396,2414,2446,2468,2483,2517,2541,2559,
+2579,2620,2633,2676,2685,2667,2677,2701,2714,2705,2697,2689,2692,2689,2675,2674,2677,2675,2673,2669,
+2663,2660,2648,2641,2633,2622,2607,2597,2583,2578,2567,2546,2530,2523,2504,2497,2500,2479,2465,2440,
+2411,2382,2363,2339,2329,2330,2331,2322,2318,2329,2340,2345,2332,2313,2303,2296,2286,2276,2257,2268,
+2287,2296,2335,2272,2282,2298,2257,2189,2200,2188,2187,2185,2173,2162,2138,2131,2119,2152,2142,2154,
+2161,2174,2183,2186,2191,2207,2231,2257,2286,2346,2401,2416,2436,2401,2364,2361,2385,2409,2444,2478,
+2498,2513,2521,2526,2538,2553,2563,2577,2590,2616,2631,2643,2658,2674,2670,2683,2708,2724,2732,2739,
+2736,2717,2747,2815,2847,2858,2870,2888,2898,2923,2955,2986,3024,3044,3068,3092,3121,3142,3155,3172,
+3192,3203,3219,3224,3211,3213,3244,3283,3255,3258,3286,3297,3281,3297,3304,3304,3306,3300,3307,3295,
+3291,3290,3289,3286,3293,3301,3281,3286,3306,3304,3317,3324,3333,3342,3344,3354,3344,3337,3347,3370,
+3387,3411,3463,3499,3511,3545,3583,3614,3717,3777,3827,3881,3931,3976,4059,4051,4067,4152,4299,4359,
+4394,4398,4493,4522,4463,4476,4666,4615,4595,4585,4584,4590,4596,4579,4571,4573,4559,4561,4578,4536,
+4554,4575,4519,4516,4524,4532,4529,4532,4536,4524,4519,4524,4574,4719,4741,4670,4620,4524,4439,4395,
+4381,4392,4440,4519,4571,4621,4664,4688,4696,4701,4708,4714,4710,4677,4631,4565,4513,4477,4458,4488,
+4583,4739,4899,5059,5129,5142,5154,5171,5161,5050,4904,4813,4770,4721,4666,4597,4524,4473,4436,4410,
+4384,4355,4334,4334,4322,4313,4303,4289,4273,4250,4222,4193,4171,4144,4112,4074,4041,4003,3969,3934,
+3893,3851,3820,3781,3733,3687,3646,3610,3578,3550,3524,3498,3479,3455,3432,3414,3390,3376,3367,3323,
+3290,3267,3250,3253,3265,3286,3302,3325,3340,3339,3373,3396,3408,3431,3459,3477,3474,3451,3411,3381,
+3367,3355,3351,3344,3320,3303,3283,3261,3250,3220,3200,3183,3162,3134,3107,3079,3053,3015,2988,2970,
+2933,2916,2899,2895,2884,2854,2837,2806,2779,2758,2731,2698,2669,2642,2623,2603,2569,2542,2513,2485,
+2452,2415,2386,2357,2319,2290,2275,2250,2219,2190,2154,2122,2092,2057,2029,1999,1967,1934,1903,1868,
+1830,1796,1771,1752,1715,1665,1628,1590,1552,1511,1470,1436,1399,1362,1328,1289,1252,1213,1180,1144,
+1100,1061,1021,984,944,911,872,828,786,752,708,669,635,593,548,509,466,427,385,347,
+306,264,224,190,145,104,55,2,-41,-66,-108,-157,-190,-229,-274,-323,-368,-416,-460,-505,
+-541,-578,-620,-657,-698,-739,-774,-815,-862,-916,-959,-1002,-1044,-1085,-1117,-1152,-1194,-1234,-1277,-1307,
+-1344,-1383,-1416,-1453,-1490,-1524,-1556,-1590,-1619,-1653,-1693,-1727,-1752,-1789,-1813,-1847,-1880,-1906,-1949,-1991,
+-2028,-2060,-2085,-2101,-2131,-2144,-2174,-2199,-2225,-2251,-2275,-2300,-2323,-2344,-2365,-2387,-2409,-2424,-2443,-2466,
+-2483,-2505,-2521,-2535,-2547,-2561,-2566,-2572,-2580,-2591,-2594,-2600,-2599,-2602,-2596,-2597,-2604,-2619,-2621,-2626,
+-2624,-2628,-2629,-2629,-2641,-2631,-2635,-2638,-2642,-2640,-2641,-2639,-2649,-2651,-2640,-2649,-2629,-2633,-2630,-2629,
+-2626,-2630,-2606,-2596,-2595,-2600,-2585,-2573,-2582,-2565,-2550,-2545,-2540,-2532,-2511,-2501,-2501,-2506,-2475,-2457,
+-2442,-2432,-2420,-2407,-2388,-2373,-2353,-2337,-2318,-2301,-2284,-2273,-2255,-2239,-2221,-2199,-2180,-2158,-2135,-2112,
+-2094,-2076,-2057,-2036,-2014,-1990,-1967,-1944,-1923,-1904,-1887,-1868,-1850,-1830,-1814,-1795,-1771,-1748,-1725,-1716,
+-1710,-1713,-1757,-1769,-1765,-1752,-1736,-1725,-1711,-1698,-1694,-1673,-1655,-1639,-1617,-1602,-1605,-1601,-1597,-1584,
+-1557,-1538,-1527,-1544,-1539,-1526,-1517,-1469,-1432,-1402,-1357,-1325,-1369,-1368,-1369,-1372,-1363,-1364,-1368,-1366,
+-1362,-1351,-1345,-1341,-1347,-1345,-1319,-1324,-1328,-1319,-1302,-1276,-1263,-1251,-1237,-1218,-1197,-1172,-1161,-1146,
+-1143,-1133,-1111,-1098,-1089,-1083,-1079,-1070,-1058,-1050,-1046,-1034,-1003,-991,-995,-1046,-1028,-987,-976,-967,
+-944,-914,-885,-859,-836,-815,-794,-769,-748,-730,-714,-701,-683,-643,-585,-537,-505,-478,-461,-474,
+-479,-488,-466,-445,-463,-472,-500,-548,-458,-196,54,305,458,517,480,408,430,470,448,477,
+496,533,587,583,584,566,513,457,394,285,167,102,71,55,47,44,43,36,39,42,
+55,59,66,79,89,97,102,106,104,88,66,48,39,39,23,0,-12,-20,-36,-69,
+-94,-107,-126,-131,-137,-168,-206,-227,-247,-263,-282,-300,-323,-342,-353,-360,-364,-362,-365,-376,
+-379,-388,-405,-420,-436,-453,-473,-497,-521,-540,-556,-577,-584,-626,-657,-679,-709,-729,-764,-791,
+-803,-771,-823,-849,-858,-869,-884,-896,-913,-925,-939,-950,-959,-970,-981,-991,-1008,-1022,-1025,-1022,
+-1028,-1032,-1033,-1039,-1048,-1052,-1052,-1050,-1054,-1062,-1063,-1059,-1049,-1039,-1033,-1030,-1035,-1035,-1023,-1017,
+-1011,-1002,-998,-989,-979,-970,-969,-969,-969,-969,-972,-977,-983,-981,-971,-958,-955,-955,-957,-953,
+-927,-899,-906,-941,-960,-969,-962,-913,-873,-945,-997,-1032,-1062,-1085,-1096,-1100,-1112,-1127,-1133,-1140,
+-1150,-1148,-1154,-1172,-1188,-1204,-1211,-1223,-1233,-1241,-1244,-1244,-1247,-1262,-1264,-1279,-1310,-1329,-1341,-1351,
+-1350,-1343,-1334,-1333,-1336,-1347,-1368,-1392,-1417,-1440,-1461,-1475,-1492,-1497,-1502,-1506,-1518,-1531,-1540,-1546,
+-1548,-1554,-1559,-1558,-1558,-1557,-1552,-1558,-1559,-1560,-1563,-1575,-1583,-1595,-1632,-1643,-1635,-1613,-1588,-1571,
+-1587,-1606,-1591,-1624,-1554,-1528,-1529,-1529,-1528,-1524,-1516,-1505,-1488,-1485,-1473,-1473,-1472,-1474,-1478,-1481,
+-1479,-1480,-1478,-1466,-1451,-1424,-1403,-1386,-1375,-1366,-1354,-1350,-1338,-1329,-1316,-1301,-1286,-1272,-1266,-1259,
+-1251,-1243,-1233,-1223,-1219,-1206,-1191,-1184,-1173,-1162,-1153,-1141,-1132,-1121,-1112,-1099,-1087,-1081,-1072,-1068,
+-1065,-1058,-1057,-1055,-1052,-1049,-1042,-1044,-1037,-1033,-1036,-1037,-1028,-1022,-1021,-1011,-1007,-1003,-998,-996,
+-995,-992,-987,-981,-975,-971,-968,-966,-958,-957,-951,-948,-942,-942,-931,-941,-945,-947,-945,-944,
+-947,-949,-944,-944,-946,-943,-937,-935,-938,-938,-941,-942,-937,-941,-929,-910,-912,-925,-911,-908,
+-900,-889,-884,-874,-874,-873,-873,-874,-864,-855,-843,-832,-825,-812,-796,-781,-774,-769,-762,-754,
+-737,-715,-694,-675,-658,-628,-604,-578,-552,-547,-545,-547,-553,-552,-541,-537,-538,-527,-510,-509,
+-481,-463,-438,-414,-399,-391,-385,-381,-373,-358,-349,-330,-318,-300,-291,-276,-257,-243,-243,-231,
+-232,-218,-187,-164,-140,-125,-103,-79,-52,-36,-23,-16,8,18,24,60,84,102,122,143,
+172,194,213,228,245,262,275,292,332,417,435,405,415,432,459,483,515,554,585,612,
+636,668,697,710,730,754,777,797,825,866,888,922,959,992,1015,1042,1066,1068,1071,1106,
+1137,1135,1185,1285,1369,1503,1616,1672,1740,1714,1641,1682,1770,1838,1808,1799,1786,1879,1920,1872,
+1852,1843,1809,1767,1735,1699,1677,1670,1660,1638,1630,1614,1587,1541,1481,1410,1376,1345,1308,1277,
+1238,1204,1182,1177,1177,1179,1174,1168,1173,1174,1161,1153,1142,1130,1128,1113,1098,1093,1086,1061,
+1038,1024,1016,1004,971,895,815,736,660,590,525,503,513,500,466,412,349,296,232,172,
+122,85,61,39,26,21,12,-3,-21,-41,-65,-91,-119,-147,-172,-196,-213,-238,-261,-282,
+-302,-319,-336,-348,-355,-363,-373,-382,-392,-400,-409,-415,-413,-404,-398,-394,-390,-383,-374,-370,
+-372,-375,-374,-368,-361,-352,-344,-339,-354,-375,-401,-420,-436,-445,-451,-454,-464,-476,-488,-494,
+-489,-488,-486,-477,-463,-441,-424,-413,-409,-401,-394,-383,-366,-352,-341,-327,-316,-300,-284,-268,
+-252,-231,-209,-185,-159,-135,-104,-63,-26,18,61,110,148,190,231,272,303,342,362,399,
+454,511,564,626,670,713,770,815,864,902,942,991,1026,1060,1096,1137,1175,1210,1239,1265,
+1323,1345,1368,1397,1443,1472,1509,1546,1581,1615,1645,1662,1691,1740,1784,1825,1856,1890,1926,1966,
+2005,2031,2056,2084,2115,2157,2201,2223,2228,2271,2300,2321,2341,2371,2408,2445,2493,2510,2511,2530,
+2538,2582,2597,2603,2640,2673,2697,2719,2697,2694,2722,2718,2710,2713,2708,2694,2708,2693,2684,2682,
+2688,2685,2681,2671,2663,2652,2627,2614,2595,2569,2548,2528,2507,2500,2492,2481,2474,2477,2481,2438,
+2407,2404,2396,2392,2379,2373,2379,2368,2345,2344,2349,2351,2335,2315,2301,2295,2286,2285,2277,2267,
+2267,2275,2296,2276,2272,2298,2231,2209,2207,2199,2196,2179,2170,2151,2147,2139,2134,2126,2135,2153,
+2156,2166,2188,2194,2203,2215,2230,2251,2283,2302,2339,2391,2433,2492,2510,2480,2441,2480,2470,2465,
+2470,2468,2474,2478,2480,2492,2500,2510,2527,2546,2579,2599,2617,2627,2653,2689,2696,2699,2721,2759,
+2780,2758,2721,2767,2822,2828,2857,2881,2888,2897,2917,2951,2994,3026,3061,3087,3105,3118,3131,3145,
+3160,3168,3176,3182,3193,3206,3229,3236,3227,3240,3264,3277,3274,3270,3288,3293,3290,3288,3281,3291,
+3285,3276,3280,3276,3284,3299,3284,3273,3298,3306,3310,3313,3325,3337,3350,3359,3354,3341,3339,3364,
+3386,3404,3440,3486,3521,3543,3592,3634,3691,3784,3880,3915,3941,3957,4030,4127,4085,4104,4216,4352,
+4448,4399,4521,4524,4471,4439,4598,4675,4612,4588,4583,4586,4590,4585,4564,4585,4659,4577,4536,4559,
+4616,4548,4523,4509,4565,4601,4565,4510,4473,4466,4443,4419,4453,4601,4741,4737,4796,4801,4632,4463,
+4397,4361,4358,4401,4475,4552,4614,4662,4694,4711,4719,4729,4722,4700,4661,4616,4565,4515,4473,4467,
+4518,4639,4782,4986,5141,5180,5082,5090,5089,5073,5015,4932,4983,5004,4952,4880,4743,4617,4529,4463,
+4415,4376,4350,4347,4332,4319,4310,4299,4288,4270,4247,4222,4203,4179,4152,4118,4085,4050,4016,3978,
+3941,3896,3858,3833,3791,3746,3707,3673,3641,3614,3585,3556,3530,3504,3486,3468,3440,3440,3458,3405,
+3388,3363,3327,3294,3275,3275,3309,3360,3387,3404,3416,3443,3464,3510,3547,3572,3577,3568,3543,3498,
+3466,3440,3418,3395,3380,3373,3362,3341,3312,3280,3264,3246,3228,3201,3172,3151,3121,3088,3056,3041,
+3019,2980,2970,2975,2944,2915,2893,2864,2845,2819,2792,2765,2736,2703,2688,2669,2634,2614,2577,2553,
+2512,2483,2452,2419,2393,2368,2349,2313,2284,2250,2220,2187,2154,2121,2091,2060,2031,2000,1969,1935,
+1898,1865,1832,1804,1779,1748,1713,1672,1638,1587,1544,1504,1470,1436,1399,1363,1325,1285,1249,1209,
+1172,1132,1092,1054,1015,976,938,896,857,822,777,742,703,655,618,577,538,503,462,423,
+383,341,300,265,219,175,130,89,41,17,-20,-73,-97,-140,-187,-230,-275,-319,-362,-411,
+-451,-486,-526,-564,-602,-641,-684,-730,-767,-822,-877,-908,-948,-991,-1027,-1064,-1099,-1140,-1179,-1224,
+-1259,-1298,-1331,-1365,-1405,-1439,-1472,-1503,-1538,-1572,-1610,-1647,-1674,-1704,-1738,-1754,-1793,-1830,-1866,-1909,
+-1942,-1982,-2007,-2033,-2065,-2090,-2092,-2128,-2154,-2176,-2196,-2223,-2248,-2271,-2293,-2320,-2340,-2360,-2384,-2404,
+-2422,-2441,-2461,-2476,-2493,-2506,-2518,-2530,-2536,-2546,-2554,-2559,-2559,-2566,-2563,-2558,-2561,-2578,-2586,-2587,
+-2594,-2603,-2599,-2589,-2596,-2609,-2615,-2604,-2617,-2613,-2613,-2613,-2610,-2629,-2625,-2628,-2628,-2607,-2614,-2609,
+-2607,-2608,-2594,-2573,-2584,-2583,-2567,-2572,-2582,-2563,-2548,-2537,-2524,-2526,-2516,-2483,-2473,-2487,-2499,-2462,
+-2445,-2435,-2425,-2413,-2391,-2374,-2360,-2340,-2323,-2309,-2292,-2276,-2259,-2244,-2226,-2207,-2191,-2171,-2151,-2129,
+-2109,-2089,-2068,-2049,-2029,-2008,-1988,-1967,-1944,-1920,-1903,-1884,-1867,-1849,-1833,-1816,-1793,-1770,-1747,-1729,
+-1717,-1710,-1716,-1751,-1773,-1768,-1745,-1739,-1733,-1724,-1707,-1693,-1678,-1650,-1635,-1622,-1621,-1605,-1607,-1611,
+-1611,-1582,-1556,-1541,-1542,-1555,-1575,-1562,-1520,-1465,-1422,-1374,-1332,-1358,-1343,-1343,-1357,-1348,-1349,-1352,
+-1364,-1370,-1357,-1314,-1351,-1335,-1372,-1385,-1372,-1352,-1327,-1306,-1290,-1276,-1265,-1252,-1240,-1218,-1186,-1171,
+-1185,-1179,-1163,-1150,-1142,-1131,-1121,-1113,-1108,-1109,-1113,-1107,-1091,-1073,-1074,-1080,-1115,-1078,-1044,-1026,
+-1003,-969,-940,-921,-908,-888,-871,-853,-835,-816,-795,-774,-756,-712,-651,-584,-540,-509,-490,-478,
+-502,-506,-453,-423,-473,-503,-576,-627,-535,-355,-115,45,181,325,337,322,341,407,440,396,
+376,387,429,458,467,458,429,376,298,215,129,56,15,-6,-19,-26,-39,-48,-48,-45,
+-45,-44,-35,-25,-15,0,9,15,16,6,-7,-37,-51,-54,-65,-70,-76,-80,-93,-109,
+-141,-175,-192,-211,-225,-247,-282,-326,-356,-376,-388,-398,-414,-435,-453,-467,-477,-491,-498,-498,
+-511,-530,-540,-541,-553,-570,-590,-608,-593,-595,-645,-667,-677,-691,-715,-742,-772,-794,-821,-839,
+-857,-877,-886,-899,-919,-916,-939,-957,-970,-982,-994,-1001,-1011,-1019,-1027,-1040,-1047,-1054,-1071,-1082,
+-1073,-1072,-1072,-1074,-1075,-1075,-1080,-1091,-1094,-1093,-1095,-1098,-1101,-1097,-1093,-1082,-1077,-1073,-1076,-1077,
+-1075,-1072,-1067,-1057,-1048,-1041,-1036,-1028,-1021,-1013,-1017,-1020,-1022,-1029,-1037,-1040,-1038,-1034,-1029,-1020,
+-1002,-951,-850,-877,-959,-998,-1013,-1008,-961,-919,-986,-1032,-1060,-1088,-1109,-1122,-1136,-1144,-1151,-1158,
+-1166,-1173,-1189,-1181,-1189,-1203,-1216,-1228,-1240,-1258,-1268,-1273,-1270,-1271,-1280,-1293,-1313,-1332,-1353,-1367,
+-1370,-1366,-1360,-1359,-1357,-1355,-1359,-1372,-1392,-1418,-1440,-1462,-1486,-1505,-1514,-1520,-1527,-1533,-1540,-1551,
+-1561,-1568,-1576,-1581,-1583,-1579,-1577,-1576,-1575,-1573,-1570,-1571,-1575,-1559,-1595,-1675,-1664,-1640,-1617,-1595,
+-1605,-1634,-1607,-1607,-1592,-1561,-1555,-1558,-1559,-1557,-1549,-1537,-1523,-1509,-1490,-1478,-1471,-1465,-1471,-1473,
+-1471,-1474,-1469,-1464,-1459,-1446,-1434,-1418,-1392,-1378,-1366,-1355,-1346,-1337,-1330,-1320,-1312,-1301,-1288,-1278,
+-1265,-1251,-1229,-1208,-1209,-1196,-1187,-1190,-1185,-1181,-1170,-1165,-1155,-1145,-1135,-1127,-1116,-1104,-1098,-1089,
+-1083,-1077,-1070,-1061,-1054,-1049,-1041,-1032,-1026,-1021,-1016,-1015,-1021,-1016,-1011,-1012,-1013,-1008,-991,-999,
+-994,-989,-984,-981,-973,-965,-962,-954,-952,-948,-947,-933,-936,-933,-936,-926,-938,-939,-940,-938,
+-941,-942,-942,-946,-947,-946,-949,-945,-943,-944,-944,-951,-949,-941,-944,-939,-923,-927,-924,-921,
+-918,-907,-897,-884,-873,-869,-867,-869,-871,-871,-866,-859,-851,-845,-835,-821,-806,-793,-781,-766,
+-753,-735,-712,-689,-671,-663,-655,-641,-618,-599,-588,-576,-571,-564,-556,-548,-536,-530,-529,-520,
+-509,-502,-489,-454,-433,-413,-408,-405,-382,-371,-365,-355,-341,-333,-325,-316,-295,-266,-252,-242,
+-229,-212,-177,-153,-140,-125,-118,-105,-86,-66,-48,-19,-6,24,47,39,51,70,91,120,
+144,165,184,201,220,237,252,267,290,311,356,385,391,412,441,475,504,535,558,573,
+591,610,634,659,684,715,745,777,796,813,830,857,896,925,955,979,1013,1049,1077,1092,
+1102,1120,1142,1169,1281,1404,1553,1648,1678,1739,1710,1655,1673,1761,1770,1730,1759,1759,1810,1887,
+1856,1846,1825,1797,1761,1722,1688,1672,1652,1637,1626,1602,1551,1505,1470,1436,1385,1355,1328,1290,
+1249,1212,1182,1169,1163,1163,1164,1162,1163,1156,1152,1150,1156,1150,1138,1129,1118,1102,1093,1083,
+1065,1049,1032,1019,1011,975,905,838,762,691,622,562,548,554,525,479,424,374,327,267,
+208,155,110,69,44,32,19,3,-13,-32,-50,-70,-94,-116,-142,-168,-188,-209,-237,-261,
+-285,-308,-326,-344,-354,-362,-375,-381,-394,-405,-417,-423,-424,-422,-414,-407,-401,-401,-397,-392,
+-389,-389,-389,-385,-373,-357,-347,-338,-335,-345,-364,-381,-396,-410,-417,-424,-434,-444,-458,-469,
+-474,-470,-468,-463,-451,-437,-412,-389,-378,-372,-370,-371,-359,-340,-340,-331,-322,-313,-296,-276,
+-259,-241,-218,-198,-171,-142,-117,-88,-50,-9,30,69,110,150,187,226,260,296,331,355,
+395,449,502,565,621,666,703,751,808,858,907,943,982,1022,1056,1100,1142,1168,1203,1230,
+1272,1311,1339,1391,1428,1453,1480,1519,1545,1573,1612,1645,1676,1709,1749,1789,1822,1854,1893,1929,
+1958,1995,2016,2037,2067,2110,2144,2179,2210,2241,2273,2301,2325,2362,2400,2426,2458,2479,2489,2500,
+2533,2569,2595,2607,2640,2679,2705,2708,2698,2731,2742,2741,2716,2742,2745,2724,2710,2705,2702,2696,
+2701,2715,2719,2717,2703,2685,2654,2625,2598,2571,2544,2527,2522,2521,2516,2509,2499,2486,2495,2513,
+2487,2466,2458,2449,2452,2410,2423,2431,2371,2359,2348,2347,2337,2328,2316,2312,2296,2286,2280,2280,
+2273,2274,2273,2272,2274,2275,2231,2241,2240,2231,2219,2217,2200,2181,2171,2164,2146,2132,2120,2132,
+2150,2160,2166,2182,2194,2211,2229,2251,2272,2295,2329,2355,2377,2423,2488,2535,2540,2519,2548,2585,
+2583,2495,2461,2454,2452,2453,2459,2466,2478,2496,2514,2545,2569,2582,2594,2635,2664,2682,2698,2730,
+2769,2784,2753,2715,2750,2804,2820,2835,2862,2885,2888,2907,2939,2984,3017,3045,3069,3077,3086,3111,
+3131,3131,3144,3156,3167,3175,3193,3224,3215,3202,3233,3258,3251,3256,3275,3288,3276,3264,3269,3276,
+3282,3268,3274,3272,3268,3299,3305,3273,3289,3311,3322,3317,3315,3330,3345,3359,3364,3353,3359,3368,
+3395,3405,3428,3472,3514,3550,3585,3635,3692,3778,3841,3957,3982,3985,4005,4082,4110,4063,4163,4318,
+4426,4452,4388,4593,4533,4471,4470,4632,4594,4565,4553,4552,4557,4566,4541,4512,4521,4582,4633,4632,
+4624,4537,4450,4422,4492,4677,4795,4684,4533,4456,4411,4396,4390,4419,4465,4484,4508,4600,4701,4563,
+4438,4365,4342,4350,4386,4455,4533,4594,4636,4673,4695,4716,4725,4709,4679,4643,4606,4567,4518,4477,
+4470,4505,4565,4705,4899,5026,5025,4932,4986,5041,5049,5057,5027,5131,5196,5108,5031,4856,4730,4610,
+4505,4429,4384,4370,4355,4339,4324,4314,4303,4288,4272,4246,4229,4210,4184,4153,4122,4090,4059,4020,
+3984,3941,3907,3889,3857,3806,3764,3734,3703,3672,3640,3619,3589,3562,3536,3513,3494,3469,3458,3457,
+3447,3438,3409,3367,3333,3322,3329,3359,3404,3436,3458,3475,3538,3581,3614,3640,3656,3658,3646,3631,
+3594,3547,3520,3487,3451,3437,3424,3396,3366,3352,3341,3317,3328,3267,3269,3235,3198,3165,3130,3105,
+3063,3043,3037,3031,3006,2977,2951,2927,2910,2881,2854,2828,2795,2764,2740,2717,2697,2670,2639,2611,
+2567,2531,2512,2476,2454,2431,2403,2381,2344,2314,2283,2253,2223,2190,2158,2126,2096,2063,2030,1999,
+1967,1933,1899,1864,1831,1804,1780,1747,1694,1649,1625,1582,1543,1506,1468,1429,1393,1359,1324,1286,
+1243,1206,1168,1125,1088,1048,1008,969,929,890,847,807,769,731,689,650,612,572,534,495,
+454,415,378,336,293,249,203,165,127,94,58,22,-6,-57,-104,-148,-188,-231,-273,-314,
+-356,-398,-434,-473,-511,-549,-597,-644,-686,-728,-785,-820,-861,-898,-936,-974,-1011,-1038,-1081,-1132,
+-1166,-1207,-1247,-1283,-1317,-1353,-1387,-1418,-1459,-1494,-1526,-1560,-1592,-1619,-1645,-1688,-1705,-1750,-1789,-1825,
+-1861,-1895,-1931,-1959,-1989,-2014,-2043,-2047,-2079,-2106,-2130,-2154,-2182,-2201,-2225,-2244,-2268,-2291,-2316,-2341,
+-2362,-2380,-2399,-2416,-2435,-2450,-2465,-2479,-2488,-2501,-2515,-2520,-2526,-2532,-2531,-2528,-2522,-2531,-2559,-2552,
+-2565,-2573,-2567,-2575,-2572,-2568,-2580,-2585,-2571,-2595,-2591,-2589,-2591,-2581,-2607,-2598,-2611,-2596,-2587,-2596,
+-2595,-2591,-2591,-2571,-2558,-2591,-2572,-2554,-2558,-2556,-2542,-2527,-2520,-2505,-2511,-2493,-2471,-2464,-2470,-2481,
+-2441,-2423,-2411,-2398,-2388,-2376,-2361,-2346,-2329,-2312,-2297,-2282,-2264,-2250,-2237,-2222,-2202,-2182,-2163,-2145,
+-2126,-2106,-2086,-2067,-2048,-2028,-2005,-1985,-1964,-1941,-1925,-1907,-1888,-1868,-1850,-1832,-1811,-1791,-1767,-1746,
+-1729,-1717,-1708,-1710,-1739,-1770,-1765,-1752,-1754,-1734,-1723,-1708,-1690,-1665,-1651,-1645,-1633,-1620,-1618,-1630,
+-1625,-1624,-1602,-1579,-1560,-1552,-1582,-1590,-1607,-1557,-1492,-1461,-1400,-1342,-1343,-1336,-1309,-1277,-1287,-1300,
+-1296,-1314,-1355,-1358,-1336,-1349,-1383,-1397,-1403,-1403,-1384,-1369,-1357,-1343,-1321,-1297,-1274,-1263,-1256,-1246,
+-1238,-1226,-1213,-1199,-1188,-1175,-1168,-1166,-1164,-1168,-1167,-1164,-1150,-1137,-1128,-1130,-1138,-1132,-1081,-1059,
+-1034,-1019,-1002,-990,-976,-965,-950,-927,-915,-900,-871,-844,-803,-759,-685,-634,-589,-555,-549,-540,
+-539,-556,-557,-545,-553,-605,-642,-671,-617,-483,-288,-119,-24,54,108,111,111,177,270,343,
+387,372,349,350,347,317,289,250,188,106,44,-10,-49,-67,-84,-92,-106,-119,-120,-125,
+-120,-111,-105,-96,-85,-81,-76,-75,-71,-79,-95,-110,-126,-147,-163,-166,-164,-166,-178,-192,
+-200,-225,-251,-261,-286,-312,-342,-381,-412,-441,-471,-500,-517,-532,-558,-575,-581,-586,-602,-618,
+-626,-640,-660,-669,-675,-677,-703,-709,-721,-732,-742,-752,-765,-780,-796,-811,-829,-849,-871,-894,
+-913,-929,-945,-964,-982,-996,-1004,-1006,-1023,-1037,-1045,-1054,-1064,-1066,-1070,-1074,-1072,-1083,-1094,-1104,
+-1126,-1136,-1122,-1119,-1119,-1115,-1110,-1109,-1120,-1131,-1127,-1129,-1133,-1140,-1146,-1146,-1142,-1130,-1122,-1120,
+-1124,-1122,-1125,-1125,-1119,-1107,-1102,-1097,-1089,-1081,-1075,-1072,-1070,-1072,-1077,-1082,-1089,-1089,-1085,-1082,
+-1073,-1049,-1022,-994,-993,-1010,-1035,-1059,-1068,-1061,-1049,-1054,-1062,-1077,-1100,-1115,-1125,-1141,-1166,-1185,
+-1191,-1196,-1208,-1219,-1230,-1228,-1233,-1238,-1244,-1264,-1285,-1298,-1303,-1301,-1305,-1313,-1322,-1332,-1348,-1366,
+-1378,-1380,-1378,-1378,-1380,-1384,-1389,-1391,-1399,-1411,-1425,-1445,-1463,-1487,-1507,-1523,-1539,-1553,-1562,-1564,
+-1568,-1578,-1587,-1600,-1609,-1613,-1612,-1607,-1603,-1600,-1597,-1593,-1592,-1598,-1593,-1586,-1648,-1642,-1622,-1621,
+-1634,-1626,-1619,-1610,-1605,-1593,-1580,-1579,-1582,-1586,-1582,-1574,-1561,-1548,-1531,-1517,-1500,-1491,-1480,-1469,
+-1467,-1463,-1457,-1453,-1451,-1447,-1434,-1423,-1418,-1407,-1393,-1377,-1364,-1352,-1339,-1330,-1322,-1307,-1292,-1290,
+-1275,-1260,-1245,-1241,-1229,-1214,-1200,-1189,-1178,-1168,-1159,-1158,-1157,-1157,-1150,-1146,-1142,-1133,-1123,-1113,
+-1105,-1105,-1096,-1084,-1069,-1061,-1058,-1055,-1042,-1032,-1024,-1017,-1010,-1007,-1006,-1006,-1001,-984,-988,-986,
+-984,-979,-974,-965,-960,-960,-958,-956,-955,-948,-946,-943,-941,-938,-936,-925,-927,-936,-938,-936,
+-935,-940,-940,-943,-938,-941,-941,-942,-930,-943,-942,-939,-945,-948,-944,-937,-936,-925,-920,-917,
+-913,-913,-912,-905,-893,-891,-879,-873,-872,-873,-870,-865,-860,-853,-845,-834,-827,-814,-806,-790,
+-778,-757,-737,-717,-695,-681,-674,-669,-667,-654,-648,-635,-621,-605,-566,-513,-548,-554,-544,-529,
+-526,-532,-535,-517,-479,-454,-444,-429,-426,-406,-393,-378,-376,-365,-355,-344,-327,-302,-280,-270,
+-240,-232,-202,-176,-156,-137,-122,-108,-94,-81,-63,-33,16,41,27,37,58,64,74,91,
+111,129,146,161,179,199,216,239,263,283,305,325,347,379,416,442,465,484,493,510,
+532,571,601,630,659,678,701,723,746,768,798,828,860,889,919,953,989,1006,1034,1046,
+1045,1053,1054,1093,1211,1352,1450,1526,1597,1623,1658,1656,1680,1776,1810,1811,1777,1817,1796,1793,
+1785,1763,1743,1733,1735,1729,1688,1652,1647,1626,1606,1583,1552,1520,1491,1461,1418,1364,1333,1305,
+1259,1225,1192,1171,1158,1157,1152,1150,1154,1148,1136,1135,1139,1144,1149,1144,1135,1116,1101,1098,
+1094,1091,1083,1070,1055,1033,974,916,853,779,709,649,600,591,595,553,497,445,401,360,
+307,248,190,140,93,62,42,24,10,-13,-40,-67,-90,-110,-130,-152,-172,-190,-214,-238,
+-256,-274,-296,-314,-331,-343,-356,-369,-377,-389,-401,-410,-416,-420,-419,-413,-414,-407,-405,-401,
+-398,-395,-395,-396,-390,-373,-355,-347,-333,-327,-327,-335,-346,-359,-371,-380,-391,-403,-418,-429,
+-437,-442,-443,-438,-431,-422,-401,-375,-351,-344,-340,-345,-338,-327,-325,-323,-307,-293,-275,-264,
+-250,-230,-211,-186,-164,-136,-109,-80,-45,-7,36,70,109,149,189,232,268,296,333,372,
+414,450,500,548,600,647,691,728,771,816,863,902,939,976,1015,1060,1101,1136,1169,1194,
+1233,1271,1308,1351,1374,1397,1422,1454,1487,1516,1546,1579,1620,1653,1683,1732,1778,1810,1847,1892,
+1925,1968,2005,2034,2068,2098,2135,2170,2212,2234,2254,2277,2303,2334,2359,2374,2402,2434,2458,2486,
+2531,2553,2570,2594,2615,2624,2632,2660,2682,2722,2745,2762,2780,2747,2746,2761,2744,2734,2735,2736,
+2738,2736,2734,2741,2724,2708,2681,2646,2621,2603,2584,2581,2595,2594,2576,2555,2563,2595,2609,2566,
+2519,2488,2537,2545,2467,2425,2408,2407,2393,2380,2379,2376,2372,2365,2345,2332,2320,2305,2302,2300,
+2294,2291,2287,2286,2283,2282,2262,2241,2278,2272,2240,2225,2232,2220,2201,2187,2166,2144,2142,2143,
+2154,2162,2178,2196,2212,2227,2239,2263,2278,2296,2319,2348,2372,2414,2452,2502,2533,2522,2512,2556,
+2585,2580,2502,2481,2483,2479,2483,2492,2494,2520,2582,2567,2553,2565,2558,2558,2589,2639,2675,2667,
+2640,2638,2650,2666,2688,2701,2766,2804,2832,2878,2888,2890,2906,2930,2961,2998,3034,3063,3079,3080,
+3091,3101,3100,3112,3145,3157,3160,3183,3204,3192,3189,3211,3249,3253,3257,3265,3263,3249,3257,3266,
+3255,3267,3257,3275,3263,3275,3331,3287,3296,3304,3301,3323,3321,3327,3347,3362,3369,3355,3369,3354,
+3378,3399,3423,3470,3516,3536,3574,3635,3688,3718,3818,3889,3980,4041,4032,4092,4112,4043,4093,4238,
+4380,4427,4317,4402,4597,4533,4461,4548,4602,4553,4536,4532,4532,4527,4525,4496,4477,4508,4628,4804,
+4809,4666,4551,4417,4394,4441,4527,4582,4535,4473,4434,4400,4391,4392,4389,4383,4368,4370,4404,4469,
+4399,4351,4329,4343,4377,4419,4468,4515,4555,4593,4625,4656,4681,4686,4676,4652,4627,4596,4569,4510,
+4463,4455,4481,4488,4558,4655,4733,4775,4799,4811,4851,4918,4990,5082,5093,5081,4947,4843,4825,4880,
+4693,4530,4441,4399,4384,4363,4350,4336,4326,4314,4295,4274,4255,4235,4216,4188,4161,4132,4105,4074,
+4032,3993,3964,3950,3921,3882,3832,3793,3760,3729,3703,3667,3642,3618,3595,3569,3545,3526,3503,3509,
+3495,3480,3468,3435,3392,3365,3370,3387,3414,3447,3479,3515,3598,3648,3672,3694,3714,3727,3726,3720,
+3706,3684,3643,3610,3584,3557,3522,3486,3446,3440,3454,3429,3384,3348,3336,3367,3275,3248,3213,3174,
+3136,3113,3103,3087,3065,3051,3027,2997,2970,2945,2913,2879,2844,2816,2788,2775,2751,2719,2688,2662,
+2630,2596,2572,2542,2528,2517,2482,2449,2415,2377,2345,2309,2284,2257,2229,2192,2160,2129,2096,2060,
+2027,1988,1944,1912,1882,1850,1818,1784,1749,1712,1673,1635,1606,1573,1535,1501,1464,1430,1389,1352,
+1313,1282,1240,1198,1156,1121,1078,1039,1001,960,915,875,837,798,758,717,678,642,601,559,
+525,489,450,408,365,317,275,242,201,170,129,99,68,39,-5,-57,-101,-143,-187,-227,
+-271,-302,-350,-388,-422,-460,-503,-551,-595,-633,-685,-729,-771,-806,-843,-882,-919,-956,-991,-1026,
+-1067,-1125,-1162,-1198,-1228,-1263,-1296,-1332,-1360,-1407,-1444,-1478,-1513,-1536,-1572,-1612,-1636,-1665,-1708,-1744,
+-1779,-1809,-1848,-1881,-1913,-1930,-1960,-1996,-2014,-2032,-2064,-2081,-2108,-2133,-2160,-2186,-2207,-2229,-2249,-2271,
+-2291,-2316,-2340,-2361,-2377,-2390,-2405,-2419,-2434,-2448,-2466,-2478,-2487,-2495,-2495,-2494,-2494,-2491,-2501,-2525,
+-2520,-2527,-2539,-2550,-2554,-2548,-2546,-2553,-2562,-2544,-2562,-2566,-2565,-2563,-2569,-2591,-2582,-2594,-2571,-2564,
+-2573,-2570,-2567,-2568,-2546,-2538,-2565,-2543,-2545,-2557,-2536,-2521,-2509,-2500,-2483,-2497,-2483,-2452,-2446,-2470,
+-2470,-2439,-2417,-2404,-2396,-2385,-2371,-2356,-2336,-2321,-2302,-2285,-2270,-2251,-2239,-2225,-2205,-2188,-2170,-2154,
+-2137,-2119,-2102,-2083,-2060,-2041,-2021,-2002,-1979,-1958,-1940,-1921,-1905,-1885,-1863,-1844,-1825,-1803,-1783,-1763,
+-1738,-1726,-1714,-1709,-1706,-1732,-1769,-1776,-1773,-1749,-1736,-1720,-1705,-1699,-1684,-1666,-1657,-1634,-1631,-1634,
+-1642,-1655,-1628,-1614,-1596,-1573,-1569,-1609,-1624,-1616,-1563,-1510,-1486,-1447,-1377,-1337,-1319,-1278,-1249,-1234,
+-1226,-1235,-1261,-1307,-1354,-1346,-1294,-1357,-1408,-1427,-1434,-1429,-1419,-1405,-1393,-1367,-1342,-1323,-1316,-1303,
+-1291,-1272,-1257,-1245,-1236,-1229,-1224,-1219,-1220,-1218,-1210,-1203,-1200,-1197,-1181,-1183,-1175,-1168,-1162,-1111,
+-1086,-1074,-1062,-1053,-1043,-1034,-1021,-1004,-992,-971,-947,-916,-870,-803,-724,-656,-664,-660,-642,-631,
+-609,-600,-589,-589,-612,-653,-689,-707,-700,-575,-436,-325,-200,-158,-112,-72,-53,-12,82,146,
+207,247,263,260,240,209,151,108,55,-10,-56,-87,-116,-141,-155,-161,-170,-188,-195,-191,
+-182,-173,-162,-156,-156,-147,-149,-160,-164,-167,-166,-185,-202,-218,-233,-240,-242,-252,-264,-277,
+-282,-292,-305,-320,-330,-350,-380,-404,-437,-468,-498,-538,-577,-603,-645,-675,-690,-692,-703,-713,
+-729,-737,-757,-772,-790,-805,-821,-835,-843,-836,-851,-867,-874,-883,-891,-897,-905,-917,-928,-945,
+-962,-981,-995,-1011,-1025,-1043,-1058,-1063,-1078,-1082,-1090,-1101,-1112,-1123,-1130,-1132,-1134,-1134,-1137,-1143,
+-1152,-1158,-1176,-1186,-1172,-1163,-1154,-1148,-1140,-1144,-1154,-1169,-1178,-1176,-1175,-1177,-1184,-1188,-1185,-1184,
+-1175,-1178,-1176,-1173,-1172,-1172,-1169,-1165,-1158,-1150,-1140,-1138,-1131,-1126,-1128,-1128,-1132,-1135,-1138,-1139,
+-1130,-1121,-1104,-1084,-1073,-1070,-1081,-1094,-1097,-1101,-1095,-1053,-1068,-1100,-1106,-1121,-1121,-1123,-1138,-1168,
+-1201,-1218,-1223,-1236,-1247,-1254,-1269,-1273,-1274,-1273,-1290,-1311,-1323,-1328,-1334,-1335,-1343,-1351,-1354,-1363,
+-1367,-1377,-1383,-1389,-1405,-1418,-1421,-1428,-1434,-1437,-1442,-1451,-1468,-1486,-1500,-1515,-1528,-1540,-1556,-1574,
+-1587,-1592,-1601,-1613,-1627,-1632,-1636,-1637,-1635,-1633,-1630,-1625,-1624,-1625,-1624,-1621,-1632,-1682,-1682,-1629,
+-1640,-1625,-1608,-1612,-1621,-1594,-1586,-1592,-1596,-1604,-1606,-1601,-1594,-1580,-1563,-1545,-1530,-1519,-1507,-1495,
+-1482,-1472,-1463,-1457,-1450,-1443,-1441,-1434,-1424,-1417,-1405,-1396,-1396,-1384,-1367,-1348,-1334,-1322,-1302,-1268,
+-1277,-1274,-1269,-1251,-1239,-1223,-1207,-1194,-1181,-1168,-1153,-1150,-1143,-1139,-1136,-1135,-1135,-1134,-1129,-1126,
+-1119,-1108,-1107,-1113,-1099,-1080,-1071,-1066,-1065,-1056,-1049,-1044,-1032,-1022,-1013,-1004,-1000,-992,-989,-980,
+-977,-975,-971,-966,-963,-964,-960,-951,-940,-943,-944,-940,-944,-944,-934,-933,-921,-930,-935,-935,
+-934,-936,-941,-941,-936,-940,-933,-937,-939,-939,-941,-942,-938,-939,-939,-946,-944,-944,-937,-928,
+-920,-917,-911,-906,-912,-899,-903,-902,-894,-887,-880,-876,-871,-865,-858,-847,-833,-820,-810,-801,
+-791,-777,-756,-739,-724,-702,-695,-691,-686,-683,-679,-666,-654,-642,-626,-590,-543,-578,-582,-569,
+-562,-558,-548,-535,-528,-505,-487,-473,-457,-446,-432,-423,-412,-407,-391,-375,-358,-331,-311,-296,
+-278,-256,-229,-208,-192,-170,-157,-150,-133,-108,-89,-58,-33,-12,-6,5,22,31,46,65,
+76,93,109,124,130,148,169,196,225,250,272,294,323,348,371,400,424,453,476,494,
+506,520,544,560,596,628,662,691,712,737,762,790,812,842,867,893,913,935,944,960,
+965,966,967,966,1003,1188,1409,1421,1449,1512,1554,1591,1627,1767,1934,1961,1848,1754,1765,1863,
+1908,1877,1855,1805,1760,1722,1704,1687,1659,1635,1613,1589,1547,1512,1489,1463,1438,1411,1370,1329,
+1290,1251,1224,1204,1189,1170,1163,1155,1157,1154,1141,1126,1118,1121,1128,1137,1143,1134,1124,1117,
+1117,1116,1118,1119,1108,1092,1051,994,934,872,805,737,677,630,628,628,577,521,470,433,
+397,348,288,227,171,121,82,51,29,13,-8,-31,-54,-80,-102,-121,-139,-155,-174,-195,
+-222,-242,-263,-285,-302,-322,-336,-356,-371,-382,-393,-405,-411,-416,-419,-415,-412,-410,-406,-404,
+-403,-400,-396,-398,-396,-388,-378,-355,-339,-327,-315,-304,-301,-307,-314,-325,-338,-351,-368,-383,
+-391,-400,-403,-402,-399,-393,-381,-362,-337,-318,-314,-314,-318,-307,-301,-307,-299,-287,-273,-261,
+-247,-231,-209,-189,-163,-141,-111,-80,-47,-7,30,69,104,144,184,225,264,298,328,363,
+397,439,472,510,555,610,664,703,752,790,829,871,910,958,997,1034,1070,1106,1147,1180,
+1204,1252,1294,1341,1368,1404,1424,1462,1487,1517,1549,1576,1604,1643,1674,1710,1748,1786,1829,1858,
+1894,1925,1973,2004,2037,2072,2102,2129,2161,2187,2217,2240,2270,2294,2320,2339,2365,2405,2434,2448,
+2483,2507,2532,2555,2574,2598,2617,2624,2658,2673,2699,2728,2758,2765,2724,2768,2778,2768,2761,2750,
+2761,2751,2745,2747,2742,2709,2690,2677,2688,2703,2697,2678,2660,2642,2631,2652,2654,2721,2709,2622,
+2540,2503,2499,2505,2501,2474,2447,2434,2424,2415,2424,2418,2406,2406,2390,2362,2346,2339,2325,2317,
+2312,2304,2302,2296,2299,2298,2291,2287,2278,2292,2280,2254,2247,2247,2218,2191,2191,2191,2187,2204,
+2209,2216,2209,2208,2216,2226,2239,2263,2269,2283,2299,2317,2336,2359,2398,2433,2455,2476,2497,2521,
+2588,2627,2577,2518,2500,2507,2540,2598,2655,2606,2574,2608,2609,2593,2592,2587,2590,2618,2643,2651,
+2657,2659,2685,2726,2742,2750,2728,2721,2785,2832,2846,2873,2889,2913,2935,2956,2989,3041,3053,3063,
+3082,3095,3103,3096,3112,3136,3154,3178,3184,3169,3178,3211,3218,3223,3232,3236,3234,3253,3255,3256,
+3267,3252,3251,3241,3258,3259,3290,3295,3282,3307,3308,3302,3338,3329,3332,3346,3362,3362,3365,3375,
+3374,3420,3431,3459,3499,3546,3562,3598,3680,3778,3821,3863,3921,3989,4051,4091,4143,4079,4009,4123,
+4286,4369,4343,4267,4442,4536,4464,4448,4553,4512,4511,4502,4497,4491,4477,4452,4447,4452,4489,4605,
+4775,4723,4534,4429,4374,4361,4382,4418,4441,4445,4434,4419,4402,4401,4401,4388,4361,4331,4307,4289,
+4281,4285,4296,4324,4360,4397,4430,4454,4480,4510,4546,4581,4607,4630,4644,4640,4637,4626,4592,4557,
+4510,4453,4434,4425,4433,4464,4506,4548,4602,4659,4658,4664,4694,4783,4807,4789,4791,4747,4667,4632,
+4607,4549,4488,4433,4410,4392,4373,4361,4349,4337,4320,4298,4278,4261,4243,4217,4192,4168,4145,4118,
+4084,4046,4014,3996,3972,3935,3897,3855,3818,3781,3747,3722,3694,3665,3637,3618,3596,3575,3555,3551,
+3552,3540,3527,3504,3465,3423,3412,3426,3446,3475,3505,3540,3609,3702,3737,3756,3775,3793,3803,3796,
+3787,3776,3773,3757,3733,3706,3671,3639,3601,3573,3596,3590,3536,3500,3406,3401,3390,3357,3346,3279,
+3217,3197,3182,3153,3128,3103,3077,3051,3019,3004,2964,2927,2894,2865,2850,2869,2850,2779,2742,2719,
+2686,2655,2623,2601,2595,2572,2542,2511,2484,2450,2418,2376,2337,2315,2287,2257,2221,2191,2157,2128,
+2091,2061,2025,1993,1961,1927,1891,1853,1819,1787,1753,1718,1677,1638,1603,1567,1532,1495,1462,1425,
+1385,1344,1304,1269,1227,1188,1152,1107,1071,1028,987,944,905,866,827,789,748,713,677,637,
+598,564,526,477,434,391,347,313,280,248,203,165,134,96,64,30,-10,-53,-100,-137,
+-181,-227,-268,-304,-341,-378,-417,-455,-504,-556,-597,-632,-675,-714,-751,-791,-831,-871,-906,-941,
+-980,-1021,-1074,-1113,-1146,-1180,-1211,-1240,-1283,-1331,-1361,-1398,-1426,-1460,-1496,-1535,-1561,-1596,-1631,-1665,
+-1702,-1739,-1769,-1800,-1831,-1859,-1884,-1917,-1929,-1952,-1986,-2015,-2040,-2065,-2089,-2112,-2139,-2158,-2182,-2206,
+-2228,-2250,-2272,-2298,-2316,-2338,-2354,-2369,-2380,-2389,-2400,-2422,-2441,-2450,-2462,-2462,-2461,-2458,-2460,-2484,
+-2496,-2493,-2502,-2513,-2527,-2528,-2527,-2522,-2536,-2529,-2526,-2557,-2546,-2544,-2544,-2552,-2570,-2563,-2569,-2540,
+-2555,-2553,-2557,-2553,-2540,-2530,-2537,-2537,-2500,-2516,-2534,-2511,-2511,-2502,-2482,-2460,-2476,-2480,-2460,-2441,
+-2455,-2449,-2415,-2396,-2383,-2377,-2368,-2353,-2338,-2322,-2305,-2288,-2272,-2255,-2240,-2223,-2206,-2191,-2175,-2162,
+-2142,-2127,-2111,-2090,-2070,-2050,-2030,-2011,-1993,-1972,-1954,-1936,-1918,-1899,-1880,-1861,-1842,-1821,-1803,-1781,
+-1761,-1741,-1726,-1714,-1708,-1705,-1723,-1770,-1778,-1770,-1737,-1735,-1723,-1712,-1705,-1691,-1670,-1657,-1655,-1652,
+-1648,-1648,-1640,-1628,-1612,-1598,-1579,-1566,-1597,-1641,-1620,-1568,-1525,-1504,-1457,-1414,-1362,-1345,-1302,-1257,
+-1240,-1231,-1228,-1222,-1240,-1299,-1351,-1360,-1379,-1412,-1437,-1449,-1452,-1444,-1433,-1425,-1417,-1398,-1382,-1372,
+-1359,-1332,-1314,-1298,-1289,-1287,-1287,-1282,-1277,-1275,-1274,-1272,-1266,-1253,-1240,-1238,-1221,-1203,-1185,-1193,
+-1157,-1124,-1129,-1127,-1120,-1104,-1089,-1077,-1064,-1049,-1022,-984,-931,-872,-812,-768,-726,-725,-692,-670,
+-653,-641,-655,-656,-654,-673,-713,-770,-832,-801,-641,-550,-438,-393,-343,-268,-217,-160,-60,30,
+86,101,94,86,62,32,6,-25,-77,-122,-165,-197,-213,-223,-232,-238,-242,-240,-249,-247,
+-247,-233,-228,-224,-225,-214,-206,-209,-232,-238,-244,-243,-256,-264,-296,-304,-308,-316,-327,-330,
+-336,-336,-338,-344,-340,-348,-365,-391,-432,-465,-499,-541,-586,-641,-686,-744,-782,-795,-797,-805,
+-814,-825,-840,-860,-879,-900,-919,-934,-950,-960,-970,-963,-969,-980,-983,-988,-991,-994,-999,-1011,
+-1025,-1039,-1048,-1062,-1077,-1088,-1099,-1115,-1126,-1138,-1144,-1154,-1160,-1164,-1174,-1179,-1185,-1189,-1192,-1194,
+-1193,-1207,-1213,-1217,-1228,-1234,-1217,-1211,-1202,-1191,-1182,-1179,-1185,-1200,-1217,-1221,-1195,-1192,-1205,-1220,
+-1223,-1231,-1225,-1226,-1222,-1221,-1221,-1222,-1220,-1219,-1211,-1202,-1197,-1182,-1183,-1179,-1181,-1181,-1178,-1177,
+-1177,-1175,-1165,-1155,-1141,-1130,-1130,-1135,-1148,-1157,-1156,-1152,-1142,-1153,-1169,-1173,-1174,-1177,-1170,-1174,
+-1191,-1215,-1232,-1245,-1255,-1272,-1283,-1289,-1297,-1310,-1321,-1331,-1343,-1356,-1361,-1367,-1368,-1371,-1377,-1380,
+-1378,-1376,-1375,-1389,-1409,-1424,-1438,-1459,-1465,-1465,-1471,-1476,-1486,-1496,-1509,-1521,-1528,-1533,-1540,-1553,
+-1574,-1591,-1605,-1613,-1623,-1638,-1645,-1648,-1654,-1659,-1656,-1654,-1655,-1654,-1653,-1656,-1659,-1680,-1662,-1656,
+-1657,-1633,-1606,-1615,-1622,-1605,-1594,-1593,-1602,-1609,-1611,-1609,-1601,-1595,-1583,-1567,-1557,-1545,-1534,-1522,
+-1510,-1498,-1490,-1480,-1468,-1457,-1451,-1443,-1442,-1442,-1434,-1416,-1395,-1377,-1369,-1369,-1363,-1354,-1336,-1316,
+-1296,-1286,-1281,-1265,-1250,-1236,-1225,-1211,-1195,-1180,-1165,-1152,-1143,-1135,-1128,-1121,-1117,-1114,-1114,-1105,
+-1100,-1104,-1099,-1098,-1098,-1093,-1084,-1075,-1066,-1060,-1057,-1046,-1042,-1030,-1026,-1026,-1019,-1009,-998,-986,
+-979,-977,-975,-974,-973,-969,-966,-958,-950,-942,-941,-942,-942,-941,-915,-901,-920,-921,-931,-934,
+-932,-935,-936,-936,-943,-943,-935,-942,-944,-949,-951,-950,-945,-942,-942,-945,-944,-949,-955,-949,
+-948,-939,-933,-930,-923,-921,-919,-922,-916,-916,-907,-896,-888,-882,-875,-866,-854,-840,-822,-810,
+-801,-792,-780,-765,-748,-740,-725,-712,-704,-703,-702,-702,-683,-666,-645,-623,-604,-603,-606,-601,
+-590,-583,-581,-578,-574,-563,-545,-521,-506,-491,-471,-460,-450,-438,-430,-418,-392,-374,-353,-328,
+-313,-295,-274,-258,-229,-192,-184,-171,-137,-114,-90,-65,-51,-44,-29,-10,5,19,30,39,
+50,63,85,103,117,133,151,170,190,218,240,262,288,316,343,371,399,422,448,458,
+490,496,498,521,550,586,621,647,667,687,710,734,758,773,801,825,851,872,897,919,
+926,921,907,888,889,961,1156,1344,1377,1388,1439,1514,1580,1662,1822,1969,1894,1827,1793,1823,
+1842,1890,1905,1873,1824,1784,1728,1709,1734,1733,1714,1707,1678,1605,1540,1489,1453,1420,1393,1353,
+1318,1299,1262,1230,1204,1193,1177,1160,1155,1158,1156,1138,1118,1118,1120,1116,1124,1126,1127,1125,
+1125,1123,1124,1133,1139,1132,1103,1061,1016,959,905,841,775,710,667,663,657,601,545,500,
+469,438,390,333,269,207,153,110,75,50,30,4,-24,-45,-75,-100,-117,-134,-149,-169,
+-186,-204,-221,-241,-263,-284,-307,-324,-341,-361,-373,-380,-388,-393,-399,-400,-400,-398,-396,-401,
+-401,-405,-405,-403,-400,-395,-384,-370,-355,-327,-308,-294,-281,-269,-266,-268,-280,-293,-308,-321,
+-330,-344,-358,-358,-356,-355,-348,-337,-317,-296,-282,-281,-277,-279,-277,-276,-275,-266,-256,-239,
+-226,-210,-191,-174,-151,-124,-99,-69,-38,-4,34,69,107,144,184,225,260,298,329,361,
+394,431,467,498,534,573,612,652,696,740,792,837,879,923,967,995,1031,1077,1117,1147,
+1184,1219,1259,1296,1341,1386,1420,1443,1480,1504,1537,1565,1589,1617,1648,1679,1716,1751,1792,1828,
+1864,1903,1938,1968,1998,2027,2059,2086,2114,2145,2180,2209,2233,2254,2276,2298,2324,2362,2387,2418,
+2445,2470,2497,2521,2550,2566,2591,2613,2624,2649,2680,2694,2723,2734,2748,2730,2773,2802,2791,2792,
+2786,2763,2778,2767,2742,2724,2738,2750,2764,2772,2773,2757,2734,2722,2768,2796,2802,2734,2689,2611,
+2563,2544,2531,2525,2516,2509,2495,2485,2473,2465,2455,2455,2439,2429,2417,2393,2375,2364,2350,2337,
+2323,2320,2308,2304,2297,2290,2277,2287,2298,2292,2284,2274,2271,2269,2257,2240,2228,2228,2216,2201,
+2199,2208,2216,2219,2213,2209,2219,2223,2227,2245,2265,2288,2315,2347,2372,2391,2422,2464,2561,2575,
+2577,2596,2611,2601,2555,2493,2480,2536,2695,2734,2655,2606,2609,2680,2702,2658,2642,2622,2629,2633,
+2646,2669,2684,2698,2718,2748,2786,2799,2761,2808,2873,2870,2873,2890,2919,2940,2960,3008,3031,3028,
+3044,3068,3094,3093,3092,3118,3149,3171,3187,3184,3180,3189,3224,3260,3247,3228,3216,3241,3274,3264,
+3257,3256,3240,3243,3247,3256,3261,3296,3266,3290,3302,3299,3313,3333,3323,3343,3355,3367,3361,3392,
+3383,3393,3435,3453,3485,3534,3576,3615,3641,3702,3811,3900,3931,3964,3992,4028,4122,4127,4034,4088,
+4234,4344,4326,4290,4296,4469,4472,4409,4506,4529,4512,4502,4485,4500,4502,4448,4406,4420,4435,4433,
+4455,4466,4444,4391,4349,4341,4338,4355,4379,4400,4415,4419,4412,4406,4407,4405,4385,4357,4330,4291,
+4275,4264,4279,4312,4341,4371,4401,4420,4430,4447,4478,4515,4545,4565,4584,4603,4606,4616,4611,4587,
+4557,4518,4464,4442,4423,4417,4423,4439,4464,4494,4527,4547,4563,4571,4574,4579,4580,4570,4554,4533,
+4503,4474,4453,4437,4429,4416,4399,4383,4371,4360,4342,4319,4300,4285,4265,4244,4221,4196,4175,4151,
+4121,4088,4059,4036,4015,3987,3954,3914,3874,3837,3801,3768,3743,3716,3689,3656,3629,3617,3593,3585,
+3595,3593,3588,3577,3546,3498,3464,3468,3489,3507,3532,3571,3625,3712,3787,3815,3841,3870,3878,3878,
+3863,3864,3867,3872,3862,3839,3806,3777,3778,3783,3749,3733,3705,3657,3614,3545,3493,3482,3474,3398,
+3338,3288,3270,3249,3210,3151,3109,3074,3038,3010,2994,2970,2946,2929,2929,2905,2858,2830,2803,2778,
+2739,2711,2684,2659,2646,2624,2606,2575,2530,2509,2484,2441,2404,2376,2346,2324,2295,2265,2233,2202,
+2172,2137,2093,2058,2021,1985,1950,1916,1879,1843,1807,1769,1736,1701,1666,1628,1592,1558,1519,1483,
+1449,1415,1374,1333,1293,1256,1217,1178,1139,1099,1057,1015,976,939,898,858,820,779,741,706,
+668,633,599,553,505,468,416,380,341,309,268,233,204,165,131,98,58,20,-12,-46,
+-96,-139,-180,-224,-265,-303,-337,-380,-413,-472,-531,-561,-579,-619,-664,-705,-746,-784,-822,-860,
+-895,-936,-973,-1008,-1058,-1093,-1132,-1164,-1200,-1230,-1274,-1318,-1353,-1385,-1420,-1451,-1486,-1516,-1558,-1592,
+-1627,-1664,-1695,-1721,-1744,-1777,-1810,-1845,-1857,-1879,-1922,-1947,-1972,-1991,-2022,-2046,-2071,-2096,-2118,-2143,
+-2164,-2188,-2208,-2236,-2255,-2277,-2299,-2319,-2330,-2337,-2343,-2355,-2386,-2407,-2418,-2425,-2424,-2425,-2426,-2433,
+-2466,-2465,-2460,-2478,-2485,-2493,-2499,-2505,-2508,-2504,-2499,-2510,-2518,-2540,-2523,-2517,-2535,-2543,-2546,-2542,
+-2519,-2530,-2534,-2532,-2528,-2513,-2514,-2509,-2522,-2510,-2518,-2521,-2499,-2496,-2476,-2465,-2449,-2479,-2454,-2427,
+-2416,-2444,-2441,-2406,-2389,-2378,-2363,-2348,-2335,-2318,-2303,-2288,-2272,-2262,-2248,-2232,-2219,-2200,-2185,-2169,
+-2152,-2135,-2120,-2105,-2083,-2062,-2042,-2023,-2006,-1987,-1968,-1950,-1932,-1915,-1895,-1875,-1857,-1836,-1819,-1800,
+-1782,-1761,-1742,-1727,-1714,-1712,-1705,-1716,-1764,-1769,-1763,-1741,-1747,-1735,-1717,-1707,-1699,-1690,-1679,-1668,
+-1663,-1666,-1660,-1654,-1638,-1621,-1603,-1581,-1569,-1586,-1623,-1601,-1548,-1532,-1510,-1479,-1437,-1386,-1337,-1302,
+-1274,-1250,-1237,-1243,-1248,-1239,-1236,-1281,-1361,-1416,-1433,-1447,-1426,-1407,-1413,-1393,-1436,-1449,-1439,-1434,
+-1425,-1405,-1375,-1353,-1347,-1348,-1349,-1349,-1349,-1344,-1332,-1322,-1319,-1315,-1307,-1286,-1262,-1244,-1227,-1203,
+-1202,-1209,-1170,-1169,-1174,-1163,-1152,-1145,-1131,-1108,-1083,-1046,-988,-916,-886,-878,-889,-816,-758,-729,
+-705,-688,-695,-710,-722,-743,-770,-798,-859,-947,-889,-788,-720,-606,-544,-481,-374,-295,-159,-57,
+11,15,-17,-36,-66,-96,-128,-159,-187,-209,-243,-276,-302,-321,-332,-326,-318,-318,-316,-312,
+-307,-308,-300,-300,-296,-293,-290,-287,-294,-309,-296,-284,-272,-293,-293,-301,-292,-295,-313,-329,
+-330,-331,-329,-328,-322,-324,-329,-339,-369,-403,-437,-483,-541,-600,-665,-737,-812,-872,-896,-901,
+-898,-899,-913,-936,-956,-977,-998,-1020,-1030,-1042,-1057,-1066,-1071,-1077,-1077,-1081,-1083,-1084,-1085,-1088,
+-1096,-1109,-1118,-1126,-1133,-1140,-1148,-1158,-1174,-1191,-1203,-1210,-1215,-1223,-1225,-1229,-1232,-1236,-1240,-1245,
+-1249,-1254,-1261,-1265,-1269,-1270,-1272,-1275,-1277,-1270,-1260,-1247,-1236,-1227,-1228,-1235,-1249,-1260,-1241,-1227,
+-1242,-1256,-1264,-1269,-1281,-1279,-1275,-1272,-1269,-1266,-1270,-1268,-1262,-1260,-1254,-1240,-1238,-1237,-1228,-1230,
+-1229,-1223,-1220,-1217,-1209,-1197,-1187,-1183,-1183,-1191,-1202,-1210,-1212,-1210,-1210,-1213,-1231,-1238,-1235,-1235,
+-1231,-1211,-1228,-1255,-1265,-1284,-1299,-1311,-1313,-1310,-1314,-1336,-1358,-1372,-1383,-1391,-1396,-1398,-1398,-1398,
+-1401,-1404,-1404,-1405,-1413,-1427,-1451,-1445,-1446,-1492,-1511,-1500,-1499,-1512,-1517,-1529,-1533,-1538,-1543,-1553,
+-1562,-1577,-1594,-1605,-1613,-1629,-1633,-1636,-1648,-1658,-1665,-1672,-1673,-1676,-1678,-1678,-1683,-1693,-1691,-1664,
+-1648,-1665,-1669,-1671,-1645,-1625,-1606,-1604,-1609,-1613,-1616,-1615,-1608,-1603,-1595,-1583,-1569,-1556,-1546,-1534,
+-1526,-1517,-1510,-1501,-1492,-1482,-1475,-1466,-1458,-1452,-1434,-1436,-1421,-1406,-1390,-1374,-1357,-1344,-1341,-1350,
+-1341,-1330,-1319,-1301,-1279,-1263,-1250,-1234,-1218,-1206,-1190,-1175,-1160,-1149,-1138,-1131,-1123,-1112,-1105,-1095,
+-1085,-1081,-1081,-1075,-1073,-1075,-1073,-1068,-1058,-1053,-1045,-1038,-1031,-1024,-1023,-1018,-1021,-1018,-1003,-999,
+-985,-984,-981,-981,-979,-976,-975,-973,-964,-960,-955,-950,-946,-940,-938,-938,-933,-922,-925,-932,
+-933,-935,-933,-930,-933,-937,-943,-947,-953,-955,-953,-955,-950,-954,-952,-952,-954,-952,-953,-950,
+-954,-957,-946,-940,-936,-928,-929,-928,-927,-933,-931,-921,-911,-904,-898,-890,-877,-869,-854,-840,
+-827,-816,-807,-797,-781,-769,-756,-742,-733,-726,-725,-726,-723,-709,-682,-654,-633,-618,-610,-606,
+-606,-603,-598,-594,-588,-582,-580,-566,-552,-535,-511,-496,-493,-468,-449,-448,-429,-407,-387,-363,
+-347,-323,-307,-276,-241,-226,-201,-170,-143,-114,-103,-86,-63,-48,-37,-28,-13,-2,9,12,
+23,35,52,68,88,109,127,143,164,186,209,229,250,270,295,326,360,388,409,429,
+440,473,480,489,520,550,572,585,601,622,651,678,700,724,755,772,794,814,830,845,
+853,856,848,836,826,857,975,1138,1307,1366,1370,1393,1471,1579,1700,1869,1965,1881,1812,1731,
+1726,1735,1712,1717,1698,1707,1697,1697,1701,1738,1744,1736,1727,1707,1673,1573,1503,1460,1417,1378,
+1342,1305,1281,1260,1244,1229,1209,1188,1167,1158,1154,1141,1130,1122,1117,1109,1107,1103,1100,1106,
+1107,1108,1116,1137,1144,1142,1127,1100,1058,1016,971,920,869,805,741,690,686,682,629,572,
+526,496,468,430,376,315,257,202,154,115,81,59,33,5,-22,-50,-75,-96,-110,-124,
+-144,-167,-184,-201,-222,-241,-261,-280,-296,-319,-334,-347,-356,-358,-360,-364,-370,-373,-379,-383,
+-392,-396,-397,-399,-398,-389,-382,-370,-358,-337,-314,-292,-267,-248,-235,-225,-226,-235,-252,-266,
+-280,-288,-295,-303,-302,-302,-303,-297,-283,-266,-244,-236,-240,-235,-230,-229,-234,-228,-218,-205,
+-188,-170,-154,-138,-119,-97,-68,-39,-10,19,51,83,118,156,187,217,248,284,317,352,
+387,428,470,501,536,569,601,640,684,718,766,815,863,918,951,979,1014,1052,1079,1119,
+1157,1199,1232,1265,1304,1351,1404,1442,1482,1505,1530,1559,1589,1612,1635,1664,1694,1727,1765,1804,
+1844,1880,1914,1925,1953,1992,2019,2049,2074,2106,2128,2158,2188,2216,2230,2260,2284,2320,2347,2379,
+2409,2426,2455,2487,2516,2539,2561,2586,2604,2621,2626,2649,2674,2710,2760,2771,2747,2740,2774,2797,
+2770,2734,2699,2694,2712,2758,2748,2811,2818,2833,2838,2811,2812,2788,2804,2784,2773,2691,2635,2603,
+2586,2577,2571,2573,2568,2552,2535,2525,2507,2490,2484,2481,2463,2441,2427,2415,2396,2380,2365,2355,
+2346,2335,2326,2315,2308,2299,2295,2304,2292,2296,2284,2304,2302,2291,2274,2263,2245,2244,2245,2235,
+2222,2216,2217,2218,2222,2226,2232,2233,2239,2248,2270,2281,2299,2324,2354,2388,2425,2439,2445,2498,
+2563,2581,2557,2547,2535,2506,2461,2450,2502,2603,2732,2703,2686,2665,2667,2773,2799,2679,2639,2647,
+2643,2658,2681,2706,2721,2730,2743,2774,2805,2804,2821,2892,2895,2880,2896,2916,2936,2963,2989,3001,
+3012,3040,3064,3080,3108,3120,3131,3140,3176,3205,3210,3216,3208,3219,3247,3261,3233,3212,3223,3240,
+3257,3265,3258,3268,3275,3266,3268,3281,3297,3282,3327,3332,3317,3315,3346,3333,3344,3369,3378,3366,
+3410,3401,3417,3476,3498,3514,3575,3648,3686,3704,3729,3815,3927,3971,4032,4027,4059,4076,4021,4085,
+4210,4372,4391,4382,4324,4352,4442,4421,4427,4521,4488,4470,4462,4468,4474,4454,4399,4399,4404,4406,
+4381,4371,4354,4346,4328,4311,4316,4327,4353,4372,4380,4395,4401,4405,4412,4411,4407,4390,4370,4337,
+4308,4290,4302,4308,4348,4372,4419,4426,4401,4411,4426,4452,4486,4513,4536,4549,4560,4576,4589,4589,
+4576,4550,4513,4486,4461,4441,4431,4424,4430,4444,4464,4486,4506,4518,4521,4510,4503,4494,4480,4470,
+4455,4438,4432,4430,4431,4425,4416,4408,4397,4384,4368,4345,4325,4309,4288,4264,4243,4222,4201,4183,
+4155,4125,4089,4063,4055,4034,4001,3963,3924,3887,3856,3822,3797,3771,3739,3710,3686,3649,3629,3625,
+3631,3633,3632,3629,3617,3580,3533,3502,3507,3533,3559,3574,3611,3688,3778,3842,3872,3900,3926,3930,
+3914,3909,3924,3942,3947,3938,3923,3903,3883,3869,3849,3816,3785,3760,3732,3698,3643,3582,3510,3439,
+3387,3340,3296,3266,3231,3202,3173,3166,3129,3097,3080,3076,3066,3017,2964,2946,2915,2890,2863,2836,
+2798,2770,2736,2706,2702,2686,2656,2623,2604,2576,2552,2512,2470,2446,2411,2387,2361,2337,2308,2272,
+2233,2195,2161,2128,2089,2049,2012,1974,1937,1902,1863,1828,1792,1758,1723,1685,1652,1613,1576,1544,
+1508,1473,1436,1402,1364,1327,1288,1245,1212,1170,1129,1085,1048,1005,967,926,888,848,809,768,
+728,693,664,636,567,506,485,438,410,378,333,299,269,233,200,168,134,93,54,16,
+-17,-48,-88,-137,-176,-227,-266,-304,-344,-387,-448,-503,-513,-544,-577,-615,-660,-702,-741,-779,
+-822,-852,-891,-931,-976,-1016,-1048,-1085,-1120,-1155,-1188,-1228,-1280,-1309,-1348,-1381,-1411,-1434,-1474,-1519,
+-1555,-1582,-1614,-1632,-1668,-1697,-1727,-1760,-1795,-1808,-1840,-1876,-1902,-1927,-1950,-1979,-2006,-2032,-2052,-2079,
+-2105,-2129,-2151,-2170,-2194,-2217,-2238,-2257,-2273,-2288,-2296,-2301,-2318,-2355,-2369,-2382,-2387,-2392,-2399,-2392,
+-2414,-2442,-2435,-2436,-2451,-2462,-2462,-2478,-2481,-2471,-2477,-2488,-2492,-2500,-2483,-2506,-2504,-2528,-2512,-2524,
+-2509,-2495,-2501,-2506,-2511,-2506,-2502,-2508,-2499,-2504,-2492,-2491,-2493,-2486,-2483,-2466,-2451,-2460,-2466,-2448,
+-2433,-2413,-2436,-2422,-2389,-2374,-2364,-2355,-2340,-2329,-2314,-2297,-2282,-2266,-2250,-2235,-2221,-2205,-2188,-2173,
+-2157,-2143,-2128,-2113,-2095,-2076,-2055,-2038,-2018,-2002,-1982,-1964,-1945,-1925,-1909,-1891,-1872,-1850,-1836,-1818,
+-1800,-1781,-1764,-1745,-1729,-1718,-1709,-1705,-1710,-1762,-1776,-1773,-1747,-1755,-1748,-1722,-1721,-1712,-1704,-1697,
+-1684,-1675,-1674,-1675,-1656,-1647,-1628,-1611,-1593,-1581,-1588,-1625,-1608,-1553,-1534,-1520,-1499,-1468,-1439,-1391,
+-1318,-1303,-1280,-1270,-1267,-1281,-1268,-1251,-1276,-1360,-1430,-1441,-1444,-1443,-1440,-1451,-1453,-1459,-1463,-1466,
+-1456,-1441,-1425,-1403,-1395,-1395,-1401,-1407,-1401,-1400,-1395,-1389,-1385,-1373,-1357,-1337,-1322,-1303,-1278,-1252,
+-1240,-1238,-1251,-1261,-1232,-1222,-1213,-1200,-1186,-1168,-1139,-1094,-1035,-985,-956,-954,-954,-902,-854,-806,
+-753,-744,-747,-749,-752,-759,-794,-831,-890,-991,-1048,-942,-909,-809,-687,-618,-543,-430,-326,-213,
+-153,-117,-118,-148,-184,-211,-244,-277,-307,-303,-314,-343,-375,-390,-406,-415,-418,-408,-399,-396,
+-392,-384,-381,-372,-371,-366,-359,-360,-366,-363,-367,-365,-355,-348,-372,-357,-347,-347,-337,-346,
+-360,-364,-364,-359,-347,-340,-338,-321,-328,-351,-394,-424,-459,-507,-561,-634,-726,-840,-932,-965,
+-977,-974,-980,-1000,-1025,-1050,-1071,-1090,-1101,-1114,-1127,-1139,-1147,-1157,-1163,-1166,-1169,-1172,-1175,-1178,
+-1181,-1183,-1194,-1201,-1204,-1212,-1214,-1218,-1223,-1235,-1247,-1261,-1271,-1277,-1280,-1280,-1284,-1289,-1289,-1291,
+-1294,-1298,-1307,-1312,-1317,-1320,-1320,-1317,-1315,-1330,-1337,-1319,-1308,-1294,-1281,-1267,-1259,-1255,-1266,-1279,
+-1286,-1288,-1296,-1301,-1303,-1307,-1314,-1316,-1319,-1325,-1325,-1323,-1323,-1321,-1317,-1309,-1303,-1294,-1293,-1292,
+-1287,-1284,-1274,-1270,-1265,-1258,-1249,-1241,-1235,-1230,-1233,-1240,-1247,-1254,-1256,-1252,-1248,-1248,-1269,-1272,
+-1276,-1278,-1266,-1278,-1288,-1303,-1313,-1320,-1314,-1309,-1327,-1332,-1338,-1351,-1379,-1399,-1411,-1416,-1415,-1415,
+-1408,-1414,-1427,-1436,-1449,-1453,-1464,-1480,-1479,-1493,-1510,-1511,-1512,-1518,-1527,-1537,-1541,-1553,-1559,-1566,
+-1579,-1588,-1597,-1610,-1613,-1618,-1627,-1635,-1641,-1645,-1654,-1664,-1672,-1677,-1688,-1695,-1704,-1714,-1711,-1715,
+-1709,-1701,-1679,-1663,-1701,-1698,-1664,-1636,-1632,-1633,-1632,-1631,-1628,-1618,-1605,-1598,-1586,-1573,-1557,-1539,
+-1533,-1522,-1509,-1507,-1503,-1499,-1494,-1492,-1483,-1475,-1464,-1452,-1437,-1426,-1406,-1395,-1380,-1368,-1373,-1356,
+-1337,-1324,-1298,-1283,-1281,-1272,-1271,-1267,-1260,-1244,-1226,-1210,-1196,-1179,-1170,-1160,-1149,-1132,-1120,-1107,
+-1096,-1083,-1077,-1073,-1065,-1060,-1059,-1058,-1054,-1049,-1044,-1036,-1026,-1023,-1018,-1010,-1010,-1005,-1003,-998,
+-999,-998,-992,-960,-965,-973,-970,-961,-951,-958,-957,-953,-943,-945,-935,-928,-934,-923,-919,-930,
+-930,-935,-932,-939,-934,-934,-935,-935,-940,-946,-952,-955,-956,-955,-961,-964,-964,-962,-961,-960,
+-949,-950,-945,-941,-935,-932,-925,-935,-938,-940,-934,-927,-921,-917,-916,-911,-904,-894,-885,-875,
+-863,-857,-850,-842,-822,-801,-787,-773,-758,-751,-745,-750,-739,-737,-724,-706,-679,-658,-646,-635,
+-629,-627,-629,-629,-625,-618,-607,-595,-582,-567,-554,-537,-519,-501,-482,-468,-452,-427,-424,-400,
+-370,-342,-333,-300,-275,-254,-228,-195,-164,-154,-139,-121,-105,-86,-72,-62,-48,-38,-21,-21,
+-13,-5,11,30,46,62,85,105,121,137,159,187,212,230,250,276,313,338,366,390,
+410,420,430,444,468,489,507,519,553,586,612,632,658,688,713,729,749,777,792,807,
+815,818,810,794,778,792,858,981,1114,1307,1381,1404,1449,1490,1568,1675,1764,1861,1834,1769,
+1744,1744,1754,1733,1644,1609,1636,1660,1671,1685,1720,1752,1752,1728,1701,1663,1582,1500,1444,1394,
+1348,1308,1267,1240,1227,1211,1199,1190,1172,1160,1153,1146,1136,1125,1117,1109,1102,1089,1095,1089,
+1083,1080,1080,1093,1122,1136,1136,1117,1083,1049,1009,974,937,888,835,776,724,708,702,658,
+592,539,499,475,454,417,367,314,267,217,169,130,95,65,37,7,-16,-39,-60,-74,
+-92,-112,-129,-144,-157,-183,-206,-227,-245,-264,-284,-298,-305,-314,-326,-331,-337,-342,-349,-359,
+-365,-373,-376,-375,-374,-369,-365,-363,-350,-336,-315,-288,-263,-236,-214,-198,-192,-184,-187,-203,
+-213,-224,-228,-241,-241,-240,-242,-240,-230,-215,-197,-178,-175,-176,-179,-170,-169,-173,-166,-152,
+-139,-121,-102,-85,-69,-49,-23,5,32,58,84,108,139,172,206,231,251,279,320,352,
+373,414,455,498,534,572,603,634,668,703,753,794,842,886,930,970,1007,1042,1068,1106,
+1144,1174,1207,1239,1281,1328,1371,1418,1460,1501,1523,1550,1577,1602,1626,1647,1675,1703,1736,1773,
+1808,1840,1867,1897,1929,1945,1976,2018,2038,2060,2086,2114,2140,2171,2198,2223,2253,2277,2307,2335,
+2362,2394,2416,2454,2474,2496,2530,2551,2564,2597,2629,2658,2672,2673,2675,2687,2691,2670,2687,2708,
+2693,2700,2712,2720,2739,2769,2800,2813,2825,2854,2849,2852,2845,2808,2787,2742,2706,2689,2676,2656,
+2629,2621,2614,2614,2597,2586,2559,2547,2542,2526,2518,2498,2470,2448,2434,2419,2410,2396,2385,2374,
+2373,2363,2344,2330,2317,2308,2296,2289,2290,2304,2309,2304,2311,2302,2287,2283,2278,2282,2265,2259,
+2257,2246,2238,2234,2233,2235,2234,2242,2249,2248,2254,2268,2289,2312,2361,2381,2375,2392,2410,2400,
+2394,2421,2464,2483,2505,2518,2506,2487,2477,2510,2615,2818,2798,2734,2696,2639,2663,2686,2635,2620,
+2633,2631,2643,2678,2714,2743,2752,2786,2811,2792,2809,2838,2903,2912,2912,2910,2912,2953,2979,3001,
+2997,2993,3009,3047,3073,3110,3130,3149,3166,3189,3210,3221,3221,3213,3231,3248,3255,3230,3221,3220,
+3218,3254,3250,3262,3280,3294,3297,3289,3304,3291,3289,3328,3333,3319,3335,3371,3355,3374,3398,3383,
+3380,3424,3408,3440,3507,3559,3567,3598,3669,3753,3799,3784,3828,3936,3989,4023,4049,4075,4036,4002,
+4057,4239,4372,4362,4328,4283,4361,4383,4366,4458,4467,4456,4447,4434,4424,4430,4385,4361,4373,4380,
+4380,4356,4331,4328,4310,4291,4289,4303,4320,4341,4363,4373,4385,4397,4417,4425,4409,4409,4401,4382,
+4350,4323,4315,4312,4313,4333,4368,4429,4431,4399,4380,4399,4431,4465,4495,4511,4521,4532,4555,4565,
+4567,4560,4544,4515,4493,4480,4457,4449,4445,4444,4454,4467,4483,4499,4505,4503,4496,4484,4476,4457,
+4444,4436,4427,4423,4429,4428,4422,4415,4407,4397,4383,4364,4342,4331,4310,4289,4268,4248,4229,4209,
+4184,4154,4124,4091,4086,4065,4036,4004,3968,3935,3903,3873,3847,3817,3793,3765,3734,3717,3693,3654,
+3641,3688,3665,3656,3656,3641,3601,3554,3526,3531,3558,3584,3605,3642,3728,3821,3880,3928,3960,3968,
+3954,3948,3949,3973,3985,3989,3988,3979,3963,3944,3918,3881,3847,3827,3803,3776,3737,3689,3640,3577,
+3527,3450,3344,3298,3284,3282,3297,3276,3224,3159,3114,3113,3104,3048,3015,2994,2973,2951,2919,2891,
+2860,2821,2797,2775,2745,2731,2709,2675,2645,2628,2608,2570,2541,2499,2464,2441,2422,2391,2363,2332,
+2295,2257,2228,2191,2153,2115,2078,2033,1994,1958,1920,1887,1852,1816,1782,1747,1710,1674,1641,1606,
+1568,1533,1498,1462,1426,1395,1358,1318,1276,1238,1194,1155,1115,1075,1033,994,951,909,872,828,
+794,750,725,695,651,606,563,520,490,449,404,370,331,300,272,239,205,168,129,94,
+51,9,-23,-62,-98,-140,-185,-228,-273,-312,-363,-429,-439,-469,-504,-545,-583,-624,-662,-696,
+-736,-780,-805,-849,-890,-925,-965,-1005,-1045,-1060,-1099,-1145,-1200,-1232,-1268,-1306,-1345,-1365,-1399,-1439,
+-1465,-1511,-1537,-1563,-1584,-1619,-1648,-1680,-1718,-1741,-1765,-1801,-1835,-1856,-1876,-1903,-1943,-1964,-1982,-2009,
+-2035,-2062,-2089,-2112,-2130,-2150,-2178,-2195,-2213,-2231,-2244,-2257,-2264,-2284,-2321,-2331,-2339,-2344,-2353,-2369,
+-2363,-2402,-2402,-2399,-2414,-2423,-2430,-2436,-2448,-2445,-2452,-2452,-2460,-2454,-2467,-2478,-2472,-2486,-2506,-2492,
+-2509,-2472,-2478,-2491,-2497,-2491,-2480,-2483,-2497,-2493,-2492,-2485,-2480,-2480,-2481,-2453,-2452,-2441,-2455,-2451,
+-2413,-2403,-2404,-2425,-2399,-2369,-2361,-2354,-2343,-2330,-2319,-2303,-2284,-2268,-2253,-2239,-2224,-2210,-2196,-2181,
+-2165,-2149,-2132,-2113,-2097,-2080,-2064,-2049,-2031,-2015,-1993,-1974,-1957,-1940,-1921,-1901,-1885,-1866,-1849,-1832,
+-1817,-1802,-1783,-1763,-1743,-1728,-1719,-1717,-1709,-1709,-1755,-1785,-1801,-1776,-1764,-1752,-1735,-1723,-1716,-1714,
+-1703,-1690,-1683,-1682,-1678,-1659,-1649,-1635,-1619,-1599,-1587,-1589,-1618,-1651,-1603,-1552,-1534,-1522,-1486,-1473,
+-1424,-1376,-1328,-1345,-1312,-1288,-1284,-1290,-1306,-1328,-1364,-1401,-1420,-1449,-1470,-1477,-1475,-1482,-1480,-1476,
+-1475,-1467,-1456,-1434,-1431,-1434,-1430,-1441,-1448,-1453,-1453,-1444,-1437,-1428,-1420,-1408,-1392,-1375,-1355,-1323,
+-1305,-1300,-1300,-1303,-1322,-1315,-1271,-1261,-1242,-1222,-1190,-1144,-1094,-1062,-1011,-1010,-1017,-956,-912,-888,
+-853,-829,-802,-789,-802,-801,-821,-850,-900,-1005,-1109,-1051,-936,-865,-747,-709,-639,-522,-346,-294,
+-270,-256,-239,-259,-287,-317,-333,-364,-415,-427,-414,-414,-437,-466,-488,-494,-492,-489,-482,-477,
+-475,-472,-456,-461,-454,-436,-433,-434,-429,-432,-432,-427,-432,-431,-457,-471,-459,-457,-458,-453,
+-437,-432,-438,-442,-429,-396,-375,-368,-359,-357,-367,-390,-413,-450,-520,-588,-676,-790,-913,-995,
+-1028,-1039,-1047,-1064,-1087,-1111,-1134,-1150,-1166,-1178,-1191,-1205,-1216,-1228,-1236,-1242,-1246,-1252,-1259,-1267,
+-1270,-1274,-1277,-1282,-1287,-1291,-1292,-1289,-1296,-1297,-1302,-1315,-1327,-1336,-1338,-1336,-1338,-1337,-1344,-1345,
+-1345,-1348,-1351,-1353,-1358,-1364,-1369,-1370,-1367,-1363,-1357,-1359,-1371,-1369,-1358,-1346,-1337,-1324,-1315,-1307,
+-1312,-1317,-1323,-1338,-1345,-1364,-1368,-1375,-1378,-1377,-1374,-1372,-1374,-1379,-1377,-1373,-1372,-1369,-1363,-1359,
+-1355,-1350,-1342,-1332,-1320,-1313,-1307,-1299,-1291,-1286,-1282,-1274,-1275,-1281,-1287,-1295,-1296,-1289,-1279,-1277,
+-1295,-1310,-1316,-1319,-1328,-1334,-1346,-1349,-1342,-1331,-1330,-1342,-1341,-1332,-1342,-1354,-1371,-1396,-1413,-1425,
+-1413,-1403,-1414,-1438,-1466,-1479,-1490,-1495,-1504,-1517,-1518,-1522,-1530,-1540,-1537,-1548,-1548,-1556,-1571,-1579,
+-1588,-1593,-1603,-1618,-1631,-1637,-1637,-1643,-1650,-1653,-1655,-1659,-1665,-1667,-1681,-1697,-1706,-1716,-1713,-1723,
+-1722,-1716,-1703,-1703,-1688,-1689,-1734,-1702,-1662,-1649,-1646,-1649,-1642,-1638,-1631,-1622,-1614,-1601,-1589,-1575,
+-1561,-1544,-1529,-1517,-1509,-1501,-1499,-1496,-1493,-1491,-1483,-1479,-1465,-1453,-1437,-1421,-1406,-1389,-1378,-1359,
+-1347,-1334,-1319,-1298,-1271,-1233,-1238,-1231,-1225,-1219,-1215,-1209,-1206,-1194,-1184,-1185,-1180,-1169,-1156,-1141,
+-1123,-1107,-1091,-1082,-1068,-1062,-1057,-1050,-1048,-1043,-1037,-1034,-1029,-1025,-1023,-1015,-1013,-1010,-1002,-995,
+-989,-986,-988,-988,-989,-981,-976,-973,-969,-964,-957,-952,-948,-934,-940,-939,-931,-932,-931,-923,
+-925,-930,-927,-939,-941,-942,-942,-943,-940,-942,-948,-951,-956,-963,-970,-973,-975,-972,-969,-972,
+-969,-963,-958,-947,-944,-941,-937,-939,-942,-938,-938,-934,-928,-922,-921,-914,-914,-906,-900,-895,
+-888,-876,-859,-846,-832,-823,-818,-806,-795,-781,-764,-760,-757,-750,-749,-731,-713,-704,-681,-661,
+-657,-654,-656,-655,-655,-654,-646,-630,-614,-598,-579,-563,-553,-540,-516,-500,-482,-458,-435,-429,
+-406,-387,-361,-335,-318,-297,-266,-225,-193,-175,-169,-151,-135,-124,-111,-89,-82,-71,-58,-43,
+-31,-29,-17,1,20,41,59,76,97,117,130,146,165,195,221,236,252,270,295,322,
+346,372,389,408,429,450,473,493,510,529,556,587,611,638,664,692,719,739,752,767,
+775,774,770,752,736,739,790,913,1051,1210,1374,1447,1451,1437,1439,1481,1564,1609,1687,1698,
+1702,1691,1719,1714,1742,1769,1690,1660,1650,1650,1658,1678,1717,1729,1701,1673,1630,1554,1472,1394,
+1332,1284,1247,1219,1203,1193,1181,1164,1163,1161,1154,1149,1138,1130,1122,1114,1108,1096,1092,1092,
+1088,1081,1080,1074,1078,1097,1116,1116,1096,1069,1043,1008,981,956,922,871,825,771,735,721,
+685,614,536,487,458,444,434,406,367,329,291,246,199,154,118,88,62,37,11,-11,
+-30,-49,-75,-97,-121,-139,-161,-180,-198,-214,-229,-245,-255,-261,-268,-275,-280,-294,-306,-310,
+-328,-333,-329,-334,-338,-338,-333,-326,-325,-322,-308,-286,-262,-230,-198,-177,-176,-162,-154,-154,
+-151,-160,-166,-170,-183,-178,-182,-173,-162,-147,-132,-115,-109,-110,-108,-107,-101,-101,-101,-94,
+-81,-65,-45,-26,-9,5,26,53,78,100,124,148,175,204,236,261,280,305,331,358,
+384,421,456,497,531,574,610,641,671,703,736,787,832,869,916,965,1005,1038,1066,1090,
+1120,1157,1190,1220,1252,1288,1325,1367,1417,1453,1499,1528,1557,1579,1602,1621,1641,1667,1691,1723,
+1756,1783,1818,1851,1888,1927,1956,1981,2008,2040,2063,2089,2114,2143,2169,2201,2223,2245,2274,2299,
+2326,2354,2382,2412,2440,2466,2482,2508,2547,2567,2578,2575,2612,2610,2604,2612,2622,2645,2668,2695,
+2723,2735,2758,2763,2776,2786,2803,2812,2828,2845,2859,2851,2854,2841,2806,2777,2750,2743,2718,2699,
+2687,2667,2663,2649,2634,2618,2604,2575,2559,2545,2526,2505,2485,2459,2440,2433,2425,2422,2409,2401,
+2389,2368,2346,2332,2322,2323,2328,2337,2339,2331,2330,2320,2311,2328,2322,2314,2314,2298,2276,2266,
+2270,2268,2262,2251,2249,2249,2256,2258,2255,2258,2270,2285,2298,2313,2335,2348,2361,2380,2394,2402,
+2399,2393,2401,2418,2422,2514,2626,2644,2637,2534,2509,2546,2585,2598,2583,2579,2584,2591,2593,2589,
+2601,2620,2649,2677,2697,2707,2742,2784,2824,2851,2822,2798,2855,2909,2940,2913,2905,2940,2972,2994,
+3008,2992,3006,3030,3042,3068,3108,3133,3160,3191,3209,3232,3225,3223,3239,3233,3244,3253,3244,3270,
+3264,3230,3277,3282,3254,3272,3305,3328,3327,3334,3288,3283,3324,3355,3332,3340,3383,3398,3398,3419,
+3398,3420,3454,3450,3471,3512,3585,3617,3632,3672,3773,3879,3880,3883,3949,3994,3996,4022,3969,3938,
+3929,4004,4258,4353,4322,4263,4311,4350,4310,4320,4413,4409,4390,4398,4387,4401,4373,4339,4359,4364,
+4366,4355,4331,4312,4299,4288,4278,4276,4286,4309,4334,4354,4369,4388,4409,4435,4433,4417,4408,4400,
+4394,4375,4360,4348,4332,4323,4323,4337,4352,4368,4374,4383,4399,4419,4447,4475,4494,4507,4519,4530,
+4533,4538,4534,4522,4505,4491,4480,4469,4466,4466,4467,4468,4478,4495,4506,4507,4503,4498,4490,4466,
+4463,4457,4447,4436,4435,4433,4424,4418,4409,4403,4391,4377,4357,4347,4329,4310,4291,4273,4256,4236,
+4215,4187,4151,4119,4104,4085,4060,4032,4001,3973,3948,3917,3888,3861,3837,3814,3797,3775,3748,3746,
+3722,3692,3710,3680,3661,3667,3660,3630,3590,3556,3549,3554,3576,3615,3673,3773,3839,3889,3929,3960,
+3974,3984,3992,3999,4014,4026,4027,4017,4009,4004,3984,3946,3909,3880,3853,3825,3796,3764,3728,3678,
+3606,3547,3502,3469,3434,3364,3298,3254,3227,3194,3171,3153,3138,3117,3092,3069,3044,3016,2979,2949,
+2924,2897,2873,2846,2819,2795,2770,2753,2709,2679,2659,2627,2601,2560,2526,2501,2472,2445,2407,2372,
+2349,2323,2282,2258,2217,2172,2133,2094,2056,2018,1979,1944,1909,1875,1841,1808,1773,1734,1699,1663,
+1626,1593,1556,1522,1487,1453,1413,1375,1341,1298,1262,1221,1178,1138,1099,1062,1021,980,938,895,
+859,823,786,749,711,675,636,594,558,520,471,435,401,368,340,308,274,237,199,167,
+127,80,41,5,-35,-75,-115,-149,-191,-235,-281,-349,-386,-399,-428,-464,-512,-556,-592,-629,
+-669,-705,-745,-789,-828,-855,-894,-927,-972,-1011,-1033,-1092,-1118,-1150,-1193,-1235,-1259,-1294,-1321,-1362,
+-1395,-1434,-1462,-1488,-1517,-1546,-1576,-1607,-1644,-1672,-1697,-1734,-1754,-1778,-1809,-1838,-1873,-1903,-1925,-1947,
+-1977,-1998,-2021,-2044,-2066,-2092,-2115,-2142,-2157,-2171,-2189,-2203,-2215,-2230,-2259,-2279,-2289,-2297,-2302,-2329,
+-2333,-2343,-2375,-2369,-2383,-2394,-2397,-2398,-2404,-2407,-2415,-2422,-2428,-2431,-2421,-2441,-2458,-2440,-2469,-2471,
+-2472,-2486,-2451,-2466,-2476,-2480,-2469,-2458,-2466,-2471,-2476,-2470,-2461,-2461,-2465,-2469,-2434,-2437,-2429,-2444,
+-2405,-2398,-2400,-2397,-2418,-2377,-2353,-2349,-2341,-2327,-2314,-2300,-2286,-2272,-2258,-2247,-2228,-2211,-2197,-2182,
+-2168,-2153,-2138,-2123,-2105,-2090,-2076,-2062,-2044,-2025,-2003,-1988,-1970,-1952,-1935,-1917,-1900,-1880,-1861,-1844,
+-1830,-1816,-1803,-1785,-1763,-1745,-1731,-1725,-1722,-1713,-1705,-1744,-1780,-1805,-1772,-1779,-1766,-1746,-1740,-1729,
+-1721,-1710,-1698,-1685,-1683,-1683,-1659,-1652,-1639,-1620,-1606,-1596,-1596,-1622,-1652,-1640,-1596,-1566,-1531,-1530,
+-1510,-1479,-1447,-1412,-1393,-1392,-1363,-1345,-1339,-1342,-1369,-1372,-1369,-1417,-1473,-1504,-1517,-1514,-1505,-1499,
+-1492,-1483,-1470,-1475,-1473,-1467,-1468,-1470,-1476,-1477,-1492,-1492,-1491,-1478,-1462,-1450,-1437,-1426,-1425,-1408,
+-1385,-1375,-1375,-1376,-1365,-1347,-1335,-1322,-1280,-1256,-1231,-1195,-1154,-1148,-1108,-1083,-1050,-1016,-991,-955,
+-924,-886,-879,-853,-843,-844,-850,-872,-922,-1005,-1135,-1203,-1068,-855,-725,-705,-708,-634,-500,-382,
+-339,-317,-329,-342,-347,-384,-414,-438,-483,-501,-504,-495,-501,-525,-560,-576,-576,-566,-553,-543,
+-540,-535,-531,-521,-517,-516,-512,-508,-504,-497,-495,-488,-493,-493,-500,-518,-546,-552,-550,-548,
+-542,-533,-522,-512,-511,-507,-488,-460,-441,-420,-411,-419,-435,-469,-519,-577,-645,-750,-906,-995,
+-1056,-1088,-1109,-1127,-1149,-1174,-1197,-1213,-1224,-1239,-1255,-1269,-1281,-1293,-1306,-1312,-1318,-1321,-1330,-1341,
+-1351,-1360,-1364,-1369,-1371,-1373,-1373,-1376,-1378,-1380,-1381,-1382,-1384,-1392,-1398,-1400,-1401,-1400,-1400,-1401,
+-1402,-1404,-1403,-1399,-1401,-1404,-1407,-1414,-1418,-1416,-1412,-1405,-1410,-1407,-1399,-1399,-1405,-1406,-1402,-1391,
+-1376,-1364,-1362,-1367,-1377,-1385,-1398,-1410,-1423,-1430,-1437,-1433,-1429,-1429,-1431,-1433,-1434,-1434,-1434,-1431,
+-1424,-1417,-1409,-1400,-1391,-1380,-1369,-1359,-1351,-1341,-1332,-1332,-1327,-1323,-1320,-1323,-1324,-1330,-1332,-1332,
+-1325,-1310,-1311,-1344,-1364,-1365,-1366,-1378,-1391,-1389,-1380,-1380,-1383,-1370,-1335,-1353,-1358,-1337,-1320,-1355,
+-1383,-1377,-1311,-1387,-1450,-1483,-1504,-1508,-1509,-1520,-1517,-1524,-1535,-1544,-1553,-1560,-1562,-1576,-1581,-1587,
+-1593,-1604,-1606,-1614,-1619,-1630,-1644,-1651,-1660,-1669,-1673,-1672,-1667,-1671,-1682,-1688,-1698,-1705,-1705,-1700,
+-1703,-1725,-1733,-1739,-1722,-1686,-1698,-1712,-1708,-1686,-1666,-1669,-1672,-1671,-1664,-1658,-1653,-1643,-1633,-1621,
+-1608,-1587,-1570,-1556,-1541,-1528,-1512,-1502,-1495,-1488,-1481,-1477,-1474,-1468,-1461,-1443,-1428,-1410,-1393,-1375,
+-1351,-1342,-1324,-1306,-1290,-1276,-1259,-1248,-1233,-1217,-1215,-1200,-1191,-1186,-1172,-1157,-1149,-1148,-1151,-1152,
+-1156,-1147,-1134,-1117,-1099,-1077,-1065,-1057,-1045,-1042,-1040,-1034,-1026,-1019,-1011,-1010,-1007,-1004,-998,-990,
+-983,-978,-972,-969,-969,-956,-964,-967,-965,-967,-961,-951,-949,-945,-942,-939,-934,-931,-930,-927,
+-920,-922,-926,-931,-940,-944,-946,-949,-947,-952,-953,-954,-955,-962,-969,-974,-977,-980,-979,-977,
+-974,-973,-974,-974,-967,-961,-958,-957,-957,-950,-944,-941,-937,-934,-931,-928,-928,-922,-918,-914,
+-910,-908,-896,-890,-882,-868,-856,-838,-829,-807,-797,-777,-769,-765,-756,-742,-735,-727,-704,-691,
+-678,-674,-668,-668,-669,-670,-668,-662,-650,-630,-610,-596,-578,-564,-549,-524,-494,-491,-491,-461,
+-430,-408,-394,-366,-351,-332,-301,-266,-236,-213,-206,-173,-94,-71,-130,-121,-110,-100,-94,-85,
+-70,-54,-45,-32,-8,11,31,61,79,101,110,123,153,170,188,212,231,252,271,293,
+321,338,360,387,403,417,432,462,476,496,518,541,562,588,611,638,661,686,706,721,
+730,731,730,720,703,697,715,818,986,1124,1324,1464,1520,1478,1416,1391,1409,1461,1514,1563,
+1588,1624,1669,1672,1689,1673,1658,1640,1630,1616,1620,1601,1637,1654,1661,1659,1626,1574,1506,1432,
+1355,1293,1243,1213,1199,1189,1180,1172,1162,1157,1146,1139,1130,1125,1121,1113,1111,1102,1094,1096,
+1095,1093,1090,1087,1077,1085,1097,1106,1099,1081,1063,1045,1024,1004,988,962,922,876,830,772,
+731,689,643,609,580,556,516,465,425,403,379,350,317,278,226,185,153,123,94,67,
+40,17,-6,-28,-53,-78,-99,-122,-139,-152,-165,-174,-181,-184,-192,-201,-208,-219,-236,-255,
+-267,-281,-284,-289,-290,-291,-290,-285,-278,-283,-277,-263,-240,-219,-193,-158,-143,-143,-137,-127,
+-115,-110,-112,-114,-121,-121,-116,-107,-88,-75,-59,-47,-37,-41,-43,-40,-37,-31,-31,-26,
+-21,-6,12,33,51,67,84,103,129,150,171,199,223,250,277,298,322,347,370,399,
+416,447,488,527,565,603,636,667,705,737,760,791,825,863,905,950,996,1024,1056,1080,
+1107,1136,1168,1197,1227,1256,1286,1324,1376,1414,1444,1489,1527,1550,1571,1592,1616,1638,1667,1699,
+1732,1767,1801,1838,1866,1895,1920,1949,1979,2008,2034,2058,2091,2122,2150,2181,2214,2240,2260,2282,
+2293,2328,2349,2372,2402,2423,2447,2464,2473,2490,2502,2513,2534,2555,2575,2597,2621,2643,2677,2702,
+2721,2737,2742,2771,2783,2787,2793,2803,2816,2819,2835,2846,2845,2825,2828,2812,2792,2784,2760,2732,
+2714,2706,2684,2676,2658,2634,2628,2606,2575,2559,2547,2527,2499,2475,2467,2465,2459,2438,2417,2409,
+2395,2389,2384,2378,2377,2372,2368,2368,2365,2352,2340,2342,2338,2328,2338,2316,2316,2314,2303,2295,
+2294,2293,2287,2275,2268,2268,2272,2279,2294,2302,2314,2328,2337,2355,2373,2384,2401,2408,2425,2440,
+2450,2463,2484,2516,2594,2684,2677,2691,2564,2477,2467,2521,2572,2565,2573,2573,2566,2570,2586,2595,
+2616,2631,2650,2669,2693,2706,2716,2748,2815,2847,2850,2834,2800,2816,2879,2904,2898,2923,2960,2957,
+2990,3000,2999,3004,3014,3028,3064,3103,3137,3174,3218,3234,3227,3230,3234,3242,3248,3259,3262,3268,
+3281,3256,3248,3256,3273,3278,3285,3304,3339,3379,3390,3349,3307,3318,3349,3355,3351,3381,3401,3407,
+3432,3434,3462,3506,3532,3528,3539,3572,3608,3641,3683,3754,3890,3916,3918,3947,3964,3975,3957,3919,
+3894,3982,4140,4339,4326,4258,4231,4291,4272,4258,4314,4359,4361,4350,4369,4351,4349,4329,4328,4331,
+4329,4337,4325,4312,4294,4285,4283,4280,4290,4298,4321,4349,4370,4392,4406,4413,4425,4459,4434,4412,
+4414,4415,4404,4400,4384,4361,4347,4342,4331,4350,4405,4426,4393,4396,4405,4434,4459,4473,4488,4500,
+4510,4516,4515,4514,4506,4493,4483,4474,4472,4474,4475,4475,4488,4497,4504,4510,4507,4501,4500,4492,
+4482,4466,4456,4442,4442,4441,4433,4424,4416,4407,4398,4385,4367,4353,4341,4324,4307,4292,4278,4261,
+4240,4214,4182,4146,4122,4104,4081,4057,4032,4008,3981,3953,3925,3899,3874,3854,3835,3813,3794,3783,
+3776,3787,3774,3738,3704,3674,3667,3661,3649,3641,3634,3627,3623,3652,3711,3739,3803,3870,3885,3901,
+3929,3967,4000,4028,4047,4057,4059,4056,4047,4038,4022,4005,3984,3953,3916,3885,3852,3810,3761,3678,
+3599,3531,3483,3444,3413,3384,3353,3327,3300,3277,3253,3232,3207,3182,3161,3132,3109,3081,3051,3017,
+2986,2954,2927,2903,2880,2851,2821,2796,2768,2747,2720,2684,2656,2619,2585,2557,2523,2482,2463,2436,
+2407,2373,2331,2298,2262,2224,2187,2154,2112,2075,2039,2003,1967,1930,1894,1863,1832,1797,1758,1720,
+1684,1652,1615,1578,1545,1511,1474,1435,1398,1357,1322,1278,1242,1202,1160,1124,1083,1045,1004,963,
+922,885,849,816,781,745,703,658,613,584,540,501,463,430,403,368,335,305,271,229,
+191,154,119,83,38,-2,-48,-87,-128,-172,-210,-259,-310,-338,-364,-397,-436,-476,-517,-558,
+-595,-636,-678,-717,-742,-780,-820,-859,-891,-919,-975,-1014,-1041,-1079,-1118,-1160,-1193,-1223,-1241,-1286,
+-1311,-1349,-1397,-1419,-1441,-1473,-1507,-1537,-1565,-1599,-1624,-1658,-1701,-1714,-1741,-1767,-1808,-1839,-1860,-1884,
+-1903,-1932,-1958,-1977,-1999,-2024,-2049,-2075,-2083,-2108,-2137,-2150,-2166,-2176,-2196,-2230,-2236,-2251,-2259,-2255,
+-2288,-2288,-2325,-2340,-2337,-2348,-2352,-2365,-2373,-2378,-2385,-2387,-2392,-2396,-2400,-2399,-2405,-2408,-2427,-2447,
+-2434,-2442,-2444,-2433,-2439,-2454,-2451,-2442,-2452,-2448,-2439,-2456,-2442,-2436,-2424,-2422,-2443,-2429,-2414,-2420,
+-2426,-2385,-2373,-2383,-2390,-2399,-2353,-2341,-2339,-2331,-2318,-2307,-2294,-2281,-2262,-2245,-2233,-2215,-2199,-2185,
+-2169,-2154,-2139,-2125,-2111,-2097,-2080,-2062,-2048,-2031,-2014,-1998,-1981,-1963,-1949,-1931,-1913,-1898,-1877,-1864,
+-1845,-1831,-1815,-1797,-1780,-1760,-1746,-1737,-1731,-1697,-1716,-1706,-1741,-1783,-1804,-1785,-1779,-1770,-1758,-1749,
+-1735,-1726,-1715,-1697,-1686,-1678,-1674,-1665,-1650,-1631,-1624,-1615,-1605,-1605,-1629,-1649,-1651,-1648,-1600,-1557,
+-1570,-1556,-1530,-1520,-1512,-1501,-1477,-1446,-1428,-1408,-1411,-1401,-1410,-1378,-1377,-1412,-1456,-1499,-1513,-1511,
+-1519,-1516,-1510,-1513,-1510,-1506,-1510,-1510,-1509,-1508,-1512,-1516,-1517,-1518,-1506,-1484,-1472,-1487,-1495,-1470,
+-1452,-1431,-1428,-1426,-1409,-1380,-1358,-1329,-1327,-1300,-1296,-1306,-1274,-1237,-1205,-1163,-1109,-1062,-1035,-1029,
+-994,-968,-946,-886,-807,-871,-906,-900,-922,-963,-1098,-1245,-1265,-1094,-882,-742,-734,-743,-689,-548,
+-438,-397,-388,-400,-422,-424,-446,-496,-530,-548,-553,-556,-561,-578,-602,-625,-641,-638,-617,-603,
+-594,-593,-590,-583,-573,-556,-552,-564,-560,-549,-546,-548,-544,-543,-550,-557,-582,-608,-625,-630,
+-618,-603,-589,-583,-586,-593,-598,-584,-563,-540,-517,-502,-509,-537,-565,-601,-648,-729,-852,-994,
+-1076,-1126,-1163,-1182,-1205,-1230,-1258,-1276,-1295,-1309,-1322,-1338,-1350,-1349,-1367,-1380,-1390,-1393,-1398,-1407,
+-1418,-1428,-1439,-1447,-1452,-1452,-1451,-1454,-1457,-1451,-1457,-1454,-1454,-1453,-1455,-1459,-1462,-1464,-1464,-1463,
+-1459,-1455,-1456,-1458,-1460,-1458,-1456,-1459,-1460,-1459,-1465,-1463,-1462,-1459,-1454,-1449,-1435,-1425,-1436,-1447,
+-1443,-1438,-1426,-1420,-1419,-1417,-1418,-1424,-1430,-1440,-1457,-1469,-1476,-1486,-1493,-1497,-1492,-1492,-1495,-1492,
+-1493,-1487,-1480,-1473,-1462,-1452,-1439,-1429,-1417,-1407,-1397,-1388,-1382,-1376,-1375,-1371,-1367,-1368,-1371,-1363,
+-1363,-1363,-1364,-1350,-1331,-1344,-1389,-1405,-1402,-1407,-1420,-1431,-1437,-1438,-1435,-1429,-1420,-1395,-1337,-1263,
+-1336,-1387,-1414,-1424,-1450,-1487,-1505,-1507,-1498,-1514,-1527,-1534,-1544,-1548,-1557,-1567,-1577,-1570,-1582,-1613,
+-1603,-1616,-1624,-1630,-1633,-1638,-1646,-1652,-1655,-1664,-1676,-1684,-1676,-1673,-1679,-1684,-1687,-1695,-1694,-1692,
+-1708,-1718,-1713,-1721,-1722,-1732,-1716,-1700,-1727,-1729,-1692,-1686,-1688,-1680,-1682,-1679,-1678,-1672,-1664,-1649,
+-1645,-1636,-1621,-1605,-1589,-1566,-1544,-1537,-1521,-1507,-1496,-1485,-1480,-1472,-1465,-1456,-1445,-1430,-1411,-1398,
+-1389,-1369,-1347,-1327,-1312,-1289,-1267,-1257,-1240,-1230,-1224,-1209,-1199,-1188,-1183,-1172,-1164,-1153,-1140,-1141,
+-1129,-1116,-1106,-1107,-1112,-1118,-1120,-1113,-1098,-1083,-1068,-1060,-1054,-1041,-1028,-1019,-1008,-1003,-996,-989,
+-982,-971,-964,-960,-957,-959,-958,-955,-958,-955,-953,-948,-946,-942,-941,-941,-936,-933,-931,-931,
+-925,-922,-930,-936,-938,-940,-944,-950,-955,-961,-962,-963,-962,-963,-969,-974,-975,-978,-983,-985,
+-988,-986,-986,-993,-994,-991,-984,-982,-983,-976,-975,-965,-957,-954,-951,-950,-947,-947,-938,-936,
+-929,-927,-922,-913,-906,-901,-892,-881,-868,-848,-827,-813,-795,-780,-771,-759,-742,-732,-721,-710,
+-691,-686,-680,-666,-672,-672,-673,-669,-661,-652,-636,-619,-602,-581,-574,-559,-540,-523,-505,-479,
+-460,-446,-425,-408,-384,-363,-345,-322,-291,-262,-234,-232,-204,-182,-164,-158,-135,-115,-107,-103,
+-103,-97,-86,-61,-41,-22,0,14,42,73,89,100,114,143,161,191,209,224,242,259,
+280,312,330,345,363,383,404,415,442,465,491,518,538,561,585,606,624,646,666,682,
+695,702,702,692,679,667,664,715,848,1007,1184,1395,1546,1585,1528,1413,1359,1363,1449,1522,
+1516,1539,1600,1635,1667,1678,1686,1616,1594,1586,1581,1573,1581,1583,1578,1589,1579,1540,1499,1441,
+1384,1327,1278,1237,1214,1207,1204,1186,1163,1139,1124,1120,1111,1105,1106,1107,1104,1105,1104,1097,
+1106,1110,1111,1105,1087,1077,1085,1094,1093,1096,1086,1074,1058,1041,1022,1009,993,963,921,879,
+833,786,744,710,690,661,631,604,577,536,484,426,382,351,321,283,238,196,163,139,
+113,84,60,35,10,-10,-25,-45,-68,-88,-98,-105,-111,-116,-116,-131,-147,-160,-174,-185,
+-202,-217,-226,-229,-235,-231,-233,-231,-228,-229,-234,-225,-208,-193,-172,-146,-122,-115,-107,-100,
+-95,-81,-72,-65,-61,-54,-40,-32,-18,-8,3,18,22,31,28,27,25,28,34,36,
+40,50,69,88,106,122,139,160,175,200,221,242,260,281,306,328,344,367,397,429,
+463,492,526,559,589,619,651,676,699,731,749,766,794,827,865,903,938,990,1015,1047,
+1074,1108,1139,1175,1209,1243,1275,1304,1334,1377,1407,1437,1481,1519,1541,1565,1589,1617,1641,1675,
+1709,1741,1773,1799,1834,1868,1901,1921,1948,1977,2004,2029,2057,2088,2117,2134,2157,2179,2193,2205,
+2215,2225,2249,2278,2316,2355,2383,2416,2429,2448,2464,2491,2509,2533,2557,2578,2601,2621,2645,2678,
+2696,2718,2737,2747,2757,2771,2787,2803,2804,2813,2814,2831,2864,2872,2805,2824,2822,2805,2795,2759,
+2734,2716,2698,2690,2673,2659,2639,2616,2591,2570,2562,2542,2524,2497,2475,2468,2473,2480,2477,2461,
+2449,2442,2426,2416,2407,2401,2397,2388,2367,2360,2363,2358,2351,2346,2338,2357,2358,2336,2313,2312,
+2310,2305,2297,2299,2286,2288,2294,2301,2312,2323,2337,2342,2359,2372,2391,2426,2464,2533,2503,2490,
+2529,2555,2543,2530,2550,2600,2742,2728,2582,2472,2404,2421,2507,2612,2602,2588,2596,2588,2578,2598,
+2626,2675,2698,2704,2718,2747,2753,2753,2788,2849,2871,2875,2844,2821,2813,2857,2884,2909,2936,2953,
+2951,3004,3003,2997,2995,3020,3053,3090,3121,3141,3166,3203,3236,3236,3238,3259,3272,3270,3259,3260,
+3275,3292,3281,3273,3293,3298,3305,3310,3311,3325,3366,3416,3436,3378,3349,3369,3380,3374,3413,3426,
+3422,3446,3448,3489,3544,3596,3609,3604,3619,3621,3647,3706,3770,3892,3927,3919,3924,3912,3920,3918,
+3891,3926,4077,4257,4306,4262,4216,4249,4266,4224,4233,4280,4318,4324,4328,4324,4314,4298,4300,4307,
+4302,4299,4309,4312,4312,4301,4296,4282,4288,4299,4311,4336,4373,4375,4385,4399,4408,4419,4448,4449,
+4430,4433,4439,4436,4428,4410,4388,4372,4362,4356,4373,4423,4428,4376,4382,4412,4434,4452,4467,4480,
+4488,4498,4506,4510,4510,4502,4492,4485,4478,4476,4479,4491,4493,4495,4498,4511,4516,4513,4509,4500,
+4492,4487,4476,4461,4456,4449,4441,4435,4426,4417,4407,4395,4377,4356,4346,4334,4318,4306,4293,4279,
+4260,4238,4208,4174,4141,4120,4096,4071,4053,4034,4013,3985,3958,3932,3907,3885,3866,3846,3824,3809,
+3797,3790,3799,3805,3819,3796,3725,3689,3668,3670,3679,3688,3694,3700,3707,3729,3766,3807,3854,3887,
+3893,3907,3963,4019,4054,4077,4082,4084,4080,4074,4065,4049,4034,4015,3995,3964,3929,3891,3826,3726,
+3633,3580,3551,3532,3508,3482,3451,3417,3384,3359,3332,3303,3278,3251,3222,3194,3169,3151,3129,3103,
+3066,3033,2997,2967,2934,2907,2881,2857,2833,2816,2798,2768,2722,2689,2651,2613,2588,2545,2511,2488,
+2455,2420,2391,2356,2318,2284,2242,2205,2171,2134,2095,2061,2024,1990,1954,1918,1882,1856,1814,1781,
+1744,1707,1671,1633,1601,1566,1531,1493,1452,1413,1372,1334,1300,1265,1226,1186,1146,1107,1070,1027,
+988,949,919,885,849,814,774,730,679,648,604,572,535,501,466,432,398,362,329,293,
+259,219,176,136,108,64,22,-16,-59,-104,-148,-191,-237,-274,-297,-333,-370,-409,-446,-485,
+-526,-570,-609,-643,-681,-735,-768,-789,-830,-864,-900,-951,-971,-991,-1036,-1079,-1108,-1148,-1180,-1214,
+-1245,-1282,-1341,-1353,-1370,-1395,-1424,-1464,-1495,-1525,-1569,-1587,-1620,-1648,-1670,-1703,-1741,-1774,-1793,-1819,
+-1840,-1861,-1894,-1918,-1935,-1964,-1986,-2009,-2035,-2050,-2081,-2097,-2113,-2126,-2139,-2173,-2196,-2207,-2219,-2230,
+-2225,-2261,-2258,-2295,-2306,-2316,-2323,-2335,-2342,-2353,-2356,-2358,-2358,-2361,-2368,-2370,-2373,-2368,-2378,-2407,
+-2416,-2416,-2430,-2415,-2422,-2431,-2437,-2425,-2426,-2437,-2430,-2423,-2430,-2427,-2421,-2416,-2419,-2430,-2409,-2401,
+-2413,-2403,-2377,-2371,-2370,-2382,-2369,-2333,-2333,-2329,-2317,-2303,-2292,-2280,-2265,-2249,-2231,-2213,-2200,-2187,
+-2169,-2156,-2142,-2130,-2116,-2103,-2088,-2070,-2054,-2038,-2024,-2008,-1994,-1979,-1961,-1946,-1928,-1911,-1894,-1875,
+-1857,-1839,-1824,-1810,-1796,-1780,-1765,-1753,-1745,-1742,-1725,-1724,-1711,-1740,-1781,-1811,-1811,-1790,-1773,-1768,
+-1752,-1740,-1730,-1711,-1694,-1680,-1673,-1673,-1666,-1658,-1646,-1630,-1621,-1611,-1605,-1630,-1659,-1670,-1686,-1650,
+-1603,-1589,-1621,-1630,-1606,-1580,-1563,-1561,-1532,-1491,-1479,-1485,-1460,-1433,-1415,-1381,-1367,-1387,-1448,-1509,
+-1531,-1546,-1549,-1555,-1559,-1553,-1553,-1553,-1556,-1556,-1563,-1558,-1551,-1544,-1534,-1524,-1510,-1516,-1537,-1519,
+-1506,-1501,-1493,-1483,-1469,-1442,-1407,-1397,-1380,-1368,-1325,-1301,-1303,-1252,-1218,-1199,-1168,-1129,-1098,-1081,
+-1063,-1052,-1021,-984,-924,-868,-923,-909,-930,-968,-1035,-1183,-1287,-1220,-992,-795,-760,-774,-777,-718,
+-591,-501,-469,-463,-486,-505,-534,-580,-603,-615,-627,-632,-635,-639,-650,-671,-691,-693,-681,-673,
+-659,-654,-649,-640,-640,-639,-629,-616,-608,-600,-590,-599,-597,-601,-592,-600,-614,-631,-655,-679,
+-696,-681,-657,-641,-643,-662,-689,-695,-687,-674,-658,-642,-635,-635,-656,-683,-711,-757,-819,-916,
+-1043,-1145,-1199,-1233,-1260,-1283,-1309,-1334,-1358,-1379,-1397,-1410,-1424,-1437,-1445,-1456,-1463,-1469,-1473,-1477,
+-1484,-1492,-1501,-1511,-1520,-1526,-1526,-1525,-1526,-1527,-1529,-1525,-1522,-1516,-1513,-1513,-1516,-1520,-1520,-1523,
+-1524,-1524,-1522,-1519,-1516,-1511,-1511,-1512,-1518,-1518,-1515,-1512,-1511,-1511,-1506,-1498,-1491,-1486,-1478,-1469,
+-1465,-1487,-1499,-1497,-1490,-1480,-1471,-1472,-1479,-1487,-1498,-1513,-1530,-1544,-1550,-1553,-1551,-1549,-1549,-1548,
+-1545,-1543,-1541,-1537,-1533,-1525,-1517,-1500,-1486,-1474,-1464,-1455,-1447,-1437,-1433,-1428,-1425,-1419,-1415,-1415,
+-1410,-1406,-1402,-1394,-1395,-1382,-1363,-1379,-1396,-1423,-1437,-1448,-1459,-1471,-1479,-1483,-1480,-1476,-1465,-1449,
+-1435,-1442,-1459,-1474,-1486,-1506,-1525,-1519,-1515,-1519,-1490,-1524,-1555,-1571,-1569,-1574,-1577,-1584,-1594,-1616,
+-1627,-1638,-1645,-1656,-1663,-1664,-1668,-1671,-1670,-1669,-1661,-1667,-1677,-1688,-1687,-1692,-1696,-1701,-1700,-1690,
+-1687,-1686,-1691,-1694,-1700,-1712,-1715,-1718,-1705,-1723,-1748,-1732,-1713,-1708,-1702,-1703,-1700,-1692,-1688,-1686,
+-1677,-1672,-1664,-1652,-1631,-1607,-1599,-1585,-1567,-1550,-1538,-1524,-1509,-1493,-1480,-1472,-1466,-1454,-1442,-1428,
+-1405,-1391,-1375,-1360,-1340,-1319,-1298,-1286,-1268,-1243,-1226,-1211,-1198,-1186,-1181,-1172,-1162,-1154,-1145,-1142,
+-1135,-1130,-1129,-1118,-1110,-1102,-1101,-1100,-1094,-1092,-1094,-1092,-1077,-1074,-1074,-1068,-1051,-1037,-1026,-1015,
+-1000,-992,-979,-970,-962,-958,-957,-956,-954,-956,-956,-954,-952,-948,-943,-947,-942,-941,-935,-935,
+-934,-924,-924,-934,-937,-939,-939,-945,-954,-958,-962,-968,-969,-969,-968,-969,-976,-980,-983,-986,
+-991,-994,-998,-1002,-988,-997,-1004,-1005,-1004,-1003,-996,-993,-989,-979,-973,-966,-961,-962,-959,-960,
+-956,-953,-949,-942,-939,-929,-913,-901,-897,-891,-870,-854,-842,-819,-803,-790,-772,-748,-735,-711,
+-706,-692,-670,-684,-673,-667,-665,-665,-656,-654,-649,-635,-624,-612,-592,-582,-572,-556,-546,-532,
+-510,-491,-472,-454,-434,-412,-384,-364,-337,-306,-282,-263,-254,-215,-205,-202,-176,-152,-130,-138,
+-121,-112,-105,-98,-81,-59,-39,-20,0,21,52,80,91,110,134,153,175,198,212,230,
+249,266,286,309,330,352,370,390,413,442,462,486,511,535,557,577,598,619,636,660,
+668,675,677,670,654,641,628,634,722,879,1003,1177,1385,1547,1596,1531,1439,1387,1365,1413,
+1555,1646,1652,1597,1588,1647,1718,1696,1695,1659,1604,1564,1530,1503,1539,1526,1499,1470,1443,1412,
+1375,1334,1290,1255,1232,1214,1216,1208,1184,1152,1125,1105,1096,1093,1089,1088,1088,1086,1100,1114,
+1118,1119,1115,1117,1106,1093,1083,1087,1086,1090,1089,1088,1080,1062,1054,1040,1028,1013,991,967,
+923,888,856,830,796,769,742,712,684,654,627,584,539,496,439,373,310,257,214,182,
+153,126,100,77,61,43,27,13,-1,-11,-22,-39,-52,-53,-61,-69,-83,-96,-99,-115,
+-128,-142,-148,-161,-163,-171,-168,-167,-171,-171,-169,-171,-163,-150,-134,-120,-97,-86,-74,-60,
+-49,-39,-25,-13,-7,6,26,42,48,52,63,76,82,81,83,83,79,81,85,92,
+97,104,117,137,157,173,183,199,220,238,256,269,279,296,318,338,355,372,393,419,
+449,485,520,552,584,602,620,635,660,686,704,722,739,767,803,846,874,902,935,973,
+1007,1038,1074,1096,1133,1177,1217,1249,1278,1301,1327,1352,1396,1445,1492,1520,1554,1587,1614,1631,
+1662,1693,1720,1747,1776,1803,1832,1854,1876,1905,1929,1953,1983,2020,2068,2091,2089,2098,2124,2153,
+2179,2214,2246,2278,2312,2342,2364,2383,2404,2423,2447,2466,2485,2506,2529,2553,2569,2592,2621,2638,
+2659,2684,2701,2718,2736,2755,2751,2763,2771,2779,2789,2798,2822,2820,2809,2823,2844,2823,2792,2782,
+2759,2744,2727,2713,2700,2676,2648,2644,2623,2582,2558,2548,2549,2547,2549,2537,2516,2516,2496,2496,
+2471,2451,2446,2424,2418,2421,2410,2388,2407,2405,2390,2371,2354,2345,2346,2357,2351,2352,2344,2344,
+2339,2330,2318,2313,2313,2320,2326,2335,2340,2350,2356,2367,2377,2391,2407,2420,2436,2454,2469,2481,
+2485,2483,2472,2434,2413,2426,2486,2507,2507,2441,2397,2364,2374,2422,2498,2549,2580,2592,2580,2585,
+2624,2680,2715,2712,2705,2736,2782,2822,2812,2813,2858,2869,2867,2854,2860,2837,2845,2900,2944,2951,
+2944,2945,2975,2997,3022,3016,3043,3071,3085,3128,3146,3167,3203,3231,3236,3254,3266,3260,3271,3293,
+3278,3294,3309,3310,3297,3311,3328,3347,3363,3342,3346,3356,3394,3463,3445,3395,3395,3409,3411,3429,
+3469,3478,3472,3478,3500,3573,3643,3662,3650,3658,3661,3688,3751,3830,3894,3903,3940,3919,3888,3900,
+3920,3937,4040,4168,4286,4263,4195,4208,4237,4183,4186,4219,4257,4268,4273,4273,4263,4286,4283,4280,
+4288,4283,4292,4312,4323,4325,4292,4268,4258,4268,4288,4317,4339,4357,4378,4410,4430,4432,4421,4441,
+4464,4447,4450,4456,4451,4452,4451,4422,4403,4389,4382,4364,4399,4444,4399,4398,4410,4426,4444,4460,
+4476,4491,4501,4511,4511,4511,4505,4495,4489,4483,4490,4505,4503,4501,4501,4505,4513,4513,4512,4506,
+4499,4490,4477,4473,4468,4461,4453,4442,4433,4428,4417,4406,4386,4363,4352,4334,4321,4307,4296,4284,
+4270,4250,4226,4193,4160,4143,4118,4090,4073,4055,4033,4009,3982,3959,3936,3913,3892,3867,3843,3826,
+3807,3799,3799,3810,3825,3834,3831,3799,3749,3706,3699,3709,3722,3730,3746,3764,3783,3802,3819,3833,
+3837,3836,3855,3892,3992,4054,4084,4093,4098,4101,4101,4103,4101,4056,4022,4003,3983,3950,3904,3835,
+3729,3651,3620,3568,3532,3521,3500,3480,3456,3429,3400,3370,3340,3309,3279,3250,3227,3207,3185,3156,
+3127,3094,3068,3037,3005,2974,2946,2917,2892,2869,2849,2813,2783,2751,2715,2677,2645,2618,2574,2532,
+2510,2474,2444,2410,2373,2333,2297,2263,2226,2191,2152,2119,2085,2045,2013,1976,1938,1903,1869,1836,
+1800,1765,1730,1694,1656,1618,1584,1547,1506,1469,1431,1391,1359,1325,1286,1248,1207,1166,1125,1090,
+1049,1011,978,946,910,877,842,800,746,721,675,639,598,562,530,497,459,420,384,351,
+316,278,238,201,162,124,86,49,7,-38,-83,-126,-181,-214,-242,-272,-303,-341,-382,-423,
+-466,-511,-545,-581,-616,-651,-687,-721,-756,-795,-832,-865,-904,-922,-961,-993,-1051,-1087,-1098,-1136,
+-1174,-1206,-1271,-1296,-1306,-1334,-1364,-1391,-1424,-1464,-1500,-1503,-1547,-1586,-1611,-1641,-1668,-1706,-1739,-1756,
+-1781,-1807,-1826,-1860,-1886,-1903,-1923,-1948,-1971,-1998,-2022,-2045,-2067,-2074,-2089,-2107,-2150,-2157,-2172,-2186,
+-2190,-2197,-2222,-2236,-2260,-2262,-2279,-2294,-2308,-2312,-2321,-2322,-2327,-2330,-2332,-2342,-2343,-2344,-2343,-2384,
+-2401,-2407,-2393,-2412,-2399,-2405,-2405,-2401,-2420,-2419,-2415,-2422,-2448,-2423,-2418,-2384,-2398,-2397,-2410,-2403,
+-2400,-2417,-2401,-2401,-2392,-2374,-2382,-2342,-2323,-2322,-2316,-2305,-2292,-2281,-2267,-2253,-2239,-2224,-2208,-2193,
+-2179,-2163,-2149,-2133,-2122,-2108,-2092,-2076,-2062,-2046,-2033,-2019,-2007,-1993,-1978,-1963,-1946,-1928,-1909,-1892,
+-1877,-1861,-1844,-1827,-1814,-1799,-1783,-1771,-1759,-1735,-1739,-1738,-1732,-1720,-1739,-1772,-1812,-1816,-1786,-1773,
+-1765,-1756,-1743,-1722,-1708,-1701,-1686,-1675,-1663,-1659,-1662,-1660,-1641,-1631,-1623,-1618,-1650,-1685,-1687,-1699,
+-1698,-1657,-1672,-1686,-1686,-1655,-1627,-1621,-1601,-1577,-1569,-1564,-1536,-1461,-1439,-1427,-1396,-1387,-1376,-1440,
+-1528,-1566,-1575,-1580,-1583,-1585,-1580,-1580,-1596,-1600,-1590,-1580,-1567,-1563,-1564,-1559,-1548,-1560,-1559,-1528,
+-1509,-1524,-1540,-1536,-1525,-1492,-1460,-1439,-1433,-1425,-1407,-1373,-1323,-1300,-1269,-1248,-1217,-1184,-1158,-1140,
+-1117,-1105,-1081,-1053,-1033,-1005,-969,-958,-969,-975,-1026,-1115,-1218,-1241,-1051,-768,-721,-774,-818,-829,
+-787,-710,-591,-550,-553,-561,-601,-647,-669,-682,-691,-703,-713,-716,-719,-731,-742,-749,-738,-720,
+-708,-699,-692,-678,-674,-670,-675,-678,-668,-654,-641,-641,-648,-649,-649,-647,-644,-655,-685,-720,
+-757,-773,-768,-767,-772,-786,-798,-810,-806,-795,-785,-774,-760,-751,-765,-780,-805,-836,-873,-934,
+-1019,-1118,-1207,-1265,-1299,-1326,-1354,-1383,-1413,-1441,-1465,-1480,-1496,-1511,-1526,-1534,-1543,-1558,-1557,-1560,
+-1559,-1560,-1569,-1576,-1584,-1586,-1589,-1594,-1596,-1596,-1594,-1587,-1583,-1583,-1576,-1572,-1573,-1573,-1575,-1576,
+-1581,-1584,-1583,-1581,-1577,-1569,-1564,-1561,-1558,-1561,-1565,-1566,-1568,-1564,-1560,-1549,-1542,-1541,-1534,-1528,
+-1522,-1514,-1513,-1532,-1555,-1553,-1554,-1546,-1534,-1534,-1538,-1543,-1552,-1564,-1580,-1590,-1598,-1602,-1599,-1595,
+-1594,-1595,-1594,-1590,-1592,-1592,-1588,-1580,-1568,-1553,-1544,-1530,-1520,-1509,-1499,-1488,-1484,-1475,-1471,-1461,
+-1457,-1452,-1447,-1443,-1436,-1411,-1416,-1424,-1408,-1406,-1409,-1417,-1434,-1473,-1501,-1504,-1519,-1523,-1527,-1526,
+-1523,-1519,-1518,-1526,-1531,-1530,-1522,-1514,-1460,-1486,-1540,-1559,-1580,-1592,-1597,-1598,-1594,-1599,-1616,-1619,
+-1623,-1636,-1655,-1662,-1670,-1681,-1691,-1696,-1693,-1697,-1692,-1686,-1681,-1671,-1675,-1697,-1704,-1702,-1698,-1694,
+-1694,-1689,-1692,-1702,-1705,-1711,-1712,-1727,-1744,-1727,-1711,-1738,-1740,-1715,-1710,-1711,-1708,-1715,-1713,-1711,
+-1696,-1690,-1687,-1682,-1674,-1662,-1650,-1636,-1624,-1605,-1586,-1571,-1552,-1536,-1520,-1507,-1496,-1485,-1467,-1447,
+-1433,-1419,-1405,-1393,-1368,-1352,-1327,-1314,-1299,-1279,-1256,-1238,-1219,-1203,-1190,-1180,-1168,-1159,-1148,-1136,
+-1127,-1121,-1119,-1116,-1115,-1104,-1103,-1097,-1088,-1083,-1069,-1035,-1058,-1050,-1048,-1041,-1037,-1039,-1045,-1042,
+-1038,-1035,-1022,-1010,-1001,-987,-979,-972,-964,-963,-960,-956,-946,-949,-949,-943,-942,-928,-930,-933,
+-932,-930,-922,-925,-937,-943,-942,-946,-948,-954,-956,-962,-966,-970,-973,-976,-979,-979,-983,-985,
+-990,-992,-989,-997,-1001,-1004,-1010,-1013,-1014,-1018,-1015,-1012,-1013,-1006,-996,-990,-979,-979,-967,-963,
+-958,-952,-947,-946,-943,-940,-934,-930,-922,-911,-900,-887,-866,-848,-836,-815,-799,-776,-753,-738,
+-725,-710,-699,-689,-680,-666,-659,-656,-656,-657,-655,-648,-640,-634,-622,-610,-600,-591,-579,-565,
+-554,-535,-514,-493,-475,-455,-430,-408,-383,-359,-326,-295,-286,-285,-240,-225,-209,-184,-166,-179,
+-157,-136,-120,-107,-98,-85,-74,-59,-43,-14,12,36,67,80,102,122,137,154,170,190,
+209,235,256,273,292,317,341,362,383,409,421,455,480,506,529,553,571,589,609,626,
+639,644,647,641,626,603,581,577,600,710,842,977,1132,1343,1499,1550,1499,1439,1406,1391,
+1465,1621,1718,1671,1587,1579,1607,1711,1738,1675,1625,1556,1528,1482,1450,1440,1440,1410,1391,1372,
+1357,1328,1298,1274,1251,1236,1217,1209,1189,1162,1132,1102,1084,1073,1073,1068,1066,1058,1063,1082,
+1099,1110,1123,1123,1114,1117,1111,1104,1100,1094,1100,1098,1094,1089,1087,1073,1056,1040,1038,1022,
+1013,977,946,928,916,885,864,845,816,780,746,712,674,630,585,537,490,436,376,281,
+192,123,88,70,69,45,21,4,0,-11,-22,-27,-32,-35,-31,-39,-40,-48,-52,-60,
+-68,-76,-81,-86,-95,-100,-113,-114,-114,-108,-107,-108,-104,-94,-75,-64,-50,-42,-24,-8,
+18,26,42,59,64,80,100,116,129,136,136,142,143,133,130,126,126,127,130,132,
+139,147,156,169,188,214,236,251,266,284,293,305,317,336,356,379,405,429,443,471,
+483,498,538,579,610,641,664,689,703,716,720,731,733,723,714,751,801,821,884,951,
+993,1062,1111,1128,1138,1159,1191,1224,1253,1285,1294,1315,1335,1363,1395,1428,1462,1497,1531,1564,
+1591,1630,1668,1705,1729,1783,1831,1850,1863,1892,1925,1943,1960,1971,1993,2018,2047,2076,2107,2139,
+2173,2209,2233,2260,2282,2311,2336,2358,2375,2395,2416,2434,2452,2470,2488,2508,2528,2546,2560,2592,
+2608,2642,2662,2677,2689,2698,2707,2723,2740,2754,2763,2755,2778,2814,2841,2827,2801,2838,2815,2797,
+2787,2780,2770,2728,2711,2698,2659,2641,2638,2652,2616,2589,2585,2572,2559,2562,2562,2548,2517,2500,
+2496,2485,2485,2480,2475,2476,2449,2431,2417,2408,2408,2408,2402,2399,2375,2357,2351,2381,2380,2376,
+2365,2352,2346,2338,2334,2340,2354,2357,2364,2371,2378,2391,2403,2413,2422,2458,2458,2449,2477,2509,
+2501,2463,2443,2430,2422,2437,2488,2619,2637,2645,2499,2390,2356,2359,2403,2464,2519,2564,2583,2578,
+2598,2624,2649,2673,2673,2645,2628,2637,2692,2757,2791,2807,2812,2842,2862,2869,2865,2879,2955,2959,
+2937,2932,2939,2970,3023,3039,3032,3067,3101,3114,3129,3163,3192,3230,3243,3254,3270,3271,3275,3281,
+3285,3297,3314,3312,3328,3328,3337,3341,3361,3377,3378,3376,3380,3411,3464,3473,3429,3408,3431,3456,
+3464,3492,3509,3527,3508,3525,3592,3647,3671,3663,3667,3701,3766,3813,3860,3884,3918,3908,3861,3862,
+3882,3949,3996,4094,4217,4248,4192,4143,4173,4168,4155,4181,4208,4209,4213,4226,4244,4251,4246,4259,
+4263,4265,4270,4301,4326,4325,4304,4268,4238,4229,4252,4291,4325,4337,4380,4385,4412,4443,4443,4443,
+4450,4474,4471,4454,4462,4454,4447,4451,4462,4445,4412,4401,4389,4348,4361,4383,4390,4394,4418,4443,
+4463,4483,4499,4510,4516,4518,4519,4515,4509,4504,4509,4510,4516,4512,4508,4509,4506,4506,4508,4506,
+4504,4495,4482,4479,4475,4468,4461,4455,4444,4433,4423,4410,4391,4370,4357,4337,4320,4306,4294,4280,
+4270,4256,4238,4208,4170,4149,4124,4099,4085,4072,4053,4031,4007,3980,3954,3931,3904,3880,3853,3828,
+3804,3795,3799,3806,3814,3814,3813,3828,3852,3835,3795,3740,3727,3736,3746,3759,3771,3781,3785,3802,
+3813,3810,3804,3807,3830,3899,4027,4078,4095,4106,4118,4127,4166,4166,4116,4063,4024,3996,3976,3936,
+3869,3756,3677,3660,3668,3606,3509,3464,3461,3454,3438,3416,3393,3370,3342,3310,3276,3247,3223,3204,
+3185,3162,3129,3094,3063,3030,3005,2978,2951,2924,2895,2879,2848,2814,2771,2733,2701,2669,2643,2593,
+2561,2532,2497,2464,2430,2393,2353,2314,2279,2247,2211,2176,2141,2104,2069,2034,2000,1962,1926,1893,
+1853,1822,1784,1749,1715,1674,1638,1601,1564,1521,1483,1447,1408,1372,1336,1299,1260,1221,1188,1142,
+1103,1066,1031,999,967,931,898,856,808,777,731,689,659,628,593,555,521,483,445,407,
+371,334,299,256,221,196,147,109,68,26,-22,-73,-115,-144,-183,-217,-249,-285,-326,-365,
+-402,-437,-468,-505,-546,-578,-617,-659,-692,-732,-771,-810,-841,-879,-904,-920,-969,-1005,-1057,-1079,
+-1105,-1142,-1191,-1235,-1240,-1262,-1295,-1331,-1359,-1379,-1405,-1469,-1487,-1501,-1539,-1574,-1603,-1636,-1673,-1702,
+-1726,-1747,-1770,-1802,-1832,-1855,-1871,-1889,-1910,-1933,-1957,-1982,-2002,-2035,-2047,-2054,-2088,-2121,-2117,-2138,
+-2152,-2151,-2150,-2192,-2215,-2211,-2231,-2247,-2269,-2280,-2288,-2298,-2299,-2302,-2306,-2313,-2320,-2320,-2324,-2337,
+-2364,-2365,-2377,-2397,-2393,-2382,-2389,-2387,-2383,-2400,-2400,-2416,-2426,-2404,-2396,-2415,-2429,-2414,-2394,-2388,
+-2391,-2399,-2395,-2366,-2355,-2362,-2366,-2385,-2332,-2316,-2308,-2300,-2292,-2280,-2268,-2257,-2245,-2232,-2218,-2203,
+-2189,-2178,-2167,-2150,-2133,-2117,-2102,-2087,-2076,-2065,-2049,-2036,-2026,-2010,-1994,-1976,-1960,-1944,-1929,-1913,
+-1897,-1880,-1863,-1848,-1836,-1821,-1802,-1793,-1776,-1760,-1752,-1744,-1736,-1733,-1724,-1741,-1785,-1815,-1820,-1795,
+-1780,-1768,-1757,-1740,-1731,-1715,-1705,-1688,-1682,-1674,-1667,-1670,-1678,-1658,-1640,-1634,-1630,-1666,-1708,-1730,
+-1718,-1707,-1691,-1712,-1726,-1704,-1678,-1661,-1643,-1625,-1613,-1601,-1591,-1587,-1545,-1507,-1448,-1414,-1398,-1395,
+-1460,-1532,-1573,-1600,-1602,-1601,-1607,-1623,-1623,-1615,-1602,-1585,-1577,-1582,-1587,-1580,-1578,-1577,-1572,-1564,
+-1576,-1586,-1589,-1573,-1558,-1547,-1508,-1485,-1475,-1463,-1455,-1452,-1425,-1384,-1332,-1314,-1282,-1244,-1225,-1200,
+-1177,-1150,-1145,-1118,-1092,-1063,-1035,-1016,-995,-1012,-1032,-1080,-1151,-1196,-1047,-816,-750,-802,-857,-883,
+-902,-866,-800,-698,-645,-635,-665,-701,-719,-735,-750,-765,-779,-786,-794,-803,-808,-806,-800,-790,
+-777,-760,-741,-726,-708,-698,-705,-703,-706,-699,-696,-696,-693,-696,-706,-707,-714,-709,-727,-757,
+-798,-837,-868,-892,-908,-910,-912,-917,-916,-907,-894,-887,-869,-839,-833,-860,-908,-936,-968,-1004,
+-1076,-1153,-1223,-1278,-1347,-1373,-1393,-1419,-1446,-1471,-1488,-1533,-1554,-1574,-1595,-1611,-1634,-1643,-1646,-1647,
+-1644,-1641,-1638,-1645,-1651,-1656,-1657,-1660,-1664,-1662,-1658,-1652,-1648,-1645,-1640,-1637,-1633,-1628,-1628,-1630,
+-1632,-1640,-1642,-1638,-1635,-1629,-1622,-1618,-1613,-1608,-1606,-1608,-1613,-1619,-1619,-1618,-1615,-1596,-1585,-1583,
+-1580,-1579,-1578,-1576,-1581,-1590,-1599,-1614,-1596,-1587,-1586,-1589,-1593,-1594,-1598,-1610,-1621,-1631,-1639,-1642,
+-1642,-1639,-1641,-1644,-1644,-1642,-1642,-1637,-1634,-1624,-1612,-1604,-1592,-1582,-1576,-1567,-1553,-1537,-1521,-1512,
+-1509,-1501,-1492,-1482,-1477,-1479,-1476,-1454,-1450,-1451,-1446,-1442,-1432,-1435,-1440,-1465,-1511,-1543,-1557,-1569,
+-1574,-1572,-1573,-1569,-1570,-1570,-1566,-1552,-1540,-1523,-1529,-1565,-1598,-1623,-1630,-1633,-1630,-1630,-1639,-1636,
+-1633,-1637,-1647,-1659,-1669,-1679,-1689,-1703,-1718,-1722,-1719,-1717,-1718,-1711,-1695,-1689,-1685,-1687,-1711,-1721,
+-1722,-1705,-1706,-1709,-1715,-1716,-1723,-1721,-1731,-1730,-1704,-1704,-1714,-1721,-1720,-1737,-1742,-1731,-1722,-1719,
+-1715,-1714,-1707,-1689,-1684,-1679,-1672,-1652,-1652,-1648,-1638,-1623,-1599,-1579,-1563,-1531,-1516,-1500,-1499,-1477,
+-1461,-1446,-1435,-1414,-1400,-1382,-1362,-1345,-1327,-1301,-1275,-1275,-1255,-1237,-1221,-1209,-1193,-1179,-1169,-1159,
+-1144,-1131,-1117,-1105,-1097,-1088,-1081,-1075,-1070,-1062,-1060,-1060,-1063,-1054,-1041,-1016,-1017,-1023,-1016,-1013,
+-1009,-1004,-1006,-1014,-1018,-1012,-1002,-989,-978,-974,-970,-965,-959,-956,-951,-943,-939,-942,-937,-935,
+-931,-934,-932,-922,-936,-943,-943,-946,-949,-952,-954,-961,-966,-970,-973,-978,-981,-983,-983,-985,
+-991,-993,-994,-997,-998,-1000,-1003,-1008,-1009,-1011,-1018,-1021,-1024,-1001,-999,-1013,-1010,-1004,-992,-982,
+-969,-954,-944,-936,-934,-929,-922,-920,-918,-912,-906,-896,-886,-872,-854,-833,-813,-799,-776,-755,
+-741,-725,-712,-701,-689,-677,-666,-656,-651,-653,-656,-657,-653,-649,-644,-638,-629,-619,-608,-598,
+-583,-568,-552,-535,-516,-497,-478,-454,-431,-411,-385,-358,-324,-306,-291,-266,-250,-230,-201,-214,
+-189,-155,-147,-129,-112,-105,-100,-88,-70,-50,-23,-8,2,33,62,86,115,146,168,167,
+179,199,218,245,265,286,306,327,349,373,398,414,441,472,499,515,534,556,570,587,
+602,607,606,605,594,576,554,540,540,586,702,817,948,1107,1286,1445,1505,1467,1440,1417,
+1431,1505,1660,1807,1772,1658,1609,1536,1555,1618,1594,1530,1468,1449,1445,1417,1374,1384,1363,1337,
+1319,1302,1286,1274,1254,1237,1208,1190,1176,1144,1125,1108,1083,1071,1067,1062,1054,1050,1046,1053,
+1071,1090,1108,1109,1109,1116,1127,1137,1135,1134,1130,1131,1130,1131,1132,1128,1110,1102,1088,1076,
+1070,1068,1040,1010,998,991,966,946,923,897,855,819,778,738,697,655,608,565,528,484,
+426,356,267,152,79,46,19,-5,-9,-13,-19,-33,-38,-35,-37,-32,-31,-32,-32,-34,
+-42,-45,-49,-52,-56,-59,-64,-72,-74,-75,-71,-63,-53,-44,-33,-21,-10,8,25,45,
+66,82,106,134,147,163,189,201,208,216,218,205,200,192,180,169,166,169,170,172,
+167,177,175,179,198,229,255,274,279,281,289,299,319,332,346,378,414,448,461,451,
+434,447,467,492,511,532,554,570,579,583,594,608,618,630,641,653,669,688,715,763,
+836,891,997,1115,1140,1140,1163,1201,1248,1277,1300,1324,1347,1368,1393,1422,1455,1484,1519,1552,
+1587,1627,1658,1694,1726,1754,1799,1847,1888,1909,1932,1957,1973,1990,2015,2038,2056,2077,2101,2119,
+2141,2167,2190,2212,2251,2269,2293,2319,2339,2361,2383,2399,2410,2432,2452,2467,2485,2507,2528,2548,
+2577,2599,2621,2641,2656,2670,2685,2698,2700,2715,2729,2740,2742,2766,2800,2818,2830,2775,2810,2831,
+2829,2810,2750,2692,2661,2673,2716,2722,2694,2681,2685,2665,2619,2603,2602,2587,2564,2567,2574,2550,
+2535,2526,2524,2507,2496,2487,2474,2465,2474,2468,2445,2429,2413,2405,2397,2393,2388,2381,2401,2392,
+2388,2380,2371,2369,2371,2366,2377,2389,2401,2404,2416,2422,2430,2429,2438,2443,2447,2453,2490,2531,
+2487,2456,2442,2428,2422,2434,2460,2554,2674,2700,2549,2442,2381,2374,2388,2405,2429,2475,2528,2570,
+2598,2602,2611,2641,2657,2668,2702,2679,2675,2673,2709,2791,2819,2803,2819,2879,2872,2854,2881,2915,
+2926,2976,2966,2983,3008,3060,3056,3058,3084,3104,3128,3157,3177,3227,3242,3240,3270,3278,3277,3296,
+3295,3304,3331,3344,3345,3351,3365,3367,3368,3374,3394,3416,3421,3439,3476,3489,3485,3453,3443,3468,
+3491,3493,3543,3543,3531,3536,3565,3614,3667,3672,3680,3695,3767,3837,3835,3824,3853,3866,3846,3785,
+3830,3910,3974,4018,4128,4179,4163,4105,4123,4147,4151,4143,4162,4173,4190,4179,4186,4197,4223,4229,
+4231,4235,4238,4272,4301,4293,4294,4271,4242,4235,4239,4258,4288,4326,4369,4385,4406,4414,4433,4445,
+4468,4467,4473,4488,4471,4495,4491,4475,4442,4452,4449,4429,4421,4455,4390,4374,4396,4391,4397,4426,
+4448,4472,4493,4507,4516,4522,4525,4531,4529,4532,4527,4524,4528,4527,4523,4515,4511,4505,4503,4500,
+4499,4493,4482,4477,4472,4465,4459,4454,4446,4438,4425,4412,4392,4372,4360,4341,4324,4310,4297,4284,
+4270,4255,4238,4215,4190,4165,4138,4113,4089,4074,4062,4047,4022,3995,3967,3939,3915,3886,3851,3820,
+3799,3782,3783,3792,3811,3810,3799,3793,3774,3778,3788,3789,3784,3770,3755,3758,3768,3775,3777,3777,
+3786,3793,3792,3785,3793,3829,3918,4003,4059,4080,4094,4115,4142,4182,4230,4158,4104,4081,4081,4029,
+3961,3901,3805,3706,3665,3656,3650,3577,3495,3449,3415,3398,3390,3381,3368,3349,3331,3304,3274,3245,
+3217,3199,3175,3145,3114,3080,3050,3023,2995,2972,2949,2929,2905,2872,2830,2798,2759,2728,2693,2661,
+2623,2599,2554,2515,2478,2445,2410,2372,2336,2297,2263,2229,2196,2164,2127,2091,2056,2025,1985,1949,
+1914,1876,1839,1804,1766,1728,1692,1656,1619,1582,1538,1502,1463,1422,1386,1349,1311,1270,1229,1193,
+1157,1120,1088,1055,1022,988,950,917,867,835,802,756,723,687,654,617,580,541,502,466,
+428,396,356,319,287,245,207,168,128,89,50,4,-49,-77,-116,-157,-191,-227,-266,-302,
+-342,-380,-413,-446,-484,-519,-557,-591,-629,-665,-708,-740,-767,-806,-846,-873,-905,-942,-978,-1005,
+-1043,-1086,-1135,-1172,-1176,-1189,-1222,-1264,-1296,-1324,-1345,-1396,-1417,-1473,-1469,-1504,-1543,-1574,-1601,-1631,
+-1649,-1672,-1703,-1745,-1762,-1795,-1824,-1841,-1862,-1882,-1901,-1926,-1950,-1969,-1983,-2007,-2025,-2069,-2080,-2087,
+-2100,-2110,-2097,-2139,-2192,-2213,-2200,-2185,-2192,-2222,-2244,-2258,-2260,-2264,-2268,-2277,-2287,-2292,-2302,-2318,
+-2352,-2371,-2342,-2331,-2362,-2363,-2365,-2365,-2362,-2360,-2386,-2369,-2382,-2400,-2374,-2395,-2397,-2377,-2390,-2410,
+-2384,-2381,-2404,-2400,-2384,-2369,-2349,-2368,-2377,-2326,-2312,-2302,-2296,-2284,-2272,-2261,-2251,-2239,-2230,-2216,
+-2201,-2189,-2172,-2155,-2142,-2132,-2120,-2107,-2096,-2084,-2072,-2056,-2044,-2029,-2013,-1991,-1976,-1963,-1946,-1931,
+-1916,-1901,-1887,-1873,-1862,-1848,-1830,-1817,-1798,-1780,-1767,-1757,-1752,-1744,-1733,-1723,-1739,-1789,-1823,-1834,
+-1803,-1787,-1771,-1766,-1751,-1731,-1712,-1706,-1701,-1687,-1678,-1671,-1668,-1674,-1678,-1672,-1656,-1646,-1663,-1711,
+-1736,-1732,-1713,-1733,-1755,-1761,-1726,-1701,-1689,-1670,-1656,-1645,-1626,-1612,-1613,-1587,-1544,-1506,-1465,-1446,
+-1437,-1482,-1547,-1572,-1586,-1607,-1625,-1629,-1629,-1623,-1622,-1619,-1603,-1613,-1617,-1621,-1622,-1610,-1607,-1598,
+-1584,-1581,-1596,-1606,-1610,-1595,-1573,-1540,-1542,-1557,-1540,-1490,-1460,-1456,-1423,-1381,-1342,-1316,-1288,-1269,
+-1250,-1224,-1197,-1181,-1166,-1134,-1089,-1069,-1076,-1064,-1055,-1085,-1123,-1155,-1062,-789,-746,-839,-919,-942,
+-959,-976,-936,-856,-751,-715,-708,-734,-766,-784,-800,-810,-833,-851,-862,-862,-860,-862,-865,-856,
+-841,-838,-827,-807,-771,-746,-737,-749,-754,-761,-763,-761,-768,-773,-780,-774,-770,-780,-798,-810,
+-852,-879,-916,-954,-994,-1005,-1002,-992,-986,-986,-987,-984,-988,-978,-980,-982,-1005,-1035,-1079,-1126,
+-1166,-1212,-1273,-1339,-1389,-1422,-1447,-1456,-1475,-1489,-1500,-1513,-1547,-1601,-1635,-1666,-1685,-1718,-1732,-1738,
+-1734,-1726,-1723,-1719,-1720,-1721,-1719,-1721,-1725,-1725,-1722,-1713,-1708,-1707,-1701,-1696,-1687,-1686,-1688,-1690,
+-1691,-1700,-1705,-1706,-1708,-1700,-1691,-1686,-1677,-1670,-1662,-1660,-1662,-1664,-1668,-1671,-1671,-1670,-1666,-1658,
+-1648,-1641,-1639,-1641,-1640,-1643,-1644,-1648,-1655,-1657,-1645,-1636,-1654,-1658,-1661,-1661,-1660,-1657,-1657,-1658,
+-1660,-1667,-1672,-1680,-1686,-1692,-1691,-1687,-1681,-1677,-1669,-1659,-1652,-1646,-1642,-1634,-1622,-1618,-1602,-1574,
+-1574,-1548,-1542,-1545,-1534,-1508,-1515,-1523,-1509,-1483,-1465,-1467,-1468,-1476,-1475,-1475,-1470,-1481,-1505,-1541,
+-1579,-1606,-1622,-1618,-1614,-1611,-1603,-1604,-1603,-1587,-1572,-1568,-1571,-1615,-1643,-1650,-1664,-1657,-1665,-1672,
+-1674,-1668,-1669,-1674,-1675,-1682,-1688,-1695,-1712,-1732,-1743,-1742,-1743,-1741,-1736,-1730,-1723,-1707,-1700,-1698,
+-1701,-1730,-1749,-1753,-1739,-1751,-1747,-1738,-1727,-1717,-1742,-1746,-1725,-1729,-1734,-1733,-1740,-1754,-1745,-1738,
+-1723,-1721,-1720,-1718,-1718,-1698,-1678,-1669,-1664,-1663,-1658,-1648,-1638,-1623,-1602,-1582,-1564,-1549,-1534,-1519,
+-1503,-1485,-1468,-1450,-1432,-1417,-1398,-1378,-1361,-1352,-1336,-1314,-1293,-1278,-1260,-1247,-1234,-1217,-1201,-1185,
+-1175,-1161,-1147,-1132,-1114,-1102,-1087,-1076,-1066,-1054,-1043,-1037,-1033,-1029,-1025,-1021,-1015,-1011,-1006,-1002,
+-1002,-998,-995,-992,-990,-983,-976,-964,-958,-957,-956,-970,-977,-972,-967,-965,-956,-951,-948,-945,
+-940,-940,-940,-936,-931,-944,-950,-950,-955,-959,-961,-961,-964,-971,-976,-980,-983,-987,-991,-991,
+-1001,-1004,-1006,-1007,-1014,-1011,-1011,-1011,-1010,-1013,-1013,-1014,-1020,-1021,-1014,-1016,-1019,-1020,-1011,-1005,
+-993,-981,-966,-952,-940,-935,-929,-919,-914,-909,-904,-899,-885,-875,-860,-853,-842,-824,-813,-789,
+-767,-755,-736,-722,-707,-694,-681,-673,-663,-661,-659,-659,-658,-657,-656,-650,-644,-636,-629,-621,
+-607,-597,-582,-570,-556,-539,-517,-498,-478,-460,-429,-409,-386,-355,-326,-308,-292,-271,-262,-252,
+-236,-199,-178,-151,-125,-141,-137,-130,-110,-77,-54,-36,-12,1,15,36,56,76,98,121,
+147,177,197,210,224,246,268,291,313,336,355,379,401,422,446,470,491,512,532,549,
+565,580,585,587,582,569,554,539,522,524,585,687,793,911,1051,1242,1396,1457,1447,1421,
+1423,1458,1530,1739,1904,1875,1708,1650,1602,1537,1467,1480,1479,1428,1393,1370,1343,1320,1293,1274,
+1263,1258,1247,1236,1228,1214,1196,1177,1167,1149,1125,1102,1077,1064,1060,1054,1042,1041,1049,1058,
+1072,1082,1090,1099,1115,1132,1152,1164,1169,1168,1167,1166,1152,1159,1172,1173,1161,1147,1150,1135,
+1115,1103,1101,1081,1061,1050,1040,1018,1000,976,943,904,856,823,785,750,713,670,633,604,
+561,518,463,400,329,261,202,148,102,55,10,-22,-36,-34,-17,-14,-4,-7,-2,-1,
+-5,-6,-11,-5,-14,-19,-26,-24,-20,-9,-6,-7,-11,-3,3,17,36,56,81,101,
+129,150,166,186,210,236,266,274,290,281,269,263,247,228,213,204,188,176,167,155,
+154,140,121,103,110,135,180,229,257,287,298,299,303,322,335,356,378,394,412,423,
+431,436,453,469,485,517,553,581,599,617,637,657,681,701,725,746,765,781,794,807,
+826,850,895,980,1109,1179,1194,1211,1236,1269,1318,1341,1362,1387,1413,1436,1463,1492,1518,1547,
+1582,1618,1654,1690,1734,1774,1810,1835,1852,1893,1939,1954,1973,1990,2011,2037,2056,2071,2086,2101,
+2118,2133,2148,2174,2198,2222,2248,2273,2296,2311,2330,2346,2362,2380,2409,2417,2436,2455,2476,2504,
+2539,2571,2604,2616,2632,2644,2662,2669,2684,2684,2698,2713,2727,2726,2737,2749,2778,2769,2723,2719,
+2739,2740,2726,2728,2757,2716,2687,2706,2702,2688,2691,2678,2679,2660,2645,2638,2630,2611,2604,2579,
+2568,2556,2550,2549,2546,2528,2514,2504,2496,2485,2474,2463,2460,2446,2438,2427,2415,2410,2401,2433,
+2433,2443,2422,2408,2404,2404,2408,2416,2430,2443,2449,2449,2448,2443,2448,2440,2450,2447,2453,2479,
+2468,2463,2455,2441,2450,2529,2591,2620,2657,2599,2515,2432,2401,2403,2411,2423,2433,2429,2448,2502,
+2571,2597,2611,2624,2638,2645,2668,2683,2704,2752,2807,2841,2810,2818,2833,2821,2879,2910,2894,2897,
+2918,2963,2986,3019,3028,3054,3063,3076,3078,3088,3142,3168,3156,3215,3246,3227,3246,3276,3283,3284,
+3299,3321,3334,3357,3365,3373,3385,3389,3393,3406,3411,3418,3428,3445,3478,3507,3511,3482,3469,3491,
+3518,3514,3531,3592,3582,3543,3566,3619,3668,3687,3684,3703,3721,3808,3834,3815,3829,3826,3807,3723,
+3733,3869,3943,3979,4046,4117,4104,4058,4077,4105,4105,4068,4106,4137,4130,4121,4142,4192,4166,4169,
+4196,4208,4222,4240,4268,4309,4295,4263,4251,4250,4254,4257,4276,4305,4345,4402,4404,4415,4442,4460,
+4466,4480,4495,4486,4498,4481,4488,4485,4494,4486,4459,4456,4449,4429,4415,4397,4377,4372,4379,4412,
+4449,4468,4494,4509,4513,4525,4528,4532,4537,4541,4540,4544,4536,4538,4542,4529,4516,4504,4494,4494,
+4487,4480,4478,4476,4470,4460,4454,4447,4444,4438,4427,4415,4398,4378,4366,4350,4333,4318,4304,4291,
+4278,4265,4249,4228,4201,4182,4158,4129,4100,4080,4066,4054,4035,4009,3981,3952,3926,3894,3861,3824,
+3793,3771,3774,3774,3778,3808,3836,3798,3756,3721,3692,3705,3765,3787,3798,3809,3826,3843,3848,3856,
+3828,3803,3800,3799,3790,3785,3799,3816,3897,4012,4054,4073,4099,4129,4156,4189,4161,4166,4123,4089,
+4034,3971,3911,3819,3720,3670,3645,3618,3587,3553,3522,3494,3447,3391,3350,3327,3326,3332,3321,3291,
+3269,3239,3213,3187,3161,3133,3101,3069,3042,3014,2987,2968,2955,2925,2909,2862,2824,2791,2750,2712,
+2676,2643,2605,2570,2533,2496,2460,2421,2391,2351,2314,2281,2248,2214,2181,2146,2115,2077,2042,2010,
+1972,1936,1897,1857,1821,1784,1743,1706,1666,1629,1594,1550,1515,1476,1438,1397,1358,1324,1283,1245,
+1207,1173,1135,1103,1072,1038,1008,972,927,881,848,813,784,744,712,679,636,598,559,523,
+488,450,419,389,341,300,263,225,185,148,110,68,19,-12,-44,-89,-128,-164,-204,-241,
+-282,-321,-354,-387,-423,-461,-498,-534,-570,-608,-631,-664,-701,-742,-777,-805,-841,-877,-921,-948,
+-979,-1013,-1058,-1101,-1118,-1133,-1165,-1204,-1239,-1273,-1296,-1337,-1363,-1394,-1419,-1454,-1484,-1513,-1541,-1565,
+-1590,-1609,-1637,-1682,-1691,-1722,-1758,-1783,-1803,-1826,-1851,-1877,-1894,-1911,-1928,-1951,-1973,-2001,-2022,-2039,
+-2054,-2070,-2070,-2087,-2139,-2137,-2122,-2179,-2189,-2184,-2180,-2188,-2199,-2215,-2225,-2232,-2249,-2249,-2259,-2278,
+-2294,-2307,-2310,-2300,-2322,-2343,-2332,-2335,-2326,-2332,-2362,-2399,-2394,-2371,-2380,-2356,-2385,-2383,-2377,-2379,
+-2391,-2369,-2377,-2396,-2383,-2375,-2348,-2332,-2352,-2326,-2306,-2300,-2298,-2290,-2282,-2271,-2262,-2253,-2240,-2229,
+-2212,-2199,-2183,-2170,-2156,-2147,-2137,-2127,-2117,-2108,-2094,-2077,-2059,-2041,-2027,-2011,-1996,-1980,-1966,-1953,
+-1939,-1925,-1913,-1900,-1887,-1878,-1866,-1848,-1830,-1808,-1792,-1780,-1770,-1761,-1748,-1743,-1737,-1747,-1802,-1826,
+-1848,-1821,-1797,-1781,-1771,-1749,-1740,-1723,-1714,-1705,-1692,-1692,-1681,-1678,-1689,-1685,-1689,-1661,-1655,-1648,
+-1695,-1732,-1739,-1730,-1741,-1776,-1780,-1757,-1733,-1716,-1690,-1680,-1661,-1653,-1649,-1645,-1639,-1599,-1567,-1544,
+-1534,-1513,-1518,-1547,-1574,-1616,-1632,-1626,-1631,-1630,-1623,-1631,-1638,-1640,-1641,-1645,-1653,-1636,-1643,-1646,
+-1637,-1620,-1611,-1618,-1613,-1605,-1608,-1605,-1572,-1554,-1564,-1560,-1537,-1494,-1466,-1460,-1417,-1377,-1349,-1325,
+-1303,-1286,-1265,-1238,-1210,-1187,-1192,-1149,-1116,-1130,-1125,-1115,-1138,-1147,-1096,-861,-709,-837,-951,-1009,
+-1031,-1039,-1018,-913,-796,-750,-745,-763,-799,-833,-850,-856,-866,-877,-896,-912,-917,-918,-915,-913,
+-907,-899,-895,-887,-872,-841,-814,-820,-827,-836,-842,-843,-849,-854,-856,-865,-887,-894,-889,-900,
+-920,-944,-969,-1002,-1046,-1085,-1079,-1058,-1050,-1051,-1057,-1069,-1081,-1087,-1097,-1132,-1175,-1202,-1230,-1263,
+-1295,-1327,-1371,-1408,-1451,-1472,-1480,-1527,-1511,-1508,-1485,-1467,-1459,-1479,-1545,-1659,-1721,-1759,-1789,-1809,
+-1814,-1816,-1812,-1804,-1800,-1794,-1789,-1789,-1782,-1780,-1779,-1773,-1772,-1770,-1762,-1755,-1749,-1747,-1748,-1753,
+-1753,-1757,-1755,-1761,-1771,-1771,-1766,-1762,-1758,-1749,-1738,-1731,-1720,-1717,-1718,-1720,-1718,-1718,-1717,-1717,
+-1716,-1716,-1711,-1707,-1705,-1705,-1702,-1699,-1698,-1699,-1698,-1693,-1692,-1702,-1706,-1715,-1718,-1721,-1716,-1707,
+-1701,-1697,-1697,-1701,-1710,-1720,-1730,-1735,-1732,-1728,-1722,-1714,-1707,-1702,-1700,-1698,-1694,-1687,-1667,-1652,
+-1634,-1629,-1627,-1608,-1597,-1576,-1563,-1556,-1550,-1544,-1537,-1534,-1516,-1515,-1511,-1527,-1536,-1533,-1529,-1520,
+-1518,-1532,-1564,-1614,-1647,-1662,-1657,-1648,-1648,-1650,-1651,-1642,-1635,-1616,-1604,-1616,-1643,-1663,-1665,-1682,
+-1699,-1710,-1713,-1719,-1723,-1716,-1706,-1705,-1708,-1722,-1737,-1749,-1754,-1760,-1763,-1759,-1756,-1743,-1732,-1733,
+-1713,-1703,-1715,-1733,-1744,-1761,-1765,-1760,-1760,-1746,-1733,-1737,-1738,-1746,-1746,-1751,-1749,-1753,-1763,-1771,
+-1762,-1750,-1741,-1732,-1727,-1721,-1719,-1710,-1689,-1677,-1669,-1660,-1651,-1642,-1631,-1617,-1599,-1581,-1568,-1549,
+-1532,-1517,-1502,-1487,-1467,-1446,-1433,-1416,-1396,-1379,-1363,-1350,-1333,-1315,-1310,-1289,-1277,-1264,-1247,-1227,
+-1207,-1190,-1177,-1163,-1148,-1133,-1116,-1099,-1085,-1073,-1061,-1052,-1037,-1031,-1019,-1013,-1007,-1002,-997,-992,
+-987,-980,-982,-980,-980,-977,-958,-966,-957,-952,-947,-936,-936,-948,-950,-958,-964,-969,-966,-951,
+-949,-952,-942,-948,-937,-947,-955,-958,-961,-966,-969,-975,-977,-976,-983,-993,-998,-1002,-1005,-1010,
+-1016,-1019,-1023,-1023,-1025,-1026,-1024,-1023,-1019,-1017,-1017,-1015,-1013,-1013,-1017,-1013,-1013,-1011,-1010,-1007,
+-1002,-992,-987,-974,-963,-947,-941,-943,-927,-917,-911,-908,-900,-889,-877,-860,-856,-852,-838,-819,
+-808,-791,-775,-759,-743,-729,-711,-696,-685,-677,-666,-663,-663,-660,-660,-660,-657,-651,-642,-640,
+-631,-619,-603,-593,-583,-574,-561,-542,-522,-501,-478,-460,-446,-426,-392,-354,-332,-322,-295,-277,
+-274,-261,-214,-191,-189,-188,-164,-155,-135,-112,-93,-72,-35,-18,1,16,31,49,75,96,
+113,130,154,180,200,220,246,261,284,307,328,357,380,405,426,451,471,493,513,528,
+545,561,574,580,582,579,567,552,532,521,530,599,663,741,860,1032,1258,1388,1444,1420,
+1369,1352,1390,1503,1710,1883,1801,1624,1493,1484,1487,1466,1416,1385,1358,1333,1312,1285,1259,1227,
+1199,1183,1175,1177,1172,1153,1145,1148,1144,1126,1117,1098,1083,1063,1051,1052,1043,1041,1048,1046,
+1066,1083,1096,1114,1140,1167,1181,1188,1195,1202,1208,1207,1206,1211,1216,1220,1212,1208,1204,1201,
+1181,1153,1135,1123,1110,1093,1077,1062,1040,1023,1002,977,940,904,869,835,798,759,725,691,
+659,618,574,521,463,408,354,296,232,196,165,168,158,143,157,136,139,152,152,127,
+94,81,66,56,35,27,22,23,17,20,16,18,28,29,31,28,32,62,96,114,
+133,150,184,217,241,273,296,319,350,373,382,395,391,382,378,359,328,297,264,237,
+200,164,151,139,128,128,144,166,196,220,238,257,278,313,347,373,391,407,425,451,
+476,501,526,547,560,570,592,622,651,677,703,729,757,787,821,854,882,900,916,928,
+937,943,954,983,1066,1201,1263,1268,1276,1287,1294,1345,1395,1414,1432,1457,1484,1525,1547,1567,
+1601,1635,1671,1705,1735,1758,1787,1835,1869,1889,1909,1947,1967,1987,2003,2012,2031,2048,2060,2068,
+2081,2095,2114,2132,2155,2180,2206,2229,2253,2272,2292,2315,2336,2353,2366,2373,2402,2437,2467,2492,
+2514,2545,2572,2590,2607,2621,2635,2660,2661,2672,2686,2692,2692,2687,2686,2688,2688,2701,2714,2703,
+2704,2723,2736,2747,2771,2774,2777,2713,2724,2760,2751,2738,2718,2709,2685,2668,2669,2643,2625,2622,
+2614,2608,2609,2593,2585,2586,2577,2560,2548,2543,2528,2514,2507,2493,2483,2475,2471,2456,2449,2433,
+2477,2472,2466,2464,2451,2447,2447,2454,2460,2464,2466,2464,2452,2442,2448,2453,2442,2462,2485,2468,
+2459,2468,2500,2477,2449,2491,2630,2652,2654,2604,2502,2440,2395,2397,2428,2473,2491,2453,2466,2492,
+2544,2573,2600,2639,2665,2658,2623,2621,2638,2645,2685,2752,2797,2820,2807,2798,2816,2883,2936,2920,
+2933,2946,2979,3000,3027,3046,3078,3093,3100,3116,3135,3168,3183,3182,3221,3231,3235,3277,3293,3290,
+3306,3328,3337,3360,3390,3382,3388,3410,3421,3427,3421,3438,3447,3464,3481,3510,3530,3519,3506,3481,
+3511,3527,3524,3555,3602,3567,3563,3610,3661,3696,3705,3703,3725,3727,3779,3835,3852,3834,3774,3701,
+3683,3826,3934,3986,4012,4093,4087,4035,4017,4043,4065,4056,4028,4056,4097,4077,4061,4061,4093,4115,
+4120,4133,4152,4190,4226,4251,4277,4282,4281,4267,4285,4297,4299,4316,4346,4379,4421,4449,4465,4490,
+4494,4491,4503,4516,4517,4517,4496,4492,4492,4494,4501,4490,4482,4465,4457,4448,4430,4431,4428,4438,
+4457,4446,4469,4499,4516,4534,4541,4534,4538,4542,4538,4538,4541,4546,4541,4535,4521,4499,4488,4474,
+4473,4469,4468,4467,4460,4455,4451,4444,4441,4437,4433,4422,4406,4387,4378,4363,4347,4331,4316,4301,
+4287,4275,4262,4245,4218,4195,4176,4147,4122,4091,4074,4057,4045,4023,3996,3968,3940,3909,3877,3840,
+3807,3784,3772,3787,3791,3768,3754,3744,3729,3728,3689,3659,3664,3750,3856,3933,3970,4008,4049,4074,
+4068,4029,3965,3908,3869,3825,3793,3767,3740,3767,3877,3984,4030,4054,4097,4140,4121,4101,4108,4081,
+4067,4018,3955,3892,3785,3721,3685,3661,3647,3640,3629,3616,3589,3543,3493,3463,3429,3355,3323,3306,
+3298,3286,3258,3233,3208,3182,3151,3118,3089,3060,3032,3003,2984,2966,2935,2919,2880,2841,2811,2770,
+2735,2697,2660,2627,2583,2546,2505,2471,2432,2400,2366,2334,2300,2265,2232,2199,2164,2131,2098,2064,
+2023,1986,1950,1912,1871,1837,1799,1757,1719,1681,1643,1606,1566,1529,1491,1455,1414,1374,1334,1296,
+1260,1223,1184,1150,1120,1088,1059,1024,978,942,910,867,837,800,766,732,695,654,616,578,
+548,519,488,436,398,361,321,278,238,201,164,124,80,45,13,-26,-65,-104,-143,-182,
+-223,-264,-301,-336,-370,-401,-436,-474,-507,-542,-578,-609,-641,-677,-716,-741,-770,-811,-861,-893,
+-922,-954,-995,-1041,-1066,-1076,-1105,-1139,-1178,-1215,-1247,-1286,-1307,-1337,-1367,-1389,-1415,-1444,-1472,-1505,
+-1535,-1570,-1588,-1617,-1662,-1678,-1687,-1708,-1741,-1768,-1804,-1815,-1835,-1859,-1875,-1886,-1918,-1928,-1978,-1970,
+-1992,-2008,-2016,-2050,-2096,-2116,-2097,-2110,-2128,-2133,-2174,-2189,-2177,-2180,-2202,-2209,-2209,-2218,-2225,-2233,
+-2245,-2279,-2295,-2288,-2285,-2319,-2345,-2342,-2338,-2330,-2335,-2371,-2341,-2371,-2376,-2352,-2366,-2373,-2343,-2354,
+-2363,-2362,-2371,-2386,-2403,-2364,-2348,-2339,-2332,-2345,-2309,-2307,-2303,-2292,-2285,-2275,-2270,-2258,-2243,-2232,
+-2219,-2206,-2197,-2188,-2175,-2167,-2157,-2149,-2140,-2126,-2108,-2090,-2073,-2060,-2045,-2030,-2017,-2001,-1987,-1974,
+-1962,-1950,-1938,-1930,-1918,-1902,-1882,-1865,-1850,-1839,-1823,-1807,-1792,-1781,-1770,-1762,-1757,-1753,-1754,-1807,
+-1833,-1840,-1822,-1804,-1796,-1779,-1763,-1747,-1734,-1722,-1717,-1703,-1699,-1695,-1698,-1698,-1698,-1691,-1675,-1665,
+-1667,-1718,-1761,-1769,-1757,-1752,-1787,-1791,-1777,-1764,-1744,-1726,-1711,-1698,-1684,-1675,-1663,-1666,-1660,-1648,
+-1638,-1641,-1639,-1634,-1626,-1624,-1639,-1654,-1644,-1644,-1645,-1634,-1631,-1666,-1659,-1658,-1684,-1693,-1679,-1671,
+-1665,-1655,-1642,-1640,-1626,-1632,-1641,-1647,-1638,-1601,-1578,-1591,-1565,-1556,-1527,-1487,-1458,-1441,-1409,-1372,
+-1352,-1339,-1320,-1302,-1278,-1249,-1220,-1224,-1218,-1162,-1170,-1166,-1162,-1140,-1079,-954,-815,-881,-1004,-1070,
+-1098,-1096,-1101,-1077,-930,-806,-783,-796,-819,-849,-871,-895,-905,-913,-923,-944,-963,-966,-973,-972,
+-966,-967,-949,-944,-938,-922,-902,-897,-897,-910,-918,-920,-926,-928,-932,-950,-976,-992,-1009,-1020,
+-1036,-1048,-1070,-1092,-1118,-1152,-1177,-1171,-1164,-1165,-1172,-1171,-1174,-1199,-1213,-1227,-1291,-1329,-1375,-1409,
+-1452,-1476,-1502,-1523,-1540,-1554,-1567,-1571,-1588,-1580,-1533,-1487,-1458,-1467,-1494,-1550,-1651,-1752,-1814,-1852,
+-1874,-1886,-1890,-1892,-1887,-1880,-1871,-1857,-1845,-1835,-1835,-1833,-1831,-1833,-1827,-1820,-1811,-1809,-1807,-1814,
+-1816,-1818,-1819,-1816,-1818,-1819,-1822,-1821,-1816,-1812,-1810,-1806,-1800,-1789,-1783,-1783,-1783,-1778,-1775,-1770,
+-1766,-1766,-1767,-1767,-1764,-1764,-1764,-1759,-1760,-1760,-1754,-1748,-1740,-1740,-1752,-1762,-1763,-1782,-1792,-1787,
+-1774,-1762,-1750,-1743,-1742,-1748,-1756,-1766,-1772,-1773,-1770,-1769,-1768,-1763,-1759,-1759,-1756,-1750,-1738,-1733,
+-1731,-1697,-1672,-1668,-1662,-1645,-1624,-1626,-1608,-1590,-1589,-1580,-1577,-1578,-1578,-1565,-1554,-1557,-1579,-1583,
+-1579,-1566,-1559,-1555,-1564,-1587,-1629,-1667,-1679,-1683,-1696,-1692,-1676,-1657,-1662,-1671,-1634,-1627,-1645,-1649,
+-1670,-1681,-1701,-1722,-1741,-1749,-1754,-1743,-1747,-1750,-1750,-1752,-1759,-1769,-1769,-1775,-1786,-1775,-1762,-1756,
+-1744,-1726,-1712,-1719,-1723,-1730,-1738,-1740,-1736,-1741,-1752,-1760,-1753,-1752,-1759,-1763,-1768,-1775,-1777,-1771,
+-1775,-1794,-1777,-1758,-1753,-1747,-1741,-1732,-1726,-1719,-1713,-1681,-1664,-1658,-1654,-1643,-1634,-1617,-1600,-1584,
+-1566,-1542,-1528,-1506,-1486,-1470,-1456,-1437,-1418,-1401,-1384,-1368,-1350,-1335,-1327,-1303,-1297,-1287,-1274,-1260,
+-1243,-1223,-1207,-1193,-1181,-1171,-1155,-1137,-1127,-1112,-1095,-1085,-1074,-1062,-1047,-1034,-1029,-1018,-1006,-1002,
+-994,-983,-975,-974,-968,-964,-966,-963,-958,-954,-947,-944,-933,-933,-945,-947,-945,-952,-964,-975,
+-974,-988,-995,-977,-961,-947,-959,-972,-978,-983,-984,-994,-996,-995,-1006,-1011,-1018,-1019,-1021,-1026,
+-1034,-1036,-1041,-1044,-1048,-1052,-1050,-1054,-1046,-1042,-1040,-1036,-1029,-1024,-1021,-1016,-1011,-1014,-1012,-1013,
+-1009,-1006,-1004,-1000,-993,-980,-969,-952,-954,-942,-932,-928,-922,-915,-904,-896,-882,-869,-857,-846,
+-831,-819,-804,-794,-781,-775,-758,-738,-718,-703,-691,-684,-678,-673,-670,-663,-666,-663,-652,-646,
+-643,-635,-628,-617,-608,-598,-584,-569,-557,-536,-520,-505,-488,-477,-442,-411,-387,-362,-347,-324,
+-296,-294,-269,-242,-222,-218,-214,-179,-164,-147,-127,-102,-82,-54,-33,-14,0,12,30,54,
+74,91,117,133,158,180,207,227,251,275,299,325,353,377,397,417,440,465,485,504,
+519,535,547,561,571,576,574,561,546,529,516,529,599,708,770,889,1048,1240,1376,1435,
+1391,1327,1307,1342,1456,1623,1787,1686,1608,1521,1447,1385,1360,1364,1367,1340,1313,1305,1278,1245,
+1213,1174,1143,1130,1133,1123,1117,1125,1125,1113,1098,1093,1081,1064,1049,1047,1046,1051,1054,1063,
+1071,1086,1106,1129,1152,1178,1204,1221,1240,1258,1271,1273,1268,1269,1275,1272,1255,1235,1245,1255,
+1252,1231,1208,1186,1171,1160,1136,1120,1097,1076,1058,1036,1014,983,948,910,872,828,794,762,
+732,697,658,613,563,511,460,413,366,311,272,251,246,238,229,243,257,249,241,233,
+220,207,197,197,208,208,206,210,215,221,222,214,191,170,158,155,153,158,178,198,
+220,250,278,301,331,373,428,482,518,535,534,539,547,548,538,522,497,468,428,376,
+313,246,199,201,218,222,225,231,241,257,275,294,319,352,392,436,459,448,470,484,
+495,530,571,602,623,638,647,660,682,713,745,777,809,842,876,914,949,976,999,1014,
+1027,1037,1037,1043,1061,1103,1150,1196,1264,1309,1312,1310,1337,1404,1448,1454,1473,1492,1525,1571,
+1600,1612,1629,1658,1684,1714,1747,1781,1813,1844,1860,1887,1933,1965,1988,2007,2015,2025,2039,2050,
+2058,2070,2088,2108,2127,2148,2171,2192,2215,2238,2254,2274,2298,2321,2342,2361,2383,2418,2439,2456,
+2485,2536,2561,2564,2574,2572,2601,2624,2625,2626,2629,2637,2641,2660,2687,2682,2690,2704,2738,2712,
+2713,2740,2751,2741,2740,2743,2756,2731,2714,2794,2801,2794,2768,2736,2705,2687,2669,2670,2679,2665,
+2668,2658,2645,2635,2633,2624,2615,2600,2584,2584,2571,2561,2551,2539,2522,2510,2499,2497,2497,2488,
+2477,2518,2511,2499,2492,2487,2489,2490,2492,2493,2500,2490,2509,2496,2467,2454,2455,2451,2475,2477,
+2491,2545,2506,2453,2421,2410,2460,2571,2537,2478,2398,2373,2374,2403,2453,2475,2477,2509,2493,2504,
+2543,2584,2594,2625,2691,2724,2663,2627,2615,2626,2627,2633,2662,2690,2733,2761,2779,2832,2890,2926,
+2952,2962,2988,3046,3064,3069,3092,3114,3131,3134,3174,3195,3214,3199,3200,3225,3230,3256,3291,3322,
+3330,3323,3328,3359,3378,3396,3405,3390,3415,3433,3447,3452,3453,3460,3481,3503,3536,3533,3533,3521,
+3507,3537,3542,3545,3606,3595,3576,3611,3657,3705,3723,3718,3701,3697,3738,3790,3834,3841,3771,3694,
+3671,3792,3874,3948,3952,4021,4084,4074,4006,3997,4035,4025,4004,4008,4069,4060,4054,4050,4072,4089,
+4082,4084,4100,4123,4151,4176,4219,4241,4257,4294,4287,4312,4319,4330,4358,4391,4422,4459,4483,4492,
+4517,4519,4520,4529,4519,4530,4535,4527,4518,4515,4516,4515,4511,4503,4487,4492,4479,4468,4472,4475,
+4486,4504,4501,4516,4512,4528,4573,4563,4552,4549,4546,4545,4552,4545,4529,4523,4515,4506,4492,4480,
+4467,4459,4451,4449,4446,4439,4440,4438,4436,4437,4434,4428,4409,4396,4386,4375,4361,4346,4329,4310,
+4296,4287,4273,4255,4228,4201,4186,4163,4139,4105,4085,4068,4054,4038,4015,3990,3961,3933,3903,3872,
+3843,3818,3803,3796,3769,3756,3737,3724,3716,3708,3695,3661,3636,3638,3666,3754,3893,3917,3942,3981,
+4065,4111,4109,4090,4066,4002,3864,3761,3713,3691,3694,3731,3809,3922,3986,4019,4068,4062,4067,4056,
+4015,3975,3934,3887,3816,3732,3697,3676,3667,3671,3670,3669,3660,3647,3627,3611,3568,3545,3560,3470,
+3341,3293,3277,3267,3253,3238,3208,3173,3138,3110,3077,3045,3015,2993,2964,2948,2926,2898,2847,2820,
+2784,2748,2713,2676,2634,2595,2558,2523,2483,2449,2417,2383,2350,2316,2284,2248,2215,2182,2148,2111,
+2078,2043,2002,1960,1921,1884,1849,1815,1773,1738,1700,1659,1622,1583,1541,1506,1464,1429,1387,1347,
+1310,1271,1233,1201,1166,1134,1104,1069,1030,994,964,920,893,860,820,784,750,712,676,642,
+604,569,529,492,457,420,374,333,290,254,218,183,139,99,71,34,0,-47,-88,-127,
+-167,-206,-242,-275,-310,-348,-379,-418,-451,-483,-513,-546,-578,-611,-655,-688,-714,-744,-802,-832,
+-863,-897,-935,-964,-1001,-1017,-1045,-1080,-1119,-1153,-1183,-1231,-1247,-1266,-1311,-1343,-1367,-1393,-1411,-1442,
+-1470,-1498,-1526,-1562,-1596,-1599,-1640,-1666,-1679,-1701,-1728,-1744,-1785,-1803,-1822,-1841,-1863,-1905,-1923,-1934,
+-1956,-1989,-2009,-2037,-2064,-2055,-2051,-2069,-2090,-2104,-2108,-2118,-2129,-2147,-2160,-2171,-2172,-2182,-2197,-2214,
+-2230,-2241,-2266,-2276,-2262,-2268,-2299,-2275,-2286,-2294,-2316,-2339,-2319,-2319,-2342,-2365,-2347,-2368,-2363,-2341,
+-2346,-2358,-2328,-2323,-2363,-2355,-2348,-2346,-2345,-2342,-2331,-2316,-2310,-2297,-2284,-2275,-2266,-2255,-2247,-2233,
+-2223,-2211,-2202,-2194,-2183,-2174,-2165,-2155,-2142,-2130,-2116,-2102,-2086,-2073,-2058,-2041,-2030,-2018,-2005,-1992,
+-1982,-1968,-1955,-1944,-1929,-1910,-1896,-1883,-1869,-1857,-1843,-1830,-1818,-1806,-1797,-1785,-1779,-1773,-1766,-1768,
+-1817,-1842,-1854,-1837,-1806,-1800,-1787,-1775,-1759,-1758,-1742,-1723,-1718,-1711,-1717,-1723,-1723,-1716,-1699,-1697,
+-1687,-1695,-1736,-1778,-1791,-1780,-1768,-1783,-1800,-1799,-1797,-1780,-1758,-1742,-1726,-1711,-1674,-1661,-1686,-1689,
+-1695,-1704,-1707,-1708,-1687,-1668,-1661,-1659,-1666,-1672,-1673,-1679,-1671,-1671,-1701,-1705,-1697,-1699,-1716,-1711,
+-1701,-1688,-1682,-1684,-1675,-1671,-1668,-1672,-1667,-1658,-1635,-1592,-1596,-1584,-1552,-1549,-1521,-1484,-1448,-1438,
+-1412,-1400,-1371,-1346,-1328,-1310,-1292,-1263,-1266,-1275,-1230,-1215,-1168,-1130,-1013,-911,-861,-898,-1015,-1130,
+-1182,-1176,-1158,-1163,-1150,-997,-874,-836,-847,-876,-904,-927,-949,-966,-971,-977,-990,-1009,-1018,-1020,
+-1020,-1013,-1001,-992,-983,-975,-969,-967,-972,-973,-986,-999,-996,-1001,-1013,-1029,-1049,-1073,-1099,-1125,
+-1143,-1168,-1188,-1205,-1229,-1253,-1286,-1303,-1299,-1297,-1304,-1318,-1331,-1364,-1411,-1450,-1484,-1520,-1549,-1566,
+-1594,-1614,-1618,-1629,-1638,-1646,-1654,-1657,-1639,-1643,-1642,-1590,-1532,-1513,-1533,-1568,-1617,-1707,-1802,-1883,
+-1915,-1938,-1953,-1964,-1968,-1968,-1956,-1943,-1928,-1917,-1901,-1894,-1889,-1883,-1882,-1873,-1867,-1861,-1857,-1860,
+-1866,-1874,-1877,-1880,-1880,-1883,-1879,-1875,-1874,-1870,-1868,-1864,-1859,-1858,-1853,-1852,-1855,-1853,-1848,-1846,
+-1838,-1827,-1819,-1817,-1818,-1825,-1826,-1823,-1823,-1824,-1815,-1809,-1799,-1799,-1790,-1782,-1786,-1804,-1815,-1830,
+-1845,-1838,-1835,-1819,-1807,-1800,-1799,-1802,-1807,-1810,-1814,-1817,-1811,-1818,-1818,-1817,-1814,-1810,-1803,-1795,
+-1784,-1793,-1773,-1745,-1730,-1722,-1698,-1684,-1684,-1664,-1655,-1645,-1640,-1633,-1621,-1612,-1614,-1634,-1632,-1601,
+-1601,-1605,-1608,-1608,-1600,-1595,-1592,-1582,-1588,-1614,-1647,-1668,-1703,-1713,-1696,-1681,-1683,-1689,-1678,-1661,
+-1656,-1650,-1639,-1645,-1681,-1713,-1742,-1780,-1781,-1779,-1783,-1780,-1776,-1782,-1786,-1782,-1786,-1785,-1786,-1780,
+-1766,-1737,-1731,-1734,-1722,-1715,-1736,-1744,-1746,-1746,-1750,-1749,-1754,-1763,-1769,-1775,-1779,-1780,-1788,-1785,
+-1782,-1773,-1782,-1788,-1781,-1774,-1765,-1756,-1744,-1736,-1731,-1726,-1726,-1720,-1707,-1691,-1668,-1652,-1631,-1615,
+-1594,-1579,-1560,-1542,-1520,-1500,-1481,-1460,-1443,-1421,-1403,-1386,-1365,-1345,-1325,-1312,-1302,-1283,-1271,-1259,
+-1249,-1237,-1224,-1211,-1201,-1193,-1180,-1168,-1156,-1148,-1136,-1125,-1116,-1082,-1059,-1069,-1065,-1055,-1047,-1035,
+-1022,-1010,-997,-985,-977,-971,-966,-961,-957,-956,-952,-950,-947,-931,-942,-944,-948,-951,-953,-962,
+-976,-982,-985,-991,-992,-998,-1001,-999,-1002,-1002,-1001,-1007,-1020,-1022,-1017,-1018,-1030,-1045,-1042,-1049,
+-1043,-1050,-1056,-1058,-1061,-1065,-1070,-1072,-1073,-1069,-1071,-1062,-1055,-1055,-1053,-1045,-1037,-1029,-1030,-1026,
+-1022,-1025,-1030,-1026,-1018,-1013,-1001,-992,-991,-974,-956,-946,-933,-927,-921,-918,-918,-912,-896,-877,
+-860,-838,-823,-812,-802,-804,-796,-780,-764,-747,-725,-709,-697,-690,-689,-682,-681,-679,-671,-660,
+-658,-653,-648,-636,-628,-621,-609,-596,-585,-573,-558,-542,-531,-513,-489,-463,-440,-411,-395,-373,
+-342,-315,-317,-288,-258,-251,-254,-239,-208,-190,-163,-146,-124,-92,-67,-61,-38,-19,-6,9,
+31,48,77,96,113,132,159,195,207,232,260,289,311,337,361,376,399,422,448,471,
+486,502,517,531,548,564,568,567,555,542,524,512,515,571,715,800,887,1016,1205,1352,
+1409,1382,1334,1295,1319,1426,1647,1710,1529,1546,1494,1441,1360,1337,1366,1371,1364,1317,1279,1246,
+1213,1185,1149,1118,1102,1103,1102,1090,1098,1091,1071,1071,1074,1058,1049,1038,1044,1054,1070,1080,
+1102,1113,1123,1140,1151,1178,1216,1246,1270,1290,1299,1304,1297,1290,1290,1293,1292,1286,1282,1275,
+1270,1263,1256,1250,1239,1229,1208,1181,1158,1147,1127,1105,1085,1062,1036,1000,960,919,881,846,
+814,784,751,717,676,628,578,526,487,450,415,386,371,353,335,322,310,302,296,284,
+257,231,217,214,220,229,232,236,237,252,254,249,244,235,223,225,236,248,264,282,
+297,329,371,402,423,448,487,536,582,611,630,641,641,635,639,631,613,581,528,473,
+413,352,312,293,307,327,333,338,341,349,362,376,394,421,457,490,506,513,519,571,
+593,556,578,627,662,690,705,719,730,744,770,801,834,864,896,935,974,1009,1036,1058,
+1073,1084,1093,1098,1112,1134,1147,1158,1186,1242,1255,1281,1378,1414,1420,1456,1496,1503,1518,1530,
+1563,1596,1625,1657,1677,1703,1732,1763,1783,1815,1846,1865,1872,1894,1927,1970,2003,2020,2021,2042,
+2054,2065,2079,2095,2119,2141,2162,2177,2196,2217,2234,2254,2275,2300,2326,2348,2372,2401,2428,2456,
+2477,2474,2497,2511,2523,2529,2548,2576,2604,2624,2636,2632,2652,2660,2671,2671,2698,2711,2717,2715,
+2733,2743,2739,2755,2754,2762,2774,2774,2757,2723,2744,2761,2743,2732,2727,2722,2724,2738,2743,2726,
+2708,2701,2687,2674,2667,2655,2652,2650,2640,2623,2614,2609,2594,2591,2570,2558,2548,2541,2541,2532,
+2524,2518,2517,2515,2514,2511,2520,2515,2515,2520,2522,2521,2500,2478,2465,2452,2475,2494,2519,2513,
+2518,2524,2550,2519,2457,2413,2409,2497,2565,2458,2399,2379,2394,2429,2462,2495,2496,2469,2466,2469,
+2472,2500,2545,2582,2624,2669,2702,2680,2696,2688,2680,2656,2643,2649,2682,2722,2762,2809,2856,2898,
+2948,2977,3021,3059,3080,3102,3106,3130,3148,3154,3195,3232,3210,3203,3214,3233,3249,3260,3280,3299,
+3323,3326,3335,3351,3378,3378,3397,3413,3401,3418,3436,3461,3468,3461,3486,3506,3534,3543,3540,3542,
+3516,3533,3550,3554,3596,3636,3597,3607,3673,3723,3747,3722,3687,3672,3712,3763,3794,3797,3768,3701,
+3633,3752,3835,3911,3941,3971,4035,4076,4034,3986,4032,4054,4013,3978,3995,4041,4079,4118,4113,4071,
+4042,4042,4061,4090,4110,4130,4169,4210,4230,4243,4288,4318,4335,4353,4358,4384,4421,4457,4498,4524,
+4516,4530,4542,4557,4565,4542,4556,4568,4561,4551,4547,4544,4541,4536,4527,4509,4521,4516,4513,4518,
+4525,4535,4546,4543,4549,4542,4537,4544,4542,4530,4531,4528,4526,4518,4510,4496,4480,4477,4468,4467,
+4459,4448,4439,4434,4427,4426,4427,4424,4425,4426,4430,4423,4403,4392,4395,4386,4373,4359,4341,4324,
+4308,4291,4276,4261,4234,4205,4189,4167,4149,4121,4099,4083,4068,4055,4039,4015,3990,3963,3934,3904,
+3881,3857,3842,3840,3808,3768,3751,3744,3739,3728,3707,3672,3651,3627,3611,3607,3665,3767,3820,3851,
+3878,3926,3943,3891,3872,3855,3817,3767,3725,3686,3668,3663,3674,3699,3738,3793,3876,3953,3965,3985,
+3992,3952,3894,3838,3772,3725,3695,3677,3671,3677,3682,3689,3690,3685,3677,3665,3650,3630,3597,3560,
+3516,3421,3363,3357,3302,3265,3250,3221,3190,3159,3124,3087,3053,3025,2998,2974,2939,2920,2894,2866,
+2828,2794,2760,2726,2688,2651,2615,2576,2540,2503,2469,2438,2406,2370,2337,2301,2268,2235,2199,2158,
+2123,2088,2051,2010,1969,1931,1893,1854,1816,1781,1750,1710,1670,1630,1597,1553,1516,1474,1433,1398,
+1362,1321,1282,1250,1221,1187,1155,1122,1087,1046,1012,976,946,915,874,832,803,772,735,699,
+664,626,586,547,507,468,429,387,350,310,273,232,195,154,125,92,52,12,-28,-70,
+-114,-150,-188,-222,-254,-286,-320,-355,-389,-426,-463,-496,-526,-557,-589,-619,-653,-694,-738,-775,
+-807,-841,-873,-910,-946,-965,-986,-1017,-1057,-1094,-1119,-1169,-1192,-1226,-1246,-1293,-1313,-1335,-1355,-1382,
+-1408,-1441,-1463,-1495,-1511,-1533,-1571,-1610,-1636,-1658,-1681,-1710,-1736,-1760,-1783,-1803,-1817,-1831,-1884,-1896,
+-1906,-1924,-1946,-1969,-2004,-2005,-2016,-2027,-2038,-2066,-2082,-2096,-2110,-2123,-2130,-2134,-2139,-2152,-2165,-2174,
+-2183,-2204,-2243,-2250,-2257,-2243,-2264,-2263,-2279,-2282,-2288,-2301,-2316,-2307,-2341,-2344,-2336,-2343,-2361,-2351,
+-2334,-2336,-2364,-2343,-2346,-2363,-2337,-2337,-2341,-2330,-2320,-2315,-2299,-2294,-2285,-2273,-2263,-2248,-2236,-2225,
+-2216,-2205,-2199,-2193,-2185,-2176,-2171,-2155,-2141,-2125,-2113,-2094,-2080,-2066,-2054,-2044,-2032,-2021,-2014,-2002,
+-1991,-1983,-1972,-1957,-1939,-1924,-1912,-1898,-1882,-1870,-1856,-1843,-1835,-1822,-1809,-1795,-1785,-1778,-1780,-1786,
+-1800,-1842,-1850,-1853,-1845,-1816,-1813,-1811,-1796,-1775,-1762,-1757,-1746,-1737,-1726,-1723,-1719,-1727,-1719,-1711,
+-1709,-1708,-1708,-1736,-1784,-1802,-1782,-1780,-1787,-1801,-1804,-1809,-1800,-1780,-1763,-1746,-1730,-1680,-1653,-1691,
+-1727,-1717,-1703,-1716,-1734,-1740,-1727,-1709,-1700,-1695,-1690,-1696,-1707,-1696,-1691,-1710,-1713,-1709,-1709,-1716,
+-1719,-1719,-1712,-1705,-1723,-1718,-1700,-1708,-1707,-1693,-1691,-1677,-1637,-1614,-1602,-1579,-1546,-1542,-1510,-1479,
+-1430,-1417,-1425,-1404,-1382,-1370,-1353,-1330,-1309,-1298,-1287,-1248,-1177,-1115,-987,-908,-884,-928,-1043,-1111,
+-1216,-1272,-1258,-1230,-1222,-1173,-1042,-924,-887,-903,-933,-958,-992,-1022,-1045,-1042,-1039,-1044,-1057,-1066,
+-1065,-1064,-1055,-1042,-1035,-1039,-1036,-1036,-1040,-1054,-1067,-1076,-1086,-1094,-1091,-1101,-1120,-1141,-1174,-1208,
+-1245,-1278,-1305,-1325,-1335,-1362,-1399,-1444,-1467,-1462,-1467,-1482,-1515,-1562,-1584,-1586,-1592,-1621,-1653,-1682,
+-1705,-1722,-1730,-1739,-1749,-1752,-1754,-1752,-1753,-1754,-1750,-1732,-1697,-1634,-1608,-1620,-1660,-1733,-1826,-1908,
+-1963,-1979,-1998,-2017,-2026,-2034,-2034,-2027,-2018,-2013,-1988,-1971,-1961,-1945,-1938,-1938,-1929,-1918,-1908,-1905,
+-1907,-1914,-1919,-1926,-1931,-1941,-1945,-1942,-1943,-1936,-1930,-1924,-1918,-1914,-1914,-1915,-1917,-1914,-1914,-1919,
+-1916,-1908,-1898,-1888,-1879,-1882,-1886,-1887,-1885,-1882,-1877,-1877,-1865,-1851,-1852,-1844,-1832,-1825,-1824,-1837,
+-1866,-1863,-1893,-1909,-1901,-1893,-1881,-1870,-1867,-1862,-1856,-1855,-1854,-1863,-1864,-1864,-1864,-1865,-1864,-1858,
+-1857,-1848,-1841,-1826,-1813,-1790,-1773,-1752,-1748,-1740,-1727,-1723,-1706,-1694,-1689,-1687,-1682,-1676,-1658,-1673,
+-1671,-1662,-1660,-1637,-1633,-1641,-1638,-1627,-1611,-1607,-1604,-1604,-1620,-1654,-1705,-1718,-1713,-1714,-1708,-1692,
+-1682,-1684,-1668,-1641,-1643,-1653,-1661,-1681,-1728,-1770,-1793,-1807,-1812,-1812,-1810,-1812,-1811,-1809,-1789,-1788,
+-1775,-1761,-1756,-1744,-1721,-1701,-1703,-1727,-1752,-1761,-1770,-1770,-1772,-1769,-1774,-1767,-1784,-1796,-1797,-1803,
+-1803,-1803,-1812,-1803,-1791,-1800,-1793,-1788,-1786,-1779,-1760,-1748,-1738,-1727,-1717,-1709,-1699,-1687,-1669,-1658,
+-1634,-1607,-1586,-1573,-1556,-1535,-1513,-1491,-1475,-1457,-1430,-1416,-1399,-1380,-1357,-1326,-1316,-1303,-1280,-1261,
+-1252,-1244,-1234,-1220,-1208,-1197,-1192,-1180,-1173,-1162,-1152,-1145,-1133,-1118,-1106,-1095,-1085,-1074,-1066,-1054,
+-1043,-1034,-1027,-1019,-1004,-998,-985,-976,-970,-963,-960,-959,-957,-949,-944,-953,-954,-951,-953,-964,
+-952,-979,-995,-989,-978,-1001,-1003,-1013,-1017,-1029,-1041,-1058,-1070,-1082,-1088,-1087,-1087,-1078,-1074,-1077,
+-1069,-1061,-1061,-1064,-1068,-1063,-1068,-1071,-1074,-1071,-1077,-1079,-1075,-1074,-1075,-1076,-1071,-1064,-1058,-1058,
+-1054,-1050,-1049,-1053,-1047,-1038,-1029,-1018,-1013,-1001,-990,-975,-962,-947,-938,-932,-930,-930,-925,-915,
+-902,-881,-854,-828,-808,-801,-796,-787,-774,-764,-744,-730,-707,-715,-702,-696,-691,-691,-690,-687,
+-682,-677,-670,-661,-650,-641,-634,-623,-614,-594,-585,-573,-562,-549,-533,-516,-498,-474,-438,-416,
+-394,-368,-344,-334,-296,-271,-266,-254,-248,-225,-206,-184,-175,-144,-107,-92,-75,-58,-37,-25,
+-12,8,32,58,76,90,108,132,162,193,222,251,273,296,318,344,368,393,415,432,
+449,467,482,501,519,541,554,560,557,547,533,516,504,503,531,637,801,916,1029,1208,
+1345,1412,1387,1333,1315,1336,1432,1606,1651,1524,1453,1383,1346,1306,1271,1251,1248,1250,1218,1195,
+1165,1138,1122,1110,1115,1106,1099,1088,1076,1071,1058,1058,1058,1060,1046,1041,1044,1057,1082,1103,
+1118,1136,1156,1171,1184,1201,1228,1256,1284,1303,1310,1314,1292,1277,1274,1275,1285,1294,1301,1309,
+1308,1300,1303,1285,1277,1283,1260,1252,1237,1216,1190,1169,1144,1125,1108,1074,1033,994,953,919,
+890,859,831,810,788,759,715,666,625,592,568,541,516,497,482,466,447,425,408,396,
+373,347,322,305,299,296,295,293,293,295,300,293,279,276,281,303,330,352,369,382,
+401,437,479,522,562,604,633,690,744,748,745,755,782,778,738,722,701,677,647,596,
+535,483,447,424,409,420,433,436,438,442,454,467,479,495,523,586,658,623,631,650,
+700,704,641,648,684,717,741,761,776,790,807,826,857,888,917,947,981,1014,1043,1067,
+1085,1109,1176,1195,1191,1174,1175,1195,1204,1215,1288,1326,1306,1392,1481,1503,1507,1512,1514,1550,
+1578,1584,1605,1624,1632,1656,1683,1715,1737,1761,1794,1825,1847,1868,1882,1911,1944,1982,2003,2008,
+2034,2051,2074,2098,2118,2129,2145,2162,2178,2192,2206,2225,2238,2254,2273,2287,2300,2318,2346,2377,
+2406,2437,2470,2501,2532,2556,2576,2594,2612,2620,2626,2629,2630,2638,2650,2671,2690,2696,2706,2725,
+2728,2722,2727,2718,2738,2740,2728,2730,2732,2745,2747,2765,2787,2777,2735,2784,2773,2782,2775,2764,
+2746,2729,2708,2705,2694,2696,2684,2674,2673,2662,2649,2640,2633,2622,2624,2625,2593,2573,2564,2573,
+2575,2543,2517,2556,2535,2511,2507,2515,2516,2521,2526,2528,2522,2503,2484,2487,2512,2593,2607,2543,
+2492,2464,2462,2501,2582,2538,2479,2478,2474,2466,2455,2465,2491,2508,2500,2516,2526,2530,2530,2542,
+2560,2568,2594,2606,2640,2641,2658,2652,2659,2711,2750,2733,2698,2689,2700,2748,2837,2911,2960,2991,
+3007,3026,3046,3073,3090,3097,3121,3144,3177,3157,3171,3219,3217,3183,3224,3245,3238,3247,3288,3310,
+3342,3356,3376,3380,3383,3388,3384,3405,3422,3428,3431,3450,3469,3465,3487,3515,3536,3554,3548,3534,
+3531,3554,3557,3560,3591,3656,3625,3614,3667,3738,3768,3738,3703,3675,3696,3746,3772,3766,3733,3704,
+3610,3669,3767,3875,3931,3957,4023,4024,4040,3998,3997,4044,4027,3994,3976,3974,4003,4025,4038,4064,
+4046,4024,4040,4081,4115,4160,4203,4223,4238,4249,4267,4297,4342,4378,4381,4394,4422,4456,4488,4529,
+4563,4548,4564,4569,4576,4584,4585,4592,4601,4594,4596,4595,4590,4579,4565,4552,4545,4556,4545,4550,
+4569,4579,4584,4588,4585,4584,4576,4567,4561,4548,4537,4535,4524,4518,4512,4508,4500,4486,4468,4456,
+4445,4435,4429,4425,4422,4417,4416,4412,4414,4420,4424,4413,4396,4394,4398,4391,4381,4365,4350,4331,
+4313,4299,4279,4261,4233,4207,4189,4171,4165,4140,4100,4081,4075,4068,4053,4036,4013,3987,3959,3933,
+3905,3883,3868,3861,3847,3800,3779,3774,3774,3767,3746,3709,3681,3668,3650,3630,3612,3592,3590,3604,
+3648,3719,3764,3767,3762,3743,3753,3751,3740,3714,3682,3666,3661,3661,3662,3669,3671,3688,3711,3753,
+3831,3908,3894,3813,3740,3704,3698,3678,3677,3682,3696,3704,3708,3713,3713,3702,3690,3673,3654,3633,
+3600,3564,3529,3506,3475,3432,3327,3252,3217,3198,3182,3148,3105,3064,3028,3001,2978,2954,2916,2893,
+2866,2841,2804,2772,2736,2701,2669,2633,2598,2565,2527,2495,2463,2428,2390,2355,2324,2284,2247,2212,
+2173,2131,2095,2055,2016,1979,1941,1901,1865,1824,1786,1750,1714,1678,1641,1600,1564,1528,1491,1451,
+1413,1374,1337,1303,1269,1237,1206,1176,1135,1100,1064,1028,998,955,917,886,857,823,788,754,
+715,679,642,597,560,534,484,441,404,367,328,289,249,206,175,146,109,68,28,-12,
+-55,-92,-128,-165,-200,-229,-262,-298,-336,-371,-406,-435,-468,-500,-534,-567,-597,-626,-665,-711,
+-745,-783,-820,-855,-888,-914,-935,-963,-1000,-1039,-1064,-1107,-1139,-1156,-1200,-1224,-1249,-1275,-1301,-1322,
+-1339,-1379,-1414,-1444,-1475,-1494,-1513,-1548,-1575,-1596,-1625,-1653,-1670,-1690,-1711,-1735,-1763,-1795,-1824,-1843,
+-1851,-1885,-1916,-1925,-1945,-1979,-1985,-2004,-2016,-2035,-2055,-2073,-2079,-2083,-2097,-2113,-2125,-2132,-2142,-2150,
+-2162,-2156,-2182,-2217,-2224,-2216,-2229,-2256,-2260,-2272,-2284,-2293,-2298,-2289,-2320,-2339,-2333,-2323,-2330,-2342,
+-2343,-2324,-2337,-2364,-2356,-2363,-2373,-2342,-2358,-2352,-2341,-2351,-2321,-2297,-2286,-2270,-2261,-2249,-2243,-2240,
+-2228,-2219,-2209,-2202,-2191,-2182,-2169,-2158,-2152,-2135,-2127,-2118,-2108,-2094,-2083,-2070,-2060,-2047,-2035,-2025,
+-2011,-1998,-1989,-1976,-1967,-1952,-1944,-1934,-1923,-1909,-1899,-1887,-1867,-1863,-1854,-1841,-1831,-1821,-1814,-1809,
+-1819,-1839,-1862,-1860,-1859,-1865,-1848,-1831,-1817,-1810,-1795,-1775,-1770,-1755,-1748,-1731,-1727,-1729,-1735,-1740,
+-1724,-1721,-1712,-1712,-1723,-1769,-1808,-1790,-1792,-1785,-1797,-1810,-1815,-1803,-1799,-1790,-1778,-1763,-1739,-1721,
+-1723,-1741,-1728,-1712,-1740,-1767,-1762,-1749,-1741,-1730,-1725,-1722,-1719,-1717,-1715,-1712,-1716,-1725,-1728,-1735,
+-1731,-1720,-1729,-1730,-1735,-1744,-1751,-1735,-1733,-1739,-1723,-1705,-1695,-1675,-1646,-1607,-1594,-1567,-1548,-1544,
+-1528,-1505,-1483,-1466,-1447,-1417,-1399,-1385,-1363,-1326,-1320,-1266,-1214,-1120,-1029,-952,-929,-944,-1030,-1108,
+-1244,-1319,-1341,-1337,-1299,-1268,-1135,-991,-942,-945,-964,-990,-1018,-1048,-1070,-1089,-1100,-1094,-1090,-1093,
+-1106,-1111,-1108,-1102,-1101,-1109,-1116,-1117,-1130,-1140,-1156,-1172,-1186,-1198,-1193,-1183,-1188,-1208,-1239,-1280,
+-1320,-1354,-1386,-1409,-1433,-1455,-1491,-1537,-1598,-1627,-1629,-1643,-1662,-1698,-1732,-1745,-1757,-1764,-1777,-1796,
+-1812,-1821,-1829,-1844,-1857,-1858,-1862,-1863,-1861,-1860,-1855,-1847,-1847,-1816,-1786,-1790,-1812,-1853,-1904,-1952,
+-2010,-2040,-2040,-2064,-2076,-2088,-2098,-2101,-2100,-2096,-2083,-2071,-2055,-2031,-2013,-2004,-1996,-1980,-1970,-1965,
+-1963,-1963,-1962,-1962,-1970,-1977,-1989,-1997,-2003,-2004,-1998,-1990,-1985,-1979,-1975,-1976,-1976,-1979,-1980,-1986,
+-1987,-1987,-1977,-1968,-1960,-1956,-1951,-1947,-1949,-1947,-1934,-1923,-1922,-1917,-1907,-1907,-1901,-1892,-1882,-1872,
+-1857,-1873,-1904,-1914,-1944,-1983,-1987,-1974,-1960,-1946,-1923,-1908,-1901,-1900,-1903,-1903,-1906,-1907,-1896,-1905,
+-1903,-1901,-1895,-1879,-1870,-1856,-1842,-1832,-1815,-1808,-1795,-1780,-1766,-1765,-1751,-1740,-1731,-1720,-1724,-1720,
+-1702,-1698,-1680,-1692,-1687,-1675,-1675,-1681,-1672,-1667,-1662,-1655,-1646,-1624,-1617,-1648,-1700,-1736,-1739,-1731,
+-1742,-1737,-1721,-1712,-1704,-1694,-1683,-1661,-1666,-1673,-1699,-1737,-1800,-1836,-1842,-1849,-1845,-1840,-1841,-1843,
+-1839,-1830,-1796,-1773,-1763,-1714,-1660,-1664,-1712,-1751,-1775,-1794,-1801,-1802,-1802,-1795,-1790,-1789,-1799,-1805,
+-1808,-1818,-1830,-1822,-1807,-1798,-1788,-1787,-1784,-1785,-1790,-1781,-1777,-1767,-1748,-1737,-1727,-1715,-1669,-1678,
+-1669,-1651,-1637,-1610,-1580,-1561,-1539,-1525,-1502,-1479,-1459,-1451,-1431,-1412,-1399,-1385,-1362,-1340,-1321,-1299,
+-1278,-1264,-1253,-1236,-1220,-1208,-1195,-1184,-1173,-1163,-1152,-1143,-1135,-1121,-1113,-1104,-1093,-1080,-1071,-1062,
+-1052,-1039,-1030,-1025,-1023,-1014,-1006,-997,-989,-984,-976,-971,-967,-965,-959,-958,-968,-969,-959,-961,
+-964,-987,-998,-1009,-1006,-1003,-1002,-1003,-1002,-1008,-1017,-1028,-1043,-1053,-1064,-1076,-1087,-1091,-1093,-1097,
+-1098,-1097,-1095,-1097,-1096,-1086,-1078,-1073,-1078,-1077,-1076,-1079,-1078,-1078,-1086,-1090,-1094,-1084,-1080,-1079,
+-1076,-1071,-1070,-1057,-1055,-1049,-1040,-1038,-1028,-1026,-1018,-1006,-999,-985,-970,-957,-947,-942,-937,-928,
+-924,-910,-886,-867,-839,-815,-796,-782,-771,-760,-744,-739,-738,-736,-732,-723,-716,-711,-706,-705,
+-705,-702,-699,-691,-682,-668,-658,-649,-641,-630,-625,-608,-590,-575,-566,-555,-537,-521,-498,-470,
+-443,-419,-398,-378,-358,-330,-302,-278,-275,-263,-246,-225,-210,-189,-156,-131,-120,-95,-64,-59,
+-47,-28,-2,26,31,55,75,95,119,144,174,204,231,256,282,306,331,355,380,403,
+422,438,454,473,496,522,542,555,556,551,538,522,508,490,484,501,593,751,891,1030,
+1171,1303,1380,1366,1334,1318,1346,1424,1509,1612,1595,1469,1409,1418,1402,1363,1298,1239,1207,1186,
+1164,1144,1122,1109,1110,1106,1096,1064,1046,1048,1051,1047,1048,1037,1033,1020,1025,1036,1064,1096,
+1121,1145,1171,1191,1211,1229,1254,1276,1299,1320,1331,1335,1311,1256,1234,1231,1239,1254,1274,1296,
+1311,1326,1336,1335,1330,1323,1320,1309,1314,1299,1280,1258,1233,1205,1175,1148,1118,1080,1036,991,
+947,914,891,871,852,840,833,816,787,759,733,704,670,634,601,584,564,544,528,511,
+489,470,453,436,419,406,397,392,388,385,381,384,383,376,361,368,400,446,486,517,
+527,543,575,610,648,680,708,733,780,820,835,827,815,815,807,799,786,761,732,691,
+644,592,561,536,504,502,507,511,513,516,525,536,554,571,588,606,628,651,667,718,
+805,810,820,785,761,746,765,786,805,821,841,862,884,921,953,981,1005,1031,1056,1077,
+1095,1119,1145,1185,1210,1191,1206,1226,1238,1242,1250,1316,1375,1347,1413,1496,1538,1575,1603,1605,
+1611,1604,1626,1645,1651,1669,1683,1704,1728,1745,1761,1779,1800,1823,1846,1866,1888,1906,1930,1975,
+1996,2013,2029,2045,2067,2079,2088,2098,2116,2131,2150,2172,2194,2217,2242,2263,2282,2310,2337,2368,
+2402,2429,2459,2488,2515,2533,2554,2558,2568,2572,2592,2608,2615,2629,2637,2662,2674,2693,2701,2706,
+2707,2695,2695,2696,2719,2722,2730,2744,2762,2777,2800,2811,2803,2804,2788,2772,2782,2771,2793,2783,
+2769,2754,2751,2745,2742,2729,2720,2697,2684,2684,2679,2677,2671,2665,2662,2660,2661,2667,2645,2613,
+2606,2626,2630,2556,2657,2656,2579,2520,2510,2517,2520,2530,2529,2529,2533,2521,2537,2580,2629,2651,
+2598,2491,2473,2493,2505,2516,2503,2484,2480,2498,2508,2527,2541,2545,2550,2544,2536,2543,2557,2565,
+2569,2570,2591,2630,2641,2664,2690,2712,2716,2713,2706,2687,2690,2700,2728,2765,2845,2970,3040,3060,
+3054,3060,3059,3079,3102,3131,3142,3169,3201,3200,3211,3220,3212,3213,3218,3239,3249,3260,3275,3306,
+3339,3400,3420,3419,3421,3423,3402,3399,3413,3443,3456,3462,3456,3464,3487,3516,3553,3589,3577,3555,
+3556,3567,3574,3571,3601,3658,3654,3639,3653,3704,3750,3765,3719,3698,3706,3721,3732,3728,3723,3718,
+3606,3579,3688,3790,3847,3880,3974,4008,4020,3993,3959,3971,3993,3995,4006,4000,3989,4003,3977,3977,
+4018,4043,4051,4057,4079,4114,4152,4195,4233,4233,4249,4280,4332,4357,4407,4409,4420,4450,4481,4520,
+4555,4565,4599,4620,4608,4617,4621,4625,4630,4630,4632,4641,4646,4645,4637,4623,4607,4605,4605,4606,
+4608,4625,4632,4632,4630,4624,4618,4612,4600,4586,4570,4552,4541,4532,4526,4518,4508,4498,4488,4472,
+4457,4444,4431,4423,4420,4416,4414,4412,4410,4417,4419,4404,4393,4396,4397,4391,4383,4370,4356,4338,
+4317,4298,4281,4260,4234,4207,4187,4164,4170,4197,4133,4096,4082,4071,4059,4045,4024,4001,3976,3949,
+3924,3906,3886,3874,3861,3829,3806,3793,3799,3797,3775,3743,3722,3708,3691,3681,3666,3650,3634,3609,
+3589,3583,3580,3589,3609,3639,3686,3721,3722,3707,3681,3657,3647,3653,3660,3655,3641,3616,3588,3570,
+3576,3608,3659,3694,3726,3756,3726,3710,3701,3706,3715,3720,3726,3730,3728,3729,3717,3702,3688,3673,
+3655,3630,3602,3587,3581,3566,3484,3400,3290,3215,3196,3197,3168,3127,3083,3042,3009,2981,2955,2928,
+2896,2872,2847,2819,2787,2755,2724,2690,2656,2622,2586,2546,2515,2485,2447,2413,2372,2334,2292,2254,
+2217,2181,2139,2098,2061,2020,1985,1952,1912,1867,1833,1797,1760,1723,1685,1650,1611,1574,1538,1500,
+1469,1430,1392,1356,1322,1289,1256,1221,1188,1138,1106,1074,1049,1018,972,941,909,874,843,808,
+770,733,693,652,608,566,528,493,458,423,386,344,304,260,228,198,161,124,82,44,
+5,-33,-74,-105,-139,-176,-210,-244,-279,-312,-346,-378,-410,-446,-477,-508,-539,-572,-609,-654,
+-689,-727,-758,-792,-823,-857,-877,-908,-946,-984,-1015,-1041,-1085,-1114,-1128,-1169,-1197,-1226,-1253,-1268,
+-1289,-1326,-1353,-1386,-1414,-1442,-1471,-1489,-1527,-1552,-1576,-1596,-1616,-1635,-1666,-1694,-1721,-1749,-1775,-1794,
+-1809,-1832,-1862,-1885,-1906,-1949,-1953,-1973,-1973,-1991,-2011,-2033,-2042,-2062,-2071,-2073,-2081,-2097,-2108,-2117,
+-2134,-2150,-2163,-2183,-2191,-2207,-2200,-2219,-2237,-2250,-2266,-2274,-2280,-2289,-2292,-2305,-2318,-2321,-2316,-2335,
+-2349,-2334,-2338,-2352,-2348,-2341,-2360,-2362,-2350,-2370,-2358,-2336,-2339,-2303,-2287,-2281,-2274,-2257,-2252,-2239,
+-2230,-2224,-2215,-2206,-2204,-2198,-2188,-2179,-2169,-2156,-2142,-2137,-2123,-2108,-2094,-2083,-2076,-2067,-2056,-2048,
+-2037,-2021,-2017,-2007,-1996,-1982,-1973,-1963,-1951,-1937,-1923,-1907,-1898,-1884,-1881,-1871,-1858,-1848,-1835,-1827,
+-1828,-1821,-1791,-1842,-1857,-1872,-1880,-1854,-1837,-1830,-1816,-1800,-1788,-1775,-1768,-1762,-1751,-1747,-1748,-1745,
+-1747,-1738,-1728,-1721,-1717,-1719,-1764,-1814,-1825,-1823,-1806,-1814,-1818,-1825,-1821,-1822,-1814,-1796,-1774,-1759,
+-1738,-1736,-1748,-1760,-1768,-1790,-1813,-1803,-1789,-1773,-1764,-1766,-1760,-1747,-1740,-1736,-1743,-1739,-1740,-1739,
+-1742,-1746,-1738,-1745,-1757,-1761,-1761,-1765,-1772,-1756,-1757,-1759,-1733,-1714,-1691,-1669,-1644,-1621,-1611,-1574,
+-1531,-1535,-1547,-1525,-1494,-1471,-1447,-1441,-1420,-1364,-1313,-1300,-1223,-1108,-1081,-1056,-1053,-1034,-1063,-1094,
+-1236,-1331,-1284,-1310,-1370,-1365,-1317,-1130,-994,-1005,-1033,-1055,-1079,-1096,-1099,-1101,-1112,-1118,-1126,-1137,
+-1151,-1161,-1169,-1177,-1186,-1196,-1207,-1209,-1216,-1225,-1236,-1249,-1270,-1288,-1295,-1282,-1275,-1280,-1299,-1335,
+-1372,-1405,-1437,-1464,-1489,-1521,-1569,-1613,-1677,-1721,-1762,-1793,-1815,-1830,-1848,-1865,-1878,-1890,-1903,-1912,
+-1925,-1935,-1937,-1943,-1949,-1957,-1964,-1968,-1972,-1977,-1974,-1969,-1963,-1963,-1962,-1965,-1972,-1991,-2015,-2045,
+-2071,-2108,-2145,-2141,-2150,-2170,-2166,-2165,-2171,-2177,-2175,-2158,-2144,-2125,-2107,-2090,-2080,-2063,-2054,-2038,
+-2028,-2027,-2024,-2026,-2030,-2027,-2028,-2039,-2052,-2061,-2062,-2061,-2054,-2047,-2043,-2042,-2040,-2041,-2042,-2047,
+-2048,-2050,-2050,-2045,-2037,-2027,-2022,-2013,-2009,-2006,-1995,-1984,-1973,-1966,-1960,-1951,-1953,-1957,-1945,-1927,
+-1925,-1916,-1914,-1921,-1932,-1954,-1982,-2008,-2038,-2037,-2016,-1986,-1961,-1951,-1953,-1953,-1948,-1942,-1944,-1939,
+-1937,-1937,-1924,-1923,-1920,-1908,-1895,-1890,-1875,-1868,-1859,-1850,-1841,-1818,-1807,-1803,-1795,-1785,-1769,-1757,
+-1752,-1746,-1738,-1717,-1718,-1720,-1721,-1722,-1713,-1711,-1717,-1711,-1704,-1696,-1679,-1662,-1653,-1687,-1702,-1757,
+-1797,-1780,-1772,-1774,-1763,-1757,-1746,-1725,-1705,-1697,-1687,-1686,-1693,-1724,-1738,-1765,-1841,-1858,-1843,-1839,
+-1830,-1836,-1835,-1818,-1810,-1799,-1783,-1758,-1750,-1754,-1774,-1799,-1816,-1823,-1827,-1827,-1827,-1821,-1823,-1818,
+-1814,-1818,-1818,-1823,-1833,-1824,-1821,-1821,-1808,-1803,-1800,-1794,-1790,-1783,-1777,-1767,-1751,-1740,-1722,-1705,
+-1690,-1676,-1655,-1639,-1624,-1603,-1581,-1558,-1536,-1517,-1502,-1485,-1464,-1444,-1429,-1411,-1389,-1377,-1372,-1348,
+-1328,-1311,-1287,-1271,-1255,-1239,-1224,-1208,-1192,-1177,-1160,-1149,-1137,-1128,-1121,-1110,-1100,-1093,-1083,-1073,
+-1063,-1055,-1042,-1035,-1028,-1021,-1009,-999,-994,-990,-987,-983,-981,-980,-974,-971,-977,-981,-986,-996,
+-999,-1003,-1007,-1010,-1011,-1007,-1009,-1013,-1012,-1012,-1015,-1019,-1025,-1038,-1043,-1049,-1058,-1067,-1073,-1075,
+-1076,-1077,-1079,-1083,-1088,-1084,-1087,-1089,-1082,-1088,-1099,-1100,-1102,-1107,-1101,-1101,-1099,-1096,-1091,-1083,
+-1081,-1078,-1077,-1076,-1070,-1042,-1050,-1045,-1020,-1031,-1033,-1028,-1018,-1016,-1012,-1000,-989,-976,-965,-955,
+-943,-928,-912,-888,-870,-849,-827,-807,-792,-778,-764,-746,-741,-735,-736,-737,-735,-729,-723,-721,
+-718,-721,-719,-712,-705,-698,-684,-672,-666,-660,-650,-634,-624,-609,-595,-585,-572,-551,-536,-515,
+-490,-466,-436,-410,-407,-389,-364,-331,-319,-301,-282,-269,-253,-236,-214,-183,-154,-141,-116,-95,
+-90,-70,-44,-23,-14,13,37,63,82,105,133,163,192,217,238,258,284,313,337,361,
+384,409,427,447,473,500,523,544,555,557,551,537,522,502,488,480,483,545,703,870,
+1002,1140,1271,1355,1376,1364,1367,1382,1432,1511,1632,1621,1496,1429,1409,1394,1343,1274,1189,1140,
+1123,1112,1100,1079,1067,1077,1079,1064,1043,1032,1035,1038,1044,1039,1029,1024,1014,1012,1034,1056,
+1095,1125,1162,1190,1215,1242,1267,1293,1316,1337,1354,1357,1329,1276,1222,1191,1183,1195,1215,1240,
+1266,1292,1320,1341,1351,1352,1349,1338,1337,1336,1325,1311,1295,1276,1256,1230,1194,1153,1113,1076,
+1030,988,959,943,928,911,906,912,908,889,869,842,808,760,717,680,654,634,615,591,
+567,543,525,515,503,492,487,488,491,498,497,492,488,486,478,469,474,501,530,562,
+598,620,637,656,676,703,741,776,818,849,865,895,904,878,857,828,799,769,738,710,
+689,653,618,584,576,580,584,588,586,585,591,603,616,636,658,681,698,706,714,724,
+750,818,802,864,907,828,802,849,888,869,878,896,919,943,981,1023,1048,1066,1088,1113,
+1131,1144,1161,1182,1193,1208,1232,1251,1265,1280,1283,1291,1342,1370,1402,1465,1508,1548,1592,1620,
+1643,1662,1666,1654,1661,1681,1682,1705,1731,1763,1785,1793,1807,1827,1841,1858,1882,1901,1912,1935,
+1952,1970,1987,2000,2025,2049,2071,2093,2108,2135,2153,2176,2198,2218,2239,2261,2286,2304,2331,2354,
+2372,2399,2421,2446,2459,2480,2496,2507,2537,2551,2567,2573,2583,2595,2606,2619,2635,2643,2656,2680,
+2696,2694,2697,2700,2703,2712,2710,2714,2727,2738,2744,2744,2756,2749,2763,2782,2808,2807,2793,2801,
+2809,2800,2778,2763,2754,2754,2743,2733,2720,2709,2702,2699,2692,2693,2699,2697,2675,2668,2667,2671,
+2664,2651,2667,2646,2657,2640,2637,2655,2666,2620,2551,2533,2555,2585,2582,2620,2583,2518,2534,2515,
+2530,2483,2455,2449,2466,2472,2479,2497,2521,2530,2530,2527,2534,2546,2555,2572,2570,2558,2551,2543,
+2558,2575,2595,2627,2649,2672,2696,2711,2715,2718,2731,2737,2727,2709,2719,2777,2869,2991,3070,3069,
+3064,3082,3091,3080,3079,3127,3178,3201,3191,3185,3206,3250,3257,3249,3250,3281,3298,3297,3304,3331,
+3360,3386,3409,3409,3397,3399,3415,3426,3426,3451,3461,3448,3445,3465,3490,3524,3558,3577,3568,3558,
+3561,3574,3578,3578,3601,3657,3666,3650,3662,3693,3743,3780,3752,3709,3722,3735,3757,3751,3734,3706,
+3593,3528,3645,3692,3743,3793,3906,3956,3970,3954,3942,3968,3951,3939,3939,3941,3958,3971,3979,3968,
+3971,3999,4049,4071,4069,4092,4136,4160,4189,4224,4246,4264,4296,4338,4386,4414,4426,4449,4478,4511,
+4542,4570,4591,4625,4634,4629,4649,4656,4655,4652,4659,4667,4678,4689,4695,4694,4689,4683,4673,4663,
+4670,4683,4692,4688,4680,4669,4660,4652,4640,4630,4614,4596,4581,4567,4557,4544,4532,4519,4503,4492,
+4481,4469,4457,4443,4433,4423,4419,4416,4414,4414,4416,4397,4392,4396,4396,4393,4388,4375,4363,4347,
+4328,4308,4289,4272,4258,4277,4279,4203,4173,4156,4119,4103,4095,4086,4075,4060,4037,4016,3992,3969,
+3948,3923,3899,3882,3867,3849,3821,3798,3806,3811,3796,3768,3748,3738,3728,3718,3707,3695,3677,3659,
+3642,3625,3621,3622,3625,3638,3660,3685,3691,3685,3665,3653,3649,3646,3639,3647,3646,3624,3588,3547,
+3517,3505,3512,3547,3624,3772,3901,3902,3856,3811,3771,3780,3801,3785,3771,3767,3763,3751,3733,3715,
+3702,3681,3660,3626,3599,3586,3580,3529,3435,3361,3260,3184,3190,3181,3147,3104,3064,3022,2988,2958,
+2931,2904,2881,2855,2829,2802,2771,2751,2713,2678,2642,2604,2562,2526,2489,2455,2418,2379,2340,2301,
+2258,2218,2181,2140,2103,2063,2030,1990,1949,1914,1876,1841,1806,1772,1736,1699,1660,1622,1584,1548,
+1509,1471,1434,1394,1357,1324,1298,1268,1230,1196,1162,1119,1089,1055,1015,983,960,929,891,852,
+817,781,741,696,665,621,586,553,513,477,436,392,353,313,283,251,216,174,135,98,
+62,24,-12,-50,-85,-121,-152,-185,-219,-255,-291,-326,-358,-388,-419,-448,-478,-512,-549,-594,
+-637,-667,-705,-731,-761,-797,-820,-845,-876,-921,-968,-993,-1026,-1067,-1088,-1109,-1142,-1174,-1204,-1229,
+-1249,-1265,-1300,-1329,-1356,-1384,-1407,-1430,-1464,-1497,-1520,-1546,-1570,-1596,-1619,-1643,-1672,-1704,-1710,-1732,
+-1766,-1786,-1818,-1846,-1871,-1910,-1915,-1941,-1949,-1961,-1972,-1983,-2004,-2021,-2030,-2040,-2049,-2066,-2076,-2086,
+-2093,-2125,-2142,-2157,-2182,-2190,-2181,-2178,-2212,-2230,-2240,-2250,-2251,-2266,-2294,-2296,-2310,-2310,-2316,-2323,
+-2332,-2332,-2340,-2351,-2333,-2331,-2349,-2376,-2365,-2372,-2377,-2363,-2345,-2333,-2312,-2299,-2285,-2274,-2264,-2240,
+-2239,-2231,-2222,-2214,-2205,-2198,-2192,-2186,-2178,-2169,-2159,-2146,-2133,-2126,-2116,-2103,-2096,-2079,-2070,-2064,
+-2054,-2046,-2038,-2025,-2015,-2014,-2006,-1979,-1983,-1972,-1957,-1943,-1930,-1921,-1909,-1891,-1888,-1880,-1863,-1865,
+-1847,-1854,-1839,-1809,-1838,-1860,-1876,-1883,-1873,-1854,-1839,-1822,-1813,-1803,-1792,-1783,-1775,-1759,-1758,-1760,
+-1764,-1756,-1757,-1740,-1734,-1727,-1725,-1757,-1811,-1838,-1841,-1823,-1829,-1837,-1850,-1839,-1833,-1811,-1797,-1783,
+-1771,-1760,-1752,-1763,-1801,-1824,-1830,-1828,-1820,-1813,-1792,-1782,-1778,-1779,-1772,-1772,-1767,-1758,-1764,-1769,
+-1773,-1772,-1769,-1765,-1765,-1767,-1776,-1778,-1773,-1776,-1781,-1776,-1763,-1753,-1733,-1709,-1683,-1667,-1648,-1625,
+-1609,-1571,-1555,-1569,-1549,-1516,-1477,-1452,-1444,-1409,-1334,-1280,-1202,-1089,-1151,-1198,-1188,-1202,-1252,-1346,
+-1409,-1432,-1411,-1290,-1343,-1426,-1444,-1368,-1210,-1124,-1112,-1133,-1157,-1173,-1176,-1174,-1171,-1176,-1179,-1194,
+-1204,-1216,-1233,-1256,-1272,-1275,-1290,-1307,-1314,-1315,-1326,-1337,-1344,-1359,-1372,-1371,-1374,-1379,-1381,-1398,
+-1423,-1452,-1483,-1513,-1537,-1568,-1606,-1647,-1711,-1808,-1857,-1885,-1904,-1920,-1938,-1958,-1978,-1997,-2012,-2022,
+-2028,-2036,-2041,-2049,-2053,-2057,-2061,-2064,-2068,-2076,-2089,-2090,-2089,-2088,-2091,-2098,-2103,-2114,-2127,-2145,
+-2164,-2184,-2209,-2238,-2256,-2250,-2249,-2259,-2253,-2260,-2261,-2244,-2226,-2216,-2198,-2179,-2169,-2156,-2143,-2127,
+-2120,-2107,-2102,-2097,-2096,-2097,-2086,-2094,-2100,-2107,-2114,-2123,-2129,-2123,-2119,-2115,-2111,-2110,-2109,-2110,
+-2104,-2098,-2099,-2100,-2105,-2104,-2099,-2093,-2081,-2064,-2049,-2041,-2053,-2039,-2021,-2017,-2009,-2005,-2004,-1999,
+-1986,-1976,-1969,-1962,-1953,-1949,-1945,-1963,-1993,-2013,-2058,-2085,-2078,-2055,-2031,-2017,-2000,-1990,-1973,-1963,
+-1965,-1960,-1954,-1951,-1943,-1941,-1941,-1927,-1930,-1928,-1914,-1900,-1888,-1887,-1878,-1872,-1850,-1838,-1839,-1820,
+-1801,-1791,-1791,-1792,-1780,-1772,-1752,-1748,-1751,-1754,-1739,-1743,-1744,-1739,-1739,-1737,-1724,-1720,-1702,-1691,
+-1713,-1745,-1772,-1782,-1774,-1784,-1798,-1798,-1789,-1755,-1715,-1706,-1697,-1703,-1714,-1710,-1712,-1725,-1780,-1831,
+-1860,-1870,-1869,-1859,-1855,-1850,-1842,-1835,-1826,-1815,-1813,-1822,-1825,-1832,-1836,-1832,-1832,-1843,-1848,-1846,
+-1843,-1842,-1833,-1830,-1830,-1831,-1835,-1836,-1838,-1832,-1828,-1820,-1812,-1799,-1789,-1782,-1774,-1764,-1752,-1735,
+-1715,-1700,-1687,-1672,-1650,-1625,-1608,-1588,-1569,-1550,-1531,-1517,-1501,-1487,-1465,-1447,-1426,-1406,-1387,-1366,
+-1358,-1343,-1325,-1301,-1278,-1264,-1255,-1243,-1227,-1214,-1197,-1182,-1165,-1149,-1139,-1127,-1115,-1106,-1094,-1085,
+-1075,-1067,-1057,-1045,-1037,-1028,-1019,-1010,-1001,-997,-993,-993,-992,-993,-989,-984,-989,-990,-994,-1002,
+-1000,-1005,-1008,-1009,-1011,-1016,-1025,-1025,-1029,-1032,-1032,-1035,-1038,-1041,-1042,-1044,-1051,-1060,-1074,-1079,
+-1080,-1075,-1073,-1072,-1072,-1074,-1075,-1073,-1076,-1076,-1072,-1074,-1076,-1077,-1079,-1084,-1091,-1100,-1108,-1104,
+-1102,-1094,-1093,-1099,-1100,-1090,-1079,-1077,-1067,-1051,-1045,-1034,-1026,-1022,-1017,-1021,-1021,-1016,-1004,-994,
+-984,-966,-949,-928,-907,-889,-867,-848,-817,-811,-799,-785,-774,-763,-752,-749,-749,-747,-742,-738,
+-737,-737,-741,-740,-737,-729,-719,-706,-695,-685,-678,-673,-663,-646,-634,-615,-608,-589,-572,-554,
+-532,-508,-484,-459,-437,-424,-391,-378,-363,-337,-330,-312,-294,-277,-261,-233,-202,-184,-164,-135,
+-119,-107,-85,-60,-37,-20,0,27,48,68,94,120,149,175,198,217,238,257,280,306,
+332,356,391,415,436,469,499,525,543,551,554,552,543,529,511,494,486,484,516,639,
+792,964,1114,1244,1346,1378,1371,1365,1372,1405,1471,1592,1491,1419,1309,1276,1262,1240,1191,1148,
+1112,1081,1059,1045,1045,1047,1047,1038,1018,1011,1014,1026,1033,1032,1032,1024,1016,1012,1016,1029,
+1051,1087,1137,1176,1204,1232,1259,1281,1304,1330,1355,1378,1368,1337,1293,1250,1216,1194,1182,1189,
+1209,1234,1266,1300,1328,1339,1341,1339,1333,1324,1318,1304,1306,1296,1289,1275,1255,1230,1193,1147,
+1106,1069,1035,1020,1008,987,972,969,976,971,946,914,884,858,819,776,737,710,687,664,
+640,612,583,562,555,556,552,555,563,581,599,606,603,592,576,558,544,540,537,543,
+560,575,586,598,615,627,643,678,722,772,820,863,901,914,899,873,851,808,761,713,
+690,687,662,624,620,633,648,657,665,667,669,673,685,698,718,746,778,797,800,799,
+794,788,783,783,799,814,823,886,1008,1066,1057,1036,1014,1003,1015,1047,1094,1122,1134,1150,
+1175,1199,1202,1216,1231,1254,1275,1308,1333,1325,1331,1328,1327,1358,1404,1458,1502,1534,1589,1625,
+1642,1655,1673,1707,1726,1725,1717,1715,1710,1728,1761,1783,1793,1802,1815,1842,1858,1882,1900,1922,
+1951,1970,1986,2004,2018,2039,2057,2085,2108,2112,2136,2171,2190,2210,2229,2257,2276,2302,2319,2337,
+2370,2389,2399,2426,2449,2457,2470,2482,2490,2493,2510,2528,2542,2556,2581,2606,2632,2619,2619,2627,
+2653,2671,2674,2671,2682,2688,2692,2688,2688,2684,2694,2709,2727,2743,2754,2778,2781,2798,2808,2813,
+2827,2823,2812,2795,2780,2768,2765,2760,2750,2752,2729,2722,2721,2731,2714,2698,2690,2680,2672,2669,
+2674,2677,2654,2637,2630,2640,2662,2663,2666,2648,2644,2625,2552,2535,2547,2547,2535,2518,2497,2487,
+2491,2525,2550,2502,2486,2516,2515,2511,2526,2537,2546,2551,2553,2560,2564,2565,2569,2562,2564,2560,
+2582,2597,2607,2612,2615,2633,2668,2690,2710,2718,2730,2754,2797,2808,2794,2844,2935,3034,3064,3069,
+3091,3135,3142,3141,3108,3136,3193,3235,3240,3216,3231,3282,3308,3290,3267,3283,3305,3323,3326,3338,
+3368,3398,3409,3407,3402,3419,3428,3432,3447,3451,3453,3449,3466,3482,3506,3540,3549,3542,3555,3575,
+3583,3574,3596,3598,3615,3652,3654,3648,3661,3700,3762,3796,3754,3732,3739,3760,3782,3797,3774,3745,
+3676,3539,3616,3649,3688,3753,3874,3929,3955,3968,3926,3916,3945,3946,3938,3928,3927,3932,3936,3944,
+3956,3950,3979,4028,4058,4069,4104,4137,4169,4183,4241,4249,4269,4306,4361,4416,4426,4444,4469,4496,
+4525,4560,4588,4611,4625,4632,4652,4671,4674,4682,4691,4699,4704,4715,4724,4734,4740,4738,4734,4729,
+4725,4728,4733,4740,4735,4719,4704,4690,4681,4673,4664,4653,4636,4622,4606,4590,4571,4553,4536,4521,
+4510,4498,4488,4478,4464,4449,4435,4429,4422,4413,4409,4398,4395,4401,4403,4402,4397,4391,4377,4364,
+4347,4326,4305,4297,4333,4389,4337,4279,4228,4171,4121,4106,4097,4093,4086,4075,4055,4032,4006,3983,
+3959,3931,3899,3880,3866,3854,3821,3790,3795,3803,3798,3779,3758,3755,3747,3738,3726,3715,3701,3687,
+3672,3658,3652,3653,3651,3656,3667,3680,3694,3693,3673,3651,3635,3644,3643,3640,3639,3631,3606,3564,
+3519,3485,3463,3473,3524,3629,3767,3921,4037,4033,3953,3856,3851,3913,3879,3810,3819,3835,3827,3785,
+3759,3730,3705,3684,3650,3610,3593,3602,3613,3567,3414,3285,3201,3160,3171,3164,3131,3086,3041,3002,
+2971,2944,2916,2890,2868,2840,2810,2785,2760,2727,2690,2649,2610,2570,2534,2496,2457,2422,2381,2342,
+2301,2258,2217,2177,2133,2095,2060,2024,1985,1954,1919,1885,1850,1816,1778,1742,1702,1667,1623,1588,
+1553,1513,1474,1433,1396,1368,1344,1314,1284,1244,1199,1161,1130,1121,1087,1037,1002,969,938,907,
+861,817,787,742,703,670,634,600,560,522,484,447,407,367,333,300,262,224,188,152,
+116,79,43,7,-29,-65,-102,-133,-165,-196,-228,-262,-297,-329,-364,-398,-431,-462,-519,-550,
+-586,-620,-649,-673,-698,-738,-765,-785,-811,-869,-916,-953,-974,-1010,-1039,-1065,-1091,-1125,-1152,-1174,
+-1202,-1224,-1248,-1282,-1306,-1329,-1350,-1379,-1409,-1439,-1466,-1496,-1518,-1542,-1571,-1599,-1623,-1656,-1675,-1688,
+-1730,-1751,-1771,-1799,-1825,-1858,-1872,-1898,-1929,-1933,-1946,-1959,-1973,-1987,-1995,-2013,-2022,-2039,-2055,-2067,
+-2078,-2092,-2105,-2123,-2149,-2168,-2166,-2155,-2175,-2204,-2218,-2234,-2242,-2249,-2256,-2276,-2285,-2303,-2302,-2307,
+-2313,-2324,-2349,-2339,-2335,-2330,-2341,-2361,-2380,-2373,-2379,-2375,-2353,-2329,-2315,-2300,-2290,-2280,-2272,-2260,
+-2252,-2237,-2231,-2224,-2217,-2207,-2197,-2191,-2186,-2176,-2168,-2161,-2156,-2145,-2135,-2128,-2119,-2109,-2096,-2087,
+-2078,-2068,-2058,-2049,-2044,-2037,-2029,-2024,-2012,-1999,-1995,-1986,-1964,-1958,-1940,-1932,-1919,-1909,-1901,-1889,
+-1868,-1872,-1885,-1880,-1848,-1849,-1869,-1882,-1881,-1887,-1869,-1852,-1841,-1829,-1816,-1807,-1794,-1782,-1773,-1767,
+-1761,-1768,-1769,-1759,-1749,-1738,-1733,-1733,-1758,-1816,-1851,-1847,-1840,-1839,-1843,-1869,-1861,-1839,-1816,-1802,
+-1794,-1787,-1782,-1775,-1780,-1817,-1851,-1863,-1856,-1835,-1832,-1823,-1815,-1807,-1805,-1802,-1799,-1793,-1790,-1793,
+-1801,-1804,-1803,-1798,-1792,-1784,-1782,-1790,-1783,-1780,-1782,-1787,-1793,-1785,-1773,-1759,-1740,-1716,-1698,-1683,
+-1670,-1660,-1641,-1578,-1574,-1537,-1499,-1464,-1440,-1398,-1370,-1302,-1206,-1158,-1289,-1351,-1317,-1334,-1381,-1439,
+-1496,-1526,-1507,-1469,-1478,-1536,-1543,-1459,-1284,-1224,-1218,-1224,-1250,-1265,-1282,-1281,-1265,-1271,-1287,-1287,
+-1287,-1284,-1289,-1299,-1322,-1341,-1353,-1366,-1380,-1388,-1383,-1396,-1409,-1413,-1431,-1451,-1466,-1476,-1486,-1496,
+-1510,-1526,-1546,-1575,-1607,-1628,-1653,-1692,-1750,-1842,-1937,-1967,-1995,-2015,-2035,-2056,-2075,-2094,-2111,-2122,
+-2127,-2131,-2135,-2142,-2150,-2155,-2158,-2162,-2167,-2173,-2181,-2188,-2193,-2202,-2209,-2213,-2219,-2229,-2237,-2247,
+-2259,-2272,-2289,-2310,-2327,-2344,-2350,-2321,-2324,-2352,-2345,-2307,-2313,-2304,-2288,-2274,-2256,-2241,-2228,-2209,
+-2207,-2198,-2189,-2178,-2167,-2163,-2155,-2152,-2154,-2156,-2158,-2169,-2180,-2185,-2190,-2191,-2189,-2183,-2180,-2177,
+-2170,-2164,-2157,-2151,-2148,-2150,-2151,-2154,-2148,-2143,-2130,-2114,-2089,-2076,-2100,-2097,-2088,-2079,-2067,-2052,
+-2040,-2036,-2015,-2007,-2002,-1994,-1984,-1985,-1992,-1989,-2008,-2036,-2078,-2121,-2135,-2122,-2102,-2083,-2058,-2033,
+-2007,-1996,-1997,-1984,-1978,-1982,-1976,-1972,-1958,-1958,-1954,-1951,-1951,-1955,-1938,-1929,-1921,-1916,-1903,-1894,
+-1877,-1860,-1849,-1838,-1823,-1809,-1803,-1803,-1796,-1791,-1789,-1771,-1780,-1773,-1769,-1771,-1772,-1767,-1777,-1760,
+-1733,-1722,-1711,-1718,-1722,-1743,-1770,-1797,-1824,-1848,-1836,-1803,-1764,-1741,-1743,-1741,-1736,-1734,-1720,-1717,
+-1737,-1780,-1839,-1880,-1891,-1895,-1911,-1909,-1895,-1877,-1865,-1851,-1847,-1845,-1842,-1842,-1852,-1857,-1862,-1865,
+-1869,-1866,-1859,-1853,-1849,-1843,-1842,-1843,-1838,-1843,-1843,-1847,-1845,-1834,-1821,-1808,-1797,-1783,-1771,-1760,
+-1742,-1727,-1710,-1686,-1673,-1655,-1634,-1620,-1602,-1585,-1566,-1550,-1535,-1517,-1499,-1479,-1464,-1442,-1425,-1400,
+-1382,-1365,-1351,-1341,-1316,-1293,-1278,-1266,-1250,-1237,-1225,-1212,-1198,-1186,-1170,-1156,-1139,-1125,-1117,-1104,
+-1092,-1083,-1075,-1065,-1056,-1045,-1038,-1030,-1019,-1012,-1008,-1006,-1005,-1004,-1001,-995,-998,-998,-1002,-1008,
+-1013,-1013,-1013,-1014,-1020,-1020,-1029,-1038,-1045,-1051,-1048,-1054,-1052,-1052,-1050,-1053,-1058,-1065,-1076,-1089,
+-1095,-1099,-1095,-1090,-1089,-1089,-1089,-1084,-1079,-1075,-1071,-1066,-1060,-1062,-1061,-1064,-1068,-1072,-1083,-1094,
+-1100,-1104,-1098,-1096,-1093,-1090,-1083,-1083,-1080,-1082,-1080,-1064,-1048,-1030,-1018,-1009,-1005,-1000,-997,-991,
+-989,-992,-984,-967,-951,-925,-906,-884,-865,-850,-839,-826,-815,-802,-794,-784,-775,-766,-763,-758,
+-751,-747,-751,-756,-761,-759,-751,-739,-726,-716,-705,-698,-688,-670,-659,-655,-641,-626,-607,-587,
+-567,-549,-526,-504,-486,-464,-449,-424,-407,-387,-371,-362,-340,-322,-304,-282,-258,-233,-208,-180,
+-154,-139,-121,-88,-78,-59,-30,-7,16,43,55,76,117,145,160,181,201,223,240,264,
+280,303,331,365,404,439,467,491,515,532,541,550,553,550,538,523,509,492,489,501,
+583,718,878,1052,1197,1305,1367,1360,1353,1363,1368,1393,1460,1379,1316,1266,1252,1265,1245,1206,
+1160,1111,1070,1040,1010,1004,1013,1008,1011,1010,999,1001,1018,1021,1014,1010,1003,1007,1007,1012,
+1029,1057,1091,1135,1176,1214,1241,1269,1290,1313,1337,1367,1396,1400,1388,1358,1319,1281,1249,1225,
+1216,1218,1230,1262,1294,1305,1305,1301,1293,1286,1274,1273,1269,1261,1256,1251,1251,1228,1185,1168,
+1150,1130,1105,1085,1073,1052,1035,1018,1007,1003,995,974,938,899,870,845,809,770,734,703,
+677,651,624,607,598,596,597,597,602,618,637,655,669,678,673,655,631,604,582,564,
+549,546,551,564,558,558,574,594,617,648,692,745,800,844,872,873,858,841,810,757,
+707,682,668,654,661,672,682,694,707,715,718,719,723,733,748,776,812,845,870,885,
+885,876,863,851,844,851,864,886,953,1077,1153,1204,1244,1231,1152,1116,1141,1187,1209,1222,
+1246,1273,1290,1294,1302,1308,1309,1320,1346,1363,1371,1370,1367,1368,1382,1430,1473,1508,1562,1615,
+1641,1659,1673,1704,1762,1779,1776,1747,1767,1761,1758,1767,1785,1807,1816,1821,1834,1856,1874,1898,
+1928,1955,1980,2002,2017,2030,2045,2069,2091,2111,2123,2133,2155,2177,2197,2216,2234,2252,2277,2288,
+2295,2312,2336,2354,2367,2390,2420,2455,2477,2470,2480,2491,2497,2515,2518,2530,2533,2561,2579,2595,
+2607,2607,2614,2620,2617,2622,2637,2656,2675,2691,2707,2721,2732,2739,2756,2762,2760,2765,2783,2808,
+2817,2830,2826,2829,2816,2798,2777,2770,2770,2759,2755,2743,2737,2730,2740,2733,2724,2712,2704,2690,
+2690,2694,2695,2676,2665,2662,2662,2670,2681,2665,2643,2698,2667,2560,2544,2544,2545,2551,2562,2575,
+2587,2608,2665,2710,2629,2572,2561,2523,2514,2534,2545,2552,2551,2553,2568,2574,2576,2580,2580,2587,
+2593,2593,2588,2594,2606,2647,2676,2701,2714,2713,2729,2753,2787,2807,2832,2893,2996,3041,3072,3110,
+3131,3156,3194,3196,3168,3199,3217,3286,3292,3280,3275,3287,3289,3296,3301,3318,3337,3350,3367,3390,
+3413,3426,3441,3441,3429,3455,3471,3490,3487,3490,3494,3498,3486,3492,3519,3552,3582,3581,3567,3571,
+3579,3588,3594,3605,3624,3657,3672,3650,3646,3692,3754,3775,3734,3735,3742,3779,3781,3804,3819,3800,
+3752,3611,3573,3593,3649,3725,3825,3886,3922,3969,3965,3923,3931,3934,3907,3910,3917,3905,3922,3944,
+3953,3954,3947,3971,4036,4047,4061,4090,4132,4164,4189,4226,4276,4292,4331,4404,4427,4438,4456,4485,
+4517,4544,4577,4602,4624,4638,4650,4671,4686,4699,4720,4734,4742,4747,4756,4765,4777,4779,4768,4760,
+4764,4763,4760,4754,4758,4759,4748,4738,4726,4715,4711,4706,4698,4686,4666,4645,4623,4599,4578,4559,
+4542,4528,4516,4510,4497,4482,4465,4453,4433,4418,4409,4394,4391,4395,4392,4397,4398,4401,4395,4385,
+4370,4351,4326,4299,4286,4318,4354,4292,4269,4211,4148,4120,4108,4097,4087,4078,4063,4039,4014,3990,
+3966,3940,3906,3877,3861,3852,3817,3781,3779,3786,3783,3762,3735,3757,3749,3747,3731,3718,3703,3694,
+3691,3668,3661,3658,3653,3650,3646,3647,3650,3657,3667,3645,3631,3615,3619,3624,3625,3616,3603,3574,
+3525,3483,3458,3439,3462,3529,3625,3718,3826,3928,3939,3909,3818,3768,3779,3776,3763,3763,3775,3802,
+3797,3773,3756,3736,3710,3681,3639,3616,3618,3628,3634,3593,3415,3257,3159,3121,3139,3134,3106,3066,
+3025,2987,2954,2926,2898,2867,2839,2809,2787,2753,2726,2695,2653,2613,2573,2531,2489,2451,2413,2375,
+2340,2302,2263,2223,2181,2138,2102,2062,2028,1995,1959,1922,1895,1854,1817,1779,1739,1696,1659,1624,
+1595,1553,1510,1480,1447,1421,1396,1371,1335,1298,1255,1213,1182,1156,1112,1080,1048,1017,985,944,
+905,866,827,788,755,719,686,652,615,573,533,498,460,424,387,352,316,278,236,200,
+162,128,92,58,22,-12,-46,-78,-115,-145,-175,-208,-241,-279,-319,-364,-397,-425,-455,-487,
+-516,-555,-587,-613,-641,-678,-719,-732,-768,-799,-849,-875,-905,-938,-970,-1006,-1037,-1066,-1098,-1125,
+-1151,-1175,-1202,-1230,-1258,-1278,-1310,-1339,-1364,-1391,-1415,-1445,-1469,-1497,-1526,-1558,-1576,-1602,-1626,-1652,
+-1691,-1721,-1731,-1757,-1780,-1809,-1838,-1851,-1892,-1903,-1909,-1925,-1937,-1957,-1977,-1976,-1985,-2015,-2029,-2048,
+-2065,-2078,-2090,-2103,-2123,-2130,-2149,-2145,-2139,-2175,-2194,-2210,-2227,-2241,-2247,-2255,-2268,-2283,-2286,-2281,
+-2285,-2301,-2328,-2340,-2324,-2340,-2338,-2341,-2352,-2360,-2367,-2381,-2382,-2341,-2326,-2315,-2303,-2294,-2285,-2273,
+-2264,-2256,-2248,-2240,-2231,-2225,-2219,-2202,-2201,-2188,-2182,-2174,-2167,-2157,-2150,-2143,-2138,-2134,-2127,-2116,
+-2107,-2097,-2089,-2078,-2071,-2064,-2050,-2044,-2038,-2028,-2021,-2015,-2003,-1999,-1985,-1979,-1966,-1951,-1935,-1924,
+-1926,-1891,-1905,-1907,-1892,-1850,-1854,-1869,-1883,-1893,-1891,-1883,-1867,-1852,-1839,-1828,-1816,-1797,-1787,-1779,
+-1773,-1771,-1776,-1776,-1769,-1757,-1753,-1744,-1744,-1758,-1812,-1861,-1849,-1854,-1862,-1869,-1886,-1870,-1838,-1823,
+-1821,-1818,-1814,-1807,-1800,-1800,-1820,-1865,-1881,-1868,-1853,-1844,-1841,-1840,-1841,-1835,-1828,-1819,-1812,-1814,
+-1817,-1828,-1835,-1837,-1837,-1832,-1830,-1824,-1819,-1808,-1802,-1795,-1798,-1807,-1803,-1784,-1775,-1764,-1746,-1732,
+-1727,-1713,-1682,-1660,-1620,-1573,-1543,-1507,-1462,-1436,-1404,-1370,-1299,-1269,-1401,-1501,-1508,-1452,-1481,-1517,
+-1549,-1564,-1600,-1638,-1652,-1664,-1662,-1631,-1549,-1369,-1316,-1326,-1342,-1358,-1371,-1373,-1380,-1388,-1373,-1375,
+-1378,-1384,-1383,-1379,-1390,-1404,-1416,-1435,-1446,-1455,-1457,-1462,-1477,-1497,-1507,-1515,-1532,-1554,-1569,-1588,
+-1608,-1628,-1637,-1651,-1677,-1694,-1714,-1749,-1807,-1906,-2003,-2053,-2082,-2110,-2134,-2152,-2166,-2180,-2196,-2208,
+-2217,-2222,-2225,-2227,-2232,-2241,-2246,-2254,-2261,-2264,-2269,-2276,-2291,-2302,-2311,-2321,-2328,-2332,-2339,-2349,
+-2358,-2364,-2376,-2389,-2403,-2419,-2432,-2439,-2434,-2403,-2413,-2421,-2416,-2393,-2375,-2363,-2347,-2331,-2320,-2299,
+-2292,-2280,-2271,-2265,-2256,-2246,-2237,-2218,-2216,-2211,-2209,-2214,-2225,-2235,-2244,-2251,-2257,-2259,-2260,-2252,
+-2243,-2231,-2219,-2211,-2200,-2194,-2197,-2198,-2198,-2190,-2188,-2182,-2174,-2169,-2153,-2134,-2163,-2150,-2133,-2120,
+-2109,-2104,-2093,-2082,-2054,-2046,-2041,-2037,-2034,-2028,-2016,-2017,-2021,-2035,-2071,-2115,-2162,-2176,-2168,-2138,
+-2116,-2092,-2068,-2041,-2029,-2024,-2001,-1987,-1994,-1995,-2001,-1990,-1966,-1965,-1984,-1978,-1984,-1979,-1962,-1950,
+-1932,-1927,-1918,-1896,-1878,-1864,-1856,-1848,-1838,-1827,-1817,-1824,-1817,-1812,-1811,-1817,-1818,-1813,-1804,-1794,
+-1786,-1783,-1782,-1771,-1752,-1752,-1745,-1741,-1756,-1790,-1851,-1893,-1904,-1868,-1830,-1819,-1801,-1784,-1770,-1757,
+-1752,-1743,-1735,-1742,-1784,-1830,-1894,-1929,-1920,-1913,-1913,-1907,-1893,-1880,-1865,-1863,-1873,-1860,-1864,-1868,
+-1870,-1874,-1869,-1869,-1867,-1865,-1863,-1860,-1853,-1851,-1846,-1839,-1833,-1834,-1834,-1838,-1833,-1820,-1805,-1790,
+-1771,-1758,-1737,-1719,-1695,-1677,-1663,-1641,-1628,-1618,-1604,-1587,-1567,-1546,-1538,-1517,-1496,-1473,-1458,-1436,
+-1414,-1401,-1388,-1374,-1358,-1337,-1324,-1305,-1288,-1271,-1258,-1243,-1233,-1219,-1209,-1195,-1182,-1168,-1152,-1137,
+-1124,-1110,-1096,-1085,-1076,-1065,-1056,-1046,-1036,-1028,-1022,-1019,-1018,-1015,-1014,-1009,-1005,-1007,-1012,-1013,
+-1015,-1020,-1021,-1022,-1025,-1028,-1030,-1039,-1043,-1051,-1061,-1067,-1066,-1067,-1067,-1064,-1068,-1076,-1082,-1087,
+-1096,-1105,-1110,-1115,-1122,-1122,-1118,-1119,-1111,-1106,-1102,-1100,-1095,-1090,-1083,-1078,-1074,-1073,-1074,-1079,
+-1086,-1088,-1090,-1085,-1089,-1096,-1104,-1113,-1097,-1086,-1076,-1073,-1057,-1044,-1044,-1006,-983,-993,-1001,-999,
+-1001,-1003,-1002,-1003,-992,-966,-936,-918,-903,-887,-875,-861,-846,-834,-826,-817,-807,-799,-794,-784,
+-777,-770,-766,-766,-769,-767,-767,-758,-749,-742,-732,-720,-713,-707,-701,-688,-672,-659,-642,-622,
+-604,-586,-569,-550,-529,-507,-486,-470,-452,-437,-423,-407,-390,-374,-352,-330,-308,-283,-257,-233,
+-206,-182,-169,-138,-114,-97,-69,-47,-19,15,43,52,79,113,122,143,162,182,201,221,
+243,268,294,325,361,393,426,458,483,504,523,534,547,555,557,550,536,523,505,493,
+493,532,685,832,996,1163,1289,1314,1334,1360,1364,1318,1335,1366,1336,1307,1278,1271,1276,1262,
+1199,1142,1096,1057,1023,999,985,981,983,991,1006,1000,1002,1013,1021,1014,998,988,995,1007,
+1016,1034,1055,1093,1135,1182,1222,1251,1272,1290,1310,1341,1374,1393,1406,1417,1413,1396,1374,1347,
+1325,1312,1308,1310,1323,1341,1331,1316,1284,1261,1238,1232,1230,1224,1223,1218,1204,1194,1172,1142,
+1132,1145,1155,1145,1120,1096,1073,1058,1050,1030,1009,989,964,933,896,866,839,806,766,728,
+694,666,643,627,625,624,621,615,613,623,636,650,661,671,681,682,668,650,627,605,
+580,554,538,537,557,561,559,567,580,600,618,640,669,709,750,792,823,813,792,750,
+702,671,649,649,659,669,681,694,707,723,733,737,740,751,770,798,836,873,909,940,
+963,972,973,964,950,937,935,941,964,1037,1165,1239,1301,1361,1376,1332,1276,1279,1321,1329,
+1339,1351,1376,1401,1404,1413,1417,1399,1388,1402,1433,1430,1417,1418,1420,1423,1446,1475,1518,1577,
+1619,1657,1684,1718,1753,1755,1760,1786,1784,1794,1791,1803,1812,1833,1840,1845,1858,1872,1889,1907,
+1919,1943,1966,1989,2012,2020,2038,2061,2075,2084,2092,2114,2133,2153,2178,2201,2218,2239,2256,2277,
+2287,2309,2324,2323,2334,2343,2364,2408,2486,2539,2466,2467,2472,2489,2491,2505,2508,2513,2523,2536,
+2551,2557,2548,2563,2586,2618,2636,2647,2662,2681,2692,2709,2725,2735,2736,2736,2738,2768,2773,2773,
+2788,2814,2822,2838,2854,2840,2818,2803,2771,2775,2776,2771,2758,2742,2739,2737,2738,2728,2717,2713,
+2707,2700,2698,2693,2682,2670,2667,2670,2667,2650,2606,2614,2635,2600,2590,2600,2592,2607,2616,2629,
+2632,2626,2633,2653,2654,2604,2544,2533,2533,2543,2559,2566,2561,2553,2553,2568,2573,2573,2569,2577,
+2594,2601,2601,2610,2625,2643,2660,2677,2693,2709,2723,2760,2793,2836,2913,2990,2977,2974,3052,3097,
+3126,3161,3217,3219,3196,3228,3238,3274,3341,3342,3325,3327,3325,3368,3372,3372,3370,3373,3394,3414,
+3428,3461,3489,3476,3462,3467,3484,3503,3503,3500,3531,3546,3545,3533,3538,3576,3616,3604,3594,3608,
+3631,3622,3623,3628,3639,3651,3685,3682,3671,3714,3760,3756,3730,3749,3723,3781,3812,3807,3796,3789,
+3766,3656,3584,3572,3615,3663,3745,3846,3902,3942,3958,3932,3902,3911,3915,3883,3859,3859,3879,3906,
+3927,3943,3931,3935,3988,4039,4051,4078,4109,4138,4173,4216,4250,4265,4302,4370,4420,4433,4450,4478,
+4504,4535,4567,4593,4617,4636,4655,4701,4761,4736,4745,4772,4796,4807,4805,4804,4809,4824,4817,4788,
+4780,4770,4768,4760,4754,4758,4759,4755,4751,4746,4736,4733,4734,4732,4722,4706,4680,4649,4620,4592,
+4569,4551,4540,4529,4517,4503,4486,4468,4452,4426,4411,4395,4385,4377,4370,4366,4371,4376,4381,4384,
+4378,4363,4343,4322,4300,4292,4278,4251,4228,4211,4199,4165,4143,4123,4108,4092,4077,4059,4032,4009,
+3981,3955,3928,3896,3873,3861,3838,3789,3771,3775,3776,3752,3700,3682,3702,3721,3693,3704,3707,3674,
+3661,3652,3642,3643,3638,3636,3630,3623,3613,3600,3589,3582,3575,3567,3575,3593,3603,3600,3572,3533,
+3517,3488,3463,3442,3447,3479,3522,3555,3579,3616,3667,3661,3710,3767,3771,3755,3744,3744,3740,3745,
+3764,3780,3788,3790,3772,3742,3712,3678,3647,3641,3633,3626,3625,3612,3539,3442,3311,3173,3112,3095,
+3081,3051,3016,2977,2946,2913,2878,2851,2828,2799,2767,2732,2697,2654,2614,2572,2526,2488,2449,2414,
+2380,2344,2305,2266,2228,2187,2145,2108,2070,2035,2001,1966,1931,1890,1848,1811,1781,1748,1698,1660,
+1627,1592,1556,1522,1496,1466,1443,1417,1386,1349,1303,1255,1230,1198,1152,1118,1087,1066,1022,984,
+950,912,876,846,807,767,731,693,659,622,583,546,509,471,430,401,372,334,292,255,
+216,177,141,104,70,40,7,-30,-62,-93,-123,-155,-201,-236,-269,-305,-338,-369,-399,-430,
+-466,-499,-528,-560,-594,-627,-667,-689,-707,-747,-791,-822,-851,-886,-920,-952,-982,-1014,-1046,-1076,
+-1105,-1132,-1158,-1185,-1206,-1231,-1262,-1292,-1324,-1349,-1373,-1397,-1428,-1457,-1482,-1507,-1520,-1556,-1590,-1621,
+-1652,-1680,-1702,-1715,-1741,-1774,-1799,-1816,-1846,-1876,-1880,-1890,-1911,-1926,-1939,-1961,-1971,-1975,-2006,-2031,
+-2044,-2061,-2070,-2082,-2089,-2095,-2108,-2144,-2129,-2130,-2173,-2185,-2199,-2214,-2222,-2222,-2232,-2246,-2276,-2283,
+-2284,-2297,-2295,-2331,-2339,-2340,-2343,-2344,-2348,-2369,-2368,-2372,-2389,-2381,-2338,-2330,-2316,-2305,-2296,-2287,
+-2276,-2266,-2259,-2251,-2244,-2240,-2235,-2226,-2218,-2210,-2201,-2193,-2189,-2180,-2168,-2160,-2153,-2149,-2145,-2133,
+-2136,-2128,-2115,-2102,-2099,-2092,-2083,-2079,-2069,-2054,-2048,-2042,-2033,-2028,-2022,-2021,-2006,-1990,-1967,-1964,
+-1954,-1949,-1940,-1909,-1939,-1920,-1869,-1880,-1876,-1893,-1905,-1902,-1893,-1862,-1859,-1841,-1836,-1824,-1812,-1801,
+-1790,-1785,-1776,-1781,-1777,-1776,-1767,-1760,-1754,-1756,-1769,-1810,-1870,-1880,-1884,-1888,-1902,-1905,-1890,-1867,
+-1859,-1856,-1852,-1847,-1842,-1838,-1839,-1845,-1876,-1910,-1899,-1886,-1872,-1865,-1864,-1863,-1854,-1846,-1842,-1834,
+-1831,-1837,-1851,-1865,-1872,-1879,-1884,-1885,-1879,-1867,-1853,-1840,-1829,-1824,-1818,-1809,-1796,-1789,-1785,-1783,
+-1779,-1773,-1752,-1742,-1686,-1663,-1605,-1561,-1525,-1485,-1460,-1427,-1364,-1363,-1569,-1633,-1658,-1605,-1554,-1575,
+-1606,-1639,-1657,-1676,-1698,-1714,-1726,-1734,-1723,-1640,-1529,-1462,-1453,-1458,-1464,-1474,-1475,-1486,-1478,-1476,
+-1478,-1466,-1457,-1458,-1461,-1470,-1488,-1509,-1532,-1550,-1553,-1548,-1555,-1557,-1566,-1587,-1598,-1610,-1617,-1640,
+-1672,-1706,-1734,-1751,-1761,-1772,-1809,-1839,-1890,-1980,-2063,-2124,-2168,-2198,-2218,-2239,-2251,-2262,-2274,-2283,
+-2289,-2298,-2302,-2307,-2310,-2315,-2320,-2331,-2342,-2350,-2356,-2362,-2374,-2392,-2403,-2414,-2425,-2436,-2441,-2447,
+-2451,-2458,-2465,-2470,-2483,-2493,-2501,-2508,-2516,-2517,-2514,-2503,-2500,-2484,-2474,-2461,-2448,-2430,-2411,-2400,
+-2384,-2369,-2359,-2352,-2341,-2334,-2328,-2312,-2302,-2294,-2285,-2281,-2279,-2286,-2293,-2290,-2311,-2319,-2324,-2320,
+-2315,-2305,-2292,-2281,-2269,-2257,-2250,-2242,-2245,-2250,-2248,-2240,-2234,-2223,-2226,-2227,-2228,-2222,-2209,-2195,
+-2177,-2150,-2138,-2137,-2130,-2106,-2091,-2090,-2081,-2075,-2064,-2059,-2061,-2020,-2012,-2050,-2057,-2078,-2139,-2186,
+-2209,-2205,-2179,-2148,-2119,-2099,-2088,-2069,-2044,-2034,-2019,-2008,-2012,-2010,-2002,-2010,-2007,-1995,-1989,-1993,
+-1986,-1970,-1969,-1963,-1941,-1926,-1914,-1905,-1893,-1885,-1868,-1860,-1858,-1848,-1836,-1836,-1839,-1843,-1844,-1845,
+-1847,-1830,-1813,-1805,-1799,-1796,-1801,-1801,-1796,-1773,-1770,-1806,-1817,-1841,-1866,-1894,-1918,-1913,-1885,-1850,
+-1818,-1802,-1799,-1784,-1763,-1756,-1772,-1793,-1841,-1891,-1902,-1918,-1940,-1936,-1925,-1910,-1896,-1882,-1879,-1885,
+-1876,-1876,-1875,-1876,-1876,-1874,-1860,-1858,-1860,-1864,-1862,-1858,-1851,-1841,-1836,-1822,-1822,-1808,-1805,-1809,
+-1803,-1789,-1776,-1756,-1735,-1711,-1686,-1668,-1649,-1634,-1624,-1610,-1598,-1581,-1566,-1547,-1525,-1504,-1489,-1469,
+-1448,-1431,-1416,-1401,-1385,-1370,-1356,-1348,-1332,-1314,-1292,-1278,-1264,-1255,-1238,-1230,-1219,-1207,-1191,-1175,
+-1161,-1143,-1127,-1116,-1105,-1092,-1078,-1062,-1055,-1049,-1045,-1038,-1032,-1028,-1027,-1023,-1011,-1013,-1016,-1019,
+-1025,-1029,-1030,-1031,-1035,-1038,-1041,-1048,-1056,-1060,-1066,-1072,-1074,-1080,-1084,-1085,-1091,-1092,-1095,-1097,
+-1101,-1108,-1110,-1116,-1124,-1134,-1147,-1156,-1153,-1141,-1129,-1126,-1116,-1129,-1131,-1125,-1114,-1107,-1100,-1099,
+-1103,-1105,-1098,-1094,-1094,-1092,-1096,-1101,-1107,-1113,-1102,-1090,-1077,-1066,-1051,-1043,-1021,-1004,-994,-987,
+-985,-981,-974,-969,-971,-971,-962,-950,-944,-932,-922,-911,-890,-865,-849,-840,-834,-824,-816,-810,
+-804,-795,-791,-790,-790,-785,-779,-770,-761,-756,-749,-742,-734,-728,-718,-708,-702,-691,-673,-658,
+-640,-623,-606,-589,-568,-549,-529,-513,-494,-477,-473,-458,-446,-431,-409,-383,-360,-333,-311,-284,
+-257,-239,-219,-192,-166,-142,-119,-96,-71,-49,-20,11,31,57,71,100,123,146,165,185,
+205,231,260,287,318,351,381,412,443,472,498,519,538,553,564,566,561,546,527,507,
+491,480,502,625,819,989,1121,1228,1293,1311,1329,1311,1300,1273,1291,1301,1272,1248,1216,1209,
+1173,1125,1085,1059,1031,1007,978,957,948,945,954,974,990,1004,1018,1036,1038,1025,1008,1006,
+1012,1025,1041,1068,1102,1144,1187,1223,1253,1277,1291,1305,1335,1369,1379,1395,1408,1414,1415,1419,
+1412,1400,1404,1400,1388,1375,1353,1316,1291,1276,1243,1220,1214,1231,1228,1219,1217,1206,1200,1179,
+1162,1172,1197,1205,1170,1124,1091,1068,1053,1040,1022,993,963,922,884,847,822,798,765,730,
+699,672,646,625,620,621,614,608,598,593,598,609,620,624,625,627,626,610,592,572,
+557,539,520,507,505,501,506,523,540,548,561,575,587,593,604,629,669,708,724,701,
+661,626,600,585,594,614,633,652,670,688,706,719,735,755,779,807,843,886,928,968,
+1002,1026,1043,1051,1048,1034,1021,1014,1019,1031,1060,1140,1289,1375,1428,1455,1470,1464,1440,1430,
+1427,1425,1437,1458,1480,1492,1506,1523,1508,1473,1462,1471,1480,1462,1451,1460,1461,1460,1482,1518,
+1563,1626,1670,1705,1769,1819,1798,1779,1789,1767,1776,1799,1824,1840,1854,1857,1862,1878,1892,1906,
+1928,1936,1953,1977,1993,2009,2026,2042,2055,2071,2086,2103,2113,2126,2145,2171,2194,2211,2230,2251,
+2261,2265,2290,2308,2321,2333,2342,2356,2377,2411,2429,2432,2445,2458,2475,2483,2492,2508,2507,2513,
+2524,2535,2543,2564,2577,2599,2609,2627,2647,2661,2680,2693,2713,2733,2742,2738,2744,2755,2762,2772,
+2776,2783,2799,2814,2830,2836,2836,2821,2814,2794,2789,2777,2782,2778,2773,2762,2755,2751,2744,2737,
+2732,2713,2709,2703,2689,2677,2670,2672,2667,2653,2633,2631,2637,2644,2651,2645,2647,2641,2644,2634,
+2628,2623,2634,2631,2615,2599,2583,2563,2579,2583,2576,2578,2580,2571,2565,2563,2567,2579,2590,2590,
+2594,2603,2614,2627,2635,2647,2665,2680,2694,2712,2740,2764,2799,2880,2967,2967,2991,3017,3014,3063,
+3121,3147,3175,3172,3167,3184,3196,3235,3320,3340,3328,3324,3333,3352,3437,3415,3386,3404,3424,3453,
+3473,3513,3511,3509,3495,3499,3516,3534,3548,3526,3552,3576,3565,3553,3574,3624,3663,3667,3661,3664,
+3672,3671,3655,3668,3686,3697,3707,3697,3708,3739,3760,3769,3750,3727,3704,3764,3823,3828,3830,3852,
+3793,3621,3494,3555,3616,3687,3712,3747,3832,3917,3946,3924,3882,3850,3841,3860,3868,3861,3843,3853,
+3887,3924,3943,3928,3943,4006,4038,4056,4079,4111,4148,4195,4238,4244,4280,4338,4398,4416,4435,4461,
+4491,4521,4553,4583,4609,4631,4647,4663,4702,4742,4764,4807,4865,4915,4923,4912,4882,4851,4833,4817,
+4803,4790,4776,4766,4757,4749,4751,4754,4748,4740,4735,4731,4737,4744,4749,4746,4728,4697,4661,4625,
+4591,4567,4549,4534,4521,4508,4492,4475,4453,4433,4414,4403,4407,4387,4361,4339,4329,4326,4334,4342,
+4347,4345,4335,4323,4311,4312,4299,4289,4268,4257,4235,4205,4184,4158,4139,4121,4097,4074,4049,4026,
+4006,3982,3957,3929,3906,3893,3866,3807,3779,3776,3777,3761,3715,3689,3681,3675,3683,3698,3715,3724,
+3655,3624,3613,3613,3612,3611,3604,3596,3583,3571,3558,3549,3544,3537,3530,3520,3513,3509,3505,3500,
+3496,3485,3457,3439,3436,3443,3459,3468,3449,3434,3443,3474,3550,3690,3891,3900,3813,3789,3784,3782,
+3781,3797,3809,3818,3815,3803,3784,3759,3727,3689,3662,3637,3608,3581,3579,3506,3416,3341,3301,3266,
+3180,3053,3028,3026,3001,2971,2939,2905,2878,2851,2817,2784,2754,2714,2663,2616,2571,2523,2484,2444,
+2411,2373,2335,2298,2256,2217,2180,2140,2100,2068,2035,2001,1966,1925,1879,1839,1807,1775,1733,1700,
+1668,1639,1599,1567,1534,1502,1473,1450,1423,1388,1340,1294,1265,1237,1191,1157,1125,1092,1056,1022,
+988,952,917,880,839,806,770,733,696,662,628,588,553,515,479,442,414,380,344,307,
+267,225,192,157,122,89,58,26,-7,-42,-75,-104,-139,-184,-220,-252,-282,-314,-344,-378,
+-412,-440,-471,-508,-540,-577,-610,-646,-665,-693,-732,-761,-796,-829,-868,-896,-923,-957,-992,-1023,
+-1052,-1083,-1105,-1129,-1157,-1186,-1222,-1252,-1277,-1308,-1332,-1359,-1386,-1413,-1431,-1459,-1485,-1518,-1552,-1580,
+-1609,-1637,-1666,-1683,-1704,-1733,-1764,-1791,-1812,-1838,-1857,-1860,-1871,-1896,-1919,-1936,-1948,-1955,-1964,-1998,
+-2023,-2042,-2055,-2069,-2078,-2088,-2094,-2119,-2137,-2119,-2138,-2165,-2169,-2192,-2207,-2215,-2220,-2235,-2253,-2268,
+-2278,-2282,-2295,-2299,-2326,-2331,-2339,-2351,-2350,-2358,-2380,-2371,-2384,-2395,-2370,-2340,-2340,-2325,-2311,-2304,
+-2296,-2283,-2275,-2270,-2258,-2251,-2245,-2242,-2241,-2238,-2228,-2217,-2203,-2197,-2194,-2188,-2180,-2173,-2165,-2157,
+-2153,-2150,-2145,-2138,-2129,-2116,-2119,-2106,-2097,-2095,-2085,-2072,-2064,-2058,-2055,-2043,-2029,-2016,-2015,-2000,
+-1986,-1980,-1977,-1981,-1932,-1957,-1948,-1894,-1901,-1861,-1888,-1903,-1918,-1912,-1883,-1876,-1868,-1855,-1835,-1828,
+-1815,-1807,-1787,-1789,-1780,-1780,-1784,-1779,-1759,-1765,-1772,-1784,-1813,-1873,-1911,-1918,-1917,-1926,-1926,-1920,
+-1913,-1896,-1882,-1877,-1876,-1879,-1883,-1883,-1883,-1894,-1920,-1924,-1908,-1902,-1898,-1891,-1879,-1871,-1866,-1858,
+-1852,-1852,-1861,-1872,-1885,-1897,-1905,-1912,-1915,-1912,-1899,-1887,-1883,-1868,-1854,-1835,-1820,-1810,-1812,-1813,
+-1815,-1823,-1829,-1817,-1797,-1770,-1736,-1677,-1638,-1575,-1498,-1511,-1506,-1518,-1713,-1770,-1749,-1717,-1661,-1649,
+-1663,-1680,-1713,-1747,-1756,-1768,-1785,-1793,-1817,-1810,-1695,-1598,-1546,-1548,-1564,-1573,-1580,-1587,-1585,-1583,
+-1584,-1571,-1556,-1536,-1524,-1522,-1531,-1553,-1581,-1605,-1625,-1637,-1636,-1628,-1622,-1627,-1639,-1659,-1681,-1693,
+-1712,-1742,-1773,-1803,-1831,-1863,-1909,-1952,-2011,-2075,-2131,-2186,-2241,-2284,-2311,-2319,-2328,-2337,-2345,-2354,
+-2363,-2371,-2379,-2383,-2389,-2392,-2400,-2412,-2422,-2423,-2430,-2453,-2464,-2474,-2486,-2499,-2510,-2523,-2534,-2543,
+-2549,-2552,-2553,-2557,-2561,-2568,-2572,-2574,-2576,-2578,-2582,-2584,-2585,-2587,-2564,-2559,-2546,-2532,-2513,-2498,
+-2481,-2468,-2460,-2448,-2436,-2425,-2416,-2407,-2387,-2369,-2370,-2370,-2366,-2362,-2360,-2354,-2356,-2363,-2374,-2374,
+-2371,-2365,-2360,-2354,-2343,-2338,-2325,-2315,-2309,-2304,-2298,-2302,-2294,-2296,-2293,-2280,-2264,-2253,-2244,-2245,
+-2247,-2233,-2223,-2216,-2193,-2180,-2170,-2157,-2146,-2138,-2117,-2096,-2093,-2099,-2089,-2082,-2072,-2075,-2087,-2095,
+-2121,-2175,-2221,-2233,-2210,-2189,-2180,-2154,-2139,-2115,-2093,-2068,-2043,-2035,-2017,-2018,-2026,-2035,-2025,-2031,
+-2037,-2028,-2010,-2000,-1989,-1980,-1975,-1962,-1949,-1938,-1928,-1918,-1907,-1893,-1880,-1874,-1874,-1875,-1874,-1868,
+-1864,-1869,-1868,-1868,-1865,-1863,-1846,-1830,-1825,-1833,-1828,-1819,-1803,-1784,-1776,-1788,-1812,-1833,-1831,-1841,
+-1890,-1916,-1903,-1870,-1832,-1799,-1795,-1778,-1765,-1781,-1814,-1853,-1897,-1939,-1961,-1963,-1963,-1957,-1945,-1929,
+-1923,-1908,-1896,-1893,-1890,-1887,-1878,-1869,-1873,-1873,-1870,-1868,-1865,-1863,-1858,-1855,-1842,-1834,-1823,-1807,
+-1784,-1782,-1775,-1773,-1770,-1753,-1730,-1706,-1680,-1652,-1639,-1627,-1608,-1595,-1586,-1572,-1559,-1537,-1518,-1501,
+-1476,-1464,-1445,-1425,-1411,-1396,-1376,-1361,-1349,-1337,-1328,-1308,-1292,-1273,-1269,-1252,-1238,-1224,-1212,-1199,
+-1187,-1172,-1156,-1142,-1131,-1120,-1105,-1091,-1081,-1068,-1058,-1051,-1046,-1041,-1038,-1036,-1023,-1017,-1024,-1025,
+-1029,-1035,-1037,-1042,-1041,-1043,-1045,-1052,-1059,-1066,-1074,-1083,-1085,-1091,-1096,-1099,-1108,-1115,-1120,-1121,
+-1121,-1121,-1122,-1129,-1131,-1136,-1145,-1156,-1159,-1163,-1165,-1154,-1151,-1154,-1160,-1160,-1156,-1148,-1141,-1135,
+-1133,-1133,-1127,-1116,-1110,-1109,-1105,-1109,-1118,-1125,-1125,-1119,-1112,-1101,-1092,-1073,-1060,-1048,-1033,-1019,
+-1007,-997,-990,-985,-977,-968,-965,-959,-951,-942,-926,-920,-913,-906,-896,-886,-870,-855,-835,-822,
+-814,-809,-806,-802,-800,-803,-800,-789,-778,-765,-753,-749,-747,-743,-741,-735,-723,-716,-705,-686,
+-673,-657,-639,-623,-610,-589,-569,-551,-535,-518,-505,-495,-481,-467,-449,-428,-407,-385,-361,-335,
+-306,-280,-251,-229,-218,-192,-168,-155,-132,-104,-74,-47,-21,0,30,49,79,113,131,150,
+172,192,214,240,268,300,333,366,399,431,462,492,514,535,549,557,561,560,550,534,
+513,494,475,483,587,781,953,1089,1212,1320,1309,1294,1276,1288,1299,1300,1293,1289,1264,1229,
+1193,1151,1108,1059,1025,1008,990,970,956,953,957,967,986,1013,1032,1044,1062,1067,1053,1041,
+1037,1040,1055,1069,1093,1123,1156,1191,1221,1250,1273,1291,1306,1328,1359,1375,1390,1397,1397,1397,
+1399,1405,1415,1423,1420,1415,1394,1344,1285,1248,1229,1225,1221,1218,1217,1216,1221,1226,1223,1220,
+1209,1204,1229,1234,1195,1142,1090,1055,1034,1016,1000,978,948,910,862,814,783,755,728,700,
+672,645,632,621,612,608,602,589,571,546,537,533,534,537,532,525,519,503,480,458,
+440,430,420,410,408,411,412,423,445,466,487,492,500,510,511,513,522,542,565,571,
+558,541,525,506,506,528,556,576,596,618,641,662,685,707,733,764,804,857,912,971,
+1019,1063,1093,1109,1113,1112,1102,1089,1086,1092,1105,1127,1177,1302,1417,1481,1533,1540,1507,1494,
+1511,1506,1493,1497,1516,1541,1562,1582,1597,1614,1593,1559,1543,1540,1524,1499,1495,1490,1489,1498,
+1525,1562,1613,1673,1735,1805,1859,1827,1779,1772,1762,1767,1788,1820,1843,1857,1863,1879,1896,1905,
+1917,1934,1954,1972,1984,1995,2003,2021,2037,2054,2066,2069,2081,2095,2105,2125,2139,2155,2178,2198,
+2218,2244,2270,2278,2295,2306,2317,2332,2349,2404,2397,2412,2430,2455,2471,2485,2496,2505,2516,2524,
+2528,2534,2565,2567,2581,2592,2596,2619,2636,2650,2670,2678,2693,2710,2731,2736,2735,2742,2741,2750,
+2753,2756,2783,2785,2806,2822,2821,2820,2820,2821,2820,2820,2788,2786,2781,2783,2769,2763,2757,2748,
+2740,2734,2723,2711,2704,2700,2691,2667,2659,2653,2682,2694,2695,2688,2678,2673,2666,2667,2676,2673,
+2681,2664,2656,2648,2624,2614,2604,2604,2611,2625,2612,2606,2612,2621,2620,2622,2614,2614,2610,2603,
+2604,2608,2616,2619,2634,2652,2680,2696,2707,2714,2741,2796,2875,2893,2879,2916,2998,3009,3029,3032,
+3084,3072,3096,3097,3073,3090,3119,3161,3199,3198,3198,3215,3236,3262,3281,3306,3335,3340,3383,3425,
+3443,3477,3504,3512,3530,3543,3557,3573,3594,3581,3568,3595,3614,3633,3633,3654,3671,3683,3687,3692,
+3718,3708,3687,3704,3729,3731,3745,3753,3725,3723,3761,3791,3783,3737,3686,3727,3765,3812,3845,3856,
+3829,3733,3553,3488,3581,3664,3717,3716,3755,3847,3894,3894,3873,3847,3810,3785,3794,3823,3858,3849,
+3839,3867,3912,3928,3923,3963,4006,4031,4053,4079,4123,4178,4214,4236,4235,4288,4356,4384,4403,4430,
+4460,4496,4529,4563,4591,4619,4641,4656,4674,4702,4729,4774,4846,4990,5140,5149,5119,5054,4920,4856,
+4833,4826,4830,4812,4787,4783,4776,4779,4775,4758,4733,4716,4712,4715,4722,4729,4729,4719,4694,4655,
+4615,4582,4560,4537,4516,4499,4485,4470,4456,4437,4422,4423,4462,4526,4525,4430,4348,4300,4285,4284,
+4292,4298,4300,4301,4303,4309,4301,4284,4289,4283,4237,4217,4207,4181,4162,4144,4122,4096,4064,4033,
+4011,3991,3973,3954,3935,3916,3885,3816,3778,3776,3776,3765,3717,3706,3707,3691,3668,3643,3622,3600,
+3631,3618,3587,3576,3578,3576,3571,3563,3547,3533,3525,3520,3518,3517,3519,3519,3515,3510,3507,3505,
+3494,3482,3464,3451,3438,3429,3420,3415,3406,3394,3393,3401,3434,3511,3624,3731,3814,3860,3864,3839,
+3836,3854,3867,3879,3879,3861,3838,3807,3782,3757,3731,3693,3655,3612,3574,3553,3539,3499,3407,3288,
+3230,3201,3101,3008,2969,2952,2928,2907,2884,2859,2834,2804,2769,2737,2701,2658,2614,2577,2537,2483,
+2440,2397,2361,2325,2283,2245,2208,2168,2130,2095,2068,2031,1996,1957,1911,1867,1851,1812,1762,1728,
+1698,1665,1630,1595,1567,1537,1513,1486,1455,1421,1376,1332,1301,1264,1225,1195,1165,1130,1092,1061,
+1022,984,951,914,877,841,806,772,736,698,665,632,597,563,523,486,459,428,390,356,
+317,280,245,211,179,147,114,82,50,14,-26,-59,-98,-135,-171,-203,-228,-255,-289,-324,
+-358,-390,-424,-453,-486,-529,-562,-594,-617,-628,-674,-712,-749,-781,-813,-844,-875,-905,-940,-972,
+-1008,-1040,-1067,-1087,-1114,-1137,-1165,-1198,-1232,-1265,-1290,-1314,-1342,-1366,-1389,-1419,-1446,-1477,-1509,-1539,
+-1572,-1598,-1624,-1649,-1667,-1694,-1723,-1753,-1781,-1801,-1828,-1838,-1846,-1866,-1882,-1905,-1921,-1939,-1958,-1970,
+-1987,-2027,-2039,-2054,-2061,-2074,-2087,-2094,-2125,-2120,-2112,-2141,-2167,-2177,-2192,-2198,-2206,-2211,-2221,-2244,
+-2268,-2272,-2278,-2284,-2298,-2314,-2337,-2348,-2353,-2354,-2361,-2379,-2380,-2389,-2388,-2376,-2352,-2342,-2330,-2317,
+-2307,-2300,-2293,-2287,-2278,-2267,-2261,-2254,-2252,-2248,-2250,-2242,-2237,-2224,-2216,-2206,-2201,-2197,-2195,-2188,
+-2176,-2163,-2162,-2159,-2158,-2154,-2145,-2137,-2130,-2120,-2111,-2105,-2086,-2091,-2085,-2071,-2069,-2056,-2053,-2042,
+-2025,-2019,-1996,-2000,-2001,-1986,-2001,-1986,-1932,-1923,-1899,-1897,-1913,-1927,-1924,-1903,-1887,-1858,-1867,-1853,
+-1839,-1828,-1817,-1799,-1796,-1789,-1787,-1788,-1788,-1780,-1781,-1787,-1799,-1821,-1880,-1932,-1939,-1937,-1944,-1957,
+-1946,-1936,-1915,-1898,-1898,-1903,-1908,-1913,-1912,-1909,-1913,-1933,-1947,-1942,-1932,-1919,-1898,-1885,-1880,-1869,
+-1840,-1807,-1852,-1873,-1889,-1901,-1912,-1921,-1927,-1930,-1932,-1934,-1929,-1919,-1912,-1901,-1888,-1872,-1853,-1842,
+-1846,-1852,-1853,-1856,-1838,-1842,-1835,-1803,-1717,-1643,-1596,-1567,-1512,-1534,-1752,-1851,-1826,-1806,-1754,-1718,
+-1737,-1750,-1766,-1795,-1824,-1844,-1861,-1875,-1884,-1913,-1864,-1769,-1663,-1628,-1640,-1653,-1667,-1681,-1681,-1675,
+-1666,-1656,-1639,-1614,-1588,-1560,-1553,-1564,-1586,-1619,-1644,-1671,-1689,-1689,-1680,-1680,-1694,-1713,-1734,-1753,
+-1773,-1795,-1821,-1855,-1893,-1924,-1959,-2023,-2101,-2175,-2215,-2255,-2297,-2338,-2374,-2400,-2410,-2415,-2422,-2430,
+-2438,-2447,-2453,-2461,-2469,-2475,-2482,-2487,-2494,-2503,-2514,-2529,-2545,-2557,-2570,-2584,-2594,-2607,-2616,-2624,
+-2631,-2637,-2639,-2639,-2639,-2644,-2647,-2651,-2651,-2652,-2649,-2647,-2643,-2639,-2637,-2634,-2633,-2626,-2619,-2602,
+-2583,-2571,-2556,-2542,-2535,-2526,-2513,-2499,-2484,-2469,-2464,-2448,-2438,-2443,-2447,-2444,-2438,-2429,-2429,-2427,
+-2421,-2416,-2411,-2412,-2409,-2399,-2396,-2381,-2372,-2360,-2346,-2347,-2350,-2344,-2337,-2339,-2328,-2325,-2317,-2303,
+-2297,-2290,-2261,-2258,-2257,-2250,-2230,-2211,-2203,-2194,-2171,-2150,-2140,-2132,-2138,-2134,-2126,-2119,-2120,-2118,
+-2128,-2131,-2130,-2145,-2191,-2235,-2243,-2242,-2234,-2220,-2193,-2156,-2134,-2109,-2090,-2076,-2050,-2040,-2048,-2035,
+-2036,-2037,-2037,-2049,-2039,-2021,-2016,-2009,-1997,-1994,-1986,-1977,-1968,-1954,-1938,-1932,-1927,-1930,-1914,-1901,
+-1904,-1899,-1896,-1894,-1879,-1875,-1879,-1885,-1878,-1872,-1872,-1861,-1849,-1841,-1830,-1817,-1802,-1804,-1794,-1791,
+-1801,-1806,-1813,-1827,-1863,-1904,-1922,-1912,-1880,-1826,-1791,-1778,-1775,-1809,-1837,-1877,-1934,-1974,-1994,-2003,
+-1994,-1986,-1973,-1961,-1949,-1938,-1926,-1914,-1897,-1891,-1889,-1881,-1880,-1880,-1881,-1879,-1870,-1860,-1852,-1847,
+-1837,-1819,-1799,-1786,-1773,-1757,-1746,-1731,-1722,-1708,-1690,-1667,-1644,-1627,-1612,-1601,-1583,-1568,-1543,-1524,
+-1504,-1483,-1469,-1451,-1435,-1419,-1403,-1387,-1368,-1354,-1340,-1324,-1311,-1301,-1284,-1273,-1254,-1242,-1231,-1216,
+-1202,-1191,-1180,-1171,-1158,-1146,-1132,-1121,-1113,-1091,-1087,-1076,-1065,-1060,-1054,-1044,-1038,-1026,-1030,-1037,
+-1037,-1038,-1045,-1046,-1050,-1055,-1053,-1059,-1064,-1069,-1073,-1077,-1084,-1088,-1094,-1103,-1111,-1122,-1130,-1136,
+-1144,-1146,-1147,-1146,-1154,-1155,-1155,-1159,-1162,-1158,-1163,-1178,-1176,-1177,-1174,-1171,-1172,-1173,-1172,-1172,
+-1172,-1169,-1163,-1151,-1139,-1136,-1130,-1129,-1129,-1130,-1130,-1128,-1127,-1125,-1115,-1110,-1101,-1096,-1089,-1075,
+-1053,-1039,-1028,-1014,-1001,-990,-981,-973,-966,-955,-948,-944,-931,-920,-907,-894,-886,-873,-861,-855,
+-836,-824,-809,-800,-796,-798,-806,-805,-790,-787,-777,-767,-759,-756,-753,-753,-748,-738,-733,-721,
+-701,-688,-671,-656,-643,-626,-607,-588,-572,-555,-542,-526,-512,-498,-479,-458,-438,-417,-399,-377,
+-353,-332,-311,-287,-263,-246,-221,-199,-179,-157,-134,-107,-76,-47,-22,4,23,43,68,101,
+130,155,177,198,222,251,283,317,353,384,416,449,476,502,522,536,553,556,555,548,
+536,518,492,467,464,529,713,885,1018,1156,1254,1287,1291,1277,1282,1294,1296,1292,1310,1303,
+1249,1246,1216,1158,1091,1028,995,983,972,971,978,982,981,994,1034,1074,1093,1090,1090,1082,
+1081,1080,1083,1092,1101,1119,1139,1161,1192,1220,1242,1264,1280,1300,1319,1342,1353,1349,1343,1332,
+1329,1338,1382,1390,1395,1388,1359,1312,1267,1233,1213,1206,1210,1214,1216,1221,1219,1223,1230,1229,
+1230,1226,1237,1238,1204,1148,1089,1044,1011,983,958,931,905,870,827,770,731,704,669,638,
+613,594,580,582,589,588,578,560,533,498,460,429,411,398,386,371,355,331,305,278,
+256,243,237,238,248,256,271,293,321,350,370,393,409,419,424,422,421,424,432,447,
+450,445,446,443,442,457,472,494,514,527,545,571,595,615,637,667,704,756,824,905,
+987,1061,1125,1150,1144,1143,1147,1151,1153,1153,1162,1177,1194,1221,1285,1396,1474,1535,1535,1538,
+1544,1538,1526,1515,1530,1554,1577,1605,1629,1643,1658,1655,1642,1621,1594,1568,1540,1527,1523,1525,
+1532,1546,1574,1612,1672,1723,1800,1829,1761,1727,1734,1751,1820,1879,1863,1868,1890,1907,1920,1929,
+1932,1934,1955,1985,1994,1994,2012,2025,2038,2045,2060,2072,2082,2096,2106,2123,2143,2162,2180,2201,
+2217,2230,2244,2265,2279,2295,2307,2326,2333,2352,2380,2396,2407,2423,2436,2446,2468,2500,2510,2526,
+2554,2558,2567,2567,2561,2582,2600,2607,2623,2644,2654,2676,2681,2706,2715,2717,2726,2734,2743,2745,
+2746,2744,2743,2757,2774,2787,2798,2809,2805,2794,2788,2770,2777,2778,2798,2791,2768,2765,2768,2757,
+2739,2727,2718,2711,2705,2711,2712,2683,2672,2680,2682,2716,2706,2705,2700,2701,2694,2690,2686,2714,
+2700,2700,2689,2691,2651,2636,2635,2639,2630,2639,2658,2658,2633,2596,2607,2623,2612,2606,2606,2606,
+2605,2609,2613,2612,2621,2637,2658,2679,2697,2717,2736,2760,2785,2780,2810,2901,2946,2957,2975,2954,
+2936,2916,2931,2968,3019,3075,3134,3182,3210,3202,3209,3250,3306,3322,3329,3319,3323,3357,3389,3395,
+3397,3391,3377,3378,3426,3466,3502,3543,3570,3578,3600,3593,3621,3657,3665,3686,3711,3701,3697,3717,
+3729,3715,3713,3725,3739,3765,3799,3780,3761,3758,3790,3833,3814,3748,3665,3666,3733,3767,3805,3857,
+3858,3805,3639,3515,3556,3637,3682,3709,3711,3760,3830,3837,3826,3806,3771,3754,3746,3761,3798,3842,
+3857,3849,3887,3914,3914,3929,3984,4002,4029,4050,4083,4139,4185,4208,4205,4237,4299,4338,4359,4383,
+4416,4455,4492,4527,4560,4593,4619,4645,4663,4690,4709,4735,4780,4843,4929,5016,5093,5102,5005,4906,
+4851,4830,4836,4872,4868,4862,4872,4900,4923,4925,4843,4768,4724,4698,4689,4689,4684,4682,4671,4652,
+4623,4595,4592,4652,4613,4534,4486,4457,4440,4439,4441,4425,4472,4620,4732,4713,4541,4366,4297,4272,
+4271,4271,4273,4278,4282,4295,4296,4295,4291,4246,4204,4190,4203,4179,4169,4156,4137,4114,4083,4050,
+4020,4000,3985,3968,3953,3933,3896,3826,3784,3779,3779,3768,3724,3707,3725,3723,3696,3673,3648,3595,
+3568,3577,3591,3561,3547,3542,3538,3526,3513,3498,3485,3480,3480,3483,3487,3494,3500,3503,3497,3490,
+3487,3475,3467,3462,3454,3446,3431,3420,3411,3403,3397,3398,3405,3435,3490,3566,3647,3738,3899,3949,
+3883,3863,3885,3910,3931,3935,3918,3893,3864,3833,3796,3759,3721,3662,3608,3570,3547,3533,3501,3459,
+3403,3334,3287,3249,3162,3060,2960,2865,2812,2785,2760,2726,2700,2666,2647,2639,2600,2569,2559,2533,
+2489,2445,2395,2356,2315,2273,2237,2200,2163,2127,2092,2061,2027,1985,1942,1903,1877,1831,1794,1759,
+1731,1695,1663,1623,1588,1559,1532,1505,1476,1445,1409,1372,1339,1308,1266,1227,1194,1166,1125,1086,
+1051,1015,982,946,907,875,843,808,773,737,703,673,641,609,569,526,491,463,432,397,
+364,332,299,266,235,202,167,135,99,65,26,-14,-50,-85,-117,-148,-173,-201,-240,-270,
+-306,-342,-375,-408,-445,-482,-516,-545,-571,-587,-614,-652,-690,-726,-763,-796,-827,-860,-891,-930,
+-961,-988,-1016,-1039,-1065,-1095,-1124,-1158,-1191,-1219,-1244,-1270,-1294,-1317,-1348,-1378,-1406,-1437,-1466,-1496,
+-1531,-1559,-1587,-1616,-1640,-1661,-1689,-1720,-1746,-1770,-1795,-1820,-1830,-1848,-1868,-1882,-1896,-1925,-1937,-1949,
+-1958,-1995,-2020,-2043,-2046,-2061,-2076,-2089,-2102,-2119,-2092,-2106,-2136,-2155,-2174,-2186,-2192,-2206,-2212,-2223,
+-2252,-2275,-2281,-2279,-2302,-2319,-2322,-2334,-2358,-2355,-2358,-2359,-2389,-2387,-2395,-2403,-2390,-2372,-2358,-2344,
+-2334,-2323,-2315,-2306,-2299,-2294,-2285,-2277,-2269,-2262,-2258,-2259,-2260,-2258,-2245,-2234,-2226,-2219,-2212,-2210,
+-2209,-2200,-2192,-2181,-2175,-2174,-2169,-2167,-2155,-2151,-2143,-2140,-2134,-2125,-2110,-2110,-2105,-2084,-2087,-2074,
+-2064,-2055,-2043,-2038,-2003,-2007,-2025,-2033,-2022,-1960,-1940,-1919,-1923,-1932,-1935,-1932,-1908,-1890,-1888,-1875,
+-1862,-1847,-1836,-1818,-1801,-1807,-1802,-1808,-1808,-1803,-1794,-1792,-1799,-1810,-1833,-1872,-1925,-1947,-1949,-1958,
+-1969,-1955,-1942,-1914,-1903,-1904,-1907,-1911,-1914,-1909,-1909,-1917,-1927,-1958,-1963,-1952,-1937,-1914,-1904,-1900,
+-1900,-1889,-1880,-1891,-1899,-1909,-1915,-1924,-1933,-1943,-1943,-1941,-1954,-1951,-1947,-1944,-1942,-1938,-1932,-1919,
+-1896,-1883,-1879,-1876,-1877,-1882,-1880,-1871,-1850,-1774,-1695,-1624,-1523,-1429,-1664,-1860,-1879,-1839,-1825,-1785,
+-1786,-1811,-1844,-1861,-1879,-1891,-1916,-1930,-1949,-1971,-1975,-1901,-1848,-1721,-1697,-1723,-1744,-1759,-1768,-1770,
+-1763,-1757,-1743,-1713,-1676,-1636,-1603,-1584,-1590,-1616,-1650,-1678,-1720,-1742,-1753,-1758,-1761,-1771,-1784,-1809,
+-1834,-1851,-1873,-1902,-1923,-1949,-1992,-2056,-2157,-2228,-2284,-2338,-2371,-2403,-2433,-2457,-2480,-2495,-2495,-2501,
+-2512,-2526,-2533,-2540,-2551,-2562,-2568,-2570,-2575,-2589,-2597,-2606,-2621,-2630,-2646,-2664,-2677,-2688,-2696,-2705,
+-2707,-2711,-2713,-2716,-2718,-2722,-2724,-2727,-2725,-2732,-2731,-2729,-2725,-2718,-2710,-2704,-2698,-2692,-2689,-2680,
+-2674,-2674,-2660,-2643,-2631,-2619,-2609,-2597,-2584,-2569,-2553,-2539,-2532,-2530,-2516,-2512,-2512,-2508,-2509,-2501,
+-2493,-2487,-2481,-2475,-2474,-2464,-2461,-2457,-2446,-2429,-2419,-2406,-2401,-2399,-2387,-2384,-2382,-2379,-2370,-2370,
+-2356,-2347,-2345,-2334,-2308,-2294,-2292,-2275,-2267,-2260,-2244,-2235,-2219,-2205,-2193,-2181,-2178,-2166,-2163,-2159,
+-2166,-2168,-2160,-2161,-2156,-2157,-2162,-2178,-2221,-2261,-2277,-2272,-2256,-2224,-2183,-2135,-2107,-2093,-2078,-2076,
+-2071,-2062,-2065,-2064,-2061,-2059,-2059,-2052,-2046,-2035,-2035,-2030,-2027,-2018,-2003,-1988,-1973,-1968,-1963,-1939,
+-1941,-1930,-1926,-1927,-1920,-1916,-1917,-1921,-1903,-1889,-1883,-1882,-1878,-1883,-1870,-1857,-1852,-1846,-1835,-1823,
+-1796,-1765,-1797,-1805,-1795,-1790,-1806,-1819,-1837,-1872,-1906,-1918,-1902,-1866,-1827,-1791,-1779,-1814,-1868,-1922,
+-1976,-2014,-2021,-2019,-2031,-2024,-2014,-2000,-1984,-1973,-1958,-1938,-1927,-1913,-1903,-1897,-1888,-1880,-1870,-1866,
+-1859,-1848,-1829,-1808,-1791,-1773,-1762,-1756,-1740,-1724,-1711,-1690,-1676,-1660,-1640,-1632,-1618,-1603,-1588,-1568,
+-1544,-1519,-1497,-1478,-1463,-1445,-1423,-1406,-1392,-1375,-1361,-1346,-1330,-1315,-1302,-1288,-1270,-1256,-1243,-1226,
+-1211,-1205,-1196,-1185,-1174,-1163,-1151,-1138,-1127,-1118,-1110,-1097,-1091,-1086,-1073,-1060,-1053,-1044,-1035,-1043,
+-1047,-1046,-1051,-1056,-1058,-1061,-1064,-1066,-1071,-1073,-1077,-1081,-1086,-1088,-1093,-1099,-1105,-1113,-1119,-1131,
+-1141,-1144,-1150,-1157,-1165,-1171,-1171,-1169,-1168,-1166,-1168,-1174,-1181,-1187,-1189,-1185,-1180,-1177,-1181,-1189,
+-1198,-1197,-1193,-1184,-1167,-1151,-1157,-1153,-1151,-1152,-1151,-1150,-1148,-1140,-1141,-1121,-1112,-1106,-1108,-1109,
+-1101,-1086,-1070,-1059,-1041,-1024,-1009,-996,-984,-973,-963,-959,-952,-945,-935,-921,-910,-895,-877,-861,
+-850,-837,-822,-822,-822,-817,-809,-804,-804,-810,-805,-789,-775,-777,-772,-770,-766,-762,-750,-742,
+-736,-714,-701,-690,-675,-658,-640,-623,-606,-587,-571,-557,-543,-528,-512,-494,-474,-454,-426,-406,
+-389,-369,-355,-337,-318,-300,-279,-261,-241,-218,-193,-164,-133,-100,-72,-47,-26,-14,-16,23,
+76,112,132,155,179,207,237,268,301,337,370,402,431,456,481,505,524,537,546,545,
+539,530,513,490,461,442,468,609,767,922,1088,1199,1244,1286,1300,1296,1284,1269,1267,1270,
+1276,1258,1236,1194,1162,1095,1036,1013,985,964,976,966,971,985,1012,1047,1079,1108,1123,1132,
+1131,1126,1126,1131,1137,1136,1150,1162,1177,1198,1226,1246,1262,1278,1300,1312,1321,1334,1327,1311,
+1296,1282,1290,1331,1347,1339,1322,1281,1232,1209,1191,1182,1179,1188,1199,1199,1200,1190,1181,1180,
+1192,1217,1234,1223,1184,1130,1075,1031,988,947,916,879,839,800,762,717,669,636,601,569,
+540,516,501,498,509,522,527,518,495,462,414,359,310,272,239,216,190,159,134,113,
+99,95,95,99,110,124,139,168,202,235,260,279,292,307,315,321,325,332,352,378,
+395,411,418,414,412,419,417,422,430,441,453,467,482,497,509,532,572,619,679,778,
+892,1002,1097,1161,1185,1164,1149,1154,1178,1198,1205,1212,1223,1239,1264,1309,1369,1450,1521,1558,
+1576,1556,1542,1527,1528,1554,1581,1605,1622,1630,1646,1658,1677,1666,1634,1607,1575,1553,1546,1555,
+1560,1564,1568,1586,1621,1653,1690,1736,1746,1737,1702,1745,1816,1904,2004,2022,1937,1926,1936,1947,
+1948,1950,1956,1971,1975,1989,2005,2028,2044,2047,2061,2079,2093,2098,2103,2112,2128,2144,2159,2178,
+2199,2217,2231,2244,2266,2282,2295,2306,2328,2340,2359,2376,2391,2416,2440,2453,2447,2469,2489,2502,
+2517,2531,2539,2549,2548,2570,2583,2595,2605,2618,2641,2651,2665,2669,2679,2700,2705,2711,2719,2729,
+2734,2730,2728,2730,2760,2775,2780,2783,2782,2775,2787,2845,2809,2790,2804,2806,2801,2787,2767,2760,
+2754,2745,2743,2748,2726,2705,2713,2725,2720,2715,2711,2716,2717,2714,2712,2719,2715,2722,2716,2712,
+2713,2699,2702,2703,2684,2657,2656,2672,2683,2689,2687,2652,2630,2631,2639,2640,2627,2615,2615,2615,
+2618,2619,2631,2639,2643,2652,2664,2675,2686,2712,2709,2701,2685,2705,2745,2811,2870,2915,2922,2873,
+2872,2922,2962,2964,3016,3095,3159,3191,3170,3194,3252,3270,3258,3259,3271,3286,3291,3318,3356,3375,
+3378,3375,3388,3420,3432,3431,3432,3430,3451,3482,3487,3503,3556,3580,3584,3597,3630,3648,3648,3670,
+3683,3677,3693,3714,3744,3792,3819,3815,3810,3808,3831,3867,3854,3815,3763,3722,3840,3890,3850,3783,
+3762,3748,3672,3522,3535,3611,3681,3696,3717,3722,3747,3786,3784,3754,3745,3729,3739,3732,3736,3769,
+3831,3822,3838,3876,3896,3897,3940,3966,3986,4020,4050,4077,4124,4164,4172,4190,4242,4288,4313,4337,
+4368,4406,4448,4490,4525,4557,4587,4612,4635,4666,4688,4711,4741,4777,4817,4856,4889,4911,4911,4886,
+4852,4830,4820,4836,4891,5000,5056,5114,5142,5159,5139,5070,4952,4799,4717,4677,4657,4645,4634,4627,
+4602,4581,4580,4609,4670,4696,4598,4513,4464,4425,4397,4433,4493,4564,4613,4633,4589,4453,4362,4317,
+4299,4293,4290,4290,4294,4312,4324,4280,4245,4205,4189,4182,4161,4155,4154,4149,4141,4122,4096,4080,
+4060,4028,4012,3990,3970,3949,3912,3838,3790,3779,3777,3765,3729,3695,3728,3744,3719,3686,3685,3646,
+3604,3592,3585,3567,3545,3526,3516,3506,3491,3486,3490,3489,3481,3469,3460,3463,3470,3480,3486,3486,
+3481,3477,3472,3466,3461,3456,3452,3442,3433,3428,3421,3417,3415,3420,3431,3459,3502,3552,3620,3702,
+3769,3805,3871,3935,3980,4016,4022,3985,3936,3893,3846,3788,3746,3702,3647,3593,3553,3527,3514,3484,
+3425,3391,3381,3390,3342,3303,3232,3159,3070,2993,2934,2863,2796,2746,2685,2658,2643,2555,2499,2490,
+2492,2478,2435,2394,2352,2310,2270,2233,2197,2161,2123,2089,2053,2011,1970,1938,1899,1862,1826,1792,
+1754,1717,1681,1646,1615,1586,1558,1531,1500,1467,1428,1394,1365,1327,1296,1263,1228,1193,1152,1119,
+1083,1049,1012,975,937,904,873,845,821,786,751,712,678,646,615,581,538,497,467,440,
+409,376,344,316,281,248,219,181,145,109,75,40,1,-33,-66,-102,-130,-157,-190,-221,
+-255,-290,-328,-364,-398,-431,-465,-500,-532,-544,-568,-599,-643,-678,-715,-746,-777,-815,-849,-878,
+-912,-942,-966,-996,-1022,-1052,-1079,-1115,-1148,-1175,-1199,-1226,-1256,-1282,-1310,-1336,-1367,-1396,-1423,-1456,
+-1488,-1521,-1552,-1578,-1606,-1630,-1657,-1684,-1711,-1738,-1765,-1796,-1814,-1824,-1842,-1864,-1884,-1901,-1927,-1944,
+-1962,-1980,-1997,-2018,-2036,-2045,-2070,-2080,-2086,-2097,-2104,-2095,-2107,-2135,-2152,-2171,-2186,-2199,-2210,-2217,
+-2229,-2249,-2276,-2272,-2275,-2305,-2329,-2340,-2344,-2353,-2355,-2364,-2368,-2396,-2399,-2402,-2401,-2397,-2371,-2359,
+-2348,-2339,-2332,-2325,-2319,-2319,-2312,-2303,-2290,-2281,-2275,-2271,-2267,-2266,-2267,-2265,-2254,-2241,-2236,-2232,
+-2226,-2222,-2219,-2219,-2213,-2202,-2192,-2187,-2190,-2186,-2176,-2166,-2162,-2153,-2156,-2152,-2137,-2139,-2132,-2122,
+-2099,-2091,-2081,-2070,-2060,-2063,-2041,-2034,-2063,-2045,-2001,-1969,-1941,-1955,-1955,-1945,-1941,-1918,-1902,-1901,
+-1871,-1873,-1859,-1842,-1830,-1820,-1816,-1813,-1816,-1810,-1814,-1806,-1806,-1809,-1818,-1839,-1869,-1926,-1963,-1970,
+-1961,-1979,-1954,-1938,-1920,-1905,-1905,-1913,-1923,-1930,-1932,-1928,-1932,-1949,-1977,-1968,-1975,-1961,-1940,-1929,
+-1930,-1942,-1950,-1955,-1950,-1941,-1933,-1934,-1937,-1944,-1946,-1948,-1950,-1954,-1961,-1968,-1979,-1986,-1989,-1979,
+-1966,-1947,-1928,-1915,-1908,-1909,-1907,-1911,-1911,-1879,-1786,-1703,-1586,-1586,-1725,-1811,-1892,-1895,-1870,-1849,
+-1834,-1845,-1880,-1914,-1936,-1965,-1969,-1982,-2005,-2023,-2056,-2034,-1960,-1909,-1792,-1782,-1810,-1826,-1838,-1846,
+-1854,-1845,-1842,-1834,-1814,-1785,-1753,-1719,-1694,-1691,-1701,-1723,-1750,-1783,-1807,-1833,-1854,-1863,-1867,-1879,
+-1909,-1938,-1967,-1988,-2017,-2033,-2054,-2090,-2178,-2272,-2336,-2396,-2443,-2476,-2501,-2524,-2547,-2565,-2578,-2572,
+-2580,-2595,-2611,-2625,-2634,-2650,-2663,-2666,-2662,-2665,-2675,-2684,-2694,-2705,-2718,-2733,-2752,-2766,-2775,-2779,
+-2783,-2789,-2790,-2790,-2791,-2792,-2796,-2799,-2805,-2809,-2808,-2805,-2804,-2797,-2790,-2780,-2775,-2772,-2763,-2754,
+-2746,-2743,-2738,-2739,-2736,-2728,-2710,-2694,-2677,-2659,-2647,-2633,-2623,-2615,-2607,-2597,-2585,-2577,-2570,-2562,
+-2555,-2550,-2547,-2544,-2541,-2535,-2527,-2517,-2504,-2502,-2496,-2488,-2478,-2468,-2456,-2458,-2427,-2421,-2416,-2421,
+-2422,-2408,-2392,-2387,-2377,-2377,-2371,-2348,-2334,-2325,-2309,-2307,-2291,-2279,-2266,-2249,-2239,-2228,-2219,-2217,
+-2212,-2207,-2177,-2190,-2192,-2187,-2182,-2173,-2167,-2169,-2182,-2233,-2284,-2301,-2294,-2274,-2232,-2191,-2158,-2140,
+-2120,-2109,-2106,-2104,-2096,-2087,-2079,-2070,-2064,-2059,-2057,-2054,-2040,-2037,-2036,-2029,-2020,-2006,-1997,-1985,
+-1991,-1992,-1975,-1970,-1956,-1939,-1935,-1936,-1936,-1927,-1916,-1907,-1895,-1896,-1892,-1886,-1875,-1867,-1862,-1851,
+-1843,-1844,-1831,-1814,-1821,-1820,-1812,-1805,-1796,-1787,-1788,-1794,-1798,-1822,-1859,-1893,-1920,-1907,-1868,-1848,
+-1851,-1868,-1906,-1947,-1990,-2028,-2038,-2047,-2059,-2057,-2037,-2015,-1991,-1969,-1946,-1927,-1909,-1901,-1889,-1874,
+-1860,-1849,-1838,-1831,-1815,-1793,-1778,-1766,-1753,-1741,-1727,-1713,-1700,-1678,-1668,-1656,-1641,-1619,-1609,-1593,
+-1572,-1556,-1538,-1521,-1505,-1490,-1470,-1455,-1435,-1409,-1387,-1371,-1352,-1338,-1321,-1307,-1294,-1279,-1264,-1247,
+-1233,-1219,-1206,-1190,-1180,-1169,-1161,-1152,-1145,-1137,-1129,-1127,-1117,-1107,-1097,-1088,-1078,-1074,-1061,-1059,
+-1062,-1055,-1060,-1067,-1069,-1073,-1077,-1079,-1080,-1082,-1089,-1091,-1094,-1098,-1102,-1107,-1111,-1117,-1123,-1127,
+-1135,-1140,-1141,-1148,-1154,-1158,-1162,-1164,-1168,-1167,-1165,-1157,-1164,-1175,-1180,-1183,-1185,-1183,-1179,-1191,
+-1202,-1209,-1205,-1201,-1190,-1182,-1176,-1175,-1167,-1166,-1162,-1166,-1166,-1164,-1154,-1149,-1135,-1118,-1115,-1115,
+-1116,-1110,-1099,-1087,-1075,-1058,-1043,-1029,-1014,-999,-983,-971,-965,-959,-952,-949,-940,-927,-910,-892,
+-875,-863,-852,-827,-816,-811,-813,-818,-831,-833,-832,-825,-810,-798,-789,-780,-768,-774,-774,-770,
+-767,-753,-736,-719,-704,-690,-674,-655,-636,-619,-600,-584,-570,-559,-545,-529,-510,-490,-469,-450,
+-430,-409,-393,-378,-359,-345,-329,-312,-295,-270,-241,-223,-193,-160,-135,-99,-71,-49,-34,-8,
+23,68,92,108,133,164,198,229,260,289,320,351,380,409,434,459,481,503,520,529,
+532,528,520,508,486,461,434,444,560,711,832,983,1127,1216,1244,1260,1274,1261,1231,1227,
+1236,1234,1236,1240,1230,1187,1110,1049,1004,973,956,954,961,979,998,1027,1064,1103,1132,1155,
+1176,1175,1175,1176,1176,1174,1178,1177,1188,1202,1218,1236,1253,1263,1277,1290,1299,1301,1299,1290,
+1268,1254,1254,1255,1289,1303,1284,1257,1208,1167,1151,1141,1133,1132,1138,1148,1153,1147,1131,1121,
+1131,1156,1172,1165,1126,1072,1026,986,942,899,854,811,768,725,683,644,599,562,534,512,
+496,484,473,468,470,490,517,531,534,517,482,430,362,296,232,182,153,133,121,119,
+130,148,179,203,217,236,248,252,260,266,261,258,256,256,258,263,273,291,328,370,
+411,446,473,493,488,472,449,425,402,388,383,385,388,397,407,421,437,465,515,592,
+696,826,946,1045,1114,1151,1159,1152,1147,1175,1212,1228,1237,1251,1274,1314,1362,1398,1455,1522,
+1574,1571,1544,1517,1517,1538,1565,1591,1610,1626,1629,1617,1638,1654,1634,1625,1604,1582,1579,1559,
+1574,1584,1586,1593,1601,1612,1621,1637,1675,1693,1685,1698,1739,1839,1931,1982,1976,1909,1934,1941,
+1941,1947,1953,1959,1956,1961,1977,2000,2020,2038,2049,2063,2090,2101,2108,2116,2126,2138,2151,2166,
+2185,2205,2225,2237,2250,2268,2279,2292,2306,2328,2337,2349,2369,2385,2408,2426,2427,2430,2446,2461,
+2482,2502,2508,2518,2528,2549,2556,2565,2580,2597,2608,2631,2645,2661,2661,2664,2674,2688,2692,2695,
+2704,2714,2712,2711,2745,2771,2750,2758,2758,2776,2785,2799,2810,2812,2818,2819,2817,2806,2801,2798,
+2814,2789,2778,2772,2779,2777,2749,2736,2735,2726,2726,2720,2717,2740,2735,2738,2740,2733,2730,2736,
+2730,2711,2708,2708,2697,2690,2685,2700,2715,2722,2690,2664,2658,2643,2663,2662,2647,2646,2647,2641,
+2657,2673,2681,2683,2693,2692,2696,2691,2705,2713,2684,2643,2620,2667,2696,2768,2795,2841,2878,2894,
+2904,2883,2921,2979,3014,3061,3086,3084,3069,3108,3161,3161,3135,3127,3166,3210,3227,3239,3285,3326,
+3356,3368,3355,3368,3400,3436,3458,3478,3514,3520,3545,3565,3557,3529,3540,3543,3558,3563,3552,3573,
+3588,3602,3613,3636,3689,3753,3764,3774,3802,3837,3842,3831,3816,3818,3816,3734,3790,3850,3874,3834,
+3788,3736,3657,3560,3510,3579,3626,3658,3697,3736,3708,3711,3724,3734,3718,3696,3694,3699,3716,3724,
+3743,3782,3799,3820,3855,3870,3892,3923,3942,3973,4008,4033,4070,4112,4134,4143,4192,4234,4266,4292,
+4318,4355,4398,4440,4481,4517,4551,4577,4601,4632,4659,4688,4718,4748,4777,4803,4824,4842,4852,4852,
+4842,4827,4814,4802,4818,4868,4958,5029,5086,5130,5148,5126,5093,5066,4971,4801,4697,4646,4620,4604,
+4592,4576,4560,4589,4715,4771,4800,4772,4659,4541,4446,4368,4371,4395,4427,4431,4418,4395,4371,4350,
+4336,4326,4317,4303,4304,4302,4292,4245,4214,4186,4179,4205,4187,4145,4125,4123,4122,4112,4094,4094,
+4101,4057,4031,4012,3990,3962,3923,3853,3798,3782,3775,3764,3721,3687,3728,3755,3738,3704,3712,3695,
+3647,3613,3597,3579,3565,3545,3522,3503,3513,3508,3540,3579,3589,3598,3560,3466,3451,3461,3473,3478,
+3479,3474,3471,3471,3472,3470,3467,3460,3452,3444,3441,3436,3429,3428,3430,3439,3454,3476,3505,3545,
+3593,3654,3732,3836,3899,3949,4021,4074,4004,3914,3845,3776,3728,3694,3659,3619,3573,3531,3500,3485,
+3454,3397,3326,3298,3326,3277,3200,3134,3075,3039,3002,2991,3003,2977,2902,2811,2705,2668,2562,2466,
+2473,2438,2380,2371,2374,2346,2312,2274,2237,2197,2159,2119,2080,2034,1997,1970,1935,1898,1862,1818,
+1782,1742,1703,1671,1638,1607,1581,1552,1523,1491,1453,1425,1396,1358,1321,1288,1254,1218,1185,1149,
+1116,1083,1049,1010,976,942,909,882,850,818,786,751,715,681,645,611,581,547,514,483,
+450,415,380,351,323,292,260,229,194,160,122,86,47,10,-21,-55,-88,-114,-149,-181,
+-213,-247,-279,-317,-354,-386,-420,-453,-486,-499,-519,-552,-589,-627,-661,-694,-727,-763,-797,-830,
+-859,-890,-921,-951,-980,-1014,-1041,-1072,-1102,-1133,-1159,-1190,-1217,-1245,-1270,-1296,-1324,-1356,-1387,-1415,
+-1448,-1480,-1512,-1538,-1570,-1593,-1616,-1643,-1672,-1704,-1732,-1764,-1793,-1800,-1818,-1840,-1858,-1878,-1900,-1922,
+-1934,-1955,-1971,-1979,-1998,-2020,-2043,-2065,-2087,-2102,-2114,-2099,-2091,-2104,-2134,-2156,-2174,-2186,-2198,-2210,
+-2217,-2236,-2260,-2282,-2274,-2282,-2313,-2328,-2343,-2338,-2353,-2366,-2367,-2376,-2401,-2399,-2408,-2402,-2387,-2370,
+-2365,-2356,-2347,-2341,-2337,-2335,-2331,-2327,-2321,-2315,-2304,-2296,-2288,-2279,-2276,-2276,-2279,-2278,-2265,-2258,
+-2251,-2244,-2237,-2237,-2231,-2233,-2231,-2223,-2214,-2213,-2207,-2208,-2200,-2194,-2184,-2172,-2171,-2175,-2164,-2155,
+-2156,-2149,-2125,-2110,-2100,-2087,-2084,-2079,-2081,-2082,-2077,-2038,-2007,-1987,-1979,-1986,-1964,-1959,-1932,-1927,
+-1899,-1901,-1884,-1869,-1856,-1847,-1831,-1831,-1830,-1832,-1837,-1831,-1812,-1812,-1818,-1828,-1845,-1873,-1930,-1989,
+-1987,-1983,-1988,-1986,-1965,-1956,-1932,-1933,-1938,-1952,-1960,-1961,-1956,-1950,-1964,-1991,-1987,-1982,-1994,-1984,
+-1978,-1974,-1978,-1987,-1999,-1998,-1989,-1973,-1963,-1961,-1962,-1963,-1962,-1961,-1965,-1977,-1987,-2000,-2009,-2018,
+-2011,-1988,-2003,-2004,-1999,-1989,-1976,-1969,-1969,-1967,-1913,-1822,-1705,-1641,-1791,-1848,-1879,-1912,-1893,-1891,
+-1889,-1901,-1925,-1958,-1988,-2018,-2034,-2050,-2069,-2073,-2099,-2143,-2068,-2017,-1962,-1862,-1861,-1891,-1909,-1920,
+-1928,-1925,-1919,-1919,-1919,-1911,-1907,-1888,-1862,-1849,-1829,-1811,-1817,-1840,-1869,-1900,-1941,-1974,-1984,-1986,
+-2002,-2026,-2056,-2088,-2113,-2146,-2165,-2177,-2201,-2257,-2357,-2447,-2508,-2551,-2581,-2603,-2620,-2637,-2652,-2653,
+-2659,-2660,-2672,-2689,-2715,-2735,-2745,-2746,-2744,-2746,-2750,-2760,-2774,-2789,-2800,-2809,-2818,-2830,-2841,-2853,
+-2856,-2860,-2865,-2868,-2865,-2862,-2860,-2860,-2866,-2874,-2877,-2878,-2875,-2873,-2867,-2860,-2852,-2843,-2838,-2829,
+-2823,-2818,-2812,-2807,-2803,-2800,-2792,-2796,-2780,-2759,-2742,-2723,-2712,-2702,-2692,-2682,-2671,-2662,-2656,-2640,
+-2622,-2613,-2610,-2608,-2603,-2597,-2605,-2603,-2596,-2583,-2569,-2551,-2540,-2538,-2538,-2536,-2526,-2522,-2506,-2485,
+-2468,-2470,-2462,-2447,-2445,-2438,-2434,-2421,-2400,-2397,-2376,-2363,-2349,-2341,-2337,-2328,-2307,-2299,-2296,-2281,
+-2270,-2262,-2253,-2247,-2241,-2225,-2216,-2213,-2210,-2201,-2192,-2185,-2191,-2215,-2238,-2286,-2310,-2290,-2262,-2222,
+-2187,-2163,-2145,-2130,-2121,-2114,-2106,-2106,-2101,-2090,-2083,-2081,-2074,-2064,-2061,-2056,-2053,-2039,-2028,-2021,
+-2007,-2005,-2007,-1999,-1993,-1991,-1998,-1990,-1980,-1964,-1948,-1936,-1932,-1919,-1915,-1907,-1885,-1882,-1885,-1880,
+-1866,-1864,-1869,-1859,-1849,-1838,-1823,-1809,-1821,-1819,-1814,-1801,-1782,-1751,-1752,-1761,-1774,-1785,-1809,-1832,
+-1858,-1880,-1886,-1874,-1874,-1900,-1942,-1978,-2006,-2027,-2040,-2056,-2058,-2037,-2018,-1990,-1970,-1949,-1928,-1906,
+-1889,-1873,-1858,-1840,-1828,-1826,-1817,-1805,-1785,-1765,-1743,-1727,-1722,-1705,-1686,-1673,-1658,-1648,-1630,-1613,
+-1596,-1579,-1562,-1542,-1520,-1503,-1487,-1470,-1463,-1459,-1444,-1421,-1394,-1374,-1356,-1337,-1320,-1302,-1288,-1274,
+-1262,-1248,-1231,-1216,-1209,-1197,-1185,-1168,-1156,-1142,-1134,-1129,-1125,-1120,-1115,-1109,-1104,-1098,-1094,-1083,
+-1077,-1080,-1076,-1083,-1086,-1091,-1089,-1093,-1097,-1097,-1098,-1100,-1105,-1109,-1114,-1121,-1125,-1128,-1133,-1137,
+-1140,-1144,-1148,-1152,-1153,-1154,-1155,-1157,-1161,-1160,-1160,-1162,-1161,-1169,-1175,-1175,-1182,-1184,-1191,-1198,
+-1203,-1203,-1208,-1209,-1207,-1202,-1193,-1191,-1188,-1181,-1178,-1176,-1178,-1176,-1173,-1174,-1163,-1165,-1154,-1145,
+-1130,-1121,-1112,-1103,-1091,-1077,-1060,-1044,-1031,-1016,-998,-987,-975,-966,-961,-959,-955,-949,-935,-923,
+-909,-894,-881,-857,-838,-828,-823,-822,-820,-820,-833,-827,-824,-830,-833,-816,-801,-791,-793,-793,
+-789,-775,-769,-751,-735,-718,-700,-681,-664,-644,-625,-609,-592,-583,-572,-557,-543,-526,-506,-484,
+-465,-445,-424,-412,-395,-378,-364,-349,-332,-314,-293,-271,-242,-214,-180,-160,-128,-95,-76,-50,
+-7,16,54,83,104,130,162,189,220,250,276,303,330,359,385,410,434,456,477,495,
+510,513,515,512,503,488,465,441,435,509,652,706,777,950,1120,1215,1240,1265,1251,1197,
+1153,1166,1203,1231,1263,1249,1191,1135,1073,1029,984,965,969,989,1011,1041,1062,1090,1135,1181,
+1202,1217,1218,1210,1205,1202,1209,1211,1212,1220,1229,1238,1245,1252,1258,1263,1264,1268,1254,1241,
+1240,1234,1220,1210,1201,1204,1205,1184,1149,1110,1083,1069,1074,1080,1080,1081,1082,1080,1067,1055,
+1052,1059,1059,1040,999,958,929,897,856,813,768,718,677,631,590,551,518,493,481,473,
+479,495,514,534,555,577,606,629,647,661,657,628,583,523,438,347,282,287,329,373,
+435,492,565,669,740,785,785,745,687,628,553,485,438,401,378,366,364,379,408,448,
+492,537,579,618,629,614,588,547,494,438,400,381,367,355,344,341,344,358,382,431,
+508,605,706,818,916,994,1059,1094,1116,1130,1155,1200,1230,1251,1277,1309,1349,1391,1429,1474,
+1529,1575,1588,1566,1549,1567,1565,1586,1609,1629,1639,1630,1635,1643,1631,1611,1608,1622,1600,1567,
+1569,1585,1597,1601,1609,1615,1613,1609,1619,1677,1667,1644,1681,1726,1865,1916,1916,1885,1888,1945,
+1968,1978,1977,1971,1973,1975,1983,1992,1997,2018,2038,2045,2065,2090,2106,2121,2128,2134,2146,2160,
+2175,2192,2208,2228,2242,2256,2272,2280,2291,2299,2312,2324,2334,2353,2364,2379,2384,2408,2424,2429,
+2446,2469,2481,2485,2498,2504,2517,2531,2545,2564,2575,2592,2606,2627,2637,2642,2644,2647,2655,2666,
+2670,2672,2679,2686,2690,2709,2718,2733,2754,2754,2758,2767,2783,2780,2798,2831,2837,2831,2822,2825,
+2816,2813,2804,2796,2771,2759,2760,2752,2752,2747,2739,2733,2733,2740,2745,2752,2739,2739,2748,2740,
+2739,2735,2733,2706,2691,2688,2696,2699,2672,2657,2657,2663,2662,2663,2659,2682,2704,2693,2670,2656,
+2662,2707,2734,2723,2732,2732,2760,2773,2719,2685,2705,2615,2657,2794,2858,2800,2774,2794,2813,2850,
+2862,2867,2873,2892,2936,2961,3000,3032,3021,3019,3044,3016,3011,3029,3089,3139,3154,3173,3180,3182,
+3212,3237,3250,3266,3315,3373,3404,3409,3430,3434,3438,3467,3498,3509,3523,3570,3604,3583,3596,3633,
+3639,3660,3709,3733,3703,3683,3682,3693,3699,3727,3772,3789,3760,3756,3811,3759,3770,3818,3801,3838,
+3810,3768,3709,3644,3584,3590,3607,3604,3644,3711,3749,3712,3679,3673,3707,3689,3667,3665,3684,3705,
+3715,3741,3764,3758,3794,3830,3850,3883,3904,3933,3962,3986,4019,4058,4091,4104,4138,4185,4211,4241,
+4268,4303,4342,4387,4429,4470,4505,4535,4559,4586,4617,4651,4685,4716,4741,4764,4785,4801,4814,4823,
+4827,4819,4813,4795,4781,4782,4791,4813,4836,4863,4908,4986,5031,5013,4991,4928,4822,4755,4669,4615,
+4622,4670,4680,4579,4570,4701,4781,4725,4676,4588,4496,4431,4363,4346,4352,4354,4362,4382,4385,4367,
+4352,4343,4333,4324,4317,4305,4295,4267,4225,4190,4165,4148,4150,4130,4113,4108,4107,4102,4086,4071,
+4095,4084,4044,4021,4005,3979,3926,3844,3801,3784,3786,3776,3733,3702,3736,3783,3761,3727,3712,3730,
+3671,3644,3672,3669,3594,3561,3536,3508,3483,3466,3445,3431,3431,3447,3476,3455,3436,3443,3456,3467,
+3473,3475,3478,3473,3478,3481,3476,3476,3472,3465,3460,3452,3448,3444,3441,3443,3445,3448,3460,3495,
+3542,3589,3636,3686,3740,3787,3831,3883,3913,3871,3804,3740,3694,3667,3640,3619,3580,3538,3497,3459,
+3429,3409,3386,3314,3227,3195,3168,3088,3001,2893,2820,2811,2828,2849,2858,2852,2842,2813,2699,2582,
+2530,2474,2430,2364,2292,2270,2288,2279,2256,2235,2192,2150,2108,2066,2030,1998,1960,1925,1887,1857,
+1814,1773,1735,1696,1665,1637,1608,1580,1548,1512,1475,1455,1427,1389,1358,1318,1284,1251,1215,1179,
+1147,1114,1080,1048,1014,978,946,915,887,860,831,795,760,726,689,656,623,594,564,524,
+490,456,424,395,361,331,298,268,236,203,166,131,88,44,8,-18,-44,-74,-108,-135,
+-170,-196,-229,-267,-304,-339,-373,-407,-437,-462,-470,-498,-544,-585,-620,-650,-682,-716,-747,-779,
+-810,-844,-880,-907,-933,-966,-996,-1027,-1063,-1092,-1121,-1150,-1176,-1202,-1231,-1256,-1284,-1313,-1343,-1374,
+-1410,-1443,-1475,-1505,-1532,-1561,-1585,-1611,-1640,-1669,-1704,-1734,-1763,-1790,-1799,-1816,-1839,-1862,-1877,-1903,
+-1921,-1942,-1956,-1971,-1988,-2010,-2030,-2053,-2071,-2086,-2099,-2117,-2105,-2100,-2112,-2128,-2149,-2177,-2188,-2205,
+-2215,-2226,-2226,-2255,-2287,-2288,-2292,-2317,-2332,-2342,-2341,-2355,-2357,-2382,-2392,-2406,-2406,-2407,-2408,-2409,
+-2408,-2393,-2379,-2366,-2358,-2354,-2350,-2348,-2341,-2335,-2329,-2322,-2315,-2307,-2301,-2299,-2297,-2295,-2297,-2296,
+-2287,-2277,-2271,-2263,-2265,-2259,-2252,-2251,-2249,-2238,-2233,-2235,-2223,-2233,-2222,-2220,-2215,-2203,-2202,-2198,
+-2192,-2182,-2172,-2166,-2150,-2133,-2116,-2106,-2099,-2104,-2115,-2109,-2070,-2039,-2007,-2007,-2006,-1988,-1974,-1942,
+-1941,-1931,-1915,-1901,-1885,-1874,-1863,-1856,-1835,-1843,-1852,-1859,-1844,-1840,-1830,-1823,-1842,-1846,-1858,-1922,
+-2000,-2010,-2014,-2025,-2030,-2017,-2009,-1975,-1969,-1975,-1981,-1984,-1978,-1973,-1971,-1985,-2014,-2030,-1995,-2015,
+-2030,-2020,-2004,-2009,-2016,-2024,-2030,-2028,-2017,-1999,-1986,-1988,-1987,-1991,-1997,-2011,-2025,-2035,-2038,-2036,
+-2038,-2036,-2036,-2049,-2070,-2082,-2072,-2053,-2035,-2021,-2014,-1954,-1923,-1881,-1935,-1938,-1914,-1928,-1955,-1944,
+-1945,-1954,-1985,-2001,-2024,-2070,-2089,-2102,-2120,-2142,-2166,-2214,-2244,-2180,-2125,-2053,-1989,-1981,-1986,-2000,
+-2011,-2010,-2006,-2001,-1999,-1993,-2005,-2002,-1997,-1982,-1977,-1974,-1960,-1959,-1973,-1996,-2018,-2044,-2079,-2107,
+-2115,-2118,-2130,-2142,-2170,-2205,-2240,-2269,-2292,-2339,-2428,-2517,-2566,-2608,-2647,-2676,-2699,-2714,-2728,-2745,
+-2754,-2757,-2761,-2766,-2784,-2804,-2817,-2818,-2820,-2822,-2823,-2835,-2845,-2859,-2873,-2887,-2896,-2905,-2912,-2921,
+-2928,-2932,-2937,-2938,-2940,-2938,-2933,-2928,-2925,-2929,-2935,-2942,-2947,-2948,-2942,-2937,-2931,-2922,-2912,-2905,
+-2899,-2892,-2887,-2881,-2876,-2871,-2864,-2861,-2852,-2844,-2838,-2822,-2806,-2789,-2772,-2760,-2751,-2746,-2741,-2729,
+-2721,-2714,-2691,-2678,-2672,-2666,-2657,-2653,-2646,-2637,-2631,-2639,-2621,-2607,-2595,-2582,-2587,-2571,-2558,-2564,
+-2548,-2537,-2526,-2527,-2501,-2494,-2499,-2491,-2473,-2460,-2452,-2436,-2410,-2410,-2393,-2385,-2369,-2355,-2352,-2348,
+-2329,-2317,-2307,-2299,-2294,-2282,-2270,-2259,-2253,-2247,-2240,-2231,-2222,-2217,-2213,-2216,-2230,-2250,-2276,-2309,
+-2305,-2282,-2252,-2220,-2190,-2168,-2159,-2149,-2144,-2141,-2136,-2126,-2117,-2112,-2100,-2085,-2076,-2071,-2062,-2050,
+-2043,-2031,-2034,-2026,-2021,-2011,-2007,-2007,-2006,-2002,-1991,-1978,-1979,-1972,-1956,-1939,-1928,-1918,-1912,-1908,
+-1904,-1901,-1890,-1878,-1875,-1871,-1865,-1861,-1836,-1777,-1795,-1815,-1812,-1798,-1790,-1777,-1762,-1765,-1763,-1758,
+-1753,-1752,-1767,-1794,-1804,-1800,-1802,-1837,-1874,-1910,-1942,-1962,-1981,-2004,-2028,-2039,-2039,-2026,-2005,-1985,
+-1956,-1931,-1908,-1887,-1874,-1857,-1843,-1833,-1824,-1804,-1779,-1759,-1742,-1731,-1721,-1702,-1682,-1666,-1650,-1628,
+-1611,-1599,-1583,-1566,-1546,-1527,-1515,-1498,-1482,-1465,-1451,-1434,-1424,-1408,-1392,-1380,-1364,-1349,-1331,-1308,
+-1291,-1275,-1264,-1251,-1237,-1225,-1215,-1200,-1186,-1174,-1162,-1154,-1146,-1134,-1132,-1121,-1117,-1112,-1110,-1104,
+-1100,-1098,-1099,-1099,-1102,-1111,-1117,-1117,-1117,-1116,-1119,-1119,-1122,-1126,-1132,-1136,-1139,-1141,-1136,-1138,
+-1155,-1161,-1162,-1164,-1167,-1169,-1172,-1174,-1177,-1179,-1178,-1176,-1172,-1169,-1177,-1168,-1175,-1191,-1189,-1192,
+-1199,-1203,-1196,-1195,-1198,-1201,-1205,-1201,-1199,-1196,-1190,-1183,-1180,-1183,-1181,-1178,-1176,-1179,-1179,-1170,
+-1153,-1138,-1128,-1122,-1113,-1099,-1086,-1069,-1058,-1042,-1027,-1011,-997,-986,-977,-964,-954,-947,-940,-936,
+-929,-924,-914,-896,-879,-861,-849,-844,-837,-835,-836,-831,-830,-830,-828,-828,-818,-830,-829,-830,
+-812,-804,-805,-776,-757,-743,-721,-703,-686,-668,-644,-628,-610,-597,-585,-575,-564,-548,-533,-517,
+-499,-480,-460,-442,-427,-411,-395,-378,-363,-345,-327,-307,-285,-264,-241,-213,-183,-153,-131,-109,
+-75,-28,0,44,72,99,135,151,183,208,228,256,284,310,336,361,385,407,435,459,
+481,499,509,514,514,506,494,473,451,443,493,573,608,640,728,941,1120,1223,1287,1290,
+1249,1185,1183,1188,1205,1232,1248,1222,1181,1118,1038,983,969,994,1028,1041,1060,1089,1126,1171,
+1221,1248,1254,1249,1245,1237,1237,1240,1245,1249,1256,1257,1249,1246,1244,1235,1227,1213,1197,1170,
+1153,1155,1157,1148,1133,1121,1109,1088,1066,1044,1008,992,971,954,945,931,916,911,910,913,
+918,918,903,872,832,799,776,754,722,687,641,596,555,521,487,457,443,442,457,479,
+506,543,588,631,674,716,753,777,790,813,838,852,850,824,782,717,621,554,647,771,
+842,932,967,1099,1223,1312,1350,1337,1284,1200,1093,1002,903,811,754,741,748,749,721,730,
+767,821,877,927,959,945,917,845,769,694,617,553,501,445,403,377,371,385,408,438,
+489,561,645,728,821,911,987,1038,1071,1101,1123,1146,1168,1201,1221,1247,1283,1324,1363,1415,
+1472,1525,1568,1570,1551,1559,1564,1576,1593,1608,1627,1638,1643,1638,1620,1602,1583,1581,1581,1560,
+1559,1572,1575,1579,1588,1599,1603,1600,1597,1603,1619,1619,1634,1678,1757,1833,1857,1851,1861,1890,
+1947,1995,2011,2022,2021,2018,2017,2023,2026,2028,2037,2054,2060,2077,2095,2113,2128,2135,2142,2151,
+2162,2177,2192,2207,2225,2238,2250,2260,2267,2277,2287,2296,2296,2303,2321,2333,2338,2356,2381,2399,
+2405,2423,2444,2457,2462,2472,2481,2487,2504,2519,2539,2555,2572,2588,2608,2615,2620,2622,2621,2627,
+2637,2640,2644,2652,2661,2674,2686,2697,2712,2727,2733,2737,2748,2755,2770,2793,2834,2827,2818,2831,
+2813,2764,2775,2777,2779,2760,2765,2766,2751,2744,2756,2747,2740,2734,2745,2747,2744,2740,2746,2763,
+2754,2746,2735,2722,2693,2684,2691,2678,2657,2677,2711,2723,2704,2692,2709,2705,2708,2737,2735,2730,
+2722,2715,2743,2714,2714,2730,2730,2763,2751,2703,2650,2571,2655,2780,2833,2781,2708,2713,2757,2795,
+2819,2857,2857,2872,2902,2926,2944,2937,2951,2973,2975,2933,2928,2952,2983,3002,3037,3063,3075,3107,
+3127,3136,3148,3168,3199,3249,3286,3314,3317,3333,3342,3367,3414,3416,3438,3483,3510,3544,3573,3607,
+3632,3610,3639,3720,3706,3709,3725,3736,3753,3743,3716,3682,3681,3685,3672,3675,3681,3752,3738,3747,
+3767,3747,3697,3618,3551,3558,3586,3592,3603,3649,3707,3748,3709,3665,3637,3647,3654,3642,3643,3663,
+3683,3694,3735,3735,3746,3786,3801,3839,3863,3890,3922,3949,3978,4011,4048,4060,4085,4136,4155,4182,
+4212,4246,4280,4321,4364,4403,4441,4472,4498,4526,4560,4601,4647,4680,4705,4727,4748,4772,4793,4801,
+4798,4800,4798,4796,4777,4757,4742,4727,4713,4708,4712,4755,4873,4916,4872,4849,4802,4781,4730,4620,
+4589,4589,4628,4653,4542,4526,4630,4716,4692,4651,4629,4616,4470,4362,4332,4332,4326,4332,4364,4385,
+4367,4344,4331,4333,4342,4360,4357,4332,4271,4215,4187,4158,4131,4108,4097,4093,4092,4089,4083,4066,
+4050,4064,4052,4020,4005,3984,3926,3843,3806,3797,3797,3793,3756,3724,3757,3795,3778,3753,3729,3750,
+3716,3659,3639,3635,3622,3595,3571,3545,3517,3490,3474,3457,3436,3424,3414,3415,3424,3436,3448,3460,
+3471,3478,3484,3484,3487,3489,3490,3488,3487,3484,3477,3471,3464,3456,3457,3454,3452,3443,3446,3474,
+3507,3539,3570,3596,3619,3643,3660,3671,3675,3672,3660,3639,3623,3608,3600,3588,3572,3550,3520,3479,
+3433,3388,3353,3326,3296,3221,3134,3090,3035,2953,2867,2760,2650,2619,2657,2705,2698,2667,2646,2630,
+2602,2551,2489,2459,2419,2368,2277,2205,2184,2201,2201,2175,2135,2088,2057,2026,1980,1942,1912,1872,
+1832,1795,1764,1730,1696,1666,1634,1604,1576,1539,1503,1481,1456,1419,1378,1348,1313,1282,1245,1213,
+1177,1148,1115,1083,1049,1015,981,945,913,883,854,830,801,769,735,700,666,631,595,561,
+524,491,460,431,401,369,337,309,281,243,206,165,122,79,43,13,-7,-36,-63,-91,
+-120,-147,-180,-213,-251,-287,-325,-359,-391,-423,-439,-463,-498,-537,-571,-607,-641,-672,-702,-734,
+-769,-801,-832,-863,-896,-927,-958,-984,-1019,-1054,-1084,-1109,-1136,-1163,-1191,-1217,-1244,-1276,-1309,-1339,
+-1374,-1405,-1437,-1468,-1496,-1530,-1552,-1577,-1608,-1634,-1669,-1703,-1733,-1762,-1782,-1795,-1817,-1834,-1854,-1889,
+-1904,-1916,-1932,-1950,-1974,-1975,-1994,-2023,-2044,-2066,-2084,-2102,-2110,-2111,-2129,-2147,-2153,-2155,-2189,-2195,
+-2198,-2200,-2216,-2238,-2260,-2287,-2279,-2290,-2320,-2336,-2348,-2352,-2350,-2358,-2390,-2404,-2402,-2404,-2412,-2415,
+-2420,-2420,-2402,-2387,-2377,-2376,-2371,-2372,-2371,-2369,-2367,-2359,-2355,-2342,-2331,-2323,-2317,-2314,-2309,-2309,
+-2310,-2308,-2301,-2296,-2288,-2288,-2281,-2279,-2274,-2273,-2268,-2267,-2261,-2260,-2255,-2258,-2254,-2248,-2241,-2232,
+-2224,-2219,-2212,-2203,-2200,-2182,-2160,-2155,-2142,-2129,-2122,-2137,-2142,-2109,-2061,-2042,-2042,-2033,-2016,-1998,
+-1971,-1961,-1951,-1936,-1917,-1911,-1898,-1888,-1876,-1867,-1865,-1865,-1877,-1870,-1859,-1853,-1849,-1841,-1852,-1844,
+-1898,-1988,-2011,-2020,-2031,-2055,-2050,-2039,-2010,-1996,-1995,-2002,-2003,-2001,-1996,-1996,-2005,-2039,-2065,-2064,
+-2048,-2058,-2041,-2025,-2028,-2034,-2038,-2043,-2044,-2041,-2032,-2025,-2024,-2030,-2040,-2056,-2071,-2089,-2104,-2102,
+-2092,-2082,-2072,-2071,-2074,-2095,-2122,-2130,-2110,-2073,-2026,-1974,-1937,-2014,-2050,-2063,-2041,-2017,-1991,-1980,
+-1976,-1994,-2005,-2051,-2089,-2116,-2141,-2161,-2168,-2179,-2208,-2249,-2263,-2238,-2198,-2175,-2132,-2101,-2091,-2100,
+-2108,-2110,-2105,-2093,-2086,-2080,-2076,-2083,-2088,-2102,-2102,-2100,-2107,-2111,-2118,-2133,-2148,-2150,-2160,-2191,
+-2217,-2232,-2240,-2237,-2242,-2265,-2299,-2338,-2382,-2441,-2521,-2585,-2647,-2695,-2723,-2747,-2771,-2784,-2791,-2806,
+-2824,-2837,-2855,-2871,-2871,-2870,-2880,-2893,-2896,-2895,-2897,-2901,-2911,-2924,-2939,-2955,-2974,-2989,-2998,-3002,
+-3001,-3002,-3007,-3011,-3013,-3013,-3011,-3006,-3000,-2996,-2996,-2999,-3002,-3008,-3015,-3013,-3008,-3001,-2990,-2978,
+-2970,-2966,-2960,-2955,-2950,-2946,-2945,-2939,-2925,-2914,-2903,-2892,-2887,-2872,-2858,-2838,-2824,-2815,-2813,-2814,
+-2812,-2800,-2785,-2780,-2765,-2742,-2732,-2726,-2721,-2719,-2713,-2701,-2683,-2683,-2689,-2671,-2658,-2644,-2629,-2606,
+-2606,-2607,-2587,-2579,-2583,-2575,-2554,-2545,-2536,-2528,-2521,-2515,-2496,-2483,-2467,-2456,-2434,-2412,-2407,-2402,
+-2390,-2377,-2367,-2356,-2345,-2336,-2329,-2319,-2298,-2293,-2282,-2270,-2261,-2259,-2251,-2243,-2241,-2238,-2234,-2238,
+-2248,-2271,-2298,-2319,-2324,-2318,-2293,-2257,-2212,-2182,-2165,-2163,-2154,-2145,-2140,-2142,-2124,-2106,-2102,-2087,
+-2080,-2066,-2060,-2059,-2051,-2042,-2038,-2026,-2012,-2004,-2006,-2007,-1998,-1995,-1991,-1985,-1977,-1971,-1960,-1947,
+-1938,-1926,-1916,-1910,-1905,-1898,-1877,-1871,-1872,-1864,-1847,-1795,-1716,-1749,-1785,-1786,-1777,-1772,-1775,-1779,
+-1775,-1773,-1755,-1750,-1761,-1758,-1749,-1752,-1751,-1755,-1755,-1762,-1776,-1813,-1856,-1903,-1940,-1962,-1982,-2002,
+-2015,-2017,-2004,-1967,-1927,-1904,-1889,-1879,-1870,-1854,-1843,-1825,-1788,-1761,-1745,-1723,-1706,-1686,-1668,-1648,
+-1630,-1616,-1606,-1590,-1574,-1554,-1536,-1522,-1508,-1492,-1479,-1462,-1446,-1434,-1416,-1397,-1383,-1370,-1356,-1340,
+-1326,-1322,-1307,-1293,-1281,-1267,-1250,-1237,-1224,-1213,-1202,-1190,-1177,-1163,-1152,-1141,-1136,-1131,-1127,-1124,
+-1121,-1120,-1116,-1111,-1112,-1117,-1127,-1126,-1132,-1141,-1141,-1138,-1140,-1141,-1143,-1151,-1155,-1159,-1159,-1162,
+-1169,-1175,-1176,-1177,-1180,-1184,-1186,-1191,-1194,-1197,-1192,-1188,-1190,-1188,-1191,-1200,-1199,-1195,-1201,-1206,
+-1202,-1209,-1213,-1211,-1216,-1210,-1211,-1205,-1204,-1206,-1208,-1206,-1195,-1190,-1186,-1186,-1183,-1180,-1184,-1185,
+-1178,-1169,-1162,-1150,-1143,-1135,-1124,-1105,-1089,-1077,-1066,-1054,-1036,-1023,-1009,-993,-978,-962,-943,-930,
+-926,-925,-925,-916,-899,-888,-878,-868,-856,-847,-849,-851,-856,-864,-855,-847,-851,-849,-862,-879,
+-869,-853,-832,-818,-784,-763,-743,-719,-703,-687,-664,-644,-623,-612,-596,-586,-573,-553,-542,-533,
+-523,-506,-488,-472,-455,-441,-424,-407,-392,-374,-356,-339,-322,-305,-287,-268,-247,-221,-193,-164,
+-134,-96,-54,-24,-1,22,81,108,133,166,193,216,237,258,284,310,336,361,388,416,
+443,465,486,503,512,517,509,493,474,453,438,445,506,557,552,577,681,899,1090,1221,
+1310,1321,1268,1222,1213,1253,1266,1251,1206,1173,1094,1023,976,962,976,988,1015,1057,1114,1182,
+1226,1252,1272,1274,1260,1254,1253,1256,1255,1260,1263,1266,1263,1247,1230,1214,1192,1171,1147,1110,
+1063,1043,1045,1050,1044,1035,1023,1011,989,964,937,902,875,854,821,787,755,729,716,721,
+732,742,738,716,691,672,650,621,594,566,532,494,458,430,414,407,414,435,472,514,
+561,610,673,739,808,875,926,965,986,986,998,978,932,928,1024,1056,1003,940,881,909,
+941,987,1042,1118,1224,1318,1399,1437,1466,1463,1442,1400,1334,1215,1137,1146,1153,1107,1155,1156,
+1136,1138,1184,1233,1323,1374,1377,1356,1299,1195,1073,964,855,775,712,651,629,643,698,774,
+797,829,901,984,1050,1113,1189,1239,1261,1265,1245,1210,1172,1145,1144,1152,1181,1228,1276,1323,
+1389,1456,1498,1518,1518,1517,1529,1538,1547,1559,1572,1587,1598,1600,1596,1582,1570,1560,1549,1542,
+1542,1540,1538,1534,1528,1536,1553,1560,1566,1574,1580,1582,1600,1635,1692,1756,1786,1809,1853,1883,
+1933,1965,2019,2055,2069,2068,2061,2060,2061,2062,2062,2072,2083,2082,2095,2108,2121,2134,2146,2148,
+2151,2162,2177,2190,2200,2212,2226,2241,2251,2256,2261,2267,2270,2275,2282,2295,2303,2311,2343,2361,
+2378,2385,2397,2416,2431,2444,2447,2457,2464,2475,2504,2525,2537,2554,2580,2581,2596,2601,2600,2604,
+2603,2610,2613,2620,2632,2642,2661,2675,2687,2698,2711,2720,2712,2704,2730,2760,2774,2777,2787,2768,
+2772,2804,2797,2792,2802,2788,2784,2769,2770,2759,2764,2761,2756,2751,2752,2747,2744,2745,2745,2758,
+2772,2775,2755,2731,2723,2718,2703,2645,2624,2666,2715,2766,2786,2787,2807,2804,2797,2782,2778,2777,
+2778,2798,2757,2626,2636,2704,2715,2728,2721,2698,2636,2589,2619,2693,2721,2703,2703,2688,2721,2760,
+2781,2805,2819,2833,2866,2880,2882,2848,2871,2889,2871,2850,2875,2907,2915,2934,2943,2970,2996,3013,
+3032,3063,3078,3116,3171,3203,3208,3219,3230,3247,3272,3290,3290,3321,3372,3408,3427,3440,3457,3500,
+3540,3533,3545,3602,3638,3629,3663,3659,3680,3732,3739,3716,3704,3718,3700,3632,3598,3674,3685,3714,
+3754,3753,3689,3564,3463,3479,3531,3527,3569,3604,3636,3679,3696,3657,3607,3584,3586,3607,3609,3621,
+3638,3651,3663,3695,3702,3738,3759,3794,3825,3849,3879,3907,3936,3965,3999,4021,4034,4086,4103,4126,
+4157,4187,4219,4252,4291,4327,4364,4397,4430,4457,4493,4535,4576,4616,4640,4668,4696,4728,4763,4778,
+4779,4771,4769,4773,4768,4757,4731,4713,4700,4673,4648,4632,4629,4636,4638,4626,4610,4595,4588,4573,
+4553,4536,4519,4504,4484,4470,4516,4651,4726,4688,4577,4459,4402,4340,4304,4291,4286,4282,4287,4316,
+4351,4376,4384,4388,4415,4441,4410,4323,4273,4241,4210,4188,4168,4132,4102,4084,4074,4067,4066,4055,
+4038,4030,4053,4039,4004,3964,3905,3839,3817,3815,3812,3807,3767,3751,3775,3788,3792,3770,3753,3738,
+3731,3683,3656,3646,3636,3625,3595,3570,3555,3543,3501,3485,3468,3454,3444,3439,3438,3440,3447,3456,
+3465,3475,3483,3488,3493,3494,3494,3494,3491,3488,3483,3479,3473,3467,3460,3459,3457,3454,3449,3455,
+3479,3501,3514,3525,3536,3548,3560,3568,3576,3586,3570,3535,3532,3539,3551,3558,3557,3545,3523,3498,
+3463,3419,3369,3320,3278,3242,3190,3124,3086,3058,2988,2879,2749,2615,2559,2561,2543,2524,2506,2487,
+2462,2444,2451,2459,2455,2446,2387,2335,2241,2165,2122,2089,2104,2110,2077,2040,2007,1969,1932,1891,
+1857,1818,1786,1755,1723,1694,1667,1637,1602,1564,1529,1511,1482,1439,1407,1379,1345,1310,1279,1243,
+1208,1172,1141,1111,1080,1048,1019,982,951,916,887,854,824,793,764,732,699,669,638,605,
+568,533,499,469,440,408,376,343,310,276,237,199,161,119,84,54,21,-1,-28,-50,
+-76,-104,-134,-171,-207,-238,-276,-312,-346,-375,-402,-424,-456,-493,-534,-568,-601,-631,-662,-695,
+-726,-757,-789,-826,-858,-887,-917,-949,-978,-1010,-1041,-1066,-1095,-1124,-1154,-1182,-1210,-1239,-1269,-1303,
+-1338,-1370,-1400,-1433,-1465,-1496,-1525,-1552,-1576,-1606,-1638,-1670,-1700,-1725,-1753,-1777,-1794,-1813,-1828,-1858,
+-1886,-1894,-1909,-1928,-1946,-1961,-1967,-1984,-2002,-2036,-2055,-2073,-2090,-2098,-2114,-2137,-2154,-2160,-2163,-2189,
+-2195,-2199,-2212,-2230,-2245,-2263,-2287,-2285,-2301,-2325,-2334,-2348,-2366,-2363,-2376,-2387,-2405,-2397,-2409,-2415,
+-2408,-2435,-2435,-2415,-2404,-2395,-2391,-2388,-2385,-2383,-2381,-2376,-2374,-2368,-2364,-2356,-2350,-2343,-2338,-2330,
+-2328,-2329,-2331,-2326,-2322,-2319,-2310,-2304,-2300,-2303,-2299,-2296,-2294,-2279,-2288,-2277,-2278,-2278,-2277,-2274,
+-2268,-2260,-2249,-2246,-2232,-2221,-2214,-2203,-2190,-2179,-2161,-2145,-2163,-2167,-2147,-2103,-2072,-2070,-2059,-2037,
+-2020,-2000,-1982,-1972,-1968,-1953,-1940,-1927,-1913,-1903,-1899,-1890,-1889,-1897,-1892,-1886,-1880,-1858,-1876,-1869,
+-1848,-1888,-1972,-2007,-2017,-2029,-2056,-2085,-2076,-2048,-2024,-2020,-2023,-2024,-2022,-2021,-2025,-2036,-2066,-2094,
+-2115,-2108,-2093,-2067,-2054,-2051,-2053,-2056,-2061,-2061,-2064,-2064,-2065,-2068,-2075,-2091,-2108,-2125,-2139,-2154,
+-2161,-2154,-2150,-2139,-2134,-2136,-2144,-2157,-2155,-2134,-2078,-1966,-1833,-1932,-2087,-2149,-2164,-2134,-2119,-2105,
+-2103,-2101,-2094,-2094,-2155,-2192,-2208,-2215,-2229,-2254,-2266,-2298,-2308,-2281,-2251,-2199,-2187,-2208,-2213,-2192,
+-2192,-2198,-2190,-2183,-2175,-2154,-2153,-2158,-2169,-2179,-2191,-2207,-2209,-2221,-2227,-2246,-2269,-2275,-2283,-2295,
+-2312,-2339,-2356,-2365,-2380,-2390,-2423,-2481,-2549,-2615,-2659,-2704,-2748,-2770,-2803,-2837,-2848,-2862,-2872,-2876,
+-2889,-2906,-2917,-2934,-2956,-2971,-2964,-2957,-2959,-2964,-2972,-2979,-2989,-2996,-3007,-3018,-3031,-3050,-3071,-3081,
+-3087,-3088,-3085,-3082,-3086,-3088,-3089,-3087,-3082,-3077,-3071,-3069,-3069,-3071,-3076,-3080,-3082,-3078,-3067,-3054,
+-3045,-3036,-3032,-3025,-3016,-3016,-3016,-3008,-2999,-2991,-2980,-2968,-2954,-2937,-2928,-2920,-2911,-2894,-2885,-2878,
+-2873,-2868,-2858,-2849,-2831,-2828,-2828,-2802,-2789,-2785,-2784,-2776,-2761,-2740,-2724,-2717,-2742,-2723,-2702,-2697,
+-2688,-2675,-2667,-2645,-2639,-2633,-2636,-2606,-2581,-2585,-2579,-2573,-2557,-2549,-2529,-2510,-2500,-2491,-2468,-2461,
+-2444,-2435,-2428,-2421,-2409,-2396,-2385,-2372,-2363,-2347,-2331,-2316,-2303,-2299,-2290,-2281,-2274,-2268,-2275,-2262,
+-2251,-2245,-2243,-2261,-2273,-2273,-2301,-2332,-2343,-2335,-2307,-2258,-2209,-2187,-2172,-2159,-2158,-2159,-2155,-2139,
+-2129,-2110,-2096,-2090,-2088,-2081,-2072,-2060,-2049,-2053,-2047,-2042,-2030,-2027,-2014,-2000,-1994,-1986,-1984,-1983,
+-1978,-1968,-1960,-1951,-1944,-1928,-1916,-1907,-1896,-1886,-1876,-1868,-1856,-1812,-1756,-1735,-1768,-1788,-1790,-1784,
+-1773,-1760,-1757,-1768,-1768,-1763,-1755,-1755,-1751,-1754,-1751,-1741,-1741,-1737,-1732,-1730,-1733,-1745,-1782,-1834,
+-1885,-1912,-1926,-1926,-1931,-1933,-1931,-1921,-1909,-1898,-1890,-1875,-1860,-1825,-1799,-1778,-1753,-1723,-1702,-1681,
+-1660,-1644,-1631,-1616,-1600,-1579,-1562,-1547,-1531,-1520,-1503,-1489,-1474,-1463,-1448,-1432,-1416,-1404,-1390,-1374,
+-1361,-1347,-1338,-1331,-1316,-1304,-1297,-1284,-1272,-1256,-1238,-1221,-1209,-1196,-1182,-1171,-1157,-1152,-1149,-1144,
+-1141,-1139,-1135,-1131,-1123,-1130,-1135,-1142,-1146,-1149,-1154,-1157,-1155,-1155,-1157,-1159,-1166,-1174,-1181,-1187,
+-1188,-1190,-1193,-1192,-1193,-1196,-1200,-1206,-1207,-1209,-1205,-1209,-1214,-1217,-1214,-1217,-1210,-1203,-1212,-1208,
+-1210,-1215,-1225,-1238,-1232,-1228,-1231,-1232,-1233,-1227,-1220,-1219,-1216,-1207,-1201,-1195,-1189,-1189,-1192,-1192,
+-1191,-1186,-1184,-1174,-1161,-1164,-1161,-1156,-1144,-1125,-1110,-1095,-1081,-1061,-1046,-1031,-1015,-995,-974,-955,
+-938,-926,-916,-912,-908,-880,-867,-874,-867,-870,-865,-864,-871,-874,-875,-869,-877,-884,-903,-919,
+-892,-864,-843,-846,-830,-805,-778,-751,-725,-702,-675,-655,-630,-607,-595,-592,-580,-562,-549,-538,
+-532,-525,-514,-495,-479,-466,-449,-433,-418,-400,-383,-369,-350,-337,-324,-309,-293,-273,-244,-212,
+-178,-144,-101,-77,-61,-29,-5,47,87,117,148,176,194,218,240,267,291,315,342,369,
+393,417,441,462,485,502,507,506,494,474,451,430,417,432,486,490,476,506,662,915,
+1090,1213,1292,1309,1279,1255,1268,1239,1196,1163,1143,1084,1018,981,978,977,1004,1044,1089,1134,
+1180,1214,1234,1252,1258,1258,1252,1246,1244,1244,1240,1245,1248,1237,1208,1182,1158,1133,1101,1070,
+1027,967,932,928,936,945,954,959,961,968,975,969,947,921,890,848,813,782,762,767,
+780,790,787,780,766,743,709,672,639,608,582,550,522,489,465,454,466,492,539,591,
+652,723,800,886,989,1100,1185,1207,1203,1209,1173,1087,1044,1067,1086,1077,1078,1087,1030,993,
+977,989,1022,1083,1154,1221,1297,1358,1401,1427,1429,1423,1393,1356,1316,1290,1278,1259,1249,1280,
+1265,1249,1266,1273,1313,1387,1497,1545,1565,1617,1601,1543,1459,1366,1281,1208,1156,1159,1250,1330,
+1376,1402,1433,1471,1505,1530,1538,1552,1556,1553,1539,1481,1422,1355,1239,1154,1120,1137,1185,1250,
+1318,1373,1414,1433,1442,1441,1451,1458,1460,1460,1460,1463,1474,1490,1502,1506,1502,1500,1491,1481,
+1468,1454,1443,1439,1437,1433,1446,1462,1474,1489,1509,1523,1537,1570,1621,1679,1730,1765,1798,1847,
+1913,1991,2035,2041,2057,2076,2079,2082,2090,2090,2087,2082,2090,2091,2098,2104,2110,2122,2128,2139,
+2146,2151,2152,2167,2179,2191,2202,2209,2226,2237,2242,2246,2254,2262,2269,2281,2287,2303,2309,2320,
+2345,2360,2362,2370,2382,2394,2407,2420,2429,2443,2454,2472,2497,2520,2535,2557,2561,2564,2585,2589,
+2588,2586,2588,2595,2608,2614,2628,2644,2661,2667,2670,2678,2695,2730,2710,2736,2722,2714,2735,2747,
+2753,2784,2797,2799,2789,2782,2788,2787,2795,2787,2771,2757,2767,2764,2753,2749,2744,2748,2743,2751,
+2766,2758,2725,2703,2708,2716,2674,2664,2740,2792,2802,2786,2797,2802,2835,2838,2781,2747,2761,2801,
+2829,2824,2709,2643,2646,2635,2678,2699,2656,2661,2608,2558,2588,2621,2638,2654,2673,2665,2688,2720,
+2745,2758,2776,2777,2787,2792,2785,2791,2793,2781,2777,2807,2830,2842,2834,2850,2876,2898,2915,2947,
+2965,2980,3013,3029,3074,3119,3120,3136,3179,3188,3211,3223,3222,3244,3293,3326,3335,3333,3350,3388,
+3432,3457,3466,3494,3540,3544,3549,3551,3548,3565,3615,3658,3650,3642,3645,3625,3569,3584,3628,3666,
+3707,3708,3653,3538,3438,3425,3488,3505,3525,3570,3560,3584,3608,3632,3615,3570,3548,3550,3554,3583,
+3616,3633,3629,3641,3663,3699,3719,3755,3785,3813,3841,3870,3896,3920,3948,3972,3987,4026,4051,4073,
+4097,4125,4156,4187,4220,4254,4288,4323,4357,4388,4426,4464,4503,4541,4565,4589,4619,4653,4693,4729,
+4743,4743,4738,4725,4731,4736,4729,4707,4684,4666,4642,4626,4598,4581,4573,4567,4566,4563,4563,4551,
+4542,4531,4515,4494,4473,4453,4435,4449,4492,4518,4490,4416,4337,4292,4270,4255,4244,4240,4242,4264,
+4315,4400,4466,4495,4522,4529,4464,4332,4276,4261,4251,4218,4176,4139,4115,4097,4081,4062,4049,4038,
+4024,4020,4043,4033,4000,3953,3898,3844,3824,3833,3837,3824,3782,3769,3787,3787,3775,3780,3756,3738,
+3724,3701,3672,3652,3637,3629,3612,3583,3563,3546,3524,3500,3484,3472,3460,3454,3445,3440,3439,3443,
+3449,3456,3461,3469,3479,3487,3493,3495,3493,3489,3487,3482,3477,3472,3466,3456,3450,3451,3451,3448,
+3450,3461,3468,3482,3512,3544,3549,3534,3513,3513,3501,3480,3475,3485,3504,3515,3522,3523,3509,3487,
+3459,3431,3396,3349,3299,3248,3199,3148,3090,3036,3032,2990,2904,2778,2640,2557,2530,2541,2500,2435,
+2397,2365,2346,2331,2343,2367,2370,2362,2319,2253,2156,2070,2048,2081,2081,2055,2026,1992,1958,1916,
+1878,1842,1808,1777,1748,1721,1693,1659,1624,1592,1563,1533,1496,1467,1428,1401,1363,1333,1303,1271,
+1235,1198,1165,1135,1105,1072,1040,1008,976,945,909,876,842,808,780,751,722,692,664,637,
+607,576,546,513,480,451,415,380,341,294,252,214,177,141,107,81,73,49,18,-6,
+-34,-65,-94,-128,-160,-191,-231,-269,-304,-333,-363,-386,-422,-459,-497,-533,-561,-586,-618,-649,
+-683,-717,-748,-779,-812,-845,-877,-910,-938,-968,-1002,-1036,-1064,-1092,-1119,-1146,-1174,-1202,-1233,-1265,
+-1301,-1332,-1364,-1395,-1429,-1461,-1491,-1522,-1544,-1574,-1608,-1637,-1671,-1701,-1725,-1752,-1771,-1795,-1819,-1846,
+-1865,-1878,-1895,-1912,-1928,-1952,-1958,-1973,-1990,-2001,-2030,-2049,-2068,-2092,-2097,-2111,-2136,-2150,-2160,-2165,
+-2186,-2196,-2206,-2220,-2233,-2248,-2273,-2286,-2286,-2304,-2322,-2335,-2367,-2368,-2368,-2382,-2391,-2417,-2413,-2420,
+-2423,-2422,-2449,-2438,-2423,-2412,-2405,-2402,-2397,-2395,-2391,-2392,-2386,-2386,-2385,-2380,-2372,-2369,-2363,-2357,
+-2353,-2350,-2350,-2348,-2348,-2345,-2344,-2338,-2332,-2327,-2326,-2326,-2323,-2322,-2321,-2308,-2307,-2305,-2303,-2299,
+-2300,-2301,-2295,-2290,-2274,-2267,-2256,-2244,-2228,-2223,-2215,-2196,-2197,-2201,-2197,-2181,-2130,-2102,-2104,-2100,
+-2081,-2052,-2021,-2005,-1994,-1984,-1970,-1959,-1948,-1940,-1929,-1925,-1912,-1914,-1923,-1903,-1901,-1897,-1887,-1884,
+-1879,-1862,-1883,-1972,-2015,-2028,-2035,-2058,-2109,-2108,-2095,-2067,-2059,-2057,-2049,-2047,-2051,-2055,-2064,-2088,
+-2121,-2142,-2139,-2119,-2094,-2083,-2082,-2084,-2083,-2083,-2089,-2101,-2107,-2111,-2116,-2125,-2136,-2151,-2169,-2185,
+-2197,-2199,-2204,-2200,-2198,-2197,-2201,-2195,-2193,-2160,-2113,-2043,-1914,-1792,-2021,-2178,-2228,-2244,-2220,-2216,
+-2214,-2226,-2244,-2257,-2257,-2260,-2275,-2278,-2309,-2323,-2342,-2355,-2395,-2398,-2346,-2292,-2241,-2255,-2270,-2262,
+-2235,-2238,-2256,-2273,-2258,-2233,-2230,-2239,-2240,-2248,-2269,-2286,-2296,-2312,-2330,-2352,-2372,-2392,-2403,-2409,
+-2421,-2442,-2466,-2498,-2539,-2582,-2639,-2699,-2735,-2769,-2807,-2844,-2875,-2902,-2912,-2933,-2948,-2951,-2954,-2965,
+-2969,-2977,-2991,-3004,-3019,-3034,-3037,-3033,-3031,-3035,-3045,-3057,-3069,-3073,-3080,-3088,-3097,-3109,-3121,-3131,
+-3158,-3163,-3168,-3167,-3164,-3163,-3163,-3166,-3167,-3164,-3158,-3151,-3147,-3147,-3148,-3147,-3148,-3148,-3146,-3137,
+-3125,-3111,-3097,-3093,-3090,-3084,-3075,-3068,-3061,-3057,-3054,-3047,-3032,-3021,-3006,-2989,-2973,-2965,-2959,-2950,
+-2936,-2926,-2916,-2900,-2899,-2891,-2874,-2875,-2875,-2866,-2848,-2836,-2828,-2819,-2806,-2778,-2759,-2762,-2788,-2779,
+-2766,-2752,-2748,-2735,-2719,-2704,-2684,-2673,-2671,-2642,-2628,-2611,-2593,-2590,-2576,-2565,-2556,-2550,-2545,-2527,
+-2505,-2490,-2484,-2472,-2459,-2455,-2448,-2428,-2416,-2412,-2386,-2370,-2358,-2339,-2332,-2319,-2311,-2303,-2306,-2298,
+-2291,-2288,-2283,-2278,-2271,-2263,-2264,-2263,-2264,-2278,-2300,-2330,-2348,-2341,-2305,-2264,-2231,-2200,-2196,-2190,
+-2166,-2149,-2144,-2142,-2131,-2122,-2114,-2109,-2093,-2088,-2078,-2066,-2053,-2042,-2034,-2030,-2020,-2012,-2011,-1999,
+-1998,-1988,-1980,-1973,-1968,-1966,-1953,-1947,-1937,-1919,-1909,-1892,-1890,-1883,-1871,-1853,-1818,-1762,-1757,-1796,
+-1792,-1788,-1779,-1774,-1772,-1765,-1764,-1757,-1753,-1754,-1750,-1749,-1742,-1735,-1720,-1681,-1703,-1709,-1709,-1721,
+-1748,-1787,-1845,-1871,-1865,-1843,-1836,-1830,-1820,-1814,-1823,-1832,-1837,-1843,-1855,-1835,-1814,-1793,-1780,-1758,
+-1735,-1711,-1674,-1650,-1632,-1607,-1592,-1573,-1551,-1535,-1522,-1510,-1495,-1478,-1472,-1462,-1454,-1435,-1417,-1409,
+-1397,-1378,-1362,-1354,-1340,-1325,-1309,-1297,-1284,-1268,-1251,-1244,-1242,-1229,-1208,-1198,-1188,-1175,-1163,-1168,
+-1165,-1163,-1162,-1152,-1142,-1142,-1150,-1153,-1156,-1156,-1162,-1168,-1173,-1175,-1174,-1175,-1176,-1181,-1186,-1201,
+-1211,-1214,-1216,-1218,-1218,-1214,-1212,-1212,-1210,-1211,-1219,-1223,-1224,-1227,-1232,-1242,-1246,-1229,-1226,-1219,
+-1218,-1218,-1225,-1233,-1235,-1242,-1248,-1254,-1245,-1247,-1241,-1246,-1241,-1234,-1223,-1213,-1208,-1200,-1193,-1189,
+-1188,-1192,-1192,-1187,-1186,-1189,-1186,-1179,-1179,-1171,-1156,-1143,-1124,-1102,-1082,-1063,-1048,-1027,-1010,-992,
+-978,-959,-943,-930,-914,-876,-880,-888,-858,-852,-881,-902,-901,-897,-895,-898,-900,-918,-951,-938,
+-892,-871,-874,-872,-859,-833,-807,-781,-752,-726,-704,-681,-661,-640,-618,-600,-586,-574,-554,-538,
+-525,-525,-523,-510,-497,-484,-471,-457,-440,-425,-412,-394,-380,-366,-355,-343,-332,-312,-286,-257,
+-219,-187,-155,-116,-96,-81,-48,-19,28,51,80,117,148,173,200,227,252,277,299,324,
+350,370,394,419,441,464,483,494,500,497,482,461,436,408,390,399,443,470,465,520,
+686,944,1164,1266,1316,1329,1306,1258,1223,1189,1129,1083,1045,1019,996,985,1004,1045,1101,1142,
+1170,1187,1201,1204,1209,1218,1225,1229,1225,1210,1198,1196,1194,1189,1172,1144,1110,1075,1042,1009,
+976,947,913,884,874,888,915,951,997,1032,1069,1098,1116,1125,1118,1095,1071,1056,1048,1031,
+1023,1025,1032,1042,1041,1021,985,938,888,841,802,768,737,703,667,638,630,649,690,743,
+797,858,935,1033,1131,1203,1276,1363,1409,1376,1325,1324,1258,1218,1229,1187,1120,1040,1033,1052,
+1051,1054,1065,1106,1150,1196,1249,1303,1348,1380,1403,1406,1395,1368,1368,1368,1355,1338,1336,1330,
+1314,1319,1324,1337,1351,1364,1406,1474,1487,1513,1609,1619,1564,1521,1510,1519,1489,1534,1666,1731,
+1701,1738,1801,1827,1850,1876,1881,1880,1860,1840,1819,1792,1750,1696,1611,1464,1294,1171,1153,1182,
+1219,1248,1275,1300,1315,1320,1317,1318,1316,1312,1309,1307,1316,1338,1360,1374,1389,1400,1392,1379,
+1365,1352,1334,1317,1308,1305,1305,1324,1344,1363,1383,1412,1443,1480,1532,1598,1661,1717,1762,1805,
+1863,1970,2116,2153,2103,2075,2071,2138,2133,2103,2095,2084,2081,2082,2082,2084,2098,2104,2105,2111,
+2124,2134,2138,2143,2154,2165,2178,2188,2196,2205,2219,2230,2238,2249,2256,2262,2269,2280,2303,2301,
+2307,2323,2334,2336,2343,2351,2369,2378,2397,2409,2421,2432,2449,2471,2497,2513,2528,2542,2549,2577,
+2576,2576,2571,2570,2571,2591,2592,2596,2608,2635,2648,2663,2694,2716,2726,2758,2726,2709,2712,2723,
+2734,2769,2794,2783,2787,2790,2769,2765,2804,2772,2762,2744,2762,2785,2767,2753,2745,2748,2738,2727,
+2725,2710,2688,2684,2705,2691,2601,2683,2749,2773,2804,2826,2827,2826,2802,2766,2717,2685,2691,2747,
+2779,2729,2657,2687,2696,2721,2702,2656,2621,2560,2490,2519,2579,2605,2598,2615,2623,2628,2636,2648,
+2662,2672,2675,2675,2680,2685,2698,2708,2723,2714,2699,2717,2755,2764,2767,2778,2802,2837,2848,2858,
+2876,2893,2920,2945,2981,3021,3037,3045,3074,3092,3114,3125,3155,3185,3229,3264,3273,3268,3271,3300,
+3349,3390,3394,3394,3413,3446,3449,3454,3469,3472,3507,3549,3578,3571,3548,3555,3537,3552,3590,3628,
+3631,3623,3594,3531,3441,3408,3427,3433,3439,3511,3538,3519,3523,3525,3536,3545,3518,3504,3510,3524,
+3557,3588,3595,3607,3635,3660,3677,3704,3740,3768,3797,3827,3854,3876,3901,3924,3943,3972,3995,4022,
+4049,4074,4098,4124,4156,4188,4221,4252,4288,4329,4361,4400,4444,4483,4496,4507,4528,4558,4599,4646,
+4682,4695,4694,4687,4681,4689,4690,4689,4672,4651,4627,4615,4600,4593,4563,4553,4544,4545,4550,4552,
+4554,4547,4542,4521,4498,4475,4450,4424,4406,4392,4376,4354,4324,4291,4269,4269,4281,4284,4279,4340,
+4418,4469,4503,4522,4532,4527,4493,4429,4347,4294,4237,4192,4167,4146,4128,4108,4082,4059,4044,4028,
+4018,4002,3989,3978,3960,3924,3880,3844,3836,3846,3849,3832,3789,3767,3784,3789,3775,3754,3736,3724,
+3717,3711,3693,3667,3641,3619,3606,3592,3573,3554,3535,3520,3500,3481,3462,3446,3438,3425,3422,3421,
+3422,3427,3436,3445,3459,3471,3484,3495,3501,3501,3498,3494,3488,3479,3472,3466,3464,3458,3468,3480,
+3491,3496,3516,3510,3505,3516,3521,3499,3472,3456,3456,3460,3465,3466,3473,3479,3483,3484,3472,3453,
+3436,3414,3387,3365,3334,3295,3239,3174,3118,3060,2998,2952,2921,2853,2755,2658,2579,2544,2520,2497,
+2462,2409,2360,2327,2293,2268,2272,2304,2348,2341,2235,2099,2007,1997,2040,2047,2031,2005,1971,1934,
+1897,1864,1834,1803,1772,1741,1713,1679,1641,1607,1584,1557,1525,1496,1463,1425,1392,1361,1326,1292,
+1256,1224,1192,1165,1140,1103,1063,1034,1003,971,936,906,878,849,818,784,751,721,692,660,
+636,607,578,550,522,489,458,422,380,333,283,238,198,161,134,108,90,77,48,26,
+4,-21,-46,-78,-113,-148,-187,-229,-269,-301,-333,-359,-389,-426,-463,-497,-530,-561,-587,-614,
+-645,-680,-712,-744,-775,-809,-840,-869,-898,-931,-961,-995,-1030,-1058,-1089,-1117,-1141,-1171,-1201,-1234,
+-1266,-1298,-1326,-1358,-1394,-1430,-1461,-1492,-1516,-1545,-1579,-1610,-1640,-1673,-1704,-1730,-1746,-1765,-1793,-1821,
+-1843,-1860,-1874,-1899,-1922,-1939,-1961,-1960,-1976,-1995,-2012,-2027,-2049,-2070,-2088,-2094,-2112,-2133,-2151,-2166,
+-2174,-2183,-2189,-2200,-2217,-2232,-2251,-2272,-2282,-2288,-2309,-2329,-2339,-2366,-2375,-2384,-2393,-2412,-2433,-2429,
+-2425,-2431,-2442,-2460,-2453,-2438,-2432,-2428,-2428,-2425,-2424,-2424,-2425,-2420,-2415,-2413,-2407,-2400,-2393,-2387,
+-2384,-2380,-2376,-2376,-2374,-2372,-2375,-2370,-2365,-2363,-2354,-2352,-2352,-2347,-2350,-2349,-2343,-2344,-2340,-2339,
+-2334,-2332,-2324,-2319,-2319,-2316,-2300,-2300,-2284,-2260,-2250,-2245,-2227,-2214,-2230,-2228,-2224,-2178,-2141,-2144,
+-2132,-2107,-2076,-2052,-2039,-2023,-2010,-1997,-1981,-1968,-1957,-1945,-1942,-1935,-1935,-1938,-1923,-1928,-1916,-1917,
+-1898,-1902,-1896,-1916,-1984,-2028,-2057,-2072,-2087,-2128,-2149,-2138,-2097,-2082,-2074,-2070,-2075,-2078,-2078,-2086,
+-2111,-2147,-2156,-2168,-2151,-2115,-2109,-2107,-2109,-2108,-2112,-2122,-2139,-2155,-2165,-2170,-2175,-2178,-2184,-2201,
+-2216,-2223,-2225,-2226,-2227,-2228,-2226,-2227,-2219,-2214,-2172,-2106,-2022,-1904,-1847,-2129,-2268,-2316,-2349,-2314,
+-2299,-2305,-2320,-2324,-2336,-2350,-2359,-2375,-2394,-2409,-2417,-2444,-2481,-2520,-2509,-2447,-2310,-2277,-2302,-2314,
+-2296,-2273,-2269,-2308,-2341,-2339,-2315,-2308,-2313,-2326,-2339,-2357,-2372,-2388,-2407,-2427,-2455,-2478,-2494,-2518,
+-2540,-2570,-2609,-2650,-2700,-2774,-2834,-2859,-2888,-2919,-2950,-2976,-2999,-3016,-3028,-3033,-3036,-3047,-3054,-3045,
+-3047,-3054,-3064,-3073,-3086,-3091,-3102,-3108,-3105,-3104,-3113,-3126,-3142,-3151,-3155,-3159,-3163,-3169,-3180,-3193,
+-3206,-3227,-3244,-3253,-3253,-3248,-3244,-3243,-3247,-3246,-3246,-3241,-3235,-3231,-3230,-3228,-3224,-3220,-3214,-3210,
+-3203,-3193,-3182,-3173,-3164,-3156,-3146,-3137,-3126,-3120,-3119,-3115,-3108,-3104,-3091,-3074,-3053,-3039,-3022,-3009,
+-3005,-3004,-2992,-2976,-2965,-2952,-2946,-2942,-2935,-2931,-2928,-2925,-2899,-2881,-2876,-2877,-2869,-2856,-2845,-2843,
+-2841,-2816,-2800,-2796,-2792,-2780,-2760,-2744,-2725,-2711,-2708,-2685,-2659,-2636,-2629,-2609,-2597,-2596,-2588,-2577,
+-2570,-2558,-2543,-2528,-2519,-2505,-2501,-2488,-2475,-2466,-2460,-2441,-2426,-2403,-2393,-2379,-2363,-2349,-2346,-2335,
+-2322,-2314,-2313,-2312,-2309,-2304,-2301,-2294,-2289,-2278,-2273,-2264,-2257,-2262,-2281,-2303,-2316,-2314,-2291,-2252,
+-2224,-2227,-2212,-2191,-2183,-2175,-2166,-2155,-2146,-2132,-2123,-2118,-2108,-2094,-2087,-2072,-2061,-2049,-2042,-2033,
+-2026,-2014,-2009,-2004,-1988,-1980,-1971,-1972,-1962,-1952,-1948,-1941,-1927,-1896,-1893,-1893,-1887,-1866,-1849,-1831,
+-1811,-1815,-1796,-1796,-1786,-1783,-1780,-1777,-1765,-1752,-1754,-1757,-1759,-1750,-1736,-1735,-1727,-1720,-1714,-1714,
+-1727,-1733,-1742,-1768,-1778,-1790,-1809,-1811,-1798,-1782,-1777,-1779,-1775,-1771,-1771,-1772,-1774,-1782,-1786,-1791,
+-1784,-1776,-1760,-1735,-1713,-1678,-1644,-1619,-1595,-1572,-1551,-1532,-1522,-1514,-1497,-1490,-1471,-1451,-1436,-1428,
+-1421,-1409,-1396,-1381,-1367,-1353,-1338,-1318,-1303,-1285,-1272,-1263,-1248,-1232,-1219,-1215,-1223,-1219,-1218,-1206,
+-1195,-1184,-1180,-1174,-1167,-1160,-1167,-1170,-1172,-1171,-1175,-1178,-1185,-1188,-1191,-1193,-1195,-1198,-1196,-1200,
+-1209,-1218,-1228,-1236,-1240,-1242,-1240,-1237,-1231,-1230,-1233,-1238,-1238,-1244,-1245,-1246,-1253,-1256,-1250,-1245,
+-1237,-1233,-1235,-1237,-1238,-1239,-1244,-1250,-1254,-1265,-1266,-1267,-1266,-1259,-1247,-1236,-1229,-1220,-1210,-1196,
+-1191,-1190,-1183,-1183,-1186,-1191,-1193,-1194,-1193,-1188,-1178,-1162,-1147,-1131,-1118,-1099,-1080,-1064,-1049,-1033,
+-1019,-1006,-995,-980,-963,-928,-902,-905,-903,-900,-901,-907,-909,-908,-909,-910,-920,-942,-998,-990,
+-927,-938,-943,-941,-932,-902,-857,-817,-788,-760,-732,-704,-677,-659,-645,-626,-611,-594,-572,-556,
+-539,-521,-523,-515,-501,-490,-481,-467,-450,-449,-434,-422,-406,-392,-381,-370,-356,-343,-321,-294,
+-264,-232,-202,-169,-142,-118,-92,-60,-30,-13,10,54,101,125,149,174,198,224,250,272,
+304,329,359,384,413,441,457,481,498,507,507,496,478,453,419,387,369,391,434,459,
+505,604,816,1049,1177,1257,1300,1313,1294,1254,1211,1155,1107,1080,1065,1052,1023,1047,1114,1173,
+1232,1271,1286,1267,1234,1224,1220,1196,1197,1192,1182,1149,1124,1110,1087,1068,1045,1019,988,956,
+936,935,937,948,949,946,964,1002,1045,1097,1150,1207,1256,1293,1318,1328,1333,1329,1325,1322,
+1322,1324,1326,1337,1353,1367,1373,1366,1337,1299,1256,1199,1145,1111,1066,999,938,913,910,915,
+937,965,993,1068,1162,1159,1210,1301,1374,1365,1285,1280,1281,1248,1242,1199,1151,1139,1140,1155,
+1154,1152,1155,1180,1212,1246,1285,1320,1355,1383,1398,1413,1414,1387,1369,1407,1416,1401,1375,1366,
+1376,1372,1360,1366,1375,1382,1412,1429,1468,1483,1480,1499,1542,1580,1597,1623,1638,1650,1672,1684,
+1722,1829,1875,1916,1966,2008,2066,2111,2121,2162,2205,2128,2036,1977,1902,1810,1681,1505,1332,1214,
+1155,1136,1124,1115,1120,1121,1117,1108,1103,1101,1106,1116,1128,1141,1164,1193,1218,1236,1244,1242,
+1232,1213,1190,1164,1150,1143,1145,1153,1163,1177,1204,1248,1293,1347,1416,1490,1566,1636,1698,1751,
+1798,1848,1907,1963,2023,2109,2122,2082,2078,2083,2083,2089,2087,2110,2120,2150,2135,2137,2164,2136,
+2100,2112,2131,2141,2148,2154,2162,2170,2177,2186,2189,2198,2214,2227,2240,2248,2250,2265,2278,2294,
+2297,2305,2315,2318,2322,2319,2334,2360,2371,2381,2392,2403,2417,2434,2456,2478,2489,2493,2511,2519,
+2540,2549,2540,2544,2546,2561,2584,2589,2598,2613,2632,2648,2660,2669,2688,2704,2713,2718,2715,2715,
+2721,2715,2720,2729,2742,2753,2749,2732,2730,2778,2761,2767,2775,2764,2774,2758,2738,2742,2738,2778,
+2761,2726,2687,2664,2663,2580,2579,2658,2686,2700,2744,2824,2863,2826,2787,2753,2742,2775,2794,2723,
+2639,2582,2590,2663,2679,2688,2687,2670,2655,2573,2523,2538,2565,2585,2589,2592,2590,2596,2595,2591,
+2592,2590,2592,2585,2596,2627,2630,2606,2608,2639,2640,2638,2667,2703,2722,2741,2761,2766,2786,2814,
+2822,2834,2854,2886,2914,2933,2972,2978,2978,2991,3007,3044,3085,3104,3120,3170,3192,3202,3229,3264,
+3303,3324,3333,3339,3354,3370,3369,3364,3374,3399,3433,3477,3495,3487,3465,3445,3434,3473,3536,3572,
+3558,3542,3520,3471,3408,3376,3381,3384,3356,3388,3472,3484,3460,3462,3475,3474,3503,3486,3495,3512,
+3499,3530,3554,3565,3594,3623,3634,3661,3695,3718,3748,3777,3807,3832,3857,3881,3900,3916,3944,3969,
+3997,4025,4052,4078,4102,4127,4153,4185,4221,4259,4301,4338,4374,4410,4437,4454,4470,4487,4505,4546,
+4594,4626,4631,4627,4621,4629,4635,4637,4628,4623,4616,4601,4578,4562,4559,4549,4531,4520,4520,4529,
+4537,4542,4541,4530,4517,4504,4485,4462,4438,4409,4383,4356,4325,4293,4260,4247,4293,4382,4432,4434,
+4476,4489,4483,4478,4479,4470,4437,4391,4321,4242,4197,4173,4155,4136,4111,4086,4059,4039,4022,4009,
+3997,3988,3976,3963,3950,3926,3881,3842,3839,3851,3850,3825,3782,3781,3784,3776,3763,3761,3755,3730,
+3709,3695,3686,3670,3650,3634,3615,3601,3584,3564,3543,3526,3508,3489,3470,3456,3449,3440,3425,3411,
+3409,3410,3418,3426,3437,3447,3458,3470,3480,3489,3497,3495,3489,3481,3474,3467,3460,3457,3458,3470,
+3480,3484,3488,3489,3480,3475,3469,3461,3445,3438,3447,3457,3464,3472,3473,3470,3465,3460,3451,3429,
+3402,3385,3364,3342,3326,3300,3263,3211,3151,3109,3052,2986,2922,2854,2786,2726,2673,2594,2536,2510,
+2497,2466,2422,2361,2302,2258,2230,2206,2178,2183,2201,2140,2022,1921,1916,1982,2015,2007,1974,1943,
+1913,1880,1851,1825,1798,1770,1738,1707,1668,1636,1613,1585,1549,1519,1490,1459,1426,1390,1357,1325,
+1289,1255,1223,1195,1166,1138,1105,1070,1038,998,962,928,896,869,840,812,784,755,722,686,
+656,633,606,579,552,523,491,453,416,372,322,271,224,193,195,153,104,78,62,46,
+34,15,-3,-30,-59,-96,-138,-182,-225,-262,-295,-320,-353,-389,-429,-465,-497,-527,-556,-587,
+-613,-642,-675,-710,-743,-777,-806,-838,-866,-896,-927,-963,-991,-1028,-1054,-1081,-1110,-1140,-1169,-1200,
+-1226,-1258,-1288,-1323,-1357,-1393,-1428,-1466,-1489,-1513,-1540,-1573,-1603,-1636,-1669,-1704,-1731,-1750,-1774,-1795,
+-1817,-1839,-1861,-1880,-1901,-1922,-1940,-1956,-1960,-1980,-2001,-2015,-2039,-2053,-2071,-2083,-2090,-2111,-2127,-2144,
+-2160,-2172,-2180,-2193,-2206,-2225,-2245,-2264,-2280,-2283,-2300,-2324,-2337,-2349,-2367,-2389,-2400,-2412,-2422,-2436,
+-2436,-2440,-2447,-2458,-2462,-2456,-2444,-2438,-2441,-2440,-2439,-2436,-2436,-2434,-2435,-2433,-2432,-2431,-2427,-2420,
+-2415,-2405,-2405,-2402,-2399,-2396,-2395,-2396,-2392,-2392,-2387,-2384,-2384,-2373,-2374,-2374,-2374,-2375,-2363,-2360,
+-2370,-2369,-2366,-2360,-2348,-2345,-2343,-2340,-2332,-2325,-2300,-2294,-2284,-2261,-2237,-2254,-2263,-2269,-2230,-2194,
+-2182,-2171,-2140,-2107,-2089,-2076,-2062,-2049,-2038,-2027,-2017,-2008,-1998,-1993,-1980,-1985,-1967,-1956,-1952,-1946,
+-1940,-1932,-1936,-1929,-1932,-1992,-2032,-2066,-2090,-2111,-2139,-2144,-2145,-2108,-2086,-2085,-2086,-2090,-2093,-2095,
+-2097,-2115,-2148,-2173,-2179,-2175,-2150,-2141,-2146,-2146,-2151,-2152,-2161,-2173,-2186,-2194,-2204,-2218,-2227,-2227,
+-2228,-2239,-2247,-2253,-2251,-2245,-2236,-2225,-2202,-2193,-2193,-2170,-2121,-2027,-1864,-1977,-2264,-2363,-2394,-2441,
+-2436,-2415,-2416,-2416,-2427,-2451,-2482,-2490,-2490,-2496,-2506,-2542,-2583,-2614,-2616,-2587,-2522,-2412,-2388,-2378,
+-2375,-2356,-2332,-2340,-2395,-2423,-2404,-2385,-2380,-2401,-2413,-2437,-2463,-2488,-2497,-2521,-2544,-2570,-2595,-2625,
+-2665,-2698,-2750,-2836,-2912,-2952,-2985,-3021,-3045,-3061,-3081,-3100,-3117,-3132,-3141,-3147,-3146,-3142,-3137,-3149,
+-3134,-3131,-3135,-3145,-3151,-3161,-3172,-3169,-3165,-3172,-3182,-3191,-3202,-3211,-3219,-3226,-3235,-3241,-3244,-3252,
+-3263,-3279,-3301,-3318,-3329,-3334,-3332,-3327,-3326,-3324,-3322,-3321,-3320,-3315,-3314,-3311,-3306,-3298,-3289,-3280,
+-3272,-3268,-3262,-3253,-3240,-3229,-3219,-3211,-3206,-3197,-3190,-3177,-3169,-3168,-3160,-3146,-3134,-3117,-3100,-3083,
+-3070,-3061,-3053,-3062,-3043,-3020,-3009,-3000,-2985,-2981,-2978,-2985,-2992,-2979,-2963,-2938,-2920,-2922,-2922,-2914,
+-2912,-2911,-2898,-2875,-2851,-2840,-2822,-2813,-2800,-2781,-2763,-2739,-2719,-2700,-2674,-2664,-2657,-2643,-2629,-2614,
+-2602,-2599,-2593,-2580,-2567,-2557,-2548,-2539,-2526,-2514,-2506,-2503,-2476,-2475,-2463,-2439,-2421,-2409,-2394,-2385,
+-2368,-2356,-2337,-2340,-2336,-2330,-2323,-2321,-2318,-2312,-2311,-2307,-2295,-2291,-2283,-2271,-2268,-2281,-2286,-2290,
+-2290,-2293,-2279,-2256,-2244,-2234,-2241,-2235,-2218,-2208,-2187,-2174,-2155,-2140,-2136,-2133,-2130,-2122,-2106,-2094,
+-2084,-2071,-2053,-2037,-2028,-2022,-2015,-2010,-2001,-2000,-1990,-1979,-1963,-1964,-1961,-1947,-1926,-1918,-1904,-1892,
+-1871,-1852,-1842,-1826,-1813,-1807,-1806,-1800,-1789,-1776,-1769,-1777,-1775,-1771,-1772,-1774,-1775,-1759,-1745,-1738,
+-1743,-1748,-1748,-1751,-1750,-1753,-1780,-1817,-1827,-1840,-1835,-1851,-1871,-1850,-1783,-1736,-1726,-1738,-1739,-1735,
+-1731,-1729,-1728,-1726,-1719,-1709,-1701,-1682,-1648,-1605,-1603,-1585,-1562,-1531,-1507,-1506,-1493,-1476,-1464,-1454,
+-1439,-1426,-1416,-1404,-1390,-1374,-1358,-1333,-1317,-1304,-1292,-1282,-1270,-1257,-1244,-1231,-1220,-1222,-1225,-1226,
+-1228,-1228,-1224,-1226,-1219,-1194,-1190,-1193,-1198,-1204,-1207,-1209,-1206,-1208,-1210,-1214,-1217,-1219,-1225,-1224,
+-1225,-1223,-1229,-1234,-1243,-1257,-1261,-1267,-1261,-1257,-1256,-1256,-1257,-1261,-1262,-1271,-1274,-1276,-1277,-1277,
+-1272,-1270,-1270,-1265,-1264,-1263,-1263,-1262,-1261,-1260,-1266,-1269,-1270,-1274,-1269,-1265,-1257,-1243,-1235,-1223,
+-1215,-1208,-1205,-1203,-1195,-1197,-1190,-1192,-1194,-1180,-1181,-1178,-1165,-1151,-1138,-1124,-1107,-1093,-1081,-1067,
+-1057,-1044,-1027,-1014,-996,-975,-953,-951,-943,-929,-919,-914,-911,-910,-913,-918,-933,-965,-1025,-1016,
+-944,-969,-1004,-984,-963,-949,-925,-898,-868,-830,-791,-760,-723,-694,-674,-662,-645,-628,-604,-565,
+-538,-538,-526,-514,-508,-507,-489,-474,-487,-474,-458,-443,-433,-423,-408,-396,-384,-367,-349,-328,
+-299,-271,-248,-217,-193,-171,-146,-111,-82,-55,-41,-29,19,68,100,127,152,175,196,223,
+253,287,318,349,375,394,421,442,458,476,490,491,484,471,449,426,400,370,352,352,
+392,468,581,711,868,1049,1168,1228,1243,1257,1260,1240,1196,1166,1158,1141,1116,1119,1136,1223,
+1274,1349,1349,1365,1353,1335,1302,1256,1200,1199,1192,1185,1158,1118,1075,1034,1002,985,983,983,
+981,987,1007,1034,1053,1063,1062,1078,1117,1175,1241,1308,1356,1419,1473,1506,1530,1544,1548,1549,
+1548,1544,1539,1546,1560,1577,1590,1609,1626,1631,1627,1613,1576,1516,1454,1387,1327,1286,1255,1198,
+1157,1125,1088,1047,1073,1117,1195,1251,1277,1301,1304,1312,1311,1283,1265,1260,1266,1271,1279,1280,
+1272,1283,1283,1290,1319,1338,1370,1396,1419,1435,1447,1443,1442,1440,1450,1401,1391,1400,1404,1388,
+1361,1342,1332,1356,1405,1421,1409,1404,1414,1442,1474,1489,1514,1544,1573,1613,1647,1662,1659,1707,
+1706,1713,1838,1938,1988,2026,2074,2116,2160,2210,2251,2285,2316,2340,2280,2126,1988,1832,1687,1561,
+1471,1365,1257,1141,1039,953,892,851,834,836,847,869,899,925,953,981,999,1019,1038,1047,
+1044,1026,1003,971,935,905,894,897,903,928,954,990,1062,1135,1211,1301,1407,1493,1577,1661,
+1728,1782,1842,1909,1945,1980,2048,2096,2111,2106,2034,2016,2047,2071,2079,2086,2103,2117,2115,2120,
+2109,2098,2114,2134,2141,2146,2151,2157,2160,2167,2177,2188,2206,2224,2239,2249,2259,2264,2274,2277,
+2284,2295,2298,2309,2312,2318,2316,2328,2355,2364,2360,2365,2376,2386,2406,2419,2437,2460,2474,2489,
+2503,2512,2519,2526,2547,2561,2573,2584,2593,2603,2617,2632,2646,2647,2661,2675,2713,2694,2708,2738,
+2714,2704,2701,2702,2705,2716,2743,2745,2757,2770,2752,2759,2766,2774,2773,2781,2779,2779,2783,2778,
+2803,2787,2742,2734,2618,2556,2602,2629,2643,2660,2661,2697,2727,2726,2705,2695,2731,2766,2770,2724,
+2652,2595,2606,2647,2694,2692,2644,2647,2630,2566,2557,2566,2581,2583,2564,2556,2544,2542,2548,2550,
+2532,2500,2503,2518,2513,2541,2536,2519,2529,2566,2562,2567,2595,2639,2656,2662,2682,2689,2700,2745,
+2791,2803,2810,2818,2829,2859,2895,2921,2927,2935,2948,2976,3029,3072,3097,3106,3117,3124,3164,3218,
+3235,3239,3262,3264,3274,3283,3293,3298,3318,3357,3383,3391,3417,3417,3392,3377,3369,3403,3463,3482,
+3485,3475,3449,3404,3364,3330,3325,3340,3312,3293,3347,3435,3435,3412,3401,3411,3421,3461,3469,3490,
+3467,3476,3496,3515,3552,3587,3601,3619,3650,3676,3700,3728,3755,3783,3811,3836,3856,3879,3894,3919,
+3944,3971,3998,4018,4043,4070,4096,4117,4141,4178,4221,4258,4298,4326,4350,4372,4401,4432,4439,4465,
+4504,4538,4556,4561,4553,4549,4555,4557,4561,4562,4553,4550,4546,4541,4521,4504,4496,4481,4480,4491,
+4485,4491,4498,4495,4495,4487,4479,4470,4457,4440,4417,4394,4364,4331,4292,4250,4212,4181,4165,4158,
+4185,4247,4280,4299,4299,4306,4317,4298,4246,4191,4152,4139,4129,4117,4095,4063,4028,4004,3986,3975,
+3968,3963,3953,3942,3928,3899,3869,3843,3839,3846,3849,3825,3778,3779,3784,3770,3757,3736,3718,3704,
+3690,3680,3669,3664,3644,3624,3604,3591,3578,3565,3549,3532,3517,3501,3486,3473,3469,3469,3458,3439,
+3423,3415,3408,3407,3408,3411,3418,3426,3438,3452,3465,3472,3470,3467,3464,3455,3448,3444,3441,3447,
+3460,3473,3483,3488,3486,3481,3468,3454,3437,3419,3411,3416,3423,3435,3447,3452,3446,3431,3413,3392,
+3374,3354,3331,3317,3303,3287,3265,3228,3172,3125,3087,3042,2989,2926,2860,2799,2737,2681,2621,2525,
+2480,2471,2423,2396,2350,2281,2215,2174,2144,2109,2072,2045,2005,1948,1891,1875,1912,1966,1982,1957,
+1923,1892,1863,1837,1811,1781,1755,1726,1689,1653,1629,1598,1571,1546,1519,1484,1446,1414,1383,1351,
+1316,1286,1252,1221,1194,1167,1139,1103,1066,1027,989,953,925,896,866,834,805,779,752,720,
+689,661,631,604,574,544,511,476,444,405,360,311,260,216,198,222,234,150,94,69,
+54,41,24,6,-22,-58,-96,-140,-185,-223,-260,-284,-317,-356,-396,-433,-466,-495,-525,-551,
+-581,-610,-640,-669,-707,-739,-771,-805,-836,-870,-904,-935,-966,-996,-1020,-1045,-1075,-1108,-1141,-1173,
+-1199,-1227,-1255,-1288,-1325,-1360,-1395,-1427,-1460,-1483,-1511,-1543,-1576,-1608,-1638,-1671,-1702,-1721,-1745,-1772,
+-1788,-1813,-1841,-1861,-1882,-1904,-1924,-1943,-1956,-1966,-1988,-2005,-2026,-2049,-2068,-2086,-2085,-2099,-2116,-2133,
+-2148,-2163,-2173,-2188,-2203,-2217,-2236,-2259,-2275,-2280,-2295,-2317,-2333,-2346,-2360,-2370,-2394,-2407,-2409,-2412,
+-2438,-2441,-2450,-2453,-2470,-2478,-2472,-2461,-2458,-2458,-2456,-2457,-2460,-2458,-2455,-2456,-2457,-2454,-2454,-2449,
+-2445,-2442,-2437,-2433,-2434,-2427,-2428,-2424,-2424,-2418,-2416,-2415,-2416,-2417,-2419,-2407,-2405,-2408,-2396,-2395,
+-2397,-2399,-2402,-2398,-2392,-2386,-2382,-2370,-2368,-2364,-2352,-2335,-2326,-2314,-2311,-2288,-2274,-2299,-2301,-2275,
+-2236,-2224,-2215,-2192,-2154,-2132,-2115,-2104,-2089,-2072,-2062,-2050,-2041,-2032,-2025,-2021,-2016,-1993,-1976,-1970,
+-1957,-1959,-1954,-1956,-1961,-1974,-2012,-2040,-2067,-2089,-2113,-2143,-2158,-2159,-2143,-2119,-2115,-2112,-2113,-2118,
+-2113,-2117,-2131,-2150,-2174,-2195,-2192,-2177,-2183,-2190,-2196,-2194,-2189,-2187,-2191,-2198,-2209,-2224,-2247,-2271,
+-2278,-2269,-2269,-2276,-2283,-2283,-2276,-2260,-2242,-2222,-2208,-2198,-2181,-2144,-2008,-1909,-2166,-2407,-2461,-2475,
+-2489,-2510,-2494,-2495,-2508,-2520,-2537,-2559,-2585,-2588,-2595,-2617,-2623,-2644,-2678,-2686,-2640,-2572,-2550,-2547,
+-2531,-2515,-2493,-2476,-2483,-2520,-2498,-2464,-2462,-2480,-2490,-2507,-2542,-2571,-2597,-2617,-2632,-2662,-2696,-2734,
+-2786,-2850,-2918,-2987,-3037,-3075,-3103,-3137,-3168,-3188,-3202,-3220,-3232,-3236,-3241,-3241,-3242,-3240,-3238,-3233,
+-3229,-3222,-3210,-3210,-3218,-3228,-3238,-3246,-3244,-3243,-3248,-3259,-3266,-3274,-3284,-3296,-3308,-3316,-3322,-3328,
+-3331,-3338,-3349,-3365,-3383,-3400,-3408,-3409,-3406,-3403,-3399,-3397,-3395,-3394,-3391,-3389,-3387,-3382,-3374,-3363,
+-3353,-3344,-3334,-3326,-3318,-3308,-3296,-3286,-3278,-3270,-3263,-3253,-3244,-3229,-3219,-3212,-3203,-3192,-3181,-3168,
+-3156,-3142,-3127,-3117,-3111,-3115,-3099,-3067,-3050,-3041,-3034,-3019,-3021,-3036,-3029,-3018,-3017,-3006,-2976,-2967,
+-2963,-2953,-2939,-2939,-2944,-2935,-2910,-2900,-2866,-2848,-2838,-2814,-2796,-2778,-2760,-2745,-2721,-2700,-2686,-2670,
+-2660,-2651,-2642,-2634,-2629,-2617,-2602,-2583,-2568,-2557,-2542,-2537,-2522,-2515,-2507,-2495,-2470,-2455,-2454,-2445,
+-2430,-2414,-2395,-2383,-2364,-2360,-2356,-2349,-2345,-2340,-2339,-2331,-2322,-2318,-2315,-2309,-2299,-2288,-2280,-2274,
+-2278,-2282,-2281,-2273,-2271,-2269,-2283,-2286,-2277,-2275,-2276,-2276,-2257,-2215,-2202,-2204,-2180,-2166,-2155,-2146,
+-2144,-2136,-2127,-2113,-2094,-2079,-2065,-2053,-2042,-2035,-2026,-2018,-2010,-2001,-1989,-1981,-1973,-1961,-1954,-1940,
+-1926,-1900,-1897,-1880,-1864,-1857,-1834,-1811,-1818,-1811,-1800,-1803,-1806,-1806,-1797,-1792,-1789,-1791,-1802,-1789,
+-1781,-1777,-1776,-1776,-1778,-1778,-1773,-1765,-1756,-1747,-1750,-1787,-1808,-1817,-1823,-1825,-1829,-1835,-1809,-1742,
+-1685,-1680,-1695,-1703,-1696,-1680,-1662,-1649,-1637,-1631,-1632,-1641,-1636,-1604,-1531,-1499,-1489,-1468,-1485,-1485,
+-1469,-1457,-1445,-1432,-1419,-1406,-1389,-1369,-1350,-1331,-1315,-1306,-1297,-1286,-1276,-1263,-1245,-1240,-1243,-1239,
+-1231,-1228,-1221,-1222,-1221,-1220,-1215,-1232,-1234,-1234,-1241,-1239,-1239,-1246,-1247,-1244,-1245,-1244,-1249,-1252,
+-1255,-1256,-1254,-1254,-1254,-1261,-1270,-1285,-1295,-1300,-1298,-1297,-1296,-1292,-1291,-1293,-1295,-1297,-1300,-1298,
+-1300,-1295,-1298,-1299,-1299,-1297,-1299,-1298,-1293,-1290,-1288,-1289,-1286,-1290,-1290,-1290,-1288,-1282,-1276,-1269,
+-1258,-1249,-1240,-1236,-1225,-1216,-1207,-1204,-1205,-1200,-1199,-1191,-1175,-1168,-1162,-1148,-1134,-1115,-1104,-1095,
+-1086,-1073,-1053,-1014,-980,-924,-880,-933,-969,-974,-961,-951,-942,-932,-928,-926,-929,-960,-1010,-1051,
+-1002,-994,-1005,-1031,-1033,-1028,-1012,-984,-943,-894,-851,-818,-790,-771,-737,-693,-679,-661,-645,-630,
+-592,-552,-557,-544,-531,-514,-498,-484,-486,-481,-472,-470,-462,-451,-438,-422,-408,-390,-365,-340,
+-333,-309,-288,-261,-232,-208,-185,-161,-131,-93,-71,-69,-79,-57,35,76,104,132,153,171,
+195,240,270,299,332,356,372,394,419,440,456,476,481,476,466,457,435,414,383,347,
+317,302,324,405,518,630,746,915,1057,1123,1153,1178,1198,1196,1194,1190,1165,1158,1177,1233,
+1309,1368,1436,1475,1439,1401,1389,1330,1315,1305,1310,1304,1296,1295,1277,1239,1184,1142,1126,1117,
+1102,1131,1164,1192,1212,1205,1196,1181,1181,1190,1234,1299,1333,1404,1490,1549,1602,1652,1682,1692,
+1708,1711,1696,1701,1707,1699,1715,1747,1775,1802,1810,1801,1782,1752,1697,1630,1579,1538,1469,1394,
+1329,1270,1206,1187,1198,1215,1240,1284,1327,1354,1374,1388,1386,1372,1359,1356,1348,1357,1372,1375,
+1385,1385,1402,1411,1423,1430,1435,1447,1457,1463,1468,1463,1449,1458,1460,1426,1420,1460,1503,1482,
+1484,1503,1508,1496,1493,1486,1479,1470,1464,1481,1494,1506,1529,1551,1576,1600,1621,1624,1623,1621,
+1617,1600,1593,1628,1725,1882,1992,2027,2064,2126,2195,2242,2282,2325,2368,2427,2358,2165,2010,1905,
+1844,1774,1697,1584,1395,1201,1009,859,768,720,711,733,762,792,805,807,811,815,820,821,
+811,782,744,708,672,643,610,579,566,566,583,617,668,764,885,998,1111,1244,1383,1485,
+1581,1681,1760,1824,1880,1924,1964,2011,2067,2132,2165,2132,2098,2059,2091,2093,2089,2082,2091,2097,
+2106,2107,2125,2148,2158,2160,2158,2170,2175,2173,2179,2189,2198,2211,2223,2231,2242,2252,2256,2267,
+2270,2273,2274,2272,2282,2288,2295,2285,2289,2305,2316,2321,2332,2349,2368,2384,2399,2415,2437,2457,
+2467,2486,2510,2518,2537,2552,2559,2567,2575,2575,2582,2594,2608,2624,2630,2660,2656,2673,2691,2686,
+2701,2690,2687,2694,2694,2696,2697,2712,2717,2723,2722,2730,2749,2759,2761,2762,2770,2746,2742,2769,
+2803,2720,2710,2673,2620,2586,2578,2588,2610,2598,2559,2543,2558,2589,2604,2614,2640,2659,2674,2660,
+2617,2581,2615,2651,2649,2615,2596,2571,2570,2566,2560,2552,2558,2562,2545,2510,2464,2444,2445,2452,
+2429,2423,2472,2481,2456,2439,2471,2448,2446,2481,2487,2513,2550,2571,2575,2578,2593,2616,2635,2657,
+2695,2730,2738,2753,2769,2797,2826,2862,2876,2886,2904,2917,2959,3010,3033,3055,3069,3088,3119,3148,
+3147,3145,3173,3194,3202,3220,3235,3234,3241,3260,3315,3350,3330,3312,3322,3318,3307,3338,3387,3405,
+3400,3383,3385,3352,3302,3270,3279,3310,3320,3279,3262,3304,3377,3389,3363,3346,3345,3375,3418,3448,
+3432,3436,3451,3469,3504,3545,3565,3585,3613,3638,3660,3683,3707,3734,3761,3790,3810,3822,3844,3858,
+3883,3909,3936,3960,3983,4005,4030,4057,4084,4110,4146,4190,4232,4256,4286,4305,4315,4358,4383,4402,
+4430,4448,4467,4475,4478,4469,4466,4479,4469,4474,4474,4468,4467,4465,4465,4462,4451,4433,4422,4415,
+4415,4422,4430,4432,4429,4425,4423,4422,4420,4417,4410,4397,4377,4355,4327,4289,4246,4198,4149,4103,
+4063,4032,4012,4002,3998,3999,4015,4052,4077,4088,4092,4092,4089,4080,4063,4040,4013,3986,3963,3949,
+3941,3938,3927,3920,3912,3911,3904,3861,3833,3836,3841,3821,3779,3769,3791,3776,3761,3729,3709,3694,
+3679,3664,3657,3645,3635,3621,3607,3581,3570,3557,3545,3529,3512,3505,3491,3479,3479,3482,3478,3471,
+3468,3460,3451,3434,3423,3415,3410,3408,3408,3410,3418,3417,3425,3431,3440,3444,3441,3437,3431,3433,
+3444,3465,3476,3469,3470,3468,3458,3438,3421,3405,3394,3387,3392,3395,3400,3408,3409,3397,3381,3360,
+3337,3317,3303,3282,3264,3258,3249,3236,3214,3171,3108,3066,3027,2983,2944,2889,2830,2775,2718,2661,
+2579,2487,2425,2373,2341,2320,2263,2202,2154,2130,2116,2095,2067,2034,1994,1953,1913,1894,1904,1936,
+1938,1907,1882,1850,1816,1790,1766,1744,1707,1669,1651,1619,1586,1558,1531,1502,1469,1434,1400,1374,
+1348,1310,1278,1247,1223,1193,1163,1132,1101,1065,1026,986,949,918,891,865,839,809,776,744,
+717,683,654,624,594,562,535,501,472,434,394,350,301,253,208,193,251,269,172,109,
+70,51,39,23,0,-32,-74,-116,-148,-186,-223,-257,-283,-316,-353,-393,-432,-468,-499,-527,
+-556,-581,-606,-638,-668,-699,-731,-765,-809,-846,-876,-907,-941,-965,-986,-1016,-1044,-1078,-1104,-1133,
+-1171,-1196,-1224,-1255,-1291,-1327,-1363,-1396,-1428,-1452,-1476,-1509,-1543,-1578,-1608,-1635,-1675,-1706,-1721,-1748,
+-1774,-1798,-1821,-1844,-1865,-1887,-1909,-1931,-1951,-1962,-1970,-1994,-2018,-2036,-2052,-2072,-2092,-2095,-2108,-2123,
+-2141,-2157,-2174,-2187,-2200,-2214,-2234,-2259,-2260,-2267,-2289,-2306,-2322,-2337,-2353,-2370,-2385,-2399,-2411,-2419,
+-2433,-2450,-2450,-2460,-2462,-2487,-2492,-2487,-2485,-2476,-2471,-2471,-2472,-2475,-2479,-2483,-2484,-2481,-2482,-2478,
+-2476,-2474,-2470,-2467,-2463,-2459,-2458,-2455,-2449,-2459,-2457,-2452,-2446,-2441,-2444,-2449,-2453,-2442,-2426,-2434,
+-2429,-2429,-2434,-2436,-2425,-2423,-2429,-2419,-2412,-2404,-2399,-2397,-2385,-2367,-2350,-2332,-2328,-2332,-2331,-2336,
+-2316,-2276,-2261,-2258,-2235,-2190,-2170,-2153,-2139,-2125,-2112,-2098,-2082,-2073,-2067,-2062,-2061,-2055,-2029,-2019,
+-2014,-2011,-2003,-1987,-1984,-1990,-2016,-2036,-2048,-2069,-2100,-2122,-2150,-2183,-2179,-2179,-2154,-2138,-2139,-2139,
+-2141,-2140,-2140,-2143,-2158,-2183,-2208,-2219,-2217,-2226,-2235,-2240,-2235,-2226,-2218,-2214,-2211,-2215,-2230,-2254,
+-2282,-2306,-2312,-2313,-2316,-2315,-2318,-2319,-2310,-2297,-2271,-2240,-2230,-2212,-2166,-2012,-2052,-2351,-2513,-2560,
+-2557,-2550,-2565,-2578,-2578,-2579,-2602,-2616,-2630,-2651,-2675,-2685,-2692,-2670,-2681,-2712,-2741,-2731,-2718,-2733,
+-2741,-2726,-2693,-2653,-2627,-2625,-2598,-2557,-2553,-2561,-2574,-2598,-2620,-2655,-2694,-2731,-2758,-2782,-2813,-2870,
+-2946,-3016,-3067,-3114,-3161,-3198,-3222,-3242,-3261,-3281,-3297,-3307,-3319,-3329,-3339,-3339,-3336,-3334,-3328,-3322,
+-3322,-3318,-3315,-3301,-3299,-3301,-3310,-3317,-3328,-3329,-3326,-3329,-3335,-3341,-3353,-3363,-3379,-3391,-3403,-3405,
+-3413,-3414,-3418,-3425,-3435,-3451,-3469,-3481,-3483,-3479,-3477,-3475,-3471,-3467,-3464,-3462,-3461,-3461,-3456,-3450,
+-3438,-3428,-3417,-3407,-3396,-3385,-3377,-3368,-3355,-3343,-3334,-3323,-3316,-3305,-3292,-3281,-3269,-3261,-3249,-3243,
+-3236,-3222,-3207,-3192,-3178,-3165,-3149,-3147,-3146,-3124,-3098,-3079,-3077,-3066,-3069,-3070,-3051,-3061,-3075,-3066,
+-3043,-3013,-2989,-2988,-2976,-2970,-2969,-2983,-2969,-2947,-2926,-2901,-2871,-2853,-2835,-2824,-2806,-2780,-2753,-2733,
+-2723,-2703,-2691,-2678,-2672,-2663,-2655,-2645,-2632,-2619,-2610,-2595,-2584,-2573,-2562,-2545,-2541,-2512,-2492,-2491,
+-2487,-2474,-2456,-2439,-2432,-2416,-2394,-2385,-2378,-2373,-2367,-2362,-2355,-2347,-2346,-2343,-2334,-2329,-2318,-2308,
+-2300,-2291,-2285,-2284,-2282,-2274,-2263,-2256,-2260,-2276,-2279,-2279,-2286,-2285,-2279,-2266,-2265,-2257,-2232,-2191,
+-2183,-2184,-2175,-2161,-2151,-2138,-2128,-2116,-2103,-2089,-2077,-2067,-2058,-2049,-2039,-2028,-2017,-2009,-1998,-1983,
+-1968,-1961,-1953,-1940,-1910,-1907,-1890,-1872,-1864,-1846,-1834,-1840,-1838,-1834,-1834,-1830,-1821,-1819,-1814,-1813,
+-1812,-1817,-1823,-1824,-1819,-1808,-1804,-1801,-1798,-1795,-1789,-1784,-1778,-1773,-1777,-1784,-1791,-1810,-1813,-1807,
+-1819,-1827,-1826,-1808,-1738,-1675,-1644,-1650,-1644,-1633,-1608,-1597,-1605,-1617,-1629,-1633,-1620,-1587,-1557,-1537,
+-1509,-1485,-1467,-1458,-1446,-1423,-1414,-1388,-1377,-1367,-1352,-1340,-1329,-1320,-1309,-1295,-1278,-1264,-1266,-1266,
+-1265,-1259,-1253,-1248,-1245,-1242,-1242,-1247,-1246,-1261,-1264,-1262,-1265,-1269,-1269,-1271,-1273,-1277,-1275,-1276,
+-1278,-1283,-1288,-1287,-1289,-1288,-1290,-1295,-1305,-1317,-1328,-1334,-1329,-1339,-1336,-1330,-1330,-1329,-1325,-1328,
+-1330,-1327,-1326,-1325,-1324,-1325,-1323,-1326,-1328,-1326,-1323,-1320,-1322,-1317,-1321,-1316,-1319,-1318,-1316,-1315,
+-1312,-1303,-1290,-1282,-1273,-1258,-1247,-1232,-1218,-1209,-1198,-1188,-1183,-1173,-1166,-1164,-1158,-1145,-1134,-1124,
+-1110,-1096,-1084,-1047,-940,-874,-919,-931,-984,-1009,-1009,-995,-978,-969,-962,-961,-959,-963,-993,-1046,
+-1102,-1071,-1013,-1022,-1047,-1055,-1048,-1031,-997,-956,-917,-881,-852,-839,-819,-785,-744,-717,-692,-659,
+-642,-628,-607,-585,-563,-546,-530,-522,-515,-508,-496,-488,-486,-474,-464,-453,-434,-413,-393,-373,
+-354,-326,-308,-296,-266,-242,-219,-203,-183,-142,-112,-99,-93,-90,-48,13,58,87,108,127,
+147,173,208,247,291,312,331,350,368,398,420,447,460,467,472,468,466,456,436,413,
+378,339,306,290,293,328,409,499,576,662,800,920,983,1029,1070,1122,1159,1204,1237,1246,
+1269,1331,1391,1406,1399,1389,1378,1360,1333,1363,1402,1429,1420,1395,1389,1393,1354,1294,1265,1250,
+1221,1216,1217,1204,1191,1165,1163,1168,1161,1138,1132,1162,1223,1276,1310,1337,1366,1424,1523,1634,
+1690,1711,1708,1708,1670,1655,1682,1738,1764,1792,1821,1838,1856,1837,1784,1719,1657,1617,1566,1542,
+1496,1441,1396,1375,1363,1350,1349,1358,1375,1396,1420,1451,1463,1465,1461,1458,1459,1455,1457,1463,
+1466,1467,1485,1491,1508,1530,1559,1568,1578,1599,1608,1584,1539,1558,1597,1600,1586,1571,1572,1582,
+1577,1577,1581,1589,1584,1569,1580,1567,1557,1551,1561,1576,1588,1603,1610,1627,1639,1651,1663,1647,
+1651,1653,1646,1615,1587,1589,1611,1675,1768,1853,1960,2036,2113,2139,2185,2226,2261,2246,2209,2180,
+2189,2178,2143,2060,1863,1644,1462,1276,1105,1001,969,1002,1052,1077,1091,1084,1003,917,860,835,
+811,763,696,623,562,537,531,509,454,383,321,293,297,335,402,515,672,837,1001,1160,
+1342,1485,1592,1703,1795,1861,1906,1947,1991,2039,2100,2147,2189,2200,2140,2087,2076,2073,2059,2063,
+2076,2073,2077,2090,2090,2080,2087,2106,2129,2138,2140,2150,2155,2167,2180,2191,2197,2205,2219,2225,
+2233,2245,2257,2259,2246,2261,2259,2267,2274,2280,2291,2307,2321,2338,2346,2361,2375,2405,2422,2431,
+2450,2462,2474,2499,2512,2521,2533,2539,2539,2549,2546,2552,2566,2582,2592,2596,2602,2617,2629,2638,
+2645,2655,2663,2659,2654,2659,2666,2671,2680,2687,2690,2704,2733,2761,2773,2715,2672,2690,2689,2710,
+2707,2720,2620,2597,2549,2516,2509,2541,2530,2532,2550,2533,2507,2511,2513,2531,2551,2541,2546,2549,
+2552,2569,2568,2578,2571,2575,2556,2547,2568,2573,2559,2549,2530,2517,2508,2482,2426,2376,2373,2382,
+2385,2386,2405,2413,2419,2386,2381,2399,2413,2427,2428,2455,2470,2486,2499,2521,2538,2559,2577,2592,
+2618,2645,2655,2679,2705,2738,2765,2789,2801,2819,2835,2856,2898,2957,2988,2998,3001,3013,3038,3062,
+3074,3096,3126,3146,3143,3143,3162,3167,3173,3192,3243,3285,3266,3249,3245,3272,3274,3303,3318,3315,
+3306,3294,3287,3290,3246,3209,3218,3250,3294,3292,3252,3235,3262,3323,3380,3329,3310,3318,3355,3401,
+3396,3398,3415,3429,3456,3492,3523,3550,3580,3603,3625,3645,3665,3688,3714,3742,3758,3772,3788,3802,
+3823,3851,3872,3892,3911,3928,3953,3979,4007,4040,4071,4105,4145,4178,4202,4229,4248,4263,4300,4326,
+4349,4362,4379,4383,4391,4392,4381,4381,4393,4388,4381,4388,4393,4391,4385,4377,4375,4368,4362,4354,
+4345,4342,4349,4359,4363,4363,4364,4360,4361,4358,4358,4349,4344,4327,4304,4280,4251,4220,4183,4136,
+4094,4053,4017,3991,3970,3958,3956,3965,3979,4000,4021,4032,4032,4035,4029,4015,3990,3969,3950,3934,
+3927,3917,3906,3895,3885,3884,3887,3859,3831,3824,3834,3825,3789,3756,3755,3755,3758,3736,3714,3682,
+3663,3645,3633,3623,3616,3611,3595,3581,3572,3571,3556,3540,3528,3515,3499,3490,3482,3478,3482,3484,
+3489,3504,3517,3511,3502,3499,3479,3452,3445,3436,3424,3402,3386,3392,3406,3412,3419,3427,3439,3435,
+3444,3485,3509,3467,3454,3451,3447,3436,3417,3401,3384,3370,3364,3363,3369,3374,3370,3351,3325,3301,
+3278,3263,3252,3244,3228,3208,3200,3198,3194,3181,3157,3119,3054,2997,2948,2930,2883,2835,2788,2745,
+2696,2634,2546,2448,2371,2308,2273,2231,2170,2144,2154,2154,2191,2229,2211,2112,2010,1937,1893,1868,
+1880,1908,1888,1860,1834,1803,1778,1750,1718,1693,1671,1632,1604,1577,1543,1514,1483,1456,1424,1395,
+1369,1338,1310,1282,1250,1215,1191,1162,1127,1088,1055,1021,988,954,923,894,866,839,814,784,
+749,711,682,644,615,590,563,530,501,469,435,393,349,308,264,212,180,160,137,113,
+107,72,49,33,14,-17,-58,-97,-122,-155,-192,-223,-249,-281,-320,-356,-398,-437,-471,-501,
+-529,-556,-587,-614,-642,-671,-699,-731,-770,-807,-847,-876,-908,-932,-955,-983,-1013,-1048,-1083,-1112,
+-1138,-1165,-1193,-1225,-1258,-1293,-1330,-1365,-1399,-1434,-1454,-1484,-1517,-1550,-1581,-1607,-1641,-1682,-1699,-1722,
+-1749,-1771,-1799,-1825,-1847,-1870,-1891,-1911,-1937,-1943,-1950,-1971,-2001,-2027,-2043,-2062,-2083,-2094,-2100,-2114,
+-2130,-2148,-2166,-2185,-2203,-2219,-2237,-2241,-2248,-2266,-2287,-2303,-2319,-2336,-2353,-2372,-2384,-2398,-2410,-2422,
+-2432,-2449,-2462,-2465,-2475,-2474,-2502,-2501,-2495,-2490,-2501,-2499,-2497,-2495,-2494,-2496,-2501,-2502,-2502,-2500,
+-2501,-2501,-2498,-2495,-2492,-2493,-2490,-2484,-2483,-2481,-2479,-2477,-2478,-2469,-2470,-2466,-2466,-2468,-2478,-2476,
+-2471,-2461,-2465,-2463,-2457,-2461,-2465,-2464,-2457,-2453,-2444,-2436,-2432,-2417,-2404,-2389,-2382,-2366,-2362,-2358,
+-2375,-2368,-2322,-2301,-2305,-2280,-2228,-2208,-2188,-2176,-2164,-2151,-2137,-2125,-2113,-2104,-2105,-2104,-2104,-2083,
+-2070,-2061,-2053,-2047,-2038,-2041,-2042,-2041,-2014,-2056,-2081,-2127,-2144,-2172,-2205,-2211,-2216,-2188,-2176,-2176,
+-2176,-2176,-2169,-2171,-2178,-2191,-2210,-2243,-2250,-2229,-2241,-2254,-2267,-2264,-2257,-2248,-2245,-2240,-2244,-2260,
+-2279,-2302,-2321,-2335,-2345,-2349,-2352,-2356,-2365,-2366,-2354,-2330,-2301,-2285,-2278,-2226,-2139,-2283,-2504,-2597,
+-2612,-2606,-2601,-2617,-2636,-2648,-2653,-2670,-2685,-2704,-2719,-2738,-2776,-2793,-2748,-2778,-2826,-2869,-2883,-2902,
+-2915,-2912,-2875,-2817,-2760,-2708,-2686,-2659,-2658,-2672,-2688,-2709,-2734,-2765,-2805,-2846,-2897,-2958,-3010,-3053,
+-3098,-3132,-3168,-3204,-3250,-3290,-3322,-3339,-3358,-3369,-3381,-3394,-3403,-3409,-3416,-3416,-3422,-3425,-3420,-3420,
+-3414,-3410,-3406,-3401,-3393,-3384,-3386,-3391,-3397,-3403,-3408,-3404,-3410,-3420,-3428,-3437,-3449,-3459,-3471,-3482,
+-3489,-3490,-3494,-3496,-3502,-3509,-3522,-3535,-3549,-3557,-3560,-3550,-3543,-3539,-3535,-3532,-3531,-3530,-3525,-3525,
+-3519,-3511,-3502,-3494,-3485,-3472,-3457,-3448,-3435,-3422,-3406,-3396,-3388,-3376,-3365,-3354,-3343,-3331,-3318,-3308,
+-3302,-3301,-3295,-3287,-3266,-3240,-3230,-3210,-3190,-3176,-3193,-3189,-3165,-3139,-3125,-3126,-3109,-3101,-3102,-3098,
+-3092,-3093,-3098,-3083,-3051,-3016,-2989,-2980,-2979,-2979,-2986,-2985,-2970,-2945,-2924,-2901,-2879,-2861,-2841,-2824,
+-2800,-2782,-2765,-2746,-2732,-2720,-2707,-2699,-2684,-2673,-2664,-2653,-2638,-2625,-2614,-2597,-2589,-2579,-2559,-2541,
+-2519,-2514,-2510,-2495,-2492,-2473,-2455,-2443,-2430,-2416,-2408,-2403,-2392,-2382,-2376,-2369,-2363,-2358,-2351,-2345,
+-2337,-2324,-2316,-2308,-2307,-2301,-2293,-2275,-2275,-2277,-2274,-2264,-2260,-2265,-2275,-2284,-2286,-2279,-2276,-2280,
+-2273,-2262,-2238,-2219,-2197,-2191,-2175,-2165,-2153,-2139,-2133,-2125,-2115,-2101,-2084,-2072,-2061,-2048,-2039,-2027,
+-2013,-2004,-1993,-1986,-1978,-1973,-1945,-1935,-1915,-1897,-1882,-1882,-1883,-1881,-1875,-1867,-1861,-1857,-1850,-1843,
+-1839,-1839,-1837,-1835,-1837,-1838,-1839,-1839,-1840,-1833,-1834,-1832,-1829,-1824,-1818,-1808,-1802,-1794,-1784,-1776,
+-1770,-1780,-1789,-1799,-1799,-1805,-1809,-1803,-1781,-1723,-1671,-1639,-1622,-1619,-1618,-1607,-1583,-1546,-1541,-1589,
+-1619,-1607,-1576,-1549,-1524,-1513,-1506,-1489,-1449,-1403,-1384,-1371,-1363,-1356,-1347,-1329,-1312,-1292,-1294,-1291,
+-1293,-1291,-1285,-1283,-1281,-1280,-1277,-1276,-1277,-1284,-1288,-1288,-1290,-1291,-1300,-1298,-1302,-1324,-1305,-1301,
+-1308,-1306,-1312,-1317,-1318,-1328,-1328,-1324,-1321,-1322,-1331,-1339,-1340,-1352,-1363,-1365,-1367,-1370,-1368,-1367,
+-1368,-1366,-1362,-1362,-1357,-1356,-1357,-1356,-1356,-1358,-1359,-1352,-1349,-1350,-1349,-1355,-1354,-1357,-1355,-1355,
+-1355,-1348,-1337,-1323,-1311,-1302,-1290,-1270,-1255,-1241,-1227,-1217,-1202,-1189,-1177,-1167,-1160,-1154,-1146,-1146,
+-1144,-1137,-1127,-1109,-1080,-1048,-1035,-1047,-1058,-1060,-1053,-1039,-1023,-1008,-994,-985,-979,-976,-985,-1019,
+-1069,-1107,-1065,-1033,-1047,-1064,-1065,-1054,-1038,-1012,-987,-955,-925,-897,-866,-839,-823,-799,-759,-729,
+-700,-668,-649,-640,-622,-596,-574,-563,-565,-553,-535,-517,-515,-520,-505,-489,-483,-455,-429,-401,
+-381,-355,-318,-305,-283,-269,-252,-241,-226,-199,-165,-149,-136,-120,-104,-75,-12,27,56,92,
+86,116,145,180,226,259,284,310,332,348,376,406,430,444,457,469,475,472,469,461,
+444,418,383,354,334,314,299,307,354,414,478,536,598,656,731,839,969,1053,1125,1189,
+1237,1284,1345,1396,1403,1378,1391,1400,1418,1417,1435,1460,1487,1508,1498,1481,1474,1421,1345,1275,
+1256,1237,1204,1203,1203,1190,1175,1179,1177,1173,1175,1188,1221,1271,1312,1360,1406,1446,1476,1498,
+1525,1555,1583,1614,1673,1673,1642,1635,1646,1669,1684,1708,1738,1740,1728,1700,1669,1643,1626,1606,
+1601,1583,1575,1569,1557,1538,1512,1498,1496,1498,1498,1508,1527,1539,1540,1545,1548,1551,1551,1550,
+1562,1563,1563,1572,1579,1595,1616,1632,1647,1665,1677,1660,1625,1573,1591,1639,1660,1653,1643,1624,
+1621,1619,1619,1624,1630,1618,1616,1627,1625,1616,1609,1622,1624,1625,1638,1638,1643,1668,1690,1689,
+1675,1682,1687,1687,1677,1661,1645,1626,1639,1674,1723,1789,1846,1878,1911,1969,2036,2129,2212,2254,
+2265,2272,2269,2226,2122,1979,1857,1752,1662,1580,1536,1607,1683,1717,1747,1730,1665,1540,1391,1286,
+1288,1268,1162,1073,1009,977,968,927,847,761,627,467,346,280,245,222,237,325,487,685,
+892,1100,1297,1478,1610,1709,1794,1867,1919,1955,1987,2019,2063,2106,2121,2127,2109,2044,2015,1994,
+1988,2034,2056,2065,2075,2070,2051,2032,2032,2045,2078,2089,2098,2113,2123,2128,2149,2156,2174,2190,
+2205,2212,2224,2232,2228,2219,2253,2256,2264,2272,2281,2296,2307,2320,2328,2339,2351,2363,2385,2400,
+2397,2416,2430,2437,2456,2471,2471,2479,2482,2488,2503,2517,2518,2530,2549,2563,2567,2568,2581,2590,
+2594,2599,2606,2613,2619,2621,2627,2634,2634,2639,2659,2695,2711,2692,2683,2635,2602,2654,2660,2658,
+2655,2630,2620,2539,2523,2507,2505,2482,2469,2482,2483,2505,2501,2487,2487,2485,2483,2487,2498,2511,
+2513,2498,2515,2529,2525,2512,2525,2535,2523,2483,2442,2415,2395,2380,2366,2343,2321,2300,2299,2302,
+2330,2345,2333,2325,2350,2343,2330,2344,2346,2350,2347,2377,2401,2397,2411,2457,2473,2488,2516,2533,
+2550,2564,2591,2627,2651,2675,2698,2725,2753,2770,2791,2808,2837,2875,2905,2933,2949,2947,2957,2991,
+3034,3069,3085,3091,3085,3077,3087,3097,3123,3152,3184,3211,3203,3182,3175,3196,3220,3248,3273,3254,
+3225,3211,3214,3216,3195,3160,3167,3204,3256,3261,3238,3214,3208,3215,3248,3310,3302,3287,3310,3338,
+3350,3359,3372,3386,3406,3441,3471,3500,3535,3560,3586,3609,3628,3647,3668,3695,3716,3724,3731,3750,
+3772,3788,3818,3837,3853,3869,3888,3907,3926,3951,3975,4008,4045,4082,4113,4136,4163,4176,4198,4239,
+4261,4284,4292,4298,4310,4311,4313,4306,4309,4308,4319,4319,4304,4306,4311,4309,4303,4302,4298,4290,
+4285,4278,4278,4283,4287,4295,4298,4301,4302,4301,4300,4296,4288,4276,4259,4237,4218,4196,4171,4144,
+4112,4082,4049,4017,3993,3976,3967,3965,3963,3969,3972,3976,3975,3979,3982,3975,3964,3949,3935,3921,
+3907,3896,3885,3872,3860,3866,3871,3839,3818,3804,3797,3802,3792,3760,3737,3731,3727,3722,3700,3681,
+3678,3641,3614,3606,3597,3593,3586,3568,3564,3564,3561,3550,3538,3525,3515,3501,3488,3482,3477,3479,
+3484,3505,3525,3547,3561,3557,3543,3513,3488,3474,3444,3413,3390,3369,3372,3375,3377,3377,3379,3383,
+3387,3392,3400,3411,3421,3426,3425,3417,3404,3390,3372,3348,3325,3316,3317,3323,3313,3300,3280,3254,
+3228,3207,3187,3170,3161,3157,3146,3148,3149,3145,3137,3120,3089,3023,2965,2927,2894,2845,2793,2752,
+2713,2670,2616,2541,2465,2393,2313,2250,2210,2153,2111,2080,2063,2067,2108,2159,2155,2065,1968,1908,
+1869,1851,1846,1855,1848,1815,1787,1761,1731,1698,1669,1644,1619,1592,1565,1536,1506,1475,1444,1412,
+1384,1362,1337,1305,1276,1252,1221,1194,1164,1128,1094,1063,1029,995,964,933,901,871,838,805,
+775,743,706,674,643,611,584,559,532,499,469,433,398,355,315,277,235,201,174,152,
+125,84,61,43,22,-7,-39,-43,-90,-132,-164,-198,-221,-249,-288,-326,-367,-407,-443,-475,
+-506,-534,-559,-589,-616,-641,-671,-704,-741,-777,-817,-852,-880,-910,-930,-958,-986,-1014,-1046,-1075,
+-1103,-1134,-1166,-1198,-1233,-1267,-1303,-1337,-1364,-1398,-1431,-1462,-1493,-1524,-1555,-1579,-1610,-1652,-1681,-1696,
+-1725,-1747,-1775,-1804,-1826,-1850,-1873,-1891,-1914,-1935,-1945,-1961,-1988,-2010,-2031,-2052,-2068,-2086,-2092,-2100,
+-2118,-2139,-2156,-2174,-2192,-2206,-2219,-2240,-2257,-2264,-2283,-2299,-2317,-2333,-2348,-2364,-2377,-2391,-2403,-2413,
+-2426,-2435,-2458,-2472,-2479,-2483,-2492,-2517,-2517,-2509,-2508,-2511,-2523,-2525,-2520,-2525,-2527,-2528,-2527,-2527,
+-2527,-2524,-2526,-2525,-2522,-2518,-2519,-2521,-2519,-2515,-2515,-2512,-2509,-2509,-2506,-2503,-2501,-2490,-2493,-2498,
+-2500,-2499,-2501,-2507,-2498,-2494,-2490,-2491,-2491,-2493,-2492,-2479,-2468,-2467,-2455,-2443,-2431,-2417,-2405,-2398,
+-2397,-2414,-2416,-2368,-2341,-2345,-2324,-2270,-2247,-2229,-2214,-2202,-2191,-2179,-2168,-2156,-2151,-2149,-2146,-2150,
+-2126,-2108,-2102,-2091,-2085,-2076,-2080,-2084,-2086,-2086,-2080,-2088,-2143,-2161,-2181,-2212,-2234,-2246,-2231,-2214,
+-2215,-2211,-2207,-2207,-2206,-2209,-2219,-2242,-2280,-2277,-2260,-2259,-2281,-2298,-2302,-2294,-2285,-2279,-2277,-2284,
+-2300,-2326,-2350,-2363,-2368,-2366,-2367,-2374,-2386,-2395,-2398,-2391,-2376,-2357,-2356,-2359,-2316,-2340,-2509,-2611,
+-2652,-2654,-2663,-2648,-2646,-2668,-2691,-2721,-2731,-2742,-2758,-2779,-2806,-2848,-2851,-2871,-2921,-2966,-3007,-3020,
+-3044,-3038,-3005,-2937,-2872,-2817,-2804,-2792,-2781,-2786,-2822,-2858,-2884,-2904,-2962,-3034,-3080,-3106,-3140,-3179,
+-3210,-3244,-3275,-3297,-3328,-3362,-3389,-3419,-3443,-3451,-3463,-3471,-3480,-3488,-3495,-3497,-3501,-3505,-3508,-3508,
+-3507,-3504,-3498,-3491,-3485,-3478,-3468,-3464,-3473,-3477,-3488,-3498,-3496,-3498,-3508,-3519,-3526,-3532,-3540,-3549,
+-3556,-3561,-3567,-3569,-3575,-3581,-3587,-3594,-3606,-3620,-3631,-3635,-3625,-3613,-3606,-3604,-3598,-3593,-3590,-3589,
+-3586,-3583,-3579,-3569,-3562,-3554,-3542,-3528,-3513,-3502,-3490,-3475,-3461,-3447,-3435,-3422,-3412,-3403,-3393,-3379,
+-3368,-3361,-3347,-3339,-3331,-3337,-3321,-3305,-3288,-3278,-3263,-3248,-3244,-3247,-3225,-3194,-3173,-3163,-3156,-3126,
+-3115,-3130,-3129,-3132,-3141,-3136,-3116,-3096,-3067,-3022,-2998,-2988,-2981,-2988,-2983,-2963,-2941,-2917,-2903,-2896,
+-2882,-2864,-2840,-2824,-2809,-2790,-2773,-2761,-2744,-2728,-2720,-2702,-2687,-2673,-2660,-2652,-2635,-2629,-2615,-2608,
+-2600,-2594,-2572,-2557,-2550,-2534,-2523,-2503,-2484,-2474,-2462,-2452,-2442,-2427,-2416,-2412,-2399,-2388,-2375,-2371,
+-2366,-2357,-2353,-2342,-2331,-2323,-2316,-2312,-2308,-2303,-2296,-2293,-2288,-2284,-2272,-2264,-2268,-2268,-2265,-2258,
+-2243,-2232,-2231,-2257,-2275,-2276,-2259,-2238,-2214,-2200,-2186,-2171,-2159,-2151,-2142,-2137,-2130,-2110,-2092,-2079,
+-2066,-2058,-2042,-2033,-2024,-2013,-2007,-1985,-1977,-1956,-1932,-1930,-1928,-1923,-1917,-1909,-1902,-1900,-1896,-1890,
+-1875,-1882,-1879,-1872,-1873,-1869,-1868,-1867,-1866,-1862,-1853,-1854,-1859,-1858,-1859,-1854,-1865,-1852,-1845,-1838,
+-1832,-1819,-1809,-1808,-1805,-1794,-1797,-1806,-1811,-1805,-1787,-1778,-1747,-1729,-1708,-1688,-1673,-1664,-1650,-1631,
+-1614,-1588,-1555,-1534,-1546,-1576,-1580,-1558,-1531,-1505,-1489,-1471,-1447,-1409,-1369,-1371,-1358,-1334,-1322,-1328,
+-1325,-1324,-1325,-1324,-1322,-1320,-1314,-1314,-1315,-1312,-1315,-1318,-1317,-1313,-1313,-1318,-1322,-1329,-1333,-1318,
+-1325,-1331,-1332,-1327,-1331,-1338,-1341,-1349,-1353,-1358,-1363,-1367,-1368,-1372,-1374,-1380,-1383,-1388,-1391,-1391,
+-1397,-1400,-1403,-1401,-1397,-1394,-1392,-1388,-1388,-1388,-1386,-1385,-1378,-1379,-1376,-1377,-1373,-1369,-1371,-1371,
+-1369,-1372,-1366,-1354,-1343,-1333,-1319,-1303,-1290,-1273,-1262,-1249,-1232,-1218,-1204,-1195,-1181,-1167,-1161,-1150,
+-1150,-1149,-1152,-1150,-1127,-1065,-1034,-1057,-1082,-1094,-1092,-1081,-1065,-1051,-1034,-1021,-1007,-995,-993,-1008,
+-1033,-1066,-1096,-1072,-1066,-1086,-1091,-1071,-1054,-1034,-1008,-981,-954,-931,-911,-885,-846,-814,-815,-802,
+-774,-769,-731,-703,-690,-677,-640,-609,-599,-602,-593,-574,-564,-561,-544,-518,-517,-500,-472,-442,
+-412,-380,-345,-333,-321,-296,-276,-260,-255,-242,-222,-202,-179,-158,-143,-133,-110,-53,-3,38,
+57,60,94,122,154,191,227,254,280,302,319,341,380,404,420,430,442,455,463,465,
+468,465,458,436,415,398,374,356,337,326,336,376,426,461,529,570,611,705,841,959,
+1060,1154,1237,1287,1337,1363,1372,1384,1411,1424,1428,1451,1483,1514,1524,1525,1524,1519,1478,1366,
+1281,1262,1258,1238,1224,1219,1224,1227,1233,1242,1257,1276,1307,1349,1387,1424,1465,1502,1541,1574,
+1605,1633,1655,1670,1683,1697,1714,1722,1716,1705,1713,1721,1734,1738,1746,1744,1733,1712,1694,1693,
+1698,1697,1691,1682,1693,1703,1683,1655,1636,1624,1616,1609,1604,1607,1612,1614,1612,1613,1623,1636,
+1636,1638,1645,1648,1653,1655,1675,1687,1689,1687,1687,1675,1636,1608,1646,1697,1691,1678,1666,1663,
+1661,1664,1655,1650,1654,1656,1660,1665,1667,1669,1677,1682,1683,1668,1666,1682,1666,1682,1698,1702,
+1714,1727,1736,1746,1753,1748,1748,1734,1723,1717,1729,1750,1785,1844,1889,1890,1892,1934,2018,2092,
+2175,2227,2230,2228,2178,2118,2058,1999,1974,1956,1939,1927,1954,1992,2020,2037,2042,1996,1914,1830,
+1795,1758,1710,1657,1601,1617,1573,1530,1520,1454,1364,1250,1125,960,759,550,384,252,195,242,
+385,594,826,1054,1269,1459,1607,1704,1782,1852,1909,1943,1964,2002,2034,2053,2063,2055,2014,1984,
+1967,1971,2014,2028,2033,2068,2098,2097,2088,2071,2022,2016,2051,2079,2085,2087,2091,2099,2111,2127,
+2150,2179,2189,2204,2224,2234,2239,2244,2255,2262,2265,2272,2275,2284,2294,2304,2303,2296,2302,2322,
+2334,2340,2350,2369,2375,2382,2399,2402,2410,2428,2450,2467,2487,2498,2508,2523,2541,2553,2564,2573,
+2572,2581,2581,2587,2599,2615,2621,2626,2641,2638,2624,2624,2606,2613,2641,2661,2554,2515,2560,2567,
+2570,2575,2562,2539,2470,2452,2442,2442,2456,2465,2453,2460,2452,2461,2462,2460,2470,2460,2459,2462,
+2469,2485,2486,2471,2464,2455,2441,2404,2345,2314,2292,2274,2257,2244,2229,2212,2217,2219,2223,2237,
+2267,2270,2255,2255,2263,2284,2292,2301,2299,2296,2312,2323,2338,2333,2331,2343,2376,2398,2417,2456,
+2476,2498,2528,2551,2568,2598,2620,2646,2674,2699,2720,2746,2776,2799,2828,2852,2864,2874,2891,2918,
+2965,3016,3019,3021,3011,3004,3006,3021,3054,3091,3117,3141,3140,3124,3122,3144,3169,3203,3231,3222,
+3183,3147,3132,3154,3164,3136,3113,3145,3206,3241,3224,3198,3177,3168,3177,3205,3239,3244,3252,3285,
+3309,3320,3335,3346,3364,3391,3418,3445,3474,3501,3526,3558,3583,3603,3624,3647,3668,3676,3687,3708,
+3724,3734,3746,3775,3797,3818,3832,3846,3866,3888,3912,3934,3953,3971,4000,4036,4064,4083,4103,4124,
+4156,4174,4193,4210,4220,4230,4228,4233,4236,4238,4238,4242,4245,4234,4244,4228,4226,4227,4224,4223,
+4226,4225,4222,4223,4225,4224,4228,4231,4238,4240,4241,4241,4239,4230,4218,4203,4189,4168,4147,4124,
+4098,4074,4048,4027,4002,3984,3969,3960,3956,3956,3947,3934,3927,3929,3932,3929,3921,3913,3905,3901,
+3889,3878,3864,3836,3824,3842,3860,3841,3817,3803,3768,3764,3762,3749,3735,3721,3715,3704,3690,3672,
+3649,3630,3613,3601,3593,3584,3579,3574,3560,3560,3552,3543,3534,3531,3521,3506,3493,3487,3482,3482,
+3487,3504,3525,3542,3558,3565,3564,3554,3520,3481,3445,3418,3395,3375,3361,3348,3342,3340,3340,3342,
+3347,3351,3361,3370,3380,3388,3389,3389,3379,3366,3348,3326,3311,3309,3306,3295,3277,3262,3257,3248,
+3229,3201,3176,3154,3134,3117,3099,3086,3080,3079,3079,3068,3049,3014,2966,2928,2895,2851,2795,2737,
+2679,2641,2604,2553,2496,2442,2391,2331,2251,2173,2127,2085,2049,2019,2004,1992,1984,1978,1961,1919,
+1883,1862,1848,1823,1819,1812,1794,1773,1747,1710,1684,1654,1627,1601,1578,1554,1526,1497,1469,1439,
+1406,1381,1356,1336,1315,1289,1257,1222,1192,1157,1125,1096,1065,1036,1004,975,942,909,868,839,
+803,771,741,711,679,648,612,583,556,531,500,470,436,401,365,322,288,251,216,189,
+169,133,82,54,27,1,-20,-31,-39,-93,-135,-175,-198,-230,-263,-298,-337,-376,-414,-446,
+-477,-501,-528,-556,-590,-619,-650,-682,-716,-752,-786,-820,-857,-891,-923,-946,-966,-987,-1013,-1039,
+-1068,-1101,-1135,-1170,-1207,-1243,-1276,-1307,-1339,-1368,-1402,-1433,-1463,-1495,-1524,-1549,-1578,-1619,-1656,-1675,
+-1700,-1729,-1756,-1782,-1806,-1828,-1853,-1872,-1891,-1914,-1930,-1941,-1966,-1990,-2013,-2036,-2053,-2071,-2086,-2093,
+-2111,-2128,-2146,-2165,-2183,-2200,-2218,-2233,-2241,-2256,-2274,-2294,-2314,-2333,-2343,-2361,-2377,-2392,-2406,-2418,
+-2431,-2443,-2458,-2474,-2484,-2491,-2492,-2512,-2532,-2534,-2532,-2529,-2542,-2545,-2543,-2547,-2557,-2558,-2559,-2559,
+-2559,-2558,-2556,-2556,-2555,-2554,-2551,-2547,-2547,-2547,-2546,-2536,-2540,-2539,-2535,-2534,-2533,-2532,-2532,-2527,
+-2528,-2523,-2521,-2531,-2531,-2534,-2532,-2523,-2521,-2525,-2522,-2522,-2522,-2514,-2507,-2499,-2483,-2471,-2455,-2446,
+-2445,-2447,-2451,-2462,-2436,-2386,-2378,-2375,-2323,-2289,-2274,-2260,-2248,-2237,-2228,-2215,-2205,-2197,-2196,-2195,
+-2195,-2179,-2152,-2141,-2133,-2124,-2120,-2119,-2123,-2127,-2115,-2103,-2117,-2169,-2186,-2192,-2218,-2254,-2266,-2270,
+-2255,-2249,-2245,-2239,-2235,-2235,-2239,-2249,-2270,-2302,-2321,-2311,-2301,-2308,-2313,-2337,-2331,-2325,-2320,-2320,
+-2327,-2347,-2377,-2406,-2423,-2424,-2411,-2402,-2406,-2413,-2425,-2432,-2436,-2444,-2453,-2476,-2496,-2455,-2577,-2635,
+-2652,-2668,-2655,-2653,-2684,-2699,-2699,-2716,-2741,-2768,-2803,-2824,-2840,-2868,-2914,-2912,-2953,-2999,-3049,-3094,
+-3103,-3135,-3132,-3090,-3045,-3001,-2966,-2964,-2963,-2968,-2978,-2999,-3038,-3076,-3106,-3147,-3184,-3206,-3181,-3193,
+-3274,-3325,-3363,-3393,-3416,-3437,-3454,-3490,-3514,-3521,-3531,-3549,-3559,-3565,-3575,-3580,-3584,-3587,-3589,-3594,
+-3597,-3596,-3593,-3589,-3584,-3576,-3575,-3571,-3564,-3561,-3563,-3570,-3578,-3586,-3587,-3595,-3600,-3609,-3617,-3623,
+-3627,-3630,-3630,-3634,-3641,-3648,-3657,-3665,-3669,-3673,-3683,-3690,-3695,-3691,-3680,-3671,-3667,-3661,-3653,-3647,
+-3647,-3644,-3643,-3638,-3632,-3623,-3615,-3611,-3600,-3584,-3571,-3555,-3541,-3525,-3513,-3500,-3489,-3474,-3463,-3452,
+-3442,-3433,-3426,-3415,-3406,-3397,-3391,-3380,-3365,-3363,-3359,-3345,-3321,-3288,-3264,-3249,-3255,-3243,-3216,-3198,
+-3181,-3178,-3173,-3143,-3137,-3145,-3154,-3158,-3161,-3149,-3121,-3094,-3057,-3024,-3001,-2987,-2990,-2977,-2959,-2946,
+-2936,-2922,-2909,-2891,-2872,-2862,-2852,-2835,-2817,-2802,-2783,-2757,-2743,-2726,-2708,-2698,-2682,-2674,-2665,-2654,
+-2642,-2640,-2631,-2620,-2611,-2595,-2589,-2579,-2562,-2544,-2524,-2513,-2497,-2484,-2469,-2459,-2448,-2434,-2425,-2414,
+-2406,-2399,-2388,-2381,-2372,-2360,-2350,-2339,-2335,-2328,-2325,-2320,-2316,-2313,-2306,-2299,-2290,-2282,-2274,-2272,
+-2262,-2253,-2245,-2232,-2234,-2238,-2231,-2221,-2238,-2264,-2252,-2238,-2222,-2206,-2194,-2180,-2164,-2164,-2152,-2141,
+-2136,-2124,-2105,-2090,-2078,-2060,-2053,-2044,-2029,-2011,-1989,-1978,-1977,-1971,-1964,-1953,-1948,-1947,-1944,-1937,
+-1937,-1934,-1928,-1925,-1923,-1919,-1916,-1912,-1908,-1901,-1898,-1891,-1884,-1891,-1898,-1890,-1889,-1890,-1880,-1869,
+-1866,-1867,-1861,-1860,-1856,-1849,-1841,-1828,-1815,-1801,-1789,-1798,-1803,-1803,-1808,-1817,-1826,-1824,-1801,-1777,
+-1743,-1709,-1689,-1667,-1647,-1629,-1615,-1603,-1581,-1562,-1560,-1553,-1536,-1504,-1469,-1436,-1416,-1395,-1369,-1371,
+-1375,-1375,-1370,-1372,-1373,-1371,-1365,-1356,-1355,-1355,-1355,-1356,-1356,-1352,-1356,-1354,-1353,-1349,-1344,-1345,
+-1354,-1361,-1369,-1368,-1365,-1360,-1366,-1372,-1371,-1379,-1381,-1380,-1381,-1386,-1390,-1400,-1406,-1410,-1411,-1416,
+-1421,-1418,-1415,-1409,-1410,-1416,-1415,-1414,-1411,-1410,-1408,-1406,-1403,-1403,-1403,-1400,-1400,-1396,-1390,-1389,
+-1385,-1380,-1381,-1375,-1369,-1356,-1347,-1339,-1325,-1312,-1295,-1280,-1265,-1246,-1231,-1217,-1205,-1191,-1185,-1181,
+-1180,-1177,-1179,-1177,-1169,-1150,-1121,-1110,-1119,-1130,-1127,-1116,-1104,-1092,-1076,-1057,-1040,-1030,-1018,-1009,
+-1013,-1051,-1076,-1081,-1095,-1105,-1120,-1107,-1086,-1067,-1041,-1012,-985,-963,-948,-928,-912,-887,-859,-835,
+-839,-855,-830,-768,-742,-742,-738,-703,-679,-662,-655,-628,-607,-599,-594,-581,-563,-547,-531,-502,
+-456,-425,-407,-378,-354,-337,-311,-284,-272,-277,-256,-233,-218,-197,-177,-166,-150,-112,-84,-32,
+10,23,21,58,114,140,169,208,208,233,262,294,323,349,373,381,394,405,423,445,
+464,475,480,481,475,467,453,442,425,407,387,372,358,355,375,427,478,518,563,620,
+723,881,1047,1150,1223,1272,1302,1335,1357,1382,1406,1431,1457,1496,1516,1530,1539,1548,1541,1482,
+1390,1300,1273,1276,1265,1269,1280,1298,1316,1337,1355,1372,1401,1433,1463,1495,1527,1553,1574,1598,
+1624,1652,1692,1721,1744,1761,1777,1791,1813,1828,1838,1821,1795,1787,1790,1781,1769,1765,1767,1760,
+1757,1753,1754,1758,1766,1772,1778,1767,1748,1728,1707,1691,1682,1678,1679,1679,1687,1681,1676,1682,
+1689,1701,1710,1717,1726,1716,1727,1733,1738,1740,1730,1704,1663,1664,1707,1738,1745,1724,1710,1695,
+1682,1683,1693,1685,1675,1676,1681,1692,1702,1694,1692,1700,1691,1693,1700,1711,1712,1713,1720,1728,
+1738,1750,1761,1772,1782,1794,1803,1806,1804,1806,1794,1797,1813,1837,1880,1914,1904,1900,1900,1919,
+1970,2016,2034,2058,2080,2079,2067,2057,2013,2024,2042,2050,2048,2064,2076,2077,2082,2079,2065,2048,
+2027,2000,1986,1950,1927,1905,1890,1867,1856,1861,1855,1843,1814,1786,1683,1526,1304,913,557,331,
+242,246,346,538,786,1026,1251,1460,1606,1714,1794,1858,1906,1934,1970,1994,2015,2018,2002,1987,
+1981,2024,2066,2068,2045,2028,2033,2043,2051,2051,2068,2075,2046,2010,2015,2050,2071,2096,2114,2117,
+2121,2149,2156,2151,2158,2175,2192,2208,2220,2231,2231,2227,2227,2225,2219,2224,2234,2249,2261,2278,
+2284,2297,2307,2319,2333,2341,2354,2371,2398,2415,2434,2432,2438,2462,2492,2516,2536,2550,2567,2572,
+2549,2527,2535,2527,2517,2507,2510,2517,2516,2507,2485,2462,2446,2444,2443,2474,2476,2478,2488,2499,
+2508,2512,2506,2495,2470,2458,2458,2428,2414,2412,2408,2396,2401,2394,2409,2419,2433,2444,2437,2425,
+2431,2433,2419,2417,2413,2388,2362,2347,2295,2267,2240,2225,2215,2210,2177,2160,2157,2171,2203,2231,
+2224,2215,2210,2217,2222,2244,2257,2245,2247,2248,2260,2275,2262,2271,2278,2294,2309,2333,2359,2380,
+2404,2429,2452,2472,2489,2513,2547,2571,2602,2634,2658,2681,2717,2736,2747,2764,2791,2805,2826,2855,
+2886,2947,2961,2967,2940,2946,2952,2956,2990,3027,3068,3081,3072,3058,3058,3079,3116,3162,3149,3155,
+3139,3101,3073,3079,3104,3114,3088,3102,3125,3162,3171,3148,3146,3164,3147,3138,3158,3205,3204,3231,
+3263,3279,3290,3301,3314,3348,3379,3404,3431,3449,3470,3493,3519,3545,3570,3588,3608,3612,3619,3638,
+3667,3687,3701,3718,3736,3753,3771,3789,3808,3830,3849,3868,3887,3903,3917,3923,3944,3965,3995,4030,
+4050,4073,4080,4093,4116,4136,4146,4150,4153,4160,4165,4172,4170,4171,4167,4159,4159,4153,4146,4153,
+4157,4161,4160,4163,4167,4167,4170,4174,4174,4172,4172,4169,4170,4168,4160,4151,4140,4126,4109,4095,
+4076,4058,4038,4018,4000,3981,3964,3947,3937,3927,3914,3904,3893,3883,3868,3863,3865,3870,3869,3864,
+3856,3844,3829,3800,3776,3780,3786,3778,3752,3742,3738,3739,3739,3733,3733,3717,3701,3688,3675,3657,
+3644,3627,3612,3598,3584,3577,3571,3568,3560,3543,3531,3521,3520,3513,3510,3502,3493,3484,3480,3479,
+3483,3499,3519,3537,3557,3576,3588,3595,3581,3552,3525,3500,3473,3447,3425,3401,3391,3380,3370,3362,
+3359,3353,3347,3343,3349,3353,3356,3355,3349,3338,3327,3320,3323,3331,3333,3322,3301,3277,3260,3253,
+3243,3228,3206,3180,3156,3133,3107,3075,3051,3037,3032,3025,3006,2980,2944,2904,2895,2892,2848,2790,
+2732,2672,2610,2559,2510,2460,2408,2359,2308,2262,2201,2142,2116,2058,2012,1986,1976,1970,1966,1961,
+1930,1872,1823,1803,1792,1774,1777,1780,1751,1718,1692,1660,1631,1606,1580,1558,1535,1513,1486,1457,
+1431,1406,1383,1360,1340,1319,1289,1255,1219,1184,1152,1120,1094,1067,1039,1009,977,948,916,871,
+834,801,763,729,699,667,638,611,580,548,523,497,463,433,394,358,321,291,252,212,
+173,137,101,63,27,-3,-20,-41,-66,-92,-121,-152,-169,-191,-240,-275,-310,-349,-388,-420,
+-452,-480,-507,-532,-560,-595,-631,-664,-698,-728,-757,-790,-828,-868,-894,-924,-948,-960,-983,-1010,
+-1036,-1069,-1104,-1140,-1178,-1211,-1245,-1278,-1309,-1343,-1374,-1403,-1433,-1468,-1502,-1532,-1559,-1587,-1628,-1657,
+-1672,-1698,-1727,-1757,-1786,-1809,-1832,-1855,-1874,-1889,-1908,-1924,-1945,-1971,-1992,-2015,-2034,-2052,-2072,-2085,
+-2100,-2118,-2137,-2153,-2170,-2189,-2211,-2226,-2233,-2252,-2273,-2288,-2305,-2322,-2336,-2354,-2371,-2386,-2399,-2413,
+-2427,-2439,-2451,-2467,-2484,-2493,-2502,-2506,-2530,-2545,-2543,-2545,-2549,-2566,-2573,-2572,-2569,-2573,-2573,-2578,
+-2583,-2584,-2585,-2589,-2590,-2587,-2583,-2582,-2582,-2582,-2582,-2582,-2580,-2576,-2573,-2569,-2565,-2561,-2558,-2561,
+-2559,-2557,-2562,-2560,-2543,-2548,-2562,-2554,-2562,-2558,-2556,-2558,-2557,-2557,-2552,-2548,-2539,-2527,-2516,-2500,
+-2490,-2488,-2493,-2501,-2515,-2487,-2426,-2412,-2422,-2379,-2340,-2323,-2309,-2296,-2284,-2273,-2263,-2252,-2244,-2242,
+-2246,-2241,-2231,-2202,-2177,-2179,-2164,-2165,-2165,-2170,-2179,-2173,-2131,-2134,-2173,-2194,-2212,-2229,-2266,-2293,
+-2314,-2294,-2284,-2277,-2271,-2268,-2264,-2262,-2274,-2288,-2312,-2353,-2336,-2333,-2350,-2363,-2367,-2367,-2365,-2362,
+-2365,-2369,-2383,-2405,-2427,-2442,-2442,-2442,-2446,-2451,-2457,-2466,-2475,-2489,-2521,-2577,-2645,-2617,-2580,-2625,
+-2615,-2651,-2660,-2673,-2666,-2691,-2727,-2755,-2786,-2803,-2809,-2823,-2861,-2899,-2928,-2974,-2988,-3017,-3058,-3105,
+-3147,-3178,-3195,-3199,-3179,-3131,-3133,-3130,-3119,-3120,-3128,-3141,-3168,-3200,-3231,-3258,-3291,-3320,-3345,-3360,
+-3356,-3353,-3422,-3468,-3491,-3511,-3530,-3548,-3578,-3598,-3611,-3618,-3629,-3640,-3647,-3655,-3660,-3667,-3673,-3678,
+-3683,-3688,-3691,-3691,-3681,-3673,-3665,-3661,-3659,-3651,-3644,-3646,-3648,-3656,-3667,-3675,-3678,-3683,-3690,-3694,
+-3698,-3700,-3701,-3703,-3705,-3711,-3720,-3727,-3735,-3742,-3743,-3745,-3747,-3750,-3749,-3742,-3732,-3726,-3722,-3715,
+-3709,-3707,-3707,-3706,-3704,-3698,-3692,-3685,-3676,-3668,-3660,-3647,-3625,-3608,-3595,-3582,-3570,-3556,-3543,-3531,
+-3523,-3509,-3494,-3485,-3477,-3472,-3457,-3450,-3450,-3441,-3427,-3418,-3408,-3393,-3364,-3333,-3303,-3283,-3267,-3275,
+-3286,-3261,-3236,-3227,-3223,-3187,-3187,-3176,-3172,-3168,-3167,-3165,-3147,-3114,-3087,-3052,-3026,-3017,-3009,-2993,
+-2984,-2971,-2957,-2948,-2936,-2927,-2915,-2903,-2893,-2875,-2853,-2831,-2818,-2799,-2778,-2749,-2730,-2709,-2699,-2686,
+-2682,-2677,-2661,-2652,-2649,-2640,-2633,-2631,-2621,-2616,-2607,-2596,-2575,-2551,-2543,-2535,-2520,-2494,-2487,-2471,
+-2454,-2446,-2435,-2427,-2422,-2406,-2395,-2384,-2373,-2366,-2361,-2355,-2352,-2341,-2336,-2332,-2324,-2315,-2305,-2297,
+-2292,-2286,-2281,-2268,-2257,-2254,-2254,-2257,-2246,-2261,-2295,-2259,-2233,-2247,-2248,-2233,-2218,-2205,-2188,-2174,
+-2156,-2151,-2147,-2150,-2138,-2123,-2106,-2098,-2078,-2061,-2041,-2026,-2024,-2018,-2009,-2003,-1999,-1998,-1994,-1991,
+-1986,-1979,-1974,-1975,-1975,-1967,-1967,-1962,-1958,-1956,-1947,-1939,-1935,-1933,-1940,-1932,-1931,-1925,-1915,-1909,
+-1905,-1899,-1896,-1892,-1890,-1882,-1872,-1868,-1866,-1860,-1853,-1844,-1829,-1821,-1808,-1809,-1811,-1816,-1822,-1831,
+-1835,-1824,-1813,-1796,-1785,-1767,-1751,-1723,-1701,-1682,-1659,-1642,-1630,-1619,-1607,-1590,-1569,-1524,-1474,-1435,
+-1425,-1430,-1433,-1430,-1429,-1428,-1424,-1418,-1416,-1409,-1408,-1405,-1397,-1397,-1396,-1395,-1391,-1394,-1397,-1399,
+-1400,-1400,-1406,-1406,-1409,-1420,-1411,-1410,-1413,-1418,-1419,-1425,-1425,-1425,-1424,-1424,-1429,-1425,-1424,-1420,
+-1416,-1423,-1424,-1429,-1424,-1435,-1440,-1446,-1446,-1438,-1439,-1435,-1432,-1423,-1418,-1413,-1417,-1416,-1420,-1425,
+-1423,-1421,-1419,-1412,-1402,-1393,-1391,-1378,-1366,-1354,-1337,-1322,-1301,-1282,-1263,-1248,-1237,-1225,-1218,-1212,
+-1209,-1208,-1210,-1198,-1192,-1193,-1187,-1175,-1164,-1159,-1154,-1152,-1143,-1130,-1115,-1099,-1083,-1064,-1045,-1042,
+-1051,-1067,-1082,-1093,-1097,-1103,-1111,-1115,-1107,-1087,-1065,-1039,-1012,-986,-965,-949,-934,-921,-906,-893,
+-885,-899,-890,-824,-777,-766,-756,-750,-733,-711,-697,-690,-682,-664,-643,-633,-618,-592,-571,-533,
+-500,-477,-451,-440,-405,-374,-362,-328,-291,-297,-287,-265,-245,-232,-212,-198,-196,-171,-149,-115,
+-64,-30,-19,-6,41,79,108,135,171,172,204,237,260,288,312,333,345,362,381,406,
+429,452,471,482,481,481,489,495,495,486,474,470,462,445,426,409,408,430,475,531,
+570,615,700,821,1000,1150,1253,1316,1352,1364,1372,1390,1419,1455,1486,1517,1541,1540,1542,1533,
+1466,1381,1341,1327,1314,1305,1321,1329,1339,1363,1390,1417,1450,1481,1510,1534,1560,1584,1612,1634,
+1657,1677,1691,1708,1733,1760,1784,1798,1805,1805,1816,1836,1866,1877,1881,1873,1846,1810,1776,1761,
+1758,1755,1772,1787,1813,1836,1842,1825,1790,1757,1738,1713,1712,1719,1725,1730,1742,1751,1744,1743,
+1738,1734,1743,1756,1771,1789,1798,1805,1807,1801,1787,1760,1750,1771,1787,1793,1787,1774,1771,1753,
+1740,1734,1718,1718,1724,1734,1738,1731,1734,1738,1741,1737,1734,1724,1735,1738,1739,1750,1761,1768,
+1770,1779,1790,1802,1818,1833,1843,1849,1848,1845,1843,1847,1856,1862,1873,1882,1894,1917,1980,1967,
+1928,1929,1945,1982,2029,2023,2016,2028,2041,2079,2091,2088,2092,2106,2119,2130,2135,2135,2139,2134,
+2128,2132,2133,2118,2105,2105,2076,2048,2032,2022,2008,2016,2031,2015,2018,1973,1844,1665,1452,1156,
+765,462,308,282,352,531,789,1035,1257,1458,1618,1735,1817,1869,1910,1945,1972,1992,1997,1996,
+1995,2020,2059,2092,2101,2084,2064,2046,2016,1997,2011,2039,2051,2054,2043,2015,2015,2038,2062,2076,
+2091,2103,2115,2115,2127,2129,2140,2152,2160,2165,2169,2173,2177,2182,2187,2181,2191,2214,2220,2221,
+2229,2242,2264,2282,2289,2315,2332,2329,2342,2345,2357,2393,2426,2454,2454,2451,2461,2476,2491,2497,
+2507,2505,2513,2522,2531,2507,2482,2548,2608,2605,2578,2556,2518,2501,2500,2499,2494,2499,2507,2509,
+2499,2495,2490,2476,2463,2458,2431,2423,2407,2392,2372,2352,2335,2342,2347,2355,2363,2382,2395,2392,
+2386,2396,2397,2395,2368,2318,2276,2281,2233,2194,2179,2191,2200,2195,2171,2177,2150,2151,2187,2193,
+2176,2163,2156,2162,2185,2188,2204,2212,2187,2184,2196,2194,2202,2196,2208,2228,2227,2239,2271,2311,
+2330,2350,2378,2404,2433,2456,2473,2501,2536,2565,2587,2614,2638,2670,2700,2715,2715,2736,2779,2792,
+2833,2873,2892,2887,2875,2885,2901,2903,2930,2984,3003,2983,2987,2993,2983,3005,3044,3104,3104,3076,
+3069,3079,3047,3021,3026,3026,3037,3075,3060,3070,3114,3130,3094,3092,3125,3120,3105,3116,3143,3168,
+3205,3229,3240,3250,3265,3291,3328,3360,3392,3409,3431,3449,3469,3487,3512,3536,3556,3557,3553,3567,
+3591,3615,3636,3654,3672,3694,3714,3730,3747,3768,3786,3805,3824,3843,3859,3856,3875,3902,3918,3938,
+3967,3987,4007,4012,4025,4043,4062,4069,4077,4080,4088,4097,4103,4106,4110,4111,4103,4092,4087,4087,
+4084,4086,4092,4099,4104,4111,4115,4117,4118,4118,4118,4116,4111,4106,4102,4093,4085,4070,4057,4045,
+4029,4012,3995,3978,3962,3946,3932,3917,3900,3886,3874,3867,3856,3844,3829,3814,3805,3808,3814,3818,
+3814,3806,3781,3757,3747,3735,3736,3743,3744,3732,3721,3710,3712,3713,3711,3710,3692,3668,3655,3647,
+3633,3619,3605,3594,3583,3570,3562,3555,3551,3543,3526,3509,3499,3490,3487,3482,3481,3474,3470,3463,
+3465,3480,3501,3517,3540,3565,3585,3599,3604,3612,3611,3605,3582,3558,3552,3547,3539,3525,3514,3507,
+3489,3463,3427,3392,3357,3334,3329,3326,3323,3324,3329,3339,3356,3373,3376,3365,3346,3319,3284,3260,
+3237,3224,3213,3191,3165,3139,3118,3096,3075,3053,3038,3026,3016,2998,2960,2906,2875,2884,2887,2866,
+2819,2768,2714,2654,2594,2529,2459,2408,2368,2299,2222,2171,2133,2109,2099,2050,1993,1962,1951,1942,
+1932,1920,1890,1841,1791,1759,1745,1725,1718,1716,1700,1678,1652,1625,1597,1568,1543,1519,1496,1473,
+1451,1426,1404,1384,1362,1340,1314,1290,1259,1221,1182,1148,1118,1093,1064,1034,1006,975,937,903,
+866,829,793,758,724,691,658,620,595,566,539,508,481,453,423,390,353,312,273,235,
+189,155,123,94,54,24,-6,-33,-70,-93,-113,-140,-158,-181,-215,-249,-281,-318,-360,-398,
+-432,-461,-492,-521,-548,-579,-614,-651,-683,-708,-730,-762,-797,-838,-872,-894,-923,-942,-961,-981,
+-1018,-1049,-1085,-1116,-1153,-1186,-1221,-1252,-1283,-1314,-1345,-1380,-1408,-1439,-1474,-1509,-1539,-1565,-1595,-1633,
+-1652,-1669,-1698,-1725,-1757,-1785,-1810,-1837,-1862,-1879,-1897,-1912,-1927,-1950,-1975,-1998,-2021,-2040,-2059,-2077,
+-2083,-2108,-2126,-2144,-2161,-2179,-2199,-2211,-2224,-2247,-2267,-2284,-2301,-2319,-2336,-2353,-2367,-2385,-2397,-2411,
+-2426,-2441,-2455,-2468,-2485,-2498,-2502,-2525,-2543,-2549,-2558,-2564,-2570,-2571,-2578,-2585,-2593,-2599,-2601,-2601,
+-2601,-2602,-2607,-2608,-2607,-2608,-2610,-2611,-2609,-2612,-2611,-2610,-2607,-2606,-2606,-2605,-2604,-2603,-2603,-2600,
+-2595,-2593,-2595,-2595,-2593,-2594,-2592,-2594,-2600,-2599,-2597,-2595,-2595,-2598,-2587,-2593,-2586,-2575,-2566,-2555,
+-2544,-2532,-2530,-2538,-2551,-2562,-2541,-2489,-2458,-2466,-2439,-2392,-2374,-2357,-2343,-2332,-2322,-2313,-2301,-2292,
+-2288,-2288,-2290,-2289,-2253,-2240,-2230,-2214,-2213,-2214,-2220,-2225,-2226,-2187,-2180,-2196,-2216,-2238,-2257,-2290,
+-2319,-2338,-2334,-2317,-2304,-2300,-2296,-2291,-2287,-2296,-2303,-2325,-2364,-2362,-2361,-2384,-2393,-2396,-2398,-2398,
+-2401,-2402,-2406,-2413,-2424,-2436,-2443,-2449,-2458,-2473,-2496,-2512,-2530,-2553,-2583,-2658,-2769,-2846,-2747,-2656,
+-2519,-2564,-2659,-2688,-2697,-2712,-2735,-2753,-2772,-2795,-2818,-2837,-2865,-2889,-2929,-2988,-3053,-3062,-3067,-3106,
+-3156,-3190,-3225,-3242,-3254,-3247,-3249,-3262,-3260,-3252,-3247,-3254,-3273,-3301,-3329,-3359,-3388,-3416,-3439,-3466,
+-3485,-3503,-3522,-3542,-3560,-3575,-3592,-3607,-3631,-3654,-3678,-3694,-3697,-3704,-3714,-3723,-3729,-3735,-3742,-3748,
+-3753,-3759,-3764,-3767,-3765,-3758,-3749,-3745,-3743,-3744,-3737,-3728,-3726,-3727,-3730,-3738,-3750,-3755,-3758,-3763,
+-3766,-3771,-3775,-3779,-3783,-3784,-3785,-3796,-3804,-3804,-3807,-3808,-3809,-3811,-3812,-3797,-3791,-3794,-3791,-3782,
+-3775,-3773,-3772,-3761,-3763,-3767,-3760,-3751,-3751,-3745,-3734,-3729,-3716,-3693,-3690,-3678,-3659,-3637,-3622,-3612,
+-3598,-3583,-3572,-3555,-3544,-3533,-3525,-3520,-3515,-3509,-3502,-3487,-3469,-3469,-3464,-3445,-3424,-3411,-3390,-3358,
+-3317,-3305,-3314,-3332,-3323,-3285,-3249,-3233,-3228,-3224,-3214,-3202,-3188,-3162,-3149,-3140,-3102,-3062,-3042,-3034,
+-3023,-3018,-3009,-3002,-2994,-2990,-2980,-2966,-2949,-2938,-2923,-2914,-2897,-2871,-2850,-2831,-2821,-2805,-2788,-2756,
+-2720,-2717,-2704,-2698,-2689,-2675,-2667,-2665,-2657,-2650,-2641,-2636,-2626,-2613,-2607,-2596,-2587,-2581,-2565,-2549,
+-2534,-2521,-2504,-2487,-2481,-2463,-2447,-2434,-2423,-2413,-2402,-2393,-2385,-2379,-2372,-2370,-2363,-2352,-2345,-2339,
+-2333,-2327,-2320,-2310,-2302,-2297,-2296,-2296,-2296,-2304,-2315,-2319,-2320,-2348,-2385,-2312,-2221,-2225,-2244,-2234,
+-2206,-2175,-2160,-2164,-2162,-2160,-2154,-2135,-2131,-2125,-2108,-2085,-2078,-2073,-2057,-2055,-2050,-2048,-2044,-2038,
+-2032,-2026,-2026,-2019,-2023,-2019,-2015,-2013,-2010,-2006,-1998,-1993,-1984,-1984,-1980,-1978,-1965,-1964,-1966,-1963,
+-1951,-1948,-1939,-1934,-1930,-1927,-1920,-1914,-1905,-1897,-1886,-1879,-1872,-1865,-1856,-1853,-1854,-1849,-1853,-1847,
+-1843,-1833,-1829,-1829,-1827,-1818,-1812,-1810,-1808,-1806,-1811,-1805,-1796,-1772,-1755,-1735,-1718,-1705,-1689,-1666,
+-1638,-1613,-1590,-1581,-1558,-1529,-1505,-1489,-1484,-1477,-1473,-1470,-1465,-1464,-1459,-1449,-1445,-1442,-1442,-1447,
+-1450,-1453,-1461,-1465,-1465,-1464,-1463,-1463,-1465,-1463,-1464,-1465,-1472,-1477,-1476,-1479,-1481,-1479,-1478,-1473,
+-1461,-1452,-1451,-1445,-1444,-1444,-1447,-1453,-1456,-1461,-1460,-1458,-1461,-1461,-1460,-1447,-1447,-1453,-1454,-1455,
+-1454,-1455,-1453,-1452,-1450,-1444,-1441,-1424,-1411,-1396,-1381,-1364,-1348,-1329,-1310,-1293,-1276,-1258,-1252,-1240,
+-1230,-1226,-1223,-1222,-1221,-1215,-1201,-1198,-1190,-1185,-1171,-1163,-1159,-1145,-1135,-1123,-1114,-1111,-1089,-1072,
+-1069,-1071,-1076,-1094,-1098,-1113,-1110,-1096,-1111,-1111,-1097,-1075,-1049,-1021,-995,-972,-952,-939,-925,-914,
+-903,-896,-901,-898,-865,-835,-819,-807,-788,-771,-754,-740,-730,-718,-702,-682,-671,-658,-636,-614,
+-578,-542,-506,-472,-441,-414,-395,-380,-335,-302,-323,-307,-284,-262,-245,-223,-202,-192,-179,-169,
+-129,-88,-57,-34,-20,17,50,84,114,136,145,174,205,231,260,291,314,314,334,367,
+389,418,436,452,466,479,488,500,506,517,521,526,527,531,534,526,514,505,495,488,
+485,500,560,654,733,813,975,1163,1284,1351,1384,1395,1408,1419,1436,1453,1477,1500,1510,1491,
+1445,1420,1381,1356,1358,1356,1363,1402,1385,1391,1409,1429,1463,1501,1529,1551,1573,1595,1616,1643,
+1666,1695,1718,1737,1755,1763,1778,1797,1817,1809,1818,1839,1860,1875,1900,1937,1970,1955,1901,1823,
+1763,1754,1756,1750,1763,1795,1841,1887,1916,1903,1879,1821,1735,1713,1745,1765,1768,1774,1782,1784,
+1777,1765,1757,1766,1782,1797,1821,1839,1850,1845,1842,1826,1783,1815,1876,1863,1836,1818,1795,1778,
+1780,1771,1771,1775,1768,1771,1783,1791,1795,1785,1780,1791,1796,1787,1785,1781,1746,1748,1764,1786,
+1810,1816,1823,1828,1829,1842,1867,1884,1880,1879,1879,1883,1897,1904,1906,1910,1916,1922,1950,1989,
+1984,1958,1962,1964,1980,2004,2017,2032,2061,2077,2089,2095,2112,2122,2143,2164,2172,2180,2185,2196,
+2203,2205,2198,2213,2197,2189,2187,2167,2149,2139,2127,2108,2086,2069,2070,2119,2152,2023,1832,1629,
+1400,1133,817,555,420,369,401,562,813,1079,1313,1493,1630,1733,1812,1864,1912,1957,1994,2007,
+2002,2004,2019,2050,2079,2096,2078,2054,2026,1993,1983,2000,2014,2010,2008,2015,2024,2036,2048,2061,
+2076,2093,2108,2116,2119,2122,2123,2136,2140,2135,2139,2149,2149,2155,2159,2159,2171,2186,2186,2196,
+2213,2235,2255,2266,2278,2285,2284,2308,2325,2348,2365,2378,2376,2389,2400,2413,2423,2429,2442,2454,
+2480,2514,2547,2586,2596,2590,2542,2480,2489,2525,2548,2561,2553,2533,2511,2478,2460,2453,2451,2452,
+2446,2431,2424,2438,2435,2436,2431,2352,2343,2350,2334,2321,2307,2292,2297,2290,2298,2308,2319,2319,
+2324,2334,2322,2304,2272,2238,2180,2150,2154,2149,2151,2140,2141,2142,2139,2157,2152,2125,2113,2130,
+2124,2100,2100,2100,2097,2108,2119,2126,2135,2128,2130,2137,2131,2150,2168,2156,2163,2192,2231,2228,
+2243,2280,2303,2318,2354,2384,2415,2456,2477,2500,2527,2549,2571,2597,2630,2649,2663,2693,2718,2733,
+2767,2808,2823,2812,2794,2813,2836,2852,2889,2938,2939,2918,2908,2919,2938,2969,2986,3029,3035,3026,
+3011,2989,2989,2992,2990,2986,2991,3029,3051,3021,3014,3050,3098,3063,3056,3087,3089,3071,3083,3108,
+3150,3175,3193,3203,3217,3239,3275,3301,3339,3364,3385,3404,3424,3445,3465,3483,3499,3509,3505,3508,
+3528,3547,3565,3585,3606,3623,3645,3665,3684,3706,3726,3744,3762,3782,3802,3807,3808,3850,3872,3880,
+3912,3932,3942,3950,3962,3974,3987,3994,4006,4012,4016,4025,4035,4046,4050,4050,4050,4051,4047,4042,
+4038,4034,4033,4034,4042,4048,4052,4054,4054,4059,4059,4058,4059,4053,4047,4044,4038,4030,4018,4004,
+3988,3969,3950,3934,3922,3909,3903,3890,3865,3847,3837,3833,3825,3812,3802,3791,3778,3771,3761,3756,
+3754,3745,3724,3701,3699,3708,3704,3706,3713,3716,3711,3698,3684,3680,3675,3672,3654,3630,3625,3623,
+3619,3613,3604,3592,3581,3570,3557,3549,3539,3531,3522,3508,3490,3482,3472,3471,3472,3469,3466,3459,
+3457,3459,3470,3487,3509,3529,3553,3575,3594,3615,3634,3647,3651,3643,3621,3606,3605,3601,3590,3575,
+3566,3549,3527,3500,3451,3399,3367,3354,3352,3354,3362,3375,3390,3398,3401,3396,3376,3360,3332,3295,
+3258,3236,3219,3196,3173,3150,3124,3103,3089,3079,3073,3060,3048,3028,2995,2950,2892,2852,2864,2870,
+2862,2841,2804,2754,2705,2658,2611,2542,2470,2395,2327,2241,2173,2122,2075,2032,2001,1992,1972,1948,
+1933,1913,1894,1882,1867,1831,1772,1712,1676,1667,1666,1667,1669,1648,1622,1593,1561,1531,1504,1477,
+1453,1430,1413,1395,1378,1358,1334,1312,1283,1255,1219,1181,1145,1113,1084,1040,1012,987,949,917,
+888,857,821,788,752,714,679,646,615,582,552,530,499,471,438,406,373,333,298,253,
+213,179,160,134,78,41,17,15,-32,-78,-102,-129,-146,-159,-189,-223,-257,-295,-333,-372,
+-406,-440,-471,-501,-532,-563,-600,-634,-667,-692,-715,-740,-771,-804,-840,-873,-893,-926,-946,-970,
+-999,-1028,-1057,-1094,-1131,-1164,-1199,-1232,-1265,-1296,-1323,-1353,-1385,-1417,-1451,-1482,-1512,-1541,-1575,-1609,
+-1633,-1650,-1671,-1699,-1728,-1756,-1785,-1809,-1834,-1857,-1880,-1902,-1918,-1937,-1958,-1982,-2005,-2024,-2044,-2063,
+-2080,-2101,-2121,-2138,-2155,-2169,-2188,-2208,-2225,-2241,-2261,-2279,-2296,-2311,-2330,-2347,-2362,-2376,-2390,-2404,
+-2420,-2438,-2454,-2464,-2479,-2499,-2509,-2517,-2526,-2547,-2561,-2571,-2581,-2590,-2593,-2601,-2608,-2612,-2617,-2620,
+-2623,-2628,-2632,-2638,-2639,-2641,-2643,-2645,-2645,-2646,-2649,-2651,-2649,-2648,-2648,-2645,-2641,-2638,-2638,-2636,
+-2633,-2629,-2630,-2630,-2633,-2631,-2625,-2628,-2631,-2627,-2627,-2631,-2630,-2630,-2631,-2633,-2623,-2619,-2616,-2604,
+-2593,-2584,-2575,-2572,-2578,-2588,-2600,-2590,-2544,-2505,-2509,-2497,-2447,-2421,-2405,-2394,-2380,-2370,-2365,-2353,
+-2345,-2341,-2335,-2337,-2338,-2311,-2287,-2282,-2269,-2257,-2260,-2258,-2265,-2277,-2270,-2233,-2233,-2231,-2263,-2284,
+-2304,-2329,-2350,-2363,-2341,-2328,-2323,-2320,-2318,-2313,-2314,-2322,-2340,-2369,-2404,-2411,-2422,-2429,-2429,-2429,
+-2427,-2431,-2438,-2445,-2446,-2453,-2458,-2464,-2472,-2486,-2502,-2524,-2552,-2583,-2642,-2725,-2858,-3005,-3010,-2859,
+-2696,-2521,-2565,-2668,-2731,-2750,-2765,-2782,-2798,-2814,-2833,-2847,-2869,-2903,-2937,-2976,-3030,-3108,-3133,-3117,
+-3153,-3202,-3229,-3266,-3290,-3304,-3309,-3324,-3344,-3352,-3358,-3365,-3380,-3401,-3426,-3451,-3479,-3507,-3531,-3553,
+-3572,-3586,-3600,-3613,-3623,-3633,-3649,-3664,-3684,-3707,-3727,-3753,-3766,-3772,-3776,-3785,-3791,-3799,-3805,-3809,
+-3819,-3825,-3830,-3835,-3839,-3839,-3834,-3826,-3822,-3815,-3814,-3812,-3808,-3808,-3813,-3814,-3815,-3824,-3835,-3835,
+-3837,-3844,-3851,-3854,-3852,-3858,-3868,-3861,-3867,-3875,-3879,-3879,-3876,-3870,-3866,-3868,-3860,-3847,-3846,-3849,
+-3845,-3840,-3835,-3837,-3838,-3822,-3819,-3826,-3814,-3800,-3799,-3795,-3798,-3796,-3767,-3757,-3751,-3736,-3719,-3703,
+-3687,-3667,-3650,-3641,-3630,-3611,-3595,-3588,-3575,-3567,-3567,-3562,-3550,-3532,-3535,-3525,-3504,-3482,-3459,-3439,
+-3422,-3425,-3416,-3382,-3338,-3347,-3369,-3356,-3322,-3282,-3263,-3253,-3252,-3237,-3215,-3200,-3186,-3163,-3149,-3129,
+-3101,-3085,-3070,-3061,-3058,-3041,-3034,-3015,-3005,-3001,-2986,-2970,-2958,-2935,-2918,-2899,-2880,-2867,-2848,-2846,
+-2820,-2786,-2765,-2751,-2742,-2730,-2713,-2707,-2701,-2692,-2678,-2667,-2666,-2654,-2645,-2641,-2633,-2628,-2616,-2612,
+-2594,-2573,-2562,-2555,-2545,-2535,-2518,-2499,-2483,-2468,-2454,-2441,-2431,-2420,-2410,-2403,-2399,-2395,-2391,-2385,
+-2378,-2373,-2367,-2359,-2346,-2346,-2346,-2348,-2348,-2344,-2341,-2343,-2342,-2347,-2354,-2342,-2328,-2305,-2298,-2299,
+-2315,-2310,-2288,-2268,-2224,-2203,-2195,-2185,-2180,-2170,-2159,-2146,-2140,-2141,-2128,-2109,-2104,-2101,-2101,-2089,
+-2081,-2083,-2085,-2075,-2075,-2075,-2069,-2062,-2058,-2052,-2046,-2041,-2037,-2036,-2040,-2042,-2029,-2017,-2005,-2001,
+-2000,-1996,-1990,-1983,-1972,-1970,-1962,-1958,-1951,-1947,-1939,-1932,-1923,-1915,-1907,-1894,-1887,-1885,-1875,-1867,
+-1864,-1858,-1861,-1855,-1850,-1836,-1825,-1813,-1798,-1783,-1783,-1804,-1802,-1816,-1825,-1836,-1842,-1839,-1839,-1828,
+-1808,-1792,-1772,-1750,-1735,-1720,-1706,-1686,-1664,-1648,-1629,-1602,-1571,-1542,-1525,-1516,-1509,-1503,-1502,-1498,
+-1501,-1503,-1513,-1520,-1522,-1525,-1523,-1525,-1524,-1525,-1521,-1519,-1519,-1522,-1525,-1525,-1531,-1536,-1538,-1536,
+-1532,-1522,-1513,-1503,-1496,-1491,-1483,-1486,-1488,-1489,-1490,-1487,-1485,-1482,-1481,-1478,-1477,-1468,-1462,-1466,
+-1471,-1473,-1475,-1476,-1473,-1470,-1472,-1473,-1463,-1443,-1422,-1403,-1388,-1369,-1350,-1328,-1312,-1300,-1287,-1273,
+-1267,-1254,-1245,-1237,-1229,-1225,-1217,-1211,-1205,-1196,-1190,-1187,-1177,-1165,-1159,-1151,-1139,-1131,-1120,-1102,
+-1088,-1084,-1089,-1102,-1105,-1101,-1118,-1103,-1091,-1117,-1123,-1106,-1083,-1059,-1034,-1008,-982,-961,-942,-926,
+-919,-915,-911,-908,-904,-895,-872,-848,-830,-813,-795,-780,-762,-750,-733,-717,-695,-684,-672,-670,
+-654,-621,-572,-536,-514,-493,-467,-419,-386,-359,-345,-341,-318,-296,-272,-251,-225,-207,-186,-179,
+-173,-141,-112,-83,-42,-22,5,37,59,79,106,127,145,173,200,223,241,267,291,306,
+333,365,388,398,430,446,468,494,507,532,548,557,572,582,585,597,597,606,610,608,
+607,596,582,579,597,654,737,822,932,1062,1203,1312,1367,1387,1412,1443,1475,1494,1486,1458,
+1391,1344,1333,1337,1357,1383,1395,1401,1426,1469,1468,1447,1462,1498,1531,1553,1573,1597,1618,1637,
+1658,1686,1706,1732,1759,1786,1811,1828,1842,1856,1843,1840,1870,1885,1901,1919,1937,1960,1970,1952,
+1916,1961,1966,1924,1859,1807,1798,1807,1839,1886,1905,1903,1845,1836,1913,1943,1923,1882,1838,1780,
+1742,1722,1718,1716,1728,1754,1777,1805,1836,1863,1887,1895,1874,1812,1826,1882,1889,1882,1860,1838,
+1816,1803,1797,1796,1808,1802,1813,1827,1832,1832,1827,1806,1778,1773,1777,1777,1762,1748,1754,1773,
+1792,1809,1825,1835,1841,1846,1864,1891,1909,1910,1905,1918,1928,1933,1934,1939,1943,1945,1959,1973,
+1984,1994,1990,2017,2015,2020,2037,2045,2057,2074,2091,2102,2118,2144,2152,2167,2184,2195,2213,2223,
+2234,2243,2249,2250,2242,2248,2252,2241,2226,2218,2208,2197,2185,2170,2156,2165,2180,2139,2052,1935,
+1781,1584,1371,1167,940,703,541,451,478,641,881,1132,1376,1553,1648,1714,1781,1842,1894,1933,
+1952,1951,1967,2000,2015,2018,2017,2022,2027,2034,2012,1992,1992,1991,1972,1974,1988,2009,2033,2055,
+2066,2085,2106,2118,2120,2114,2110,2107,2106,2113,2125,2131,2132,2132,2138,2150,2163,2171,2173,2183,
+2200,2201,2215,2232,2247,2255,2261,2288,2291,2295,2314,2333,2356,2372,2392,2427,2453,2460,2470,2484,
+2498,2504,2497,2495,2494,2452,2411,2434,2476,2484,2486,2480,2473,2462,2457,2444,2430,2417,2427,2426,
+2420,2417,2412,2396,2379,2364,2354,2352,2324,2302,2275,2264,2254,2247,2240,2241,2252,2252,2279,2285,
+2282,2288,2282,2254,2213,2174,2154,2148,2142,2146,2157,2159,2112,2085,2075,2072,2080,2066,2045,2037,
+2034,2033,2029,2029,2037,2039,2039,2053,2073,2083,2087,2085,2085,2093,2100,2104,2122,2134,2130,2162,
+2207,2220,2225,2223,2244,2280,2317,2361,2398,2428,2464,2486,2512,2550,2572,2582,2583,2596,2618,2651,
+2697,2744,2760,2767,2745,2752,2764,2786,2827,2874,2879,2867,2856,2862,2881,2905,2918,2947,2995,2974,
+2955,2946,2936,2943,2948,2967,2978,2978,2994,3006,2995,2979,2983,3036,3025,3015,3026,3038,3039,3061,
+3101,3133,3149,3159,3172,3188,3210,3236,3274,3304,3328,3351,3374,3396,3418,3433,3448,3453,3451,3452,
+3464,3483,3501,3510,3529,3550,3574,3598,3621,3641,3661,3679,3695,3714,3732,3753,3757,3783,3809,3829,
+3856,3882,3903,3908,3912,3921,3929,3938,3946,3955,3966,3969,3971,3972,3977,3985,3989,3990,3997,3997,
+3994,3993,3996,3996,3994,3996,3999,4000,4003,4005,4002,4000,3998,3997,3994,3984,3978,3976,3971,3959,
+3949,3938,3924,3908,3893,3875,3860,3844,3830,3817,3811,3806,3792,3783,3775,3766,3755,3741,3725,3712,
+3701,3691,3668,3653,3665,3679,3680,3678,3680,3687,3676,3668,3661,3647,3638,3634,3627,3601,3592,3592,
+3594,3593,3590,3588,3579,3569,3557,3545,3534,3521,3510,3501,3489,3473,3466,3464,3463,3460,3458,3454,
+3450,3449,3456,3467,3479,3489,3497,3514,3539,3564,3595,3619,3615,3612,3603,3577,3571,3571,3571,3570,
+3565,3556,3548,3537,3521,3488,3442,3408,3395,3397,3404,3411,3423,3429,3425,3414,3395,3371,3345,3314,
+3280,3244,3216,3194,3163,3141,3135,3129,3102,3088,3076,3085,3080,3058,3022,2973,2923,2887,2858,2863,
+2865,2855,2840,2815,2778,2730,2689,2652,2595,2528,2448,2363,2283,2200,2145,2096,2042,1997,1968,1949,
+1934,1916,1889,1865,1852,1832,1811,1786,1750,1697,1640,1620,1616,1619,1621,1611,1584,1557,1523,1498,
+1469,1441,1419,1400,1380,1358,1341,1316,1291,1264,1236,1204,1165,1128,1091,1063,1033,1003,972,941,
+911,883,853,821,786,750,714,677,642,612,580,547,517,487,454,424,391,357,315,275,
+245,236,231,148,93,55,20,-11,-38,-69,-97,-124,-143,-154,-180,-210,-242,-278,-315,-351,
+-384,-419,-453,-484,-515,-548,-581,-613,-645,-674,-698,-717,-742,-771,-801,-837,-878,-905,-934,-958,
+-984,-1016,-1043,-1070,-1105,-1137,-1174,-1208,-1237,-1269,-1300,-1330,-1359,-1385,-1418,-1452,-1485,-1519,-1548,-1578,
+-1613,-1631,-1650,-1677,-1707,-1734,-1760,-1782,-1808,-1833,-1858,-1879,-1899,-1921,-1939,-1964,-1989,-2009,-2029,-2052,
+-2074,-2091,-2108,-2127,-2146,-2165,-2184,-2204,-2227,-2235,-2250,-2275,-2295,-2310,-2328,-2341,-2357,-2374,-2390,-2406,
+-2420,-2435,-2449,-2464,-2478,-2493,-2510,-2521,-2532,-2542,-2552,-2573,-2588,-2597,-2604,-2611,-2619,-2627,-2632,-2638,
+-2642,-2646,-2652,-2655,-2659,-2663,-2665,-2671,-2676,-2677,-2677,-2680,-2683,-2685,-2684,-2683,-2683,-2682,-2683,-2681,
+-2677,-2673,-2664,-2666,-2666,-2659,-2668,-2663,-2658,-2666,-2667,-2668,-2669,-2667,-2671,-2662,-2671,-2668,-2665,-2659,
+-2645,-2633,-2626,-2620,-2617,-2623,-2629,-2636,-2641,-2610,-2564,-2553,-2549,-2498,-2474,-2458,-2444,-2434,-2424,-2415,
+-2409,-2397,-2391,-2386,-2391,-2390,-2375,-2344,-2328,-2320,-2310,-2308,-2310,-2310,-2318,-2330,-2294,-2274,-2256,-2285,
+-2305,-2316,-2352,-2378,-2393,-2374,-2355,-2350,-2349,-2348,-2348,-2349,-2354,-2371,-2396,-2436,-2451,-2448,-2447,-2454,
+-2442,-2451,-2462,-2470,-2477,-2483,-2493,-2499,-2506,-2515,-2532,-2562,-2589,-2617,-2658,-2731,-2855,-3033,-3167,-3105,
+-2959,-2711,-2543,-2580,-2651,-2732,-2773,-2808,-2828,-2845,-2865,-2877,-2889,-2910,-2930,-2958,-3001,-3051,-3123,-3176,
+-3184,-3199,-3245,-3273,-3318,-3349,-3376,-3394,-3399,-3412,-3435,-3460,-3478,-3496,-3516,-3535,-3552,-3577,-3604,-3619,
+-3628,-3664,-3683,-3694,-3699,-3706,-3715,-3727,-3740,-3759,-3784,-3804,-3822,-3829,-3832,-3845,-3854,-3862,-3867,-3870,
+-3875,-3881,-3889,-3895,-3901,-3904,-3904,-3905,-3903,-3897,-3890,-3888,-3893,-3892,-3890,-3892,-3894,-3896,-3901,-3903,
+-3908,-3914,-3920,-3927,-3932,-3937,-3938,-3946,-3944,-3940,-3945,-3941,-3939,-3941,-3938,-3932,-3931,-3929,-3914,-3907,
+-3904,-3899,-3901,-3893,-3888,-3895,-3890,-3871,-3868,-3882,-3890,-3869,-3856,-3862,-3865,-3837,-3823,-3816,-3807,-3797,
+-3781,-3764,-3748,-3722,-3703,-3692,-3681,-3668,-3649,-3632,-3635,-3634,-3620,-3601,-3592,-3590,-3585,-3562,-3543,-3543,
+-3529,-3509,-3485,-3455,-3447,-3450,-3421,-3381,-3374,-3389,-3376,-3341,-3320,-3300,-3284,-3267,-3247,-3227,-3218,-3207,
+-3197,-3174,-3158,-3145,-3131,-3113,-3097,-3082,-3070,-3061,-3048,-3024,-3012,-2993,-2974,-2959,-2942,-2929,-2916,-2904,
+-2899,-2888,-2874,-2856,-2835,-2809,-2787,-2773,-2757,-2744,-2731,-2715,-2708,-2697,-2687,-2677,-2670,-2666,-2666,-2663,
+-2649,-2636,-2623,-2612,-2597,-2580,-2566,-2561,-2560,-2548,-2530,-2514,-2498,-2483,-2469,-2460,-2450,-2439,-2435,-2430,
+-2423,-2419,-2416,-2409,-2403,-2401,-2400,-2399,-2401,-2402,-2400,-2399,-2401,-2402,-2402,-2403,-2406,-2410,-2411,-2394,
+-2370,-2372,-2374,-2338,-2320,-2317,-2286,-2250,-2243,-2248,-2221,-2201,-2199,-2193,-2188,-2180,-2169,-2155,-2152,-2156,
+-2153,-2142,-2131,-2121,-2124,-2129,-2123,-2116,-2108,-2103,-2102,-2100,-2093,-2085,-2079,-2067,-2056,-2049,-2056,-2050,
+-2032,-2025,-2027,-2022,-2015,-2005,-2000,-1998,-1990,-1983,-1980,-1977,-1973,-1969,-1962,-1953,-1937,-1927,-1923,-1912,
+-1900,-1886,-1880,-1873,-1871,-1860,-1846,-1845,-1830,-1814,-1811,-1811,-1820,-1816,-1810,-1797,-1789,-1790,-1803,-1832,
+-1852,-1858,-1854,-1858,-1849,-1832,-1813,-1790,-1763,-1739,-1726,-1720,-1721,-1713,-1700,-1663,-1609,-1605,-1589,-1573,
+-1570,-1576,-1570,-1575,-1575,-1586,-1590,-1588,-1591,-1590,-1590,-1589,-1586,-1583,-1578,-1580,-1584,-1586,-1591,-1594,
+-1592,-1589,-1586,-1580,-1572,-1561,-1551,-1542,-1545,-1548,-1545,-1542,-1535,-1534,-1531,-1524,-1517,-1511,-1501,-1499,
+-1502,-1503,-1504,-1504,-1504,-1498,-1484,-1476,-1474,-1459,-1445,-1434,-1425,-1408,-1394,-1370,-1344,-1331,-1317,-1306,
+-1302,-1296,-1281,-1271,-1259,-1248,-1239,-1231,-1227,-1221,-1225,-1205,-1199,-1191,-1176,-1171,-1175,-1154,-1148,-1142,
+-1129,-1117,-1105,-1099,-1098,-1117,-1128,-1112,-1111,-1099,-1119,-1113,-1104,-1088,-1061,-1033,-1005,-983,-962,-945,
+-932,-925,-927,-928,-928,-923,-903,-863,-840,-818,-803,-788,-774,-761,-744,-731,-719,-703,-690,-678,
+-666,-648,-620,-598,-574,-556,-538,-501,-463,-426,-397,-381,-361,-334,-303,-265,-253,-246,-227,-205,
+-201,-175,-141,-121,-84,-53,-29,-15,7,24,46,74,93,103,135,167,190,212,240,269,
+289,305,330,355,371,386,418,443,467,494,527,550,569,584,598,615,630,644,654,671,
+689,710,709,714,721,714,704,704,714,729,762,825,937,1063,1210,1334,1412,1467,1458,1432,
+1404,1352,1302,1293,1314,1353,1389,1419,1438,1446,1462,1474,1495,1524,1545,1564,1578,1596,1618,1639,
+1663,1682,1706,1732,1759,1781,1805,1831,1860,1882,1892,1897,1890,1896,1909,1937,1972,2026,2054,2031,
+1970,1948,2000,2032,2003,1954,1908,1899,1864,1842,1823,1806,1777,1772,1830,1896,1940,1947,1918,1893,
+1868,1829,1795,1782,1767,1747,1747,1766,1775,1766,1771,1797,1789,1769,1790,1847,1889,1911,1912,1910,
+1895,1873,1855,1849,1851,1846,1854,1860,1866,1868,1862,1854,1850,1824,1812,1803,1795,1797,1784,1780,
+1797,1810,1825,1839,1850,1859,1859,1873,1900,1919,1932,1941,1943,1942,1944,1948,1964,1983,1979,1990,
+2010,2035,2052,2036,2038,2051,2059,2051,2053,2082,2107,2131,2143,2151,2173,2203,2210,2221,2232,2239,
+2247,2260,2271,2284,2284,2280,2302,2302,2286,2277,2270,2264,2253,2236,2218,2225,2200,2155,2135,2141,
+2101,1965,1775,1592,1420,1261,1059,797,593,507,566,752,973,1181,1374,1555,1702,1766,1797,1862,
+1922,1961,1982,1980,1981,1985,2015,2006,1991,2009,2029,2004,1982,1997,2002,1984,1984,1989,2023,2036,
+2042,2063,2088,2093,2096,2106,2121,2128,2139,2125,2104,2108,2116,2120,2129,2143,2160,2168,2166,2156,
+2178,2177,2184,2196,2203,2219,2231,2245,2253,2284,2307,2314,2331,2365,2381,2395,2401,2407,2409,2411,
+2414,2424,2425,2430,2448,2481,2497,2493,2510,2518,2529,2498,2470,2472,2475,2460,2443,2434,2412,2411,
+2398,2393,2377,2362,2365,2370,2373,2345,2324,2291,2283,2273,2245,2241,2232,2218,2212,2205,2210,2218,
+2238,2251,2254,2250,2209,2154,2156,2173,2169,2149,2114,2099,2082,2057,2032,2013,2002,2018,2010,1981,
+1962,1960,1975,2002,2016,2004,1995,1997,2015,2034,2046,2045,2026,2027,2054,2062,2069,2092,2089,2080,
+2107,2153,2194,2185,2173,2218,2261,2284,2319,2356,2396,2426,2455,2486,2508,2522,2527,2537,2569,2598,
+2634,2678,2699,2712,2702,2701,2718,2735,2766,2814,2818,2805,2798,2805,2815,2836,2867,2903,2940,2939,
+2903,2893,2886,2891,2924,2952,2926,2928,2944,2949,2935,2950,2948,2944,2991,2980,2976,2988,2996,3023,
+3062,3095,3110,3121,3132,3148,3167,3181,3210,3237,3264,3295,3318,3338,3358,3379,3399,3410,3410,3405,
+3411,3428,3441,3458,3477,3497,3515,3538,3558,3578,3598,3614,3631,3649,3669,3692,3706,3725,3760,3790,
+3811,3814,3831,3853,3868,3876,3885,3894,3900,3909,3915,3922,3931,3930,3928,3925,3921,3923,3934,3942,
+3945,3943,3939,3941,3943,3949,3954,3958,3960,3961,3960,3959,3955,3957,3952,3940,3934,3928,3916,3907,
+3905,3900,3886,3876,3870,3855,3836,3822,3807,3795,3784,3774,3761,3752,3746,3736,3725,3712,3696,3680,
+3663,3639,3620,3628,3649,3651,3653,3661,3655,3642,3645,3648,3639,3625,3611,3599,3596,3596,3591,3588,
+3567,3564,3562,3565,3561,3551,3544,3534,3526,3516,3504,3492,3479,3470,3457,3450,3452,3454,3455,3451,
+3450,3450,3455,3467,3468,3465,3469,3471,3482,3504,3519,3527,3527,3519,3517,3515,3512,3505,3502,3496,
+3493,3487,3485,3484,3485,3471,3447,3414,3390,3373,3382,3391,3401,3410,3411,3407,3393,3364,3327,3295,
+3261,3226,3197,3172,3146,3130,3113,3106,3113,3100,3076,3055,3056,3053,3034,2990,2950,2916,2887,2870,
+2890,2876,2851,2828,2806,2773,2738,2703,2663,2613,2559,2503,2433,2355,2267,2186,2136,2073,2013,1970,
+1940,1913,1891,1865,1842,1818,1795,1775,1754,1740,1728,1672,1631,1644,1644,1614,1586,1570,1560,1536,
+1500,1474,1436,1404,1379,1356,1331,1311,1287,1262,1235,1204,1172,1139,1110,1078,1049,1022,996,970,
+940,909,885,857,825,788,750,714,676,640,609,576,545,516,481,443,412,376,332,293,
+273,313,264,160,105,65,32,-3,-35,-60,-81,-104,-129,-138,-162,-193,-227,-265,-300,-335,
+-369,-402,-437,-469,-499,-530,-560,-594,-623,-646,-677,-699,-723,-750,-778,-813,-849,-884,-916,-942,
+-959,-993,-1023,-1054,-1084,-1113,-1153,-1188,-1217,-1245,-1275,-1304,-1334,-1363,-1394,-1429,-1460,-1494,-1525,-1553,
+-1588,-1616,-1629,-1651,-1681,-1709,-1737,-1762,-1786,-1811,-1836,-1861,-1886,-1904,-1919,-1943,-1972,-1995,-2016,-2038,
+-2060,-2080,-2097,-2116,-2137,-2156,-2176,-2196,-2215,-2233,-2244,-2264,-2286,-2305,-2322,-2339,-2353,-2370,-2388,-2403,
+-2420,-2434,-2449,-2465,-2480,-2492,-2507,-2529,-2540,-2551,-2565,-2576,-2592,-2605,-2614,-2624,-2630,-2637,-2644,-2654,
+-2664,-2668,-2673,-2678,-2683,-2685,-2688,-2694,-2700,-2706,-2710,-2710,-2712,-2713,-2717,-2719,-2718,-2717,-2715,-2714,
+-2713,-2713,-2712,-2709,-2714,-2704,-2703,-2706,-2707,-2708,-2699,-2706,-2709,-2705,-2709,-2710,-2710,-2707,-2702,-2701,
+-2696,-2687,-2674,-2667,-2660,-2655,-2656,-2662,-2677,-2681,-2665,-2616,-2595,-2597,-2557,-2527,-2509,-2495,-2486,-2480,
+-2469,-2459,-2448,-2444,-2437,-2435,-2433,-2425,-2398,-2386,-2368,-2366,-2361,-2353,-2363,-2367,-2369,-2340,-2324,-2319,
+-2312,-2327,-2339,-2371,-2408,-2423,-2419,-2395,-2384,-2381,-2381,-2383,-2384,-2388,-2394,-2414,-2445,-2494,-2492,-2476,
+-2472,-2470,-2481,-2495,-2509,-2522,-2530,-2538,-2546,-2551,-2562,-2577,-2600,-2633,-2674,-2733,-2818,-2957,-3139,-3218,
+-3108,-2920,-2710,-2638,-2659,-2712,-2779,-2822,-2850,-2884,-2904,-2922,-2924,-2933,-2953,-2982,-3021,-3062,-3112,-3163,
+-3223,-3254,-3255,-3301,-3322,-3361,-3393,-3430,-3459,-3467,-3465,-3496,-3543,-3574,-3587,-3605,-3621,-3642,-3664,-3685,
+-3703,-3726,-3744,-3759,-3769,-3772,-3786,-3801,-3815,-3829,-3846,-3867,-3883,-3896,-3915,-3915,-3923,-3933,-3946,-3949,
+-3949,-3948,-3953,-3960,-3968,-3973,-3978,-3977,-3980,-3979,-3978,-3975,-3972,-3971,-3972,-3964,-3964,-3970,-3975,-3979,
+-3983,-3988,-3993,-3993,-4007,-4011,-4013,-4009,-4012,-4030,-4029,-4014,-4015,-4008,-3999,-3999,-3996,-3997,-4000,-3981,
+-3962,-3957,-3957,-3960,-3959,-3951,-3943,-3955,-3959,-3937,-3924,-3931,-3945,-3930,-3891,-3899,-3916,-3895,-3875,-3863,
+-3858,-3845,-3828,-3820,-3801,-3781,-3763,-3742,-3733,-3722,-3701,-3692,-3680,-3662,-3646,-3651,-3648,-3644,-3630,-3608,
+-3590,-3586,-3580,-3554,-3531,-3503,-3483,-3483,-3461,-3433,-3420,-3416,-3404,-3383,-3364,-3342,-3319,-3307,-3287,-3273,
+-3256,-3245,-3216,-3197,-3183,-3178,-3176,-3161,-3145,-3126,-3104,-3080,-3064,-3039,-3028,-3010,-2992,-2984,-2972,-2960,
+-2948,-2933,-2923,-2913,-2903,-2891,-2873,-2850,-2833,-2813,-2793,-2776,-2765,-2749,-2735,-2722,-2712,-2704,-2693,-2688,
+-2689,-2675,-2666,-2660,-2649,-2625,-2623,-2617,-2597,-2595,-2587,-2577,-2570,-2559,-2545,-2534,-2522,-2509,-2498,-2489,
+-2480,-2471,-2466,-2459,-2454,-2452,-2451,-2448,-2447,-2445,-2444,-2439,-2438,-2438,-2443,-2446,-2449,-2451,-2452,-2458,
+-2467,-2471,-2469,-2463,-2440,-2425,-2422,-2399,-2366,-2345,-2319,-2279,-2275,-2261,-2243,-2252,-2245,-2240,-2225,-2210,
+-2204,-2186,-2181,-2186,-2183,-2182,-2176,-2172,-2168,-2163,-2156,-2154,-2140,-2137,-2136,-2130,-2120,-2114,-2108,-2097,
+-2087,-2083,-2074,-2061,-2054,-2048,-2038,-2030,-2024,-2020,-2014,-2012,-2005,-2001,-2001,-2000,-1989,-1975,-1970,-1968,
+-1963,-1955,-1938,-1924,-1916,-1911,-1899,-1887,-1878,-1866,-1852,-1844,-1841,-1837,-1835,-1835,-1830,-1822,-1820,-1823,
+-1825,-1825,-1839,-1847,-1851,-1861,-1865,-1850,-1829,-1832,-1827,-1815,-1791,-1802,-1815,-1822,-1806,-1760,-1728,-1703,
+-1676,-1670,-1667,-1678,-1681,-1686,-1692,-1694,-1697,-1691,-1687,-1672,-1672,-1668,-1656,-1647,-1647,-1643,-1643,-1650,
+-1652,-1654,-1654,-1651,-1645,-1638,-1630,-1618,-1612,-1610,-1606,-1602,-1598,-1596,-1593,-1585,-1574,-1564,-1555,-1548,
+-1550,-1545,-1543,-1541,-1542,-1542,-1538,-1531,-1519,-1511,-1496,-1472,-1453,-1437,-1414,-1393,-1365,-1353,-1350,-1343,
+-1335,-1328,-1317,-1301,-1277,-1287,-1276,-1264,-1252,-1239,-1239,-1236,-1223,-1225,-1219,-1205,-1208,-1231,-1205,-1171,
+-1157,-1151,-1159,-1143,-1122,-1122,-1114,-1124,-1132,-1109,-1111,-1084,-1062,-1059,-1056,-1037,-1016,-996,-976,-956,
+-941,-930,-924,-918,-921,-923,-916,-894,-864,-841,-827,-808,-792,-775,-757,-740,-721,-707,-692,-679,
+-674,-664,-647,-629,-608,-585,-560,-545,-536,-514,-468,-423,-402,-389,-356,-315,-281,-275,-268,-249,
+-228,-212,-182,-148,-126,-93,-75,-74,-47,-26,-3,18,45,58,94,122,143,164,188,218,
+241,260,283,312,340,355,355,363,404,452,490,528,557,576,594,609,622,638,655,681,
+703,727,753,763,786,805,827,842,836,822,808,791,781,796,833,918,1031,1184,1314,1361,
+1365,1364,1341,1320,1313,1318,1340,1375,1407,1435,1464,1497,1524,1555,1574,1595,1614,1625,1636,1649,
+1671,1697,1716,1740,1768,1800,1833,1858,1877,1903,1918,1939,1948,1967,1976,1963,1947,1961,1975,1963,
+1953,1950,1982,2011,2014,2006,1982,1944,1914,1900,1887,1869,1844,1845,1859,1877,1897,1899,1900,1901,
+1909,1927,1911,1889,1869,1847,1844,1839,1828,1833,1848,1865,1874,1870,1859,1860,1894,1931,1943,1937,
+1936,1930,1917,1900,1887,1887,1887,1893,1895,1896,1896,1883,1869,1868,1890,1872,1842,1825,1818,1808,
+1811,1823,1834,1841,1852,1862,1868,1870,1875,1902,1931,1955,1961,1953,1950,1954,1963,1981,1988,2003,
+2022,2035,2049,2065,2068,2085,2115,2108,2113,2129,2142,2149,2143,2145,2158,2181,2196,2211,2226,2242,
+2260,2283,2289,2297,2309,2319,2319,2317,2337,2328,2314,2308,2297,2286,2279,2262,2249,2218,2181,2140,
+2110,2105,2072,1897,1726,1581,1425,1259,1076,866,699,629,697,890,1106,1298,1465,1613,1720,1805,
+1869,1916,1960,1974,1969,1971,1974,1984,1994,1993,1982,2003,1997,1997,2003,2018,2013,2007,2000,2005,
+2016,2033,2055,2080,2092,2095,2092,2085,2080,2108,2131,2134,2131,2126,2112,2104,2112,2121,2129,2128,
+2127,2136,2148,2162,2186,2197,2204,2212,2241,2250,2247,2256,2274,2285,2295,2339,2382,2412,2439,2467,
+2480,2483,2474,2449,2429,2416,2430,2442,2441,2440,2438,2430,2426,2415,2399,2386,2374,2355,2339,2321,
+2316,2303,2310,2293,2267,2270,2276,2288,2289,2291,2220,2210,2205,2198,2195,2182,2168,2166,2167,2174,
+2168,2166,2175,2184,2179,2157,2148,2143,2126,2106,2088,2060,2037,2027,2021,1998,1990,1992,1981,1967,
+1955,1945,1936,1938,1951,1972,1979,1973,1970,1984,2006,2012,2011,2011,2001,2003,2017,2034,2051,2061,
+2060,2073,2109,2159,2184,2172,2174,2226,2244,2278,2301,2338,2372,2407,2427,2445,2458,2474,2503,2526,
+2569,2623,2632,2633,2639,2650,2667,2677,2710,2757,2779,2764,2751,2752,2774,2786,2816,2857,2892,2893,
+2841,2829,2835,2835,2859,2909,2932,2894,2874,2889,2911,2903,2919,2918,2916,2943,2937,2936,2944,2976,
+3012,3047,3068,3078,3099,3114,3127,3140,3165,3192,3217,3243,3268,3290,3307,3326,3347,3357,3361,3358,
+3366,3386,3396,3410,3429,3445,3462,3481,3499,3519,3538,3554,3570,3585,3603,3622,3641,3657,3694,3723,
+3740,3756,3779,3792,3805,3818,3831,3845,3854,3864,3872,3881,3888,3891,3888,3884,3878,3876,3877,3876,
+3880,3887,3888,3889,3890,3890,3893,3897,3902,3910,3918,3923,3920,3919,3912,3908,3901,3894,3886,3876,
+3865,3856,3846,3835,3829,3817,3801,3784,3774,3760,3751,3743,3732,3726,3718,3705,3692,3683,3670,3654,
+3628,3595,3581,3598,3620,3620,3620,3612,3614,3617,3619,3618,3615,3608,3598,3592,3577,3564,3549,3541,
+3537,3535,3539,3542,3541,3535,3531,3519,3507,3502,3494,3482,3472,3461,3452,3442,3434,3434,3435,3438,
+3441,3437,3446,3451,3448,3440,3431,3424,3418,3424,3429,3426,3406,3373,3342,3319,3309,3308,3299,3281,
+3257,3242,3243,3274,3307,3325,3326,3315,3305,3297,3297,3304,3318,3329,3334,3329,3319,3306,3284,3256,
+3225,3197,3173,3152,3134,3119,3097,3081,3079,3083,3069,3054,3042,3023,3009,2987,2960,2931,2903,2880,
+2865,2891,2881,2858,2832,2806,2774,2744,2716,2681,2638,2585,2539,2494,2439,2365,2287,2246,2177,2080,
+1996,1941,1904,1873,1845,1823,1803,1776,1754,1729,1705,1692,1678,1635,1617,1657,1672,1633,1602,1569,
+1529,1494,1456,1417,1386,1355,1328,1304,1280,1251,1222,1191,1162,1135,1106,1079,1050,1029,1008,988,
+966,943,916,887,858,827,792,753,716,682,643,603,564,534,506,471,434,397,359,316,
+269,226,190,151,109,79,51,12,-20,-47,-69,-88,-109,-122,-148,-182,-216,-248,-285,-322,
+-352,-381,-414,-450,-483,-512,-541,-569,-599,-629,-656,-684,-714,-738,-763,-794,-827,-861,-891,-917,
+-944,-976,-1005,-1033,-1065,-1096,-1128,-1160,-1190,-1219,-1245,-1274,-1299,-1331,-1366,-1402,-1438,-1469,-1499,-1529,
+-1556,-1586,-1602,-1621,-1653,-1682,-1711,-1738,-1766,-1791,-1813,-1840,-1865,-1890,-1907,-1929,-1954,-1979,-2001,-2022,
+-2042,-2065,-2087,-2104,-2126,-2148,-2167,-2189,-2212,-2223,-2242,-2260,-2282,-2299,-2313,-2332,-2354,-2371,-2387,-2401,
+-2416,-2430,-2444,-2461,-2477,-2494,-2509,-2526,-2542,-2558,-2573,-2583,-2594,-2611,-2625,-2634,-2645,-2652,-2661,-2668,
+-2677,-2686,-2695,-2701,-2707,-2715,-2719,-2724,-2726,-2730,-2734,-2740,-2743,-2745,-2746,-2749,-2751,-2753,-2756,-2754,
+-2753,-2751,-2752,-2751,-2747,-2747,-2750,-2745,-2741,-2744,-2747,-2749,-2748,-2751,-2749,-2750,-2743,-2747,-2744,-2739,
+-2739,-2733,-2725,-2717,-2708,-2698,-2693,-2698,-2700,-2708,-2714,-2711,-2676,-2638,-2640,-2625,-2590,-2568,-2551,-2539,
+-2529,-2522,-2515,-2500,-2496,-2489,-2486,-2481,-2484,-2459,-2439,-2429,-2417,-2412,-2415,-2411,-2423,-2427,-2402,-2383,
+-2381,-2369,-2368,-2380,-2395,-2427,-2446,-2461,-2438,-2423,-2414,-2411,-2413,-2415,-2412,-2420,-2435,-2458,-2507,-2524,
+-2511,-2502,-2512,-2534,-2534,-2551,-2560,-2571,-2577,-2584,-2591,-2600,-2607,-2626,-2662,-2717,-2792,-2898,-3047,-3207,
+-3226,-3091,-2872,-2695,-2656,-2720,-2801,-2841,-2883,-2901,-2917,-2937,-2951,-2960,-2976,-2997,-3020,-3054,-3096,-3149,
+-3204,-3266,-3305,-3311,-3346,-3372,-3410,-3445,-3485,-3527,-3543,-3540,-3560,-3602,-3628,-3644,-3661,-3680,-3699,-3719,
+-3741,-3764,-3785,-3805,-3824,-3840,-3848,-3867,-3883,-3900,-3916,-3932,-3950,-3961,-3964,-3976,-3987,-3992,-3981,-4012,
+-4035,-4034,-4031,-4028,-4032,-4038,-4044,-4052,-4055,-4057,-4058,-4055,-4054,-4051,-4048,-4049,-4045,-4040,-4045,-4055,
+-4056,-4059,-4061,-4071,-4077,-4083,-4086,-4083,-4079,-4084,-4091,-4079,-4073,-4078,-4082,-4075,-4062,-4062,-4057,-4053,
+-4052,-4047,-4036,-4014,-4004,-4011,-4020,-4001,-4001,-4018,-4015,-4002,-4000,-4003,-3999,-3983,-3974,-3962,-3963,-3948,
+-3919,-3910,-3913,-3908,-3892,-3877,-3860,-3832,-3810,-3799,-3778,-3757,-3748,-3730,-3716,-3700,-3689,-3669,-3674,-3682,
+-3678,-3666,-3642,-3627,-3614,-3608,-3595,-3577,-3547,-3514,-3504,-3476,-3459,-3441,-3403,-3381,-3396,-3386,-3354,-3334,
+-3323,-3310,-3288,-3268,-3260,-3253,-3236,-3213,-3199,-3195,-3171,-3155,-3137,-3114,-3099,-3085,-3058,-3037,-3021,-3007,
+-2999,-2983,-2969,-2961,-2955,-2940,-2930,-2919,-2905,-2886,-2874,-2855,-2835,-2813,-2797,-2782,-2770,-2761,-2746,-2734,
+-2723,-2710,-2706,-2697,-2689,-2679,-2669,-2661,-2652,-2645,-2638,-2630,-2615,-2610,-2599,-2590,-2583,-2573,-2564,-2557,
+-2543,-2532,-2521,-2512,-2503,-2497,-2502,-2501,-2498,-2493,-2493,-2486,-2485,-2480,-2479,-2476,-2481,-2480,-2487,-2489,
+-2494,-2498,-2505,-2502,-2498,-2493,-2483,-2480,-2482,-2450,-2418,-2408,-2413,-2394,-2358,-2327,-2312,-2305,-2298,-2287,
+-2284,-2275,-2262,-2251,-2245,-2240,-2237,-2227,-2222,-2218,-2217,-2217,-2205,-2201,-2193,-2186,-2183,-2179,-2170,-2165,
+-2155,-2142,-2136,-2131,-2117,-2105,-2093,-2088,-2079,-2067,-2059,-2053,-2046,-2037,-2027,-2022,-2019,-2012,-2011,-2008,
+-2006,-2007,-2006,-1989,-1976,-1959,-1951,-1944,-1932,-1920,-1908,-1903,-1900,-1895,-1887,-1890,-1884,-1875,-1862,-1844,
+-1839,-1830,-1822,-1836,-1834,-1833,-1833,-1835,-1842,-1850,-1859,-1860,-1857,-1855,-1841,-1821,-1836,-1870,-1883,-1875,
+-1860,-1834,-1799,-1763,-1734,-1723,-1728,-1738,-1756,-1775,-1798,-1829,-1844,-1839,-1826,-1794,-1766,-1749,-1729,-1725,
+-1719,-1714,-1710,-1706,-1704,-1695,-1688,-1683,-1676,-1672,-1666,-1663,-1658,-1652,-1647,-1639,-1635,-1628,-1610,-1597,
+-1591,-1593,-1593,-1591,-1585,-1581,-1580,-1574,-1568,-1556,-1545,-1531,-1511,-1493,-1476,-1457,-1435,-1415,-1392,-1374,
+-1365,-1361,-1358,-1348,-1319,-1326,-1331,-1325,-1312,-1297,-1273,-1267,-1267,-1259,-1256,-1253,-1249,-1250,-1227,-1205,
+-1198,-1196,-1192,-1179,-1164,-1143,-1137,-1133,-1127,-1117,-1094,-1069,-1058,-1063,-1055,-1026,-1005,-987,-983,-970,
+-953,-932,-914,-895,-884,-883,-899,-903,-891,-869,-844,-835,-824,-807,-789,-765,-741,-715,-699,-680,
+-668,-656,-648,-641,-637,-625,-611,-592,-568,-542,-516,-502,-451,-412,-378,-353,-321,-305,-300,-284,
+-258,-230,-214,-200,-161,-136,-114,-85,-66,-79,-67,-41,-20,13,58,91,106,113,136,160,
+182,207,235,262,284,318,352,362,385,397,426,462,488,523,557,580,597,617,640,664,
+692,723,779,808,814,823,862,893,915,935,947,952,958,960,961,961,974,999,1037,1097,
+1197,1336,1437,1427,1377,1375,1360,1357,1362,1387,1420,1455,1493,1532,1560,1585,1615,1649,1674,1688,
+1700,1717,1742,1770,1798,1828,1853,1871,1882,1891,1903,1943,1983,2009,2040,2049,2046,1994,1952,1945,
+1966,1985,1999,2009,2020,2009,2012,2010,1986,1977,1963,1953,1949,1941,1937,1933,1936,1931,1942,1964,
+1958,1933,1918,1916,1921,1918,1912,1905,1900,1889,1887,1884,1887,1890,1893,1897,1902,1911,1914,1925,
+1929,1932,1926,1915,1910,1911,1919,1931,1926,1913,1914,1914,1909,1899,1896,1888,1886,1879,1867,1858,
+1852,1853,1852,1852,1859,1866,1871,1880,1874,1884,1909,1937,1963,1969,1960,1959,1967,1983,1999,2005,
+2017,2027,2041,2051,2062,2076,2085,2105,2113,2116,2119,2130,2141,2166,2195,2189,2181,2187,2202,2224,
+2247,2263,2276,2299,2324,2340,2356,2368,2351,2345,2355,2357,2342,2327,2318,2315,2293,2271,2245,2212,
+2177,2141,2108,2061,1936,1797,1662,1519,1383,1238,1077,918,786,728,838,1028,1244,1432,1570,1683,
+1790,1857,1882,1899,1927,1953,1971,1970,1982,2002,2002,1982,1976,1993,2001,1994,1989,1989,1973,1972,
+1978,1980,1992,2015,2033,2055,2072,2084,2093,2083,2082,2076,2079,2080,2091,2103,2124,2124,2130,2138,
+2142,2137,2139,2136,2138,2174,2190,2194,2200,2217,2224,2234,2259,2283,2314,2321,2325,2349,2364,2364,
+2386,2389,2368,2338,2327,2358,2390,2422,2440,2436,2437,2411,2389,2373,2354,2350,2345,2319,2298,2284,
+2283,2287,2304,2305,2295,2293,2285,2262,2239,2222,2220,2187,2176,2170,2167,2162,2158,2155,2156,2148,
+2142,2140,2136,2132,2121,2121,2110,2098,2087,2078,2057,2034,2022,2001,1985,1972,1967,1970,1966,1950,
+1946,1956,1961,1949,1945,1955,1966,1965,1957,1947,1960,1979,1984,1988,1993,1989,1993,2000,2012,2013,
+2023,2051,2067,2078,2107,2143,2157,2145,2160,2212,2264,2286,2320,2351,2372,2388,2401,2421,2440,2465,
+2518,2560,2576,2575,2580,2599,2619,2638,2668,2713,2727,2713,2705,2703,2719,2744,2769,2804,2844,2850,
+2835,2802,2778,2786,2801,2830,2874,2897,2879,2849,2845,2882,2883,2897,2896,2903,2928,2918,2894,2917,
+2951,2995,3021,3033,3058,3079,3094,3107,3131,3156,3181,3204,3226,3248,3266,3285,3303,3313,3317,3318,
+3322,3335,3354,3371,3388,3407,3422,3438,3454,3467,3483,3499,3512,3527,3542,3558,3573,3588,3614,3647,
+3670,3686,3711,3733,3746,3760,3776,3790,3802,3806,3817,3829,3837,3845,3847,3849,3846,3842,3836,3835,
+3836,3836,3836,3837,3842,3847,3850,3853,3854,3856,3861,3868,3875,3875,3875,3872,3867,3862,3857,3849,
+3839,3827,3820,3810,3799,3789,3776,3765,3753,3742,3730,3721,3713,3707,3697,3683,3667,3654,3644,3625,
+3590,3563,3558,3576,3594,3588,3579,3573,3576,3584,3582,3583,3583,3583,3575,3572,3564,3554,3538,3520,
+3513,3513,3514,3518,3519,3516,3511,3507,3497,3483,3480,3476,3465,3452,3444,3439,3433,3431,3429,3423,
+3422,3420,3423,3427,3413,3406,3398,3392,3379,3365,3350,3328,3304,3275,3243,3214,3182,3156,3121,3091,
+3063,3041,3030,3035,3066,3126,3179,3206,3214,3209,3200,3189,3192,3201,3212,3210,3200,3186,3175,3169,
+3160,3152,3132,3111,3090,3073,3059,3049,3049,3059,3068,3063,3048,3022,2997,2979,2969,2961,2941,2899,
+2862,2843,2861,2856,2843,2822,2799,2775,2745,2717,2689,2656,2614,2571,2533,2490,2434,2376,2335,2277,
+2192,2090,2002,1933,1878,1832,1793,1764,1750,1736,1716,1686,1658,1648,1630,1610,1609,1619,1639,1654,
+1605,1523,1459,1410,1382,1362,1337,1314,1290,1260,1222,1190,1163,1135,1106,1080,1055,1033,1014,994,
+977,956,928,901,874,844,816,783,748,711,674,636,598,560,525,487,461,422,383,343,
+296,250,200,159,124,88,65,36,1,-34,-63,-89,-114,-123,-143,-170,-203,-238,-269,-302,
+-330,-369,-401,-434,-468,-500,-522,-549,-575,-603,-632,-664,-691,-719,-748,-781,-811,-839,-868,-893,
+-919,-947,-974,-1005,-1035,-1066,-1097,-1130,-1163,-1199,-1229,-1255,-1279,-1308,-1343,-1377,-1407,-1437,-1469,-1500,
+-1528,-1562,-1585,-1608,-1629,-1662,-1692,-1717,-1743,-1769,-1795,-1820,-1845,-1874,-1891,-1909,-1936,-1962,-1986,-2010,
+-2031,-2055,-2077,-2095,-2114,-2135,-2156,-2177,-2197,-2211,-2232,-2252,-2271,-2292,-2311,-2328,-2350,-2368,-2386,-2401,
+-2418,-2433,-2447,-2462,-2478,-2496,-2513,-2526,-2544,-2562,-2574,-2589,-2602,-2617,-2632,-2645,-2656,-2667,-2678,-2683,
+-2689,-2693,-2704,-2714,-2729,-2740,-2746,-2750,-2754,-2759,-2764,-2768,-2773,-2777,-2779,-2782,-2782,-2786,-2790,-2793,
+-2794,-2792,-2790,-2790,-2790,-2790,-2791,-2786,-2775,-2780,-2786,-2784,-2786,-2785,-2785,-2788,-2791,-2791,-2788,-2786,
+-2784,-2780,-2773,-2765,-2757,-2748,-2748,-2744,-2740,-2741,-2746,-2754,-2753,-2729,-2696,-2686,-2670,-2637,-2619,-2603,
+-2593,-2587,-2577,-2571,-2560,-2551,-2545,-2542,-2538,-2538,-2531,-2502,-2489,-2480,-2470,-2464,-2466,-2467,-2476,-2477,
+-2444,-2438,-2433,-2426,-2428,-2431,-2451,-2467,-2490,-2478,-2458,-2446,-2442,-2444,-2450,-2452,-2454,-2461,-2483,-2515,
+-2555,-2553,-2546,-2561,-2566,-2572,-2588,-2603,-2610,-2613,-2620,-2624,-2634,-2643,-2661,-2697,-2752,-2840,-2964,-3113,
+-3240,-3221,-3120,-2927,-2723,-2666,-2704,-2805,-2881,-2921,-2955,-2982,-2995,-3008,-3025,-3042,-3060,-3085,-3115,-3161,
+-3221,-3275,-3305,-3331,-3369,-3432,-3468,-3480,-3496,-3520,-3565,-3592,-3607,-3631,-3655,-3675,-3695,-3719,-3739,-3752,
+-3764,-3782,-3804,-3827,-3852,-3882,-3908,-3930,-3950,-3972,-3991,-4011,-4021,-4034,-4041,-4045,-4051,-4065,-4073,-4084,
+-4090,-4098,-4102,-4103,-4104,-4106,-4108,-4114,-4119,-4127,-4130,-4130,-4129,-4125,-4120,-4119,-4117,-4122,-4119,-4118,
+-4123,-4130,-4131,-4133,-4135,-4145,-4154,-4150,-4154,-4150,-4140,-4140,-4154,-4154,-4130,-4129,-4149,-4136,-4122,-4126,
+-4119,-4108,-4107,-4102,-4102,-4090,-4070,-4068,-4060,-4065,-4074,-4060,-4045,-4050,-4049,-4042,-4042,-4047,-4035,-4016,
+-4002,-4006,-3990,-3960,-3948,-3945,-3926,-3907,-3897,-3879,-3866,-3843,-3818,-3798,-3778,-3765,-3758,-3752,-3737,-3715,
+-3709,-3719,-3707,-3691,-3672,-3655,-3650,-3640,-3620,-3595,-3576,-3562,-3546,-3520,-3499,-3481,-3456,-3430,-3411,-3400,
+-3394,-3377,-3356,-3330,-3310,-3302,-3298,-3280,-3256,-3238,-3224,-3220,-3206,-3189,-3150,-3135,-3135,-3124,-3101,-3076,
+-3060,-3039,-3028,-3014,-3005,-2991,-2978,-2973,-2950,-2943,-2930,-2915,-2904,-2890,-2868,-2853,-2838,-2823,-2807,-2793,
+-2780,-2770,-2756,-2744,-2734,-2724,-2712,-2705,-2695,-2690,-2682,-2673,-2663,-2658,-2650,-2643,-2634,-2614,-2601,-2592,
+-2600,-2591,-2580,-2569,-2556,-2549,-2552,-2559,-2554,-2548,-2544,-2537,-2533,-2528,-2522,-2522,-2521,-2523,-2525,-2523,
+-2524,-2528,-2531,-2531,-2533,-2533,-2533,-2527,-2515,-2508,-2507,-2506,-2506,-2505,-2499,-2479,-2451,-2436,-2421,-2395,
+-2375,-2361,-2349,-2339,-2322,-2321,-2311,-2298,-2285,-2280,-2273,-2263,-2257,-2252,-2252,-2246,-2237,-2233,-2229,-2220,
+-2213,-2206,-2192,-2185,-2173,-2161,-2152,-2146,-2136,-2123,-2115,-2103,-2092,-2085,-2082,-2080,-2066,-2054,-2041,-2034,
+-2034,-2029,-2017,-2014,-2008,-1992,-1994,-1990,-1986,-1973,-1968,-1969,-1962,-1954,-1948,-1947,-1942,-1934,-1927,-1912,
+-1898,-1880,-1868,-1861,-1847,-1831,-1831,-1833,-1858,-1852,-1851,-1853,-1859,-1868,-1866,-1855,-1824,-1838,-1853,-1867,
+-1873,-1879,-1889,-1906,-1919,-1919,-1903,-1867,-1825,-1809,-1796,-1790,-1796,-1810,-1821,-1827,-1843,-1857,-1873,-1878,
+-1875,-1866,-1848,-1831,-1809,-1799,-1780,-1764,-1747,-1738,-1730,-1714,-1705,-1697,-1687,-1684,-1685,-1683,-1676,-1665,
+-1655,-1648,-1640,-1637,-1632,-1631,-1631,-1627,-1619,-1610,-1595,-1581,-1563,-1547,-1529,-1513,-1496,-1482,-1462,-1445,
+-1431,-1418,-1411,-1396,-1366,-1310,-1321,-1360,-1366,-1366,-1343,-1331,-1317,-1300,-1288,-1286,-1286,-1282,-1275,-1263,
+-1246,-1238,-1232,-1229,-1215,-1201,-1183,-1162,-1143,-1130,-1126,-1116,-1094,-1078,-1080,-1057,-1032,-1026,-1033,-1022,
+-990,-966,-943,-909,-859,-835,-827,-861,-877,-870,-845,-834,-833,-822,-806,-788,-762,-736,-718,-705,
+-690,-675,-664,-653,-645,-635,-625,-612,-599,-582,-573,-555,-520,-488,-434,-399,-377,-352,-332,-316,
+-295,-275,-248,-224,-202,-190,-169,-148,-134,-119,-109,-91,-63,-27,-2,35,53,72,93,110,
+128,151,177,212,241,257,285,301,321,348,379,405,434,466,509,546,577,611,640,665,
+691,718,746,783,825,872,907,923,940,967,1000,1028,1050,1068,1085,1096,1109,1127,1148,1176,
+1209,1228,1247,1300,1345,1383,1364,1378,1430,1449,1454,1451,1459,1486,1536,1559,1595,1634,1672,1698,
+1727,1750,1768,1784,1800,1823,1858,1881,1909,1941,1957,1952,1952,1976,1999,2019,2022,1998,1994,2049,
+2079,2080,2077,2062,2065,2042,2015,2010,2010,2009,2005,1988,1978,1973,1971,1969,1969,1962,1959,1954,
+1947,1942,1935,1924,1922,1928,1932,1942,1943,1932,1918,1908,1902,1904,1910,1912,1919,1920,1934,1948,
+1950,1949,1949,1946,1939,1932,1937,1944,1948,1947,1951,1955,1955,1947,1943,1944,1933,1915,1909,1905,
+1896,1893,1886,1883,1881,1881,1880,1883,1883,1880,1894,1916,1938,1957,1978,1974,1974,1987,2003,2014,
+2012,2014,2012,2023,2038,2052,2066,2083,2100,2118,2123,2130,2126,2137,2150,2183,2210,2223,2241,2261,
+2268,2277,2286,2299,2314,2328,2343,2363,2375,2384,2378,2388,2391,2378,2361,2346,2327,2315,2301,2286,
+2248,2203,2171,2145,2097,2041,1928,1771,1637,1502,1374,1253,1105,961,840,836,986,1190,1377,1524,
+1637,1722,1793,1853,1891,1913,1936,1971,1979,1991,2006,2007,1993,1972,1954,1963,1973,1971,1965,1964,
+1966,1967,1965,1968,1979,1995,2004,2015,2040,2057,2062,2058,2045,2042,2050,2058,2063,2060,2050,2049,
+2047,2061,2069,2072,2086,2088,2104,2111,2112,2122,2135,2139,2151,2171,2192,2214,2245,2275,2307,2322,
+2330,2329,2310,2280,2328,2380,2404,2414,2412,2402,2391,2389,2365,2350,2349,2335,2323,2318,2307,2300,
+2277,2272,2257,2249,2243,2243,2225,2214,2214,2207,2192,2187,2125,2123,2118,2116,2107,2111,2113,2110,
+2107,2107,2076,2051,2043,2034,2023,2018,2013,2012,2007,1999,1996,2026,1983,1957,1936,1927,1927,1919,
+1924,1946,1970,1979,1975,1975,1969,1956,1940,1930,1933,1942,1946,1954,1972,1974,1960,1961,1978,1999,
+2013,2027,2033,2039,2060,2094,2118,2137,2157,2200,2232,2252,2264,2296,2319,2337,2352,2360,2379,2401,
+2445,2521,2550,2539,2530,2552,2585,2612,2639,2669,2667,2658,2658,2655,2667,2695,2733,2763,2789,2802,
+2789,2771,2740,2730,2741,2752,2776,2816,2854,2856,2834,2821,2848,2866,2879,2891,2920,2906,2880,2889,
+2910,2945,2969,2988,3018,3047,3061,3072,3098,3121,3144,3167,3187,3207,3225,3244,3263,3277,3280,3282,
+3290,3300,3313,3326,3342,3358,3377,3393,3409,3424,3439,3453,3465,3477,3489,3501,3512,3523,3541,3569,
+3591,3608,3635,3664,3684,3702,3717,3730,3739,3746,3756,3767,3774,3781,3793,3801,3808,3815,3814,3807,
+3802,3797,3797,3797,3801,3806,3810,3813,3816,3817,3819,3820,3824,3824,3827,3825,3823,3820,3817,3813,
+3808,3800,3791,3784,3774,3762,3750,3736,3720,3711,3704,3697,3691,3680,3671,3658,3647,3634,3619,3590,
+3560,3542,3553,3569,3569,3559,3553,3552,3547,3545,3549,3552,3551,3547,3545,3544,3537,3529,3523,3512,
+3497,3489,3489,3492,3496,3498,3493,3487,3476,3467,3454,3446,3444,3433,3428,3427,3426,3421,3417,3415,
+3407,3396,3390,3386,3380,3375,3367,3358,3354,3342,3311,3257,3218,3181,3152,3130,3125,3164,3220,3180,
+3099,3059,3041,3029,3023,3030,3048,3083,3120,3127,3120,3088,3049,3027,3025,3042,3065,3061,3045,3041,
+3047,3062,3071,3069,3066,3045,3028,3007,3013,3040,3052,3046,3032,3015,3005,3003,3006,3011,3003,2960,
+2896,2861,2842,2842,2839,2825,2805,2783,2759,2735,2709,2682,2654,2621,2584,2548,2510,2470,2428,2386,
+2340,2285,2213,2126,2039,1950,1869,1804,1757,1724,1705,1679,1647,1616,1600,1582,1570,1563,1571,1585,
+1572,1537,1490,1425,1368,1352,1344,1320,1298,1274,1248,1210,1176,1144,1114,1087,1062,1041,1018,997,
+979,960,934,907,879,852,825,794,759,722,687,650,612,577,543,510,478,442,402,364,
+324,281,228,177,131,102,74,46,17,-15,-47,-77,-98,-119,-144,-167,-190,-221,-254,-285,
+-318,-349,-382,-420,-455,-485,-513,-536,-558,-582,-610,-640,-671,-698,-727,-758,-789,-821,-850,-879,
+-905,-929,-955,-983,-1007,-1038,-1072,-1103,-1137,-1174,-1206,-1236,-1261,-1285,-1312,-1346,-1380,-1410,-1444,-1471,
+-1500,-1532,-1562,-1587,-1612,-1643,-1668,-1695,-1724,-1751,-1780,-1805,-1830,-1858,-1879,-1890,-1913,-1939,-1967,-1993,
+-2018,-2041,-2064,-2086,-2105,-2127,-2146,-2165,-2185,-2201,-2224,-2247,-2268,-2289,-2308,-2326,-2345,-2367,-2387,-2402,
+-2418,-2432,-2447,-2464,-2481,-2496,-2509,-2527,-2545,-2563,-2577,-2590,-2603,-2622,-2643,-2655,-2665,-2681,-2695,-2705,
+-2716,-2721,-2724,-2735,-2746,-2759,-2772,-2780,-2785,-2792,-2798,-2802,-2808,-2814,-2814,-2817,-2818,-2819,-2821,-2821,
+-2825,-2826,-2827,-2829,-2831,-2832,-2833,-2833,-2834,-2835,-2832,-2827,-2822,-2829,-2829,-2823,-2826,-2828,-2829,-2829,
+-2829,-2829,-2823,-2816,-2804,-2797,-2790,-2787,-2785,-2788,-2789,-2794,-2797,-2796,-2776,-2744,-2732,-2722,-2685,-2669,
+-2663,-2658,-2649,-2639,-2630,-2618,-2608,-2598,-2595,-2590,-2590,-2587,-2565,-2545,-2536,-2525,-2514,-2517,-2515,-2524,
+-2528,-2512,-2496,-2495,-2472,-2459,-2465,-2476,-2505,-2518,-2521,-2498,-2488,-2481,-2479,-2479,-2490,-2495,-2498,-2515,
+-2541,-2594,-2606,-2595,-2595,-2600,-2605,-2621,-2639,-2646,-2649,-2657,-2665,-2673,-2684,-2702,-2728,-2783,-2875,-3007,
+-3157,-3286,-3328,-3225,-3045,-2842,-2728,-2718,-2775,-2835,-2925,-2978,-3005,-3036,-3069,-3093,-3121,-3148,-3175,-3219,
+-3272,-3319,-3362,-3402,-3437,-3440,-3464,-3534,-3538,-3533,-3546,-3593,-3629,-3650,-3680,-3713,-3740,-3766,-3791,-3808,
+-3820,-3831,-3847,-3868,-3897,-3925,-3956,-3980,-3998,-4019,-4038,-4057,-4076,-4092,-4095,-4100,-4107,-4114,-4127,-4141,
+-4156,-4162,-4165,-4169,-4170,-4165,-4164,-4167,-4166,-4170,-4180,-4185,-4191,-4190,-4188,-4185,-4185,-4183,-4184,-4192,
+-4189,-4193,-4195,-4196,-4196,-4201,-4202,-4215,-4220,-4215,-4215,-4220,-4217,-4212,-4213,-4210,-4205,-4188,-4205,-4211,
+-4193,-4184,-4175,-4162,-4149,-4145,-4152,-4151,-4142,-4125,-4119,-4134,-4131,-4107,-4104,-4091,-4094,-4086,-4066,-4067,
+-4066,-4068,-4059,-4066,-4050,-4017,-4007,-3996,-3981,-3954,-3933,-3923,-3904,-3890,-3873,-3858,-3832,-3817,-3810,-3805,
+-3797,-3782,-3748,-3735,-3736,-3720,-3703,-3691,-3675,-3663,-3645,-3624,-3610,-3593,-3578,-3556,-3529,-3499,-3483,-3464,
+-3448,-3423,-3401,-3404,-3402,-3390,-3367,-3346,-3326,-3311,-3297,-3278,-3260,-3249,-3233,-3210,-3195,-3166,-3144,-3136,
+-3136,-3139,-3122,-3100,-3079,-3055,-3032,-3019,-3014,-2995,-2975,-2966,-2954,-2945,-2933,-2918,-2902,-2889,-2875,-2861,
+-2847,-2833,-2819,-2804,-2789,-2777,-2766,-2756,-2744,-2733,-2726,-2721,-2716,-2710,-2700,-2694,-2687,-2673,-2653,-2644,
+-2643,-2641,-2639,-2642,-2625,-2616,-2615,-2613,-2612,-2607,-2599,-2596,-2587,-2583,-2574,-2573,-2570,-2567,-2564,-2563,
+-2563,-2559,-2558,-2560,-2561,-2560,-2560,-2561,-2557,-2558,-2555,-2552,-2547,-2542,-2544,-2554,-2541,-2545,-2556,-2552,
+-2523,-2495,-2469,-2445,-2422,-2402,-2392,-2384,-2375,-2360,-2350,-2339,-2330,-2318,-2306,-2294,-2284,-2280,-2273,-2265,
+-2259,-2258,-2256,-2249,-2240,-2232,-2224,-2216,-2206,-2197,-2184,-2171,-2159,-2150,-2145,-2130,-2117,-2100,-2107,-2107,
+-2095,-2088,-2069,-2055,-2045,-2038,-2030,-2033,-2028,-2019,-2007,-2017,-2031,-2024,-2019,-2012,-2006,-2000,-1994,-1977,
+-1969,-1949,-1933,-1923,-1911,-1897,-1895,-1879,-1874,-1878,-1877,-1884,-1888,-1895,-1894,-1894,-1895,-1892,-1888,-1890,
+-1890,-1886,-1887,-1894,-1901,-1913,-1919,-1939,-1960,-1953,-1935,-1907,-1869,-1822,-1789,-1777,-1775,-1786,-1809,-1836,
+-1855,-1866,-1888,-1913,-1922,-1911,-1895,-1880,-1875,-1870,-1862,-1839,-1807,-1783,-1767,-1752,-1746,-1741,-1726,-1718,
+-1717,-1714,-1704,-1693,-1685,-1679,-1671,-1667,-1664,-1659,-1652,-1642,-1627,-1606,-1589,-1572,-1549,-1529,-1518,-1506,
+-1496,-1485,-1471,-1455,-1428,-1379,-1372,-1402,-1405,-1394,-1376,-1371,-1376,-1370,-1347,-1334,-1328,-1317,-1293,-1280,
+-1289,-1282,-1271,-1271,-1258,-1240,-1226,-1210,-1189,-1159,-1126,-1103,-1110,-1108,-1081,-1072,-1064,-1070,-1081,-1082,
+-1066,-1036,-1018,-993,-966,-944,-916,-876,-860,-876,-852,-821,-783,-801,-812,-811,-790,-770,-757,-748,
+-742,-730,-713,-693,-671,-651,-632,-615,-599,-587,-574,-557,-538,-517,-496,-468,-444,-406,-368,-349,
+-341,-326,-290,-252,-241,-221,-205,-188,-177,-168,-154,-136,-111,-84,-55,-19,14,40,60,72,
+84,100,123,143,170,204,226,254,287,318,340,371,390,410,436,475,525,577,617,650,
+681,716,742,774,813,852,894,938,982,1001,1013,1037,1076,1111,1137,1162,1180,1196,1215,1240,
+1272,1313,1360,1406,1452,1482,1475,1431,1408,1409,1459,1530,1566,1580,1566,1546,1558,1587,1628,1671,
+1703,1739,1775,1809,1836,1862,1892,1882,1888,1927,1956,1979,1989,1991,1963,1948,1956,1971,1993,2025,
+2050,2067,2072,2060,2050,2049,2041,2034,2030,2030,2017,2008,2004,1992,1985,1984,1993,1999,1996,1990,
+1981,1972,1956,1943,1930,1919,1916,1918,1923,1922,1924,1918,1912,1913,1920,1936,1934,1939,1946,1949,
+1963,1988,1995,1986,1985,1983,1981,1981,1986,1988,1990,1991,1988,1984,1979,1977,1975,1969,1956,1946,
+1944,1937,1924,1921,1918,1913,1911,1909,1905,1899,1898,1912,1936,1948,1965,1984,1988,1989,1998,2014,
+2022,2015,2014,2016,2031,2048,2071,2089,2105,2123,2142,2152,2148,2158,2166,2171,2187,2207,2215,2226,
+2244,2257,2288,2298,2304,2342,2349,2357,2378,2394,2403,2408,2388,2387,2404,2388,2382,2363,2343,2317,
+2299,2270,2235,2218,2194,2178,2180,2046,1870,1732,1613,1504,1380,1232,1099,983,909,982,1163,1349,
+1519,1630,1696,1761,1826,1893,1904,1919,1943,1966,1960,1963,1989,2012,2018,2014,1990,1968,1948,1934,
+1927,1924,1930,1932,1937,1946,1949,1961,1975,1993,2000,2004,1995,1989,1981,1998,2013,2021,2031,2020,
+2006,1998,1998,2011,2029,2047,2054,2058,2055,2058,2065,2073,2079,2092,2108,2129,2145,2171,2203,2233,
+2240,2255,2277,2251,2181,2203,2225,2235,2257,2272,2279,2260,2228,2211,2203,2207,2203,2214,2230,2245,
+2235,2239,2248,2242,2244,2200,2195,2189,2189,2159,2145,2133,2125,2088,2089,2083,2078,2080,2129,2118,
+2096,2059,2037,2041,2032,2035,1993,1962,1953,1937,1920,1901,1895,1904,1892,1880,1882,1913,1961,1926,
+1899,1907,1934,1953,1966,1972,1967,1969,1950,1941,1932,1933,1935,1934,1950,1967,1972,1966,1959,1977,
+2014,2030,2032,2034,2042,2070,2098,2117,2139,2174,2197,2236,2294,2312,2300,2307,2328,2339,2340,2349,
+2366,2403,2475,2516,2523,2515,2518,2547,2572,2606,2613,2626,2638,2640,2644,2654,2661,2692,2730,2769,
+2768,2760,2752,2725,2719,2729,2743,2753,2779,2816,2823,2815,2807,2827,2855,2875,2911,2893,2871,2871,
+2886,2913,2931,2952,2980,3011,3029,3039,3061,3083,3103,3123,3142,3163,3182,3200,3220,3240,3249,3247,
+3252,3264,3277,3287,3302,3318,3336,3349,3365,3379,3393,3408,3418,3430,3441,3448,3460,3469,3477,3500,
+3521,3537,3557,3586,3610,3630,3649,3663,3674,3683,3691,3709,3722,3728,3739,3752,3759,3763,3767,3769,
+3769,3766,3763,3765,3765,3766,3770,3769,3772,3775,3777,3781,3785,3787,3788,3783,3778,3773,3773,3773,
+3771,3766,3760,3754,3745,3734,3724,3709,3694,3682,3671,3663,3652,3643,3635,3628,3619,3607,3587,3559,
+3541,3538,3549,3562,3556,3547,3535,3527,3524,3523,3522,3524,3529,3529,3522,3518,3510,3501,3495,3489,
+3478,3467,3464,3462,3465,3470,3472,3468,3461,3451,3440,3433,3422,3413,3407,3402,3398,3398,3396,3394,
+3389,3381,3372,3359,3346,3338,3332,3329,3336,3332,3300,3239,3172,3139,3122,3117,3114,3129,3171,3186,
+3170,3138,3121,3112,3099,3087,3071,3061,3058,3059,3070,3106,3098,3038,3001,2994,3003,3001,2986,2969,
+2958,2957,2966,2977,2985,2995,3003,2990,2992,3022,3038,3032,3021,3008,3006,3014,3031,3045,3047,3036,
+2995,2925,2874,2849,2849,2845,2839,2817,2790,2758,2726,2692,2663,2632,2603,2575,2545,2518,2487,2454,
+2414,2364,2316,2255,2186,2114,2044,1968,1878,1794,1747,1711,1668,1626,1581,1551,1540,1525,1517,1504,
+1492,1487,1476,1448,1426,1390,1333,1290,1270,1266,1255,1229,1201,1169,1141,1110,1079,1057,1031,1008,
+978,952,927,903,879,851,821,790,759,725,695,663,631,597,557,521,488,452,416,384,
+344,306,260,211,161,116,78,50,24,0,-25,-55,-83,-99,-123,-156,-179,-198,-237,-270,
+-301,-332,-365,-398,-427,-464,-497,-525,-550,-572,-601,-630,-659,-685,-714,-742,-770,-799,-828,-858,
+-885,-912,-941,-966,-992,-1018,-1050,-1083,-1119,-1151,-1182,-1213,-1243,-1266,-1290,-1323,-1352,-1379,-1410,-1442,
+-1471,-1501,-1537,-1567,-1596,-1624,-1650,-1676,-1707,-1731,-1762,-1792,-1819,-1840,-1862,-1885,-1896,-1914,-1946,-1976,
+-2004,-2026,-2049,-2076,-2091,-2111,-2135,-2157,-2178,-2194,-2220,-2239,-2253,-2278,-2300,-2323,-2341,-2363,-2383,-2402,
+-2417,-2432,-2447,-2465,-2481,-2496,-2513,-2532,-2549,-2568,-2585,-2602,-2616,-2633,-2649,-2665,-2681,-2693,-2709,-2723,
+-2733,-2743,-2754,-2762,-2769,-2778,-2792,-2804,-2814,-2823,-2829,-2834,-2838,-2841,-2845,-2850,-2855,-2855,-2855,-2861,
+-2864,-2866,-2868,-2868,-2869,-2869,-2867,-2867,-2872,-2871,-2871,-2877,-2880,-2883,-2878,-2866,-2867,-2873,-2871,-2873,
+-2871,-2866,-2866,-2866,-2860,-2854,-2848,-2839,-2832,-2834,-2834,-2826,-2841,-2844,-2851,-2834,-2808,-2783,-2775,-2748,
+-2723,-2711,-2703,-2700,-2695,-2689,-2684,-2678,-2668,-2656,-2644,-2641,-2641,-2632,-2609,-2597,-2587,-2579,-2573,-2571,
+-2576,-2581,-2578,-2555,-2549,-2530,-2512,-2508,-2509,-2526,-2540,-2556,-2542,-2530,-2521,-2518,-2519,-2522,-2529,-2535,
+-2541,-2561,-2608,-2663,-2653,-2633,-2637,-2638,-2651,-2669,-2680,-2692,-2700,-2705,-2709,-2721,-2734,-2763,-2813,-2896,
+-3011,-3153,-3302,-3394,-3305,-3113,-2973,-2864,-2801,-2823,-2894,-2951,-3005,-3028,-3030,-3013,-3101,-3184,-3237,-3273,
+-3301,-3347,-3378,-3384,-3398,-3439,-3477,-3523,-3590,-3592,-3585,-3588,-3628,-3670,-3695,-3725,-3763,-3795,-3822,-3846,
+-3866,-3875,-3887,-3906,-3929,-3955,-3983,-4012,-4041,-4067,-4091,-4112,-4130,-4143,-4151,-4157,-4161,-4168,-4176,-4189,
+-4205,-4231,-4239,-4229,-4232,-4232,-4227,-4227,-4231,-4231,-4233,-4236,-4239,-4242,-4246,-4246,-4249,-4250,-4252,-4251,
+-4257,-4263,-4259,-4263,-4265,-4264,-4264,-4265,-4259,-4267,-4269,-4258,-4258,-4261,-4271,-4285,-4280,-4262,-4260,-4257,
+-4264,-4246,-4243,-4241,-4234,-4223,-4220,-4216,-4193,-4196,-4194,-4181,-4155,-4162,-4171,-4167,-4166,-4152,-4134,-4130,
+-4126,-4123,-4108,-4095,-4083,-4095,-4101,-4085,-4054,-4026,-4026,-4017,-3984,-3952,-3940,-3931,-3925,-3908,-3885,-3864,
+-3858,-3847,-3837,-3803,-3782,-3781,-3773,-3763,-3730,-3700,-3691,-3690,-3684,-3667,-3647,-3627,-3612,-3591,-3564,-3541,
+-3524,-3507,-3486,-3465,-3434,-3420,-3413,-3410,-3399,-3387,-3367,-3343,-3322,-3315,-3305,-3279,-3256,-3246,-3232,-3219,
+-3201,-3186,-3167,-3147,-3146,-3141,-3136,-3125,-3095,-3065,-3055,-3041,-3020,-2998,-2984,-2972,-2962,-2951,-2938,-2925,
+-2913,-2902,-2889,-2877,-2865,-2849,-2833,-2820,-2806,-2792,-2779,-2770,-2760,-2754,-2752,-2747,-2735,-2727,-2714,-2705,
+-2704,-2703,-2701,-2690,-2685,-2684,-2683,-2683,-2676,-2670,-2665,-2657,-2654,-2648,-2640,-2634,-2627,-2622,-2616,-2617,
+-2612,-2610,-2607,-2601,-2598,-2596,-2593,-2588,-2587,-2588,-2587,-2586,-2585,-2584,-2577,-2573,-2569,-2563,-2560,-2563,
+-2565,-2572,-2568,-2555,-2547,-2548,-2539,-2521,-2507,-2482,-2454,-2434,-2417,-2406,-2393,-2379,-2365,-2352,-2341,-2333,
+-2323,-2315,-2303,-2295,-2290,-2287,-2278,-2274,-2270,-2262,-2253,-2243,-2229,-2215,-2205,-2199,-2191,-2181,-2169,-2155,
+-2143,-2131,-2124,-2116,-2102,-2099,-2081,-2070,-2065,-2065,-2055,-2052,-2051,-2049,-2045,-2044,-2046,-2050,-2052,-2037,
+-2028,-2011,-1999,-1989,-1981,-1967,-1948,-1935,-1929,-1930,-1923,-1927,-1927,-1917,-1928,-1937,-1934,-1927,-1927,-1930,
+-1922,-1915,-1922,-1924,-1927,-1922,-1927,-1936,-1939,-1952,-1976,-1984,-1979,-1963,-1948,-1924,-1892,-1863,-1832,-1832,
+-1842,-1851,-1864,-1876,-1885,-1902,-1915,-1918,-1908,-1896,-1893,-1885,-1877,-1871,-1866,-1863,-1863,-1853,-1830,-1791,
+-1768,-1761,-1754,-1742,-1730,-1719,-1710,-1703,-1695,-1684,-1678,-1675,-1672,-1663,-1641,-1627,-1604,-1590,-1566,-1548,
+-1529,-1524,-1521,-1510,-1496,-1467,-1440,-1437,-1450,-1445,-1443,-1424,-1403,-1386,-1383,-1384,-1371,-1362,-1354,-1348,
+-1329,-1314,-1310,-1300,-1286,-1276,-1258,-1241,-1228,-1206,-1183,-1152,-1110,-1051,-1034,-1053,-1069,-1068,-1058,-1057,
+-1066,-1055,-1021,-1024,-1006,-980,-958,-928,-911,-888,-879,-866,-850,-823,-843,-850,-832,-802,-780,-782,
+-782,-762,-736,-711,-690,-669,-651,-637,-621,-612,-599,-587,-572,-555,-536,-518,-493,-469,-453,-435,
+-406,-364,-325,-288,-268,-259,-247,-226,-210,-204,-188,-170,-145,-116,-90,-62,-36,-16,4,26,
+37,50,71,98,128,156,182,209,241,281,311,326,349,375,408,429,450,482,527,588,
+639,684,727,761,785,821,857,901,938,968,1005,1040,1077,1112,1137,1175,1198,1226,1251,1276,
+1302,1329,1360,1395,1433,1471,1504,1536,1554,1571,1543,1544,1570,1568,1608,1650,1658,1640,1636,1647,
+1669,1709,1749,1790,1835,1867,1920,1956,1967,1956,1928,1893,1908,1931,1929,1972,2032,2053,2088,2096,
+2075,2043,2039,2041,2041,2045,2042,2038,2039,2039,2038,2037,2019,2013,2007,2008,2005,2009,2013,2015,
+2017,2002,1994,1990,1975,1956,1953,1946,1962,1951,1943,1955,1957,1953,1941,1939,1944,1941,1946,1963,
+1976,1992,2011,2025,2036,2045,2043,2056,2067,2042,2037,2031,2025,2017,2011,2005,2004,2007,2003,1993,
+1986,1982,1974,1958,1953,1948,1941,1941,1941,1938,1937,1937,1940,1948,1963,1983,1995,1998,2003,2005,
+2013,2016,2016,2017,2021,2040,2071,2098,2119,2129,2144,2161,2168,2153,2173,2180,2190,2209,2227,2246,
+2248,2244,2248,2264,2287,2314,2332,2350,2372,2386,2403,2404,2419,2415,2414,2422,2408,2393,2382,2365,
+2351,2324,2298,2267,2237,2229,2208,2117,2034,1925,1831,1749,1676,1585,1417,1200,1048,958,1000,1161,
+1338,1490,1616,1722,1793,1843,1871,1896,1914,1915,1929,1948,1949,1952,1959,1971,1993,2003,1992,1989,
+1981,1957,1943,1926,1915,1919,1921,1921,1937,1951,1961,1972,1979,1963,1938,1908,1889,1885,1894,1909,
+1914,1924,1927,1934,1941,1947,1951,1948,1938,1925,1914,1911,1921,1916,1922,1918,1926,1952,1992,2034,
+2071,2100,2119,2123,2113,2098,2099,2106,2111,2121,2129,2127,2116,2101,2086,2071,2053,2039,2044,2054,
+2064,2075,2103,2133,2136,2120,2092,2087,2093,2098,2101,2095,2091,2088,2038,2043,2036,2023,2020,2004,
+1991,1978,1960,1955,1963,1973,1945,1909,1888,1886,1894,1899,1886,1879,1877,1865,1850,1841,1838,1846,
+1850,1860,1872,1909,1957,1948,1952,1955,1950,1939,1936,1941,1939,1933,1942,1950,1960,1963,1958,1971,
+1999,2025,2037,2033,2038,2055,2084,2103,2121,2151,2186,2193,2223,2277,2316,2331,2324,2335,2341,2332,
+2344,2351,2380,2449,2483,2494,2517,2520,2516,2529,2545,2578,2602,2580,2585,2615,2639,2638,2645,2677,
+2717,2728,2730,2735,2726,2733,2727,2734,2743,2762,2799,2797,2800,2799,2819,2859,2885,2854,2839,2849,
+2867,2887,2899,2923,2954,2984,3007,3014,3028,3046,3063,3081,3097,3113,3130,3147,3168,3189,3202,3206,
+3210,3222,3236,3252,3264,3280,3295,3311,3324,3338,3351,3363,3374,3385,3396,3404,3411,3418,3424,3443,
+3462,3477,3490,3515,3541,3559,3577,3593,3607,3621,3636,3658,3670,3674,3686,3703,3714,3720,3721,3724,
+3722,3719,3716,3708,3710,3714,3721,3731,3734,3736,3739,3737,3740,3745,3746,3748,3745,3742,3740,3738,
+3736,3732,3726,3721,3710,3703,3693,3676,3663,3647,3633,3622,3613,3603,3589,3585,3582,3572,3544,3524,
+3527,3546,3542,3541,3536,3525,3521,3512,3507,3507,3508,3508,3508,3508,3504,3499,3493,3484,3473,3464,
+3459,3450,3443,3438,3438,3442,3446,3444,3439,3434,3426,3418,3410,3405,3397,3390,3383,3379,3375,3371,
+3366,3360,3355,3346,3334,3322,3311,3305,3299,3292,3279,3232,3177,3152,3137,3134,3142,3164,3177,3166,
+3168,3187,3209,3198,3184,3171,3160,3145,3129,3108,3091,3075,3055,3044,3040,3039,3006,2990,2981,2966,
+2953,2946,2938,2939,2949,2961,2986,2996,2983,2991,3003,3009,3011,3010,3014,3021,3036,3050,3055,3059,
+3065,3044,2972,2926,2888,2887,2892,2885,2852,2822,2787,2741,2694,2657,2623,2591,2563,2539,2515,2491,
+2464,2432,2384,2319,2261,2203,2133,2067,2001,1924,1839,1767,1729,1703,1660,1604,1552,1519,1500,1490,
+1499,1482,1446,1425,1406,1380,1351,1316,1282,1251,1224,1208,1198,1176,1152,1127,1100,1077,1054,1014,
+976,946,917,889,866,842,814,787,753,721,692,662,632,605,573,541,508,472,440,407,
+372,334,293,246,194,146,105,69,42,12,-14,-40,-66,-91,-122,-146,-165,-193,-223,-255,
+-286,-316,-348,-380,-415,-452,-484,-519,-550,-573,-593,-624,-651,-678,-704,-729,-753,-779,-805,-831,
+-860,-892,-919,-947,-974,-1000,-1029,-1061,-1097,-1132,-1165,-1192,-1219,-1248,-1274,-1302,-1330,-1358,-1387,-1416,
+-1443,-1474,-1508,-1541,-1566,-1600,-1631,-1659,-1687,-1713,-1746,-1770,-1799,-1826,-1847,-1868,-1891,-1916,-1939,-1960,
+-1989,-2014,-2040,-2064,-2088,-2105,-2126,-2146,-2165,-2189,-2210,-2230,-2246,-2271,-2295,-2318,-2338,-2357,-2379,-2399,
+-2417,-2432,-2449,-2467,-2485,-2502,-2518,-2534,-2552,-2571,-2587,-2606,-2620,-2638,-2654,-2670,-2689,-2706,-2722,-2737,
+-2751,-2761,-2772,-2781,-2793,-2803,-2813,-2822,-2834,-2843,-2853,-2861,-2869,-2875,-2879,-2883,-2885,-2890,-2894,-2897,
+-2898,-2900,-2903,-2906,-2907,-2909,-2913,-2915,-2914,-2915,-2915,-2916,-2917,-2921,-2921,-2927,-2931,-2929,-2930,-2926,
+-2917,-2923,-2922,-2918,-2915,-2915,-2912,-2898,-2888,-2883,-2880,-2878,-2877,-2885,-2891,-2899,-2888,-2868,-2838,-2824,
+-2804,-2781,-2766,-2760,-2754,-2748,-2744,-2740,-2729,-2722,-2713,-2708,-2709,-2702,-2696,-2675,-2660,-2648,-2640,-2632,
+-2625,-2627,-2629,-2634,-2622,-2599,-2592,-2571,-2552,-2543,-2542,-2565,-2573,-2587,-2576,-2566,-2561,-2563,-2565,-2574,
+-2576,-2575,-2587,-2622,-2699,-2710,-2690,-2684,-2686,-2689,-2708,-2723,-2732,-2744,-2750,-2752,-2756,-2763,-2783,-2825,
+-2886,-2972,-3116,-3258,-3392,-3397,-3236,-3093,-3004,-2949,-2952,-3009,-3052,-3099,-3141,-3154,-3152,-3150,-3223,-3288,
+-3327,-3359,-3411,-3453,-3467,-3479,-3489,-3522,-3567,-3624,-3637,-3635,-3639,-3675,-3714,-3749,-3781,-3815,-3845,-3875,
+-3900,-3920,-3934,-3947,-3964,-3986,-4013,-4039,-4069,-4097,-4123,-4148,-4164,-4180,-4194,-4209,-4219,-4225,-4234,-4252,
+-4262,-4272,-4282,-4300,-4297,-4297,-4295,-4294,-4291,-4289,-4288,-4287,-4289,-4296,-4300,-4304,-4313,-4316,-4314,-4318,
+-4320,-4320,-4322,-4322,-4321,-4327,-4331,-4327,-4319,-4306,-4303,-4314,-4323,-4313,-4306,-4318,-4332,-4337,-4324,-4325,
+-4324,-4306,-4290,-4298,-4301,-4286,-4278,-4271,-4261,-4256,-4244,-4240,-4234,-4230,-4219,-4207,-4184,-4179,-4176,-4196,
+-4197,-4172,-4165,-4156,-4136,-4126,-4103,-4083,-4103,-4115,-4097,-4067,-4052,-4048,-4039,-4019,-3989,-3954,-3931,-3916,
+-3894,-3879,-3877,-3873,-3857,-3847,-3829,-3806,-3809,-3810,-3791,-3769,-3750,-3740,-3729,-3715,-3687,-3664,-3643,-3622,
+-3595,-3572,-3567,-3552,-3522,-3504,-3489,-3466,-3441,-3421,-3399,-3384,-3393,-3387,-3376,-3352,-3335,-3321,-3303,-3293,
+-3279,-3260,-3244,-3231,-3211,-3184,-3178,-3171,-3154,-3140,-3123,-3106,-3092,-3076,-3063,-3041,-3018,-3007,-2993,-2974,
+-2969,-2960,-2948,-2937,-2924,-2910,-2901,-2889,-2876,-2864,-2847,-2832,-2820,-2812,-2804,-2800,-2795,-2784,-2771,-2764,
+-2765,-2765,-2760,-2753,-2747,-2740,-2733,-2730,-2728,-2727,-2725,-2718,-2712,-2710,-2702,-2695,-2690,-2681,-2675,-2669,
+-2662,-2658,-2660,-2655,-2656,-2648,-2642,-2640,-2635,-2630,-2626,-2624,-2619,-2617,-2621,-2617,-2614,-2607,-2598,-2590,
+-2588,-2591,-2589,-2588,-2584,-2576,-2574,-2582,-2585,-2588,-2583,-2586,-2583,-2573,-2555,-2529,-2493,-2456,-2425,-2409,
+-2398,-2386,-2373,-2357,-2353,-2346,-2334,-2326,-2314,-2309,-2306,-2301,-2291,-2280,-2272,-2262,-2257,-2253,-2238,-2234,
+-2227,-2212,-2201,-2185,-2167,-2155,-2142,-2131,-2120,-2108,-2100,-2092,-2094,-2098,-2102,-2101,-2099,-2096,-2095,-2091,
+-2092,-2074,-2063,-2052,-2043,-2031,-2022,-2007,-2000,-1991,-1986,-1978,-1970,-1966,-1961,-1961,-1960,-1977,-1981,-1975,
+-1978,-1978,-1972,-1965,-1957,-1948,-1946,-1954,-1951,-1951,-1963,-1990,-2012,-2029,-2035,-2027,-2021,-2010,-2016,-2007,
+-1983,-1945,-1909,-1892,-1886,-1883,-1892,-1907,-1921,-1925,-1915,-1903,-1887,-1875,-1870,-1870,-1867,-1864,-1875,-1893,
+-1894,-1881,-1856,-1827,-1802,-1773,-1749,-1733,-1725,-1718,-1710,-1691,-1686,-1686,-1680,-1676,-1661,-1638,-1618,-1599,
+-1580,-1565,-1558,-1550,-1536,-1526,-1513,-1504,-1495,-1497,-1497,-1487,-1470,-1452,-1427,-1414,-1409,-1407,-1400,-1387,
+-1370,-1346,-1344,-1338,-1323,-1312,-1302,-1283,-1252,-1220,-1212,-1208,-1186,-1156,-1084,-1007,-1034,-1048,-1056,-1056,
+-1049,-1054,-1059,-1039,-1037,-1028,-1008,-999,-984,-971,-956,-935,-911,-876,-846,-855,-855,-846,-840,-833,
+-814,-792,-763,-733,-710,-701,-683,-669,-662,-656,-639,-619,-601,-587,-574,-563,-549,-534,-510,-482,
+-448,-413,-382,-353,-326,-315,-295,-268,-239,-234,-232,-212,-183,-160,-133,-108,-86,-63,-43,-32,
+-18,2,22,45,70,99,124,154,188,226,264,294,300,318,364,397,414,434,463,495,
+534,574,625,684,742,788,823,861,897,927,971,1017,1056,1086,1119,1155,1192,1218,1237,1270,
+1291,1326,1353,1386,1419,1450,1476,1493,1522,1580,1614,1615,1649,1659,1674,1679,1680,1684,1696,1716,
+1731,1708,1726,1788,1838,1862,1902,1913,1909,1905,1915,1935,1970,2014,2040,2026,2014,2006,2026,2057,
+2079,2068,2056,2056,2066,2061,2059,2062,2061,2064,2063,2057,2056,2049,2041,2034,2031,2030,2022,2018,
+2019,2023,2019,2014,2013,2007,1991,1968,1953,1943,1937,1957,1973,1970,1968,1967,1972,1969,1963,1970,
+1975,2002,2018,2030,2042,2060,2075,2093,2113,2104,2089,2080,2075,2061,2058,2047,2036,2026,2017,2006,
+2004,2006,2010,1995,1982,1976,1967,1959,1958,1962,1961,1957,1965,1972,1974,1978,1984,1991,1995,2008,
+2015,2023,2023,2026,2031,2039,2058,2096,2126,2142,2151,2155,2166,2192,2202,2174,2200,2203,2215,2213,
+2219,2254,2298,2308,2310,2328,2336,2350,2364,2385,2394,2400,2416,2432,2427,2417,2427,2419,2409,2395,
+2386,2370,2345,2307,2272,2245,2216,2187,2158,2117,2025,1944,1880,1812,1714,1505,1271,1088,958,970,
+1115,1305,1490,1618,1717,1791,1857,1905,1942,1972,1993,1995,1982,1973,1980,1977,1963,1971,1991,1986,
+1992,1998,1995,1997,2011,2014,2005,2004,1993,1992,1998,1985,1966,1951,1929,1897,1862,1833,1811,1803,
+1810,1823,1839,1847,1850,1855,1855,1857,1848,1848,1863,1877,1889,1887,1911,1942,1954,1965,1976,1975,
+1980,1996,1997,1983,1985,1991,1994,2003,2016,2023,2038,2050,2056,2061,2057,2050,2031,2017,2019,2009,
+1997,2009,2026,2038,2035,2023,2008,1994,1998,2005,2009,2015,2028,2028,2038,1959,1951,1959,1960,1949,
+1949,1944,1928,1919,1907,1887,1890,1891,1869,1846,1839,1820,1812,1815,1828,1831,1829,1832,1823,1813,
+1812,1820,1846,1851,1860,1875,1883,1889,1899,1907,1917,1937,1948,1917,1902,1916,1928,1941,1950,1961,
+1979,2006,2027,2034,2041,2066,2090,2099,2113,2139,2166,2181,2196,2232,2275,2300,2317,2334,2351,2346,
+2350,2369,2370,2368,2426,2457,2467,2493,2510,2507,2531,2551,2566,2563,2561,2571,2596,2618,2623,2622,
+2638,2673,2704,2703,2703,2704,2718,2724,2726,2733,2741,2764,2782,2790,2803,2837,2838,2802,2802,2821,
+2847,2867,2875,2894,2927,2957,2977,2985,2999,3015,3026,3036,3049,3064,3081,3099,3119,3136,3148,3150,
+3158,3171,3186,3199,3214,3231,3249,3264,3279,3293,3305,3320,3333,3346,3354,3365,3373,3378,3380,3391,
+3407,3418,3425,3445,3471,3489,3507,3524,3540,3557,3574,3592,3604,3611,3630,3647,3658,3666,3673,3678,
+3679,3678,3672,3675,3670,3671,3675,3683,3688,3694,3700,3704,3705,3706,3704,3704,3706,3706,3703,3704,
+3703,3700,3696,3688,3680,3668,3654,3638,3624,3612,3603,3587,3570,3561,3555,3548,3539,3519,3496,3488,
+3503,3523,3515,3507,3504,3498,3492,3487,3484,3483,3484,3486,3486,3484,3481,3478,3472,3465,3458,3451,
+3441,3435,3430,3433,3422,3418,3424,3425,3425,3419,3412,3406,3401,3395,3389,3383,3376,3369,3364,3357,
+3350,3340,3330,3323,3319,3307,3295,3286,3272,3259,3239,3203,3174,3163,3157,3158,3185,3235,3221,3190,
+3185,3197,3213,3227,3228,3219,3208,3196,3180,3162,3139,3119,3096,3058,3028,3012,3009,3007,3004,2995,
+2963,2945,2937,2934,2931,2933,2940,2950,2966,2995,3025,3044,3048,3046,3050,3055,3059,3063,3067,3067,
+3068,3067,3060,3052,3034,2951,2908,2914,2905,2871,2847,2805,2771,2732,2694,2644,2598,2564,2537,2517,
+2496,2477,2449,2406,2346,2281,2217,2146,2078,2013,1954,1885,1797,1730,1694,1672,1629,1571,1519,1481,
+1457,1451,1446,1421,1387,1354,1335,1318,1294,1265,1245,1218,1179,1158,1139,1121,1103,1083,1058,1028,
+991,954,918,885,858,830,802,774,747,717,687,656,628,594,567,539,509,476,444,417,
+383,352,310,265,215,166,126,91,62,32,-2,-33,-60,-85,-105,-130,-152,-180,-211,-240,
+-274,-305,-335,-361,-396,-430,-465,-500,-537,-571,-600,-623,-647,-673,-699,-721,-743,-765,-788,-809,
+-836,-869,-897,-927,-953,-981,-1011,-1041,-1075,-1111,-1147,-1181,-1208,-1233,-1253,-1279,-1310,-1337,-1365,-1389,
+-1413,-1446,-1480,-1520,-1547,-1575,-1606,-1636,-1666,-1693,-1721,-1751,-1776,-1805,-1832,-1857,-1880,-1900,-1925,-1950,
+-1977,-1997,-2024,-2052,-2080,-2101,-2120,-2141,-2160,-2182,-2204,-2227,-2247,-2268,-2292,-2313,-2336,-2355,-2375,-2400,
+-2418,-2435,-2453,-2472,-2489,-2507,-2524,-2542,-2558,-2575,-2591,-2609,-2625,-2642,-2658,-2675,-2693,-2710,-2726,-2740,
+-2760,-2777,-2789,-2801,-2810,-2820,-2833,-2843,-2855,-2864,-2871,-2882,-2893,-2908,-2920,-2925,-2926,-2931,-2934,-2937,
+-2941,-2941,-2942,-2944,-2944,-2945,-2948,-2948,-2951,-2954,-2957,-2959,-2962,-2965,-2966,-2967,-2964,-2960,-2969,-2972,
+-2975,-2977,-2979,-2976,-2971,-2973,-2969,-2964,-2954,-2949,-2941,-2935,-2928,-2925,-2922,-2934,-2945,-2941,-2927,-2905,
+-2883,-2877,-2856,-2834,-2826,-2819,-2811,-2804,-2796,-2788,-2781,-2775,-2766,-2757,-2755,-2758,-2747,-2727,-2713,-2701,
+-2691,-2683,-2680,-2678,-2680,-2683,-2660,-2653,-2640,-2608,-2592,-2592,-2598,-2619,-2636,-2626,-2611,-2590,-2601,-2606,
+-2615,-2619,-2619,-2618,-2640,-2708,-2767,-2753,-2743,-2735,-2737,-2752,-2766,-2773,-2783,-2791,-2796,-2792,-2794,-2811,
+-2848,-2894,-2964,-3069,-3182,-3330,-3440,-3368,-3237,-3136,-3094,-3079,-3108,-3149,-3190,-3227,-3254,-3270,-3291,-3294,
+-3287,-3314,-3386,-3466,-3508,-3545,-3559,-3548,-3570,-3614,-3662,-3681,-3683,-3688,-3721,-3763,-3795,-3823,-3856,-3885,
+-3908,-3935,-3960,-3982,-4002,-4020,-4038,-4063,-4089,-4119,-4149,-4171,-4193,-4211,-4226,-4238,-4253,-4265,-4280,-4295,
+-4306,-4319,-4340,-4349,-4352,-4354,-4354,-4353,-4351,-4349,-4350,-4352,-4356,-4363,-4368,-4368,-4371,-4379,-4389,-4395,
+-4394,-4385,-4378,-4382,-4387,-4384,-4376,-4377,-4380,-4373,-4364,-4362,-4362,-4370,-4380,-4376,-4367,-4365,-4371,-4385,
+-4381,-4362,-4350,-4351,-4356,-4341,-4325,-4317,-4299,-4282,-4277,-4280,-4280,-4275,-4269,-4270,-4275,-4274,-4251,-4226,
+-4219,-4210,-4197,-4198,-4201,-4181,-4161,-4160,-4157,-4129,-4107,-4111,-4110,-4088,-4075,-4071,-4076,-4069,-4038,-4006,
+-3997,-3977,-3956,-3954,-3941,-3922,-3896,-3871,-3849,-3844,-3835,-3832,-3823,-3811,-3792,-3775,-3759,-3745,-3731,-3715,
+-3699,-3680,-3654,-3624,-3606,-3587,-3565,-3543,-3523,-3508,-3493,-3471,-3451,-3428,-3410,-3399,-3387,-3381,-3375,-3366,
+-3350,-3332,-3315,-3295,-3279,-3269,-3245,-3224,-3217,-3208,-3195,-3183,-3168,-3147,-3133,-3115,-3094,-3073,-3060,-3044,
+-3021,-3007,-2997,-2981,-2967,-2957,-2951,-2931,-2925,-2917,-2909,-2896,-2888,-2878,-2866,-2859,-2850,-2841,-2833,-2830,
+-2825,-2822,-2822,-2815,-2809,-2802,-2795,-2789,-2781,-2775,-2769,-2765,-2764,-2757,-2761,-2757,-2752,-2752,-2744,-2735,
+-2726,-2720,-2716,-2713,-2714,-2709,-2710,-2700,-2694,-2690,-2684,-2681,-2676,-2671,-2668,-2661,-2658,-2653,-2646,-2637,
+-2631,-2629,-2623,-2620,-2615,-2618,-2610,-2604,-2597,-2590,-2587,-2586,-2585,-2579,-2585,-2599,-2615,-2633,-2632,-2612,
+-2574,-2542,-2505,-2459,-2428,-2413,-2403,-2394,-2386,-2378,-2368,-2357,-2344,-2330,-2321,-2313,-2298,-2290,-2280,-2276,
+-2280,-2287,-2280,-2275,-2255,-2236,-2224,-2207,-2192,-2173,-2161,-2151,-2146,-2146,-2149,-2147,-2147,-2150,-2152,-2152,
+-2147,-2143,-2135,-2125,-2110,-2091,-2078,-2076,-2071,-2058,-2046,-2036,-2031,-2025,-2019,-2012,-2007,-2010,-1999,-2000,
+-2001,-1999,-2003,-2010,-2005,-2000,-1987,-1974,-1965,-1969,-1986,-1992,-2007,-2027,-2040,-2060,-2074,-2075,-2080,-2086,
+-2081,-2087,-2087,-2081,-2065,-2030,-1984,-1950,-1940,-1941,-1941,-1936,-1928,-1920,-1909,-1900,-1889,-1880,-1877,-1874,
+-1874,-1885,-1899,-1914,-1914,-1893,-1865,-1837,-1807,-1777,-1763,-1747,-1725,-1699,-1693,-1689,-1689,-1685,-1674,-1657,
+-1633,-1613,-1601,-1591,-1571,-1556,-1546,-1539,-1529,-1526,-1526,-1528,-1527,-1515,-1499,-1484,-1465,-1454,-1442,-1431,
+-1419,-1398,-1391,-1393,-1389,-1366,-1356,-1351,-1333,-1292,-1246,-1205,-1177,-1149,-1096,-1002,-1014,-1081,-1107,-1118,
+-1117,-1108,-1098,-1091,-1081,-1073,-1058,-1045,-1027,-1013,-1003,-987,-970,-954,-932,-906,-889,-877,-863,-844,
+-842,-826,-821,-810,-783,-760,-750,-732,-725,-709,-677,-653,-630,-610,-595,-581,-570,-556,-544,-531,
+-510,-485,-453,-417,-374,-334,-324,-319,-291,-270,-261,-247,-227,-213,-188,-162,-141,-123,-103,-86,
+-74,-58,-19,-1,19,45,74,105,137,168,203,242,272,283,315,345,365,388,417,460,
+514,524,540,582,635,704,765,814,855,897,940,968,1006,1048,1086,1132,1163,1200,1197,1240,
+1283,1294,1326,1359,1401,1442,1473,1504,1530,1541,1545,1572,1642,1682,1683,1696,1707,1716,1723,1726,
+1729,1744,1761,1785,1816,1841,1869,1892,1898,1929,2010,2057,2068,2062,2048,2035,2014,1998,1983,1985,
+2007,2016,2029,2048,2053,2054,2063,2074,2079,2083,2087,2084,2075,2069,2063,2060,2055,2042,2034,2033,
+2028,2033,2039,2040,2033,2027,2017,2001,1986,1974,1976,1985,2004,2006,1996,1980,1976,1980,1985,1993,
+1999,2005,2022,2037,2056,2066,2073,2082,2101,2113,2116,2113,2101,2090,2076,2065,2052,2040,2024,2016,
+2012,2001,2002,2003,1995,1974,1964,1960,1961,1972,1969,1968,1974,1978,1984,1990,1995,2000,2002,2005,
+2014,2027,2032,2033,2035,2041,2055,2075,2112,2141,2157,2166,2171,2179,2191,2208,2203,2217,2217,2230,
+2235,2235,2261,2283,2299,2310,2334,2343,2363,2381,2395,2409,2421,2421,2432,2420,2438,2435,2421,2415,
+2399,2384,2368,2345,2311,2285,2257,2239,2263,2299,2239,2101,2015,1975,1952,1832,1540,1280,1088,958,
+963,1110,1294,1462,1584,1684,1771,1841,1882,1918,1943,1972,1996,2018,2027,2026,2027,2027,2023,2034,
+2036,2026,2023,2025,2037,2046,2042,2045,2050,2043,2019,2024,2080,2114,2102,2074,2027,1983,1954,1946,
+1935,1929,1939,1954,1963,1962,1961,1957,1943,1943,1961,1979,1966,1959,1954,1950,1952,1960,1964,1963,
+1973,1986,1988,1967,1947,1942,1940,1935,1926,1938,1948,1939,1943,1953,1961,1956,1957,1958,1963,1973,
+1966,1955,1949,1954,1958,1958,1956,1961,1971,1982,1976,1957,1958,1958,1959,1959,1884,1880,1854,1849,
+1864,1879,1873,1877,1870,1850,1831,1828,1852,1847,1820,1802,1778,1759,1761,1772,1784,1797,1804,1793,
+1790,1790,1790,1798,1813,1823,1830,1843,1863,1874,1876,1879,1883,1879,1878,1888,1899,1914,1933,1953,
+1972,1995,2013,2029,2045,2067,2093,2112,2128,2145,2169,2192,2207,2233,2265,2292,2291,2289,2310,2357,
+2393,2400,2404,2388,2382,2424,2439,2448,2471,2486,2492,2525,2553,2567,2572,2590,2586,2586,2606,2617,
+2616,2624,2661,2668,2668,2672,2678,2693,2706,2718,2740,2755,2768,2781,2796,2822,2803,2765,2772,2797,
+2824,2841,2849,2869,2898,2928,2946,2953,2962,2979,2993,3004,3015,3023,3029,3044,3059,3077,3090,3095,
+3097,3112,3127,3139,3152,3171,3190,3208,3229,3245,3258,3271,3286,3299,3313,3322,3332,3340,3344,3349,
+3358,3368,3377,3391,3409,3424,3441,3456,3471,3488,3506,3525,3537,3550,3571,3586,3596,3606,3620,3629,
+3633,3635,3636,3632,3631,3633,3636,3643,3651,3656,3660,3660,3662,3665,3667,3667,3667,3668,3669,3667,
+3665,3658,3656,3647,3644,3638,3628,3615,3603,3585,3566,3550,3540,3535,3526,3511,3489,3472,3459,3461,
+3475,3486,3483,3473,3471,3472,3470,3466,3463,3461,3461,3461,3464,3462,3459,3454,3446,3438,3431,3422,
+3415,3409,3407,3402,3400,3396,3400,3402,3402,3401,3398,3393,3389,3386,3381,3373,3367,3361,3354,3342,
+3334,3328,3319,3308,3299,3291,3282,3270,3254,3239,3215,3188,3170,3166,3161,3156,3161,3186,3201,3183,
+3174,3178,3191,3208,3222,3226,3220,3210,3197,3178,3157,3142,3149,3146,3100,3028,2997,2990,2984,2973,
+2961,2947,2935,2927,2924,2919,2918,2920,2933,2971,3008,3030,3045,3052,3059,3068,3074,3076,3075,3073,
+3067,3055,3034,3014,3018,3012,2979,2922,2901,2886,2849,2827,2779,2764,2754,2721,2672,2615,2569,2537,
+2520,2507,2490,2472,2441,2393,2335,2271,2206,2135,2071,2007,1940,1854,1763,1701,1664,1630,1575,1517,
+1469,1433,1412,1402,1387,1368,1347,1321,1293,1269,1249,1231,1203,1160,1115,1078,1064,1054,1035,1011,
+988,960,927,892,858,828,800,772,741,710,678,649,620,593,565,540,515,489,459,428,
+393,353,312,271,225,185,144,109,76,45,15,-18,-49,-75,-99,-123,-144,-170,-197,-224,
+-252,-286,-318,-350,-382,-416,-449,-483,-522,-560,-594,-623,-647,-672,-699,-723,-741,-756,-771,-794,
+-817,-841,-871,-901,-930,-957,-986,-1017,-1052,-1090,-1129,-1157,-1180,-1219,-1251,-1260,-1282,-1316,-1345,-1371,
+-1400,-1432,-1464,-1501,-1532,-1558,-1584,-1614,-1645,-1673,-1701,-1728,-1753,-1781,-1812,-1841,-1866,-1892,-1915,-1940,
+-1965,-1986,-2010,-2039,-2070,-2097,-2114,-2134,-2157,-2179,-2203,-2224,-2245,-2269,-2293,-2314,-2334,-2357,-2378,-2395,
+-2419,-2439,-2457,-2477,-2495,-2510,-2527,-2547,-2569,-2585,-2599,-2611,-2630,-2647,-2668,-2683,-2700,-2718,-2734,-2749,
+-2763,-2778,-2799,-2817,-2832,-2845,-2855,-2867,-2878,-2887,-2894,-2902,-2917,-2930,-2943,-2956,-2966,-2972,-2975,-2978,
+-2982,-2988,-2991,-2993,-2995,-2997,-2997,-2994,-2995,-2997,-3000,-3004,-3007,-3009,-3010,-3011,-3013,-3017,-3019,-3019,
+-3017,-3022,-3025,-3026,-3025,-3024,-3021,-3018,-3015,-3011,-3003,-2999,-2991,-2977,-2969,-2973,-2979,-2988,-2992,-2977,
+-2958,-2935,-2934,-2921,-2900,-2886,-2878,-2874,-2869,-2862,-2852,-2845,-2836,-2828,-2819,-2810,-2822,-2813,-2799,-2789,
+-2771,-2756,-2743,-2732,-2730,-2730,-2741,-2742,-2719,-2705,-2685,-2662,-2658,-2661,-2664,-2666,-2670,-2649,-2642,-2642,
+-2648,-2655,-2658,-2652,-2647,-2663,-2698,-2784,-2808,-2797,-2786,-2788,-2798,-2806,-2814,-2817,-2826,-2834,-2835,-2837,
+-2847,-2865,-2898,-2959,-3024,-3100,-3228,-3399,-3499,-3430,-3307,-3211,-3189,-3194,-3207,-3237,-3277,-3323,-3359,-3377,
+-3365,-3340,-3320,-3421,-3486,-3544,-3592,-3615,-3612,-3627,-3659,-3700,-3733,-3741,-3743,-3767,-3816,-3852,-3877,-3903,
+-3927,-3948,-3969,-4001,-4027,-4046,-4064,-4081,-4101,-4123,-4138,-4180,-4207,-4227,-4248,-4265,-4279,-4297,-4313,-4327,
+-4344,-4360,-4379,-4405,-4414,-4403,-4412,-4413,-4415,-4414,-4417,-4418,-4423,-4426,-4431,-4442,-4448,-4439,-4442,-4461,
+-4473,-4475,-4469,-4460,-4454,-4450,-4459,-4454,-4436,-4427,-4433,-4428,-4424,-4418,-4414,-4433,-4437,-4420,-4401,-4391,
+-4403,-4424,-4424,-4411,-4397,-4378,-4368,-4373,-4369,-4342,-4327,-4316,-4300,-4298,-4296,-4295,-4292,-4289,-4286,-4282,
+-4274,-4268,-4250,-4246,-4242,-4218,-4204,-4203,-4192,-4181,-4180,-4179,-4167,-4143,-4123,-4098,-4065,-4061,-4077,-4076,
+-4071,-4063,-4028,-4003,-3984,-3981,-3966,-3954,-3946,-3929,-3907,-3889,-3867,-3851,-3842,-3834,-3828,-3821,-3798,-3783,
+-3769,-3755,-3737,-3719,-3695,-3676,-3666,-3640,-3609,-3591,-3566,-3557,-3540,-3514,-3491,-3471,-3449,-3428,-3417,-3405,
+-3395,-3386,-3372,-3361,-3346,-3332,-3323,-3311,-3284,-3268,-3250,-3238,-3227,-3217,-3203,-3189,-3173,-3155,-3136,-3117,
+-3100,-3089,-3075,-3063,-3046,-3024,-3006,-2994,-2982,-2968,-2957,-2947,-2938,-2935,-2926,-2919,-2913,-2906,-2895,-2888,
+-2881,-2879,-2876,-2875,-2870,-2865,-2855,-2845,-2841,-2835,-2830,-2827,-2823,-2815,-2811,-2801,-2792,-2791,-2788,-2787,
+-2787,-2786,-2781,-2777,-2774,-2770,-2764,-2759,-2757,-2758,-2753,-2746,-2740,-2734,-2729,-2712,-2711,-2712,-2703,-2692,
+-2685,-2674,-2664,-2659,-2657,-2656,-2653,-2654,-2656,-2645,-2632,-2622,-2616,-2608,-2602,-2599,-2599,-2604,-2614,-2624,
+-2630,-2633,-2639,-2639,-2633,-2613,-2589,-2555,-2520,-2479,-2446,-2432,-2417,-2399,-2382,-2370,-2359,-2351,-2346,-2339,
+-2329,-2320,-2316,-2312,-2302,-2291,-2289,-2282,-2278,-2261,-2245,-2221,-2207,-2199,-2200,-2194,-2192,-2195,-2193,-2198,
+-2204,-2204,-2200,-2184,-2176,-2167,-2147,-2138,-2135,-2125,-2117,-2108,-2094,-2078,-2071,-2064,-2056,-2056,-2045,-2041,
+-2045,-2045,-2054,-2053,-2046,-2045,-2041,-2034,-2033,-2027,-2017,-2013,-2020,-2041,-2059,-2082,-2097,-2106,-2121,-2134,
+-2144,-2140,-2140,-2146,-2143,-2138,-2136,-2129,-2112,-2082,-2046,-2016,-1996,-1982,-1970,-1956,-1939,-1927,-1921,-1911,
+-1903,-1901,-1895,-1887,-1896,-1905,-1913,-1920,-1915,-1904,-1895,-1870,-1827,-1781,-1743,-1710,-1689,-1689,-1695,-1686,
+-1655,-1587,-1608,-1632,-1622,-1611,-1601,-1581,-1568,-1556,-1550,-1548,-1552,-1543,-1538,-1535,-1523,-1511,-1499,-1487,
+-1470,-1443,-1413,-1406,-1396,-1399,-1380,-1386,-1383,-1366,-1344,-1326,-1295,-1266,-1224,-1153,-1050,-1078,-1117,-1132,
+-1130,-1129,-1124,-1114,-1099,-1086,-1082,-1082,-1077,-1058,-1041,-1036,-1029,-1018,-999,-973,-941,-911,-888,-876,
+-876,-864,-852,-856,-848,-836,-818,-799,-769,-739,-708,-686,-670,-651,-630,-614,-598,-580,-564,-548,
+-531,-517,-500,-482,-460,-438,-408,-376,-340,-314,-308,-286,-261,-247,-225,-209,-189,-169,-151,-134,
+-123,-109,-92,-71,-42,-14,17,52,88,121,153,187,221,249,280,309,323,345,375,416,
+461,489,519,548,581,606,639,698,765,826,880,925,962,1003,1041,1085,1123,1163,1201,1232,
+1253,1275,1297,1323,1356,1390,1428,1475,1512,1547,1577,1597,1602,1617,1647,1675,1697,1704,1711,1721,
+1730,1745,1760,1778,1794,1819,1846,1875,1898,1936,1968,2028,2049,2041,2017,1991,1980,1963,1951,1951,
+1972,1988,2005,2024,2043,2059,2069,2079,2081,2091,2094,2099,2098,2096,2092,2086,2080,2071,2057,2045,
+2039,2038,2048,2057,2054,2045,2042,2037,2028,2021,2013,2021,2027,2029,2023,2014,1997,1990,1996,2004,
+2018,2022,2030,2044,2050,2055,2066,2082,2099,2126,2129,2118,2110,2096,2084,2074,2070,2057,2050,2040,
+2043,2036,2012,1989,1975,1967,1960,1949,1953,1963,1959,1955,1963,1977,1981,1993,2000,2007,2019,2027,
+2035,2037,2040,2044,2045,2049,2056,2070,2088,2120,2154,2170,2177,2176,2187,2190,2202,2217,2230,2234,
+2219,2241,2251,2262,2278,2281,2294,2318,2347,2372,2380,2391,2403,2415,2428,2437,2418,2429,2431,2423,
+2416,2408,2383,2364,2338,2308,2281,2262,2238,2226,2201,2135,2045,1978,1955,1949,1762,1475,1233,1054,
+949,969,1117,1317,1484,1614,1707,1781,1834,1875,1903,1925,1950,1964,1989,2008,2014,2022,2037,2046,
+2058,2062,2059,2072,2086,2104,2133,2157,2174,2147,2096,2060,2102,2156,2160,2154,2144,2136,2116,2094,
+2082,2067,2047,2055,2031,2015,2006,1997,2006,1998,1991,1996,2004,2004,2007,2009,2009,2000,1994,1983,
+1965,1953,1948,1941,1927,1909,1895,1876,1871,1871,1882,1906,1921,1922,1913,1915,1907,1892,1884,1882,
+1865,1860,1863,1884,1900,1904,1900,1905,1903,1887,1900,1897,1885,1880,1880,1881,1884,1814,1820,1817,
+1810,1785,1756,1767,1790,1794,1789,1755,1745,1769,1788,1783,1778,1768,1767,1764,1757,1754,1755,1766,
+1768,1767,1767,1775,1787,1798,1802,1814,1835,1845,1852,1861,1869,1878,1887,1903,1916,1923,1936,1952,
+1969,1991,2009,2030,2053,2077,2099,2119,2137,2158,2185,2202,2206,2220,2240,2260,2278,2282,2299,2340,
+2366,2372,2373,2377,2373,2412,2442,2449,2460,2466,2469,2490,2531,2552,2554,2550,2569,2597,2620,2619,
+2608,2602,2631,2659,2659,2654,2652,2669,2687,2694,2705,2728,2758,2781,2790,2802,2766,2737,2745,2772,
+2798,2812,2823,2844,2873,2899,2919,2925,2932,2944,2958,2970,2979,2989,2997,3003,3014,3026,3034,3038,
+3035,3045,3060,3071,3081,3099,3120,3144,3165,3187,3207,3224,3238,3252,3267,3280,3292,3300,3305,3308,
+3317,3330,3339,3350,3366,3378,3389,3400,3412,3426,3444,3464,3478,3489,3508,3525,3536,3549,3565,3583,
+3590,3595,3604,3609,3610,3609,3607,3608,3610,3613,3617,3621,3628,3625,3622,3624,3623,3626,3628,3630,
+3632,3629,3626,3618,3609,3601,3590,3582,3572,3556,3541,3529,3518,3506,3492,3474,3448,3426,3427,3438,
+3445,3440,3440,3440,3439,3447,3450,3449,3448,3445,3445,3445,3442,3441,3439,3436,3429,3418,3410,3400,
+3392,3384,3379,3378,3373,3372,3372,3375,3375,3375,3377,3376,3372,3369,3366,3362,3356,3347,3343,3336,
+3329,3320,3308,3299,3287,3277,3268,3253,3238,3221,3200,3178,3165,3152,3150,3156,3142,3138,3160,3186,
+3170,3161,3168,3182,3205,3218,3212,3201,3186,3168,3154,3146,3151,3133,3094,3040,3001,2983,2976,2975,
+2959,2943,2933,2923,2914,2907,2901,2899,2905,2927,2968,3002,3012,3010,3012,3005,3000,3006,3024,3038,
+3033,3005,2972,2953,2940,2934,2914,2887,2862,2827,2802,2777,2750,2709,2671,2657,2649,2628,2594,2561,
+2530,2503,2494,2493,2492,2474,2440,2395,2339,2276,2210,2138,2058,1989,1913,1813,1714,1643,1607,1564,
+1509,1456,1413,1380,1357,1336,1317,1301,1284,1264,1242,1219,1197,1171,1143,1109,1063,1019,989,977,
+969,949,924,897,867,839,808,776,747,712,673,641,613,585,559,534,508,482,455,426,
+390,358,324,286,244,203,164,125,92,59,28,-4,-37,-67,-92,-121,-145,-169,-192,-222,
+-256,-286,-306,-337,-374,-408,-439,-473,-509,-548,-583,-617,-647,-669,-692,-716,-737,-755,-770,-790,
+-807,-829,-853,-876,-904,-936,-967,-997,-1023,-1068,-1106,-1135,-1146,-1171,-1223,-1251,-1273,-1301,-1331,-1358,
+-1387,-1416,-1446,-1481,-1516,-1539,-1567,-1597,-1625,-1653,-1678,-1707,-1735,-1761,-1791,-1823,-1852,-1881,-1907,-1932,
+-1957,-1983,-2007,-2028,-2053,-2087,-2107,-2129,-2155,-2178,-2198,-2220,-2244,-2263,-2289,-2314,-2334,-2355,-2377,-2394,
+-2415,-2440,-2461,-2478,-2498,-2518,-2536,-2551,-2570,-2589,-2605,-2617,-2631,-2649,-2669,-2689,-2709,-2726,-2743,-2756,
+-2768,-2786,-2802,-2818,-2841,-2863,-2881,-2893,-2904,-2915,-2923,-2933,-2945,-2956,-2963,-2970,-2981,-2999,-3003,-3007,
+-3020,-3031,-3035,-3041,-3046,-3047,-3049,-3049,-3049,-3051,-3052,-3056,-3058,-3062,-3065,-3064,-3062,-3063,-3065,-3067,
+-3067,-3068,-3068,-3072,-3075,-3079,-3080,-3079,-3078,-3073,-3068,-3061,-3054,-3048,-3048,-3044,-3031,-3029,-3044,-3048,
+-3031,-3018,-3000,-2992,-2987,-2967,-2946,-2934,-2932,-2930,-2921,-2916,-2909,-2900,-2893,-2887,-2876,-2869,-2880,-2863,
+-2854,-2837,-2821,-2810,-2801,-2793,-2789,-2800,-2811,-2791,-2767,-2743,-2725,-2720,-2728,-2710,-2699,-2708,-2701,-2688,
+-2687,-2690,-2696,-2701,-2700,-2699,-2701,-2719,-2771,-2848,-2854,-2852,-2843,-2841,-2844,-2848,-2853,-2860,-2868,-2873,
+-2874,-2879,-2894,-2925,-2960,-2992,-3036,-3122,-3265,-3446,-3563,-3513,-3361,-3272,-3281,-3280,-3297,-3323,-3356,-3395,
+-3431,-3468,-3504,-3534,-3562,-3563,-3596,-3626,-3650,-3664,-3678,-3703,-3736,-3786,-3811,-3802,-3817,-3868,-3904,-3923,
+-3944,-3970,-3995,-4019,-4044,-4066,-4084,-4099,-4115,-4138,-4165,-4186,-4217,-4247,-4267,-4284,-4304,-4322,-4336,-4355,
+-4372,-4389,-4409,-4430,-4450,-4457,-4451,-4452,-4464,-4465,-4468,-4475,-4483,-4489,-4491,-4490,-4491,-4500,-4516,-4523,
+-4524,-4532,-4533,-4525,-4525,-4518,-4503,-4502,-4504,-4513,-4503,-4490,-4485,-4488,-4480,-4471,-4476,-4470,-4455,-4457,
+-4451,-4437,-4440,-4453,-4458,-4454,-4454,-4446,-4432,-4416,-4396,-4377,-4354,-4333,-4324,-4315,-4299,-4285,-4297,-4303,
+-4290,-4280,-4285,-4291,-4290,-4271,-4256,-4257,-4251,-4228,-4231,-4218,-4190,-4193,-4205,-4189,-4167,-4141,-4109,-4092,
+-4085,-4087,-4095,-4099,-4064,-4037,-4024,-4005,-3982,-3963,-3960,-3956,-3946,-3929,-3922,-3907,-3884,-3867,-3849,-3842,
+-3831,-3812,-3796,-3784,-3769,-3752,-3725,-3703,-3698,-3672,-3638,-3612,-3604,-3595,-3576,-3555,-3532,-3508,-3489,-3475,
+-3456,-3442,-3417,-3414,-3401,-3380,-3365,-3351,-3341,-3335,-3322,-3303,-3283,-3267,-3256,-3243,-3235,-3219,-3205,-3191,
+-3176,-3161,-3148,-3132,-3115,-3100,-3087,-3073,-3057,-3040,-3024,-3009,-3003,-2993,-2985,-2977,-2969,-2961,-2954,-2944,
+-2936,-2940,-2939,-2934,-2934,-2925,-2917,-2911,-2900,-2896,-2895,-2892,-2888,-2884,-2872,-2870,-2862,-2852,-2847,-2841,
+-2833,-2823,-2819,-2818,-2820,-2823,-2823,-2821,-2813,-2812,-2813,-2816,-2815,-2799,-2794,-2792,-2788,-2786,-2778,-2763,
+-2753,-2746,-2737,-2727,-2719,-2709,-2705,-2705,-2699,-2694,-2686,-2673,-2666,-2657,-2647,-2635,-2626,-2624,-2618,-2609,
+-2600,-2597,-2601,-2611,-2622,-2628,-2634,-2637,-2632,-2624,-2616,-2592,-2576,-2559,-2519,-2486,-2455,-2430,-2419,-2405,
+-2394,-2387,-2378,-2373,-2369,-2364,-2358,-2347,-2330,-2318,-2302,-2288,-2289,-2278,-2268,-2261,-2254,-2257,-2244,-2235,
+-2242,-2252,-2251,-2244,-2236,-2228,-2217,-2206,-2198,-2192,-2185,-2179,-2166,-2150,-2133,-2124,-2116,-2111,-2101,-2088,
+-2078,-2070,-2066,-2067,-2070,-2075,-2085,-2097,-2095,-2089,-2078,-2074,-2079,-2081,-2082,-2096,-2115,-2136,-2135,-2151,
+-2169,-2172,-2179,-2186,-2190,-2190,-2189,-2183,-2192,-2192,-2180,-2166,-2144,-2121,-2093,-2059,-2028,-2006,-1983,-1965,
+-1951,-1943,-1934,-1924,-1916,-1909,-1899,-1903,-1915,-1927,-1922,-1902,-1883,-1877,-1877,-1862,-1811,-1766,-1750,-1722,
+-1700,-1680,-1655,-1667,-1673,-1666,-1654,-1637,-1622,-1611,-1606,-1602,-1588,-1570,-1563,-1557,-1556,-1555,-1549,-1539,
+-1530,-1505,-1479,-1461,-1447,-1434,-1415,-1406,-1391,-1384,-1366,-1356,-1338,-1317,-1304,-1285,-1259,-1250,-1251,-1253,
+-1237,-1211,-1191,-1171,-1138,-1107,-1091,-1099,-1117,-1122,-1103,-1080,-1074,-1071,-1055,-1040,-1021,-999,-972,-937,
+-917,-907,-888,-877,-874,-867,-851,-842,-832,-810,-782,-746,-707,-673,-649,-630,-618,-608,-596,-582,
+-566,-550,-534,-516,-503,-490,-471,-453,-431,-407,-384,-364,-332,-299,-284,-264,-240,-222,-199,-179,
+-161,-139,-125,-105,-81,-54,-28,0,33,69,103,134,162,188,220,250,281,306,331,367,
+408,455,489,527,565,595,627,646,682,721,773,850,911,952,991,1028,1065,1105,1147,1189,
+1227,1256,1277,1302,1331,1366,1399,1437,1472,1503,1523,1555,1605,1666,1710,1678,1675,1688,1707,1721,
+1725,1735,1747,1759,1775,1790,1812,1837,1858,1878,1892,1899,1912,1955,1975,1958,1947,1945,1935,1938,
+1949,1967,1975,1993,2009,2026,2045,2062,2080,2085,2087,2095,2100,2103,2107,2107,2103,2095,2087,2076,
+2073,2073,2067,2077,2079,2080,2068,2065,2066,2067,2061,2062,2068,2065,2059,2042,2025,2015,2017,2022,
+2037,2055,2060,2060,2066,2057,2053,2063,2075,2104,2122,2114,2092,2086,2078,2083,2090,2085,2093,2090,
+2056,2028,2003,1980,1971,1959,1955,1946,1944,1953,1962,1953,1941,1953,1960,1974,2002,2025,2027,2038,
+2049,2053,2056,2060,2060,2059,2057,2063,2076,2086,2104,2138,2162,2168,2171,2171,2181,2196,2209,2224,
+2239,2229,2242,2264,2275,2298,2317,2333,2357,2370,2383,2393,2407,2414,2420,2426,2427,2440,2429,2412,
+2413,2406,2388,2366,2342,2318,2285,2260,2244,2243,2279,2263,2112,1967,1880,1827,1717,1500,1296,1118,
+996,937,1001,1185,1374,1525,1643,1744,1824,1884,1920,1955,1987,2015,2029,2045,2065,2068,2073,2083,
+2093,2106,2116,2106,2110,2125,2134,2121,2109,2120,2154,2088,2032,2071,2100,2099,2084,2081,2071,2058,
+2047,2031,2026,2025,2010,2000,1993,1983,1979,1983,1985,1997,1993,1985,1979,1985,1988,1988,1971,1958,
+1942,1926,1923,1915,1911,1905,1889,1868,1857,1853,1849,1837,1824,1819,1810,1810,1818,1823,1827,1833,
+1840,1838,1842,1830,1814,1803,1808,1818,1799,1787,1791,1790,1793,1784,1773,1779,1800,1814,1705,1713,
+1724,1730,1743,1740,1711,1698,1680,1669,1673,1688,1701,1704,1706,1710,1716,1718,1726,1739,1751,1763,
+1763,1766,1775,1782,1786,1786,1791,1801,1821,1826,1830,1843,1862,1881,1900,1909,1914,1931,1945,1960,
+1978,1996,2013,2035,2057,2082,2101,2127,2152,2172,2193,2214,2234,2250,2258,2268,2296,2323,2323,2337,
+2359,2358,2373,2386,2383,2412,2443,2457,2475,2473,2481,2495,2510,2511,2516,2525,2532,2542,2562,2589,
+2590,2587,2600,2635,2633,2636,2643,2659,2676,2685,2696,2715,2737,2760,2783,2775,2716,2700,2714,2743,
+2776,2794,2802,2821,2848,2873,2890,2897,2902,2913,2925,2938,2948,2958,2965,2974,2983,2991,2997,2995,
+2989,2985,2997,3006,3016,3030,3050,3071,3095,3120,3141,3164,3183,3204,3220,3235,3252,3265,3268,3269,
+3278,3289,3301,3309,3321,3337,3344,3351,3359,3370,3384,3400,3420,3432,3451,3470,3482,3495,3513,3532,
+3537,3549,3564,3572,3580,3583,3585,3586,3584,3580,3577,3579,3582,3589,3587,3586,3588,3588,3591,3590,
+3590,3588,3583,3579,3573,3568,3565,3560,3549,3531,3514,3502,3488,3474,3456,3436,3407,3391,3400,3409,
+3414,3409,3410,3410,3406,3409,3419,3422,3423,3423,3420,3420,3421,3420,3417,3416,3411,3404,3393,3386,
+3374,3361,3355,3353,3353,3348,3347,3346,3347,3348,3349,3350,3352,3352,3350,3349,3345,3340,3333,3329,
+3322,3314,3304,3293,3282,3269,3254,3240,3219,3194,3173,3161,3145,3132,3127,3123,3113,3109,3121,3164,
+3183,3155,3146,3163,3180,3188,3186,3183,3177,3164,3150,3136,3120,3094,3066,3039,3013,2989,2971,2961,
+2958,2949,2927,2913,2904,2897,2886,2877,2869,2874,2897,2928,2951,2958,2960,2959,2955,2948,2939,2927,
+2923,2920,2910,2906,2898,2890,2882,2876,2865,2840,2814,2787,2769,2745,2717,2675,2629,2586,2575,2550,
+2529,2500,2475,2456,2443,2436,2445,2440,2421,2376,2320,2252,2178,2104,2018,1923,1828,1732,1633,1567,
+1530,1492,1447,1398,1351,1309,1281,1260,1241,1224,1207,1188,1175,1161,1145,1122,1094,1058,1016,970,
+940,925,914,889,862,835,812,783,748,716,683,643,608,578,554,524,494,466,442,415,
+381,348,313,276,239,201,163,125,89,61,30,-3,-37,-67,-94,-123,-153,-184,-207,-227,
+-250,-273,-300,-328,-365,-399,-431,-464,-498,-534,-570,-608,-641,-669,-692,-710,-730,-748,-764,-779,
+-796,-813,-836,-865,-892,-923,-958,-990,-1011,-1041,-1088,-1110,-1139,-1177,-1208,-1230,-1255,-1282,-1312,-1342,
+-1371,-1402,-1430,-1462,-1498,-1523,-1548,-1580,-1608,-1635,-1663,-1690,-1722,-1747,-1778,-1810,-1840,-1870,-1900,-1927,
+-1952,-1980,-2009,-2031,-2050,-2077,-2106,-2124,-2153,-2180,-2202,-2224,-2241,-2259,-2285,-2312,-2337,-2357,-2378,-2399,
+-2421,-2441,-2462,-2483,-2503,-2525,-2541,-2557,-2574,-2594,-2612,-2625,-2637,-2653,-2675,-2697,-2714,-2732,-2751,-2765,
+-2780,-2792,-2809,-2826,-2844,-2862,-2880,-2902,-2922,-2938,-2950,-2960,-2971,-2979,-2988,-2997,-3011,-3020,-3033,-3041,
+-3049,-3058,-3070,-3079,-3086,-3092,-3098,-3101,-3100,-3098,-3095,-3097,-3105,-3109,-3114,-3114,-3115,-3117,-3118,-3118,
+-3121,-3124,-3120,-3119,-3123,-3128,-3133,-3135,-3133,-3130,-3128,-3129,-3124,-3121,-3116,-3114,-3117,-3117,-3109,-3094,
+-3101,-3095,-3080,-3070,-3056,-3044,-3033,-3010,-2998,-2989,-2989,-2985,-2979,-2972,-2967,-2956,-2950,-2944,-2932,-2937,
+-2926,-2920,-2926,-2908,-2884,-2859,-2851,-2854,-2856,-2863,-2862,-2837,-2822,-2809,-2795,-2792,-2777,-2740,-2738,-2754,
+-2741,-2731,-2729,-2731,-2734,-2746,-2749,-2750,-2758,-2777,-2841,-2900,-2904,-2888,-2877,-2878,-2887,-2893,-2896,-2906,
+-2906,-2901,-2906,-2922,-2947,-2972,-2989,-3006,-3045,-3115,-3220,-3382,-3524,-3519,-3367,-3310,-3332,-3355,-3378,-3408,
+-3431,-3450,-3477,-3510,-3535,-3575,-3620,-3638,-3658,-3669,-3686,-3711,-3749,-3778,-3824,-3889,-3888,-3883,-3922,-3959,
+-3976,-3995,-4016,-4038,-4058,-4079,-4097,-4116,-4133,-4152,-4176,-4204,-4235,-4262,-4283,-4302,-4325,-4340,-4352,-4376,
+-4396,-4413,-4434,-4452,-4472,-4488,-4501,-4502,-4485,-4503,-4512,-4519,-4529,-4538,-4543,-4549,-4558,-4557,-4549,-4561,
+-4584,-4581,-4569,-4573,-4570,-4567,-4570,-4567,-4552,-4540,-4547,-4564,-4545,-4516,-4509,-4508,-4505,-4501,-4493,-4491,
+-4493,-4493,-4480,-4469,-4465,-4457,-4468,-4488,-4500,-4504,-4490,-4460,-4424,-4403,-4409,-4404,-4387,-4365,-4339,-4316,
+-4309,-4299,-4298,-4306,-4313,-4307,-4302,-4299,-4288,-4265,-4259,-4272,-4264,-4234,-4195,-4195,-4212,-4218,-4210,-4188,
+-4172,-4155,-4132,-4112,-4115,-4114,-4105,-4087,-4065,-4051,-4035,-4011,-3990,-3983,-3964,-3952,-3946,-3949,-3935,-3923,
+-3893,-3865,-3864,-3863,-3833,-3818,-3807,-3796,-3769,-3751,-3743,-3726,-3705,-3673,-3647,-3635,-3616,-3599,-3580,-3566,
+-3545,-3529,-3510,-3490,-3454,-3446,-3426,-3421,-3411,-3393,-3369,-3349,-3341,-3325,-3317,-3303,-3287,-3272,-3257,-3243,
+-3233,-3220,-3206,-3191,-3182,-3170,-3156,-3136,-3125,-3111,-3099,-3089,-3076,-3063,-3053,-3046,-3036,-3025,-3011,-2998,
+-2995,-2998,-3001,-2995,-2990,-2984,-2975,-2973,-2967,-2958,-2952,-2950,-2945,-2942,-2941,-2941,-2932,-2927,-2922,-2917,
+-2902,-2891,-2884,-2880,-2873,-2871,-2865,-2859,-2853,-2844,-2848,-2855,-2862,-2866,-2862,-2847,-2846,-2841,-2833,-2832,
+-2830,-2823,-2813,-2802,-2791,-2775,-2769,-2764,-2756,-2749,-2748,-2742,-2731,-2719,-2714,-2701,-2686,-2679,-2673,-2670,
+-2665,-2654,-2639,-2636,-2645,-2646,-2638,-2631,-2625,-2618,-2612,-2611,-2608,-2604,-2597,-2592,-2581,-2575,-2565,-2563,
+-2536,-2496,-2460,-2439,-2428,-2422,-2415,-2411,-2399,-2385,-2379,-2368,-2356,-2350,-2340,-2330,-2315,-2307,-2308,-2296,
+-2297,-2300,-2299,-2293,-2287,-2288,-2279,-2264,-2251,-2242,-2242,-2247,-2243,-2221,-2203,-2194,-2190,-2174,-2160,-2155,
+-2151,-2150,-2146,-2139,-2129,-2122,-2115,-2121,-2125,-2126,-2123,-2117,-2119,-2120,-2125,-2128,-2138,-2158,-2178,-2181,
+-2180,-2188,-2200,-2210,-2217,-2214,-2207,-2208,-2211,-2212,-2212,-2207,-2203,-2198,-2193,-2178,-2161,-2146,-2120,-2079,
+-2038,-2006,-1980,-1963,-1951,-1943,-1931,-1922,-1918,-1920,-1911,-1902,-1901,-1902,-1891,-1883,-1884,-1896,-1907,-1907,
+-1871,-1817,-1761,-1735,-1725,-1716,-1701,-1681,-1665,-1650,-1649,-1646,-1633,-1623,-1614,-1600,-1590,-1583,-1572,-1569,
+-1562,-1556,-1542,-1524,-1504,-1487,-1466,-1441,-1425,-1412,-1390,-1378,-1364,-1330,-1313,-1308,-1299,-1295,-1289,-1291,
+-1294,-1294,-1291,-1283,-1268,-1242,-1205,-1168,-1136,-1132,-1127,-1108,-1076,-1057,-1051,-1042,-1029,-1015,-1006,-998,
+-980,-965,-959,-944,-928,-907,-888,-869,-858,-849,-843,-818,-782,-745,-711,-682,-657,-641,-627,-615,
+-601,-586,-568,-548,-532,-518,-503,-489,-472,-456,-438,-422,-398,-367,-345,-323,-289,-253,-245,-236,
+-221,-202,-178,-152,-128,-99,-64,-33,-12,21,54,86,117,141,169,196,225,258,292,321,
+350,388,422,452,491,530,584,637,673,684,702,729,769,826,903,965,1007,1043,1081,1119,
+1161,1200,1237,1271,1304,1337,1374,1404,1436,1472,1506,1536,1557,1559,1563,1624,1705,1728,1732,1729,
+1731,1739,1744,1754,1767,1782,1796,1814,1833,1853,1871,1890,1900,1902,1907,1916,1944,1985,1967,1944,
+1946,1965,1983,1994,2004,2012,2025,2038,2058,2077,2087,2088,2089,2092,2100,2109,2111,2109,2110,2107,
+2103,2099,2098,2099,2103,2113,2118,2112,2108,2109,2109,2104,2103,2106,2092,2073,2055,2043,2040,2047,
+2055,2071,2070,2062,2067,2062,2048,2031,2018,2013,2016,2031,2053,2059,2029,2025,2054,2062,2055,2065,
+2047,2004,1961,1934,1930,1935,1942,1948,1966,1950,1946,1943,1947,1960,1970,1984,1996,2009,2026,2041,
+2059,2068,2063,2064,2068,2070,2071,2068,2070,2079,2086,2099,2118,2139,2154,2182,2212,2220,2209,2210,
+2219,2226,2234,2265,2286,2292,2300,2314,2327,2332,2326,2328,2353,2377,2393,2400,2406,2418,2422,2421,
+2411,2402,2385,2362,2343,2318,2287,2259,2243,2235,2205,2146,2058,1933,1805,1698,1581,1416,1243,1098,
+998,936,940,1063,1254,1449,1596,1698,1801,1856,1902,1937,1973,2000,2011,2029,2050,2065,2066,2070,
+2080,2098,2124,2128,2104,2072,2035,2087,2129,2151,2127,2103,2082,2066,2067,2069,2075,2069,2055,2037,
+2036,2034,2032,2025,2025,2027,2021,2007,1993,1963,1948,1944,1938,1933,1927,1926,1915,1917,1921,1913,
+1901,1879,1871,1858,1850,1835,1819,1806,1803,1778,1756,1753,1754,1760,1763,1762,1750,1757,1762,1737,
+1722,1733,1741,1742,1760,1773,1767,1762,1740,1712,1712,1721,1733,1740,1719,1701,1695,1698,1705,1651,
+1660,1668,1662,1665,1670,1664,1654,1641,1635,1625,1618,1622,1631,1645,1657,1667,1681,1701,1715,1730,
+1734,1738,1742,1744,1749,1758,1771,1784,1802,1812,1819,1832,1851,1871,1890,1900,1906,1925,1944,1965,
+1984,2000,2018,2041,2067,2098,2119,2126,2155,2181,2197,2223,2245,2260,2275,2289,2302,2314,2319,2330,
+2352,2373,2389,2403,2401,2424,2468,2478,2485,2483,2482,2495,2520,2530,2531,2546,2555,2556,2554,2573,
+2595,2576,2573,2605,2604,2606,2622,2633,2646,2654,2668,2708,2719,2714,2715,2712,2672,2659,2679,2715,
+2751,2774,2783,2796,2822,2846,2864,2871,2875,2887,2898,2910,2921,2929,2939,2948,2956,2964,2970,2971,
+2961,2950,2948,2953,2965,2977,2993,3015,3036,3057,3078,3100,3125,3146,3164,3182,3201,3217,3225,3234,
+3244,3255,3266,3274,3283,3296,3307,3311,3316,3323,3333,3348,3365,3379,3396,3416,3430,3442,3457,3466,
+3477,3501,3517,3522,3531,3542,3547,3552,3556,3557,3558,3554,3548,3549,3553,3553,3549,3553,3558,3556,
+3554,3551,3550,3546,3539,3532,3526,3516,3508,3497,3488,3476,3460,3441,3419,3397,3381,3376,3379,3383,
+3384,3379,3377,3377,3376,3374,3379,3387,3390,3391,3393,3390,3387,3387,3384,3383,3384,3380,3374,3361,
+3351,3341,3328,3324,3321,3320,3319,3315,3317,3317,3317,3319,3324,3326,3329,3329,3329,3325,3319,3314,
+3309,3304,3299,3288,3278,3264,3247,3224,3197,3170,3146,3129,3115,3110,3115,3111,3105,3097,3096,3121,
+3171,3163,3136,3135,3146,3151,3152,3155,3158,3150,3137,3123,3107,3087,3068,3047,3027,3015,2990,2968,
+2956,2966,2942,2909,2898,2887,2877,2860,2842,2831,2831,2847,2863,2875,2886,2894,2895,2892,2881,2878,
+2877,2871,2868,2868,2871,2871,2869,2859,2848,2831,2807,2779,2750,2721,2695,2669,2647,2608,2563,2531,
+2524,2510,2496,2508,2483,2438,2409,2388,2400,2401,2388,2352,2302,2247,2177,2103,2020,1921,1799,1661,
+1550,1501,1468,1426,1374,1324,1281,1248,1219,1194,1171,1149,1130,1113,1096,1079,1062,1041,1019,994,
+964,922,879,849,827,808,784,761,737,709,674,635,602,568,538,510,479,453,430,401,
+368,341,304,268,234,198,161,127,91,58,24,-9,-41,-73,-104,-135,-165,-197,-222,-247,
+-271,-297,-317,-338,-365,-394,-424,-457,-489,-525,-564,-601,-637,-667,-692,-709,-722,-739,-754,-767,
+-781,-799,-825,-858,-890,-918,-958,-995,-1029,-1057,-1073,-1091,-1114,-1146,-1183,-1203,-1232,-1267,-1298,-1325,
+-1353,-1383,-1414,-1444,-1482,-1512,-1537,-1565,-1596,-1624,-1651,-1679,-1708,-1738,-1764,-1800,-1834,-1865,-1894,-1922,
+-1948,-1974,-1998,-2022,-2046,-2073,-2099,-2125,-2147,-2177,-2205,-2224,-2244,-2266,-2284,-2306,-2334,-2361,-2382,-2403,
+-2425,-2445,-2465,-2486,-2505,-2524,-2547,-2563,-2578,-2596,-2618,-2637,-2650,-2665,-2681,-2701,-2719,-2738,-2756,-2776,
+-2792,-2807,-2822,-2835,-2847,-2867,-2885,-2904,-2923,-2945,-2964,-2981,-2993,-3004,-3014,-3025,-3037,-3050,-3061,-3070,
+-3080,-3093,-3107,-3113,-3124,-3133,-3139,-3148,-3153,-3154,-3151,-3158,-3160,-3164,-3168,-3169,-3172,-3174,-3172,-3168,
+-3168,-3174,-3178,-3176,-3178,-3184,-3191,-3194,-3195,-3192,-3184,-3182,-3182,-3175,-3173,-3179,-3181,-3184,-3184,-3175,
+-3172,-3161,-3152,-3123,-3120,-3118,-3107,-3094,-3082,-3075,-3063,-3052,-3043,-3038,-3032,-3023,-3016,-3011,-3001,-2991,
+-2991,-2993,-2980,-2977,-2965,-2950,-2939,-2929,-2917,-2919,-2933,-2935,-2911,-2885,-2880,-2867,-2860,-2859,-2826,-2805,
+-2813,-2802,-2783,-2779,-2775,-2782,-2795,-2797,-2798,-2806,-2817,-2851,-2933,-2966,-2949,-2923,-2907,-2916,-2923,-2937,
+-2947,-2945,-2935,-2938,-2954,-2978,-2994,-3005,-3010,-3034,-3072,-3113,-3179,-3277,-3415,-3514,-3516,-3459,-3434,-3435,
+-3449,-3465,-3488,-3513,-3544,-3569,-3590,-3628,-3647,-3659,-3691,-3715,-3731,-3763,-3799,-3820,-3883,-3908,-3914,-3961,
+-4010,-4023,-4037,-4053,-4066,-4083,-4103,-4123,-4142,-4161,-4185,-4212,-4241,-4268,-4288,-4305,-4324,-4345,-4357,-4384,
+-4406,-4427,-4449,-4472,-4490,-4505,-4519,-4535,-4544,-4538,-4542,-4566,-4568,-4571,-4579,-4590,-4597,-4601,-4609,-4622,
+-4629,-4628,-4634,-4629,-4619,-4616,-4611,-4604,-4603,-4594,-4584,-4574,-4581,-4587,-4566,-4545,-4545,-4549,-4547,-4547,
+-4544,-4544,-4539,-4527,-4519,-4504,-4495,-4497,-4508,-4505,-4500,-4484,-4467,-4457,-4453,-4435,-4412,-4413,-4422,-4414,
+-4396,-4377,-4362,-4364,-4362,-4353,-4340,-4330,-4321,-4322,-4328,-4325,-4310,-4288,-4276,-4273,-4254,-4233,-4210,-4200,
+-4213,-4218,-4199,-4182,-4161,-4146,-4136,-4126,-4118,-4095,-4073,-4065,-4053,-4028,-4014,-3999,-3990,-3978,-3960,-3953,
+-3948,-3953,-3948,-3940,-3920,-3884,-3851,-3828,-3808,-3776,-3759,-3748,-3736,-3724,-3712,-3705,-3695,-3667,-3643,-3624,
+-3613,-3603,-3587,-3567,-3554,-3537,-3518,-3504,-3485,-3462,-3451,-3437,-3424,-3404,-3380,-3360,-3337,-3328,-3317,-3305,
+-3285,-3272,-3259,-3245,-3236,-3226,-3213,-3202,-3190,-3170,-3149,-3148,-3133,-3115,-3111,-3117,-3108,-3093,-3080,-3066,
+-3067,-3065,-3065,-3057,-3054,-3049,-3043,-3035,-3030,-3023,-3016,-3010,-3006,-3002,-3001,-2999,-2998,-2995,-2987,-2984,
+-2980,-2973,-2965,-2962,-2959,-2953,-2946,-2936,-2927,-2915,-2908,-2909,-2905,-2905,-2903,-2898,-2897,-2894,-2899,-2900,
+-2897,-2895,-2892,-2884,-2870,-2861,-2844,-2832,-2822,-2812,-2808,-2802,-2800,-2798,-2800,-2794,-2782,-2777,-2784,-2767,
+-2747,-2725,-2707,-2699,-2688,-2680,-2673,-2672,-2676,-2670,-2652,-2649,-2643,-2634,-2620,-2614,-2598,-2587,-2576,-2570,
+-2574,-2581,-2590,-2589,-2584,-2567,-2542,-2513,-2486,-2463,-2448,-2418,-2408,-2406,-2403,-2400,-2384,-2370,-2362,-2362,
+-2360,-2353,-2347,-2345,-2344,-2343,-2337,-2331,-2326,-2312,-2302,-2292,-2285,-2278,-2283,-2281,-2250,-2240,-2224,-2211,
+-2207,-2184,-2172,-2172,-2177,-2162,-2161,-2166,-2177,-2182,-2183,-2183,-2179,-2171,-2168,-2174,-2183,-2184,-2186,-2196,
+-2206,-2204,-2222,-2232,-2233,-2235,-2230,-2226,-2224,-2220,-2220,-2217,-2214,-2210,-2208,-2207,-2203,-2199,-2184,-2176,
+-2168,-2151,-2119,-2075,-2036,-2003,-1978,-1961,-1952,-1942,-1922,-1909,-1909,-1908,-1901,-1909,-1913,-1901,-1903,-1912,
+-1909,-1893,-1888,-1884,-1866,-1834,-1796,-1757,-1731,-1713,-1699,-1694,-1685,-1673,-1658,-1650,-1639,-1625,-1616,-1609,
+-1593,-1583,-1578,-1563,-1548,-1535,-1531,-1523,-1504,-1479,-1451,-1429,-1417,-1384,-1356,-1335,-1318,-1318,-1317,-1316,
+-1314,-1308,-1302,-1294,-1284,-1271,-1257,-1243,-1224,-1209,-1195,-1180,-1157,-1131,-1111,-1100,-1075,-1040,-1008,-983,
+-969,-957,-950,-944,-934,-930,-931,-910,-889,-863,-848,-840,-827,-818,-793,-762,-730,-702,-681,-663,
+-646,-628,-609,-592,-573,-557,-538,-525,-509,-491,-474,-458,-444,-426,-406,-377,-354,-334,-308,-293,
+-279,-260,-236,-210,-183,-160,-130,-88,-51,-16,20,52,82,108,120,144,178,211,237,267,
+299,334,366,407,453,487,519,548,578,627,673,711,743,765,795,835,889,956,1016,1057,
+1107,1162,1176,1215,1257,1292,1326,1358,1391,1425,1456,1492,1526,1554,1581,1597,1603,1638,1679,1714,
+1737,1747,1759,1767,1765,1769,1782,1797,1815,1832,1853,1871,1887,1905,1917,1928,1943,1963,1991,2036,
+2077,2067,2035,2012,2013,2017,2021,2029,2041,2054,2070,2081,2085,2082,2078,2077,2079,2086,2091,2102,
+2110,2118,2126,2124,2112,2112,2128,2141,2144,2148,2152,2154,2152,2148,2154,2147,2109,2078,2065,2062,
+2062,2066,2075,2069,2059,2047,2024,1994,1973,1954,1941,1921,1919,1922,1919,1921,1928,1943,1941,1940,
+1936,1923,1891,1853,1853,1871,1885,1900,1921,1952,1947,1956,1963,1967,1975,1988,2005,2023,2043,2060,
+2076,2081,2088,2077,2065,2063,2064,2066,2070,2069,2071,2076,2087,2102,2118,2142,2180,2225,2232,2221,
+2218,2225,2229,2239,2258,2278,2293,2306,2326,2348,2357,2322,2363,2383,2394,2376,2397,2390,2401,2400,
+2402,2385,2380,2360,2342,2328,2297,2275,2249,2238,2222,2152,2007,1875,1758,1654,1516,1364,1228,1090,
+986,930,932,1022,1177,1346,1519,1661,1751,1809,1855,1883,1910,1936,1958,1976,1998,2020,2046,2067,
+2083,2088,2104,2121,2121,2092,2072,2109,2154,2174,2180,2173,2151,2144,2121,2093,2071,2060,2057,2046,
+2033,2012,1987,1970,1955,1947,1943,1934,1928,1917,1916,1916,1918,1916,1916,1914,1885,1857,1841,1836,
+1835,1826,1820,1804,1783,1764,1746,1734,1726,1743,1738,1730,1724,1694,1697,1704,1697,1684,1671,1666,
+1659,1663,1676,1680,1682,1684,1684,1702,1701,1672,1652,1647,1634,1630,1645,1648,1622,1623,1636,1651,
+1557,1584,1610,1619,1611,1605,1598,1597,1599,1608,1618,1614,1608,1612,1618,1626,1629,1637,1652,1675,
+1692,1710,1719,1724,1729,1732,1741,1757,1771,1785,1801,1816,1830,1852,1874,1891,1906,1918,1933,1958,
+1983,2004,2022,2041,2065,2094,2119,2149,2170,2194,2219,2243,2265,2284,2295,2310,2312,2301,2310,2328,
+2359,2377,2399,2407,2403,2436,2468,2476,2477,2489,2500,2517,2532,2523,2517,2523,2529,2524,2529,2543,
+2571,2580,2569,2586,2590,2583,2593,2608,2625,2632,2635,2659,2688,2694,2684,2661,2646,2626,2648,2694,
+2733,2753,2759,2770,2790,2814,2832,2843,2848,2857,2871,2885,2896,2902,2910,2919,2927,2935,2941,2946,
+2942,2931,2921,2917,2927,2934,2948,2966,2984,3003,3021,3044,3069,3087,3108,3129,3147,3163,3176,3190,
+3199,3211,3223,3234,3243,3257,3270,3277,3281,3291,3298,3303,3312,3324,3340,3364,3382,3395,3406,3416,
+3422,3446,3460,3467,3481,3490,3501,3513,3515,3519,3523,3522,3521,3517,3511,3508,3508,3513,3515,3510,
+3508,3509,3509,3509,3506,3496,3492,3485,3478,3468,3456,3440,3421,3396,3381,3370,3362,3357,3354,3353,
+3352,3350,3344,3340,3339,3336,3335,3344,3351,3354,3355,3354,3356,3354,3353,3353,3351,3348,3343,3335,
+3325,3316,3306,3295,3285,3284,3283,3284,3286,3287,3287,3290,3293,3298,3302,3305,3308,3306,3304,3302,
+3298,3294,3286,3281,3273,3258,3241,3215,3186,3159,3143,3134,3125,3116,3108,3109,3101,3088,3085,3087,
+3104,3113,3103,3103,3109,3113,3117,3120,3123,3120,3114,3105,3095,3082,3069,3051,3027,3009,2991,2968,
+2950,2933,2927,2908,2887,2873,2859,2845,2825,2803,2801,2798,2804,2813,2816,2822,2825,2827,2825,2814,
+2803,2802,2799,2801,2811,2819,2824,2815,2802,2786,2767,2743,2717,2686,2654,2627,2603,2593,2573,2541,
+2507,2490,2484,2497,2511,2506,2477,2458,2401,2361,2368,2356,2331,2298,2248,2190,2130,2060,1975,1880,
+1769,1620,1509,1448,1403,1358,1316,1273,1235,1201,1171,1145,1121,1099,1074,1049,1023,996,971,949,
+931,913,892,862,831,800,765,737,719,687,650,608,576,542,515,494,466,431,401,375,
+349,329,298,254,216,186,153,122,90,63,29,-6,-44,-79,-116,-144,-177,-208,-235,-266,
+-293,-318,-334,-353,-379,-401,-428,-456,-487,-522,-561,-601,-639,-671,-696,-711,-719,-731,-744,-757,
+-771,-784,-805,-834,-868,-907,-942,-962,-949,-992,-1052,-1088,-1109,-1128,-1156,-1186,-1208,-1242,-1280,-1314,
+-1343,-1371,-1400,-1431,-1465,-1495,-1523,-1551,-1581,-1612,-1640,-1668,-1695,-1726,-1750,-1781,-1818,-1856,-1889,-1918,
+-1944,-1971,-1993,-2020,-2051,-2078,-2104,-2130,-2153,-2172,-2198,-2225,-2248,-2270,-2293,-2313,-2334,-2362,-2388,-2411,
+-2432,-2451,-2471,-2498,-2518,-2540,-2556,-2571,-2587,-2605,-2620,-2640,-2659,-2676,-2693,-2711,-2730,-2748,-2765,-2785,
+-2803,-2820,-2834,-2849,-2859,-2871,-2890,-2906,-2926,-2946,-2968,-2991,-3009,-3024,-3038,-3050,-3063,-3074,-3082,-3090,
+-3101,-3115,-3128,-3142,-3152,-3164,-3178,-3189,-3194,-3195,-3206,-3207,-3207,-3218,-3226,-3230,-3234,-3234,-3236,-3235,
+-3232,-3231,-3231,-3233,-3238,-3240,-3246,-3252,-3255,-3254,-3246,-3239,-3240,-3236,-3231,-3232,-3236,-3237,-3242,-3250,
+-3246,-3236,-3227,-3214,-3196,-3183,-3176,-3175,-3169,-3153,-3141,-3134,-3125,-3112,-3101,-3091,-3082,-3076,-3068,-3061,
+-3057,-3060,-3061,-3056,-3042,-3030,-3017,-3004,-2998,-2996,-2982,-2979,-2998,-2997,-2970,-2956,-2946,-2930,-2932,-2919,
+-2880,-2857,-2859,-2843,-2834,-2832,-2838,-2840,-2842,-2851,-2859,-2870,-2889,-2933,-3001,-3010,-2985,-2971,-2967,-2966,
+-2986,-2992,-2984,-2983,-2988,-2997,-3014,-3033,-3037,-3036,-3057,-3089,-3111,-3130,-3171,-3248,-3346,-3427,-3465,-3462,
+-3466,-3480,-3501,-3518,-3539,-3568,-3594,-3616,-3648,-3690,-3722,-3739,-3757,-3761,-3792,-3831,-3829,-3847,-3873,-3922,
+-3979,-4036,-4051,-4063,-4075,-4088,-4104,-4127,-4150,-4173,-4198,-4222,-4246,-4273,-4295,-4313,-4336,-4356,-4374,-4393,
+-4415,-4436,-4458,-4481,-4493,-4504,-4530,-4544,-4559,-4576,-4590,-4589,-4604,-4617,-4612,-4607,-4616,-4628,-4634,-4638,
+-4643,-4657,-4670,-4671,-4670,-4670,-4655,-4647,-4646,-4640,-4635,-4632,-4621,-4613,-4626,-4625,-4603,-4600,-4605,-4601,
+-4593,-4584,-4574,-4565,-4561,-4567,-4566,-4532,-4506,-4508,-4524,-4524,-4513,-4495,-4483,-4467,-4444,-4442,-4436,-4417,
+-4404,-4412,-4426,-4416,-4398,-4410,-4406,-4388,-4372,-4368,-4359,-4347,-4331,-4323,-4319,-4321,-4306,-4290,-4281,-4275,
+-4251,-4213,-4202,-4207,-4218,-4221,-4201,-4177,-4164,-4158,-4136,-4107,-4099,-4083,-4063,-4058,-4050,-4044,-4040,-4012,
+-3982,-3971,-3953,-3936,-3928,-3930,-3922,-3914,-3908,-3889,-3865,-3835,-3802,-3772,-3748,-3729,-3711,-3705,-3704,-3692,
+-3671,-3653,-3636,-3618,-3617,-3599,-3579,-3555,-3541,-3531,-3516,-3487,-3477,-3458,-3448,-3435,-3417,-3399,-3387,-3374,
+-3356,-3340,-3323,-3308,-3292,-3280,-3267,-3254,-3245,-3235,-3223,-3210,-3197,-3178,-3166,-3169,-3170,-3162,-3148,-3136,
+-3139,-3137,-3133,-3129,-3124,-3117,-3110,-3100,-3094,-3088,-3079,-3074,-3070,-3061,-3058,-3054,-3050,-3049,-3045,-3042,
+-3038,-3035,-3029,-3025,-3021,-2992,-3014,-3026,-3015,-3002,-2989,-2985,-2980,-2977,-2971,-2969,-2959,-2957,-2955,-2948,
+-2942,-2945,-2939,-2934,-2943,-2944,-2931,-2920,-2908,-2896,-2886,-2880,-2862,-2846,-2844,-2850,-2838,-2824,-2816,-2805,
+-2805,-2795,-2781,-2764,-2755,-2752,-2752,-2747,-2733,-2717,-2705,-2693,-2688,-2685,-2678,-2671,-2664,-2654,-2640,-2626,
+-2618,-2608,-2605,-2613,-2619,-2622,-2630,-2634,-2630,-2619,-2596,-2562,-2509,-2484,-2477,-2465,-2456,-2441,-2427,-2421,
+-2420,-2414,-2402,-2404,-2400,-2394,-2388,-2378,-2365,-2361,-2363,-2344,-2335,-2336,-2331,-2331,-2325,-2306,-2298,-2283,
+-2280,-2264,-2242,-2240,-2235,-2234,-2235,-2231,-2225,-2221,-2216,-2205,-2208,-2219,-2223,-2221,-2218,-2210,-2218,-2226,
+-2239,-2244,-2244,-2247,-2254,-2256,-2253,-2252,-2249,-2243,-2239,-2233,-2228,-2221,-2217,-2214,-2211,-2210,-2208,-2208,
+-2204,-2200,-2192,-2180,-2161,-2139,-2106,-2072,-2041,-2020,-1986,-1953,-1933,-1936,-1938,-1936,-1927,-1922,-1926,-1939,
+-1945,-1949,-1942,-1930,-1905,-1877,-1861,-1847,-1839,-1835,-1818,-1791,-1754,-1728,-1710,-1698,-1687,-1676,-1661,-1648,
+-1633,-1625,-1611,-1614,-1612,-1595,-1581,-1565,-1550,-1533,-1520,-1499,-1486,-1454,-1422,-1401,-1381,-1362,-1349,-1346,
+-1345,-1343,-1338,-1329,-1318,-1300,-1283,-1260,-1242,-1224,-1212,-1205,-1187,-1157,-1139,-1123,-1113,-1093,-1070,-1046,
+-1019,-994,-980,-960,-921,-890,-880,-903,-916,-894,-869,-846,-826,-829,-836,-819,-792,-758,-716,-708,
+-692,-674,-658,-640,-619,-598,-582,-566,-550,-535,-516,-497,-481,-466,-450,-433,-412,-388,-363,-343,
+-330,-320,-297,-265,-231,-196,-166,-136,-109,-76,-43,-9,26,63,97,128,150,175,204,217,
+247,274,303,339,387,445,500,536,553,577,605,643,691,745,775,796,829,855,877,922,
+988,1050,1102,1155,1247,1302,1290,1315,1350,1386,1417,1450,1482,1516,1544,1574,1594,1615,1634,1648,
+1673,1706,1730,1754,1770,1779,1786,1788,1796,1811,1826,1842,1854,1869,1889,1913,1935,1958,1983,2015,
+2042,2083,2119,2149,2171,2133,2056,2029,2034,2038,2038,2043,2052,2058,2056,2058,2058,2059,2063,2073,
+2084,2095,2103,2106,2115,2123,2125,2137,2150,2162,2173,2183,2194,2183,2173,2157,2131,2087,2056,2048,
+2049,2037,2026,2011,1991,1977,1954,1918,1886,1864,1843,1831,1807,1780,1765,1754,1752,1773,1770,1760,
+1748,1739,1729,1720,1724,1757,1788,1817,1842,1871,1912,1938,1957,1971,1982,1995,2012,2035,2080,2115,
+2138,2138,2122,2118,2107,2081,2058,2048,2051,2052,2057,2059,2066,2079,2096,2117,2144,2195,2240,2264,
+2267,2258,2247,2250,2268,2297,2314,2317,2312,2297,2311,2328,2343,2384,2401,2406,2370,2364,2381,2384,
+2382,2384,2372,2357,2337,2317,2311,2303,2268,2202,2094,1986,1882,1782,1697,1641,1561,1395,1255,1120,
+1015,978,987,1056,1196,1349,1491,1633,1764,1867,1920,1949,1968,1981,2002,2023,2043,2052,2055,2060,
+2089,2123,2152,2168,2169,2139,2082,2106,2146,2154,2143,2134,2120,2092,2057,2026,2000,1984,1979,1981,
+1988,1995,1974,1948,1947,1930,1910,1886,1876,1876,1871,1857,1832,1808,1805,1803,1780,1782,1794,1780,
+1748,1740,1740,1729,1713,1708,1711,1719,1714,1685,1667,1652,1638,1633,1629,1630,1635,1625,1624,1612,
+1599,1599,1618,1620,1619,1618,1617,1613,1626,1628,1636,1620,1617,1627,1614,1592,1569,1553,1543,1543,
+1557,1517,1522,1539,1549,1560,1566,1570,1578,1581,1579,1571,1565,1572,1585,1603,1618,1630,1640,1644,
+1653,1667,1673,1680,1694,1704,1718,1739,1755,1766,1775,1789,1800,1826,1852,1875,1904,1932,1941,1958,
+1979,2007,2034,2055,2073,2096,2126,2148,2172,2209,2232,2248,2266,2280,2294,2304,2312,2323,2332,2345,
+2355,2365,2375,2381,2392,2436,2467,2484,2492,2495,2503,2514,2526,2523,2524,2543,2552,2551,2535,2529,
+2547,2545,2541,2571,2577,2569,2572,2586,2598,2603,2608,2631,2658,2664,2650,2620,2600,2593,2626,2678,
+2718,2735,2736,2742,2753,2772,2790,2804,2814,2824,2840,2852,2865,2876,2884,2890,2898,2906,2915,2921,
+2920,2914,2903,2894,2899,2905,2914,2928,2944,2959,2973,2991,3013,3034,3052,3067,3087,3109,3128,3142,
+3156,3168,3182,3195,3203,3214,3228,3240,3249,3259,3266,3267,3276,3288,3296,3316,3336,3352,3364,3370,
+3378,3395,3404,3414,3423,3433,3443,3454,3462,3468,3473,3473,3475,3474,3472,3472,3471,3469,3468,3465,
+3464,3467,3467,3465,3462,3458,3451,3446,3438,3432,3418,3399,3379,3363,3357,3347,3334,3332,3328,3322,
+3320,3314,3310,3305,3301,3298,3294,3296,3304,3309,3314,3315,3317,3316,3315,3312,3310,3309,3306,3302,
+3295,3286,3275,3269,3259,3255,3256,3260,3263,3263,3261,3264,3267,3271,3279,3281,3283,3284,3286,3286,
+3285,3278,3271,3258,3246,3235,3220,3204,3183,3163,3152,3157,3159,3137,3108,3089,3079,3073,3070,3070,
+3072,3072,3072,3078,3083,3090,3093,3099,3100,3100,3096,3093,3088,3073,3055,3039,3020,3000,2981,2962,
+2944,2930,2921,2905,2876,2856,2835,2807,2778,2765,2769,2748,2731,2728,2732,2737,2740,2743,2745,2742,
+2734,2727,2726,2723,2728,2737,2744,2748,2745,2731,2715,2695,2669,2641,2617,2597,2575,2559,2550,2541,
+2522,2502,2492,2494,2498,2510,2516,2484,2434,2407,2331,2306,2294,2279,2257,2214,2155,2084,2011,1936,
+1864,1783,1676,1566,1482,1419,1374,1333,1293,1253,1220,1187,1160,1130,1096,1064,1030,997,966,936,
+911,893,874,861,838,814,781,745,706,670,641,600,550,514,488,463,445,422,390,362,
+338,310,276,244,215,179,142,111,76,44,15,-23,-59,-90,-119,-149,-183,-211,-239,-279,
+-306,-328,-356,-381,-397,-415,-439,-463,-488,-520,-555,-598,-637,-669,-692,-707,-716,-725,-736,-747,
+-760,-777,-798,-824,-854,-889,-921,-942,-943,-993,-1035,-1066,-1090,-1113,-1140,-1172,-1196,-1225,-1263,-1300,
+-1332,-1363,-1390,-1420,-1449,-1479,-1505,-1531,-1565,-1598,-1629,-1658,-1687,-1718,-1746,-1779,-1815,-1848,-1878,-1912,
+-1943,-1972,-1999,-2026,-2057,-2082,-2110,-2137,-2158,-2181,-2208,-2231,-2252,-2278,-2300,-2320,-2344,-2364,-2390,-2418,
+-2443,-2467,-2487,-2508,-2532,-2556,-2577,-2593,-2609,-2626,-2639,-2650,-2670,-2688,-2707,-2725,-2744,-2764,-2782,-2800,
+-2818,-2833,-2849,-2860,-2872,-2889,-2909,-2924,-2940,-2954,-2971,-2994,-3019,-3037,-3053,-3069,-3086,-3100,-3110,-3123,
+-3135,-3142,-3151,-3164,-3178,-3192,-3203,-3214,-3228,-3240,-3245,-3250,-3251,-3257,-3267,-3272,-3272,-3277,-3278,-3283,
+-3284,-3282,-3289,-3290,-3286,-3288,-3294,-3302,-3307,-3309,-3306,-3300,-3303,-3302,-3299,-3297,-3297,-3297,-3295,-3296,
+-3303,-3310,-3305,-3302,-3283,-3281,-3269,-3254,-3236,-3230,-3229,-3217,-3198,-3180,-3176,-3174,-3169,-3156,-3142,-3133,
+-3126,-3119,-3117,-3124,-3127,-3114,-3101,-3092,-3077,-3066,-3059,-3052,-3049,-3061,-3070,-3047,-3031,-3021,-3001,-2989,
+-2983,-2955,-2924,-2922,-2911,-2886,-2885,-2887,-2889,-2893,-2885,-2898,-2909,-2929,-2959,-3003,-3050,-3049,-3032,-3026,
+-3024,-3026,-3042,-3039,-3041,-3047,-3053,-3056,-3066,-3074,-3081,-3092,-3116,-3144,-3151,-3126,-3157,-3233,-3313,-3386,
+-3454,-3485,-3508,-3529,-3542,-3573,-3601,-3619,-3646,-3677,-3710,-3739,-3761,-3788,-3813,-3837,-3852,-3854,-3860,-3879,
+-3936,-3971,-4038,-4077,-4084,-4095,-4111,-4130,-4152,-4178,-4206,-4231,-4257,-4281,-4294,-4312,-4333,-4356,-4379,-4405,
+-4429,-4454,-4474,-4493,-4507,-4520,-4537,-4550,-4562,-4577,-4595,-4618,-4631,-4636,-4651,-4648,-4641,-4647,-4663,-4679,
+-4683,-4678,-4686,-4685,-4679,-4680,-4683,-4696,-4702,-4690,-4690,-4687,-4671,-4663,-4656,-4659,-4680,-4674,-4654,-4638,
+-4617,-4597,-4598,-4608,-4611,-4612,-4607,-4607,-4609,-4592,-4572,-4566,-4553,-4539,-4525,-4521,-4509,-4479,-4473,-4464,
+-4457,-4449,-4440,-4432,-4433,-4440,-4441,-4437,-4434,-4426,-4406,-4383,-4374,-4358,-4334,-4325,-4323,-4322,-4319,-4303,
+-4279,-4278,-4294,-4290,-4269,-4239,-4225,-4214,-4221,-4214,-4207,-4188,-4182,-4162,-4128,-4107,-4093,-4077,-4063,-4057,
+-4064,-4056,-4040,-4024,-4007,-3984,-3958,-3933,-3919,-3912,-3907,-3902,-3890,-3874,-3859,-3837,-3812,-3789,-3763,-3747,
+-3742,-3731,-3720,-3701,-3681,-3657,-3639,-3633,-3619,-3596,-3582,-3563,-3537,-3514,-3507,-3498,-3488,-3477,-3457,-3436,
+-3424,-3416,-3400,-3382,-3370,-3354,-3330,-3324,-3312,-3299,-3284,-3270,-3255,-3243,-3240,-3237,-3231,-3229,-3222,-3213,
+-3211,-3204,-3202,-3194,-3191,-3187,-3183,-3177,-3168,-3160,-3148,-3141,-3137,-3131,-3124,-3117,-3112,-3107,-3102,-3099,
+-3098,-3094,-3092,-3092,-3091,-3091,-3090,-3089,-3086,-3079,-3066,-3058,-3051,-3044,-3038,-3033,-3025,-3022,-3021,-3019,
+-3012,-3008,-3005,-3005,-2992,-2994,-2990,-2987,-2976,-2965,-2954,-2952,-2954,-2944,-2913,-2899,-2912,-2893,-2877,-2877,
+-2876,-2875,-2870,-2861,-2851,-2839,-2828,-2821,-2808,-2792,-2777,-2758,-2745,-2741,-2740,-2735,-2728,-2716,-2703,-2688,
+-2683,-2668,-2652,-2642,-2641,-2638,-2631,-2630,-2631,-2632,-2638,-2651,-2651,-2648,-2646,-2624,-2580,-2550,-2520,-2496,
+-2487,-2477,-2468,-2462,-2459,-2454,-2447,-2436,-2424,-2416,-2407,-2406,-2395,-2391,-2388,-2384,-2379,-2376,-2374,-2363,
+-2358,-2350,-2348,-2327,-2300,-2285,-2280,-2288,-2283,-2274,-2271,-2263,-2261,-2264,-2268,-2269,-2271,-2272,-2274,-2275,
+-2279,-2272,-2263,-2264,-2270,-2279,-2280,-2275,-2269,-2266,-2258,-2252,-2247,-2242,-2237,-2232,-2227,-2224,-2221,-2219,
+-2218,-2218,-2216,-2209,-2205,-2194,-2181,-2164,-2151,-2138,-2120,-2095,-2063,-2034,-2010,-1998,-1986,-1975,-1977,-1978,
+-1977,-1969,-1957,-1954,-1958,-1944,-1906,-1883,-1871,-1866,-1866,-1864,-1855,-1841,-1814,-1775,-1745,-1723,-1708,-1696,
+-1678,-1660,-1644,-1633,-1630,-1622,-1616,-1607,-1600,-1591,-1572,-1546,-1530,-1522,-1497,-1467,-1444,-1413,-1392,-1391,
+-1386,-1381,-1377,-1371,-1359,-1343,-1324,-1304,-1282,-1263,-1249,-1235,-1224,-1203,-1183,-1153,-1128,-1119,-1129,-1139,
+-1134,-1123,-1107,-1083,-1053,-1025,-995,-968,-960,-952,-929,-909,-900,-884,-858,-837,-823,-790,-772,-752,
+-731,-716,-703,-692,-677,-660,-639,-619,-601,-584,-567,-546,-527,-504,-486,-467,-448,-430,-412,-390,
+-369,-350,-330,-307,-280,-243,-206,-171,-142,-119,-92,-56,-24,12,47,82,112,138,164,190,
+218,247,279,319,359,399,473,614,688,621,601,615,629,655,699,750,793,830,868,880,
+894,923,978,1045,1118,1177,1225,1271,1314,1356,1394,1425,1455,1488,1520,1552,1587,1614,1623,1632,
+1668,1712,1723,1729,1745,1761,1776,1790,1810,1813,1818,1827,1847,1857,1874,1891,1911,1931,1957,1978,
+1997,2016,2050,2094,2116,2126,2140,2164,2141,2067,2026,2027,2025,2025,2028,2028,2027,2025,2025,2037,
+2049,2065,2080,2091,2106,2113,2114,2124,2141,2155,2155,2151,2147,2138,2126,2095,2058,2028,2013,2019,
+2034,2031,2019,1994,1968,1940,1913,1887,1837,1808,1809,1842,1872,1874,1841,1776,1680,1618,1592,1569,
+1555,1556,1563,1573,1593,1623,1662,1710,1772,1832,1859,1898,1945,1985,2002,2016,2037,2068,2098,2115,
+2125,2122,2125,2130,2158,2143,2100,2055,2039,2037,2040,2044,2051,2068,2100,2137,2150,2165,2196,2243,
+2287,2321,2331,2329,2311,2294,2279,2254,2263,2334,2372,2397,2402,2399,2381,2363,2365,2361,2368,2374,
+2379,2384,2377,2360,2335,2301,2276,2236,2200,2171,2091,1973,1852,1754,1665,1571,1496,1414,1301,1186,
+1097,1034,1022,1077,1195,1341,1497,1654,1754,1829,1893,1935,1952,1978,1986,1979,1983,1996,2021,2057,
+2101,2121,2127,2117,2110,2087,2048,2082,2114,2114,2094,2062,2042,2015,1996,1989,1988,1992,1985,1965,
+1937,1923,1891,1878,1866,1860,1874,1879,1861,1834,1806,1781,1775,1780,1757,1732,1725,1717,1719,1738,
+1729,1719,1687,1670,1662,1653,1650,1646,1639,1633,1634,1629,1608,1595,1590,1586,1590,1614,1619,1609,
+1591,1571,1567,1565,1567,1558,1553,1562,1569,1579,1587,1580,1567,1563,1569,1581,1571,1542,1523,1517,
+1520,1517,1515,1511,1515,1517,1523,1533,1536,1531,1537,1536,1534,1539,1551,1562,1575,1588,1609,1631,
+1645,1652,1657,1664,1670,1682,1697,1707,1722,1742,1754,1776,1796,1824,1850,1875,1905,1917,1925,1943,
+1966,1995,2025,2049,2077,2106,2131,2159,2179,2197,2229,2252,2271,2287,2303,2312,2324,2336,2347,2360,
+2371,2365,2360,2365,2397,2420,2449,2462,2472,2481,2488,2499,2514,2514,2519,2534,2545,2542,2529,2530,
+2541,2532,2534,2550,2555,2553,2555,2564,2570,2571,2580,2600,2617,2621,2601,2576,2558,2566,2607,2655,
+2699,2719,2716,2714,2715,2726,2743,2759,2769,2784,2800,2810,2824,2835,2846,2857,2866,2874,2884,2892,
+2893,2889,2878,2870,2873,2881,2890,2898,2913,2926,2935,2948,2964,2987,3002,3016,3032,3052,3076,3096,
+3107,3122,3137,3152,3159,3170,3187,3201,3211,3222,3231,3235,3239,3253,3266,3282,3300,3316,3329,3335,
+3339,3349,3362,3372,3385,3392,3396,3404,3414,3423,3424,3427,3429,3436,3437,3437,3437,3431,3431,3429,
+3422,3423,3429,3424,3422,3418,3413,3405,3397,3387,3372,3354,3342,3337,3334,3329,3315,3307,3305,3297,
+3287,3282,3277,3273,3270,3269,3263,3257,3258,3263,3267,3271,3272,3274,3275,3272,3268,3268,3263,3262,
+3256,3253,3247,3244,3237,3233,3236,3236,3238,3238,3239,3240,3240,3243,3248,3252,3254,3258,3262,3264,
+3261,3255,3247,3238,3224,3209,3196,3184,3170,3155,3142,3129,3114,3101,3089,3076,3065,3060,3062,3064,
+3070,3063,3059,3064,3072,3078,3080,3082,3085,3085,3085,3081,3070,3060,3044,3024,3003,2982,2962,2944,
+2927,2911,2899,2886,2872,2851,2823,2788,2755,2723,2702,2694,2699,2687,2667,2662,2663,2667,2674,2684,
+2690,2690,2686,2700,2698,2688,2687,2687,2676,2656,2643,2633,2611,2588,2570,2562,2550,2532,2523,2513,
+2505,2491,2483,2476,2475,2476,2479,2475,2455,2406,2353,2295,2251,2244,2234,2210,2171,2119,2058,1985,
+1905,1822,1747,1668,1578,1490,1433,1398,1361,1318,1277,1238,1203,1170,1139,1106,1070,1036,998,964,
+933,904,877,853,830,805,781,754,721,683,637,590,551,519,490,457,424,409,410,397,
+356,311,269,229,191,151,117,89,58,22,-12,-44,-76,-100,-121,-148,-178,-216,-253,-293,
+-322,-344,-373,-399,-421,-442,-457,-487,-517,-542,-573,-601,-627,-651,-674,-695,-705,-707,-726,-742,
+-764,-784,-802,-825,-850,-875,-907,-935,-962,-990,-1020,-1055,-1085,-1115,-1143,-1166,-1190,-1221,-1257,-1295,
+-1331,-1363,-1390,-1412,-1441,-1470,-1498,-1525,-1555,-1587,-1619,-1650,-1681,-1711,-1743,-1775,-1804,-1834,-1864,-1901,
+-1937,-1971,-2002,-2030,-2060,-2090,-2115,-2139,-2167,-2190,-2213,-2237,-2261,-2281,-2306,-2331,-2354,-2379,-2403,-2423,
+-2449,-2475,-2499,-2525,-2549,-2571,-2591,-2613,-2631,-2647,-2662,-2675,-2688,-2706,-2726,-2743,-2763,-2784,-2800,-2817,
+-2837,-2854,-2870,-2884,-2893,-2903,-2924,-2944,-2958,-2971,-2985,-3004,-3027,-3051,-3069,-3086,-3104,-3123,-3140,-3156,
+-3169,-3177,-3185,-3198,-3206,-3220,-3236,-3249,-3259,-3266,-3282,-3287,-3292,-3303,-3312,-3322,-3330,-3334,-3337,-3340,
+-3339,-3338,-3340,-3346,-3348,-3346,-3346,-3350,-3354,-3355,-3354,-3353,-3353,-3353,-3344,-3340,-3344,-3346,-3346,-3349,
+-3346,-3348,-3357,-3352,-3352,-3354,-3345,-3331,-3317,-3306,-3298,-3289,-3287,-3280,-3264,-3251,-3238,-3228,-3222,-3218,
+-3210,-3196,-3188,-3184,-3187,-3189,-3180,-3162,-3156,-3147,-3134,-3118,-3111,-3091,-3099,-3136,-3128,-3105,-3098,-3088,
+-3064,-3054,-3042,-3010,-2977,-2980,-2953,-2937,-2931,-2932,-2934,-2940,-2954,-2961,-2973,-2995,-3029,-3081,-3122,-3111,
+-3091,-3083,-3073,-3080,-3089,-3097,-3099,-3103,-3107,-3112,-3120,-3129,-3142,-3164,-3191,-3210,-3212,-3204,-3226,-3277,
+-3343,-3423,-3484,-3505,-3518,-3528,-3581,-3638,-3647,-3659,-3690,-3716,-3732,-3755,-3779,-3807,-3858,-3886,-3892,-3886,
+-3913,-3964,-4016,-4054,-4097,-4111,-4127,-4154,-4175,-4200,-4224,-4247,-4269,-4286,-4308,-4329,-4357,-4374,-4382,-4405,
+-4432,-4458,-4486,-4509,-4531,-4547,-4560,-4571,-4580,-4593,-4608,-4625,-4639,-4651,-4659,-4664,-4681,-4681,-4670,-4680,
+-4704,-4720,-4728,-4733,-4725,-4728,-4725,-4719,-4729,-4746,-4759,-4748,-4731,-4732,-4725,-4704,-4683,-4678,-4674,-4683,
+-4681,-4675,-4665,-4660,-4655,-4650,-4644,-4630,-4617,-4630,-4630,-4619,-4615,-4609,-4604,-4575,-4550,-4541,-4519,-4510,
+-4503,-4493,-4483,-4483,-4481,-4479,-4463,-4456,-4453,-4462,-4464,-4458,-4443,-4417,-4386,-4371,-4352,-4340,-4341,-4333,
+-4320,-4308,-4308,-4306,-4302,-4296,-4297,-4299,-4285,-4256,-4221,-4209,-4216,-4218,-4214,-4203,-4188,-4161,-4129,-4100,
+-4097,-4089,-4074,-4058,-4035,-4019,-4007,-4000,-3985,-3968,-3956,-3932,-3923,-3916,-3919,-3912,-3878,-3854,-3842,-3839,
+-3820,-3788,-3772,-3758,-3742,-3726,-3708,-3690,-3676,-3665,-3650,-3634,-3615,-3600,-3591,-3560,-3537,-3534,-3522,-3515,
+-3494,-3477,-3472,-3456,-3440,-3426,-3413,-3400,-3387,-3376,-3356,-3340,-3321,-3306,-3309,-3308,-3304,-3293,-3285,-3276,
+-3272,-3266,-3266,-3265,-3261,-3254,-3243,-3235,-3235,-3232,-3226,-3217,-3211,-3205,-3198,-3189,-3182,-3176,-3170,-3161,
+-3157,-3150,-3145,-3147,-3146,-3143,-3147,-3145,-3142,-3141,-3135,-3124,-3119,-3110,-3107,-3105,-3097,-3093,-3088,-3083,
+-3075,-3071,-3069,-3066,-3065,-3062,-3055,-3054,-3056,-3053,-3047,-3042,-3034,-3014,-3004,-2999,-2995,-2992,-2985,-2975,
+-2973,-2964,-2948,-2943,-2937,-2923,-2905,-2887,-2872,-2858,-2848,-2839,-2826,-2811,-2800,-2791,-2781,-2774,-2762,-2745,
+-2738,-2728,-2716,-2703,-2694,-2678,-2667,-2657,-2654,-2655,-2660,-2667,-2661,-2670,-2685,-2700,-2703,-2695,-2682,-2665,
+-2630,-2583,-2549,-2538,-2528,-2518,-2512,-2502,-2486,-2477,-2470,-2463,-2456,-2450,-2453,-2449,-2441,-2423,-2417,-2413,
+-2413,-2407,-2398,-2377,-2381,-2374,-2359,-2343,-2327,-2314,-2317,-2324,-2323,-2320,-2324,-2321,-2317,-2307,-2311,-2317,
+-2313,-2315,-2308,-2311,-2310,-2307,-2308,-2305,-2301,-2297,-2287,-2280,-2275,-2270,-2267,-2261,-2257,-2251,-2249,-2247,
+-2244,-2244,-2244,-2241,-2236,-2228,-2215,-2199,-2183,-2167,-2151,-2137,-2128,-2124,-2118,-2115,-2109,-2081,-2048,-2017,
+-2009,-2016,-2017,-2016,-2004,-1985,-1978,-1952,-1925,-1908,-1894,-1885,-1879,-1874,-1867,-1861,-1849,-1837,-1823,-1802,
+-1774,-1752,-1729,-1706,-1689,-1667,-1632,-1607,-1602,-1601,-1592,-1585,-1575,-1559,-1537,-1513,-1499,-1483,-1471,-1457,
+-1448,-1433,-1420,-1412,-1398,-1387,-1372,-1350,-1326,-1300,-1286,-1274,-1261,-1245,-1232,-1213,-1191,-1169,-1158,-1163,
+-1170,-1174,-1173,-1162,-1148,-1126,-1103,-1079,-1050,-1021,-998,-981,-937,-892,-863,-870,-861,-841,-818,-786,
+-762,-755,-754,-747,-735,-721,-701,-677,-649,-624,-603,-586,-571,-556,-537,-515,-495,-475,-455,-435,
+-416,-397,-377,-351,-322,-289,-254,-220,-187,-163,-139,-108,-69,-31,0,34,67,99,124,149,
+177,208,247,281,310,346,386,439,501,528,541,570,601,634,676,697,728,775,819,859,
+888,908,932,964,1005,1054,1117,1188,1259,1309,1357,1396,1435,1466,1494,1523,1559,1600,1627,1640,
+1650,1662,1691,1730,1755,1760,1763,1772,1785,1799,1812,1822,1832,1846,1864,1886,1903,1922,1932,1950,
+1967,1974,1975,1996,2026,2045,2048,2042,2048,2058,2088,2116,2080,2016,1995,2000,2005,2019,2021,2031,
+2040,2051,2070,2091,2106,2125,2144,2171,2194,2213,2214,2190,2164,2155,2173,2175,2143,2091,2006,1974,
+2010,2074,2096,2085,2065,2052,2019,1979,1922,1857,1800,1814,1929,2080,2162,2140,2041,1942,1882,1834,
+1767,1731,1715,1683,1649,1635,1650,1661,1691,1737,1802,1861,1919,1979,2022,2049,2066,2095,2129,2154,
+2143,2131,2120,2142,2136,2128,2122,2097,2057,2039,2039,2051,2087,2143,2151,2150,2163,2180,2235,2265,
+2278,2328,2315,2235,2213,2246,2262,2250,2250,2274,2327,2360,2379,2404,2416,2346,2332,2385,2374,2359,
+2353,2355,2359,2336,2327,2312,2295,2257,2220,2215,2200,2122,1997,1857,1711,1558,1405,1297,1234,1165,
+1108,1093,1134,1211,1325,1435,1552,1679,1798,1898,1942,1975,1976,1980,1982,1988,2003,2018,2033,2035,
+2034,2044,2052,2047,2053,2039,2024,2024,2051,2068,2069,2062,2040,2025,2004,1974,1950,1937,1927,1910,
+1896,1877,1866,1846,1830,1824,1797,1788,1790,1786,1785,1779,1769,1756,1757,1741,1722,1690,1675,1695,
+1683,1664,1636,1610,1616,1623,1618,1623,1622,1620,1605,1591,1580,1557,1540,1531,1525,1536,1548,1562,
+1561,1555,1551,1537,1532,1531,1510,1501,1500,1506,1516,1530,1549,1542,1541,1538,1527,1518,1509,1502,
+1511,1520,1515,1517,1516,1514,1512,1514,1513,1516,1522,1539,1537,1531,1534,1541,1550,1560,1568,1577,
+1595,1615,1633,1658,1678,1695,1700,1702,1714,1733,1759,1774,1780,1800,1828,1863,1891,1906,1920,1943,
+1969,1992,2016,2043,2077,2103,2126,2146,2168,2198,2224,2252,2275,2295,2310,2323,2336,2350,2355,2363,
+2370,2363,2364,2383,2403,2419,2436,2443,2448,2455,2468,2476,2482,2485,2496,2510,2522,2528,2523,2519,
+2527,2521,2531,2539,2539,2540,2544,2548,2550,2550,2559,2576,2584,2578,2557,2532,2519,2543,2584,2631,
+2670,2693,2695,2680,2675,2679,2691,2704,2718,2732,2751,2769,2783,2798,2811,2824,2834,2841,2849,2857,
+2858,2857,2850,2843,2843,2853,2861,2869,2880,2888,2901,2912,2922,2938,2955,2970,2986,3002,3021,3040,
+3052,3065,3080,3100,3111,3121,3136,3152,3164,3176,3188,3195,3199,3213,3225,3237,3259,3282,3299,3309,
+3309,3318,3326,3335,3344,3354,3360,3369,3382,3390,3390,3396,3401,3403,3403,3402,3399,3398,3395,3394,
+3394,3391,3391,3389,3384,3377,3371,3364,3353,3339,3325,3317,3309,3310,3313,3308,3298,3285,3279,3273,
+3264,3255,3245,3240,3237,3236,3238,3230,3223,3223,3226,3227,3228,3230,3232,3234,3236,3234,3230,3229,
+3226,3224,3221,3218,3216,3216,3214,3215,3216,3213,3210,3209,3208,3210,3210,3215,3222,3227,3234,3239,
+3241,3237,3232,3226,3216,3207,3195,3184,3174,3162,3150,3132,3116,3104,3091,3075,3062,3057,3065,3060,
+3050,3045,3046,3049,3053,3059,3062,3066,3067,3065,3064,3059,3052,3039,3022,3004,2985,2967,2951,2930,
+2908,2897,2885,2864,2854,2844,2829,2805,2769,2741,2717,2699,2701,2700,2683,2664,2659,2658,2653,2639,
+2629,2620,2625,2649,2675,2677,2658,2647,2637,2614,2586,2565,2546,2527,2514,2512,2509,2500,2489,2477,
+2477,2473,2456,2439,2432,2430,2424,2421,2417,2402,2381,2337,2317,2269,2210,2180,2166,2131,2077,2015,
+1948,1866,1775,1700,1640,1568,1497,1447,1412,1366,1321,1277,1236,1201,1170,1138,1108,1073,1036,999,
+964,930,896,864,831,797,765,735,704,678,650,615,566,513,463,418,385,359,343,336,
+325,307,275,239,199,160,126,100,71,43,17,-9,-48,-86,-115,-140,-177,-217,-261,-301,
+-335,-369,-396,-423,-442,-456,-469,-488,-517,-547,-577,-606,-632,-658,-682,-699,-712,-728,-736,-751,
+-766,-782,-802,-825,-851,-876,-897,-927,-957,-985,-1015,-1049,-1084,-1118,-1147,-1177,-1200,-1219,-1248,-1293,
+-1338,-1371,-1398,-1416,-1440,-1472,-1501,-1525,-1550,-1582,-1615,-1648,-1682,-1714,-1744,-1774,-1805,-1835,-1867,-1905,
+-1943,-1975,-2006,-2038,-2068,-2097,-2122,-2148,-2173,-2196,-2222,-2249,-2272,-2291,-2313,-2341,-2371,-2395,-2416,-2441,
+-2465,-2486,-2508,-2534,-2563,-2589,-2612,-2633,-2652,-2671,-2690,-2706,-2720,-2737,-2755,-2769,-2788,-2807,-2827,-2845,
+-2863,-2882,-2899,-2912,-2924,-2937,-2949,-2966,-2984,-3000,-3014,-3026,-3045,-3068,-3088,-3105,-3120,-3134,-3151,-3172,
+-3191,-3206,-3218,-3229,-3240,-3255,-3269,-3284,-3295,-3309,-3317,-3322,-3325,-3335,-3349,-3364,-3376,-3385,-3390,-3392,
+-3393,-3390,-3392,-3396,-3398,-3393,-3395,-3398,-3401,-3403,-3405,-3405,-3402,-3401,-3395,-3385,-3383,-3388,-3386,-3384,
+-3391,-3395,-3392,-3402,-3405,-3394,-3403,-3403,-3387,-3371,-3362,-3352,-3344,-3337,-3328,-3323,-3327,-3312,-3303,-3285,
+-3277,-3278,-3266,-3253,-3253,-3256,-3259,-3259,-3235,-3221,-3216,-3210,-3189,-3164,-3177,-3184,-3201,-3207,-3185,-3172,
+-3164,-3151,-3130,-3116,-3094,-3058,-3039,-3020,-2999,-2999,-2999,-3000,-3002,-2998,-3011,-3018,-3029,-3060,-3101,-3155,
+-3184,-3176,-3153,-3135,-3134,-3132,-3145,-3150,-3154,-3160,-3167,-3173,-3183,-3192,-3208,-3226,-3222,-3270,-3295,-3311,
+-3333,-3370,-3425,-3482,-3519,-3530,-3530,-3546,-3579,-3623,-3670,-3714,-3744,-3776,-3811,-3830,-3842,-3858,-3888,-3931,
+-3948,-3937,-3937,-3972,-4023,-4073,-4121,-4154,-4190,-4221,-4247,-4268,-4289,-4318,-4328,-4342,-4360,-4387,-4406,-4421,
+-4434,-4459,-4486,-4516,-4543,-4564,-4578,-4588,-4602,-4613,-4623,-4639,-4661,-4673,-4685,-4697,-4698,-4703,-4725,-4732,
+-4717,-4703,-4714,-4735,-4736,-4740,-4750,-4740,-4727,-4731,-4756,-4769,-4767,-4780,-4793,-4786,-4773,-4748,-4733,-4724,
+-4716,-4707,-4701,-4695,-4695,-4691,-4686,-4682,-4681,-4673,-4664,-4655,-4652,-4646,-4642,-4629,-4614,-4599,-4576,-4568,
+-4552,-4533,-4514,-4509,-4497,-4489,-4485,-4487,-4494,-4497,-4498,-4488,-4478,-4481,-4482,-4468,-4439,-4410,-4384,-4363,
+-4353,-4341,-4329,-4319,-4304,-4297,-4300,-4302,-4302,-4306,-4307,-4303,-4294,-4272,-4249,-4231,-4213,-4213,-4210,-4196,
+-4186,-4160,-4135,-4114,-4095,-4075,-4053,-4034,-4015,-3998,-3989,-3981,-3968,-3957,-3944,-3938,-3933,-3918,-3899,-3884,
+-3879,-3849,-3822,-3813,-3813,-3793,-3780,-3767,-3745,-3732,-3716,-3695,-3672,-3647,-3631,-3618,-3605,-3593,-3576,-3561,
+-3555,-3545,-3535,-3526,-3506,-3490,-3473,-3463,-3452,-3442,-3428,-3408,-3391,-3381,-3380,-3377,-3373,-3364,-3359,-3351,
+-3343,-3333,-3325,-3319,-3314,-3313,-3309,-3304,-3299,-3296,-3292,-3280,-3274,-3270,-3269,-3266,-3257,-3245,-3236,-3230,
+-3227,-3222,-3215,-3214,-3211,-3206,-3204,-3201,-3202,-3202,-3199,-3193,-3191,-3184,-3177,-3175,-3169,-3163,-3156,-3159,
+-3146,-3138,-3131,-3123,-3123,-3115,-3108,-3109,-3108,-3110,-3108,-3113,-3113,-3105,-3088,-3079,-3071,-3061,-3050,-3040,
+-3031,-3036,-3032,-3030,-3024,-3004,-2985,-2965,-2948,-2935,-2921,-2910,-2896,-2884,-2875,-2865,-2856,-2844,-2830,-2810,
+-2796,-2787,-2773,-2735,-2671,-2691,-2726,-2717,-2706,-2697,-2690,-2689,-2690,-2689,-2693,-2703,-2719,-2729,-2731,-2731,
+-2733,-2731,-2730,-2704,-2660,-2625,-2607,-2588,-2563,-2546,-2534,-2530,-2525,-2513,-2502,-2499,-2510,-2499,-2483,-2484,
+-2477,-2466,-2460,-2447,-2427,-2411,-2411,-2412,-2405,-2391,-2387,-2376,-2366,-2365,-2370,-2369,-2364,-2366,-2368,-2364,
+-2357,-2350,-2348,-2345,-2344,-2352,-2351,-2341,-2336,-2325,-2319,-2315,-2312,-2307,-2302,-2299,-2296,-2295,-2290,-2286,
+-2287,-2287,-2285,-2282,-2275,-2263,-2249,-2231,-2213,-2198,-2177,-2152,-2129,-2114,-2104,-2100,-2110,-2121,-2125,-2118,
+-2105,-2096,-2073,-2059,-2046,-2020,-2008,-1997,-1984,-1972,-1959,-1942,-1924,-1909,-1896,-1881,-1865,-1858,-1848,-1835,
+-1818,-1805,-1795,-1788,-1779,-1761,-1736,-1697,-1654,-1614,-1594,-1587,-1581,-1579,-1581,-1578,-1568,-1556,-1537,-1517,
+-1503,-1487,-1472,-1459,-1448,-1433,-1415,-1397,-1377,-1351,-1327,-1308,-1292,-1274,-1265,-1257,-1248,-1237,-1223,-1213,
+-1211,-1210,-1202,-1187,-1170,-1141,-1106,-1075,-1048,-1011,-977,-980,-988,-978,-947,-915,-909,-904,-880,-857,
+-826,-806,-767,-757,-755,-737,-721,-713,-703,-680,-655,-630,-602,-586,-577,-562,-545,-525,-505,-483,
+-461,-439,-417,-394,-367,-337,-305,-279,-250,-221,-192,-158,-123,-90,-56,-17,21,50,79,104,
+127,154,185,223,258,313,389,432,434,465,502,543,582,601,635,680,729,760,787,817,
+846,879,916,953,986,1018,1055,1092,1151,1199,1256,1325,1380,1424,1460,1500,1546,1588,1617,1654,
+1650,1659,1699,1721,1723,1741,1753,1770,1785,1797,1797,1802,1820,1834,1854,1878,1896,1908,1915,1925,
+1936,1946,1948,1948,1942,1924,1917,1918,1931,1925,1914,1910,1916,1935,1965,1999,1970,1944,1958,1979,
+2012,2043,2072,2100,2127,2151,2176,2200,2232,2276,2339,2400,2394,2347,2294,2254,2153,2065,1986,1974,
+2008,2000,2022,2068,2117,2131,2140,2154,2157,2129,2108,2093,2128,2239,2324,2425,2469,2449,2428,2413,
+2406,2383,2325,2273,2227,2187,2125,2062,2009,1994,1998,2018,2012,1982,1940,1932,1952,1990,2039,2070,
+2060,2030,2024,2042,2078,2107,2089,2049,2053,2053,2059,2070,2091,2134,2185,2175,2186,2194,2204,2232,
+2232,2205,2201,2208,2252,2266,2204,2221,2261,2269,2254,2274,2312,2329,2327,2337,2337,2351,2364,2343,
+2340,2328,2328,2328,2340,2333,2316,2283,2254,2224,2183,2129,2061,1978,1871,1717,1529,1373,1259,1200,
+1184,1203,1274,1369,1469,1559,1647,1730,1795,1844,1883,1910,1923,1931,1937,1942,1941,1944,1948,1954,
+1971,2000,2018,2023,2002,1972,1989,2033,2040,2055,2040,2023,2020,2007,1987,1951,1919,1895,1875,1850,
+1831,1825,1821,1818,1824,1815,1790,1754,1732,1722,1695,1689,1696,1684,1684,1688,1693,1678,1648,1642,
+1642,1635,1627,1610,1588,1588,1596,1581,1572,1579,1580,1567,1557,1530,1507,1497,1503,1510,1514,1517,
+1520,1507,1500,1500,1493,1506,1503,1498,1493,1479,1469,1461,1463,1467,1481,1492,1495,1491,1493,1486,
+1485,1506,1519,1517,1471,1470,1469,1476,1485,1493,1497,1499,1511,1517,1520,1533,1545,1549,1551,1562,
+1585,1606,1619,1627,1638,1655,1678,1697,1721,1743,1755,1772,1793,1814,1829,1846,1872,1901,1919,1938,
+1963,1991,2022,2047,2072,2100,2124,2143,2171,2199,2216,2245,2271,2296,2317,2332,2344,2355,2365,2375,
+2376,2373,2381,2388,2394,2406,2420,2426,2428,2435,2443,2447,2452,2458,2470,2488,2500,2494,2488,2497,
+2505,2510,2522,2525,2528,2532,2534,2536,2533,2535,2547,2554,2552,2540,2524,2499,2497,2525,2560,2598,
+2632,2657,2658,2642,2636,2636,2644,2655,2664,2677,2696,2717,2740,2759,2778,2790,2801,2809,2815,2820,
+2822,2816,2813,2816,2818,2822,2829,2837,2845,2853,2862,2871,2883,2893,2908,2922,2936,2950,2967,2980,
+2988,3001,3016,3037,3052,3062,3078,3099,3116,3130,3143,3155,3161,3172,3188,3198,3217,3239,3258,3273,
+3280,3282,3290,3301,3311,3314,3322,3329,3343,3357,3364,3371,3369,3365,3370,3369,3366,3366,3366,3366,
+3367,3366,3361,3354,3347,3343,3336,3325,3314,3296,3283,3280,3276,3275,3284,3284,3280,3271,3261,3252,
+3241,3232,3222,3218,3213,3211,3210,3207,3202,3195,3191,3191,3191,3192,3193,3197,3199,3202,3202,3201,
+3198,3198,3197,3197,3197,3197,3195,3195,3192,3186,3182,3180,3182,3192,3198,3192,3198,3204,3213,3219,
+3225,3227,3222,3216,3207,3200,3193,3185,3175,3163,3146,3134,3120,3109,3096,3084,3069,3061,3056,3041,
+3032,3031,3033,3035,3036,3037,3039,3039,3036,3036,3033,3027,3019,3007,2991,2975,2965,2954,2940,2920,
+2895,2876,2873,2855,2836,2833,2830,2816,2792,2762,2733,2713,2705,2700,2693,2681,2665,2670,2659,2656,
+2633,2610,2596,2589,2586,2598,2607,2597,2586,2577,2562,2543,2522,2497,2477,2469,2473,2457,2451,2440,
+2437,2440,2426,2408,2394,2384,2381,2372,2356,2344,2335,2319,2297,2258,2239,2227,2158,2122,2087,2039,
+1980,1903,1824,1744,1673,1606,1535,1481,1448,1412,1368,1318,1270,1228,1187,1150,1115,1086,1051,1017,
+982,949,912,877,841,805,769,731,689,654,621,593,565,527,480,430,386,352,318,286,
+259,236,225,217,201,174,145,107,66,31,5,-5,-31,-71,-106,-142,-183,-226,-268,-306,
+-340,-375,-407,-438,-463,-483,-501,-525,-545,-559,-570,-603,-637,-663,-690,-713,-722,-729,-737,-751,
+-767,-783,-802,-826,-850,-877,-901,-929,-962,-995,-1031,-1064,-1099,-1132,-1166,-1190,-1224,-1247,-1267,-1296,
+-1332,-1364,-1394,-1419,-1443,-1473,-1507,-1537,-1561,-1591,-1622,-1653,-1683,-1716,-1752,-1784,-1816,-1849,-1881,-1913,
+-1945,-1982,-2016,-2046,-2076,-2105,-2134,-2158,-2188,-2214,-2238,-2264,-2288,-2309,-2331,-2354,-2377,-2406,-2433,-2453,
+-2479,-2503,-2530,-2549,-2572,-2604,-2634,-2656,-2675,-2693,-2717,-2740,-2757,-2772,-2788,-2808,-2825,-2845,-2861,-2877,
+-2893,-2912,-2931,-2948,-2964,-2975,-2987,-3001,-3019,-3033,-3047,-3060,-3073,-3088,-3107,-3126,-3144,-3159,-3170,-3186,
+-3211,-3235,-3246,-3259,-3281,-3291,-3301,-3315,-3329,-3340,-3356,-3366,-3370,-3374,-3385,-3399,-3407,-3416,-3428,-3439,
+-3443,-3446,-3450,-3454,-3453,-3449,-3450,-3452,-3455,-3461,-3465,-3460,-3459,-3457,-3454,-3450,-3445,-3438,-3444,-3451,
+-3449,-3452,-3453,-3446,-3448,-3459,-3458,-3460,-3460,-3446,-3425,-3415,-3412,-3409,-3402,-3394,-3390,-3387,-3382,-3370,
+-3364,-3353,-3340,-3332,-3326,-3324,-3330,-3329,-3316,-3308,-3294,-3286,-3277,-3262,-3251,-3241,-3237,-3254,-3274,-3266,
+-3244,-3235,-3231,-3213,-3194,-3168,-3135,-3109,-3098,-3073,-3055,-3053,-3057,-3059,-3058,-3063,-3069,-3074,-3090,-3122,
+-3151,-3204,-3229,-3218,-3204,-3192,-3187,-3185,-3195,-3207,-3211,-3218,-3225,-3234,-3244,-3256,-3260,-3270,-3299,-3325,
+-3353,-3379,-3415,-3455,-3480,-3479,-3500,-3535,-3554,-3570,-3607,-3653,-3684,-3713,-3735,-3763,-3798,-3843,-3876,-3883,
+-3897,-3910,-3910,-3918,-3934,-3949,-3956,-4044,-4128,-4197,-4257,-4313,-4360,-4383,-4398,-4416,-4423,-4422,-4427,-4446,
+-4460,-4466,-4487,-4520,-4539,-4555,-4576,-4596,-4615,-4646,-4652,-4656,-4675,-4688,-4696,-4707,-4725,-4731,-4730,-4740,
+-4766,-4776,-4751,-4734,-4730,-4740,-4752,-4767,-4770,-4749,-4753,-4760,-4753,-4775,-4814,-4843,-4845,-4819,-4792,-4776,
+-4760,-4744,-4725,-4719,-4721,-4722,-4711,-4703,-4701,-4695,-4693,-4690,-4688,-4682,-4683,-4676,-4662,-4645,-4635,-4622,
+-4601,-4581,-4568,-4565,-4565,-4562,-4556,-4535,-4519,-4513,-4491,-4481,-4483,-4491,-4499,-4501,-4491,-4476,-4471,-4459,
+-4435,-4398,-4372,-4350,-4341,-4336,-4329,-4320,-4309,-4303,-4299,-4289,-4275,-4278,-4278,-4287,-4287,-4268,-4250,-4220,
+-4198,-4194,-4194,-4188,-4176,-4157,-4131,-4106,-4084,-4060,-4046,-4031,-4018,-4007,-3992,-3980,-3964,-3953,-3947,-3931,
+-3909,-3899,-3888,-3875,-3858,-3828,-3812,-3803,-3797,-3792,-3787,-3778,-3761,-3736,-3721,-3704,-3690,-3676,-3648,-3623,
+-3614,-3600,-3586,-3575,-3573,-3560,-3545,-3531,-3520,-3508,-3494,-3477,-3460,-3453,-3454,-3453,-3445,-3438,-3429,-3417,
+-3410,-3406,-3399,-3389,-3378,-3373,-3367,-3361,-3356,-3350,-3345,-3346,-3348,-3343,-3341,-3332,-3325,-3319,-3318,-3308,
+-3302,-3294,-3285,-3284,-3284,-3279,-3272,-3268,-3268,-3268,-3263,-3258,-3254,-3258,-3254,-3251,-3240,-3230,-3224,-3215,
+-3228,-3218,-3205,-3196,-3192,-3190,-3177,-3169,-3174,-3167,-3148,-3152,-3160,-3161,-3159,-3156,-3152,-3138,-3130,-3115,
+-3105,-3099,-3096,-3092,-3084,-3077,-3063,-3048,-3032,-3008,-2989,-2981,-2967,-2955,-2943,-2931,-2925,-2917,-2907,-2901,
+-2888,-2876,-2860,-2831,-2796,-2761,-2789,-2786,-2770,-2761,-2739,-2720,-2722,-2728,-2731,-2728,-2725,-2735,-2751,-2763,
+-2777,-2785,-2789,-2798,-2797,-2784,-2768,-2752,-2718,-2675,-2644,-2627,-2605,-2586,-2569,-2563,-2551,-2548,-2552,-2540,
+-2521,-2517,-2512,-2508,-2504,-2494,-2487,-2475,-2467,-2451,-2437,-2452,-2450,-2431,-2415,-2410,-2417,-2410,-2413,-2418,
+-2420,-2414,-2407,-2403,-2401,-2394,-2384,-2376,-2376,-2374,-2367,-2359,-2354,-2348,-2343,-2339,-2336,-2334,-2329,-2325,
+-2327,-2327,-2323,-2319,-2310,-2296,-2280,-2265,-2245,-2229,-2214,-2196,-2171,-2146,-2127,-2117,-2107,-2100,-2100,-2101,
+-2110,-2119,-2122,-2121,-2120,-2099,-2071,-2042,-2020,-2002,-1991,-1980,-1970,-1957,-1943,-1930,-1914,-1896,-1876,-1856,
+-1838,-1821,-1805,-1790,-1783,-1780,-1776,-1773,-1764,-1747,-1719,-1692,-1668,-1640,-1613,-1594,-1589,-1592,-1590,-1573,
+-1557,-1543,-1529,-1512,-1494,-1477,-1459,-1441,-1424,-1404,-1383,-1365,-1347,-1327,-1314,-1298,-1287,-1278,-1271,-1263,
+-1254,-1239,-1220,-1204,-1197,-1185,-1162,-1138,-1105,-1081,-1054,-1035,-1007,-988,-974,-977,-975,-953,-917,-904,
+-880,-855,-853,-836,-812,-796,-773,-747,-724,-714,-702,-686,-674,-648,-615,-590,-579,-564,-546,-524,
+-499,-478,-456,-436,-409,-381,-350,-320,-299,-276,-244,-210,-177,-144,-111,-79,-36,-2,29,56,
+83,110,140,172,206,243,286,326,365,410,439,465,508,558,608,648,676,710,755,801,
+839,865,883,913,946,984,1031,1075,1100,1129,1170,1215,1252,1293,1341,1410,1475,1515,1532,1576,
+1635,1658,1672,1701,1718,1729,1743,1744,1758,1776,1793,1812,1824,1830,1832,1850,1869,1887,1893,1891,
+1892,1893,1880,1865,1845,1822,1800,1786,1779,1751,1728,1712,1698,1688,1687,1708,1759,1813,1847,1871,
+1934,2030,2083,2122,2163,2204,2236,2266,2315,2382,2452,2473,2448,2370,2327,2233,2144,2110,2114,2178,
+2180,2158,2172,2158,2127,2121,2126,2167,2209,2185,2122,2094,2121,2169,2216,2295,2409,2478,2498,2506,
+2517,2531,2531,2533,2540,2537,2519,2493,2454,2411,2387,2367,2337,2290,2200,2057,1897,1777,1713,1700,
+1699,1727,1757,1787,1855,1963,2048,2047,2025,2018,2032,2074,2118,2169,2206,2235,2213,2196,2211,2241,
+2221,2169,2174,2195,2210,2352,2241,2188,2263,2279,2288,2255,2262,2262,2288,2318,2321,2320,2326,2336,
+2328,2310,2325,2318,2307,2281,2248,2254,2248,2222,2199,2150,2111,2069,1987,1903,1808,1729,1634,1500,
+1407,1407,1454,1516,1580,1635,1694,1744,1761,1760,1767,1788,1811,1826,1836,1848,1850,1843,1848,1856,
+1848,1857,1873,1879,1861,1847,1810,1812,1844,1869,1871,1854,1840,1827,1810,1805,1802,1800,1803,1772,
+1734,1709,1692,1676,1670,1665,1662,1666,1668,1666,1652,1632,1625,1633,1621,1595,1581,1585,1591,1594,
+1602,1605,1598,1582,1540,1534,1549,1538,1527,1514,1505,1504,1508,1523,1531,1503,1480,1469,1466,1459,
+1459,1457,1451,1451,1454,1450,1442,1449,1457,1463,1466,1464,1460,1454,1450,1446,1439,1433,1436,1451,
+1464,1459,1464,1468,1471,1438,1451,1458,1448,1445,1459,1467,1464,1479,1498,1507,1512,1519,1534,1551,
+1562,1569,1576,1592,1619,1643,1669,1690,1708,1721,1740,1764,1786,1809,1832,1853,1872,1892,1910,1929,
+1947,1975,2003,2032,2062,2083,2107,2131,2151,2178,2213,2238,2261,2283,2308,2332,2349,2363,2376,2380,
+2378,2380,2389,2397,2397,2400,2414,2418,2413,2417,2418,2421,2430,2440,2453,2468,2476,2474,2473,2478,
+2480,2495,2506,2513,2518,2519,2519,2520,2522,2528,2535,2534,2522,2497,2478,2466,2482,2511,2540,2566,
+2595,2618,2616,2598,2593,2594,2599,2609,2616,2621,2637,2660,2683,2707,2728,2749,2760,2767,2775,2783,
+2788,2784,2776,2778,2784,2792,2795,2801,2807,2815,2824,2830,2838,2847,2856,2869,2878,2889,2903,2915,
+2924,2935,2952,2967,2987,3002,3018,3039,3059,3077,3092,3103,3112,3127,3143,3155,3167,3189,3207,3224,
+3240,3249,3257,3265,3278,3287,3296,3297,3309,3320,3332,3343,3347,3346,3347,3345,3342,3340,3338,3339,
+3339,3337,3335,3331,3324,3317,3310,3299,3288,3275,3264,3261,3258,3244,3247,3255,3252,3245,3236,3225,
+3216,3210,3203,3196,3191,3188,3188,3187,3185,3179,3171,3166,3165,3165,3165,3166,3170,3173,3174,3176,
+3175,3177,3177,3179,3181,3181,3182,3177,3170,3165,3162,3161,3164,3190,3218,3193,3181,3184,3196,3206,
+3213,3217,3217,3214,3209,3203,3193,3181,3166,3153,3139,3128,3118,3108,3095,3086,3077,3068,3049,3035,
+3026,3020,3018,3017,3015,3014,3012,3006,3001,2997,2991,2986,2979,2970,2960,2948,2932,2922,2910,2895,
+2879,2863,2851,2843,2831,2821,2816,2809,2799,2775,2748,2718,2694,2680,2662,2649,2639,2636,2633,2625,
+2620,2604,2582,2567,2555,2554,2549,2554,2560,2557,2534,2518,2497,2471,2448,2429,2426,2424,2407,2394,
+2388,2386,2379,2369,2358,2346,2335,2328,2316,2296,2277,2268,2255,2242,2220,2168,2109,2047,2001,1982,
+1972,1929,1876,1819,1766,1708,1639,1564,1490,1438,1402,1362,1316,1268,1221,1175,1131,1088,1051,1019,
+987,957,924,889,852,814,777,737,692,644,596,550,515,484,451,412,365,335,318,289,
+249,214,190,179,177,166,144,114,81,44,5,-29,-52,-72,-93,-118,-153,-195,-238,-279,
+-322,-369,-407,-440,-472,-509,-536,-557,-583,-608,-621,-630,-642,-651,-688,-722,-743,-756,-765,-769,
+-776,-790,-803,-825,-846,-876,-910,-938,-970,-1002,-1040,-1079,-1114,-1150,-1180,-1212,-1239,-1264,-1291,-1306,
+-1327,-1356,-1384,-1410,-1435,-1462,-1496,-1532,-1563,-1598,-1631,-1659,-1689,-1725,-1760,-1796,-1830,-1865,-1899,-1930,
+-1958,-1991,-2027,-2061,-2091,-2117,-2144,-2172,-2201,-2231,-2257,-2281,-2308,-2332,-2355,-2370,-2395,-2423,-2450,-2477,
+-2503,-2528,-2553,-2573,-2592,-2619,-2652,-2683,-2708,-2729,-2748,-2770,-2792,-2809,-2826,-2846,-2869,-2889,-2906,-2921,
+-2939,-2957,-2973,-2991,-3009,-3023,-3037,-3049,-3061,-3075,-3086,-3098,-3112,-3130,-3145,-3155,-3168,-3191,-3213,-3232,
+-3245,-3261,-3279,-3296,-3317,-3334,-3346,-3360,-3371,-3383,-3397,-3411,-3419,-3423,-3431,-3444,-3452,-3458,-3469,-3480,
+-3489,-3494,-3501,-3509,-3513,-3511,-3510,-3515,-3518,-3518,-3523,-3527,-3522,-3516,-3509,-3510,-3511,-3518,-3516,-3514,
+-3519,-3519,-3514,-3511,-3510,-3497,-3499,-3514,-3519,-3517,-3504,-3489,-3476,-3473,-3471,-3469,-3464,-3458,-3456,-3447,
+-3435,-3429,-3426,-3415,-3410,-3404,-3394,-3400,-3400,-3398,-3385,-3366,-3352,-3340,-3327,-3313,-3305,-3304,-3310,-3328,
+-3338,-3329,-3306,-3295,-3290,-3267,-3254,-3233,-3208,-3178,-3155,-3123,-3116,-3115,-3117,-3122,-3123,-3134,-3136,-3147,
+-3167,-3194,-3212,-3258,-3278,-3266,-3250,-3236,-3237,-3246,-3255,-3261,-3270,-3277,-3286,-3297,-3307,-3315,-3333,-3325,
+-3353,-3369,-3394,-3432,-3474,-3502,-3508,-3508,-3559,-3573,-3592,-3597,-3607,-3635,-3672,-3708,-3735,-3765,-3788,-3814,
+-3841,-3874,-3911,-3927,-3961,-3975,-3978,-3988,-4012,-4054,-4120,-4214,-4305,-4372,-4423,-4459,-4482,-4491,-4491,-4489,
+-4489,-4498,-4505,-4513,-4537,-4573,-4591,-4599,-4624,-4653,-4664,-4659,-4675,-4696,-4713,-4728,-4731,-4748,-4763,-4776,
+-4789,-4786,-4780,-4797,-4791,-4764,-4747,-4753,-4761,-4761,-4773,-4785,-4790,-4783,-4786,-4794,-4796,-4806,-4815,-4824,
+-4828,-4810,-4794,-4796,-4785,-4765,-4751,-4743,-4731,-4719,-4722,-4724,-4715,-4714,-4711,-4707,-4703,-4699,-4694,-4675,
+-4657,-4646,-4627,-4606,-4597,-4588,-4588,-4588,-4591,-4584,-4572,-4563,-4548,-4533,-4519,-4505,-4497,-4493,-4490,-4500,
+-4510,-4491,-4460,-4452,-4433,-4402,-4373,-4347,-4338,-4331,-4328,-4316,-4297,-4292,-4282,-4272,-4266,-4266,-4265,-4262,
+-4253,-4240,-4236,-4224,-4202,-4183,-4170,-4163,-4154,-4139,-4128,-4108,-4091,-4069,-4058,-4041,-4019,-3999,-3993,-3988,
+-3972,-3948,-3939,-3923,-3912,-3900,-3886,-3871,-3860,-3844,-3825,-3811,-3802,-3790,-3780,-3767,-3749,-3727,-3714,-3707,
+-3703,-3691,-3660,-3652,-3646,-3630,-3614,-3600,-3590,-3580,-3563,-3547,-3536,-3530,-3526,-3520,-3512,-3506,-3497,-3486,
+-3477,-3476,-3469,-3464,-3453,-3445,-3437,-3431,-3423,-3414,-3408,-3402,-3396,-3392,-3395,-3398,-3397,-3387,-3393,-3390,
+-3383,-3371,-3362,-3357,-3356,-3357,-3349,-3345,-3345,-3346,-3344,-3335,-3330,-3330,-3329,-3326,-3316,-3308,-3297,-3287,
+-3276,-3273,-3273,-3261,-3248,-3241,-3228,-3234,-3245,-3249,-3219,-3204,-3199,-3197,-3205,-3211,-3202,-3196,-3193,-3187,
+-3177,-3171,-3164,-3152,-3146,-3139,-3124,-3111,-3100,-3091,-3072,-3052,-3034,-3023,-3013,-3004,-3000,-2990,-2976,-2965,
+-2966,-2961,-2949,-2935,-2912,-2895,-2888,-2872,-2859,-2834,-2815,-2796,-2783,-2781,-2780,-2783,-2788,-2784,-2783,-2787,
+-2791,-2793,-2807,-2819,-2832,-2844,-2843,-2837,-2832,-2818,-2792,-2769,-2735,-2707,-2686,-2658,-2640,-2627,-2604,-2591,
+-2589,-2584,-2572,-2562,-2556,-2554,-2544,-2533,-2521,-2515,-2500,-2484,-2483,-2488,-2475,-2470,-2469,-2465,-2462,-2458,
+-2463,-2462,-2452,-2443,-2436,-2427,-2423,-2423,-2414,-2410,-2403,-2397,-2396,-2393,-2391,-2388,-2385,-2380,-2376,-2369,
+-2365,-2362,-2354,-2347,-2336,-2323,-2308,-2294,-2278,-2264,-2249,-2237,-2224,-2204,-2185,-2169,-2159,-2151,-2139,-2124,
+-2109,-2100,-2093,-2090,-2094,-2100,-2101,-2096,-2086,-2068,-2039,-2013,-1998,-1982,-1970,-1960,-1950,-1937,-1918,-1900,
+-1881,-1863,-1846,-1828,-1814,-1801,-1791,-1783,-1776,-1773,-1768,-1766,-1759,-1740,-1713,-1683,-1655,-1633,-1609,-1593,
+-1583,-1572,-1560,-1550,-1532,-1515,-1498,-1479,-1459,-1440,-1418,-1418,-1414,-1404,-1387,-1369,-1350,-1334,-1321,-1304,
+-1289,-1269,-1249,-1234,-1220,-1208,-1194,-1185,-1174,-1158,-1146,-1130,-1115,-1094,-1055,-1020,-991,-967,-957,-950,
+-934,-913,-897,-877,-855,-830,-825,-816,-800,-778,-749,-726,-707,-690,-670,-646,-614,-589,-578,-562,
+-543,-518,-495,-472,-450,-426,-397,-366,-339,-312,-285,-255,-221,-189,-159,-125,-89,-52,-21,4,
+33,60,87,112,144,183,219,257,286,316,362,424,468,507,543,577,620,665,707,743,
+771,808,848,885,916,943,972,1003,1040,1077,1108,1143,1179,1213,1249,1283,1326,1357,1382,1473,
+1535,1562,1596,1663,1713,1739,1738,1742,1745,1754,1769,1790,1805,1824,1837,1848,1845,1844,1852,1845,
+1826,1799,1774,1758,1726,1684,1645,1615,1586,1555,1536,1522,1516,1516,1523,1545,1577,1624,1683,1766,
+1862,1998,2146,2266,2337,2364,2391,2413,2407,2408,2403,2357,2309,2293,2286,2277,2281,2273,2232,2204,
+2190,2190,2220,2228,2149,2071,2048,2050,2073,2106,2113,2070,2051,2062,2082,2117,2183,2274,2362,2399,
+2412,2423,2431,2442,2445,2464,2482,2488,2488,2483,2469,2454,2441,2416,2360,2273,2170,2035,1904,1801,
+1763,1777,1845,1935,2009,2046,2040,2009,1988,1982,1992,2010,2091,2184,2232,2263,2253,2226,2189,2131,
+2100,2123,2155,2169,2195,2226,2209,2171,2161,2183,2206,2222,2237,2237,2246,2247,2251,2242,2232,2240,
+2244,2250,2229,2196,2177,2176,2172,2204,2245,2199,2145,2089,2054,2040,2030,2021,2000,1949,1896,1829,
+1755,1690,1644,1599,1582,1600,1628,1642,1633,1612,1580,1562,1568,1593,1623,1646,1669,1686,1699,1713,
+1731,1743,1747,1756,1767,1775,1782,1787,1789,1798,1798,1796,1785,1765,1741,1730,1709,1690,1672,1660,
+1654,1656,1675,1671,1657,1662,1660,1647,1625,1606,1595,1584,1579,1583,1585,1583,1569,1546,1540,1537,
+1539,1529,1527,1527,1518,1492,1474,1477,1487,1499,1489,1481,1471,1457,1463,1486,1487,1470,1465,1453,
+1423,1411,1408,1409,1414,1425,1433,1430,1422,1426,1425,1429,1434,1446,1441,1437,1433,1431,1420,1409,
+1403,1407,1409,1420,1429,1438,1396,1410,1425,1427,1432,1448,1452,1451,1453,1464,1481,1501,1516,1529,
+1538,1552,1566,1579,1599,1618,1636,1660,1690,1718,1739,1759,1784,1799,1814,1836,1865,1894,1921,1948,
+1968,1985,2005,2032,2045,2059,2079,2103,2137,2168,2191,2226,2257,2281,2304,2325,2346,2365,2377,2378,
+2381,2387,2385,2389,2393,2395,2396,2394,2392,2389,2390,2396,2414,2434,2444,2448,2444,2444,2452,2453,
+2463,2480,2489,2495,2498,2500,2501,2507,2514,2519,2517,2508,2485,2459,2440,2447,2467,2494,2516,2534,
+2552,2571,2571,2553,2547,2546,2553,2562,2568,2568,2582,2602,2621,2642,2662,2678,2693,2704,2714,2728,
+2737,2733,2731,2730,2733,2745,2751,2756,2765,2773,2782,2792,2797,2801,2809,2814,2822,2828,2839,2851,
+2859,2867,2876,2891,2915,2937,2952,2971,2997,3015,3032,3047,3059,3071,3090,3108,3116,3133,3152,3173,
+3191,3204,3223,3233,3247,3257,3260,3263,3272,3286,3296,3307,3316,3323,3325,3320,3319,3317,3313,3313,
+3314,3312,3309,3306,3303,3295,3289,3280,3269,3260,3249,3241,3233,3224,3217,3223,3222,3217,3214,3210,
+3205,3194,3185,3176,3171,3166,3163,3163,3161,3161,3154,3146,3144,3143,3140,3142,3143,3146,3148,3151,
+3151,3153,3158,3159,3160,3164,3166,3168,3166,3162,3154,3154,3161,3169,3177,3170,3164,3159,3168,3175,
+3183,3189,3190,3193,3194,3193,3189,3181,3167,3146,3129,3116,3115,3117,3097,3086,3077,3069,3057,3045,
+3029,3021,3011,3002,2998,2990,2983,2975,2967,2958,2950,2945,2941,2933,2926,2917,2904,2891,2878,2862,
+2850,2838,2832,2826,2823,2819,2814,2809,2798,2782,2756,2726,2699,2674,2653,2635,2620,2604,2590,2582,
+2586,2578,2554,2535,2521,2513,2506,2503,2511,2507,2490,2473,2457,2435,2411,2401,2398,2378,2358,2349,
+2342,2338,2328,2323,2319,2309,2301,2292,2280,2268,2249,2230,2212,2194,2181,2170,2156,2130,2085,2002,
+1922,1885,1868,1841,1781,1711,1671,1638,1592,1533,1457,1387,1333,1287,1239,1196,1149,1104,1059,1018,
+981,946,915,888,861,830,794,752,709,663,617,567,518,474,430,386,343,300,266,239,
+218,197,174,150,133,120,102,82,61,36,8,-22,-49,-78,-102,-125,-155,-190,-232,-279,
+-324,-357,-391,-430,-468,-511,-555,-592,-615,-627,-639,-658,-678,-696,-712,-722,-742,-764,-782,-791,
+-790,-798,-808,-823,-844,-874,-904,-933,-971,-1012,-1053,-1090,-1126,-1155,-1189,-1224,-1254,-1279,-1301,-1317,
+-1335,-1355,-1384,-1408,-1433,-1466,-1497,-1529,-1562,-1591,-1626,-1667,-1697,-1731,-1771,-1812,-1848,-1882,-1916,-1950,
+-1985,-2017,-2049,-2085,-2114,-2135,-2159,-2189,-2219,-2249,-2275,-2303,-2331,-2354,-2378,-2403,-2426,-2446,-2467,-2494,
+-2525,-2557,-2587,-2610,-2629,-2647,-2668,-2694,-2724,-2752,-2776,-2799,-2823,-2846,-2864,-2876,-2896,-2920,-2946,-2966,
+-2984,-3000,-3018,-3031,-3046,-3063,-3077,-3092,-3103,-3119,-3132,-3146,-3163,-3178,-3194,-3209,-3225,-3239,-3257,-3278,
+-3295,-3309,-3322,-3337,-3354,-3367,-3382,-3398,-3412,-3424,-3436,-3447,-3456,-3469,-3475,-3480,-3486,-3492,-3500,-3511,
+-3526,-3540,-3551,-3561,-3566,-3575,-3574,-3572,-3571,-3571,-3577,-3583,-3584,-3582,-3582,-3582,-3579,-3582,-3593,-3598,
+-3599,-3597,-3590,-3579,-3566,-3564,-3569,-3566,-3565,-3573,-3575,-3566,-3553,-3540,-3531,-3526,-3526,-3526,-3523,-3519,
+-3511,-3501,-3495,-3488,-3486,-3480,-3475,-3470,-3467,-3469,-3472,-3465,-3446,-3426,-3414,-3402,-3390,-3373,-3374,-3372,
+-3375,-3389,-3397,-3388,-3369,-3363,-3357,-3330,-3319,-3300,-3261,-3227,-3205,-3184,-3173,-3181,-3188,-3193,-3196,-3212,
+-3216,-3223,-3237,-3259,-3268,-3311,-3319,-3309,-3290,-3294,-3304,-3305,-3313,-3319,-3326,-3330,-3340,-3351,-3364,-3376,
+-3386,-3391,-3401,-3418,-3442,-3471,-3503,-3525,-3535,-3566,-3592,-3603,-3632,-3667,-3691,-3696,-3713,-3728,-3761,-3799,
+-3824,-3829,-3850,-3864,-3893,-3964,-4021,-4059,-4078,-4078,-4081,-4082,-4111,-4181,-4262,-4328,-4380,-4428,-4478,-4520,
+-4540,-4541,-4547,-4565,-4570,-4569,-4578,-4598,-4629,-4649,-4660,-4683,-4696,-4689,-4709,-4738,-4750,-4749,-4762,-4788,
+-4800,-4813,-4824,-4818,-4802,-4815,-4840,-4828,-4823,-4820,-4831,-4846,-4846,-4818,-4807,-4815,-4819,-4809,-4799,-4796,
+-4796,-4807,-4824,-4833,-4823,-4801,-4794,-4777,-4764,-4760,-4759,-4755,-4753,-4741,-4734,-4736,-4737,-4735,-4724,-4717,
+-4700,-4684,-4680,-4675,-4664,-4652,-4648,-4641,-4626,-4600,-4589,-4584,-4590,-4581,-4552,-4556,-4540,-4528,-4531,-4521,
+-4508,-4497,-4492,-4483,-4484,-4483,-4466,-4446,-4425,-4385,-4352,-4328,-4329,-4327,-4315,-4305,-4292,-4281,-4272,-4263,
+-4249,-4231,-4215,-4219,-4224,-4222,-4220,-4215,-4201,-4166,-4135,-4131,-4144,-4149,-4123,-4099,-4076,-4069,-4060,-4044,
+-4035,-4029,-4008,-3993,-3975,-3951,-3931,-3916,-3918,-3908,-3894,-3893,-3880,-3853,-3827,-3817,-3807,-3794,-3780,-3766,
+-3747,-3736,-3733,-3723,-3712,-3696,-3680,-3666,-3656,-3644,-3635,-3622,-3610,-3606,-3597,-3591,-3582,-3570,-3564,-3555,
+-3546,-3539,-3535,-3528,-3522,-3516,-3507,-3498,-3491,-3482,-3480,-3472,-3465,-3456,-3452,-3450,-3449,-3448,-3449,-3451,
+-3446,-3441,-3428,-3421,-3416,-3423,-3422,-3429,-3426,-3426,-3411,-3405,-3402,-3394,-3389,-3383,-3385,-3384,-3373,-3365,
+-3360,-3353,-3346,-3334,-3326,-3320,-3313,-3302,-3291,-3282,-3273,-3276,-3276,-3268,-3257,-3249,-3260,-3249,-3244,-3233,
+-3228,-3226,-3224,-3214,-3209,-3202,-3190,-3177,-3162,-3152,-3141,-3128,-3111,-3093,-3083,-3078,-3067,-3057,-3050,-3041,
+-3042,-3034,-3019,-3005,-2990,-2983,-2975,-2958,-2941,-2928,-2913,-2892,-2873,-2869,-2862,-2850,-2844,-2852,-2857,-2856,
+-2853,-2858,-2852,-2860,-2860,-2861,-2869,-2877,-2877,-2875,-2873,-2863,-2857,-2848,-2840,-2818,-2784,-2754,-2723,-2693,
+-2667,-2645,-2625,-2618,-2619,-2611,-2608,-2600,-2587,-2574,-2569,-2558,-2545,-2542,-2548,-2541,-2524,-2511,-2509,-2512,
+-2511,-2511,-2504,-2488,-2481,-2479,-2468,-2465,-2460,-2453,-2447,-2441,-2435,-2432,-2431,-2431,-2433,-2431,-2425,-2419,
+-2413,-2405,-2396,-2388,-2378,-2365,-2353,-2337,-2323,-2310,-2297,-2284,-2274,-2265,-2249,-2234,-2218,-2210,-2200,-2190,
+-2175,-2158,-2136,-2120,-2113,-2099,-2088,-2083,-2081,-2081,-2079,-2070,-2057,-2043,-2019,-1993,-1976,-1956,-1934,-1933,
+-1923,-1914,-1901,-1887,-1877,-1868,-1855,-1845,-1833,-1820,-1807,-1791,-1777,-1768,-1762,-1751,-1741,-1721,-1698,-1668,
+-1638,-1616,-1595,-1576,-1559,-1544,-1527,-1512,-1494,-1477,-1465,-1453,-1443,-1436,-1430,-1418,-1400,-1387,-1374,-1354,
+-1330,-1307,-1288,-1271,-1257,-1243,-1233,-1221,-1210,-1197,-1185,-1181,-1170,-1159,-1146,-1125,-1099,-1068,-1031,-993,
+-964,-945,-941,-928,-907,-881,-867,-855,-836,-820,-800,-769,-734,-717,-713,-697,-674,-646,-618,-607,
+-590,-565,-538,-511,-483,-457,-432,-408,-381,-347,-308,-273,-253,-231,-192,-150,-119,-89,-58,-28,
+3,42,73,101,121,138,167,212,241,286,319,343,386,439,481,528,566,597,632,681,
+727,760,789,818,850,889,927,962,993,1024,1053,1091,1135,1168,1204,1244,1272,1296,1315,1353,
+1398,1454,1521,1548,1592,1658,1697,1718,1729,1739,1751,1763,1780,1796,1810,1819,1826,1822,1802,1777,
+1752,1720,1674,1616,1561,1525,1496,1479,1470,1470,1490,1517,1547,1569,1596,1610,1618,1652,1714,1809,
+1917,2008,2125,2257,2366,2426,2410,2407,2406,2440,2431,2403,2412,2416,2413,2393,2365,2351,2342,2320,
+2296,2260,2181,2139,2108,2071,2052,2041,2041,2044,2044,2047,2044,2035,2033,2039,2071,2144,2227,2305,
+2362,2385,2372,2379,2375,2375,2380,2384,2390,2379,2365,2357,2359,2367,2370,2363,2350,2323,2272,2203,
+2111,2048,1988,1967,1978,2002,2014,2018,2015,1992,1983,1997,2013,2048,2110,2160,2163,2144,2107,2082,
+2058,2041,2028,2032,2100,2162,2191,2218,2195,2150,2161,2184,2191,2195,2220,2222,2206,2189,2172,2159,
+2151,2151,2151,2149,2149,2151,2141,2113,2094,2095,2090,2086,2069,2044,2017,1992,1970,1951,1937,1915,
+1905,1880,1842,1811,1787,1773,1755,1738,1712,1692,1678,1669,1660,1656,1650,1650,1654,1675,1704,1728,
+1744,1761,1772,1780,1789,1799,1801,1801,1795,1783,1758,1725,1705,1683,1668,1659,1645,1631,1612,1605,
+1587,1562,1539,1531,1537,1536,1527,1533,1547,1553,1541,1548,1554,1552,1552,1559,1553,1529,1512,1502,
+1489,1483,1472,1471,1465,1442,1425,1424,1433,1439,1438,1429,1433,1432,1429,1434,1463,1477,1458,1434,
+1412,1404,1395,1391,1379,1374,1376,1388,1405,1407,1406,1398,1392,1398,1405,1413,1413,1412,1409,1405,
+1403,1407,1409,1398,1391,1388,1396,1394,1390,1389,1398,1411,1425,1434,1442,1449,1459,1472,1487,1504,
+1521,1539,1550,1566,1584,1607,1632,1653,1671,1704,1736,1748,1759,1780,1803,1832,1856,1886,1923,1950,
+1971,1988,2001,2010,2019,2034,2052,2077,2099,2133,2159,2203,2232,2259,2289,2315,2341,2360,2367,2371,
+2375,2378,2379,2381,2383,2384,2386,2383,2373,2370,2372,2382,2395,2412,2422,2422,2420,2427,2428,2430,
+2445,2456,2466,2472,2476,2478,2480,2486,2493,2492,2486,2467,2438,2421,2422,2436,2452,2471,2484,2495,
+2509,2520,2519,2507,2507,2506,2508,2516,2517,2516,2524,2539,2556,2575,2592,2603,2618,2632,2650,2666,
+2677,2680,2676,2679,2685,2692,2697,2704,2717,2725,2736,2745,2751,2755,2758,2764,2764,2768,2776,2786,
+2794,2805,2814,2825,2843,2862,2879,2901,2926,2948,2969,2987,3003,3015,3037,3056,3071,3080,3097,3121,
+3140,3156,3171,3188,3205,3222,3229,3233,3240,3251,3265,3275,3282,3291,3297,3302,3299,3294,3293,3290,
+3289,3288,3285,3282,3278,3276,3269,3262,3254,3245,3234,3226,3219,3213,3203,3203,3213,3209,3200,3192,
+3185,3176,3167,3161,3153,3148,3141,3138,3136,3137,3139,3131,3123,3120,3122,3122,3124,3126,3127,3128,
+3128,3130,3135,3138,3142,3148,3152,3155,3157,3155,3153,3148,3146,3147,3151,3162,3156,3147,3151,3158,
+3159,3163,3161,3162,3165,3163,3160,3156,3145,3127,3107,3091,3084,3091,3099,3089,3068,3058,3048,3036,
+3018,3005,2998,2979,2968,2958,2947,2932,2921,2913,2900,2892,2889,2888,2885,2880,2875,2863,2849,2837,
+2826,2817,2812,2809,2807,2802,2796,2789,2781,2770,2753,2728,2702,2672,2649,2630,2611,2594,2577,2562,
+2552,2539,2520,2506,2502,2496,2489,2480,2473,2468,2446,2425,2408,2392,2371,2352,2338,2329,2320,2311,
+2304,2298,2288,2283,2280,2277,2273,2263,2249,2233,2217,2201,2180,2158,2132,2110,2091,2075,2055,2027,
+1971,1908,1850,1807,1775,1713,1667,1607,1542,1501,1467,1423,1368,1308,1251,1205,1167,1132,1092,1048,
+1008,970,934,902,870,840,807,776,735,689,641,595,550,508,461,413,365,317,275,235,
+201,177,152,128,104,80,61,49,36,18,-2,-30,-60,-86,-110,-138,-172,-210,-247,-284,
+-320,-358,-397,-435,-470,-504,-541,-581,-616,-639,-639,-644,-672,-709,-741,-763,-770,-762,-768,-786,
+-802,-817,-824,-836,-856,-880,-905,-938,-969,-1004,-1045,-1087,-1128,-1164,-1194,-1226,-1262,-1294,-1313,-1327,
+-1344,-1359,-1385,-1415,-1437,-1467,-1510,-1545,-1573,-1599,-1628,-1661,-1695,-1732,-1772,-1810,-1852,-1898,-1943,-1979,
+-2013,-2042,-2072,-2104,-2133,-2160,-2184,-2210,-2236,-2266,-2295,-2322,-2351,-2376,-2399,-2423,-2447,-2468,-2487,-2512,
+-2545,-2576,-2608,-2632,-2653,-2680,-2708,-2736,-2757,-2779,-2802,-2825,-2843,-2865,-2886,-2906,-2925,-2949,-2973,-2994,
+-3016,-3036,-3055,-3070,-3087,-3100,-3113,-3130,-3142,-3153,-3168,-3183,-3205,-3228,-3247,-3260,-3274,-3293,-3315,-3338,
+-3351,-3361,-3370,-3377,-3388,-3411,-3431,-3445,-3461,-3470,-3476,-3481,-3489,-3498,-3507,-3514,-3521,-3530,-3541,-3554,
+-3569,-3587,-3602,-3608,-3611,-3618,-3618,-3620,-3620,-3616,-3609,-3608,-3612,-3617,-3624,-3632,-3643,-3649,-3654,-3656,
+-3661,-3662,-3662,-3659,-3653,-3645,-3638,-3633,-3631,-3629,-3628,-3628,-3631,-3627,-3619,-3595,-3582,-3578,-3580,-3581,
+-3579,-3575,-3570,-3567,-3562,-3556,-3553,-3545,-3540,-3538,-3538,-3537,-3534,-3528,-3514,-3496,-3479,-3468,-3459,-3435,
+-3433,-3447,-3448,-3456,-3469,-3463,-3449,-3433,-3413,-3394,-3384,-3364,-3324,-3299,-3273,-3253,-3252,-3257,-3265,-3275,
+-3279,-3289,-3302,-3311,-3323,-3340,-3342,-3353,-3353,-3347,-3344,-3350,-3360,-3363,-3369,-3376,-3386,-3394,-3402,-3412,
+-3418,-3434,-3445,-3455,-3472,-3489,-3504,-3520,-3540,-3563,-3594,-3630,-3649,-3658,-3671,-3697,-3738,-3754,-3744,-3770,
+-3806,-3833,-3867,-3895,-3902,-3914,-3930,-3956,-3980,-4021,-4065,-4101,-4120,-4157,-4175,-4211,-4262,-4315,-4346,-4392,
+-4482,-4550,-4584,-4604,-4615,-4630,-4634,-4625,-4627,-4646,-4673,-4705,-4726,-4723,-4714,-4730,-4755,-4768,-4764,-4775,
+-4796,-4813,-4832,-4849,-4852,-4842,-4822,-4804,-4830,-4869,-4881,-4892,-4900,-4891,-4878,-4864,-4860,-4864,-4860,-4851,
+-4843,-4826,-4811,-4809,-4815,-4838,-4857,-4861,-4843,-4818,-4802,-4789,-4784,-4784,-4779,-4773,-4761,-4758,-4751,-4744,
+-4751,-4743,-4726,-4724,-4726,-4709,-4682,-4674,-4675,-4667,-4650,-4638,-4626,-4615,-4597,-4600,-4588,-4580,-4567,-4553,
+-4549,-4543,-4528,-4504,-4477,-4475,-4477,-4470,-4466,-4458,-4451,-4442,-4415,-4377,-4352,-4340,-4324,-4323,-4312,-4292,
+-4279,-4273,-4263,-4254,-4239,-4219,-4203,-4216,-4207,-4196,-4194,-4190,-4187,-4173,-4149,-4138,-4126,-4111,-4098,-4087,
+-4073,-4066,-4060,-4056,-4043,-4029,-4014,-3998,-3980,-3960,-3945,-3934,-3924,-3921,-3910,-3899,-3887,-3874,-3854,-3835,
+-3816,-3805,-3795,-3784,-3772,-3756,-3747,-3736,-3726,-3713,-3702,-3689,-3680,-3676,-3670,-3662,-3652,-3642,-3634,-3623,
+-3616,-3610,-3605,-3596,-3584,-3582,-3572,-3565,-3568,-3554,-3556,-3556,-3548,-3535,-3522,-3516,-3515,-3518,-3514,-3512,
+-3509,-3506,-3502,-3494,-3490,-3495,-3496,-3483,-3473,-3466,-3462,-3480,-3482,-3478,-3467,-3455,-3450,-3452,-3445,-3444,
+-3440,-3433,-3432,-3420,-3412,-3402,-3392,-3384,-3373,-3367,-3355,-3343,-3336,-3324,-3322,-3326,-3315,-3316,-3305,-3301,
+-3302,-3296,-3290,-3282,-3279,-3269,-3262,-3252,-3243,-3228,-3213,-3199,-3184,-3174,-3168,-3156,-3136,-3125,-3125,-3127,
+-3115,-3106,-3100,-3089,-3075,-3068,-3058,-3046,-3032,-3019,-3010,-3003,-2995,-2988,-2962,-2934,-2921,-2914,-2916,-2915,
+-2915,-2924,-2911,-2896,-2892,-2886,-2884,-2890,-2893,-2890,-2892,-2888,-2883,-2884,-2884,-2887,-2885,-2875,-2853,-2825,
+-2793,-2762,-2733,-2704,-2681,-2669,-2656,-2651,-2651,-2639,-2620,-2613,-2607,-2596,-2584,-2588,-2577,-2565,-2559,-2556,
+-2561,-2552,-2545,-2533,-2519,-2510,-2510,-2507,-2502,-2496,-2489,-2483,-2476,-2471,-2468,-2467,-2465,-2465,-2466,-2465,
+-2459,-2455,-2447,-2437,-2427,-2416,-2403,-2393,-2380,-2366,-2351,-2339,-2328,-2319,-2308,-2289,-2275,-2264,-2253,-2240,
+-2224,-2208,-2194,-2181,-2168,-2154,-2141,-2127,-2115,-2104,-2095,-2089,-2083,-2078,-2072,-2061,-2048,-2033,-2010,-1985,
+-1965,-1953,-1944,-1935,-1930,-1926,-1922,-1915,-1906,-1894,-1881,-1864,-1844,-1826,-1805,-1790,-1775,-1761,-1745,-1725,
+-1702,-1683,-1666,-1649,-1630,-1610,-1582,-1553,-1531,-1512,-1496,-1483,-1469,-1456,-1445,-1432,-1423,-1415,-1407,-1394,
+-1378,-1359,-1341,-1320,-1301,-1280,-1264,-1248,-1233,-1224,-1218,-1205,-1200,-1193,-1183,-1171,-1158,-1138,-1115,-1085,
+-1050,-1018,-995,-979,-966,-941,-919,-904,-888,-868,-848,-816,-774,-747,-736,-739,-723,-698,-680,-662,
+-643,-625,-600,-570,-535,-497,-463,-431,-404,-385,-357,-321,-289,-252,-212,-192,-167,-133,-102,-61,
+-24,-8,17,57,98,139,157,179,224,263,301,331,358,389,420,457,501,550,595,628,
+654,681,719,762,801,834,868,901,940,980,1018,1054,1088,1116,1145,1193,1229,1257,1283,1307,
+1329,1352,1382,1413,1485,1517,1551,1595,1633,1664,1692,1709,1727,1743,1755,1766,1769,1762,1740,1706,
+1663,1610,1552,1505,1469,1450,1448,1462,1475,1495,1544,1600,1659,1716,1760,1806,1866,1913,1966,2006,
+2055,2126,2214,2320,2373,2399,2396,2362,2336,2349,2403,2391,2409,2426,2437,2416,2398,2387,2374,2335,
+2298,2238,2168,2116,2087,2079,2083,2079,2068,2063,2061,2054,2044,2034,2023,2012,2022,2079,2172,2236,
+2277,2320,2320,2323,2351,2362,2374,2379,2388,2362,2330,2319,2323,2328,2327,2306,2270,2262,2256,2210,
+2179,2158,2092,2007,1940,1921,1937,1966,1992,1999,2006,2038,2082,2063,2042,2011,2032,2014,2018,2071,
+2118,2111,2066,2068,2145,2213,2275,2276,2218,2151,2102,2103,2122,2121,2111,2116,2141,2141,2119,2110,
+2110,2111,2109,2093,2068,2058,2058,2051,2049,2061,2040,2036,2034,2018,2012,2005,1986,1970,1947,1927,
+1907,1886,1885,1884,1871,1862,1845,1828,1818,1813,1809,1803,1797,1791,1771,1750,1735,1736,1751,1754,
+1761,1775,1774,1760,1750,1739,1725,1720,1716,1710,1707,1704,1684,1653,1639,1635,1627,1608,1589,1570,
+1559,1548,1529,1511,1494,1474,1459,1442,1426,1416,1415,1413,1416,1428,1437,1447,1455,1465,1472,1483,
+1484,1461,1438,1433,1436,1428,1423,1403,1388,1377,1374,1380,1387,1389,1394,1393,1410,1443,1442,1413,
+1392,1377,1352,1337,1344,1363,1368,1358,1354,1350,1356,1371,1379,1382,1370,1361,1359,1359,1357,1363,
+1368,1371,1375,1377,1376,1377,1387,1394,1373,1386,1398,1399,1401,1415,1427,1434,1443,1453,1468,1483,
+1500,1517,1535,1553,1573,1594,1615,1643,1671,1697,1722,1740,1758,1778,1806,1836,1854,1876,1907,1935,
+1960,1974,1984,1999,2020,2031,2036,2040,2065,2095,2125,2166,2207,2223,2244,2273,2298,2319,2339,2354,
+2359,2361,2365,2366,2368,2371,2374,2374,2378,2379,2373,2370,2378,2387,2391,2394,2399,2401,2402,2408,
+2419,2430,2436,2442,2444,2449,2457,2465,2467,2456,2445,2421,2396,2392,2404,2415,2428,2442,2451,2462,
+2470,2473,2467,2467,2482,2472,2468,2466,2465,2471,2478,2489,2500,2510,2519,2533,2547,2560,2574,2589,
+2604,2613,2618,2622,2633,2644,2650,2657,2668,2677,2686,2695,2703,2707,2710,2716,2719,2718,2713,2714,
+2727,2744,2756,2771,2785,2800,2813,2835,2859,2884,2907,2927,2945,2961,2979,3001,3021,3028,3041,3068,
+3091,3107,3119,3141,3158,3179,3198,3207,3213,3219,3231,3242,3251,3257,3265,3271,3275,3274,3273,3270,
+3269,3266,3264,3257,3259,3255,3250,3242,3236,3230,3222,3211,3205,3201,3192,3185,3193,3203,3201,3191,
+3181,3171,3162,3156,3148,3139,3131,3124,3119,3116,3114,3113,3108,3103,3103,3103,3101,3100,3099,3103,
+3105,3108,3112,3114,3118,3126,3132,3140,3143,3146,3148,3148,3148,3148,3148,3150,3148,3145,3146,3150,
+3148,3143,3135,3129,3126,3125,3124,3121,3117,3105,3088,3072,3079,3104,3087,3049,3038,3035,3029,3018,
+3002,2985,2972,2963,2949,2930,2918,2899,2878,2865,2858,2848,2841,2838,2843,2843,2840,2836,2829,2820,
+2808,2801,2793,2783,2778,2777,2774,2769,2760,2750,2732,2717,2690,2668,2646,2622,2603,2587,2571,2557,
+2537,2519,2504,2492,2487,2481,2477,2469,2457,2436,2415,2390,2370,2349,2333,2317,2306,2297,2285,2269,
+2252,2247,2245,2239,2239,2243,2242,2236,2226,2211,2199,2183,2168,2147,2119,2082,2049,2021,1994,1965,
+1936,1907,1859,1801,1744,1686,1633,1580,1513,1446,1397,1364,1333,1297,1257,1214,1172,1140,1109,1076,
+1043,1003,968,937,902,866,834,801,767,728,685,641,597,552,505,458,412,363,312,267,
+225,183,155,125,97,69,41,18,4,-11,-33,-57,-86,-114,-138,-160,-183,-214,-247,-278,
+-309,-346,-387,-426,-462,-496,-530,-567,-608,-642,-668,-676,-682,-702,-734,-760,-781,-791,-794,-790,
+-788,-797,-823,-848,-862,-892,-920,-943,-971,-1004,-1040,-1081,-1124,-1164,-1202,-1238,-1267,-1299,-1333,-1355,
+-1370,-1386,-1405,-1429,-1451,-1479,-1511,-1543,-1577,-1607,-1637,-1669,-1702,-1734,-1771,-1820,-1863,-1905,-1949,-1991,
+-2029,-2065,-2095,-2121,-2150,-2180,-2206,-2235,-2263,-2293,-2323,-2351,-2378,-2404,-2426,-2449,-2472,-2492,-2511,-2535,
+-2563,-2593,-2620,-2643,-2670,-2701,-2733,-2764,-2791,-2814,-2831,-2852,-2872,-2889,-2902,-2918,-2941,-2970,-3000,-3027,
+-3050,-3070,-3088,-3104,-3124,-3143,-3159,-3176,-3187,-3194,-3203,-3216,-3235,-3256,-3275,-3292,-3312,-3334,-3358,-3383,
+-3401,-3408,-3410,-3414,-3427,-3445,-3461,-3476,-3490,-3504,-3515,-3525,-3533,-3544,-3553,-3561,-3563,-3570,-3581,-3593,
+-3606,-3621,-3635,-3644,-3654,-3662,-3665,-3673,-3695,-3711,-3709,-3706,-3704,-3701,-3707,-3714,-3716,-3713,-3717,-3726,
+-3734,-3743,-3753,-3760,-3766,-3770,-3771,-3760,-3751,-3740,-3716,-3706,-3700,-3694,-3696,-3690,-3668,-3643,-3641,-3643,
+-3641,-3635,-3634,-3634,-3635,-3633,-3628,-3625,-3620,-3611,-3610,-3612,-3606,-3602,-3596,-3586,-3576,-3565,-3558,-3551,
+-3539,-3510,-3504,-3521,-3524,-3534,-3541,-3525,-3509,-3502,-3480,-3465,-3451,-3433,-3388,-3368,-3343,-3327,-3329,-3336,
+-3345,-3358,-3366,-3377,-3389,-3402,-3415,-3426,-3413,-3403,-3400,-3399,-3405,-3415,-3417,-3425,-3433,-3440,-3446,-3456,
+-3467,-3477,-3489,-3506,-3518,-3531,-3544,-3557,-3575,-3596,-3613,-3630,-3641,-3661,-3713,-3715,-3729,-3749,-3767,-3778,
+-3771,-3805,-3848,-3875,-3896,-3922,-3939,-3948,-3978,-4017,-4042,-4064,-4094,-4117,-4122,-4149,-4192,-4240,-4285,-4328,
+-4377,-4416,-4465,-4542,-4620,-4662,-4681,-4706,-4715,-4695,-4683,-4692,-4725,-4762,-4774,-4747,-4739,-4754,-4770,-4780,
+-4782,-4787,-4796,-4809,-4822,-4835,-4846,-4853,-4852,-4843,-4837,-4841,-4882,-4890,-4897,-4895,-4896,-4903,-4901,-4892,
+-4888,-4883,-4885,-4879,-4871,-4868,-4873,-4885,-4871,-4859,-4870,-4870,-4852,-4835,-4821,-4804,-4800,-4809,-4802,-4789,
+-4781,-4773,-4761,-4752,-4753,-4745,-4760,-4749,-4722,-4701,-4689,-4688,-4667,-4651,-4628,-4614,-4613,-4612,-4598,-4585,
+-4575,-4567,-4555,-4544,-4527,-4506,-4495,-4486,-4470,-4456,-4449,-4437,-4424,-4425,-4435,-4435,-4431,-4412,-4387,-4357,
+-4332,-4323,-4305,-4288,-4277,-4266,-4250,-4236,-4226,-4222,-4213,-4201,-4192,-4193,-4186,-4189,-4185,-4174,-4152,-4135,
+-4115,-4100,-4091,-4082,-4069,-4072,-4083,-4072,-4048,-4013,-3990,-3980,-3970,-3961,-3954,-3950,-3941,-3931,-3924,-3918,
+-3903,-3886,-3870,-3857,-3843,-3828,-3816,-3805,-3792,-3778,-3765,-3749,-3745,-3744,-3738,-3731,-3721,-3712,-3704,-3695,
+-3687,-3684,-3681,-3669,-3661,-3655,-3652,-3637,-3628,-3625,-3618,-3615,-3614,-3610,-3605,-3602,-3602,-3598,-3589,-3577,
+-3571,-3565,-3563,-3561,-3557,-3553,-3550,-3546,-3536,-3532,-3532,-3535,-3519,-3518,-3526,-3530,-3528,-3518,-3513,-3516,
+-3517,-3509,-3508,-3502,-3487,-3467,-3461,-3462,-3452,-3452,-3447,-3439,-3431,-3419,-3405,-3395,-3380,-3376,-3374,-3364,
+-3359,-3353,-3350,-3348,-3347,-3341,-3332,-3321,-3315,-3306,-3293,-3280,-3267,-3252,-3234,-3219,-3212,-3197,-3187,-3188,
+-3188,-3172,-3165,-3162,-3161,-3151,-3136,-3125,-3116,-3104,-3090,-3076,-3063,-3053,-3042,-3042,-3032,-3013,-3003,-2995,
+-2984,-2985,-2986,-2975,-2960,-2953,-2946,-2940,-2936,-2936,-2929,-2922,-2920,-2916,-2906,-2907,-2906,-2900,-2891,-2885,
+-2879,-2866,-2850,-2829,-2802,-2775,-2745,-2722,-2700,-2690,-2687,-2676,-2667,-2662,-2654,-2645,-2636,-2627,-2622,-2609,
+-2594,-2583,-2582,-2576,-2565,-2560,-2551,-2544,-2538,-2527,-2524,-2521,-2515,-2509,-2505,-2502,-2499,-2497,-2495,-2495,
+-2493,-2490,-2486,-2480,-2475,-2466,-2454,-2442,-2433,-2420,-2407,-2393,-2380,-2368,-2358,-2346,-2330,-2312,-2297,-2282,
+-2268,-2253,-2238,-2225,-2213,-2202,-2190,-2181,-2170,-2160,-2150,-2135,-2118,-2103,-2094,-2084,-2077,-2069,-2069,-2065,
+-2049,-2026,-2005,-1986,-1973,-1964,-1960,-1957,-1951,-1945,-1934,-1920,-1907,-1890,-1873,-1854,-1832,-1810,-1784,-1760,
+-1740,-1724,-1702,-1686,-1675,-1664,-1650,-1632,-1614,-1590,-1563,-1535,-1507,-1488,-1477,-1470,-1459,-1447,-1435,-1425,
+-1417,-1407,-1393,-1375,-1356,-1331,-1311,-1291,-1269,-1248,-1231,-1220,-1213,-1214,-1207,-1198,-1187,-1173,-1155,-1127,
+-1097,-1070,-1042,-1023,-1005,-991,-974,-956,-947,-932,-914,-886,-854,-821,-793,-767,-762,-745,-718,-691,
+-676,-661,-636,-612,-585,-552,-519,-482,-453,-420,-387,-355,-324,-295,-269,-244,-213,-178,-154,-125,
+-82,-37,9,47,73,92,138,183,224,260,270,295,325,367,398,416,449,484,521,557,
+595,633,671,705,737,772,813,854,891,922,951,993,1036,1075,1118,1146,1175,1207,1244,1284,
+1314,1343,1372,1407,1447,1488,1549,1586,1558,1560,1580,1609,1631,1648,1660,1664,1660,1646,1621,1584,
+1538,1492,1458,1439,1442,1463,1482,1504,1551,1609,1689,1774,1850,1913,1961,1992,2016,2056,2101,2138,
+2177,2209,2221,2222,2215,2201,2199,2211,2228,2292,2346,2404,2429,2421,2396,2403,2400,2379,2331,2266,
+2207,2170,2141,2117,2100,2092,2092,2094,2088,2083,2079,2069,2059,2044,2032,2026,2016,2022,2081,2110,
+2166,2237,2266,2296,2309,2344,2345,2322,2322,2332,2315,2283,2258,2253,2256,2250,2234,2211,2214,2240,
+2207,2137,2062,2005,1940,1902,1898,1910,1926,1944,1958,1986,2037,2050,2032,2056,2046,1998,1978,2011,
+2075,2182,2251,2200,2160,2190,2199,2144,2069,2055,2042,2023,2020,2029,2047,2054,2039,2023,2027,2030,
+2040,2053,2056,2062,2069,2067,2063,2045,2026,2005,1988,1983,1991,1995,1986,1979,1968,1959,1950,1942,
+1926,1909,1890,1882,1873,1856,1829,1818,1811,1802,1796,1796,1791,1792,1792,1783,1787,1776,1753,1729,
+1717,1733,1740,1719,1694,1685,1686,1678,1665,1651,1635,1623,1603,1568,1538,1517,1502,1492,1489,1494,
+1496,1504,1502,1501,1487,1483,1468,1441,1410,1388,1372,1357,1340,1333,1328,1327,1327,1331,1336,1343,
+1356,1375,1392,1397,1403,1412,1400,1377,1356,1340,1328,1319,1324,1325,1323,1327,1342,1360,1387,1401,
+1381,1353,1337,1328,1313,1305,1309,1317,1328,1334,1332,1331,1327,1330,1336,1337,1338,1333,1335,1335,
+1335,1346,1343,1343,1349,1350,1355,1362,1373,1355,1370,1388,1400,1402,1413,1425,1434,1444,1456,1472,
+1488,1505,1526,1548,1569,1589,1611,1636,1658,1673,1694,1723,1752,1776,1799,1825,1855,1872,1881,1904,
+1931,1950,1966,1979,1998,2013,2025,2029,2036,2065,2095,2123,2154,2175,2194,2224,2257,2281,2303,2323,
+2337,2344,2347,2356,2358,2353,2353,2360,2380,2451,2530,2450,2384,2368,2365,2367,2374,2378,2389,2396,
+2397,2394,2394,2401,2410,2418,2425,2434,2434,2421,2399,2376,2361,2361,2369,2380,2393,2407,2418,2426,
+2436,2438,2429,2420,2418,2419,2423,2424,2422,2425,2430,2437,2445,2452,2462,2472,2482,2488,2496,2509,
+2524,2541,2553,2562,2574,2582,2594,2609,2618,2626,2636,2646,2656,2661,2665,2669,2673,2667,2654,2651,
+2664,2681,2699,2717,2731,2746,2765,2780,2801,2827,2851,2874,2895,2910,2926,2948,2968,2980,2993,3016,
+3042,3058,3069,3090,3109,3133,3157,3172,3177,3180,3191,3202,3212,3220,3229,3234,3240,3243,3246,3245,
+3246,3245,3242,3232,3232,3231,3222,3216,3214,3210,3206,3198,3189,3181,3173,3168,3167,3174,3180,3181,
+3174,3166,3158,3147,3139,3132,3125,3115,3111,3105,3101,3097,3094,3087,3082,3084,3082,3076,3070,3072,
+3072,3072,3075,3079,3086,3092,3098,3109,3120,3127,3134,3139,3143,3147,3149,3152,3152,3146,3143,3140,
+3139,3133,3125,3118,3119,3124,3111,3108,3099,3095,3077,3067,3076,3093,3065,3032,3026,3025,3027,3026,
+3010,2993,2977,2967,2954,2931,2918,2904,2886,2866,2848,2831,2829,2826,2812,2807,2807,2805,2803,2796,
+2789,2783,2774,2766,2755,2747,2742,2735,2728,2717,2704,2689,2667,2645,2628,2608,2592,2574,2562,2546,
+2531,2513,2495,2484,2480,2472,2464,2457,2446,2430,2410,2382,2357,2330,2307,2293,2280,2250,2236,2220,
+2193,2159,2141,2144,2151,2152,2148,2149,2152,2156,2155,2154,2151,2139,2117,2084,2043,1998,1963,1931,
+1900,1859,1824,1790,1754,1714,1663,1605,1549,1499,1443,1402,1365,1322,1285,1251,1217,1189,1160,1123,
+1089,1057,1020,987,949,910,872,834,798,766,734,694,650,602,555,509,465,420,369,315,
+267,224,185,149,117,85,56,30,8,-11,-33,-60,-87,-114,-137,-160,-180,-202,-224,-250,
+-285,-318,-355,-394,-431,-464,-497,-539,-585,-619,-652,-679,-695,-703,-722,-765,-779,-796,-813,-824,
+-830,-835,-833,-842,-871,-903,-925,-931,-936,-963,-1008,-1057,-1107,-1156,-1199,-1240,-1280,-1316,-1345,-1370,
+-1394,-1415,-1428,-1440,-1458,-1482,-1514,-1546,-1578,-1613,-1647,-1680,-1714,-1752,-1788,-1826,-1864,-1901,-1937,-1975,
+-2016,-2061,-2107,-2142,-2172,-2194,-2223,-2253,-2284,-2314,-2343,-2371,-2398,-2422,-2444,-2466,-2491,-2518,-2541,-2565,
+-2589,-2614,-2638,-2662,-2689,-2715,-2746,-2777,-2805,-2829,-2848,-2863,-2882,-2904,-2924,-2938,-2951,-2973,-2999,-3026,
+-3051,-3077,-3102,-3128,-3153,-3175,-3196,-3214,-3225,-3232,-3236,-3243,-3253,-3266,-3284,-3306,-3328,-3347,-3372,-3398,
+-3424,-3441,-3451,-3453,-3456,-3464,-3479,-3498,-3517,-3531,-3545,-3557,-3568,-3585,-3603,-3614,-3618,-3619,-3623,-3628,
+-3636,-3645,-3658,-3678,-3695,-3706,-3714,-3724,-3737,-3751,-3761,-3770,-3778,-3782,-3782,-3781,-3779,-3776,-3792,-3809,
+-3824,-3840,-3867,-3888,-3894,-3904,-3916,-3918,-3905,-3887,-3851,-3830,-3801,-3774,-3744,-3745,-3755,-3753,-3739,-3728,
+-3718,-3711,-3700,-3695,-3696,-3697,-3700,-3696,-3693,-3692,-3689,-3687,-3682,-3677,-3672,-3667,-3659,-3652,-3648,-3639,
+-3629,-3620,-3611,-3606,-3595,-3593,-3612,-3618,-3615,-3597,-3584,-3576,-3558,-3547,-3529,-3504,-3464,-3443,-3412,-3403,
+-3406,-3414,-3421,-3431,-3448,-3450,-3470,-3487,-3500,-3504,-3485,-3467,-3458,-3461,-3472,-3461,-3480,-3489,-3495,-3507,
+-3517,-3526,-3536,-3547,-3557,-3569,-3580,-3597,-3616,-3636,-3652,-3669,-3694,-3713,-3719,-3717,-3744,-3759,-3776,-3795,
+-3816,-3828,-3879,-3882,-3908,-3918,-3936,-3959,-3988,-3987,-4002,-4045,-4079,-4101,-4109,-4141,-4164,-4173,-4180,-4212,
+-4250,-4279,-4299,-4349,-4435,-4526,-4583,-4616,-4648,-4694,-4739,-4757,-4750,-4732,-4760,-4798,-4824,-4813,-4790,-4787,
+-4799,-4807,-4802,-4802,-4805,-4815,-4839,-4844,-4845,-4858,-4873,-4885,-4895,-4899,-4900,-4903,-4901,-4907,-4914,-4920,
+-4924,-4924,-4918,-4909,-4898,-4886,-4881,-4873,-4869,-4856,-4854,-4860,-4883,-4905,-4914,-4897,-4874,-4848,-4831,-4835,
+-4826,-4816,-4800,-4785,-4775,-4771,-4767,-4768,-4773,-4775,-4745,-4715,-4713,-4706,-4690,-4678,-4665,-4645,-4630,-4605,
+-4601,-4586,-4572,-4561,-4561,-4558,-4544,-4529,-4518,-4499,-4485,-4472,-4460,-4449,-4439,-4427,-4419,-4416,-4410,-4405,
+-4389,-4377,-4378,-4370,-4347,-4320,-4304,-4288,-4273,-4263,-4252,-4243,-4233,-4224,-4219,-4213,-4204,-4201,-4195,-4186,
+-4180,-4172,-4150,-4132,-4114,-4099,-4095,-4093,-4101,-4105,-4089,-4059,-4035,-4018,-4000,-3990,-3979,-3974,-3967,-3965,
+-3957,-3946,-3936,-3928,-3916,-3901,-3890,-3874,-3861,-3845,-3831,-3814,-3814,-3813,-3807,-3797,-3791,-3782,-3776,-3767,
+-3758,-3751,-3749,-3744,-3733,-3730,-3724,-3713,-3701,-3696,-3682,-3676,-3670,-3662,-3660,-3662,-3661,-3653,-3646,-3647,
+-3648,-3645,-3647,-3649,-3646,-3637,-3627,-3620,-3614,-3612,-3601,-3593,-3582,-3581,-3576,-3567,-3564,-3576,-3573,-3564,
+-3565,-3572,-3574,-3569,-3562,-3558,-3548,-3543,-3528,-3512,-3541,-3531,-3514,-3493,-3477,-3470,-3462,-3467,-3458,-3445,
+-3441,-3437,-3430,-3422,-3413,-3407,-3402,-3393,-3384,-3373,-3370,-3365,-3355,-3340,-3319,-3300,-3290,-3288,-3278,-3265,
+-3259,-3262,-3252,-3243,-3234,-3221,-3211,-3206,-3194,-3182,-3169,-3155,-3145,-3134,-3126,-3111,-3096,-3091,-3088,-3086,
+-3080,-3066,-3052,-3040,-3035,-3030,-3023,-3015,-3008,-2999,-2992,-2984,-2978,-2970,-2960,-2948,-2935,-2927,-2918,-2910,
+-2902,-2893,-2884,-2875,-2871,-2863,-2847,-2824,-2799,-2766,-2740,-2730,-2712,-2694,-2687,-2691,-2694,-2690,-2679,-2659,
+-2651,-2642,-2630,-2622,-2611,-2600,-2590,-2582,-2573,-2567,-2563,-2557,-2552,-2546,-2542,-2538,-2535,-2533,-2527,-2523,
+-2520,-2516,-2512,-2508,-2501,-2494,-2487,-2478,-2468,-2460,-2448,-2437,-2425,-2412,-2398,-2390,-2379,-2362,-2345,-2329,
+-2313,-2300,-2285,-2272,-2259,-2245,-2233,-2221,-2213,-2204,-2194,-2182,-2167,-2151,-2138,-2126,-2115,-2107,-2093,-2077,
+-2072,-2065,-2064,-2060,-2043,-2023,-2007,-1996,-1984,-1970,-1960,-1952,-1941,-1927,-1915,-1900,-1885,-1864,-1841,-1818,
+-1791,-1766,-1742,-1723,-1706,-1688,-1673,-1660,-1647,-1634,-1620,-1607,-1591,-1565,-1537,-1514,-1499,-1487,-1475,-1466,
+-1455,-1435,-1423,-1411,-1396,-1378,-1350,-1328,-1307,-1290,-1267,-1251,-1242,-1232,-1223,-1211,-1199,-1184,-1171,-1155,
+-1134,-1105,-1082,-1067,-1049,-1031,-1013,-997,-982,-966,-950,-930,-909,-884,-857,-829,-803,-787,-768,-742,
+-716,-688,-661,-635,-608,-580,-554,-529,-498,-462,-425,-391,-365,-339,-311,-281,-241,-206,-176,-156,
+-119,-76,-34,12,52,86,114,139,171,209,239,270,295,326,364,405,432,444,470,502,
+540,573,608,648,686,722,757,790,820,858,902,942,976,1002,1039,1083,1129,1170,1211,1244,
+1276,1318,1364,1390,1418,1454,1497,1550,1600,1608,1567,1541,1531,1527,1519,1508,1487,1465,1437,1412,
+1403,1412,1430,1457,1484,1510,1547,1609,1688,1760,1836,1921,2002,2073,2118,2126,2143,2169,2197,2218,
+2228,2226,2230,2206,2189,2208,2248,2268,2278,2291,2315,2348,2367,2361,2329,2269,2218,2183,2160,2141,
+2130,2122,2113,2105,2096,2089,2088,2089,2089,2085,2083,2082,2078,2072,2067,2045,2017,1997,2005,2014,
+2044,2092,2147,2195,2228,2250,2283,2311,2299,2284,2279,2250,2220,2192,2177,2177,2181,2181,2167,2139,
+2128,2089,2029,1976,1927,1897,1890,1895,1898,1904,1905,1912,1948,1987,1981,1939,1979,2071,2107,2109,
+2080,2082,2113,2098,2045,2002,1980,1956,1932,1924,1928,1946,1964,1979,1987,1991,1988,1989,1973,1957,
+1944,1939,1943,1946,1953,1962,1978,1982,1990,1988,1981,1976,1970,1962,1952,1932,1925,1913,1904,1897,
+1904,1892,1880,1869,1886,1891,1862,1836,1826,1815,1791,1770,1743,1722,1697,1680,1675,1684,1685,1687,
+1682,1670,1670,1662,1653,1649,1641,1630,1607,1585,1567,1538,1516,1502,1490,1483,1480,1466,1425,1398,
+1376,1361,1358,1358,1369,1375,1380,1381,1369,1358,1349,1353,1344,1324,1309,1294,1290,1292,1282,1271,
+1260,1259,1270,1280,1287,1304,1329,1345,1346,1327,1313,1302,1281,1265,1275,1287,1286,1292,1296,1298,
+1305,1317,1318,1306,1298,1297,1301,1295,1283,1272,1270,1277,1279,1280,1285,1292,1306,1300,1302,1316,
+1320,1315,1314,1310,1310,1319,1329,1337,1344,1355,1348,1362,1378,1394,1403,1411,1424,1436,1447,1462,
+1477,1496,1516,1535,1555,1583,1605,1615,1635,1663,1692,1713,1737,1763,1784,1799,1818,1840,1862,1882,
+1899,1911,1932,1952,1966,1985,1994,2003,2014,2044,2086,2093,2100,2122,2162,2200,2226,2245,2262,2274,
+2284,2292,2300,2308,2309,2316,2321,2323,2325,2336,2356,2368,2351,2336,2332,2330,2334,2345,2356,2363,
+2365,2376,2380,2374,2372,2380,2391,2400,2395,2372,2342,2324,2325,2328,2328,2337,2356,2372,2381,2391,
+2397,2396,2389,2385,2382,2383,2387,2382,2374,2375,2379,2382,2389,2396,2408,2419,2427,2435,2446,2456,
+2466,2475,2484,2497,2513,2527,2537,2548,2558,2568,2581,2591,2599,2609,2617,2622,2627,2619,2610,2604,
+2604,2618,2631,2651,2674,2694,2714,2734,2753,2779,2801,2820,2844,2860,2874,2894,2919,2934,2942,2961,
+2987,3009,3021,3035,3054,3077,3102,3120,3129,3136,3150,3166,3177,3184,3190,3197,3204,3208,3211,3214,
+3214,3216,3213,3210,3205,3204,3199,3190,3186,3184,3184,3181,3178,3172,3162,3155,3149,3151,3154,3157,
+3158,3150,3143,3132,3121,3115,3107,3099,3092,3087,3081,3075,3070,3067,3062,3056,3056,3052,3048,3044,
+3042,3043,3044,3046,3048,3050,3057,3066,3079,3090,3100,3111,3121,3131,3138,3140,3139,3139,3135,3133,
+3134,3128,3123,3117,3108,3099,3091,3087,3081,3076,3070,3063,3056,3045,3037,3030,3022,3018,3014,3009,
+3002,2989,2974,2960,2948,2940,2929,2914,2892,2873,2853,2831,2815,2803,2793,2787,2782,2778,2772,2767,
+2761,2755,2748,2740,2732,2721,2711,2701,2690,2678,2664,2649,2631,2614,2599,2586,2577,2563,2553,2539,
+2523,2509,2497,2487,2477,2465,2452,2442,2436,2425,2407,2385,2363,2336,2306,2278,2249,2226,2206,2183,
+2155,2129,2105,2086,2078,2084,2079,2067,2055,2046,2038,2033,2036,2060,2074,2065,2043,2009,1962,1920,
+1889,1862,1828,1778,1735,1704,1674,1637,1587,1540,1492,1443,1393,1353,1322,1296,1263,1223,1183,1154,
+1129,1098,1060,1019,974,933,897,861,825,792,761,727,688,646,600,554,512,471,425,377,
+327,280,239,202,166,135,104,73,44,19,-3,-31,-64,-97,-125,-147,-165,-182,-199,-222,
+-244,-273,-307,-350,-390,-425,-459,-500,-545,-585,-621,-650,-683,-709,-725,-739,-772,-806,-822,-841,
+-858,-872,-877,-885,-905,-929,-949,-957,-963,-975,-993,-1024,-1069,-1120,-1176,-1231,-1275,-1305,-1331,-1350,
+-1367,-1384,-1400,-1416,-1435,-1456,-1486,-1526,-1566,-1604,-1644,-1683,-1719,-1756,-1794,-1834,-1876,-1914,-1950,-1988,
+-2026,-2061,-2096,-2131,-2163,-2189,-2221,-2249,-2275,-2299,-2322,-2348,-2374,-2404,-2431,-2457,-2484,-2513,-2543,-2575,
+-2611,-2641,-2664,-2684,-2707,-2730,-2754,-2777,-2803,-2829,-2853,-2876,-2900,-2924,-2947,-2971,-2990,-3011,-3030,-3051,
+-3070,-3090,-3113,-3138,-3162,-3183,-3202,-3219,-3237,-3250,-3258,-3262,-3267,-3276,-3288,-3301,-3318,-3339,-3359,-3380,
+-3402,-3428,-3451,-3462,-3469,-3478,-3489,-3503,-3519,-3539,-3559,-3577,-3590,-3605,-3624,-3640,-3654,-3670,-3682,-3685,
+-3686,-3692,-3701,-3723,-3742,-3758,-3763,-3765,-3771,-3777,-3787,-3793,-3800,-3807,-3816,-3829,-3842,-3861,-3887,-3915,
+-3941,-3955,-3960,-3988,-4013,-4027,-4029,-4024,-4016,-4012,-4002,-3979,-3953,-3922,-3892,-3864,-3835,-3821,-3813,-3813,
+-3811,-3802,-3792,-3778,-3764,-3757,-3758,-3761,-3757,-3757,-3759,-3759,-3758,-3756,-3754,-3747,-3741,-3730,-3722,-3719,
+-3717,-3710,-3700,-3691,-3693,-3690,-3687,-3689,-3693,-3698,-3681,-3661,-3654,-3649,-3632,-3618,-3600,-3579,-3536,-3517,
+-3492,-3482,-3484,-3491,-3495,-3500,-3520,-3536,-3559,-3575,-3581,-3586,-3564,-3535,-3526,-3520,-3532,-3528,-3539,-3559,
+-3562,-3566,-3575,-3583,-3593,-3613,-3632,-3648,-3662,-3679,-3696,-3713,-3734,-3737,-3754,-3786,-3803,-3808,-3815,-3858,
+-3875,-3882,-3890,-3895,-3946,-3949,-3945,-3956,-3975,-3987,-4031,-4073,-4056,-4073,-4111,-4138,-4159,-4179,-4197,-4213,
+-4223,-4238,-4266,-4304,-4337,-4358,-4385,-4422,-4475,-4536,-4598,-4635,-4692,-4755,-4782,-4786,-4796,-4814,-4831,-4854,
+-4858,-4841,-4833,-4855,-4880,-4886,-4891,-4889,-4885,-4907,-4921,-4920,-4910,-4910,-4909,-4905,-4910,-4917,-4926,-4935,
+-4940,-4948,-4951,-4943,-4939,-4935,-4916,-4905,-4908,-4907,-4904,-4894,-4881,-4880,-4891,-4889,-4883,-4891,-4897,-4893,
+-4886,-4871,-4835,-4839,-4841,-4824,-4807,-4787,-4772,-4770,-4773,-4777,-4754,-4738,-4719,-4713,-4703,-4689,-4681,-4669,
+-4654,-4639,-4619,-4601,-4589,-4582,-4572,-4567,-4559,-4548,-4536,-4520,-4501,-4489,-4479,-4470,-4465,-4457,-4447,-4435,
+-4428,-4423,-4413,-4401,-4380,-4369,-4368,-4357,-4343,-4326,-4308,-4292,-4281,-4274,-4264,-4257,-4251,-4242,-4227,-4213,
+-4213,-4199,-4193,-4194,-4187,-4171,-4153,-4138,-4127,-4120,-4119,-4118,-4117,-4108,-4090,-4065,-4044,-4030,-4022,-4014,
+-4009,-4003,-3996,-3990,-3975,-3959,-3943,-3940,-3937,-3924,-3909,-3900,-3892,-3887,-3877,-3868,-3863,-3845,-3849,-3844,
+-3837,-3830,-3822,-3807,-3783,-3774,-3788,-3788,-3785,-3776,-3767,-3758,-3747,-3737,-3736,-3725,-3718,-3715,-3711,-3708,
+-3706,-3702,-3697,-3695,-3694,-3690,-3696,-3703,-3707,-3703,-3693,-3677,-3664,-3656,-3649,-3647,-3648,-3642,-3632,-3624,
+-3620,-3621,-3621,-3617,-3606,-3601,-3596,-3590,-3581,-3580,-3589,-3596,-3592,-3579,-3571,-3559,-3537,-3523,-3512,-3508,
+-3510,-3506,-3495,-3488,-3486,-3484,-3480,-3473,-3466,-3457,-3448,-3440,-3426,-3409,-3402,-3390,-3382,-3373,-3363,-3350,
+-3336,-3321,-3313,-3322,-3314,-3303,-3296,-3289,-3277,-3262,-3255,-3246,-3236,-3225,-3211,-3194,-3190,-3188,-3181,-3168,
+-3160,-3153,-3144,-3126,-3118,-3108,-3104,-3092,-3074,-3058,-3046,-3039,-3030,-3024,-3015,-3003,-2987,-2972,-2959,-2945,
+-2931,-2918,-2908,-2900,-2892,-2884,-2881,-2880,-2878,-2859,-2835,-2813,-2787,-2762,-2737,-2724,-2720,-2717,-2714,-2710,
+-2704,-2692,-2682,-2676,-2664,-2649,-2633,-2622,-2614,-2607,-2602,-2595,-2590,-2584,-2579,-2577,-2574,-2571,-2567,-2563,
+-2554,-2547,-2540,-2532,-2527,-2520,-2513,-2506,-2497,-2489,-2480,-2470,-2460,-2450,-2438,-2427,-2417,-2403,-2388,-2373,
+-2359,-2346,-2332,-2320,-2307,-2293,-2280,-2266,-2253,-2242,-2232,-2220,-2207,-2196,-2183,-2170,-2158,-2148,-2136,-2127,
+-2116,-2103,-2093,-2086,-2084,-2081,-2075,-2060,-2037,-2020,-2002,-1987,-1969,-1953,-1939,-1927,-1913,-1898,-1880,-1862,
+-1842,-1819,-1794,-1771,-1749,-1728,-1710,-1691,-1672,-1655,-1640,-1627,-1615,-1605,-1591,-1578,-1563,-1544,-1527,-1509,
+-1494,-1477,-1459,-1443,-1431,-1415,-1385,-1360,-1347,-1324,-1305,-1279,-1258,-1249,-1237,-1222,-1207,-1193,-1179,-1166,
+-1153,-1141,-1126,-1105,-1088,-1074,-1058,-1039,-1019,-1000,-984,-964,-943,-918,-895,-873,-854,-832,-799,-767,
+-741,-716,-685,-654,-622,-594,-568,-540,-512,-480,-456,-433,-409,-385,-359,-330,-306,-280,-246,-202,
+-156,-111,-62,-29,2,39,77,112,149,184,219,251,286,314,332,352,385,417,441,462,
+493,524,560,594,628,664,698,734,773,807,838,870,907,949,996,1039,1065,1106,1149,1189,
+1228,1264,1292,1325,1364,1400,1431,1455,1465,1478,1502,1542,1541,1505,1453,1388,1337,1301,1295,1322,
+1364,1408,1448,1483,1538,1607,1685,1747,1820,1887,1968,2046,2116,2140,2162,2189,2182,2183,2160,2159,
+2160,2183,2198,2227,2263,2285,2289,2306,2336,2353,2340,2333,2336,2338,2321,2274,2215,2149,2111,2100,
+2102,2101,2102,2102,2102,2103,2103,2097,2081,2073,2072,2083,2087,2087,2084,2065,2037,2012,1997,1991,
+1997,2008,2034,2060,2070,2094,2109,2098,2110,2132,2180,2191,2162,2135,2112,2100,2102,2098,2093,2074,
+2038,2006,1966,1916,1892,1881,1879,1877,1877,1874,1876,1878,1869,1868,1861,1865,1925,1995,2027,2005,
+1987,1977,1955,1909,1867,1859,1866,1883,1898,1918,1920,1926,1929,1929,1936,1948,1954,1950,1935,1931,
+1924,1916,1912,1908,1906,1901,1893,1878,1869,1862,1859,1849,1835,1828,1815,1809,1808,1803,1795,1796,
+1793,1791,1772,1763,1757,1758,1775,1780,1754,1735,1731,1736,1735,1729,1711,1675,1639,1606,1585,1575,
+1578,1577,1578,1576,1582,1589,1594,1589,1568,1551,1525,1496,1467,1440,1419,1401,1383,1371,1357,1354,
+1347,1325,1296,1279,1279,1281,1277,1283,1293,1303,1286,1264,1249,1249,1280,1337,1320,1289,1271,1260,
+1251,1232,1227,1229,1221,1211,1209,1223,1244,1256,1261,1265,1267,1244,1227,1230,1240,1255,1262,1267,
+1263,1257,1253,1256,1269,1280,1274,1271,1270,1267,1261,1256,1249,1245,1246,1250,1255,1258,1263,1262,
+1269,1277,1285,1290,1295,1297,1302,1315,1326,1336,1348,1346,1358,1373,1388,1399,1411,1425,1439,1456,
+1474,1491,1509,1524,1538,1565,1580,1584,1602,1630,1661,1698,1730,1744,1757,1777,1793,1810,1823,1838,
+1853,1872,1891,1914,1934,1952,1966,1977,1985,1990,2004,2036,2072,2102,2130,2157,2177,2194,2208,2218,
+2223,2230,2242,2256,2262,2273,2298,2335,2318,2287,2285,2285,2284,2284,2285,2292,2303,2307,2306,2315,
+2326,2334,2333,2334,2339,2348,2357,2355,2337,2312,2288,2279,2290,2291,2289,2296,2316,2332,2342,2354,
+2357,2352,2345,2346,2344,2343,2340,2332,2326,2324,2330,2334,2340,2350,2360,2369,2381,2389,2399,2408,
+2422,2434,2440,2450,2463,2473,2482,2495,2507,2519,2533,2548,2558,2566,2568,2573,2577,2574,2564,2556,
+2556,2560,2569,2578,2589,2621,2658,2681,2700,2728,2754,2775,2791,2808,2821,2838,2863,2886,2897,2911,
+2933,2955,2970,2981,3000,3019,3041,3064,3080,3087,3097,3114,3129,3141,3147,3154,3161,3167,3172,3178,
+3181,3183,3185,3186,3180,3176,3172,3166,3161,3159,3159,3158,3160,3161,3157,3152,3144,3140,3142,3143,
+3142,3137,3129,3118,3104,3092,3083,3073,3063,3054,3052,3048,3044,3041,3035,3029,3023,3019,3018,3017,
+3011,3007,3007,3008,3012,3015,3020,3025,3033,3040,3054,3067,3082,3095,3104,3112,3116,3121,3121,3122,
+3121,3120,3117,3112,3108,3100,3095,3091,3085,3079,3073,3065,3057,3051,3042,3033,3025,3017,3009,3002,
+2995,2988,2983,2976,2965,2952,2937,2921,2903,2885,2865,2846,2830,2813,2799,2786,2774,2762,2753,2743,
+2735,2724,2714,2706,2697,2689,2682,2674,2660,2642,2624,2608,2598,2587,2577,2564,2553,2542,2532,2522,
+2512,2503,2494,2487,2478,2463,2450,2438,2427,2418,2408,2394,2375,2351,2325,2293,2261,2234,2214,2192,
+2170,2144,2120,2101,2075,2050,2044,2033,2014,1992,1973,1960,1953,1943,1927,1933,1943,1942,1929,1905,
+1870,1833,1805,1779,1747,1714,1682,1648,1610,1567,1521,1487,1446,1397,1352,1306,1267,1231,1192,1153,
+1113,1075,1041,1019,1001,967,918,866,829,801,773,741,710,676,636,591,549,510,468,427,
+385,341,299,261,231,207,179,151,123,94,54,13,-28,-70,-106,-139,-161,-177,-190,-200,
+-219,-246,-272,-303,-342,-390,-436,-480,-515,-552,-591,-630,-669,-700,-736,-765,-786,-805,-836,-869,
+-877,-887,-903,-915,-929,-945,-961,-978,-993,-1005,-1025,-1052,-1078,-1110,-1144,-1181,-1219,-1256,-1294,-1329,
+-1356,-1379,-1401,-1428,-1454,-1481,-1503,-1530,-1565,-1602,-1641,-1678,-1719,-1760,-1802,-1847,-1886,-1927,-1967,-2007,
+-2041,-2073,-2102,-2133,-2165,-2198,-2233,-2260,-2282,-2300,-2321,-2342,-2363,-2386,-2412,-2441,-2475,-2510,-2541,-2574,
+-2607,-2634,-2662,-2688,-2712,-2736,-2762,-2787,-2812,-2835,-2856,-2876,-2900,-2924,-2951,-2975,-2999,-3021,-3046,-3074,
+-3099,-3114,-3131,-3149,-3168,-3185,-3202,-3218,-3236,-3251,-3265,-3273,-3283,-3292,-3302,-3314,-3326,-3339,-3357,-3380,
+-3402,-3421,-3440,-3458,-3473,-3486,-3502,-3517,-3533,-3551,-3577,-3605,-3631,-3649,-3661,-3672,-3684,-3703,-3723,-3735,
+-3744,-3752,-3763,-3779,-3801,-3829,-3849,-3866,-3875,-3876,-3871,-3868,-3866,-3866,-3868,-3875,-3897,-3929,-3963,-3990,
+-4015,-4036,-4055,-4065,-4069,-4076,-4086,-4095,-4098,-4097,-4096,-4086,-4069,-4040,-3998,-3966,-3954,-3933,-3905,-3880,
+-3869,-3872,-3876,-3870,-3858,-3840,-3829,-3821,-3817,-3818,-3820,-3824,-3824,-3826,-3828,-3828,-3824,-3818,-3812,-3804,
+-3798,-3795,-3790,-3780,-3761,-3761,-3763,-3761,-3760,-3763,-3768,-3761,-3743,-3726,-3726,-3722,-3704,-3693,-3677,-3652,
+-3612,-3589,-3564,-3559,-3561,-3566,-3576,-3582,-3597,-3623,-3652,-3661,-3660,-3659,-3642,-3607,-3593,-3585,-3570,-3579,
+-3593,-3603,-3619,-3636,-3648,-3652,-3686,-3702,-3711,-3723,-3735,-3753,-3771,-3791,-3809,-3827,-3836,-3868,-3882,-3892,
+-3901,-3932,-3970,-3974,-3972,-3976,-3979,-4013,-4033,-4048,-4067,-4080,-4093,-4133,-4131,-4113,-4141,-4181,-4224,-4235,
+-4245,-4254,-4263,-4285,-4294,-4315,-4352,-4380,-4403,-4423,-4464,-4486,-4532,-4584,-4637,-4686,-4730,-4773,-4807,-4840,
+-4882,-4920,-4937,-4936,-4939,-4945,-4935,-4937,-4942,-4953,-4951,-4948,-4945,-4932,-4911,-4906,-4911,-4921,-4930,-4937,
+-4945,-4948,-4946,-4944,-4941,-4937,-4951,-4951,-4938,-4932,-4930,-4935,-4928,-4917,-4916,-4905,-4894,-4886,-4883,-4871,
+-4853,-4857,-4876,-4884,-4887,-4873,-4853,-4847,-4844,-4818,-4813,-4817,-4798,-4785,-4784,-4767,-4758,-4753,-4726,-4698,
+-4683,-4679,-4672,-4662,-4643,-4626,-4616,-4606,-4597,-4590,-4582,-4566,-4561,-4549,-4533,-4521,-4509,-4500,-4493,-4486,
+-4475,-4463,-4450,-4443,-4431,-4414,-4400,-4383,-4372,-4369,-4375,-4366,-4346,-4330,-4310,-4294,-4293,-4287,-4277,-4265,
+-4251,-4237,-4229,-4226,-4228,-4218,-4213,-4206,-4195,-4181,-4172,-4162,-4153,-4155,-4154,-4142,-4127,-4110,-4096,-4086,
+-4073,-4065,-4058,-4048,-4040,-4026,-4014,-4010,-4003,-3995,-3988,-3977,-3967,-3962,-3950,-3947,-3940,-3926,-3893,-3847,
+-3889,-3899,-3887,-3884,-3897,-3882,-3858,-3852,-3833,-3825,-3836,-3834,-3832,-3821,-3811,-3806,-3797,-3804,-3799,-3790,
+-3786,-3780,-3778,-3768,-3762,-3762,-3758,-3746,-3732,-3732,-3726,-3724,-3730,-3737,-3734,-3729,-3722,-3713,-3704,-3690,
+-3680,-3674,-3664,-3660,-3664,-3661,-3658,-3653,-3638,-3633,-3630,-3630,-3628,-3618,-3611,-3611,-3617,-3615,-3603,-3589,
+-3583,-3578,-3566,-3553,-3551,-3548,-3546,-3539,-3534,-3531,-3527,-3531,-3517,-3500,-3496,-3479,-3458,-3453,-3445,-3438,
+-3429,-3418,-3406,-3397,-3385,-3375,-3363,-3351,-3339,-3326,-3317,-3308,-3301,-3294,-3291,-3282,-3267,-3256,-3248,-3239,
+-3222,-3213,-3215,-3209,-3200,-3184,-3166,-3160,-3153,-3138,-3129,-3119,-3102,-3083,-3071,-3054,-3042,-3027,-3014,-2997,
+-2978,-2961,-2947,-2936,-2924,-2914,-2907,-2902,-2900,-2899,-2895,-2887,-2869,-2841,-2815,-2806,-2790,-2765,-2749,-2741,
+-2730,-2728,-2723,-2717,-2709,-2696,-2681,-2675,-2667,-2658,-2648,-2640,-2634,-2627,-2621,-2616,-2611,-2607,-2601,-2595,
+-2590,-2582,-2572,-2564,-2554,-2545,-2538,-2531,-2523,-2515,-2507,-2499,-2492,-2483,-2471,-2459,-2449,-2439,-2426,-2411,
+-2397,-2383,-2372,-2359,-2347,-2338,-2325,-2309,-2294,-2281,-2270,-2258,-2247,-2235,-2223,-2211,-2202,-2193,-2182,-2172,
+-2161,-2151,-2140,-2126,-2117,-2106,-2096,-2086,-2075,-2064,-2049,-2034,-2019,-2002,-1983,-1964,-1947,-1928,-1911,-1896,
+-1877,-1861,-1841,-1820,-1797,-1774,-1753,-1734,-1717,-1699,-1679,-1667,-1656,-1642,-1625,-1612,-1597,-1584,-1573,-1562,
+-1543,-1520,-1496,-1476,-1464,-1455,-1446,-1418,-1386,-1362,-1337,-1314,-1293,-1270,-1249,-1234,-1222,-1208,-1196,-1184,
+-1171,-1161,-1152,-1143,-1132,-1118,-1098,-1084,-1067,-1046,-1022,-1000,-979,-961,-942,-921,-894,-867,-841,-815,
+-786,-754,-721,-691,-659,-628,-599,-569,-544,-521,-496,-469,-446,-421,-399,-371,-338,-307,-278,-256,
+-222,-176,-131,-84,-27,14,47,80,119,154,181,205,239,281,310,322,337,371,415,440,
+463,496,527,552,579,610,646,679,714,750,787,822,853,887,920,957,1004,1050,1082,1122,
+1167,1206,1243,1279,1311,1339,1378,1419,1446,1465,1471,1465,1459,1461,1451,1390,1324,1288,1296,1339,
+1404,1459,1515,1576,1641,1709,1788,1887,1937,1982,2013,2070,2096,2137,2136,2129,2131,2147,2143,2140,
+2161,2185,2220,2248,2280,2314,2325,2336,2354,2378,2390,2388,2378,2372,2338,2306,2273,2214,2145,2100,
+2087,2093,2098,2101,2102,2102,2104,2104,2097,2093,2090,2084,2076,2071,2059,2052,2048,2042,2027,2013,
+2005,2001,1997,1996,2002,2011,2011,1992,1969,1956,1950,1958,1970,1975,1981,1995,2005,2010,2006,1980,
+1959,1942,1931,1912,1889,1869,1856,1842,1830,1829,1838,1871,1875,1860,1874,1914,1944,1943,1923,1874,
+1843,1835,1833,1833,1823,1810,1817,1836,1854,1852,1861,1872,1891,1897,1893,1882,1875,1864,1852,1847,
+1844,1855,1856,1845,1843,1830,1820,1818,1810,1798,1790,1783,1780,1768,1765,1763,1757,1740,1724,1711,
+1697,1691,1684,1672,1678,1683,1658,1644,1642,1638,1625,1617,1608,1603,1599,1600,1599,1589,1575,1548,
+1529,1508,1493,1477,1471,1470,1472,1482,1495,1492,1481,1476,1474,1451,1419,1385,1352,1327,1302,1273,
+1265,1269,1254,1234,1229,1231,1237,1233,1227,1231,1242,1235,1226,1203,1175,1177,1201,1253,1292,1268,
+1225,1202,1187,1174,1166,1164,1164,1168,1167,1172,1184,1194,1196,1211,1223,1219,1213,1206,1205,1202,
+1209,1225,1232,1225,1217,1215,1214,1216,1217,1226,1238,1244,1241,1232,1229,1225,1225,1223,1228,1233,
+1240,1248,1256,1262,1267,1271,1282,1297,1309,1321,1334,1346,1345,1357,1369,1384,1399,1414,1428,1443,
+1458,1471,1483,1491,1512,1540,1556,1572,1591,1619,1645,1674,1702,1727,1742,1748,1764,1780,1791,1804,
+1819,1836,1858,1875,1886,1898,1904,1911,1924,1951,1983,2014,2039,2060,2083,2101,2112,2125,2137,2151,
+2161,2169,2177,2187,2203,2222,2233,2241,2251,2254,2250,2250,2243,2240,2245,2257,2267,2267,2264,2269,
+2274,2277,2282,2289,2301,2304,2300,2283,2263,2244,2229,2236,2243,2241,2238,2252,2271,2287,2301,2307,
+2307,2301,2297,2295,2295,2294,2297,2294,2292,2289,2289,2295,2300,2304,2314,2325,2336,2345,2357,2368,
+2379,2389,2396,2402,2412,2421,2428,2436,2448,2462,2477,2493,2506,2514,2521,2529,2534,2535,2529,2518,
+2510,2512,2516,2524,2550,2579,2591,2615,2642,2673,2699,2720,2738,2756,2771,2788,2814,2839,2853,2862,
+2882,2905,2921,2932,2940,2959,2981,3002,3021,3030,3037,3055,3069,3078,3087,3100,3113,3126,3129,3134,
+3142,3142,3142,3147,3153,3152,3146,3139,3132,3128,3126,3128,3130,3135,3141,3142,3137,3133,3132,3134,
+3133,3130,3118,3104,3088,3071,3056,3045,3031,3023,3015,3010,3006,3003,3003,3000,2992,2989,2985,2985,
+2984,2981,2978,2976,2977,2980,2984,2989,2997,3004,3015,3025,3034,3045,3055,3066,3078,3087,3094,3100,
+3102,3104,3102,3105,3102,3099,3095,3089,3083,3080,3074,3066,3057,3048,3039,3030,3021,3013,3004,2996,
+2987,2980,2976,2974,2967,2957,2942,2924,2905,2887,2868,2851,2835,2817,2799,2784,2770,2753,2740,2726,
+2715,2708,2694,2683,2673,2664,2655,2646,2636,2622,2607,2593,2580,2568,2557,2544,2532,2521,2513,2507,
+2499,2493,2485,2478,2468,2456,2447,2439,2432,2423,2411,2399,2384,2363,2338,2310,2281,2257,2233,2213,
+2193,2172,2149,2121,2093,2059,2028,2003,1978,1954,1934,1918,1905,1894,1877,1862,1850,1842,1852,1844,
+1828,1810,1782,1761,1741,1713,1682,1652,1618,1579,1540,1496,1447,1408,1383,1362,1333,1283,1235,1198,
+1163,1125,1084,1037,994,959,928,895,852,816,780,752,723,692,660,623,584,550,517,480,
+442,403,364,328,297,275,256,229,200,167,126,82,34,-10,-47,-82,-116,-146,-168,-183,
+-199,-222,-247,-282,-324,-357,-395,-448,-500,-540,-575,-611,-647,-685,-722,-759,-792,-819,-834,-837,
+-852,-908,-915,-921,-936,-951,-967,-983,-1001,-1021,-1047,-1074,-1102,-1131,-1156,-1179,-1201,-1227,-1257,-1291,
+-1324,-1355,-1384,-1412,-1439,-1468,-1496,-1526,-1560,-1597,-1636,-1681,-1727,-1769,-1812,-1855,-1896,-1935,-1970,-2009,
+-2044,-2074,-2099,-2124,-2155,-2187,-2219,-2247,-2274,-2297,-2311,-2324,-2343,-2364,-2385,-2409,-2439,-2469,-2498,-2530,
+-2562,-2590,-2619,-2649,-2679,-2708,-2736,-2764,-2791,-2816,-2840,-2861,-2881,-2905,-2929,-2954,-2980,-3008,-3035,-3067,
+-3098,-3124,-3142,-3158,-3174,-3192,-3209,-3227,-3245,-3263,-3279,-3293,-3306,-3317,-3328,-3338,-3347,-3361,-3376,-3389,
+-3404,-3421,-3441,-3461,-3482,-3505,-3528,-3550,-3572,-3592,-3613,-3638,-3667,-3697,-3720,-3734,-3744,-3754,-3768,-3784,
+-3800,-3812,-3827,-3846,-3868,-3893,-3919,-3944,-3964,-3973,-3976,-3972,-3967,-3967,-3969,-3968,-3975,-3991,-4012,-4032,
+-4048,-4061,-4071,-4082,-4091,-4099,-4102,-4098,-4092,-4091,-4089,-4084,-4081,-4071,-4051,-4017,-3989,-4000,-4014,-3994,
+-3971,-3948,-3940,-3935,-3932,-3934,-3929,-3920,-3906,-3894,-3889,-3886,-3886,-3887,-3891,-3893,-3891,-3893,-3891,-3886,
+-3881,-3876,-3867,-3860,-3850,-3844,-3834,-3824,-3827,-3834,-3833,-3832,-3824,-3806,-3795,-3789,-3790,-3780,-3774,-3770,
+-3755,-3726,-3691,-3672,-3648,-3634,-3637,-3642,-3651,-3658,-3653,-3694,-3728,-3736,-3736,-3733,-3711,-3666,-3646,-3645,
+-3651,-3668,-3678,-3691,-3703,-3715,-3730,-3744,-3764,-3775,-3785,-3799,-3810,-3827,-3846,-3862,-3864,-3897,-3925,-3944,
+-3954,-3963,-3977,-3994,-4035,-4050,-4055,-4078,-4075,-4091,-4131,-4137,-4139,-4152,-4175,-4196,-4211,-4215,-4217,-4240,
+-4254,-4257,-4273,-4293,-4324,-4345,-4358,-4357,-4379,-4401,-4429,-4455,-4491,-4515,-4511,-4519,-4572,-4629,-4683,-4744,
+-4800,-4833,-4839,-4849,-4885,-4911,-4916,-4910,-4906,-4919,-4944,-4965,-4955,-4933,-4936,-4948,-4955,-4946,-4940,-4945,
+-4946,-4945,-4944,-4947,-4953,-4957,-4962,-4967,-4966,-4969,-4963,-4964,-4975,-4977,-4977,-4965,-4938,-4915,-4919,-4921,
+-4911,-4897,-4886,-4870,-4856,-4851,-4854,-4871,-4881,-4884,-4875,-4855,-4845,-4828,-4808,-4793,-4788,-4784,-4775,-4767,
+-4762,-4742,-4713,-4700,-4691,-4677,-4669,-4659,-4642,-4640,-4631,-4621,-4611,-4601,-4592,-4577,-4563,-4548,-4539,-4532,
+-4523,-4511,-4502,-4499,-4485,-4456,-4447,-4439,-4432,-4421,-4407,-4399,-4390,-4393,-4388,-4366,-4354,-4341,-4331,-4321,
+-4309,-4297,-4287,-4281,-4277,-4273,-4271,-4269,-4251,-4238,-4229,-4227,-4219,-4213,-4207,-4191,-4180,-4177,-4187,-4176,
+-4153,-4139,-4126,-4114,-4101,-4089,-4084,-4084,-4075,-4068,-4061,-4050,-4041,-4036,-4023,-4015,-4013,-4012,-4006,-3994,
+-3987,-3979,-3965,-3949,-3939,-3941,-3933,-3928,-3931,-3918,-3906,-3890,-3876,-3885,-3890,-3886,-3876,-3878,-3878,-3871,
+-3860,-3852,-3843,-3841,-3847,-3843,-3835,-3817,-3814,-3821,-3813,-3806,-3797,-3787,-3768,-3762,-3758,-3754,-3752,-3751,
+-3749,-3749,-3743,-3733,-3721,-3715,-3713,-3711,-3708,-3704,-3700,-3697,-3698,-3699,-3697,-3694,-3684,-3668,-3664,-3659,
+-3647,-3646,-3641,-3632,-3625,-3617,-3610,-3604,-3599,-3590,-3572,-3571,-3597,-3590,-3557,-3531,-3524,-3520,-3508,-3506,
+-3500,-3498,-3487,-3480,-3472,-3456,-3444,-3430,-3416,-3403,-3393,-3384,-3377,-3368,-3356,-3333,-3327,-3324,-3312,-3300,
+-3293,-3281,-3261,-3252,-3247,-3239,-3230,-3214,-3203,-3194,-3180,-3172,-3159,-3144,-3128,-3119,-3106,-3090,-3077,-3059,
+-3038,-3020,-3003,-2986,-2971,-2956,-2944,-2936,-2931,-2927,-2923,-2919,-2914,-2907,-2896,-2884,-2870,-2856,-2844,-2822,
+-2795,-2778,-2765,-2758,-2753,-2746,-2737,-2725,-2714,-2706,-2700,-2694,-2686,-2677,-2671,-2664,-2658,-2649,-2640,-2631,
+-2624,-2614,-2606,-2597,-2588,-2578,-2570,-2563,-2558,-2549,-2540,-2532,-2522,-2512,-2503,-2493,-2482,-2473,-2464,-2452,
+-2437,-2423,-2407,-2395,-2381,-2369,-2358,-2348,-2336,-2320,-2305,-2291,-2281,-2272,-2261,-2251,-2242,-2232,-2220,-2210,
+-2199,-2188,-2177,-2165,-2152,-2140,-2128,-2115,-2100,-2087,-2075,-2065,-2053,-2035,-2019,-2005,-1994,-1975,-1955,-1936,
+-1916,-1897,-1879,-1862,-1842,-1824,-1802,-1783,-1764,-1748,-1735,-1721,-1709,-1693,-1677,-1658,-1639,-1620,-1601,-1581,
+-1564,-1549,-1534,-1521,-1506,-1494,-1483,-1468,-1433,-1400,-1369,-1345,-1325,-1303,-1282,-1261,-1244,-1231,-1222,-1211,
+-1201,-1188,-1178,-1165,-1155,-1146,-1134,-1119,-1102,-1086,-1068,-1050,-1030,-1008,-989,-968,-942,-916,-891,-859,
+-827,-796,-762,-730,-697,-666,-638,-611,-585,-561,-536,-510,-489,-464,-442,-415,-386,-356,-328,-295,
+-253,-209,-160,-107,-84,-64,-24,28,62,91,128,166,203,237,260,287,317,342,376,406,
+438,468,484,507,538,572,597,627,661,694,729,767,803,839,876,909,941,968,1001,1044,
+1090,1134,1171,1212,1252,1286,1317,1357,1393,1428,1454,1467,1473,1460,1436,1394,1353,1347,1371,1391,
+1429,1499,1576,1638,1672,1764,1847,1936,2003,2046,2045,2039,2066,2061,2072,2103,2134,2148,2161,2177,
+2197,2237,2284,2305,2312,2322,2330,2332,2344,2360,2361,2360,2364,2377,2382,2363,2339,2307,2261,2205,
+2155,2123,2114,2104,2095,2090,2087,2087,2083,2076,2065,2062,2055,2048,2046,2040,2029,2015,2016,2015,
+2010,1999,1993,1993,1986,1979,1964,1942,1936,1965,1994,1994,1993,1975,1952,1940,1934,1921,1910,1904,
+1896,1888,1885,1877,1866,1851,1832,1822,1834,1841,1826,1811,1815,1849,1910,1932,1943,1933,1909,1883,
+1845,1814,1804,1798,1799,1805,1808,1801,1799,1800,1805,1815,1816,1810,1807,1808,1818,1824,1817,1809,
+1802,1798,1796,1786,1775,1769,1762,1758,1757,1760,1762,1779,1782,1779,1779,1776,1769,1752,1747,1745,
+1729,1701,1677,1663,1649,1631,1616,1609,1607,1597,1589,1581,1567,1547,1523,1505,1496,1488,1489,1484,
+1476,1477,1484,1486,1472,1453,1419,1402,1394,1381,1374,1376,1390,1418,1423,1380,1342,1314,1292,1265,
+1233,1208,1193,1188,1194,1211,1213,1199,1178,1161,1162,1172,1177,1175,1158,1133,1120,1126,1143,1165,
+1188,1191,1164,1129,1101,1087,1084,1097,1121,1135,1145,1149,1155,1157,1159,1167,1168,1175,1183,1180,
+1173,1166,1164,1168,1173,1180,1188,1188,1190,1194,1192,1188,1187,1189,1191,1191,1202,1213,1215,1215,
+1225,1233,1235,1238,1246,1254,1264,1274,1291,1307,1321,1336,1345,1349,1358,1369,1383,1396,1409,1418,
+1427,1441,1455,1470,1488,1508,1529,1552,1577,1609,1638,1663,1686,1705,1725,1739,1744,1749,1765,1779,
+1792,1799,1802,1810,1823,1836,1848,1866,1891,1923,1951,1977,1994,2011,2022,2035,2048,2058,2072,2096,
+2111,2131,2135,2139,2154,2170,2179,2188,2199,2202,2204,2211,2217,2222,2223,2224,2226,2229,2230,2233,
+2233,2234,2241,2250,2256,2251,2232,2212,2197,2187,2190,2207,2209,2190,2181,2191,2212,2234,2251,2256,
+2250,2242,2243,2245,2249,2256,2261,2261,2257,2261,2259,2262,2262,2262,2268,2279,2294,2308,2317,2328,
+2339,2348,2355,2357,2366,2377,2381,2389,2398,2407,2422,2441,2454,2461,2470,2478,2487,2491,2490,2485,
+2478,2473,2472,2477,2487,2503,2536,2546,2573,2605,2635,2659,2681,2698,2716,2736,2759,2783,2802,2812,
+2825,2848,2866,2878,2885,2898,2918,2942,2959,2969,2976,2989,3010,3028,3039,3047,3057,3071,3082,3093,
+3105,3111,3110,3107,3113,3112,3109,3103,3097,3094,3090,3092,3094,3093,3100,3107,3113,3115,3117,3120,
+3121,3115,3105,3090,3071,3053,3032,3013,3001,2985,2970,2960,2957,2955,2952,2955,2955,2954,2953,2949,
+2945,2947,2949,2948,2946,2943,2944,2945,2953,2965,2976,2987,2997,3005,3015,3024,3032,3039,3048,3058,
+3068,3076,3082,3087,3087,3087,3084,3081,3076,3070,3064,3059,3049,3039,3029,3018,3007,2996,2987,2976,
+2968,2960,2955,2952,2948,2943,2929,2911,2891,2869,2851,2835,2820,2805,2791,2778,2764,2748,2731,2719,
+2707,2695,2686,2677,2666,2656,2647,2636,2625,2614,2603,2592,2581,2569,2556,2545,2537,2520,2507,2496,
+2488,2480,2473,2462,2452,2443,2436,2427,2421,2411,2402,2391,2377,2362,2342,2319,2297,2273,2252,2230,
+2209,2187,2172,2149,2121,2089,2058,2025,1993,1964,1930,1902,1877,1854,1836,1809,1785,1763,1758,1760,
+1760,1754,1749,1732,1707,1679,1651,1632,1610,1578,1541,1503,1461,1413,1367,1327,1291,1265,1235,1209,
+1188,1163,1130,1096,1056,1009,963,919,879,842,807,774,745,715,684,648,616,587,560,533,
+501,464,431,403,375,349,329,305,277,238,199,159,115,64,15,-28,-61,-84,-101,-117,
+-132,-151,-178,-208,-250,-309,-360,-397,-415,-428,-459,-508,-543,-573,-601,-635,-678,-732,-780,-820,
+-850,-880,-924,-947,-936,-934,-943,-958,-974,-1004,-1040,-1080,-1119,-1152,-1181,-1202,-1218,-1228,-1245,-1268,
+-1288,-1312,-1340,-1368,-1398,-1430,-1461,-1493,-1529,-1570,-1616,-1667,-1721,-1769,-1816,-1860,-1904,-1943,-1972,-1997,
+-2030,-2062,-2092,-2120,-2147,-2170,-2198,-2223,-2248,-2271,-2291,-2305,-2316,-2328,-2345,-2368,-2391,-2415,-2442,-2469,
+-2501,-2534,-2568,-2601,-2634,-2665,-2698,-2724,-2748,-2774,-2801,-2828,-2856,-2882,-2907,-2932,-2957,-2986,-3015,-3045,
+-3073,-3096,-3119,-3138,-3156,-3175,-3196,-3217,-3233,-3247,-3264,-3281,-3294,-3305,-3314,-3325,-3337,-3350,-3363,-3380,
+-3395,-3413,-3435,-3461,-3488,-3515,-3541,-3568,-3593,-3615,-3639,-3668,-3699,-3726,-3754,-3781,-3796,-3806,-3815,-3825,
+-3840,-3853,-3869,-3886,-3905,-3927,-3955,-3982,-4008,-4027,-4035,-4036,-4032,-4029,-4028,-4026,-4029,-4038,-4045,-4056,
+-4066,-4076,-4077,-4078,-4078,-4084,-4097,-4110,-4119,-4118,-4110,-4106,-4101,-4098,-4097,-4097,-4095,-4099,-4103,-4103,
+-4088,-4065,-4047,-4034,-4016,-4008,-4008,-4009,-4003,-3990,-3978,-3971,-3960,-3953,-3950,-3949,-3951,-3950,-3948,-3950,
+-3952,-3951,-3947,-3943,-3936,-3928,-3918,-3908,-3904,-3901,-3896,-3884,-3892,-3897,-3885,-3873,-3860,-3858,-3858,-3848,
+-3846,-3848,-3836,-3806,-3769,-3745,-3728,-3714,-3713,-3721,-3732,-3743,-3754,-3767,-3790,-3803,-3803,-3796,-3766,-3738,
+-3735,-3740,-3745,-3752,-3762,-3768,-3780,-3793,-3807,-3820,-3835,-3846,-3857,-3872,-3890,-3908,-3929,-3946,-3961,-3974,
+-3989,-4007,-4023,-4038,-4065,-4093,-4104,-4114,-4138,-4161,-4179,-4166,-4172,-4218,-4230,-4227,-4244,-4265,-4281,-4295,
+-4306,-4309,-4315,-4327,-4347,-4340,-4380,-4429,-4442,-4418,-4424,-4443,-4454,-4474,-4496,-4515,-4520,-4550,-4587,-4618,
+-4654,-4699,-4726,-4770,-4843,-4889,-4878,-4841,-4803,-4795,-4847,-4900,-4952,-4980,-4994,-5001,-4993,-4978,-4985,-4990,
+-4983,-4970,-4959,-4959,-4964,-4972,-4982,-4984,-4980,-4976,-4977,-4972,-4965,-4962,-4956,-4970,-4974,-4975,-4956,-4941,
+-4942,-4940,-4931,-4916,-4906,-4896,-4889,-4879,-4873,-4870,-4870,-4876,-4875,-4878,-4873,-4859,-4844,-4833,-4819,-4809,
+-4799,-4788,-4775,-4765,-4760,-4738,-4718,-4700,-4692,-4687,-4677,-4668,-4657,-4648,-4637,-4626,-4615,-4609,-4603,-4592,
+-4575,-4564,-4549,-4544,-4545,-4529,-4509,-4495,-4484,-4476,-4464,-4453,-4444,-4432,-4414,-4400,-4399,-4396,-4380,-4373,
+-4366,-4361,-4356,-4349,-4346,-4342,-4331,-4321,-4318,-4317,-4311,-4304,-4296,-4281,-4276,-4274,-4265,-4252,-4238,-4232,
+-4228,-4231,-4222,-4192,-4174,-4162,-4161,-4156,-4150,-4144,-4137,-4126,-4116,-4106,-4099,-4092,-4081,-4073,-4067,-4065,
+-4061,-4048,-4045,-4038,-4028,-4016,-3999,-3984,-3980,-3984,-3970,-3964,-3963,-3956,-3951,-3960,-3956,-3954,-3943,-3933,
+-3927,-3919,-3918,-3918,-3909,-3902,-3894,-3893,-3892,-3882,-3862,-3849,-3851,-3855,-3847,-3836,-3823,-3809,-3799,-3790,
+-3782,-3778,-3770,-3777,-3802,-3794,-3782,-3772,-3771,-3772,-3770,-3766,-3757,-3749,-3744,-3743,-3746,-3749,-3748,-3735,
+-3724,-3717,-3709,-3699,-3690,-3681,-3684,-3682,-3665,-3635,-3631,-3651,-3658,-3640,-3621,-3612,-3599,-3590,-3595,-3594,
+-3579,-3553,-3525,-3519,-3525,-3527,-3512,-3495,-3486,-3473,-3462,-3450,-3446,-3444,-3438,-3426,-3410,-3390,-3375,-3368,
+-3363,-3352,-3338,-3325,-3310,-3299,-3286,-3270,-3258,-3253,-3245,-3229,-3211,-3200,-3186,-3172,-3160,-3147,-3135,-3119,
+-3103,-3084,-3065,-3047,-3026,-3010,-2996,-2986,-2974,-2967,-2958,-2950,-2945,-2939,-2931,-2923,-2914,-2904,-2893,-2884,
+-2873,-2863,-2846,-2825,-2804,-2792,-2783,-2777,-2773,-2764,-2755,-2744,-2735,-2730,-2723,-2715,-2705,-2697,-2689,-2676,
+-2659,-2654,-2645,-2635,-2624,-2615,-2607,-2598,-2592,-2585,-2578,-2571,-2561,-2551,-2539,-2527,-2517,-2506,-2497,-2490,
+-2478,-2465,-2449,-2435,-2421,-2406,-2394,-2382,-2368,-2355,-2343,-2331,-2319,-2308,-2300,-2290,-2278,-2267,-2256,-2244,
+-2230,-2217,-2206,-2192,-2180,-2170,-2159,-2146,-2139,-2124,-2110,-2096,-2080,-2067,-2049,-2035,-2021,-2001,-1989,-1978,
+-1961,-1942,-1921,-1906,-1891,-1874,-1852,-1832,-1815,-1795,-1778,-1764,-1749,-1735,-1720,-1704,-1687,-1668,-1646,-1620,
+-1594,-1571,-1552,-1539,-1527,-1518,-1505,-1493,-1475,-1445,-1404,-1380,-1359,-1344,-1327,-1309,-1290,-1275,-1262,-1249,
+-1237,-1223,-1204,-1189,-1182,-1167,-1150,-1136,-1122,-1111,-1102,-1085,-1070,-1056,-1036,-1012,-987,-959,-931,-896,
+-866,-838,-805,-771,-740,-711,-686,-659,-635,-611,-586,-562,-537,-511,-485,-458,-436,-415,-384,-353,
+-307,-257,-217,-171,-132,-93,-49,-17,4,41,82,112,150,185,210,234,266,298,329,357,
+379,401,433,466,495,519,549,580,612,644,676,710,746,781,818,856,893,927,959,989,
+1018,1050,1090,1136,1176,1212,1255,1295,1332,1370,1403,1429,1449,1468,1479,1479,1462,1481,1516,1550,
+1554,1580,1654,1677,1700,1748,1827,1892,1945,1984,2009,2027,2023,2045,2071,2099,2139,2190,2234,2250,
+2262,2282,2305,2317,2324,2334,2341,2342,2339,2333,2334,2330,2328,2318,2311,2302,2304,2312,2319,2304,
+2276,2246,2221,2205,2184,2144,2098,2070,2060,2042,2023,2010,1994,1987,1980,1970,1957,1957,1968,1975,
+1958,1934,1927,1927,1931,1929,1922,1900,1876,1860,1859,1863,1877,1895,1904,1896,1883,1869,1857,1847,
+1837,1826,1823,1823,1828,1838,1861,1850,1796,1773,1776,1793,1801,1818,1840,1864,1876,1876,1864,1839,
+1822,1807,1785,1772,1769,1769,1771,1770,1772,1772,1768,1757,1744,1743,1745,1741,1742,1749,1743,1733,
+1729,1725,1727,1733,1740,1740,1726,1708,1699,1698,1697,1682,1664,1663,1661,1658,1665,1671,1664,1659,
+1648,1638,1629,1624,1612,1595,1588,1581,1562,1546,1530,1511,1495,1483,1479,1474,1463,1450,1433,1420,
+1409,1396,1385,1380,1380,1383,1376,1363,1347,1332,1311,1300,1298,1301,1313,1326,1319,1300,1268,1242,
+1218,1196,1171,1155,1151,1163,1178,1181,1168,1147,1128,1116,1115,1114,1118,1118,1104,1091,1091,1096,
+1099,1104,1103,1102,1096,1081,1059,1042,1035,1041,1058,1075,1095,1106,1118,1128,1138,1146,1148,1142,
+1141,1142,1150,1158,1163,1163,1156,1149,1152,1156,1161,1166,1173,1171,1165,1167,1169,1172,1180,1188,
+1194,1199,1205,1216,1226,1235,1247,1257,1268,1284,1299,1315,1331,1349,1343,1359,1368,1375,1383,1393,
+1406,1425,1443,1465,1487,1512,1539,1563,1586,1612,1637,1657,1675,1688,1702,1714,1730,1742,1742,1739,
+1752,1767,1775,1784,1794,1805,1818,1835,1857,1880,1901,1920,1935,1953,1964,1975,1981,1991,2004,2021,
+2060,2114,2115,2119,2141,2152,2134,2130,2135,2151,2171,2184,2186,2187,2191,2195,2196,2196,2193,2191,
+2193,2199,2204,2205,2201,2197,2183,2164,2147,2139,2150,2170,2157,2136,2133,2142,2156,2170,2183,2190,
+2188,2188,2197,2207,2210,2211,2217,2220,2223,2227,2229,2232,2234,2233,2235,2240,2250,2258,2267,2279,
+2295,2306,2317,2325,2326,2335,2341,2346,2355,2363,2371,2384,2398,2414,2425,2430,2435,2443,2446,2442,
+2438,2438,2436,2437,2444,2456,2469,2487,2502,2531,2565,2595,2620,2640,2662,2681,2702,2726,2746,2758,
+2770,2788,2811,2827,2834,2843,2856,2878,2899,2913,2922,2932,2950,2965,2982,3000,3014,3026,3034,3044,
+3056,3061,3065,3068,3070,3067,3065,3061,3057,3053,3052,3049,3049,3050,3051,3058,3065,3075,3082,3088,
+3094,3098,3092,3071,3047,3029,3005,2982,2963,2949,2936,2924,2916,2912,2909,2909,2912,2913,2912,2912,
+2913,2912,2914,2919,2921,2918,2917,2919,2922,2925,2934,2946,2959,2969,2977,2982,2990,2995,3002,3009,
+3019,3028,3036,3045,3052,3055,3054,3053,3049,3047,3044,3039,3034,3023,3012,2998,2985,2972,2961,2948,
+2938,2930,2923,2917,2915,2913,2905,2889,2868,2844,2822,2806,2792,2781,2772,2763,2754,2743,2732,2721,
+2708,2699,2690,2683,2675,2669,2662,2652,2640,2627,2614,2601,2587,2578,2568,2556,2541,2526,2511,2494,
+2478,2461,2445,2433,2420,2410,2400,2390,2384,2378,2370,2362,2353,2344,2332,2317,2301,2281,2258,2238,
+2216,2196,2176,2156,2130,2102,2076,2048,2020,1986,1950,1915,1879,1846,1818,1792,1762,1739,1719,1706,
+1699,1690,1691,1690,1681,1666,1636,1597,1554,1523,1495,1462,1420,1378,1336,1303,1274,1255,1243,1218,
+1187,1162,1141,1115,1084,1047,1010,969,930,890,852,815,780,745,714,684,654,626,598,572,
+547,522,494,463,433,406,383,362,341,318,280,241,202,160,112,65,21,-14,-40,-52,
+-61,-73,-91,-113,-138,-177,-222,-267,-330,-369,-360,-361,-402,-447,-488,-528,-561,-590,-621,-659,
+-708,-749,-767,-801,-888,-942,-926,-918,-931,-961,-1004,-1049,-1088,-1124,-1161,-1190,-1214,-1235,-1252,-1266,
+-1281,-1299,-1317,-1338,-1365,-1396,-1430,-1472,-1520,-1573,-1626,-1677,-1728,-1776,-1824,-1873,-1920,-1957,-1983,-2006,
+-2031,-2058,-2087,-2118,-2143,-2163,-2182,-2198,-2215,-2232,-2247,-2261,-2277,-2296,-2312,-2326,-2345,-2367,-2385,-2408,
+-2437,-2466,-2497,-2530,-2564,-2599,-2634,-2669,-2700,-2729,-2758,-2790,-2823,-2857,-2889,-2917,-2946,-2975,-3005,-3037,
+-3067,-3092,-3111,-3131,-3148,-3165,-3183,-3200,-3217,-3228,-3244,-3265,-3287,-3303,-3314,-3321,-3334,-3351,-3368,-3386,
+-3406,-3422,-3441,-3465,-3491,-3518,-3546,-3575,-3606,-3633,-3658,-3688,-3726,-3765,-3798,-3824,-3842,-3857,-3865,-3875,
+-3886,-3897,-3913,-3930,-3945,-3957,-3975,-3996,-4016,-4029,-4037,-4039,-4035,-4031,-4026,-4024,-4027,-4030,-4034,-4037,
+-4045,-4056,-4066,-4071,-4071,-4069,-4072,-4078,-4081,-4086,-4087,-4086,-4086,-4089,-4092,-4099,-4107,-4117,-4126,-4126,
+-4122,-4119,-4112,-4095,-4083,-4079,-4085,-4089,-4090,-4088,-4081,-4070,-4055,-4046,-4038,-4029,-4019,-4008,-4005,-4007,
+-4011,-4011,-4013,-4012,-4013,-4003,-3997,-3992,-3981,-3976,-3970,-3964,-3964,-3965,-3963,-3954,-3948,-3940,-3923,-3926,
+-3935,-3922,-3917,-3919,-3905,-3872,-3841,-3824,-3809,-3800,-3801,-3809,-3817,-3824,-3832,-3852,-3867,-3880,-3888,-3880,
+-3857,-3830,-3823,-3826,-3833,-3836,-3840,-3848,-3859,-3873,-3888,-3901,-3913,-3925,-3938,-3951,-3964,-3987,-4003,-4015,
+-4031,-4047,-4060,-4078,-4093,-4122,-4140,-4153,-4170,-4192,-4208,-4227,-4241,-4255,-4271,-4282,-4302,-4322,-4337,-4343,
+-4350,-4368,-4385,-4391,-4381,-4384,-4413,-4425,-4427,-4458,-4477,-4483,-4482,-4489,-4494,-4498,-4516,-4535,-4566,-4578,
+-4600,-4608,-4631,-4672,-4719,-4750,-4796,-4836,-4864,-4889,-4874,-4825,-4809,-4874,-4924,-4956,-4990,-5022,-5036,-5036,
+-5022,-5013,-5010,-5014,-5009,-5001,-4994,-4992,-5001,-4994,-4995,-4996,-5000,-4999,-4999,-4999,-4998,-4992,-4980,-4979,
+-4969,-4959,-4949,-4939,-4948,-4953,-4935,-4922,-4914,-4901,-4891,-4884,-4878,-4865,-4864,-4869,-4866,-4869,-4873,-4865,
+-4860,-4833,-4816,-4806,-4788,-4778,-4773,-4770,-4756,-4734,-4720,-4715,-4708,-4700,-4688,-4680,-4675,-4666,-4657,-4646,
+-4635,-4619,-4611,-4600,-4589,-4588,-4576,-4562,-4546,-4540,-4523,-4514,-4507,-4503,-4497,-4486,-4471,-4456,-4434,-4426,
+-4437,-4437,-4436,-4424,-4426,-4422,-4414,-4405,-4392,-4383,-4376,-4369,-4365,-4364,-4363,-4355,-4337,-4331,-4330,-4324,
+-4316,-4303,-4286,-4287,-4283,-4270,-4254,-4241,-4234,-4227,-4217,-4204,-4195,-4185,-4176,-4167,-4156,-4147,-4138,-4133,
+-4127,-4121,-4114,-4107,-4106,-4103,-4096,-4084,-4067,-4052,-4045,-4048,-4050,-4050,-4041,-4024,-4012,-4013,-4015,-4016,
+-4017,-4006,-3995,-3990,-3991,-3979,-3966,-3962,-3955,-3948,-3938,-3931,-3924,-3917,-3903,-3899,-3890,-3879,-3863,-3855,
+-3847,-3839,-3834,-3828,-3824,-3835,-3845,-3833,-3812,-3800,-3796,-3797,-3809,-3818,-3825,-3825,-3816,-3811,-3798,-3791,
+-3790,-3792,-3783,-3774,-3768,-3759,-3744,-3730,-3718,-3713,-3722,-3725,-3713,-3701,-3699,-3687,-3663,-3648,-3638,-3632,
+-3634,-3632,-3626,-3618,-3598,-3574,-3558,-3549,-3552,-3545,-3534,-3513,-3502,-3492,-3482,-3469,-3464,-3456,-3438,-3408,
+-3393,-3386,-3389,-3378,-3357,-3343,-3328,-3320,-3315,-3304,-3296,-3286,-3273,-3255,-3242,-3229,-3217,-3202,-3186,-3170,
+-3155,-3140,-3122,-3104,-3086,-3068,-3054,-3040,-3028,-3015,-3004,-2993,-2984,-2976,-2967,-2959,-2951,-2941,-2932,-2921,
+-2909,-2902,-2893,-2886,-2878,-2867,-2850,-2831,-2817,-2811,-2806,-2799,-2791,-2784,-2775,-2767,-2756,-2746,-2737,-2728,
+-2718,-2708,-2696,-2684,-2670,-2656,-2644,-2634,-2626,-2618,-2611,-2604,-2596,-2589,-2578,-2567,-2555,-2542,-2533,-2526,
+-2515,-2502,-2489,-2474,-2460,-2446,-2432,-2417,-2404,-2391,-2378,-2366,-2356,-2347,-2338,-2328,-2317,-2305,-2292,-2278,
+-2264,-2250,-2235,-2220,-2209,-2199,-2191,-2183,-2173,-2167,-2156,-2142,-2126,-2108,-2091,-2073,-2057,-2041,-2027,-2011,
+-1996,-1981,-1970,-1961,-1947,-1927,-1902,-1884,-1868,-1848,-1824,-1801,-1785,-1771,-1757,-1744,-1727,-1707,-1683,-1656,
+-1626,-1594,-1569,-1555,-1545,-1538,-1530,-1517,-1504,-1485,-1453,-1414,-1395,-1368,-1353,-1344,-1335,-1319,-1299,-1277,
+-1266,-1257,-1244,-1223,-1205,-1192,-1178,-1161,-1146,-1133,-1120,-1108,-1095,-1082,-1064,-1044,-1026,-1002,-975,-949,
+-918,-884,-851,-817,-784,-757,-734,-706,-684,-663,-640,-615,-589,-558,-531,-502,-473,-443,-411,-370,
+-329,-290,-256,-228,-196,-159,-123,-79,-32,2,38,81,112,130,156,193,231,259,286,309,
+331,356,385,417,448,478,507,540,570,600,634,667,699,732,765,801,838,876,912,943,
+977,1008,1036,1061,1093,1133,1176,1215,1252,1299,1342,1382,1418,1448,1482,1520,1582,1637,1650,1664,
+1672,1679,1703,1741,1767,1795,1823,1860,1889,1914,1961,2011,2054,2081,2113,2152,2169,2195,2240,2272,
+2287,2297,2307,2315,2318,2316,2313,2309,2304,2296,2290,2284,2279,2276,2271,2265,2278,2286,2283,2271,
+2249,2226,2205,2192,2177,2155,2121,2078,2038,2020,2013,1993,1981,1968,1964,1958,1944,1914,1894,1891,
+1886,1880,1876,1880,1886,1891,1894,1895,1884,1864,1845,1833,1838,1831,1839,1858,1846,1823,1807,1797,
+1789,1784,1785,1782,1780,1799,1839,1851,1814,1764,1759,1780,1800,1808,1808,1814,1806,1801,1793,1786,
+1779,1771,1759,1748,1733,1722,1719,1718,1719,1720,1719,1714,1707,1701,1693,1688,1682,1673,1668,1664,
+1669,1671,1664,1656,1646,1643,1635,1629,1622,1622,1622,1621,1610,1602,1602,1599,1587,1570,1566,1567,
+1558,1551,1543,1525,1512,1501,1489,1490,1490,1489,1483,1485,1487,1482,1459,1433,1417,1410,1412,1398,
+1379,1366,1349,1326,1314,1314,1318,1330,1330,1314,1302,1278,1264,1251,1238,1231,1226,1217,1208,1203,
+1202,1195,1176,1155,1130,1108,1101,1105,1115,1126,1130,1124,1107,1094,1085,1076,1072,1075,1076,1074,
+1067,1059,1055,1059,1065,1063,1057,1047,1035,1021,1007,1006,1017,1034,1052,1063,1075,1090,1104,1118,
+1127,1131,1126,1124,1126,1135,1143,1146,1147,1145,1137,1133,1134,1138,1142,1146,1151,1154,1157,1164,
+1167,1173,1183,1196,1209,1214,1225,1239,1250,1263,1280,1299,1316,1326,1343,1340,1352,1364,1373,1385,
+1399,1418,1442,1473,1505,1535,1558,1578,1597,1614,1630,1649,1669,1685,1698,1707,1716,1726,1738,1748,
+1758,1770,1779,1783,1783,1792,1797,1805,1818,1832,1847,1861,1875,1889,1901,1912,1917,1930,1957,1993,
+2024,2045,2069,2062,2060,2059,2072,2092,2093,2097,2110,2120,2121,2126,2140,2151,2153,2151,2149,2149,
+2156,2161,2155,2158,2161,2147,2131,2113,2097,2095,2119,2121,2094,2082,2083,2093,2106,2115,2127,2130,
+2130,2137,2146,2157,2165,2172,2175,2182,2182,2186,2194,2198,2204,2208,2209,2210,2212,2218,2225,2234,
+2246,2257,2269,2274,2276,2283,2294,2303,2314,2324,2333,2339,2349,2364,2373,2382,2388,2391,2394,2398,
+2396,2389,2388,2384,2386,2398,2420,2437,2445,2462,2494,2528,2556,2578,2601,2628,2652,2675,2696,2710,
+2722,2739,2758,2774,2788,2795,2806,2820,2840,2858,2872,2880,2893,2908,2926,2941,2958,2974,2986,2999,
+3015,3024,3028,3031,3032,3028,3021,3017,3011,3009,3007,3004,3003,3002,3001,3006,3013,3020,3026,3031,
+3044,3051,3060,3056,3034,3013,2993,2973,2950,2929,2915,2902,2892,2887,2883,2884,2880,2879,2881,2879,
+2878,2882,2886,2891,2901,2902,2903,2904,2906,2910,2914,2921,2933,2947,2954,2958,2960,2962,2964,2970,
+2977,2987,2995,3007,3012,3017,3021,3024,3023,3024,3028,3025,3019,3008,2997,2982,2967,2953,2937,2924,
+2911,2899,2892,2888,2885,2883,2879,2870,2857,2834,2810,2790,2771,2762,2753,2745,2740,2736,2728,2720,
+2710,2702,2694,2688,2681,2677,2672,2665,2656,2643,2629,2616,2600,2589,2577,2564,2548,2531,2508,2490,
+2469,2449,2429,2410,2393,2376,2362,2351,2339,2329,2320,2315,2309,2304,2297,2288,2278,2267,2252,2234,
+2215,2196,2176,2157,2136,2113,2087,2062,2030,1999,1970,1938,1899,1864,1833,1806,1778,1752,1710,1676,
+1652,1633,1619,1616,1618,1613,1598,1571,1534,1493,1456,1420,1380,1344,1313,1286,1258,1234,1211,1190,
+1171,1151,1130,1107,1079,1052,1024,990,958,921,883,845,808,771,737,704,675,647,620,592,
+564,538,515,493,463,430,403,383,364,348,333,314,288,255,217,172,124,76,32,0,
+-21,-36,-51,-69,-89,-113,-135,-148,-176,-204,-244,-284,-302,-338,-384,-429,-482,-517,-540,-563,
+-596,-656,-708,-728,-748,-810,-896,-949,-952,-953,-969,-999,-1035,-1071,-1111,-1157,-1190,-1210,-1229,-1243,
+-1257,-1274,-1293,-1312,-1338,-1374,-1412,-1457,-1512,-1570,-1628,-1685,-1744,-1795,-1845,-1891,-1931,-1966,-1996,-2019,
+-2036,-2054,-2077,-2104,-2129,-2147,-2172,-2194,-2213,-2228,-2240,-2244,-2247,-2250,-2262,-2276,-2289,-2300,-2313,-2333,
+-2358,-2389,-2421,-2461,-2503,-2541,-2583,-2626,-2672,-2709,-2743,-2776,-2811,-2847,-2881,-2915,-2949,-2980,-3009,-3040,
+-3073,-3103,-3135,-3158,-3177,-3194,-3213,-3231,-3248,-3259,-3271,-3283,-3300,-3323,-3342,-3351,-3360,-3378,-3401,-3418,
+-3437,-3457,-3480,-3503,-3527,-3553,-3579,-3602,-3625,-3651,-3676,-3711,-3755,-3799,-3835,-3864,-3888,-3902,-3918,-3934,
+-3950,-3965,-3978,-3991,-4005,-4015,-4021,-4024,-4025,-4029,-4035,-4038,-4040,-4037,-4032,-4025,-4022,-4025,-4024,-4025,
+-4026,-4025,-4029,-4029,-4030,-4027,-4026,-4026,-4025,-4033,-4038,-4043,-4051,-4062,-4070,-4074,-4077,-4091,-4106,-4121,
+-4130,-4140,-4139,-4128,-4128,-4139,-4144,-4143,-4150,-4165,-4180,-4186,-4176,-4151,-4134,-4127,-4116,-4100,-4082,-4081,
+-4081,-4078,-4075,-4076,-4081,-4085,-4078,-4069,-4063,-4057,-4050,-4043,-4033,-4031,-4035,-4032,-4031,-4023,-4012,-3999,
+-4001,-4007,-4008,-3995,-3986,-3982,-3969,-3943,-3916,-3898,-3883,-3880,-3885,-3891,-3899,-3909,-3912,-3925,-3957,-3972,
+-3976,-3973,-3957,-3927,-3912,-3903,-3907,-3923,-3926,-3933,-3943,-3954,-3967,-3981,-3994,-4010,-4022,-4035,-4050,-4067,
+-4082,-4099,-4116,-4130,-4142,-4162,-4182,-4197,-4215,-4236,-4254,-4266,-4280,-4294,-4311,-4329,-4350,-4372,-4387,-4408,
+-4426,-4436,-4450,-4461,-4469,-4479,-4484,-4475,-4482,-4503,-4512,-4515,-4538,-4546,-4540,-4545,-4527,-4544,-4578,-4595,
+-4623,-4641,-4637,-4653,-4682,-4715,-4739,-4758,-4784,-4821,-4851,-4859,-4870,-4886,-4877,-4848,-4833,-4858,-4930,-4983,
+-5008,-5013,-5010,-5011,-5016,-5028,-5038,-5037,-5037,-5042,-5041,-5036,-5032,-5031,-5028,-5041,-5031,-5022,-5021,-5011,
+-5001,-5000,-4993,-4984,-4971,-4974,-4965,-4956,-4966,-4955,-4939,-4927,-4930,-4934,-4921,-4907,-4900,-4894,-4888,-4884,
+-4887,-4886,-4880,-4874,-4851,-4823,-4814,-4811,-4798,-4785,-4777,-4765,-4759,-4754,-4746,-4736,-4728,-4723,-4713,-4698,
+-4686,-4677,-4664,-4648,-4641,-4639,-4632,-4615,-4606,-4606,-4597,-4584,-4580,-4575,-4569,-4562,-4558,-4556,-4551,-4544,
+-4534,-4520,-4513,-4518,-4514,-4503,-4495,-4486,-4478,-4468,-4458,-4448,-4440,-4430,-4421,-4417,-4407,-4400,-4395,-4390,
+-4388,-4382,-4383,-4373,-4357,-4354,-4345,-4342,-4338,-4323,-4306,-4298,-4289,-4278,-4264,-4254,-4247,-4236,-4229,-4218,
+-4208,-4197,-4187,-4181,-4177,-4171,-4167,-4169,-4166,-4158,-4151,-4142,-4126,-4110,-4097,-4094,-4095,-4107,-4106,-4093,
+-4077,-4070,-4078,-4073,-4067,-4058,-4055,-4047,-4042,-4037,-4027,-4016,-4004,-3992,-3987,-3978,-3967,-3948,-3939,-3928,
+-3921,-3921,-3913,-3898,-3892,-3903,-3901,-3882,-3876,-3871,-3862,-3854,-3851,-3854,-3848,-3840,-3845,-3861,-3867,-3858,
+-3844,-3840,-3847,-3847,-3838,-3828,-3835,-3830,-3820,-3808,-3785,-3755,-3745,-3753,-3749,-3744,-3741,-3734,-3729,-3715,
+-3701,-3684,-3662,-3655,-3662,-3666,-3657,-3632,-3601,-3584,-3574,-3567,-3559,-3546,-3527,-3517,-3514,-3507,-3500,-3491,
+-3474,-3446,-3429,-3424,-3408,-3394,-3383,-3366,-3355,-3346,-3337,-3326,-3316,-3306,-3295,-3284,-3272,-3257,-3243,-3225,
+-3208,-3192,-3178,-3160,-3143,-3128,-3114,-3099,-3086,-3072,-3060,-3047,-3037,-3028,-3017,-3007,-2997,-2986,-2974,-2962,
+-2949,-2937,-2926,-2918,-2911,-2905,-2900,-2894,-2888,-2878,-2862,-2847,-2836,-2830,-2823,-2815,-2806,-2797,-2789,-2778,
+-2768,-2758,-2747,-2734,-2720,-2704,-2689,-2679,-2668,-2657,-2647,-2638,-2631,-2621,-2614,-2603,-2592,-2579,-2568,-2556,
+-2549,-2539,-2526,-2511,-2496,-2483,-2470,-2457,-2444,-2431,-2419,-2406,-2394,-2382,-2370,-2361,-2352,-2340,-2328,-2314,
+-2299,-2284,-2270,-2255,-2241,-2230,-2220,-2211,-2206,-2201,-2194,-2184,-2172,-2156,-2139,-2121,-2103,-2085,-2068,-2050,
+-2034,-2020,-2007,-1994,-1983,-1970,-1957,-1942,-1922,-1898,-1873,-1853,-1834,-1816,-1796,-1776,-1756,-1735,-1713,-1692,
+-1670,-1644,-1618,-1593,-1579,-1567,-1556,-1550,-1536,-1517,-1486,-1464,-1437,-1421,-1394,-1367,-1354,-1345,-1333,-1319,
+-1302,-1284,-1269,-1253,-1238,-1222,-1207,-1190,-1175,-1163,-1152,-1139,-1125,-1111,-1094,-1075,-1054,-1030,-1004,-986,
+-963,-934,-902,-874,-843,-813,-782,-756,-732,-706,-678,-651,-623,-593,-561,-528,-502,-486,-451,-411,
+-377,-336,-301,-262,-209,-172,-144,-105,-78,-45,-13,20,54,93,132,166,189,214,247,272,
+294,325,351,381,410,440,471,500,529,562,596,629,661,691,723,755,789,826,863,898,
+931,962,990,1025,1056,1084,1111,1142,1179,1222,1263,1306,1354,1400,1458,1515,1588,1645,1678,1704,
+1731,1751,1761,1784,1828,1842,1860,1881,1891,1914,1966,2015,2053,2094,2143,2176,2198,2212,2228,2252,
+2267,2275,2279,2279,2278,2274,2267,2259,2248,2237,2229,2222,2211,2190,2189,2195,2204,2208,2214,2208,
+2186,2162,2144,2122,2101,2080,2045,1997,1936,1875,1832,1806,1794,1794,1806,1832,1860,1868,1869,1877,
+1869,1854,1839,1828,1822,1821,1823,1825,1827,1826,1816,1801,1788,1783,1778,1768,1766,1767,1775,1786,
+1806,1819,1810,1796,1793,1791,1777,1771,1766,1762,1754,1753,1754,1752,1756,1748,1735,1738,1726,1711,
+1708,1706,1703,1699,1694,1688,1681,1670,1661,1650,1647,1649,1646,1641,1633,1624,1621,1618,1620,1624,
+1626,1624,1609,1598,1590,1589,1586,1585,1582,1586,1591,1578,1568,1561,1562,1551,1534,1518,1506,1489,
+1476,1462,1451,1441,1429,1417,1405,1402,1395,1390,1385,1379,1374,1377,1382,1387,1390,1399,1393,1359,
+1345,1341,1320,1292,1263,1239,1230,1229,1241,1261,1275,1274,1248,1219,1201,1188,1176,1165,1152,1139,
+1132,1129,1128,1124,1124,1110,1095,1087,1080,1070,1066,1072,1077,1079,1080,1079,1075,1069,1058,1047,
+1042,1045,1050,1050,1038,1032,1035,1039,1037,1030,1019,1009,998,990,993,998,1008,1020,1033,1048,
+1060,1077,1090,1102,1110,1114,1112,1112,1115,1121,1128,1138,1134,1126,1122,1120,1123,1127,1131,1138,
+1143,1147,1153,1166,1181,1191,1206,1222,1240,1257,1270,1282,1296,1317,1332,1340,1342,1353,1367,1382,
+1398,1422,1451,1490,1534,1578,1610,1630,1643,1649,1653,1663,1679,1695,1707,1717,1723,1730,1741,1756,
+1768,1774,1777,1782,1790,1792,1792,1792,1795,1798,1807,1822,1848,1858,1855,1864,1863,1872,1886,1927,
+1966,1959,1951,1957,1966,1977,1995,2015,2048,2063,2060,2077,2077,2068,2082,2115,2113,2095,2100,2102,
+2105,2112,2125,2131,2127,2112,2088,2069,2056,2066,2071,2044,2028,2024,2032,2045,2059,2070,2077,2077,
+2076,2087,2102,2114,2118,2123,2129,2134,2140,2144,2151,2156,2164,2170,2175,2176,2178,2183,2189,2194,
+2204,2212,2218,2224,2226,2230,2239,2252,2263,2276,2287,2297,2306,2317,2325,2330,2340,2346,2347,2349,
+2354,2350,2342,2338,2335,2339,2348,2362,2386,2394,2413,2442,2477,2510,2539,2568,2590,2614,2638,2659,
+2670,2683,2707,2730,2745,2753,2761,2774,2791,2808,2822,2834,2847,2859,2876,2893,2908,2923,2932,2947,
+2966,2983,2992,2994,2996,2993,2987,2981,2976,2971,2969,2965,2964,2964,2959,2958,2963,2967,2971,2971,
+2977,2990,3005,3019,3023,3013,2995,2980,2965,2944,2922,2905,2893,2883,2879,2880,2879,2877,2875,2873,
+2871,2872,2875,2880,2888,2898,2902,2902,2906,2906,2906,2908,2914,2925,2938,2945,2944,2940,2942,2944,
+2950,2959,2972,2981,2990,2997,3006,3010,3011,3010,3011,3010,3002,2993,2983,2971,2956,2941,2925,2911,
+2897,2887,2878,2871,2867,2866,2863,2856,2841,2828,2812,2790,2769,2751,2736,2725,2718,2715,2711,2703,
+2693,2687,2681,2676,2669,2666,2664,2661,2657,2651,2636,2623,2610,2597,2583,2567,2547,2526,2508,2489,
+2467,2444,2423,2403,2383,2362,2343,2326,2309,2297,2284,2275,2266,2261,2254,2250,2244,2235,2226,2217,
+2205,2186,2166,2143,2124,2105,2083,2060,2036,2011,1984,1955,1927,1893,1859,1822,1787,1749,1712,1675,
+1641,1612,1590,1574,1560,1552,1539,1518,1490,1457,1423,1395,1372,1350,1326,1300,1274,1247,1221,1197,
+1174,1154,1132,1105,1081,1053,1029,997,969,937,904,868,834,797,761,727,691,657,626,596,
+567,539,515,493,472,457,434,407,382,363,346,334,318,304,283,263,235,200,151,97,
+52,17,-8,-31,-53,-77,-105,-123,-122,-128,-134,-130,-153,-195,-234,-289,-346,-399,-451,-493,
+-527,-574,-646,-715,-774,-831,-885,-932,-951,-953,-959,-967,-986,-1017,-1054,-1100,-1146,-1182,-1201,-1209,
+-1216,-1228,-1246,-1263,-1289,-1326,-1380,-1431,-1487,-1544,-1608,-1668,-1724,-1776,-1828,-1876,-1916,-1951,-1982,-2005,
+-2020,-2035,-2048,-2061,-2079,-2108,-2144,-2179,-2205,-2222,-2232,-2238,-2242,-2244,-2248,-2250,-2264,-2273,-2279,-2287,
+-2303,-2330,-2367,-2412,-2462,-2511,-2558,-2604,-2651,-2693,-2731,-2768,-2806,-2843,-2879,-2916,-2952,-2982,-3013,-3041,
+-3069,-3102,-3134,-3165,-3188,-3208,-3229,-3256,-3274,-3290,-3306,-3326,-3349,-3372,-3393,-3412,-3431,-3449,-3472,-3495,
+-3515,-3535,-3555,-3575,-3595,-3618,-3643,-3671,-3697,-3721,-3743,-3767,-3796,-3827,-3854,-3875,-3900,-3920,-3935,-3951,
+-3963,-3977,-3992,-4006,-4020,-4032,-4043,-4053,-4056,-4052,-4055,-4062,-4066,-4068,-4067,-4068,-4067,-4065,-4061,-4059,
+-4055,-4047,-4041,-4035,-4026,-4018,-4012,-4008,-3999,-3999,-4002,-4009,-4024,-4046,-4063,-4079,-4094,-4110,-4129,-4151,
+-4167,-4169,-4165,-4168,-4184,-4210,-4238,-4261,-4277,-4289,-4299,-4300,-4292,-4287,-4273,-4251,-4234,-4222,-4198,-4176,
+-4168,-4165,-4163,-4154,-4147,-4152,-4154,-4156,-4152,-4146,-4140,-4134,-4127,-4120,-4111,-4110,-4113,-4109,-4100,-4076,
+-4070,-4091,-4090,-4085,-4077,-4061,-4055,-4046,-4034,-4011,-3984,-3970,-3957,-3959,-3965,-3972,-3981,-3994,-4008,-4026,
+-4041,-4048,-4055,-4059,-4047,-4019,-4002,-3996,-4002,-4006,-4010,-4017,-4029,-4042,-4054,-4063,-4075,-4089,-4100,-4115,
+-4131,-4145,-4163,-4181,-4197,-4212,-4224,-4237,-4249,-4271,-4298,-4312,-4325,-4343,-4353,-4365,-4381,-4405,-4418,-4432,
+-4452,-4473,-4499,-4519,-4535,-4544,-4545,-4550,-4567,-4590,-4595,-4580,-4584,-4612,-4641,-4642,-4640,-4645,-4651,-4636,
+-4646,-4686,-4694,-4685,-4696,-4715,-4719,-4713,-4753,-4779,-4813,-4849,-4882,-4880,-4880,-4904,-4913,-4915,-4920,-4930,
+-4929,-4957,-5014,-5037,-5027,-5027,-5032,-5031,-5034,-5034,-5029,-5023,-5037,-5054,-5054,-5051,-5057,-5051,-5043,-5038,
+-5039,-5034,-5028,-5011,-5004,-4995,-4990,-4993,-4988,-4975,-4966,-4947,-4943,-4938,-4939,-4931,-4925,-4923,-4926,-4925,
+-4920,-4909,-4902,-4901,-4898,-4894,-4892,-4878,-4864,-4849,-4835,-4825,-4816,-4803,-4799,-4796,-4786,-4774,-4767,-4761,
+-4747,-4734,-4715,-4704,-4697,-4695,-4694,-4697,-4696,-4683,-4673,-4664,-4657,-4655,-4652,-4647,-4642,-4632,-4626,-4625,
+-4618,-4610,-4606,-4600,-4594,-4580,-4556,-4548,-4555,-4549,-4539,-4530,-4522,-4514,-4505,-4499,-4486,-4476,-4465,-4453,
+-4448,-4448,-4452,-4456,-4451,-4433,-4424,-4421,-4419,-4408,-4399,-4399,-4395,-4381,-4363,-4354,-4345,-4336,-4321,-4302,
+-4290,-4282,-4269,-4259,-4252,-4260,-4247,-4232,-4229,-4230,-4230,-4226,-4221,-4210,-4197,-4194,-4185,-4185,-4177,-4150,
+-4142,-4142,-4145,-4156,-4150,-4141,-4136,-4127,-4117,-4108,-4096,-4083,-4076,-4074,-4061,-4044,-4031,-4018,-4009,-3999,
+-3990,-3986,-3990,-3988,-3986,-3976,-3971,-3961,-3957,-3952,-3950,-3949,-3943,-3931,-3915,-3909,-3897,-3883,-3879,-3884,
+-3883,-3879,-3883,-3893,-3889,-3875,-3871,-3870,-3865,-3865,-3865,-3861,-3841,-3812,-3805,-3808,-3804,-3783,-3780,-3778,
+-3774,-3774,-3763,-3742,-3721,-3717,-3708,-3702,-3695,-3683,-3668,-3641,-3612,-3598,-3590,-3579,-3559,-3536,-3525,-3518,
+-3515,-3514,-3499,-3478,-3466,-3452,-3438,-3428,-3415,-3398,-3383,-3370,-3360,-3349,-3340,-3330,-3318,-3306,-3292,-3276,
+-3261,-3246,-3229,-3213,-3198,-3181,-3167,-3154,-3141,-3128,-3115,-3104,-3094,-3084,-3075,-3064,-3051,-3040,-3027,-3012,
+-2998,-2985,-2973,-2959,-2945,-2935,-2929,-2924,-2917,-2913,-2908,-2905,-2901,-2894,-2881,-2861,-2849,-2840,-2831,-2823,
+-2816,-2806,-2796,-2785,-2772,-2756,-2741,-2726,-2713,-2700,-2688,-2678,-2668,-2657,-2649,-2638,-2628,-2616,-2600,-2588,
+-2578,-2568,-2556,-2545,-2533,-2520,-2507,-2495,-2482,-2471,-2459,-2445,-2433,-2419,-2405,-2393,-2382,-2370,-2360,-2348,
+-2334,-2320,-2305,-2291,-2279,-2267,-2256,-2247,-2238,-2232,-2223,-2214,-2205,-2194,-2181,-2166,-2150,-2133,-2116,-2099,
+-2083,-2068,-2054,-2040,-2025,-2011,-1995,-1980,-1963,-1944,-1925,-1904,-1882,-1857,-1836,-1816,-1793,-1770,-1747,-1722,
+-1697,-1675,-1655,-1637,-1624,-1616,-1605,-1592,-1581,-1569,-1546,-1512,-1481,-1439,-1428,-1410,-1392,-1373,-1355,-1341,
+-1328,-1314,-1297,-1281,-1266,-1250,-1235,-1219,-1207,-1193,-1182,-1171,-1159,-1143,-1128,-1110,-1089,-1065,-1040,-1016,
+-991,-966,-941,-919,-892,-862,-834,-799,-767,-738,-711,-685,-652,-626,-597,-564,-533,-504,-489,-468,
+-429,-386,-333,-287,-253,-211,-173,-143,-108,-78,-54,-25,9,40,69,104,141,178,213,237,
+256,284,317,345,372,401,430,460,491,522,555,587,619,649,680,713,742,774,810,850,
+886,918,951,980,1008,1042,1076,1108,1136,1163,1206,1265,1348,1435,1503,1551,1580,1614,1645,1671,
+1693,1719,1754,1792,1821,1851,1876,1898,1918,1955,1974,2016,2065,2104,2131,2153,2177,2195,2212,2222,
+2227,2227,2231,2231,2225,2218,2209,2197,2182,2167,2152,2139,2133,2122,2110,2104,2118,2128,2120,2105,
+2086,2066,2045,2021,1985,1950,1926,1898,1851,1794,1744,1705,1682,1672,1671,1681,1696,1720,1756,1790,
+1818,1826,1812,1801,1794,1796,1800,1798,1798,1791,1787,1779,1765,1759,1763,1772,1781,1785,1783,1775,
+1766,1752,1744,1740,1734,1727,1721,1717,1718,1717,1716,1713,1710,1702,1692,1682,1675,1672,1666,1658,
+1655,1648,1635,1635,1632,1623,1620,1624,1625,1626,1613,1598,1585,1572,1561,1563,1559,1551,1546,1538,
+1533,1528,1523,1523,1528,1532,1539,1554,1563,1560,1547,1531,1518,1505,1492,1479,1475,1482,1490,1487,
+1474,1449,1423,1401,1384,1368,1352,1337,1327,1322,1318,1306,1299,1295,1290,1292,1302,1319,1338,1344,
+1324,1312,1295,1271,1241,1218,1204,1198,1196,1205,1225,1234,1222,1206,1190,1169,1140,1120,1109,1103,
+1099,1096,1091,1084,1079,1072,1073,1073,1071,1060,1044,1042,1041,1038,1035,1034,1039,1045,1045,1046,
+1041,1027,1018,1012,1014,1018,1016,1015,1011,1005,1003,1006,1007,1001,994,983,978,981,986,991,
+1001,1014,1028,1042,1055,1068,1080,1090,1096,1100,1099,1096,1105,1120,1129,1130,1124,1117,1112,1113,
+1121,1132,1139,1147,1159,1171,1186,1202,1217,1233,1257,1275,1287,1299,1313,1329,1342,1349,1369,1390,
+1417,1447,1484,1524,1568,1616,1650,1667,1678,1695,1712,1719,1726,1736,1749,1764,1772,1766,1764,1764,
+1766,1766,1769,1772,1772,1773,1773,1774,1780,1784,1789,1794,1798,1803,1810,1820,1835,1846,1846,1850,
+1861,1876,1890,1899,1911,1929,1947,1961,1973,1981,1987,1996,2002,2011,2021,2027,2040,2047,2051,2057,
+2067,2079,2090,2097,2093,2073,2048,2028,2026,2032,2004,1979,1972,1973,1983,1998,2011,2025,2030,2028,
+2027,2036,2053,2063,2067,2073,2080,2087,2094,2100,2106,2109,2117,2124,2128,2132,2136,2141,2147,2153,
+2161,2167,2173,2179,2183,2188,2197,2208,2219,2232,2243,2253,2260,2269,2282,2288,2295,2308,2309,2307,
+2309,2314,2310,2299,2293,2291,2292,2300,2308,2308,2327,2356,2383,2412,2451,2486,2518,2548,2575,2597,
+2615,2627,2649,2671,2692,2706,2717,2731,2747,2762,2777,2792,2806,2817,2828,2842,2855,2869,2882,2897,
+2915,2935,2945,2951,2956,2958,2957,2953,2948,2943,2938,2937,2936,2933,2932,2927,2923,2922,2922,2924,
+2929,2939,2951,2967,2983,2995,2996,2983,2973,2964,2950,2933,2918,2907,2897,2898,2904,2910,2916,2920,
+2926,2925,2924,2927,2931,2932,2934,2933,2927,2917,2914,2911,2909,2915,2928,2939,2943,2941,2936,2936,
+2939,2945,2953,2962,2972,2980,2991,3000,3003,3006,3007,3005,3000,2994,2983,2970,2953,2935,2918,2900,
+2884,2872,2863,2856,2851,2848,2849,2845,2832,2816,2802,2790,2775,2755,2738,2724,2712,2703,2699,2691,
+2680,2673,2666,2663,2659,2655,2652,2653,2651,2653,2645,2635,2622,2607,2593,2575,2554,2536,2518,2500,
+2479,2457,2432,2407,2382,2359,2334,2312,2293,2276,2261,2247,2234,2225,2220,2215,2211,2206,2198,2188,
+2180,2171,2153,2136,2116,2099,2074,2052,2029,2005,1983,1955,1928,1896,1864,1830,1796,1761,1732,1700,
+1670,1640,1613,1590,1569,1551,1534,1513,1496,1475,1454,1430,1408,1385,1366,1345,1318,1292,1269,1243,
+1219,1194,1170,1147,1121,1093,1067,1035,1004,974,944,916,878,838,798,759,718,676,642,610,
+583,557,530,505,484,465,450,437,416,397,376,352,331,315,302,289,282,277,270,244,
+200,152,112,77,44,24,2,-18,-31,-35,-40,-38,-27,-33,-59,-79,-100,-140,-200,-279,
+-362,-438,-521,-613,-699,-772,-831,-857,-870,-886,-910,-939,-964,-990,-1019,-1058,-1093,-1119,-1136,-1149,
+-1159,-1167,-1183,-1210,-1249,-1294,-1353,-1415,-1473,-1529,-1586,-1645,-1703,-1752,-1797,-1837,-1876,-1911,-1943,-1970,
+-1990,-2003,-2009,-2012,-2018,-2030,-2061,-2104,-2141,-2168,-2183,-2196,-2207,-2212,-2212,-2209,-2208,-2216,-2226,-2237,
+-2254,-2284,-2320,-2360,-2407,-2457,-2509,-2561,-2611,-2654,-2693,-2727,-2764,-2807,-2850,-2886,-2921,-2955,-2988,-3020,
+-3048,-3071,-3100,-3133,-3164,-3190,-3211,-3235,-3253,-3272,-3290,-3310,-3337,-3365,-3394,-3418,-3444,-3474,-3504,-3529,
+-3554,-3573,-3591,-3609,-3630,-3655,-3675,-3695,-3713,-3733,-3754,-3773,-3790,-3807,-3827,-3844,-3861,-3883,-3902,-3920,
+-3933,-3937,-3947,-3960,-3977,-3992,-4007,-4024,-4037,-4043,-4050,-4057,-4067,-4074,-4080,-4086,-4089,-4092,-4092,-4094,
+-4093,-4091,-4082,-4076,-4067,-4060,-4055,-4056,-4060,-4060,-4062,-4064,-4071,-4080,-4086,-4096,-4107,-4124,-4138,-4155,
+-4173,-4188,-4197,-4215,-4244,-4278,-4313,-4350,-4373,-4383,-4390,-4395,-4399,-4398,-4393,-4380,-4361,-4348,-4330,-4301,
+-4276,-4261,-4252,-4255,-4253,-4246,-4242,-4241,-4236,-4235,-4231,-4226,-4216,-4207,-4203,-4201,-4195,-4193,-4192,-4188,
+-4177,-4168,-4167,-4180,-4165,-4144,-4135,-4123,-4122,-4120,-4113,-4089,-4064,-4051,-4046,-4046,-4049,-4054,-4062,-4074,
+-4077,-4093,-4105,-4103,-4125,-4142,-4139,-4119,-4096,-4085,-4084,-4097,-4095,-4098,-4106,-4116,-4130,-4143,-4154,-4169,
+-4181,-4198,-4214,-4227,-4240,-4256,-4276,-4289,-4303,-4318,-4343,-4362,-4373,-4384,-4400,-4418,-4433,-4446,-4454,-4468,
+-4495,-4513,-4526,-4542,-4556,-4577,-4601,-4619,-4634,-4652,-4667,-4674,-4679,-4686,-4699,-4712,-4709,-4718,-4736,-4744,
+-4740,-4739,-4747,-4757,-4763,-4775,-4782,-4786,-4794,-4802,-4826,-4854,-4848,-4866,-4897,-4934,-4915,-4920,-4944,-4931,
+-4926,-4947,-4968,-5008,-5015,-5016,-5022,-5032,-5049,-5066,-5061,-5053,-5053,-5050,-5043,-5032,-5033,-5046,-5068,-5078,
+-5070,-5055,-5050,-5051,-5029,-5022,-5029,-5027,-5021,-5013,-5003,-4999,-4996,-4999,-4994,-4977,-4965,-4966,-4962,-4957,
+-4952,-4947,-4943,-4935,-4925,-4920,-4917,-4918,-4920,-4917,-4916,-4901,-4881,-4865,-4854,-4849,-4842,-4833,-4823,-4811,
+-4800,-4790,-4780,-4773,-4769,-4764,-4760,-4751,-4743,-4739,-4735,-4731,-4728,-4720,-4712,-4708,-4702,-4696,-4689,-4684,
+-4676,-4666,-4670,-4667,-4662,-4660,-4667,-4666,-4662,-4646,-4619,-4612,-4610,-4606,-4599,-4583,-4571,-4565,-4554,-4543,
+-4532,-4524,-4513,-4507,-4499,-4498,-4494,-4493,-4490,-4483,-4478,-4481,-4478,-4471,-4463,-4443,-4429,-4427,-4422,-4415,
+-4402,-4388,-4372,-4358,-4337,-4319,-4318,-4330,-4317,-4312,-4305,-4299,-4297,-4293,-4286,-4276,-4263,-4247,-4234,-4241,
+-4239,-4224,-4208,-4203,-4186,-4167,-4163,-4184,-4191,-4189,-4181,-4176,-4162,-4148,-4142,-4136,-4119,-4099,-4086,-4073,
+-4056,-4035,-4022,-4020,-4030,-4045,-4052,-4049,-4038,-4031,-4021,-4019,-4008,-4003,-4003,-4003,-3994,-3978,-3959,-3939,
+-3927,-3921,-3917,-3912,-3910,-3911,-3920,-3928,-3931,-3922,-3911,-3907,-3908,-3898,-3896,-3890,-3874,-3877,-3865,-3837,
+-3813,-3801,-3801,-3799,-3799,-3792,-3781,-3769,-3751,-3730,-3712,-3701,-3689,-3677,-3667,-3658,-3645,-3631,-3606,-3581,
+-3571,-3558,-3548,-3541,-3526,-3505,-3487,-3474,-3465,-3453,-3437,-3422,-3404,-3392,-3381,-3368,-3356,-3347,-3334,-3321,
+-3307,-3291,-3275,-3259,-3244,-3229,-3214,-3201,-3189,-3176,-3163,-3153,-3143,-3135,-3124,-3114,-3103,-3092,-3080,-3067,
+-3053,-3039,-3025,-3011,-2998,-2983,-2970,-2957,-2947,-2939,-2933,-2928,-2924,-2920,-2918,-2914,-2908,-2898,-2881,-2862,
+-2847,-2837,-2829,-2823,-2814,-2805,-2795,-2781,-2764,-2747,-2732,-2720,-2709,-2699,-2687,-2675,-2664,-2650,-2638,-2623,
+-2610,-2597,-2584,-2573,-2563,-2553,-2542,-2531,-2521,-2507,-2496,-2483,-2471,-2456,-2442,-2428,-2416,-2403,-2391,-2377,
+-2363,-2352,-2339,-2327,-2314,-2303,-2291,-2281,-2273,-2265,-2256,-2248,-2239,-2229,-2217,-2203,-2189,-2174,-2160,-2145,
+-2131,-2117,-2103,-2086,-2071,-2054,-2040,-2024,-2008,-1992,-1974,-1959,-1945,-1927,-1907,-1882,-1857,-1832,-1806,-1778,
+-1753,-1730,-1710,-1694,-1680,-1672,-1664,-1659,-1653,-1640,-1614,-1580,-1532,-1495,-1455,-1437,-1425,-1411,-1393,-1375,
+-1357,-1339,-1327,-1313,-1298,-1282,-1264,-1249,-1234,-1220,-1207,-1195,-1182,-1167,-1151,-1134,-1115,-1093,-1070,-1047,
+-1022,-1001,-978,-952,-927,-900,-872,-845,-816,-779,-744,-714,-687,-655,-629,-601,-575,-546,-516,-487,
+-459,-423,-386,-344,-293,-244,-207,-176,-140,-105,-78,-52,-27,0,29,68,115,135,154,183,
+216,251,280,309,336,359,383,411,441,472,504,534,567,599,628,662,692,721,752,786,
+827,868,906,943,982,1015,1040,1068,1099,1132,1177,1262,1370,1427,1469,1501,1534,1564,1587,1621,
+1666,1704,1734,1764,1796,1830,1874,1911,1940,1965,1986,2020,2053,2083,2109,2129,2141,2155,2153,2148,
+2157,2170,2173,2168,2162,2153,2146,2135,2125,2114,2099,2079,2065,2054,2047,2045,2041,2032,2021,2004,
+1970,1917,1869,1832,1797,1758,1725,1699,1673,1648,1627,1612,1598,1589,1581,1578,1574,1576,1589,1615,
+1646,1665,1672,1671,1674,1680,1694,1708,1719,1726,1720,1718,1721,1724,1725,1719,1711,1704,1701,1697,
+1693,1686,1676,1668,1661,1659,1662,1666,1663,1659,1655,1655,1655,1655,1651,1641,1632,1629,1622,1607,
+1594,1586,1583,1583,1573,1567,1565,1558,1544,1535,1525,1520,1522,1521,1519,1508,1497,1489,1488,1482,
+1478,1486,1501,1500,1491,1492,1487,1476,1465,1459,1452,1443,1439,1443,1454,1455,1439,1419,1401,1385,
+1380,1385,1397,1396,1375,1353,1333,1310,1292,1274,1254,1243,1234,1230,1223,1225,1237,1245,1245,1244,
+1245,1246,1244,1233,1212,1188,1168,1154,1149,1151,1152,1150,1147,1143,1138,1136,1126,1116,1108,1092,
+1077,1066,1060,1059,1055,1051,1044,1037,1034,1032,1031,1031,1029,1020,1013,1008,1004,999,999,1002,
+1008,1009,1012,1012,1004,997,989,982,979,984,987,989,990,987,982,980,978,975,971,972,
+974,977,983,989,996,1004,1017,1038,1057,1066,1070,1077,1082,1084,1086,1091,1105,1120,1129,1127,
+1119,1119,1124,1133,1146,1158,1167,1178,1196,1213,1229,1250,1271,1285,1297,1310,1329,1349,1358,1387,
+1423,1459,1495,1535,1573,1611,1654,1686,1710,1724,1738,1750,1764,1770,1774,1776,1780,1776,1770,1755,
+1739,1733,1726,1722,1724,1730,1734,1742,1752,1767,1767,1763,1763,1774,1790,1786,1779,1793,1813,1833,
+1835,1845,1855,1867,1884,1905,1920,1928,1934,1940,1949,1964,1976,1985,1994,2002,2009,2020,2026,2034,
+2044,2053,2060,2058,2050,2028,1998,1980,1979,1967,1944,1935,1940,1946,1953,1962,1973,1981,1986,1985,
+1985,1996,2013,2020,2022,2026,2034,2041,2049,2057,2062,2068,2078,2084,2087,2090,2096,2100,2106,2112,
+2116,2122,2127,2134,2138,2143,2149,2159,2168,2179,2190,2201,2211,2224,2234,2241,2245,2256,2265,2264,
+2264,2264,2265,2263,2259,2257,2253,2245,2238,2237,2236,2254,2284,2310,2327,2357,2404,2449,2489,2521,
+2546,2565,2586,2608,2633,2650,2662,2677,2694,2712,2726,2741,2754,2767,2780,2792,2803,2814,2828,2844,
+2867,2888,2901,2912,2919,2927,2928,2924,2914,2907,2909,2912,2913,2910,2912,2909,2905,2905,2909,2911,
+2912,2910,2915,2928,2947,2967,2985,2998,3001,2990,2978,2968,2970,2976,2969,2962,2954,2968,2987,3005,
+3019,3028,3026,3019,3029,3041,3037,3017,2990,2971,2954,2944,2941,2945,2951,2955,2955,2950,2941,2939,
+2940,2942,2944,2950,2961,2970,2977,2983,2990,2995,2995,2995,2993,2986,2977,2964,2947,2928,2910,2894,
+2878,2863,2852,2844,2839,2837,2835,2835,2830,2815,2797,2779,2765,2753,2738,2723,2710,2697,2689,2681,
+2674,2667,2656,2650,2645,2641,2638,2638,2640,2644,2644,2642,2635,2620,2603,2585,2567,2546,2526,2504,
+2481,2457,2430,2403,2377,2351,2326,2302,2278,2255,2236,2215,2199,2187,2178,2174,2170,2167,2162,2154,
+2144,2135,2124,2111,2091,2072,2050,2029,2008,1986,1965,1942,1920,1894,1869,1839,1811,1782,1754,1728,
+1704,1679,1658,1636,1617,1599,1580,1561,1542,1527,1513,1498,1478,1453,1432,1409,1386,1356,1330,1302,
+1275,1249,1231,1211,1187,1158,1127,1098,1065,1028,993,959,921,881,835,791,748,710,667,633,
+607,583,561,537,512,490,469,451,436,419,398,378,354,332,320,309,306,305,311,319,
+323,325,314,295,267,243,212,184,177,175,164,156,137,118,96,74,60,52,37,5,
+-46,-136,-248,-371,-477,-567,-655,-729,-773,-806,-832,-856,-892,-943,-994,-1039,-1078,-1101,-1103,-1090,
+-1094,-1099,-1116,-1147,-1195,-1249,-1304,-1361,-1426,-1489,-1547,-1601,-1653,-1704,-1746,-1783,-1819,-1853,-1880,-1906,
+-1931,-1950,-1960,-1963,-1964,-1961,-1966,-1993,-2036,-2068,-2088,-2104,-2120,-2137,-2145,-2148,-2146,-2143,-2144,-2163,
+-2191,-2227,-2261,-2297,-2341,-2387,-2429,-2476,-2528,-2579,-2624,-2666,-2710,-2758,-2803,-2843,-2877,-2911,-2946,-2987,
+-3019,-3042,-3066,-3092,-3118,-3148,-3171,-3189,-3210,-3233,-3254,-3270,-3288,-3316,-3347,-3372,-3396,-3429,-3471,-3504,
+-3528,-3546,-3563,-3579,-3601,-3620,-3644,-3667,-3686,-3695,-3703,-3722,-3734,-3752,-3762,-3776,-3794,-3805,-3817,-3832,
+-3854,-3876,-3884,-3886,-3891,-3903,-3919,-3939,-3962,-3979,-3992,-4000,-4018,-4035,-4051,-4065,-4080,-4094,-4101,-4105,
+-4108,-4107,-4103,-4095,-4096,-4098,-4102,-4115,-4126,-4130,-4134,-4141,-4144,-4148,-4157,-4161,-4165,-4174,-4185,-4193,
+-4201,-4214,-4228,-4248,-4274,-4308,-4342,-4370,-4395,-4415,-4428,-4436,-4441,-4443,-4440,-4430,-4417,-4410,-4414,-4415,
+-4412,-4394,-4377,-4361,-4352,-4352,-4345,-4343,-4342,-4338,-4331,-4325,-4317,-4308,-4304,-4298,-4291,-4284,-4283,-4281,
+-4274,-4266,-4259,-4253,-4252,-4250,-4228,-4208,-4196,-4180,-4183,-4188,-4180,-4161,-4142,-4135,-4133,-4131,-4131,-4136,
+-4141,-4147,-4156,-4171,-4173,-4166,-4196,-4216,-4224,-4224,-4207,-4187,-4179,-4183,-4191,-4194,-4196,-4199,-4209,-4224,
+-4234,-4248,-4265,-4280,-4294,-4309,-4322,-4338,-4353,-4366,-4380,-4393,-4409,-4434,-4456,-4464,-4473,-4487,-4505,-4523,
+-4539,-4554,-4572,-4587,-4604,-4620,-4634,-4645,-4657,-4675,-4693,-4712,-4737,-4751,-4768,-4786,-4791,-4809,-4832,-4842,
+-4852,-4859,-4855,-4846,-4838,-4840,-4848,-4849,-4854,-4875,-4888,-4888,-4898,-4900,-4906,-4926,-4937,-4956,-4982,-4994,
+-5022,-5017,-4992,-4999,-5016,-5024,-5023,-5003,-5002,-5022,-5049,-5055,-5066,-5060,-5063,-5064,-5068,-5067,-5059,-5063,
+-5071,-5068,-5070,-5086,-5088,-5074,-5056,-5062,-5056,-5051,-5046,-5035,-5028,-5019,-5017,-5016,-5007,-5005,-5002,-4997,
+-4994,-4988,-4982,-4976,-4970,-4965,-4963,-4958,-4950,-4940,-4933,-4931,-4930,-4925,-4930,-4910,-4898,-4888,-4880,-4869,
+-4859,-4845,-4837,-4831,-4831,-4825,-4825,-4819,-4814,-4808,-4804,-4799,-4792,-4785,-4781,-4775,-4768,-4761,-4754,-4745,
+-4740,-4738,-4734,-4728,-4727,-4724,-4720,-4709,-4701,-4710,-4711,-4716,-4714,-4706,-4706,-4685,-4669,-4659,-4643,-4632,
+-4625,-4618,-4604,-4592,-4582,-4578,-4569,-4560,-4550,-4543,-4543,-4542,-4548,-4552,-4548,-4533,-4536,-4546,-4537,-4517,
+-4499,-4484,-4479,-4480,-4467,-4450,-4434,-4414,-4395,-4380,-4370,-4365,-4357,-4356,-4354,-4357,-4347,-4344,-4339,-4323,
+-4309,-4298,-4285,-4268,-4255,-4251,-4244,-4221,-4206,-4198,-4189,-4202,-4200,-4188,-4188,-4193,-4192,-4184,-4172,-4157,
+-4141,-4128,-4109,-4095,-4079,-4067,-4066,-4074,-4091,-4112,-4112,-4114,-4103,-4085,-4069,-4052,-4044,-4039,-4030,-4020,
+-4006,-3994,-3991,-3988,-3976,-3963,-3953,-3944,-3948,-3963,-3974,-3975,-3977,-3965,-3949,-3942,-3939,-3930,-3926,-3920,
+-3906,-3889,-3875,-3855,-3838,-3829,-3826,-3822,-3815,-3808,-3789,-3766,-3755,-3737,-3720,-3710,-3698,-3684,-3668,-3655,
+-3645,-3632,-3604,-3573,-3559,-3543,-3531,-3519,-3518,-3499,-3487,-3471,-3456,-3438,-3419,-3404,-3390,-3378,-3368,-3357,
+-3345,-3329,-3315,-3301,-3286,-3271,-3257,-3244,-3232,-3221,-3210,-3199,-3187,-3176,-3166,-3156,-3146,-3136,-3126,-3114,
+-3101,-3088,-3074,-3060,-3049,-3035,-3022,-3008,-2994,-2980,-2967,-2957,-2952,-2945,-2940,-2937,-2932,-2927,-2923,-2917,
+-2908,-2893,-2876,-2859,-2847,-2839,-2832,-2823,-2813,-2802,-2788,-2775,-2759,-2745,-2731,-2717,-2703,-2689,-2674,-2661,
+-2646,-2632,-2618,-2606,-2595,-2586,-2578,-2569,-2557,-2545,-2534,-2521,-2507,-2493,-2479,-2465,-2453,-2440,-2424,-2410,
+-2397,-2386,-2373,-2361,-2350,-2338,-2327,-2318,-2308,-2299,-2290,-2278,-2270,-2264,-2255,-2242,-2227,-2213,-2198,-2184,
+-2170,-2157,-2146,-2134,-2119,-2101,-2086,-2071,-2055,-2039,-2021,-2004,-1988,-1971,-1951,-1930,-1905,-1881,-1856,-1829,
+-1803,-1779,-1756,-1735,-1720,-1712,-1710,-1709,-1701,-1689,-1672,-1637,-1597,-1535,-1515,-1492,-1464,-1447,-1435,-1419,
+-1401,-1382,-1362,-1345,-1330,-1318,-1302,-1285,-1266,-1249,-1229,-1214,-1199,-1184,-1169,-1153,-1136,-1117,-1097,-1076,
+-1053,-1028,-1006,-984,-961,-936,-909,-877,-844,-814,-784,-756,-729,-700,-671,-640,-613,-588,-562,-528,
+-491,-451,-416,-379,-339,-295,-257,-216,-175,-147,-121,-99,-71,-38,-7,21,46,77,101,135,
+176,190,215,248,278,305,331,356,387,416,445,478,508,541,573,606,635,667,702,734,
+764,802,836,873,915,962,1002,1037,1073,1110,1173,1262,1328,1369,1410,1451,1484,1505,1544,1593,
+1636,1674,1715,1757,1796,1831,1863,1897,1934,1961,1984,2003,2029,2051,2073,2075,2052,2066,2074,2098,
+2106,2104,2102,2096,2090,2083,2068,2049,2048,2050,2039,2028,2015,2002,1989,1983,1979,1974,1971,1955,
+1917,1854,1778,1710,1649,1599,1560,1531,1508,1490,1475,1466,1458,1454,1450,1453,1458,1465,1476,1488,
+1501,1524,1554,1577,1582,1582,1579,1575,1580,1589,1604,1615,1622,1637,1650,1654,1658,1659,1654,1646,
+1640,1635,1628,1621,1612,1605,1603,1602,1601,1597,1594,1595,1592,1584,1583,1581,1575,1566,1559,1555,
+1553,1555,1550,1547,1543,1545,1540,1531,1513,1495,1486,1484,1485,1493,1508,1509,1499,1474,1457,1449,
+1445,1443,1438,1431,1417,1401,1392,1390,1394,1401,1405,1404,1392,1372,1355,1345,1342,1343,1345,1343,
+1332,1314,1301,1293,1292,1295,1293,1286,1273,1252,1227,1205,1196,1194,1183,1181,1194,1208,1198,1190,
+1188,1173,1159,1152,1148,1143,1135,1123,1111,1099,1092,1086,1084,1083,1083,1082,1074,1068,1061,1056,
+1053,1049,1046,1043,1036,1028,1020,1011,999,989,984,984,987,996,999,999,996,990,978,973,
+971,966,968,971,970,969,966,968,972,964,953,950,954,959,960,958,959,963,967,967,
+966,969,973,977,984,992,995,997,1001,1016,1036,1053,1063,1068,1069,1077,1083,1086,1091,1100,
+1110,1120,1125,1133,1140,1145,1152,1163,1175,1190,1205,1222,1244,1265,1277,1293,1311,1332,1358,1377,
+1417,1455,1493,1533,1577,1613,1642,1671,1703,1733,1755,1767,1779,1785,1787,1784,1781,1782,1778,1764,
+1753,1745,1744,1750,1757,1753,1753,1755,1738,1718,1716,1720,1728,1728,1730,1746,1763,1758,1763,1802,
+1830,1824,1825,1837,1858,1878,1894,1901,1905,1911,1921,1934,1954,1962,1974,1980,1988,1996,2005,2012,
+2020,2030,2033,2027,2013,1994,1974,1950,1924,1914,1912,1914,1920,1930,1936,1937,1943,1949,1950,1948,
+1948,1955,1969,1977,1980,1982,1989,1996,2003,2007,2012,2023,2034,2042,2045,2050,2054,2058,2061,2067,
+2072,2078,2083,2086,2091,2093,2100,2108,2118,2126,2134,2143,2152,2163,2179,2187,2198,2209,2217,2222,
+2223,2221,2217,2218,2219,2218,2213,2196,2172,2152,2140,2155,2191,2233,2249,2243,2261,2312,2370,2419,
+2459,2493,2522,2543,2568,2592,2608,2622,2636,2657,2672,2687,2699,2711,2723,2735,2746,2756,2765,2778,
+2799,2825,2844,2863,2880,2890,2892,2891,2886,2879,2876,2877,2877,2875,2875,2881,2882,2880,2886,2895,
+2905,2908,2912,2914,2921,2936,2957,2988,3021,3043,3039,3021,3007,3005,3013,3028,3033,3027,3018,3021,
+3037,3057,3080,3095,3103,3120,3131,3121,3086,3044,3020,3012,3012,3015,3010,3009,3007,2998,2980,2969,
+2963,2964,2960,2960,2967,2967,2964,2964,2968,2973,2977,2974,2973,2970,2966,2953,2938,2917,2899,2876,
+2857,2841,2826,2817,2808,2803,2804,2808,2806,2806,2800,2790,2778,2764,2749,2734,2715,2698,2680,2665,
+2653,2645,2635,2627,2624,2623,2621,2619,2622,2622,2625,2625,2621,2611,2597,2586,2573,2555,2530,2502,
+2475,2449,2422,2397,2367,2341,2312,2285,2258,2230,2206,2179,2160,2145,2134,2125,2117,2115,2115,2111,
+2104,2097,2084,2076,2062,2042,2018,2000,1983,1964,1947,1928,1912,1892,1872,1849,1823,1795,1767,1745,
+1725,1705,1681,1658,1640,1626,1609,1592,1580,1570,1555,1539,1523,1506,1487,1467,1442,1414,1385,1357,
+1331,1303,1277,1256,1230,1200,1168,1138,1109,1076,1032,993,954,915,873,829,787,745,705,669,
+638,612,589,568,543,520,495,471,455,440,426,406,389,375,361,351,350,354,363,383,
+409,447,466,463,443,408,368,321,277,248,226,196,173,156,133,107,77,54,43,42,
+28,5,-35,-94,-183,-302,-418,-526,-609,-674,-726,-776,-809,-838,-882,-936,-996,-1045,-1067,-1074,
+-1070,-1058,-1062,-1095,-1146,-1191,-1231,-1280,-1343,-1409,-1467,-1518,-1566,-1614,-1660,-1699,-1734,-1772,-1803,-1827,
+-1848,-1872,-1900,-1921,-1932,-1929,-1923,-1918,-1926,-1953,-1977,-1994,-2005,-2027,-2045,-2051,-2055,-2057,-2066,-2088,
+-2121,-2154,-2190,-2223,-2258,-2292,-2334,-2388,-2441,-2488,-2537,-2589,-2640,-2689,-2736,-2782,-2823,-2857,-2891,-2932,
+-2972,-3004,-3031,-3051,-3067,-3091,-3117,-3138,-3154,-3163,-3176,-3195,-3219,-3241,-3259,-3286,-3314,-3332,-3365,-3409,
+-3447,-3475,-3496,-3509,-3523,-3537,-3551,-3572,-3598,-3615,-3630,-3640,-3647,-3655,-3664,-3677,-3690,-3700,-3710,-3714,
+-3718,-3730,-3758,-3787,-3813,-3821,-3820,-3817,-3825,-3856,-3888,-3902,-3921,-3940,-3957,-3981,-4009,-4040,-4067,-4090,
+-4107,-4121,-4130,-4127,-4127,-4143,-4162,-4180,-4195,-4201,-4207,-4220,-4228,-4229,-4238,-4246,-4255,-4259,-4262,-4268,
+-4277,-4282,-4285,-4297,-4312,-4328,-4344,-4364,-4385,-4407,-4423,-4435,-4444,-4443,-4442,-4446,-4451,-4455,-4461,-4467,
+-4475,-4474,-4466,-4451,-4438,-4433,-4439,-4449,-4461,-4467,-4462,-4452,-4439,-4422,-4412,-4404,-4397,-4390,-4383,-4378,
+-4373,-4368,-4363,-4356,-4344,-4335,-4335,-4324,-4283,-4264,-4259,-4251,-4267,-4273,-4266,-4241,-4217,-4210,-4211,-4210,
+-4212,-4217,-4219,-4220,-4228,-4241,-4242,-4238,-4258,-4283,-4302,-4306,-4288,-4267,-4263,-4270,-4272,-4275,-4281,-4286,
+-4293,-4303,-4318,-4329,-4345,-4361,-4380,-4396,-4411,-4427,-4440,-4451,-4463,-4473,-4481,-4499,-4523,-4539,-4553,-4565,
+-4578,-4593,-4609,-4623,-4642,-4664,-4685,-4700,-4716,-4728,-4736,-4746,-4762,-4785,-4801,-4814,-4829,-4846,-4864,-4886,
+-4908,-4927,-4950,-4966,-4970,-4959,-4943,-4944,-4942,-4934,-4935,-4960,-4986,-4980,-4976,-4980,-4981,-4992,-4997,-5010,
+-5029,-5047,-5047,-5058,-5054,-5078,-5099,-5077,-5071,-5046,-5037,-5062,-5077,-5066,-5063,-5074,-5098,-5112,-5108,-5090,
+-5084,-5086,-5092,-5085,-5079,-5078,-5094,-5111,-5111,-5085,-5068,-5070,-5065,-5064,-5059,-5051,-5049,-5041,-5034,-5032,
+-5032,-5028,-5023,-5019,-5015,-5014,-5008,-5000,-4993,-4985,-4982,-4978,-4974,-4966,-4949,-4962,-4971,-4958,-4935,-4922,
+-4909,-4901,-4898,-4894,-4887,-4883,-4881,-4877,-4874,-4871,-4868,-4861,-4857,-4850,-4845,-4838,-4833,-4829,-4823,-4815,
+-4807,-4801,-4795,-4790,-4786,-4783,-4784,-4786,-4786,-4785,-4774,-4770,-4778,-4756,-4733,-4733,-4750,-4765,-4755,-4735,
+-4725,-4718,-4706,-4695,-4686,-4670,-4649,-4641,-4633,-4620,-4612,-4610,-4609,-4606,-4603,-4596,-4588,-4576,-4568,-4563,
+-4574,-4588,-4592,-4587,-4572,-4552,-4539,-4528,-4520,-4511,-4498,-4485,-4470,-4455,-4442,-4427,-4422,-4422,-4420,-4418,
+-4412,-4400,-4384,-4373,-4360,-4336,-4321,-4318,-4321,-4307,-4289,-4290,-4299,-4288,-4266,-4245,-4231,-4215,-4206,-4215,
+-4212,-4201,-4196,-4192,-4183,-4169,-4154,-4142,-4129,-4129,-4146,-4157,-4145,-4140,-4135,-4122,-4115,-4113,-4104,-4090,
+-4077,-4063,-4051,-4041,-4026,-4022,-4022,-4022,-4012,-3999,-3989,-3975,-3973,-3988,-4009,-4016,-4011,-3996,-3980,-3973,
+-3970,-3976,-3975,-3963,-3937,-3904,-3870,-3847,-3841,-3844,-3848,-3842,-3830,-3812,-3788,-3775,-3765,-3749,-3740,-3729,
+-3710,-3692,-3674,-3656,-3634,-3614,-3595,-3571,-3556,-3548,-3537,-3519,-3499,-3483,-3467,-3451,-3432,-3414,-3399,-3388,
+-3378,-3368,-3355,-3340,-3325,-3312,-3299,-3285,-3271,-3260,-3251,-3241,-3231,-3219,-3208,-3196,-3182,-3170,-3160,-3150,
+-3141,-3129,-3117,-3103,-3090,-3077,-3066,-3055,-3042,-3028,-3015,-3003,-2990,-2979,-2971,-2964,-2958,-2955,-2949,-2945,
+-2940,-2933,-2928,-2922,-2915,-2903,-2882,-2862,-2847,-2837,-2829,-2819,-2802,-2793,-2783,-2766,-2748,-2732,-2715,-2697,
+-2682,-2668,-2654,-2642,-2630,-2618,-2608,-2600,-2591,-2582,-2572,-2560,-2546,-2531,-2515,-2501,-2487,-2474,-2461,-2448,
+-2435,-2421,-2410,-2397,-2386,-2373,-2363,-2354,-2345,-2333,-2323,-2310,-2298,-2288,-2280,-2270,-2260,-2251,-2237,-2222,
+-2206,-2192,-2181,-2172,-2160,-2148,-2133,-2119,-2104,-2089,-2073,-2057,-2040,-2022,-2000,-1980,-1957,-1934,-1908,-1880,
+-1852,-1825,-1799,-1775,-1755,-1738,-1730,-1727,-1725,-1722,-1708,-1679,-1631,-1576,-1551,-1531,-1520,-1502,-1479,-1467,
+-1450,-1428,-1409,-1390,-1371,-1354,-1338,-1324,-1307,-1287,-1267,-1245,-1224,-1206,-1191,-1174,-1156,-1139,-1121,-1102,
+-1083,-1063,-1043,-1018,-994,-970,-944,-916,-886,-856,-828,-800,-770,-740,-710,-682,-654,-626,-595,-562,
+-524,-496,-468,-440,-407,-367,-320,-275,-241,-208,-174,-144,-117,-91,-64,-31,-2,22,48,72,
+99,126,150,177,206,239,272,304,336,367,397,426,458,489,518,546,583,620,653,686,
+724,759,790,822,864,908,959,1026,1113,1169,1208,1250,1289,1333,1385,1429,1435,1452,1492,1536,
+1586,1635,1680,1725,1768,1805,1846,1878,1908,1937,1960,1978,1994,2011,2008,2012,2011,2020,2034,2032,
+2028,2024,2018,2012,2005,1998,1991,1985,1980,1975,1968,1961,1953,1945,1939,1936,1932,1932,1926,1918,
+1898,1855,1781,1703,1627,1559,1504,1465,1435,1411,1393,1382,1374,1369,1363,1362,1365,1368,1375,1389,
+1408,1427,1449,1473,1494,1516,1533,1548,1551,1558,1571,1580,1577,1571,1562,1553,1555,1559,1564,1570,
+1574,1567,1560,1556,1559,1564,1556,1547,1539,1531,1525,1518,1514,1515,1522,1528,1527,1525,1520,1513,
+1508,1506,1504,1498,1483,1480,1494,1511,1511,1499,1485,1474,1465,1451,1440,1431,1432,1433,1432,1430,
+1430,1417,1406,1390,1366,1353,1347,1337,1326,1319,1315,1308,1304,1300,1300,1308,1309,1299,1282,1271,
+1269,1270,1269,1254,1245,1238,1228,1222,1220,1220,1216,1199,1178,1161,1152,1151,1164,1171,1159,1147,
+1138,1123,1108,1100,1095,1093,1092,1090,1087,1080,1073,1068,1062,1056,1046,1038,1034,1030,1023,1019,
+1012,1005,1000,995,986,978,973,971,971,966,965,964,957,948,945,946,951,956,958,959,
+959,953,948,947,942,936,933,931,930,929,927,925,922,923,923,924,928,933,936,940,
+942,944,949,957,964,970,978,981,985,989,995,1003,1019,1040,1049,1053,1058,1067,1072,1080,
+1085,1088,1096,1107,1118,1128,1136,1146,1153,1168,1182,1197,1215,1237,1254,1269,1287,1310,1339,1377,
+1380,1422,1464,1505,1545,1581,1613,1643,1673,1704,1730,1746,1753,1756,1755,1754,1756,1757,1758,1755,
+1762,1787,1803,1806,1823,1820,1790,1751,1720,1703,1691,1688,1687,1689,1689,1691,1697,1706,1722,1733,
+1750,1776,1796,1810,1824,1835,1849,1863,1873,1882,1891,1902,1914,1934,1952,1965,1973,1981,1985,1989,
+1993,1996,1996,1986,1975,1958,1934,1907,1885,1877,1881,1892,1901,1908,1916,1919,1922,1924,1925,1918,
+1916,1922,1930,1935,1940,1945,1951,1956,1961,1966,1968,1975,1986,1997,2000,2005,2010,2013,2016,2018,
+2024,2027,2031,2037,2041,2045,2048,2058,2067,2073,2080,2087,2096,2107,2115,2127,2139,2154,2163,2172,
+2177,2179,2177,2175,2175,2171,2163,2147,2120,2090,2068,2076,2107,2162,2219,2285,2313,2328,2329,2328,
+2357,2405,2453,2487,2510,2532,2552,2568,2581,2599,2618,2633,2644,2655,2665,2675,2682,2692,2701,2711,
+2729,2749,2767,2783,2803,2823,2843,2853,2855,2851,2844,2842,2842,2838,2834,2832,2836,2838,2844,2854,
+2871,2892,2912,2926,2936,2947,2956,2965,2992,3017,3042,3064,3075,3062,3051,3049,3050,3060,3080,3086,
+3079,3073,3070,3079,3099,3118,3141,3159,3140,3098,3062,3052,3059,3076,3093,3099,3099,3090,3071,3045,
+3022,3016,3019,3017,3018,3019,3005,2991,2984,2980,2974,2962,2955,2951,2949,2941,2929,2907,2883,2860,
+2838,2817,2795,2777,2763,2754,2746,2743,2741,2743,2746,2751,2760,2764,2763,2754,2740,2723,2705,2687,
+2666,2646,2627,2605,2591,2585,2586,2591,2596,2600,2603,2605,2598,2590,2582,2571,2562,2547,2523,2493,
+2462,2431,2402,2374,2345,2316,2284,2253,2225,2199,2173,2149,2127,2108,2095,2085,2076,2070,2068,2064,
+2060,2055,2046,2035,2023,2006,1988,1970,1953,1938,1922,1905,1890,1874,1855,1839,1820,1798,1765,1731,
+1708,1689,1666,1643,1619,1601,1588,1576,1561,1551,1541,1529,1515,1503,1488,1470,1446,1424,1398,1373,
+1347,1322,1299,1273,1241,1211,1183,1160,1134,1105,1065,1024,985,948,913,876,837,797,757,718,
+685,654,626,603,582,562,540,519,495,478,466,458,452,446,437,433,433,429,424,429,
+431,423,414,398,374,348,327,300,261,215,166,128,102,80,65,42,26,10,-12,-25,
+-36,-42,-55,-77,-113,-165,-232,-313,-394,-470,-551,-629,-702,-757,-801,-838,-877,-924,-964,-982,
+-1010,-1032,-1049,-1080,-1114,-1144,-1171,-1205,-1256,-1309,-1355,-1401,-1448,-1494,-1544,-1590,-1634,-1676,-1723,-1761,
+-1785,-1804,-1823,-1852,-1876,-1895,-1904,-1901,-1891,-1885,-1888,-1898,-1907,-1915,-1936,-1957,-1975,-1989,-2006,-2030,
+-2056,-2083,-2108,-2128,-2151,-2181,-2219,-2268,-2322,-2378,-2437,-2492,-2543,-2593,-2641,-2690,-2735,-2776,-2819,-2864,
+-2904,-2942,-2972,-2999,-3019,-3047,-3075,-3096,-3117,-3135,-3145,-3154,-3161,-3170,-3188,-3206,-3221,-3245,-3281,-3310,
+-3339,-3360,-3382,-3413,-3433,-3445,-3449,-3455,-3470,-3485,-3503,-3522,-3544,-3557,-3563,-3568,-3568,-3574,-3584,-3593,
+-3609,-3624,-3627,-3629,-3649,-3681,-3700,-3702,-3697,-3695,-3708,-3738,-3758,-3772,-3795,-3819,-3849,-3893,-3945,-3990,
+-4031,-4065,-4092,-4110,-4127,-4149,-4175,-4205,-4230,-4245,-4262,-4280,-4294,-4300,-4298,-4306,-4316,-4327,-4333,-4331,
+-4338,-4350,-4353,-4353,-4362,-4375,-4375,-4373,-4378,-4384,-4395,-4408,-4423,-4442,-4458,-4470,-4473,-4470,-4471,-4483,
+-4502,-4512,-4514,-4510,-4508,-4506,-4509,-4514,-4523,-4537,-4548,-4554,-4557,-4552,-4534,-4511,-4498,-4491,-4482,-4477,
+-4472,-4462,-4457,-4455,-4453,-4444,-4434,-4421,-4416,-4406,-4368,-4335,-4329,-4329,-4335,-4337,-4332,-4310,-4290,-4288,
+-4289,-4291,-4288,-4290,-4297,-4307,-4317,-4325,-4325,-4317,-4325,-4359,-4373,-4383,-4381,-4360,-4346,-4345,-4350,-4358,
+-4365,-4371,-4378,-4387,-4397,-4411,-4425,-4434,-4450,-4468,-4486,-4507,-4520,-4532,-4541,-4548,-4556,-4571,-4588,-4603,
+-4618,-4637,-4657,-4674,-4692,-4708,-4727,-4747,-4769,-4792,-4805,-4813,-4818,-4825,-4834,-4848,-4862,-4879,-4891,-4913,
+-4935,-4954,-4978,-4998,-5003,-5001,-5007,-5020,-5036,-5038,-5021,-5006,-5023,-5064,-5085,-5079,-5076,-5072,-5050,-5041,
+-5056,-5090,-5109,-5121,-5127,-5116,-5114,-5121,-5124,-5143,-5129,-5109,-5086,-5068,-5094,-5110,-5104,-5105,-5117,-5115,
+-5130,-5133,-5118,-5116,-5118,-5114,-5112,-5122,-5122,-5107,-5111,-5127,-5121,-5106,-5107,-5096,-5090,-5088,-5085,-5081,
+-5076,-5067,-5064,-5064,-5060,-5053,-5045,-5039,-5034,-5030,-5034,-5040,-5024,-5014,-5012,-5014,-5016,-5010,-5006,-5000,
+-4985,-4971,-4960,-4953,-4955,-4952,-4946,-4946,-4942,-4938,-4930,-4924,-4920,-4915,-4912,-4903,-4898,-4893,-4887,-4883,
+-4877,-4872,-4869,-4864,-4858,-4852,-4848,-4847,-4853,-4857,-4854,-4843,-4841,-4842,-4836,-4833,-4810,-4793,-4784,-4780,
+-4792,-4795,-4787,-4785,-4789,-4786,-4774,-4757,-4742,-4727,-4711,-4702,-4693,-4686,-4681,-4673,-4671,-4667,-4657,-4644,
+-4630,-4618,-4610,-4606,-4617,-4628,-4638,-4641,-4632,-4619,-4598,-4577,-4568,-4564,-4574,-4564,-4544,-4526,-4512,-4505,
+-4494,-4484,-4477,-4465,-4456,-4446,-4439,-4426,-4404,-4388,-4372,-4358,-4353,-4343,-4337,-4338,-4333,-4323,-4313,-4299,
+-4283,-4253,-4230,-4217,-4214,-4216,-4210,-4209,-4199,-4183,-4163,-4163,-4171,-4175,-4173,-4178,-4180,-4177,-4170,-4160,
+-4154,-4141,-4127,-4114,-4099,-4090,-4082,-4073,-4061,-4050,-4041,-4032,-4018,-4010,-4011,-4015,-4002,-3997,-4011,-4028,
+-4031,-4025,-4020,-4016,-4006,-3997,-3981,-3963,-3941,-3906,-3878,-3877,-3872,-3860,-3855,-3845,-3824,-3805,-3793,-3786,
+-3778,-3760,-3732,-3705,-3681,-3658,-3644,-3635,-3624,-3602,-3581,-3569,-3551,-3528,-3510,-3494,-3478,-3461,-3447,-3432,
+-3419,-3406,-3395,-3385,-3372,-3357,-3341,-3328,-3315,-3304,-3291,-3282,-3271,-3261,-3249,-3236,-3224,-3210,-3197,-3188,
+-3176,-3166,-3157,-3147,-3135,-3122,-3109,-3097,-3086,-3074,-3062,-3051,-3040,-3027,-3015,-3005,-2997,-2990,-2985,-2980,
+-2974,-2966,-2958,-2951,-2946,-2942,-2937,-2924,-2900,-2886,-2873,-2854,-2839,-2827,-2815,-2803,-2794,-2781,-2761,-2741,
+-2721,-2703,-2688,-2675,-2663,-2652,-2640,-2627,-2615,-2603,-2593,-2586,-2577,-2566,-2552,-2535,-2520,-2506,-2492,-2479,
+-2467,-2456,-2444,-2434,-2423,-2410,-2398,-2385,-2373,-2361,-2352,-2338,-2324,-2313,-2303,-2294,-2287,-2279,-2268,-2256,
+-2241,-2228,-2217,-2207,-2198,-2186,-2177,-2167,-2153,-2138,-2123,-2108,-2091,-2073,-2054,-2032,-2009,-1983,-1956,-1930,
+-1902,-1874,-1847,-1817,-1785,-1748,-1712,-1695,-1697,-1714,-1733,-1736,-1715,-1673,-1629,-1584,-1551,-1536,-1519,-1499,
+-1491,-1480,-1464,-1443,-1425,-1409,-1392,-1370,-1350,-1332,-1313,-1290,-1267,-1242,-1220,-1199,-1180,-1162,-1143,-1124,
+-1106,-1088,-1070,-1050,-1030,-1006,-983,-958,-931,-902,-872,-843,-815,-788,-760,-732,-701,-671,-642,-615,
+-586,-554,-523,-487,-451,-425,-400,-369,-330,-286,-241,-202,-169,-136,-108,-80,-56,-30,1,30,
+58,87,112,139,164,190,221,254,284,314,347,376,407,438,469,501,530,560,593,629,
+670,712,754,798,832,872,943,1049,1117,1154,1190,1225,1270,1317,1359,1380,1389,1407,1436,1473,
+1520,1568,1616,1666,1715,1761,1803,1838,1870,1898,1923,1940,1940,1952,1945,1955,1960,1960,1954,1947,
+1939,1931,1923,1917,1911,1905,1901,1895,1891,1884,1879,1873,1869,1867,1866,1871,1877,1886,1892,1892,
+1884,1866,1816,1740,1660,1583,1512,1455,1412,1379,1350,1330,1320,1313,1306,1301,1300,1297,1299,1310,
+1323,1342,1364,1397,1438,1466,1475,1481,1500,1521,1530,1535,1538,1535,1533,1524,1509,1499,1493,1492,
+1489,1487,1489,1495,1501,1505,1505,1506,1508,1505,1498,1485,1478,1476,1474,1475,1473,1469,1465,1470,
+1476,1476,1473,1469,1460,1453,1450,1443,1433,1431,1438,1445,1454,1447,1426,1407,1391,1375,1357,1345,
+1337,1333,1327,1326,1328,1336,1324,1307,1298,1293,1287,1281,1268,1253,1245,1243,1241,1241,1236,1229,
+1221,1215,1209,1207,1207,1202,1193,1179,1169,1168,1175,1177,1170,1156,1135,1114,1101,1099,1104,1105,
+1104,1101,1097,1089,1079,1065,1052,1047,1043,1039,1035,1035,1034,1032,1034,1036,1031,1015,999,986,
+980,976,971,969,964,957,952,939,928,919,916,918,919,920,919,913,909,907,909,910,
+911,917,924,925,921,915,913,911,908,906,901,901,903,901,902,905,907,907,912,916,
+917,921,924,929,935,941,947,950,957,965,974,983,992,996,1006,1023,1035,1046,1054,1062,
+1074,1087,1092,1094,1096,1106,1116,1126,1136,1148,1161,1177,1189,1208,1227,1242,1257,1275,1303,1340,
+1380,1368,1410,1453,1495,1531,1565,1598,1626,1656,1689,1729,1737,1730,1721,1719,1719,1722,1710,1689,
+1681,1680,1682,1681,1674,1665,1658,1650,1645,1647,1650,1655,1662,1670,1673,1674,1674,1682,1690,1698,
+1712,1736,1757,1770,1789,1803,1813,1827,1842,1853,1865,1878,1890,1902,1912,1929,1945,1958,1968,1977,
+1980,1975,1968,1956,1935,1896,1856,1835,1830,1832,1843,1857,1870,1881,1891,1895,1901,1902,1898,1893,
+1889,1891,1891,1894,1903,1910,1916,1923,1926,1926,1927,1932,1937,1948,1957,1962,1965,1968,1972,1973,
+1976,1978,1980,1983,1986,1990,1997,2006,2009,2015,2023,2032,2041,2051,2058,2070,2084,2096,2106,2117,
+2125,2131,2134,2133,2134,2131,2123,2108,2086,2056,2032,2031,2053,2092,2146,2234,2332,2402,2450,2459,
+2414,2338,2345,2396,2441,2477,2499,2515,2525,2535,2552,2567,2580,2592,2605,2614,2622,2629,2640,2649,
+2657,2672,2688,2703,2719,2733,2748,2763,2775,2787,2797,2801,2802,2804,2805,2803,2803,2806,2812,2826,
+2843,2861,2878,2898,2916,2929,2948,2960,2982,3005,3031,3053,3075,3101,3119,3117,3100,3084,3085,3102,
+3114,3113,3094,3066,3039,3034,3046,3072,3098,3110,3092,3086,3094,3095,3108,3139,3173,3187,3176,3150,
+3120,3097,3078,3076,3081,3087,3086,3075,3061,3047,3029,3006,2986,2965,2952,2941,2932,2917,2890,2859,
+2828,2800,2776,2752,2733,2715,2705,2694,2687,2682,2683,2688,2696,2705,2715,2728,2739,2743,2741,2733,
+2717,2695,2670,2633,2599,2575,2561,2552,2552,2555,2563,2572,2575,2572,2561,2549,2537,2524,2508,2484,
+2456,2422,2386,2350,2317,2285,2256,2228,2202,2175,2151,2130,2111,2090,2075,2064,2057,2051,2042,2031,
+2026,2022,2015,2005,1990,1970,1953,1933,1914,1893,1877,1865,1858,1846,1829,1807,1783,1761,1738,1709,
+1677,1648,1620,1595,1568,1543,1521,1506,1490,1474,1463,1457,1456,1453,1449,1441,1429,1413,1395,1377,
+1360,1340,1314,1285,1252,1223,1196,1173,1153,1131,1100,1064,1023,989,954,919,885,851,815,776,
+743,712,682,652,628,611,592,570,546,525,507,496,492,488,467,441,419,394,382,372,
+362,352,332,308,285,260,234,207,179,145,108,74,52,28,-13,-40,-60,-77,-90,-104,
+-115,-126,-138,-148,-167,-193,-225,-269,-328,-381,-444,-506,-569,-629,-678,-716,-745,-775,-810,-843,
+-867,-894,-931,-974,-1015,-1062,-1103,-1136,-1168,-1192,-1211,-1230,-1247,-1279,-1336,-1401,-1465,-1528,-1594,-1654,
+-1705,-1739,-1760,-1782,-1808,-1833,-1860,-1885,-1896,-1903,-1905,-1898,-1895,-1901,-1903,-1914,-1935,-1961,-1989,-2014,
+-2033,-2040,-2047,-2055,-2055,-2063,-2088,-2127,-2177,-2232,-2288,-2341,-2390,-2439,-2494,-2550,-2602,-2653,-2708,-2762,
+-2809,-2853,-2897,-2942,-2981,-3020,-3061,-3094,-3113,-3128,-3145,-3155,-3164,-3176,-3183,-3180,-3187,-3206,-3225,-3251,
+-3273,-3291,-3305,-3312,-3324,-3337,-3344,-3355,-3362,-3371,-3387,-3407,-3427,-3449,-3467,-3477,-3485,-3487,-3476,-3454,
+-3445,-3453,-3471,-3484,-3492,-3495,-3511,-3530,-3550,-3569,-3583,-3603,-3630,-3668,-3707,-3736,-3766,-3795,-3823,-3861,
+-3892,-3922,-3944,-3964,-3984,-4006,-4046,-4116,-4179,-4217,-4248,-4275,-4300,-4318,-4321,-4326,-4341,-4360,-4375,-4387,
+-4386,-4394,-4404,-4402,-4402,-4416,-4422,-4417,-4417,-4420,-4418,-4424,-4436,-4446,-4463,-4481,-4496,-4513,-4530,-4541,
+-4543,-4538,-4535,-4539,-4545,-4550,-4562,-4576,-4592,-4605,-4616,-4619,-4615,-4614,-4616,-4614,-4606,-4595,-4581,-4568,
+-4559,-4554,-4547,-4539,-4535,-4530,-4529,-4526,-4517,-4501,-4499,-4493,-4450,-4409,-4398,-4397,-4398,-4398,-4393,-4374,
+-4359,-4356,-4362,-4362,-4359,-4363,-4371,-4380,-4391,-4399,-4409,-4411,-4407,-4414,-4445,-4464,-4463,-4444,-4425,-4426,
+-4433,-4444,-4451,-4453,-4458,-4463,-4472,-4476,-4486,-4500,-4515,-4532,-4552,-4575,-4591,-4606,-4620,-4627,-4632,-4637,
+-4651,-4668,-4685,-4700,-4714,-4731,-4754,-4777,-4800,-4825,-4849,-4868,-4884,-4894,-4903,-4910,-4919,-4924,-4934,-4951,
+-4967,-4988,-5011,-5031,-5047,-5046,-5021,-5010,-5042,-5035,-5069,-5130,-5171,-5184,-5187,-5182,-5168,-5153,-5134,-5113,
+-5103,-5122,-5146,-5170,-5203,-5214,-5225,-5209,-5184,-5194,-5192,-5184,-5178,-5175,-5173,-5145,-5134,-5138,-5137,-5119,
+-5129,-5152,-5128,-5116,-5123,-5129,-5130,-5136,-5144,-5137,-5136,-5139,-5136,-5134,-5152,-5154,-5138,-5127,-5123,-5119,
+-5117,-5114,-5109,-5106,-5102,-5102,-5113,-5119,-5106,-5102,-5094,-5085,-5084,-5079,-5077,-5077,-5077,-5073,-5065,-5054,
+-5053,-5049,-5045,-5040,-5026,-5019,-5019,-5011,-5001,-5003,-5000,-4994,-4991,-4985,-4980,-4977,-4973,-4967,-4957,-4953,
+-4948,-4942,-4938,-4930,-4922,-4917,-4913,-4912,-4911,-4902,-4898,-4900,-4899,-4886,-4889,-4888,-4880,-4875,-4877,-4865,
+-4855,-4857,-4842,-4829,-4828,-4826,-4817,-4818,-4825,-4825,-4823,-4814,-4800,-4783,-4766,-4757,-4752,-4748,-4739,-4732,
+-4722,-4714,-4701,-4687,-4674,-4664,-4653,-4644,-4638,-4639,-4649,-4664,-4669,-4667,-4655,-4642,-4633,-4637,-4631,-4607,
+-4586,-4580,-4573,-4556,-4540,-4527,-4514,-4501,-4493,-4482,-4467,-4457,-4438,-4414,-4388,-4364,-4359,-4369,-4365,-4370,
+-4380,-4369,-4345,-4314,-4287,-4279,-4267,-4254,-4232,-4214,-4215,-4217,-4215,-4207,-4193,-4197,-4202,-4194,-4197,-4210,
+-4212,-4201,-4189,-4174,-4165,-4161,-4152,-4137,-4120,-4105,-4094,-4086,-4082,-4082,-4083,-4083,-4079,-4075,-4060,-4039,
+-4039,-4059,-4075,-4075,-4061,-4049,-4033,-4022,-4011,-4003,-3988,-3969,-3952,-3932,-3914,-3903,-3892,-3881,-3868,-3846,
+-3825,-3806,-3788,-3770,-3748,-3723,-3703,-3688,-3677,-3664,-3641,-3615,-3600,-3582,-3559,-3537,-3521,-3508,-3496,-3483,
+-3470,-3454,-3441,-3430,-3418,-3403,-3390,-3378,-3365,-3351,-3340,-3327,-3314,-3300,-3289,-3278,-3265,-3254,-3240,-3229,
+-3220,-3209,-3199,-3190,-3180,-3168,-3157,-3146,-3133,-3121,-3110,-3098,-3086,-3073,-3061,-3052,-3045,-3037,-3031,-3024,
+-3018,-3007,-2995,-2984,-2974,-2966,-2959,-2953,-2945,-2935,-2920,-2906,-2891,-2872,-2849,-2831,-2821,-2806,-2785,-2776,
+-2764,-2748,-2728,-2710,-2694,-2679,-2666,-2654,-2639,-2625,-2610,-2595,-2583,-2575,-2568,-2560,-2550,-2538,-2524,-2512,
+-2498,-2483,-2471,-2458,-2446,-2433,-2421,-2411,-2400,-2388,-2377,-2365,-2352,-2339,-2329,-2320,-2312,-2306,-2298,-2287,
+-2275,-2264,-2251,-2243,-2233,-2224,-2214,-2205,-2193,-2179,-2167,-2152,-2137,-2119,-2100,-2078,-2055,-2031,-2006,-1981,
+-1954,-1928,-1901,-1873,-1841,-1802,-1749,-1672,-1582,-1528,-1587,-1684,-1747,-1743,-1702,-1649,-1579,-1561,-1542,-1524,
+-1511,-1501,-1494,-1486,-1477,-1461,-1443,-1423,-1403,-1382,-1360,-1335,-1310,-1286,-1262,-1238,-1216,-1194,-1172,-1152,
+-1132,-1113,-1094,-1075,-1058,-1040,-1021,-1000,-980,-956,-930,-902,-870,-843,-816,-788,-760,-733,-704,-674,
+-643,-614,-581,-551,-524,-494,-463,-433,-405,-377,-347,-309,-269,-229,-186,-148,-126,-93,-61,-35,
+-1,31,60,90,119,146,174,202,229,258,287,316,346,374,405,437,469,500,533,569,
+604,641,683,728,773,823,894,997,1052,1093,1138,1191,1239,1279,1306,1313,1330,1373,1404,1423,
+1459,1502,1538,1580,1640,1700,1746,1786,1821,1848,1855,1868,1891,1905,1907,1903,1895,1885,1870,1858,
+1844,1832,1823,1817,1815,1813,1813,1811,1811,1805,1790,1784,1780,1781,1789,1798,1805,1818,1833,1849,
+1849,1844,1823,1779,1718,1644,1573,1508,1449,1400,1362,1331,1309,1291,1279,1269,1261,1253,1246,1247,
+1256,1267,1281,1295,1315,1343,1380,1400,1414,1436,1463,1484,1495,1502,1506,1504,1495,1481,1465,1452,
+1445,1442,1445,1440,1435,1430,1431,1437,1443,1452,1459,1461,1458,1448,1438,1435,1433,1428,1429,1429,
+1431,1441,1446,1447,1438,1424,1420,1424,1423,1412,1397,1382,1372,1369,1373,1372,1364,1355,1343,1331,
+1317,1302,1286,1274,1261,1256,1255,1257,1257,1255,1251,1245,1235,1221,1209,1198,1193,1189,1187,1182,
+1174,1163,1152,1152,1155,1152,1148,1136,1121,1107,1100,1096,1094,1095,1094,1088,1079,1066,1052,1042,
+1038,1041,1041,1039,1037,1042,1045,1043,1033,1016,1000,995,994,992,988,986,990,993,994,982,
+960,944,932,924,916,907,904,901,898,886,875,870,871,872,873,876,871,867,868,871,
+871,873,879,884,883,882,882,885,883,877,875,872,868,870,872,876,885,889,885,885,
+890,895,898,902,905,911,916,920,928,937,949,961,972,981,993,1000,1005,1019,1031,1043,
+1050,1059,1069,1078,1084,1087,1092,1102,1115,1126,1136,1146,1160,1172,1190,1203,1219,1238,1267,1298,
+1331,1368,1350,1400,1449,1479,1511,1538,1563,1590,1625,1661,1704,1717,1692,1683,1674,1662,1648,1638,
+1637,1640,1642,1637,1631,1625,1616,1608,1608,1615,1623,1633,1642,1651,1654,1654,1655,1668,1683,1696,
+1710,1721,1730,1745,1757,1775,1802,1824,1824,1823,1833,1846,1859,1873,1886,1899,1910,1921,1937,1948,
+1961,1960,1949,1936,1913,1899,1904,1876,1825,1801,1802,1816,1828,1841,1852,1859,1866,1869,1867,1860,
+1854,1853,1857,1861,1867,1876,1884,1887,1887,1890,1897,1905,1913,1919,1923,1925,1927,1928,1930,1931,
+1931,1932,1933,1937,1937,1941,1947,1956,1962,1966,1972,1982,1993,1998,2004,2016,2030,2042,2052,2066,
+2078,2086,2090,2094,2098,2098,2094,2079,2054,2020,1989,1981,1995,2024,2060,2099,2165,2274,2379,2429,
+2439,2394,2318,2317,2371,2409,2435,2452,2464,2474,2487,2498,2509,2522,2535,2542,2550,2558,2568,2579,
+2588,2596,2609,2626,2639,2653,2666,2677,2691,2705,2719,2733,2749,2762,2773,2775,2774,2782,2792,2800,
+2813,2829,2841,2854,2870,2890,2913,2938,2959,2986,3015,3045,3071,3097,3117,3133,3144,3132,3105,3092,
+3098,3108,3099,3059,3011,2979,2982,3011,3039,3077,3096,3082,3069,3093,3138,3171,3198,3199,3188,3173,
+3157,3143,3130,3127,3126,3123,3122,3122,3121,3105,3081,3058,3032,3005,2979,2958,2943,2930,2913,2885,
+2852,2821,2792,2762,2733,2706,2686,2674,2660,2651,2642,2637,2637,2646,2655,2671,2689,2704,2715,2721,
+2722,2715,2704,2680,2647,2608,2565,2529,2511,2503,2505,2511,2523,2530,2530,2522,2511,2497,2482,2467,
+2445,2417,2386,2346,2310,2276,2246,2220,2198,2175,2155,2135,2114,2096,2081,2066,2055,2042,2032,2022,
+2010,2002,1990,1976,1957,1936,1917,1893,1874,1858,1841,1823,1807,1798,1789,1774,1750,1720,1691,1667,
+1636,1598,1558,1518,1487,1458,1435,1423,1414,1402,1387,1371,1349,1338,1337,1341,1348,1352,1356,1361,
+1354,1340,1315,1286,1254,1221,1198,1178,1160,1142,1119,1091,1059,1026,994,961,929,900,867,833,
+797,763,732,703,676,648,622,602,584,568,546,517,483,450,425,408,387,358,327,307,
+294,278,252,226,202,176,148,119,91,63,37,13,-9,-28,-41,-75,-103,-114,-135,-156,
+-163,-163,-163,-175,-188,-209,-241,-277,-324,-378,-430,-473,-513,-550,-590,-632,-672,-707,-742,-772,
+-801,-827,-844,-863,-892,-928,-964,-1007,-1048,-1082,-1109,-1127,-1145,-1166,-1189,-1218,-1252,-1300,-1361,-1442,
+-1530,-1614,-1675,-1710,-1735,-1762,-1784,-1815,-1850,-1877,-1905,-1929,-1947,-1962,-1964,-1967,-1963,-1957,-1960,-1967,
+-1976,-1963,-1946,-1941,-1937,-1941,-1953,-1959,-1984,-2021,-2077,-2113,-2156,-2201,-2250,-2302,-2363,-2438,-2516,-2596,
+-2670,-2736,-2797,-2863,-2921,-2969,-3008,-3047,-3080,-3102,-3113,-3121,-3127,-3137,-3151,-3161,-3166,-3171,-3179,-3195,
+-3207,-3209,-3190,-3161,-3145,-3137,-3146,-3154,-3168,-3197,-3226,-3254,-3278,-3304,-3328,-3356,-3382,-3407,-3422,-3429,
+-3446,-3468,-3493,-3509,-3522,-3534,-3543,-3559,-3576,-3598,-3615,-3632,-3655,-3688,-3725,-3760,-3788,-3803,-3815,-3835,
+-3862,-3890,-3920,-3946,-3968,-3987,-3994,-4009,-4033,-4066,-4115,-4161,-4200,-4234,-4261,-4274,-4283,-4314,-4343,-4362,
+-4376,-4399,-4408,-4407,-4412,-4422,-4433,-4436,-4437,-4446,-4454,-4462,-4479,-4495,-4508,-4515,-4518,-4528,-4542,-4556,
+-4573,-4581,-4581,-4589,-4603,-4609,-4611,-4615,-4631,-4655,-4674,-4689,-4694,-4685,-4673,-4670,-4667,-4659,-4646,-4633,
+-4620,-4611,-4609,-4607,-4601,-4592,-4589,-4588,-4587,-4583,-4581,-4578,-4579,-4558,-4515,-4473,-4460,-4459,-4464,-4463,
+-4454,-4435,-4424,-4427,-4435,-4437,-4432,-4431,-4436,-4444,-4452,-4456,-4464,-4476,-4478,-4475,-4510,-4535,-4543,-4531,
+-4508,-4505,-4512,-4523,-4524,-4515,-4521,-4536,-4546,-4551,-4562,-4570,-4585,-4602,-4620,-4633,-4648,-4672,-4683,-4691,
+-4702,-4714,-4726,-4739,-4755,-4770,-4786,-4803,-4824,-4845,-4865,-4885,-4911,-4936,-4955,-4966,-4981,-4991,-4999,-5003,
+-5014,-5029,-5049,-5066,-5086,-5101,-5115,-5134,-5148,-5154,-5163,-5194,-5227,-5243,-5264,-5282,-5286,-5283,-5278,-5273,
+-5265,-5261,-5252,-5244,-5232,-5225,-5247,-5279,-5305,-5320,-5317,-5292,-5270,-5265,-5257,-5246,-5252,-5246,-5221,-5189,
+-5205,-5222,-5190,-5173,-5172,-5159,-5157,-5148,-5144,-5140,-5141,-5144,-5148,-5153,-5156,-5156,-5159,-5165,-5173,-5167,
+-5166,-5160,-5150,-5148,-5148,-5156,-5163,-5152,-5140,-5148,-5152,-5147,-5141,-5143,-5143,-5138,-5132,-5126,-5121,-5116,
+-5116,-5112,-5108,-5108,-5108,-5099,-5091,-5089,-5080,-5071,-5065,-5060,-5060,-5058,-5051,-5052,-5046,-5036,-5027,-5022,
+-5022,-5016,-5012,-5008,-5001,-4998,-4990,-4982,-4977,-4979,-4980,-4975,-4976,-4975,-4959,-4944,-4948,-4951,-4949,-4946,
+-4932,-4923,-4923,-4914,-4905,-4903,-4904,-4905,-4895,-4879,-4873,-4873,-4867,-4867,-4868,-4859,-4846,-4831,-4835,-4830,
+-4826,-4814,-4797,-4777,-4760,-4754,-4747,-4731,-4722,-4710,-4699,-4685,-4668,-4663,-4666,-4667,-4667,-4679,-4690,-4698,
+-4698,-4691,-4676,-4653,-4631,-4624,-4623,-4617,-4602,-4578,-4553,-4540,-4531,-4519,-4499,-4479,-4455,-4432,-4424,-4412,
+-4398,-4387,-4385,-4382,-4384,-4365,-4328,-4333,-4335,-4322,-4286,-4256,-4264,-4253,-4235,-4236,-4235,-4242,-4239,-4232,
+-4230,-4230,-4224,-4229,-4234,-4226,-4212,-4199,-4188,-4174,-4165,-4158,-4148,-4140,-4137,-4129,-4115,-4110,-4112,-4114,
+-4103,-4078,-4070,-4076,-4092,-4104,-4100,-4083,-4065,-4053,-4040,-4026,-4012,-3998,-3979,-3965,-3947,-3929,-3914,-3899,
+-3887,-3871,-3845,-3813,-3790,-3774,-3759,-3741,-3725,-3708,-3690,-3668,-3649,-3631,-3610,-3587,-3568,-3551,-3536,-3524,
+-3513,-3503,-3490,-3477,-3462,-3448,-3436,-3422,-3409,-3397,-3386,-3373,-3360,-3348,-3335,-3320,-3307,-3296,-3285,-3273,
+-3262,-3252,-3243,-3232,-3221,-3210,-3199,-3187,-3175,-3163,-3152,-3141,-3130,-3118,-3107,-3097,-3085,-3077,-3071,-3066,
+-3060,-3053,-3042,-3029,-3015,-3002,-2991,-2980,-2972,-2965,-2954,-2941,-2927,-2913,-2896,-2878,-2857,-2836,-2817,-2802,
+-2790,-2779,-2762,-2747,-2729,-2709,-2690,-2672,-2658,-2644,-2630,-2614,-2599,-2587,-2577,-2568,-2555,-2539,-2542,-2540,
+-2529,-2514,-2498,-2484,-2471,-2459,-2449,-2437,-2425,-2416,-2407,-2396,-2385,-2375,-2364,-2354,-2346,-2338,-2329,-2319,
+-2309,-2298,-2286,-2276,-2267,-2257,-2247,-2238,-2228,-2217,-2205,-2191,-2175,-2158,-2137,-2116,-2092,-2069,-2044,-2019,
+-1994,-1971,-1950,-1928,-1901,-1873,-1841,-1802,-1749,-1682,-1631,-1670,-1739,-1777,-1757,-1720,-1686,-1632,-1557,-1460,
+-1378,-1382,-1444,-1486,-1495,-1494,-1484,-1469,-1447,-1425,-1404,-1383,-1362,-1337,-1313,-1292,-1266,-1242,-1218,-1196,
+-1175,-1153,-1133,-1112,-1093,-1072,-1054,-1035,-1019,-1000,-979,-957,-938,-915,-886,-858,-827,-797,-766,-736,
+-708,-677,-648,-616,-583,-550,-518,-491,-471,-452,-433,-410,-381,-347,-311,-271,-227,-183,-143,-110,
+-85,-57,-30,2,38,72,105,134,161,192,220,249,282,311,340,373,406,440,475,512,
+553,592,627,663,708,768,866,940,987,1034,1084,1140,1175,1194,1222,1242,1267,1301,1341,1382,
+1419,1454,1490,1533,1593,1646,1691,1719,1748,1780,1792,1811,1828,1850,1849,1841,1827,1810,1792,1772,
+1754,1737,1722,1710,1703,1703,1705,1707,1707,1706,1697,1692,1688,1691,1697,1712,1723,1742,1762,1779,
+1796,1804,1803,1790,1753,1689,1620,1555,1501,1444,1401,1356,1321,1294,1272,1254,1238,1224,1212,1215,
+1216,1220,1226,1238,1245,1250,1256,1277,1305,1327,1353,1390,1422,1442,1451,1455,1457,1457,1456,1448,
+1438,1425,1411,1399,1391,1385,1382,1385,1390,1393,1398,1408,1424,1436,1443,1440,1431,1421,1408,1396,
+1388,1387,1391,1391,1393,1389,1381,1377,1373,1371,1370,1362,1353,1347,1335,1322,1317,1320,1319,1309,
+1297,1279,1260,1237,1215,1202,1190,1184,1192,1208,1212,1202,1189,1178,1163,1148,1128,1112,1109,1112,
+1115,1112,1103,1092,1080,1070,1068,1070,1072,1064,1053,1042,1032,1028,1026,1022,1020,1016,1015,1014,
+1013,1011,1002,990,985,984,986,992,999,1003,996,975,957,949,944,943,936,934,931,928,
+929,927,921,906,896,884,877,872,866,852,838,831,827,827,827,830,833,834,833,840,
+843,842,841,843,843,848,846,847,846,846,845,844,840,837,839,841,844,851,856,859,
+857,856,861,867,874,880,886,893,901,908,918,927,939,953,969,986,998,1002,1012,1025,
+1036,1040,1040,1044,1053,1065,1076,1082,1090,1099,1108,1116,1126,1141,1154,1166,1181,1199,1221,1242,
+1270,1306,1350,1341,1382,1410,1437,1463,1489,1520,1550,1578,1600,1614,1622,1623,1617,1603,1594,1590,
+1592,1598,1598,1593,1585,1581,1579,1579,1581,1586,1592,1601,1611,1622,1629,1634,1643,1657,1663,1664,
+1676,1691,1710,1736,1762,1754,1755,1769,1786,1807,1827,1850,1869,1881,1897,1911,1918,1925,1931,1938,
+1939,1936,1926,1907,1881,1859,1843,1839,1840,1828,1795,1779,1782,1789,1799,1808,1817,1822,1822,1819,
+1822,1830,1834,1835,1839,1844,1845,1847,1848,1853,1859,1865,1871,1877,1882,1884,1885,1885,1885,1887,
+1887,1887,1888,1888,1894,1900,1906,1911,1916,1919,1920,1926,1934,1942,1945,1955,1968,1983,1998,2013,
+2025,2037,2046,2057,2061,2062,2060,2047,2025,1995,1967,1957,1971,2011,2069,2099,2110,2128,2171,2245,
+2318,2343,2308,2290,2320,2356,2387,2407,2418,2426,2435,2444,2448,2457,2466,2475,2481,2488,2495,2503,
+2515,2524,2532,2544,2559,2571,2586,2603,2616,2630,2646,2667,2684,2700,2717,2736,2755,2768,2780,2781,
+2783,2795,2805,2819,2833,2845,2864,2891,2915,2939,2966,2996,3028,3062,3098,3131,3150,3155,3134,3103,
+3092,3081,3064,3042,3013,2999,3005,3021,3034,3040,3054,3075,3082,3090,3115,3167,3230,3270,3288,3295,
+3301,3280,3253,3225,3197,3179,3165,3147,3135,3137,3137,3115,3087,3055,3026,2999,2974,2956,2939,2917,
+2889,2859,2825,2795,2767,2738,2709,2684,2660,2642,2630,2621,2613,2610,2605,2605,2617,2631,2643,2648,
+2659,2665,2663,2654,2640,2619,2593,2554,2515,2486,2469,2463,2462,2467,2476,2479,2472,2465,2456,2446,
+2433,2416,2385,2349,2312,2281,2252,2224,2200,2180,2164,2147,2129,2110,2091,2074,2057,2039,2026,2015,
+2003,1989,1972,1953,1930,1903,1882,1860,1839,1822,1810,1800,1783,1764,1745,1724,1700,1668,1630,1593,
+1557,1521,1483,1457,1445,1439,1442,1457,1470,1473,1463,1441,1411,1373,1344,1328,1324,1332,1333,1326,
+1310,1288,1261,1235,1211,1187,1164,1163,1155,1130,1100,1074,1056,1035,1010,978,944,911,884,860,
+825,782,748,720,698,687,678,662,627,581,540,499,459,424,390,367,352,329,290,263,
+234,209,186,159,129,99,69,39,10,-16,-41,-63,-82,-97,-106,-115,-131,-150,-168,-183,
+-186,-179,-175,-176,-181,-194,-213,-237,-270,-312,-363,-417,-461,-492,-520,-556,-597,-637,-678,-717,
+-754,-789,-823,-856,-888,-918,-949,-985,-1027,-1059,-1087,-1119,-1149,-1178,-1202,-1228,-1255,-1284,-1319,-1361,
+-1412,-1457,-1504,-1559,-1593,-1632,-1680,-1730,-1771,-1816,-1855,-1888,-1911,-1928,-1943,-1960,-1973,-1988,-2004,-2002,
+-1988,-1982,-1972,-1971,-1979,-1986,-2000,-2010,-2013,-2041,-2097,-2138,-2170,-2207,-2252,-2288,-2315,-2344,-2382,-2424,
+-2468,-2524,-2588,-2658,-2735,-2801,-2850,-2889,-2923,-2949,-2966,-2969,-2966,-2976,-2997,-3021,-3039,-3049,-3061,-3067,
+-3073,-3075,-3064,-3070,-3072,-3078,-3078,-3099,-3122,-3137,-3166,-3208,-3249,-3286,-3311,-3325,-3344,-3367,-3388,-3407,
+-3428,-3456,-3497,-3530,-3558,-3576,-3589,-3602,-3611,-3612,-3613,-3627,-3647,-3684,-3723,-3758,-3781,-3792,-3803,-3819,
+-3845,-3873,-3901,-3928,-3953,-3975,-3996,-4015,-4025,-4033,-4051,-4071,-4089,-4111,-4126,-4140,-4159,-4172,-4185,-4208,
+-4238,-4275,-4315,-4342,-4356,-4353,-4360,-4379,-4390,-4393,-4410,-4432,-4460,-4489,-4514,-4539,-4551,-4557,-4564,-4577,
+-4593,-4610,-4619,-4634,-4651,-4662,-4658,-4654,-4655,-4665,-4682,-4706,-4727,-4737,-4732,-4712,-4698,-4683,-4671,-4656,
+-4645,-4636,-4626,-4615,-4609,-4612,-4619,-4627,-4624,-4619,-4628,-4654,-4680,-4693,-4687,-4658,-4611,-4564,-4537,-4530,
+-4537,-4538,-4530,-4507,-4495,-4499,-4505,-4509,-4505,-4502,-4505,-4511,-4519,-4523,-4529,-4539,-4546,-4557,-4574,-4596,
+-4616,-4617,-4603,-4591,-4587,-4580,-4549,-4518,-4545,-4600,-4619,-4625,-4631,-4641,-4653,-4669,-4686,-4700,-4715,-4724,
+-4741,-4758,-4765,-4776,-4789,-4802,-4817,-4834,-4850,-4867,-4885,-4905,-4924,-4947,-4974,-4999,-5005,-5007,-5044,-5056,
+-5060,-5068,-5081,-5093,-5103,-5116,-5139,-5158,-5176,-5199,-5215,-5237,-5259,-5277,-5294,-5299,-5285,-5311,-5345,-5357,
+-5357,-5353,-5344,-5332,-5315,-5301,-5290,-5280,-5279,-5285,-5307,-5356,-5398,-5427,-5446,-5437,-5393,-5341,-5299,-5295,
+-5297,-5273,-5250,-5257,-5262,-5231,-5232,-5225,-5198,-5183,-5174,-5171,-5174,-5189,-5191,-5190,-5187,-5185,-5186,-5183,
+-5189,-5210,-5218,-5226,-5229,-5220,-5205,-5203,-5203,-5203,-5201,-5205,-5211,-5208,-5203,-5198,-5191,-5190,-5189,-5184,
+-5179,-5174,-5170,-5167,-5158,-5151,-5152,-5156,-5151,-5131,-5116,-5115,-5118,-5124,-5121,-5119,-5110,-5108,-5108,-5105,
+-5101,-5098,-5099,-5093,-5080,-5069,-5061,-5050,-5043,-5033,-5033,-5045,-5052,-5053,-5056,-5050,-5044,-5036,-5026,-5010,
+-4995,-4998,-4995,-4989,-4984,-4972,-4965,-4952,-4948,-4948,-4953,-4958,-4955,-4944,-4928,-4917,-4921,-4909,-4910,-4919,
+-4917,-4917,-4910,-4885,-4859,-4849,-4841,-4831,-4819,-4810,-4803,-4796,-4787,-4770,-4749,-4732,-4725,-4720,-4712,-4710,
+-4713,-4712,-4706,-4698,-4699,-4702,-4698,-4683,-4660,-4647,-4645,-4631,-4618,-4612,-4601,-4574,-4551,-4540,-4525,-4506,
+-4488,-4471,-4468,-4455,-4442,-4438,-4425,-4397,-4374,-4372,-4372,-4367,-4343,-4318,-4300,-4290,-4281,-4269,-4267,-4271,
+-4266,-4262,-4258,-4250,-4241,-4244,-4254,-4260,-4256,-4249,-4234,-4225,-4216,-4208,-4199,-4187,-4176,-4171,-4165,-4158,
+-4148,-4149,-4149,-4130,-4107,-4103,-4107,-4115,-4118,-4110,-4095,-4082,-4067,-4055,-4042,-4025,-4011,-3995,-3977,-3956,
+-3933,-3913,-3896,-3876,-3856,-3830,-3807,-3788,-3768,-3751,-3732,-3713,-3693,-3674,-3657,-3639,-3620,-3602,-3584,-3569,
+-3556,-3544,-3534,-3523,-3509,-3493,-3479,-3463,-3449,-3438,-3425,-3414,-3402,-3390,-3378,-3365,-3351,-3339,-3327,-3315,
+-3303,-3292,-3281,-3272,-3261,-3251,-3239,-3228,-3216,-3203,-3190,-3180,-3169,-3159,-3150,-3139,-3128,-3118,-3109,-3103,
+-3097,-3092,-3084,-3074,-3060,-3046,-3033,-3020,-3009,-3000,-2987,-2975,-2960,-2944,-2927,-2912,-2894,-2878,-2863,-2845,
+-2824,-2803,-2786,-2771,-2753,-2740,-2725,-2706,-2686,-2669,-2657,-2647,-2634,-2622,-2607,-2594,-2583,-2575,-2566,-2558,
+-2554,-2549,-2536,-2520,-2505,-2491,-2480,-2472,-2463,-2453,-2444,-2434,-2426,-2417,-2409,-2398,-2389,-2379,-2369,-2359,
+-2348,-2335,-2323,-2311,-2300,-2289,-2279,-2269,-2260,-2250,-2240,-2225,-2209,-2191,-2171,-2149,-2129,-2105,-2080,-2055,
+-2030,-2010,-1988,-1968,-1948,-1928,-1908,-1886,-1865,-1845,-1827,-1819,-1822,-1836,-1832,-1791,-1739,-1702,-1642,-1523,
+-1352,-1238,-1311,-1425,-1491,-1514,-1516,-1508,-1493,-1475,-1453,-1428,-1407,-1385,-1362,-1340,-1318,-1298,-1276,-1255,
+-1235,-1215,-1194,-1172,-1151,-1128,-1106,-1085,-1066,-1047,-1028,-1011,-992,-967,-941,-918,-889,-860,-829,-801,
+-772,-738,-709,-683,-652,-624,-597,-570,-543,-517,-490,-465,-444,-421,-399,-370,-328,-285,-255,-220,
+-182,-148,-115,-80,-47,-15,17,52,87,121,155,185,214,247,278,310,344,380,412,444,
+480,522,568,617,678,771,851,898,946,993,1046,1095,1136,1157,1169,1192,1229,1265,1298,1333,
+1371,1410,1447,1488,1532,1582,1631,1674,1714,1736,1747,1770,1783,1794,1790,1782,1765,1745,1722,1698,
+1674,1651,1631,1615,1604,1598,1597,1598,1599,1598,1595,1597,1599,1607,1622,1637,1655,1675,1695,1718,
+1742,1756,1760,1765,1749,1713,1654,1586,1539,1486,1437,1390,1352,1317,1282,1259,1236,1218,1204,1197,
+1191,1188,1186,1192,1197,1199,1197,1212,1233,1245,1258,1281,1308,1337,1363,1380,1390,1397,1403,1402,
+1398,1395,1393,1387,1378,1367,1360,1348,1337,1337,1335,1338,1342,1342,1344,1351,1357,1361,1365,1357,
+1337,1325,1330,1343,1348,1353,1354,1349,1344,1334,1322,1315,1307,1293,1279,1262,1250,1252,1261,1267,
+1261,1249,1231,1215,1198,1181,1161,1146,1144,1151,1155,1151,1134,1123,1121,1114,1106,1092,1076,1061,
+1046,1038,1036,1035,1033,1027,1020,1009,997,989,987,990,994,992,990,985,976,967,966,966,
+966,967,968,970,969,960,944,937,937,939,945,948,943,934,921,908,900,892,885,878,
+873,870,863,858,851,843,833,824,818,807,799,791,785,783,781,784,785,788,788,790,
+795,800,804,806,808,812,815,817,815,811,811,813,814,814,815,816,821,827,832,838,
+837,837,836,840,846,851,857,864,873,882,892,900,909,923,940,959,975,980,984,996,
+1008,1011,1012,1015,1021,1030,1043,1055,1067,1079,1090,1099,1107,1117,1126,1138,1148,1163,1189,1215,
+1236,1268,1301,1341,1299,1334,1365,1400,1432,1465,1493,1519,1534,1535,1530,1527,1523,1519,1521,1528,
+1538,1544,1550,1553,1551,1546,1546,1547,1550,1555,1563,1571,1580,1590,1596,1606,1616,1625,1631,1631,
+1635,1646,1663,1682,1701,1722,1739,1756,1774,1806,1839,1859,1879,1890,1901,1912,1922,1947,1968,1959,
+1932,1907,1886,1877,1886,1905,1890,1867,1880,1912,1888,1805,1747,1734,1737,1744,1749,1754,1760,1768,
+1778,1789,1801,1806,1811,1813,1813,1812,1811,1816,1822,1826,1831,1836,1837,1837,1835,1832,1832,1830,
+1833,1837,1835,1838,1845,1855,1865,1872,1872,1873,1872,1876,1881,1885,1893,1900,1915,1930,1948,1967,
+1983,1993,2002,2014,2023,2023,2021,2011,1991,1965,1944,1932,1941,1984,2068,2173,2255,2297,2301,2285,
+2292,2290,2283,2283,2308,2339,2360,2374,2383,2393,2394,2394,2399,2399,2404,2411,2419,2428,2435,2441,
+2444,2453,2466,2483,2495,2509,2520,2534,2546,2561,2575,2591,2614,2642,2672,2696,2710,2728,2752,2771,
+2778,2773,2770,2782,2796,2804,2820,2852,2880,2898,2919,2948,2978,3012,3048,3087,3117,3135,3124,3105,
+3081,3058,3037,3038,3053,3076,3102,3116,3108,3136,3173,3190,3199,3213,3219,3229,3248,3269,3288,3306,
+3319,3326,3327,3328,3324,3314,3301,3286,3269,3254,3222,3182,3150,3113,3084,3062,3041,3020,3002,2982,
+2955,2925,2893,2861,2834,2801,2765,2732,2705,2681,2658,2643,2635,2630,2626,2616,2606,2594,2591,2590,
+2590,2588,2585,2581,2576,2567,2557,2545,2531,2502,2464,2434,2417,2409,2407,2407,2412,2417,2422,2420,
+2411,2403,2388,2359,2322,2291,2263,2238,2213,2192,2176,2164,2151,2130,2108,2083,2061,2040,2025,2009,
+1994,1976,1958,1932,1902,1875,1850,1828,1808,1794,1784,1773,1760,1738,1711,1676,1633,1594,1563,1536,
+1506,1481,1470,1472,1481,1501,1519,1533,1542,1544,1543,1536,1530,1527,1521,1507,1491,1500,1481,1454,
+1429,1401,1365,1325,1283,1244,1217,1218,1222,1207,1188,1172,1154,1132,1111,1081,1043,1007,962,908,
+862,827,800,782,760,732,694,654,613,567,517,473,436,402,369,341,311,273,231,191,
+167,147,119,94,70,43,12,-17,-46,-74,-99,-121,-141,-157,-170,-179,-185,-191,-196,-201,
+-203,-201,-199,-198,-200,-205,-215,-229,-247,-271,-299,-332,-368,-406,-444,-483,-523,-565,-608,-651,
+-694,-737,-780,-823,-867,-911,-951,-989,-1031,-1071,-1104,-1139,-1181,-1214,-1240,-1257,-1282,-1309,-1344,-1391,
+-1437,-1486,-1530,-1566,-1592,-1612,-1646,-1688,-1729,-1759,-1791,-1816,-1842,-1867,-1891,-1912,-1934,-1957,-1982,-2011,
+-2043,-2071,-2090,-2099,-2110,-2100,-2101,-2139,-2158,-2183,-2208,-2236,-2260,-2281,-2304,-2331,-2361,-2386,-2404,-2424,
+-2452,-2485,-2516,-2551,-2594,-2637,-2692,-2742,-2786,-2822,-2844,-2854,-2867,-2877,-2881,-2883,-2896,-2910,-2925,-2937,
+-2943,-2963,-2984,-2993,-3012,-3046,-3083,-3094,-3097,-3111,-3133,-3173,-3222,-3270,-3306,-3329,-3351,-3371,-3389,-3409,
+-3433,-3456,-3479,-3508,-3532,-3554,-3572,-3587,-3600,-3614,-3628,-3639,-3657,-3682,-3703,-3732,-3757,-3780,-3803,-3825,
+-3848,-3870,-3896,-3921,-3946,-3967,-3985,-3991,-3990,-3988,-4014,-4061,-4101,-4127,-4138,-4141,-4148,-4161,-4169,-4180,
+-4190,-4196,-4205,-4210,-4217,-4229,-4246,-4257,-4274,-4293,-4309,-4327,-4351,-4374,-4407,-4453,-4477,-4493,-4512,-4531,
+-4560,-4589,-4612,-4635,-4648,-4654,-4653,-4642,-4633,-4630,-4633,-4647,-4666,-4681,-4689,-4691,-4688,-4675,-4657,-4638,
+-4618,-4604,-4591,-4575,-4565,-4567,-4579,-4593,-4611,-4629,-4643,-4656,-4680,-4718,-4756,-4776,-4771,-4739,-4694,-4650,
+-4619,-4611,-4615,-4612,-4602,-4582,-4572,-4576,-4583,-4586,-4584,-4582,-4585,-4591,-4597,-4602,-4605,-4615,-4628,-4637,
+-4643,-4659,-4679,-4694,-4692,-4675,-4668,-4669,-4677,-4696,-4705,-4701,-4700,-4695,-4702,-4716,-4727,-4737,-4741,-4755,
+-4770,-4782,-4800,-4816,-4828,-4842,-4850,-4860,-4873,-4888,-4906,-4926,-4945,-4965,-4983,-5008,-5036,-5062,-5089,-5107,
+-5115,-5119,-5124,-5129,-5136,-5145,-5159,-5174,-5193,-5210,-5229,-5245,-5263,-5279,-5295,-5313,-5331,-5352,-5374,-5386,
+-5394,-5397,-5396,-5390,-5385,-5380,-5380,-5375,-5374,-5371,-5367,-5364,-5371,-5384,-5419,-5456,-5476,-5482,-5485,-5488,
+-5477,-5446,-5401,-5366,-5339,-5320,-5317,-5315,-5297,-5278,-5265,-5260,-5259,-5257,-5255,-5254,-5255,-5255,-5258,-5273,
+-5279,-5260,-5244,-5277,-5292,-5279,-5267,-5266,-5273,-5272,-5272,-5273,-5275,-5277,-5274,-5265,-5259,-5256,-5252,-5249,
+-5245,-5237,-5233,-5228,-5225,-5221,-5215,-5208,-5201,-5207,-5207,-5193,-5172,-5166,-5177,-5185,-5180,-5173,-5167,-5165,
+-5160,-5159,-5161,-5157,-5155,-5161,-5161,-5153,-5141,-5125,-5113,-5106,-5102,-5099,-5101,-5112,-5105,-5105,-5118,-5112,
+-5103,-5099,-5091,-5083,-5078,-5059,-5051,-5044,-5028,-5013,-5002,-4987,-4979,-4983,-4988,-4992,-4996,-4985,-4967,-4948,
+-4940,-4933,-4939,-4941,-4937,-4933,-4921,-4905,-4898,-4897,-4897,-4898,-4889,-4870,-4855,-4840,-4832,-4825,-4816,-4805,
+-4792,-4779,-4765,-4763,-4751,-4751,-4751,-4742,-4720,-4696,-4694,-4700,-4682,-4667,-4651,-4635,-4633,-4631,-4616,-4588,
+-4556,-4536,-4530,-4530,-4513,-4489,-4483,-4480,-4466,-4449,-4436,-4427,-4409,-4403,-4390,-4373,-4356,-4336,-4314,-4301,
+-4302,-4308,-4303,-4291,-4286,-4293,-4291,-4290,-4292,-4296,-4286,-4274,-4270,-4260,-4253,-4251,-4246,-4247,-4241,-4229,
+-4218,-4206,-4197,-4191,-4183,-4161,-4149,-4144,-4133,-4127,-4131,-4137,-4129,-4110,-4097,-4079,-4061,-4044,-4028,-4011,
+-3989,-3965,-3943,-3921,-3900,-3878,-3856,-3834,-3814,-3796,-3775,-3754,-3733,-3713,-3695,-3676,-3661,-3650,-3632,-3615,
+-3599,-3584,-3572,-3561,-3550,-3537,-3524,-3508,-3492,-3477,-3464,-3450,-3438,-3428,-3417,-3405,-3392,-3380,-3367,-3357,
+-3346,-3334,-3322,-3311,-3300,-3291,-3281,-3270,-3258,-3246,-3234,-3221,-3211,-3201,-3191,-3182,-3174,-3164,-3154,-3141,
+-3133,-3127,-3121,-3114,-3106,-3093,-3078,-3064,-3051,-3040,-3029,-3015,-2997,-2981,-2962,-2944,-2926,-2910,-2893,-2877,
+-2863,-2848,-2831,-2813,-2789,-2769,-2751,-2735,-2718,-2701,-2689,-2682,-2669,-2653,-2648,-2637,-2622,-2606,-2596,-2588,
+-2580,-2571,-2564,-2558,-2550,-2540,-2528,-2517,-2508,-2499,-2490,-2480,-2471,-2460,-2450,-2442,-2434,-2422,-2410,-2401,
+-2391,-2380,-2368,-2354,-2341,-2329,-2318,-2308,-2296,-2284,-2274,-2261,-2245,-2228,-2210,-2189,-2166,-2143,-2119,-2096,
+-2072,-2049,-2025,-2006,-1988,-1969,-1951,-1934,-1920,-1907,-1898,-1892,-1889,-1888,-1887,-1872,-1838,-1792,-1746,-1692,
+-1601,-1483,-1443,-1475,-1519,-1544,-1551,-1545,-1534,-1517,-1498,-1479,-1454,-1433,-1409,-1387,-1366,-1344,-1326,-1308,
+-1290,-1273,-1253,-1232,-1218,-1199,-1176,-1152,-1130,-1108,-1087,-1065,-1042,-1015,-985,-964,-947,-919,-887,-857,
+-829,-801,-771,-740,-713,-688,-663,-638,-612,-588,-564,-538,-509,-477,-443,-408,-378,-359,-334,-304,
+-271,-239,-201,-162,-126,-90,-56,-24,6,40,75,113,153,191,226,258,289,324,361,400,
+444,497,572,666,738,784,823,863,912,963,1004,1036,1057,1087,1120,1154,1189,1224,1258,1292,
+1328,1368,1407,1449,1492,1538,1582,1621,1637,1661,1695,1717,1733,1740,1736,1726,1709,1687,1662,1635,
+1607,1581,1556,1536,1520,1510,1507,1507,1507,1503,1504,1505,1507,1516,1532,1553,1573,1595,1623,1648,
+1676,1697,1710,1714,1714,1694,1654,1604,1545,1494,1449,1410,1364,1317,1279,1248,1217,1193,1175,1164,
+1156,1157,1155,1153,1152,1151,1148,1151,1161,1176,1184,1193,1208,1228,1246,1269,1292,1308,1318,1326,
+1331,1331,1332,1331,1328,1330,1327,1324,1318,1310,1301,1291,1282,1274,1270,1269,1266,1263,1261,1257,
+1252,1246,1243,1248,1260,1271,1272,1269,1265,1261,1252,1239,1227,1226,1226,1219,1201,1179,1169,1170,
+1173,1181,1183,1178,1170,1158,1141,1123,1106,1092,1088,1090,1087,1084,1076,1068,1056,1045,1042,1039,
+1034,1025,1010,994,983,974,969,965,962,960,958,952,945,940,938,938,939,938,935,928,
+921,915,912,910,910,913,916,915,907,900,895,894,889,884,883,879,870,858,850,844,
+836,826,816,809,803,794,787,778,771,765,759,754,752,749,748,752,750,752,756,759,
+763,766,770,773,777,781,785,788,792,792,793,794,794,797,799,803,806,808,810,817,
+821,820,822,823,826,831,834,841,848,853,860,867,879,892,908,922,934,946,956,966,
+974,981,984,991,997,1004,1015,1025,1035,1047,1059,1072,1083,1094,1103,1109,1117,1125,1136,1154,
+1175,1201,1233,1265,1299,1285,1312,1342,1375,1407,1433,1450,1459,1462,1463,1470,1471,1470,1468,1474,
+1481,1490,1497,1507,1510,1508,1505,1506,1512,1520,1528,1535,1542,1551,1555,1559,1567,1574,1583,1593,
+1600,1607,1617,1632,1648,1670,1691,1716,1738,1756,1777,1802,1828,1857,1875,1885,1901,1910,1915,1907,
+1886,1863,1839,1823,1812,1803,1791,1771,1752,1737,1724,1712,1697,1688,1686,1688,1693,1704,1711,1722,
+1734,1747,1760,1770,1775,1778,1777,1774,1775,1779,1784,1787,1789,1789,1787,1783,1778,1772,1769,1767,
+1770,1771,1773,1775,1784,1796,1808,1820,1824,1826,1826,1828,1831,1835,1841,1849,1858,1873,1894,1915,
+1935,1951,1963,1976,1989,1995,1993,1984,1962,1936,1915,1905,1907,1924,1968,2049,2160,2248,2307,2342,
+2355,2347,2307,2280,2296,2320,2338,2351,2357,2361,2361,2357,2355,2357,2357,2359,2365,2370,2379,2389,
+2400,2409,2419,2432,2447,2462,2476,2495,2509,2524,2536,2545,2558,2580,2613,2652,2682,2701,2714,2728,
+2741,2756,2760,2763,2774,2787,2809,2836,2865,2887,2913,2942,2968,2991,3020,3050,3079,3098,3102,3091,
+3068,3048,3038,3058,3089,3122,3156,3189,3209,3220,3225,3236,3247,3260,3274,3287,3300,3316,3331,3345,
+3354,3362,3365,3365,3361,3352,3343,3328,3310,3294,3279,3261,3246,3250,3231,3161,3094,3068,3062,3060,
+3052,3033,3002,2967,2940,2913,2879,2838,2797,2766,2741,2717,2693,2671,2653,2636,2614,2589,2575,2569,
+2565,2560,2550,2536,2524,2516,2509,2501,2492,2482,2469,2446,2412,2383,2367,2360,2358,2362,2376,2389,
+2394,2390,2384,2370,2342,2310,2284,2265,2246,2227,2210,2197,2187,2174,2155,2131,2103,2077,2050,2022,
+1993,1970,1946,1918,1890,1861,1838,1819,1800,1781,1763,1742,1715,1682,1641,1601,1563,1532,1509,1503,
+1508,1520,1538,1557,1577,1589,1598,1601,1602,1597,1591,1583,1574,1565,1555,1545,1535,1522,1509,1496,
+1488,1484,1474,1456,1441,1418,1383,1344,1316,1298,1275,1249,1223,1197,1163,1129,1099,1070,1040,1011,
+982,955,910,873,818,765,703,646,587,532,479,434,401,370,342,310,277,240,198,159,
+134,126,110,87,61,31,-2,-34,-63,-91,-115,-138,-158,-175,-190,-201,-210,-216,-221,-224,
+-225,-225,-225,-225,-226,-229,-233,-241,-251,-265,-283,-304,-329,-357,-389,-424,-462,-500,-541,-583,
+-627,-674,-721,-770,-820,-872,-927,-985,-1043,-1094,-1144,-1188,-1222,-1259,-1294,-1325,-1363,-1396,-1431,-1468,
+-1511,-1554,-1593,-1617,-1624,-1636,-1651,-1672,-1695,-1718,-1742,-1767,-1792,-1818,-1844,-1871,-1898,-1926,-1954,-1982,
+-2012,-2045,-2080,-2113,-2140,-2168,-2189,-2208,-2233,-2271,-2304,-2334,-2359,-2379,-2394,-2415,-2430,-2449,-2466,-2482,
+-2503,-2513,-2531,-2553,-2576,-2610,-2652,-2691,-2729,-2763,-2789,-2808,-2821,-2835,-2860,-2882,-2889,-2897,-2905,-2911,
+-2925,-2941,-2957,-2978,-3000,-3023,-3049,-3080,-3116,-3152,-3198,-3231,-3270,-3317,-3356,-3396,-3436,-3475,-3505,-3526,
+-3531,-3534,-3544,-3556,-3569,-3582,-3595,-3609,-3621,-3637,-3650,-3665,-3682,-3701,-3721,-3741,-3764,-3786,-3808,-3831,
+-3854,-3878,-3902,-3921,-3942,-3963,-3982,-4002,-4017,-4025,-4034,-4057,-4087,-4111,-4131,-4144,-4165,-4192,-4209,-4216,
+-4212,-4205,-4200,-4199,-4196,-4197,-4205,-4215,-4228,-4246,-4263,-4283,-4305,-4329,-4348,-4372,-4397,-4415,-4431,-4443,
+-4450,-4458,-4465,-4475,-4492,-4501,-4500,-4503,-4505,-4509,-4507,-4505,-4509,-4518,-4530,-4538,-4542,-4546,-4547,-4538,
+-4527,-4515,-4503,-4489,-4473,-4469,-4475,-4488,-4513,-4546,-4582,-4625,-4676,-4730,-4778,-4816,-4847,-4866,-4851,-4808,
+-4762,-4723,-4700,-4694,-4693,-4692,-4683,-4669,-4662,-4666,-4671,-4673,-4670,-4670,-4672,-4672,-4676,-4681,-4686,-4692,
+-4701,-4714,-4722,-4726,-4744,-4762,-4766,-4760,-4752,-4754,-4766,-4775,-4774,-4767,-4763,-4773,-4786,-4796,-4802,-4805,
+-4807,-4809,-4831,-4850,-4868,-4883,-4893,-4900,-4905,-4921,-4937,-4954,-4971,-4991,-5008,-5025,-5044,-5070,-5093,-5117,
+-5140,-5159,-5172,-5183,-5193,-5201,-5203,-5209,-5217,-5233,-5251,-5266,-5281,-5297,-5313,-5327,-5340,-5358,-5374,-5393,
+-5405,-5420,-5429,-5432,-5434,-5438,-5445,-5448,-5451,-5450,-5450,-5453,-5457,-5459,-5463,-5468,-5470,-5470,-5474,-5492,
+-5519,-5543,-5559,-5564,-5552,-5519,-5473,-5447,-5411,-5389,-5375,-5359,-5344,-5327,-5316,-5322,-5340,-5352,-5341,-5324,
+-5332,-5349,-5334,-5321,-5319,-5328,-5353,-5377,-5371,-5351,-5337,-5336,-5339,-5339,-5335,-5327,-5329,-5325,-5318,-5312,
+-5306,-5302,-5296,-5291,-5288,-5285,-5283,-5282,-5278,-5268,-5262,-5264,-5259,-5258,-5241,-5227,-5219,-5217,-5224,-5239,
+-5237,-5229,-5219,-5215,-5224,-5219,-5210,-5202,-5193,-5192,-5192,-5198,-5185,-5178,-5173,-5167,-5155,-5145,-5137,-5139,
+-5143,-5148,-5147,-5137,-5135,-5154,-5144,-5124,-5108,-5103,-5100,-5093,-5085,-5071,-5053,-5037,-5023,-5019,-5033,-5037,
+-5016,-5003,-4995,-4982,-4979,-4977,-4975,-4968,-4961,-4963,-4963,-4956,-4943,-4937,-4939,-4932,-4920,-4908,-4905,-4902,
+-4895,-4883,-4873,-4862,-4845,-4831,-4818,-4810,-4790,-4787,-4787,-4768,-4741,-4733,-4737,-4730,-4702,-4673,-4658,-4645,
+-4632,-4626,-4610,-4589,-4573,-4561,-4539,-4531,-4525,-4509,-4488,-4475,-4464,-4466,-4463,-4449,-4433,-4418,-4401,-4384,
+-4365,-4348,-4345,-4327,-4307,-4315,-4334,-4346,-4356,-4360,-4360,-4354,-4341,-4331,-4314,-4297,-4290,-4281,-4274,-4274,
+-4262,-4251,-4250,-4243,-4236,-4230,-4223,-4219,-4213,-4197,-4181,-4170,-4162,-4159,-4152,-4136,-4113,-4092,-4073,-4055,
+-4036,-4015,-3993,-3971,-3947,-3924,-3898,-3875,-3853,-3835,-3813,-3791,-3772,-3752,-3733,-3713,-3695,-3678,-3665,-3651,
+-3637,-3623,-3607,-3593,-3580,-3568,-3558,-3545,-3532,-3518,-3505,-3491,-3478,-3465,-3453,-3442,-3432,-3421,-3409,-3399,
+-3389,-3379,-3368,-3355,-3343,-3332,-3322,-3313,-3302,-3290,-3279,-3268,-3258,-3246,-3237,-3228,-3221,-3212,-3203,-3191,
+-3179,-3168,-3159,-3151,-3143,-3131,-3121,-3109,-3095,-3082,-3068,-3052,-3035,-3017,-2999,-2982,-2964,-2946,-2929,-2912,
+-2896,-2881,-2865,-2847,-2831,-2818,-2798,-2773,-2751,-2735,-2723,-2713,-2707,-2698,-2684,-2675,-2664,-2651,-2635,-2622,
+-2613,-2606,-2599,-2592,-2585,-2578,-2571,-2565,-2558,-2547,-2534,-2522,-2510,-2499,-2489,-2481,-2474,-2466,-2455,-2445,
+-2437,-2428,-2416,-2402,-2387,-2373,-2360,-2348,-2336,-2325,-2312,-2301,-2287,-2272,-2255,-2235,-2213,-2190,-2167,-2142,
+-2117,-2094,-2070,-2047,-2027,-2007,-1990,-1975,-1961,-1947,-1935,-1928,-1924,-1922,-1917,-1910,-1892,-1857,-1819,-1792,
+-1773,-1744,-1688,-1644,-1621,-1605,-1593,-1580,-1567,-1559,-1544,-1523,-1502,-1480,-1458,-1437,-1415,-1392,-1371,-1351,
+-1332,-1314,-1297,-1282,-1267,-1250,-1232,-1211,-1185,-1159,-1136,-1112,-1088,-1063,-1038,-1012,-987,-965,-940,-911,
+-881,-851,-822,-792,-763,-737,-716,-694,-671,-649,-625,-600,-570,-535,-499,-462,-422,-387,-360,-338,
+-321,-304,-280,-248,-213,-174,-137,-99,-62,-31,0,36,71,111,154,198,238,271,308,348,
+400,469,576,663,711,752,787,830,877,917,945,965,994,1035,1071,1104,1138,1178,1216,1250,
+1285,1329,1370,1413,1453,1493,1533,1568,1575,1595,1623,1653,1669,1678,1677,1668,1653,1631,1605,1578,
+1549,1520,1494,1471,1453,1443,1436,1430,1426,1423,1421,1420,1421,1427,1439,1453,1472,1502,1529,1554,
+1582,1615,1638,1642,1644,1636,1604,1554,1502,1452,1416,1374,1333,1283,1233,1194,1167,1146,1132,1117,
+1109,1107,1109,1108,1109,1105,1104,1098,1100,1107,1111,1117,1125,1140,1154,1167,1187,1208,1223,1232,
+1242,1248,1252,1256,1257,1260,1261,1262,1264,1263,1260,1258,1254,1247,1239,1231,1224,1217,1208,1199,
+1196,1195,1191,1183,1175,1169,1167,1170,1174,1179,1180,1173,1165,1154,1142,1134,1133,1131,1125,1114,
+1100,1093,1091,1093,1096,1100,1111,1110,1096,1078,1065,1051,1039,1034,1034,1030,1026,1023,1012,996,
+982,981,984,982,969,957,945,930,916,910,909,912,916,918,914,900,886,878,876,878,
+881,882,878,868,860,858,859,859,859,857,857,859,853,846,839,833,829,823,814,806,
+799,792,784,775,768,761,753,745,737,729,725,719,716,714,713,714,716,718,722,729,
+734,739,745,750,757,761,766,770,773,775,776,777,777,779,781,785,789,793,795,797,
+797,796,794,795,798,804,809,814,821,829,837,845,854,863,875,889,902,914,923,931,
+938,944,952,960,970,979,991,1002,1015,1027,1039,1049,1061,1072,1083,1091,1096,1101,1109,1120,
+1136,1162,1190,1220,1253,1285,1236,1256,1277,1295,1312,1326,1339,1355,1373,1393,1405,1417,1436,1443,
+1444,1448,1447,1453,1453,1451,1453,1458,1467,1478,1490,1498,1502,1507,1512,1518,1524,1529,1535,1542,
+1549,1559,1570,1583,1594,1609,1629,1654,1684,1723,1754,1759,1762,1780,1797,1813,1826,1838,1844,1842,
+1832,1816,1797,1779,1762,1742,1717,1693,1676,1668,1664,1683,1705,1694,1669,1658,1658,1662,1670,1681,
+1694,1706,1718,1727,1733,1737,1736,1737,1737,1739,1741,1741,1743,1741,1735,1727,1718,1713,1709,1708,
+1707,1705,1705,1710,1721,1734,1748,1761,1770,1775,1780,1785,1789,1791,1794,1797,1805,1819,1839,1860,
+1883,1905,1921,1939,1951,1956,1955,1948,1939,1921,1903,1891,1886,1890,1904,1939,2007,2112,2210,2278,
+2318,2343,2342,2303,2277,2294,2314,2326,2331,2331,2329,2325,2325,2326,2325,2324,2325,2329,2336,2345,
+2354,2365,2378,2390,2402,2418,2433,2453,2474,2494,2517,2539,2559,2577,2599,2620,2643,2666,2688,2712,
+2734,2752,2763,2778,2788,2791,2795,2819,2858,2892,2921,2946,2978,3007,3036,3064,3083,3091,3103,3104,
+3095,3088,3081,3095,3135,3165,3183,3204,3224,3240,3254,3269,3284,3299,3314,3328,3343,3357,3368,3378,
+3386,3389,3390,3388,3383,3375,3365,3355,3340,3323,3299,3273,3259,3244,3226,3210,3197,3185,3155,3123,
+3103,3087,3054,3028,3009,2996,2977,2954,2924,2889,2859,2830,2803,2771,2727,2686,2641,2592,2550,2523,
+2504,2494,2483,2470,2455,2442,2432,2417,2403,2398,2397,2399,2394,2373,2342,2317,2308,2310,2324,2341,
+2362,2380,2388,2384,2364,2339,2320,2304,2294,2281,2272,2264,2259,2255,2246,2229,2207,2180,2142,2097,
+2050,2009,1971,1935,1905,1870,1839,1814,1791,1767,1738,1706,1668,1630,1588,1548,1519,1500,1496,1503,
+1516,1533,1555,1591,1641,1668,1680,1676,1670,1664,1649,1632,1618,1605,1592,1578,1562,1546,1526,1508,
+1487,1475,1470,1462,1446,1425,1400,1370,1341,1312,1284,1256,1228,1200,1171,1142,1111,1081,1050,1019,
+985,949,917,893,868,829,768,688,627,585,543,501,462,425,390,352,322,288,249,220,
+186,156,130,103,74,45,18,-7,-34,-59,-82,-103,-123,-141,-157,-172,-185,-196,-206,-214,
+-222,-227,-233,-238,-243,-247,-253,-259,-267,-276,-287,-302,-321,-341,-364,-391,-419,-451,-486,-524,
+-564,-607,-654,-702,-755,-809,-864,-923,-982,-1043,-1104,-1164,-1222,-1275,-1322,-1372,-1421,-1463,-1507,-1550,
+-1582,-1597,-1614,-1629,-1651,-1672,-1675,-1679,-1691,-1706,-1725,-1744,-1765,-1789,-1812,-1840,-1869,-1899,-1929,-1960,
+-1991,-2022,-2055,-2088,-2123,-2161,-2198,-2230,-2250,-2275,-2305,-2338,-2368,-2397,-2426,-2458,-2491,-2519,-2537,-2543,
+-2556,-2583,-2593,-2613,-2628,-2655,-2683,-2707,-2729,-2747,-2765,-2783,-2799,-2813,-2826,-2839,-2857,-2877,-2891,-2897,
+-2905,-2919,-2936,-2957,-2981,-3009,-3040,-3074,-3109,-3148,-3188,-3233,-3276,-3321,-3369,-3419,-3460,-3507,-3564,-3610,
+-3636,-3633,-3628,-3633,-3641,-3646,-3650,-3657,-3665,-3674,-3685,-3695,-3707,-3721,-3737,-3754,-3772,-3791,-3812,-3832,
+-3853,-3873,-3891,-3910,-3929,-3947,-3965,-3982,-3998,-4013,-4028,-4045,-4063,-4080,-4099,-4116,-4134,-4154,-4174,-4193,
+-4210,-4219,-4224,-4234,-4237,-4231,-4224,-4227,-4234,-4247,-4264,-4288,-4314,-4341,-4364,-4385,-4412,-4440,-4469,-4491,
+-4505,-4513,-4521,-4529,-4533,-4538,-4539,-4539,-4545,-4549,-4555,-4563,-4565,-4567,-4579,-4583,-4582,-4577,-4563,-4543,
+-4530,-4524,-4516,-4508,-4504,-4505,-4503,-4509,-4519,-4534,-4553,-4580,-4625,-4685,-4750,-4811,-4858,-4889,-4899,-4906,
+-4898,-4866,-4825,-4789,-4764,-4760,-4769,-4773,-4771,-4762,-4757,-4759,-4762,-4760,-4758,-4754,-4751,-4750,-4753,-4758,
+-4763,-4770,-4779,-4795,-4803,-4810,-4819,-4835,-4844,-4844,-4835,-4824,-4818,-4801,-4750,-4703,-4745,-4800,-4826,-4857,
+-4875,-4879,-4875,-4867,-4892,-4924,-4944,-4963,-4969,-4970,-4972,-4989,-5003,-5022,-5042,-5059,-5074,-5087,-5104,-5122,
+-5145,-5173,-5198,-5219,-5238,-5253,-5267,-5275,-5281,-5286,-5294,-5305,-5311,-5319,-5338,-5354,-5369,-5383,-5395,-5410,
+-5424,-5442,-5454,-5464,-5465,-5473,-5483,-5492,-5499,-5503,-5510,-5520,-5527,-5533,-5541,-5545,-5546,-5550,-5548,-5549,
+-5547,-5547,-5551,-5559,-5582,-5607,-5602,-5581,-5571,-5558,-5540,-5513,-5481,-5452,-5436,-5422,-5427,-5427,-5411,-5403,
+-5408,-5409,-5404,-5400,-5394,-5403,-5413,-5410,-5395,-5395,-5414,-5423,-5419,-5413,-5404,-5402,-5397,-5386,-5386,-5387,
+-5381,-5374,-5370,-5367,-5370,-5365,-5360,-5349,-5340,-5333,-5338,-5336,-5330,-5328,-5328,-5316,-5312,-5311,-5296,-5280,
+-5272,-5273,-5278,-5289,-5294,-5297,-5285,-5268,-5259,-5263,-5259,-5246,-5241,-5237,-5231,-5218,-5226,-5235,-5224,-5213,
+-5214,-5215,-5217,-5222,-5224,-5220,-5223,-5215,-5199,-5185,-5171,-5160,-5152,-5141,-5126,-5118,-5119,-5119,-5106,-5088,
+-5065,-5061,-5070,-5067,-5057,-5042,-5029,-5026,-5023,-5010,-4999,-4990,-4993,-5000,-4996,-4984,-4972,-4979,-4984,-4975,
+-4961,-4951,-4944,-4941,-4943,-4937,-4926,-4907,-4892,-4875,-4848,-4830,-4826,-4824,-4821,-4801,-4780,-4766,-4763,-4749,
+-4732,-4715,-4684,-4646,-4613,-4612,-4611,-4603,-4589,-4583,-4577,-4563,-4541,-4519,-4501,-4486,-4484,-4485,-4487,-4481,
+-4456,-4429,-4419,-4419,-4409,-4397,-4394,-4401,-4413,-4419,-4411,-4400,-4392,-4391,-4385,-4370,-4356,-4344,-4333,-4325,
+-4311,-4299,-4300,-4295,-4288,-4285,-4281,-4272,-4264,-4257,-4240,-4221,-4209,-4193,-4177,-4161,-4149,-4136,-4119,-4100,
+-4077,-4056,-4039,-4018,-3994,-3971,-3945,-3918,-3893,-3871,-3846,-3825,-3804,-3786,-3766,-3745,-3725,-3706,-3690,-3676,
+-3661,-3648,-3636,-3622,-3607,-3595,-3583,-3572,-3561,-3549,-3537,-3525,-3514,-3503,-3493,-3483,-3473,-3463,-3453,-3442,
+-3431,-3421,-3409,-3399,-3388,-3377,-3368,-3357,-3347,-3336,-3323,-3312,-3301,-3293,-3283,-3274,-3265,-3257,-3250,-3237,
+-3225,-3213,-3200,-3188,-3178,-3170,-3161,-3149,-3135,-3121,-3108,-3090,-3074,-3055,-3036,-3020,-3003,-2985,-2967,-2950,
+-2932,-2915,-2896,-2879,-2862,-2848,-2836,-2822,-2805,-2788,-2769,-2755,-2748,-2741,-2732,-2724,-2710,-2698,-2688,-2677,
+-2662,-2651,-2642,-2633,-2624,-2615,-2606,-2596,-2589,-2585,-2577,-2570,-2559,-2548,-2537,-2526,-2518,-2510,-2503,-2494,
+-2485,-2478,-2468,-2456,-2442,-2425,-2410,-2396,-2382,-2369,-2356,-2344,-2334,-2322,-2305,-2287,-2266,-2244,-2220,-2195,
+-2169,-2144,-2120,-2098,-2078,-2059,-2037,-2019,-2004,-1993,-1981,-1968,-1957,-1949,-1940,-1930,-1920,-1909,-1894,-1874,
+-1850,-1826,-1798,-1742,-1690,-1667,-1644,-1624,-1607,-1587,-1561,-1543,-1531,-1517,-1501,-1482,-1458,-1435,-1413,-1390,
+-1368,-1344,-1324,-1308,-1292,-1276,-1259,-1242,-1220,-1195,-1171,-1144,-1118,-1095,-1072,-1050,-1027,-1005,-979,-953,
+-927,-902,-874,-847,-821,-797,-769,-742,-718,-694,-670,-648,-623,-595,-564,-529,-488,-450,-411,-373,
+-333,-304,-283,-261,-244,-226,-202,-168,-135,-102,-69,-36,-3,33,72,111,156,206,260,308,
+364,443,538,599,641,683,734,786,824,845,865,899,946,990,1026,1062,1104,1144,1181,1218,
+1253,1291,1333,1372,1407,1443,1472,1488,1519,1547,1582,1605,1615,1617,1614,1605,1590,1570,1547,1521,
+1492,1464,1437,1413,1393,1380,1373,1368,1358,1350,1346,1347,1348,1357,1366,1381,1392,1414,1428,1455,
+1494,1514,1545,1568,1573,1563,1530,1464,1397,1337,1290,1250,1210,1160,1126,1098,1080,1063,1058,1051,
+1048,1052,1055,1054,1056,1054,1053,1054,1051,1050,1047,1055,1062,1076,1088,1093,1101,1112,1120,1132,
+1142,1147,1154,1162,1169,1176,1181,1189,1193,1197,1195,1195,1198,1199,1196,1195,1193,1189,1183,1176,
+1166,1154,1139,1128,1120,1117,1111,1099,1088,1081,1079,1082,1090,1098,1095,1082,1068,1058,1047,1047,
+1052,1054,1051,1038,1028,1025,1028,1039,1049,1052,1050,1045,1032,1014,998,984,977,974,972,972,
+970,955,943,935,928,928,926,920,910,895,879,870,867,867,869,873,872,862,848,835,
+829,826,824,823,826,825,818,813,815,813,808,807,804,800,794,786,781,775,771,768,
+765,758,751,746,740,732,725,716,706,696,693,688,686,684,684,686,688,693,698,702,
+709,717,724,729,737,744,747,749,751,755,758,760,761,763,765,768,770,772,775,777,
+780,783,779,776,774,776,787,791,795,802,810,818,828,839,853,865,878,886,897,907,
+913,920,929,937,947,956,967,977,990,1004,1015,1027,1039,1051,1061,1070,1078,1083,1090,1101,
+1111,1127,1142,1164,1189,1214,1236,1125,1138,1155,1177,1198,1219,1241,1264,1284,1307,1335,1360,1388,
+1407,1408,1406,1401,1392,1386,1387,1392,1402,1413,1429,1443,1457,1469,1474,1480,1487,1496,1511,1517,
+1515,1519,1527,1545,1566,1582,1593,1604,1620,1640,1663,1682,1698,1715,1721,1721,1725,1728,1735,1737,
+1741,1743,1740,1734,1722,1706,1687,1669,1656,1650,1643,1639,1635,1635,1636,1633,1632,1632,1635,1644,
+1655,1665,1675,1683,1689,1687,1684,1683,1684,1686,1689,1694,1695,1693,1685,1677,1667,1660,1654,1650,
+1646,1648,1648,1653,1664,1674,1684,1697,1711,1719,1730,1738,1745,1750,1754,1758,1764,1776,1794,1813,
+1833,1856,1878,1894,1908,1913,1912,1910,1905,1892,1882,1871,1862,1858,1864,1886,1934,2009,2107,2205,
+2268,2307,2327,2321,2283,2252,2265,2283,2289,2292,2295,2295,2294,2299,2300,2302,2304,2306,2312,2322,
+2332,2345,2359,2372,2385,2397,2411,2426,2444,2463,2487,2513,2541,2569,2599,2630,2654,2676,2695,2714,
+2736,2752,2761,2770,2772,2776,2784,2812,2835,2854,2874,2899,2935,2976,3021,3078,3134,3156,3165,3164,
+3164,3165,3165,3160,3162,3170,3183,3202,3224,3243,3262,3280,3298,3315,3329,3345,3362,3377,3389,3396,
+3401,3403,3403,3398,3390,3379,3366,3352,3339,3324,3308,3290,3268,3247,3226,3207,3189,3174,3165,3161,
+3155,3141,3124,3106,3060,3019,3000,2976,2954,2925,2891,2865,2849,2833,2820,2792,2747,2688,2634,2586,
+2545,2514,2502,2466,2413,2371,2347,2342,2340,2337,2336,2336,2331,2330,2318,2293,2269,2253,2252,2267,
+2289,2321,2355,2385,2403,2401,2386,2376,2367,2363,2363,2367,2373,2375,2378,2374,2363,2336,2298,2249,
+2189,2128,2072,2020,1970,1918,1868,1823,1787,1755,1722,1685,1653,1623,1596,1571,1564,1567,1575,1607,
+1647,1669,1689,1732,1769,1786,1772,1741,1720,1712,1697,1673,1655,1639,1625,1609,1593,1576,1558,1540,
+1521,1502,1485,1466,1446,1426,1403,1380,1353,1325,1297,1269,1240,1211,1182,1153,1123,1094,1064,1034,
+1004,973,941,907,874,835,792,750,707,659,623,587,547,509,473,434,395,356,318,283,
+249,216,186,159,131,106,83,61,39,19,0,-20,-38,-56,-74,-92,-110,-127,-144,-161,
+-179,-195,-210,-225,-239,-251,-264,-274,-285,-295,-307,-318,-329,-343,-357,-374,-392,-414,-439,-467,
+-500,-536,-577,-623,-674,-728,-787,-847,-911,-975,-1041,-1106,-1170,-1231,-1290,-1346,-1398,-1445,-1488,-1526,
+-1564,-1601,-1637,-1660,-1666,-1671,-1680,-1688,-1696,-1704,-1714,-1729,-1744,-1765,-1787,-1812,-1841,-1870,-1901,-1934,
+-1967,-2000,-2032,-2067,-2102,-2139,-2175,-2211,-2245,-2278,-2311,-2343,-2373,-2402,-2432,-2465,-2496,-2520,-2546,-2571,
+-2600,-2624,-2646,-2655,-2664,-2682,-2693,-2704,-2720,-2737,-2750,-2764,-2779,-2792,-2802,-2812,-2822,-2832,-2848,-2863,
+-2874,-2885,-2902,-2923,-2949,-2978,-3011,-3047,-3086,-3130,-3175,-3222,-3268,-3316,-3364,-3412,-3460,-3506,-3561,-3625,
+-3683,-3728,-3749,-3738,-3729,-3722,-3716,-3717,-3722,-3727,-3733,-3740,-3747,-3756,-3766,-3777,-3789,-3803,-3819,-3834,
+-3847,-3858,-3872,-3885,-3900,-3915,-3932,-3949,-3965,-3979,-3994,-4007,-4021,-4033,-4047,-4064,-4079,-4094,-4108,-4122,
+-4137,-4151,-4165,-4178,-4193,-4200,-4206,-4215,-4224,-4231,-4234,-4241,-4256,-4278,-4310,-4344,-4374,-4404,-4434,-4463,
+-4487,-4511,-4534,-4556,-4575,-4591,-4606,-4616,-4630,-4645,-4654,-4668,-4683,-4695,-4709,-4723,-4726,-4723,-4709,-4691,
+-4666,-4650,-4638,-4624,-4609,-4604,-4594,-4590,-4600,-4608,-4619,-4635,-4653,-4674,-4698,-4732,-4776,-4820,-4845,-4861,
+-4870,-4865,-4851,-4827,-4796,-4776,-4765,-4771,-4790,-4808,-4817,-4823,-4824,-4832,-4838,-4840,-4833,-4828,-4833,-4835,
+-4835,-4838,-4841,-4846,-4856,-4869,-4883,-4902,-4909,-4906,-4920,-4923,-4920,-4902,-4881,-4853,-4793,-4738,-4736,-4798,
+-4866,-4906,-4932,-4946,-4959,-4965,-4949,-4949,-4994,-5036,-5051,-5058,-5063,-5070,-5081,-5100,-5117,-5131,-5144,-5158,
+-5172,-5187,-5207,-5232,-5255,-5279,-5303,-5324,-5340,-5356,-5363,-5369,-5377,-5379,-5385,-5392,-5402,-5414,-5419,-5436,
+-5448,-5466,-5477,-5488,-5496,-5502,-5511,-5518,-5527,-5532,-5539,-5556,-5563,-5574,-5587,-5594,-5602,-5611,-5618,-5624,
+-5627,-5626,-5622,-5614,-5608,-5606,-5609,-5626,-5652,-5669,-5671,-5660,-5646,-5637,-5625,-5578,-5537,-5519,-5511,-5506,
+-5502,-5496,-5498,-5501,-5497,-5487,-5479,-5468,-5479,-5491,-5488,-5471,-5469,-5483,-5493,-5488,-5479,-5471,-5461,-5457,
+-5448,-5448,-5450,-5439,-5429,-5419,-5416,-5425,-5423,-5420,-5416,-5402,-5399,-5400,-5397,-5395,-5395,-5389,-5384,-5374,
+-5351,-5339,-5333,-5339,-5342,-5323,-5316,-5325,-5332,-5334,-5333,-5332,-5323,-5311,-5302,-5285,-5272,-5267,-5284,-5282,
+-5270,-5256,-5249,-5251,-5254,-5253,-5255,-5253,-5257,-5271,-5265,-5239,-5218,-5206,-5199,-5195,-5186,-5177,-5164,-5156,
+-5146,-5131,-5113,-5110,-5111,-5114,-5104,-5089,-5076,-5072,-5064,-5054,-5048,-5050,-5043,-5038,-5049,-5055,-5040,-5023,
+-5014,-5019,-5027,-5023,-5018,-5013,-5004,-4987,-4969,-4967,-4963,-4939,-4910,-4887,-4873,-4858,-4865,-4860,-4836,-4797,
+-4780,-4791,-4785,-4768,-4742,-4706,-4677,-4665,-4653,-4640,-4635,-4631,-4620,-4609,-4597,-4584,-4566,-4548,-4529,-4525,
+-4522,-4514,-4508,-4507,-4498,-4483,-4469,-4463,-4475,-4482,-4483,-4480,-4472,-4461,-4441,-4416,-4401,-4397,-4394,-4387,
+-4379,-4373,-4357,-4348,-4343,-4339,-4333,-4321,-4308,-4293,-4280,-4266,-4255,-4236,-4217,-4199,-4181,-4162,-4148,-4134,
+-4118,-4100,-4082,-4061,-4041,-4018,-3995,-3969,-3940,-3912,-3886,-3863,-3842,-3819,-3797,-3773,-3756,-3739,-3721,-3706,
+-3691,-3674,-3659,-3646,-3634,-3619,-3604,-3596,-3583,-3574,-3565,-3556,-3548,-3539,-3529,-3520,-3510,-3499,-3490,-3478,
+-3469,-3459,-3450,-3438,-3428,-3419,-3411,-3402,-3394,-3381,-3368,-3354,-3343,-3332,-3323,-3314,-3308,-3300,-3292,-3284,
+-3272,-3257,-3243,-3229,-3217,-3207,-3196,-3179,-3165,-3158,-3146,-3133,-3115,-3094,-3077,-3061,-3042,-3023,-3004,-2986,
+-2968,-2950,-2928,-2909,-2890,-2876,-2863,-2849,-2837,-2829,-2817,-2797,-2790,-2782,-2774,-2768,-2759,-2747,-2738,-2733,
+-2720,-2706,-2692,-2678,-2666,-2653,-2642,-2633,-2624,-2615,-2608,-2604,-2601,-2594,-2586,-2579,-2570,-2559,-2549,-2540,
+-2533,-2526,-2518,-2505,-2493,-2478,-2462,-2447,-2432,-2419,-2407,-2395,-2382,-2369,-2354,-2339,-2319,-2298,-2276,-2251,
+-2226,-2201,-2176,-2151,-2127,-2104,-2090,-2072,-2053,-2037,-2024,-2012,-2001,-1990,-1977,-1962,-1948,-1934,-1918,-1904,
+-1889,-1864,-1834,-1796,-1749,-1715,-1686,-1665,-1647,-1625,-1607,-1588,-1568,-1550,-1536,-1517,-1496,-1473,-1448,-1425,
+-1400,-1378,-1356,-1333,-1316,-1301,-1287,-1266,-1247,-1225,-1199,-1171,-1148,-1123,-1099,-1077,-1056,-1034,-1015,-993,
+-969,-944,-919,-895,-870,-843,-814,-787,-765,-740,-716,-693,-663,-632,-597,-563,-528,-494,-461,-423,
+-383,-342,-300,-263,-230,-208,-195,-177,-157,-138,-118,-91,-60,-26,9,50,95,146,203,274,
+366,470,523,549,574,608,655,699,730,765,792,831,877,926,974,1020,1061,1099,1137,1178,
+1218,1258,1298,1334,1369,1399,1420,1422,1443,1477,1510,1531,1542,1543,1539,1529,1516,1498,1477,1453,
+1428,1402,1377,1354,1334,1317,1307,1301,1297,1287,1272,1262,1256,1261,1274,1284,1300,1320,1339,1365,
+1396,1423,1453,1476,1484,1477,1446,1383,1315,1247,1186,1131,1084,1053,1035,1024,1009,991,965,965,
+973,977,973,973,981,985,985,984,986,983,979,985,994,1004,1011,1017,1021,1021,1027,1034,
+1039,1043,1049,1058,1069,1081,1090,1098,1110,1118,1127,1131,1135,1138,1136,1132,1130,1127,1122,1119,
+1115,1110,1101,1088,1073,1059,1052,1048,1048,1043,1030,1019,1011,1005,1009,1019,1026,1018,1002,986,
+973,967,966,976,986,991,985,972,964,967,978,986,985,976,967,955,944,941,935,928,
+924,921,918,914,908,905,897,886,878,875,873,867,851,836,828,824,820,818,819,815,
+808,808,809,800,794,794,793,790,786,781,780,775,767,759,754,748,744,736,731,729,
+724,721,719,713,706,700,694,687,680,673,667,664,665,664,668,671,673,676,681,688,
+692,697,703,709,713,719,723,733,738,739,741,744,747,749,749,752,755,759,759,755,
+758,763,766,764,760,756,755,759,763,770,779,785,795,805,817,830,841,852,862,872,
+881,889,896,903,912,921,931,944,953,967,980,993,1006,1022,1035,1047,1054,1059,1064,1070,
+1075,1084,1091,1096,1099,1107,1116,1125,1089,1104,1117,1132,1152,1171,1189,1205,1221,1241,1266,1294,
+1321,1343,1353,1347,1341,1339,1338,1341,1350,1363,1379,1394,1409,1422,1437,1449,1457,1463,1471,1483,
+1492,1491,1489,1490,1509,1539,1565,1583,1587,1603,1625,1648,1666,1667,1652,1654,1653,1647,1653,1663,
+1677,1689,1695,1697,1692,1685,1671,1659,1647,1637,1630,1621,1617,1616,1616,1613,1611,1612,1615,1620,
+1630,1637,1646,1648,1647,1645,1643,1641,1641,1641,1640,1641,1642,1639,1634,1629,1621,1613,1606,1603,
+1599,1595,1598,1604,1613,1623,1632,1641,1652,1666,1680,1690,1701,1711,1722,1730,1737,1747,1763,1782,
+1801,1814,1832,1851,1862,1868,1870,1870,1870,1866,1861,1853,1847,1843,1843,1861,1903,1972,2067,2167,
+2239,2281,2303,2307,2280,2224,2194,2213,2236,2251,2262,2273,2278,2283,2284,2289,2297,2303,2309,2315,
+2324,2334,2346,2360,2380,2401,2423,2439,2455,2472,2492,2514,2540,2569,2604,2636,2660,2683,2703,2717,
+2733,2743,2746,2741,2724,2702,2691,2714,2747,2777,2792,2808,2846,2913,2993,3072,3125,3152,3157,3158,
+3159,3153,3154,3162,3169,3174,3179,3183,3199,3225,3250,3277,3299,3318,3338,3353,3366,3384,3397,3404,
+3408,3406,3402,3395,3386,3372,3353,3335,3320,3310,3295,3279,3260,3239,3214,3189,3164,3139,3114,3091,
+3080,3071,3071,3082,3108,3116,3106,3087,3064,3045,3011,2958,2918,2891,2886,2880,2869,2845,2814,2788,
+2749,2705,2673,2649,2598,2529,2471,2435,2428,2423,2412,2405,2405,2408,2390,2356,2318,2282,2252,2237,
+2242,2255,2282,2328,2380,2432,2469,2483,2486,2491,2495,2507,2517,2521,2525,2518,2505,2480,2448,2407,
+2356,2291,2213,2133,2052,1975,1908,1857,1823,1794,1769,1752,1734,1713,1684,1657,1655,1680,1715,1754,
+1792,1816,1836,1841,1839,1836,1824,1796,1770,1754,1736,1702,1677,1663,1649,1636,1618,1599,1580,1561,
+1542,1523,1503,1483,1462,1440,1418,1394,1369,1342,1315,1287,1257,1228,1199,1169,1139,1110,1081,1052,
+1023,994,966,936,905,871,835,804,772,737,703,668,629,591,552,512,474,436,400,366,
+333,302,275,248,223,200,179,160,146,131,116,100,83,65,45,22,0,-22,-48,-75,
+-103,-130,-157,-182,-209,-235,-260,-282,-301,-318,-332,-344,-353,-361,-369,-376,-383,-393,-405,-421,
+-441,-466,-497,-534,-578,-627,-681,-742,-807,-875,-946,-1019,-1091,-1163,-1233,-1299,-1361,-1417,-1464,-1509,
+-1549,-1585,-1615,-1646,-1666,-1676,-1682,-1689,-1695,-1701,-1708,-1716,-1726,-1741,-1759,-1781,-1806,-1836,-1866,-1900,
+-1934,-1967,-2001,-2037,-2075,-2114,-2153,-2191,-2228,-2265,-2299,-2334,-2369,-2402,-2434,-2465,-2494,-2522,-2550,-2577,
+-2604,-2629,-2651,-2671,-2687,-2699,-2709,-2721,-2730,-2739,-2747,-2754,-2764,-2774,-2781,-2786,-2791,-2796,-2803,-2812,
+-2823,-2837,-2854,-2876,-2902,-2929,-2961,-2999,-3041,-3088,-3137,-3187,-3237,-3286,-3334,-3386,-3436,-3486,-3535,-3586,
+-3636,-3684,-3729,-3761,-3768,-3769,-3764,-3759,-3761,-3768,-3771,-3775,-3778,-3783,-3787,-3792,-3797,-3803,-3811,-3820,
+-3827,-3833,-3840,-3849,-3859,-3870,-3883,-3897,-3913,-3927,-3941,-3955,-3970,-3984,-3998,-4013,-4029,-4044,-4057,-4070,
+-4082,-4095,-4108,-4120,-4130,-4139,-4147,-4154,-4162,-4171,-4181,-4191,-4203,-4216,-4233,-4253,-4277,-4307,-4340,-4371,
+-4398,-4423,-4451,-4485,-4523,-4561,-4597,-4626,-4652,-4677,-4697,-4720,-4738,-4757,-4776,-4796,-4816,-4835,-4847,-4848,
+-4839,-4821,-4804,-4789,-4772,-4753,-4739,-4733,-4736,-4728,-4726,-4728,-4731,-4737,-4747,-4762,-4773,-4789,-4807,-4817,
+-4824,-4824,-4819,-4809,-4790,-4760,-4725,-4697,-4676,-4678,-4702,-4743,-4786,-4829,-4861,-4884,-4902,-4909,-4909,-4909,
+-4911,-4914,-4915,-4915,-4920,-4927,-4934,-4943,-4958,-4974,-4987,-4994,-4999,-5004,-4998,-4983,-4965,-4942,-4914,-4858,
+-4806,-4817,-4888,-4970,-5006,-5028,-5038,-5026,-4997,-4986,-5036,-5100,-5132,-5147,-5153,-5160,-5174,-5188,-5197,-5207,
+-5211,-5228,-5240,-5250,-5264,-5284,-5308,-5336,-5360,-5381,-5389,-5391,-5411,-5426,-5442,-5451,-5459,-5460,-5465,-5474,
+-5473,-5481,-5494,-5509,-5520,-5521,-5525,-5546,-5556,-5571,-5583,-5583,-5591,-5603,-5611,-5625,-5638,-5651,-5660,-5666,
+-5674,-5678,-5684,-5695,-5705,-5717,-5726,-5732,-5737,-5741,-5744,-5741,-5742,-5744,-5753,-5768,-5773,-5760,-5715,-5653,
+-5619,-5614,-5626,-5625,-5613,-5597,-5591,-5592,-5583,-5566,-5562,-5567,-5566,-5560,-5546,-5526,-5528,-5555,-5564,-5551,
+-5535,-5526,-5520,-5518,-5513,-5511,-5505,-5498,-5489,-5481,-5475,-5482,-5481,-5479,-5470,-5465,-5466,-5458,-5439,-5430,
+-5443,-5440,-5429,-5420,-5414,-5409,-5401,-5380,-5373,-5368,-5364,-5366,-5372,-5384,-5393,-5387,-5360,-5326,-5303,-5297,
+-5307,-5310,-5322,-5325,-5316,-5305,-5309,-5316,-5320,-5311,-5315,-5312,-5292,-5284,-5275,-5263,-5253,-5244,-5237,-5230,
+-5220,-5211,-5198,-5179,-5166,-5154,-5149,-5150,-5152,-5145,-5130,-5124,-5125,-5125,-5114,-5091,-5065,-5056,-5071,-5094,
+-5109,-5108,-5095,-5070,-5061,-5073,-5075,-5068,-5059,-5047,-5033,-5018,-4993,-4968,-4955,-4949,-4940,-4925,-4908,-4898,
+-4888,-4865,-4834,-4816,-4809,-4800,-4776,-4750,-4735,-4728,-4703,-4663,-4645,-4653,-4656,-4650,-4640,-4628,-4618,-4607,
+-4595,-4579,-4573,-4557,-4540,-4542,-4559,-4561,-4560,-4558,-4549,-4540,-4532,-4518,-4512,-4505,-4486,-4467,-4454,-4452,
+-4443,-4431,-4415,-4401,-4401,-4395,-4389,-4374,-4357,-4339,-4326,-4310,-4291,-4274,-4254,-4238,-4227,-4207,-4188,-4168,
+-4149,-4128,-4114,-4095,-4077,-4055,-4033,-4008,-3981,-3953,-3927,-3903,-3880,-3858,-3836,-3814,-3797,-3776,-3754,-3738,
+-3728,-3713,-3696,-3681,-3668,-3653,-3638,-3625,-3616,-3604,-3592,-3581,-3574,-3567,-3559,-3550,-3543,-3532,-3523,-3511,
+-3502,-3492,-3485,-3476,-3465,-3457,-3448,-3440,-3431,-3421,-3414,-3400,-3388,-3375,-3363,-3354,-3346,-3337,-3329,-3318,
+-3309,-3296,-3283,-3268,-3253,-3242,-3232,-3220,-3207,-3193,-3178,-3155,-3132,-3125,-3111,-3097,-3081,-3064,-3046,-3028,
+-3009,-2989,-2969,-2948,-2926,-2905,-2884,-2870,-2860,-2850,-2836,-2827,-2823,-2817,-2810,-2802,-2791,-2781,-2773,-2766,
+-2762,-2756,-2742,-2725,-2708,-2694,-2682,-2671,-2662,-2654,-2648,-2642,-2639,-2636,-2634,-2631,-2625,-2617,-2606,-2594,
+-2585,-2574,-2565,-2555,-2541,-2526,-2510,-2496,-2483,-2470,-2458,-2445,-2434,-2420,-2405,-2390,-2375,-2358,-2335,-2310,
+-2283,-2257,-2232,-2206,-2184,-2163,-2142,-2123,-2107,-2091,-2075,-2061,-2048,-2034,-2020,-2006,-1989,-1968,-1946,-1928,
+-1917,-1913,-1889,-1858,-1833,-1797,-1757,-1724,-1698,-1673,-1652,-1630,-1608,-1588,-1569,-1550,-1531,-1508,-1481,-1455,
+-1427,-1404,-1383,-1363,-1342,-1323,-1307,-1292,-1273,-1249,-1225,-1199,-1174,-1151,-1130,-1105,-1083,-1062,-1043,-1024,
+-1003,-982,-962,-942,-922,-902,-877,-850,-819,-786,-756,-725,-696,-667,-639,-612,-582,-552,-521,-485,
+-444,-401,-357,-311,-266,-225,-195,-170,-146,-123,-107,-98,-83,-56,-22,16,65,131,213,306,
+396,454,482,500,519,553,588,620,644,673,717,769,825,875,921,967,1009,1053,1094,1135,
+1174,1214,1249,1279,1318,1350,1365,1375,1395,1429,1450,1454,1462,1461,1454,1443,1429,1412,1393,1371,
+1350,1327,1306,1286,1269,1253,1244,1241,1241,1239,1230,1211,1192,1186,1195,1206,1220,1235,1255,1268,
+1299,1327,1355,1378,1386,1386,1362,1318,1260,1192,1131,1074,1015,975,947,924,918,907,897,894,
+900,908,909,908,910,903,905,906,904,909,910,916,921,928,938,938,940,941,948,954,
+964,972,971,965,962,966,982,1001,1022,1038,1052,1064,1073,1082,1085,1081,1072,1066,1056,1052,
+1045,1039,1037,1034,1030,1025,1018,1010,1002,997,994,991,984,973,962,951,951,953,952,952,
+953,944,932,921,917,922,931,941,943,937,932,934,938,943,942,931,922,914,912,913,
+910,898,883,873,871,870,866,863,856,845,838,832,827,821,811,804,796,784,777,772,
+770,770,770,769,767,764,760,759,756,753,749,745,739,734,727,718,713,707,703,700,
+693,688,686,683,679,679,675,670,666,662,658,655,655,656,659,663,665,670,675,678,
+684,693,697,699,706,711,711,713,725,733,730,728,729,732,736,738,739,740,741,742,
+741,740,738,735,736,731,728,728,730,738,746,758,768,780,792,802,811,818,827,836,
+843,852,861,868,876,887,898,909,922,933,948,962,977,992,1008,1023,1038,1047,1051,1054,
+1058,1064,1067,1069,1063,1057,1060,1074,1089,1109,1120,1129,1136,1144,1150,1158,1171,1188,1212,1237,
+1258,1275,1290,1298,1308,1307,1300,1292,1293,1307,1326,1344,1359,1374,1394,1411,1425,1436,1444,1451,
+1456,1461,1464,1466,1471,1482,1503,1526,1546,1560,1566,1571,1588,1612,1627,1610,1587,1589,1598,1608,
+1620,1633,1643,1650,1651,1654,1651,1642,1630,1622,1613,1610,1604,1599,1596,1592,1589,1589,1593,1599,
+1609,1617,1618,1617,1612,1609,1608,1608,1609,1608,1605,1599,1594,1587,1579,1575,1568,1561,1556,1552,
+1549,1546,1547,1553,1559,1566,1575,1586,1597,1609,1619,1633,1650,1665,1681,1693,1703,1713,1728,1744,
+1758,1770,1785,1802,1813,1822,1829,1834,1840,1846,1848,1844,1837,1834,1836,1853,1892,1967,2066,2156,
+2226,2270,2293,2298,2286,2247,2183,2158,2182,2214,2241,2267,2278,2287,2292,2297,2302,2312,2324,2334,
+2343,2352,2362,2375,2393,2419,2453,2485,2515,2539,2557,2564,2571,2583,2602,2626,2649,2672,2692,2699,
+2699,2688,2667,2636,2611,2596,2605,2624,2646,2667,2708,2766,2830,2896,2957,3010,3049,3074,3082,3080,
+3080,3091,3107,3116,3124,3135,3150,3164,3180,3196,3218,3249,3279,3307,3332,3355,3375,3393,3409,3421,
+3427,3429,3424,3417,3406,3391,3373,3355,3335,3315,3297,3276,3255,3234,3212,3187,3163,3139,3121,3107,
+3096,3086,3077,3069,3065,3062,3059,3064,3064,3057,3054,3048,3029,2990,2948,2902,2871,2867,2860,2834,
+2817,2796,2777,2760,2745,2727,2700,2664,2630,2613,2598,2583,2573,2565,2547,2519,2480,2438,2401,2362,
+2323,2315,2341,2384,2419,2447,2476,2505,2526,2543,2559,2569,2569,2564,2556,2544,2525,2498,2462,2421,
+2371,2317,2260,2203,2148,2091,2038,1998,1967,1937,1907,1877,1853,1830,1809,1796,1798,1802,1818,1844,
+1871,1876,1866,1857,1842,1837,1827,1804,1776,1745,1732,1725,1714,1692,1664,1648,1632,1614,1595,1575,
+1556,1537,1518,1499,1479,1458,1437,1414,1390,1365,1338,1311,1283,1253,1224,1194,1164,1135,1106,1077,
+1047,1020,993,965,938,911,883,855,825,794,763,729,695,659,622,585,548,513,478,445,
+417,390,365,344,325,307,292,278,266,257,248,237,223,206,187,163,136,106,73,36,
+-1,-42,-84,-125,-166,-206,-244,-277,-306,-333,-358,-374,-387,-394,-398,-398,-397,-394,-393,-395,
+-400,-410,-427,-451,-482,-521,-567,-621,-681,-747,-818,-893,-972,-1051,-1129,-1205,-1276,-1343,-1404,-1459,
+-1507,-1551,-1588,-1618,-1639,-1658,-1673,-1683,-1690,-1695,-1700,-1706,-1714,-1723,-1736,-1752,-1773,-1798,-1825,-1856,
+-1890,-1923,-1958,-1995,-2032,-2069,-2106,-2145,-2183,-2222,-2261,-2299,-2335,-2372,-2407,-2441,-2473,-2505,-2535,-2563,
+-2590,-2617,-2641,-2664,-2684,-2701,-2715,-2727,-2737,-2744,-2750,-2754,-2756,-2757,-2758,-2758,-2758,-2759,-2764,-2770,
+-2778,-2789,-2804,-2822,-2845,-2872,-2903,-2938,-2978,-3022,-3071,-3122,-3173,-3225,-3277,-3329,-3382,-3435,-3486,-3535,
+-3582,-3625,-3664,-3694,-3723,-3745,-3758,-3768,-3777,-3785,-3790,-3793,-3795,-3795,-3794,-3793,-3793,-3792,-3793,-3795,
+-3797,-3797,-3799,-3801,-3806,-3813,-3822,-3833,-3846,-3860,-3874,-3890,-3906,-3922,-3938,-3956,-3973,-3991,-4008,-4024,
+-4039,-4053,-4067,-4078,-4090,-4099,-4108,-4116,-4123,-4130,-4139,-4147,-4157,-4169,-4183,-4200,-4221,-4242,-4268,-4296,
+-4328,-4363,-4399,-4438,-4474,-4512,-4552,-4590,-4630,-4670,-4705,-4736,-4765,-4790,-4814,-4834,-4854,-4872,-4893,-4913,
+-4931,-4942,-4943,-4937,-4925,-4914,-4905,-4898,-4887,-4878,-4873,-4867,-4855,-4852,-4848,-4851,-4856,-4863,-4874,-4883,
+-4893,-4900,-4900,-4897,-4891,-4874,-4856,-4831,-4798,-4769,-4738,-4716,-4708,-4717,-4737,-4776,-4846,-4918,-4956,-4975,
+-4980,-4984,-4987,-4987,-4990,-4992,-4994,-5000,-5005,-5014,-5028,-5041,-5049,-5061,-5074,-5080,-5080,-5070,-5052,-5033,
+-5011,-4975,-4922,-4938,-5005,-5034,-5050,-5057,-5068,-5082,-5090,-5092,-5092,-5136,-5185,-5207,-5220,-5228,-5243,-5251,
+-5259,-5247,-5247,-5277,-5287,-5299,-5309,-5327,-5349,-5371,-5382,-5375,-5327,-5322,-5399,-5459,-5492,-5511,-5521,-5520,
+-5515,-5523,-5524,-5532,-5543,-5557,-5570,-5581,-5594,-5606,-5605,-5609,-5630,-5639,-5646,-5653,-5667,-5679,-5691,-5706,
+-5715,-5720,-5730,-5746,-5759,-5763,-5774,-5777,-5773,-5774,-5781,-5789,-5799,-5812,-5826,-5839,-5853,-5868,-5888,-5900,
+-5903,-5890,-5857,-5805,-5743,-5712,-5713,-5725,-5730,-5718,-5698,-5680,-5659,-5645,-5635,-5619,-5613,-5610,-5617,-5613,
+-5608,-5610,-5614,-5605,-5593,-5585,-5581,-5577,-5575,-5570,-5565,-5564,-5560,-5550,-5539,-5549,-5554,-5544,-5537,-5528,
+-5516,-5516,-5514,-5508,-5496,-5484,-5480,-5482,-5463,-5445,-5430,-5418,-5419,-5419,-5412,-5409,-5408,-5410,-5411,-5412,
+-5402,-5391,-5373,-5357,-5349,-5363,-5376,-5382,-5386,-5386,-5375,-5382,-5387,-5375,-5354,-5337,-5325,-5318,-5310,-5298,
+-5286,-5278,-5267,-5259,-5249,-5245,-5237,-5228,-5210,-5209,-5219,-5220,-5214,-5204,-5197,-5185,-5173,-5159,-5130,-5110,
+-5105,-5118,-5134,-5144,-5143,-5132,-5105,-5085,-5085,-5091,-5091,-5088,-5081,-5065,-5049,-5033,-5012,-4989,-4977,-4967,
+-4948,-4923,-4910,-4911,-4893,-4863,-4842,-4843,-4837,-4810,-4778,-4760,-4757,-4742,-4728,-4722,-4715,-4709,-4697,-4676,
+-4651,-4635,-4633,-4640,-4637,-4621,-4607,-4605,-4610,-4613,-4613,-4609,-4601,-4585,-4572,-4565,-4557,-4549,-4539,-4525,
+-4509,-4498,-4488,-4471,-4450,-4436,-4424,-4409,-4396,-4382,-4365,-4347,-4332,-4320,-4304,-4278,-4262,-4249,-4234,-4217,
+-4196,-4174,-4155,-4133,-4112,-4089,-4068,-4045,-4024,-4001,-3972,-3945,-3921,-3899,-3879,-3858,-3836,-3817,-3801,-3785,
+-3765,-3750,-3737,-3720,-3697,-3674,-3666,-3658,-3644,-3632,-3619,-3606,-3596,-3590,-3582,-3570,-3564,-3566,-3559,-3550,
+-3544,-3536,-3524,-3514,-3504,-3492,-3483,-3475,-3469,-3462,-3455,-3444,-3431,-3416,-3404,-3391,-3380,-3371,-3361,-3352,
+-3339,-3325,-3315,-3299,-3284,-3270,-3257,-3248,-3238,-3223,-3206,-3187,-3171,-3154,-3138,-3121,-3113,-3099,-3077,-3056,
+-3046,-3029,-3008,-2987,-2967,-2946,-2923,-2900,-2881,-2865,-2852,-2846,-2838,-2833,-2830,-2829,-2826,-2821,-2810,-2800,
+-2788,-2765,-2773,-2768,-2755,-2739,-2725,-2714,-2706,-2699,-2693,-2687,-2684,-2679,-2676,-2674,-2670,-2666,-2659,-2649,
+-2637,-2623,-2607,-2591,-2578,-2566,-2552,-2536,-2522,-2509,-2497,-2485,-2472,-2461,-2449,-2435,-2420,-2403,-2384,-2365,
+-2341,-2314,-2288,-2262,-2232,-2202,-2175,-2163,-2156,-2143,-2126,-2100,-2089,-2082,-2060,-2040,-2026,-2003,-1976,-1954,
+-1944,-1943,-1933,-1909,-1876,-1855,-1834,-1799,-1763,-1731,-1702,-1679,-1657,-1637,-1616,-1594,-1573,-1550,-1521,-1494,
+-1469,-1440,-1413,-1385,-1364,-1348,-1331,-1314,-1298,-1280,-1259,-1238,-1218,-1195,-1170,-1144,-1123,-1101,-1081,-1062,
+-1039,-1018,-995,-977,-961,-942,-922,-900,-874,-846,-819,-790,-758,-723,-685,-652,-625,-600,-571,-540,
+-507,-475,-441,-402,-359,-313,-263,-215,-175,-144,-114,-90,-75,-52,-11,47,129,230,318,368,
+393,412,426,445,474,502,529,543,556,588,633,694,752,806,855,897,942,989,1035,1079,
+1120,1159,1197,1232,1260,1278,1288,1309,1345,1360,1379,1382,1380,1374,1364,1351,1335,1317,1297,1278,
+1257,1238,1220,1205,1191,1181,1173,1169,1169,1171,1176,1170,1158,1147,1141,1143,1158,1171,1198,1218,
+1233,1257,1280,1302,1317,1319,1306,1262,1204,1143,1089,1029,965,922,891,868,842,823,815,815,
+818,819,821,823,825,822,820,824,829,831,837,847,857,865,871,873,876,880,883,883,
+892,901,902,902,898,902,908,916,931,953,975,992,1007,1018,1022,1021,1010,1004,1004,1001,
+997,991,982,977,973,970,965,961,956,954,954,952,945,937,932,927,923,912,907,902,
+898,894,895,899,900,894,891,889,892,891,885,883,882,886,890,897,896,890,879,871,
+863,856,853,849,843,837,834,832,828,825,819,812,804,795,785,776,768,760,752,746,
+741,739,739,739,741,738,728,722,718,714,709,707,704,700,694,688,682,675,670,664,
+662,660,658,653,649,648,647,650,651,650,649,648,648,649,653,658,666,670,673,676,
+675,682,690,690,692,695,697,696,693,695,704,710,710,710,710,710,710,710,713,716,
+718,716,712,709,708,705,706,702,701,705,714,723,737,752,768,780,789,798,806,816,
+824,832,838,845,853,863,872,882,895,906,920,933,947,963,982,999,1017,1031,1045,1050,
+1054,1058,1066,1074,1077,1079,1081,1087,1096,1109,1106,1115,1121,1129,1136,1139,1145,1153,1169,1196,
+1224,1218,1192,1199,1241,1278,1291,1281,1264,1259,1267,1279,1295,1315,1337,1360,1383,1403,1419,1432,
+1441,1450,1455,1459,1461,1464,1467,1475,1491,1509,1517,1528,1555,1586,1617,1614,1572,1545,1535,1538,
+1549,1562,1574,1587,1602,1616,1630,1640,1643,1636,1615,1596,1586,1583,1581,1580,1580,1577,1575,1576,
+1576,1578,1578,1575,1574,1573,1575,1578,1580,1579,1575,1574,1568,1560,1549,1539,1531,1523,1516,1509,
+1506,1503,1505,1509,1514,1523,1531,1542,1554,1565,1575,1589,1607,1623,1637,1654,1668,1682,1698,1710,
+1718,1727,1742,1754,1763,1775,1788,1798,1810,1819,1826,1831,1830,1829,1836,1855,1904,1989,2080,2166,
+2229,2269,2294,2310,2313,2296,2249,2194,2164,2173,2211,2259,2301,2329,2347,2358,2362,2365,2373,2383,
+2392,2400,2406,2419,2435,2464,2501,2546,2591,2628,2652,2656,2648,2643,2642,2644,2642,2645,2638,2624,
+2604,2582,2550,2510,2488,2493,2523,2561,2604,2646,2692,2744,2790,2826,2857,2884,2910,2935,2957,2976,
+2984,2991,3008,3028,3048,3068,3087,3111,3134,3159,3185,3212,3243,3272,3300,3330,3358,3383,3405,3422,
+3435,3442,3444,3441,3434,3422,3406,3388,3369,3348,3326,3303,3278,3254,3226,3202,3175,3151,3129,3113,
+3100,3091,3084,3077,3072,3068,3062,3055,3048,3044,3037,3027,3013,2991,2966,2936,2916,2903,2891,2877,
+2869,2855,2838,2828,2813,2789,2770,2753,2730,2703,2678,2659,2630,2597,2560,2548,2532,2506,2485,2461,
+2441,2430,2426,2428,2434,2448,2455,2456,2461,2471,2481,2483,2478,2465,2444,2418,2392,2366,2332,2293,
+2252,2207,2162,2120,2084,2051,2017,1985,1956,1932,1912,1892,1871,1862,1853,1842,1831,1821,1818,1840,
+1860,1865,1864,1858,1851,1831,1814,1802,1776,1746,1717,1694,1682,1675,1665,1653,1637,1619,1601,1583,
+1565,1548,1530,1512,1494,1475,1455,1435,1413,1389,1365,1341,1314,1286,1258,1230,1199,1168,1137,1109,
+1081,1054,1029,1003,976,951,924,898,871,843,815,785,754,722,689,655,622,589,558,529,
+502,479,459,442,428,417,408,400,394,388,383,376,367,353,336,313,285,251,211,166,
+116,63,7,-50,-108,-164,-214,-261,-303,-344,-378,-405,-425,-439,-443,-440,-432,-421,-409,-398,
+-389,-384,-384,-391,-407,-431,-464,-507,-558,-617,-684,-756,-833,-914,-999,-1082,-1162,-1239,-1311,-1377,
+-1436,-1489,-1535,-1573,-1604,-1629,-1648,-1662,-1673,-1682,-1688,-1694,-1699,-1707,-1716,-1728,-1744,-1764,-1787,-1814,
+-1843,-1874,-1907,-1941,-1976,-2013,-2051,-2090,-2128,-2167,-2205,-2242,-2279,-2315,-2350,-2384,-2418,-2450,-2483,-2514,
+-2544,-2571,-2597,-2621,-2643,-2662,-2679,-2694,-2706,-2715,-2720,-2725,-2727,-2727,-2726,-2722,-2724,-2725,-2725,-2727,
+-2733,-2739,-2750,-2765,-2783,-2807,-2835,-2868,-2905,-2946,-2991,-3040,-3090,-3143,-3198,-3255,-3311,-3366,-3420,-3472,
+-3524,-3570,-3613,-3650,-3683,-3711,-3734,-3753,-3769,-3781,-3791,-3795,-3798,-3797,-3793,-3788,-3782,-3776,-3770,-3765,
+-3760,-3756,-3752,-3750,-3750,-3752,-3756,-3764,-3774,-3786,-3800,-3817,-3835,-3855,-3875,-3896,-3917,-3938,-3959,-3978,
+-3997,-4015,-4030,-4045,-4057,-4068,-4077,-4085,-4093,-4099,-4106,-4114,-4123,-4133,-4147,-4162,-4181,-4203,-4227,-4255,
+-4286,-4322,-4360,-4401,-4444,-4486,-4530,-4572,-4614,-4657,-4698,-4736,-4771,-4803,-4831,-4856,-4878,-4898,-4915,-4930,
+-4945,-4959,-4979,-4992,-4997,-4997,-5004,-5014,-5016,-5019,-5016,-5007,-4997,-4990,-4983,-4976,-4969,-4964,-4961,-4964,
+-4970,-4976,-4985,-4988,-4987,-4980,-4970,-4953,-4931,-4906,-4885,-4857,-4829,-4806,-4787,-4782,-4790,-4815,-4885,-4973,
+-5017,-5037,-5047,-5051,-5056,-5060,-5063,-5065,-5065,-5069,-5077,-5087,-5099,-5114,-5128,-5138,-5149,-5154,-5154,-5152,
+-5139,-5116,-5097,-5074,-5063,-5061,-5037,-4982,-4938,-4936,-5002,-5084,-5132,-5161,-5189,-5206,-5208,-5239,-5252,-5221,
+-5227,-5266,-5290,-5290,-5310,-5329,-5338,-5350,-5361,-5378,-5397,-5413,-5424,-5429,-5427,-5433,-5447,-5494,-5549,-5575,
+-5587,-5582,-5571,-5584,-5595,-5602,-5611,-5619,-5628,-5642,-5643,-5646,-5671,-5686,-5694,-5701,-5710,-5720,-5731,-5744,
+-5759,-5769,-5773,-5781,-5796,-5811,-5819,-5819,-5810,-5786,-5749,-5750,-5788,-5820,-5847,-5870,-5886,-5903,-5928,-5953,
+-5966,-5967,-5964,-5974,-5981,-5971,-5953,-5922,-5854,-5802,-5799,-5800,-5777,-5755,-5736,-5713,-5693,-5685,-5686,-5698,
+-5700,-5685,-5678,-5668,-5649,-5647,-5670,-5682,-5680,-5668,-5661,-5649,-5640,-5625,-5619,-5620,-5621,-5617,-5608,-5604,
+-5602,-5594,-5589,-5584,-5572,-5559,-5537,-5528,-5539,-5543,-5536,-5519,-5496,-5476,-5468,-5462,-5455,-5449,-5448,-5444,
+-5452,-5459,-5452,-5438,-5427,-5424,-5427,-5422,-5410,-5407,-5408,-5409,-5411,-5417,-5426,-5429,-5419,-5407,-5398,-5387,
+-5372,-5357,-5344,-5333,-5325,-5322,-5323,-5322,-5313,-5295,-5277,-5270,-5270,-5269,-5266,-5262,-5255,-5251,-5245,-5235,
+-5220,-5209,-5198,-5182,-5161,-5159,-5162,-5160,-5147,-5132,-5119,-5115,-5109,-5106,-5093,-5084,-5078,-5066,-5050,-5036,
+-5022,-5012,-4995,-4974,-4965,-4956,-4947,-4949,-4945,-4931,-4908,-4880,-4851,-4828,-4816,-4796,-4780,-4778,-4774,-4764,
+-4754,-4741,-4726,-4712,-4696,-4687,-4686,-4681,-4678,-4669,-4655,-4652,-4658,-4661,-4652,-4641,-4632,-4620,-4610,-4598,
+-4584,-4568,-4553,-4533,-4512,-4499,-4479,-4457,-4442,-4433,-4416,-4396,-4378,-4362,-4345,-4330,-4312,-4296,-4280,-4262,
+-4246,-4228,-4205,-4183,-4161,-4138,-4114,-4088,-4061,-4037,-4015,-3992,-3970,-3947,-3925,-3904,-3885,-3863,-3842,-3822,
+-3804,-3787,-3768,-3751,-3736,-3722,-3711,-3699,-3687,-3674,-3661,-3649,-3635,-3620,-3613,-3608,-3605,-3599,-3585,-3583,
+-3579,-3570,-3561,-3550,-3541,-3532,-3520,-3510,-3501,-3487,-3479,-3474,-3463,-3450,-3438,-3424,-3411,-3397,-3385,-3375,
+-3365,-3354,-3340,-3327,-3316,-3301,-3285,-3271,-3259,-3244,-3229,-3211,-3193,-3177,-3163,-3152,-3140,-3125,-3111,-3100,
+-3085,-3065,-3046,-3026,-3006,-2987,-2971,-2952,-2931,-2913,-2896,-2880,-2869,-2861,-2855,-2849,-2846,-2846,-2844,-2839,
+-2831,-2824,-2819,-2813,-2805,-2792,-2779,-2765,-2753,-2745,-2739,-2734,-2729,-2725,-2722,-2718,-2713,-2708,-2700,-2693,
+-2684,-2670,-2654,-2635,-2617,-2600,-2583,-2571,-2557,-2541,-2526,-2510,-2498,-2485,-2473,-2462,-2450,-2437,-2422,-2405,
+-2383,-2355,-2317,-2295,-2282,-2254,-2217,-2185,-2180,-2178,-2172,-2161,-2147,-2138,-2123,-2099,-2068,-2037,-2008,-1989,
+-1970,-1969,-1964,-1954,-1933,-1893,-1859,-1837,-1810,-1780,-1753,-1728,-1703,-1679,-1658,-1639,-1619,-1596,-1571,-1543,
+-1514,-1484,-1455,-1427,-1400,-1375,-1352,-1338,-1328,-1316,-1299,-1284,-1266,-1241,-1215,-1193,-1169,-1146,-1124,-1103,
+-1083,-1063,-1043,-1020,-998,-977,-959,-941,-925,-905,-882,-854,-823,-791,-759,-723,-687,-652,-617,-583,
+-550,-515,-485,-456,-425,-391,-353,-310,-263,-210,-157,-112,-74,-36,16,98,212,293,322,334,
+340,351,369,392,424,454,480,498,516,544,587,636,685,733,781,823,864,909,958,1006,
+1048,1090,1130,1166,1200,1220,1240,1261,1275,1289,1306,1307,1301,1291,1277,1261,1241,1221,1199,1179,
+1159,1141,1124,1111,1101,1094,1091,1091,1093,1098,1103,1107,1109,1101,1092,1091,1098,1118,1137,1164,
+1191,1221,1237,1258,1267,1264,1240,1199,1149,1091,1027,974,924,880,842,807,790,768,761,753,
+750,749,752,759,759,759,763,770,770,780,787,793,806,811,813,818,821,828,828,829,
+830,833,835,840,846,850,851,858,866,878,897,914,932,945,956,959,954,946,940,941,
+941,940,937,934,931,927,925,924,921,915,912,910,906,902,898,893,890,887,884,877,
+874,873,869,866,867,865,863,858,854,853,857,858,855,853,853,854,853,851,848,841,
+830,822,816,811,807,800,796,795,793,790,788,784,779,773,767,759,750,743,739,727,
+717,712,709,704,701,699,696,695,689,683,679,676,671,669,666,661,654,646,641,639,
+633,633,633,633,633,629,629,624,626,633,640,643,642,645,647,647,652,662,667,668,
+667,669,675,679,675,674,674,677,679,679,681,687,689,688,687,687,686,684,686,692,
+698,698,694,686,677,676,679,685,688,682,683,692,707,720,737,755,769,779,787,795,
+806,814,822,826,832,840,848,857,867,880,893,905,920,938,956,973,991,1010,1028,1042,
+1050,1056,1062,1067,1075,1079,1080,1083,1088,1097,1106,1081,1093,1100,1108,1112,1118,1127,1138,1146,
+1153,1149,1141,1155,1193,1224,1236,1236,1232,1232,1231,1237,1246,1264,1286,1310,1333,1355,1374,1393,
+1410,1424,1435,1443,1448,1456,1455,1451,1445,1450,1472,1498,1519,1551,1588,1616,1623,1605,1579,1555,
+1533,1511,1505,1512,1526,1541,1559,1579,1603,1607,1601,1595,1591,1587,1583,1581,1577,1572,1563,1553,
+1545,1537,1532,1529,1530,1535,1540,1546,1549,1547,1547,1546,1545,1538,1531,1522,1512,1505,1500,1496,
+1495,1492,1491,1493,1496,1502,1510,1520,1531,1543,1558,1572,1586,1598,1612,1624,1636,1649,1665,1676,
+1682,1692,1701,1712,1725,1737,1749,1761,1774,1788,1804,1820,1832,1837,1841,1864,1913,1989,2083,2170,
+2237,2281,2305,2319,2323,2313,2297,2273,2258,2222,2191,2209,2258,2314,2365,2407,2434,2448,2455,2465,
+2476,2480,2475,2475,2488,2512,2545,2576,2605,2635,2663,2682,2691,2682,2668,2645,2612,2574,2548,2524,
+2512,2506,2521,2532,2527,2534,2550,2565,2585,2610,2633,2662,2691,2719,2746,2777,2806,2830,2852,2875,
+2895,2911,2922,2935,2959,2987,3012,3035,3061,3088,3119,3150,3181,3215,3248,3283,3319,3351,3381,3408,
+3429,3446,3455,3460,3459,3452,3441,3426,3411,3392,3368,3344,3317,3288,3260,3240,3212,3181,3157,3136,
+3117,3103,3092,3084,3077,3071,3069,3066,3062,3056,3048,3039,3029,3017,3003,2988,2970,2950,2931,2912,
+2893,2877,2862,2848,2831,2811,2789,2764,2736,2706,2679,2652,2626,2604,2587,2573,2555,2537,2521,2500,
+2482,2463,2452,2445,2442,2445,2448,2447,2445,2441,2432,2418,2401,2389,2364,2330,2292,2251,2211,2177,
+2145,2119,2090,2058,2026,2000,1976,1957,1938,1920,1901,1881,1866,1855,1842,1824,1807,1795,1786,1793,
+1808,1819,1831,1844,1847,1840,1819,1793,1770,1748,1730,1714,1698,1686,1672,1656,1641,1625,1608,1591,
+1574,1557,1540,1524,1507,1490,1472,1452,1432,1409,1388,1365,1344,1318,1291,1265,1237,1207,1178,1151,
+1125,1099,1074,1049,1025,1000,975,949,924,898,871,843,814,785,755,724,694,666,638,611,
+588,568,551,538,529,521,518,516,515,515,513,511,504,494,478,456,427,391,348,297,
+239,175,107,35,-38,-112,-180,-238,-290,-345,-394,-434,-464,-487,-496,-494,-486,-471,-454,-433,
+-412,-393,-380,-372,-370,-378,-396,-424,-463,-513,-571,-637,-711,-789,-871,-957,-1042,-1126,-1205,-1281,
+-1350,-1413,-1468,-1515,-1556,-1589,-1614,-1635,-1651,-1663,-1671,-1678,-1685,-1693,-1700,-1711,-1724,-1740,-1759,-1782,
+-1808,-1837,-1867,-1898,-1932,-1966,-2002,-2038,-2074,-2110,-2143,-2179,-2213,-2246,-2278,-2311,-2342,-2375,-2408,-2437,
+-2467,-2495,-2522,-2547,-2571,-2592,-2611,-2630,-2646,-2660,-2671,-2679,-2685,-2686,-2690,-2692,-2690,-2688,-2688,-2688,
+-2690,-2694,-2701,-2711,-2726,-2746,-2769,-2797,-2830,-2867,-2909,-2955,-3003,-3055,-3110,-3166,-3224,-3283,-3341,-3399,
+-3455,-3508,-3557,-3602,-3640,-3675,-3704,-3730,-3752,-3769,-3782,-3791,-3793,-3794,-3790,-3782,-3772,-3762,-3751,-3740,
+-3730,-3719,-3711,-3705,-3699,-3697,-3697,-3702,-3709,-3720,-3734,-3750,-3770,-3792,-3815,-3841,-3866,-3892,-3916,-3940,
+-3962,-3984,-4004,-4020,-4035,-4047,-4058,-4066,-4073,-4079,-4085,-4091,-4098,-4106,-4117,-4130,-4147,-4167,-4190,-4218,
+-4248,-4283,-4321,-4364,-4408,-4452,-4493,-4537,-4582,-4628,-4673,-4716,-4755,-4791,-4823,-4849,-4876,-4898,-4916,-4930,
+-4944,-4960,-4980,-5000,-5020,-5042,-5063,-5080,-5090,-5099,-5113,-5116,-5112,-5108,-5103,-5097,-5088,-5077,-5069,-5061,
+-5057,-5060,-5060,-5061,-5062,-5061,-5051,-5034,-5018,-5000,-4987,-4968,-4944,-4922,-4900,-4880,-4863,-4853,-4860,-4885,
+-4943,-5010,-5051,-5075,-5094,-5105,-5119,-5128,-5131,-5136,-5140,-5144,-5150,-5158,-5172,-5186,-5199,-5209,-5220,-5226,
+-5228,-5223,-5208,-5191,-5174,-5150,-5119,-5103,-5095,-5031,-5007,-5015,-5070,-5111,-5177,-5228,-5246,-5248,-5254,-5271,
+-5267,-5292,-5326,-5350,-5347,-5354,-5381,-5394,-5404,-5413,-5426,-5441,-5458,-5474,-5495,-5520,-5543,-5560,-5567,-5582,
+-5606,-5626,-5643,-5648,-5646,-5657,-5658,-5650,-5647,-5671,-5689,-5704,-5713,-5726,-5741,-5753,-5764,-5771,-5774,-5786,
+-5804,-5814,-5818,-5828,-5839,-5847,-5853,-5853,-5853,-5843,-5811,-5767,-5780,-5819,-5851,-5882,-5907,-5924,-5930,-5941,
+-5967,-6001,-6024,-6042,-6055,-6068,-6077,-6078,-6077,-6077,-6065,-6040,-5995,-5944,-5900,-5868,-5842,-5806,-5780,-5770,
+-5764,-5764,-5767,-5764,-5757,-5748,-5741,-5730,-5726,-5732,-5738,-5745,-5741,-5721,-5702,-5692,-5677,-5662,-5666,-5674,
+-5681,-5674,-5662,-5656,-5654,-5645,-5634,-5626,-5614,-5604,-5598,-5578,-5581,-5575,-5554,-5535,-5525,-5520,-5510,-5491,
+-5476,-5478,-5489,-5489,-5480,-5469,-5461,-5463,-5482,-5491,-5484,-5473,-5468,-5469,-5468,-5470,-5469,-5468,-5464,-5458,
+-5450,-5439,-5431,-5429,-5418,-5402,-5391,-5385,-5374,-5368,-5359,-5355,-5352,-5341,-5322,-5321,-5320,-5320,-5330,-5332,
+-5324,-5313,-5300,-5285,-5269,-5256,-5237,-5220,-5215,-5215,-5212,-5209,-5195,-5175,-5156,-5151,-5149,-5134,-5116,-5112,
+-5109,-5094,-5074,-5056,-5045,-5031,-5012,-4990,-4991,-4998,-4992,-4973,-4937,-4913,-4904,-4893,-4883,-4870,-4859,-4843,
+-4826,-4814,-4800,-4776,-4749,-4741,-4743,-4748,-4749,-4746,-4736,-4720,-4705,-4701,-4701,-4698,-4694,-4689,-4680,-4667,
+-4653,-4637,-4619,-4602,-4581,-4562,-4544,-4525,-4508,-4487,-4467,-4453,-4438,-4421,-4400,-4381,-4363,-4347,-4327,-4306,
+-4290,-4272,-4254,-4234,-4214,-4193,-4167,-4139,-4110,-4080,-4058,-4031,-4011,-3990,-3971,-3953,-3933,-3914,-3893,-3872,
+-3853,-3831,-3813,-3798,-3785,-3770,-3754,-3741,-3723,-3710,-3696,-3684,-3669,-3656,-3643,-3632,-3626,-3622,-3619,-3611,
+-3598,-3597,-3596,-3586,-3575,-3566,-3556,-3545,-3536,-3526,-3510,-3498,-3492,-3480,-3467,-3452,-3436,-3424,-3411,-3399,
+-3387,-3376,-3364,-3354,-3343,-3332,-3318,-3304,-3289,-3271,-3256,-3240,-3222,-3204,-3186,-3172,-3159,-3147,-3136,-3122,
+-3107,-3091,-3075,-3060,-3048,-3035,-3019,-3005,-2986,-2967,-2949,-2933,-2917,-2904,-2896,-2886,-2880,-2875,-2871,-2868,
+-2866,-2865,-2862,-2856,-2847,-2834,-2826,-2817,-2804,-2793,-2785,-2780,-2775,-2770,-2765,-2761,-2754,-2745,-2736,-2728,
+-2716,-2705,-2692,-2675,-2658,-2640,-2623,-2606,-2590,-2576,-2562,-2545,-2530,-2513,-2497,-2484,-2471,-2455,-2440,-2425,
+-2409,-2391,-2372,-2353,-2334,-2314,-2292,-2269,-2243,-2220,-2202,-2187,-2176,-2169,-2163,-2143,-2114,-2095,-2076,-2051,
+-2021,-2006,-1994,-1981,-1968,-1952,-1921,-1877,-1833,-1804,-1792,-1765,-1739,-1716,-1694,-1673,-1655,-1635,-1614,-1590,
+-1564,-1537,-1509,-1480,-1453,-1428,-1408,-1388,-1372,-1360,-1347,-1332,-1317,-1291,-1267,-1242,-1218,-1195,-1174,-1154,
+-1135,-1112,-1088,-1066,-1044,-1025,-1002,-983,-965,-951,-938,-920,-896,-868,-836,-803,-764,-725,-688,-652,
+-615,-578,-540,-505,-469,-434,-401,-371,-337,-293,-241,-183,-127,-76,-8,101,200,247,263,266,
+273,284,304,334,368,401,432,458,477,497,539,591,631,667,703,741,779,823,872,918,
+964,1006,1048,1088,1123,1147,1166,1192,1216,1235,1237,1236,1229,1217,1201,1181,1159,1135,1111,1087,
+1065,1045,1029,1015,1006,1001,999,1002,1008,1016,1027,1038,1046,1050,1047,1045,1047,1055,1071,1092,
+1123,1147,1179,1193,1200,1210,1197,1161,1103,1049,1002,943,888,852,819,784,757,736,719,715,
+711,702,704,709,711,712,713,721,728,738,748,758,765,767,770,775,776,778,779,783,
+785,786,788,790,796,803,802,803,808,818,824,831,836,848,862,873,878,877,872,868,
+866,866,868,868,867,867,868,871,876,873,870,868,868,869,867,863,859,852,848,846,
+842,840,837,835,833,831,829,829,827,828,830,829,828,825,825,820,816,810,805,795,
+790,785,778,772,770,766,757,751,745,739,739,732,727,721,717,713,708,703,699,693,
+687,681,677,671,666,661,656,651,648,647,645,643,642,640,636,638,639,632,625,621,
+615,610,611,615,614,612,610,608,609,616,618,619,624,630,633,634,636,644,649,651,
+650,649,652,658,661,661,662,663,663,664,667,673,678,677,672,666,663,662,661,663,
+665,665,666,662,654,652,651,651,654,653,656,665,682,702,722,731,731,737,751,768,
+781,793,802,809,811,817,826,834,844,853,864,876,891,907,927,948,968,985,1003,1019,
+1030,1041,1048,1052,1055,1057,1060,1067,1073,1072,1072,1081,1051,1059,1067,1077,1082,1087,1094,1107,
+1121,1124,1129,1136,1145,1159,1176,1186,1188,1188,1191,1198,1210,1224,1239,1258,1276,1297,1318,1338,
+1356,1372,1391,1405,1415,1419,1421,1420,1423,1437,1454,1473,1493,1513,1537,1568,1600,1617,1622,1610,
+1584,1554,1524,1495,1478,1481,1496,1514,1533,1552,1571,1584,1591,1590,1588,1582,1570,1554,1538,1522,
+1508,1493,1483,1479,1481,1488,1501,1514,1522,1520,1517,1518,1520,1521,1519,1515,1509,1502,1496,1493,
+1493,1495,1495,1496,1499,1504,1510,1518,1530,1541,1556,1573,1587,1597,1604,1610,1621,1632,1643,1648,
+1652,1659,1668,1677,1690,1707,1725,1738,1744,1751,1764,1781,1802,1824,1843,1867,1909,1979,2069,2162,
+2242,2296,2329,2346,2351,2343,2321,2313,2313,2295,2256,2229,2229,2252,2297,2364,2431,2482,2521,2547,
+2560,2550,2533,2524,2522,2533,2552,2573,2593,2613,2633,2646,2650,2637,2612,2577,2548,2528,2526,2542,
+2555,2548,2538,2529,2521,2521,2526,2530,2543,2565,2589,2611,2636,2660,2685,2710,2733,2757,2777,2794,
+2815,2834,2855,2872,2890,2913,2938,2964,2991,3019,3048,3081,3114,3150,3188,3225,3264,3304,3340,3376,
+3408,3434,3455,3469,3477,3479,3475,3467,3454,3439,3421,3398,3372,3347,3321,3294,3268,3240,3213,3188,
+3166,3146,3128,3115,3103,3093,3086,3080,3074,3068,3062,3053,3041,3027,3015,3003,2990,2976,2960,2942,
+2925,2909,2894,2877,2857,2838,2819,2799,2779,2758,2736,2714,2692,2670,2649,2628,2608,2588,2570,2551,
+2533,2515,2500,2486,2477,2470,2463,2457,2448,2436,2424,2407,2386,2364,2338,2299,2256,2220,2186,2144,
+2108,2078,2051,2035,2024,2010,1995,1970,1946,1919,1891,1867,1844,1817,1793,1769,1749,1735,1725,1726,
+1735,1751,1777,1800,1807,1799,1785,1771,1755,1741,1724,1710,1696,1681,1668,1656,1642,1631,1617,1602,
+1586,1569,1552,1536,1521,1507,1487,1469,1451,1432,1411,1391,1369,1348,1325,1301,1276,1251,1225,1199,
+1175,1150,1127,1103,1080,1057,1033,1008,984,958,932,906,880,852,825,797,770,744,719,696,
+675,658,644,633,626,623,622,624,626,629,631,630,627,618,603,582,553,515,469,414,
+350,280,203,122,37,-43,-122,-197,-271,-339,-401,-455,-498,-528,-548,-554,-550,-538,-519,-495,
+-468,-442,-417,-397,-383,-378,-381,-395,-420,-457,-504,-561,-627,-701,-780,-862,-949,-1034,-1118,-1198,
+-1274,-1342,-1406,-1460,-1506,-1547,-1579,-1605,-1625,-1640,-1652,-1663,-1672,-1680,-1688,-1698,-1710,-1725,-1741,-1762,
+-1786,-1811,-1839,-1869,-1901,-1933,-1965,-1998,-2032,-2065,-2097,-2128,-2159,-2188,-2216,-2244,-2271,-2298,-2326,-2353,
+-2379,-2406,-2432,-2458,-2483,-2507,-2530,-2552,-2573,-2591,-2608,-2622,-2633,-2643,-2650,-2655,-2658,-2659,-2660,-2661,
+-2663,-2666,-2671,-2678,-2689,-2703,-2722,-2745,-2773,-2806,-2842,-2883,-2929,-2978,-3030,-3085,-3142,-3202,-3262,-3322,
+-3382,-3439,-3494,-3546,-3594,-3637,-3674,-3707,-3735,-3758,-3775,-3787,-3793,-3794,-3791,-3784,-3773,-3760,-3746,-3731,
+-3715,-3700,-3686,-3675,-3666,-3660,-3657,-3658,-3663,-3672,-3685,-3702,-3723,-3746,-3773,-3801,-3830,-3860,-3889,-3918,
+-3944,-3969,-3991,-4011,-4028,-4041,-4052,-4060,-4067,-4071,-4074,-4079,-4083,-4087,-4094,-4104,-4115,-4133,-4153,-4177,
+-4206,-4237,-4271,-4311,-4354,-4400,-4446,-4490,-4535,-4584,-4631,-4675,-4717,-4758,-4795,-4829,-4859,-4885,-4908,-4927,
+-4943,-4963,-4984,-5006,-5027,-5047,-5067,-5090,-5115,-5138,-5162,-5180,-5190,-5198,-5205,-5203,-5199,-5195,-5188,-5184,
+-5182,-5184,-5185,-5186,-5179,-5169,-5146,-5121,-5093,-5073,-5057,-5043,-5033,-5013,-4992,-4975,-4958,-4944,-4933,-4927,
+-4929,-4946,-4973,-5025,-5080,-5122,-5151,-5168,-5182,-5188,-5196,-5200,-5204,-5210,-5214,-5224,-5235,-5253,-5268,-5284,
+-5292,-5299,-5301,-5297,-5291,-5276,-5262,-5252,-5249,-5239,-5228,-5215,-5228,-5248,-5252,-5263,-5270,-5271,-5257,-5244,
+-5257,-5286,-5322,-5355,-5368,-5355,-5374,-5405,-5421,-5439,-5456,-5468,-5483,-5494,-5511,-5530,-5552,-5570,-5571,-5566,
+-5591,-5607,-5633,-5666,-5695,-5705,-5707,-5709,-5715,-5718,-5726,-5736,-5745,-5755,-5768,-5779,-5792,-5803,-5809,-5820,
+-5830,-5845,-5856,-5858,-5863,-5871,-5876,-5878,-5880,-5878,-5865,-5833,-5784,-5733,-5739,-5813,-5875,-5910,-5929,-5935,
+-5936,-5959,-6002,-6035,-6060,-6084,-6103,-6121,-6132,-6141,-6148,-6152,-6147,-6134,-6095,-6045,-5999,-5970,-5947,-5917,
+-5894,-5890,-5878,-5863,-5858,-5849,-5842,-5833,-5809,-5788,-5767,-5771,-5787,-5792,-5790,-5790,-5785,-5773,-5757,-5745,
+-5744,-5743,-5734,-5729,-5723,-5719,-5715,-5706,-5697,-5691,-5684,-5668,-5650,-5635,-5628,-5617,-5603,-5594,-5586,-5574,
+-5562,-5547,-5529,-5522,-5528,-5526,-5518,-5514,-5512,-5517,-5518,-5517,-5528,-5541,-5542,-5537,-5526,-5521,-5520,-5517,
+-5514,-5516,-5511,-5506,-5504,-5495,-5480,-5468,-5445,-5427,-5425,-5435,-5432,-5421,-5416,-5409,-5406,-5403,-5391,-5378,
+-5376,-5380,-5379,-5378,-5365,-5347,-5337,-5331,-5320,-5301,-5279,-5271,-5273,-5263,-5236,-5213,-5202,-5192,-5179,-5175,
+-5175,-5168,-5158,-5145,-5131,-5122,-5111,-5100,-5092,-5086,-5070,-5052,-5043,-5026,-5010,-4995,-4970,-4948,-4941,-4936,
+-4922,-4905,-4892,-4871,-4849,-4833,-4817,-4813,-4813,-4804,-4784,-4781,-4787,-4782,-4764,-4744,-4726,-4724,-4724,-4713,
+-4702,-4692,-4678,-4662,-4644,-4628,-4610,-4589,-4571,-4554,-4538,-4516,-4498,-4479,-4460,-4441,-4423,-4405,-4385,-4363,
+-4339,-4321,-4300,-4279,-4258,-4238,-4216,-4192,-4166,-4140,-4112,-4082,-4056,-4029,-4009,-3991,-3974,-3957,-3942,-3923,
+-3906,-3891,-3870,-3849,-3827,-3809,-3797,-3783,-3766,-3747,-3729,-3711,-3693,-3681,-3673,-3662,-3649,-3641,-3638,-3640,
+-3638,-3628,-3604,-3587,-3582,-3587,-3583,-3577,-3564,-3554,-3546,-3538,-3524,-3511,-3497,-3483,-3468,-3455,-3441,-3426,
+-3412,-3400,-3386,-3375,-3364,-3356,-3347,-3337,-3324,-3309,-3290,-3272,-3254,-3235,-3217,-3200,-3184,-3170,-3158,-3144,
+-3129,-3115,-3102,-3090,-3080,-3073,-3065,-3054,-3040,-3023,-3006,-2987,-2971,-2955,-2947,-2939,-2930,-2922,-2916,-2910,
+-2903,-2900,-2897,-2893,-2887,-2880,-2871,-2860,-2852,-2843,-2833,-2823,-2815,-2809,-2804,-2795,-2787,-2777,-2767,-2756,
+-2745,-2733,-2720,-2706,-2695,-2683,-2666,-2648,-2630,-2614,-2598,-2583,-2569,-2551,-2533,-2516,-2499,-2483,-2468,-2453,
+-2437,-2421,-2404,-2389,-2372,-2353,-2338,-2321,-2299,-2273,-2247,-2221,-2200,-2182,-2172,-2170,-2160,-2135,-2117,-2104,
+-2082,-2061,-2037,-2012,-1992,-1970,-1947,-1923,-1887,-1843,-1809,-1790,-1771,-1748,-1726,-1706,-1689,-1663,-1646,-1633,
+-1614,-1594,-1570,-1543,-1511,-1479,-1455,-1441,-1422,-1402,-1385,-1372,-1359,-1340,-1314,-1286,-1260,-1240,-1224,-1208,
+-1191,-1175,-1153,-1128,-1102,-1079,-1054,-1032,-1011,-991,-972,-956,-936,-914,-892,-867,-840,-807,-775,-744,
+-712,-679,-639,-596,-549,-504,-459,-424,-392,-361,-321,-274,-223,-164,-99,-7,96,144,163,174,
+186,206,239,276,317,352,384,413,433,452,476,513,554,599,640,672,707,746,786,826,
+869,917,960,1001,1041,1073,1095,1115,1132,1160,1172,1175,1169,1157,1141,1119,1096,1069,1042,1015,
+990,967,947,930,919,911,909,912,918,928,941,955,967,979,989,993,991,997,1009,1023,
+1038,1065,1094,1115,1134,1141,1136,1130,1086,1039,990,935,890,842,803,760,723,702,685,674,
+668,658,654,658,657,658,660,664,669,682,689,701,712,722,719,719,722,728,734,741,
+742,744,743,738,742,748,754,754,753,752,754,755,749,751,756,760,766,773,780,781,
+781,782,788,793,796,803,808,813,816,815,814,814,814,818,823,820,816,807,799,801,
+801,804,802,797,793,791,788,790,793,792,790,789,788,786,781,779,775,770,765,757,
+750,742,731,726,721,716,710,701,692,686,681,677,673,670,663,657,650,648,650,646,
+642,636,633,632,632,627,622,613,611,615,617,615,614,609,607,605,610,613,608,601,
+595,591,590,594,593,591,588,585,583,590,596,596,598,601,606,610,617,625,629,627,
+625,625,631,638,643,644,640,637,637,637,640,644,648,652,650,647,641,634,627,626,
+630,632,631,632,633,633,632,636,639,637,636,641,650,657,670,679,696,712,715,721,
+736,751,762,773,779,787,793,803,813,824,837,852,869,887,906,926,944,960,976,989,
+998,1004,1010,1018,1021,1022,1024,1026,1032,1037,1041,1045,1051,1020,1025,1034,1042,1049,1055,1063,
+1070,1079,1088,1096,1105,1117,1125,1133,1144,1155,1173,1190,1200,1211,1222,1234,1248,1262,1276,1289,
+1302,1321,1342,1361,1373,1381,1385,1384,1388,1396,1410,1430,1452,1471,1491,1513,1543,1572,1599,1609,
+1602,1585,1554,1527,1510,1493,1481,1485,1498,1515,1533,1549,1563,1572,1571,1561,1544,1519,1497,1476,
+1458,1443,1432,1430,1434,1442,1453,1469,1485,1491,1493,1496,1500,1506,1514,1517,1517,1515,1511,1506,
+1506,1509,1511,1516,1520,1527,1533,1541,1552,1563,1578,1588,1597,1603,1607,1608,1613,1618,1625,1630,
+1633,1636,1642,1652,1662,1677,1695,1710,1724,1737,1745,1754,1768,1791,1819,1852,1900,1967,2060,2164,
+2252,2312,2348,2369,2379,2380,2382,2383,2378,2381,2376,2360,2334,2328,2355,2357,2361,2400,2456,2511,
+2556,2576,2568,2544,2525,2524,2533,2535,2545,2555,2557,2560,2563,2568,2571,2556,2551,2552,2546,2533,
+2517,2510,2510,2512,2511,2514,2520,2530,2542,2559,2577,2595,2615,2635,2653,2674,2695,2715,2734,2752,
+2766,2779,2791,2805,2825,2851,2876,2900,2922,2947,2976,3010,3045,3083,3123,3166,3209,3251,3293,3333,
+3371,3405,3436,3461,3481,3493,3500,3500,3494,3480,3468,3454,3438,3416,3393,3368,3341,3314,3286,3258,
+3234,3211,3188,3169,3152,3139,3127,3117,3107,3097,3086,3073,3059,3044,3029,3014,2998,2982,2965,2949,
+2932,2915,2899,2882,2865,2848,2831,2815,2799,2782,2765,2748,2730,2713,2694,2677,2659,2640,2623,2605,
+2587,2569,2552,2535,2519,2503,2487,2470,2453,2434,2415,2394,2371,2344,2313,2277,2235,2204,2178,2146,
+2109,2074,2043,2018,2001,1980,1956,1928,1901,1872,1839,1806,1773,1745,1721,1708,1694,1683,1679,1677,
+1678,1688,1706,1731,1752,1763,1765,1763,1758,1753,1744,1737,1729,1717,1702,1687,1670,1653,1635,1618,
+1601,1584,1567,1550,1532,1516,1501,1484,1467,1450,1432,1413,1394,1374,1353,1332,1311,1290,1268,1245,
+1223,1201,1179,1158,1137,1115,1093,1071,1048,1024,1001,976,951,925,900,875,850,826,803,783,
+764,749,736,728,722,719,719,722,725,729,732,733,730,723,709,687,657,618,570,511,
+444,369,287,200,110,20,-68,-156,-242,-325,-400,-465,-520,-562,-592,-609,-614,-609,-595,-574,
+-548,-519,-491,-465,-443,-428,-421,-424,-437,-462,-498,-545,-601,-666,-738,-816,-898,-981,-1065,-1146,
+-1224,-1297,-1363,-1422,-1474,-1519,-1557,-1586,-1608,-1627,-1641,-1654,-1664,-1673,-1683,-1692,-1703,-1716,-1732,-1750,
+-1772,-1796,-1823,-1852,-1882,-1912,-1944,-1975,-2006,-2036,-2065,-2093,-2119,-2145,-2169,-2192,-2214,-2236,-2259,-2281,
+-2303,-2326,-2350,-2373,-2397,-2422,-2447,-2471,-2495,-2518,-2540,-2560,-2579,-2595,-2609,-2621,-2631,-2639,-2645,-2651,
+-2655,-2660,-2665,-2671,-2680,-2691,-2705,-2724,-2746,-2773,-2804,-2839,-2879,-2924,-2972,-3024,-3079,-3136,-3195,-3256,
+-3317,-3377,-3437,-3494,-3548,-3598,-3644,-3685,-3720,-3749,-3772,-3787,-3798,-3803,-3802,-3798,-3788,-3773,-3758,-3740,
+-3721,-3703,-3685,-3670,-3657,-3646,-3640,-3638,-3641,-3648,-3660,-3677,-3699,-3723,-3751,-3782,-3815,-3847,-3880,-3913,
+-3944,-3972,-3997,-4019,-4037,-4052,-4064,-4071,-4076,-4078,-4079,-4078,-4078,-4078,-4080,-4085,-4092,-4104,-4120,-4140,
+-4163,-4192,-4224,-4260,-4299,-4342,-4386,-4433,-4477,-4524,-4572,-4619,-4663,-4709,-4748,-4786,-4818,-4847,-4873,-4898,
+-4921,-4944,-4967,-4989,-5013,-5036,-5061,-5087,-5115,-5143,-5170,-5193,-5209,-5226,-5244,-5258,-5265,-5270,-5280,-5293,
+-5303,-5310,-5318,-5319,-5315,-5298,-5278,-5252,-5222,-5186,-5155,-5126,-5102,-5081,-5058,-5039,-5025,-5010,-4997,-4995,
+-4988,-4985,-4988,-5003,-5035,-5093,-5147,-5188,-5207,-5222,-5234,-5244,-5249,-5255,-5260,-5269,-5276,-5290,-5305,-5322,
+-5340,-5358,-5372,-5380,-5381,-5383,-5381,-5371,-5355,-5345,-5343,-5347,-5359,-5374,-5383,-5384,-5382,-5382,-5382,-5383,
+-5384,-5384,-5385,-5387,-5399,-5411,-5421,-5405,-5397,-5388,-5375,-5399,-5451,-5497,-5521,-5537,-5556,-5578,-5597,-5618,
+-5637,-5651,-5665,-5681,-5699,-5722,-5731,-5734,-5742,-5758,-5769,-5773,-5774,-5777,-5779,-5788,-5800,-5809,-5818,-5827,
+-5839,-5851,-5865,-5879,-5889,-5899,-5908,-5910,-5904,-5897,-5893,-5870,-5807,-5743,-5743,-5793,-5839,-5894,-5944,-5973,
+-6000,-6023,-6048,-6066,-6082,-6103,-6124,-6145,-6164,-6181,-6191,-6199,-6205,-6213,-6216,-6206,-6176,-6138,-6118,-6108,
+-6084,-6049,-6017,-5984,-5968,-5965,-5956,-5941,-5923,-5904,-5885,-5870,-5854,-5838,-5828,-5827,-5826,-5836,-5842,-5833,
+-5825,-5822,-5819,-5811,-5797,-5788,-5773,-5758,-5755,-5759,-5760,-5753,-5740,-5725,-5715,-5704,-5691,-5679,-5671,-5663,
+-5648,-5629,-5610,-5590,-5577,-5579,-5577,-5570,-5564,-5561,-5558,-5555,-5558,-5573,-5589,-5602,-5607,-5606,-5595,-5586,
+-5580,-5576,-5571,-5571,-5573,-5561,-5547,-5548,-5549,-5539,-5523,-5504,-5481,-5481,-5489,-5489,-5484,-5477,-5471,-5466,
+-5465,-5456,-5445,-5434,-5427,-5423,-5412,-5399,-5388,-5385,-5378,-5366,-5354,-5336,-5319,-5301,-5284,-5272,-5262,-5253,
+-5245,-5232,-5209,-5196,-5196,-5191,-5182,-5173,-5165,-5157,-5149,-5137,-5123,-5106,-5097,-5084,-5071,-5047,-5022,-5001,
+-4990,-4977,-4962,-4948,-4936,-4928,-4919,-4899,-4879,-4859,-4854,-4853,-4847,-4833,-4816,-4813,-4809,-4791,-4767,-4747,
+-4737,-4730,-4724,-4712,-4700,-4688,-4668,-4647,-4626,-4607,-4593,-4577,-4560,-4540,-4518,-4499,-4481,-4464,-4444,-4426,
+-4404,-4381,-4352,-4332,-4310,-4286,-4260,-4236,-4212,-4191,-4165,-4140,-4110,-4084,-4060,-4039,-4016,-3997,-3978,-3959,
+-3942,-3926,-3915,-3901,-3885,-3863,-3840,-3820,-3806,-3789,-3771,-3752,-3738,-3722,-3706,-3693,-3683,-3675,-3667,-3663,
+-3662,-3659,-3651,-3614,-3536,-3476,-3517,-3575,-3586,-3574,-3553,-3550,-3547,-3539,-3526,-3513,-3496,-3482,-3470,-3466,
+-3452,-3434,-3417,-3403,-3390,-3378,-3367,-3358,-3349,-3337,-3324,-3307,-3287,-3271,-3256,-3243,-3226,-3208,-3192,-3176,
+-3161,-3149,-3137,-3129,-3122,-3115,-3109,-3102,-3096,-3085,-3071,-3055,-3036,-3018,-3006,-2995,-2984,-2978,-2970,-2963,
+-2955,-2948,-2940,-2931,-2923,-2912,-2903,-2895,-2888,-2877,-2867,-2857,-2848,-2839,-2829,-2818,-2808,-2799,-2790,-2780,
+-2770,-2761,-2750,-2738,-2724,-2711,-2700,-2687,-2670,-2653,-2632,-2615,-2598,-2585,-2572,-2556,-2537,-2520,-2505,-2491,
+-2475,-2462,-2448,-2433,-2418,-2403,-2388,-2369,-2347,-2325,-2306,-2279,-2252,-2225,-2203,-2197,-2202,-2203,-2186,-2164,
+-2134,-2110,-2087,-2055,-2018,-1993,-1967,-1939,-1914,-1888,-1845,-1814,-1794,-1771,-1743,-1717,-1697,-1682,-1662,-1645,
+-1635,-1624,-1611,-1591,-1571,-1549,-1521,-1494,-1469,-1452,-1434,-1414,-1396,-1378,-1362,-1346,-1324,-1299,-1273,-1245,
+-1217,-1197,-1178,-1160,-1142,-1122,-1098,-1074,-1054,-1031,-1005,-979,-959,-941,-920,-899,-878,-858,-834,-810,
+-783,-753,-721,-689,-652,-612,-568,-525,-476,-426,-381,-336,-285,-226,-150,-66,2,40,70,98,
+123,149,179,216,255,294,335,371,397,422,435,441,471,508,548,587,634,678,713,746,
+779,821,863,909,952,990,1018,1034,1063,1086,1112,1120,1120,1111,1097,1079,1055,1029,1000,971,
+942,915,890,869,852,841,834,832,835,843,854,868,884,899,912,922,931,940,953,962,
+968,988,1010,1031,1048,1059,1069,1074,1060,1014,970,916,866,821,777,736,697,672,650,633,
+628,619,608,604,609,607,601,605,611,611,618,624,640,655,659,662,671,680,686,690,
+699,697,695,689,689,690,693,700,697,694,691,682,675,667,661,658,663,668,670,676,
+678,677,679,680,687,699,714,727,733,739,741,746,755,766,771,766,760,755,750,751,
+754,763,768,762,755,748,741,737,736,740,743,738,734,729,723,720,719,715,711,710,
+706,697,683,674,667,664,661,650,640,633,623,612,609,610,610,603,594,593,596,594,
+592,588,583,581,583,584,579,570,569,576,578,576,575,570,570,571,576,578,576,568,
+563,558,561,570,569,562,557,555,556,564,572,573,569,569,570,571,577,583,593,599,
+597,597,602,607,611,610,606,607,608,609,609,610,612,612,612,614,613,612,607,604,
+603,603,602,601,602,605,610,611,614,618,624,629,635,640,648,656,665,676,690,704,
+719,731,744,760,774,776,776,781,791,801,813,828,847,868,891,910,926,938,949,957,
+960,963,964,967,970,972,970,969,976,988,999,1008,1014,1020,983,988,994,1001,1008,1014,
+1020,1025,1032,1039,1056,1073,1087,1103,1120,1141,1160,1169,1174,1176,1176,1186,1204,1222,1238,1253,
+1269,1283,1303,1324,1341,1357,1372,1381,1385,1388,1395,1404,1419,1434,1452,1475,1502,1526,1553,1581,
+1601,1607,1595,1569,1541,1516,1499,1485,1483,1492,1505,1520,1534,1543,1544,1535,1515,1489,1466,1454,
+1452,1448,1431,1414,1409,1415,1426,1446,1468,1484,1493,1495,1500,1506,1513,1521,1528,1534,1535,1530,
+1530,1533,1537,1542,1546,1555,1565,1576,1584,1591,1600,1607,1612,1617,1619,1622,1623,1622,1620,1626,
+1632,1635,1635,1642,1650,1659,1672,1689,1706,1726,1747,1764,1775,1789,1812,1847,1901,1973,2067,2174,
+2266,2334,2370,2387,2399,2407,2420,2430,2435,2436,2439,2439,2433,2434,2439,2450,2476,2491,2489,2497,
+2520,2539,2550,2542,2513,2483,2454,2438,2441,2458,2477,2499,2523,2534,2530,2520,2504,2498,2495,2490,
+2486,2489,2493,2501,2512,2522,2531,2544,2559,2575,2593,2611,2629,2647,2667,2683,2701,2717,2734,2747,
+2759,2768,2778,2787,2798,2812,2831,2853,2873,2896,2919,2949,2979,3012,3052,3095,3140,3186,3232,3278,
+3321,3362,3400,3433,3462,3485,3502,3511,3515,3514,3510,3501,3488,3471,3453,3432,3413,3388,3362,3334,
+3308,3284,3261,3239,3218,3199,3182,3165,3152,3141,3127,3113,3096,3078,3058,3039,3019,2999,2979,2958,
+2939,2920,2901,2882,2864,2848,2832,2817,2803,2789,2775,2762,2748,2734,2720,2706,2691,2675,2659,2643,
+2625,2607,2588,2568,2547,2526,2504,2480,2456,2430,2404,2377,2349,2318,2286,2251,2211,2169,2125,2089,
+2066,2044,2014,1978,1947,1919,1894,1862,1824,1795,1766,1737,1707,1682,1663,1648,1635,1626,1627,1633,
+1639,1654,1672,1699,1723,1747,1763,1764,1762,1760,1755,1749,1741,1730,1718,1704,1689,1674,1657,1640,
+1623,1606,1589,1572,1555,1537,1519,1501,1484,1467,1448,1430,1412,1393,1374,1355,1337,1318,1299,1279,
+1261,1242,1223,1205,1186,1168,1149,1130,1110,1089,1067,1045,1023,1001,978,955,933,910,890,872,
+855,841,829,821,815,811,811,813,815,818,820,819,814,805,790,767,736,695,645,585,
+515,437,352,260,167,70,-23,-118,-213,-304,-388,-463,-529,-583,-623,-652,-668,-673,-667,-654,
+-634,-611,-584,-559,-536,-517,-505,-501,-507,-523,-550,-588,-635,-690,-754,-823,-898,-977,-1056,-1135,
+-1212,-1285,-1353,-1414,-1468,-1516,-1556,-1588,-1614,-1635,-1650,-1663,-1673,-1682,-1690,-1699,-1709,-1721,-1736,-1752,
+-1772,-1794,-1819,-1847,-1876,-1905,-1936,-1966,-1996,-2025,-2052,-2078,-2102,-2125,-2146,-2165,-2183,-2200,-2216,-2235,
+-2253,-2271,-2291,-2312,-2334,-2356,-2380,-2405,-2430,-2456,-2482,-2507,-2531,-2554,-2575,-2595,-2612,-2628,-2641,-2653,
+-2663,-2672,-2680,-2689,-2698,-2708,-2721,-2736,-2753,-2775,-2800,-2830,-2864,-2902,-2944,-2991,-3041,-3095,-3152,-3210,
+-3270,-3330,-3391,-3451,-3509,-3564,-3615,-3663,-3705,-3741,-3771,-3793,-3809,-3819,-3822,-3820,-3813,-3801,-3786,-3768,
+-3747,-3727,-3707,-3688,-3672,-3659,-3650,-3646,-3645,-3651,-3662,-3678,-3699,-3724,-3754,-3786,-3821,-3857,-3895,-3929,
+-3963,-3994,-4022,-4047,-4065,-4079,-4091,-4097,-4100,-4100,-4095,-4090,-4085,-4080,-4076,-4075,-4076,-4082,-4092,-4106,
+-4124,-4149,-4175,-4208,-4245,-4285,-4327,-4372,-4416,-4463,-4509,-4557,-4602,-4646,-4689,-4727,-4763,-4795,-4824,-4850,
+-4874,-4900,-4926,-4952,-4978,-5005,-5034,-5064,-5094,-5127,-5158,-5187,-5215,-5241,-5267,-5291,-5310,-5325,-5344,-5363,
+-5379,-5390,-5396,-5395,-5392,-5382,-5365,-5339,-5311,-5282,-5255,-5229,-5208,-5186,-5161,-5125,-5100,-5088,-5069,-5051,
+-5036,-5025,-5019,-5014,-5026,-5052,-5097,-5150,-5195,-5230,-5253,-5276,-5287,-5298,-5305,-5313,-5324,-5335,-5343,-5359,
+-5370,-5386,-5402,-5422,-5434,-5453,-5465,-5470,-5468,-5458,-5443,-5428,-5422,-5427,-5440,-5453,-5464,-5468,-5475,-5477,
+-5476,-5475,-5479,-5485,-5496,-5498,-5507,-5518,-5525,-5526,-5525,-5523,-5523,-5532,-5541,-5550,-5561,-5578,-5598,-5621,
+-5640,-5652,-5664,-5690,-5708,-5718,-5705,-5666,-5659,-5715,-5767,-5801,-5818,-5824,-5824,-5824,-5829,-5832,-5841,-5846,
+-5853,-5863,-5870,-5867,-5852,-5875,-5917,-5945,-5958,-5963,-5958,-5950,-5948,-5934,-5910,-5914,-5935,-5973,-6014,-6037,
+-6060,-6086,-6111,-6130,-6141,-6147,-6154,-6166,-6178,-6191,-6203,-6216,-6225,-6229,-6238,-6256,-6270,-6269,-6251,-6231,
+-6218,-6203,-6175,-6137,-6102,-6058,-6006,-5977,-5974,-5974,-5968,-5960,-5947,-5929,-5925,-5922,-5910,-5896,-5884,-5874,
+-5867,-5870,-5872,-5871,-5862,-5848,-5848,-5841,-5829,-5823,-5815,-5806,-5803,-5794,-5781,-5771,-5761,-5749,-5743,-5737,
+-5724,-5704,-5689,-5680,-5667,-5658,-5653,-5640,-5636,-5641,-5642,-5639,-5639,-5634,-5629,-5631,-5633,-5643,-5653,-5657,
+-5659,-5665,-5674,-5672,-5653,-5629,-5615,-5611,-5603,-5594,-5589,-5584,-5577,-5574,-5559,-5547,-5538,-5529,-5528,-5522,
+-5511,-5501,-5490,-5480,-5472,-5471,-5475,-5474,-5467,-5456,-5442,-5433,-5426,-5420,-5406,-5386,-5358,-5343,-5333,-5318,
+-5303,-5294,-5283,-5268,-5259,-5249,-5240,-5237,-5233,-5230,-5225,-5219,-5201,-5182,-5170,-5164,-5153,-5134,-5107,-5082,
+-5066,-5053,-5042,-5028,-5014,-4993,-4973,-4968,-4966,-4950,-4929,-4913,-4904,-4906,-4898,-4882,-4863,-4853,-4846,-4828,
+-4806,-4784,-4769,-4759,-4748,-4733,-4716,-4700,-4682,-4665,-4646,-4629,-4612,-4596,-4579,-4560,-4540,-4518,-4497,-4482,
+-4463,-4440,-4419,-4396,-4371,-4354,-4325,-4294,-4269,-4243,-4216,-4188,-4163,-4139,-4116,-4094,-4071,-4044,-4003,-3990,
+-3988,-3969,-3949,-3934,-3916,-3901,-3886,-3869,-3853,-3839,-3823,-3806,-3791,-3772,-3754,-3736,-3724,-3718,-3709,-3703,
+-3698,-3693,-3687,-3679,-3670,-3652,-3630,-3621,-3622,-3616,-3604,-3573,-3557,-3559,-3547,-3539,-3529,-3513,-3498,-3490,
+-3480,-3464,-3456,-3450,-3434,-3419,-3404,-3392,-3378,-3367,-3359,-3346,-3329,-3313,-3297,-3280,-3266,-3252,-3236,-3221,
+-3207,-3194,-3182,-3174,-3168,-3163,-3153,-3135,-3135,-3144,-3135,-3120,-3101,-3082,-3062,-3048,-3036,-3030,-3024,-3017,
+-3009,-2998,-2984,-2970,-2961,-2950,-2940,-2930,-2920,-2912,-2904,-2894,-2883,-2869,-2856,-2843,-2830,-2819,-2809,-2802,
+-2794,-2787,-2777,-2764,-2750,-2736,-2721,-2709,-2698,-2687,-2669,-2647,-2628,-2610,-2593,-2581,-2571,-2557,-2544,-2531,
+-2519,-2506,-2495,-2482,-2470,-2455,-2441,-2424,-2406,-2384,-2363,-2341,-2321,-2302,-2282,-2268,-2265,-2268,-2261,-2238,
+-2202,-2164,-2129,-2104,-2072,-2035,-2003,-1969,-1934,-1902,-1872,-1838,-1804,-1789,-1770,-1737,-1703,-1679,-1664,-1655,
+-1645,-1632,-1620,-1609,-1595,-1572,-1549,-1528,-1503,-1478,-1460,-1446,-1430,-1417,-1403,-1387,-1373,-1353,-1333,-1309,
+-1278,-1243,-1210,-1180,-1150,-1125,-1104,-1086,-1068,-1052,-1037,-1016,-987,-953,-922,-896,-877,-861,-843,-822,
+-797,-773,-749,-723,-692,-661,-626,-587,-547,-499,-442,-361,-268,-190,-129,-91,-58,-29,0,29,
+64,103,141,176,212,250,290,319,329,347,373,388,406,434,469,512,559,609,658,691,
+711,736,771,815,859,902,942,982,1011,1016,1038,1059,1072,1078,1070,1057,1037,1013,986,957,
+926,896,867,841,818,799,785,776,772,773,779,789,802,818,835,851,868,884,896,903,
+909,914,921,936,957,974,990,995,989,973,942,901,843,793,747,706,666,639,612,589,
+576,564,552,544,534,533,535,537,537,539,545,557,571,583,591,603,609,623,636,638,
+649,654,654,645,644,644,643,639,634,626,617,606,593,583,578,578,578,579,582,582,
+584,588,589,587,593,603,614,621,629,641,648,654,658,668,678,683,687,689,690,690,
+694,698,701,700,695,689,687,684,687,693,698,695,687,677,671,667,662,657,650,646,
+642,633,619,606,596,592,592,585,571,558,547,541,537,537,534,530,531,535,540,540,
+532,524,521,523,531,530,523,518,520,531,538,534,528,525,522,520,524,533,538,532,
+523,516,517,523,529,525,517,515,518,527,534,535,532,530,531,535,544,548,553,556,
+564,570,577,581,580,577,575,579,586,595,595,591,591,591,591,592,593,592,590,588,
+586,585,587,590,591,594,598,600,602,605,612,618,624,631,642,651,664,681,705,724,
+729,726,731,742,758,771,780,784,777,779,791,807,824,842,860,879,897,913,923,930,
+936,938,930,921,913,910,906,911,914,919,932,950,966,977,983,951,959,963,966,967,
+967,969,973,981,991,1005,1020,1042,1065,1092,1117,1136,1152,1163,1170,1180,1194,1211,1229,1249,
+1269,1288,1306,1322,1333,1347,1360,1374,1385,1390,1394,1407,1414,1421,1439,1460,1483,1506,1533,1560,
+1585,1605,1610,1603,1586,1557,1533,1512,1502,1494,1496,1508,1525,1535,1535,1525,1504,1483,1469,1464,
+1468,1468,1458,1445,1433,1426,1429,1441,1462,1485,1503,1515,1520,1522,1527,1534,1543,1551,1557,1563,
+1561,1564,1569,1575,1580,1586,1594,1600,1611,1621,1631,1637,1638,1642,1648,1653,1652,1647,1642,1645,
+1652,1659,1661,1659,1662,1670,1683,1696,1714,1739,1762,1784,1806,1822,1841,1877,1933,2013,2106,2203,
+2289,2350,2388,2407,2412,2417,2419,2425,2427,2429,2430,2428,2427,2428,2433,2438,2451,2469,2481,2472,
+2455,2430,2416,2409,2395,2376,2370,2369,2371,2378,2391,2401,2407,2410,2416,2416,2418,2428,2438,2452,
+2464,2476,2488,2502,2517,2536,2555,2574,2595,2615,2637,2659,2680,2700,2717,2735,2750,2764,2776,2785,
+2792,2796,2799,2803,2808,2815,2823,2834,2848,2865,2884,2904,2930,2961,2995,3034,3076,3120,3164,3208,
+3253,3297,3339,3378,3413,3441,3464,3484,3498,3509,3514,3515,3513,3505,3494,3479,3461,3440,3418,3394,
+3370,3346,3322,3299,3278,3259,3241,3223,3207,3191,3175,3158,3141,3122,3102,3081,3058,3034,3010,2986,
+2962,2940,2917,2894,2873,2854,2836,2820,2805,2791,2778,2765,2753,2742,2730,2718,2706,2693,2678,2663,
+2646,2628,2608,2587,2564,2539,2513,2484,2455,2423,2392,2358,2325,2290,2252,2214,2173,2130,2087,2048,
+2016,1989,1962,1936,1905,1876,1850,1818,1779,1748,1723,1695,1666,1643,1626,1610,1595,1586,1585,1593,
+1609,1625,1643,1661,1685,1710,1729,1738,1742,1745,1745,1744,1741,1736,1728,1720,1709,1696,1683,1669,
+1653,1638,1621,1604,1586,1567,1548,1529,1509,1490,1470,1450,1430,1411,1392,1374,1355,1337,1319,1302,
+1284,1269,1255,1240,1226,1210,1194,1179,1163,1146,1128,1109,1091,1072,1051,1031,1011,992,974,958,
+943,930,919,910,904,899,896,895,894,893,891,886,878,865,846,820,786,744,692,630,
+560,480,394,301,205,107,7,-90,-189,-285,-374,-454,-527,-589,-639,-677,-704,-720,-727,-723,
+-714,-698,-678,-658,-638,-623,-611,-605,-608,-620,-641,-672,-712,-760,-816,-879,-947,-1017,-1091,-1165,
+-1239,-1309,-1375,-1436,-1491,-1539,-1580,-1614,-1642,-1664,-1680,-1692,-1701,-1708,-1715,-1722,-1730,-1741,-1752,-1767,
+-1784,-1805,-1828,-1854,-1882,-1911,-1941,-1971,-2001,-2029,-2055,-2081,-2105,-2126,-2146,-2163,-2179,-2194,-2207,-2220,
+-2234,-2247,-2263,-2280,-2298,-2318,-2339,-2362,-2387,-2414,-2441,-2469,-2497,-2525,-2552,-2578,-2602,-2625,-2646,-2665,
+-2681,-2696,-2710,-2723,-2734,-2746,-2758,-2772,-2787,-2805,-2825,-2849,-2877,-2909,-2945,-2985,-3029,-3078,-3129,-3184,
+-3241,-3300,-3360,-3420,-3480,-3537,-3592,-3644,-3690,-3732,-3768,-3797,-3820,-3836,-3845,-3848,-3845,-3836,-3824,-3807,
+-3787,-3766,-3746,-3725,-3707,-3693,-3682,-3676,-3674,-3677,-3687,-3702,-3722,-3747,-3777,-3810,-3847,-3885,-3925,-3963,
+-4000,-4033,-4063,-4089,-4110,-4125,-4136,-4141,-4141,-4137,-4131,-4120,-4109,-4097,-4086,-4077,-4071,-4068,-4070,-4078,
+-4090,-4107,-4131,-4157,-4190,-4227,-4266,-4307,-4352,-4398,-4445,-4491,-4538,-4583,-4626,-4667,-4705,-4740,-4771,-4801,
+-4827,-4853,-4883,-4910,-4939,-4970,-5001,-5033,-5066,-5100,-5134,-5171,-5207,-5241,-5273,-5304,-5333,-5360,-5384,-5405,
+-5421,-5434,-5443,-5447,-5445,-5438,-5425,-5408,-5388,-5366,-5342,-5317,-5293,-5270,-5254,-5242,-5229,-5211,-5186,-5144,
+-5100,-5062,-5035,-5025,-5026,-5045,-5068,-5120,-5184,-5238,-5286,-5313,-5328,-5334,-5343,-5357,-5368,-5371,-5379,-5390,
+-5400,-5407,-5422,-5442,-5457,-5478,-5499,-5517,-5530,-5536,-5541,-5538,-5529,-5521,-5512,-5506,-5513,-5520,-5526,-5535,
+-5547,-5554,-5557,-5555,-5542,-5542,-5561,-5568,-5577,-5610,-5626,-5632,-5623,-5606,-5587,-5576,-5577,-5584,-5598,-5615,
+-5631,-5638,-5664,-5692,-5713,-5733,-5750,-5764,-5778,-5784,-5784,-5815,-5859,-5877,-5884,-5885,-5885,-5884,-5887,-5892,
+-5896,-5901,-5902,-5907,-5916,-5928,-5943,-5963,-5984,-6006,-6018,-6018,-6016,-6020,-6023,-6028,-6031,-6041,-6053,-6053,
+-6058,-6083,-6116,-6139,-6155,-6174,-6190,-6201,-6208,-6212,-6217,-6221,-6223,-6221,-6223,-6238,-6266,-6292,-6300,-6289,
+-6265,-6246,-6242,-6240,-6231,-6212,-6186,-6153,-6120,-6078,-6042,-6044,-6055,-6042,-6023,-6007,-5984,-5957,-5942,-5946,
+-5954,-5943,-5925,-5903,-5886,-5881,-5901,-5911,-5897,-5888,-5887,-5880,-5876,-5869,-5855,-5834,-5817,-5811,-5816,-5810,
+-5801,-5788,-5778,-5766,-5749,-5736,-5727,-5724,-5711,-5688,-5670,-5668,-5670,-5672,-5677,-5682,-5686,-5689,-5687,-5680,
+-5678,-5679,-5688,-5690,-5699,-5703,-5687,-5665,-5650,-5640,-5638,-5639,-5635,-5635,-5637,-5631,-5620,-5594,-5578,-5565,
+-5550,-5546,-5547,-5545,-5543,-5539,-5528,-5517,-5510,-5499,-5495,-5494,-5491,-5478,-5465,-5452,-5441,-5422,-5399,-5380,
+-5370,-5360,-5343,-5327,-5319,-5310,-5296,-5287,-5288,-5288,-5278,-5270,-5260,-5250,-5236,-5221,-5204,-5192,-5184,-5172,
+-5150,-5124,-5104,-5092,-5084,-5073,-5059,-5041,-5019,-5010,-5012,-5002,-4982,-4965,-4960,-4957,-4944,-4924,-4905,-4887,
+-4870,-4852,-4833,-4818,-4802,-4787,-4772,-4752,-4731,-4712,-4695,-4678,-4662,-4647,-4630,-4613,-4595,-4576,-4558,-4537,
+-4514,-4494,-4471,-4450,-4429,-4409,-4391,-4366,-4332,-4303,-4280,-4256,-4231,-4206,-4179,-4153,-4130,-4107,-4084,-4060,
+-4038,-4015,-3990,-3970,-3957,-3939,-3918,-3905,-3893,-3886,-3875,-3858,-3838,-3821,-3808,-3795,-3780,-3769,-3760,-3753,
+-3746,-3739,-3734,-3728,-3721,-3711,-3702,-3687,-3676,-3664,-3650,-3638,-3629,-3619,-3607,-3581,-3563,-3559,-3552,-3545,
+-3539,-3526,-3501,-3478,-3475,-3473,-3460,-3443,-3428,-3414,-3400,-3389,-3376,-3361,-3343,-3326,-3311,-3296,-3281,-3269,
+-3256,-3244,-3233,-3224,-3219,-3216,-3215,-3214,-3210,-3202,-3191,-3178,-3162,-3142,-3119,-3099,-3084,-3075,-3070,-3062,
+-3052,-3040,-3029,-3018,-3005,-2989,-2976,-2970,-2964,-2956,-2946,-2934,-2920,-2906,-2892,-2877,-2861,-2845,-2835,-2828,
+-2819,-2811,-2801,-2789,-2776,-2761,-2745,-2732,-2718,-2706,-2694,-2680,-2660,-2637,-2617,-2599,-2585,-2576,-2570,-2565,
+-2556,-2547,-2539,-2529,-2517,-2502,-2485,-2468,-2456,-2441,-2423,-2404,-2387,-2373,-2366,-2362,-2361,-2357,-2336,-2296,
+-2245,-2200,-2164,-2134,-2107,-2078,-2041,-2001,-1957,-1909,-1858,-1809,-1766,-1736,-1725,-1726,-1714,-1697,-1675,-1652,
+-1632,-1619,-1607,-1593,-1581,-1570,-1556,-1537,-1512,-1490,-1473,-1457,-1437,-1422,-1414,-1406,-1393,-1377,-1357,-1336,
+-1314,-1281,-1244,-1209,-1176,-1148,-1123,-1100,-1077,-1054,-1032,-1012,-991,-960,-923,-884,-851,-825,-808,-793,
+-777,-756,-733,-708,-686,-667,-643,-612,-571,-502,-402,-313,-251,-206,-166,-133,-103,-73,-50,-18,
+21,62,100,136,168,199,234,265,295,323,348,369,384,411,433,454,498,541,592,639,
+666,681,703,734,774,817,863,905,941,957,984,1020,1035,1045,1050,1045,1033,1015,993,967,
+938,906,875,845,816,790,768,750,737,728,725,726,732,742,754,769,785,801,817,828,
+836,845,856,864,874,884,904,914,922,910,888,861,815,758,709,669,634,599,566,540,
+518,501,485,474,466,463,465,469,471,478,486,493,495,507,522,525,537,553,570,580,
+592,591,594,596,593,592,590,584,568,549,540,523,509,500,494,496,501,505,509,511,
+508,506,506,507,510,516,525,538,547,558,568,577,580,583,591,597,598,599,604,602,
+603,606,608,610,610,612,614,614,615,622,628,628,620,613,606,605,603,595,582,574,
+568,560,545,532,521,515,514,508,495,482,471,468,465,465,460,457,457,462,467,462,
+457,454,452,457,463,462,456,451,454,462,469,468,467,465,463,463,465,470,472,474,
+472,468,465,466,471,473,473,473,475,479,483,488,491,491,494,502,512,521,526,526,
+529,532,536,543,548,548,548,550,556,565,570,569,568,568,571,570,571,573,570,568,
+568,568,570,571,575,577,580,586,591,595,603,613,623,635,649,666,684,698,705,712,
+719,727,737,750,767,789,816,834,839,839,840,841,838,837,834,838,850,870,887,894,
+896,895,892,887,881,876,873,871,874,882,894,903,914,928,941,951,945,948,951,953,
+954,956,962,969,976,984,992,1009,1029,1052,1078,1100,1122,1144,1163,1182,1202,1220,1236,1258,
+1279,1296,1309,1321,1335,1347,1359,1374,1387,1399,1403,1405,1417,1429,1439,1450,1472,1500,1532,1561,
+1593,1610,1611,1609,1600,1582,1561,1541,1531,1526,1526,1528,1539,1558,1566,1567,1563,1546,1532,1525,
+1522,1528,1526,1518,1504,1490,1483,1480,1485,1499,1522,1538,1541,1543,1546,1552,1562,1573,1584,1592,
+1596,1599,1603,1608,1614,1619,1626,1631,1638,1644,1651,1659,1662,1666,1674,1683,1688,1692,1688,1684,
+1685,1691,1700,1705,1710,1713,1722,1734,1756,1784,1804,1824,1852,1881,1908,1942,1997,2070,2153,2233,
+2298,2336,2358,2373,2378,2379,2375,2378,2385,2391,2392,2390,2386,2379,2372,2363,2352,2340,2331,2321,
+2306,2287,2269,2254,2245,2234,2227,2222,2220,2227,2244,2263,2280,2297,2312,2325,2340,2357,2375,2394,
+2414,2436,2460,2485,2512,2540,2571,2601,2632,2663,2692,2721,2747,2770,2792,2810,2825,2838,2846,2851,
+2853,2854,2852,2850,2847,2846,2846,2848,2851,2859,2870,2884,2903,2925,2952,2982,3016,3054,3093,3134,
+3177,3217,3257,3298,3336,3369,3400,3426,3447,3464,3478,3486,3490,3491,3486,3479,3467,3452,3435,3417,
+3399,3380,3361,3342,3323,3305,3287,3270,3255,3238,3223,3206,3188,3169,3150,3129,3106,3081,3055,3029,
+3003,2976,2950,2925,2901,2878,2857,2837,2819,2803,2787,2773,2759,2746,2733,2721,2709,2697,2684,2669,
+2653,2634,2613,2591,2566,2539,2511,2480,2447,2414,2378,2341,2302,2263,2222,2180,2138,2096,2054,2014,
+1975,1938,1904,1872,1842,1814,1788,1763,1735,1706,1680,1660,1638,1619,1603,1586,1573,1567,1563,1569,
+1579,1596,1607,1621,1639,1657,1672,1689,1704,1715,1723,1730,1734,1736,1735,1733,1728,1721,1713,1702,
+1689,1675,1659,1642,1625,1606,1585,1564,1543,1520,1498,1475,1453,1432,1411,1390,1371,1352,1333,1315,
+1299,1284,1272,1260,1248,1236,1224,1213,1200,1187,1173,1159,1145,1130,1114,1098,1083,1067,1052,1038,
+1025,1013,1003,995,987,980,974,969,963,957,948,938,924,905,880,849,811,765,710,648,
+576,497,410,319,223,123,22,-77,-177,-274,-363,-446,-521,-588,-645,-691,-727,-752,-768,-776,
+-775,-769,-759,-746,-734,-722,-715,-713,-717,-728,-747,-774,-808,-851,-902,-959,-1021,-1087,-1155,-1223,
+-1292,-1358,-1420,-1479,-1532,-1579,-1620,-1655,-1684,-1707,-1725,-1737,-1747,-1754,-1759,-1764,-1770,-1777,-1786,-1798,
+-1812,-1830,-1851,-1875,-1901,-1929,-1957,-1987,-2016,-2044,-2071,-2097,-2120,-2142,-2161,-2178,-2193,-2207,-2219,-2230,
+-2241,-2252,-2264,-2277,-2291,-2307,-2326,-2346,-2369,-2394,-2420,-2448,-2478,-2508,-2539,-2569,-2598,-2626,-2653,-2678,
+-2700,-2721,-2740,-2757,-2773,-2788,-2803,-2817,-2831,-2847,-2864,-2884,-2907,-2933,-2963,-2997,-3035,-3076,-3122,-3172,
+-3224,-3280,-3337,-3396,-3454,-3514,-3570,-3624,-3675,-3720,-3761,-3795,-3825,-3847,-3864,-3872,-3875,-3872,-3863,-3849,
+-3832,-3813,-3793,-3773,-3754,-3739,-3728,-3720,-3716,-3717,-3725,-3739,-3759,-3783,-3813,-3846,-3882,-3920,-3960,-3999,
+-4038,-4074,-4106,-4133,-4156,-4173,-4185,-4190,-4189,-4183,-4173,-4159,-4144,-4127,-4110,-4094,-4080,-4069,-4063,-4061,
+-4065,-4076,-4091,-4113,-4141,-4173,-4209,-4249,-4291,-4337,-4384,-4431,-4479,-4526,-4571,-4615,-4656,-4695,-4730,-4764,
+-4795,-4826,-4858,-4888,-4916,-4950,-4983,-5016,-5050,-5085,-5122,-5160,-5200,-5239,-5275,-5311,-5344,-5376,-5405,-5430,
+-5451,-5469,-5482,-5491,-5495,-5494,-5488,-5478,-5464,-5447,-5428,-5407,-5386,-5366,-5342,-5322,-5305,-5294,-5286,-5274,
+-5257,-5235,-5217,-5206,-5200,-5205,-5217,-5239,-5265,-5304,-5348,-5379,-5406,-5414,-5414,-5403,-5389,-5384,-5390,-5397,
+-5406,-5421,-5433,-5445,-5456,-5471,-5494,-5520,-5548,-5566,-5575,-5586,-5594,-5595,-5599,-5601,-5600,-5590,-5584,-5582,
+-5586,-5594,-5603,-5615,-5622,-5622,-5623,-5620,-5610,-5612,-5632,-5648,-5656,-5651,-5628,-5619,-5618,-5617,-5619,-5633,
+-5655,-5678,-5691,-5699,-5708,-5721,-5739,-5758,-5781,-5808,-5836,-5863,-5888,-5906,-5919,-5926,-5931,-5936,-5939,-5943,
+-5943,-5945,-5949,-5954,-5958,-5964,-5974,-5988,-6002,-6011,-6027,-6046,-6060,-6076,-6091,-6099,-6106,-6106,-6092,-6059,
+-5993,-5949,-5996,-6063,-6112,-6150,-6184,-6212,-6228,-6239,-6248,-6254,-6259,-6261,-6261,-6251,-6248,-6275,-6309,-6327,
+-6324,-6305,-6283,-6271,-6268,-6260,-6253,-6243,-6227,-6214,-6195,-6180,-6177,-6173,-6167,-6154,-6126,-6090,-6061,-6037,
+-6016,-5998,-6000,-6001,-5988,-5971,-5955,-5944,-5935,-5933,-5934,-5940,-5935,-5922,-5913,-5903,-5897,-5887,-5876,-5866,
+-5858,-5849,-5845,-5838,-5827,-5818,-5810,-5812,-5819,-5824,-5813,-5779,-5756,-5758,-5766,-5768,-5765,-5758,-5751,-5741,
+-5729,-5725,-5722,-5716,-5708,-5705,-5712,-5730,-5741,-5732,-5720,-5706,-5698,-5694,-5687,-5679,-5669,-5659,-5651,-5637,
+-5623,-5608,-5586,-5575,-5582,-5587,-5585,-5577,-5564,-5549,-5534,-5523,-5516,-5514,-5516,-5507,-5487,-5474,-5460,-5447,
+-5437,-5430,-5412,-5392,-5377,-5371,-5365,-5352,-5334,-5321,-5322,-5319,-5309,-5302,-5287,-5276,-5265,-5250,-5239,-5232,
+-5221,-5200,-5182,-5162,-5144,-5132,-5121,-5111,-5098,-5082,-5064,-5053,-5049,-5042,-5026,-5008,-4993,-4980,-4969,-4954,
+-4936,-4916,-4897,-4878,-4861,-4842,-4821,-4805,-4787,-4769,-4750,-4733,-4715,-4697,-4679,-4660,-4642,-4626,-4606,-4583,
+-4558,-4539,-4518,-4497,-4479,-4458,-4440,-4426,-4404,-4371,-4344,-4321,-4296,-4274,-4249,-4223,-4201,-4177,-4149,-4125,
+-4095,-4067,-4041,-4016,-3997,-3981,-3968,-3954,-3939,-3930,-3922,-3913,-3901,-3884,-3870,-3862,-3851,-3838,-3820,-3808,
+-3797,-3790,-3783,-3776,-3769,-3759,-3749,-3738,-3725,-3710,-3696,-3680,-3669,-3661,-3656,-3648,-3628,-3604,-3590,-3582,
+-3581,-3574,-3559,-3526,-3471,-3456,-3479,-3489,-3482,-3467,-3450,-3435,-3420,-3402,-3390,-3377,-3364,-3352,-3339,-3325,
+-3312,-3303,-3295,-3287,-3280,-3275,-3272,-3267,-3257,-3245,-3241,-3229,-3212,-3190,-3169,-3147,-3128,-3117,-3109,-3105,
+-3099,-3088,-3072,-3057,-3039,-3023,-3011,-3002,-2999,-2996,-2989,-2977,-2962,-2945,-2925,-2906,-2891,-2878,-2864,-2854,
+-2844,-2835,-2823,-2810,-2798,-2785,-2772,-2758,-2743,-2729,-2716,-2700,-2686,-2671,-2653,-2633,-2615,-2599,-2586,-2577,
+-2574,-2574,-2568,-2561,-2557,-2548,-2537,-2520,-2506,-2495,-2481,-2468,-2458,-2448,-2444,-2444,-2446,-2442,-2412,-2358,
+-2295,-2238,-2193,-2157,-2131,-2107,-2078,-2040,-1996,-1939,-1863,-1767,-1646,-1539,-1520,-1565,-1628,-1670,-1682,-1680,
+-1669,-1647,-1621,-1597,-1580,-1564,-1550,-1534,-1516,-1494,-1474,-1456,-1443,-1434,-1421,-1408,-1393,-1377,-1361,-1340,
+-1316,-1291,-1261,-1224,-1188,-1156,-1130,-1108,-1086,-1059,-1028,-995,-967,-937,-899,-860,-824,-793,-767,-748,
+-736,-720,-710,-694,-675,-653,-622,-566,-495,-419,-355,-310,-271,-238,-209,-178,-143,-106,-70,-33,
+4,42,72,89,109,156,206,239,271,297,323,347,367,386,406,426,447,479,524,575,
+616,640,655,674,701,741,788,833,877,912,935,965,995,1019,1030,1034,1029,1021,1011,990,
+966,937,907,875,843,812,783,756,733,714,700,690,685,684,687,694,704,715,729,743,
+756,768,783,798,814,828,844,853,855,852,834,794,747,703,657,613,577,546,510,475,
+442,423,404,391,386,379,380,384,391,400,405,413,419,424,437,450,457,470,485,498,
+512,518,516,514,513,518,512,504,491,483,473,458,444,429,423,426,426,425,426,429,
+430,433,435,438,439,445,455,465,474,481,489,492,497,504,514,519,520,520,522,523,
+523,526,530,535,538,538,537,538,535,533,535,534,529,524,518,516,511,504,496,486,
+479,468,457,446,437,428,419,412,403,394,389,387,382,378,374,373,371,372,374,375,
+374,375,375,375,377,379,380,381,383,388,394,397,398,399,402,406,409,412,412,414,
+416,419,422,426,424,425,429,437,443,442,447,449,452,455,456,456,461,467,476,483,
+485,490,494,496,501,504,508,514,518,524,529,534,537,543,546,548,545,544,544,546,
+545,548,549,551,555,561,569,579,590,597,604,615,628,642,655,666,676,687,701,716,
+728,737,748,762,782,805,823,838,858,875,890,908,932,943,943,930,909,903,902,900,
+894,887,879,870,865,864,861,864,872,883,894,903,910,919,929,939,945,968,974,977,
+978,977,980,986,994,1004,1014,1021,1030,1047,1069,1095,1121,1143,1169,1198,1226,1255,1280,1299,
+1324,1345,1360,1365,1367,1373,1381,1391,1397,1403,1414,1428,1434,1433,1440,1457,1471,1494,1522,1553,
+1578,1605,1624,1630,1633,1622,1608,1594,1580,1573,1572,1578,1585,1594,1609,1629,1639,1644,1649,1647,
+1639,1638,1644,1649,1637,1617,1598,1580,1562,1552,1554,1562,1567,1560,1559,1563,1573,1586,1598,1611,
+1623,1635,1646,1647,1649,1653,1663,1671,1675,1677,1678,1680,1688,1694,1697,1708,1722,1731,1736,1738,
+1737,1733,1734,1739,1753,1774,1800,1827,1848,1863,1881,1906,1933,1969,2003,2037,2076,2125,2170,2206,
+2237,2264,2284,2298,2306,2309,2307,2308,2314,2322,2324,2320,2318,2309,2300,2288,2276,2262,2247,2231,
+2217,2202,2180,2163,2147,2133,2117,2105,2100,2096,2092,2117,2147,2168,2192,2217,2241,2264,2288,2313,
+2343,2375,2409,2446,2485,2524,2566,2608,2650,2691,2730,2767,2802,2832,2859,2883,2900,2914,2923,2927,
+2928,2924,2918,2911,2903,2895,2887,2880,2875,2873,2873,2879,2889,2902,2919,2941,2966,2994,3026,3060,
+3094,3133,3172,3210,3246,3281,3312,3341,3364,3383,3400,3412,3421,3428,3430,3429,3424,3417,3407,3396,
+3383,3371,3357,3343,3329,3315,3301,3287,3273,3260,3246,3233,3219,3204,3186,3169,3148,3126,3103,3078,
+3052,3025,2999,2972,2946,2919,2895,2873,2851,2831,2813,2796,2779,2763,2748,2733,2719,2703,2687,2670,
+2652,2633,2611,2586,2560,2531,2500,2468,2432,2396,2359,2318,2276,2233,2189,2146,2103,2060,2018,1977,
+1938,1901,1866,1833,1802,1773,1747,1723,1701,1680,1659,1636,1615,1600,1589,1575,1566,1563,1562,1562,
+1568,1579,1591,1602,1613,1624,1635,1653,1671,1686,1697,1707,1717,1726,1732,1736,1740,1739,1737,1732,
+1723,1713,1701,1686,1670,1651,1630,1609,1585,1561,1536,1511,1486,1462,1437,1414,1392,1371,1351,1333,
+1315,1299,1285,1272,1261,1251,1240,1231,1222,1212,1202,1192,1182,1171,1160,1148,1136,1125,1114,1103,
+1093,1082,1073,1064,1055,1047,1037,1028,1018,1006,991,974,952,926,895,858,814,764,705,639,
+566,486,400,309,214,117,18,-81,-178,-274,-364,-447,-523,-589,-645,-696,-738,-771,-793,-808,
+-816,-819,-818,-814,-808,-804,-802,-804,-811,-823,-842,-868,-901,-941,-986,-1038,-1095,-1156,-1220,-1284,
+-1348,-1410,-1470,-1526,-1578,-1624,-1666,-1701,-1731,-1755,-1774,-1788,-1799,-1807,-1813,-1819,-1825,-1831,-1838,-1848,
+-1859,-1872,-1890,-1909,-1932,-1957,-1982,-2010,-2037,-2064,-2091,-2117,-2141,-2163,-2184,-2201,-2216,-2230,-2243,-2253,
+-2263,-2273,-2283,-2294,-2305,-2319,-2334,-2352,-2371,-2394,-2418,-2445,-2473,-2502,-2533,-2565,-2597,-2627,-2657,-2686,
+-2713,-2738,-2762,-2783,-2803,-2821,-2838,-2853,-2869,-2884,-2900,-2917,-2936,-2958,-2983,-3011,-3043,-3079,-3119,-3162,
+-3210,-3261,-3314,-3369,-3426,-3483,-3541,-3597,-3650,-3700,-3745,-3785,-3818,-3847,-3869,-3885,-3894,-3897,-3894,-3885,
+-3873,-3858,-3840,-3822,-3804,-3790,-3779,-3768,-3762,-3762,-3768,-3780,-3799,-3823,-3852,-3885,-3921,-3958,-3997,-4037,
+-4077,-4115,-4149,-4179,-4203,-4222,-4235,-4242,-4243,-4238,-4228,-4213,-4193,-4173,-4150,-4127,-4107,-4088,-4075,-4065,
+-4061,-4061,-4070,-4084,-4105,-4132,-4163,-4200,-4240,-4285,-4331,-4380,-4430,-4478,-4528,-4575,-4621,-4664,-4705,-4743,
+-4779,-4814,-4848,-4882,-4916,-4949,-4982,-5015,-5050,-5086,-5122,-5161,-5199,-5238,-5275,-5313,-5349,-5383,-5414,-5443,
+-5469,-5492,-5510,-5525,-5534,-5540,-5541,-5537,-5530,-5518,-5505,-5489,-5473,-5455,-5436,-5419,-5399,-5380,-5364,-5351,
+-5340,-5331,-5325,-5323,-5324,-5326,-5334,-5348,-5365,-5383,-5397,-5411,-5424,-5429,-5435,-5443,-5443,-5432,-5415,-5398,
+-5391,-5397,-5398,-5405,-5419,-5442,-5466,-5489,-5515,-5537,-5562,-5580,-5597,-5615,-5625,-5635,-5642,-5651,-5656,-5662,
+-5657,-5652,-5648,-5645,-5647,-5652,-5658,-5662,-5666,-5674,-5679,-5681,-5681,-5674,-5665,-5661,-5658,-5667,-5681,-5683,
+-5684,-5705,-5727,-5739,-5745,-5733,-5738,-5750,-5765,-5782,-5804,-5830,-5855,-5882,-5902,-5909,-5903,-5927,-5960,-5972,
+-5979,-5978,-5982,-5989,-5999,-6008,-6013,-6021,-6024,-6034,-6043,-6057,-6068,-6080,-6103,-6127,-6147,-6156,-6158,-6160,
+-6153,-6136,-6117,-6122,-6147,-6175,-6208,-6238,-6257,-6273,-6292,-6307,-6320,-6329,-6331,-6327,-6313,-6289,-6287,-6310,
+-6333,-6343,-6336,-6317,-6299,-6293,-6285,-6273,-6265,-6251,-6239,-6226,-6201,-6178,-6172,-6167,-6160,-6162,-6163,-6159,
+-6148,-6127,-6102,-6081,-6056,-6034,-6028,-6024,-6022,-6017,-6008,-5995,-5986,-5986,-5979,-5961,-5940,-5929,-5932,-5933,
+-5923,-5911,-5900,-5893,-5893,-5889,-5881,-5871,-5868,-5869,-5873,-5874,-5867,-5845,-5832,-5844,-5841,-5822,-5810,-5795,
+-5787,-5785,-5780,-5771,-5760,-5752,-5746,-5746,-5752,-5772,-5790,-5787,-5770,-5748,-5735,-5729,-5724,-5712,-5704,-5691,
+-5678,-5673,-5666,-5658,-5646,-5626,-5619,-5620,-5618,-5614,-5603,-5587,-5573,-5563,-5554,-5550,-5546,-5536,-5521,-5503,
+-5493,-5485,-5475,-5459,-5442,-5428,-5415,-5409,-5406,-5388,-5369,-5357,-5353,-5350,-5343,-5333,-5320,-5307,-5293,-5280,
+-5266,-5256,-5244,-5228,-5212,-5199,-5186,-5174,-5160,-5147,-5133,-5120,-5106,-5095,-5084,-5072,-5058,-5044,-5032,-5017,
+-5002,-4985,-4966,-4946,-4926,-4904,-4884,-4863,-4845,-4825,-4806,-4786,-4768,-4748,-4728,-4707,-4687,-4667,-4648,-4627,
+-4608,-4587,-4564,-4542,-4521,-4499,-4479,-4461,-4448,-4431,-4406,-4370,-4340,-4326,-4308,-4285,-4262,-4242,-4217,-4192,
+-4168,-4141,-4113,-4087,-4062,-4045,-4030,-4017,-4002,-3989,-3973,-3957,-3944,-3932,-3917,-3913,-3918,-3907,-3886,-3861,
+-3839,-3807,-3759,-3735,-3749,-3762,-3768,-3757,-3735,-3703,-3672,-3643,-3638,-3654,-3663,-3667,-3665,-3648,-3604,-3559,
+-3545,-3564,-3581,-3576,-3546,-3490,-3457,-3477,-3488,-3488,-3489,-3481,-3465,-3440,-3418,-3400,-3389,-3381,-3357,-3348,
+-3361,-3364,-3359,-3350,-3346,-3341,-3334,-3325,-3311,-3295,-3278,-3261,-3242,-3223,-3202,-3184,-3167,-3152,-3145,-3140,
+-3137,-3131,-3121,-3105,-3088,-3069,-3048,-3033,-3026,-3024,-3024,-3018,-3006,-2988,-2967,-2944,-2923,-2905,-2895,-2884,
+-2872,-2859,-2843,-2831,-2819,-2808,-2798,-2788,-2776,-2764,-2751,-2737,-2722,-2704,-2688,-2669,-2652,-2637,-2621,-2607,
+-2596,-2589,-2586,-2584,-2582,-2576,-2570,-2564,-2557,-2549,-2538,-2530,-2524,-2520,-2521,-2523,-2526,-2520,-2486,-2421,
+-2341,-2272,-2223,-2186,-2157,-2131,-2108,-2083,-2054,-2017,-1971,-1915,-1838,-1748,-1657,-1614,-1636,-1678,-1705,-1718,
+-1715,-1708,-1695,-1672,-1641,-1609,-1579,-1556,-1537,-1519,-1506,-1492,-1480,-1468,-1456,-1444,-1428,-1407,-1381,-1358,
+-1334,-1304,-1276,-1245,-1211,-1171,-1134,-1104,-1076,-1051,-1020,-984,-947,-908,-874,-833,-789,-753,-727,-706,
+-682,-652,-614,-575,-541,-507,-480,-452,-424,-396,-367,-335,-305,-273,-238,-201,-166,-127,-90,-56,
+-24,8,37,64,86,112,139,181,223,258,284,306,326,347,367,387,409,430,455,484,
+524,562,586,610,644,679,720,764,809,850,890,919,941,963,976,1003,1009,1001,998,1002,
+991,973,949,919,886,853,819,787,756,727,702,681,664,651,643,638,638,640,646,653,
+664,675,690,707,724,745,763,776,791,798,789,763,721,669,620,567,520,487,449,409,
+383,356,331,313,303,298,293,292,295,305,307,312,329,345,350,360,377,385,397,407,
+411,415,418,419,418,414,412,405,401,390,382,378,371,373,374,369,366,365,366,368,
+368,367,365,366,369,375,385,394,403,410,414,419,426,427,431,438,442,443,441,440,
+444,445,448,452,461,465,466,470,471,467,461,455,452,448,441,436,429,421,414,405,
+396,386,376,369,361,350,339,334,329,324,320,314,310,304,303,304,305,309,309,308,
+310,312,315,318,323,323,327,330,333,338,341,345,347,350,353,356,360,361,363,365,
+366,366,369,371,375,377,379,382,385,388,392,395,399,402,406,410,415,421,426,433,
+438,445,451,457,463,468,474,480,485,489,493,499,505,510,514,515,516,517,519,521,
+523,526,531,536,542,549,557,568,582,595,606,619,631,645,657,669,681,693,704,717,
+730,743,756,772,792,809,827,847,869,890,911,931,948,961,975,979,973,964,966,973,
+965,939,922,913,906,900,898,901,904,911,919,926,934,940,946,954,960,968,1044,1052,
+1060,1062,1059,1058,1064,1073,1078,1087,1102,1114,1121,1131,1146,1166,1191,1212,1235,1263,1293,1319,
+1343,1363,1388,1406,1414,1422,1434,1450,1455,1446,1442,1451,1465,1480,1487,1483,1485,1504,1529,1560,
+1596,1631,1653,1671,1692,1709,1715,1713,1714,1714,1718,1728,1733,1737,1747,1760,1774,1783,1792,1801,
+1810,1817,1820,1823,1820,1813,1794,1765,1725,1684,1652,1628,1618,1605,1591,1582,1582,1591,1609,1624,
+1639,1652,1670,1685,1692,1690,1691,1695,1701,1701,1700,1701,1704,1712,1725,1736,1750,1766,1776,1785,
+1791,1794,1796,1800,1812,1835,1869,1906,1944,1976,2007,2040,2070,2092,2108,2123,2138,2151,2165,2181,
+2197,2211,2224,2235,2243,2248,2248,2242,2236,2236,2239,2240,2234,2229,2220,2209,2197,2185,2172,2158,
+2144,2128,2110,2090,2074,2059,2050,2043,2035,2030,2031,2031,2037,2054,2083,2113,2145,2176,2204,2235,
+2269,2306,2346,2390,2436,2485,2535,2586,2636,2687,2735,2781,2823,2861,2894,2924,2948,2966,2979,2986,
+2988,2986,2977,2967,2955,2944,2932,2920,2909,2899,2893,2889,2890,2894,2901,2911,2926,2944,2967,2993,
+3022,3053,3085,3118,3149,3177,3205,3232,3257,3278,3296,3311,3322,3331,3337,3340,3341,3339,3335,3330,
+3323,3316,3308,3300,3291,3283,3274,3266,3257,3249,3240,3232,3223,3211,3200,3187,3171,3154,3135,3113,
+3091,3068,3043,3019,2993,2968,2943,2918,2895,2872,2850,2830,2810,2791,2773,2755,2736,2718,2699,2680,
+2658,2636,2611,2583,2553,2520,2486,2449,2411,2371,2330,2287,2244,2200,2155,2110,2066,2023,1981,1942,
+1904,1869,1837,1806,1779,1753,1730,1709,1690,1672,1656,1641,1626,1608,1591,1580,1577,1574,1575,1578,
+1582,1586,1590,1595,1604,1617,1629,1640,1652,1665,1676,1690,1703,1715,1725,1735,1743,1749,1753,1755,
+1752,1747,1739,1728,1714,1697,1678,1657,1634,1610,1583,1557,1528,1500,1474,1448,1423,1399,1376,1355,
+1336,1317,1301,1286,1273,1261,1251,1241,1233,1225,1217,1209,1201,1193,1185,1177,1168,1160,1152,1144,
+1136,1128,1119,1111,1101,1091,1079,1067,1052,1035,1014,991,963,931,893,850,800,744,681,612,
+537,456,369,279,186,91,-4,-99,-193,-284,-371,-452,-527,-596,-656,-705,-746,-780,-806,-826,
+-840,-848,-853,-856,-857,-859,-862,-868,-878,-893,-914,-940,-972,-1010,-1053,-1102,-1154,-1211,-1269,-1329,
+-1390,-1449,-1506,-1561,-1612,-1658,-1700,-1737,-1769,-1795,-1817,-1835,-1850,-1861,-1870,-1877,-1884,-1889,-1896,-1904,
+-1914,-1926,-1941,-1958,-1977,-1997,-2020,-2043,-2067,-2091,-2116,-2139,-2162,-2183,-2203,-2222,-2238,-2252,-2266,-2277,
+-2288,-2298,-2307,-2317,-2328,-2340,-2353,-2368,-2385,-2404,-2426,-2450,-2476,-2503,-2532,-2562,-2593,-2624,-2655,-2685,
+-2714,-2741,-2768,-2792,-2814,-2834,-2853,-2870,-2887,-2902,-2918,-2934,-2952,-2970,-2991,-3015,-3042,-3073,-3108,-3146,
+-3187,-3233,-3282,-3333,-3387,-3443,-3499,-3554,-3609,-3661,-3710,-3755,-3794,-3828,-3856,-3878,-3895,-3905,-3910,-3907,
+-3902,-3891,-3878,-3864,-3850,-3836,-3824,-3815,-3810,-3808,-3812,-3821,-3838,-3860,-3888,-3920,-3954,-3989,-4027,-4068,
+-4109,-4148,-4184,-4217,-4245,-4267,-4284,-4293,-4297,-4293,-4283,-4267,-4248,-4226,-4201,-4175,-4150,-4126,-4105,-4089,
+-4077,-4071,-4072,-4079,-4092,-4112,-4138,-4169,-4206,-4248,-4294,-4342,-4393,-4444,-4496,-4547,-4596,-4645,-4691,-4735,
+-4776,-4816,-4854,-4891,-4926,-4961,-4995,-5030,-5063,-5098,-5133,-5168,-5205,-5241,-5278,-5314,-5349,-5384,-5416,-5447,
+-5475,-5500,-5523,-5541,-5556,-5567,-5574,-5577,-5576,-5571,-5564,-5554,-5542,-5530,-5516,-5502,-5487,-5472,-5458,-5444,
+-5432,-5421,-5412,-5406,-5403,-5404,-5407,-5412,-5420,-5429,-5440,-5449,-5461,-5468,-5476,-5478,-5473,-5460,-5441,-5414,
+-5377,-5342,-5312,-5295,-5290,-5305,-5345,-5401,-5453,-5481,-5510,-5531,-5547,-5564,-5581,-5595,-5611,-5632,-5655,-5672,
+-5684,-5696,-5707,-5709,-5704,-5695,-5693,-5693,-5698,-5705,-5715,-5724,-5726,-5728,-5734,-5735,-5737,-5731,-5726,-5727,
+-5725,-5726,-5736,-5758,-5786,-5801,-5791,-5769,-5761,-5771,-5788,-5805,-5820,-5842,-5869,-5897,-5924,-5946,-5965,-5978,
+-5989,-6002,-6014,-6019,-6024,-6031,-6036,-6040,-6046,-6052,-6063,-6081,-6096,-6111,-6123,-6136,-6159,-6185,-6205,-6218,
+-6225,-6218,-6198,-6182,-6198,-6233,-6265,-6289,-6302,-6312,-6325,-6339,-6352,-6361,-6367,-6366,-6363,-6358,-6355,-6353,
+-6356,-6357,-6358,-6356,-6348,-6338,-6330,-6324,-6307,-6288,-6268,-6259,-6258,-6251,-6235,-6226,-6219,-6211,-6201,-6196,
+-6199,-6192,-6182,-6174,-6165,-6150,-6141,-6133,-6120,-6108,-6098,-6088,-6079,-6068,-6053,-6037,-6014,-5988,-5970,-5962,
+-5961,-5964,-5960,-5949,-5944,-5943,-5940,-5933,-5922,-5909,-5902,-5901,-5900,-5903,-5912,-5921,-5909,-5885,-5869,-5860,
+-5848,-5838,-5832,-5828,-5826,-5819,-5810,-5802,-5795,-5798,-5809,-5818,-5827,-5826,-5812,-5802,-5794,-5783,-5768,-5752,
+-5738,-5727,-5721,-5715,-5714,-5708,-5699,-5678,-5666,-5663,-5656,-5644,-5635,-5622,-5608,-5593,-5582,-5576,-5569,-5560,
+-5547,-5535,-5527,-5522,-5510,-5499,-5486,-5469,-5456,-5446,-5434,-5420,-5406,-5392,-5383,-5378,-5370,-5355,-5338,-5330,
+-5319,-5303,-5293,-5280,-5266,-5256,-5247,-5233,-5215,-5205,-5194,-5179,-5165,-5156,-5146,-5132,-5119,-5108,-5096,-5082,
+-5070,-5052,-5034,-5016,-4993,-4973,-4950,-4929,-4909,-4888,-4867,-4844,-4823,-4802,-4781,-4759,-4737,-4716,-4699,-4678,
+-4656,-4635,-4613,-4592,-4572,-4547,-4526,-4502,-4479,-4458,-4442,-4420,-4389,-4348,-4313,-4298,-4288,-4280,-4266,-4249,
+-4231,-4209,-4185,-4158,-4131,-4111,-4090,-4073,-4058,-4044,-4030,-4014,-4000,-3986,-3974,-3968,-3962,-3958,-3941,-3916,
+-3896,-3877,-3853,-3820,-3787,-3760,-3752,-3758,-3747,-3716,-3654,-3571,-3501,-3488,-3533,-3593,-3631,-3644,-3630,-3580,
+-3534,-3552,-3585,-3596,-3592,-3578,-3555,-3527,-3502,-3501,-3507,-3512,-3505,-3496,-3481,-3463,-3443,-3427,-3408,-3400,
+-3407,-3410,-3410,-3406,-3398,-3393,-3384,-3365,-3335,-3311,-3303,-3294,-3274,-3253,-3232,-3213,-3199,-3189,-3180,-3174,
+-3172,-3166,-3157,-3143,-3127,-3111,-3093,-3075,-3063,-3060,-3058,-3053,-3043,-3028,-3008,-2987,-2965,-2944,-2928,-2917,
+-2905,-2892,-2878,-2865,-2853,-2841,-2830,-2825,-2821,-2813,-2801,-2785,-2769,-2747,-2724,-2700,-2678,-2661,-2646,-2631,
+-2619,-2611,-2605,-2602,-2604,-2604,-2600,-2599,-2600,-2598,-2596,-2591,-2584,-2582,-2586,-2592,-2594,-2587,-2555,-2487,
+-2396,-2313,-2252,-2209,-2175,-2151,-2132,-2117,-2103,-2088,-2066,-2041,-2009,-1975,-1941,-1914,-1892,-1875,-1863,-1853,
+-1841,-1824,-1801,-1777,-1748,-1720,-1688,-1653,-1621,-1598,-1581,-1571,-1558,-1543,-1528,-1514,-1500,-1478,-1453,-1423,
+-1390,-1355,-1323,-1287,-1246,-1203,-1159,-1118,-1081,-1044,-1007,-968,-927,-887,-850,-814,-777,-744,-715,-692,
+-664,-629,-601,-576,-551,-527,-501,-475,-448,-422,-395,-370,-342,-310,-273,-237,-201,-165,-136,-108,
+-78,-51,-23,10,41,71,108,140,172,203,233,254,268,289,308,331,350,375,399,421,
+444,468,503,540,576,614,654,696,739,782,825,865,901,930,952,968,981,987,993,995,
+997,989,971,952,929,898,865,830,794,758,726,695,668,644,624,608,595,587,580,577,
+579,584,591,604,625,646,668,687,704,710,713,713,696,666,616,557,500,443,394,355,
+320,292,262,243,226,210,198,190,196,203,212,221,230,242,253,259,267,277,284,286,
+296,302,308,311,316,318,308,304,301,297,298,294,297,303,308,308,313,315,312,312,
+311,309,304,305,307,309,312,319,327,334,339,348,354,358,363,368,370,373,374,371,
+370,371,374,378,382,387,389,391,391,393,388,385,379,376,373,368,362,355,346,337,
+326,316,310,301,288,280,271,263,257,250,244,240,237,233,232,233,235,238,242,244,
+245,245,247,251,257,261,265,268,272,275,278,282,284,290,297,302,302,303,308,313,
+316,319,322,324,327,332,336,340,344,349,353,358,362,365,369,373,380,385,389,395,
+401,409,418,427,435,441,445,447,450,454,460,468,476,482,487,490,490,490,492,496,
+499,505,511,517,524,534,544,555,568,583,602,624,643,662,680,695,706,715,729,745,
+762,781,796,808,821,839,856,872,888,909,932,954,981,1010,1039,1064,1080,1077,1061,1046,
+1030,1013,1002,993,983,978,970,966,968,974,979,983,992,1001,1011,1020,1028,1036,1044,1162,
+1171,1179,1183,1183,1183,1190,1188,1191,1198,1209,1219,1230,1240,1244,1255,1266,1279,1299,1314,1335,
+1359,1377,1398,1429,1451,1469,1483,1497,1509,1513,1512,1514,1520,1535,1545,1544,1547,1553,1567,1593,
+1623,1660,1696,1730,1761,1781,1794,1808,1819,1825,1827,1830,1835,1838,1843,1848,1853,1858,1862,1866,
+1869,1875,1884,1890,1887,1878,1866,1855,1841,1822,1793,1758,1720,1687,1653,1628,1624,1625,1632,1646,
+1655,1669,1685,1702,1709,1713,1718,1719,1723,1726,1729,1728,1731,1738,1751,1763,1776,1791,1806,1823,
+1842,1855,1867,1889,1909,1932,1962,2000,2040,2065,2088,2116,2139,2155,2157,2147,2142,2142,2144,2149,
+2156,2162,2168,2173,2177,2179,2180,2178,2175,2171,2167,2163,2158,2150,2141,2133,2124,2115,2107,2099,
+2089,2078,2068,2058,2048,2038,2030,2022,2015,2011,2010,2008,2011,2018,2027,2048,2076,2107,2138,2169,
+2202,2240,2281,2327,2376,2426,2480,2535,2590,2645,2700,2751,2801,2846,2883,2918,2948,2971,2989,3002,
+3009,3011,3008,2999,2988,2976,2963,2948,2932,2918,2907,2899,2894,2890,2891,2894,2901,2911,2925,2943,
+2962,2984,3007,3032,3057,3082,3104,3127,3148,3167,3183,3197,3208,3217,3223,3228,3230,3231,3230,3229,
+3226,3223,3219,3216,3212,3209,3206,3203,3200,3198,3195,3191,3188,3183,3177,3169,3160,3149,3137,3123,
+3106,3088,3068,3048,3026,3004,2981,2960,2937,2915,2893,2872,2850,2830,2809,2787,2767,2745,2722,2699,
+2676,2649,2621,2589,2554,2518,2479,2438,2396,2350,2305,2259,2213,2166,2120,2074,2028,1984,1943,1905,
+1869,1836,1806,1780,1756,1736,1718,1702,1689,1678,1668,1658,1650,1642,1635,1629,1623,1620,1618,1617,
+1616,1617,1619,1621,1624,1629,1632,1639,1648,1658,1669,1681,1694,1707,1721,1733,1745,1755,1763,1770,
+1774,1773,1771,1765,1756,1743,1727,1708,1687,1663,1638,1611,1583,1554,1525,1495,1467,1439,1413,1388,
+1365,1344,1325,1307,1291,1276,1263,1251,1241,1231,1222,1214,1207,1198,1192,1186,1180,1173,1166,1159,
+1151,1144,1136,1127,1117,1105,1092,1077,1059,1039,1015,987,954,917,874,826,772,712,646,574,
+498,416,330,241,149,57,-34,-126,-214,-299,-381,-458,-529,-594,-652,-702,-746,-780,-807,-828,
+-844,-856,-866,-873,-879,-886,-893,-903,-916,-933,-954,-980,-1011,-1048,-1089,-1135,-1184,-1237,-1292,-1349,
+-1406,-1463,-1519,-1572,-1622,-1670,-1714,-1753,-1789,-1821,-1848,-1872,-1892,-1908,-1922,-1934,-1945,-1954,-1962,-1972,
+-1983,-1993,-2006,-2018,-2032,-2049,-2066,-2084,-2103,-2123,-2144,-2164,-2183,-2202,-2221,-2237,-2252,-2267,-2281,-2293,
+-2304,-2315,-2326,-2336,-2347,-2359,-2372,-2386,-2402,-2419,-2438,-2459,-2483,-2508,-2533,-2561,-2589,-2618,-2647,-2676,
+-2704,-2731,-2758,-2783,-2806,-2828,-2848,-2866,-2883,-2899,-2914,-2930,-2946,-2963,-2981,-3001,-3025,-3052,-3081,-3114,
+-3152,-3192,-3237,-3284,-3335,-3388,-3442,-3497,-3552,-3605,-3657,-3705,-3750,-3789,-3824,-3853,-3877,-3894,-3907,-3913,
+-3914,-3910,-3904,-3896,-3886,-3876,-3866,-3859,-3853,-3851,-3853,-3861,-3874,-3893,-3917,-3946,-3979,-4012,-4049,-4089,
+-4129,-4169,-4207,-4242,-4273,-4299,-4319,-4333,-4341,-4342,-4337,-4326,-4309,-4287,-4264,-4238,-4213,-4187,-4162,-4141,
+-4124,-4111,-4105,-4106,-4111,-4124,-4143,-4168,-4200,-4237,-4279,-4325,-4375,-4426,-4478,-4532,-4584,-4635,-4686,-4735,
+-4781,-4826,-4867,-4907,-4945,-4982,-5017,-5051,-5085,-5118,-5151,-5184,-5217,-5251,-5284,-5318,-5350,-5382,-5414,-5444,
+-5472,-5498,-5521,-5542,-5560,-5576,-5588,-5596,-5602,-5604,-5602,-5598,-5593,-5584,-5575,-5564,-5553,-5542,-5531,-5519,
+-5510,-5500,-5492,-5484,-5478,-5473,-5469,-5471,-5471,-5473,-5479,-5488,-5497,-5500,-5501,-5502,-5503,-5502,-5497,-5489,
+-5474,-5450,-5417,-5383,-5341,-5308,-5295,-5297,-5311,-5357,-5415,-5449,-5472,-5496,-5518,-5531,-5553,-5577,-5597,-5627,
+-5656,-5678,-5697,-5714,-5727,-5742,-5754,-5761,-5761,-5756,-5751,-5754,-5761,-5765,-5772,-5776,-5776,-5774,-5766,-5756,
+-5744,-5734,-5732,-5741,-5747,-5760,-5782,-5792,-5776,-5755,-5763,-5777,-5801,-5821,-5838,-5859,-5886,-5912,-5938,-5958,
+-5972,-5981,-6005,-6030,-6043,-6049,-6056,-6063,-6070,-6073,-6081,-6093,-6110,-6130,-6148,-6160,-6176,-6195,-6214,-6234,
+-6245,-6248,-6230,-6187,-6186,-6239,-6293,-6333,-6351,-6361,-6368,-6376,-6382,-6388,-6390,-6392,-6391,-6386,-6381,-6380,
+-6382,-6380,-6379,-6377,-6371,-6366,-6365,-6365,-6358,-6339,-6320,-6302,-6288,-6291,-6295,-6288,-6276,-6264,-6256,-6254,
+-6252,-6243,-6233,-6227,-6222,-6214,-6206,-6196,-6180,-6166,-6154,-6143,-6141,-6136,-6122,-6103,-6084,-6065,-6044,-6029,
+-6012,-5996,-5979,-5970,-5958,-5948,-5946,-5947,-5953,-5958,-5957,-5951,-5949,-5949,-5948,-5949,-5955,-5956,-5942,-5922,
+-5911,-5904,-5898,-5889,-5883,-5878,-5870,-5861,-5859,-5854,-5846,-5850,-5861,-5873,-5882,-5880,-5869,-5857,-5849,-5843,
+-5828,-5814,-5800,-5790,-5782,-5769,-5757,-5750,-5743,-5730,-5715,-5705,-5694,-5685,-5677,-5659,-5641,-5630,-5620,-5611,
+-5603,-5594,-5583,-5573,-5566,-5557,-5546,-5533,-5521,-5506,-5489,-5482,-5473,-5458,-5441,-5426,-5415,-5405,-5391,-5380,
+-5370,-5361,-5351,-5336,-5320,-5311,-5301,-5290,-5274,-5263,-5251,-5237,-5226,-5215,-5205,-5191,-5178,-5166,-5155,-5141,
+-5127,-5112,-5096,-5078,-5061,-5039,-5018,-4997,-4974,-4952,-4929,-4904,-4880,-4856,-4833,-4812,-4789,-4768,-4747,-4727,
+-4708,-4686,-4664,-4642,-4616,-4595,-4574,-4554,-4535,-4514,-4493,-4470,-4453,-4431,-4410,-4387,-4365,-4345,-4326,-4313,
+-4295,-4276,-4252,-4226,-4203,-4183,-4165,-4138,-4113,-4081,-4053,-4034,-4021,-4010,-4001,-3995,-3984,-3972,-3950,-3921,
+-3904,-3900,-3906,-3908,-3901,-3879,-3856,-3851,-3838,-3818,-3791,-3757,-3714,-3666,-3627,-3590,-3571,-3581,-3590,-3606,
+-3606,-3590,-3595,-3616,-3619,-3614,-3606,-3593,-3571,-3533,-3509,-3526,-3532,-3526,-3514,-3500,-3484,-3472,-3463,-3455,
+-3444,-3440,-3442,-3441,-3432,-3418,-3399,-3388,-3366,-3332,-3320,-3315,-3304,-3287,-3267,-3250,-3237,-3225,-3215,-3208,
+-3202,-3198,-3191,-3181,-3168,-3154,-3138,-3122,-3109,-3102,-3099,-3093,-3081,-3063,-3043,-3023,-3001,-2984,-2970,-2957,
+-2942,-2927,-2912,-2900,-2890,-2883,-2878,-2871,-2862,-2852,-2840,-2825,-2806,-2783,-2758,-2730,-2702,-2679,-2661,-2644,
+-2631,-2626,-2628,-2629,-2630,-2635,-2640,-2643,-2641,-2638,-2642,-2648,-2651,-2652,-2656,-2662,-2668,-2664,-2640,-2581,
+-2482,-2381,-2297,-2237,-2198,-2170,-2148,-2135,-2126,-2120,-2112,-2106,-2099,-2085,-2070,-2055,-2042,-2030,-2017,-2005,
+-1990,-1970,-1951,-1928,-1903,-1873,-1840,-1802,-1762,-1722,-1687,-1659,-1633,-1602,-1573,-1543,-1513,-1484,-1458,-1429,
+-1404,-1376,-1344,-1309,-1269,-1217,-1159,-1100,-1045,-991,-946,-911,-884,-860,-838,-818,-797,-779,-763,-743,
+-727,-708,-686,-664,-637,-609,-578,-544,-507,-473,-439,-404,-373,-344,-313,-283,-253,-222,-196,-169,
+-142,-116,-87,-56,-25,0,32,67,101,131,159,186,210,231,248,266,287,302,330,353,
+377,407,435,466,501,537,575,616,659,705,750,792,832,871,905,933,959,973,982,986,
+993,991,980,964,946,922,896,866,833,797,759,721,687,655,625,599,577,559,545,535,
+528,524,522,523,531,544,559,585,608,628,638,634,627,617,583,529,468,407,361,306,
+261,219,187,165,139,117,106,101,94,97,107,118,124,124,128,136,141,153,165,177,
+194,206,210,216,221,224,225,225,220,220,214,210,220,226,232,237,244,245,244,245,
+247,253,252,248,252,256,260,262,262,266,274,282,290,298,303,304,307,307,311,313,
+311,310,310,313,319,322,325,326,323,321,317,312,308,304,301,297,295,285,278,271,
+263,253,244,238,228,221,215,207,200,195,192,189,188,183,183,182,180,182,186,191,
+195,199,202,207,214,219,222,225,230,234,239,245,250,256,263,268,271,275,280,285,
+291,298,300,304,306,308,313,317,322,327,331,334,336,339,343,349,353,357,362,366,
+371,376,384,391,398,404,410,417,421,421,424,434,444,454,462,466,470,472,472,476,
+479,486,492,500,511,522,535,548,564,579,596,614,632,647,665,686,712,746,785,819,
+846,853,854,868,887,901,919,937,957,976,990,1011,1032,1056,1081,1111,1137,1150,1146,1127,
+1108,1096,1091,1090,1084,1077,1070,1066,1065,1064,1064,1070,1081,1095,1108,1123,1135,1143,1153,1162,
+1299,1309,1323,1334,1339,1335,1333,1337,1338,1343,1349,1357,1364,1366,1370,1386,1396,1400,1407,1424,
+1436,1454,1474,1485,1496,1516,1543,1566,1585,1601,1614,1622,1628,1636,1645,1649,1652,1659,1669,1675,
+1687,1704,1723,1744,1764,1781,1802,1813,1823,1831,1835,1841,1843,1846,1850,1855,1860,1865,1870,1873,
+1876,1879,1880,1881,1879,1874,1867,1859,1850,1840,1828,1811,1796,1780,1760,1739,1723,1714,1712,1713,
+1717,1723,1733,1741,1744,1745,1746,1748,1749,1755,1758,1760,1758,1751,1752,1761,1772,1787,1804,1828,
+1853,1874,1888,1908,1932,1968,1999,2021,2039,2058,2073,2084,2091,2095,2097,2099,2101,2101,2101,2102,
+2103,2104,2105,2106,2106,2105,2104,2103,2101,2098,2096,2092,2089,2085,2080,2075,2070,2066,2063,2059,
+2057,2052,2048,2042,2037,2031,2026,2022,2018,2016,2014,2014,2016,2020,2026,2036,2055,2077,2101,2128,
+2158,2191,2227,2268,2313,2361,2412,2465,2520,2575,2629,2682,2733,2780,2822,2859,2894,2923,2947,2966,
+2979,2986,2988,2986,2980,2970,2959,2946,2932,2917,2904,2892,2883,2880,2877,2876,2878,2883,2891,2902,
+2915,2929,2945,2962,2979,2997,3015,3031,3048,3062,3075,3086,3095,3102,3107,3110,3112,3113,3113,3113,
+3112,3111,3109,3108,3108,3107,3108,3108,3109,3110,3112,3113,3115,3115,3115,3114,3110,3106,3099,3092,
+3082,3070,3057,3042,3026,3010,2993,2976,2958,2940,2921,2901,2881,2860,2838,2816,2794,2771,2747,2722,
+2699,2669,2637,2603,2565,2525,2482,2437,2390,2342,2292,2241,2190,2137,2086,2037,1989,1944,1902,1863,
+1827,1796,1768,1745,1725,1709,1696,1687,1679,1675,1671,1669,1668,1667,1667,1666,1665,1665,1664,1664,
+1663,1662,1662,1662,1659,1659,1659,1661,1665,1671,1679,1688,1698,1709,1722,1735,1747,1758,1769,1778,
+1786,1791,1793,1792,1788,1779,1768,1754,1736,1715,1692,1668,1640,1611,1582,1551,1521,1492,1463,1436,
+1409,1385,1361,1339,1318,1299,1282,1266,1252,1239,1227,1216,1205,1196,1188,1179,1171,1163,1156,1149,
+1141,1133,1124,1114,1103,1091,1078,1061,1042,1019,992,961,926,887,841,791,735,673,606,534,
+456,376,292,205,118,30,-56,-142,-227,-308,-385,-457,-522,-582,-636,-683,-724,-759,-787,-811,
+-830,-845,-857,-868,-878,-888,-899,-911,-927,-945,-968,-994,-1025,-1060,-1100,-1143,-1189,-1238,-1290,-1344,
+-1399,-1454,-1509,-1562,-1613,-1662,-1708,-1751,-1791,-1829,-1862,-1893,-1921,-1945,-1966,-1985,-2002,-2017,-2030,-2042,
+-2054,-2066,-2077,-2088,-2100,-2112,-2124,-2137,-2150,-2163,-2178,-2192,-2206,-2220,-2234,-2248,-2261,-2274,-2286,-2299,
+-2310,-2322,-2334,-2346,-2358,-2370,-2383,-2397,-2414,-2431,-2449,-2469,-2490,-2512,-2536,-2561,-2586,-2612,-2638,-2665,
+-2691,-2715,-2740,-2764,-2786,-2807,-2826,-2844,-2862,-2877,-2892,-2907,-2921,-2937,-2954,-2972,-2992,-3016,-3042,-3071,
+-3104,-3141,-3181,-3224,-3271,-3321,-3372,-3425,-3479,-3533,-3585,-3636,-3684,-3730,-3772,-3808,-3839,-3865,-3886,-3900,
+-3910,-3915,-3917,-3915,-3911,-3905,-3900,-3895,-3891,-3889,-3890,-3896,-3907,-3924,-3944,-3970,-3999,-4029,-4063,-4097,
+-4136,-4175,-4215,-4251,-4285,-4315,-4340,-4359,-4373,-4381,-4383,-4378,-4369,-4354,-4335,-4313,-4290,-4265,-4241,-4219,
+-4199,-4183,-4172,-4166,-4166,-4173,-4186,-4204,-4229,-4260,-4296,-4336,-4381,-4430,-4480,-4532,-4585,-4637,-4689,-4740,
+-4789,-4836,-4881,-4923,-4964,-5003,-5039,-5073,-5107,-5140,-5171,-5202,-5232,-5262,-5292,-5321,-5350,-5377,-5405,-5433,
+-5459,-5484,-5508,-5531,-5552,-5570,-5585,-5597,-5607,-5614,-5619,-5621,-5620,-5618,-5615,-5609,-5601,-5593,-5583,-5573,
+-5563,-5553,-5545,-5537,-5530,-5524,-5520,-5515,-5512,-5510,-5508,-5509,-5516,-5523,-5530,-5535,-5537,-5539,-5539,-5538,
+-5535,-5533,-5529,-5522,-5509,-5485,-5455,-5425,-5387,-5347,-5331,-5343,-5359,-5372,-5402,-5439,-5472,-5499,-5532,-5569,
+-5604,-5640,-5669,-5691,-5707,-5722,-5746,-5775,-5793,-5799,-5809,-5813,-5811,-5805,-5803,-5804,-5804,-5802,-5798,-5790,
+-5776,-5763,-5750,-5738,-5731,-5724,-5727,-5761,-5818,-5832,-5798,-5777,-5781,-5797,-5821,-5839,-5860,-5881,-5900,-5924,
+-5946,-5965,-5985,-6004,-6017,-6035,-6058,-6072,-6080,-6088,-6094,-6102,-6113,-6122,-6134,-6147,-6160,-6174,-6189,-6208,
+-6227,-6245,-6256,-6269,-6285,-6307,-6330,-6356,-6373,-6385,-6393,-6397,-6399,-6403,-6403,-6406,-6408,-6409,-6406,-6404,
+-6403,-6401,-6399,-6395,-6392,-6386,-6380,-6380,-6384,-6374,-6356,-6342,-6329,-6320,-6316,-6318,-6304,-6286,-6284,-6288,
+-6294,-6301,-6302,-6300,-6298,-6301,-6308,-6307,-6292,-6266,-6244,-6235,-6230,-6212,-6188,-6163,-6137,-6122,-6122,-6119,
+-6104,-6086,-6062,-6039,-6028,-6029,-6028,-6021,-6014,-6019,-6023,-6024,-6020,-6017,-6007,-5990,-5977,-5976,-5980,-5983,
+-5971,-5958,-5950,-5945,-5942,-5936,-5932,-5924,-5917,-5915,-5908,-5910,-5918,-5915,-5915,-5924,-5929,-5927,-5921,-5909,
+-5900,-5891,-5883,-5870,-5856,-5841,-5826,-5813,-5800,-5791,-5782,-5766,-5751,-5738,-5728,-5720,-5709,-5695,-5683,-5672,
+-5660,-5650,-5642,-5636,-5624,-5613,-5601,-5591,-5577,-5562,-5548,-5539,-5529,-5513,-5497,-5489,-5482,-5468,-5453,-5440,
+-5428,-5419,-5409,-5399,-5387,-5373,-5358,-5345,-5333,-5324,-5311,-5294,-5283,-5270,-5258,-5247,-5234,-5218,-5206,-5190,
+-5176,-5163,-5148,-5132,-5117,-5098,-5077,-5057,-5035,-5011,-4988,-4965,-4939,-4915,-4891,-4868,-4842,-4819,-4800,-4778,
+-4756,-4738,-4716,-4696,-4673,-4648,-4625,-4603,-4581,-4559,-4539,-4520,-4502,-4484,-4467,-4454,-4445,-4432,-4410,-4378,
+-4337,-4300,-4270,-4245,-4226,-4219,-4212,-4201,-4187,-4159,-4121,-4075,-4023,-3981,-3944,-3923,-3933,-3958,-3965,-3952,
+-3921,-3892,-3878,-3896,-3926,-3937,-3926,-3899,-3894,-3899,-3893,-3883,-3868,-3850,-3828,-3801,-3753,-3692,-3668,-3676,
+-3683,-3682,-3672,-3666,-3664,-3647,-3634,-3634,-3628,-3613,-3597,-3583,-3576,-3569,-3558,-3545,-3530,-3514,-3501,-3491,
+-3477,-3453,-3450,-3456,-3453,-3449,-3441,-3429,-3416,-3400,-3378,-3359,-3341,-3324,-3309,-3295,-3282,-3267,-3253,-3242,
+-3232,-3224,-3219,-3216,-3209,-3195,-3182,-3168,-3157,-3150,-3146,-3137,-3124,-3108,-3087,-3063,-3043,-3028,-3015,-3002,
+-2985,-2966,-2950,-2937,-2929,-2922,-2919,-2918,-2915,-2904,-2888,-2870,-2854,-2837,-2810,-2781,-2751,-2722,-2696,-2676,
+-2662,-2652,-2649,-2650,-2654,-2663,-2669,-2677,-2686,-2692,-2694,-2699,-2703,-2709,-2715,-2723,-2730,-2732,-2718,-2679,
+-2595,-2479,-2371,-2289,-2230,-2192,-2166,-2147,-2134,-2128,-2128,-2133,-2134,-2135,-2138,-2135,-2135,-2129,-2122,-2112,
+-2097,-2083,-2068,-2051,-2025,-1991,-1955,-1911,-1860,-1804,-1746,-1683,-1631,-1581,-1532,-1483,-1437,-1399,-1364,-1331,
+-1306,-1284,-1260,-1235,-1204,-1156,-1099,-1045,-1004,-978,-959,-944,-933,-923,-912,-900,-885,-869,-851,-829,
+-805,-780,-758,-732,-701,-665,-629,-595,-560,-527,-496,-460,-426,-395,-371,-346,-322,-298,-272,-246,
+-218,-190,-162,-132,-103,-74,-44,-14,15,44,72,100,125,150,171,192,214,234,252,276,
+298,317,352,392,423,459,496,537,577,619,660,702,744,786,822,855,887,917,939,951,
+955,954,945,948,941,927,906,885,857,827,790,752,713,675,639,606,575,549,526,508,
+494,481,469,463,459,465,472,484,498,518,537,549,555,550,531,483,422,356,289,233,
+181,134,99,67,42,25,7,-7,-19,-22,-19,-16,-15,-4,8,16,30,49,65,79,
+91,110,125,127,134,141,143,139,140,141,141,140,140,144,149,155,160,161,167,168,
+172,181,187,191,194,201,202,201,204,210,218,222,232,242,248,250,251,253,253,249,
+244,240,242,243,244,246,249,250,251,252,248,247,245,242,238,234,232,227,219,212,
+205,198,189,183,177,170,163,156,149,145,141,139,138,138,137,139,140,142,148,154,
+156,157,159,159,163,172,181,187,191,198,205,212,220,228,236,242,249,254,260,267,
+271,278,281,286,290,293,296,302,306,309,313,313,316,318,318,320,323,327,331,333,
+336,340,345,354,363,373,381,387,392,399,403,409,414,421,429,436,441,445,447,450,
+456,462,469,480,494,506,521,537,554,572,591,611,632,652,674,705,744,788,834,876,
+918,960,987,987,976,981,1004,1031,1052,1066,1082,1099,1113,1124,1136,1154,1175,1195,1208,1214,
+1212,1213,1214,1213,1210,1204,1197,1190,1188,1191,1195,1201,1211,1225,1239,1251,1261,1270,1280,1290,
+1299,1423,1431,1440,1448,1455,1461,1465,1470,1475,1481,1489,1497,1502,1506,1512,1519,1528,1536,1544,
+1551,1558,1567,1575,1583,1589,1595,1603,1610,1616,1622,1628,1633,1638,1643,1647,1652,1658,1664,1670,
+1675,1682,1689,1699,1708,1718,1729,1739,1748,1756,1766,1774,1778,1782,1787,1794,1799,1805,1811,1816,
+1820,1825,1828,1830,1832,1832,1831,1829,1826,1821,1815,1809,1802,1795,1787,1779,1773,1765,1763,1763,
+1764,1766,1769,1772,1777,1782,1786,1788,1793,1802,1811,1821,1828,1833,1834,1833,1837,1843,1858,1880,
+1901,1916,1931,1943,1954,1967,1979,1990,1999,2006,2012,2017,2020,2023,2026,2028,2028,2028,2028,2028,
+2028,2027,2026,2026,2026,2026,2026,2027,2027,2028,2029,2030,2033,2034,2035,2037,2038,2039,2040,2042,
+2044,2047,2048,2050,2049,2047,2044,2044,2045,2046,2045,2045,2046,2052,2057,2064,2074,2085,2100,2118,
+2139,2164,2193,2227,2264,2305,2348,2394,2443,2491,2541,2589,2636,2682,2725,2763,2800,2831,2858,2880,
+2897,2909,2918,2921,2921,2917,2911,2903,2894,2884,2874,2865,2859,2854,2851,2850,2850,2853,2857,2865,
+2873,2882,2893,2905,2917,2930,2943,2953,2964,2975,2983,2991,2996,3000,3003,3004,3004,3004,3002,3000,
+2998,2997,2996,2995,2995,2996,2996,2998,3001,3004,3007,3011,3014,3018,3020,3022,3024,3023,3022,3020,
+3016,3010,3002,2994,2984,2973,2961,2949,2937,2923,2910,2896,2879,2863,2847,2829,2809,2789,2764,2743,
+2719,2687,2656,2619,2579,2536,2491,2442,2392,2339,2284,2229,2173,2116,2060,2006,1954,1905,1860,1818,
+1782,1749,1722,1699,1680,1667,1658,1652,1650,1651,1654,1659,1665,1672,1676,1681,1687,1692,1698,1701,
+1703,1703,1703,1702,1701,1699,1697,1696,1698,1699,1701,1707,1713,1721,1731,1741,1751,1763,1773,1782,
+1792,1798,1803,1807,1807,1804,1798,1787,1775,1759,1740,1719,1695,1669,1641,1613,1584,1554,1524,1495,
+1466,1438,1410,1384,1359,1335,1313,1292,1272,1254,1237,1220,1205,1191,1177,1165,1153,1143,1132,1120,
+1109,1099,1088,1076,1064,1051,1035,1018,997,973,946,915,879,839,795,745,690,631,565,496,
+422,345,266,184,102,19,-62,-143,-221,-296,-366,-432,-495,-551,-602,-647,-687,-721,-750,-774,
+-795,-813,-828,-842,-856,-869,-883,-899,-917,-938,-962,-989,-1020,-1054,-1093,-1134,-1178,-1225,-1275,-1326,
+-1378,-1432,-1485,-1539,-1592,-1643,-1693,-1740,-1785,-1828,-1867,-1905,-1941,-1973,-2003,-2031,-2057,-2080,-2100,-2118,
+-2134,-2148,-2160,-2171,-2181,-2190,-2199,-2206,-2212,-2219,-2225,-2232,-2239,-2247,-2255,-2262,-2270,-2279,-2287,-2298,
+-2308,-2319,-2332,-2344,-2357,-2371,-2386,-2403,-2420,-2438,-2457,-2478,-2498,-2519,-2542,-2565,-2588,-2611,-2635,-2659,
+-2681,-2704,-2726,-2747,-2767,-2786,-2804,-2820,-2835,-2850,-2863,-2877,-2891,-2905,-2920,-2936,-2954,-2974,-2998,-3023,
+-3052,-3084,-3120,-3160,-3203,-3250,-3299,-3349,-3401,-3454,-3507,-3560,-3611,-3660,-3706,-3748,-3786,-3820,-3849,-3872,
+-3891,-3907,-3917,-3923,-3926,-3927,-3926,-3924,-3923,-3923,-3924,-3929,-3937,-3950,-3967,-3987,-4011,-4039,-4068,-4101,
+-4136,-4172,-4210,-4247,-4282,-4314,-4344,-4369,-4390,-4405,-4416,-4421,-4421,-4416,-4406,-4393,-4377,-4359,-4340,-4320,
+-4303,-4287,-4274,-4266,-4261,-4262,-4269,-4280,-4298,-4320,-4348,-4381,-4420,-4461,-4506,-4554,-4602,-4651,-4701,-4751,
+-4799,-4846,-4892,-4935,-4977,-5016,-5054,-5089,-5122,-5154,-5184,-5212,-5240,-5266,-5292,-5317,-5343,-5368,-5393,-5417,
+-5441,-5465,-5489,-5511,-5533,-5552,-5570,-5586,-5600,-5612,-5622,-5630,-5634,-5637,-5637,-5636,-5633,-5628,-5621,-5612,
+-5602,-5592,-5580,-5570,-5560,-5551,-5543,-5535,-5528,-5523,-5520,-5519,-5520,-5525,-5532,-5545,-5556,-5563,-5567,-5569,
+-5570,-5576,-5582,-5591,-5604,-5615,-5614,-5601,-5585,-5560,-5534,-5515,-5501,-5493,-5486,-5479,-5475,-5481,-5489,-5494,
+-5508,-5524,-5536,-5547,-5565,-5590,-5622,-5664,-5708,-5745,-5780,-5808,-5819,-5829,-5837,-5839,-5834,-5829,-5822,-5814,
+-5809,-5799,-5791,-5781,-5769,-5758,-5748,-5742,-5749,-5800,-5866,-5880,-5842,-5810,-5811,-5823,-5845,-5865,-5885,-5906,
+-5934,-5953,-5971,-5987,-5999,-5998,-6011,-6045,-6069,-6081,-6084,-6081,-6089,-6108,-6126,-6141,-6148,-6156,-6165,-6181,
+-6198,-6218,-6237,-6252,-6269,-6288,-6306,-6329,-6350,-6367,-6386,-6396,-6405,-6410,-6411,-6413,-6420,-6426,-6427,-6430,
+-6432,-6432,-6431,-6429,-6422,-6416,-6409,-6402,-6403,-6402,-6389,-6373,-6360,-6346,-6339,-6341,-6338,-6334,-6323,-6314,
+-6324,-6333,-6337,-6346,-6354,-6361,-6368,-6369,-6360,-6351,-6341,-6321,-6298,-6279,-6259,-6236,-6211,-6183,-6159,-6142,
+-6139,-6149,-6148,-6137,-6120,-6099,-6094,-6100,-6100,-6095,-6087,-6076,-6070,-6065,-6057,-6050,-6040,-6030,-6019,-6013,
+-6014,-6021,-6013,-6001,-5993,-5986,-5983,-5978,-5972,-5965,-5966,-5961,-5959,-5964,-5961,-5957,-5960,-5968,-5972,-5967,
+-5956,-5948,-5942,-5941,-5931,-5914,-5896,-5877,-5866,-5851,-5836,-5827,-5818,-5804,-5786,-5772,-5763,-5754,-5743,-5731,
+-5719,-5705,-5696,-5690,-5682,-5673,-5659,-5646,-5635,-5624,-5611,-5601,-5587,-5573,-5564,-5552,-5543,-5531,-5518,-5503,
+-5490,-5479,-5468,-5457,-5447,-5435,-5423,-5410,-5394,-5381,-5370,-5359,-5343,-5329,-5318,-5301,-5287,-5273,-5258,-5243,
+-5228,-5212,-5196,-5180,-5163,-5145,-5128,-5107,-5088,-5068,-5045,-5023,-4999,-4975,-4952,-4925,-4901,-4876,-4849,-4828,
+-4809,-4789,-4768,-4752,-4732,-4711,-4688,-4661,-4637,-4614,-4591,-4566,-4546,-4528,-4511,-4494,-4481,-4469,-4455,-4440,
+-4416,-4365,-4303,-4262,-4241,-4226,-4214,-4223,-4235,-4225,-4198,-4167,-4144,-4117,-4088,-4062,-4043,-4026,-4018,-4012,
+-4007,-4002,-3991,-3977,-3963,-3957,-3951,-3944,-3939,-3936,-3936,-3937,-3937,-3929,-3917,-3898,-3859,-3802,-3769,-3760,
+-3756,-3757,-3749,-3738,-3728,-3718,-3707,-3698,-3688,-3677,-3664,-3652,-3644,-3636,-3624,-3607,-3586,-3568,-3550,-3534,
+-3522,-3514,-3507,-3495,-3481,-3471,-3465,-3458,-3449,-3435,-3420,-3399,-3382,-3367,-3352,-3337,-3322,-3307,-3289,-3272,
+-3258,-3249,-3244,-3242,-3240,-3236,-3224,-3207,-3198,-3193,-3185,-3177,-3166,-3150,-3131,-3106,-3082,-3065,-3049,-3031,
+-3016,-2999,-2986,-2975,-2970,-2965,-2959,-2950,-2941,-2925,-2902,-2871,-2853,-2848,-2835,-2812,-2787,-2757,-2728,-2705,
+-2686,-2672,-2662,-2659,-2665,-2672,-2683,-2694,-2704,-2711,-2717,-2722,-2726,-2731,-2737,-2741,-2744,-2743,-2728,-2696,
+-2634,-2540,-2427,-2330,-2257,-2206,-2170,-2145,-2130,-2123,-2126,-2138,-2150,-2162,-2168,-2170,-2172,-2172,-2171,-2167,
+-2155,-2137,-2117,-2097,-2067,-2025,-1971,-1913,-1855,-1797,-1733,-1668,-1600,-1538,-1479,-1424,-1377,-1340,-1306,-1277,
+-1247,-1219,-1191,-1158,-1129,-1104,-1082,-1062,-1044,-1031,-1019,-1011,-1005,-997,-985,-972,-959,-939,-918,-895,
+-872,-844,-815,-787,-754,-715,-674,-633,-597,-566,-538,-517,-505,-492,-466,-439,-408,-377,-352,-327,
+-302,-277,-251,-225,-197,-169,-140,-111,-82,-54,-26,1,28,54,79,103,127,151,175,198,
+223,249,275,296,334,373,409,447,486,525,566,609,651,691,731,766,802,834,860,882,
+898,906,913,915,917,910,900,884,861,832,804,769,733,694,655,618,583,550,521,494,
+474,458,445,434,430,428,429,435,443,454,467,479,491,488,465,424,354,283,217,162,
+115,69,27,-3,-32,-58,-65,-83,-96,-95,-96,-100,-101,-95,-81,-68,-52,-36,-20,-10,
+5,26,35,50,57,63,66,68,65,63,67,74,73,72,78,81,82,85,90,94,
+95,98,104,114,116,120,126,131,134,139,143,157,166,169,173,177,179,182,182,179,
+173,166,162,159,161,164,164,166,167,168,170,169,164,160,158,157,153,150,145,141,
+135,130,126,119,112,105,99,95,89,86,84,83,82,83,85,88,94,103,109,112,
+115,117,122,127,132,136,142,147,156,164,171,177,186,194,204,211,220,228,236,241,
+247,252,257,260,264,270,276,279,282,285,285,287,285,284,284,286,288,290,291,294,
+298,303,309,316,326,338,349,359,367,375,384,392,399,403,405,410,412,413,414,420,
+426,436,450,467,487,509,530,551,571,593,614,641,683,734,780,818,843,867,897,932,
+969,1009,1050,1079,1097,1109,1113,1130,1163,1192,1208,1216,1238,1250,1255,1263,1276,1291,1306,1321,
+1332,1341,1348,1350,1348,1347,1342,1339,1337,1334,1334,1339,1346,1353,1362,1370,1379,1388,1397,1405,
+1414,1423,1505,1511,1518,1524,1530,1535,1539,1543,1547,1550,1554,1556,1559,1561,1563,1564,1565,1566,
+1566,1567,1567,1567,1567,1567,1567,1567,1567,1567,1568,1568,1569,1571,1573,1575,1578,1581,1585,1589,
+1594,1599,1605,1610,1616,1623,1629,1636,1642,1648,1654,1660,1665,1671,1677,1682,1688,1694,1700,1706,
+1712,1718,1723,1729,1734,1739,1743,1746,1748,1750,1751,1751,1751,1750,1748,1748,1746,1745,1744,1745,
+1746,1748,1751,1755,1759,1765,1771,1777,1784,1792,1801,1809,1818,1827,1835,1844,1853,1863,1871,1879,
+1888,1893,1897,1903,1908,1913,1917,1918,1921,1924,1925,1926,1927,1928,1927,1927,1927,1927,1927,1927,
+1927,1929,1930,1933,1936,1940,1944,1949,1955,1961,1968,1976,1984,1994,2004,2013,2023,2032,2041,2050,
+2058,2067,2076,2083,2090,2094,2097,2099,2100,2101,2103,2103,2105,2106,2110,2115,2122,2131,2140,2152,
+2163,2178,2196,2217,2242,2272,2304,2339,2377,2416,2455,2496,2537,2577,2614,2650,2682,2712,2738,2762,
+2781,2797,2808,2817,2822,2824,2825,2823,2819,2816,2812,2808,2806,2805,2805,2806,2808,2813,2818,2824,
+2831,2839,2847,2857,2866,2876,2885,2894,2900,2907,2912,2915,2918,2919,2918,2917,2915,2912,2908,2904,
+2901,2897,2894,2891,2889,2888,2888,2888,2889,2891,2893,2897,2900,2903,2906,2909,2912,2914,2915,2915,
+2915,2913,2910,2906,2902,2896,2890,2883,2875,2866,2857,2847,2837,2825,2815,2803,2788,2773,2757,2736,
+2711,2682,2650,2617,2579,2538,2493,2442,2391,2336,2280,2220,2160,2099,2039,1980,1923,1869,1820,1774,
+1733,1697,1667,1642,1622,1609,1600,1596,1597,1601,1609,1619,1631,1644,1655,1666,1675,1686,1695,1704,
+1712,1718,1722,1726,1728,1728,1728,1727,1727,1727,1728,1730,1733,1737,1743,1750,1757,1766,1775,1783,
+1791,1798,1804,1810,1813,1813,1811,1805,1797,1786,1773,1757,1737,1716,1692,1667,1640,1611,1582,1552,
+1523,1494,1465,1436,1407,1380,1353,1327,1301,1277,1253,1231,1209,1188,1168,1150,1131,1114,1098,1082,
+1066,1052,1037,1021,1006,990,973,954,933,909,882,852,818,782,740,694,643,588,528,464,
+397,327,254,180,105,30,-43,-116,-188,-257,-322,-384,-441,-493,-540,-584,-622,-656,-685,-711,
+-734,-755,-775,-792,-810,-828,-847,-868,-890,-914,-941,-971,-1004,-1040,-1078,-1120,-1164,-1210,-1259,-1309,
+-1360,-1412,-1465,-1518,-1571,-1625,-1677,-1728,-1779,-1828,-1875,-1919,-1962,-2003,-2043,-2079,-2113,-2143,-2172,-2197,
+-2219,-2238,-2253,-2266,-2276,-2283,-2287,-2290,-2291,-2292,-2291,-2290,-2287,-2287,-2287,-2287,-2288,-2291,-2295,-2300,
+-2306,-2315,-2326,-2338,-2352,-2368,-2384,-2402,-2422,-2441,-2462,-2484,-2506,-2528,-2551,-2574,-2596,-2618,-2640,-2661,
+-2683,-2703,-2723,-2741,-2759,-2775,-2790,-2805,-2818,-2831,-2843,-2855,-2867,-2879,-2892,-2907,-2922,-2940,-2959,-2982,
+-3008,-3037,-3069,-3104,-3143,-3185,-3231,-3278,-3328,-3380,-3432,-3485,-3537,-3588,-3636,-3683,-3726,-3765,-3801,-3834,
+-3862,-3886,-3905,-3920,-3931,-3939,-3944,-3947,-3949,-3951,-3952,-3957,-3963,-3972,-3985,-4000,-4020,-4041,-4066,-4094,
+-4125,-4157,-4192,-4227,-4263,-4298,-4332,-4362,-4389,-4413,-4433,-4449,-4460,-4467,-4471,-4470,-4465,-4457,-4447,-4436,
+-4424,-4412,-4402,-4395,-4390,-4388,-4389,-4396,-4407,-4422,-4442,-4466,-4494,-4526,-4562,-4601,-4642,-4684,-4727,-4772,
+-4816,-4860,-4902,-4944,-4983,-5022,-5058,-5092,-5125,-5155,-5183,-5210,-5236,-5261,-5285,-5307,-5330,-5352,-5375,-5397,
+-5419,-5441,-5463,-5486,-5508,-5529,-5550,-5569,-5587,-5603,-5618,-5631,-5642,-5649,-5655,-5658,-5659,-5657,-5652,-5645,
+-5637,-5626,-5613,-5600,-5586,-5573,-5560,-5548,-5537,-5527,-5520,-5514,-5512,-5514,-5519,-5528,-5540,-5552,-5564,-5574,
+-5587,-5599,-5611,-5625,-5641,-5655,-5672,-5688,-5695,-5695,-5691,-5685,-5678,-5672,-5673,-5670,-5664,-5656,-5635,-5611,
+-5586,-5568,-5562,-5554,-5544,-5540,-5546,-5555,-5572,-5590,-5603,-5615,-5649,-5704,-5754,-5792,-5817,-5833,-5838,-5827,
+-5817,-5816,-5816,-5813,-5807,-5801,-5792,-5783,-5775,-5771,-5782,-5836,-5897,-5906,-5874,-5846,-5845,-5853,-5868,-5885,
+-5905,-5931,-5955,-5981,-6004,-6024,-6036,-6052,-6064,-6077,-6090,-6100,-6109,-6123,-6131,-6135,-6146,-6155,-6160,-6166,
+-6179,-6191,-6202,-6203,-6212,-6233,-6250,-6271,-6290,-6312,-6342,-6369,-6390,-6405,-6417,-6427,-6436,-6440,-6445,-6449,
+-6453,-6458,-6457,-6454,-6449,-6442,-6434,-6425,-6422,-6425,-6420,-6405,-6390,-6373,-6360,-6361,-6371,-6376,-6374,-6366,
+-6362,-6362,-6366,-6370,-6373,-6378,-6381,-6387,-6395,-6398,-6398,-6385,-6358,-6324,-6297,-6281,-6268,-6246,-6223,-6201,
+-6184,-6176,-6175,-6180,-6177,-6164,-6148,-6145,-6148,-6150,-6151,-6149,-6148,-6140,-6131,-6126,-6116,-6107,-6091,-6074,
+-6063,-6060,-6062,-6061,-6048,-6036,-6035,-6028,-6020,-6014,-6006,-6001,-5997,-5996,-5995,-5992,-5992,-5994,-5995,-6001,
+-6005,-6002,-5995,-5986,-5979,-5969,-5959,-5944,-5926,-5912,-5897,-5879,-5866,-5859,-5849,-5836,-5822,-5811,-5800,-5787,
+-5775,-5763,-5750,-5742,-5734,-5726,-5718,-5707,-5695,-5686,-5676,-5665,-5655,-5644,-5632,-5619,-5606,-5594,-5583,-5573,
+-5560,-5547,-5535,-5522,-5510,-5498,-5487,-5473,-5459,-5444,-5430,-5418,-5403,-5387,-5371,-5358,-5344,-5327,-5311,-5294,
+-5278,-5263,-5246,-5229,-5210,-5192,-5174,-5156,-5138,-5120,-5099,-5077,-5055,-5031,-5009,-4983,-4962,-4940,-4914,-4890,
+-4867,-4847,-4828,-4804,-4786,-4768,-4747,-4728,-4703,-4679,-4653,-4629,-4604,-4578,-4560,-4541,-4519,-4503,-4488,-4481,
+-4472,-4461,-4446,-4433,-4415,-4393,-4375,-4351,-4333,-4312,-4279,-4242,-4204,-4173,-4150,-4129,-4108,-4088,-4069,-4049,
+-4037,-4032,-4031,-4029,-4016,-4000,-3986,-3974,-3965,-3959,-3957,-3954,-3959,-3965,-3971,-3967,-3952,-3924,-3884,-3861,
+-3848,-3838,-3830,-3816,-3795,-3776,-3767,-3753,-3735,-3729,-3729,-3719,-3705,-3688,-3674,-3660,-3641,-3620,-3600,-3586,
+-3573,-3562,-3553,-3543,-3531,-3513,-3500,-3491,-3483,-3472,-3459,-3444,-3425,-3406,-3389,-3372,-3354,-3337,-3320,-3302,
+-3285,-3270,-3263,-3260,-3258,-3256,-3252,-3243,-3229,-3219,-3212,-3203,-3190,-3173,-3150,-3122,-3096,-3077,-3056,-3035,
+-3016,-3003,-2995,-2986,-2978,-2970,-2961,-2949,-2934,-2913,-2885,-2852,-2829,-2824,-2815,-2798,-2777,-2755,-2732,-2710,
+-2692,-2675,-2664,-2656,-2654,-2658,-2668,-2680,-2692,-2701,-2703,-2704,-2706,-2706,-2702,-2699,-2689,-2672,-2643,-2601,
+-2538,-2465,-2391,-2316,-2241,-2184,-2145,-2114,-2101,-2098,-2104,-2115,-2128,-2141,-2153,-2158,-2157,-2154,-2153,-2142,
+-2127,-2105,-2068,-2030,-1985,-1942,-1896,-1840,-1785,-1732,-1675,-1619,-1561,-1505,-1453,-1407,-1366,-1335,-1306,-1282,
+-1266,-1248,-1225,-1205,-1183,-1163,-1149,-1136,-1127,-1118,-1111,-1102,-1094,-1087,-1075,-1059,-1040,-1020,-994,-966,
+-935,-896,-862,-830,-797,-762,-724,-693,-658,-631,-616,-607,-600,-594,-587,-565,-532,-493,-456,-425,
+-395,-366,-341,-317,-292,-266,-239,-211,-183,-155,-127,-98,-71,-44,-17,8,33,58,84,109,
+135,161,189,216,237,261,299,349,391,431,472,514,553,595,634,670,707,743,772,800,
+825,844,857,866,869,872,866,858,841,818,793,766,736,702,664,626,589,554,521,491,
+465,444,430,414,400,395,395,397,392,395,400,407,416,419,414,380,315,250,188,128,
+85,42,1,-31,-59,-87,-104,-119,-132,-137,-142,-140,-135,-128,-123,-113,-104,-95,-86,-77,
+-66,-54,-41,-31,-23,-14,-10,-4,-2,-3,0,3,1,8,10,3,7,13,15,19,
+20,21,23,29,34,41,50,58,60,67,76,79,83,87,92,96,101,101,100,98,
+94,91,90,87,85,85,84,83,84,84,84,84,80,75,72,71,70,67,63,61,
+57,52,50,47,42,38,37,35,33,32,32,34,36,36,40,47,55,62,67,72,
+75,77,80,84,88,94,99,104,110,116,123,131,140,149,157,166,174,183,190,197,
+205,212,220,228,233,237,240,242,244,247,247,247,246,246,247,249,253,259,265,270,
+276,282,287,296,307,318,327,334,341,349,356,363,370,375,376,378,380,383,388,397,
+408,422,438,457,480,511,540,570,605,648,694,736,775,812,851,891,929,964,991,1014,
+1045,1082,1119,1155,1192,1224,1244,1259,1276,1295,1313,1335,1360,1376,1383,1384,1387,1394,1399,1401,
+1404,1406,1409,1414,1419,1419,1417,1416,1416,1415,1416,1419,1424,1431,1439,1447,1456,1464,1473,1481,
+1489,1497,1505,1527,1534,1540,1546,1551,1555,1558,1560,1562,1562,1562,1560,1558,1555,1551,1546,1541,
+1535,1529,1522,1515,1507,1500,1493,1487,1480,1475,1471,1467,1464,1462,1462,1462,1463,1466,1468,1472,
+1476,1481,1487,1492,1499,1504,1510,1516,1521,1526,1532,1537,1541,1546,1550,1554,1559,1565,1570,1576,
+1581,1587,1594,1601,1607,1614,1620,1626,1631,1638,1643,1648,1651,1655,1658,1660,1663,1665,1666,1669,
+1671,1673,1675,1679,1682,1687,1692,1697,1703,1710,1717,1724,1732,1740,1747,1755,1762,1769,1776,1782,
+1788,1793,1796,1800,1802,1804,1805,1806,1805,1805,1805,1804,1803,1802,1802,1801,1801,1802,1804,1806,
+1809,1814,1820,1827,1833,1842,1853,1863,1877,1891,1907,1924,1942,1961,1980,1999,2018,2037,2056,2074,
+2091,2108,2123,2137,2150,2161,2169,2176,2181,2183,2186,2187,2188,2188,2190,2192,2192,2193,2196,2202,
+2208,2216,2226,2238,2253,2272,2292,2314,2340,2366,2395,2425,2455,2484,2513,2541,2569,2594,2616,2636,
+2655,2670,2683,2694,2702,2709,2714,2717,2721,2723,2725,2727,2730,2735,2740,2746,2753,2760,2769,2778,
+2787,2796,2806,2815,2824,2832,2840,2846,2851,2855,2857,2859,2859,2857,2854,2850,2846,2840,2835,2827,
+2821,2814,2808,2803,2799,2795,2792,2790,2788,2787,2787,2788,2789,2790,2792,2793,2795,2796,2796,2797,
+2797,2796,2795,2793,2790,2787,2785,2781,2778,2774,2769,2764,2758,2752,2744,2736,2726,2716,2706,2690,
+2670,2646,2619,2589,2553,2517,2474,2426,2375,2322,2264,2205,2145,2083,2020,1957,1898,1839,1784,1733,
+1687,1646,1610,1581,1558,1541,1529,1524,1523,1528,1537,1549,1565,1582,1601,1618,1633,1650,1664,1679,
+1691,1703,1713,1722,1729,1733,1738,1740,1742,1743,1744,1745,1747,1749,1753,1757,1761,1766,1773,1778,
+1783,1790,1794,1800,1804,1806,1807,1805,1801,1794,1785,1773,1759,1742,1723,1702,1678,1654,1628,1601,
+1573,1544,1515,1485,1455,1425,1395,1365,1335,1306,1277,1247,1219,1191,1164,1138,1112,1088,1065,1042,
+1020,999,979,960,940,920,900,880,858,835,809,781,749,715,678,637,593,545,494,438,
+381,320,257,194,128,63,-1,-65,-128,-189,-248,-303,-355,-404,-449,-489,-527,-561,-591,-620,
+-646,-671,-694,-717,-741,-766,-791,-817,-846,-876,-909,-944,-981,-1020,-1062,-1106,-1151,-1199,-1249,-1300,
+-1352,-1406,-1460,-1514,-1568,-1623,-1678,-1732,-1786,-1840,-1891,-1942,-1992,-2039,-2085,-2129,-2171,-2210,-2245,-2277,
+-2305,-2329,-2348,-2363,-2375,-2383,-2387,-2388,-2386,-2382,-2374,-2366,-2357,-2348,-2338,-2331,-2323,-2317,-2314,-2313,
+-2315,-2320,-2328,-2338,-2350,-2365,-2383,-2402,-2422,-2444,-2467,-2491,-2515,-2539,-2563,-2587,-2610,-2633,-2655,-2676,
+-2696,-2715,-2733,-2750,-2765,-2780,-2794,-2806,-2818,-2829,-2840,-2851,-2861,-2871,-2882,-2895,-2909,-2924,-2941,-2961,
+-2983,-3008,-3036,-3068,-3103,-3140,-3182,-3226,-3272,-3321,-3372,-3423,-3474,-3525,-3575,-3624,-3671,-3715,-3756,-3794,
+-3828,-3857,-3883,-3905,-3923,-3938,-3948,-3957,-3964,-3969,-3973,-3977,-3981,-3988,-3997,-4008,-4021,-4038,-4058,-4079,
+-4105,-4133,-4163,-4197,-4232,-4267,-4302,-4337,-4371,-4402,-4432,-4458,-4482,-4502,-4519,-4532,-4541,-4546,-4549,-4549,
+-4548,-4546,-4542,-4539,-4538,-4536,-4537,-4540,-4546,-4555,-4567,-4583,-4601,-4623,-4648,-4676,-4706,-4738,-4773,-4808,
+-4844,-4880,-4917,-4953,-4989,-5024,-5057,-5090,-5120,-5149,-5177,-5203,-5227,-5250,-5273,-5295,-5316,-5337,-5358,-5379,
+-5400,-5421,-5442,-5463,-5485,-5507,-5529,-5551,-5572,-5592,-5611,-5628,-5643,-5657,-5668,-5676,-5682,-5684,-5682,-5678,
+-5671,-5662,-5650,-5635,-5619,-5602,-5584,-5567,-5550,-5535,-5522,-5512,-5504,-5502,-5502,-5508,-5517,-5531,-5547,-5566,
+-5586,-5606,-5624,-5642,-5662,-5684,-5708,-5729,-5749,-5771,-5784,-5786,-5790,-5794,-5792,-5787,-5784,-5778,-5763,-5745,
+-5722,-5702,-5682,-5663,-5645,-5629,-5617,-5608,-5604,-5603,-5600,-5595,-5595,-5604,-5616,-5623,-5638,-5682,-5728,-5752,
+-5764,-5769,-5783,-5797,-5806,-5812,-5818,-5824,-5822,-5814,-5805,-5799,-5803,-5846,-5909,-5927,-5899,-5873,-5873,-5880,
+-5893,-5907,-5924,-5942,-5964,-5996,-6019,-6036,-6052,-6069,-6077,-6088,-6104,-6122,-6134,-6138,-6139,-6143,-6147,-6146,
+-6162,-6172,-6177,-6183,-6189,-6188,-6187,-6187,-6196,-6224,-6259,-6294,-6329,-6360,-6387,-6412,-6429,-6442,-6452,-6460,
+-6465,-6472,-6475,-6475,-6470,-6463,-6455,-6446,-6443,-6444,-6443,-6434,-6422,-6410,-6395,-6388,-6393,-6399,-6403,-6402,
+-6399,-6400,-6394,-6384,-6380,-6383,-6395,-6408,-6425,-6438,-6434,-6415,-6386,-6350,-6319,-6304,-6302,-6299,-6287,-6273,
+-6257,-6241,-6226,-6214,-6209,-6209,-6204,-6197,-6191,-6187,-6181,-6172,-6168,-6168,-6170,-6166,-6157,-6143,-6125,-6107,
+-6096,-6090,-6086,-6086,-6091,-6092,-6085,-6072,-6059,-6051,-6042,-6037,-6032,-6027,-6027,-6026,-6027,-6024,-6019,-6017,
+-6016,-6020,-6026,-6022,-6014,-6007,-5999,-5989,-5979,-5964,-5948,-5933,-5920,-5914,-5907,-5896,-5882,-5867,-5852,-5842,
+-5832,-5819,-5805,-5795,-5786,-5776,-5765,-5759,-5753,-5745,-5734,-5724,-5714,-5702,-5692,-5683,-5671,-5660,-5649,-5637,
+-5624,-5613,-5602,-5588,-5575,-5562,-5549,-5535,-5519,-5505,-5492,-5475,-5460,-5447,-5429,-5412,-5396,-5382,-5365,-5347,
+-5329,-5310,-5293,-5276,-5257,-5241,-5222,-5205,-5185,-5167,-5149,-5131,-5111,-5091,-5070,-5046,-5024,-5001,-4979,-4956,
+-4932,-4910,-4888,-4866,-4844,-4823,-4804,-4786,-4764,-4741,-4721,-4697,-4669,-4644,-4620,-4597,-4573,-4551,-4530,-4514,
+-4500,-4489,-4479,-4469,-4454,-4438,-4421,-4395,-4366,-4328,-4290,-4266,-4252,-4246,-4229,-4201,-4173,-4142,-4121,-4106,
+-4087,-4066,-4051,-4044,-4042,-4038,-4031,-4026,-4016,-4005,-3991,-3976,-3960,-3958,-3971,-3986,-3993,-3985,-3965,-3932,
+-3915,-3910,-3899,-3889,-3879,-3868,-3853,-3838,-3826,-3815,-3804,-3794,-3780,-3765,-3747,-3726,-3701,-3682,-3664,-3648,
+-3636,-3624,-3616,-3610,-3603,-3591,-3572,-3548,-3528,-3510,-3493,-3477,-3457,-3439,-3421,-3404,-3385,-3366,-3349,-3332,
+-3315,-3296,-3279,-3264,-3257,-3252,-3244,-3237,-3228,-3217,-3207,-3197,-3180,-3158,-3133,-3104,-3078,-3056,-3034,-3012,
+-2989,-2972,-2959,-2941,-2924,-2909,-2893,-2872,-2852,-2834,-2815,-2785,-2761,-2747,-2732,-2722,-2712,-2702,-2688,-2676,
+-2663,-2648,-2639,-2631,-2620,-2613,-2607,-2608,-2613,-2614,-2611,-2597,-2583,-2567,-2545,-2524,-2494,-2467,-2434,-2402,
+-2373,-2339,-2298,-2254,-2197,-2131,-2069,-2026,-2007,-2002,-2006,-2013,-2020,-2025,-2026,-2030,-2032,-2022,-2009,-1991,
+-1970,-1942,-1909,-1869,-1832,-1792,-1748,-1705,-1663,-1622,-1590,-1560,-1531,-1499,-1471,-1442,-1410,-1386,-1367,-1352,
+-1336,-1326,-1315,-1305,-1292,-1275,-1259,-1242,-1231,-1223,-1216,-1205,-1195,-1185,-1175,-1159,-1139,-1115,-1086,-1054,
+-1018,-978,-939,-899,-862,-821,-783,-754,-737,-723,-702,-689,-682,-665,-648,-632,-610,-587,-551,-519,
+-496,-467,-438,-412,-388,-361,-335,-307,-280,-252,-224,-196,-168,-140,-113,-86,-60,-34,-9,17,
+41,67,91,120,148,180,199,216,273,324,363,405,445,484,526,567,607,645,679,708,
+736,758,777,791,802,814,819,818,812,798,779,752,723,692,658,623,588,553,519,487,
+458,432,411,396,383,371,360,357,357,354,354,351,347,350,357,351,322,265,207,163,
+121,77,41,7,-20,-43,-51,-75,-107,-114,-123,-131,-132,-132,-129,-127,-122,-112,-106,-97,
+-87,-85,-77,-69,-65,-64,-56,-49,-54,-52,-48,-49,-48,-49,-50,-51,-47,-48,-50,-49,
+-50,-49,-46,-40,-39,-33,-25,-19,-10,-2,0,5,9,13,16,17,19,17,16,16,
+18,19,18,21,14,6,7,6,5,9,10,7,7,4,3,3,2,0,0,-3,
+-3,-4,-6,-9,-10,-10,-8,-8,-8,-8,-7,-7,-6,-3,1,5,9,16,20,21,
+22,24,26,28,31,37,41,47,54,62,67,75,86,97,107,118,128,137,146,155,
+167,176,182,188,194,198,202,207,211,213,214,214,217,221,225,230,234,238,246,253,
+254,257,263,270,281,292,303,311,316,321,323,326,329,329,331,336,343,352,361,374,
+388,406,428,455,480,512,559,613,660,704,744,784,826,867,905,944,988,1026,1061,1096,
+1134,1174,1215,1250,1278,1301,1320,1336,1351,1363,1374,1385,1393,1398,1401,1401,1400,1398,1397,1396,
+1396,1396,1396,1397,1398,1400,1402,1405,1409,1413,1418,1424,1432,1439,1447,1456,1465,1475,1484,1493,
+1502,1511,1519,1527,1488,1497,1505,1511,1517,1523,1526,1528,1529,1528,1526,1523,1518,1512,1504,1495,
+1485,1474,1462,1449,1437,1424,1412,1400,1388,1378,1368,1360,1354,1349,1344,1342,1342,1343,1346,1349,
+1354,1360,1367,1374,1383,1393,1401,1409,1417,1424,1430,1436,1440,1444,1448,1451,1454,1458,1461,1465,
+1468,1473,1477,1482,1488,1494,1500,1506,1512,1518,1524,1530,1535,1540,1544,1548,1551,1555,1559,1562,
+1564,1566,1569,1571,1574,1577,1580,1584,1588,1593,1599,1604,1610,1617,1624,1630,1637,1644,1651,1656,
+1661,1666,1670,1673,1675,1677,1677,1678,1677,1676,1675,1673,1672,1671,1670,1670,1672,1673,1677,1681,
+1687,1694,1702,1714,1727,1741,1758,1777,1798,1821,1846,1872,1899,1927,1955,1985,2014,2043,2072,2100,
+2126,2152,2175,2196,2215,2232,2246,2258,2267,2274,2278,2280,2281,2281,2279,2279,2278,2277,2275,2274,
+2274,2276,2279,2283,2289,2297,2308,2321,2335,2350,2366,2385,2403,2423,2443,2462,2481,2498,2514,2529,
+2544,2556,2566,2575,2584,2592,2600,2606,2613,2620,2627,2634,2642,2651,2661,2672,2684,2696,2708,2721,
+2734,2747,2759,2770,2781,2790,2797,2804,2808,2811,2813,2812,2810,2807,2802,2796,2789,2781,2773,2764,
+2756,2747,2739,2731,2724,2717,2711,2706,2701,2697,2694,2692,2690,2688,2687,2685,2684,2682,2681,2679,
+2676,2673,2670,2667,2665,2662,2659,2656,2653,2652,2649,2646,2644,2640,2636,2631,2625,2620,2612,2604,
+2589,2574,2554,2528,2499,2464,2424,2381,2334,2284,2229,2171,2110,2047,1985,1927,1870,1809,1751,1695,
+1644,1597,1557,1521,1492,1469,1453,1442,1438,1440,1446,1458,1473,1492,1511,1532,1553,1574,1596,1615,
+1635,1654,1670,1684,1697,1707,1715,1723,1728,1732,1736,1738,1741,1744,1747,1750,1753,1755,1759,1763,
+1767,1772,1777,1780,1782,1785,1787,1787,1784,1780,1774,1766,1756,1744,1729,1713,1694,1673,1651,1626,
+1601,1575,1547,1518,1488,1458,1426,1395,1362,1329,1296,1263,1229,1197,1164,1130,1098,1067,1036,1007,
+979,952,926,900,876,852,828,806,782,758,733,707,679,649,617,582,545,505,463,418,
+371,321,269,216,163,109,55,1,-51,-103,-153,-201,-247,-290,-331,-370,-407,-442,-474,-505,
+-534,-563,-592,-621,-651,-683,-715,-749,-785,-823,-863,-905,-949,-995,-1042,-1092,-1142,-1194,-1247,-1301,
+-1356,-1413,-1469,-1526,-1583,-1641,-1699,-1756,-1814,-1871,-1928,-1984,-2039,-2092,-2143,-2193,-2240,-2285,-2325,-2362,
+-2395,-2423,-2448,-2468,-2482,-2490,-2495,-2495,-2491,-2482,-2472,-2458,-2442,-2426,-2410,-2393,-2378,-2366,-2355,-2347,
+-2343,-2341,-2344,-2350,-2359,-2371,-2387,-2405,-2426,-2449,-2473,-2498,-2524,-2550,-2576,-2602,-2627,-2652,-2675,-2697,
+-2717,-2737,-2754,-2771,-2786,-2800,-2813,-2825,-2836,-2846,-2856,-2866,-2875,-2885,-2895,-2907,-2919,-2933,-2948,-2965,
+-2985,-3007,-3032,-3060,-3091,-3125,-3161,-3201,-3243,-3288,-3334,-3382,-3431,-3480,-3530,-3578,-3625,-3671,-3715,-3755,
+-3793,-3827,-3857,-3885,-3908,-3928,-3944,-3956,-3967,-3976,-3982,-3988,-3992,-3997,-4002,-4009,-4018,-4030,-4044,-4061,
+-4080,-4103,-4128,-4157,-4189,-4223,-4260,-4297,-4335,-4372,-4410,-4447,-4482,-4514,-4543,-4570,-4594,-4614,-4632,-4647,
+-4658,-4668,-4675,-4681,-4685,-4689,-4691,-4695,-4699,-4704,-4711,-4719,-4730,-4741,-4755,-4771,-4790,-4812,-4835,-4859,
+-4885,-4911,-4939,-4969,-4998,-5028,-5057,-5086,-5114,-5142,-5167,-5193,-5217,-5240,-5262,-5283,-5304,-5324,-5344,-5365,
+-5385,-5406,-5427,-5449,-5471,-5493,-5516,-5539,-5561,-5584,-5607,-5627,-5647,-5665,-5680,-5693,-5704,-5711,-5715,-5715,
+-5712,-5704,-5694,-5680,-5663,-5645,-5625,-5604,-5584,-5563,-5544,-5527,-5514,-5504,-5498,-5497,-5501,-5510,-5525,-5542,
+-5564,-5585,-5609,-5634,-5658,-5687,-5715,-5744,-5772,-5798,-5821,-5842,-5857,-5873,-5889,-5894,-5882,-5864,-5850,-5832,
+-5811,-5790,-5769,-5747,-5723,-5701,-5676,-5649,-5633,-5614,-5601,-5591,-5585,-5583,-5584,-5585,-5586,-5587,-5588,-5589,
+-5594,-5609,-5629,-5660,-5704,-5746,-5778,-5803,-5821,-5833,-5839,-5842,-5843,-5841,-5863,-5918,-5945,-5930,-5898,-5890,
+-5897,-5907,-5917,-5926,-5941,-5959,-5986,-6005,-6013,-6030,-6054,-6067,-6081,-6098,-6120,-6139,-6148,-6149,-6148,-6127,
+-6102,-6100,-6115,-6130,-6141,-6148,-6147,-6160,-6161,-6161,-6186,-6219,-6254,-6294,-6338,-6375,-6405,-6427,-6442,-6457,
+-6467,-6475,-6482,-6487,-6491,-6491,-6485,-6477,-6466,-6459,-6459,-6450,-6436,-6426,-6413,-6406,-6409,-6415,-6419,-6423,
+-6424,-6425,-6419,-6414,-6420,-6437,-6467,-6491,-6503,-6496,-6475,-6441,-6405,-6373,-6346,-6329,-6321,-6320,-6324,-6321,
+-6314,-6305,-6295,-6283,-6272,-6261,-6248,-6235,-6225,-6223,-6219,-6210,-6198,-6189,-6185,-6188,-6187,-6180,-6170,-6159,
+-6144,-6130,-6121,-6111,-6104,-6106,-6114,-6113,-6099,-6087,-6082,-6076,-6067,-6061,-6060,-6058,-6054,-6050,-6045,-6043,
+-6038,-6035,-6034,-6039,-6042,-6039,-6032,-6022,-6013,-6005,-5994,-5975,-5963,-5952,-5940,-5931,-5916,-5907,-5895,-5881,
+-5872,-5862,-5852,-5842,-5832,-5824,-5816,-5808,-5802,-5795,-5790,-5781,-5771,-5761,-5753,-5742,-5733,-5723,-5712,-5701,
+-5690,-5679,-5665,-5654,-5641,-5627,-5613,-5597,-5581,-5567,-5551,-5534,-5520,-5502,-5486,-5469,-5451,-5435,-5416,-5397,
+-5382,-5361,-5341,-5326,-5307,-5287,-5269,-5250,-5235,-5218,-5194,-5178,-5164,-5148,-5129,-5107,-5088,-5064,-5041,-5021,
+-4999,-4974,-4950,-4928,-4909,-4886,-4861,-4841,-4819,-4799,-4781,-4760,-4731,-4704,-4684,-4661,-4636,-4612,-4588,-4567,
+-4549,-4534,-4519,-4502,-4489,-4473,-4455,-4436,-4412,-4384,-4350,-4311,-4290,-4295,-4303,-4294,-4276,-4253,-4221,-4188,
+-4153,-4123,-4101,-4082,-4067,-4051,-4044,-4043,-4040,-4036,-4033,-4030,-4026,-4018,-4008,-4002,-4006,-4019,-4021,-4014,
+-4005,-3992,-3973,-3954,-3944,-3936,-3928,-3920,-3908,-3892,-3878,-3865,-3850,-3837,-3820,-3798,-3772,-3748,-3726,-3710,
+-3697,-3688,-3680,-3669,-3662,-3648,-3630,-3611,-3588,-3566,-3542,-3518,-3495,-3477,-3459,-3439,-3421,-3405,-3388,-3371,
+-3356,-3337,-3315,-3291,-3270,-3252,-3239,-3222,-3202,-3186,-3168,-3148,-3125,-3096,-3066,-3037,-3006,-2977,-2949,-2926,
+-2903,-2882,-2860,-2838,-2814,-2787,-2761,-2736,-2714,-2693,-2681,-2669,-2656,-2642,-2627,-2615,-2612,-2616,-2621,-2626,
+-2626,-2618,-2609,-2594,-2569,-2547,-2515,-2479,-2440,-2403,-2383,-2363,-2340,-2321,-2311,-2306,-2304,-2307,-2311,-2312,
+-2315,-2306,-2288,-2262,-2218,-2162,-2095,-2021,-1967,-1926,-1895,-1879,-1868,-1859,-1848,-1833,-1827,-1823,-1815,-1800,
+-1785,-1767,-1745,-1724,-1701,-1677,-1656,-1638,-1617,-1599,-1579,-1559,-1546,-1530,-1520,-1509,-1496,-1483,-1471,-1463,
+-1455,-1444,-1431,-1422,-1412,-1404,-1388,-1368,-1347,-1330,-1313,-1297,-1278,-1258,-1238,-1219,-1196,-1167,-1134,-1096,
+-1057,-1023,-993,-961,-931,-903,-869,-832,-801,-781,-772,-771,-767,-749,-721,-693,-662,-635,-612,-583,
+-558,-536,-515,-493,-470,-445,-420,-392,-365,-338,-309,-281,-253,-225,-198,-172,-145,-120,-94,-69,
+-44,-19,4,30,57,85,112,142,174,211,250,288,326,367,407,446,485,523,559,593,
+623,648,669,687,701,712,724,731,730,725,708,686,670,648,626,603,574,542,508,476,
+446,417,390,368,350,334,320,310,302,300,296,295,297,296,301,305,304,296,275,235,
+191,160,124,91,55,26,0,-24,-42,-59,-70,-79,-85,-88,-90,-94,-93,-90,-83,-79,
+-77,-76,-68,-65,-66,-65,-60,-56,-57,-58,-60,-59,-62,-67,-71,-72,-67,-70,-79,-80,
+-79,-82,-85,-81,-75,-77,-75,-73,-66,-61,-58,-54,-53,-52,-49,-46,-47,-50,-50,-48,
+-47,-50,-52,-53,-56,-56,-58,-59,-61,-61,-60,-60,-58,-58,-58,-59,-59,-60,-62,-61,
+-61,-58,-58,-58,-57,-57,-58,-60,-62,-62,-60,-56,-53,-50,-49,-46,-45,-43,-43,-43,
+-41,-37,-34,-30,-27,-23,-16,-10,-2,6,17,29,39,49,61,73,85,97,107,118,
+128,135,142,150,155,160,167,174,181,186,191,195,199,203,207,213,218,219,215,214,
+217,223,233,241,248,254,259,262,265,265,265,267,272,277,284,293,304,318,336,359,
+386,418,457,494,530,566,597,630,671,716,762,808,855,904,953,1001,1047,1097,1141,1185,
+1225,1259,1286,1305,1317,1326,1336,1344,1350,1355,1358,1359,1359,1358,1355,1352,1348,1344,1339,1336,
+1331,1329,1327,1326,1326,1327,1329,1333,1337,1342,1348,1356,1364,1373,1382,1392,1403,1414,1425,1436,
+1447,1458,1469,1478,1488,1404,1416,1428,1439,1449,1457,1464,1470,1474,1476,1476,1473,1468,1461,1453,
+1443,1430,1417,1403,1388,1372,1357,1341,1326,1313,1300,1288,1279,1271,1265,1261,1259,1260,1263,1268,
+1275,1282,1291,1299,1307,1318,1328,1338,1349,1359,1368,1378,1385,1392,1398,1404,1409,1412,1415,1416,
+1418,1419,1420,1422,1424,1426,1429,1431,1434,1437,1440,1442,1446,1448,1450,1452,1454,1456,1458,1461,
+1462,1463,1464,1465,1465,1466,1469,1471,1473,1476,1479,1484,1490,1497,1505,1513,1521,1529,1536,1542,
+1547,1552,1559,1566,1569,1571,1573,1574,1574,1573,1572,1571,1569,1568,1567,1565,1564,1565,1568,1572,
+1580,1589,1601,1614,1630,1650,1671,1696,1723,1753,1785,1819,1854,1891,1927,1965,2003,2041,2078,2115,
+2150,2183,2215,2244,2270,2293,2313,2330,2344,2354,2362,2367,2369,2369,2369,2366,2363,2359,2356,2352,
+2348,2346,2344,2343,2343,2343,2346,2351,2357,2363,2371,2379,2388,2398,2409,2419,2430,2439,2448,2456,
+2464,2471,2478,2484,2491,2498,2504,2511,2519,2528,2536,2546,2557,2569,2582,2596,2611,2626,2642,2658,
+2674,2690,2704,2718,2730,2741,2749,2757,2762,2765,2766,2765,2762,2757,2751,2744,2736,2727,2717,2707,
+2696,2686,2676,2666,2657,2648,2640,2632,2626,2620,2615,2610,2606,2601,2596,2593,2587,2583,2578,2572,
+2568,2562,2556,2551,2545,2539,2534,2529,2525,2521,2518,2515,2513,2509,2507,2504,2501,2497,2492,2484,
+2475,2462,2445,2426,2402,2373,2342,2307,2267,2222,2174,2122,2068,2012,1954,1895,1834,1775,1716,1658,
+1604,1554,1508,1468,1433,1404,1381,1365,1355,1351,1352,1359,1372,1388,1404,1425,1448,1471,1497,1521,
+1546,1570,1593,1613,1632,1648,1664,1677,1687,1696,1703,1708,1714,1718,1722,1726,1729,1731,1735,1738,
+1742,1746,1748,1751,1752,1754,1754,1754,1751,1748,1743,1737,1729,1720,1708,1696,1680,1663,1644,1624,
+1601,1578,1552,1526,1497,1468,1438,1406,1373,1340,1305,1269,1233,1197,1160,1123,1087,1051,1015,981,
+947,913,882,851,822,795,768,742,717,692,667,642,616,589,562,533,503,470,437,401,
+364,325,285,243,201,158,114,73,31,-11,-51,-92,-131,-168,-205,-240,-275,-309,-343,-376,
+-409,-442,-476,-511,-548,-585,-625,-666,-711,-757,-805,-855,-907,-961,-1016,-1073,-1130,-1188,-1247,-1307,
+-1367,-1427,-1487,-1548,-1609,-1670,-1731,-1792,-1853,-1914,-1974,-2034,-2093,-2150,-2206,-2260,-2312,-2362,-2407,-2449,
+-2487,-2520,-2547,-2569,-2584,-2596,-2602,-2602,-2597,-2588,-2575,-2558,-2539,-2519,-2497,-2475,-2455,-2435,-2418,-2403,
+-2391,-2383,-2380,-2380,-2384,-2393,-2405,-2420,-2439,-2460,-2484,-2508,-2535,-2562,-2589,-2615,-2642,-2668,-2693,-2716,
+-2738,-2759,-2778,-2795,-2811,-2826,-2840,-2852,-2864,-2875,-2886,-2896,-2906,-2917,-2927,-2939,-2951,-2964,-2979,-2996,
+-3014,-3034,-3056,-3081,-3109,-3138,-3170,-3205,-3243,-3283,-3324,-3368,-3413,-3459,-3505,-3551,-3597,-3642,-3685,-3726,
+-3765,-3801,-3833,-3864,-3890,-3913,-3932,-3949,-3962,-3972,-3981,-3987,-3992,-3996,-4000,-4004,-4009,-4016,-4025,-4037,
+-4052,-4070,-4090,-4114,-4142,-4173,-4209,-4246,-4286,-4327,-4370,-4414,-4457,-4499,-4540,-4580,-4617,-4652,-4685,-4714,
+-4741,-4764,-4784,-4800,-4813,-4823,-4831,-4839,-4844,-4848,-4852,-4856,-4860,-4864,-4869,-4875,-4884,-4894,-4906,-4920,
+-4935,-4952,-4971,-4991,-5013,-5037,-5061,-5086,-5111,-5137,-5162,-5187,-5211,-5234,-5258,-5280,-5302,-5323,-5344,-5365,
+-5385,-5406,-5427,-5448,-5470,-5492,-5515,-5538,-5562,-5585,-5608,-5632,-5653,-5675,-5694,-5712,-5727,-5739,-5748,-5752,
+-5753,-5750,-5743,-5733,-5719,-5702,-5683,-5662,-5639,-5615,-5592,-5571,-5550,-5534,-5521,-5512,-5509,-5511,-5517,-5529,
+-5544,-5566,-5588,-5615,-5644,-5679,-5709,-5737,-5767,-5800,-5832,-5858,-5883,-5901,-5916,-5925,-5954,-5953,-5926,-5905,
+-5881,-5857,-5830,-5801,-5772,-5745,-5717,-5690,-5665,-5643,-5618,-5589,-5561,-5547,-5538,-5534,-5536,-5541,-5553,-5564,
+-5571,-5571,-5569,-5573,-5588,-5617,-5658,-5709,-5754,-5787,-5818,-5844,-5863,-5872,-5882,-5900,-5920,-5931,-5933,-5930,
+-5923,-5920,-5922,-5927,-5934,-5947,-5968,-5994,-6020,-6044,-6052,-6042,-6057,-6088,-6117,-6141,-6154,-6163,-6162,-6157,
+-6144,-6124,-6105,-6093,-6087,-6087,-6090,-6104,-6134,-6161,-6178,-6189,-6202,-6222,-6256,-6302,-6347,-6379,-6402,-6425,
+-6443,-6461,-6478,-6490,-6498,-6502,-6501,-6496,-6489,-6483,-6481,-6476,-6462,-6447,-6439,-6432,-6428,-6430,-6437,-6446,
+-6456,-6466,-6473,-6483,-6496,-6520,-6543,-6553,-6540,-6506,-6462,-6423,-6400,-6384,-6368,-6356,-6351,-6350,-6352,-6358,
+-6361,-6355,-6344,-6331,-6322,-6317,-6306,-6289,-6270,-6255,-6251,-6252,-6245,-6229,-6213,-6201,-6192,-6188,-6188,-6187,
+-6180,-6170,-6160,-6150,-6146,-6139,-6136,-6136,-6139,-6133,-6120,-6113,-6105,-6099,-6093,-6088,-6086,-6082,-6081,-6074,
+-6067,-6064,-6064,-6066,-6066,-6067,-6064,-6059,-6049,-6039,-6027,-6014,-6003,-5995,-5982,-5969,-5959,-5946,-5939,-5932,
+-5920,-5907,-5900,-5891,-5882,-5872,-5866,-5857,-5848,-5844,-5841,-5835,-5827,-5819,-5809,-5803,-5793,-5785,-5774,-5763,
+-5752,-5740,-5729,-5718,-5705,-5691,-5677,-5660,-5645,-5629,-5615,-5598,-5581,-5564,-5545,-5531,-5511,-5490,-5472,-5452,
+-5431,-5411,-5390,-5369,-5349,-5330,-5313,-5295,-5278,-5260,-5239,-5224,-5209,-5193,-5176,-5159,-5146,-5128,-5107,-5087,
+-5064,-5041,-5017,-4994,-4971,-4944,-4917,-4895,-4874,-4849,-4832,-4811,-4786,-4765,-4743,-4722,-4697,-4670,-4647,-4625,
+-4604,-4583,-4564,-4546,-4529,-4515,-4502,-4482,-4464,-4444,-4425,-4407,-4388,-4367,-4351,-4338,-4324,-4316,-4303,-4281,
+-4246,-4205,-4166,-4127,-4090,-4064,-4051,-4043,-4040,-4042,-4046,-4051,-4056,-4056,-4055,-4049,-4047,-4051,-4052,-4052,
+-4048,-4041,-4030,-4015,-3994,-3973,-3966,-3973,-3975,-3968,-3955,-3935,-3915,-3897,-3878,-3853,-3831,-3808,-3783,-3763,
+-3747,-3731,-3716,-3700,-3684,-3667,-3647,-3622,-3593,-3568,-3540,-3516,-3500,-3484,-3470,-3454,-3440,-3424,-3410,-3394,
+-3378,-3368,-3353,-3332,-3304,-3270,-3234,-3201,-3171,-3136,-3093,-3054,-3012,-2965,-2925,-2884,-2843,-2805,-2767,-2734,
+-2705,-2677,-2656,-2631,-2606,-2585,-2564,-2547,-2537,-2528,-2521,-2525,-2532,-2536,-2542,-2545,-2543,-2545,-2547,-2546,
+-2541,-2532,-2506,-2470,-2430,-2393,-2370,-2351,-2338,-2324,-2316,-2305,-2292,-2280,-2282,-2290,-2292,-2301,-2307,-2309,
+-2315,-2311,-2297,-2274,-2248,-2212,-2172,-2125,-2075,-2031,-1988,-1945,-1905,-1876,-1850,-1821,-1794,-1774,-1755,-1739,
+-1728,-1714,-1696,-1680,-1665,-1656,-1644,-1634,-1624,-1616,-1603,-1585,-1574,-1561,-1552,-1549,-1543,-1534,-1532,-1529,
+-1524,-1517,-1507,-1498,-1489,-1479,-1468,-1451,-1427,-1405,-1378,-1350,-1330,-1309,-1285,-1257,-1225,-1193,-1162,-1124,
+-1087,-1055,-1027,-1001,-977,-955,-930,-907,-887,-872,-856,-840,-831,-820,-801,-785,-763,-729,-693,-662,
+-633,-608,-586,-563,-539,-514,-487,-461,-434,-407,-379,-353,-326,-299,-272,-246,-220,-195,-171,-147,
+-123,-100,-77,-54,-30,-6,19,46,72,101,133,167,203,239,277,315,353,390,426,459,
+494,524,551,576,598,613,626,629,625,623,619,621,615,601,582,563,542,515,486,456,
+427,398,370,344,321,301,282,270,262,253,248,247,246,249,259,276,290,297,298,292,
+272,237,206,178,147,118,93,67,43,24,8,-8,-20,-23,-28,-37,-39,-39,-38,-37,
+-37,-35,-34,-33,-34,-31,-29,-34,-39,-40,-44,-45,-48,-51,-48,-53,-59,-64,-69,-69,
+-73,-78,-82,-84,-86,-86,-86,-85,-85,-84,-79,-71,-71,-74,-76,-72,-71,-75,-77,-81,
+-84,-87,-91,-95,-98,-101,-104,-106,-107,-108,-108,-107,-105,-103,-105,-105,-103,-102,-101,-102,
+-107,-111,-114,-114,-115,-116,-118,-117,-116,-116,-115,-114,-112,-110,-108,-107,-107,-107,-105,-105,
+-102,-98,-95,-90,-85,-79,-72,-65,-56,-46,-36,-24,-10,0,12,25,38,49,61,72,
+84,92,98,102,104,105,107,111,116,125,134,145,158,170,178,179,177,174,174,178,
+184,192,199,204,206,206,205,204,203,203,205,209,216,225,241,262,288,321,361,401,
+435,468,499,529,564,603,645,688,734,782,834,885,935,985,1034,1079,1121,1162,1199,1229,
+1253,1270,1282,1293,1300,1304,1306,1306,1304,1301,1296,1289,1282,1274,1266,1257,1247,1239,1232,1225,
+1217,1214,1212,1209,1208,1208,1209,1212,1216,1221,1227,1234,1243,1252,1262,1273,1284,1297,1309,1322,
+1336,1349,1363,1377,1390,1404,1302,1320,1338,1355,1371,1386,1399,1411,1421,1428,1434,1437,1437,1436,
+1431,1425,1415,1404,1392,1378,1364,1348,1333,1318,1304,1292,1282,1273,1266,1261,1258,1257,1259,1264,
+1271,1280,1289,1299,1311,1324,1337,1351,1364,1378,1390,1402,1414,1424,1432,1439,1445,1448,1450,1453,
+1455,1452,1449,1445,1442,1440,1437,1436,1433,1430,1427,1424,1420,1416,1414,1411,1408,1406,1403,1400,
+1399,1399,1397,1395,1393,1391,1391,1392,1394,1396,1399,1404,1410,1417,1425,1434,1444,1454,1464,1473,
+1482,1491,1499,1506,1513,1517,1522,1526,1529,1530,1530,1528,1525,1521,1517,1515,1512,1511,1512,1514,
+1519,1526,1537,1549,1565,1584,1607,1633,1662,1696,1731,1770,1810,1852,1895,1939,1983,2028,2072,2115,
+2157,2197,2235,2271,2303,2333,2360,2382,2401,2416,2425,2433,2439,2441,2442,2440,2437,2433,2430,2425,
+2420,2416,2411,2407,2403,2400,2398,2397,2397,2398,2399,2401,2404,2405,2408,2412,2415,2417,2420,2422,
+2424,2426,2428,2431,2434,2436,2440,2445,2450,2457,2466,2475,2486,2499,2512,2527,2543,2559,2577,2594,
+2611,2629,2645,2659,2673,2685,2694,2702,2707,2709,2711,2709,2706,2701,2694,2686,2677,2667,2656,2644,
+2632,2621,2610,2599,2589,2579,2570,2562,2555,2548,2542,2536,2530,2525,2519,2513,2507,2501,2494,2487,
+2479,2472,2464,2456,2446,2437,2429,2420,2413,2406,2398,2392,2387,2381,2376,2370,2365,2359,2352,2345,
+2336,2326,2313,2297,2279,2260,2234,2205,2171,2134,2094,2050,2003,1951,1896,1842,1788,1732,1674,1618,
+1564,1513,1464,1421,1381,1348,1320,1297,1281,1271,1266,1268,1274,1285,1298,1315,1336,1358,1383,1409,
+1436,1462,1489,1514,1539,1561,1581,1600,1617,1631,1644,1655,1663,1671,1678,1683,1688,1692,1695,1699,
+1702,1704,1707,1708,1709,1709,1707,1705,1702,1699,1694,1688,1680,1672,1661,1650,1637,1622,1606,1588,
+1569,1548,1526,1502,1476,1449,1421,1391,1360,1328,1294,1259,1222,1186,1149,1110,1072,1034,996,958,
+921,885,850,817,785,754,725,696,669,643,617,593,569,545,521,497,471,446,419,391,
+363,333,302,270,237,205,173,139,106,73,40,7,-25,-57,-90,-122,-154,-187,-219,-253,
+-288,-324,-362,-400,-441,-484,-530,-578,-628,-681,-737,-794,-854,-915,-978,-1042,-1107,-1172,-1238,-1304,
+-1370,-1436,-1502,-1569,-1634,-1700,-1765,-1830,-1894,-1958,-2021,-2083,-2145,-2205,-2264,-2321,-2377,-2429,-2479,-2524,
+-2565,-2601,-2632,-2657,-2678,-2692,-2699,-2702,-2699,-2690,-2678,-2661,-2641,-2618,-2594,-2570,-2545,-2521,-2499,-2479,
+-2461,-2447,-2437,-2431,-2429,-2431,-2438,-2448,-2462,-2480,-2501,-2523,-2547,-2572,-2599,-2625,-2652,-2678,-2703,-2726,
+-2750,-2772,-2792,-2811,-2829,-2846,-2862,-2877,-2891,-2904,-2917,-2930,-2942,-2955,-2968,-2981,-2996,-3011,-3027,-3045,
+-3063,-3083,-3104,-3128,-3153,-3180,-3209,-3240,-3274,-3308,-3345,-3384,-3423,-3464,-3506,-3547,-3589,-3631,-3671,-3710,
+-3747,-3783,-3816,-3845,-3873,-3897,-3918,-3936,-3951,-3963,-3973,-3980,-3986,-3990,-3992,-3995,-3998,-4001,-4006,-4014,
+-4024,-4037,-4054,-4074,-4098,-4125,-4156,-4191,-4231,-4274,-4319,-4365,-4414,-4463,-4513,-4562,-4610,-4657,-4702,-4745,
+-4783,-4819,-4850,-4878,-4901,-4921,-4937,-4950,-4960,-4967,-4971,-4973,-4972,-4971,-4972,-4971,-4972,-4973,-4976,-4980,
+-4986,-4994,-5005,-5018,-5033,-5050,-5069,-5090,-5112,-5136,-5160,-5185,-5210,-5235,-5260,-5285,-5308,-5332,-5355,-5376,
+-5398,-5420,-5441,-5463,-5485,-5506,-5528,-5551,-5573,-5596,-5619,-5642,-5665,-5687,-5709,-5729,-5746,-5762,-5775,-5785,
+-5792,-5794,-5794,-5789,-5780,-5767,-5751,-5732,-5711,-5688,-5664,-5640,-5617,-5596,-5577,-5561,-5549,-5542,-5541,-5545,
+-5555,-5569,-5588,-5612,-5640,-5673,-5704,-5726,-5750,-5781,-5810,-5840,-5867,-5893,-5912,-5927,-5937,-5946,-5956,-5945,
+-5924,-5899,-5869,-5838,-5806,-5773,-5740,-5710,-5676,-5635,-5600,-5573,-5552,-5531,-5507,-5490,-5478,-5475,-5478,-5483,
+-5492,-5503,-5520,-5538,-5556,-5576,-5599,-5625,-5653,-5681,-5707,-5737,-5780,-5820,-5844,-5863,-5881,-5893,-5902,-5917,
+-5938,-5947,-5945,-5944,-5944,-5948,-5955,-5970,-5991,-6019,-6053,-6073,-6062,-6056,-6083,-6116,-6142,-6165,-6182,-6185,
+-6181,-6179,-6174,-6169,-6154,-6135,-6121,-6109,-6099,-6108,-6135,-6151,-6165,-6179,-6198,-6226,-6257,-6296,-6339,-6378,
+-6412,-6438,-6457,-6473,-6485,-6493,-6499,-6501,-6500,-6501,-6503,-6500,-6491,-6480,-6473,-6468,-6463,-6459,-6463,-6476,
+-6494,-6513,-6531,-6554,-6577,-6584,-6571,-6546,-6515,-6485,-6462,-6442,-6427,-6415,-6405,-6398,-6390,-6384,-6384,-6386,
+-6387,-6386,-6380,-6369,-6356,-6347,-6343,-6330,-6314,-6300,-6285,-6273,-6263,-6258,-6258,-6255,-6245,-6238,-6235,-6231,
+-6223,-6218,-6211,-6200,-6191,-6184,-6177,-6169,-6167,-6168,-6164,-6155,-6145,-6137,-6129,-6125,-6122,-6116,-6109,-6105,
+-6102,-6096,-6096,-6097,-6097,-6096,-6084,-6078,-6077,-6070,-6061,-6051,-6042,-6033,-6020,-6009,-5997,-5985,-5976,-5967,
+-5962,-5953,-5942,-5937,-5929,-5921,-5913,-5907,-5902,-5894,-5888,-5883,-5877,-5871,-5865,-5856,-5845,-5836,-5829,-5820,
+-5809,-5798,-5786,-5772,-5760,-5748,-5733,-5721,-5705,-5686,-5670,-5654,-5637,-5622,-5600,-5581,-5565,-5543,-5522,-5503,
+-5483,-5463,-5442,-5423,-5402,-5381,-5356,-5338,-5325,-5306,-5287,-5267,-5249,-5232,-5214,-5198,-5186,-5175,-5160,-5142,
+-5124,-5104,-5081,-5057,-5032,-5006,-4975,-4945,-4921,-4898,-4875,-4849,-4827,-4806,-4781,-4761,-4742,-4720,-4699,-4679,
+-4658,-4637,-4617,-4593,-4570,-4554,-4541,-4530,-4517,-4497,-4480,-4468,-4442,-4418,-4396,-4374,-4359,-4340,-4319,-4304,
+-4292,-4268,-4239,-4205,-4171,-4141,-4118,-4096,-4078,-4067,-4061,-4063,-4067,-4067,-4065,-4064,-4061,-4062,-4064,-4069,
+-4070,-4072,-4067,-4048,-4030,-4016,-4002,-3990,-3983,-3969,-3952,-3937,-3925,-3908,-3890,-3865,-3844,-3818,-3785,-3755,
+-3724,-3697,-3671,-3646,-3624,-3605,-3581,-3557,-3534,-3510,-3485,-3459,-3438,-3424,-3411,-3394,-3384,-3374,-3358,-3342,
+-3321,-3302,-3279,-3247,-3213,-3174,-3131,-3094,-3050,-3000,-2950,-2898,-2849,-2806,-2768,-2732,-2697,-2667,-2641,-2616,
+-2590,-2565,-2543,-2521,-2499,-2480,-2464,-2453,-2448,-2446,-2445,-2448,-2460,-2467,-2474,-2478,-2478,-2473,-2457,-2438,
+-2426,-2418,-2421,-2427,-2423,-2414,-2397,-2384,-2370,-2353,-2335,-2318,-2307,-2296,-2293,-2292,-2292,-2298,-2304,-2308,
+-2307,-2308,-2297,-2278,-2255,-2226,-2198,-2164,-2128,-2095,-2058,-2016,-1973,-1925,-1886,-1849,-1815,-1787,-1761,-1739,
+-1722,-1708,-1700,-1692,-1680,-1670,-1655,-1643,-1638,-1629,-1617,-1607,-1595,-1583,-1580,-1577,-1577,-1578,-1576,-1573,
+-1567,-1556,-1543,-1534,-1524,-1512,-1497,-1482,-1463,-1442,-1420,-1396,-1369,-1345,-1320,-1290,-1260,-1233,-1206,-1179,
+-1147,-1113,-1088,-1060,-1032,-1007,-982,-960,-943,-930,-917,-902,-886,-867,-852,-834,-812,-792,-770,-745,
+-716,-687,-661,-635,-610,-583,-555,-527,-498,-471,-442,-414,-386,-358,-332,-306,-282,-258,-236,-215,
+-194,-173,-154,-134,-114,-93,-71,-50,-27,-5,18,45,76,113,147,181,217,251,286,320,
+353,383,415,444,470,493,510,525,531,533,533,531,530,527,519,501,480,460,438,416,
+395,369,342,316,292,269,250,232,219,212,208,200,195,194,202,213,227,252,269,279,
+285,287,284,272,248,219,194,167,140,111,90,73,56,41,32,26,18,12,9,5,
+1,4,4,0,0,-3,-5,-4,-11,-18,-18,-20,-23,-27,-27,-30,-35,-42,-51,-57,
+-61,-65,-74,-82,-84,-85,-83,-81,-80,-85,-88,-83,-84,-89,-88,-88,-89,-90,-91,-96,
+-104,-109,-116,-124,-131,-138,-139,-141,-145,-149,-155,-157,-155,-157,-158,-154,-154,-156,-157,-159,
+-161,-164,-167,-167,-168,-169,-170,-172,-170,-170,-168,-164,-163,-163,-162,-161,-160,-160,-161,-160,
+-157,-153,-149,-144,-138,-132,-125,-117,-109,-101,-94,-83,-71,-61,-49,-37,-24,-11,0,9,
+16,20,18,15,14,16,25,32,34,39,53,69,87,103,115,123,129,133,136,139,
+143,147,150,153,156,159,161,162,165,169,173,179,189,205,227,258,294,333,373,414,
+459,503,546,592,636,677,720,769,827,891,956,1024,1085,1126,1150,1169,1187,1202,1215,1226,
+1235,1241,1246,1246,1245,1241,1233,1224,1215,1206,1194,1181,1168,1156,1144,1132,1120,1109,1098,1089,
+1084,1081,1078,1074,1073,1073,1074,1077,1080,1084,1090,1097,1104,1112,1122,1132,1144,1156,1169,1183,
+1198,1214,1230,1248,1266,1283,1302,1215,1240,1264,1288,1312,1335,1358,1379,1398,1416,1431,1442,1451,
+1458,1461,1461,1459,1454,1448,1441,1431,1420,1408,1396,1384,1372,1362,1355,1352,1349,1348,1349,1355,
+1361,1370,1381,1392,1402,1416,1431,1447,1463,1479,1493,1506,1520,1535,1546,1555,1561,1566,1565,1556,
+1554,1554,1555,1554,1550,1547,1541,1534,1526,1518,1505,1493,1484,1475,1465,1456,1446,1436,1427,1418,
+1411,1405,1400,1394,1389,1385,1381,1380,1380,1381,1384,1390,1396,1404,1415,1426,1438,1451,1464,1478,
+1492,1505,1517,1527,1537,1545,1553,1559,1562,1564,1564,1563,1559,1555,1550,1544,1538,1533,1528,1526,
+1525,1527,1531,1538,1549,1564,1583,1606,1632,1663,1698,1735,1775,1818,1863,1909,1957,2004,2053,2100,
+2146,2190,2233,2273,2311,2346,2377,2405,2429,2449,2461,2472,2480,2486,2490,2491,2489,2486,2483,2478,
+2474,2470,2466,2461,2455,2450,2446,2443,2440,2437,2436,2435,2434,2432,2431,2430,2428,2426,2425,2422,
+2420,2417,2414,2412,2411,2410,2410,2411,2413,2417,2422,2429,2437,2448,2459,2473,2487,2502,2518,2535,
+2551,2568,2583,2597,2610,2622,2631,2638,2643,2645,2645,2644,2640,2634,2627,2618,2608,2597,2585,2573,
+2560,2548,2536,2525,2514,2504,2495,2487,2480,2474,2468,2463,2459,2454,2449,2445,2441,2435,2429,2423,
+2415,2407,2397,2387,2377,2365,2354,2343,2331,2319,2308,2296,2286,2275,2265,2256,2246,2237,2226,2215,
+2205,2195,2183,2169,2152,2133,2110,2086,2057,2025,1991,1952,1911,1868,1821,1772,1721,1667,1618,1571,
+1518,1470,1423,1379,1339,1303,1272,1245,1224,1209,1199,1194,1195,1199,1208,1220,1236,1254,1277,1301,
+1326,1354,1380,1408,1434,1460,1484,1508,1529,1548,1566,1582,1595,1607,1618,1626,1633,1639,1644,1648,
+1651,1654,1656,1656,1657,1654,1652,1648,1644,1639,1633,1626,1617,1608,1597,1586,1573,1559,1543,1527,
+1510,1491,1471,1449,1426,1402,1376,1349,1320,1291,1259,1227,1194,1159,1123,1086,1049,1011,974,936,
+899,863,827,793,761,729,698,668,640,614,589,565,541,519,497,476,454,433,411,389,
+367,344,319,295,270,246,221,195,169,142,114,86,59,31,2,-26,-55,-86,-117,-151,
+-186,-223,-262,-303,-346,-393,-442,-494,-548,-605,-665,-728,-792,-859,-927,-997,-1068,-1139,-1211,-1284,
+-1356,-1428,-1500,-1571,-1643,-1713,-1783,-1852,-1919,-1987,-2053,-2119,-2183,-2246,-2307,-2366,-2424,-2478,-2530,-2578,
+-2621,-2660,-2695,-2723,-2746,-2764,-2775,-2781,-2781,-2776,-2766,-2752,-2733,-2712,-2688,-2663,-2637,-2611,-2587,-2564,
+-2543,-2524,-2510,-2498,-2491,-2487,-2488,-2492,-2500,-2512,-2526,-2544,-2563,-2585,-2608,-2631,-2655,-2680,-2704,-2727,
+-2750,-2772,-2793,-2814,-2834,-2853,-2871,-2889,-2906,-2923,-2939,-2956,-2973,-2990,-3008,-3025,-3044,-3063,-3082,-3102,
+-3123,-3145,-3169,-3192,-3217,-3244,-3271,-3300,-3330,-3361,-3393,-3426,-3461,-3497,-3533,-3570,-3607,-3643,-3679,-3713,
+-3746,-3779,-3809,-3838,-3864,-3888,-3909,-3927,-3942,-3954,-3964,-3972,-3978,-3982,-3985,-3987,-3988,-3990,-3992,-3997,
+-4003,-4012,-4024,-4040,-4059,-4083,-4111,-4144,-4179,-4219,-4263,-4311,-4360,-4412,-4466,-4521,-4576,-4630,-4683,-4734,
+-4782,-4828,-4871,-4909,-4942,-4971,-4996,-5015,-5031,-5041,-5049,-5053,-5053,-5051,-5047,-5043,-5039,-5034,-5031,-5029,
+-5028,-5029,-5033,-5040,-5049,-5062,-5077,-5094,-5115,-5137,-5161,-5186,-5212,-5240,-5268,-5295,-5322,-5349,-5375,-5400,
+-5424,-5447,-5470,-5492,-5513,-5534,-5554,-5575,-5596,-5617,-5638,-5659,-5681,-5702,-5723,-5743,-5762,-5780,-5796,-5810,
+-5821,-5829,-5834,-5835,-5833,-5827,-5817,-5804,-5788,-5769,-5748,-5726,-5703,-5680,-5659,-5638,-5621,-5607,-5596,-5591,
+-5592,-5596,-5606,-5620,-5640,-5664,-5694,-5715,-5725,-5744,-5772,-5800,-5826,-5849,-5870,-5886,-5899,-5907,-5910,-5909,
+-5905,-5899,-5882,-5857,-5822,-5779,-5737,-5699,-5661,-5625,-5594,-5567,-5535,-5503,-5483,-5470,-5458,-5445,-5439,-5440,
+-5448,-5451,-5458,-5469,-5483,-5506,-5528,-5557,-5584,-5614,-5642,-5671,-5696,-5717,-5739,-5773,-5816,-5847,-5870,-5890,
+-5909,-5928,-5940,-5950,-5954,-5953,-5954,-5960,-5970,-5986,-6011,-6041,-6074,-6087,-6063,-6055,-6081,-6109,-6125,-6132,
+-6134,-6125,-6137,-6158,-6164,-6164,-6152,-6138,-6132,-6112,-6101,-6108,-6112,-6128,-6153,-6175,-6197,-6222,-6253,-6288,
+-6318,-6350,-6387,-6420,-6441,-6458,-6472,-6480,-6487,-6496,-6507,-6519,-6525,-6525,-6524,-6522,-6518,-6514,-6512,-6520,
+-6540,-6561,-6577,-6585,-6580,-6562,-6543,-6526,-6514,-6500,-6485,-6471,-6461,-6451,-6445,-6436,-6427,-6422,-6420,-6422,
+-6421,-6422,-6418,-6411,-6399,-6382,-6369,-6360,-6354,-6343,-6329,-6315,-6308,-6301,-6294,-6287,-6282,-6278,-6272,-6268,
+-6264,-6256,-6248,-6242,-6236,-6228,-6218,-6209,-6202,-6196,-6194,-6192,-6184,-6177,-6166,-6160,-6155,-6147,-6143,-6139,
+-6138,-6136,-6133,-6129,-6128,-6121,-6116,-6110,-6103,-6100,-6094,-6086,-6078,-6068,-6057,-6048,-6037,-6027,-6016,-6005,
+-6000,-5997,-5989,-5978,-5970,-5964,-5956,-5948,-5947,-5941,-5931,-5924,-5920,-5919,-5914,-5905,-5895,-5886,-5877,-5869,
+-5858,-5846,-5836,-5824,-5812,-5800,-5786,-5771,-5757,-5741,-5725,-5708,-5690,-5674,-5655,-5637,-5620,-5600,-5579,-5555,
+-5535,-5517,-5496,-5473,-5451,-5432,-5413,-5392,-5373,-5353,-5331,-5313,-5295,-5276,-5262,-5244,-5228,-5213,-5195,-5180,
+-5165,-5150,-5132,-5115,-5092,-5063,-5035,-5005,-4978,-4949,-4922,-4894,-4865,-4841,-4815,-4791,-4772,-4755,-4738,-4721,
+-4700,-4678,-4662,-4641,-4621,-4604,-4585,-4565,-4545,-4530,-4523,-4515,-4504,-4485,-4463,-4446,-4426,-4407,-4389,-4371,
+-4349,-4323,-4299,-4272,-4238,-4201,-4169,-4141,-4120,-4108,-4092,-4075,-4061,-4052,-4047,-4047,-4049,-4049,-4042,-4035,
+-4034,-4032,-4031,-4025,-4011,-3993,-3976,-3956,-3939,-3923,-3898,-3872,-3850,-3826,-3801,-3777,-3748,-3721,-3691,-3658,
+-3624,-3587,-3546,-3504,-3464,-3423,-3394,-3375,-3360,-3345,-3328,-3316,-3303,-3289,-3281,-3273,-3261,-3250,-3242,-3229,
+-3211,-3192,-3173,-3148,-3124,-3101,-3072,-3044,-3016,-2988,-2951,-2908,-2867,-2829,-2796,-2765,-2737,-2712,-2687,-2658,
+-2631,-2608,-2588,-2568,-2551,-2538,-2523,-2512,-2506,-2503,-2499,-2496,-2490,-2495,-2507,-2515,-2521,-2517,-2505,-2491,
+-2475,-2453,-2432,-2416,-2406,-2388,-2371,-2361,-2352,-2340,-2325,-2308,-2288,-2273,-2266,-2265,-2270,-2274,-2273,-2272,
+-2269,-2262,-2254,-2241,-2223,-2202,-2186,-2166,-2141,-2111,-2081,-2056,-2019,-1982,-1945,-1897,-1857,-1827,-1801,-1781,
+-1760,-1743,-1733,-1729,-1722,-1715,-1706,-1697,-1688,-1677,-1666,-1651,-1642,-1638,-1634,-1632,-1631,-1634,-1635,-1631,
+-1621,-1609,-1594,-1574,-1559,-1544,-1524,-1509,-1493,-1475,-1458,-1437,-1415,-1392,-1366,-1343,-1319,-1291,-1265,-1236,
+-1206,-1178,-1147,-1117,-1087,-1063,-1041,-1016,-995,-977,-960,-948,-936,-918,-900,-880,-856,-832,-810,-784,
+-756,-733,-710,-688,-663,-636,-609,-581,-553,-525,-497,-469,-441,-413,-388,-363,-338,-315,-293,-273,
+-255,-237,-221,-205,-190,-175,-159,-142,-124,-105,-84,-63,-36,-8,21,51,83,115,147,179,
+213,248,281,312,344,371,396,417,431,441,449,454,456,456,455,453,445,428,408,384,
+361,335,308,282,255,230,208,188,171,159,149,140,133,129,129,134,147,164,186,205,
+223,242,256,264,271,272,262,243,220,196,168,149,128,107,91,79,71,62,53,48,
+44,36,32,27,21,19,17,8,5,6,2,-2,-4,-7,-10,-14,-24,-31,-33,-42,
+-54,-61,-72,-79,-83,-90,-93,-92,-93,-101,-107,-106,-106,-107,-108,-114,-123,-126,-130,-135,
+-144,-152,-154,-159,-166,-170,-172,-175,-180,-186,-188,-190,-194,-200,-205,-207,-210,-211,-212,-216,
+-219,-221,-223,-223,-222,-220,-222,-222,-220,-220,-219,-216,-212,-209,-206,-206,-205,-203,-203,-205,
+-204,-199,-195,-190,-185,-178,-169,-161,-151,-142,-134,-126,-120,-112,-104,-95,-85,-75,-68,-62,
+-59,-60,-62,-67,-70,-65,-53,-38,-25,-20,-17,-9,4,20,36,50,60,67,75,84,
+91,98,104,109,115,119,122,125,129,135,141,150,163,181,206,237,276,319,366,418,
+468,520,574,629,686,744,808,885,968,1038,1082,1111,1139,1160,1171,1181,1185,1186,1187,1188,
+1187,1184,1177,1168,1157,1144,1128,1111,1094,1077,1064,1049,1034,1020,1007,995,985,976,967,961,
+957,954,956,955,954,954,955,959,963,967,974,982,989,996,1004,1012,1021,1032,1044,1058,
+1072,1088,1105,1125,1146,1168,1191,1215,1168,1195,1226,1259,1292,1325,1358,1390,1421,1450,1477,1500,
+1520,1536,1549,1560,1568,1573,1575,1575,1572,1567,1559,1551,1544,1536,1529,1523,1519,1521,1521,1522,
+1528,1534,1544,1556,1565,1578,1593,1610,1627,1638,1655,1669,1683,1692,1697,1721,1734,1733,1732,1732,
+1738,1739,1739,1737,1731,1724,1716,1706,1691,1675,1660,1646,1632,1618,1602,1586,1569,1552,1537,1521,
+1508,1495,1483,1473,1463,1455,1450,1446,1444,1444,1447,1451,1458,1467,1478,1491,1505,1522,1539,1557,
+1575,1593,1609,1625,1640,1653,1664,1673,1679,1684,1685,1682,1677,1670,1662,1653,1643,1633,1623,1612,
+1602,1595,1590,1589,1591,1598,1608,1621,1640,1663,1690,1722,1756,1795,1837,1882,1929,1977,2024,2072,
+2121,2167,2213,2256,2296,2334,2369,2401,2429,2453,2472,2487,2494,2501,2508,2510,2512,2512,2511,2509,
+2507,2503,2500,2496,2491,2487,2483,2480,2476,2473,2470,2468,2465,2462,2458,2455,2452,2448,2443,2439,
+2433,2428,2423,2417,2412,2408,2405,2402,2400,2400,2402,2405,2409,2416,2424,2433,2444,2455,2468,2482,
+2495,2508,2521,2533,2544,2554,2562,2568,2571,2573,2572,2569,2564,2557,2549,2539,2528,2515,2503,2490,
+2477,2464,2452,2441,2431,2421,2413,2406,2400,2396,2392,2389,2386,2384,2382,2380,2378,2375,2372,2368,
+2363,2356,2349,2340,2330,2318,2306,2294,2279,2265,2251,2235,2220,2204,2188,2172,2156,2140,2125,2110,
+2093,2076,2061,2043,2023,2002,1980,1955,1929,1901,1870,1837,1802,1765,1725,1684,1642,1600,1556,1511,
+1466,1421,1378,1338,1299,1265,1234,1206,1183,1165,1151,1142,1138,1137,1141,1148,1159,1174,1191,1212,
+1234,1258,1283,1309,1335,1362,1387,1413,1437,1459,1481,1499,1518,1534,1547,1559,1568,1577,1583,1589,
+1593,1596,1598,1598,1598,1595,1591,1586,1579,1573,1565,1555,1545,1534,1522,1509,1495,1480,1464,1447,
+1430,1411,1392,1372,1351,1329,1305,1281,1255,1229,1201,1172,1143,1112,1079,1046,1013,979,944,909,
+875,841,808,776,743,712,682,654,627,602,577,555,533,513,493,473,455,436,417,398,
+379,359,338,318,298,277,255,234,211,188,165,141,117,92,65,38,9,-19,-50,-83,
+-117,-153,-193,-234,-278,-325,-374,-426,-482,-540,-601,-665,-731,-799,-869,-942,-1015,-1090,-1165,-1241,
+-1318,-1394,-1470,-1546,-1620,-1695,-1769,-1842,-1914,-1985,-2054,-2122,-2189,-2254,-2318,-2381,-2440,-2497,-2550,-2600,
+-2647,-2689,-2725,-2757,-2785,-2806,-2822,-2833,-2837,-2837,-2832,-2822,-2808,-2791,-2770,-2748,-2724,-2700,-2675,-2651,
+-2629,-2609,-2592,-2577,-2565,-2556,-2552,-2550,-2551,-2556,-2564,-2575,-2589,-2604,-2621,-2640,-2659,-2679,-2699,-2720,
+-2741,-2762,-2783,-2804,-2825,-2845,-2866,-2886,-2907,-2927,-2948,-2970,-2992,-3015,-3038,-3061,-3085,-3109,-3134,-3159,
+-3185,-3211,-3238,-3265,-3292,-3320,-3348,-3377,-3405,-3433,-3463,-3493,-3524,-3554,-3585,-3615,-3647,-3677,-3707,-3737,
+-3765,-3793,-3820,-3845,-3868,-3890,-3909,-3926,-3941,-3954,-3963,-3971,-3977,-3982,-3985,-3987,-3988,-3989,-3990,-3992,
+-3996,-4001,-4010,-4021,-4037,-4056,-4080,-4107,-4139,-4176,-4216,-4261,-4309,-4359,-4412,-4466,-4523,-4580,-4638,-4694,
+-4748,-4799,-4848,-4893,-4934,-4971,-5002,-5029,-5050,-5066,-5078,-5086,-5090,-5090,-5087,-5082,-5075,-5068,-5062,-5055,
+-5050,-5048,-5047,-5050,-5056,-5065,-5077,-5093,-5112,-5134,-5159,-5185,-5214,-5244,-5274,-5305,-5336,-5367,-5397,-5426,
+-5453,-5479,-5504,-5527,-5548,-5570,-5589,-5609,-5627,-5646,-5664,-5682,-5700,-5718,-5737,-5755,-5773,-5790,-5807,-5822,
+-5836,-5848,-5858,-5864,-5869,-5870,-5868,-5862,-5853,-5842,-5827,-5810,-5792,-5772,-5752,-5731,-5711,-5693,-5677,-5664,
+-5655,-5650,-5648,-5650,-5654,-5663,-5673,-5684,-5700,-5717,-5733,-5751,-5771,-5791,-5808,-5822,-5832,-5837,-5840,-5839,
+-5837,-5837,-5832,-5811,-5779,-5744,-5708,-5673,-5641,-5601,-5565,-5531,-5500,-5475,-5450,-5430,-5412,-5406,-5402,-5400,
+-5400,-5421,-5449,-5454,-5457,-5464,-5482,-5506,-5532,-5553,-5577,-5604,-5634,-5666,-5691,-5717,-5746,-5788,-5827,-5853,
+-5873,-5890,-5904,-5914,-5921,-5924,-5929,-5934,-5943,-5960,-5980,-6006,-6039,-6069,-6081,-6070,-6057,-6065,-6087,-6109,
+-6130,-6141,-6140,-6151,-6167,-6176,-6183,-6188,-6188,-6186,-6171,-6145,-6135,-6146,-6160,-6166,-6173,-6184,-6199,-6225,
+-6255,-6279,-6301,-6329,-6361,-6395,-6430,-6463,-6491,-6512,-6535,-6560,-6575,-6579,-6583,-6583,-6578,-6574,-6572,-6573,
+-6576,-6577,-6572,-6561,-6548,-6534,-6521,-6514,-6511,-6507,-6502,-6496,-6489,-6486,-6481,-6475,-6471,-6467,-6463,-6462,
+-6460,-6456,-6450,-6443,-6435,-6426,-6415,-6401,-6391,-6382,-6371,-6360,-6349,-6344,-6337,-6328,-6321,-6314,-6304,-6302,
+-6297,-6290,-6287,-6278,-6271,-6265,-6256,-6247,-6237,-6230,-6224,-6221,-6222,-6215,-6206,-6196,-6188,-6183,-6177,-6172,
+-6170,-6167,-6162,-6160,-6154,-6147,-6143,-6139,-6134,-6127,-6120,-6115,-6108,-6102,-6092,-6083,-6075,-6064,-6053,-6043,
+-6035,-6030,-6027,-6022,-6013,-6004,-5997,-5992,-5986,-5978,-5973,-5968,-5961,-5955,-5955,-5952,-5940,-5932,-5925,-5914,
+-5901,-5888,-5878,-5865,-5854,-5839,-5825,-5813,-5796,-5780,-5762,-5747,-5737,-5720,-5701,-5684,-5663,-5641,-5622,-5602,
+-5582,-5561,-5543,-5524,-5500,-5479,-5461,-5443,-5424,-5402,-5377,-5356,-5336,-5317,-5302,-5286,-5269,-5253,-5236,-5218,
+-5203,-5188,-5176,-5164,-5146,-5115,-5087,-5064,-5034,-5002,-4968,-4938,-4908,-4878,-4847,-4821,-4800,-4777,-4760,-4742,
+-4723,-4709,-4694,-4676,-4653,-4633,-4612,-4585,-4566,-4552,-4533,-4523,-4525,-4525,-4516,-4502,-4490,-4472,-4456,-4442,
+-4422,-4398,-4369,-4341,-4312,-4281,-4250,-4217,-4189,-4163,-4140,-4123,-4110,-4097,-4079,-4066,-4061,-4061,-4057,-4047,
+-4029,-4002,-3977,-3951,-3925,-3899,-3872,-3848,-3828,-3807,-3780,-3752,-3722,-3689,-3656,-3621,-3586,-3551,-3520,-3493,
+-3465,-3436,-3408,-3384,-3360,-3336,-3313,-3296,-3279,-3261,-3243,-3230,-3223,-3218,-3212,-3207,-3201,-3192,-3183,-3174,
+-3162,-3148,-3129,-3109,-3088,-3060,-3028,-3000,-2975,-2952,-2931,-2907,-2881,-2858,-2836,-2819,-2800,-2781,-2760,-2739,
+-2719,-2698,-2677,-2658,-2641,-2625,-2609,-2594,-2584,-2577,-2571,-2565,-2566,-2563,-2558,-2550,-2531,-2510,-2490,-2475,
+-2455,-2435,-2416,-2394,-2375,-2358,-2338,-2316,-2304,-2293,-2279,-2261,-2244,-2231,-2222,-2216,-2213,-2209,-2207,-2205,
+-2200,-2192,-2184,-2176,-2166,-2161,-2158,-2147,-2136,-2125,-2106,-2084,-2060,-2029,-1995,-1961,-1928,-1899,-1874,-1853,
+-1834,-1819,-1805,-1796,-1792,-1791,-1793,-1791,-1786,-1779,-1770,-1755,-1743,-1734,-1725,-1718,-1705,-1696,-1692,-1684,
+-1674,-1660,-1642,-1621,-1599,-1576,-1557,-1537,-1516,-1498,-1480,-1460,-1441,-1421,-1401,-1384,-1362,-1340,-1318,-1294,
+-1265,-1235,-1206,-1175,-1149,-1124,-1104,-1084,-1061,-1038,-1014,-993,-971,-954,-938,-921,-906,-884,-860,-836,
+-809,-782,-756,-732,-708,-683,-657,-631,-605,-578,-550,-522,-495,-467,-441,-416,-392,-368,-347,-327,
+-310,-294,-279,-266,-253,-242,-230,-218,-205,-191,-176,-159,-140,-118,-95,-68,-41,-12,19,52,
+84,118,151,184,216,247,277,303,325,342,354,366,378,386,388,385,379,367,353,337,
+315,292,265,241,215,188,162,138,116,97,86,78,68,55,45,42,50,65,82,102,
+124,147,165,185,206,223,232,236,241,235,227,211,188,167,149,139,128,112,100,96,
+91,82,72,65,57,48,41,39,36,27,22,24,25,22,14,5,-1,-7,-13,-19,
+-29,-42,-55,-69,-82,-92,-98,-103,-111,-115,-124,-133,-137,-145,-151,-159,-169,-180,-189,-200,
+-209,-217,-219,-220,-224,-224,-227,-228,-228,-230,-230,-231,-231,-230,-233,-240,-245,-249,-252,-257,
+-263,-267,-271,-275,-277,-277,-278,-278,-274,-272,-268,-265,-262,-259,-258,-258,-258,-259,-260,-260,
+-259,-258,-254,-250,-245,-239,-233,-225,-215,-206,-197,-190,-180,-171,-161,-151,-140,-128,-119,-114,
+-113,-116,-120,-126,-132,-136,-137,-132,-121,-102,-85,-75,-65,-54,-39,-22,-9,1,12,22,
+32,40,47,54,61,67,72,76,81,87,96,110,129,156,189,226,269,318,369,424,
+484,545,605,669,736,806,879,950,1005,1043,1070,1092,1109,1122,1131,1134,1133,1130,1125,1118,
+1108,1094,1077,1060,1040,1019,998,975,954,933,916,902,889,879,869,862,857,854,852,851,
+853,856,860,865,871,876,881,885,891,898,906,916,926,934,939,946,952,956,963,973,
+986,1000,1016,1038,1064,1087,1112,1140,1168,1167,1197,1234,1274,1315,1357,1399,1441,1483,1524,1565,
+1599,1627,1652,1679,1701,1719,1732,1736,1739,1743,1740,1736,1736,1729,1729,1727,1719,1725,1728,1725,
+1733,1741,1744,1752,1756,1758,1770,1790,1804,1818,1833,1847,1867,1883,1898,1908,1907,1907,1908,1916,
+1930,1938,1936,1935,1932,1926,1918,1906,1892,1877,1861,1844,1824,1805,1784,1763,1743,1723,1704,1684,
+1667,1649,1635,1621,1606,1595,1586,1580,1576,1574,1576,1579,1585,1594,1608,1623,1640,1658,1677,1698,
+1718,1741,1764,1785,1803,1821,1835,1845,1856,1861,1859,1858,1855,1848,1838,1824,1809,1793,1779,1764,
+1743,1722,1706,1694,1684,1677,1676,1679,1686,1699,1715,1736,1762,1791,1825,1863,1903,1947,1992,2038,
+2085,2130,2175,2219,2261,2301,2338,2374,2405,2432,2454,2472,2487,2497,2504,2512,2516,2520,2521,2521,
+2520,2518,2515,2512,2508,2504,2501,2498,2495,2492,2489,2486,2483,2480,2477,2473,2469,2465,2461,2455,
+2449,2443,2436,2428,2421,2415,2409,2404,2399,2396,2394,2392,2393,2395,2398,2403,2409,2416,2424,2433,
+2441,2450,2460,2468,2476,2482,2487,2490,2492,2491,2489,2485,2479,2472,2462,2451,2439,2427,2413,2400,
+2387,2375,2363,2351,2341,2333,2326,2320,2315,2312,2310,2309,2310,2311,2311,2314,2316,2316,2318,2317,
+2315,2312,2308,2303,2295,2287,2275,2264,2249,2233,2218,2200,2181,2160,2139,2117,2096,2073,2051,2028,
+2004,1982,1959,1935,1911,1886,1860,1834,1807,1779,1750,1720,1687,1656,1623,1587,1550,1515,1479,1441,
+1404,1365,1329,1294,1261,1230,1202,1177,1154,1136,1121,1110,1103,1100,1099,1101,1107,1116,1129,1146,
+1164,1186,1208,1232,1256,1280,1306,1330,1355,1379,1403,1423,1441,1459,1475,1489,1502,1511,1519,1527,
+1532,1536,1539,1538,1537,1534,1528,1522,1515,1506,1496,1485,1473,1459,1446,1429,1413,1397,1380,1362,
+1343,1324,1305,1285,1264,1244,1222,1200,1177,1153,1128,1103,1076,1049,1021,992,963,933,903,872,
+843,812,783,755,727,700,673,648,624,601,578,557,538,518,500,483,465,448,431,413,
+396,379,362,343,324,304,284,264,243,220,197,173,148,123,97,70,41,11,-20,-52,
+-86,-122,-160,-200,-242,-287,-335,-386,-438,-495,-553,-614,-678,-744,-813,-884,-956,-1030,-1105,-1181,
+-1258,-1336,-1413,-1491,-1568,-1645,-1721,-1797,-1872,-1945,-2019,-2090,-2159,-2227,-2293,-2358,-2420,-2479,-2535,-2588,
+-2637,-2682,-2723,-2758,-2789,-2815,-2836,-2852,-2862,-2868,-2870,-2866,-2858,-2847,-2833,-2816,-2797,-2777,-2756,-2736,
+-2715,-2696,-2678,-2662,-2648,-2636,-2627,-2621,-2617,-2616,-2617,-2621,-2627,-2636,-2646,-2657,-2671,-2686,-2701,-2718,
+-2735,-2753,-2772,-2791,-2811,-2832,-2852,-2875,-2898,-2922,-2947,-2974,-3001,-3030,-3059,-3089,-3119,-3151,-3182,-3214,
+-3246,-3277,-3309,-3341,-3372,-3403,-3434,-3463,-3492,-3521,-3549,-3577,-3604,-3631,-3658,-3684,-3709,-3734,-3759,-3783,
+-3806,-3829,-3851,-3872,-3892,-3910,-3927,-3942,-3955,-3967,-3976,-3984,-3990,-3994,-3998,-4000,-4002,-4003,-4004,-4006,
+-4008,-4011,-4017,-4025,-4036,-4051,-4069,-4092,-4119,-4150,-4185,-4224,-4267,-4313,-4362,-4413,-4467,-4522,-4578,-4634,
+-4690,-4743,-4795,-4843,-4887,-4927,-4964,-4996,-5022,-5044,-5061,-5073,-5081,-5084,-5084,-5081,-5075,-5069,-5062,-5055,
+-5050,-5045,-5043,-5045,-5049,-5057,-5069,-5084,-5103,-5126,-5151,-5180,-5211,-5243,-5278,-5313,-5347,-5382,-5417,-5450,
+-5481,-5510,-5537,-5563,-5586,-5608,-5628,-5646,-5663,-5679,-5693,-5707,-5721,-5734,-5749,-5763,-5778,-5792,-5807,-5822,
+-5836,-5850,-5862,-5874,-5883,-5890,-5896,-5898,-5897,-5893,-5887,-5878,-5867,-5853,-5838,-5821,-5803,-5786,-5768,-5752,
+-5736,-5723,-5712,-5703,-5697,-5693,-5690,-5690,-5693,-5699,-5706,-5713,-5720,-5730,-5738,-5742,-5745,-5747,-5747,-5745,
+-5740,-5738,-5731,-5712,-5693,-5673,-5647,-5622,-5595,-5568,-5537,-5498,-5471,-5447,-5419,-5402,-5386,-5364,-5343,-5327,
+-5329,-5342,-5353,-5370,-5405,-5437,-5449,-5464,-5475,-5486,-5515,-5547,-5579,-5612,-5644,-5672,-5697,-5721,-5745,-5761,
+-5765,-5768,-5777,-5791,-5807,-5822,-5839,-5856,-5873,-5896,-5927,-5963,-6008,-6053,-6083,-6094,-6092,-6103,-6128,-6153,
+-6173,-6183,-6188,-6186,-6184,-6184,-6185,-6190,-6203,-6216,-6217,-6203,-6175,-6152,-6144,-6148,-6156,-6164,-6177,-6192,
+-6210,-6231,-6249,-6270,-6299,-6338,-6382,-6426,-6467,-6500,-6528,-6549,-6562,-6561,-6555,-6551,-6547,-6541,-6535,-6533,
+-6535,-6539,-6536,-6532,-6527,-6519,-6513,-6513,-6516,-6516,-6516,-6514,-6513,-6510,-6508,-6507,-6504,-6503,-6501,-6500,
+-6501,-6498,-6493,-6488,-6481,-6471,-6460,-6449,-6437,-6425,-6409,-6396,-6390,-6382,-6376,-6372,-6363,-6355,-6350,-6345,
+-6335,-6328,-6323,-6312,-6301,-6293,-6285,-6279,-6271,-6262,-6258,-6254,-6253,-6253,-6247,-6238,-6229,-6218,-6211,-6207,
+-6201,-6197,-6194,-6189,-6185,-6180,-6176,-6172,-6166,-6159,-6154,-6148,-6140,-6135,-6128,-6120,-6113,-6103,-6094,-6084,
+-6073,-6066,-6061,-6060,-6059,-6054,-6046,-6036,-6031,-6026,-6017,-6011,-6004,-5998,-5994,-5989,-5988,-5982,-5973,-5962,
+-5945,-5932,-5921,-5906,-5891,-5875,-5859,-5843,-5827,-5811,-5795,-5781,-5766,-5750,-5733,-5718,-5703,-5684,-5666,-5647,
+-5624,-5607,-5590,-5569,-5549,-5528,-5510,-5490,-5472,-5452,-5429,-5409,-5387,-5368,-5350,-5327,-5306,-5288,-5266,-5249,
+-5232,-5211,-5198,-5185,-5166,-5150,-5133,-5111,-5082,-5050,-5017,-4981,-4946,-4909,-4875,-4847,-4824,-4799,-4775,-4754,
+-4736,-4719,-4700,-4683,-4668,-4651,-4634,-4618,-4601,-4585,-4572,-4559,-4546,-4537,-4533,-4526,-4520,-4508,-4488,-4472,
+-4451,-4421,-4392,-4362,-4336,-4315,-4292,-4266,-4243,-4226,-4205,-4177,-4151,-4130,-4111,-4092,-4074,-4060,-4045,-4028,
+-4012,-3992,-3961,-3922,-3882,-3835,-3790,-3751,-3710,-3673,-3641,-3609,-3575,-3535,-3493,-3459,-3438,-3420,-3404,-3388,
+-3372,-3358,-3344,-3330,-3317,-3304,-3295,-3284,-3270,-3251,-3237,-3227,-3218,-3207,-3199,-3193,-3183,-3175,-3161,-3146,
+-3133,-3119,-3101,-3080,-3055,-3029,-3003,-2980,-2959,-2936,-2918,-2899,-2879,-2858,-2838,-2818,-2803,-2791,-2780,-2766,
+-2751,-2739,-2725,-2711,-2696,-2684,-2671,-2661,-2655,-2648,-2642,-2633,-2622,-2607,-2591,-2576,-2548,-2517,-2490,-2465,
+-2443,-2423,-2405,-2385,-2366,-2347,-2329,-2310,-2292,-2276,-2260,-2245,-2230,-2218,-2206,-2196,-2186,-2177,-2170,-2163,
+-2157,-2151,-2146,-2139,-2132,-2125,-2119,-2116,-2113,-2107,-2103,-2095,-2081,-2068,-2051,-2027,-1998,-1970,-1945,-1918,
+-1900,-1893,-1887,-1875,-1864,-1859,-1855,-1852,-1847,-1841,-1832,-1820,-1805,-1790,-1779,-1768,-1755,-1742,-1732,-1723,
+-1710,-1691,-1676,-1660,-1637,-1611,-1587,-1562,-1536,-1509,-1486,-1468,-1452,-1435,-1420,-1403,-1388,-1370,-1352,-1334,
+-1312,-1290,-1263,-1232,-1202,-1173,-1146,-1120,-1094,-1070,-1051,-1037,-1019,-998,-980,-957,-938,-922,-902,-878,
+-856,-836,-813,-791,-766,-741,-714,-685,-659,-632,-606,-579,-553,-527,-501,-476,-452,-430,-409,-390,
+-373,-357,-344,-331,-320,-310,-300,-291,-282,-272,-261,-249,-234,-218,-199,-177,-153,-127,-99,-69,
+-38,-4,28,61,96,129,160,190,217,241,261,276,288,299,313,320,318,315,306,292,
+277,255,230,203,174,146,118,90,64,40,17,-1,-18,-30,-41,-54,-55,-42,-24,-4,
+21,40,58,82,103,127,147,165,183,193,202,212,213,208,197,186,179,170,162,155,
+149,143,136,127,120,114,110,105,99,94,93,92,85,87,79,62,59,50,32,14,
+1,-12,-28,-46,-62,-73,-88,-102,-112,-125,-135,-141,-152,-166,-177,-190,-203,-213,-227,-242,
+-253,-264,-272,-278,-285,-287,-288,-290,-290,-288,-286,-285,-284,-285,-285,-285,-288,-292,-297,-301,
+-308,-314,-318,-323,-326,-328,-332,-334,-335,-334,-331,-328,-327,-326,-324,-324,-325,-326,-329,-332,
+-336,-340,-342,-339,-334,-327,-321,-317,-313,-311,-307,-299,-287,-274,-258,-240,-220,-202,-187,-177,
+-171,-168,-164,-161,-157,-152,-148,-145,-143,-136,-123,-106,-94,-90,-84,-78,-71,-61,-52,-41,
+-30,-19,-9,0,7,13,20,27,36,47,62,84,111,145,187,234,285,338,393,450,
+511,577,646,719,790,850,897,937,974,1006,1031,1051,1064,1072,1076,1075,1067,1055,1041,1024,
+1002,979,954,928,902,876,850,825,803,782,766,753,743,738,735,736,740,746,755,767,
+779,793,809,824,840,854,868,880,890,900,913,926,938,947,952,956,960,963,967,971,
+980,993,1006,1022,1040,1061,1084,1108,1136,1167,1214,1246,1285,1328,1373,1416,1460,1513,1561,1605,
+1646,1682,1727,1768,1802,1828,1847,1867,1888,1907,1913,1915,1917,1921,1926,1925,1923,1923,1925,1927,
+1932,1937,1937,1942,1948,1952,1957,1963,1973,1986,1998,2011,2026,2041,2055,2064,2072,2078,2082,2086,
+2093,2100,2100,2098,2095,2095,2091,2080,2069,2060,2048,2033,2015,1996,1974,1948,1924,1901,1879,1859,
+1839,1821,1803,1787,1774,1762,1751,1744,1739,1737,1738,1741,1749,1759,1771,1786,1805,1823,1842,1867,
+1889,1908,1923,1936,1962,1981,1990,2010,2019,2020,2021,2023,2024,2023,2022,2010,1989,1973,1952,1926,
+1898,1873,1852,1830,1810,1793,1779,1771,1765,1764,1768,1778,1792,1811,1834,1861,1892,1926,1963,2002,
+2043,2086,2129,2172,2213,2253,2291,2327,2360,2391,2417,2440,2460,2475,2486,2497,2504,2509,2512,2514,
+2515,2514,2512,2510,2508,2505,2501,2498,2494,2492,2489,2486,2483,2480,2477,2473,2469,2465,2460,2455,
+2449,2442,2436,2429,2422,2416,2408,2401,2394,2389,2385,2380,2377,2374,2374,2374,2375,2378,2381,2384,
+2387,2391,2396,2401,2404,2407,2409,2409,2407,2405,2401,2396,2388,2380,2370,2359,2346,2334,2321,2308,
+2295,2282,2271,2260,2251,2242,2236,2231,2227,2225,2225,2226,2228,2232,2236,2240,2245,2250,2254,2259,
+2261,2262,2263,2261,2257,2252,2244,2235,2224,2210,2193,2174,2154,2132,2107,2081,2055,2028,2000,1971,
+1941,1913,1883,1852,1822,1792,1762,1731,1701,1671,1641,1611,1580,1550,1519,1489,1458,1427,1396,1365,
+1334,1303,1274,1244,1217,1192,1168,1148,1129,1113,1100,1090,1082,1077,1075,1075,1079,1086,1097,1109,
+1123,1141,1159,1180,1201,1223,1246,1269,1293,1316,1337,1358,1376,1393,1410,1425,1439,1451,1461,1468,
+1474,1479,1482,1482,1481,1478,1472,1464,1456,1445,1433,1420,1407,1392,1375,1357,1339,1321,1301,1281,
+1261,1242,1221,1201,1180,1159,1138,1117,1095,1073,1051,1029,1005,981,957,932,907,882,856,830,
+805,780,755,730,706,683,661,639,618,598,579,561,544,528,512,496,481,465,449,433,
+417,401,383,365,346,327,306,285,261,238,213,187,160,132,104,74,44,13,-18,-52,
+-86,-122,-160,-199,-240,-282,-327,-374,-423,-474,-528,-583,-642,-704,-766,-832,-900,-970,-1041,-1114,
+-1188,-1263,-1339,-1416,-1493,-1570,-1646,-1723,-1800,-1875,-1950,-2023,-2094,-2164,-2233,-2300,-2364,-2426,-2486,-2541,
+-2594,-2642,-2686,-2727,-2762,-2793,-2820,-2842,-2859,-2872,-2880,-2885,-2885,-2880,-2874,-2864,-2853,-2840,-2825,-2810,
+-2794,-2778,-2763,-2749,-2735,-2723,-2712,-2703,-2695,-2690,-2686,-2685,-2685,-2687,-2691,-2696,-2703,-2712,-2721,-2732,
+-2745,-2758,-2773,-2789,-2807,-2826,-2848,-2871,-2896,-2922,-2950,-2980,-3012,-3045,-3079,-3115,-3152,-3189,-3227,-3265,
+-3304,-3342,-3380,-3417,-3454,-3489,-3523,-3555,-3587,-3617,-3645,-3672,-3698,-3722,-3746,-3768,-3789,-3809,-3829,-3848,
+-3866,-3884,-3901,-3918,-3933,-3948,-3962,-3975,-3986,-3997,-4005,-4013,-4019,-4024,-4028,-4030,-4033,-4035,-4036,-4039,
+-4041,-4044,-4047,-4053,-4061,-4072,-4086,-4104,-4125,-4150,-4179,-4211,-4247,-4286,-4329,-4374,-4420,-4469,-4521,-4574,
+-4626,-4675,-4725,-4773,-4818,-4860,-4898,-4932,-4962,-4987,-5008,-5024,-5036,-5043,-5046,-5046,-5045,-5042,-5037,-5033,
+-5029,-5026,-5025,-5027,-5032,-5040,-5053,-5069,-5089,-5112,-5140,-5170,-5203,-5239,-5276,-5314,-5353,-5392,-5430,-5467,
+-5502,-5535,-5565,-5594,-5619,-5641,-5662,-5679,-5695,-5708,-5720,-5731,-5742,-5752,-5761,-5771,-5780,-5791,-5802,-5814,
+-5827,-5839,-5852,-5865,-5877,-5889,-5899,-5907,-5914,-5919,-5922,-5921,-5919,-5913,-5905,-5895,-5882,-5868,-5853,-5837,
+-5820,-5803,-5786,-5771,-5756,-5742,-5730,-5719,-5710,-5702,-5692,-5684,-5678,-5675,-5669,-5665,-5660,-5655,-5649,-5643,
+-5636,-5626,-5618,-5610,-5599,-5584,-5567,-5549,-5530,-5509,-5487,-5465,-5442,-5425,-5399,-5372,-5351,-5331,-5318,-5311,
+-5308,-5304,-5307,-5318,-5336,-5369,-5407,-5435,-5442,-5450,-5477,-5509,-5543,-5577,-5608,-5636,-5662,-5685,-5700,-5707,
+-5709,-5704,-5699,-5694,-5693,-5698,-5709,-5728,-5751,-5783,-5826,-5879,-5937,-5992,-6035,-6065,-6089,-6120,-6155,-6178,
+-6191,-6197,-6195,-6192,-6194,-6195,-6195,-6197,-6199,-6201,-6202,-6199,-6186,-6166,-6151,-6141,-6138,-6141,-6148,-6160,
+-6180,-6205,-6228,-6250,-6279,-6310,-6339,-6375,-6409,-6437,-6469,-6495,-6515,-6524,-6519,-6513,-6507,-6499,-6502,-6509,
+-6511,-6509,-6509,-6510,-6514,-6515,-6517,-6520,-6524,-6529,-6529,-6529,-6530,-6531,-6534,-6537,-6536,-6531,-6534,-6538,
+-6535,-6534,-6530,-6525,-6520,-6511,-6501,-6488,-6477,-6468,-6456,-6445,-6434,-6426,-6419,-6410,-6405,-6405,-6402,-6391,
+-6382,-6376,-6364,-6351,-6338,-6327,-6317,-6312,-6308,-6300,-6294,-6291,-6289,-6286,-6282,-6280,-6275,-6266,-6257,-6249,
+-6241,-6235,-6226,-6223,-6218,-6211,-6208,-6205,-6202,-6196,-6188,-6183,-6178,-6173,-6169,-6162,-6155,-6147,-6135,-6127,
+-6121,-6111,-6102,-6100,-6098,-6098,-6095,-6085,-6078,-6072,-6065,-6058,-6050,-6041,-6033,-6027,-6022,-6019,-6014,-6004,
+-5989,-5973,-5957,-5945,-5931,-5910,-5896,-5881,-5864,-5848,-5830,-5814,-5798,-5783,-5765,-5747,-5728,-5711,-5696,-5676,
+-5659,-5642,-5622,-5600,-5580,-5562,-5542,-5521,-5501,-5484,-5467,-5447,-5428,-5406,-5384,-5364,-5347,-5328,-5305,-5283,
+-5261,-5242,-5226,-5209,-5192,-5172,-5154,-5134,-5112,-5084,-5057,-5028,-4991,-4952,-4914,-4880,-4846,-4813,-4788,-4771,
+-4749,-4720,-4698,-4677,-4659,-4643,-4625,-4611,-4596,-4581,-4567,-4556,-4547,-4541,-4536,-4532,-4523,-4510,-4496,-4481,
+-4466,-4447,-4415,-4375,-4333,-4293,-4267,-4246,-4227,-4217,-4206,-4197,-4184,-4160,-4132,-4100,-4075,-4051,-4021,-3986,
+-3948,-3913,-3882,-3856,-3825,-3788,-3745,-3693,-3639,-3586,-3537,-3492,-3449,-3408,-3376,-3355,-3342,-3331,-3322,-3311,
+-3305,-3302,-3295,-3287,-3280,-3276,-3271,-3266,-3267,-3267,-3265,-3262,-3258,-3251,-3245,-3240,-3233,-3218,-3194,-3179,
+-3167,-3150,-3136,-3122,-3104,-3080,-3061,-3050,-3036,-3019,-3001,-2989,-2973,-2940,-2904,-2876,-2850,-2820,-2791,-2771,
+-2755,-2740,-2736,-2728,-2716,-2702,-2690,-2682,-2666,-2651,-2641,-2633,-2624,-2610,-2590,-2570,-2550,-2528,-2507,-2486,
+-2464,-2443,-2423,-2402,-2381,-2361,-2340,-2320,-2301,-2283,-2265,-2247,-2233,-2218,-2204,-2191,-2178,-2168,-2158,-2150,
+-2142,-2134,-2127,-2123,-2118,-2113,-2109,-2103,-2098,-2096,-2100,-2103,-2099,-2088,-2078,-2072,-2061,-2043,-2026,-2002,
+-1977,-1965,-1958,-1947,-1930,-1917,-1906,-1893,-1879,-1866,-1854,-1842,-1830,-1816,-1802,-1789,-1777,-1765,-1752,-1740,
+-1731,-1722,-1709,-1692,-1673,-1655,-1630,-1600,-1575,-1555,-1528,-1500,-1480,-1466,-1456,-1438,-1417,-1402,-1389,-1374,
+-1356,-1337,-1318,-1301,-1277,-1243,-1211,-1180,-1148,-1114,-1078,-1041,-1010,-989,-974,-959,-946,-934,-922,-907,
+-890,-874,-859,-842,-823,-804,-781,-752,-725,-701,-674,-647,-622,-597,-574,-551,-527,-505,-484,-463,
+-445,-429,-415,-403,-392,-383,-374,-366,-358,-350,-341,-332,-320,-306,-289,-271,-251,-227,-202,-174,
+-144,-111,-78,-43,-7,22,55,88,117,146,171,193,210,221,231,243,251,253,250,241,
+225,205,182,156,131,106,78,49,19,-7,-32,-53,-71,-89,-108,-129,-146,-146,-130,-110,
+-89,-66,-45,-20,3,21,45,68,86,100,113,125,139,151,160,169,180,188,197,203,
+203,207,208,209,207,199,195,195,197,192,188,186,178,173,168,161,153,143,134,119,
+99,79,54,25,0,-20,-36,-51,-69,-88,-103,-121,-140,-153,-166,-184,-200,-214,-231,-248,
+-262,-277,-290,-304,-320,-331,-337,-345,-352,-355,-355,-361,-364,-363,-362,-359,-362,-368,-371,-374,
+-371,-372,-377,-380,-383,-386,-394,-400,-403,-406,-406,-405,-404,-404,-401,-396,-397,-400,-400,-401,
+-406,-416,-426,-427,-420,-413,-405,-394,-388,-387,-381,-375,-367,-354,-338,-319,-304,-286,-261,-242,
+-224,-211,-200,-188,-177,-169,-165,-160,-156,-153,-149,-144,-141,-137,-130,-125,-117,-109,-100,-90,
+-83,-75,-66,-56,-45,-34,-21,-5,12,30,57,91,130,174,225,277,329,384,439,493,
+550,608,667,732,793,842,885,921,952,977,996,1008,1014,1014,1009,997,981,961,936,909,
+879,848,816,784,753,724,697,671,648,631,617,608,605,606,612,623,639,658,680,704,
+731,760,789,819,848,877,904,928,951,970,987,1003,1018,1030,1037,1040,1043,1044,1046,1051,
+1056,1060,1066,1074,1083,1097,1113,1133,1157,1183,1214,1293,1325,1352,1381,1420,1465,1520,1576,1630,
+1685,1733,1777,1821,1866,1906,1944,1974,1998,2022,2040,2054,2066,2072,2075,2078,2080,2080,2082,2084,
+2086,2084,2082,2082,2082,2083,2086,2089,2094,2100,2107,2115,2125,2135,2146,2156,2165,2172,2179,2185,
+2190,2195,2197,2197,2197,2197,2197,2195,2187,2179,2169,2162,2153,2137,2117,2095,2073,2052,2032,2012,
+1993,1975,1957,1940,1924,1911,1901,1892,1886,1883,1884,1886,1892,1900,1913,1931,1952,1973,1993,2015,
+2038,2063,2087,2109,2128,2149,2166,2179,2190,2196,2196,2193,2189,2182,2173,2161,2147,2133,2112,2089,
+2060,2027,1994,1965,1943,1920,1896,1874,1857,1844,1837,1833,1835,1843,1856,1873,1892,1915,1941,1972,
+2007,2044,2081,2120,2159,2198,2235,2271,2306,2338,2368,2393,2416,2434,2448,2461,2471,2478,2485,2489,
+2491,2492,2492,2492,2490,2487,2483,2480,2476,2472,2469,2465,2462,2458,2455,2451,2447,2444,2440,2434,
+2429,2423,2417,2411,2404,2398,2390,2382,2376,2369,2363,2356,2350,2345,2341,2338,2336,2333,2331,2330,
+2329,2329,2329,2328,2327,2326,2325,2322,2319,2314,2309,2302,2295,2285,2275,2265,2253,2241,2229,2217,
+2205,2194,2182,2172,2163,2156,2149,2145,2142,2140,2141,2142,2145,2150,2155,2161,2168,2175,2182,2189,
+2194,2199,2202,2203,2203,2200,2195,2189,2182,2170,2156,2140,2120,2098,2074,2047,2019,1989,1957,1925,
+1891,1857,1824,1789,1753,1719,1683,1648,1614,1581,1548,1517,1486,1455,1426,1396,1368,1342,1314,1288,
+1262,1237,1213,1190,1169,1149,1131,1115,1101,1089,1079,1071,1066,1063,1063,1064,1068,1073,1082,1093,
+1105,1119,1135,1152,1170,1190,1210,1229,1251,1271,1290,1309,1327,1345,1360,1374,1386,1399,1409,1417,
+1424,1429,1432,1432,1429,1426,1420,1413,1403,1392,1380,1366,1350,1334,1316,1297,1277,1257,1237,1216,
+1195,1174,1152,1131,1110,1089,1068,1047,1026,1005,983,962,941,919,897,875,852,830,808,786,
+765,743,722,701,680,660,641,623,606,590,574,559,544,530,515,502,489,475,460,446,
+431,415,398,380,361,341,320,296,271,245,217,189,159,128,97,65,31,-2,-36,-72,
+-108,-145,-183,-221,-260,-301,-342,-385,-430,-476,-524,-575,-626,-680,-737,-795,-855,-918,-983,-1050,
+-1118,-1187,-1259,-1332,-1406,-1480,-1555,-1631,-1706,-1782,-1857,-1931,-2005,-2077,-2147,-2216,-2282,-2346,-2408,-2466,
+-2522,-2575,-2624,-2669,-2710,-2746,-2779,-2806,-2831,-2852,-2868,-2880,-2889,-2894,-2896,-2896,-2893,-2887,-2881,-2873,
+-2864,-2854,-2844,-2833,-2823,-2812,-2803,-2795,-2787,-2780,-2774,-2770,-2766,-2763,-2762,-2762,-2764,-2766,-2770,-2776,
+-2783,-2792,-2803,-2816,-2831,-2847,-2867,-2889,-2913,-2940,-2970,-3002,-3036,-3073,-3111,-3151,-3192,-3235,-3279,-3323,
+-3367,-3410,-3454,-3497,-3537,-3577,-3615,-3651,-3685,-3716,-3746,-3773,-3798,-3821,-3842,-3862,-3880,-3897,-3912,-3928,
+-3942,-3955,-3967,-3979,-3991,-4002,-4013,-4024,-4033,-4041,-4049,-4056,-4062,-4067,-4072,-4076,-4079,-4083,-4085,-4088,
+-4091,-4095,-4100,-4105,-4110,-4119,-4130,-4143,-4160,-4178,-4200,-4225,-4253,-4284,-4319,-4356,-4395,-4436,-4478,-4523,
+-4568,-4613,-4657,-4701,-4744,-4784,-4821,-4855,-4886,-4913,-4936,-4956,-4971,-4983,-4991,-4996,-4998,-5000,-5000,-4999,
+-4999,-5000,-5002,-5007,-5013,-5023,-5037,-5054,-5075,-5099,-5128,-5159,-5194,-5230,-5270,-5311,-5352,-5394,-5435,-5475,
+-5512,-5549,-5583,-5613,-5641,-5666,-5687,-5706,-5721,-5733,-5745,-5753,-5761,-5767,-5773,-5778,-5784,-5790,-5797,-5805,
+-5814,-5824,-5835,-5847,-5859,-5872,-5885,-5898,-5909,-5920,-5930,-5936,-5942,-5944,-5945,-5943,-5937,-5930,-5919,-5907,
+-5892,-5876,-5858,-5839,-5821,-5801,-5781,-5761,-5742,-5723,-5706,-5688,-5666,-5646,-5628,-5608,-5591,-5579,-5565,-5553,
+-5541,-5528,-5514,-5503,-5495,-5481,-5468,-5460,-5448,-5435,-5422,-5405,-5387,-5372,-5356,-5346,-5343,-5338,-5322,-5314,
+-5312,-5306,-5313,-5326,-5339,-5352,-5371,-5391,-5414,-5439,-5467,-5502,-5527,-5551,-5581,-5609,-5636,-5663,-5689,-5709,
+-5721,-5722,-5718,-5711,-5703,-5703,-5703,-5709,-5722,-5742,-5772,-5815,-5868,-5920,-5963,-6001,-6043,-6086,-6121,-6145,
+-6158,-6159,-6160,-6162,-6166,-6175,-6182,-6188,-6188,-6182,-6179,-6175,-6157,-6136,-6119,-6106,-6113,-6123,-6129,-6144,
+-6164,-6188,-6215,-6246,-6270,-6294,-6318,-6338,-6363,-6389,-6418,-6441,-6453,-6467,-6484,-6489,-6479,-6477,-6478,-6486,
+-6497,-6497,-6499,-6508,-6518,-6523,-6526,-6531,-6534,-6538,-6543,-6546,-6548,-6548,-6550,-6556,-6560,-6560,-6559,-6566,
+-6569,-6566,-6567,-6563,-6556,-6552,-6545,-6533,-6521,-6508,-6498,-6491,-6483,-6473,-6465,-6460,-6452,-6447,-6443,-6434,
+-6426,-6420,-6413,-6398,-6385,-6375,-6363,-6357,-6350,-6342,-6339,-6338,-6340,-6340,-6332,-6324,-6315,-6307,-6298,-6289,
+-6284,-6276,-6271,-6266,-6260,-6256,-6251,-6243,-6238,-6233,-6227,-6221,-6216,-6209,-6203,-6199,-6193,-6187,-6180,-6170,
+-6161,-6153,-6145,-6138,-6134,-6132,-6133,-6129,-6122,-6116,-6108,-6099,-6092,-6088,-6078,-6066,-6057,-6050,-6042,-6033,
+-6022,-6007,-5988,-5971,-5954,-5932,-5918,-5909,-5888,-5867,-5854,-5839,-5821,-5804,-5788,-5768,-5749,-5735,-5715,-5694,
+-5678,-5657,-5635,-5617,-5601,-5581,-5561,-5541,-5523,-5504,-5483,-5469,-5453,-5432,-5414,-5395,-5373,-5351,-5334,-5311,
+-5285,-5266,-5248,-5232,-5215,-5196,-5172,-5146,-5122,-5104,-5089,-5066,-5038,-5006,-4969,-4928,-4887,-4848,-4813,-4782,
+-4753,-4727,-4705,-4679,-4646,-4617,-4598,-4585,-4575,-4561,-4545,-4535,-4531,-4525,-4513,-4505,-4503,-4499,-4488,-4470,
+-4445,-4405,-4356,-4309,-4277,-4265,-4251,-4215,-4167,-4127,-4104,-4095,-4096,-4095,-4085,-4068,-4045,-4015,-3973,-3927,
+-3883,-3843,-3807,-3773,-3747,-3717,-3672,-3628,-3581,-3526,-3474,-3423,-3376,-3340,-3314,-3292,-3277,-3275,-3273,-3272,
+-3271,-3273,-3276,-3278,-3284,-3283,-3280,-3279,-3278,-3279,-3283,-3286,-3281,-3277,-3278,-3277,-3269,-3259,-3247,-3235,
+-3222,-3204,-3189,-3182,-3177,-3168,-3160,-3155,-3141,-3126,-3110,-3085,-3058,-3033,-3006,-2976,-2946,-2910,-2876,-2847,
+-2817,-2796,-2789,-2775,-2752,-2737,-2720,-2698,-2682,-2665,-2655,-2652,-2640,-2623,-2608,-2593,-2575,-2556,-2535,-2515,
+-2494,-2473,-2452,-2430,-2408,-2387,-2365,-2344,-2322,-2302,-2282,-2262,-2243,-2226,-2209,-2193,-2179,-2167,-2156,-2146,
+-2136,-2127,-2120,-2113,-2108,-2103,-2098,-2094,-2090,-2087,-2086,-2087,-2088,-2088,-2087,-2085,-2080,-2073,-2063,-2052,
+-2040,-2025,-2009,-1991,-1972,-1956,-1940,-1925,-1910,-1895,-1880,-1865,-1850,-1836,-1823,-1809,-1796,-1784,-1771,-1758,
+-1744,-1730,-1715,-1701,-1687,-1667,-1646,-1635,-1621,-1597,-1574,-1555,-1538,-1518,-1498,-1480,-1463,-1448,-1432,-1415,
+-1396,-1372,-1356,-1344,-1326,-1306,-1278,-1252,-1225,-1188,-1149,-1107,-1065,-1034,-1008,-987,-971,-959,-949,-939,
+-927,-914,-899,-883,-865,-847,-830,-813,-796,-776,-749,-722,-695,-667,-645,-625,-606,-588,-569,-549,
+-529,-512,-498,-485,-473,-463,-454,-446,-438,-429,-420,-410,-400,-387,-372,-355,-336,-314,-289,-262,
+-233,-202,-168,-134,-101,-67,-33,-2,28,59,84,108,129,145,160,173,184,191,193,188,
+176,162,145,126,103,76,46,14,-18,-49,-78,-104,-125,-142,-158,-176,-196,-207,-207,-199,
+-181,-164,-143,-121,-105,-84,-67,-53,-39,-23,-7,8,25,42,62,79,99,124,141,157,
+172,185,202,213,222,234,242,250,258,262,261,261,262,260,255,254,258,250,234,221,
+206,187,161,127,96,72,49,26,3,-18,-39,-59,-74,-90,-112,-133,-158,-181,-199,-220,
+-241,-260,-285,-311,-329,-343,-361,-375,-383,-394,-407,-418,-427,-436,-445,-451,-457,-460,-460,-463,
+-464,-466,-473,-472,-472,-474,-474,-476,-488,-496,-491,-490,-496,-502,-502,-497,-494,-493,-495,-494,
+-492,-490,-485,-480,-470,-457,-445,-439,-438,-438,-437,-431,-420,-407,-390,-369,-344,-320,-303,-286,
+-264,-243,-224,-207,-189,-169,-156,-148,-142,-142,-143,-145,-147,-147,-148,-146,-145,-139,-127,-117,
+-111,-108,-103,-93,-81,-66,-46,-22,8,43,79,120,167,217,271,327,381,437,495,552,
+606,659,710,758,802,841,875,902,925,941,950,953,950,941,926,905,880,851,819,784,
+748,710,674,638,604,572,545,520,500,486,478,476,479,489,505,525,552,584,619,659,
+700,743,789,832,876,919,957,992,1027,1059,1089,1115,1137,1155,1167,1173,1174,1176,1179,1180,
+1181,1180,1179,1179,1182,1186,1193,1205,1220,1243,1266,1293,1381,1404,1435,1470,1508,1550,1595,1642,
+1691,1740,1789,1836,1880,1923,1964,2001,2033,2062,2087,2108,2125,2136,2145,2150,2153,2154,2153,2152,
+2149,2147,2143,2139,2137,2135,2133,2132,2132,2134,2136,2138,2142,2148,2154,2162,2170,2177,2183,2190,
+2195,2201,2205,2209,2213,2214,2215,2214,2214,2210,2205,2202,2195,2187,2178,2166,2150,2134,2118,2102,
+2088,2073,2058,2044,2031,2020,2010,2002,1997,1994,1993,1996,2002,2011,2023,2037,2054,2075,2096,2118,
+2143,2167,2191,2216,2239,2262,2281,2297,2312,2322,2328,2328,2323,2313,2302,2292,2279,2262,2243,2216,
+2189,2163,2132,2100,2069,2036,2005,1976,1950,1927,1908,1894,1884,1879,1879,1884,1892,1904,1922,1945,
+1972,2002,2034,2067,2102,2138,2174,2209,2242,2274,2304,2331,2356,2377,2395,2411,2423,2434,2443,2449,
+2453,2456,2457,2456,2455,2453,2450,2446,2442,2437,2433,2428,2423,2419,2414,2410,2406,2401,2397,2393,
+2388,2383,2378,2372,2365,2359,2353,2346,2340,2332,2325,2318,2310,2303,2298,2292,2285,2279,2274,2270,
+2265,2261,2257,2252,2248,2244,2239,2234,2228,2222,2215,2208,2200,2191,2182,2172,2161,2151,2140,2129,
+2119,2109,2099,2090,2082,2075,2069,2065,2061,2060,2059,2061,2063,2067,2071,2077,2082,2089,2097,2103,
+2109,2116,2120,2123,2124,2124,2121,2117,2111,2101,2090,2076,2058,2039,2016,1992,1965,1934,1903,1870,
+1836,1800,1765,1727,1688,1651,1613,1576,1539,1503,1469,1435,1403,1372,1342,1313,1286,1261,1236,1213,
+1191,1170,1150,1132,1113,1092,1076,1067,1059,1053,1049,1046,1045,1046,1048,1051,1056,1062,1071,1081,
+1093,1106,1120,1136,1153,1171,1187,1206,1224,1243,1261,1278,1294,1308,1320,1332,1345,1356,1365,1374,
+1380,1384,1387,1387,1386,1382,1376,1368,1359,1347,1333,1319,1303,1286,1268,1248,1229,1208,1188,1167,
+1145,1123,1101,1080,1059,1038,1017,996,976,956,934,914,894,873,852,832,811,791,770,749,
+729,710,690,671,653,635,618,602,586,572,557,544,532,519,507,495,483,470,457,444,
+430,415,398,381,363,342,320,296,270,242,213,182,150,117,82,47,10,-26,-63,-101,
+-139,-177,-216,-254,-293,-332,-372,-412,-452,-494,-536,-580,-626,-673,-721,-771,-824,-879,-936,-994,
+-1055,-1118,-1183,-1250,-1318,-1389,-1459,-1532,-1605,-1679,-1753,-1826,-1899,-1972,-2044,-2114,-2183,-2249,-2313,-2375,
+-2433,-2489,-2542,-2591,-2637,-2680,-2718,-2754,-2786,-2813,-2837,-2858,-2875,-2889,-2900,-2909,-2915,-2920,-2922,-2923,
+-2922,-2920,-2917,-2913,-2909,-2904,-2899,-2893,-2888,-2883,-2877,-2872,-2867,-2863,-2859,-2856,-2854,-2853,-2853,-2854,
+-2857,-2862,-2869,-2878,-2890,-2904,-2921,-2941,-2965,-2991,-3020,-3052,-3087,-3125,-3165,-3207,-3251,-3297,-3344,-3392,
+-3440,-3486,-3534,-3579,-3624,-3667,-3707,-3746,-3782,-3815,-3845,-3873,-3898,-3921,-3941,-3958,-3974,-3988,-4001,-4011,
+-4022,-4031,-4040,-4048,-4056,-4063,-4071,-4079,-4087,-4094,-4101,-4108,-4113,-4119,-4125,-4130,-4135,-4140,-4145,-4149,
+-4154,-4159,-4165,-4170,-4178,-4186,-4194,-4204,-4216,-4230,-4245,-4264,-4284,-4308,-4334,-4361,-4392,-4424,-4459,-4495,
+-4530,-4567,-4604,-4641,-4678,-4714,-4748,-4781,-4811,-4838,-4863,-4885,-4903,-4919,-4931,-4941,-4949,-4956,-4962,-4967,
+-4972,-4977,-4984,-4992,-5002,-5015,-5031,-5050,-5072,-5097,-5125,-5157,-5192,-5230,-5269,-5310,-5351,-5394,-5436,-5478,
+-5518,-5556,-5592,-5625,-5655,-5681,-5704,-5724,-5740,-5754,-5763,-5771,-5777,-5781,-5784,-5787,-5790,-5792,-5796,-5800,
+-5806,-5812,-5820,-5830,-5841,-5853,-5866,-5880,-5894,-5908,-5921,-5933,-5944,-5953,-5960,-5965,-5967,-5966,-5962,-5955,
+-5945,-5933,-5917,-5899,-5879,-5857,-5834,-5811,-5785,-5760,-5732,-5706,-5678,-5648,-5618,-5588,-5561,-5536,-5514,-5494,
+-5476,-5458,-5440,-5422,-5408,-5395,-5385,-5380,-5372,-5365,-5357,-5351,-5345,-5340,-5331,-5298,-5287,-5299,-5304,-5323,
+-5360,-5373,-5370,-5383,-5389,-5393,-5416,-5445,-5453,-5454,-5484,-5510,-5528,-5554,-5582,-5608,-5631,-5658,-5686,-5712,
+-5731,-5745,-5750,-5749,-5745,-5744,-5744,-5745,-5751,-5762,-5783,-5814,-5853,-5901,-5941,-5968,-5988,-6010,-6041,-6074,
+-6096,-6109,-6109,-6108,-6113,-6118,-6130,-6142,-6152,-6160,-6165,-6163,-6153,-6138,-6124,-6117,-6120,-6123,-6128,-6144,
+-6164,-6188,-6219,-6246,-6276,-6303,-6325,-6346,-6366,-6387,-6407,-6429,-6450,-6462,-6471,-6477,-6470,-6461,-6471,-6477,
+-6478,-6483,-6489,-6496,-6511,-6527,-6535,-6540,-6547,-6556,-6566,-6567,-6567,-6570,-6574,-6580,-6583,-6587,-6593,-6595,
+-6598,-6601,-6598,-6595,-6592,-6586,-6577,-6568,-6557,-6544,-6534,-6527,-6521,-6516,-6512,-6505,-6498,-6492,-6484,-6476,
+-6468,-6458,-6447,-6435,-6425,-6417,-6407,-6399,-6393,-6384,-6367,-6360,-6369,-6377,-6376,-6367,-6357,-6349,-6339,-6330,
+-6320,-6311,-6305,-6298,-6290,-6286,-6281,-6277,-6271,-6262,-6256,-6250,-6245,-6237,-6230,-6226,-6219,-6213,-6207,-6200,
+-6193,-6189,-6183,-6176,-6171,-6170,-6168,-6165,-6163,-6158,-6149,-6139,-6129,-6120,-6112,-6101,-6090,-6077,-6068,-6059,
+-6045,-6024,-6001,-5980,-5961,-5947,-5937,-5924,-5908,-5891,-5871,-5850,-5831,-5816,-5799,-5779,-5760,-5742,-5721,-5702,
+-5684,-5666,-5647,-5625,-5609,-5589,-5570,-5555,-5534,-5518,-5501,-5483,-5467,-5447,-5432,-5414,-5392,-5369,-5348,-5330,
+-5302,-5276,-5263,-5246,-5225,-5204,-5179,-5156,-5143,-5128,-5108,-5084,-5058,-5029,-4999,-4971,-4942,-4902,-4857,-4814,
+-4772,-4731,-4696,-4670,-4642,-4603,-4566,-4542,-4520,-4497,-4483,-4476,-4472,-4464,-4448,-4438,-4433,-4428,-4426,-4418,
+-4402,-4374,-4326,-4272,-4224,-4180,-4155,-4146,-4135,-4117,-4099,-4083,-4068,-4059,-4047,-4023,-4000,-3971,-3935,-3897,
+-3857,-3813,-3769,-3737,-3705,-3660,-3623,-3589,-3546,-3508,-3480,-3457,-3431,-3402,-3375,-3355,-3342,-3328,-3320,-3317,
+-3316,-3313,-3307,-3309,-3313,-3315,-3319,-3324,-3327,-3334,-3341,-3343,-3345,-3344,-3340,-3342,-3341,-3337,-3331,-3326,
+-3321,-3310,-3294,-3278,-3268,-3264,-3256,-3245,-3227,-3205,-3182,-3155,-3132,-3110,-3085,-3062,-3034,-3008,-2981,-2953,
+-2928,-2904,-2889,-2875,-2853,-2834,-2814,-2792,-2769,-2749,-2731,-2712,-2695,-2677,-2657,-2633,-2609,-2586,-2566,-2547,
+-2527,-2507,-2485,-2463,-2441,-2418,-2396,-2374,-2351,-2329,-2308,-2287,-2266,-2247,-2229,-2210,-2193,-2178,-2163,-2150,
+-2138,-2127,-2118,-2110,-2103,-2097,-2092,-2087,-2084,-2080,-2078,-2076,-2074,-2072,-2069,-2066,-2061,-2056,-2050,-2042,
+-2033,-2023,-2011,-1999,-1985,-1970,-1956,-1941,-1924,-1909,-1893,-1878,-1862,-1847,-1832,-1818,-1805,-1791,-1779,-1766,
+-1751,-1736,-1720,-1706,-1691,-1676,-1664,-1653,-1641,-1628,-1614,-1599,-1586,-1570,-1551,-1532,-1511,-1491,-1470,-1448,
+-1426,-1402,-1380,-1356,-1330,-1304,-1281,-1259,-1234,-1209,-1183,-1154,-1124,-1095,-1067,-1045,-1027,-1011,-996,-982,
+-968,-955,-941,-926,-910,-893,-876,-857,-838,-818,-797,-777,-756,-735,-716,-698,-680,-665,-650,-634,
+-616,-597,-580,-565,-553,-542,-532,-522,-513,-504,-494,-483,-471,-458,-443,-426,-406,-384,-360,-333,
+-304,-273,-240,-205,-172,-140,-104,-70,-37,-5,25,53,75,96,111,126,139,147,149,144,
+138,126,110,93,72,46,17,-13,-47,-83,-116,-147,-175,-198,-219,-240,-257,-271,-275,-273,
+-270,-259,-239,-220,-208,-193,-175,-165,-155,-141,-135,-129,-109,-87,-65,-36,-7,21,46,67,
+86,105,129,150,166,184,198,208,216,223,237,252,257,260,262,264,267,261,255,251,
+245,235,225,214,193,172,149,126,102,74,50,31,14,-9,-36,-55,-77,-107,-139,-170,
+-201,-235,-263,-288,-314,-339,-361,-378,-396,-413,-431,-446,-458,-476,-490,-509,-530,-541,-552,-562,
+-567,-568,-568,-570,-573,-573,-572,-568,-563,-566,-562,-554,-556,-559,-562,-561,-556,-555,-554,-553,
+-550,-545,-537,-523,-507,-490,-475,-465,-455,-451,-447,-441,-432,-418,-402,-384,-364,-341,-314,-292,
+-270,-250,-232,-215,-199,-183,-168,-155,-149,-148,-148,-150,-154,-156,-156,-157,-154,-151,-154,-153,
+-147,-138,-127,-111,-88,-60,-29,6,45,84,129,181,235,290,344,390,437,488,538,588,
+636,682,724,764,798,828,853,871,884,891,891,885,874,856,833,805,773,738,700,660,
+619,578,539,501,465,433,406,384,368,359,356,359,370,388,411,442,480,521,568,620,
+674,731,789,848,905,962,1013,1059,1104,1148,1189,1228,1259,1284,1304,1315,1320,1327,1334,1337,
+1335,1329,1324,1317,1310,1307,1306,1309,1316,1326,1339,1359,1381,1458,1477,1502,1530,1562,1596,1633,
+1672,1713,1755,1796,1838,1878,1917,1952,1985,2015,2042,2065,2083,2100,2112,2120,2126,2128,2128,2126,
+2123,2118,2113,2107,2102,2096,2090,2086,2083,2080,2078,2078,2079,2081,2084,2086,2091,2096,2102,2108,
+2113,2120,2125,2131,2135,2140,2143,2147,2150,2151,2153,2151,2150,2149,2145,2140,2134,2128,2120,2110,
+2100,2090,2083,2074,2065,2058,2051,2045,2041,2040,2042,2045,2051,2058,2068,2082,2098,2116,2136,2157,
+2180,2203,2227,2251,2274,2296,2316,2336,2352,2364,2373,2377,2379,2374,2366,2354,2340,2325,2308,2288,
+2265,2238,2209,2178,2147,2115,2082,2049,2020,1993,1969,1949,1931,1918,1909,1904,1903,1906,1915,1926,
+1942,1963,1987,2015,2045,2076,2108,2140,2171,2201,2230,2258,2283,2307,2327,2346,2361,2374,2385,2393,
+2400,2404,2406,2407,2406,2404,2401,2398,2394,2389,2384,2378,2372,2367,2362,2357,2352,2347,2342,2337,
+2332,2327,2322,2317,2311,2305,2299,2292,2286,2280,2273,2266,2258,2251,2243,2235,2227,2219,2212,2204,
+2196,2188,2181,2174,2167,2160,2153,2146,2139,2131,2123,2116,2108,2099,2091,2082,2074,2065,2056,2047,
+2038,2030,2022,2014,2007,2002,1997,1992,1988,1985,1984,1983,1984,1985,1987,1990,1993,1997,2001,2005,
+2009,2013,2016,2018,2019,2019,2018,2015,2009,2000,1989,1977,1962,1942,1923,1901,1877,1851,1822,1793,
+1761,1727,1692,1655,1618,1580,1543,1505,1469,1433,1397,1363,1330,1298,1268,1239,1211,1188,1165,1143,
+1125,1107,1090,1075,1062,1051,1035,1018,1010,1007,1008,1011,1015,1019,1024,1029,1036,1044,1054,1065,
+1077,1090,1104,1120,1135,1151,1169,1184,1201,1217,1233,1251,1266,1279,1291,1299,1310,1320,1328,1335,
+1341,1345,1347,1346,1344,1340,1334,1326,1317,1306,1293,1279,1263,1246,1228,1209,1190,1171,1151,1130,
+1109,1088,1067,1047,1026,1006,986,967,948,928,909,889,869,849,830,810,790,769,750,730,
+709,689,670,651,632,614,597,580,564,549,535,521,508,496,484,472,460,448,436,423,
+410,396,381,364,345,325,303,280,254,226,196,165,132,97,61,23,-14,-52,-91,-131,
+-170,-209,-249,-288,-326,-364,-403,-440,-479,-517,-555,-594,-633,-674,-716,-759,-804,-851,-900,-951,
+-1004,-1059,-1116,-1176,-1238,-1302,-1369,-1436,-1505,-1575,-1646,-1718,-1790,-1862,-1933,-2005,-2074,-2142,-2208,-2272,
+-2333,-2392,-2449,-2503,-2553,-2601,-2645,-2687,-2725,-2761,-2792,-2820,-2846,-2869,-2890,-2907,-2922,-2936,-2949,-2959,
+-2968,-2975,-2980,-2984,-2987,-2990,-2990,-2991,-2990,-2989,-2987,-2985,-2982,-2979,-2976,-2973,-2970,-2968,-2966,-2966,
+-2967,-2969,-2973,-2980,-2989,-3000,-3015,-3033,-3054,-3079,-3106,-3137,-3171,-3208,-3247,-3289,-3333,-3380,-3427,-3476,
+-3525,-3573,-3621,-3668,-3714,-3758,-3800,-3840,-3876,-3910,-3940,-3968,-3992,-4014,-4032,-4048,-4062,-4073,-4083,-4091,
+-4098,-4103,-4109,-4114,-4118,-4123,-4128,-4134,-4140,-4146,-4152,-4159,-4165,-4171,-4178,-4186,-4193,-4200,-4207,-4214,
+-4221,-4229,-4235,-4243,-4250,-4259,-4268,-4278,-4287,-4298,-4309,-4322,-4337,-4352,-4371,-4391,-4412,-4436,-4461,-4488,
+-4516,-4544,-4572,-4603,-4634,-4664,-4694,-4722,-4750,-4776,-4801,-4825,-4846,-4865,-4882,-4897,-4910,-4923,-4934,-4945,
+-4956,-4967,-4979,-4991,-5006,-5022,-5041,-5062,-5086,-5112,-5141,-5172,-5205,-5241,-5279,-5319,-5359,-5400,-5441,-5483,
+-5522,-5560,-5597,-5630,-5660,-5688,-5713,-5734,-5751,-5766,-5777,-5785,-5791,-5795,-5797,-5798,-5799,-5799,-5799,-5801,
+-5803,-5807,-5812,-5818,-5827,-5837,-5848,-5861,-5875,-5890,-5904,-5919,-5933,-5946,-5958,-5968,-5975,-5980,-5983,-5981,
+-5977,-5970,-5959,-5945,-5927,-5907,-5884,-5858,-5831,-5802,-5772,-5741,-5710,-5678,-5646,-5609,-5571,-5538,-5507,-5477,
+-5450,-5428,-5404,-5381,-5363,-5347,-5331,-5317,-5309,-5300,-5296,-5300,-5311,-5327,-5337,-5340,-5331,-5313,-5303,-5302,
+-5308,-5334,-5380,-5406,-5404,-5405,-5421,-5444,-5467,-5494,-5523,-5539,-5552,-5573,-5596,-5618,-5643,-5664,-5685,-5707,
+-5727,-5742,-5755,-5765,-5773,-5780,-5789,-5800,-5809,-5821,-5837,-5856,-5881,-5911,-5936,-5952,-5964,-5970,-5975,-5990,
+-6012,-6031,-6042,-6048,-6046,-6035,-6022,-6022,-6037,-6060,-6072,-6080,-6102,-6116,-6122,-6130,-6137,-6152,-6168,-6177,
+-6193,-6217,-6237,-6256,-6280,-6311,-6338,-6361,-6378,-6390,-6409,-6431,-6451,-6467,-6485,-6488,-6475,-6470,-6469,-6470,
+-6476,-6484,-6494,-6504,-6519,-6534,-6544,-6551,-6562,-6573,-6577,-6581,-6588,-6595,-6601,-6606,-6613,-6613,-6617,-6624,
+-6627,-6628,-6628,-6626,-6621,-6612,-6604,-6595,-6583,-6573,-6567,-6557,-6547,-6545,-6547,-6543,-6537,-6524,-6511,-6508,
+-6501,-6491,-6483,-6474,-6467,-6457,-6447,-6440,-6433,-6425,-6415,-6409,-6405,-6399,-6394,-6390,-6384,-6377,-6369,-6361,
+-6352,-6343,-6337,-6328,-6318,-6314,-6308,-6302,-6299,-6291,-6286,-6279,-6269,-6261,-6255,-6249,-6243,-6236,-6231,-6226,
+-6222,-6219,-6215,-6209,-6206,-6203,-6199,-6198,-6198,-6191,-6179,-6167,-6157,-6148,-6136,-6123,-6114,-6102,-6087,-6075,
+-6061,-6046,-6030,-6010,-5990,-5967,-5948,-5938,-5926,-5913,-5895,-5876,-5857,-5833,-5810,-5790,-5773,-5751,-5722,-5704,
+-5685,-5666,-5651,-5631,-5611,-5590,-5578,-5564,-5546,-5534,-5518,-5503,-5488,-5463,-5440,-5421,-5401,-5381,-5358,-5331,
+-5303,-5280,-5261,-5246,-5229,-5202,-5176,-5160,-5145,-5129,-5109,-5086,-5066,-5046,-5020,-4989,-4963,-4931,-4889,-4849,
+-4813,-4772,-4720,-4669,-4623,-4575,-4525,-4483,-4450,-4418,-4384,-4350,-4319,-4294,-4273,-4254,-4244,-4250,-4266,-4282,
+-4288,-4280,-4258,-4226,-4193,-4170,-4156,-4138,-4115,-4099,-4085,-4070,-4062,-4052,-4039,-4024,-4007,-3992,-3971,-3949,
+-3922,-3892,-3863,-3832,-3796,-3758,-3724,-3692,-3654,-3616,-3587,-3568,-3546,-3521,-3499,-3481,-3465,-3450,-3438,-3431,
+-3423,-3414,-3409,-3409,-3411,-3412,-3417,-3425,-3430,-3435,-3439,-3443,-3445,-3445,-3443,-3438,-3433,-3425,-3413,-3403,
+-3392,-3377,-3364,-3349,-3335,-3319,-3299,-3279,-3256,-3232,-3207,-3184,-3165,-3141,-3118,-3096,-3073,-3055,-3035,-3013,
+-2997,-2981,-2968,-2961,-2951,-2933,-2913,-2890,-2859,-2830,-2803,-2776,-2751,-2726,-2704,-2682,-2660,-2637,-2612,-2587,
+-2565,-2543,-2519,-2495,-2472,-2448,-2425,-2403,-2380,-2358,-2335,-2314,-2292,-2271,-2251,-2231,-2213,-2195,-2178,-2162,
+-2148,-2134,-2122,-2110,-2101,-2091,-2083,-2076,-2070,-2065,-2061,-2057,-2053,-2049,-2045,-2041,-2037,-2031,-2026,-2019,
+-2011,-2002,-1993,-1982,-1970,-1957,-1944,-1930,-1917,-1902,-1885,-1869,-1853,-1838,-1823,-1808,-1794,-1781,-1769,-1755,
+-1743,-1732,-1720,-1709,-1698,-1687,-1676,-1665,-1654,-1642,-1630,-1616,-1604,-1591,-1576,-1559,-1541,-1521,-1501,-1479,
+-1456,-1433,-1409,-1384,-1359,-1334,-1309,-1284,-1259,-1235,-1210,-1186,-1163,-1140,-1118,-1097,-1076,-1057,-1040,-1024,
+-1009,-994,-979,-963,-947,-931,-915,-898,-881,-863,-845,-828,-810,-792,-775,-757,-740,-724,-709,-696,
+-684,-670,-655,-641,-629,-617,-606,-595,-584,-573,-562,-549,-536,-521,-504,-485,-465,-442,-417,-390,
+-360,-329,-296,-262,-230,-196,-160,-125,-91,-60,-31,-1,24,45,62,76,88,98,106,108,
+106,101,90,71,47,20,-12,-48,-82,-114,-147,-182,-216,-247,-274,-297,-317,-332,-346,-351,
+-345,-341,-338,-327,-313,-304,-294,-284,-276,-266,-254,-240,-221,-200,-177,-151,-121,-88,-60,-33,
+-10,6,27,47,67,83,101,119,128,141,156,169,184,194,201,210,218,230,236,232,
+228,228,225,218,214,201,184,169,149,132,119,103,88,69,46,23,-1,-28,-61,-99,
+-140,-182,-218,-249,-285,-316,-340,-359,-379,-399,-421,-446,-466,-485,-504,-519,-539,-560,-581,-599,
+-612,-624,-636,-645,-643,-635,-627,-623,-616,-605,-596,-588,-580,-567,-559,-562,-565,-563,-558,-554,
+-542,-529,-516,-503,-494,-484,-472,-460,-454,-447,-433,-420,-407,-391,-371,-351,-332,-310,-288,-267,
+-252,-241,-228,-213,-204,-195,-183,-177,-175,-177,-184,-192,-197,-200,-200,-196,-190,-181,-169,-154,
+-139,-118,-95,-73,-44,-9,30,75,121,168,219,273,322,369,412,452,494,536,578,620,
+659,696,729,759,784,804,819,829,833,831,823,809,790,766,738,705,668,629,588,547,
+505,462,421,384,350,319,295,276,264,258,259,268,284,308,339,376,421,472,527,587,
+651,716,783,852,921,988,1053,1114,1172,1224,1270,1313,1353,1387,1414,1434,1451,1464,1471,1475,
+1473,1467,1458,1447,1437,1429,1423,1419,1416,1415,1419,1428,1443,1458,1504,1514,1531,1551,1574,1600,
+1628,1658,1688,1720,1752,1783,1815,1845,1873,1900,1924,1945,1964,1980,1992,2002,2009,2013,2014,2014,
+2011,2008,2003,1997,1991,1984,1978,1971,1966,1962,1958,1955,1953,1952,1952,1953,1955,1958,1962,1966,
+1971,1977,1982,1988,1994,2000,2006,2011,2017,2022,2027,2031,2034,2037,2039,2040,2040,2040,2038,2036,
+2034,2032,2028,2024,2021,2018,2015,2014,2013,2013,2015,2018,2023,2031,2041,2053,2067,2083,2100,2120,
+2141,2162,2186,2209,2233,2255,2276,2295,2313,2329,2342,2352,2358,2360,2358,2352,2342,2329,2314,2296,
+2278,2258,2234,2207,2179,2150,2120,2092,2064,2036,2011,1987,1965,1948,1934,1924,1917,1914,1915,1918,
+1926,1938,1954,1973,1995,2020,2044,2070,2097,2124,2152,2177,2202,2225,2246,2266,2283,2297,2311,2321,
+2329,2336,2339,2342,2342,2342,2340,2337,2334,2330,2325,2320,2315,2310,2304,2297,2292,2287,2282,2276,
+2271,2265,2260,2255,2250,2245,2239,2234,2228,2221,2214,2207,2199,2191,2182,2173,2165,2156,2146,2137,
+2127,2117,2108,2099,2089,2080,2071,2062,2053,2045,2037,2029,2021,2013,2005,1998,1991,1984,1978,1971,
+1964,1958,1951,1946,1940,1935,1930,1925,1921,1917,1916,1913,1909,1907,1905,1903,1903,1902,1901,1900,
+1899,1898,1896,1894,1892,1889,1885,1879,1873,1863,1852,1840,1825,1810,1794,1774,1752,1728,1702,1676,
+1649,1619,1589,1557,1524,1492,1459,1426,1392,1359,1326,1294,1263,1233,1204,1176,1150,1127,1105,1085,
+1067,1050,1035,1021,1009,999,991,982,970,961,962,968,974,979,986,993,1002,1011,1021,1033,
+1046,1059,1074,1089,1106,1123,1139,1156,1172,1187,1202,1218,1233,1247,1260,1270,1280,1289,1296,1302,
+1307,1308,1308,1307,1304,1300,1294,1285,1277,1266,1252,1238,1224,1207,1190,1173,1155,1137,1118,1099,
+1081,1061,1042,1025,1006,987,969,952,934,916,898,880,862,844,826,807,787,767,748,728,
+708,687,666,645,624,605,585,566,547,529,513,496,480,466,452,438,425,412,399,386,
+372,358,343,325,308,288,268,245,221,194,165,134,102,68,33,-3,-41,-80,-119,-159,
+-198,-238,-277,-315,-354,-391,-428,-465,-501,-536,-571,-606,-642,-678,-714,-751,-790,-830,-871,-915,
+-961,-1009,-1060,-1113,-1168,-1226,-1285,-1347,-1411,-1476,-1543,-1612,-1681,-1751,-1820,-1890,-1959,-2028,-2095,-2160,
+-2224,-2286,-2345,-2403,-2457,-2509,-2558,-2606,-2650,-2692,-2731,-2768,-2802,-2833,-2862,-2889,-2914,-2937,-2958,-2978,
+-2995,-3012,-3026,-3039,-3052,-3063,-3072,-3079,-3086,-3091,-3095,-3098,-3099,-3100,-3101,-3100,-3100,-3099,-3099,-3099,
+-3100,-3102,-3106,-3111,-3118,-3128,-3140,-3156,-3175,-3197,-3222,-3250,-3281,-3316,-3353,-3393,-3436,-3480,-3526,-3572,
+-3619,-3667,-3713,-3759,-3804,-3847,-3888,-3926,-3962,-3994,-4023,-4049,-4072,-4092,-4109,-4123,-4134,-4143,-4150,-4155,
+-4158,-4162,-4164,-4166,-4168,-4171,-4174,-4177,-4182,-4187,-4194,-4200,-4207,-4215,-4224,-4233,-4242,-4252,-4262,-4273,
+-4283,-4293,-4304,-4313,-4322,-4332,-4342,-4352,-4363,-4372,-4381,-4391,-4402,-4412,-4424,-4437,-4452,-4468,-4485,-4503,
+-4523,-4543,-4564,-4587,-4610,-4635,-4660,-4685,-4711,-4735,-4759,-4782,-4805,-4826,-4847,-4867,-4885,-4903,-4920,-4937,
+-4954,-4972,-4989,-5008,-5027,-5046,-5068,-5091,-5116,-5143,-5172,-5203,-5236,-5270,-5305,-5342,-5379,-5417,-5456,-5493,
+-5530,-5566,-5600,-5633,-5663,-5690,-5714,-5736,-5754,-5769,-5782,-5791,-5798,-5803,-5805,-5807,-5807,-5807,-5806,-5806,
+-5806,-5808,-5810,-5814,-5820,-5827,-5837,-5847,-5860,-5873,-5887,-5902,-5917,-5931,-5945,-5957,-5968,-5977,-5984,-5988,
+-5989,-5987,-5982,-5973,-5960,-5944,-5925,-5902,-5876,-5848,-5819,-5787,-5754,-5722,-5686,-5652,-5619,-5583,-5551,-5518,
+-5484,-5450,-5414,-5386,-5365,-5351,-5335,-5313,-5299,-5284,-5264,-5255,-5277,-5315,-5324,-5316,-5317,-5312,-5309,-5321,
+-5335,-5352,-5373,-5394,-5417,-5439,-5462,-5484,-5506,-5529,-5549,-5567,-5583,-5600,-5618,-5633,-5649,-5670,-5692,-5710,
+-5726,-5744,-5765,-5786,-5810,-5831,-5846,-5860,-5873,-5890,-5908,-5924,-5943,-5961,-5972,-5979,-5982,-5976,-5966,-5962,
+-5962,-5969,-5980,-5991,-5996,-5997,-6002,-6014,-6032,-6054,-6075,-6088,-6096,-6105,-6113,-6127,-6142,-6161,-6182,-6200,
+-6220,-6243,-6263,-6277,-6292,-6320,-6356,-6387,-6414,-6437,-6449,-6457,-6468,-6472,-6471,-6476,-6474,-6468,-6472,-6478,
+-6484,-6491,-6500,-6511,-6522,-6538,-6549,-6558,-6573,-6588,-6599,-6608,-6611,-6618,-6627,-6632,-6639,-6646,-6643,-6640,
+-6646,-6650,-6643,-6637,-6629,-6620,-6615,-6609,-6603,-6597,-6590,-6583,-6578,-6574,-6570,-6570,-6573,-6561,-6546,-6537,
+-6525,-6513,-6503,-6492,-6484,-6478,-6469,-6459,-6450,-6439,-6429,-6420,-6410,-6403,-6398,-6391,-6384,-6380,-6375,-6369,
+-6360,-6352,-6343,-6333,-6327,-6321,-6316,-6313,-6308,-6302,-6297,-6295,-6288,-6280,-6273,-6267,-6267,-6264,-6255,-6250,
+-6246,-6241,-6236,-6232,-6228,-6223,-6219,-6217,-6212,-6207,-6197,-6185,-6177,-6167,-6156,-6144,-6130,-6116,-6096,-6078,
+-6066,-6051,-6036,-6020,-6000,-5977,-5960,-5945,-5931,-5922,-5905,-5882,-5864,-5839,-5813,-5796,-5776,-5752,-5727,-5705,
+-5689,-5667,-5643,-5623,-5606,-5588,-5572,-5559,-5541,-5526,-5516,-5500,-5482,-5466,-5448,-5425,-5399,-5375,-5352,-5328,
+-5301,-5273,-5248,-5229,-5211,-5187,-5162,-5142,-5125,-5112,-5093,-5067,-5046,-5031,-5010,-4987,-4963,-4931,-4894,-4852,
+-4806,-4762,-4720,-4673,-4618,-4559,-4487,-4409,-4341,-4288,-4251,-4220,-4196,-4187,-4182,-4181,-4188,-4193,-4198,-4206,
+-4211,-4213,-4207,-4194,-4176,-4151,-4124,-4099,-4079,-4066,-4057,-4047,-4036,-4024,-4011,-3997,-3984,-3970,-3958,-3945,
+-3930,-3916,-3897,-3873,-3848,-3826,-3805,-3782,-3755,-3726,-3697,-3673,-3651,-3628,-3608,-3593,-3578,-3561,-3549,-3548,
+-3543,-3531,-3519,-3505,-3499,-3499,-3502,-3507,-3513,-3520,-3527,-3532,-3534,-3529,-3519,-3505,-3487,-3468,-3455,-3442,
+-3426,-3405,-3384,-3367,-3347,-3321,-3298,-3277,-3253,-3232,-3216,-3202,-3183,-3158,-3136,-3122,-3103,-3082,-3066,-3050,
+-3037,-3027,-3016,-3007,-2996,-2983,-2968,-2944,-2917,-2892,-2862,-2828,-2798,-2772,-2746,-2720,-2696,-2672,-2651,-2628,
+-2603,-2576,-2551,-2528,-2504,-2480,-2456,-2434,-2412,-2389,-2367,-2344,-2322,-2300,-2280,-2260,-2240,-2223,-2205,-2188,
+-2170,-2152,-2136,-2121,-2107,-2094,-2083,-2072,-2063,-2054,-2046,-2039,-2032,-2026,-2020,-2014,-2008,-2002,-1995,-1988,
+-1980,-1972,-1963,-1954,-1942,-1930,-1918,-1904,-1890,-1876,-1861,-1846,-1831,-1817,-1802,-1789,-1775,-1761,-1748,-1735,
+-1723,-1711,-1700,-1690,-1680,-1671,-1662,-1653,-1644,-1634,-1624,-1614,-1603,-1591,-1578,-1564,-1549,-1533,-1515,-1497,
+-1477,-1456,-1434,-1412,-1389,-1365,-1342,-1318,-1294,-1269,-1246,-1222,-1199,-1179,-1159,-1137,-1115,-1094,-1074,-1056,
+-1038,-1021,-1005,-989,-973,-957,-942,-926,-910,-894,-879,-865,-851,-835,-819,-803,-788,-774,-760,-747,
+-735,-723,-711,-699,-688,-676,-665,-653,-642,-629,-616,-602,-585,-569,-551,-530,-509,-485,-460,-433,
+-404,-373,-341,-309,-275,-240,-206,-171,-137,-105,-74,-45,-21,0,20,35,47,58,65,67,
+63,59,51,33,12,-11,-38,-67,-101,-140,-182,-218,-252,-287,-319,-348,-372,-392,-412,-427,
+-434,-439,-436,-422,-409,-399,-389,-378,-366,-353,-339,-324,-304,-281,-260,-240,-217,-193,-165,-139,
+-119,-101,-82,-63,-42,-25,-10,12,35,53,68,83,95,107,121,128,135,147,155,164,
+171,174,174,173,168,158,151,144,132,119,114,109,96,86,77,66,52,34,11,-26,
+-69,-107,-151,-195,-228,-259,-287,-312,-336,-361,-389,-416,-440,-462,-484,-504,-523,-542,-566,-591,
+-606,-620,-636,-644,-649,-650,-645,-635,-619,-606,-599,-588,-576,-562,-545,-528,-512,-500,-489,-476,
+-466,-456,-447,-435,-418,-403,-391,-379,-367,-357,-345,-333,-320,-306,-291,-276,-264,-252,-240,-230,
+-223,-219,-217,-217,-218,-218,-221,-224,-230,-242,-251,-257,-262,-259,-248,-230,-206,-179,-153,-125,
+-94,-62,-33,-1,35,78,122,171,227,280,328,372,412,447,476,507,541,576,610,642,
+673,700,723,743,758,769,775,776,772,762,748,729,702,673,640,605,570,533,494,451,
+410,371,333,297,265,239,219,206,197,195,201,214,234,261,296,338,387,441,499,563,
+630,698,770,844,917,991,1062,1130,1196,1256,1311,1362,1407,1447,1480,1508,1532,1550,1561,1568,
+1569,1564,1555,1545,1532,1518,1503,1486,1478,1480,1483,1486,1489,1496,1504,1515,1521,1529,1540,1554,
+1570,1587,1606,1627,1647,1666,1688,1709,1729,1749,1767,1783,1798,1811,1822,1831,1838,1842,1845,1846,
+1846,1844,1841,1837,1832,1827,1822,1816,1812,1807,1803,1800,1797,1795,1794,1794,1795,1796,1798,1801,
+1805,1809,1814,1819,1825,1831,1838,1844,1851,1857,1864,1871,1878,1884,1890,1895,1899,1904,1908,1910,
+1913,1915,1917,1918,1918,1920,1921,1923,1925,1928,1931,1937,1943,1951,1960,1971,1982,1996,2011,2028,
+2047,2065,2085,2106,2128,2150,2172,2192,2211,2228,2244,2258,2268,2276,2280,2281,2280,2275,2267,2256,
+2244,2229,2212,2194,2173,2151,2128,2104,2079,2056,2034,2011,1991,1972,1956,1942,1931,1923,1917,1915,
+1917,1921,1928,1939,1952,1968,1985,2004,2025,2047,2070,2092,2114,2135,2155,2174,2192,2207,2222,2233,
+2243,2251,2258,2264,2267,2269,2269,2267,2265,2263,2260,2256,2251,2246,2241,2236,2231,2226,2221,2216,
+2210,2205,2200,2195,2190,2185,2179,2173,2167,2161,2154,2147,2139,2131,2122,2113,2103,2093,2083,2072,
+2061,2050,2039,2029,2018,2007,1997,1987,1978,1969,1960,1951,1943,1936,1929,1923,1917,1912,1906,1901,
+1897,1892,1888,1884,1879,1876,1871,1866,1861,1857,1852,1847,1841,1836,1830,1825,1818,1811,1804,1797,
+1789,1782,1775,1767,1758,1749,1740,1730,1719,1707,1695,1682,1668,1654,1637,1618,1599,1580,1558,1532,
+1509,1486,1461,1438,1415,1389,1362,1335,1306,1277,1250,1222,1195,1168,1142,1117,1094,1072,1055,1036,
+1018,1002,985,971,960,951,942,937,929,917,914,920,925,930,936,944,952,962,973,985,
+998,1012,1026,1042,1059,1075,1092,1110,1126,1143,1160,1176,1191,1205,1218,1230,1240,1249,1256,1261,
+1265,1267,1268,1267,1263,1258,1251,1242,1232,1221,1209,1196,1181,1166,1151,1134,1117,1101,1085,1069,
+1051,1035,1019,1002,986,971,956,941,927,911,897,881,866,850,834,817,799,781,761,741,
+721,699,678,656,633,611,588,565,543,521,501,480,461,442,424,407,390,374,357,341,
+326,309,292,275,257,237,217,195,171,146,120,91,60,28,-5,-39,-75,-112,-149,-187,
+-225,-264,-301,-339,-376,-412,-447,-482,-516,-549,-581,-614,-646,-678,-710,-743,-776,-810,-847,-884,
+-923,-965,-1009,-1055,-1104,-1155,-1208,-1264,-1322,-1381,-1444,-1507,-1572,-1638,-1705,-1773,-1840,-1907,-1974,-2040,
+-2104,-2167,-2229,-2288,-2346,-2402,-2456,-2508,-2558,-2605,-2651,-2695,-2736,-2775,-2813,-2848,-2882,-2914,-2944,-2973,
+-3001,-3027,-3051,-3074,-3096,-3115,-3133,-3149,-3164,-3178,-3190,-3200,-3209,-3216,-3222,-3227,-3230,-3233,-3236,-3239,
+-3242,-3245,-3250,-3256,-3263,-3272,-3283,-3298,-3314,-3333,-3355,-3380,-3409,-3440,-3474,-3509,-3548,-3588,-3629,-3672,
+-3715,-3759,-3802,-3844,-3885,-3925,-3963,-3998,-4031,-4061,-4087,-4111,-4131,-4149,-4163,-4174,-4183,-4189,-4194,-4196,
+-4198,-4198,-4199,-4199,-4199,-4200,-4201,-4204,-4207,-4212,-4218,-4225,-4233,-4242,-4252,-4264,-4277,-4290,-4304,-4318,
+-4332,-4347,-4361,-4374,-4387,-4400,-4412,-4424,-4435,-4446,-4456,-4464,-4472,-4481,-4489,-4498,-4506,-4515,-4526,-4538,
+-4550,-4564,-4578,-4594,-4611,-4629,-4648,-4669,-4691,-4713,-4735,-4759,-4781,-4804,-4828,-4850,-4873,-4896,-4918,-4941,
+-4964,-4987,-5010,-5033,-5057,-5081,-5106,-5133,-5159,-5187,-5216,-5246,-5277,-5309,-5342,-5376,-5409,-5443,-5477,-5511,
+-5544,-5576,-5607,-5637,-5664,-5689,-5712,-5733,-5751,-5766,-5779,-5789,-5797,-5803,-5807,-5810,-5811,-5811,-5811,-5810,
+-5810,-5810,-5812,-5814,-5818,-5823,-5829,-5838,-5847,-5859,-5871,-5884,-5898,-5912,-5926,-5940,-5953,-5964,-5974,-5982,
+-5988,-5990,-5990,-5987,-5980,-5970,-5957,-5940,-5920,-5896,-5870,-5840,-5809,-5775,-5740,-5704,-5667,-5633,-5599,-5567,
+-5546,-5526,-5496,-5464,-5435,-5402,-5374,-5359,-5350,-5343,-5332,-5313,-5307,-5303,-5288,-5286,-5304,-5327,-5344,-5354,
+-5374,-5396,-5413,-5435,-5460,-5485,-5509,-5530,-5550,-5568,-5587,-5605,-5622,-5643,-5663,-5677,-5687,-5699,-5711,-5724,
+-5739,-5754,-5772,-5796,-5817,-5836,-5855,-5870,-5887,-5905,-5922,-5939,-5953,-5967,-5979,-5987,-5991,-5993,-5994,-5994,
+-5995,-6000,-6005,-6008,-6014,-6018,-6023,-6031,-6037,-6045,-6060,-6079,-6095,-6111,-6126,-6140,-6157,-6170,-6182,-6197,
+-6217,-6238,-6258,-6277,-6295,-6313,-6333,-6356,-6384,-6408,-6426,-6440,-6449,-6454,-6460,-6465,-6468,-6471,-6476,-6481,
+-6485,-6492,-6500,-6508,-6517,-6528,-6540,-6554,-6567,-6580,-6595,-6609,-6621,-6631,-6638,-6642,-6645,-6646,-6645,-6643,
+-6641,-6639,-6637,-6634,-6631,-6626,-6619,-6613,-6610,-6606,-6604,-6601,-6596,-6591,-6585,-6580,-6575,-6567,-6555,-6543,
+-6531,-6520,-6507,-6494,-6481,-6468,-6459,-6452,-6444,-6436,-6427,-6419,-6411,-6405,-6398,-6387,-6377,-6369,-6359,-6352,
+-6348,-6344,-6342,-6337,-6328,-6320,-6315,-6310,-6305,-6300,-6297,-6295,-6290,-6286,-6285,-6280,-6274,-6269,-6265,-6259,
+-6253,-6248,-6243,-6236,-6230,-6223,-6214,-6204,-6193,-6185,-6179,-6175,-6173,-6167,-6160,-6150,-6138,-6126,-6107,-6087,
+-6073,-6058,-6038,-6022,-6007,-5986,-5963,-5943,-5928,-5913,-5897,-5887,-5871,-5846,-5824,-5802,-5779,-5757,-5733,-5712,
+-5688,-5665,-5644,-5622,-5601,-5583,-5566,-5550,-5535,-5518,-5503,-5488,-5468,-5450,-5431,-5410,-5387,-5359,-5339,-5315,
+-5283,-5253,-5228,-5205,-5178,-5153,-5130,-5105,-5086,-5065,-5045,-5035,-5020,-4994,-4967,-4937,-4908,-4877,-4840,-4802,
+-4758,-4696,-4635,-4587,-4543,-4493,-4436,-4386,-4345,-4307,-4275,-4257,-4242,-4230,-4226,-4230,-4232,-4229,-4225,-4226,
+-4231,-4233,-4224,-4205,-4179,-4150,-4123,-4098,-4077,-4059,-4045,-4035,-4025,-4016,-4005,-3994,-3981,-3968,-3955,-3941,
+-3929,-3915,-3901,-3886,-3868,-3850,-3834,-3820,-3806,-3790,-3772,-3753,-3734,-3716,-3702,-3687,-3674,-3663,-3648,-3638,
+-3630,-3622,-3614,-3602,-3588,-3576,-3568,-3556,-3543,-3540,-3540,-3537,-3534,-3530,-3522,-3506,-3483,-3459,-3440,-3424,
+-3407,-3386,-3366,-3349,-3332,-3313,-3295,-3277,-3256,-3234,-3209,-3189,-3173,-3156,-3144,-3130,-3111,-3094,-3080,-3066,
+-3053,-3040,-3027,-3016,-3004,-2990,-2976,-2963,-2945,-2925,-2902,-2871,-2838,-2807,-2779,-2753,-2729,-2708,-2685,-2661,
+-2637,-2613,-2588,-2561,-2535,-2512,-2489,-2465,-2443,-2421,-2398,-2377,-2355,-2333,-2312,-2290,-2270,-2249,-2230,-2211,
+-2193,-2176,-2159,-2142,-2126,-2111,-2097,-2083,-2070,-2058,-2047,-2036,-2026,-2018,-2009,-2001,-1993,-1985,-1978,-1972,
+-1964,-1956,-1945,-1935,-1923,-1910,-1897,-1884,-1870,-1856,-1842,-1828,-1814,-1800,-1787,-1774,-1760,-1745,-1731,-1718,
+-1705,-1693,-1682,-1671,-1661,-1652,-1642,-1632,-1622,-1615,-1610,-1602,-1591,-1581,-1570,-1559,-1547,-1534,-1520,-1505,
+-1488,-1471,-1453,-1433,-1413,-1392,-1370,-1348,-1325,-1302,-1279,-1257,-1235,-1213,-1191,-1169,-1147,-1125,-1104,-1083,
+-1063,-1044,-1026,-1009,-992,-976,-960,-944,-929,-914,-899,-886,-872,-858,-845,-833,-821,-809,-797,-786,
+-774,-763,-752,-741,-731,-719,-707,-696,-684,-671,-656,-641,-624,-605,-585,-564,-541,-517,-492,-464,
+-435,-405,-374,-342,-310,-278,-246,-215,-184,-152,-121,-93,-70,-49,-31,-16,-3,5,11,13,
+12,8,-3,-18,-37,-58,-80,-109,-142,-177,-213,-251,-290,-328,-363,-395,-424,-452,-476,-496,
+-516,-523,-519,-513,-504,-497,-487,-472,-460,-444,-426,-410,-393,-377,-359,-342,-321,-297,-275,-252,
+-233,-214,-194,-170,-146,-126,-104,-84,-66,-44,-26,-13,0,15,26,36,48,59,64,68,
+75,79,81,82,78,71,71,73,75,75,76,74,67,63,59,52,47,40,25,2,
+-20,-46,-84,-125,-157,-184,-212,-243,-275,-304,-331,-358,-385,-409,-430,-452,-471,-488,-507,-527,
+-543,-561,-579,-589,-596,-600,-597,-593,-587,-579,-570,-558,-543,-527,-513,-497,-474,-451,-424,-394,
+-366,-341,-318,-295,-275,-261,-248,-236,-224,-213,-205,-196,-189,-186,-183,-182,-184,-187,-189,-190,
+-192,-197,-205,-218,-232,-248,-265,-279,-288,-297,-302,-304,-298,-284,-259,-228,-193,-158,-122,-83,
+-38,12,61,106,154,200,245,294,349,394,424,452,482,509,532,552,577,603,627,651,
+671,688,703,713,720,722,720,714,704,689,671,647,618,587,553,517,480,444,409,374,
+341,308,276,248,222,202,186,177,174,177,187,204,227,256,292,334,383,437,495,558,
+624,693,764,836,908,980,1051,1119,1185,1247,1305,1359,1408,1450,1488,1520,1546,1568,1584,1593,
+1596,1591,1584,1580,1573,1562,1552,1539,1526,1519,1514,1509,1508,1509,1512,1515,1500,1500,1503,1506,
+1512,1519,1526,1535,1544,1554,1564,1575,1586,1597,1608,1618,1627,1635,1642,1648,1654,1659,1661,1663,
+1664,1665,1664,1663,1661,1660,1657,1654,1652,1649,1647,1644,1643,1642,1640,1641,1641,1642,1644,1646,
+1649,1652,1656,1661,1666,1671,1676,1682,1688,1695,1702,1709,1717,1724,1731,1738,1745,1753,1759,1765,
+1771,1776,1781,1785,1789,1794,1799,1803,1807,1812,1817,1823,1830,1838,1847,1857,1868,1880,1893,1907,
+1923,1939,1957,1975,1994,2014,2033,2052,2071,2089,2107,2123,2138,2150,2161,2170,2175,2179,2180,2179,
+2175,2170,2162,2152,2140,2126,2110,2093,2076,2058,2039,2022,2004,1986,1970,1955,1943,1933,1924,1916,
+1911,1909,1910,1913,1919,1926,1935,1947,1960,1975,1992,2008,2025,2043,2060,2076,2092,2108,2122,2135,
+2147,2158,2167,2174,2181,2185,2188,2190,2191,2190,2189,2187,2184,2181,2178,2174,2170,2166,2161,2157,
+2153,2148,2144,2139,2134,2129,2124,2118,2112,2105,2098,2090,2082,2074,2065,2056,2046,2036,2026,2014,
+2003,1991,1980,1968,1956,1945,1934,1923,1913,1903,1894,1885,1877,1870,1864,1858,1853,1849,1845,1841,
+1838,1835,1832,1829,1826,1823,1819,1815,1810,1804,1798,1791,1782,1774,1766,1755,1744,1732,1719,1707,
+1694,1680,1666,1651,1636,1622,1606,1590,1575,1559,1545,1529,1513,1496,1480,1464,1447,1430,1412,1395,
+1377,1358,1340,1321,1301,1280,1259,1238,1216,1195,1173,1150,1128,1106,1086,1068,1049,1033,1016,998,
+981,964,948,934,921,911,902,895,888,884,881,878,877,879,883,889,895,903,912,924,
+936,948,962,978,994,1010,1027,1045,1063,1081,1098,1116,1133,1148,1163,1176,1187,1197,1206,1210,
+1214,1215,1216,1215,1212,1207,1201,1193,1184,1174,1161,1149,1135,1120,1105,1090,1074,1059,1044,1029,
+1015,1000,985,972,959,945,934,923,911,901,890,878,866,854,841,827,811,795,778,760,
+740,719,698,675,651,627,602,577,552,527,502,478,454,430,407,385,363,342,322,302,
+281,262,243,223,203,182,160,138,115,91,65,38,10,-19,-50,-82,-115,-149,-184,-219,
+-254,-289,-325,-360,-394,-428,-461,-494,-525,-556,-586,-616,-645,-674,-703,-732,-761,-791,-823,-855,
+-889,-925,-962,-1002,-1045,-1089,-1136,-1185,-1236,-1290,-1346,-1404,-1464,-1525,-1587,-1651,-1715,-1779,-1844,-1908,
+-1972,-2035,-2097,-2158,-2218,-2277,-2334,-2389,-2443,-2496,-2546,-2596,-2644,-2690,-2735,-2778,-2821,-2862,-2902,-2940,
+-2976,-3012,-3046,-3078,-3110,-3140,-3167,-3194,-3218,-3240,-3261,-3278,-3295,-3310,-3323,-3334,-3344,-3353,-3360,-3367,
+-3374,-3381,-3388,-3395,-3403,-3413,-3424,-3436,-3451,-3468,-3488,-3509,-3533,-3560,-3589,-3620,-3653,-3688,-3724,-3761,
+-3799,-3837,-3875,-3913,-3949,-3984,-4017,-4047,-4076,-4102,-4125,-4145,-4162,-4177,-4188,-4197,-4203,-4207,-4210,-4210,
+-4210,-4208,-4207,-4205,-4204,-4204,-4204,-4206,-4209,-4214,-4220,-4228,-4238,-4249,-4261,-4276,-4291,-4308,-4327,-4346,
+-4365,-4384,-4402,-4421,-4438,-4455,-4471,-4486,-4500,-4514,-4526,-4536,-4545,-4553,-4560,-4567,-4572,-4577,-4583,-4590,
+-4597,-4605,-4613,-4623,-4634,-4646,-4659,-4675,-4691,-4710,-4730,-4751,-4773,-4796,-4819,-4843,-4868,-4894,-4921,-4948,
+-4975,-5002,-5030,-5058,-5087,-5115,-5144,-5173,-5203,-5232,-5262,-5292,-5322,-5353,-5383,-5413,-5444,-5474,-5504,-5533,
+-5562,-5590,-5616,-5642,-5666,-5688,-5708,-5727,-5743,-5758,-5771,-5781,-5789,-5796,-5801,-5804,-5807,-5808,-5809,-5809,
+-5809,-5809,-5810,-5811,-5814,-5818,-5822,-5828,-5836,-5845,-5855,-5866,-5879,-5891,-5905,-5918,-5932,-5945,-5956,-5966,
+-5975,-5982,-5986,-5989,-5988,-5984,-5978,-5968,-5954,-5938,-5918,-5895,-5870,-5842,-5813,-5781,-5747,-5713,-5677,-5639,
+-5605,-5573,-5549,-5536,-5529,-5516,-5479,-5431,-5395,-5373,-5366,-5364,-5352,-5338,-5332,-5339,-5346,-5359,-5388,-5408,
+-5418,-5441,-5469,-5498,-5525,-5547,-5566,-5581,-5593,-5602,-5611,-5622,-5636,-5652,-5668,-5684,-5699,-5711,-5724,-5736,
+-5747,-5760,-5775,-5795,-5815,-5835,-5852,-5869,-5886,-5899,-5910,-5922,-5932,-5942,-5949,-5954,-5958,-5963,-5970,-5975,
+-5984,-5995,-6002,-6008,-6015,-6022,-6031,-6038,-6046,-6058,-6075,-6092,-6106,-6123,-6140,-6154,-6166,-6178,-6194,-6213,
+-6228,-6239,-6252,-6270,-6286,-6299,-6316,-6336,-6357,-6378,-6402,-6425,-6441,-6450,-6457,-6465,-6473,-6480,-6487,-6492,
+-6497,-6501,-6503,-6507,-6515,-6523,-6532,-6543,-6553,-6561,-6572,-6583,-6594,-6606,-6616,-6623,-6628,-6631,-6631,-6628,
+-6623,-6619,-6614,-6610,-6606,-6603,-6600,-6596,-6592,-6587,-6584,-6582,-6581,-6579,-6575,-6569,-6561,-6554,-6547,-6536,
+-6525,-6514,-6501,-6488,-6476,-6465,-6456,-6448,-6442,-6435,-6427,-6419,-6411,-6402,-6395,-6388,-6382,-6375,-6368,-6362,
+-6354,-6347,-6341,-6334,-6328,-6322,-6317,-6311,-6305,-6300,-6296,-6292,-6288,-6285,-6280,-6275,-6272,-6269,-6265,-6264,
+-6261,-6254,-6245,-6237,-6227,-6216,-6207,-6197,-6189,-6182,-6175,-6170,-6166,-6163,-6159,-6152,-6142,-6129,-6112,-6095,
+-6080,-6060,-6039,-6023,-6008,-5992,-5975,-5954,-5929,-5906,-5890,-5876,-5859,-5845,-5827,-5800,-5773,-5754,-5735,-5711,
+-5684,-5658,-5641,-5622,-5600,-5579,-5558,-5536,-5516,-5501,-5484,-5463,-5442,-5421,-5400,-5373,-5352,-5340,-5318,-5294,
+-5270,-5236,-5204,-5173,-5139,-5109,-5084,-5064,-5043,-5013,-4980,-4951,-4918,-4878,-4834,-4784,-4732,-4680,-4633,-4595,
+-4565,-4543,-4518,-4488,-4459,-4433,-4409,-4384,-4358,-4337,-4324,-4311,-4295,-4285,-4284,-4283,-4279,-4276,-4271,-4262,
+-4253,-4243,-4232,-4216,-4192,-4166,-4141,-4119,-4100,-4083,-4067,-4054,-4042,-4029,-4016,-4004,-3992,-3979,-3966,-3954,
+-3941,-3928,-3914,-3901,-3887,-3874,-3860,-3845,-3831,-3817,-3802,-3789,-3775,-3761,-3748,-3735,-3722,-3709,-3695,-3683,
+-3671,-3660,-3649,-3637,-3625,-3611,-3596,-3582,-3569,-3558,-3548,-3536,-3521,-3510,-3500,-3484,-3466,-3447,-3428,-3409,
+-3390,-3371,-3354,-3334,-3315,-3297,-3279,-3258,-3235,-3215,-3194,-3175,-3158,-3145,-3130,-3115,-3101,-3090,-3078,-3067,
+-3055,-3043,-3031,-3019,-3006,-2994,-2982,-2971,-2958,-2944,-2927,-2906,-2881,-2857,-2832,-2804,-2776,-2753,-2731,-2710,
+-2689,-2663,-2635,-2607,-2580,-2555,-2532,-2509,-2488,-2466,-2443,-2420,-2398,-2376,-2355,-2333,-2312,-2291,-2271,-2251,
+-2232,-2213,-2195,-2178,-2161,-2144,-2128,-2113,-2098,-2083,-2069,-2056,-2044,-2034,-2024,-2014,-2006,-1998,-1989,-1981,
+-1972,-1960,-1947,-1934,-1922,-1908,-1895,-1880,-1867,-1854,-1841,-1828,-1814,-1801,-1787,-1773,-1758,-1744,-1728,-1714,
+-1700,-1687,-1675,-1664,-1654,-1644,-1635,-1627,-1618,-1610,-1602,-1594,-1586,-1577,-1567,-1557,-1546,-1534,-1523,-1510,
+-1497,-1481,-1465,-1449,-1431,-1413,-1393,-1373,-1353,-1331,-1309,-1287,-1265,-1244,-1224,-1202,-1178,-1156,-1133,-1111,
+-1089,-1069,-1049,-1032,-1015,-996,-978,-961,-944,-930,-915,-901,-888,-875,-863,-852,-841,-829,-818,-807,
+-796,-786,-775,-764,-754,-745,-733,-720,-707,-693,-677,-660,-642,-623,-602,-580,-556,-531,-505,-478,
+-449,-421,-392,-362,-334,-304,-275,-248,-221,-195,-172,-150,-126,-105,-88,-80,-74,-67,-62,-60,
+-62,-66,-75,-91,-108,-129,-152,-174,-205,-239,-275,-310,-342,-377,-413,-449,-481,-509,-539,-570,
+-592,-608,-619,-616,-607,-599,-586,-571,-559,-545,-530,-517,-504,-489,-471,-452,-433,-410,-389,-371,
+-352,-327,-302,-282,-260,-238,-219,-198,-182,-166,-149,-136,-124,-111,-97,-83,-74,-61,-48,-41,
+-37,-31,-26,-22,-18,-15,-16,-14,-8,-4,-4,-1,4,7,6,2,-4,-12,-22,-34,
+-48,-59,-71,-87,-106,-125,-148,-171,-193,-217,-246,-271,-288,-301,-313,-334,-354,-367,-390,-417,
+-434,-451,-468,-479,-487,-493,-502,-511,-514,-513,-508,-496,-481,-461,-441,-429,-415,-387,-356,-325,
+-291,-254,-220,-180,-142,-113,-89,-76,-71,-64,-59,-61,-65,-70,-74,-82,-93,-105,-118,-132,
+-149,-167,-185,-204,-226,-250,-269,-286,-301,-311,-316,-314,-302,-279,-244,-204,-157,-110,-70,-24,
+35,93,146,202,251,294,335,371,403,430,454,477,499,522,542,561,582,601,619,634,
+646,656,662,665,665,661,653,642,627,610,589,566,541,513,482,452,422,391,361,331,
+303,278,254,234,217,205,197,194,196,204,217,237,261,291,327,369,415,465,519,577,
+638,701,766,832,898,964,1028,1091,1152,1210,1265,1316,1363,1405,1442,1473,1496,1520,1536,1542,
+1548,1551,1551,1551,1550,1548,1543,1537,1530,1523,1518,1514,1508,1505,1503,1501,1500,1464,1461,1459,
+1457,1456,1456,1456,1458,1459,1461,1463,1464,1468,1471,1474,1478,1482,1485,1488,1491,1493,1496,1498,
+1500,1502,1503,1505,1506,1507,1508,1509,1510,1510,1511,1512,1512,1513,1514,1515,1516,1518,1519,1521,
+1524,1526,1529,1533,1536,1540,1544,1549,1554,1559,1566,1572,1578,1585,1593,1600,1607,1614,1621,1628,
+1635,1642,1650,1656,1663,1669,1675,1681,1686,1693,1700,1707,1714,1721,1729,1738,1747,1757,1769,1781,
+1794,1808,1823,1838,1854,1872,1889,1907,1925,1944,1962,1979,1997,2012,2027,2041,2053,2063,2072,2078,
+2083,2086,2087,2086,2084,2079,2072,2063,2053,2042,2029,2016,2002,1989,1976,1962,1950,1938,1927,1917,
+1909,1903,1897,1894,1893,1892,1895,1900,1905,1912,1921,1931,1943,1956,1969,1983,1996,2008,2022,2035,
+2047,2058,2069,2078,2087,2094,2100,2106,2110,2112,2114,2116,2116,2116,2114,2113,2111,2109,2105,2102,
+2099,2095,2090,2086,2081,2076,2071,2065,2059,2052,2046,2038,2030,2022,2013,2003,1993,1983,1972,1961,
+1950,1938,1927,1915,1903,1891,1880,1869,1858,1848,1839,1830,1822,1815,1809,1804,1800,1796,1792,1790,
+1787,1785,1783,1781,1780,1778,1773,1770,1766,1760,1753,1746,1737,1727,1716,1702,1687,1672,1656,1641,
+1623,1603,1585,1565,1545,1525,1504,1484,1465,1444,1425,1407,1388,1370,1354,1336,1319,1304,1288,1274,
+1260,1245,1232,1217,1202,1188,1173,1157,1141,1126,1109,1094,1077,1060,1045,1028,1013,997,982,968,
+954,939,924,910,896,884,874,865,856,847,842,838,834,833,834,835,839,844,850,859,
+868,878,891,905,919,935,952,969,987,1005,1023,1041,1058,1075,1091,1105,1119,1131,1140,1147,
+1154,1156,1157,1158,1155,1152,1147,1139,1131,1122,1110,1097,1084,1070,1056,1041,1025,1011,997,984,
+970,956,943,932,921,910,901,892,883,876,868,860,852,843,833,823,811,799,785,770,
+753,735,715,694,672,648,623,598,570,543,516,488,461,433,405,377,351,325,299,275,
+250,227,203,179,155,132,109,85,61,36,10,-15,-42,-70,-99,-129,-159,-189,-220,-252,
+-284,-316,-348,-380,-412,-443,-473,-503,-532,-560,-588,-615,-641,-667,-693,-719,-745,-772,-799,-827,
+-856,-887,-919,-953,-989,-1028,-1068,-1110,-1155,-1202,-1251,-1302,-1354,-1409,-1466,-1524,-1583,-1643,-1704,-1765,
+-1827,-1887,-1949,-2009,-2069,-2129,-2188,-2245,-2302,-2359,-2414,-2469,-2522,-2574,-2626,-2677,-2727,-2776,-2824,-2872,
+-2917,-2962,-3006,-3048,-3089,-3129,-3167,-3202,-3236,-3268,-3297,-3324,-3350,-3373,-3394,-3413,-3430,-3445,-3458,-3471,
+-3482,-3493,-3503,-3512,-3522,-3533,-3544,-3556,-3570,-3585,-3602,-3620,-3640,-3662,-3686,-3712,-3739,-3768,-3798,-3829,
+-3861,-3892,-3924,-3955,-3985,-4015,-4042,-4068,-4091,-4113,-4132,-4148,-4162,-4173,-4181,-4187,-4191,-4193,-4194,-4193,
+-4191,-4189,-4186,-4183,-4181,-4180,-4180,-4182,-4186,-4192,-4200,-4209,-4220,-4234,-4250,-4267,-4287,-4308,-4329,-4353,
+-4377,-4402,-4427,-4451,-4473,-4496,-4517,-4537,-4556,-4573,-4589,-4604,-4616,-4626,-4635,-4641,-4645,-4650,-4654,-4657,
+-4660,-4664,-4667,-4672,-4677,-4684,-4692,-4701,-4713,-4726,-4741,-4759,-4778,-4799,-4821,-4844,-4869,-4896,-4923,-4951,
+-4981,-5010,-5041,-5072,-5104,-5136,-5168,-5200,-5231,-5263,-5295,-5326,-5356,-5386,-5416,-5445,-5473,-5500,-5527,-5553,
+-5577,-5601,-5624,-5645,-5666,-5685,-5702,-5718,-5733,-5746,-5757,-5767,-5775,-5782,-5787,-5791,-5794,-5797,-5798,-5800,
+-5800,-5801,-5802,-5803,-5805,-5808,-5811,-5816,-5822,-5829,-5837,-5846,-5857,-5868,-5880,-5894,-5907,-5920,-5932,-5944,
+-5955,-5965,-5974,-5980,-5986,-5989,-5989,-5987,-5981,-5972,-5960,-5945,-5929,-5908,-5887,-5862,-5835,-5807,-5775,-5746,
+-5715,-5686,-5661,-5630,-5617,-5608,-5576,-5554,-5535,-5488,-5449,-5438,-5432,-5425,-5418,-5416,-5421,-5430,-5442,-5459,
+-5477,-5497,-5523,-5552,-5578,-5600,-5616,-5626,-5632,-5634,-5637,-5643,-5652,-5663,-5676,-5692,-5707,-5722,-5738,-5751,
+-5765,-5778,-5793,-5808,-5822,-5835,-5847,-5857,-5865,-5874,-5881,-5890,-5900,-5908,-5910,-5910,-5909,-5911,-5918,-5926,
+-5936,-5949,-5960,-5974,-5989,-6003,-6013,-6024,-6037,-6048,-6060,-6075,-6093,-6114,-6137,-6156,-6172,-6184,-6194,-6207,
+-6221,-6234,-6244,-6253,-6266,-6279,-6294,-6308,-6322,-6341,-6363,-6384,-6408,-6432,-6451,-6464,-6473,-6482,-6489,-6494,
+-6497,-6498,-6499,-6499,-6498,-6501,-6506,-6514,-6525,-6535,-6541,-6549,-6557,-6566,-6576,-6586,-6592,-6594,-6595,-6593,
+-6590,-6586,-6581,-6576,-6569,-6564,-6558,-6554,-6551,-6548,-6546,-6545,-6545,-6544,-6540,-6536,-6532,-6528,-6523,-6517,
+-6507,-6496,-6486,-6475,-6466,-6458,-6453,-6448,-6442,-6435,-6429,-6422,-6415,-6406,-6397,-6390,-6383,-6376,-6369,-6362,
+-6355,-6348,-6342,-6336,-6329,-6323,-6317,-6310,-6305,-6298,-6290,-6284,-6277,-6270,-6264,-6260,-6255,-6252,-6254,-6256,
+-6253,-6249,-6243,-6233,-6223,-6213,-6202,-6192,-6183,-6174,-6168,-6164,-6159,-6152,-6145,-6136,-6123,-6108,-6092,-6074,
+-6057,-6042,-6028,-6016,-6006,-5991,-5970,-5953,-5937,-5913,-5892,-5878,-5864,-5852,-5839,-5818,-5796,-5774,-5751,-5730,
+-5707,-5680,-5653,-5626,-5599,-5578,-5554,-5526,-5501,-5473,-5444,-5415,-5390,-5375,-5354,-5326,-5298,-5272,-5253,-5241,
+-5223,-5194,-5163,-5136,-5111,-5090,-5071,-5045,-5011,-4975,-4936,-4896,-4844,-4773,-4699,-4639,-4599,-4577,-4559,-4540,
+-4521,-4503,-4490,-4478,-4466,-4452,-4438,-4425,-4402,-4378,-4365,-4358,-4349,-4338,-4328,-4319,-4309,-4296,-4284,-4272,
+-4260,-4245,-4231,-4215,-4196,-4177,-4158,-4140,-4123,-4107,-4091,-4076,-4061,-4047,-4034,-4021,-4009,-3997,-3985,-3972,
+-3959,-3946,-3933,-3921,-3908,-3896,-3883,-3871,-3860,-3849,-3837,-3825,-3812,-3798,-3784,-3771,-3758,-3746,-3733,-3721,
+-3708,-3695,-3682,-3669,-3655,-3641,-3626,-3611,-3595,-3579,-3564,-3548,-3531,-3513,-3494,-3475,-3455,-3434,-3415,-3396,
+-3374,-3351,-3330,-3308,-3287,-3267,-3250,-3233,-3214,-3194,-3177,-3163,-3150,-3134,-3120,-3110,-3099,-3086,-3073,-3063,
+-3053,-3044,-3034,-3024,-3013,-3002,-2990,-2977,-2963,-2951,-2939,-2927,-2913,-2895,-2873,-2847,-2820,-2793,-2765,-2740,
+-2719,-2700,-2679,-2657,-2631,-2604,-2582,-2561,-2539,-2518,-2496,-2475,-2454,-2433,-2413,-2393,-2373,-2351,-2330,-2310,
+-2289,-2269,-2250,-2232,-2214,-2196,-2179,-2162,-2147,-2131,-2116,-2101,-2086,-2072,-2059,-2047,-2035,-2024,-2013,-2002,
+-1990,-1980,-1969,-1956,-1944,-1931,-1919,-1906,-1892,-1880,-1866,-1852,-1838,-1824,-1809,-1794,-1779,-1763,-1748,-1734,
+-1719,-1704,-1690,-1677,-1665,-1654,-1644,-1635,-1626,-1616,-1607,-1598,-1590,-1581,-1573,-1564,-1554,-1543,-1532,-1521,
+-1509,-1497,-1484,-1470,-1455,-1439,-1422,-1403,-1384,-1365,-1345,-1325,-1305,-1284,-1262,-1241,-1219,-1198,-1176,-1153,
+-1131,-1109,-1088,-1068,-1048,-1028,-1009,-991,-972,-955,-940,-927,-915,-902,-890,-879,-867,-857,-844,-832,
+-821,-809,-797,-787,-775,-761,-748,-735,-718,-702,-686,-668,-649,-628,-606,-584,-559,-534,-509,-482,
+-456,-430,-405,-380,-353,-327,-305,-283,-260,-241,-222,-204,-191,-177,-163,-151,-143,-140,-141,-145,
+-152,-158,-168,-183,-198,-216,-240,-264,-289,-315,-344,-377,-411,-445,-478,-510,-541,-572,-607,-637,
+-658,-680,-695,-697,-698,-698,-695,-685,-670,-660,-650,-634,-619,-605,-584,-564,-549,-532,-513,-493,
+-469,-446,-425,-405,-384,-364,-346,-327,-308,-290,-274,-259,-245,-233,-223,-210,-197,-186,-175,-161,
+-151,-146,-141,-134,-128,-125,-121,-117,-114,-109,-104,-100,-97,-93,-90,-92,-95,-95,-96,-103,
+-110,-111,-111,-111,-116,-118,-118,-125,-128,-132,-144,-160,-172,-181,-191,-204,-215,-226,-238,-249,
+-261,-272,-281,-297,-315,-329,-342,-350,-360,-374,-380,-376,-366,-354,-341,-325,-302,-273,-240,-206,
+-167,-128,-87,-45,-12,17,49,70,77,79,76,70,62,49,29,11,-9,-33,-53,-75,
+-99,-125,-152,-179,-204,-227,-246,-260,-271,-279,-281,-275,-265,-248,-216,-170,-116,-55,8,67,
+123,173,216,254,287,311,331,355,381,406,430,452,474,496,516,535,552,566,579,587,
+594,597,597,595,590,581,570,557,541,523,503,482,459,436,413,389,366,344,322,303,
+285,268,255,245,238,236,237,242,251,264,282,304,331,363,398,436,478,524,572,622,
+676,729,784,840,895,950,1004,1057,1110,1159,1206,1250,1291,1328,1363,1385,1396,1415,1438,1455,
+1468,1478,1483,1488,1492,1495,1496,1496,1495,1492,1489,1484,1481,1477,1473,1470,1467,1464,1413,1409,
+1405,1401,1397,1392,1388,1384,1380,1376,1373,1370,1368,1366,1365,1364,1364,1364,1365,1366,1368,1369,
+1371,1373,1376,1379,1382,1386,1389,1393,1397,1400,1404,1408,1410,1413,1416,1419,1422,1425,1427,1430,
+1431,1434,1436,1438,1441,1443,1446,1449,1453,1457,1461,1466,1470,1476,1482,1488,1495,1501,1509,1517,
+1524,1532,1540,1548,1555,1563,1570,1578,1585,1592,1598,1605,1612,1620,1627,1634,1642,1651,1660,1669,
+1680,1691,1703,1716,1730,1744,1760,1776,1792,1809,1827,1844,1862,1880,1897,1914,1929,1944,1958,1971,
+1983,1993,2001,2007,2012,2015,2016,2015,2012,2009,2004,1997,1989,1978,1968,1958,1947,1936,1925,1914,
+1904,1894,1886,1878,1871,1866,1862,1860,1857,1857,1860,1865,1871,1878,1886,1895,1905,1916,1927,1938,
+1949,1961,1972,1982,1993,2002,2010,2017,2024,2030,2035,2039,2043,2045,2047,2048,2048,2048,2046,2045,
+2042,2039,2036,2032,2028,2023,2017,2011,2005,1999,1992,1985,1977,1968,1960,1951,1942,1931,1921,1910,
+1899,1888,1876,1865,1854,1843,1832,1821,1811,1801,1792,1784,1776,1770,1764,1759,1755,1751,1748,1746,
+1745,1743,1742,1741,1740,1738,1736,1732,1728,1723,1718,1711,1702,1692,1680,1666,1652,1636,1619,1600,
+1579,1558,1537,1515,1493,1470,1447,1424,1401,1378,1356,1335,1315,1295,1276,1258,1242,1226,1211,1198,
+1185,1173,1162,1151,1140,1129,1118,1106,1095,1084,1073,1061,1048,1035,1022,1009,996,983,968,955,
+941,926,911,895,880,867,855,842,829,819,811,803,796,791,788,785,784,786,788,792,
+799,806,816,827,839,852,867,883,900,917,935,953,971,988,1004,1020,1035,1048,1058,1068,
+1077,1084,1089,1091,1090,1088,1084,1079,1073,1064,1055,1044,1031,1018,1004,989,975,960,946,933,
+919,906,893,883,873,863,855,847,841,835,829,823,818,811,805,798,790,782,773,761,
+749,734,718,701,681,660,637,612,587,560,532,504,474,444,414,384,354,324,295,266,
+237,208,180,153,126,99,72,46,19,-7,-33,-60,-87,-114,-142,-170,-198,-227,-256,-285,
+-314,-344,-373,-401,-430,-458,-486,-513,-540,-566,-591,-615,-639,-663,-686,-709,-732,-755,-779,-803,
+-827,-854,-881,-910,-940,-972,-1006,-1042,-1081,-1120,-1162,-1206,-1252,-1300,-1349,-1399,-1453,-1507,-1561,-1618,
+-1674,-1732,-1790,-1848,-1907,-1965,-2024,-2083,-2141,-2200,-2258,-2316,-2374,-2431,-2488,-2544,-2601,-2658,-2713,-2768,
+-2823,-2876,-2928,-2980,-3030,-3078,-3125,-3171,-3214,-3254,-3293,-3330,-3364,-3396,-3426,-3452,-3476,-3499,-3518,-3536,
+-3553,-3568,-3582,-3594,-3607,-3619,-3630,-3643,-3655,-3668,-3683,-3698,-3715,-3733,-3752,-3773,-3794,-3817,-3840,-3865,
+-3891,-3916,-3942,-3966,-3990,-4014,-4036,-4056,-4075,-4092,-4107,-4119,-4130,-4138,-4144,-4148,-4150,-4150,-4149,-4148,
+-4145,-4142,-4139,-4136,-4134,-4134,-4134,-4136,-4141,-4148,-4157,-4168,-4181,-4198,-4217,-4238,-4261,-4286,-4312,-4340,
+-4370,-4400,-4430,-4460,-4490,-4519,-4547,-4573,-4598,-4621,-4643,-4662,-4679,-4694,-4706,-4716,-4724,-4729,-4733,-4735,
+-4737,-4739,-4739,-4740,-4740,-4742,-4744,-4748,-4754,-4761,-4770,-4782,-4795,-4811,-4829,-4849,-4871,-4895,-4921,-4948,
+-4977,-5007,-5038,-5070,-5103,-5136,-5170,-5203,-5237,-5270,-5303,-5335,-5367,-5398,-5428,-5457,-5484,-5511,-5537,-5561,
+-5584,-5606,-5626,-5645,-5663,-5679,-5694,-5708,-5721,-5733,-5743,-5751,-5758,-5765,-5770,-5775,-5778,-5780,-5782,-5784,
+-5785,-5786,-5787,-5788,-5790,-5792,-5794,-5798,-5802,-5808,-5815,-5822,-5831,-5841,-5852,-5863,-5876,-5888,-5901,-5914,
+-5926,-5938,-5950,-5961,-5971,-5979,-5986,-5990,-5992,-5992,-5988,-5983,-5974,-5963,-5950,-5933,-5915,-5895,-5871,-5849,
+-5822,-5795,-5769,-5741,-5719,-5700,-5685,-5668,-5631,-5587,-5564,-5554,-5546,-5536,-5527,-5524,-5521,-5522,-5529,-5544,
+-5564,-5585,-5605,-5621,-5634,-5647,-5658,-5667,-5673,-5676,-5678,-5681,-5686,-5691,-5702,-5714,-5724,-5735,-5748,-5761,
+-5771,-5780,-5792,-5808,-5824,-5831,-5837,-5845,-5853,-5862,-5875,-5885,-5891,-5894,-5895,-5891,-5884,-5877,-5877,-5880,
+-5885,-5895,-5912,-5931,-5952,-5972,-5992,-6012,-6031,-6049,-6065,-6079,-6094,-6112,-6132,-6155,-6177,-6192,-6204,-6216,
+-6226,-6231,-6234,-6238,-6240,-6243,-6251,-6263,-6278,-6297,-6316,-6337,-6360,-6385,-6411,-6436,-6457,-6472,-6481,-6484,
+-6483,-6479,-6474,-6472,-6475,-6479,-6484,-6490,-6498,-6505,-6510,-6515,-6520,-6527,-6533,-6537,-6540,-6542,-6542,-6541,
+-6539,-6534,-6526,-6519,-6513,-6509,-6504,-6499,-6494,-6494,-6497,-6499,-6501,-6503,-6504,-6503,-6502,-6500,-6497,-6492,
+-6486,-6479,-6471,-6464,-6457,-6450,-6443,-6438,-6432,-6425,-6418,-6409,-6401,-6392,-6385,-6378,-6371,-6365,-6360,-6355,
+-6349,-6342,-6334,-6327,-6319,-6312,-6305,-6300,-6294,-6287,-6280,-6272,-6265,-6257,-6248,-6241,-6237,-6234,-6231,-6227,
+-6225,-6222,-6217,-6209,-6199,-6188,-6179,-6170,-6160,-6150,-6142,-6133,-6126,-6119,-6106,-6093,-6082,-6070,-6057,-6040,
+-6022,-6007,-5993,-5981,-5972,-5964,-5958,-5951,-5937,-5916,-5899,-5883,-5870,-5862,-5849,-5835,-5823,-5801,-5775,-5756,
+-5732,-5701,-5676,-5651,-5621,-5589,-5561,-5532,-5491,-5450,-5415,-5369,-5320,-5280,-5245,-5215,-5191,-5164,-5134,-5114,
+-5099,-5071,-5041,-5023,-5005,-4981,-4957,-4932,-4912,-4892,-4862,-4831,-4798,-4756,-4716,-4686,-4657,-4632,-4610,-4590,
+-4575,-4561,-4543,-4524,-4504,-4485,-4467,-4451,-4434,-4417,-4402,-4388,-4375,-4362,-4348,-4335,-4324,-4312,-4298,-4285,
+-4270,-4254,-4239,-4223,-4207,-4190,-4174,-4157,-4141,-4125,-4109,-4093,-4078,-4063,-4049,-4034,-4021,-4007,-3994,-3981,
+-3968,-3956,-3943,-3930,-3918,-3906,-3894,-3882,-3870,-3859,-3847,-3834,-3820,-3807,-3793,-3780,-3767,-3753,-3739,-3725,
+-3711,-3696,-3681,-3666,-3650,-3634,-3618,-3601,-3583,-3565,-3547,-3528,-3509,-3489,-3468,-3448,-3427,-3406,-3385,-3365,
+-3345,-3323,-3300,-3279,-3259,-3240,-3222,-3204,-3187,-3171,-3156,-3142,-3129,-3117,-3105,-3095,-3085,-3076,-3069,-3063,
+-3055,-3046,-3038,-3029,-3021,-3012,-3003,-2994,-2984,-2973,-2961,-2948,-2934,-2918,-2902,-2884,-2866,-2845,-2823,-2801,
+-2778,-2753,-2728,-2704,-2681,-2658,-2636,-2620,-2602,-2581,-2561,-2541,-2520,-2500,-2479,-2459,-2439,-2418,-2398,-2377,
+-2357,-2338,-2320,-2301,-2283,-2265,-2248,-2231,-2214,-2198,-2182,-2166,-2151,-2135,-2120,-2105,-2091,-2078,-2065,-2053,
+-2041,-2029,-2016,-2005,-1992,-1980,-1968,-1955,-1942,-1928,-1915,-1901,-1887,-1872,-1857,-1841,-1825,-1810,-1794,-1779,
+-1763,-1748,-1733,-1718,-1704,-1691,-1678,-1666,-1654,-1643,-1633,-1623,-1613,-1603,-1593,-1583,-1573,-1563,-1553,-1542,
+-1531,-1520,-1508,-1496,-1484,-1471,-1457,-1442,-1426,-1409,-1391,-1373,-1354,-1334,-1314,-1294,-1273,-1253,-1232,-1211,
+-1191,-1170,-1149,-1128,-1107,-1086,-1067,-1049,-1031,-1013,-997,-981,-967,-954,-940,-926,-913,-899,-885,-872,
+-859,-846,-831,-816,-800,-785,-768,-751,-733,-713,-694,-675,-654,-630,-607,-583,-558,-534,-510,-485,
+-461,-438,-416,-394,-374,-354,-335,-317,-301,-288,-276,-265,-255,-246,-237,-230,-226,-227,-229,-234,
+-240,-250,-264,-282,-300,-322,-346,-371,-399,-423,-449,-477,-505,-535,-565,-594,-622,-650,-679,-704,
+-728,-757,-784,-800,-803,-800,-795,-790,-780,-770,-761,-750,-737,-722,-706,-689,-670,-652,-635,-616,
+-595,-577,-557,-533,-515,-498,-477,-455,-433,-415,-399,-383,-369,-356,-345,-332,-318,-306,-297,-285,
+-273,-266,-261,-255,-250,-247,-242,-237,-231,-226,-221,-217,-212,-207,-201,-196,-194,-195,-193,-189,
+-187,-184,-176,-167,-156,-149,-141,-128,-120,-118,-114,-109,-107,-106,-104,-103,-105,-109,-110,-111,
+-116,-118,-119,-123,-125,-134,-149,-159,-170,-185,-191,-190,-187,-182,-170,-151,-128,-98,-61,-21,
+16,49,82,119,151,176,199,220,232,233,223,209,194,172,145,119,90,58,30,2,
+-28,-56,-84,-113,-139,-165,-184,-198,-210,-218,-220,-213,-200,-182,-147,-97,-46,4,55,103,
+148,186,217,243,263,281,298,316,336,357,380,402,423,443,460,475,488,498,505,510,
+512,511,507,502,494,484,472,459,444,427,411,394,376,359,343,327,313,300,289,279,
+271,267,265,265,270,278,288,302,319,339,364,390,419,451,485,521,560,600,643,685,
+727,771,815,858,901,943,983,1021,1059,1093,1124,1157,1187,1211,1236,1258,1275,1298,1320,1339,
+1356,1370,1382,1392,1401,1409,1414,1419,1423,1426,1427,1427,1426,1425,1423,1421,1419,1416,1413,1348,
+1345,1341,1336,1332,1327,1320,1314,1308,1302,1297,1292,1288,1283,1280,1277,1275,1273,1273,1273,1275,
+1276,1279,1282,1286,1290,1295,1300,1305,1310,1315,1322,1327,1331,1336,1341,1345,1349,1352,1355,1357,
+1359,1362,1363,1365,1366,1368,1369,1371,1373,1376,1378,1382,1386,1390,1395,1400,1406,1412,1419,1427,
+1434,1442,1450,1459,1467,1476,1484,1492,1500,1508,1516,1524,1531,1539,1547,1554,1560,1567,1575,1583,
+1591,1600,1610,1619,1630,1641,1653,1666,1681,1696,1711,1728,1745,1762,1780,1797,1814,1832,1849,1865,
+1880,1895,1908,1920,1931,1940,1948,1953,1957,1959,1959,1957,1954,1949,1943,1935,1927,1917,1907,1897,
+1886,1876,1865,1855,1845,1835,1827,1820,1815,1810,1808,1807,1807,1810,1813,1817,1823,1830,1839,1848,
+1858,1868,1879,1890,1900,1911,1921,1930,1939,1947,1955,1962,1968,1973,1976,1979,1982,1983,1982,1982,
+1981,1978,1976,1972,1968,1963,1958,1952,1947,1940,1933,1927,1919,1911,1903,1894,1885,1875,1866,1856,
+1846,1836,1826,1816,1806,1796,1786,1777,1769,1760,1752,1745,1738,1732,1727,1722,1719,1716,1713,1711,
+1709,1708,1707,1706,1705,1705,1703,1702,1700,1696,1691,1685,1677,1668,1658,1647,1635,1620,1604,1587,
+1569,1549,1528,1506,1482,1460,1437,1413,1391,1368,1345,1322,1301,1281,1261,1243,1227,1212,1195,1181,
+1170,1157,1145,1135,1126,1115,1106,1096,1086,1076,1066,1057,1047,1035,1023,1011,997,985,971,957,
+942,927,911,895,879,862,846,831,817,802,787,776,767,757,749,743,738,735,733,733,
+735,738,743,751,759,769,781,795,809,825,841,858,876,893,910,925,939,954,968,980,
+991,1000,1007,1014,1017,1018,1016,1014,1010,1003,996,987,977,965,952,939,925,911,897,883,
+870,857,844,832,822,811,803,795,788,782,777,773,768,763,758,754,749,744,738,730,
+721,710,698,685,670,653,633,611,589,566,540,513,484,455,425,395,364,333,301,270,
+238,206,176,145,114,84,54,24,-4,-33,-61,-89,-118,-146,-174,-201,-229,-257,-285,-312,
+-340,-367,-394,-421,-447,-473,-499,-523,-548,-571,-594,-617,-639,-660,-681,-702,-723,-743,-764,-785,
+-806,-829,-852,-877,-902,-928,-957,-986,-1018,-1052,-1087,-1124,-1162,-1202,-1244,-1288,-1333,-1380,-1428,-1478,
+-1528,-1580,-1634,-1688,-1743,-1798,-1855,-1911,-1969,-2028,-2086,-2146,-2206,-2267,-2327,-2388,-2449,-2511,-2572,-2634,
+-2695,-2756,-2816,-2875,-2933,-2989,-3045,-3098,-3150,-3201,-3249,-3294,-3337,-3377,-3414,-3448,-3480,-3509,-3536,-3560,
+-3582,-3602,-3620,-3636,-3651,-3665,-3678,-3690,-3702,-3715,-3727,-3740,-3754,-3768,-3783,-3799,-3815,-3833,-3851,-3870,
+-3890,-3909,-3928,-3947,-3966,-3984,-4002,-4018,-4032,-4045,-4057,-4066,-4073,-4079,-4084,-4086,-4086,-4086,-4085,-4082,
+-4079,-4076,-4073,-4070,-4069,-4069,-4070,-4073,-4078,-4086,-4097,-4110,-4125,-4144,-4165,-4188,-4214,-4243,-4274,-4306,
+-4341,-4376,-4412,-4448,-4485,-4521,-4555,-4589,-4621,-4651,-4679,-4705,-4729,-4750,-4768,-4784,-4796,-4806,-4812,-4817,
+-4820,-4821,-4821,-4820,-4818,-4816,-4814,-4813,-4813,-4813,-4817,-4822,-4828,-4838,-4849,-4863,-4880,-4898,-4919,-4942,
+-4967,-4994,-5022,-5052,-5084,-5116,-5149,-5183,-5217,-5251,-5284,-5318,-5350,-5382,-5413,-5443,-5472,-5500,-5526,-5550,
+-5574,-5595,-5616,-5635,-5652,-5669,-5683,-5696,-5708,-5719,-5728,-5736,-5743,-5749,-5754,-5758,-5762,-5764,-5766,-5768,
+-5769,-5769,-5770,-5771,-5771,-5773,-5774,-5776,-5780,-5783,-5789,-5794,-5801,-5809,-5818,-5828,-5839,-5851,-5863,-5875,
+-5889,-5902,-5914,-5929,-5942,-5954,-5966,-5975,-5983,-5990,-5995,-5998,-5997,-5995,-5990,-5984,-5976,-5963,-5950,-5935,
+-5917,-5896,-5877,-5854,-5830,-5810,-5784,-5776,-5775,-5737,-5692,-5671,-5656,-5642,-5635,-5628,-5624,-5622,-5623,-5626,
+-5632,-5644,-5658,-5672,-5684,-5694,-5700,-5702,-5705,-5706,-5703,-5703,-5703,-5700,-5697,-5699,-5705,-5714,-5727,-5740,
+-5755,-5771,-5786,-5801,-5815,-5826,-5837,-5845,-5850,-5857,-5864,-5871,-5878,-5882,-5880,-5873,-5862,-5852,-5845,-5844,
+-5851,-5861,-5873,-5891,-5911,-5935,-5960,-5986,-6012,-6037,-6059,-6080,-6101,-6120,-6139,-6160,-6180,-6198,-6214,-6225,
+-6233,-6238,-6238,-6232,-6225,-6218,-6212,-6212,-6221,-6237,-6259,-6288,-6317,-6345,-6377,-6407,-6432,-6450,-6460,-6462,
+-6459,-6459,-6459,-6456,-6456,-6456,-6457,-6459,-6459,-6462,-6467,-6472,-6477,-6479,-6479,-6477,-6475,-6474,-6472,-6469,
+-6466,-6462,-6457,-6452,-6449,-6449,-6449,-6451,-6453,-6456,-6460,-6463,-6466,-6467,-6467,-6466,-6465,-6465,-6465,-6463,
+-6461,-6457,-6452,-6447,-6442,-6436,-6430,-6424,-6417,-6410,-6402,-6393,-6384,-6376,-6367,-6358,-6348,-6340,-6335,-6330,
+-6324,-6317,-6310,-6304,-6300,-6297,-6293,-6288,-6283,-6277,-6270,-6264,-6257,-6245,-6234,-6226,-6216,-6205,-6196,-6189,
+-6185,-6182,-6175,-6167,-6161,-6155,-6147,-6138,-6129,-6119,-6110,-6101,-6093,-6083,-6073,-6066,-6057,-6041,-6026,-6013,
+-6001,-5990,-5980,-5972,-5964,-5955,-5946,-5935,-5921,-5908,-5893,-5876,-5862,-5854,-5842,-5828,-5819,-5806,-5789,-5764,
+-5725,-5684,-5643,-5596,-5548,-5507,-5470,-5435,-5402,-5373,-5346,-5314,-5279,-5255,-5241,-5224,-5201,-5179,-5157,-5135,
+-5115,-5094,-5072,-5050,-5027,-4999,-4969,-4940,-4916,-4895,-4872,-4846,-4818,-4788,-4754,-4722,-4692,-4664,-4639,-4617,
+-4597,-4577,-4558,-4540,-4521,-4501,-4481,-4463,-4446,-4430,-4415,-4401,-4386,-4372,-4358,-4344,-4329,-4315,-4301,-4286,
+-4271,-4256,-4240,-4224,-4209,-4193,-4176,-4160,-4144,-4128,-4112,-4096,-4080,-4065,-4049,-4035,-4020,-4006,-3992,-3979,
+-3965,-3952,-3939,-3926,-3913,-3900,-3887,-3873,-3860,-3847,-3834,-3820,-3806,-3792,-3777,-3762,-3747,-3732,-3716,-3700,
+-3684,-3668,-3651,-3634,-3617,-3599,-3580,-3561,-3543,-3524,-3505,-3485,-3465,-3445,-3425,-3405,-3384,-3364,-3344,-3324,
+-3305,-3287,-3268,-3248,-3230,-3212,-3195,-3180,-3165,-3150,-3138,-3126,-3114,-3105,-3097,-3088,-3081,-3072,-3064,-3058,
+-3052,-3046,-3040,-3034,-3027,-3020,-3013,-3004,-2996,-2988,-2978,-2967,-2956,-2943,-2930,-2915,-2900,-2884,-2867,-2849,
+-2831,-2813,-2795,-2777,-2755,-2728,-2704,-2683,-2666,-2651,-2634,-2614,-2595,-2574,-2554,-2535,-2514,-2494,-2474,-2455,
+-2435,-2416,-2397,-2379,-2362,-2345,-2328,-2311,-2294,-2278,-2263,-2248,-2232,-2217,-2201,-2186,-2171,-2157,-2144,-2131,
+-2119,-2106,-2094,-2082,-2070,-2057,-2045,-2032,-2019,-2006,-1992,-1977,-1962,-1946,-1931,-1914,-1898,-1881,-1864,-1847,
+-1830,-1813,-1797,-1780,-1764,-1749,-1734,-1719,-1705,-1692,-1679,-1666,-1654,-1642,-1630,-1618,-1607,-1595,-1585,-1574,
+-1564,-1554,-1544,-1533,-1523,-1511,-1499,-1487,-1474,-1460,-1445,-1430,-1414,-1398,-1380,-1362,-1343,-1324,-1305,-1284,
+-1264,-1245,-1225,-1206,-1187,-1167,-1148,-1130,-1112,-1095,-1078,-1062,-1046,-1030,-1013,-996,-980,-964,-948,-931,
+-914,-899,-882,-866,-850,-832,-813,-794,-775,-756,-733,-709,-685,-658,-630,-606,-581,-555,-529,-503,
+-479,-457,-436,-416,-400,-384,-369,-357,-345,-334,-325,-319,-315,-315,-316,-317,-321,-328,-335,-344,
+-356,-368,-382,-400,-420,-442,-466,-493,-520,-544,-568,-594,-619,-646,-672,-696,-720,-742,-764,-787,
+-808,-830,-855,-880,-895,-898,-898,-895,-886,-879,-873,-864,-854,-842,-827,-808,-789,-773,-758,-742,
+-724,-705,-683,-663,-650,-632,-608,-583,-562,-546,-531,-515,-502,-489,-472,-457,-446,-433,-422,-413,
+-402,-394,-389,-384,-381,-378,-372,-367,-362,-352,-346,-342,-336,-331,-326,-316,-306,-301,-294,-285,
+-277,-267,-257,-247,-232,-214,-199,-184,-170,-161,-153,-143,-130,-117,-107,-101,-96,-89,-82,-77,
+-71,-61,-52,-45,-37,-32,-27,-19,-5,3,3,3,7,11,18,31,52,77,105,135,
+164,185,201,216,227,235,241,248,251,250,248,247,239,224,212,202,183,161,135,103,
+72,38,7,-20,-51,-78,-96,-113,-128,-138,-140,-128,-102,-74,-51,-29,-13,0,19,45,
+73,104,133,157,176,196,219,242,265,287,308,327,345,361,374,385,394,401,404,406,
+405,402,396,389,381,371,360,348,336,323,309,295,284,276,268,262,257,253,252,253,
+256,263,273,285,300,317,338,359,385,412,440,472,504,535,569,602,634,668,701,736,
+768,797,830,862,894,927,952,977,1003,1027,1048,1069,1087,1103,1120,1141,1162,1182,1202,1220,
+1237,1251,1265,1278,1289,1300,1309,1317,1325,1331,1338,1343,1346,1350,1352,1353,1353,1353,1351,1348,
+1271,1269,1266,1263,1259,1254,1249,1243,1238,1233,1226,1221,1216,1211,1208,1205,1203,1201,1201,1201,
+1202,1205,1208,1212,1216,1221,1227,1232,1238,1245,1251,1257,1262,1267,1272,1276,1280,1283,1286,1288,
+1290,1291,1292,1293,1294,1295,1295,1296,1297,1298,1301,1303,1305,1309,1314,1318,1325,1331,1338,1346,
+1355,1363,1373,1382,1392,1401,1411,1421,1430,1439,1448,1457,1465,1473,1480,1488,1495,1502,1508,1516,
+1523,1529,1537,1544,1552,1561,1571,1581,1592,1604,1616,1630,1644,1659,1675,1692,1708,1726,1744,1761,
+1777,1794,1810,1825,1839,1851,1863,1873,1881,1887,1892,1895,1896,1895,1893,1889,1884,1877,1869,1861,
+1851,1841,1830,1818,1807,1797,1787,1778,1769,1762,1756,1752,1748,1746,1746,1747,1750,1754,1760,1767,
+1775,1784,1793,1803,1813,1824,1834,1845,1855,1864,1873,1882,1889,1895,1901,1905,1908,1911,1912,1913,
+1912,1911,1908,1905,1901,1897,1892,1886,1880,1874,1867,1860,1853,1845,1837,1829,1822,1814,1806,1798,
+1789,1781,1773,1765,1757,1749,1741,1734,1727,1720,1714,1708,1703,1698,1694,1690,1687,1684,1682,1681,
+1680,1679,1678,1677,1678,1678,1677,1676,1675,1671,1668,1664,1659,1653,1646,1638,1629,1618,1605,1591,
+1575,1558,1542,1523,1504,1485,1464,1443,1422,1401,1380,1359,1338,1319,1301,1282,1266,1251,1236,1223,
+1210,1196,1183,1171,1160,1150,1139,1127,1116,1105,1093,1082,1071,1058,1045,1032,1018,1004,989,973,
+956,939,921,902,884,865,846,828,810,793,776,759,744,731,719,709,700,692,686,681,
+678,677,677,680,685,691,699,709,720,732,745,760,775,791,808,824,841,856,869,883,
+895,906,916,925,931,936,939,939,939,937,932,926,918,909,900,889,878,865,852,838,
+825,811,798,786,775,763,754,744,736,729,721,716,712,706,701,696,692,687,683,678,
+672,665,656,645,634,621,606,590,571,551,530,507,481,455,428,399,370,340,309,277,
+245,212,180,148,116,84,52,21,-10,-40,-71,-101,-131,-160,-189,-217,-246,-273,-301,-328,
+-355,-381,-407,-432,-458,-482,-506,-530,-553,-575,-597,-619,-639,-660,-680,-699,-719,-738,-757,-776,
+-796,-815,-836,-857,-879,-901,-925,-950,-976,-1004,-1032,-1063,-1095,-1128,-1163,-1199,-1237,-1277,-1318,-1360,
+-1404,-1449,-1496,-1544,-1593,-1644,-1696,-1749,-1804,-1860,-1917,-1976,-2036,-2096,-2158,-2221,-2284,-2349,-2414,-2479,
+-2544,-2610,-2676,-2741,-2806,-2869,-2931,-2993,-3052,-3109,-3164,-3217,-3267,-3315,-3359,-3401,-3440,-3476,-3509,-3539,
+-3567,-3592,-3614,-3634,-3653,-3669,-3684,-3697,-3710,-3722,-3734,-3746,-3757,-3769,-3781,-3793,-3806,-3820,-3834,-3848,
+-3863,-3877,-3892,-3907,-3921,-3935,-3948,-3960,-3972,-3981,-3990,-3998,-4003,-4008,-4011,-4012,-4012,-4011,-4010,-4007,
+-4004,-4001,-3999,-3997,-3995,-3995,-3997,-4000,-4007,-4015,-4025,-4039,-4056,-4075,-4098,-4123,-4151,-4182,-4216,-4251,
+-4289,-4328,-4369,-4411,-4453,-4495,-4537,-4577,-4617,-4655,-4691,-4725,-4756,-4784,-4810,-4832,-4852,-4867,-4880,-4890,
+-4897,-4901,-4903,-4902,-4900,-4897,-4894,-4890,-4885,-4881,-4878,-4877,-4877,-4880,-4884,-4890,-4899,-4910,-4924,-4940,
+-4959,-4981,-5003,-5028,-5056,-5084,-5115,-5146,-5178,-5212,-5245,-5278,-5311,-5344,-5376,-5407,-5438,-5467,-5495,-5522,
+-5547,-5571,-5593,-5613,-5633,-5650,-5666,-5681,-5694,-5706,-5716,-5724,-5732,-5738,-5743,-5748,-5751,-5753,-5755,-5757,
+-5757,-5758,-5757,-5756,-5756,-5756,-5755,-5756,-5757,-5758,-5761,-5764,-5769,-5774,-5780,-5788,-5796,-5806,-5817,-5829,
+-5842,-5855,-5870,-5886,-5900,-5915,-5930,-5943,-5957,-5970,-5982,-5992,-5999,-6004,-6008,-6009,-6010,-6008,-6002,-5997,
+-5987,-5975,-5962,-5947,-5930,-5911,-5891,-5870,-5849,-5829,-5808,-5789,-5773,-5760,-5748,-5739,-5734,-5735,-5738,-5741,
+-5745,-5747,-5748,-5750,-5753,-5753,-5746,-5737,-5728,-5719,-5714,-5709,-5702,-5697,-5695,-5698,-5703,-5711,-5721,-5732,
+-5743,-5757,-5775,-5788,-5800,-5815,-5827,-5839,-5850,-5859,-5866,-5872,-5875,-5875,-5871,-5863,-5854,-5843,-5831,-5821,
+-5819,-5822,-5833,-5850,-5868,-5889,-5914,-5941,-5965,-5990,-6017,-6044,-6067,-6090,-6111,-6130,-6149,-6167,-6181,-6193,
+-6201,-6205,-6208,-6206,-6200,-6192,-6185,-6180,-6182,-6190,-6206,-6230,-6264,-6301,-6334,-6362,-6388,-6407,-6417,-6423,
+-6423,-6422,-6423,-6421,-6417,-6417,-6416,-6412,-6408,-6405,-6403,-6397,-6393,-6394,-6394,-6389,-6384,-6380,-6375,-6370,
+-6365,-6363,-6364,-6368,-6372,-6376,-6381,-6387,-6394,-6399,-6405,-6410,-6413,-6414,-6414,-6414,-6415,-6416,-6416,-6415,
+-6414,-6413,-6409,-6406,-6403,-6400,-6397,-6393,-6390,-6386,-6381,-6375,-6367,-6357,-6348,-6338,-6329,-6321,-6315,-6309,
+-6303,-6296,-6291,-6285,-6280,-6276,-6272,-6268,-6264,-6259,-6253,-6245,-6235,-6223,-6212,-6201,-6189,-6177,-6165,-6153,
+-6144,-6136,-6130,-6125,-6119,-6113,-6108,-6103,-6097,-6090,-6080,-6071,-6063,-6056,-6049,-6041,-6033,-6023,-6014,-6006,
+-5998,-5992,-5989,-5983,-5976,-5968,-5959,-5946,-5929,-5908,-5886,-5866,-5848,-5826,-5806,-5791,-5781,-5771,-5747,-5713,
+-5676,-5630,-5580,-5528,-5473,-5428,-5401,-5381,-5367,-5358,-5354,-5341,-5315,-5285,-5263,-5254,-5248,-5227,-5196,-5164,
+-5132,-5103,-5076,-5048,-5020,-4992,-4966,-4942,-4919,-4895,-4869,-4841,-4808,-4774,-4742,-4712,-4683,-4656,-4631,-4607,
+-4584,-4561,-4540,-4520,-4501,-4482,-4464,-4447,-4429,-4414,-4398,-4382,-4367,-4352,-4337,-4323,-4308,-4293,-4278,-4263,
+-4248,-4233,-4217,-4202,-4186,-4170,-4154,-4138,-4122,-4107,-4092,-4076,-4060,-4045,-4031,-4016,-4002,-3987,-3973,-3959,
+-3945,-3932,-3919,-3905,-3891,-3877,-3864,-3850,-3836,-3821,-3807,-3792,-3777,-3761,-3745,-3729,-3712,-3696,-3679,-3661,
+-3643,-3625,-3607,-3589,-3571,-3551,-3533,-3515,-3495,-3477,-3457,-3438,-3419,-3398,-3377,-3359,-3341,-3324,-3307,-3290,
+-3272,-3254,-3238,-3222,-3205,-3190,-3176,-3163,-3151,-3139,-3128,-3118,-3108,-3099,-3092,-3085,-3078,-3072,-3064,-3058,
+-3052,-3047,-3042,-3037,-3031,-3026,-3019,-3013,-3006,-2999,-2991,-2982,-2973,-2963,-2952,-2940,-2928,-2916,-2902,-2887,
+-2873,-2858,-2844,-2829,-2813,-2797,-2780,-2762,-2744,-2728,-2711,-2692,-2671,-2651,-2632,-2612,-2594,-2575,-2556,-2537,
+-2518,-2500,-2482,-2465,-2448,-2430,-2413,-2397,-2381,-2366,-2352,-2337,-2323,-2308,-2293,-2278,-2264,-2251,-2238,-2225,
+-2211,-2199,-2186,-2174,-2162,-2149,-2136,-2124,-2110,-2096,-2082,-2067,-2052,-2036,-2019,-2003,-1986,-1968,-1950,-1932,
+-1914,-1896,-1877,-1859,-1841,-1823,-1805,-1788,-1771,-1755,-1740,-1725,-1710,-1697,-1683,-1670,-1657,-1645,-1633,-1622,
+-1611,-1601,-1590,-1580,-1569,-1559,-1548,-1537,-1526,-1514,-1502,-1489,-1476,-1463,-1449,-1435,-1419,-1403,-1388,-1371,
+-1353,-1335,-1318,-1300,-1282,-1265,-1247,-1229,-1212,-1195,-1178,-1162,-1146,-1130,-1112,-1094,-1075,-1056,-1037,-1018,
+-999,-978,-959,-940,-919,-897,-875,-851,-828,-806,-779,-750,-721,-694,-667,-641,-614,-586,-560,-536,
+-515,-495,-475,-457,-441,-426,-413,-401,-392,-386,-382,-382,-386,-392,-399,-409,-420,-431,-442,-457,
+-475,-496,-516,-536,-555,-577,-601,-624,-648,-675,-701,-726,-747,-768,-788,-806,-824,-843,-860,-875,
+-891,-907,-923,-941,-960,-978,-990,-995,-993,-988,-978,-966,-955,-946,-936,-925,-911,-897,-884,-868,
+-849,-830,-815,-799,-778,-759,-739,-716,-693,-675,-659,-640,-621,-606,-594,-584,-572,-558,-549,-541,
+-531,-526,-524,-520,-513,-504,-498,-494,-488,-484,-480,-472,-467,-459,-445,-435,-429,-420,-409,-395,
+-382,-366,-347,-332,-317,-298,-281,-267,-256,-243,-226,-213,-202,-190,-181,-170,-152,-140,-131,-117,
+-102,-89,-76,-60,-45,-28,-12,0,15,33,46,60,76,91,105,117,125,128,133,145,
+157,167,176,179,176,177,178,172,166,160,152,146,144,142,140,135,131,124,115,102,
+85,67,46,24,0,-21,-33,-46,-62,-72,-76,-78,-75,-70,-68,-66,-65,-64,-56,-39,
+-15,11,39,66,90,113,136,158,178,197,215,231,245,257,267,275,280,284,285,284,
+281,277,272,265,257,249,240,231,222,215,206,198,191,187,184,184,188,194,202,213,
+226,241,261,285,311,338,367,398,429,461,494,528,560,589,611,627,653,695,734,764,
+790,814,841,866,887,910,930,949,967,983,997,1011,1023,1035,1048,1060,1072,1084,1095,1106,
+1118,1130,1142,1154,1165,1177,1188,1199,1210,1220,1229,1237,1244,1251,1257,1262,1266,1269,1271,1272,
+1271,1173,1174,1173,1171,1169,1167,1163,1159,1155,1151,1146,1143,1139,1136,1134,1132,1131,1131,1132,
+1133,1135,1138,1142,1146,1151,1156,1162,1168,1173,1178,1184,1189,1193,1197,1201,1204,1206,1208,1210,
+1210,1210,1211,1210,1210,1209,1209,1209,1209,1209,1211,1213,1215,1219,1223,1228,1234,1241,1249,1258,
+1267,1278,1288,1299,1311,1322,1333,1345,1356,1367,1378,1389,1398,1408,1417,1425,1433,1440,1447,1454,
+1460,1466,1472,1479,1485,1491,1498,1505,1513,1522,1532,1542,1553,1566,1579,1593,1607,1622,1637,1653,
+1669,1685,1701,1717,1732,1746,1759,1772,1783,1793,1801,1807,1811,1815,1816,1815,1814,1810,1805,1799,
+1791,1783,1774,1764,1754,1744,1734,1724,1715,1706,1699,1693,1688,1684,1682,1681,1681,1683,1687,1692,
+1698,1706,1714,1722,1732,1741,1751,1761,1771,1780,1789,1798,1806,1812,1818,1823,1828,1830,1832,1834,
+1834,1833,1831,1828,1824,1820,1815,1810,1804,1798,1792,1785,1779,1772,1766,1759,1752,1746,1739,1733,
+1727,1721,1715,1709,1704,1698,1693,1688,1684,1680,1675,1671,1668,1665,1662,1660,1658,1656,1655,1654,
+1653,1652,1651,1651,1651,1651,1652,1652,1651,1650,1648,1646,1644,1642,1638,1633,1627,1619,1611,1602,
+1591,1579,1567,1553,1540,1526,1511,1495,1479,1461,1444,1426,1408,1391,1374,1356,1340,1325,1310,1296,
+1281,1267,1254,1240,1226,1213,1199,1185,1171,1157,1143,1128,1113,1097,1081,1064,1046,1028,1009,991,
+972,952,932,912,891,871,850,829,809,788,768,749,731,715,699,685,672,661,650,641,
+634,628,624,622,622,623,627,632,639,647,657,668,680,694,707,721,737,752,767,782,
+794,806,819,829,838,847,853,858,861,862,862,861,857,852,846,839,830,821,810,798,
+786,774,761,749,736,725,714,702,692,683,674,667,660,651,645,640,635,630,624,619,
+613,607,599,592,583,573,562,549,534,518,500,480,459,437,413,388,362,334,307,277,
+247,217,185,153,121,88,56,24,-7,-39,-70,-101,-132,-162,-192,-221,-250,-278,-306,-333,
+-360,-386,-411,-436,-461,-485,-508,-531,-554,-576,-597,-618,-639,-660,-679,-699,-718,-738,-756,-775,
+-794,-813,-833,-852,-872,-893,-914,-936,-958,-982,-1007,-1032,-1058,-1086,-1115,-1145,-1177,-1209,-1243,-1278,
+-1315,-1353,-1393,-1434,-1476,-1521,-1567,-1615,-1664,-1715,-1768,-1822,-1879,-1937,-1997,-2058,-2120,-2185,-2251,-2317,
+-2384,-2451,-2520,-2588,-2657,-2724,-2792,-2858,-2922,-2985,-3046,-3105,-3162,-3216,-3267,-3315,-3361,-3403,-3442,-3478,
+-3511,-3542,-3569,-3594,-3616,-3636,-3654,-3670,-3684,-3698,-3710,-3722,-3733,-3744,-3755,-3765,-3776,-3787,-3798,-3810,
+-3821,-3833,-3844,-3856,-3867,-3878,-3889,-3899,-3908,-3916,-3924,-3929,-3935,-3938,-3940,-3942,-3942,-3941,-3940,-3937,
+-3935,-3932,-3929,-3927,-3926,-3926,-3928,-3931,-3936,-3944,-3954,-3967,-3983,-4002,-4024,-4049,-4077,-4108,-4142,-4179,
+-4218,-4259,-4303,-4348,-4394,-4440,-4487,-4534,-4580,-4624,-4668,-4710,-4749,-4785,-4819,-4849,-4877,-4901,-4921,-4937,
+-4951,-4962,-4969,-4973,-4975,-4974,-4970,-4966,-4960,-4954,-4948,-4942,-4938,-4934,-4932,-4932,-4934,-4938,-4944,-4952,
+-4964,-4977,-4993,-5011,-5031,-5055,-5080,-5106,-5135,-5165,-5196,-5228,-5260,-5292,-5325,-5357,-5389,-5421,-5451,-5480,
+-5508,-5535,-5560,-5584,-5606,-5626,-5645,-5662,-5678,-5692,-5705,-5715,-5725,-5733,-5739,-5744,-5748,-5751,-5753,-5754,
+-5753,-5753,-5751,-5750,-5748,-5745,-5742,-5740,-5738,-5737,-5737,-5737,-5738,-5739,-5742,-5746,-5752,-5759,-5766,-5777,
+-5789,-5799,-5813,-5828,-5841,-5857,-5872,-5889,-5906,-5922,-5937,-5953,-5966,-5977,-5989,-5998,-6006,-6012,-6015,-6017,
+-6016,-6012,-6006,-5997,-5987,-5976,-5964,-5950,-5937,-5920,-5901,-5883,-5868,-5855,-5843,-5834,-5830,-5830,-5832,-5832,
+-5833,-5834,-5834,-5833,-5830,-5819,-5798,-5772,-5745,-5724,-5711,-5702,-5695,-5689,-5688,-5693,-5701,-5710,-5722,-5732,
+-5742,-5750,-5759,-5767,-5775,-5786,-5797,-5809,-5824,-5838,-5849,-5860,-5866,-5869,-5870,-5869,-5863,-5853,-5841,-5830,
+-5822,-5820,-5821,-5826,-5838,-5855,-5873,-5894,-5916,-5939,-5960,-5982,-6006,-6029,-6050,-6071,-6090,-6106,-6123,-6139,
+-6149,-6155,-6160,-6161,-6159,-6154,-6149,-6145,-6145,-6145,-6149,-6160,-6176,-6199,-6226,-6258,-6290,-6312,-6324,-6334,
+-6338,-6338,-6336,-6332,-6329,-6324,-6317,-6312,-6310,-6309,-6307,-6301,-6294,-6288,-6281,-6274,-6266,-6260,-6258,-6260,
+-6263,-6266,-6269,-6274,-6279,-6283,-6291,-6299,-6306,-6314,-6321,-6328,-6333,-6336,-6337,-6339,-6340,-6341,-6342,-6344,
+-6344,-6344,-6344,-6345,-6345,-6347,-6347,-6348,-6350,-6351,-6351,-6348,-6342,-6336,-6330,-6322,-6313,-6305,-6299,-6293,
+-6287,-6281,-6277,-6271,-6265,-6259,-6252,-6245,-6239,-6233,-6226,-6217,-6206,-6196,-6183,-6169,-6156,-6142,-6129,-6118,
+-6108,-6100,-6094,-6088,-6081,-6072,-6066,-6062,-6058,-6054,-6048,-6040,-6034,-6030,-6029,-6028,-6025,-6020,-6013,-6009,
+-6009,-6008,-6004,-5998,-5992,-5983,-5970,-5953,-5935,-5913,-5888,-5859,-5828,-5794,-5762,-5736,-5712,-5683,-5647,-5596,
+-5540,-5491,-5446,-5403,-5370,-5346,-5327,-5313,-5305,-5302,-5302,-5301,-5298,-5291,-5281,-5265,-5243,-5216,-5186,-5152,
+-5119,-5088,-5057,-5028,-4999,-4971,-4942,-4915,-4887,-4859,-4831,-4803,-4776,-4748,-4720,-4693,-4669,-4644,-4619,-4595,
+-4572,-4546,-4522,-4499,-4476,-4455,-4435,-4416,-4399,-4383,-4365,-4349,-4333,-4316,-4299,-4283,-4266,-4249,-4233,-4218,
+-4203,-4187,-4171,-4157,-4142,-4126,-4111,-4096,-4081,-4067,-4052,-4037,-4023,-4009,-3995,-3981,-3967,-3954,-3941,-3928,
+-3914,-3901,-3887,-3873,-3859,-3846,-3832,-3818,-3804,-3789,-3775,-3759,-3743,-3727,-3710,-3694,-3676,-3658,-3640,-3622,
+-3604,-3585,-3566,-3548,-3529,-3510,-3491,-3472,-3454,-3436,-3418,-3400,-3382,-3365,-3347,-3330,-3313,-3297,-3281,-3266,
+-3250,-3234,-3219,-3206,-3193,-3181,-3169,-3159,-3149,-3139,-3128,-3120,-3111,-3103,-3096,-3088,-3082,-3075,-3069,-3062,
+-3056,-3051,-3045,-3039,-3033,-3028,-3021,-3015,-3009,-3002,-2994,-2987,-2979,-2970,-2961,-2952,-2942,-2932,-2921,-2909,
+-2897,-2885,-2873,-2859,-2846,-2833,-2819,-2805,-2790,-2775,-2761,-2746,-2730,-2713,-2696,-2679,-2661,-2644,-2627,-2610,
+-2593,-2577,-2559,-2543,-2526,-2511,-2494,-2479,-2464,-2450,-2435,-2421,-2407,-2393,-2379,-2365,-2352,-2338,-2326,-2313,
+-2301,-2289,-2276,-2264,-2252,-2239,-2226,-2213,-2200,-2186,-2172,-2157,-2141,-2125,-2109,-2092,-2075,-2057,-2038,-2019,
+-2000,-1981,-1961,-1941,-1922,-1902,-1883,-1865,-1847,-1829,-1812,-1795,-1778,-1763,-1747,-1733,-1718,-1704,-1691,-1679,
+-1666,-1654,-1643,-1632,-1622,-1612,-1601,-1591,-1581,-1571,-1561,-1551,-1540,-1529,-1517,-1506,-1495,-1484,-1472,-1461,
+-1449,-1435,-1420,-1406,-1391,-1376,-1360,-1345,-1330,-1314,-1298,-1282,-1266,-1249,-1232,-1214,-1196,-1178,-1158,-1138,
+-1117,-1095,-1072,-1049,-1024,-999,-973,-946,-919,-892,-864,-834,-803,-771,-740,-711,-682,-654,-627,-602,
+-579,-557,-537,-519,-504,-492,-482,-475,-470,-465,-464,-468,-475,-485,-497,-511,-526,-540,-557,-576,
+-596,-617,-639,-661,-684,-709,-734,-759,-784,-808,-831,-854,-876,-895,-913,-927,-941,-953,-965,-976,
+-987,-998,-1010,-1020,-1028,-1035,-1042,-1047,-1050,-1050,-1046,-1040,-1034,-1030,-1029,-1027,-1017,-1007,-998,-986,
+-973,-961,-947,-929,-913,-898,-881,-860,-837,-815,-792,-771,-754,-737,-721,-710,-702,-694,-687,-677,
+-664,-655,-651,-648,-643,-635,-625,-611,-601,-598,-597,-592,-585,-578,-566,-552,-540,-528,-516,-500,
+-482,-464,-446,-431,-416,-398,-380,-366,-351,-338,-325,-311,-296,-280,-265,-255,-240,-223,-213,-200,
+-184,-169,-153,-133,-110,-88,-71,-58,-44,-27,-8,7,19,29,40,50,58,65,69,72,
+76,79,75,69,67,68,58,39,25,16,7,0,-10,-21,-27,-32,-45,-60,-70,-79,
+-90,-103,-114,-126,-140,-150,-158,-164,-165,-165,-164,-159,-149,-139,-129,-121,-115,-108,-102,-95,
+-82,-64,-42,-18,4,26,46,65,82,98,113,125,136,145,151,156,159,160,159,158,
+154,149,144,138,132,126,120,115,111,108,104,102,104,107,112,120,131,144,160,178,
+199,223,249,277,307,340,374,410,447,483,519,551,578,610,643,673,702,727,749,773,
+796,819,841,859,875,890,902,911,921,928,936,943,949,955,960,965,971,977,982,989,
+997,1005,1014,1023,1034,1045,1056,1067,1079,1090,1102,1112,1122,1132,1141,1149,1155,1161,1166,1169,
+1172,1173,1053,1055,1057,1057,1058,1057,1056,1055,1054,1053,1051,1050,1049,1049,1049,1050,1051,1053,
+1056,1058,1061,1065,1070,1075,1080,1085,1090,1094,1099,1103,1107,1111,1114,1116,1117,1118,1118,1118,
+1116,1115,1113,1111,1110,1108,1107,1105,1105,1104,1105,1106,1108,1112,1116,1122,1129,1136,1145,1154,
+1165,1176,1189,1201,1215,1228,1241,1256,1269,1282,1295,1308,1320,1331,1342,1352,1361,1369,1377,1384,
+1391,1397,1402,1408,1413,1417,1423,1428,1434,1440,1446,1454,1462,1470,1480,1490,1502,1514,1526,1540,
+1554,1568,1583,1597,1612,1626,1639,1653,1665,1676,1686,1695,1703,1709,1712,1715,1716,1717,1715,1712,
+1708,1703,1696,1689,1681,1673,1666,1658,1650,1643,1636,1630,1625,1621,1618,1616,1616,1616,1618,1621,
+1625,1631,1638,1645,1653,1661,1669,1678,1687,1696,1704,1712,1719,1726,1732,1737,1741,1743,1745,1747,
+1747,1746,1744,1742,1739,1735,1731,1726,1721,1716,1710,1705,1699,1694,1688,1683,1678,1674,1669,1665,
+1662,1658,1655,1652,1649,1647,1644,1642,1640,1639,1637,1635,1634,1633,1632,1631,1630,1630,1630,1629,
+1629,1628,1628,1629,1629,1628,1627,1627,1627,1628,1628,1628,1627,1626,1624,1621,1618,1615,1612,1607,
+1601,1596,1588,1580,1573,1564,1554,1543,1532,1521,1508,1495,1482,1468,1453,1438,1422,1408,1394,1379,
+1363,1348,1333,1318,1302,1285,1267,1249,1232,1214,1196,1177,1157,1137,1116,1095,1073,1050,1028,1006,
+984,962,940,918,895,873,851,829,807,786,765,745,725,707,689,672,657,642,629,616,
+605,595,587,581,576,574,572,573,575,577,581,588,596,604,614,624,636,649,662,675,
+687,700,713,725,736,746,753,762,770,775,779,783,784,784,783,780,776,771,764,756,
+748,739,728,718,707,695,684,672,661,650,640,630,620,611,603,595,587,580,572,565,
+558,551,544,536,527,518,507,496,484,471,455,439,421,402,382,361,338,314,289,262,
+235,207,178,148,118,88,57,25,-5,-35,-66,-98,-128,-158,-188,-218,-246,-275,-302,-329,
+-355,-381,-406,-432,-456,-480,-503,-526,-549,-571,-593,-614,-636,-657,-678,-698,-719,-739,-759,-779,
+-799,-819,-840,-860,-880,-901,-922,-943,-965,-987,-1009,-1032,-1056,-1080,-1105,-1130,-1157,-1184,-1213,-1242,
+-1272,-1304,-1336,-1371,-1406,-1443,-1482,-1523,-1565,-1609,-1655,-1704,-1754,-1807,-1861,-1918,-1976,-2036,-2099,-2162,
+-2228,-2294,-2361,-2429,-2498,-2566,-2635,-2703,-2770,-2837,-2901,-2964,-3026,-3085,-3141,-3195,-3245,-3294,-3339,-3381,
+-3419,-3455,-3487,-3517,-3544,-3569,-3591,-3611,-3629,-3646,-3661,-3675,-3687,-3699,-3711,-3722,-3733,-3743,-3754,-3765,
+-3775,-3786,-3796,-3807,-3817,-3827,-3837,-3846,-3855,-3863,-3870,-3876,-3881,-3885,-3888,-3890,-3890,-3890,-3889,-3887,
+-3885,-3882,-3879,-3877,-3876,-3874,-3875,-3877,-3880,-3886,-3894,-3904,-3918,-3934,-3953,-3976,-4002,-4030,-4062,-4097,
+-4134,-4175,-4218,-4263,-4310,-4359,-4408,-4459,-4509,-4558,-4607,-4655,-4701,-4745,-4786,-4825,-4861,-4893,-4922,-4948,
+-4970,-4988,-5002,-5013,-5022,-5027,-5029,-5028,-5025,-5021,-5015,-5009,-5002,-4995,-4989,-4985,-4981,-4979,-4979,-4980,
+-4985,-4990,-4998,-5009,-5023,-5039,-5058,-5078,-5102,-5127,-5154,-5183,-5213,-5244,-5275,-5307,-5339,-5371,-5403,-5435,
+-5465,-5495,-5523,-5550,-5576,-5599,-5622,-5643,-5662,-5679,-5695,-5709,-5721,-5731,-5740,-5747,-5752,-5756,-5758,-5759,
+-5759,-5757,-5755,-5752,-5747,-5742,-5738,-5733,-5728,-5723,-5719,-5715,-5712,-5709,-5708,-5708,-5710,-5712,-5716,-5723,
+-5729,-5737,-5748,-5759,-5772,-5787,-5803,-5819,-5836,-5853,-5870,-5888,-5905,-5921,-5936,-5951,-5963,-5975,-5985,-5992,
+-5997,-6000,-6002,-6001,-5998,-5993,-5985,-5977,-5967,-5958,-5948,-5938,-5925,-5913,-5902,-5890,-5881,-5874,-5867,-5860,
+-5856,-5853,-5847,-5837,-5826,-5812,-5795,-5773,-5748,-5723,-5702,-5687,-5681,-5680,-5680,-5684,-5693,-5704,-5715,-5725,
+-5733,-5739,-5745,-5753,-5762,-5770,-5778,-5786,-5794,-5803,-5810,-5816,-5822,-5827,-5832,-5833,-5832,-5829,-5824,-5820,
+-5818,-5817,-5820,-5826,-5833,-5843,-5856,-5869,-5882,-5897,-5913,-5928,-5942,-5957,-5973,-5991,-6010,-6027,-6043,-6057,
+-6072,-6084,-6093,-6100,-6102,-6102,-6102,-6103,-6102,-6101,-6099,-6099,-6103,-6110,-6119,-6129,-6140,-6154,-6170,-6188,
+-6203,-6214,-6223,-6229,-6231,-6232,-6232,-6231,-6229,-6224,-6219,-6213,-6204,-6196,-6190,-6182,-6175,-6172,-6171,-6168,
+-6166,-6164,-6164,-6168,-6175,-6179,-6183,-6185,-6189,-6196,-6203,-6211,-6219,-6225,-6231,-6236,-6238,-6238,-6239,-6242,
+-6247,-6251,-6255,-6261,-6268,-6274,-6281,-6287,-6294,-6299,-6303,-6305,-6306,-6304,-6300,-6298,-6295,-6289,-6281,-6275,
+-6268,-6264,-6260,-6257,-6254,-6249,-6239,-6226,-6214,-6201,-6190,-6180,-6170,-6158,-6145,-6132,-6120,-6108,-6098,-6089,
+-6081,-6073,-6066,-6058,-6051,-6045,-6038,-6031,-6026,-6020,-6012,-6006,-6001,-5995,-5993,-5997,-6004,-6010,-6011,-6012,
+-6014,-6017,-6016,-6007,-5994,-5981,-5966,-5944,-5916,-5884,-5847,-5807,-5764,-5719,-5674,-5631,-5591,-5554,-5522,-5494,
+-5467,-5439,-5414,-5394,-5377,-5358,-5334,-5316,-5302,-5291,-5281,-5272,-5261,-5250,-5235,-5216,-5194,-5167,-5137,-5107,
+-5076,-5046,-5018,-4991,-4964,-4938,-4910,-4882,-4855,-4828,-4801,-4775,-4747,-4719,-4691,-4665,-4640,-4614,-4590,-4567,
+-4543,-4519,-4496,-4474,-4452,-4428,-4405,-4386,-4368,-4349,-4329,-4310,-4291,-4273,-4256,-4238,-4220,-4202,-4184,-4168,
+-4152,-4135,-4120,-4104,-4088,-4072,-4057,-4042,-4028,-4014,-4001,-3987,-3973,-3959,-3946,-3934,-3921,-3908,-3895,-3882,
+-3870,-3858,-3846,-3834,-3823,-3810,-3797,-3784,-3771,-3758,-3745,-3730,-3715,-3699,-3683,-3666,-3648,-3631,-3614,-3595,
+-3576,-3558,-3539,-3521,-3502,-3484,-3466,-3449,-3431,-3414,-3397,-3381,-3364,-3348,-3333,-3318,-3304,-3289,-3275,-3262,
+-3248,-3235,-3223,-3211,-3199,-3189,-3180,-3170,-3161,-3152,-3143,-3135,-3126,-3119,-3111,-3103,-3095,-3088,-3080,-3074,
+-3067,-3059,-3053,-3045,-3037,-3030,-3023,-3015,-3008,-3001,-2993,-2985,-2977,-2969,-2961,-2953,-2944,-2935,-2926,-2916,
+-2906,-2897,-2887,-2876,-2865,-2855,-2844,-2831,-2820,-2808,-2795,-2782,-2768,-2754,-2740,-2726,-2712,-2697,-2683,-2667,
+-2652,-2637,-2622,-2606,-2591,-2576,-2562,-2547,-2533,-2519,-2506,-2491,-2478,-2465,-2452,-2439,-2426,-2413,-2401,-2388,
+-2376,-2364,-2352,-2340,-2327,-2315,-2302,-2289,-2276,-2262,-2248,-2234,-2219,-2203,-2187,-2170,-2153,-2135,-2117,-2099,
+-2080,-2061,-2041,-2022,-2003,-1984,-1964,-1945,-1927,-1908,-1890,-1872,-1855,-1838,-1821,-1805,-1789,-1774,-1759,-1745,
+-1731,-1718,-1705,-1693,-1682,-1671,-1660,-1650,-1640,-1631,-1621,-1612,-1602,-1593,-1585,-1576,-1567,-1558,-1549,-1540,
+-1530,-1521,-1511,-1500,-1491,-1480,-1468,-1456,-1443,-1431,-1418,-1404,-1390,-1375,-1360,-1344,-1327,-1309,-1290,-1270,
+-1249,-1228,-1205,-1181,-1156,-1131,-1103,-1076,-1047,-1018,-988,-958,-925,-892,-858,-827,-799,-770,-743,-717,
+-690,-666,-645,-625,-608,-595,-584,-577,-574,-574,-575,-579,-586,-596,-607,-622,-638,-656,-676,-697,
+-717,-737,-759,-783,-808,-834,-861,-886,-910,-934,-956,-978,-998,-1017,-1034,-1050,-1064,-1076,-1087,-1096,
+-1102,-1107,-1111,-1115,-1117,-1119,-1118,-1118,-1117,-1116,-1117,-1117,-1113,-1106,-1100,-1093,-1091,-1093,-1096,-1098,
+-1095,-1089,-1079,-1066,-1051,-1036,-1018,-1000,-983,-963,-939,-919,-905,-889,-873,-859,-845,-834,-825,-816,
+-805,-794,-785,-777,-767,-755,-744,-735,-726,-714,-707,-698,-687,-676,-668,-658,-644,-625,-606,-591,
+-576,-560,-544,-526,-510,-496,-482,-468,-456,-442,-427,-416,-402,-387,-372,-358,-340,-322,-308,-293,
+-276,-260,-242,-222,-207,-196,-181,-164,-151,-139,-124,-109,-97,-89,-84,-78,-68,-61,-60,-60,
+-62,-63,-65,-72,-82,-95,-112,-130,-149,-165,-181,-196,-208,-221,-240,-259,-277,-291,-295,-292,
+-291,-291,-292,-293,-294,-299,-303,-302,-299,-294,-284,-272,-257,-243,-231,-217,-198,-183,-173,-162,
+-148,-133,-115,-97,-78,-60,-43,-27,-12,0,12,22,29,36,40,43,44,43,41,39,
+35,31,26,22,18,14,11,10,9,9,11,16,23,32,44,59,76,96,118,143,
+170,200,231,264,298,333,369,405,441,478,514,548,582,614,644,674,703,729,752,774,
+792,807,820,832,843,851,857,862,864,865,865,865,865,865,864,864,865,865,867,869,
+872,877,882,888,896,905,915,924,935,946,957,969,980,990,1001,1010,1019,1027,1033,1040,
+1045,1050,1053,909,914,918,921,925,927,929,932,934,936,938,941,944,947,950,954,958,
+963,968,973,978,983,988,994,999,1004,1009,1013,1016,1019,1022,1023,1024,1024,1023,1021,1019,
+1016,1013,1010,1007,1003,999,996,993,990,989,988,989,990,993,997,1003,1009,1016,1025,1035,
+1047,1059,1072,1086,1101,1116,1131,1147,1162,1177,1192,1207,1221,1234,1247,1258,1269,1279,1288,1296,
+1304,1310,1316,1321,1326,1330,1334,1338,1343,1347,1351,1356,1362,1368,1375,1382,1391,1400,1410,1421,
+1432,1444,1457,1469,1482,1496,1509,1522,1534,1546,1557,1568,1577,1586,1593,1599,1604,1607,1609,1609,
+1609,1607,1605,1602,1597,1592,1588,1582,1577,1572,1567,1562,1558,1555,1553,1551,1550,1551,1552,1554,
+1558,1563,1567,1573,1579,1586,1592,1600,1607,1614,1622,1628,1634,1639,1644,1649,1653,1655,1657,1658,
+1658,1657,1656,1653,1651,1647,1644,1640,1635,1631,1627,1623,1619,1615,1611,1608,1605,1602,1600,1599,
+1598,1597,1597,1597,1597,1597,1598,1599,1599,1600,1601,1602,1603,1604,1604,1603,1604,1604,1604,1605,
+1606,1606,1605,1604,1604,1603,1603,1603,1604,1604,1604,1603,1603,1603,1603,1603,1602,1601,1600,1599,
+1598,1596,1594,1591,1588,1584,1579,1573,1567,1560,1552,1543,1533,1523,1512,1500,1487,1474,1460,1445,
+1429,1412,1394,1376,1357,1338,1318,1297,1275,1253,1230,1208,1186,1161,1136,1111,1085,1059,1034,1010,
+987,963,939,915,892,869,847,825,803,782,762,742,722,704,686,669,653,637,623,609,
+596,585,574,563,555,548,541,536,532,529,527,527,529,532,536,540,547,554,562,572,
+582,592,603,614,625,637,647,655,663,672,681,688,694,699,704,706,707,708,707,704,
+701,697,692,685,677,669,660,650,639,629,618,607,598,588,578,568,558,548,539,530,
+520,511,501,492,482,472,460,448,436,423,409,394,378,361,343,323,302,280,258,234,
+210,184,158,131,103,75,46,17,-12,-41,-70,-100,-130,-159,-187,-216,-244,-271,-298,-325,
+-351,-376,-400,-425,-449,-472,-495,-518,-541,-563,-585,-608,-631,-653,-675,-697,-720,-742,-764,-786,
+-809,-831,-854,-877,-899,-923,-946,-969,-992,-1015,-1037,-1060,-1083,-1107,-1130,-1153,-1177,-1201,-1226,-1251,
+-1277,-1303,-1330,-1357,-1387,-1417,-1448,-1481,-1516,-1552,-1590,-1630,-1672,-1716,-1762,-1811,-1862,-1916,-1971,-2028,
+-2088,-2149,-2212,-2276,-2341,-2407,-2474,-2540,-2607,-2673,-2739,-2804,-2868,-2929,-2989,-3046,-3102,-3155,-3204,-3251,
+-3296,-3338,-3376,-3412,-3445,-3475,-3503,-3528,-3552,-3573,-3593,-3611,-3627,-3643,-3658,-3671,-3685,-3698,-3710,-3722,
+-3734,-3746,-3758,-3769,-3781,-3792,-3802,-3812,-3822,-3831,-3839,-3846,-3852,-3858,-3862,-3865,-3867,-3867,-3867,-3866,
+-3865,-3863,-3860,-3857,-3855,-3853,-3851,-3850,-3852,-3854,-3858,-3865,-3874,-3885,-3900,-3918,-3938,-3961,-3988,-4018,
+-4052,-4088,-4127,-4169,-4214,-4261,-4309,-4359,-4410,-4462,-4513,-4564,-4615,-4664,-4711,-4757,-4800,-4840,-4878,-4912,
+-4943,-4970,-4994,-5015,-5031,-5044,-5054,-5060,-5063,-5065,-5064,-5061,-5057,-5051,-5045,-5039,-5034,-5029,-5025,-5023,
+-5022,-5022,-5024,-5029,-5036,-5046,-5058,-5073,-5091,-5110,-5133,-5157,-5182,-5210,-5239,-5269,-5300,-5331,-5363,-5394,
+-5426,-5458,-5488,-5518,-5546,-5573,-5599,-5623,-5646,-5667,-5686,-5703,-5718,-5731,-5743,-5751,-5758,-5764,-5767,-5769,
+-5769,-5766,-5764,-5760,-5754,-5748,-5741,-5733,-5725,-5716,-5708,-5701,-5693,-5686,-5681,-5675,-5671,-5669,-5667,-5668,
+-5670,-5675,-5681,-5688,-5697,-5709,-5721,-5735,-5750,-5765,-5780,-5798,-5816,-5833,-5852,-5869,-5884,-5899,-5913,-5926,
+-5936,-5945,-5952,-5958,-5962,-5964,-5963,-5962,-5962,-5958,-5952,-5944,-5935,-5928,-5920,-5914,-5909,-5900,-5888,-5877,
+-5866,-5854,-5842,-5831,-5819,-5804,-5785,-5764,-5739,-5713,-5691,-5676,-5667,-5662,-5661,-5665,-5674,-5684,-5695,-5707,
+-5717,-5725,-5734,-5741,-5746,-5751,-5756,-5759,-5763,-5768,-5770,-5773,-5776,-5778,-5781,-5782,-5781,-5779,-5778,-5779,
+-5781,-5787,-5795,-5806,-5818,-5830,-5840,-5850,-5861,-5873,-5885,-5898,-5911,-5921,-5929,-5937,-5949,-5965,-5980,-5996,
+-6013,-6028,-6039,-6049,-6057,-6061,-6063,-6063,-6063,-6060,-6056,-6053,-6052,-6052,-6055,-6056,-6057,-6059,-6061,-6063,
+-6066,-6071,-6080,-6086,-6088,-6097,-6110,-6117,-6121,-6123,-6125,-6128,-6129,-6128,-6126,-6122,-6118,-6113,-6104,-6096,
+-6090,-6084,-6079,-6076,-6074,-6071,-6073,-6080,-6085,-6085,-6083,-6085,-6091,-6096,-6098,-6102,-6107,-6108,-6107,-6109,
+-6115,-6122,-6131,-6142,-6156,-6170,-6183,-6194,-6205,-6215,-6225,-6231,-6239,-6245,-6248,-6253,-6256,-6254,-6252,-6250,
+-6247,-6242,-6236,-6231,-6227,-6219,-6211,-6203,-6193,-6180,-6166,-6153,-6142,-6130,-6118,-6105,-6094,-6086,-6078,-6071,
+-6065,-6060,-6054,-6048,-6041,-6032,-6023,-6014,-6006,-5993,-5978,-5965,-5955,-5949,-5945,-5943,-5945,-5952,-5959,-5963,
+-5962,-5955,-5946,-5935,-5921,-5901,-5876,-5848,-5816,-5782,-5746,-5709,-5673,-5637,-5601,-5570,-5543,-5520,-5500,-5482,
+-5464,-5446,-5427,-5407,-5389,-5370,-5350,-5329,-5308,-5287,-5265,-5242,-5219,-5197,-5174,-5150,-5125,-5099,-5073,-5045,
+-5018,-4991,-4963,-4938,-4913,-4889,-4863,-4836,-4811,-4785,-4760,-4735,-4710,-4685,-4659,-4633,-4608,-4583,-4557,-4533,
+-4510,-4487,-4465,-4444,-4422,-4400,-4378,-4356,-4336,-4315,-4294,-4275,-4255,-4237,-4218,-4198,-4178,-4158,-4138,-4119,
+-4100,-4084,-4067,-4051,-4035,-4020,-4003,-3987,-3972,-3958,-3944,-3930,-3917,-3905,-3894,-3883,-3870,-3858,-3846,-3834,
+-3823,-3812,-3801,-3791,-3780,-3770,-3761,-3750,-3739,-3728,-3716,-3703,-3689,-3675,-3661,-3647,-3632,-3616,-3599,-3581,
+-3564,-3546,-3529,-3512,-3495,-3478,-3462,-3447,-3431,-3415,-3399,-3383,-3368,-3353,-3338,-3324,-3311,-3297,-3285,-3273,
+-3263,-3253,-3243,-3234,-3225,-3215,-3207,-3198,-3189,-3181,-3172,-3164,-3155,-3147,-3138,-3129,-3121,-3112,-3104,-3096,
+-3089,-3079,-3069,-3059,-3049,-3040,-3031,-3022,-3013,-3003,-2994,-2985,-2976,-2967,-2957,-2948,-2940,-2931,-2923,-2916,
+-2907,-2899,-2891,-2882,-2873,-2864,-2855,-2846,-2836,-2825,-2815,-2804,-2793,-2781,-2770,-2758,-2743,-2729,-2715,-2702,
+-2690,-2676,-2663,-2649,-2635,-2622,-2610,-2596,-2582,-2569,-2555,-2542,-2530,-2517,-2504,-2492,-2479,-2467,-2455,-2442,
+-2430,-2418,-2406,-2394,-2382,-2369,-2357,-2344,-2331,-2317,-2304,-2290,-2275,-2260,-2245,-2229,-2213,-2197,-2180,-2163,
+-2145,-2128,-2110,-2092,-2074,-2056,-2038,-2021,-2003,-1985,-1967,-1950,-1932,-1915,-1899,-1882,-1866,-1850,-1834,-1819,
+-1804,-1790,-1776,-1762,-1749,-1736,-1724,-1713,-1702,-1692,-1681,-1672,-1662,-1653,-1645,-1636,-1628,-1620,-1613,-1605,
+-1597,-1590,-1583,-1575,-1568,-1560,-1551,-1543,-1534,-1525,-1515,-1506,-1495,-1484,-1473,-1460,-1447,-1432,-1416,-1400,
+-1382,-1363,-1342,-1320,-1297,-1273,-1247,-1220,-1192,-1164,-1134,-1104,-1074,-1043,-1012,-982,-953,-924,-897,-871,
+-846,-821,-799,-779,-763,-750,-740,-733,-728,-723,-723,-726,-731,-739,-749,-759,-772,-787,-803,-822,
+-843,-866,-889,-911,-933,-957,-981,-1003,-1025,-1046,-1067,-1087,-1106,-1123,-1139,-1153,-1166,-1178,-1188,-1196,
+-1203,-1209,-1213,-1216,-1218,-1218,-1218,-1215,-1211,-1206,-1203,-1200,-1198,-1195,-1193,-1191,-1189,-1186,-1185,-1188,
+-1192,-1196,-1197,-1194,-1188,-1178,-1166,-1151,-1135,-1116,-1097,-1077,-1060,-1043,-1027,-1013,-1001,-986,-970,-952,
+-938,-926,-911,-898,-888,-875,-863,-855,-843,-827,-814,-800,-786,-772,-759,-745,-730,-711,-692,-676,
+-661,-644,-629,-618,-607,-593,-577,-564,-554,-545,-535,-526,-515,-499,-482,-466,-447,-429,-414,-400,
+-385,-367,-352,-339,-324,-308,-297,-290,-283,-277,-268,-257,-246,-237,-230,-227,-229,-227,-223,-221,
+-225,-233,-237,-240,-246,-258,-277,-303,-330,-353,-374,-398,-424,-446,-465,-487,-501,-508,-511,-509,
+-500,-487,-477,-466,-452,-442,-437,-428,-414,-399,-384,-371,-359,-346,-335,-324,-311,-295,-277,-258,
+-239,-219,-199,-179,-161,-143,-127,-111,-98,-86,-76,-68,-61,-57,-54,-52,-52,-54,-56,-59,
+-62,-66,-70,-73,-76,-77,-78,-77,-74,-69,-63,-54,-43,-30,-14,4,25,49,75,104,
+134,167,201,236,272,308,345,382,418,454,489,523,555,585,613,640,666,689,710,728,
+744,757,766,772,778,782,783,785,783,780,775,771,767,762,757,753,749,746,744,741,
+741,742,744,748,752,758,765,772,781,790,800,810,820,830,841,851,860,869,878,885,
+892,898,905,909,752,759,766,772,778,784,790,797,803,809,815,822,829,836,843,851,
+858,866,874,881,889,896,902,909,915,920,926,929,932,934,935,935,934,933,930,927,
+923,919,913,908,903,898,894,889,885,882,879,878,877,879,882,886,892,898,906,915,
+926,938,950,964,978,993,1009,1024,1041,1057,1072,1088,1103,1117,1131,1145,1156,1168,1178,1188,
+1196,1204,1210,1216,1221,1226,1230,1234,1238,1241,1245,1249,1253,1258,1263,1268,1275,1282,1290,1298,
+1308,1318,1328,1339,1351,1363,1375,1388,1400,1412,1424,1436,1447,1457,1466,1474,1482,1489,1494,1499,
+1502,1504,1506,1507,1507,1506,1505,1502,1500,1498,1496,1494,1493,1491,1490,1490,1489,1490,1491,1493,
+1496,1500,1504,1508,1513,1518,1523,1528,1534,1539,1544,1549,1554,1558,1562,1565,1568,1569,1570,1570,
+1569,1568,1568,1566,1564,1561,1558,1555,1552,1549,1546,1543,1540,1538,1536,1535,1535,1535,1535,1536,
+1538,1540,1542,1544,1547,1551,1554,1557,1560,1564,1567,1569,1572,1574,1576,1578,1579,1580,1580,1580,
+1581,1581,1581,1579,1578,1576,1575,1574,1573,1572,1572,1571,1571,1570,1569,1569,1568,1567,1567,1568,
+1569,1571,1573,1572,1572,1571,1569,1566,1564,1560,1555,1550,1543,1536,1528,1518,1508,1496,1482,1467,
+1451,1433,1415,1396,1374,1353,1330,1306,1282,1257,1231,1205,1178,1152,1126,1099,1072,1046,1020,994,
+969,945,921,898,875,854,833,812,793,775,757,740,723,706,691,676,661,646,633,619,
+606,593,581,569,557,546,536,526,517,509,502,495,490,486,483,481,481,480,482,485,
+489,494,499,506,513,522,530,539,549,559,568,578,587,595,603,611,619,624,629,634,
+637,639,640,638,636,632,628,622,616,609,601,593,584,575,565,555,545,535,524,513,
+502,491,480,468,456,443,430,417,403,389,374,359,342,324,306,287,267,246,224,202,
+179,155,130,104,78,51,24,-3,-30,-58,-86,-114,-141,-169,-197,-223,-250,-276,-302,-327,
+-352,-376,-400,-423,-446,-469,-491,-514,-536,-559,-582,-604,-627,-651,-674,-697,-721,-746,-771,-796,
+-821,-847,-873,-899,-925,-951,-978,-1004,-1031,-1057,-1082,-1108,-1133,-1158,-1183,-1207,-1230,-1254,-1277,-1300,
+-1322,-1345,-1367,-1391,-1414,-1438,-1463,-1488,-1515,-1543,-1573,-1603,-1636,-1671,-1708,-1747,-1788,-1832,-1877,-1925,
+-1976,-2029,-2084,-2140,-2199,-2258,-2320,-2382,-2445,-2508,-2571,-2635,-2698,-2759,-2820,-2880,-2938,-2994,-3048,-3100,
+-3149,-3196,-3241,-3283,-3322,-3359,-3393,-3425,-3455,-3483,-3509,-3533,-3556,-3577,-3597,-3616,-3634,-3651,-3668,-3685,
+-3700,-3715,-3730,-3745,-3760,-3773,-3786,-3799,-3811,-3823,-3833,-3843,-3852,-3860,-3866,-3871,-3875,-3878,-3880,-3880,
+-3880,-3879,-3876,-3874,-3871,-3868,-3864,-3861,-3859,-3858,-3858,-3860,-3863,-3869,-3877,-3888,-3901,-3917,-3936,-3959,
+-3985,-4014,-4047,-4082,-4120,-4162,-4206,-4252,-4300,-4349,-4400,-4451,-4503,-4554,-4605,-4654,-4702,-4748,-4792,-4833,
+-4872,-4908,-4941,-4970,-4997,-5020,-5038,-5055,-5067,-5076,-5083,-5087,-5088,-5088,-5086,-5083,-5079,-5076,-5073,-5069,
+-5066,-5065,-5064,-5065,-5069,-5074,-5082,-5092,-5105,-5120,-5136,-5155,-5177,-5200,-5225,-5251,-5279,-5308,-5338,-5369,
+-5400,-5431,-5462,-5492,-5522,-5551,-5579,-5605,-5630,-5653,-5675,-5695,-5712,-5728,-5742,-5753,-5762,-5769,-5774,-5777,
+-5778,-5777,-5774,-5769,-5763,-5755,-5746,-5736,-5726,-5715,-5704,-5692,-5680,-5669,-5658,-5649,-5640,-5632,-5624,-5620,
+-5616,-5614,-5615,-5618,-5621,-5627,-5634,-5642,-5652,-5664,-5677,-5692,-5708,-5725,-5742,-5760,-5778,-5796,-5812,-5827,
+-5840,-5851,-5862,-5874,-5884,-5893,-5903,-5909,-5909,-5908,-5906,-5903,-5899,-5895,-5891,-5888,-5887,-5888,-5887,-5883,
+-5876,-5866,-5853,-5837,-5819,-5799,-5776,-5751,-5725,-5700,-5681,-5666,-5654,-5645,-5641,-5644,-5648,-5656,-5669,-5684,
+-5698,-5712,-5727,-5740,-5748,-5752,-5753,-5751,-5749,-5749,-5750,-5750,-5746,-5740,-5732,-5725,-5719,-5714,-5711,-5714,
+-5724,-5738,-5753,-5769,-5787,-5804,-5820,-5833,-5844,-5855,-5864,-5873,-5882,-5892,-5900,-5908,-5914,-5921,-5929,-5939,
+-5951,-5963,-5976,-5988,-5999,-6007,-6013,-6017,-6019,-6020,-6021,-6019,-6016,-6011,-6005,-6001,-5995,-5990,-5987,-5986,
+-5985,-5985,-5987,-5990,-5992,-5994,-5997,-5997,-5997,-6001,-6005,-6009,-6014,-6022,-6031,-6039,-6045,-6049,-6051,-6051,
+-6048,-6042,-6035,-6029,-6025,-6018,-6012,-6008,-6003,-5997,-5989,-5982,-5977,-5973,-5968,-5964,-5961,-5958,-5959,-5964,
+-5969,-5974,-5981,-5992,-6007,-6023,-6040,-6058,-6076,-6094,-6112,-6129,-6143,-6158,-6173,-6184,-6190,-6196,-6199,-6202,
+-6206,-6209,-6207,-6203,-6197,-6190,-6185,-6179,-6172,-6164,-6155,-6145,-6135,-6124,-6113,-6100,-6085,-6072,-6063,-6054,
+-6046,-6040,-6035,-6030,-6023,-6013,-6001,-5986,-5968,-5949,-5929,-5909,-5889,-5872,-5864,-5857,-5844,-5829,-5818,-5809,
+-5802,-5797,-5789,-5780,-5770,-5758,-5742,-5722,-5700,-5675,-5649,-5625,-5602,-5579,-5560,-5545,-5532,-5519,-5505,-5490,
+-5473,-5454,-5432,-5409,-5385,-5361,-5336,-5310,-5283,-5256,-5230,-5203,-5176,-5148,-5120,-5090,-5061,-5032,-5003,-4974,
+-4947,-4921,-4893,-4868,-4844,-4820,-4797,-4775,-4752,-4728,-4703,-4679,-4656,-4633,-4609,-4584,-4560,-4537,-4514,-4491,
+-4469,-4447,-4426,-4405,-4384,-4364,-4344,-4324,-4306,-4285,-4265,-4245,-4225,-4213,-4212,-4195,-4159,-4130,-4109,-4089,
+-4070,-4051,-4032,-4015,-3997,-3981,-3967,-3956,-3943,-3926,-3908,-3894,-3880,-3867,-3854,-3842,-3830,-3817,-3804,-3792,
+-3780,-3768,-3759,-3751,-3742,-3733,-3726,-3718,-3709,-3699,-3689,-3677,-3665,-3654,-3642,-3630,-3618,-3606,-3592,-3578,
+-3563,-3549,-3534,-3519,-3505,-3490,-3477,-3463,-3448,-3434,-3421,-3407,-3394,-3381,-3367,-3354,-3343,-3334,-3324,-3314,
+-3304,-3297,-3288,-3276,-3263,-3255,-3247,-3238,-3229,-3220,-3211,-3202,-3193,-3184,-3175,-3166,-3155,-3145,-3135,-3126,
+-3115,-3104,-3093,-3082,-3072,-3060,-3049,-3038,-3028,-3017,-3006,-2996,-2986,-2976,-2967,-2957,-2948,-2939,-2931,-2922,
+-2914,-2905,-2897,-2888,-2880,-2872,-2863,-2855,-2846,-2836,-2826,-2817,-2807,-2797,-2787,-2777,-2765,-2753,-2741,-2729,
+-2717,-2704,-2692,-2679,-2667,-2653,-2640,-2626,-2613,-2600,-2588,-2575,-2563,-2551,-2538,-2526,-2513,-2500,-2488,-2476,
+-2463,-2451,-2439,-2427,-2415,-2402,-2390,-2377,-2364,-2352,-2339,-2326,-2313,-2300,-2286,-2272,-2257,-2242,-2227,-2212,
+-2197,-2181,-2166,-2150,-2135,-2119,-2103,-2087,-2071,-2055,-2039,-2023,-2007,-1991,-1975,-1960,-1944,-1929,-1913,-1897,
+-1881,-1865,-1850,-1835,-1820,-1806,-1792,-1778,-1765,-1753,-1740,-1728,-1717,-1706,-1696,-1686,-1677,-1668,-1659,-1651,
+-1642,-1634,-1626,-1619,-1613,-1607,-1601,-1595,-1589,-1583,-1577,-1571,-1564,-1557,-1550,-1542,-1533,-1524,-1513,-1501,
+-1488,-1474,-1459,-1442,-1424,-1405,-1384,-1363,-1339,-1315,-1290,-1264,-1238,-1211,-1184,-1157,-1130,-1104,-1078,-1052,
+-1028,-1005,-985,-966,-950,-935,-922,-910,-901,-895,-890,-888,-891,-897,-904,-912,-921,-930,-942,-957,
+-972,-989,-1008,-1028,-1048,-1069,-1089,-1109,-1129,-1148,-1166,-1183,-1199,-1214,-1228,-1241,-1252,-1262,-1271,-1278,
+-1284,-1290,-1294,-1297,-1299,-1300,-1301,-1301,-1300,-1299,-1297,-1295,-1292,-1289,-1286,-1283,-1281,-1280,-1279,-1279,
+-1278,-1278,-1277,-1276,-1273,-1269,-1265,-1257,-1248,-1239,-1226,-1213,-1200,-1186,-1168,-1147,-1124,-1101,-1081,-1064,
+-1049,-1035,-1024,-1015,-1003,-989,-977,-965,-952,-937,-920,-902,-884,-866,-849,-834,-815,-796,-781,-770,
+-757,-743,-729,-717,-706,-695,-681,-667,-656,-645,-634,-625,-615,-601,-586,-573,-559,-544,-526,-511,
+-500,-488,-476,-466,-453,-445,-439,-427,-417,-413,-405,-398,-395,-392,-389,-386,-384,-385,-388,-392,
+-398,-403,-409,-415,-420,-429,-440,-449,-469,-505,-545,-580,-608,-630,-649,-664,-675,-682,-683,-680,
+-673,-661,-645,-628,-615,-606,-593,-578,-564,-551,-540,-529,-514,-494,-473,-450,-425,-399,-372,-347,
+-323,-298,-275,-253,-232,-213,-196,-180,-166,-154,-144,-137,-131,-127,-126,-124,-124,-126,-128,-131,
+-134,-137,-142,-145,-147,-147,-146,-143,-139,-132,-123,-112,-98,-82,-63,-41,-18,7,35,65,
+97,130,163,197,233,269,305,341,375,409,441,473,503,530,556,580,602,621,638,652,
+664,673,681,685,687,688,686,683,679,673,667,659,652,644,636,629,623,616,611,608,
+604,602,602,602,603,606,610,615,621,628,635,644,653,661,671,680,689,698,707,715,
+722,730,738,745,752,594,603,612,622,631,641,650,660,671,682,693,703,715,726,737,
+748,760,771,782,793,802,811,821,829,836,843,848,852,854,856,857,857,857,854,850,
+846,842,836,831,825,819,813,807,802,796,792,789,787,786,786,788,791,796,801,808,
+817,826,836,848,861,874,888,902,917,932,947,962,976,990,1004,1018,1030,1042,1053,1063,
+1071,1079,1087,1095,1100,1106,1111,1115,1119,1123,1127,1131,1135,1140,1145,1150,1155,1162,1169,1177,
+1186,1195,1205,1214,1225,1237,1248,1260,1273,1285,1297,1310,1321,1333,1344,1355,1365,1374,1382,1390,
+1397,1403,1409,1413,1417,1420,1423,1425,1427,1428,1429,1429,1430,1431,1431,1432,1434,1435,1436,1438,
+1441,1444,1446,1449,1453,1456,1460,1464,1467,1470,1474,1477,1480,1482,1484,1486,1487,1488,1488,1488,
+1488,1487,1486,1484,1482,1480,1478,1476,1474,1472,1470,1469,1468,1468,1469,1470,1471,1474,1476,1479,
+1483,1487,1491,1496,1501,1507,1512,1517,1522,1527,1532,1537,1541,1544,1547,1549,1551,1552,1553,1553,
+1553,1552,1551,1549,1546,1544,1541,1539,1536,1534,1532,1529,1527,1526,1524,1523,1522,1521,1521,1521,
+1521,1521,1522,1522,1523,1523,1523,1522,1520,1518,1516,1512,1507,1501,1494,1485,1475,1464,1451,1437,
+1421,1403,1385,1365,1344,1321,1297,1272,1247,1222,1196,1170,1143,1115,1088,1061,1034,1008,982,957,
+933,911,889,868,848,830,813,795,779,764,749,736,724,713,702,691,680,669,658,646,
+635,623,611,598,585,572,559,546,532,519,506,493,481,470,460,450,441,432,426,421,
+416,413,412,411,413,416,420,425,431,439,448,458,468,478,488,498,509,520,530,540,
+549,557,564,570,574,577,579,580,579,578,576,572,568,563,556,548,540,532,522,512,
+501,490,477,465,452,438,423,408,391,376,359,342,324,305,285,264,243,221,199,175,
+152,127,102,76,50,23,-3,-30,-57,-84,-111,-138,-164,-191,-217,-243,-268,-293,-317,-341,
+-364,-388,-411,-433,-455,-476,-498,-520,-541,-563,-585,-607,-630,-654,-678,-703,-728,-755,-781,-809,
+-837,-866,-895,-925,-955,-986,-1016,-1046,-1076,-1106,-1136,-1165,-1194,-1222,-1250,-1276,-1302,-1326,-1350,-1373,
+-1395,-1416,-1437,-1457,-1476,-1496,-1515,-1534,-1554,-1574,-1596,-1619,-1642,-1667,-1693,-1721,-1752,-1785,-1819,-1857,
+-1896,-1938,-1983,-2029,-2078,-2130,-2183,-2237,-2294,-2351,-2410,-2469,-2529,-2588,-2648,-2707,-2766,-2824,-2880,-2935,
+-2988,-3040,-3090,-3138,-3183,-3227,-3268,-3308,-3345,-3380,-3414,-3446,-3476,-3504,-3531,-3557,-3582,-3605,-3628,-3650,
+-3672,-3692,-3712,-3731,-3750,-3768,-3786,-3803,-3819,-3834,-3848,-3862,-3874,-3885,-3895,-3904,-3911,-3917,-3921,-3924,
+-3926,-3926,-3925,-3923,-3920,-3916,-3912,-3908,-3904,-3899,-3896,-3893,-3891,-3891,-3892,-3896,-3901,-3909,-3920,-3934,
+-3951,-3971,-3994,-4020,-4050,-4083,-4118,-4157,-4199,-4243,-4288,-4336,-4384,-4433,-4483,-4533,-4583,-4632,-4679,-4726,
+-4770,-4812,-4852,-4889,-4924,-4956,-4985,-5010,-5032,-5051,-5066,-5079,-5089,-5097,-5102,-5106,-5109,-5110,-5110,-5110,
+-5110,-5109,-5110,-5111,-5113,-5117,-5122,-5129,-5138,-5149,-5162,-5177,-5194,-5213,-5234,-5256,-5280,-5306,-5332,-5360,
+-5389,-5418,-5447,-5476,-5506,-5534,-5563,-5590,-5615,-5640,-5663,-5683,-5703,-5720,-5735,-5749,-5759,-5768,-5774,-5778,
+-5780,-5780,-5778,-5774,-5768,-5760,-5751,-5740,-5728,-5715,-5701,-5687,-5671,-5657,-5642,-5628,-5614,-5602,-5590,-5580,
+-5571,-5563,-5558,-5554,-5552,-5551,-5551,-5552,-5557,-5563,-5572,-5582,-5593,-5606,-5621,-5636,-5653,-5670,-5685,-5698,
+-5712,-5727,-5741,-5756,-5769,-5780,-5790,-5798,-5804,-5809,-5814,-5816,-5815,-5814,-5815,-5816,-5819,-5822,-5821,-5816,
+-5811,-5808,-5803,-5797,-5788,-5772,-5750,-5725,-5700,-5677,-5660,-5647,-5637,-5630,-5624,-5619,-5619,-5621,-5628,-5639,
+-5656,-5678,-5699,-5716,-5728,-5736,-5739,-5739,-5738,-5737,-5737,-5735,-5732,-5726,-5716,-5703,-5689,-5675,-5665,-5660,
+-5662,-5670,-5682,-5699,-5720,-5744,-5768,-5791,-5809,-5821,-5830,-5838,-5845,-5851,-5859,-5867,-5874,-5880,-5886,-5893,
+-5900,-5907,-5915,-5924,-5933,-5942,-5950,-5958,-5966,-5974,-5981,-5987,-5989,-5988,-5984,-5979,-5974,-5969,-5964,-5960,
+-5958,-5957,-5957,-5955,-5955,-5954,-5949,-5944,-5942,-5940,-5937,-5934,-5933,-5931,-5930,-5932,-5937,-5943,-5949,-5956,
+-5963,-5969,-5971,-5971,-5971,-5970,-5967,-5964,-5959,-5951,-5941,-5929,-5916,-5903,-5887,-5870,-5856,-5846,-5840,-5836,
+-5835,-5837,-5844,-5855,-5868,-5886,-5907,-5929,-5952,-5977,-6001,-6025,-6049,-6073,-6094,-6114,-6133,-6149,-6160,-6169,
+-6176,-6182,-6183,-6180,-6177,-6175,-6174,-6173,-6170,-6164,-6153,-6140,-6129,-6116,-6100,-6084,-6068,-6054,-6043,-6032,
+-6020,-6008,-5995,-5981,-5964,-5946,-5927,-5906,-5883,-5857,-5831,-5806,-5780,-5758,-5738,-5718,-5699,-5685,-5678,-5672,
+-5667,-5666,-5668,-5670,-5668,-5662,-5653,-5644,-5635,-5624,-5614,-5603,-5590,-5575,-5559,-5542,-5526,-5511,-5496,-5480,
+-5462,-5441,-5419,-5396,-5370,-5343,-5315,-5287,-5258,-5227,-5197,-5167,-5137,-5107,-5077,-5045,-5013,-4981,-4948,-4916,
+-4887,-4857,-4829,-4802,-4776,-4750,-4726,-4702,-4678,-4657,-4636,-4615,-4594,-4572,-4550,-4528,-4506,-4485,-4464,-4445,
+-4430,-4418,-4398,-4380,-4372,-4360,-4341,-4320,-4295,-4269,-4248,-4229,-4211,-4200,-4193,-4177,-4149,-4120,-4098,-4077,
+-4057,-4039,-4020,-4001,-3984,-3965,-3948,-3932,-3917,-3902,-3888,-3875,-3861,-3846,-3832,-3819,-3806,-3794,-3782,-3771,
+-3760,-3750,-3740,-3731,-3721,-3711,-3702,-3693,-3685,-3678,-3669,-3659,-3649,-3639,-3629,-3620,-3610,-3600,-3589,-3578,
+-3568,-3557,-3546,-3535,-3522,-3511,-3499,-3487,-3476,-3464,-3452,-3440,-3429,-3419,-3408,-3398,-3388,-3379,-3370,-3360,
+-3351,-3341,-3331,-3321,-3312,-3303,-3294,-3284,-3275,-3264,-3255,-3245,-3235,-3225,-3214,-3204,-3193,-3182,-3171,-3160,
+-3149,-3137,-3125,-3114,-3102,-3091,-3079,-3067,-3056,-3044,-3032,-3021,-3010,-3000,-2989,-2979,-2970,-2960,-2950,-2941,
+-2931,-2922,-2913,-2904,-2895,-2886,-2877,-2867,-2858,-2848,-2839,-2829,-2819,-2808,-2798,-2787,-2777,-2766,-2755,-2744,
+-2732,-2720,-2708,-2695,-2682,-2669,-2656,-2643,-2631,-2618,-2606,-2593,-2581,-2568,-2556,-2543,-2530,-2518,-2506,-2494,
+-2482,-2470,-2458,-2446,-2433,-2421,-2409,-2396,-2384,-2372,-2359,-2347,-2335,-2323,-2310,-2298,-2285,-2272,-2259,-2246,
+-2233,-2220,-2207,-2194,-2181,-2168,-2155,-2142,-2129,-2115,-2102,-2088,-2074,-2060,-2046,-2032,-2017,-2002,-1987,-1972,
+-1956,-1940,-1924,-1908,-1892,-1876,-1860,-1844,-1828,-1812,-1797,-1782,-1767,-1753,-1740,-1726,-1714,-1702,-1691,-1680,
+-1670,-1661,-1652,-1643,-1635,-1628,-1622,-1617,-1612,-1607,-1603,-1599,-1596,-1592,-1589,-1585,-1581,-1576,-1571,-1565,
+-1558,-1551,-1542,-1533,-1522,-1510,-1497,-1482,-1467,-1451,-1434,-1417,-1397,-1375,-1353,-1331,-1310,-1287,-1265,-1243,
+-1223,-1202,-1183,-1166,-1151,-1135,-1118,-1103,-1090,-1080,-1072,-1068,-1066,-1066,-1068,-1072,-1077,-1084,-1093,-1103,
+-1114,-1126,-1140,-1154,-1169,-1184,-1200,-1215,-1230,-1245,-1259,-1272,-1285,-1297,-1308,-1318,-1327,-1335,-1342,-1348,
+-1354,-1358,-1362,-1365,-1367,-1369,-1370,-1371,-1371,-1371,-1371,-1370,-1370,-1369,-1367,-1366,-1364,-1362,-1359,-1356,
+-1352,-1348,-1344,-1340,-1336,-1332,-1329,-1327,-1325,-1323,-1320,-1319,-1316,-1310,-1299,-1287,-1273,-1255,-1235,-1212,
+-1191,-1171,-1151,-1130,-1111,-1092,-1073,-1055,-1037,-1020,-1004,-988,-972,-957,-942,-929,-914,-901,-888,-875,
+-860,-847,-835,-823,-811,-796,-781,-766,-751,-737,-726,-718,-710,-702,-690,-674,-657,-640,-625,-612,
+-600,-593,-587,-580,-574,-569,-562,-555,-550,-547,-543,-538,-538,-538,-537,-539,-542,-544,-550,-558,
+-566,-573,-580,-589,-601,-615,-632,-654,-675,-692,-706,-722,-743,-768,-790,-808,-822,-830,-829,-821,
+-811,-802,-793,-784,-773,-757,-738,-721,-705,-686,-667,-645,-622,-598,-572,-544,-513,-480,-446,-416,
+-386,-359,-334,-310,-287,-267,-248,-231,-218,-205,-195,-188,-182,-178,-177,-176,-177,-178,-180,-183,
+-186,-189,-192,-193,-194,-193,-191,-187,-182,-174,-164,-152,-137,-120,-100,-78,-54,-27,0,28,
+58,90,123,156,189,222,256,289,319,349,379,407,433,457,479,500,519,534,547,558,
+566,572,576,577,577,575,571,565,559,551,543,535,525,516,506,497,489,482,474,468,
+463,459,457,455,454,455,456,459,463,467,472,478,485,493,500,508,516,524,533,541,
+550,559,568,577,586,594,449,460,473,485,497,510,523,537,552,566,581,597,612,626,
+642,656,671,686,700,714,726,738,749,759,769,777,783,788,792,795,796,797,796,794,
+791,787,782,777,771,765,759,752,746,741,735,730,726,723,721,720,721,722,724,728,
+732,739,746,754,763,773,783,794,806,818,831,843,856,867,879,890,901,912,923,933,
+942,950,958,965,971,977,983,989,994,999,1004,1009,1014,1019,1024,1030,1037,1044,1052,1059,
+1068,1077,1087,1097,1108,1120,1132,1145,1157,1170,1183,1196,1209,1222,1235,1247,1258,1270,1280,1291,
+1301,1310,1319,1326,1333,1340,1346,1351,1356,1360,1364,1368,1371,1374,1377,1379,1382,1385,1387,1389,
+1392,1394,1396,1399,1401,1403,1406,1408,1410,1412,1414,1415,1416,1418,1418,1419,1419,1419,1419,1418,
+1417,1416,1415,1413,1412,1411,1409,1408,1407,1406,1406,1406,1406,1407,1409,1411,1414,1417,1422,1427,
+1431,1437,1443,1448,1455,1461,1468,1474,1480,1487,1492,1498,1502,1506,1510,1513,1515,1515,1516,1515,
+1515,1514,1512,1509,1506,1503,1499,1495,1491,1487,1482,1478,1474,1470,1466,1463,1460,1458,1456,1454,
+1452,1452,1451,1451,1450,1448,1447,1446,1444,1441,1438,1434,1429,1423,1415,1406,1396,1385,1372,1358,
+1342,1324,1305,1285,1266,1244,1221,1197,1173,1149,1124,1099,1073,1047,1021,996,971,947,925,903,
+882,863,844,827,812,798,785,774,764,755,747,739,732,725,719,712,706,699,692,685,
+676,667,657,646,634,620,606,590,574,558,540,522,504,485,467,449,432,415,400,385,
+371,359,349,340,334,329,327,325,326,328,333,338,345,354,364,376,388,400,413,427,
+440,453,465,477,488,497,505,513,520,526,531,534,535,536,535,533,531,526,520,513,
+505,495,485,473,461,447,432,417,400,382,364,345,325,304,282,260,237,213,188,163,
+138,111,85,58,30,2,-25,-53,-81,-109,-137,-164,-191,-218,-244,-270,-295,-319,-342,-366,
+-389,-411,-433,-454,-475,-496,-517,-538,-558,-580,-601,-623,-645,-669,-693,-717,-744,-771,-799,-828,
+-858,-889,-921,-954,-987,-1021,-1055,-1089,-1123,-1156,-1190,-1223,-1256,-1287,-1318,-1348,-1378,-1406,-1432,-1457,
+-1480,-1502,-1522,-1541,-1558,-1575,-1591,-1606,-1620,-1635,-1649,-1663,-1678,-1695,-1712,-1730,-1749,-1771,-1795,-1821,
+-1849,-1880,-1913,-1948,-1986,-2027,-2070,-2116,-2163,-2213,-2264,-2317,-2372,-2427,-2484,-2541,-2598,-2655,-2712,-2769,
+-2825,-2880,-2934,-2986,-3037,-3087,-3135,-3181,-3226,-3268,-3309,-3349,-3387,-3423,-3458,-3491,-3524,-3554,-3584,-3613,
+-3641,-3668,-3694,-3719,-3743,-3767,-3790,-3811,-3833,-3853,-3872,-3889,-3906,-3922,-3936,-3949,-3960,-3970,-3977,-3984,
+-3988,-3992,-3993,-3993,-3992,-3989,-3986,-3982,-3976,-3970,-3965,-3959,-3953,-3948,-3944,-3941,-3940,-3940,-3944,-3949,
+-3956,-3967,-3981,-3997,-4016,-4039,-4065,-4095,-4127,-4162,-4200,-4239,-4282,-4326,-4371,-4418,-4466,-4513,-4561,-4608,
+-4655,-4701,-4745,-4787,-4827,-4865,-4901,-4935,-4966,-4994,-5019,-5041,-5060,-5077,-5092,-5104,-5114,-5122,-5128,-5134,
+-5138,-5143,-5147,-5151,-5156,-5161,-5166,-5172,-5180,-5189,-5200,-5213,-5226,-5242,-5259,-5278,-5298,-5320,-5342,-5366,
+-5391,-5417,-5444,-5471,-5498,-5524,-5551,-5577,-5602,-5626,-5649,-5670,-5690,-5707,-5723,-5738,-5749,-5759,-5767,-5773,
+-5776,-5777,-5776,-5773,-5768,-5761,-5751,-5741,-5729,-5714,-5700,-5684,-5667,-5651,-5634,-5616,-5599,-5583,-5567,-5552,
+-5538,-5525,-5513,-5503,-5495,-5488,-5483,-5479,-5476,-5475,-5477,-5481,-5486,-5493,-5502,-5512,-5523,-5535,-5548,-5561,
+-5574,-5588,-5601,-5611,-5622,-5635,-5646,-5656,-5665,-5673,-5680,-5686,-5691,-5695,-5700,-5706,-5713,-5720,-5727,-5732,
+-5733,-5731,-5728,-5725,-5722,-5716,-5708,-5695,-5676,-5657,-5642,-5630,-5622,-5619,-5615,-5610,-5607,-5603,-5599,-5601,
+-5611,-5630,-5652,-5674,-5693,-5707,-5714,-5716,-5718,-5721,-5724,-5725,-5724,-5720,-5712,-5698,-5683,-5666,-5651,-5639,
+-5630,-5627,-5631,-5640,-5654,-5670,-5691,-5715,-5739,-5757,-5773,-5785,-5794,-5802,-5810,-5818,-5826,-5832,-5836,-5842,
+-5848,-5854,-5861,-5870,-5876,-5884,-5893,-5903,-5914,-5929,-5942,-5952,-5960,-5966,-5969,-5970,-5967,-5963,-5958,-5952,
+-5948,-5947,-5944,-5942,-5942,-5940,-5936,-5933,-5930,-5925,-5920,-5913,-5907,-5903,-5901,-5898,-5895,-5894,-5896,-5900,
+-5906,-5913,-5918,-5920,-5920,-5919,-5918,-5918,-5917,-5916,-5915,-5911,-5906,-5900,-5896,-5890,-5880,-5871,-5866,-5863,
+-5861,-5862,-5866,-5874,-5884,-5895,-5909,-5924,-5939,-5951,-5964,-5980,-5996,-6013,-6029,-6047,-6065,-6081,-6097,-6111,
+-6121,-6126,-6123,-6117,-6111,-6105,-6101,-6099,-6095,-6086,-6073,-6063,-6055,-6047,-6039,-6032,-6024,-6015,-6004,-5990,
+-5974,-5955,-5931,-5904,-5875,-5842,-5806,-5768,-5729,-5695,-5671,-5654,-5644,-5637,-5631,-5625,-5621,-5618,-5617,-5618,
+-5621,-5621,-5620,-5619,-5619,-5618,-5615,-5610,-5605,-5599,-5592,-5584,-5576,-5566,-5554,-5540,-5525,-5508,-5489,-5470,
+-5449,-5427,-5403,-5379,-5351,-5323,-5298,-5271,-5239,-5207,-5175,-5142,-5109,-5078,-5048,-5016,-4984,-4951,-4918,-4883,
+-4848,-4815,-4783,-4753,-4723,-4696,-4670,-4644,-4620,-4597,-4575,-4555,-4535,-4515,-4496,-4478,-4461,-4443,-4425,-4407,
+-4392,-4376,-4361,-4349,-4337,-4323,-4309,-4295,-4280,-4263,-4245,-4228,-4211,-4194,-4179,-4163,-4147,-4129,-4110,-4089,
+-4070,-4052,-4034,-4016,-3998,-3980,-3962,-3945,-3927,-3911,-3895,-3879,-3864,-3849,-3834,-3819,-3806,-3793,-3780,-3768,
+-3756,-3745,-3735,-3725,-3715,-3705,-3697,-3688,-3681,-3674,-3666,-3656,-3646,-3636,-3627,-3618,-3610,-3602,-3594,-3585,
+-3577,-3569,-3560,-3551,-3543,-3534,-3524,-3515,-3506,-3496,-3485,-3475,-3465,-3456,-3447,-3438,-3428,-3418,-3409,-3400,
+-3391,-3383,-3373,-3364,-3354,-3345,-3334,-3324,-3315,-3305,-3295,-3285,-3275,-3265,-3254,-3247,-3245,-3240,-3225,-3206,
+-3191,-3179,-3167,-3155,-3143,-3131,-3120,-3108,-3097,-3086,-3074,-3063,-3053,-3042,-3031,-3021,-3011,-3000,-2990,-2979,
+-2969,-2959,-2949,-2939,-2929,-2918,-2908,-2898,-2887,-2876,-2865,-2854,-2842,-2831,-2820,-2808,-2796,-2784,-2772,-2760,
+-2748,-2736,-2723,-2710,-2698,-2684,-2671,-2658,-2646,-2633,-2621,-2608,-2596,-2583,-2570,-2558,-2545,-2533,-2522,-2510,
+-2498,-2486,-2474,-2462,-2450,-2437,-2425,-2413,-2400,-2388,-2376,-2364,-2352,-2340,-2329,-2318,-2306,-2295,-2283,-2272,
+-2261,-2249,-2239,-2228,-2218,-2207,-2197,-2186,-2175,-2165,-2154,-2143,-2131,-2119,-2106,-2094,-2081,-2067,-2053,-2038,
+-2023,-2008,-1992,-1976,-1959,-1941,-1924,-1905,-1887,-1868,-1850,-1832,-1814,-1796,-1779,-1762,-1745,-1729,-1714,-1700,
+-1687,-1674,-1663,-1652,-1643,-1634,-1626,-1619,-1613,-1608,-1604,-1601,-1599,-1597,-1596,-1595,-1594,-1594,-1593,-1592,
+-1591,-1590,-1587,-1585,-1581,-1576,-1571,-1565,-1557,-1548,-1538,-1528,-1516,-1504,-1490,-1476,-1461,-1446,-1430,-1413,
+-1397,-1380,-1364,-1348,-1333,-1319,-1306,-1293,-1282,-1273,-1265,-1258,-1253,-1250,-1248,-1247,-1248,-1250,-1254,-1259,
+-1264,-1271,-1279,-1287,-1296,-1305,-1314,-1324,-1333,-1343,-1352,-1361,-1369,-1377,-1385,-1392,-1398,-1403,-1409,-1413,
+-1417,-1421,-1424,-1426,-1428,-1430,-1432,-1433,-1434,-1435,-1436,-1437,-1437,-1438,-1439,-1439,-1439,-1439,-1439,-1438,
+-1436,-1434,-1430,-1425,-1419,-1414,-1411,-1408,-1406,-1406,-1407,-1408,-1410,-1410,-1409,-1404,-1397,-1386,-1373,-1356,
+-1338,-1317,-1296,-1274,-1252,-1229,-1207,-1185,-1164,-1143,-1120,-1096,-1074,-1052,-1032,-1013,-996,-978,-960,-945,
+-935,-927,-921,-914,-903,-890,-875,-858,-841,-822,-804,-789,-777,-764,-753,-741,-726,-709,-692,-678,
+-668,-660,-656,-655,-654,-656,-658,-660,-663,-664,-663,-665,-668,-668,-672,-683,-695,-701,-704,-714,
+-732,-745,-752,-765,-781,-795,-812,-826,-835,-842,-851,-861,-871,-879,-888,-897,-904,-912,-922,-925,
+-921,-915,-904,-892,-876,-858,-839,-819,-795,-768,-741,-712,-682,-651,-619,-587,-554,-522,-490,-459,
+-428,-400,-373,-347,-324,-302,-282,-265,-250,-237,-226,-218,-211,-207,-204,-203,-204,-205,-207,-210,
+-212,-215,-217,-219,-219,-218,-215,-211,-205,-197,-187,-175,-160,-144,-125,-104,-82,-59,-34,-8,
+19,48,78,108,139,168,198,226,253,279,304,327,350,371,389,406,420,432,442,450,
+455,459,460,459,457,452,446,439,431,423,413,404,394,383,374,364,355,346,338,331,
+326,320,316,313,310,309,309,310,312,315,318,322,328,333,340,347,354,362,370,378,
+388,397,407,417,427,438,449,324,337,352,367,383,399,415,432,449,468,486,504,522,
+540,559,577,595,612,629,644,659,674,687,700,711,720,728,735,741,745,749,750,750,
+749,747,745,741,736,731,726,720,714,708,702,697,691,687,683,680,678,677,676,676,
+678,680,682,686,691,696,703,710,717,725,733,742,750,759,768,777,786,794,802,810,
+818,825,833,840,846,852,858,864,871,877,882,888,894,900,908,915,922,931,939,949,
+959,968,979,991,1002,1015,1028,1041,1054,1068,1081,1096,1110,1123,1137,1151,1164,1177,1190,1203,
+1214,1225,1236,1246,1256,1265,1274,1282,1290,1296,1302,1309,1314,1319,1324,1328,1332,1336,1339,1342,
+1346,1348,1351,1353,1354,1356,1358,1359,1360,1361,1362,1363,1363,1363,1363,1363,1362,1362,1360,1359,
+1358,1356,1354,1353,1352,1350,1349,1348,1348,1348,1348,1349,1350,1352,1354,1357,1361,1365,1369,1374,
+1379,1384,1390,1396,1402,1409,1415,1422,1428,1434,1439,1445,1450,1453,1457,1459,1461,1463,1463,1462,
+1461,1459,1456,1453,1449,1446,1443,1437,1432,1426,1420,1415,1409,1403,1398,1393,1388,1383,1379,1375,
+1371,1368,1365,1363,1360,1357,1353,1350,1345,1341,1335,1329,1323,1316,1308,1299,1288,1275,1263,1249,
+1233,1216,1198,1179,1158,1137,1115,1093,1072,1050,1028,1005,982,959,937,916,895,875,856,839,
+824,809,797,786,776,767,760,755,750,747,745,744,743,743,743,742,741,739,736,732,
+727,721,715,706,696,684,670,654,637,618,597,574,552,529,505,480,456,431,406,382,
+360,338,318,300,285,272,261,251,243,238,236,235,237,241,249,258,267,278,290,304,
+319,335,350,366,382,397,411,425,438,450,462,472,480,488,494,499,502,504,504,502,
+499,494,487,479,469,458,445,432,416,399,381,362,341,320,298,274,250,223,196,169,
+141,112,83,54,25,-4,-35,-65,-95,-125,-155,-184,-213,-241,-269,-296,-321,-347,-372,-395,
+-418,-441,-463,-484,-505,-526,-547,-567,-587,-608,-628,-650,-672,-695,-719,-744,-770,-797,-825,-855,
+-885,-917,-951,-985,-1020,-1055,-1091,-1128,-1165,-1203,-1239,-1275,-1310,-1346,-1381,-1415,-1447,-1477,-1506,-1533,
+-1559,-1582,-1603,-1623,-1640,-1656,-1670,-1683,-1695,-1706,-1715,-1724,-1733,-1742,-1751,-1760,-1771,-1783,-1797,-1813,
+-1830,-1850,-1872,-1897,-1924,-1954,-1987,-2022,-2060,-2101,-2145,-2190,-2238,-2288,-2339,-2392,-2447,-2501,-2558,-2614,
+-2670,-2727,-2783,-2839,-2894,-2948,-3001,-3053,-3103,-3153,-3201,-3247,-3292,-3336,-3378,-3419,-3458,-3496,-3532,-3568,
+-3603,-3635,-3668,-3699,-3729,-3758,-3786,-3813,-3839,-3864,-3888,-3910,-3932,-3952,-3971,-3988,-4003,-4017,-4030,-4040,
+-4049,-4056,-4062,-4065,-4067,-4067,-4066,-4063,-4059,-4054,-4048,-4041,-4035,-4028,-4021,-4015,-4010,-4005,-4002,-4001,
+-4001,-4004,-4008,-4016,-4026,-4039,-4056,-4075,-4097,-4122,-4151,-4182,-4216,-4252,-4290,-4330,-4372,-4415,-4460,-4504,
+-4549,-4595,-4640,-4683,-4726,-4768,-4808,-4847,-4883,-4918,-4951,-4981,-5008,-5033,-5055,-5075,-5093,-5109,-5123,-5137,
+-5148,-5158,-5168,-5177,-5185,-5193,-5201,-5210,-5219,-5228,-5239,-5250,-5262,-5275,-5290,-5306,-5323,-5341,-5360,-5381,
+-5403,-5425,-5448,-5471,-5495,-5519,-5543,-5566,-5590,-5612,-5634,-5654,-5673,-5691,-5707,-5722,-5734,-5745,-5754,-5761,
+-5765,-5768,-5768,-5766,-5763,-5757,-5749,-5740,-5729,-5716,-5701,-5686,-5669,-5652,-5634,-5615,-5596,-5577,-5558,-5540,
+-5522,-5504,-5489,-5474,-5460,-5447,-5436,-5427,-5419,-5412,-5407,-5405,-5403,-5403,-5406,-5409,-5414,-5420,-5427,-5436,
+-5445,-5454,-5464,-5474,-5484,-5493,-5504,-5514,-5522,-5530,-5539,-5549,-5558,-5568,-5578,-5583,-5586,-5593,-5602,-5613,
+-5622,-5628,-5631,-5633,-5633,-5631,-5633,-5633,-5626,-5615,-5606,-5600,-5595,-5591,-5590,-5589,-5587,-5583,-5580,-5580,
+-5585,-5598,-5615,-5634,-5652,-5668,-5679,-5686,-5691,-5692,-5692,-5694,-5695,-5693,-5688,-5680,-5666,-5648,-5630,-5614,
+-5600,-5590,-5588,-5592,-5600,-5612,-5627,-5642,-5660,-5677,-5694,-5711,-5729,-5743,-5752,-5760,-5764,-5767,-5771,-5776,
+-5782,-5792,-5804,-5813,-5823,-5834,-5844,-5855,-5866,-5878,-5890,-5902,-5910,-5916,-5923,-5929,-5933,-5934,-5934,-5933,
+-5931,-5927,-5922,-5917,-5913,-5910,-5909,-5907,-5905,-5904,-5903,-5900,-5896,-5892,-5890,-5889,-5892,-5894,-5897,-5900,
+-5902,-5904,-5906,-5907,-5909,-5908,-5907,-5906,-5906,-5905,-5906,-5909,-5911,-5913,-5915,-5916,-5917,-5917,-5917,-5917,
+-5918,-5925,-5935,-5946,-5957,-5969,-5981,-5992,-6001,-6009,-6016,-6022,-6028,-6033,-6037,-6041,-6045,-6048,-6049,-6048,
+-6043,-6035,-6025,-6014,-6000,-5984,-5968,-5953,-5938,-5923,-5910,-5900,-5893,-5889,-5886,-5883,-5877,-5871,-5865,-5857,
+-5846,-5834,-5819,-5799,-5776,-5751,-5724,-5698,-5674,-5651,-5632,-5616,-5604,-5597,-5595,-5595,-5595,-5595,-5593,-5592,
+-5591,-5591,-5590,-5589,-5588,-5586,-5583,-5581,-5577,-5572,-5567,-5561,-5553,-5544,-5533,-5521,-5508,-5492,-5475,-5457,
+-5438,-5416,-5393,-5369,-5343,-5316,-5289,-5261,-5230,-5197,-5165,-5132,-5099,-5065,-5032,-4999,-4966,-4933,-4899,-4866,
+-4834,-4801,-4768,-4736,-4706,-4676,-4647,-4620,-4593,-4567,-4543,-4520,-4498,-4478,-4458,-4439,-4421,-4405,-4390,-4375,
+-4361,-4347,-4333,-4321,-4309,-4297,-4285,-4274,-4263,-4251,-4240,-4228,-4215,-4202,-4188,-4175,-4161,-4146,-4131,-4116,
+-4100,-4083,-4066,-4049,-4033,-4016,-3999,-3981,-3963,-3945,-3927,-3909,-3892,-3876,-3859,-3842,-3826,-3811,-3796,-3783,
+-3770,-3758,-3746,-3735,-3725,-3717,-3707,-3695,-3683,-3673,-3663,-3654,-3646,-3639,-3632,-3625,-3617,-3611,-3604,-3596,
+-3589,-3583,-3575,-3568,-3561,-3554,-3547,-3540,-3532,-3524,-3515,-3506,-3497,-3488,-3479,-3471,-3462,-3453,-3444,-3435,
+-3426,-3416,-3406,-3397,-3387,-3378,-3368,-3358,-3348,-3338,-3328,-3318,-3308,-3299,-3289,-3279,-3270,-3260,-3249,-3238,
+-3228,-3218,-3208,-3198,-3188,-3178,-3168,-3158,-3149,-3139,-3129,-3118,-3109,-3099,-3089,-3080,-3069,-3059,-3048,-3038,
+-3027,-3017,-3005,-2994,-2983,-2971,-2959,-2947,-2935,-2922,-2910,-2896,-2883,-2869,-2856,-2843,-2829,-2816,-2802,-2789,
+-2775,-2761,-2748,-2734,-2721,-2707,-2694,-2681,-2668,-2655,-2643,-2631,-2619,-2606,-2594,-2582,-2570,-2558,-2546,-2534,
+-2522,-2509,-2498,-2486,-2474,-2461,-2449,-2437,-2424,-2412,-2399,-2387,-2375,-2363,-2351,-2339,-2328,-2317,-2306,-2296,
+-2285,-2275,-2265,-2256,-2246,-2237,-2228,-2219,-2210,-2200,-2191,-2182,-2173,-2163,-2152,-2141,-2130,-2118,-2106,-2093,
+-2079,-2065,-2049,-2033,-2016,-1999,-1981,-1963,-1944,-1924,-1904,-1884,-1864,-1844,-1823,-1803,-1783,-1764,-1746,-1728,
+-1711,-1695,-1680,-1667,-1654,-1644,-1635,-1627,-1620,-1612,-1606,-1602,-1599,-1596,-1594,-1593,-1593,-1595,-1597,-1600,
+-1603,-1605,-1608,-1610,-1613,-1614,-1615,-1615,-1615,-1614,-1612,-1609,-1605,-1601,-1595,-1588,-1580,-1572,-1564,-1555,
+-1545,-1535,-1525,-1514,-1503,-1492,-1482,-1473,-1464,-1455,-1447,-1441,-1435,-1429,-1425,-1422,-1419,-1417,-1416,-1416,
+-1417,-1419,-1421,-1423,-1426,-1430,-1434,-1438,-1442,-1446,-1451,-1455,-1459,-1463,-1467,-1470,-1474,-1477,-1479,-1482,
+-1484,-1486,-1488,-1490,-1492,-1493,-1495,-1496,-1497,-1499,-1500,-1502,-1503,-1505,-1506,-1508,-1509,-1510,-1512,-1513,
+-1513,-1513,-1514,-1513,-1512,-1511,-1509,-1506,-1503,-1500,-1499,-1498,-1497,-1496,-1494,-1492,-1488,-1482,-1474,-1464,
+-1451,-1435,-1417,-1397,-1378,-1357,-1334,-1310,-1287,-1263,-1240,-1217,-1194,-1171,-1148,-1124,-1102,-1082,-1064,-1046,
+-1029,-1012,-997,-983,-971,-960,-949,-936,-922,-906,-890,-874,-859,-845,-834,-826,-817,-804,-787,-770,
+-759,-755,-754,-757,-764,-772,-780,-787,-793,-798,-803,-810,-819,-829,-839,-848,-853,-861,-877,-890,
+-897,-906,-920,-933,-949,-967,-980,-986,-990,-992,-993,-993,-989,-981,-972,-964,-959,-957,-956,-957,
+-959,-957,-951,-941,-924,-904,-881,-856,-828,-799,-770,-740,-710,-679,-646,-614,-581,-548,-517,-485,
+-455,-426,-399,-372,-348,-326,-306,-288,-272,-259,-248,-239,-232,-227,-224,-223,-223,-224,-225,-227,
+-229,-231,-231,-232,-232,-231,-229,-225,-219,-212,-203,-192,-180,-166,-150,-133,-113,-93,-71,-48,
+-23,0,25,51,76,100,125,150,174,196,216,236,254,272,286,300,311,320,327,333,
+336,337,337,334,331,326,319,312,302,293,284,274,264,254,244,234,225,216,208,201,
+194,189,184,180,177,175,174,174,174,175,178,181,185,191,196,202,209,217,225,233,
+242,252,262,274,285,298,311,324,220,236,253,270,288,306,325,344,363,382,403,423,
+443,464,484,504,523,542,561,578,595,611,626,639,652,663,673,682,689,695,700,704,
+706,707,706,706,704,701,698,694,690,685,681,676,671,665,660,656,652,649,647,645,
+644,643,643,643,644,645,646,649,652,655,659,663,668,673,678,683,687,693,699,705,
+710,716,722,727,733,739,745,751,757,763,770,778,785,792,800,808,817,826,836,847,
+858,869,881,893,906,919,933,947,961,976,990,1005,1019,1034,1049,1063,1077,1092,1106,1119,
+1133,1145,1157,1169,1181,1192,1202,1212,1221,1230,1239,1246,1253,1260,1267,1273,1278,1283,1288,1292,
+1296,1300,1303,1306,1308,1310,1312,1313,1314,1315,1316,1316,1316,1315,1315,1314,1313,1312,1310,1309,
+1308,1306,1305,1303,1302,1300,1299,1298,1298,1298,1298,1298,1299,1300,1302,1304,1307,1310,1314,1318,
+1322,1326,1331,1336,1340,1345,1350,1355,1361,1365,1370,1374,1378,1381,1384,1386,1386,1387,1387,1386,
+1385,1383,1381,1377,1374,1370,1365,1360,1355,1349,1343,1337,1331,1324,1317,1312,1306,1299,1293,1288,
+1282,1277,1271,1266,1262,1257,1251,1246,1240,1233,1225,1218,1210,1201,1191,1181,1169,1156,1143,1128,
+1113,1097,1080,1062,1044,1024,1004,985,966,946,926,906,886,867,849,833,817,802,789,778,
+767,758,751,745,741,739,738,739,741,743,747,751,755,760,765,770,774,778,780,782,
+781,778,773,767,759,748,736,721,704,684,662,639,614,587,559,530,500,469,438,408,
+378,349,322,296,272,250,230,211,195,181,170,163,158,156,158,161,166,173,183,195,
+209,224,239,255,271,287,305,323,340,357,374,389,403,417,430,441,451,458,464,468,
+471,472,471,468,463,457,448,437,425,412,397,379,360,339,317,294,269,243,216,187,
+158,128,97,66,34,2,-29,-61,-94,-127,-159,-190,-221,-252,-282,-311,-340,-367,-394,-419,
+-444,-468,-491,-514,-536,-558,-579,-600,-621,-641,-663,-684,-706,-729,-752,-777,-803,-829,-857,-886,
+-917,-949,-982,-1017,-1052,-1089,-1126,-1164,-1203,-1241,-1280,-1319,-1357,-1394,-1431,-1466,-1500,-1532,-1563,-1593,
+-1621,-1646,-1669,-1689,-1708,-1724,-1739,-1751,-1761,-1770,-1777,-1784,-1789,-1794,-1797,-1801,-1805,-1810,-1816,-1824,
+-1833,-1844,-1857,-1872,-1890,-1911,-1934,-1960,-1989,-2021,-2056,-2094,-2135,-2178,-2223,-2271,-2321,-2372,-2425,-2480,
+-2535,-2591,-2647,-2704,-2761,-2818,-2874,-2930,-2984,-3038,-3091,-3143,-3193,-3242,-3290,-3337,-3382,-3426,-3468,-3509,
+-3549,-3588,-3625,-3661,-3696,-3730,-3763,-3794,-3824,-3854,-3882,-3909,-3934,-3958,-3981,-4003,-4022,-4041,-4058,-4073,
+-4087,-4098,-4108,-4116,-4122,-4127,-4130,-4131,-4130,-4128,-4125,-4121,-4116,-4110,-4104,-4097,-4090,-4084,-4078,-4073,
+-4070,-4068,-4067,-4069,-4072,-4078,-4086,-4098,-4111,-4128,-4147,-4169,-4194,-4221,-4251,-4283,-4318,-4354,-4392,-4432,
+-4472,-4513,-4555,-4597,-4639,-4681,-4722,-4762,-4801,-4840,-4876,-4910,-4943,-4975,-5003,-5030,-5055,-5078,-5099,-5119,
+-5136,-5153,-5168,-5183,-5196,-5208,-5220,-5232,-5244,-5255,-5267,-5279,-5291,-5304,-5318,-5332,-5347,-5363,-5380,-5397,
+-5416,-5435,-5455,-5475,-5495,-5516,-5537,-5558,-5579,-5600,-5619,-5638,-5656,-5672,-5689,-5703,-5716,-5727,-5737,-5745,
+-5751,-5755,-5757,-5757,-5756,-5752,-5746,-5739,-5730,-5719,-5706,-5692,-5677,-5660,-5643,-5625,-5606,-5586,-5567,-5547,
+-5527,-5508,-5488,-5470,-5453,-5436,-5420,-5405,-5392,-5380,-5368,-5358,-5351,-5344,-5339,-5336,-5334,-5334,-5336,-5338,
+-5342,-5346,-5352,-5358,-5366,-5373,-5380,-5386,-5393,-5407,-5422,-5426,-5426,-5432,-5442,-5451,-5457,-5462,-5469,-5480,
+-5491,-5503,-5513,-5520,-5522,-5524,-5528,-5535,-5543,-5549,-5555,-5560,-5562,-5560,-5557,-5554,-5553,-5552,-5552,-5551,
+-5552,-5557,-5568,-5583,-5598,-5614,-5629,-5641,-5651,-5656,-5658,-5660,-5662,-5662,-5659,-5651,-5637,-5621,-5605,-5587,
+-5569,-5554,-5544,-5541,-5544,-5552,-5563,-5577,-5594,-5613,-5630,-5646,-5661,-5676,-5690,-5701,-5708,-5714,-5717,-5720,
+-5725,-5730,-5737,-5747,-5759,-5772,-5787,-5801,-5813,-5823,-5832,-5840,-5848,-5856,-5863,-5869,-5875,-5881,-5885,-5887,
+-5888,-5890,-5891,-5891,-5888,-5884,-5880,-5875,-5870,-5867,-5866,-5866,-5867,-5871,-5878,-5882,-5886,-5892,-5898,-5903,
+-5906,-5908,-5908,-5909,-5909,-5907,-5905,-5906,-5908,-5908,-5908,-5908,-5912,-5916,-5919,-5922,-5925,-5927,-5928,-5931,
+-5935,-5942,-5950,-5960,-5969,-5978,-5986,-5994,-6001,-6006,-6009,-6013,-6015,-6016,-6017,-6018,-6016,-6012,-6004,-5994,
+-5982,-5969,-5953,-5937,-5922,-5907,-5893,-5878,-5863,-5850,-5839,-5829,-5820,-5812,-5805,-5798,-5791,-5785,-5780,-5775,
+-5769,-5761,-5751,-5738,-5725,-5710,-5696,-5681,-5667,-5656,-5646,-5639,-5632,-5624,-5615,-5606,-5599,-5594,-5586,-5579,
+-5574,-5572,-5570,-5570,-5569,-5566,-5563,-5560,-5557,-5552,-5548,-5542,-5534,-5526,-5517,-5506,-5494,-5481,-5466,-5449,
+-5431,-5411,-5389,-5367,-5342,-5316,-5289,-5261,-5233,-5203,-5173,-5142,-5110,-5077,-5043,-5010,-4977,-4943,-4909,-4876,
+-4844,-4810,-4778,-4746,-4715,-4683,-4653,-4624,-4596,-4569,-4543,-4518,-4494,-4471,-4450,-4429,-4410,-4392,-4375,-4359,
+-4344,-4331,-4318,-4307,-4296,-4285,-4275,-4266,-4257,-4247,-4237,-4228,-4219,-4210,-4200,-4189,-4178,-4167,-4155,-4142,
+-4129,-4116,-4102,-4088,-4073,-4057,-4042,-4025,-4009,-3992,-3975,-3958,-3941,-3923,-3905,-3889,-3872,-3855,-3838,-3822,
+-3807,-3792,-3777,-3764,-3753,-3740,-3726,-3714,-3703,-3692,-3682,-3673,-3664,-3656,-3648,-3642,-3635,-3629,-3623,-3617,
+-3611,-3604,-3599,-3593,-3587,-3581,-3574,-3568,-3561,-3554,-3547,-3539,-3532,-3525,-3518,-3513,-3506,-3493,-3477,-3464,
+-3453,-3443,-3433,-3423,-3412,-3402,-3392,-3381,-3371,-3360,-3351,-3340,-3331,-3322,-3312,-3303,-3295,-3287,-3279,-3271,
+-3263,-3255,-3248,-3240,-3233,-3226,-3219,-3212,-3204,-3197,-3190,-3182,-3174,-3166,-3158,-3150,-3141,-3132,-3122,-3112,
+-3101,-3090,-3079,-3067,-3054,-3041,-3028,-3014,-3000,-2985,-2970,-2955,-2940,-2924,-2909,-2893,-2878,-2862,-2847,-2832,
+-2817,-2803,-2788,-2774,-2760,-2746,-2732,-2719,-2706,-2694,-2681,-2669,-2657,-2645,-2634,-2622,-2610,-2598,-2586,-2574,
+-2562,-2550,-2537,-2525,-2513,-2501,-2488,-2475,-2462,-2449,-2436,-2422,-2409,-2396,-2383,-2370,-2358,-2345,-2333,-2322,
+-2310,-2299,-2289,-2278,-2268,-2259,-2250,-2241,-2233,-2224,-2215,-2207,-2199,-2190,-2181,-2171,-2162,-2152,-2141,-2129,
+-2117,-2104,-2090,-2075,-2060,-2044,-2027,-2009,-1991,-1972,-1952,-1932,-1912,-1892,-1872,-1851,-1830,-1809,-1789,-1769,
+-1751,-1732,-1715,-1700,-1685,-1672,-1661,-1650,-1641,-1634,-1628,-1622,-1616,-1611,-1606,-1602,-1601,-1602,-1605,-1608,
+-1613,-1618,-1624,-1629,-1634,-1640,-1646,-1651,-1655,-1659,-1663,-1667,-1669,-1670,-1671,-1671,-1671,-1669,-1667,-1664,
+-1660,-1656,-1651,-1646,-1640,-1634,-1628,-1622,-1615,-1609,-1603,-1597,-1591,-1586,-1581,-1576,-1572,-1569,-1565,-1563,
+-1560,-1558,-1556,-1555,-1554,-1554,-1553,-1553,-1553,-1554,-1554,-1554,-1555,-1555,-1556,-1556,-1557,-1558,-1558,-1559,
+-1559,-1560,-1561,-1561,-1562,-1563,-1564,-1565,-1566,-1567,-1569,-1570,-1572,-1574,-1575,-1577,-1579,-1581,-1583,-1584,
+-1586,-1587,-1587,-1588,-1588,-1587,-1586,-1585,-1583,-1580,-1577,-1573,-1569,-1565,-1560,-1555,-1550,-1544,-1536,-1527,
+-1517,-1505,-1491,-1476,-1461,-1445,-1428,-1411,-1393,-1372,-1350,-1328,-1306,-1281,-1257,-1233,-1211,-1190,-1171,-1154,
+-1137,-1122,-1106,-1092,-1079,-1067,-1055,-1045,-1035,-1024,-1012,-1000,-988,-976,-964,-953,-945,-937,-927,-917,
+-911,-912,-917,-922,-925,-931,-940,-947,-956,-966,-973,-974,-976,-980,-985,-992,-998,-1006,-1016,-1028,
+-1045,-1062,-1075,-1086,-1098,-1110,-1118,-1122,-1122,-1116,-1106,-1093,-1084,-1074,-1059,-1045,-1033,-1019,-1003,-991,
+-981,-970,-959,-945,-928,-906,-882,-858,-834,-808,-780,-752,-723,-693,-662,-631,-601,-570,-539,-509,
+-480,-452,-426,-401,-377,-356,-337,-319,-303,-290,-278,-269,-262,-256,-252,-250,-248,-248,-249,-250,
+-251,-251,-252,-252,-251,-250,-248,-245,-241,-236,-229,-220,-211,-199,-186,-172,-156,-139,-121,-102,
+-82,-61,-40,-20,-2,17,38,58,78,97,115,132,148,161,174,185,193,200,205,209,
+210,210,209,206,202,197,191,184,176,167,159,150,140,131,122,112,104,96,88,81,
+75,69,64,60,57,55,53,53,53,54,56,59,62,66,72,78,84,91,100,109,
+118,128,140,151,164,177,190,205,220,131,148,165,183,202,222,242,261,281,302,323,
+344,364,385,406,426,446,465,484,502,520,536,552,566,580,592,603,613,622,629,636,
+641,645,649,651,653,653,653,652,651,649,647,644,641,638,634,630,627,624,620,617,
+614,612,610,608,607,606,605,605,604,604,604,604,605,607,609,610,612,615,618,620,
+623,627,630,634,639,644,649,654,661,667,673,681,688,696,705,714,724,734,745,755,
+767,779,792,805,818,831,845,860,874,889,904,919,934,948,963,977,992,1007,1021,1035,
+1049,1062,1075,1088,1100,1112,1123,1135,1145,1156,1166,1175,1184,1192,1200,1207,1214,1221,1227,1233,
+1238,1242,1247,1250,1254,1257,1260,1262,1264,1265,1267,1268,1268,1268,1268,1267,1267,1266,1265,1264,
+1262,1261,1259,1258,1256,1255,1254,1252,1251,1250,1249,1249,1249,1249,1249,1250,1251,1252,1254,1255,
+1258,1260,1262,1265,1267,1270,1273,1276,1278,1280,1282,1284,1286,1288,1289,1289,1290,1290,1289,1288,
+1287,1284,1282,1279,1276,1272,1268,1264,1259,1254,1248,1243,1238,1232,1225,1220,1214,1209,1203,1196,
+1190,1184,1178,1171,1165,1159,1152,1144,1137,1129,1120,1111,1102,1092,1081,1069,1057,1044,1030,1016,
+1002,987,971,954,937,920,902,885,868,851,835,819,804,789,775,762,751,742,734,727,
+722,719,717,716,718,720,724,728,735,742,751,760,769,778,788,797,805,811,817,822,
+825,826,824,820,814,805,795,782,765,746,724,700,674,647,618,587,555,522,489,455,
+421,387,354,322,291,261,235,210,188,167,150,135,123,114,107,103,102,105,109,116,
+125,136,149,163,178,193,209,226,244,263,282,301,319,335,351,367,381,393,405,414,
+421,427,432,434,435,433,430,425,417,407,396,382,367,350,330,309,286,262,236,208,
+179,149,119,87,55,22,-11,-45,-80,-114,-148,-181,-213,-246,-278,-311,-342,-372,-401,-430,
+-457,-484,-510,-535,-559,-583,-606,-629,-651,-673,-695,-717,-740,-763,-786,-811,-836,-863,-890,-919,
+-949,-980,-1013,-1047,-1082,-1118,-1155,-1193,-1231,-1270,-1309,-1349,-1388,-1426,-1464,-1501,-1536,-1570,-1602,-1632,
+-1661,-1687,-1712,-1734,-1754,-1772,-1787,-1799,-1810,-1819,-1826,-1830,-1835,-1838,-1839,-1840,-1840,-1841,-1842,-1844,
+-1848,-1853,-1860,-1868,-1879,-1892,-1907,-1926,-1948,-1972,-2000,-2030,-2064,-2101,-2140,-2182,-2227,-2273,-2322,-2373,
+-2426,-2480,-2534,-2590,-2647,-2704,-2761,-2817,-2874,-2930,-2986,-3040,-3094,-3146,-3198,-3248,-3297,-3345,-3390,-3435,
+-3479,-3521,-3562,-3602,-3640,-3677,-3714,-3748,-3782,-3814,-3845,-3875,-3904,-3931,-3958,-3982,-4006,-4028,-4049,-4068,
+-4086,-4103,-4117,-4130,-4141,-4151,-4158,-4165,-4169,-4172,-4174,-4174,-4173,-4171,-4168,-4165,-4161,-4156,-4152,-4147,
+-4143,-4140,-4137,-4136,-4136,-4138,-4142,-4147,-4155,-4165,-4177,-4192,-4209,-4229,-4252,-4277,-4304,-4332,-4363,-4396,
+-4430,-4466,-4502,-4540,-4579,-4618,-4657,-4695,-4734,-4772,-4809,-4846,-4881,-4915,-4948,-4979,-5008,-5036,-5062,-5087,
+-5110,-5132,-5152,-5171,-5189,-5206,-5222,-5238,-5253,-5267,-5281,-5294,-5308,-5322,-5336,-5350,-5364,-5379,-5394,-5410,
+-5426,-5442,-5459,-5478,-5495,-5513,-5531,-5550,-5568,-5587,-5604,-5621,-5639,-5655,-5670,-5684,-5697,-5708,-5719,-5728,
+-5735,-5741,-5745,-5747,-5748,-5746,-5743,-5739,-5732,-5724,-5715,-5703,-5690,-5676,-5661,-5644,-5627,-5609,-5590,-5570,
+-5551,-5531,-5511,-5491,-5471,-5452,-5433,-5415,-5398,-5382,-5367,-5352,-5338,-5327,-5316,-5306,-5297,-5289,-5283,-5280,
+-5277,-5276,-5275,-5275,-5275,-5278,-5280,-5281,-5283,-5286,-5289,-5295,-5301,-5302,-5305,-5312,-5321,-5330,-5341,-5352,
+-5364,-5376,-5388,-5397,-5405,-5410,-5415,-5423,-5435,-5448,-5461,-5472,-5479,-5484,-5487,-5490,-5491,-5493,-5494,-5496,
+-5500,-5510,-5523,-5534,-5544,-5555,-5565,-5575,-5585,-5597,-5607,-5612,-5614,-5614,-5611,-5605,-5597,-5588,-5576,-5562,
+-5546,-5530,-5515,-5503,-5497,-5496,-5501,-5512,-5527,-5543,-5561,-5580,-5599,-5614,-5626,-5637,-5649,-5659,-5668,-5675,
+-5682,-5690,-5699,-5708,-5719,-5732,-5746,-5759,-5772,-5782,-5791,-5800,-5807,-5813,-5818,-5822,-5826,-5831,-5836,-5841,
+-5845,-5848,-5850,-5851,-5852,-5851,-5849,-5844,-5841,-5840,-5839,-5837,-5836,-5837,-5840,-5845,-5850,-5856,-5863,-5870,
+-5875,-5878,-5881,-5883,-5883,-5884,-5887,-5890,-5892,-5895,-5897,-5899,-5900,-5900,-5900,-5901,-5903,-5904,-5905,-5907,
+-5908,-5910,-5913,-5917,-5921,-5923,-5927,-5933,-5940,-5945,-5949,-5953,-5956,-5957,-5957,-5954,-5949,-5944,-5938,-5930,
+-5919,-5905,-5890,-5874,-5862,-5850,-5835,-5821,-5809,-5800,-5792,-5784,-5776,-5767,-5757,-5748,-5739,-5730,-5721,-5711,
+-5703,-5694,-5685,-5676,-5667,-5659,-5650,-5641,-5632,-5624,-5616,-5609,-5603,-5598,-5593,-5589,-5586,-5582,-5578,-5573,
+-5569,-5565,-5562,-5559,-5556,-5553,-5550,-5547,-5543,-5538,-5533,-5527,-5520,-5512,-5504,-5494,-5482,-5470,-5456,-5441,
+-5425,-5407,-5388,-5368,-5346,-5323,-5298,-5273,-5246,-5219,-5192,-5164,-5134,-5103,-5072,-5040,-5008,-4976,-4943,-4911,
+-4878,-4846,-4814,-4782,-4751,-4719,-4689,-4658,-4627,-4598,-4570,-4542,-4517,-4493,-4470,-4448,-4427,-4407,-4388,-4371,
+-4355,-4340,-4326,-4313,-4301,-4290,-4280,-4270,-4261,-4252,-4245,-4237,-4229,-4222,-4214,-4206,-4197,-4189,-4179,-4170,
+-4159,-4149,-4138,-4126,-4113,-4100,-4087,-4072,-4058,-4043,-4028,-4012,-3996,-3979,-3963,-3946,-3928,-3911,-3895,-3878,
+-3863,-3848,-3834,-3825,-3822,-3810,-3784,-3760,-3745,-3733,-3720,-3710,-3700,-3690,-3682,-3673,-3666,-3659,-3653,-3646,
+-3640,-3633,-3627,-3621,-3615,-3609,-3603,-3596,-3589,-3582,-3574,-3567,-3559,-3549,-3540,-3531,-3522,-3511,-3502,-3491,
+-3480,-3470,-3459,-3447,-3436,-3424,-3411,-3400,-3390,-3379,-3369,-3359,-3349,-3340,-3332,-3324,-3316,-3309,-3302,-3296,
+-3290,-3285,-3280,-3275,-3271,-3266,-3262,-3258,-3254,-3250,-3246,-3241,-3236,-3230,-3224,-3218,-3210,-3203,-3194,-3185,
+-3175,-3164,-3153,-3141,-3129,-3115,-3101,-3086,-3070,-3054,-3038,-3021,-3004,-2987,-2970,-2953,-2936,-2918,-2902,-2885,
+-2869,-2854,-2839,-2824,-2810,-2796,-2783,-2770,-2757,-2745,-2733,-2721,-2710,-2699,-2688,-2677,-2666,-2655,-2644,-2633,
+-2621,-2609,-2597,-2585,-2571,-2558,-2545,-2531,-2516,-2502,-2487,-2472,-2457,-2442,-2426,-2411,-2396,-2381,-2367,-2352,
+-2338,-2325,-2312,-2299,-2287,-2276,-2265,-2254,-2244,-2234,-2225,-2216,-2208,-2199,-2190,-2181,-2172,-2163,-2154,-2144,
+-2133,-2122,-2111,-2098,-2085,-2071,-2056,-2041,-2025,-2008,-1991,-1973,-1955,-1937,-1918,-1900,-1881,-1862,-1842,-1822,
+-1802,-1783,-1766,-1751,-1736,-1723,-1712,-1701,-1691,-1681,-1673,-1665,-1659,-1654,-1651,-1649,-1647,-1644,-1643,-1644,
+-1647,-1650,-1656,-1663,-1669,-1676,-1683,-1690,-1697,-1704,-1711,-1717,-1723,-1728,-1733,-1737,-1741,-1744,-1746,-1747,
+-1748,-1748,-1748,-1747,-1745,-1743,-1741,-1738,-1734,-1731,-1727,-1723,-1718,-1714,-1710,-1706,-1701,-1697,-1693,-1689,
+-1686,-1682,-1679,-1675,-1672,-1669,-1667,-1664,-1662,-1659,-1657,-1655,-1653,-1652,-1650,-1649,-1647,-1646,-1645,-1645,
+-1644,-1643,-1643,-1643,-1643,-1643,-1643,-1644,-1645,-1646,-1647,-1648,-1649,-1650,-1652,-1653,-1655,-1656,-1658,-1659,
+-1660,-1660,-1661,-1661,-1660,-1660,-1658,-1656,-1654,-1651,-1646,-1642,-1636,-1630,-1623,-1616,-1607,-1598,-1588,-1577,
+-1565,-1553,-1539,-1525,-1511,-1496,-1482,-1467,-1452,-1438,-1421,-1404,-1385,-1366,-1347,-1328,-1310,-1292,-1274,-1257,
+-1241,-1228,-1216,-1205,-1195,-1185,-1175,-1165,-1155,-1145,-1136,-1127,-1120,-1114,-1107,-1101,-1095,-1089,-1084,-1082,
+-1084,-1088,-1094,-1099,-1103,-1107,-1111,-1114,-1117,-1117,-1116,-1115,-1118,-1124,-1129,-1134,-1141,-1152,-1162,-1169,
+-1180,-1195,-1207,-1215,-1223,-1228,-1227,-1221,-1210,-1196,-1180,-1165,-1147,-1127,-1108,-1090,-1073,-1056,-1038,-1021,
+-1005,-988,-969,-947,-927,-907,-886,-864,-841,-816,-791,-765,-738,-711,-684,-656,-629,-602,-575,-547,
+-521,-496,-472,-449,-428,-408,-390,-373,-358,-345,-333,-323,-315,-308,-303,-299,-296,-295,-295,-294,
+-293,-293,-293,-292,-292,-291,-289,-287,-284,-279,-274,-268,-260,-252,-243,-231,-220,-207,-193,-177,
+-162,-145,-129,-113,-97,-81,-65,-49,-33,-17,-2,11,23,35,46,54,62,68,72,75,
+77,77,76,75,72,68,64,59,52,45,39,31,23,15,7,0,-7,-14,-21,-27,
+-32,-38,-42,-45,-48,-50,-52,-53,-52,-51,-49,-47,-43,-39,-34,-28,-22,-15,-6,1,
+11,21,32,44,57,70,84,99,115,131,46,63,80,98,116,135,154,174,193,213,
+233,252,272,292,312,331,349,368,386,404,420,436,452,466,480,493,505,516,525,535,
+543,550,557,563,568,572,576,578,581,583,584,585,585,585,584,584,583,582,580,578,
+576,574,572,571,569,567,565,564,563,562,561,559,558,556,556,556,556,557,557,558,
+560,561,563,566,569,572,576,581,585,591,597,604,611,619,627,636,646,656,666,677,
+689,701,713,725,738,751,765,778,792,806,820,834,849,863,877,891,905,919,933,946,
+959,973,986,998,1010,1022,1033,1045,1056,1067,1077,1087,1097,1107,1117,1125,1134,1142,1149,1156,
+1163,1170,1176,1181,1186,1191,1195,1199,1203,1206,1208,1210,1212,1214,1215,1216,1216,1216,1216,1216,
+1215,1214,1213,1212,1210,1208,1206,1205,1203,1201,1200,1198,1197,1195,1194,1193,1191,1190,1189,1188,
+1188,1187,1186,1186,1185,1185,1184,1184,1183,1183,1182,1182,1181,1181,1180,1179,1177,1176,1174,1173,
+1171,1168,1166,1163,1160,1157,1154,1151,1148,1144,1140,1136,1132,1128,1124,1120,1115,1111,1106,1101,
+1096,1090,1084,1078,1072,1065,1059,1051,1042,1034,1026,1017,1007,996,985,973,961,949,936,922,
+908,893,879,865,850,835,820,806,792,777,764,751,739,728,718,710,703,697,693,690,
+689,689,691,695,701,706,713,722,732,742,753,764,776,788,800,810,821,830,839,846,
+850,852,853,851,848,841,832,821,807,790,771,749,725,699,671,641,610,577,543,509,
+473,438,403,368,335,303,273,245,218,192,169,149,132,117,105,95,87,83,81,82,
+85,90,97,106,118,131,144,158,174,191,208,225,242,260,276,292,307,322,335,347,
+358,368,376,383,387,389,390,389,386,381,374,365,354,341,325,308,288,267,245,221,
+194,167,138,109,78,46,13,-20,-54,-89,-124,-158,-192,-226,-259,-292,-326,-359,-390,-421,
+-452,-481,-510,-538,-565,-591,-617,-642,-666,-691,-715,-739,-763,-787,-811,-836,-862,-888,-916,-944,
+-974,-1005,-1036,-1068,-1102,-1137,-1173,-1209,-1247,-1286,-1324,-1363,-1401,-1439,-1476,-1513,-1549,-1583,-1616,-1648,
+-1677,-1705,-1731,-1754,-1775,-1793,-1810,-1824,-1836,-1846,-1854,-1860,-1864,-1867,-1869,-1870,-1870,-1870,-1869,-1869,
+-1869,-1870,-1873,-1878,-1884,-1892,-1903,-1916,-1932,-1950,-1972,-1996,-2024,-2055,-2088,-2124,-2163,-2205,-2249,-2296,
+-2344,-2394,-2446,-2499,-2553,-2608,-2664,-2719,-2775,-2831,-2887,-2942,-2996,-3049,-3102,-3153,-3203,-3253,-3300,-3347,
+-3392,-3436,-3478,-3519,-3560,-3599,-3637,-3674,-3708,-3742,-3775,-3807,-3837,-3867,-3895,-3923,-3949,-3974,-3998,-4021,
+-4043,-4062,-4081,-4099,-4115,-4129,-4143,-4154,-4165,-4174,-4181,-4187,-4191,-4195,-4197,-4199,-4201,-4200,-4200,-4198,
+-4197,-4196,-4195,-4194,-4194,-4196,-4198,-4202,-4208,-4215,-4223,-4234,-4247,-4261,-4278,-4297,-4318,-4340,-4365,-4391,
+-4419,-4449,-4480,-4513,-4546,-4581,-4616,-4651,-4687,-4724,-4759,-4795,-4830,-4865,-4898,-4930,-4962,-4993,-5022,-5049,
+-5076,-5101,-5125,-5148,-5170,-5190,-5210,-5229,-5246,-5263,-5279,-5295,-5310,-5326,-5341,-5356,-5370,-5385,-5400,-5414,
+-5429,-5445,-5460,-5476,-5493,-5509,-5525,-5541,-5558,-5574,-5591,-5607,-5622,-5637,-5651,-5665,-5678,-5690,-5701,-5710,
+-5719,-5726,-5732,-5736,-5739,-5740,-5740,-5738,-5735,-5730,-5723,-5715,-5706,-5695,-5683,-5669,-5654,-5638,-5621,-5604,
+-5585,-5566,-5546,-5527,-5506,-5487,-5467,-5447,-5427,-5408,-5390,-5372,-5355,-5339,-5323,-5309,-5296,-5283,-5272,-5261,
+-5252,-5245,-5237,-5231,-5226,-5223,-5220,-5220,-5220,-5223,-5227,-5226,-5219,-5216,-5219,-5222,-5225,-5234,-5243,-5250,
+-5257,-5265,-5273,-5282,-5292,-5302,-5311,-5319,-5328,-5339,-5353,-5366,-5378,-5387,-5394,-5402,-5414,-5425,-5429,-5431,
+-5435,-5441,-5448,-5457,-5467,-5474,-5483,-5492,-5500,-5507,-5514,-5520,-5525,-5528,-5529,-5528,-5527,-5524,-5521,-5516,
+-5510,-5503,-5496,-5489,-5483,-5479,-5478,-5479,-5483,-5491,-5502,-5513,-5526,-5540,-5556,-5572,-5587,-5601,-5614,-5626,
+-5638,-5649,-5660,-5673,-5688,-5703,-5718,-5732,-5745,-5755,-5763,-5769,-5774,-5778,-5784,-5790,-5795,-5801,-5807,-5812,
+-5817,-5823,-5827,-5831,-5833,-5833,-5831,-5827,-5823,-5820,-5816,-5812,-5810,-5810,-5810,-5810,-5812,-5815,-5817,-5820,
+-5823,-5825,-5828,-5831,-5835,-5842,-5849,-5854,-5858,-5861,-5863,-5864,-5865,-5865,-5866,-5866,-5867,-5868,-5869,-5867,
+-5865,-5864,-5862,-5859,-5858,-5857,-5857,-5856,-5856,-5857,-5859,-5863,-5867,-5867,-5867,-5867,-5867,-5867,-5866,-5864,
+-5861,-5854,-5846,-5835,-5822,-5808,-5794,-5780,-5767,-5758,-5749,-5741,-5731,-5722,-5712,-5701,-5690,-5680,-5671,-5662,
+-5653,-5645,-5637,-5630,-5623,-5617,-5611,-5606,-5600,-5595,-5590,-5586,-5582,-5578,-5574,-5570,-5566,-5563,-5561,-5558,
+-5555,-5552,-5548,-5545,-5542,-5538,-5534,-5530,-5525,-5520,-5514,-5508,-5500,-5492,-5484,-5475,-5465,-5454,-5440,-5426,
+-5411,-5396,-5379,-5362,-5343,-5323,-5302,-5280,-5257,-5233,-5209,-5184,-5158,-5131,-5104,-5075,-5046,-5017,-4988,-4958,
+-4928,-4898,-4868,-4838,-4808,-4778,-4749,-4719,-4689,-4659,-4631,-4603,-4576,-4550,-4525,-4501,-4478,-4456,-4435,-4415,
+-4396,-4379,-4362,-4347,-4333,-4320,-4308,-4296,-4286,-4276,-4268,-4260,-4252,-4245,-4238,-4230,-4222,-4215,-4207,-4199,
+-4190,-4182,-4173,-4163,-4153,-4142,-4131,-4119,-4107,-4094,-4081,-4067,-4052,-4037,-4022,-4006,-3989,-3973,-3957,-3940,
+-3922,-3906,-3890,-3874,-3857,-3841,-3826,-3812,-3799,-3787,-3774,-3763,-3753,-3742,-3732,-3723,-3714,-3705,-3698,-3691,
+-3683,-3676,-3669,-3662,-3655,-3648,-3640,-3633,-3625,-3617,-3608,-3599,-3590,-3581,-3571,-3560,-3549,-3538,-3526,-3514,
+-3502,-3490,-3477,-3465,-3453,-3441,-3429,-3417,-3406,-3395,-3385,-3375,-3366,-3358,-3349,-3341,-3335,-3329,-3323,-3318,
+-3314,-3311,-3308,-3306,-3303,-3301,-3299,-3297,-3295,-3294,-3292,-3289,-3287,-3283,-3279,-3275,-3270,-3264,-3257,-3249,
+-3240,-3230,-3219,-3207,-3194,-3180,-3166,-3150,-3135,-3118,-3101,-3084,-3066,-3048,-3030,-3012,-2994,-2976,-2959,-2942,
+-2925,-2909,-2894,-2879,-2865,-2852,-2839,-2826,-2815,-2804,-2793,-2783,-2773,-2764,-2754,-2744,-2735,-2725,-2715,-2705,
+-2694,-2682,-2670,-2658,-2645,-2631,-2617,-2602,-2587,-2570,-2554,-2536,-2518,-2500,-2482,-2463,-2444,-2426,-2407,-2389,
+-2371,-2354,-2337,-2320,-2305,-2289,-2275,-2261,-2248,-2236,-2224,-2213,-2203,-2193,-2183,-2174,-2165,-2157,-2147,-2138,
+-2130,-2121,-2112,-2103,-2093,-2082,-2069,-2055,-2041,-2029,-2016,-2003,-1989,-1975,-1961,-1945,-1930,-1914,-1899,-1884,
+-1868,-1852,-1836,-1821,-1807,-1795,-1783,-1773,-1765,-1757,-1749,-1741,-1734,-1728,-1724,-1721,-1719,-1718,-1718,-1719,
+-1720,-1721,-1723,-1727,-1731,-1736,-1742,-1749,-1755,-1762,-1768,-1774,-1780,-1786,-1792,-1797,-1802,-1806,-1810,-1813,
+-1816,-1818,-1820,-1822,-1822,-1823,-1822,-1821,-1820,-1819,-1817,-1815,-1812,-1809,-1806,-1803,-1800,-1796,-1793,-1789,
+-1786,-1782,-1779,-1775,-1772,-1768,-1765,-1762,-1759,-1756,-1753,-1750,-1747,-1745,-1743,-1741,-1739,-1737,-1735,-1734,
+-1733,-1732,-1731,-1731,-1730,-1730,-1730,-1731,-1731,-1732,-1732,-1733,-1734,-1735,-1736,-1737,-1738,-1739,-1739,-1740,
+-1740,-1740,-1739,-1738,-1737,-1735,-1732,-1729,-1726,-1721,-1716,-1710,-1704,-1697,-1689,-1680,-1671,-1660,-1649,-1638,
+-1625,-1613,-1599,-1585,-1570,-1555,-1540,-1524,-1508,-1493,-1477,-1461,-1443,-1426,-1409,-1394,-1379,-1365,-1352,-1339,
+-1328,-1317,-1309,-1301,-1293,-1286,-1277,-1268,-1260,-1254,-1250,-1246,-1242,-1238,-1233,-1229,-1228,-1226,-1226,-1230,
+-1236,-1243,-1247,-1250,-1255,-1260,-1264,-1267,-1267,-1266,-1261,-1256,-1250,-1247,-1245,-1246,-1248,-1254,-1262,-1271,
+-1282,-1293,-1301,-1302,-1299,-1294,-1285,-1270,-1251,-1232,-1214,-1196,-1177,-1157,-1135,-1113,-1091,-1070,-1051,-1033,
+-1015,-996,-977,-958,-940,-922,-904,-884,-864,-843,-822,-800,-777,-754,-731,-708,-685,-662,-638,-615,
+-593,-571,-549,-529,-509,-491,-473,-458,-443,-430,-418,-408,-399,-392,-385,-380,-376,-373,-370,-368,
+-367,-366,-365,-364,-363,-362,-361,-359,-357,-354,-350,-346,-340,-334,-327,-319,-310,-300,-290,-279,
+-266,-253,-240,-228,-214,-201,-187,-174,-160,-148,-136,-124,-113,-103,-93,-85,-77,-71,-66,-62,
+-59,-58,-57,-56,-57,-59,-61,-63,-67,-71,-76,-81,-87,-92,-98,-104,-109,-114,-120,-125,
+-129,-133,-136,-139,-142,-143,-144,-145,-145,-144,-142,-139,-136,-132,-128,-122,-117,-110,-102,-93,
+-83,-73,-63,-52,-40,-27,-14,0,15,31,46,-44,-30,-14,1,18,35,52,68,86,
+104,122,140,157,175,192,209,226,243,259,275,291,306,320,334,347,361,373,385,397,
+407,417,427,435,443,452,459,467,474,480,485,490,495,500,503,507,510,513,515,517,
+518,519,520,520,520,520,520,519,519,518,517,516,515,513,512,511,510,510,509,509,
+510,511,512,513,515,518,522,525,529,533,538,544,551,558,565,573,582,591,600,610,
+621,632,643,654,666,677,690,702,714,727,740,752,765,777,790,802,815,827,839,851,
+863,875,887,899,910,921,933,944,955,965,975,985,995,1005,1015,1025,1035,1044,1053,1062,
+1070,1078,1085,1092,1100,1106,1112,1118,1124,1129,1134,1138,1142,1145,1149,1151,1153,1155,1156,1157,
+1158,1158,1158,1158,1156,1155,1154,1152,1150,1148,1145,1142,1140,1137,1134,1131,1127,1124,1121,1117,
+1114,1111,1107,1103,1099,1096,1092,1088,1085,1081,1077,1074,1071,1068,1065,1062,1059,1056,1053,1050,
+1048,1046,1043,1041,1039,1037,1034,1032,1030,1028,1026,1024,1021,1019,1017,1015,1013,1010,1007,1004,
+1000,996,993,988,983,978,972,965,958,950,943,934,924,914,905,894,883,872,861,848,
+836,823,811,799,786,773,761,749,738,727,716,706,698,690,684,678,674,671,670,670,
+671,674,678,683,690,699,708,719,730,741,753,765,778,790,802,813,823,832,840,846,
+852,856,858,858,856,851,844,835,823,808,792,774,753,730,706,679,651,621,590,558,
+525,492,460,428,396,365,334,305,278,253,229,207,187,168,152,137,126,117,111,106,
+103,103,105,108,113,120,128,137,147,159,171,183,198,212,226,240,254,266,278,290,
+300,310,318,326,331,335,339,340,340,338,335,329,322,313,301,288,273,257,238,217,
+196,172,146,120,93,64,33,3,-28,-61,-94,-128,-163,-196,-229,-263,-296,-330,-363,-396,
+-428,-460,-491,-521,-551,-579,-608,-635,-662,-689,-716,-741,-767,-793,-819,-845,-872,-899,-926,-955,
+-984,-1014,-1046,-1078,-1111,-1144,-1179,-1214,-1250,-1286,-1322,-1359,-1397,-1433,-1470,-1506,-1541,-1575,-1609,-1640,
+-1670,-1698,-1724,-1748,-1771,-1791,-1809,-1825,-1838,-1850,-1860,-1869,-1875,-1880,-1883,-1886,-1887,-1888,-1889,-1889,
+-1889,-1889,-1891,-1894,-1898,-1904,-1912,-1922,-1934,-1949,-1966,-1987,-2010,-2035,-2064,-2095,-2129,-2165,-2204,-2246,
+-2289,-2334,-2382,-2430,-2481,-2532,-2584,-2637,-2690,-2743,-2796,-2849,-2902,-2954,-3005,-3056,-3105,-3154,-3201,-3247,
+-3293,-3336,-3379,-3420,-3460,-3499,-3537,-3574,-3609,-3644,-3677,-3709,-3741,-3772,-3801,-3830,-3858,-3885,-3911,-3936,
+-3960,-3983,-4005,-4027,-4046,-4066,-4084,-4100,-4116,-4130,-4143,-4155,-4167,-4176,-4185,-4193,-4199,-4204,-4209,-4213,
+-4217,-4221,-4225,-4227,-4229,-4233,-4237,-4242,-4248,-4256,-4264,-4273,-4284,-4296,-4310,-4325,-4342,-4361,-4381,-4403,
+-4426,-4451,-4477,-4505,-4534,-4564,-4595,-4627,-4659,-4692,-4726,-4759,-4793,-4826,-4859,-4891,-4922,-4953,-4984,-5013,
+-5041,-5069,-5095,-5120,-5144,-5167,-5189,-5210,-5230,-5250,-5268,-5286,-5303,-5320,-5336,-5351,-5367,-5382,-5396,-5412,
+-5427,-5442,-5456,-5472,-5487,-5502,-5517,-5532,-5547,-5562,-5577,-5591,-5605,-5619,-5633,-5646,-5659,-5671,-5682,-5692,
+-5701,-5709,-5716,-5722,-5727,-5731,-5733,-5733,-5733,-5730,-5727,-5722,-5715,-5708,-5698,-5688,-5676,-5663,-5648,-5632,
+-5616,-5599,-5581,-5562,-5543,-5523,-5503,-5484,-5463,-5444,-5424,-5404,-5385,-5366,-5347,-5330,-5314,-5298,-5283,-5270,
+-5257,-5245,-5234,-5224,-5215,-5209,-5202,-5197,-5194,-5192,-5191,-5187,-5177,-5164,-5156,-5157,-5159,-5159,-5159,-5165,
+-5176,-5187,-5193,-5198,-5205,-5213,-5222,-5231,-5241,-5250,-5259,-5269,-5280,-5291,-5301,-5312,-5320,-5333,-5362,-5395,
+-5406,-5396,-5394,-5406,-5421,-5431,-5432,-5423,-5419,-5425,-5431,-5434,-5438,-5442,-5444,-5447,-5449,-5450,-5450,-5451,
+-5451,-5451,-5451,-5451,-5450,-5451,-5450,-5452,-5455,-5458,-5463,-5469,-5476,-5484,-5494,-5504,-5516,-5529,-5542,-5557,
+-5572,-5588,-5605,-5622,-5640,-5658,-5677,-5692,-5705,-5716,-5727,-5734,-5741,-5747,-5754,-5760,-5767,-5773,-5780,-5787,
+-5793,-5798,-5802,-5806,-5810,-5813,-5815,-5815,-5815,-5813,-5808,-5802,-5795,-5789,-5783,-5778,-5775,-5773,-5771,-5770,
+-5770,-5770,-5770,-5770,-5773,-5778,-5784,-5791,-5799,-5806,-5812,-5817,-5824,-5827,-5827,-5828,-5829,-5829,-5827,-5824,
+-5820,-5817,-5813,-5808,-5802,-5797,-5792,-5787,-5784,-5783,-5783,-5782,-5780,-5779,-5783,-5786,-5788,-5791,-5794,-5795,
+-5794,-5792,-5788,-5782,-5775,-5767,-5757,-5745,-5731,-5717,-5704,-5692,-5681,-5671,-5662,-5652,-5643,-5633,-5624,-5617,
+-5609,-5602,-5597,-5592,-5587,-5582,-5578,-5575,-5572,-5570,-5567,-5564,-5561,-5557,-5552,-5549,-5546,-5543,-5539,-5536,
+-5533,-5529,-5527,-5524,-5519,-5514,-5509,-5503,-5497,-5491,-5484,-5477,-5468,-5460,-5451,-5441,-5430,-5419,-5407,-5395,
+-5382,-5367,-5353,-5338,-5322,-5305,-5287,-5269,-5250,-5232,-5212,-5191,-5170,-5148,-5125,-5102,-5079,-5055,-5030,-5005,
+-4980,-4953,-4926,-4900,-4873,-4846,-4818,-4790,-4763,-4735,-4708,-4680,-4654,-4628,-4603,-4578,-4553,-4529,-4507,-4486,
+-4465,-4445,-4426,-4408,-4391,-4375,-4360,-4346,-4333,-4321,-4309,-4299,-4289,-4280,-4271,-4263,-4255,-4247,-4239,-4231,
+-4223,-4215,-4206,-4198,-4189,-4180,-4170,-4161,-4150,-4139,-4127,-4115,-4102,-4089,-4075,-4062,-4047,-4032,-4016,-4001,
+-3985,-3970,-3954,-3938,-3923,-3908,-3893,-3879,-3865,-3851,-3839,-3826,-3815,-3803,-3792,-3782,-3772,-3763,-3754,-3744,
+-3735,-3727,-3719,-3710,-3702,-3694,-3685,-3677,-3668,-3658,-3648,-3638,-3628,-3617,-3605,-3592,-3581,-3569,-3556,-3543,
+-3530,-3517,-3504,-3491,-3478,-3464,-3451,-3439,-3427,-3416,-3405,-3394,-3385,-3377,-3369,-3361,-3354,-3348,-3344,-3340,
+-3337,-3334,-3332,-3330,-3328,-3328,-3327,-3327,-3326,-3326,-3325,-3324,-3323,-3321,-3318,-3315,-3311,-3306,-3300,-3292,
+-3284,-3275,-3264,-3253,-3240,-3227,-3212,-3197,-3181,-3164,-3147,-3129,-3112,-3094,-3076,-3058,-3040,-3022,-3005,-2988,
+-2972,-2956,-2942,-2928,-2915,-2902,-2891,-2880,-2869,-2860,-2851,-2842,-2834,-2826,-2818,-2810,-2802,-2795,-2786,-2777,
+-2768,-2757,-2747,-2735,-2723,-2709,-2694,-2678,-2661,-2644,-2625,-2606,-2585,-2564,-2543,-2520,-2498,-2475,-2452,-2430,
+-2407,-2385,-2363,-2342,-2321,-2301,-2282,-2263,-2246,-2230,-2215,-2200,-2187,-2174,-2162,-2151,-2141,-2132,-2123,-2115,
+-2108,-2101,-2095,-2089,-2084,-2078,-2071,-2062,-2048,-2035,-2026,-2019,-2011,-2003,-1995,-1987,-1978,-1969,-1959,-1949,
+-1939,-1929,-1918,-1909,-1899,-1890,-1882,-1875,-1868,-1862,-1856,-1850,-1845,-1839,-1834,-1831,-1828,-1826,-1824,-1823,
+-1823,-1824,-1825,-1826,-1828,-1830,-1833,-1836,-1840,-1843,-1847,-1851,-1855,-1859,-1863,-1866,-1869,-1872,-1875,-1878,
+-1880,-1882,-1883,-1884,-1885,-1886,-1886,-1886,-1886,-1885,-1884,-1882,-1881,-1879,-1877,-1875,-1873,-1871,-1868,-1865,
+-1863,-1860,-1857,-1854,-1851,-1849,-1846,-1843,-1841,-1838,-1836,-1833,-1831,-1829,-1827,-1826,-1824,-1823,-1822,-1821,
+-1820,-1820,-1819,-1819,-1819,-1820,-1820,-1821,-1821,-1822,-1823,-1824,-1825,-1825,-1826,-1827,-1827,-1827,-1827,-1827,
+-1826,-1825,-1824,-1822,-1819,-1816,-1813,-1809,-1804,-1798,-1792,-1785,-1778,-1769,-1760,-1751,-1740,-1729,-1717,-1705,
+-1692,-1679,-1665,-1651,-1636,-1621,-1606,-1591,-1576,-1560,-1545,-1530,-1515,-1500,-1485,-1471,-1458,-1445,-1432,-1418,
+-1405,-1394,-1385,-1376,-1370,-1364,-1359,-1354,-1349,-1345,-1341,-1339,-1337,-1336,-1333,-1331,-1330,-1332,-1335,-1339,
+-1344,-1350,-1356,-1360,-1362,-1363,-1363,-1363,-1364,-1364,-1362,-1357,-1351,-1344,-1337,-1331,-1328,-1327,-1327,-1326,
+-1326,-1327,-1332,-1337,-1336,-1327,-1313,-1295,-1275,-1252,-1229,-1207,-1185,-1163,-1144,-1125,-1107,-1091,-1074,-1058,
+-1042,-1026,-1011,-996,-980,-965,-949,-933,-916,-900,-883,-866,-848,-829,-810,-791,-772,-753,-734,-715,
+-696,-678,-660,-642,-626,-610,-594,-580,-567,-554,-543,-532,-523,-514,-506,-499,-494,-489,-485,-481,
+-478,-475,-472,-470,-468,-465,-463,-461,-459,-456,-453,-449,-446,-441,-436,-430,-423,-416,-408,-399,
+-390,-381,-370,-360,-349,-338,-326,-315,-304,-292,-281,-271,-260,-250,-241,-232,-224,-217,-211,-205,
+-199,-195,-191,-187,-185,-183,-183,-183,-183,-184,-186,-188,-190,-193,-196,-199,-202,-205,-208,-211,
+-214,-216,-219,-221,-223,-224,-225,-226,-225,-225,-224,-222,-219,-217,-213,-208,-203,-197,-191,-184,
+-176,-166,-156,-147,-136,-125,-113,-100,-87,-73,-59,-44,-149,-137,-123,-110,-96,-82,-68,-54,
+-39,-24,-9,5,20,34,49,64,78,93,107,121,135,149,163,177,190,203,216,229,
+241,254,266,278,290,301,312,323,334,344,355,364,374,383,392,400,408,416,423,429,
+435,441,446,450,454,457,460,463,465,467,468,469,470,471,471,471,472,472,471,471,
+472,472,473,475,477,479,481,484,487,491,496,500,505,511,517,524,531,539,547,556,
+565,574,583,592,602,612,623,633,643,653,663,673,684,694,705,715,726,736,747,756,
+766,776,786,795,805,815,826,836,846,856,866,876,885,894,904,914,923,933,943,953,
+963,972,980,989,998,1006,1014,1022,1029,1036,1043,1049,1054,1060,1065,1070,1074,1078,1081,1084,
+1086,1087,1089,1090,1090,1090,1089,1088,1087,1085,1082,1080,1077,1073,1069,1065,1060,1055,1050,1045,
+1039,1033,1028,1022,1015,1009,1003,997,991,985,979,973,967,962,957,952,947,943,940,936,
+933,930,927,925,923,921,919,918,917,917,916,916,915,915,915,915,914,913,912,911,
+909,907,905,903,900,896,892,887,882,875,869,862,855,846,837,828,818,809,798,788,
+778,769,759,749,738,728,718,709,700,692,684,677,671,666,662,659,657,657,657,659,
+662,666,671,678,685,694,703,712,722,733,744,755,766,777,787,797,806,815,822,828,
+833,836,838,838,837,833,828,821,811,800,786,771,754,735,714,693,670,646,621,596,
+570,543,515,488,461,435,409,384,360,337,314,293,274,256,240,225,212,200,191,183,
+176,171,168,167,167,168,171,174,179,184,190,197,205,212,220,229,237,244,250,258,
+265,272,277,282,286,289,292,293,293,292,290,286,281,273,265,255,243,230,216,199,
+181,162,141,119,96,71,45,18,-8,-38,-69,-100,-132,-163,-195,-227,-259,-293,-326,-358,
+-391,-423,-455,-486,-518,-548,-579,-608,-637,-666,-695,-723,-751,-779,-807,-834,-862,-890,-918,-947,
+-977,-1007,-1037,-1069,-1100,-1133,-1166,-1200,-1234,-1269,-1304,-1340,-1375,-1410,-1445,-1480,-1514,-1547,-1579,-1610,
+-1640,-1669,-1696,-1721,-1745,-1766,-1786,-1805,-1821,-1835,-1847,-1858,-1868,-1876,-1882,-1888,-1893,-1896,-1899,-1902,
+-1905,-1907,-1909,-1912,-1917,-1922,-1930,-1939,-1949,-1962,-1977,-1993,-2013,-2035,-2059,-2086,-2115,-2147,-2181,-2217,
+-2255,-2295,-2337,-2381,-2426,-2472,-2519,-2567,-2616,-2665,-2714,-2764,-2813,-2862,-2910,-2958,-3005,-3052,-3097,-3141,
+-3185,-3227,-3268,-3309,-3348,-3386,-3423,-3459,-3494,-3529,-3562,-3594,-3626,-3657,-3687,-3717,-3745,-3773,-3801,-3828,
+-3854,-3879,-3904,-3928,-3951,-3973,-3995,-4015,-4035,-4054,-4072,-4089,-4106,-4121,-4134,-4147,-4160,-4171,-4182,-4192,
+-4201,-4209,-4217,-4225,-4233,-4240,-4248,-4255,-4264,-4272,-4282,-4292,-4304,-4315,-4329,-4343,-4359,-4375,-4393,-4413,
+-4433,-4456,-4479,-4503,-4529,-4556,-4584,-4612,-4641,-4671,-4702,-4734,-4765,-4796,-4828,-4859,-4890,-4921,-4951,-4980,
+-5009,-5037,-5065,-5092,-5117,-5141,-5165,-5188,-5210,-5231,-5251,-5271,-5289,-5307,-5325,-5341,-5357,-5373,-5388,-5404,
+-5419,-5434,-5449,-5463,-5477,-5491,-5505,-5519,-5533,-5547,-5560,-5573,-5586,-5599,-5611,-5624,-5636,-5647,-5658,-5668,
+-5677,-5685,-5693,-5700,-5706,-5710,-5713,-5716,-5717,-5717,-5715,-5712,-5708,-5703,-5696,-5688,-5679,-5668,-5656,-5643,
+-5630,-5614,-5598,-5582,-5565,-5546,-5529,-5510,-5490,-5471,-5452,-5432,-5412,-5393,-5373,-5354,-5337,-5319,-5302,-5288,
+-5273,-5259,-5248,-5237,-5225,-5216,-5208,-5199,-5190,-5183,-5173,-5162,-5153,-5144,-5135,-5128,-5124,-5121,-5120,-5122,
+-5128,-5135,-5140,-5140,-5144,-5153,-5162,-5170,-5177,-5183,-5190,-5199,-5207,-5216,-5225,-5234,-5242,-5252,-5263,-5272,
+-5282,-5291,-5299,-5307,-5315,-5323,-5331,-5338,-5344,-5351,-5356,-5362,-5367,-5373,-5377,-5381,-5385,-5389,-5392,-5395,
+-5398,-5400,-5403,-5406,-5408,-5411,-5414,-5417,-5421,-5425,-5430,-5435,-5441,-5448,-5455,-5463,-5471,-5480,-5491,-5502,
+-5514,-5529,-5543,-5559,-5576,-5592,-5607,-5624,-5641,-5657,-5674,-5691,-5702,-5709,-5714,-5721,-5727,-5733,-5741,-5747,
+-5752,-5758,-5764,-5769,-5775,-5779,-5783,-5785,-5786,-5785,-5783,-5779,-5773,-5767,-5761,-5756,-5750,-5743,-5736,-5729,
+-5723,-5718,-5715,-5715,-5717,-5719,-5723,-5732,-5743,-5754,-5763,-5773,-5781,-5787,-5790,-5792,-5792,-5791,-5788,-5786,
+-5782,-5777,-5772,-5766,-5760,-5754,-5747,-5741,-5736,-5733,-5731,-5728,-5727,-5726,-5724,-5724,-5725,-5726,-5727,-5727,
+-5726,-5724,-5720,-5714,-5708,-5701,-5693,-5684,-5674,-5664,-5653,-5642,-5631,-5620,-5610,-5601,-5593,-5585,-5577,-5570,
+-5564,-5560,-5555,-5550,-5547,-5544,-5541,-5539,-5537,-5535,-5533,-5531,-5528,-5526,-5525,-5523,-5520,-5517,-5514,-5509,
+-5504,-5499,-5495,-5489,-5483,-5478,-5472,-5463,-5455,-5447,-5438,-5429,-5419,-5408,-5398,-5388,-5377,-5366,-5354,-5343,
+-5333,-5321,-5309,-5296,-5283,-5269,-5255,-5241,-5225,-5208,-5190,-5174,-5157,-5140,-5123,-5105,-5087,-5069,-5050,-5031,
+-5012,-4992,-4971,-4949,-4926,-4903,-4879,-4855,-4831,-4807,-4783,-4758,-4733,-4709,-4684,-4660,-4636,-4613,-4590,-4568,
+-4546,-4525,-4504,-4484,-4465,-4446,-4428,-4411,-4396,-4381,-4366,-4353,-4341,-4329,-4318,-4308,-4297,-4287,-4278,-4268,
+-4259,-4250,-4242,-4233,-4224,-4215,-4206,-4196,-4187,-4177,-4167,-4157,-4145,-4134,-4122,-4109,-4096,-4084,-4070,-4056,
+-4042,-4028,-4014,-3999,-3985,-3971,-3957,-3944,-3930,-3917,-3904,-3891,-3879,-3867,-3856,-3845,-3834,-3823,-3813,-3803,
+-3793,-3784,-3774,-3765,-3755,-3745,-3736,-3726,-3715,-3704,-3694,-3682,-3671,-3659,-3647,-3634,-3621,-3607,-3593,-3579,
+-3565,-3551,-3537,-3522,-3508,-3494,-3481,-3468,-3455,-3443,-3431,-3420,-3410,-3401,-3392,-3384,-3377,-3371,-3365,-3361,
+-3357,-3354,-3352,-3351,-3349,-3349,-3348,-3348,-3347,-3347,-3347,-3346,-3345,-3343,-3341,-3337,-3333,-3328,-3322,-3315,
+-3306,-3297,-3287,-3276,-3264,-3251,-3237,-3222,-3206,-3190,-3174,-3156,-3138,-3120,-3103,-3085,-3068,-3051,-3035,-3019,
+-3004,-2990,-2977,-2965,-2953,-2942,-2932,-2923,-2915,-2907,-2900,-2893,-2887,-2882,-2876,-2870,-2864,-2858,-2851,-2844,
+-2836,-2827,-2818,-2807,-2795,-2782,-2767,-2751,-2733,-2714,-2694,-2673,-2651,-2628,-2605,-2579,-2553,-2527,-2500,-2473,
+-2446,-2419,-2392,-2365,-2340,-2315,-2290,-2267,-2245,-2224,-2204,-2185,-2168,-2152,-2137,-2123,-2111,-2101,-2092,-2084,
+-2078,-2072,-2067,-2062,-2059,-2057,-2055,-2050,-2040,-2031,-2027,-2024,-2020,-2018,-2017,-2015,-2013,-2012,-2012,-2011,
+-2010,-2007,-2004,-1999,-1994,-1990,-1987,-1983,-1980,-1977,-1974,-1970,-1967,-1965,-1962,-1960,-1958,-1956,-1955,-1953,
+-1952,-1951,-1950,-1949,-1949,-1949,-1948,-1948,-1948,-1949,-1949,-1949,-1949,-1949,-1949,-1950,-1949,-1948,-1948,-1947,
+-1946,-1945,-1945,-1944,-1943,-1943,-1942,-1940,-1939,-1938,-1937,-1935,-1934,-1932,-1930,-1929,-1927,-1925,-1923,-1921,
+-1920,-1918,-1916,-1914,-1913,-1911,-1909,-1907,-1906,-1905,-1903,-1902,-1901,-1900,-1900,-1899,-1899,-1898,-1898,-1899,
+-1899,-1900,-1900,-1901,-1902,-1903,-1904,-1906,-1907,-1908,-1910,-1911,-1912,-1913,-1914,-1915,-1916,-1916,-1916,-1915,
+-1914,-1913,-1911,-1908,-1905,-1901,-1897,-1892,-1886,-1880,-1872,-1864,-1856,-1847,-1837,-1826,-1815,-1803,-1791,-1778,
+-1764,-1750,-1736,-1722,-1707,-1692,-1676,-1661,-1646,-1631,-1616,-1601,-1586,-1572,-1558,-1545,-1532,-1520,-1508,-1497,
+-1486,-1476,-1466,-1457,-1449,-1442,-1435,-1429,-1425,-1421,-1419,-1417,-1416,-1415,-1415,-1415,-1415,-1416,-1418,-1420,
+-1422,-1423,-1425,-1426,-1427,-1427,-1425,-1424,-1422,-1419,-1416,-1411,-1405,-1398,-1391,-1383,-1376,-1371,-1366,-1362,
+-1356,-1351,-1345,-1340,-1336,-1329,-1318,-1303,-1285,-1265,-1244,-1224,-1204,-1187,-1172,-1157,-1144,-1131,-1119,-1106,
+-1093,-1080,-1068,-1055,-1043,-1032,-1021,-1009,-997,-984,-971,-958,-945,-931,-917,-903,-889,-874,-860,-845,
+-830,-816,-801,-787,-773,-760,-746,-733,-720,-708,-696,-685,-675,-665,-657,-648,-641,-634,-628,-622,
+-617,-612,-608,-604,-600,-596,-593,-589,-586,-583,-580,-576,-572,-568,-564,-559,-554,-548,-542,-535,
+-528,-520,-512,-503,-494,-484,-475,-465,-454,-444,-434,-423,-413,-403,-393,-382,-373,-364,-354,-346,
+-338,-331,-324,-317,-311,-306,-301,-297,-294,-291,-288,-287,-285,-284,-284,-284,-284,-284,-285,-286,
+-287,-289,-290,-292,-293,-294,-294,-295,-295,-296,-295,-294,-293,-291,-289,-286,-283,-280,-275,-270,
+-264,-258,-251,-243,-235,-226,-217,-207,-197,-186,-174,-162,-149,-265,-255,-245,-234,-223,-213,-202,
+-190,-179,-167,-155,-142,-130,-118,-106,-93,-81,-68,-56,-43,-31,-18,-4,8,22,35,49,
+63,77,92,106,120,134,148,163,177,192,206,220,234,247,261,274,287,299,311,323,
+334,344,354,363,371,379,387,393,400,405,410,414,418,421,424,427,430,432,433,435,
+436,437,439,441,442,445,448,450,453,456,460,464,468,473,478,483,489,495,501,508,
+515,523,530,538,546,554,562,570,578,586,595,603,611,619,627,635,643,651,659,667,
+675,683,691,699,706,714,722,731,740,748,757,766,775,784,793,802,811,820,829,839,
+849,858,868,877,886,896,905,913,921,929,938,946,953,960,967,973,980,985,989,994,
+998,1002,1005,1007,1009,1010,1010,1011,1010,1009,1007,1005,1003,1000,996,991,987,982,976,971,
+964,957,951,944,937,930,923,915,908,900,893,886,879,872,866,860,854,849,845,841,
+836,833,830,827,825,824,823,822,822,821,821,822,823,824,825,826,826,827,827,827,
+827,826,825,824,823,821,818,815,811,807,802,797,790,784,778,770,762,755,746,738,
+730,722,713,706,698,690,683,676,669,663,659,654,651,648,647,645,645,646,648,651,
+655,659,664,670,676,683,691,699,708,717,727,736,745,754,762,770,777,783,788,792,
+796,798,799,799,797,794,790,785,778,769,758,747,736,722,707,691,673,655,637,618,
+599,580,561,542,523,504,486,467,449,432,415,398,383,369,355,342,331,321,311,303,
+295,288,282,277,273,270,268,266,264,263,262,261,261,262,262,263,264,265,266,266,
+267,268,269,269,269,268,267,265,262,259,256,250,244,237,229,220,210,198,186,173,
+159,143,126,108,88,68,46,24,1,-23,-49,-77,-105,-134,-163,-193,-224,-255,-285,-316,
+-347,-379,-411,-442,-474,-505,-536,-567,-598,-628,-658,-688,-717,-746,-776,-805,-834,-863,-892,-921,
+-952,-982,-1012,-1043,-1074,-1106,-1139,-1172,-1205,-1238,-1271,-1305,-1339,-1373,-1406,-1439,-1471,-1504,-1535,-1566,
+-1596,-1624,-1652,-1678,-1704,-1727,-1749,-1769,-1788,-1805,-1821,-1835,-1848,-1859,-1869,-1879,-1887,-1894,-1901,-1907,
+-1914,-1920,-1925,-1930,-1936,-1943,-1951,-1960,-1971,-1983,-1996,-2012,-2029,-2048,-2069,-2093,-2118,-2145,-2175,-2206,
+-2238,-2273,-2309,-2347,-2387,-2427,-2469,-2511,-2554,-2598,-2642,-2687,-2731,-2776,-2820,-2864,-2908,-2951,-2994,-3036,
+-3077,-3118,-3157,-3196,-3233,-3270,-3306,-3342,-3376,-3411,-3444,-3476,-3508,-3539,-3569,-3600,-3629,-3658,-3686,-3714,
+-3742,-3770,-3796,-3822,-3848,-3872,-3896,-3920,-3943,-3965,-3986,-4007,-4027,-4046,-4064,-4082,-4098,-4114,-4130,-4144,
+-4158,-4171,-4183,-4194,-4206,-4217,-4229,-4240,-4251,-4263,-4274,-4286,-4299,-4312,-4326,-4341,-4357,-4373,-4390,-4409,
+-4429,-4450,-4471,-4494,-4519,-4543,-4569,-4596,-4623,-4651,-4680,-4710,-4740,-4770,-4800,-4831,-4861,-4891,-4921,-4951,
+-4980,-5009,-5036,-5063,-5090,-5116,-5141,-5165,-5189,-5211,-5233,-5253,-5273,-5292,-5310,-5328,-5345,-5361,-5377,-5393,
+-5408,-5423,-5437,-5450,-5463,-5476,-5489,-5502,-5514,-5527,-5539,-5551,-5562,-5574,-5585,-5596,-5606,-5616,-5625,-5634,
+-5642,-5650,-5657,-5663,-5668,-5673,-5676,-5679,-5681,-5681,-5680,-5678,-5676,-5672,-5666,-5660,-5652,-5643,-5634,-5624,
+-5612,-5599,-5586,-5572,-5556,-5540,-5523,-5506,-5489,-5471,-5453,-5434,-5416,-5397,-5379,-5360,-5342,-5325,-5308,-5293,
+-5278,-5263,-5251,-5240,-5229,-5219,-5209,-5199,-5190,-5180,-5170,-5160,-5153,-5147,-5140,-5137,-5136,-5133,-5132,-5136,
+-5139,-5144,-5151,-5154,-5147,-5138,-5134,-5136,-5140,-5146,-5151,-5155,-5162,-5169,-5176,-5183,-5191,-5199,-5206,-5214,
+-5221,-5229,-5237,-5244,-5251,-5259,-5266,-5273,-5280,-5287,-5293,-5299,-5306,-5311,-5317,-5322,-5328,-5333,-5338,-5342,
+-5347,-5351,-5356,-5360,-5364,-5369,-5374,-5378,-5383,-5388,-5393,-5399,-5405,-5411,-5418,-5425,-5432,-5440,-5449,-5458,
+-5468,-5478,-5489,-5500,-5511,-5524,-5537,-5551,-5566,-5580,-5595,-5610,-5623,-5633,-5642,-5649,-5657,-5666,-5675,-5684,
+-5693,-5701,-5710,-5717,-5724,-5730,-5735,-5738,-5741,-5742,-5741,-5739,-5736,-5732,-5727,-5721,-5716,-5710,-5703,-5696,
+-5691,-5686,-5681,-5677,-5676,-5677,-5680,-5684,-5689,-5696,-5703,-5711,-5718,-5723,-5728,-5733,-5736,-5738,-5739,-5738,
+-5736,-5733,-5730,-5727,-5722,-5716,-5711,-5707,-5701,-5696,-5692,-5692,-5691,-5690,-5688,-5687,-5686,-5683,-5681,-5679,
+-5677,-5673,-5668,-5662,-5655,-5647,-5638,-5628,-5619,-5609,-5599,-5590,-5580,-5571,-5562,-5553,-5545,-5537,-5530,-5523,
+-5517,-5511,-5507,-5503,-5499,-5495,-5492,-5489,-5486,-5484,-5482,-5481,-5478,-5475,-5472,-5469,-5466,-5463,-5460,-5457,
+-5453,-5448,-5443,-5438,-5432,-5426,-5419,-5411,-5402,-5392,-5381,-5370,-5359,-5347,-5334,-5321,-5311,-5300,-5289,-5278,
+-5267,-5256,-5245,-5234,-5222,-5210,-5198,-5187,-5174,-5163,-5151,-5138,-5125,-5112,-5099,-5086,-5073,-5060,-5046,-5031,
+-5016,-5001,-4985,-4968,-4951,-4933,-4915,-4897,-4877,-4857,-4837,-4817,-4797,-4776,-4755,-4734,-4712,-4691,-4669,-4647,
+-4626,-4605,-4584,-4564,-4543,-4524,-4505,-4486,-4468,-4452,-4436,-4420,-4405,-4390,-4376,-4362,-4350,-4338,-4327,-4316,
+-4305,-4294,-4283,-4273,-4263,-4253,-4243,-4233,-4223,-4213,-4203,-4193,-4182,-4171,-4160,-4148,-4136,-4125,-4113,-4101,
+-4088,-4075,-4062,-4049,-4036,-4022,-4009,-3996,-3983,-3971,-3959,-3947,-3935,-3923,-3911,-3900,-3889,-3878,-3867,-3856,
+-3846,-3835,-3825,-3814,-3804,-3793,-3782,-3771,-3760,-3748,-3736,-3724,-3712,-3699,-3686,-3673,-3659,-3645,-3632,-3617,
+-3602,-3587,-3573,-3558,-3543,-3528,-3514,-3501,-3487,-3474,-3461,-3450,-3439,-3429,-3419,-3410,-3402,-3395,-3389,-3384,
+-3380,-3376,-3373,-3370,-3368,-3366,-3365,-3363,-3362,-3361,-3359,-3358,-3356,-3353,-3349,-3345,-3340,-3335,-3328,-3321,
+-3312,-3303,-3293,-3282,-3269,-3256,-3242,-3227,-3212,-3196,-3179,-3163,-3146,-3128,-3112,-3095,-3079,-3062,-3047,-3032,
+-3019,-3006,-2994,-2984,-2974,-2965,-2958,-2950,-2944,-2938,-2934,-2929,-2925,-2921,-2917,-2913,-2910,-2905,-2901,-2896,
+-2890,-2882,-2874,-2865,-2854,-2841,-2828,-2812,-2795,-2776,-2755,-2733,-2710,-2685,-2659,-2632,-2604,-2575,-2545,-2515,
+-2484,-2453,-2422,-2392,-2362,-2332,-2303,-2276,-2249,-2223,-2199,-2176,-2155,-2135,-2118,-2102,-2087,-2075,-2063,-2054,
+-2045,-2039,-2036,-2035,-2034,-2032,-2034,-2039,-2045,-2046,-2040,-2031,-2023,-2023,-2029,-2034,-2038,-2044,-2050,-2056,
+-2063,-2069,-2073,-2077,-2082,-2085,-2086,-2086,-2086,-2088,-2091,-2092,-2092,-2093,-2093,-2092,-2092,-2091,-2089,-2088,
+-2087,-2085,-2082,-2079,-2077,-2074,-2071,-2068,-2065,-2062,-2058,-2055,-2051,-2048,-2044,-2040,-2036,-2032,-2028,-2024,
+-2020,-2017,-2013,-2010,-2006,-2003,-2000,-1997,-1994,-1991,-1989,-1986,-1984,-1982,-1980,-1978,-1976,-1974,-1972,-1971,
+-1969,-1968,-1967,-1965,-1964,-1963,-1963,-1962,-1962,-1961,-1961,-1961,-1961,-1961,-1961,-1962,-1962,-1963,-1964,-1965,
+-1967,-1968,-1970,-1972,-1974,-1976,-1978,-1980,-1982,-1985,-1987,-1989,-1991,-1993,-1994,-1995,-1996,-1997,-1997,-1997,
+-1996,-1995,-1993,-1990,-1987,-1983,-1979,-1973,-1967,-1960,-1953,-1945,-1936,-1926,-1915,-1904,-1892,-1880,-1867,-1853,
+-1839,-1824,-1809,-1794,-1779,-1763,-1748,-1732,-1716,-1701,-1685,-1670,-1655,-1640,-1627,-1613,-1600,-1587,-1575,-1564,
+-1553,-1543,-1534,-1527,-1520,-1513,-1507,-1501,-1496,-1490,-1485,-1480,-1477,-1475,-1473,-1473,-1473,-1472,-1472,-1472,
+-1472,-1471,-1470,-1469,-1467,-1465,-1463,-1460,-1457,-1453,-1448,-1443,-1437,-1430,-1422,-1415,-1407,-1398,-1390,-1381,
+-1372,-1363,-1354,-1344,-1335,-1325,-1314,-1303,-1292,-1280,-1265,-1252,-1242,-1232,-1221,-1209,-1199,-1190,-1181,-1173,
+-1165,-1157,-1148,-1139,-1130,-1122,-1113,-1105,-1097,-1088,-1079,-1071,-1062,-1052,-1043,-1033,-1023,-1013,-1002,-991,
+-980,-969,-957,-945,-933,-921,-909,-897,-885,-873,-862,-850,-839,-829,-818,-809,-799,-791,-782,-775,
+-768,-761,-755,-749,-743,-738,-733,-729,-724,-720,-716,-712,-708,-704,-700,-695,-691,-686,-680,-675,
+-669,-662,-655,-648,-640,-631,-622,-613,-603,-593,-582,-572,-560,-549,-538,-526,-514,-503,-492,-480,
+-469,-458,-448,-437,-427,-418,-409,-401,-393,-386,-379,-374,-368,-364,-360,-356,-354,-352,-350,-349,
+-348,-348,-348,-349,-350,-351,-352,-353,-355,-356,-357,-357,-358,-358,-358,-358,-357,-356,-355,-352,
+-350,-346,-342,-337,-332,-326,-320,-314,-307,-299,-292,-284,-275,-265,-381,-374,-367,-359,-352,-344,
+-335,-326,-317,-307,-297,-287,-277,-267,-257,-247,-235,-224,-212,-200,-188,-175,-162,-148,-134,-120,
+-105,-90,-74,-59,-43,-26,-10,6,23,40,57,75,92,109,127,144,161,177,193,209,
+224,239,254,267,280,293,305,315,325,335,343,351,358,365,371,377,381,386,390,393,
+397,400,403,406,408,411,413,416,419,422,426,429,432,436,440,445,449,454,459,464,
+470,475,481,487,493,500,506,512,518,525,532,538,545,552,558,564,570,577,583,589,
+595,601,608,614,621,627,634,640,647,654,662,669,676,684,692,700,708,716,725,733,
+741,750,759,768,777,787,796,804,812,821,830,838,846,853,860,867,874,880,886,892,
+897,902,907,911,914,917,919,921,922,922,922,921,920,918,916,913,909,905,900,895,
+890,884,878,872,865,858,851,844,837,831,824,817,810,803,797,790,784,779,774,770,
+765,762,759,756,754,752,750,749,749,749,749,749,751,752,753,754,754,755,756,757,
+757,757,756,755,754,753,751,748,745,742,738,734,729,724,718,713,707,701,695,688,
+681,674,668,661,655,650,645,641,637,634,631,630,628,627,627,628,629,631,634,638,
+642,646,651,656,662,668,675,682,688,695,702,709,715,721,727,732,737,741,744,747,
+749,750,751,750,748,745,741,737,731,725,718,709,700,691,680,669,659,650,639,628,
+617,606,595,584,573,563,552,542,532,523,514,505,496,488,479,471,463,455,448,441,
+434,427,421,416,412,406,401,396,390,384,378,371,365,358,352,346,340,334,327,320,
+313,307,300,293,287,280,273,265,257,249,241,232,224,215,206,196,185,175,163,151,
+137,123,109,93,77,60,42,23,4,-17,-39,-63,-87,-112,-138,-165,-192,-220,-249,-278,
+-307,-337,-367,-397,-428,-458,-489,-520,-551,-581,-612,-643,-673,-704,-734,-764,-794,-824,-854,-884,
+-914,-945,-976,-1007,-1038,-1069,-1100,-1132,-1164,-1196,-1229,-1261,-1293,-1325,-1357,-1389,-1421,-1452,-1483,-1513,
+-1543,-1572,-1600,-1627,-1653,-1678,-1702,-1725,-1747,-1767,-1786,-1803,-1819,-1834,-1849,-1863,-1875,-1887,-1898,-1909,
+-1919,-1929,-1938,-1947,-1955,-1965,-1975,-1985,-1997,-2009,-2023,-2038,-2054,-2072,-2091,-2111,-2132,-2156,-2181,-2208,
+-2236,-2265,-2296,-2328,-2362,-2396,-2432,-2468,-2505,-2544,-2582,-2621,-2661,-2700,-2740,-2780,-2820,-2859,-2898,-2937,
+-2976,-3014,-3052,-3089,-3125,-3161,-3197,-3232,-3266,-3300,-3334,-3367,-3399,-3431,-3462,-3494,-3525,-3555,-3584,-3614,
+-3643,-3672,-3701,-3729,-3756,-3782,-3808,-3834,-3859,-3883,-3907,-3930,-3953,-3974,-3995,-4015,-4034,-4053,-4071,-4089,
+-4105,-4121,-4136,-4151,-4165,-4179,-4192,-4206,-4219,-4233,-4246,-4260,-4274,-4288,-4302,-4318,-4334,-4351,-4369,-4388,
+-4407,-4427,-4449,-4471,-4494,-4519,-4544,-4569,-4596,-4624,-4652,-4680,-4709,-4739,-4769,-4799,-4829,-4860,-4890,-4920,
+-4949,-4978,-5007,-5035,-5063,-5090,-5116,-5141,-5166,-5189,-5212,-5234,-5255,-5274,-5293,-5312,-5329,-5347,-5363,-5377,
+-5392,-5406,-5420,-5433,-5446,-5458,-5470,-5481,-5492,-5502,-5513,-5522,-5532,-5541,-5550,-5559,-5567,-5574,-5581,-5588,
+-5594,-5599,-5604,-5608,-5612,-5616,-5618,-5620,-5621,-5621,-5620,-5618,-5615,-5611,-5606,-5600,-5594,-5587,-5578,-5569,
+-5558,-5547,-5535,-5523,-5509,-5495,-5480,-5465,-5449,-5433,-5417,-5401,-5385,-5368,-5353,-5337,-5322,-5305,-5288,-5273,
+-5259,-5247,-5236,-5226,-5216,-5207,-5198,-5188,-5176,-5164,-5152,-5144,-5140,-5136,-5132,-5130,-5130,-5127,-5123,-5123,
+-5124,-5128,-5138,-5151,-5153,-5146,-5140,-5136,-5130,-5128,-5133,-5139,-5141,-5146,-5153,-5157,-5162,-5168,-5174,-5179,
+-5185,-5191,-5196,-5202,-5208,-5214,-5220,-5226,-5232,-5237,-5243,-5249,-5255,-5260,-5266,-5272,-5278,-5283,-5289,-5294,
+-5300,-5305,-5311,-5316,-5322,-5327,-5333,-5338,-5344,-5350,-5356,-5362,-5368,-5374,-5381,-5388,-5394,-5402,-5410,-5417,
+-5426,-5434,-5443,-5452,-5461,-5471,-5480,-5490,-5501,-5511,-5520,-5530,-5540,-5550,-5559,-5568,-5576,-5584,-5591,-5598,
+-5606,-5613,-5621,-5627,-5634,-5641,-5647,-5651,-5655,-5657,-5657,-5656,-5654,-5652,-5650,-5647,-5645,-5641,-5638,-5635,
+-5632,-5630,-5628,-5626,-5625,-5626,-5627,-5630,-5633,-5636,-5640,-5643,-5647,-5650,-5653,-5656,-5659,-5662,-5664,-5665,
+-5666,-5667,-5668,-5668,-5668,-5667,-5666,-5665,-5664,-5663,-5661,-5660,-5658,-5657,-5656,-5656,-5654,-5652,-5648,-5643,
+-5638,-5632,-5625,-5617,-5609,-5600,-5591,-5582,-5572,-5563,-5553,-5544,-5534,-5525,-5516,-5507,-5499,-5491,-5484,-5477,
+-5470,-5464,-5459,-5454,-5450,-5445,-5441,-5438,-5435,-5431,-5428,-5426,-5423,-5419,-5416,-5413,-5409,-5405,-5401,-5396,
+-5391,-5386,-5380,-5373,-5366,-5359,-5351,-5343,-5335,-5325,-5314,-5303,-5291,-5279,-5268,-5257,-5246,-5235,-5223,-5211,
+-5198,-5186,-5174,-5162,-5151,-5139,-5128,-5118,-5109,-5099,-5089,-5080,-5070,-5061,-5052,-5043,-5034,-5024,-5013,-5003,
+-4993,-4982,-4970,-4959,-4948,-4935,-4922,-4909,-4896,-4882,-4867,-4851,-4835,-4818,-4801,-4784,-4766,-4748,-4729,-4711,
+-4692,-4673,-4654,-4635,-4616,-4598,-4579,-4561,-4543,-4525,-4507,-4490,-4473,-4457,-4441,-4426,-4412,-4398,-4384,-4370,
+-4358,-4345,-4333,-4321,-4309,-4296,-4285,-4274,-4263,-4252,-4240,-4229,-4218,-4207,-4196,-4184,-4172,-4161,-4149,-4137,
+-4125,-4113,-4100,-4088,-4076,-4064,-4051,-4039,-4026,-4014,-4002,-3990,-3979,-3967,-3955,-3944,-3933,-3921,-3910,-3899,
+-3888,-3877,-3866,-3855,-3844,-3833,-3821,-3810,-3798,-3786,-3773,-3761,-3748,-3735,-3722,-3709,-3695,-3681,-3666,-3652,
+-3638,-3623,-3609,-3594,-3580,-3565,-3551,-3537,-3523,-3510,-3497,-3485,-3474,-3464,-3454,-3444,-3435,-3427,-3420,-3414,
+-3408,-3402,-3398,-3394,-3391,-3388,-3385,-3382,-3379,-3376,-3372,-3369,-3365,-3360,-3355,-3350,-3343,-3336,-3328,-3320,
+-3310,-3300,-3288,-3277,-3264,-3250,-3235,-3220,-3205,-3189,-3173,-3157,-3140,-3124,-3108,-3093,-3077,-3062,-3048,-3035,
+-3022,-3010,-2999,-2990,-2981,-2974,-2967,-2961,-2957,-2953,-2950,-2947,-2945,-2943,-2941,-2939,-2937,-2935,-2932,-2929,
+-2925,-2919,-2913,-2904,-2895,-2884,-2871,-2857,-2840,-2822,-2802,-2780,-2757,-2732,-2705,-2677,-2648,-2618,-2587,-2555,
+-2522,-2489,-2455,-2422,-2389,-2357,-2325,-2293,-2263,-2235,-2207,-2181,-2157,-2134,-2113,-2094,-2078,-2064,-2052,-2042,
+-2033,-2025,-2019,-2017,-2017,-2019,-2021,-2027,-2036,-2043,-2045,-2046,-2046,-2045,-2043,-2047,-2056,-2066,-2077,-2088,
+-2099,-2109,-2120,-2131,-2141,-2152,-2162,-2170,-2178,-2185,-2191,-2195,-2199,-2201,-2203,-2205,-2208,-2208,-2207,-2206,
+-2205,-2203,-2200,-2198,-2194,-2189,-2185,-2180,-2174,-2169,-2163,-2157,-2150,-2144,-2137,-2131,-2124,-2117,-2110,-2104,
+-2098,-2091,-2085,-2079,-2074,-2068,-2063,-2058,-2053,-2049,-2045,-2041,-2038,-2035,-2032,-2029,-2026,-2024,-2022,-2020,
+-2019,-2018,-2016,-2015,-2014,-2014,-2013,-2013,-2013,-2013,-2013,-2013,-2014,-2015,-2015,-2016,-2018,-2019,-2021,-2022,
+-2024,-2026,-2028,-2031,-2033,-2036,-2039,-2041,-2044,-2047,-2049,-2052,-2055,-2057,-2059,-2061,-2062,-2064,-2064,-2065,
+-2064,-2063,-2062,-2060,-2057,-2054,-2049,-2045,-2039,-2032,-2025,-2017,-2007,-1998,-1987,-1976,-1964,-1951,-1937,-1923,
+-1909,-1894,-1879,-1863,-1847,-1831,-1814,-1798,-1781,-1765,-1748,-1732,-1717,-1701,-1686,-1671,-1657,-1643,-1630,-1619,
+-1608,-1597,-1587,-1577,-1569,-1561,-1554,-1547,-1541,-1535,-1530,-1525,-1520,-1516,-1512,-1509,-1505,-1502,-1500,-1497,
+-1495,-1493,-1491,-1489,-1486,-1483,-1480,-1477,-1473,-1468,-1463,-1458,-1452,-1446,-1440,-1433,-1425,-1418,-1410,-1402,
+-1393,-1384,-1376,-1367,-1358,-1349,-1340,-1331,-1322,-1313,-1304,-1297,-1290,-1283,-1278,-1274,-1269,-1264,-1260,-1255,
+-1249,-1244,-1238,-1233,-1227,-1222,-1217,-1212,-1207,-1202,-1196,-1191,-1185,-1179,-1172,-1166,-1158,-1151,-1143,-1134,
+-1125,-1115,-1105,-1095,-1084,-1073,-1062,-1050,-1039,-1027,-1015,-1003,-992,-980,-969,-958,-947,-937,-927,-917,
+-908,-900,-892,-884,-877,-871,-865,-860,-854,-849,-845,-840,-836,-832,-828,-823,-819,-814,-809,-804,
+-799,-793,-786,-779,-772,-763,-755,-745,-735,-725,-714,-703,-690,-678,-665,-651,-638,-624,-610,-595,
+-581,-567,-553,-538,-524,-511,-499,-487,-475,-464,-453,-444,-434,-426,-418,-412,-407,-402,-399,-396,
+-394,-393,-392,-392,-393,-394,-396,-398,-400,-403,-404,-407,-410,-413,-416,-418,-420,-422,-424,-425,
+-426,-426,-425,-424,-423,-421,-419,-416,-413,-408,-404,-399,-393,-387,-381,-484,-480,-475,-470,-464,
+-458,-452,-445,-437,-429,-421,-412,-403,-393,-384,-374,-363,-352,-341,-329,-317,-304,-291,-276,-262,
+-247,-231,-215,-198,-181,-164,-146,-127,-109,-90,-71,-51,-32,-13,6,26,45,64,84,102,
+120,138,156,172,188,204,219,233,246,259,271,282,292,302,310,318,326,332,339,344,
+349,353,358,362,365,369,372,376,379,382,385,388,391,395,398,401,405,409,413,418,
+422,426,432,437,442,447,453,458,463,468,474,479,484,490,496,501,507,512,517,523,
+528,534,539,544,550,555,561,567,573,578,584,591,597,604,610,617,623,630,638,646,
+653,660,667,675,682,689,697,705,713,721,728,736,743,750,757,764,770,777,782,788,
+793,799,804,809,813,816,819,822,825,827,828,829,830,829,829,828,827,824,822,819,
+816,812,808,803,799,794,789,784,779,773,768,762,757,751,746,741,736,731,727,723,
+719,716,712,710,708,705,703,702,701,701,700,700,700,700,700,700,700,700,701,701,
+700,699,698,697,695,693,690,688,685,681,677,673,669,664,659,654,649,644,639,634,
+629,624,620,616,612,608,605,603,601,599,598,597,598,599,600,602,605,609,613,617,
+621,626,631,636,642,648,653,659,665,671,676,680,685,689,692,695,698,700,701,702,
+702,702,700,698,696,694,692,689,685,681,676,671,666,661,656,651,646,641,635,631,
+627,623,619,616,612,609,606,604,603,603,603,602,601,599,598,596,593,589,585,582,
+579,576,572,567,562,556,550,542,535,527,518,508,497,486,474,461,448,435,421,407,
+393,379,366,352,338,323,310,296,282,268,255,243,229,217,204,191,179,166,153,140,
+126,112,97,83,68,53,37,20,3,-15,-34,-55,-77,-99,-121,-145,-169,-195,-220,-247,
+-274,-302,-330,-358,-387,-417,-447,-476,-507,-538,-568,-599,-630,-660,-691,-721,-752,-782,-813,-843,
+-874,-905,-936,-967,-997,-1028,-1059,-1090,-1120,-1152,-1183,-1214,-1245,-1277,-1308,-1338,-1369,-1400,-1430,-1460,
+-1490,-1519,-1547,-1575,-1602,-1629,-1655,-1679,-1703,-1726,-1748,-1769,-1789,-1808,-1827,-1844,-1861,-1877,-1892,-1907,
+-1921,-1935,-1948,-1962,-1975,-1987,-2000,-2012,-2026,-2039,-2054,-2069,-2085,-2102,-2120,-2138,-2158,-2179,-2200,-2223,
+-2247,-2272,-2298,-2325,-2353,-2382,-2412,-2442,-2474,-2507,-2540,-2573,-2607,-2641,-2677,-2712,-2747,-2783,-2819,-2855,
+-2891,-2927,-2962,-2998,-3033,-3069,-3104,-3139,-3173,-3208,-3242,-3276,-3309,-3343,-3376,-3409,-3442,-3474,-3505,-3537,
+-3568,-3599,-3629,-3659,-3688,-3716,-3745,-3772,-3799,-3825,-3850,-3875,-3898,-3922,-3944,-3965,-3986,-4006,-4025,-4044,
+-4062,-4079,-4095,-4111,-4126,-4140,-4154,-4168,-4182,-4196,-4211,-4224,-4239,-4253,-4268,-4284,-4300,-4317,-4334,-4353,
+-4372,-4392,-4413,-4434,-4457,-4481,-4505,-4531,-4557,-4584,-4612,-4641,-4670,-4699,-4729,-4760,-4791,-4821,-4851,-4882,
+-4912,-4942,-4972,-5002,-5030,-5057,-5085,-5112,-5138,-5162,-5186,-5209,-5231,-5252,-5272,-5291,-5309,-5326,-5342,-5357,
+-5372,-5386,-5399,-5411,-5423,-5433,-5443,-5453,-5462,-5470,-5478,-5486,-5493,-5499,-5506,-5511,-5516,-5521,-5525,-5529,
+-5532,-5535,-5538,-5540,-5541,-5542,-5542,-5541,-5540,-5538,-5536,-5533,-5529,-5524,-5519,-5513,-5506,-5498,-5490,-5481,
+-5472,-5462,-5451,-5439,-5428,-5415,-5402,-5389,-5376,-5362,-5348,-5335,-5322,-5309,-5296,-5283,-5270,-5256,-5242,-5229,
+-5218,-5209,-5199,-5190,-5183,-5175,-5168,-5162,-5156,-5148,-5142,-5138,-5134,-5130,-5128,-5126,-5123,-5120,-5119,-5118,
+-5117,-5115,-5119,-5130,-5145,-5156,-5156,-5153,-5156,-5163,-5163,-5157,-5151,-5151,-5153,-5156,-5158,-5160,-5163,-5167,
+-5170,-5174,-5177,-5181,-5185,-5188,-5192,-5196,-5200,-5204,-5209,-5213,-5218,-5223,-5228,-5232,-5237,-5243,-5248,-5253,
+-5258,-5264,-5270,-5275,-5281,-5287,-5293,-5299,-5305,-5311,-5317,-5323,-5330,-5336,-5343,-5350,-5357,-5364,-5371,-5378,
+-5385,-5393,-5400,-5408,-5416,-5424,-5432,-5440,-5449,-5457,-5465,-5474,-5482,-5490,-5498,-5506,-5513,-5521,-5528,-5534,
+-5541,-5547,-5553,-5558,-5564,-5568,-5572,-5576,-5579,-5582,-5584,-5585,-5587,-5587,-5588,-5588,-5587,-5587,-5586,-5586,
+-5585,-5584,-5583,-5582,-5581,-5581,-5582,-5583,-5585,-5586,-5588,-5590,-5593,-5595,-5597,-5600,-5603,-5605,-5608,-5611,
+-5614,-5616,-5618,-5621,-5623,-5624,-5626,-5627,-5628,-5628,-5628,-5627,-5626,-5624,-5622,-5620,-5616,-5613,-5608,-5603,
+-5597,-5590,-5583,-5576,-5568,-5559,-5550,-5541,-5532,-5522,-5513,-5504,-5494,-5485,-5476,-5467,-5459,-5450,-5443,-5436,
+-5429,-5422,-5416,-5411,-5405,-5400,-5396,-5392,-5388,-5384,-5380,-5376,-5372,-5369,-5365,-5361,-5356,-5351,-5346,-5341,
+-5335,-5329,-5322,-5315,-5308,-5299,-5290,-5281,-5271,-5260,-5250,-5238,-5227,-5216,-5204,-5192,-5180,-5168,-5155,-5143,
+-5130,-5118,-5107,-5096,-5085,-5074,-5063,-5053,-5044,-5035,-5026,-5018,-5010,-5002,-4995,-4988,-4982,-4975,-4968,-4961,
+-4955,-4948,-4940,-4933,-4925,-4917,-4909,-4900,-4890,-4881,-4871,-4860,-4849,-4837,-4825,-4812,-4798,-4784,-4769,-4754,
+-4739,-4723,-4707,-4691,-4675,-4658,-4641,-4624,-4607,-4591,-4574,-4557,-4540,-4523,-4507,-4491,-4475,-4460,-4445,-4429,
+-4415,-4400,-4387,-4373,-4359,-4346,-4333,-4320,-4307,-4294,-4281,-4268,-4256,-4243,-4231,-4219,-4207,-4194,-4182,-4169,
+-4157,-4144,-4132,-4120,-4107,-4094,-4081,-4069,-4057,-4045,-4033,-4021,-4009,-3998,-3986,-3974,-3963,-3951,-3940,-3928,
+-3917,-3906,-3895,-3883,-3872,-3860,-3849,-3837,-3825,-3813,-3800,-3788,-3775,-3762,-3749,-3736,-3722,-3709,-3695,-3681,
+-3667,-3653,-3639,-3626,-3612,-3598,-3585,-3572,-3559,-3547,-3535,-3524,-3512,-3502,-3492,-3482,-3472,-3464,-3457,-3450,
+-3443,-3437,-3431,-3425,-3420,-3416,-3411,-3406,-3402,-3396,-3390,-3384,-3378,-3372,-3365,-3358,-3350,-3341,-3332,-3322,
+-3311,-3300,-3287,-3273,-3259,-3245,-3229,-3214,-3197,-3181,-3165,-3148,-3131,-3115,-3100,-3084,-3069,-3054,-3041,-3028,
+-3016,-3005,-2995,-2986,-2978,-2972,-2966,-2961,-2957,-2954,-2952,-2950,-2950,-2949,-2948,-2948,-2947,-2946,-2944,-2943,
+-2940,-2935,-2930,-2924,-2915,-2905,-2894,-2881,-2866,-2850,-2831,-2811,-2789,-2765,-2739,-2712,-2683,-2653,-2622,-2590,
+-2557,-2523,-2490,-2456,-2422,-2388,-2355,-2322,-2290,-2259,-2230,-2202,-2175,-2151,-2128,-2107,-2088,-2072,-2057,-2044,
+-2034,-2025,-2020,-2018,-2017,-2019,-2024,-2029,-2032,-2036,-2044,-2057,-2076,-2096,-2103,-2095,-2087,-2089,-2100,-2113,
+-2126,-2141,-2156,-2169,-2183,-2196,-2208,-2221,-2232,-2243,-2254,-2263,-2272,-2279,-2285,-2289,-2293,-2296,-2297,-2297,
+-2296,-2295,-2292,-2288,-2284,-2280,-2275,-2270,-2264,-2257,-2251,-2244,-2236,-2229,-2221,-2213,-2205,-2197,-2189,-2181,
+-2174,-2166,-2159,-2152,-2145,-2138,-2132,-2126,-2121,-2115,-2110,-2106,-2102,-2098,-2094,-2091,-2088,-2086,-2083,-2081,
+-2079,-2077,-2076,-2074,-2073,-2072,-2071,-2071,-2070,-2070,-2069,-2069,-2069,-2070,-2070,-2071,-2071,-2072,-2073,-2074,
+-2076,-2077,-2079,-2081,-2083,-2085,-2088,-2090,-2093,-2095,-2098,-2100,-2103,-2105,-2108,-2109,-2111,-2113,-2114,-2114,
+-2115,-2114,-2113,-2112,-2110,-2107,-2103,-2099,-2094,-2088,-2081,-2073,-2065,-2055,-2045,-2034,-2023,-2010,-1997,-1983,
+-1968,-1953,-1937,-1921,-1905,-1888,-1871,-1854,-1837,-1819,-1802,-1785,-1768,-1751,-1734,-1718,-1703,-1688,-1673,-1660,
+-1647,-1634,-1623,-1611,-1601,-1591,-1582,-1573,-1565,-1557,-1551,-1544,-1538,-1532,-1527,-1522,-1518,-1514,-1510,-1506,
+-1502,-1499,-1496,-1493,-1490,-1487,-1484,-1481,-1477,-1474,-1470,-1465,-1461,-1456,-1451,-1446,-1440,-1435,-1429,-1423,
+-1417,-1411,-1405,-1399,-1393,-1387,-1381,-1375,-1369,-1364,-1358,-1354,-1351,-1348,-1346,-1344,-1343,-1341,-1339,-1337,
+-1334,-1331,-1329,-1327,-1324,-1321,-1318,-1316,-1313,-1310,-1307,-1303,-1298,-1294,-1288,-1282,-1276,-1270,-1263,-1255,
+-1246,-1237,-1228,-1217,-1207,-1196,-1184,-1172,-1161,-1148,-1136,-1124,-1112,-1099,-1087,-1076,-1064,-1053,-1041,-1031,
+-1021,-1011,-1002,-993,-985,-977,-971,-964,-958,-953,-947,-943,-938,-934,-929,-925,-921,-916,-911,-906,
+-901,-896,-890,-883,-876,-867,-859,-849,-838,-827,-816,-804,-791,-778,-763,-748,-732,-715,-698,-681,
+-665,-649,-631,-614,-597,-580,-564,-548,-533,-519,-506,-493,-481,-470,-460,-451,-443,-436,-430,-426,
+-422,-419,-418,-417,-419,-420,-422,-425,-429,-433,-437,-442,-448,-453,-458,-463,-468,-472,-477,-481,
+-485,-489,-492,-495,-497,-499,-500,-501,-501,-500,-499,-497,-495,-492,-488,-484,-562,-559,-556,-551,
+-546,-541,-536,-529,-523,-516,-508,-500,-491,-482,-473,-463,-452,-441,-429,-417,-404,-391,-377,-363,
+-348,-333,-317,-300,-283,-266,-247,-229,-210,-190,-171,-151,-131,-110,-89,-68,-48,-28,-8,11,
+30,50,68,87,105,122,138,155,170,184,198,211,223,234,245,255,264,272,279,287,
+293,299,305,309,314,318,322,325,329,332,335,338,341,344,347,350,354,357,361,365,
+368,373,377,382,387,391,396,401,406,411,417,422,427,433,438,444,449,454,460,465,
+471,476,482,488,493,499,504,510,515,521,527,532,538,544,549,555,561,566,572,578,
+584,590,596,602,608,615,620,626,632,638,644,650,655,661,667,673,678,683,688,692,
+697,702,707,711,715,719,723,726,729,732,735,738,739,741,743,744,744,744,744,744,
+743,742,741,739,737,735,733,730,727,724,721,718,715,712,708,705,702,699,695,692,
+690,687,684,682,680,678,676,674,672,670,669,667,666,665,664,663,661,659,657,656,
+654,652,649,646,644,641,637,633,629,625,620,616,611,607,602,597,592,587,582,578,
+574,570,567,564,561,559,558,557,556,556,557,558,560,563,565,569,573,577,581,586,
+592,598,603,609,615,621,627,633,638,642,646,651,655,658,660,662,663,663,663,662,
+662,661,660,658,656,653,651,647,644,641,639,637,635,634,633,632,631,631,631,632,
+633,634,636,639,644,648,652,657,662,668,673,679,683,688,694,698,700,702,704,705,
+706,706,704,702,698,694,689,682,674,665,655,643,630,616,601,584,567,550,532,512,
+492,473,453,433,412,392,372,354,335,316,297,278,260,242,225,209,192,176,160,144,
+128,113,97,82,66,51,35,19,2,-15,-33,-51,-71,-91,-112,-133,-155,-178,-202,-226,
+-252,-278,-304,-331,-358,-386,-415,-444,-474,-503,-533,-564,-594,-625,-655,-686,-716,-746,-777,-807,
+-838,-869,-899,-930,-960,-991,-1021,-1051,-1082,-1112,-1142,-1172,-1202,-1232,-1262,-1292,-1322,-1352,-1382,-1411,
+-1441,-1470,-1498,-1526,-1554,-1581,-1608,-1634,-1660,-1686,-1711,-1735,-1758,-1781,-1803,-1825,-1845,-1866,-1885,-1904,
+-1923,-1941,-1958,-1975,-1992,-2009,-2025,-2041,-2057,-2073,-2089,-2106,-2123,-2139,-2157,-2174,-2193,-2212,-2231,-2251,
+-2271,-2293,-2315,-2338,-2361,-2385,-2411,-2436,-2463,-2490,-2518,-2546,-2575,-2605,-2636,-2666,-2698,-2729,-2761,-2794,
+-2827,-2861,-2895,-2929,-2963,-2998,-3032,-3067,-3102,-3137,-3173,-3208,-3243,-3278,-3313,-3348,-3383,-3417,-3452,-3486,
+-3519,-3552,-3585,-3616,-3647,-3678,-3708,-3738,-3766,-3794,-3820,-3846,-3872,-3896,-3919,-3941,-3962,-3982,-4002,-4020,
+-4038,-4054,-4071,-4086,-4100,-4114,-4128,-4141,-4155,-4168,-4181,-4194,-4207,-4221,-4235,-4249,-4264,-4279,-4296,-4313,
+-4331,-4350,-4370,-4391,-4413,-4435,-4459,-4484,-4509,-4536,-4563,-4592,-4620,-4650,-4680,-4711,-4741,-4772,-4804,-4835,
+-4866,-4897,-4927,-4957,-4987,-5016,-5045,-5072,-5099,-5125,-5150,-5174,-5197,-5219,-5240,-5259,-5278,-5295,-5312,-5327,
+-5342,-5355,-5367,-5379,-5390,-5399,-5408,-5417,-5424,-5431,-5437,-5442,-5446,-5450,-5454,-5457,-5459,-5461,-5462,-5463,
+-5463,-5463,-5462,-5461,-5460,-5458,-5455,-5452,-5448,-5444,-5439,-5434,-5429,-5422,-5415,-5409,-5401,-5393,-5384,-5376,
+-5366,-5355,-5345,-5335,-5325,-5314,-5303,-5292,-5281,-5269,-5258,-5247,-5235,-5225,-5215,-5205,-5195,-5185,-5177,-5168,
+-5159,-5151,-5145,-5140,-5135,-5130,-5126,-5122,-5119,-5116,-5114,-5112,-5111,-5111,-5113,-5118,-5124,-5133,-5141,-5143,
+-5137,-5129,-5126,-5128,-5132,-5136,-5140,-5144,-5146,-5148,-5151,-5154,-5156,-5158,-5160,-5162,-5164,-5166,-5168,-5169,
+-5171,-5172,-5173,-5175,-5177,-5178,-5180,-5182,-5184,-5186,-5188,-5191,-5193,-5196,-5199,-5203,-5206,-5210,-5214,-5218,
+-5223,-5227,-5232,-5237,-5243,-5248,-5254,-5260,-5265,-5271,-5277,-5284,-5290,-5297,-5303,-5310,-5316,-5323,-5330,-5337,
+-5344,-5351,-5358,-5365,-5372,-5380,-5387,-5394,-5401,-5409,-5416,-5423,-5430,-5436,-5443,-5450,-5456,-5463,-5469,-5474,
+-5480,-5486,-5490,-5495,-5500,-5504,-5508,-5511,-5515,-5517,-5520,-5522,-5524,-5525,-5526,-5527,-5528,-5528,-5529,-5529,
+-5530,-5530,-5530,-5530,-5531,-5532,-5532,-5533,-5534,-5536,-5537,-5539,-5541,-5544,-5546,-5549,-5551,-5554,-5557,-5560,
+-5563,-5566,-5569,-5571,-5573,-5576,-5578,-5579,-5580,-5581,-5582,-5581,-5581,-5580,-5578,-5575,-5573,-5569,-5565,-5560,
+-5555,-5549,-5542,-5535,-5528,-5520,-5512,-5504,-5495,-5486,-5477,-5468,-5459,-5450,-5442,-5433,-5425,-5417,-5409,-5401,
+-5394,-5388,-5381,-5375,-5369,-5364,-5358,-5354,-5349,-5344,-5340,-5336,-5332,-5327,-5323,-5320,-5316,-5311,-5306,-5300,
+-5294,-5287,-5280,-5272,-5263,-5255,-5246,-5237,-5227,-5216,-5205,-5194,-5183,-5171,-5159,-5148,-5135,-5123,-5111,-5100,
+-5088,-5076,-5065,-5053,-5042,-5030,-5020,-5010,-5000,-4991,-4983,-4975,-4967,-4960,-4954,-4947,-4941,-4936,-4930,-4925,
+-4919,-4914,-4909,-4904,-4899,-4893,-4888,-4882,-4875,-4869,-4862,-4854,-4846,-4838,-4829,-4820,-4810,-4800,-4789,-4777,
+-4766,-4753,-4740,-4727,-4714,-4700,-4686,-4671,-4656,-4641,-4626,-4611,-4595,-4580,-4565,-4549,-4533,-4518,-4503,-4488,
+-4472,-4457,-4442,-4427,-4413,-4398,-4383,-4368,-4354,-4339,-4325,-4311,-4297,-4283,-4269,-4255,-4241,-4228,-4214,-4201,
+-4188,-4175,-4162,-4149,-4135,-4122,-4109,-4096,-4083,-4070,-4058,-4045,-4033,-4021,-4009,-3997,-3985,-3973,-3961,-3949,
+-3938,-3926,-3914,-3903,-3891,-3879,-3868,-3856,-3844,-3832,-3820,-3808,-3796,-3783,-3770,-3758,-3745,-3732,-3719,-3706,
+-3693,-3680,-3667,-3655,-3642,-3629,-3617,-3605,-3593,-3582,-3571,-3560,-3550,-3540,-3531,-3522,-3514,-3506,-3498,-3491,
+-3484,-3477,-3470,-3464,-3458,-3451,-3445,-3439,-3432,-3425,-3418,-3411,-3403,-3395,-3386,-3377,-3367,-3357,-3347,-3336,
+-3324,-3311,-3297,-3283,-3267,-3251,-3235,-3218,-3201,-3184,-3168,-3150,-3134,-3117,-3101,-3085,-3070,-3055,-3042,-3029,
+-3018,-3006,-2996,-2987,-2980,-2972,-2966,-2961,-2957,-2955,-2952,-2950,-2949,-2948,-2948,-2947,-2947,-2946,-2945,-2944,
+-2941,-2938,-2933,-2927,-2921,-2912,-2902,-2890,-2877,-2862,-2845,-2826,-2806,-2784,-2760,-2734,-2708,-2680,-2650,-2620,
+-2589,-2557,-2524,-2491,-2458,-2425,-2392,-2360,-2329,-2298,-2269,-2240,-2214,-2189,-2166,-2144,-2125,-2108,-2092,-2078,
+-2067,-2057,-2048,-2041,-2037,-2034,-2032,-2033,-2035,-2039,-2045,-2051,-2056,-2063,-2074,-2088,-2105,-2120,-2131,-2139,
+-2150,-2165,-2181,-2195,-2209,-2225,-2239,-2252,-2264,-2277,-2288,-2298,-2308,-2317,-2324,-2330,-2336,-2340,-2343,-2345,
+-2346,-2346,-2345,-2343,-2340,-2337,-2333,-2328,-2323,-2317,-2311,-2305,-2298,-2290,-2283,-2276,-2268,-2261,-2253,-2246,
+-2238,-2231,-2224,-2218,-2211,-2205,-2199,-2194,-2188,-2184,-2179,-2175,-2171,-2167,-2164,-2160,-2158,-2155,-2152,-2150,
+-2148,-2146,-2144,-2143,-2141,-2139,-2138,-2136,-2135,-2134,-2132,-2131,-2130,-2129,-2128,-2128,-2127,-2126,-2126,-2126,
+-2126,-2126,-2126,-2126,-2127,-2128,-2129,-2130,-2131,-2133,-2134,-2136,-2137,-2139,-2140,-2142,-2143,-2144,-2145,-2146,
+-2146,-2146,-2145,-2144,-2142,-2139,-2136,-2133,-2128,-2123,-2117,-2110,-2102,-2093,-2084,-2074,-2063,-2051,-2038,-2024,
+-2010,-1995,-1980,-1964,-1948,-1931,-1914,-1896,-1878,-1860,-1842,-1824,-1806,-1788,-1771,-1753,-1736,-1720,-1704,-1689,
+-1674,-1660,-1647,-1633,-1621,-1610,-1599,-1588,-1577,-1568,-1559,-1550,-1542,-1535,-1529,-1523,-1518,-1514,-1509,-1505,
+-1502,-1498,-1495,-1493,-1490,-1487,-1485,-1482,-1480,-1477,-1475,-1472,-1470,-1467,-1465,-1462,-1459,-1456,-1453,-1450,
+-1447,-1444,-1441,-1439,-1436,-1433,-1431,-1428,-1426,-1423,-1421,-1420,-1419,-1417,-1416,-1416,-1415,-1415,-1415,-1414,
+-1414,-1413,-1413,-1413,-1412,-1410,-1409,-1407,-1405,-1402,-1399,-1395,-1391,-1386,-1381,-1374,-1368,-1360,-1352,-1344,
+-1335,-1325,-1314,-1304,-1292,-1280,-1267,-1255,-1242,-1229,-1217,-1205,-1193,-1181,-1168,-1156,-1143,-1131,-1119,-1108,
+-1097,-1086,-1076,-1066,-1058,-1049,-1041,-1034,-1028,-1021,-1015,-1010,-1005,-1000,-996,-991,-986,-982,-977,-973,
+-967,-962,-956,-950,-943,-936,-927,-918,-907,-895,-883,-870,-856,-841,-826,-810,-792,-774,-756,-737,
+-718,-699,-680,-661,-642,-623,-605,-587,-569,-552,-536,-521,-507,-493,-480,-469,-459,-450,-443,-436,
+-431,-428,-425,-424,-425,-427,-430,-434,-438,-444,-449,-456,-463,-471,-479,-486,-493,-500,-508,-516,
+-522,-529,-536,-542,-547,-552,-556,-559,-562,-564,-567,-568,-568,-568,-567,-565,-562,-603,-600,-597,
+-593,-588,-583,-577,-571,-565,-557,-549,-541,-532,-523,-513,-503,-492,-482,-471,-458,-445,-431,-417,
+-403,-388,-373,-357,-341,-325,-309,-291,-273,-254,-235,-215,-196,-177,-157,-138,-119,-99,-80,-60,
+-41,-22,-3,14,32,49,66,82,98,113,127,141,154,166,178,188,198,207,215,223,
+230,237,243,249,253,258,263,266,270,273,277,280,283,285,288,291,294,298,301,305,
+309,313,317,322,326,330,336,341,346,352,358,364,369,376,382,388,394,400,406,413,
+419,426,433,439,446,452,458,464,471,477,483,489,495,500,506,511,516,522,527,532,
+537,542,547,551,556,560,564,568,573,577,581,585,588,592,597,600,604,608,611,615,
+619,622,625,629,632,635,639,642,645,648,652,655,658,661,663,665,668,670,672,674,
+676,677,678,679,680,681,681,681,681,680,680,679,679,678,677,675,674,672,671,669,
+667,666,664,662,660,658,656,654,651,649,647,644,642,639,636,633,630,626,623,619,
+616,612,607,603,598,593,588,583,578,572,567,561,556,550,545,540,535,531,527,523,
+519,516,513,511,509,508,508,508,509,510,512,515,518,522,526,531,536,542,548,554,
+560,566,573,579,586,593,599,605,610,615,620,624,627,631,633,634,635,635,636,636,
+635,634,632,630,627,624,621,619,617,616,614,614,614,614,615,617,619,622,626,631,
+636,641,647,654,662,671,680,689,699,709,719,729,739,748,758,767,775,782,788,792,
+796,798,799,799,798,796,792,786,779,771,761,750,737,723,706,688,669,648,627,605,
+582,558,535,512,489,465,442,418,394,370,347,324,302,281,260,240,220,200,181,163,
+144,127,109,92,74,57,40,23,6,-11,-29,-48,-67,-86,-107,-127,-148,-170,-193,-216,
+-240,-264,-290,-316,-343,-370,-398,-426,-455,-484,-513,-543,-573,-603,-633,-663,-693,-723,-753,-784,
+-814,-844,-874,-904,-933,-963,-993,-1023,-1052,-1081,-1109,-1138,-1167,-1196,-1225,-1254,-1283,-1312,-1340,-1369,
+-1397,-1426,-1455,-1483,-1511,-1539,-1567,-1594,-1622,-1649,-1676,-1703,-1729,-1755,-1780,-1804,-1829,-1853,-1876,-1898,
+-1921,-1944,-1966,-1987,-2008,-2028,-2049,-2068,-2087,-2106,-2125,-2144,-2162,-2180,-2199,-2217,-2235,-2254,-2273,-2291,
+-2310,-2329,-2349,-2369,-2389,-2409,-2430,-2452,-2474,-2497,-2520,-2545,-2569,-2595,-2621,-2648,-2675,-2703,-2731,-2761,
+-2792,-2823,-2854,-2886,-2919,-2953,-2987,-3021,-3056,-3092,-3127,-3164,-3200,-3237,-3273,-3310,-3346,-3383,-3420,-3456,
+-3492,-3527,-3562,-3596,-3629,-3662,-3694,-3726,-3756,-3785,-3813,-3840,-3867,-3892,-3915,-3937,-3959,-3979,-3999,-4017,
+-4034,-4050,-4065,-4079,-4093,-4106,-4118,-4130,-4142,-4153,-4164,-4175,-4186,-4198,-4209,-4222,-4235,-4248,-4262,-4277,
+-4293,-4310,-4328,-4347,-4367,-4388,-4409,-4433,-4457,-4482,-4509,-4536,-4564,-4593,-4622,-4652,-4683,-4714,-4745,-4776,
+-4808,-4839,-4870,-4901,-4931,-4961,-4990,-5019,-5047,-5074,-5100,-5124,-5148,-5171,-5193,-5214,-5233,-5251,-5268,-5284,
+-5298,-5311,-5324,-5335,-5345,-5355,-5363,-5370,-5376,-5381,-5386,-5389,-5392,-5394,-5395,-5396,-5396,-5396,-5394,-5393,
+-5391,-5388,-5385,-5381,-5377,-5372,-5368,-5363,-5357,-5350,-5343,-5337,-5330,-5322,-5314,-5306,-5298,-5289,-5280,-5271,
+-5261,-5252,-5242,-5232,-5222,-5213,-5203,-5192,-5182,-5173,-5164,-5155,-5147,-5139,-5132,-5124,-5118,-5112,-5105,-5100,
+-5095,-5091,-5085,-5081,-5078,-5077,-5076,-5076,-5077,-5079,-5080,-5081,-5082,-5084,-5086,-5089,-5093,-5100,-5109,-5116,
+-5120,-5122,-5124,-5129,-5135,-5140,-5144,-5149,-5153,-5156,-5160,-5163,-5165,-5168,-5170,-5171,-5173,-5174,-5175,-5175,
+-5175,-5175,-5175,-5175,-5175,-5175,-5175,-5174,-5174,-5175,-5175,-5175,-5176,-5177,-5178,-5180,-5181,-5183,-5186,-5188,
+-5192,-5195,-5198,-5202,-5207,-5211,-5216,-5221,-5226,-5231,-5237,-5243,-5249,-5255,-5261,-5268,-5274,-5281,-5288,-5294,
+-5301,-5308,-5315,-5321,-5328,-5335,-5342,-5348,-5355,-5362,-5368,-5375,-5381,-5387,-5393,-5399,-5405,-5410,-5416,-5421,
+-5426,-5430,-5435,-5439,-5443,-5447,-5450,-5453,-5456,-5459,-5461,-5463,-5465,-5467,-5468,-5469,-5470,-5471,-5472,-5473,
+-5473,-5474,-5475,-5475,-5476,-5477,-5478,-5479,-5480,-5481,-5483,-5485,-5486,-5489,-5491,-5493,-5496,-5498,-5501,-5504,
+-5507,-5510,-5512,-5515,-5518,-5520,-5522,-5524,-5526,-5527,-5528,-5528,-5528,-5528,-5527,-5526,-5524,-5521,-5518,-5514,
+-5510,-5505,-5500,-5495,-5489,-5482,-5475,-5468,-5461,-5453,-5445,-5438,-5430,-5422,-5414,-5406,-5398,-5391,-5384,-5376,
+-5370,-5363,-5357,-5351,-5345,-5340,-5334,-5329,-5325,-5320,-5316,-5312,-5307,-5303,-5299,-5294,-5290,-5285,-5280,-5275,
+-5270,-5264,-5259,-5252,-5245,-5237,-5229,-5221,-5212,-5202,-5192,-5182,-5171,-5161,-5149,-5138,-5126,-5115,-5103,-5091,
+-5080,-5068,-5057,-5045,-5034,-5023,-5013,-5002,-4993,-4983,-4974,-4965,-4957,-4950,-4942,-4935,-4929,-4922,-4916,-4911,
+-4905,-4900,-4894,-4888,-4884,-4878,-4873,-4868,-4862,-4857,-4851,-4845,-4839,-4833,-4826,-4819,-4811,-4803,-4795,-4787,
+-4777,-4768,-4758,-4748,-4737,-4725,-4713,-4701,-4688,-4676,-4663,-4650,-4637,-4623,-4609,-4595,-4581,-4567,-4552,-4537,
+-4522,-4507,-4492,-4477,-4461,-4446,-4430,-4415,-4400,-4385,-4370,-4354,-4339,-4324,-4308,-4293,-4278,-4264,-4249,-4234,
+-4220,-4206,-4191,-4177,-4163,-4150,-4136,-4122,-4108,-4095,-4081,-4068,-4055,-4042,-4029,-4016,-4004,-3991,-3979,-3967,
+-3956,-3944,-3932,-3920,-3908,-3896,-3884,-3872,-3861,-3849,-3838,-3826,-3814,-3801,-3789,-3777,-3765,-3754,-3742,-3730,
+-3718,-3707,-3695,-3683,-3672,-3661,-3649,-3638,-3628,-3617,-3607,-3597,-3588,-3579,-3571,-3563,-3555,-3547,-3540,-3533,
+-3527,-3520,-3513,-3506,-3500,-3492,-3485,-3478,-3471,-3464,-3456,-3448,-3440,-3431,-3421,-3411,-3400,-3389,-3378,-3365,
+-3352,-3338,-3323,-3308,-3292,-3276,-3259,-3242,-3224,-3207,-3189,-3171,-3154,-3137,-3120,-3103,-3087,-3072,-3058,-3044,
+-3032,-3020,-3009,-2999,-2990,-2981,-2974,-2969,-2964,-2959,-2955,-2952,-2950,-2947,-2946,-2944,-2943,-2941,-2939,-2936,
+-2933,-2930,-2925,-2920,-2913,-2905,-2896,-2885,-2873,-2859,-2844,-2827,-2809,-2789,-2768,-2745,-2721,-2696,-2670,-2642,
+-2613,-2584,-2554,-2524,-2493,-2463,-2433,-2403,-2373,-2345,-2317,-2290,-2264,-2240,-2217,-2196,-2176,-2159,-2144,-2131,
+-2119,-2109,-2101,-2093,-2088,-2085,-2084,-2082,-2080,-2081,-2083,-2085,-2090,-2097,-2106,-2116,-2127,-2138,-2149,-2162,
+-2176,-2190,-2204,-2218,-2232,-2245,-2258,-2271,-2283,-2295,-2306,-2317,-2326,-2334,-2342,-2349,-2354,-2358,-2362,-2365,
+-2367,-2368,-2368,-2368,-2366,-2364,-2362,-2359,-2355,-2351,-2346,-2341,-2336,-2331,-2326,-2320,-2314,-2308,-2303,-2297,
+-2292,-2286,-2281,-2276,-2272,-2267,-2263,-2259,-2255,-2252,-2249,-2246,-2243,-2240,-2238,-2235,-2233,-2232,-2230,-2229,
+-2227,-2224,-2222,-2219,-2217,-2215,-2213,-2210,-2208,-2206,-2203,-2200,-2198,-2195,-2192,-2190,-2187,-2185,-2182,-2180,
+-2177,-2175,-2173,-2171,-2170,-2168,-2167,-2166,-2165,-2165,-2164,-2164,-2164,-2164,-2164,-2164,-2164,-2164,-2164,-2163,
+-2163,-2162,-2161,-2160,-2158,-2155,-2153,-2149,-2145,-2140,-2135,-2128,-2121,-2114,-2105,-2096,-2085,-2074,-2063,-2050,
+-2037,-2023,-2008,-1992,-1976,-1960,-1943,-1925,-1908,-1890,-1872,-1853,-1835,-1817,-1798,-1780,-1762,-1745,-1728,-1712,
+-1695,-1680,-1665,-1651,-1637,-1624,-1612,-1601,-1589,-1579,-1570,-1560,-1552,-1544,-1537,-1530,-1525,-1520,-1516,-1511,
+-1507,-1504,-1500,-1497,-1494,-1492,-1491,-1490,-1489,-1488,-1488,-1487,-1487,-1486,-1486,-1486,-1486,-1486,-1486,-1486,
+-1486,-1486,-1486,-1487,-1487,-1487,-1487,-1487,-1488,-1488,-1489,-1489,-1489,-1490,-1490,-1490,-1491,-1491,-1491,-1492,
+-1492,-1491,-1490,-1490,-1489,-1487,-1485,-1482,-1479,-1476,-1471,-1466,-1461,-1455,-1448,-1440,-1432,-1423,-1413,-1403,
+-1392,-1381,-1368,-1356,-1344,-1332,-1319,-1307,-1293,-1279,-1265,-1253,-1240,-1227,-1212,-1198,-1183,-1169,-1156,-1143,
+-1130,-1119,-1108,-1097,-1087,-1078,-1070,-1062,-1054,-1048,-1042,-1037,-1032,-1027,-1023,-1019,-1015,-1010,-1006,-1001,
+-995,-990,-985,-979,-972,-964,-955,-945,-935,-924,-912,-900,-886,-871,-855,-838,-820,-802,-783,-763,
+-743,-723,-703,-682,-662,-642,-622,-603,-584,-566,-549,-532,-516,-502,-488,-476,-465,-455,-447,-440,
+-435,-431,-429,-427,-427,-429,-431,-434,-439,-445,-452,-459,-467,-475,-484,-493,-502,-512,-521,-530,
+-539,-547,-555,-563,-572,-579,-585,-590,-594,-598,-601,-603,-605,-606,-606,-605,-604,-603,-606,-603,
+-599,-594,-589,-582,-576,-569,-562,-553,-545,-536,-528,-518,-508,-498,-487,-476,-465,-454,-442,-430,
+-417,-403,-389,-374,-360,-345,-329,-314,-298,-281,-265,-248,-232,-215,-198,-181,-163,-146,-128,-111,
+-94,-77,-60,-42,-26,-10,5,20,35,49,63,76,88,100,112,122,132,142,151,159,
+166,173,179,185,191,196,200,205,209,212,216,219,223,226,229,231,235,238,241,244,
+248,252,256,261,266,271,276,282,288,294,300,306,313,319,326,334,341,348,356,363,
+371,378,386,394,401,409,417,425,432,440,446,453,460,467,473,479,485,491,496,501,
+505,510,514,518,522,526,529,532,535,538,541,543,546,548,550,552,554,556,558,560,
+562,565,567,569,571,574,576,579,582,584,586,590,593,596,599,602,605,609,612,615,
+618,621,624,627,629,632,634,637,638,640,642,643,644,645,646,646,647,647,647,646,
+645,644,643,642,640,638,636,633,631,628,624,621,617,613,609,605,600,595,590,585,
+579,574,568,562,556,549,543,537,530,524,518,511,505,499,493,488,483,479,474,470,
+467,464,462,460,459,459,460,461,462,465,468,472,476,481,486,492,499,505,512,519,
+527,534,542,550,557,565,572,578,585,591,596,601,605,609,611,614,616,617,617,617,
+617,616,615,614,612,611,610,608,607,606,606,606,607,608,609,612,616,620,626,632,
+640,647,656,665,674,684,695,707,719,731,743,755,767,778,790,801,810,820,828,835,
+841,846,850,852,852,851,848,843,838,829,819,807,794,779,763,745,727,707,686,665,
+642,619,595,570,545,519,493,467,441,416,391,367,342,318,295,272,249,227,206,185,
+164,144,125,105,86,68,49,31,12,-6,-25,-44,-63,-83,-103,-124,-145,-167,-189,-213,
+-236,-261,-286,-311,-338,-365,-392,-419,-448,-476,-505,-534,-563,-593,-623,-652,-682,-711,-741,-771,
+-801,-830,-859,-888,-916,-945,-974,-1002,-1031,-1059,-1087,-1114,-1142,-1169,-1196,-1224,-1251,-1279,-1307,-1334,
+-1362,-1389,-1417,-1445,-1473,-1501,-1529,-1557,-1585,-1613,-1641,-1669,-1698,-1726,-1753,-1781,-1808,-1836,-1863,-1890,
+-1916,-1942,-1967,-1992,-2017,-2042,-2066,-2089,-2112,-2135,-2157,-2178,-2199,-2220,-2240,-2261,-2281,-2300,-2319,-2338,
+-2357,-2375,-2394,-2413,-2431,-2449,-2468,-2487,-2506,-2526,-2546,-2566,-2588,-2610,-2632,-2655,-2679,-2703,-2729,-2755,
+-2782,-2810,-2839,-2869,-2900,-2932,-2964,-2998,-3032,-3066,-3102,-3138,-3175,-3211,-3249,-3286,-3324,-3362,-3400,-3438,
+-3475,-3512,-3549,-3585,-3621,-3656,-3689,-3722,-3754,-3785,-3814,-3843,-3870,-3896,-3921,-3944,-3966,-3987,-4006,-4024,
+-4041,-4056,-4071,-4084,-4097,-4109,-4120,-4131,-4140,-4149,-4158,-4167,-4176,-4185,-4194,-4204,-4214,-4225,-4237,-4249,
+-4263,-4277,-4292,-4308,-4325,-4343,-4363,-4384,-4406,-4429,-4453,-4478,-4504,-4532,-4560,-4588,-4617,-4647,-4677,-4708,
+-4739,-4770,-4800,-4831,-4862,-4892,-4922,-4950,-4978,-5006,-5032,-5057,-5082,-5106,-5129,-5149,-5169,-5188,-5206,-5222,
+-5237,-5251,-5264,-5276,-5286,-5295,-5304,-5311,-5317,-5322,-5326,-5329,-5331,-5333,-5333,-5332,-5331,-5330,-5328,-5325,
+-5322,-5317,-5312,-5308,-5302,-5297,-5290,-5284,-5278,-5270,-5262,-5255,-5247,-5238,-5230,-5221,-5212,-5203,-5194,-5185,
+-5176,-5167,-5158,-5149,-5139,-5131,-5122,-5114,-5105,-5097,-5089,-5081,-5074,-5068,-5062,-5056,-5053,-5049,-5045,-5043,
+-5042,-5038,-5032,-5031,-5034,-5038,-5040,-5042,-5045,-5050,-5056,-5062,-5068,-5077,-5088,-5098,-5100,-5095,-5089,-5089,
+-5094,-5100,-5108,-5115,-5122,-5128,-5135,-5140,-5145,-5150,-5155,-5159,-5162,-5165,-5168,-5170,-5171,-5172,-5173,-5173,
+-5173,-5172,-5171,-5171,-5170,-5168,-5167,-5165,-5164,-5163,-5161,-5160,-5159,-5158,-5158,-5158,-5158,-5158,-5159,-5160,
+-5161,-5163,-5165,-5168,-5171,-5174,-5178,-5182,-5186,-5191,-5195,-5201,-5206,-5212,-5217,-5223,-5230,-5236,-5242,-5249,
+-5255,-5262,-5269,-5275,-5282,-5289,-5295,-5302,-5308,-5315,-5321,-5327,-5333,-5339,-5345,-5350,-5356,-5361,-5366,-5371,
+-5375,-5379,-5384,-5387,-5391,-5394,-5397,-5400,-5403,-5405,-5407,-5409,-5411,-5413,-5414,-5415,-5416,-5417,-5418,-5418,
+-5419,-5419,-5420,-5420,-5421,-5422,-5422,-5423,-5424,-5425,-5426,-5428,-5429,-5431,-5433,-5435,-5437,-5439,-5441,-5444,
+-5446,-5449,-5452,-5454,-5457,-5459,-5461,-5464,-5465,-5467,-5469,-5470,-5470,-5471,-5471,-5471,-5470,-5469,-5467,-5465,
+-5462,-5459,-5456,-5452,-5447,-5443,-5440,-5435,-5430,-5423,-5417,-5411,-5405,-5397,-5390,-5383,-5376,-5370,-5364,-5358,
+-5352,-5346,-5341,-5335,-5330,-5325,-5321,-5316,-5312,-5308,-5304,-5301,-5297,-5294,-5290,-5287,-5283,-5280,-5276,-5272,
+-5268,-5263,-5258,-5253,-5248,-5242,-5236,-5229,-5222,-5215,-5207,-5199,-5190,-5181,-5171,-5161,-5151,-5141,-5131,-5120,
+-5109,-5098,-5087,-5076,-5065,-5054,-5043,-5032,-5021,-5011,-5001,-4991,-4981,-4972,-4963,-4955,-4946,-4938,-4930,-4922,
+-4914,-4907,-4900,-4894,-4887,-4880,-4874,-4868,-4861,-4855,-4849,-4843,-4836,-4830,-4824,-4817,-4810,-4803,-4796,-4789,
+-4781,-4773,-4764,-4755,-4746,-4737,-4727,-4717,-4707,-4696,-4685,-4674,-4663,-4650,-4638,-4625,-4613,-4600,-4586,-4573,
+-4559,-4545,-4531,-4516,-4502,-4487,-4472,-4456,-4441,-4425,-4410,-4394,-4378,-4362,-4347,-4331,-4316,-4300,-4284,-4269,
+-4254,-4238,-4223,-4208,-4193,-4178,-4163,-4149,-4135,-4121,-4107,-4093,-4080,-4066,-4053,-4040,-4027,-4014,-4002,-3989,
+-3977,-3965,-3953,-3941,-3929,-3917,-3906,-3894,-3882,-3871,-3859,-3848,-3836,-3825,-3814,-3803,-3791,-3780,-3769,-3758,
+-3747,-3737,-3726,-3715,-3705,-3695,-3685,-3675,-3665,-3656,-3647,-3638,-3629,-3621,-3614,-3606,-3599,-3592,-3585,-3578,
+-3572,-3565,-3559,-3552,-3546,-3539,-3532,-3525,-3518,-3511,-3503,-3495,-3486,-3476,-3467,-3456,-3445,-3433,-3421,-3408,
+-3395,-3381,-3366,-3351,-3335,-3319,-3302,-3285,-3267,-3249,-3231,-3214,-3196,-3179,-3161,-3144,-3128,-3111,-3095,-3080,
+-3066,-3052,-3040,-3028,-3017,-3007,-2998,-2990,-2982,-2975,-2969,-2964,-2958,-2954,-2950,-2946,-2942,-2939,-2934,-2930,
+-2925,-2920,-2914,-2908,-2900,-2892,-2882,-2872,-2861,-2848,-2834,-2819,-2802,-2784,-2765,-2745,-2724,-2701,-2678,-2654,
+-2629,-2603,-2577,-2550,-2523,-2497,-2471,-2444,-2418,-2392,-2367,-2342,-2319,-2298,-2277,-2257,-2239,-2223,-2207,-2193,
+-2181,-2170,-2161,-2154,-2150,-2147,-2145,-2145,-2146,-2148,-2150,-2155,-2159,-2161,-2162,-2167,-2176,-2184,-2193,-2203,
+-2213,-2224,-2234,-2245,-2256,-2267,-2278,-2289,-2300,-2311,-2321,-2330,-2336,-2341,-2348,-2355,-2360,-2364,-2368,-2371,
+-2373,-2375,-2376,-2376,-2375,-2374,-2373,-2371,-2369,-2367,-2364,-2360,-2357,-2354,-2351,-2347,-2344,-2341,-2337,-2334,
+-2332,-2329,-2326,-2324,-2322,-2319,-2317,-2316,-2314,-2313,-2312,-2311,-2309,-2309,-2309,-2309,-2307,-2306,-2305,-2303,
+-2301,-2299,-2297,-2295,-2293,-2290,-2288,-2285,-2281,-2278,-2274,-2270,-2266,-2262,-2257,-2253,-2248,-2243,-2239,-2234,
+-2229,-2225,-2220,-2216,-2212,-2208,-2204,-2200,-2197,-2194,-2191,-2189,-2186,-2184,-2182,-2180,-2178,-2177,-2175,-2174,
+-2172,-2170,-2169,-2166,-2164,-2162,-2158,-2155,-2151,-2147,-2141,-2136,-2129,-2122,-2115,-2106,-2097,-2087,-2076,-2064,
+-2052,-2039,-2025,-2011,-1996,-1980,-1964,-1948,-1930,-1913,-1895,-1878,-1859,-1841,-1823,-1805,-1787,-1769,-1752,-1735,
+-1719,-1702,-1687,-1672,-1658,-1644,-1631,-1619,-1607,-1597,-1587,-1578,-1569,-1562,-1554,-1547,-1541,-1536,-1531,-1526,
+-1522,-1519,-1516,-1514,-1512,-1511,-1511,-1511,-1512,-1513,-1514,-1515,-1517,-1519,-1521,-1523,-1525,-1528,-1530,-1533,
+-1535,-1537,-1540,-1543,-1545,-1547,-1550,-1552,-1554,-1556,-1558,-1560,-1561,-1563,-1564,-1565,-1566,-1566,-1566,-1566,
+-1565,-1564,-1563,-1560,-1558,-1555,-1551,-1547,-1542,-1537,-1531,-1524,-1516,-1508,-1499,-1489,-1478,-1467,-1455,-1443,
+-1430,-1417,-1405,-1393,-1381,-1367,-1352,-1336,-1320,-1304,-1288,-1271,-1255,-1239,-1223,-1208,-1193,-1178,-1164,-1151,
+-1138,-1126,-1115,-1104,-1093,-1084,-1075,-1067,-1060,-1053,-1046,-1040,-1035,-1030,-1025,-1021,-1017,-1013,-1009,-1004,
+-999,-994,-988,-982,-975,-967,-958,-949,-939,-928,-917,-904,-890,-875,-859,-842,-825,-807,-788,-769,
+-749,-729,-709,-689,-669,-649,-629,-609,-590,-572,-555,-538,-522,-507,-493,-480,-469,-459,-450,-444,
+-438,-434,-431,-430,-431,-433,-436,-439,-444,-451,-457,-464,-471,-479,-488,-496,-505,-515,-525,-534,
+-543,-552,-560,-569,-577,-584,-590,-596,-601,-605,-609,-611,-613,-614,-614,-613,-612,-609,-606,-581,
+-576,-570,-563,-556,-549,-542,-534,-525,-516,-507,-497,-488,-478,-468,-458,-448,-438,-427,-416,-405,
+-395,-384,-371,-359,-347,-334,-322,-309,-296,-282,-269,-256,-243,-229,-215,-201,-187,-173,-158,-144,
+-129,-114,-100,-86,-72,-58,-44,-31,-18,-5,7,18,30,41,52,62,71,81,90,98,
+105,112,119,126,131,137,142,147,151,156,160,163,167,171,174,178,181,184,188,192,
+196,200,204,209,213,218,224,230,236,242,248,255,262,269,277,285,292,300,309,317,
+326,334,343,352,360,369,378,387,396,404,412,420,428,436,444,451,457,464,470,476,
+481,486,491,496,500,503,507,509,512,514,516,518,520,522,523,524,525,527,528,529,
+530,531,532,533,535,536,537,539,541,543,545,548,551,553,556,559,562,564,568,571,
+575,578,581,585,589,592,595,599,602,604,607,609,611,613,615,616,617,618,618,619,
+618,617,617,615,614,612,610,607,604,600,597,593,589,584,579,573,568,562,556,549,
+543,536,529,522,515,508,501,494,486,479,472,466,460,454,448,443,438,434,430,426,
+423,421,420,419,419,419,420,422,424,428,432,436,442,448,454,460,467,475,483,491,
+499,507,516,524,532,540,547,554,561,567,573,579,584,588,592,596,598,600,602,603,
+603,603,603,603,603,603,603,603,603,603,604,604,605,607,609,612,616,620,625,631,
+638,646,654,664,674,684,695,706,717,729,741,753,765,777,788,799,809,818,827,835,
+841,847,851,854,855,855,853,849,844,836,828,818,806,793,777,760,742,724,704,684,
+662,640,616,591,567,541,516,491,465,440,415,389,365,340,316,293,270,247,224,202,
+181,160,139,118,98,78,58,38,18,-1,-21,-40,-61,-81,-102,-124,-146,-168,-191,-214,
+-238,-263,-288,-313,-340,-366,-393,-421,-449,-477,-506,-534,-563,-592,-621,-651,-680,-709,-739,-768,
+-797,-825,-853,-882,-910,-937,-964,-991,-1018,-1045,-1071,-1098,-1124,-1150,-1175,-1201,-1227,-1253,-1279,-1305,
+-1331,-1357,-1384,-1410,-1437,-1465,-1492,-1520,-1549,-1577,-1606,-1634,-1663,-1692,-1722,-1751,-1781,-1811,-1840,-1870,
+-1900,-1929,-1957,-1986,-2015,-2044,-2071,-2098,-2125,-2151,-2177,-2202,-2227,-2251,-2275,-2297,-2319,-2341,-2362,-2383,
+-2403,-2423,-2442,-2461,-2479,-2497,-2515,-2532,-2550,-2568,-2586,-2605,-2624,-2643,-2663,-2683,-2704,-2726,-2748,-2772,
+-2796,-2821,-2847,-2874,-2902,-2931,-2961,-2992,-3024,-3057,-3091,-3126,-3161,-3197,-3233,-3270,-3308,-3346,-3384,-3422,
+-3460,-3498,-3535,-3572,-3608,-3644,-3679,-3713,-3746,-3778,-3808,-3838,-3866,-3893,-3919,-3943,-3966,-3987,-4007,-4025,
+-4042,-4058,-4073,-4086,-4099,-4110,-4121,-4130,-4139,-4148,-4156,-4163,-4169,-4176,-4184,-4192,-4200,-4209,-4219,-4228,
+-4239,-4250,-4262,-4275,-4290,-4305,-4321,-4339,-4358,-4379,-4400,-4422,-4445,-4470,-4495,-4522,-4549,-4577,-4605,-4634,
+-4663,-4692,-4722,-4752,-4781,-4811,-4840,-4868,-4896,-4923,-4950,-4976,-5000,-5024,-5047,-5068,-5089,-5109,-5127,-5145,
+-5161,-5176,-5189,-5202,-5213,-5223,-5232,-5240,-5247,-5253,-5257,-5261,-5264,-5266,-5267,-5267,-5266,-5265,-5263,-5261,
+-5259,-5255,-5251,-5246,-5241,-5236,-5230,-5224,-5217,-5211,-5203,-5196,-5188,-5180,-5172,-5164,-5155,-5146,-5138,-5129,
+-5121,-5112,-5104,-5096,-5087,-5078,-5070,-5063,-5056,-5048,-5041,-5035,-5029,-5023,-5018,-5013,-5010,-5006,-5002,-4999,
+-4996,-4993,-4991,-4992,-4996,-4999,-4998,-5000,-5006,-5011,-5012,-5012,-5017,-5023,-5027,-5030,-5035,-5042,-5050,-5056,
+-5063,-5070,-5078,-5086,-5094,-5101,-5108,-5114,-5120,-5126,-5131,-5136,-5140,-5144,-5147,-5149,-5151,-5153,-5154,-5154,
+-5154,-5154,-5154,-5153,-5151,-5150,-5148,-5146,-5144,-5142,-5140,-5138,-5136,-5135,-5133,-5132,-5131,-5130,-5130,-5129,
+-5130,-5130,-5131,-5133,-5134,-5137,-5139,-5142,-5145,-5149,-5153,-5157,-5162,-5167,-5172,-5177,-5183,-5189,-5195,-5201,
+-5208,-5214,-5221,-5227,-5234,-5241,-5247,-5253,-5260,-5266,-5273,-5279,-5285,-5291,-5297,-5302,-5308,-5313,-5318,-5322,
+-5327,-5331,-5335,-5339,-5343,-5346,-5349,-5352,-5354,-5356,-5358,-5360,-5362,-5363,-5364,-5365,-5366,-5367,-5367,-5367,
+-5368,-5368,-5368,-5368,-5369,-5369,-5369,-5370,-5370,-5371,-5371,-5372,-5373,-5374,-5375,-5377,-5378,-5380,-5381,-5383,
+-5385,-5388,-5390,-5392,-5394,-5396,-5399,-5401,-5403,-5405,-5407,-5408,-5410,-5411,-5412,-5412,-5413,-5413,-5412,-5412,
+-5410,-5409,-5407,-5405,-5403,-5400,-5397,-5394,-5391,-5387,-5383,-5380,-5376,-5371,-5367,-5362,-5357,-5352,-5347,-5342,
+-5337,-5332,-5328,-5324,-5320,-5317,-5313,-5310,-5307,-5304,-5301,-5299,-5296,-5294,-5292,-5289,-5287,-5285,-5282,-5280,
+-5277,-5275,-5272,-5268,-5265,-5261,-5257,-5253,-5248,-5242,-5237,-5231,-5224,-5217,-5210,-5202,-5194,-5185,-5176,-5167,
+-5157,-5148,-5137,-5127,-5117,-5106,-5095,-5084,-5073,-5062,-5051,-5040,-5029,-5018,-5006,-4996,-4985,-4974,-4964,-4954,
+-4944,-4935,-4926,-4916,-4907,-4899,-4890,-4881,-4873,-4865,-4858,-4850,-4842,-4835,-4827,-4820,-4812,-4805,-4798,-4790,
+-4782,-4774,-4766,-4758,-4750,-4741,-4732,-4723,-4714,-4705,-4695,-4685,-4674,-4664,-4653,-4641,-4630,-4618,-4606,-4594,
+-4581,-4569,-4556,-4542,-4528,-4514,-4500,-4485,-4471,-4456,-4441,-4425,-4410,-4394,-4379,-4364,-4348,-4332,-4317,-4301,
+-4286,-4270,-4255,-4240,-4224,-4209,-4194,-4179,-4165,-4151,-4137,-4123,-4109,-4095,-4082,-4068,-4055,-4042,-4029,-4017,
+-4004,-3992,-3980,-3969,-3957,-3945,-3934,-3922,-3911,-3900,-3888,-3878,-3866,-3856,-3845,-3834,-3824,-3813,-3803,-3792,
+-3782,-3772,-3762,-3752,-3743,-3733,-3724,-3715,-3706,-3697,-3689,-3681,-3673,-3665,-3658,-3651,-3644,-3637,-3631,-3624,
+-3618,-3611,-3605,-3599,-3592,-3586,-3579,-3573,-3565,-3558,-3550,-3542,-3533,-3524,-3515,-3505,-3494,-3483,-3471,-3458,
+-3445,-3432,-3418,-3403,-3387,-3371,-3355,-3338,-3321,-3304,-3286,-3268,-3250,-3232,-3215,-3197,-3180,-3163,-3146,-3130,
+-3115,-3100,-3085,-3072,-3059,-3046,-3034,-3023,-3012,-3003,-2993,-2985,-2976,-2968,-2961,-2954,-2946,-2939,-2933,-2926,
+-2918,-2911,-2903,-2894,-2885,-2876,-2866,-2855,-2843,-2831,-2817,-2802,-2787,-2771,-2753,-2735,-2717,-2697,-2676,-2655,
+-2634,-2612,-2589,-2566,-2543,-2520,-2497,-2475,-2453,-2431,-2410,-2390,-2369,-2349,-2331,-2314,-2298,-2282,-2269,-2256,
+-2244,-2233,-2224,-2217,-2210,-2206,-2204,-2202,-2203,-2205,-2208,-2211,-2215,-2222,-2228,-2234,-2238,-2241,-2244,-2249,
+-2257,-2268,-2279,-2288,-2297,-2304,-2310,-2315,-2321,-2327,-2334,-2341,-2347,-2352,-2357,-2362,-2366,-2369,-2373,-2376,
+-2379,-2381,-2383,-2385,-2386,-2386,-2385,-2384,-2382,-2380,-2379,-2377,-2376,-2374,-2371,-2370,-2369,-2368,-2368,-2367,
+-2366,-2366,-2366,-2366,-2366,-2366,-2367,-2367,-2368,-2369,-2369,-2370,-2370,-2371,-2372,-2373,-2373,-2373,-2372,-2372,
+-2370,-2369,-2368,-2366,-2363,-2360,-2357,-2354,-2350,-2345,-2341,-2336,-2330,-2325,-2319,-2312,-2306,-2300,-2293,-2286,
+-2279,-2273,-2266,-2259,-2253,-2247,-2241,-2235,-2229,-2224,-2219,-2214,-2210,-2206,-2202,-2198,-2195,-2192,-2189,-2186,
+-2183,-2180,-2177,-2175,-2172,-2168,-2165,-2162,-2158,-2153,-2149,-2143,-2138,-2131,-2124,-2116,-2108,-2099,-2090,-2079,
+-2068,-2057,-2044,-2031,-2017,-2003,-1988,-1973,-1957,-1940,-1924,-1907,-1890,-1872,-1855,-1838,-1820,-1803,-1785,-1769,
+-1753,-1737,-1721,-1707,-1692,-1679,-1666,-1653,-1641,-1631,-1621,-1611,-1603,-1595,-1588,-1582,-1576,-1572,-1567,-1563,
+-1560,-1557,-1555,-1553,-1552,-1551,-1551,-1551,-1552,-1554,-1557,-1559,-1562,-1566,-1569,-1573,-1577,-1581,-1585,-1589,
+-1593,-1597,-1601,-1605,-1609,-1613,-1616,-1620,-1623,-1626,-1629,-1631,-1633,-1634,-1636,-1637,-1637,-1637,-1636,-1635,
+-1633,-1631,-1629,-1625,-1621,-1616,-1611,-1605,-1598,-1591,-1582,-1573,-1563,-1553,-1542,-1531,-1518,-1505,-1491,-1478,
+-1465,-1450,-1435,-1419,-1403,-1386,-1369,-1352,-1335,-1318,-1301,-1284,-1268,-1251,-1235,-1219,-1204,-1189,-1175,-1161,
+-1148,-1136,-1124,-1112,-1102,-1092,-1083,-1074,-1066,-1058,-1052,-1046,-1040,-1034,-1029,-1023,-1018,-1013,-1008,-1003,
+-997,-991,-985,-978,-971,-963,-954,-945,-935,-924,-911,-899,-886,-872,-857,-841,-825,-808,-790,-771,
+-753,-734,-715,-696,-677,-657,-638,-619,-601,-584,-567,-551,-536,-521,-508,-496,-486,-476,-468,-461,
+-455,-451,-448,-447,-446,-447,-450,-453,-458,-463,-469,-476,-483,-490,-498,-505,-513,-522,-530,-537,
+-545,-553,-560,-568,-574,-580,-585,-589,-593,-596,-598,-600,-600,-599,-598,-596,-594,-590,-586,-581,
+-540,-531,-523,-515,-506,-497,-488,-479,-470,-460,-450,-440,-430,-420,-411,-401,-392,-382,-373,-363,
+-354,-344,-335,-326,-317,-307,-298,-288,-279,-269,-259,-249,-239,-229,-219,-208,-198,-187,-176,-165,
+-154,-142,-131,-120,-108,-97,-85,-74,-63,-52,-41,-30,-20,-9,0,10,19,28,37,45,
+53,61,68,75,82,88,94,100,106,111,116,120,125,130,134,138,142,147,151,154,
+158,163,168,172,177,182,188,193,199,205,211,218,225,232,239,247,255,263,271,280,
+288,298,307,316,325,335,344,353,362,372,381,390,399,408,416,423,431,438,446,453,
+459,465,471,476,481,486,490,493,497,500,502,504,507,508,510,511,512,513,513,514,
+515,516,516,517,518,519,520,521,521,522,524,525,527,529,531,534,536,539,542,544,
+547,550,553,556,559,562,565,568,571,574,576,578,580,582,584,586,586,587,587,587,
+586,586,585,583,581,579,576,573,569,565,561,557,552,547,542,536,530,524,517,511,
+504,497,490,483,476,468,461,454,448,441,434,428,422,417,411,407,402,399,396,393,
+391,390,389,389,390,391,393,396,399,403,407,412,418,424,431,438,445,453,461,469,
+477,485,494,502,510,519,527,535,542,549,555,561,566,571,575,578,581,584,587,589,
+591,592,593,594,594,595,595,595,595,596,596,596,598,599,601,604,607,611,615,620,
+626,632,639,646,654,663,672,682,692,702,712,723,733,744,753,762,771,780,788,795,
+801,805,809,812,813,812,809,806,800,794,786,777,767,755,742,728,712,695,677,658,
+638,617,596,574,552,529,505,481,457,433,409,386,362,339,316,294,272,249,228,206,
+185,163,143,122,101,81,61,41,20,0,-20,-40,-61,-82,-103,-125,-148,-171,-194,-217,
+-242,-267,-292,-318,-344,-371,-398,-426,-454,-482,-510,-539,-567,-596,-625,-654,-683,-712,-740,-768,
+-797,-825,-852,-879,-907,-933,-959,-985,-1011,-1036,-1061,-1086,-1110,-1134,-1158,-1182,-1206,-1230,-1254,-1278,
+-1303,-1328,-1353,-1378,-1404,-1429,-1455,-1482,-1509,-1537,-1565,-1593,-1622,-1652,-1682,-1712,-1743,-1774,-1806,-1837,
+-1869,-1901,-1933,-1965,-1997,-2028,-2059,-2090,-2120,-2150,-2179,-2208,-2236,-2263,-2290,-2317,-2342,-2367,-2391,-2414,
+-2437,-2458,-2480,-2500,-2520,-2539,-2558,-2576,-2594,-2612,-2630,-2648,-2666,-2684,-2703,-2721,-2740,-2759,-2779,-2799,
+-2821,-2843,-2866,-2890,-2915,-2941,-2968,-2996,-3025,-3055,-3086,-3118,-3151,-3185,-3219,-3254,-3289,-3325,-3362,-3399,
+-3435,-3472,-3509,-3545,-3581,-3616,-3651,-3685,-3718,-3751,-3782,-3812,-3842,-3869,-3896,-3921,-3945,-3967,-3988,-4008,
+-4026,-4042,-4058,-4072,-4085,-4097,-4108,-4118,-4127,-4136,-4144,-4152,-4158,-4164,-4170,-4177,-4184,-4191,-4198,-4206,
+-4214,-4224,-4233,-4244,-4257,-4270,-4284,-4298,-4314,-4331,-4350,-4369,-4390,-4411,-4433,-4456,-4481,-4506,-4531,-4558,
+-4585,-4612,-4639,-4667,-4694,-4722,-4750,-4777,-4804,-4830,-4856,-4882,-4906,-4930,-4952,-4974,-4996,-5016,-5035,-5053,
+-5070,-5086,-5101,-5114,-5127,-5139,-5149,-5159,-5168,-5175,-5182,-5188,-5192,-5196,-5199,-5201,-5202,-5203,-5203,-5203,
+-5202,-5201,-5199,-5196,-5193,-5190,-5186,-5182,-5177,-5172,-5166,-5160,-5155,-5149,-5143,-5136,-5129,-5121,-5113,-5106,
+-5099,-5092,-5084,-5077,-5069,-5061,-5054,-5047,-5040,-5034,-5027,-5020,-5013,-5007,-5003,-4999,-4995,-4991,-4988,-4983,
+-4978,-4974,-4974,-4973,-4970,-4964,-4961,-4963,-4965,-4967,-4968,-4972,-4979,-4984,-4987,-4992,-5000,-5006,-5011,-5015,
+-5022,-5029,-5037,-5044,-5051,-5058,-5065,-5071,-5077,-5083,-5089,-5094,-5098,-5102,-5106,-5109,-5112,-5114,-5116,-5117,
+-5118,-5118,-5118,-5117,-5117,-5116,-5114,-5113,-5112,-5110,-5108,-5106,-5104,-5102,-5100,-5099,-5098,-5096,-5095,-5094,
+-5094,-5094,-5094,-5095,-5096,-5097,-5099,-5101,-5103,-5106,-5109,-5113,-5117,-5121,-5126,-5130,-5136,-5141,-5146,-5152,
+-5158,-5164,-5170,-5177,-5183,-5190,-5196,-5203,-5209,-5216,-5222,-5229,-5235,-5241,-5246,-5252,-5258,-5263,-5268,-5273,
+-5278,-5283,-5287,-5291,-5294,-5298,-5301,-5304,-5307,-5309,-5311,-5313,-5314,-5316,-5317,-5318,-5319,-5319,-5320,-5320,
+-5320,-5320,-5320,-5320,-5320,-5320,-5320,-5319,-5319,-5319,-5319,-5319,-5320,-5320,-5321,-5321,-5322,-5323,-5324,-5325,
+-5326,-5328,-5330,-5331,-5333,-5335,-5337,-5339,-5340,-5342,-5344,-5346,-5348,-5349,-5351,-5352,-5353,-5354,-5355,-5355,
+-5356,-5356,-5355,-5355,-5354,-5353,-5352,-5350,-5348,-5346,-5344,-5342,-5339,-5337,-5334,-5331,-5329,-5326,-5323,-5320,
+-5317,-5314,-5311,-5309,-5306,-5304,-5302,-5300,-5298,-5296,-5295,-5293,-5292,-5291,-5290,-5289,-5288,-5287,-5286,-5285,
+-5284,-5283,-5282,-5280,-5279,-5277,-5275,-5272,-5269,-5266,-5263,-5259,-5255,-5250,-5245,-5239,-5232,-5226,-5218,-5211,
+-5202,-5194,-5185,-5175,-5166,-5156,-5145,-5135,-5124,-5113,-5101,-5090,-5078,-5066,-5054,-5042,-5030,-5018,-5006,-4994,
+-4982,-4971,-4959,-4948,-4936,-4925,-4915,-4904,-4894,-4884,-4874,-4864,-4855,-4845,-4836,-4827,-4818,-4809,-4800,-4792,
+-4783,-4775,-4766,-4757,-4749,-4740,-4732,-4723,-4714,-4705,-4695,-4686,-4676,-4666,-4656,-4646,-4635,-4625,-4613,-4602,
+-4590,-4579,-4566,-4554,-4541,-4529,-4516,-4503,-4489,-4475,-4461,-4447,-4433,-4418,-4403,-4388,-4373,-4358,-4343,-4328,
+-4313,-4298,-4283,-4269,-4254,-4239,-4225,-4210,-4196,-4182,-4168,-4154,-4140,-4127,-4114,-4101,-4088,-4076,-4064,-4051,
+-4039,-4027,-4015,-4004,-3992,-3981,-3970,-3959,-3948,-3937,-3926,-3916,-3905,-3895,-3884,-3874,-3864,-3853,-3843,-3833,
+-3823,-3814,-3804,-3794,-3785,-3775,-3766,-3758,-3749,-3741,-3733,-3725,-3717,-3710,-3702,-3695,-3688,-3682,-3675,-3669,
+-3662,-3656,-3650,-3643,-3636,-3630,-3624,-3617,-3610,-3602,-3595,-3587,-3579,-3570,-3561,-3551,-3541,-3530,-3519,-3507,
+-3495,-3482,-3469,-3455,-3440,-3425,-3410,-3394,-3377,-3360,-3343,-3326,-3309,-3291,-3274,-3256,-3239,-3221,-3204,-3187,
+-3170,-3154,-3138,-3122,-3107,-3092,-3078,-3064,-3051,-3038,-3026,-3014,-3002,-2991,-2980,-2969,-2959,-2949,-2939,-2929,
+-2918,-2908,-2897,-2886,-2875,-2864,-2852,-2839,-2827,-2813,-2799,-2785,-2770,-2755,-2739,-2722,-2704,-2687,-2669,-2650,
+-2632,-2613,-2593,-2574,-2554,-2535,-2515,-2496,-2477,-2459,-2442,-2425,-2408,-2393,-2377,-2362,-2347,-2333,-2321,-2309,
+-2299,-2289,-2281,-2274,-2269,-2264,-2261,-2259,-2258,-2259,-2260,-2263,-2266,-2270,-2275,-2280,-2286,-2293,-2299,-2306,
+-2313,-2322,-2329,-2332,-2332,-2332,-2335,-2340,-2346,-2351,-2357,-2361,-2365,-2369,-2374,-2377,-2380,-2383,-2386,-2389,
+-2391,-2394,-2396,-2397,-2398,-2400,-2401,-2400,-2399,-2398,-2398,-2397,-2396,-2396,-2396,-2396,-2396,-2397,-2398,-2399,
+-2400,-2402,-2403,-2405,-2407,-2408,-2410,-2412,-2414,-2416,-2418,-2420,-2422,-2423,-2425,-2426,-2427,-2427,-2428,-2427,
+-2426,-2425,-2424,-2422,-2419,-2416,-2413,-2409,-2404,-2400,-2394,-2388,-2382,-2376,-2369,-2362,-2354,-2347,-2339,-2331,
+-2323,-2315,-2307,-2299,-2291,-2283,-2276,-2269,-2262,-2255,-2249,-2243,-2237,-2231,-2226,-2221,-2217,-2213,-2209,-2205,
+-2202,-2198,-2195,-2191,-2188,-2185,-2182,-2178,-2174,-2170,-2166,-2161,-2156,-2151,-2144,-2138,-2131,-2123,-2115,-2105,
+-2096,-2085,-2075,-2063,-2051,-2038,-2025,-2011,-1996,-1981,-1966,-1951,-1935,-1919,-1903,-1886,-1870,-1853,-1837,-1822,
+-1807,-1791,-1776,-1762,-1748,-1734,-1722,-1709,-1698,-1687,-1677,-1668,-1659,-1651,-1644,-1638,-1632,-1627,-1622,-1619,
+-1615,-1613,-1611,-1610,-1610,-1609,-1610,-1610,-1611,-1613,-1616,-1620,-1623,-1627,-1631,-1636,-1640,-1645,-1649,-1654,
+-1659,-1664,-1668,-1673,-1677,-1681,-1685,-1688,-1691,-1694,-1697,-1699,-1701,-1702,-1703,-1703,-1703,-1702,-1701,-1699,
+-1696,-1693,-1689,-1684,-1679,-1673,-1666,-1659,-1651,-1642,-1633,-1622,-1612,-1600,-1588,-1575,-1562,-1548,-1533,-1517,
+-1502,-1487,-1470,-1454,-1437,-1420,-1403,-1385,-1368,-1351,-1334,-1317,-1300,-1284,-1268,-1252,-1237,-1222,-1208,-1194,
+-1181,-1168,-1156,-1144,-1133,-1123,-1113,-1104,-1095,-1087,-1079,-1072,-1065,-1058,-1051,-1045,-1038,-1031,-1025,-1018,
+-1012,-1005,-998,-989,-981,-972,-963,-954,-943,-932,-920,-907,-894,-880,-866,-851,-835,-819,-802,-785,
+-768,-751,-734,-716,-699,-681,-664,-647,-631,-615,-600,-585,-571,-558,-546,-535,-526,-517,-509,-503,
+-497,-493,-490,-488,-488,-488,-489,-491,-494,-498,-503,-509,-514,-519,-525,-531,-537,-543,-549,-554,
+-560,-565,-570,-574,-578,-581,-583,-585,-587,-587,-586,-584,-582,-580,-576,-571,-566,-561,-555,-548,
+-540,-500,-490,-479,-468,-457,-446,-436,-425,-414,-403,-393,-383,-374,-364,-355,-346,-337,-329,-321,
+-313,-305,-298,-291,-284,-277,-271,-265,-258,-251,-245,-238,-232,-225,-219,-212,-204,-197,-190,-182,
+-174,-166,-157,-149,-141,-131,-122,-113,-103,-93,-83,-74,-64,-55,-45,-36,-26,-16,-7,1,
+10,18,27,35,43,51,58,65,72,79,85,92,98,104,109,115,120,126,131,136,
+141,146,151,156,161,166,172,177,182,188,194,200,206,213,220,227,234,241,249,257,
+265,274,282,291,300,309,318,327,336,345,354,363,372,381,390,398,406,414,422,430,
+437,443,450,456,462,468,473,477,482,486,489,492,495,497,500,502,504,505,506,507,
+508,509,510,511,512,513,513,514,515,516,517,518,519,520,521,522,524,526,528,529,
+531,533,535,537,539,541,543,545,547,548,550,551,552,552,553,553,553,553,553,552,
+551,549,547,545,543,540,536,533,529,524,520,515,510,505,500,494,488,482,476,470,
+463,457,451,444,438,432,426,419,414,408,403,398,393,389,385,382,379,377,375,373,
+372,372,372,373,375,377,379,382,386,391,395,401,406,413,419,426,433,441,449,457,
+465,473,480,488,496,504,511,518,525,531,537,542,548,553,557,561,564,567,569,571,
+573,575,576,577,578,578,579,579,580,580,580,580,581,583,584,586,588,591,594,597,
+602,606,612,617,623,629,636,643,651,658,666,673,681,689,696,703,709,715,721,726,
+729,732,734,735,735,733,730,726,721,716,709,701,692,682,670,657,644,629,613,597,
+579,561,543,523,503,483,462,441,420,399,378,356,335,315,294,274,253,233,212,192,
+172,153,133,113,94,75,55,36,16,-3,-23,-43,-64,-85,-107,-129,-151,-174,-197,-221,
+-246,-270,-295,-321,-348,-374,-401,-429,-457,-485,-513,-542,-571,-599,-628,-657,-685,-714,-742,-769,
+-797,-824,-851,-878,-904,-929,-955,-979,-1004,-1028,-1051,-1075,-1098,-1120,-1143,-1165,-1188,-1210,-1232,-1255,
+-1277,-1299,-1322,-1346,-1369,-1393,-1417,-1442,-1468,-1495,-1522,-1550,-1578,-1607,-1637,-1667,-1698,-1729,-1761,-1794,
+-1827,-1860,-1893,-1927,-1960,-1994,-2027,-2061,-2094,-2127,-2159,-2191,-2223,-2254,-2284,-2313,-2342,-2370,-2398,-2424,
+-2450,-2475,-2499,-2521,-2544,-2565,-2586,-2607,-2626,-2645,-2664,-2682,-2700,-2718,-2736,-2754,-2771,-2789,-2808,-2826,
+-2846,-2866,-2887,-2908,-2930,-2953,-2977,-3002,-3027,-3054,-3081,-3110,-3139,-3169,-3200,-3232,-3264,-3297,-3331,-3365,
+-3399,-3433,-3467,-3502,-3536,-3570,-3603,-3636,-3669,-3701,-3732,-3762,-3791,-3819,-3846,-3872,-3897,-3920,-3943,-3963,
+-3983,-4001,-4018,-4034,-4048,-4062,-4074,-4085,-4096,-4106,-4115,-4124,-4131,-4139,-4146,-4153,-4160,-4166,-4172,-4179,
+-4187,-4195,-4204,-4214,-4224,-4235,-4247,-4259,-4273,-4288,-4304,-4321,-4339,-4357,-4376,-4395,-4416,-4438,-4461,-4485,
+-4509,-4533,-4557,-4583,-4608,-4633,-4659,-4684,-4709,-4734,-4759,-4783,-4807,-4830,-4852,-4874,-4895,-4915,-4935,-4953,
+-4971,-4988,-5005,-5020,-5034,-5047,-5059,-5071,-5081,-5091,-5100,-5108,-5116,-5123,-5128,-5133,-5137,-5141,-5145,-5148,
+-5149,-5151,-5153,-5153,-5153,-5153,-5153,-5152,-5150,-5147,-5145,-5143,-5140,-5136,-5132,-5128,-5122,-5116,-5111,-5105,
+-5099,-5094,-5088,-5082,-5075,-5069,-5063,-5056,-5050,-5043,-5037,-5030,-5023,-5016,-5008,-5002,-4997,-4992,-4988,-4986,
+-4985,-4983,-4976,-4968,-4960,-4955,-4953,-4951,-4950,-4951,-4954,-4956,-4959,-4961,-4965,-4969,-4971,-4971,-4974,-4978,
+-4983,-4986,-4989,-4993,-4999,-5005,-5011,-5016,-5021,-5027,-5032,-5036,-5040,-5045,-5048,-5052,-5055,-5058,-5060,-5062,
+-5064,-5065,-5066,-5067,-5067,-5067,-5067,-5066,-5066,-5065,-5064,-5063,-5062,-5061,-5059,-5058,-5057,-5056,-5056,-5055,
+-5055,-5055,-5055,-5055,-5056,-5057,-5058,-5060,-5062,-5064,-5066,-5069,-5072,-5076,-5080,-5084,-5088,-5093,-5098,-5103,
+-5109,-5114,-5120,-5126,-5132,-5138,-5144,-5151,-5157,-5163,-5169,-5176,-5182,-5188,-5194,-5200,-5206,-5211,-5217,-5222,
+-5227,-5232,-5236,-5241,-5245,-5249,-5252,-5256,-5259,-5261,-5264,-5266,-5268,-5270,-5271,-5273,-5274,-5274,-5275,-5275,
+-5276,-5276,-5276,-5275,-5275,-5275,-5274,-5274,-5274,-5273,-5273,-5272,-5272,-5272,-5272,-5272,-5272,-5272,-5273,-5273,
+-5274,-5274,-5275,-5276,-5277,-5279,-5280,-5281,-5283,-5284,-5286,-5288,-5289,-5291,-5292,-5294,-5295,-5297,-5298,-5299,
+-5300,-5301,-5301,-5302,-5302,-5302,-5302,-5302,-5301,-5301,-5300,-5299,-5298,-5297,-5296,-5294,-5293,-5292,-5290,-5289,
+-5287,-5286,-5284,-5283,-5282,-5281,-5279,-5279,-5278,-5277,-5276,-5276,-5276,-5276,-5275,-5275,-5275,-5275,-5275,-5276,
+-5276,-5275,-5275,-5275,-5275,-5274,-5273,-5273,-5271,-5270,-5268,-5266,-5263,-5260,-5257,-5253,-5248,-5243,-5238,-5231,
+-5225,-5218,-5211,-5203,-5195,-5186,-5177,-5167,-5157,-5146,-5136,-5124,-5113,-5101,-5089,-5077,-5064,-5052,-5039,-5026,
+-5013,-5000,-4988,-4975,-4962,-4950,-4937,-4925,-4913,-4901,-4889,-4878,-4867,-4856,-4845,-4834,-4824,-4813,-4803,-4793,
+-4784,-4774,-4765,-4755,-4746,-4737,-4728,-4719,-4709,-4700,-4691,-4681,-4672,-4662,-4653,-4643,-4633,-4622,-4612,-4601,
+-4590,-4579,-4568,-4557,-4545,-4533,-4521,-4509,-4496,-4483,-4470,-4457,-4444,-4430,-4417,-4403,-4388,-4374,-4361,-4347,
+-4333,-4319,-4305,-4291,-4277,-4263,-4250,-4236,-4223,-4210,-4197,-4184,-4171,-4159,-4146,-4134,-4121,-4109,-4098,-4086,
+-4074,-4063,-4052,-4041,-4030,-4019,-4008,-3997,-3987,-3976,-3966,-3956,-3945,-3935,-3925,-3914,-3904,-3894,-3884,-3874,
+-3864,-3854,-3844,-3835,-3825,-3815,-3806,-3797,-3789,-3780,-3772,-3764,-3756,-3748,-3740,-3733,-3726,-3719,-3712,-3704,
+-3698,-3691,-3684,-3677,-3671,-3664,-3657,-3650,-3643,-3636,-3628,-3621,-3613,-3604,-3596,-3587,-3577,-3567,-3557,-3546,
+-3535,-3523,-3510,-3497,-3484,-3470,-3455,-3440,-3425,-3410,-3393,-3377,-3360,-3343,-3327,-3309,-3292,-3274,-3257,-3240,
+-3222,-3205,-3188,-3171,-3155,-3138,-3122,-3106,-3091,-3075,-3060,-3046,-3031,-3017,-3003,-2989,-2976,-2963,-2949,-2936,
+-2923,-2909,-2896,-2883,-2869,-2855,-2841,-2827,-2813,-2799,-2784,-2770,-2754,-2739,-2723,-2707,-2691,-2674,-2658,-2641,
+-2624,-2607,-2590,-2574,-2557,-2540,-2524,-2508,-2492,-2476,-2460,-2446,-2432,-2418,-2405,-2393,-2382,-2371,-2361,-2352,
+-2344,-2336,-2329,-2323,-2318,-2314,-2310,-2309,-2308,-2307,-2307,-2309,-2311,-2314,-2317,-2321,-2326,-2332,-2337,-2343,
+-2349,-2355,-2359,-2365,-2370,-2375,-2381,-2386,-2391,-2394,-2395,-2396,-2401,-2405,-2406,-2407,-2408,-2411,-2413,-2414,
+-2415,-2417,-2418,-2419,-2420,-2422,-2423,-2424,-2426,-2427,-2428,-2429,-2430,-2431,-2432,-2433,-2435,-2436,-2438,-2440,
+-2442,-2444,-2447,-2449,-2451,-2454,-2456,-2458,-2461,-2463,-2465,-2467,-2469,-2470,-2472,-2473,-2473,-2473,-2473,-2473,
+-2472,-2470,-2468,-2466,-2463,-2459,-2455,-2451,-2446,-2441,-2435,-2428,-2422,-2415,-2407,-2400,-2392,-2384,-2375,-2367,
+-2359,-2350,-2342,-2334,-2325,-2317,-2310,-2302,-2295,-2288,-2281,-2275,-2269,-2263,-2258,-2253,-2248,-2244,-2240,-2237,
+-2233,-2230,-2227,-2224,-2221,-2218,-2215,-2212,-2209,-2206,-2202,-2198,-2194,-2190,-2185,-2179,-2173,-2167,-2160,-2152,
+-2144,-2135,-2126,-2116,-2105,-2094,-2082,-2070,-2057,-2044,-2030,-2016,-2002,-1987,-1972,-1957,-1942,-1927,-1912,-1898,
+-1883,-1868,-1854,-1841,-1827,-1814,-1801,-1789,-1778,-1768,-1757,-1748,-1739,-1731,-1723,-1716,-1711,-1705,-1700,-1695,
+-1691,-1688,-1686,-1684,-1683,-1682,-1682,-1683,-1685,-1687,-1689,-1692,-1695,-1699,-1702,-1706,-1711,-1715,-1719,-1723,
+-1727,-1732,-1736,-1740,-1743,-1747,-1750,-1753,-1756,-1758,-1760,-1761,-1762,-1763,-1763,-1762,-1761,-1760,-1758,-1755,
+-1751,-1748,-1743,-1738,-1732,-1725,-1718,-1710,-1702,-1693,-1683,-1672,-1661,-1650,-1638,-1625,-1612,-1598,-1584,-1570,
+-1554,-1540,-1524,-1509,-1492,-1476,-1460,-1444,-1428,-1412,-1396,-1380,-1364,-1348,-1333,-1318,-1303,-1289,-1275,-1261,
+-1248,-1235,-1223,-1211,-1200,-1189,-1179,-1169,-1159,-1150,-1140,-1131,-1123,-1114,-1106,-1097,-1090,-1081,-1073,-1064,
+-1056,-1048,-1039,-1031,-1021,-1011,-1000,-989,-978,-966,-954,-941,-928,-914,-900,-885,-871,-856,-840,-825,
+-809,-793,-778,-762,-747,-732,-717,-703,-689,-675,-661,-648,-636,-625,-615,-605,-597,-589,-583,-577,
+-572,-568,-566,-564,-562,-562,-563,-564,-565,-567,-570,-573,-576,-579,-583,-587,-590,-593,-596,-599,
+-601,-602,-604,-604,-604,-603,-602,-600,-598,-594,-590,-585,-579,-572,-565,-558,-549,-540,-531,-521,
+-510,-500,-480,-467,-453,-440,-427,-414,-402,-390,-378,-366,-356,-346,-336,-327,-318,-309,-302,-295,
+-288,-282,-276,-270,-265,-260,-256,-252,-248,-244,-241,-237,-233,-229,-225,-221,-217,-213,-208,-203,
+-198,-193,-187,-180,-174,-167,-159,-152,-144,-136,-127,-118,-108,-99,-89,-79,-69,-59,-49,-40,
+-29,-19,-9,0,9,19,28,38,47,56,65,73,81,88,96,103,111,118,125,131,
+138,144,151,156,162,168,173,179,184,189,195,201,206,212,218,224,231,237,244,251,
+258,265,271,279,287,294,302,310,319,327,335,343,351,360,368,376,384,392,400,407,
+414,421,428,435,441,448,453,459,464,468,472,477,481,485,488,491,494,496,498,500,
+502,503,504,505,506,508,509,510,511,511,512,513,514,514,514,515,516,517,518,518,
+519,519,520,521,521,522,522,522,523,523,523,522,522,521,521,520,519,517,515,513,
+511,508,505,502,499,496,492,488,484,479,475,470,465,460,454,449,444,439,433,428,
+423,418,412,407,402,398,393,389,385,381,377,374,371,369,367,365,364,363,363,363,
+364,365,366,368,370,373,377,380,385,389,394,399,405,411,417,423,430,436,443,450,
+457,463,470,476,483,489,495,501,507,512,517,522,526,530,533,536,538,541,543,545,
+546,547,547,548,549,549,549,549,549,550,550,550,551,552,552,554,555,557,559,561,
+564,566,570,574,578,582,587,591,596,601,605,610,615,620,624,629,633,636,639,641,
+643,644,644,643,641,639,635,630,624,618,611,603,595,586,575,565,553,541,527,513,
+498,483,467,451,434,417,399,381,363,345,327,308,290,272,254,236,219,201,183,166,
+149,131,113,95,77,59,41,23,4,-13,-32,-52,-71,-91,-112,-133,-155,-177,-200,-223,
+-247,-271,-296,-322,-348,-374,-401,-428,-456,-484,-512,-541,-569,-598,-626,-655,-683,-711,-739,-766,
+-793,-820,-846,-872,-898,-923,-947,-971,-995,-1018,-1041,-1063,-1085,-1107,-1128,-1150,-1171,-1191,-1212,-1233,
+-1253,-1274,-1296,-1317,-1339,-1361,-1384,-1408,-1432,-1456,-1481,-1508,-1535,-1563,-1591,-1621,-1651,-1682,-1714,-1746,
+-1779,-1812,-1845,-1878,-1912,-1946,-1981,-2016,-2051,-2085,-2120,-2154,-2188,-2221,-2254,-2286,-2318,-2349,-2379,-2409,
+-2437,-2465,-2492,-2518,-2543,-2567,-2590,-2612,-2634,-2655,-2675,-2695,-2714,-2732,-2751,-2770,-2788,-2805,-2823,-2841,
+-2859,-2878,-2896,-2916,-2936,-2956,-2977,-2999,-3022,-3045,-3069,-3094,-3120,-3146,-3173,-3201,-3230,-3259,-3289,-3320,
+-3350,-3381,-3413,-3445,-3476,-3507,-3539,-3570,-3601,-3632,-3661,-3691,-3720,-3747,-3774,-3801,-3826,-3850,-3873,-3895,
+-3916,-3935,-3954,-3971,-3988,-4003,-4018,-4032,-4044,-4056,-4068,-4078,-4088,-4097,-4106,-4115,-4123,-4131,-4138,-4145,
+-4153,-4161,-4170,-4180,-4189,-4199,-4210,-4221,-4234,-4247,-4261,-4275,-4291,-4307,-4324,-4341,-4359,-4378,-4398,-4419,
+-4439,-4461,-4483,-4505,-4528,-4550,-4573,-4597,-4619,-4642,-4665,-4687,-4710,-4732,-4754,-4774,-4794,-4814,-4834,-4853,
+-4872,-4889,-4906,-4921,-4937,-4952,-4966,-4979,-4992,-5005,-5016,-5026,-5036,-5046,-5055,-5063,-5070,-5077,-5084,-5091,
+-5096,-5101,-5106,-5110,-5114,-5117,-5120,-5122,-5124,-5125,-5126,-5126,-5126,-5126,-5125,-5122,-5119,-5116,-5113,-5110,
+-5106,-5102,-5098,-5094,-5088,-5082,-5077,-5071,-5065,-5058,-5052,-5045,-5037,-5031,-5024,-5017,-5009,-5002,-4995,-4990,
+-4984,-4981,-4978,-4975,-4972,-4968,-4966,-4963,-4956,-4949,-4946,-4950,-4955,-4952,-4942,-4930,-4923,-4922,-4924,-4927,
+-4929,-4931,-4934,-4938,-4941,-4945,-4948,-4952,-4957,-4961,-4965,-4969,-4973,-4977,-4980,-4984,-4988,-4991,-4994,-4997,
+-4999,-5002,-5004,-5005,-5007,-5009,-5010,-5011,-5012,-5012,-5013,-5013,-5013,-5013,-5013,-5013,-5013,-5013,-5013,-5013,
+-5014,-5014,-5014,-5015,-5016,-5017,-5018,-5019,-5021,-5023,-5025,-5027,-5030,-5033,-5036,-5039,-5043,-5047,-5051,-5055,
+-5060,-5065,-5070,-5075,-5080,-5086,-5091,-5097,-5103,-5109,-5115,-5121,-5127,-5133,-5138,-5144,-5150,-5156,-5161,-5167,
+-5172,-5177,-5182,-5187,-5192,-5196,-5200,-5204,-5208,-5211,-5214,-5217,-5220,-5222,-5224,-5226,-5228,-5229,-5230,-5231,
+-5232,-5232,-5233,-5233,-5233,-5233,-5233,-5232,-5232,-5232,-5231,-5231,-5230,-5230,-5229,-5229,-5228,-5228,-5228,-5228,
+-5228,-5228,-5228,-5228,-5229,-5229,-5230,-5231,-5232,-5233,-5234,-5235,-5236,-5237,-5238,-5240,-5241,-5242,-5243,-5244,
+-5245,-5246,-5247,-5248,-5249,-5249,-5250,-5250,-5250,-5251,-5251,-5250,-5250,-5250,-5250,-5249,-5248,-5248,-5247,-5246,
+-5246,-5245,-5244,-5243,-5243,-5242,-5242,-5241,-5241,-5241,-5240,-5240,-5240,-5240,-5240,-5240,-5241,-5241,-5241,-5242,
+-5242,-5243,-5243,-5243,-5243,-5243,-5243,-5243,-5242,-5242,-5241,-5240,-5238,-5236,-5234,-5231,-5228,-5224,-5220,-5215,
+-5210,-5205,-5199,-5193,-5186,-5179,-5171,-5162,-5153,-5144,-5134,-5124,-5114,-5103,-5092,-5080,-5068,-5056,-5044,-5032,
+-5019,-5007,-4994,-4981,-4969,-4956,-4943,-4930,-4918,-4905,-4893,-4881,-4869,-4858,-4846,-4835,-4824,-4813,-4802,-4792,
+-4781,-4771,-4761,-4752,-4742,-4732,-4723,-4713,-4704,-4695,-4685,-4676,-4666,-4656,-4646,-4636,-4626,-4616,-4606,-4596,
+-4585,-4575,-4564,-4553,-4542,-4530,-4519,-4508,-4496,-4484,-4472,-4459,-4446,-4434,-4421,-4408,-4395,-4382,-4369,-4356,
+-4343,-4330,-4317,-4304,-4292,-4279,-4267,-4255,-4242,-4230,-4218,-4206,-4195,-4183,-4172,-4161,-4149,-4138,-4127,-4116,
+-4105,-4094,-4083,-4073,-4063,-4052,-4042,-4032,-4022,-4011,-4001,-3991,-3981,-3971,-3960,-3950,-3939,-3929,-3919,-3908,
+-3898,-3888,-3878,-3868,-3857,-3847,-3838,-3829,-3819,-3809,-3800,-3792,-3783,-3774,-3765,-3757,-3749,-3741,-3734,-3727,
+-3719,-3711,-3704,-3697,-3690,-3682,-3676,-3669,-3661,-3654,-3647,-3639,-3631,-3623,-3615,-3606,-3597,-3588,-3579,-3569,
+-3558,-3547,-3536,-3524,-3512,-3499,-3486,-3472,-3458,-3444,-3429,-3414,-3398,-3382,-3366,-3349,-3332,-3315,-3298,-3281,
+-3264,-3247,-3230,-3212,-3195,-3177,-3160,-3143,-3126,-3109,-3092,-3076,-3059,-3043,-3027,-3011,-2994,-2978,-2963,-2947,
+-2932,-2916,-2901,-2885,-2870,-2855,-2839,-2824,-2809,-2793,-2778,-2762,-2747,-2731,-2715,-2699,-2683,-2667,-2651,-2635,
+-2620,-2604,-2589,-2574,-2559,-2544,-2529,-2515,-2501,-2487,-2473,-2460,-2447,-2434,-2423,-2413,-2404,-2395,-2387,-2379,
+-2373,-2367,-2362,-2358,-2354,-2351,-2349,-2348,-2347,-2346,-2347,-2348,-2349,-2351,-2354,-2357,-2360,-2364,-2369,-2375,
+-2380,-2385,-2391,-2396,-2401,-2406,-2411,-2415,-2420,-2424,-2428,-2432,-2434,-2436,-2438,-2441,-2444,-2447,-2450,-2453,
+-2455,-2457,-2459,-2461,-2463,-2464,-2466,-2467,-2469,-2470,-2471,-2473,-2475,-2477,-2479,-2481,-2483,-2485,-2487,-2489,
+-2492,-2494,-2496,-2498,-2500,-2502,-2504,-2506,-2508,-2509,-2511,-2512,-2512,-2513,-2513,-2513,-2513,-2512,-2511,-2509,
+-2507,-2505,-2502,-2498,-2495,-2490,-2486,-2480,-2475,-2469,-2463,-2456,-2449,-2442,-2434,-2427,-2419,-2411,-2403,-2395,
+-2387,-2379,-2371,-2363,-2356,-2349,-2342,-2335,-2328,-2322,-2316,-2311,-2306,-2301,-2297,-2293,-2289,-2286,-2283,-2281,
+-2279,-2276,-2273,-2271,-2270,-2268,-2266,-2264,-2263,-2261,-2258,-2256,-2253,-2250,-2246,-2242,-2238,-2233,-2227,-2221,
+-2214,-2207,-2199,-2191,-2182,-2172,-2162,-2151,-2140,-2128,-2115,-2103,-2090,-2077,-2063,-2050,-2037,-2023,-2008,-1994,
+-1980,-1966,-1952,-1939,-1925,-1913,-1900,-1888,-1876,-1865,-1855,-1845,-1835,-1827,-1819,-1811,-1804,-1798,-1792,-1787,
+-1782,-1778,-1775,-1772,-1770,-1769,-1767,-1767,-1767,-1768,-1770,-1771,-1773,-1775,-1777,-1780,-1783,-1786,-1788,-1791,
+-1794,-1797,-1800,-1802,-1805,-1807,-1809,-1811,-1812,-1813,-1814,-1814,-1814,-1814,-1813,-1812,-1810,-1807,-1805,-1801,
+-1797,-1793,-1788,-1783,-1777,-1770,-1763,-1755,-1747,-1739,-1730,-1720,-1710,-1700,-1689,-1678,-1666,-1654,-1641,-1629,
+-1616,-1603,-1589,-1576,-1562,-1549,-1535,-1521,-1508,-1494,-1481,-1468,-1454,-1441,-1428,-1415,-1401,-1389,-1376,-1363,
+-1350,-1338,-1326,-1315,-1304,-1293,-1282,-1272,-1261,-1251,-1241,-1230,-1220,-1210,-1200,-1190,-1180,-1170,-1160,-1150,
+-1140,-1129,-1118,-1108,-1097,-1086,-1074,-1061,-1049,-1037,-1024,-1011,-997,-983,-969,-955,-941,-927,-913,-899,
+-885,-871,-857,-843,-829,-816,-803,-791,-779,-767,-756,-745,-735,-726,-717,-709,-702,-696,-691,-687,
+-683,-679,-676,-674,-673,-672,-672,-672,-672,-673,-674,-675,-676,-677,-678,-678,-678,-679,-678,-677,
+-676,-674,-671,-667,-663,-658,-652,-646,-639,-632,-623,-614,-604,-594,-583,-571,-559,-547,-534,-521,
+-507,-494,-480,-493,-477,-462,-447,-432,-417,-403,-390,-378,-365,-354,-343,-333,-324,-315,-307,-300,
+-294,-288,-283,-278,-274,-270,-267,-265,-262,-260,-258,-256,-255,-252,-251,-249,-247,-244,-241,-239,
+-236,-232,-228,-223,-218,-212,-206,-199,-193,-185,-177,-169,-160,-150,-140,-130,-120,-109,-98,-86,
+-75,-63,-52,-40,-28,-16,-4,6,18,29,40,51,61,71,81,91,101,110,118,127,
+135,143,151,158,165,172,179,185,191,197,203,208,214,220,226,231,236,242,247,253,
+259,266,272,278,284,289,296,302,309,316,323,330,337,344,351,357,365,372,380,386,
+392,398,405,412,418,424,430,436,441,446,451,455,460,464,468,472,475,478,480,483,
+485,487,489,491,492,493,494,495,496,497,498,499,499,499,499,499,499,499,499,498,
+498,497,496,496,495,494,493,491,490,489,487,486,484,482,480,477,475,472,469,466,
+463,459,455,452,448,444,440,436,432,428,423,419,414,410,405,401,397,393,388,384,
+380,377,373,370,367,364,361,359,357,355,354,353,352,352,352,352,353,354,355,357,
+359,362,365,368,371,375,379,383,388,392,397,402,407,413,418,423,429,434,440,445,
+450,455,460,465,470,475,479,483,486,490,493,496,499,501,503,504,505,506,507,508,
+508,509,509,509,509,508,508,508,508,508,507,507,507,508,508,509,509,510,512,513,
+515,517,519,521,524,527,529,532,535,538,540,543,546,549,551,553,555,556,557,556,
+556,555,554,551,548,544,539,534,528,522,515,508,500,491,482,472,462,451,439,426,
+413,400,387,373,359,344,329,314,298,283,267,252,237,221,206,190,175,160,145,130,
+115,99,84,69,53,37,20,3,-12,-29,-46,-64,-83,-101,-121,-141,-162,-182,-204,-226,
+-249,-273,-297,-321,-347,-372,-398,-425,-452,-480,-507,-535,-563,-592,-620,-648,-676,-704,-731,-759,
+-786,-812,-839,-864,-890,-915,-939,-963,-987,-1010,-1032,-1054,-1076,-1097,-1117,-1138,-1158,-1178,-1198,-1218,
+-1238,-1258,-1278,-1299,-1319,-1340,-1361,-1383,-1406,-1429,-1453,-1478,-1503,-1529,-1556,-1583,-1612,-1641,-1671,-1702,
+-1734,-1765,-1797,-1830,-1863,-1897,-1932,-1966,-2001,-2036,-2071,-2106,-2140,-2175,-2208,-2242,-2276,-2308,-2340,-2371,
+-2402,-2432,-2461,-2489,-2517,-2543,-2568,-2593,-2617,-2640,-2662,-2684,-2705,-2725,-2745,-2764,-2782,-2801,-2819,-2836,
+-2854,-2872,-2891,-2909,-2928,-2947,-2966,-2986,-3006,-3027,-3048,-3070,-3093,-3116,-3140,-3164,-3189,-3215,-3241,-3268,
+-3296,-3324,-3352,-3381,-3409,-3438,-3467,-3496,-3525,-3554,-3582,-3610,-3637,-3664,-3691,-3717,-3742,-3767,-3790,-3813,
+-3835,-3856,-3876,-3896,-3914,-3931,-3948,-3964,-3979,-3993,-4007,-4020,-4032,-4044,-4055,-4066,-4077,-4087,-4096,-4105,
+-4114,-4123,-4132,-4142,-4152,-4162,-4173,-4184,-4196,-4209,-4221,-4234,-4248,-4262,-4278,-4293,-4309,-4326,-4344,-4361,
+-4379,-4398,-4417,-4437,-4457,-4477,-4497,-4518,-4538,-4559,-4580,-4601,-4621,-4641,-4661,-4681,-4701,-4720,-4739,-4757,
+-4775,-4793,-4811,-4827,-4843,-4859,-4874,-4889,-4903,-4916,-4930,-4942,-4954,-4965,-4977,-4988,-4998,-5008,-5018,-5027,
+-5035,-5043,-5050,-5057,-5063,-5069,-5075,-5081,-5086,-5090,-5093,-5096,-5099,-5102,-5103,-5103,-5103,-5103,-5103,-5102,
+-5100,-5097,-5093,-5090,-5086,-5081,-5077,-5071,-5066,-5059,-5053,-5046,-5038,-5031,-5023,-5015,-5007,-4998,-4989,-4981,
+-4973,-4965,-4957,-4948,-4940,-4932,-4924,-4918,-4911,-4904,-4898,-4893,-4888,-4885,-4881,-4879,-4878,-4878,-4877,-4876,
+-4876,-4876,-4878,-4880,-4881,-4882,-4883,-4884,-4887,-4891,-4894,-4897,-4901,-4905,-4908,-4912,-4916,-4920,-4923,-4927,
+-4931,-4934,-4938,-4941,-4944,-4947,-4950,-4952,-4955,-4957,-4959,-4961,-4963,-4965,-4966,-4968,-4969,-4970,-4971,-4972,
+-4974,-4975,-4976,-4977,-4978,-4979,-4980,-4982,-4983,-4985,-4986,-4988,-4991,-4993,-4995,-4998,-5001,-5004,-5007,-5010,
+-5014,-5018,-5021,-5026,-5030,-5035,-5039,-5044,-5049,-5054,-5059,-5064,-5070,-5075,-5081,-5086,-5092,-5097,-5103,-5108,
+-5114,-5119,-5124,-5129,-5134,-5139,-5144,-5148,-5153,-5157,-5161,-5164,-5168,-5171,-5174,-5177,-5179,-5182,-5184,-5186,
+-5187,-5189,-5190,-5191,-5192,-5192,-5193,-5193,-5193,-5193,-5193,-5193,-5193,-5192,-5192,-5192,-5191,-5191,-5190,-5190,
+-5190,-5189,-5189,-5189,-5189,-5189,-5189,-5189,-5189,-5189,-5190,-5190,-5191,-5191,-5192,-5192,-5193,-5194,-5194,-5195,
+-5195,-5196,-5197,-5197,-5198,-5198,-5199,-5199,-5199,-5199,-5199,-5199,-5199,-5199,-5199,-5198,-5198,-5197,-5197,-5196,
+-5196,-5195,-5194,-5193,-5193,-5192,-5191,-5191,-5190,-5189,-5189,-5188,-5188,-5187,-5187,-5187,-5187,-5186,-5186,-5186,
+-5186,-5186,-5186,-5186,-5185,-5185,-5185,-5184,-5183,-5183,-5182,-5181,-5179,-5177,-5176,-5173,-5171,-5168,-5164,-5161,
+-5157,-5152,-5148,-5142,-5137,-5131,-5124,-5118,-5110,-5103,-5095,-5086,-5077,-5068,-5058,-5048,-5038,-5028,-5017,-5006,
+-4995,-4984,-4973,-4961,-4950,-4939,-4927,-4916,-4904,-4893,-4882,-4870,-4859,-4848,-4837,-4826,-4816,-4805,-4795,-4785,
+-4775,-4765,-4755,-4745,-4735,-4725,-4715,-4706,-4696,-4686,-4676,-4667,-4657,-4648,-4638,-4628,-4619,-4609,-4599,-4589,
+-4578,-4568,-4557,-4547,-4536,-4525,-4514,-4502,-4491,-4480,-4469,-4457,-4445,-4433,-4421,-4408,-4396,-4384,-4372,-4360,
+-4348,-4336,-4324,-4312,-4300,-4288,-4276,-4265,-4253,-4242,-4231,-4220,-4209,-4198,-4187,-4177,-4166,-4156,-4146,-4136,
+-4125,-4115,-4105,-4095,-4085,-4075,-4065,-4055,-4045,-4036,-4026,-4015,-4005,-3995,-3985,-3975,-3965,-3954,-3944,-3933,
+-3922,-3911,-3901,-3890,-3879,-3869,-3859,-3849,-3838,-3828,-3818,-3808,-3798,-3788,-3778,-3769,-3760,-3751,-3742,-3734,
+-3725,-3717,-3709,-3701,-3693,-3685,-3677,-3669,-3662,-3654,-3647,-3639,-3631,-3624,-3616,-3608,-3599,-3590,-3581,-3572,
+-3562,-3552,-3542,-3531,-3520,-3509,-3497,-3485,-3472,-3458,-3444,-3430,-3416,-3400,-3385,-3370,-3354,-3338,-3322,-3306,
+-3289,-3272,-3255,-3238,-3221,-3203,-3186,-3168,-3151,-3133,-3115,-3098,-3080,-3063,-3045,-3028,-3011,-2994,-2977,-2960,
+-2943,-2927,-2910,-2893,-2877,-2860,-2844,-2828,-2812,-2796,-2780,-2765,-2750,-2735,-2719,-2703,-2686,-2670,-2654,-2638,
+-2623,-2608,-2594,-2579,-2566,-2552,-2539,-2526,-2513,-2500,-2489,-2477,-2466,-2456,-2446,-2436,-2427,-2419,-2412,-2405,
+-2399,-2394,-2389,-2385,-2382,-2380,-2378,-2377,-2377,-2377,-2378,-2379,-2381,-2382,-2385,-2388,-2391,-2395,-2398,-2402,
+-2407,-2412,-2417,-2422,-2427,-2433,-2438,-2444,-2448,-2453,-2457,-2462,-2467,-2471,-2475,-2480,-2484,-2488,-2491,-2494,
+-2498,-2501,-2505,-2508,-2511,-2514,-2517,-2520,-2523,-2525,-2528,-2530,-2533,-2535,-2537,-2539,-2542,-2544,-2546,-2548,
+-2550,-2551,-2553,-2555,-2556,-2558,-2558,-2559,-2560,-2560,-2560,-2560,-2559,-2558,-2557,-2555,-2553,-2551,-2548,-2545,
+-2542,-2538,-2533,-2529,-2524,-2519,-2513,-2507,-2501,-2494,-2487,-2480,-2473,-2466,-2458,-2451,-2443,-2436,-2428,-2421,
+-2414,-2407,-2400,-2393,-2387,-2381,-2375,-2370,-2365,-2360,-2356,-2352,-2349,-2346,-2343,-2341,-2339,-2338,-2337,-2336,
+-2335,-2335,-2334,-2333,-2333,-2333,-2333,-2333,-2332,-2332,-2331,-2330,-2329,-2327,-2325,-2323,-2320,-2316,-2312,-2307,
+-2302,-2296,-2290,-2283,-2275,-2267,-2258,-2248,-2238,-2228,-2218,-2206,-2194,-2182,-2170,-2157,-2144,-2130,-2116,-2103,
+-2089,-2075,-2061,-2047,-2033,-2020,-2007,-1995,-1983,-1971,-1960,-1949,-1939,-1930,-1921,-1912,-1904,-1897,-1890,-1883,
+-1877,-1871,-1867,-1863,-1860,-1857,-1855,-1853,-1851,-1850,-1850,-1849,-1849,-1849,-1849,-1850,-1851,-1851,-1852,-1853,
+-1854,-1855,-1856,-1857,-1857,-1857,-1857,-1857,-1857,-1857,-1856,-1855,-1854,-1852,-1850,-1847,-1845,-1841,-1838,-1834,
+-1830,-1825,-1820,-1815,-1809,-1803,-1796,-1789,-1782,-1775,-1767,-1759,-1750,-1741,-1732,-1723,-1713,-1703,-1693,-1684,
+-1674,-1664,-1653,-1643,-1633,-1624,-1615,-1606,-1597,-1588,-1580,-1573,-1567,-1557,-1543,-1528,-1514,-1503,-1493,-1482,
+-1472,-1463,-1454,-1443,-1431,-1419,-1408,-1397,-1387,-1377,-1367,-1357,-1346,-1336,-1325,-1315,-1304,-1292,-1280,-1267,
+-1254,-1241,-1228,-1215,-1203,-1190,-1178,-1165,-1152,-1138,-1125,-1112,-1097,-1083,-1069,-1055,-1042,-1028,-1015,-1001,
+-988,-975,-963,-950,-938,-926,-916,-905,-896,-886,-877,-869,-861,-854,-847,-841,-835,-831,-827,-824,
+-821,-818,-816,-814,-813,-811,-811,-810,-809,-809,-808,-808,-807,-805,-804,-802,-800,-797,-793,-790,
+-785,-779,-773,-766,-758,-749,-739,-729,-718,-706,-694,-681,-667,-653,-639,-624,-608,-592,-576,-560,
+-544,-527,-510,-493,-549,-531,-514,-497,-480,-464,-449,-434,-421,-408,-396,-385,-375,-365,-356,-348,
+-341,-335,-330,-325,-320,-317,-314,-312,-310,-308,-307,-306,-305,-304,-303,-303,-302,-300,-299,-297,
+-295,-293,-290,-286,-282,-278,-272,-267,-260,-253,-245,-237,-228,-219,-209,-198,-187,-175,-163,-151,
+-138,-125,-112,-99,-85,-72,-58,-44,-30,-16,-3,10,23,35,48,61,73,85,96,106,
+117,128,138,147,156,165,173,181,189,196,202,209,215,221,227,233,238,244,249,254,
+260,265,270,275,281,285,290,296,301,307,312,318,323,329,334,339,345,350,357,363,
+369,374,380,385,391,396,401,406,411,416,421,425,430,434,437,441,444,447,450,453,
+455,457,458,460,461,463,464,465,465,466,466,466,466,466,465,464,464,463,462,460,
+459,457,455,453,451,449,447,444,441,439,436,433,430,427,423,420,417,414,410,406,
+402,398,394,390,385,381,377,373,369,366,362,358,355,352,348,345,342,339,337,334,
+332,330,328,327,326,325,325,325,325,325,326,327,328,330,332,334,337,339,342,346,
+349,353,357,361,365,370,374,379,383,388,393,397,402,406,411,415,420,424,428,432,
+435,439,442,445,448,450,452,454,456,458,459,459,460,460,460,460,460,460,459,459,
+458,457,456,455,454,453,452,452,451,451,450,450,449,449,450,450,451,451,452,453,
+455,456,458,459,461,463,465,467,469,472,474,476,477,478,478,479,479,479,478,477,
+476,474,472,469,465,460,455,450,444,438,432,425,417,408,399,390,380,370,359,348,
+336,325,312,300,287,274,261,247,234,221,208,195,182,169,155,142,129,116,102,89,
+75,62,49,35,21,7,-7,-21,-36,-51,-67,-83,-100,-117,-135,-154,-173,-192,-213,-234,
+-255,-277,-300,-323,-348,-372,-397,-423,-449,-475,-502,-530,-557,-585,-613,-641,-669,-696,-723,-751,
+-778,-805,-832,-858,-883,-908,-933,-958,-982,-1006,-1028,-1050,-1072,-1093,-1114,-1135,-1155,-1175,-1195,-1215,
+-1235,-1255,-1274,-1294,-1315,-1335,-1356,-1376,-1397,-1419,-1442,-1465,-1489,-1513,-1538,-1564,-1590,-1618,-1646,-1674,
+-1703,-1732,-1763,-1794,-1826,-1858,-1891,-1925,-1958,-1992,-2026,-2060,-2094,-2128,-2161,-2194,-2226,-2259,-2291,-2323,
+-2355,-2385,-2415,-2444,-2472,-2500,-2526,-2553,-2578,-2603,-2627,-2650,-2672,-2694,-2715,-2736,-2756,-2775,-2794,-2813,
+-2832,-2850,-2869,-2887,-2905,-2923,-2942,-2961,-2979,-2999,-3018,-3038,-3059,-3080,-3102,-3124,-3146,-3169,-3193,-3217,
+-3242,-3267,-3293,-3318,-3345,-3371,-3398,-3424,-3451,-3478,-3505,-3532,-3558,-3584,-3610,-3635,-3661,-3685,-3709,-3732,
+-3755,-3777,-3799,-3819,-3839,-3858,-3877,-3894,-3911,-3928,-3944,-3959,-3973,-3987,-4001,-4014,-4026,-4038,-4049,-4061,
+-4071,-4082,-4093,-4104,-4115,-4126,-4137,-4148,-4160,-4172,-4184,-4197,-4210,-4223,-4237,-4251,-4266,-4280,-4295,-4311,
+-4327,-4344,-4361,-4378,-4395,-4413,-4431,-4449,-4467,-4485,-4504,-4523,-4541,-4560,-4579,-4597,-4615,-4633,-4651,-4669,
+-4686,-4702,-4719,-4735,-4752,-4768,-4783,-4798,-4813,-4827,-4841,-4855,-4868,-4881,-4894,-4906,-4918,-4929,-4941,-4951,
+-4961,-4971,-4980,-4989,-4998,-5005,-5012,-5020,-5026,-5032,-5038,-5043,-5048,-5052,-5055,-5058,-5060,-5061,-5062,-5062,
+-5062,-5060,-5057,-5054,-5051,-5048,-5045,-5040,-5034,-5028,-5021,-5014,-5006,-4998,-4990,-4982,-4973,-4964,-4954,-4944,
+-4934,-4924,-4915,-4905,-4896,-4888,-4880,-4873,-4866,-4859,-4853,-4849,-4846,-4846,-4847,-4848,-4845,-4837,-4829,-4823,
+-4818,-4815,-4813,-4811,-4811,-4812,-4813,-4814,-4815,-4818,-4821,-4825,-4828,-4832,-4836,-4841,-4846,-4850,-4855,-4860,
+-4865,-4870,-4874,-4879,-4883,-4888,-4893,-4897,-4901,-4905,-4909,-4913,-4916,-4919,-4923,-4925,-4928,-4930,-4933,-4935,
+-4937,-4939,-4941,-4942,-4944,-4945,-4947,-4948,-4950,-4951,-4952,-4954,-4955,-4957,-4958,-4960,-4962,-4964,-4966,-4968,
+-4971,-4973,-4976,-4979,-4982,-4985,-4988,-4992,-4996,-5000,-5004,-5008,-5013,-5017,-5022,-5027,-5032,-5037,-5042,-5047,
+-5052,-5057,-5062,-5068,-5073,-5078,-5083,-5088,-5093,-5098,-5102,-5107,-5111,-5115,-5119,-5123,-5127,-5130,-5133,-5136,
+-5139,-5142,-5144,-5146,-5148,-5149,-5151,-5152,-5153,-5154,-5155,-5155,-5156,-5156,-5156,-5156,-5156,-5156,-5156,-5156,
+-5155,-5155,-5155,-5154,-5154,-5154,-5153,-5153,-5153,-5152,-5152,-5152,-5152,-5152,-5151,-5151,-5151,-5151,-5151,-5151,
+-5151,-5151,-5151,-5151,-5151,-5151,-5151,-5150,-5150,-5150,-5149,-5149,-5148,-5148,-5147,-5146,-5145,-5144,-5143,-5142,
+-5141,-5140,-5139,-5138,-5136,-5135,-5134,-5132,-5131,-5129,-5128,-5127,-5125,-5124,-5123,-5121,-5120,-5119,-5118,-5116,
+-5115,-5114,-5113,-5111,-5110,-5109,-5107,-5106,-5105,-5103,-5102,-5100,-5098,-5096,-5093,-5091,-5088,-5085,-5082,-5079,
+-5075,-5072,-5068,-5063,-5059,-5054,-5048,-5043,-5037,-5031,-5024,-5018,-5010,-5003,-4996,-4988,-4980,-4972,-4963,-4954,
+-4946,-4937,-4928,-4919,-4909,-4900,-4890,-4881,-4872,-4862,-4852,-4843,-4833,-4824,-4814,-4805,-4796,-4786,-4777,-4768,
+-4759,-4750,-4741,-4731,-4722,-4714,-4705,-4696,-4687,-4677,-4668,-4659,-4650,-4641,-4631,-4622,-4612,-4602,-4593,-4583,
+-4573,-4562,-4552,-4541,-4531,-4520,-4510,-4499,-4488,-4476,-4465,-4454,-4442,-4430,-4419,-4407,-4395,-4384,-4372,-4360,
+-4349,-4337,-4326,-4314,-4303,-4291,-4280,-4269,-4258,-4248,-4237,-4227,-4217,-4207,-4197,-4187,-4177,-4167,-4157,-4147,
+-4137,-4127,-4118,-4108,-4099,-4089,-4080,-4070,-4060,-4051,-4041,-4031,-4021,-4010,-4000,-3989,-3978,-3967,-3956,-3945,
+-3934,-3923,-3912,-3901,-3890,-3878,-3867,-3856,-3845,-3834,-3823,-3812,-3801,-3790,-3779,-3769,-3758,-3748,-3738,-3728,
+-3718,-3709,-3700,-3691,-3682,-3674,-3665,-3657,-3649,-3641,-3633,-3625,-3617,-3609,-3601,-3593,-3585,-3577,-3568,-3559,
+-3550,-3541,-3531,-3521,-3511,-3500,-3489,-3478,-3466,-3454,-3441,-3429,-3416,-3402,-3388,-3373,-3359,-3344,-3329,-3314,
+-3298,-3282,-3266,-3249,-3232,-3216,-3199,-3182,-3164,-3147,-3130,-3112,-3095,-3077,-3060,-3042,-3024,-3007,-2990,-2973,
+-2956,-2939,-2922,-2906,-2889,-2873,-2856,-2840,-2824,-2808,-2793,-2777,-2762,-2746,-2730,-2715,-2699,-2684,-2668,-2653,
+-2638,-2624,-2610,-2596,-2583,-2570,-2558,-2546,-2534,-2523,-2512,-2502,-2493,-2483,-2475,-2467,-2459,-2451,-2445,-2439,
+-2433,-2429,-2424,-2420,-2417,-2414,-2412,-2411,-2410,-2410,-2410,-2411,-2412,-2414,-2417,-2420,-2422,-2425,-2428,-2431,
+-2435,-2439,-2443,-2448,-2453,-2458,-2463,-2469,-2474,-2480,-2486,-2492,-2497,-2503,-2508,-2513,-2518,-2523,-2528,-2533,
+-2539,-2544,-2549,-2553,-2558,-2562,-2566,-2570,-2575,-2578,-2582,-2586,-2589,-2593,-2595,-2598,-2601,-2603,-2605,-2607,
+-2609,-2611,-2612,-2613,-2613,-2614,-2614,-2614,-2613,-2613,-2611,-2609,-2607,-2605,-2603,-2599,-2596,-2592,-2587,-2583,
+-2578,-2572,-2567,-2561,-2555,-2548,-2542,-2535,-2528,-2520,-2513,-2506,-2498,-2491,-2484,-2477,-2469,-2462,-2456,-2449,
+-2443,-2437,-2431,-2426,-2421,-2417,-2413,-2409,-2406,-2403,-2400,-2398,-2397,-2396,-2395,-2395,-2395,-2396,-2397,-2398,
+-2398,-2400,-2402,-2403,-2404,-2405,-2407,-2409,-2410,-2411,-2411,-2412,-2412,-2412,-2411,-2410,-2408,-2406,-2403,-2399,
+-2395,-2390,-2385,-2379,-2372,-2365,-2357,-2348,-2339,-2330,-2320,-2309,-2298,-2286,-2274,-2261,-2249,-2235,-2222,-2209,
+-2195,-2181,-2167,-2153,-2139,-2125,-2112,-2099,-2087,-2074,-2062,-2051,-2039,-2029,-2018,-2008,-1999,-1990,-1982,-1974,
+-1967,-1960,-1954,-1949,-1944,-1939,-1934,-1930,-1927,-1923,-1921,-1918,-1916,-1914,-1912,-1910,-1909,-1907,-1906,-1905,
+-1903,-1902,-1900,-1899,-1898,-1896,-1894,-1892,-1890,-1888,-1885,-1882,-1879,-1876,-1873,-1869,-1865,-1861,-1856,-1852,
+-1848,-1842,-1836,-1831,-1825,-1820,-1814,-1808,-1802,-1796,-1791,-1784,-1777,-1770,-1763,-1756,-1748,-1741,-1733,-1726,
+-1718,-1711,-1703,-1696,-1689,-1683,-1677,-1671,-1664,-1656,-1649,-1641,-1634,-1627,-1621,-1614,-1605,-1595,-1585,-1577,
+-1568,-1559,-1550,-1541,-1532,-1523,-1514,-1505,-1495,-1485,-1476,-1466,-1457,-1446,-1436,-1425,-1414,-1403,-1391,-1380,
+-1367,-1355,-1343,-1330,-1317,-1304,-1291,-1278,-1265,-1252,-1239,-1225,-1211,-1197,-1184,-1171,-1158,-1145,-1132,-1120,
+-1108,-1096,-1085,-1074,-1063,-1053,-1044,-1035,-1027,-1019,-1012,-1006,-1000,-994,-989,-985,-981,-977,-974,-972,
+-971,-969,-967,-965,-964,-963,-961,-960,-959,-957,-956,-954,-952,-950,-947,-943,-939,-934,-929,-923,
+-917,-909,-900,-891,-880,-869,-857,-844,-830,-816,-800,-785,-769,-752,-735,-717,-698,-680,-661,-642,
+-623,-604,-586,-567,-549,-643,-625,-607,-589,-572,-556,-540,-525,-511,-498,-485,-474,-463,-452,-443,
+-435,-428,-421,-415,-411,-406,-403,-399,-397,-395,-393,-392,-391,-390,-389,-388,-387,-386,-384,-383,
+-381,-379,-376,-373,-370,-366,-362,-356,-351,-344,-337,-330,-321,-312,-302,-291,-280,-269,-256,-244,
+-230,-216,-202,-188,-173,-158,-143,-128,-113,-97,-82,-66,-51,-36,-21,-6,7,21,35,48,
+62,75,88,99,110,121,131,142,152,161,170,178,187,194,202,209,216,222,228,234,
+240,246,251,256,261,267,272,277,282,287,292,297,302,306,311,316,321,326,330,335,
+339,344,349,353,358,362,366,369,373,377,381,385,389,392,395,398,400,403,406,408,
+409,411,412,412,413,413,413,414,414,414,413,412,411,409,408,406,405,403,401,398,
+395,392,389,386,383,380,377,373,370,366,362,358,354,350,346,342,338,334,330,326,
+322,317,313,309,306,302,299,296,293,290,287,284,282,279,277,276,274,273,272,272,
+271,271,271,272,273,274,276,278,280,282,285,288,291,295,298,302,306,310,315,319,
+324,329,334,339,343,348,353,357,362,367,371,375,379,383,386,390,393,395,398,400,
+402,404,405,406,407,408,408,408,408,408,407,406,405,404,403,401,400,398,397,395,
+393,391,390,388,387,386,384,383,382,382,381,381,381,381,381,382,383,384,385,387,
+388,390,392,394,396,397,400,402,404,405,407,408,410,411,412,412,412,412,411,409,
+407,405,402,399,395,391,387,382,376,370,363,356,348,340,331,322,313,303,292,282,
+271,259,248,237,225,213,201,188,176,164,152,140,128,116,104,92,80,68,56,44,
+32,20,8,-4,-17,-29,-42,-55,-69,-83,-98,-112,-127,-143,-160,-177,-194,-213,-231,-250,
+-270,-290,-311,-333,-356,-380,-404,-428,-453,-479,-504,-531,-557,-584,-611,-638,-665,-693,-720,-748,
+-775,-802,-830,-856,-883,-908,-934,-959,-984,-1008,-1032,-1055,-1078,-1100,-1122,-1145,-1166,-1187,-1208,-1229,
+-1249,-1270,-1290,-1310,-1330,-1350,-1371,-1391,-1412,-1433,-1455,-1477,-1499,-1522,-1545,-1569,-1594,-1619,-1645,-1672,
+-1699,-1726,-1755,-1783,-1812,-1842,-1872,-1903,-1933,-1964,-1996,-2027,-2059,-2091,-2123,-2154,-2186,-2217,-2247,-2277,
+-2306,-2336,-2366,-2395,-2423,-2451,-2478,-2505,-2531,-2556,-2581,-2606,-2629,-2651,-2673,-2695,-2716,-2736,-2756,-2776,
+-2796,-2815,-2834,-2853,-2872,-2891,-2909,-2928,-2947,-2966,-2985,-3004,-3024,-3044,-3064,-3085,-3107,-3128,-3150,-3173,
+-3196,-3219,-3243,-3267,-3291,-3316,-3341,-3366,-3392,-3417,-3442,-3468,-3493,-3518,-3543,-3568,-3593,-3617,-3640,-3664,
+-3687,-3710,-3732,-3753,-3774,-3794,-3814,-3833,-3852,-3870,-3887,-3904,-3920,-3935,-3950,-3965,-3979,-3992,-4006,-4019,
+-4031,-4043,-4055,-4067,-4079,-4090,-4102,-4114,-4126,-4137,-4149,-4161,-4174,-4186,-4199,-4212,-4226,-4239,-4252,-4266,
+-4280,-4295,-4310,-4325,-4340,-4355,-4371,-4387,-4403,-4419,-4435,-4452,-4468,-4485,-4501,-4518,-4534,-4551,-4567,-4583,
+-4599,-4615,-4631,-4646,-4662,-4677,-4692,-4707,-4721,-4736,-4749,-4763,-4776,-4789,-4802,-4815,-4826,-4838,-4849,-4860,
+-4871,-4881,-4891,-4900,-4910,-4918,-4926,-4934,-4941,-4948,-4954,-4960,-4965,-4970,-4974,-4977,-4979,-4981,-4983,-4984,
+-4984,-4984,-4982,-4979,-4976,-4973,-4970,-4965,-4960,-4955,-4948,-4941,-4934,-4927,-4919,-4910,-4901,-4892,-4883,-4874,
+-4864,-4855,-4847,-4838,-4829,-4821,-4814,-4806,-4799,-4792,-4788,-4786,-4788,-4792,-4799,-4802,-4796,-4780,-4762,-4750,
+-4744,-4741,-4739,-4738,-4740,-4742,-4742,-4740,-4740,-4743,-4748,-4753,-4756,-4761,-4767,-4772,-4777,-4783,-4789,-4796,
+-4802,-4808,-4815,-4821,-4828,-4834,-4840,-4846,-4852,-4858,-4863,-4868,-4874,-4878,-4883,-4887,-4891,-4895,-4898,-4901,
+-4904,-4907,-4910,-4912,-4914,-4916,-4917,-4919,-4920,-4921,-4922,-4923,-4924,-4925,-4925,-4926,-4927,-4928,-4929,-4930,
+-4931,-4932,-4933,-4935,-4937,-4938,-4940,-4943,-4945,-4948,-4951,-4954,-4957,-4960,-4964,-4968,-4972,-4976,-4980,-4985,
+-4990,-4994,-4999,-5004,-5009,-5015,-5020,-5025,-5030,-5035,-5040,-5046,-5051,-5056,-5060,-5065,-5070,-5074,-5078,-5082,
+-5086,-5090,-5094,-5097,-5100,-5103,-5105,-5108,-5110,-5112,-5114,-5115,-5117,-5118,-5119,-5119,-5120,-5121,-5121,-5121,
+-5121,-5121,-5121,-5121,-5121,-5120,-5120,-5119,-5119,-5118,-5118,-5117,-5117,-5116,-5116,-5115,-5114,-5114,-5113,-5112,
+-5112,-5111,-5110,-5110,-5109,-5108,-5107,-5107,-5106,-5105,-5104,-5103,-5102,-5100,-5099,-5098,-5096,-5095,-5093,-5092,
+-5090,-5088,-5086,-5084,-5082,-5080,-5078,-5076,-5074,-5072,-5069,-5067,-5065,-5062,-5060,-5057,-5055,-5052,-5050,-5047,
+-5045,-5042,-5040,-5037,-5035,-5032,-5030,-5027,-5024,-5021,-5019,-5016,-5013,-5010,-5007,-5004,-5001,-4998,-4994,-4991,
+-4987,-4983,-4979,-4975,-4971,-4967,-4963,-4958,-4953,-4948,-4943,-4938,-4933,-4927,-4921,-4916,-4910,-4904,-4898,-4891,
+-4885,-4878,-4871,-4865,-4858,-4851,-4844,-4837,-4830,-4823,-4815,-4808,-4801,-4794,-4786,-4779,-4772,-4764,-4757,-4749,
+-4741,-4734,-4726,-4718,-4711,-4703,-4695,-4687,-4678,-4670,-4661,-4653,-4644,-4635,-4626,-4617,-4608,-4599,-4589,-4579,
+-4569,-4559,-4549,-4539,-4529,-4518,-4507,-4496,-4485,-4474,-4463,-4451,-4440,-4428,-4417,-4405,-4394,-4382,-4370,-4359,
+-4348,-4336,-4325,-4314,-4303,-4292,-4281,-4270,-4260,-4250,-4239,-4229,-4219,-4209,-4199,-4190,-4180,-4171,-4161,-4152,
+-4142,-4133,-4123,-4114,-4104,-4095,-4085,-4076,-4066,-4056,-4046,-4036,-4025,-4015,-4004,-3993,-3982,-3971,-3960,-3949,
+-3937,-3925,-3913,-3902,-3890,-3878,-3866,-3854,-3842,-3830,-3818,-3806,-3794,-3782,-3770,-3759,-3748,-3736,-3726,-3715,
+-3704,-3694,-3683,-3673,-3664,-3654,-3645,-3636,-3628,-3619,-3610,-3601,-3593,-3585,-3576,-3568,-3560,-3551,-3543,-3534,
+-3525,-3516,-3507,-3498,-3488,-3478,-3468,-3457,-3447,-3436,-3424,-3413,-3401,-3388,-3376,-3362,-3349,-3335,-3321,-3307,
+-3292,-3277,-3261,-3246,-3231,-3215,-3199,-3183,-3167,-3150,-3133,-3117,-3100,-3083,-3066,-3050,-3033,-3016,-3000,-2983,
+-2967,-2951,-2935,-2919,-2903,-2887,-2872,-2856,-2841,-2826,-2810,-2795,-2780,-2765,-2750,-2736,-2721,-2707,-2693,-2680,
+-2666,-2653,-2640,-2628,-2616,-2604,-2593,-2582,-2572,-2562,-2551,-2542,-2533,-2524,-2516,-2508,-2501,-2494,-2488,-2482,
+-2477,-2472,-2468,-2464,-2461,-2459,-2457,-2455,-2453,-2452,-2452,-2452,-2453,-2453,-2455,-2457,-2459,-2461,-2464,-2466,
+-2468,-2471,-2473,-2476,-2480,-2485,-2489,-2495,-2500,-2506,-2511,-2517,-2524,-2531,-2537,-2543,-2550,-2556,-2563,-2569,
+-2575,-2582,-2588,-2594,-2600,-2605,-2611,-2616,-2622,-2627,-2632,-2637,-2641,-2645,-2649,-2653,-2656,-2659,-2662,-2664,
+-2666,-2668,-2669,-2670,-2671,-2671,-2670,-2670,-2669,-2668,-2665,-2663,-2659,-2656,-2652,-2648,-2643,-2638,-2633,-2627,
+-2621,-2615,-2608,-2601,-2594,-2587,-2579,-2571,-2564,-2556,-2549,-2541,-2534,-2526,-2519,-2512,-2505,-2499,-2492,-2487,
+-2481,-2476,-2471,-2467,-2463,-2460,-2457,-2455,-2453,-2451,-2450,-2450,-2450,-2450,-2451,-2452,-2454,-2456,-2458,-2460,
+-2463,-2466,-2468,-2471,-2474,-2477,-2480,-2483,-2485,-2487,-2489,-2490,-2492,-2492,-2492,-2492,-2491,-2489,-2487,-2484,
+-2481,-2477,-2472,-2466,-2460,-2453,-2445,-2437,-2428,-2418,-2408,-2397,-2386,-2374,-2362,-2350,-2337,-2324,-2310,-2297,
+-2283,-2269,-2255,-2241,-2226,-2212,-2199,-2185,-2172,-2159,-2146,-2133,-2121,-2109,-2098,-2088,-2077,-2067,-2058,-2049,
+-2040,-2032,-2024,-2017,-2010,-2003,-1997,-1991,-1986,-1981,-1977,-1972,-1968,-1964,-1960,-1956,-1953,-1949,-1946,-1943,
+-1939,-1936,-1932,-1929,-1925,-1922,-1918,-1914,-1910,-1906,-1902,-1897,-1892,-1888,-1883,-1878,-1873,-1867,-1862,-1857,
+-1851,-1845,-1839,-1833,-1828,-1822,-1816,-1810,-1804,-1798,-1792,-1786,-1780,-1774,-1768,-1762,-1756,-1750,-1744,-1739,
+-1733,-1727,-1721,-1715,-1709,-1704,-1699,-1694,-1688,-1683,-1678,-1672,-1667,-1662,-1657,-1652,-1646,-1641,-1635,-1630,
+-1623,-1617,-1611,-1605,-1598,-1591,-1583,-1576,-1568,-1560,-1552,-1543,-1534,-1525,-1515,-1505,-1495,-1485,-1474,-1463,
+-1452,-1441,-1430,-1419,-1407,-1394,-1382,-1369,-1357,-1344,-1332,-1320,-1308,-1296,-1285,-1273,-1262,-1251,-1240,-1229,
+-1219,-1208,-1198,-1189,-1180,-1171,-1163,-1156,-1149,-1142,-1136,-1131,-1127,-1123,-1120,-1117,-1114,-1112,-1111,-1110,
+-1109,-1108,-1108,-1107,-1107,-1106,-1106,-1105,-1104,-1103,-1102,-1100,-1098,-1095,-1092,-1088,-1083,-1078,-1072,-1065,
+-1058,-1050,-1041,-1030,-1019,-1007,-994,-980,-965,-950,-934,-917,-900,-882,-863,-844,-825,-804,-784,-764,
+-743,-723,-703,-683,-663,-643,-772,-754,-736,-718,-701,-684,-669,-654,-639,-626,-613,-601,-591,-581,
+-571,-562,-554,-547,-541,-535,-530,-526,-522,-519,-516,-514,-512,-510,-508,-507,-505,-503,-502,-500,
+-498,-496,-493,-490,-487,-483,-478,-474,-468,-462,-455,-448,-440,-431,-422,-412,-402,-391,-379,-366,
+-353,-340,-326,-311,-296,-280,-265,-249,-233,-216,-200,-183,-167,-151,-134,-118,-101,-85,-70,-54,
+-39,-24,-10,3,17,31,44,56,69,81,92,103,113,124,134,143,152,161,169,176,
+184,191,198,205,212,218,224,230,236,242,248,253,259,264,269,273,278,283,287,292,
+296,301,305,309,313,317,320,324,327,330,332,335,337,340,341,343,345,346,348,349,
+349,350,350,350,349,349,348,347,345,343,341,339,336,333,330,327,324,321,317,314,
+310,306,302,297,293,288,283,279,274,270,265,261,256,252,247,243,238,234,230,225,
+221,217,214,210,207,204,201,198,195,193,191,190,189,188,188,188,188,189,189,190,
+192,193,195,198,200,203,206,210,214,218,222,227,232,237,242,248,253,258,263,269,
+274,280,285,291,296,301,306,310,315,319,323,326,330,333,335,338,340,341,343,344,
+344,345,345,344,344,343,342,341,339,337,335,333,331,328,326,324,321,318,316,314,
+311,309,307,305,304,302,301,300,299,298,298,299,299,300,301,302,304,306,308,310,
+312,315,318,321,323,326,329,332,335,338,340,342,344,345,347,348,348,348,348,347,
+345,343,340,338,335,331,327,322,317,311,305,297,290,282,273,264,255,245,235,224,
+214,203,192,180,168,157,145,133,122,110,98,86,74,62,51,39,27,16,4,-7,
+-19,-31,-43,-54,-66,-78,-90,-103,-115,-128,-141,-155,-169,-184,-199,-214,-230,-247,-264,-282,
+-300,-318,-338,-358,-379,-401,-423,-446,-469,-493,-518,-543,-568,-594,-620,-646,-673,-700,-727,-754,
+-781,-808,-835,-862,-889,-916,-942,-968,-995,-1021,-1046,-1071,-1095,-1119,-1143,-1166,-1190,-1212,-1234,-1256,
+-1278,-1300,-1321,-1342,-1363,-1384,-1405,-1426,-1448,-1469,-1490,-1511,-1533,-1555,-1578,-1601,-1624,-1648,-1672,-1696,
+-1721,-1747,-1773,-1799,-1825,-1852,-1879,-1906,-1934,-1962,-1990,-2019,-2047,-2076,-2105,-2133,-2162,-2190,-2218,-2246,
+-2274,-2301,-2329,-2356,-2383,-2409,-2436,-2461,-2487,-2512,-2536,-2560,-2583,-2606,-2629,-2651,-2672,-2693,-2714,-2735,
+-2755,-2775,-2795,-2815,-2835,-2855,-2874,-2893,-2913,-2932,-2951,-2971,-2991,-3011,-3031,-3052,-3073,-3095,-3116,-3139,
+-3161,-3184,-3207,-3230,-3254,-3277,-3301,-3326,-3350,-3374,-3399,-3423,-3448,-3473,-3497,-3521,-3545,-3569,-3593,-3616,
+-3638,-3661,-3683,-3705,-3726,-3746,-3766,-3786,-3805,-3824,-3842,-3859,-3876,-3892,-3908,-3923,-3938,-3953,-3967,-3980,
+-3993,-4007,-4019,-4031,-4043,-4055,-4067,-4079,-4090,-4102,-4113,-4124,-4136,-4148,-4159,-4171,-4183,-4195,-4208,-4220,
+-4232,-4245,-4258,-4271,-4284,-4297,-4310,-4324,-4338,-4352,-4366,-4380,-4395,-4410,-4424,-4439,-4453,-4468,-4482,-4497,
+-4511,-4525,-4540,-4554,-4569,-4583,-4597,-4610,-4624,-4637,-4650,-4663,-4675,-4687,-4699,-4711,-4723,-4734,-4744,-4755,
+-4765,-4774,-4784,-4792,-4801,-4809,-4816,-4824,-4831,-4837,-4843,-4848,-4853,-4858,-4861,-4864,-4867,-4869,-4870,-4870,
+-4870,-4869,-4867,-4865,-4862,-4859,-4855,-4851,-4846,-4840,-4835,-4828,-4821,-4813,-4806,-4799,-4791,-4783,-4775,-4768,
+-4760,-4752,-4745,-4737,-4730,-4722,-4716,-4710,-4704,-4698,-4694,-4693,-4693,-4692,-4691,-4691,-4694,-4694,-4686,-4673,
+-4660,-4653,-4652,-4653,-4653,-4653,-4654,-4658,-4662,-4666,-4671,-4677,-4683,-4690,-4696,-4703,-4711,-4719,-4726,-4734,
+-4743,-4750,-4758,-4766,-4775,-4783,-4790,-4798,-4806,-4813,-4820,-4827,-4833,-4840,-4846,-4851,-4856,-4861,-4865,-4870,
+-4873,-4877,-4880,-4882,-4885,-4887,-4888,-4890,-4891,-4892,-4893,-4893,-4893,-4894,-4894,-4894,-4894,-4894,-4894,-4894,
+-4893,-4893,-4893,-4894,-4894,-4894,-4895,-4896,-4897,-4898,-4900,-4901,-4903,-4906,-4908,-4911,-4914,-4917,-4921,-4924,
+-4928,-4932,-4937,-4941,-4946,-4951,-4956,-4961,-4966,-4971,-4976,-4982,-4987,-4993,-4998,-5003,-5008,-5014,-5019,-5023,
+-5028,-5033,-5037,-5042,-5046,-5050,-5053,-5057,-5060,-5063,-5066,-5068,-5071,-5073,-5075,-5076,-5078,-5079,-5080,-5081,
+-5082,-5082,-5083,-5083,-5083,-5083,-5083,-5083,-5082,-5082,-5081,-5081,-5080,-5079,-5079,-5078,-5077,-5076,-5075,-5074,
+-5074,-5073,-5072,-5070,-5069,-5068,-5067,-5066,-5065,-5063,-5062,-5061,-5059,-5058,-5056,-5055,-5053,-5051,-5049,-5047,
+-5045,-5043,-5041,-5038,-5036,-5033,-5031,-5028,-5025,-5022,-5020,-5016,-5013,-5010,-5007,-5004,-5000,-4997,-4994,-4990,
+-4987,-4983,-4980,-4976,-4973,-4969,-4965,-4962,-4959,-4955,-4951,-4947,-4943,-4939,-4935,-4931,-4927,-4923,-4919,-4915,
+-4912,-4908,-4905,-4901,-4896,-4891,-4887,-4883,-4880,-4876,-4872,-4867,-4863,-4859,-4855,-4850,-4846,-4841,-4837,-4832,
+-4828,-4823,-4818,-4813,-4809,-4804,-4799,-4794,-4789,-4784,-4779,-4774,-4768,-4763,-4758,-4752,-4747,-4741,-4735,-4729,
+-4723,-4717,-4711,-4705,-4698,-4691,-4684,-4677,-4670,-4662,-4655,-4647,-4639,-4630,-4622,-4613,-4604,-4595,-4586,-4577,
+-4567,-4557,-4547,-4537,-4526,-4516,-4505,-4494,-4483,-4472,-4460,-4449,-4438,-4426,-4415,-4403,-4392,-4381,-4370,-4358,
+-4347,-4336,-4325,-4314,-4303,-4293,-4282,-4272,-4261,-4251,-4241,-4231,-4221,-4212,-4202,-4192,-4183,-4173,-4164,-4154,
+-4145,-4136,-4126,-4117,-4107,-4098,-4088,-4079,-4069,-4059,-4049,-4039,-4028,-4018,-4007,-3996,-3985,-3974,-3962,-3950,
+-3939,-3927,-3914,-3902,-3890,-3877,-3865,-3852,-3839,-3827,-3814,-3801,-3789,-3776,-3764,-3751,-3739,-3727,-3715,-3703,
+-3692,-3680,-3669,-3658,-3647,-3637,-3627,-3617,-3607,-3597,-3588,-3578,-3569,-3560,-3551,-3542,-3533,-3525,-3516,-3507,
+-3497,-3488,-3479,-3470,-3460,-3450,-3440,-3430,-3420,-3410,-3399,-3388,-3377,-3366,-3354,-3342,-3329,-3317,-3304,-3290,
+-3277,-3263,-3250,-3235,-3221,-3207,-3192,-3177,-3162,-3146,-3131,-3116,-3100,-3085,-3069,-3054,-3039,-3023,-3008,-2992,
+-2977,-2962,-2948,-2933,-2918,-2904,-2890,-2876,-2862,-2848,-2834,-2820,-2807,-2793,-2780,-2767,-2754,-2742,-2730,-2718,
+-2706,-2695,-2684,-2673,-2662,-2652,-2642,-2633,-2623,-2614,-2606,-2597,-2589,-2581,-2574,-2566,-2559,-2552,-2545,-2540,
+-2535,-2530,-2525,-2521,-2517,-2513,-2510,-2507,-2505,-2503,-2502,-2501,-2500,-2499,-2498,-2499,-2499,-2499,-2500,-2502,
+-2504,-2506,-2508,-2511,-2514,-2518,-2522,-2526,-2530,-2535,-2540,-2546,-2552,-2558,-2564,-2570,-2577,-2584,-2591,-2598,
+-2605,-2612,-2619,-2625,-2632,-2639,-2646,-2652,-2658,-2665,-2670,-2676,-2682,-2687,-2692,-2696,-2701,-2705,-2708,-2711,
+-2714,-2716,-2718,-2719,-2720,-2720,-2720,-2720,-2719,-2717,-2715,-2712,-2709,-2705,-2701,-2696,-2691,-2686,-2680,-2674,
+-2667,-2661,-2654,-2646,-2639,-2631,-2623,-2616,-2608,-2600,-2592,-2585,-2577,-2569,-2562,-2555,-2548,-2542,-2537,-2531,
+-2526,-2521,-2517,-2514,-2511,-2508,-2506,-2505,-2504,-2503,-2503,-2503,-2504,-2505,-2506,-2508,-2510,-2513,-2516,-2519,
+-2522,-2525,-2529,-2532,-2536,-2539,-2542,-2545,-2548,-2550,-2552,-2554,-2555,-2556,-2556,-2555,-2554,-2553,-2551,-2548,
+-2544,-2540,-2535,-2529,-2523,-2515,-2508,-2499,-2490,-2480,-2470,-2459,-2448,-2436,-2423,-2410,-2397,-2383,-2370,-2356,
+-2341,-2327,-2313,-2298,-2284,-2270,-2256,-2242,-2228,-2214,-2201,-2187,-2175,-2162,-2150,-2139,-2127,-2116,-2106,-2096,
+-2086,-2077,-2069,-2060,-2052,-2045,-2038,-2031,-2025,-2018,-2012,-2007,-2001,-1996,-1991,-1986,-1981,-1976,-1971,-1966,
+-1961,-1957,-1952,-1948,-1943,-1938,-1932,-1927,-1922,-1917,-1911,-1906,-1900,-1894,-1887,-1881,-1874,-1867,-1860,-1853,
+-1846,-1839,-1831,-1824,-1817,-1810,-1804,-1797,-1790,-1783,-1776,-1770,-1763,-1757,-1750,-1744,-1738,-1732,-1727,-1722,
+-1716,-1711,-1705,-1700,-1695,-1691,-1686,-1682,-1677,-1673,-1669,-1665,-1661,-1657,-1653,-1650,-1646,-1642,-1638,-1634,
+-1629,-1625,-1621,-1617,-1612,-1607,-1601,-1596,-1591,-1585,-1579,-1572,-1565,-1557,-1549,-1541,-1532,-1523,-1514,-1505,
+-1496,-1487,-1477,-1467,-1457,-1447,-1436,-1425,-1414,-1403,-1392,-1382,-1371,-1361,-1352,-1343,-1334,-1325,-1318,-1310,
+-1302,-1293,-1284,-1277,-1271,-1265,-1259,-1253,-1249,-1244,-1241,-1237,-1234,-1232,-1230,-1229,-1229,-1228,-1228,-1228,
+-1229,-1229,-1230,-1230,-1231,-1232,-1233,-1233,-1233,-1233,-1232,-1231,-1230,-1229,-1226,-1223,-1219,-1215,-1209,-1203,
+-1196,-1189,-1180,-1170,-1160,-1148,-1135,-1122,-1107,-1092,-1077,-1060,-1043,-1025,-1007,-989,-970,-950,-930,-910,
+-890,-870,-850,-830,-810,-791,-772,-919,-902,-885,-868,-852,-836,-821,-807,-794,-781,-769,-757,-747,
+-737,-727,-718,-709,-701,-695,-688,-683,-678,-673,-669,-665,-662,-659,-656,-653,-651,-648,-646,-643,
+-640,-637,-634,-631,-627,-623,-619,-615,-609,-604,-597,-590,-583,-575,-566,-557,-547,-537,-526,-514,
+-502,-489,-476,-462,-447,-433,-418,-402,-387,-370,-354,-337,-320,-304,-287,-270,-253,-236,-219,-202,
+-186,-170,-154,-138,-122,-106,-91,-76,-61,-47,-33,-20,-7,5,17,29,41,53,64,75,
+85,95,105,114,123,131,140,149,157,165,172,179,186,193,199,205,211,217,222,228,
+233,238,243,247,251,254,258,261,264,267,270,272,274,276,277,278,279,279,279,278,
+277,276,276,275,274,272,269,266,263,260,257,253,249,245,240,236,231,226,221,215,
+209,204,198,192,187,181,176,170,164,158,152,147,141,136,131,126,122,117,112,108,
+104,100,96,93,90,88,86,84,82,81,80,79,79,79,80,81,82,84,86,88,
+91,95,98,102,107,111,115,120,125,130,136,142,148,154,160,166,172,178,184,191,
+197,202,208,213,219,224,228,233,237,241,245,248,251,253,255,257,258,259,260,260,
+260,259,259,258,256,254,252,250,248,245,242,239,236,233,231,228,225,222,219,217,
+215,212,210,209,207,206,205,205,205,205,206,207,208,209,211,214,216,219,222,225,
+229,233,237,241,245,249,253,257,261,264,268,271,274,277,279,280,282,282,283,283,
+283,282,281,278,276,273,269,265,259,254,248,241,233,225,217,208,198,188,177,167,
+156,146,134,123,110,98,86,74,62,50,38,25,13,1,-11,-23,-35,-47,-60,-71,
+-83,-95,-106,-118,-130,-142,-153,-165,-178,-190,-203,-216,-229,-243,-257,-271,-285,-300,-316,-332,
+-349,-367,-385,-403,-423,-442,-463,-484,-505,-527,-550,-574,-598,-623,-648,-673,-699,-725,-751,-777,
+-804,-831,-858,-885,-911,-939,-966,-992,-1019,-1045,-1072,-1098,-1124,-1149,-1174,-1199,-1224,-1248,-1273,-1296,
+-1320,-1343,-1365,-1388,-1411,-1433,-1455,-1477,-1499,-1521,-1543,-1565,-1587,-1609,-1631,-1654,-1676,-1698,-1721,-1744,
+-1767,-1790,-1814,-1837,-1862,-1886,-1910,-1935,-1959,-1984,-2009,-2034,-2059,-2084,-2109,-2134,-2159,-2184,-2210,-2235,
+-2260,-2285,-2310,-2335,-2359,-2383,-2408,-2432,-2455,-2479,-2502,-2525,-2547,-2570,-2592,-2613,-2635,-2656,-2677,-2698,
+-2719,-2740,-2760,-2781,-2801,-2821,-2841,-2862,-2882,-2903,-2923,-2944,-2965,-2986,-3007,-3029,-3050,-3072,-3094,-3117,
+-3139,-3161,-3184,-3208,-3231,-3255,-3279,-3303,-3327,-3350,-3374,-3399,-3423,-3447,-3471,-3494,-3518,-3541,-3564,-3586,
+-3608,-3630,-3652,-3673,-3694,-3714,-3734,-3753,-3772,-3790,-3808,-3826,-3842,-3858,-3874,-3889,-3904,-3918,-3932,-3945,
+-3958,-3971,-3984,-3995,-4007,-4018,-4029,-4040,-4051,-4061,-4072,-4082,-4093,-4103,-4113,-4123,-4133,-4144,-4155,-4166,
+-4176,-4187,-4198,-4208,-4220,-4231,-4242,-4254,-4266,-4278,-4290,-4302,-4314,-4327,-4339,-4352,-4365,-4378,-4391,-4403,
+-4416,-4429,-4442,-4455,-4467,-4480,-4493,-4505,-4517,-4529,-4540,-4552,-4563,-4574,-4585,-4595,-4605,-4615,-4625,-4634,
+-4643,-4652,-4660,-4668,-4675,-4682,-4688,-4694,-4699,-4705,-4709,-4713,-4717,-4720,-4723,-4725,-4727,-4729,-4729,-4729,
+-4729,-4727,-4725,-4722,-4719,-4716,-4712,-4708,-4703,-4699,-4694,-4688,-4682,-4675,-4668,-4663,-4656,-4649,-4642,-4635,
+-4629,-4622,-4615,-4609,-4604,-4598,-4592,-4587,-4584,-4583,-4582,-4581,-4580,-4581,-4580,-4580,-4580,-4582,-4586,-4586,
+-4581,-4573,-4566,-4562,-4562,-4564,-4567,-4571,-4578,-4585,-4592,-4599,-4607,-4615,-4624,-4633,-4642,-4651,-4661,-4671,
+-4680,-4690,-4700,-4710,-4719,-4729,-4739,-4748,-4757,-4765,-4774,-4782,-4790,-4797,-4804,-4811,-4817,-4823,-4828,-4833,
+-4838,-4842,-4846,-4849,-4852,-4854,-4856,-4858,-4859,-4860,-4860,-4861,-4861,-4861,-4861,-4860,-4859,-4858,-4858,-4857,
+-4856,-4855,-4854,-4854,-4853,-4852,-4852,-4852,-4852,-4852,-4852,-4853,-4854,-4855,-4856,-4858,-4860,-4862,-4865,-4868,
+-4871,-4874,-4878,-4882,-4886,-4890,-4895,-4899,-4904,-4909,-4914,-4920,-4925,-4930,-4935,-4941,-4946,-4952,-4957,-4962,
+-4968,-4973,-4978,-4983,-4987,-4992,-4996,-5000,-5004,-5008,-5011,-5014,-5018,-5020,-5023,-5025,-5028,-5030,-5031,-5033,
+-5034,-5035,-5036,-5037,-5038,-5038,-5038,-5039,-5039,-5039,-5038,-5038,-5038,-5037,-5037,-5036,-5035,-5035,-5034,-5033,
+-5032,-5031,-5030,-5029,-5028,-5028,-5026,-5025,-5024,-5023,-5022,-5021,-5019,-5018,-5017,-5015,-5014,-5012,-5010,-5009,
+-5007,-5005,-5003,-5001,-4998,-4996,-4994,-4991,-4988,-4986,-4983,-4980,-4977,-4973,-4970,-4967,-4963,-4960,-4956,-4952,
+-4948,-4944,-4940,-4936,-4932,-4928,-4924,-4920,-4916,-4912,-4907,-4903,-4898,-4894,-4890,-4886,-4882,-4878,-4873,-4869,
+-4866,-4862,-4857,-4853,-4849,-4845,-4842,-4838,-4834,-4830,-4826,-4822,-4818,-4815,-4811,-4807,-4803,-4800,-4796,-4792,
+-4789,-4785,-4781,-4778,-4774,-4770,-4766,-4763,-4759,-4755,-4751,-4747,-4743,-4739,-4735,-4731,-4726,-4722,-4717,-4712,
+-4707,-4702,-4697,-4691,-4686,-4680,-4673,-4667,-4660,-4653,-4646,-4639,-4631,-4623,-4615,-4606,-4598,-4589,-4579,-4570,
+-4560,-4550,-4541,-4530,-4520,-4509,-4499,-4488,-4477,-4466,-4455,-4444,-4433,-4422,-4410,-4399,-4388,-4377,-4365,-4354,
+-4343,-4333,-4322,-4311,-4300,-4290,-4280,-4270,-4260,-4250,-4240,-4230,-4221,-4211,-4202,-4193,-4183,-4174,-4165,-4155,
+-4146,-4137,-4128,-4119,-4109,-4100,-4091,-4081,-4072,-4062,-4052,-4042,-4032,-4021,-4010,-4000,-3989,-3977,-3966,-3954,
+-3942,-3930,-3918,-3906,-3893,-3881,-3868,-3855,-3842,-3829,-3816,-3803,-3790,-3777,-3764,-3751,-3739,-3726,-3713,-3701,
+-3688,-3676,-3664,-3652,-3641,-3629,-3618,-3606,-3595,-3584,-3574,-3563,-3553,-3543,-3533,-3523,-3513,-3503,-3494,-3484,
+-3474,-3464,-3455,-3445,-3435,-3425,-3415,-3405,-3395,-3384,-3373,-3362,-3352,-3340,-3329,-3317,-3306,-3294,-3282,-3269,
+-3256,-3244,-3231,-3218,-3204,-3191,-3178,-3164,-3150,-3136,-3122,-3108,-3095,-3081,-3067,-3053,-3039,-3025,-3012,-2999,
+-2985,-2972,-2959,-2946,-2933,-2920,-2907,-2895,-2883,-2870,-2858,-2846,-2835,-2823,-2812,-2801,-2791,-2780,-2770,-2760,
+-2751,-2741,-2732,-2723,-2715,-2707,-2699,-2691,-2683,-2676,-2669,-2661,-2654,-2647,-2641,-2634,-2627,-2621,-2615,-2608,
+-2603,-2597,-2592,-2588,-2584,-2580,-2576,-2572,-2569,-2566,-2563,-2560,-2558,-2556,-2554,-2552,-2551,-2551,-2551,-2551,
+-2551,-2552,-2553,-2555,-2556,-2558,-2560,-2564,-2568,-2572,-2575,-2580,-2584,-2589,-2595,-2600,-2606,-2612,-2618,-2625,
+-2632,-2639,-2646,-2652,-2659,-2666,-2673,-2680,-2687,-2693,-2699,-2706,-2712,-2718,-2724,-2729,-2733,-2738,-2742,-2746,
+-2750,-2752,-2755,-2757,-2759,-2760,-2760,-2760,-2759,-2758,-2757,-2754,-2752,-2748,-2745,-2741,-2736,-2731,-2726,-2720,
+-2714,-2707,-2701,-2694,-2687,-2679,-2672,-2664,-2657,-2649,-2641,-2634,-2626,-2619,-2612,-2605,-2599,-2593,-2587,-2582,
+-2577,-2572,-2568,-2565,-2561,-2559,-2557,-2555,-2554,-2554,-2553,-2554,-2554,-2555,-2557,-2558,-2560,-2563,-2565,-2568,
+-2571,-2574,-2576,-2579,-2582,-2585,-2587,-2590,-2591,-2593,-2594,-2595,-2596,-2596,-2595,-2594,-2592,-2590,-2587,-2583,
+-2578,-2573,-2568,-2561,-2554,-2546,-2538,-2529,-2519,-2508,-2498,-2486,-2474,-2461,-2448,-2435,-2422,-2408,-2394,-2379,
+-2365,-2350,-2335,-2320,-2306,-2291,-2277,-2262,-2248,-2234,-2220,-2207,-2194,-2181,-2169,-2158,-2146,-2135,-2124,-2114,
+-2104,-2095,-2086,-2078,-2070,-2062,-2054,-2047,-2040,-2034,-2028,-2022,-2016,-2010,-2005,-1999,-1994,-1989,-1983,-1978,
+-1973,-1967,-1962,-1957,-1952,-1946,-1940,-1934,-1928,-1922,-1916,-1910,-1903,-1896,-1888,-1881,-1873,-1864,-1856,-1848,
+-1839,-1830,-1821,-1813,-1804,-1795,-1786,-1777,-1769,-1760,-1752,-1743,-1735,-1727,-1720,-1712,-1704,-1696,-1689,-1682,
+-1675,-1669,-1663,-1657,-1651,-1646,-1641,-1636,-1632,-1627,-1623,-1619,-1615,-1612,-1609,-1605,-1602,-1599,-1596,-1593,
+-1590,-1587,-1584,-1581,-1577,-1574,-1570,-1567,-1563,-1558,-1553,-1548,-1542,-1536,-1530,-1523,-1517,-1510,-1503,-1496,
+-1489,-1482,-1474,-1466,-1458,-1450,-1442,-1435,-1427,-1419,-1410,-1402,-1394,-1386,-1378,-1370,-1364,-1358,-1353,-1347,
+-1341,-1335,-1330,-1326,-1322,-1318,-1315,-1312,-1309,-1307,-1305,-1304,-1303,-1302,-1301,-1302,-1303,-1304,-1305,-1307,
+-1309,-1311,-1314,-1316,-1318,-1320,-1322,-1324,-1326,-1327,-1328,-1329,-1329,-1329,-1329,-1328,-1326,-1323,-1320,-1315,
+-1310,-1305,-1299,-1291,-1283,-1273,-1263,-1252,-1240,-1227,-1214,-1199,-1184,-1169,-1152,-1136,-1118,-1101,-1083,-1065,
+-1046,-1028,-1010,-992,-974,-956,-937,-919,-1070,-1054,-1039,-1024,-1009,-995,-982,-969,-957,-945,-934,-923,
+-913,-903,-894,-885,-876,-868,-861,-853,-847,-841,-835,-830,-826,-821,-817,-813,-809,-806,-802,-799,
+-795,-791,-788,-784,-780,-776,-771,-766,-762,-756,-751,-744,-738,-730,-723,-714,-705,-696,-686,-676,
+-666,-654,-642,-630,-617,-604,-591,-577,-562,-547,-532,-517,-501,-484,-468,-451,-434,-418,-401,-384,
+-367,-350,-334,-317,-300,-283,-266,-250,-234,-218,-202,-186,-171,-156,-141,-126,-112,-98,-84,-70,
+-56,-43,-31,-18,-6,6,17,28,39,50,60,70,79,88,97,106,115,123,130,138,
+145,152,159,164,170,175,180,184,188,191,194,197,199,201,202,203,203,203,203,202,
+201,200,197,195,192,189,185,181,177,173,168,163,157,152,146,140,133,127,120,113,
+106,98,91,83,76,69,62,55,48,42,35,29,22,16,9,3,-1,-6,-11,-16,
+-20,-24,-27,-30,-33,-36,-38,-40,-41,-42,-42,-42,-41,-40,-39,-38,-36,-34,-31,-27,
+-24,-20,-15,-10,-5,0,4,9,15,21,28,34,41,48,54,60,67,74,80,86,
+93,99,104,110,115,120,124,129,133,136,140,143,145,147,149,150,151,152,152,151,
+151,150,149,147,146,144,142,140,137,134,131,128,125,122,119,117,114,112,109,107,
+105,104,102,101,100,100,100,100,101,102,103,105,107,110,113,116,120,124,128,133,
+138,143,148,153,158,163,169,174,179,184,189,193,197,200,203,206,208,210,212,213,
+213,213,212,211,209,206,203,199,194,189,182,176,168,160,151,142,132,122,112,101,
+90,79,67,55,43,31,18,5,-8,-21,-34,-47,-60,-73,-87,-100,-113,-126,-138,-150,
+-163,-175,-188,-200,-212,-224,-237,-249,-261,-273,-286,-298,-311,-324,-337,-350,-363,-378,-392,-407,
+-423,-439,-455,-473,-490,-508,-527,-546,-566,-586,-607,-629,-650,-673,-697,-720,-745,-769,-793,-819,
+-844,-870,-896,-922,-948,-975,-1002,-1028,-1055,-1081,-1108,-1135,-1161,-1187,-1214,-1240,-1265,-1291,-1316,-1342,
+-1367,-1391,-1415,-1440,-1464,-1487,-1511,-1534,-1557,-1580,-1602,-1624,-1647,-1669,-1691,-1713,-1735,-1757,-1779,-1801,
+-1823,-1845,-1866,-1888,-1910,-1932,-1955,-1977,-1999,-2021,-2043,-2066,-2088,-2110,-2132,-2155,-2177,-2199,-2221,-2242,
+-2264,-2286,-2308,-2330,-2352,-2374,-2396,-2417,-2439,-2460,-2482,-2503,-2524,-2545,-2566,-2587,-2608,-2629,-2649,-2670,
+-2691,-2712,-2733,-2753,-2774,-2795,-2816,-2837,-2858,-2880,-2902,-2924,-2945,-2967,-2989,-3011,-3034,-3057,-3079,-3102,
+-3125,-3149,-3172,-3196,-3219,-3243,-3267,-3290,-3315,-3339,-3363,-3387,-3410,-3434,-3457,-3481,-3503,-3526,-3548,-3570,
+-3591,-3613,-3633,-3653,-3673,-3693,-3711,-3730,-3747,-3765,-3781,-3797,-3813,-3828,-3843,-3857,-3871,-3884,-3897,-3909,
+-3921,-3932,-3943,-3954,-3964,-3974,-3983,-3993,-4002,-4012,-4021,-4030,-4038,-4046,-4055,-4063,-4072,-4080,-4089,-4097,
+-4106,-4115,-4124,-4133,-4141,-4150,-4160,-4170,-4179,-4189,-4199,-4210,-4220,-4231,-4242,-4253,-4263,-4274,-4286,-4297,
+-4309,-4320,-4332,-4343,-4354,-4365,-4376,-4387,-4397,-4408,-4418,-4428,-4438,-4448,-4458,-4467,-4476,-4485,-4493,-4502,
+-4509,-4517,-4524,-4530,-4537,-4543,-4548,-4553,-4557,-4561,-4564,-4567,-4569,-4571,-4573,-4574,-4575,-4575,-4575,-4575,
+-4573,-4572,-4570,-4567,-4564,-4560,-4555,-4551,-4547,-4542,-4537,-4532,-4527,-4521,-4516,-4510,-4504,-4499,-4494,-4488,
+-4483,-4477,-4473,-4468,-4465,-4462,-4459,-4458,-4458,-4457,-4455,-4455,-4457,-4460,-4463,-4466,-4469,-4473,-4477,-4480,
+-4480,-4478,-4477,-4475,-4473,-4473,-4480,-4492,-4505,-4514,-4518,-4522,-4531,-4544,-4556,-4566,-4572,-4579,-4589,-4600,
+-4612,-4623,-4634,-4646,-4657,-4668,-4678,-4689,-4699,-4709,-4718,-4728,-4737,-4745,-4753,-4760,-4768,-4775,-4781,-4787,
+-4792,-4796,-4801,-4805,-4808,-4811,-4813,-4815,-4817,-4818,-4819,-4820,-4820,-4820,-4820,-4820,-4819,-4818,-4817,-4816,
+-4815,-4814,-4813,-4812,-4811,-4810,-4809,-4808,-4808,-4807,-4807,-4807,-4807,-4808,-4809,-4810,-4811,-4812,-4814,-4816,
+-4819,-4822,-4824,-4827,-4831,-4835,-4839,-4843,-4847,-4851,-4856,-4861,-4866,-4871,-4875,-4881,-4886,-4891,-4896,-4901,
+-4906,-4911,-4916,-4921,-4926,-4930,-4935,-4939,-4943,-4947,-4951,-4954,-4958,-4961,-4964,-4966,-4969,-4971,-4973,-4975,
+-4977,-4978,-4980,-4981,-4982,-4983,-4983,-4984,-4984,-4984,-4985,-4985,-4985,-4985,-4984,-4984,-4984,-4984,-4983,-4983,
+-4983,-4982,-4982,-4981,-4981,-4980,-4980,-4979,-4979,-4978,-4978,-4977,-4976,-4976,-4975,-4974,-4974,-4973,-4972,-4971,
+-4970,-4969,-4967,-4966,-4965,-4963,-4962,-4960,-4958,-4956,-4954,-4951,-4949,-4946,-4944,-4941,-4938,-4935,-4932,-4929,
+-4925,-4921,-4918,-4914,-4911,-4907,-4902,-4898,-4894,-4890,-4886,-4881,-4877,-4872,-4868,-4864,-4860,-4855,-4851,-4847,
+-4843,-4839,-4835,-4830,-4826,-4822,-4819,-4815,-4811,-4807,-4803,-4799,-4796,-4792,-4789,-4785,-4782,-4778,-4774,-4771,
+-4768,-4764,-4761,-4758,-4754,-4751,-4747,-4744,-4740,-4736,-4733,-4729,-4725,-4721,-4717,-4713,-4709,-4704,-4700,-4695,
+-4690,-4685,-4680,-4675,-4669,-4663,-4657,-4651,-4644,-4638,-4630,-4623,-4615,-4607,-4599,-4591,-4582,-4574,-4565,-4555,
+-4546,-4536,-4526,-4516,-4506,-4495,-4485,-4474,-4464,-4453,-4442,-4431,-4420,-4409,-4398,-4387,-4376,-4365,-4355,-4344,
+-4333,-4323,-4313,-4302,-4292,-4283,-4273,-4263,-4254,-4244,-4235,-4226,-4217,-4208,-4199,-4190,-4182,-4173,-4164,-4156,
+-4147,-4139,-4130,-4121,-4113,-4104,-4095,-4086,-4077,-4067,-4058,-4048,-4038,-4028,-4018,-4008,-3997,-3986,-3975,-3964,
+-3952,-3940,-3929,-3917,-3904,-3892,-3879,-3867,-3854,-3841,-3828,-3815,-3801,-3788,-3775,-3762,-3748,-3735,-3722,-3709,
+-3696,-3683,-3670,-3658,-3645,-3633,-3621,-3608,-3596,-3584,-3572,-3560,-3549,-3538,-3527,-3515,-3504,-3494,-3483,-3472,
+-3461,-3451,-3440,-3429,-3419,-3408,-3398,-3387,-3376,-3365,-3354,-3342,-3331,-3319,-3308,-3296,-3285,-3273,-3261,-3249,
+-3237,-3224,-3212,-3199,-3187,-3175,-3162,-3149,-3137,-3124,-3112,-3099,-3086,-3073,-3061,-3049,-3037,-3025,-3013,-3001,
+-2989,-2978,-2967,-2955,-2945,-2934,-2923,-2912,-2902,-2891,-2881,-2872,-2862,-2853,-2844,-2835,-2826,-2818,-2810,-2802,
+-2794,-2787,-2780,-2773,-2766,-2760,-2753,-2747,-2741,-2735,-2730,-2724,-2719,-2713,-2707,-2702,-2696,-2691,-2687,-2682,
+-2677,-2672,-2667,-2663,-2658,-2654,-2650,-2646,-2643,-2639,-2634,-2629,-2624,-2619,-2616,-2614,-2612,-2611,-2609,-2608,
+-2607,-2606,-2605,-2605,-2605,-2606,-2608,-2609,-2611,-2613,-2615,-2618,-2621,-2624,-2628,-2632,-2636,-2641,-2646,-2651,
+-2657,-2663,-2669,-2675,-2681,-2688,-2694,-2701,-2707,-2713,-2719,-2725,-2731,-2737,-2743,-2748,-2753,-2758,-2762,-2766,
+-2770,-2774,-2777,-2779,-2781,-2783,-2784,-2785,-2785,-2784,-2783,-2782,-2780,-2778,-2775,-2772,-2768,-2764,-2759,-2754,
+-2749,-2744,-2738,-2732,-2725,-2719,-2712,-2705,-2698,-2691,-2684,-2677,-2670,-2663,-2657,-2650,-2644,-2638,-2633,-2627,
+-2623,-2618,-2614,-2610,-2607,-2604,-2602,-2600,-2598,-2597,-2596,-2596,-2596,-2596,-2596,-2597,-2598,-2599,-2601,-2602,
+-2604,-2605,-2607,-2608,-2609,-2611,-2612,-2613,-2613,-2613,-2613,-2612,-2611,-2610,-2607,-2605,-2601,-2597,-2593,-2588,
+-2582,-2576,-2569,-2561,-2553,-2544,-2535,-2524,-2514,-2503,-2491,-2478,-2466,-2453,-2440,-2426,-2411,-2397,-2382,-2368,
+-2353,-2338,-2323,-2308,-2294,-2279,-2264,-2250,-2236,-2223,-2209,-2196,-2183,-2171,-2159,-2147,-2136,-2126,-2115,-2106,
+-2096,-2087,-2079,-2071,-2064,-2056,-2049,-2043,-2037,-2031,-2025,-2020,-2014,-2009,-2004,-1999,-1995,-1990,-1985,-1980,
+-1975,-1970,-1966,-1961,-1956,-1950,-1945,-1939,-1934,-1927,-1921,-1915,-1908,-1901,-1893,-1884,-1876,-1867,-1858,-1848,
+-1838,-1828,-1818,-1808,-1797,-1787,-1777,-1766,-1755,-1745,-1734,-1723,-1713,-1702,-1692,-1682,-1672,-1662,-1652,-1643,
+-1634,-1626,-1618,-1610,-1602,-1596,-1589,-1583,-1576,-1570,-1564,-1559,-1554,-1549,-1544,-1540,-1536,-1532,-1529,-1525,
+-1522,-1519,-1516,-1513,-1510,-1507,-1503,-1499,-1495,-1492,-1488,-1483,-1479,-1474,-1469,-1464,-1460,-1456,-1451,-1446,
+-1442,-1437,-1433,-1428,-1423,-1418,-1412,-1407,-1401,-1395,-1389,-1383,-1377,-1371,-1365,-1360,-1355,-1350,-1346,-1342,
+-1338,-1335,-1332,-1330,-1329,-1327,-1326,-1325,-1325,-1325,-1325,-1326,-1327,-1328,-1329,-1331,-1333,-1336,-1339,-1342,
+-1345,-1348,-1352,-1355,-1359,-1363,-1367,-1370,-1374,-1377,-1380,-1383,-1386,-1387,-1389,-1390,-1390,-1390,-1390,-1388,
+-1386,-1383,-1379,-1374,-1369,-1364,-1358,-1351,-1343,-1334,-1324,-1313,-1302,-1290,-1278,-1266,-1252,-1239,-1224,-1209,
+-1194,-1179,-1163,-1148,-1133,-1118,-1102,-1086,-1070,-1205,-1193,-1180,-1167,-1155,-1144,-1133,-1122,-1112,-1101,-1090,
+-1080,-1070,-1060,-1051,-1042,-1033,-1025,-1017,-1010,-1004,-997,-991,-985,-979,-974,-968,-963,-958,-953,-949,
+-945,-941,-936,-932,-927,-922,-918,-913,-908,-903,-898,-892,-886,-880,-874,-867,-859,-852,-843,-834,
+-825,-816,-807,-797,-787,-776,-764,-752,-739,-726,-713,-699,-685,-671,-656,-641,-626,-611,-596,-580,
+-564,-548,-531,-515,-498,-481,-464,-447,-430,-413,-396,-379,-362,-345,-328,-312,-295,-279,-262,-246,
+-230,-214,-199,-183,-168,-153,-138,-124,-110,-95,-81,-68,-55,-42,-30,-18,-7,3,14,24,
+34,43,52,61,68,76,82,89,95,100,104,108,112,115,117,119,120,120,121,121,
+119,118,116,113,110,106,102,98,94,88,82,76,69,62,55,47,40,32,25,17,
+8,0,-9,-18,-27,-35,-43,-52,-60,-68,-76,-83,-90,-98,-105,-112,-118,-124,-130,-136,
+-141,-145,-149,-153,-157,-160,-162,-164,-165,-166,-166,-166,-166,-165,-164,-162,-160,-157,-154,-151,
+-147,-143,-138,-133,-128,-123,-117,-111,-105,-99,-93,-87,-80,-74,-67,-61,-54,-47,-40,-34,
+-28,-22,-16,-10,-5,0,4,8,12,15,18,21,23,25,27,28,29,30,30,30,
+29,29,28,27,25,24,22,20,18,15,13,10,8,6,4,1,0,-2,-3,-5,
+-6,-7,-7,-8,-8,-7,-6,-5,-3,-1,0,3,6,10,14,18,22,27,32,38,
+43,49,55,61,67,73,79,84,90,96,101,106,110,115,119,122,125,128,130,131,
+132,133,132,131,129,127,124,120,115,110,104,97,89,81,72,63,53,42,31,20,
+8,-2,-15,-28,-41,-54,-68,-82,-96,-110,-123,-137,-151,-165,-179,-193,-207,-221,-235,-248,
+-261,-274,-287,-300,-313,-326,-338,-351,-364,-376,-389,-402,-415,-427,-440,-453,-466,-480,-493,-507,
+-522,-537,-552,-567,-583,-599,-616,-634,-651,-670,-688,-708,-727,-748,-768,-790,-812,-834,-857,-879,
+-903,-927,-951,-976,-1001,-1026,-1051,-1077,-1103,-1129,-1155,-1181,-1207,-1233,-1259,-1285,-1311,-1337,-1363,-1388,
+-1414,-1439,-1464,-1489,-1514,-1538,-1562,-1586,-1610,-1634,-1657,-1680,-1703,-1725,-1748,-1770,-1791,-1813,-1834,-1856,
+-1877,-1898,-1919,-1940,-1960,-1981,-2001,-2021,-2042,-2062,-2082,-2102,-2122,-2142,-2161,-2181,-2201,-2220,-2240,-2259,
+-2278,-2298,-2317,-2337,-2356,-2376,-2395,-2415,-2434,-2454,-2473,-2493,-2513,-2532,-2552,-2572,-2592,-2612,-2632,-2652,
+-2673,-2693,-2714,-2735,-2756,-2777,-2798,-2820,-2841,-2863,-2885,-2907,-2930,-2953,-2976,-2999,-3022,-3045,-3069,-3093,
+-3116,-3140,-3164,-3188,-3212,-3236,-3260,-3284,-3308,-3332,-3355,-3379,-3402,-3425,-3447,-3470,-3492,-3513,-3535,-3556,
+-3577,-3597,-3616,-3635,-3654,-3672,-3689,-3706,-3722,-3738,-3753,-3768,-3782,-3795,-3808,-3821,-3833,-3844,-3855,-3865,
+-3876,-3885,-3894,-3903,-3911,-3919,-3927,-3935,-3942,-3950,-3957,-3964,-3970,-3977,-3983,-3989,-3996,-4003,-4009,-4015,
+-4021,-4028,-4035,-4042,-4048,-4055,-4062,-4070,-4078,-4087,-4095,-4103,-4111,-4121,-4130,-4139,-4148,-4157,-4167,-4178,
+-4188,-4198,-4209,-4219,-4229,-4238,-4248,-4258,-4268,-4277,-4287,-4296,-4305,-4314,-4323,-4331,-4340,-4347,-4355,-4362,
+-4369,-4375,-4381,-4387,-4392,-4398,-4403,-4407,-4411,-4414,-4417,-4420,-4422,-4423,-4424,-4425,-4425,-4424,-4423,-4422,
+-4421,-4419,-4417,-4415,-4412,-4408,-4405,-4400,-4396,-4393,-4388,-4384,-4379,-4374,-4369,-4365,-4361,-4357,-4353,-4349,
+-4345,-4341,-4338,-4335,-4333,-4332,-4331,-4331,-4331,-4332,-4332,-4332,-4333,-4336,-4340,-4345,-4348,-4352,-4354,-4358,
+-4362,-4367,-4375,-4384,-4393,-4398,-4402,-4407,-4415,-4426,-4435,-4441,-4446,-4451,-4460,-4472,-4488,-4504,-4520,-4532,
+-4541,-4548,-4556,-4566,-4579,-4591,-4603,-4614,-4625,-4636,-4646,-4656,-4666,-4675,-4684,-4693,-4700,-4708,-4715,-4722,
+-4728,-4733,-4739,-4744,-4748,-4751,-4755,-4758,-4761,-4763,-4764,-4766,-4767,-4768,-4768,-4768,-4768,-4768,-4768,-4768,
+-4767,-4766,-4766,-4766,-4765,-4764,-4763,-4763,-4763,-4763,-4763,-4763,-4763,-4763,-4764,-4765,-4766,-4767,-4769,-4771,
+-4773,-4775,-4778,-4780,-4783,-4786,-4790,-4793,-4797,-4801,-4805,-4809,-4813,-4817,-4822,-4826,-4831,-4836,-4840,-4844,
+-4849,-4853,-4858,-4862,-4866,-4870,-4874,-4878,-4882,-4885,-4888,-4892,-4895,-4898,-4900,-4903,-4905,-4907,-4909,-4911,
+-4912,-4914,-4915,-4916,-4917,-4918,-4919,-4920,-4920,-4921,-4921,-4922,-4922,-4922,-4922,-4922,-4922,-4923,-4923,-4923,
+-4923,-4923,-4923,-4923,-4923,-4924,-4924,-4924,-4924,-4925,-4925,-4925,-4925,-4926,-4926,-4927,-4927,-4927,-4927,-4928,
+-4928,-4928,-4928,-4928,-4928,-4927,-4927,-4926,-4926,-4925,-4924,-4923,-4922,-4921,-4920,-4918,-4916,-4914,-4913,-4910,
+-4908,-4905,-4903,-4900,-4897,-4894,-4891,-4887,-4884,-4880,-4876,-4873,-4869,-4865,-4861,-4857,-4852,-4848,-4844,-4840,
+-4836,-4832,-4827,-4823,-4819,-4815,-4811,-4806,-4802,-4798,-4794,-4790,-4786,-4782,-4778,-4775,-4771,-4767,-4763,-4759,
+-4755,-4752,-4748,-4744,-4740,-4737,-4733,-4729,-4725,-4721,-4717,-4713,-4708,-4704,-4699,-4695,-4690,-4685,-4680,-4675,
+-4670,-4664,-4658,-4652,-4646,-4640,-4633,-4627,-4620,-4612,-4605,-4597,-4589,-4581,-4572,-4564,-4555,-4546,-4537,-4527,
+-4518,-4508,-4498,-4488,-4478,-4468,-4458,-4447,-4437,-4426,-4416,-4405,-4395,-4384,-4374,-4364,-4353,-4343,-4333,-4324,
+-4314,-4304,-4294,-4285,-4276,-4267,-4258,-4249,-4240,-4232,-4223,-4215,-4207,-4199,-4191,-4183,-4175,-4167,-4160,-4152,
+-4144,-4136,-4129,-4121,-4113,-4105,-4097,-4089,-4081,-4072,-4063,-4054,-4045,-4036,-4027,-4017,-4007,-3997,-3987,-3976,
+-3965,-3954,-3943,-3931,-3919,-3907,-3895,-3883,-3870,-3857,-3845,-3832,-3818,-3805,-3792,-3779,-3766,-3753,-3739,-3726,
+-3712,-3699,-3686,-3673,-3660,-3647,-3634,-3621,-3608,-3595,-3582,-3569,-3557,-3544,-3531,-3519,-3507,-3495,-3483,-3471,
+-3459,-3447,-3436,-3424,-3412,-3400,-3389,-3377,-3365,-3353,-3341,-3329,-3317,-3305,-3293,-3281,-3269,-3257,-3244,-3232,
+-3220,-3208,-3196,-3184,-3171,-3159,-3147,-3135,-3123,-3111,-3099,-3087,-3076,-3064,-3053,-3042,-3031,-3020,-3010,-2999,
+-2989,-2979,-2969,-2959,-2950,-2941,-2932,-2922,-2913,-2905,-2897,-2889,-2881,-2874,-2867,-2860,-2853,-2847,-2841,-2835,
+-2829,-2824,-2818,-2813,-2809,-2804,-2799,-2794,-2790,-2786,-2781,-2777,-2773,-2769,-2765,-2762,-2758,-2753,-2749,-2745,
+-2741,-2736,-2732,-2729,-2725,-2721,-2717,-2714,-2711,-2707,-2703,-2697,-2691,-2686,-2683,-2680,-2677,-2673,-2670,-2667,
+-2665,-2663,-2661,-2659,-2658,-2658,-2657,-2657,-2657,-2657,-2658,-2659,-2660,-2662,-2664,-2666,-2669,-2672,-2675,-2678,
+-2682,-2686,-2691,-2695,-2700,-2705,-2710,-2716,-2721,-2727,-2732,-2737,-2742,-2747,-2752,-2757,-2762,-2766,-2770,-2774,
+-2778,-2781,-2784,-2787,-2789,-2791,-2793,-2794,-2795,-2795,-2795,-2794,-2793,-2792,-2790,-2787,-2785,-2781,-2778,-2774,
+-2770,-2766,-2761,-2756,-2750,-2745,-2739,-2733,-2727,-2721,-2715,-2708,-2702,-2696,-2690,-2684,-2678,-2673,-2668,-2663,
+-2658,-2653,-2649,-2646,-2642,-2639,-2635,-2633,-2630,-2629,-2627,-2626,-2624,-2623,-2622,-2622,-2621,-2621,-2621,-2621,
+-2621,-2620,-2620,-2620,-2619,-2619,-2618,-2617,-2615,-2613,-2611,-2609,-2606,-2602,-2598,-2594,-2589,-2583,-2577,-2570,
+-2563,-2555,-2547,-2538,-2528,-2518,-2507,-2496,-2484,-2472,-2460,-2447,-2433,-2420,-2406,-2391,-2377,-2362,-2347,-2332,
+-2318,-2303,-2288,-2273,-2258,-2244,-2230,-2216,-2202,-2188,-2175,-2163,-2151,-2139,-2128,-2117,-2107,-2098,-2089,-2079,
+-2070,-2062,-2055,-2048,-2041,-2035,-2029,-2024,-2019,-2015,-2010,-2005,-2001,-1997,-1993,-1990,-1986,-1983,-1980,-1976,
+-1972,-1968,-1965,-1962,-1958,-1954,-1949,-1945,-1940,-1935,-1929,-1923,-1917,-1910,-1902,-1894,-1885,-1876,-1867,-1858,
+-1848,-1837,-1826,-1815,-1803,-1792,-1780,-1767,-1755,-1742,-1730,-1717,-1705,-1692,-1680,-1667,-1655,-1643,-1630,-1619,
+-1607,-1596,-1584,-1574,-1563,-1553,-1544,-1535,-1526,-1518,-1510,-1502,-1495,-1488,-1481,-1475,-1469,-1463,-1458,-1453,
+-1449,-1444,-1440,-1436,-1432,-1428,-1424,-1420,-1416,-1412,-1408,-1404,-1400,-1395,-1391,-1386,-1382,-1379,-1375,-1371,
+-1367,-1364,-1361,-1359,-1356,-1353,-1351,-1347,-1344,-1340,-1337,-1333,-1329,-1326,-1322,-1318,-1315,-1312,-1309,-1307,
+-1305,-1303,-1301,-1300,-1299,-1299,-1299,-1300,-1301,-1303,-1305,-1307,-1309,-1312,-1315,-1318,-1322,-1325,-1329,-1333,
+-1338,-1342,-1347,-1352,-1356,-1361,-1366,-1372,-1377,-1381,-1386,-1391,-1395,-1399,-1404,-1407,-1410,-1413,-1415,-1417,
+-1418,-1418,-1418,-1417,-1416,-1414,-1411,-1408,-1404,-1400,-1395,-1390,-1384,-1377,-1369,-1361,-1353,-1344,-1334,-1324,
+-1313,-1302,-1290,-1278,-1267,-1255,-1243,-1230,-1218,-1205,-1310,-1300,-1291,-1281,-1272,-1263,-1254,-1244,-1235,-1226,
+-1217,-1207,-1198,-1190,-1181,-1173,-1165,-1157,-1149,-1142,-1135,-1128,-1122,-1115,-1109,-1103,-1097,-1091,-1085,-1080,
+-1075,-1070,-1065,-1059,-1054,-1049,-1043,-1039,-1034,-1030,-1025,-1020,-1015,-1010,-1004,-998,-992,-985,-979,-972,
+-965,-957,-950,-942,-935,-926,-917,-907,-898,-888,-877,-866,-854,-842,-830,-818,-805,-792,-779,-765,
+-750,-735,-720,-706,-690,-675,-659,-643,-627,-610,-593,-575,-558,-541,-523,-505,-487,-469,-451,-434,
+-415,-398,-380,-363,-346,-328,-311,-294,-278,-261,-244,-227,-211,-196,-180,-165,-151,-137,-123,-109,
+-96,-83,-71,-60,-50,-39,-30,-20,-12,-4,2,8,14,19,23,27,30,33,34,35,
+34,34,33,31,28,25,22,18,14,9,3,-3,-10,-18,-25,-32,-40,-49,-58,-67,
+-77,-86,-95,-105,-114,-124,-134,-144,-153,-163,-172,-181,-189,-197,-205,-213,-221,-229,-235,-242,
+-248,-253,-259,-264,-268,-272,-275,-277,-279,-281,-282,-283,-283,-283,-282,-281,-279,-277,-274,-271,
+-268,-264,-260,-255,-251,-246,-241,-235,-229,-223,-217,-211,-205,-199,-192,-186,-179,-173,-166,-160,
+-154,-148,-143,-137,-132,-127,-122,-117,-114,-110,-107,-104,-101,-99,-97,-95,-93,-92,-91,-91,
+-91,-92,-92,-93,-94,-95,-95,-96,-98,-99,-101,-102,-104,-105,-107,-108,-109,-110,-111,-111,
+-112,-112,-111,-111,-110,-109,-107,-105,-103,-100,-97,-93,-90,-86,-82,-77,-72,-67,-61,-56,
+-50,-44,-38,-32,-25,-19,-13,-7,-2,3,8,13,18,22,26,29,32,35,37,38,
+39,39,39,37,35,33,30,26,21,15,8,1,-5,-14,-22,-32,-42,-53,-65,-76,
+-89,-101,-114,-128,-142,-156,-170,-185,-199,-214,-228,-244,-259,-274,-289,-304,-319,-333,-348,-362,
+-376,-391,-405,-419,-433,-446,-460,-473,-486,-500,-512,-524,-537,-550,-562,-575,-588,-601,-613,-627,
+-640,-653,-667,-682,-696,-710,-725,-740,-756,-772,-789,-805,-822,-840,-858,-877,-896,-916,-936,-956,
+-977,-998,-1020,-1042,-1064,-1087,-1111,-1134,-1158,-1182,-1206,-1231,-1256,-1281,-1306,-1331,-1356,-1381,-1406,-1431,
+-1456,-1481,-1506,-1531,-1555,-1579,-1604,-1627,-1651,-1675,-1698,-1721,-1744,-1766,-1788,-1810,-1832,-1853,-1875,-1895,
+-1916,-1937,-1957,-1977,-1997,-2016,-2035,-2054,-2074,-2092,-2111,-2130,-2148,-2166,-2184,-2203,-2221,-2239,-2256,-2274,
+-2291,-2309,-2327,-2345,-2362,-2380,-2397,-2415,-2433,-2450,-2469,-2487,-2505,-2524,-2542,-2561,-2580,-2599,-2619,-2639,
+-2659,-2678,-2698,-2719,-2740,-2761,-2782,-2804,-2826,-2848,-2870,-2892,-2915,-2938,-2961,-2985,-3008,-3032,-3056,-3080,
+-3104,-3128,-3152,-3176,-3200,-3223,-3247,-3271,-3295,-3318,-3341,-3365,-3387,-3410,-3432,-3454,-3475,-3496,-3516,-3536,
+-3555,-3574,-3592,-3610,-3627,-3644,-3660,-3675,-3690,-3704,-3717,-3730,-3742,-3754,-3765,-3775,-3785,-3794,-3803,-3811,
+-3819,-3827,-3834,-3840,-3846,-3852,-3858,-3864,-3869,-3875,-3880,-3884,-3889,-3893,-3898,-3902,-3907,-3911,-3916,-3921,
+-3926,-3931,-3935,-3939,-3944,-3949,-3954,-3959,-3965,-3971,-3978,-3985,-3992,-3999,-4007,-4015,-4024,-4033,-4041,-4050,
+-4058,-4068,-4077,-4086,-4095,-4104,-4114,-4123,-4133,-4142,-4150,-4159,-4168,-4177,-4185,-4193,-4201,-4209,-4217,-4223,
+-4230,-4236,-4243,-4249,-4254,-4259,-4264,-4268,-4272,-4275,-4277,-4279,-4282,-4284,-4286,-4286,-4287,-4287,-4287,-4286,
+-4285,-4283,-4281,-4279,-4277,-4274,-4272,-4269,-4266,-4262,-4258,-4255,-4251,-4247,-4243,-4240,-4237,-4234,-4231,-4228,
+-4226,-4224,-4223,-4221,-4220,-4219,-4219,-4219,-4219,-4218,-4217,-4217,-4218,-4220,-4222,-4224,-4227,-4232,-4237,-4243,
+-4249,-4256,-4265,-4275,-4282,-4286,-4289,-4294,-4304,-4317,-4330,-4341,-4348,-4355,-4364,-4375,-4387,-4399,-4411,-4423,
+-4435,-4448,-4461,-4474,-4486,-4498,-4510,-4521,-4532,-4543,-4554,-4565,-4575,-4585,-4594,-4603,-4612,-4621,-4628,-4636,
+-4643,-4649,-4656,-4661,-4667,-4671,-4676,-4680,-4684,-4688,-4690,-4693,-4696,-4698,-4700,-4702,-4703,-4705,-4706,-4707,
+-4708,-4708,-4709,-4710,-4711,-4711,-4712,-4712,-4713,-4714,-4715,-4716,-4717,-4718,-4719,-4721,-4722,-4724,-4726,-4728,
+-4730,-4733,-4735,-4738,-4741,-4744,-4747,-4750,-4753,-4757,-4760,-4764,-4767,-4771,-4775,-4778,-4782,-4786,-4789,-4793,
+-4797,-4800,-4804,-4807,-4810,-4814,-4817,-4820,-4822,-4825,-4827,-4830,-4832,-4834,-4836,-4838,-4840,-4841,-4842,-4844,
+-4845,-4846,-4847,-4847,-4848,-4848,-4849,-4849,-4850,-4850,-4850,-4850,-4851,-4851,-4851,-4851,-4851,-4852,-4852,-4852,
+-4853,-4853,-4854,-4855,-4855,-4856,-4857,-4858,-4859,-4860,-4861,-4862,-4863,-4864,-4866,-4867,-4868,-4870,-4871,-4872,
+-4874,-4875,-4876,-4877,-4879,-4880,-4881,-4882,-4883,-4883,-4884,-4884,-4885,-4885,-4885,-4885,-4884,-4884,-4883,-4882,
+-4881,-4880,-4879,-4877,-4875,-4873,-4871,-4869,-4867,-4864,-4861,-4858,-4855,-4852,-4849,-4845,-4842,-4838,-4835,-4831,
+-4827,-4823,-4819,-4815,-4811,-4806,-4802,-4798,-4793,-4789,-4785,-4780,-4776,-4772,-4767,-4763,-4758,-4754,-4749,-4745,
+-4740,-4736,-4731,-4727,-4722,-4718,-4713,-4708,-4703,-4699,-4694,-4689,-4684,-4678,-4673,-4667,-4662,-4656,-4650,-4644,
+-4638,-4631,-4625,-4618,-4611,-4604,-4597,-4589,-4581,-4573,-4565,-4557,-4549,-4540,-4531,-4522,-4513,-4504,-4495,-4485,
+-4475,-4466,-4456,-4446,-4436,-4426,-4416,-4406,-4396,-4386,-4376,-4367,-4357,-4347,-4338,-4328,-4319,-4309,-4300,-4291,
+-4282,-4273,-4265,-4256,-4248,-4240,-4232,-4225,-4217,-4210,-4202,-4195,-4188,-4181,-4174,-4168,-4161,-4154,-4147,-4141,
+-4134,-4128,-4121,-4114,-4107,-4101,-4094,-4087,-4080,-4072,-4065,-4057,-4049,-4040,-4032,-4023,-4014,-4005,-3996,-3986,
+-3976,-3966,-3956,-3945,-3934,-3923,-3911,-3900,-3888,-3876,-3863,-3851,-3838,-3826,-3813,-3800,-3787,-3774,-3761,-3748,
+-3734,-3721,-3707,-3693,-3680,-3666,-3653,-3639,-3626,-3613,-3599,-3585,-3572,-3558,-3545,-3532,-3519,-3505,-3492,-3479,
+-3466,-3454,-3440,-3427,-3414,-3401,-3388,-3375,-3363,-3350,-3337,-3325,-3312,-3299,-3286,-3273,-3260,-3248,-3236,-3223,
+-3211,-3198,-3186,-3174,-3161,-3149,-3137,-3126,-3114,-3102,-3091,-3080,-3069,-3058,-3048,-3037,-3028,-3018,-3008,-2998,
+-2989,-2980,-2970,-2961,-2952,-2943,-2935,-2927,-2919,-2911,-2904,-2897,-2891,-2886,-2880,-2875,-2870,-2865,-2861,-2857,
+-2853,-2849,-2846,-2842,-2839,-2835,-2832,-2829,-2826,-2823,-2820,-2817,-2815,-2812,-2809,-2807,-2804,-2801,-2798,-2795,
+-2792,-2789,-2786,-2782,-2779,-2775,-2772,-2769,-2766,-2762,-2758,-2754,-2750,-2747,-2743,-2740,-2736,-2732,-2729,-2726,
+-2722,-2719,-2716,-2713,-2711,-2709,-2707,-2705,-2703,-2702,-2701,-2700,-2700,-2700,-2700,-2701,-2701,-2702,-2703,-2704,
+-2706,-2708,-2710,-2713,-2716,-2719,-2722,-2725,-2729,-2733,-2737,-2740,-2744,-2748,-2752,-2755,-2759,-2762,-2766,-2769,
+-2772,-2774,-2777,-2779,-2781,-2783,-2784,-2785,-2786,-2786,-2786,-2786,-2785,-2785,-2783,-2782,-2780,-2778,-2775,-2772,
+-2769,-2765,-2761,-2757,-2753,-2748,-2744,-2739,-2734,-2729,-2724,-2719,-2713,-2708,-2703,-2698,-2693,-2688,-2684,-2680,
+-2675,-2671,-2666,-2663,-2660,-2656,-2653,-2649,-2647,-2644,-2642,-2640,-2637,-2635,-2633,-2632,-2630,-2628,-2627,-2625,
+-2623,-2621,-2619,-2617,-2615,-2613,-2610,-2607,-2604,-2600,-2597,-2592,-2587,-2582,-2576,-2570,-2564,-2556,-2548,-2540,
+-2532,-2523,-2513,-2503,-2492,-2481,-2469,-2457,-2444,-2432,-2418,-2405,-2390,-2376,-2362,-2347,-2332,-2317,-2303,-2288,
+-2273,-2259,-2244,-2230,-2215,-2202,-2188,-2175,-2162,-2150,-2138,-2126,-2115,-2104,-2093,-2083,-2073,-2064,-2055,-2046,
+-2039,-2031,-2025,-2018,-2013,-2008,-2003,-1999,-1995,-1991,-1988,-1985,-1983,-1980,-1978,-1976,-1973,-1972,-1970,-1967,
+-1965,-1963,-1962,-1961,-1959,-1957,-1955,-1951,-1948,-1943,-1939,-1934,-1928,-1922,-1915,-1908,-1900,-1892,-1884,-1875,
+-1865,-1855,-1844,-1833,-1822,-1809,-1797,-1784,-1771,-1758,-1744,-1730,-1716,-1702,-1688,-1674,-1660,-1646,-1632,-1618,
+-1604,-1591,-1577,-1564,-1551,-1539,-1527,-1515,-1503,-1492,-1482,-1471,-1461,-1451,-1442,-1433,-1425,-1417,-1409,-1401,
+-1394,-1387,-1381,-1375,-1370,-1364,-1359,-1354,-1350,-1345,-1341,-1337,-1333,-1329,-1325,-1321,-1316,-1311,-1307,-1303,
+-1300,-1297,-1294,-1291,-1288,-1286,-1283,-1281,-1279,-1277,-1275,-1273,-1271,-1269,-1267,-1266,-1264,-1263,-1261,-1260,
+-1259,-1258,-1258,-1258,-1258,-1258,-1258,-1259,-1260,-1262,-1264,-1266,-1269,-1272,-1275,-1279,-1283,-1287,-1292,-1297,
+-1302,-1307,-1312,-1318,-1324,-1330,-1335,-1341,-1347,-1354,-1360,-1366,-1371,-1377,-1383,-1388,-1393,-1398,-1403,-1407,
+-1411,-1414,-1418,-1421,-1423,-1425,-1426,-1427,-1428,-1427,-1427,-1426,-1424,-1422,-1419,-1416,-1412,-1407,-1402,-1397,
+-1391,-1384,-1377,-1370,-1362,-1354,-1346,-1337,-1329,-1320,-1310,-1378,-1372,-1365,-1358,-1351,-1344,-1336,-1329,-1321,
+-1313,-1306,-1298,-1290,-1282,-1274,-1267,-1259,-1252,-1244,-1237,-1229,-1223,-1216,-1210,-1203,-1197,-1191,-1184,-1179,
+-1173,-1167,-1161,-1155,-1149,-1144,-1139,-1135,-1131,-1126,-1121,-1116,-1111,-1107,-1103,-1098,-1093,-1089,-1084,-1079,
+-1074,-1068,-1062,-1056,-1050,-1045,-1039,-1032,-1025,-1018,-1010,-1002,-993,-985,-975,-966,-956,-945,-935,-924,
+-912,-900,-887,-874,-861,-847,-833,-818,-804,-789,-774,-758,-742,-725,-708,-691,-673,-655,-637,-619,
+-600,-582,-563,-544,-525,-506,-487,-468,-450,-431,-413,-395,-376,-358,-340,-323,-305,-288,-271,-255,
+-239,-224,-209,-195,-182,-168,-156,-144,-133,-122,-112,-102,-94,-86,-79,-73,-67,-62,-59,-56,
+-55,-53,-53,-53,-54,-55,-57,-60,-64,-68,-73,-79,-85,-92,-98,-105,-113,-121,-130,-140,
+-150,-159,-169,-179,-189,-199,-209,-219,-229,-240,-250,-260,-269,-279,-289,-298,-307,-315,-323,-331,
+-338,-344,-351,-357,-363,-368,-372,-376,-379,-382,-384,-386,-388,-389,-389,-389,-388,-386,-384,-382,
+-380,-376,-373,-369,-364,-360,-355,-350,-345,-340,-335,-329,-323,-317,-311,-305,-299,-293,-287,-281,
+-275,-269,-263,-258,-252,-247,-242,-237,-232,-228,-224,-221,-218,-215,-212,-210,-208,-206,-204,-202,
+-201,-200,-200,-200,-199,-199,-199,-199,-199,-199,-199,-200,-200,-201,-201,-202,-202,-202,-202,-201,
+-201,-200,-199,-198,-196,-194,-192,-190,-187,-184,-181,-177,-174,-170,-165,-161,-156,-151,-146,-141,
+-136,-130,-125,-119,-114,-109,-103,-98,-93,-88,-84,-79,-75,-72,-69,-66,-64,-62,-61,-60,
+-61,-61,-63,-65,-67,-71,-75,-79,-85,-91,-98,-105,-113,-121,-131,-141,-152,-163,-176,-188,
+-201,-214,-228,-242,-256,-271,-286,-301,-316,-332,-347,-362,-378,-394,-410,-426,-442,-458,-473,-489,
+-505,-520,-535,-549,-564,-578,-591,-605,-618,-631,-645,-658,-671,-683,-695,-708,-720,-733,-745,-757,
+-769,-781,-794,-807,-819,-832,-846,-859,-873,-887,-901,-915,-930,-945,-960,-976,-992,-1008,-1025,-1043,
+-1061,-1079,-1098,-1118,-1137,-1157,-1177,-1198,-1219,-1241,-1263,-1285,-1307,-1330,-1353,-1376,-1399,-1422,-1446,-1469,
+-1492,-1516,-1539,-1562,-1586,-1609,-1633,-1656,-1679,-1702,-1725,-1747,-1769,-1791,-1812,-1834,-1855,-1875,-1896,-1916,
+-1936,-1956,-1976,-1995,-2014,-2033,-2052,-2070,-2089,-2107,-2125,-2142,-2160,-2177,-2194,-2211,-2228,-2245,-2262,-2278,
+-2295,-2311,-2328,-2344,-2361,-2378,-2394,-2411,-2428,-2444,-2461,-2478,-2495,-2513,-2531,-2550,-2568,-2587,-2606,-2625,
+-2644,-2664,-2683,-2703,-2724,-2745,-2766,-2787,-2809,-2830,-2852,-2875,-2897,-2920,-2943,-2966,-2989,-3013,-3036,-3060,
+-3084,-3107,-3131,-3154,-3177,-3201,-3224,-3247,-3271,-3294,-3317,-3339,-3361,-3383,-3404,-3425,-3445,-3465,-3484,-3503,
+-3521,-3538,-3555,-3572,-3588,-3603,-3617,-3631,-3644,-3656,-3668,-3679,-3690,-3700,-3709,-3717,-3725,-3733,-3740,-3746,
+-3752,-3757,-3763,-3768,-3772,-3776,-3780,-3784,-3788,-3791,-3794,-3797,-3800,-3802,-3805,-3808,-3811,-3813,-3816,-3819,
+-3822,-3825,-3828,-3831,-3834,-3838,-3841,-3845,-3850,-3855,-3860,-3865,-3871,-3877,-3884,-3892,-3899,-3906,-3914,-3922,
+-3930,-3939,-3947,-3956,-3965,-3974,-3983,-3992,-4001,-4010,-4019,-4028,-4037,-4045,-4054,-4062,-4071,-4079,-4087,-4094,
+-4101,-4109,-4115,-4122,-4128,-4133,-4139,-4144,-4148,-4152,-4155,-4159,-4162,-4164,-4166,-4168,-4169,-4170,-4171,-4171,
+-4171,-4170,-4170,-4169,-4168,-4166,-4163,-4161,-4159,-4157,-4155,-4152,-4149,-4147,-4144,-4142,-4140,-4137,-4135,-4134,
+-4132,-4131,-4130,-4128,-4128,-4127,-4128,-4129,-4130,-4131,-4129,-4127,-4125,-4125,-4125,-4127,-4128,-4130,-4133,-4137,
+-4144,-4151,-4157,-4163,-4170,-4178,-4186,-4194,-4201,-4209,-4218,-4228,-4239,-4248,-4258,-4268,-4281,-4294,-4307,-4318,
+-4329,-4339,-4351,-4362,-4374,-4386,-4399,-4413,-4427,-4439,-4449,-4456,-4463,-4472,-4482,-4492,-4501,-4510,-4518,-4527,
+-4535,-4543,-4550,-4556,-4563,-4570,-4576,-4582,-4587,-4592,-4597,-4602,-4607,-4611,-4614,-4618,-4622,-4625,-4629,-4632,
+-4634,-4637,-4640,-4643,-4645,-4648,-4650,-4653,-4656,-4658,-4661,-4663,-4666,-4668,-4671,-4674,-4676,-4679,-4682,-4685,
+-4688,-4691,-4694,-4698,-4701,-4704,-4707,-4710,-4714,-4717,-4720,-4723,-4727,-4730,-4733,-4737,-4740,-4743,-4745,-4748,
+-4751,-4754,-4756,-4759,-4761,-4763,-4765,-4767,-4769,-4770,-4772,-4773,-4774,-4775,-4776,-4777,-4777,-4778,-4778,-4779,
+-4779,-4779,-4779,-4779,-4779,-4779,-4778,-4778,-4778,-4778,-4777,-4777,-4777,-4777,-4777,-4777,-4777,-4777,-4777,-4778,
+-4778,-4778,-4779,-4780,-4781,-4781,-4782,-4784,-4785,-4786,-4788,-4789,-4791,-4793,-4795,-4797,-4799,-4801,-4803,-4805,
+-4807,-4809,-4811,-4813,-4815,-4817,-4819,-4821,-4824,-4825,-4827,-4828,-4830,-4831,-4832,-4833,-4834,-4835,-4835,-4836,
+-4836,-4836,-4835,-4835,-4834,-4834,-4833,-4831,-4830,-4828,-4826,-4824,-4822,-4820,-4817,-4814,-4812,-4809,-4805,-4802,
+-4799,-4795,-4791,-4788,-4784,-4780,-4776,-4772,-4767,-4763,-4759,-4754,-4749,-4745,-4740,-4735,-4730,-4725,-4721,-4716,
+-4711,-4705,-4700,-4695,-4690,-4684,-4679,-4673,-4668,-4662,-4656,-4650,-4644,-4638,-4632,-4625,-4619,-4612,-4605,-4598,
+-4591,-4584,-4577,-4569,-4562,-4554,-4546,-4538,-4530,-4521,-4513,-4504,-4495,-4487,-4478,-4468,-4459,-4450,-4441,-4431,
+-4422,-4413,-4403,-4394,-4384,-4374,-4365,-4356,-4346,-4337,-4327,-4318,-4309,-4300,-4291,-4282,-4274,-4265,-4257,-4249,
+-4241,-4234,-4226,-4219,-4211,-4205,-4198,-4191,-4185,-4178,-4172,-4166,-4160,-4154,-4148,-4143,-4137,-4131,-4126,-4120,
+-4114,-4109,-4103,-4097,-4092,-4086,-4080,-4074,-4068,-4061,-4055,-4048,-4041,-4034,-4027,-4019,-4011,-4003,-3995,-3986,
+-3977,-3968,-3959,-3949,-3939,-3929,-3918,-3907,-3896,-3885,-3874,-3862,-3850,-3838,-3825,-3813,-3801,-3788,-3776,-3763,
+-3749,-3736,-3723,-3709,-3696,-3682,-3668,-3655,-3641,-3627,-3613,-3599,-3586,-3572,-3558,-3544,-3530,-3517,-3503,-3489,
+-3475,-3461,-3447,-3433,-3420,-3406,-3393,-3379,-3366,-3352,-3339,-3326,-3313,-3299,-3286,-3272,-3259,-3246,-3233,-3221,
+-3208,-3195,-3182,-3170,-3158,-3146,-3134,-3122,-3111,-3100,-3090,-3079,-3068,-3057,-3047,-3039,-3033,-3027,-3019,-3010,
+-2998,-2986,-2974,-2964,-2955,-2946,-2938,-2930,-2923,-2916,-2910,-2904,-2898,-2893,-2888,-2884,-2880,-2876,-2872,-2868,
+-2866,-2863,-2861,-2858,-2856,-2854,-2852,-2851,-2849,-2847,-2846,-2844,-2843,-2841,-2840,-2838,-2836,-2834,-2832,-2830,
+-2827,-2825,-2822,-2820,-2817,-2815,-2812,-2810,-2807,-2805,-2802,-2799,-2796,-2792,-2789,-2785,-2781,-2778,-2775,-2771,
+-2768,-2764,-2760,-2757,-2754,-2750,-2747,-2744,-2742,-2739,-2737,-2735,-2733,-2732,-2730,-2729,-2728,-2727,-2727,-2727,
+-2727,-2727,-2727,-2728,-2729,-2729,-2730,-2732,-2733,-2735,-2737,-2739,-2740,-2742,-2744,-2747,-2749,-2751,-2753,-2754,
+-2756,-2757,-2759,-2760,-2761,-2762,-2763,-2763,-2764,-2764,-2764,-2763,-2763,-2762,-2761,-2760,-2758,-2756,-2754,-2752,
+-2750,-2747,-2744,-2741,-2737,-2734,-2731,-2727,-2723,-2719,-2715,-2711,-2707,-2703,-2699,-2695,-2691,-2687,-2683,-2679,
+-2675,-2672,-2668,-2665,-2661,-2658,-2655,-2652,-2649,-2646,-2644,-2641,-2639,-2636,-2633,-2631,-2629,-2627,-2624,-2621,
+-2618,-2615,-2612,-2609,-2606,-2602,-2598,-2594,-2589,-2584,-2579,-2573,-2568,-2561,-2554,-2547,-2539,-2531,-2522,-2513,
+-2504,-2493,-2483,-2472,-2461,-2449,-2436,-2423,-2410,-2397,-2384,-2370,-2356,-2341,-2327,-2313,-2298,-2283,-2269,-2254,
+-2240,-2226,-2212,-2198,-2183,-2170,-2157,-2146,-2134,-2123,-2111,-2100,-2088,-2077,-2066,-2056,-2047,-2038,-2029,-2020,
+-2012,-2004,-1997,-1991,-1987,-1982,-1978,-1975,-1971,-1969,-1967,-1965,-1963,-1962,-1961,-1960,-1959,-1958,-1957,-1957,
+-1957,-1957,-1957,-1957,-1957,-1956,-1955,-1953,-1950,-1947,-1944,-1941,-1937,-1932,-1927,-1921,-1914,-1908,-1901,-1893,
+-1885,-1876,-1866,-1856,-1845,-1834,-1823,-1810,-1797,-1784,-1771,-1757,-1743,-1729,-1715,-1701,-1686,-1672,-1657,-1643,
+-1628,-1614,-1600,-1586,-1571,-1557,-1543,-1530,-1517,-1504,-1491,-1478,-1466,-1454,-1443,-1432,-1421,-1411,-1402,-1392,
+-1383,-1374,-1366,-1358,-1351,-1343,-1336,-1330,-1324,-1318,-1312,-1307,-1302,-1297,-1293,-1288,-1284,-1280,-1276,-1272,
+-1268,-1265,-1261,-1257,-1253,-1250,-1246,-1244,-1241,-1239,-1236,-1234,-1231,-1229,-1227,-1226,-1225,-1224,-1223,-1222,
+-1221,-1220,-1220,-1219,-1220,-1220,-1220,-1221,-1222,-1223,-1225,-1226,-1228,-1231,-1233,-1236,-1240,-1243,-1247,-1252,
+-1256,-1261,-1266,-1272,-1277,-1283,-1289,-1296,-1302,-1309,-1315,-1322,-1328,-1335,-1341,-1348,-1354,-1360,-1366,-1372,
+-1378,-1384,-1390,-1395,-1401,-1406,-1410,-1415,-1418,-1421,-1423,-1426,-1428,-1430,-1431,-1432,-1432,-1431,-1431,-1429,
+-1427,-1425,-1422,-1419,-1415,-1411,-1406,-1401,-1395,-1390,-1384,-1378,-1408,-1404,-1399,-1395,-1390,-1384,-1379,-1373,
+-1367,-1360,-1354,-1347,-1340,-1333,-1327,-1320,-1313,-1306,-1300,-1293,-1286,-1279,-1272,-1266,-1259,-1253,-1247,-1241,
+-1235,-1229,-1223,-1218,-1212,-1207,-1202,-1198,-1193,-1189,-1185,-1180,-1177,-1173,-1170,-1166,-1162,-1158,-1154,-1151,
+-1148,-1145,-1141,-1137,-1133,-1129,-1125,-1121,-1117,-1112,-1107,-1103,-1098,-1092,-1086,-1079,-1072,-1064,-1056,-1048,
+-1039,-1030,-1021,-1011,-1001,-989,-978,-966,-953,-941,-927,-913,-899,-884,-869,-853,-838,-822,-805,-787,
+-769,-751,-733,-714,-695,-676,-656,-636,-616,-596,-577,-558,-538,-519,-500,-480,-462,-443,-424,-406,
+-389,-371,-354,-337,-320,-305,-290,-276,-262,-249,-236,-224,-212,-202,-192,-183,-175,-168,-162,-156,
+-152,-148,-145,-143,-142,-141,-141,-142,-144,-146,-150,-154,-158,-164,-170,-176,-184,-191,-199,-207,
+-216,-225,-234,-244,-254,-264,-274,-285,-295,-306,-316,-327,-337,-347,-357,-367,-377,-386,-396,-404,
+-413,-421,-428,-435,-442,-448,-454,-459,-464,-468,-471,-474,-477,-479,-481,-482,-482,-482,-482,-480,
+-479,-477,-475,-472,-468,-465,-461,-456,-451,-447,-442,-437,-432,-426,-420,-414,-408,-403,-397,-390,
+-384,-378,-372,-366,-361,-355,-350,-344,-339,-334,-329,-325,-320,-316,-312,-309,-306,-303,-300,-297,
+-295,-292,-290,-288,-287,-286,-284,-283,-281,-280,-279,-279,-278,-277,-276,-275,-274,-273,-272,-271,
+-270,-269,-267,-266,-264,-262,-259,-257,-255,-253,-250,-246,-243,-239,-236,-232,-229,-225,-220,-216,
+-212,-208,-204,-200,-195,-191,-188,-184,-180,-177,-174,-171,-169,-167,-165,-164,-163,-162,-162,-163,
+-165,-167,-169,-173,-176,-181,-186,-192,-198,-205,-212,-220,-228,-238,-248,-258,-270,-281,-294,-307,
+-320,-334,-348,-362,-377,-392,-407,-423,-439,-455,-471,-488,-504,-520,-537,-553,-570,-586,-602,-618,
+-634,-650,-665,-680,-695,-709,-723,-736,-750,-764,-777,-790,-803,-816,-828,-840,-852,-864,-876,-888,
+-899,-911,-922,-934,-945,-957,-969,-980,-992,-1004,-1016,-1029,-1041,-1054,-1067,-1080,-1093,-1107,-1121,-1136,
+-1151,-1166,-1182,-1198,-1215,-1232,-1249,-1267,-1285,-1304,-1323,-1342,-1361,-1381,-1401,-1421,-1441,-1462,-1482,-1503,
+-1524,-1545,-1567,-1588,-1609,-1631,-1652,-1673,-1695,-1716,-1737,-1758,-1779,-1800,-1820,-1841,-1861,-1881,-1900,-1920,
+-1939,-1958,-1977,-1995,-2014,-2032,-2050,-2068,-2085,-2103,-2120,-2137,-2154,-2171,-2187,-2204,-2220,-2236,-2252,-2268,
+-2284,-2300,-2316,-2332,-2348,-2364,-2380,-2397,-2413,-2429,-2446,-2463,-2480,-2497,-2513,-2531,-2548,-2567,-2585,-2604,
+-2622,-2642,-2661,-2681,-2701,-2721,-2742,-2763,-2784,-2805,-2827,-2848,-2870,-2893,-2915,-2938,-2960,-2983,-3006,-3029,
+-3052,-3075,-3097,-3120,-3142,-3164,-3186,-3209,-3231,-3254,-3276,-3297,-3318,-3338,-3359,-3379,-3398,-3417,-3435,-3453,
+-3470,-3487,-3502,-3517,-3532,-3547,-3560,-3572,-3584,-3595,-3606,-3616,-3626,-3634,-3642,-3649,-3656,-3661,-3667,-3672,
+-3677,-3681,-3685,-3688,-3691,-3694,-3697,-3700,-3702,-3704,-3706,-3708,-3710,-3711,-3712,-3713,-3714,-3716,-3718,-3719,
+-3721,-3723,-3725,-3727,-3730,-3732,-3735,-3739,-3743,-3747,-3751,-3756,-3761,-3766,-3772,-3779,-3785,-3792,-3799,-3807,
+-3815,-3823,-3831,-3840,-3848,-3857,-3866,-3875,-3884,-3893,-3902,-3911,-3920,-3930,-3939,-3948,-3957,-3965,-3974,-3983,
+-3992,-3999,-4006,-4013,-4021,-4028,-4034,-4040,-4045,-4050,-4056,-4061,-4065,-4068,-4071,-4074,-4077,-4079,-4081,-4082,
+-4083,-4085,-4085,-4085,-4085,-4084,-4084,-4083,-4082,-4079,-4078,-4076,-4075,-4073,-4071,-4069,-4067,-4065,-4064,-4062,
+-4059,-4057,-4056,-4055,-4053,-4051,-4050,-4049,-4050,-4050,-4049,-4047,-4046,-4044,-4044,-4044,-4046,-4049,-4054,-4058,
+-4062,-4065,-4070,-4076,-4083,-4089,-4095,-4101,-4110,-4121,-4132,-4140,-4146,-4155,-4169,-4188,-4206,-4219,-4226,-4231,
+-4238,-4246,-4253,-4257,-4259,-4264,-4272,-4284,-4295,-4305,-4314,-4326,-4340,-4354,-4365,-4371,-4376,-4382,-4390,-4400,
+-4409,-4417,-4425,-4432,-4441,-4449,-4457,-4464,-4471,-4478,-4485,-4491,-4498,-4504,-4511,-4517,-4523,-4528,-4534,-4540,
+-4545,-4551,-4556,-4561,-4566,-4571,-4576,-4581,-4585,-4590,-4595,-4600,-4604,-4609,-4613,-4618,-4623,-4627,-4631,-4636,
+-4640,-4644,-4649,-4653,-4657,-4661,-4665,-4669,-4673,-4676,-4680,-4683,-4686,-4690,-4693,-4695,-4698,-4701,-4703,-4706,
+-4708,-4710,-4712,-4713,-4715,-4716,-4717,-4718,-4719,-4720,-4720,-4720,-4721,-4721,-4721,-4720,-4720,-4719,-4719,-4718,
+-4717,-4717,-4716,-4715,-4714,-4713,-4712,-4710,-4709,-4708,-4708,-4707,-4706,-4705,-4704,-4704,-4703,-4703,-4703,-4702,
+-4702,-4703,-4703,-4703,-4704,-4704,-4705,-4706,-4708,-4709,-4710,-4712,-4713,-4715,-4717,-4719,-4721,-4723,-4725,-4727,
+-4730,-4732,-4735,-4737,-4739,-4742,-4744,-4746,-4749,-4751,-4753,-4755,-4757,-4759,-4760,-4762,-4763,-4765,-4766,-4767,
+-4767,-4768,-4768,-4768,-4768,-4768,-4768,-4767,-4766,-4765,-4764,-4763,-4761,-4760,-4758,-4755,-4753,-4750,-4748,-4745,
+-4742,-4739,-4736,-4732,-4729,-4725,-4721,-4717,-4713,-4709,-4704,-4700,-4695,-4691,-4686,-4681,-4676,-4671,-4666,-4661,
+-4655,-4650,-4645,-4639,-4633,-4627,-4622,-4616,-4610,-4604,-4597,-4591,-4585,-4578,-4572,-4565,-4558,-4551,-4544,-4537,
+-4530,-4522,-4515,-4507,-4500,-4492,-4484,-4476,-4468,-4460,-4451,-4443,-4434,-4425,-4417,-4408,-4399,-4390,-4380,-4371,
+-4362,-4354,-4345,-4335,-4326,-4318,-4309,-4300,-4292,-4283,-4274,-4266,-4258,-4249,-4241,-4233,-4226,-4218,-4211,-4204,
+-4197,-4190,-4184,-4177,-4171,-4164,-4158,-4153,-4147,-4141,-4136,-4131,-4126,-4121,-4115,-4110,-4105,-4101,-4096,-4091,
+-4086,-4081,-4076,-4071,-4066,-4061,-4056,-4051,-4045,-4040,-4034,-4028,-4022,-4015,-4009,-4002,-3995,-3988,-3980,-3972,
+-3965,-3956,-3948,-3940,-3931,-3921,-3912,-3902,-3891,-3881,-3870,-3860,-3848,-3837,-3825,-3814,-3802,-3790,-3778,-3765,
+-3753,-3741,-3728,-3715,-3702,-3689,-3675,-3662,-3648,-3634,-3621,-3607,-3593,-3579,-3565,-3551,-3537,-3523,-3509,-3495,
+-3482,-3468,-3454,-3441,-3427,-3413,-3400,-3386,-3372,-3359,-3345,-3331,-3318,-3305,-3291,-3278,-3265,-3252,-3239,-3227,
+-3214,-3201,-3188,-3176,-3164,-3151,-3139,-3128,-3116,-3106,-3094,-3083,-3072,-3061,-3051,-3042,-3032,-3023,-3013,-3004,
+-2995,-2986,-2978,-2970,-2961,-2953,-2946,-2938,-2931,-2925,-2918,-2913,-2907,-2903,-2898,-2894,-2890,-2886,-2883,-2880,
+-2877,-2874,-2872,-2870,-2868,-2867,-2865,-2864,-2863,-2862,-2860,-2859,-2858,-2857,-2856,-2855,-2854,-2853,-2852,-2851,
+-2849,-2848,-2846,-2845,-2843,-2841,-2839,-2836,-2834,-2831,-2829,-2826,-2824,-2821,-2818,-2815,-2812,-2808,-2805,-2801,
+-2797,-2793,-2789,-2785,-2782,-2778,-2775,-2771,-2768,-2765,-2762,-2759,-2756,-2753,-2751,-2748,-2746,-2744,-2742,-2740,
+-2738,-2737,-2735,-2734,-2733,-2732,-2731,-2731,-2730,-2730,-2730,-2730,-2730,-2730,-2730,-2730,-2730,-2730,-2730,-2731,
+-2731,-2731,-2731,-2731,-2732,-2732,-2731,-2731,-2730,-2729,-2729,-2728,-2727,-2726,-2725,-2723,-2722,-2720,-2718,-2716,
+-2714,-2712,-2710,-2707,-2705,-2703,-2700,-2697,-2694,-2691,-2689,-2686,-2683,-2680,-2677,-2674,-2671,-2668,-2666,-2663,
+-2660,-2657,-2655,-2652,-2650,-2648,-2645,-2643,-2641,-2638,-2636,-2634,-2632,-2629,-2627,-2625,-2622,-2620,-2617,-2614,
+-2611,-2608,-2605,-2602,-2598,-2594,-2589,-2585,-2580,-2575,-2569,-2563,-2557,-2550,-2543,-2535,-2527,-2518,-2509,-2500,
+-2490,-2480,-2469,-2457,-2446,-2433,-2421,-2409,-2397,-2385,-2372,-2358,-2344,-2330,-2316,-2301,-2287,-2273,-2259,-2245,
+-2231,-2217,-2203,-2189,-2176,-2163,-2150,-2138,-2126,-2114,-2102,-2090,-2079,-2068,-2058,-2048,-2038,-2028,-2018,-2008,
+-1998,-1990,-1984,-1978,-1973,-1968,-1964,-1960,-1957,-1954,-1952,-1950,-1948,-1947,-1946,-1946,-1945,-1946,-1946,-1946,
+-1947,-1947,-1948,-1950,-1950,-1951,-1950,-1949,-1948,-1946,-1944,-1941,-1939,-1935,-1931,-1927,-1921,-1916,-1910,-1904,
+-1897,-1890,-1882,-1873,-1864,-1855,-1844,-1834,-1823,-1811,-1799,-1787,-1774,-1761,-1748,-1734,-1721,-1707,-1693,-1679,
+-1665,-1652,-1638,-1624,-1610,-1596,-1582,-1569,-1556,-1542,-1530,-1517,-1505,-1493,-1481,-1469,-1458,-1447,-1436,-1426,
+-1416,-1406,-1397,-1388,-1379,-1371,-1362,-1355,-1347,-1341,-1334,-1328,-1321,-1315,-1310,-1304,-1299,-1294,-1289,-1285,
+-1280,-1276,-1271,-1267,-1263,-1259,-1255,-1252,-1248,-1245,-1242,-1238,-1235,-1232,-1229,-1227,-1224,-1222,-1220,-1218,
+-1215,-1213,-1212,-1210,-1209,-1208,-1208,-1208,-1208,-1208,-1209,-1210,-1211,-1212,-1213,-1214,-1215,-1217,-1220,-1223,
+-1226,-1230,-1233,-1237,-1241,-1246,-1251,-1256,-1262,-1267,-1273,-1279,-1285,-1291,-1298,-1304,-1311,-1318,-1325,-1331,
+-1337,-1344,-1350,-1357,-1363,-1369,-1375,-1381,-1386,-1391,-1395,-1400,-1404,-1408,-1412,-1416,-1419,-1422,-1424,-1425,
+-1426,-1426,-1426,-1426,-1426,-1425,-1424,-1422,-1421,-1418,-1415,-1412,-1408,-1407,-1404,-1401,-1398,-1394,-1390,-1386,
+-1381,-1376,-1371,-1366,-1361,-1356,-1350,-1344,-1338,-1332,-1326,-1321,-1315,-1309,-1304,-1298,-1292,-1286,-1280,-1275,
+-1269,-1264,-1259,-1253,-1248,-1243,-1239,-1235,-1230,-1226,-1222,-1219,-1216,-1214,-1211,-1208,-1206,-1204,-1202,-1200,
+-1198,-1196,-1194,-1192,-1189,-1187,-1186,-1183,-1181,-1179,-1177,-1174,-1171,-1168,-1165,-1162,-1157,-1153,-1148,-1143,
+-1137,-1131,-1124,-1117,-1109,-1102,-1093,-1084,-1074,-1064,-1053,-1042,-1030,-1018,-1005,-991,-977,-962,-947,-931,
+-915,-899,-882,-864,-846,-828,-809,-790,-771,-752,-732,-712,-692,-672,-653,-633,-613,-593,-574,-555,
+-536,-517,-499,-480,-462,-444,-427,-410,-395,-380,-365,-351,-337,-324,-312,-301,-291,-281,-272,-264,
+-258,-252,-246,-242,-238,-235,-233,-232,-231,-231,-232,-234,-237,-241,-246,-251,-257,-263,-269,-276,
+-284,-291,-300,-309,-318,-328,-338,-348,-358,-369,-379,-389,-400,-411,-422,-433,-443,-452,-461,-471,
+-480,-489,-497,-505,-513,-520,-527,-534,-540,-545,-550,-555,-559,-562,-564,-566,-568,-569,-569,-569,
+-569,-568,-567,-565,-563,-560,-557,-553,-549,-545,-540,-535,-530,-525,-520,-515,-509,-503,-497,-491,
+-484,-478,-471,-464,-458,-452,-446,-439,-433,-426,-421,-415,-410,-405,-399,-394,-389,-385,-381,-377,
+-373,-369,-365,-362,-359,-356,-353,-350,-347,-344,-342,-339,-337,-336,-334,-332,-331,-329,-327,-325,
+-323,-321,-319,-317,-316,-314,-312,-310,-308,-306,-304,-302,-300,-297,-294,-292,-289,-287,-284,-282,
+-279,-277,-274,-272,-270,-269,-267,-265,-263,-262,-261,-261,-260,-260,-260,-261,-262,-264,-266,-268,
+-271,-275,-279,-284,-289,-294,-300,-307,-315,-323,-331,-340,-350,-359,-370,-381,-392,-405,-418,-431,
+-445,-459,-473,-488,-503,-518,-533,-549,-565,-581,-598,-614,-630,-646,-662,-679,-695,-711,-727,-743,
+-759,-774,-790,-805,-820,-834,-848,-862,-876,-890,-903,-916,-928,-941,-953,-965,-977,-989,-1000,-1011,
+-1022,-1033,-1043,-1054,-1064,-1075,-1085,-1096,-1106,-1117,-1128,-1138,-1149,-1160,-1171,-1183,-1194,-1206,-1218,-1230,
+-1242,-1255,-1268,-1281,-1295,-1309,-1324,-1339,-1354,-1370,-1385,-1401,-1418,-1434,-1451,-1468,-1485,-1503,-1521,-1539,
+-1557,-1575,-1594,-1613,-1632,-1651,-1670,-1689,-1708,-1727,-1746,-1765,-1784,-1803,-1822,-1841,-1860,-1878,-1896,-1915,
+-1933,-1951,-1969,-1986,-2004,-2021,-2038,-2055,-2072,-2088,-2105,-2121,-2137,-2153,-2169,-2185,-2201,-2216,-2232,-2248,
+-2264,-2279,-2295,-2310,-2326,-2342,-2358,-2374,-2389,-2405,-2421,-2438,-2454,-2471,-2488,-2505,-2522,-2539,-2557,-2575,
+-2594,-2612,-2631,-2650,-2670,-2689,-2709,-2729,-2750,-2770,-2791,-2812,-2833,-2854,-2876,-2898,-2919,-2941,-2963,-2985,
+-3007,-3029,-3051,-3072,-3094,-3116,-3137,-3158,-3179,-3200,-3221,-3241,-3261,-3280,-3299,-3318,-3336,-3354,-3371,-3388,
+-3404,-3420,-3435,-3450,-3464,-3477,-3489,-3501,-3513,-3523,-3533,-3542,-3550,-3558,-3566,-3572,-3579,-3584,-3589,-3594,
+-3598,-3602,-3605,-3608,-3611,-3614,-3616,-3618,-3620,-3621,-3622,-3624,-3625,-3627,-3628,-3629,-3629,-3631,-3632,-3633,
+-3634,-3635,-3637,-3639,-3642,-3644,-3647,-3650,-3654,-3657,-3661,-3666,-3671,-3676,-3682,-3687,-3694,-3700,-3707,-3715,
+-3723,-3731,-3739,-3747,-3756,-3765,-3774,-3783,-3792,-3801,-3810,-3820,-3829,-3839,-3849,-3858,-3868,-3877,-3886,-3895,
+-3904,-3913,-3922,-3930,-3938,-3946,-3953,-3961,-3967,-3974,-3980,-3985,-3991,-3996,-4001,-4005,-4009,-4012,-4015,-4018,
+-4020,-4023,-4024,-4025,-4026,-4026,-4027,-4027,-4027,-4026,-4025,-4024,-4023,-4022,-4020,-4019,-4017,-4015,-4013,-4011,
+-4008,-4007,-4005,-4004,-4002,-4000,-3998,-3996,-3995,-3993,-3991,-3989,-3987,-3986,-3986,-3985,-3986,-3988,-3991,-3995,
+-3996,-3997,-3997,-4000,-4005,-4011,-4014,-4017,-4021,-4029,-4040,-4052,-4061,-4069,-4080,-4097,-4119,-4137,-4146,-4143,
+-4136,-4132,-4134,-4140,-4146,-4147,-4147,-4150,-4159,-4171,-4182,-4191,-4198,-4208,-4223,-4243,-4262,-4276,-4283,-4284,
+-4282,-4282,-4286,-4294,-4304,-4314,-4323,-4331,-4340,-4349,-4357,-4366,-4374,-4383,-4391,-4400,-4408,-4416,-4424,-4432,
+-4440,-4448,-4456,-4463,-4471,-4478,-4486,-4493,-4501,-4508,-4515,-4522,-4529,-4535,-4542,-4549,-4555,-4562,-4568,-4574,
+-4580,-4586,-4592,-4597,-4603,-4608,-4612,-4617,-4622,-4627,-4631,-4635,-4639,-4642,-4646,-4649,-4652,-4654,-4657,-4659,
+-4661,-4663,-4665,-4666,-4667,-4668,-4669,-4669,-4670,-4670,-4670,-4670,-4669,-4668,-4667,-4667,-4666,-4664,-4663,-4662,
+-4660,-4659,-4657,-4655,-4654,-4652,-4650,-4649,-4647,-4646,-4644,-4643,-4641,-4640,-4638,-4637,-4636,-4635,-4634,-4633,
+-4633,-4633,-4632,-4632,-4632,-4632,-4632,-4633,-4634,-4635,-4635,-4636,-4637,-4638,-4640,-4642,-4643,-4645,-4647,-4649,
+-4650,-4652,-4654,-4656,-4658,-4660,-4663,-4664,-4666,-4668,-4670,-4672,-4674,-4675,-4677,-4678,-4679,-4681,-4682,-4683,
+-4683,-4684,-4684,-4684,-4684,-4684,-4684,-4684,-4683,-4682,-4681,-4680,-4678,-4677,-4675,-4673,-4671,-4668,-4666,-4663,
+-4661,-4658,-4654,-4651,-4648,-4644,-4641,-4637,-4633,-4629,-4625,-4620,-4616,-4612,-4607,-4603,-4598,-4593,-4588,-4583,
+-4578,-4573,-4567,-4562,-4556,-4551,-4545,-4540,-4534,-4528,-4522,-4516,-4510,-4504,-4498,-4492,-4485,-4479,-4472,-4466,
+-4459,-4452,-4445,-4438,-4431,-4424,-4417,-4409,-4402,-4394,-4387,-4379,-4371,-4363,-4355,-4347,-4339,-4331,-4323,-4314,
+-4306,-4298,-4290,-4282,-4274,-4266,-4258,-4250,-4242,-4234,-4227,-4219,-4211,-4204,-4197,-4190,-4183,-4176,-4169,-4163,
+-4156,-4150,-4144,-4138,-4133,-4127,-4121,-4116,-4111,-4105,-4100,-4095,-4090,-4085,-4081,-4076,-4071,-4066,-4062,-4057,
+-4053,-4048,-4043,-4039,-4034,-4029,-4024,-4019,-4013,-4008,-4003,-3997,-3991,-3985,-3979,-3973,-3966,-3960,-3953,-3945,
+-3938,-3930,-3922,-3914,-3905,-3897,-3888,-3879,-3870,-3861,-3851,-3841,-3830,-3820,-3809,-3798,-3787,-3776,-3764,-3753,
+-3741,-3729,-3717,-3705,-3692,-3680,-3667,-3654,-3642,-3629,-3616,-3603,-3589,-3576,-3562,-3549,-3536,-3522,-3509,-3496,
+-3483,-3469,-3456,-3443,-3429,-3416,-3403,-3390,-3377,-3363,-3350,-3337,-3324,-3311,-3299,-3286,-3273,-3260,-3247,-3235,
+-3222,-3210,-3198,-3186,-3174,-3163,-3151,-3139,-3128,-3116,-3105,-3094,-3084,-3073,-3063,-3052,-3042,-3033,-3023,-3015,
+-3006,-2998,-2990,-2982,-2974,-2966,-2959,-2951,-2945,-2938,-2932,-2927,-2921,-2916,-2911,-2907,-2902,-2898,-2895,-2892,
+-2889,-2886,-2883,-2881,-2879,-2877,-2875,-2874,-2872,-2871,-2870,-2868,-2867,-2866,-2865,-2864,-2863,-2861,-2860,-2859,
+-2858,-2856,-2855,-2854,-2852,-2851,-2849,-2847,-2844,-2842,-2840,-2837,-2835,-2833,-2830,-2827,-2825,-2822,-2819,-2816,
+-2812,-2809,-2805,-2802,-2798,-2794,-2791,-2787,-2783,-2779,-2776,-2772,-2769,-2765,-2762,-2758,-2755,-2752,-2749,-2746,
+-2743,-2740,-2738,-2735,-2732,-2730,-2727,-2725,-2723,-2721,-2720,-2718,-2716,-2715,-2713,-2712,-2710,-2709,-2708,-2706,
+-2705,-2703,-2701,-2700,-2699,-2698,-2697,-2695,-2694,-2693,-2691,-2690,-2689,-2687,-2686,-2684,-2682,-2681,-2679,-2677,
+-2676,-2674,-2672,-2670,-2669,-2667,-2665,-2663,-2661,-2659,-2658,-2656,-2654,-2652,-2651,-2649,-2647,-2646,-2644,-2643,
+-2641,-2640,-2638,-2637,-2636,-2635,-2633,-2632,-2631,-2630,-2629,-2627,-2626,-2624,-2623,-2621,-2619,-2617,-2615,-2613,
+-2611,-2609,-2606,-2603,-2599,-2596,-2592,-2588,-2584,-2579,-2573,-2568,-2562,-2556,-2549,-2542,-2534,-2526,-2517,-2508,
+-2499,-2489,-2480,-2470,-2460,-2450,-2438,-2427,-2415,-2403,-2391,-2378,-2364,-2350,-2336,-2323,-2309,-2294,-2279,-2265,
+-2251,-2237,-2223,-2210,-2196,-2182,-2169,-2156,-2143,-2131,-2118,-2107,-2096,-2086,-2076,-2064,-2052,-2039,-2026,-2015,
+-2005,-1997,-1990,-1983,-1977,-1971,-1966,-1961,-1956,-1952,-1949,-1946,-1943,-1941,-1939,-1938,-1936,-1936,-1935,-1935,
+-1934,-1934,-1933,-1933,-1933,-1932,-1932,-1931,-1930,-1929,-1928,-1926,-1924,-1922,-1919,-1916,-1912,-1908,-1904,-1898,
+-1893,-1888,-1881,-1874,-1867,-1859,-1851,-1843,-1834,-1824,-1814,-1803,-1793,-1782,-1771,-1759,-1748,-1736,-1724,-1712,
+-1700,-1688,-1675,-1663,-1651,-1638,-1626,-1614,-1602,-1590,-1579,-1568,-1556,-1545,-1534,-1523,-1513,-1502,-1493,-1483,
+-1474,-1465,-1456,-1447,-1439,-1431,-1423,-1415,-1407,-1400,-1393,-1387,-1380,-1374,-1368,-1362,-1356,-1351,-1346,-1341,
+-1336,-1331,-1326,-1321,-1317,-1312,-1308,-1304,-1300,-1295,-1291,-1287,-1283,-1279,-1275,-1271,-1267,-1264,-1260,-1257,
+-1253,-1250,-1247,-1244,-1241,-1238,-1236,-1234,-1231,-1229,-1227,-1226,-1226,-1225,-1225,-1225,-1224,-1224,-1224,-1225,
+-1226,-1228,-1229,-1231,-1233,-1235,-1238,-1241,-1245,-1249,-1253,-1258,-1263,-1267,-1272,-1277,-1282,-1288,-1293,-1299,
+-1305,-1311,-1317,-1323,-1329,-1335,-1341,-1347,-1352,-1358,-1363,-1368,-1373,-1377,-1382,-1386,-1390,-1394,-1397,-1400,
+-1403,-1406,-1408,-1410,-1412,-1413,-1413,-1413,-1413,-1413,-1412,-1410,-1409,-1407,-1388,-1386,-1384,-1382,-1379,-1377,
+-1374,-1371,-1367,-1363,-1359,-1355,-1351,-1346,-1341,-1336,-1331,-1327,-1322,-1317,-1312,-1307,-1302,-1298,-1293,-1288,
+-1283,-1279,-1275,-1271,-1267,-1263,-1260,-1256,-1253,-1250,-1247,-1245,-1243,-1241,-1239,-1238,-1237,-1236,-1235,-1234,
+-1233,-1232,-1232,-1231,-1231,-1231,-1231,-1231,-1230,-1230,-1229,-1229,-1228,-1227,-1226,-1224,-1223,-1221,-1218,-1215,
+-1212,-1209,-1205,-1200,-1195,-1190,-1184,-1178,-1171,-1164,-1156,-1147,-1138,-1128,-1117,-1106,-1094,-1081,-1068,-1054,
+-1040,-1025,-1010,-994,-977,-960,-943,-926,-908,-890,-871,-851,-832,-812,-793,-774,-754,-735,-715,-696,
+-677,-658,-638,-619,-600,-582,-563,-545,-528,-511,-494,-479,-464,-450,-436,-423,-411,-399,-389,-379,
+-370,-362,-354,-348,-342,-337,-332,-329,-326,-325,-324,-325,-326,-328,-331,-334,-337,-342,-347,-352,
+-358,-365,-372,-380,-389,-398,-407,-416,-426,-436,-446,-457,-467,-478,-489,-499,-509,-519,-529,-538,
+-548,-557,-566,-575,-584,-593,-600,-608,-614,-621,-627,-632,-637,-642,-645,-648,-651,-653,-655,-656,
+-657,-657,-657,-656,-655,-653,-651,-647,-644,-640,-636,-631,-627,-622,-617,-612,-606,-600,-594,-587,
+-580,-573,-566,-559,-552,-545,-538,-531,-524,-517,-509,-503,-496,-489,-483,-476,-470,-464,-458,-452,
+-446,-441,-436,-431,-426,-422,-418,-413,-409,-405,-401,-398,-394,-391,-388,-385,-382,-379,-376,-374,
+-372,-369,-368,-366,-364,-363,-361,-360,-359,-357,-356,-355,-354,-353,-352,-351,-349,-348,-347,-346,
+-346,-346,-346,-345,-345,-345,-346,-346,-347,-348,-349,-351,-353,-355,-358,-360,-363,-367,-371,-376,
+-381,-386,-392,-398,-405,-412,-419,-427,-435,-444,-454,-464,-474,-484,-495,-507,-518,-531,-544,-557,
+-571,-585,-599,-614,-628,-643,-658,-674,-689,-705,-721,-736,-752,-768,-784,-800,-815,-831,-846,-861,
+-876,-891,-906,-921,-936,-950,-963,-977,-990,-1003,-1017,-1029,-1042,-1053,-1065,-1076,-1088,-1099,-1111,-1122,
+-1132,-1142,-1153,-1163,-1172,-1182,-1191,-1201,-1210,-1220,-1229,-1239,-1249,-1258,-1268,-1278,-1288,-1298,-1308,-1319,
+-1330,-1340,-1351,-1363,-1374,-1386,-1398,-1410,-1423,-1436,-1449,-1463,-1477,-1491,-1505,-1519,-1534,-1549,-1564,-1579,
+-1595,-1610,-1627,-1643,-1659,-1675,-1692,-1708,-1725,-1742,-1759,-1776,-1793,-1810,-1827,-1844,-1861,-1877,-1894,-1910,
+-1927,-1944,-1960,-1976,-1993,-2009,-2025,-2041,-2057,-2073,-2088,-2103,-2119,-2134,-2149,-2165,-2180,-2195,-2210,-2225,
+-2240,-2255,-2270,-2285,-2300,-2315,-2331,-2346,-2362,-2377,-2393,-2409,-2425,-2441,-2457,-2474,-2490,-2507,-2524,-2541,
+-2559,-2577,-2595,-2613,-2631,-2650,-2669,-2688,-2707,-2727,-2747,-2766,-2786,-2807,-2827,-2847,-2868,-2888,-2909,-2929,
+-2950,-2971,-2992,-3013,-3034,-3054,-3074,-3094,-3114,-3134,-3153,-3172,-3191,-3209,-3227,-3245,-3263,-3280,-3297,-3313,
+-3328,-3343,-3357,-3371,-3385,-3397,-3410,-3421,-3432,-3442,-3452,-3462,-3471,-3479,-3486,-3493,-3499,-3506,-3511,-3516,
+-3521,-3525,-3529,-3533,-3536,-3539,-3541,-3544,-3546,-3548,-3550,-3552,-3553,-3555,-3556,-3558,-3560,-3561,-3563,-3564,
+-3566,-3569,-3571,-3573,-3576,-3578,-3582,-3585,-3589,-3593,-3597,-3601,-3606,-3612,-3617,-3623,-3630,-3636,-3644,-3651,
+-3659,-3667,-3675,-3684,-3692,-3701,-3710,-3719,-3728,-3738,-3747,-3757,-3767,-3777,-3786,-3796,-3806,-3815,-3825,-3834,
+-3844,-3854,-3863,-3872,-3880,-3889,-3897,-3905,-3913,-3920,-3927,-3934,-3940,-3945,-3951,-3956,-3961,-3965,-3969,-3973,
+-3976,-3979,-3982,-3984,-3986,-3987,-3988,-3988,-3989,-3989,-3989,-3988,-3987,-3985,-3984,-3983,-3981,-3979,-3977,-3974,
+-3972,-3971,-3968,-3966,-3963,-3959,-3957,-3955,-3953,-3950,-3947,-3944,-3941,-3940,-3939,-3938,-3937,-3935,-3934,-3934,
+-3935,-3937,-3940,-3942,-3943,-3942,-3941,-3940,-3941,-3944,-3948,-3953,-3957,-3962,-3968,-3977,-3988,-3999,-4008,-4013,
+-4015,-4016,-4017,-4018,-4022,-4028,-4034,-4040,-4045,-4050,-4054,-4063,-4077,-4097,-4122,-4146,-4164,-4173,-4174,-4169,
+-4162,-4157,-4156,-4158,-4164,-4172,-4181,-4190,-4200,-4210,-4220,-4230,-4240,-4250,-4260,-4270,-4281,-4291,-4300,-4310,
+-4320,-4330,-4341,-4350,-4360,-4369,-4379,-4389,-4398,-4408,-4417,-4426,-4435,-4444,-4452,-4461,-4469,-4477,-4485,-4493,
+-4501,-4508,-4515,-4522,-4529,-4536,-4542,-4548,-4554,-4559,-4565,-4570,-4574,-4579,-4583,-4587,-4590,-4594,-4597,-4599,
+-4602,-4604,-4606,-4607,-4609,-4610,-4611,-4611,-4612,-4612,-4612,-4612,-4611,-4610,-4610,-4609,-4608,-4607,-4605,-4604,
+-4602,-4600,-4599,-4597,-4595,-4593,-4591,-4589,-4587,-4586,-4584,-4582,-4580,-4578,-4577,-4575,-4574,-4573,-4571,-4570,
+-4569,-4569,-4568,-4568,-4567,-4567,-4566,-4566,-4567,-4567,-4567,-4568,-4568,-4569,-4570,-4570,-4571,-4572,-4574,-4575,
+-4576,-4577,-4578,-4580,-4581,-4583,-4584,-4585,-4586,-4587,-4588,-4590,-4591,-4592,-4592,-4593,-4594,-4594,-4594,-4595,
+-4595,-4595,-4595,-4594,-4594,-4593,-4593,-4592,-4591,-4589,-4588,-4586,-4585,-4583,-4581,-4579,-4576,-4574,-4571,-4569,
+-4566,-4563,-4560,-4557,-4553,-4550,-4546,-4543,-4539,-4535,-4531,-4527,-4523,-4519,-4515,-4511,-4506,-4502,-4497,-4493,
+-4488,-4484,-4479,-4474,-4470,-4465,-4460,-4455,-4450,-4445,-4440,-4435,-4430,-4425,-4419,-4414,-4409,-4403,-4397,-4391,
+-4386,-4380,-4374,-4368,-4362,-4356,-4349,-4343,-4337,-4330,-4324,-4317,-4310,-4304,-4297,-4290,-4284,-4277,-4270,-4263,
+-4256,-4250,-4243,-4236,-4229,-4222,-4216,-4209,-4202,-4196,-4189,-4183,-4176,-4170,-4163,-4157,-4151,-4145,-4139,-4133,
+-4127,-4121,-4115,-4110,-4104,-4099,-4093,-4088,-4083,-4077,-4072,-4067,-4062,-4057,-4052,-4047,-4042,-4037,-4032,-4027,
+-4022,-4017,-4012,-4007,-4002,-3996,-3991,-3985,-3980,-3974,-3968,-3962,-3956,-3950,-3944,-3937,-3930,-3924,-3916,-3909,
+-3902,-3894,-3886,-3878,-3870,-3861,-3853,-3844,-3835,-3826,-3816,-3807,-3798,-3788,-3778,-3769,-3758,-3748,-3737,-3727,
+-3716,-3705,-3694,-3683,-3671,-3660,-3648,-3636,-3624,-3612,-3600,-3588,-3576,-3563,-3551,-3538,-3526,-3513,-3501,-3489,
+-3476,-3464,-3452,-3439,-3426,-3414,-3401,-3389,-3376,-3364,-3352,-3339,-3327,-3315,-3303,-3291,-3279,-3268,-3256,-3244,
+-3232,-3221,-3209,-3198,-3187,-3176,-3165,-3154,-3143,-3132,-3121,-3111,-3100,-3090,-3080,-3071,-3061,-3052,-3043,-3035,
+-3026,-3018,-3010,-3002,-2994,-2986,-2979,-2971,-2964,-2957,-2950,-2944,-2938,-2932,-2927,-2921,-2916,-2912,-2907,-2903,
+-2900,-2896,-2893,-2890,-2887,-2884,-2882,-2879,-2877,-2875,-2873,-2871,-2869,-2868,-2866,-2865,-2863,-2862,-2861,-2859,
+-2858,-2856,-2855,-2853,-2852,-2850,-2848,-2846,-2844,-2842,-2841,-2839,-2837,-2834,-2832,-2829,-2827,-2823,-2820,-2817,
+-2814,-2811,-2808,-2805,-2802,-2798,-2795,-2791,-2788,-2784,-2780,-2777,-2773,-2769,-2765,-2761,-2757,-2753,-2749,-2745,
+-2742,-2738,-2735,-2732,-2728,-2725,-2722,-2719,-2715,-2712,-2710,-2707,-2704,-2701,-2698,-2696,-2693,-2690,-2688,-2685,
+-2682,-2680,-2677,-2675,-2672,-2670,-2668,-2666,-2664,-2662,-2660,-2658,-2656,-2654,-2652,-2650,-2648,-2647,-2645,-2643,
+-2642,-2641,-2639,-2638,-2636,-2635,-2634,-2633,-2632,-2631,-2630,-2629,-2628,-2627,-2627,-2627,-2626,-2626,-2625,-2625,
+-2625,-2625,-2625,-2625,-2625,-2625,-2626,-2626,-2626,-2626,-2626,-2626,-2625,-2625,-2625,-2625,-2624,-2623,-2623,-2622,
+-2620,-2619,-2617,-2616,-2614,-2611,-2609,-2606,-2602,-2599,-2595,-2591,-2586,-2580,-2575,-2569,-2562,-2555,-2547,-2539,
+-2531,-2523,-2516,-2508,-2499,-2489,-2478,-2467,-2455,-2444,-2432,-2420,-2408,-2396,-2383,-2371,-2358,-2345,-2331,-2317,
+-2302,-2288,-2274,-2260,-2247,-2233,-2219,-2205,-2192,-2180,-2168,-2156,-2142,-2127,-2111,-2095,-2080,-2067,-2055,-2044,
+-2034,-2024,-2014,-2006,-1998,-1990,-1982,-1975,-1969,-1963,-1957,-1952,-1947,-1942,-1938,-1935,-1931,-1928,-1925,-1922,
+-1920,-1917,-1915,-1913,-1911,-1909,-1907,-1906,-1904,-1902,-1900,-1897,-1894,-1892,-1889,-1886,-1883,-1879,-1875,-1871,
+-1867,-1863,-1857,-1852,-1846,-1840,-1834,-1827,-1820,-1812,-1804,-1796,-1788,-1779,-1770,-1761,-1752,-1743,-1733,-1723,
+-1714,-1704,-1694,-1684,-1674,-1664,-1654,-1645,-1635,-1625,-1616,-1606,-1597,-1588,-1579,-1570,-1561,-1553,-1545,-1538,
+-1530,-1522,-1515,-1508,-1501,-1494,-1488,-1482,-1475,-1469,-1464,-1458,-1453,-1448,-1442,-1437,-1432,-1428,-1423,-1418,
+-1414,-1410,-1405,-1401,-1396,-1392,-1388,-1383,-1379,-1375,-1370,-1365,-1361,-1357,-1352,-1348,-1344,-1340,-1335,-1331,
+-1327,-1323,-1318,-1314,-1310,-1306,-1302,-1299,-1295,-1291,-1288,-1284,-1281,-1278,-1275,-1272,-1270,-1268,-1266,-1264,
+-1263,-1262,-1261,-1261,-1261,-1261,-1261,-1262,-1264,-1265,-1267,-1269,-1271,-1273,-1275,-1278,-1282,-1285,-1289,-1292,
+-1296,-1300,-1305,-1309,-1313,-1318,-1323,-1328,-1332,-1337,-1341,-1345,-1349,-1353,-1357,-1361,-1364,-1368,-1371,-1374,
+-1377,-1380,-1382,-1385,-1386,-1388,-1389,-1390,-1391,-1392,-1392,-1391,-1390,-1389,-1388,-1367,-1365,-1364,-1362,-1360,
+-1359,-1356,-1354,-1351,-1347,-1344,-1341,-1339,-1335,-1332,-1328,-1324,-1320,-1316,-1312,-1309,-1306,-1302,-1299,-1295,
+-1292,-1289,-1286,-1284,-1281,-1279,-1276,-1274,-1272,-1271,-1269,-1268,-1267,-1266,-1266,-1266,-1267,-1267,-1267,-1268,
+-1268,-1269,-1270,-1271,-1272,-1273,-1274,-1275,-1276,-1277,-1278,-1279,-1280,-1281,-1281,-1281,-1281,-1281,-1281,-1280,
+-1279,-1278,-1276,-1274,-1271,-1268,-1265,-1261,-1256,-1250,-1244,-1237,-1230,-1222,-1213,-1204,-1194,-1183,-1171,-1159,
+-1147,-1134,-1120,-1106,-1092,-1076,-1060,-1044,-1027,-1010,-993,-976,-958,-939,-920,-901,-882,-863,-844,-825,
+-805,-786,-766,-747,-729,-711,-693,-675,-657,-640,-623,-607,-591,-575,-560,-546,-533,-520,-508,-497,
+-486,-476,-468,-460,-452,-446,-440,-434,-430,-427,-425,-423,-422,-422,-423,-425,-427,-430,-433,-438,
+-443,-449,-455,-462,-469,-477,-485,-493,-502,-511,-521,-531,-541,-551,-561,-572,-582,-592,-603,-613,
+-623,-632,-642,-651,-660,-668,-677,-685,-693,-700,-707,-714,-719,-724,-729,-733,-737,-740,-743,-745,
+-747,-749,-749,-750,-749,-748,-746,-744,-741,-738,-735,-731,-727,-722,-717,-712,-706,-700,-694,-687,
+-681,-673,-666,-658,-651,-643,-636,-628,-619,-611,-603,-595,-588,-580,-572,-564,-556,-549,-542,-534,
+-527,-520,-514,-507,-501,-496,-490,-484,-479,-474,-469,-464,-459,-455,-451,-447,-444,-441,-438,-434,
+-432,-429,-427,-425,-423,-422,-420,-419,-417,-417,-416,-416,-415,-415,-415,-415,-416,-416,-417,-419,
+-420,-421,-422,-423,-425,-426,-429,-431,-434,-437,-441,-445,-449,-453,-458,-463,-469,-474,-480,-486,
+-493,-500,-507,-515,-523,-531,-540,-548,-557,-567,-577,-588,-598,-609,-620,-632,-644,-657,-670,-683,
+-696,-710,-723,-737,-751,-765,-779,-793,-808,-823,-837,-852,-867,-882,-897,-911,-926,-941,-955,-970,
+-984,-998,-1012,-1025,-1039,-1052,-1066,-1078,-1091,-1103,-1115,-1128,-1140,-1151,-1163,-1174,-1185,-1196,-1206,-1217,
+-1227,-1236,-1246,-1256,-1265,-1274,-1283,-1292,-1301,-1310,-1319,-1328,-1337,-1346,-1355,-1364,-1373,-1382,-1391,-1401,
+-1410,-1420,-1430,-1440,-1450,-1460,-1471,-1482,-1493,-1504,-1515,-1527,-1538,-1550,-1562,-1575,-1587,-1600,-1613,-1627,
+-1640,-1654,-1668,-1682,-1696,-1710,-1724,-1739,-1753,-1768,-1783,-1798,-1813,-1828,-1843,-1858,-1873,-1888,-1903,-1918,
+-1933,-1948,-1963,-1977,-1992,-2007,-2022,-2037,-2051,-2066,-2081,-2095,-2109,-2123,-2138,-2152,-2166,-2180,-2194,-2208,
+-2223,-2237,-2251,-2266,-2280,-2294,-2309,-2324,-2338,-2354,-2369,-2384,-2399,-2414,-2429,-2445,-2461,-2477,-2493,-2509,
+-2525,-2542,-2559,-2576,-2593,-2610,-2628,-2645,-2663,-2682,-2700,-2719,-2737,-2756,-2775,-2794,-2813,-2832,-2851,-2870,
+-2890,-2909,-2928,-2947,-2967,-2986,-3005,-3023,-3042,-3060,-3079,-3097,-3115,-3132,-3149,-3166,-3182,-3199,-3215,-3230,
+-3245,-3259,-3274,-3287,-3301,-3313,-3326,-3337,-3349,-3359,-3370,-3379,-3389,-3398,-3406,-3414,-3422,-3429,-3436,-3442,
+-3448,-3453,-3459,-3463,-3468,-3472,-3476,-3479,-3483,-3487,-3490,-3493,-3496,-3499,-3502,-3505,-3508,-3510,-3513,-3516,
+-3519,-3522,-3526,-3529,-3533,-3536,-3541,-3545,-3549,-3553,-3558,-3563,-3569,-3575,-3581,-3587,-3593,-3600,-3607,-3615,
+-3623,-3631,-3640,-3648,-3656,-3665,-3674,-3683,-3692,-3702,-3711,-3721,-3731,-3740,-3750,-3760,-3770,-3779,-3789,-3798,
+-3807,-3816,-3825,-3834,-3843,-3851,-3860,-3868,-3876,-3884,-3891,-3898,-3904,-3910,-3916,-3922,-3927,-3932,-3937,-3941,
+-3945,-3948,-3950,-3953,-3955,-3957,-3958,-3959,-3960,-3960,-3959,-3959,-3958,-3957,-3956,-3954,-3952,-3950,-3947,-3945,
+-3943,-3939,-3936,-3933,-3930,-3928,-3925,-3922,-3918,-3915,-3911,-3908,-3906,-3902,-3899,-3896,-3893,-3891,-3889,-3887,
+-3885,-3883,-3881,-3878,-3876,-3873,-3870,-3868,-3867,-3867,-3868,-3869,-3871,-3873,-3877,-3881,-3886,-3891,-3897,-3903,
+-3911,-3922,-3933,-3943,-3947,-3946,-3942,-3936,-3934,-3935,-3939,-3946,-3953,-3960,-3968,-3975,-3984,-3995,-4007,-4019,
+-4027,-4031,-4031,-4029,-4028,-4031,-4039,-4051,-4064,-4076,-4087,-4098,-4109,-4119,-4129,-4138,-4147,-4157,-4168,-4179,
+-4191,-4202,-4213,-4224,-4235,-4246,-4258,-4268,-4279,-4290,-4301,-4311,-4322,-4332,-4342,-4351,-4362,-4372,-4381,-4390,
+-4399,-4407,-4416,-4424,-4433,-4440,-4447,-4454,-4461,-4468,-4474,-4480,-4486,-4491,-4496,-4501,-4506,-4510,-4513,-4517,
+-4520,-4523,-4526,-4529,-4530,-4532,-4533,-4535,-4536,-4537,-4538,-4538,-4538,-4538,-4538,-4538,-4537,-4536,-4535,-4535,
+-4534,-4533,-4531,-4530,-4529,-4527,-4526,-4525,-4523,-4522,-4521,-4519,-4518,-4517,-4516,-4514,-4513,-4512,-4511,-4510,
+-4509,-4509,-4508,-4508,-4507,-4507,-4507,-4507,-4506,-4506,-4506,-4507,-4507,-4508,-4508,-4508,-4509,-4509,-4510,-4511,
+-4511,-4512,-4512,-4513,-4514,-4515,-4515,-4516,-4516,-4517,-4517,-4517,-4517,-4518,-4518,-4518,-4517,-4517,-4517,-4517,
+-4516,-4515,-4514,-4513,-4512,-4511,-4509,-4508,-4506,-4504,-4502,-4500,-4498,-4496,-4493,-4491,-4488,-4485,-4482,-4479,
+-4476,-4473,-4470,-4467,-4463,-4460,-4456,-4453,-4449,-4445,-4442,-4438,-4434,-4430,-4427,-4423,-4419,-4415,-4411,-4407,
+-4403,-4400,-4396,-4392,-4387,-4383,-4379,-4375,-4371,-4367,-4362,-4358,-4354,-4350,-4346,-4341,-4337,-4332,-4328,-4323,
+-4319,-4315,-4310,-4306,-4301,-4296,-4292,-4287,-4282,-4277,-4272,-4267,-4262,-4257,-4252,-4247,-4242,-4236,-4231,-4226,
+-4221,-4215,-4210,-4204,-4199,-4193,-4188,-4182,-4176,-4171,-4165,-4160,-4154,-4148,-4143,-4137,-4132,-4126,-4120,-4115,
+-4109,-4103,-4098,-4092,-4086,-4081,-4075,-4070,-4064,-4059,-4053,-4047,-4042,-4036,-4031,-4025,-4019,-4014,-4008,-4002,
+-3996,-3990,-3985,-3978,-3972,-3966,-3960,-3953,-3947,-3940,-3933,-3927,-3920,-3913,-3906,-3899,-3891,-3884,-3876,-3868,
+-3861,-3853,-3844,-3836,-3828,-3820,-3811,-3803,-3794,-3784,-3775,-3766,-3757,-3747,-3738,-3728,-3718,-3708,-3698,-3688,
+-3678,-3668,-3658,-3647,-3636,-3626,-3616,-3605,-3595,-3584,-3573,-3562,-3551,-3540,-3529,-3517,-3506,-3495,-3483,-3472,
+-3461,-3450,-3438,-3427,-3415,-3404,-3393,-3382,-3370,-3359,-3348,-3337,-3326,-3315,-3304,-3293,-3282,-3272,-3261,-3250,
+-3240,-3229,-3219,-3208,-3198,-3188,-3177,-3167,-3157,-3146,-3136,-3126,-3116,-3106,-3097,-3088,-3078,-3070,-3061,-3052,
+-3043,-3035,-3026,-3018,-3010,-3003,-2996,-2988,-2981,-2974,-2967,-2960,-2953,-2947,-2941,-2935,-2929,-2924,-2918,-2913,
+-2909,-2904,-2900,-2895,-2892,-2888,-2884,-2881,-2878,-2875,-2872,-2869,-2866,-2864,-2861,-2859,-2856,-2854,-2853,-2851,
+-2849,-2848,-2846,-2844,-2842,-2840,-2838,-2836,-2835,-2833,-2831,-2829,-2827,-2824,-2822,-2820,-2818,-2815,-2812,-2810,
+-2807,-2804,-2802,-2799,-2796,-2793,-2789,-2786,-2783,-2780,-2776,-2773,-2770,-2766,-2763,-2759,-2755,-2752,-2748,-2744,
+-2741,-2737,-2733,-2730,-2726,-2723,-2719,-2716,-2712,-2709,-2706,-2702,-2699,-2696,-2692,-2689,-2686,-2683,-2679,-2676,
+-2672,-2669,-2666,-2663,-2660,-2658,-2655,-2652,-2650,-2647,-2645,-2643,-2641,-2639,-2637,-2635,-2633,-2631,-2629,-2628,
+-2626,-2625,-2624,-2623,-2622,-2621,-2620,-2619,-2619,-2618,-2618,-2618,-2618,-2618,-2618,-2619,-2619,-2620,-2621,-2622,
+-2622,-2623,-2624,-2625,-2627,-2628,-2629,-2630,-2631,-2632,-2633,-2634,-2635,-2636,-2637,-2638,-2639,-2639,-2640,-2640,
+-2640,-2640,-2640,-2639,-2639,-2638,-2637,-2635,-2633,-2631,-2628,-2625,-2622,-2618,-2614,-2609,-2604,-2599,-2593,-2587,
+-2580,-2573,-2566,-2558,-2549,-2540,-2531,-2522,-2512,-2502,-2492,-2481,-2470,-2459,-2447,-2436,-2425,-2414,-2403,-2390,
+-2377,-2363,-2348,-2333,-2317,-2302,-2286,-2271,-2256,-2241,-2225,-2210,-2194,-2178,-2164,-2149,-2135,-2122,-2108,-2095,
+-2082,-2070,-2058,-2047,-2036,-2025,-2015,-2005,-1995,-1986,-1978,-1970,-1962,-1954,-1947,-1940,-1934,-1927,-1921,-1916,
+-1910,-1905,-1900,-1895,-1890,-1886,-1881,-1877,-1873,-1869,-1864,-1860,-1856,-1852,-1848,-1844,-1840,-1836,-1832,-1827,
+-1823,-1818,-1813,-1808,-1802,-1797,-1791,-1786,-1780,-1774,-1768,-1762,-1755,-1748,-1741,-1734,-1728,-1721,-1713,-1706,
+-1699,-1691,-1684,-1677,-1670,-1663,-1655,-1648,-1641,-1634,-1627,-1620,-1613,-1607,-1600,-1594,-1588,-1582,-1576,-1570,
+-1564,-1559,-1554,-1548,-1544,-1539,-1535,-1531,-1527,-1523,-1519,-1515,-1512,-1508,-1505,-1502,-1499,-1496,-1493,-1490,
+-1487,-1484,-1481,-1479,-1476,-1472,-1469,-1466,-1463,-1459,-1456,-1452,-1448,-1444,-1441,-1437,-1433,-1429,-1425,-1420,
+-1416,-1411,-1407,-1402,-1398,-1393,-1389,-1385,-1380,-1376,-1371,-1367,-1363,-1359,-1355,-1351,-1347,-1343,-1339,-1335,
+-1332,-1328,-1325,-1323,-1321,-1318,-1316,-1314,-1313,-1312,-1311,-1310,-1310,-1310,-1310,-1311,-1311,-1312,-1314,-1315,
+-1316,-1317,-1319,-1321,-1323,-1326,-1328,-1331,-1333,-1335,-1338,-1340,-1342,-1345,-1347,-1349,-1352,-1354,-1356,-1358,
+-1360,-1362,-1364,-1366,-1367,-1368,-1369,-1370,-1371,-1371,-1371,-1371,-1370,-1369,-1368,-1367,-1355,-1353,-1352,-1350,
+-1349,-1347,-1345,-1343,-1341,-1339,-1336,-1334,-1331,-1329,-1326,-1324,-1321,-1319,-1316,-1314,-1312,-1310,-1308,-1307,
+-1305,-1303,-1302,-1300,-1299,-1298,-1298,-1297,-1297,-1297,-1297,-1297,-1298,-1299,-1300,-1302,-1303,-1304,-1306,-1308,
+-1309,-1311,-1313,-1315,-1318,-1320,-1323,-1325,-1328,-1330,-1332,-1334,-1336,-1338,-1340,-1341,-1342,-1343,-1343,-1344,
+-1344,-1344,-1344,-1342,-1341,-1339,-1336,-1333,-1330,-1326,-1321,-1315,-1309,-1303,-1295,-1287,-1279,-1270,-1260,-1250,
+-1239,-1227,-1214,-1202,-1188,-1174,-1160,-1146,-1131,-1115,-1100,-1083,-1067,-1049,-1031,-1013,-995,-977,-958,-939,
+-920,-901,-882,-864,-846,-828,-811,-793,-776,-759,-742,-725,-709,-693,-678,-663,-649,-636,-623,-611,
+-600,-589,-579,-570,-562,-554,-547,-541,-535,-531,-527,-524,-522,-521,-521,-521,-522,-524,-527,-530,
+-534,-539,-544,-549,-555,-562,-569,-577,-585,-594,-603,-612,-622,-632,-642,-652,-662,-672,-682,-692,
+-702,-712,-722,-731,-741,-750,-759,-767,-776,-784,-792,-800,-806,-812,-817,-822,-827,-831,-835,-838,
+-841,-843,-845,-846,-847,-847,-846,-845,-843,-841,-839,-836,-832,-827,-823,-818,-813,-808,-802,-796,
+-789,-782,-774,-766,-759,-751,-744,-736,-727,-719,-710,-701,-692,-684,-675,-667,-658,-650,-642,-634,
+-626,-618,-610,-602,-595,-588,-581,-574,-568,-561,-556,-550,-545,-540,-535,-531,-526,-522,-519,-515,
+-512,-509,-507,-505,-503,-501,-499,-499,-498,-498,-498,-498,-498,-499,-500,-501,-502,-504,-506,-508,
+-511,-513,-516,-520,-523,-527,-531,-536,-540,-545,-550,-555,-560,-566,-573,-579,-586,-593,-600,-608,
+-615,-623,-632,-640,-649,-658,-667,-677,-686,-696,-707,-717,-728,-739,-751,-763,-774,-786,-799,-811,
+-823,-835,-848,-860,-873,-886,-900,-913,-926,-939,-953,-966,-980,-993,-1006,-1019,-1033,-1046,-1059,-1072,
+-1084,-1097,-1109,-1122,-1134,-1146,-1158,-1170,-1182,-1193,-1204,-1215,-1226,-1237,-1248,-1258,-1268,-1278,-1288,-1298,
+-1308,-1317,-1327,-1336,-1345,-1354,-1362,-1371,-1380,-1388,-1397,-1405,-1414,-1423,-1431,-1440,-1449,-1458,-1467,-1475,
+-1484,-1493,-1503,-1512,-1521,-1531,-1540,-1550,-1560,-1571,-1581,-1592,-1602,-1613,-1624,-1635,-1646,-1657,-1669,-1681,
+-1693,-1705,-1717,-1730,-1742,-1755,-1768,-1780,-1793,-1806,-1820,-1833,-1846,-1860,-1873,-1886,-1900,-1913,-1927,-1941,
+-1954,-1968,-1981,-1994,-2007,-2021,-2034,-2047,-2061,-2074,-2088,-2101,-2115,-2128,-2141,-2154,-2167,-2180,-2194,-2207,
+-2220,-2233,-2247,-2260,-2273,-2286,-2300,-2313,-2327,-2341,-2355,-2369,-2383,-2397,-2411,-2425,-2440,-2455,-2469,-2484,
+-2499,-2514,-2530,-2545,-2561,-2577,-2593,-2609,-2625,-2642,-2659,-2675,-2692,-2709,-2726,-2743,-2761,-2778,-2796,-2813,
+-2831,-2848,-2866,-2883,-2901,-2918,-2936,-2953,-2971,-2988,-3005,-3021,-3038,-3054,-3071,-3087,-3103,-3118,-3133,-3148,
+-3163,-3177,-3192,-3205,-3218,-3231,-3244,-3256,-3268,-3279,-3290,-3301,-3311,-3321,-3331,-3340,-3349,-3358,-3366,-3373,
+-3380,-3388,-3395,-3401,-3407,-3413,-3419,-3425,-3431,-3436,-3441,-3447,-3452,-3457,-3461,-3466,-3471,-3475,-3480,-3484,
+-3489,-3494,-3499,-3503,-3508,-3513,-3518,-3524,-3529,-3535,-3541,-3547,-3553,-3560,-3566,-3572,-3579,-3587,-3594,-3602,
+-3610,-3617,-3625,-3633,-3642,-3651,-3659,-3669,-3678,-3687,-3696,-3704,-3714,-3723,-3732,-3741,-3751,-3760,-3769,-3778,
+-3787,-3796,-3804,-3813,-3821,-3829,-3837,-3844,-3852,-3859,-3866,-3872,-3879,-3885,-3891,-3896,-3901,-3905,-3909,-3913,
+-3916,-3920,-3922,-3924,-3926,-3928,-3929,-3931,-3931,-3931,-3931,-3930,-3930,-3929,-3928,-3925,-3922,-3920,-3917,-3914,
+-3911,-3908,-3904,-3900,-3897,-3893,-3889,-3885,-3881,-3877,-3872,-3868,-3864,-3859,-3855,-3851,-3847,-3843,-3838,-3833,
+-3829,-3825,-3820,-3816,-3812,-3808,-3805,-3802,-3801,-3800,-3798,-3797,-3796,-3796,-3798,-3801,-3804,-3805,-3805,-3805,
+-3807,-3813,-3820,-3826,-3830,-3829,-3825,-3821,-3818,-3817,-3818,-3821,-3825,-3831,-3838,-3844,-3849,-3854,-3860,-3867,
+-3877,-3886,-3895,-3900,-3906,-3916,-3931,-3950,-3970,-3985,-3992,-3992,-3989,-3988,-3993,-4002,-4014,-4025,-4034,-4044,
+-4054,-4066,-4078,-4090,-4101,-4111,-4122,-4134,-4146,-4157,-4168,-4179,-4190,-4201,-4212,-4222,-4233,-4242,-4252,-4262,
+-4272,-4281,-4290,-4299,-4308,-4316,-4324,-4332,-4340,-4347,-4354,-4360,-4367,-4374,-4380,-4385,-4390,-4395,-4400,-4404,
+-4408,-4412,-4416,-4419,-4422,-4425,-4428,-4430,-4432,-4434,-4436,-4437,-4439,-4440,-4441,-4442,-4442,-4443,-4443,-4444,
+-4444,-4444,-4444,-4444,-4444,-4444,-4444,-4444,-4444,-4443,-4443,-4443,-4443,-4442,-4442,-4442,-4442,-4442,-4442,-4442,
+-4442,-4442,-4442,-4443,-4443,-4444,-4444,-4445,-4445,-4446,-4446,-4447,-4448,-4448,-4449,-4450,-4450,-4451,-4452,-4453,
+-4453,-4454,-4454,-4455,-4455,-4456,-4456,-4457,-4457,-4457,-4457,-4457,-4457,-4457,-4456,-4456,-4455,-4454,-4453,-4452,
+-4451,-4450,-4449,-4447,-4445,-4444,-4442,-4440,-4438,-4435,-4433,-4430,-4428,-4425,-4422,-4419,-4416,-4413,-4410,-4407,
+-4404,-4400,-4397,-4393,-4390,-4387,-4383,-4380,-4376,-4372,-4368,-4365,-4361,-4358,-4354,-4351,-4347,-4343,-4340,-4336,
+-4333,-4329,-4325,-4322,-4318,-4315,-4312,-4309,-4305,-4302,-4299,-4295,-4292,-4289,-4286,-4282,-4279,-4276,-4273,-4270,
+-4266,-4263,-4260,-4257,-4254,-4250,-4247,-4243,-4240,-4237,-4233,-4229,-4226,-4222,-4218,-4215,-4211,-4207,-4203,-4199,
+-4194,-4190,-4186,-4182,-4177,-4173,-4168,-4164,-4159,-4154,-4149,-4144,-4139,-4134,-4129,-4124,-4119,-4114,-4108,-4103,
+-4097,-4092,-4086,-4080,-4075,-4069,-4063,-4057,-4051,-4045,-4039,-4033,-4026,-4020,-4013,-4007,-4001,-3994,-3987,-3981,
+-3974,-3967,-3960,-3953,-3946,-3938,-3931,-3924,-3916,-3909,-3901,-3893,-3885,-3877,-3869,-3861,-3853,-3845,-3836,-3828,
+-3820,-3811,-3802,-3793,-3784,-3775,-3766,-3757,-3748,-3739,-3729,-3720,-3711,-3701,-3692,-3682,-3673,-3663,-3653,-3643,
+-3634,-3624,-3614,-3604,-3595,-3585,-3575,-3565,-3555,-3545,-3536,-3526,-3516,-3506,-3496,-3486,-3476,-3466,-3456,-3446,
+-3436,-3426,-3416,-3407,-3397,-3386,-3376,-3366,-3356,-3346,-3336,-3327,-3316,-3306,-3296,-3286,-3276,-3266,-3256,-3246,
+-3236,-3226,-3217,-3207,-3198,-3188,-3178,-3169,-3159,-3149,-3140,-3130,-3121,-3112,-3103,-3094,-3085,-3076,-3067,-3059,
+-3051,-3043,-3035,-3027,-3019,-3011,-3004,-2996,-2989,-2981,-2974,-2967,-2960,-2954,-2947,-2940,-2934,-2928,-2922,-2916,
+-2910,-2905,-2899,-2894,-2889,-2885,-2880,-2875,-2871,-2867,-2863,-2860,-2857,-2853,-2850,-2847,-2844,-2841,-2839,-2836,
+-2834,-2831,-2829,-2827,-2825,-2823,-2821,-2819,-2817,-2816,-2814,-2812,-2810,-2808,-2806,-2804,-2802,-2800,-2798,-2796,
+-2793,-2791,-2788,-2785,-2783,-2781,-2779,-2777,-2774,-2772,-2770,-2767,-2765,-2762,-2759,-2757,-2754,-2751,-2748,-2745,
+-2742,-2739,-2736,-2733,-2730,-2727,-2723,-2720,-2717,-2714,-2710,-2707,-2704,-2701,-2698,-2694,-2691,-2688,-2685,-2682,
+-2678,-2675,-2672,-2669,-2666,-2663,-2661,-2658,-2655,-2652,-2650,-2647,-2645,-2643,-2641,-2638,-2636,-2635,-2633,-2631,
+-2630,-2628,-2627,-2626,-2625,-2624,-2624,-2623,-2623,-2623,-2623,-2623,-2623,-2623,-2624,-2625,-2626,-2627,-2628,-2629,
+-2631,-2632,-2634,-2636,-2638,-2639,-2641,-2643,-2644,-2646,-2648,-2650,-2651,-2653,-2655,-2656,-2658,-2659,-2661,-2662,
+-2663,-2665,-2666,-2666,-2667,-2667,-2668,-2668,-2667,-2666,-2665,-2663,-2662,-2659,-2657,-2654,-2650,-2646,-2642,-2638,
+-2633,-2628,-2622,-2615,-2608,-2600,-2593,-2585,-2577,-2568,-2560,-2551,-2542,-2533,-2523,-2513,-2503,-2492,-2480,-2467,
+-2453,-2439,-2424,-2409,-2394,-2378,-2363,-2347,-2331,-2316,-2300,-2284,-2268,-2252,-2236,-2220,-2205,-2190,-2175,-2160,
+-2145,-2131,-2116,-2103,-2089,-2076,-2063,-2050,-2037,-2025,-2013,-2002,-1990,-1979,-1969,-1958,-1948,-1938,-1928,-1919,
+-1910,-1901,-1893,-1884,-1876,-1868,-1861,-1853,-1846,-1839,-1832,-1825,-1819,-1812,-1806,-1800,-1794,-1787,-1781,-1775,
+-1769,-1763,-1757,-1752,-1746,-1740,-1735,-1729,-1723,-1718,-1712,-1707,-1701,-1695,-1689,-1684,-1678,-1673,-1667,-1662,
+-1656,-1651,-1645,-1640,-1635,-1630,-1626,-1621,-1616,-1612,-1607,-1603,-1598,-1594,-1590,-1586,-1583,-1579,-1575,-1571,
+-1568,-1564,-1562,-1559,-1557,-1554,-1552,-1550,-1548,-1547,-1546,-1544,-1543,-1542,-1541,-1540,-1539,-1539,-1538,-1537,
+-1536,-1535,-1533,-1533,-1532,-1531,-1530,-1528,-1527,-1525,-1523,-1521,-1519,-1517,-1515,-1512,-1510,-1507,-1504,-1501,
+-1498,-1495,-1491,-1488,-1484,-1480,-1476,-1472,-1468,-1463,-1459,-1454,-1450,-1445,-1441,-1436,-1432,-1427,-1423,-1418,
+-1414,-1410,-1406,-1402,-1398,-1394,-1390,-1387,-1383,-1380,-1377,-1374,-1372,-1370,-1368,-1367,-1365,-1364,-1363,-1361,
+-1360,-1359,-1359,-1358,-1358,-1357,-1357,-1357,-1357,-1357,-1357,-1357,-1357,-1358,-1358,-1358,-1359,-1360,-1360,-1360,
+-1361,-1361,-1361,-1362,-1362,-1362,-1362,-1362,-1362,-1361,-1361,-1360,-1359,-1358,-1357,-1356,-1355,-1357,-1355,-1354,
+-1352,-1351,-1349,-1347,-1346,-1344,-1342,-1341,-1339,-1338,-1337,-1336,-1334,-1333,-1332,-1331,-1330,-1330,-1329,-1329,
+-1328,-1328,-1328,-1329,-1329,-1330,-1330,-1331,-1332,-1333,-1335,-1337,-1339,-1342,-1344,-1347,-1349,-1352,-1355,-1357,
+-1360,-1363,-1366,-1370,-1373,-1376,-1379,-1382,-1385,-1388,-1391,-1394,-1396,-1399,-1401,-1403,-1405,-1407,-1408,-1409,
+-1410,-1410,-1410,-1409,-1408,-1407,-1405,-1402,-1399,-1396,-1392,-1387,-1382,-1376,-1369,-1362,-1354,-1346,-1337,-1328,
+-1318,-1308,-1297,-1285,-1273,-1260,-1246,-1232,-1217,-1203,-1188,-1172,-1156,-1140,-1124,-1107,-1089,-1072,-1055,-1037,
+-1020,-1003,-985,-967,-949,-931,-914,-897,-880,-864,-847,-831,-815,-799,-784,-770,-756,-743,-730,-717,
+-706,-695,-684,-675,-666,-658,-650,-643,-637,-632,-627,-624,-621,-619,-617,-617,-617,-618,-620,-622,
+-625,-629,-633,-638,-643,-649,-655,-662,-670,-678,-686,-695,-705,-714,-724,-734,-744,-754,-764,-774,
+-784,-794,-804,-813,-823,-832,-842,-851,-860,-869,-877,-885,-892,-900,-906,-913,-918,-923,-927,-931,
+-935,-938,-941,-944,-945,-946,-947,-947,-947,-946,-944,-942,-939,-936,-933,-929,-925,-920,-915,-909,
+-903,-897,-890,-883,-876,-868,-861,-853,-845,-837,-828,-820,-811,-802,-794,-785,-777,-768,-759,-750,
+-742,-734,-726,-718,-710,-703,-695,-688,-681,-675,-668,-662,-656,-651,-646,-641,-636,-632,-628,-624,
+-621,-618,-616,-613,-611,-610,-608,-607,-607,-607,-607,-608,-609,-610,-611,-613,-615,-617,-620,-623,
+-627,-630,-634,-638,-643,-647,-653,-658,-663,-669,-675,-681,-688,-694,-701,-708,-716,-723,-731,-739,
+-748,-756,-765,-774,-783,-792,-802,-811,-821,-831,-841,-851,-862,-872,-883,-894,-904,-915,-926,-937,
+-949,-960,-971,-983,-994,-1006,-1018,-1030,-1041,-1053,-1065,-1076,-1088,-1100,-1111,-1122,-1134,-1145,-1157,-1168,
+-1179,-1190,-1201,-1212,-1223,-1233,-1244,-1254,-1264,-1274,-1285,-1294,-1304,-1314,-1323,-1333,-1342,-1352,-1361,-1370,
+-1379,-1388,-1397,-1406,-1414,-1423,-1431,-1439,-1448,-1457,-1465,-1474,-1482,-1491,-1499,-1508,-1516,-1525,-1534,-1543,
+-1552,-1561,-1570,-1579,-1588,-1597,-1606,-1616,-1626,-1636,-1646,-1656,-1666,-1677,-1687,-1698,-1708,-1719,-1730,-1741,
+-1752,-1763,-1775,-1786,-1798,-1810,-1822,-1834,-1846,-1858,-1870,-1882,-1894,-1906,-1918,-1931,-1943,-1955,-1968,-1980,
+-1992,-2005,-2017,-2029,-2042,-2054,-2066,-2078,-2091,-2103,-2115,-2127,-2139,-2151,-2164,-2176,-2187,-2199,-2211,-2223,
+-2235,-2248,-2260,-2272,-2284,-2296,-2308,-2320,-2332,-2345,-2357,-2370,-2383,-2396,-2409,-2421,-2434,-2447,-2460,-2474,
+-2487,-2501,-2514,-2528,-2542,-2556,-2571,-2586,-2600,-2615,-2630,-2645,-2660,-2675,-2691,-2706,-2721,-2737,-2752,-2768,
+-2784,-2800,-2816,-2832,-2848,-2863,-2879,-2895,-2910,-2926,-2942,-2957,-2973,-2988,-3003,-3018,-3034,-3048,-3063,-3077,
+-3091,-3105,-3119,-3133,-3146,-3160,-3172,-3185,-3197,-3209,-3220,-3232,-3243,-3254,-3265,-3275,-3286,-3296,-3305,-3314,
+-3323,-3332,-3340,-3349,-3357,-3365,-3373,-3381,-3389,-3396,-3403,-3410,-3417,-3423,-3430,-3437,-3443,-3450,-3456,-3463,
+-3469,-3475,-3481,-3487,-3494,-3501,-3507,-3514,-3521,-3528,-3535,-3542,-3549,-3556,-3563,-3570,-3577,-3585,-3592,-3600,
+-3608,-3616,-3625,-3633,-3641,-3649,-3657,-3665,-3674,-3682,-3690,-3699,-3708,-3716,-3725,-3733,-3741,-3750,-3758,-3766,
+-3774,-3781,-3789,-3796,-3804,-3811,-3818,-3824,-3831,-3837,-3843,-3848,-3854,-3859,-3864,-3868,-3872,-3876,-3879,-3882,
+-3885,-3887,-3889,-3891,-3893,-3894,-3895,-3895,-3895,-3895,-3895,-3894,-3893,-3891,-3889,-3887,-3884,-3882,-3879,-3876,
+-3872,-3868,-3864,-3860,-3855,-3851,-3846,-3841,-3836,-3831,-3826,-3821,-3816,-3811,-3805,-3800,-3795,-3789,-3784,-3779,
+-3774,-3769,-3764,-3759,-3755,-3750,-3746,-3742,-3739,-3736,-3734,-3732,-3730,-3729,-3729,-3727,-3724,-3720,-3714,-3710,
+-3706,-3705,-3705,-3705,-3706,-3706,-3707,-3709,-3712,-3715,-3718,-3721,-3725,-3730,-3737,-3744,-3751,-3756,-3761,-3770,
+-3785,-3805,-3829,-3851,-3867,-3876,-3879,-3881,-3883,-3886,-3888,-3888,-3884,-3879,-3877,-3878,-3884,-3894,-3903,-3912,
+-3921,-3930,-3941,-3953,-3965,-3977,-3986,-3995,-4005,-4016,-4029,-4043,-4056,-4067,-4076,-4083,-4090,-4098,-4106,-4115,
+-4124,-4133,-4141,-4150,-4158,-4166,-4175,-4183,-4191,-4198,-4205,-4211,-4218,-4225,-4231,-4238,-4243,-4249,-4254,-4259,
+-4264,-4269,-4273,-4277,-4281,-4285,-4289,-4292,-4296,-4299,-4301,-4304,-4307,-4310,-4312,-4315,-4317,-4318,-4320,-4322,
+-4324,-4326,-4328,-4330,-4331,-4332,-4334,-4336,-4338,-4339,-4341,-4343,-4344,-4345,-4347,-4349,-4351,-4352,-4354,-4356,
+-4357,-4359,-4361,-4363,-4365,-4367,-4368,-4370,-4372,-4374,-4376,-4378,-4380,-4381,-4383,-4385,-4386,-4388,-4390,-4391,
+-4392,-4394,-4395,-4397,-4398,-4399,-4400,-4401,-4401,-4402,-4402,-4403,-4403,-4403,-4403,-4403,-4402,-4402,-4401,-4400,
+-4399,-4398,-4397,-4395,-4394,-4392,-4390,-4388,-4386,-4384,-4382,-4379,-4377,-4374,-4371,-4368,-4365,-4362,-4359,-4355,
+-4352,-4348,-4345,-4341,-4338,-4335,-4331,-4327,-4324,-4320,-4317,-4313,-4309,-4306,-4302,-4299,-4295,-4292,-4289,-4285,
+-4282,-4279,-4275,-4272,-4269,-4266,-4263,-4260,-4257,-4254,-4252,-4249,-4246,-4243,-4241,-4238,-4236,-4233,-4230,-4228,
+-4226,-4223,-4221,-4218,-4216,-4213,-4211,-4208,-4206,-4203,-4200,-4198,-4195,-4192,-4189,-4186,-4183,-4180,-4176,-4173,
+-4170,-4166,-4163,-4159,-4155,-4151,-4147,-4143,-4139,-4135,-4130,-4126,-4121,-4116,-4111,-4106,-4101,-4096,-4091,-4085,
+-4080,-4074,-4068,-4062,-4056,-4050,-4044,-4038,-4031,-4025,-4018,-4011,-4004,-3997,-3990,-3983,-3976,-3969,-3961,-3954,
+-3946,-3938,-3931,-3922,-3914,-3906,-3898,-3889,-3881,-3872,-3863,-3854,-3846,-3837,-3828,-3819,-3811,-3802,-3792,-3783,
+-3774,-3765,-3756,-3746,-3737,-3727,-3718,-3708,-3699,-3689,-3679,-3670,-3660,-3651,-3641,-3632,-3622,-3613,-3603,-3593,
+-3584,-3574,-3565,-3555,-3546,-3536,-3527,-3517,-3508,-3499,-3489,-3480,-3471,-3462,-3453,-3444,-3435,-3426,-3417,-3408,
+-3399,-3391,-3382,-3374,-3365,-3356,-3347,-3339,-3330,-3321,-3312,-3303,-3293,-3284,-3275,-3265,-3256,-3247,-3237,-3228,
+-3219,-3210,-3201,-3192,-3183,-3173,-3164,-3154,-3145,-3136,-3127,-3119,-3110,-3101,-3092,-3083,-3074,-3065,-3056,-3047,
+-3039,-3031,-3022,-3014,-3006,-2998,-2990,-2982,-2975,-2967,-2960,-2952,-2945,-2939,-2932,-2926,-2919,-2913,-2907,-2900,
+-2894,-2888,-2883,-2877,-2872,-2867,-2862,-2857,-2852,-2848,-2843,-2839,-2835,-2832,-2828,-2825,-2822,-2819,-2816,-2814,
+-2811,-2808,-2806,-2804,-2802,-2800,-2798,-2796,-2794,-2792,-2790,-2788,-2786,-2785,-2783,-2782,-2780,-2779,-2778,-2777,
+-2775,-2774,-2773,-2772,-2771,-2770,-2769,-2767,-2766,-2765,-2764,-2763,-2761,-2760,-2759,-2757,-2756,-2754,-2753,-2751,
+-2749,-2747,-2745,-2743,-2741,-2739,-2736,-2734,-2732,-2730,-2727,-2725,-2722,-2720,-2717,-2715,-2712,-2709,-2706,-2704,
+-2701,-2698,-2695,-2693,-2690,-2687,-2685,-2682,-2679,-2677,-2674,-2672,-2669,-2667,-2665,-2662,-2660,-2658,-2656,-2654,
+-2652,-2651,-2649,-2648,-2646,-2645,-2644,-2643,-2642,-2642,-2642,-2642,-2642,-2642,-2642,-2643,-2644,-2645,-2646,-2647,
+-2648,-2650,-2652,-2653,-2655,-2657,-2658,-2660,-2662,-2664,-2665,-2667,-2669,-2671,-2672,-2674,-2676,-2678,-2680,-2682,
+-2683,-2685,-2687,-2688,-2690,-2691,-2692,-2692,-2693,-2693,-2693,-2693,-2692,-2691,-2690,-2688,-2686,-2684,-2682,-2679,
+-2675,-2671,-2667,-2661,-2656,-2650,-2644,-2637,-2630,-2622,-2615,-2609,-2603,-2596,-2588,-2578,-2567,-2556,-2544,-2532,
+-2520,-2507,-2494,-2480,-2466,-2452,-2437,-2422,-2407,-2392,-2376,-2360,-2345,-2329,-2313,-2297,-2281,-2265,-2249,-2233,
+-2217,-2201,-2185,-2169,-2154,-2138,-2123,-2108,-2093,-2078,-2063,-2049,-2035,-2021,-2007,-1994,-1980,-1967,-1954,-1942,
+-1929,-1917,-1905,-1894,-1882,-1871,-1859,-1849,-1838,-1828,-1818,-1807,-1798,-1788,-1778,-1769,-1761,-1752,-1744,-1736,
+-1728,-1720,-1712,-1705,-1697,-1690,-1683,-1676,-1669,-1662,-1656,-1649,-1643,-1637,-1632,-1626,-1621,-1616,-1611,-1605,
+-1601,-1596,-1591,-1586,-1582,-1578,-1575,-1571,-1568,-1565,-1562,-1559,-1557,-1554,-1552,-1550,-1548,-1545,-1543,-1541,
+-1540,-1538,-1537,-1536,-1536,-1535,-1535,-1535,-1535,-1535,-1535,-1536,-1537,-1538,-1539,-1540,-1542,-1543,-1545,-1547,
+-1548,-1549,-1551,-1552,-1553,-1554,-1555,-1556,-1556,-1557,-1557,-1557,-1557,-1558,-1558,-1558,-1557,-1556,-1555,-1554,
+-1553,-1551,-1550,-1548,-1545,-1543,-1541,-1538,-1535,-1532,-1529,-1526,-1522,-1519,-1515,-1511,-1508,-1504,-1500,-1496,
+-1492,-1488,-1483,-1479,-1475,-1471,-1466,-1462,-1458,-1454,-1450,-1447,-1443,-1440,-1436,-1433,-1429,-1426,-1423,-1420,
+-1418,-1415,-1413,-1410,-1408,-1405,-1403,-1401,-1399,-1397,-1395,-1394,-1392,-1390,-1388,-1386,-1385,-1383,-1382,-1380,
+-1379,-1377,-1376,-1375,-1374,-1373,-1372,-1370,-1369,-1368,-1366,-1365,-1364,-1363,-1361,-1360,-1358,-1357,-1372,-1370,
+-1369,-1367,-1366,-1365,-1364,-1363,-1362,-1361,-1360,-1360,-1359,-1359,-1358,-1358,-1358,-1359,-1359,-1360,-1360,-1361,
+-1362,-1363,-1365,-1366,-1368,-1369,-1371,-1374,-1376,-1379,-1381,-1384,-1387,-1390,-1394,-1397,-1400,-1404,-1408,-1411,
+-1415,-1418,-1422,-1426,-1430,-1433,-1437,-1441,-1444,-1447,-1451,-1454,-1456,-1459,-1461,-1464,-1466,-1468,-1469,-1470,
+-1471,-1471,-1471,-1470,-1469,-1468,-1466,-1464,-1461,-1457,-1453,-1449,-1444,-1439,-1432,-1426,-1418,-1410,-1402,-1393,
+-1384,-1374,-1364,-1353,-1341,-1329,-1316,-1302,-1288,-1274,-1259,-1245,-1230,-1215,-1199,-1184,-1168,-1151,-1134,-1117,
+-1100,-1084,-1068,-1051,-1034,-1017,-1000,-984,-968,-952,-936,-921,-906,-891,-876,-862,-849,-836,-823,-811,
+-799,-787,-777,-768,-759,-751,-743,-736,-730,-724,-720,-716,-713,-710,-709,-708,-707,-708,-708,-710,
+-712,-714,-718,-722,-727,-733,-738,-745,-751,-759,-767,-775,-784,-793,-802,-812,-821,-831,-841,-851,
+-861,-871,-881,-891,-900,-910,-919,-928,-938,-947,-956,-964,-972,-980,-987,-995,-1002,-1008,-1014,-1019,
+-1024,-1028,-1032,-1035,-1038,-1041,-1042,-1043,-1044,-1044,-1044,-1044,-1043,-1041,-1038,-1035,-1032,-1029,-1025,-1021,
+-1016,-1011,-1006,-1000,-994,-987,-981,-974,-967,-959,-952,-944,-936,-928,-919,-911,-903,-896,-888,-879,
+-871,-863,-855,-848,-840,-833,-826,-819,-812,-805,-798,-792,-786,-780,-775,-770,-766,-762,-758,-754,
+-751,-748,-745,-743,-741,-740,-739,-738,-737,-737,-738,-738,-739,-740,-742,-744,-746,-749,-752,-756,
+-759,-763,-768,-772,-777,-782,-787,-793,-799,-805,-811,-818,-825,-832,-839,-847,-854,-862,-870,-878,
+-886,-895,-903,-912,-921,-930,-939,-948,-957,-966,-976,-985,-994,-1004,-1014,-1024,-1034,-1044,-1054,-1063,
+-1073,-1083,-1093,-1103,-1113,-1123,-1133,-1143,-1153,-1163,-1173,-1183,-1193,-1203,-1212,-1222,-1231,-1241,-1250,-1260,
+-1269,-1278,-1287,-1297,-1306,-1315,-1324,-1333,-1342,-1351,-1359,-1368,-1377,-1386,-1394,-1403,-1411,-1420,-1428,-1436,
+-1445,-1453,-1461,-1469,-1478,-1486,-1494,-1503,-1511,-1520,-1528,-1537,-1545,-1554,-1562,-1571,-1579,-1588,-1597,-1606,
+-1615,-1624,-1633,-1642,-1652,-1661,-1670,-1680,-1690,-1700,-1710,-1720,-1730,-1740,-1751,-1761,-1772,-1782,-1793,-1804,
+-1815,-1826,-1837,-1848,-1860,-1871,-1882,-1893,-1905,-1916,-1928,-1940,-1951,-1963,-1974,-1986,-1998,-2010,-2021,-2033,
+-2044,-2056,-2067,-2079,-2090,-2102,-2113,-2124,-2136,-2147,-2158,-2169,-2180,-2192,-2203,-2214,-2225,-2236,-2247,-2258,
+-2269,-2280,-2290,-2301,-2312,-2323,-2334,-2345,-2356,-2367,-2379,-2390,-2402,-2413,-2424,-2436,-2447,-2459,-2470,-2482,
+-2494,-2506,-2518,-2530,-2542,-2555,-2567,-2580,-2593,-2606,-2619,-2632,-2645,-2658,-2672,-2686,-2699,-2713,-2726,-2740,
+-2754,-2768,-2783,-2797,-2811,-2825,-2839,-2853,-2868,-2882,-2896,-2911,-2925,-2939,-2953,-2967,-2982,-2996,-3009,-3023,
+-3037,-3050,-3064,-3077,-3090,-3103,-3116,-3129,-3142,-3154,-3166,-3178,-3190,-3202,-3213,-3224,-3235,-3246,-3257,-3267,
+-3278,-3288,-3298,-3308,-3318,-3327,-3336,-3345,-3354,-3364,-3372,-3381,-3389,-3398,-3406,-3414,-3422,-3431,-3438,-3446,
+-3454,-3462,-3470,-3478,-3486,-3493,-3501,-3509,-3516,-3524,-3531,-3538,-3546,-3553,-3561,-3569,-3577,-3585,-3592,-3600,
+-3608,-3615,-3623,-3632,-3640,-3647,-3655,-3662,-3670,-3677,-3685,-3693,-3701,-3708,-3715,-3722,-3729,-3736,-3744,-3751,
+-3757,-3764,-3770,-3776,-3783,-3788,-3794,-3799,-3804,-3809,-3814,-3819,-3823,-3827,-3831,-3834,-3837,-3840,-3842,-3844,
+-3846,-3848,-3849,-3850,-3851,-3852,-3852,-3852,-3851,-3851,-3850,-3848,-3847,-3845,-3843,-3840,-3837,-3834,-3831,-3828,
+-3824,-3820,-3815,-3811,-3807,-3803,-3798,-3793,-3787,-3782,-3777,-3772,-3767,-3762,-3757,-3751,-3746,-3741,-3736,-3731,
+-3725,-3719,-3714,-3709,-3704,-3700,-3695,-3690,-3685,-3681,-3677,-3674,-3671,-3668,-3664,-3661,-3659,-3659,-3659,-3660,
+-3659,-3656,-3652,-3646,-3642,-3639,-3638,-3640,-3642,-3646,-3649,-3651,-3653,-3655,-3657,-3661,-3666,-3675,-3686,-3699,
+-3714,-3729,-3744,-3757,-3765,-3770,-3770,-3768,-3765,-3763,-3763,-3764,-3767,-3769,-3771,-3771,-3772,-3774,-3778,-3785,
+-3792,-3801,-3810,-3818,-3828,-3839,-3852,-3868,-3884,-3898,-3911,-3919,-3924,-3926,-3929,-3935,-3945,-3957,-3971,-3983,
+-3992,-3997,-4000,-4001,-4003,-4006,-4011,-4017,-4023,-4029,-4034,-4040,-4046,-4051,-4057,-4062,-4067,-4073,-4079,-4085,
+-4090,-4095,-4099,-4103,-4108,-4112,-4117,-4122,-4126,-4129,-4133,-4136,-4141,-4145,-4149,-4152,-4156,-4159,-4162,-4166,
+-4170,-4174,-4177,-4181,-4184,-4187,-4191,-4195,-4198,-4202,-4205,-4208,-4212,-4216,-4220,-4223,-4227,-4230,-4234,-4238,
+-4242,-4246,-4250,-4254,-4257,-4261,-4265,-4269,-4273,-4277,-4281,-4284,-4288,-4292,-4295,-4299,-4303,-4306,-4309,-4312,
+-4315,-4318,-4321,-4324,-4326,-4329,-4331,-4334,-4336,-4338,-4339,-4341,-4342,-4343,-4344,-4345,-4346,-4346,-4346,-4346,
+-4346,-4346,-4346,-4345,-4344,-4343,-4342,-4341,-4339,-4338,-4336,-4334,-4332,-4329,-4327,-4324,-4322,-4319,-4316,-4313,
+-4310,-4307,-4304,-4301,-4298,-4294,-4291,-4287,-4284,-4280,-4277,-4274,-4270,-4267,-4263,-4260,-4256,-4253,-4249,-4246,
+-4243,-4239,-4236,-4233,-4230,-4227,-4224,-4221,-4218,-4215,-4212,-4209,-4206,-4204,-4201,-4199,-4196,-4194,-4191,-4189,
+-4186,-4184,-4181,-4179,-4176,-4174,-4171,-4169,-4167,-4164,-4162,-4159,-4157,-4154,-4151,-4148,-4145,-4142,-4139,-4136,
+-4133,-4130,-4126,-4123,-4119,-4115,-4111,-4108,-4103,-4099,-4095,-4090,-4086,-4081,-4076,-4071,-4066,-4061,-4055,-4050,
+-4044,-4038,-4032,-4025,-4019,-4013,-4006,-3999,-3992,-3985,-3978,-3971,-3964,-3956,-3949,-3941,-3933,-3925,-3917,-3909,
+-3901,-3893,-3885,-3877,-3868,-3859,-3850,-3841,-3832,-3823,-3814,-3804,-3795,-3786,-3776,-3767,-3757,-3748,-3738,-3729,
+-3719,-3710,-3700,-3691,-3681,-3671,-3662,-3652,-3642,-3633,-3623,-3613,-3604,-3594,-3585,-3575,-3566,-3556,-3547,-3538,
+-3528,-3519,-3510,-3501,-3491,-3482,-3473,-3464,-3456,-3447,-3438,-3429,-3421,-3412,-3404,-3395,-3387,-3378,-3370,-3361,
+-3353,-3344,-3336,-3328,-3319,-3311,-3303,-3294,-3286,-3278,-3270,-3261,-3253,-3245,-3236,-3227,-3219,-3210,-3200,-3191,
+-3183,-3174,-3166,-3157,-3149,-3140,-3131,-3122,-3113,-3104,-3095,-3086,-3078,-3069,-3060,-3052,-3043,-3034,-3026,-3017,
+-3008,-3000,-2991,-2983,-2975,-2967,-2959,-2951,-2943,-2935,-2927,-2920,-2913,-2906,-2899,-2892,-2885,-2879,-2872,-2866,
+-2860,-2854,-2848,-2843,-2837,-2832,-2827,-2822,-2817,-2813,-2808,-2804,-2800,-2797,-2793,-2790,-2787,-2784,-2782,-2780,
+-2777,-2775,-2773,-2772,-2770,-2769,-2768,-2767,-2765,-2765,-2764,-2763,-2762,-2761,-2761,-2760,-2760,-2760,-2759,-2759,
+-2760,-2760,-2760,-2761,-2761,-2762,-2763,-2763,-2764,-2764,-2764,-2764,-2764,-2764,-2764,-2763,-2763,-2763,-2763,-2762,
+-2762,-2761,-2761,-2760,-2759,-2759,-2758,-2757,-2756,-2754,-2753,-2752,-2750,-2749,-2747,-2745,-2743,-2741,-2739,-2737,
+-2735,-2733,-2731,-2729,-2726,-2724,-2721,-2718,-2715,-2713,-2710,-2707,-2705,-2702,-2699,-2696,-2694,-2691,-2688,-2686,
+-2683,-2681,-2679,-2676,-2674,-2672,-2670,-2669,-2667,-2666,-2665,-2663,-2663,-2662,-2661,-2661,-2661,-2661,-2661,-2661,
+-2661,-2662,-2662,-2663,-2664,-2665,-2666,-2667,-2668,-2670,-2671,-2673,-2674,-2676,-2677,-2679,-2680,-2682,-2684,-2685,
+-2687,-2689,-2690,-2692,-2693,-2695,-2696,-2697,-2698,-2699,-2700,-2700,-2701,-2700,-2700,-2699,-2699,-2697,-2696,-2694,
+-2691,-2688,-2684,-2681,-2677,-2673,-2669,-2665,-2659,-2654,-2648,-2642,-2635,-2628,-2620,-2612,-2603,-2594,-2584,-2574,
+-2564,-2554,-2542,-2531,-2519,-2507,-2494,-2482,-2468,-2455,-2441,-2426,-2412,-2397,-2382,-2367,-2351,-2336,-2320,-2305,
+-2289,-2273,-2257,-2241,-2225,-2209,-2193,-2177,-2161,-2145,-2129,-2113,-2097,-2081,-2065,-2050,-2034,-2019,-2004,-1989,
+-1974,-1959,-1944,-1930,-1915,-1901,-1888,-1874,-1861,-1847,-1835,-1822,-1809,-1797,-1785,-1773,-1761,-1750,-1739,-1728,
+-1717,-1706,-1696,-1686,-1677,-1667,-1658,-1649,-1640,-1631,-1623,-1615,-1607,-1600,-1593,-1586,-1579,-1573,-1567,-1561,
+-1555,-1550,-1545,-1540,-1536,-1532,-1528,-1524,-1521,-1518,-1515,-1512,-1510,-1507,-1506,-1504,-1502,-1501,-1500,-1499,
+-1498,-1498,-1498,-1498,-1498,-1499,-1499,-1500,-1501,-1503,-1505,-1506,-1509,-1511,-1513,-1516,-1518,-1521,-1524,-1526,
+-1529,-1532,-1536,-1538,-1541,-1544,-1546,-1549,-1551,-1554,-1557,-1559,-1561,-1563,-1565,-1567,-1568,-1570,-1571,-1572,
+-1573,-1574,-1574,-1575,-1575,-1575,-1574,-1574,-1573,-1572,-1571,-1570,-1568,-1566,-1564,-1562,-1560,-1557,-1555,-1552,
+-1549,-1546,-1542,-1539,-1536,-1533,-1529,-1525,-1521,-1518,-1514,-1510,-1507,-1503,-1499,-1495,-1491,-1487,-1484,-1480,
+-1476,-1473,-1469,-1465,-1462,-1458,-1455,-1451,-1448,-1444,-1441,-1437,-1434,-1431,-1428,-1425,-1422,-1419,-1416,-1413,
+-1410,-1408,-1405,-1403,-1400,-1398,-1396,-1394,-1392,-1389,-1387,-1385,-1383,-1381,-1380,-1378,-1376,-1374,-1372,-1398,
+-1397,-1395,-1394,-1393,-1393,-1392,-1391,-1391,-1390,-1390,-1390,-1390,-1390,-1391,-1392,-1393,-1394,-1395,-1397,-1398,
+-1400,-1403,-1405,-1407,-1410,-1412,-1415,-1418,-1421,-1425,-1428,-1431,-1435,-1439,-1442,-1446,-1451,-1455,-1458,-1462,
+-1466,-1470,-1474,-1478,-1482,-1486,-1490,-1494,-1497,-1500,-1504,-1506,-1509,-1512,-1514,-1516,-1517,-1519,-1520,-1521,
+-1521,-1521,-1521,-1520,-1519,-1518,-1515,-1513,-1510,-1507,-1503,-1498,-1493,-1487,-1481,-1474,-1467,-1460,-1452,-1443,
+-1434,-1425,-1414,-1404,-1392,-1381,-1369,-1356,-1343,-1330,-1316,-1302,-1288,-1273,-1258,-1243,-1228,-1213,-1198,-1183,
+-1167,-1151,-1135,-1119,-1103,-1088,-1072,-1057,-1042,-1027,-1012,-997,-983,-969,-955,-941,-928,-915,-904,-893,
+-882,-872,-862,-853,-844,-836,-829,-822,-816,-811,-806,-801,-798,-795,-793,-791,-791,-791,-791,-792,
+-793,-796,-799,-802,-806,-811,-816,-822,-828,-835,-842,-850,-858,-866,-875,-884,-893,-902,-912,-921,
+-931,-941,-950,-960,-970,-979,-989,-999,-1008,-1017,-1026,-1034,-1043,-1051,-1058,-1066,-1073,-1081,-1087,-1094,
+-1100,-1105,-1110,-1114,-1118,-1121,-1124,-1126,-1129,-1130,-1132,-1132,-1132,-1132,-1131,-1130,-1128,-1126,-1124,-1121,
+-1118,-1114,-1110,-1105,-1101,-1096,-1090,-1085,-1080,-1074,-1068,-1062,-1055,-1048,-1041,-1034,-1026,-1019,-1012,-1005,
+-998,-991,-983,-976,-970,-963,-956,-950,-944,-937,-931,-925,-920,-915,-910,-905,-901,-897,-893,-890,
+-886,-884,-881,-879,-877,-876,-875,-874,-874,-873,-874,-874,-875,-877,-878,-880,-883,-885,-888,-892,
+-896,-900,-904,-908,-913,-918,-923,-928,-934,-941,-947,-953,-960,-966,-973,-980,-988,-995,-1003,-1011,
+-1019,-1026,-1034,-1042,-1051,-1059,-1067,-1076,-1084,-1093,-1102,-1110,-1119,-1127,-1136,-1144,-1153,-1162,-1170,-1179,
+-1188,-1196,-1205,-1214,-1222,-1231,-1239,-1247,-1256,-1264,-1273,-1281,-1289,-1298,-1306,-1314,-1322,-1330,-1338,-1346,
+-1354,-1361,-1369,-1377,-1385,-1393,-1401,-1408,-1416,-1424,-1431,-1439,-1446,-1454,-1462,-1469,-1477,-1485,-1493,-1500,
+-1508,-1516,-1524,-1531,-1539,-1547,-1555,-1563,-1572,-1580,-1588,-1597,-1605,-1614,-1622,-1631,-1640,-1649,-1658,-1667,
+-1676,-1685,-1695,-1704,-1714,-1723,-1733,-1743,-1753,-1763,-1774,-1784,-1795,-1805,-1816,-1826,-1837,-1847,-1858,-1869,
+-1880,-1891,-1902,-1914,-1925,-1936,-1947,-1959,-1970,-1982,-1993,-2004,-2016,-2027,-2038,-2050,-2061,-2073,-2084,-2095,
+-2106,-2117,-2128,-2139,-2150,-2161,-2172,-2183,-2194,-2205,-2215,-2226,-2236,-2247,-2257,-2268,-2278,-2288,-2298,-2309,
+-2319,-2328,-2338,-2348,-2358,-2368,-2378,-2388,-2398,-2408,-2418,-2429,-2439,-2449,-2459,-2469,-2479,-2489,-2499,-2510,
+-2520,-2531,-2541,-2552,-2563,-2573,-2584,-2595,-2606,-2618,-2629,-2640,-2652,-2664,-2675,-2687,-2699,-2711,-2723,-2736,
+-2748,-2760,-2773,-2785,-2797,-2810,-2823,-2836,-2849,-2861,-2874,-2887,-2900,-2913,-2926,-2939,-2952,-2965,-2978,-2991,
+-3005,-3017,-3030,-3043,-3056,-3068,-3081,-3093,-3106,-3118,-3131,-3143,-3155,-3167,-3178,-3190,-3202,-3213,-3224,-3235,
+-3246,-3257,-3268,-3279,-3289,-3300,-3310,-3321,-3331,-3341,-3351,-3360,-3370,-3379,-3389,-3398,-3407,-3416,-3425,-3434,
+-3443,-3451,-3460,-3469,-3477,-3486,-3494,-3502,-3510,-3518,-3526,-3533,-3541,-3549,-3557,-3564,-3572,-3580,-3587,-3594,
+-3602,-3609,-3617,-3624,-3632,-3639,-3646,-3652,-3659,-3665,-3672,-3679,-3686,-3692,-3698,-3704,-3710,-3715,-3721,-3727,
+-3732,-3737,-3742,-3747,-3752,-3757,-3761,-3765,-3769,-3772,-3776,-3779,-3782,-3785,-3788,-3790,-3792,-3793,-3795,-3797,
+-3797,-3798,-3799,-3799,-3799,-3799,-3799,-3798,-3797,-3796,-3794,-3792,-3791,-3789,-3787,-3784,-3781,-3778,-3775,-3772,
+-3769,-3765,-3761,-3757,-3754,-3750,-3745,-3741,-3736,-3731,-3726,-3721,-3717,-3712,-3707,-3702,-3697,-3692,-3687,-3682,
+-3678,-3673,-3668,-3663,-3658,-3653,-3649,-3645,-3641,-3637,-3633,-3629,-3625,-3621,-3619,-3616,-3614,-3612,-3610,-3608,
+-3607,-3604,-3602,-3600,-3597,-3595,-3593,-3591,-3590,-3591,-3592,-3595,-3600,-3605,-3610,-3614,-3614,-3613,-3611,-3610,
+-3612,-3616,-3620,-3624,-3626,-3627,-3626,-3627,-3628,-3631,-3633,-3635,-3636,-3638,-3642,-3647,-3653,-3660,-3665,-3669,
+-3674,-3679,-3687,-3695,-3704,-3712,-3721,-3732,-3746,-3766,-3787,-3807,-3821,-3827,-3827,-3826,-3829,-3840,-3857,-3876,
+-3889,-3894,-3888,-3876,-3863,-3854,-3852,-3853,-3856,-3859,-3859,-3860,-3861,-3865,-3870,-3877,-3883,-3888,-3891,-3895,
+-3900,-3905,-3910,-3915,-3919,-3922,-3926,-3929,-3934,-3938,-3942,-3946,-3950,-3954,-3958,-3962,-3967,-3972,-3976,-3981,
+-3985,-3990,-3995,-4000,-4005,-4010,-4015,-4020,-4025,-4030,-4036,-4041,-4047,-4052,-4058,-4064,-4070,-4076,-4082,-4088,
+-4094,-4099,-4105,-4111,-4117,-4123,-4129,-4135,-4141,-4148,-4154,-4160,-4165,-4171,-4176,-4182,-4188,-4193,-4199,-4204,
+-4209,-4214,-4219,-4224,-4228,-4233,-4237,-4241,-4245,-4248,-4252,-4255,-4259,-4262,-4265,-4267,-4269,-4271,-4273,-4275,
+-4276,-4278,-4279,-4280,-4280,-4281,-4281,-4281,-4280,-4280,-4279,-4278,-4277,-4276,-4275,-4273,-4272,-4270,-4267,-4265,
+-4263,-4261,-4258,-4256,-4253,-4250,-4247,-4244,-4241,-4237,-4234,-4231,-4228,-4224,-4221,-4217,-4214,-4211,-4207,-4204,
+-4200,-4197,-4193,-4190,-4186,-4183,-4180,-4176,-4173,-4170,-4166,-4163,-4160,-4157,-4154,-4151,-4147,-4144,-4141,-4138,
+-4135,-4132,-4129,-4126,-4123,-4120,-4117,-4114,-4111,-4108,-4105,-4102,-4099,-4095,-4092,-4089,-4086,-4082,-4079,-4075,
+-4072,-4068,-4064,-4060,-4056,-4052,-4048,-4044,-4039,-4035,-4030,-4026,-4021,-4016,-4011,-4006,-4000,-3995,-3989,-3984,
+-3978,-3972,-3965,-3959,-3953,-3946,-3940,-3933,-3926,-3919,-3911,-3904,-3897,-3889,-3881,-3873,-3865,-3857,-3849,-3841,
+-3832,-3824,-3815,-3807,-3798,-3789,-3780,-3771,-3762,-3753,-3744,-3735,-3726,-3716,-3707,-3698,-3688,-3679,-3669,-3660,
+-3651,-3641,-3632,-3622,-3613,-3603,-3594,-3584,-3575,-3566,-3557,-3547,-3538,-3529,-3520,-3511,-3502,-3492,-3483,-3474,
+-3465,-3456,-3447,-3438,-3429,-3421,-3412,-3403,-3394,-3386,-3378,-3369,-3361,-3352,-3344,-3335,-3327,-3319,-3310,-3302,
+-3294,-3286,-3278,-3270,-3261,-3253,-3245,-3237,-3228,-3220,-3212,-3203,-3195,-3188,-3180,-3171,-3163,-3154,-3146,-3137,
+-3128,-3119,-3110,-3102,-3093,-3084,-3075,-3066,-3057,-3049,-3040,-3032,-3023,-3015,-3007,-2999,-2991,-2983,-2975,-2966,
+-2958,-2950,-2941,-2933,-2925,-2917,-2909,-2901,-2893,-2885,-2877,-2869,-2861,-2854,-2847,-2840,-2833,-2827,-2821,-2815,
+-2809,-2804,-2798,-2793,-2788,-2784,-2779,-2774,-2770,-2766,-2762,-2758,-2754,-2751,-2748,-2745,-2742,-2740,-2738,-2736,
+-2735,-2734,-2733,-2732,-2731,-2731,-2730,-2730,-2730,-2731,-2731,-2732,-2733,-2734,-2734,-2735,-2736,-2738,-2739,-2741,
+-2743,-2745,-2747,-2750,-2752,-2754,-2756,-2758,-2760,-2762,-2764,-2766,-2767,-2769,-2771,-2773,-2775,-2777,-2779,-2780,
+-2781,-2782,-2783,-2784,-2785,-2785,-2786,-2786,-2786,-2786,-2786,-2785,-2784,-2784,-2783,-2782,-2781,-2780,-2778,-2777,
+-2776,-2774,-2772,-2770,-2768,-2765,-2763,-2761,-2758,-2755,-2752,-2749,-2745,-2742,-2739,-2736,-2733,-2730,-2726,-2723,
+-2720,-2717,-2714,-2711,-2708,-2705,-2702,-2699,-2696,-2694,-2691,-2689,-2686,-2684,-2682,-2680,-2678,-2676,-2674,-2673,
+-2671,-2670,-2669,-2668,-2667,-2666,-2666,-2665,-2665,-2665,-2665,-2666,-2666,-2666,-2667,-2667,-2668,-2668,-2669,-2669,
+-2670,-2670,-2671,-2672,-2672,-2673,-2674,-2675,-2676,-2677,-2678,-2678,-2678,-2678,-2678,-2678,-2678,-2677,-2676,-2675,
+-2674,-2672,-2671,-2669,-2667,-2665,-2662,-2659,-2655,-2651,-2647,-2643,-2638,-2633,-2627,-2621,-2615,-2608,-2601,-2594,
+-2586,-2578,-2569,-2560,-2551,-2541,-2531,-2521,-2510,-2499,-2487,-2475,-2463,-2451,-2438,-2425,-2412,-2398,-2384,-2370,
+-2356,-2342,-2327,-2313,-2298,-2283,-2267,-2252,-2236,-2221,-2205,-2189,-2173,-2157,-2141,-2125,-2109,-2093,-2077,-2061,
+-2046,-2030,-2014,-1999,-1983,-1968,-1952,-1937,-1922,-1907,-1892,-1877,-1863,-1848,-1835,-1821,-1807,-1793,-1780,-1767,
+-1754,-1741,-1728,-1716,-1703,-1691,-1680,-1668,-1657,-1647,-1636,-1626,-1616,-1607,-1597,-1588,-1579,-1571,-1563,-1555,
+-1547,-1540,-1533,-1527,-1521,-1515,-1510,-1505,-1500,-1496,-1492,-1488,-1484,-1481,-1478,-1476,-1474,-1472,-1470,-1469,
+-1468,-1467,-1466,-1466,-1466,-1467,-1467,-1468,-1469,-1471,-1472,-1474,-1476,-1478,-1480,-1483,-1486,-1489,-1492,-1495,
+-1498,-1502,-1505,-1509,-1513,-1516,-1520,-1524,-1528,-1531,-1535,-1539,-1542,-1546,-1549,-1552,-1556,-1559,-1561,-1564,
+-1567,-1569,-1571,-1573,-1575,-1577,-1579,-1580,-1581,-1582,-1583,-1583,-1584,-1584,-1584,-1584,-1583,-1583,-1582,-1580,
+-1579,-1578,-1576,-1574,-1572,-1570,-1568,-1565,-1563,-1560,-1557,-1554,-1551,-1548,-1544,-1541,-1538,-1534,-1531,-1527,
+-1523,-1519,-1516,-1512,-1508,-1505,-1501,-1497,-1493,-1489,-1485,-1481,-1477,-1473,-1469,-1465,-1461,-1457,-1454,-1451,
+-1448,-1444,-1441,-1437,-1434,-1431,-1428,-1426,-1423,-1420,-1417,-1415,-1412,-1410,-1408,-1406,-1404,-1402,-1400,-1398,
+-1430,-1429,-1428,-1427,-1426,-1425,-1425,-1425,-1425,-1425,-1425,-1426,-1426,-1427,-1428,-1430,-1431,-1433,-1435,-1437,
+-1439,-1441,-1444,-1447,-1450,-1453,-1456,-1459,-1462,-1466,-1469,-1473,-1477,-1481,-1484,-1488,-1492,-1496,-1500,-1504,
+-1508,-1512,-1516,-1520,-1524,-1527,-1530,-1534,-1537,-1540,-1542,-1545,-1547,-1549,-1551,-1553,-1554,-1555,-1556,-1557,
+-1557,-1556,-1556,-1554,-1553,-1551,-1549,-1546,-1543,-1539,-1535,-1530,-1525,-1520,-1515,-1508,-1501,-1494,-1486,-1478,
+-1469,-1460,-1450,-1440,-1429,-1418,-1407,-1395,-1384,-1371,-1358,-1345,-1332,-1318,-1304,-1290,-1277,-1263,-1249,-1234,
+-1220,-1206,-1192,-1178,-1164,-1149,-1135,-1120,-1106,-1092,-1078,-1065,-1052,-1040,-1027,-1015,-1002,-991,-980,-969,
+-959,-949,-940,-931,-923,-916,-909,-903,-897,-892,-887,-883,-879,-877,-875,-873,-872,-871,-871,-871,
+-872,-874,-876,-879,-883,-886,-891,-896,-901,-907,-913,-920,-927,-935,-943,-951,-959,-968,-977,-986,
+-995,-1005,-1014,-1023,-1032,-1041,-1050,-1059,-1068,-1077,-1086,-1094,-1102,-1110,-1118,-1125,-1133,-1140,-1147,-1154,
+-1160,-1166,-1172,-1177,-1181,-1185,-1189,-1193,-1196,-1198,-1201,-1202,-1204,-1205,-1205,-1205,-1205,-1204,-1203,-1202,
+-1200,-1198,-1196,-1193,-1190,-1186,-1182,-1178,-1174,-1170,-1165,-1160,-1155,-1150,-1144,-1139,-1133,-1127,-1121,-1116,
+-1110,-1104,-1098,-1092,-1086,-1081,-1075,-1069,-1064,-1059,-1053,-1049,-1044,-1039,-1035,-1031,-1027,-1023,-1019,-1016,
+-1014,-1011,-1009,-1007,-1005,-1004,-1003,-1002,-1002,-1002,-1002,-1002,-1003,-1005,-1006,-1008,-1010,-1013,-1015,-1018,
+-1022,-1025,-1029,-1033,-1037,-1042,-1047,-1052,-1057,-1063,-1069,-1075,-1081,-1087,-1093,-1100,-1106,-1113,-1120,-1127,
+-1135,-1142,-1149,-1157,-1164,-1171,-1179,-1187,-1194,-1202,-1210,-1217,-1225,-1233,-1241,-1248,-1256,-1264,-1271,-1279,
+-1286,-1294,-1301,-1309,-1316,-1324,-1331,-1338,-1346,-1353,-1360,-1367,-1375,-1382,-1389,-1396,-1403,-1410,-1416,-1423,
+-1430,-1437,-1444,-1451,-1458,-1465,-1472,-1479,-1485,-1492,-1499,-1506,-1513,-1520,-1527,-1534,-1541,-1549,-1556,-1563,
+-1571,-1578,-1585,-1593,-1601,-1609,-1616,-1625,-1633,-1641,-1649,-1658,-1666,-1675,-1683,-1692,-1701,-1710,-1719,-1729,
+-1738,-1748,-1757,-1767,-1777,-1786,-1797,-1807,-1817,-1827,-1838,-1848,-1859,-1870,-1880,-1891,-1902,-1913,-1925,-1936,
+-1947,-1958,-1970,-1981,-1992,-2004,-2015,-2026,-2038,-2049,-2061,-2072,-2084,-2095,-2107,-2118,-2129,-2140,-2151,-2163,
+-2174,-2185,-2196,-2206,-2217,-2228,-2238,-2249,-2259,-2270,-2280,-2290,-2300,-2310,-2320,-2330,-2340,-2350,-2359,-2369,
+-2378,-2388,-2397,-2407,-2416,-2425,-2435,-2444,-2453,-2462,-2471,-2480,-2489,-2499,-2508,-2517,-2527,-2536,-2545,-2554,
+-2563,-2573,-2582,-2592,-2601,-2611,-2620,-2630,-2640,-2649,-2659,-2669,-2680,-2690,-2700,-2710,-2721,-2731,-2742,-2753,
+-2764,-2775,-2785,-2796,-2807,-2819,-2830,-2841,-2853,-2864,-2876,-2888,-2900,-2912,-2924,-2936,-2948,-2960,-2972,-2983,
+-2996,-3008,-3020,-3032,-3044,-3056,-3068,-3080,-3092,-3104,-3116,-3127,-3139,-3151,-3163,-3174,-3186,-3198,-3209,-3220,
+-3231,-3243,-3254,-3265,-3275,-3286,-3297,-3307,-3318,-3328,-3338,-3348,-3358,-3368,-3377,-3387,-3397,-3406,-3416,-3425,
+-3433,-3442,-3451,-3460,-3469,-3477,-3486,-3494,-3502,-3510,-3518,-3526,-3533,-3541,-3548,-3555,-3562,-3569,-3576,-3583,
+-3590,-3597,-3603,-3609,-3616,-3622,-3628,-3634,-3640,-3645,-3650,-3656,-3661,-3666,-3671,-3676,-3681,-3685,-3689,-3693,
+-3697,-3701,-3705,-3709,-3712,-3715,-3717,-3720,-3723,-3726,-3728,-3730,-3732,-3733,-3734,-3736,-3737,-3738,-3739,-3739,
+-3739,-3739,-3739,-3739,-3738,-3738,-3737,-3736,-3734,-3732,-3731,-3729,-3727,-3725,-3723,-3720,-3718,-3715,-3712,-3709,
+-3706,-3702,-3699,-3696,-3692,-3689,-3685,-3681,-3678,-3674,-3670,-3666,-3662,-3658,-3654,-3649,-3645,-3640,-3636,-3632,
+-3628,-3624,-3620,-3616,-3612,-3609,-3605,-3601,-3598,-3594,-3591,-3588,-3585,-3583,-3580,-3578,-3575,-3572,-3570,-3568,
+-3567,-3565,-3564,-3563,-3561,-3559,-3558,-3558,-3559,-3560,-3559,-3557,-3554,-3549,-3544,-3540,-3538,-3537,-3536,-3536,
+-3535,-3534,-3534,-3535,-3536,-3538,-3541,-3543,-3545,-3547,-3549,-3552,-3554,-3557,-3559,-3561,-3563,-3566,-3569,-3573,
+-3578,-3586,-3596,-3608,-3622,-3636,-3650,-3662,-3669,-3672,-3670,-3666,-3662,-3660,-3662,-3669,-3679,-3689,-3698,-3703,
+-3702,-3698,-3691,-3684,-3679,-3676,-3676,-3677,-3678,-3679,-3679,-3679,-3681,-3684,-3688,-3693,-3700,-3706,-3712,-3717,
+-3723,-3729,-3734,-3740,-3745,-3751,-3757,-3761,-3764,-3763,-3761,-3756,-3753,-3751,-3753,-3759,-3768,-3777,-3786,-3794,
+-3800,-3805,-3810,-3815,-3821,-3827,-3832,-3837,-3842,-3846,-3851,-3856,-3861,-3866,-3872,-3878,-3884,-3892,-3899,-3907,
+-3915,-3922,-3929,-3936,-3943,-3951,-3959,-3967,-3975,-3983,-3990,-3998,-4006,-4014,-4022,-4030,-4038,-4045,-4052,-4059,
+-4067,-4074,-4081,-4088,-4095,-4101,-4107,-4113,-4119,-4125,-4131,-4136,-4141,-4146,-4150,-4155,-4159,-4164,-4167,-4171,
+-4174,-4177,-4180,-4182,-4185,-4187,-4189,-4190,-4191,-4192,-4193,-4194,-4194,-4194,-4194,-4194,-4194,-4193,-4192,-4191,
+-4190,-4188,-4187,-4185,-4183,-4181,-4178,-4176,-4174,-4171,-4168,-4165,-4162,-4159,-4156,-4153,-4150,-4146,-4142,-4139,
+-4135,-4131,-4128,-4124,-4120,-4117,-4113,-4109,-4105,-4101,-4097,-4094,-4090,-4086,-4082,-4078,-4074,-4070,-4066,-4062,
+-4059,-4054,-4051,-4047,-4043,-4039,-4035,-4031,-4027,-4023,-4019,-4015,-4010,-4006,-4002,-3998,-3994,-3990,-3985,-3981,
+-3977,-3972,-3967,-3963,-3958,-3954,-3949,-3944,-3939,-3934,-3929,-3924,-3919,-3914,-3908,-3903,-3897,-3892,-3886,-3880,
+-3874,-3868,-3862,-3856,-3850,-3843,-3836,-3830,-3823,-3816,-3809,-3802,-3795,-3787,-3780,-3773,-3765,-3757,-3750,-3742,
+-3734,-3726,-3718,-3710,-3702,-3693,-3685,-3677,-3668,-3660,-3651,-3643,-3634,-3626,-3617,-3609,-3600,-3592,-3583,-3574,
+-3566,-3557,-3549,-3540,-3531,-3523,-3514,-3506,-3497,-3488,-3480,-3471,-3463,-3454,-3446,-3437,-3429,-3420,-3411,-3403,
+-3395,-3387,-3378,-3370,-3361,-3352,-3344,-3335,-3327,-3319,-3310,-3301,-3293,-3284,-3277,-3270,-3264,-3258,-3251,-3243,
+-3235,-3227,-3219,-3213,-3207,-3200,-3193,-3185,-3175,-3165,-3155,-3146,-3138,-3130,-3121,-3113,-3104,-3094,-3084,-3075,
+-3066,-3057,-3048,-3040,-3031,-3021,-3012,-3003,-2995,-2986,-2978,-2969,-2961,-2953,-2945,-2938,-2930,-2922,-2914,-2906,
+-2897,-2889,-2881,-2872,-2864,-2856,-2848,-2840,-2832,-2824,-2817,-2809,-2802,-2795,-2788,-2782,-2775,-2770,-2764,-2759,
+-2754,-2749,-2744,-2739,-2734,-2729,-2725,-2720,-2716,-2713,-2709,-2707,-2704,-2701,-2699,-2697,-2695,-2694,-2693,-2693,
+-2693,-2693,-2694,-2694,-2695,-2695,-2696,-2697,-2699,-2701,-2703,-2705,-2708,-2711,-2714,-2717,-2720,-2723,-2726,-2729,
+-2732,-2736,-2740,-2744,-2748,-2752,-2755,-2759,-2763,-2767,-2770,-2774,-2778,-2781,-2784,-2787,-2790,-2793,-2796,-2799,
+-2802,-2804,-2806,-2808,-2810,-2812,-2813,-2815,-2816,-2817,-2817,-2818,-2818,-2818,-2818,-2818,-2818,-2817,-2816,-2815,
+-2814,-2812,-2811,-2809,-2807,-2804,-2802,-2799,-2796,-2793,-2790,-2787,-2783,-2779,-2775,-2771,-2766,-2762,-2758,-2753,
+-2749,-2745,-2741,-2736,-2732,-2728,-2723,-2719,-2715,-2711,-2706,-2702,-2698,-2693,-2689,-2685,-2680,-2676,-2672,-2668,
+-2665,-2661,-2658,-2655,-2653,-2650,-2648,-2645,-2643,-2642,-2640,-2639,-2637,-2636,-2635,-2634,-2633,-2633,-2632,-2631,
+-2631,-2630,-2628,-2627,-2626,-2625,-2625,-2624,-2624,-2624,-2624,-2624,-2625,-2625,-2625,-2626,-2626,-2626,-2626,-2625,
+-2625,-2624,-2624,-2624,-2623,-2622,-2620,-2618,-2616,-2614,-2612,-2609,-2607,-2604,-2601,-2598,-2595,-2591,-2587,-2582,
+-2577,-2572,-2567,-2561,-2555,-2548,-2542,-2534,-2527,-2519,-2511,-2503,-2494,-2485,-2476,-2466,-2456,-2446,-2436,-2425,
+-2414,-2402,-2391,-2379,-2366,-2354,-2342,-2329,-2316,-2303,-2289,-2275,-2261,-2247,-2233,-2218,-2204,-2189,-2174,-2159,
+-2144,-2129,-2114,-2099,-2084,-2068,-2053,-2038,-2022,-2007,-1992,-1977,-1962,-1947,-1932,-1918,-1903,-1888,-1874,-1859,
+-1845,-1830,-1816,-1802,-1788,-1775,-1761,-1748,-1735,-1722,-1709,-1697,-1685,-1673,-1662,-1650,-1639,-1629,-1618,-1608,
+-1598,-1589,-1580,-1571,-1563,-1555,-1547,-1540,-1533,-1526,-1520,-1515,-1509,-1504,-1499,-1494,-1490,-1486,-1483,-1480,
+-1477,-1474,-1472,-1470,-1469,-1468,-1467,-1467,-1466,-1466,-1466,-1467,-1467,-1469,-1470,-1472,-1473,-1475,-1477,-1480,
+-1482,-1485,-1487,-1490,-1493,-1497,-1500,-1503,-1507,-1511,-1514,-1518,-1522,-1525,-1529,-1533,-1537,-1540,-1544,-1547,
+-1551,-1554,-1557,-1560,-1563,-1566,-1569,-1571,-1574,-1576,-1578,-1580,-1581,-1583,-1584,-1585,-1586,-1587,-1587,-1587,
+-1587,-1587,-1587,-1587,-1586,-1586,-1585,-1584,-1582,-1581,-1579,-1577,-1575,-1574,-1571,-1569,-1567,-1564,-1561,-1558,
+-1555,-1552,-1549,-1545,-1542,-1538,-1534,-1531,-1527,-1523,-1520,-1516,-1512,-1509,-1505,-1501,-1497,-1494,-1490,-1487,
+-1483,-1480,-1476,-1473,-1470,-1466,-1463,-1460,-1457,-1454,-1451,-1449,-1446,-1444,-1441,-1439,-1437,-1435,-1433,-1432,
+-1430,-1464,-1463,-1463,-1462,-1462,-1461,-1461,-1461,-1461,-1462,-1462,-1463,-1464,-1465,-1466,-1468,-1469,-1471,-1473,
+-1475,-1477,-1480,-1482,-1485,-1488,-1490,-1493,-1496,-1500,-1503,-1506,-1510,-1513,-1517,-1520,-1524,-1528,-1531,-1535,
+-1538,-1541,-1545,-1548,-1551,-1554,-1557,-1560,-1562,-1565,-1567,-1569,-1571,-1572,-1574,-1575,-1576,-1576,-1577,-1577,
+-1577,-1576,-1575,-1574,-1572,-1570,-1568,-1565,-1562,-1558,-1554,-1550,-1545,-1540,-1534,-1528,-1522,-1515,-1508,-1500,
+-1491,-1483,-1474,-1465,-1455,-1445,-1435,-1425,-1414,-1402,-1391,-1379,-1367,-1355,-1343,-1331,-1318,-1306,-1294,-1281,
+-1269,-1256,-1243,-1231,-1218,-1205,-1192,-1179,-1167,-1154,-1142,-1130,-1118,-1107,-1097,-1086,-1076,-1066,-1056,-1047,
+-1037,-1029,-1020,-1012,-1005,-998,-992,-986,-981,-976,-971,-967,-964,-961,-959,-957,-955,-954,-954,-954,
+-955,-956,-958,-960,-962,-965,-968,-972,-977,-982,-988,-994,-1001,-1007,-1014,-1021,-1027,-1035,-1042,-1050,
+-1058,-1066,-1074,-1082,-1090,-1099,-1107,-1115,-1123,-1132,-1140,-1147,-1155,-1163,-1170,-1177,-1184,-1191,-1198,-1204,
+-1210,-1216,-1221,-1226,-1231,-1235,-1239,-1243,-1247,-1250,-1253,-1256,-1258,-1260,-1261,-1262,-1263,-1263,-1263,-1263,
+-1263,-1262,-1260,-1259,-1257,-1254,-1252,-1249,-1246,-1243,-1240,-1236,-1233,-1229,-1224,-1220,-1216,-1211,-1207,-1202,
+-1198,-1193,-1189,-1184,-1180,-1175,-1170,-1166,-1161,-1157,-1153,-1149,-1145,-1141,-1137,-1134,-1131,-1127,-1125,-1122,
+-1120,-1117,-1115,-1114,-1112,-1111,-1110,-1109,-1109,-1109,-1109,-1109,-1110,-1111,-1112,-1113,-1115,-1117,-1120,-1122,
+-1125,-1128,-1131,-1135,-1139,-1143,-1147,-1152,-1156,-1161,-1166,-1171,-1177,-1182,-1188,-1194,-1200,-1206,-1212,-1218,
+-1224,-1231,-1238,-1244,-1251,-1258,-1265,-1271,-1278,-1285,-1292,-1299,-1307,-1314,-1321,-1327,-1334,-1341,-1349,-1356,
+-1363,-1370,-1376,-1383,-1390,-1397,-1404,-1411,-1418,-1424,-1431,-1438,-1445,-1451,-1458,-1464,-1471,-1477,-1484,-1490,
+-1497,-1503,-1510,-1516,-1523,-1529,-1536,-1543,-1549,-1556,-1562,-1569,-1576,-1583,-1590,-1597,-1604,-1611,-1618,-1626,
+-1633,-1640,-1648,-1656,-1663,-1671,-1679,-1687,-1696,-1704,-1712,-1721,-1729,-1738,-1747,-1756,-1765,-1774,-1784,-1793,
+-1803,-1813,-1823,-1833,-1843,-1853,-1863,-1873,-1884,-1895,-1905,-1916,-1927,-1938,-1949,-1960,-1971,-1982,-1993,-2005,
+-2016,-2028,-2039,-2050,-2062,-2073,-2085,-2096,-2108,-2119,-2131,-2142,-2154,-2165,-2177,-2188,-2199,-2210,-2221,-2233,
+-2244,-2255,-2266,-2277,-2287,-2298,-2308,-2318,-2328,-2339,-2349,-2359,-2369,-2379,-2389,-2398,-2408,-2418,-2427,-2436,
+-2446,-2455,-2464,-2473,-2482,-2491,-2500,-2509,-2518,-2526,-2535,-2544,-2552,-2561,-2569,-2578,-2586,-2595,-2604,-2612,
+-2621,-2629,-2638,-2646,-2655,-2664,-2673,-2681,-2690,-2699,-2708,-2717,-2726,-2735,-2744,-2753,-2763,-2772,-2782,-2791,
+-2801,-2811,-2821,-2830,-2840,-2851,-2861,-2871,-2881,-2891,-2902,-2912,-2923,-2934,-2945,-2955,-2966,-2977,-2988,-2999,
+-3010,-3021,-3032,-3043,-3054,-3065,-3077,-3088,-3099,-3111,-3122,-3133,-3144,-3155,-3166,-3177,-3188,-3199,-3210,-3221,
+-3231,-3242,-3252,-3263,-3273,-3284,-3294,-3304,-3314,-3324,-3334,-3344,-3354,-3363,-3373,-3382,-3391,-3400,-3409,-3418,
+-3427,-3435,-3444,-3452,-3460,-3468,-3476,-3484,-3492,-3499,-3506,-3513,-3521,-3527,-3534,-3541,-3548,-3554,-3560,-3566,
+-3572,-3578,-3583,-3588,-3594,-3599,-3603,-3608,-3612,-3617,-3621,-3625,-3629,-3633,-3637,-3640,-3644,-3647,-3650,-3652,
+-3655,-3657,-3660,-3662,-3664,-3666,-3668,-3669,-3671,-3672,-3673,-3674,-3675,-3676,-3676,-3677,-3677,-3677,-3677,-3677,
+-3676,-3675,-3675,-3674,-3673,-3672,-3671,-3669,-3667,-3665,-3664,-3662,-3660,-3658,-3656,-3654,-3651,-3649,-3647,-3644,
+-3642,-3639,-3636,-3633,-3630,-3628,-3625,-3622,-3619,-3615,-3612,-3609,-3606,-3603,-3600,-3597,-3594,-3590,-3587,-3583,
+-3580,-3578,-3575,-3572,-3569,-3566,-3562,-3559,-3557,-3554,-3551,-3549,-3546,-3543,-3541,-3539,-3537,-3535,-3533,-3531,
+-3529,-3527,-3525,-3523,-3522,-3521,-3519,-3517,-3515,-3513,-3511,-3510,-3509,-3507,-3505,-3502,-3499,-3495,-3492,-3491,
+-3490,-3490,-3490,-3490,-3489,-3489,-3489,-3489,-3491,-3492,-3493,-3493,-3492,-3491,-3491,-3494,-3500,-3509,-3518,-3526,
+-3531,-3532,-3529,-3524,-3520,-3518,-3520,-3527,-3535,-3545,-3554,-3560,-3564,-3565,-3564,-3562,-3559,-3557,-3557,-3558,
+-3562,-3569,-3578,-3587,-3595,-3599,-3599,-3594,-3587,-3577,-3569,-3561,-3556,-3552,-3550,-3549,-3550,-3552,-3555,-3560,
+-3564,-3568,-3570,-3570,-3570,-3568,-3566,-3564,-3562,-3559,-3557,-3556,-3555,-3557,-3561,-3565,-3570,-3575,-3580,-3587,
+-3595,-3608,-3623,-3641,-3658,-3673,-3684,-3691,-3695,-3699,-3705,-3713,-3722,-3731,-3738,-3741,-3740,-3738,-3735,-3733,
+-3735,-3739,-3745,-3752,-3759,-3766,-3773,-3781,-3789,-3798,-3807,-3817,-3826,-3836,-3845,-3854,-3863,-3871,-3880,-3888,
+-3895,-3903,-3911,-3919,-3927,-3935,-3943,-3951,-3958,-3966,-3973,-3980,-3987,-3994,-4000,-4007,-4012,-4018,-4024,-4029,
+-4034,-4039,-4043,-4047,-4051,-4055,-4059,-4062,-4065,-4068,-4070,-4072,-4073,-4075,-4076,-4078,-4079,-4079,-4079,-4079,
+-4079,-4079,-4078,-4078,-4077,-4076,-4074,-4072,-4070,-4068,-4066,-4064,-4061,-4059,-4056,-4053,-4050,-4046,-4043,-4039,
+-4036,-4033,-4029,-4026,-4022,-4018,-4013,-4009,-4005,-4000,-3996,-3992,-3987,-3983,-3978,-3973,-3969,-3964,-3960,-3955,
+-3950,-3945,-3940,-3935,-3931,-3926,-3921,-3916,-3911,-3906,-3901,-3896,-3891,-3886,-3881,-3876,-3870,-3865,-3860,-3855,
+-3850,-3845,-3839,-3834,-3828,-3823,-3818,-3812,-3807,-3801,-3796,-3790,-3784,-3778,-3773,-3767,-3762,-3756,-3751,-3745,
+-3739,-3733,-3727,-3721,-3715,-3708,-3702,-3696,-3689,-3683,-3677,-3670,-3664,-3657,-3650,-3644,-3637,-3630,-3623,-3617,
+-3610,-3603,-3596,-3589,-3582,-3575,-3568,-3561,-3554,-3546,-3539,-3532,-3525,-3518,-3510,-3503,-3496,-3488,-3481,-3473,
+-3465,-3458,-3450,-3442,-3435,-3427,-3420,-3413,-3405,-3398,-3391,-3383,-3376,-3368,-3361,-3354,-3346,-3339,-3332,-3324,
+-3317,-3310,-3302,-3295,-3288,-3280,-3273,-3266,-3259,-3251,-3244,-3237,-3229,-3222,-3214,-3206,-3199,-3192,-3184,-3177,
+-3170,-3162,-3155,-3147,-3139,-3131,-3123,-3115,-3107,-3099,-3091,-3082,-3073,-3065,-3056,-3047,-3039,-3030,-3021,-3012,
+-3003,-2994,-2985,-2976,-2968,-2959,-2950,-2942,-2933,-2925,-2917,-2908,-2900,-2892,-2884,-2875,-2867,-2859,-2850,-2842,
+-2834,-2826,-2818,-2810,-2802,-2795,-2787,-2779,-2772,-2765,-2757,-2750,-2744,-2737,-2732,-2726,-2721,-2715,-2710,-2705,
+-2700,-2695,-2690,-2686,-2682,-2678,-2675,-2672,-2669,-2667,-2665,-2664,-2662,-2662,-2661,-2661,-2661,-2662,-2663,-2664,
+-2665,-2666,-2668,-2670,-2672,-2675,-2678,-2681,-2685,-2688,-2691,-2695,-2699,-2704,-2710,-2716,-2722,-2726,-2730,-2732,
+-2734,-2737,-2740,-2744,-2749,-2754,-2759,-2764,-2769,-2774,-2778,-2783,-2787,-2792,-2796,-2800,-2804,-2808,-2812,-2816,
+-2819,-2823,-2826,-2829,-2831,-2834,-2836,-2838,-2840,-2841,-2843,-2844,-2844,-2845,-2845,-2845,-2845,-2844,-2843,-2842,
+-2841,-2839,-2837,-2835,-2833,-2830,-2827,-2824,-2821,-2817,-2813,-2809,-2804,-2800,-2795,-2790,-2785,-2779,-2774,-2768,
+-2762,-2756,-2751,-2744,-2738,-2732,-2725,-2719,-2713,-2706,-2700,-2693,-2687,-2681,-2674,-2668,-2662,-2656,-2651,-2645,
+-2639,-2634,-2629,-2624,-2619,-2615,-2610,-2605,-2601,-2597,-2593,-2590,-2587,-2584,-2582,-2579,-2576,-2573,-2570,-2568,
+-2567,-2567,-2567,-2568,-2568,-2567,-2566,-2563,-2560,-2557,-2553,-2551,-2549,-2548,-2547,-2547,-2547,-2547,-2547,-2547,
+-2546,-2547,-2547,-2547,-2548,-2548,-2548,-2548,-2548,-2548,-2548,-2548,-2548,-2548,-2548,-2547,-2547,-2546,-2544,-2543,
+-2541,-2540,-2538,-2536,-2534,-2531,-2528,-2525,-2522,-2518,-2514,-2510,-2505,-2500,-2495,-2490,-2484,-2479,-2472,-2465,
+-2459,-2451,-2444,-2436,-2428,-2420,-2411,-2402,-2393,-2383,-2373,-2363,-2353,-2342,-2331,-2320,-2308,-2296,-2284,-2272,
+-2260,-2247,-2234,-2221,-2208,-2195,-2181,-2168,-2154,-2140,-2127,-2112,-2098,-2084,-2070,-2055,-2041,-2026,-2012,-1997,
+-1983,-1969,-1955,-1940,-1926,-1912,-1898,-1883,-1869,-1855,-1842,-1828,-1815,-1801,-1788,-1775,-1763,-1750,-1738,-1726,
+-1715,-1703,-1692,-1681,-1670,-1660,-1650,-1640,-1631,-1622,-1613,-1605,-1597,-1589,-1582,-1576,-1569,-1563,-1556,-1551,
+-1545,-1540,-1536,-1532,-1528,-1524,-1521,-1518,-1515,-1513,-1511,-1509,-1508,-1506,-1505,-1504,-1504,-1504,-1504,-1505,
+-1506,-1506,-1507,-1508,-1510,-1511,-1513,-1515,-1517,-1520,-1522,-1524,-1527,-1529,-1532,-1535,-1538,-1541,-1543,-1546,
+-1549,-1552,-1555,-1557,-1560,-1563,-1566,-1569,-1571,-1574,-1576,-1578,-1580,-1582,-1583,-1585,-1587,-1588,-1589,-1590,
+-1591,-1591,-1592,-1592,-1593,-1593,-1593,-1592,-1592,-1591,-1591,-1590,-1589,-1588,-1586,-1585,-1583,-1581,-1579,-1577,
+-1575,-1573,-1570,-1568,-1565,-1563,-1560,-1557,-1554,-1552,-1548,-1545,-1542,-1538,-1535,-1532,-1529,-1526,-1522,-1519,
+-1516,-1512,-1509,-1506,-1503,-1500,-1497,-1494,-1491,-1488,-1485,-1483,-1481,-1478,-1476,-1474,-1472,-1470,-1468,-1467,
+-1466,-1464,-1502,-1501,-1500,-1500,-1499,-1499,-1499,-1499,-1499,-1499,-1500,-1501,-1501,-1502,-1503,-1504,-1505,-1507,
+-1509,-1510,-1512,-1515,-1517,-1519,-1521,-1524,-1526,-1529,-1531,-1534,-1536,-1539,-1542,-1545,-1548,-1550,-1553,-1556,
+-1558,-1561,-1563,-1565,-1568,-1570,-1572,-1574,-1576,-1578,-1580,-1581,-1582,-1584,-1585,-1585,-1586,-1586,-1586,-1586,
+-1585,-1584,-1583,-1581,-1580,-1578,-1575,-1573,-1570,-1566,-1563,-1558,-1554,-1549,-1544,-1539,-1533,-1527,-1520,-1514,
+-1507,-1499,-1491,-1483,-1474,-1466,-1457,-1448,-1438,-1429,-1419,-1409,-1399,-1389,-1378,-1368,-1358,-1347,-1337,-1327,
+-1316,-1305,-1294,-1283,-1272,-1261,-1251,-1240,-1230,-1220,-1210,-1200,-1190,-1180,-1171,-1161,-1152,-1144,-1135,-1127,
+-1120,-1112,-1105,-1099,-1092,-1086,-1081,-1075,-1071,-1066,-1062,-1059,-1056,-1053,-1051,-1049,-1048,-1046,-1046,-1046,
+-1046,-1047,-1048,-1050,-1052,-1054,-1056,-1059,-1062,-1066,-1071,-1076,-1081,-1087,-1092,-1098,-1104,-1110,-1116,-1121,
+-1128,-1134,-1140,-1147,-1154,-1161,-1167,-1174,-1181,-1188,-1195,-1202,-1208,-1215,-1221,-1227,-1233,-1239,-1245,-1250,
+-1256,-1261,-1266,-1271,-1275,-1279,-1282,-1286,-1289,-1292,-1295,-1298,-1300,-1302,-1304,-1305,-1306,-1307,-1308,-1308,
+-1308,-1308,-1307,-1306,-1305,-1304,-1302,-1301,-1299,-1296,-1294,-1291,-1289,-1286,-1283,-1281,-1277,-1274,-1270,-1267,
+-1263,-1259,-1255,-1252,-1248,-1245,-1241,-1237,-1234,-1230,-1227,-1224,-1221,-1218,-1215,-1212,-1209,-1206,-1204,-1202,
+-1200,-1198,-1196,-1195,-1194,-1192,-1192,-1191,-1191,-1190,-1191,-1191,-1192,-1192,-1193,-1194,-1196,-1197,-1199,-1201,
+-1204,-1206,-1209,-1212,-1216,-1219,-1223,-1226,-1230,-1235,-1239,-1244,-1249,-1253,-1259,-1264,-1269,-1275,-1280,-1286,
+-1292,-1298,-1304,-1310,-1316,-1322,-1328,-1335,-1341,-1348,-1354,-1361,-1367,-1374,-1381,-1387,-1394,-1401,-1408,-1414,
+-1421,-1428,-1434,-1441,-1448,-1455,-1461,-1468,-1475,-1481,-1488,-1495,-1501,-1508,-1515,-1521,-1528,-1534,-1541,-1548,
+-1554,-1561,-1568,-1575,-1582,-1589,-1595,-1602,-1609,-1616,-1623,-1630,-1638,-1645,-1652,-1659,-1666,-1674,-1681,-1689,
+-1697,-1705,-1713,-1721,-1729,-1737,-1745,-1754,-1762,-1771,-1780,-1788,-1797,-1806,-1815,-1825,-1834,-1844,-1853,-1863,
+-1873,-1883,-1893,-1903,-1913,-1923,-1934,-1944,-1955,-1966,-1976,-1987,-1998,-2009,-2020,-2031,-2042,-2054,-2065,-2077,
+-2088,-2100,-2111,-2123,-2134,-2146,-2157,-2168,-2180,-2191,-2203,-2214,-2225,-2237,-2248,-2259,-2270,-2281,-2292,-2303,
+-2314,-2325,-2336,-2347,-2358,-2368,-2379,-2389,-2399,-2409,-2420,-2430,-2439,-2449,-2459,-2469,-2478,-2488,-2497,-2506,
+-2515,-2525,-2534,-2543,-2552,-2561,-2569,-2578,-2586,-2595,-2603,-2612,-2620,-2629,-2637,-2645,-2653,-2662,-2670,-2678,
+-2686,-2694,-2703,-2711,-2719,-2727,-2735,-2743,-2752,-2760,-2768,-2776,-2785,-2793,-2802,-2810,-2819,-2827,-2836,-2845,
+-2853,-2862,-2871,-2880,-2889,-2898,-2907,-2916,-2926,-2935,-2945,-2954,-2964,-2974,-2984,-2993,-3003,-3013,-3023,-3033,
+-3043,-3053,-3063,-3072,-3082,-3092,-3102,-3113,-3123,-3134,-3144,-3154,-3165,-3175,-3184,-3194,-3204,-3214,-3224,-3234,
+-3244,-3254,-3264,-3273,-3283,-3292,-3302,-3311,-3320,-3329,-3338,-3347,-3356,-3364,-3373,-3382,-3390,-3398,-3406,-3414,
+-3422,-3430,-3437,-3445,-3452,-3459,-3466,-3473,-3479,-3486,-3492,-3498,-3504,-3510,-3516,-3522,-3527,-3532,-3538,-3542,
+-3547,-3552,-3556,-3560,-3565,-3568,-3572,-3576,-3579,-3583,-3586,-3589,-3591,-3594,-3596,-3599,-3601,-3603,-3604,-3606,
+-3607,-3609,-3610,-3611,-3612,-3613,-3614,-3615,-3615,-3615,-3615,-3615,-3615,-3615,-3615,-3615,-3614,-3614,-3613,-3613,
+-3612,-3611,-3610,-3609,-3607,-3606,-3605,-3603,-3602,-3600,-3598,-3597,-3595,-3593,-3591,-3589,-3587,-3585,-3583,-3581,
+-3579,-3577,-3575,-3572,-3570,-3568,-3566,-3564,-3562,-3559,-3557,-3554,-3552,-3550,-3547,-3546,-3544,-3542,-3539,-3537,
+-3535,-3532,-3530,-3528,-3526,-3524,-3522,-3520,-3517,-3515,-3513,-3511,-3509,-3507,-3506,-3504,-3502,-3500,-3498,-3497,
+-3495,-3493,-3492,-3490,-3487,-3485,-3483,-3481,-3480,-3479,-3477,-3476,-3475,-3473,-3472,-3471,-3470,-3469,-3469,-3469,
+-3471,-3473,-3476,-3479,-3481,-3482,-3481,-3478,-3474,-3468,-3463,-3458,-3453,-3450,-3448,-3447,-3445,-3444,-3444,-3444,
+-3445,-3446,-3448,-3450,-3451,-3451,-3451,-3450,-3448,-3447,-3447,-3447,-3448,-3448,-3448,-3447,-3446,-3445,-3444,-3442,
+-3442,-3441,-3441,-3440,-3440,-3440,-3439,-3439,-3439,-3439,-3438,-3436,-3434,-3432,-3430,-3428,-3426,-3424,-3423,-3423,
+-3422,-3423,-3424,-3425,-3427,-3427,-3427,-3424,-3419,-3412,-3405,-3398,-3393,-3390,-3390,-3392,-3396,-3400,-3406,-3413,
+-3422,-3431,-3442,-3451,-3460,-3468,-3476,-3483,-3492,-3503,-3517,-3532,-3546,-3559,-3567,-3572,-3573,-3571,-3569,-3568,
+-3567,-3568,-3570,-3573,-3577,-3583,-3591,-3601,-3613,-3625,-3637,-3648,-3657,-3664,-3671,-3676,-3683,-3690,-3699,-3708,
+-3717,-3725,-3733,-3740,-3748,-3755,-3762,-3769,-3775,-3782,-3790,-3797,-3804,-3812,-3820,-3828,-3835,-3842,-3849,-3855,
+-3861,-3867,-3872,-3878,-3883,-3888,-3893,-3897,-3901,-3905,-3909,-3912,-3915,-3918,-3921,-3923,-3925,-3927,-3928,-3929,
+-3930,-3931,-3931,-3932,-3932,-3931,-3931,-3930,-3929,-3928,-3926,-3924,-3922,-3920,-3918,-3916,-3913,-3910,-3907,-3904,
+-3901,-3897,-3893,-3890,-3886,-3882,-3878,-3874,-3869,-3865,-3860,-3855,-3850,-3846,-3841,-3836,-3831,-3826,-3821,-3815,
+-3810,-3804,-3799,-3794,-3789,-3783,-3778,-3772,-3767,-3761,-3755,-3750,-3744,-3739,-3733,-3727,-3721,-3715,-3710,-3704,
+-3698,-3693,-3687,-3681,-3675,-3669,-3664,-3658,-3653,-3647,-3641,-3636,-3630,-3624,-3618,-3613,-3607,-3601,-3596,-3590,
+-3585,-3579,-3573,-3567,-3561,-3556,-3550,-3544,-3539,-3533,-3528,-3522,-3517,-3511,-3505,-3499,-3493,-3487,-3482,-3476,
+-3470,-3464,-3459,-3453,-3447,-3441,-3435,-3429,-3424,-3418,-3412,-3407,-3401,-3395,-3390,-3384,-3379,-3373,-3368,-3362,
+-3357,-3351,-3345,-3340,-3334,-3329,-3323,-3317,-3311,-3305,-3299,-3293,-3286,-3281,-3275,-3269,-3263,-3257,-3251,-3245,
+-3238,-3232,-3225,-3218,-3212,-3206,-3199,-3193,-3187,-3180,-3174,-3167,-3159,-3152,-3145,-3138,-3131,-3124,-3117,-3111,
+-3104,-3098,-3091,-3084,-3076,-3069,-3061,-3053,-3046,-3038,-3030,-3022,-3015,-3007,-2999,-2990,-2982,-2974,-2966,-2958,
+-2950,-2941,-2933,-2924,-2916,-2907,-2899,-2891,-2882,-2874,-2866,-2858,-2850,-2842,-2835,-2827,-2819,-2811,-2803,-2795,
+-2788,-2780,-2772,-2765,-2758,-2751,-2744,-2738,-2731,-2724,-2718,-2712,-2707,-2701,-2696,-2692,-2687,-2683,-2679,-2675,
+-2672,-2669,-2665,-2662,-2659,-2657,-2655,-2653,-2652,-2651,-2651,-2651,-2651,-2652,-2653,-2654,-2655,-2657,-2659,-2662,
+-2664,-2666,-2669,-2672,-2675,-2679,-2682,-2686,-2690,-2694,-2699,-2705,-2711,-2718,-2725,-2732,-2737,-2741,-2743,-2745,
+-2746,-2747,-2749,-2753,-2757,-2763,-2768,-2774,-2779,-2783,-2788,-2793,-2798,-2803,-2808,-2813,-2817,-2821,-2825,-2829,
+-2832,-2835,-2839,-2841,-2844,-2846,-2849,-2851,-2852,-2854,-2855,-2856,-2857,-2857,-2856,-2856,-2855,-2854,-2853,-2851,
+-2849,-2847,-2844,-2841,-2838,-2834,-2830,-2826,-2821,-2817,-2811,-2806,-2801,-2795,-2789,-2783,-2776,-2769,-2762,-2755,
+-2747,-2740,-2732,-2725,-2717,-2709,-2701,-2693,-2685,-2677,-2668,-2660,-2652,-2644,-2636,-2627,-2619,-2611,-2603,-2596,
+-2588,-2581,-2574,-2567,-2560,-2553,-2546,-2539,-2533,-2526,-2520,-2515,-2509,-2504,-2499,-2495,-2490,-2486,-2482,-2478,
+-2475,-2472,-2469,-2467,-2465,-2463,-2460,-2458,-2456,-2455,-2453,-2452,-2451,-2450,-2449,-2449,-2449,-2449,-2449,-2450,
+-2450,-2451,-2452,-2453,-2454,-2456,-2458,-2460,-2462,-2464,-2466,-2469,-2471,-2474,-2476,-2478,-2481,-2483,-2485,-2487,
+-2489,-2491,-2492,-2494,-2495,-2497,-2498,-2499,-2500,-2500,-2500,-2501,-2500,-2500,-2499,-2498,-2497,-2496,-2494,-2493,
+-2490,-2488,-2485,-2482,-2478,-2474,-2470,-2466,-2461,-2456,-2451,-2445,-2439,-2433,-2427,-2420,-2413,-2405,-2397,-2389,
+-2380,-2372,-2362,-2353,-2343,-2333,-2323,-2312,-2302,-2291,-2279,-2268,-2256,-2244,-2232,-2219,-2207,-2194,-2181,-2168,
+-2155,-2142,-2128,-2115,-2102,-2088,-2075,-2061,-2047,-2034,-2020,-2006,-1993,-1979,-1966,-1952,-1939,-1926,-1913,-1900,
+-1888,-1875,-1863,-1851,-1838,-1827,-1815,-1803,-1792,-1781,-1770,-1760,-1749,-1739,-1729,-1720,-1711,-1702,-1693,-1685,
+-1678,-1670,-1663,-1655,-1649,-1642,-1636,-1630,-1625,-1620,-1615,-1611,-1606,-1602,-1599,-1595,-1592,-1590,-1587,-1585,
+-1583,-1581,-1579,-1578,-1577,-1576,-1575,-1575,-1574,-1574,-1574,-1575,-1575,-1576,-1576,-1577,-1578,-1579,-1580,-1582,
+-1583,-1584,-1586,-1587,-1589,-1590,-1591,-1593,-1594,-1596,-1597,-1599,-1600,-1601,-1602,-1603,-1604,-1605,-1606,-1607,
+-1608,-1608,-1609,-1609,-1609,-1610,-1610,-1610,-1610,-1610,-1609,-1609,-1608,-1607,-1606,-1605,-1604,-1603,-1601,-1600,
+-1598,-1596,-1594,-1593,-1590,-1588,-1586,-1584,-1581,-1579,-1576,-1574,-1571,-1568,-1566,-1563,-1560,-1557,-1554,-1552,
+-1549,-1546,-1543,-1540,-1537,-1535,-1532,-1530,-1527,-1525,-1522,-1520,-1518,-1516,-1514,-1512,-1510,-1508,-1507,-1505,
+-1504,-1502,-1502,-1547,-1546,-1545,-1544,-1544,-1543,-1543,-1542,-1542,-1542,-1542,-1543,-1543,-1544,-1544,-1545,-1546,
+-1546,-1547,-1549,-1550,-1551,-1552,-1554,-1555,-1557,-1558,-1560,-1562,-1563,-1565,-1567,-1569,-1570,-1572,-1574,-1576,
+-1577,-1579,-1581,-1582,-1584,-1585,-1586,-1588,-1589,-1590,-1591,-1591,-1592,-1592,-1592,-1592,-1592,-1592,-1592,-1591,
+-1590,-1589,-1587,-1586,-1584,-1582,-1580,-1577,-1574,-1571,-1568,-1564,-1561,-1557,-1552,-1548,-1543,-1537,-1532,-1526,
+-1520,-1514,-1508,-1501,-1495,-1487,-1480,-1473,-1465,-1457,-1450,-1442,-1434,-1426,-1417,-1409,-1401,-1393,-1384,-1376,
+-1367,-1359,-1350,-1341,-1332,-1324,-1315,-1307,-1299,-1291,-1283,-1275,-1267,-1260,-1252,-1245,-1237,-1230,-1224,-1217,
+-1211,-1205,-1200,-1194,-1189,-1184,-1179,-1175,-1171,-1167,-1164,-1161,-1159,-1157,-1154,-1152,-1151,-1150,-1149,-1148,
+-1148,-1149,-1149,-1150,-1152,-1153,-1155,-1157,-1160,-1163,-1166,-1169,-1173,-1177,-1181,-1185,-1190,-1194,-1199,-1203,
+-1208,-1213,-1217,-1222,-1227,-1232,-1237,-1242,-1248,-1253,-1258,-1263,-1269,-1274,-1279,-1283,-1288,-1292,-1297,-1301,
+-1305,-1309,-1313,-1317,-1320,-1323,-1326,-1329,-1331,-1334,-1336,-1338,-1340,-1342,-1343,-1344,-1345,-1346,-1346,-1346,
+-1347,-1346,-1346,-1345,-1344,-1343,-1342,-1341,-1339,-1338,-1336,-1334,-1332,-1330,-1328,-1325,-1323,-1320,-1317,-1314,
+-1311,-1308,-1305,-1302,-1300,-1297,-1294,-1291,-1288,-1285,-1282,-1279,-1277,-1274,-1272,-1269,-1267,-1265,-1263,-1262,
+-1260,-1258,-1257,-1256,-1254,-1253,-1253,-1252,-1251,-1251,-1251,-1251,-1252,-1252,-1253,-1254,-1255,-1257,-1258,-1260,
+-1262,-1264,-1267,-1269,-1272,-1275,-1279,-1282,-1286,-1289,-1293,-1297,-1301,-1306,-1311,-1316,-1320,-1326,-1331,-1336,
+-1341,-1347,-1352,-1358,-1364,-1370,-1376,-1382,-1388,-1395,-1401,-1408,-1414,-1421,-1427,-1434,-1441,-1447,-1454,-1461,
+-1468,-1474,-1481,-1488,-1495,-1502,-1509,-1516,-1523,-1530,-1537,-1544,-1551,-1558,-1565,-1573,-1580,-1587,-1594,-1601,
+-1609,-1616,-1623,-1630,-1638,-1645,-1653,-1660,-1668,-1675,-1683,-1691,-1698,-1706,-1714,-1722,-1730,-1739,-1747,-1755,
+-1763,-1772,-1780,-1789,-1798,-1806,-1815,-1824,-1833,-1842,-1851,-1860,-1870,-1879,-1889,-1898,-1908,-1918,-1928,-1938,
+-1948,-1958,-1968,-1978,-1988,-1999,-2009,-2020,-2031,-2042,-2053,-2064,-2075,-2086,-2097,-2108,-2119,-2130,-2141,-2153,
+-2164,-2175,-2186,-2198,-2209,-2220,-2231,-2242,-2254,-2265,-2276,-2287,-2298,-2309,-2321,-2332,-2343,-2354,-2365,-2376,
+-2387,-2397,-2408,-2419,-2429,-2440,-2450,-2460,-2470,-2480,-2490,-2500,-2510,-2520,-2530,-2539,-2549,-2558,-2567,-2577,
+-2586,-2595,-2604,-2613,-2622,-2631,-2640,-2648,-2657,-2665,-2673,-2682,-2690,-2698,-2706,-2714,-2723,-2731,-2739,-2747,
+-2755,-2763,-2771,-2778,-2786,-2794,-2802,-2810,-2818,-2826,-2834,-2842,-2850,-2858,-2866,-2874,-2882,-2891,-2899,-2907,
+-2915,-2923,-2931,-2939,-2948,-2956,-2965,-2974,-2982,-2991,-2999,-3008,-3016,-3025,-3034,-3043,-3052,-3061,-3069,-3078,
+-3087,-3096,-3105,-3114,-3123,-3132,-3141,-3150,-3159,-3168,-3177,-3186,-3195,-3204,-3213,-3222,-3231,-3239,-3248,-3257,
+-3265,-3274,-3283,-3291,-3299,-3308,-3316,-3324,-3332,-3340,-3348,-3356,-3363,-3371,-3378,-3386,-3393,-3400,-3407,-3413,
+-3420,-3427,-3433,-3439,-3445,-3451,-3457,-3463,-3468,-3473,-3478,-3483,-3488,-3493,-3497,-3502,-3506,-3510,-3514,-3517,
+-3521,-3524,-3528,-3531,-3534,-3536,-3539,-3542,-3544,-3546,-3548,-3550,-3552,-3553,-3554,-3556,-3557,-3558,-3559,-3560,
+-3560,-3560,-3561,-3561,-3561,-3561,-3561,-3561,-3561,-3560,-3560,-3559,-3558,-3557,-3557,-3556,-3555,-3554,-3553,-3552,
+-3551,-3549,-3548,-3546,-3545,-3543,-3542,-3540,-3539,-3537,-3535,-3534,-3532,-3531,-3529,-3528,-3526,-3524,-3522,-3521,
+-3519,-3518,-3516,-3515,-3513,-3511,-3509,-3508,-3506,-3504,-3503,-3502,-3500,-3499,-3497,-3496,-3495,-3493,-3492,-3491,
+-3490,-3488,-3487,-3486,-3484,-3483,-3482,-3481,-3479,-3478,-3477,-3476,-3475,-3473,-3472,-3471,-3470,-3469,-3468,-3467,
+-3466,-3465,-3464,-3463,-3462,-3461,-3460,-3459,-3459,-3458,-3457,-3456,-3454,-3453,-3451,-3450,-3450,-3449,-3449,-3449,
+-3449,-3448,-3448,-3447,-3446,-3445,-3444,-3444,-3444,-3443,-3441,-3439,-3435,-3430,-3424,-3418,-3412,-3407,-3404,-3401,
+-3399,-3397,-3395,-3393,-3390,-3387,-3385,-3383,-3382,-3382,-3382,-3383,-3384,-3383,-3381,-3378,-3373,-3368,-3363,-3359,
+-3355,-3352,-3349,-3347,-3344,-3341,-3338,-3335,-3332,-3330,-3327,-3325,-3322,-3319,-3315,-3312,-3308,-3304,-3301,-3297,
+-3293,-3289,-3286,-3283,-3281,-3279,-3277,-3276,-3274,-3272,-3270,-3268,-3266,-3266,-3267,-3270,-3273,-3276,-3280,-3283,
+-3287,-3292,-3297,-3304,-3311,-3319,-3328,-3336,-3343,-3350,-3356,-3362,-3369,-3375,-3381,-3387,-3392,-3396,-3400,-3404,
+-3408,-3414,-3421,-3430,-3440,-3451,-3462,-3473,-3483,-3493,-3502,-3510,-3518,-3524,-3529,-3532,-3535,-3536,-3537,-3538,
+-3541,-3544,-3549,-3556,-3563,-3570,-3577,-3585,-3591,-3598,-3605,-3611,-3618,-3625,-3633,-3640,-3647,-3654,-3660,-3667,
+-3674,-3680,-3686,-3693,-3698,-3703,-3708,-3713,-3718,-3722,-3727,-3731,-3735,-3739,-3742,-3745,-3748,-3750,-3752,-3754,
+-3755,-3757,-3758,-3759,-3759,-3760,-3760,-3760,-3760,-3759,-3758,-3757,-3755,-3754,-3752,-3750,-3748,-3746,-3744,-3741,
+-3738,-3734,-3731,-3728,-3724,-3721,-3718,-3714,-3711,-3707,-3703,-3698,-3693,-3688,-3683,-3679,-3674,-3669,-3664,-3659,
+-3654,-3649,-3644,-3638,-3632,-3627,-3621,-3616,-3611,-3605,-3599,-3594,-3588,-3582,-3576,-3570,-3565,-3559,-3553,-3547,
+-3542,-3536,-3530,-3524,-3518,-3513,-3507,-3502,-3497,-3491,-3486,-3480,-3474,-3469,-3463,-3458,-3452,-3446,-3441,-3435,
+-3430,-3425,-3420,-3414,-3409,-3404,-3399,-3394,-3389,-3384,-3379,-3375,-3370,-3366,-3362,-3357,-3353,-3349,-3344,-3340,
+-3336,-3332,-3328,-3324,-3319,-3315,-3311,-3308,-3305,-3301,-3298,-3294,-3289,-3284,-3278,-3273,-3268,-3264,-3262,-3260,
+-3260,-3259,-3258,-3257,-3255,-3252,-3249,-3246,-3242,-3237,-3232,-3226,-3220,-3213,-3207,-3200,-3194,-3188,-3183,-3177,
+-3171,-3165,-3159,-3153,-3147,-3141,-3136,-3131,-3125,-3120,-3115,-3109,-3104,-3098,-3092,-3086,-3080,-3073,-3067,-3060,
+-3054,-3047,-3040,-3034,-3027,-3021,-3014,-3007,-2999,-2992,-2985,-2977,-2970,-2962,-2955,-2947,-2940,-2932,-2924,-2916,
+-2909,-2901,-2893,-2886,-2878,-2870,-2863,-2855,-2848,-2840,-2833,-2825,-2818,-2811,-2804,-2797,-2790,-2783,-2777,-2770,
+-2764,-2758,-2751,-2745,-2739,-2734,-2728,-2723,-2718,-2713,-2708,-2703,-2699,-2695,-2691,-2688,-2685,-2682,-2679,-2676,
+-2674,-2672,-2670,-2669,-2668,-2667,-2666,-2665,-2665,-2664,-2664,-2664,-2665,-2666,-2667,-2669,-2671,-2673,-2675,-2677,
+-2680,-2682,-2685,-2689,-2692,-2696,-2700,-2704,-2709,-2713,-2718,-2722,-2727,-2732,-2736,-2741,-2746,-2752,-2756,-2761,
+-2765,-2769,-2772,-2775,-2778,-2782,-2785,-2789,-2794,-2799,-2803,-2808,-2812,-2816,-2819,-2823,-2826,-2829,-2832,-2835,
+-2838,-2841,-2844,-2846,-2848,-2850,-2851,-2853,-2854,-2854,-2855,-2855,-2854,-2854,-2853,-2852,-2850,-2848,-2845,-2843,
+-2840,-2836,-2832,-2828,-2824,-2819,-2814,-2808,-2803,-2796,-2790,-2784,-2777,-2770,-2763,-2755,-2747,-2739,-2730,-2722,
+-2713,-2705,-2696,-2687,-2678,-2668,-2659,-2649,-2639,-2629,-2620,-2610,-2600,-2591,-2581,-2571,-2562,-2552,-2543,-2534,
+-2525,-2516,-2508,-2499,-2491,-2483,-2474,-2466,-2459,-2451,-2444,-2437,-2430,-2423,-2417,-2410,-2405,-2399,-2394,-2389,
+-2384,-2380,-2376,-2372,-2369,-2365,-2363,-2360,-2358,-2356,-2355,-2354,-2353,-2352,-2352,-2352,-2352,-2353,-2353,-2355,
+-2356,-2358,-2360,-2362,-2365,-2368,-2371,-2374,-2378,-2381,-2385,-2389,-2393,-2397,-2401,-2406,-2410,-2415,-2420,-2425,
+-2430,-2434,-2439,-2444,-2448,-2453,-2458,-2462,-2467,-2471,-2475,-2480,-2483,-2487,-2491,-2494,-2497,-2500,-2503,-2506,
+-2508,-2510,-2512,-2514,-2515,-2516,-2516,-2516,-2517,-2516,-2516,-2515,-2514,-2512,-2510,-2508,-2505,-2502,-2498,-2495,
+-2490,-2486,-2481,-2476,-2470,-2464,-2457,-2451,-2444,-2436,-2429,-2421,-2413,-2405,-2396,-2387,-2378,-2368,-2358,-2348,
+-2338,-2327,-2317,-2306,-2294,-2283,-2271,-2259,-2247,-2235,-2223,-2210,-2198,-2185,-2172,-2160,-2147,-2134,-2122,-2109,
+-2096,-2083,-2071,-2058,-2045,-2033,-2020,-2008,-1996,-1985,-1973,-1961,-1949,-1938,-1927,-1915,-1904,-1894,-1883,-1873,
+-1863,-1853,-1843,-1834,-1825,-1816,-1807,-1799,-1791,-1783,-1776,-1769,-1762,-1755,-1749,-1743,-1737,-1731,-1726,-1721,
+-1716,-1711,-1707,-1703,-1699,-1695,-1691,-1688,-1685,-1682,-1679,-1677,-1674,-1672,-1670,-1669,-1667,-1666,-1665,-1664,
+-1663,-1662,-1661,-1660,-1659,-1659,-1658,-1658,-1657,-1657,-1657,-1656,-1656,-1656,-1655,-1655,-1655,-1655,-1655,-1655,
+-1654,-1654,-1654,-1653,-1653,-1652,-1652,-1651,-1650,-1650,-1649,-1648,-1647,-1646,-1645,-1644,-1642,-1641,-1640,-1638,
+-1637,-1635,-1633,-1632,-1630,-1627,-1625,-1623,-1621,-1619,-1617,-1614,-1612,-1610,-1607,-1605,-1602,-1600,-1597,-1595,
+-1592,-1590,-1587,-1585,-1582,-1580,-1577,-1575,-1573,-1571,-1569,-1566,-1564,-1562,-1560,-1558,-1557,-1555,-1553,-1552,
+-1550,-1549,-1548,-1547,-1606,-1605,-1603,-1602,-1601,-1600,-1599,-1598,-1597,-1597,-1596,-1596,-1596,-1596,-1595,-1595,
+-1595,-1595,-1595,-1595,-1596,-1596,-1596,-1597,-1597,-1598,-1598,-1599,-1600,-1600,-1601,-1602,-1602,-1603,-1603,-1604,
+-1604,-1605,-1605,-1606,-1606,-1607,-1607,-1608,-1608,-1608,-1608,-1608,-1608,-1608,-1607,-1607,-1606,-1605,-1605,-1604,
+-1602,-1601,-1600,-1598,-1596,-1594,-1592,-1590,-1587,-1584,-1582,-1578,-1575,-1572,-1568,-1564,-1560,-1556,-1552,-1547,
+-1542,-1537,-1532,-1527,-1522,-1516,-1511,-1505,-1499,-1493,-1488,-1482,-1475,-1469,-1463,-1457,-1450,-1444,-1438,-1432,
+-1425,-1419,-1413,-1406,-1400,-1393,-1387,-1381,-1374,-1368,-1362,-1356,-1351,-1345,-1339,-1334,-1328,-1323,-1318,-1313,
+-1308,-1304,-1300,-1295,-1291,-1288,-1284,-1281,-1278,-1275,-1272,-1270,-1268,-1266,-1264,-1263,-1261,-1260,-1259,-1259,
+-1258,-1259,-1259,-1260,-1260,-1261,-1263,-1264,-1266,-1267,-1269,-1271,-1274,-1276,-1279,-1282,-1285,-1288,-1291,-1294,
+-1297,-1301,-1304,-1307,-1311,-1314,-1317,-1321,-1324,-1327,-1331,-1334,-1338,-1341,-1345,-1348,-1351,-1354,-1357,-1360,
+-1363,-1366,-1368,-1371,-1373,-1375,-1377,-1379,-1381,-1382,-1383,-1384,-1385,-1386,-1386,-1387,-1387,-1388,-1388,-1388,
+-1388,-1387,-1387,-1386,-1385,-1384,-1383,-1381,-1380,-1378,-1377,-1375,-1373,-1371,-1369,-1367,-1365,-1363,-1361,-1359,
+-1356,-1354,-1351,-1349,-1346,-1343,-1341,-1339,-1336,-1334,-1332,-1329,-1327,-1325,-1323,-1321,-1319,-1317,-1316,-1314,
+-1313,-1311,-1310,-1309,-1308,-1307,-1307,-1306,-1306,-1306,-1306,-1306,-1306,-1307,-1308,-1309,-1310,-1311,-1312,-1314,
+-1316,-1318,-1320,-1322,-1325,-1327,-1330,-1334,-1337,-1340,-1344,-1348,-1352,-1356,-1360,-1365,-1369,-1374,-1379,-1384,
+-1389,-1395,-1400,-1406,-1411,-1417,-1423,-1429,-1435,-1441,-1448,-1454,-1461,-1467,-1474,-1480,-1487,-1494,-1501,-1508,
+-1515,-1522,-1530,-1537,-1544,-1551,-1559,-1566,-1574,-1582,-1589,-1597,-1604,-1612,-1620,-1627,-1635,-1643,-1651,-1659,
+-1667,-1675,-1683,-1691,-1699,-1707,-1716,-1724,-1732,-1741,-1749,-1757,-1766,-1774,-1783,-1792,-1800,-1809,-1818,-1827,
+-1836,-1845,-1854,-1863,-1872,-1881,-1891,-1900,-1909,-1919,-1928,-1938,-1948,-1957,-1967,-1977,-1987,-1997,-2007,-2017,
+-2028,-2038,-2048,-2059,-2069,-2080,-2090,-2101,-2111,-2122,-2133,-2144,-2155,-2165,-2176,-2187,-2198,-2209,-2220,-2231,
+-2242,-2253,-2264,-2274,-2285,-2296,-2307,-2318,-2329,-2340,-2350,-2361,-2372,-2383,-2393,-2404,-2415,-2426,-2437,-2447,
+-2458,-2468,-2478,-2488,-2499,-2509,-2519,-2529,-2539,-2549,-2558,-2568,-2578,-2587,-2597,-2606,-2616,-2625,-2634,-2644,
+-2652,-2661,-2670,-2679,-2688,-2697,-2705,-2714,-2722,-2731,-2739,-2747,-2755,-2764,-2772,-2780,-2788,-2796,-2804,-2812,
+-2820,-2828,-2835,-2843,-2851,-2859,-2867,-2875,-2882,-2890,-2898,-2906,-2913,-2921,-2929,-2937,-2945,-2953,-2960,-2968,
+-2976,-2984,-2991,-2999,-3007,-3015,-3023,-3031,-3038,-3046,-3054,-3062,-3070,-3078,-3086,-3094,-3102,-3110,-3118,-3126,
+-3134,-3142,-3150,-3158,-3166,-3174,-3182,-3190,-3198,-3206,-3214,-3221,-3229,-3237,-3245,-3252,-3260,-3268,-3275,-3283,
+-3290,-3297,-3304,-3312,-3319,-3326,-3333,-3340,-3347,-3353,-3360,-3367,-3373,-3379,-3386,-3392,-3397,-3403,-3409,-3414,
+-3419,-3424,-3429,-3435,-3440,-3444,-3449,-3454,-3458,-3462,-3466,-3470,-3474,-3477,-3480,-3483,-3486,-3489,-3491,-3494,
+-3496,-3498,-3500,-3502,-3504,-3505,-3507,-3508,-3509,-3510,-3511,-3512,-3513,-3514,-3515,-3515,-3515,-3516,-3516,-3516,
+-3515,-3515,-3515,-3515,-3514,-3514,-3513,-3512,-3512,-3511,-3510,-3509,-3508,-3506,-3505,-3504,-3502,-3501,-3499,-3498,
+-3496,-3495,-3493,-3492,-3490,-3489,-3487,-3486,-3484,-3482,-3481,-3479,-3478,-3477,-3475,-3474,-3472,-3471,-3469,-3468,
+-3466,-3465,-3463,-3462,-3461,-3460,-3459,-3458,-3457,-3456,-3455,-3454,-3453,-3453,-3452,-3451,-3451,-3450,-3449,-3448,
+-3447,-3446,-3445,-3445,-3444,-3443,-3442,-3442,-3441,-3441,-3441,-3441,-3441,-3440,-3440,-3440,-3440,-3440,-3440,-3440,
+-3439,-3439,-3438,-3437,-3436,-3435,-3435,-3434,-3433,-3433,-3432,-3432,-3431,-3430,-3429,-3428,-3427,-3426,-3425,-3424,
+-3423,-3422,-3421,-3419,-3418,-3416,-3414,-3412,-3410,-3408,-3406,-3404,-3401,-3398,-3395,-3391,-3387,-3382,-3378,-3373,
+-3369,-3365,-3362,-3359,-3356,-3353,-3350,-3347,-3344,-3340,-3337,-3333,-3329,-3325,-3321,-3317,-3313,-3309,-3305,-3301,
+-3297,-3293,-3290,-3286,-3283,-3280,-3276,-3272,-3268,-3264,-3260,-3256,-3252,-3248,-3244,-3240,-3236,-3232,-3228,-3225,
+-3221,-3217,-3213,-3209,-3205,-3202,-3198,-3196,-3193,-3192,-3190,-3189,-3189,-3188,-3188,-3188,-3189,-3190,-3192,-3193,
+-3196,-3198,-3200,-3202,-3204,-3207,-3210,-3214,-3218,-3222,-3226,-3231,-3235,-3240,-3245,-3251,-3256,-3261,-3267,-3272,
+-3277,-3282,-3288,-3294,-3300,-3307,-3314,-3322,-3329,-3336,-3343,-3350,-3356,-3362,-3368,-3374,-3379,-3385,-3390,-3395,
+-3400,-3406,-3413,-3421,-3430,-3440,-3449,-3456,-3461,-3464,-3464,-3463,-3462,-3462,-3464,-3469,-3476,-3485,-3494,-3502,
+-3509,-3513,-3515,-3517,-3518,-3520,-3524,-3529,-3535,-3542,-3550,-3556,-3562,-3567,-3571,-3575,-3578,-3580,-3582,-3583,
+-3584,-3585,-3585,-3585,-3586,-3586,-3587,-3587,-3587,-3587,-3586,-3584,-3583,-3581,-3579,-3578,-3577,-3576,-3575,-3574,
+-3573,-3571,-3569,-3566,-3564,-3561,-3558,-3555,-3552,-3548,-3544,-3539,-3534,-3529,-3524,-3519,-3514,-3509,-3505,-3501,
+-3498,-3494,-3490,-3485,-3480,-3475,-3470,-3466,-3461,-3456,-3452,-3446,-3441,-3435,-3429,-3422,-3416,-3411,-3405,-3400,
+-3395,-3390,-3385,-3379,-3373,-3368,-3364,-3360,-3357,-3355,-3354,-3352,-3349,-3345,-3341,-3335,-3329,-3322,-3315,-3308,
+-3301,-3295,-3288,-3282,-3276,-3271,-3266,-3261,-3257,-3253,-3249,-3244,-3240,-3236,-3232,-3229,-3226,-3225,-3224,-3223,
+-3222,-3220,-3218,-3217,-3217,-3219,-3223,-3229,-3236,-3244,-3249,-3252,-3252,-3248,-3242,-3235,-3228,-3224,-3221,-3221,
+-3222,-3222,-3222,-3219,-3213,-3206,-3198,-3190,-3182,-3174,-3168,-3162,-3157,-3151,-3146,-3140,-3135,-3130,-3125,-3121,
+-3116,-3112,-3107,-3102,-3097,-3092,-3087,-3082,-3078,-3073,-3068,-3063,-3058,-3053,-3047,-3042,-3037,-3031,-3026,-3020,
+-3015,-3009,-3003,-2997,-2991,-2985,-2979,-2973,-2967,-2961,-2954,-2948,-2941,-2934,-2928,-2921,-2915,-2909,-2902,-2896,
+-2889,-2883,-2876,-2869,-2863,-2856,-2850,-2844,-2837,-2831,-2825,-2819,-2813,-2807,-2801,-2796,-2790,-2785,-2779,-2774,
+-2770,-2765,-2760,-2756,-2752,-2747,-2743,-2739,-2735,-2731,-2728,-2724,-2721,-2718,-2716,-2713,-2710,-2707,-2705,-2702,
+-2700,-2698,-2697,-2695,-2694,-2694,-2693,-2693,-2693,-2694,-2694,-2695,-2695,-2696,-2697,-2698,-2700,-2702,-2703,-2706,
+-2708,-2711,-2713,-2716,-2719,-2723,-2726,-2729,-2733,-2736,-2740,-2744,-2748,-2752,-2756,-2760,-2765,-2769,-2773,-2777,
+-2782,-2786,-2790,-2795,-2798,-2802,-2805,-2808,-2810,-2813,-2815,-2817,-2820,-2822,-2825,-2827,-2829,-2832,-2834,-2836,
+-2838,-2839,-2841,-2842,-2843,-2844,-2844,-2844,-2844,-2843,-2842,-2841,-2839,-2837,-2835,-2832,-2829,-2826,-2822,-2818,
+-2814,-2810,-2805,-2799,-2794,-2788,-2782,-2775,-2769,-2761,-2754,-2747,-2739,-2730,-2722,-2713,-2704,-2695,-2686,-2677,
+-2667,-2657,-2648,-2637,-2627,-2617,-2606,-2595,-2585,-2574,-2563,-2553,-2542,-2532,-2521,-2511,-2501,-2490,-2480,-2471,
+-2461,-2451,-2442,-2432,-2423,-2414,-2405,-2396,-2388,-2380,-2372,-2365,-2358,-2351,-2344,-2337,-2331,-2325,-2319,-2314,
+-2308,-2303,-2299,-2295,-2291,-2287,-2285,-2282,-2280,-2278,-2276,-2275,-2274,-2273,-2273,-2273,-2274,-2275,-2276,-2278,
+-2280,-2282,-2285,-2288,-2291,-2295,-2299,-2303,-2307,-2312,-2316,-2321,-2327,-2332,-2338,-2344,-2350,-2357,-2363,-2370,
+-2376,-2383,-2390,-2398,-2405,-2412,-2420,-2427,-2434,-2442,-2449,-2456,-2463,-2470,-2477,-2484,-2491,-2497,-2504,-2510,
+-2516,-2522,-2528,-2533,-2538,-2543,-2548,-2552,-2556,-2560,-2563,-2566,-2569,-2572,-2574,-2576,-2578,-2579,-2580,-2580,
+-2580,-2580,-2579,-2578,-2577,-2575,-2573,-2571,-2569,-2566,-2562,-2558,-2554,-2549,-2544,-2539,-2533,-2526,-2520,-2513,
+-2506,-2499,-2491,-2483,-2475,-2466,-2457,-2448,-2438,-2429,-2419,-2409,-2399,-2389,-2378,-2368,-2356,-2345,-2334,-2322,
+-2311,-2299,-2287,-2276,-2264,-2252,-2240,-2228,-2217,-2205,-2193,-2181,-2169,-2158,-2146,-2134,-2123,-2111,-2100,-2089,
+-2078,-2067,-2056,-2045,-2035,-2025,-2015,-2005,-1995,-1985,-1976,-1967,-1958,-1950,-1941,-1933,-1925,-1917,-1909,-1902,
+-1895,-1887,-1880,-1874,-1867,-1861,-1855,-1849,-1843,-1837,-1832,-1827,-1822,-1817,-1813,-1809,-1804,-1801,-1797,-1793,
+-1790,-1787,-1783,-1780,-1777,-1774,-1771,-1768,-1766,-1763,-1760,-1758,-1756,-1754,-1752,-1750,-1748,-1746,-1744,-1742,
+-1741,-1739,-1737,-1735,-1734,-1732,-1730,-1729,-1727,-1725,-1723,-1721,-1720,-1718,-1716,-1714,-1712,-1710,-1708,-1705,
+-1703,-1701,-1699,-1697,-1695,-1693,-1690,-1688,-1686,-1683,-1681,-1679,-1676,-1674,-1671,-1669,-1666,-1664,-1661,-1658,
+-1656,-1653,-1651,-1648,-1646,-1644,-1641,-1639,-1636,-1634,-1632,-1629,-1627,-1625,-1623,-1621,-1619,-1617,-1615,-1613,
+-1611,-1610,-1608,-1607,-1606,-1687,-1685,-1683,-1681,-1680,-1678,-1676,-1675,-1673,-1672,-1670,-1669,-1668,-1667,-1665,
+-1664,-1663,-1662,-1661,-1660,-1660,-1659,-1658,-1657,-1657,-1656,-1656,-1655,-1654,-1654,-1653,-1653,-1652,-1652,-1651,
+-1650,-1650,-1649,-1649,-1648,-1647,-1647,-1646,-1645,-1645,-1644,-1643,-1642,-1641,-1639,-1638,-1637,-1636,-1635,-1633,
+-1632,-1630,-1628,-1626,-1624,-1622,-1620,-1618,-1616,-1613,-1610,-1608,-1605,-1602,-1599,-1596,-1593,-1589,-1586,-1582,
+-1578,-1574,-1570,-1566,-1562,-1558,-1554,-1550,-1545,-1541,-1537,-1532,-1527,-1523,-1518,-1514,-1509,-1505,-1500,-1495,
+-1491,-1486,-1482,-1477,-1472,-1468,-1464,-1459,-1455,-1451,-1446,-1442,-1438,-1434,-1430,-1426,-1422,-1418,-1414,-1411,
+-1408,-1404,-1401,-1399,-1396,-1393,-1391,-1388,-1386,-1384,-1382,-1380,-1379,-1377,-1376,-1375,-1374,-1373,-1373,-1372,
+-1372,-1372,-1372,-1372,-1372,-1373,-1373,-1374,-1375,-1376,-1377,-1378,-1379,-1381,-1382,-1384,-1386,-1387,-1389,-1391,
+-1393,-1395,-1397,-1399,-1402,-1404,-1406,-1408,-1410,-1412,-1414,-1416,-1418,-1420,-1421,-1423,-1425,-1427,-1428,-1430,
+-1431,-1432,-1434,-1435,-1436,-1437,-1438,-1439,-1439,-1440,-1440,-1441,-1441,-1441,-1441,-1441,-1441,-1440,-1440,-1439,
+-1438,-1438,-1437,-1436,-1435,-1434,-1433,-1431,-1430,-1428,-1427,-1425,-1423,-1421,-1420,-1418,-1416,-1414,-1412,-1410,
+-1408,-1405,-1403,-1401,-1399,-1397,-1395,-1393,-1391,-1389,-1387,-1385,-1384,-1382,-1380,-1379,-1377,-1376,-1374,-1373,
+-1372,-1371,-1370,-1369,-1368,-1368,-1367,-1367,-1367,-1367,-1367,-1367,-1368,-1369,-1370,-1371,-1372,-1373,-1374,-1376,
+-1378,-1380,-1382,-1384,-1386,-1389,-1392,-1395,-1398,-1401,-1405,-1408,-1412,-1416,-1420,-1425,-1429,-1434,-1438,-1443,
+-1448,-1454,-1459,-1465,-1470,-1476,-1482,-1488,-1494,-1500,-1506,-1513,-1519,-1526,-1533,-1540,-1547,-1554,-1561,-1568,
+-1576,-1583,-1590,-1598,-1606,-1613,-1621,-1629,-1637,-1645,-1653,-1661,-1669,-1677,-1686,-1694,-1702,-1711,-1719,-1727,
+-1736,-1744,-1753,-1762,-1770,-1779,-1788,-1797,-1806,-1815,-1824,-1833,-1842,-1851,-1860,-1869,-1878,-1888,-1897,-1906,
+-1915,-1925,-1934,-1944,-1954,-1963,-1973,-1982,-1992,-2002,-2012,-2022,-2032,-2042,-2052,-2062,-2072,-2082,-2092,-2102,
+-2112,-2122,-2133,-2143,-2154,-2164,-2174,-2185,-2195,-2205,-2216,-2226,-2237,-2247,-2258,-2268,-2279,-2289,-2299,-2310,
+-2320,-2331,-2341,-2352,-2362,-2373,-2383,-2393,-2404,-2414,-2424,-2434,-2445,-2455,-2465,-2476,-2486,-2496,-2506,-2516,
+-2526,-2536,-2546,-2555,-2565,-2575,-2584,-2594,-2603,-2613,-2622,-2631,-2641,-2650,-2659,-2668,-2677,-2686,-2695,-2704,
+-2713,-2721,-2730,-2739,-2747,-2756,-2764,-2772,-2780,-2789,-2797,-2805,-2814,-2822,-2830,-2838,-2846,-2853,-2861,-2869,
+-2877,-2885,-2893,-2901,-2909,-2916,-2924,-2931,-2939,-2946,-2954,-2962,-2969,-2977,-2984,-2992,-2999,-3007,-3014,-3022,
+-3029,-3037,-3044,-3052,-3059,-3066,-3074,-3081,-3088,-3096,-3103,-3110,-3118,-3125,-3132,-3139,-3147,-3154,-3161,-3168,
+-3175,-3183,-3190,-3197,-3204,-3211,-3218,-3225,-3232,-3239,-3246,-3253,-3260,-3266,-3273,-3279,-3286,-3292,-3299,-3305,
+-3311,-3318,-3324,-3330,-3336,-3342,-3347,-3353,-3359,-3365,-3370,-3375,-3380,-3385,-3390,-3395,-3400,-3404,-3409,-3413,
+-3418,-3422,-3426,-3430,-3433,-3437,-3440,-3443,-3446,-3450,-3452,-3455,-3458,-3461,-3463,-3465,-3467,-3469,-3471,-3472,
+-3474,-3475,-3477,-3478,-3479,-3479,-3480,-3481,-3481,-3481,-3481,-3481,-3481,-3481,-3481,-3480,-3480,-3479,-3479,-3478,
+-3478,-3477,-3476,-3475,-3474,-3473,-3471,-3470,-3469,-3468,-3467,-3465,-3464,-3463,-3461,-3460,-3458,-3456,-3455,-3453,
+-3452,-3450,-3448,-3447,-3445,-3443,-3441,-3440,-3438,-3437,-3435,-3434,-3433,-3431,-3430,-3429,-3427,-3426,-3424,-3423,
+-3422,-3421,-3420,-3419,-3418,-3417,-3416,-3415,-3414,-3414,-3413,-3412,-3412,-3411,-3411,-3410,-3409,-3408,-3408,-3407,
+-3407,-3406,-3406,-3405,-3405,-3404,-3404,-3404,-3403,-3403,-3403,-3403,-3403,-3403,-3403,-3403,-3403,-3403,-3403,-3403,
+-3402,-3402,-3402,-3402,-3401,-3401,-3401,-3401,-3400,-3400,-3400,-3399,-3399,-3398,-3397,-3396,-3395,-3394,-3393,-3392,
+-3391,-3390,-3389,-3387,-3386,-3385,-3383,-3382,-3380,-3378,-3376,-3373,-3371,-3367,-3364,-3361,-3357,-3354,-3351,-3347,
+-3344,-3341,-3337,-3333,-3329,-3325,-3321,-3317,-3313,-3308,-3304,-3300,-3296,-3291,-3287,-3282,-3278,-3273,-3269,-3264,
+-3260,-3256,-3252,-3248,-3244,-3240,-3237,-3233,-3229,-3224,-3220,-3215,-3211,-3207,-3203,-3199,-3195,-3191,-3188,-3184,
+-3180,-3176,-3171,-3167,-3163,-3159,-3155,-3151,-3148,-3145,-3142,-3140,-3138,-3136,-3135,-3134,-3133,-3133,-3133,-3133,
+-3134,-3134,-3135,-3136,-3137,-3138,-3139,-3141,-3142,-3144,-3146,-3149,-3151,-3154,-3157,-3159,-3162,-3165,-3168,-3171,
+-3174,-3177,-3181,-3184,-3188,-3192,-3197,-3201,-3206,-3211,-3216,-3221,-3227,-3233,-3239,-3245,-3252,-3258,-3265,-3271,
+-3278,-3286,-3294,-3303,-3312,-3321,-3329,-3336,-3341,-3345,-3346,-3346,-3346,-3345,-3345,-3346,-3347,-3349,-3351,-3353,
+-3354,-3356,-3356,-3357,-3359,-3361,-3365,-3369,-3374,-3380,-3386,-3391,-3396,-3401,-3406,-3411,-3417,-3422,-3427,-3431,
+-3434,-3435,-3436,-3434,-3432,-3429,-3426,-3423,-3421,-3419,-3418,-3416,-3415,-3414,-3413,-3412,-3411,-3410,-3409,-3409,
+-3408,-3408,-3407,-3405,-3404,-3402,-3399,-3397,-3394,-3392,-3389,-3386,-3383,-3381,-3378,-3375,-3372,-3370,-3368,-3366,
+-3364,-3363,-3361,-3360,-3358,-3357,-3356,-3354,-3352,-3349,-3344,-3338,-3330,-3322,-3313,-3306,-3299,-3295,-3292,-3291,
+-3290,-3288,-3286,-3283,-3279,-3274,-3269,-3264,-3259,-3254,-3248,-3242,-3235,-3228,-3221,-3215,-3211,-3209,-3209,-3211,
+-3211,-3211,-3208,-3202,-3194,-3185,-3175,-3166,-3159,-3153,-3149,-3146,-3144,-3142,-3138,-3135,-3131,-3126,-3122,-3119,
+-3116,-3113,-3111,-3109,-3107,-3107,-3107,-3108,-3110,-3112,-3113,-3114,-3112,-3110,-3107,-3103,-3100,-3099,-3099,-3101,
+-3104,-3106,-3108,-3109,-3108,-3105,-3102,-3098,-3095,-3092,-3089,-3087,-3085,-3083,-3080,-3078,-3075,-3072,-3069,-3066,
+-3063,-3061,-3058,-3054,-3051,-3047,-3043,-3040,-3036,-3033,-3029,-3026,-3022,-3018,-3013,-3009,-3005,-3000,-2996,-2992,
+-2988,-2983,-2978,-2973,-2968,-2962,-2957,-2953,-2948,-2943,-2938,-2933,-2928,-2923,-2918,-2912,-2907,-2903,-2898,-2893,
+-2888,-2882,-2877,-2871,-2866,-2861,-2855,-2851,-2846,-2841,-2836,-2831,-2826,-2821,-2816,-2812,-2808,-2804,-2800,-2796,
+-2792,-2788,-2785,-2781,-2777,-2774,-2771,-2768,-2765,-2762,-2759,-2756,-2754,-2751,-2749,-2746,-2744,-2743,-2741,-2739,
+-2738,-2736,-2735,-2734,-2733,-2733,-2732,-2732,-2732,-2732,-2732,-2733,-2733,-2733,-2734,-2735,-2736,-2737,-2739,-2740,
+-2742,-2744,-2746,-2748,-2750,-2753,-2755,-2758,-2760,-2763,-2766,-2769,-2771,-2774,-2777,-2780,-2783,-2786,-2789,-2792,
+-2795,-2798,-2800,-2803,-2806,-2808,-2811,-2813,-2815,-2817,-2819,-2820,-2822,-2823,-2824,-2825,-2826,-2827,-2828,-2828,
+-2828,-2828,-2828,-2827,-2826,-2825,-2824,-2823,-2821,-2819,-2817,-2814,-2811,-2808,-2804,-2800,-2796,-2792,-2787,-2782,
+-2777,-2771,-2765,-2759,-2753,-2746,-2740,-2732,-2725,-2717,-2709,-2701,-2692,-2684,-2675,-2666,-2656,-2647,-2637,-2628,
+-2618,-2608,-2597,-2587,-2576,-2566,-2555,-2544,-2534,-2523,-2512,-2502,-2491,-2480,-2470,-2459,-2449,-2439,-2429,-2419,
+-2409,-2399,-2389,-2380,-2370,-2361,-2352,-2344,-2335,-2327,-2319,-2312,-2304,-2297,-2290,-2284,-2278,-2272,-2266,-2261,
+-2256,-2251,-2247,-2243,-2240,-2237,-2234,-2231,-2229,-2227,-2226,-2225,-2224,-2224,-2224,-2224,-2225,-2226,-2228,-2230,
+-2232,-2234,-2237,-2241,-2244,-2248,-2252,-2257,-2262,-2267,-2272,-2278,-2284,-2291,-2297,-2304,-2311,-2319,-2326,-2334,
+-2342,-2350,-2358,-2367,-2375,-2384,-2393,-2402,-2411,-2420,-2429,-2438,-2447,-2456,-2465,-2474,-2483,-2492,-2501,-2509,
+-2518,-2526,-2535,-2543,-2551,-2558,-2565,-2573,-2579,-2586,-2593,-2599,-2605,-2611,-2616,-2622,-2627,-2632,-2636,-2640,
+-2644,-2647,-2650,-2653,-2655,-2657,-2658,-2659,-2660,-2660,-2660,-2659,-2659,-2657,-2656,-2654,-2652,-2649,-2646,-2643,
+-2639,-2635,-2631,-2626,-2621,-2616,-2611,-2605,-2599,-2592,-2586,-2578,-2571,-2563,-2555,-2547,-2538,-2529,-2520,-2511,
+-2502,-2493,-2483,-2473,-2463,-2453,-2442,-2432,-2421,-2411,-2400,-2390,-2379,-2368,-2358,-2347,-2336,-2325,-2314,-2304,
+-2293,-2282,-2271,-2261,-2250,-2240,-2229,-2219,-2209,-2199,-2189,-2179,-2169,-2159,-2150,-2140,-2131,-2122,-2113,-2104,
+-2096,-2087,-2079,-2071,-2063,-2055,-2047,-2039,-2032,-2024,-2017,-2010,-2003,-1996,-1990,-1984,-1978,-1972,-1966,-1960,
+-1955,-1949,-1944,-1939,-1934,-1929,-1924,-1919,-1915,-1910,-1906,-1902,-1897,-1893,-1889,-1886,-1882,-1878,-1875,-1871,
+-1868,-1864,-1861,-1858,-1855,-1851,-1848,-1845,-1842,-1839,-1836,-1833,-1830,-1827,-1824,-1821,-1818,-1815,-1812,-1809,
+-1807,-1804,-1801,-1798,-1795,-1792,-1789,-1787,-1784,-1781,-1778,-1776,-1773,-1770,-1767,-1764,-1761,-1758,-1755,-1752,
+-1749,-1747,-1744,-1741,-1738,-1735,-1732,-1730,-1727,-1724,-1722,-1719,-1717,-1714,-1711,-1709,-1706,-1704,-1702,-1699,
+-1697,-1695,-1693,-1691,-1689,-1687,-1795,-1793,-1790,-1787,-1785,-1782,-1780,-1777,-1775,-1773,-1770,-1768,-1766,-1763,
+-1761,-1759,-1757,-1755,-1753,-1751,-1749,-1747,-1745,-1743,-1741,-1739,-1737,-1736,-1734,-1732,-1730,-1728,-1726,-1725,
+-1723,-1721,-1720,-1718,-1716,-1714,-1712,-1710,-1709,-1707,-1705,-1703,-1701,-1699,-1697,-1695,-1693,-1691,-1689,-1687,
+-1685,-1683,-1681,-1678,-1676,-1674,-1671,-1669,-1666,-1664,-1661,-1658,-1656,-1653,-1650,-1647,-1644,-1641,-1638,-1635,
+-1632,-1629,-1626,-1622,-1619,-1616,-1612,-1609,-1606,-1602,-1599,-1595,-1592,-1589,-1585,-1582,-1578,-1575,-1571,-1568,
+-1565,-1561,-1558,-1554,-1551,-1548,-1545,-1542,-1539,-1535,-1532,-1530,-1527,-1524,-1521,-1519,-1516,-1514,-1511,-1509,
+-1506,-1504,-1502,-1500,-1498,-1496,-1494,-1493,-1491,-1490,-1488,-1487,-1486,-1485,-1484,-1483,-1482,-1482,-1481,-1481,
+-1480,-1480,-1480,-1480,-1480,-1480,-1480,-1480,-1481,-1481,-1482,-1483,-1483,-1484,-1485,-1486,-1486,-1487,-1488,-1489,
+-1490,-1491,-1492,-1493,-1494,-1495,-1496,-1497,-1498,-1499,-1500,-1501,-1502,-1503,-1503,-1504,-1505,-1506,-1506,-1507,
+-1507,-1508,-1508,-1508,-1509,-1509,-1509,-1509,-1509,-1509,-1509,-1508,-1508,-1508,-1507,-1507,-1506,-1506,-1505,-1504,
+-1503,-1502,-1501,-1500,-1499,-1497,-1496,-1495,-1493,-1492,-1490,-1489,-1487,-1485,-1484,-1482,-1481,-1479,-1477,-1476,
+-1474,-1472,-1471,-1469,-1467,-1465,-1464,-1462,-1461,-1459,-1458,-1457,-1455,-1454,-1453,-1452,-1451,-1450,-1449,-1448,
+-1447,-1447,-1446,-1446,-1446,-1446,-1446,-1446,-1446,-1446,-1447,-1447,-1448,-1449,-1450,-1451,-1452,-1454,-1455,-1457,
+-1459,-1461,-1464,-1466,-1468,-1471,-1474,-1477,-1480,-1484,-1487,-1491,-1495,-1499,-1503,-1507,-1511,-1516,-1521,-1525,
+-1530,-1536,-1541,-1546,-1552,-1557,-1563,-1569,-1575,-1581,-1588,-1594,-1601,-1607,-1614,-1621,-1628,-1635,-1642,-1649,
+-1657,-1664,-1672,-1679,-1687,-1695,-1703,-1710,-1718,-1727,-1735,-1743,-1751,-1760,-1768,-1777,-1785,-1794,-1802,-1811,
+-1820,-1829,-1838,-1847,-1855,-1864,-1873,-1882,-1891,-1900,-1910,-1919,-1928,-1937,-1947,-1956,-1965,-1975,-1984,-1994,
+-2003,-2013,-2022,-2032,-2041,-2051,-2061,-2070,-2080,-2089,-2099,-2109,-2119,-2129,-2138,-2148,-2158,-2168,-2178,-2187,
+-2197,-2207,-2217,-2227,-2237,-2247,-2257,-2266,-2276,-2286,-2296,-2306,-2316,-2326,-2336,-2346,-2356,-2366,-2375,-2385,
+-2395,-2405,-2415,-2424,-2434,-2444,-2454,-2463,-2473,-2482,-2492,-2501,-2511,-2520,-2530,-2539,-2549,-2558,-2568,-2577,
+-2586,-2595,-2605,-2614,-2623,-2632,-2641,-2650,-2659,-2668,-2677,-2686,-2695,-2703,-2712,-2721,-2729,-2738,-2746,-2755,
+-2763,-2771,-2780,-2788,-2796,-2804,-2812,-2820,-2828,-2836,-2844,-2852,-2860,-2868,-2876,-2884,-2891,-2899,-2907,-2914,
+-2922,-2930,-2937,-2945,-2952,-2960,-2967,-2975,-2982,-2989,-2997,-3004,-3011,-3018,-3026,-3033,-3040,-3047,-3054,-3062,
+-3069,-3076,-3083,-3090,-3097,-3104,-3111,-3117,-3124,-3131,-3138,-3145,-3152,-3158,-3165,-3172,-3178,-3185,-3191,-3198,
+-3205,-3211,-3218,-3224,-3231,-3237,-3243,-3249,-3255,-3261,-3268,-3274,-3279,-3285,-3291,-3297,-3303,-3308,-3314,-3319,
+-3325,-3330,-3335,-3340,-3345,-3350,-3355,-3360,-3364,-3369,-3373,-3378,-3382,-3386,-3390,-3394,-3397,-3401,-3404,-3408,
+-3411,-3414,-3417,-3420,-3423,-3426,-3428,-3431,-3433,-3435,-3437,-3439,-3441,-3443,-3444,-3446,-3447,-3448,-3449,-3450,
+-3451,-3452,-3452,-3453,-3453,-3453,-3454,-3454,-3454,-3453,-3453,-3453,-3452,-3452,-3451,-3451,-3450,-3449,-3448,-3447,
+-3446,-3445,-3444,-3442,-3441,-3440,-3438,-3437,-3435,-3434,-3432,-3430,-3429,-3427,-3425,-3424,-3422,-3420,-3419,-3417,
+-3415,-3414,-3412,-3410,-3408,-3407,-3405,-3403,-3402,-3400,-3399,-3397,-3396,-3394,-3393,-3391,-3390,-3389,-3387,-3386,
+-3385,-3384,-3383,-3382,-3381,-3379,-3379,-3378,-3377,-3376,-3375,-3375,-3374,-3373,-3373,-3372,-3371,-3371,-3370,-3370,
+-3370,-3369,-3369,-3369,-3368,-3368,-3368,-3368,-3367,-3367,-3367,-3367,-3367,-3367,-3367,-3367,-3367,-3366,-3366,-3366,
+-3366,-3365,-3365,-3365,-3365,-3364,-3364,-3364,-3363,-3363,-3362,-3362,-3361,-3361,-3360,-3359,-3358,-3357,-3356,-3355,
+-3354,-3353,-3351,-3350,-3348,-3346,-3345,-3343,-3341,-3339,-3337,-3335,-3332,-3329,-3327,-3324,-3321,-3318,-3315,-3312,
+-3309,-3306,-3303,-3299,-3296,-3292,-3288,-3284,-3281,-3277,-3273,-3269,-3265,-3261,-3257,-3253,-3249,-3244,-3240,-3236,
+-3232,-3228,-3224,-3220,-3216,-3212,-3208,-3203,-3199,-3195,-3191,-3186,-3182,-3178,-3174,-3170,-3166,-3162,-3158,-3154,
+-3151,-3147,-3143,-3139,-3136,-3132,-3129,-3126,-3123,-3120,-3117,-3114,-3111,-3109,-3106,-3104,-3102,-3101,-3099,-3098,
+-3096,-3095,-3094,-3093,-3093,-3092,-3092,-3092,-3092,-3093,-3093,-3094,-3095,-3095,-3096,-3097,-3099,-3100,-3101,-3103,
+-3104,-3106,-3108,-3110,-3112,-3114,-3117,-3119,-3122,-3125,-3127,-3130,-3133,-3136,-3139,-3142,-3146,-3149,-3153,-3157,
+-3161,-3165,-3169,-3173,-3177,-3181,-3185,-3188,-3191,-3194,-3197,-3201,-3204,-3207,-3210,-3214,-3217,-3220,-3223,-3226,
+-3229,-3232,-3235,-3238,-3241,-3245,-3248,-3251,-3253,-3255,-3258,-3259,-3261,-3263,-3266,-3269,-3272,-3276,-3279,-3282,
+-3284,-3285,-3285,-3285,-3283,-3282,-3281,-3281,-3281,-3281,-3281,-3281,-3281,-3280,-3278,-3276,-3274,-3271,-3269,-3268,
+-3266,-3265,-3264,-3263,-3262,-3260,-3258,-3256,-3254,-3253,-3252,-3252,-3252,-3252,-3252,-3253,-3252,-3252,-3251,-3249,
+-3246,-3244,-3240,-3237,-3233,-3229,-3225,-3222,-3219,-3216,-3213,-3211,-3208,-3206,-3203,-3200,-3197,-3193,-3190,-3186,
+-3183,-3180,-3177,-3175,-3172,-3169,-3165,-3161,-3158,-3154,-3149,-3145,-3142,-3138,-3134,-3131,-3127,-3124,-3121,-3118,
+-3115,-3112,-3110,-3107,-3104,-3101,-3099,-3096,-3093,-3091,-3088,-3085,-3082,-3079,-3075,-3072,-3068,-3064,-3061,-3057,
+-3054,-3051,-3048,-3046,-3043,-3042,-3040,-3039,-3038,-3037,-3036,-3036,-3035,-3035,-3034,-3033,-3033,-3032,-3031,-3031,
+-3030,-3029,-3029,-3028,-3028,-3027,-3026,-3025,-3025,-3024,-3023,-3023,-3022,-3021,-3021,-3020,-3019,-3018,-3017,-3015,
+-3014,-3012,-3010,-3008,-3005,-3003,-3001,-2999,-2997,-2994,-2992,-2989,-2986,-2983,-2979,-2975,-2972,-2968,-2964,-2960,
+-2955,-2951,-2947,-2943,-2938,-2934,-2930,-2926,-2923,-2919,-2916,-2913,-2910,-2907,-2904,-2901,-2898,-2895,-2892,-2890,
+-2887,-2884,-2881,-2877,-2874,-2870,-2867,-2863,-2859,-2856,-2852,-2849,-2845,-2842,-2838,-2835,-2832,-2828,-2825,-2822,
+-2819,-2816,-2813,-2811,-2808,-2805,-2803,-2800,-2798,-2796,-2794,-2791,-2789,-2787,-2785,-2783,-2782,-2780,-2778,-2777,
+-2775,-2774,-2772,-2771,-2770,-2769,-2768,-2768,-2767,-2767,-2766,-2766,-2766,-2766,-2767,-2767,-2767,-2768,-2769,-2770,
+-2771,-2772,-2773,-2774,-2776,-2777,-2779,-2780,-2782,-2783,-2785,-2787,-2789,-2791,-2792,-2794,-2796,-2797,-2799,-2801,
+-2802,-2804,-2805,-2806,-2808,-2809,-2810,-2810,-2811,-2811,-2812,-2812,-2812,-2812,-2812,-2812,-2811,-2811,-2810,-2809,
+-2808,-2806,-2805,-2803,-2801,-2798,-2796,-2793,-2790,-2787,-2783,-2780,-2776,-2772,-2768,-2763,-2758,-2753,-2748,-2742,
+-2736,-2730,-2724,-2717,-2710,-2703,-2696,-2688,-2681,-2672,-2664,-2656,-2647,-2638,-2629,-2620,-2611,-2601,-2592,-2582,
+-2573,-2563,-2553,-2543,-2533,-2522,-2512,-2502,-2492,-2482,-2471,-2461,-2451,-2441,-2431,-2421,-2412,-2402,-2392,-2383,
+-2374,-2364,-2355,-2347,-2338,-2330,-2321,-2313,-2306,-2298,-2291,-2284,-2278,-2271,-2265,-2260,-2254,-2249,-2244,-2239,
+-2235,-2231,-2227,-2223,-2220,-2217,-2215,-2213,-2211,-2209,-2208,-2207,-2207,-2207,-2207,-2208,-2209,-2210,-2212,-2214,
+-2216,-2219,-2222,-2225,-2229,-2233,-2237,-2242,-2247,-2253,-2258,-2264,-2270,-2277,-2284,-2291,-2298,-2305,-2313,-2321,
+-2329,-2338,-2346,-2355,-2363,-2372,-2382,-2391,-2400,-2410,-2419,-2429,-2439,-2448,-2458,-2468,-2478,-2488,-2497,-2507,
+-2517,-2526,-2536,-2545,-2554,-2563,-2572,-2581,-2590,-2599,-2607,-2615,-2623,-2631,-2638,-2645,-2652,-2659,-2666,-2672,
+-2678,-2683,-2689,-2694,-2699,-2703,-2707,-2711,-2714,-2717,-2720,-2723,-2725,-2727,-2728,-2729,-2730,-2730,-2730,-2730,
+-2729,-2728,-2727,-2725,-2723,-2721,-2718,-2715,-2712,-2709,-2705,-2701,-2696,-2691,-2686,-2681,-2675,-2669,-2663,-2657,
+-2650,-2643,-2636,-2629,-2622,-2614,-2606,-2598,-2590,-2581,-2573,-2564,-2555,-2546,-2537,-2528,-2519,-2510,-2501,-2491,
+-2482,-2472,-2463,-2453,-2444,-2434,-2425,-2415,-2406,-2396,-2387,-2377,-2368,-2358,-2349,-2340,-2331,-2321,-2312,-2303,
+-2295,-2286,-2277,-2268,-2260,-2252,-2243,-2235,-2227,-2219,-2212,-2204,-2196,-2189,-2181,-2174,-2167,-2160,-2153,-2146,
+-2140,-2133,-2127,-2120,-2114,-2108,-2102,-2096,-2090,-2085,-2079,-2073,-2068,-2063,-2058,-2053,-2048,-2043,-2038,-2033,
+-2029,-2024,-2019,-2015,-2010,-2006,-2002,-1998,-1993,-1989,-1985,-1981,-1977,-1973,-1969,-1965,-1962,-1958,-1954,-1950,
+-1946,-1943,-1939,-1935,-1932,-1928,-1924,-1921,-1917,-1914,-1910,-1907,-1903,-1900,-1896,-1893,-1889,-1886,-1883,-1879,
+-1876,-1873,-1869,-1866,-1862,-1859,-1856,-1852,-1849,-1846,-1843,-1839,-1836,-1833,-1830,-1827,-1824,-1821,-1818,-1815,
+-1812,-1809,-1807,-1804,-1801,-1798,-1795,-1931,-1928,-1924,-1921,-1918,-1914,-1911,-1908,-1904,-1901,-1898,-1894,-1891,
+-1888,-1885,-1881,-1878,-1875,-1872,-1869,-1866,-1863,-1859,-1856,-1853,-1850,-1847,-1844,-1841,-1838,-1835,-1832,-1829,
+-1826,-1823,-1821,-1818,-1815,-1812,-1809,-1806,-1803,-1800,-1797,-1794,-1791,-1788,-1786,-1783,-1780,-1777,-1775,-1772,
+-1769,-1766,-1763,-1760,-1757,-1754,-1751,-1748,-1746,-1743,-1740,-1737,-1734,-1731,-1728,-1725,-1722,-1719,-1716,-1713,
+-1710,-1707,-1703,-1700,-1697,-1694,-1691,-1688,-1685,-1682,-1679,-1676,-1673,-1670,-1667,-1664,-1662,-1659,-1656,-1653,
+-1650,-1648,-1645,-1642,-1640,-1637,-1635,-1632,-1630,-1627,-1625,-1622,-1620,-1618,-1616,-1614,-1612,-1610,-1608,-1606,
+-1604,-1603,-1601,-1599,-1598,-1596,-1595,-1594,-1592,-1591,-1590,-1589,-1588,-1588,-1587,-1586,-1585,-1585,-1584,-1584,
+-1583,-1583,-1582,-1582,-1582,-1582,-1582,-1582,-1582,-1581,-1581,-1582,-1582,-1582,-1582,-1583,-1583,-1583,-1584,-1584,
+-1584,-1584,-1585,-1585,-1586,-1586,-1586,-1587,-1587,-1587,-1588,-1588,-1588,-1588,-1588,-1589,-1589,-1589,-1589,-1589,
+-1589,-1589,-1589,-1589,-1588,-1588,-1588,-1587,-1587,-1587,-1586,-1586,-1585,-1585,-1584,-1584,-1583,-1582,-1581,-1580,
+-1579,-1578,-1577,-1576,-1575,-1574,-1573,-1572,-1571,-1570,-1568,-1567,-1566,-1565,-1564,-1562,-1561,-1560,-1559,-1558,
+-1556,-1555,-1554,-1553,-1552,-1551,-1550,-1549,-1548,-1547,-1546,-1545,-1545,-1544,-1544,-1543,-1543,-1542,-1542,-1542,
+-1542,-1542,-1542,-1542,-1542,-1543,-1543,-1544,-1544,-1545,-1546,-1547,-1548,-1549,-1551,-1552,-1554,-1556,-1558,-1560,
+-1562,-1565,-1567,-1570,-1572,-1575,-1578,-1581,-1584,-1588,-1591,-1595,-1599,-1603,-1607,-1611,-1616,-1620,-1625,-1630,
+-1635,-1640,-1645,-1650,-1655,-1661,-1667,-1672,-1678,-1684,-1691,-1697,-1703,-1710,-1716,-1723,-1730,-1736,-1743,-1750,
+-1758,-1765,-1772,-1780,-1787,-1795,-1803,-1810,-1818,-1826,-1834,-1842,-1850,-1858,-1866,-1875,-1883,-1891,-1900,-1908,
+-1916,-1925,-1934,-1942,-1951,-1960,-1969,-1977,-1986,-1995,-2004,-2013,-2022,-2031,-2040,-2049,-2058,-2067,-2076,-2085,
+-2094,-2104,-2113,-2122,-2131,-2140,-2150,-2159,-2168,-2177,-2187,-2196,-2205,-2214,-2223,-2232,-2242,-2251,-2260,-2269,
+-2279,-2288,-2297,-2306,-2316,-2325,-2334,-2343,-2352,-2362,-2371,-2380,-2389,-2398,-2408,-2417,-2426,-2435,-2444,-2453,
+-2462,-2471,-2480,-2489,-2498,-2507,-2516,-2525,-2533,-2542,-2551,-2560,-2568,-2577,-2586,-2595,-2603,-2612,-2620,-2629,
+-2638,-2646,-2654,-2663,-2671,-2680,-2688,-2697,-2705,-2713,-2721,-2730,-2738,-2746,-2754,-2762,-2770,-2778,-2786,-2794,
+-2802,-2810,-2817,-2825,-2833,-2840,-2848,-2856,-2863,-2871,-2879,-2886,-2894,-2901,-2908,-2916,-2923,-2931,-2938,-2945,
+-2953,-2960,-2967,-2974,-2981,-2988,-2995,-3003,-3010,-3017,-3024,-3030,-3037,-3044,-3051,-3058,-3065,-3072,-3078,-3085,
+-3092,-3099,-3105,-3112,-3119,-3125,-3132,-3138,-3145,-3151,-3157,-3164,-3170,-3176,-3183,-3189,-3195,-3201,-3207,-3213,
+-3219,-3225,-3231,-3237,-3243,-3248,-3254,-3260,-3265,-3270,-3276,-3281,-3286,-3291,-3297,-3302,-3307,-3312,-3317,-3321,
+-3326,-3330,-3335,-3339,-3343,-3348,-3352,-3356,-3360,-3364,-3368,-3371,-3375,-3378,-3381,-3384,-3388,-3391,-3394,-3396,
+-3399,-3402,-3404,-3406,-3408,-3411,-3412,-3414,-3416,-3418,-3420,-3421,-3422,-3424,-3425,-3426,-3427,-3427,-3428,-3429,
+-3429,-3429,-3430,-3430,-3430,-3430,-3430,-3429,-3429,-3429,-3428,-3428,-3428,-3427,-3426,-3425,-3424,-3423,-3422,-3421,
+-3419,-3418,-3417,-3416,-3414,-3413,-3411,-3410,-3408,-3406,-3405,-3403,-3401,-3400,-3398,-3396,-3395,-3393,-3391,-3389,
+-3387,-3385,-3383,-3382,-3380,-3378,-3377,-3375,-3373,-3371,-3370,-3368,-3366,-3365,-3363,-3361,-3360,-3359,-3357,-3356,
+-3354,-3353,-3352,-3350,-3349,-3348,-3347,-3346,-3345,-3344,-3343,-3342,-3341,-3340,-3339,-3338,-3337,-3336,-3336,-3335,
+-3335,-3334,-3333,-3333,-3332,-3332,-3331,-3331,-3330,-3330,-3329,-3329,-3328,-3328,-3327,-3327,-3326,-3326,-3326,-3325,
+-3325,-3325,-3324,-3324,-3323,-3323,-3322,-3322,-3321,-3320,-3320,-3319,-3318,-3318,-3317,-3316,-3315,-3314,-3313,-3312,
+-3311,-3309,-3308,-3307,-3306,-3304,-3303,-3301,-3299,-3297,-3296,-3294,-3292,-3289,-3287,-3285,-3283,-3280,-3278,-3275,
+-3272,-3270,-3267,-3264,-3261,-3258,-3254,-3251,-3248,-3245,-3241,-3238,-3235,-3231,-3227,-3224,-3220,-3216,-3212,-3208,
+-3205,-3201,-3197,-3193,-3190,-3186,-3182,-3179,-3175,-3172,-3168,-3164,-3160,-3157,-3153,-3149,-3146,-3142,-3138,-3135,
+-3131,-3128,-3124,-3121,-3118,-3114,-3111,-3108,-3105,-3102,-3099,-3097,-3094,-3091,-3089,-3086,-3084,-3082,-3079,-3077,
+-3075,-3073,-3071,-3069,-3067,-3065,-3064,-3063,-3061,-3060,-3060,-3059,-3059,-3058,-3058,-3058,-3058,-3059,-3059,-3059,
+-3060,-3061,-3061,-3062,-3063,-3064,-3065,-3067,-3068,-3069,-3070,-3070,-3071,-3072,-3073,-3074,-3075,-3076,-3077,-3078,
+-3080,-3082,-3084,-3086,-3089,-3091,-3094,-3096,-3099,-3101,-3104,-3106,-3108,-3111,-3113,-3115,-3118,-3120,-3122,-3124,
+-3126,-3127,-3129,-3131,-3133,-3137,-3140,-3145,-3150,-3156,-3162,-3168,-3173,-3177,-3179,-3181,-3182,-3181,-3180,-3178,
+-3176,-3174,-3172,-3170,-3168,-3166,-3165,-3163,-3162,-3161,-3161,-3161,-3161,-3161,-3162,-3162,-3161,-3161,-3160,-3159,
+-3158,-3156,-3155,-3153,-3152,-3150,-3148,-3147,-3145,-3143,-3141,-3139,-3138,-3136,-3135,-3134,-3133,-3133,-3131,-3130,
+-3128,-3126,-3124,-3122,-3119,-3117,-3114,-3112,-3110,-3107,-3105,-3102,-3100,-3097,-3095,-3093,-3091,-3089,-3087,-3086,
+-3084,-3083,-3081,-3080,-3078,-3076,-3075,-3073,-3071,-3069,-3067,-3065,-3063,-3061,-3058,-3056,-3053,-3050,-3047,-3044,
+-3042,-3040,-3038,-3036,-3034,-3032,-3030,-3028,-3026,-3024,-3022,-3020,-3018,-3016,-3013,-3011,-3008,-3005,-3002,-2999,
+-2996,-2993,-2991,-2989,-2987,-2985,-2984,-2983,-2982,-2981,-2980,-2979,-2978,-2977,-2976,-2976,-2975,-2974,-2974,-2973,
+-2973,-2972,-2971,-2971,-2970,-2970,-2969,-2969,-2969,-2968,-2968,-2968,-2967,-2967,-2967,-2966,-2966,-2965,-2965,-2965,
+-2964,-2964,-2963,-2962,-2961,-2960,-2959,-2958,-2957,-2956,-2955,-2953,-2952,-2950,-2948,-2947,-2944,-2942,-2940,-2938,
+-2935,-2933,-2931,-2929,-2926,-2924,-2921,-2919,-2916,-2914,-2911,-2908,-2906,-2903,-2901,-2898,-2896,-2893,-2891,-2889,
+-2886,-2884,-2881,-2879,-2876,-2874,-2871,-2869,-2866,-2864,-2861,-2859,-2856,-2854,-2851,-2849,-2846,-2844,-2842,-2840,
+-2838,-2836,-2834,-2832,-2830,-2828,-2826,-2824,-2822,-2820,-2819,-2817,-2815,-2813,-2811,-2810,-2808,-2806,-2805,-2803,
+-2802,-2801,-2800,-2799,-2799,-2798,-2797,-2796,-2796,-2795,-2795,-2794,-2794,-2794,-2794,-2794,-2794,-2793,-2793,-2793,
+-2793,-2793,-2793,-2793,-2793,-2793,-2794,-2794,-2794,-2795,-2795,-2795,-2796,-2796,-2797,-2797,-2798,-2798,-2798,-2799,
+-2799,-2799,-2799,-2799,-2799,-2799,-2799,-2799,-2799,-2798,-2797,-2797,-2796,-2795,-2793,-2792,-2791,-2789,-2787,-2785,
+-2783,-2781,-2778,-2775,-2772,-2769,-2766,-2762,-2759,-2755,-2751,-2747,-2743,-2738,-2734,-2729,-2724,-2718,-2713,-2707,
+-2701,-2695,-2689,-2683,-2676,-2669,-2662,-2655,-2648,-2640,-2633,-2625,-2617,-2609,-2601,-2592,-2584,-2575,-2567,-2558,
+-2549,-2540,-2532,-2523,-2514,-2505,-2496,-2486,-2477,-2468,-2459,-2450,-2441,-2433,-2424,-2415,-2407,-2398,-2390,-2382,
+-2374,-2366,-2358,-2350,-2343,-2335,-2328,-2321,-2314,-2308,-2301,-2295,-2289,-2284,-2278,-2273,-2268,-2264,-2259,-2255,
+-2251,-2248,-2244,-2241,-2239,-2236,-2234,-2232,-2231,-2230,-2229,-2228,-2228,-2228,-2228,-2229,-2230,-2231,-2233,-2235,
+-2237,-2240,-2242,-2246,-2249,-2253,-2257,-2261,-2266,-2271,-2276,-2281,-2287,-2293,-2299,-2305,-2312,-2319,-2326,-2333,
+-2341,-2348,-2356,-2364,-2373,-2381,-2389,-2398,-2407,-2416,-2425,-2434,-2443,-2453,-2462,-2472,-2481,-2491,-2500,-2510,
+-2519,-2528,-2538,-2547,-2557,-2566,-2575,-2584,-2593,-2602,-2611,-2620,-2628,-2636,-2645,-2653,-2660,-2668,-2676,-2683,
+-2690,-2697,-2703,-2709,-2716,-2721,-2727,-2732,-2737,-2742,-2747,-2751,-2755,-2758,-2762,-2765,-2768,-2770,-2772,-2774,
+-2776,-2777,-2778,-2779,-2779,-2780,-2779,-2779,-2778,-2777,-2776,-2774,-2772,-2770,-2768,-2765,-2762,-2759,-2755,-2752,
+-2748,-2743,-2739,-2734,-2729,-2724,-2719,-2713,-2708,-2702,-2696,-2690,-2683,-2677,-2670,-2664,-2657,-2650,-2643,-2635,
+-2628,-2621,-2613,-2606,-2598,-2591,-2583,-2575,-2567,-2559,-2551,-2543,-2535,-2527,-2520,-2512,-2504,-2496,-2488,-2480,
+-2472,-2464,-2456,-2448,-2441,-2433,-2425,-2418,-2410,-2402,-2395,-2388,-2380,-2373,-2366,-2359,-2352,-2345,-2338,-2331,
+-2325,-2318,-2311,-2305,-2298,-2292,-2286,-2280,-2274,-2268,-2262,-2256,-2250,-2244,-2239,-2233,-2227,-2222,-2217,-2212,
+-2206,-2201,-2196,-2191,-2186,-2181,-2176,-2171,-2166,-2162,-2157,-2152,-2148,-2143,-2139,-2134,-2130,-2125,-2121,-2117,
+-2113,-2108,-2104,-2100,-2096,-2092,-2088,-2084,-2079,-2075,-2071,-2067,-2063,-2059,-2055,-2051,-2047,-2043,-2039,-2035,
+-2032,-2028,-2024,-2020,-2016,-2012,-2008,-2004,-2001,-1997,-1993,-1989,-1986,-1982,-1978,-1975,-1971,-1967,-1963,-1960,
+-1956,-1953,-1949,-1946,-1942,-1938,-1935,-1931,-2090,-2086,-2081,-2077,-2073,-2069,-2065,-2061,-2057,-2053,-2049,-2045,
+-2041,-2036,-2032,-2028,-2024,-2020,-2016,-2012,-2008,-2004,-2000,-1996,-1992,-1988,-1984,-1980,-1976,-1972,-1968,-1964,
+-1960,-1956,-1952,-1948,-1944,-1941,-1937,-1933,-1929,-1925,-1921,-1917,-1913,-1909,-1905,-1902,-1898,-1895,-1891,-1887,
+-1883,-1880,-1876,-1872,-1869,-1865,-1862,-1858,-1855,-1851,-1847,-1844,-1840,-1837,-1833,-1830,-1827,-1823,-1820,-1816,
+-1813,-1810,-1806,-1803,-1800,-1797,-1793,-1790,-1787,-1784,-1781,-1778,-1775,-1772,-1769,-1766,-1763,-1760,-1757,-1755,
+-1752,-1749,-1747,-1744,-1741,-1739,-1736,-1734,-1731,-1729,-1727,-1725,-1722,-1720,-1718,-1716,-1714,-1713,-1711,-1709,
+-1707,-1705,-1704,-1702,-1700,-1699,-1698,-1696,-1695,-1694,-1692,-1691,-1690,-1689,-1688,-1687,-1686,-1685,-1685,-1684,
+-1683,-1682,-1682,-1681,-1680,-1680,-1680,-1679,-1679,-1679,-1679,-1678,-1678,-1678,-1678,-1678,-1677,-1677,-1677,-1677,
+-1677,-1677,-1677,-1677,-1677,-1677,-1677,-1677,-1677,-1677,-1676,-1676,-1676,-1676,-1676,-1676,-1676,-1676,-1676,-1676,
+-1675,-1675,-1675,-1674,-1674,-1674,-1674,-1673,-1673,-1673,-1673,-1672,-1672,-1671,-1671,-1670,-1670,-1669,-1668,-1668,
+-1667,-1667,-1666,-1665,-1664,-1664,-1663,-1663,-1662,-1661,-1661,-1660,-1659,-1659,-1658,-1658,-1657,-1656,-1656,-1655,
+-1655,-1654,-1654,-1653,-1653,-1653,-1652,-1652,-1652,-1652,-1652,-1652,-1652,-1652,-1652,-1652,-1653,-1653,-1653,-1654,
+-1654,-1655,-1655,-1656,-1657,-1658,-1659,-1661,-1662,-1663,-1664,-1666,-1668,-1669,-1671,-1673,-1675,-1678,-1680,-1682,
+-1685,-1687,-1690,-1693,-1696,-1698,-1702,-1705,-1708,-1712,-1716,-1720,-1723,-1728,-1732,-1736,-1740,-1744,-1749,-1754,
+-1758,-1763,-1768,-1773,-1779,-1784,-1789,-1795,-1800,-1806,-1812,-1818,-1824,-1830,-1836,-1842,-1849,-1855,-1862,-1868,
+-1875,-1881,-1888,-1895,-1902,-1909,-1916,-1924,-1931,-1938,-1946,-1953,-1961,-1968,-1976,-1983,-1991,-1999,-2007,-2015,
+-2023,-2030,-2038,-2047,-2055,-2063,-2071,-2079,-2087,-2095,-2103,-2112,-2120,-2128,-2137,-2145,-2153,-2162,-2170,-2178,
+-2187,-2195,-2203,-2212,-2220,-2229,-2237,-2246,-2254,-2263,-2271,-2280,-2288,-2296,-2305,-2313,-2322,-2330,-2338,-2347,
+-2355,-2364,-2372,-2380,-2389,-2397,-2405,-2414,-2422,-2431,-2439,-2447,-2456,-2464,-2472,-2480,-2489,-2497,-2505,-2513,
+-2521,-2529,-2537,-2545,-2553,-2561,-2569,-2577,-2585,-2593,-2601,-2609,-2617,-2624,-2632,-2640,-2648,-2656,-2663,-2671,
+-2679,-2686,-2694,-2702,-2709,-2717,-2725,-2732,-2740,-2747,-2755,-2762,-2770,-2777,-2785,-2792,-2799,-2807,-2814,-2821,
+-2828,-2835,-2843,-2850,-2857,-2864,-2871,-2878,-2885,-2892,-2899,-2906,-2913,-2920,-2927,-2934,-2941,-2948,-2955,-2962,
+-2968,-2975,-2982,-2989,-2995,-3002,-3009,-3015,-3022,-3028,-3035,-3041,-3048,-3054,-3061,-3067,-3074,-3080,-3086,-3093,
+-3099,-3105,-3111,-3117,-3124,-3130,-3136,-3142,-3148,-3154,-3160,-3166,-3172,-3178,-3183,-3189,-3195,-3201,-3206,-3212,
+-3218,-3223,-3228,-3234,-3239,-3244,-3249,-3254,-3259,-3265,-3270,-3274,-3279,-3284,-3289,-3293,-3298,-3302,-3307,-3311,
+-3315,-3319,-3323,-3327,-3331,-3335,-3338,-3342,-3345,-3349,-3352,-3355,-3358,-3361,-3364,-3367,-3370,-3373,-3375,-3378,
+-3380,-3382,-3384,-3386,-3388,-3390,-3392,-3393,-3395,-3396,-3398,-3399,-3400,-3401,-3402,-3403,-3403,-3404,-3404,-3405,
+-3405,-3406,-3406,-3406,-3406,-3406,-3405,-3405,-3405,-3404,-3404,-3404,-3403,-3403,-3402,-3401,-3400,-3399,-3398,-3397,
+-3396,-3395,-3393,-3392,-3391,-3389,-3388,-3386,-3385,-3383,-3382,-3380,-3378,-3377,-3375,-3373,-3372,-3370,-3368,-3366,
+-3364,-3362,-3361,-3359,-3357,-3355,-3353,-3352,-3350,-3348,-3346,-3344,-3342,-3340,-3339,-3337,-3335,-3334,-3332,-3331,
+-3329,-3327,-3326,-3324,-3322,-3321,-3319,-3318,-3316,-3315,-3314,-3313,-3311,-3310,-3309,-3307,-3306,-3305,-3304,-3302,
+-3301,-3300,-3299,-3298,-3297,-3297,-3296,-3295,-3294,-3293,-3292,-3291,-3290,-3289,-3288,-3287,-3286,-3286,-3285,-3284,
+-3283,-3282,-3281,-3280,-3279,-3278,-3278,-3277,-3276,-3275,-3274,-3273,-3272,-3271,-3270,-3268,-3267,-3266,-3265,-3264,
+-3262,-3261,-3260,-3258,-3257,-3255,-3254,-3252,-3250,-3248,-3247,-3245,-3243,-3241,-3239,-3237,-3235,-3233,-3230,-3228,
+-3226,-3224,-3221,-3219,-3216,-3214,-3211,-3208,-3205,-3203,-3200,-3197,-3194,-3191,-3188,-3185,-3182,-3179,-3176,-3173,
+-3170,-3167,-3164,-3161,-3158,-3154,-3151,-3148,-3144,-3141,-3138,-3134,-3131,-3128,-3125,-3122,-3119,-3116,-3113,-3110,
+-3107,-3103,-3101,-3098,-3095,-3092,-3089,-3087,-3084,-3081,-3079,-3076,-3074,-3071,-3069,-3067,-3064,-3062,-3060,-3058,
+-3056,-3054,-3052,-3049,-3047,-3045,-3043,-3041,-3040,-3038,-3037,-3036,-3035,-3034,-3033,-3032,-3031,-3030,-3030,-3029,
+-3029,-3029,-3029,-3029,-3029,-3029,-3030,-3030,-3030,-3030,-3031,-3031,-3032,-3032,-3033,-3033,-3034,-3035,-3036,-3036,
+-3037,-3038,-3039,-3040,-3042,-3043,-3044,-3046,-3047,-3048,-3050,-3051,-3052,-3053,-3054,-3055,-3056,-3057,-3058,-3059,
+-3059,-3060,-3061,-3062,-3063,-3064,-3066,-3067,-3069,-3071,-3073,-3075,-3077,-3078,-3079,-3079,-3080,-3081,-3081,-3082,
+-3083,-3084,-3085,-3086,-3087,-3087,-3086,-3085,-3083,-3081,-3078,-3075,-3073,-3070,-3068,-3066,-3065,-3063,-3063,-3062,
+-3061,-3061,-3060,-3060,-3059,-3058,-3057,-3056,-3055,-3054,-3053,-3053,-3053,-3053,-3054,-3055,-3056,-3057,-3058,-3058,
+-3058,-3057,-3056,-3054,-3052,-3049,-3046,-3043,-3040,-3037,-3034,-3032,-3030,-3027,-3025,-3023,-3021,-3020,-3018,-3017,
+-3015,-3014,-3013,-3012,-3010,-3009,-3008,-3007,-3006,-3004,-3003,-3002,-3000,-2998,-2997,-2995,-2993,-2991,-2989,-2987,
+-2985,-2983,-2981,-2979,-2977,-2975,-2973,-2971,-2969,-2967,-2965,-2963,-2961,-2959,-2957,-2956,-2954,-2952,-2951,-2950,
+-2948,-2947,-2945,-2944,-2943,-2942,-2941,-2940,-2939,-2938,-2937,-2936,-2936,-2935,-2934,-2934,-2933,-2932,-2932,-2931,
+-2931,-2930,-2930,-2930,-2929,-2929,-2929,-2928,-2928,-2928,-2927,-2927,-2927,-2926,-2926,-2926,-2925,-2925,-2924,-2924,
+-2923,-2923,-2922,-2922,-2921,-2921,-2920,-2919,-2919,-2918,-2917,-2916,-2915,-2914,-2913,-2912,-2911,-2910,-2908,-2907,
+-2906,-2904,-2903,-2901,-2900,-2899,-2897,-2896,-2894,-2893,-2891,-2890,-2888,-2886,-2885,-2883,-2881,-2879,-2878,-2876,
+-2874,-2873,-2871,-2869,-2867,-2866,-2864,-2862,-2860,-2859,-2857,-2855,-2854,-2852,-2850,-2849,-2847,-2846,-2844,-2843,
+-2841,-2840,-2838,-2837,-2835,-2834,-2832,-2831,-2829,-2828,-2826,-2825,-2823,-2822,-2820,-2819,-2818,-2817,-2816,-2815,
+-2814,-2813,-2812,-2811,-2810,-2810,-2809,-2808,-2808,-2807,-2807,-2806,-2806,-2805,-2805,-2804,-2803,-2803,-2802,-2802,
+-2801,-2801,-2800,-2800,-2799,-2799,-2798,-2797,-2797,-2796,-2795,-2794,-2794,-2793,-2792,-2792,-2791,-2790,-2789,-2789,
+-2788,-2787,-2786,-2785,-2784,-2783,-2782,-2781,-2779,-2778,-2777,-2775,-2773,-2772,-2770,-2768,-2765,-2763,-2761,-2758,
+-2756,-2753,-2750,-2747,-2744,-2741,-2737,-2733,-2730,-2726,-2722,-2717,-2713,-2709,-2704,-2699,-2694,-2689,-2684,-2679,
+-2673,-2668,-2662,-2656,-2650,-2644,-2638,-2632,-2625,-2619,-2612,-2605,-2598,-2591,-2584,-2577,-2570,-2563,-2556,-2548,
+-2541,-2534,-2527,-2519,-2512,-2505,-2497,-2490,-2483,-2475,-2468,-2460,-2453,-2446,-2439,-2432,-2425,-2418,-2411,-2405,
+-2398,-2392,-2385,-2379,-2373,-2367,-2361,-2355,-2350,-2345,-2339,-2334,-2330,-2325,-2321,-2316,-2312,-2308,-2305,-2301,
+-2298,-2295,-2293,-2290,-2288,-2286,-2284,-2283,-2282,-2281,-2280,-2280,-2279,-2280,-2280,-2281,-2281,-2282,-2284,-2285,
+-2287,-2289,-2292,-2294,-2297,-2300,-2304,-2307,-2311,-2315,-2320,-2324,-2329,-2334,-2339,-2344,-2350,-2355,-2361,-2368,
+-2374,-2380,-2387,-2394,-2401,-2408,-2415,-2422,-2430,-2437,-2445,-2453,-2461,-2469,-2477,-2485,-2494,-2502,-2510,-2519,
+-2527,-2535,-2544,-2552,-2561,-2569,-2578,-2586,-2594,-2603,-2611,-2619,-2627,-2635,-2642,-2650,-2658,-2665,-2672,-2680,
+-2687,-2694,-2700,-2707,-2713,-2719,-2725,-2731,-2737,-2742,-2748,-2753,-2757,-2762,-2766,-2770,-2774,-2778,-2781,-2784,
+-2787,-2790,-2792,-2795,-2797,-2798,-2800,-2801,-2802,-2803,-2804,-2804,-2804,-2804,-2804,-2803,-2802,-2801,-2800,-2799,
+-2797,-2796,-2794,-2791,-2789,-2786,-2784,-2781,-2778,-2774,-2771,-2767,-2764,-2760,-2756,-2751,-2747,-2742,-2738,-2733,
+-2728,-2723,-2718,-2713,-2708,-2703,-2697,-2692,-2686,-2680,-2675,-2669,-2663,-2657,-2651,-2645,-2639,-2633,-2627,-2621,
+-2615,-2609,-2603,-2597,-2590,-2584,-2578,-2572,-2566,-2560,-2553,-2547,-2541,-2535,-2529,-2523,-2517,-2511,-2505,-2499,
+-2493,-2488,-2482,-2476,-2470,-2465,-2459,-2453,-2448,-2442,-2437,-2431,-2426,-2421,-2416,-2410,-2405,-2400,-2395,-2390,
+-2385,-2380,-2375,-2370,-2365,-2360,-2355,-2350,-2346,-2341,-2336,-2332,-2327,-2323,-2318,-2314,-2309,-2305,-2300,-2296,
+-2292,-2287,-2283,-2278,-2274,-2270,-2265,-2261,-2257,-2253,-2248,-2244,-2240,-2235,-2231,-2227,-2223,-2218,-2214,-2210,
+-2206,-2202,-2198,-2194,-2189,-2185,-2181,-2177,-2172,-2168,-2164,-2160,-2156,-2152,-2148,-2143,-2139,-2135,-2131,-2127,
+-2123,-2118,-2114,-2110,-2106,-2102,-2098,-2094,-2090,-2261,-2257,-2252,-2248,-2243,-2239,-2234,-2230,-2225,-2220,-2216,
+-2211,-2207,-2202,-2197,-2193,-2188,-2184,-2179,-2174,-2170,-2165,-2160,-2156,-2151,-2146,-2141,-2137,-2132,-2127,-2123,
+-2118,-2114,-2109,-2104,-2100,-2095,-2090,-2086,-2081,-2076,-2072,-2067,-2063,-2058,-2054,-2049,-2045,-2041,-2036,-2032,
+-2027,-2023,-2018,-2014,-2010,-2005,-2001,-1997,-1993,-1989,-1985,-1980,-1976,-1972,-1968,-1964,-1960,-1956,-1952,-1948,
+-1944,-1940,-1936,-1932,-1929,-1925,-1921,-1917,-1914,-1910,-1907,-1903,-1900,-1897,-1893,-1890,-1887,-1883,-1880,-1877,
+-1874,-1871,-1868,-1865,-1862,-1859,-1856,-1854,-1851,-1848,-1846,-1843,-1840,-1838,-1836,-1833,-1831,-1829,-1827,-1824,
+-1822,-1820,-1818,-1816,-1814,-1813,-1811,-1809,-1807,-1806,-1804,-1803,-1801,-1800,-1799,-1797,-1796,-1795,-1793,-1792,
+-1791,-1790,-1789,-1788,-1787,-1786,-1785,-1785,-1784,-1783,-1782,-1782,-1781,-1780,-1780,-1779,-1779,-1778,-1778,-1777,
+-1777,-1777,-1776,-1776,-1775,-1775,-1775,-1774,-1774,-1774,-1774,-1773,-1773,-1773,-1773,-1773,-1772,-1772,-1772,-1772,
+-1772,-1771,-1771,-1771,-1771,-1771,-1771,-1771,-1771,-1770,-1770,-1770,-1770,-1769,-1769,-1769,-1769,-1769,-1768,-1768,
+-1768,-1768,-1768,-1768,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,-1767,
+-1767,-1767,-1768,-1768,-1768,-1769,-1769,-1770,-1770,-1771,-1771,-1772,-1773,-1773,-1774,-1775,-1776,-1777,-1778,-1779,
+-1780,-1781,-1783,-1784,-1785,-1787,-1789,-1790,-1792,-1794,-1796,-1798,-1800,-1802,-1804,-1807,-1809,-1811,-1814,-1817,
+-1819,-1822,-1825,-1828,-1831,-1834,-1838,-1841,-1844,-1848,-1852,-1855,-1859,-1863,-1867,-1871,-1875,-1880,-1884,-1888,
+-1893,-1897,-1902,-1907,-1912,-1917,-1922,-1927,-1932,-1937,-1942,-1948,-1953,-1959,-1965,-1970,-1976,-1982,-1988,-1994,
+-2000,-2006,-2012,-2018,-2025,-2031,-2037,-2044,-2050,-2057,-2063,-2070,-2077,-2083,-2090,-2097,-2104,-2111,-2118,-2125,
+-2132,-2139,-2146,-2153,-2160,-2167,-2174,-2182,-2189,-2196,-2204,-2211,-2218,-2226,-2233,-2240,-2248,-2255,-2262,-2270,
+-2277,-2284,-2292,-2299,-2307,-2314,-2322,-2329,-2337,-2344,-2352,-2359,-2366,-2374,-2381,-2389,-2396,-2404,-2411,-2419,
+-2426,-2434,-2441,-2448,-2456,-2463,-2471,-2478,-2485,-2493,-2500,-2507,-2514,-2522,-2529,-2536,-2543,-2550,-2558,-2565,
+-2572,-2579,-2586,-2593,-2600,-2607,-2614,-2621,-2628,-2635,-2642,-2649,-2656,-2663,-2670,-2677,-2684,-2691,-2697,-2704,
+-2711,-2718,-2724,-2731,-2738,-2744,-2751,-2758,-2765,-2771,-2778,-2785,-2791,-2798,-2805,-2811,-2818,-2825,-2831,-2838,
+-2844,-2851,-2858,-2864,-2871,-2877,-2884,-2890,-2897,-2903,-2909,-2916,-2922,-2929,-2935,-2942,-2948,-2954,-2960,-2967,
+-2973,-2979,-2985,-2991,-2998,-3004,-3010,-3016,-3022,-3028,-3034,-3040,-3046,-3052,-3058,-3064,-3070,-3076,-3082,-3088,
+-3094,-3100,-3105,-3111,-3117,-3123,-3128,-3134,-3139,-3145,-3150,-3156,-3161,-3167,-3172,-3178,-3183,-3188,-3194,-3199,
+-3204,-3209,-3214,-3219,-3223,-3228,-3233,-3238,-3242,-3247,-3252,-3256,-3260,-3265,-3269,-3273,-3277,-3282,-3286,-3290,
+-3293,-3297,-3301,-3304,-3308,-3311,-3315,-3318,-3321,-3325,-3328,-3331,-3334,-3336,-3339,-3342,-3344,-3347,-3349,-3351,
+-3353,-3355,-3357,-3359,-3361,-3363,-3364,-3366,-3367,-3369,-3370,-3371,-3372,-3373,-3374,-3375,-3376,-3376,-3377,-3378,
+-3378,-3378,-3379,-3379,-3379,-3379,-3379,-3379,-3378,-3378,-3378,-3377,-3377,-3377,-3376,-3375,-3375,-3374,-3373,-3372,
+-3371,-3370,-3369,-3368,-3366,-3365,-3364,-3363,-3361,-3360,-3358,-3357,-3355,-3353,-3352,-3350,-3349,-3347,-3345,-3344,
+-3342,-3340,-3338,-3336,-3334,-3332,-3331,-3329,-3327,-3325,-3323,-3321,-3319,-3318,-3316,-3314,-3312,-3310,-3308,-3306,
+-3304,-3302,-3300,-3299,-3297,-3295,-3293,-3291,-3290,-3288,-3286,-3284,-3282,-3281,-3279,-3277,-3276,-3274,-3273,-3271,
+-3269,-3268,-3266,-3265,-3263,-3261,-3260,-3258,-3257,-3256,-3254,-3253,-3251,-3250,-3249,-3247,-3246,-3244,-3243,-3241,
+-3240,-3239,-3237,-3236,-3234,-3233,-3232,-3230,-3229,-3227,-3226,-3224,-3222,-3221,-3220,-3218,-3217,-3215,-3214,-3212,
+-3210,-3209,-3207,-3205,-3204,-3202,-3200,-3198,-3197,-3195,-3193,-3191,-3189,-3187,-3185,-3183,-3181,-3179,-3177,-3175,
+-3173,-3171,-3169,-3166,-3164,-3162,-3159,-3157,-3155,-3152,-3150,-3148,-3145,-3143,-3140,-3138,-3135,-3133,-3131,-3128,
+-3126,-3123,-3121,-3118,-3116,-3113,-3111,-3108,-3105,-3103,-3100,-3098,-3095,-3092,-3090,-3087,-3085,-3082,-3080,-3077,
+-3075,-3073,-3070,-3068,-3066,-3063,-3061,-3059,-3057,-3055,-3053,-3050,-3048,-3046,-3044,-3042,-3040,-3037,-3035,-3033,
+-3030,-3028,-3026,-3023,-3021,-3019,-3017,-3016,-3014,-3013,-3012,-3010,-3009,-3008,-3006,-3005,-3004,-3002,-3001,-3000,
+-2998,-2997,-2996,-2995,-2994,-2994,-2993,-2992,-2991,-2991,-2990,-2989,-2989,-2988,-2988,-2987,-2987,-2987,-2987,-2987,
+-2987,-2987,-2987,-2987,-2987,-2988,-2988,-2989,-2989,-2990,-2991,-2992,-2992,-2993,-2994,-2995,-2996,-2998,-2999,-3000,
+-3001,-3002,-3003,-3004,-3005,-3006,-3006,-3007,-3007,-3007,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3007,
+-3007,-3007,-3007,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3005,-3005,-3004,-3003,-3002,-3002,-3001,
+-3000,-2999,-2998,-2997,-2996,-2995,-2994,-2993,-2992,-2991,-2990,-2990,-2989,-2988,-2987,-2986,-2986,-2985,-2984,-2984,
+-2983,-2983,-2982,-2981,-2980,-2979,-2978,-2977,-2976,-2975,-2974,-2973,-2971,-2970,-2969,-2968,-2966,-2965,-2964,-2962,
+-2961,-2960,-2959,-2957,-2956,-2954,-2953,-2952,-2950,-2949,-2948,-2946,-2945,-2944,-2942,-2941,-2940,-2939,-2937,-2936,
+-2935,-2933,-2932,-2930,-2929,-2928,-2926,-2925,-2923,-2922,-2921,-2920,-2919,-2918,-2916,-2915,-2914,-2913,-2913,-2912,
+-2911,-2910,-2909,-2908,-2907,-2907,-2906,-2905,-2905,-2904,-2903,-2903,-2902,-2901,-2901,-2900,-2899,-2899,-2898,-2897,
+-2897,-2896,-2896,-2895,-2894,-2894,-2893,-2893,-2892,-2892,-2891,-2891,-2890,-2889,-2889,-2888,-2888,-2887,-2886,-2886,
+-2885,-2884,-2884,-2883,-2883,-2882,-2881,-2881,-2880,-2879,-2879,-2878,-2877,-2876,-2876,-2875,-2874,-2873,-2872,-2871,
+-2870,-2869,-2868,-2867,-2866,-2865,-2864,-2863,-2862,-2861,-2860,-2859,-2858,-2857,-2856,-2855,-2854,-2853,-2852,-2851,
+-2850,-2849,-2848,-2846,-2845,-2844,-2843,-2842,-2841,-2840,-2839,-2838,-2837,-2836,-2834,-2833,-2832,-2831,-2830,-2829,
+-2828,-2827,-2826,-2825,-2824,-2823,-2821,-2820,-2819,-2818,-2817,-2816,-2815,-2814,-2813,-2813,-2812,-2811,-2810,-2809,
+-2809,-2808,-2807,-2807,-2806,-2805,-2805,-2804,-2803,-2803,-2802,-2801,-2801,-2800,-2799,-2799,-2798,-2797,-2797,-2796,
+-2795,-2795,-2794,-2793,-2792,-2791,-2790,-2789,-2789,-2788,-2787,-2786,-2785,-2783,-2782,-2781,-2780,-2779,-2777,-2776,
+-2775,-2773,-2772,-2770,-2769,-2767,-2765,-2764,-2762,-2760,-2758,-2756,-2754,-2752,-2749,-2747,-2745,-2742,-2739,-2737,
+-2734,-2731,-2728,-2725,-2722,-2718,-2715,-2712,-2708,-2705,-2701,-2697,-2693,-2689,-2685,-2681,-2677,-2672,-2667,-2663,
+-2658,-2653,-2648,-2643,-2638,-2633,-2628,-2623,-2618,-2612,-2607,-2601,-2596,-2590,-2585,-2579,-2574,-2568,-2563,-2557,
+-2551,-2546,-2540,-2535,-2529,-2524,-2518,-2513,-2507,-2502,-2497,-2491,-2486,-2480,-2475,-2470,-2464,-2459,-2454,-2449,
+-2444,-2439,-2434,-2430,-2425,-2420,-2416,-2411,-2407,-2403,-2399,-2395,-2391,-2387,-2384,-2381,-2378,-2374,-2372,-2369,
+-2366,-2364,-2361,-2359,-2357,-2356,-2354,-2353,-2352,-2351,-2351,-2350,-2350,-2350,-2350,-2351,-2351,-2352,-2353,-2354,
+-2356,-2358,-2359,-2361,-2364,-2366,-2369,-2371,-2374,-2377,-2381,-2384,-2388,-2392,-2396,-2400,-2404,-2409,-2413,-2418,
+-2423,-2428,-2433,-2438,-2443,-2449,-2455,-2460,-2466,-2472,-2478,-2484,-2491,-2497,-2504,-2510,-2517,-2523,-2530,-2537,
+-2543,-2550,-2557,-2564,-2571,-2578,-2585,-2592,-2599,-2605,-2612,-2619,-2626,-2633,-2639,-2646,-2652,-2659,-2665,-2671,
+-2678,-2684,-2690,-2696,-2701,-2707,-2713,-2718,-2724,-2729,-2734,-2739,-2744,-2748,-2753,-2757,-2761,-2765,-2769,-2773,
+-2776,-2780,-2783,-2786,-2789,-2791,-2794,-2796,-2799,-2801,-2802,-2804,-2806,-2807,-2808,-2809,-2810,-2811,-2811,-2811,
+-2811,-2811,-2811,-2811,-2811,-2810,-2809,-2809,-2808,-2807,-2805,-2804,-2802,-2800,-2799,-2797,-2795,-2792,-2790,-2788,
+-2785,-2783,-2780,-2778,-2775,-2772,-2769,-2766,-2762,-2759,-2756,-2752,-2749,-2745,-2742,-2738,-2734,-2730,-2727,-2723,
+-2719,-2715,-2711,-2706,-2702,-2698,-2694,-2690,-2686,-2682,-2677,-2673,-2669,-2664,-2660,-2656,-2651,-2647,-2643,-2638,
+-2634,-2630,-2625,-2621,-2617,-2612,-2608,-2604,-2599,-2595,-2591,-2587,-2582,-2578,-2574,-2570,-2565,-2561,-2557,-2553,
+-2548,-2544,-2540,-2536,-2532,-2528,-2524,-2520,-2516,-2512,-2508,-2504,-2500,-2496,-2492,-2488,-2484,-2480,-2476,-2472,
+-2468,-2464,-2460,-2456,-2452,-2448,-2444,-2439,-2435,-2431,-2427,-2423,-2419,-2415,-2411,-2407,-2403,-2399,-2394,-2390,
+-2386,-2382,-2378,-2374,-2369,-2365,-2361,-2357,-2353,-2348,-2344,-2340,-2335,-2331,-2327,-2322,-2318,-2314,-2309,-2305,
+-2301,-2296,-2292,-2288,-2283,-2279,-2275,-2270,-2266,-2261,-2433,-2429,-2425,-2420,-2415,-2411,-2406,-2402,-2397,-2393,
+-2388,-2383,-2378,-2374,-2369,-2364,-2359,-2355,-2350,-2345,-2340,-2335,-2330,-2325,-2320,-2315,-2310,-2306,-2301,-2296,
+-2291,-2286,-2281,-2276,-2271,-2266,-2261,-2256,-2251,-2246,-2241,-2236,-2231,-2226,-2221,-2216,-2211,-2206,-2201,-2196,
+-2192,-2187,-2182,-2177,-2172,-2168,-2163,-2158,-2154,-2149,-2144,-2139,-2135,-2130,-2125,-2121,-2116,-2112,-2107,-2103,
+-2099,-2094,-2090,-2086,-2081,-2077,-2073,-2069,-2064,-2060,-2056,-2052,-2048,-2044,-2041,-2037,-2033,-2029,-2026,-2022,
+-2018,-2015,-2011,-2008,-2004,-2001,-1998,-1995,-1991,-1988,-1985,-1982,-1979,-1977,-1974,-1971,-1968,-1965,-1962,-1960,
+-1957,-1955,-1952,-1950,-1947,-1945,-1943,-1941,-1938,-1936,-1934,-1932,-1930,-1928,-1926,-1924,-1923,-1921,-1919,-1918,
+-1916,-1914,-1913,-1911,-1910,-1909,-1907,-1906,-1905,-1904,-1903,-1902,-1900,-1899,-1898,-1898,-1897,-1896,-1895,-1894,
+-1894,-1893,-1892,-1892,-1891,-1890,-1890,-1889,-1889,-1888,-1888,-1888,-1887,-1887,-1887,-1886,-1886,-1886,-1885,-1885,
+-1885,-1885,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1884,-1885,-1885,-1885,
+-1885,-1885,-1886,-1886,-1886,-1886,-1887,-1887,-1887,-1888,-1888,-1889,-1889,-1889,-1890,-1891,-1891,-1892,-1892,-1893,
+-1894,-1895,-1895,-1896,-1897,-1898,-1899,-1900,-1901,-1902,-1903,-1904,-1905,-1907,-1908,-1909,-1911,-1912,-1913,-1915,
+-1917,-1918,-1920,-1922,-1924,-1926,-1928,-1930,-1932,-1934,-1936,-1938,-1940,-1943,-1945,-1948,-1950,-1953,-1956,-1958,
+-1961,-1964,-1967,-1970,-1973,-1976,-1979,-1983,-1986,-1990,-1993,-1997,-2000,-2004,-2008,-2011,-2015,-2019,-2023,-2027,
+-2031,-2036,-2040,-2044,-2049,-2053,-2058,-2062,-2067,-2072,-2076,-2081,-2086,-2091,-2096,-2101,-2106,-2111,-2116,-2121,
+-2126,-2132,-2137,-2142,-2148,-2153,-2159,-2164,-2170,-2175,-2181,-2187,-2193,-2198,-2204,-2210,-2216,-2222,-2228,-2234,
+-2240,-2246,-2252,-2258,-2264,-2270,-2276,-2282,-2288,-2295,-2301,-2307,-2313,-2320,-2326,-2332,-2338,-2345,-2351,-2357,
+-2363,-2370,-2376,-2382,-2389,-2395,-2402,-2408,-2414,-2421,-2427,-2433,-2439,-2446,-2452,-2458,-2464,-2471,-2477,-2483,
+-2490,-2496,-2502,-2509,-2515,-2521,-2527,-2534,-2540,-2546,-2552,-2559,-2565,-2571,-2577,-2583,-2590,-2596,-2602,-2608,
+-2614,-2620,-2626,-2632,-2639,-2645,-2651,-2657,-2663,-2669,-2675,-2681,-2687,-2693,-2699,-2705,-2711,-2717,-2723,-2729,
+-2735,-2741,-2747,-2753,-2759,-2764,-2770,-2776,-2782,-2788,-2794,-2800,-2806,-2812,-2818,-2824,-2830,-2836,-2842,-2847,
+-2853,-2859,-2865,-2871,-2877,-2883,-2888,-2894,-2900,-2906,-2912,-2917,-2923,-2929,-2935,-2940,-2946,-2952,-2958,-2963,
+-2969,-2975,-2980,-2986,-2992,-2997,-3003,-3008,-3014,-3019,-3025,-3030,-3036,-3041,-3047,-3052,-3058,-3063,-3068,-3074,
+-3079,-3084,-3090,-3095,-3100,-3105,-3111,-3116,-3121,-3126,-3131,-3136,-3141,-3146,-3151,-3156,-3161,-3165,-3170,-3175,
+-3180,-3184,-3189,-3193,-3198,-3202,-3207,-3211,-3215,-3220,-3224,-3228,-3232,-3236,-3240,-3244,-3248,-3252,-3255,-3259,
+-3263,-3266,-3270,-3273,-3276,-3279,-3283,-3286,-3289,-3292,-3295,-3297,-3300,-3303,-3306,-3308,-3311,-3313,-3315,-3317,
+-3320,-3322,-3323,-3325,-3327,-3329,-3330,-3332,-3334,-3335,-3336,-3338,-3339,-3340,-3341,-3342,-3343,-3343,-3344,-3344,
+-3345,-3345,-3346,-3346,-3346,-3347,-3347,-3347,-3347,-3347,-3346,-3346,-3346,-3345,-3345,-3345,-3344,-3344,-3343,-3342,
+-3342,-3341,-3340,-3339,-3338,-3337,-3336,-3335,-3334,-3332,-3331,-3330,-3328,-3327,-3326,-3324,-3323,-3321,-3320,-3318,
+-3316,-3315,-3313,-3311,-3309,-3308,-3306,-3304,-3302,-3300,-3298,-3296,-3294,-3292,-3290,-3288,-3286,-3284,-3282,-3280,
+-3278,-3276,-3274,-3272,-3270,-3268,-3266,-3264,-3262,-3260,-3258,-3256,-3254,-3252,-3250,-3248,-3246,-3244,-3242,-3239,
+-3237,-3235,-3233,-3231,-3229,-3227,-3225,-3224,-3222,-3220,-3217,-3215,-3213,-3211,-3209,-3207,-3205,-3204,-3202,-3200,
+-3198,-3196,-3194,-3192,-3190,-3188,-3186,-3185,-3183,-3181,-3179,-3177,-3175,-3173,-3171,-3169,-3167,-3165,-3163,-3161,
+-3159,-3157,-3155,-3153,-3151,-3149,-3147,-3145,-3143,-3141,-3139,-3137,-3135,-3132,-3130,-3128,-3126,-3124,-3122,-3119,
+-3117,-3115,-3113,-3111,-3109,-3107,-3104,-3102,-3100,-3098,-3096,-3093,-3091,-3089,-3087,-3085,-3082,-3080,-3078,-3076,
+-3074,-3072,-3069,-3067,-3065,-3063,-3061,-3058,-3056,-3054,-3052,-3049,-3047,-3045,-3043,-3041,-3039,-3037,-3035,-3033,
+-3031,-3029,-3027,-3025,-3023,-3021,-3019,-3017,-3015,-3013,-3012,-3010,-3008,-3006,-3004,-3002,-3000,-2999,-2997,-2995,
+-2993,-2991,-2989,-2987,-2985,-2984,-2982,-2980,-2978,-2976,-2975,-2973,-2972,-2970,-2969,-2968,-2967,-2966,-2965,-2964,
+-2963,-2962,-2961,-2960,-2960,-2959,-2958,-2958,-2957,-2956,-2956,-2955,-2954,-2954,-2953,-2953,-2952,-2951,-2951,-2951,
+-2950,-2950,-2950,-2949,-2949,-2949,-2949,-2949,-2948,-2948,-2948,-2949,-2949,-2949,-2949,-2949,-2949,-2950,-2950,-2950,
+-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2949,-2949,-2949,-2948,-2948,-2947,-2947,-2946,-2945,-2945,-2944,
+-2944,-2944,-2943,-2943,-2942,-2942,-2942,-2941,-2941,-2940,-2940,-2939,-2939,-2938,-2938,-2937,-2937,-2937,-2936,-2936,
+-2935,-2935,-2934,-2934,-2933,-2933,-2932,-2931,-2931,-2930,-2929,-2929,-2928,-2927,-2927,-2926,-2925,-2925,-2924,-2923,
+-2923,-2922,-2921,-2921,-2920,-2919,-2918,-2917,-2917,-2916,-2915,-2914,-2913,-2913,-2912,-2911,-2910,-2909,-2909,-2908,
+-2907,-2906,-2905,-2904,-2903,-2902,-2901,-2900,-2899,-2898,-2898,-2897,-2896,-2895,-2894,-2893,-2892,-2891,-2890,-2889,
+-2888,-2887,-2886,-2885,-2885,-2884,-2883,-2882,-2881,-2880,-2879,-2879,-2878,-2877,-2876,-2875,-2875,-2874,-2873,-2873,
+-2872,-2871,-2871,-2870,-2869,-2869,-2868,-2868,-2867,-2866,-2866,-2865,-2865,-2864,-2864,-2863,-2863,-2863,-2862,-2862,
+-2861,-2860,-2860,-2859,-2859,-2858,-2858,-2857,-2857,-2856,-2856,-2855,-2855,-2854,-2854,-2853,-2852,-2852,-2851,-2850,
+-2850,-2849,-2848,-2848,-2847,-2846,-2846,-2845,-2845,-2844,-2843,-2843,-2842,-2841,-2840,-2840,-2839,-2838,-2838,-2837,
+-2836,-2836,-2835,-2834,-2834,-2833,-2832,-2832,-2831,-2830,-2830,-2829,-2828,-2828,-2827,-2826,-2825,-2825,-2824,-2823,
+-2823,-2822,-2821,-2821,-2820,-2820,-2819,-2818,-2818,-2817,-2816,-2815,-2815,-2814,-2813,-2813,-2812,-2811,-2810,-2810,
+-2809,-2808,-2808,-2807,-2806,-2806,-2805,-2804,-2804,-2803,-2802,-2802,-2801,-2800,-2799,-2799,-2798,-2798,-2797,-2796,
+-2796,-2795,-2795,-2794,-2794,-2793,-2793,-2792,-2792,-2791,-2791,-2790,-2790,-2789,-2789,-2788,-2788,-2787,-2786,-2786,
+-2785,-2784,-2783,-2783,-2782,-2781,-2780,-2779,-2778,-2777,-2776,-2775,-2773,-2772,-2771,-2770,-2768,-2767,-2765,-2764,
+-2762,-2761,-2759,-2758,-2756,-2754,-2753,-2751,-2749,-2747,-2745,-2743,-2741,-2739,-2737,-2735,-2733,-2731,-2728,-2726,
+-2724,-2721,-2718,-2716,-2713,-2710,-2707,-2704,-2702,-2699,-2696,-2693,-2689,-2686,-2683,-2680,-2676,-2673,-2669,-2665,
+-2662,-2658,-2654,-2650,-2647,-2643,-2639,-2635,-2631,-2627,-2623,-2618,-2614,-2610,-2606,-2602,-2597,-2593,-2589,-2585,
+-2581,-2576,-2572,-2568,-2564,-2559,-2555,-2551,-2547,-2543,-2538,-2534,-2530,-2526,-2522,-2518,-2515,-2511,-2507,-2503,
+-2499,-2496,-2492,-2489,-2485,-2482,-2479,-2476,-2472,-2469,-2466,-2464,-2461,-2458,-2456,-2453,-2451,-2449,-2446,-2445,
+-2443,-2441,-2439,-2438,-2436,-2435,-2434,-2433,-2432,-2431,-2431,-2430,-2430,-2430,-2430,-2430,-2430,-2431,-2431,-2432,
+-2433,-2434,-2435,-2436,-2438,-2439,-2441,-2443,-2445,-2447,-2449,-2452,-2454,-2457,-2460,-2463,-2466,-2469,-2472,-2475,
+-2479,-2482,-2486,-2490,-2493,-2497,-2502,-2506,-2510,-2514,-2519,-2523,-2528,-2532,-2537,-2542,-2547,-2551,-2556,-2561,
+-2566,-2572,-2577,-2582,-2587,-2592,-2597,-2603,-2608,-2613,-2618,-2624,-2629,-2634,-2639,-2645,-2650,-2655,-2660,-2665,
+-2670,-2675,-2680,-2685,-2690,-2694,-2699,-2704,-2708,-2713,-2717,-2722,-2726,-2730,-2734,-2738,-2742,-2746,-2750,-2753,
+-2757,-2760,-2764,-2767,-2770,-2773,-2776,-2779,-2782,-2784,-2787,-2789,-2791,-2793,-2795,-2797,-2799,-2801,-2802,-2804,
+-2805,-2807,-2808,-2809,-2810,-2811,-2811,-2812,-2813,-2813,-2813,-2814,-2814,-2814,-2814,-2814,-2814,-2813,-2813,-2813,
+-2812,-2812,-2811,-2810,-2809,-2809,-2808,-2807,-2805,-2804,-2803,-2802,-2800,-2799,-2797,-2796,-2794,-2793,-2791,-2789,
+-2787,-2786,-2784,-2782,-2780,-2778,-2776,-2774,-2772,-2769,-2767,-2765,-2762,-2760,-2757,-2755,-2752,-2750,-2747,-2745,
+-2742,-2740,-2737,-2734,-2732,-2729,-2726,-2723,-2721,-2718,-2715,-2712,-2710,-2707,-2704,-2701,-2699,-2696,-2693,-2690,
+-2687,-2684,-2681,-2678,-2675,-2673,-2670,-2667,-2664,-2661,-2658,-2655,-2652,-2649,-2646,-2642,-2639,-2636,-2633,-2630,
+-2626,-2623,-2620,-2617,-2613,-2610,-2607,-2603,-2600,-2596,-2593,-2589,-2586,-2582,-2578,-2575,-2571,-2568,-2564,-2560,
+-2556,-2553,-2549,-2545,-2541,-2537,-2534,-2530,-2526,-2522,-2518,-2514,-2510,-2506,-2502,-2498,-2493,-2489,-2485,-2481,
+-2477,-2473,-2468,-2464,-2460,-2456,-2451,-2447,-2442,-2438,-2433,-2595,-2590,-2586,-2582,-2578,-2574,-2570,-2565,-2561,
+-2557,-2552,-2548,-2544,-2539,-2535,-2530,-2526,-2521,-2516,-2512,-2507,-2502,-2498,-2493,-2488,-2483,-2479,-2474,-2469,
+-2464,-2459,-2455,-2450,-2445,-2440,-2435,-2430,-2425,-2420,-2415,-2410,-2405,-2400,-2395,-2391,-2386,-2381,-2376,-2371,
+-2366,-2361,-2356,-2352,-2347,-2342,-2337,-2332,-2327,-2322,-2318,-2313,-2308,-2303,-2298,-2294,-2289,-2284,-2280,-2275,
+-2270,-2266,-2261,-2256,-2252,-2247,-2243,-2239,-2234,-2230,-2225,-2221,-2217,-2213,-2208,-2204,-2200,-2196,-2192,-2188,
+-2184,-2180,-2176,-2172,-2168,-2164,-2161,-2157,-2154,-2150,-2146,-2143,-2140,-2136,-2133,-2130,-2126,-2123,-2120,-2117,
+-2114,-2111,-2108,-2105,-2102,-2100,-2097,-2094,-2092,-2089,-2087,-2084,-2082,-2079,-2077,-2075,-2073,-2070,-2068,-2066,
+-2064,-2062,-2060,-2058,-2057,-2055,-2053,-2051,-2050,-2048,-2047,-2045,-2044,-2043,-2041,-2040,-2039,-2037,-2036,-2035,
+-2034,-2033,-2032,-2031,-2030,-2029,-2028,-2028,-2027,-2026,-2026,-2025,-2024,-2024,-2023,-2023,-2022,-2022,-2021,-2021,
+-2021,-2020,-2020,-2020,-2020,-2020,-2020,-2020,-2020,-2019,-2019,-2019,-2020,-2020,-2020,-2020,-2020,-2020,-2021,-2021,
+-2021,-2021,-2022,-2022,-2022,-2023,-2023,-2023,-2024,-2025,-2025,-2026,-2026,-2027,-2028,-2029,-2029,-2030,-2031,-2032,
+-2033,-2034,-2035,-2036,-2037,-2038,-2039,-2040,-2042,-2043,-2044,-2046,-2047,-2048,-2050,-2051,-2053,-2054,-2056,-2058,
+-2059,-2061,-2063,-2065,-2067,-2069,-2071,-2073,-2075,-2077,-2079,-2081,-2084,-2086,-2088,-2091,-2093,-2095,-2098,-2101,
+-2103,-2106,-2109,-2112,-2115,-2118,-2120,-2123,-2126,-2130,-2133,-2136,-2139,-2142,-2146,-2149,-2152,-2156,-2159,-2163,
+-2167,-2170,-2174,-2178,-2181,-2185,-2189,-2193,-2197,-2201,-2205,-2209,-2213,-2218,-2222,-2226,-2230,-2234,-2239,-2243,
+-2247,-2252,-2256,-2261,-2265,-2270,-2274,-2279,-2284,-2288,-2293,-2298,-2303,-2307,-2312,-2317,-2322,-2327,-2331,-2336,
+-2341,-2346,-2351,-2356,-2361,-2366,-2371,-2376,-2381,-2386,-2391,-2397,-2402,-2407,-2412,-2417,-2422,-2427,-2432,-2438,
+-2443,-2448,-2453,-2458,-2464,-2469,-2474,-2479,-2484,-2490,-2495,-2500,-2506,-2511,-2516,-2521,-2526,-2532,-2537,-2542,
+-2547,-2552,-2558,-2563,-2568,-2573,-2578,-2584,-2589,-2594,-2600,-2605,-2610,-2615,-2620,-2626,-2631,-2636,-2641,-2646,
+-2652,-2657,-2662,-2667,-2673,-2678,-2683,-2688,-2693,-2699,-2704,-2709,-2714,-2719,-2724,-2730,-2735,-2740,-2745,-2750,
+-2756,-2761,-2766,-2771,-2776,-2781,-2787,-2792,-2797,-2802,-2807,-2812,-2818,-2823,-2828,-2833,-2838,-2844,-2849,-2854,
+-2859,-2864,-2869,-2874,-2880,-2885,-2890,-2895,-2900,-2905,-2910,-2915,-2921,-2926,-2931,-2936,-2941,-2946,-2951,-2956,
+-2961,-2966,-2971,-2976,-2981,-2986,-2991,-2996,-3001,-3006,-3011,-3016,-3021,-3026,-3031,-3036,-3041,-3045,-3050,-3055,
+-3060,-3065,-3069,-3074,-3079,-3084,-3088,-3093,-3098,-3102,-3107,-3111,-3116,-3120,-3124,-3129,-3133,-3137,-3142,-3146,
+-3150,-3154,-3159,-3163,-3167,-3171,-3175,-3179,-3183,-3187,-3190,-3194,-3198,-3202,-3205,-3209,-3212,-3216,-3219,-3222,
+-3226,-3229,-3232,-3235,-3238,-3241,-3244,-3247,-3250,-3253,-3255,-3258,-3261,-3263,-3266,-3268,-3270,-3272,-3275,-3277,
+-3279,-3281,-3283,-3285,-3286,-3288,-3290,-3292,-3293,-3295,-3296,-3297,-3299,-3300,-3301,-3302,-3303,-3304,-3304,-3305,
+-3306,-3306,-3307,-3307,-3308,-3308,-3308,-3308,-3309,-3309,-3309,-3309,-3309,-3309,-3309,-3309,-3308,-3308,-3308,-3307,
+-3307,-3306,-3305,-3304,-3304,-3303,-3302,-3301,-3300,-3299,-3298,-3297,-3296,-3295,-3293,-3292,-3291,-3289,-3288,-3286,
+-3285,-3283,-3282,-3280,-3279,-3277,-3275,-3274,-3272,-3270,-3268,-3266,-3265,-3263,-3261,-3259,-3257,-3255,-3253,-3251,
+-3249,-3247,-3245,-3243,-3240,-3238,-3236,-3234,-3232,-3230,-3227,-3225,-3223,-3221,-3218,-3216,-3214,-3211,-3209,-3207,
+-3205,-3202,-3200,-3198,-3196,-3193,-3191,-3189,-3186,-3184,-3182,-3180,-3177,-3175,-3173,-3170,-3168,-3165,-3163,-3161,
+-3158,-3156,-3154,-3151,-3149,-3147,-3145,-3142,-3140,-3138,-3135,-3133,-3131,-3128,-3126,-3124,-3121,-3119,-3116,-3114,
+-3112,-3110,-3108,-3105,-3103,-3101,-3099,-3096,-3094,-3092,-3090,-3087,-3085,-3083,-3080,-3078,-3076,-3074,-3071,-3069,
+-3067,-3065,-3062,-3060,-3058,-3056,-3053,-3051,-3049,-3047,-3044,-3042,-3040,-3038,-3036,-3034,-3032,-3030,-3027,-3025,
+-3023,-3021,-3019,-3017,-3015,-3013,-3011,-3009,-3007,-3005,-3003,-3001,-2999,-2997,-2995,-2993,-2991,-2989,-2987,-2985,
+-2984,-2982,-2980,-2978,-2977,-2975,-2973,-2972,-2970,-2969,-2967,-2965,-2964,-2962,-2960,-2959,-2957,-2955,-2954,-2952,
+-2951,-2949,-2948,-2947,-2945,-2944,-2942,-2941,-2939,-2938,-2936,-2935,-2934,-2933,-2932,-2930,-2929,-2928,-2927,-2926,
+-2925,-2924,-2924,-2923,-2922,-2921,-2920,-2919,-2918,-2918,-2917,-2916,-2916,-2915,-2915,-2914,-2913,-2913,-2912,-2912,
+-2912,-2911,-2911,-2910,-2910,-2910,-2909,-2909,-2909,-2909,-2909,-2908,-2908,-2908,-2908,-2907,-2907,-2907,-2906,-2906,
+-2906,-2906,-2905,-2905,-2905,-2904,-2904,-2904,-2904,-2903,-2903,-2903,-2902,-2902,-2902,-2901,-2901,-2900,-2900,-2899,
+-2899,-2899,-2898,-2898,-2897,-2896,-2896,-2895,-2894,-2894,-2893,-2892,-2891,-2891,-2890,-2889,-2888,-2887,-2887,-2886,
+-2885,-2885,-2884,-2884,-2883,-2883,-2882,-2882,-2881,-2881,-2880,-2880,-2880,-2879,-2879,-2878,-2878,-2878,-2877,-2877,
+-2876,-2876,-2875,-2875,-2875,-2874,-2874,-2873,-2873,-2872,-2872,-2872,-2871,-2871,-2870,-2870,-2869,-2869,-2868,-2868,
+-2867,-2867,-2866,-2866,-2865,-2865,-2864,-2864,-2863,-2862,-2862,-2861,-2860,-2860,-2859,-2858,-2858,-2857,-2857,-2856,
+-2855,-2855,-2854,-2854,-2853,-2852,-2852,-2851,-2850,-2850,-2849,-2849,-2848,-2848,-2847,-2847,-2846,-2846,-2845,-2845,
+-2844,-2844,-2843,-2843,-2843,-2842,-2842,-2841,-2841,-2840,-2840,-2840,-2839,-2839,-2839,-2838,-2838,-2837,-2837,-2837,
+-2836,-2836,-2835,-2835,-2834,-2834,-2833,-2833,-2832,-2832,-2831,-2831,-2830,-2830,-2829,-2829,-2828,-2828,-2827,-2827,
+-2826,-2826,-2825,-2824,-2824,-2823,-2823,-2822,-2822,-2821,-2821,-2820,-2820,-2819,-2819,-2818,-2818,-2817,-2817,-2816,
+-2816,-2815,-2815,-2814,-2814,-2813,-2812,-2812,-2811,-2811,-2810,-2810,-2809,-2809,-2808,-2808,-2807,-2807,-2806,-2806,
+-2806,-2805,-2805,-2804,-2804,-2804,-2803,-2803,-2803,-2802,-2802,-2801,-2801,-2800,-2800,-2799,-2799,-2798,-2797,-2797,
+-2796,-2796,-2795,-2795,-2794,-2794,-2793,-2793,-2792,-2792,-2791,-2791,-2790,-2790,-2789,-2789,-2788,-2788,-2787,-2787,
+-2786,-2786,-2785,-2785,-2784,-2784,-2783,-2783,-2782,-2782,-2782,-2781,-2781,-2780,-2780,-2779,-2779,-2778,-2777,-2777,
+-2776,-2776,-2775,-2774,-2774,-2773,-2772,-2771,-2771,-2770,-2769,-2768,-2767,-2766,-2765,-2764,-2763,-2762,-2761,-2760,
+-2759,-2758,-2757,-2755,-2754,-2752,-2751,-2749,-2748,-2746,-2745,-2743,-2741,-2740,-2738,-2736,-2735,-2733,-2731,-2729,
+-2727,-2725,-2723,-2721,-2719,-2717,-2715,-2712,-2710,-2708,-2705,-2703,-2701,-2698,-2696,-2693,-2691,-2688,-2686,-2683,
+-2680,-2677,-2675,-2672,-2669,-2666,-2663,-2660,-2657,-2654,-2652,-2649,-2646,-2642,-2639,-2636,-2633,-2630,-2627,-2624,
+-2621,-2618,-2615,-2612,-2609,-2606,-2602,-2599,-2596,-2593,-2590,-2587,-2585,-2582,-2579,-2576,-2573,-2570,-2568,-2565,
+-2562,-2560,-2557,-2555,-2552,-2550,-2547,-2545,-2543,-2541,-2539,-2536,-2534,-2533,-2531,-2529,-2527,-2526,-2524,-2523,
+-2521,-2520,-2519,-2517,-2516,-2515,-2514,-2514,-2513,-2512,-2512,-2511,-2511,-2511,-2510,-2510,-2510,-2510,-2511,-2511,
+-2511,-2512,-2512,-2513,-2514,-2515,-2516,-2517,-2518,-2519,-2521,-2522,-2524,-2525,-2527,-2529,-2531,-2532,-2534,-2536,
+-2539,-2541,-2543,-2545,-2548,-2550,-2553,-2556,-2558,-2561,-2564,-2567,-2570,-2573,-2576,-2580,-2583,-2586,-2589,-2593,
+-2596,-2600,-2603,-2607,-2610,-2614,-2618,-2621,-2625,-2629,-2632,-2636,-2640,-2644,-2647,-2651,-2655,-2659,-2663,-2666,
+-2670,-2674,-2678,-2681,-2685,-2689,-2692,-2696,-2700,-2704,-2707,-2711,-2714,-2718,-2721,-2725,-2728,-2731,-2735,-2738,
+-2741,-2744,-2748,-2751,-2754,-2757,-2759,-2762,-2765,-2768,-2770,-2773,-2775,-2778,-2780,-2783,-2785,-2787,-2789,-2791,
+-2793,-2795,-2797,-2799,-2801,-2803,-2805,-2806,-2808,-2809,-2811,-2812,-2814,-2815,-2816,-2817,-2818,-2819,-2820,-2821,
+-2822,-2823,-2824,-2824,-2825,-2826,-2826,-2827,-2827,-2828,-2828,-2829,-2829,-2829,-2829,-2830,-2830,-2830,-2830,-2830,
+-2830,-2829,-2829,-2829,-2829,-2829,-2828,-2828,-2827,-2827,-2826,-2826,-2825,-2824,-2824,-2823,-2822,-2822,-2821,-2820,
+-2819,-2818,-2817,-2816,-2815,-2814,-2813,-2812,-2811,-2810,-2808,-2807,-2806,-2805,-2803,-2802,-2800,-2799,-2798,-2796,
+-2794,-2793,-2791,-2790,-2788,-2786,-2785,-2783,-2781,-2779,-2777,-2776,-2774,-2772,-2770,-2767,-2765,-2763,-2761,-2759,
+-2756,-2754,-2752,-2749,-2747,-2745,-2742,-2740,-2737,-2735,-2732,-2730,-2727,-2724,-2721,-2718,-2716,-2713,-2710,-2707,
+-2704,-2701,-2698,-2695,-2692,-2689,-2685,-2682,-2679,-2676,-2672,-2669,-2666,-2662,-2659,-2655,-2652,-2648,-2644,-2641,
+-2637,-2633,-2630,-2626,-2622,-2618,-2614,-2610,-2606,-2603,-2599,-2595,-2732,-2729,-2726,-2722,-2719,-2715,-2712,-2708,
+-2705,-2701,-2697,-2694,-2690,-2686,-2682,-2678,-2674,-2670,-2666,-2662,-2658,-2654,-2650,-2646,-2642,-2637,-2633,-2629,
+-2625,-2620,-2616,-2612,-2607,-2603,-2598,-2594,-2590,-2585,-2581,-2576,-2572,-2567,-2563,-2558,-2554,-2549,-2544,-2540,
+-2535,-2531,-2526,-2522,-2517,-2513,-2508,-2504,-2499,-2495,-2490,-2486,-2481,-2477,-2472,-2468,-2463,-2459,-2454,-2450,
+-2445,-2441,-2436,-2432,-2428,-2423,-2419,-2415,-2410,-2406,-2402,-2398,-2393,-2389,-2385,-2381,-2377,-2373,-2369,-2365,
+-2361,-2357,-2353,-2349,-2345,-2341,-2337,-2334,-2330,-2326,-2323,-2319,-2315,-2312,-2308,-2305,-2301,-2298,-2295,-2291,
+-2288,-2285,-2282,-2279,-2275,-2272,-2269,-2266,-2264,-2261,-2258,-2255,-2252,-2250,-2247,-2245,-2242,-2239,-2237,-2235,
+-2232,-2230,-2228,-2225,-2223,-2221,-2219,-2217,-2215,-2213,-2211,-2210,-2208,-2206,-2204,-2203,-2201,-2200,-2198,-2197,
+-2196,-2194,-2193,-2192,-2191,-2190,-2189,-2188,-2187,-2186,-2185,-2184,-2184,-2183,-2182,-2181,-2181,-2180,-2179,-2179,
+-2178,-2178,-2178,-2177,-2177,-2176,-2176,-2176,-2176,-2175,-2175,-2175,-2175,-2175,-2174,-2174,-2174,-2174,-2174,-2174,
+-2175,-2175,-2175,-2175,-2175,-2176,-2176,-2176,-2176,-2177,-2177,-2178,-2178,-2179,-2179,-2180,-2181,-2181,-2182,-2183,
+-2184,-2184,-2185,-2186,-2187,-2188,-2189,-2190,-2191,-2192,-2193,-2195,-2196,-2197,-2198,-2200,-2201,-2202,-2204,-2205,
+-2207,-2208,-2210,-2212,-2213,-2215,-2217,-2219,-2220,-2222,-2224,-2226,-2228,-2230,-2232,-2234,-2236,-2238,-2240,-2243,
+-2245,-2247,-2249,-2252,-2254,-2257,-2259,-2262,-2264,-2267,-2270,-2272,-2275,-2278,-2280,-2283,-2286,-2289,-2291,-2294,
+-2297,-2300,-2303,-2306,-2309,-2312,-2315,-2319,-2322,-2325,-2328,-2332,-2335,-2338,-2342,-2345,-2348,-2352,-2355,-2359,
+-2362,-2366,-2369,-2373,-2377,-2380,-2384,-2387,-2391,-2395,-2399,-2402,-2406,-2410,-2414,-2417,-2421,-2425,-2429,-2433,
+-2437,-2441,-2444,-2448,-2452,-2456,-2460,-2464,-2468,-2472,-2477,-2481,-2485,-2489,-2493,-2497,-2501,-2505,-2509,-2513,
+-2517,-2521,-2526,-2530,-2534,-2538,-2542,-2546,-2551,-2555,-2559,-2563,-2568,-2572,-2576,-2580,-2585,-2589,-2593,-2597,
+-2602,-2606,-2610,-2614,-2619,-2623,-2627,-2631,-2636,-2640,-2644,-2649,-2653,-2657,-2662,-2666,-2670,-2675,-2679,-2683,
+-2688,-2692,-2696,-2701,-2705,-2709,-2714,-2718,-2722,-2727,-2731,-2735,-2740,-2744,-2749,-2753,-2757,-2762,-2766,-2771,
+-2775,-2779,-2784,-2788,-2793,-2797,-2801,-2806,-2810,-2815,-2819,-2824,-2828,-2833,-2837,-2841,-2846,-2850,-2855,-2859,
+-2864,-2868,-2872,-2877,-2881,-2886,-2890,-2895,-2899,-2904,-2908,-2913,-2917,-2922,-2926,-2930,-2935,-2939,-2944,-2948,
+-2952,-2957,-2961,-2965,-2970,-2974,-2979,-2983,-2987,-2992,-2996,-3000,-3004,-3009,-3013,-3017,-3021,-3026,-3030,-3034,
+-3038,-3042,-3046,-3051,-3055,-3059,-3063,-3067,-3071,-3075,-3079,-3083,-3087,-3091,-3094,-3098,-3102,-3106,-3110,-3113,
+-3117,-3121,-3124,-3128,-3132,-3135,-3139,-3142,-3146,-3149,-3152,-3156,-3159,-3162,-3165,-3168,-3172,-3175,-3178,-3181,
+-3184,-3187,-3189,-3192,-3195,-3198,-3200,-3203,-3206,-3208,-3211,-3213,-3216,-3218,-3220,-3223,-3225,-3227,-3229,-3231,
+-3233,-3235,-3237,-3238,-3240,-3242,-3243,-3245,-3246,-3248,-3249,-3251,-3252,-3253,-3254,-3255,-3256,-3257,-3258,-3259,
+-3260,-3260,-3261,-3262,-3262,-3263,-3263,-3264,-3264,-3264,-3265,-3265,-3265,-3265,-3265,-3265,-3265,-3265,-3265,-3265,
+-3264,-3264,-3264,-3263,-3263,-3262,-3261,-3261,-3260,-3259,-3259,-3258,-3257,-3256,-3255,-3254,-3253,-3252,-3251,-3250,
+-3248,-3247,-3246,-3244,-3243,-3241,-3240,-3238,-3237,-3235,-3234,-3232,-3230,-3228,-3227,-3225,-3223,-3221,-3219,-3217,
+-3215,-3213,-3211,-3210,-3208,-3205,-3203,-3201,-3199,-3197,-3195,-3193,-3191,-3188,-3186,-3184,-3182,-3179,-3177,-3175,
+-3173,-3170,-3168,-3166,-3163,-3161,-3159,-3156,-3154,-3152,-3149,-3147,-3144,-3142,-3139,-3137,-3134,-3132,-3129,-3127,
+-3125,-3122,-3120,-3117,-3115,-3113,-3110,-3108,-3105,-3103,-3101,-3098,-3096,-3093,-3091,-3088,-3086,-3083,-3081,-3078,
+-3076,-3073,-3071,-3069,-3066,-3064,-3061,-3059,-3057,-3054,-3052,-3050,-3047,-3045,-3043,-3040,-3038,-3036,-3033,-3031,
+-3029,-3027,-3024,-3022,-3020,-3018,-3015,-3013,-3011,-3009,-3007,-3004,-3002,-3000,-2998,-2996,-2994,-2992,-2990,-2988,
+-2986,-2984,-2982,-2980,-2978,-2976,-2974,-2972,-2970,-2968,-2966,-2964,-2963,-2961,-2959,-2957,-2956,-2954,-2952,-2951,
+-2949,-2947,-2946,-2944,-2942,-2941,-2939,-2938,-2936,-2934,-2933,-2931,-2930,-2928,-2927,-2926,-2924,-2923,-2921,-2920,
+-2919,-2917,-2916,-2915,-2913,-2912,-2911,-2910,-2909,-2907,-2906,-2905,-2904,-2903,-2902,-2901,-2900,-2899,-2898,-2897,
+-2896,-2895,-2894,-2893,-2892,-2891,-2891,-2890,-2889,-2888,-2888,-2887,-2886,-2886,-2885,-2884,-2884,-2883,-2882,-2882,
+-2881,-2881,-2880,-2880,-2879,-2879,-2879,-2878,-2878,-2878,-2877,-2877,-2876,-2876,-2876,-2875,-2875,-2874,-2874,-2874,
+-2873,-2873,-2873,-2873,-2872,-2872,-2872,-2872,-2871,-2871,-2871,-2870,-2870,-2870,-2869,-2869,-2869,-2869,-2868,-2868,
+-2868,-2868,-2867,-2867,-2867,-2867,-2866,-2866,-2866,-2865,-2865,-2865,-2864,-2864,-2864,-2863,-2863,-2863,-2863,-2862,
+-2862,-2862,-2862,-2861,-2861,-2861,-2860,-2860,-2859,-2859,-2858,-2858,-2857,-2857,-2856,-2856,-2855,-2855,-2854,-2854,
+-2854,-2853,-2853,-2852,-2852,-2852,-2851,-2851,-2851,-2850,-2850,-2850,-2849,-2849,-2848,-2848,-2848,-2847,-2847,-2846,
+-2846,-2846,-2845,-2845,-2844,-2844,-2843,-2843,-2842,-2842,-2842,-2841,-2841,-2841,-2840,-2840,-2839,-2839,-2839,-2838,
+-2838,-2838,-2837,-2837,-2837,-2836,-2836,-2835,-2835,-2835,-2834,-2834,-2833,-2833,-2833,-2833,-2832,-2832,-2832,-2831,
+-2831,-2831,-2831,-2831,-2830,-2830,-2830,-2829,-2829,-2829,-2829,-2828,-2828,-2828,-2828,-2827,-2827,-2827,-2827,-2827,
+-2826,-2826,-2826,-2826,-2825,-2825,-2825,-2824,-2824,-2824,-2823,-2823,-2823,-2823,-2822,-2822,-2822,-2821,-2821,-2821,
+-2820,-2820,-2820,-2819,-2819,-2819,-2818,-2818,-2817,-2817,-2817,-2816,-2816,-2816,-2815,-2815,-2815,-2814,-2814,-2814,
+-2813,-2813,-2813,-2812,-2812,-2811,-2811,-2811,-2810,-2810,-2810,-2809,-2809,-2809,-2808,-2808,-2808,-2808,-2807,-2807,
+-2807,-2807,-2807,-2806,-2806,-2806,-2806,-2805,-2805,-2805,-2805,-2805,-2805,-2804,-2804,-2804,-2804,-2803,-2803,-2803,
+-2802,-2802,-2801,-2801,-2801,-2800,-2800,-2799,-2799,-2798,-2798,-2797,-2797,-2796,-2796,-2795,-2795,-2794,-2794,-2793,
+-2793,-2792,-2792,-2791,-2791,-2790,-2790,-2790,-2789,-2789,-2788,-2788,-2788,-2787,-2787,-2786,-2786,-2785,-2785,-2784,
+-2784,-2783,-2782,-2782,-2781,-2781,-2780,-2779,-2779,-2778,-2777,-2777,-2776,-2775,-2774,-2773,-2773,-2772,-2771,-2770,
+-2769,-2768,-2767,-2766,-2765,-2764,-2763,-2762,-2761,-2759,-2758,-2757,-2756,-2755,-2753,-2752,-2751,-2750,-2748,-2747,
+-2746,-2744,-2743,-2741,-2740,-2738,-2737,-2735,-2734,-2732,-2730,-2728,-2727,-2725,-2723,-2721,-2719,-2718,-2716,-2714,
+-2712,-2710,-2708,-2706,-2704,-2702,-2699,-2697,-2695,-2693,-2691,-2688,-2686,-2684,-2682,-2680,-2677,-2675,-2673,-2671,
+-2668,-2666,-2664,-2662,-2659,-2657,-2655,-2653,-2651,-2649,-2646,-2644,-2642,-2640,-2638,-2636,-2634,-2632,-2630,-2628,
+-2627,-2625,-2623,-2621,-2619,-2617,-2616,-2614,-2612,-2611,-2609,-2608,-2606,-2605,-2604,-2602,-2601,-2600,-2599,-2598,
+-2596,-2595,-2594,-2593,-2592,-2592,-2591,-2590,-2590,-2589,-2588,-2588,-2588,-2587,-2587,-2587,-2587,-2586,-2586,-2586,
+-2586,-2587,-2587,-2587,-2587,-2588,-2588,-2589,-2590,-2590,-2591,-2592,-2592,-2593,-2594,-2595,-2596,-2597,-2598,-2599,
+-2601,-2602,-2603,-2605,-2606,-2608,-2609,-2611,-2613,-2614,-2616,-2618,-2620,-2621,-2623,-2625,-2627,-2629,-2631,-2633,
+-2635,-2637,-2640,-2642,-2644,-2646,-2649,-2651,-2654,-2656,-2658,-2661,-2663,-2666,-2668,-2671,-2673,-2676,-2679,-2681,
+-2684,-2687,-2689,-2692,-2695,-2697,-2700,-2703,-2706,-2708,-2711,-2714,-2716,-2719,-2722,-2724,-2727,-2730,-2733,-2735,
+-2738,-2741,-2744,-2746,-2749,-2751,-2754,-2756,-2759,-2761,-2764,-2766,-2769,-2771,-2774,-2776,-2778,-2781,-2783,-2785,
+-2788,-2790,-2792,-2794,-2797,-2799,-2801,-2803,-2805,-2807,-2809,-2811,-2813,-2815,-2816,-2818,-2820,-2822,-2824,-2825,
+-2827,-2829,-2830,-2832,-2833,-2835,-2836,-2838,-2839,-2841,-2842,-2844,-2845,-2846,-2848,-2849,-2850,-2851,-2852,-2854,
+-2855,-2856,-2857,-2858,-2858,-2859,-2860,-2861,-2862,-2863,-2863,-2864,-2865,-2865,-2866,-2866,-2867,-2867,-2868,-2868,
+-2868,-2869,-2869,-2869,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2869,-2869,-2869,
+-2868,-2868,-2867,-2867,-2867,-2866,-2865,-2865,-2864,-2864,-2863,-2862,-2861,-2860,-2859,-2858,-2857,-2856,-2855,-2854,
+-2853,-2851,-2850,-2849,-2847,-2846,-2845,-2843,-2842,-2840,-2838,-2837,-2835,-2833,-2831,-2829,-2828,-2826,-2824,-2822,
+-2820,-2818,-2815,-2813,-2811,-2809,-2807,-2804,-2802,-2799,-2797,-2794,-2792,-2789,-2786,-2784,-2781,-2778,-2776,-2773,
+-2770,-2767,-2764,-2761,-2758,-2755,-2752,-2749,-2746,-2742,-2739,-2736,-2732,-2840,-2838,-2835,-2833,-2830,-2828,-2825,
+-2822,-2820,-2817,-2814,-2811,-2808,-2805,-2802,-2799,-2796,-2793,-2789,-2786,-2783,-2780,-2777,-2773,-2770,-2767,-2763,
+-2760,-2756,-2753,-2749,-2746,-2742,-2739,-2735,-2732,-2728,-2724,-2720,-2717,-2713,-2709,-2706,-2702,-2698,-2694,-2691,
+-2687,-2683,-2679,-2675,-2672,-2668,-2664,-2660,-2656,-2652,-2649,-2645,-2641,-2637,-2633,-2629,-2625,-2622,-2618,-2614,
+-2610,-2606,-2602,-2598,-2595,-2591,-2587,-2583,-2579,-2575,-2572,-2568,-2564,-2560,-2556,-2553,-2549,-2545,-2542,-2538,
+-2534,-2531,-2527,-2523,-2520,-2516,-2513,-2509,-2506,-2502,-2499,-2495,-2492,-2489,-2485,-2482,-2479,-2476,-2473,-2469,
+-2466,-2463,-2460,-2457,-2454,-2451,-2448,-2445,-2442,-2439,-2436,-2434,-2431,-2428,-2426,-2423,-2420,-2418,-2415,-2413,
+-2410,-2408,-2406,-2403,-2401,-2399,-2396,-2394,-2392,-2390,-2388,-2386,-2384,-2383,-2381,-2379,-2377,-2376,-2374,-2373,
+-2371,-2370,-2368,-2367,-2366,-2364,-2363,-2362,-2361,-2359,-2358,-2357,-2356,-2355,-2354,-2353,-2352,-2351,-2350,-2349,
+-2348,-2348,-2347,-2346,-2345,-2345,-2344,-2343,-2343,-2342,-2342,-2341,-2341,-2340,-2340,-2340,-2340,-2339,-2339,-2339,
+-2339,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2338,-2339,-2339,-2339,-2340,-2340,-2340,-2341,
+-2341,-2342,-2342,-2343,-2343,-2344,-2344,-2345,-2346,-2346,-2347,-2348,-2349,-2349,-2350,-2351,-2352,-2353,-2354,-2355,
+-2356,-2357,-2359,-2360,-2361,-2362,-2363,-2364,-2366,-2367,-2368,-2370,-2371,-2373,-2374,-2375,-2377,-2379,-2380,-2382,
+-2383,-2385,-2387,-2388,-2390,-2392,-2394,-2395,-2397,-2399,-2401,-2403,-2405,-2407,-2409,-2411,-2413,-2415,-2417,-2420,
+-2422,-2424,-2426,-2429,-2431,-2433,-2436,-2438,-2440,-2443,-2445,-2448,-2450,-2453,-2455,-2458,-2460,-2463,-2466,-2468,
+-2471,-2473,-2476,-2479,-2482,-2484,-2487,-2490,-2493,-2495,-2498,-2501,-2504,-2507,-2510,-2513,-2515,-2518,-2521,-2524,
+-2527,-2530,-2533,-2536,-2539,-2542,-2545,-2548,-2551,-2555,-2558,-2561,-2564,-2567,-2570,-2573,-2577,-2580,-2583,-2586,
+-2590,-2593,-2596,-2599,-2602,-2606,-2609,-2612,-2615,-2618,-2622,-2625,-2628,-2632,-2635,-2638,-2642,-2645,-2649,-2652,
+-2655,-2659,-2662,-2666,-2669,-2672,-2676,-2679,-2683,-2686,-2690,-2693,-2697,-2700,-2704,-2707,-2711,-2714,-2718,-2722,
+-2725,-2729,-2732,-2736,-2739,-2743,-2746,-2750,-2753,-2757,-2760,-2764,-2768,-2771,-2775,-2779,-2782,-2786,-2790,-2793,
+-2797,-2801,-2804,-2808,-2812,-2815,-2819,-2823,-2826,-2830,-2834,-2837,-2841,-2845,-2848,-2852,-2856,-2860,-2863,-2867,
+-2871,-2875,-2878,-2882,-2886,-2889,-2893,-2897,-2901,-2904,-2908,-2912,-2915,-2919,-2923,-2927,-2930,-2934,-2938,-2941,
+-2945,-2949,-2953,-2956,-2960,-2964,-2967,-2971,-2974,-2978,-2982,-2985,-2989,-2992,-2996,-3000,-3003,-3007,-3010,-3014,
+-3017,-3021,-3024,-3028,-3031,-3035,-3038,-3041,-3045,-3048,-3051,-3055,-3058,-3061,-3064,-3068,-3071,-3074,-3078,-3081,
+-3084,-3087,-3090,-3093,-3096,-3099,-3102,-3105,-3108,-3111,-3114,-3116,-3119,-3122,-3125,-3127,-3130,-3133,-3135,-3138,
+-3141,-3143,-3146,-3148,-3150,-3153,-3155,-3157,-3160,-3162,-3164,-3166,-3168,-3170,-3172,-3174,-3176,-3178,-3180,-3182,
+-3184,-3186,-3187,-3189,-3190,-3192,-3193,-3195,-3196,-3198,-3199,-3200,-3201,-3203,-3204,-3205,-3206,-3207,-3208,-3209,
+-3210,-3211,-3212,-3212,-3213,-3214,-3214,-3215,-3215,-3215,-3216,-3216,-3217,-3217,-3217,-3218,-3218,-3218,-3218,-3218,
+-3218,-3218,-3218,-3218,-3217,-3217,-3216,-3216,-3215,-3215,-3214,-3214,-3213,-3212,-3211,-3211,-3210,-3209,-3208,-3208,
+-3207,-3206,-3205,-3204,-3202,-3201,-3200,-3199,-3197,-3196,-3195,-3193,-3192,-3190,-3189,-3187,-3186,-3184,-3183,-3181,
+-3180,-3178,-3176,-3175,-3173,-3171,-3169,-3167,-3165,-3164,-3162,-3160,-3158,-3156,-3154,-3152,-3150,-3148,-3146,-3144,
+-3142,-3140,-3138,-3135,-3133,-3131,-3129,-3127,-3125,-3122,-3120,-3118,-3116,-3113,-3111,-3109,-3107,-3104,-3102,-3100,
+-3098,-3095,-3093,-3091,-3088,-3086,-3084,-3082,-3079,-3077,-3075,-3073,-3070,-3068,-3066,-3063,-3061,-3059,-3056,-3054,
+-3052,-3050,-3047,-3045,-3043,-3041,-3038,-3036,-3034,-3031,-3029,-3027,-3025,-3022,-3020,-3018,-3016,-3014,-3012,-3009,
+-3007,-3005,-3003,-3001,-2999,-2997,-2995,-2993,-2991,-2989,-2987,-2985,-2983,-2981,-2979,-2977,-2975,-2973,-2971,-2969,
+-2967,-2965,-2964,-2962,-2960,-2958,-2956,-2954,-2952,-2950,-2949,-2947,-2945,-2943,-2942,-2940,-2939,-2937,-2935,-2934,
+-2932,-2931,-2929,-2928,-2926,-2925,-2923,-2922,-2920,-2919,-2918,-2916,-2915,-2914,-2912,-2911,-2910,-2909,-2908,-2907,
+-2906,-2904,-2903,-2902,-2901,-2900,-2899,-2898,-2897,-2896,-2895,-2894,-2893,-2892,-2891,-2890,-2889,-2889,-2888,-2887,
+-2886,-2885,-2885,-2884,-2883,-2883,-2882,-2881,-2881,-2880,-2879,-2879,-2878,-2878,-2877,-2877,-2876,-2876,-2875,-2875,
+-2874,-2874,-2873,-2873,-2872,-2872,-2871,-2871,-2870,-2870,-2869,-2869,-2869,-2868,-2868,-2867,-2867,-2867,-2866,-2866,
+-2865,-2865,-2865,-2864,-2864,-2864,-2863,-2863,-2863,-2862,-2862,-2862,-2861,-2861,-2861,-2861,-2860,-2860,-2860,-2860,
+-2859,-2859,-2859,-2859,-2858,-2858,-2858,-2858,-2858,-2857,-2857,-2857,-2857,-2857,-2856,-2856,-2856,-2856,-2856,-2855,
+-2855,-2855,-2855,-2854,-2854,-2854,-2853,-2853,-2853,-2852,-2852,-2852,-2851,-2851,-2851,-2850,-2850,-2850,-2850,-2849,
+-2849,-2849,-2848,-2848,-2848,-2848,-2847,-2847,-2847,-2847,-2847,-2847,-2846,-2846,-2846,-2846,-2845,-2845,-2845,-2845,
+-2844,-2844,-2844,-2844,-2844,-2843,-2843,-2843,-2843,-2843,-2843,-2843,-2842,-2842,-2842,-2842,-2842,-2842,-2842,-2842,
+-2842,-2841,-2841,-2841,-2841,-2841,-2841,-2840,-2840,-2840,-2840,-2840,-2840,-2840,-2839,-2839,-2839,-2839,-2839,-2839,
+-2839,-2839,-2839,-2839,-2839,-2839,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2838,-2837,
+-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2837,-2836,-2836,-2836,-2836,-2836,-2836,
+-2835,-2835,-2835,-2835,-2835,-2835,-2835,-2834,-2834,-2834,-2834,-2834,-2834,-2834,-2833,-2833,-2833,-2833,-2833,-2832,
+-2832,-2832,-2832,-2832,-2831,-2831,-2831,-2831,-2831,-2831,-2830,-2830,-2830,-2830,-2830,-2829,-2829,-2829,-2829,-2828,
+-2828,-2828,-2828,-2828,-2828,-2827,-2827,-2827,-2827,-2827,-2827,-2826,-2826,-2826,-2826,-2826,-2825,-2825,-2825,-2825,
+-2824,-2824,-2824,-2824,-2824,-2823,-2823,-2823,-2823,-2823,-2822,-2822,-2822,-2821,-2821,-2821,-2820,-2820,-2820,-2819,
+-2819,-2818,-2818,-2818,-2817,-2817,-2817,-2816,-2816,-2815,-2815,-2814,-2814,-2814,-2813,-2813,-2812,-2812,-2811,-2811,
+-2810,-2809,-2809,-2808,-2808,-2807,-2807,-2806,-2805,-2805,-2804,-2803,-2803,-2802,-2801,-2801,-2800,-2799,-2798,-2798,
+-2797,-2796,-2795,-2794,-2793,-2792,-2792,-2791,-2790,-2789,-2788,-2787,-2786,-2785,-2784,-2783,-2782,-2781,-2780,-2779,
+-2778,-2776,-2775,-2774,-2773,-2772,-2771,-2769,-2768,-2767,-2765,-2764,-2763,-2761,-2760,-2759,-2757,-2756,-2755,-2753,
+-2752,-2751,-2749,-2748,-2746,-2745,-2743,-2742,-2740,-2739,-2737,-2736,-2734,-2733,-2731,-2730,-2728,-2727,-2725,-2724,
+-2722,-2721,-2719,-2718,-2716,-2715,-2713,-2712,-2710,-2708,-2707,-2705,-2704,-2702,-2701,-2700,-2698,-2697,-2695,-2694,
+-2693,-2691,-2690,-2689,-2687,-2686,-2685,-2683,-2682,-2681,-2680,-2679,-2678,-2677,-2675,-2674,-2673,-2672,-2671,-2671,
+-2670,-2669,-2668,-2667,-2666,-2665,-2665,-2664,-2663,-2663,-2662,-2662,-2661,-2661,-2660,-2660,-2659,-2659,-2659,-2658,
+-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2658,-2659,-2659,-2659,-2660,-2660,-2661,-2661,-2662,
+-2662,-2663,-2664,-2664,-2665,-2666,-2667,-2668,-2669,-2669,-2670,-2671,-2673,-2674,-2675,-2676,-2677,-2678,-2679,-2681,
+-2682,-2683,-2684,-2686,-2687,-2688,-2690,-2691,-2693,-2694,-2696,-2697,-2699,-2701,-2702,-2704,-2706,-2708,-2709,-2711,
+-2713,-2715,-2717,-2718,-2720,-2722,-2724,-2726,-2728,-2730,-2732,-2734,-2736,-2738,-2740,-2742,-2744,-2746,-2748,-2750,
+-2752,-2754,-2757,-2759,-2761,-2763,-2765,-2767,-2769,-2771,-2773,-2776,-2778,-2780,-2782,-2784,-2786,-2788,-2790,-2792,
+-2794,-2797,-2799,-2801,-2803,-2805,-2807,-2809,-2811,-2813,-2815,-2817,-2819,-2821,-2823,-2825,-2827,-2829,-2831,-2833,
+-2835,-2837,-2839,-2841,-2843,-2844,-2846,-2848,-2850,-2852,-2854,-2855,-2857,-2859,-2861,-2862,-2864,-2866,-2867,-2869,
+-2871,-2872,-2874,-2875,-2877,-2878,-2880,-2881,-2883,-2884,-2886,-2887,-2888,-2890,-2891,-2892,-2893,-2895,-2896,-2897,
+-2898,-2899,-2900,-2901,-2902,-2903,-2904,-2905,-2906,-2907,-2907,-2908,-2909,-2910,-2910,-2911,-2911,-2912,-2913,-2913,
+-2914,-2914,-2914,-2915,-2915,-2916,-2916,-2916,-2916,-2916,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2916,-2916,-2916,
+-2916,-2915,-2915,-2915,-2914,-2914,-2913,-2912,-2912,-2911,-2910,-2910,-2909,-2908,-2907,-2906,-2905,-2904,-2903,-2902,
+-2901,-2900,-2899,-2897,-2896,-2895,-2893,-2892,-2890,-2889,-2887,-2886,-2884,-2882,-2881,-2879,-2877,-2875,-2873,-2872,
+-2870,-2868,-2866,-2863,-2861,-2859,-2857,-2855,-2852,-2850,-2848,-2845,-2843,-2840,-2915,-2913,-2912,-2910,-2908,-2906,
+-2905,-2903,-2901,-2899,-2897,-2895,-2893,-2891,-2889,-2887,-2885,-2882,-2880,-2878,-2876,-2873,-2871,-2869,-2866,-2864,
+-2861,-2859,-2856,-2854,-2851,-2849,-2846,-2843,-2841,-2838,-2835,-2833,-2830,-2827,-2825,-2822,-2819,-2816,-2813,-2810,
+-2807,-2805,-2802,-2799,-2796,-2793,-2790,-2787,-2784,-2781,-2778,-2775,-2772,-2769,-2766,-2763,-2760,-2757,-2754,-2751,
+-2748,-2745,-2742,-2739,-2736,-2733,-2730,-2727,-2724,-2721,-2717,-2714,-2711,-2708,-2705,-2702,-2699,-2696,-2693,-2690,
+-2687,-2684,-2681,-2678,-2675,-2672,-2669,-2666,-2664,-2661,-2658,-2655,-2652,-2649,-2646,-2644,-2641,-2638,-2635,-2633,
+-2630,-2627,-2625,-2622,-2619,-2617,-2614,-2611,-2609,-2606,-2604,-2601,-2599,-2596,-2594,-2591,-2589,-2587,-2584,-2582,
+-2580,-2577,-2575,-2573,-2571,-2569,-2567,-2565,-2563,-2561,-2559,-2557,-2555,-2553,-2551,-2550,-2548,-2546,-2545,-2543,
+-2541,-2540,-2538,-2537,-2536,-2534,-2533,-2532,-2530,-2529,-2528,-2527,-2525,-2524,-2523,-2522,-2521,-2520,-2518,-2517,
+-2516,-2515,-2514,-2514,-2513,-2512,-2511,-2510,-2509,-2509,-2508,-2507,-2506,-2506,-2505,-2504,-2504,-2503,-2503,-2502,
+-2502,-2501,-2501,-2500,-2500,-2499,-2499,-2499,-2498,-2498,-2498,-2498,-2497,-2497,-2497,-2497,-2497,-2497,-2497,-2497,
+-2497,-2497,-2497,-2497,-2497,-2497,-2498,-2498,-2498,-2498,-2499,-2499,-2500,-2500,-2500,-2501,-2501,-2502,-2502,-2503,
+-2503,-2504,-2504,-2505,-2505,-2506,-2507,-2507,-2508,-2509,-2510,-2510,-2511,-2512,-2513,-2514,-2515,-2516,-2517,-2518,
+-2519,-2520,-2521,-2522,-2523,-2524,-2525,-2526,-2527,-2529,-2530,-2531,-2532,-2534,-2535,-2536,-2538,-2539,-2541,-2542,
+-2544,-2545,-2547,-2548,-2550,-2551,-2553,-2554,-2556,-2557,-2559,-2561,-2562,-2564,-2566,-2567,-2569,-2571,-2573,-2575,
+-2577,-2578,-2580,-2582,-2584,-2586,-2588,-2590,-2592,-2594,-2596,-2598,-2600,-2602,-2604,-2606,-2608,-2610,-2612,-2614,
+-2616,-2619,-2621,-2623,-2625,-2627,-2630,-2632,-2634,-2636,-2638,-2641,-2643,-2645,-2647,-2650,-2652,-2654,-2657,-2659,
+-2662,-2664,-2667,-2669,-2671,-2674,-2676,-2679,-2681,-2684,-2686,-2689,-2691,-2694,-2696,-2699,-2702,-2704,-2707,-2709,
+-2712,-2714,-2717,-2720,-2722,-2725,-2727,-2730,-2733,-2735,-2738,-2741,-2744,-2746,-2749,-2752,-2754,-2757,-2760,-2763,
+-2765,-2768,-2771,-2773,-2776,-2779,-2782,-2785,-2787,-2790,-2793,-2796,-2799,-2802,-2805,-2807,-2810,-2813,-2816,-2819,
+-2822,-2825,-2828,-2831,-2834,-2836,-2839,-2842,-2845,-2848,-2851,-2854,-2857,-2860,-2863,-2866,-2869,-2872,-2875,-2878,
+-2881,-2884,-2887,-2890,-2893,-2896,-2899,-2902,-2905,-2908,-2911,-2914,-2917,-2920,-2923,-2926,-2929,-2932,-2935,-2938,
+-2941,-2944,-2947,-2949,-2952,-2955,-2958,-2961,-2964,-2967,-2970,-2973,-2976,-2978,-2981,-2984,-2987,-2990,-2993,-2996,
+-2999,-3002,-3004,-3007,-3010,-3013,-3015,-3018,-3021,-3023,-3026,-3029,-3031,-3034,-3037,-3039,-3042,-3045,-3047,-3050,
+-3052,-3055,-3057,-3060,-3062,-3065,-3067,-3070,-3072,-3074,-3077,-3079,-3081,-3083,-3086,-3088,-3090,-3092,-3094,-3096,
+-3098,-3101,-3103,-3105,-3107,-3109,-3111,-3113,-3114,-3116,-3118,-3120,-3122,-3123,-3125,-3127,-3128,-3130,-3131,-3133,
+-3135,-3136,-3137,-3139,-3140,-3142,-3143,-3144,-3146,-3147,-3148,-3149,-3150,-3152,-3153,-3154,-3155,-3155,-3156,-3157,
+-3158,-3159,-3160,-3160,-3161,-3162,-3162,-3163,-3163,-3164,-3164,-3165,-3165,-3166,-3166,-3166,-3166,-3167,-3167,-3167,
+-3167,-3167,-3167,-3167,-3167,-3167,-3167,-3167,-3167,-3166,-3166,-3166,-3165,-3165,-3165,-3164,-3164,-3163,-3163,-3162,
+-3161,-3161,-3160,-3159,-3158,-3158,-3157,-3156,-3155,-3154,-3153,-3152,-3152,-3151,-3149,-3148,-3147,-3146,-3145,-3144,
+-3143,-3141,-3140,-3139,-3137,-3136,-3135,-3133,-3132,-3130,-3129,-3127,-3126,-3124,-3123,-3121,-3119,-3118,-3116,-3115,
+-3113,-3111,-3110,-3108,-3106,-3105,-3103,-3101,-3099,-3098,-3096,-3094,-3092,-3090,-3089,-3087,-3085,-3083,-3081,-3079,
+-3077,-3076,-3074,-3072,-3070,-3068,-3066,-3064,-3062,-3060,-3058,-3056,-3054,-3052,-3050,-3048,-3046,-3045,-3043,-3041,
+-3039,-3037,-3035,-3033,-3031,-3029,-3027,-3025,-3024,-3022,-3020,-3018,-3016,-3014,-3012,-3010,-3008,-3007,-3005,-3003,
+-3001,-2999,-2997,-2996,-2994,-2992,-2990,-2988,-2986,-2985,-2983,-2981,-2979,-2978,-2976,-2974,-2972,-2971,-2969,-2967,
+-2966,-2964,-2963,-2961,-2959,-2958,-2956,-2955,-2953,-2952,-2950,-2948,-2947,-2945,-2944,-2943,-2941,-2940,-2938,-2937,
+-2936,-2934,-2933,-2932,-2930,-2929,-2928,-2927,-2925,-2924,-2923,-2922,-2921,-2919,-2918,-2917,-2916,-2915,-2914,-2913,
+-2912,-2911,-2910,-2909,-2908,-2907,-2906,-2905,-2904,-2904,-2903,-2902,-2901,-2900,-2899,-2899,-2898,-2897,-2896,-2896,
+-2895,-2894,-2894,-2893,-2893,-2892,-2891,-2891,-2890,-2890,-2889,-2889,-2888,-2888,-2887,-2887,-2886,-2886,-2885,-2885,
+-2885,-2884,-2884,-2883,-2883,-2883,-2882,-2882,-2882,-2881,-2881,-2881,-2881,-2881,-2880,-2880,-2880,-2880,-2879,-2879,
+-2879,-2879,-2878,-2878,-2878,-2877,-2877,-2877,-2877,-2876,-2876,-2876,-2876,-2876,-2876,-2875,-2875,-2875,-2875,-2875,
+-2875,-2874,-2874,-2874,-2874,-2874,-2873,-2873,-2873,-2873,-2873,-2873,-2873,-2872,-2872,-2872,-2872,-2872,-2872,-2872,
+-2872,-2872,-2872,-2872,-2872,-2872,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2870,-2870,-2870,-2870,-2870,-2870,-2870,
+-2870,-2870,-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,
+-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,
+-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2868,-2869,
+-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2869,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,-2870,
+-2870,-2870,-2870,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2872,-2872,-2872,-2872,-2872,-2872,
+-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,-2872,
+-2872,-2872,-2872,-2872,-2872,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2871,-2870,-2870,-2870,-2870,-2870,-2870,-2870,
+-2870,-2870,-2869,-2869,-2869,-2869,-2869,-2869,-2868,-2868,-2868,-2868,-2868,-2867,-2867,-2867,-2867,-2867,-2866,-2866,
+-2866,-2866,-2866,-2865,-2865,-2865,-2865,-2865,-2864,-2864,-2864,-2864,-2863,-2863,-2863,-2862,-2862,-2862,-2861,-2861,
+-2861,-2860,-2860,-2860,-2859,-2859,-2859,-2858,-2858,-2858,-2857,-2857,-2856,-2856,-2856,-2855,-2855,-2854,-2854,-2853,
+-2853,-2852,-2852,-2851,-2851,-2850,-2850,-2849,-2848,-2848,-2847,-2847,-2846,-2845,-2845,-2844,-2843,-2843,-2842,-2841,
+-2841,-2840,-2839,-2838,-2838,-2837,-2836,-2835,-2835,-2834,-2833,-2832,-2831,-2830,-2830,-2829,-2828,-2827,-2826,-2825,
+-2824,-2823,-2822,-2821,-2820,-2819,-2818,-2817,-2816,-2815,-2814,-2813,-2812,-2811,-2810,-2809,-2808,-2807,-2806,-2805,
+-2804,-2803,-2801,-2800,-2799,-2798,-2797,-2796,-2795,-2793,-2792,-2791,-2790,-2789,-2788,-2786,-2785,-2784,-2783,-2782,
+-2780,-2779,-2778,-2777,-2775,-2774,-2773,-2772,-2771,-2770,-2769,-2767,-2766,-2765,-2764,-2763,-2762,-2761,-2760,-2759,
+-2758,-2757,-2756,-2754,-2753,-2752,-2751,-2750,-2749,-2748,-2748,-2747,-2746,-2745,-2744,-2743,-2742,-2741,-2741,-2740,
+-2739,-2738,-2738,-2737,-2736,-2735,-2735,-2734,-2733,-2733,-2732,-2732,-2731,-2731,-2730,-2730,-2729,-2729,-2728,-2728,
+-2728,-2727,-2727,-2727,-2727,-2726,-2726,-2726,-2726,-2726,-2726,-2725,-2725,-2725,-2725,-2725,-2725,-2725,-2725,-2726,
+-2726,-2726,-2726,-2726,-2727,-2727,-2727,-2728,-2728,-2728,-2729,-2729,-2730,-2730,-2731,-2731,-2732,-2733,-2733,-2734,
+-2735,-2735,-2736,-2737,-2738,-2739,-2739,-2740,-2741,-2742,-2743,-2744,-2745,-2746,-2747,-2748,-2750,-2751,-2752,-2753,
+-2754,-2756,-2757,-2758,-2759,-2761,-2762,-2763,-2765,-2766,-2767,-2769,-2770,-2772,-2773,-2775,-2776,-2778,-2779,-2781,
+-2782,-2784,-2785,-2787,-2789,-2790,-2792,-2794,-2795,-2797,-2798,-2800,-2802,-2803,-2805,-2807,-2808,-2810,-2812,-2814,
+-2815,-2817,-2819,-2820,-2822,-2824,-2826,-2827,-2829,-2831,-2833,-2835,-2836,-2838,-2840,-2842,-2844,-2845,-2847,-2849,
+-2851,-2852,-2854,-2856,-2858,-2859,-2861,-2863,-2865,-2866,-2868,-2870,-2872,-2873,-2875,-2877,-2879,-2880,-2882,-2884,
+-2885,-2887,-2889,-2890,-2892,-2894,-2895,-2897,-2898,-2900,-2902,-2903,-2905,-2906,-2908,-2909,-2911,-2912,-2914,-2915,
+-2916,-2918,-2919,-2921,-2922,-2923,-2924,-2926,-2927,-2928,-2929,-2930,-2931,-2932,-2934,-2935,-2936,-2937,-2938,-2939,
+-2940,-2941,-2941,-2942,-2943,-2944,-2945,-2945,-2946,-2947,-2947,-2948,-2949,-2949,-2950,-2950,-2950,-2951,-2951,-2952,
+-2952,-2952,-2952,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2952,-2952,-2952,-2951,
+-2951,-2950,-2950,-2949,-2949,-2948,-2948,-2947,-2946,-2946,-2945,-2944,-2943,-2942,-2941,-2940,-2939,-2938,-2937,-2936,
+-2935,-2934,-2932,-2931,-2930,-2928,-2927,-2926,-2924,-2923,-2921,-2920,-2918,-2917,-2915,-2958,-2957,-2956,-2955,-2954,
+-2953,-2952,-2951,-2950,-2949,-2948,-2946,-2945,-2944,-2943,-2941,-2940,-2939,-2937,-2936,-2934,-2933,-2932,-2930,-2929,
+-2927,-2925,-2924,-2922,-2921,-2919,-2917,-2916,-2914,-2912,-2911,-2909,-2907,-2905,-2904,-2902,-2900,-2898,-2896,-2894,
+-2893,-2891,-2889,-2887,-2885,-2883,-2881,-2879,-2877,-2875,-2873,-2871,-2869,-2866,-2864,-2862,-2860,-2858,-2856,-2854,
+-2852,-2849,-2847,-2845,-2843,-2841,-2839,-2837,-2834,-2832,-2830,-2828,-2826,-2823,-2821,-2819,-2817,-2815,-2812,-2810,
+-2808,-2806,-2804,-2801,-2799,-2797,-2795,-2793,-2790,-2788,-2786,-2784,-2782,-2780,-2777,-2775,-2773,-2771,-2769,-2767,
+-2765,-2763,-2760,-2758,-2756,-2754,-2752,-2750,-2748,-2746,-2744,-2742,-2740,-2738,-2736,-2734,-2732,-2730,-2729,-2727,
+-2725,-2723,-2721,-2719,-2717,-2716,-2714,-2712,-2710,-2709,-2707,-2705,-2704,-2702,-2701,-2699,-2698,-2696,-2695,-2693,
+-2692,-2690,-2689,-2687,-2686,-2685,-2683,-2682,-2681,-2680,-2678,-2677,-2676,-2675,-2673,-2672,-2671,-2670,-2669,-2668,
+-2667,-2666,-2665,-2664,-2663,-2662,-2661,-2660,-2659,-2658,-2658,-2657,-2656,-2655,-2654,-2653,-2653,-2652,-2651,-2651,
+-2650,-2649,-2649,-2648,-2647,-2647,-2646,-2646,-2645,-2645,-2644,-2644,-2644,-2643,-2643,-2642,-2642,-2642,-2642,-2641,
+-2641,-2641,-2641,-2640,-2640,-2640,-2640,-2640,-2640,-2640,-2639,-2639,-2639,-2639,-2639,-2639,-2639,-2639,-2639,-2639,
+-2639,-2640,-2640,-2640,-2640,-2640,-2640,-2640,-2641,-2641,-2641,-2641,-2642,-2642,-2643,-2643,-2643,-2644,-2644,-2645,
+-2645,-2646,-2646,-2647,-2647,-2648,-2648,-2649,-2650,-2650,-2651,-2652,-2652,-2653,-2654,-2654,-2655,-2656,-2657,-2657,
+-2658,-2659,-2660,-2661,-2662,-2663,-2664,-2664,-2665,-2666,-2667,-2668,-2669,-2670,-2671,-2672,-2673,-2675,-2676,-2677,
+-2678,-2679,-2680,-2681,-2683,-2684,-2685,-2686,-2688,-2689,-2690,-2692,-2693,-2694,-2696,-2697,-2698,-2700,-2701,-2702,
+-2704,-2705,-2707,-2708,-2710,-2711,-2712,-2714,-2715,-2717,-2719,-2720,-2722,-2723,-2725,-2726,-2728,-2730,-2731,-2733,
+-2735,-2736,-2738,-2740,-2741,-2743,-2745,-2746,-2748,-2750,-2752,-2753,-2755,-2757,-2759,-2761,-2763,-2764,-2766,-2768,
+-2770,-2772,-2774,-2776,-2778,-2779,-2781,-2783,-2785,-2787,-2789,-2791,-2793,-2795,-2797,-2799,-2801,-2803,-2805,-2807,
+-2809,-2811,-2813,-2815,-2818,-2820,-2822,-2824,-2826,-2828,-2830,-2832,-2835,-2837,-2839,-2841,-2843,-2845,-2847,-2850,
+-2852,-2854,-2856,-2858,-2860,-2863,-2865,-2867,-2869,-2871,-2874,-2876,-2878,-2880,-2883,-2885,-2887,-2889,-2892,-2894,
+-2896,-2898,-2901,-2903,-2905,-2907,-2910,-2912,-2914,-2916,-2919,-2921,-2923,-2925,-2928,-2930,-2932,-2935,-2937,-2939,
+-2941,-2944,-2946,-2948,-2950,-2953,-2955,-2957,-2959,-2961,-2964,-2966,-2968,-2970,-2972,-2974,-2977,-2979,-2981,-2983,
+-2985,-2987,-2990,-2992,-2994,-2996,-2998,-3000,-3002,-3004,-3006,-3008,-3010,-3012,-3014,-3016,-3018,-3020,-3022,-3024,
+-3026,-3028,-3030,-3032,-3034,-3035,-3037,-3039,-3041,-3043,-3044,-3046,-3048,-3050,-3051,-3053,-3055,-3056,-3058,-3059,
+-3061,-3063,-3064,-3066,-3067,-3069,-3070,-3072,-3073,-3075,-3076,-3077,-3079,-3080,-3081,-3083,-3084,-3085,-3087,-3088,
+-3089,-3090,-3091,-3092,-3094,-3095,-3096,-3097,-3098,-3099,-3100,-3101,-3101,-3102,-3103,-3104,-3105,-3106,-3106,-3107,
+-3108,-3108,-3109,-3110,-3110,-3111,-3111,-3112,-3112,-3113,-3113,-3114,-3114,-3115,-3115,-3115,-3116,-3116,-3116,-3116,
+-3117,-3117,-3117,-3117,-3117,-3118,-3118,-3118,-3118,-3118,-3118,-3118,-3118,-3118,-3118,-3118,-3117,-3117,-3117,-3117,
+-3117,-3116,-3116,-3116,-3115,-3115,-3114,-3114,-3113,-3113,-3113,-3112,-3111,-3111,-3110,-3110,-3109,-3109,-3108,-3107,
+-3106,-3106,-3105,-3104,-3103,-3102,-3102,-3101,-3100,-3099,-3098,-3097,-3095,-3094,-3093,-3092,-3091,-3090,-3089,-3088,
+-3087,-3086,-3084,-3083,-3082,-3081,-3080,-3079,-3077,-3076,-3075,-3074,-3073,-3071,-3070,-3069,-3067,-3066,-3065,-3063,
+-3062,-3061,-3059,-3058,-3057,-3055,-3054,-3052,-3051,-3050,-3048,-3047,-3046,-3044,-3043,-3041,-3040,-3039,-3037,-3036,
+-3034,-3033,-3032,-3030,-3029,-3027,-3026,-3024,-3023,-3022,-3020,-3019,-3017,-3016,-3015,-3013,-3012,-3010,-3009,-3008,
+-3006,-3005,-3004,-3002,-3001,-2999,-2998,-2997,-2995,-2994,-2993,-2991,-2990,-2989,-2987,-2986,-2985,-2983,-2982,-2981,
+-2980,-2978,-2977,-2976,-2975,-2974,-2972,-2971,-2970,-2969,-2968,-2967,-2965,-2964,-2963,-2962,-2961,-2960,-2959,-2958,
+-2957,-2956,-2955,-2954,-2953,-2952,-2951,-2950,-2949,-2948,-2947,-2946,-2945,-2944,-2943,-2942,-2941,-2940,-2939,-2939,
+-2938,-2937,-2936,-2935,-2934,-2934,-2933,-2932,-2931,-2931,-2930,-2929,-2929,-2928,-2927,-2927,-2926,-2926,-2925,-2924,
+-2924,-2923,-2923,-2922,-2922,-2921,-2921,-2920,-2920,-2919,-2919,-2918,-2918,-2917,-2917,-2916,-2916,-2916,-2915,-2915,
+-2914,-2914,-2914,-2914,-2913,-2913,-2913,-2912,-2912,-2912,-2912,-2911,-2911,-2911,-2911,-2910,-2910,-2910,-2910,-2910,
+-2909,-2909,-2909,-2909,-2909,-2909,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2907,-2907,-2907,-2907,
+-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,
+-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,-2907,
+-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2908,-2909,-2909,-2909,-2909,-2909,-2909,-2909,-2909,-2909,-2910,
+-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2912,
+-2912,-2912,-2912,-2912,-2912,-2912,-2912,-2912,-2912,-2912,-2913,-2913,-2913,-2913,-2913,-2913,-2913,-2913,-2913,-2914,
+-2914,-2914,-2914,-2914,-2914,-2914,-2915,-2915,-2915,-2915,-2915,-2915,-2915,-2916,-2916,-2916,-2916,-2916,-2916,-2916,
+-2916,-2916,-2916,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2918,-2918,-2918,-2918,-2918,-2918,
+-2918,-2918,-2918,-2918,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,
+-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2918,-2918,-2918,-2918,-2918,
+-2918,-2918,-2918,-2918,-2918,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2916,-2916,-2916,-2916,-2916,-2915,-2915,
+-2915,-2915,-2914,-2914,-2914,-2914,-2913,-2913,-2913,-2912,-2912,-2912,-2912,-2911,-2911,-2911,-2911,-2910,-2910,-2910,
+-2910,-2909,-2909,-2909,-2908,-2908,-2908,-2907,-2907,-2906,-2906,-2906,-2905,-2905,-2904,-2904,-2903,-2903,-2903,-2902,
+-2902,-2901,-2901,-2900,-2900,-2899,-2899,-2898,-2898,-2897,-2896,-2896,-2895,-2895,-2894,-2894,-2893,-2892,-2892,-2891,
+-2890,-2890,-2889,-2888,-2888,-2887,-2886,-2886,-2885,-2884,-2884,-2883,-2882,-2882,-2881,-2880,-2879,-2878,-2878,-2877,
+-2876,-2875,-2874,-2873,-2873,-2872,-2871,-2870,-2869,-2868,-2868,-2867,-2866,-2865,-2864,-2863,-2862,-2862,-2861,-2860,
+-2859,-2858,-2857,-2856,-2855,-2854,-2853,-2853,-2852,-2851,-2850,-2849,-2848,-2847,-2846,-2845,-2844,-2843,-2842,-2841,
+-2840,-2839,-2838,-2837,-2836,-2836,-2835,-2834,-2833,-2832,-2831,-2830,-2829,-2828,-2827,-2826,-2825,-2824,-2824,-2823,
+-2822,-2821,-2820,-2819,-2818,-2818,-2817,-2816,-2815,-2814,-2814,-2813,-2812,-2811,-2811,-2810,-2809,-2808,-2808,-2807,
+-2806,-2805,-2805,-2804,-2803,-2803,-2802,-2801,-2801,-2800,-2800,-2799,-2799,-2798,-2798,-2797,-2797,-2796,-2796,-2796,
+-2795,-2795,-2794,-2794,-2794,-2793,-2793,-2793,-2792,-2792,-2792,-2792,-2792,-2791,-2791,-2791,-2791,-2791,-2791,-2791,
+-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2792,-2792,-2792,-2792,-2792,-2793,-2793,-2793,-2794,
+-2794,-2794,-2795,-2795,-2796,-2796,-2797,-2797,-2798,-2798,-2799,-2799,-2800,-2800,-2801,-2802,-2802,-2803,-2804,-2804,
+-2805,-2806,-2807,-2807,-2808,-2809,-2810,-2811,-2811,-2812,-2813,-2814,-2815,-2816,-2817,-2818,-2819,-2820,-2821,-2822,
+-2823,-2824,-2825,-2826,-2827,-2828,-2830,-2831,-2832,-2833,-2834,-2836,-2837,-2838,-2839,-2841,-2842,-2843,-2844,-2846,
+-2847,-2848,-2849,-2851,-2852,-2853,-2855,-2856,-2857,-2859,-2860,-2861,-2863,-2864,-2865,-2867,-2868,-2870,-2871,-2873,
+-2874,-2875,-2877,-2878,-2880,-2881,-2882,-2884,-2885,-2887,-2888,-2890,-2891,-2892,-2894,-2895,-2897,-2898,-2899,-2901,
+-2902,-2904,-2905,-2906,-2908,-2909,-2911,-2912,-2914,-2915,-2916,-2918,-2919,-2920,-2922,-2923,-2924,-2926,-2927,-2928,
+-2929,-2931,-2932,-2933,-2934,-2935,-2937,-2938,-2939,-2940,-2941,-2943,-2944,-2945,-2946,-2947,-2948,-2949,-2950,-2951,
+-2952,-2953,-2954,-2955,-2956,-2957,-2958,-2959,-2960,-2960,-2961,-2962,-2963,-2964,-2964,-2965,-2966,-2966,-2967,-2968,
+-2968,-2969,-2969,-2970,-2970,-2971,-2971,-2971,-2972,-2972,-2973,-2973,-2973,-2973,-2974,-2974,-2974,-2974,-2974,-2974,
+-2975,-2975,-2975,-2975,-2975,-2974,-2974,-2974,-2974,-2974,-2974,-2973,-2973,-2973,-2972,-2972,-2971,-2971,-2971,-2970,
+-2969,-2969,-2968,-2968,-2967,-2966,-2966,-2965,-2964,-2964,-2963,-2962,-2961,-2960,-2959,-2958,-2977,-2976,-2976,-2976,
+-2975,-2974,-2974,-2973,-2973,-2972,-2971,-2971,-2970,-2969,-2969,-2968,-2967,-2967,-2966,-2965,-2964,-2964,-2963,-2962,
+-2961,-2960,-2959,-2959,-2958,-2957,-2956,-2955,-2954,-2953,-2953,-2952,-2951,-2950,-2949,-2948,-2947,-2946,-2945,-2944,
+-2942,-2941,-2940,-2939,-2938,-2937,-2935,-2934,-2933,-2932,-2931,-2929,-2928,-2927,-2926,-2924,-2923,-2922,-2920,-2919,
+-2918,-2916,-2915,-2914,-2912,-2911,-2910,-2908,-2907,-2906,-2904,-2903,-2901,-2900,-2899,-2897,-2896,-2894,-2893,-2891,
+-2890,-2889,-2887,-2886,-2884,-2883,-2881,-2880,-2878,-2877,-2876,-2874,-2873,-2871,-2870,-2869,-2867,-2866,-2864,-2863,
+-2861,-2860,-2859,-2857,-2856,-2854,-2853,-2851,-2850,-2849,-2847,-2846,-2844,-2843,-2842,-2840,-2839,-2838,-2836,-2835,
+-2834,-2832,-2831,-2830,-2828,-2827,-2826,-2825,-2823,-2822,-2821,-2819,-2818,-2817,-2816,-2814,-2813,-2812,-2811,-2810,
+-2808,-2807,-2806,-2805,-2804,-2803,-2802,-2801,-2800,-2799,-2798,-2797,-2796,-2795,-2794,-2793,-2792,-2791,-2790,-2789,
+-2788,-2787,-2786,-2785,-2785,-2784,-2783,-2782,-2781,-2781,-2780,-2779,-2778,-2778,-2777,-2776,-2776,-2775,-2774,-2774,
+-2773,-2773,-2772,-2771,-2771,-2770,-2770,-2769,-2769,-2769,-2768,-2768,-2767,-2767,-2766,-2766,-2766,-2765,-2765,-2764,
+-2764,-2764,-2763,-2763,-2763,-2762,-2762,-2762,-2761,-2761,-2761,-2761,-2760,-2760,-2760,-2760,-2760,-2760,-2759,-2759,
+-2759,-2759,-2759,-2759,-2759,-2759,-2758,-2758,-2758,-2758,-2758,-2758,-2758,-2758,-2758,-2758,-2758,-2759,-2759,-2759,
+-2759,-2759,-2759,-2759,-2760,-2760,-2760,-2760,-2760,-2761,-2761,-2761,-2761,-2762,-2762,-2762,-2762,-2763,-2763,-2763,
+-2764,-2764,-2764,-2765,-2765,-2766,-2766,-2766,-2767,-2767,-2768,-2768,-2769,-2769,-2770,-2770,-2771,-2771,-2772,-2772,
+-2773,-2774,-2774,-2775,-2775,-2776,-2777,-2777,-2778,-2779,-2780,-2780,-2781,-2782,-2782,-2783,-2784,-2785,-2786,-2786,
+-2787,-2788,-2789,-2790,-2790,-2791,-2792,-2793,-2794,-2795,-2796,-2797,-2798,-2799,-2800,-2801,-2802,-2803,-2804,-2805,
+-2806,-2807,-2808,-2809,-2810,-2812,-2813,-2814,-2815,-2816,-2817,-2818,-2819,-2821,-2822,-2823,-2824,-2825,-2827,-2828,
+-2829,-2830,-2831,-2833,-2834,-2835,-2836,-2838,-2839,-2840,-2842,-2843,-2844,-2846,-2847,-2848,-2850,-2851,-2852,-2854,
+-2855,-2857,-2858,-2859,-2861,-2862,-2864,-2865,-2866,-2868,-2869,-2871,-2872,-2874,-2875,-2877,-2878,-2880,-2881,-2883,
+-2884,-2886,-2887,-2889,-2890,-2892,-2893,-2895,-2896,-2898,-2899,-2901,-2902,-2904,-2905,-2907,-2909,-2910,-2912,-2913,
+-2915,-2916,-2918,-2920,-2921,-2923,-2924,-2926,-2928,-2929,-2931,-2932,-2934,-2936,-2937,-2939,-2940,-2942,-2944,-2945,
+-2947,-2948,-2950,-2951,-2953,-2954,-2956,-2957,-2959,-2961,-2962,-2964,-2965,-2967,-2968,-2970,-2971,-2973,-2974,-2976,
+-2978,-2979,-2981,-2982,-2984,-2985,-2987,-2988,-2989,-2991,-2992,-2994,-2995,-2997,-2998,-2999,-3001,-3002,-3003,-3005,
+-3006,-3008,-3009,-3010,-3012,-3013,-3014,-3016,-3017,-3018,-3019,-3021,-3022,-3023,-3024,-3026,-3027,-3028,-3029,-3030,
+-3032,-3033,-3034,-3035,-3036,-3037,-3038,-3039,-3040,-3041,-3042,-3043,-3044,-3045,-3046,-3047,-3048,-3049,-3050,-3051,
+-3052,-3053,-3054,-3054,-3055,-3056,-3057,-3058,-3058,-3059,-3060,-3061,-3061,-3062,-3063,-3063,-3064,-3064,-3065,-3065,
+-3066,-3066,-3067,-3067,-3068,-3068,-3069,-3069,-3070,-3070,-3070,-3071,-3071,-3071,-3072,-3072,-3072,-3073,-3073,-3073,
+-3074,-3074,-3074,-3074,-3074,-3074,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,-3075,
+-3075,-3075,-3075,-3075,-3075,-3075,-3074,-3074,-3074,-3074,-3074,-3074,-3074,-3074,-3073,-3073,-3073,-3073,-3073,-3073,
+-3072,-3072,-3072,-3072,-3071,-3071,-3071,-3070,-3070,-3070,-3069,-3069,-3068,-3068,-3068,-3067,-3067,-3066,-3066,-3065,
+-3065,-3064,-3063,-3063,-3062,-3062,-3061,-3060,-3060,-3059,-3058,-3058,-3057,-3056,-3056,-3055,-3054,-3053,-3053,-3052,
+-3051,-3050,-3050,-3049,-3048,-3047,-3047,-3046,-3045,-3044,-3043,-3043,-3042,-3041,-3040,-3039,-3038,-3038,-3037,-3036,
+-3035,-3034,-3033,-3032,-3032,-3031,-3030,-3029,-3028,-3027,-3026,-3026,-3025,-3024,-3023,-3022,-3021,-3021,-3020,-3019,
+-3018,-3017,-3016,-3015,-3015,-3014,-3013,-3012,-3011,-3010,-3009,-3009,-3008,-3007,-3006,-3005,-3004,-3004,-3003,-3002,
+-3001,-3000,-2999,-2999,-2998,-2997,-2996,-2995,-2995,-2994,-2993,-2992,-2992,-2991,-2990,-2989,-2989,-2988,-2987,-2986,
+-2986,-2985,-2984,-2983,-2983,-2982,-2981,-2981,-2980,-2979,-2979,-2978,-2977,-2977,-2976,-2975,-2975,-2974,-2974,-2973,
+-2972,-2972,-2971,-2971,-2970,-2970,-2969,-2969,-2968,-2968,-2967,-2966,-2966,-2965,-2965,-2964,-2964,-2964,-2963,-2963,
+-2962,-2962,-2961,-2961,-2960,-2960,-2960,-2959,-2959,-2959,-2958,-2958,-2957,-2957,-2957,-2956,-2956,-2956,-2956,-2955,
+-2955,-2955,-2954,-2954,-2954,-2954,-2954,-2953,-2953,-2953,-2953,-2953,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,
+-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2950,-2950,-2950,-2950,-2950,-2950,
+-2950,-2950,-2950,-2950,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,
+-2951,-2951,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2954,
+-2954,-2954,-2954,-2954,-2955,-2955,-2955,-2955,-2955,-2956,-2956,-2956,-2956,-2956,-2956,-2957,-2957,-2957,-2957,-2957,
+-2957,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2959,-2959,-2959,-2959,-2959,-2959,-2959,-2960,-2960,-2960,-2960,-2960,
+-2960,-2961,-2961,-2961,-2961,-2961,-2961,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2963,-2963,-2963,-2963,-2963,-2963,
+-2963,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2966,-2966,
+-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2967,
+-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,
+-2967,-2967,-2967,-2967,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2965,-2965,-2965,-2965,-2965,-2965,
+-2965,-2965,-2965,-2965,-2965,-2965,-2964,-2964,-2964,-2964,-2964,-2964,-2963,-2963,-2963,-2963,-2963,-2962,-2962,-2962,
+-2962,-2961,-2961,-2961,-2961,-2960,-2960,-2960,-2960,-2959,-2959,-2959,-2959,-2959,-2958,-2958,-2958,-2957,-2957,-2957,
+-2956,-2956,-2956,-2955,-2955,-2955,-2954,-2954,-2954,-2953,-2953,-2952,-2952,-2951,-2951,-2951,-2950,-2950,-2949,-2949,
+-2948,-2948,-2947,-2947,-2946,-2946,-2945,-2945,-2944,-2944,-2943,-2943,-2942,-2942,-2941,-2941,-2940,-2939,-2939,-2938,
+-2938,-2937,-2936,-2936,-2935,-2935,-2934,-2933,-2933,-2932,-2932,-2931,-2930,-2930,-2929,-2928,-2928,-2927,-2926,-2926,
+-2925,-2924,-2924,-2923,-2922,-2921,-2921,-2920,-2919,-2918,-2918,-2917,-2916,-2915,-2915,-2914,-2913,-2913,-2912,-2911,
+-2910,-2910,-2909,-2908,-2907,-2907,-2906,-2905,-2905,-2904,-2903,-2902,-2902,-2901,-2900,-2899,-2899,-2898,-2897,-2896,
+-2895,-2895,-2894,-2893,-2892,-2892,-2891,-2890,-2889,-2889,-2888,-2887,-2886,-2886,-2885,-2884,-2883,-2883,-2882,-2881,
+-2881,-2880,-2879,-2879,-2878,-2877,-2877,-2876,-2875,-2875,-2874,-2873,-2873,-2872,-2871,-2871,-2870,-2870,-2869,-2869,
+-2868,-2867,-2867,-2866,-2866,-2865,-2865,-2864,-2864,-2863,-2863,-2862,-2862,-2862,-2861,-2861,-2860,-2860,-2859,-2859,
+-2859,-2858,-2858,-2858,-2857,-2857,-2857,-2856,-2856,-2856,-2856,-2855,-2855,-2855,-2855,-2854,-2854,-2854,-2854,-2854,
+-2854,-2854,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2853,-2854,
+-2854,-2854,-2854,-2854,-2854,-2855,-2855,-2855,-2855,-2855,-2856,-2856,-2856,-2857,-2857,-2857,-2858,-2858,-2858,-2859,
+-2859,-2859,-2860,-2860,-2861,-2861,-2862,-2862,-2863,-2863,-2864,-2864,-2865,-2865,-2866,-2866,-2867,-2868,-2868,-2869,
+-2869,-2870,-2871,-2871,-2872,-2873,-2874,-2874,-2875,-2876,-2877,-2878,-2878,-2879,-2880,-2881,-2882,-2883,-2883,-2884,
+-2885,-2886,-2887,-2888,-2889,-2889,-2890,-2891,-2892,-2893,-2894,-2895,-2896,-2897,-2898,-2898,-2899,-2900,-2901,-2902,
+-2903,-2904,-2905,-2906,-2907,-2908,-2909,-2910,-2911,-2912,-2913,-2914,-2915,-2916,-2917,-2918,-2919,-2920,-2921,-2922,
+-2923,-2924,-2925,-2926,-2927,-2928,-2929,-2930,-2931,-2932,-2933,-2934,-2935,-2936,-2937,-2938,-2939,-2940,-2941,-2942,
+-2943,-2944,-2945,-2945,-2946,-2947,-2948,-2949,-2950,-2951,-2952,-2953,-2953,-2954,-2955,-2956,-2957,-2958,-2958,-2959,
+-2960,-2961,-2962,-2962,-2963,-2964,-2965,-2965,-2966,-2967,-2967,-2968,-2969,-2969,-2970,-2971,-2971,-2972,-2972,-2973,
+-2974,-2974,-2975,-2975,-2976,-2976,-2976,-2977,-2977,-2978,-2978,-2978,-2979,-2979,-2980,-2980,-2980,-2981,-2981,-2981,
+-2981,-2982,-2982,-2982,-2982,-2982,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2982,-2982,
+-2982,-2982,-2982,-2981,-2981,-2981,-2981,-2980,-2980,-2980,-2979,-2979,-2979,-2978,-2978,-2977,-2977,-2981,-2981,-2981,
+-2981,-2980,-2980,-2980,-2980,-2979,-2979,-2979,-2979,-2978,-2978,-2978,-2977,-2977,-2977,-2976,-2976,-2976,-2975,-2975,
+-2975,-2974,-2974,-2974,-2973,-2973,-2972,-2972,-2971,-2971,-2971,-2970,-2970,-2969,-2969,-2968,-2968,-2967,-2967,-2966,
+-2966,-2965,-2964,-2964,-2963,-2963,-2962,-2962,-2961,-2960,-2960,-2959,-2958,-2958,-2957,-2956,-2956,-2955,-2954,-2954,
+-2953,-2952,-2952,-2951,-2950,-2949,-2949,-2948,-2947,-2946,-2946,-2945,-2944,-2943,-2943,-2942,-2941,-2940,-2939,-2939,
+-2938,-2937,-2936,-2936,-2935,-2934,-2933,-2932,-2932,-2931,-2930,-2929,-2928,-2928,-2927,-2926,-2925,-2924,-2923,-2923,
+-2922,-2921,-2920,-2919,-2918,-2917,-2917,-2916,-2915,-2914,-2913,-2912,-2912,-2911,-2910,-2909,-2908,-2908,-2907,-2906,
+-2905,-2904,-2904,-2903,-2902,-2901,-2900,-2900,-2899,-2898,-2897,-2897,-2896,-2895,-2894,-2894,-2893,-2892,-2891,-2891,
+-2890,-2889,-2888,-2888,-2887,-2886,-2886,-2885,-2884,-2883,-2883,-2882,-2881,-2881,-2880,-2880,-2879,-2878,-2878,-2877,
+-2877,-2876,-2875,-2875,-2874,-2874,-2873,-2873,-2872,-2872,-2871,-2871,-2870,-2870,-2869,-2869,-2868,-2868,-2867,-2867,
+-2867,-2866,-2866,-2865,-2865,-2864,-2864,-2864,-2863,-2863,-2862,-2862,-2862,-2861,-2861,-2861,-2860,-2860,-2860,-2859,
+-2859,-2859,-2858,-2858,-2858,-2857,-2857,-2857,-2856,-2856,-2856,-2856,-2855,-2855,-2855,-2854,-2854,-2854,-2854,-2853,
+-2853,-2853,-2853,-2852,-2852,-2852,-2852,-2852,-2851,-2851,-2851,-2851,-2851,-2851,-2851,-2850,-2850,-2850,-2850,-2850,
+-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,-2850,
+-2850,-2850,-2850,-2850,-2850,-2850,-2851,-2851,-2851,-2851,-2851,-2851,-2852,-2852,-2852,-2852,-2852,-2853,-2853,-2853,
+-2854,-2854,-2854,-2854,-2855,-2855,-2855,-2856,-2856,-2856,-2857,-2857,-2858,-2858,-2858,-2859,-2859,-2859,-2860,-2860,
+-2861,-2861,-2862,-2862,-2862,-2863,-2863,-2864,-2864,-2865,-2865,-2866,-2866,-2867,-2867,-2868,-2869,-2869,-2870,-2870,
+-2871,-2871,-2872,-2873,-2873,-2874,-2875,-2875,-2876,-2877,-2877,-2878,-2879,-2879,-2880,-2881,-2881,-2882,-2883,-2884,
+-2884,-2885,-2886,-2886,-2887,-2888,-2889,-2889,-2890,-2891,-2892,-2892,-2893,-2894,-2895,-2895,-2896,-2897,-2898,-2899,
+-2900,-2900,-2901,-2902,-2903,-2904,-2905,-2906,-2906,-2907,-2908,-2909,-2910,-2911,-2912,-2913,-2914,-2915,-2916,-2917,
+-2918,-2919,-2919,-2920,-2921,-2922,-2923,-2924,-2925,-2926,-2927,-2928,-2929,-2930,-2931,-2932,-2933,-2934,-2935,-2936,
+-2937,-2938,-2939,-2940,-2941,-2942,-2943,-2944,-2945,-2946,-2947,-2948,-2949,-2950,-2951,-2952,-2953,-2954,-2955,-2956,
+-2957,-2958,-2959,-2960,-2961,-2962,-2963,-2964,-2965,-2966,-2967,-2968,-2969,-2970,-2971,-2972,-2972,-2973,-2974,-2975,
+-2976,-2977,-2978,-2979,-2980,-2981,-2982,-2983,-2984,-2985,-2986,-2987,-2988,-2989,-2990,-2991,-2992,-2993,-2994,-2995,
+-2995,-2996,-2997,-2998,-2999,-3000,-3001,-3001,-3002,-3003,-3004,-3005,-3006,-3006,-3007,-3008,-3009,-3009,-3010,-3011,
+-3012,-3012,-3013,-3014,-3015,-3015,-3016,-3017,-3018,-3018,-3019,-3020,-3021,-3021,-3022,-3023,-3023,-3024,-3025,-3025,
+-3026,-3027,-3027,-3028,-3028,-3029,-3029,-3030,-3030,-3031,-3031,-3032,-3032,-3033,-3033,-3034,-3034,-3035,-3035,-3036,
+-3036,-3037,-3037,-3037,-3038,-3038,-3039,-3039,-3039,-3040,-3040,-3041,-3041,-3041,-3042,-3042,-3042,-3043,-3043,-3043,
+-3043,-3044,-3044,-3044,-3044,-3045,-3045,-3045,-3045,-3045,-3046,-3046,-3046,-3046,-3046,-3046,-3046,-3047,-3047,-3047,
+-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,
+-3048,-3048,-3048,-3048,-3048,-3048,-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3046,-3046,-3046,-3046,-3046,
+-3046,-3045,-3045,-3045,-3045,-3045,-3045,-3044,-3044,-3044,-3044,-3044,-3043,-3043,-3043,-3043,-3043,-3042,-3042,-3042,
+-3042,-3041,-3041,-3041,-3041,-3040,-3040,-3040,-3039,-3039,-3039,-3039,-3038,-3038,-3038,-3037,-3037,-3036,-3036,-3036,
+-3035,-3035,-3035,-3034,-3034,-3034,-3033,-3033,-3032,-3032,-3032,-3031,-3031,-3031,-3030,-3030,-3029,-3029,-3029,-3028,
+-3028,-3028,-3027,-3027,-3026,-3026,-3026,-3025,-3025,-3025,-3024,-3024,-3023,-3023,-3023,-3022,-3022,-3021,-3021,-3021,
+-3020,-3020,-3019,-3019,-3019,-3018,-3018,-3017,-3017,-3017,-3016,-3016,-3015,-3015,-3015,-3014,-3014,-3014,-3013,-3013,
+-3013,-3012,-3012,-3011,-3011,-3011,-3010,-3010,-3010,-3009,-3009,-3009,-3008,-3008,-3008,-3007,-3007,-3007,-3006,-3006,
+-3005,-3005,-3005,-3004,-3004,-3004,-3004,-3003,-3003,-3003,-3002,-3002,-3002,-3001,-3001,-3001,-3001,-3000,-3000,-3000,
+-3000,-2999,-2999,-2999,-2999,-2998,-2998,-2998,-2998,-2997,-2997,-2997,-2997,-2997,-2996,-2996,-2996,-2996,-2996,-2995,
+-2995,-2995,-2995,-2995,-2995,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2993,-2993,-2993,
+-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,
+-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2994,-2994,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2997,
+-2997,-2997,-2997,-2997,-2997,-2997,-2998,-2998,-2998,-2998,-2998,-2998,-2999,-2999,-2999,-2999,-2999,-2999,-3000,-3000,
+-3000,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3002,-3002,-3002,-3002,-3002,-3002,-3002,
+-3002,-3002,-3002,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3004,-3004,-3004,-3004,-3004,-3004,-3004,
+-3004,-3004,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,
+-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,
+-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,
+-3004,-3004,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,
+-3002,-3002,-3002,-3002,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3000,-3000,-3000,-3000,-3000,-3000,-2999,-2999,-2999,
+-2999,-2999,-2998,-2998,-2998,-2998,-2997,-2997,-2997,-2997,-2996,-2996,-2996,-2996,-2995,-2995,-2995,-2995,-2994,-2994,
+-2994,-2993,-2993,-2993,-2993,-2992,-2992,-2992,-2991,-2991,-2991,-2990,-2990,-2989,-2989,-2989,-2988,-2988,-2987,-2987,
+-2986,-2986,-2986,-2985,-2985,-2984,-2984,-2983,-2983,-2982,-2982,-2981,-2981,-2980,-2980,-2979,-2979,-2978,-2978,-2977,
+-2977,-2976,-2976,-2975,-2975,-2974,-2974,-2973,-2973,-2972,-2972,-2971,-2971,-2970,-2970,-2969,-2969,-2968,-2968,-2967,
+-2966,-2966,-2965,-2965,-2964,-2964,-2963,-2962,-2962,-2961,-2961,-2960,-2960,-2959,-2959,-2958,-2957,-2957,-2956,-2956,
+-2955,-2955,-2954,-2954,-2953,-2953,-2952,-2952,-2951,-2951,-2950,-2950,-2949,-2948,-2948,-2947,-2947,-2946,-2946,-2945,
+-2945,-2944,-2943,-2943,-2942,-2942,-2941,-2941,-2940,-2940,-2939,-2938,-2938,-2937,-2937,-2936,-2936,-2935,-2935,-2934,
+-2934,-2933,-2933,-2932,-2932,-2931,-2931,-2930,-2930,-2929,-2929,-2928,-2928,-2927,-2927,-2926,-2926,-2926,-2925,-2925,
+-2924,-2924,-2923,-2923,-2923,-2922,-2922,-2921,-2921,-2921,-2920,-2920,-2920,-2919,-2919,-2918,-2918,-2918,-2917,-2917,
+-2917,-2917,-2916,-2916,-2916,-2915,-2915,-2915,-2915,-2914,-2914,-2914,-2914,-2913,-2913,-2913,-2913,-2913,-2912,-2912,
+-2912,-2912,-2912,-2912,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,
+-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2910,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2911,-2912,-2912,
+-2912,-2912,-2912,-2912,-2913,-2913,-2913,-2913,-2913,-2914,-2914,-2914,-2914,-2914,-2915,-2915,-2915,-2916,-2916,-2916,
+-2916,-2917,-2917,-2917,-2918,-2918,-2919,-2919,-2919,-2920,-2920,-2921,-2921,-2921,-2922,-2922,-2923,-2923,-2924,-2924,
+-2924,-2925,-2925,-2926,-2926,-2927,-2927,-2928,-2928,-2929,-2929,-2930,-2930,-2931,-2931,-2932,-2932,-2933,-2933,-2934,
+-2934,-2935,-2935,-2936,-2936,-2937,-2938,-2938,-2939,-2939,-2940,-2940,-2941,-2942,-2942,-2943,-2943,-2944,-2944,-2945,
+-2946,-2946,-2947,-2947,-2948,-2948,-2949,-2950,-2950,-2951,-2951,-2952,-2952,-2953,-2954,-2954,-2955,-2955,-2956,-2956,
+-2957,-2957,-2958,-2958,-2959,-2960,-2960,-2961,-2961,-2962,-2962,-2963,-2963,-2964,-2964,-2965,-2965,-2966,-2966,-2967,
+-2967,-2968,-2968,-2969,-2969,-2970,-2970,-2971,-2971,-2972,-2972,-2972,-2973,-2973,-2974,-2974,-2974,-2975,-2975,-2976,
+-2976,-2976,-2977,-2977,-2977,-2978,-2978,-2978,-2979,-2979,-2979,-2980,-2980,-2980,-2980,-2981,-2981,-2981,-2981,-2981,
+-2982,-2982,-2982,-2982,-2982,-2982,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2982,-2982,-2982,-2982,-2982,-2982,-2981,-2981,-2981,-2981,
+-2981,-2981,-2981,-2981,-2981,-2981,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2979,-2979,-2979,-2979,-2979,-2979,
+-2978,-2978,-2978,-2978,-2978,-2978,-2977,-2977,-2977,-2977,-2977,-2977,-2976,-2976,-2976,-2976,-2976,-2975,-2975,-2975,
+-2975,-2975,-2974,-2974,-2974,-2974,-2973,-2973,-2973,-2973,-2972,-2972,-2972,-2972,-2971,-2971,-2971,-2971,-2970,-2970,
+-2970,-2969,-2969,-2969,-2969,-2968,-2968,-2968,-2967,-2967,-2967,-2966,-2966,-2965,-2965,-2965,-2964,-2964,-2964,-2963,
+-2963,-2963,-2962,-2962,-2961,-2961,-2961,-2960,-2960,-2960,-2959,-2959,-2958,-2958,-2958,-2957,-2957,-2956,-2956,-2956,
+-2955,-2955,-2954,-2954,-2954,-2953,-2953,-2953,-2952,-2952,-2951,-2951,-2951,-2950,-2950,-2949,-2949,-2949,-2948,-2948,
+-2947,-2947,-2947,-2946,-2946,-2946,-2945,-2945,-2944,-2944,-2944,-2943,-2943,-2943,-2942,-2942,-2941,-2941,-2941,-2940,
+-2940,-2940,-2939,-2939,-2939,-2938,-2938,-2938,-2937,-2937,-2937,-2936,-2936,-2936,-2935,-2935,-2935,-2934,-2934,-2934,
+-2934,-2933,-2933,-2933,-2932,-2932,-2932,-2931,-2931,-2931,-2931,-2930,-2930,-2930,-2929,-2929,-2929,-2929,-2928,-2928,
+-2928,-2927,-2927,-2927,-2927,-2926,-2926,-2926,-2926,-2926,-2925,-2925,-2925,-2925,-2924,-2924,-2924,-2924,-2924,-2924,
+-2923,-2923,-2923,-2923,-2923,-2923,-2922,-2922,-2922,-2922,-2922,-2922,-2921,-2921,-2921,-2921,-2921,-2921,-2921,-2921,
+-2920,-2920,-2920,-2920,-2920,-2920,-2920,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2918,-2918,-2918,-2918,-2918,
+-2918,-2918,-2918,-2918,-2918,-2918,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,
+-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2917,-2918,-2918,-2918,-2918,
+-2918,-2918,-2918,-2918,-2918,-2918,-2919,-2919,-2919,-2919,-2919,-2919,-2919,-2920,-2920,-2920,-2920,-2920,-2920,-2921,
+-2921,-2921,-2921,-2921,-2922,-2922,-2922,-2922,-2922,-2923,-2923,-2923,-2923,-2923,-2924,-2924,-2924,-2924,-2925,-2925,
+-2925,-2925,-2926,-2926,-2926,-2926,-2927,-2927,-2927,-2928,-2928,-2928,-2929,-2929,-2929,-2930,-2930,-2930,-2931,-2931,
+-2931,-2932,-2932,-2932,-2933,-2933,-2933,-2934,-2934,-2935,-2935,-2935,-2936,-2936,-2937,-2937,-2938,-2938,-2938,-2939,
+-2939,-2940,-2940,-2941,-2941,-2941,-2942,-2942,-2943,-2943,-2944,-2944,-2945,-2945,-2945,-2946,-2946,-2947,-2947,-2948,
+-2948,-2949,-2949,-2950,-2950,-2951,-2951,-2952,-2952,-2953,-2953,-2954,-2954,-2955,-2955,-2956,-2956,-2957,-2957,-2958,
+-2958,-2959,-2959,-2960,-2960,-2961,-2962,-2962,-2963,-2963,-2964,-2964,-2965,-2965,-2966,-2966,-2967,-2968,-2968,-2969,
+-2969,-2970,-2970,-2971,-2972,-2972,-2973,-2973,-2974,-2974,-2975,-2975,-2976,-2977,-2977,-2978,-2978,-2979,-2979,-2980,
+-2980,-2981,-2982,-2982,-2983,-2983,-2984,-2984,-2985,-2985,-2986,-2987,-2987,-2988,-2988,-2989,-2989,-2990,-2990,-2991,
+-2992,-2992,-2993,-2993,-2994,-2994,-2995,-2995,-2996,-2996,-2997,-2997,-2998,-2998,-2999,-2999,-3000,-3000,-3001,-3001,
+-3002,-3002,-3003,-3003,-3004,-3004,-3004,-3005,-3005,-3006,-3006,-3007,-3007,-3008,-3008,-3009,-3009,-3010,-3010,-3010,
+-3011,-3011,-3012,-3012,-3013,-3013,-3013,-3014,-3014,-3015,-3015,-3015,-3016,-3016,-3017,-3017,-3017,-3018,-3018,-3018,
+-3019,-3019,-3020,-3020,-3020,-3021,-3021,-3021,-3022,-3022,-3022,-3022,-3023,-3023,-3023,-3024,-3024,-3024,-3025,-3025,
+-3025,-3025,-3026,-3026,-3026,-3027,-3027,-3027,-3027,-3028,-3028,-3028,-3028,-3029,-3029,-3029,-3029,-3029,-3030,-3030,
+-3030,-3030,-3031,-3031,-3031,-3031,-3031,-3032,-3032,-3032,-3032,-3032,-3032,-3033,-3033,-3033,-3033,-3033,-3033,-3033,
+-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,
+-3035,-3035,-3035,-3035,-3035,-3035,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,
+-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,
+-3036,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,
+-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3031,-3031,-3031,-3031,-3031,
+-3031,-3031,-3031,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3026,-3026,-3026,
+-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3024,-3024,
+-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3023,-3023,-3023,-3023,-3023,
+-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,
+-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,
+-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,
+-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,
+-3026,-3026,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,
+-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,
+-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,
+-3030,-3030,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,
+-3027,-3027,-3027,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,
+-3025,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3022,-3022,-3022,-3022,-3022,
+-3022,-3021,-3021,-3021,-3021,-3021,-3020,-3020,-3020,-3020,-3020,-3019,-3019,-3019,-3019,-3018,-3018,-3018,-3018,-3017,
+-3017,-3017,-3017,-3016,-3016,-3016,-3015,-3015,-3015,-3015,-3014,-3014,-3014,-3013,-3013,-3013,-3013,-3012,-3012,-3012,
+-3011,-3011,-3011,-3010,-3010,-3010,-3009,-3009,-3009,-3008,-3008,-3008,-3007,-3007,-3007,-3006,-3006,-3006,-3005,-3005,
+-3005,-3004,-3004,-3004,-3003,-3003,-3002,-3002,-3002,-3001,-3001,-3000,-3000,-3000,-2999,-2999,-2998,-2998,-2998,-2997,
+-2997,-2996,-2996,-2995,-2995,-2995,-2994,-2994,-2993,-2993,-2993,-2992,-2992,-2991,-2991,-2991,-2990,-2990,-2989,-2989,
+-2989,-2988,-2988,-2988,-2987,-2987,-2986,-2986,-2986,-2985,-2985,-2985,-2984,-2984,-2984,-2983,-2983,-2983,-2982,-2982,
+-2981,-2981,-2981,-2980,-2980,-2980,-2979,-2979,-2979,-2978,-2978,-2978,-2977,-2977,-2977,-2976,-2976,-2975,-2975,-2975,
+-2974,-2974,-2974,-2973,-2973,-2973,-2972,-2972,-2972,-2971,-2971,-2971,-2971,-2970,-2970,-2970,-2969,-2969,-2969,-2969,
+-2968,-2968,-2968,-2967,-2967,-2967,-2967,-2966,-2966,-2966,-2966,-2965,-2965,-2965,-2965,-2964,-2964,-2964,-2964,-2963,
+-2963,-2963,-2963,-2963,-2962,-2962,-2962,-2962,-2961,-2961,-2961,-2961,-2961,-2960,-2960,-2960,-2960,-2960,-2960,-2959,
+-2959,-2959,-2959,-2959,-2959,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2957,-2957,-2957,-2957,-2957,-2957,
+-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,
+-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,-2957,
+-2957,-2957,-2957,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2959,-2959,-2959,-2959,-2959,-2959,-2960,-2960,
+-2960,-2960,-2960,-2960,-2961,-2961,-2961,-2961,-2961,-2961,-2962,-2962,-2962,-2962,-2962,-2963,-2963,-2963,-2963,-2963,
+-2964,-2964,-2964,-2964,-2965,-2965,-2965,-2965,-2965,-2966,-2966,-2966,-2966,-2966,-2967,-2967,-2967,-2967,-2968,-2968,
+-2968,-2968,-2969,-2969,-2969,-2969,-2970,-2970,-2970,-2970,-2970,-2971,-2971,-2971,-2971,-2972,-2972,-2972,-2972,-2973,
+-2973,-2973,-2973,-2973,-2974,-2974,-2974,-2974,-2974,-2975,-2975,-2975,-2975,-2975,-2976,-2976,-2976,-2976,-2976,-2977,
+-2977,-2977,-2977,-2977,-2977,-2978,-2978,-2978,-2978,-2978,-2979,-2979,-2979,-2979,-2979,-2979,-2980,-2980,-2980,-2980,
+-2980,-2980,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2981,-2981,-2981,-2984,
+-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,
+-2982,-2982,-2982,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2980,
+-2979,-2979,-2979,-2979,-2979,-2979,-2979,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2977,-2977,-2977,-2977,-2977,-2977,
+-2977,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2975,-2975,-2975,-2975,-2975,-2975,-2975,-2975,-2974,-2974,-2974,-2974,
+-2974,-2974,-2974,-2974,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2972,-2972,-2972,-2972,-2972,-2972,-2972,
+-2972,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2969,-2969,
+-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2967,-2967,-2967,
+-2967,-2967,-2967,-2967,-2967,-2967,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2965,-2965,-2965,
+-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,
+-2964,-2964,-2964,-2964,-2964,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,
+-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2962,-2962,-2962,-2962,-2962,-2962,
+-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,
+-2962,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2964,
+-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2966,-2966,-2966,
+-2966,-2966,-2966,-2966,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2968,-2968,-2968,-2968,-2968,-2968,-2969,-2969,-2969,
+-2969,-2969,-2969,-2970,-2970,-2970,-2970,-2970,-2970,-2971,-2971,-2971,-2971,-2971,-2972,-2972,-2972,-2972,-2972,-2973,
+-2973,-2973,-2973,-2973,-2974,-2974,-2974,-2974,-2974,-2975,-2975,-2975,-2975,-2975,-2976,-2976,-2976,-2976,-2976,-2977,
+-2977,-2977,-2977,-2978,-2978,-2978,-2978,-2979,-2979,-2979,-2979,-2979,-2980,-2980,-2980,-2980,-2981,-2981,-2981,-2981,
+-2982,-2982,-2982,-2982,-2983,-2983,-2983,-2983,-2984,-2984,-2984,-2984,-2985,-2985,-2985,-2985,-2986,-2986,-2986,-2986,
+-2987,-2987,-2987,-2987,-2988,-2988,-2988,-2988,-2989,-2989,-2989,-2990,-2990,-2990,-2990,-2991,-2991,-2991,-2991,-2992,
+-2992,-2992,-2993,-2993,-2993,-2993,-2994,-2994,-2994,-2995,-2995,-2995,-2995,-2996,-2996,-2996,-2997,-2997,-2997,-2998,
+-2998,-2998,-2998,-2999,-2999,-2999,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3002,-3002,-3002,-3003,-3003,-3003,
+-3003,-3004,-3004,-3004,-3004,-3005,-3005,-3005,-3005,-3006,-3006,-3006,-3006,-3007,-3007,-3007,-3007,-3008,-3008,-3008,
+-3008,-3009,-3009,-3009,-3009,-3009,-3010,-3010,-3010,-3010,-3011,-3011,-3011,-3011,-3012,-3012,-3012,-3012,-3013,-3013,
+-3013,-3013,-3014,-3014,-3014,-3014,-3014,-3015,-3015,-3015,-3015,-3016,-3016,-3016,-3016,-3017,-3017,-3017,-3017,-3017,
+-3018,-3018,-3018,-3018,-3019,-3019,-3019,-3019,-3019,-3020,-3020,-3020,-3020,-3020,-3021,-3021,-3021,-3021,-3021,-3022,
+-3022,-3022,-3022,-3022,-3023,-3023,-3023,-3023,-3023,-3023,-3024,-3024,-3024,-3024,-3024,-3024,-3025,-3025,-3025,-3025,
+-3025,-3025,-3025,-3026,-3026,-3026,-3026,-3026,-3026,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3031,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,
+-3032,-3032,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,
+-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,
+-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3032,
+-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,
+-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3031,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,
+-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3033,-3033,-3033,-3033,-3033,
+-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3035,
+-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,
+-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3037,-3037,-3037,-3037,-3037,-3037,-3037,
+-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,
+-3037,-3037,-3037,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,
+-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,
+-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,-3037,
+-3037,-3037,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3036,-3035,-3035,-3035,-3035,-3035,
+-3035,-3035,-3035,-3035,-3035,-3035,-3035,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3034,-3033,
+-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3033,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3032,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3029,-3029,-3029,-3029,-3029,
+-3029,-3029,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3027,-3027,-3027,-3027,-3027,-3027,-3026,-3026,-3026,-3026,-3026,
+-3026,-3025,-3025,-3025,-3025,-3025,-3025,-3024,-3024,-3024,-3024,-3024,-3024,-3023,-3023,-3023,-3023,-3023,-3022,-3022,
+-3022,-3022,-3022,-3022,-3021,-3021,-3021,-3021,-3021,-3020,-3020,-3020,-3020,-3020,-3020,-3019,-3019,-3019,-3019,-3019,
+-3018,-3018,-3018,-3018,-3018,-3017,-3017,-3017,-3017,-3017,-3016,-3016,-3016,-3016,-3016,-3015,-3015,-3015,-3015,-3014,
+-3014,-3014,-3014,-3014,-3013,-3013,-3013,-3013,-3013,-3012,-3012,-3012,-3012,-3011,-3011,-3011,-3011,-3011,-3010,-3010,
+-3010,-3010,-3010,-3009,-3009,-3009,-3009,-3008,-3008,-3008,-3008,-3008,-3007,-3007,-3007,-3007,-3007,-3006,-3006,-3006,
+-3006,-3006,-3005,-3005,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3004,-3004,-3003,-3003,-3003,-3003,-3003,-3003,-3002,
+-3002,-3002,-3002,-3002,-3002,-3001,-3001,-3001,-3001,-3001,-3000,-3000,-3000,-3000,-3000,-3000,-2999,-2999,-2999,-2999,
+-2999,-2999,-2998,-2998,-2998,-2998,-2998,-2998,-2997,-2997,-2997,-2997,-2997,-2997,-2996,-2996,-2996,-2996,-2996,-2996,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2993,-2993,-2993,-2993,-2993,-2993,
+-2993,-2992,-2992,-2992,-2992,-2992,-2992,-2992,-2992,-2992,-2991,-2991,-2991,-2991,-2991,-2991,-2991,-2991,-2991,-2990,
+-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2989,-2989,-2989,-2989,-2989,-2989,-2989,-2989,-2989,-2989,
+-2989,-2989,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2987,-2987,-2987,
+-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,
+-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,
+-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2988,-2988,-2988,
+-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,
+-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,
+-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,
+-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,
+-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,
+-2987,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2984,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,
+-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2997,-2997,-2997,-2997,-2997,-2997,
+-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,
+-2998,-2998,-2998,-2998,-2998,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-3000,
+-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,
+-3001,-3001,-3001,-3001,-3001,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3003,-3003,-3003,
+-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,
+-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,
+-3006,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3009,
+-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3011,-3011,-3011,-3011,
+-3011,-3011,-3011,-3011,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3013,-3013,-3013,-3013,-3013,-3013,-3013,
+-3013,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3016,-3016,
+-3016,-3016,-3016,-3016,-3016,-3016,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3018,-3018,-3018,-3018,-3018,
+-3018,-3018,-3018,-3018,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3020,-3020,-3020,-3020,-3020,-3020,
+-3020,-3020,-3020,-3020,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3022,-3022,-3022,-3022,-3022,-3022,
+-3022,-3022,-3022,-3022,-3022,-3022,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3024,-3024,
+-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,
+-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,
+-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,
+-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,
+-3027,-3027,-3027,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3029,-3029,-3029,-3029,-3029,-3029,
+-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,
+-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,
+-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,
+-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,
+-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3031,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,
+-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3030,-3029,-3029,-3029,-3029,-3029,-3029,
+-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3029,-3028,-3028,-3028,-3028,-3028,-3028,-3028,
+-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3028,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,-3027,
+-3027,-3027,-3027,-3027,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3026,-3025,-3025,
+-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3025,-3024,-3024,-3024,-3024,-3024,-3024,-3024,-3024,
+-3024,-3024,-3024,-3024,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3023,-3022,-3022,-3022,-3022,
+-3022,-3022,-3022,-3022,-3022,-3022,-3022,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3021,-3020,-3020,
+-3020,-3020,-3020,-3020,-3020,-3020,-3020,-3020,-3020,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3019,-3018,
+-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3017,
+-3017,-3016,-3016,-3016,-3016,-3016,-3016,-3016,-3016,-3016,-3016,-3016,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3014,-3013,-3013,-3013,-3013,-3013,-3013,
+-3013,-3013,-3013,-3013,-3013,-3013,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3011,-3011,
+-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,
+-3010,-3010,-3010,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3008,-3008,-3008,-3008,-3008,
+-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,
+-3007,-3007,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3005,-3005,
+-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3004,
+-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3003,
+-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,
+-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,
+-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3002,-3001,
+-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3000,-3000,
+-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-2999,-2999,-2999,-2999,-2999,-2999,
+-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,
+-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2997,-2996,-2996,-2996,-2996,-2996,-2996,-2996,
+-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,
+-2995,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,-3015,
+-3015,-3015
+};
+
+}
+
+#endif // OSGEARTH_VDATUM_EGM2008_GRID_H
diff --git a/src/osgEarthDrivers/vdatum_egm84/CMakeLists.txt b/src/osgEarthDrivers/vdatum_egm84/CMakeLists.txt
new file mode 100644
index 0000000..081479d
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm84/CMakeLists.txt
@@ -0,0 +1,9 @@
+SET(TARGET_SRC EGM84.cpp)
+SET(TARGET_H EGM84Grid.h)
+SETUP_PLUGIN(osgearth_vdatum_egm84)
+
+
+# to install public driver includes:
+SET(LIB_NAME vdatum_egm84)
+#SET(LIB_PUBLIC_HEADERS EGM84Grid.h)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/vdatum_egm84/EGM84.cpp b/src/osgEarthDrivers/vdatum_egm84/EGM84.cpp
new file mode 100644
index 0000000..5b6aafe
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm84/EGM84.cpp
@@ -0,0 +1,101 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/Geoid>
+#include <osgEarth/Units>
+#include <osgDB/ReaderWriter>
+#include <osgDB/Registry>
+#include <osgDB/FileNameUtils>
+#include "EGM84Grid.h"
+
+using namespace osgEarth;
+
+//--------------------------------------------------------------------------
+
+namespace
+{
+    class EGM84VerticalDatum : public VerticalDatum
+    {
+    public:
+        EGM84VerticalDatum() : VerticalDatum(
+            "EGM84",                                  // readable name
+            "egm84" )                                 // initialization string
+        {
+            // build a heightfield from the data.
+
+            unsigned cols = 721, rows = 361;
+            float colStep = 0.5f, rowStep = 0.5f;
+
+            osg::HeightField* hf = new osg::HeightField();
+            hf->allocate( cols, rows );
+            osg::Vec3 origin(-180.f, -90.f, 0.f);
+            hf->setOrigin( origin );
+            hf->setXInterval( colStep );
+            hf->setYInterval( rowStep );
+
+            for( unsigned c=0; c<cols-1; ++c )
+            {
+                float inputLon = 0.0f + float(c) * colStep;
+                if ( inputLon > 180.0 ) inputLon -= 360.0;
+
+                for( unsigned r=0; r<rows; ++r )
+                {
+                    float inputLat = 90.0f - float(r) * rowStep;
+
+                    unsigned outc = unsigned( (inputLon-origin.x())/colStep );
+                    unsigned outr = unsigned( (inputLat-origin.y())/rowStep );
+
+                    Linear h( (double)s_egm84grid[r*cols+c], Units::CENTIMETERS );
+                    hf->setHeight( outc, outr, float(h.as(Units::METERS)) );
+                }
+            }
+
+            _geoid = new Geoid();
+            _geoid->setHeightField( hf );
+            _geoid->setUnits( Units::METERS );
+            _geoid->setName( "EGM84" );
+        }
+    };
+}
+
+
+class EGM84VerticalDatumFactory : public osgDB::ReaderWriter
+{
+public:
+    EGM84VerticalDatumFactory()
+    {
+        supportsExtension( "osgearth_vdatum_egm84", "osgEarth EGM84 vertical datum" );
+    }
+
+    virtual const char* className()
+    {
+        return "osgEarth EGM84 vertical datum";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return ReadResult( new EGM84VerticalDatum() );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_vdatum_egm84, EGM84VerticalDatumFactory) 
diff --git a/src/osgEarthDrivers/vdatum_egm84/EGM84Grid.h b/src/osgEarthDrivers/vdatum_egm84/EGM84Grid.h
new file mode 100644
index 0000000..8856b6e
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm84/EGM84Grid.h
@@ -0,0 +1,13052 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_VDATUM_EGM84_GRID_H
+#define OSGEARTH_VDATUM_EGM84_GRID_H
+
+  // 721x361 array (260281 elements)
+  // 721 longitude points, 0.5 deg spacing (0-360)
+  // 361 latitude points, 0.5 deg spacing (0-180)
+  // points start at 90 (0 northpole), then go around easterly starting at 0,
+  // ending at south pole (180)
+  // unit = cm.
+
+namespace
+{
+
+static short s_egm84grid[] = {
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,1309,
+1309,1309,1443,1443,1442,1441,1441,1440,1439,1439,1438,1437,1437,1436,1435,1434,1434,1433,1432,1432,
+1431,1430,1429,1428,1428,1427,1426,1425,1424,1424,1423,1422,1421,1420,1419,1418,1418,1417,1416,1415,
+1414,1413,1412,1411,1410,1409,1408,1408,1407,1406,1405,1404,1403,1402,1401,1400,1399,1398,1397,1396,
+1395,1394,1393,1392,1391,1390,1389,1388,1387,1386,1384,1383,1382,1381,1380,1379,1378,1377,1376,1375,
+1374,1373,1372,1370,1369,1368,1367,1366,1365,1364,1363,1362,1360,1359,1358,1357,1356,1355,1354,1353,
+1351,1350,1349,1348,1347,1346,1345,1343,1342,1341,1340,1339,1338,1337,1335,1334,1333,1332,1331,1330,
+1328,1327,1326,1325,1324,1323,1322,1320,1319,1318,1317,1316,1315,1313,1312,1311,1310,1309,1308,1307,
+1305,1304,1303,1302,1301,1300,1299,1297,1296,1295,1294,1293,1292,1291,1290,1288,1287,1286,1285,1284,
+1283,1282,1281,1280,1278,1277,1276,1275,1274,1273,1272,1271,1270,1269,1268,1266,1265,1264,1263,1262,
+1261,1260,1259,1258,1257,1256,1255,1254,1253,1252,1251,1249,1248,1247,1246,1245,1244,1243,1242,1241,
+1240,1239,1238,1237,1236,1235,1234,1233,1232,1231,1230,1229,1228,1227,1227,1226,1225,1224,1223,1222,
+1221,1220,1219,1218,1217,1216,1215,1214,1214,1213,1212,1211,1210,1209,1208,1207,1206,1206,1205,1204,
+1203,1202,1201,1201,1200,1199,1198,1197,1196,1196,1195,1194,1193,1193,1192,1191,1190,1189,1189,1188,
+1187,1187,1186,1185,1184,1184,1183,1182,1182,1181,1180,1180,1179,1178,1178,1177,1176,1176,1175,1175,
+1174,1173,1173,1172,1172,1171,1171,1170,1170,1169,1169,1168,1168,1167,1167,1166,1166,1165,1165,1164,
+1164,1164,1163,1163,1162,1162,1162,1161,1161,1161,1160,1160,1160,1159,1159,1159,1159,1158,1158,1158,
+1158,1157,1157,1157,1157,1157,1157,1157,1156,1156,1156,1156,1156,1156,1156,1156,1156,1156,1156,1156,
+1156,1156,1156,1156,1156,1156,1156,1157,1157,1157,1157,1157,1157,1158,1158,1158,1158,1158,1159,1159,
+1159,1160,1160,1160,1161,1161,1161,1162,1162,1163,1163,1163,1164,1164,1165,1165,1166,1167,1167,1168,
+1168,1169,1169,1170,1171,1171,1172,1173,1173,1174,1175,1176,1176,1177,1178,1179,1180,1180,1181,1182,
+1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,
+1204,1205,1206,1207,1208,1210,1211,1212,1213,1215,1216,1217,1218,1220,1221,1223,1224,1225,1227,1228,
+1229,1231,1232,1234,1235,1237,1238,1240,1241,1243,1244,1246,1247,1249,1250,1252,1253,1255,1256,1258,
+1260,1261,1263,1264,1266,1268,1269,1271,1273,1274,1276,1278,1279,1281,1283,1284,1286,1288,1289,1291,
+1293,1294,1296,1298,1299,1301,1303,1305,1306,1308,1310,1311,1313,1315,1316,1318,1320,1322,1323,1325,
+1327,1328,1330,1332,1333,1335,1337,1338,1340,1342,1343,1345,1347,1348,1350,1352,1353,1355,1356,1358,
+1360,1361,1363,1364,1366,1367,1369,1371,1372,1374,1375,1377,1378,1380,1381,1382,1384,1385,1387,1388,
+1390,1391,1392,1394,1395,1397,1398,1399,1401,1402,1403,1404,1406,1407,1408,1409,1411,1412,1413,1414,
+1415,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,
+1436,1437,1438,1439,1439,1440,1441,1442,1443,1443,1444,1445,1446,1446,1447,1448,1448,1449,1450,1450,
+1451,1452,1452,1453,1453,1454,1455,1455,1456,1456,1457,1457,1458,1458,1458,1459,1459,1460,1460,1460,
+1461,1461,1461,1462,1462,1462,1463,1463,1463,1463,1464,1464,1464,1464,1465,1465,1465,1465,1465,1465,
+1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,1466,
+1466,1466,1466,1466,1466,1465,1465,1465,1465,1465,1465,1464,1464,1464,1464,1464,1463,1463,1463,1463,
+1462,1462,1462,1462,1461,1461,1461,1460,1460,1460,1459,1459,1458,1458,1458,1457,1457,1456,1456,1456,
+1455,1455,1454,1454,1453,1453,1452,1452,1451,1451,1450,1450,1449,1449,1448,1448,1447,1446,1446,1445,
+1445,1444,1443,1577,1576,1575,1574,1573,1572,1570,1569,1568,1567,1565,1564,1563,1562,1560,1559,1557,
+1556,1555,1553,1552,1550,1549,1547,1545,1544,1542,1541,1539,1537,1536,1534,1532,1531,1529,1527,1525,
+1524,1522,1520,1518,1516,1514,1513,1511,1509,1507,1505,1503,1501,1499,1497,1495,1493,1491,1489,1487,
+1485,1483,1480,1478,1476,1474,1472,1470,1468,1465,1463,1461,1459,1457,1455,1452,1450,1448,1446,1443,
+1441,1439,1437,1434,1432,1430,1428,1425,1423,1421,1419,1416,1414,1412,1409,1407,1405,1402,1400,1398,
+1396,1393,1391,1389,1386,1384,1382,1379,1377,1375,1373,1370,1368,1366,1363,1361,1359,1356,1354,1352,
+1350,1347,1345,1343,1341,1338,1336,1334,1332,1329,1327,1325,1323,1320,1318,1316,1314,1311,1309,1307,
+1305,1303,1301,1298,1296,1294,1292,1290,1288,1285,1283,1281,1279,1277,1275,1273,1271,1269,1267,1264,
+1262,1260,1258,1256,1254,1252,1250,1248,1246,1244,1242,1240,1238,1236,1234,1232,1230,1229,1227,1225,
+1223,1221,1219,1217,1215,1213,1212,1210,1208,1206,1204,1202,1201,1199,1197,1195,1193,1192,1190,1188,
+1186,1185,1183,1181,1179,1178,1176,1174,1172,1171,1169,1167,1166,1164,1162,1161,1159,1157,1156,1154,
+1152,1151,1149,1148,1146,1144,1143,1141,1140,1138,1136,1135,1133,1132,1130,1129,1127,1126,1124,1123,
+1121,1120,1118,1117,1115,1114,1112,1111,1109,1108,1106,1105,1103,1102,1101,1099,1098,1096,1095,1094,
+1092,1091,1090,1088,1087,1086,1084,1083,1082,1080,1079,1078,1077,1075,1074,1073,1072,1071,1069,1068,
+1067,1066,1065,1064,1063,1062,1061,1060,1059,1058,1057,1056,1055,1054,1053,1052,1051,1050,1049,1048,
+1048,1047,1046,1045,1044,1044,1043,1042,1042,1041,1040,1040,1039,1039,1038,1037,1037,1036,1036,1035,
+1035,1035,1034,1034,1033,1033,1033,1033,1032,1032,1032,1032,1031,1031,1031,1031,1031,1031,1031,1031,
+1031,1031,1031,1031,1031,1031,1031,1031,1031,1031,1032,1032,1032,1032,1033,1033,1033,1034,1034,1034,
+1035,1035,1036,1036,1037,1037,1038,1038,1039,1039,1040,1041,1041,1042,1043,1044,1044,1045,1046,1047,
+1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1061,1062,1063,1064,1066,1067,1069,1070,
+1071,1073,1074,1076,1078,1079,1081,1083,1084,1086,1088,1090,1092,1093,1095,1097,1099,1101,1104,1106,
+1108,1110,1112,1115,1117,1119,1122,1124,1126,1129,1131,1134,1137,1139,1142,1145,1147,1150,1153,1156,
+1159,1162,1165,1168,1171,1174,1177,1180,1183,1186,1190,1193,1196,1200,1203,1206,1210,1213,1217,1220,
+1224,1227,1231,1234,1238,1242,1245,1249,1253,1256,1260,1264,1268,1272,1275,1279,1283,1287,1291,1295,
+1299,1302,1306,1310,1314,1318,1322,1326,1330,1334,1338,1342,1346,1350,1354,1358,1362,1366,1370,1373,
+1377,1381,1385,1389,1393,1397,1401,1405,1408,1412,1416,1420,1423,1427,1431,1435,1438,1442,1446,1449,
+1453,1456,1460,1463,1467,1470,1474,1477,1480,1484,1487,1490,1494,1497,1500,1503,1506,1509,1512,1515,
+1518,1521,1524,1527,1530,1532,1535,1538,1540,1543,1546,1548,1551,1553,1555,1558,1560,1562,1565,1567,
+1569,1571,1573,1575,1577,1579,1581,1583,1585,1586,1588,1590,1591,1593,1595,1596,1598,1599,1600,1602,
+1603,1604,1605,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1616,1617,1618,1619,1619,1620,1620,
+1621,1622,1622,1622,1623,1623,1624,1624,1624,1625,1625,1625,1625,1626,1626,1626,1626,1626,1626,1626,
+1626,1626,1626,1626,1626,1626,1626,1626,1626,1626,1626,1626,1626,1625,1625,1625,1625,1625,1624,1624,
+1624,1624,1623,1623,1623,1623,1622,1622,1622,1621,1621,1621,1620,1620,1620,1619,1619,1619,1618,1618,
+1618,1617,1617,1617,1616,1616,1615,1615,1615,1614,1614,1613,1613,1612,1612,1612,1611,1611,1610,1610,
+1609,1609,1608,1608,1607,1607,1606,1606,1605,1604,1604,1603,1603,1602,1602,1601,1600,1600,1599,1598,
+1598,1597,1596,1595,1595,1594,1593,1592,1592,1591,1590,1589,1588,1587,1586,1585,1584,1583,1583,1582,
+1580,1579,1578,1577,1739,1738,1737,1735,1734,1732,1731,1729,1728,1726,1725,1723,1721,1719,1717,1716,
+1714,1712,1710,1708,1705,1703,1701,1699,1697,1694,1692,1690,1687,1685,1682,1680,1677,1675,1672,1669,
+1667,1664,1661,1658,1655,1653,1650,1647,1644,1641,1638,1635,1632,1629,1626,1623,1619,1616,1613,1610,
+1607,1604,1600,1597,1594,1590,1587,1584,1581,1577,1574,1571,1567,1564,1560,1557,1554,1550,1547,1543,
+1540,1536,1533,1529,1526,1523,1519,1516,1512,1509,1505,1502,1498,1495,1491,1488,1484,1481,1477,1473,
+1470,1466,1463,1459,1456,1452,1449,1445,1442,1438,1434,1431,1427,1424,1420,1417,1413,1410,1406,1402,
+1399,1395,1392,1388,1385,1381,1377,1374,1370,1367,1363,1359,1356,1352,1349,1345,1342,1338,1335,1331,
+1327,1324,1320,1317,1313,1310,1306,1303,1299,1296,1292,1289,1286,1282,1279,1275,1272,1268,1265,1262,
+1258,1255,1252,1248,1245,1242,1239,1235,1232,1229,1226,1223,1219,1216,1213,1210,1207,1204,1201,1198,
+1195,1192,1189,1186,1183,1181,1178,1175,1172,1169,1167,1164,1161,1159,1156,1153,1151,1148,1145,1143,
+1140,1138,1135,1133,1130,1128,1125,1123,1121,1118,1116,1114,1111,1109,1107,1104,1102,1100,1098,1095,
+1093,1091,1089,1087,1084,1082,1080,1078,1076,1074,1072,1069,1067,1065,1063,1061,1059,1057,1055,1053,
+1051,1049,1047,1045,1043,1041,1039,1037,1035,1033,1031,1029,1027,1025,1024,1022,1020,1018,1016,1014,
+1012,1011,1009,1007,1005,1004,1002,1000,998,997,995,993,992,990,989,987,986,984,983,981,
+980,978,977,976,974,973,972,971,969,968,967,966,965,964,963,962,961,960,959,959,
+958,957,957,956,955,955,954,954,953,953,953,952,952,952,952,952,952,952,952,952,
+952,952,952,952,952,953,953,953,954,954,955,955,956,956,957,958,958,959,960,961,
+962,962,963,964,965,966,967,968,969,970,971,972,973,975,976,977,978,979,980,982,
+983,984,985,986,988,989,990,991,993,994,995,997,998,999,1000,1002,1003,1004,1006,1007,
+1008,1010,1011,1012,1014,1015,1016,1018,1019,1021,1022,1023,1025,1026,1028,1029,1031,1032,1034,1035,
+1037,1039,1040,1042,1044,1045,1047,1049,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1072,1074,
+1076,1079,1081,1084,1087,1089,1092,1095,1098,1101,1104,1107,1110,1113,1117,1120,1124,1127,1131,1134,
+1138,1142,1146,1150,1154,1158,1162,1166,1170,1175,1179,1184,1188,1193,1198,1202,1207,1212,1217,1222,
+1227,1232,1237,1242,1248,1253,1258,1264,1269,1274,1280,1285,1291,1297,1302,1308,1314,1319,1325,1331,
+1337,1342,1348,1354,1360,1366,1372,1378,1383,1389,1395,1401,1407,1413,1419,1425,1430,1436,1442,1448,
+1454,1460,1465,1471,1477,1483,1489,1494,1500,1506,1511,1517,1522,1528,1533,1539,1544,1550,1555,1560,
+1566,1571,1576,1581,1587,1592,1597,1602,1607,1612,1617,1622,1626,1631,1636,1640,1645,1650,1654,1659,
+1663,1667,1672,1676,1680,1684,1688,1692,1696,1700,1704,1708,1711,1715,1719,1722,1725,1729,1732,1735,
+1739,1742,1745,1748,1750,1753,1756,1759,1761,1764,1766,1769,1771,1773,1775,1777,1779,1781,1783,1785,
+1786,1788,1789,1791,1792,1794,1795,1796,1797,1798,1799,1800,1800,1801,1802,1802,1803,1803,1804,1804,
+1804,1804,1804,1804,1804,1804,1804,1804,1804,1804,1803,1803,1802,1802,1801,1801,1800,1800,1799,1798,
+1798,1797,1796,1796,1795,1794,1793,1792,1791,1791,1790,1789,1788,1787,1786,1785,1784,1784,1783,1782,
+1781,1780,1779,1779,1778,1777,1776,1775,1775,1774,1773,1773,1772,1771,1771,1770,1770,1769,1769,1768,
+1768,1767,1767,1766,1766,1765,1765,1765,1764,1764,1764,1764,1763,1763,1763,1763,1763,1762,1762,1762,
+1762,1762,1762,1761,1761,1761,1761,1761,1761,1760,1760,1760,1760,1760,1759,1759,1759,1759,1758,1758,
+1758,1757,1757,1756,1756,1755,1755,1754,1754,1753,1752,1752,1751,1750,1750,1749,1748,1747,1746,1745,
+1744,1743,1742,1740,1739,1919,1917,1916,1914,1912,1910,1908,1906,1904,1902,1900,1898,1895,1893,1890,
+1888,1885,1883,1880,1877,1874,1872,1869,1866,1863,1860,1856,1853,1850,1847,1844,1840,1837,1833,1830,
+1826,1823,1819,1816,1812,1808,1805,1801,1797,1793,1790,1786,1782,1778,1774,1770,1766,1762,1758,1754,
+1750,1745,1741,1737,1733,1729,1724,1720,1716,1712,1707,1703,1699,1694,1690,1686,1681,1677,1673,1668,
+1664,1660,1655,1651,1646,1642,1638,1633,1629,1624,1620,1616,1611,1607,1602,1598,1593,1589,1585,1580,
+1576,1571,1567,1562,1558,1553,1549,1544,1540,1535,1531,1526,1522,1517,1512,1508,1503,1498,1494,1489,
+1484,1480,1475,1470,1465,1461,1456,1451,1446,1441,1436,1431,1426,1421,1416,1411,1406,1401,1396,1391,
+1386,1381,1376,1371,1366,1360,1355,1350,1345,1340,1335,1329,1324,1319,1314,1309,1304,1299,1294,1288,
+1283,1278,1273,1268,1263,1258,1253,1249,1244,1239,1234,1229,1224,1220,1215,1211,1206,1201,1197,1192,
+1188,1184,1179,1175,1171,1167,1163,1159,1155,1151,1147,1143,1139,1135,1131,1128,1124,1121,1117,1113,
+1110,1107,1103,1100,1097,1093,1090,1087,1084,1081,1078,1075,1072,1069,1066,1063,1060,1057,1054,1051,
+1049,1046,1043,1040,1038,1035,1032,1030,1027,1025,1022,1019,1017,1014,1012,1009,1007,1004,1002,1000,
+997,995,992,990,988,985,983,981,978,976,974,971,969,967,965,962,960,958,956,954,
+951,949,947,945,943,941,939,937,935,933,931,929,927,926,924,922,920,919,917,915,
+914,912,911,909,908,906,905,904,902,901,900,899,898,897,896,895,894,893,893,892,
+891,891,890,890,890,889,889,889,889,889,889,890,890,890,891,891,892,892,893,894,
+895,896,897,898,899,901,902,904,905,907,908,910,912,914,916,918,920,923,925,927,
+930,932,935,937,940,943,946,948,951,954,957,960,963,966,969,972,975,978,981,984,
+987,990,993,996,1000,1003,1006,1008,1011,1014,1017,1020,1023,1026,1028,1031,1034,1036,1039,1041,
+1044,1046,1048,1051,1053,1055,1057,1059,1061,1063,1065,1067,1069,1071,1072,1074,1076,1077,1079,1081,
+1082,1084,1085,1087,1088,1090,1091,1093,1095,1096,1098,1099,1101,1103,1104,1106,1108,1110,1112,1114,
+1116,1118,1120,1122,1125,1127,1130,1132,1135,1138,1141,1144,1147,1150,1153,1157,1160,1164,1168,1172,
+1176,1180,1184,1188,1192,1197,1202,1206,1211,1216,1221,1226,1231,1237,1242,1248,1253,1259,1265,1271,
+1276,1282,1288,1295,1301,1307,1313,1320,1326,1332,1339,1345,1352,1358,1365,1372,1378,1385,1392,1398,
+1405,1412,1418,1425,1432,1438,1445,1452,1458,1465,1471,1478,1485,1491,1498,1504,1511,1517,1523,1530,
+1536,1542,1549,1555,1561,1567,1574,1580,1586,1592,1598,1604,1610,1616,1621,1627,1633,1639,1645,1650,
+1656,1662,1667,1673,1679,1684,1690,1695,1701,1706,1712,1717,1722,1728,1733,1739,1744,1749,1754,1760,
+1765,1770,1775,1781,1786,1791,1796,1801,1806,1811,1816,1821,1826,1831,1836,1841,1846,1850,1855,1860,
+1865,1869,1874,1878,1883,1887,1891,1896,1900,1904,1908,1912,1916,1919,1923,1927,1930,1934,1937,1940,
+1943,1946,1949,1952,1955,1957,1960,1962,1964,1966,1968,1970,1972,1974,1975,1977,1978,1979,1980,1981,
+1982,1982,1983,1983,1983,1984,1984,1984,1984,1983,1983,1983,1982,1981,1981,1980,1979,1978,1977,1976,
+1975,1974,1972,1971,1970,1968,1967,1965,1964,1962,1961,1959,1958,1956,1955,1953,1952,1950,1948,1947,
+1946,1944,1943,1941,1940,1939,1938,1936,1935,1934,1933,1932,1931,1930,1930,1929,1928,1927,1927,1926,
+1926,1926,1925,1925,1925,1925,1925,1925,1925,1925,1925,1925,1925,1925,1926,1926,1926,1927,1927,1928,
+1928,1929,1929,1930,1930,1931,1931,1932,1932,1932,1933,1933,1934,1934,1935,1935,1935,1935,1936,1936,
+1936,1936,1936,1936,1936,1936,1936,1935,1935,1935,1934,1934,1933,1932,1932,1931,1930,1929,1928,1927,
+1926,1925,1923,1922,1920,1919,2088,2086,2084,2081,2078,2076,2073,2070,2067,2064,2061,2058,2055,2052,
+2049,2046,2042,2039,2036,2033,2029,2026,2022,2019,2015,2012,2008,2004,2001,1997,1993,1989,1986,1982,
+1978,1974,1970,1966,1962,1958,1954,1950,1945,1941,1937,1933,1928,1924,1919,1915,1910,1905,1901,1896,
+1891,1886,1881,1876,1872,1866,1861,1856,1851,1846,1841,1836,1830,1825,1820,1814,1809,1804,1798,1793,
+1787,1782,1777,1771,1766,1760,1755,1750,1744,1739,1733,1728,1723,1717,1712,1707,1701,1696,1691,1685,
+1680,1675,1670,1665,1659,1654,1649,1644,1638,1633,1628,1623,1618,1612,1607,1602,1596,1591,1586,1580,
+1575,1569,1564,1558,1553,1547,1542,1536,1530,1524,1518,1513,1507,1501,1495,1488,1482,1476,1470,1464,
+1457,1451,1444,1438,1431,1425,1418,1412,1405,1398,1392,1385,1378,1372,1365,1358,1352,1345,1338,1332,
+1325,1318,1312,1305,1298,1292,1285,1279,1273,1266,1260,1254,1247,1241,1235,1229,1223,1217,1211,1206,
+1200,1194,1189,1183,1178,1172,1167,1162,1157,1152,1147,1142,1137,1132,1127,1123,1118,1113,1109,1105,
+1100,1096,1092,1087,1083,1079,1075,1071,1067,1063,1060,1056,1052,1048,1045,1041,1038,1034,1030,1027,
+1024,1020,1017,1013,1010,1007,1004,1000,997,994,991,988,985,982,979,976,973,970,967,964,
+961,958,956,953,950,947,945,942,939,937,934,932,929,927,924,922,920,917,915,913,
+911,909,906,904,902,900,898,896,894,893,891,889,887,886,884,882,881,879,878,876,
+875,873,872,871,870,868,867,866,865,864,863,862,861,860,859,859,858,857,857,856,
+855,855,855,854,854,854,853,853,853,853,853,853,854,854,854,855,855,856,857,858,
+859,860,861,862,863,865,866,868,870,872,874,876,878,881,883,886,889,892,895,898,
+901,905,908,912,916,920,924,928,932,937,941,946,950,955,960,965,970,975,980,985,
+990,995,1000,1005,1010,1015,1021,1026,1031,1036,1041,1046,1051,1056,1060,1065,1070,1074,1079,1083,
+1087,1091,1095,1099,1103,1107,1110,1113,1117,1120,1123,1126,1129,1131,1134,1136,1139,1141,1143,1145,
+1147,1149,1151,1153,1155,1156,1158,1159,1161,1163,1164,1166,1167,1169,1170,1172,1174,1175,1177,1179,
+1181,1183,1185,1187,1190,1192,1195,1197,1200,1203,1206,1209,1213,1216,1220,1223,1227,1231,1236,1240,
+1245,1249,1254,1259,1264,1269,1275,1280,1286,1292,1297,1303,1310,1316,1322,1328,1335,1342,1348,1355,
+1362,1369,1375,1382,1389,1396,1403,1411,1418,1425,1432,1439,1446,1453,1460,1467,1474,1481,1488,1495,
+1502,1509,1516,1523,1529,1536,1543,1549,1556,1562,1568,1575,1581,1587,1593,1599,1605,1611,1616,1622,
+1628,1633,1639,1644,1649,1655,1660,1665,1670,1675,1680,1685,1689,1694,1699,1704,1708,1713,1717,1722,
+1726,1731,1735,1739,1744,1748,1752,1757,1761,1765,1769,1774,1778,1783,1787,1791,1796,1800,1805,1809,
+1814,1819,1823,1828,1833,1838,1843,1847,1853,1858,1863,1868,1873,1879,1884,1889,1895,1900,1906,1912,
+1917,1923,1929,1935,1941,1947,1952,1958,1964,1970,1976,1982,1988,1994,1999,2005,2011,2017,2022,2028,
+2033,2039,2044,2049,2054,2059,2064,2069,2073,2078,2082,2086,2090,2094,2098,2101,2105,2108,2111,2114,
+2116,2119,2121,2123,2125,2127,2129,2130,2131,2132,2133,2134,2134,2135,2135,2135,2135,2135,2135,2134,
+2134,2133,2132,2131,2130,2129,2128,2127,2125,2124,2122,2121,2120,2118,2116,2115,2113,2112,2110,2109,
+2107,2106,2104,2103,2101,2100,2099,2097,2096,2095,2094,2093,2092,2092,2091,2090,2090,2089,2089,2089,
+2089,2089,2089,2089,2089,2089,2090,2090,2090,2091,2092,2092,2093,2094,2095,2096,2097,2098,2099,2100,
+2101,2102,2103,2104,2105,2107,2108,2109,2110,2111,2112,2112,2113,2114,2115,2115,2116,2116,2117,2117,
+2117,2118,2118,2118,2118,2117,2117,2117,2116,2115,2115,2114,2113,2112,2110,2109,2108,2106,2105,2103,
+2101,2099,2097,2095,2093,2091,2088,2248,2245,2241,2238,2234,2231,2227,2224,2220,2216,2213,2209,2205,
+2202,2198,2194,2191,2187,2183,2180,2176,2172,2169,2165,2162,2158,2154,2151,2147,2143,2140,2136,2132,
+2129,2125,2121,2117,2113,2109,2105,2101,2097,2093,2088,2084,2079,2075,2070,2065,2060,2055,2050,2044,
+2039,2033,2028,2022,2016,2010,2004,1997,1991,1985,1978,1971,1965,1958,1951,1944,1937,1930,1923,1916,
+1908,1901,1894,1887,1880,1872,1865,1858,1851,1844,1837,1830,1823,1816,1809,1802,1795,1789,1782,1775,
+1769,1762,1756,1750,1743,1737,1731,1725,1719,1713,1706,1700,1694,1688,1682,1677,1671,1665,1659,1653,
+1647,1641,1635,1628,1622,1616,1610,1603,1597,1591,1584,1578,1571,1564,1558,1551,1544,1537,1530,1523,
+1516,1508,1501,1494,1486,1479,1471,1464,1456,1449,1441,1433,1426,1418,1410,1403,1395,1387,1379,1372,
+1364,1357,1349,1341,1334,1327,1319,1312,1305,1297,1290,1283,1276,1269,1262,1255,1249,1242,1236,1229,
+1223,1216,1210,1204,1198,1192,1186,1180,1174,1168,1163,1157,1152,1146,1141,1135,1130,1125,1119,1114,
+1109,1104,1099,1094,1089,1084,1079,1074,1069,1064,1059,1055,1050,1045,1040,1036,1031,1027,1022,1017,
+1013,1008,1004,1000,995,991,987,982,978,974,970,966,962,958,954,950,946,943,939,935,
+932,928,925,921,918,915,911,908,905,902,899,896,893,891,888,885,883,880,878,876,
+874,871,869,867,866,864,862,860,859,857,856,854,853,852,851,850,849,848,847,846,
+846,845,844,844,843,843,843,842,842,842,842,842,841,841,841,841,841,841,841,841,
+841,842,842,842,842,842,842,842,842,843,843,843,843,843,844,844,844,844,845,845,
+846,846,847,847,848,849,850,851,852,853,854,855,857,859,860,862,864,867,869,871,
+874,877,880,883,887,890,894,898,902,907,911,916,921,926,931,937,942,948,954,960,
+966,972,978,985,991,998,1004,1011,1018,1024,1031,1038,1044,1051,1057,1064,1070,1077,1083,1089,
+1095,1101,1107,1113,1118,1124,1129,1134,1139,1144,1148,1153,1157,1161,1165,1168,1172,1175,1179,1182,
+1185,1188,1190,1193,1196,1198,1201,1203,1205,1207,1210,1212,1214,1217,1219,1221,1224,1226,1229,1231,
+1234,1237,1240,1243,1246,1250,1253,1257,1261,1265,1269,1274,1278,1283,1288,1293,1299,1304,1310,1316,
+1322,1328,1334,1341,1347,1354,1361,1368,1375,1382,1390,1397,1405,1412,1420,1427,1435,1443,1451,1458,
+1466,1474,1482,1490,1497,1505,1513,1521,1528,1536,1543,1551,1558,1566,1573,1580,1588,1595,1602,1609,
+1616,1622,1629,1636,1642,1649,1655,1662,1668,1674,1680,1686,1692,1698,1704,1709,1715,1720,1726,1731,
+1736,1741,1746,1751,1756,1760,1765,1769,1773,1778,1782,1786,1789,1793,1797,1800,1804,1807,1810,1813,
+1816,1819,1822,1825,1828,1830,1833,1835,1837,1840,1842,1844,1846,1849,1851,1853,1855,1857,1859,1862,
+1864,1866,1869,1871,1873,1876,1879,1882,1885,1888,1891,1894,1897,1901,1905,1909,1913,1917,1921,1926,
+1930,1935,1940,1945,1951,1956,1962,1968,1974,1980,1986,1992,1998,2005,2012,2018,2025,2032,2038,2045,
+2052,2059,2066,2073,2079,2086,2093,2099,2106,2112,2119,2125,2131,2137,2143,2149,2154,2159,2165,2170,
+2175,2179,2184,2188,2192,2196,2200,2203,2206,2210,2212,2215,2218,2220,2222,2224,2226,2228,2229,2231,
+2232,2233,2234,2235,2235,2236,2236,2237,2237,2237,2237,2237,2237,2237,2237,2237,2237,2236,2236,2236,
+2236,2235,2235,2235,2235,2234,2234,2234,2234,2234,2234,2234,2235,2235,2235,2235,2236,2236,2237,2238,
+2239,2239,2240,2241,2242,2244,2245,2246,2248,2249,2251,2252,2254,2255,2257,2259,2261,2263,2264,2266,
+2268,2270,2272,2274,2275,2277,2279,2280,2282,2284,2285,2286,2288,2289,2290,2291,2292,2293,2293,2294,
+2294,2294,2294,2294,2294,2293,2293,2292,2291,2290,2289,2287,2286,2284,2283,2281,2279,2276,2274,2271,
+2269,2266,2263,2260,2257,2254,2251,2248,2418,2414,2410,2406,2402,2398,2394,2390,2386,2382,2378,2373,
+2369,2365,2361,2357,2353,2348,2344,2340,2336,2332,2328,2324,2320,2316,2313,2309,2305,2301,2297,2293,
+2290,2286,2282,2278,2274,2270,2266,2262,2257,2253,2249,2244,2239,2234,2229,2224,2219,2213,2207,2201,
+2195,2189,2183,2176,2169,2162,2155,2147,2139,2132,2124,2116,2107,2099,2090,2081,2073,2064,2055,2046,
+2037,2027,2018,2009,2000,1990,1981,1972,1963,1954,1945,1936,1927,1918,1910,1901,1892,1884,1876,1868,
+1859,1851,1844,1836,1828,1821,1813,1806,1798,1791,1784,1777,1770,1763,1756,1749,1742,1735,1728,1721,
+1714,1707,1700,1693,1686,1679,1672,1665,1657,1650,1643,1635,1628,1620,1613,1605,1597,1589,1582,1574,
+1566,1557,1549,1541,1533,1525,1516,1508,1500,1491,1483,1475,1466,1458,1450,1441,1433,1425,1416,1408,
+1400,1392,1384,1376,1368,1360,1352,1344,1337,1329,1322,1314,1307,1300,1292,1285,1278,1271,1265,1258,
+1251,1244,1238,1231,1225,1219,1212,1206,1200,1193,1187,1181,1175,1169,1163,1157,1151,1144,1138,1132,
+1126,1120,1114,1108,1102,1096,1090,1084,1078,1072,1066,1060,1054,1048,1042,1036,1030,1024,1018,1012,
+1006,1001,995,989,984,978,973,967,962,957,952,947,942,937,932,927,922,918,913,909,
+905,900,896,892,888,884,881,877,873,870,866,863,859,856,853,850,847,844,841,838,
+836,833,831,828,826,824,822,820,818,816,815,813,812,810,809,808,807,806,805,805,
+804,804,804,804,804,804,804,804,804,805,806,806,807,808,809,810,811,812,813,814,
+815,816,817,819,820,821,822,823,825,826,827,828,829,830,831,832,833,834,835,836,
+837,838,839,840,840,841,842,843,844,845,846,847,848,850,851,852,854,855,857,859,
+861,863,866,868,871,874,877,880,883,887,891,895,899,904,908,913,918,924,929,935,
+941,947,953,959,966,973,979,986,993,1000,1008,1015,1022,1029,1037,1044,1051,1058,1066,1073,
+1080,1087,1094,1101,1107,1114,1120,1126,1132,1138,1144,1150,1155,1160,1165,1170,1175,1180,1184,1189,
+1193,1197,1201,1205,1209,1213,1216,1220,1224,1227,1231,1235,1239,1242,1246,1250,1254,1259,1263,1267,
+1272,1277,1282,1287,1292,1298,1304,1310,1316,1322,1328,1335,1342,1349,1356,1364,1371,1379,1387,1395,
+1403,1412,1420,1429,1437,1446,1454,1463,1472,1480,1489,1498,1507,1515,1524,1532,1541,1549,1558,1566,
+1574,1582,1590,1598,1606,1613,1621,1628,1636,1643,1650,1657,1664,1671,1678,1684,1691,1697,1704,1710,
+1717,1723,1729,1735,1742,1748,1754,1760,1766,1772,1778,1784,1791,1797,1803,1809,1814,1820,1826,1832,
+1838,1844,1849,1855,1860,1866,1871,1876,1882,1887,1891,1896,1901,1905,1909,1913,1917,1921,1925,1928,
+1931,1934,1936,1939,1941,1943,1945,1947,1948,1949,1950,1951,1952,1952,1953,1953,1953,1953,1953,1953,
+1952,1952,1952,1951,1951,1950,1950,1950,1950,1950,1950,1950,1950,1951,1951,1952,1953,1954,1956,1957,
+1959,1962,1964,1967,1970,1973,1976,1980,1984,1988,1993,1998,2003,2008,2013,2019,2025,2031,2037,2043,
+2049,2056,2062,2069,2076,2083,2089,2096,2103,2110,2117,2123,2130,2136,2143,2149,2155,2162,2168,2173,
+2179,2185,2190,2196,2201,2206,2211,2215,2220,2224,2229,2233,2237,2241,2245,2248,2252,2255,2259,2262,
+2265,2269,2272,2275,2278,2281,2284,2287,2289,2292,2295,2298,2300,2303,2306,2308,2311,2314,2316,2319,
+2321,2324,2326,2328,2331,2333,2336,2338,2340,2343,2345,2347,2349,2352,2354,2356,2358,2361,2363,2365,
+2367,2370,2372,2374,2377,2379,2381,2384,2386,2389,2391,2394,2397,2399,2402,2405,2407,2410,2413,2415,
+2418,2421,2424,2426,2429,2432,2434,2437,2439,2442,2444,2446,2449,2451,2453,2454,2456,2458,2459,2460,
+2461,2462,2463,2463,2464,2464,2464,2464,2463,2463,2462,2461,2460,2458,2457,2455,2453,2451,2449,2446,
+2444,2441,2438,2435,2432,2428,2425,2422,2418,2598,2594,2590,2587,2582,2578,2574,2569,2564,2559,2554,
+2549,2543,2538,2532,2527,2521,2515,2509,2503,2497,2491,2485,2479,2473,2467,2461,2455,2450,2444,2438,
+2432,2427,2421,2415,2410,2404,2399,2393,2388,2382,2376,2371,2365,2359,2353,2347,2341,2335,2328,2322,
+2315,2308,2301,2294,2286,2278,2270,2262,2254,2245,2237,2228,2219,2209,2200,2190,2181,2171,2161,2151,
+2141,2131,2121,2111,2101,2091,2080,2070,2060,2050,2040,2031,2021,2011,2002,1992,1983,1974,1965,1956,
+1947,1938,1929,1921,1912,1903,1895,1887,1878,1870,1862,1854,1846,1837,1829,1821,1813,1805,1797,1789,
+1781,1772,1764,1756,1748,1739,1731,1723,1714,1706,1698,1689,1681,1672,1663,1655,1646,1638,1629,1620,
+1611,1603,1594,1585,1576,1567,1559,1550,1541,1532,1523,1514,1506,1497,1488,1479,1471,1462,1453,1444,
+1436,1427,1419,1410,1402,1394,1385,1377,1369,1361,1353,1345,1337,1329,1322,1314,1306,1299,1292,1284,
+1277,1270,1262,1255,1248,1241,1234,1227,1220,1213,1206,1199,1192,1185,1178,1171,1164,1157,1150,1143,
+1135,1128,1121,1114,1107,1099,1092,1085,1078,1070,1063,1056,1049,1041,1034,1027,1020,1013,1007,1000,
+993,987,980,974,968,961,955,950,944,938,933,928,923,918,913,908,903,899,894,890,
+886,882,878,874,871,867,863,860,856,853,849,846,843,839,836,833,830,827,823,820,
+817,814,811,808,805,802,799,796,793,790,788,785,782,780,777,775,773,771,769,767,
+766,764,763,761,760,759,759,758,758,757,757,757,757,758,758,759,760,761,762,763,
+764,765,767,768,770,772,773,775,777,779,781,783,785,787,789,791,793,795,797,800,
+802,804,806,808,810,813,815,817,819,822,824,826,829,831,834,836,839,841,844,847,
+850,853,856,859,862,865,869,872,876,880,883,887,892,896,900,905,909,914,919,924,
+929,934,940,945,951,957,963,969,975,981,987,994,1000,1007,1014,1020,1027,1034,1040,1047,
+1054,1060,1067,1074,1080,1087,1093,1100,1106,1112,1118,1125,1131,1136,1142,1148,1154,1159,1165,1170,
+1176,1181,1186,1192,1197,1202,1208,1213,1219,1224,1230,1236,1242,1248,1254,1260,1267,1274,1280,1288,
+1295,1302,1310,1318,1326,1334,1343,1352,1361,1370,1379,1388,1398,1408,1418,1428,1438,1448,1458,1468,
+1478,1489,1499,1509,1519,1529,1539,1549,1559,1568,1578,1587,1596,1605,1613,1622,1630,1638,1646,1654,
+1661,1668,1676,1682,1689,1695,1702,1708,1714,1720,1726,1731,1737,1742,1747,1753,1758,1763,1769,1774,
+1779,1784,1790,1795,1801,1806,1812,1817,1823,1829,1835,1841,1847,1853,1860,1866,1873,1879,1886,1893,
+1899,1906,1913,1920,1926,1933,1940,1946,1953,1959,1966,1972,1978,1984,1989,1995,2000,2005,2010,2014,
+2019,2023,2026,2030,2033,2036,2038,2040,2042,2044,2045,2046,2046,2047,2047,2047,2046,2046,2045,2044,
+2043,2041,2040,2038,2036,2035,2033,2031,2029,2028,2026,2024,2023,2021,2020,2019,2018,2018,2017,2017,
+2017,2018,2018,2019,2020,2022,2024,2026,2029,2032,2035,2038,2042,2046,2050,2055,2060,2065,2070,2076,
+2082,2088,2094,2100,2106,2112,2119,2125,2131,2138,2144,2151,2157,2163,2169,2175,2181,2186,2192,2197,
+2203,2208,2213,2217,2222,2226,2231,2235,2239,2243,2247,2251,2255,2259,2262,2266,2270,2274,2278,2282,
+2286,2290,2294,2298,2303,2307,2312,2317,2322,2327,2332,2337,2342,2348,2353,2359,2365,2370,2376,2382,
+2387,2393,2399,2404,2410,2415,2420,2426,2431,2436,2440,2445,2450,2454,2459,2463,2467,2471,2474,2478,
+2482,2485,2489,2492,2495,2498,2501,2504,2508,2511,2514,2517,2520,2523,2526,2529,2532,2536,2539,2542,
+2546,2549,2552,2556,2559,2563,2566,2569,2573,2576,2580,2583,2586,2589,2593,2596,2598,2601,2604,2606,
+2609,2611,2613,2615,2617,2619,2620,2621,2622,2623,2624,2624,2625,2625,2625,2624,2624,2623,2622,2621,
+2620,2618,2616,2614,2612,2610,2607,2604,2601,2598,2764,2761,2757,2753,2749,2744,2739,2733,2727,2720,
+2713,2706,2698,2690,2681,2672,2663,2653,2643,2633,2623,2613,2602,2591,2581,2570,2559,2549,2538,2528,
+2518,2507,2497,2488,2478,2469,2460,2451,2442,2433,2425,2417,2409,2401,2393,2385,2377,2370,2362,2354,
+2347,2339,2331,2323,2315,2307,2299,2290,2282,2273,2264,2255,2246,2236,2227,2217,2207,2198,2188,2178,
+2168,2158,2148,2138,2128,2118,2108,2098,2088,2079,2069,2059,2050,2041,2032,2022,2013,2004,1996,1987,
+1978,1969,1961,1952,1943,1935,1926,1918,1909,1900,1891,1883,1874,1865,1856,1847,1838,1829,1820,1811,
+1802,1793,1784,1775,1766,1757,1748,1739,1730,1721,1713,1704,1695,1687,1678,1670,1662,1653,1645,1637,
+1629,1621,1613,1605,1597,1589,1581,1573,1565,1557,1548,1540,1532,1524,1516,1507,1499,1490,1482,1473,
+1464,1456,1447,1438,1429,1420,1411,1402,1393,1384,1375,1367,1358,1349,1340,1331,1322,1314,1305,1297,
+1288,1280,1271,1263,1255,1246,1238,1230,1222,1214,1206,1198,1190,1182,1174,1166,1158,1150,1142,1134,
+1126,1117,1109,1101,1093,1085,1077,1069,1061,1053,1045,1037,1029,1021,1013,1006,998,991,983,976,
+969,963,956,950,943,937,931,926,920,915,910,905,900,896,892,887,884,880,876,873,
+869,866,863,860,857,855,852,849,847,844,841,839,836,834,831,828,826,823,820,818,
+815,812,809,806,803,800,796,793,790,787,784,780,777,774,771,767,764,761,758,755,
+752,750,747,744,742,740,738,736,734,732,731,729,728,727,726,725,724,724,724,723,
+723,723,723,724,724,724,725,725,726,727,728,729,730,731,733,734,736,737,739,741,
+743,745,748,750,753,756,758,762,765,768,772,775,779,783,787,791,796,800,805,809,
+814,818,823,828,832,837,842,847,851,856,861,865,870,874,879,883,888,892,896,901,
+905,909,914,918,922,926,931,935,940,944,948,953,958,962,967,972,977,982,987,992,
+997,1003,1008,1014,1019,1025,1030,1036,1042,1048,1054,1060,1066,1072,1078,1084,1090,1097,1103,1110,
+1117,1123,1130,1137,1144,1152,1159,1167,1175,1183,1191,1199,1208,1216,1225,1235,1244,1254,1264,1274,
+1284,1295,1305,1316,1327,1338,1350,1361,1373,1385,1396,1408,1420,1432,1444,1455,1467,1479,1490,1502,
+1513,1524,1535,1546,1556,1566,1576,1586,1595,1605,1613,1622,1630,1638,1646,1653,1660,1667,1674,1680,
+1686,1692,1697,1703,1708,1713,1718,1723,1728,1732,1737,1741,1746,1750,1754,1759,1763,1768,1773,1778,
+1782,1787,1793,1798,1803,1809,1815,1820,1827,1833,1839,1846,1852,1859,1866,1873,1880,1887,1895,1902,
+1909,1917,1924,1932,1939,1946,1954,1961,1968,1975,1982,1988,1995,2001,2007,2013,2018,2024,2029,2034,
+2038,2042,2046,2050,2053,2056,2059,2062,2064,2066,2067,2069,2070,2071,2072,2072,2073,2073,2073,2073,
+2072,2072,2071,2071,2070,2069,2069,2068,2067,2066,2066,2065,2065,2064,2064,2064,2063,2063,2064,2064,
+2065,2066,2067,2068,2070,2071,2074,2076,2079,2082,2085,2089,2093,2097,2102,2107,2112,2118,2124,2130,
+2136,2143,2149,2156,2163,2171,2178,2185,2193,2200,2207,2215,2222,2229,2236,2242,2249,2255,2261,2266,
+2272,2277,2282,2286,2290,2294,2298,2301,2304,2307,2310,2313,2315,2318,2320,2322,2325,2327,2330,2332,
+2335,2338,2342,2345,2349,2354,2358,2363,2368,2374,2380,2386,2393,2400,2407,2414,2422,2430,2438,2446,
+2454,2462,2470,2479,2487,2495,2503,2510,2518,2525,2532,2539,2546,2552,2558,2563,2568,2573,2578,2582,
+2587,2590,2594,2598,2601,2604,2607,2610,2613,2616,2619,2621,2624,2627,2630,2633,2637,2640,2644,2647,
+2651,2655,2659,2663,2667,2671,2675,2680,2684,2689,2693,2698,2702,2706,2711,2715,2719,2723,2727,2731,
+2734,2738,2741,2745,2748,2751,2753,2756,2759,2761,2763,2765,2767,2769,2770,2771,2773,2774,2774,2775,
+2775,2776,2775,2775,2774,2774,2772,2771,2769,2767,2764,2904,2901,2897,2893,2887,2882,2875,2867,2859,
+2850,2840,2829,2817,2805,2792,2778,2764,2749,2734,2718,2701,2685,2668,2651,2634,2617,2600,2583,2566,
+2550,2534,2518,2503,2488,2474,2460,2446,2433,2421,2409,2398,2387,2376,2366,2356,2347,2338,2328,2320,
+2311,2302,2294,2285,2276,2268,2259,2250,2241,2231,2222,2212,2202,2192,2182,2172,2162,2151,2141,2130,
+2119,2109,2098,2087,2077,2067,2056,2046,2036,2026,2016,2007,1997,1988,1979,1970,1961,1952,1943,1934,
+1926,1917,1909,1900,1892,1883,1874,1865,1857,1848,1839,1830,1820,1811,1802,1793,1783,1774,1765,1755,
+1746,1737,1728,1719,1710,1701,1693,1685,1677,1669,1661,1654,1647,1640,1634,1628,1621,1616,1610,1604,
+1599,1594,1589,1583,1578,1573,1568,1563,1557,1552,1546,1540,1534,1528,1521,1514,1507,1499,1492,1483,
+1475,1467,1458,1449,1439,1430,1420,1410,1400,1390,1380,1370,1359,1349,1339,1329,1318,1308,1298,1288,
+1278,1269,1259,1250,1240,1231,1222,1213,1204,1195,1187,1178,1170,1161,1153,1144,1136,1127,1119,1111,
+1102,1094,1086,1077,1069,1060,1052,1044,1035,1027,1019,1011,1002,994,986,979,971,963,956,948,
+941,934,928,921,915,909,903,897,891,886,881,876,871,866,862,858,854,850,846,843,
+839,836,833,830,827,824,821,819,816,814,811,809,806,804,802,800,798,795,793,791,
+789,787,785,782,780,778,776,773,771,769,767,764,762,760,758,755,753,751,749,746,
+744,742,740,738,736,735,733,731,730,728,727,725,724,723,722,721,720,719,718,717,
+716,715,714,713,712,711,710,709,708,706,705,704,703,702,701,700,700,699,698,698,
+698,698,698,699,700,701,702,704,706,708,711,714,717,721,725,729,733,738,743,748,
+753,759,764,769,775,780,786,791,796,801,806,811,815,820,824,828,832,835,838,842,
+845,847,850,853,855,858,860,862,864,867,869,871,874,876,879,881,884,887,890,894,
+897,901,904,909,913,917,922,927,932,937,942,948,954,960,966,973,980,987,994,1002,
+1010,1018,1026,1035,1044,1053,1062,1072,1082,1093,1104,1115,1126,1137,1149,1161,1174,1186,1199,1212,
+1225,1238,1251,1264,1278,1291,1305,1318,1331,1345,1358,1371,1383,1396,1408,1420,1432,1444,1455,1466,
+1476,1487,1496,1506,1515,1523,1532,1540,1547,1554,1561,1567,1574,1579,1585,1590,1595,1600,1604,1609,
+1613,1617,1621,1624,1628,1632,1636,1639,1643,1647,1651,1655,1659,1664,1668,1673,1678,1683,1689,1694,
+1700,1706,1713,1719,1726,1733,1741,1748,1756,1764,1772,1781,1789,1798,1807,1816,1825,1834,1842,1851,
+1860,1869,1878,1886,1895,1903,1911,1919,1926,1934,1941,1947,1954,1960,1965,1971,1976,1980,1985,1988,
+1992,1995,1998,2001,2003,2005,2007,2009,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,
+2023,2024,2025,2026,2028,2029,2031,2033,2035,2037,2039,2041,2043,2045,2047,2050,2052,2054,2057,2059,
+2061,2064,2066,2069,2071,2074,2076,2079,2082,2086,2089,2093,2096,2101,2105,2110,2115,2121,2127,2133,
+2140,2148,2155,2164,2172,2181,2191,2200,2210,2220,2231,2241,2252,2262,2273,2283,2293,2303,2312,2321,
+2330,2338,2346,2353,2359,2365,2371,2375,2379,2383,2386,2388,2390,2392,2393,2394,2395,2396,2396,2397,
+2397,2398,2399,2401,2402,2404,2407,2410,2414,2419,2424,2429,2436,2443,2450,2458,2467,2476,2485,2495,
+2506,2516,2527,2538,2548,2559,2570,2580,2590,2600,2609,2618,2627,2635,2643,2650,2656,2662,2668,2672,
+2677,2681,2684,2688,2690,2693,2695,2698,2700,2702,2704,2706,2708,2711,2714,2717,2720,2723,2727,2731,
+2736,2740,2745,2751,2756,2762,2768,2775,2781,2787,2794,2800,2807,2813,2820,2826,2832,2838,2843,2849,
+2854,2858,2863,2867,2871,2875,2879,2882,2885,2888,2890,2893,2895,2897,2899,2901,2903,2905,2906,2908,
+2909,2910,2911,2911,2912,2912,2912,2911,2910,2909,2907,2904,3024,3020,3015,3009,3002,2994,2985,2975,
+2964,2952,2939,2924,2909,2892,2874,2856,2836,2816,2795,2773,2751,2729,2706,2683,2660,2638,2615,2593,
+2571,2550,2529,2509,2490,2471,2453,2436,2420,2405,2391,2377,2364,2352,2341,2330,2319,2310,2300,2291,
+2282,2273,2264,2255,2246,2237,2228,2218,2208,2198,2188,2177,2166,2155,2143,2131,2119,2107,2095,2082,
+2070,2057,2044,2032,2019,2007,1995,1983,1971,1960,1949,1938,1927,1916,1906,1896,1886,1876,1867,1857,
+1848,1838,1829,1820,1811,1801,1792,1782,1773,1763,1754,1744,1734,1724,1714,1705,1695,1685,1676,1666,
+1657,1648,1639,1631,1623,1615,1608,1601,1594,1588,1583,1578,1573,1569,1565,1562,1559,1556,1554,1551,
+1549,1547,1546,1544,1542,1540,1538,1535,1533,1530,1526,1523,1518,1514,1509,1503,1497,1490,1483,1475,
+1466,1458,1448,1439,1429,1418,1408,1397,1385,1374,1363,1351,1340,1328,1316,1305,1294,1283,1272,1261,
+1250,1240,1230,1220,1210,1201,1192,1183,1174,1165,1156,1148,1139,1131,1123,1115,1106,1098,1090,1082,
+1073,1065,1057,1048,1040,1031,1023,1014,1005,997,988,980,971,963,955,947,939,931,923,916,
+908,901,894,887,880,874,868,862,856,850,844,839,833,828,823,818,813,808,803,799,
+794,790,785,781,777,772,768,764,760,757,753,750,746,743,740,737,735,732,730,728,
+726,724,722,721,719,718,717,716,715,714,713,712,712,711,710,710,709,708,708,707,
+707,706,706,706,705,705,705,705,705,705,705,705,705,705,705,706,706,706,706,706,
+706,706,706,706,705,705,704,703,702,700,699,697,695,693,691,688,686,683,681,678,
+676,674,672,670,668,667,666,665,665,665,666,667,668,670,672,675,678,681,684,688,
+692,696,701,705,710,714,718,723,727,731,734,738,741,744,747,749,752,754,755,757,
+758,759,760,761,761,762,762,763,764,764,765,766,767,768,769,770,772,774,776,778,
+780,783,786,789,792,796,799,803,808,812,817,822,827,832,838,844,851,857,865,872,
+880,888,897,906,916,926,936,947,958,970,982,994,1007,1020,1034,1048,1062,1076,1090,1105,
+1119,1134,1148,1163,1177,1192,1206,1220,1233,1246,1259,1272,1284,1296,1307,1318,1328,1338,1348,1356,
+1365,1373,1380,1387,1393,1399,1405,1410,1414,1419,1423,1426,1429,1432,1435,1438,1440,1442,1445,1447,
+1449,1451,1453,1455,1457,1459,1461,1464,1466,1469,1472,1476,1480,1484,1488,1493,1498,1503,1509,1515,
+1522,1529,1536,1544,1552,1561,1570,1580,1590,1600,1610,1621,1632,1644,1655,1667,1679,1691,1703,1715,
+1726,1738,1750,1762,1773,1784,1795,1805,1815,1824,1833,1842,1850,1857,1864,1870,1876,1881,1886,1890,
+1893,1896,1898,1900,1902,1903,1904,1904,1905,1905,1905,1905,1904,1904,1904,1905,1905,1906,1907,1908,
+1910,1912,1914,1917,1920,1924,1928,1932,1937,1942,1947,1952,1958,1963,1969,1974,1980,1985,1990,1995,
+2000,2004,2008,2012,2015,2018,2021,2024,2026,2028,2031,2033,2035,2037,2040,2043,2046,2050,2054,2059,
+2065,2071,2078,2086,2096,2105,2116,2128,2141,2154,2168,2183,2198,2214,2230,2246,2262,2279,2295,2310,
+2326,2340,2354,2367,2379,2390,2400,2409,2417,2424,2429,2433,2436,2438,2439,2440,2439,2438,2436,2434,
+2431,2429,2426,2424,2422,2421,2420,2420,2420,2422,2424,2428,2433,2439,2446,2454,2463,2473,2484,2496,
+2509,2522,2536,2551,2566,2581,2596,2611,2626,2640,2654,2668,2680,2692,2704,2714,2724,2732,2740,2747,
+2752,2757,2761,2765,2767,2769,2771,2772,2773,2773,2774,2775,2775,2776,2777,2779,2781,2784,2787,2791,
+2796,2801,2807,2814,2821,2829,2837,2846,2856,2865,2875,2885,2895,2905,2916,2925,2935,2945,2954,2962,
+2970,2978,2985,2992,2998,3003,3008,3013,3017,3020,3023,3025,3028,3030,3031,3033,3034,3035,3036,3036,
+3037,3037,3038,3038,3038,3037,3037,3036,3035,3033,3031,3028,3024,3123,3117,3110,3102,3093,3083,3072,
+3060,3047,3032,3016,2999,2980,2960,2939,2917,2894,2870,2845,2820,2794,2768,2741,2715,2689,2662,2637,
+2612,2587,2563,2541,2519,2498,2478,2459,2442,2425,2410,2395,2382,2369,2358,2347,2336,2326,2317,2308,
+2299,2291,2282,2273,2264,2255,2245,2235,2225,2214,2203,2192,2180,2167,2155,2141,2128,2114,2100,2086,
+2072,2058,2044,2030,2016,2002,1989,1975,1962,1950,1937,1925,1913,1902,1890,1879,1868,1857,1847,1836,
+1826,1815,1805,1795,1784,1774,1763,1753,1742,1731,1720,1709,1698,1688,1677,1666,1655,1645,1634,1624,
+1615,1605,1596,1588,1580,1572,1565,1559,1553,1547,1542,1538,1534,1531,1528,1526,1524,1522,1521,1519,
+1518,1517,1517,1516,1514,1513,1512,1510,1507,1505,1501,1498,1493,1488,1483,1476,1470,1462,1454,1445,
+1436,1426,1416,1405,1394,1383,1371,1359,1347,1335,1322,1310,1298,1285,1273,1262,1250,1239,1228,1217,
+1206,1196,1186,1176,1167,1158,1149,1140,1132,1124,1115,1107,1099,1091,1082,1074,1066,1057,1049,1040,
+1031,1022,1013,1004,994,985,975,966,956,947,937,928,918,909,900,891,882,874,866,858,
+850,843,836,829,823,816,810,805,799,794,789,784,779,774,769,764,759,755,750,745,
+740,735,731,726,721,716,711,706,702,697,693,689,684,681,677,674,671,668,666,663,
+662,660,659,658,657,656,656,656,656,656,656,656,656,656,656,656,656,656,656,656,
+655,655,654,654,653,653,652,652,651,651,651,651,651,651,652,652,653,654,654,655,
+656,658,659,660,660,661,662,662,662,662,662,661,661,659,658,656,654,652,650,648,
+645,642,640,638,635,633,631,629,628,627,626,626,626,627,628,629,631,632,635,637,
+639,642,645,648,650,653,655,658,660,662,664,665,666,667,668,668,668,668,668,668,
+667,667,666,666,666,666,665,666,666,666,667,668,669,671,672,674,676,678,681,683,
+686,688,691,694,697,699,702,705,708,711,714,717,720,724,727,731,735,740,745,750,
+756,762,769,776,784,793,802,811,822,833,844,856,868,881,894,908,922,936,950,964,
+978,993,1007,1020,1034,1047,1060,1073,1085,1097,1108,1119,1129,1139,1148,1156,1164,1172,1179,1185,
+1191,1196,1201,1206,1210,1213,1217,1219,1222,1224,1226,1228,1230,1231,1232,1233,1234,1235,1236,1237,
+1237,1238,1239,1240,1241,1242,1243,1244,1246,1248,1250,1252,1254,1257,1260,1264,1268,1272,1277,1282,
+1288,1294,1300,1308,1315,1324,1332,1342,1352,1362,1373,1385,1397,1410,1423,1436,1450,1465,1479,1494,
+1509,1524,1539,1553,1568,1583,1597,1611,1625,1638,1650,1662,1674,1684,1694,1703,1712,1719,1726,1732,
+1737,1741,1744,1747,1749,1751,1751,1752,1751,1751,1750,1749,1748,1747,1746,1745,1744,1744,1744,1745,
+1746,1748,1750,1754,1758,1762,1768,1774,1781,1789,1797,1805,1814,1824,1833,1843,1853,1863,1872,1881,
+1890,1899,1906,1913,1920,1925,1930,1935,1938,1941,1944,1946,1947,1948,1950,1951,1952,1954,1957,1960,
+1964,1968,1974,1982,1990,2000,2011,2024,2038,2054,2071,2089,2109,2129,2150,2172,2194,2217,2239,2261,
+2283,2304,2324,2344,2361,2378,2393,2406,2417,2426,2434,2439,2443,2445,2445,2444,2441,2437,2431,2425,
+2418,2411,2403,2396,2388,2382,2375,2370,2366,2363,2362,2363,2365,2368,2374,2382,2391,2403,2416,2431,
+2447,2465,2484,2504,2526,2548,2570,2593,2616,2639,2661,2683,2704,2724,2743,2761,2777,2792,2805,2817,
+2827,2836,2843,2848,2852,2855,2856,2857,2856,2855,2853,2850,2848,2845,2843,2841,2839,2838,2838,2839,
+2841,2843,2847,2852,2859,2866,2875,2884,2895,2906,2919,2932,2945,2959,2973,2988,3002,3016,3030,3044,
+3057,3069,3081,3092,3102,3111,3120,3127,3134,3139,3144,3148,3151,3154,3155,3157,3157,3158,3158,3157,
+3156,3155,3154,3153,3151,3149,3147,3145,3142,3140,3136,3132,3128,3123,3184,3177,3169,3161,3151,3141,
+3129,3116,3102,3086,3070,3051,3032,3011,2989,2966,2941,2916,2890,2864,2837,2809,2782,2754,2727,2700,
+2673,2647,2622,2598,2575,2553,2532,2513,2494,2477,2461,2446,2432,2419,2407,2395,2384,2374,2364,2355,
+2345,2336,2326,2317,2307,2297,2286,2275,2264,2252,2240,2228,2215,2202,2188,2174,2160,2146,2132,2118,
+2104,2090,2076,2063,2049,2036,2023,2011,1999,1987,1975,1964,1953,1942,1931,1921,1910,1900,1889,1879,
+1868,1857,1846,1835,1824,1812,1801,1789,1777,1765,1753,1740,1728,1716,1704,1692,1680,1668,1657,1645,
+1635,1624,1614,1604,1595,1586,1578,1570,1562,1555,1549,1543,1537,1532,1527,1522,1517,1513,1509,1505,
+1501,1497,1493,1489,1485,1481,1477,1472,1467,1461,1456,1450,1443,1436,1429,1421,1413,1404,1395,1385,
+1375,1364,1353,1342,1331,1319,1307,1295,1283,1271,1259,1247,1235,1223,1211,1200,1189,1178,1167,1157,
+1147,1137,1127,1118,1109,1100,1091,1082,1073,1065,1056,1047,1038,1029,1020,1011,1002,992,982,972,
+962,952,941,930,919,908,897,886,875,863,852,842,831,820,810,800,791,782,773,765,
+757,749,742,736,730,724,719,714,710,706,702,698,695,691,688,685,682,679,676,673,
+670,667,663,660,657,653,650,646,643,639,636,633,630,627,624,622,620,618,617,616,
+615,615,615,615,616,616,617,618,620,621,622,623,624,625,626,626,626,626,626,625,
+624,623,621,619,617,614,612,609,606,604,601,599,596,594,593,591,590,589,588,588,
+588,588,588,589,590,591,591,592,593,594,594,594,594,594,594,593,592,591,590,588,
+586,585,583,581,579,577,576,575,573,573,572,572,572,573,573,575,576,577,579,581,
+583,585,586,588,590,591,592,593,593,593,593,592,592,590,589,588,586,585,583,581,
+580,579,578,577,577,577,578,579,580,582,584,587,590,593,596,600,603,607,611,614,
+617,621,623,626,628,630,632,633,634,634,635,635,635,635,635,635,636,637,638,639,
+641,644,648,652,657,663,669,676,684,693,702,712,723,734,745,757,769,781,794,806,
+818,830,841,852,863,874,884,893,902,910,918,925,932,939,944,950,955,959,964,968,
+971,975,978,981,983,986,988,990,992,994,996,998,1000,1001,1003,1004,1005,1006,1008,1009,
+1010,1011,1012,1013,1015,1016,1017,1019,1020,1022,1024,1026,1029,1031,1034,1037,1040,1044,1048,1052,
+1057,1062,1068,1074,1081,1088,1095,1104,1113,1122,1132,1143,1155,1167,1179,1193,1206,1221,1236,1251,
+1266,1282,1298,1314,1330,1346,1362,1378,1393,1408,1423,1437,1450,1462,1474,1485,1495,1505,1513,1521,
+1527,1533,1538,1542,1545,1547,1549,1550,1551,1551,1550,1550,1549,1548,1547,1546,1546,1545,1545,1546,
+1547,1549,1552,1555,1560,1565,1572,1579,1588,1597,1608,1619,1631,1644,1657,1671,1686,1700,1715,1730,
+1744,1758,1771,1784,1796,1807,1818,1827,1835,1843,1849,1854,1859,1863,1866,1870,1872,1875,1878,1882,
+1886,1891,1897,1905,1913,1923,1935,1948,1963,1980,1998,2018,2039,2061,2084,2108,2133,2158,2183,2207,
+2231,2254,2276,2297,2316,2333,2349,2362,2373,2381,2387,2391,2393,2392,2389,2384,2377,2369,2359,2348,
+2337,2325,2312,2300,2288,2277,2267,2258,2251,2245,2241,2239,2240,2243,2249,2257,2268,2282,2298,2317,
+2338,2362,2387,2415,2444,2475,2507,2539,2573,2606,2640,2673,2706,2737,2768,2797,2824,2849,2873,2894,
+2912,2929,2942,2954,2962,2969,2973,2975,2975,2973,2970,2965,2959,2953,2945,2938,2931,2924,2917,2911,
+2906,2902,2900,2899,2900,2902,2906,2911,2919,2927,2938,2950,2963,2977,2992,3008,3024,3041,3058,3075,
+3092,3109,3125,3140,3154,3168,3180,3191,3201,3210,3218,3224,3230,3234,3237,3239,3240,3240,3240,3239,
+3238,3236,3233,3230,3228,3224,3221,3217,3214,3210,3205,3201,3196,3190,3184,3209,3203,3197,3190,3182,
+3173,3163,3151,3138,3124,3108,3091,3073,3053,3031,3009,2985,2960,2934,2907,2880,2852,2825,2797,2770,
+2743,2716,2691,2666,2642,2620,2599,2578,2560,2542,2525,2510,2496,2482,2469,2457,2446,2435,2424,2413,
+2403,2392,2381,2369,2358,2346,2333,2320,2307,2293,2278,2264,2249,2234,2219,2204,2189,2174,2159,2145,
+2131,2118,2104,2092,2080,2068,2057,2046,2035,2025,2015,2006,1996,1986,1977,1967,1958,1948,1937,1927,
+1916,1905,1894,1882,1870,1857,1845,1832,1819,1805,1792,1779,1766,1752,1739,1727,1714,1702,1689,1678,
+1666,1655,1644,1633,1623,1612,1602,1592,1582,1573,1563,1553,1544,1534,1524,1515,1505,1495,1485,1475,
+1465,1456,1446,1436,1426,1417,1407,1398,1389,1379,1370,1361,1352,1344,1335,1326,1317,1308,1300,1290,
+1281,1272,1262,1253,1243,1233,1223,1212,1202,1191,1180,1169,1159,1148,1137,1126,1115,1105,1094,1083,
+1073,1063,1053,1043,1033,1023,1013,1003,993,983,974,963,953,943,933,922,911,900,889,878,
+866,854,843,831,819,807,795,783,771,760,748,737,726,715,704,694,684,675,666,657,
+649,642,635,628,622,616,611,606,602,598,594,591,588,586,583,581,579,577,575,574,
+572,571,569,568,566,565,563,562,560,559,557,556,555,554,554,553,553,553,553,553,
+554,556,557,559,561,563,566,568,571,574,577,579,582,584,587,589,590,591,592,593,
+592,592,591,589,587,585,582,580,576,573,570,566,563,560,557,554,551,549,546,545,
+543,542,541,540,539,539,539,538,538,538,537,537,536,535,534,532,531,529,527,525,
+523,520,518,516,514,512,510,509,507,507,506,506,506,507,508,509,511,512,514,516,
+517,519,520,522,523,523,523,523,522,521,520,518,515,513,510,508,505,502,500,498,
+496,495,494,494,494,495,497,499,502,505,509,513,518,523,528,532,537,542,546,550,
+554,557,559,560,562,562,562,561,559,557,555,552,550,547,544,541,539,537,536,535,
+535,535,537,539,542,546,551,556,563,570,578,586,595,604,613,622,632,641,650,658,
+666,674,681,687,693,698,703,707,710,713,715,718,719,721,723,724,725,727,728,730,
+732,734,736,738,741,743,746,748,751,754,756,759,761,763,766,767,769,771,772,773,
+775,776,777,778,780,781,783,785,788,790,793,797,800,804,809,814,819,824,830,837,
+843,850,857,865,872,881,889,898,907,917,927,938,949,960,972,985,998,1012,1025,1040,
+1054,1069,1084,1099,1115,1130,1144,1159,1173,1187,1200,1213,1225,1236,1247,1256,1265,1273,1280,1287,
+1292,1297,1302,1305,1309,1312,1314,1316,1318,1319,1321,1323,1324,1326,1328,1330,1332,1334,1338,1341,
+1345,1349,1355,1360,1367,1374,1382,1391,1401,1412,1423,1436,1449,1463,1478,1493,1510,1526,1543,1560,
+1578,1595,1612,1629,1645,1661,1676,1690,1703,1716,1727,1737,1747,1755,1763,1771,1777,1784,1790,1796,
+1803,1810,1818,1826,1836,1846,1858,1871,1886,1902,1919,1937,1956,1977,1997,2019,2040,2062,2083,2103,
+2123,2141,2158,2173,2187,2199,2208,2216,2221,2224,2225,2224,2220,2215,2209,2201,2191,2181,2170,2159,
+2147,2136,2125,2114,2105,2097,2090,2084,2081,2079,2080,2083,2089,2097,2108,2121,2138,2157,2179,2203,
+2230,2260,2293,2327,2364,2402,2442,2484,2526,2569,2613,2656,2699,2742,2784,2824,2863,2900,2934,2966,
+2995,3022,3045,3065,3082,3095,3106,3113,3118,3119,3118,3114,3108,3101,3092,3081,3070,3058,3046,3034,
+3023,3012,3002,2994,2987,2981,2978,2976,2976,2978,2982,2988,2996,3006,3017,3029,3043,3058,3073,3089,
+3105,3122,3138,3154,3169,3184,3198,3210,3222,3232,3241,3249,3255,3261,3265,3267,3269,3269,3269,3268,
+3266,3264,3261,3257,3254,3250,3247,3243,3239,3235,3231,3227,3223,3219,3214,3209,3224,3221,3217,3213,
+3208,3202,3194,3185,3174,3162,3148,3132,3115,3095,3074,3052,3028,3002,2976,2948,2920,2892,2863,2835,
+2807,2779,2753,2728,2704,2681,2660,2640,2622,2606,2591,2577,2565,2553,2543,2533,2524,2515,2506,2497,
+2488,2478,2468,2457,2445,2433,2419,2405,2390,2375,2358,2341,2324,2306,2289,2271,2253,2236,2218,2202,
+2185,2170,2155,2140,2127,2113,2101,2088,2077,2065,2054,2043,2032,2021,2010,1999,1987,1975,1963,1950,
+1937,1924,1910,1896,1882,1867,1853,1838,1824,1809,1795,1781,1768,1755,1742,1730,1718,1707,1696,1686,
+1676,1666,1656,1647,1637,1627,1617,1607,1596,1585,1573,1560,1547,1533,1518,1503,1486,1470,1453,1436,
+1418,1400,1383,1366,1349,1332,1316,1301,1287,1273,1260,1249,1238,1227,1218,1209,1201,1194,1186,1179,
+1173,1166,1159,1152,1145,1137,1130,1121,1113,1103,1094,1084,1074,1063,1052,1041,1030,1018,1007,995,
+984,972,961,950,938,927,916,905,893,882,871,860,848,837,825,814,802,790,778,767,
+755,743,731,719,708,696,685,673,662,651,641,630,620,611,601,592,583,574,566,558,
+550,542,535,528,522,515,509,503,498,493,488,483,479,474,471,467,464,461,459,457,
+455,453,452,451,450,449,449,449,449,449,450,450,451,452,453,454,456,457,458,460,
+462,464,466,468,471,474,476,479,482,486,489,493,496,499,503,506,509,512,515,518,
+520,522,524,525,526,526,527,527,526,526,525,524,523,522,520,519,518,516,515,514,
+513,512,511,510,509,508,507,505,504,502,501,499,496,494,491,488,485,482,478,474,
+470,467,463,459,456,453,450,447,445,444,442,442,442,442,443,444,445,447,449,450,
+452,454,455,456,457,457,457,456,455,453,451,449,446,442,439,435,432,429,426,423,
+422,420,420,420,421,422,425,428,432,436,441,446,451,456,461,466,471,475,478,481,
+483,485,485,485,485,483,481,478,475,472,468,464,461,457,454,452,449,448,447,447,
+448,449,452,455,459,463,469,475,481,487,494,501,508,514,521,526,532,536,540,543,
+545,546,546,546,544,542,539,535,532,527,523,519,515,511,508,505,503,502,501,502,
+503,505,508,511,515,519,524,529,533,538,542,546,550,553,555,557,557,558,557,557,
+555,554,553,551,550,549,548,548,549,550,553,556,560,565,571,577,585,593,602,611,
+621,631,641,652,662,673,684,694,705,716,727,738,750,762,774,786,799,812,825,839,
+853,868,883,898,913,928,943,957,971,984,997,1009,1020,1030,1039,1047,1054,1059,1064,1068,
+1071,1074,1075,1077,1078,1079,1080,1081,1083,1085,1087,1091,1095,1099,1105,1111,1118,1126,1134,1143,
+1153,1163,1174,1185,1196,1208,1220,1232,1244,1256,1269,1281,1294,1307,1321,1334,1348,1363,1377,1392,
+1407,1423,1438,1454,1470,1486,1501,1517,1532,1547,1561,1574,1587,1600,1612,1623,1634,1644,1654,1664,
+1673,1683,1693,1702,1713,1724,1735,1747,1759,1772,1786,1799,1814,1828,1842,1856,1869,1882,1894,1905,
+1914,1922,1929,1933,1936,1938,1937,1935,1932,1927,1921,1915,1907,1900,1892,1884,1877,1871,1866,1861,
+1858,1857,1857,1859,1863,1869,1876,1886,1897,1911,1926,1943,1962,1983,2005,2030,2056,2084,2115,2146,
+2180,2216,2253,2292,2333,2375,2419,2464,2510,2557,2605,2653,2701,2748,2796,2842,2887,2931,2972,3012,
+3049,3083,3114,3142,3166,3187,3205,3219,3230,3237,3241,3243,3241,3237,3230,3222,3212,3200,3188,3175,
+3162,3149,3136,3124,3112,3102,3094,3086,3081,3077,3075,3075,3076,3080,3085,3091,3099,3108,3119,3130,
+3142,3154,3166,3178,3191,3202,3214,3224,3234,3243,3250,3257,3262,3267,3270,3272,3273,3273,3272,3271,
+3268,3266,3263,3259,3256,3253,3249,3246,3243,3240,3237,3235,3233,3231,3229,3226,3224,3249,3248,3246,
+3244,3241,3236,3231,3223,3214,3203,3191,3175,3158,3139,3117,3094,3068,3042,3013,2984,2954,2924,2894,
+2864,2835,2807,2781,2756,2734,2713,2694,2678,2664,2653,2643,2635,2629,2625,2621,2618,2616,2613,2611,
+2608,2604,2599,2593,2586,2577,2566,2554,2541,2526,2510,2493,2474,2455,2435,2415,2394,2373,2352,2331,
+2311,2291,2271,2252,2233,2214,2196,2179,2161,2144,2127,2110,2093,2076,2059,2042,2024,2006,1988,1970,
+1951,1933,1914,1895,1877,1859,1841,1823,1806,1790,1775,1761,1747,1735,1724,1714,1704,1696,1689,1682,
+1676,1670,1665,1659,1654,1647,1641,1633,1624,1614,1602,1589,1574,1558,1539,1519,1498,1475,1451,1426,
+1400,1374,1347,1321,1295,1270,1246,1223,1201,1181,1163,1146,1131,1118,1107,1097,1088,1081,1074,1069,
+1063,1058,1053,1048,1042,1036,1029,1022,1014,1005,995,984,973,961,949,937,924,911,898,885,
+872,860,847,835,823,811,799,788,776,765,754,742,731,719,708,696,684,672,660,648,
+636,624,612,600,588,577,566,555,544,534,524,514,504,495,487,478,470,462,454,447,
+440,433,426,419,413,406,400,394,387,381,376,370,364,359,354,349,345,341,337,334,
+331,329,327,326,326,326,327,328,330,332,335,338,341,345,348,352,356,360,363,367,
+370,373,376,379,382,385,387,390,393,395,398,401,404,407,410,413,416,419,423,426,
+429,433,436,439,442,445,447,450,452,454,456,457,459,460,461,461,462,463,463,463,
+463,462,462,461,460,459,458,456,454,452,449,447,443,440,436,432,428,424,420,415,
+410,406,402,397,393,390,386,384,381,379,378,377,377,377,378,380,381,383,386,388,
+390,392,394,396,397,398,398,398,396,395,392,389,386,382,378,374,370,366,363,360,
+358,357,356,356,358,360,363,366,371,376,381,386,392,397,402,406,410,413,415,416,
+416,416,415,413,410,407,403,400,396,392,389,386,384,382,382,382,382,384,386,390,
+393,398,403,408,414,419,425,430,436,440,445,448,451,453,454,454,452,450,447,442,
+436,429,422,413,403,393,382,371,360,349,338,328,319,310,303,297,293,290,290,290,
+293,297,302,309,317,325,334,344,353,362,371,378,385,390,394,396,397,397,395,391,
+387,382,376,369,363,357,351,346,342,339,338,338,339,342,347,353,360,368,377,387,
+398,409,420,431,442,452,463,473,483,492,502,511,521,531,541,551,563,575,588,602,
+617,633,649,667,685,704,723,742,761,780,798,815,831,845,858,870,879,887,893,897,
+900,901,900,899,896,893,890,887,884,882,881,880,881,884,888,894,902,911,922,935,
+949,964,979,996,1012,1029,1046,1063,1079,1094,1109,1123,1136,1148,1160,1170,1181,1191,1201,1211,
+1221,1232,1243,1255,1268,1282,1296,1311,1327,1344,1361,1379,1397,1415,1433,1451,1469,1486,1503,1519,
+1534,1548,1562,1575,1587,1598,1609,1619,1628,1637,1645,1652,1659,1664,1669,1673,1675,1676,1676,1675,
+1672,1668,1662,1655,1646,1637,1627,1616,1605,1595,1584,1575,1567,1561,1556,1554,1555,1558,1565,1574,
+1587,1603,1621,1643,1667,1694,1723,1754,1786,1819,1854,1889,1925,1961,1998,2034,2071,2107,2144,2181,
+2218,2255,2293,2332,2371,2412,2453,2495,2538,2581,2626,2671,2716,2762,2807,2852,2896,2939,2981,3021,
+3060,3095,3129,3159,3187,3212,3233,3252,3267,3279,3288,3294,3297,3298,3297,3294,3289,3282,3274,3265,
+3256,3246,3236,3226,3217,3208,3199,3192,3185,3180,3176,3173,3171,3171,3172,3173,3177,3181,3186,3192,
+3198,3205,3213,3220,3228,3236,3243,3251,3257,3264,3269,3274,3278,3282,3284,3286,3287,3287,3286,3285,
+3284,3281,3279,3276,3273,3270,3267,3264,3261,3259,3257,3255,3253,3252,3251,3251,3250,3249,3276,3274,
+3272,3269,3266,3263,3258,3252,3245,3237,3226,3213,3198,3181,3161,3140,3116,3090,3062,3033,3004,2974,
+2943,2914,2885,2857,2832,2808,2787,2768,2753,2740,2730,2723,2719,2716,2716,2717,2720,2723,2727,2730,
+2733,2735,2736,2735,2733,2729,2722,2714,2703,2690,2676,2659,2641,2622,2601,2580,2557,2534,2511,2487,
+2463,2439,2415,2391,2367,2343,2319,2295,2271,2247,2223,2199,2174,2149,2124,2099,2073,2048,2022,1996,
+1971,1946,1921,1897,1873,1850,1829,1808,1788,1770,1754,1739,1725,1713,1703,1694,1687,1681,1676,1673,
+1670,1668,1667,1666,1664,1663,1660,1656,1651,1644,1635,1624,1610,1594,1575,1553,1529,1502,1473,1442,
+1409,1375,1341,1305,1270,1235,1201,1169,1138,1109,1083,1058,1037,1018,1001,987,975,966,957,950,
+944,939,933,928,922,916,909,901,892,882,872,860,847,834,821,807,793,779,765,752,
+739,727,715,703,692,681,670,660,650,640,629,619,608,597,585,574,561,549,536,523,
+510,497,484,470,457,445,432,419,407,396,384,373,363,352,343,333,324,316,307,300,
+292,285,279,272,267,261,256,251,246,241,237,233,229,225,221,218,215,212,209,207,
+205,204,203,203,204,206,208,211,215,220,225,231,238,245,252,259,266,274,281,288,
+295,301,307,312,317,322,326,330,334,337,341,344,347,350,353,357,360,363,366,370,
+373,376,379,382,385,388,390,392,394,396,397,398,399,400,400,400,400,400,399,399,
+397,396,395,393,391,388,386,383,380,377,373,369,366,362,357,353,349,345,341,337,
+333,329,325,322,318,315,313,310,308,307,306,306,306,306,308,309,311,314,317,320,
+323,327,330,333,336,338,339,339,339,338,336,333,330,326,321,316,311,306,301,297,
+294,291,290,289,290,293,296,300,306,312,319,326,333,340,346,352,357,361,363,365,
+365,364,362,359,355,351,347,343,339,335,333,331,330,330,332,334,337,342,347,352,
+358,363,369,374,379,382,385,387,387,386,384,381,376,370,363,354,345,334,323,311,
+298,284,270,256,241,226,211,196,181,167,153,140,128,117,108,101,95,92,91,91,
+94,100,107,116,127,139,153,167,181,195,209,222,233,243,251,257,261,263,263,260,
+256,250,242,234,225,215,206,197,190,183,178,174,172,171,173,176,180,186,193,200,
+208,217,225,233,241,248,254,260,265,270,275,280,284,290,296,303,311,321,333,347,
+363,381,401,423,447,473,499,527,555,584,612,639,666,691,713,734,752,767,780,789,
+795,797,797,795,789,782,773,762,751,739,728,718,708,701,695,692,691,694,699,707,
+718,732,748,765,784,805,825,846,866,886,904,920,935,948,959,969,977,983,989,994,
+999,1004,1010,1018,1027,1039,1053,1069,1088,1110,1134,1160,1189,1219,1250,1282,1314,1346,1377,1406,
+1434,1461,1484,1505,1524,1539,1552,1562,1570,1574,1576,1576,1574,1570,1564,1557,1547,1537,1525,1512,
+1499,1484,1469,1453,1438,1422,1408,1394,1381,1370,1361,1355,1352,1352,1356,1364,1377,1393,1415,1440,
+1470,1504,1541,1582,1626,1672,1719,1768,1818,1867,1916,1964,2011,2057,2100,2142,2183,2221,2258,2293,
+2327,2360,2393,2425,2457,2490,2523,2557,2592,2628,2664,2702,2740,2779,2818,2857,2896,2934,2972,3008,
+3042,3075,3106,3135,3161,3184,3205,3224,3239,3253,3264,3273,3279,3284,3287,3289,3289,3289,3287,3285,
+3281,3278,3274,3270,3265,3261,3257,3253,3249,3245,3242,3239,3237,3235,3233,3232,3232,3233,3234,3235,
+3238,3241,3244,3248,3253,3257,3263,3268,3274,3279,3285,3291,3296,3301,3306,3310,3314,3317,3320,3322,
+3323,3324,3324,3323,3321,3319,3317,3313,3310,3306,3302,3298,3294,3291,3287,3284,3281,3278,3276,3291,
+3285,3281,3277,3274,3272,3271,3269,3268,3265,3261,3256,3249,3240,3228,3214,3197,3177,3156,3132,3107,
+3080,3052,3025,2997,2971,2945,2922,2901,2882,2866,2853,2842,2834,2829,2826,2825,2825,2826,2828,2829,
+2830,2831,2830,2828,2823,2817,2809,2799,2787,2773,2756,2739,2719,2699,2677,2654,2631,2607,2583,2558,
+2533,2508,2482,2456,2430,2404,2377,2350,2322,2294,2265,2236,2206,2176,2146,2115,2084,2053,2022,1991,
+1961,1932,1903,1875,1849,1824,1800,1777,1756,1737,1719,1703,1688,1675,1663,1653,1645,1638,1632,1627,
+1623,1620,1617,1615,1613,1610,1608,1604,1600,1594,1586,1576,1564,1549,1532,1511,1488,1461,1431,1399,
+1364,1327,1288,1248,1207,1166,1125,1086,1047,1011,977,946,918,893,871,852,836,823,812,804,
+796,790,785,780,775,769,763,756,747,738,728,716,704,692,679,665,652,639,627,614,
+603,592,582,572,563,554,545,536,527,518,507,497,485,473,461,447,433,419,404,389,
+374,359,344,329,314,300,286,273,260,247,235,223,211,199,187,176,165,154,144,134,
+125,117,109,102,96,90,86,83,80,78,77,76,76,76,76,77,77,78,79,79,
+80,81,83,84,86,89,92,96,101,107,113,121,129,138,147,157,167,177,187,197,
+207,217,226,234,243,250,258,264,271,277,284,290,296,302,308,314,319,325,331,336,
+342,346,351,354,358,360,362,364,365,365,365,364,363,362,360,358,356,353,351,348,
+346,343,339,336,333,329,325,320,316,311,306,302,297,292,287,282,277,273,269,265,
+261,258,255,252,249,247,244,242,240,238,237,236,235,234,235,235,237,238,241,244,
+248,252,256,260,265,269,272,275,277,278,277,275,273,268,263,257,250,243,236,229,
+222,216,212,209,208,209,212,216,222,230,240,250,261,273,284,295,304,313,320,325,
+329,331,331,329,326,322,318,312,307,302,298,295,292,291,291,292,295,298,301,305,
+309,312,315,316,316,314,311,305,298,288,277,265,251,235,219,203,186,169,152,135,
+119,103,88,74,60,47,34,22,10,-1,-12,-23,-33,-42,-51,-59,-65,-70,-74,-76,
+-76,-74,-70,-64,-56,-46,-35,-22,-9,4,19,33,47,59,71,80,88,94,98,100,
+99,97,92,87,80,72,64,56,49,42,36,31,28,26,26,26,28,32,36,40,
+45,49,54,58,62,64,67,68,69,70,71,72,74,77,81,88,96,107,120,137,
+156,178,203,231,261,293,327,362,398,434,470,505,539,571,601,628,653,674,691,705,
+714,720,721,718,712,701,688,672,653,632,611,589,567,547,528,512,499,489,483,482,
+485,493,505,520,539,561,585,610,635,660,684,706,725,742,754,764,770,773,773,772,
+769,765,762,761,762,766,775,788,806,830,859,894,933,977,1024,1075,1127,1179,1231,1282,
+1331,1376,1417,1453,1483,1509,1528,1542,1550,1553,1551,1544,1534,1521,1505,1487,1468,1448,1428,1407,
+1388,1369,1351,1334,1320,1307,1296,1288,1283,1280,1282,1286,1295,1308,1325,1347,1374,1405,1441,1481,
+1525,1573,1624,1678,1734,1792,1850,1908,1965,2021,2075,2127,2176,2222,2265,2304,2340,2374,2404,2433,
+2459,2484,2508,2531,2554,2578,2602,2627,2653,2681,2710,2740,2771,2803,2836,2869,2903,2935,2968,2999,
+3029,3057,3084,3109,3131,3152,3170,3187,3201,3214,3226,3235,3244,3251,3258,3264,3269,3274,3278,3282,
+3285,3288,3290,3292,3293,3294,3294,3293,3292,3290,3287,3284,3280,3276,3272,3268,3264,3261,3257,3255,
+3252,3251,3251,3251,3253,3255,3259,3263,3269,3275,3283,3291,3299,3309,3318,3328,3337,3347,3356,3364,
+3372,3378,3383,3387,3390,3390,3389,3387,3382,3377,3370,3362,3353,3343,3333,3324,3314,3306,3298,3291,
+3305,3296,3290,3287,3286,3288,3293,3299,3306,3314,3321,3328,3332,3335,3335,3331,3324,3313,3299,3281,
+3260,3236,3210,3183,3154,3126,3098,3070,3045,3021,2999,2980,2962,2947,2935,2923,2914,2905,2897,2888,
+2880,2871,2860,2849,2836,2821,2804,2786,2766,2745,2723,2699,2675,2650,2625,2600,2574,2548,2523,2498,
+2472,2447,2422,2396,2370,2344,2317,2290,2261,2232,2202,2172,2140,2108,2076,2043,2011,1978,1946,1915,
+1884,1854,1826,1798,1773,1749,1726,1704,1684,1666,1648,1632,1616,1601,1587,1573,1560,1546,1533,1521,
+1508,1495,1483,1471,1459,1447,1436,1424,1413,1401,1388,1375,1361,1346,1329,1310,1289,1266,1240,1212,
+1181,1148,1112,1075,1037,997,957,918,879,842,807,774,744,717,694,674,658,645,634,627,
+621,617,614,612,610,608,605,601,596,589,582,573,563,553,542,531,520,509,499,489,
+480,471,463,456,448,441,433,425,415,405,394,381,367,352,335,318,300,281,263,244,
+226,209,192,177,163,149,137,125,115,104,94,84,74,63,52,41,29,17,4,-8,
+-20,-32,-43,-53,-62,-69,-75,-80,-82,-83,-82,-80,-77,-73,-68,-63,-58,-52,-47,-43,
+-38,-34,-31,-27,-24,-21,-17,-13,-9,-3,2,9,17,25,35,45,56,67,78,89,
+101,111,122,132,142,151,160,169,177,186,194,203,212,221,230,240,249,259,269,278,
+287,296,304,310,316,321,325,327,329,329,329,327,326,323,321,318,316,313,310,307,
+305,302,300,297,294,290,287,283,278,273,268,262,256,250,244,238,233,227,222,218,
+213,210,206,203,200,197,194,191,188,185,182,178,175,172,169,167,166,165,165,166,
+168,171,175,180,186,191,197,203,208,212,215,216,215,213,209,202,194,185,175,164,
+153,143,133,126,120,116,116,118,124,132,143,156,172,189,207,225,243,260,276,289,
+300,308,313,316,316,313,308,302,294,285,276,268,260,252,246,242,238,235,233,232,
+230,229,226,222,217,210,201,189,175,159,141,122,101,80,58,36,14,-5,-24,-41,
+-57,-70,-82,-92,-101,-108,-114,-119,-124,-128,-133,-137,-143,-148,-154,-161,-168,-175,-182,-188,
+-194,-199,-203,-206,-207,-207,-205,-201,-196,-190,-183,-174,-166,-157,-148,-139,-132,-125,-119,-115,
+-112,-111,-111,-112,-114,-117,-121,-125,-130,-134,-138,-141,-143,-145,-146,-146,-145,-143,-142,-140,
+-138,-136,-134,-133,-133,-133,-133,-134,-134,-135,-134,-132,-128,-122,-114,-103,-88,-70,-49,-24,
+3,34,68,104,141,180,219,257,295,332,367,399,430,457,481,503,521,536,548,557,
+562,564,563,559,551,540,527,510,491,469,446,422,397,372,348,325,306,290,278,271,
+269,273,283,298,319,345,374,406,440,475,509,540,569,593,611,625,631,632,627,617,
+603,586,568,549,532,518,510,507,512,525,546,577,617,664,720,781,848,917,988,1059,
+1128,1193,1253,1306,1352,1390,1419,1440,1452,1456,1453,1444,1430,1411,1390,1366,1343,1319,1297,1277,
+1260,1245,1234,1227,1224,1225,1229,1237,1249,1264,1283,1306,1332,1361,1394,1431,1471,1514,1561,1611,
+1663,1718,1775,1833,1893,1952,2011,2069,2126,2180,2232,2281,2326,2368,2406,2440,2471,2499,2525,2547,
+2568,2588,2606,2624,2642,2661,2680,2700,2722,2745,2769,2795,2822,2849,2877,2906,2935,2963,2991,3018,
+3043,3067,3090,3111,3131,3149,3165,3180,3194,3207,3218,3229,3240,3250,3260,3270,3279,3289,3298,3308,
+3316,3324,3332,3338,3344,3348,3351,3352,3351,3349,3346,3341,3335,3327,3320,3311,3302,3294,3286,3278,
+3271,3265,3261,3258,3256,3256,3257,3260,3265,3271,3279,3288,3298,3309,3322,3335,3349,3363,3378,3392,
+3406,3419,3431,3441,3449,3455,3459,3459,3457,3452,3445,3435,3422,3408,3393,3376,3360,3344,3329,3316,
+3305,3338,3330,3325,3325,3329,3337,3349,3363,3379,3397,3414,3430,3444,3454,3461,3462,3459,3450,3436,
+3416,3392,3364,3332,3297,3261,3224,3187,3151,3116,3083,3053,3024,2999,2975,2954,2935,2916,2899,2882,
+2865,2847,2829,2809,2788,2766,2742,2717,2691,2663,2635,2606,2576,2547,2518,2489,2460,2432,2404,2377,
+2350,2323,2297,2270,2243,2216,2188,2159,2130,2100,2069,2038,2006,1973,1940,1908,1875,1843,1812,1782,
+1753,1726,1700,1676,1653,1633,1613,1595,1578,1562,1546,1531,1515,1499,1482,1464,1444,1423,1401,1377,
+1352,1326,1299,1271,1243,1215,1188,1161,1135,1110,1087,1065,1044,1023,1004,985,966,946,926,904,
+881,857,831,803,774,743,712,680,648,617,587,559,534,511,491,475,462,453,446,443,
+441,442,444,447,450,452,454,454,453,450,446,440,433,424,415,405,395,385,376,367,
+359,352,345,339,334,328,321,314,305,295,282,268,252,234,214,193,171,148,126,104,
+82,62,44,28,14,2,-8,-16,-23,-30,-36,-41,-48,-55,-63,-73,-85,-97,-111,-127,
+-142,-158,-174,-189,-203,-215,-225,-232,-237,-239,-239,-236,-231,-224,-216,-207,-197,-187,-177,-168,
+-160,-152,-145,-139,-134,-129,-124,-119,-113,-108,-101,-93,-84,-75,-64,-52,-39,-26,-13,0,
+12,25,38,49,60,70,80,89,98,106,115,124,133,143,153,164,175,186,198,210,
+222,233,243,253,261,267,273,277,279,280,280,278,276,274,271,268,266,263,261,260,
+259,258,257,256,255,254,252,249,246,241,236,230,223,216,209,201,193,186,179,173,
+167,162,158,154,151,148,145,143,140,136,133,128,124,119,114,109,105,101,98,96,
+95,96,98,102,107,113,120,128,136,143,150,155,158,159,158,154,147,138,127,115,
+101,86,72,59,47,38,32,29,31,36,45,59,76,96,119,144,169,195,219,242,
+262,279,293,302,307,308,305,298,289,276,263,247,232,217,202,189,177,167,158,150,
+144,138,132,126,119,110,100,88,74,58,39,19,-2,-24,-48,-71,-93,-115,-135,-153,
+-168,-182,-193,-201,-208,-213,-216,-218,-219,-221,-222,-224,-227,-230,-235,-241,-247,-255,-264,-273,
+-282,-292,-301,-310,-318,-326,-333,-338,-343,-346,-348,-349,-350,-349,-348,-346,-344,-341,-339,-336,
+-334,-333,-332,-331,-331,-332,-333,-334,-336,-338,-340,-341,-343,-344,-345,-345,-346,-345,-345,-345,
+-344,-344,-345,-346,-347,-349,-351,-353,-354,-355,-354,-351,-345,-336,-323,-306,-285,-259,-228,-193,
+-155,-112,-68,-22,23,69,113,154,191,224,253,276,294,306,314,317,317,313,307,298,
+289,279,268,258,247,237,226,215,203,191,177,163,148,133,117,102,88,76,67,61,
+61,66,77,95,118,148,184,224,267,312,358,402,443,480,510,532,546,551,547,535,
+514,487,454,419,382,347,315,289,271,263,265,279,305,343,392,452,520,594,673,754,
+835,913,987,1053,1112,1161,1200,1228,1246,1255,1255,1247,1234,1217,1197,1177,1158,1141,1127,1118,
+1115,1117,1126,1139,1159,1183,1212,1245,1281,1320,1361,1403,1447,1492,1538,1584,1632,1680,1729,1779,
+1830,1881,1933,1985,2037,2088,2139,2189,2237,2284,2328,2369,2408,2444,2478,2509,2537,2563,2587,2610,
+2631,2652,2672,2691,2711,2731,2752,2774,2796,2818,2842,2866,2890,2915,2940,2964,2989,3013,3036,3059,
+3080,3101,3121,3140,3157,3174,3190,3205,3219,3233,3246,3259,3272,3285,3298,3310,3323,3336,3349,3361,
+3373,3384,3394,3403,3410,3415,3419,3421,3420,3417,3412,3406,3397,3387,3376,3365,3353,3341,3330,3319,
+3310,3302,3296,3291,3288,3287,3287,3289,3292,3297,3303,3310,3318,3327,3337,3348,3360,3373,3386,3400,
+3415,3430,3444,3458,3471,3482,3491,3497,3501,3502,3499,3492,3483,3470,3455,3438,3419,3400,3382,3365,
+3350,3338,3389,3384,3385,3389,3399,3413,3430,3451,3472,3495,3516,3534,3549,3559,3562,3559,3549,3531,
+3507,3475,3438,3396,3350,3301,3252,3201,3152,3105,3060,3019,2981,2948,2917,2890,2866,2845,2826,2807,
+2790,2773,2755,2736,2716,2695,2672,2647,2621,2594,2566,2537,2507,2476,2446,2415,2384,2354,2323,2293,
+2263,2232,2202,2171,2141,2109,2077,2045,2012,1979,1945,1911,1877,1843,1809,1776,1744,1712,1682,1653,
+1626,1601,1578,1556,1536,1517,1500,1484,1469,1455,1440,1425,1409,1391,1372,1351,1327,1300,1271,1239,
+1204,1167,1128,1088,1046,1004,963,922,883,845,810,778,749,722,699,677,658,640,624,608,
+592,575,558,540,520,499,477,454,430,406,383,361,341,322,307,294,284,278,275,275,
+277,282,288,295,302,309,314,318,320,320,318,314,307,298,288,277,266,255,243,233,
+224,216,209,203,199,194,190,185,180,172,164,153,139,124,106,86,64,41,17,-5,
+-28,-50,-70,-88,-104,-118,-129,-138,-145,-151,-156,-161,-166,-172,-180,-190,-201,-214,-230,-247,
+-265,-285,-304,-322,-340,-356,-369,-379,-386,-390,-390,-387,-382,-373,-363,-350,-337,-323,-310,-297,
+-284,-273,-263,-253,-245,-238,-230,-223,-216,-208,-199,-189,-177,-164,-150,-134,-117,-99,-81,-62,
+-44,-26,-8,7,22,36,48,60,70,80,90,99,107,117,126,136,147,158,169,180,
+192,203,214,223,232,239,244,248,251,251,251,249,246,242,238,234,230,226,223,221,
+219,218,217,217,216,215,214,211,208,203,198,191,183,174,164,154,144,134,125,116,
+109,102,97,93,90,88,86,85,84,83,81,79,76,72,68,64,59,54,50,46,
+43,41,41,43,46,51,57,65,73,81,90,97,103,108,110,110,107,102,93,83,
+70,55,40,24,10,-3,-14,-22,-26,-27,-22,-13,0,18,40,65,93,122,152,182,
+210,235,257,275,287,295,298,295,288,277,262,244,225,204,184,164,146,130,116,105,
+96,89,83,79,75,71,67,60,53,43,30,16,0,-20,-40,-62,-85,-107,-130,-152,
+-172,-191,-209,-225,-240,-253,-265,-276,-286,-296,-305,-315,-324,-333,-343,-352,-362,-371,-380,-389,
+-397,-404,-412,-419,-425,-431,-438,-444,-450,-456,-462,-468,-475,-481,-487,-492,-498,-503,-507,-510,
+-513,-515,-517,-519,-520,-521,-522,-523,-524,-525,-527,-529,-530,-532,-533,-534,-534,-534,-534,-533,
+-531,-530,-529,-527,-527,-527,-527,-528,-529,-530,-530,-529,-525,-519,-510,-495,-476,-452,-422,-386,
+-346,-300,-252,-201,-150,-99,-51,-6,32,65,90,107,116,116,109,96,77,53,27,0,
+-26,-52,-74,-94,-109,-120,-128,-132,-133,-132,-129,-126,-124,-122,-122,-123,-125,-127,-129,-130,
+-128,-124,-115,-101,-81,-55,-23,13,56,103,151,201,249,295,335,369,394,410,416,412,
+398,374,343,307,266,224,183,146,116,94,82,82,96,122,162,213,276,347,424,506,
+589,671,749,821,885,939,982,1015,1036,1048,1051,1048,1039,1027,1014,1003,996,993,998,1010,
+1030,1059,1095,1140,1190,1246,1306,1368,1432,1495,1558,1618,1676,1730,1781,1830,1875,1918,1958,1997,
+2035,2072,2109,2145,2181,2217,2253,2288,2323,2357,2389,2421,2451,2480,2508,2535,2560,2585,2609,2632,
+2656,2679,2703,2727,2751,2776,2800,2825,2850,2874,2899,2922,2946,2968,2990,3011,3032,3052,3071,3091,
+3109,3128,3147,3165,3184,3202,3220,3238,3256,3273,3290,3306,3322,3338,3353,3367,3381,3394,3406,3418,
+3429,3439,3449,3457,3463,3468,3471,3472,3471,3468,3463,3456,3448,3437,3426,3414,3403,3391,3380,3371,
+3362,3356,3352,3350,3349,3350,3353,3356,3361,3365,3370,3375,3379,3383,3386,3389,3392,3396,3400,3405,
+3411,3418,3426,3436,3446,3457,3468,3478,3488,3495,3500,3502,3501,3497,3489,3479,3466,3452,3437,3422,
+3408,3397,3389,3439,3440,3446,3456,3470,3489,3510,3534,3558,3581,3601,3618,3629,3633,3629,3617,3596,
+3566,3529,3484,3433,3377,3318,3258,3196,3136,3079,3024,2974,2929,2888,2853,2822,2796,2774,2755,2738,
+2724,2710,2697,2683,2669,2654,2637,2618,2598,2576,2552,2526,2498,2470,2439,2408,2376,2343,2310,2276,
+2241,2206,2171,2135,2099,2062,2026,1988,1951,1914,1876,1839,1803,1767,1731,1697,1664,1633,1603,1574,
+1548,1522,1499,1477,1457,1438,1420,1402,1386,1369,1352,1334,1316,1295,1274,1249,1223,1194,1162,1127,
+1089,1049,1006,962,917,871,824,779,735,693,654,617,584,554,528,505,485,468,452,438,
+424,411,397,382,366,348,329,309,288,266,244,223,203,184,168,154,144,136,132,131,
+132,137,143,150,159,167,175,181,186,189,189,186,181,174,165,153,141,128,115,102,
+90,80,70,63,57,52,49,47,44,42,38,34,27,19,8,-4,-19,-36,-55,-75,
+-96,-117,-137,-157,-175,-191,-206,-220,-232,-242,-252,-261,-270,-280,-290,-302,-316,-330,-347,-364,
+-383,-402,-421,-439,-456,-471,-484,-493,-500,-503,-502,-499,-492,-482,-471,-457,-443,-428,-413,-398,
+-385,-372,-360,-350,-340,-331,-323,-314,-306,-296,-286,-274,-261,-246,-229,-211,-191,-170,-149,-126,
+-103,-81,-59,-37,-17,1,19,35,51,64,77,90,101,112,123,134,145,156,167,177,
+188,199,209,218,227,234,240,244,247,248,248,246,244,240,236,231,226,221,216,212,
+208,204,201,198,195,192,189,185,180,174,167,159,150,140,129,117,106,95,84,74,
+65,57,51,46,42,40,39,38,38,39,39,39,39,38,37,35,32,29,26,23,
+21,19,19,19,21,24,28,33,39,46,53,60,67,72,77,79,80,79,76,70,
+62,53,42,30,17,4,-6,-16,-25,-30,-32,-29,-23,-13,1,20,43,69,97,127,
+157,186,213,238,259,275,286,292,293,288,279,265,249,230,210,190,171,153,139,127,
+119,114,112,112,115,119,123,127,129,129,126,121,111,99,83,64,42,18,-7,-35,
+-63,-92,-121,-150,-179,-208,-237,-265,-293,-321,-349,-375,-401,-426,-449,-470,-488,-504,-517,-527,
+-534,-539,-541,-541,-540,-538,-536,-534,-534,-536,-539,-545,-552,-562,-573,-585,-598,-611,-623,-635,
+-645,-654,-661,-667,-671,-675,-677,-679,-681,-683,-685,-687,-690,-692,-695,-696,-697,-697,-694,-691,
+-685,-677,-669,-659,-649,-638,-629,-620,-613,-607,-603,-600,-598,-597,-594,-590,-583,-572,-556,-536,
+-509,-477,-440,-398,-353,-307,-261,-216,-175,-140,-112,-93,-82,-81,-89,-106,-129,-159,-193,-228,
+-263,-297,-327,-351,-370,-381,-387,-385,-379,-367,-353,-337,-321,-305,-292,-281,-274,-270,-268,-269,
+-271,-272,-273,-271,-265,-255,-239,-218,-191,-159,-123,-84,-43,-2,35,71,101,125,142,151,
+152,146,132,113,90,65,40,17,-1,-12,-15,-9,8,38,79,131,193,263,339,420,
+501,581,657,726,787,839,879,909,927,936,937,931,921,911,901,896,898,908,929,960,
+1004,1058,1124,1199,1281,1369,1459,1551,1641,1728,1809,1884,1952,2011,2063,2107,2144,2176,2202,2225,
+2246,2265,2284,2303,2322,2343,2364,2387,2410,2434,2457,2481,2504,2526,2548,2569,2590,2610,2630,2651,
+2673,2695,2718,2741,2766,2791,2817,2843,2869,2894,2918,2942,2964,2985,3005,3024,3042,3060,3077,3095,
+3114,3133,3153,3174,3196,3218,3242,3265,3289,3313,3335,3357,3377,3395,3412,3428,3441,3453,3464,3473,
+3481,3489,3495,3501,3506,3510,3513,3515,3516,3515,3513,3508,3503,3495,3487,3477,3467,3457,3448,3440,
+3434,3430,3428,3428,3431,3436,3443,3451,3459,3467,3474,3480,3483,3484,3483,3478,3472,3464,3454,3445,
+3435,3427,3421,3417,3416,3418,3423,3430,3438,3448,3458,3468,3475,3481,3484,3485,3482,3477,3470,3462,
+3454,3446,3441,3439,3491,3496,3506,3519,3536,3557,3581,3606,3631,3654,3674,3689,3698,3699,3692,3676,
+3652,3619,3578,3530,3477,3420,3360,3298,3237,3177,3119,3065,3014,2968,2926,2889,2856,2827,2801,2779,
+2760,2742,2727,2712,2698,2683,2668,2652,2634,2615,2593,2569,2543,2514,2483,2450,2415,2378,2340,2301,
+2261,2220,2180,2139,2099,2058,2018,1978,1939,1900,1861,1823,1785,1749,1713,1678,1644,1611,1580,1550,
+1522,1494,1468,1444,1420,1397,1375,1353,1331,1310,1288,1265,1242,1218,1193,1166,1138,1109,1077,1044,
+1009,973,934,895,854,813,771,730,689,650,613,578,546,516,489,465,444,424,406,390,
+373,357,340,323,304,283,261,238,214,190,165,140,117,95,75,57,42,29,20,14,
+11,10,12,15,20,26,32,39,44,49,52,54,54,51,47,40,32,23,12,1,
+-10,-22,-33,-43,-52,-59,-65,-70,-74,-76,-79,-81,-83,-86,-91,-97,-104,-114,-125,-138,
+-152,-168,-185,-202,-220,-237,-254,-271,-287,-302,-317,-332,-346,-360,-374,-388,-403,-419,-434,-450,
+-465,-480,-495,-508,-520,-530,-538,-544,-547,-547,-545,-540,-534,-525,-515,-504,-492,-480,-468,-456,
+-445,-434,-423,-414,-404,-395,-386,-377,-367,-356,-345,-332,-319,-304,-287,-270,-252,-232,-212,-191,
+-170,-149,-127,-106,-85,-64,-44,-25,-6,11,29,45,62,77,92,107,120,134,146,158,
+170,181,191,200,208,216,222,228,232,235,237,239,238,237,236,233,229,225,221,216,
+211,205,200,194,188,182,176,169,162,155,147,138,130,120,111,101,91,81,72,63,
+55,48,41,36,32,28,25,23,22,21,20,20,19,18,18,17,16,16,16,16,
+16,17,19,21,24,28,32,37,42,48,53,59,64,69,73,77,80,82,83,84,
+83,80,77,72,67,60,53,46,39,32,27,23,21,22,27,35,47,62,81,103,
+128,154,181,208,233,255,275,289,299,304,304,298,289,276,260,243,227,211,198,188,
+182,180,183,189,198,210,224,238,251,262,270,274,274,269,259,244,224,201,173,143,
+110,75,38,0,-38,-79,-120,-161,-204,-247,-290,-333,-375,-416,-454,-490,-522,-550,-573,-591,
+-603,-610,-612,-610,-605,-598,-590,-582,-576,-572,-572,-576,-584,-596,-612,-631,-652,-674,-697,-719,
+-739,-757,-772,-784,-793,-800,-805,-808,-810,-813,-815,-819,-823,-827,-832,-837,-840,-841,-840,-835,
+-826,-814,-797,-776,-752,-725,-698,-671,-645,-622,-602,-586,-575,-569,-567,-567,-570,-573,-576,-577,
+-574,-566,-553,-535,-511,-483,-451,-417,-383,-351,-323,-300,-283,-275,-274,-281,-296,-318,-344,-374,
+-405,-435,-462,-485,-502,-512,-515,-512,-503,-489,-471,-451,-431,-411,-394,-381,-372,-368,-368,-372,
+-379,-388,-398,-407,-414,-419,-419,-415,-407,-394,-376,-356,-332,-307,-282,-257,-234,-213,-196,-182,
+-172,-165,-161,-159,-158,-157,-154,-148,-138,-122,-99,-69,-30,17,73,137,208,284,364,446,
+527,605,678,744,800,846,881,903,915,915,907,893,874,855,839,827,825,833,855,891,
+943,1009,1090,1183,1286,1397,1511,1626,1739,1847,1946,2036,2115,2181,2235,2278,2310,2334,2350,2361,
+2369,2375,2382,2390,2400,2413,2429,2447,2468,2491,2514,2538,2561,2583,2604,2623,2642,2659,2675,2691,
+2707,2724,2741,2760,2780,2802,2824,2847,2871,2895,2919,2942,2964,2985,3005,3024,3042,3060,3078,3097,
+3116,3137,3159,3182,3208,3235,3262,3291,3320,3349,3376,3403,3427,3449,3468,3485,3499,3511,3520,3528,
+3535,3541,3546,3552,3557,3563,3570,3576,3582,3587,3591,3594,3595,3593,3590,3585,3577,3569,3560,3552,
+3544,3538,3534,3533,3535,3540,3549,3559,3571,3584,3596,3607,3615,3620,3620,3616,3607,3593,3576,3555,
+3533,3510,3488,3468,3451,3437,3429,3424,3425,3429,3437,3447,3458,3470,3480,3489,3495,3499,3500,3499,
+3496,3493,3491,3490,3491,3574,3580,3590,3603,3621,3641,3664,3689,3712,3735,3753,3768,3776,3778,3773,
+3761,3741,3715,3683,3646,3604,3559,3512,3462,3412,3362,3312,3262,3212,3164,3116,3070,3026,2984,2944,
+2907,2873,2842,2814,2789,2766,2745,2725,2706,2686,2665,2642,2616,2587,2554,2518,2479,2437,2393,2347,
+2300,2253,2207,2161,2117,2074,2033,1994,1956,1919,1883,1847,1811,1775,1740,1704,1669,1634,1599,1565,
+1532,1500,1468,1438,1408,1380,1352,1324,1297,1270,1243,1216,1189,1162,1134,1107,1079,1051,1023,995,
+965,935,905,873,840,806,772,737,701,666,630,596,563,531,501,473,446,421,396,373,
+350,328,305,282,258,233,207,181,155,129,104,79,56,35,15,-1,-17,-30,-41,-51,
+-59,-66,-71,-75,-78,-81,-82,-83,-83,-82,-81,-79,-77,-75,-74,-73,-73,-75,-78,-82,
+-88,-95,-104,-113,-123,-134,-144,-154,-163,-171,-179,-185,-191,-196,-201,-205,-210,-216,-222,-229,
+-238,-248,-258,-270,-283,-297,-311,-326,-341,-357,-372,-387,-402,-417,-432,-446,-460,-474,-487,-500,
+-511,-522,-531,-540,-546,-552,-556,-558,-559,-559,-557,-554,-551,-546,-541,-536,-530,-524,-518,-512,
+-505,-497,-489,-480,-470,-460,-448,-435,-420,-405,-388,-371,-353,-334,-315,-296,-277,-259,-240,-222,
+-205,-187,-170,-153,-135,-118,-100,-81,-62,-43,-23,-3,16,36,55,74,91,108,124,138,
+150,161,171,180,187,193,199,203,208,211,214,217,219,221,222,222,221,219,216,212,
+207,201,195,187,178,170,160,151,142,132,123,115,106,98,91,84,77,71,65,60,
+54,50,45,40,36,32,28,24,20,16,13,9,6,4,2,0,0,0,1,4,
+7,12,18,24,32,39,47,55,63,70,77,83,89,94,98,103,107,111,116,120,
+124,129,133,136,138,140,140,138,135,130,125,118,112,106,101,98,98,101,108,119,
+133,151,172,195,218,242,263,282,297,308,313,313,308,298,285,270,253,238,224,213,
+207,206,210,220,234,253,274,297,320,342,360,375,384,387,384,374,359,338,313,283,
+250,215,178,140,101,61,21,-20,-62,-106,-150,-196,-242,-288,-333,-377,-419,-456,-490,-518,
+-540,-556,-566,-570,-570,-566,-560,-553,-546,-542,-542,-547,-556,-571,-592,-617,-645,-676,-709,-741,
+-771,-798,-822,-842,-858,-870,-878,-884,-889,-892,-896,-901,-907,-914,-923,-931,-939,-946,-949,-948,
+-941,-929,-909,-883,-851,-813,-771,-727,-683,-639,-600,-565,-536,-515,-502,-496,-498,-505,-516,-531,
+-545,-559,-570,-578,-580,-577,-569,-556,-541,-523,-505,-488,-474,-464,-460,-461,-468,-480,-497,-517,
+-539,-560,-580,-597,-609,-616,-617,-613,-603,-590,-574,-556,-538,-522,-509,-499,-494,-493,-497,-504,
+-513,-524,-535,-545,-553,-558,-560,-557,-551,-541,-529,-514,-498,-482,-467,-453,-440,-430,-421,-413,
+-407,-400,-393,-383,-371,-355,-335,-309,-277,-238,-194,-142,-84,-19,50,124,203,285,368,452,
+533,611,684,749,806,852,888,911,922,921,910,891,865,836,808,783,764,757,762,783,
+821,877,950,1040,1144,1260,1384,1513,1641,1767,1886,1994,2091,2174,2242,2295,2336,2364,2382,2392,
+2398,2401,2403,2407,2415,2425,2441,2460,2483,2510,2538,2567,2595,2623,2649,2672,2693,2711,2727,2742,
+2756,2769,2782,2797,2812,2829,2847,2867,2888,2910,2933,2956,2978,3001,3022,3043,3064,3084,3104,3125,
+3146,3168,3191,3215,3241,3268,3297,3326,3355,3385,3413,3441,3466,3490,3511,3529,3545,3558,3569,3579,
+3587,3595,3603,3611,3620,3630,3641,3653,3666,3679,3691,3702,3711,3718,3721,3721,3719,3713,3704,3694,
+3683,3673,3664,3657,3654,3655,3660,3669,3682,3697,3715,3732,3749,3763,3773,3777,3776,3768,3754,3734,
+3709,3680,3649,3618,3589,3562,3539,3522,3510,3504,3504,3508,3516,3526,3537,3548,3558,3566,3572,3575,
+3576,3575,3573,3572,3572,3574,3699,3704,3713,3726,3742,3760,3780,3800,3819,3836,3850,3859,3864,3863,
+3858,3847,3833,3815,3794,3770,3745,3717,3688,3657,3623,3585,3544,3498,3448,3394,3336,3274,3211,3147,
+3084,3024,2968,2917,2872,2834,2802,2776,2755,2736,2720,2702,2683,2660,2632,2599,2560,2516,2467,2415,
+2360,2306,2251,2199,2150,2104,2062,2023,1987,1954,1922,1891,1859,1827,1793,1758,1721,1683,1644,1604,
+1565,1525,1487,1450,1414,1380,1347,1315,1283,1253,1223,1193,1164,1135,1107,1079,1052,1027,1002,978,
+954,931,907,883,858,831,802,770,737,702,665,626,588,549,510,472,436,401,368,336,
+306,277,249,221,195,169,144,119,96,74,53,35,19,5,-6,-16,-24,-31,-39,-46,
+-54,-63,-73,-86,-99,-114,-129,-144,-159,-172,-183,-192,-198,-202,-203,-202,-200,-196,-193,-190,
+-188,-188,-190,-194,-201,-210,-220,-232,-244,-257,-269,-281,-291,-301,-310,-317,-323,-329,-335,-340,
+-345,-351,-357,-364,-371,-380,-389,-399,-409,-420,-431,-443,-455,-467,-479,-491,-503,-515,-526,-537,
+-547,-556,-565,-573,-579,-585,-590,-594,-597,-600,-602,-604,-605,-606,-607,-607,-606,-605,-603,-600,
+-596,-591,-583,-574,-563,-549,-534,-516,-496,-475,-452,-427,-402,-376,-350,-325,-300,-276,-253,-231,
+-210,-191,-172,-155,-138,-120,-103,-86,-67,-48,-28,-7,13,35,56,78,98,118,136,152,
+166,177,187,195,201,205,208,210,212,213,214,215,216,216,217,217,216,215,212,209,
+203,197,189,179,169,158,146,134,123,111,100,90,81,73,66,60,54,49,45,41,
+38,34,31,27,23,20,16,12,8,4,0,-3,-6,-8,-10,-11,-11,-10,-7,-3,
+1,9,17,27,37,48,60,71,82,93,103,112,120,127,133,139,145,152,158,165,
+173,181,189,197,205,211,216,220,220,219,215,208,200,190,180,171,163,157,155,156,
+162,171,185,201,220,239,258,276,290,299,304,302,295,282,265,245,223,201,181,164,
+152,146,147,156,170,191,217,245,275,304,331,354,371,382,386,382,371,354,331,304,
+274,241,208,174,141,108,76,44,12,-19,-52,-86,-122,-159,-198,-237,-276,-313,-349,-382,
+-410,-434,-453,-466,-475,-479,-480,-479,-477,-477,-478,-484,-494,-509,-529,-554,-584,-617,-652,-687,
+-722,-755,-784,-810,-832,-850,-864,-875,-885,-893,-901,-910,-919,-930,-942,-955,-966,-977,-983,-986,
+-982,-972,-954,-929,-896,-856,-810,-761,-709,-658,-609,-565,-527,-496,-474,-460,-456,-460,-470,-487,
+-507,-529,-551,-572,-591,-605,-616,-623,-625,-625,-623,-621,-619,-618,-621,-627,-637,-651,-667,-685,
+-705,-723,-740,-754,-763,-767,-766,-760,-749,-735,-718,-701,-684,-670,-659,-652,-649,-650,-655,-663,
+-672,-681,-688,-692,-692,-687,-677,-661,-641,-617,-590,-563,-536,-512,-491,-474,-461,-453,-449,-447,
+-447,-448,-447,-443,-435,-420,-400,-372,-337,-294,-245,-190,-129,-64,5,77,151,227,303,379,
+454,527,597,663,723,776,821,857,882,896,900,893,877,854,826,796,767,744,729,726,
+738,767,814,880,965,1066,1181,1308,1441,1578,1713,1843,1964,2073,2168,2249,2314,2365,2402,2427,
+2444,2454,2461,2466,2472,2480,2492,2507,2526,2549,2575,2602,2630,2657,2684,2708,2731,2751,2769,2786,
+2801,2815,2829,2843,2859,2875,2892,2911,2931,2952,2973,2995,3016,3038,3060,3082,3103,3125,3146,3168,
+3190,3213,3237,3262,3287,3313,3339,3366,3393,3420,3446,3471,3496,3519,3541,3561,3579,3596,3611,3625,
+3637,3650,3662,3674,3686,3700,3714,3729,3745,3761,3778,3793,3807,3819,3828,3834,3836,3835,3830,3822,
+3812,3800,3789,3780,3773,3770,3772,3778,3790,3806,3827,3850,3874,3897,3918,3935,3946,3950,3948,3937,
+3920,3896,3868,3836,3803,3770,3740,3713,3692,3675,3665,3660,3661,3665,3671,3679,3688,3695,3700,3704,
+3705,3704,3702,3699,3697,3697,3699,3836,3844,3855,3870,3887,3905,3922,3939,3952,3961,3966,3965,3959,
+3949,3935,3918,3900,3882,3864,3848,3833,3819,3805,3790,3771,3746,3715,3675,3625,3566,3497,3421,3338,
+3252,3166,3083,3005,2936,2877,2829,2792,2766,2748,2737,2729,2722,2712,2697,2675,2644,2605,2557,2503,
+2443,2380,2317,2255,2197,2144,2096,2055,2018,1987,1958,1932,1905,1878,1848,1815,1779,1739,1698,1654,
+1610,1566,1523,1482,1442,1405,1371,1338,1306,1275,1244,1214,1183,1153,1122,1093,1064,1036,1010,986,
+964,943,924,904,883,861,837,809,778,742,704,661,617,570,523,477,432,390,350,313,
+279,249,221,195,172,150,129,110,92,75,60,47,37,28,22,18,15,12,10,6,
+0,-8,-21,-38,-59,-84,-112,-142,-173,-204,-233,-259,-282,-300,-314,-322,-327,-328,-327,-324,
+-320,-316,-314,-313,-315,-319,-325,-333,-343,-353,-364,-374,-384,-393,-401,-407,-413,-418,-422,-426,
+-430,-434,-438,-442,-447,-452,-458,-464,-471,-478,-485,-493,-501,-510,-520,-529,-540,-551,-562,-573,
+-585,-596,-608,-619,-629,-639,-648,-657,-664,-671,-676,-680,-683,-685,-685,-683,-680,-676,-670,-663,
+-655,-645,-634,-622,-609,-595,-580,-564,-546,-528,-508,-486,-464,-439,-414,-387,-360,-331,-303,-274,
+-246,-218,-191,-166,-141,-117,-94,-72,-51,-30,-9,10,31,52,73,93,114,133,152,169,
+184,197,209,218,225,230,234,235,236,236,235,234,232,231,229,227,225,221,218,213,
+206,199,190,180,169,157,144,132,119,107,95,85,75,66,58,50,44,38,32,26,
+21,16,11,6,1,-2,-5,-8,-10,-12,-12,-12,-10,-8,-6,-2,1,6,11,17,
+24,32,41,51,61,72,83,95,107,118,129,140,150,159,168,176,184,193,201,210,
+219,229,239,248,258,266,273,277,280,279,276,270,261,251,240,228,218,209,203,200,
+201,207,216,229,244,260,276,290,300,307,307,301,289,270,246,218,187,156,126,100,
+79,64,58,59,68,84,107,134,163,193,222,246,266,280,286,285,277,261,240,215,
+186,156,125,94,65,37,11,-11,-34,-55,-76,-97,-119,-143,-167,-193,-220,-248,-276,-303,
+-329,-352,-372,-389,-402,-412,-419,-424,-427,-431,-435,-441,-449,-461,-477,-496,-519,-545,-572,-601,
+-630,-658,-685,-709,-732,-752,-770,-787,-803,-819,-835,-852,-870,-888,-907,-924,-939,-951,-958,-959,
+-953,-940,-918,-890,-854,-813,-768,-721,-674,-629,-588,-552,-523,-501,-487,-482,-483,-492,-505,-523,
+-543,-565,-586,-606,-623,-638,-650,-659,-666,-670,-674,-678,-683,-690,-700,-713,-729,-749,-771,-795,
+-819,-842,-864,-881,-894,-901,-902,-898,-887,-872,-854,-834,-814,-796,-780,-768,-761,-758,-759,-764,
+-770,-776,-780,-781,-776,-765,-748,-723,-692,-655,-615,-573,-531,-491,-455,-425,-401,-383,-372,-366,
+-365,-365,-366,-366,-362,-353,-338,-316,-287,-251,-208,-160,-108,-53,3,62,120,178,236,294,
+351,407,464,521,576,630,682,731,774,811,840,861,873,875,869,855,837,817,797,782,
+775,780,799,835,889,961,1052,1159,1279,1411,1548,1688,1827,1959,2083,2194,2292,2374,2442,2495,
+2535,2564,2585,2600,2610,2618,2627,2636,2647,2660,2675,2691,2709,2727,2745,2763,2780,2796,2812,2827,
+2842,2858,2875,2892,2910,2930,2950,2971,2992,3013,3033,3053,3071,3090,3107,3124,3142,3160,3179,3199,
+3221,3244,3268,3294,3320,3347,3374,3401,3427,3453,3479,3503,3527,3550,3573,3595,3616,3637,3658,3677,
+3696,3714,3731,3747,3762,3777,3791,3806,3820,3834,3848,3862,3875,3887,3898,3907,3914,3918,3919,3918,
+3915,3910,3904,3899,3895,3894,3897,3904,3916,3932,3953,3978,4005,4033,4060,4085,4105,4119,4127,4127,
+4119,4105,4084,4058,4029,3998,3967,3938,3912,3890,3873,3861,3854,3850,3849,3850,3852,3854,3854,3853,
+3851,3847,3842,3837,3833,3831,3832,3836,3949,3962,3980,4001,4024,4047,4069,4087,4099,4104,4102,4092,
+4075,4052,4025,3996,3967,3940,3918,3900,3888,3881,3877,3875,3870,3861,3844,3816,3775,3720,3652,3570,
+3478,3379,3277,3177,3082,2996,2923,2865,2821,2791,2773,2764,2761,2759,2755,2744,2724,2694,2652,2600,
+2539,2472,2401,2329,2261,2197,2140,2091,2050,2016,1987,1962,1939,1916,1890,1862,1828,1791,1750,1706,
+1661,1615,1571,1529,1490,1455,1422,1392,1364,1337,1309,1280,1250,1218,1184,1149,1113,1078,1045,1014,
+986,961,939,918,899,880,859,836,809,777,740,700,655,608,559,511,465,421,382,348,
+318,294,273,257,242,229,216,203,188,173,157,141,125,109,94,81,69,58,47,37,
+26,12,-3,-23,-47,-76,-108,-143,-181,-220,-258,-294,-328,-357,-381,-401,-415,-425,-430,-433,
+-434,-434,-433,-434,-435,-437,-441,-446,-451,-457,-462,-467,-471,-474,-476,-477,-477,-478,-478,-479,
+-481,-483,-487,-491,-496,-502,-508,-514,-520,-526,-532,-538,-544,-551,-558,-566,-574,-584,-594,-605,
+-617,-630,-643,-655,-668,-680,-691,-700,-708,-714,-718,-719,-717,-711,-703,-691,-677,-659,-640,-619,
+-597,-575,-554,-535,-517,-503,-491,-482,-475,-470,-467,-464,-460,-455,-447,-435,-420,-401,-378,-351,
+-321,-289,-255,-221,-187,-154,-122,-93,-66,-41,-18,2,21,39,56,73,90,106,123,139,
+155,169,183,196,206,215,223,228,232,234,235,234,233,231,229,226,222,218,213,207,
+200,193,184,175,164,153,142,130,119,108,98,88,80,72,65,58,51,45,39,32,
+25,18,10,3,-2,-8,-12,-14,-15,-14,-11,-6,0,8,17,26,36,46,55,65,
+74,82,90,99,107,116,125,134,144,154,165,176,187,197,208,218,229,239,249,259,
+270,280,290,299,308,316,322,326,328,327,324,318,310,300,290,279,269,261,255,253,
+254,259,268,280,295,310,325,338,348,353,352,345,331,311,285,255,221,186,152,121,
+94,72,58,51,52,59,71,88,108,128,147,163,174,181,181,176,164,148,126,102,
+75,46,18,-9,-36,-61,-85,-106,-127,-146,-164,-181,-198,-214,-231,-248,-264,-281,-297,-312,
+-327,-340,-353,-364,-373,-381,-388,-394,-400,-406,-412,-420,-429,-439,-452,-466,-482,-499,-517,-535,
+-553,-570,-587,-602,-617,-632,-647,-663,-682,-702,-726,-752,-780,-810,-839,-866,-889,-906,-915,-915,
+-905,-885,-855,-816,-771,-721,-670,-621,-576,-538,-509,-491,-483,-486,-498,-519,-546,-576,-609,-641,
+-670,-696,-717,-732,-741,-746,-745,-741,-734,-725,-717,-710,-705,-703,-705,-712,-723,-739,-758,-781,
+-806,-833,-859,-883,-904,-920,-932,-937,-937,-930,-918,-902,-883,-863,-843,-825,-809,-797,-788,-783,
+-781,-780,-780,-778,-774,-765,-750,-730,-703,-670,-632,-591,-547,-504,-462,-424,-391,-363,-340,-324,
+-312,-304,-298,-292,-284,-273,-257,-236,-209,-175,-136,-93,-46,2,51,100,147,192,234,273,
+311,348,384,421,459,499,541,585,630,675,719,760,796,827,852,870,881,886,887,885,
+885,887,897,916,948,993,1055,1132,1224,1330,1448,1573,1703,1834,1962,2083,2195,2296,2384,2459,
+2521,2570,2610,2640,2664,2684,2701,2717,2732,2748,2764,2781,2798,2814,2829,2843,2856,2868,2879,2890,
+2902,2915,2930,2947,2967,2988,3011,3035,3059,3082,3104,3124,3141,3156,3169,3181,3191,3202,3215,3229,
+3246,3266,3288,3314,3342,3372,3402,3433,3463,3492,3520,3547,3573,3598,3622,3645,3669,3693,3716,3740,
+3763,3786,3807,3827,3845,3862,3877,3890,3903,3914,3926,3937,3949,3960,3972,3984,3995,4006,4015,4022,
+4027,4031,4034,4036,4039,4042,4048,4056,4069,4085,4105,4128,4154,4181,4208,4233,4256,4273,4285,4290,
+4289,4281,4266,4246,4223,4197,4170,4144,4119,4098,4079,4064,4052,4043,4035,4029,4023,4016,4009,4000,
+3989,3978,3966,3955,3946,3940,3938,3941,3949,4039,4055,4076,4103,4132,4163,4191,4216,4234,4243,4243,
+4233,4212,4183,4148,4108,4068,4031,3999,3974,3959,3952,3953,3960,3970,3978,3980,3973,3952,3915,3861,
+3790,3703,3605,3498,3388,3280,3179,3089,3012,2951,2905,2873,2852,2839,2828,2816,2799,2774,2738,2691,
+2634,2568,2495,2420,2345,2273,2208,2151,2102,2062,2030,2003,1980,1959,1936,1910,1881,1846,1807,1764,
+1719,1673,1628,1586,1547,1512,1481,1453,1428,1404,1380,1354,1326,1294,1259,1220,1179,1138,1096,1057,
+1020,987,959,934,912,892,873,852,830,803,772,736,696,653,608,563,520,481,447,419,
+397,381,371,365,361,357,352,344,332,315,292,265,234,200,164,128,93,59,27,-1,
+-28,-54,-79,-104,-130,-157,-186,-216,-248,-280,-312,-344,-373,-400,-424,-444,-460,-473,-483,-490,
+-496,-502,-507,-512,-518,-525,-532,-539,-545,-550,-554,-557,-557,-556,-553,-549,-545,-542,-539,-538,
+-539,-541,-546,-551,-558,-566,-574,-581,-588,-593,-598,-602,-605,-608,-610,-614,-618,-623,-628,-636,
+-644,-653,-662,-671,-681,-689,-697,-703,-707,-709,-707,-702,-693,-679,-661,-639,-612,-581,-547,-511,
+-474,-437,-403,-371,-345,-325,-312,-306,-306,-313,-325,-341,-358,-375,-390,-401,-407,-406,-398,-383,
+-362,-334,-302,-267,-230,-193,-157,-123,-93,-65,-42,-21,-4,11,25,38,51,65,79,94,
+110,126,142,157,171,184,195,204,210,214,216,216,215,212,209,204,199,194,189,183,
+176,169,162,153,144,134,124,113,102,92,82,74,66,59,53,49,44,40,36,32,
+27,22,16,11,5,1,-2,-4,-4,-2,2,9,18,28,40,53,66,78,90,101,
+111,120,129,137,145,153,162,171,181,193,205,217,231,244,257,270,283,295,306,317,
+327,337,345,353,361,367,372,375,376,376,373,368,362,355,347,338,331,325,321,320,
+322,328,336,348,361,376,390,403,414,421,423,420,411,396,376,352,325,297,269,242,
+218,198,183,174,169,168,170,175,180,184,185,184,178,168,154,136,114,90,65,40,
+14,-10,-34,-56,-78,-100,-121,-142,-164,-186,-209,-231,-254,-275,-295,-313,-329,-341,-351,-357,
+-361,-363,-363,-363,-361,-360,-360,-361,-363,-366,-372,-379,-387,-398,-410,-423,-437,-452,-466,-480,
+-493,-505,-515,-524,-532,-539,-547,-557,-570,-587,-609,-636,-669,-705,-743,-781,-816,-845,-865,-872,
+-867,-847,-813,-766,-709,-647,-582,-521,-466,-424,-396,-385,-391,-415,-453,-504,-564,-628,-692,-753,
+-807,-851,-885,-908,-919,-920,-912,-896,-876,-853,-828,-804,-781,-761,-745,-733,-726,-723,-726,-733,
+-745,-762,-781,-803,-827,-851,-873,-894,-911,-924,-931,-934,-931,-924,-913,-899,-883,-866,-850,-834,
+-820,-807,-795,-785,-774,-762,-748,-732,-712,-689,-663,-633,-601,-568,-534,-501,-469,-440,-414,-391,
+-372,-355,-340,-326,-311,-295,-276,-252,-223,-189,-150,-106,-59,-8,43,95,146,194,238,278,
+313,344,371,395,417,439,462,487,514,545,580,618,658,700,742,784,825,863,898,930,
+960,988,1017,1047,1081,1120,1167,1222,1286,1360,1442,1531,1627,1725,1823,1920,2011,2096,2173,2240,
+2298,2347,2389,2425,2459,2491,2523,2557,2595,2635,2678,2723,2768,2811,2852,2889,2920,2946,2967,2982,
+2994,3004,3014,3024,3036,3051,3069,3090,3114,3139,3164,3188,3210,3228,3243,3256,3265,3273,3281,3290,
+3301,3316,3334,3356,3382,3412,3444,3477,3511,3544,3576,3606,3634,3661,3686,3710,3734,3757,3781,3805,
+3829,3853,3877,3899,3920,3939,3957,3973,3988,4003,4017,4033,4049,4066,4084,4103,4122,4141,4158,4173,
+4185,4194,4201,4205,4208,4210,4213,4218,4226,4238,4254,4273,4296,4322,4348,4373,4396,4416,4430,4437,
+4439,4434,4423,4407,4387,4365,4342,4319,4298,4279,4263,4249,4237,4227,4218,4209,4199,4187,4173,4157,
+4139,4119,4098,4078,4059,4044,4034,4029,4031,4039,4142,4150,4165,4186,4213,4243,4274,4303,4327,4345,
+4354,4351,4338,4313,4279,4238,4192,4147,4105,4070,4044,4030,4028,4035,4050,4069,4087,4099,4100,4087,
+4055,4004,3933,3845,3744,3633,3518,3405,3297,3200,3116,3046,2991,2947,2912,2883,2856,2827,2792,2751,
+2701,2642,2577,2508,2436,2365,2298,2237,2183,2138,2100,2069,2042,2019,1996,1972,1944,1912,1875,1834,
+1790,1744,1697,1651,1608,1568,1533,1501,1472,1445,1420,1393,1365,1334,1300,1263,1223,1181,1139,1098,
+1059,1024,992,964,940,919,899,879,857,832,803,771,734,694,652,609,569,532,501,476,
+458,446,440,439,439,440,438,431,418,398,369,332,288,238,184,128,71,16,-36,-84,
+-127,-166,-201,-231,-258,-283,-307,-329,-352,-373,-395,-415,-435,-454,-471,-486,-499,-510,-520,-530,
+-538,-548,-557,-568,-579,-590,-602,-613,-624,-632,-639,-643,-645,-644,-642,-638,-635,-631,-629,-629,
+-632,-636,-643,-651,-660,-669,-678,-685,-691,-694,-694,-693,-689,-685,-679,-674,-669,-665,-663,-662,
+-662,-664,-667,-670,-673,-676,-679,-680,-681,-679,-675,-668,-658,-645,-627,-604,-577,-546,-510,-471,
+-430,-389,-348,-309,-275,-247,-226,-214,-209,-212,-223,-239,-259,-281,-302,-320,-334,-341,-342,-335,
+-320,-299,-273,-242,-210,-177,-144,-114,-87,-63,-42,-25,-10,3,15,28,42,58,75,93,
+113,134,154,174,192,207,220,228,233,235,232,227,220,211,201,190,180,171,162,154,
+147,140,134,127,119,110,100,90,78,66,55,43,33,24,17,11,7,5,3,3,
+3,3,3,2,2,2,2,2,5,8,14,21,30,40,52,65,77,90,102,113,
+123,133,142,151,160,170,181,193,207,222,238,255,273,290,307,323,337,351,363,373,
+382,390,397,402,407,412,415,418,419,420,419,418,415,411,407,403,399,396,395,395,
+397,401,407,416,425,436,447,458,467,473,477,477,474,467,456,442,425,408,391,374,
+360,348,339,333,330,329,328,327,324,317,307,291,271,245,216,183,148,114,80,49,
+21,-3,-24,-44,-62,-79,-98,-119,-143,-170,-200,-233,-266,-300,-331,-359,-381,-399,-410,-415,
+-414,-409,-400,-389,-378,-367,-356,-348,-341,-336,-334,-333,-333,-335,-339,-345,-353,-363,-375,-389,
+-405,-421,-436,-451,-465,-477,-488,-498,-509,-522,-537,-558,-584,-616,-652,-693,-734,-773,-805,-828,
+-836,-829,-804,-761,-703,-633,-557,-478,-405,-344,-298,-274,-272,-295,-339,-403,-481,-570,-661,-752,
+-835,-907,-967,-1011,-1040,-1055,-1058,-1051,-1036,-1016,-992,-967,-941,-917,-893,-871,-851,-833,-818,-807,
+-799,-796,-798,-806,-819,-838,-860,-886,-915,-943,-971,-995,-1016,-1032,-1042,-1047,-1045,-1038,-1025,-1009,
+-989,-967,-944,-919,-894,-869,-844,-819,-794,-770,-745,-720,-695,-669,-644,-619,-594,-570,-547,-526,
+-506,-487,-470,-453,-438,-421,-404,-384,-361,-334,-302,-264,-221,-172,-119,-62,-3,56,116,172,
+225,273,314,349,377,400,418,434,448,463,480,502,529,563,604,652,706,765,827,892,
+957,1022,1086,1146,1205,1261,1316,1369,1423,1477,1533,1590,1649,1707,1766,1821,1874,1921,1961,1995,
+2022,2043,2061,2076,2093,2115,2144,2182,2231,2293,2366,2449,2539,2632,2725,2815,2896,2967,3025,3069,
+3100,3119,3129,3133,3133,3133,3135,3142,3154,3171,3193,3218,3245,3272,3298,3320,3339,3355,3368,3379,
+3389,3401,3415,3432,3453,3478,3507,3538,3571,3604,3637,3669,3699,3726,3752,3776,3800,3823,3846,3870,
+3894,3918,3942,3966,3989,4010,4031,4051,4071,4091,4111,4134,4158,4185,4214,4244,4275,4304,4331,4354,
+4372,4385,4391,4392,4389,4383,4376,4370,4367,4369,4377,4392,4412,4438,4467,4498,4528,4554,4576,4591,
+4598,4597,4589,4575,4556,4533,4509,4486,4465,4446,4430,4418,4409,4401,4394,4387,4379,4369,4356,4339,
+4320,4298,4274,4248,4223,4199,4177,4160,4147,4141,4142,4290,4280,4277,4281,4290,4307,4328,4352,4377,
+4400,4417,4426,4426,4413,4388,4353,4309,4260,4210,4163,4122,4092,4073,4067,4072,4085,4102,4119,4129,
+4127,4110,4074,4019,3944,3852,3747,3633,3516,3400,3291,3191,3104,3029,2966,2914,2870,2830,2791,2752,
+2709,2661,2609,2552,2492,2431,2371,2314,2261,2213,2171,2134,2102,2074,2047,2020,1993,1963,1929,1893,
+1853,1810,1765,1720,1675,1631,1589,1548,1510,1474,1440,1406,1372,1337,1302,1266,1229,1193,1156,1121,
+1088,1058,1030,1005,983,962,941,919,895,869,839,804,767,726,685,643,603,567,536,511,
+491,478,470,465,461,457,450,438,420,394,359,317,267,212,152,90,28,-32,-89,-141,
+-188,-229,-265,-296,-322,-345,-366,-384,-402,-420,-438,-455,-474,-492,-509,-527,-543,-559,-574,-589,
+-603,-617,-631,-645,-658,-672,-685,-697,-708,-717,-724,-729,-731,-731,-729,-727,-725,-723,-723,-724,
+-729,-735,-744,-754,-764,-774,-783,-789,-791,-791,-786,-778,-767,-754,-739,-724,-710,-696,-685,-675,
+-667,-661,-657,-654,-652,-651,-650,-649,-648,-648,-646,-644,-641,-636,-628,-618,-604,-586,-564,-538,
+-509,-477,-444,-411,-378,-349,-323,-303,-288,-279,-275,-276,-280,-285,-291,-296,-297,-294,-286,-273,
+-255,-234,-209,-182,-155,-129,-105,-84,-66,-52,-39,-29,-19,-9,1,16,33,54,78,106,
+135,165,195,224,249,269,284,294,297,293,285,271,254,234,213,192,172,154,138,125,
+115,107,100,95,89,84,77,68,58,46,34,21,8,-4,-14,-23,-29,-33,-34,-33,
+-30,-26,-22,-17,-12,-7,-2,1,7,12,19,28,37,48,60,73,87,100,114,126,
+138,150,161,172,184,196,209,224,240,257,276,295,314,333,351,367,382,395,406,415,
+422,429,434,438,442,446,449,452,454,456,457,458,458,458,457,457,457,457,458,460,
+462,465,469,474,479,484,489,494,497,500,500,499,496,491,484,474,464,452,441,431,
+422,416,412,410,412,414,418,421,422,419,412,398,378,352,320,283,244,203,162,123,
+88,56,29,4,-18,-40,-63,-90,-120,-156,-196,-241,-287,-334,-379,-420,-455,-481,-498,-507,
+-508,-502,-491,-477,-462,-447,-433,-421,-410,-399,-388,-376,-362,-346,-328,-311,-296,-284,-277,-277,
+-285,-301,-324,-352,-383,-416,-448,-477,-503,-525,-545,-563,-583,-605,-632,-663,-700,-738,-776,-810,
+-834,-845,-838,-812,-767,-703,-624,-536,-445,-359,-286,-232,-201,-197,-221,-270,-341,-429,-528,-630,
+-729,-821,-901,-967,-1018,-1053,-1076,-1089,-1093,-1092,-1088,-1081,-1075,-1067,-1059,-1051,-1041,-1030,-1018,-1005,
+-992,-981,-973,-969,-969,-976,-988,-1006,-1029,-1057,-1086,-1117,-1148,-1176,-1201,-1220,-1235,-1243,-1244,-1239,
+-1227,-1208,-1184,-1156,-1123,-1087,-1049,-1010,-971,-933,-897,-862,-830,-801,-774,-749,-725,-703,-683,-663,
+-644,-627,-611,-596,-583,-571,-559,-549,-537,-524,-508,-488,-462,-430,-391,-344,-291,-231,-167,-99,
+-31,36,100,158,211,256,293,323,348,368,387,406,429,457,493,539,594,658,732,813,
+899,988,1078,1165,1248,1326,1397,1462,1520,1573,1621,1666,1708,1749,1787,1823,1856,1883,1904,1918,
+1923,1921,1912,1898,1884,1872,1869,1877,1902,1946,2011,2098,2204,2326,2459,2597,2733,2861,2976,3072,
+3148,3202,3235,3249,3250,3241,3228,3215,3207,3206,3213,3229,3253,3283,3316,3350,3382,3411,3435,3456,
+3473,3488,3501,3516,3533,3552,3575,3602,3631,3661,3693,3724,3755,3784,3811,3837,3862,3887,3912,3938,
+3965,3993,4021,4049,4076,4102,4126,4149,4171,4192,4214,4238,4264,4294,4326,4361,4398,4435,4470,4502,
+4528,4546,4557,4559,4555,4545,4532,4519,4508,4503,4505,4515,4535,4564,4599,4638,4679,4718,4751,4777,
+4794,4800,4795,4782,4760,4733,4703,4672,4644,4619,4598,4582,4570,4562,4557,4553,4548,4543,4535,4525,
+4512,4496,4478,4457,4435,4412,4389,4365,4342,4322,4304,4290,4483,4458,4435,4417,4404,4399,4402,4412,
+4428,4448,4468,4485,4495,4494,4482,4457,4420,4373,4319,4263,4209,4160,4121,4093,4075,4068,4066,4067,
+4066,4057,4036,4000,3947,3876,3790,3691,3583,3470,3358,3250,3149,3058,2977,2908,2847,2795,2748,2704,
+2661,2618,2574,2528,2481,2432,2384,2335,2289,2245,2203,2164,2127,2093,2060,2028,1997,1967,1935,1903,
+1870,1836,1800,1763,1725,1686,1646,1604,1562,1520,1477,1434,1391,1349,1308,1268,1230,1195,1162,1132,
+1105,1080,1058,1038,1018,998,977,953,927,897,863,826,787,746,704,664,627,593,565,541,
+523,508,497,488,477,465,448,427,398,363,322,275,223,168,111,55,0,-50,-98,-141,
+-179,-212,-241,-266,-289,-309,-329,-349,-369,-390,-412,-436,-461,-488,-516,-545,-573,-601,-628,-654,
+-678,-701,-721,-739,-755,-769,-780,-790,-796,-801,-803,-803,-802,-799,-794,-790,-786,-783,-781,-782,
+-786,-792,-800,-809,-819,-828,-836,-841,-843,-841,-835,-825,-811,-795,-777,-759,-740,-722,-706,-691,
+-678,-667,-657,-649,-643,-638,-634,-632,-631,-632,-634,-637,-641,-645,-649,-652,-652,-650,-644,-634,
+-620,-603,-583,-560,-536,-512,-489,-468,-449,-433,-419,-406,-395,-385,-373,-360,-345,-327,-306,-282,
+-256,-229,-202,-176,-152,-131,-114,-101,-92,-87,-83,-81,-78,-73,-65,-52,-34,-11,17,51,
+87,126,165,203,236,265,287,302,308,306,297,281,259,233,205,176,147,121,98,78,
+63,51,43,38,34,32,29,26,21,14,5,-4,-15,-25,-36,-44,-51,-55,-56,-55,
+-51,-45,-38,-30,-22,-14,-6,0,7,15,23,33,43,56,70,86,102,120,137,155,
+172,188,204,219,234,249,264,279,295,311,328,344,360,376,390,402,413,423,431,438,
+444,450,455,461,466,472,477,481,485,488,490,492,492,492,492,492,492,493,495,497,
+500,504,508,511,514,517,518,518,517,515,511,506,499,491,481,470,457,444,430,417,
+405,395,388,384,385,389,396,405,415,425,432,434,431,421,404,380,350,315,276,236,
+196,157,120,85,51,18,-16,-53,-95,-141,-194,-250,-310,-371,-430,-485,-532,-570,-597,-613,
+-619,-617,-610,-599,-588,-579,-572,-568,-566,-563,-558,-548,-530,-503,-468,-425,-378,-330,-286,-251,
+-228,-220,-229,-254,-293,-342,-397,-453,-506,-552,-591,-621,-644,-663,-681,-701,-726,-755,-789,-825,
+-859,-887,-901,-899,-876,-831,-766,-682,-588,-488,-393,-310,-247,-209,-199,-217,-263,-330,-414,-507,
+-602,-694,-776,-846,-902,-945,-975,-996,-1011,-1022,-1032,-1043,-1055,-1069,-1085,-1100,-1115,-1128,-1138,-1146,
+-1152,-1157,-1161,-1166,-1172,-1181,-1193,-1208,-1224,-1243,-1263,-1283,-1303,-1323,-1341,-1357,-1371,-1383,-1391,-1396,
+-1397,-1392,-1381,-1364,-1340,-1310,-1273,-1232,-1186,-1139,-1092,-1045,-1001,-960,-923,-890,-860,-833,-809,-787,
+-766,-746,-728,-711,-697,-684,-675,-668,-663,-660,-658,-655,-649,-639,-624,-601,-571,-532,-485,-431,
+-371,-307,-240,-173,-107,-45,12,65,113,156,196,234,273,314,360,413,473,543,621,708,
+801,898,996,1093,1186,1273,1351,1421,1482,1535,1582,1624,1664,1704,1744,1786,1830,1873,1913,1948,
+1975,1992,1997,1990,1971,1945,1915,1886,1866,1860,1874,1912,1977,2069,2185,2322,2472,2629,2783,2926,
+3053,3157,3236,3290,3319,3328,3322,3307,3290,3275,3267,3268,3280,3302,3333,3368,3406,3444,3478,3508,
+3533,3553,3570,3585,3600,3617,3637,3660,3687,3716,3747,3779,3811,3842,3871,3899,3926,3953,3982,4011,
+4043,4077,4112,4149,4185,4219,4251,4279,4304,4326,4345,4362,4380,4399,4420,4445,4473,4504,4537,4569,
+4600,4627,4648,4664,4673,4677,4676,4674,4672,4674,4682,4697,4720,4752,4791,4835,4881,4926,4967,4999,
+5020,5030,5026,5011,4985,4951,4912,4872,4832,4797,4767,4744,4727,4716,4709,4705,4702,4699,4695,4689,
+4682,4672,4661,4649,4637,4623,4609,4593,4575,4555,4532,4508,4483,4693,4666,4635,4605,4578,4556,4542,
+4536,4538,4547,4560,4574,4585,4589,4583,4565,4535,4493,4442,4385,4327,4271,4221,4177,4142,4114,4091,
+4069,4045,4015,3974,3922,3856,3778,3688,3589,3485,3380,3276,3177,3084,2999,2922,2852,2787,2728,2672,
+2618,2567,2517,2468,2421,2377,2335,2295,2258,2222,2188,2154,2120,2085,2050,2015,1979,1944,1909,1876,
+1845,1815,1786,1758,1730,1702,1671,1638,1602,1563,1521,1476,1430,1384,1338,1294,1252,1213,1177,1146,
+1118,1093,1071,1051,1030,1010,987,962,934,903,868,831,791,752,713,676,643,614,590,570,
+555,543,531,520,505,486,462,431,394,350,301,249,195,140,88,39,-6,-46,-82,-113,
+-141,-165,-188,-210,-232,-255,-278,-303,-329,-356,-386,-417,-449,-483,-518,-555,-591,-628,-664,-698,
+-731,-761,-787,-810,-828,-843,-854,-860,-864,-864,-861,-857,-850,-843,-835,-827,-820,-815,-811,-810,
+-811,-814,-820,-827,-835,-844,-851,-856,-859,-859,-856,-850,-841,-830,-818,-804,-791,-777,-764,-752,
+-740,-729,-718,-708,-698,-689,-681,-675,-672,-671,-674,-679,-686,-696,-706,-715,-723,-727,-728,-724,
+-716,-704,-687,-668,-647,-624,-603,-582,-563,-545,-530,-515,-501,-487,-472,-456,-437,-416,-392,-367,
+-341,-314,-287,-263,-241,-222,-207,-196,-188,-184,-182,-182,-181,-178,-173,-163,-149,-129,-104,-74,
+-39,-2,36,75,111,144,172,194,208,215,213,205,190,170,145,118,90,63,37,14,
+-4,-19,-31,-39,-44,-47,-48,-49,-50,-51,-54,-58,-64,-69,-75,-79,-83,-84,-84,-80,
+-75,-67,-58,-48,-37,-27,-17,-7,1,11,21,31,44,58,74,92,112,133,155,177,
+199,221,241,260,278,295,312,328,343,358,373,386,398,410,419,427,434,439,444,448,
+453,458,464,471,479,488,496,503,509,513,515,515,513,510,506,502,498,495,494,495,
+497,501,505,510,514,517,519,520,519,517,512,506,498,489,477,463,447,430,411,391,
+371,353,338,326,319,317,322,331,346,363,381,398,413,422,424,419,406,385,357,324,
+288,249,210,172,134,96,58,18,-25,-73,-127,-186,-250,-317,-385,-450,-510,-561,-603,-632,
+-651,-661,-663,-662,-660,-661,-666,-678,-694,-712,-730,-742,-744,-733,-706,-663,-605,-537,-464,-393,
+-331,-284,-258,-254,-273,-311,-366,-429,-495,-557,-611,-653,-683,-703,-715,-725,-736,-752,-776,-808,
+-844,-882,-915,-936,-940,-923,-883,-821,-740,-646,-548,-455,-375,-316,-283,-278,-301,-349,-415,-493,
+-575,-655,-725,-784,-827,-857,-874,-881,-884,-885,-888,-894,-907,-925,-947,-974,-1003,-1034,-1064,-1094,
+-1124,-1154,-1185,-1217,-1250,-1284,-1318,-1351,-1382,-1409,-1431,-1447,-1458,-1465,-1467,-1468,-1468,-1468,-1471,-1475,
+-1481,-1486,-1491,-1491,-1486,-1474,-1453,-1424,-1387,-1344,-1295,-1244,-1192,-1142,-1095,-1052,-1014,-979,-947,-919,
+-892,-866,-842,-818,-797,-778,-762,-751,-743,-740,-740,-743,-747,-750,-751,-749,-741,-727,-707,-680,
+-646,-606,-561,-512,-460,-405,-350,-293,-237,-180,-123,-65,-5,57,123,194,270,353,443,538,
+638,742,846,949,1047,1139,1221,1292,1353,1403,1444,1480,1512,1545,1582,1626,1678,1737,1804,1875,
+1945,2012,2069,2113,2140,2149,2140,2117,2084,2047,2015,1994,1991,2013,2063,2141,2245,2372,2514,2664,
+2812,2951,3074,3176,3253,3307,3338,3352,3353,3348,3342,3339,3344,3358,3381,3412,3447,3485,3521,3555,
+3584,3607,3627,3643,3659,3675,3695,3718,3745,3776,3810,3846,3882,3916,3948,3978,4005,4032,4058,4086,
+4117,4152,4191,4233,4277,4322,4365,4405,4441,4470,4493,4509,4521,4529,4535,4541,4550,4561,4577,4596,
+4619,4645,4673,4701,4730,4758,4784,4811,4837,4863,4892,4923,4958,4995,5035,5076,5117,5155,5187,5211,
+5226,5229,5220,5200,5169,5131,5087,5041,4997,4956,4922,4895,4876,4864,4858,4855,4854,4852,4849,4844,
+4835,4825,4813,4802,4792,4783,4776,4771,4765,4759,4749,4736,4717,4693,4888,4870,4847,4821,4792,4765,
+4741,4723,4710,4703,4700,4699,4697,4690,4676,4653,4621,4581,4534,4484,4432,4383,4338,4298,4262,4230,
+4198,4164,4123,4073,4012,3939,3855,3761,3660,3556,3451,3350,3254,3164,3081,3003,2929,2858,2788,2718,
+2647,2577,2508,2442,2381,2325,2277,2237,2203,2175,2151,2128,2105,2080,2052,2020,1985,1947,1909,1870,
+1833,1799,1767,1737,1710,1683,1656,1628,1597,1563,1526,1486,1443,1399,1355,1311,1269,1229,1192,1158,
+1127,1099,1073,1048,1024,1001,977,951,924,895,864,831,796,762,727,694,664,637,613,593,
+576,560,545,528,508,483,452,415,371,322,269,214,160,107,59,15,-22,-54,-81,-105,
+-126,-147,-170,-194,-221,-252,-284,-319,-355,-392,-428,-464,-499,-533,-566,-600,-633,-666,-699,-732,
+-764,-794,-822,-847,-868,-885,-897,-905,-909,-910,-907,-902,-895,-886,-877,-869,-860,-854,-849,-846,
+-846,-848,-853,-860,-869,-878,-887,-895,-901,-904,-905,-904,-901,-896,-890,-884,-879,-874,-869,-864,
+-859,-853,-845,-836,-826,-815,-804,-794,-787,-783,-784,-789,-798,-811,-825,-840,-853,-862,-865,-862,
+-853,-837,-815,-788,-759,-729,-699,-672,-647,-626,-608,-593,-581,-570,-559,-548,-535,-521,-506,-488,
+-469,-449,-429,-409,-390,-372,-355,-341,-328,-318,-308,-301,-293,-286,-278,-269,-257,-243,-225,-205,
+-181,-155,-126,-96,-66,-37,-9,14,33,48,58,61,59,52,40,24,6,-13,-33,-52,
+-70,-86,-99,-110,-117,-123,-127,-129,-130,-131,-132,-133,-134,-136,-138,-139,-139,-138,-135,-130,
+-123,-113,-102,-90,-77,-64,-50,-36,-23,-9,3,18,34,51,70,90,112,135,158,182,
+205,227,248,267,286,303,320,336,352,368,383,398,411,423,434,442,449,453,457,460,
+462,466,470,475,481,488,496,502,508,511,512,510,506,499,492,483,475,468,463,460,
+459,460,463,466,470,474,477,480,481,481,480,478,474,469,461,450,437,421,402,380,
+358,335,313,295,281,273,271,276,287,303,323,344,363,379,390,393,389,376,356,330,
+300,267,234,201,170,142,115,89,63,33,0,-40,-86,-139,-198,-259,-322,-382,-438,-486,
+-525,-555,-578,-594,-608,-623,-641,-666,-697,-734,-775,-814,-848,-871,-878,-867,-835,-785,-719,-645,
+-569,-500,-444,-407,-392,-400,-427,-470,-521,-573,-620,-657,-682,-693,-694,-689,-684,-683,-692,-712,
+-743,-781,-823,-860,-886,-894,-881,-844,-785,-709,-624,-538,-460,-400,-363,-354,-373,-417,-480,-555,
+-633,-706,-768,-814,-843,-854,-850,-835,-815,-794,-778,-768,-768,-776,-793,-816,-845,-876,-910,-946,
+-984,-1025,-1071,-1120,-1175,-1234,-1296,-1359,-1418,-1472,-1517,-1552,-1575,-1587,-1589,-1585,-1576,-1567,-1560,-1558,
+-1561,-1570,-1582,-1596,-1607,-1613,-1611,-1599,-1576,-1542,-1499,-1449,-1395,-1340,-1287,-1236,-1189,-1147,-1108,-1072,
+-1039,-1007,-976,-946,-918,-892,-870,-853,-841,-835,-834,-837,-843,-850,-856,-860,-860,-857,-848,-835,
+-818,-797,-772,-745,-714,-681,-645,-605,-562,-514,-461,-402,-339,-269,-193,-111,-23,70,171,278,
+389,504,621,738,851,959,1058,1145,1220,1282,1330,1366,1394,1416,1438,1462,1495,1538,1593,1661,
+1741,1829,1920,2008,2090,2158,2208,2239,2250,2243,2221,2192,2162,2139,2130,2142,2177,2239,2325,2432,
+2554,2685,2817,2942,3055,3152,3229,3287,3328,3355,3373,3386,3400,3417,3439,3466,3498,3534,3570,3604,
+3635,3661,3683,3702,3719,3735,3754,3777,3805,3838,3876,3916,3957,3997,4034,4068,4097,4122,4145,4168,
+4193,4221,4254,4293,4337,4386,4438,4489,4539,4585,4624,4655,4679,4694,4703,4705,4705,4703,4701,4702,
+4708,4719,4737,4761,4792,4830,4873,4921,4971,5023,5075,5126,5175,5219,5259,5293,5321,5343,5357,5363,
+5361,5351,5333,5308,5276,5239,5199,5159,5119,5084,5054,5031,5015,5007,5005,5007,5010,5014,5014,5011,
+5003,4990,4973,4955,4937,4921,4909,4902,4899,4900,4902,4904,4904,4899,4888,5044,5038,5025,5007,4984,
+4958,4932,4905,4880,4856,4833,4809,4783,4753,4718,4678,4633,4585,4537,4490,4447,4410,4379,4354,4333,
+4312,4288,4256,4213,4156,4084,3998,3899,3792,3681,3570,3463,3363,3272,3189,3112,3041,2970,2898,2823,
+2744,2660,2575,2490,2409,2335,2271,2218,2176,2146,2124,2107,2093,2078,2061,2038,2010,1977,1940,1901,
+1862,1822,1785,1749,1715,1682,1648,1614,1578,1540,1500,1458,1416,1373,1331,1291,1253,1218,1185,1154,
+1125,1097,1070,1044,1018,992,967,942,917,891,866,840,813,786,757,729,699,670,642,614,
+586,559,532,503,472,437,398,355,307,256,203,150,97,49,5,-31,-62,-87,-108,-125,
+-142,-161,-183,-211,-243,-282,-324,-370,-417,-464,-509,-550,-587,-620,-650,-677,-702,-727,-752,-778,
+-804,-831,-857,-882,-905,-925,-942,-955,-964,-969,-970,-969,-964,-958,-950,-940,-931,-922,-915,-910,
+-908,-909,-915,-923,-935,-948,-962,-976,-987,-996,-1001,-1003,-1002,-998,-992,-987,-982,-978,-975,-974,
+-973,-972,-969,-964,-956,-946,-934,-921,-910,-903,-900,-903,-913,-928,-948,-971,-993,-1012,-1026,-1032,
+-1029,-1016,-994,-965,-930,-893,-855,-818,-785,-757,-734,-715,-701,-690,-682,-674,-666,-657,-647,-635,
+-621,-606,-590,-573,-555,-536,-517,-498,-479,-460,-442,-425,-409,-394,-381,-368,-357,-345,-334,-322,
+-308,-293,-276,-257,-236,-215,-193,-171,-151,-133,-118,-107,-100,-97,-98,-103,-110,-119,-129,-140,
+-150,-160,-169,-176,-183,-187,-191,-194,-196,-197,-198,-199,-199,-199,-199,-198,-196,-193,-188,-182,
+-175,-165,-154,-140,-126,-110,-93,-75,-57,-38,-18,1,21,43,66,89,114,139,163,187,
+210,231,250,268,285,300,315,330,345,361,378,395,411,428,442,455,466,474,479,483,
+484,485,484,484,483,483,483,483,482,480,477,472,466,459,451,443,436,429,424,420,
+417,416,415,415,414,414,413,413,413,413,414,416,418,420,420,419,414,406,393,376,
+356,334,311,291,274,262,257,259,268,282,300,319,336,350,358,358,351,335,313,286,
+255,223,193,165,143,125,114,107,103,101,97,90,77,57,27,-10,-56,-108,-164,-221,
+-276,-327,-373,-413,-449,-482,-514,-549,-587,-631,-680,-733,-786,-836,-877,-905,-916,-909,-884,-844,
+-793,-737,-684,-638,-606,-590,-590,-604,-628,-657,-683,-702,-710,-706,-691,-669,-645,-625,-614,-615,
+-631,-659,-695,-733,-765,-784,-784,-762,-718,-656,-581,-504,-434,-380,-349,-346,-373,-425,-498,-582,
+-669,-749,-815,-860,-883,-884,-867,-838,-802,-767,-738,-719,-713,-719,-736,-762,-794,-828,-862,-896,
+-930,-965,-1003,-1046,-1097,-1156,-1223,-1295,-1370,-1444,-1513,-1572,-1619,-1653,-1673,-1682,-1682,-1677,-1671,-1669,
+-1673,-1683,-1699,-1720,-1742,-1761,-1773,-1775,-1765,-1742,-1706,-1660,-1606,-1548,-1490,-1434,-1381,-1332,-1288,-1248,
+-1211,-1175,-1140,-1106,-1075,-1046,-1023,-1005,-995,-992,-995,-1003,-1015,-1027,-1037,-1042,-1042,-1034,-1021,-1001,
+-977,-951,-923,-896,-869,-843,-817,-790,-762,-730,-693,-650,-600,-543,-478,-404,-322,-233,-135,-30,
+81,199,323,449,576,701,822,935,1038,1127,1203,1263,1308,1340,1362,1377,1389,1403,1423,1452,
+1494,1550,1618,1698,1786,1877,1967,2050,2122,2180,2222,2248,2261,2263,2260,2258,2263,2280,2313,2365,
+2434,2521,2621,2729,2840,2948,3049,3138,3215,3278,3329,3370,3404,3435,3466,3497,3531,3567,3605,3642,
+3677,3709,3738,3762,3782,3802,3821,3842,3867,3897,3932,3971,4013,4056,4098,4137,4172,4202,4229,4254,
+4277,4302,4330,4363,4402,4447,4497,4552,4610,4668,4725,4778,4826,4868,4903,4929,4948,4960,4966,4967,
+4966,4964,4965,4970,4982,5002,5031,5068,5114,5166,5221,5276,5328,5374,5412,5440,5457,5465,5462,5453,
+5436,5416,5393,5368,5342,5316,5289,5264,5239,5217,5197,5181,5170,5164,5163,5166,5172,5179,5185,5188,
+5186,5179,5165,5146,5124,5100,5077,5058,5043,5035,5032,5034,5038,5043,5046,5044,5157,5148,5134,5116,
+5093,5066,5036,5003,4968,4931,4891,4848,4801,4750,4694,4636,4575,4516,4461,4412,4371,4341,4321,4309,
+4301,4294,4281,4259,4221,4167,4094,4004,3900,3786,3669,3554,3444,3345,3255,3176,3105,3039,2973,2904,
+2831,2751,2667,2579,2491,2408,2332,2266,2212,2170,2138,2114,2095,2078,2059,2037,2011,1981,1947,1912,
+1876,1842,1808,1777,1745,1713,1679,1642,1600,1555,1506,1455,1404,1354,1307,1266,1229,1198,1170,1147,
+1125,1103,1081,1057,1032,1006,979,952,926,900,876,852,829,805,780,753,724,692,658,622,
+585,547,508,468,427,384,340,294,246,197,146,97,48,4,-35,-69,-97,-120,-137,-152,
+-166,-182,-202,-227,-260,-299,-345,-395,-448,-501,-552,-599,-641,-678,-709,-736,-760,-782,-804,-827,
+-851,-877,-903,-930,-956,-980,-1002,-1021,-1036,-1047,-1055,-1058,-1058,-1054,-1047,-1037,-1025,-1012,-999,-987,
+-979,-974,-975,-981,-993,-1010,-1030,-1051,-1071,-1088,-1101,-1108,-1108,-1104,-1095,-1083,-1070,-1059,-1050,-1043,
+-1039,-1037,-1035,-1032,-1027,-1018,-1006,-991,-974,-959,-946,-940,-941,-950,-967,-992,-1020,-1050,-1079,-1101,
+-1116,-1121,-1115,-1100,-1076,-1046,-1012,-979,-947,-920,-897,-880,-868,-859,-853,-849,-844,-838,-830,-819,
+-806,-790,-771,-751,-729,-705,-681,-656,-631,-607,-583,-561,-541,-523,-507,-494,-482,-472,-463,-454,
+-444,-434,-422,-408,-392,-375,-357,-338,-319,-302,-287,-275,-266,-260,-257,-257,-258,-261,-264,-267,
+-269,-270,-270,-269,-267,-266,-264,-263,-262,-261,-260,-259,-258,-256,-252,-248,-242,-235,-227,-218,
+-208,-196,-184,-169,-153,-136,-117,-97,-76,-54,-31,-8,15,40,65,91,118,145,171,197,
+222,246,268,288,306,322,338,352,367,382,398,414,430,446,460,474,485,494,500,504,
+504,503,500,495,489,482,474,466,458,449,439,430,421,413,406,400,395,392,390,389,
+388,386,384,381,376,370,363,357,352,349,349,352,359,368,378,387,394,396,392,382,
+366,346,322,298,277,262,254,254,262,277,298,320,340,356,365,365,356,337,311,280,
+246,211,179,152,130,115,107,106,110,118,129,140,148,153,151,141,122,94,57,13,
+-36,-90,-144,-198,-248,-296,-341,-383,-425,-469,-516,-566,-620,-675,-730,-780,-823,-854,-872,-876,
+-866,-846,-820,-791,-766,-747,-738,-738,-746,-758,-771,-780,-780,-770,-751,-722,-690,-657,-631,-614,
+-610,-618,-636,-658,-679,-691,-687,-665,-623,-564,-494,-420,-352,-301,-273,-275,-307,-368,-450,-547,
+-646,-739,-815,-868,-896,-899,-881,-847,-807,-767,-734,-715,-713,-726,-755,-795,-842,-890,-936,-978,
+-1014,-1044,-1072,-1099,-1129,-1166,-1210,-1264,-1326,-1394,-1464,-1533,-1596,-1649,-1691,-1722,-1742,-1753,-1760,-1766,
+-1775,-1788,-1808,-1833,-1862,-1891,-1915,-1931,-1935,-1926,-1902,-1866,-1819,-1765,-1707,-1649,-1594,-1543,-1496,-1454,
+-1414,-1376,-1340,-1305,-1272,-1243,-1219,-1202,-1195,-1197,-1208,-1225,-1247,-1269,-1287,-1298,-1299,-1289,-1267,-1235,
+-1195,-1150,-1103,-1057,-1014,-975,-942,-912,-885,-859,-832,-801,-766,-725,-677,-621,-556,-482,-400,-310,
+-212,-106,4,120,239,359,478,593,703,805,898,980,1051,1109,1157,1193,1220,1240,1255,1268,
+1282,1302,1330,1368,1420,1485,1562,1651,1749,1850,1951,2048,2136,2212,2276,2326,2366,2397,2424,2451,
+2484,2524,2576,2640,2716,2800,2890,2982,3072,3157,3235,3304,3364,3416,3462,3504,3544,3584,3625,3665,
+3706,3746,3783,3817,3847,3873,3897,3919,3942,3965,3992,4022,4056,4093,4131,4171,4211,4249,4286,4321,
+4355,4388,4423,4460,4499,4543,4590,4641,4697,4755,4817,4881,4946,5011,5074,5135,5190,5239,5280,5310,
+5330,5339,5340,5335,5326,5318,5313,5316,5327,5346,5374,5408,5444,5479,5509,5531,5544,5547,5540,5526,
+5508,5488,5468,5451,5438,5428,5421,5415,5410,5403,5395,5385,5374,5363,5354,5348,5345,5346,5350,5355,
+5360,5363,5361,5354,5341,5323,5301,5276,5251,5228,5208,5193,5181,5174,5169,5164,5157,5224,5199,5171,
+5141,5107,5071,5032,4991,4948,4903,4856,4806,4753,4696,4636,4573,4510,4447,4390,4339,4297,4267,4247,
+4237,4232,4228,4220,4202,4170,4119,4049,3960,3856,3742,3623,3504,3392,3290,3198,3118,3047,2983,2920,
+2857,2791,2720,2645,2569,2493,2421,2355,2297,2247,2206,2170,2138,2106,2072,2036,1997,1955,1913,1873,
+1837,1806,1781,1761,1744,1727,1707,1682,1649,1608,1558,1503,1444,1385,1329,1279,1237,1203,1176,1156,
+1139,1124,1109,1091,1070,1045,1017,986,955,923,892,862,833,803,773,742,709,674,636,596,
+555,513,471,430,389,349,309,268,228,186,143,100,58,16,-22,-58,-90,-118,-141,-161,
+-180,-199,-219,-244,-273,-309,-351,-398,-448,-501,-553,-603,-649,-690,-727,-759,-787,-813,-839,-864,
+-891,-918,-946,-975,-1003,-1029,-1053,-1074,-1093,-1108,-1119,-1127,-1132,-1133,-1130,-1123,-1113,-1099,-1082,-1065,
+-1048,-1034,-1025,-1023,-1027,-1039,-1057,-1080,-1105,-1129,-1150,-1166,-1174,-1174,-1167,-1155,-1138,-1121,-1104,-1091,
+-1081,-1074,-1071,-1068,-1064,-1057,-1045,-1028,-1005,-979,-951,-926,-905,-892,-889,-896,-914,-939,-970,-1003,
+-1034,-1059,-1078,-1087,-1088,-1081,-1069,-1054,-1038,-1024,-1014,-1008,-1007,-1009,-1014,-1021,-1026,-1029,-1029,-1024,
+-1015,-1000,-981,-958,-930,-900,-869,-836,-804,-773,-745,-719,-697,-678,-662,-649,-637,-627,-617,-607,
+-596,-583,-569,-553,-536,-518,-499,-481,-464,-448,-434,-423,-415,-410,-407,-406,-406,-406,-406,-404,
+-400,-394,-386,-376,-367,-357,-349,-342,-337,-334,-331,-329,-326,-322,-316,-308,-297,-285,-271,-256,
+-240,-224,-207,-190,-172,-153,-132,-111,-88,-65,-41,-16,8,33,58,83,109,135,162,189,
+217,244,271,297,321,344,365,385,403,419,435,449,461,472,482,489,495,498,499,499,
+497,494,490,485,479,473,465,456,446,434,422,409,396,384,373,364,358,353,350,349,
+348,346,343,339,332,324,315,307,300,297,298,304,316,333,353,374,393,408,416,415,
+405,386,360,330,300,274,255,247,249,262,284,311,340,366,385,395,394,382,361,333,
+301,269,238,212,190,174,164,157,154,154,155,157,159,160,160,158,152,142,127,106,
+78,44,5,-36,-80,-125,-168,-209,-249,-288,-328,-370,-415,-464,-516,-570,-624,-674,-717,-751,
+-773,-784,-784,-777,-764,-752,-742,-737,-739,-747,-759,-772,-781,-785,-781,-767,-747,-721,-693,-668,
+-648,-635,-629,-626,-624,-616,-600,-570,-526,-468,-403,-335,-274,-229,-207,-212,-249,-314,-402,-505,
+-613,-716,-804,-869,-909,-923,-913,-887,-850,-812,-781,-762,-759,-774,-806,-852,-907,-967,-1025,-1078,
+-1124,-1160,-1187,-1207,-1223,-1239,-1258,-1284,-1318,-1363,-1416,-1476,-1539,-1603,-1663,-1716,-1761,-1796,-1823,-1844,
+-1862,-1880,-1900,-1925,-1954,-1985,-2017,-2045,-2066,-2077,-2074,-2059,-2030,-1991,-1945,-1895,-1844,-1794,-1748,-1704,
+-1663,-1624,-1586,-1549,-1513,-1480,-1452,-1432,-1422,-1423,-1435,-1456,-1484,-1514,-1541,-1560,-1567,-1561,-1539,-1503,
+-1456,-1400,-1341,-1281,-1224,-1172,-1127,-1089,-1056,-1027,-999,-972,-942,-908,-868,-822,-767,-704,-632,-552,
+-465,-371,-272,-171,-70,27,121,210,292,368,439,505,569,630,691,750,808,863,914,959,
+998,1032,1061,1088,1117,1153,1201,1263,1343,1442,1559,1689,1829,1971,2109,2236,2347,2439,2510,2561,
+2596,2622,2642,2665,2695,2736,2790,2858,2936,3023,3113,3202,3287,3365,3435,3496,3550,3599,3644,3687,
+3730,3774,3817,3859,3899,3937,3970,4000,4026,4049,4071,4093,4116,4142,4171,4203,4239,4277,4318,4361,
+4405,4452,4499,4548,4598,4649,4700,4752,4806,4860,4917,4977,5041,5109,5183,5260,5340,5419,5495,5562,
+5618,5659,5683,5691,5683,5664,5637,5607,5580,5560,5548,5546,5553,5566,5582,5598,5610,5617,5618,5614,
+5605,5596,5587,5583,5583,5588,5597,5608,5618,5625,5626,5621,5609,5592,5572,5551,5532,5517,5508,5505,
+5507,5512,5519,5524,5525,5520,5509,5492,5469,5442,5412,5382,5352,5324,5297,5272,5248,5224,5240,5199,
+5156,5110,5062,5012,4962,4912,4862,4814,4767,4721,4676,4630,4582,4532,4481,4429,4378,4331,4289,4256,
+4230,4213,4201,4191,4180,4160,4128,4080,4014,3929,3829,3716,3597,3476,3360,3252,3154,3068,2991,2923,
+2859,2798,2736,2673,2610,2547,2486,2430,2379,2333,2292,2255,2217,2177,2133,2083,2028,1969,1909,1852,
+1802,1760,1730,1710,1698,1692,1687,1679,1662,1636,1598,1550,1494,1434,1373,1316,1267,1226,1194,1171,
+1154,1141,1129,1115,1098,1076,1050,1020,986,951,915,877,840,802,764,724,683,641,598,554,
+511,470,430,393,358,325,294,264,234,203,170,136,99,61,23,-15,-52,-88,-122,-153,
+-182,-209,-236,-265,-295,-329,-367,-409,-455,-504,-553,-603,-650,-695,-736,-773,-807,-838,-867,-896,
+-923,-951,-979,-1005,-1031,-1054,-1075,-1093,-1109,-1123,-1134,-1145,-1153,-1161,-1166,-1168,-1167,-1162,-1153,-1141,
+-1126,-1110,-1095,-1084,-1078,-1078,-1085,-1098,-1116,-1136,-1157,-1175,-1189,-1197,-1198,-1193,-1183,-1170,-1156,-1142,
+-1132,-1125,-1121,-1119,-1117,-1113,-1104,-1088,-1065,-1034,-996,-954,-911,-871,-839,-816,-806,-809,-825,-850,
+-882,-918,-953,-985,-1012,-1032,-1046,-1054,-1060,-1065,-1070,-1078,-1089,-1103,-1120,-1139,-1157,-1174,-1188,-1198,
+-1202,-1199,-1189,-1173,-1150,-1121,-1088,-1052,-1014,-977,-943,-911,-883,-860,-840,-823,-808,-794,-779,-762,
+-744,-724,-703,-681,-659,-639,-619,-602,-587,-573,-562,-552,-543,-536,-530,-525,-521,-516,-511,-505,
+-496,-486,-474,-460,-446,-432,-419,-409,-402,-397,-394,-393,-391,-388,-382,-372,-360,-344,-325,-305,
+-284,-264,-244,-224,-205,-185,-165,-143,-119,-94,-67,-40,-12,14,40,66,91,115,140,166,
+192,219,247,276,304,331,356,381,403,423,441,456,468,478,484,488,488,486,481,476,
+469,463,458,454,450,447,444,439,433,425,414,401,385,369,353,337,323,311,300,291,
+284,277,270,263,255,248,240,234,230,230,235,246,263,286,314,345,377,405,427,440,
+441,431,410,380,345,310,278,255,244,245,258,281,311,342,370,390,401,401,390,370,
+345,318,293,270,253,240,231,224,218,211,201,189,174,158,142,126,112,100,88,77,
+65,51,34,15,-5,-29,-54,-79,-104,-129,-155,-184,-216,-253,-296,-343,-395,-448,-500,-547,
+-585,-612,-627,-630,-623,-610,-594,-579,-571,-570,-579,-596,-618,-642,-665,-681,-689,-688,-678,-660,
+-637,-611,-584,-557,-529,-500,-468,-431,-387,-339,-288,-239,-198,-172,-165,-183,-228,-297,-388,-492,
+-602,-709,-804,-880,-935,-966,-976,-969,-951,-928,-907,-893,-890,-900,-923,-957,-1001,-1051,-1103,-1153,
+-1200,-1240,-1271,-1294,-1309,-1318,-1324,-1330,-1340,-1359,-1389,-1431,-1485,-1551,-1623,-1699,-1773,-1841,-1899,-1947,
+-1984,-2012,-2034,-2054,-2074,-2097,-2123,-2152,-2180,-2206,-2224,-2234,-2231,-2218,-2193,-2160,-2121,-2079,-2036,-1994,
+-1952,-1911,-1870,-1829,-1788,-1749,-1713,-1684,-1664,-1655,-1659,-1675,-1700,-1731,-1762,-1789,-1806,-1811,-1800,-1774,
+-1736,-1687,-1632,-1574,-1519,-1467,-1420,-1379,-1344,-1312,-1282,-1253,-1221,-1187,-1148,-1103,-1050,-988,-917,-837,
+-747,-649,-546,-441,-338,-241,-154,-79,-17,31,69,100,129,161,199,247,306,375,451,531,
+609,682,747,801,847,887,927,973,1031,1108,1208,1333,1481,1647,1825,2006,2179,2336,2470,2575,
+2651,2699,2723,2733,2735,2739,2752,2781,2828,2893,2975,3068,3167,3267,3363,3450,3527,3594,3652,3703,
+3750,3795,3839,3884,3929,3973,4016,4055,4091,4122,4149,4172,4194,4216,4239,4264,4292,4324,4361,4401,
+4445,4492,4543,4597,4653,4710,4769,4827,4885,4943,5001,5060,5120,5185,5254,5330,5411,5496,5583,5667,
+5744,5809,5857,5886,5895,5885,5858,5821,5777,5734,5696,5667,5649,5642,5645,5655,5668,5681,5693,5702,
+5708,5713,5718,5725,5736,5749,5765,5783,5799,5810,5816,5813,5802,5784,5759,5731,5702,5675,5653,5637,
+5627,5623,5623,5624,5625,5624,5618,5606,5589,5565,5537,5504,5469,5432,5394,5356,5318,5280,5240,5204,
+5159,5111,5059,5005,4948,4891,4835,4782,4733,4690,4652,4617,4586,4554,4521,4485,4445,4402,4358,4314,
+4273,4238,4210,4188,4170,4153,4131,4100,4056,3996,3918,3823,3714,3597,3476,3357,3244,3141,3049,2967,
+2893,2827,2764,2703,2643,2584,2528,2476,2429,2387,2351,2319,2287,2254,2215,2169,2114,2052,1984,1915,
+1848,1789,1740,1703,1678,1663,1654,1647,1636,1618,1591,1553,1505,1451,1393,1337,1285,1240,1203,1175,
+1153,1137,1122,1107,1090,1070,1047,1020,991,960,927,893,858,821,781,739,695,649,602,555,
+509,466,426,389,356,326,297,270,243,215,185,154,120,85,48,10,-28,-65,-102,-138,
+-172,-205,-237,-269,-301,-335,-371,-411,-454,-500,-549,-600,-650,-699,-746,-789,-829,-865,-897,-927,
+-955,-981,-1005,-1028,-1049,-1068,-1085,-1099,-1110,-1121,-1130,-1140,-1150,-1161,-1173,-1185,-1196,-1204,-1209,-1211,
+-1208,-1202,-1193,-1183,-1173,-1166,-1161,-1160,-1162,-1167,-1173,-1181,-1187,-1193,-1196,-1197,-1195,-1192,-1186,-1181,
+-1175,-1171,-1168,-1165,-1163,-1159,-1153,-1141,-1123,-1098,-1064,-1023,-977,-929,-882,-841,-809,-790,-786,-795,
+-818,-851,-891,-934,-977,-1016,-1049,-1076,-1098,-1115,-1130,-1143,-1156,-1172,-1189,-1209,-1230,-1252,-1274,-1294,
+-1312,-1325,-1333,-1335,-1329,-1316,-1295,-1269,-1237,-1202,-1166,-1131,-1098,-1068,-1042,-1018,-996,-973,-950,-923,
+-895,-865,-834,-804,-777,-754,-736,-722,-711,-703,-696,-688,-678,-666,-651,-636,-620,-604,-589,-574,
+-561,-548,-535,-521,-506,-491,-477,-463,-451,-442,-436,-431,-427,-422,-415,-405,-391,-373,-352,-329,
+-306,-284,-263,-244,-226,-209,-192,-172,-150,-124,-96,-65,-33,0,31,62,90,117,143,168,
+194,219,244,270,295,320,343,364,384,403,420,435,449,461,471,479,484,485,484,479,
+473,466,459,452,446,442,437,432,426,417,406,393,376,358,339,320,301,285,270,256,
+244,233,223,213,203,194,185,179,174,173,177,185,198,218,242,271,303,334,364,388,
+405,411,406,391,366,336,304,275,252,239,238,248,266,291,316,338,354,360,355,342,
+322,298,274,252,235,223,216,212,209,205,198,187,171,152,130,107,84,63,45,29,
+16,5,-3,-12,-19,-26,-32,-37,-42,-47,-53,-62,-75,-94,-120,-153,-194,-241,-290,-338,
+-381,-415,-436,-443,-436,-417,-390,-360,-333,-314,-306,-313,-335,-368,-409,-453,-493,-525,-546,-553,
+-546,-526,-496,-460,-420,-378,-337,-296,-258,-223,-192,-168,-153,-151,-165,-198,-250,-320,-406,-502,
+-603,-701,-791,-868,-929,-974,-1003,-1020,-1029,-1034,-1039,-1046,-1058,-1074,-1096,-1122,-1152,-1185,-1221,-1258,
+-1296,-1333,-1367,-1397,-1419,-1433,-1438,-1437,-1432,-1428,-1431,-1446,-1477,-1528,-1598,-1684,-1781,-1883,-1981,-2068,
+-2141,-2196,-2233,-2257,-2270,-2280,-2289,-2302,-2321,-2344,-2368,-2391,-2408,-2416,-2414,-2402,-2379,-2350,-2315,-2278,
+-2240,-2201,-2161,-2120,-2078,-2036,-1994,-1955,-1923,-1900,-1889,-1890,-1905,-1929,-1960,-1992,-2020,-2041,-2050,-2046,
+-2029,-2002,-1966,-1925,-1882,-1839,-1797,-1758,-1720,-1684,-1648,-1612,-1575,-1537,-1496,-1452,-1404,-1350,-1286,-1213,
+-1127,-1029,-921,-804,-682,-562,-449,-346,-259,-189,-136,-97,-69,-45,-20,9,50,102,164,235,
+312,388,461,526,584,634,681,728,783,852,940,1052,1189,1351,1533,1728,1928,2123,2304,2460,
+2587,2682,2745,2778,2790,2789,2784,2785,2798,2829,2881,2952,3040,3139,3243,3347,3446,3536,3615,3684,
+3745,3799,3849,3897,3945,3992,4039,4083,4126,4164,4199,4229,4257,4283,4309,4336,4365,4396,4429,4465,
+4503,4544,4586,4632,4680,4731,4786,4844,4905,4969,5035,5103,5173,5244,5318,5395,5475,5557,5640,5721,
+5797,5865,5919,5957,5976,5976,5959,5928,5888,5843,5801,5765,5740,5725,5722,5728,5741,5758,5776,5793,
+5808,5822,5834,5847,5861,5876,5892,5907,5920,5929,5931,5927,5915,5897,5873,5846,5817,5789,5762,5738,
+5717,5699,5682,5665,5648,5630,5610,5588,5565,5539,5512,5483,5452,5421,5389,5355,5320,5284,5245,5204,
+5132,5094,5052,5006,4957,4906,4853,4802,4753,4709,4671,4639,4611,4587,4562,4534,4501,4460,4413,4361,
+4306,4254,4206,4166,4134,4110,4091,4070,4043,4005,3951,3879,3789,3685,3571,3452,3334,3223,3121,3031,
+2951,2881,2817,2756,2698,2640,2583,2528,2477,2431,2391,2357,2328,2300,2271,2238,2197,2147,2089,2024,
+1955,1888,1825,1771,1726,1692,1666,1646,1627,1606,1579,1545,1503,1455,1404,1351,1301,1257,1219,1187,
+1161,1140,1120,1100,1079,1056,1030,1004,977,950,924,898,870,842,810,774,734,691,645,599,
+552,508,467,430,395,363,331,300,267,233,196,158,119,79,41,3,-31,-65,-97,-127,
+-155,-183,-210,-237,-266,-296,-329,-366,-407,-453,-504,-558,-614,-671,-727,-780,-829,-873,-912,-946,
+-976,-1002,-1026,-1048,-1069,-1088,-1105,-1120,-1133,-1145,-1156,-1167,-1179,-1192,-1207,-1222,-1237,-1252,-1264,-1274,
+-1280,-1283,-1283,-1280,-1275,-1269,-1262,-1254,-1246,-1237,-1227,-1217,-1208,-1199,-1193,-1188,-1186,-1186,-1187,-1189,
+-1189,-1187,-1183,-1176,-1166,-1153,-1139,-1123,-1105,-1085,-1062,-1035,-1005,-972,-937,-904,-876,-856,-846,-850,
+-867,-896,-935,-981,-1029,-1076,-1118,-1153,-1181,-1201,-1215,-1224,-1231,-1238,-1245,-1254,-1265,-1280,-1297,-1316,
+-1337,-1359,-1380,-1400,-1415,-1425,-1428,-1423,-1410,-1390,-1364,-1335,-1304,-1273,-1243,-1215,-1187,-1158,-1128,-1095,
+-1059,-1021,-983,-946,-914,-889,-871,-860,-855,-853,-851,-845,-833,-814,-788,-757,-723,-690,-659,-633,
+-613,-598,-587,-577,-567,-556,-542,-525,-506,-487,-468,-450,-434,-419,-403,-387,-368,-346,-322,-297,
+-271,-246,-224,-204,-187,-173,-158,-143,-124,-102,-75,-44,-10,25,61,95,128,159,188,215,
+241,268,294,319,344,366,386,403,418,430,440,450,460,471,483,496,508,519,527,533,
+535,533,528,520,511,500,488,475,461,445,427,408,387,366,346,328,313,301,293,287,
+284,281,278,274,268,260,251,241,230,220,211,204,200,199,202,209,220,234,251,270,
+287,302,312,314,309,297,280,259,239,223,213,211,217,229,246,263,277,286,287,280,
+266,247,226,204,185,169,157,149,143,139,134,128,121,112,101,90,77,64,50,35,
+20,5,-8,-22,-33,-41,-44,-43,-39,-31,-22,-14,-9,-10,-18,-34,-59,-91,-128,-167,
+-205,-236,-257,-266,-259,-238,-205,-164,-120,-81,-51,-36,-40,-63,-104,-158,-219,-280,-335,-379,
+-407,-419,-416,-399,-374,-344,-313,-284,-259,-240,-228,-223,-226,-239,-262,-297,-344,-403,-471,-546,
+-623,-699,-768,-829,-880,-920,-952,-978,-1001,-1025,-1052,-1082,-1115,-1151,-1187,-1223,-1257,-1290,-1323,-1357,
+-1393,-1433,-1476,-1518,-1557,-1589,-1609,-1617,-1611,-1595,-1575,-1559,-1554,-1570,-1611,-1679,-1773,-1887,-2012,-2137,
+-2252,-2349,-2423,-2473,-2500,-2510,-2511,-2509,-2509,-2515,-2528,-2545,-2564,-2579,-2588,-2588,-2579,-2561,-2538,-2511,
+-2483,-2455,-2427,-2399,-2369,-2337,-2301,-2263,-2226,-2192,-2164,-2146,-2140,-2146,-2164,-2189,-2219,-2249,-2276,-2295,
+-2305,-2305,-2297,-2279,-2255,-2224,-2188,-2148,-2103,-2055,-2004,-1952,-1901,-1852,-1806,-1765,-1726,-1689,-1649,-1602,
+-1545,-1475,-1389,-1287,-1170,-1043,-910,-775,-646,-524,-413,-315,-228,-151,-81,-16,43,101,156,208,
+255,296,331,361,389,416,449,491,548,623,720,839,980,1143,1321,1512,1709,1904,2093,2267,
+2423,2555,2661,2741,2796,2829,2847,2856,2862,2873,2894,2929,2980,3047,3128,3219,3315,3414,3510,3601,
+3685,3763,3834,3899,3960,4016,4069,4118,4162,4202,4237,4269,4298,4326,4355,4385,4418,4453,4491,4531,
+4571,4610,4648,4686,4723,4763,4805,4852,4905,4966,5033,5107,5187,5272,5360,5449,5540,5629,5716,5798,
+5873,5939,5992,6029,6051,6055,6044,6020,5987,5950,5915,5885,5863,5852,5851,5858,5872,5889,5906,5922,
+5935,5946,5956,5964,5974,5984,5995,6005,6013,6017,6014,6005,5990,5968,5943,5915,5887,5860,5833,5806,
+5778,5748,5714,5676,5634,5590,5544,5499,5458,5420,5387,5359,5335,5314,5294,5273,5250,5226,5198,5167,
+5132,5055,5021,4987,4951,4915,4879,4841,4804,4767,4733,4702,4673,4646,4618,4588,4551,4507,4453,4391,
+4325,4256,4192,4135,4088,4053,4029,4010,3991,3966,3929,3876,3804,3715,3611,3498,3383,3270,3167,3075,
+2995,2927,2868,2815,2764,2714,2662,2609,2556,2506,2459,2417,2381,2349,2319,2288,2254,2213,2164,2109,
+2047,1982,1918,1857,1803,1758,1721,1690,1664,1639,1612,1580,1542,1499,1452,1403,1355,1311,1272,1238,
+1210,1185,1161,1138,1114,1087,1058,1028,998,968,940,913,886,857,826,791,751,707,661,613,
+567,523,483,448,417,387,359,328,295,258,216,171,124,78,33,-6,-42,-73,-99,-122,
+-141,-160,-177,-196,-216,-239,-265,-296,-333,-376,-426,-482,-543,-608,-674,-738,-799,-855,-903,-945,
+-981,-1011,-1039,-1064,-1088,-1111,-1135,-1157,-1178,-1198,-1217,-1235,-1252,-1269,-1285,-1302,-1317,-1330,-1340,-1347,
+-1351,-1351,-1349,-1345,-1341,-1336,-1332,-1327,-1320,-1310,-1296,-1278,-1257,-1235,-1215,-1199,-1189,-1185,-1187,-1192,
+-1198,-1202,-1200,-1190,-1171,-1146,-1115,-1082,-1049,-1020,-994,-973,-956,-941,-927,-916,-908,-904,-906,-918,
+-940,-973,-1014,-1062,-1113,-1162,-1206,-1242,-1269,-1285,-1294,-1296,-1294,-1291,-1289,-1288,-1291,-1297,-1307,-1320,
+-1337,-1358,-1382,-1409,-1436,-1462,-1484,-1500,-1508,-1507,-1497,-1479,-1455,-1427,-1398,-1368,-1339,-1309,-1278,-1245,
+-1209,-1170,-1131,-1092,-1058,-1030,-1011,-1001,-998,-998,-998,-992,-977,-950,-911,-862,-807,-751,-700,-658,
+-627,-609,-600,-598,-598,-596,-589,-574,-552,-523,-490,-455,-421,-388,-358,-330,-304,-277,-251,-223,
+-196,-169,-144,-122,-103,-87,-72,-57,-40,-20,3,31,63,96,130,163,194,222,248,273,
+298,324,351,380,409,437,463,485,502,514,523,528,532,536,543,551,562,575,587,599,
+607,612,613,609,601,590,576,560,541,521,499,475,451,427,405,386,372,364,363,368,
+377,389,402,413,420,423,421,413,402,386,368,347,326,303,281,260,241,226,214,208,
+205,207,210,213,214,211,205,194,181,167,156,149,147,152,162,175,190,203,212,217,
+217,212,204,193,182,171,160,149,139,128,117,107,99,94,93,95,99,104,108,109,
+106,97,83,66,48,32,20,15,17,25,36,49,61,68,69,62,49,28,4,-21,
+-46,-66,-79,-81,-72,-51,-18,24,73,123,169,203,222,220,198,154,94,23,-53,-129,
+-197,-254,-297,-328,-348,-359,-366,-370,-375,-382,-390,-401,-413,-427,-445,-467,-494,-527,-567,-612,
+-661,-711,-758,-800,-835,-862,-882,-898,-913,-929,-950,-976,-1009,-1047,-1088,-1131,-1174,-1216,-1259,-1303,
+-1350,-1403,-1461,-1524,-1588,-1649,-1700,-1736,-1755,-1754,-1738,-1712,-1685,-1668,-1671,-1702,-1765,-1860,-1980,-2118,
+-2259,-2394,-2511,-2603,-2668,-2706,-2724,-2727,-2724,-2720,-2720,-2724,-2732,-2741,-2748,-2749,-2743,-2730,-2713,-2694,
+-2677,-2663,-2654,-2648,-2643,-2636,-2625,-2607,-2582,-2551,-2517,-2484,-2455,-2433,-2421,-2419,-2427,-2442,-2462,-2485,
+-2507,-2526,-2540,-2546,-2544,-2531,-2507,-2470,-2421,-2361,-2294,-2222,-2150,-2084,-2026,-1981,-1948,-1925,-1910,-1897,
+-1879,-1852,-1809,-1749,-1669,-1571,-1458,-1333,-1198,-1059,-916,-772,-628,-484,-343,-206,-78,37,136,213,
+267,298,306,298,283,268,266,285,332,413,526,671,840,1026,1221,1416,1606,1785,1952,2105,
+2246,2374,2491,2596,2690,2770,2836,2887,2924,2949,2966,2980,2995,3018,3054,3103,3169,3249,3342,3444,
+3551,3658,3763,3861,3952,4033,4105,4166,4217,4259,4293,4321,4345,4367,4390,4416,4446,4482,4522,4565,
+4610,4655,4699,4739,4778,4814,4851,4890,4934,4986,5046,5114,5192,5277,5369,5465,5563,5661,5757,5849,
+5933,6008,6070,6118,6149,6163,6162,6147,6122,6092,6062,6037,6020,6012,6014,6025,6041,6059,6075,6088,
+6096,6099,6099,6097,6095,6096,6099,6103,6107,6108,6104,6093,6076,6051,6022,5990,5958,5926,5895,5864,
+5831,5793,5749,5696,5635,5568,5499,5431,5369,5317,5276,5246,5227,5214,5205,5195,5183,5166,5144,5117,
+5087,5055,4995,4961,4931,4905,4883,4861,4839,4816,4790,4761,4731,4698,4663,4624,4580,4529,4471,4406,
+4337,4266,4198,4137,4086,4047,4018,3996,3977,3953,3919,3871,3805,3722,3625,3518,3408,3301,3202,3115,
+3040,2977,2924,2878,2834,2790,2745,2697,2649,2600,2552,2508,2466,2428,2391,2354,2315,2271,2221,2165,
+2104,2040,1976,1915,1860,1813,1775,1745,1721,1700,1679,1655,1625,1589,1546,1499,1451,1403,1358,1318,
+1284,1254,1228,1205,1181,1156,1130,1102,1072,1041,1009,975,939,900,857,809,756,698,638,579,
+522,471,426,390,361,337,317,296,273,244,210,170,126,80,34,-7,-45,-77,-103,-124,
+-141,-155,-168,-181,-195,-211,-231,-255,-285,-322,-366,-418,-478,-544,-614,-686,-756,-822,-880,-931,
+-975,-1011,-1043,-1073,-1101,-1130,-1160,-1190,-1221,-1250,-1277,-1302,-1325,-1347,-1368,-1388,-1406,-1421,-1432,-1438,
+-1438,-1432,-1422,-1410,-1397,-1387,-1379,-1375,-1372,-1368,-1361,-1349,-1330,-1306,-1280,-1255,-1235,-1224,-1222,-1230,
+-1244,-1259,-1269,-1270,-1258,-1232,-1193,-1146,-1095,-1045,-1002,-967,-942,-926,-917,-914,-916,-923,-935,-954,
+-983,-1021,-1067,-1121,-1177,-1232,-1280,-1319,-1346,-1361,-1365,-1362,-1355,-1348,-1343,-1342,-1346,-1354,-1365,-1379,
+-1395,-1413,-1433,-1455,-1480,-1505,-1530,-1552,-1568,-1577,-1576,-1565,-1547,-1521,-1492,-1461,-1431,-1402,-1374,-1345,
+-1315,-1283,-1249,-1215,-1182,-1154,-1133,-1119,-1112,-1110,-1107,-1099,-1079,-1045,-994,-928,-853,-773,-698,-634,
+-586,-556,-544,-546,-556,-567,-573,-570,-554,-526,-488,-444,-398,-352,-309,-271,-237,-206,-178,-151,
+-124,-99,-75,-53,-34,-17,-1,12,28,47,69,95,125,157,189,220,248,272,294,313,
+332,351,373,399,427,458,490,520,547,570,587,598,604,607,609,610,613,616,621,627,
+631,635,636,634,631,625,618,611,602,592,580,566,550,531,511,491,473,459,450,448,
+452,461,474,489,504,516,525,528,527,521,512,499,482,463,440,415,388,359,330,302,
+276,253,233,216,199,183,165,145,125,104,86,72,63,62,68,79,95,112,130,145,
+158,168,177,184,190,195,199,201,199,194,186,176,167,161,162,170,185,205,227,247,
+261,267,263,251,233,214,197,187,185,191,203,217,231,240,243,237,225,208,189,172,
+161,155,158,169,187,214,247,286,329,374,418,457,487,502,500,478,436,375,300,215,
+125,36,-47,-124,-194,-258,-315,-368,-416,-460,-498,-530,-553,-569,-578,-583,-586,-591,-602,-620,
+-647,-681,-719,-759,-795,-825,-847,-861,-866,-867,-866,-866,-870,-880,-896,-920,-949,-984,-1025,-1072,
+-1125,-1186,-1254,-1331,-1413,-1496,-1577,-1649,-1707,-1748,-1769,-1774,-1766,-1756,-1751,-1763,-1799,-1864,-1959,-2079,
+-2217,-2363,-2504,-2631,-2736,-2816,-2871,-2903,-2920,-2926,-2928,-2929,-2932,-2935,-2936,-2934,-2927,-2914,-2898,-2881,
+-2867,-2859,-2859,-2868,-2882,-2900,-2916,-2927,-2928,-2918,-2897,-2866,-2828,-2786,-2745,-2707,-2676,-2652,-2637,-2632,
+-2636,-2647,-2665,-2684,-2701,-2712,-2711,-2694,-2659,-2605,-2534,-2453,-2366,-2283,-2211,-2154,-2116,-2097,-2093,-2099,
+-2106,-2107,-2096,-2068,-2022,-1958,-1878,-1784,-1681,-1569,-1449,-1321,-1182,-1032,-870,-699,-524,-351,-190,-50,
+61,139,181,192,180,158,140,140,173,246,363,522,715,929,1152,1370,1571,1748,1899,2025,
+2132,2228,2319,2411,2507,2606,2704,2796,2874,2934,2973,2992,2995,2989,2985,2990,3013,3059,3132,3229,
+3347,3479,3617,3754,3884,4001,4102,4186,4253,4305,4343,4372,4394,4413,4432,4453,4478,4508,4544,4583,
+4626,4671,4716,4759,4802,4843,4885,4928,4976,5029,5088,5154,5227,5305,5388,5474,5562,5652,5741,5829,
+5915,5996,6070,6134,6185,6221,6241,6245,6235,6215,6190,6165,6145,6132,6130,6137,6153,6173,6193,6210,
+6221,6225,6222,6215,6205,6197,6191,6188,6187,6186,6183,6175,6159,6136,6107,6072,6035,5999,5963,5929,
+5893,5854,5807,5751,5684,5608,5526,5443,5365,5298,5247,5211,5191,5183,5181,5180,5175,5162,5139,5109,
+5072,5033,4995,4967,4935,4912,4895,4883,4871,4856,4834,4805,4767,4723,4672,4617,4559,4499,4437,4376,
+4315,4258,4206,4162,4126,4098,4075,4055,4031,3999,3953,3891,3812,3718,3615,3508,3404,3309,3227,3158,
+3102,3056,3015,2975,2934,2887,2837,2783,2727,2672,2621,2574,2530,2490,2450,2410,2366,2317,2262,2201,
+2137,2072,2007,1947,1894,1850,1815,1789,1771,1757,1745,1731,1711,1684,1650,1607,1559,1508,1456,1406,
+1360,1319,1285,1255,1229,1206,1184,1163,1141,1117,1090,1059,1023,980,929,870,804,731,655,577,
+503,435,375,326,287,257,234,215,197,177,154,126,94,59,22,-13,-46,-76,-103,-125,
+-144,-160,-175,-189,-203,-218,-235,-253,-275,-301,-334,-375,-425,-484,-550,-622,-696,-768,-836,-897,
+-949,-994,-1032,-1067,-1100,-1134,-1169,-1206,-1243,-1279,-1312,-1342,-1368,-1392,-1414,-1436,-1458,-1479,-1499,-1515,
+-1524,-1525,-1519,-1505,-1487,-1469,-1454,-1443,-1438,-1438,-1438,-1435,-1426,-1410,-1387,-1360,-1334,-1314,-1305,-1310,
+-1328,-1354,-1383,-1407,-1419,-1414,-1390,-1349,-1296,-1236,-1177,-1123,-1078,-1044,-1021,-1005,-997,-994,-998,-1009,
+-1030,-1062,-1106,-1159,-1220,-1282,-1340,-1389,-1425,-1447,-1456,-1455,-1449,-1442,-1439,-1443,-1453,-1470,-1490,-1511,
+-1531,-1548,-1563,-1575,-1587,-1598,-1610,-1620,-1629,-1633,-1630,-1620,-1602,-1577,-1548,-1517,-1487,-1460,-1436,-1414,
+-1393,-1372,-1348,-1322,-1294,-1268,-1244,-1225,-1212,-1203,-1195,-1182,-1159,-1121,-1065,-991,-902,-805,-709,-623,
+-553,-506,-481,-477,-488,-506,-524,-534,-533,-517,-489,-451,-406,-359,-313,-269,-228,-191,-157,-124,
+-94,-66,-41,-20,-3,9,18,26,35,46,62,83,110,142,176,212,246,278,306,330,
+351,369,387,405,425,447,470,495,520,544,565,584,598,609,616,620,621,621,619,616,
+613,608,603,598,594,590,589,590,594,599,606,612,615,614,609,597,580,559,537,514,
+494,478,467,461,459,461,465,470,477,484,492,501,511,519,526,529,528,520,506,485,
+458,426,391,354,314,274,233,190,148,108,71,40,16,2,-1,4,16,33,52,71,
+87,101,112,123,135,148,162,177,191,203,212,218,224,231,244,265,293,329,369,409,
+442,464,472,467,452,430,408,393,389,396,413,437,463,484,496,498,491,478,463,452,
+450,458,477,505,539,576,612,647,678,707,733,755,774,786,789,779,754,712,654,580,
+496,404,308,211,115,21,-70,-159,-244,-324,-395,-455,-501,-532,-546,-547,-539,-527,-517,-515,
+-525,-549,-586,-633,-685,-736,-782,-818,-841,-851,-849,-839,-823,-806,-792,-784,-784,-794,-815,-848,
+-892,-947,-1012,-1086,-1168,-1255,-1345,-1434,-1519,-1595,-1661,-1716,-1758,-1792,-1823,-1855,-1896,-1952,-2027,-2123,
+-2237,-2365,-2500,-2633,-2756,-2863,-2949,-3014,-3059,-3088,-3105,-3115,-3122,-3127,-3131,-3132,-3129,-3123,-3113,-3100,
+-3088,-3080,-3077,-3083,-3096,-3116,-3139,-3161,-3179,-3188,-3187,-3174,-3148,-3110,-3063,-3008,-2949,-2890,-2834,-2786,
+-2751,-2731,-2728,-2741,-2766,-2796,-2824,-2842,-2841,-2817,-2768,-2697,-2611,-2520,-2433,-2361,-2308,-2279,-2271,-2278,
+-2291,-2302,-2303,-2286,-2250,-2195,-2125,-2045,-1959,-1872,-1784,-1694,-1599,-1494,-1374,-1236,-1081,-911,-733,-557,
+-393,-250,-136,-54,-2,27,44,63,97,159,258,396,570,774,993,1215,1426,1615,1775,1906,
+2011,2097,2175,2253,2337,2432,2535,2640,2739,2823,2884,2918,2925,2912,2888,2864,2855,2871,2919,3004,
+3122,3266,3429,3597,3761,3912,4043,4152,4237,4301,4349,4384,4411,4435,4459,4485,4514,4546,4582,4619,
+4657,4695,4731,4767,4803,4840,4880,4927,4981,5044,5115,5193,5275,5360,5444,5525,5602,5674,5741,5807,
+5872,5936,6000,6063,6122,6173,6213,6240,6252,6250,6235,6213,6188,6166,6151,6146,6152,6168,6191,6216,
+6240,6259,6271,6275,6273,6267,6259,6251,6245,6240,6234,6225,6210,6189,6160,6125,6086,6046,6007,5971,
+5938,5904,5867,5822,5766,5698,5620,5534,5448,5368,5300,5250,5217,5201,5196,5197,5195,5187,5167,5136,
+5096,5051,5007,4967,4975,4954,4941,4935,4929,4919,4899,4866,4819,4759,4689,4613,4534,4457,4385,4321,
+4267,4224,4193,4173,4162,4156,4150,4138,4112,4068,4001,3911,3801,3677,3549,3427,3321,3236,3177,3141,
+3123,3115,3108,3093,3064,3018,2957,2884,2805,2727,2653,2588,2532,2483,2438,2394,2347,2295,2238,2177,
+2113,2050,1991,1938,1892,1856,1829,1809,1796,1788,1781,1773,1762,1745,1722,1691,1653,1609,1560,1509,
+1457,1406,1358,1313,1273,1238,1207,1180,1156,1135,1115,1093,1066,1034,993,943,883,814,739,661,
+581,505,434,369,313,264,222,185,152,123,95,69,44,20,-2,-24,-45,-65,-85,-105,
+-125,-145,-165,-186,-206,-225,-243,-259,-275,-291,-311,-335,-367,-410,-462,-525,-595,-670,-746,-818,
+-884,-942,-992,-1036,-1077,-1116,-1157,-1199,-1242,-1285,-1325,-1360,-1390,-1414,-1434,-1453,-1474,-1497,-1522,-1549,
+-1574,-1593,-1603,-1604,-1595,-1579,-1561,-1545,-1534,-1530,-1531,-1534,-1535,-1529,-1514,-1492,-1464,-1437,-1418,-1412,
+-1424,-1451,-1490,-1534,-1573,-1599,-1606,-1591,-1555,-1505,-1446,-1385,-1329,-1281,-1241,-1210,-1185,-1165,-1150,-1142,
+-1142,-1153,-1179,-1218,-1270,-1330,-1391,-1448,-1495,-1529,-1548,-1556,-1555,-1553,-1552,-1558,-1572,-1593,-1619,-1645,
+-1669,-1687,-1698,-1702,-1701,-1696,-1689,-1683,-1676,-1669,-1659,-1645,-1627,-1605,-1579,-1552,-1527,-1505,-1488,-1476,
+-1466,-1456,-1444,-1428,-1407,-1383,-1357,-1333,-1311,-1294,-1279,-1263,-1240,-1205,-1153,-1082,-994,-893,-788,-688,
+-602,-537,-496,-479,-482,-498,-518,-536,-546,-544,-530,-506,-474,-437,-398,-357,-315,-272,-227,-180,
+-134,-90,-51,-19,3,16,21,21,18,16,19,30,49,76,111,150,193,237,280,320,
+356,388,416,438,457,471,481,490,497,504,513,522,534,547,561,574,586,595,601,603,
+602,597,590,582,574,568,563,562,565,572,582,595,609,622,632,636,633,622,603,577,
+545,511,477,445,417,393,375,364,359,360,369,384,407,436,470,505,538,566,585,594,
+590,574,546,509,465,416,363,309,254,200,148,101,60,28,6,-5,-6,0,11,25,
+37,46,52,54,56,59,64,73,85,100,118,138,160,186,218,258,308,367,430,494,
+551,596,622,628,617,593,564,539,525,528,548,582,625,669,706,732,744,747,743,741,
+746,763,793,834,880,927,969,1001,1021,1031,1031,1027,1020,1011,1001,988,968,938,896,841,
+775,699,617,531,442,353,262,170,76,-17,-108,-192,-266,-324,-364,-386,-392,-386,-376,-368,
+-367,-380,-406,-448,-501,-560,-622,-681,-731,-771,-798,-813,-816,-810,-799,-786,-776,-773,-780,-799,
+-831,-876,-933,-1000,-1074,-1154,-1237,-1322,-1407,-1492,-1576,-1659,-1739,-1817,-1891,-1962,-2032,-2104,-2179,-2261,
+-2351,-2451,-2559,-2671,-2784,-2891,-2987,-3068,-3132,-3179,-3211,-3232,-3246,-3256,-3264,-3274,-3283,-3292,-3300,-3305,
+-3307,-3307,-3307,-3307,-3310,-3314,-3321,-3330,-3338,-3344,-3346,-3342,-3330,-3308,-3275,-3230,-3173,-3106,-3033,-2958,
+-2890,-2835,-2800,-2789,-2803,-2838,-2886,-2936,-2975,-2995,-2985,-2945,-2877,-2790,-2695,-2604,-2529,-2476,-2449,-2444,
+-2454,-2468,-2477,-2471,-2445,-2398,-2332,-2252,-2165,-2077,-1993,-1915,-1840,-1766,-1686,-1595,-1487,-1361,-1217,-1057,
+-889,-719,-556,-407,-275,-164,-71,8,81,157,242,342,463,603,761,930,1104,1275,1437,1586,
+1721,1844,1957,2067,2177,2291,2407,2522,2630,2723,2794,2838,2852,2842,2814,2781,2756,2753,2783,2851,
+2959,3101,3269,3451,3633,3805,3956,4084,4185,4261,4318,4361,4396,4427,4459,4493,4531,4573,4616,4659,
+4700,4737,4770,4798,4823,4848,4877,4914,4962,5023,5098,5187,5284,5386,5487,5581,5664,5735,5792,5838,
+5877,5913,5948,5987,6028,6071,6114,6151,6179,6196,6199,6190,6173,6150,6128,6112,6106,6113,6131,6160,
+6194,6231,6264,6291,6309,6318,6320,6316,6309,6299,6287,6272,6253,6228,6195,6156,6111,6064,6018,5976,
+5940,5910,5882,5854,5820,5776,5719,5649,5569,5486,5405,5334,5278,5239,5215,5204,5197,5190,5177,5154,
+5122,5083,5042,5005,4975,5010,4999,4993,4988,4980,4962,4930,4882,4818,4741,4654,4564,4475,4395,4325,
+4271,4232,4209,4201,4202,4208,4211,4204,4176,4122,4038,3922,3780,3622,3461,3311,3186,3097,3047,3036,
+3054,3090,3129,3154,3157,3129,3072,2989,2890,2784,2682,2588,2507,2439,2379,2323,2267,2208,2145,2079,
+2014,1954,1901,1857,1825,1802,1788,1779,1774,1770,1766,1760,1754,1745,1734,1721,1704,1683,1657,1625,
+1587,1542,1492,1437,1380,1322,1265,1213,1166,1127,1094,1066,1042,1017,990,956,916,867,812,752,
+689,625,561,499,437,377,316,257,199,144,95,53,19,-4,-20,-30,-37,-43,-50,-62,
+-79,-101,-128,-157,-188,-217,-243,-265,-282,-295,-305,-316,-330,-352,-384,-429,-486,-554,-631,-712,
+-791,-866,-934,-993,-1045,-1092,-1137,-1182,-1229,-1276,-1323,-1366,-1404,-1435,-1458,-1477,-1495,-1513,-1536,-1563,
+-1594,-1625,-1652,-1670,-1678,-1675,-1664,-1649,-1635,-1625,-1622,-1625,-1630,-1632,-1627,-1612,-1588,-1559,-1530,-1512,
+-1509,-1526,-1562,-1612,-1667,-1718,-1754,-1769,-1761,-1732,-1686,-1633,-1578,-1527,-1483,-1447,-1417,-1390,-1366,-1344,
+-1327,-1317,-1320,-1335,-1365,-1407,-1456,-1506,-1552,-1587,-1611,-1622,-1625,-1623,-1621,-1623,-1632,-1647,-1669,-1692,
+-1713,-1730,-1740,-1742,-1737,-1726,-1713,-1698,-1684,-1671,-1657,-1642,-1626,-1607,-1586,-1566,-1547,-1533,-1523,-1519,
+-1518,-1519,-1517,-1510,-1495,-1473,-1446,-1416,-1386,-1361,-1339,-1321,-1301,-1273,-1233,-1175,-1098,-1005,-903,-800,
+-705,-628,-575,-546,-539,-549,-566,-583,-595,-596,-588,-570,-546,-519,-491,-460,-425,-384,-337,-281,
+-220,-156,-95,-42,-1,25,37,37,31,23,18,21,33,54,85,122,163,207,251,295,
+338,380,419,453,483,505,520,527,527,523,517,511,510,514,524,538,556,575,593,608,
+618,623,625,622,617,611,603,596,589,583,579,577,578,582,589,598,606,612,614,610,
+600,582,559,531,500,468,436,407,381,361,346,340,343,357,382,416,456,499,539,571,
+592,599,591,570,538,499,455,410,365,321,277,233,189,148,110,78,54,38,31,30,
+34,38,42,42,39,34,28,24,22,24,31,42,60,84,116,159,214,281,358,439,
+519,588,640,669,675,660,632,601,577,569,582,616,667,728,789,842,881,906,919,926,
+935,952,981,1020,1067,1115,1156,1183,1194,1188,1169,1141,1110,1081,1058,1038,1020,1000,974,938,
+893,839,779,716,652,589,526,461,390,313,230,143,55,-28,-101,-161,-205,-235,-253,-264,
+-273,-285,-304,-330,-365,-407,-453,-503,-554,-604,-652,-696,-736,-770,-797,-818,-836,-851,-869,-892,
+-924,-967,-1022,-1086,-1159,-1235,-1313,-1390,-1465,-1539,-1613,-1690,-1771,-1857,-1946,-2038,-2130,-2219,-2305,-2386,
+-2466,-2546,-2628,-2713,-2803,-2894,-2983,-3065,-3137,-3196,-3240,-3270,-3290,-3304,-3316,-3331,-3350,-3374,-3401,-3429,
+-3456,-3478,-3494,-3503,-3506,-3504,-3498,-3488,-3477,-3465,-3452,-3439,-3424,-3406,-3383,-3353,-3312,-3259,-3194,-3119,
+-3041,-2968,-2907,-2867,-2855,-2872,-2914,-2973,-3036,-3089,-3120,-3119,-3085,-3019,-2930,-2832,-2738,-2659,-2604,-2574,
+-2567,-2576,-2591,-2602,-2600,-2580,-2540,-2484,-2414,-2336,-2255,-2176,-2098,-2023,-1947,-1867,-1779,-1679,-1566,-1437,
+-1294,-1139,-974,-803,-632,-463,-300,-147,-6,122,237,341,435,524,611,700,795,900,1016,1146,
+1287,1440,1602,1769,1938,2106,2266,2416,2549,2660,2745,2802,2831,2834,2819,2795,2774,2768,2787,2839,
+2928,3050,3199,3366,3539,3707,3862,3997,4109,4199,4271,4328,4375,4416,4456,4495,4536,4578,4623,4667,
+4712,4754,4792,4826,4856,4883,4909,4939,4976,5024,5087,5165,5257,5360,5466,5570,5666,5747,5811,5858,
+5890,5911,5927,5941,5958,5981,6009,6041,6073,6102,6124,6137,6140,6136,6128,6119,6115,6119,6134,6159,
+6195,6237,6281,6322,6356,6382,6396,6401,6397,6387,6371,6352,6329,6300,6264,6220,6169,6112,6052,5994,
+5942,5898,5864,5837,5815,5790,5759,5716,5660,5591,5515,5437,5364,5301,5253,5220,5198,5184,5172,5158,
+5138,5112,5083,5054,5029,5010,5050,5033,5017,4998,4973,4939,4892,4834,4764,4688,4608,4531,4461,4401,
+4354,4319,4297,4286,4282,4280,4273,4255,4219,4156,4063,3939,3788,3619,3443,3278,3137,3034,2975,2962,
+2987,3038,3098,3149,3176,3169,3125,3047,2943,2825,2705,2592,2492,2407,2333,2267,2201,2134,2062,1988,
+1915,1849,1794,1752,1726,1712,1708,1709,1711,1712,1709,1704,1699,1694,1691,1692,1697,1702,1706,1705,
+1695,1675,1641,1595,1535,1465,1389,1310,1234,1165,1105,1055,1015,982,953,924,892,856,814,769,
+722,674,626,578,529,476,417,352,283,211,143,81,31,-3,-24,-33,-32,-29,-27,-31,
+-43,-65,-95,-132,-171,-211,-248,-279,-305,-323,-336,-345,-353,-363,-380,-406,-446,-499,-566,-644,
+-728,-813,-894,-969,-1033,-1089,-1137,-1181,-1223,-1267,-1312,-1358,-1402,-1443,-1478,-1507,-1530,-1550,-1571,-1595,
+-1623,-1654,-1686,-1715,-1736,-1748,-1749,-1742,-1731,-1720,-1713,-1712,-1715,-1720,-1720,-1712,-1692,-1663,-1630,-1599,
+-1580,-1579,-1601,-1645,-1704,-1768,-1826,-1869,-1890,-1887,-1864,-1825,-1779,-1734,-1693,-1660,-1633,-1609,-1587,-1565,
+-1543,-1523,-1510,-1507,-1515,-1535,-1563,-1595,-1627,-1652,-1668,-1674,-1671,-1663,-1652,-1644,-1640,-1641,-1648,-1657,
+-1668,-1677,-1683,-1686,-1686,-1683,-1678,-1671,-1665,-1657,-1649,-1639,-1626,-1610,-1593,-1575,-1558,-1545,-1537,-1534,
+-1535,-1540,-1543,-1541,-1532,-1513,-1486,-1452,-1416,-1382,-1354,-1332,-1315,-1297,-1272,-1232,-1173,-1094,-999,-894,
+-792,-701,-633,-590,-573,-576,-592,-610,-622,-623,-610,-587,-556,-523,-492,-463,-435,-403,-365,-317,
+-258,-190,-120,-52,4,47,74,85,85,81,79,84,98,123,155,191,228,262,291,316,
+337,358,380,405,433,463,492,519,540,554,563,567,569,570,575,582,594,608,623,638,
+650,659,665,668,668,667,665,660,652,641,627,610,592,575,563,557,558,567,581,598,
+616,631,641,643,638,626,607,582,552,519,485,453,424,404,394,397,413,441,475,512,
+544,567,577,572,555,528,497,466,438,413,391,369,344,315,280,241,200,162,131,109,
+97,93,94,98,101,102,99,92,85,78,72,70,72,79,93,115,149,194,252,321,
+397,472,540,592,625,636,629,610,589,577,581,605,650,711,779,845,902,943,969,983,
+992,1001,1018,1043,1076,1111,1142,1160,1162,1145,1112,1069,1024,985,955,938,931,929,926,916,
+897,866,828,786,743,704,670,637,603,562,510,446,369,284,194,106,23,-49,-112,-165,
+-211,-251,-288,-322,-353,-382,-408,-433,-460,-489,-525,-568,-620,-677,-738,-800,-858,-910,-958,-1003,
+-1048,-1097,-1152,-1215,-1286,-1361,-1436,-1509,-1575,-1635,-1689,-1743,-1799,-1861,-1933,-2014,-2102,-2194,-2285,-2372,
+-2453,-2528,-2600,-2670,-2743,-2820,-2900,-2981,-3059,-3129,-3189,-3235,-3269,-3294,-3315,-3336,-3361,-3392,-3430,-3472,
+-3515,-3555,-3589,-3614,-3629,-3635,-3634,-3626,-3613,-3596,-3577,-3555,-3531,-3505,-3477,-3446,-3411,-3369,-3319,-3260,
+-3193,-3122,-3054,-2997,-2958,-2942,-2953,-2988,-3039,-3095,-3143,-3172,-3173,-3144,-3086,-3008,-2921,-2836,-2765,-2713,
+-2683,-2674,-2678,-2688,-2698,-2701,-2693,-2672,-2639,-2595,-2543,-2484,-2419,-2348,-2272,-2188,-2097,-1998,-1891,-1775,
+-1650,-1516,-1374,-1221,-1059,-887,-706,-518,-328,-140,38,201,343,460,553,624,680,732,789,863,
+961,1088,1245,1426,1624,1829,2030,2219,2386,2527,2639,2723,2779,2814,2832,2840,2848,2863,2891,2940,
+3011,3105,3220,3349,3487,3625,3758,3883,3995,4095,4184,4264,4334,4397,4453,4502,4545,4582,4617,4650,
+4685,4723,4765,4809,4855,4901,4946,4989,5033,5080,5131,5192,5261,5340,5426,5515,5601,5680,5746,5797,
+5834,5858,5873,5883,5894,5907,5927,5952,5982,6016,6049,6080,6107,6130,6149,6165,6181,6198,6221,6249,
+6283,6321,6361,6400,6435,6462,6479,6486,6484,6474,6459,6440,6419,6393,6363,6326,6280,6225,6161,6092,
+6021,5955,5896,5849,5812,5783,5758,5731,5696,5651,5594,5528,5457,5387,5325,5274,5236,5211,5194,5181,
+5169,5154,5136,5114,5091,5069,5050,5073,5039,5001,4957,4908,4852,4791,4726,4660,4598,4542,4494,4456,
+4428,4407,4393,4381,4368,4351,4327,4290,4238,4167,4074,3959,3824,3674,3520,3371,3241,3139,3073,3044,
+3050,3081,3122,3160,3179,3168,3124,3047,2942,2822,2697,2578,2471,2380,2303,2235,2171,2105,2034,1960,
+1886,1816,1756,1710,1681,1666,1663,1665,1670,1671,1668,1662,1653,1647,1645,1649,1661,1679,1699,1716,
+1727,1727,1713,1683,1636,1574,1499,1417,1332,1250,1176,1111,1057,1012,973,937,899,856,807,755,
+700,647,598,553,511,470,425,374,315,250,181,114,56,10,-20,-37,-42,-41,-40,-44,
+-56,-78,-108,-144,-182,-220,-254,-284,-309,-331,-349,-367,-384,-402,-425,-452,-488,-533,-589,-656,
+-732,-814,-897,-976,-1048,-1110,-1162,-1204,-1241,-1276,-1311,-1349,-1391,-1434,-1477,-1517,-1553,-1584,-1612,-1638,
+-1665,-1695,-1727,-1759,-1788,-1812,-1827,-1834,-1832,-1827,-1821,-1818,-1818,-1821,-1822,-1817,-1802,-1774,-1737,-1696,
+-1660,-1638,-1639,-1664,-1713,-1779,-1850,-1916,-1966,-1994,-1999,-1984,-1956,-1923,-1890,-1861,-1837,-1817,-1797,-1775,
+-1751,-1726,-1704,-1688,-1681,-1686,-1699,-1718,-1738,-1754,-1763,-1763,-1754,-1739,-1721,-1702,-1685,-1670,-1658,-1648,
+-1641,-1634,-1630,-1628,-1629,-1633,-1639,-1646,-1654,-1659,-1660,-1657,-1648,-1635,-1619,-1600,-1581,-1564,-1551,-1544,
+-1541,-1542,-1545,-1547,-1542,-1529,-1506,-1473,-1434,-1394,-1358,-1330,-1311,-1299,-1287,-1266,-1230,-1170,-1087,-984,
+-870,-757,-660,-587,-545,-533,-544,-566,-588,-599,-594,-569,-531,-484,-436,-392,-354,-321,-288,-251,
+-204,-147,-82,-13,51,107,148,174,186,191,194,202,219,247,284,326,365,397,417,424,
+418,403,385,371,366,373,395,429,473,521,570,614,651,679,697,708,713,713,710,706,
+700,695,689,685,683,683,686,690,694,696,693,684,669,650,628,609,595,590,594,607,
+627,650,673,692,706,711,708,698,680,656,626,591,555,520,490,469,461,468,487,518,
+552,585,609,620,616,599,572,542,515,493,480,472,467,458,443,418,385,347,309,275,
+251,236,231,233,235,236,232,223,210,195,182,173,169,170,175,183,196,214,240,274,
+317,369,424,479,526,562,584,592,592,590,593,608,639,684,741,801,858,905,939,960,
+972,980,989,1004,1026,1050,1072,1085,1082,1061,1023,974,920,872,836,819,819,832,852,869,
+877,872,854,826,794,764,739,721,708,694,675,643,597,534,457,370,278,184,93,5,
+-79,-159,-235,-305,-368,-421,-462,-491,-512,-528,-544,-567,-601,-649,-709,-780,-856,-932,-1006,-1074,
+-1137,-1197,-1258,-1320,-1386,-1454,-1522,-1585,-1640,-1685,-1719,-1746,-1771,-1799,-1837,-1887,-1952,-2030,-2116,-2205,
+-2292,-2374,-2449,-2519,-2588,-2658,-2732,-2812,-2895,-2978,-3056,-3126,-3185,-3234,-3274,-3310,-3347,-3386,-3430,-3478,
+-3526,-3571,-3610,-3640,-3661,-3675,-3683,-3687,-3690,-3691,-3688,-3680,-3664,-3640,-3608,-3570,-3528,-3484,-3437,-3389,
+-3340,-3287,-3234,-3182,-3135,-3098,-3077,-3072,-3085,-3111,-3143,-3172,-3191,-3192,-3174,-3137,-3086,-3029,-2974,-2925,
+-2887,-2862,-2847,-2839,-2834,-2829,-2821,-2808,-2791,-2769,-2741,-2707,-2666,-2616,-2557,-2487,-2406,-2314,-2213,-2104,
+-1987,-1866,-1741,-1611,-1477,-1336,-1186,-1023,-846,-653,-448,-235,-24,174,352,499,614,699,762,815,
+873,949,1053,1189,1353,1538,1733,1925,2103,2260,2393,2501,2589,2661,2723,2780,2835,2892,2953,3020,
+3094,3176,3264,3358,3457,3558,3660,3761,3862,3961,4058,4154,4247,4334,4413,4481,4536,4578,4610,4635,
+4659,4687,4724,4771,4827,4891,4958,5025,5089,5148,5204,5259,5314,5371,5432,5494,5557,5616,5668,5711,
+5746,5772,5791,5808,5825,5845,5870,5899,5933,5971,6010,6049,6088,6127,6164,6202,6239,6276,6314,6352,
+6390,6427,6461,6491,6516,6533,6542,6544,6538,6526,6511,6494,6476,6459,6441,6419,6392,6356,6308,6250,
+6181,6107,6032,5961,5897,5844,5801,5764,5729,5692,5650,5599,5540,5477,5415,5357,5308,5270,5244,5226,
+5215,5204,5193,5177,5157,5133,5105,5073,5089,5042,4988,4925,4856,4783,4709,4638,4575,4521,4480,4450,
+4430,4417,4408,4397,4382,4359,4325,4280,4222,4151,4066,3968,3859,3743,3626,3513,3411,3328,3266,3229,
+3213,3212,3218,3220,3209,3176,3118,3033,2926,2804,2678,2554,2442,2344,2260,2190,2127,2068,2008,1947,
+1886,1828,1776,1736,1708,1693,1688,1689,1692,1692,1688,1680,1669,1660,1655,1656,1664,1678,1693,1707,
+1715,1714,1702,1676,1638,1589,1530,1464,1395,1326,1261,1202,1151,1106,1066,1025,981,930,868,798,
+723,646,573,509,454,409,368,329,286,238,184,128,74,27,-9,-35,-51,-62,-72,-85,
+-105,-130,-159,-189,-214,-233,-245,-251,-254,-258,-268,-286,-314,-353,-400,-454,-513,-576,-643,-712,
+-784,-858,-931,-1003,-1071,-1132,-1184,-1229,-1266,-1298,-1329,-1360,-1395,-1433,-1475,-1518,-1561,-1601,-1637,-1670,
+-1700,-1730,-1761,-1794,-1827,-1858,-1885,-1906,-1920,-1927,-1930,-1931,-1933,-1935,-1937,-1936,-1926,-1904,-1870,-1827,
+-1781,-1742,-1718,-1717,-1743,-1793,-1859,-1933,-2002,-2056,-2092,-2108,-2107,-2094,-2077,-2059,-2043,-2026,-2007,-1983,
+-1954,-1920,-1887,-1857,-1837,-1829,-1832,-1844,-1862,-1878,-1888,-1891,-1885,-1872,-1854,-1833,-1811,-1789,-1767,-1743,
+-1719,-1696,-1675,-1660,-1651,-1650,-1657,-1667,-1679,-1689,-1694,-1692,-1683,-1669,-1651,-1632,-1614,-1597,-1583,-1573,
+-1566,-1564,-1564,-1565,-1565,-1560,-1546,-1522,-1488,-1446,-1402,-1362,-1331,-1311,-1299,-1291,-1276,-1244,-1186,-1100,
+-989,-861,-731,-615,-526,-472,-454,-464,-491,-520,-538,-536,-513,-472,-418,-361,-308,-261,-220,-181,
+-139,-89,-29,38,111,181,243,292,326,347,359,367,378,396,422,456,492,527,552,565,
+560,539,504,461,419,386,370,376,407,460,530,609,688,758,811,845,859,855,838,812,
+783,755,730,711,699,695,697,707,722,740,759,775,786,789,785,774,760,746,734,727,
+725,727,729,731,728,721,710,695,678,661,644,627,611,595,579,567,560,561,574,597,
+629,665,699,723,734,729,708,677,640,606,579,561,553,550,547,541,528,509,486,465,
+448,439,436,436,435,428,410,381,345,305,270,245,232,234,246,264,284,301,315,327,
+340,358,383,416,455,496,534,566,589,605,617,630,646,671,704,743,785,826,862,892,
+915,936,956,980,1008,1039,1069,1092,1101,1094,1068,1025,974,921,877,848,838,846,866,891,
+912,921,916,897,868,834,804,780,764,754,746,733,710,674,622,557,482,400,312,222,
+128,32,-67,-168,-267,-360,-443,-513,-566,-606,-636,-661,-688,-721,-764,-819,-884,-955,-1031,-1107,
+-1182,-1255,-1326,-1397,-1466,-1533,-1596,-1651,-1696,-1727,-1745,-1752,-1752,-1751,-1757,-1775,-1811,-1864,-1933,-2014,
+-2101,-2187,-2269,-2344,-2414,-2481,-2550,-2625,-2706,-2793,-2883,-2972,-3054,-3128,-3193,-3249,-3301,-3352,-3403,-3457,
+-3509,-3558,-3600,-3631,-3653,-3666,-3676,-3686,-3700,-3719,-3740,-3759,-3770,-3767,-3748,-3714,-3668,-3616,-3563,-3514,
+-3472,-3437,-3406,-3377,-3348,-3318,-3289,-3264,-3246,-3236,-3236,-3242,-3251,-3259,-3261,-3255,-3240,-3220,-3195,-3169,
+-3145,-3122,-3101,-3080,-3059,-3036,-3011,-2983,-2954,-2923,-2890,-2854,-2813,-2767,-2715,-2656,-2590,-2517,-2435,-2344,
+-2243,-2135,-2018,-1898,-1776,-1656,-1537,-1417,-1291,-1152,-993,-808,-598,-367,-128,105,317,496,637,741,
+819,885,956,1045,1159,1299,1458,1625,1790,1942,2077,2193,2295,2389,2480,2574,2672,2774,2875,2974,
+3068,3156,3239,3318,3398,3479,3564,3654,3749,3848,3950,4052,4153,4250,4338,4415,4480,4532,4572,4605,
+4635,4668,4709,4761,4823,4893,4968,5043,5114,5178,5237,5290,5341,5392,5444,5498,5552,5603,5648,5686,
+5715,5737,5754,5771,5790,5814,5845,5882,5923,5967,6012,6056,6098,6139,6180,6222,6266,6312,6359,6406,
+6451,6491,6525,6551,6569,6579,6582,6578,6570,6559,6546,6533,6520,6509,6499,6488,6474,6455,6429,6392,
+6343,6284,6215,6141,6066,5993,5926,5867,5814,5765,5718,5669,5617,5561,5503,5444,5389,5341,5302,5272,
+5251,5236,5225,5213,5200,5182,5158,5127,5089,5115,5069,5011,4942,4864,4781,4699,4621,4552,4494,4448,
+4413,4385,4363,4341,4318,4290,4257,4218,4171,4117,4054,3983,3903,3817,3727,3637,3553,3477,3414,3365,
+3328,3301,3278,3253,3219,3171,3106,3023,2923,2810,2689,2566,2446,2334,2233,2144,2067,2000,1942,1891,
+1847,1809,1778,1755,1740,1733,1733,1736,1739,1741,1740,1735,1729,1722,1719,1720,1724,1731,1737,1738,
+1732,1716,1689,1655,1613,1567,1520,1471,1424,1377,1331,1288,1246,1206,1166,1125,1079,1025,960,884,
+799,708,616,531,455,392,340,297,257,217,175,130,85,43,6,-22,-45,-65,-85,-108,
+-137,-168,-199,-224,-237,-236,-220,-193,-161,-134,-119,-123,-148,-197,-266,-350,-445,-544,-642,-737,
+-824,-904,-976,-1040,-1098,-1149,-1196,-1239,-1278,-1315,-1351,-1386,-1422,-1460,-1500,-1541,-1583,-1624,-1662,-1697,
+-1729,-1758,-1787,-1817,-1848,-1880,-1912,-1942,-1968,-1988,-2003,-2012,-2018,-2023,-2028,-2031,-2029,-2020,-2000,-1970,
+-1931,-1890,-1855,-1834,-1834,-1856,-1901,-1961,-2027,-2090,-2143,-2181,-2205,-2217,-2222,-2223,-2222,-2218,-2210,-2193,
+-2167,-2131,-2091,-2051,-2017,-1996,-1987,-1992,-2005,-2021,-2034,-2041,-2039,-2030,-2014,-1996,-1976,-1955,-1932,-1906,
+-1877,-1845,-1813,-1785,-1763,-1750,-1746,-1748,-1753,-1757,-1754,-1745,-1728,-1707,-1685,-1666,-1650,-1639,-1632,-1628,
+-1623,-1619,-1615,-1611,-1608,-1604,-1596,-1582,-1558,-1522,-1476,-1424,-1373,-1330,-1299,-1281,-1272,-1262,-1239,-1192,
+-1114,-1006,-875,-734,-601,-491,-415,-378,-374,-394,-422,-444,-451,-438,-405,-359,-307,-255,-207,-162,
+-118,-70,-14,52,128,210,291,367,431,480,514,534,544,548,553,561,574,595,620,646,
+667,677,673,652,616,570,525,489,474,487,529,597,682,772,854,917,954,963,948,916,
+876,835,800,775,760,756,761,775,795,821,852,885,918,947,969,982,984,978,964,945,
+923,900,875,848,818,784,748,711,677,649,631,623,624,633,646,660,673,685,698,713,
+732,755,781,804,821,827,820,798,766,727,689,657,633,617,608,602,596,588,579,572,
+569,572,581,592,600,597,576,537,481,415,349,295,262,253,267,299,338,376,405,421,
+427,426,426,433,450,478,514,553,590,622,645,661,672,682,694,710,730,755,784,815,
+847,882,920,961,1006,1053,1099,1140,1172,1189,1189,1173,1143,1105,1067,1035,1014,1006,1011,1022,
+1033,1038,1032,1012,982,944,906,873,847,830,818,808,794,771,737,692,637,575,508,436,
+359,275,184,85,-19,-128,-235,-337,-429,-509,-579,-639,-693,-744,-796,-851,-909,-970,-1034,-1102,
+-1172,-1246,-1323,-1403,-1483,-1561,-1634,-1696,-1746,-1780,-1798,-1804,-1799,-1790,-1782,-1783,-1797,-1828,-1875,-1937,
+-2009,-2087,-2165,-2239,-2308,-2372,-2435,-2501,-2574,-2656,-2746,-2842,-2937,-3027,-3107,-3177,-3238,-3292,-3345,-3399,
+-3455,-3511,-3564,-3609,-3643,-3667,-3684,-3698,-3715,-3738,-3769,-3805,-3837,-3860,-3865,-3849,-3813,-3762,-3703,-3646,
+-3597,-3562,-3540,-3527,-3519,-3510,-3497,-3478,-3457,-3436,-3418,-3405,-3398,-3396,-3395,-3393,-3388,-3379,-3366,-3350,
+-3333,-3315,-3296,-3276,-3255,-3231,-3206,-3178,-3147,-3113,-3074,-3027,-2972,-2908,-2838,-2762,-2684,-2608,-2532,-2456,
+-2375,-2285,-2183,-2068,-1943,-1815,-1691,-1577,-1475,-1381,-1284,-1173,-1035,-863,-656,-424,-182,49,255,424,
+554,654,738,824,926,1052,1202,1366,1533,1690,1828,1944,2043,2133,2224,2325,2439,2563,2693,2819,
+2935,3037,3123,3199,3270,3343,3426,3520,3627,3742,3862,3979,4090,4189,4275,4346,4404,4451,4492,4533,
+4577,4628,4689,4759,4835,4913,4988,5055,5112,5159,5198,5234,5272,5316,5369,5431,5498,5565,5627,5678,
+5717,5743,5760,5771,5783,5800,5826,5861,5904,5953,6004,6054,6102,6147,6190,6232,6276,6322,6371,6421,
+6470,6515,6554,6583,6604,6615,6619,6618,6616,6614,6613,6613,6613,6612,6607,6598,6584,6563,6537,6504,
+6464,6416,6361,6298,6229,6157,6082,6009,5939,5873,5812,5753,5696,5640,5583,5526,5470,5416,5367,5324,
+5289,5261,5240,5225,5214,5203,5191,5174,5149,5115,5142,5095,5034,4959,4874,4784,4695,4611,4537,4473,
+4418,4371,4329,4289,4251,4213,4178,4145,4115,4086,4055,4019,3973,3915,3844,3762,3673,3583,3497,3419,
+3353,3298,3253,3212,3171,3126,3072,3005,2926,2834,2730,2616,2497,2375,2255,2142,2040,1952,1880,1826,
+1788,1763,1750,1745,1745,1749,1755,1760,1765,1769,1771,1773,1774,1777,1781,1787,1794,1801,1804,1800,
+1786,1761,1726,1683,1635,1588,1543,1503,1468,1435,1402,1366,1326,1281,1232,1180,1123,1063,998,927,
+849,766,681,596,517,446,385,332,284,238,193,146,99,56,18,-12,-36,-57,-78,-103,
+-133,-166,-198,-222,-231,-221,-192,-147,-96,-49,-16,-7,-27,-75,-150,-246,-357,-475,-596,-712,
+-821,-918,-1002,-1073,-1131,-1178,-1218,-1255,-1292,-1330,-1371,-1414,-1458,-1502,-1545,-1586,-1625,-1663,-1698,-1732,
+-1764,-1794,-1822,-1849,-1877,-1906,-1936,-1967,-1997,-2025,-2047,-2065,-2076,-2084,-2089,-2093,-2095,-2096,-2091,-2081,
+-2063,-2039,-2014,-1992,-1980,-1983,-2003,-2039,-2086,-2138,-2189,-2233,-2268,-2295,-2317,-2336,-2354,-2371,-2383,-2387,
+-2379,-2360,-2331,-2296,-2261,-2234,-2218,-2213,-2218,-2227,-2235,-2237,-2230,-2215,-2193,-2168,-2144,-2120,-2097,-2073,
+-2046,-2015,-1982,-1948,-1918,-1894,-1879,-1871,-1867,-1863,-1854,-1838,-1814,-1785,-1756,-1733,-1717,-1711,-1712,-1716,
+-1717,-1714,-1703,-1688,-1670,-1652,-1635,-1619,-1600,-1572,-1533,-1481,-1419,-1354,-1294,-1247,-1217,-1203,-1196,-1186,
+-1159,-1106,-1020,-906,-774,-639,-516,-420,-356,-323,-316,-321,-328,-326,-311,-282,-242,-197,-152,-107,
+-65,-21,26,82,146,218,295,373,446,510,562,599,622,632,631,625,619,619,630,655,
+693,738,782,815,829,819,786,738,687,646,629,642,686,754,832,905,961,991,993,972,
+936,897,863,842,836,843,859,882,908,936,966,999,1035,1073,1109,1139,1159,1167,1161,1143,
+1115,1081,1044,1004,963,920,876,831,788,750,721,705,704,716,738,765,792,814,828,834,
+835,833,832,833,836,839,837,829,813,789,760,729,701,678,659,644,630,616,600,585,
+573,567,570,580,593,602,599,578,538,481,417,357,314,295,304,338,386,438,483,512,
+524,522,513,504,505,518,543,579,618,655,685,708,721,729,734,740,748,760,777,800,
+828,862,901,946,994,1044,1093,1139,1178,1209,1228,1236,1235,1227,1215,1203,1195,1193,1195,1199,
+1201,1197,1183,1158,1123,1082,1040,1003,975,956,946,940,932,919,896,863,822,774,722,667,
+608,545,476,398,311,218,121,22,-73,-167,-259,-349,-440,-533,-628,-722,-812,-897,-974,-1045,
+-1110,-1174,-1241,-1313,-1390,-1471,-1552,-1628,-1694,-1748,-1788,-1815,-1833,-1844,-1853,-1864,-1880,-1904,-1938,-1980,
+-2032,-2090,-2153,-2216,-2278,-2338,-2397,-2457,-2523,-2597,-2682,-2776,-2875,-2973,-3063,-3141,-3205,-3256,-3299,-3341,
+-3386,-3439,-3498,-3560,-3620,-3673,-3716,-3750,-3778,-3806,-3836,-3871,-3908,-3941,-3963,-3968,-3951,-3914,-3862,-3803,
+-3746,-3699,-3666,-3646,-3636,-3631,-3626,-3618,-3606,-3592,-3578,-3568,-3561,-3557,-3554,-3547,-3535,-3516,-3490,-3459,
+-3426,-3394,-3366,-3341,-3320,-3304,-3290,-3279,-3268,-3254,-3234,-3203,-3156,-3091,-3009,-2912,-2808,-2703,-2606,-2518,
+-2438,-2360,-2276,-2177,-2060,-1925,-1781,-1639,-1510,-1401,-1312,-1233,-1152,-1053,-924,-762,-572,-369,-172,3,
+148,264,362,459,574,719,896,1098,1308,1507,1678,1812,1912,1987,2054,2129,2225,2343,2480,2625,
+2762,2882,2979,3054,3114,3172,3239,3325,3434,3563,3705,3851,3989,4111,4210,4285,4340,4379,4413,4448,
+4494,4554,4630,4717,4810,4900,4979,5039,5079,5100,5108,5113,5124,5151,5197,5263,5345,5433,5519,5595,
+5653,5693,5715,5726,5731,5738,5754,5780,5818,5866,5923,5983,6044,6103,6159,6213,6266,6318,6372,6425,
+6479,6529,6574,6611,6638,6655,6666,6673,6680,6691,6707,6728,6751,6771,6783,6782,6768,6738,6696,6644,
+6587,6526,6464,6402,6339,6273,6204,6133,6059,5985,5912,5842,5775,5712,5651,5593,5537,5482,5431,5382,
+5339,5301,5270,5246,5230,5219,5212,5204,5193,5173,5142,5130,5071,4994,4902,4802,4701,4605,4521,4450,
+4392,4344,4303,4264,4225,4187,4150,4118,4095,4079,4068,4058,4041,4009,3956,3882,3788,3680,3568,3459,
+3362,3282,3220,3172,3134,3099,3060,3012,2950,2873,2780,2673,2553,2426,2296,2169,2051,1948,1865,1805,
+1767,1748,1745,1752,1762,1772,1779,1782,1782,1782,1782,1785,1790,1799,1809,1820,1831,1839,1843,1841,
+1831,1811,1782,1744,1702,1657,1615,1577,1543,1512,1480,1443,1398,1344,1280,1209,1135,1061,988,919,
+851,786,721,657,595,536,480,427,375,323,268,211,152,96,47,7,-22,-44,-63,-83,
+-109,-139,-171,-197,-209,-203,-176,-132,-82,-36,-7,-5,-32,-89,-169,-265,-371,-479,-587,-693,
+-797,-896,-989,-1072,-1144,-1203,-1251,-1291,-1327,-1364,-1404,-1449,-1496,-1544,-1590,-1631,-1668,-1701,-1733,-1764,
+-1797,-1830,-1864,-1896,-1927,-1957,-1985,-2014,-2043,-2072,-2100,-2124,-2143,-2156,-2164,-2168,-2169,-2170,-2171,-2170,
+-2168,-2163,-2155,-2147,-2141,-2141,-2149,-2169,-2198,-2233,-2272,-2310,-2346,-2378,-2407,-2437,-2468,-2499,-2529,-2555,
+-2571,-2576,-2570,-2554,-2533,-2513,-2498,-2490,-2489,-2491,-2492,-2486,-2471,-2445,-2412,-2375,-2338,-2304,-2274,-2247,
+-2221,-2193,-2161,-2127,-2092,-2061,-2035,-2017,-2005,-1995,-1984,-1968,-1945,-1916,-1886,-1858,-1838,-1828,-1828,-1833,
+-1837,-1835,-1822,-1797,-1763,-1725,-1687,-1654,-1625,-1598,-1566,-1525,-1472,-1406,-1333,-1262,-1202,-1160,-1137,-1129,
+-1127,-1118,-1092,-1040,-960,-859,-745,-632,-530,-447,-384,-338,-302,-270,-235,-195,-149,-100,-50,-3,
+42,86,131,179,230,285,340,394,444,488,526,557,581,599,610,615,617,619,629,651,
+690,747,816,888,952,993,1004,983,935,872,812,769,754,771,814,871,926,968,986,981,
+957,926,897,882,883,900,930,964,999,1029,1056,1082,1109,1139,1172,1206,1234,1253,1257,1245,
+1219,1182,1140,1097,1058,1022,991,962,934,908,883,863,851,849,857,872,892,910,922,924,
+915,898,876,854,836,823,814,807,798,785,767,745,720,696,674,655,638,620,599,573,
+543,514,489,472,464,463,465,464,455,436,409,380,358,351,364,396,442,493,539,571,
+586,586,578,570,569,582,608,644,684,723,754,777,793,803,810,819,830,843,857,874,
+893,914,939,968,1002,1038,1076,1112,1145,1172,1194,1211,1224,1235,1246,1259,1274,1292,1311,1328,
+1339,1341,1331,1306,1269,1224,1176,1133,1100,1080,1072,1072,1075,1073,1063,1042,1012,974,932,890,
+846,801,751,694,628,556,479,402,326,252,177,97,5,-102,-226,-364,-508,-651,-782,-895,
+-989,-1065,-1128,-1185,-1243,-1306,-1373,-1445,-1516,-1585,-1648,-1704,-1756,-1804,-1849,-1893,-1936,-1976,-2015,-2053,
+-2092,-2132,-2177,-2227,-2280,-2337,-2395,-2455,-2518,-2587,-2663,-2749,-2843,-2942,-3039,-3126,-3199,-3254,-3294,-3323,
+-3352,-3388,-3437,-3499,-3573,-3651,-3727,-3794,-3849,-3894,-3932,-3965,-3997,-4028,-4053,-4068,-4069,-4053,-4020,-3974,
+-3921,-3869,-3823,-3786,-3757,-3735,-3717,-3701,-3687,-3675,-3667,-3666,-3670,-3679,-3686,-3687,-3677,-3653,-3616,-3569,
+-3517,-3466,-3421,-3384,-3357,-3339,-3328,-3322,-3318,-3316,-3311,-3299,-3275,-3233,-3168,-3081,-2975,-2858,-2739,-2628,
+-2530,-2445,-2368,-2286,-2190,-2072,-1932,-1775,-1614,-1462,-1329,-1218,-1125,-1038,-943,-830,-696,-548,-397,-258,
+-143,-54,18,94,194,337,530,768,1032,1293,1525,1705,1828,1901,1942,1978,2032,2118,2241,2391,
+2551,2703,2830,2925,2991,3038,3082,3138,3219,3328,3464,3619,3778,3930,4063,4171,4251,4309,4351,4390,
+4433,4491,4565,4654,4751,4847,4929,4989,5022,5029,5017,4998,4986,4992,5024,5084,5167,5262,5359,5445,
+5513,5558,5582,5591,5593,5597,5608,5632,5670,5722,5784,5854,5929,6006,6082,6156,6227,6295,6360,6422,
+6482,6537,6587,6630,6664,6689,6705,6717,6728,6744,6768,6802,6843,6885,6921,6943,6944,6920,6872,6805,
+6726,6641,6558,6480,6409,6344,6282,6219,6153,6084,6011,5936,5860,5785,5714,5645,5581,5520,5464,5412,
+5365,5323,5289,5261,5242,5229,5222,5217,5210,5197,5171,5130,5063,4987,4892,4783,4668,4556,4457,4377,
+4318,4278,4253,4236,4221,4202,4181,4158,4136,4118,4106,4096,4083,4059,4017,3951,3860,3750,3629,3508,
+3398,3308,3241,3196,3168,3146,3121,3083,3025,2946,2844,2724,2590,2450,2310,2178,2058,1957,1877,1821,
+1789,1776,1779,1791,1806,1818,1824,1823,1817,1810,1803,1801,1803,1809,1818,1827,1834,1838,1838,1836,
+1829,1820,1806,1788,1765,1738,1706,1671,1634,1597,1557,1512,1462,1402,1333,1256,1174,1092,1013,942,
+879,823,774,729,686,644,601,558,512,461,405,341,273,204,139,82,38,5,-17,-38,
+-61,-90,-124,-157,-182,-189,-176,-143,-100,-60,-37,-44,-85,-158,-255,-362,-467,-562,-645,-719,
+-790,-863,-942,-1026,-1111,-1190,-1261,-1320,-1368,-1411,-1452,-1495,-1541,-1588,-1633,-1674,-1709,-1738,-1765,-1792,
+-1822,-1857,-1896,-1937,-1977,-2014,-2046,-2074,-2101,-2128,-2156,-2185,-2212,-2236,-2255,-2268,-2274,-2277,-2277,-2277,
+-2278,-2279,-2281,-2284,-2288,-2294,-2304,-2320,-2341,-2367,-2397,-2429,-2460,-2492,-2523,-2557,-2592,-2630,-2669,-2705,
+-2734,-2755,-2765,-2764,-2756,-2745,-2734,-2726,-2723,-2721,-2718,-2710,-2693,-2666,-2632,-2593,-2553,-2515,-2482,-2454,
+-2428,-2402,-2374,-2342,-2305,-2267,-2230,-2197,-2168,-2146,-2126,-2108,-2087,-2063,-2036,-2008,-1982,-1962,-1950,-1943,
+-1940,-1935,-1923,-1901,-1867,-1824,-1775,-1728,-1684,-1646,-1612,-1578,-1539,-1489,-1429,-1360,-1290,-1225,-1172,-1135,
+-1114,-1104,-1097,-1083,-1056,-1012,-951,-877,-797,-715,-637,-564,-494,-425,-356,-285,-214,-143,-77,-16,
+40,94,148,205,266,329,390,444,488,518,535,544,548,553,562,575,594,616,643,677,
+719,774,840,916,993,1060,1107,1124,1108,1066,1006,945,898,873,875,899,935,969,990,994,
+979,955,930,915,917,938,973,1017,1060,1096,1123,1143,1158,1175,1196,1221,1248,1270,1283,1280,
+1261,1227,1182,1135,1091,1055,1030,1015,1007,1002,996,988,977,966,957,951,949,951,954,954,
+948,935,916,893,870,848,830,815,800,782,759,728,693,656,621,593,573,559,548,536,
+517,492,460,427,396,373,359,354,355,358,362,365,370,381,402,432,469,508,542,566,
+576,575,569,567,578,604,647,700,754,803,839,861,871,876,882,891,907,928,950,969,
+985,997,1008,1020,1038,1061,1091,1125,1160,1195,1227,1256,1281,1304,1324,1344,1363,1382,1402,1421,
+1438,1448,1448,1435,1407,1365,1313,1258,1208,1169,1144,1132,1129,1127,1119,1103,1077,1044,1007,973,
+942,914,885,850,806,752,690,626,565,512,466,422,370,302,206,80,-73,-247,-427,-599,
+-752,-877,-974,-1048,-1106,-1157,-1208,-1263,-1323,-1389,-1459,-1531,-1606,-1682,-1760,-1837,-1912,-1981,-2041,-2091,
+-2132,-2169,-2206,-2246,-2295,-2351,-2412,-2476,-2540,-2604,-2668,-2735,-2810,-2892,-2980,-3070,-3153,-3224,-3279,-3318,
+-3347,-3375,-3411,-3461,-3527,-3609,-3698,-3788,-3870,-3940,-3997,-4042,-4079,-4109,-4135,-4154,-4164,-4163,-4148,-4121,
+-4084,-4041,-3997,-3954,-3915,-3879,-3847,-3817,-3791,-3771,-3759,-3757,-3766,-3781,-3799,-3813,-3815,-3801,-3770,-3725,
+-3671,-3616,-3567,-3529,-3503,-3486,-3474,-3463,-3449,-3431,-3408,-3381,-3349,-3311,-3263,-3200,-3121,-3026,-2920,-2809,
+-2703,-2606,-2521,-2442,-2359,-2263,-2144,-2000,-1836,-1661,-1489,-1330,-1189,-1064,-947,-830,-706,-575,-446,-331,
+-241,-181,-144,-114,-65,29,185,408,681,976,1258,1493,1661,1759,1799,1810,1824,1867,1955,2090,
+2258,2437,2606,2748,2853,2925,2976,3022,3077,3155,3259,3388,3536,3690,3841,3978,4095,4190,4266,4328,
+4385,4446,4516,4599,4691,4785,4871,4939,4981,4995,4986,4964,4942,4936,4953,5000,5072,5158,5247,5326,
+5384,5419,5432,5432,5428,5431,5446,5479,5528,5592,5666,5748,5833,5921,6010,6098,6184,6265,6341,6411,
+6473,6530,6580,6624,6661,6690,6711,6725,6735,6746,6762,6788,6824,6867,6912,6949,6969,6963,6930,6870,
+6789,6696,6602,6513,6436,6371,6316,6266,6217,6164,6104,6037,5963,5883,5801,5718,5636,5558,5484,5416,
+5355,5304,5262,5229,5206,5192,5184,5181,5178,5170,5151,5117,5063,4968,4894,4801,4694,4582,4474,4380,
+4307,4259,4234,4227,4230,4236,4239,4235,4224,4208,4189,4167,4139,4102,4050,3981,3891,3785,3669,3552,
+3446,3359,3297,3259,3239,3227,3210,3177,3118,3030,2912,2771,2616,2457,2305,2168,2053,1962,1896,1853,
+1831,1824,1828,1838,1849,1858,1863,1861,1855,1845,1836,1829,1826,1826,1827,1826,1823,1814,1803,1790,
+1779,1772,1771,1773,1777,1777,1770,1752,1723,1683,1634,1579,1520,1456,1390,1320,1247,1175,1104,1039,
+980,929,886,847,812,777,742,705,665,620,569,510,442,368,292,221,159,110,75,49,
+25,-2,-37,-79,-120,-152,-164,-154,-124,-87,-58,-55,-88,-160,-263,-384,-504,-608,-690,-750,
+-796,-842,-897,-968,-1053,-1147,-1239,-1322,-1392,-1448,-1495,-1538,-1582,-1627,-1673,-1717,-1755,-1786,-1811,-1835,
+-1860,-1891,-1929,-1972,-2016,-2058,-2094,-2124,-2148,-2170,-2193,-2220,-2250,-2283,-2314,-2341,-2362,-2376,-2384,-2389,
+-2391,-2394,-2398,-2405,-2414,-2426,-2441,-2460,-2483,-2509,-2537,-2566,-2595,-2623,-2652,-2683,-2716,-2753,-2790,-2826,
+-2858,-2881,-2895,-2898,-2893,-2884,-2872,-2863,-2855,-2849,-2843,-2834,-2819,-2800,-2775,-2747,-2719,-2692,-2669,-2649,
+-2631,-2613,-2593,-2568,-2537,-2500,-2458,-2414,-2368,-2325,-2286,-2252,-2222,-2195,-2168,-2141,-2112,-2082,-2053,-2027,
+-2005,-1986,-1969,-1951,-1930,-1903,-1869,-1828,-1784,-1739,-1695,-1652,-1611,-1567,-1520,-1466,-1407,-1343,-1278,-1217,
+-1164,-1120,-1086,-1060,-1038,-1016,-991,-961,-925,-884,-839,-789,-733,-670,-600,-523,-443,-363,-288,-220,
+-161,-106,-51,10,83,169,265,364,456,532,586,618,630,632,632,637,652,678,714,756,
+802,851,903,959,1017,1074,1123,1158,1173,1167,1141,1103,1062,1030,1011,1008,1017,1031,1040,1040,
+1028,1008,987,976,980,1003,1043,1093,1145,1190,1223,1243,1253,1256,1260,1267,1278,1292,1303,1306,
+1296,1273,1237,1193,1147,1106,1073,1052,1043,1043,1047,1050,1049,1041,1028,1010,991,975,963,955,
+950,945,938,928,913,896,876,855,830,801,765,720,666,608,550,500,464,443,439,445,
+456,464,463,453,435,414,396,384,381,385,395,407,419,431,445,462,481,501,518,529,
+532,528,523,524,541,577,633,702,775,841,890,919,930,930,928,932,944,966,992,1016,
+1035,1046,1053,1059,1070,1090,1121,1164,1215,1271,1330,1390,1447,1499,1543,1575,1594,1600,1595,1584,
+1571,1560,1550,1539,1523,1496,1456,1402,1341,1277,1220,1172,1136,1106,1079,1047,1009,965,919,877,
+844,823,809,797,779,748,703,646,586,533,492,467,453,440,414,361,273,147,-10,-187,
+-369,-541,-693,-818,-919,-999,-1066,-1128,-1189,-1253,-1323,-1398,-1479,-1565,-1656,-1751,-1846,-1936,-2018,-2089,
+-2147,-2196,-2238,-2282,-2331,-2389,-2454,-2522,-2589,-2649,-2702,-2749,-2795,-2845,-2905,-2975,-3052,-3130,-3203,-3265,
+-3316,-3358,-3397,-3443,-3500,-3571,-3654,-3746,-3837,-3922,-3997,-4059,-4112,-4155,-4191,-4220,-4241,-4251,-4250,-4237,
+-4214,-4183,-4149,-4114,-4080,-4048,-4018,-3991,-3966,-3945,-3930,-3924,-3927,-3938,-3953,-3966,-3972,-3966,-3944,-3909,
+-3865,-3818,-3776,-3746,-3728,-3720,-3718,-3712,-3696,-3664,-3617,-3558,-3492,-3426,-3361,-3299,-3237,-3171,-3097,-3014,
+-2925,-2834,-2746,-2662,-2578,-2488,-2384,-2256,-2104,-1930,-1744,-1557,-1378,-1214,-1064,-923,-786,-647,-512,-388,
+-287,-219,-184,-171,-160,-121,-31,125,348,617,900,1161,1368,1506,1576,1597,1601,1618,1672,1775,
+1923,2099,2283,2455,2601,2719,2811,2889,2964,3046,3142,3253,3377,3511,3648,3783,3910,4027,4129,4218,
+4296,4368,4440,4517,4602,4694,4787,4873,4942,4988,5010,5012,5004,4997,5004,5031,5080,5143,5211,5271,
+5313,5333,5333,5322,5312,5313,5334,5378,5444,5525,5615,5708,5800,5891,5980,6069,6157,6242,6323,6396,
+6459,6513,6558,6596,6628,6656,6678,6694,6703,6708,6711,6716,6727,6745,6770,6795,6813,6815,6795,6751,
+6686,6606,6522,6441,6373,6319,6279,6249,6224,6196,6162,6118,6062,5995,5919,5834,5744,5652,5560,5471,
+5389,5316,5254,5203,5163,5134,5114,5102,5094,5086,5076,5056,5021,4968,4890,4839,4772,4692,4604,4516,
+4436,4371,4325,4299,4290,4292,4299,4307,4310,4306,4294,4273,4240,4194,4132,4054,3959,3853,3740,3629,
+3529,3447,3385,3344,3318,3297,3271,3229,3163,3068,2944,2796,2633,2469,2313,2177,2068,1988,1934,1904,
+1890,1885,1886,1887,1888,1887,1886,1883,1880,1876,1872,1867,1861,1855,1846,1833,1816,1794,1768,1739,
+1714,1696,1688,1694,1711,1734,1755,1767,1763,1741,1700,1644,1578,1510,1441,1377,1316,1258,1203,1151,
+1102,1058,1018,982,948,916,883,848,810,769,722,668,606,535,456,375,297,230,179,144,
+120,99,74,39,-5,-53,-94,-118,-119,-100,-73,-54,-61,-105,-188,-301,-428,-549,-651,-726,
+-780,-823,-869,-931,-1012,-1111,-1216,-1317,-1405,-1474,-1527,-1570,-1609,-1650,-1695,-1743,-1790,-1831,-1866,-1895,
+-1920,-1948,-1980,-2017,-2058,-2098,-2134,-2165,-2189,-2208,-2228,-2249,-2276,-2307,-2340,-2374,-2404,-2429,-2448,-2462,
+-2473,-2482,-2490,-2499,-2510,-2524,-2541,-2563,-2589,-2618,-2650,-2682,-2712,-2740,-2765,-2790,-2815,-2842,-2871,-2900,
+-2927,-2947,-2958,-2960,-2954,-2943,-2932,-2921,-2913,-2906,-2899,-2889,-2876,-2858,-2839,-2819,-2802,-2787,-2776,-2767,
+-2758,-2749,-2737,-2722,-2703,-2678,-2646,-2607,-2562,-2511,-2459,-2408,-2362,-2323,-2290,-2260,-2231,-2199,-2162,-2120,
+-2077,-2036,-2001,-1974,-1956,-1941,-1927,-1908,-1880,-1842,-1794,-1739,-1682,-1624,-1567,-1513,-1458,-1402,-1342,-1279,
+-1213,-1147,-1085,-1028,-980,-940,-908,-882,-859,-839,-819,-798,-772,-741,-702,-653,-597,-536,-474,-418,
+-370,-332,-298,-261,-210,-137,-36,90,234,383,522,637,722,776,807,823,835,851,876,908,
+944,980,1015,1046,1074,1101,1127,1151,1171,1183,1186,1180,1167,1150,1134,1121,1113,1106,1099,1089,
+1076,1062,1052,1052,1067,1100,1147,1205,1265,1319,1361,1387,1397,1395,1385,1372,1360,1350,1342,1334,
+1325,1311,1292,1268,1240,1209,1179,1153,1134,1121,1116,1114,1113,1109,1099,1082,1058,1032,1007,985,
+970,960,953,945,934,917,894,865,832,795,753,706,653,595,534,476,427,394,380,384,
+402,428,454,473,482,483,478,474,475,482,493,507,518,525,528,528,528,529,533,538,
+542,545,547,552,567,596,643,704,772,839,894,932,952,957,957,959,969,987,1010,1034,
+1052,1064,1072,1080,1095,1120,1158,1206,1261,1321,1386,1455,1529,1609,1689,1762,1817,1847,1846,1819,
+1773,1720,1674,1639,1618,1605,1589,1561,1516,1454,1379,1299,1221,1149,1084,1021,958,892,826,764,
+713,678,659,652,649,639,614,572,515,452,396,357,341,345,362,379,378,349,282,178,
+42,-114,-280,-445,-598,-736,-856,-962,-1056,-1142,-1223,-1303,-1385,-1469,-1559,-1653,-1751,-1850,-1947,-2037,
+-2118,-2190,-2253,-2313,-2373,-2437,-2505,-2575,-2642,-2701,-2750,-2786,-2813,-2839,-2870,-2912,-2968,-3036,-3110,-3183,
+-3251,-3310,-3363,-3415,-3471,-3536,-3611,-3694,-3781,-3867,-3946,-4017,-4081,-4138,-4189,-4235,-4273,-4301,-4318,-4321,
+-4313,-4296,-4274,-4250,-4229,-4211,-4196,-4184,-4174,-4167,-4163,-4162,-4164,-4168,-4172,-4173,-4168,-4155,-4132,-4101,
+-4063,-4023,-3986,-3956,-3936,-3927,-3925,-3922,-3912,-3887,-3841,-3776,-3695,-3607,-3518,-3437,-3365,-3302,-3242,-3179,
+-3112,-3037,-2957,-2875,-2792,-2706,-2611,-2500,-2367,-2209,-2029,-1837,-1642,-1457,-1286,-1131,-986,-847,-709,-573,
+-448,-344,-266,-218,-187,-156,-100,1,157,365,603,844,1055,1215,1317,1368,1390,1411,1454,1535,
+1655,1804,1967,2127,2274,2405,2522,2634,2747,2867,2994,3125,3256,3384,3508,3628,3746,3860,3969,4071,
+4164,4245,4319,4389,4462,4544,4635,4733,4831,4920,4991,5040,5069,5082,5091,5102,5123,5155,5192,5228,
+5255,5267,5266,5257,5251,5257,5285,5338,5414,5507,5608,5709,5804,5891,5974,6055,6136,6219,6301,6377,
+6443,6498,6539,6570,6594,6614,6631,6644,6652,6653,6647,6634,6620,6607,6599,6594,6589,6580,6559,6522,
+6470,6407,6339,6276,6224,6188,6168,6161,6161,6160,6154,6138,6110,6069,6016,5952,5878,5797,5709,5619,
+5530,5444,5364,5292,5227,5170,5121,5080,5045,5017,4994,4974,4954,4927,4890,4849,4822,4784,4735,4677,
+4612,4547,4487,4437,4399,4374,4360,4356,4357,4362,4365,4361,4347,4316,4265,4193,4101,3994,3882,3772,
+3674,3592,3527,3477,3435,3392,3339,3271,3181,3071,2941,2797,2645,2494,2353,2228,2127,2051,2001,1973,
+1959,1954,1951,1946,1938,1928,1920,1915,1915,1918,1922,1924,1920,1910,1892,1869,1841,1809,1774,1737,
+1699,1665,1638,1622,1621,1635,1659,1687,1710,1718,1706,1672,1620,1555,1486,1419,1358,1304,1256,1213,
+1173,1136,1101,1069,1040,1014,988,960,928,892,850,800,743,675,597,511,421,335,262,207,
+173,156,146,134,111,74,27,-18,-53,-69,-66,-55,-49,-67,-118,-205,-318,-442,-560,-658,
+-733,-791,-843,-903,-981,-1079,-1190,-1303,-1405,-1487,-1549,-1593,-1628,-1664,-1705,-1753,-1805,-1857,-1905,-1946,
+-1980,-2011,-2041,-2074,-2109,-2144,-2177,-2207,-2234,-2257,-2279,-2304,-2331,-2361,-2392,-2422,-2449,-2473,-2492,-2509,
+-2525,-2540,-2555,-2569,-2583,-2596,-2610,-2627,-2649,-2676,-2709,-2745,-2781,-2814,-2843,-2867,-2887,-2906,-2925,-2944,
+-2963,-2977,-2985,-2984,-2977,-2966,-2955,-2948,-2947,-2949,-2951,-2950,-2942,-2927,-2906,-2883,-2861,-2844,-2831,-2821,
+-2811,-2800,-2786,-2770,-2753,-2737,-2719,-2697,-2670,-2635,-2592,-2544,-2494,-2449,-2410,-2379,-2352,-2325,-2291,-2249,
+-2198,-2142,-2088,-2041,-2006,-1983,-1969,-1958,-1942,-1915,-1873,-1818,-1752,-1681,-1608,-1539,-1473,-1411,-1349,-1287,
+-1221,-1154,-1086,-1020,-959,-905,-858,-818,-781,-748,-716,-686,-659,-634,-608,-581,-550,-512,-469,-425,
+-385,-354,-333,-321,-308,-282,-229,-140,-11,150,332,515,681,817,918,984,1026,1052,1074,1096,
+1120,1145,1166,1181,1189,1191,1191,1191,1193,1197,1202,1205,1205,1199,1189,1175,1159,1141,1124,1109,
+1098,1093,1100,1118,1151,1198,1254,1314,1372,1423,1462,1486,1496,1494,1482,1463,1439,1412,1385,1358,
+1334,1316,1304,1297,1294,1291,1285,1274,1259,1241,1224,1208,1196,1187,1177,1163,1143,1117,1086,1054,
+1023,997,974,953,930,903,869,829,787,744,705,669,637,604,571,536,503,473,453,445,
+448,462,481,499,512,518,519,519,521,528,542,559,576,588,592,590,584,579,580,590,
+607,629,653,677,701,726,756,792,834,878,919,951,974,988,998,1009,1024,1044,1065,1083,
+1094,1098,1100,1107,1127,1163,1212,1267,1317,1356,1381,1399,1423,1466,1535,1629,1737,1838,1913,1947,
+1937,1891,1828,1767,1724,1703,1701,1705,1698,1670,1613,1532,1434,1329,1224,1125,1032,942,856,776,
+705,649,612,592,585,581,570,544,499,440,375,316,273,253,259,284,319,350,365,352,
+304,220,101,-44,-210,-386,-560,-724,-873,-1002,-1113,-1208,-1292,-1371,-1450,-1533,-1622,-1717,-1817,-1919,
+-2019,-2115,-2207,-2293,-2375,-2453,-2528,-2599,-2664,-2721,-2768,-2804,-2830,-2853,-2877,-2909,-2952,-3008,-3072,-3139,
+-3205,-3266,-3321,-3373,-3427,-3489,-3560,-3640,-3724,-3807,-3884,-3953,-4014,-4069,-4121,-4173,-4223,-4268,-4307,-4335,
+-4352,-4359,-4360,-4358,-4356,-4357,-4361,-4366,-4374,-4382,-4392,-4401,-4410,-4416,-4416,-4407,-4389,-4363,-4329,-4292,
+-4254,-4218,-4185,-4154,-4127,-4103,-4081,-4060,-4036,-4006,-3966,-3912,-3844,-3764,-3677,-3588,-3504,-3426,-3354,-3284,
+-3212,-3135,-3053,-2969,-2887,-2807,-2729,-2647,-2553,-2438,-2298,-2136,-1960,-1780,-1608,-1451,-1309,-1178,-1051,-920,
+-785,-650,-521,-408,-311,-226,-139,-37,95,262,457,660,851,1007,1117,1184,1220,1250,1294,1367,
+1473,1605,1747,1885,2010,2120,2223,2329,2449,2586,2739,2898,3053,3198,3328,3447,3560,3673,3788,3904,
+4015,4115,4201,4273,4336,4400,4473,4559,4659,4766,4870,4960,5030,5076,5102,5115,5121,5129,5140,5155,
+5170,5183,5193,5200,5211,5232,5270,5329,5409,5504,5607,5710,5805,5891,5969,6043,6118,6196,6277,6357,
+6430,6492,6537,6567,6585,6594,6599,6602,6603,6598,6586,6565,6536,6504,6471,6442,6417,6392,6365,6330,
+6285,6233,6177,6125,6084,6058,6050,6055,6069,6085,6097,6100,6092,6074,6045,6008,5963,5910,5851,5786,
+5716,5642,5565,5487,5409,5331,5253,5178,5107,5044,4990,4947,4915,4891,4871,4849,4842,4820,4791,4753,
+4707,4654,4598,4543,4493,4450,4417,4396,4386,4387,4395,4406,4413,4408,4382,4332,4255,4156,4043,3929,
+3825,3738,3671,3620,3575,3524,3457,3367,3254,3121,2977,2829,2685,2550,2427,2319,2226,2149,2091,2049,
+2023,2008,1999,1993,1986,1977,1969,1964,1964,1969,1977,1983,1983,1974,1955,1927,1895,1862,1829,1797,
+1765,1731,1693,1654,1620,1595,1584,1589,1606,1627,1642,1643,1623,1583,1526,1462,1398,1338,1287,1244,
+1206,1171,1140,1111,1087,1066,1049,1032,1012,985,951,908,856,794,722,640,549,453,360,278,
+217,179,163,160,158,147,121,82,39,2,-21,-29,-31,-39,-69,-131,-226,-343,-467,-582,
+-677,-749,-807,-865,-934,-1023,-1130,-1247,-1361,-1461,-1539,-1597,-1640,-1678,-1719,-1767,-1822,-1879,-1935,-1985,
+-2027,-2065,-2099,-2132,-2164,-2197,-2227,-2255,-2281,-2306,-2333,-2364,-2398,-2434,-2470,-2501,-2526,-2545,-2558,-2569,
+-2581,-2596,-2614,-2634,-2652,-2668,-2680,-2690,-2701,-2717,-2740,-2772,-2809,-2848,-2885,-2918,-2944,-2965,-2983,-3000,
+-3016,-3028,-3035,-3033,-3024,-3010,-2995,-2986,-2987,-2997,-3012,-3028,-3037,-3035,-3020,-2995,-2965,-2935,-2909,-2886,
+-2864,-2841,-2814,-2784,-2754,-2728,-2708,-2693,-2681,-2666,-2646,-2617,-2581,-2543,-2507,-2477,-2452,-2430,-2404,-2370,
+-2324,-2268,-2207,-2147,-2095,-2055,-2025,-2003,-1981,-1955,-1918,-1869,-1811,-1744,-1674,-1603,-1532,-1461,-1390,-1317,
+-1243,-1169,-1098,-1033,-976,-928,-888,-850,-812,-770,-722,-669,-616,-565,-522,-485,-451,-418,-378,-332,
+-282,-232,-192,-165,-153,-148,-137,-104,-36,73,223,399,584,759,908,1024,1107,1163,1203,1235,
+1264,1292,1316,1333,1340,1339,1330,1317,1304,1293,1284,1277,1268,1256,1240,1220,1198,1175,1154,1140,
+1135,1141,1161,1196,1242,1297,1353,1405,1447,1476,1490,1492,1487,1478,1469,1460,1449,1435,1415,1390,
+1361,1335,1316,1308,1311,1323,1337,1346,1346,1336,1316,1292,1269,1249,1234,1221,1206,1186,1157,1121,
+1081,1038,996,954,910,864,814,762,711,668,636,618,613,615,619,619,611,597,577,558,
+544,537,538,544,551,557,558,557,555,555,560,571,584,596,605,608,607,606,610,624,
+649,687,732,780,825,864,898,927,955,981,1007,1031,1052,1070,1087,1106,1127,1150,1171,1183,
+1183,1172,1154,1143,1150,1183,1240,1309,1370,1402,1394,1346,1276,1213,1189,1225,1326,1476,1647,1802,
+1911,1960,1955,1913,1861,1823,1810,1822,1845,1860,1851,1808,1730,1625,1502,1372,1244,1121,1005,899,
+805,728,670,632,613,604,596,582,553,510,455,395,340,298,273,267,279,302,330,353,
+361,345,296,208,81,-81,-269,-469,-666,-845,-998,-1121,-1217,-1295,-1362,-1430,-1503,-1586,-1679,-1781,
+-1888,-1998,-2108,-2216,-2320,-2418,-2507,-2586,-2654,-2711,-2756,-2793,-2825,-2854,-2887,-2925,-2971,-3024,-3083,-3143,
+-3200,-3250,-3294,-3335,-3378,-3430,-3494,-3572,-3659,-3747,-3830,-3900,-3957,-4001,-4039,-4076,-4117,-4162,-4211,-4258,
+-4302,-4341,-4375,-4406,-4436,-4466,-4494,-4520,-4542,-4560,-4576,-4590,-4604,-4614,-4618,-4612,-4593,-4561,-4519,-4474,
+-4432,-4396,-4369,-4347,-4325,-4299,-4265,-4222,-4172,-4117,-4059,-3998,-3934,-3864,-3788,-3708,-3624,-3538,-3451,-3363,
+-3270,-3171,-3066,-2960,-2858,-2767,-2690,-2626,-2571,-2513,-2442,-2350,-2236,-2106,-1969,-1835,-1710,-1596,-1486,-1371,
+-1245,-1102,-945,-781,-618,-462,-312,-162,-5,166,353,545,727,882,997,1069,1106,1129,1159,1216,
+1307,1430,1570,1711,1837,1943,2035,2123,2222,2342,2483,2638,2796,2945,3079,3198,3310,3425,3549,3684,
+3825,3960,4080,4179,4257,4321,4383,4451,4534,4631,4734,4834,4920,4985,5026,5047,5054,5056,5058,5065,
+5078,5098,5122,5149,5182,5221,5271,5334,5410,5499,5595,5694,5791,5881,5963,6041,6117,6195,6275,6356,
+6433,6499,6551,6585,6601,6604,6598,6588,6575,6560,6540,6513,6478,6438,6397,6358,6324,6295,6267,6238,
+6201,6158,6110,6063,6023,5996,5985,5989,6003,6020,6034,6041,6039,6028,6010,5988,5963,5936,5905,5871,
+5831,5783,5725,5658,5581,5496,5404,5309,5215,5128,5051,4987,4939,4903,4879,4860,4842,4856,4820,4776,
+4725,4671,4616,4563,4517,4478,4450,4432,4424,4426,4435,4449,4462,4466,4455,4421,4358,4268,4156,4034,
+3914,3812,3733,3679,3640,3604,3554,3479,3373,3239,3087,2930,2780,2646,2529,2429,2341,2262,2192,2131,
+2083,2050,2030,2021,2018,2016,2012,2005,1997,1990,1986,1985,1982,1977,1965,1947,1925,1902,1883,1868,
+1855,1840,1816,1780,1733,1679,1627,1587,1566,1564,1578,1595,1604,1596,1567,1520,1461,1400,1345,1298,
+1260,1227,1198,1171,1146,1123,1105,1088,1072,1050,1022,983,937,883,823,756,682,600,510,418,
+332,260,209,178,164,154,140,116,83,47,19,4,2,4,-5,-41,-113,-218,-346,-479,
+-597,-692,-763,-821,-878,-951,-1044,-1155,-1275,-1391,-1491,-1571,-1633,-1685,-1735,-1789,-1849,-1912,-1973,-2028,
+-2076,-2116,-2153,-2189,-2224,-2258,-2290,-2316,-2338,-2358,-2379,-2405,-2437,-2476,-2517,-2555,-2586,-2608,-2622,-2631,
+-2640,-2652,-2670,-2693,-2718,-2741,-2759,-2771,-2779,-2787,-2799,-2819,-2847,-2883,-2923,-2961,-2996,-3025,-3049,-3070,
+-3089,-3106,-3118,-3123,-3118,-3103,-3083,-3065,-3054,-3057,-3073,-3097,-3122,-3139,-3141,-3129,-3103,-3070,-3035,-3002,
+-2971,-2937,-2899,-2855,-2807,-2761,-2722,-2694,-2677,-2667,-2659,-2646,-2626,-2599,-2569,-2538,-2512,-2488,-2463,-2432,
+-2391,-2341,-2283,-2223,-2168,-2122,-2085,-2054,-2025,-1991,-1951,-1903,-1849,-1793,-1736,-1679,-1620,-1556,-1485,-1405,
+-1318,-1229,-1142,-1064,-1000,-950,-915,-887,-861,-829,-786,-730,-666,-600,-537,-482,-436,-394,-350,-298,
+-234,-161,-88,-24,21,49,64,79,112,176,278,415,575,740,893,1021,1120,1193,1247,1291,
+1332,1373,1411,1443,1465,1476,1477,1471,1461,1451,1440,1428,1414,1395,1372,1345,1319,1294,1275,1265,
+1264,1276,1300,1336,1381,1428,1473,1507,1525,1524,1506,1476,1443,1416,1401,1401,1414,1433,1449,1457,
+1453,1438,1418,1401,1391,1391,1398,1406,1408,1400,1379,1350,1318,1289,1266,1249,1235,1218,1193,1157,
+1111,1056,997,934,867,797,724,652,586,536,508,507,530,570,615,652,671,668,646,611,
+574,544,528,528,542,564,590,614,631,642,647,647,646,644,641,639,637,637,641,653,
+675,708,751,802,854,904,949,989,1025,1058,1092,1125,1157,1186,1211,1234,1256,1276,1292,1300,
+1294,1271,1235,1196,1168,1168,1202,1264,1336,1388,1393,1336,1222,1078,946,871,886,1001,1196,1433,
+1663,1844,1952,1986,1966,1925,1892,1886,1909,1952,1995,2018,2007,1955,1865,1745,1604,1452,1296,1144,
+1003,880,781,710,664,640,627,616,597,568,528,480,432,388,352,325,307,297,294,297,
+302,303,292,258,189,77,-75,-265,-474,-684,-876,-1036,-1160,-1251,-1320,-1378,-1440,-1511,-1595,-1691,
+-1795,-1905,-2016,-2129,-2241,-2350,-2453,-2547,-2627,-2693,-2745,-2787,-2823,-2857,-2894,-2936,-2984,-3036,-3090,-3143,
+-3192,-3234,-3270,-3301,-3333,-3372,-3425,-3494,-3579,-3672,-3765,-3848,-3913,-3958,-3988,-4010,-4033,-4062,-4102,-4152,
+-4208,-4267,-4327,-4387,-4446,-4503,-4558,-4607,-4647,-4677,-4698,-4712,-4723,-4732,-4738,-4739,-4729,-4705,-4669,-4623,
+-4577,-4538,-4511,-4496,-4488,-4478,-4458,-4421,-4367,-4298,-4221,-4140,-4060,-3980,-3902,-3822,-3740,-3655,-3566,-3473,
+-3372,-3262,-3140,-3009,-2875,-2748,-2636,-2548,-2484,-2441,-2408,-2375,-2331,-2272,-2198,-2116,-2032,-1948,-1864,-1773,
+-1667,-1538,-1384,-1207,-1015,-818,-622,-431,-242,-51,145,345,539,714,854,952,1006,1030,1045,1073,
+1133,1231,1362,1512,1661,1796,1911,2010,2106,2210,2329,2462,2600,2732,2852,2956,3053,3154,3269,3405,
+3558,3717,3870,4003,4111,4198,4273,4349,4434,4531,4637,4742,4834,4905,4951,4975,4982,4982,4984,4992,
+5010,5039,5076,5120,5169,5223,5280,5343,5413,5490,5575,5666,5761,5857,5952,6044,6132,6216,6298,6376,
+6449,6513,6564,6598,6616,6618,6608,6591,6570,6546,6519,6488,6451,6410,6367,6326,6289,6259,6233,6208,
+6179,6143,6100,6054,6011,5978,5959,5953,5959,5970,5981,5985,5981,5969,5951,5931,5911,5894,5878,5863,
+5844,5818,5781,5729,5660,5574,5475,5369,5264,5166,5084,5020,4974,4943,4922,4904,4883,4856,4869,4810,
+4743,4673,4604,4542,4492,4457,4437,4434,4445,4465,4489,4510,4523,4524,4507,4470,4409,4324,4216,4091,
+3960,3837,3733,3656,3606,3575,3548,3507,3439,3338,3208,3059,2905,2761,2634,2526,2433,2350,2274,2204,
+2144,2098,2068,2056,2055,2057,2055,2042,2016,1981,1943,1908,1882,1867,1861,1863,1868,1874,1881,1889,
+1897,1901,1899,1884,1851,1803,1742,1680,1627,1593,1580,1585,1598,1607,1602,1576,1532,1478,1423,1376,
+1339,1312,1290,1267,1242,1213,1183,1154,1126,1096,1063,1022,975,924,872,821,772,720,661,591,
+510,425,343,273,218,178,145,114,79,43,13,-2,0,18,37,40,8,-66,-182,-323,
+-469,-598,-700,-775,-835,-897,-975,-1074,-1192,-1316,-1434,-1534,-1615,-1681,-1740,-1800,-1864,-1933,-2001,-2063,
+-2117,-2161,-2200,-2238,-2277,-2316,-2354,-2385,-2408,-2424,-2436,-2449,-2467,-2493,-2527,-2564,-2600,-2631,-2655,-2673,
+-2688,-2702,-2719,-2740,-2765,-2790,-2814,-2834,-2851,-2866,-2881,-2900,-2925,-2954,-2987,-3021,-3052,-3078,-3100,-3120,
+-3138,-3156,-3173,-3186,-3191,-3185,-3170,-3149,-3129,-3118,-3122,-3140,-3168,-3197,-3218,-3225,-3216,-3194,-3165,-3134,
+-3103,-3070,-3033,-2987,-2931,-2871,-2812,-2762,-2727,-2707,-2698,-2690,-2678,-2657,-2627,-2592,-2556,-2522,-2489,-2455,
+-2415,-2367,-2314,-2260,-2210,-2170,-2139,-2114,-2090,-2058,-2017,-1965,-1906,-1845,-1787,-1733,-1680,-1624,-1560,-1484,
+-1396,-1300,-1202,-1109,-1028,-963,-913,-876,-844,-811,-772,-723,-664,-601,-538,-482,-433,-391,-350,-300,
+-237,-160,-73,10,82,134,167,188,213,260,341,457,602,760,911,1041,1141,1213,1266,1308,
+1350,1394,1440,1481,1514,1536,1547,1552,1555,1560,1566,1572,1573,1567,1554,1534,1512,1492,1479,1474,
+1478,1490,1509,1533,1560,1587,1609,1621,1618,1600,1565,1519,1471,1431,1408,1408,1432,1473,1521,1566,
+1596,1609,1604,1586,1565,1545,1530,1519,1506,1486,1455,1415,1370,1327,1292,1265,1243,1221,1190,1146,
+1087,1017,939,856,771,682,588,491,398,321,272,261,293,361,448,535,602,636,633,600,
+550,499,464,452,466,504,558,618,675,721,751,764,762,749,731,714,702,699,704,717,
+738,765,797,835,874,915,954,992,1030,1069,1113,1160,1210,1258,1300,1334,1357,1373,1382,1385,
+1379,1361,1328,1283,1234,1195,1181,1197,1239,1288,1315,1293,1209,1068,902,755,676,698,830,1049,
+1313,1567,1766,1885,1923,1903,1859,1826,1826,1865,1936,2019,2092,2138,2143,2102,2016,1890,1731,1551,
+1362,1178,1013,878,778,711,670,644,622,594,558,514,467,422,383,349,321,294,268,243,
+220,201,185,166,134,76,-18,-153,-326,-522,-722,-906,-1059,-1175,-1259,-1323,-1382,-1449,-1530,-1624,
+-1728,-1836,-1942,-2046,-2149,-2254,-2359,-2463,-2561,-2647,-2720,-2779,-2826,-2867,-2906,-2946,-2987,-3030,-3072,-3111,
+-3149,-3184,-3218,-3252,-3286,-3325,-3371,-3430,-3501,-3585,-3675,-3764,-3841,-3902,-3942,-3968,-3985,-4005,-4035,-4077,
+-4133,-4197,-4265,-4334,-4403,-4471,-4538,-4601,-4658,-4705,-4740,-4763,-4775,-4782,-4785,-4784,-4779,-4764,-4739,-4703,
+-4663,-4625,-4596,-4582,-4579,-4581,-4579,-4562,-4526,-4470,-4397,-4314,-4226,-4139,-4053,-3970,-3888,-3807,-3727,-3644,
+-3557,-3460,-3349,-3222,-3078,-2925,-2772,-2632,-2514,-2422,-2358,-2313,-2280,-2250,-2217,-2180,-2137,-2089,-2036,-1973,
+-1893,-1791,-1660,-1502,-1320,-1122,-918,-716,-518,-324,-130,64,259,446,614,750,846,902,930,950,
+984,1048,1151,1287,1444,1604,1752,1882,1998,2107,2220,2340,2464,2585,2694,2786,2865,2941,3027,3134,
+3263,3408,3556,3692,3808,3904,3989,4077,4181,4307,4448,4594,4727,4833,4904,4942,4953,4951,4949,4954,
+4972,5004,5047,5098,5156,5216,5279,5343,5410,5480,5555,5636,5726,5824,5927,6031,6134,6229,6316,6392,
+6457,6511,6553,6583,6600,6605,6598,6584,6563,6540,6513,6483,6448,6408,6366,6323,6284,6249,6219,6192,
+6162,6127,6084,6037,5991,5952,5925,5913,5913,5922,5931,5936,5933,5921,5904,5883,5862,5843,5829,5817,
+5806,5793,5771,5735,5681,5606,5511,5402,5289,5184,5096,5032,4993,4974,4966,4959,4943,4914,4869,4852,
+4775,4695,4615,4542,4479,4430,4400,4392,4407,4440,4484,4527,4556,4564,4545,4501,4433,4347,4246,4134,
+4013,3890,3772,3669,3586,3526,3484,3449,3408,3346,3258,3143,3009,2867,2728,2601,2490,2393,2308,2235,
+2174,2129,2101,2092,2096,2106,2108,2092,2053,1990,1912,1829,1758,1708,1688,1695,1725,1768,1814,1854,
+1885,1903,1910,1905,1887,1857,1816,1766,1715,1671,1639,1622,1619,1621,1618,1602,1570,1525,1474,1428,
+1392,1369,1355,1342,1324,1296,1260,1218,1174,1131,1088,1042,992,939,886,839,801,770,742,706,
+655,587,504,416,332,260,201,150,103,56,12,-20,-33,-22,7,39,52,26,-49,-171,
+-321,-476,-614,-722,-801,-866,-933,-1018,-1126,-1251,-1380,-1499,-1599,-1677,-1741,-1799,-1860,-1927,-1997,-2067,
+-2129,-2182,-2227,-2268,-2309,-2352,-2395,-2435,-2467,-2489,-2502,-2510,-2519,-2534,-2556,-2584,-2617,-2651,-2683,-2711,
+-2737,-2759,-2779,-2798,-2815,-2831,-2847,-2864,-2884,-2907,-2936,-2967,-3001,-3034,-3065,-3091,-3111,-3125,-3133,-3139,
+-3144,-3151,-3161,-3172,-3181,-3185,-3180,-3167,-3151,-3137,-3132,-3142,-3166,-3199,-3232,-3257,-3267,-3261,-3244,-3220,
+-3194,-3169,-3140,-3104,-3056,-2997,-2930,-2866,-2814,-2779,-2761,-2755,-2750,-2737,-2711,-2673,-2627,-2579,-2534,-2492,
+-2453,-2412,-2369,-2325,-2284,-2250,-2225,-2207,-2190,-2167,-2130,-2078,-2013,-1940,-1866,-1795,-1727,-1660,-1590,-1513,
+-1428,-1337,-1245,-1156,-1075,-1004,-943,-889,-838,-787,-732,-672,-609,-544,-483,-428,-383,-345,-310,-269,
+-217,-149,-68,16,95,155,193,212,228,257,316,415,550,709,870,1014,1128,1209,1263,1303,
+1340,1381,1426,1470,1505,1527,1538,1542,1548,1562,1585,1614,1643,1666,1677,1676,1668,1658,1651,1651,
+1658,1670,1682,1694,1702,1705,1704,1698,1685,1664,1635,1600,1565,1534,1517,1518,1539,1580,1632,1686,
+1732,1760,1768,1757,1733,1704,1675,1649,1622,1590,1548,1494,1432,1367,1308,1259,1219,1182,1137,1077,
+996,897,788,678,574,477,384,289,191,96,16,-31,-34,13,105,222,340,436,496,516,
+504,477,450,437,445,476,525,585,649,710,759,793,809,806,791,771,755,749,756,777,
+808,844,882,919,954,988,1019,1048,1075,1102,1132,1169,1214,1266,1319,1369,1407,1431,1441,1441,
+1435,1425,1409,1385,1351,1311,1273,1246,1236,1241,1249,1238,1190,1094,959,811,691,637,676,810,
+1015,1250,1466,1625,1708,1719,1683,1633,1602,1610,1664,1757,1873,1992,2092,2157,2176,2142,2054,1918,
+1745,1550,1352,1167,1009,885,795,731,683,642,599,550,495,439,384,336,294,257,223,189,
+152,115,78,43,8,-33,-89,-170,-283,-425,-588,-755,-909,-1038,-1135,-1206,-1265,-1326,-1401,-1494,
+-1601,-1713,-1821,-1921,-2012,-2100,-2193,-2293,-2400,-2508,-2609,-2697,-2770,-2828,-2877,-2921,-2961,-2999,-3032,-3061,
+-3087,-3114,-3145,-3182,-3227,-3277,-3331,-3387,-3446,-3510,-3580,-3654,-3728,-3797,-3854,-3896,-3927,-3952,-3980,-4017,
+-4068,-4129,-4197,-4266,-4333,-4397,-4458,-4520,-4582,-4643,-4698,-4743,-4775,-4793,-4798,-4793,-4780,-4760,-4734,-4703,
+-4671,-4642,-4622,-4613,-4616,-4626,-4633,-4630,-4608,-4567,-4506,-4434,-4355,-4276,-4200,-4128,-4059,-3994,-3930,-3867,
+-3801,-3727,-3640,-3533,-3404,-3254,-3090,-2920,-2758,-2611,-2486,-2384,-2303,-2239,-2188,-2146,-2109,-2075,-2038,-1994,
+-1935,-1856,-1754,-1626,-1475,-1304,-1120,-928,-735,-545,-358,-174,6,182,349,498,622,715,778,819,
+854,902,977,1086,1227,1386,1547,1697,1830,1949,2062,2177,2299,2424,2543,2646,2731,2800,2864,2937,
+3028,3137,3255,3369,3468,3547,3614,3685,3780,3912,4082,4277,4476,4653,4791,4880,4924,4936,4935,4934,
+4944,4970,5009,5059,5116,5179,5245,5314,5386,5461,5539,5621,5709,5804,5906,6013,6120,6221,6311,6387,
+6447,6492,6526,6549,6563,6568,6566,6557,6541,6522,6499,6472,6441,6404,6363,6319,6275,6234,6198,6165,
+6134,6099,6059,6014,5968,5927,5898,5884,5883,5891,5902,5910,5909,5900,5883,5863,5840,5819,5799,5782,
+5766,5752,5737,5716,5685,5638,5571,5484,5385,5283,5190,5118,5070,5045,5033,5024,5006,4971,4919,4852,
+4795,4714,4640,4572,4509,4451,4400,4363,4348,4362,4400,4454,4508,4543,4548,4518,4456,4372,4277,4180,
+4083,3985,3884,3779,3674,3575,3487,3414,3353,3297,3234,3157,3061,2946,2818,2684,2554,2432,2325,2234,
+2163,2115,2090,2087,2100,2119,2132,2127,2093,2028,1936,1829,1721,1632,1575,1558,1582,1637,1708,1781,
+1841,1881,1897,1894,1878,1854,1826,1797,1767,1736,1707,1681,1660,1642,1625,1603,1573,1532,1486,1440,
+1402,1377,1363,1355,1344,1324,1291,1248,1199,1150,1103,1057,1011,961,908,857,814,782,760,741,
+714,670,605,523,433,347,274,216,167,121,72,22,-19,-43,-42,-20,6,16,-11,-88,
+-212,-364,-519,-656,-761,-838,-901,-967,-1053,-1164,-1292,-1424,-1546,-1648,-1729,-1795,-1856,-1920,-1989,-2061,
+-2131,-2193,-2247,-2293,-2336,-2379,-2423,-2465,-2503,-2533,-2554,-2568,-2580,-2595,-2614,-2639,-2669,-2700,-2732,-2763,
+-2794,-2824,-2851,-2873,-2888,-2896,-2899,-2901,-2909,-2926,-2956,-2996,-3042,-3087,-3124,-3150,-3163,-3165,-3160,-3152,
+-3145,-3140,-3140,-3142,-3146,-3147,-3145,-3137,-3126,-3114,-3109,-3114,-3133,-3165,-3203,-3238,-3263,-3272,-3264,-3245,
+-3220,-3196,-3173,-3148,-3116,-3072,-3015,-2952,-2891,-2843,-2814,-2804,-2804,-2805,-2795,-2768,-2725,-2673,-2620,-2572,
+-2534,-2502,-2475,-2448,-2420,-2393,-2366,-2341,-2315,-2283,-2241,-2186,-2118,-2042,-1962,-1881,-1802,-1724,-1642,-1556,
+-1465,-1373,-1285,-1205,-1136,-1076,-1021,-968,-911,-849,-781,-708,-634,-560,-490,-427,-374,-329,-290,-252,
+-208,-153,-85,-7,71,141,192,223,240,259,295,364,470,607,760,908,1035,1131,1199,1247,
+1289,1334,1383,1433,1474,1500,1510,1508,1505,1512,1534,1571,1617,1660,1693,1711,1716,1712,1708,1708,
+1714,1724,1733,1739,1738,1731,1719,1705,1690,1675,1661,1647,1636,1630,1630,1641,1663,1695,1734,1776,
+1812,1836,1845,1837,1815,1785,1754,1723,1694,1660,1615,1553,1473,1381,1287,1201,1130,1072,1017,950,
+861,744,604,456,318,203,115,49,-6,-62,-121,-176,-213,-216,-177,-97,10,125,228,307,
+361,398,426,456,491,531,571,608,642,673,703,732,757,775,784,783,779,778,788,811,
+846,889,934,977,1018,1058,1096,1132,1164,1190,1208,1223,1242,1272,1316,1371,1430,1482,1518,1535,
+1535,1524,1507,1490,1473,1452,1427,1399,1370,1344,1320,1290,1242,1167,1061,936,813,724,696,744,
+863,1029,1205,1355,1452,1487,1470,1422,1372,1342,1348,1394,1475,1580,1692,1797,1879,1925,1926,1880,
+1788,1660,1510,1353,1201,1063,944,844,762,693,634,581,529,474,416,356,296,241,193,151,
+115,78,37,-10,-65,-125,-190,-262,-345,-443,-557,-682,-809,-926,-1021,-1091,-1143,-1188,-1242,-1316,
+-1412,-1523,-1636,-1738,-1826,-1900,-1970,-2049,-2144,-2255,-2375,-2494,-2600,-2689,-2760,-2819,-2870,-2917,-2959,-2995,
+-3025,-3052,-3081,-3117,-3165,-3222,-3285,-3346,-3403,-3452,-3499,-3548,-3603,-3664,-3727,-3787,-3837,-3877,-3911,-3945,
+-3985,-4036,-4096,-4161,-4226,-4288,-4346,-4404,-4464,-4530,-4600,-4669,-4731,-4777,-4804,-4809,-4794,-4764,-4724,-4681,
+-4642,-4614,-4601,-4605,-4624,-4650,-4675,-4687,-4678,-4645,-4592,-4523,-4449,-4378,-4315,-4261,-4216,-4177,-4141,-4104,
+-4061,-4006,-3933,-3837,-3715,-3569,-3406,-3234,-3065,-2905,-2758,-2626,-2506,-2399,-2304,-2224,-2159,-2108,-2064,-2021,
+-1969,-1903,-1818,-1714,-1594,-1457,-1307,-1141,-963,-773,-578,-384,-197,-23,135,277,401,506,590,655,
+708,758,820,906,1021,1162,1318,1474,1617,1742,1854,1963,2079,2206,2341,2472,2588,2681,2753,2815,
+2881,2962,3059,3163,3261,3342,3402,3453,3514,3607,3748,3935,4154,4378,4577,4731,4830,4880,4897,4900,
+4905,4922,4955,5001,5057,5119,5188,5262,5342,5428,5518,5612,5708,5806,5908,6012,6115,6213,6302,6377,
+6435,6479,6509,6529,6540,6545,6542,6533,6518,6497,6473,6446,6415,6380,6338,6292,6244,6196,6154,6119,
+6090,6064,6037,6007,5975,5944,5921,5908,5907,5913,5921,5924,5917,5900,5875,5848,5821,5796,5774,5753,
+5730,5709,5688,5671,5656,5638,5612,5573,5517,5449,5376,5306,5247,5202,5167,5133,5090,5033,4962,4880,
+4795,4721,4654,4604,4563,4520,4470,4415,4363,4330,4327,4357,4410,4470,4513,4523,4493,4429,4343,4252,
+4166,4088,4012,3928,3831,3718,3596,3477,3369,3279,3206,3142,3076,2999,2904,2790,2660,2524,2389,2267,
+2166,2093,2051,2039,2050,2073,2095,2103,2088,2045,1974,1883,1783,1687,1608,1558,1544,1567,1620,1690,
+1763,1824,1863,1878,1872,1854,1832,1811,1795,1780,1763,1741,1714,1684,1651,1617,1581,1541,1498,1455,
+1415,1382,1359,1344,1331,1313,1285,1247,1201,1152,1107,1067,1029,989,943,893,843,798,764,740,
+719,689,641,572,487,398,318,257,213,181,148,106,57,7,-29,-45,-39,-26,-25,-57,
+-135,-257,-407,-560,-695,-798,-872,-931,-992,-1070,-1173,-1296,-1427,-1553,-1665,-1761,-1845,-1923,-2000,-2077,
+-2152,-2222,-2283,-2336,-2383,-2427,-2470,-2512,-2550,-2582,-2605,-2622,-2636,-2652,-2672,-2698,-2727,-2756,-2784,-2810,
+-2835,-2861,-2889,-2917,-2940,-2956,-2962,-2962,-2961,-2967,-2986,-3021,-3068,-3119,-3165,-3196,-3211,-3210,-3200,-3186,
+-3175,-3171,-3173,-3179,-3185,-3187,-3184,-3174,-3160,-3145,-3132,-3128,-3136,-3157,-3188,-3223,-3254,-3273,-3274,-3258,
+-3230,-3198,-3168,-3143,-3120,-3095,-3060,-3015,-2963,-2911,-2869,-2844,-2836,-2839,-2842,-2836,-2815,-2780,-2735,-2692,
+-2655,-2630,-2612,-2599,-2582,-2558,-2524,-2479,-2426,-2363,-2293,-2218,-2139,-2061,-1989,-1923,-1862,-1802,-1735,-1659,
+-1571,-1476,-1382,-1295,-1220,-1158,-1105,-1055,-1003,-944,-879,-810,-739,-668,-598,-530,-465,-404,-349,-299,
+-253,-206,-155,-95,-27,44,114,175,226,270,317,379,462,569,692,821,939,1036,1111,1168,
+1217,1268,1324,1383,1437,1476,1496,1497,1489,1485,1493,1520,1560,1605,1643,1668,1677,1676,1670,1668,
+1671,1680,1690,1697,1699,1695,1687,1678,1670,1665,1661,1660,1662,1669,1681,1699,1724,1753,1784,1815,
+1841,1861,1871,1869,1855,1830,1799,1764,1729,1691,1643,1578,1489,1376,1247,1116,999,907,839,783,
+720,631,507,351,184,30,-85,-154,-179,-174,-162,-156,-162,-172,-175,-158,-117,-57,10,79,
+142,204,271,347,431,515,588,639,666,674,676,683,703,734,771,804,829,846,860,878,
+904,936,971,1005,1036,1068,1103,1145,1191,1236,1271,1292,1303,1313,1335,1380,1447,1529,1610,1673,
+1706,1707,1684,1647,1609,1577,1553,1534,1518,1501,1477,1443,1391,1316,1214,1093,966,858,792,786,
+844,952,1085,1210,1302,1346,1343,1306,1254,1203,1167,1152,1160,1186,1228,1279,1331,1375,1400,1402,
+1377,1329,1265,1192,1116,1037,952,861,764,668,583,516,470,440,417,387,345,289,228,169,
+122,88,58,25,-23,-90,-175,-270,-370,-469,-570,-672,-778,-883,-978,-1057,-1113,-1151,-1183,-1224,
+-1286,-1372,-1473,-1577,-1667,-1737,-1789,-1837,-1896,-1978,-2086,-2213,-2344,-2467,-2571,-2657,-2729,-2793,-2854,-2911,
+-2963,-3007,-3045,-3082,-3123,-3174,-3231,-3291,-3347,-3391,-3426,-3455,-3489,-3534,-3592,-3659,-3728,-3789,-3838,-3875,
+-3907,-3940,-3982,-4033,-4093,-4156,-4219,-4282,-4346,-4414,-4490,-4571,-4651,-4724,-4780,-4811,-4816,-4795,-4754,-4703,
+-4652,-4612,-4591,-4594,-4619,-4660,-4705,-4740,-4755,-4743,-4705,-4646,-4576,-4507,-4445,-4397,-4362,-4339,-4322,-4307,
+-4285,-4248,-4186,-4093,-3966,-3809,-3633,-3452,-3281,-3129,-2998,-2882,-2774,-2666,-2557,-2451,-2356,-2278,-2219,-2170,
+-2123,-2065,-1989,-1896,-1790,-1676,-1555,-1424,-1275,-1103,-908,-697,-483,-280,-101,51,179,288,384,470,
+545,612,675,743,828,937,1069,1217,1367,1506,1629,1739,1848,1968,2105,2255,2405,2539,2647,2728,
+2794,2862,2946,3053,3174,3294,3398,3479,3543,3608,3696,3823,3991,4187,4387,4565,4700,4786,4829,4844,
+4852,4867,4897,4943,5002,5068,5140,5216,5300,5390,5487,5590,5696,5802,5908,6012,6113,6208,6294,6369,
+6428,6473,6505,6526,6538,6542,6538,6524,6503,6476,6445,6412,6379,6345,6305,6261,6211,6159,6111,6073,
+6046,6030,6021,6013,6003,5990,5977,5968,5965,5967,5967,5960,5938,5902,5855,5805,5760,5725,5701,5684,
+5668,5651,5632,5614,5601,5596,5597,5598,5592,5573,5540,5495,5443,5388,5331,5269,5197,5111,5012,4908,
+4807,4721,4673,4628,4603,4584,4558,4515,4457,4395,4348,4330,4349,4397,4456,4504,4519,4495,4434,4352,
+4265,4184,4111,4040,3960,3860,3739,3604,3468,3346,3246,3170,3110,3054,2989,2905,2797,2667,2522,2375,
+2239,2127,2049,2006,1996,2007,2026,2039,2035,2011,1968,1912,1850,1787,1728,1678,1641,1620,1620,1641,
+1680,1729,1777,1814,1836,1843,1838,1828,1818,1809,1799,1783,1760,1728,1690,1650,1611,1573,1535,1497,
+1458,1420,1385,1356,1330,1305,1277,1242,1200,1154,1109,1069,1034,1000,963,918,868,816,769,732,
+703,677,643,592,521,437,351,279,226,195,174,152,119,74,25,-15,-37,-39,-31,-33,
+-65,-140,-260,-410,-569,-713,-829,-914,-978,-1037,-1107,-1196,-1305,-1427,-1554,-1676,-1791,-1897,-1995,-2086,
+-2171,-2248,-2315,-2374,-2426,-2475,-2522,-2568,-2611,-2648,-2675,-2694,-2706,-2717,-2731,-2750,-2775,-2800,-2824,-2844,
+-2859,-2874,-2892,-2914,-2940,-2966,-2987,-3002,-3012,-3020,-3034,-3059,-3097,-3144,-3192,-3231,-3255,-3262,-3256,-3246,
+-3240,-3244,-3259,-3282,-3305,-3322,-3329,-3324,-3309,-3289,-3268,-3251,-3241,-3242,-3253,-3272,-3293,-3312,-3319,-3311,
+-3287,-3251,-3210,-3173,-3143,-3120,-3102,-3080,-3050,-3011,-2968,-2927,-2896,-2878,-2871,-2870,-2867,-2857,-2840,-2819,
+-2798,-2782,-2770,-2759,-2743,-2714,-2669,-2604,-2521,-2424,-2318,-2210,-2107,-2018,-1946,-1896,-1863,-1841,-1816,-1778,
+-1720,-1641,-1546,-1445,-1347,-1260,-1184,-1117,-1055,-993,-931,-869,-808,-749,-690,-628,-561,-491,-419,-351,
+-292,-241,-199,-159,-115,-63,0,71,148,228,310,395,486,586,693,802,907,999,1075,1136,
+1188,1237,1290,1346,1400,1445,1474,1485,1482,1476,1475,1488,1514,1547,1579,1601,1609,1607,1601,1599,
+1605,1618,1634,1649,1660,1665,1669,1674,1681,1690,1698,1703,1705,1706,1712,1725,1746,1773,1804,1835,
+1862,1886,1905,1918,1921,1911,1886,1846,1794,1733,1664,1586,1491,1374,1234,1080,926,793,695,634,
+601,571,517,423,287,125,-30,-150,-215,-222,-185,-129,-77,-43,-28,-24,-22,-14,0,15,
+32,55,91,151,237,345,457,554,621,656,666,671,688,724,780,842,897,936,958,972,
+985,1005,1030,1056,1077,1094,1111,1135,1172,1220,1272,1317,1347,1364,1378,1405,1458,1542,1647,1751,
+1834,1877,1875,1836,1776,1714,1663,1630,1613,1607,1601,1585,1548,1482,1383,1255,1113,979,881,840,
+866,949,1066,1184,1275,1318,1313,1271,1208,1143,1086,1039,1001,968,940,919,906,900,896,888,
+872,850,827,811,804,800,787,751,681,582,469,367,298,274,289,323,350,349,314,254,
+187,133,100,82,65,31,-30,-121,-232,-349,-462,-570,-676,-785,-898,-1009,-1106,-1182,-1233,-1268,
+-1301,-1349,-1418,-1505,-1596,-1673,-1728,-1760,-1784,-1819,-1880,-1975,-2097,-2233,-2365,-2483,-2583,-2670,-2749,-2825,
+-2898,-2965,-3021,-3068,-3107,-3146,-3189,-3236,-3283,-3324,-3354,-3375,-3394,-3420,-3462,-3521,-3594,-3669,-3738,-3791,
+-3831,-3861,-3890,-3926,-3973,-4030,-4096,-4166,-4238,-4313,-4391,-4473,-4555,-4634,-4703,-4755,-4786,-4793,-4778,-4746,
+-4707,-4669,-4642,-4634,-4647,-4679,-4722,-4766,-4798,-4809,-4797,-4763,-4714,-4659,-4605,-4557,-4520,-4491,-4470,-4454,
+-4436,-4410,-4364,-4287,-4172,-4018,-3834,-3639,-3452,-3292,-3166,-3071,-2992,-2913,-2821,-2717,-2608,-2511,-2435,-2383,
+-2346,-2306,-2250,-2169,-2066,-1951,-1833,-1716,-1594,-1455,-1288,-1090,-870,-645,-437,-258,-111,13,127,240,
+354,462,557,635,702,771,856,966,1100,1245,1388,1519,1636,1751,1876,2019,2179,2342,2491,2614,
+2708,2784,2862,2960,3086,3235,3391,3534,3651,3744,3823,3909,4016,4150,4302,4455,4589,4689,4752,4784,
+4801,4819,4850,4899,4962,5036,5114,5195,5277,5364,5457,5556,5661,5770,5879,5986,6089,6186,6274,6349,
+6410,6456,6489,6510,6522,6525,6519,6504,6480,6447,6410,6374,6340,6309,6278,6243,6202,6155,6107,6066,
+6037,6023,6021,6026,6030,6027,6017,6004,5993,5985,5979,5967,5942,5898,5835,5761,5688,5628,5588,5569,
+5565,5568,5571,5570,5569,5572,5582,5599,5618,5631,5631,5613,5577,5524,5457,5379,5289,5187,5074,4955,
+4842,4745,4673,4674,4638,4618,4601,4574,4531,4475,4415,4367,4346,4357,4395,4444,4484,4495,4470,4412,
+4333,4249,4168,4095,4022,3940,3841,3726,3601,3478,3369,3282,3214,3158,3101,3032,2941,2826,2689,2538,
+2385,2243,2125,2040,1991,1972,1972,1977,1973,1954,1921,1883,1847,1819,1801,1787,1770,1748,1719,1692,
+1674,1671,1687,1716,1751,1782,1805,1817,1820,1816,1807,1793,1771,1743,1708,1670,1633,1599,1566,1533,
+1498,1459,1417,1375,1335,1299,1267,1234,1198,1158,1116,1074,1035,998,962,921,875,824,771,723,
+684,653,624,588,537,471,393,315,248,199,168,147,125,93,52,8,-27,-45,-45,-35,
+-34,-62,-133,-250,-402,-570,-731,-870,-978,-1060,-1126,-1191,-1265,-1355,-1461,-1578,-1700,-1821,-1936,-2041,
+-2135,-2219,-2292,-2357,-2417,-2473,-2529,-2584,-2636,-2682,-2720,-2749,-2770,-2784,-2797,-2812,-2830,-2851,-2872,-2891,
+-2905,-2916,-2925,-2936,-2951,-2972,-2996,-3021,-3042,-3060,-3075,-3093,-3117,-3150,-3189,-3228,-3263,-3287,-3300,-3306,
+-3313,-3328,-3355,-3393,-3436,-3474,-3500,-3510,-3503,-3485,-3461,-3437,-3418,-3403,-3394,-3390,-3390,-3392,-3394,-3391,
+-3378,-3353,-3317,-3275,-3233,-3199,-3174,-3158,-3143,-3123,-3093,-3053,-3009,-2966,-2933,-2912,-2903,-2902,-2905,-2909,
+-2912,-2915,-2915,-2911,-2895,-2864,-2812,-2737,-2643,-2532,-2411,-2288,-2171,-2067,-1985,-1928,-1896,-1884,-1881,-1873,
+-1846,-1792,-1710,-1607,-1493,-1378,-1271,-1176,-1092,-1018,-950,-888,-828,-770,-709,-644,-570,-490,-406,-324,
+-252,-194,-151,-119,-91,-60,-18,36,105,186,275,370,469,571,676,782,886,984,1072,1148,
+1210,1262,1307,1347,1382,1412,1433,1443,1445,1442,1442,1451,1471,1498,1525,1545,1553,1553,1549,1549,
+1558,1577,1602,1626,1645,1659,1671,1687,1709,1736,1762,1781,1789,1789,1785,1787,1799,1823,1854,1888,
+1918,1944,1966,1985,2001,2008,1997,1961,1896,1806,1700,1588,1474,1359,1237,1105,963,822,699,610,
+564,551,552,536,481,379,240,91,-34,-114,-138,-118,-74,-28,4,21,29,36,45,55,
+60,60,60,72,109,180,280,393,496,574,620,645,667,703,760,832,903,957,986,994,
+994,1001,1023,1060,1102,1139,1166,1185,1205,1235,1278,1329,1376,1411,1434,1453,1485,1540,1623,1722,
+1819,1892,1925,1916,1874,1815,1759,1716,1692,1683,1681,1674,1651,1602,1517,1397,1250,1097,966,888,
+880,943,1056,1183,1285,1332,1315,1244,1143,1042,958,899,857,824,790,754,720,691,671,654,
+635,610,582,560,554,567,589,603,584,517,407,275,158,90,90,150,242,327,370,360,
+304,229,164,127,116,115,102,60,-14,-113,-221,-326,-427,-531,-650,-787,-937,-1084,-1208,-1299,
+-1357,-1396,-1435,-1489,-1562,-1644,-1719,-1773,-1803,-1818,-1837,-1879,-1954,-2061,-2187,-2318,-2441,-2549,-2645,-2733,
+-2817,-2897,-2968,-3027,-3073,-3110,-3144,-3179,-3217,-3254,-3286,-3310,-3326,-3340,-3362,-3398,-3449,-3513,-3580,-3643,
+-3696,-3738,-3776,-3815,-3861,-3916,-3980,-4050,-4125,-4202,-4280,-4360,-4439,-4515,-4584,-4642,-4686,-4716,-4732,-4736,
+-4731,-4722,-4713,-4710,-4717,-4734,-4760,-4789,-4814,-4829,-4830,-4816,-4792,-4762,-4730,-4698,-4667,-4635,-4601,-4567,
+-4532,-4496,-4455,-4399,-4317,-4201,-4050,-3872,-3686,-3513,-3372,-3268,-3193,-3129,-3056,-2964,-2853,-2738,-2639,-2570,
+-2532,-2512,-2487,-2436,-2350,-2232,-2097,-1960,-1829,-1699,-1558,-1392,-1198,-986,-777,-590,-435,-307,-190,-64,
+80,241,401,537,637,701,749,803,884,1000,1143,1295,1439,1568,1688,1810,1947,2100,2263,2419,
+2554,2665,2759,2853,2964,3101,3260,3427,3585,3719,3828,3919,4008,4108,4222,4347,4469,4574,4653,4707,
+4742,4773,4810,4863,4931,5010,5095,5180,5264,5348,5435,5527,5625,5729,5836,5944,6050,6150,6241,6319,
+6381,6426,6455,6471,6477,6475,6468,6453,6431,6402,6367,6331,6298,6271,6248,6227,6202,6170,6133,6097,
+6068,6052,6050,6057,6062,6059,6041,6012,5979,5950,5933,5924,5915,5894,5852,5787,5706,5623,5553,5508,
+5492,5499,5522,5550,5578,5602,5625,5648,5671,5690,5699,5693,5665,5616,5547,5461,5363,5255,5141,5025,
+4913,4812,4731,4674,4713,4668,4628,4589,4545,4495,4442,4392,4355,4336,4339,4360,4386,4403,4399,4368,
+4313,4243,4169,4098,4033,3968,3897,3815,3723,3626,3534,3452,3382,3320,3257,3183,3093,2983,2854,2712,
+2563,2414,2275,2155,2062,1999,1961,1939,1921,1898,1864,1826,1792,1773,1773,1789,1811,1825,1820,1795,
+1755,1713,1682,1672,1682,1709,1741,1771,1791,1800,1797,1785,1764,1737,1704,1669,1633,1600,1568,1537,
+1503,1463,1418,1369,1321,1276,1239,1207,1178,1149,1117,1082,1044,1005,966,926,884,838,788,737,
+689,645,606,568,525,474,413,346,278,218,170,133,102,71,34,-6,-46,-78,-94,-94,
+-87,-88,-114,-178,-285,-429,-595,-764,-918,-1046,-1145,-1222,-1287,-1352,-1427,-1517,-1620,-1732,-1845,-1952,
+-2049,-2134,-2210,-2282,-2352,-2422,-2492,-2558,-2618,-2669,-2712,-2748,-2779,-2807,-2834,-2859,-2884,-2909,-2933,-2957,
+-2979,-2999,-3016,-3028,-3038,-3047,-3058,-3071,-3087,-3103,-3117,-3128,-3138,-3150,-3167,-3193,-3225,-3261,-3297,-3330,
+-3361,-3393,-3432,-3480,-3535,-3589,-3633,-3661,-3668,-3657,-3634,-3607,-3583,-3562,-3546,-3529,-3513,-3495,-3479,-3464,
+-3452,-3437,-3416,-3387,-3350,-3310,-3273,-3244,-3224,-3208,-3190,-3163,-3125,-3080,-3035,-2997,-2972,-2961,-2961,-2969,
+-2978,-2987,-2992,-2992,-2982,-2960,-2921,-2864,-2788,-2698,-2600,-2499,-2399,-2305,-2219,-2146,-2086,-2041,-2006,-1974,
+-1936,-1882,-1804,-1703,-1584,-1455,-1328,-1211,-1108,-1023,-952,-891,-834,-774,-704,-620,-522,-415,-306,-207,
+-127,-70,-35,-14,0,20,50,93,147,211,281,356,437,523,617,717,823,932,1039,1140,
+1227,1296,1345,1376,1392,1397,1396,1393,1390,1389,1395,1408,1430,1460,1492,1521,1540,1549,1551,1552,
+1560,1577,1600,1624,1643,1655,1663,1676,1699,1734,1776,1817,1847,1863,1868,1871,1882,1908,1945,1985,
+2018,2038,2047,2050,2052,2056,2055,2033,1980,1887,1760,1614,1467,1335,1223,1127,1036,940,840,745,
+669,621,602,598,585,543,461,345,215,97,13,-30,-40,-32,-25,-24,-29,-28,-13,16,
+54,87,106,113,120,142,192,271,364,454,523,567,594,623,668,735,814,887,936,954,
+949,940,946,978,1035,1104,1167,1215,1249,1275,1306,1346,1394,1442,1482,1513,1541,1575,1623,1685,
+1752,1809,1843,1848,1829,1797,1767,1746,1736,1732,1727,1714,1688,1645,1581,1492,1379,1248,1119,1017,
+969,989,1069,1182,1287,1341,1320,1224,1078,921,789,704,666,662,669,672,666,654,644,638,
+631,616,586,544,500,468,458,465,470,449,385,278,149,36,-23,-8,76,200,318,393,
+403,357,282,211,166,152,154,151,123,67,-7,-87,-162,-234,-318,-430,-581,-765,-961,-1140,
+-1278,-1369,-1420,-1454,-1495,-1554,-1632,-1716,-1788,-1840,-1872,-1898,-1932,-1989,-2071,-2174,-2286,-2396,-2500,-2595,
+-2684,-2768,-2846,-2915,-2971,-3015,-3050,-3083,-3118,-3156,-3194,-3228,-3255,-3275,-3293,-3313,-3341,-3377,-3420,-3465,
+-3509,-3552,-3598,-3648,-3706,-3771,-3841,-3913,-3985,-4056,-4128,-4202,-4277,-4353,-4425,-4490,-4546,-4593,-4631,-4662,
+-4687,-4708,-4726,-4743,-4761,-4781,-4803,-4825,-4842,-4851,-4850,-4839,-4823,-4804,-4788,-4775,-4762,-4743,-4714,-4673,
+-4623,-4568,-4513,-4458,-4398,-4325,-4228,-4104,-3958,-3802,-3654,-3529,-3432,-3356,-3285,-3201,-3096,-2973,-2849,-2746,
+-2678,-2646,-2634,-2616,-2566,-2474,-2341,-2185,-2024,-1869,-1719,-1563,-1390,-1200,-1004,-823,-674,-562,-473,-381,
+-259,-94,104,310,488,615,688,725,759,821,926,1069,1231,1390,1531,1654,1769,1890,2026,2174,
+2326,2469,2597,2712,2826,2947,3083,3231,3381,3522,3645,3751,3849,3948,4055,4173,4294,4409,4507,4586,
+4647,4699,4753,4814,4888,4971,5059,5148,5235,5320,5407,5498,5596,5699,5806,5914,6020,6120,6211,6290,
+6352,6397,6423,6433,6430,6420,6407,6392,6375,6354,6329,6300,6270,6242,6219,6201,6184,6165,6143,6119,
+6098,6086,6085,6093,6101,6099,6078,6037,5983,5930,5891,5875,5881,5896,5904,5889,5843,5771,5687,5607,
+5548,5521,5525,5555,5600,5650,5697,5735,5763,5779,5781,5768,5738,5689,5622,5538,5441,5334,5223,5114,
+5011,4917,4836,4768,4713,4757,4697,4634,4569,4506,4448,4398,4357,4327,4308,4298,4295,4293,4284,4264,
+4230,4184,4130,4076,4027,3981,3936,3887,3830,3766,3699,3632,3567,3502,3431,3348,3249,3133,3005,2870,
+2732,2595,2461,2332,2213,2109,2025,1960,1912,1871,1832,1793,1756,1731,1725,1741,1776,1816,1846,1855,
+1839,1802,1757,1717,1694,1691,1706,1732,1759,1780,1790,1788,1774,1749,1717,1680,1642,1603,1566,1530,
+1492,1451,1406,1356,1306,1258,1216,1181,1153,1129,1106,1081,1052,1019,983,945,905,864,820,774,
+724,673,620,567,513,459,403,346,288,230,174,123,75,31,-11,-54,-97,-135,-165,-184,
+-192,-194,-202,-227,-280,-370,-493,-642,-801,-956,-1093,-1204,-1290,-1360,-1425,-1495,-1578,-1674,-1776,-1877,
+-1969,-2050,-2123,-2195,-2272,-2357,-2447,-2535,-2610,-2667,-2707,-2734,-2758,-2786,-2823,-2866,-2911,-2952,-2986,-3016,
+-3045,-3074,-3104,-3131,-3152,-3163,-3165,-3163,-3161,-3164,-3171,-3179,-3184,-3186,-3186,-3189,-3203,-3230,-3272,-3323,
+-3378,-3433,-3486,-3541,-3599,-3660,-3719,-3766,-3795,-3801,-3786,-3758,-3725,-3696,-3674,-3655,-3635,-3611,-3582,-3551,
+-3522,-3497,-3476,-3453,-3426,-3393,-3357,-3322,-3292,-3269,-3250,-3230,-3204,-3170,-3133,-3100,-3076,-3063,-3060,-3059,
+-3053,-3039,-3016,-2989,-2962,-2938,-2916,-2892,-2862,-2825,-2781,-2730,-2675,-2615,-2549,-2474,-2391,-2300,-2206,-2110,
+-2013,-1915,-1811,-1699,-1576,-1445,-1311,-1181,-1062,-960,-878,-813,-760,-707,-643,-557,-445,-311,-170,-40,
+60,121,143,137,122,113,123,153,200,256,314,372,432,497,573,661,762,874,992,1109,
+1216,1305,1369,1404,1413,1405,1388,1372,1363,1364,1374,1392,1418,1450,1488,1528,1564,1592,1611,1620,
+1627,1634,1645,1658,1668,1671,1667,1663,1667,1687,1723,1769,1816,1854,1880,1901,1925,1962,2012,2068,
+2115,2141,2140,2120,2092,2068,2054,2042,2014,1954,1851,1711,1551,1395,1265,1168,1100,1046,990,923,
+849,776,715,669,634,594,535,450,345,237,145,83,54,46,43,31,7,-19,-34,-24,
+10,61,110,142,154,155,162,189,241,306,370,416,442,459,488,544,631,739,843,922,
+964,977,976,983,1012,1061,1121,1178,1222,1255,1283,1317,1363,1417,1474,1526,1571,1613,1656,1702,
+1747,1781,1795,1786,1760,1728,1706,1699,1705,1712,1706,1679,1633,1576,1519,1467,1419,1368,1310,1250,
+1201,1180,1198,1250,1312,1350,1330,1238,1082,897,726,606,555,563,608,658,692,703,697,685,
+674,660,634,589,522,445,374,323,297,286,270,230,159,69,-11,-51,-30,50,170,291,
+378,409,386,332,272,228,206,194,177,141,86,23,-34,-78,-116,-166,-253,-393,-583,-801,
+-1013,-1187,-1304,-1368,-1400,-1427,-1472,-1543,-1635,-1732,-1817,-1883,-1932,-1974,-2019,-2076,-2145,-2224,-2310,-2397,
+-2485,-2572,-2657,-2737,-2806,-2863,-2909,-2948,-2984,-3021,-3060,-3099,-3136,-3169,-3198,-3227,-3256,-3286,-3317,-3345,
+-3370,-3394,-3425,-3467,-3524,-3594,-3674,-3754,-3828,-3895,-3957,-4018,-4083,-4154,-4229,-4305,-4378,-4445,-4504,-4557,
+-4602,-4642,-4675,-4704,-4731,-4759,-4789,-4820,-4850,-4871,-4881,-4877,-4862,-4842,-4824,-4812,-4807,-4803,-4792,-4768,
+-4726,-4668,-4600,-4531,-4464,-4401,-4336,-4260,-4166,-4053,-3927,-3799,-3682,-3581,-3495,-3412,-3320,-3210,-3086,-2961,
+-2853,-2776,-2733,-2709,-2683,-2631,-2538,-2405,-2245,-2075,-1905,-1736,-1562,-1377,-1183,-995,-835,-720,-649,-605,
+-551,-456,-301,-94,135,348,511,613,669,711,771,871,1011,1176,1344,1496,1627,1743,1855,1975,
+2106,2245,2386,2523,2656,2787,2921,3058,3194,3324,3443,3552,3654,3757,3868,3988,4113,4235,4347,4443,
+4523,4594,4663,4736,4818,4906,4998,5090,5179,5266,5356,5450,5552,5661,5775,5888,5996,6094,6181,6255,
+6314,6356,6382,6391,6386,6373,6356,6340,6327,6314,6301,6283,6259,6231,6203,6178,6158,6142,6128,6116,
+6107,6103,6106,6116,6128,6133,6122,6090,6038,5977,5923,5892,5892,5919,5959,5992,5998,5967,5899,5807,
+5712,5634,5588,5581,5609,5663,5729,5791,5838,5863,5862,5839,5796,5740,5674,5598,5514,5420,5319,5216,
+5115,5024,4945,4877,4816,4757,4768,4706,4637,4565,4497,4437,4390,4352,4320,4293,4267,4243,4220,4198,
+4174,4145,4112,4076,4041,4009,3981,3954,3923,3887,3842,3791,3734,3671,3598,3511,3408,3287,3155,3019,
+2885,2757,2635,2516,2398,2283,2174,2077,1996,1932,1880,1838,1803,1776,1762,1764,1784,1817,1852,1878,
+1885,1871,1840,1800,1764,1739,1730,1736,1753,1775,1793,1803,1801,1785,1757,1719,1675,1630,1585,1541,
+1498,1455,1410,1364,1318,1273,1230,1191,1156,1125,1096,1070,1044,1018,989,957,921,881,840,796,
+750,701,646,586,522,458,397,340,286,232,176,117,53,-10,-72,-128,-177,-218,-252,-279,
+-298,-310,-318,-327,-346,-387,-456,-559,-691,-842,-997,-1140,-1261,-1357,-1434,-1503,-1574,-1656,-1748,-1843,
+-1933,-2011,-2077,-2139,-2207,-2290,-2389,-2497,-2598,-2679,-2732,-2759,-2771,-2786,-2814,-2859,-2916,-2974,-3022,-3058,
+-3085,-3110,-3140,-3175,-3211,-3238,-3250,-3247,-3235,-3223,-3220,-3227,-3240,-3252,-3256,-3252,-3249,-3255,-3280,-3326,
+-3388,-3456,-3523,-3583,-3640,-3696,-3754,-3814,-3866,-3902,-3914,-3902,-3872,-3834,-3798,-3769,-3747,-3727,-3702,-3671,
+-3635,-3595,-3557,-3520,-3485,-3449,-3412,-3377,-3347,-3323,-3305,-3288,-3267,-3240,-3209,-3182,-3165,-3162,-3169,-3175,
+-3166,-3131,-3069,-2989,-2907,-2841,-2801,-2789,-2798,-2817,-2834,-2841,-2835,-2813,-2773,-2712,-2628,-2518,-2385,-2237,
+-2081,-1927,-1780,-1642,-1510,-1382,-1254,-1126,-999,-877,-767,-672,-594,-529,-467,-395,-301,-178,-34,114,
+244,335,374,366,329,286,258,256,281,323,373,423,474,529,595,677,774,883,998,1114,
+1221,1312,1380,1419,1430,1418,1395,1374,1364,1369,1387,1412,1440,1470,1504,1544,1589,1634,1674,1703,
+1719,1725,1726,1728,1730,1729,1723,1711,1696,1688,1693,1714,1747,1785,1822,1858,1898,1948,2014,2088,
+2158,2205,2219,2198,2154,2106,2068,2047,2032,2005,1946,1847,1713,1564,1423,1307,1222,1162,1110,1052,
+984,906,829,761,705,653,593,515,418,310,210,136,100,98,116,134,135,117,89,67,
+65,88,126,162,182,180,165,152,157,182,219,252,270,272,276,304,376,497,654,817,
+958,1057,1113,1136,1145,1155,1171,1190,1207,1221,1236,1261,1301,1357,1421,1486,1544,1595,1643,1692,
+1740,1780,1801,1796,1766,1724,1685,1662,1657,1658,1646,1606,1534,1445,1363,1311,1301,1328,1373,1411,
+1427,1419,1398,1375,1358,1338,1299,1222,1102,951,798,678,616,618,668,737,794,818,807,770,
+723,678,636,587,523,437,336,235,152,98,73,66,59,42,12,-19,-33,-13,44,130,
+225,303,349,359,342,312,281,252,220,177,117,46,-22,-75,-106,-124,-149,-208,-321,-490,
+-698,-912,-1097,-1229,-1305,-1340,-1359,-1391,-1451,-1540,-1646,-1753,-1847,-1920,-1974,-2015,-2053,-2094,-2144,-2205,
+-2277,-2360,-2450,-2542,-2631,-2710,-2776,-2830,-2873,-2909,-2942,-2972,-3001,-3031,-3061,-3096,-3137,-3183,-3229,-3270,
+-3300,-3321,-3337,-3358,-3394,-3448,-3520,-3601,-3681,-3752,-3813,-3866,-3918,-3976,-4041,-4115,-4193,-4272,-4348,-4420,
+-4485,-4541,-4588,-4625,-4655,-4682,-4714,-4752,-4796,-4840,-4876,-4896,-4897,-4884,-4864,-4845,-4834,-4831,-4832,-4827,
+-4808,-4769,-4710,-4636,-4555,-4477,-4405,-4339,-4273,-4198,-4110,-4006,-3893,-3779,-3673,-3578,-3491,-3403,-3304,-3192,
+-3073,-2959,-2864,-2794,-2746,-2704,-2650,-2569,-2455,-2313,-2152,-1983,-1806,-1621,-1426,-1227,-1041,-890,-790,-743,
+-729,-712,-654,-530,-338,-103,138,348,505,610,685,756,848,970,1117,1276,1431,1573,1702,1822,
+1940,2061,2187,2319,2455,2595,2738,2884,3028,3165,3292,3409,3518,3626,3739,3859,3983,4106,4221,4322,
+4410,4488,4563,4640,4725,4817,4913,5010,5104,5195,5287,5383,5487,5600,5718,5837,5950,6049,6133,6200,
+6251,6287,6310,6321,6321,6312,6298,6285,6274,6268,6263,6256,6243,6221,6194,6165,6141,6125,6119,6120,
+6126,6134,6143,6151,6158,6161,6156,6138,6106,6063,6018,5984,5971,5984,6017,6056,6081,6076,6031,5950,
+5846,5738,5650,5597,5589,5623,5690,5771,5848,5902,5921,5904,5857,5789,5714,5640,5569,5495,5415,5324,
+5224,5123,5029,4949,4882,4825,4768,4736,4684,4626,4565,4505,4451,4405,4365,4327,4289,4252,4218,4192,
+4172,4157,4141,4121,4096,4068,4039,4014,3990,3965,3937,3902,3859,3806,3743,3666,3572,3460,3333,3197,
+3059,2926,2800,2682,2568,2457,2350,2250,2162,2089,2030,1985,1948,1920,1899,1889,1890,1901,1918,1932,
+1937,1929,1908,1878,1846,1816,1795,1785,1786,1795,1807,1818,1822,1813,1791,1755,1709,1658,1608,1560,
+1515,1472,1429,1386,1344,1303,1263,1224,1183,1140,1098,1057,1022,993,968,943,914,878,836,790,
+744,697,648,594,536,473,409,350,295,244,190,128,54,-28,-113,-192,-259,-311,-350,-379,
+-401,-417,-426,-428,-429,-438,-466,-525,-621,-753,-909,-1072,-1225,-1355,-1457,-1536,-1605,-1673,-1750,-1835,
+-1920,-1998,-2063,-2115,-2164,-2223,-2302,-2401,-2512,-2617,-2702,-2758,-2788,-2807,-2831,-2870,-2926,-2990,-3048,-3089,
+-3113,-3127,-3144,-3171,-3210,-3252,-3284,-3298,-3292,-3276,-3262,-3262,-3279,-3304,-3327,-3337,-3332,-3321,-3317,-3334,
+-3377,-3441,-3514,-3585,-3647,-3699,-3749,-3801,-3857,-3912,-3955,-3976,-3973,-3947,-3909,-3870,-3837,-3813,-3793,-3773,
+-3747,-3714,-3673,-3627,-3577,-3525,-3474,-3428,-3391,-3367,-3354,-3347,-3337,-3319,-3289,-3254,-3225,-3210,-3215,-3228,
+-3234,-3212,-3148,-3045,-2919,-2797,-2707,-2665,-2671,-2714,-2771,-2821,-2850,-2851,-2826,-2775,-2699,-2598,-2471,-2320,
+-2151,-1974,-1801,-1640,-1495,-1366,-1249,-1138,-1027,-910,-789,-664,-543,-432,-334,-246,-161,-66,45,174,
+307,426,512,554,555,530,501,485,491,517,554,594,634,676,728,795,879,975,1075,1172,
+1260,1333,1387,1419,1427,1414,1389,1365,1352,1359,1383,1417,1454,1486,1515,1546,1586,1636,1691,1739,
+1774,1790,1792,1790,1791,1797,1805,1807,1800,1783,1763,1747,1743,1753,1775,1808,1851,1909,1983,2069,
+2157,2227,2265,2262,2225,2172,2121,2086,2065,2042,1997,1917,1801,1664,1531,1420,1340,1284,1237,1179,
+1102,1007,908,821,754,706,664,613,538,438,324,216,135,93,89,109,134,146,141,124,
+110,111,133,168,201,219,219,206,194,194,208,227,236,226,200,180,191,257,384,558,
+747,921,1055,1142,1190,1213,1225,1232,1237,1242,1249,1265,1297,1347,1409,1472,1525,1565,1595,1622,
+1655,1693,1727,1748,1745,1722,1688,1657,1638,1630,1618,1583,1513,1413,1303,1215,1177,1201,1276,1370,
+1450,1486,1469,1409,1326,1238,1158,1083,1007,927,849,784,749,752,790,846,896,918,902,853,
+783,709,642,585,529,463,380,281,175,76,0,-46,-62,-58,-43,-29,-17,-5,12,41,
+83,133,182,222,247,256,251,234,205,160,99,23,-58,-134,-192,-227,-245,-265,-308,-395,
+-530,-702,-889,-1061,-1194,-1280,-1327,-1354,-1384,-1434,-1510,-1606,-1710,-1807,-1886,-1945,-1988,-2021,-2052,-2091,
+-2141,-2207,-2288,-2381,-2482,-2582,-2675,-2754,-2818,-2866,-2901,-2924,-2940,-2951,-2964,-2984,-3015,-3060,-3114,-3171,
+-3223,-3261,-3287,-3305,-3325,-3357,-3407,-3473,-3548,-3622,-3689,-3747,-3799,-3851,-3907,-3968,-4036,-4107,-4181,-4254,
+-4327,-4397,-4460,-4514,-4558,-4594,-4628,-4667,-4714,-4768,-4821,-4864,-4889,-4894,-4884,-4866,-4850,-4842,-4843,-4847,
+-4844,-4826,-4787,-4726,-4648,-4560,-4474,-4395,-4328,-4269,-4210,-4142,-4059,-3959,-3849,-3739,-3638,-3549,-3467,-3382,
+-3286,-3175,-3057,-2943,-2847,-2773,-2717,-2666,-2601,-2510,-2389,-2240,-2073,-1892,-1702,-1507,-1313,-1136,-991,-895,
+-851,-845,-846,-818,-727,-562,-333,-70,187,408,576,694,780,858,947,1057,1189,1333,1481,1624,
+1759,1887,2009,2132,2259,2392,2534,2681,2831,2978,3120,3253,3379,3500,3622,3744,3868,3990,4105,4211,
+4306,4391,4471,4552,4636,4726,4821,4920,5019,5117,5215,5315,5419,5530,5647,5765,5879,5982,6068,6135,
+6182,6213,6231,6240,6241,6236,6228,6218,6210,6206,6206,6207,6204,6194,6176,6154,6133,6122,6124,6140,
+6165,6191,6212,6222,6221,6211,6194,6175,6153,6131,6110,6094,6085,6088,6101,6116,6123,6110,6066,5989,
+5887,5773,5668,5590,5553,5563,5615,5698,5792,5877,5933,5948,5921,5861,5782,5702,5631,5571,5512,5443,
+5357,5251,5135,5023,4925,4848,4788,4736,4689,4639,4589,4537,4486,4438,4395,4354,4314,4272,4234,4202,
+4183,4175,4174,4173,4163,4143,4113,4078,4042,4008,3976,3945,3912,3874,3829,3774,3705,3620,3517,3399,
+3269,3134,2999,2866,2739,2618,2506,2408,2326,2261,2211,2171,2136,2103,2072,2046,2027,2017,2013,2011,
+2006,1993,1972,1945,1916,1889,1867,1850,1839,1834,1833,1833,1831,1823,1803,1771,1726,1675,1623,1575,
+1531,1490,1450,1407,1363,1318,1275,1234,1192,1147,1099,1049,1003,965,936,914,893,866,828,782,
+732,683,637,592,543,489,430,369,311,257,204,146,74,-12,-109,-207,-295,-366,-420,-461,
+-493,-519,-536,-542,-536,-525,-522,-542,-600,-701,-842,-1008,-1178,-1332,-1460,-1558,-1633,-1695,-1758,-1827,
+-1902,-1977,-2044,-2099,-2142,-2182,-2229,-2294,-2377,-2474,-2571,-2658,-2726,-2779,-2826,-2876,-2935,-3000,-3060,-3105,
+-3130,-3138,-3143,-3158,-3190,-3236,-3286,-3323,-3337,-3330,-3313,-3302,-3309,-3333,-3366,-3391,-3396,-3379,-3349,-3325,
+-3323,-3353,-3412,-3488,-3567,-3638,-3699,-3752,-3804,-3856,-3907,-3947,-3970,-3972,-3955,-3924,-3890,-3858,-3832,-3810,
+-3790,-3768,-3741,-3706,-3664,-3613,-3555,-3496,-3444,-3405,-3385,-3381,-3385,-3384,-3368,-3335,-3290,-3246,-3216,-3204,
+-3203,-3195,-3160,-3085,-2974,-2846,-2728,-2650,-2624,-2649,-2705,-2766,-2809,-2820,-2797,-2746,-2675,-2589,-2489,-2374,
+-2240,-2091,-1932,-1772,-1620,-1481,-1360,-1255,-1161,-1071,-976,-867,-743,-606,-466,-332,-213,-109,-11,87,
+196,311,423,521,594,642,674,702,738,784,836,886,927,960,990,1026,1073,1131,1194,1254,
+1306,1346,1375,1392,1395,1385,1364,1340,1321,1319,1337,1372,1415,1456,1491,1523,1559,1607,1665,1727,
+1779,1811,1823,1822,1821,1830,1851,1877,1897,1899,1883,1854,1823,1801,1794,1807,1840,1894,1969,2061,
+2159,2245,2300,2312,2282,2227,2168,2122,2092,2062,2007,1905,1752,1569,1391,1256,1186,1179,1207,1233,
+1223,1165,1065,945,834,747,689,647,603,541,457,356,253,164,101,64,46,34,19,-1,
+-22,-30,-15,24,82,145,197,234,258,279,304,333,355,358,332,285,235,212,237,318,
+443,587,724,834,915,975,1027,1078,1132,1185,1234,1280,1326,1377,1433,1489,1534,1563,1574,1575,
+1575,1584,1603,1628,1647,1652,1645,1631,1619,1615,1615,1607,1576,1515,1428,1335,1260,1226,1238,1283,
+1334,1361,1342,1272,1167,1048,940,859,809,786,781,788,805,832,865,897,919,920,895,847,
+782,714,650,597,552,509,460,397,318,226,128,34,-43,-95,-119,-116,-92,-59,-25,1,
+18,27,32,35,39,42,44,39,23,-5,-50,-110,-181,-256,-324,-380,-420,-448,-476,-516,
+-583,-680,-805,-944,-1080,-1197,-1287,-1351,-1399,-1443,-1496,-1561,-1638,-1718,-1794,-1859,-1912,-1955,-1994,-2034,
+-2080,-2134,-2200,-2278,-2367,-2465,-2568,-2667,-2758,-2833,-2889,-2926,-2947,-2955,-2958,-2961,-2972,-2995,-3030,-3075,
+-3124,-3169,-3205,-3232,-3254,-3278,-3312,-3359,-3418,-3483,-3549,-3612,-3672,-3730,-3790,-3852,-3917,-3982,-4046,-4109,
+-4173,-4238,-4304,-4369,-4431,-4487,-4538,-4588,-4641,-4698,-4756,-4809,-4848,-4869,-4871,-4862,-4848,-4838,-4835,-4837,
+-4837,-4827,-4802,-4757,-4695,-4619,-4538,-4459,-4389,-4332,-4287,-4244,-4195,-4127,-4037,-3929,-3813,-3702,-3605,-3522,
+-3443,-3358,-3256,-3139,-3018,-2907,-2818,-2753,-2702,-2645,-2564,-2448,-2298,-2122,-1933,-1743,-1559,-1385,-1228,-1096,
+-1000,-946,-928,-927,-911,-849,-716,-510,-249,32,295,510,664,766,839,907,993,1104,1239,1385,
+1532,1672,1803,1931,2061,2197,2341,2490,2638,2783,2923,3058,3191,3324,3459,3592,3723,3847,3965,4075,
+4178,4277,4373,4466,4558,4650,4741,4836,4933,5034,5138,5245,5354,5466,5579,5693,5805,5909,6000,6074,
+6127,6162,6181,6189,6188,6182,6173,6163,6154,6149,6150,6155,6161,6163,6159,6148,6135,6129,6134,6154,
+6188,6225,6258,6276,6276,6259,6231,6202,6178,6165,6163,6168,6178,6187,6192,6191,6178,6147,6093,6013,
+5911,5796,5686,5597,5544,5535,5568,5636,5724,5815,5890,5936,5943,5912,5852,5779,5708,5649,5603,5558,
+5499,5416,5303,5172,5037,4916,4819,4745,4689,4660,4595,4534,4477,4424,4379,4341,4306,4272,4237,4204,
+4179,4166,4166,4175,4184,4185,4173,4147,4108,4063,4014,3967,3923,3882,3843,3803,3757,3701,3631,3545,
+3446,3334,3212,3083,2949,2814,2684,2567,2471,2399,2349,2315,2285,2253,2214,2173,2133,2102,2081,2067,
+2055,2041,2021,1995,1966,1938,1913,1892,1875,1861,1849,1840,1832,1822,1806,1781,1745,1700,1651,1604,
+1561,1523,1484,1441,1392,1337,1281,1227,1179,1134,1090,1044,999,957,924,901,883,862,833,792,
+741,689,641,598,558,512,458,394,327,263,204,148,86,12,-75,-172,-269,-357,-430,-491,
+-545,-595,-638,-666,-674,-661,-638,-623,-638,-697,-804,-948,-1110,-1268,-1407,-1518,-1604,-1674,-1737,-1802,
+-1870,-1940,-2008,-2069,-2121,-2164,-2204,-2248,-2303,-2369,-2447,-2530,-2614,-2695,-2772,-2848,-2924,-2996,-3060,-3108,
+-3135,-3146,-3149,-3157,-3182,-3225,-3279,-3330,-3363,-3372,-3362,-3345,-3337,-3349,-3377,-3410,-3431,-3425,-3392,-3343,
+-3294,-3267,-3274,-3316,-3386,-3472,-3561,-3646,-3722,-3790,-3847,-3891,-3921,-3934,-3933,-3921,-3901,-3877,-3851,-3823,
+-3795,-3766,-3739,-3714,-3688,-3659,-3622,-3577,-3527,-3478,-3441,-3421,-3417,-3422,-3422,-3407,-3371,-3318,-3258,-3204,
+-3162,-3131,-3101,-3057,-2993,-2910,-2822,-2748,-2704,-2699,-2723,-2760,-2789,-2791,-2763,-2709,-2638,-2562,-2486,-2407,
+-2319,-2218,-2101,-1968,-1826,-1683,-1546,-1422,-1316,-1227,-1150,-1074,-987,-880,-749,-602,-451,-309,-184,-76,
+22,122,228,339,449,551,643,731,820,915,1014,1109,1187,1241,1272,1286,1294,1303,1317,1331,
+1342,1347,1349,1348,1347,1345,1338,1327,1313,1304,1307,1326,1359,1400,1441,1481,1521,1569,1626,1690,
+1752,1801,1828,1837,1838,1843,1862,1894,1930,1956,1962,1946,1917,1885,1862,1855,1870,1907,1969,2054,
+2154,2251,2325,2355,2333,2270,2192,2124,2082,2053,2007,1903,1717,1457,1167,911,750,717,800,955,
+1116,1225,1252,1195,1079,938,802,688,597,523,458,393,328,263,200,142,86,31,-25,-85,
+-140,-181,-199,-183,-135,-62,19,97,163,219,270,323,377,423,445,437,398,347,305,293,
+319,376,446,514,572,624,681,755,850,959,1070,1172,1258,1327,1383,1431,1472,1504,1528,1544,
+1557,1572,1593,1617,1640,1655,1660,1656,1648,1642,1638,1636,1627,1605,1566,1513,1453,1398,1354,1321,
+1291,1250,1188,1102,997,889,796,732,703,705,730,767,806,842,869,883,880,858,818,766,
+710,658,616,581,552,521,486,444,395,336,266,182,85,-17,-112,-184,-222,-222,-191,-142,
+-95,-66,-63,-86,-125,-172,-214,-249,-276,-301,-329,-367,-414,-468,-524,-577,-622,-660,-693,-726,
+-766,-816,-880,-956,-1040,-1127,-1213,-1293,-1368,-1437,-1505,-1571,-1636,-1697,-1750,-1796,-1835,-1871,-1912,-1959,
+-2015,-2077,-2143,-2210,-2281,-2357,-2441,-2533,-2629,-2723,-2806,-2872,-2917,-2945,-2959,-2966,-2975,-2988,-3008,-3034,
+-3063,-3093,-3120,-3145,-3168,-3193,-3223,-3259,-3302,-3351,-3403,-3458,-3515,-3576,-3642,-3713,-3787,-3862,-3934,-4000,
+-4061,-4118,-4174,-4232,-4292,-4354,-4418,-4483,-4550,-4616,-4681,-4740,-4788,-4821,-4838,-4840,-4833,-4824,-4815,-4809,
+-4801,-4786,-4761,-4723,-4675,-4620,-4562,-4507,-4457,-4413,-4377,-4346,-4312,-4267,-4200,-4109,-3995,-3870,-3747,-3638,
+-3548,-3471,-3393,-3303,-3197,-3081,-2968,-2871,-2795,-2734,-2670,-2584,-2463,-2305,-2123,-1934,-1752,-1587,-1441,-1311,
+-1195,-1099,-1028,-986,-967,-950,-908,-813,-650,-426,-167,92,317,491,615,710,802,911,1041,1187,
+1334,1470,1593,1710,1833,1973,2132,2301,2469,2625,2764,2891,3014,3142,3281,3426,3572,3709,3833,3945,
+4050,4153,4258,4365,4471,4572,4667,4759,4851,4948,5051,5161,5275,5390,5504,5616,5726,5830,5926,6008,
+6073,6119,6146,6158,6159,6153,6142,6129,6118,6110,6109,6116,6128,6141,6151,6154,6152,6149,6152,6164,
+6187,6215,6241,6257,6257,6241,6215,6187,6167,6161,6172,6195,6221,6240,6248,6240,6216,6178,6123,6050,
+5959,5853,5745,5648,5580,5551,5566,5616,5688,5766,5835,5884,5906,5900,5867,5816,5758,5704,5660,5626,
+5592,5544,5469,5361,5228,5085,4948,4831,4736,4660,4649,4558,4476,4404,4345,4299,4267,4242,4218,4192,
+4165,4140,4125,4122,4131,4147,4160,4164,4154,4126,4082,4027,3966,3905,3850,3800,3754,3707,3655,3594,
+3523,3444,3356,3259,3150,3030,2901,2771,2651,2553,2479,2428,2390,2356,2318,2274,2228,2186,2153,2129,
+2112,2096,2076,2050,2018,1983,1948,1916,1887,1862,1843,1828,1818,1811,1804,1792,1771,1740,1700,1656,
+1612,1571,1531,1489,1440,1382,1316,1248,1185,1131,1085,1044,1006,968,934,905,883,863,839,805,
+759,706,653,607,568,528,480,419,347,272,203,145,93,39,-24,-104,-196,-291,-383,-469,
+-552,-633,-711,-774,-812,-816,-790,-751,-725,-737,-800,-911,-1051,-1198,-1332,-1443,-1533,-1610,-1684,-1760,
+-1838,-1914,-1984,-2044,-2097,-2145,-2193,-2242,-2296,-2354,-2416,-2483,-2555,-2634,-2718,-2807,-2898,-2984,-3058,-3114,
+-3150,-3169,-3179,-3192,-3215,-3254,-3304,-3354,-3391,-3408,-3402,-3384,-3368,-3365,-3380,-3411,-3443,-3463,-3458,-3427,
+-3378,-3322,-3277,-3254,-3261,-3301,-3370,-3462,-3567,-3672,-3767,-3841,-3887,-3908,-3909,-3899,-3887,-3876,-3865,-3848,
+-3823,-3790,-3754,-3722,-3700,-3687,-3679,-3667,-3647,-3616,-3580,-3546,-3521,-3506,-3497,-3485,-3461,-3419,-3359,-3288,
+-3214,-3145,-3086,-3035,-2990,-2948,-2908,-2872,-2844,-2827,-2818,-2811,-2796,-2766,-2717,-2652,-2579,-2507,-2440,-2377,
+-2313,-2240,-2151,-2045,-1924,-1790,-1652,-1515,-1386,-1271,-1171,-1087,-1011,-931,-835,-718,-580,-431,-285,-153,
+-36,68,168,271,376,482,584,684,786,898,1021,1149,1269,1363,1422,1444,1439,1420,1400,1383,
+1370,1358,1346,1336,1331,1334,1342,1352,1358,1358,1357,1360,1372,1394,1424,1458,1495,1535,1581,1634,
+1689,1742,1783,1811,1828,1842,1862,1890,1923,1953,1972,1976,1966,1950,1935,1928,1930,1944,1974,2026,
+2102,2192,2280,2339,2348,2303,2218,2126,2057,2021,1995,1936,1791,1535,1184,799,467,270,249,393,
+645,923,1150,1279,1296,1217,1075,904,732,576,448,351,286,246,221,198,169,127,75,16,
+-41,-91,-126,-139,-129,-96,-48,2,48,84,114,148,194,254,321,380,416,424,410,390,
+381,392,419,455,488,517,548,593,661,754,865,981,1086,1173,1239,1287,1326,1363,1405,1458,
+1523,1597,1672,1739,1789,1816,1822,1811,1791,1765,1737,1705,1666,1621,1572,1522,1476,1435,1394,1348,
+1291,1220,1136,1043,954,879,829,809,815,838,866,889,899,896,882,861,833,798,753,702,
+649,602,565,538,516,489,451,404,351,299,250,201,142,64,-36,-150,-261,-344,-385,-377,
+-332,-270,-220,-202,-226,-287,-368,-451,-520,-568,-599,-623,-648,-682,-725,-772,-816,-856,-889,-920,
+-952,-987,-1024,-1063,-1103,-1143,-1186,-1236,-1295,-1364,-1442,-1523,-1602,-1670,-1722,-1758,-1780,-1796,-1817,-1851,
+-1903,-1972,-2050,-2129,-2202,-2269,-2333,-2401,-2476,-2560,-2646,-2728,-2797,-2849,-2885,-2908,-2925,-2943,-2964,-2988,
+-3014,-3038,-3060,-3081,-3104,-3130,-3161,-3193,-3227,-3261,-3296,-3333,-3377,-3430,-3494,-3567,-3646,-3728,-3809,-3887,
+-3958,-4021,-4077,-4127,-4174,-4223,-4279,-4343,-4414,-4489,-4564,-4632,-4691,-4737,-4770,-4790,-4799,-4799,-4791,-4778,
+-4758,-4730,-4695,-4653,-4609,-4566,-4529,-4502,-4482,-4468,-4454,-4435,-4408,-4366,-4307,-4227,-4124,-4004,-3875,-3748,
+-3635,-3542,-3464,-3393,-3316,-3224,-3118,-3006,-2899,-2805,-2723,-2642,-2549,-2430,-2284,-2118,-1948,-1789,-1651,-1532,
+-1425,-1324,-1227,-1142,-1076,-1033,-1006,-972,-908,-792,-621,-412,-191,14,189,339,481,635,810,999,
+1182,1338,1456,1547,1632,1737,1880,2059,2257,2449,2616,2755,2875,2992,3122,3270,3429,3586,3728,3850,
+3955,4052,4150,4253,4360,4466,4568,4664,4757,4853,4954,5063,5176,5292,5405,5517,5626,5733,5834,5925,
+6001,6056,6091,6108,6112,6109,6101,6092,6083,6077,6076,6084,6099,6119,6138,6153,6162,6167,6170,6177,
+6186,6197,6204,6203,6192,6172,6148,6128,6117,6123,6146,6181,6219,6248,6257,6242,6206,6155,6096,6034,
+5966,5888,5800,5711,5633,5583,5572,5602,5661,5732,5797,5843,5866,5867,5851,5820,5781,5736,5693,5655,
+5623,5592,5550,5485,5393,5273,5137,4997,4867,4751,4649,4633,4523,4425,4341,4276,4230,4201,4181,4162,
+4138,4108,4076,4051,4038,4041,4057,4080,4102,4113,4106,4080,4034,3975,3911,3847,3788,3731,3675,3616,
+3553,3488,3421,3352,3277,3188,3085,2969,2851,2740,2647,2576,2522,2477,2436,2393,2351,2314,2283,2260,
+2240,2219,2193,2160,2120,2075,2027,1978,1930,1887,1852,1828,1814,1808,1807,1804,1796,1778,1749,1709,
+1663,1614,1566,1521,1474,1423,1365,1299,1230,1165,1107,1058,1017,978,941,905,873,846,821,792,
+755,709,657,606,560,518,475,423,358,284,212,151,107,72,36,-14,-86,-179,-287,-401,
+-519,-637,-751,-852,-924,-954,-938,-888,-832,-800,-819,-896,-1018,-1161,-1297,-1411,-1500,-1575,-1649,-1732,
+-1823,-1914,-1994,-2056,-2102,-2139,-2176,-2222,-2280,-2347,-2418,-2489,-2559,-2629,-2703,-2784,-2872,-2962,-3046,-3117,
+-3172,-3209,-3236,-3262,-3294,-3335,-3383,-3430,-3465,-3481,-3478,-3461,-3441,-3429,-3431,-3447,-3473,-3500,-3521,-3530,
+-3524,-3503,-3468,-3423,-3375,-3336,-3320,-3337,-3396,-3491,-3606,-3720,-3812,-3868,-3889,-3884,-3869,-3857,-3852,-3851,
+-3844,-3827,-3799,-3769,-3749,-3744,-3757,-3778,-3796,-3801,-3790,-3766,-3734,-3703,-3672,-3642,-3605,-3558,-3496,-3421,
+-3337,-3249,-3164,-3090,-3032,-2994,-2975,-2968,-2966,-2957,-2932,-2888,-2825,-2746,-2657,-2568,-2482,-2404,-2334,-2269,
+-2201,-2124,-2034,-1929,-1811,-1685,-1558,-1432,-1308,-1188,-1073,-963,-859,-760,-661,-556,-440,-314,-182,-52,
+70,182,288,390,492,592,687,773,856,943,1042,1154,1272,1379,1457,1496,1497,1473,1442,1417,
+1404,1400,1397,1393,1389,1389,1399,1418,1441,1462,1475,1479,1479,1480,1485,1497,1514,1533,1553,1575,
+1600,1629,1662,1699,1738,1778,1819,1858,1893,1921,1940,1951,1959,1966,1977,1989,1999,2004,2006,2014,
+2038,2087,2155,2224,2270,2270,2222,2141,2057,1998,1966,1937,1859,1684,1391,1004,592,246,46,29,
+180,439,726,971,1130,1191,1165,1074,940,783,621,472,349,259,200,163,133,104,74,50,
+39,47,71,106,143,176,202,217,217,201,170,136,112,115,152,218,297,370,421,447,
+456,464,480,510,547,585,618,647,679,720,776,848,929,1015,1098,1172,1236,1291,1344,1405,
+1482,1577,1684,1787,1866,1910,1915,1890,1852,1811,1772,1729,1672,1595,1503,1406,1319,1253,1210,1181,
+1156,1124,1084,1039,998,973,970,990,1029,1072,1106,1116,1094,1041,969,890,818,760,712,671,
+629,585,541,501,466,431,391,340,279,214,156,110,75,42,-4,-77,-178,-297,-410,-493,
+-528,-513,-464,-407,-373,-381,-435,-522,-617,-697,-750,-774,-784,-795,-819,-861,-913,-967,-1014,-1053,
+-1085,-1115,-1147,-1178,-1205,-1226,-1242,-1256,-1277,-1312,-1364,-1431,-1508,-1584,-1650,-1699,-1729,-1744,-1753,-1768,
+-1800,-1853,-1927,-2014,-2104,-2188,-2262,-2325,-2383,-2442,-2506,-2574,-2641,-2703,-2754,-2793,-2821,-2842,-2861,-2883,
+-2908,-2937,-2967,-3000,-3035,-3073,-3112,-3150,-3182,-3208,-3228,-3248,-3276,-3319,-3380,-3455,-3537,-3620,-3698,-3771,
+-3839,-3904,-3964,-4017,-4062,-4102,-4143,-4193,-4255,-4329,-4409,-4486,-4553,-4609,-4654,-4691,-4722,-4744,-4755,-4750,
+-4730,-4695,-4650,-4602,-4554,-4513,-4482,-4463,-4457,-4460,-4466,-4466,-4452,-4417,-4361,-4284,-4190,-4083,-3968,-3850,
+-3735,-3629,-3537,-3458,-3388,-3317,-3236,-3139,-3027,-2907,-2790,-2682,-2583,-2487,-2385,-2270,-2142,-2009,-1883,-1770,
+-1672,-1584,-1497,-1410,-1324,-1247,-1188,-1142,-1099,-1036,-937,-795,-621,-433,-250,-80,86,268,479,718,
+965,1186,1354,1462,1526,1583,1668,1804,1988,2197,2399,2572,2713,2835,2958,3097,3256,3423,3584,3725,
+3844,3946,4040,4136,4236,4339,4440,4540,4638,4738,4845,4957,5072,5186,5296,5404,5510,5618,5728,5832,
+5923,5992,6035,6054,6057,6053,6047,6044,6044,6046,6050,6060,6075,6096,6118,6138,6153,6162,6169,6177,
+6186,6193,6194,6184,6164,6137,6111,6092,6085,6095,6119,6156,6196,6229,6243,6229,6186,6120,6045,5973,
+5912,5860,5808,5751,5689,5634,5601,5603,5640,5701,5767,5820,5851,5859,5851,5834,5810,5780,5742,5698,
+5654,5612,5572,5529,5472,5392,5287,5160,5023,4885,4754,4633,4613,4497,4394,4308,4241,4194,4162,4137,
+4112,4081,4043,4003,3969,3947,3941,3952,3974,4002,4026,4039,4036,4016,3981,3935,3882,3825,3762,3695,
+3624,3554,3486,3422,3358,3285,3198,3096,2987,2883,2796,2730,2682,2642,2603,2561,2517,2479,2451,2431,
+2414,2392,2359,2316,2266,2212,2155,2097,2035,1974,1919,1876,1850,1838,1836,1836,1831,1816,1790,1753,
+1707,1653,1595,1539,1487,1440,1394,1345,1289,1226,1160,1097,1040,990,944,900,857,818,784,755,
+726,693,652,605,555,507,460,411,355,291,224,163,117,89,70,48,5,-66,-169,-297,
+-442,-594,-746,-884,-992,-1056,-1064,-1022,-952,-889,-866,-906,-1007,-1147,-1297,-1430,-1532,-1609,-1676,-1749,
+-1834,-1928,-2019,-2092,-2143,-2174,-2196,-2222,-2263,-2322,-2395,-2475,-2554,-2630,-2703,-2775,-2852,-2932,-3015,-3096,
+-3169,-3230,-3282,-3328,-3373,-3422,-3473,-3522,-3561,-3584,-3590,-3585,-3574,-3568,-3568,-3575,-3586,-3596,-3606,-3618,
+-3634,-3654,-3670,-3670,-3643,-3587,-3511,-3438,-3393,-3396,-3451,-3545,-3654,-3748,-3810,-3836,-3835,-3824,-3818,-3819,
+-3823,-3821,-3809,-3790,-3777,-3782,-3812,-3862,-3917,-3962,-3985,-3983,-3964,-3935,-3903,-3868,-3824,-3766,-3690,-3597,
+-3492,-3385,-3282,-3190,-3117,-3068,-3045,-3043,-3050,-3050,-3026,-2967,-2875,-2758,-2632,-2513,-2408,-2318,-2238,-2159,
+-2073,-1977,-1868,-1747,-1618,-1487,-1360,-1242,-1134,-1034,-937,-837,-730,-616,-497,-375,-254,-134,-17,94,
+201,304,405,510,619,732,842,943,1031,1109,1184,1265,1352,1439,1510,1552,1561,1543,1514,1493,
+1489,1499,1513,1522,1520,1513,1509,1518,1542,1574,1604,1623,1628,1622,1612,1603,1597,1592,1584,1571,
+1554,1539,1535,1548,1583,1638,1704,1769,1824,1861,1881,1892,1904,1925,1956,1993,2025,2043,2045,2035,
+2026,2032,2059,2102,2147,2174,2166,2125,2063,2000,1948,1900,1829,1696,1472,1157,792,444,188,72,
+103,246,439,622,754,826,851,846,825,787,729,648,549,442,338,241,153,71,0,-48,
+-58,-22,57,167,284,386,460,503,517,504,466,407,338,273,233,232,272,339,412,470,
+501,508,505,507,524,557,599,642,680,712,742,778,831,906,1005,1121,1242,1351,1436,1493,
+1532,1565,1603,1646,1681,1692,1668,1613,1544,1484,1448,1435,1429,1406,1353,1269,1169,1076,1007,969,
+957,962,975,992,1012,1037,1070,1108,1148,1186,1212,1219,1197,1143,1058,955,850,760,692,647,
+612,577,533,478,419,362,311,264,214,159,98,39,-9,-43,-67,-91,-132,-201,-300,-417,
+-528,-608,-643,-633,-596,-560,-551,-584,-651,-732,-802,-844,-855,-849,-845,-862,-903,-964,-1032,-1094,
+-1147,-1190,-1229,-1266,-1300,-1326,-1341,-1344,-1340,-1340,-1352,-1381,-1427,-1484,-1545,-1601,-1647,-1681,-1706,-1729,
+-1755,-1794,-1848,-1920,-2005,-2098,-2189,-2272,-2343,-2398,-2442,-2480,-2518,-2561,-2607,-2655,-2698,-2732,-2754,-2768,
+-2780,-2797,-2824,-2862,-2910,-2965,-3020,-3071,-3113,-3142,-3157,-3166,-3179,-3208,-3263,-3342,-3437,-3533,-3616,-3681,
+-3733,-3779,-3826,-3876,-3926,-3971,-4011,-4053,-4104,-4170,-4248,-4331,-4407,-4470,-4520,-4563,-4605,-4649,-4688,-4713,
+-4716,-4696,-4656,-4608,-4560,-4519,-4487,-4463,-4447,-4439,-4438,-4439,-4435,-4417,-4376,-4313,-4231,-4138,-4041,-3945,
+-3849,-3754,-3660,-3567,-3480,-3401,-3327,-3249,-3158,-3050,-2925,-2792,-2664,-2551,-2455,-2370,-2285,-2194,-2094,-1992,
+-1896,-1811,-1739,-1672,-1606,-1539,-1470,-1405,-1340,-1269,-1178,-1054,-896,-713,-524,-343,-174,-5,182,405,
+659,920,1154,1332,1446,1512,1567,1648,1777,1949,2142,2330,2493,2633,2762,2896,3046,3208,3371,3522,
+3653,3768,3875,3981,4091,4201,4308,4411,4511,4614,4724,4841,4962,5080,5191,5294,5395,5500,5613,5731,
+5842,5935,5999,6031,6038,6030,6021,6019,6024,6034,6046,6059,6073,6090,6110,6129,6143,6152,6158,6164,
+6174,6186,6194,6192,6178,6154,6128,6109,6104,6111,6129,6153,6180,6204,6220,6219,6191,6136,6060,5976,
+5903,5851,5818,5795,5772,5743,5714,5699,5706,5737,5782,5825,5853,5861,5855,5842,5829,5814,5791,5755,
+5706,5652,5600,5554,5510,5456,5383,5283,5160,5021,4879,4741,4613,4620,4507,4408,4324,4257,4206,4168,
+4135,4100,4061,4018,3977,3942,3919,3907,3907,3917,3933,3952,3971,3985,3993,3990,3974,3942,3893,3827,
+3748,3665,3585,3513,3447,3377,3292,3189,3072,2959,2869,2813,2788,2781,2771,2745,2702,2651,2606,2574,
+2552,2529,2495,2447,2389,2328,2268,2210,2148,2078,2006,1941,1895,1871,1867,1872,1872,1861,1836,1802,
+1760,1712,1657,1598,1538,1481,1432,1389,1346,1296,1236,1167,1096,1030,972,921,873,827,783,743,
+709,679,648,612,568,518,467,415,362,306,245,184,128,85,56,34,8,-37,-112,-220,
+-357,-516,-686,-852,-997,-1101,-1149,-1139,-1084,-1013,-964,-968,-1036,-1159,-1309,-1456,-1578,-1668,-1736,-1798,
+-1867,-1947,-2033,-2113,-2177,-2223,-2254,-2279,-2308,-2349,-2403,-2469,-2542,-2617,-2692,-2764,-2835,-2906,-2980,-3056,
+-3133,-3209,-3281,-3348,-3410,-3468,-3522,-3572,-3615,-3648,-3670,-3683,-3693,-3704,-3721,-3740,-3755,-3761,-3755,-3745,
+-3739,-3749,-3774,-3805,-3824,-3811,-3756,-3668,-3569,-3488,-3450,-3465,-3525,-3606,-3683,-3738,-3766,-3776,-3781,-3789,
+-3801,-3809,-3804,-3786,-3766,-3760,-3785,-3844,-3926,-4010,-4074,-4103,-4101,-4081,-4058,-4039,-4020,-3987,-3926,-3830,
+-3705,-3565,-3428,-3309,-3218,-3158,-3128,-3120,-3124,-3123,-3099,-3040,-2941,-2812,-2670,-2535,-2419,-2322,-2236,-2147,
+-2045,-1926,-1796,-1661,-1528,-1399,-1275,-1158,-1047,-947,-856,-771,-685,-591,-487,-372,-250,-129,-13,93,
+190,283,375,475,588,714,850,988,1115,1227,1320,1401,1475,1542,1600,1641,1659,1656,1645,1639,
+1649,1672,1697,1711,1704,1680,1653,1640,1650,1680,1720,1753,1770,1768,1754,1738,1724,1711,1693,1663,
+1619,1565,1515,1482,1481,1515,1578,1656,1729,1783,1815,1829,1841,1862,1897,1941,1985,2017,2031,2033,
+2033,2040,2059,2087,2114,2127,2121,2093,2052,2005,1955,1890,1791,1630,1391,1083,744,434,219,139,
+196,348,523,654,700,662,574,487,436,434,465,501,518,503,459,393,313,225,133,51,
+-5,-19,19,103,214,325,418,484,528,556,571,569,544,495,432,374,342,347,386,439,
+485,510,511,497,484,486,509,549,601,656,708,758,812,881,975,1097,1240,1382,1496,1559,
+1562,1514,1439,1358,1284,1214,1138,1048,951,867,822,828,880,953,1017,1047,1039,1005,965,937,
+927,935,955,982,1016,1054,1091,1121,1138,1139,1128,1110,1087,1058,1016,956,878,793,712,647,
+598,559,517,462,393,316,243,182,134,94,53,3,-54,-114,-165,-202,-226,-250,-288,-354,
+-448,-560,-666,-744,-781,-781,-763,-751,-764,-805,-860,-911,-939,-941,-928,-918,-927,-961,-1018,-1084,
+-1151,-1212,-1268,-1322,-1373,-1417,-1446,-1456,-1447,-1427,-1406,-1394,-1399,-1421,-1455,-1495,-1536,-1577,-1617,-1660,
+-1707,-1759,-1817,-1879,-1947,-2022,-2104,-2191,-2276,-2349,-2401,-2431,-2442,-2447,-2460,-2490,-2536,-2588,-2634,-2663,
+-2675,-2678,-2686,-2709,-2750,-2806,-2869,-2930,-2982,-3020,-3045,-3057,-3067,-3084,-3124,-3192,-3287,-3396,-3498,-3577,
+-3629,-3660,-3687,-3721,-3767,-3820,-3873,-3922,-3970,-4026,-4096,-4177,-4260,-4333,-4391,-4436,-4479,-4529,-4587,-4644,
+-4685,-4700,-4686,-4652,-4611,-4573,-4544,-4519,-4496,-4472,-4449,-4430,-4416,-4403,-4381,-4343,-4284,-4208,-4124,-4042,
+-3964,-3887,-3804,-3713,-3612,-3510,-3414,-3328,-3249,-3166,-3069,-2953,-2823,-2691,-2573,-2476,-2397,-2326,-2250,-2163,
+-2068,-1975,-1894,-1830,-1780,-1736,-1689,-1634,-1568,-1487,-1387,-1259,-1096,-901,-687,-472,-276,-102,56,221,
+409,625,855,1074,1255,1391,1490,1577,1678,1806,1958,2119,2273,2414,2547,2684,2833,2992,3154,3304,
+3437,3554,3665,3782,3908,4039,4168,4286,4394,4496,4601,4714,4833,4952,5064,5167,5264,5364,5473,5593,
+5719,5837,5931,5994,6023,6028,6022,6018,6022,6034,6050,6065,6078,6090,6105,6122,6138,6149,6155,6158,
+6164,6173,6184,6190,6184,6166,6142,6122,6114,6122,6138,6156,6170,6178,6184,6188,6184,6164,6122,6061,
+5993,5934,5897,5886,5890,5897,5899,5895,5891,5894,5902,5909,5905,5885,5854,5823,5800,5788,5779,5760,
+5726,5677,5623,5575,5536,5500,5454,5385,5285,5161,5021,4879,4744,4620,4666,4564,4471,4390,4322,4269,
+4226,4187,4148,4107,4067,4033,4007,3990,3979,3971,3965,3961,3963,3972,3988,4008,4024,4028,4010,3963,
+3890,3799,3703,3616,3544,3480,3408,3315,3196,3065,2946,2865,2835,2845,2870,2880,2858,2804,2738,2678,
+2635,2604,2573,2530,2473,2408,2345,2286,2224,2151,2066,1976,1900,1855,1846,1863,1886,1897,1888,1861,
+1825,1788,1750,1707,1653,1591,1527,1469,1419,1372,1320,1257,1184,1108,1039,981,933,888,842,793,
+744,699,659,620,579,532,479,425,372,321,270,215,156,97,41,-7,-51,-96,-152,-227,
+-328,-455,-607,-773,-938,-1081,-1179,-1219,-1202,-1149,-1095,-1074,-1108,-1201,-1333,-1476,-1604,-1705,-1781,-1844,
+-1908,-1978,-2053,-2126,-2192,-2247,-2295,-2338,-2382,-2428,-2475,-2522,-2572,-2624,-2681,-2744,-2810,-2879,-2948,-3017,
+-3089,-3163,-3241,-3319,-3396,-3467,-3530,-3583,-3629,-3668,-3699,-3725,-3749,-3772,-3799,-3830,-3861,-3885,-3898,-3897,
+-3889,-3881,-3884,-3897,-3913,-3914,-3886,-3822,-3731,-3633,-3554,-3512,-3513,-3549,-3602,-3653,-3692,-3718,-3739,-3764,
+-3795,-3824,-3841,-3834,-3807,-3774,-3757,-3778,-3841,-3934,-4028,-4098,-4129,-4125,-4106,-4093,-4095,-4105,-4098,-4050,
+-3949,-3804,-3636,-3477,-3350,-3268,-3226,-3213,-3211,-3204,-3176,-3115,-3019,-2892,-2751,-2614,-2497,-2402,-2321,-2235,
+-2129,-1999,-1851,-1702,-1567,-1451,-1350,-1251,-1147,-1034,-917,-806,-705,-614,-527,-438,-342,-240,-134,-31,
+66,161,254,352,461,588,732,889,1049,1200,1331,1437,1522,1588,1642,1683,1713,1733,1751,1774,
+1810,1854,1895,1914,1901,1857,1801,1758,1747,1772,1820,1867,1895,1898,1882,1862,1849,1845,1839,1818,
+1773,1704,1623,1550,1504,1496,1528,1588,1659,1722,1767,1794,1813,1835,1867,1907,1945,1972,1984,1991,
+2004,2035,2083,2136,2175,2186,2163,2117,2064,2017,1976,1922,1822,1646,1375,1024,639,291,57,-9,
+99,340,628,865,977,940,782,566,365,227,167,167,197,230,253,269,283,300,316,326,
+329,328,331,341,355,364,361,347,334,335,360,404,448,470,455,404,339,285,263,280,
+326,382,432,468,492,515,545,590,649,720,798,875,949,1017,1082,1150,1223,1296,1354,1373,
+1335,1236,1092,931,783,667,582,515,454,400,367,375,436,542,670,791,885,947,985,1013,
+1040,1065,1084,1094,1097,1098,1101,1101,1090,1062,1016,962,914,881,865,855,836,797,739,671,
+603,544,493,442,383,312,232,153,84,29,-13,-55,-105,-166,-237,-308,-367,-408,-434,-457,
+-494,-555,-643,-745,-842,-915,-957,-973,-979,-989,-1011,-1042,-1070,-1086,-1087,-1079,-1074,-1082,-1105,-1140,
+-1182,-1226,-1273,-1326,-1386,-1449,-1504,-1540,-1550,-1533,-1497,-1456,-1422,-1403,-1401,-1412,-1430,-1453,-1480,-1516,
+-1567,-1634,-1714,-1801,-1885,-1962,-2031,-2098,-2167,-2239,-2303,-2350,-2368,-2361,-2341,-2329,-2342,-2384,-2443,-2499,
+-2538,-2554,-2557,-2564,-2589,-2634,-2692,-2752,-2805,-2847,-2881,-2910,-2938,-2968,-3006,-3058,-3132,-3224,-3324,-3414,
+-3480,-3518,-3539,-3559,-3593,-3647,-3713,-3780,-3840,-3894,-3952,-4019,-4097,-4176,-4247,-4304,-4353,-4404,-4466,-4537,
+-4606,-4658,-4679,-4670,-4642,-4609,-4582,-4563,-4547,-4527,-4500,-4472,-4447,-4428,-4413,-4393,-4357,-4301,-4229,-4149,
+-4070,-3994,-3919,-3835,-3737,-3626,-3509,-3398,-3301,-3219,-3143,-3060,-2964,-2853,-2737,-2628,-2533,-2452,-2377,-2296,
+-2203,-2101,-2000,-1911,-1842,-1790,-1747,-1701,-1643,-1570,-1477,-1361,-1216,-1038,-831,-604,-378,-172,2,151,
+287,432,596,779,970,1152,1314,1457,1589,1720,1854,1989,2118,2238,2355,2479,2621,2781,2951,3115,
+3260,3382,3490,3599,3718,3851,3991,4125,4247,4357,4460,4566,4676,4788,4896,4996,5090,5183,5283,5395,
+5518,5643,5758,5851,5916,5955,5974,5984,5993,6007,6024,6040,6052,6062,6073,6087,6105,6125,6141,6151,
+6159,6167,6177,6184,6183,6169,6141,6110,6087,6082,6094,6113,6129,6135,6133,6129,6128,6128,6122,6100,
+6065,6024,5993,5984,5998,6025,6053,6070,6076,6073,6063,6045,6012,5960,5893,5823,5767,5734,5719,5712,
+5696,5664,5621,5578,5545,5523,5501,5463,5395,5294,5169,5033,4900,4778,4666,4722,4632,4547,4469,4404,
+4352,4309,4270,4231,4193,4159,4134,4120,4114,4111,4106,4095,4082,4071,4066,4071,4083,4095,4098,4079,
+4030,3953,3858,3760,3676,3610,3554,3489,3399,3278,3143,3022,2944,2919,2936,2962,2965,2928,2858,2776,
+2707,2661,2632,2605,2566,2513,2452,2389,2323,2245,2147,2032,1920,1837,1804,1822,1873,1925,1952,1945,
+1913,1873,1836,1802,1765,1713,1647,1573,1503,1442,1388,1333,1270,1198,1124,1057,1001,955,911,862,
+806,746,687,632,579,526,470,412,355,303,256,212,164,110,47,-21,-90,-158,-224,-290,
+-363,-450,-560,-697,-855,-1019,-1163,-1263,-1301,-1282,-1231,-1186,-1183,-1237,-1345,-1480,-1614,-1725,-1811,-1881,
+-1949,-2024,-2103,-2178,-2239,-2285,-2323,-2362,-2411,-2469,-2531,-2586,-2630,-2663,-2693,-2728,-2775,-2834,-2902,-2973,
+-3043,-3113,-3184,-3261,-3342,-3424,-3501,-3570,-3629,-3678,-3720,-3757,-3789,-3816,-3839,-3861,-3884,-3911,-3939,-3967,
+-3992,-4014,-4034,-4050,-4058,-4049,-4012,-3944,-3848,-3743,-3647,-3581,-3554,-3562,-3594,-3633,-3667,-3693,-3715,-3742,
+-3780,-3826,-3869,-3897,-3898,-3873,-3836,-3808,-3812,-3856,-3932,-4016,-4081,-4112,-4112,-4100,-4099,-4118,-4145,-4155,
+-4115,-4013,-3857,-3678,-3515,-3395,-3329,-3305,-3301,-3292,-3261,-3197,-3103,-2983,-2850,-2719,-2601,-2503,-2421,-2341,
+-2245,-2121,-1972,-1813,-1666,-1546,-1456,-1382,-1303,-1203,-1077,-935,-791,-661,-550,-456,-369,-283,-192,-98,
+-1,95,192,290,394,509,638,783,941,1102,1253,1381,1482,1556,1611,1654,1691,1727,1765,1811,
+1868,1934,1997,2038,2039,1996,1924,1853,1815,1825,1876,1940,1987,1999,1980,1951,1933,1936,1950,1955,
+1930,1867,1776,1678,1599,1555,1552,1583,1634,1690,1740,1779,1813,1847,1885,1926,1960,1980,1983,1979,
+1985,2018,2080,2156,2221,2249,2231,2177,2109,2052,2010,1967,1887,1731,1474,1122,718,330,38,-93,
+-34,193,522,859,1112,1220,1171,999,768,537,346,206,107,33,-21,-48,-35,28,142,288,
+441,576,673,721,715,658,561,442,331,253,230,261,328,397,435,423,365,284,212,174,
+182,228,299,379,460,538,617,697,780,864,949,1034,1112,1175,1215,1224,1203,1155,1086,997,
+884,747,590,431,297,212,185,207,257,313,365,418,483,569,672,779,873,944,997,1043,
+1089,1136,1174,1192,1185,1158,1122,1086,1054,1018,972,916,856,805,773,760,756,745,715,662,
+593,520,453,396,346,295,236,169,94,19,-51,-115,-173,-231,-294,-364,-437,-507,-564,-606,
+-635,-662,-700,-758,-837,-928,-1018,-1095,-1155,-1196,-1224,-1243,-1254,-1259,-1259,-1259,-1264,-1275,-1290,-1303,
+-1310,-1311,-1310,-1318,-1345,-1393,-1455,-1518,-1565,-1586,-1576,-1541,-1494,-1446,-1409,-1387,-1377,-1375,-1376,-1379,
+-1392,-1425,-1488,-1583,-1699,-1819,-1926,-2008,-2070,-2120,-2168,-2214,-2250,-2265,-2254,-2227,-2203,-2204,-2235,-2288,
+-2343,-2382,-2400,-2407,-2419,-2451,-2502,-2560,-2613,-2653,-2684,-2719,-2766,-2827,-2897,-2968,-3039,-3110,-3183,-3254,
+-3316,-3358,-3381,-3394,-3413,-3452,-3514,-3592,-3671,-3742,-3803,-3862,-3927,-4000,-4076,-4148,-4212,-4272,-4336,-4408,
+-4485,-4553,-4600,-4616,-4605,-4580,-4554,-4536,-4527,-4521,-4512,-4498,-4483,-4470,-4460,-4450,-4429,-4390,-4331,-4255,
+-4170,-4084,-3999,-3913,-3819,-3715,-3600,-3481,-3369,-3271,-3187,-3113,-3041,-2962,-2874,-2779,-2685,-2595,-2509,-2420,
+-2323,-2215,-2100,-1987,-1885,-1799,-1728,-1663,-1596,-1521,-1433,-1331,-1213,-1077,-917,-734,-535,-332,-142,24,
+165,291,416,555,713,887,1068,1245,1414,1573,1724,1866,1995,2110,2213,2313,2425,2559,2717,2889,
+3058,3210,3339,3452,3559,3672,3793,3917,4039,4154,4264,4374,4485,4597,4705,4803,4893,4979,5069,5167,
+5275,5388,5500,5603,5693,5767,5825,5870,5906,5935,5960,5983,6001,6016,6029,6042,6059,6081,6104,6126,
+6143,6158,6172,6186,6195,6194,6175,6142,6104,6073,6060,6064,6078,6088,6088,6079,6066,6054,6044,6030,
+6010,5988,5975,5983,6014,6062,6110,6143,6155,6148,6132,6111,6080,6033,5965,5882,5800,5736,5699,5683,
+5672,5654,5622,5584,5553,5536,5529,5514,5474,5398,5290,5164,5037,4920,4816,4722,4751,4674,4598,4529,
+4471,4424,4385,4347,4309,4271,4241,4223,4220,4227,4240,4249,4253,4248,4238,4227,4216,4209,4201,4188,
+4162,4116,4049,3969,3888,3818,3764,3717,3660,3577,3462,3331,3210,3125,3085,3079,3077,3052,2992,2906,
+2818,2751,2712,2693,2677,2651,2611,2560,2500,2426,2328,2204,2066,1943,1867,1859,1912,1993,2063,2089,
+2065,2006,1936,1874,1823,1773,1713,1640,1561,1487,1424,1372,1320,1263,1197,1128,1061,1001,947,894,
+836,774,710,646,585,523,458,389,319,253,196,146,102,56,3,-59,-132,-211,-292,-371,
+-445,-517,-595,-691,-814,-966,-1132,-1284,-1389,-1426,-1398,-1332,-1274,-1263,-1318,-1433,-1577,-1717,-1831,-1920,
+-1997,-2077,-2165,-2254,-2328,-2377,-2400,-2412,-2430,-2468,-2528,-2598,-2664,-2713,-2743,-2760,-2778,-2809,-2859,-2923,
+-2995,-3067,-3135,-3203,-3274,-3352,-3434,-3515,-3591,-3658,-3717,-3770,-3817,-3858,-3889,-3909,-3920,-3928,-3938,-3958,
+-3989,-4032,-4084,-4139,-4186,-4213,-4206,-4154,-4059,-3936,-3809,-3702,-3634,-3611,-3624,-3657,-3695,-3728,-3755,-3779,
+-3806,-3838,-3875,-3910,-3937,-3948,-3941,-3921,-3901,-3897,-3920,-3966,-4025,-4075,-4104,-4112,-4111,-4117,-4137,-4160,
+-4160,-4110,-3998,-3837,-3661,-3511,-3411,-3367,-3359,-3355,-3331,-3275,-3187,-3078,-2961,-2844,-2733,-2631,-2537,-2445,
+-2346,-2232,-2096,-1945,-1793,-1656,-1545,-1459,-1382,-1295,-1183,-1043,-886,-730,-589,-468,-364,-269,-174,-77,
+22,123,223,321,418,516,620,734,863,1004,1149,1284,1397,1484,1547,1595,1639,1684,1732,1783,
+1838,1900,1965,2024,2058,2051,2002,1931,1869,1849,1880,1947,2014,2051,2044,2009,1975,1967,1987,2014,
+2019,1980,1896,1789,1689,1620,1594,1603,1635,1676,1718,1759,1801,1848,1898,1946,1985,2008,2013,2010,
+2014,2040,2093,2163,2226,2256,2242,2191,2128,2077,2048,2020,1956,1813,1570,1235,852,485,201,51,
+56,203,450,735,992,1169,1240,1211,1108,966,809,650,485,311,133,-30,-152,-207,-180,-75,
+87,276,458,601,681,688,625,515,395,304,273,312,404,513,599,632,602,528,437,362,
+322,320,346,387,435,487,545,609,679,747,811,869,921,963,989,986,943,857,735,593,
+447,310,191,97,39,30,77,180,321,476,620,741,838,917,985,1041,1079,1092,1086,1073,
+1067,1077,1101,1126,1135,1121,1088,1044,1002,966,934,901,863,820,779,743,713,684,648,600,
+540,472,402,337,281,232,187,140,85,20,-54,-135,-216,-289,-354,-411,-467,-526,-590,-654,
+-714,-763,-803,-839,-879,-932,-1002,-1087,-1182,-1274,-1353,-1409,-1436,-1439,-1425,-1411,-1408,-1421,-1447,-1470,
+-1476,-1457,-1417,-1371,-1338,-1330,-1354,-1403,-1463,-1518,-1556,-1570,-1560,-1530,-1489,-1448,-1416,-1394,-1377,-1358,
+-1333,-1308,-1300,-1329,-1409,-1537,-1690,-1839,-1955,-2029,-2069,-2093,-2114,-2135,-2148,-2146,-2130,-2112,-2109,-2131,
+-2174,-2220,-2252,-2265,-2269,-2281,-2312,-2362,-2416,-2460,-2489,-2516,-2557,-2626,-2724,-2836,-2944,-3035,-3105,-3161,
+-3205,-3239,-3259,-3267,-3270,-3283,-3318,-3378,-3457,-3541,-3619,-3690,-3757,-3826,-3900,-3978,-4053,-4126,-4199,-4273,
+-4348,-4416,-4467,-4494,-4496,-4481,-4464,-4453,-4450,-4454,-4457,-4457,-4455,-4455,-4458,-4458,-4450,-4426,-4381,-4318,
+-4241,-4156,-4068,-3977,-3882,-3782,-3677,-3572,-3469,-3373,-3286,-3207,-3132,-3058,-2983,-2903,-2819,-2730,-2634,-2531,
+-2420,-2302,-2179,-2057,-1941,-1835,-1740,-1653,-1571,-1488,-1400,-1304,-1200,-1087,-964,-829,-683,-527,-369,-213,
+-67,70,204,343,496,665,846,1029,1205,1368,1522,1671,1816,1955,2081,2191,2288,2384,2492,2624,
+2778,2943,3105,3253,3383,3499,3607,3713,3818,3925,4035,4150,4272,4398,4519,4629,4725,4812,4895,4983,
+5078,5176,5272,5365,5454,5542,5628,5710,5784,5845,5894,5933,5967,5998,6026,6051,6072,6092,6110,6128,
+6144,6160,6175,6193,6212,6230,6238,6230,6205,6171,6139,6116,6107,6106,6103,6091,6069,6039,6001,5958,
+5911,5868,5844,5852,5901,5981,6069,6137,6164,6153,6118,6080,6051,6028,5997,5947,5881,5810,5750,5711,
+5687,5666,5638,5601,5567,5547,5541,5540,5521,5469,5379,5260,5133,5016,4915,4830,4751,4748,4683,4620,
+4563,4517,4479,4445,4410,4373,4338,4313,4303,4311,4333,4363,4393,4417,4431,4432,4422,4401,4374,4344,
+4313,4279,4239,4190,4134,4078,4029,3988,3948,3896,3819,3713,3589,3470,3375,3313,3273,3237,3182,3104,
+3010,2920,2851,2809,2786,2771,2754,2729,2696,2650,2581,2481,2353,2215,2103,2049,2065,2136,2222,2279,
+2276,2213,2111,1998,1896,1811,1737,1663,1586,1511,1443,1388,1341,1296,1245,1187,1122,1056,989,922,
+856,791,728,669,611,549,478,396,306,215,129,55,-9,-67,-124,-186,-254,-330,-414,-502,
+-590,-673,-748,-821,-902,-1008,-1145,-1303,-1454,-1562,-1597,-1554,-1464,-1374,-1336,-1377,-1492,-1647,-1804,-1935,
+-2036,-2120,-2206,-2299,-2392,-2467,-2511,-2525,-2521,-2524,-2552,-2608,-2685,-2763,-2825,-2861,-2876,-2882,-2896,-2927,
+-2977,-3041,-3108,-3173,-3236,-3300,-3369,-3444,-3520,-3593,-3659,-3719,-3776,-3831,-3883,-3928,-3960,-3978,-3983,-3983,
+-3984,-3994,-4018,-4061,-4121,-4190,-4251,-4283,-4269,-4203,-4094,-3968,-3853,-3772,-3733,-3732,-3758,-3796,-3837,-3877,
+-3911,-3938,-3956,-3964,-3968,-3972,-3979,-3989,-3998,-4005,-4011,-4023,-4043,-4070,-4098,-4120,-4130,-4135,-4140,-4148,
+-4150,-4126,-4057,-3936,-3779,-3619,-3491,-3416,-3390,-3388,-3380,-3343,-3272,-3180,-3081,-2987,-2899,-2810,-2713,-2604,
+-2485,-2357,-2224,-2086,-1945,-1806,-1675,-1555,-1444,-1333,-1211,-1075,-926,-775,-634,-509,-400,-301,-201,-97,
+10,120,228,331,427,517,604,693,791,903,1028,1158,1280,1381,1459,1520,1575,1634,1696,1756,
+1806,1849,1889,1936,1986,2026,2037,2013,1963,1917,1903,1932,1992,2050,2077,2063,2025,1995,1993,2016,
+2040,2032,1977,1884,1779,1693,1646,1636,1652,1678,1708,1741,1782,1831,1885,1935,1972,1994,2003,2009,
+2023,2057,2112,2178,2234,2257,2238,2186,2129,2092,2086,2088,2048,1915,1662,1305,903,537,278,167,
+201,344,542,742,905,1014,1067,1077,1064,1040,1009,963,884,760,591,393,194,23,-99,-166,
+-178,-144,-75,12,100,164,187,167,121,85,95,172,309,474,623,718,741,703,634,565,
+519,498,490,479,454,412,365,325,298,286,281,280,279,280,284,289,286,265,224,167,
+110,70,59,80,131,209,312,438,582,732,873,994,1087,1154,1202,1232,1244,1232,1194,1137,
+1076,1024,991,979,977,976,965,944,916,886,858,832,806,778,747,711,670,623,572,518,
+464,409,355,299,242,182,124,68,15,-37,-95,-162,-239,-321,-399,-467,-522,-570,-617,-671,
+-735,-805,-874,-934,-980,-1017,-1051,-1095,-1156,-1239,-1335,-1429,-1504,-1545,-1553,-1538,-1522,-1521,-1541,-1570,
+-1589,-1579,-1536,-1469,-1399,-1348,-1328,-1337,-1368,-1410,-1454,-1495,-1529,-1550,-1554,-1541,-1517,-1490,-1468,-1449,
+-1423,-1380,-1322,-1265,-1240,-1275,-1382,-1543,-1721,-1873,-1973,-2018,-2027,-2025,-2029,-2039,-2047,-2048,-2045,-2051,
+-2074,-2114,-2157,-2187,-2196,-2191,-2190,-2206,-2240,-2282,-2317,-2343,-2369,-2416,-2498,-2615,-2749,-2877,-2982,-3058,
+-3110,-3145,-3169,-3181,-3182,-3180,-3184,-3208,-3257,-3326,-3408,-3491,-3572,-3651,-3729,-3806,-3883,-3958,-4035,-4113,
+-4192,-4264,-4318,-4346,-4350,-4340,-4330,-4331,-4346,-4367,-4383,-4388,-4384,-4378,-4378,-4383,-4387,-4380,-4355,-4312,
+-4255,-4188,-4115,-4036,-3947,-3850,-3748,-3650,-3561,-3483,-3413,-3346,-3275,-3198,-3115,-3027,-2936,-2839,-2734,-2616,
+-2487,-2352,-2217,-2091,-1978,-1878,-1789,-1706,-1628,-1552,-1476,-1397,-1310,-1212,-1102,-980,-853,-725,-600,-476,
+-354,-228,-94,54,224,414,620,827,1019,1184,1324,1450,1580,1725,1884,2043,2181,2288,2369,2441,
+2529,2647,2796,2962,3127,3279,3413,3531,3640,3746,3854,3968,4090,4219,4351,4477,4592,4693,4785,4874,
+4965,5058,5148,5231,5309,5388,5474,5569,5667,5758,5835,5898,5951,6003,6055,6106,6149,6180,6198,6207,
+6212,6215,6220,6227,6239,6256,6276,6293,6302,6297,6281,6259,6237,6219,6201,6180,6150,6110,6059,5994,
+5916,5833,5762,5726,5746,5824,5940,6057,6134,6151,6114,6052,5998,5969,5962,5958,5937,5892,5832,5773,
+5722,5681,5642,5600,5560,5531,5521,5525,5526,5501,5437,5334,5209,5084,4975,4886,4814,4748,4725,4672,
+4622,4580,4547,4521,4496,4471,4445,4424,4413,4418,4438,4471,4511,4551,4585,4609,4617,4610,4587,4554,
+4514,4473,4433,4391,4348,4305,4263,4227,4197,4165,4121,4055,3964,3856,3747,3650,3573,3511,3450,3380,
+3294,3198,3101,3016,2948,2897,2863,2843,2833,2827,2810,2765,2683,2570,2450,2355,2313,2328,2381,2435,
+2451,2410,2316,2188,2053,1929,1819,1722,1633,1551,1477,1415,1361,1314,1268,1221,1173,1122,1067,1005,
+936,863,794,731,673,613,540,446,332,207,83,-27,-123,-205,-281,-357,-434,-515,-600,-689,
+-784,-881,-973,-1054,-1123,-1189,-1269,-1377,-1511,-1650,-1754,-1787,-1737,-1627,-1509,-1440,-1458,-1562,-1720,-1886,
+-2027,-2132,-2216,-2298,-2390,-2486,-2571,-2629,-2657,-2665,-2674,-2702,-2756,-2832,-2912,-2979,-3020,-3034,-3029,-3022,
+-3028,-3054,-3098,-3155,-3216,-3278,-3342,-3410,-3480,-3549,-3611,-3664,-3711,-3757,-3809,-3867,-3927,-3983,-4025,-4048,
+-4051,-4034,-4006,-3979,-3969,-3991,-4049,-4133,-4218,-4274,-4281,-4232,-4143,-4041,-3954,-3897,-3876,-3883,-3912,-3954,
+-4003,-4051,-4087,-4101,-4093,-4069,-4046,-4038,-4051,-4079,-4110,-4133,-4144,-4148,-4150,-4155,-4160,-4163,-4161,-4157,
+-4148,-4130,-4091,-4017,-3907,-3773,-3640,-3537,-3476,-3452,-3443,-3422,-3374,-3301,-3217,-3137,-3066,-2998,-2918,-2815,
+-2686,-2539,-2388,-2242,-2104,-1973,-1843,-1711,-1574,-1432,-1284,-1130,-974,-822,-682,-562,-459,-369,-280,-187,
+-84,24,133,239,339,433,521,608,696,794,903,1025,1148,1262,1356,1430,1493,1560,1637,1718,
+1788,1836,1862,1884,1920,1977,2044,2094,2105,2074,2024,1990,1995,2036,2088,2121,2118,2089,2058,2045,
+2052,2059,2043,1993,1916,1835,1770,1730,1713,1711,1718,1739,1776,1828,1887,1938,1969,1980,1979,1979,
+1995,2031,2088,2154,2212,2247,2249,2223,2190,2174,2184,2204,2186,2069,1816,1434,984,563,265,145,
+200,377,599,795,923,974,966,931,898,886,899,922,932,905,831,715,576,436,305,182,
+58,-69,-192,-290,-345,-355,-334,-311,-303,-310,-307,-266,-171,-32,116,232,291,291,255,215,
+195,201,219,227,205,146,57,-45,-142,-224,-286,-332,-367,-391,-401,-393,-363,-315,-254,-182,
+-100,-1,117,257,409,560,698,818,916,996,1059,1105,1135,1153,1164,1171,1174,1169,1151,1117,
+1068,1011,955,907,871,845,828,817,806,792,770,740,703,663,626,591,556,518,474,427,
+380,339,303,267,224,169,102,27,-45,-113,-172,-228,-288,-354,-429,-506,-580,-646,-703,-755,
+-807,-867,-934,-1007,-1076,-1135,-1178,-1206,-1228,-1258,-1306,-1375,-1454,-1527,-1578,-1601,-1606,-1610,-1626,-1654,
+-1679,-1678,-1640,-1566,-1480,-1410,-1373,-1372,-1391,-1414,-1430,-1442,-1458,-1486,-1523,-1558,-1579,-1581,-1571,-1558,
+-1545,-1525,-1484,-1414,-1327,-1253,-1230,-1286,-1417,-1591,-1762,-1886,-1950,-1964,-1956,-1951,-1957,-1970,-1981,-1988,
+-2000,-2027,-2070,-2119,-2155,-2166,-2156,-2137,-2129,-2140,-2166,-2196,-2225,-2258,-2309,-2388,-2496,-2620,-2740,-2843,
+-2922,-2981,-3025,-3059,-3080,-3089,-3091,-3097,-3117,-3156,-3216,-3290,-3372,-3457,-3541,-3620,-3693,-3760,-3827,-3899,
+-3980,-4065,-4139,-4189,-4206,-4199,-4185,-4187,-4212,-4254,-4295,-4318,-4314,-4293,-4269,-4256,-4257,-4265,-4267,-4254,
+-4225,-4182,-4130,-4070,-3998,-3913,-3817,-3717,-3625,-3549,-3490,-3440,-3389,-3325,-3243,-3146,-3037,-2922,-2800,-2671,
+-2533,-2390,-2249,-2122,-2017,-1933,-1865,-1805,-1746,-1686,-1627,-1569,-1508,-1437,-1349,-1239,-1112,-979,-850,-729,
+-617,-507,-388,-251,-87,107,331,570,803,1005,1161,1276,1373,1484,1633,1818,2015,2188,2309,2378,
+2419,2467,2552,2682,2845,3019,3185,3336,3473,3603,3729,3853,3973,4092,4211,4331,4450,4566,4675,4780,
+4883,4983,5079,5166,5243,5314,5387,5470,5564,5662,5753,5832,5899,5964,6033,6109,6183,6245,6286,6306,
+6312,6310,6306,6302,6298,6297,6300,6309,6324,6339,6350,6353,6349,6338,6320,6294,6259,6215,6161,6098,
+6021,5931,5834,5748,5700,5712,5787,5901,6013,6081,6085,6037,5970,5920,5906,5921,5938,5935,5900,5841,
+5773,5708,5651,5598,5549,5510,5488,5486,5495,5493,5460,5386,5277,5151,5030,4928,4847,4783,4725,4700,
+4656,4618,4588,4565,4548,4537,4529,4527,4531,4544,4565,4595,4630,4665,4698,4723,4737,4741,4733,4715,
+4692,4663,4629,4590,4544,4494,4446,4404,4373,4351,4330,4300,4253,4184,4100,4011,3924,3846,3773,3701,
+3623,3535,3437,3331,3220,3114,3024,2962,2935,2942,2966,2983,2970,2913,2819,2710,2617,2560,2541,2543,
+2540,2510,2445,2349,2236,2117,1998,1880,1764,1654,1555,1471,1398,1335,1278,1228,1187,1156,1132,1104,
+1062,1003,931,856,785,714,633,528,394,235,68,-87,-218,-323,-412,-494,-578,-667,-756,-846,
+-936,-1031,-1129,-1227,-1315,-1387,-1447,-1509,-1592,-1703,-1826,-1924,-1958,-1909,-1792,-1658,-1567,-1561,-1647,-1794,
+-1955,-2092,-2196,-2279,-2361,-2456,-2562,-2663,-2743,-2797,-2831,-2858,-2891,-2937,-2994,-3054,-3106,-3141,-3152,-3142,
+-3123,-3108,-3107,-3129,-3172,-3232,-3303,-3382,-3464,-3544,-3616,-3674,-3718,-3751,-3786,-3830,-3888,-3957,-4029,-4091,
+-4131,-4139,-4112,-4052,-3975,-3906,-3873,-3895,-3974,-4087,-4198,-4269,-4281,-4238,-4163,-4085,-4027,-3998,-3993,-4006,
+-4032,-4070,-4116,-4161,-4193,-4203,-4191,-4170,-4157,-4164,-4190,-4225,-4255,-4268,-4266,-4256,-4244,-4232,-4219,-4202,
+-4180,-4156,-4128,-4091,-4037,-3961,-3866,-3768,-3683,-3621,-3580,-3546,-3503,-3443,-3369,-3290,-3216,-3147,-3073,-2981,
+-2862,-2718,-2560,-2403,-2255,-2119,-1989,-1858,-1721,-1575,-1422,-1264,-1105,-948,-799,-664,-547,-446,-356,-268,
+-175,-78,22,121,216,307,397,489,584,685,793,911,1034,1154,1261,1346,1414,1478,1552,1641,
+1736,1817,1870,1896,1917,1960,2036,2131,2210,2238,2205,2135,2071,2052,2086,2152,2209,2227,2204,2159,
+2120,2100,2098,2096,2079,2043,1990,1929,1866,1808,1765,1750,1773,1831,1907,1975,2015,2023,2011,2002,
+2012,2043,2086,2128,2162,2188,2211,2237,2271,2316,2363,2392,2365,2240,1985,1604,1145,697,356,189,
+207,365,583,784,915,965,949,899,844,804,785,784,787,778,744,685,611,542,490,447,
+391,296,151,-26,-196,-318,-372,-372,-357,-362,-402,-463,-514,-534,-523,-502,-496,-519,-562,-600,
+-611,-587,-538,-486,-452,-445,-465,-499,-536,-566,-584,-591,-586,-571,-547,-508,-452,-375,-275,-154,
+-15,138,306,481,655,814,947,1044,1104,1131,1135,1123,1103,1080,1058,1040,1028,1018,1009,996,
+978,955,925,889,846,800,757,723,702,690,678,656,619,568,514,464,422,388,356,323,
+289,255,225,195,161,117,59,-10,-86,-161,-232,-295,-354,-412,-474,-543,-619,-699,-778,-852,
+-918,-975,-1029,-1083,-1144,-1209,-1273,-1326,-1362,-1380,-1390,-1407,-1439,-1487,-1541,-1590,-1626,-1656,-1689,-1732,
+-1777,-1800,-1781,-1710,-1604,-1499,-1429,-1414,-1445,-1492,-1523,-1525,-1505,-1486,-1488,-1516,-1559,-1598,-1620,-1623,
+-1616,-1607,-1594,-1565,-1508,-1423,-1330,-1266,-1265,-1342,-1480,-1640,-1777,-1865,-1904,-1911,-1912,-1919,-1929,-1937,
+-1939,-1942,-1960,-1998,-2047,-2089,-2108,-2097,-2069,-2044,-2036,-2051,-2082,-2121,-2165,-2217,-2283,-2365,-2457,-2550,
+-2635,-2711,-2778,-2839,-2890,-2930,-2957,-2975,-2993,-3020,-3061,-3117,-3184,-3260,-3339,-3418,-3490,-3551,-3603,-3655,
+-3721,-3805,-3901,-3991,-4052,-4077,-4074,-4066,-4077,-4114,-4167,-4213,-4230,-4212,-4173,-4134,-4113,-4117,-4137,-4160,
+-4170,-4162,-4134,-4090,-4031,-3959,-3874,-3780,-3685,-3599,-3528,-3473,-3427,-3378,-3312,-3222,-3109,-2979,-2841,-2702,
+-2565,-2434,-2311,-2203,-2116,-2050,-2002,-1962,-1919,-1869,-1812,-1756,-1702,-1647,-1581,-1497,-1390,-1264,-1130,-998,
+-871,-748,-620,-481,-325,-144,63,296,542,778,976,1122,1222,1306,1417,1580,1794,2023,2217,2342,
+2394,2408,2432,2501,2626,2790,2965,3131,3283,3429,3576,3722,3861,3984,4092,4190,4289,4397,4512,4632,
+4752,4867,4976,5076,5164,5241,5310,5380,5456,5540,5626,5707,5779,5848,5920,6004,6095,6185,6261,6314,
+6346,6362,6371,6374,6372,6363,6349,6336,6328,6329,6338,6350,6361,6369,6369,6358,6333,6294,6244,6186,
+6123,6053,5974,5886,5801,5741,5726,5761,5831,5902,5943,5938,5900,5857,5840,5857,5896,5930,5934,5902,
+5843,5773,5707,5648,5595,5549,5515,5497,5495,5496,5482,5435,5349,5233,5106,4987,4888,4811,4750,4700,
+4698,4660,4628,4599,4576,4562,4560,4572,4595,4626,4659,4691,4720,4747,4770,4787,4795,4792,4782,4768,
+4756,4748,4741,4729,4705,4666,4616,4567,4527,4503,4491,4481,4462,4426,4373,4311,4243,4174,4103,4026,
+3944,3858,3765,3663,3547,3416,3280,3158,3074,3042,3062,3112,3160,3173,3138,3057,2953,2850,2764,2697,
+2640,2582,2516,2443,2365,2285,2196,2093,1972,1838,1704,1581,1475,1387,1310,1244,1192,1161,1150,1153,
+1151,1130,1082,1011,928,841,747,635,493,318,122,-73,-246,-384,-487,-568,-644,-725,-813,-902,
+-989,-1071,-1154,-1242,-1336,-1429,-1512,-1583,-1653,-1735,-1839,-1953,-2047,-2080,-2031,-1912,-1771,-1669,-1650,-1722,
+-1857,-2009,-2143,-2249,-2340,-2434,-2541,-2656,-2763,-2852,-2919,-2970,-3010,-3047,-3079,-3110,-3138,-3166,-3190,-3206,
+-3207,-3192,-3169,-3150,-3148,-3174,-3229,-3308,-3403,-3504,-3601,-3683,-3746,-3792,-3827,-3865,-3914,-3978,-4054,-4131,
+-4196,-4236,-4242,-4208,-4138,-4045,-3953,-3893,-3890,-3950,-4056,-4172,-4258,-4289,-4263,-4203,-4141,-4100,-4087,-4091,
+-4098,-4101,-4106,-4123,-4160,-4210,-4261,-4297,-4315,-4319,-4323,-4335,-4354,-4372,-4381,-4379,-4366,-4347,-4324,-4296,
+-4262,-4223,-4185,-4152,-4125,-4096,-4058,-4005,-3939,-3865,-3793,-3725,-3659,-3590,-3516,-3437,-3355,-3270,-3179,-3075,
+-2955,-2819,-2672,-2523,-2380,-2244,-2112,-1979,-1841,-1698,-1554,-1409,-1267,-1125,-982,-841,-703,-575,-456,-345,
+-237,-131,-27,71,161,243,321,402,491,590,698,815,936,1059,1174,1274,1354,1419,1482,1559,
+1655,1759,1852,1916,1952,1981,2028,2107,2201,2275,2293,2246,2162,2092,2079,2136,2233,2320,2354,2325,
+2255,2185,2147,2150,2178,2205,2207,2169,2091,1987,1882,1807,1785,1823,1906,1996,2060,2081,2073,2063,
+2077,2119,2168,2197,2191,2166,2152,2182,2268,2390,2506,2567,2528,2364,2073,1679,1236,820,505,345,
+347,474,654,816,915,943,920,875,829,787,748,708,664,618,568,511,449,393,356,350,
+368,382,361,284,164,37,-53,-85,-71,-53,-77,-163,-299,-453,-594,-709,-805,-897,-986,-1060,
+-1100,-1095,-1054,-996,-942,-901,-866,-823,-762,-683,-593,-501,-413,-326,-239,-147,-50,50,154,262,
+372,484,599,713,821,917,992,1043,1068,1072,1063,1048,1032,1015,998,982,966,950,931,909,
+885,862,844,826,804,771,726,676,631,599,579,564,540,503,453,400,350,309,273,239,
+205,169,133,95,53,3,-53,-115,-177,-236,-293,-352,-413,-479,-546,-613,-680,-750,-825,-904,
+-984,-1057,-1119,-1170,-1214,-1260,-1315,-1377,-1438,-1486,-1515,-1527,-1533,-1545,-1569,-1603,-1638,-1672,-1708,-1757,
+-1820,-1883,-1919,-1901,-1820,-1695,-1569,-1485,-1467,-1506,-1569,-1619,-1633,-1613,-1580,-1558,-1561,-1584,-1613,-1632,
+-1635,-1626,-1614,-1602,-1585,-1550,-1492,-1416,-1345,-1312,-1338,-1425,-1551,-1680,-1782,-1844,-1874,-1887,-1894,-1899,
+-1895,-1882,-1868,-1866,-1887,-1925,-1965,-1989,-1985,-1959,-1931,-1918,-1929,-1963,-2009,-2060,-2113,-2167,-2225,-2286,
+-2349,-2414,-2483,-2557,-2633,-2703,-2762,-2808,-2843,-2877,-2916,-2965,-3023,-3087,-3157,-3232,-3305,-3371,-3424,-3467,
+-3510,-3570,-3655,-3758,-3861,-3939,-3980,-3992,-3994,-4007,-4039,-4080,-4109,-4110,-4079,-4033,-3992,-3975,-3989,-4025,
+-4068,-4101,-4112,-4097,-4057,-3998,-3925,-3843,-3757,-3671,-3590,-3519,-3460,-3408,-3352,-3280,-3181,-3054,-2906,-2753,
+-2610,-2489,-2392,-2318,-2263,-2223,-2191,-2159,-2120,-2069,-2007,-1940,-1874,-1812,-1749,-1677,-1590,-1486,-1370,-1249,
+-1122,-987,-836,-667,-481,-284,-81,128,346,566,773,945,1072,1165,1259,1393,1591,1839,2089,2283,
+2386,2405,2388,2393,2460,2593,2764,2940,3098,3240,3379,3527,3680,3825,3949,4050,4137,4227,4331,4449,
+4576,4700,4818,4925,5023,5112,5191,5264,5333,5404,5478,5553,5626,5696,5768,5848,5939,6037,6133,6218,
+6284,6334,6372,6400,6419,6424,6414,6394,6372,6354,6345,6344,6347,6351,6355,6356,6349,6329,6294,6245,
+6189,6132,6075,6012,5941,5864,5794,5745,5728,5738,5757,5768,5763,5751,5751,5778,5830,5890,5933,5941,
+5911,5858,5797,5740,5689,5643,5601,5567,5545,5533,5521,5492,5434,5342,5225,5098,4980,4880,4802,4743,
+4698,4743,4706,4670,4634,4600,4579,4578,4600,4639,4684,4727,4760,4785,4805,4822,4832,4833,4822,4801,
+4778,4761,4754,4756,4758,4751,4730,4700,4671,4653,4649,4649,4641,4615,4570,4516,4463,4416,4369,4313,
+4240,4150,4051,3948,3840,3719,3579,3428,3289,3188,3148,3170,3230,3292,3324,3307,3244,3152,3049,2947,
+2849,2753,2658,2567,2485,2414,2348,2275,2181,2062,1924,1782,1649,1533,1434,1348,1276,1222,1191,1184,
+1191,1194,1176,1131,1060,972,873,758,621,453,257,48,-153,-327,-461,-558,-632,-700,-776,-862,
+-951,-1037,-1114,-1187,-1263,-1349,-1443,-1537,-1627,-1716,-1812,-1922,-2036,-2124,-2152,-2098,-1976,-1834,-1732,-1714,
+-1787,-1921,-2072,-2206,-2318,-2420,-2528,-2645,-2759,-2857,-2932,-2991,-3044,-3097,-3144,-3179,-3198,-3209,-3224,-3248,
+-3278,-3300,-3301,-3280,-3249,-3228,-3233,-3274,-3347,-3441,-3540,-3632,-3708,-3766,-3811,-3853,-3904,-3972,-4055,-4147,
+-4231,-4295,-4328,-4328,-4296,-4241,-4174,-4114,-4078,-4084,-4134,-4215,-4299,-4354,-4359,-4315,-4247,-4190,-4168,-4185,
+-4220,-4245,-4242,-4218,-4197,-4205,-4253,-4330,-4410,-4469,-4497,-4501,-4493,-4487,-4486,-4484,-4478,-4463,-4439,-4409,
+-4370,-4325,-4276,-4230,-4192,-4165,-4145,-4126,-4096,-4050,-3986,-3909,-3822,-3733,-3646,-3563,-3481,-3395,-3297,-3181,
+-3046,-2899,-2751,-2611,-2484,-2367,-2251,-2128,-1993,-1848,-1699,-1552,-1412,-1279,-1149,-1018,-884,-747,-609,-472,
+-337,-202,-70,52,160,250,323,389,456,535,628,734,850,971,1091,1204,1302,1384,1453,1520,
+1599,1695,1801,1898,1970,2013,2039,2071,2121,2179,2221,2220,2174,2110,2074,2104,2203,2332,2436,2469,
+2422,2325,2231,2180,2187,2233,2282,2298,2261,2171,2052,1938,1865,1856,1905,1985,2055,2089,2087,2078,
+2095,2153,2232,2290,2292,2239,2172,2153,2221,2367,2531,2630,2593,2390,2041,1605,1160,784,533,434,
+476,614,781,914,977,966,909,843,790,751,710,652,572,485,405,342,293,249,205,169,
+156,172,207,237,236,199,146,108,105,133,158,143,70,-51,-192,-323,-434,-529,-621,-707,
+-772,-800,-786,-745,-702,-673,-654,-626,-568,-470,-344,-209,-84,25,125,224,327,434,536,628,
+704,766,816,857,892,920,940,950,949,944,938,936,939,943,942,934,920,901,879,852,
+820,784,749,722,702,684,660,624,581,538,504,479,457,430,395,354,312,273,234,193,
+146,97,48,0,-48,-103,-166,-233,-296,-349,-393,-434,-483,-547,-623,-703,-779,-846,-906,-966,
+-1031,-1102,-1173,-1239,-1293,-1338,-1379,-1424,-1477,-1534,-1585,-1623,-1646,-1659,-1673,-1693,-1715,-1735,-1751,-1770,
+-1806,-1866,-1939,-1997,-2007,-1952,-1842,-1710,-1601,-1546,-1550,-1597,-1655,-1698,-1713,-1702,-1675,-1647,-1627,-1616,
+-1612,-1609,-1602,-1592,-1579,-1564,-1545,-1516,-1476,-1430,-1396,-1394,-1435,-1515,-1612,-1703,-1768,-1804,-1819,-1823,
+-1819,-1808,-1788,-1767,-1755,-1762,-1788,-1821,-1845,-1849,-1835,-1817,-1809,-1820,-1851,-1894,-1944,-1994,-2043,-2090,
+-2135,-2182,-2234,-2299,-2378,-2467,-2554,-2629,-2687,-2733,-2775,-2824,-2882,-2947,-3017,-3090,-3166,-3242,-3311,-3368,
+-3415,-3458,-3513,-3589,-3682,-3777,-3856,-3907,-3933,-3947,-3963,-3982,-3998,-4000,-3980,-3943,-3902,-3872,-3866,-3886,
+-3925,-3972,-4015,-4039,-4038,-4010,-3960,-3896,-3826,-3753,-3678,-3603,-3534,-3474,-3423,-3371,-3301,-3199,-3061,-2898,
+-2735,-2595,-2494,-2432,-2399,-2377,-2353,-2316,-2265,-2200,-2128,-2056,-1990,-1931,-1874,-1810,-1732,-1639,-1536,-1431,
+-1323,-1203,-1056,-871,-651,-409,-169,53,257,445,623,783,917,1020,1110,1223,1394,1636,1920,2184,
+2366,2435,2413,2359,2343,2406,2547,2728,2911,3069,3207,3339,3480,3629,3772,3897,4002,4096,4192,4300,
+4418,4537,4650,4755,4852,4945,5035,5120,5199,5272,5342,5413,5485,5558,5634,5713,5800,5895,5994,6091,
+6181,6260,6328,6387,6434,6463,6471,6460,6438,6415,6398,6389,6382,6373,6361,6350,6340,6331,6316,6290,
+6251,6202,6150,6098,6042,5980,5910,5836,5768,5717,5685,5667,5659,5659,5671,5704,5762,5834,5902,5944,
+5949,5920,5871,5815,5763,5713,5664,5616,5573,5540,5519,5500,5471,5420,5343,5245,5134,5025,4928,4849,
+4789,4743,4822,4777,4732,4684,4639,4609,4603,4625,4667,4716,4761,4794,4820,4842,4864,4882,4890,4882,
+4859,4827,4793,4767,4750,4739,4731,4724,4720,4726,4743,4765,4777,4764,4719,4652,4584,4534,4508,4493,
+4466,4410,4322,4215,4103,3991,3871,3736,3587,3444,3333,3278,3281,3323,3372,3400,3392,3349,3280,3196,
+3102,3000,2892,2780,2672,2574,2490,2416,2342,2258,2159,2047,1929,1813,1704,1603,1508,1421,1349,1295,
+1262,1241,1221,1190,1142,1075,990,885,758,603,421,221,17,-171,-332,-457,-550,-623,-691,-767,
+-855,-952,-1048,-1136,-1216,-1296,-1383,-1477,-1574,-1668,-1761,-1859,-1969,-2081,-2167,-2193,-2139,-2020,-1885,-1794,
+-1790,-1874,-2014,-2164,-2295,-2404,-2508,-2620,-2738,-2846,-2928,-2984,-3031,-3085,-3151,-3219,-3273,-3305,-3320,-3338,
+-3370,-3413,-3451,-3466,-3452,-3420,-3391,-3387,-3416,-3473,-3546,-3619,-3680,-3726,-3758,-3785,-3819,-3871,-3948,-4049,
+-4160,-4262,-4339,-4379,-4386,-4372,-4353,-4342,-4348,-4372,-4412,-4462,-4512,-4549,-4556,-4521,-4449,-4361,-4292,-4270,
+-4301,-4363,-4419,-4441,-4425,-4395,-4386,-4420,-4494,-4580,-4646,-4674,-4667,-4642,-4617,-4602,-4593,-4579,-4556,-4521,
+-4478,-4431,-4383,-4335,-4288,-4244,-4205,-4170,-4137,-4103,-4062,-4009,-3940,-3855,-3762,-3668,-3582,-3504,-3423,-3328,
+-3208,-3064,-2909,-2760,-2629,-2519,-2420,-2318,-2200,-2064,-1912,-1752,-1594,-1441,-1295,-1156,-1022,-891,-761,-627,
+-485,-334,-177,-21,121,242,336,408,468,530,603,693,796,910,1029,1149,1265,1368,1457,1532,
+1602,1676,1762,1856,1945,2013,2052,2067,2074,2084,2102,2116,2115,2099,2087,2112,2193,2324,2465,2562,
+2576,2504,2384,2268,2200,2193,2225,2262,2270,2235,2163,2076,2002,1963,1965,1997,2036,2057,2055,2045,
+2057,2110,2198,2281,2316,2284,2216,2172,2210,2341,2512,2625,2586,2350,1945,1456,990,639,449,420,
+516,677,842,961,1006,980,908,825,757,710,669,610,520,403,284,191,138,118,109,89,
+53,15,0,14,52,87,99,85,62,51,62,84,94,78,41,2,-23,-34,-45,-69,
+-106,-139,-148,-125,-83,-48,-35,-39,-38,-8,56,145,235,308,363,410,462,525,595,664,
+722,764,791,807,817,826,838,849,858,863,866,869,875,880,877,861,832,796,760,731,
+706,681,652,620,591,569,551,531,506,475,443,415,389,361,328,290,252,217,183,146,
+97,38,-24,-83,-135,-183,-237,-298,-365,-429,-483,-528,-573,-628,-700,-784,-870,-950,-1016,-1072,
+-1123,-1177,-1237,-1302,-1370,-1432,-1484,-1528,-1566,-1605,-1647,-1687,-1720,-1746,-1767,-1789,-1813,-1836,-1848,-1847,
+-1842,-1850,-1886,-1950,-2023,-2071,-2067,-2003,-1897,-1778,-1680,-1626,-1623,-1663,-1726,-1784,-1811,-1793,-1734,-1656,
+-1590,-1554,-1550,-1563,-1573,-1567,-1549,-1528,-1512,-1500,-1487,-1472,-1462,-1469,-1500,-1552,-1609,-1656,-1683,-1691,
+-1689,-1682,-1673,-1663,-1654,-1652,-1661,-1682,-1707,-1727,-1736,-1735,-1731,-1732,-1743,-1765,-1796,-1835,-1881,-1932,
+-1982,-2029,-2073,-2122,-2185,-2269,-2368,-2467,-2552,-2614,-2660,-2701,-2753,-2820,-2898,-2981,-3064,-3144,-3221,-3295,
+-3362,-3420,-3473,-3528,-3590,-3660,-3728,-3788,-3835,-3869,-3896,-3916,-3927,-3921,-3898,-3864,-3830,-3805,-3796,-3801,
+-3818,-3845,-3878,-3912,-3939,-3950,-3939,-3906,-3858,-3801,-3737,-3668,-3598,-3534,-3485,-3451,-3418,-3364,-3267,-3125,
+-2955,-2788,-2654,-2567,-2519,-2490,-2454,-2397,-2315,-2219,-2121,-2037,-1975,-1936,-1908,-1877,-1828,-1754,-1660,-1558,
+-1457,-1354,-1232,-1069,-854,-594,-318,-57,165,350,506,647,773,879,965,1052,1175,1370,1638,1944,
+2217,2396,2452,2414,2346,2320,2376,2512,2694,2884,3056,3209,3351,3491,3630,3760,3879,3986,4088,4193,
+4301,4407,4506,4597,4684,4774,4868,4965,5058,5143,5219,5291,5363,5438,5516,5598,5685,5779,5877,5977,
+6074,6168,6257,6341,6416,6475,6510,6518,6504,6481,6459,6445,6436,6425,6406,6379,6352,6330,6317,6308,
+6295,6270,6233,6185,6132,6074,6012,5946,5877,5810,5750,5701,5666,5644,5639,5655,5697,5759,5829,5890,
+5925,5925,5895,5846,5790,5733,5676,5617,5558,5505,5464,5437,5419,5401,5373,5328,5265,5188,5103,5017,
+4940,4875,4822,4883,4826,4771,4717,4670,4638,4632,4652,4691,4738,4783,4821,4854,4884,4911,4931,4940,
+4934,4912,4876,4831,4781,4734,4697,4673,4667,4681,4715,4760,4804,4826,4809,4750,4667,4590,4547,4545,
+4564,4571,4539,4463,4358,4247,4141,4035,3921,3795,3668,3561,3491,3458,3451,3449,3439,3414,3376,3327,
+3267,3192,3103,2999,2887,2772,2664,2567,2484,2412,2349,2286,2219,2143,2056,1960,1855,1744,1633,1529,
+1436,1357,1291,1234,1181,1126,1062,980,871,731,561,371,175,-12,-179,-321,-437,-529,-605,-676,
+-753,-842,-942,-1048,-1152,-1252,-1351,-1451,-1551,-1645,-1727,-1803,-1883,-1978,-2083,-2171,-2207,-2172,-2075,-1963,
+-1894,-1906,-1999,-2139,-2280,-2397,-2492,-2586,-2694,-2810,-2917,-2996,-3049,-3092,-3146,-3219,-3298,-3365,-3409,-3436,
+-3461,-3498,-3544,-3586,-3608,-3605,-3589,-3578,-3586,-3619,-3668,-3721,-3767,-3798,-3817,-3826,-3832,-3845,-3875,-3934,
+-4023,-4135,-4252,-4351,-4417,-4452,-4473,-4502,-4554,-4629,-4710,-4777,-4817,-4827,-4811,-4775,-4717,-4635,-4540,-4452,
+-4400,-4401,-4450,-4519,-4576,-4605,-4616,-4632,-4672,-4736,-4801,-4838,-4836,-4803,-4761,-4730,-4716,-4710,-4695,-4662,
+-4611,-4552,-4496,-4448,-4407,-4366,-4319,-4262,-4196,-4129,-4068,-4017,-3971,-3918,-3849,-3764,-3672,-3586,-3512,-3445,
+-3369,-3270,-3144,-3002,-2861,-2735,-2626,-2523,-2413,-2286,-2140,-1980,-1812,-1641,-1470,-1304,-1149,-1008,-880,-758,
+-631,-489,-328,-155,15,167,291,386,462,531,605,690,786,891,1003,1120,1239,1357,1466,1561,
+1639,1705,1765,1829,1898,1965,2019,2052,2062,2058,2054,2061,2079,2105,2136,2180,2253,2360,2493,2615,
+2684,2669,2573,2432,2299,2211,2180,2187,2202,2199,2174,2136,2098,2071,2057,2051,2045,2033,2018,2010,
+2027,2077,2152,2225,2258,2235,2177,2138,2178,2314,2499,2633,2604,2354,1908,1368,869,524,380,418,
+568,750,900,983,994,949,874,793,722,667,623,575,505,404,278,148,44,-13,-25,-12,
+-5,-24,-65,-103,-113,-86,-42,-10,-11,-41,-78,-97,-91,-69,-45,-24,2,42,93,138,
+160,158,147,151,180,228,272,293,292,287,296,328,372,414,441,456,469,490,522,559,
+596,625,647,663,674,687,706,733,764,793,811,818,815,807,794,773,738,690,639,596,
+568,554,544,528,505,477,450,426,403,378,352,328,306,284,255,218,175,134,99,68,
+30,-21,-85,-153,-215,-267,-312,-360,-417,-480,-545,-605,-662,-722,-791,-868,-949,-1028,-1100,-1166,
+-1226,-1283,-1339,-1395,-1455,-1519,-1581,-1638,-1683,-1718,-1747,-1775,-1802,-1827,-1846,-1862,-1881,-1904,-1929,-1944,
+-1942,-1927,-1916,-1926,-1967,-2030,-2094,-2131,-2125,-2070,-1979,-1871,-1773,-1715,-1713,-1765,-1842,-1895,-1885,-1802,
+-1675,-1557,-1494,-1496,-1539,-1579,-1587,-1563,-1527,-1503,-1499,-1506,-1506,-1494,-1474,-1463,-1469,-1491,-1518,-1539,
+-1551,-1554,-1556,-1559,-1567,-1577,-1591,-1607,-1623,-1637,-1647,-1655,-1662,-1671,-1681,-1692,-1703,-1719,-1747,-1792,
+-1851,-1915,-1973,-2023,-2073,-2137,-2223,-2327,-2432,-2517,-2573,-2607,-2640,-2691,-2767,-2860,-2956,-3042,-3115,-3180,
+-3246,-3315,-3387,-3458,-3526,-3587,-3641,-3686,-3724,-3759,-3796,-3831,-3858,-3865,-3847,-3810,-3770,-3745,-3742,-3755,
+-3773,-3787,-3797,-3808,-3825,-3844,-3855,-3850,-3825,-3784,-3730,-3668,-3599,-3531,-3476,-3443,-3429,-3414,-3372,-3280,
+-3141,-2980,-2830,-2718,-2649,-2601,-2546,-2463,-2345,-2206,-2069,-1953,-1873,-1833,-1823,-1826,-1819,-1787,-1724,-1638,
+-1543,-1449,-1349,-1221,-1043,-808,-533,-255,-8,187,340,470,595,714,819,905,988,1105,1289,1546,
+1841,2113,2305,2393,2398,2372,2372,2431,2552,2717,2902,3088,3266,3428,3570,3690,3791,3882,3973,4071,
+4174,4274,4363,4442,4518,4599,4693,4797,4903,5002,5090,5169,5243,5317,5393,5473,5558,5650,5749,5853,
+5957,6056,6152,6247,6340,6427,6499,6544,6559,6549,6525,6501,6483,6468,6448,6420,6385,6350,6323,6308,
+6303,6299,6288,6262,6220,6165,6104,6042,5981,5922,5864,5808,5752,5701,5661,5637,5636,5660,5704,5756,
+5802,5828,5827,5803,5761,5713,5662,5610,5556,5502,5453,5413,5383,5361,5342,5321,5295,5260,5214,5156,
+5088,5016,4946,4883,4899,4835,4776,4725,4686,4665,4666,4687,4722,4764,4808,4851,4891,4922,4941,4942,
+4928,4906,4879,4848,4808,4758,4704,4655,4625,4622,4645,4690,4747,4798,4826,4812,4756,4673,4598,4561,
+4570,4605,4630,4613,4547,4449,4347,4256,4176,4097,4011,3923,3839,3766,3698,3627,3550,3473,3404,3351,
+3309,3266,3210,3134,3041,2939,2834,2733,2640,2561,2499,2454,2419,2382,2334,2267,2178,2069,1948,1821,
+1695,1573,1459,1354,1262,1180,1106,1029,936,815,663,485,298,118,-45,-187,-311,-420,-517,-604,
+-685,-767,-853,-946,-1043,-1145,-1250,-1362,-1478,-1588,-1683,-1755,-1811,-1868,-1943,-2036,-2127,-2183,-2181,-2126,
+-2056,-2018,-2047,-2141,-2270,-2395,-2496,-2578,-2661,-2762,-2877,-2989,-3079,-3143,-3192,-3244,-3305,-3370,-3429,-3474,
+-3508,-3541,-3581,-3624,-3663,-3689,-3703,-3714,-3733,-3766,-3811,-3860,-3905,-3943,-3974,-3998,-4015,-4021,-4021,-4023,
+-4042,-4092,-4177,-4287,-4399,-4494,-4566,-4626,-4698,-4796,-4914,-5025,-5097,-5111,-5075,-5015,-4955,-4903,-4847,-4773,
+-4679,-4586,-4522,-4508,-4542,-4603,-4674,-4744,-4817,-4894,-4966,-5012,-5015,-4975,-4910,-4849,-4814,-4806,-4807,-4797,
+-4762,-4705,-4637,-4575,-4527,-4491,-4456,-4408,-4336,-4243,-4139,-4046,-3976,-3929,-3891,-3840,-3766,-3676,-3586,-3512,
+-3455,-3400,-3329,-3230,-3108,-2977,-2850,-2728,-2604,-2469,-2319,-2157,-1989,-1820,-1650,-1480,-1312,-1153,-1011,-885,
+-764,-633,-480,-305,-121,51,195,306,395,477,567,668,778,887,991,1093,1198,1309,1424,1537,
+1637,1718,1780,1826,1864,1902,1941,1979,2010,2030,2043,2059,2088,2134,2197,2269,2349,2438,2541,2649,
+2737,2771,2728,2612,2458,2317,2226,2194,2200,2212,2206,2181,2149,2121,2100,2081,2055,2024,1996,1988,
+2012,2070,2144,2207,2228,2194,2128,2080,2112,2248,2452,2622,2638,2421,1981,1421,894,535,406,483,
+678,886,1028,1076,1041,958,864,777,702,633,566,501,440,378,304,207,87,-33,-124,-160,
+-147,-113,-98,-119,-161,-190,-182,-140,-93,-76,-98,-140,-174,-179,-160,-136,-121,-112,-97,-70,
+-37,-12,-5,-6,1,32,82,135,172,190,200,216,247,286,325,360,392,426,464,501,
+532,554,571,584,595,605,614,628,650,677,701,710,701,680,656,637,620,599,568,532,
+500,479,468,457,439,410,374,338,304,272,239,209,183,163,146,123,89,48,8,-27,
+-58,-95,-143,-206,-274,-340,-399,-454,-511,-573,-637,-701,-762,-824,-892,-966,-1041,-1111,-1175,-1235,
+-1299,-1367,-1437,-1501,-1558,-1610,-1663,-1717,-1768,-1811,-1844,-1873,-1901,-1930,-1953,-1967,-1970,-1973,-1982,-2001,
+-2021,-2030,-2025,-2013,-2009,-2024,-2059,-2104,-2146,-2174,-2176,-2142,-2071,-1975,-1884,-1835,-1848,-1906,-1960,-1953,
+-1862,-1713,-1569,-1490,-1497,-1558,-1618,-1634,-1600,-1546,-1506,-1497,-1507,-1509,-1487,-1442,-1396,-1367,-1367,-1390,
+-1423,-1453,-1477,-1494,-1510,-1527,-1546,-1564,-1578,-1585,-1586,-1586,-1590,-1602,-1619,-1635,-1643,-1646,-1653,-1678,
+-1729,-1802,-1883,-1955,-2014,-2067,-2133,-2221,-2326,-2428,-2505,-2546,-2564,-2585,-2633,-2715,-2816,-2913,-2987,-3036,
+-3073,-3116,-3178,-3260,-3353,-3445,-3526,-3588,-3633,-3666,-3697,-3732,-3770,-3800,-3805,-3782,-3739,-3698,-3680,-3689,
+-3717,-3744,-3759,-3761,-3762,-3766,-3773,-3772,-3754,-3719,-3670,-3614,-3551,-3486,-3424,-3376,-3348,-3334,-3312,-3259,
+-3160,-3028,-2894,-2789,-2725,-2687,-2641,-2558,-2427,-2262,-2090,-1941,-1832,-1767,-1740,-1736,-1739,-1730,-1700,-1647,
+-1578,-1505,-1428,-1337,-1209,-1026,-787,-518,-260,-47,111,234,350,478,614,739,840,926,1027,1178,
+1391,1645,1898,2109,2258,2355,2424,2493,2578,2687,2824,2988,3175,3367,3541,3675,3763,3817,3863,3922,
+4004,4099,4193,4276,4350,4426,4515,4619,4732,4842,4941,5030,5111,5190,5268,5345,5423,5507,5601,5707,
+5819,5929,6032,6126,6219,6315,6411,6497,6559,6591,6593,6576,6549,6522,6493,6461,6424,6385,6348,6320,
+6303,6295,6292,6285,6265,6230,6179,6120,6061,6007,5958,5909,5854,5791,5726,5667,5622,5597,5592,5602,
+5620,5637,5645,5640,5624,5601,5576,5552,5528,5503,5477,5452,5426,5398,5366,5329,5289,5251,5217,5184,
+5146,5097,5036,4968,4899,4900,4841,4787,4744,4718,4711,4724,4750,4781,4814,4848,4888,4928,4958,4962,
+4936,4887,4837,4799,4777,4760,4735,4702,4669,4650,4654,4680,4722,4770,4813,4839,4832,4787,4715,4643,
+4601,4599,4623,4638,4614,4546,4453,4362,4289,4234,4187,4140,4092,4040,3977,3890,3771,3629,3489,3377,
+3304,3261,3228,3182,3117,3035,2947,2859,2776,2698,2628,2570,2525,2490,2454,2408,2346,2265,2166,2054,
+1934,1811,1688,1566,1446,1329,1217,1110,1001,882,746,592,426,261,109,-26,-147,-262,-374,-486,
+-596,-701,-800,-891,-974,-1051,-1128,-1216,-1319,-1435,-1552,-1652,-1726,-1778,-1825,-1886,-1966,-2051,-2117,-2146,
+-2140,-2123,-2128,-2177,-2268,-2381,-2492,-2585,-2664,-2745,-2839,-2945,-3054,-3152,-3231,-3294,-3347,-3397,-3446,-3493,
+-3539,-3585,-3632,-3678,-3718,-3751,-3778,-3803,-3833,-3871,-3913,-3957,-4000,-4044,-4091,-4144,-4199,-4246,-4274,-4281,
+-4270,-4260,-4271,-4320,-4407,-4517,-4628,-4725,-4812,-4903,-5012,-5135,-5244,-5305,-5301,-5243,-5170,-5119,-5102,-5098,
+-5072,-4998,-4883,-4760,-4667,-4629,-4648,-4711,-4803,-4912,-5022,-5113,-5162,-5154,-5095,-5009,-4930,-4879,-4858,-4851,
+-4839,-4810,-4763,-4707,-4652,-4605,-4567,-4529,-4478,-4399,-4292,-4170,-4055,-3972,-3924,-3895,-3858,-3794,-3704,-3608,
+-3529,-3473,-3428,-3372,-3287,-3173,-3043,-2909,-2774,-2632,-2476,-2306,-2130,-1959,-1798,-1644,-1491,-1337,-1186,-1043,
+-908,-773,-624,-453,-264,-78,82,204,292,368,457,570,702,836,954,1051,1136,1222,1319,1428,
+1540,1645,1733,1798,1840,1864,1879,1897,1923,1959,2000,2042,2088,2144,2216,2304,2400,2496,2588,2677,
+2759,2818,2826,2762,2633,2475,2341,2272,2272,2309,2338,2328,2274,2198,2126,2071,2034,2008,1990,1987,
+2007,2052,2111,2165,2191,2177,2135,2102,2129,2242,2422,2588,2630,2462,2072,1545,1029,666,534,614,
+816,1026,1160,1187,1125,1019,909,817,740,659,562,450,344,265,221,190,137,35,-101,-228,
+-295,-280,-216,-159,-155,-205,-268,-294,-264,-205,-160,-157,-187,-219,-226,-208,-189,-193,-220,-252,
+-266,-256,-233,-213,-200,-186,-157,-114,-67,-27,-1,20,48,85,131,179,228,282,342,400,
+447,478,495,507,520,533,539,538,534,535,543,550,547,527,498,474,466,471,478,476,
+462,442,421,400,374,339,296,251,212,179,146,110,73,40,15,-2,-21,-49,-84,-123,
+-158,-190,-226,-272,-330,-396,-465,-534,-606,-680,-754,-822,-881,-935,-991,-1057,-1130,-1203,-1267,-1322,
+-1376,-1437,-1509,-1584,-1651,-1705,-1750,-1792,-1837,-1882,-1921,-1954,-1986,-2022,-2061,-2093,-2107,-2101,-2087,-2078,
+-2084,-2099,-2112,-2117,-2113,-2110,-2110,-2116,-2126,-2143,-2170,-2206,-2233,-2226,-2170,-2080,-1995,-1954,-1964,-1990,
+-1979,-1897,-1761,-1627,-1555,-1565,-1629,-1687,-1695,-1650,-1584,-1535,-1518,-1520,-1511,-1471,-1404,-1333,-1287,-1277,
+-1303,-1347,-1393,-1429,-1453,-1470,-1485,-1501,-1516,-1526,-1529,-1526,-1524,-1531,-1547,-1567,-1583,-1587,-1586,-1593,
+-1626,-1692,-1782,-1878,-1961,-2026,-2084,-2152,-2242,-2346,-2443,-2509,-2537,-2542,-2554,-2598,-2678,-2772,-2853,-2900,
+-2917,-2923,-2946,-3001,-3088,-3196,-3308,-3410,-3495,-3558,-3605,-3643,-3681,-3718,-3746,-3753,-3733,-3692,-3650,-3627,
+-3631,-3653,-3676,-3692,-3699,-3705,-3713,-3717,-3704,-3670,-3617,-3558,-3499,-3445,-3393,-3343,-3298,-3261,-3223,-3168,
+-3082,-2965,-2841,-2742,-2689,-2675,-2667,-2625,-2523,-2369,-2192,-2029,-1903,-1821,-1773,-1746,-1725,-1702,-1672,-1632,
+-1583,-1530,-1477,-1418,-1341,-1223,-1051,-830,-586,-357,-172,-33,81,201,343,500,647,766,861,957,
+1083,1254,1461,1682,1894,2091,2272,2442,2594,2726,2843,2963,3107,3283,3473,3642,3756,3806,3812,3814,
+3843,3910,4003,4101,4192,4276,4364,4462,4571,4681,4784,4879,4968,5057,5147,5233,5313,5388,5468,5562,
+5674,5794,5911,6015,6106,6193,6286,6385,6482,6561,6611,6631,6625,6602,6570,6531,6486,6439,6394,6353,
+6320,6294,6277,6266,6257,6241,6214,6172,6120,6068,6020,5976,5930,5875,5811,5744,5684,5635,5595,5561,
+5526,5488,5451,5416,5388,5369,5361,5362,5368,5376,5381,5383,5384,5380,5368,5341,5298,5243,5189,5144,
+5111,5084,5053,5012,4959,4900,4910,4871,4831,4798,4781,4787,4814,4847,4874,4891,4907,4934,4974,5012,
+5021,4987,4920,4850,4805,4795,4805,4812,4806,4789,4776,4775,4786,4803,4823,4842,4855,4851,4819,4760,
+4692,4641,4620,4619,4610,4571,4497,4408,4329,4271,4231,4198,4165,4132,4098,4046,3959,3825,3657,3487,
+3350,3262,3211,3173,3127,3064,2990,2914,2840,2769,2699,2631,2568,2511,2460,2409,2357,2299,2230,2148,
+2053,1948,1840,1732,1625,1513,1392,1264,1130,994,859,721,582,442,307,180,60,-56,-174,-296,
+-423,-552,-682,-805,-913,-1001,-1069,-1129,-1196,-1282,-1386,-1496,-1596,-1674,-1734,-1787,-1845,-1912,-1980,-2039,
+-2084,-2120,-2159,-2211,-2283,-2371,-2467,-2565,-2658,-2747,-2833,-2918,-3006,-3097,-3192,-3285,-3370,-3443,-3504,-3558,
+-3612,-3671,-3732,-3790,-3835,-3866,-3886,-3905,-3930,-3961,-3995,-4027,-4059,-4097,-4147,-4212,-4288,-4365,-4432,-4480,
+-4505,-4510,-4505,-4508,-4538,-4604,-4703,-4815,-4922,-5013,-5093,-5174,-5261,-5340,-5388,-5389,-5354,-5313,-5299,-5325,
+-5368,-5386,-5345,-5240,-5097,-4959,-4860,-4816,-4825,-4879,-4964,-5067,-5163,-5224,-5233,-5188,-5107,-5018,-4941,-4884,
+-4845,-4815,-4789,-4763,-4736,-4703,-4664,-4619,-4567,-4505,-4424,-4318,-4197,-4083,-3999,-3954,-3933,-3908,-3854,-3769,
+-3672,-3588,-3528,-3480,-3420,-3328,-3205,-3065,-2921,-2780,-2634,-2474,-2301,-2124,-1956,-1805,-1665,-1527,-1383,-1231,
+-1075,-920,-761,-591,-407,-218,-44,95,192,260,328,422,554,708,857,981,1073,1145,1218,1303,
+1401,1507,1610,1702,1776,1827,1856,1870,1885,1914,1964,2027,2090,2150,2212,2287,2383,2493,2604,2704,
+2788,2854,2892,2882,2806,2673,2520,2403,2364,2400,2470,2511,2483,2385,2251,2127,2042,2005,2003,2020,
+2042,2061,2076,2086,2092,2099,2116,2156,2233,2352,2494,2606,2613,2448,2097,1623,1151,814,692,773,
+967,1158,1262,1255,1168,1050,942,858,789,715,615,483,333,198,109,76,70,42,-48,-195,
+-342,-421,-396,-301,-212,-197,-269,-376,-444,-434,-365,-294,-269,-293,-330,-342,-321,-290,-280,-300,
+-332,-346,-329,-291,-251,-224,-205,-183,-151,-114,-81,-56,-32,-5,27,62,94,125,163,209,
+255,291,310,320,332,352,375,390,391,383,378,382,391,393,380,359,343,342,355,369,
+372,359,336,310,280,244,201,154,112,82,61,39,9,-29,-69,-103,-130,-154,-183,-219,
+-258,-297,-333,-373,-420,-476,-537,-602,-671,-746,-826,-905,-974,-1030,-1077,-1128,-1191,-1265,-1341,-1409,
+-1466,-1521,-1581,-1650,-1721,-1783,-1832,-1874,-1916,-1962,-2007,-2044,-2074,-2104,-2141,-2185,-2222,-2239,-2233,-2213,
+-2196,-2190,-2192,-2193,-2189,-2184,-2185,-2190,-2190,-2179,-2166,-2172,-2212,-2274,-2323,-2316,-2245,-2136,-2039,-1984,
+-1963,-1935,-1869,-1769,-1677,-1637,-1663,-1724,-1770,-1764,-1707,-1635,-1580,-1555,-1543,-1516,-1460,-1382,-1306,-1257,
+-1244,-1262,-1293,-1323,-1342,-1350,-1355,-1366,-1386,-1412,-1436,-1453,-1463,-1472,-1485,-1503,-1519,-1526,-1524,-1524,
+-1544,-1597,-1685,-1793,-1899,-1987,-2055,-2115,-2185,-2273,-2373,-2463,-2522,-2546,-2549,-2560,-2599,-2665,-2738,-2790,
+-2808,-2801,-2794,-2813,-2869,-2957,-3061,-3170,-3274,-3371,-3454,-3522,-3574,-3616,-3652,-3681,-3695,-3687,-3660,-3624,
+-3595,-3581,-3581,-3587,-3596,-3609,-3630,-3655,-3669,-3659,-3617,-3555,-3489,-3434,-3392,-3357,-3321,-3280,-3233,-3170,
+-3084,-2971,-2843,-2727,-2652,-2625,-2627,-2618,-2563,-2451,-2301,-2147,-2020,-1934,-1881,-1845,-1811,-1771,-1726,-1677,
+-1625,-1572,-1518,-1462,-1401,-1327,-1226,-1088,-914,-720,-529,-358,-212,-74,71,232,398,549,673,776,
+881,1009,1169,1351,1542,1734,1933,2146,2367,2578,2759,2905,3036,3179,3347,3526,3678,3769,3794,3776,
+3759,3777,3840,3936,4042,4144,4241,4338,4440,4543,4642,4734,4824,4918,5019,5122,5219,5303,5376,5451,
+5542,5655,5779,5901,6006,6095,6178,6268,6368,6468,6554,6615,6646,6653,6642,6615,6574,6522,6465,6409,
+6357,6310,6271,6241,6223,6213,6206,6190,6160,6118,6070,6023,5979,5931,5878,5822,5770,5728,5692,5650,
+5590,5506,5404,5299,5207,5142,5107,5100,5112,5130,5146,5153,5156,5161,5172,5186,5192,5181,5150,5110,
+5070,5039,5017,4997,4974,4945,4910,4907,4898,4881,4863,4856,4872,4910,4951,4973,4970,4961,4974,5021,
+5083,5121,5105,5038,4959,4910,4911,4946,4983,4993,4975,4942,4908,4879,4852,4829,4815,4811,4809,4792,
+4752,4698,4652,4626,4614,4593,4545,4472,4393,4331,4291,4261,4227,4184,4141,4100,4049,3968,3840,3676,
+3503,3354,3243,3165,3102,3039,2972,2905,2839,2771,2701,2628,2557,2490,2427,2366,2304,2244,2184,2118,
+2037,1940,1832,1725,1630,1545,1460,1361,1244,1115,985,862,747,634,519,400,276,149,20,-106,
+-230,-352,-477,-606,-737,-860,-965,-1048,-1118,-1190,-1274,-1371,-1470,-1558,-1632,-1698,-1765,-1833,-1897,-1951,
+-1997,-2047,-2110,-2192,-2283,-2372,-2452,-2529,-2613,-2710,-2812,-2909,-2991,-3062,-3136,-3226,-3332,-3444,-3546,-3631,
+-3702,-3769,-3836,-3899,-3946,-3973,-3982,-3986,-3997,-4018,-4043,-4068,-4093,-4128,-4184,-4261,-4351,-4438,-4512,-4574,
+-4628,-4679,-4725,-4760,-4786,-4814,-4862,-4940,-5041,-5143,-5225,-5279,-5312,-5341,-5373,-5405,-5428,-5440,-5451,-5477,
+-5523,-5574,-5600,-5575,-5492,-5369,-5236,-5120,-5036,-4987,-4974,-4997,-5053,-5127,-5194,-5229,-5220,-5168,-5087,-4993,
+-4900,-4821,-4764,-4735,-4730,-4735,-4732,-4705,-4654,-4586,-4509,-4423,-4323,-4215,-4112,-4036,-3995,-3980,-3961,-3915,
+-3837,-3745,-3663,-3601,-3548,-3478,-3373,-3233,-3077,-2924,-2780,-2639,-2488,-2323,-2151,-1985,-1834,-1696,-1559,-1413,
+-1251,-1079,-902,-725,-546,-366,-191,-35,86,171,235,306,409,550,713,869,997,1092,1167,1239,
+1316,1400,1486,1573,1660,1745,1817,1870,1907,1942,1992,2062,2142,2214,2269,2316,2380,2477,2602,2732,
+2839,2912,2950,2957,2927,2850,2733,2604,2511,2488,2533,2601,2631,2585,2466,2313,2179,2097,2072,2086,
+2112,2126,2117,2088,2058,2052,2092,2187,2322,2467,2583,2626,2558,2354,2017,1598,1188,898,799,888,
+1086,1274,1363,1326,1205,1064,950,872,809,736,640,518,377,233,107,22,-15,-26,-56,-146,
+-293,-445,-529,-506,-404,-307,-294,-382,-514,-605,-600,-518,-425,-385,-412,-466,-495,-478,-433,-396,
+-386,-391,-386,-357,-312,-272,-250,-238,-223,-195,-158,-122,-93,-67,-39,-10,11,24,30,40,
+59,84,103,111,115,127,154,189,217,230,232,235,248,267,280,278,266,253,250,254,
+254,242,218,189,162,135,105,66,24,-10,-32,-44,-58,-82,-119,-162,-203,-240,-274,-312,
+-353,-396,-439,-482,-528,-581,-640,-699,-756,-813,-875,-944,-1015,-1083,-1141,-1191,-1244,-1306,-1380,-1457,
+-1528,-1591,-1649,-1709,-1773,-1837,-1892,-1939,-1984,-2033,-2087,-2138,-2177,-2204,-2227,-2256,-2293,-2326,-2344,-2341,
+-2328,-2316,-2309,-2299,-2279,-2251,-2230,-2232,-2253,-2270,-2265,-2240,-2225,-2251,-2320,-2394,-2418,-2360,-2233,-2088,
+-1971,-1896,-1843,-1787,-1726,-1686,-1692,-1746,-1813,-1848,-1824,-1754,-1672,-1609,-1572,-1542,-1500,-1437,-1365,-1304,
+-1266,-1251,-1248,-1243,-1228,-1205,-1185,-1179,-1198,-1241,-1297,-1353,-1397,-1427,-1449,-1466,-1477,-1479,-1471,-1463,
+-1472,-1515,-1597,-1710,-1831,-1940,-2027,-2095,-2157,-2228,-2313,-2403,-2484,-2538,-2563,-2571,-2582,-2612,-2659,-2704,
+-2729,-2729,-2717,-2719,-2752,-2818,-2902,-2988,-3072,-3159,-3251,-3346,-3431,-3495,-3538,-3569,-3596,-3621,-3635,-3633,
+-3616,-3593,-3572,-3555,-3542,-3537,-3546,-3571,-3606,-3632,-3630,-3594,-3534,-3469,-3416,-3380,-3354,-3328,-3296,-3251,
+-3187,-3098,-2985,-2864,-2757,-2684,-2644,-2617,-2573,-2493,-2380,-2255,-2142,-2055,-1994,-1949,-1906,-1860,-1810,-1758,
+-1704,-1646,-1580,-1506,-1424,-1340,-1257,-1174,-1084,-979,-853,-708,-548,-379,-203,-23,155,319,458,571,
+673,788,933,1108,1294,1475,1645,1817,2009,2223,2446,2654,2835,2995,3153,3317,3478,3608,3685,3708,
+3702,3701,3731,3799,3894,4000,4106,4209,4311,4412,4510,4601,4690,4781,4881,4991,5103,5207,5295,5369,
+5442,5529,5637,5760,5881,5989,6081,6167,6258,6357,6456,6541,6601,6636,6652,6652,6637,6604,6554,6492,
+6425,6360,6298,6244,6202,6178,6172,6174,6172,6153,6118,6073,6026,5979,5931,5880,5832,5793,5764,5738,
+5694,5615,5498,5355,5209,5084,4996,4948,4935,4943,4955,4955,4940,4916,4901,4908,4939,4984,5024,5044,
+5042,5024,4997,4969,4943,4925,4914,4907,4863,4888,4908,4918,4930,4959,5005,5044,5053,5026,4992,4996,
+5058,5152,5221,5213,5128,5016,4942,4941,4998,5061,5087,5062,5002,4931,4862,4798,4744,4707,4695,4700,
+4704,4692,4666,4641,4629,4624,4606,4561,4494,4429,4387,4368,4351,4317,4264,4203,4145,4084,3999,3875,
+3714,3539,3376,3236,3120,3023,2941,2874,2818,2763,2697,2621,2542,2473,2414,2357,2290,2211,2126,2039,
+1948,1845,1727,1603,1494,1413,1356,1304,1237,1148,1045,944,853,771,684,585,468,335,195,55,
+-75,-190,-293,-392,-498,-617,-742,-860,-965,-1061,-1157,-1260,-1364,-1457,-1533,-1597,-1665,-1745,-1832,-1911,
+-1969,-2014,-2065,-2140,-2240,-2347,-2439,-2509,-2569,-2643,-2742,-2857,-2967,-3057,-3131,-3206,-3301,-3419,-3545,-3658,
+-3750,-3824,-3888,-3945,-3990,-4013,-4016,-4009,-4010,-4023,-4045,-4067,-4089,-4122,-4185,-4284,-4403,-4515,-4599,-4654,
+-4701,-4764,-4852,-4950,-5031,-5075,-5090,-5102,-5142,-5217,-5309,-5388,-5429,-5433,-5422,-5420,-5443,-5486,-5538,-5587,
+-5629,-5664,-5688,-5691,-5659,-5590,-5494,-5388,-5287,-5198,-5123,-5067,-5037,-5042,-5079,-5133,-5179,-5196,-5172,-5109,
+-5016,-4910,-4809,-4735,-4702,-4709,-4736,-4756,-4745,-4697,-4622,-4535,-4444,-4348,-4248,-4154,-4080,-4035,-4012,-3988,
+-3941,-3868,-3781,-3704,-3644,-3591,-3518,-3409,-3263,-3099,-2939,-2791,-2649,-2500,-2334,-2157,-1982,-1820,-1673,-1533,
+-1387,-1228,-1056,-877,-699,-523,-352,-191,-47,68,158,234,319,433,579,741,895,1024,1126,1211,
+1287,1359,1423,1482,1545,1624,1720,1820,1910,1982,2044,2115,2200,2289,2360,2408,2447,2511,2619,2762,
+2899,2989,3014,2990,2943,2891,2836,2768,2695,2638,2620,2643,2679,2686,2637,2538,2418,2312,2242,2209,
+2199,2198,2195,2186,2176,2180,2218,2302,2416,2521,2565,2507,2333,2061,1728,1385,1088,894,844,941,
+1130,1320,1421,1394,1269,1112,985,903,840,759,644,508,374,256,151,55,-25,-80,-113,-151,
+-229,-360,-508,-611,-622,-553,-470,-451,-523,-641,-723,-714,-622,-515,-462,-485,-547,-591,-587,-546,
+-504,-485,-483,-479,-459,-431,-412,-408,-409,-395,-359,-310,-263,-228,-200,-170,-137,-109,-93,-86,
+-77,-59,-34,-14,-5,-1,8,33,68,97,114,119,124,137,154,165,163,151,140,137,
+139,135,119,94,68,46,27,1,-34,-75,-112,-138,-157,-175,-201,-237,-277,-318,-356,-395,
+-438,-483,-529,-573,-619,-671,-730,-795,-857,-913,-963,-1012,-1066,-1127,-1191,-1253,-1311,-1369,-1430,-1497,
+-1565,-1629,-1690,-1748,-1808,-1871,-1932,-1986,-2034,-2081,-2135,-2195,-2251,-2294,-2321,-2342,-2366,-2396,-2422,-2435,
+-2433,-2426,-2423,-2422,-2410,-2375,-2325,-2286,-2282,-2313,-2352,-2365,-2345,-2322,-2334,-2394,-2468,-2498,-2438,-2295,
+-2118,-1962,-1854,-1785,-1735,-1701,-1697,-1736,-1806,-1870,-1886,-1840,-1751,-1656,-1582,-1532,-1491,-1441,-1383,-1327,
+-1288,-1265,-1249,-1225,-1183,-1127,-1070,-1033,-1032,-1075,-1151,-1241,-1323,-1385,-1427,-1453,-1467,-1469,-1455,-1434,
+-1424,-1447,-1516,-1627,-1756,-1880,-1983,-2065,-2135,-2205,-2281,-2361,-2439,-2505,-2552,-2577,-2588,-2597,-2615,-2641,
+-2666,-2679,-2678,-2679,-2701,-2754,-2829,-2907,-2974,-3035,-3105,-3194,-3296,-3391,-3458,-3492,-3507,-3524,-3550,-3582,
+-3608,-3621,-3621,-3613,-3597,-3577,-3556,-3545,-3550,-3569,-3589,-3591,-3564,-3514,-3457,-3407,-3369,-3341,-3317,-3291,
+-3258,-3209,-3138,-3044,-2939,-2839,-2756,-2686,-2617,-2537,-2446,-2352,-2267,-2194,-2129,-2062,-1992,-1922,-1858,-1802,
+-1750,-1698,-1636,-1562,-1473,-1373,-1271,-1179,-1107,-1053,-1003,-933,-826,-676,-492,-291,-90,96,258,389,
+494,592,707,857,1043,1246,1440,1613,1770,1929,2106,2303,2506,2702,2883,3049,3201,3333,3436,3506,
+3548,3580,3619,3676,3753,3844,3943,4047,4152,4258,4361,4460,4555,4650,4748,4852,4963,5075,5181,5275,
+5357,5434,5520,5622,5740,5859,5969,6066,6157,6252,6352,6449,6528,6583,6614,6630,6637,6632,6610,6569,
+6513,6446,6376,6306,6241,6188,6156,6145,6148,6149,6136,6106,6067,6026,5986,5943,5894,5842,5796,5758,
+5720,5666,5582,5465,5330,5196,5083,5000,4950,4927,4920,4913,4893,4854,4805,4765,4756,4785,4842,4909,
+4963,4993,4995,4971,4930,4886,4854,4847,4863,4797,4855,4920,4975,5024,5073,5120,5144,5126,5070,5019,
+5026,5111,5232,5305,5264,5109,4912,4771,4739,4798,4881,4923,4903,4840,4767,4703,4648,4603,4575,4572,
+4593,4620,4634,4634,4628,4628,4630,4616,4575,4515,4462,4433,4425,4415,4381,4322,4252,4182,4108,4011,
+3877,3711,3532,3364,3214,3086,2979,2899,2844,2803,2753,2681,2593,2512,2454,2414,2366,2285,2167,2028,
+1889,1758,1631,1505,1388,1300,1251,1231,1210,1163,1086,994,908,837,771,696,601,485,357,223,
+90,-32,-142,-236,-325,-420,-529,-651,-772,-886,-994,-1103,-1219,-1333,-1432,-1507,-1568,-1634,-1721,-1824,
+-1923,-2001,-2060,-2116,-2191,-2287,-2388,-2474,-2539,-2598,-2673,-2775,-2896,-3013,-3114,-3203,-3296,-3406,-3529,-3648,
+-3746,-3822,-3883,-3937,-3985,-4018,-4032,-4034,-4038,-4055,-4080,-4100,-4110,-4124,-4171,-4269,-4410,-4557,-4668,-4728,
+-4756,-4796,-4883,-5013,-5148,-5239,-5259,-5223,-5175,-5163,-5207,-5293,-5383,-5444,-5468,-5471,-5483,-5524,-5593,-5671,
+-5737,-5780,-5801,-5805,-5792,-5758,-5697,-5612,-5518,-5427,-5347,-5278,-5219,-5173,-5147,-5148,-5168,-5191,-5196,-5169,
+-5107,-5019,-4919,-4823,-4751,-4718,-4724,-4756,-4787,-4790,-4756,-4689,-4606,-4516,-4423,-4328,-4234,-4152,-4091,-4047,
+-4006,-3950,-3874,-3790,-3714,-3654,-3599,-3528,-3424,-3285,-3125,-2964,-2808,-2653,-2488,-2304,-2108,-1914,-1737,-1584,
+-1449,-1321,-1185,-1035,-872,-701,-528,-357,-195,-51,68,166,255,354,479,628,787,936,1061,1163,
+1251,1330,1397,1448,1489,1536,1612,1721,1848,1968,2062,2134,2203,2280,2361,2433,2490,2550,2640,2773,
+2924,3042,3078,3023,2916,2814,2759,2752,2765,2772,2764,2752,2748,2749,2737,2700,2636,2555,2470,2390,
+2322,2274,2258,2280,2334,2402,2470,2524,2553,2533,2432,2224,1911,1542,1188,917,768,743,820,966,
+1143,1303,1395,1389,1292,1150,1020,932,871,797,678,521,363,239,154,83,0,-93,-176,-227,
+-255,-297,-389,-526,-659,-727,-708,-642,-596,-617,-693,-762,-765,-696,-601,-541,-547,-594,-636,-639,
+-611,-582,-574,-584,-592,-587,-573,-566,-570,-571,-551,-505,-448,-400,-371,-353,-331,-299,-264,-235,
+-213,-191,-161,-125,-96,-81,-77,-70,-53,-28,-6,4,6,7,13,21,23,15,2,-3,
+0,9,15,9,-4,-23,-43,-66,-97,-138,-183,-224,-257,-285,-312,-344,-379,-414,-447,-481,
+-519,-562,-608,-654,-700,-747,-800,-861,-928,-995,-1057,-1110,-1158,-1205,-1258,-1316,-1378,-1439,-1497,-1553,
+-1609,-1665,-1720,-1776,-1833,-1894,-1958,-2021,-2077,-2127,-2175,-2227,-2284,-2340,-2386,-2420,-2447,-2475,-2505,-2529,
+-2537,-2531,-2521,-2519,-2522,-2513,-2477,-2421,-2372,-2359,-2387,-2430,-2450,-2437,-2416,-2426,-2480,-2547,-2566,-2492,
+-2334,-2145,-1983,-1879,-1821,-1785,-1761,-1759,-1789,-1836,-1868,-1849,-1774,-1667,-1566,-1493,-1445,-1403,-1355,-1302,
+-1256,-1227,-1210,-1192,-1156,-1098,-1027,-964,-936,-957,-1028,-1129,-1233,-1317,-1375,-1413,-1442,-1461,-1464,-1447,
+-1421,-1414,-1454,-1548,-1679,-1815,-1930,-2018,-2092,-2167,-2248,-2332,-2410,-2475,-2527,-2566,-2590,-2602,-2608,-2615,
+-2629,-2649,-2667,-2682,-2703,-2742,-2805,-2882,-2956,-3017,-3074,-3143,-3238,-3348,-3443,-3498,-3509,-3496,-3489,-3504,
+-3541,-3584,-3622,-3649,-3662,-3662,-3644,-3611,-3572,-3541,-3525,-3521,-3516,-3498,-3467,-3427,-3385,-3344,-3307,-3274,
+-3246,-3216,-3175,-3114,-3031,-2935,-2840,-2752,-2670,-2586,-2502,-2426,-2366,-2320,-2273,-2208,-2118,-2015,-1918,-1842,
+-1783,-1732,-1677,-1616,-1548,-1473,-1389,-1297,-1206,-1129,-1072,-1025,-962,-862,-716,-538,-347,-161,13,175,
+321,449,563,678,816,991,1198,1415,1616,1788,1935,2077,2230,2402,2583,2761,2919,3049,3148,3224,
+3290,3357,3432,3516,3602,3688,3777,3873,3978,4089,4200,4307,4411,4516,4622,4728,4833,4937,5042,5148,
+5251,5345,5432,5521,5622,5736,5855,5966,6064,6156,6251,6350,6445,6520,6567,6589,6598,6602,6600,6588,
+6560,6517,6462,6401,6335,6267,6206,6161,6134,6120,6107,6086,6058,6030,6008,5988,5960,5914,5852,5785,
+5722,5664,5602,5526,5436,5339,5245,5162,5091,5033,4985,4945,4908,4863,4809,4751,4705,4687,4704,4749,
+4807,4863,4905,4926,4918,4881,4827,4781,4768,4797,4740,4816,4920,5027,5122,5200,5249,5253,5205,5127,
+5073,5099,5212,5347,5398,5291,5036,4734,4506,4420,4453,4525,4561,4542,4495,4459,4450,4455,4462,4471,
+4495,4536,4581,4611,4618,4611,4605,4601,4585,4550,4499,4453,4424,4406,4378,4324,4251,4174,4104,4028,
+3926,3787,3623,3460,3318,3199,3101,3020,2961,2920,2879,2813,2717,2610,2527,2487,2470,2429,2328,2162,
+1965,1780,1626,1500,1394,1309,1262,1257,1275,1281,1245,1166,1066,969,884,800,703,589,467,347,
+232,120,7,-104,-209,-309,-413,-528,-653,-774,-882,-978,-1073,-1176,-1288,-1395,-1483,-1554,-1622,-1703,
+-1803,-1907,-2002,-2080,-2149,-2224,-2310,-2399,-2482,-2558,-2634,-2723,-2829,-2942,-3050,-3150,-3250,-3361,-3482,-3601,
+-3703,-3780,-3840,-3898,-3958,-4014,-4055,-4081,-4104,-4136,-4175,-4204,-4208,-4195,-4199,-4263,-4397,-4569,-4718,-4798,
+-4812,-4810,-4854,-4970,-5125,-5252,-5294,-5239,-5127,-5023,-4980,-5014,-5105,-5216,-5315,-5390,-5452,-5520,-5607,-5708,
+-5807,-5884,-5933,-5962,-5982,-5994,-5986,-5942,-5860,-5756,-5657,-5581,-5530,-5491,-5453,-5414,-5379,-5353,-5329,-5291,
+-5230,-5145,-5048,-4952,-4871,-4811,-4780,-4778,-4797,-4821,-4830,-4810,-4760,-4690,-4610,-4525,-4436,-4344,-4256,-4178,
+-4113,-4053,-3987,-3908,-3823,-3742,-3670,-3603,-3524,-3421,-3290,-3138,-2978,-2813,-2640,-2451,-2245,-2029,-1821,-1637,
+-1487,-1366,-1260,-1150,-1022,-873,-704,-525,-345,-175,-26,97,199,293,401,533,688,847,990,1107,
+1201,1285,1365,1436,1491,1534,1585,1665,1782,1921,2048,2141,2197,2238,2287,2354,2435,2523,2626,2754,
+2901,3034,3101,3065,2937,2777,2659,2632,2688,2778,2851,2882,2878,2861,2846,2829,2799,2747,2671,2578,
+2481,2399,2359,2382,2466,2579,2671,2691,2614,2435,2161,1803,1386,957,592,367,329,461,696,951,
+1159,1291,1342,1322,1245,1134,1018,923,852,783,688,553,397,259,162,98,32,-64,-187,-296,
+-354,-359,-355,-401,-519,-673,-788,-809,-744,-656,-618,-654,-730,-782,-772,-715,-661,-646,-670,-698,
+-702,-680,-655,-649,-659,-667,-659,-640,-623,-616,-608,-584,-540,-490,-454,-441,-440,-433,-410,-379,
+-350,-329,-308,-282,-252,-227,-214,-211,-206,-191,-169,-148,-137,-133,-129,-121,-112,-110,-117,-128,
+-133,-130,-121,-115,-117,-127,-143,-165,-196,-235,-278,-318,-350,-377,-404,-435,-470,-505,-538,-569,
+-601,-639,-682,-728,-776,-826,-878,-934,-992,-1055,-1119,-1183,-1242,-1295,-1343,-1389,-1439,-1493,-1548,-1602,
+-1653,-1703,-1754,-1808,-1864,-1921,-1981,-2044,-2109,-2169,-2223,-2270,-2317,-2368,-2420,-2467,-2506,-2539,-2573,-2607,
+-2634,-2643,-2634,-2618,-2609,-2609,-2604,-2577,-2528,-2479,-2458,-2473,-2502,-2514,-2500,-2484,-2501,-2561,-2624,-2629,
+-2535,-2359,-2165,-2019,-1943,-1917,-1901,-1874,-1844,-1825,-1817,-1795,-1738,-1643,-1536,-1449,-1393,-1360,-1326,-1277,
+-1218,-1165,-1128,-1106,-1085,-1049,-993,-926,-874,-863,-907,-997,-1107,-1201,-1264,-1301,-1334,-1375,-1418,-1442,
+-1436,-1413,-1412,-1468,-1586,-1737,-1881,-1989,-2064,-2129,-2204,-2290,-2375,-2446,-2499,-2541,-2577,-2608,-2628,-2636,
+-2641,-2654,-2679,-2712,-2747,-2785,-2834,-2900,-2977,-3055,-3124,-3190,-3268,-3365,-3467,-3546,-3574,-3551,-3504,-3469,
+-3468,-3501,-3551,-3601,-3640,-3667,-3678,-3666,-3630,-3576,-3520,-3475,-3448,-3435,-3427,-3416,-3397,-3365,-3321,-3268,
+-3216,-3171,-3131,-3083,-3017,-2932,-2839,-2754,-2681,-2615,-2550,-2485,-2432,-2395,-2365,-2321,-2247,-2145,-2037,-1948,
+-1887,-1840,-1789,-1727,-1662,-1608,-1564,-1517,-1451,-1362,-1262,-1165,-1073,-973,-850,-705,-552,-408,-273,-134,
+24,205,388,551,689,819,972,1167,1393,1621,1816,1965,2080,2190,2317,2470,2633,2783,2900,2983,
+3046,3113,3201,3308,3421,3526,3620,3712,3814,3929,4049,4165,4273,4381,4494,4611,4724,4828,4924,5021,
+5125,5233,5337,5433,5527,5630,5746,5865,5976,6071,6158,6248,6345,6438,6510,6548,6558,6555,6551,6549,
+6541,6520,6488,6447,6401,6349,6291,6231,6175,6127,6086,6047,6009,5978,5962,5962,5966,5953,5912,5843,
+5764,5689,5626,5569,5510,5442,5367,5289,5210,5130,5048,4966,4884,4804,4723,4647,4583,4544,4535,4553,
+4587,4627,4673,4724,4775,4810,4812,4780,4736,4714,4740,4690,4754,4869,5009,5146,5254,5314,5313,5256,
+5179,5143,5195,5325,5455,5472,5309,4993,4637,4369,4249,4247,4274,4265,4214,4166,4164,4211,4280,4340,
+4388,4439,4502,4565,4606,4612,4596,4576,4562,4547,4520,4479,4436,4397,4351,4284,4193,4092,4006,3941,
+3881,3799,3684,3552,3429,3331,3255,3189,3130,3078,3031,2969,2872,2740,2606,2514,2482,2479,2444,2331,
+2144,1931,1744,1606,1502,1416,1345,1308,1319,1362,1399,1397,1345,1260,1160,1050,920,762,587,417,
+271,150,43,-63,-171,-274,-370,-468,-576,-696,-816,-919,-999,-1068,-1144,-1239,-1348,-1455,-1547,-1623,
+-1694,-1772,-1861,-1956,-2051,-2143,-2232,-2319,-2407,-2494,-2585,-2683,-2787,-2892,-2990,-3080,-3169,-3270,-3385,-3507,
+-3619,-3707,-3775,-3837,-3904,-3973,-4033,-4074,-4104,-4139,-4189,-4241,-4268,-4258,-4235,-4253,-4357,-4542,-4747,-4889,
+-4929,-4896,-4874,-4930,-5068,-5220,-5296,-5250,-5106,-4938,-4824,-4802,-4864,-4974,-5097,-5213,-5319,-5421,-5527,-5639,
+-5752,-5854,-5934,-5993,-6043,-6098,-6157,-6197,-6188,-6120,-6013,-5908,-5838,-5805,-5788,-5757,-5703,-5637,-5573,-5515,
+-5449,-5362,-5255,-5142,-5043,-4969,-4919,-4887,-4869,-4865,-4867,-4863,-4841,-4796,-4732,-4659,-4584,-4508,-4428,-4344,
+-4262,-4186,-4117,-4047,-3970,-3884,-3793,-3703,-3612,-3512,-3396,-3260,-3109,-2947,-2776,-2593,-2394,-2179,-1961,-1755,
+-1579,-1438,-1324,-1221,-1111,-980,-827,-658,-481,-305,-138,12,142,253,360,478,620,778,935,1070,
+1174,1258,1338,1423,1510,1587,1652,1716,1801,1916,2047,2166,2246,2285,2302,2332,2395,2497,2625,2765,
+2903,3021,3090,3081,2985,2833,2685,2609,2632,2732,2853,2940,2974,2972,2962,2958,2952,2923,2861,2769,
+2671,2591,2555,2577,2652,2745,2795,2737,2531,2183,1740,1265,815,432,156,26,69,276,587,912,
+1162,1292,1312,1260,1178,1091,1003,915,826,737,643,537,421,307,209,134,68,-14,-128,-263,
+-378,-434,-428,-402,-418,-515,-669,-804,-845,-777,-658,-579,-597,-694,-799,-846,-823,-772,-745,-758,
+-788,-798,-777,-743,-722,-719,-719,-706,-679,-651,-634,-624,-607,-577,-542,-518,-511,-511,-504,-482,
+-454,-432,-422,-416,-407,-392,-380,-376,-375,-368,-348,-319,-291,-273,-262,-250,-235,-219,-209,-211,
+-220,-231,-241,-250,-260,-271,-282,-296,-317,-347,-384,-419,-446,-463,-479,-500,-530,-567,-605,-643,
+-681,-722,-764,-806,-850,-897,-950,-1010,-1072,-1131,-1187,-1243,-1302,-1363,-1421,-1471,-1514,-1556,-1601,-1648,
+-1696,-1742,-1790,-1843,-1899,-1957,-2013,-2067,-2125,-2187,-2251,-2309,-2359,-2404,-2450,-2498,-2543,-2581,-2613,-2645,
+-2680,-2711,-2728,-2725,-2710,-2698,-2694,-2691,-2672,-2633,-2589,-2564,-2567,-2580,-2580,-2561,-2549,-2576,-2645,-2710,
+-2704,-2590,-2394,-2189,-2050,-1995,-1992,-1985,-1945,-1877,-1806,-1745,-1686,-1614,-1529,-1446,-1387,-1355,-1332,-1294,
+-1232,-1153,-1081,-1030,-1005,-989,-962,-912,-847,-792,-782,-833,-933,-1043,-1125,-1163,-1180,-1211,-1273,-1350,
+-1403,-1411,-1390,-1391,-1459,-1602,-1783,-1951,-2071,-2149,-2212,-2283,-2363,-2436,-2488,-2523,-2554,-2592,-2634,-2668,
+-2688,-2700,-2717,-2748,-2791,-2837,-2884,-2940,-3011,-3099,-3191,-3277,-3353,-3427,-3504,-3575,-3614,-3604,-3547,-3473,
+-3419,-3410,-3442,-3495,-3547,-3587,-3613,-3625,-3620,-3595,-3553,-3505,-3462,-3432,-3418,-3415,-3414,-3404,-3372,-3313,
+-3235,-3155,-3088,-3035,-2984,-2919,-2840,-2759,-2695,-2651,-2615,-2574,-2522,-2468,-2420,-2375,-2318,-2242,-2156,-2083,
+-2039,-2018,-1994,-1944,-1869,-1792,-1737,-1706,-1676,-1618,-1519,-1391,-1256,-1126,-996,-860,-722,-599,-505,-429,
+-338,-195,8,246,474,662,815,967,1150,1370,1599,1796,1936,2026,2098,2190,2319,2475,2629,2756,
+2848,2921,3001,3104,3225,3348,3459,3558,3658,3772,3899,4027,4144,4251,4359,4477,4602,4723,4829,4922,
+5015,5117,5225,5329,5426,5522,5629,5750,5872,5980,6070,6150,6238,6335,6427,6492,6518,6515,6503,6494,
+6490,6481,6459,6427,6391,6358,6324,6285,6235,6177,6115,6052,5991,5939,5906,5898,5911,5924,5915,5871,
+5801,5724,5661,5617,5580,5532,5460,5364,5254,5143,5041,4949,4861,4769,4664,4550,4441,4359,4319,4323,
+4352,4387,4418,4456,4515,4598,4684,4742,4751,4720,4686,4690,4653,4680,4769,4903,5050,5175,5252,5266,
+5231,5184,5178,5245,5363,5457,5436,5255,4957,4650,4436,4348,4337,4319,4249,4145,4066,4055,4106,4180,
+4243,4294,4356,4439,4528,4593,4616,4609,4595,4588,4578,4553,4509,4453,4393,4322,4229,4113,3997,3907,
+3853,3819,3777,3712,3630,3548,3471,3391,3300,3207,3125,3057,2980,2868,2716,2558,2442,2389,2370,2327,
+2219,2057,1888,1757,1668,1591,1496,1387,1302,1277,1316,1389,1453,1482,1468,1409,1299,1128,898,634,
+377,159,-11,-145,-256,-351,-426,-484,-537,-604,-696,-805,-910,-993,-1055,-1113,-1188,-1289,-1406,-1520,
+-1613,-1684,-1744,-1812,-1898,-2005,-2123,-2239,-2345,-2439,-2528,-2621,-2722,-2827,-2928,-3018,-3101,-3187,-3286,-3398,
+-3513,-3616,-3702,-3775,-3844,-3909,-3963,-3993,-4002,-4010,-4039,-4094,-4154,-4187,-4186,-4185,-4246,-4407,-4644,-4875,
+-5009,-5020,-4966,-4948,-5032,-5194,-5337,-5362,-5245,-5049,-4877,-4807,-4849,-4959,-5084,-5196,-5291,-5375,-5452,-5523,
+-5590,-5657,-5725,-5788,-5846,-5907,-5987,-6085,-6175,-6220,-6195,-6115,-6026,-5969,-5952,-5945,-5912,-5841,-5752,-5676,
+-5624,-5578,-5512,-5416,-5303,-5200,-5123,-5073,-5036,-5003,-4972,-4941,-4906,-4859,-4794,-4717,-4638,-4566,-4500,-4434,
+-4362,-4286,-4212,-4143,-4076,-4003,-3917,-3818,-3710,-3595,-3472,-3336,-3186,-3027,-2862,-2692,-2515,-2325,-2125,-1922,
+-1733,-1569,-1431,-1307,-1178,-1033,-871,-704,-546,-401,-263,-123,24,175,323,464,607,756,909,1052,
+1171,1263,1339,1420,1516,1622,1725,1813,1892,1978,2082,2200,2311,2392,2437,2462,2501,2581,2707,2858,
+3001,3100,3137,3105,3014,2889,2765,2686,2681,2750,2857,2956,3011,3025,3026,3040,3071,3093,3078,3016,
+2930,2859,2835,2863,2920,2959,2919,2744,2404,1913,1340,782,332,46,-66,-26,134,382,676,962,
+1181,1293,1297,1226,1132,1050,986,924,845,743,627,514,416,332,255,177,94,4,-92,-197,
+-305,-397,-451,-458,-443,-452,-527,-662,-797,-855,-803,-686,-598,-610,-718,-844,-906,-881,-816,-779,
+-802,-858,-892,-878,-832,-793,-782,-789,-790,-772,-746,-727,-720,-715,-699,-676,-654,-639,-626,-602,
+-568,-533,-510,-502,-500,-496,-486,-479,-479,-480,-472,-449,-416,-385,-365,-352,-341,-327,-312,-302,
+-303,-314,-332,-354,-379,-403,-420,-430,-437,-448,-470,-499,-527,-547,-560,-575,-598,-631,-669,-710,
+-755,-803,-855,-902,-941,-973,-1010,-1059,-1123,-1192,-1256,-1312,-1365,-1421,-1483,-1543,-1597,-1641,-1682,-1725,
+-1768,-1810,-1850,-1891,-1938,-1990,-2044,-2094,-2141,-2191,-2250,-2314,-2377,-2430,-2476,-2520,-2566,-2610,-2646,-2674,
+-2700,-2732,-2766,-2792,-2801,-2794,-2785,-2783,-2782,-2768,-2735,-2695,-2670,-2669,-2678,-2675,-2653,-2641,-2670,-2743,
+-2810,-2802,-2678,-2465,-2243,-2091,-2029,-2019,-2001,-1940,-1844,-1746,-1668,-1609,-1556,-1501,-1452,-1416,-1392,-1361,
+-1305,-1219,-1120,-1032,-977,-959,-960,-948,-902,-824,-745,-712,-753,-858,-978,-1062,-1094,-1103,-1135,-1212,
+-1311,-1382,-1394,-1368,-1363,-1436,-1598,-1809,-2010,-2162,-2265,-2344,-2420,-2493,-2548,-2576,-2586,-2599,-2630,-2676,
+-2721,-2753,-2773,-2793,-2823,-2863,-2908,-2957,-3018,-3102,-3208,-3322,-3424,-3500,-3554,-3593,-3616,-3612,-3569,-3491,
+-3405,-3345,-3334,-3367,-3424,-3477,-3514,-3534,-3544,-3548,-3545,-3537,-3523,-3507,-3492,-3482,-3478,-3474,-3456,-3407,
+-3321,-3211,-3103,-3020,-2966,-2926,-2880,-2822,-2765,-2726,-2706,-2690,-2656,-2596,-2519,-2441,-2368,-2298,-2231,-2176,
+-2148,-2151,-2164,-2155,-2101,-2012,-1917,-1846,-1798,-1749,-1671,-1556,-1421,-1292,-1179,-1073,-958,-836,-725,-646,
+-594,-535,-423,-234,16,285,530,738,927,1125,1339,1550,1726,1844,1912,1962,2035,2150,2302,2463,
+2604,2717,2812,2910,3025,3153,3279,3391,3494,3602,3725,3859,3990,4108,4216,4327,4450,4581,4707,4817,
+4915,5012,5116,5221,5320,5411,5507,5618,5742,5865,5970,6055,6136,6227,6327,6414,6466,6477,6462,6446,
+6440,6438,6426,6396,6357,6322,6297,6279,6255,6216,6160,6092,6021,5955,5905,5879,5878,5891,5896,5872,
+5813,5736,5666,5622,5601,5584,5539,5446,5309,5151,5007,4903,4845,4814,4775,4703,4593,4468,4367,4315,
+4315,4342,4367,4381,4396,4438,4519,4621,4707,4744,4725,4680,4653,4692,4686,4729,4819,4932,5039,5113,
+5142,5137,5127,5145,5203,5275,5307,5245,5081,4867,4684,4594,4591,4612,4586,4489,4357,4248,4198,4193,
+4197,4194,4200,4245,4340,4457,4557,4617,4648,4670,4690,4692,4655,4580,4486,4398,4318,4236,4143,4048,
+3971,3926,3906,3893,3872,3834,3770,3670,3524,3344,3167,3034,2956,2901,2819,2683,2514,2358,2250,2181,
+2112,2018,1911,1824,1780,1756,1705,1594,1433,1278,1189,1194,1277,1396,1508,1581,1592,1520,1354,1101,
+793,476,192,-39,-217,-353,-453,-520,-557,-580,-610,-666,-753,-857,-955,-1034,-1096,-1159,-1242,-1352,
+-1475,-1589,-1678,-1743,-1805,-1885,-1995,-2130,-2268,-2392,-2491,-2571,-2645,-2725,-2814,-2909,-3005,-3101,-3198,-3298,
+-3401,-3504,-3605,-3700,-3789,-3865,-3918,-3938,-3928,-3904,-3893,-3916,-3971,-4031,-4069,-4082,-4105,-4192,-4369,-4604,
+-4815,-4924,-4923,-4882,-4902,-5035,-5234,-5390,-5407,-5279,-5093,-4962,-4950,-5042,-5175,-5294,-5381,-5442,-5482,-5496,
+-5480,-5449,-5430,-5441,-5480,-5534,-5601,-5694,-5825,-5975,-6096,-6146,-6118,-6053,-6000,-5979,-5966,-5926,-5844,-5749,
+-5680,-5658,-5660,-5645,-5586,-5489,-5385,-5302,-5245,-5203,-5159,-5107,-5047,-4978,-4895,-4797,-4692,-4593,-4512,-4447,
+-4388,-4324,-4254,-4184,-4119,-4054,-3982,-3895,-3789,-3670,-3542,-3404,-3254,-3093,-2927,-2762,-2601,-2441,-2274,-2097,
+-1914,-1739,-1579,-1431,-1281,-1111,-917,-716,-538,-404,-313,-236,-136,8,194,395,585,753,901,1034,
+1153,1255,1342,1422,1511,1615,1731,1844,1944,2031,2118,2216,2326,2437,2531,2600,2654,2717,2815,2950,
+3096,3206,3238,3181,3057,2912,2793,2729,2728,2782,2870,2960,3025,3055,3064,3078,3118,3178,3227,3235,
+3200,3149,3122,3134,3159,3139,3008,2724,2283,1724,1121,570,166,-33,-22,153,419,702,951,1140,
+1258,1304,1283,1214,1124,1040,974,920,858,772,659,537,427,344,281,214,121,3,-117,-216,
+-286,-341,-396,-451,-487,-497,-503,-548,-652,-782,-867,-856,-769,-689,-695,-793,-909,-954,-903,-812,
+-769,-812,-903,-968,-964,-908,-856,-845,-869,-891,-888,-865,-842,-831,-827,-817,-798,-776,-758,-738,
+-709,-670,-631,-604,-590,-580,-565,-546,-533,-532,-537,-535,-519,-491,-465,-447,-439,-433,-426,-420,
+-418,-425,-438,-456,-479,-503,-526,-541,-547,-549,-557,-576,-604,-632,-654,-673,-695,-725,-760,-796,
+-834,-877,-928,-985,-1034,-1068,-1089,-1111,-1151,-1211,-1283,-1352,-1414,-1471,-1530,-1594,-1657,-1713,-1761,-1807,
+-1853,-1898,-1937,-1968,-1997,-2030,-2072,-2118,-2162,-2204,-2249,-2304,-2368,-2430,-2484,-2529,-2572,-2619,-2667,-2708,
+-2737,-2763,-2793,-2828,-2857,-2871,-2869,-2864,-2865,-2869,-2859,-2830,-2792,-2769,-2772,-2786,-2785,-2763,-2744,-2765,
+-2832,-2901,-2899,-2779,-2565,-2333,-2160,-2073,-2036,-1994,-1914,-1808,-1710,-1644,-1605,-1577,-1545,-1512,-1479,-1446,
+-1400,-1328,-1232,-1127,-1038,-988,-981,-996,-1000,-957,-865,-757,-693,-716,-822,-959,-1063,-1108,-1120,-1150,
+-1225,-1324,-1396,-1409,-1381,-1374,-1444,-1605,-1821,-2036,-2214,-2350,-2462,-2562,-2643,-2692,-2703,-2692,-2683,-2697,
+-2733,-2778,-2815,-2840,-2860,-2884,-2915,-2954,-3002,-3066,-3156,-3271,-3396,-3503,-3573,-3604,-3609,-3597,-3569,-3516,
+-3440,-3358,-3297,-3281,-3310,-3363,-3415,-3449,-3467,-3478,-3492,-3511,-3534,-3552,-3562,-3563,-3559,-3553,-3543,-3513,
+-3448,-3341,-3210,-3087,-3000,-2953,-2927,-2897,-2854,-2810,-2781,-2767,-2752,-2713,-2643,-2550,-2456,-2371,-2300,-2244,
+-2210,-2204,-2219,-2232,-2215,-2155,-2063,-1968,-1889,-1823,-1748,-1648,-1529,-1418,-1337,-1288,-1242,-1168,-1055,-924,
+-808,-727,-667,-587,-449,-241,20,299,571,826,1066,1290,1487,1640,1741,1803,1854,1924,2029,2164,
+2310,2446,2566,2677,2792,2919,3054,3186,3307,3421,3537,3664,3798,3928,4048,4164,4285,4415,4547,4671,
+4781,4886,4995,5107,5215,5311,5398,5492,5605,5731,5852,5953,6039,6126,6224,6324,6399,6430,6422,6399,
+6386,6386,6387,6371,6336,6296,6267,6252,6241,6218,6176,6116,6048,5984,5932,5900,5890,5898,5906,5894,
+5847,5767,5676,5599,5555,5542,5533,5494,5401,5254,5084,4942,4868,4873,4931,4987,4996,4941,4846,4754,
+4695,4675,4671,4657,4624,4590,4580,4611,4673,4739,4775,4769,4731,4692,4851,4845,4855,4886,4935,4985,
+5019,5030,5027,5027,5045,5075,5092,5066,4982,4859,4745,4693,4718,4790,4851,4850,4781,4678,4580,4501,
+4424,4330,4229,4163,4171,4254,4375,4488,4570,4634,4698,4758,4782,4741,4637,4506,4394,4323,4284,4251,
+4208,4155,4103,4064,4041,4028,4007,3946,3810,3588,3316,3061,2892,2824,2811,2779,2676,2507,2319,2159,
+2042,1954,1882,1831,1817,1839,1863,1840,1740,1574,1394,1260,1210,1246,1344,1466,1575,1637,1627,1529,
+1345,1094,810,528,274,60,-117,-265,-390,-490,-564,-618,-669,-733,-822,-927,-1030,-1115,-1183,-1252,
+-1341,-1455,-1579,-1691,-1780,-1854,-1934,-2039,-2171,-2311,-2437,-2531,-2595,-2641,-2690,-2757,-2848,-2956,-3068,-3172,
+-3263,-3347,-3437,-3544,-3667,-3789,-3887,-3944,-3959,-3949,-3937,-3941,-3963,-3988,-4001,-3992,-3975,-3979,-4038,-4162,
+-4320,-4456,-4525,-4533,-4541,-4625,-4813,-5050,-5231,-5276,-5188,-5052,-4968,-4985,-5080,-5194,-5290,-5362,-5419,-5451,
+-5433,-5357,-5252,-5173,-5154,-5193,-5260,-5340,-5453,-5626,-5853,-6076,-6219,-6246,-6185,-6102,-6044,-6011,-5968,-5893,
+-5803,-5738,-5723,-5741,-5750,-5713,-5629,-5526,-5437,-5374,-5328,-5281,-5223,-5151,-5062,-4957,-4838,-4712,-4597,-4502,
+-4429,-4365,-4301,-4233,-4164,-4098,-4030,-3952,-3855,-3740,-3611,-3474,-3329,-3175,-3013,-2848,-2688,-2538,-2394,-2244,
+-2083,-1911,-1738,-1571,-1410,-1238,-1040,-816,-591,-406,-290,-238,-204,-131,14,226,462,677,847,976,
+1083,1184,1286,1386,1486,1588,1693,1799,1902,2001,2095,2189,2286,2386,2487,2579,2659,2727,2800,2896,
+3016,3136,3209,3195,3090,2937,2797,2718,2713,2762,2836,2917,2995,3062,3111,3142,3165,3192,3225,3252,
+3258,3242,3220,3208,3194,3127,2944,2605,2123,1565,1024,590,320,239,330,546,816,1069,1251,1343,
+1357,1322,1266,1206,1145,1079,1007,929,847,760,665,561,453,358,285,224,150,38,-103,-241,
+-333,-371,-386,-420,-482,-542,-565,-553,-560,-634,-768,-890,-924,-863,-782,-771,-854,-962,-1000,-935,
+-830,-782,-839,-957,-1043,-1043,-978,-916,-903,-932,-961,-958,-928,-896,-880,-872,-861,-842,-824,-813,
+-806,-790,-763,-734,-713,-699,-684,-659,-630,-609,-605,-615,-622,-616,-597,-576,-560,-549,-541,-533,
+-529,-533,-544,-560,-577,-594,-613,-631,-645,-655,-665,-681,-706,-736,-762,-783,-802,-826,-857,-891,
+-922,-951,-984,-1027,-1078,-1125,-1159,-1180,-1201,-1236,-1292,-1360,-1430,-1494,-1556,-1620,-1686,-1750,-1806,-1855,
+-1902,-1951,-1999,-2038,-2066,-2087,-2112,-2146,-2188,-2230,-2271,-2315,-2366,-2424,-2482,-2533,-2577,-2621,-2672,-2726,
+-2773,-2810,-2840,-2871,-2905,-2930,-2938,-2931,-2923,-2926,-2934,-2931,-2907,-2872,-2852,-2857,-2875,-2876,-2849,-2820,
+-2828,-2886,-2954,-2960,-2854,-2652,-2422,-2239,-2132,-2073,-2012,-1924,-1822,-1735,-1680,-1649,-1623,-1587,-1544,-1499,
+-1456,-1406,-1342,-1262,-1176,-1101,-1053,-1042,-1057,-1066,-1034,-945,-828,-743,-745,-841,-982,-1102,-1162,-1178,
+-1198,-1254,-1336,-1405,-1431,-1427,-1438,-1507,-1644,-1825,-2014,-2187,-2342,-2486,-2616,-2719,-2777,-2790,-2774,-2756,
+-2758,-2786,-2827,-2865,-2892,-2911,-2932,-2962,-3002,-3050,-3109,-3186,-3285,-3394,-3491,-3553,-3575,-3569,-3551,-3527,
+-3490,-3434,-3364,-3304,-3278,-3293,-3335,-3381,-3412,-3428,-3442,-3463,-3493,-3526,-3551,-3562,-3562,-3558,-3556,-3549,
+-3523,-3459,-3356,-3232,-3120,-3044,-3003,-2976,-2940,-2887,-2832,-2791,-2768,-2746,-2707,-2643,-2563,-2480,-2405,-2340,
+-2287,-2251,-2237,-2235,-2226,-2194,-2135,-2062,-1996,-1941,-1885,-1813,-1718,-1618,-1541,-1507,-1504,-1495,-1440,-1317,
+-1144,-966,-824,-735,-673,-593,-454,-238,41,352,663,948,1190,1383,1526,1629,1707,1778,1859,1954,
+2062,2176,2289,2402,2518,2644,2781,2925,3067,3203,3333,3460,3589,3719,3847,3975,4107,4245,4383,4511,
+4624,4728,4835,4954,5079,5195,5293,5380,5475,5588,5713,5832,5934,6026,6121,6223,6314,6367,6374,6350,
+6325,6318,6322,6319,6296,6262,6234,6222,6218,6204,6167,6108,6040,5978,5931,5901,5889,5891,5901,5901,
+5875,5813,5720,5613,5518,5453,5424,5417,5403,5353,5257,5134,5031,4994,5043,5155,5276,5356,5373,5342,
+5292,5246,5205,5155,5085,5000,4918,4856,4824,4820,4833,4850,4861,4860,4851,5047,5073,5076,5068,5057,
+5041,5013,4972,4930,4904,4897,4897,4883,4838,4768,4703,4677,4708,4786,4877,4942,4962,4945,4909,4864,
+4796,4685,4529,4363,4243,4209,4254,4335,4406,4453,4496,4562,4644,4706,4707,4638,4530,4435,4389,4390,
+4410,4415,4383,4315,4231,4160,4117,4087,4026,3882,3638,3334,3052,2869,2798,2791,2767,2674,2517,2340,
+2192,2091,2030,1995,1982,1990,2013,2027,2004,1929,1805,1656,1513,1403,1347,1351,1407,1492,1577,1634,
+1643,1589,1469,1287,1063,824,592,376,166,-47,-260,-450,-590,-679,-739,-807,-904,-1025,-1143,-1239,
+-1317,-1394,-1489,-1604,-1723,-1829,-1920,-2007,-2107,-2225,-2351,-2463,-2545,-2593,-2619,-2649,-2702,-2789,-2900,-3012,
+-3104,-3170,-3226,-3303,-3423,-3582,-3749,-3887,-3977,-4031,-4073,-4116,-4147,-4135,-4065,-3947,-3822,-3729,-3692,-3708,
+-3761,-3827,-3887,-3932,-3978,-4057,-4203,-4421,-4660,-4842,-4910,-4868,-4785,-4737,-4760,-4836,-4926,-5011,-5098,-5191,
+-5264,-5275,-5209,-5106,-5033,-5035,-5101,-5187,-5275,-5397,-5602,-5897,-6213,-6442,-6511,-6438,-6305,-6198,-6143,-6111,
+-6061,-5982,-5900,-5846,-5821,-5796,-5743,-5654,-5552,-5463,-5402,-5360,-5320,-5268,-5200,-5115,-5016,-4902,-4782,-4667,
+-4566,-4483,-4411,-4341,-4268,-4194,-4118,-4036,-3942,-3828,-3696,-3549,-3396,-3240,-3082,-2923,-2766,-2613,-2467,-2323,
+-2176,-2019,-1852,-1679,-1509,-1343,-1171,-980,-767,-549,-365,-244,-185,-144,-65,86,299,527,720,860,
+961,1054,1161,1284,1414,1539,1649,1746,1832,1919,2016,2121,2227,2319,2392,2449,2501,2554,2610,2673,
+2751,2846,2942,3001,2991,2912,2803,2722,2704,2741,2801,2862,2927,3012,3118,3217,3269,3257,3193,3111,
+3036,2981,2941,2911,2877,2804,2640,2344,1919,1432,989,688,578,642,821,1045,1254,1409,1490,1495,
+1438,1350,1264,1200,1160,1125,1070,981,867,748,643,554,469,379,287,206,138,64,-38,-171,
+-301,-387,-417,-427,-463,-538,-608,-626,-590,-567,-629,-780,-936,-993,-927,-817,-781,-860,-988,-1052,
+-1000,-890,-834,-890,-1015,-1112,-1118,-1054,-987,-969,-990,-1007,-992,-956,-929,-922,-923,-914,-893,-874,
+-869,-872,-870,-855,-836,-823,-816,-803,-775,-739,-710,-702,-710,-719,-717,-703,-685,-669,-655,-639,
+-621,-609,-608,-620,-638,-659,-680,-701,-723,-745,-767,-791,-817,-845,-869,-884,-892,-902,-921,-951,
+-986,-1017,-1042,-1065,-1093,-1130,-1171,-1209,-1243,-1279,-1323,-1379,-1442,-1506,-1569,-1632,-1698,-1766,-1830,-1886,
+-1934,-1979,-2026,-2072,-2112,-2143,-2169,-2197,-2233,-2275,-2317,-2356,-2396,-2441,-2492,-2545,-2594,-2639,-2687,-2739,
+-2793,-2840,-2878,-2910,-2943,-2974,-2995,-2997,-2983,-2969,-2969,-2977,-2978,-2959,-2928,-2910,-2916,-2931,-2929,-2898,
+-2861,-2860,-2910,-2975,-2985,-2890,-2700,-2478,-2296,-2183,-2116,-2052,-1969,-1877,-1798,-1742,-1698,-1650,-1592,-1531,
+-1476,-1430,-1390,-1348,-1300,-1247,-1192,-1146,-1121,-1120,-1128,-1112,-1050,-953,-868,-848,-913,-1030,-1138,-1195,
+-1201,-1196,-1218,-1273,-1344,-1407,-1461,-1520,-1602,-1710,-1834,-1965,-2103,-2250,-2403,-2549,-2665,-2737,-2764,-2764,
+-2761,-2775,-2810,-2858,-2901,-2930,-2949,-2972,-3010,-3063,-3118,-3167,-3216,-3275,-3349,-3425,-3481,-3507,-3508,-3501,
+-3496,-3482,-3448,-3392,-3334,-3303,-3312,-3348,-3388,-3413,-3424,-3435,-3457,-3486,-3508,-3512,-3497,-3475,-3463,-3465,
+-3470,-3458,-3412,-3332,-3240,-3162,-3112,-3082,-3049,-2994,-2922,-2850,-2797,-2765,-2741,-2709,-2664,-2610,-2549,-2484,
+-2415,-2352,-2306,-2281,-2268,-2249,-2215,-2170,-2130,-2107,-2094,-2075,-2033,-1967,-1894,-1836,-1805,-1788,-1757,-1678,
+-1531,-1327,-1106,-917,-793,-729,-681,-595,-429,-177,131,454,750,995,1185,1330,1447,1551,1651,1749,
+1844,1936,2030,2131,2243,2366,2499,2640,2785,2933,3080,3224,3362,3495,3624,3756,3896,4048,4206,4353,
+4478,4578,4669,4772,4894,5027,5149,5252,5344,5444,5560,5686,5805,5911,6011,6113,6212,6286,6315,6301,
+6272,6252,6250,6249,6232,6200,6171,6160,6165,6166,6139,6082,6011,5945,5898,5867,5848,5836,5830,5826,
+5814,5782,5721,5632,5523,5412,5321,5269,5264,5288,5310,5300,5255,5204,5188,5237,5339,5458,5554,5610,
+5632,5632,5611,5561,5477,5370,5264,5176,5108,5048,4992,4949,4934,4956,5002,5047,5134,5187,5199,5179,
+5140,5087,5015,4926,4838,4772,4736,4720,4703,4674,4646,4641,4677,4748,4829,4891,4924,4936,4949,4970,
+4986,4963,4877,4733,4572,4447,4389,4388,4400,4385,4338,4291,4285,4338,4430,4520,4573,4583,4569,4561,
+4576,4609,4635,4621,4550,4434,4311,4218,4159,4095,3970,3758,3489,3231,3043,2936,2867,2786,2670,2543,
+2441,2389,2381,2393,2403,2399,2375,2329,2262,2180,2093,1998,1888,1752,1601,1465,1383,1376,1440,1547,
+1664,1763,1816,1796,1688,1499,1262,1018,788,562,316,43,-231,-461,-617,-710,-781,-871,-996,-1139,
+-1272,-1382,-1472,-1559,-1651,-1750,-1848,-1946,-2046,-2156,-2274,-2389,-2486,-2553,-2590,-2610,-2636,-2686,-2769,-2872,
+-2972,-3044,-3086,-3120,-3187,-3311,-3487,-3679,-3845,-3971,-4075,-4177,-4269,-4301,-4218,-4011,-3738,-3496,-3358,-3331,
+-3365,-3402,-3418,-3428,-3463,-3542,-3669,-3836,-4029,-4218,-4361,-4425,-4416,-4379,-4372,-4424,-4521,-4634,-4747,-4869,
+-5001,-5118,-5177,-5164,-5115,-5093,-5135,-5222,-5302,-5361,-5443,-5621,-5918,-6265,-6537,-6639,-6572,-6424,-6299,-6246,
+-6240,-6222,-6158,-6054,-5941,-5842,-5754,-5663,-5564,-5468,-5392,-5343,-5312,-5282,-5241,-5185,-5118,-5043,-4960,-4867,
+-4768,-4671,-4582,-4500,-4421,-4338,-4246,-4146,-4037,-3917,-3782,-3629,-3460,-3280,-3100,-2929,-2770,-2620,-2471,-2318,
+-2161,-2004,-1848,-1692,-1533,-1372,-1214,-1060,-904,-737,-559,-389,-251,-150,-62,49,209,403,590,737,
+841,929,1033,1167,1320,1470,1601,1707,1790,1865,1951,2059,2186,2303,2378,2396,2376,2352,2354,2389,
+2445,2516,2598,2684,2753,2781,2765,2732,2724,2758,2815,2866,2902,2956,3062,3213,3349,3391,3293,3081,
+2824,2595,2431,2328,2263,2204,2113,1952,1702,1387,1085,890,864,998,1224,1449,1604,1668,1653,1589,
+1500,1404,1314,1240,1186,1143,1091,1012,898,766,643,548,479,412,326,221,120,41,-22,-97,
+-199,-309,-393,-433,-457,-506,-585,-655,-663,-617,-592,-667,-841,-1012,-1059,-956,-802,-742,-836,-1005,
+-1112,-1080,-964,-887,-925,-1044,-1148,-1170,-1122,-1069,-1055,-1067,-1068,-1042,-1010,-1002,-1021,-1040,-1036,-1009,
+-982,-971,-971,-966,-948,-928,-916,-913,-901,-872,-829,-793,-776,-776,-779,-774,-761,-747,-737,-726,
+-709,-686,-666,-658,-665,-685,-713,-743,-774,-805,-835,-864,-892,-918,-939,-951,-954,-954,-960,-979,
+-1013,-1054,-1092,-1121,-1139,-1154,-1175,-1205,-1246,-1294,-1347,-1403,-1459,-1517,-1576,-1637,-1702,-1772,-1843,-1911,
+-1971,-2022,-2067,-2109,-2151,-2191,-2228,-2263,-2300,-2339,-2379,-2416,-2451,-2486,-2526,-2572,-2622,-2671,-2720,-2769,
+-2819,-2866,-2905,-2935,-2963,-2993,-3024,-3045,-3047,-3034,-3018,-3013,-3016,-3012,-2993,-2965,-2949,-2955,-2968,-2962,
+-2930,-2893,-2891,-2939,-3003,-3015,-2925,-2742,-2526,-2345,-2229,-2159,-2098,-2022,-1938,-1862,-1798,-1737,-1670,-1598,
+-1530,-1474,-1430,-1391,-1357,-1328,-1301,-1272,-1241,-1213,-1201,-1206,-1207,-1182,-1122,-1054,-1021,-1047,-1119,-1191,
+-1219,-1196,-1151,-1126,-1150,-1227,-1340,-1467,-1592,-1701,-1791,-1866,-1944,-2040,-2162,-2300,-2434,-2544,-2620,-2665,
+-2692,-2719,-2759,-2816,-2879,-2932,-2964,-2983,-3010,-3061,-3132,-3200,-3243,-3264,-3283,-3319,-3373,-3423,-3452,-3461,
+-3463,-3469,-3470,-3448,-3402,-3352,-3330,-3351,-3399,-3440,-3455,-3450,-3447,-3461,-3481,-3486,-3458,-3406,-3354,-3327,
+-3330,-3346,-3349,-3321,-3267,-3210,-3171,-3153,-3141,-3111,-3055,-2983,-2917,-2869,-2839,-2815,-2788,-2756,-2716,-2665,
+-2595,-2512,-2435,-2387,-2373,-2377,-2376,-2355,-2326,-2308,-2313,-2331,-2341,-2327,-2288,-2233,-2172,-2107,-2036,-1946,
+-1824,-1661,-1458,-1238,-1039,-893,-808,-755,-683,-548,-337,-68,217,482,707,888,1038,1173,1301,1425,
+1542,1650,1753,1858,1974,2101,2237,2374,2511,2650,2793,2942,3092,3239,3379,3514,3655,3809,3979,4152,
+4309,4434,4528,4611,4707,4826,4957,5082,5192,5294,5405,5529,5657,5778,5887,5993,6099,6191,6248,6259,
+6237,6210,6198,6195,6181,6146,6103,6076,6076,6087,6078,6035,5968,5903,5856,5826,5798,5764,5725,5692,
+5667,5645,5615,5569,5499,5406,5296,5194,5128,5122,5173,5246,5299,5311,5296,5291,5325,5398,5484,5558,
+5612,5653,5680,5679,5630,5536,5426,5338,5289,5261,5217,5139,5050,4991,4996,5057,5134,5083,5124,5130,
+5108,5070,5019,4945,4848,4745,4664,4619,4602,4593,4583,4584,4617,4689,4779,4853,4885,4878,4863,4869,
+4908,4959,4988,4964,4889,4790,4704,4651,4622,4579,4489,4345,4177,4044,4002,4073,4238,4440,4616,4723,
+4761,4765,4772,4794,4804,4766,4663,4521,4388,4287,4202,4089,3920,3711,3501,3322,3171,3022,2868,2732,
+2658,2668,2743,2839,2911,2938,2915,2839,2711,2547,2376,2232,2121,2019,1894,1739,1588,1492,1489,1573,
+1712,1861,1984,2052,2033,1910,1691,1421,1156,931,738,537,293,8,-277,-518,-691,-809,-905,-1009,
+-1134,-1272,-1407,-1524,-1616,-1687,-1747,-1815,-1905,-2024,-2163,-2304,-2428,-2521,-2579,-2611,-2633,-2662,-2713,-2790,
+-2883,-2971,-3037,-3079,-3113,-3171,-3277,-3429,-3599,-3757,-3893,-4024,-4161,-4277,-4302,-4174,-3897,-3567,-3318,-3234,
+-3297,-3405,-3459,-3432,-3372,-3346,-3388,-3482,-3597,-3713,-3824,-3918,-3981,-4012,-4040,-4108,-4239,-4418,-4602,-4764,
+-4905,-5036,-5152,-5232,-5264,-5269,-5292,-5354,-5431,-5477,-5479,-5484,-5572,-5783,-6069,-6321,-6446,-6427,-6331,-6248,
+-6226,-6247,-6255,-6208,-6101,-5961,-5817,-5685,-5567,-5461,-5373,-5311,-5277,-5259,-5239,-5206,-5160,-5110,-5061,-5011,
+-4949,-4870,-4778,-4681,-4588,-4495,-4395,-4277,-4142,-3997,-3849,-3696,-3530,-3344,-3138,-2928,-2735,-2567,-2418,-2268,
+-2103,-1929,-1761,-1612,-1478,-1343,-1197,-1046,-906,-784,-669,-542,-397,-247,-107,25,166,326,493,642,
+757,852,956,1092,1255,1420,1561,1671,1759,1839,1926,2034,2170,2320,2440,2485,2438,2331,2230,2188,
+2214,2285,2368,2452,2538,2617,2677,2710,2732,2769,2828,2889,2929,2953,3005,3127,3306,3456,3470,3290,
+2948,2540,2167,1887,1705,1600,1545,1511,1469,1397,1305,1237,1246,1356,1533,1706,1809,1815,1746,1644,
+1548,1468,1399,1329,1252,1167,1077,982,878,766,655,560,490,436,373,282,166,51,-34,-92,
+-149,-229,-327,-412,-462,-494,-541,-613,-677,-688,-655,-651,-747,-930,-1088,-1100,-950,-761,-696,-818,
+-1032,-1175,-1156,-1028,-926,-941,-1050,-1158,-1195,-1171,-1142,-1141,-1153,-1143,-1107,-1077,-1082,-1117,-1146,-1141,
+-1108,-1075,-1060,-1055,-1042,-1017,-992,-980,-978,-968,-938,-894,-855,-835,-830,-826,-815,-800,-790,-786,
+-784,-774,-755,-734,-720,-720,-736,-764,-799,-838,-875,-909,-937,-959,-976,-988,-995,-1000,-1006,-1020,
+-1046,-1083,-1126,-1167,-1198,-1216,-1226,-1239,-1263,-1303,-1356,-1412,-1465,-1515,-1566,-1622,-1685,-1755,-1829,-1903,
+-1976,-2043,-2103,-2152,-2194,-2232,-2271,-2312,-2354,-2395,-2432,-2465,-2496,-2528,-2563,-2604,-2651,-2700,-2750,-2799,
+-2846,-2891,-2931,-2964,-2989,-3014,-3040,-3068,-3089,-3096,-3088,-3076,-3068,-3062,-3049,-3025,-2998,-2985,-2991,-3005,
+-3003,-2977,-2948,-2952,-3001,-3065,-3081,-3000,-2828,-2618,-2436,-2312,-2232,-2163,-2083,-1998,-1919,-1851,-1786,-1718,
+-1649,-1588,-1535,-1486,-1432,-1380,-1341,-1324,-1324,-1327,-1324,-1318,-1318,-1321,-1313,-1284,-1244,-1216,-1222,-1258,
+-1291,-1283,-1221,-1129,-1059,-1057,-1144,-1304,-1496,-1673,-1803,-1883,-1933,-1985,-2059,-2159,-2271,-2378,-2471,-2547,
+-2607,-2657,-2706,-2763,-2835,-2912,-2977,-3016,-3038,-3068,-3128,-3212,-3289,-3331,-3335,-3329,-3340,-3373,-3410,-3431,
+-3434,-3438,-3451,-3462,-3449,-3408,-3367,-3362,-3406,-3472,-3517,-3515,-3481,-3452,-3449,-3459,-3452,-3404,-3327,-3255,
+-3221,-3229,-3258,-3274,-3261,-3226,-3190,-3171,-3170,-3169,-3150,-3111,-3063,-3022,-2992,-2967,-2937,-2901,-2866,-2828,
+-2775,-2699,-2608,-2532,-2501,-2518,-2557,-2580,-2570,-2541,-2521,-2525,-2544,-2557,-2548,-2516,-2464,-2392,-2298,-2182,
+-2048,-1904,-1746,-1571,-1381,-1196,-1039,-925,-840,-752,-628,-455,-244,-19,196,394,572,735,888,1033,
+1172,1303,1430,1556,1688,1827,1972,2115,2253,2385,2518,2658,2805,2957,3109,3257,3403,3556,3720,3896,
+4072,4231,4359,4458,4545,4641,4756,4883,5009,5128,5246,5372,5506,5638,5758,5868,5975,6079,6165,6212,
+6215,6192,6170,6160,6149,6119,6069,6020,5994,5992,5991,5965,5912,5853,5811,5786,5759,5709,5637,5563,
+5506,5472,5453,5433,5403,5357,5288,5198,5103,5035,5022,5066,5135,5189,5207,5204,5217,5268,5351,5437,
+5501,5544,5580,5612,5620,5581,5495,5397,5335,5324,5338,5323,5249,5135,5036,4999,5027,5083,5021,5009,
+4979,4941,4907,4873,4822,4749,4668,4605,4575,4567,4561,4549,4550,4591,4677,4784,4864,4886,4854,4803,
+4778,4799,4854,4914,4950,4950,4924,4889,4858,4826,4770,4659,4474,4229,3980,3813,3802,3966,4250,4546,
+4754,4832,4820,4792,4801,4838,4851,4798,4680,4538,4409,4295,4173,4025,3862,3706,3562,3412,3238,3063,
+2942,2929,3024,3172,3297,3355,3346,3288,3189,3043,2852,2645,2465,2332,2231,2129,2010,1899,1843,1871,
+1977,2117,2243,2318,2320,2233,2053,1794,1497,1213,981,797,625,416,142,-184,-517,-800,-995,-1100,
+-1149,-1194,-1274,-1395,-1530,-1637,-1696,-1719,-1748,-1821,-1952,-2123,-2299,-2445,-2547,-2608,-2643,-2673,-2710,-2762,
+-2829,-2906,-2986,-3060,-3122,-3172,-3223,-3291,-3386,-3504,-3633,-3766,-3910,-4065,-4202,-4257,-4176,-3971,-3736,-3603,
+-3639,-3797,-3943,-3961,-3834,-3641,-3485,-3414,-3408,-3428,-3455,-3500,-3575,-3669,-3771,-3892,-4062,-4297,-4568,-4816,
+-4996,-5110,-5191,-5269,-5346,-5405,-5444,-5482,-5533,-5586,-5608,-5584,-5544,-5548,-5637,-5801,-5977,-6102,-6150,-6148,
+-6139,-6152,-6180,-6193,-6164,-6085,-5970,-5837,-5702,-5575,-5461,-5370,-5309,-5277,-5264,-5251,-5225,-5186,-5145,-5111,
+-5079,-5034,-4962,-4864,-4753,-4644,-4537,-4423,-4287,-4129,-3958,-3791,-3631,-3466,-3278,-3060,-2827,-2608,-2422,-2264,
+-2108,-1934,-1747,-1573,-1433,-1319,-1205,-1067,-913,-772,-663,-577,-482,-353,-197,-36,111,250,391,533,
+664,778,892,1030,1199,1375,1526,1636,1718,1798,1896,2015,2154,2310,2462,2569,2582,2487,2328,2186,
+2127,2163,2254,2353,2439,2518,2597,2667,2718,2756,2801,2862,2922,2961,2986,3042,3170,3358,3519,3539,
+3350,2971,2494,2026,1641,1370,1220,1185,1246,1361,1482,1578,1653,1729,1817,1898,1936,1906,1818,1706,
+1606,1530,1468,1400,1311,1200,1075,949,836,739,657,582,511,445,381,311,222,115,8,-76,
+-139,-199,-278,-374,-458,-509,-535,-570,-632,-695,-722,-716,-733,-833,-997,-1120,-1093,-916,-722,-673,
+-823,-1066,-1227,-1213,-1080,-969,-973,-1073,-1175,-1215,-1205,-1194,-1206,-1220,-1202,-1155,-1116,-1115,-1143,-1164,
+-1155,-1123,-1098,-1091,-1090,-1078,-1053,-1031,-1025,-1027,-1020,-994,-959,-931,-920,-918,-910,-893,-872,-859,
+-855,-855,-849,-836,-817,-800,-791,-797,-819,-855,-898,-940,-975,-1001,-1019,-1033,-1044,-1057,-1073,-1094,
+-1119,-1146,-1174,-1204,-1233,-1259,-1279,-1295,-1313,-1341,-1382,-1431,-1477,-1517,-1553,-1595,-1649,-1716,-1788,-1860,
+-1931,-2000,-2070,-2135,-2192,-2238,-2279,-2320,-2364,-2408,-2448,-2481,-2510,-2541,-2577,-2621,-2669,-2718,-2766,-2811,
+-2854,-2896,-2939,-2981,-3020,-3053,-3082,-3107,-3129,-3144,-3150,-3146,-3138,-3130,-3120,-3103,-3078,-3052,-3040,-3048,
+-3064,-3070,-3056,-3038,-3046,-3092,-3153,-3174,-3111,-2960,-2767,-2589,-2456,-2359,-2270,-2171,-2069,-1982,-1915,-1860,
+-1805,-1745,-1687,-1633,-1575,-1507,-1433,-1374,-1352,-1372,-1413,-1448,-1459,-1447,-1424,-1399,-1378,-1361,-1357,-1372,
+-1398,-1409,-1373,-1279,-1154,-1056,-1046,-1152,-1350,-1579,-1774,-1901,-1969,-2012,-2066,-2143,-2235,-2327,-2413,-2495,
+-2574,-2647,-2706,-2755,-2807,-2877,-2962,-3041,-3097,-3129,-3162,-3219,-3299,-3373,-3412,-3412,-3397,-3393,-3406,-3419,
+-3416,-3408,-3414,-3444,-3476,-3479,-3447,-3409,-3409,-3460,-3530,-3566,-3543,-3481,-3426,-3408,-3413,-3403,-3355,-3279,
+-3213,-3191,-3216,-3263,-3299,-3305,-3285,-3257,-3235,-3221,-3209,-3190,-3166,-3143,-3125,-3106,-3076,-3031,-2981,-2937,
+-2900,-2853,-2786,-2708,-2654,-2654,-2704,-2769,-2802,-2786,-2740,-2700,-2684,-2685,-2679,-2653,-2608,-2549,-2474,-2375,
+-2252,-2115,-1977,-1841,-1697,-1537,-1366,-1201,-1057,-936,-822,-697,-551,-389,-215,-36,146,332,514,687,
+844,988,1125,1261,1403,1551,1702,1848,1988,2122,2256,2396,2543,2694,2846,2999,3153,3310,3473,3640,
+3809,3973,4124,4254,4365,4466,4571,4687,4813,4941,5070,5205,5348,5493,5627,5744,5849,5952,6052,6133,
+6176,6178,6156,6134,6118,6097,6057,6002,5953,5924,5910,5888,5845,5793,5754,5736,5718,5671,5583,5475,
+5382,5329,5309,5302,5289,5267,5232,5183,5114,5035,4969,4940,4949,4973,4983,4974,4974,5019,5125,5265,
+5397,5487,5537,5570,5599,5613,5587,5514,5424,5360,5348,5367,5370,5320,5222,5118,5049,5025,5021,5052,
+4975,4897,4833,4792,4764,4730,4679,4623,4583,4570,4568,4558,4536,4529,4570,4669,4793,4885,4903,4847,
+4760,4695,4684,4722,4785,4844,4884,4904,4907,4897,4874,4827,4733,4566,4320,4034,3789,3685,3776,4033,
+4347,4593,4701,4694,4656,4657,4705,4753,4747,4676,4568,4456,4344,4218,4076,3936,3823,3732,3632,3501,
+3363,3278,3296,3404,3530,3596,3575,3499,3417,3345,3263,3147,3000,2856,2746,2673,2614,2550,2486,2450,
+2465,2527,2605,2657,2650,2574,2431,2235,1998,1735,1462,1194,943,701,446,145,-217,-616,-985,-1244,
+-1352,-1336,-1281,-1277,-1362,-1503,-1630,-1692,-1697,-1697,-1750,-1880,-2066,-2260,-2421,-2534,-2605,-2653,-2699,-2751,
+-2806,-2861,-2916,-2978,-3052,-3130,-3196,-3241,-3274,-3319,-3396,-3510,-3648,-3802,-3964,-4117,-4225,-4249,-4193,-4122,
+-4124,-4238,-4403,-4493,-4408,-4156,-3842,-3585,-3436,-3368,-3332,-3310,-3326,-3404,-3539,-3714,-3922,-4177,-4481,-4792,
+-5043,-5186,-5235,-5253,-5296,-5375,-5460,-5520,-5552,-5578,-5612,-5647,-5666,-5663,-5655,-5669,-5718,-5800,-5895,-5985,
+-6054,-6098,-6119,-6125,-6120,-6105,-6071,-6012,-5924,-5813,-5689,-5567,-5460,-5379,-5332,-5310,-5297,-5277,-5243,-5205,
+-5171,-5138,-5091,-5014,-4903,-4776,-4651,-4539,-4429,-4306,-4160,-3997,-3833,-3675,-3516,-3337,-3124,-2886,-2649,-2440,
+-2261,-2091,-1908,-1713,-1530,-1385,-1273,-1164,-1030,-878,-739,-636,-558,-462,-320,-143,31,174,289,399,
+522,653,788,931,1095,1275,1444,1571,1655,1728,1826,1961,2114,2263,2398,2512,2581,2573,2474,2325,
+2201,2162,2213,2311,2405,2480,2549,2625,2699,2754,2791,2828,2882,2942,2987,3018,3071,3191,3379,3568,
+3649,3539,3221,2753,2227,1737,1359,1149,1126,1266,1498,1733,1907,2003,2041,2047,2029,1980,1899,1800,
+1704,1618,1534,1438,1324,1198,1069,946,835,742,671,614,554,481,395,308,229,154,74,-11,
+-92,-164,-233,-315,-407,-488,-537,-562,-594,-653,-724,-772,-787,-812,-895,-1024,-1114,-1074,-911,-745,
+-721,-880,-1115,-1263,-1243,-1115,-1014,-1023,-1116,-1206,-1238,-1229,-1226,-1246,-1262,-1241,-1188,-1141,-1129,-1144,
+-1155,-1144,-1122,-1111,-1116,-1121,-1111,-1089,-1072,-1069,-1072,-1065,-1044,-1022,-1013,-1016,-1017,-1005,-980,-952,
+-932,-922,-917,-912,-903,-890,-873,-859,-856,-872,-906,-953,-1001,-1040,-1069,-1089,-1105,-1122,-1142,-1168,
+-1196,-1222,-1241,-1254,-1265,-1280,-1300,-1324,-1349,-1379,-1416,-1459,-1502,-1538,-1567,-1596,-1635,-1691,-1759,-1828,
+-1892,-1950,-2009,-2071,-2134,-2194,-2247,-2295,-2342,-2389,-2435,-2476,-2512,-2546,-2585,-2632,-2685,-2738,-2787,-2830,
+-2869,-2906,-2945,-2989,-3038,-3088,-3135,-3172,-3197,-3213,-3220,-3222,-3221,-3217,-3212,-3204,-3192,-3174,-3153,-3140,
+-3143,-3157,-3170,-3170,-3163,-3168,-3200,-3245,-3264,-3217,-3092,-2922,-2755,-2621,-2514,-2405,-2281,-2153,-2051,-1989,
+-1954,-1918,-1864,-1795,-1728,-1666,-1602,-1531,-1465,-1433,-1451,-1511,-1572,-1595,-1564,-1499,-1435,-1397,-1394,-1417,
+-1452,-1481,-1482,-1431,-1321,-1182,-1079,-1078,-1206,-1429,-1670,-1855,-1961,-2015,-2065,-2139,-2236,-2331,-2413,-2485,
+-2564,-2649,-2728,-2783,-2819,-2857,-2923,-3018,-3118,-3195,-3239,-3269,-3309,-3366,-3421,-3453,-3456,-3446,-3437,-3431,
+-3415,-3389,-3370,-3387,-3442,-3504,-3532,-3511,-3472,-3458,-3489,-3535,-3550,-3512,-3444,-3389,-3371,-3375,-3367,-3329,
+-3274,-3236,-3240,-3284,-3343,-3393,-3419,-3418,-3398,-3364,-3326,-3289,-3259,-3241,-3233,-3228,-3211,-3174,-3119,-3062,
+-3019,-2989,-2957,-2910,-2858,-2832,-2856,-2923,-2993,-3020,-2988,-2923,-2863,-2827,-2805,-2773,-2721,-2654,-2581,-2503,
+-2412,-2304,-2185,-2066,-1950,-1826,-1683,-1519,-1347,-1182,-1034,-898,-767,-634,-494,-345,-182,-1,193,389,
+574,737,879,1012,1148,1294,1445,1595,1734,1865,1997,2140,2296,2456,2614,2765,2915,3071,3237,3406,
+3571,3727,3873,4012,4144,4268,4387,4505,4626,4752,4883,5021,5169,5324,5476,5612,5727,5827,5923,6015,
+6089,6127,6129,6108,6085,6065,6039,5998,5948,5902,5867,5834,5790,5737,5692,5668,5656,5625,5548,5434,
+5319,5244,5217,5219,5217,5197,5165,5128,5083,5024,4954,4889,4844,4820,4798,4767,4739,4750,4837,5000,
+5202,5385,5511,5577,5612,5638,5655,5641,5583,5493,5408,5360,5352,5358,5348,5306,5245,5180,5118,5052,
+5129,5011,4906,4831,4788,4761,4727,4676,4620,4578,4558,4546,4526,4501,4501,4558,4678,4819,4913,4914,
+4827,4706,4613,4579,4597,4637,4679,4715,4748,4777,4790,4772,4717,4616,4463,4254,4007,3773,3631,3641,
+3805,4054,4285,4423,4464,4462,4475,4519,4566,4582,4560,4517,4470,4409,4314,4186,4058,3966,3911,3861,
+3782,3683,3613,3610,3664,3711,3693,3602,3487,3408,3386,3395,3390,3350,3287,3230,3196,3178,3153,3108,
+3048,2993,2958,2941,2917,2854,2738,2584,2419,2257,2081,1854,1555,1202,839,495,163,-193,-586,-971,
+-1258,-1380,-1349,-1260,-1230,-1314,-1477,-1634,-1716,-1724,-1717,-1760,-1880,-2055,-2240,-2393,-2503,-2578,-2637,-2698,
+-2766,-2830,-2879,-2915,-2952,-3008,-3083,-3155,-3203,-3228,-3257,-3324,-3439,-3580,-3722,-3854,-3978,-4089,-4170,-4211,
+-4234,-4284,-4377,-4466,-4459,-4294,-4000,-3690,-3476,-3391,-3387,-3397,-3396,-3410,-3479,-3614,-3801,-4031,-4304,-4607,
+-4892,-5096,-5182,-5182,-5170,-5209,-5302,-5407,-5475,-5498,-5504,-5531,-5594,-5680,-5759,-5804,-5813,-5806,-5816,-5866,
+-5950,-6037,-6088,-6089,-6060,-6032,-6022,-6023,-6009,-5960,-5876,-5768,-5650,-5532,-5429,-5351,-5304,-5279,-5258,-5229,
+-5191,-5150,-5109,-5057,-4979,-4868,-4738,-4610,-4502,-4418,-4340,-4250,-4133,-3992,-3837,-3674,-3498,-3299,-3074,-2836,
+-2607,-2401,-2208,-2009,-1801,-1600,-1431,-1299,-1184,-1063,-937,-828,-748,-674,-561,-384,-170,27,171,270,
+367,492,646,810,977,1147,1315,1461,1568,1647,1737,1871,2042,2208,2330,2403,2443,2461,2445,2385,
+2301,2242,2246,2310,2395,2467,2524,2590,2676,2765,2829,2863,2891,2937,2999,3053,3088,3131,3229,3404,
+3619,3780,3786,3573,3147,2579,1989,1506,1236,1218,1407,1694,1957,2119,2171,2150,2099,2039,1971,1893,
+1807,1717,1616,1492,1345,1191,1056,949,864,788,714,647,587,522,440,342,245,168,108,48,
+-25,-108,-185,-254,-325,-403,-480,-538,-577,-620,-685,-764,-823,-847,-867,-926,-1030,-1116,-1108,-1003,
+-890,-886,-1021,-1204,-1302,-1255,-1127,-1037,-1052,-1140,-1220,-1247,-1240,-1245,-1272,-1291,-1274,-1227,-1186,-1176,
+-1188,-1195,-1186,-1173,-1172,-1180,-1181,-1165,-1142,-1126,-1122,-1116,-1100,-1077,-1063,-1065,-1073,-1070,-1048,-1014,
+-983,-963,-952,-946,-944,-945,-943,-935,-921,-913,-923,-955,-1003,-1053,-1095,-1126,-1149,-1169,-1188,-1211,
+-1236,-1263,-1285,-1299,-1306,-1313,-1326,-1347,-1374,-1404,-1437,-1474,-1513,-1552,-1586,-1620,-1658,-1707,-1769,-1836,
+-1901,-1957,-2007,-2055,-2108,-2165,-2224,-2282,-2336,-2387,-2436,-2484,-2531,-2579,-2630,-2685,-2743,-2799,-2851,-2896,
+-2935,-2973,-3010,-3051,-3096,-3145,-3197,-3244,-3282,-3306,-3320,-3328,-3334,-3337,-3335,-3331,-3327,-3322,-3314,-3301,
+-3285,-3276,-3281,-3295,-3307,-3309,-3307,-3315,-3334,-3339,-3296,-3188,-3034,-2880,-2754,-2651,-2537,-2392,-2236,-2115,
+-2059,-2051,-2043,-1995,-1907,-1814,-1746,-1702,-1660,-1608,-1565,-1564,-1612,-1678,-1704,-1660,-1563,-1464,-1412,-1416,
+-1456,-1498,-1519,-1504,-1440,-1325,-1187,-1086,-1092,-1230,-1462,-1701,-1874,-1967,-2021,-2089,-2194,-2313,-2415,-2488,
+-2548,-2618,-2699,-2772,-2819,-2848,-2889,-2966,-3079,-3198,-3287,-3332,-3347,-3359,-3383,-3414,-3439,-3451,-3452,-3447,
+-3433,-3403,-3366,-3347,-3372,-3440,-3518,-3563,-3557,-3520,-3488,-3483,-3490,-3482,-3451,-3411,-3387,-3384,-3384,-3365,
+-3329,-3297,-3293,-3321,-3367,-3414,-3454,-3486,-3505,-3501,-3472,-3425,-3378,-3350,-3345,-3356,-3364,-3356,-3325,-3279,
+-3232,-3199,-3177,-3155,-3122,-3085,-3070,-3095,-3153,-3209,-3223,-3182,-3110,-3039,-2987,-2944,-2889,-2813,-2724,-2636,
+-2552,-2464,-2365,-2257,-2149,-2042,-1928,-1796,-1640,-1468,-1295,-1132,-983,-844,-708,-569,-421,-259,-82,106,
+299,479,638,776,903,1037,1185,1341,1494,1633,1764,1898,2048,2213,2382,2541,2690,2838,2997,3167,
+3340,3503,3649,3785,3919,4054,4190,4322,4449,4574,4702,4837,4982,5138,5299,5455,5592,5706,5802,5889,
+5967,6029,6062,6065,6049,6029,6010,5987,5951,5907,5861,5816,5768,5710,5651,5605,5577,5550,5497,5407,
+5302,5220,5184,5185,5190,5175,5137,5091,5045,4997,4938,4873,4815,4771,4737,4697,4652,4628,4662,4782,
+4977,5201,5400,5534,5604,5632,5647,5658,5653,5616,5541,5448,5369,5328,5326,5347,5364,5356,5313,5235,
+5129,5154,5033,4938,4881,4854,4834,4796,4733,4659,4593,4545,4508,4473,4446,4457,4533,4669,4813,4895,
+4872,4761,4627,4534,4505,4514,4524,4524,4529,4562,4618,4661,4645,4548,4383,4183,3976,3780,3609,3490,
+3456,3528,3688,3886,4065,4193,4277,4338,4390,4429,4452,4467,4489,4518,4527,4486,4395,4286,4201,4150,
+4108,4041,3944,3850,3791,3768,3744,3684,3588,3494,3444,3457,3512,3569,3596,3585,3552,3519,3498,3474,
+3423,3331,3212,3103,3031,2985,2923,2811,2659,2509,2391,2282,2111,1827,1443,1034,675,378,93,-231,
+-583,-883,-1055,-1092,-1076,-1115,-1261,-1477,-1674,-1787,-1819,-1831,-1882,-1995,-2149,-2303,-2430,-2520,-2583,-2636,
+-2695,-2767,-2840,-2898,-2932,-2955,-2993,-3055,-3130,-3191,-3232,-3273,-3344,-3450,-3564,-3653,-3709,-3751,-3799,-3849,
+-3881,-3891,-3899,-3920,-3931,-3873,-3713,-3488,-3296,-3230,-3304,-3451,-3582,-3658,-3697,-3744,-3827,-3951,-4116,-4322,
+-4556,-4777,-4936,-5009,-5026,-5043,-5103,-5202,-5301,-5366,-5393,-5407,-5442,-5516,-5623,-5735,-5818,-5847,-5833,-5810,
+-5820,-5873,-5939,-5974,-5960,-5915,-5879,-5871,-5878,-5869,-5828,-5758,-5672,-5577,-5470,-5355,-5246,-5163,-5114,-5087,
+-5062,-5028,-4988,-4948,-4906,-4851,-4769,-4662,-4548,-4453,-4397,-4376,-4360,-4309,-4201,-4041,-3855,-3665,-3475,-3271,
+-3046,-2809,-2577,-2356,-2138,-1912,-1689,-1493,-1339,-1225,-1132,-1052,-988,-937,-867,-736,-529,-282,-60,98,
+209,325,483,679,879,1062,1225,1370,1493,1590,1677,1791,1952,2140,2296,2378,2386,2359,2335,2320,
+2305,2293,2300,2343,2410,2476,2525,2575,2652,2759,2866,2937,2967,2985,3023,3088,3154,3201,3238,3310,
+3454,3664,3869,3959,3831,3446,2857,2203,1658,1366,1366,1588,1888,2130,2245,2245,2186,2115,2047,1974,
+1886,1785,1676,1552,1408,1248,1096,978,899,837,766,679,589,513,448,377,293,208,138,81,
+21,-57,-146,-223,-280,-329,-391,-468,-543,-604,-660,-725,-799,-856,-878,-889,-933,-1031,-1140,-1194,
+-1168,-1116,-1119,-1207,-1316,-1348,-1267,-1132,-1045,-1056,-1132,-1204,-1233,-1239,-1256,-1289,-1311,-1300,-1266,-1239,
+-1235,-1245,-1247,-1237,-1227,-1227,-1231,-1226,-1207,-1188,-1180,-1175,-1160,-1130,-1100,-1086,-1091,-1096,-1084,-1051,
+-1014,-986,-971,-963,-961,-966,-979,-992,-995,-985,-975,-979,-1005,-1047,-1092,-1131,-1163,-1188,-1210,-1231,
+-1253,-1277,-1302,-1324,-1340,-1353,-1368,-1388,-1413,-1440,-1466,-1492,-1519,-1549,-1582,-1622,-1672,-1731,-1799,-1869,
+-1936,-1998,-2053,-2103,-2152,-2200,-2253,-2309,-2367,-2421,-2471,-2518,-2568,-2626,-2694,-2768,-2840,-2905,-2961,-3008,
+-3052,-3094,-3138,-3182,-3226,-3268,-3308,-3345,-3377,-3403,-3422,-3439,-3457,-3475,-3486,-3486,-3477,-3468,-3464,-3463,
+-3455,-3436,-3415,-3408,-3420,-3439,-3446,-3438,-3427,-3423,-3415,-3372,-3268,-3119,-2967,-2850,-2761,-2657,-2505,-2324,
+-2177,-2116,-2131,-2156,-2124,-2024,-1904,-1822,-1791,-1779,-1748,-1702,-1679,-1705,-1758,-1782,-1734,-1629,-1527,-1484,
+-1506,-1554,-1584,-1574,-1527,-1446,-1331,-1199,-1098,-1094,-1220,-1443,-1679,-1856,-1959,-2032,-2125,-2253,-2385,-2486,
+-2548,-2595,-2650,-2716,-2775,-2818,-2857,-2920,-3022,-3150,-3270,-3352,-3385,-3384,-3372,-3370,-3381,-3400,-3418,-3429,
+-3430,-3418,-3394,-3369,-3360,-3383,-3438,-3503,-3550,-3562,-3542,-3508,-3473,-3444,-3420,-3409,-3415,-3433,-3440,-3417,
+-3365,-3314,-3297,-3323,-3367,-3401,-3416,-3425,-3448,-3482,-3505,-3500,-3471,-3444,-3443,-3469,-3507,-3535,-3541,-3527,
+-3501,-3474,-3452,-3435,-3414,-3384,-3348,-3324,-3325,-3350,-3376,-3373,-3330,-3260,-3185,-3119,-3056,-2982,-2891,-2792,
+-2697,-2610,-2522,-2426,-2320,-2211,-2104,-1997,-1878,-1736,-1574,-1401,-1233,-1078,-932,-788,-638,-481,-318,-152,
+18,190,356,507,641,768,904,1057,1223,1386,1536,1673,1812,1964,2129,2295,2453,2602,2754,2918,
+3092,3265,3426,3570,3705,3842,3983,4126,4264,4396,4525,4658,4801,4952,5112,5273,5428,5565,5678,5768,
+5843,5907,5957,5988,5997,5991,5979,5963,5938,5901,5854,5804,5754,5700,5641,5579,5522,5473,5420,5353,
+5277,5211,5175,5171,5174,5162,5126,5079,5034,4991,4943,4891,4847,4821,4808,4786,4742,4691,4671,4722,
+4857,5052,5259,5433,5547,5602,5616,5614,5614,5617,5609,5572,5506,5429,5369,5347,5362,5390,5397,5360,
+5273,5154,5126,5026,4958,4925,4912,4893,4849,4777,4691,4610,4544,4490,4441,4406,4411,4478,4600,4725,
+4789,4755,4650,4539,4481,4481,4497,4486,4445,4417,4444,4522,4593,4576,4429,4173,3878,3617,3424,3293,
+3205,3156,3165,3256,3428,3651,3878,4072,4216,4310,4367,4405,4444,4498,4561,4610,4617,4578,4513,4449,
+4396,4337,4249,4131,4006,3900,3823,3764,3712,3663,3626,3613,3629,3670,3719,3748,3732,3666,3575,3492,
+3429,3364,3267,3139,3023,2963,2955,2942,2860,2700,2515,2365,2251,2112,1889,1584,1266,1007,808,606,
+334,-7,-341,-587,-727,-826,-973,-1203,-1477,-1715,-1865,-1937,-1986,-2060,-2172,-2304,-2428,-2527,-2599,-2649,
+-2689,-2734,-2794,-2867,-2934,-2983,-3014,-3050,-3106,-3182,-3256,-3317,-3372,-3438,-3513,-3576,-3601,-3589,-3568,-3560,
+-3561,-3544,-3500,-3445,-3406,-3378,-3320,-3202,-3049,-2946,-2975,-3151,-3411,-3661,-3844,-3954,-4019,-4063,-4104,-4157,
+-4242,-4364,-4506,-4641,-4752,-4844,-4933,-5023,-5107,-5179,-5244,-5313,-5390,-5464,-5528,-5583,-5634,-5673,-5686,-5665,
+-5631,-5616,-5637,-5679,-5709,-5709,-5689,-5674,-5673,-5665,-5628,-5559,-5477,-5400,-5326,-5234,-5116,-4987,-4879,-4813,
+-4786,-4774,-4757,-4731,-4707,-4692,-4679,-4648,-4585,-4497,-4416,-4379,-4399,-4444,-4455,-4378,-4209,-3989,-3770,-3574,
+-3386,-3177,-2940,-2689,-2445,-2210,-1975,-1744,-1540,-1389,-1294,-1239,-1197,-1154,-1098,-1008,-857,-639,-388,-159,
+15,157,312,514,748,975,1164,1316,1442,1551,1647,1746,1873,2040,2222,2367,2434,2427,2386,2351,
+2337,2336,2347,2375,2425,2485,2537,2581,2640,2733,2852,2961,3025,3044,3053,3088,3161,3247,3319,3371,
+3430,3537,3706,3896,4004,3914,3556,2971,2306,1764,1497,1536,1782,2073,2275,2340,2301,2222,2142,2063,
+1967,1846,1714,1584,1461,1334,1200,1069,959,875,798,706,597,492,413,359,309,245,171,100,
+37,-29,-110,-196,-265,-306,-340,-394,-477,-568,-644,-703,-759,-819,-866,-884,-888,-924,-1020,-1150,
+-1252,-1284,-1267,-1264,-1308,-1364,-1363,-1279,-1157,-1076,-1076,-1132,-1187,-1215,-1229,-1254,-1291,-1316,-1312,-1289,
+-1269,-1263,-1260,-1247,-1229,-1218,-1221,-1227,-1223,-1213,-1209,-1215,-1219,-1203,-1168,-1133,-1119,-1123,-1125,-1108,
+-1074,-1041,-1020,-1008,-999,-993,-999,-1018,-1039,-1048,-1040,-1028,-1028,-1047,-1080,-1117,-1154,-1188,-1220,-1248,
+-1273,-1298,-1325,-1354,-1379,-1399,-1416,-1434,-1455,-1477,-1499,-1519,-1538,-1559,-1583,-1614,-1659,-1721,-1798,-1879,
+-1954,-2021,-2080,-2136,-2191,-2242,-2291,-2342,-2396,-2452,-2504,-2548,-2591,-2644,-2715,-2803,-2896,-2979,-3048,-3102,
+-3151,-3199,-3249,-3299,-3349,-3393,-3431,-3461,-3483,-3498,-3510,-3522,-3541,-3567,-3595,-3614,-3614,-3599,-3580,-3570,
+-3570,-3566,-3548,-3522,-3507,-3516,-3538,-3550,-3541,-3523,-3513,-3509,-3475,-3378,-3224,-3063,-2943,-2867,-2784,-2641,
+-2445,-2265,-2174,-2183,-2226,-2219,-2131,-2004,-1907,-1870,-1868,-1855,-1819,-1789,-1796,-1828,-1837,-1786,-1692,-1618,
+-1612,-1666,-1722,-1726,-1670,-1579,-1478,-1367,-1246,-1146,-1126,-1229,-1437,-1674,-1866,-1991,-2083,-2188,-2317,-2442,
+-2532,-2585,-2625,-2672,-2727,-2779,-2826,-2885,-2972,-3088,-3211,-3312,-3375,-3399,-3397,-3384,-3372,-3370,-3377,-3386,
+-3391,-3386,-3376,-3369,-3370,-3380,-3400,-3430,-3470,-3514,-3549,-3561,-3541,-3493,-3438,-3402,-3406,-3443,-3480,-3475,
+-3413,-3320,-3252,-3247,-3298,-3359,-3386,-3377,-3365,-3385,-3435,-3485,-3507,-3508,-3515,-3552,-3612,-3671,-3707,-3717,
+-3709,-3694,-3678,-3662,-3647,-3631,-3608,-3576,-3540,-3509,-3490,-3475,-3447,-3395,-3323,-3242,-3163,-3084,-2998,-2903,
+-2806,-2717,-2639,-2563,-2478,-2377,-2267,-2157,-2052,-1943,-1817,-1668,-1501,-1333,-1175,-1026,-876,-717,-553,-391,
+-236,-84,68,222,369,505,636,775,931,1099,1266,1421,1566,1711,1867,2030,2193,2351,2508,2670,
+2842,3017,3187,3343,3487,3626,3767,3911,4054,4193,4328,4466,4612,4766,4925,5085,5241,5388,5520,5628,
+5712,5777,5831,5878,5916,5938,5944,5934,5910,5872,5822,5766,5712,5663,5616,5564,5502,5433,5362,5292,
+5227,5176,5146,5135,5129,5110,5076,5037,5005,4978,4947,4908,4880,4885,4922,4957,4949,4885,4802,4763,
+4814,4954,5141,5323,5466,5557,5600,5610,5603,5598,5606,5620,5624,5600,5549,5490,5445,5422,5411,5386,
+5329,5236,5126,5112,5032,4975,4936,4902,4856,4790,4707,4622,4550,4497,4453,4410,4370,4355,4389,4474,
+4570,4624,4605,4535,4472,4461,4496,4526,4508,4447,4397,4408,4478,4540,4505,4321,4008,3649,3330,3104,
+2964,2874,2809,2782,2832,2988,3242,3543,3830,4058,4216,4316,4378,4424,4467,4511,4551,4579,4593,4593,
+4582,4549,4482,4379,4255,4130,4022,3935,3873,3838,3832,3842,3850,3851,3853,3863,3865,3818,3698,3524,
+3352,3227,3142,3057,2955,2868,2845,2889,2936,2899,2746,2525,2313,2148,2006,1849,1673,1513,1391,1273,
+1085,780,390,7,-283,-476,-634,-837,-1111,-1415,-1680,-1864,-1981,-2070,-2166,-2274,-2383,-2482,-2569,-2647,
+-2715,-2772,-2821,-2874,-2936,-3001,-3057,-3104,-3150,-3208,-3280,-3353,-3418,-3472,-3523,-3569,-3598,-3605,-3601,-3607,
+-3627,-3636,-3598,-3505,-3393,-3301,-3237,-3163,-3038,-2874,-2747,-2741,-2894,-3170,-3492,-3790,-4025,-4183,-4263,-4275,
+-4247,-4219,-4224,-4277,-4376,-4513,-4669,-4817,-4927,-4992,-5043,-5131,-5280,-5457,-5596,-5647,-5613,-5541,-5475,-5422,
+-5374,-5325,-5293,-5293,-5324,-5365,-5401,-5432,-5464,-5484,-5469,-5401,-5292,-5173,-5071,-4983,-4885,-4764,-4634,-4528,
+-4472,-4466,-4482,-4493,-4490,-4483,-4487,-4504,-4514,-4495,-4441,-4381,-4360,-4403,-4484,-4533,-4480,-4308,-4062,-3813,
+-3601,-3416,-3217,-2981,-2719,-2459,-2214,-1982,-1763,-1579,-1457,-1401,-1381,-1353,-1289,-1185,-1043,-864,-650,-419,
+-200,-12,158,345,568,808,1030,1208,1345,1461,1570,1677,1790,1922,2079,2246,2387,2477,2514,2520,
+2512,2496,2472,2451,2452,2481,2530,2583,2638,2710,2805,2912,2999,3046,3061,3076,3123,3208,3316,3418,
+3499,3567,3650,3772,3910,3984,3879,3522,2946,2306,1805,1590,1671,1928,2196,2354,2378,2314,2221,2131,
+2036,1918,1773,1624,1492,1385,1286,1176,1052,927,816,717,617,515,423,354,305,257,191,110,
+31,-34,-94,-159,-224,-275,-306,-336,-391,-480,-580,-663,-723,-772,-822,-863,-880,-883,-912,-998,
+-1123,-1227,-1263,-1240,-1215,-1233,-1281,-1305,-1270,-1197,-1139,-1130,-1159,-1189,-1202,-1210,-1234,-1271,-1302,-1311,
+-1301,-1287,-1273,-1254,-1226,-1202,-1195,-1205,-1216,-1217,-1213,-1218,-1235,-1248,-1238,-1207,-1175,-1161,-1163,-1162,
+-1146,-1120,-1098,-1084,-1071,-1053,-1037,-1035,-1050,-1068,-1075,-1066,-1055,-1055,-1070,-1097,-1130,-1168,-1211,-1254,
+-1291,-1322,-1351,-1385,-1420,-1451,-1471,-1484,-1494,-1506,-1519,-1534,-1552,-1574,-1599,-1627,-1659,-1704,-1767,-1845,
+-1926,-2000,-2064,-2121,-2176,-2228,-2278,-2326,-2378,-2434,-2490,-2538,-2578,-2619,-2677,-2759,-2858,-2956,-3038,-3103,
+-3158,-3213,-3270,-3326,-3378,-3425,-3466,-3502,-3532,-3553,-3566,-3575,-3584,-3598,-3622,-3650,-3672,-3676,-3661,-3639,
+-3625,-3625,-3625,-3613,-3590,-3575,-3584,-3608,-3623,-3616,-3601,-3601,-3614,-3603,-3522,-3368,-3192,-3058,-2985,-2924,
+-2808,-2618,-2409,-2265,-2223,-2248,-2260,-2211,-2114,-2023,-1976,-1965,-1959,-1940,-1920,-1915,-1916,-1894,-1831,-1756,
+-1722,-1762,-1846,-1902,-1876,-1772,-1637,-1515,-1407,-1302,-1214,-1192,-1284,-1481,-1719,-1919,-2054,-2148,-2244,-2353,
+-2456,-2531,-2581,-2627,-2682,-2742,-2799,-2857,-2930,-3027,-3136,-3233,-3303,-3348,-3376,-3393,-3395,-3386,-3372,-3361,
+-3351,-3334,-3310,-3291,-3293,-3317,-3351,-3380,-3403,-3434,-3485,-3544,-3584,-3578,-3525,-3456,-3411,-3414,-3449,-3473,
+-3442,-3351,-3242,-3177,-3189,-3258,-3329,-3362,-3361,-3366,-3408,-3479,-3544,-3581,-3601,-3637,-3705,-3787,-3851,-3875,
+-3866,-3842,-3818,-3796,-3777,-3764,-3758,-3753,-3736,-3700,-3648,-3592,-3536,-3477,-3406,-3323,-3236,-3151,-3067,-2978,
+-2883,-2788,-2706,-2642,-2588,-2524,-2438,-2330,-2214,-2103,-1998,-1884,-1748,-1590,-1424,-1264,-1113,-960,-798,-632,
+-472,-324,-183,-39,109,258,399,535,675,827,986,1142,1292,1441,1598,1765,1935,2103,2267,2434,
+2606,2782,2953,3115,3266,3411,3553,3694,3834,3973,4112,4255,4406,4567,4733,4896,5051,5197,5333,5455,
+5557,5636,5694,5745,5797,5846,5882,5894,5879,5841,5788,5728,5669,5617,5572,5528,5478,5414,5341,5266,
+5199,5147,5114,5092,5069,5035,4993,4955,4934,4928,4917,4890,4861,4868,4933,5032,5098,5073,4958,4823,
+4757,4810,4965,5163,5345,5480,5569,5621,5646,5651,5648,5647,5652,5658,5653,5633,5597,5552,5502,5446,
+5379,5298,5205,5112,5117,5041,4968,4893,4810,4717,4616,4517,4435,4378,4348,4330,4309,4279,4258,4271,
+4330,4414,4477,4491,4465,4443,4459,4505,4539,4524,4469,4418,4406,4425,4419,4323,4109,3800,3459,3153,
+2920,2760,2647,2563,2517,2548,2691,2949,3278,3614,3898,4105,4236,4309,4344,4357,4362,4372,4394,4435,
+4485,4525,4526,4473,4377,4269,4179,4112,4057,4011,3982,3981,3998,4005,3986,3957,3936,3916,3851,3699,
+3472,3238,3063,2954,2871,2782,2707,2694,2756,2836,2847,2740,2542,2319,2121,1961,1835,1749,1704,1668,
+1562,1317,928,476,79,-194,-362,-507,-706,-975,-1272,-1537,-1739,-1884,-1999,-2100,-2190,-2270,-2346,-2435,
+-2546,-2672,-2795,-2898,-2974,-3030,-3078,-3123,-3173,-3230,-3294,-3361,-3424,-3478,-3526,-3570,-3611,-3650,-3700,-3778,
+-3887,-3997,-4050,-3998,-3845,-3646,-3467,-3327,-3192,-3015,-2799,-2608,-2528,-2615,-2861,-3211,-3598,-3958,-4240,-4410,
+-4464,-4432,-4362,-4299,-4272,-4300,-4391,-4530,-4676,-4781,-4835,-4888,-5011,-5228,-5480,-5660,-5691,-5581,-5407,-5248,
+-5137,-5063,-5006,-4968,-4960,-4986,-5037,-5104,-5182,-5260,-5317,-5318,-5249,-5120,-4967,-4820,-4687,-4561,-4433,-4316,
+-4233,-4205,-4227,-4272,-4310,-4323,-4317,-4312,-4320,-4337,-4342,-4326,-4307,-4320,-4387,-4485,-4547,-4504,-4335,-4083,
+-3822,-3600,-3412,-3216,-2983,-2718,-2448,-2197,-1968,-1765,-1607,-1517,-1494,-1498,-1470,-1376,-1219,-1029,-830,-629,
+-422,-213,-9,188,392,608,823,1016,1171,1295,1407,1523,1646,1775,1912,2056,2202,2340,2462,2564,
+2640,2678,2667,2615,2554,2519,2529,2577,2642,2712,2788,2867,2940,2995,3031,3064,3112,3186,3285,3397,
+3510,3611,3698,3781,3874,3958,3967,3802,3403,2819,2209,1766,1613,1730,1984,2220,2341,2341,2265,2166,
+2067,1960,1834,1689,1542,1415,1315,1224,1121,995,859,735,636,554,478,405,338,278,214,137,
+52,-26,-86,-132,-173,-214,-249,-276,-307,-364,-452,-554,-644,-712,-766,-816,-854,-873,-880,-908,
+-981,-1082,-1157,-1162,-1107,-1056,-1064,-1132,-1210,-1244,-1227,-1192,-1173,-1175,-1181,-1179,-1178,-1195,-1231,-1270,
+-1296,-1305,-1301,-1288,-1265,-1236,-1217,-1218,-1234,-1246,-1243,-1232,-1230,-1243,-1257,-1255,-1234,-1210,-1195,-1190,
+-1182,-1166,-1149,-1138,-1131,-1117,-1093,-1072,-1067,-1077,-1087,-1086,-1074,-1065,-1069,-1085,-1109,-1139,-1180,-1232,
+-1284,-1327,-1359,-1390,-1428,-1469,-1504,-1525,-1536,-1544,-1551,-1560,-1571,-1588,-1613,-1645,-1678,-1713,-1753,-1806,
+-1872,-1943,-2011,-2074,-2130,-2182,-2229,-2275,-2323,-2379,-2440,-2497,-2543,-2580,-2623,-2687,-2775,-2872,-2958,-3025,
+-3080,-3135,-3199,-3265,-3326,-3374,-3414,-3451,-3488,-3526,-3559,-3585,-3603,-3615,-3624,-3638,-3660,-3683,-3695,-3689,
+-3673,-3660,-3659,-3663,-3658,-3644,-3636,-3648,-3674,-3691,-3688,-3676,-3683,-3711,-3720,-3662,-3519,-3337,-3185,-3101,
+-3053,-2974,-2819,-2609,-2414,-2293,-2256,-2265,-2266,-2236,-2185,-2139,-2113,-2103,-2099,-2091,-2073,-2036,-1975,-1902,
+-1849,-1855,-1922,-2008,-2043,-1983,-1845,-1683,-1544,-1435,-1340,-1267,-1257,-1352,-1544,-1771,-1963,-2090,-2175,-2258,
+-2351,-2439,-2508,-2561,-2617,-2684,-2755,-2820,-2885,-2963,-3055,-3144,-3211,-3254,-3287,-3321,-3350,-3361,-3349,-3325,
+-3303,-3283,-3254,-3214,-3181,-3178,-3211,-3262,-3309,-3349,-3397,-3463,-3536,-3580,-3572,-3516,-3447,-3404,-3398,-3411,
+-3404,-3354,-3271,-3193,-3161,-3188,-3251,-3310,-3346,-3374,-3425,-3510,-3603,-3671,-3704,-3730,-3787,-3880,-3977,-4035,
+-4039,-4005,-3961,-3923,-3891,-3864,-3847,-3845,-3851,-3844,-3810,-3751,-3676,-3596,-3513,-3424,-3332,-3244,-3165,-3091,
+-3009,-2914,-2814,-2727,-2665,-2621,-2572,-2497,-2390,-2267,-2148,-2043,-1938,-1815,-1668,-1506,-1343,-1187,-1030,-868,
+-704,-548,-405,-266,-123,25,174,315,453,596,745,895,1040,1184,1339,1511,1694,1875,2050,2220,
+2394,2570,2741,2903,3056,3205,3354,3500,3641,3776,3911,4053,4205,4368,4539,4709,4870,5017,5150,5273,
+5386,5480,5551,5603,5650,5703,5759,5801,5813,5792,5752,5706,5662,5620,5576,5524,5464,5397,5325,5256,
+5198,5154,5119,5087,5047,4995,4940,4894,4873,4876,4882,4868,4837,4822,4864,4969,5082,5121,5038,4864,
+4695,4631,4709,4895,5119,5321,5474,5583,5655,5699,5714,5701,5665,5618,5577,5557,5561,5575,5575,5542,
+5475,5386,5290,5199,5117,5073,4992,4902,4801,4688,4571,4456,4352,4269,4214,4185,4174,4166,4152,4142,
+4160,4221,4312,4396,4439,4442,4436,4449,4478,4495,4480,4443,4409,4385,4340,4231,4038,3780,3503,3249,
+3035,2860,2714,2588,2485,2422,2432,2548,2780,3100,3449,3762,3994,4134,4196,4209,4201,4187,4172,4163,
+4171,4202,4243,4262,4230,4154,4072,4025,4017,4022,4013,3989,3968,3958,3944,3911,3869,3835,3806,3740,
+3592,3370,3133,2946,2825,2731,2632,2542,2505,2542,2612,2645,2595,2469,2302,2126,1963,1838,1774,1764,
+1744,1616,1323,899,456,109,-104,-236,-376,-579,-838,-1106,-1338,-1519,-1659,-1772,-1865,-1936,-1992,-2052,
+-2145,-2287,-2474,-2679,-2863,-2996,-3074,-3112,-3142,-3186,-3251,-3328,-3401,-3462,-3515,-3568,-3625,-3688,-3768,-3883,
+-4050,-4253,-4427,-4488,-4381,-4128,-3812,-3524,-3299,-3109,-2907,-2686,-2495,-2407,-2470,-2689,-3028,-3430,-3831,-4168,
+-4398,-4513,-4542,-4522,-4479,-4427,-4383,-4377,-4425,-4505,-4579,-4629,-4691,-4825,-5045,-5287,-5441,-5436,-5291,-5091,
+-4922,-4816,-4761,-4730,-4713,-4715,-4741,-4793,-4869,-4967,-5075,-5162,-5195,-5154,-5043,-4890,-4723,-4561,-4411,-4277,
+-4165,-4091,-4066,-4089,-4140,-4188,-4207,-4191,-4158,-4132,-4125,-4133,-4153,-4190,-4257,-4358,-4462,-4516,-4468,-4305,
+-4066,-3815,-3596,-3410,-3220,-2996,-2734,-2458,-2197,-1964,-1765,-1615,-1533,-1515,-1523,-1498,-1399,-1232,-1036,-846,
+-668,-482,-276,-51,175,394,603,797,970,1116,1238,1351,1468,1599,1739,1879,2012,2135,2258,2391,
+2532,2659,2737,2745,2692,2622,2581,2592,2648,2725,2805,2878,2938,2981,3016,3058,3125,3219,3328,3433,
+3530,3623,3717,3812,3905,3986,4021,3941,3672,3194,2587,2022,1670,1603,1762,2008,2206,2295,2282,2209,
+2111,2002,1884,1754,1614,1473,1343,1233,1136,1036,921,797,684,597,529,464,389,308,234,169,
+109,47,-13,-68,-113,-152,-188,-222,-251,-285,-337,-417,-514,-611,-692,-755,-802,-835,-852,-865,
+-898,-966,-1051,-1105,-1094,-1028,-969,-977,-1060,-1169,-1238,-1240,-1199,-1158,-1140,-1139,-1138,-1138,-1149,-1179,
+-1221,-1257,-1279,-1286,-1280,-1265,-1247,-1238,-1245,-1260,-1268,-1260,-1240,-1229,-1235,-1250,-1259,-1254,-1241,-1227,
+-1214,-1197,-1177,-1164,-1159,-1156,-1144,-1124,-1110,-1111,-1121,-1124,-1114,-1097,-1090,-1098,-1114,-1133,-1158,-1198,
+-1253,-1309,-1354,-1386,-1416,-1454,-1496,-1531,-1555,-1571,-1588,-1606,-1621,-1632,-1644,-1662,-1690,-1723,-1760,-1798,
+-1842,-1893,-1951,-2012,-2074,-2132,-2184,-2230,-2275,-2328,-2392,-2458,-2513,-2553,-2588,-2635,-2707,-2797,-2883,-2950,
+-2999,-3044,-3101,-3172,-3247,-3310,-3358,-3395,-3431,-3472,-3517,-3561,-3601,-3631,-3648,-3656,-3664,-3680,-3704,-3724,
+-3728,-3718,-3707,-3704,-3709,-3710,-3704,-3703,-3719,-3747,-3768,-3767,-3756,-3758,-3781,-3796,-3758,-3642,-3477,-3319,
+-3213,-3156,-3101,-2999,-2828,-2615,-2421,-2301,-2274,-2311,-2356,-2367,-2338,-2298,-2280,-2282,-2280,-2244,-2169,-2079,
+-2011,-1992,-2026,-2087,-2134,-2123,-2038,-1899,-1745,-1606,-1488,-1385,-1312,-1307,-1399,-1577,-1781,-1950,-2066,-2154,
+-2247,-2353,-2452,-2527,-2584,-2641,-2708,-2776,-2838,-2899,-2970,-3050,-3122,-3171,-3196,-3215,-3235,-3251,-3248,-3225,
+-3199,-3186,-3181,-3165,-3129,-3091,-3079,-3104,-3157,-3218,-3280,-3350,-3427,-3492,-3518,-3493,-3437,-3386,-3361,-3355,
+-3344,-3313,-3266,-3222,-3203,-3214,-3243,-3270,-3290,-3317,-3376,-3480,-3608,-3717,-3775,-3795,-3825,-3901,-4017,-4124,
+-4177,-4167,-4123,-4078,-4043,-4013,-3983,-3959,-3947,-3940,-3921,-3878,-3812,-3734,-3651,-3562,-3468,-3376,-3297,-3234,
+-3177,-3107,-3014,-2907,-2807,-2731,-2675,-2620,-2541,-2432,-2307,-2189,-2087,-1991,-1881,-1744,-1587,-1423,-1261,-1099,
+-937,-778,-627,-484,-343,-196,-46,98,235,373,519,673,826,974,1125,1290,1472,1662,1847,2023,
+2198,2375,2549,2712,2862,3008,3160,3318,3472,3615,3751,3890,4038,4198,4365,4534,4698,4851,4987,5108,
+5217,5315,5396,5453,5492,5527,5572,5623,5660,5669,5653,5631,5621,5622,5614,5579,5508,5412,5312,5228,
+5171,5141,5123,5098,5053,4990,4922,4870,4847,4850,4862,4861,4842,4825,4847,4928,5037,5105,5067,4915,
+4716,4570,4546,4653,4846,5068,5276,5448,5576,5656,5693,5688,5643,5557,5447,5350,5308,5338,5416,5486,
+5500,5448,5353,5249,5155,5073,4961,4888,4809,4722,4632,4541,4454,4372,4296,4230,4181,4150,4133,4121,
+4117,4138,4197,4287,4372,4419,4424,4414,4411,4415,4406,4376,4345,4331,4315,4239,4056,3774,3463,3207,
+3040,2940,2857,2753,2625,2493,2386,2341,2391,2562,2847,3200,3550,3824,3984,4042,4045,4034,4021,3985,
+3908,3809,3731,3705,3713,3707,3662,3603,3586,3633,3715,3774,3778,3739,3688,3642,3603,3571,3551,3531,
+3476,3357,3179,2990,2837,2724,2621,2507,2397,2331,2323,2343,2346,2311,2244,2156,2047,1919,1801,1730,
+1708,1674,1541,1271,914,575,327,163,12,-191,-453,-727,-957,-1125,-1247,-1352,-1453,-1547,-1624,-1688,
+-1756,-1851,-1995,-2192,-2426,-2661,-2856,-2985,-3053,-3092,-3140,-3213,-3304,-3392,-3467,-3536,-3609,-3694,-3790,-3908,
+-4067,-4277,-4506,-4672,-4680,-4486,-4136,-3739,-3398,-3152,-2969,-2799,-2627,-2487,-2432,-2493,-2671,-2941,-3265,-3594,
+-3877,-4082,-4216,-4310,-4388,-4438,-4435,-4378,-4304,-4263,-4271,-4307,-4348,-4404,-4510,-4668,-4827,-4908,-4868,-4738,
+-4592,-4495,-4462,-4472,-4500,-4531,-4565,-4604,-4657,-4734,-4836,-4950,-5045,-5092,-5076,-5001,-4886,-4749,-4606,-4466,
+-4330,-4201,-4090,-4020,-4005,-4038,-4085,-4109,-4092,-4045,-3995,-3966,-3965,-4000,-4073,-4184,-4312,-4419,-4458,-4399,
+-4246,-4032,-3803,-3593,-3408,-3225,-3013,-2760,-2484,-2213,-1970,-1767,-1612,-1516,-1478,-1471,-1448,-1367,-1227,-1059,
+-897,-746,-584,-385,-151,94,330,548,750,937,1100,1235,1348,1458,1582,1721,1862,1988,2096,2200,
+2323,2468,2611,2713,2745,2716,2667,2641,2659,2717,2797,2884,2965,3028,3071,3106,3159,3250,3375,3509,
+3623,3706,3771,3837,3917,4003,4064,4036,3844,3443,2870,2260,1789,1583,1643,1860,2090,2237,2284,2259,
+2194,2100,1981,1846,1705,1564,1425,1292,1171,1069,977,882,778,675,586,510,432,344,254,184,
+147,132,113,74,13,-54,-118,-173,-219,-258,-295,-342,-410,-499,-596,-680,-740,-778,-800,-815,
+-834,-869,-930,-1008,-1071,-1087,-1056,-1018,-1027,-1100,-1199,-1260,-1247,-1179,-1111,-1080,-1085,-1101,-1109,-1113,
+-1130,-1161,-1195,-1217,-1224,-1221,-1214,-1207,-1204,-1209,-1221,-1229,-1227,-1216,-1210,-1220,-1243,-1266,-1279,-1278,
+-1269,-1253,-1233,-1214,-1202,-1199,-1195,-1185,-1171,-1165,-1173,-1185,-1184,-1168,-1147,-1140,-1148,-1162,-1175,-1193,
+-1229,-1282,-1340,-1387,-1422,-1453,-1489,-1524,-1552,-1572,-1592,-1620,-1651,-1677,-1689,-1693,-1700,-1718,-1751,-1793,
+-1837,-1881,-1923,-1968,-2020,-2079,-2140,-2194,-2241,-2291,-2352,-2422,-2486,-2532,-2563,-2597,-2654,-2736,-2828,-2904,
+-2956,-2993,-3034,-3094,-3171,-3249,-3316,-3368,-3412,-3455,-3500,-3547,-3594,-3638,-3673,-3696,-3707,-3716,-3732,-3756,
+-3778,-3784,-3774,-3761,-3757,-3763,-3768,-3768,-3770,-3786,-3813,-3836,-3841,-3832,-3826,-3832,-3837,-3812,-3738,-3617,
+-3475,-3345,-3251,-3189,-3128,-3020,-2838,-2609,-2413,-2329,-2367,-2463,-2526,-2517,-2470,-2442,-2449,-2450,-2399,-2295,
+-2190,-2140,-2156,-2200,-2225,-2202,-2137,-2048,-1950,-1847,-1735,-1611,-1485,-1389,-1363,-1431,-1575,-1744,-1892,-2010,
+-2121,-2250,-2391,-2515,-2603,-2660,-2709,-2762,-2815,-2861,-2905,-2957,-3020,-3079,-3118,-3132,-3132,-3125,-3111,-3086,
+-3059,-3046,-3057,-3078,-3086,-3067,-3037,-3020,-3035,-3078,-3137,-3205,-3282,-3355,-3402,-3402,-3364,-3318,-3295,-3297,
+-3299,-3281,-3244,-3215,-3216,-3245,-3278,-3289,-3274,-3259,-3283,-3373,-3519,-3674,-3783,-3827,-3839,-3875,-3968,-4097,
+-4205,-4248,-4230,-4188,-4158,-4142,-4127,-4104,-4076,-4050,-4022,-3979,-3916,-3841,-3765,-3689,-3609,-3521,-3437,-3369,
+-3318,-3271,-3208,-3119,-3013,-2907,-2816,-2739,-2661,-2570,-2462,-2347,-2241,-2149,-2059,-1955,-1826,-1676,-1514,-1350,
+-1187,-1026,-872,-725,-582,-433,-278,-123,22,158,296,447,609,773,934,1097,1271,1453,1636,1812,
+1986,2165,2349,2524,2679,2820,2963,3119,3285,3447,3597,3740,3889,4047,4211,4373,4532,4686,4829,4954,
+5059,5147,5222,5281,5318,5338,5358,5389,5428,5456,5462,5457,5464,5497,5543,5565,5532,5439,5310,5183,
+5093,5052,5044,5039,5009,4946,4867,4802,4772,4776,4795,4807,4805,4808,4847,4939,5060,5152,5151,5042,
+4869,4716,4645,4669,4760,4887,5038,5207,5373,5500,5561,5556,5504,5419,5305,5175,5068,5034,5096,5220,
+5334,5377,5334,5237,5130,5038,4961,4864,4818,4772,4727,4682,4639,4595,4544,4483,4415,4352,4307,4282,
+4266,4253,4252,4276,4322,4366,4379,4362,4340,4333,4330,4304,4249,4198,4183,4184,4125,3937,3626,3285,
+3027,2904,2877,2861,2789,2647,2462,2273,2124,2060,2127,2349,2704,3115,3479,3717,3819,3837,3830,3809,
+3730,3552,3300,3066,2938,2924,2951,2946,2910,2913,3013,3189,3352,3422,3384,3289,3203,3163,3171,3202,
+3223,3197,3110,2982,2854,2751,2661,2556,2427,2301,2211,2158,2112,2048,1975,1920,1889,1860,1806,1735,
+1676,1640,1590,1472,1273,1042,845,700,558,350,52,-282,-571,-763,-866,-933,-1012,-1119,-1242,-1364,
+-1479,-1587,-1696,-1815,-1957,-2135,-2350,-2573,-2768,-2908,-2997,-3064,-3135,-3217,-3301,-3382,-3465,-3558,-3664,-3782,
+-3918,-4088,-4292,-4492,-4603,-4544,-4295,-3923,-3546,-3259,-3079,-2958,-2841,-2713,-2604,-2552,-2576,-2673,-2827,-3021,
+-3220,-3389,-3508,-3599,-3704,-3844,-3984,-4066,-4062,-4003,-3949,-3938,-3959,-3987,-4020,-4077,-4161,-4238,-4263,-4222,
+-4148,-4096,-4098,-4148,-4223,-4305,-4383,-4453,-4518,-4587,-4677,-4787,-4896,-4971,-4992,-4965,-4907,-4834,-4754,-4667,
+-4565,-4438,-4283,-4119,-3987,-3928,-3945,-3997,-4034,-4031,-3998,-3961,-3934,-3923,-3937,-3996,-4104,-4235,-4340,-4373,
+-4317,-4185,-4002,-3794,-3585,-3388,-3199,-2994,-2754,-2483,-2207,-1960,-1761,-1610,-1508,-1450,-1423,-1394,-1324,-1201,
+-1048,-898,-761,-618,-443,-227,11,248,476,695,905,1092,1243,1358,1461,1577,1712,1854,1981,2088,
+2187,2302,2441,2582,2691,2741,2737,2708,2690,2703,2752,2831,2932,3039,3133,3202,3249,3300,3380,3501,
+3645,3781,3880,3937,3972,4013,4061,4072,3958,3641,3114,2478,1916,1595,1573,1772,2035,2229,2307,2300,
+2256,2196,2109,1985,1837,1688,1550,1419,1291,1170,1065,974,884,783,673,571,484,404,320,242,
+191,181,199,207,174,98,2,-87,-162,-224,-277,-323,-372,-433,-512,-599,-673,-721,-748,-769,
+-791,-814,-837,-873,-936,-1018,-1085,-1107,-1090,-1081,-1119,-1195,-1254,-1245,-1171,-1088,-1050,-1062,-1088,-1097,
+-1089,-1087,-1105,-1133,-1151,-1152,-1147,-1144,-1144,-1143,-1145,-1153,-1165,-1176,-1183,-1192,-1212,-1245,-1279,-1302,
+-1309,-1304,-1293,-1279,-1267,-1261,-1259,-1254,-1242,-1228,-1223,-1230,-1240,-1239,-1222,-1203,-1196,-1203,-1213,-1222,
+-1235,-1266,-1315,-1371,-1420,-1460,-1495,-1527,-1554,-1570,-1581,-1598,-1626,-1661,-1688,-1700,-1702,-1706,-1724,-1760,
+-1811,-1867,-1917,-1957,-1994,-2037,-2090,-2148,-2202,-2251,-2306,-2371,-2440,-2495,-2528,-2551,-2590,-2660,-2755,-2848,
+-2918,-2962,-2996,-3039,-3100,-3173,-3247,-3315,-3375,-3430,-3483,-3534,-3583,-3630,-3674,-3710,-3735,-3750,-3763,-3782,
+-3807,-3827,-3829,-3817,-3804,-3802,-3812,-3821,-3823,-3824,-3835,-3858,-3882,-3896,-3897,-3893,-3885,-3873,-3852,-3816,
+-3754,-3652,-3512,-3369,-3269,-3222,-3175,-3053,-2836,-2598,-2457,-2469,-2576,-2664,-2664,-2609,-2574,-2585,-2592,-2533,
+-2409,-2294,-2255,-2287,-2322,-2299,-2211,-2108,-2035,-1999,-1966,-1897,-1780,-1634,-1507,-1443,-1468,-1567,-1702,-1838,
+-1970,-2113,-2276,-2443,-2581,-2673,-2727,-2769,-2812,-2852,-2880,-2901,-2926,-2964,-3006,-3035,-3042,-3028,-3002,-2972,
+-2945,-2930,-2937,-2965,-2995,-3010,-3001,-2983,-2976,-2991,-3024,-3069,-3125,-3189,-3248,-3279,-3270,-3235,-3205,-3204,
+-3225,-3240,-3233,-3214,-3210,-3236,-3275,-3297,-3286,-3255,-3245,-3296,-3419,-3585,-3741,-3838,-3871,-3885,-3934,-4040,
+-4170,-4264,-4289,-4260,-4220,-4200,-4197,-4191,-4172,-4146,-4118,-4081,-4025,-3948,-3866,-3791,-3724,-3654,-3579,-3506,
+-3443,-3389,-3332,-3260,-3172,-3076,-2980,-2888,-2796,-2700,-2602,-2503,-2410,-2323,-2238,-2146,-2037,-1909,-1765,-1612,
+-1453,-1293,-1136,-986,-842,-697,-541,-376,-212,-57,88,234,389,555,724,893,1065,1240,1415,1583,
+1749,1921,2107,2298,2476,2629,2769,2913,3073,3241,3404,3558,3710,3871,4038,4203,4360,4510,4655,4789,
+4900,4983,5043,5089,5123,5142,5150,5160,5183,5213,5235,5239,5240,5262,5313,5373,5400,5362,5259,5122,
+4994,4910,4877,4872,4861,4816,4738,4654,4599,4588,4608,4635,4655,4681,4742,4859,5014,5154,5214,5168,
+5049,4934,4884,4902,4939,4953,4951,4980,5075,5209,5313,5333,5272,5173,5073,4983,4903,4852,4864,4953,
+5082,5184,5210,5159,5070,4983,4916,4864,4866,4845,4824,4803,4779,4750,4713,4665,4604,4537,4480,4452,
+4452,4457,4445,4414,4382,4361,4338,4297,4243,4207,4207,4221,4203,4133,4048,4005,4007,3984,3847,3574,
+3247,2986,2862,2847,2847,2778,2612,2370,2094,1831,1633,1564,1682,1998,2453,2921,3281,3475,3532,3518,
+3456,3306,3024,2642,2285,2080,2051,2107,2136,2118,2143,2305,2597,2899,3070,3057,2924,2789,2743,2801,
+2913,3005,3023,2960,2858,2765,2697,2626,2518,2370,2220,2102,2010,1909,1779,1650,1572,1567,1607,1645,
+1657,1646,1615,1553,1446,1307,1178,1087,1009,878,641,310,-36,-310,-473,-555,-620,-720,-862,-1031,
+-1207,-1383,-1548,-1688,-1786,-1853,-1930,-2066,-2274,-2522,-2748,-2908,-2999,-3046,-3080,-3117,-3165,-3230,-3315,-3417,
+-3532,-3662,-3817,-3992,-4147,-4212,-4128,-3900,-3606,-3347,-3184,-3103,-3045,-2963,-2857,-2760,-2699,-2676,-2681,-2716,
+-2784,-2869,-2934,-2958,-2965,-3010,-3126,-3286,-3423,-3491,-3504,-3513,-3544,-3585,-3610,-3619,-3637,-3677,-3721,-3740,
+-3732,-3727,-3757,-3829,-3924,-4022,-4119,-4215,-4308,-4398,-4494,-4607,-4729,-4828,-4865,-4836,-4765,-4690,-4633,-4593,
+-4558,-4504,-4406,-4253,-4071,-3920,-3856,-3882,-3946,-3989,-3993,-3984,-3986,-3990,-3977,-3952,-3955,-4020,-4131,-4231,
+-4269,-4230,-4129,-3981,-3792,-3574,-3351,-3140,-2935,-2711,-2453,-2183,-1939,-1749,-1615,-1525,-1467,-1430,-1387,-1307,
+-1173,-1002,-831,-681,-544,-390,-205,4,219,432,644,852,1040,1196,1320,1433,1557,1699,1844,1976,
+2090,2200,2322,2462,2600,2709,2767,2775,2754,2733,2738,2784,2872,2992,3126,3249,3340,3393,3424,3467,
+3556,3700,3868,4007,4079,4089,4072,4049,3978,3766,3342,2740,2115,1668,1526,1671,1959,2218,2348,2354,
+2299,2240,2183,2105,1987,1840,1693,1564,1447,1330,1211,1099,997,895,782,662,556,477,420,366,
+311,269,257,266,264,220,135,32,-61,-141,-212,-281,-344,-401,-462,-534,-611,-674,-712,-737,
+-770,-811,-838,-837,-829,-860,-948,-1051,-1098,-1062,-994,-979,-1050,-1154,-1206,-1173,-1100,-1056,-1064,-1088,
+-1088,-1063,-1046,-1059,-1089,-1108,-1108,-1100,-1101,-1109,-1113,-1113,-1116,-1129,-1146,-1161,-1176,-1203,-1243,-1284,
+-1310,-1318,-1313,-1306,-1301,-1299,-1298,-1299,-1297,-1287,-1272,-1261,-1261,-1267,-1267,-1257,-1243,-1236,-1240,-1247,
+-1255,-1268,-1294,-1337,-1385,-1431,-1470,-1505,-1536,-1558,-1571,-1580,-1595,-1619,-1644,-1663,-1672,-1679,-1691,-1716,
+-1759,-1816,-1877,-1932,-1974,-2009,-2049,-2099,-2154,-2206,-2255,-2309,-2372,-2434,-2479,-2504,-2528,-2577,-2660,-2760,
+-2848,-2909,-2948,-2984,-3030,-3088,-3151,-3215,-3279,-3344,-3408,-3468,-3523,-3575,-3627,-3676,-3716,-3745,-3764,-3782,
+-3805,-3831,-3849,-3851,-3842,-3835,-3840,-3853,-3862,-3864,-3865,-3875,-3893,-3914,-3934,-3950,-3959,-3951,-3923,-3892,
+-3875,-3862,-3810,-3686,-3515,-3373,-3313,-3303,-3242,-3068,-2830,-2659,-2640,-2733,-2816,-2809,-2741,-2698,-2710,-2721,
+-2658,-2521,-2389,-2338,-2359,-2376,-2321,-2204,-2091,-2037,-2041,-2051,-2015,-1916,-1775,-1635,-1544,-1529,-1589,-1698,
+-1832,-1977,-2138,-2310,-2474,-2603,-2684,-2733,-2774,-2815,-2851,-2868,-2870,-2872,-2886,-2913,-2938,-2946,-2934,-2908,
+-2881,-2864,-2864,-2880,-2902,-2918,-2920,-2913,-2911,-2922,-2947,-2976,-3007,-3042,-3085,-3128,-3154,-3153,-3134,-3118,
+-3123,-3145,-3170,-3189,-3207,-3232,-3258,-3272,-3262,-3240,-3236,-3277,-3378,-3523,-3680,-3810,-3887,-3922,-3954,-4025,
+-4143,-4269,-4348,-4358,-4320,-4278,-4254,-4242,-4224,-4195,-4167,-4143,-4113,-4060,-3983,-3899,-3823,-3760,-3701,-3640,
+-3580,-3522,-3458,-3380,-3289,-3195,-3109,-3029,-2947,-2855,-2757,-2662,-2579,-2505,-2429,-2342,-2238,-2119,-1989,-1851,
+-1707,-1557,-1402,-1247,-1099,-955,-808,-651,-484,-314,-146,16,179,343,508,673,840,1011,1185,1353,
+1515,1677,1852,2040,2230,2404,2558,2704,2857,3022,3189,3347,3499,3657,3826,3998,4162,4314,4457,4596,
+4719,4814,4873,4908,4932,4951,4964,4971,4981,5002,5029,5048,5050,5049,5063,5098,5136,5143,5100,5008,
+4893,4787,4713,4673,4652,4622,4565,4486,4411,4368,4367,4396,4438,4491,4571,4693,4850,5006,5109,5123,
+5064,4992,4972,5021,5089,5099,5020,4901,4831,4859,4948,5011,4985,4884,4769,4692,4664,4671,4709,4787,
+4898,5008,5070,5064,5012,4952,4910,4885,4866,4959,4938,4910,4877,4832,4770,4693,4604,4508,4418,4361,
+4357,4399,4449,4466,4436,4379,4317,4251,4173,4090,4037,4041,4076,4084,4024,3922,3846,3830,3828,3750,
+3549,3270,3019,2875,2831,2811,2733,2558,2298,1987,1660,1363,1160,1131,1330,1735,2237,2685,2967,3063,
+3024,2893,2666,2320,1896,1512,1294,1267,1333,1372,1366,1419,1652,2063,2504,2785,2815,2661,2482,2423,
+2520,2709,2875,2936,2883,2775,2680,2618,2553,2440,2273,2094,1943,1816,1678,1508,1336,1223,1210,1284,
+1398,1501,1559,1560,1501,1400,1291,1208,1152,1086,959,743,464,183,-43,-200,-314,-432,-582,-761,
+-953,-1147,-1345,-1544,-1718,-1827,-1861,-1865,-1921,-2086,-2347,-2626,-2836,-2937,-2948,-2915,-2879,-2864,-2881,-2929,
+-3000,-3086,-3187,-3310,-3450,-3574,-3632,-3589,-3461,-3313,-3210,-3168,-3151,-3111,-3039,-2966,-2926,-2912,-2888,-2834,
+-2772,-2739,-2742,-2741,-2692,-2607,-2552,-2583,-2695,-2829,-2935,-3014,-3095,-3189,-3270,-3309,-3311,-3313,-3339,-3378,
+-3407,-3427,-3466,-3544,-3648,-3751,-3839,-3924,-4017,-4119,-4225,-4337,-4460,-4581,-4660,-4662,-4590,-4483,-4386,-4320,
+-4285,-4271,-4255,-4205,-4101,-3959,-3843,-3808,-3852,-3913,-3934,-3919,-3918,-3960,-4011,-4016,-3968,-3928,-3957,-4053,
+-4152,-4191,-4158,-4076,-3959,-3794,-3576,-3330,-3096,-2889,-2683,-2451,-2197,-1957,-1770,-1643,-1562,-1509,-1467,-1411,
+-1314,-1160,-966,-770,-599,-448,-295,-122,64,252,434,613,791,962,1116,1258,1400,1551,1706,1852,
+1980,2096,2215,2349,2494,2633,2743,2807,2824,2810,2795,2811,2875,2984,3116,3247,3360,3444,3491,3507,
+3521,3578,3711,3898,4069,4153,4134,4053,3943,3772,3458,2961,2358,1835,1570,1614,1870,2163,2356,2409,
+2366,2293,2229,2171,2095,1986,1850,1712,1587,1473,1357,1235,1113,1000,892,779,665,568,506,473,
+445,403,353,314,290,263,209,129,41,-38,-112,-191,-277,-357,-424,-487,-559,-635,-695,-730,
+-758,-804,-860,-889,-864,-816,-820,-908,-1022,-1053,-953,-797,-725,-811,-992,-1135,-1159,-1098,-1045,-1046,
+-1071,-1070,-1035,-1007,-1015,-1048,-1070,-1069,-1062,-1068,-1084,-1094,-1092,-1088,-1094,-1106,-1120,-1137,-1171,-1222,
+-1274,-1305,-1312,-1305,-1301,-1302,-1304,-1306,-1309,-1312,-1309,-1298,-1284,-1277,-1278,-1279,-1272,-1260,-1252,-1251,
+-1256,-1266,-1281,-1306,-1341,-1380,-1417,-1451,-1483,-1513,-1537,-1558,-1578,-1600,-1621,-1634,-1640,-1643,-1653,-1674,
+-1707,-1752,-1805,-1864,-1919,-1966,-2007,-2052,-2105,-2160,-2211,-2257,-2306,-2363,-2419,-2460,-2488,-2520,-2579,-2665,
+-2758,-2831,-2878,-2912,-2951,-3002,-3057,-3113,-3170,-3230,-3295,-3359,-3418,-3473,-3528,-3586,-3644,-3695,-3734,-3763,
+-3788,-3814,-3841,-3860,-3866,-3867,-3870,-3880,-3892,-3896,-3897,-3902,-3917,-3936,-3953,-3970,-3994,-4017,-4017,-3982,
+-3933,-3909,-3917,-3910,-3826,-3665,-3501,-3417,-3407,-3380,-3252,-3047,-2881,-2847,-2918,-2983,-2962,-2883,-2829,-2835,
+-2844,-2778,-2631,-2481,-2403,-2396,-2394,-2339,-2236,-2139,-2087,-2079,-2078,-2048,-1975,-1865,-1745,-1652,-1621,-1663,
+-1764,-1897,-2043,-2198,-2356,-2498,-2605,-2671,-2713,-2748,-2783,-2808,-2814,-2804,-2797,-2810,-2844,-2885,-2913,-2915,
+-2893,-2861,-2836,-2825,-2827,-2830,-2827,-2822,-2824,-2839,-2868,-2901,-2928,-2947,-2965,-2989,-3020,-3048,-3064,-3065,
+-3059,-3058,-3069,-3097,-3141,-3195,-3239,-3252,-3229,-3193,-3183,-3233,-3342,-3485,-3627,-3746,-3835,-3900,-3954,-4022,
+-4123,-4252,-4373,-4445,-4452,-4415,-4372,-4338,-4308,-4267,-4220,-4183,-4159,-4133,-4083,-4006,-3919,-3840,-3777,-3725,
+-3680,-3638,-3591,-3527,-3439,-3336,-3236,-3154,-3085,-3013,-2931,-2844,-2762,-2691,-2623,-2544,-2446,-2330,-2203,-2072,
+-1940,-1802,-1657,-1505,-1351,-1199,-1050,-900,-745,-584,-418,-245,-67,114,291,458,618,779,947,1119,
+1288,1454,1623,1801,1984,2160,2323,2477,2634,2803,2976,3142,3296,3448,3608,3778,3947,4103,4246,4381,
+4508,4616,4692,4735,4758,4777,4798,4815,4828,4841,4862,4885,4901,4901,4892,4886,4888,4887,4870,4828,
+4765,4690,4613,4543,4486,4440,4396,4343,4285,4237,4215,4228,4272,4344,4445,4576,4722,4854,4937,4954,
+4914,4859,4837,4877,4956,5011,4979,4854,4701,4602,4594,4631,4638,4574,4464,4370,4336,4365,4440,4552,
+4693,4843,4960,5014,5008,4980,4963,4964,4968,4959,5068,5021,4967,4905,4825,4720,4592,4447,4293,4149,
+4051,4026,4072,4148,4201,4205,4173,4131,4081,4013,3931,3870,3864,3903,3932,3900,3810,3723,3686,3684,
+3645,3510,3292,3065,2902,2819,2769,2687,2535,2310,2028,1711,1383,1090,911,925,1164,1566,1994,2299,
+2408,2335,2135,1850,1501,1131,826,671,670,736,772,778,866,1153,1634,2150,2496,2564,2419,2236,
+2182,2310,2548,2763,2851,2797,2670,2551,2475,2406,2293,2123,1928,1750,1595,1431,1235,1027,867,810,
+873,1023,1196,1328,1381,1352,1277,1194,1124,1052,949,799,613,413,220,41,-123,-283,-448,-623,
+-801,-972,-1133,-1301,-1488,-1676,-1819,-1881,-1884,-1905,-2022,-2244,-2505,-2710,-2802,-2788,-2715,-2632,-2572,-2549,
+-2562,-2598,-2646,-2706,-2788,-2897,-3016,-3111,-3161,-3180,-3206,-3254,-3298,-3293,-3227,-3146,-3122,-3175,-3248,-3252,
+-3152,-2999,-2882,-2834,-2803,-2719,-2571,-2430,-2375,-2423,-2524,-2621,-2708,-2813,-2941,-3055,-3117,-3131,-3131,-3146,
+-3168,-3180,-3194,-3240,-3335,-3458,-3570,-3657,-3737,-3832,-3943,-4057,-4168,-4278,-4375,-4429,-4414,-4338,-4235,-4140,
+-4066,-4015,-3992,-3993,-3992,-3951,-3869,-3792,-3773,-3809,-3839,-3818,-3770,-3766,-3836,-3930,-3966,-3932,-3899,-3942,
+-4057,-4163,-4187,-4129,-4038,-3939,-3808,-3613,-3364,-3112,-2894,-2702,-2501,-2274,-2046,-1855,-1718,-1628,-1563,-1503,
+-1426,-1313,-1155,-969,-781,-606,-440,-267,-81,106,282,443,599,756,914,1075,1240,1413,1587,1750,
+1886,2000,2108,2228,2365,2510,2648,2761,2835,2869,2874,2882,2925,3019,3145,3268,3363,3434,3494,3544,
+3574,3590,3630,3736,3902,4060,4132,4090,3966,3787,3520,3102,2540,1975,1609,1566,1795,2118,2362,2459,
+2446,2389,2326,2260,2184,2094,1988,1868,1739,1611,1486,1360,1228,1100,987,889,796,700,612,550,
+516,488,445,385,329,285,245,191,122,50,-15,-87,-175,-276,-369,-443,-510,-587,-671,-737,
+-771,-792,-832,-887,-912,-876,-816,-815,-911,-1029,-1035,-875,-649,-540,-646,-886,-1081,-1121,-1046,-976,
+-982,-1029,-1046,-1014,-974,-968,-990,-1006,-1002,-996,-1008,-1029,-1039,-1029,-1016,-1016,-1026,-1042,-1068,-1116,
+-1185,-1252,-1290,-1298,-1294,-1295,-1303,-1308,-1307,-1309,-1314,-1318,-1312,-1298,-1285,-1280,-1277,-1268,-1252,-1239,
+-1235,-1241,-1254,-1274,-1301,-1335,-1369,-1401,-1432,-1462,-1493,-1523,-1551,-1580,-1608,-1628,-1633,-1629,-1626,-1635,
+-1659,-1694,-1736,-1785,-1839,-1895,-1947,-1996,-2049,-2107,-2164,-2214,-2256,-2300,-2351,-2403,-2448,-2485,-2528,-2590,
+-2667,-2742,-2796,-2831,-2864,-2909,-2965,-3025,-3082,-3137,-3196,-3257,-3315,-3370,-3421,-3476,-3535,-3599,-3660,-3716,
+-3763,-3801,-3833,-3859,-3876,-3888,-3897,-3908,-3920,-3927,-3925,-3925,-3938,-3965,-3991,-4004,-4010,-4028,-4055,-4066,
+-4036,-3976,-3935,-3940,-3957,-3918,-3794,-3635,-3524,-3482,-3447,-3347,-3186,-3051,-3018,-3067,-3108,-3080,-3007,-2958,
+-2959,-2958,-2888,-2742,-2585,-2482,-2440,-2419,-2379,-2313,-2239,-2173,-2116,-2067,-2024,-1978,-1913,-1829,-1756,-1736,
+-1787,-1894,-2022,-2150,-2279,-2412,-2537,-2633,-2692,-2724,-2746,-2759,-2757,-2735,-2710,-2707,-2743,-2815,-2899,-2962,
+-2981,-2951,-2890,-2825,-2776,-2746,-2731,-2727,-2735,-2756,-2787,-2821,-2848,-2865,-2877,-2889,-2908,-2937,-2972,-3005,
+-3025,-3028,-3022,-3022,-3044,-3095,-3159,-3203,-3200,-3158,-3121,-3145,-3252,-3413,-3571,-3685,-3758,-3817,-3891,-3987,
+-4102,-4228,-4356,-4463,-4524,-4530,-4499,-4458,-4419,-4377,-4326,-4273,-4231,-4200,-4166,-4108,-4024,-3932,-3848,-3781,
+-3730,-3692,-3661,-3626,-3572,-3491,-3393,-3298,-3218,-3150,-3084,-3015,-2945,-2878,-2812,-2739,-2649,-2542,-2422,-2297,
+-2169,-2039,-1903,-1760,-1611,-1456,-1299,-1138,-976,-816,-661,-506,-340,-158,32,219,391,552,713,881,
+1053,1225,1398,1576,1757,1932,2093,2246,2402,2572,2754,2934,3103,3262,3420,3583,3747,3901,4040,4166,
+4283,4390,4476,4535,4571,4597,4626,4656,4682,4700,4715,4732,4751,4761,4757,4739,4712,4680,4644,4608,
+4575,4545,4510,4460,4395,4327,4268,4224,4193,4172,4164,4176,4212,4277,4377,4512,4663,4793,4863,4858,
+4799,4726,4679,4676,4708,4744,4744,4681,4568,4449,4369,4335,4316,4270,4191,4108,4060,4060,4107,4201,
+4349,4546,4757,4927,5025,5060,5071,5086,5102,5098,5068,5135,5063,4987,4904,4801,4674,4521,4344,4146,
+3946,3777,3679,3662,3703,3756,3792,3812,3827,3835,3820,3777,3728,3710,3730,3755,3742,3680,3606,3564,
+3556,3535,3449,3288,3096,2929,2817,2743,2665,2547,2375,2150,1883,1582,1268,992,830,846,1043,1332,
+1576,1662,1559,1317,1010,702,441,275,231,286,369,419,456,578,876,1333,1807,2123,2198,2094,
+1972,1977,2151,2419,2649,2742,2684,2543,2404,2308,2230,2122,1963,1775,1588,1410,1217,989,741,524,
+407,429,581,797,990,1096,1113,1084,1047,1002,913,760,566,378,220,80,-69,-238,-410,-568,
+-714,-854,-986,-1106,-1226,-1369,-1540,-1706,-1822,-1875,-1909,-1989,-2140,-2321,-2467,-2531,-2516,-2454,-2383,-2331,
+-2314,-2329,-2358,-2382,-2402,-2443,-2529,-2661,-2815,-2972,-3135,-3315,-3492,-3606,-3606,-3512,-3417,-3418,-3524,-3631,
+-3611,-3430,-3181,-3002,-2945,-2943,-2885,-2733,-2559,-2458,-2462,-2521,-2576,-2621,-2692,-2803,-2920,-2996,-3020,-3019,
+-3016,-3006,-2981,-2964,-2998,-3101,-3246,-3382,-3489,-3587,-3698,-3824,-3943,-4045,-4134,-4209,-4253,-4249,-4201,-4133,
+-4060,-3985,-3914,-3870,-3868,-3889,-3884,-3830,-3755,-3709,-3702,-3691,-3642,-3586,-3592,-3682,-3796,-3852,-3843,-3851,
+-3948,-4112,-4236,-4240,-4140,-4019,-3929,-3839,-3683,-3443,-3166,-2916,-2713,-2532,-2342,-2145,-1966,-1825,-1721,-1633,
+-1540,-1430,-1297,-1147,-993,-841,-687,-518,-327,-124,72,253,421,585,750,918,1090,1271,1458,1638,
+1794,1918,2021,2124,2241,2374,2512,2643,2758,2847,2903,2934,2965,3027,3133,3257,3359,3420,3460,3514,
+3589,3658,3699,3726,3782,3882,3986,4035,4002,3898,3715,3389,2865,2214,1651,1413,1568,1962,2338,2531,
+2550,2499,2450,2401,2319,2205,2087,1982,1880,1765,1637,1506,1374,1238,1105,991,904,829,748,662,
+587,536,497,452,397,345,304,264,211,144,77,14,-57,-154,-270,-375,-456,-527,-611,-703,
+-775,-804,-810,-830,-870,-890,-857,-805,-814,-921,-1047,-1054,-885,-651,-544,-658,-901,-1079,-1081,-966,
+-878,-896,-974,-1017,-992,-941,-915,-918,-923,-918,-920,-942,-967,-971,-952,-931,-929,-944,-969,-1006,
+-1067,-1146,-1217,-1254,-1260,-1262,-1277,-1297,-1308,-1305,-1301,-1303,-1307,-1301,-1285,-1268,-1257,-1248,-1234,-1215,
+-1201,-1199,-1209,-1227,-1252,-1282,-1317,-1353,-1386,-1419,-1453,-1489,-1522,-1551,-1576,-1598,-1614,-1618,-1614,-1610,
+-1617,-1637,-1668,-1708,-1757,-1813,-1871,-1927,-1981,-2037,-2098,-2157,-2207,-2247,-2286,-2331,-2383,-2434,-2483,-2533,
+-2591,-2654,-2711,-2754,-2787,-2823,-2871,-2931,-2995,-3056,-3114,-3169,-3223,-3275,-3327,-3381,-3437,-3493,-3554,-3620,
+-3691,-3758,-3814,-3852,-3877,-3893,-3906,-3921,-3937,-3951,-3956,-3953,-3955,-3974,-4009,-4040,-4052,-4048,-4052,-4074,
+-4094,-4080,-4030,-3981,-3972,-3990,-3978,-3895,-3759,-3630,-3542,-3474,-3381,-3262,-3164,-3131,-3147,-3158,-3133,-3091,
+-3074,-3083,-3072,-2997,-2864,-2721,-2608,-2533,-2481,-2437,-2393,-2334,-2247,-2141,-2050,-2000,-1981,-1952,-1896,-1842,
+-1843,-1921,-2042,-2156,-2247,-2337,-2448,-2569,-2671,-2735,-2766,-2776,-2766,-2730,-2672,-2621,-2613,-2670,-2781,-2909,
+-3007,-3039,-2997,-2903,-2796,-2707,-2652,-2630,-2634,-2659,-2696,-2734,-2761,-2775,-2783,-2794,-2813,-2842,-2881,-2927,
+-2972,-3005,-3018,-3014,-3010,-3023,-3060,-3108,-3138,-3131,-3100,-3094,-3161,-3308,-3490,-3638,-3721,-3765,-3824,-3933,
+-4083,-4240,-4377,-4485,-4560,-4598,-4597,-4567,-4525,-4483,-4441,-4396,-4352,-4313,-4276,-4226,-4156,-4068,-3977,-3894,
+-3822,-3763,-3715,-3678,-3639,-3587,-3516,-3432,-3350,-3275,-3207,-3143,-3083,-3027,-2970,-2906,-2827,-2734,-2631,-2521,
+-2403,-2277,-2145,-2008,-1867,-1722,-1570,-1407,-1233,-1052,-878,-719,-570,-415,-243,-55,130,305,472,639,
+810,982,1153,1327,1509,1692,1864,2021,2174,2338,2518,2705,2888,3062,3233,3403,3568,3719,3850,3963,
+4066,4160,4242,4307,4355,4391,4426,4464,4502,4534,4557,4576,4593,4607,4612,4602,4572,4525,4465,4402,
+4352,4324,4315,4306,4279,4230,4172,4123,4095,4090,4105,4139,4187,4246,4321,4424,4556,4695,4795,4822,
+4778,4699,4631,4595,4582,4573,4549,4502,4429,4338,4245,4167,4105,4051,3999,3958,3939,3944,3963,4000,
+4080,4235,4465,4724,4943,5085,5158,5195,5218,5221,5193,5135,5134,5055,4971,4878,4767,4637,4484,4306,
+4099,3873,3655,3480,3374,3337,3350,3390,3446,3509,3571,3614,3625,3611,3592,3585,3584,3568,3527,3474,
+3436,3422,3406,3352,3241,3091,2941,2822,2738,2667,2574,2438,2256,2037,1793,1525,1242,985,816,784,
+871,985,1015,897,652,363,116,-32,-65,0,120,241,333,421,572,836,1185,1515,1719,1763,
+1718,1707,1822,2064,2348,2562,2632,2563,2421,2279,2170,2079,1970,1824,1650,1462,1263,1038,777,496,
+239,74,59,199,432,655,791,837,850,871,884,827,672,458,256,102,-27,-170,-332,-482,
+-598,-696,-804,-928,-1046,-1148,-1252,-1384,-1538,-1678,-1775,-1840,-1907,-1997,-2092,-2163,-2193,-2188,-2165,-2142,
+-2138,-2167,-2226,-2283,-2306,-2297,-2298,-2363,-2504,-2698,-2917,-3159,-3428,-3694,-3881,-3927,-3853,-3765,-3767,-3857,
+-3914,-3805,-3514,-3173,-2955,-2925,-2996,-3024,-2940,-2799,-2699,-2679,-2695,-2694,-2678,-2690,-2755,-2842,-2901,-2917,
+-2908,-2891,-2862,-2816,-2781,-2807,-2914,-3073,-3230,-3361,-3481,-3611,-3747,-3864,-3956,-4035,-4113,-4176,-4202,-4184,
+-4137,-4075,-4001,-3922,-3866,-3853,-3868,-3861,-3796,-3694,-3605,-3554,-3520,-3481,-3458,-3497,-3601,-3707,-3749,-3741,
+-3773,-3913,-4119,-4265,-4261,-4137,-4000,-3920,-3865,-3745,-3510,-3199,-2895,-2654,-2472,-2315,-2162,-2018,-1897,-1797,
+-1701,-1584,-1442,-1286,-1138,-1007,-886,-752,-588,-398,-198,0,191,383,576,766,947,1124,1305,1489,
+1662,1811,1932,2039,2147,2265,2389,2514,2635,2749,2851,2931,2985,3028,3085,3169,3271,3362,3427,3482,
+3559,3662,3757,3805,3806,3801,3823,3868,3909,3934,3930,3832,3520,2925,2163,1531,1318,1574,2070,2486,
+2655,2633,2570,2533,2485,2373,2215,2068,1964,1878,1777,1658,1538,1422,1296,1159,1031,933,857,782,
+696,616,559,521,483,441,402,370,332,271,194,120,57,-14,-117,-246,-370,-465,-543,-626,
+-716,-785,-810,-806,-813,-841,-858,-833,-790,-803,-905,-1032,-1061,-938,-751,-668,-769,-966,-1087,-1042,
+-902,-809,-833,-921,-972,-950,-896,-862,-856,-857,-858,-873,-908,-941,-944,-919,-895,-892,-910,-936,
+-974,-1034,-1107,-1166,-1191,-1192,-1200,-1229,-1265,-1283,-1281,-1271,-1266,-1263,-1252,-1232,-1214,-1202,-1192,-1177,
+-1161,-1153,-1159,-1175,-1195,-1220,-1251,-1285,-1319,-1351,-1384,-1424,-1469,-1509,-1537,-1554,-1566,-1577,-1586,-1592,
+-1594,-1599,-1611,-1634,-1671,-1720,-1777,-1836,-1892,-1946,-2003,-2066,-2129,-2184,-2227,-2265,-2308,-2361,-2421,-2480,
+-2535,-2586,-2636,-2683,-2725,-2763,-2802,-2848,-2902,-2963,-3025,-3083,-3133,-3176,-3222,-3278,-3342,-3406,-3462,-3516,
+-3578,-3654,-3734,-3801,-3846,-3874,-3894,-3913,-3933,-3952,-3968,-3978,-3982,-3987,-4005,-4036,-4066,-4080,-4076,-4073,
+-4088,-4111,-4116,-4088,-4047,-4025,-4026,-4020,-3968,-3865,-3739,-3625,-3529,-3442,-3360,-3294,-3248,-3213,-3178,-3151,
+-3153,-3185,-3212,-3190,-3108,-2995,-2885,-2786,-2689,-2594,-2516,-2459,-2394,-2291,-2160,-2056,-2017,-2022,-2009,-1952,
+-1898,-1914,-2016,-2145,-2237,-2284,-2333,-2426,-2553,-2669,-2745,-2785,-2803,-2795,-2746,-2663,-2579,-2545,-2588,-2699,
+-2835,-2944,-2983,-2941,-2841,-2726,-2632,-2576,-2555,-2560,-2587,-2627,-2665,-2692,-2706,-2717,-2734,-2764,-2806,-2856,
+-2910,-2957,-2987,-2997,-2994,-2992,-3003,-3028,-3060,-3084,-3092,-3098,-3136,-3238,-3400,-3574,-3702,-3767,-3808,-3890,
+-4043,-4241,-4428,-4562,-4641,-4680,-4695,-4687,-4660,-4618,-4570,-4524,-4481,-4443,-4403,-4356,-4293,-4217,-4137,-4060,
+-3987,-3912,-3839,-3774,-3719,-3665,-3602,-3529,-3454,-3385,-3321,-3259,-3196,-3138,-3084,-3027,-2959,-2881,-2798,-2714,
+-2621,-2512,-2385,-2249,-2110,-1971,-1830,-1681,-1516,-1333,-1139,-951,-781,-630,-480,-317,-141,37,210,382,
+558,736,909,1076,1246,1425,1607,1780,1942,2105,2280,2467,2655,2836,3013,3193,3369,3528,3659,3766,
+3857,3940,4014,4077,4130,4176,4219,4258,4297,4335,4370,4402,4429,4450,4464,4465,4448,4408,4345,4268,
+4191,4129,4094,4081,4075,4060,4033,4001,3977,3971,3989,4035,4105,4184,4259,4328,4410,4514,4627,4710,
+4733,4697,4635,4579,4539,4506,4470,4428,4375,4301,4198,4081,3975,3908,3889,3914,3969,4034,4088,4123,
+4156,4231,4382,4603,4839,5031,5152,5216,5249,5262,5248,5203,5134,5044,4962,4877,4784,4676,4553,4408,
+4237,4038,3820,3601,3401,3243,3145,3114,3141,3205,3283,3363,3434,3486,3508,3502,3478,3450,3423,3393,
+3357,3322,3293,3267,3223,3147,3039,2921,2818,2742,2682,2610,2501,2352,2182,2007,1823,1605,1343,1070,
+852,730,682,629,502,291,57,-117,-180,-129,0,160,313,449,586,755,965,1184,1352,1428,
+1432,1441,1541,1763,2060,2335,2498,2517,2425,2289,2160,2054,1954,1837,1693,1524,1329,1108,856,578,
+290,28,-152,-195,-82,132,344,470,513,544,619,716,754,677,510,325,169,33,-111,-261,
+-386,-475,-558,-675,-828,-980,-1101,-1198,-1298,-1412,-1523,-1615,-1695,-1778,-1860,-1924,-1955,-1961,-1960,-1963,
+-1975,-2011,-2090,-2203,-2303,-2339,-2307,-2270,-2304,-2432,-2623,-2837,-3072,-3350,-3652,-3904,-4029,-4028,-3990,-4010,
+-4082,-4091,-3911,-3540,-3120,-2840,-2784,-2881,-2987,-3013,-2972,-2928,-2908,-2886,-2837,-2776,-2748,-2771,-2814,-2837,
+-2830,-2811,-2797,-2775,-2738,-2709,-2734,-2834,-2986,-3143,-3286,-3425,-3569,-3704,-3806,-3879,-3952,-4044,-4134,-4183,
+-4170,-4110,-4037,-3969,-3913,-3879,-3869,-3866,-3834,-3750,-3632,-3526,-3459,-3425,-3410,-3429,-3502,-3613,-3698,-3709,
+-3678,-3699,-3835,-4039,-4187,-4189,-4073,-3945,-3878,-3844,-3746,-3519,-3189,-2847,-2571,-2380,-2238,-2111,-1991,-1887,
+-1803,-1717,-1602,-1451,-1286,-1133,-1004,-884,-747,-585,-406,-224,-36,165,384,605,808,987,1154,1325,
+1501,1671,1822,1954,2075,2192,2306,2418,2527,2637,2750,2863,2965,3045,3097,3131,3172,3239,3331,3434,
+3536,3636,3732,3802,3822,3794,3751,3730,3747,3806,3912,4041,4084,3864,3275,2439,1705,1418,1652,2158,
+2582,2744,2714,2651,2618,2560,2422,2233,2071,1965,1880,1777,1661,1559,1472,1369,1233,1089,973,889,
+813,733,659,608,576,546,510,479,456,421,354,263,174,102,27,-80,-222,-366,-478,-562,
+-637,-714,-773,-798,-799,-807,-832,-849,-829,-790,-789,-864,-975,-1025,-959,-829,-759,-815,-944,-1020,
+-977,-866,-795,-813,-875,-907,-887,-847,-827,-825,-823,-823,-844,-888,-930,-941,-923,-902,-897,-906,
+-921,-948,-998,-1061,-1109,-1125,-1126,-1140,-1178,-1219,-1239,-1235,-1224,-1217,-1208,-1192,-1172,-1156,-1148,-1140,
+-1127,-1114,-1112,-1122,-1139,-1157,-1180,-1209,-1242,-1271,-1295,-1322,-1361,-1412,-1462,-1497,-1517,-1528,-1542,-1560,
+-1576,-1585,-1585,-1586,-1597,-1625,-1667,-1719,-1773,-1826,-1880,-1941,-2009,-2082,-2147,-2200,-2242,-2286,-2343,-2410,
+-2479,-2537,-2584,-2625,-2668,-2713,-2756,-2794,-2831,-2874,-2928,-2990,-3048,-3093,-3130,-3171,-3230,-3305,-3378,-3438,
+-3489,-3544,-3615,-3693,-3762,-3812,-3849,-3881,-3910,-3934,-3953,-3969,-3986,-4001,-4013,-4025,-4043,-4066,-4084,-4091,
+-4094,-4104,-4123,-4138,-4131,-4105,-4075,-4055,-4040,-4009,-3946,-3852,-3744,-3647,-3576,-3529,-3487,-3423,-3328,-3233,
+-3188,-3218,-3290,-3332,-3296,-3202,-3106,-3037,-2974,-2878,-2749,-2627,-2535,-2450,-2335,-2199,-2103,-2082,-2103,-2088,
+-2013,-1939,-1950,-2055,-2181,-2248,-2259,-2279,-2362,-2495,-2623,-2711,-2768,-2811,-2832,-2804,-2722,-2620,-2547,-2540,
+-2598,-2692,-2776,-2811,-2783,-2709,-2625,-2560,-2524,-2509,-2510,-2529,-2567,-2614,-2659,-2693,-2719,-2745,-2777,-2818,
+-2867,-2914,-2946,-2952,-2940,-2926,-2927,-2947,-2979,-3017,-3056,-3096,-3142,-3214,-3328,-3478,-3631,-3745,-3810,-3869,
+-3979,-4165,-4390,-4589,-4716,-4775,-4794,-4801,-4801,-4786,-4749,-4694,-4634,-4578,-4527,-4473,-4408,-4332,-4257,-4191,
+-4131,-4061,-3975,-3885,-3808,-3750,-3696,-3630,-3553,-3480,-3422,-3374,-3325,-3269,-3209,-3145,-3075,-2997,-2922,-2856,
+-2794,-2718,-2615,-2488,-2350,-2213,-2076,-1934,-1782,-1617,-1436,-1244,-1053,-876,-716,-561,-398,-226,-52,119,
+294,478,665,843,1010,1178,1352,1529,1700,1866,2040,2227,2421,2608,2786,2961,3136,3301,3440,3549,
+3638,3718,3792,3856,3912,3967,4022,4071,4111,4144,4178,4217,4257,4289,4311,4324,4323,4303,4260,4197,
+4123,4051,3988,3939,3901,3872,3850,3835,3826,3826,3840,3881,3957,4064,4174,4263,4328,4391,4475,4572,
+4647,4669,4637,4572,4499,4432,4376,4341,4322,4294,4218,4079,3918,3803,3790,3883,4037,4197,4324,4408,
+4465,4530,4634,4783,4948,5083,5161,5193,5207,5216,5213,5182,5121,5044,4855,4756,4671,4591,4509,4410,
+4276,4102,3901,3696,3506,3334,3185,3076,3031,3050,3110,3179,3247,3315,3380,3424,3429,3400,3363,3339,
+3326,3307,3269,3217,3162,3105,3040,2962,2877,2801,2745,2706,2664,2600,2510,2410,2315,2215,2069,1836,
+1520,1179,888,680,532,389,228,73,-24,-30,50,186,343,502,660,824,993,1152,1275,1333,
+1330,1313,1358,1519,1790,2093,2324,2416,2373,2254,2126,2022,1932,1832,1709,1559,1384,1178,938,672,
+397,128,-117,-304,-384,-331,-183,-28,55,74,105,219,402,564,619,554,423,280,142,6,
+-121,-227,-316,-420,-566,-745,-921,-1069,-1189,-1294,-1379,-1435,-1477,-1543,-1653,-1783,-1882,-1924,-1927,-1923,
+-1928,-1944,-1988,-2086,-2230,-2363,-2412,-2368,-2301,-2303,-2405,-2569,-2751,-2954,-3211,-3517,-3803,-3983,-4045,-4064,
+-4128,-4236,-4278,-4128,-3757,-3275,-2860,-2633,-2603,-2692,-2814,-2920,-2993,-3017,-2985,-2912,-2840,-2808,-2815,-2829,
+-2824,-2806,-2796,-2797,-2793,-2770,-2750,-2773,-2858,-2987,-3130,-3279,-3436,-3596,-3728,-3807,-3848,-3896,-3980,-4074,
+-4121,-4088,-4003,-3921,-3883,-3889,-3913,-3925,-3905,-3841,-3742,-3633,-3545,-3487,-3454,-3443,-3469,-3547,-3651,-3722,
+-3721,-3681,-3684,-3784,-3943,-4059,-4059,-3962,-3852,-3791,-3758,-3672,-3469,-3168,-2846,-2581,-2391,-2246,-2106,-1965,
+-1841,-1747,-1664,-1562,-1424,-1268,-1118,-983,-845,-690,-519,-350,-185,-7,203,439,672,871,1035,1189,
+1354,1530,1701,1856,1996,2124,2242,2347,2446,2546,2651,2764,2884,3009,3119,3185,3197,3187,3211,3302,
+3442,3578,3671,3717,3727,3713,3684,3655,3648,3677,3759,3915,4130,4289,4190,3686,2863,2066,1674,1810,
+2256,2660,2824,2800,2739,2701,2632,2482,2289,2128,2019,1918,1790,1658,1562,1498,1418,1295,1154,1039,
+959,888,809,733,679,642,605,568,543,534,513,448,344,233,139,49,-66,-214,-365,-487,
+-572,-639,-701,-752,-781,-794,-808,-830,-843,-827,-792,-778,-819,-899,-953,-927,-834,-748,-737,-795,
+-858,-872,-843,-818,-825,-847,-853,-841,-830,-831,-831,-815,-799,-808,-848,-892,-914,-911,-902,-897,
+-895,-895,-911,-954,-1013,-1059,-1078,-1086,-1107,-1144,-1177,-1190,-1185,-1178,-1174,-1166,-1149,-1132,-1123,-1120,
+-1111,-1094,-1077,-1071,-1076,-1086,-1098,-1119,-1151,-1187,-1218,-1238,-1258,-1290,-1339,-1393,-1440,-1472,-1494,-1515,
+-1537,-1557,-1564,-1559,-1550,-1550,-1566,-1598,-1640,-1687,-1737,-1794,-1860,-1936,-2017,-2093,-2158,-2210,-2260,-2320,
+-2394,-2468,-2531,-2576,-2613,-2653,-2696,-2738,-2771,-2801,-2839,-2892,-2957,-3019,-3067,-3103,-3142,-3198,-3272,-3349,
+-3414,-3467,-3520,-3581,-3649,-3713,-3768,-3816,-3861,-3900,-3927,-3941,-3953,-3973,-3998,-4020,-4032,-4040,-4053,-4072,
+-4092,-4108,-4119,-4131,-4143,-4146,-4133,-4105,-4072,-4047,-4029,-4001,-3948,-3867,-3785,-3730,-3710,-3688,-3615,-3478,
+-3330,-3253,-3283,-3370,-3418,-3371,-3263,-3172,-3134,-3108,-3033,-2899,-2754,-2636,-2534,-2413,-2279,-2188,-2176,-2200,
+-2179,-2088,-1994,-1985,-2074,-2184,-2235,-2229,-2238,-2317,-2450,-2580,-2676,-2749,-2817,-2869,-2875,-2819,-2721,-2623,
+-2558,-2542,-2567,-2607,-2631,-2618,-2575,-2527,-2497,-2485,-2483,-2486,-2505,-2546,-2607,-2673,-2732,-2777,-2809,-2834,
+-2858,-2887,-2913,-2920,-2896,-2854,-2823,-2825,-2861,-2917,-2979,-3044,-3111,-3183,-3266,-3372,-3503,-3639,-3752,-3835,
+-3920,-4052,-4249,-4476,-4673,-4798,-4854,-4873,-4886,-4898,-4897,-4867,-4809,-4737,-4664,-4595,-4523,-4440,-4354,-4280,
+-4221,-4160,-4071,-3952,-3834,-3753,-3717,-3695,-3654,-3587,-3517,-3466,-3434,-3405,-3362,-3304,-3231,-3147,-3061,-2985,
+-2928,-2878,-2810,-2710,-2586,-2454,-2324,-2189,-2042,-1884,-1720,-1550,-1370,-1185,-1006,-837,-671,-498,-319,-142,
+31,210,398,591,775,949,1121,1295,1468,1635,1802,1983,2181,2382,2568,2738,2900,3055,3193,3305,
+3395,3479,3560,3632,3694,3752,3816,3884,3940,3977,4005,4039,4080,4119,4146,4161,4171,4172,4155,4115,
+4062,4008,3961,3913,3855,3789,3728,3687,3670,3671,3684,3715,3780,3892,4036,4178,4287,4361,4430,4514,
+4604,4659,4651,4585,4488,4385,4293,4229,4207,4218,4214,4138,3985,3822,3755,3840,4048,4290,4487,4614,
+4698,4786,4910,5065,5214,5305,5314,5263,5202,5170,5158,5133,5066,4965,4855,4616,4492,4408,4356,4316,
+4257,4142,3960,3741,3534,3368,3238,3127,3042,3007,3027,3080,3135,3186,3244,3311,3363,3373,3345,3314,
+3308,3321,3321,3282,3209,3124,3044,2974,2908,2845,2791,2754,2736,2731,2730,2725,2714,2692,2642,2526,
+2307,1980,1587,1204,892,666,504,381,293,255,274,344,449,578,728,894,1064,1216,1330,1391,
+1399,1372,1357,1413,1578,1831,2091,2262,2293,2208,2079,1968,1889,1818,1722,1593,1437,1255,1041,794,
+528,266,18,-212,-416,-555,-600,-560,-496,-469,-477,-451,-317,-76,186,367,416,353,236,112,
+5,-79,-152,-240,-362,-516,-679,-832,-983,-1146,-1303,-1406,-1429,-1412,-1442,-1569,-1753,-1910,-1987,-2002,
+-2003,-2012,-2028,-2066,-2155,-2297,-2437,-2497,-2458,-2386,-2374,-2460,-2612,-2794,-3011,-3289,-3612,-3897,-4062,-4106,
+-4118,-4196,-4352,-4485,-4454,-4176,-3687,-3118,-2631,-2346,-2301,-2450,-2687,-2893,-2990,-2977,-2910,-2858,-2847,-2859,
+-2865,-2861,-2864,-2885,-2909,-2909,-2883,-2862,-2882,-2956,-3065,-3194,-3342,-3513,-3687,-3821,-3885,-3898,-3911,-3963,
+-4030,-4056,-4008,-3916,-3849,-3857,-3931,-4013,-4044,-4000,-3900,-3784,-3691,-3633,-3596,-3561,-3532,-3532,-3580,-3656,
+-3713,-3724,-3709,-3725,-3802,-3909,-3977,-3958,-3867,-3763,-3690,-3639,-3556,-3396,-3164,-2915,-2701,-2532,-2377,-2201,
+-2008,-1833,-1699,-1593,-1484,-1352,-1207,-1067,-932,-785,-616,-439,-273,-118,54,265,502,729,918,1077,
+1235,1406,1582,1745,1888,2020,2144,2258,2359,2457,2559,2668,2781,2902,3039,3170,3249,3241,3181,3157,
+3233,3386,3529,3595,3587,3560,3551,3565,3592,3631,3690,3784,3934,4142,4326,4304,3910,3173,2385,1923,
+1958,2333,2718,2896,2886,2822,2771,2692,2545,2364,2217,2112,2000,1849,1694,1588,1526,1458,1351,1229,
+1137,1077,1016,932,842,769,715,667,624,606,611,603,543,425,288,166,56,-63,-203,-343,
+-459,-544,-611,-669,-718,-755,-778,-795,-808,-812,-801,-778,-763,-777,-823,-869,-870,-804,-701,-626,
+-624,-685,-765,-821,-844,-846,-840,-837,-844,-859,-871,-860,-826,-793,-787,-813,-849,-874,-884,-889,
+-891,-886,-879,-888,-924,-973,-1011,-1029,-1043,-1068,-1099,-1120,-1123,-1119,-1120,-1124,-1119,-1106,-1095,-1094,
+-1095,-1083,-1059,-1033,-1016,-1010,-1009,-1013,-1030,-1064,-1108,-1149,-1180,-1205,-1232,-1270,-1318,-1369,-1415,-1450,
+-1476,-1495,-1508,-1510,-1501,-1489,-1485,-1497,-1522,-1557,-1600,-1651,-1711,-1780,-1855,-1936,-2018,-2093,-2157,-2216,
+-2281,-2355,-2432,-2498,-2547,-2585,-2622,-2660,-2694,-2723,-2754,-2796,-2854,-2923,-2989,-3042,-3084,-3123,-3173,-3236,
+-3308,-3376,-3437,-3493,-3549,-3608,-3668,-3726,-3783,-3836,-3880,-3906,-3918,-3928,-3948,-3979,-4011,-4032,-4040,-4047,
+-4062,-4086,-4112,-4128,-4135,-4139,-4142,-4139,-4122,-4091,-4063,-4048,-4039,-4012,-3954,-3881,-3829,-3815,-3804,-3738,
+-3594,-3423,-3317,-3326,-3409,-3464,-3423,-3313,-3214,-3174,-3160,-3105,-2987,-2846,-2727,-2626,-2513,-2386,-2292,-2270,
+-2286,-2265,-2176,-2075,-2047,-2114,-2209,-2258,-2255,-2260,-2326,-2444,-2567,-2665,-2745,-2821,-2883,-2910,-2884,-2812,
+-2713,-2613,-2538,-2506,-2512,-2529,-2525,-2497,-2465,-2449,-2452,-2464,-2478,-2504,-2549,-2610,-2677,-2743,-2800,-2840,
+-2860,-2867,-2871,-2873,-2860,-2821,-2767,-2730,-2737,-2788,-2866,-2951,-3034,-3116,-3197,-3281,-3377,-3494,-3624,-3748,
+-3856,-3967,-4110,-4298,-4508,-4696,-4828,-4900,-4934,-4953,-4964,-4961,-4932,-4877,-4805,-4731,-4659,-4581,-4493,-4405,
+-4330,-4268,-4190,-4065,-3900,-3745,-3659,-3650,-3674,-3671,-3623,-3556,-3506,-3483,-3470,-3445,-3398,-3331,-3250,-3165,
+-3090,-3030,-2973,-2898,-2796,-2678,-2557,-2436,-2303,-2153,-1993,-1835,-1676,-1507,-1328,-1145,-968,-791,-609,-421,
+-237,-59,120,309,503,692,873,1052,1231,1405,1572,1744,1935,2141,2343,2521,2675,2813,2939,3048,
+3140,3224,3312,3398,3471,3530,3592,3665,3741,3797,3832,3862,3901,3945,3975,3987,3994,4009,4019,4003,
+3957,3903,3866,3845,3817,3762,3682,3605,3556,3541,3549,3572,3616,3702,3838,4005,4163,4284,4372,4455,
+4546,4619,4633,4573,4466,4356,4268,4204,4167,4165,4189,4192,4130,4009,3909,3925,4084,4324,4545,4688,
+4766,4839,4958,5129,5311,5442,5470,5398,5277,5178,5132,5109,5053,4935,4775,4616,4420,4286,4206,4170,
+4156,4121,4019,3834,3603,3392,3238,3134,3053,2990,2965,2982,3023,3065,3107,3168,3248,3314,3332,3309,
+3287,3297,3329,3341,3303,3221,3124,3036,2962,2901,2850,2809,2782,2773,2789,2833,2895,2950,2970,2926,
+2798,2578,2271,1909,1543,1223,978,809,702,640,615,619,648,706,805,949,1124,1294,1422,1490,
+1502,1481,1450,1442,1494,1629,1829,2027,2145,2145,2055,1942,1856,1798,1736,1637,1498,1332,1145,931,
+690,436,189,-43,-269,-493,-692,-836,-912,-949,-984,-1017,-1001,-874,-624,-313,-43,107,123,49,
+-46,-114,-146,-173,-239,-353,-486,-599,-696,-828,-1030,-1264,-1428,-1461,-1411,-1403,-1520,-1724,-1910,-2008,
+-2039,-2061,-2102,-2148,-2195,-2271,-2389,-2512,-2575,-2557,-2511,-2512,-2597,-2751,-2960,-3239,-3591,-3955,-4222,-4315,
+-4265,-4192,-4215,-4364,-4558,-4658,-4543,-4164,-3577,-2931,-2422,-2196,-2272,-2527,-2780,-2908,-2909,-2866,-2852,-2873,
+-2894,-2897,-2904,-2942,-3005,-3050,-3047,-3013,-2995,-3029,-3109,-3210,-3321,-3451,-3609,-3776,-3907,-3972,-3983,-3983,
+-4007,-4045,-4056,-4014,-3940,-3895,-3922,-4009,-4096,-4115,-4043,-3911,-3783,-3703,-3675,-3668,-3650,-3619,-3599,-3606,
+-3634,-3659,-3671,-3692,-3746,-3834,-3920,-3956,-3920,-3828,-3719,-3624,-3543,-3452,-3323,-3158,-2980,-2818,-2669,-2505,
+-2303,-2078,-1869,-1699,-1558,-1417,-1263,-1110,-974,-848,-708,-543,-367,-201,-44,124,322,539,750,938,
+1112,1292,1476,1645,1784,1899,2012,2130,2247,2357,2466,2580,2694,2800,2911,3042,3175,3247,3211,3104,
+3036,3092,3247,3389,3441,3426,3423,3472,3550,3624,3690,3767,3865,3985,4128,4254,4237,3921,3285,2546,
+2055,2024,2355,2743,2949,2955,2883,2812,2724,2583,2417,2285,2194,2092,1945,1784,1666,1593,1522,1421,
+1315,1240,1196,1143,1058,959,877,815,761,714,691,690,675,606,478,329,192,73,-42,-164,
+-283,-387,-474,-549,-612,-665,-707,-740,-761,-767,-765,-761,-756,-747,-740,-753,-788,-817,-793,-706,
+-605,-562,-611,-717,-812,-855,-854,-843,-848,-871,-894,-898,-877,-842,-815,-812,-827,-844,-855,-864,
+-876,-888,-890,-888,-894,-913,-935,-946,-950,-962,-988,-1015,-1027,-1027,-1030,-1040,-1048,-1043,-1031,-1026,
+-1034,-1040,-1028,-1001,-972,-953,-940,-930,-925,-933,-959,-1001,-1051,-1098,-1138,-1170,-1200,-1238,-1289,-1344,
+-1390,-1419,-1434,-1440,-1440,-1432,-1421,-1416,-1426,-1449,-1481,-1523,-1576,-1637,-1703,-1770,-1843,-1924,-2007,-2085,
+-2156,-2226,-2300,-2375,-2442,-2499,-2546,-2586,-2619,-2645,-2671,-2706,-2756,-2818,-2883,-2943,-2996,-3045,-3090,-3137,
+-3190,-3254,-3323,-3391,-3453,-3509,-3564,-3623,-3685,-3746,-3800,-3843,-3874,-3894,-3911,-3934,-3965,-4002,-4033,-4050,
+-4057,-4065,-4085,-4112,-4134,-4142,-4139,-4138,-4141,-4138,-4121,-4098,-4081,-4072,-4054,-4007,-3937,-3875,-3846,-3832,
+-3780,-3658,-3494,-3369,-3346,-3412,-3480,-3472,-3382,-3271,-3199,-3159,-3101,-2998,-2873,-2767,-2684,-2595,-2486,-2393,
+-2353,-2354,-2337,-2264,-2172,-2136,-2186,-2274,-2332,-2339,-2336,-2371,-2453,-2553,-2645,-2721,-2784,-2833,-2862,-2863,
+-2827,-2748,-2640,-2539,-2484,-2485,-2509,-2513,-2484,-2445,-2425,-2430,-2449,-2473,-2500,-2535,-2576,-2622,-2678,-2741,
+-2794,-2819,-2816,-2799,-2782,-2765,-2736,-2698,-2674,-2690,-2750,-2837,-2933,-3026,-3115,-3202,-3290,-3388,-3501,-3628,
+-3758,-3883,-4010,-4151,-4314,-4492,-4665,-4815,-4926,-4993,-5022,-5021,-5002,-4969,-4921,-4863,-4800,-4735,-4660,-4574,
+-4485,-4410,-4345,-4257,-4114,-3924,-3747,-3652,-3653,-3699,-3717,-3678,-3608,-3551,-3527,-3519,-3506,-3476,-3428,-3367,
+-3297,-3225,-3154,-3079,-2988,-2879,-2762,-2648,-2532,-2401,-2254,-2102,-1954,-1803,-1636,-1452,-1262,-1078,-897,-712,
+-522,-336,-156,23,211,404,594,778,962,1145,1325,1501,1685,1886,2095,2287,2445,2573,2686,2791,
+2885,2970,3058,3152,3241,3311,3368,3433,3510,3583,3633,3666,3705,3757,3801,3818,3818,3832,3867,3891,
+3867,3794,3714,3670,3658,3644,3596,3524,3459,3429,3435,3462,3499,3554,3645,3778,3934,4078,4189,4274,
+4357,4436,4480,4453,4362,4257,4193,4182,4201,4223,4245,4266,4266,4228,4170,4155,4237,4407,4592,4722,
+4787,4835,4921,5058,5220,5358,5428,5407,5311,5191,5101,5058,5024,4942,4791,4600,4420,4312,4195,4112,
+4060,4022,3967,3855,3672,3455,3261,3126,3036,2965,2908,2879,2886,2910,2937,2977,3052,3158,3251,3291,
+3284,3271,3287,3319,3328,3288,3208,3118,3039,2976,2926,2887,2858,2836,2823,2832,2876,2945,3009,3022,
+2956,2809,2601,2356,2094,1836,1601,1406,1258,1152,1076,1017,971,944,953,1019,1149,1320,1481,1586,
+1618,1595,1554,1523,1520,1561,1658,1799,1937,2014,2001,1923,1834,1773,1730,1670,1565,1415,1236,1042,
+834,609,375,144,-78,-301,-529,-758,-964,-1130,-1252,-1344,-1407,-1415,-1324,-1111,-805,-484,-238,-121,
+-122,-177,-218,-221,-218,-258,-352,-456,-525,-573,-678,-898,-1187,-1416,-1488,-1441,-1410,-1497,-1681,-1857,
+-1957,-2003,-2060,-2150,-2246,-2324,-2400,-2492,-2583,-2635,-2639,-2634,-2667,-2753,-2890,-3100,-3419,-3833,-4237,-4488,
+-4512,-4370,-4209,-4153,-4240,-4417,-4589,-4647,-4495,-4096,-3524,-2958,-2591,-2503,-2612,-2751,-2805,-2783,-2768,-2808,
+-2873,-2905,-2896,-2897,-2952,-3043,-3110,-3120,-3103,-3114,-3178,-3276,-3372,-3461,-3557,-3674,-3802,-3911,-3982,-4016,
+-4033,-4053,-4076,-4087,-4067,-4023,-3981,-3970,-3994,-4019,-3999,-3913,-3785,-3668,-3607,-3606,-3635,-3658,-3663,-3657,
+-3646,-3627,-3601,-3587,-3617,-3701,-3813,-3905,-3939,-3907,-3827,-3721,-3609,-3497,-3383,-3259,-3121,-2976,-2832,-2683,
+-2513,-2312,-2095,-1893,-1717,-1552,-1374,-1184,-1006,-862,-743,-619,-470,-298,-122,47,217,396,585,779,
+973,1172,1374,1564,1720,1836,1929,2028,2146,2274,2401,2524,2643,2751,2842,2934,3047,3161,3206,3131,
+2982,2886,2937,3100,3252,3320,3345,3412,3537,3659,3730,3775,3849,3958,4070,4159,4214,4168,3894,3332,
+2636,2126,2047,2352,2756,2990,3003,2913,2823,2733,2602,2444,2316,2234,2153,2028,1879,1755,1673,1598,
+1499,1393,1313,1263,1210,1133,1048,978,925,875,821,777,744,698,612,487,350,226,113,2,
+-108,-213,-307,-395,-473,-538,-589,-635,-680,-714,-728,-727,-730,-737,-732,-710,-695,-719,-773,-803,
+-765,-683,-629,-655,-740,-818,-846,-834,-824,-838,-863,-875,-864,-843,-832,-838,-853,-860,-853,-837,
+-830,-837,-852,-865,-873,-881,-885,-878,-863,-853,-865,-894,-920,-929,-930,-939,-955,-962,-952,-937,
+-936,-949,-959,-950,-927,-906,-893,-884,-873,-863,-860,-870,-897,-940,-996,-1051,-1092,-1121,-1155,-1208,
+-1273,-1329,-1364,-1380,-1388,-1392,-1387,-1375,-1366,-1369,-1385,-1411,-1450,-1502,-1564,-1628,-1688,-1752,-1828,-1915,
+-2005,-2089,-2167,-2242,-2313,-2381,-2444,-2503,-2553,-2589,-2612,-2634,-2672,-2727,-2787,-2841,-2889,-2936,-2987,-3040,
+-3091,-3142,-3201,-3270,-3342,-3406,-3462,-3515,-3575,-3639,-3701,-3755,-3799,-3840,-3878,-3911,-3940,-3968,-4002,-4038,
+-4066,-4078,-4083,-4095,-4120,-4145,-4156,-4151,-4144,-4146,-4153,-4151,-4135,-4117,-4103,-4089,-4056,-3998,-3933,-3884,
+-3854,-3811,-3718,-3574,-3432,-3364,-3393,-3470,-3509,-3461,-3352,-3241,-3157,-3077,-2975,-2859,-2763,-2697,-2637,-2559,
+-2476,-2424,-2412,-2398,-2346,-2271,-2232,-2265,-2345,-2409,-2423,-2408,-2407,-2445,-2510,-2579,-2632,-2667,-2694,-2722,
+-2751,-2756,-2710,-2617,-2522,-2476,-2494,-2533,-2543,-2508,-2460,-2433,-2436,-2453,-2472,-2491,-2511,-2532,-2561,-2609,
+-2674,-2735,-2764,-2751,-2718,-2690,-2676,-2667,-2654,-2650,-2674,-2733,-2819,-2914,-3008,-3101,-3198,-3300,-3409,-3524,
+-3645,-3771,-3902,-4035,-4164,-4288,-4418,-4568,-4738,-4902,-5021,-5075,-5074,-5047,-5015,-4980,-4937,-4883,-4817,-4738,
+-4646,-4551,-4471,-4405,-4329,-4209,-4045,-3885,-3788,-3775,-3803,-3807,-3760,-3684,-3624,-3597,-3590,-3579,-3556,-3522,
+-3478,-3423,-3356,-3277,-3186,-3080,-2964,-2846,-2730,-2613,-2484,-2345,-2204,-2064,-1914,-1742,-1549,-1353,-1166,-985,
+-801,-615,-433,-256,-75,116,312,503,686,868,1053,1239,1426,1621,1827,2027,2198,2329,2434,2533,
+2632,2725,2812,2903,2997,3082,3149,3208,3276,3353,3417,3456,3491,3545,3610,3652,3655,3649,3681,3747,
+3788,3747,3636,3523,3461,3447,3434,3393,3337,3302,3308,3348,3402,3458,3520,3600,3705,3823,3934,4020,
+4086,4145,4198,4222,4193,4129,4081,4095,4169,4260,4329,4365,4376,4367,4343,4330,4371,4483,4633,4759,
+4832,4883,4962,5085,5213,5299,5321,5289,5221,5131,5036,4958,4903,4848,4759,4623,4462,4312,4236,4139,
+4045,3954,3864,3761,3623,3448,3264,3113,3011,2938,2869,2808,2773,2769,2780,2794,2830,2913,3039,3160,
+3231,3250,3255,3275,3301,3300,3255,3179,3101,3039,2995,2965,2946,2931,2914,2893,2879,2886,2913,2932,
+2907,2816,2669,2499,2334,2187,2054,1930,1817,1713,1615,1515,1413,1318,1245,1212,1235,1318,1445,1573,
+1656,1677,1654,1623,1608,1615,1647,1708,1793,1875,1912,1882,1806,1728,1676,1643,1591,1491,1340,1154,
+954,751,544,332,118,-95,-310,-530,-758,-987,-1200,-1381,-1518,-1611,-1653,-1619,-1479,-1224,-893,-569,
+-337,-235,-233,-261,-272,-270,-295,-364,-445,-494,-523,-609,-819,-1120,-1385,-1503,-1483,-1443,-1496,-1642,
+-1801,-1907,-1976,-2057,-2171,-2294,-2401,-2494,-2577,-2640,-2671,-2688,-2729,-2805,-2893,-2987,-3144,-3436,-3857,-4275,
+-4520,-4522,-4358,-4179,-4089,-4112,-4219,-4379,-4539,-4608,-4487,-4148,-3683,-3256,-2980,-2844,-2756,-2658,-2578,-2583,
+-2682,-2801,-2856,-2840,-2824,-2871,-2970,-3062,-3110,-3138,-3190,-3277,-3376,-3460,-3531,-3603,-3684,-3766,-3842,-3909,
+-3966,-4007,-4031,-4043,-4055,-4062,-4048,-4002,-3933,-3863,-3805,-3751,-3684,-3602,-3526,-3485,-3495,-3541,-3598,-3645,
+-3672,-3674,-3642,-3588,-3548,-3562,-3642,-3752,-3842,-3881,-3867,-3815,-3730,-3614,-3479,-3338,-3199,-3062,-2922,-2777,
+-2622,-2451,-2262,-2068,-1887,-1716,-1537,-1334,-1117,-919,-764,-642,-526,-385,-214,-24,164,340,506,675,
+860,1062,1273,1477,1659,1806,1918,2011,2111,2233,2372,2513,2642,2754,2843,2914,2988,3081,3166,3172,
+3057,2882,2782,2848,3029,3200,3293,3365,3496,3672,3801,3832,3831,3890,4021,4152,4229,4252,4198,3960,
+3450,2772,2229,2095,2370,2780,3030,3038,2924,2820,2740,2629,2478,2340,2250,2175,2067,1927,1802,1719,
+1651,1564,1457,1361,1291,1231,1163,1095,1040,997,948,886,818,751,675,580,472,367,268,164,
+49,-66,-167,-253,-332,-403,-458,-499,-545,-603,-659,-689,-695,-699,-710,-710,-685,-656,-668,-730,
+-795,-808,-767,-728,-738,-785,-819,-810,-780,-766,-778,-793,-789,-770,-762,-780,-816,-845,-848,-824,
+-791,-768,-762,-768,-780,-794,-807,-811,-799,-781,-776,-795,-828,-849,-852,-852,-863,-881,-886,-872,
+-856,-856,-868,-875,-864,-846,-834,-831,-829,-823,-816,-812,-814,-826,-858,-911,-969,-1015,-1046,-1081,
+-1137,-1208,-1271,-1311,-1334,-1351,-1364,-1363,-1349,-1333,-1328,-1336,-1353,-1383,-1430,-1491,-1556,-1615,-1673,-1744,
+-1830,-1924,-2017,-2102,-2179,-2248,-2312,-2376,-2442,-2504,-2549,-2576,-2599,-2637,-2694,-2755,-2806,-2847,-2889,-2940,
+-2995,-3050,-3102,-3160,-3225,-3295,-3359,-3415,-3469,-3528,-3593,-3656,-3711,-3761,-3813,-3868,-3917,-3953,-3981,-4010,
+-4047,-4081,-4101,-4108,-4116,-4137,-4163,-4177,-4172,-4161,-4158,-4166,-4172,-4164,-4147,-4133,-4125,-4113,-4081,-4027,
+-3968,-3921,-3880,-3810,-3685,-3526,-3402,-3373,-3433,-3506,-3508,-3423,-3296,-3180,-3082,-2978,-2863,-2763,-2698,-2653,
+-2597,-2528,-2476,-2458,-2452,-2419,-2357,-2311,-2320,-2375,-2428,-2443,-2427,-2413,-2424,-2454,-2480,-2489,-2485,-2490,
+-2525,-2587,-2637,-2635,-2577,-2510,-2490,-2528,-2576,-2585,-2548,-2500,-2477,-2481,-2493,-2500,-2508,-2522,-2545,-2578,
+-2628,-2689,-2740,-2754,-2728,-2686,-2658,-2652,-2656,-2657,-2660,-2681,-2730,-2803,-2886,-2969,-3057,-3158,-3277,-3405,
+-3530,-3650,-3776,-3917,-4063,-4185,-4269,-4342,-4451,-4620,-4820,-4985,-5073,-5091,-5077,-5062,-5047,-5016,-4962,-4888,
+-4799,-4698,-4594,-4503,-4434,-4376,-4301,-4196,-4082,-3995,-3954,-3938,-3909,-3848,-3777,-3726,-3707,-3701,-3687,-3657,
+-3617,-3572,-3520,-3455,-3374,-3279,-3171,-3055,-2935,-2817,-2696,-2569,-2437,-2301,-2160,-2004,-1825,-1632,-1440,-1255,
+-1073,-888,-703,-525,-350,-167,30,232,424,605,786,973,1164,1356,1552,1749,1929,2074,2183,2277,
+2378,2482,2578,2664,2750,2837,2916,2982,3045,3118,3192,3246,3279,3320,3391,3466,3499,3484,3476,3527,
+3619,3669,3613,3480,3356,3298,3287,3273,3231,3187,3177,3212,3277,3351,3423,3489,3555,3626,3708,3792,
+3860,3906,3938,3970,4000,4018,4030,4061,4132,4235,4337,4408,4439,4435,4405,4365,4352,4408,4537,4697,
+4830,4926,5025,5159,5303,5388,5366,5259,5130,5026,4943,4861,4771,4685,4607,4529,4438,4337,4236,4090,
+3991,3884,3773,3657,3529,3381,3219,3072,2965,2899,2844,2782,2720,2682,2675,2681,2689,2719,2799,2923,
+3051,3140,3187,3219,3257,3290,3290,3247,3175,3105,3055,3030,3024,3026,3024,3008,2977,2940,2909,2882,
+2846,2781,2679,2553,2430,2328,2251,2189,2133,2078,2018,1939,1836,1717,1605,1521,1469,1450,1465,1513,
+1578,1635,1665,1677,1690,1716,1746,1771,1796,1829,1860,1860,1809,1720,1631,1572,1540,1500,1418,1280,
+1100,903,706,516,325,126,-80,-290,-503,-724,-957,-1190,-1400,-1565,-1681,-1755,-1782,-1731,-1569,-1290,
+-947,-632,-422,-339,-340,-360,-369,-376,-405,-448,-482,-507,-579,-764,-1053,-1342,-1511,-1533,-1494,-1508,
+-1615,-1768,-1903,-2002,-2081,-2164,-2258,-2368,-2491,-2602,-2666,-2686,-2719,-2813,-2951,-3058,-3110,-3190,-3419,-3811,
+-4226,-4479,-4497,-4364,-4222,-4149,-4138,-4171,-4259,-4410,-4573,-4636,-4510,-4200,-3801,-3416,-3090,-2809,-2571,-2422,
+-2412,-2530,-2680,-2765,-2767,-2750,-2785,-2878,-2984,-3067,-3132,-3200,-3275,-3343,-3405,-3472,-3550,-3627,-3689,-3744,
+-3808,-3881,-3937,-3957,-3954,-3961,-3991,-4015,-3989,-3897,-3772,-3661,-3594,-3560,-3532,-3493,-3459,-3449,-3473,-3519,
+-3574,-3623,-3656,-3657,-3629,-3597,-3597,-3644,-3715,-3772,-3797,-3795,-3770,-3710,-3602,-3454,-3294,-3144,-3009,-2877,
+-2741,-2596,-2438,-2263,-2078,-1892,-1704,-1505,-1289,-1069,-867,-700,-560,-429,-284,-111,81,274,450,608,
+772,961,1170,1377,1564,1730,1878,2005,2112,2214,2333,2476,2627,2759,2858,2926,2981,3042,3113,3160,
+3122,2980,2807,2733,2829,3035,3221,3331,3425,3578,3762,3875,3875,3847,3901,4047,4194,4278,4305,4271,
+4076,3608,2936,2351,2157,2393,2799,3060,3067,2937,2825,2760,2675,2537,2388,2277,2194,2089,1954,1826,
+1741,1685,1616,1521,1421,1338,1269,1200,1131,1070,1019,962,893,815,734,650,559,471,391,309,
+207,84,-39,-138,-212,-275,-332,-376,-409,-453,-520,-591,-636,-645,-645,-656,-666,-656,-632,-634,
+-681,-745,-780,-774,-761,-770,-790,-786,-749,-704,-684,-690,-696,-685,-669,-671,-702,-746,-779,-788,
+-776,-755,-736,-721,-709,-701,-702,-713,-721,-719,-710,-713,-735,-761,-772,-765,-758,-767,-785,-792,
+-784,-774,-776,-783,-781,-765,-749,-744,-748,-750,-749,-750,-757,-766,-778,-805,-853,-909,-954,-984,
+-1016,-1070,-1138,-1198,-1239,-1269,-1296,-1318,-1324,-1313,-1302,-1301,-1308,-1318,-1335,-1372,-1428,-1491,-1549,-1606,
+-1671,-1751,-1841,-1932,-2018,-2096,-2163,-2221,-2280,-2347,-2416,-2472,-2510,-2540,-2582,-2643,-2712,-2775,-2824,-2868,
+-2914,-2964,-3015,-3065,-3119,-3179,-3245,-3311,-3374,-3434,-3493,-3554,-3617,-3678,-3737,-3796,-3857,-3913,-3958,-3993,
+-4027,-4065,-4103,-4127,-4137,-4145,-4161,-4184,-4200,-4200,-4191,-4187,-4193,-4200,-4196,-4182,-4167,-4162,-4164,-4154,
+-4117,-4060,-4005,-3965,-3916,-3814,-3649,-3476,-3379,-3395,-3470,-3509,-3458,-3344,-3223,-3121,-3021,-2910,-2805,-2728,
+-2673,-2614,-2545,-2493,-2478,-2482,-2465,-2414,-2360,-2340,-2356,-2378,-2386,-2383,-2388,-2404,-2412,-2394,-2351,-2306,
+-2295,-2340,-2430,-2519,-2562,-2551,-2526,-2533,-2579,-2621,-2623,-2587,-2551,-2540,-2550,-2558,-2557,-2559,-2576,-2608,
+-2652,-2702,-2748,-2771,-2762,-2730,-2699,-2691,-2701,-2712,-2713,-2709,-2719,-2752,-2804,-2862,-2920,-2987,-3084,-3219,
+-3375,-3522,-3654,-3791,-3957,-4133,-4269,-4332,-4354,-4407,-4540,-4731,-4908,-5017,-5061,-5077,-5090,-5095,-5074,-5022,
+-4949,-4864,-4768,-4665,-4564,-4484,-4427,-4379,-4322,-4250,-4173,-4106,-4048,-3989,-3924,-3868,-3836,-3830,-3828,-3808,
+-3764,-3707,-3647,-3587,-3520,-3444,-3357,-3258,-3148,-3029,-2908,-2787,-2664,-2535,-2396,-2246,-2079,-1899,-1714,-1532,
+-1353,-1169,-979,-791,-614,-439,-252,-51,151,342,523,708,902,1098,1289,1475,1651,1804,1924,2021,
+2118,2228,2339,2433,2511,2588,2670,2747,2812,2877,2952,3024,3074,3109,3161,3244,3321,3343,3316,3308,
+3373,3475,3521,3457,3327,3226,3195,3201,3185,3138,3098,3099,3143,3212,3292,3372,3443,3498,3548,3609,
+3683,3748,3785,3800,3823,3876,3953,4038,4124,4212,4302,4383,4441,4464,4444,4379,4297,4255,4312,4475,
+4686,4874,5016,5141,5274,5387,5411,5315,5142,4975,4862,4787,4704,4594,4477,4381,4310,4248,4176,4090,
+3840,3717,3606,3511,3422,3320,3196,3060,2940,2858,2811,2773,2723,2671,2638,2629,2631,2638,2665,2733,
+2839,2950,3036,3097,3155,3220,3275,3293,3264,3203,3141,3101,3092,3104,3119,3117,3092,3048,2996,2943,
+2885,2815,2730,2635,2540,2458,2389,2329,2271,2218,2176,2137,2078,1985,1873,1773,1708,1671,1639,1607,
+1587,1591,1617,1653,1698,1758,1828,1883,1906,1901,1890,1880,1854,1789,1686,1579,1500,1456,1418,1350,
+1233,1072,890,707,532,357,171,-28,-237,-451,-672,-904,-1140,-1357,-1535,-1668,-1770,-1846,-1880,-1831,
+-1664,-1386,-1058,-769,-589,-525,-525,-526,-503,-472,-451,-441,-443,-493,-651,-932,-1257,-1498,-1580,-1548,
+-1520,-1582,-1734,-1908,-2037,-2096,-2108,-2133,-2227,-2390,-2559,-2661,-2700,-2766,-2931,-3149,-3299,-3328,-3344,-3513,
+-3878,-4292,-4557,-4592,-4486,-4372,-4312,-4288,-4276,-4298,-4384,-4515,-4614,-4597,-4430,-4146,-3807,-3461,-3130,-2835,
+-2618,-2527,-2564,-2667,-2751,-2778,-2778,-2801,-2864,-2947,-3023,-3083,-3132,-3169,-3201,-3244,-3317,-3411,-3496,-3558,
+-3617,-3701,-3803,-3883,-3911,-3904,-3915,-3968,-4033,-4050,-3982,-3851,-3718,-3635,-3607,-3597,-3570,-3523,-3477,-3456,
+-3464,-3495,-3547,-3611,-3666,-3691,-3687,-3679,-3688,-3710,-3726,-3729,-3724,-3709,-3661,-3557,-3407,-3244,-3097,-2969,
+-2849,-2730,-2609,-2478,-2323,-2136,-1923,-1698,-1472,-1250,-1041,-848,-670,-500,-336,-174,-4,172,345,503,
+651,816,1017,1236,1439,1612,1769,1926,2069,2181,2271,2377,2521,2682,2819,2909,2964,3008,3054,3088,
+3079,2996,2850,2717,2702,2843,3072,3269,3386,3479,3615,3773,3868,3872,3860,3925,4067,4204,4282,4315,
+4302,4137,3699,3040,2434,2192,2384,2779,3065,3101,2982,2865,2802,2732,2607,2453,2327,2236,2142,2020,
+1894,1801,1738,1674,1592,1503,1426,1355,1276,1187,1102,1031,965,894,815,733,650,566,485,412,
+337,240,121,2,-88,-149,-199,-251,-297,-335,-379,-443,-514,-563,-576,-573,-582,-603,-614,-608,
+-606,-629,-668,-699,-712,-721,-735,-741,-721,-677,-634,-616,-618,-620,-611,-600,-603,-626,-663,-701,
+-732,-753,-765,-767,-755,-729,-696,-671,-662,-660,-654,-640,-631,-634,-643,-643,-631,-620,-625,-640,
+-652,-655,-657,-662,-665,-656,-639,-628,-633,-643,-649,-651,-659,-675,-693,-712,-741,-788,-844,-889,
+-918,-946,-990,-1047,-1101,-1143,-1179,-1215,-1243,-1256,-1257,-1262,-1277,-1293,-1303,-1312,-1336,-1379,-1432,-1484,
+-1537,-1601,-1678,-1759,-1840,-1918,-1990,-2054,-2109,-2164,-2229,-2302,-2369,-2420,-2461,-2511,-2580,-2661,-2740,-2805,
+-2854,-2895,-2935,-2977,-3024,-3074,-3129,-3192,-3264,-3339,-3409,-3469,-3525,-3586,-3654,-3723,-3787,-3846,-3902,-3956,
+-4007,-4054,-4098,-4134,-4159,-4171,-4179,-4191,-4209,-4226,-4234,-4235,-4235,-4239,-4244,-4244,-4234,-4218,-4205,-4200,
+-4194,-4168,-4119,-4067,-4033,-4003,-3931,-3782,-3589,-3439,-3398,-3444,-3491,-3469,-3380,-3271,-3173,-3082,-2984,-2885,
+-2799,-2721,-2635,-2545,-2481,-2464,-2474,-2469,-2431,-2381,-2345,-2327,-2313,-2301,-2308,-2342,-2379,-2384,-2341,-2268,
+-2205,-2191,-2240,-2337,-2443,-2518,-2549,-2560,-2581,-2616,-2639,-2632,-2603,-2581,-2581,-2593,-2599,-2597,-2595,-2606,
+-2631,-2667,-2705,-2733,-2738,-2720,-2698,-2697,-2720,-2753,-2773,-2776,-2770,-2772,-2793,-2826,-2858,-2886,-2929,-3019,
+-3171,-3355,-3526,-3667,-3811,-3996,-4209,-4380,-4453,-4449,-4453,-4531,-4676,-4830,-4945,-5017,-5069,-5109,-5128,-5114,
+-5071,-5013,-4945,-4866,-4771,-4670,-4578,-4508,-4459,-4415,-4360,-4288,-4207,-4129,-4061,-4005,-3965,-3945,-3941,-3936,
+-3911,-3859,-3791,-3719,-3650,-3582,-3511,-3432,-3342,-3238,-3120,-2997,-2876,-2755,-2626,-2483,-2322,-2149,-1972,-1796,
+-1623,-1447,-1262,-1070,-882,-702,-523,-333,-132,65,250,432,624,827,1027,1212,1379,1530,1659,1762,
+1854,1956,2073,2183,2270,2341,2417,2504,2584,2648,2708,2780,2855,2913,2958,3018,3104,3178,3197,3175,
+3180,3255,3354,3385,3313,3198,3128,3128,3146,3128,3078,3040,3045,3086,3148,3225,3309,3384,3434,3470,
+3518,3586,3652,3690,3705,3732,3797,3892,3992,4082,4169,4263,4360,4440,4473,4437,4334,4213,4157,4232,
+4437,4693,4906,5036,5110,5170,5213,5198,5101,4954,4817,4727,4662,4578,4457,4326,4216,4132,4054,3957,
+3840,3554,3409,3302,3236,3191,3141,3066,2972,2878,2807,2762,2731,2700,2669,2647,2635,2629,2631,2656,
+2716,2801,2884,2950,3010,3082,3166,3240,3275,3267,3228,3186,3161,3163,3182,3194,3180,3137,3079,3020,
+2962,2897,2820,2737,2660,2597,2546,2496,2431,2351,2271,2210,2164,2107,2016,1905,1814,1773,1769,1764,
+1737,1698,1675,1677,1703,1753,1830,1920,1990,2013,1990,1949,1912,1868,1795,1687,1570,1474,1410,1361,
+1295,1193,1058,903,743,582,415,235,41,-163,-375,-595,-821,-1047,-1260,-1447,-1602,-1732,-1844,-1937,
+-1987,-1950,-1789,-1512,-1190,-923,-779,-741,-732,-687,-598,-500,-418,-362,-363,-482,-754,-1121,-1442,-1596,
+-1584,-1520,-1536,-1673,-1873,-2031,-2080,-2042,-2014,-2095,-2295,-2519,-2664,-2739,-2859,-3110,-3418,-3615,-3630,-3590,
+-3704,-4035,-4435,-4694,-4730,-4628,-4513,-4443,-4404,-4383,-4393,-4447,-4531,-4606,-4638,-4606,-4503,-4337,-4123,-3878,
+-3612,-3345,-3120,-2984,-2942,-2955,-2968,-2960,-2943,-2936,-2943,-2959,-2977,-2995,-3012,-3039,-3091,-3172,-3259,-3326,
+-3373,-3440,-3558,-3707,-3832,-3895,-3919,-3958,-4043,-4147,-4205,-4167,-4039,-3878,-3752,-3688,-3663,-3631,-3575,-3508,
+-3457,-3436,-3452,-3507,-3595,-3684,-3733,-3729,-3699,-3681,-3686,-3697,-3698,-3685,-3656,-3593,-3484,-3341,-3196,-3064,
+-2938,-2807,-2679,-2567,-2463,-2332,-2149,-1917,-1665,-1421,-1204,-1012,-833,-649,-455,-259,-75,92,249,396,
+529,663,828,1037,1267,1476,1654,1820,1988,2136,2235,2304,2397,2544,2715,2851,2932,2979,3018,3040,
+3017,2934,2808,2686,2633,2702,2892,3131,3329,3449,3535,3641,3760,3843,3873,3900,3980,4102,4211,4276,
+4310,4295,4132,3722,3112,2537,2269,2393,2742,3044,3141,3069,2956,2871,2790,2668,2517,2384,2292,2219,
+2129,2021,1917,1828,1745,1662,1585,1519,1450,1359,1248,1143,1061,993,922,841,754,667,578,493,
+418,351,274,180,80,0,-57,-108,-168,-229,-280,-324,-375,-435,-483,-503,-506,-516,-539,-563,
+-573,-576,-586,-606,-628,-647,-663,-674,-672,-651,-619,-593,-582,-581,-579,-569,-557,-553,-565,-595,
+-639,-684,-719,-740,-753,-754,-738,-703,-662,-631,-612,-594,-565,-529,-503,-494,-492,-487,-480,-478,
+-484,-493,-502,-511,-519,-519,-508,-495,-496,-514,-537,-550,-556,-564,-580,-597,-615,-642,-688,-746,
+-798,-832,-859,-896,-946,-999,-1049,-1096,-1137,-1168,-1186,-1198,-1219,-1248,-1273,-1285,-1292,-1310,-1341,-1380,
+-1420,-1468,-1533,-1611,-1687,-1756,-1819,-1880,-1938,-1993,-2052,-2121,-2199,-2275,-2338,-2392,-2452,-2526,-2612,-2699,
+-2773,-2828,-2867,-2901,-2940,-2987,-3038,-3090,-3150,-3225,-3310,-3389,-3450,-3501,-3558,-3630,-3708,-3778,-3839,-3897,
+-3959,-4025,-4085,-4133,-4168,-4192,-4208,-4218,-4228,-4241,-4258,-4273,-4283,-4287,-4289,-4292,-4297,-4296,-4282,-4259,
+-4239,-4223,-4201,-4163,-4119,-4090,-4073,-4027,-3909,-3727,-3552,-3458,-3455,-3482,-3473,-3408,-3315,-3223,-3137,-3055,
+-2976,-2896,-2800,-2679,-2554,-2466,-2435,-2439,-2439,-2417,-2389,-2365,-2335,-2291,-2249,-2242,-2280,-2328,-2340,-2303,
+-2242,-2200,-2201,-2250,-2335,-2433,-2515,-2567,-2591,-2603,-2612,-2613,-2599,-2579,-2564,-2559,-2560,-2562,-2562,-2559,
+-2554,-2553,-2567,-2598,-2631,-2647,-2644,-2640,-2656,-2693,-2735,-2765,-2780,-2787,-2796,-2815,-2840,-2861,-2875,-2905,
+-2992,-3154,-3354,-3528,-3654,-3778,-3960,-4197,-4407,-4513,-4518,-4501,-4536,-4635,-4759,-4877,-4981,-5072,-5136,-5161,
+-5149,-5116,-5072,-5015,-4939,-4847,-4749,-4657,-4580,-4521,-4474,-4424,-4359,-4283,-4210,-4154,-4114,-4085,-4064,-4048,
+-4031,-4001,-3950,-3884,-3812,-3741,-3670,-3596,-3518,-3430,-3327,-3208,-3081,-2958,-2835,-2705,-2558,-2395,-2225,-2052,
+-1880,-1707,-1530,-1346,-1160,-975,-793,-607,-411,-212,-22,158,342,541,748,943,1112,1259,1390,1503,
+1597,1686,1789,1903,2007,2086,2156,2242,2340,2427,2487,2540,2611,2696,2771,2829,2892,2970,3041,3072,
+3075,3105,3188,3274,3286,3205,3100,3047,3057,3075,3056,3012,2985,2995,3032,3087,3161,3249,3327,3374,
+3398,3431,3486,3551,3605,3649,3703,3769,3831,3875,3918,3997,4130,4291,4422,4469,4411,4281,4155,4121,
+4229,4449,4686,4847,4900,4885,4862,4857,4848,4807,4736,4663,4606,4550,4467,4347,4210,4084,3972,3854,
+3712,3554,3314,3167,3064,3009,2986,2973,2953,2914,2860,2803,2755,2723,2706,2699,2695,2687,2675,2670,
+2690,2740,2806,2863,2908,2958,3030,3114,3185,3222,3228,3219,3209,3208,3216,3226,3222,3191,3136,3073,
+3016,2962,2901,2830,2758,2701,2662,2633,2597,2533,2440,2336,2249,2182,2109,2005,1880,1782,1750,1776,
+1811,1818,1800,1781,1778,1795,1835,1899,1978,2040,2057,2028,1977,1922,1863,1783,1679,1567,1472,1399,
+1337,1266,1177,1070,949,814,662,493,310,118,-81,-288,-501,-716,-926,-1131,-1329,-1516,-1682,-1823,
+-1947,-2055,-2116,-2068,-1872,-1562,-1253,-1057,-995,-991,-947,-832,-679,-533,-415,-353,-407,-633,-995,-1357,
+-1569,-1590,-1518,-1499,-1611,-1814,-1999,-2077,-2054,-2031,-2118,-2327,-2557,-2707,-2801,-2977,-3315,-3708,-3947,-3947,
+-3854,-3904,-4172,-4515,-4733,-4758,-4669,-4566,-4487,-4431,-4411,-4447,-4526,-4613,-4689,-4770,-4865,-4944,-4970,-4930,
+-4826,-4649,-4386,-4063,-3756,-3541,-3428,-3363,-3286,-3180,-3065,-2968,-2902,-2864,-2852,-2868,-2917,-2999,-3095,-3165,
+-3190,-3196,-3243,-3365,-3534,-3687,-3787,-3860,-3958,-4103,-4260,-4361,-4346,-4208,-4002,-3815,-3707,-3670,-3651,-3605,
+-3533,-3464,-3430,-3446,-3515,-3617,-3704,-3724,-3672,-3601,-3576,-3611,-3667,-3694,-3672,-3605,-3503,-3377,-3252,-3146,
+-3043,-2912,-2743,-2570,-2435,-2335,-2221,-2048,-1815,-1558,-1317,-1111,-936,-773,-599,-402,-193,7,187,347,
+489,616,743,897,1095,1318,1530,1721,1905,2083,2226,2312,2373,2472,2629,2798,2918,2981,3023,3060,
+3053,2964,2806,2653,2583,2633,2791,3011,3231,3403,3518,3602,3686,3773,3847,3904,3964,4044,4136,4222,
+4292,4334,4305,4133,3777,3290,2821,2542,2537,2744,3001,3158,3163,3070,2954,2844,2725,2585,2448,2346,
+2280,2221,2142,2042,1933,1828,1733,1656,1590,1515,1410,1285,1172,1091,1029,961,875,781,687,592,
+500,423,369,324,263,185,107,41,-20,-92,-168,-231,-272,-307,-351,-399,-434,-450,-462,-481,
+-507,-531,-549,-564,-583,-603,-620,-630,-630,-619,-603,-589,-578,-569,-558,-544,-530,-516,-507,-515,
+-544,-583,-605,-596,-572,-562,-578,-597,-594,-566,-538,-526,-519,-497,-455,-411,-387,-384,-386,-380,
+-367,-358,-357,-363,-372,-378,-375,-365,-357,-365,-392,-424,-446,-457,-466,-478,-491,-503,-524,-566,
+-625,-683,-726,-758,-794,-844,-905,-967,-1024,-1070,-1103,-1125,-1146,-1173,-1203,-1226,-1241,-1255,-1277,-1305,
+-1334,-1366,-1411,-1476,-1553,-1625,-1684,-1736,-1786,-1838,-1894,-1959,-2037,-2123,-2205,-2278,-2343,-2411,-2487,-2569,
+-2652,-2727,-2787,-2832,-2869,-2912,-2963,-3018,-3070,-3127,-3199,-3283,-3363,-3425,-3474,-3528,-3600,-3684,-3764,-3834,
+-3901,-3970,-4041,-4104,-4155,-4192,-4221,-4242,-4257,-4269,-4281,-4296,-4312,-4323,-4326,-4324,-4328,-4340,-4350,-4344,
+-4321,-4292,-4271,-4252,-4225,-4189,-4159,-4140,-4107,-4017,-3861,-3683,-3548,-3486,-3474,-3464,-3425,-3358,-3273,-3187,
+-3112,-3050,-2983,-2880,-2732,-2573,-2457,-2407,-2402,-2404,-2399,-2397,-2394,-2368,-2305,-2229,-2189,-2202,-2241,-2264,
+-2257,-2241,-2242,-2270,-2321,-2392,-2473,-2548,-2597,-2610,-2599,-2577,-2557,-2540,-2524,-2504,-2480,-2460,-2452,-2455,
+-2455,-2440,-2424,-2433,-2484,-2558,-2618,-2643,-2641,-2636,-2641,-2658,-2683,-2713,-2740,-2764,-2789,-2820,-2849,-2869,
+-2899,-2982,-3139,-3331,-3487,-3581,-3673,-3841,-4090,-4332,-4473,-4503,-4493,-4514,-4587,-4692,-4814,-4945,-5067,-5150,
+-5180,-5172,-5149,-5114,-5054,-4964,-4861,-4765,-4684,-4615,-4557,-4510,-4467,-4416,-4358,-4304,-4267,-4243,-4221,-4195,
+-4167,-4139,-4103,-4054,-3994,-3928,-3858,-3781,-3699,-3613,-3522,-3418,-3300,-3172,-3044,-2917,-2783,-2635,-2477,-2314,
+-2147,-1972,-1792,-1610,-1431,-1254,-1076,-891,-697,-496,-298,-109,73,264,466,666,842,989,1117,1236,
+1343,1435,1522,1620,1727,1822,1896,1969,2063,2171,2262,2320,2370,2444,2544,2638,2706,2765,2833,2904,
+2955,2989,3040,3120,3186,3181,3099,3002,2955,2962,2976,2965,2939,2929,2944,2978,3027,3099,3189,3270,
+3318,3338,3360,3406,3479,3574,3686,3802,3884,3898,3859,3831,3887,4047,4250,4403,4437,4352,4214,4117,
+4129,4254,4431,4576,4631,4600,4535,4490,4486,4507,4524,4519,4498,4467,4421,4342,4224,4082,3937,3797,
+3649,3484,3314,3130,2999,2904,2845,2818,2820,2842,2865,2865,2834,2788,2749,2733,2740,2756,2766,2762,
+2756,2766,2799,2840,2875,2902,2942,3003,3072,3121,3142,3152,3169,3196,3220,3231,3226,3205,3165,3112,
+3058,3008,2960,2903,2840,2781,2735,2705,2680,2646,2586,2493,2381,2276,2190,2102,1988,1855,1753,1724,
+1763,1816,1839,1831,1818,1826,1855,1898,1945,1987,2010,2004,1971,1925,1872,1809,1732,1644,1557,1481,
+1414,1348,1278,1202,1121,1030,915,770,596,405,207,7,-199,-411,-619,-818,-1017,-1227,-1446,-1650,
+-1819,-1961,-2096,-2212,-2246,-2131,-1875,-1580,-1375,-1304,-1298,-1256,-1139,-984,-839,-716,-621,-603,-730,-1004,
+-1324,-1544,-1600,-1549,-1520,-1601,-1784,-1986,-2121,-2172,-2205,-2304,-2482,-2659,-2762,-2844,-3053,-3458,-3920,-4201,
+-4204,-4086,-4084,-4275,-4527,-4673,-4682,-4633,-4584,-4525,-4449,-4408,-4451,-4559,-4672,-4772,-4899,-5078,-5273,-5421,
+-5501,-5524,-5474,-5304,-5003,-4643,-4328,-4105,-3935,-3753,-3541,-3327,-3148,-3012,-2909,-2831,-2794,-2820,-2914,-3037,
+-3125,-3140,-3109,-3107,-3177,-3297,-3412,-3505,-3616,-3795,-4048,-4313,-4497,-4522,-4374,-4122,-3887,-3762,-3748,-3764,
+-3732,-3636,-3525,-3457,-3461,-3534,-3634,-3694,-3659,-3544,-3433,-3416,-3501,-3615,-3672,-3636,-3525,-3380,-3242,-3144,
+-3086,-3020,-2886,-2675,-2449,-2278,-2166,-2052,-1879,-1648,-1399,-1171,-973,-803,-651,-495,-317,-113,100,304,
+490,656,801,930,1065,1226,1409,1598,1786,1978,2160,2303,2396,2478,2603,2772,2927,3019,3064,3103,
+3134,3095,2946,2737,2588,2589,2740,2965,3182,3348,3465,3559,3645,3726,3801,3875,3954,4030,4093,4150,
+4224,4319,4383,4345,4177,3921,3636,3345,3066,2859,2809,2932,3119,3217,3168,3031,2898,2794,2683,2547,
+2418,2329,2274,2219,2138,2035,1927,1825,1736,1652,1558,1439,1306,1190,1110,1053,988,905,814,724,
+632,537,457,411,387,352,288,207,130,59,-17,-98,-165,-206,-232,-266,-314,-360,-390,-406,
+-425,-455,-494,-532,-563,-589,-610,-622,-622,-610,-594,-584,-579,-570,-549,-520,-494,-478,-467,-463,
+-476,-508,-530,-501,-412,-309,-257,-278,-335,-371,-371,-366,-388,-429,-451,-431,-382,-338,-314,-302,
+-286,-261,-238,-227,-228,-234,-238,-235,-226,-219,-226,-251,-284,-310,-324,-334,-348,-365,-383,-405,
+-442,-495,-554,-603,-640,-680,-733,-801,-871,-932,-980,-1019,-1052,-1083,-1111,-1135,-1154,-1173,-1198,-1230,
+-1264,-1293,-1326,-1372,-1433,-1501,-1564,-1618,-1668,-1718,-1766,-1820,-1886,-1969,-2061,-2148,-2225,-2297,-2370,-2444,
+-2519,-2596,-2673,-2744,-2802,-2848,-2893,-2945,-3001,-3057,-3114,-3179,-3254,-3329,-3393,-3446,-3502,-3572,-3656,-3744,
+-3829,-3909,-3983,-4051,-4111,-4162,-4206,-4243,-4272,-4293,-4308,-4321,-4334,-4346,-4353,-4353,-4352,-4359,-4377,-4394,
+-4396,-4379,-4354,-4335,-4321,-4301,-4269,-4234,-4207,-4174,-4103,-3975,-3805,-3639,-3518,-3456,-3435,-3423,-3394,-3332,
+-3248,-3169,-3106,-3039,-2929,-2761,-2577,-2439,-2377,-2371,-2382,-2390,-2398,-2399,-2366,-2287,-2187,-2117,-2104,-2133,
+-2172,-2203,-2234,-2272,-2320,-2378,-2446,-2520,-2582,-2613,-2607,-2576,-2540,-2513,-2496,-2478,-2450,-2410,-2371,-2351,
+-2353,-2355,-2344,-2336,-2369,-2466,-2598,-2712,-2764,-2751,-2700,-2643,-2603,-2597,-2621,-2656,-2688,-2722,-2767,-2815,
+-2853,-2887,-2960,-3099,-3272,-3408,-3485,-3568,-3739,-4001,-4259,-4415,-4460,-4464,-4492,-4559,-4651,-4765,-4901,-5036,
+-5131,-5169,-5172,-5164,-5142,-5084,-4986,-4877,-4786,-4717,-4659,-4605,-4561,-4524,-4487,-4444,-4405,-4379,-4364,-4349,
+-4325,-4296,-4263,-4223,-4171,-4110,-4045,-3975,-3893,-3802,-3708,-3613,-3511,-3395,-3268,-3139,-3008,-2871,-2723,-2570,
+-2413,-2248,-2070,-1884,-1701,-1527,-1356,-1179,-990,-793,-594,-398,-206,-13,187,388,572,724,848,963,
+1078,1187,1281,1367,1458,1556,1644,1715,1788,1883,1993,2086,2146,2197,2276,2385,2489,2563,2620,2684,
+2759,2828,2882,2934,2992,3032,3019,2952,2878,2843,2851,2869,2874,2869,2871,2885,2909,2951,3020,3110,
+3194,3252,3285,3316,3371,3468,3618,3811,4001,4116,4112,4021,3940,3958,4090,4263,4376,4372,4274,4160,
+4113,4160,4263,4348,4367,4322,4252,4201,4187,4203,4236,4270,4294,4302,4292,4257,4184,4065,3913,3752,
+3595,3441,3283,3130,2953,2849,2773,2720,2691,2697,2744,2809,2858,2865,2837,2800,2778,2782,2808,2839,
+2859,2864,2864,2871,2884,2895,2907,2934,2979,3026,3049,3050,3055,3086,3137,3179,3194,3184,3161,3127,
+3085,3040,2995,2948,2896,2842,2792,2751,2715,2676,2629,2564,2476,2371,2267,2179,2092,1988,1873,1786,
+1766,1801,1840,1839,1803,1775,1790,1846,1910,1947,1940,1897,1844,1800,1771,1744,1706,1657,1604,1553,
+1500,1440,1373,1306,1241,1175,1100,1002,870,704,513,312,106,-107,-327,-541,-744,-944,-1161,-1396,
+-1625,-1821,-1985,-2142,-2293,-2386,-2351,-2178,-1942,-1755,-1659,-1610,-1537,-1427,-1328,-1273,-1236,-1173,-1103,-1102,
+-1225,-1429,-1608,-1683,-1667,-1642,-1687,-1825,-2019,-2202,-2332,-2425,-2526,-2649,-2749,-2792,-2851,-3069,-3501,-3994,
+-4306,-4342,-4247,-4241,-4384,-4550,-4618,-4604,-4599,-4619,-4598,-4507,-4421,-4432,-4536,-4662,-4778,-4924,-5132,-5361,
+-5546,-5676,-5785,-5864,-5846,-5681,-5406,-5117,-4866,-4634,-4381,-4110,-3863,-3663,-3488,-3297,-3081,-2885,-2786,-2829,
+-2979,-3134,-3201,-3175,-3124,-3114,-3143,-3177,-3223,-3347,-3616,-4016,-4443,-4750,-4827,-4661,-4359,-4092,-3979,-4008,
+-4057,-4011,-3855,-3668,-3538,-3507,-3556,-3626,-3645,-3563,-3408,-3278,-3268,-3376,-3512,-3575,-3530,-3405,-3254,-3126,
+-3053,-3025,-2977,-2836,-2600,-2348,-2162,-2046,-1927,-1746,-1511,-1270,-1050,-851,-668,-507,-358,-197,-2,217,
+440,650,844,1013,1152,1270,1383,1508,1651,1815,1997,2181,2336,2459,2581,2733,2902,3036,3110,3149,
+3184,3189,3101,2905,2687,2581,2659,2882,3136,3324,3423,3479,3545,3637,3731,3813,3897,3994,4082,4129,
+4153,4219,4341,4432,4390,4234,4094,4035,3950,3684,3261,2916,2862,3056,3250,3258,3114,2965,2884,2815,
+2695,2540,2413,2337,2284,2219,2136,2043,1942,1834,1722,1609,1487,1357,1240,1152,1088,1023,946,865,
+786,702,607,521,466,442,416,360,281,202,130,57,-19,-85,-129,-158,-192,-239,-287,-321,
+-343,-369,-411,-467,-523,-567,-597,-615,-624,-621,-607,-593,-586,-579,-558,-518,-473,-442,-428,-421,
+-421,-440,-477,-491,-431,-294,-143,-63,-80,-144,-186,-190,-197,-251,-342,-415,-425,-374,-301,-239,
+-197,-162,-129,-101,-84,-77,-76,-75,-74,-70,-66,-71,-92,-123,-150,-164,-172,-187,-215,-247,
+-277,-309,-351,-403,-454,-499,-546,-607,-678,-748,-806,-856,-905,-955,-999,-1033,-1055,-1075,-1102,-1137,
+-1175,-1210,-1244,-1286,-1339,-1397,-1452,-1502,-1556,-1615,-1673,-1724,-1773,-1834,-1913,-2003,-2089,-2168,-2243,-2317,
+-2389,-2459,-2535,-2620,-2707,-2781,-2836,-2878,-2922,-2976,-3036,-3099,-3162,-3227,-3294,-3361,-3425,-3489,-3558,-3636,
+-3726,-3823,-3916,-3995,-4059,-4113,-4165,-4217,-4262,-4296,-4321,-4339,-4354,-4366,-4375,-4379,-4383,-4391,-4405,-4424,
+-4438,-4440,-4429,-4413,-4399,-4385,-4364,-4331,-4294,-4259,-4225,-4169,-4067,-3914,-3732,-3564,-3449,-3403,-3408,-3417,
+-3391,-3323,-3239,-3161,-3078,-2951,-2767,-2564,-2410,-2342,-2343,-2368,-2382,-2380,-2355,-2298,-2203,-2095,-2016,-1994,
+-2026,-2088,-2155,-2215,-2268,-2321,-2387,-2465,-2538,-2583,-2588,-2569,-2547,-2532,-2522,-2509,-2488,-2458,-2418,-2378,
+-2352,-2343,-2339,-2330,-2334,-2391,-2518,-2686,-2833,-2909,-2901,-2827,-2722,-2623,-2563,-2548,-2563,-2591,-2632,-2692,
+-2760,-2814,-2855,-2925,-3052,-3211,-3339,-3421,-3523,-3718,-3995,-4250,-4392,-4428,-4438,-4483,-4561,-4649,-4748,-4870,
+-5001,-5101,-5149,-5163,-5169,-5162,-5120,-5038,-4943,-4862,-4799,-4741,-4685,-4638,-4604,-4574,-4540,-4508,-4488,-4476,
+-4464,-4444,-4420,-4390,-4347,-4288,-4220,-4153,-4083,-4001,-3906,-3807,-3709,-3605,-3488,-3361,-3230,-3099,-2961,-2814,
+-2661,-2505,-2339,-2160,-1974,-1796,-1627,-1457,-1275,-1081,-887,-696,-506,-309,-104,101,293,458,590,702,
+812,928,1040,1136,1220,1306,1397,1481,1550,1621,1712,1818,1913,1980,2035,2112,2215,2318,2397,2459,
+2528,2612,2692,2751,2788,2816,2832,2822,2787,2750,2739,2755,2780,2794,2798,2799,2804,2819,2855,2920,
+3008,3099,3174,3233,3290,3369,3494,3678,3905,4120,4246,4248,4164,4082,4075,4146,4240,4291,4271,4203,
+4148,4151,4206,4260,4254,4181,4086,4024,4008,4015,4022,4028,4044,4072,4098,4104,4076,4001,3876,3713,
+3540,3375,3223,3081,2953,2761,2685,2636,2603,2585,2595,2644,2721,2795,2842,2859,2855,2842,2837,2854,
+2893,2934,2953,2946,2930,2919,2914,2912,2920,2943,2969,2976,2965,2960,2986,3034,3078,3100,3105,3100,
+3084,3050,3001,2950,2904,2860,2816,2775,2734,2687,2630,2565,2496,2419,2335,2252,2179,2110,2031,1945,
+1883,1869,1890,1898,1856,1778,1720,1727,1797,1876,1904,1852,1746,1640,1579,1565,1574,1580,1579,1572,
+1553,1510,1446,1374,1307,1245,1180,1105,1018,912,775,605,410,202,-16,-242,-468,-685,-897,-1118,
+-1354,-1588,-1800,-1988,-2172,-2353,-2494,-2535,-2459,-2307,-2151,-2022,-1904,-1783,-1691,-1685,-1767,-1853,-1847,-1737,
+-1615,-1583,-1661,-1782,-1863,-1876,-1854,-1859,-1939,-2098,-2294,-2466,-2587,-2676,-2753,-2808,-2832,-2892,-3106,-3515,
+-3982,-4290,-4355,-4308,-4333,-4464,-4580,-4589,-4549,-4564,-4631,-4644,-4552,-4437,-4418,-4513,-4650,-4781,-4934,-5136,
+-5350,-5523,-5660,-5806,-5967,-6073,-6057,-5930,-5753,-5564,-5352,-5109,-4867,-4671,-4514,-4334,-4061,-3684,-3286,-3005,
+-2946,-3093,-3311,-3443,-3437,-3359,-3297,-3270,-3254,-3267,-3400,-3745,-4278,-4844,-5234,-5303,-5064,-4681,-4376,-4279,
+-4340,-4391,-4297,-4067,-3817,-3655,-3601,-3614,-3631,-3597,-3484,-3319,-3185,-3158,-3235,-3339,-3387,-3359,-3278,-3178,
+-3086,-3023,-2981,-2910,-2748,-2501,-2255,-2087,-1986,-1869,-1681,-1445,-1214,-1003,-795,-585,-395,-231,-69,118,
+332,550,760,962,1152,1310,1427,1514,1597,1700,1836,2004,2190,2370,2533,2690,2850,2999,3113,3188,
+3238,3258,3202,3038,2807,2623,2592,2740,2993,3237,3388,3438,3451,3500,3600,3711,3804,3894,4008,4114,
+4161,4168,4225,4364,4477,4433,4273,4197,4295,4376,4149,3592,3042,2863,3067,3339,3393,3235,3060,2981,
+2940,2840,2681,2538,2446,2382,2314,2238,2156,2054,1928,1794,1675,1567,1458,1346,1247,1166,1090,1008,
+926,849,771,681,589,519,478,444,395,328,256,189,122,53,-7,-55,-94,-136,-180,-221,
+-253,-281,-319,-374,-440,-504,-553,-584,-602,-613,-616,-610,-601,-593,-579,-549,-500,-450,-416,-397,
+-382,-373,-389,-430,-457,-418,-304,-174,-100,-101,-130,-135,-112,-107,-162,-265,-357,-384,-338,-255,
+-175,-117,-75,-40,-8,19,45,68,84,90,90,89,84,63,27,-8,-27,-32,-41,-68,
+-105,-136,-161,-190,-233,-286,-343,-405,-475,-551,-619,-676,-729,-789,-853,-909,-948,-975,-1005,-1044,
+-1085,-1119,-1148,-1184,-1238,-1302,-1362,-1408,-1452,-1508,-1577,-1644,-1698,-1744,-1799,-1870,-1950,-2031,-2108,-2185,
+-2260,-2331,-2401,-2481,-2575,-2675,-2761,-2821,-2860,-2899,-2951,-3016,-3086,-3150,-3209,-3271,-3340,-3417,-3491,-3561,
+-3633,-3719,-3820,-3920,-4003,-4066,-4118,-4171,-4225,-4272,-4309,-4337,-4361,-4381,-4394,-4401,-4408,-4420,-4440,-4462,
+-4477,-4483,-4479,-4472,-4465,-4455,-4439,-4411,-4375,-4334,-4297,-4261,-4216,-4140,-4013,-3837,-3644,-3486,-3404,-3398,
+-3427,-3434,-3395,-3321,-3234,-3131,-2987,-2792,-2577,-2406,-2322,-2316,-2343,-2356,-2335,-2282,-2201,-2101,-1999,-1921,
+-1896,-1930,-2009,-2099,-2174,-2231,-2290,-2369,-2460,-2526,-2542,-2521,-2508,-2531,-2575,-2604,-2598,-2569,-2537,-2510,
+-2486,-2465,-2448,-2429,-2409,-2404,-2447,-2552,-2699,-2841,-2935,-2962,-2921,-2821,-2692,-2573,-2496,-2470,-2485,-2532,
+-2603,-2679,-2739,-2792,-2874,-3008,-3162,-3280,-3362,-3480,-3697,-3983,-4226,-4344,-4360,-4371,-4437,-4543,-4647,-4747,
+-4860,-4987,-5093,-5150,-5169,-5173,-5168,-5137,-5076,-5000,-4928,-4864,-4801,-4743,-4700,-4672,-4651,-4629,-4611,-4602,
+-4595,-4582,-4561,-4537,-4508,-4464,-4401,-4330,-4262,-4194,-4114,-4020,-3919,-3817,-3707,-3582,-3448,-3313,-3181,-3045,
+-2897,-2742,-2582,-2414,-2236,-2058,-1887,-1721,-1548,-1359,-1163,-975,-793,-604,-400,-189,10,183,326,447,
+559,673,791,903,999,1082,1165,1251,1332,1403,1474,1562,1665,1762,1834,1892,1959,2048,2144,2228,
+2301,2379,2468,2554,2615,2645,2655,2659,2660,2658,2659,2672,2696,2719,2728,2723,2713,2709,2721,2758,
+2823,2913,3013,3108,3192,3275,3375,3509,3680,3862,4011,4086,4085,4046,4018,4025,4057,4094,4120,4132,
+4140,4157,4194,4238,4251,4204,4112,4027,3988,3982,3966,3924,3882,3874,3904,3940,3949,3913,3828,3692,
+3518,3331,3156,3001,2869,2761,2585,2528,2496,2477,2469,2482,2527,2599,2683,2770,2852,2913,2935,2927,
+2923,2951,2994,3016,3001,2972,2955,2946,2932,2913,2906,2915,2920,2908,2892,2893,2914,2942,2967,2994,
+3018,3021,2986,2926,2867,2825,2795,2764,2727,2685,2632,2567,2494,2424,2363,2307,2255,2208,2160,2102,
+2036,1983,1960,1959,1942,1882,1790,1716,1703,1753,1818,1832,1760,1627,1494,1415,1397,1418,1453,1493,
+1524,1525,1483,1413,1344,1285,1222,1141,1051,970,894,797,655,471,266,54,-166,-394,-626,-854,
+-1083,-1315,-1545,-1762,-1967,-2172,-2373,-2542,-2641,-2652,-2592,-2490,-2363,-2217,-2086,-2037,-2119,-2293,-2434,-2422,
+-2248,-2022,-1881,-1879,-1967,-2055,-2089,-2072,-2055,-2094,-2216,-2396,-2570,-2690,-2763,-2825,-2888,-2949,-3044,-3252,
+-3604,-3995,-4255,-4320,-4299,-4342,-4465,-4553,-4534,-4479,-4499,-4589,-4634,-4566,-4463,-4451,-4561,-4727,-4889,-5053,
+-5238,-5420,-5566,-5687,-5828,-5995,-6136,-6201,-6191,-6138,-6051,-5919,-5754,-5608,-5514,-5439,-5294,-5003,-4563,-4067,
+-3677,-3526,-3621,-3817,-3935,-3903,-3794,-3719,-3702,-3702,-3724,-3872,-4254,-4841,-5438,-5788,-5746,-5370,-4886,-4550,
+-4466,-4535,-4548,-4385,-4101,-3851,-3727,-3704,-3700,-3660,-3571,-3439,-3284,-3152,-3088,-3097,-3140,-3174,-3190,-3191,
+-3170,-3119,-3044,-2955,-2831,-2639,-2394,-2171,-2030,-1944,-1828,-1636,-1406,-1191,-994,-783,-550,-327,-139,31,
+212,405,598,790,994,1203,1389,1525,1616,1689,1776,1895,2053,2243,2447,2645,2823,2973,3093,3191,
+3277,3338,3324,3185,2941,2702,2589,2652,2849,3090,3295,3411,3437,3431,3469,3575,3700,3796,3882,3998,
+4125,4193,4200,4247,4391,4523,4483,4298,4199,4325,4481,4320,3772,3188,2984,3205,3508,3568,3382,3169,
+3065,3016,2919,2774,2650,2571,2503,2421,2335,2252,2149,2013,1869,1752,1665,1578,1476,1370,1274,1181,
+1082,983,898,825,750,665,584,519,468,420,367,307,243,177,115,61,13,-34,-82,-124,
+-156,-186,-223,-272,-333,-399,-461,-511,-547,-572,-591,-603,-604,-597,-586,-571,-544,-504,-460,-422,
+-387,-349,-318,-319,-359,-404,-409,-361,-292,-243,-221,-199,-156,-105,-83,-114,-185,-254,-281,-259,
+-208,-158,-119,-86,-50,-9,35,87,141,185,206,208,208,210,199,164,115,79,67,64,
+50,23,-1,-17,-36,-72,-127,-194,-268,-347,-425,-495,-556,-618,-689,-762,-822,-864,-898,-939,
+-989,-1034,-1067,-1093,-1132,-1193,-1265,-1327,-1375,-1422,-1481,-1550,-1616,-1669,-1716,-1771,-1835,-1905,-1976,-2051,
+-2131,-2210,-2283,-2354,-2435,-2531,-2632,-2720,-2786,-2834,-2880,-2935,-3004,-3077,-3144,-3201,-3260,-3330,-3413,-3495,
+-3569,-3640,-3723,-3821,-3921,-4005,-4070,-4124,-4175,-4225,-4270,-4310,-4348,-4383,-4410,-4424,-4431,-4439,-4458,-4485,
+-4509,-4520,-4518,-4513,-4512,-4514,-4510,-4491,-4460,-4420,-4376,-4331,-4289,-4246,-4188,-4091,-3942,-3755,-3577,-3457,
+-3416,-3429,-3451,-3445,-3398,-3319,-3211,-3062,-2870,-2654,-2463,-2338,-2290,-2287,-2285,-2258,-2202,-2128,-2043,-1953,
+-1872,-1827,-1840,-1905,-1993,-2075,-2146,-2229,-2334,-2434,-2483,-2465,-2428,-2445,-2541,-2666,-2745,-2743,-2692,-2644,
+-2623,-2621,-2618,-2606,-2580,-2544,-2510,-2503,-2540,-2617,-2712,-2805,-2878,-2906,-2864,-2750,-2599,-2470,-2402,-2404,
+-2456,-2525,-2585,-2633,-2692,-2797,-2945,-3088,-3179,-3238,-3350,-3578,-3876,-4123,-4236,-4248,-4260,-4340,-4472,-4607,
+-4727,-4849,-4978,-5092,-5161,-5185,-5181,-5163,-5127,-5070,-5000,-4927,-4858,-4797,-4750,-4723,-4710,-4703,-4698,-4702,
+-4712,-4716,-4702,-4673,-4641,-4609,-4567,-4508,-4440,-4374,-4306,-4227,-4133,-4032,-3928,-3812,-3680,-3537,-3396,-3260,
+-3122,-2974,-2816,-2654,-2486,-2312,-2139,-1973,-1807,-1630,-1438,-1245,-1062,-882,-687,-472,-260,-77,67,188,
+303,422,545,665,774,869,952,1033,1115,1195,1270,1346,1433,1530,1623,1698,1757,1816,1891,1979,
+2068,2150,2231,2318,2406,2476,2517,2534,2542,2557,2580,2607,2636,2662,2675,2670,2651,2632,2628,2646,
+2689,2758,2855,2967,3077,3176,3273,3383,3510,3634,3718,3742,3719,3693,3702,3747,3801,3841,3873,3923,
+3998,4081,4151,4200,4229,4230,4193,4135,4087,4063,4035,3969,3869,3788,3767,3797,3831,3829,3782,3690,
+3551,3366,3161,2966,2802,2676,2585,2464,2414,2376,2346,2336,2362,2427,2518,2623,2747,2885,3005,3065,
+3059,3037,3044,3075,3088,3063,3030,3018,3013,2984,2931,2889,2881,2888,2878,2848,2819,2808,2813,2833,
+2870,2910,2923,2887,2823,2770,2745,2732,2706,2665,2618,2566,2503,2428,2358,2306,2273,2249,2224,2192,
+2145,2084,2025,1983,1960,1937,1893,1828,1765,1731,1735,1754,1748,1687,1575,1453,1358,1309,1301,1329,
+1382,1433,1447,1414,1359,1316,1281,1219,1115,998,912,856,787,662,484,284,83,-121,-342,-578,
+-819,-1057,-1291,-1519,-1739,-1955,-2170,-2375,-2549,-2670,-2734,-2751,-2728,-2662,-2566,-2491,-2504,-2628,-2794,-2869,
+-2759,-2486,-2185,-1995,-1967,-2047,-2143,-2195,-2201,-2201,-2242,-2352,-2512,-2667,-2773,-2841,-2912,-3013,-3133,-3274,
+-3477,-3762,-4066,-4270,-4323,-4306,-4335,-4424,-4484,-4459,-4416,-4452,-4562,-4639,-4614,-4549,-4561,-4693,-4887,-5076,
+-5244,-5400,-5538,-5649,-5749,-5865,-5995,-6105,-6178,-6226,-6259,-6258,-6209,-6139,-6102,-6111,-6115,-6034,-5816,-5467,
+-5055,-4698,-4510,-4509,-4585,-4585,-4456,-4285,-4191,-4189,-4215,-4255,-4404,-4770,-5315,-5824,-6040,-5849,-5364,-4846,
+-4534,-4481,-4537,-4488,-4255,-3947,-3741,-3699,-3734,-3728,-3642,-3517,-3390,-3267,-3147,-3052,-3003,-3000,-3033,-3091,
+-3154,-3183,-3147,-3050,-2918,-2757,-2554,-2325,-2126,-1995,-1899,-1763,-1558,-1331,-1131,-951,-749,-513,-278,-75,
+102,273,444,615,800,1015,1247,1453,1603,1703,1783,1869,1980,2126,2311,2523,2737,2923,3062,3160,
+3242,3327,3382,3330,3130,2855,2657,2645,2800,3018,3218,3369,3459,3476,3456,3477,3579,3714,3814,3886,
+3991,4130,4221,4237,4270,4405,4554,4534,4326,4152,4197,4337,4247,3821,3346,3194,3406,3669,3690,3482,
+3258,3140,3067,2955,2819,2725,2676,2620,2530,2434,2350,2254,2122,1977,1858,1770,1683,1580,1469,1367,
+1266,1157,1048,960,897,841,772,687,602,532,479,435,383,317,245,183,133,87,35,-14,
+-51,-77,-110,-160,-220,-280,-338,-395,-449,-493,-527,-553,-570,-574,-564,-551,-539,-526,-504,-471,
+-428,-377,-320,-276,-265,-293,-335,-361,-360,-340,-310,-268,-210,-146,-98,-76,-79,-93,-109,-118,
+-120,-120,-120,-111,-83,-40,6,54,112,185,251,282,279,273,287,306,298,255,205,176,
+169,162,144,122,107,91,60,7,-60,-135,-210,-283,-351,-418,-493,-576,-658,-725,-775,-819,
+-869,-924,-975,-1016,-1055,-1105,-1169,-1237,-1297,-1349,-1403,-1465,-1526,-1579,-1627,-1679,-1741,-1805,-1864,-1923,
+-1995,-2079,-2165,-2241,-2312,-2388,-2475,-2565,-2649,-2722,-2789,-2854,-2921,-2991,-3063,-3131,-3192,-3253,-3325,-3407,
+-3492,-3570,-3646,-3729,-3823,-3919,-4004,-4073,-4129,-4179,-4223,-4264,-4310,-4360,-4408,-4442,-4458,-4463,-4472,-4493,
+-4520,-4542,-4549,-4547,-4547,-4554,-4562,-4560,-4543,-4514,-4475,-4428,-4373,-4317,-4266,-4216,-4145,-4031,-3874,-3704,
+-3560,-3471,-3442,-3451,-3464,-3450,-3395,-3296,-3157,-2980,-2772,-2558,-2376,-2254,-2191,-2162,-2141,-2113,-2074,-2019,
+-1941,-1850,-1773,-1739,-1755,-1811,-1891,-1994,-2126,-2269,-2375,-2399,-2354,-2320,-2386,-2561,-2765,-2889,-2890,-2814,
+-2737,-2705,-2712,-2729,-2732,-2711,-2665,-2604,-2550,-2521,-2523,-2555,-2617,-2703,-2786,-2818,-2761,-2631,-2488,-2401,
+-2396,-2445,-2497,-2521,-2535,-2586,-2702,-2857,-2981,-3034,-3064,-3169,-3410,-3732,-4009,-4153,-4182,-4194,-4265,-4397,
+-4549,-4690,-4820,-4947,-5062,-5146,-5190,-5197,-5177,-5135,-5074,-5000,-4921,-4850,-4796,-4766,-4756,-4755,-4754,-4759,
+-4777,-4803,-4816,-4802,-4764,-4723,-4685,-4645,-4593,-4529,-4463,-4392,-4310,-4216,-4116,-4014,-3901,-3769,-3623,-3478,
+-3337,-3194,-3043,-2886,-2726,-2562,-2393,-2222,-2055,-1887,-1708,-1519,-1331,-1152,-968,-762,-540,-332,-169,-49,
+53,164,290,420,541,648,743,828,907,985,1063,1142,1222,1306,1392,1476,1549,1611,1669,1737,
+1820,1909,1993,2069,2148,2236,2321,2385,2423,2447,2476,2515,2556,2593,2619,2628,2617,2593,2576,2580,
+2608,2657,2730,2832,2956,3079,3187,3289,3402,3518,3595,3591,3507,3402,3351,3386,3482,3581,3656,3723,
+3815,3937,4057,4142,4187,4206,4208,4190,4159,4128,4098,4040,3931,3795,3692,3661,3685,3709,3702,3661,
+3587,3463,3277,3051,2832,2658,2540,2464,2400,2351,2297,2246,2233,2290,2412,2566,2721,2874,3028,3158,
+3220,3209,3176,3173,3196,3199,3169,3137,3130,3121,3063,2965,2883,2855,2856,2839,2793,2745,2720,2717,
+2727,2753,2784,2794,2763,2712,2681,2679,2676,2644,2588,2532,2483,2425,2350,2274,2222,2201,2197,2190,
+2169,2128,2069,2006,1955,1923,1906,1892,1869,1831,1782,1733,1695,1664,1624,1558,1466,1361,1267,1208,
+1203,1246,1303,1331,1321,1304,1304,1301,1244,1118,974,873,820,758,638,462,267,78,-114,-326,
+-559,-801,-1041,-1279,-1511,-1738,-1964,-2190,-2399,-2564,-2677,-2753,-2814,-2862,-2881,-2875,-2884,-2951,-3069,-3156,
+-3108,-2881,-2541,-2220,-2030,-1996,-2060,-2145,-2208,-2253,-2302,-2382,-2499,-2637,-2764,-2857,-2929,-3021,-3153,-3312,
+-3479,-3666,-3893,-4131,-4306,-4372,-4371,-4381,-4423,-4449,-4432,-4421,-4485,-4613,-4714,-4726,-4696,-4724,-4855,-5047,
+-5234,-5380,-5489,-5575,-5653,-5741,-5843,-5939,-6010,-6068,-6135,-6207,-6250,-6251,-6248,-6288,-6364,-6414,-6386,-6272,
+-6087,-5853,-5612,-5426,-5326,-5257,-5122,-4889,-4643,-4488,-4439,-4433,-4449,-4567,-4871,-5310,-5682,-5772,-5521,-5068,
+-4650,-4440,-4434,-4465,-4355,-4075,-3769,-3607,-3614,-3669,-3642,-3523,-3389,-3295,-3222,-3134,-3039,-2976,-2971,-3015,
+-3084,-3145,-3160,-3108,-2996,-2854,-2696,-2512,-2310,-2125,-1980,-1848,-1674,-1446,-1212,-1016,-849,-667,-453,-231,
+-25,159,334,503,677,877,1110,1348,1545,1680,1774,1857,1948,2054,2186,2354,2550,2751,2927,3056,
+3137,3194,3245,3266,3193,3004,2785,2688,2785,3005,3219,3366,3470,3542,3557,3522,3516,3605,3750,3860,
+3923,4011,4147,4256,4280,4293,4403,4557,4570,4373,4136,4071,4136,4088,3809,3491,3408,3575,3743,3701,
+3498,3319,3238,3174,3051,2909,2821,2783,2733,2644,2548,2470,2386,2268,2127,1997,1886,1776,1655,1537,
+1433,1336,1237,1142,1065,1010,960,895,810,717,639,586,546,495,421,336,264,211,162,109,
+63,34,11,-29,-93,-162,-218,-266,-319,-375,-424,-460,-487,-507,-513,-504,-490,-482,-480,-472,
+-448,-407,-355,-302,-265,-256,-270,-288,-297,-298,-291,-268,-217,-153,-103,-81,-73,-52,-10,38,
+70,77,65,53,66,111,167,204,222,254,319,391,416,380,331,328,370,406,397,355,
+317,301,291,271,243,220,201,175,130,68,0,-65,-125,-185,-254,-335,-427,-520,-605,-678,
+-742,-799,-852,-903,-958,-1020,-1089,-1157,-1217,-1269,-1321,-1380,-1443,-1498,-1541,-1585,-1643,-1712,-1777,-1827,
+-1876,-1943,-2030,-2122,-2201,-2270,-2338,-2411,-2486,-2562,-2643,-2730,-2816,-2895,-2966,-3035,-3106,-3178,-3248,-3320,
+-3399,-3482,-3564,-3647,-3734,-3826,-3918,-4002,-4075,-4136,-4185,-4225,-4266,-4317,-4376,-4431,-4469,-4485,-4492,-4504,
+-4527,-4553,-4573,-4581,-4585,-4591,-4601,-4608,-4602,-4583,-4559,-4527,-4482,-4421,-4353,-4294,-4243,-4185,-4098,-3979,
+-3836,-3688,-3561,-3479,-3453,-3465,-3475,-3445,-3365,-3242,-3081,-2879,-2643,-2404,-2204,-2074,-2013,-1998,-2002,-1999,
+-1966,-1897,-1803,-1706,-1629,-1587,-1593,-1663,-1805,-1998,-2183,-2290,-2291,-2232,-2217,-2330,-2565,-2822,-2984,-3001,
+-2918,-2821,-2770,-2768,-2783,-2785,-2759,-2707,-2640,-2577,-2531,-2501,-2486,-2494,-2541,-2625,-2704,-2720,-2650,-2535,
+-2448,-2434,-2472,-2502,-2492,-2473,-2509,-2627,-2778,-2885,-2920,-2943,-3058,-3313,-3651,-3954,-4136,-4197,-4212,-4258,
+-4365,-4513,-4662,-4793,-4906,-5011,-5106,-5178,-5214,-5213,-5181,-5126,-5056,-4979,-4911,-4864,-4842,-4834,-4829,-4824,
+-4826,-4845,-4873,-4887,-4872,-4831,-4783,-4739,-4697,-4646,-4585,-4516,-4442,-4357,-4263,-4165,-4064,-3955,-3828,-3687,
+-3542,-3399,-3253,-3101,-2945,-2790,-2633,-2469,-2301,-2132,-1961,-1783,-1598,-1415,-1236,-1048,-838,-618,-422,-274,
+-167,-73,36,163,294,415,521,616,701,779,852,928,1009,1092,1170,1242,1312,1382,1450,1513,
+1578,1655,1743,1827,1902,1977,2065,2161,2243,2299,2339,2382,2433,2481,2519,2544,2555,2549,2534,2529,
+2549,2590,2645,2719,2822,2951,3083,3200,3310,3427,3535,3582,3531,3404,3276,3223,3265,3369,3487,3594,
+3702,3826,3960,4078,4156,4197,4212,4206,4175,4125,4071,4015,3935,3810,3663,3549,3507,3521,3545,3550,
+3537,3497,3400,3223,2988,2754,2574,2464,2400,2373,2332,2280,2227,2222,2313,2501,2734,2951,3126,3263,
+3353,3377,3343,3304,3305,3333,3342,3318,3292,3283,3249,3144,2991,2866,2815,2800,2764,2700,2650,2639,
+2648,2651,2650,2655,2654,2632,2602,2591,2600,2595,2548,2475,2411,2365,2311,2236,2158,2110,2102,2116,
+2126,2114,2077,2024,1968,1923,1896,1887,1888,1888,1866,1808,1720,1634,1577,1548,1518,1455,1350,1226,
+1125,1085,1109,1163,1202,1217,1234,1269,1288,1237,1104,947,833,770,704,588,424,244,66,-123,
+-335,-563,-795,-1030,-1267,-1505,-1740,-1978,-2219,-2440,-2605,-2705,-2770,-2839,-2920,-2993,-3050,-3116,-3213,-3309,
+-3326,-3198,-2935,-2621,-2360,-2213,-2174,-2199,-2245,-2300,-2371,-2464,-2577,-2695,-2805,-2898,-2977,-3059,-3167,-3311,
+-3473,-3633,-3791,-3965,-4153,-4317,-4417,-4453,-4462,-4470,-4473,-4470,-4494,-4578,-4701,-4799,-4831,-4833,-4877,-4999,
+-5168,-5325,-5433,-5493,-5534,-5593,-5684,-5787,-5866,-5912,-5955,-6023,-6103,-6155,-6171,-6197,-6269,-6360,-6409,-6389,
+-6329,-6253,-6146,-5991,-5812,-5657,-5521,-5345,-5094,-4814,-4587,-4444,-4357,-4320,-4386,-4600,-4906,-5146,-5180,-4997,
+-4715,-4488,-4400,-4413,-4402,-4257,-3985,-3717,-3580,-3577,-3587,-3510,-3361,-3235,-3178,-3150,-3096,-3025,-2993,-3024,
+-3089,-3138,-3142,-3098,-3014,-2904,-2780,-2644,-2484,-2300,-2115,-1947,-1778,-1575,-1332,-1090,-887,-720,-558,-378,
+-184,15,218,418,613,813,1032,1266,1476,1631,1735,1821,1914,2016,2128,2262,2420,2589,2748,2884,
+2986,3041,3048,3030,2999,2939,2837,2753,2785,2967,3210,3396,3495,3562,3625,3644,3602,3575,3646,3793,
+3915,3979,4052,4178,4298,4336,4340,4418,4556,4600,4450,4213,4073,4046,3976,3779,3582,3559,3689,3771,
+3676,3491,3380,3373,3358,3253,3100,2982,2915,2851,2763,2673,2597,2516,2407,2274,2139,2010,1877,1740,
+1611,1499,1404,1321,1250,1189,1130,1064,987,904,824,757,710,671,616,531,433,349,287,233,
+180,138,115,93,45,-27,-98,-149,-190,-238,-294,-339,-370,-396,-420,-434,-431,-420,-414,-416,
+-415,-399,-369,-331,-296,-275,-273,-278,-271,-251,-232,-218,-195,-151,-102,-75,-76,-76,-40,35,
+127,207,262,296,328,382,459,524,538,511,508,571,659,678,589,454,374,384,435,461,
+446,420,405,396,377,348,323,306,286,249,191,124,64,12,-38,-101,-180,-270,-366,-468,
+-571,-663,-732,-782,-830,-892,-971,-1055,-1130,-1190,-1239,-1290,-1348,-1410,-1464,-1510,-1557,-1619,-1690,-1752,
+-1798,-1841,-1904,-1992,-2086,-2167,-2234,-2295,-2358,-2424,-2497,-2582,-2680,-2778,-2863,-2936,-3007,-3084,-3164,-3242,
+-3316,-3392,-3472,-3557,-3644,-3734,-3825,-3915,-3999,-4074,-4138,-4189,-4231,-4273,-4325,-4384,-4439,-4477,-4497,-4511,
+-4528,-4555,-4584,-4607,-4622,-4633,-4645,-4654,-4652,-4635,-4611,-4587,-4562,-4524,-4465,-4397,-4333,-4277,-4218,-4145,
+-4055,-3945,-3812,-3667,-3542,-3473,-3465,-3481,-3473,-3417,-3311,-3160,-2956,-2700,-2421,-2169,-1988,-1894,-1872,-1887,
+-1897,-1870,-1803,-1716,-1624,-1533,-1452,-1414,-1473,-1647,-1890,-2105,-2210,-2199,-2146,-2159,-2304,-2564,-2844,-3035,
+-3083,-3019,-2923,-2855,-2827,-2811,-2781,-2731,-2671,-2618,-2585,-2570,-2556,-2526,-2484,-2462,-2494,-2571,-2636,-2629,
+-2551,-2462,-2423,-2438,-2455,-2438,-2418,-2458,-2582,-2732,-2835,-2873,-2914,-3044,-3291,-3600,-3885,-4081,-4178,-4218,
+-4260,-4350,-4490,-4646,-4780,-4886,-4982,-5079,-5165,-5218,-5229,-5207,-5164,-5106,-5041,-4981,-4939,-4916,-4902,-4892,
+-4886,-4891,-4908,-4931,-4943,-4929,-4889,-4838,-4787,-4738,-4686,-4626,-4558,-4482,-4398,-4304,-4204,-4101,-3990,-3864,
+-3728,-3588,-3448,-3306,-3156,-3002,-2849,-2695,-2536,-2373,-2205,-2035,-1857,-1675,-1493,-1309,-1117,-912,-708,-530,
+-392,-287,-190,-81,41,166,283,388,482,569,646,718,792,873,956,1030,1092,1151,1219,1293,
+1362,1426,1497,1582,1671,1755,1838,1930,2028,2114,2175,2225,2279,2338,2386,2417,2435,2446,2449,2449,
+2463,2503,2563,2630,2705,2803,2928,3061,3188,3312,3436,3533,3558,3492,3375,3277,3245,3282,3364,3474,
+3601,3741,3878,3999,4095,4164,4207,4221,4195,4128,4033,3937,3853,3762,3642,3502,3390,3343,3355,3388,
+3414,3421,3398,3317,3156,2934,2709,2533,2428,2373,2373,2353,2333,2307,2316,2418,2631,2907,3167,3362,
+3482,3531,3513,3454,3407,3410,3447,3469,3463,3450,3433,3363,3200,2990,2828,2757,2726,2671,2598,2560,
+2577,2605,2599,2568,2542,2530,2515,2494,2485,2488,2471,2413,2332,2264,2214,2159,2087,2022,1995,2011,
+2045,2066,2058,2023,1972,1922,1887,1869,1862,1860,1854,1828,1763,1659,1548,1470,1438,1424,1386,1299,
+1178,1062,996,993,1031,1072,1100,1132,1175,1200,1159,1042,896,780,702,626,518,379,225,57,
+-135,-351,-575,-797,-1026,-1268,-1513,-1752,-1992,-2240,-2473,-2649,-2750,-2809,-2873,-2955,-3034,-3104,-3186,-3293,
+-3378,-3365,-3222,-3001,-2793,-2657,-2594,-2573,-2572,-2586,-2623,-2688,-2782,-2892,-2996,-3080,-3145,-3210,-3295,-3409,
+-3543,-3682,-3809,-3927,-4051,-4191,-4332,-4443,-4503,-4517,-4511,-4510,-4530,-4581,-4663,-4752,-4822,-4866,-4912,-4995,
+-5126,-5275,-5396,-5464,-5490,-5511,-5568,-5666,-5767,-5828,-5849,-5870,-5924,-5993,-6037,-6051,-6076,-6138,-6205,-6220,
+-6174,-6107,-6047,-5969,-5839,-5674,-5532,-5435,-5333,-5162,-4920,-4668,-4463,-4326,-4259,-4279,-4391,-4549,-4667,-4685,
+-4615,-4519,-4451,-4421,-4397,-4328,-4179,-3968,-3769,-3651,-3605,-3551,-3430,-3273,-3160,-3118,-3097,-3049,-2998,-3008,
+-3089,-3176,-3195,-3131,-3025,-2917,-2814,-2706,-2577,-2419,-2237,-2048,-1865,-1681,-1475,-1238,-996,-779,-597,-442,
+-292,-129,60,280,513,743,966,1187,1391,1552,1663,1754,1855,1970,2085,2209,2362,2538,2696,2808,
+2883,2938,2954,2906,2815,2743,2724,2751,2818,2956,3170,3394,3540,3598,3632,3678,3701,3669,3638,3692,
+3826,3950,4020,4087,4205,4333,4398,4417,4474,4583,4639,4555,4379,4225,4107,3943,3721,3571,3607,3761,
+3833,3728,3551,3467,3498,3528,3458,3306,3153,3041,2953,2869,2785,2702,2610,2501,2381,2258,2131,1997,
+1858,1720,1593,1485,1405,1349,1296,1223,1133,1044,971,912,862,820,778,717,625,521,430,363,
+306,252,212,190,164,112,39,-25,-68,-104,-150,-202,-242,-269,-296,-326,-346,-348,-342,-342,
+-350,-356,-353,-339,-317,-291,-272,-266,-264,-249,-216,-183,-159,-136,-104,-72,-61,-67,-63,-25,
+44,134,231,329,420,504,593,684,745,739,694,694,795,937,990,878,663,480,406,418,
+445,448,435,427,426,422,412,401,392,377,343,288,223,164,118,73,15,-55,-134,-223,
+-329,-450,-564,-651,-710,-764,-832,-915,-1000,-1079,-1149,-1210,-1264,-1314,-1367,-1423,-1480,-1538,-1600,-1665,
+-1724,-1771,-1817,-1878,-1963,-2057,-2143,-2212,-2271,-2329,-2393,-2469,-2559,-2660,-2758,-2844,-2919,-2994,-3073,-3155,
+-3233,-3307,-3383,-3465,-3551,-3638,-3725,-3812,-3900,-3984,-4060,-4125,-4179,-4226,-4272,-4322,-4376,-4427,-4469,-4498,
+-4519,-4540,-4568,-4601,-4632,-4655,-4673,-4687,-4696,-4691,-4668,-4636,-4607,-4582,-4548,-4496,-4432,-4369,-4306,-4240,
+-4169,-4096,-4015,-3909,-3768,-3620,-3512,-3470,-3474,-3479,-3450,-3369,-3229,-3022,-2758,-2468,-2196,-1982,-1848,-1795,
+-1795,-1802,-1773,-1707,-1628,-1551,-1466,-1371,-1311,-1359,-1543,-1802,-2023,-2131,-2136,-2121,-2174,-2340,-2600,-2880,
+-3086,-3160,-3118,-3023,-2939,-2878,-2822,-2754,-2683,-2629,-2603,-2602,-2617,-2625,-2603,-2539,-2463,-2432,-2472,-2546,
+-2576,-2518,-2413,-2334,-2318,-2331,-2334,-2343,-2409,-2544,-2694,-2791,-2835,-2892,-3026,-3240,-3484,-3711,-3899,-4041,
+-4139,-4218,-4314,-4452,-4610,-4754,-4870,-4972,-5071,-5153,-5197,-5199,-5175,-5138,-5090,-5036,-4985,-4949,-4928,-4916,
+-4912,-4920,-4939,-4962,-4982,-4991,-4980,-4945,-4892,-4834,-4781,-4731,-4676,-4611,-4538,-4455,-4361,-4259,-4151,-4035,
+-3909,-3774,-3637,-3503,-3368,-3227,-3076,-2920,-2765,-2609,-2451,-2289,-2120,-1943,-1760,-1572,-1379,-1182,-985,-803,
+-647,-519,-409,-304,-195,-81,32,143,246,342,432,513,588,662,740,822,895,954,1011,1080,
+1160,1235,1300,1366,1450,1548,1646,1742,1839,1935,2014,2072,2122,2180,2240,2282,2299,2305,2313,2323,
+2337,2370,2432,2515,2598,2677,2766,2878,3005,3139,3277,3407,3491,3496,3427,3341,3293,3294,3327,3383,
+3476,3612,3766,3897,3990,4056,4113,4157,4167,4125,4033,3913,3796,3696,3603,3495,3376,3280,3239,3254,
+3292,3317,3311,3271,3187,3052,2875,2687,2528,2424,2373,2410,2410,2431,2444,2466,2550,2733,2990,3254,
+3464,3597,3648,3624,3553,3490,3477,3504,3532,3543,3545,3522,3422,3216,2966,2778,2695,2660,2605,2542,
+2525,2564,2598,2576,2515,2466,2445,2429,2403,2380,2365,2338,2278,2199,2126,2063,1994,1922,1878,1885,
+1930,1976,1997,1987,1950,1898,1846,1812,1797,1790,1777,1754,1714,1642,1536,1420,1331,1290,1279,1264,
+1214,1124,1017,931,894,908,946,985,1018,1052,1072,1049,967,849,735,640,550,448,331,197,
+36,-158,-374,-591,-807,-1041,-1298,-1559,-1802,-2035,-2273,-2504,-2684,-2794,-2862,-2931,-3009,-3074,-3129,-3207,
+-3315,-3389,-3346,-3182,-2994,-2888,-2890,-2945,-2997,-3036,-3074,-3116,-3160,-3214,-3292,-3385,-3469,-3529,-3582,-3652,
+-3749,-3854,-3951,-4033,-4111,-4195,-4294,-4399,-4488,-4537,-4542,-4531,-4541,-4589,-4663,-4732,-4782,-4823,-4883,-4979,
+-5111,-5253,-5377,-5459,-5493,-5500,-5519,-5583,-5683,-5772,-5808,-5799,-5793,-5823,-5872,-5901,-5902,-5904,-5927,-5949,
+-5932,-5870,-5792,-5720,-5638,-5525,-5403,-5323,-5307,-5304,-5234,-5066,-4853,-4671,-4561,-4512,-4498,-4504,-4518,-4526,
+-4521,-4514,-4509,-4494,-4447,-4362,-4248,-4116,-3969,-3822,-3701,-3612,-3525,-3412,-3289,-3200,-3152,-3104,-3030,-2972,
+-2999,-3104,-3200,-3196,-3090,-2949,-2828,-2727,-2614,-2472,-2305,-2124,-1940,-1757,-1574,-1377,-1158,-924,-695,-492,
+-326,-188,-49,124,344,590,837,1067,1272,1439,1561,1659,1771,1903,2023,2112,2208,2367,2575,2753,
+2846,2879,2900,2898,2833,2719,2648,2693,2834,3009,3188,3380,3558,3669,3697,3692,3704,3721,3710,3695,
+3734,3837,3950,4031,4108,4222,4352,4444,4494,4549,4627,4678,4655,4571,4450,4256,3951,3615,3433,3513,
+3744,3893,3839,3671,3558,3559,3587,3543,3411,3250,3117,3024,2953,2879,2788,2683,2576,2474,2369,2252,
+2124,1991,1855,1717,1594,1505,1449,1394,1315,1217,1131,1069,1018,967,917,868,805,716,612,519,
+447,385,329,286,260,232,181,117,62,26,-8,-54,-102,-139,-168,-200,-230,-245,-244,-244,
+-258,-279,-296,-304,-305,-294,-266,-233,-212,-205,-195,-169,-134,-103,-74,-46,-26,-21,-20,-6,
+24,62,107,176,275,383,476,554,623,666,659,634,675,834,1046,1165,1098,888,665,531,
+491,494,489,467,444,437,447,459,460,445,420,388,346,299,258,225,189,136,66,-8,
+-89,-190,-311,-434,-535,-617,-698,-786,-872,-947,-1020,-1100,-1178,-1239,-1280,-1320,-1376,-1444,-1513,-1576,
+-1636,-1695,-1751,-1804,-1864,-1941,-2031,-2121,-2198,-2260,-2316,-2380,-2460,-2555,-2656,-2750,-2835,-2912,-2989,-3068,
+-3146,-3220,-3295,-3374,-3460,-3546,-3626,-3704,-3785,-3871,-3957,-4034,-4100,-4158,-4211,-4260,-4306,-4352,-4402,-4453,
+-4495,-4523,-4542,-4566,-4599,-4636,-4666,-4687,-4704,-4717,-4718,-4697,-4662,-4626,-4593,-4557,-4509,-4451,-4389,-4324,
+-4250,-4175,-4109,-4049,-3970,-3850,-3702,-3568,-3485,-3457,-3455,-3446,-3397,-3281,-3091,-2843,-2571,-2304,-2062,-1872,
+-1759,-1725,-1727,-1708,-1650,-1573,-1498,-1417,-1324,-1260,-1296,-1456,-1685,-1888,-2009,-2069,-2129,-2240,-2426,-2677,
+-2943,-3143,-3216,-3166,-3056,-2953,-2875,-2804,-2732,-2674,-2645,-2636,-2630,-2622,-2617,-2603,-2557,-2480,-2419,-2426,
+-2493,-2540,-2499,-2384,-2275,-2233,-2245,-2271,-2306,-2385,-2515,-2644,-2715,-2742,-2796,-2927,-3115,-3309,-3491,-3677,
+-3871,-4046,-4180,-4290,-4409,-4545,-4681,-4806,-4925,-5037,-5121,-5160,-5159,-5141,-5116,-5077,-5027,-4982,-4953,-4940,
+-4935,-4940,-4960,-4989,-5013,-5028,-5031,-5021,-4987,-4932,-4869,-4815,-4770,-4723,-4664,-4593,-4512,-4419,-4317,-4209,
+-4096,-3972,-3837,-3699,-3568,-3441,-3308,-3162,-3007,-2850,-2697,-2545,-2387,-2219,-2041,-1854,-1661,-1462,-1262,-1072,
+-908,-772,-652,-537,-423,-313,-209,-106,-2,99,197,293,383,464,538,610,687,762,826,889,
+964,1051,1135,1205,1271,1355,1457,1565,1668,1767,1859,1932,1984,2029,2083,2137,2170,2178,2178,2186,
+2204,2232,2281,2360,2458,2551,2630,2709,2806,2922,3056,3199,3331,3410,3408,3351,3303,3304,3341,3379,
+3423,3507,3642,3788,3895,3948,3978,4013,4045,4047,4002,3917,3809,3697,3591,3491,3393,3300,3227,3194,
+3199,3215,3208,3168,3103,3025,2934,2825,2696,2564,2460,2410,2481,2488,2531,2573,2608,2672,2804,3004,
+3232,3443,3606,3698,3703,3637,3550,3499,3495,3510,3523,3529,3505,3397,3184,2927,2732,2643,2611,2574,
+2538,2546,2595,2620,2575,2490,2424,2395,2375,2342,2307,2279,2244,2184,2103,2018,1928,1832,1751,1726,
+1765,1833,1881,1890,1873,1838,1789,1734,1692,1673,1665,1651,1618,1564,1483,1379,1268,1177,1124,1105,
+1101,1087,1042,960,863,797,791,834,888,926,949,965,961,915,825,711,599,496,395,284,
+150,-13,-205,-412,-619,-835,-1081,-1360,-1641,-1896,-2126,-2348,-2557,-2725,-2837,-2917,-2999,-3079,-3134,-3173,
+-3239,-3334,-3373,-3264,-3027,-2809,-2745,-2845,-3016,-3178,-3320,-3450,-3548,-3591,-3606,-3654,-3758,-3873,-3946,-3979,
+-4012,-4069,-4134,-4184,-4221,-4266,-4334,-4420,-4506,-4571,-4598,-4592,-4581,-4605,-4677,-4768,-4834,-4868,-4901,-4977,
+-5102,-5246,-5369,-5449,-5487,-5494,-5494,-5518,-5586,-5682,-5757,-5775,-5751,-5731,-5742,-5767,-5774,-5753,-5720,-5694,
+-5672,-5640,-5592,-5535,-5477,-5419,-5356,-5302,-5284,-5311,-5342,-5315,-5206,-5060,-4953,-4912,-4893,-4841,-4751,-4663,
+-4611,-4591,-4584,-4569,-4531,-4462,-4364,-4255,-4141,-4009,-3850,-3688,-3560,-3474,-3409,-3348,-3294,-3243,-3169,-3064,
+-2975,-2971,-3051,-3126,-3109,-2996,-2856,-2739,-2634,-2506,-2347,-2178,-2013,-1845,-1664,-1472,-1274,-1069,-851,-627,
+-414,-231,-83,52,212,413,647,891,1120,1316,1467,1583,1699,1841,1980,2051,2044,2044,2153,2368,
+2578,2695,2739,2776,2813,2800,2740,2725,2836,3043,3250,3408,3542,3673,3765,3782,3748,3722,3727,3740,
+3749,3776,3842,3936,4035,4137,4252,4370,4469,4544,4609,4665,4702,4721,4722,4652,4414,3982,3502,3225,
+3284,3565,3811,3857,3745,3622,3575,3569,3529,3423,3285,3169,3095,3041,2972,2875,2767,2673,2591,2495,
+2372,2236,2106,1983,1858,1740,1648,1583,1520,1440,1354,1282,1221,1155,1078,1010,958,903,822,719,
+618,532,456,390,345,320,296,256,205,160,126,90,46,3,-32,-67,-104,-128,-128,-118,
+-126,-160,-196,-216,-225,-232,-231,-207,-169,-139,-130,-128,-114,-86,-50,-13,18,36,41,50,
+76,108,123,127,155,224,309,373,411,441,466,472,478,545,713,934,1096,1115,1010,867,
+768,735,735,719,665,596,555,556,567,546,489,429,392,374,359,345,333,315,274,208,
+129,43,-57,-175,-295,-402,-505,-621,-742,-844,-913,-974,-1050,-1136,-1204,-1245,-1279,-1333,-1410,-1488,
+-1556,-1617,-1683,-1751,-1813,-1869,-1931,-2010,-2100,-2184,-2250,-2305,-2366,-2447,-2544,-2644,-2736,-2819,-2898,-2977,
+-3056,-3133,-3209,-3287,-3372,-3459,-3540,-3611,-3678,-3752,-3838,-3927,-4008,-4076,-4137,-4195,-4246,-4286,-4325,-4374,
+-4435,-4489,-4523,-4540,-4557,-4589,-4628,-4660,-4682,-4701,-4720,-4729,-4717,-4685,-4644,-4603,-4561,-4513,-4461,-4406,
+-4344,-4266,-4184,-4114,-4061,-4003,-3910,-3779,-3637,-3519,-3444,-3412,-3402,-3377,-3297,-3146,-2941,-2710,-2461,-2195,
+-1938,-1750,-1666,-1659,-1656,-1612,-1535,-1453,-1372,-1290,-1234,-1253,-1365,-1534,-1704,-1850,-1985,-2131,-2299,-2500,
+-2737,-2979,-3153,-3197,-3117,-2988,-2883,-2817,-2768,-2727,-2702,-2690,-2661,-2592,-2509,-2460,-2457,-2460,-2430,-2388,
+-2395,-2467,-2540,-2535,-2443,-2340,-2296,-2311,-2341,-2371,-2427,-2519,-2603,-2628,-2616,-2648,-2775,-2963,-3150,-3323,
+-3520,-3757,-3993,-4175,-4294,-4384,-4478,-4584,-4699,-4826,-4952,-5052,-5109,-5135,-5151,-5156,-5135,-5091,-5048,-5026,
+-5019,-5016,-5018,-5032,-5054,-5069,-5071,-5066,-5051,-5016,-4957,-4890,-4836,-4793,-4747,-4689,-4620,-4543,-4455,-4357,
+-4254,-4147,-4028,-3894,-3753,-3619,-3495,-3369,-3231,-3082,-2931,-2783,-2635,-2480,-2311,-2131,-1945,-1755,-1561,-1366,
+-1183,-1030,-905,-791,-673,-551,-440,-341,-246,-148,-48,50,150,248,337,410,475,546,622,696,
+769,854,952,1049,1130,1203,1287,1388,1497,1602,1698,1785,1854,1901,1941,1987,2032,2062,2073,2080,
+2098,2129,2171,2232,2317,2414,2500,2571,2640,2724,2827,2948,3082,3210,3294,3311,3289,3288,3336,3406,
+3461,3505,3578,3696,3818,3893,3910,3907,3914,3925,3917,3880,3820,3739,3637,3519,3402,3305,3231,3176,
+3135,3105,3073,3025,2962,2900,2857,2829,2794,2727,2629,2533,2481,2570,2569,2607,2659,2713,2780,2882,
+3024,3197,3383,3561,3692,3733,3676,3567,3476,3433,3423,3418,3409,3380,3290,3111,2887,2704,2609,2575,
+2552,2541,2568,2618,2631,2571,2471,2393,2357,2336,2309,2278,2245,2195,2115,2016,1909,1792,1670,1579,
+1566,1629,1713,1758,1754,1729,1701,1662,1608,1556,1528,1521,1514,1483,1421,1332,1230,1129,1043,977,
+935,920,925,919,871,782,702,685,734,803,849,869,883,894,873,798,683,562,455,354,
+235,88,-83,-269,-464,-667,-893,-1152,-1440,-1732,-2000,-2237,-2452,-2641,-2787,-2887,-2969,-3056,-3137,-3182,
+-3204,-3249,-3312,-3303,-3126,-2817,-2552,-2485,-2621,-2846,-3076,-3310,-3552,-3745,-3834,-3850,-3895,-4019,-4164,-4240,
+-4235,-4215,-4234,-4278,-4307,-4318,-4346,-4417,-4517,-4612,-4676,-4701,-4701,-4703,-4740,-4819,-4913,-4986,-5032,-5081,
+-5166,-5280,-5388,-5459,-5493,-5504,-5505,-5509,-5536,-5599,-5680,-5738,-5749,-5731,-5719,-5726,-5731,-5713,-5668,-5608,
+-5548,-5499,-5465,-5436,-5404,-5371,-5349,-5345,-5351,-5359,-5369,-5370,-5334,-5252,-5162,-5121,-5127,-5107,-4998,-4835,
+-4712,-4677,-4682,-4658,-4592,-4520,-4469,-4429,-4372,-4275,-4124,-3921,-3710,-3553,-3476,-3446,-3422,-3386,-3340,-3266,
+-3148,-3018,-2945,-2954,-2986,-2964,-2873,-2763,-2666,-2563,-2423,-2252,-2087,-1937,-1778,-1586,-1369,-1154,-957,-770,
+-576,-376,-181,-7,150,310,495,713,951,1185,1389,1550,1681,1817,1967,2074,2063,1934,1810,1828,
+2005,2228,2388,2485,2585,2700,2784,2822,2886,3041,3254,3433,3536,3609,3700,3786,3814,3781,3746,3753,
+3790,3820,3838,3871,3945,4059,4188,4308,4406,4493,4577,4652,4699,4723,4757,4807,4784,4549,4065,3493,
+3103,3051,3265,3526,3668,3676,3634,3607,3590,3546,3458,3352,3266,3209,3154,3070,2959,2854,2778,2712,
+2614,2475,2324,2195,2093,2000,1909,1823,1743,1660,1574,1500,1439,1370,1276,1174,1096,1051,1006,929,
+823,710,606,512,434,388,371,361,336,296,256,222,185,145,110,77,38,0,-18,-6,
+4,-18,-71,-115,-127,-122,-127,-138,-135,-112,-89,-79,-77,-70,-52,-23,14,53,77,86,
+102,142,190,214,215,229,279,343,384,395,403,422,440,458,503,601,736,863,942,972,
+977,991,1030,1074,1071,993,876,792,768,753,681,557,450,405,403,398,378,365,363,351,
+311,245,162,58,-63,-186,-295,-405,-538,-684,-807,-885,-938,-1001,-1081,-1154,-1206,-1250,-1310,-1391,
+-1476,-1552,-1623,-1698,-1775,-1843,-1895,-1943,-2005,-2085,-2169,-2240,-2296,-2356,-2433,-2528,-2625,-2715,-2797,-2876,
+-2956,-3038,-3121,-3205,-3290,-3374,-3456,-3529,-3594,-3656,-3727,-3813,-3903,-3986,-4056,-4121,-4182,-4233,-4269,-4303,
+-4351,-4416,-4477,-4516,-4534,-4550,-4580,-4618,-4650,-4673,-4693,-4715,-4730,-4725,-4699,-4661,-4617,-4570,-4522,-4477,
+-4433,-4377,-4298,-4206,-4123,-4063,-4012,-3944,-3842,-3714,-3582,-3469,-3395,-3360,-3337,-3285,-3179,-3025,-2840,-2618,
+-2344,-2045,-1793,-1650,-1608,-1597,-1558,-1488,-1408,-1335,-1271,-1231,-1240,-1309,-1423,-1566,-1736,-1930,-2130,-2322,
+-2517,-2732,-2943,-3080,-3088,-2989,-2868,-2791,-2760,-2743,-2723,-2700,-2658,-2559,-2400,-2244,-2169,-2192,-2251,-2277,
+-2275,-2306,-2401,-2508,-2547,-2499,-2429,-2407,-2433,-2460,-2467,-2482,-2528,-2569,-2559,-2514,-2517,-2625,-2809,-2999,
+-3173,-3373,-3624,-3889,-4103,-4246,-4345,-4436,-4531,-4634,-4750,-4871,-4973,-5042,-5091,-5137,-5172,-5174,-5143,-5108,
+-5093,-5091,-5086,-5081,-5088,-5104,-5113,-5108,-5097,-5079,-5041,-4981,-4914,-4858,-4810,-4757,-4693,-4626,-4556,-4476,
+-4382,-4279,-4171,-4053,-3919,-3777,-3643,-3519,-3397,-3266,-3127,-2985,-2843,-2698,-2543,-2376,-2199,-2019,-1842,-1664,
+-1484,-1311,-1160,-1037,-924,-807,-684,-570,-472,-381,-288,-192,-97,1,103,198,274,338,406,485,
+569,654,748,858,970,1067,1150,1237,1339,1449,1553,1644,1722,1783,1828,1865,1903,1943,1974,1995,
+2018,2052,2098,2155,2225,2307,2390,2459,2515,2574,2647,2734,2832,2943,3057,3148,3198,3227,3279,3372,
+3475,3545,3581,3625,3702,3789,3841,3845,3825,3810,3802,3789,3767,3731,3672,3574,3442,3307,3202,3132,
+3077,3017,2945,2867,2791,2729,2697,2701,2731,2754,2740,2686,2616,2570,2655,2649,2670,2717,2786,2871,
+2967,3072,3191,3337,3500,3640,3695,3641,3521,3411,3350,3320,3286,3244,3200,3136,3019,2856,2702,2603,
+2556,2532,2527,2556,2599,2605,2542,2442,2359,2319,2306,2297,2279,2236,2151,2028,1895,1769,1642,1513,
+1421,1414,1492,1587,1633,1621,1589,1562,1530,1478,1419,1381,1373,1373,1349,1288,1197,1103,1021,951,
+882,817,779,782,801,785,715,631,598,635,704,752,774,794,818,812,746,631,510,407,
+306,177,15,-159,-337,-528,-746,-996,-1266,-1545,-1822,-2087,-2332,-2551,-2732,-2863,-2952,-3026,-3107,-3178,
+-3211,-3212,-3223,-3250,-3215,-3034,-2740,-2489,-2420,-2527,-2707,-2902,-3147,-3455,-3745,-3916,-3976,-4036,-4164,-4304,
+-4354,-4302,-4243,-4255,-4321,-4378,-4403,-4438,-4518,-4632,-4735,-4799,-4832,-4851,-4877,-4923,-4993,-5077,-5158,-5230,
+-5303,-5384,-5462,-5515,-5542,-5560,-5581,-5602,-5619,-5643,-5685,-5733,-5755,-5747,-5734,-5742,-5760,-5759,-5725,-5671,
+-5611,-5553,-5503,-5464,-5432,-5396,-5363,-5357,-5383,-5410,-5408,-5382,-5352,-5312,-5249,-5188,-5173,-5187,-5139,-4969,
+-4754,-4636,-4659,-4716,-4684,-4566,-4463,-4441,-4466,-4462,-4386,-4240,-4046,-3850,-3704,-3627,-3584,-3533,-3473,-3421,
+-3360,-3246,-3083,-2937,-2870,-2858,-2836,-2773,-2695,-2624,-2531,-2387,-2205,-2028,-1871,-1702,-1491,-1252,-1027,-844,
+-693,-541,-365,-163,41,232,410,595,807,1046,1289,1503,1674,1812,1944,2072,2140,2083,1907,1728,
+1681,1803,2006,2190,2340,2497,2674,2831,2950,3069,3228,3402,3524,3575,3606,3665,3742,3787,3787,3781,
+3809,3865,3910,3926,3938,3990,4102,4244,4369,4457,4531,4615,4698,4746,4760,4786,4842,4846,4658,4228,
+3676,3221,3008,3027,3163,3316,3449,3560,3643,3676,3645,3569,3484,3416,3360,3283,3167,3033,2924,2855,
+2795,2697,2556,2406,2283,2195,2125,2055,1974,1876,1768,1671,1601,1543,1464,1357,1251,1182,1142,1094,
+1011,904,795,691,591,507,460,450,449,430,394,356,319,280,243,213,183,145,105,88,
+97,99,61,-5,-51,-54,-39,-41,-64,-83,-81,-66,-48,-34,-24,-20,-13,12,53,89,
+108,130,177,241,290,316,347,402,466,509,528,543,568,593,606,609,611,625,665,743,
+849,957,1058,1163,1257,1288,1216,1086,991,961,929,818,652,529,492,486,438,352,288,280,
+297,301,278,228,144,25,-109,-234,-349,-475,-617,-748,-841,-903,-959,-1026,-1099,-1168,-1233,-1303,
+-1383,-1469,-1554,-1635,-1715,-1795,-1868,-1925,-1969,-2016,-2080,-2158,-2234,-2299,-2362,-2437,-2525,-2615,-2700,-2781,
+-2859,-2939,-3023,-3112,-3204,-3292,-3369,-3440,-3507,-3572,-3639,-3714,-3798,-3885,-3964,-4034,-4100,-4163,-4216,-4255,
+-4292,-4341,-4404,-4462,-4502,-4526,-4548,-4577,-4609,-4638,-4664,-4688,-4710,-4723,-4723,-4706,-4677,-4636,-4587,-4538,
+-4497,-4460,-4410,-4332,-4231,-4134,-4062,-4008,-3953,-3879,-3782,-3666,-3544,-3440,-3371,-3330,-3284,-3201,-3078,-2923,
+-2729,-2480,-2192,-1922,-1728,-1619,-1556,-1498,-1433,-1371,-1316,-1270,-1246,-1259,-1313,-1405,-1541,-1724,-1934,-2137,
+-2315,-2488,-2679,-2859,-2959,-2942,-2849,-2763,-2727,-2718,-2697,-2651,-2582,-2468,-2288,-2067,-1895,-1846,-1909,-1999,
+-2048,-2070,-2129,-2249,-2373,-2425,-2393,-2343,-2341,-2385,-2420,-2421,-2418,-2445,-2482,-2478,-2433,-2417,-2492,-2645,
+-2816,-2982,-3173,-3412,-3670,-3896,-4077,-4238,-4394,-4533,-4648,-4751,-4850,-4931,-4978,-5006,-5039,-5075,-5092,-5081,
+-5065,-5061,-5067,-5069,-5072,-5089,-5113,-5129,-5127,-5112,-5090,-5053,-4997,-4936,-4883,-4831,-4770,-4699,-4632,-4568,
+-4495,-4403,-4296,-4181,-4057,-3925,-3791,-3666,-3546,-3424,-3295,-3162,-3026,-2885,-2736,-2581,-2420,-2254,-2085,-1921,
+-1761,-1598,-1434,-1281,-1152,-1040,-928,-811,-700,-602,-511,-420,-330,-241,-147,-45,56,141,212,285,
+371,466,561,663,781,907,1020,1115,1208,1315,1430,1534,1617,1679,1728,1769,1805,1840,1874,1904,
+1933,1971,2021,2083,2152,2228,2306,2375,2429,2473,2523,2585,2654,2726,2806,2895,2981,3057,3134,3240,
+3379,3515,3595,3606,3591,3597,3638,3682,3698,3680,3651,3628,3616,3608,3593,3550,3464,3337,3200,3088,
+3009,2945,2872,2783,2689,2608,2554,2539,2566,2621,2676,2704,2701,2677,2655,2721,2725,2736,2774,2846,
+2938,3028,3108,3189,3295,3427,3543,3585,3526,3410,3312,3265,3237,3183,3105,3035,2985,2922,2823,2710,
+2620,2567,2538,2526,2540,2568,2568,2513,2424,2351,2320,2321,2324,2300,2222,2082,1908,1744,1613,1498,
+1385,1302,1297,1372,1466,1512,1497,1457,1420,1383,1331,1272,1230,1218,1221,1204,1150,1068,991,936,
+895,841,774,725,722,750,751,691,596,532,534,579,622,653,688,729,741,689,580,459,
+352,241,99,-71,-245,-416,-612,-857,-1140,-1423,-1683,-1928,-2172,-2412,-2630,-2808,-2937,-3026,-3097,-3167,
+-3227,-3250,-3235,-3215,-3214,-3193,-3088,-2902,-2733,-2670,-2707,-2775,-2866,-3052,-3365,-3713,-3958,-4071,-4142,-4250,
+-4353,-4367,-4294,-4237,-4282,-4406,-4521,-4590,-4647,-4735,-4841,-4920,-4953,-4966,-4991,-5037,-5093,-5155,-5229,-5319,
+-5417,-5508,-5578,-5617,-5630,-5643,-5677,-5728,-5771,-5793,-5805,-5821,-5826,-5798,-5750,-5727,-5752,-5792,-5799,-5766,
+-5723,-5692,-5665,-5627,-5580,-5526,-5472,-5433,-5431,-5457,-5466,-5431,-5381,-5355,-5341,-5301,-5245,-5228,-5240,-5178,
+-4973,-4717,-4592,-4646,-4737,-4701,-4543,-4401,-4363,-4387,-4385,-4326,-4233,-4126,-4018,-3926,-3853,-3770,-3657,-3543,
+-3467,-3411,-3306,-3127,-2944,-2838,-2808,-2781,-2717,-2639,-2570,-2485,-2345,-2154,-1958,-1777,-1590,-1371,-1136,-924,
+-763,-637,-507,-339,-129,99,316,512,705,919,1156,1393,1598,1754,1872,1977,2074,2133,2112,2009,
+1894,1861,1948,2113,2291,2458,2629,2809,2978,3123,3255,3388,3502,3571,3593,3604,3638,3692,3742,3780,
+3818,3871,3935,3987,4012,4022,4057,4147,4280,4409,4503,4576,4658,4744,4795,4805,4812,4846,4857,4741,
+4443,4020,3592,3252,3032,2938,2975,3137,3371,3591,3721,3743,3691,3619,3557,3494,3401,3265,3118,3002,
+2925,2857,2765,2645,2518,2404,2308,2226,2148,2062,1955,1842,1748,1686,1629,1547,1441,1347,1285,1236,
+1166,1071,977,897,818,730,648,600,586,576,551,512,472,433,388,343,307,278,242,205,
+184,183,176,134,69,22,11,17,8,-17,-41,-45,-31,-3,29,48,41,24,26,60,
+104,135,161,204,266,327,377,430,497,565,618,657,693,727,754,764,754,716,664,640,
+683,781,887,977,1071,1171,1221,1177,1076,1013,1012,993,890,749,674,680,666,551,372,237,
+193,201,209,209,205,176,93,-41,-191,-326,-445,-562,-676,-778,-860,-925,-985,-1052,-1131,-1213,
+-1289,-1362,-1442,-1531,-1619,-1700,-1779,-1859,-1932,-1986,-2028,-2078,-2148,-2228,-2306,-2380,-2455,-2534,-2614,-2694,
+-2775,-2856,-2935,-3015,-3104,-3196,-3280,-3350,-3412,-3477,-3550,-3627,-3706,-3789,-3869,-3942,-4009,-4074,-4139,-4197,
+-4246,-4294,-4348,-4404,-4452,-4488,-4519,-4550,-4579,-4604,-4628,-4654,-4681,-4701,-4711,-4713,-4707,-4690,-4655,-4606,
+-4552,-4507,-4469,-4420,-4345,-4247,-4148,-4069,-4007,-3951,-3890,-3820,-3736,-3635,-3527,-3434,-3366,-3305,-3221,-3099,
+-2947,-2771,-2568,-2340,-2105,-1889,-1711,-1572,-1471,-1402,-1351,-1306,-1267,-1251,-1274,-1336,-1435,-1574,-1753,-1946,
+-2120,-2272,-2433,-2615,-2774,-2843,-2807,-2729,-2675,-2651,-2615,-2538,-2434,-2312,-2151,-1939,-1723,-1594,-1597,-1682,
+-1758,-1790,-1824,-1918,-2060,-2172,-2186,-2118,-2048,-2047,-2107,-2168,-2195,-2208,-2247,-2307,-2340,-2331,-2325,-2381,
+-2510,-2676,-2855,-3054,-3278,-3498,-3691,-3875,-4085,-4313,-4512,-4652,-4754,-4847,-4921,-4952,-4945,-4939,-4956,-4982,
+-4995,-5001,-5012,-5031,-5047,-5064,-5091,-5122,-5137,-5127,-5102,-5069,-5027,-4975,-4926,-4884,-4840,-4780,-4706,-4635,
+-4571,-4501,-4413,-4308,-4192,-4069,-3945,-3828,-3719,-3607,-3481,-3347,-3214,-3081,-2936,-2780,-2623,-2470,-2316,-2156,
+-1997,-1846,-1695,-1537,-1381,-1247,-1136,-1035,-931,-826,-728,-636,-545,-457,-373,-286,-185,-78,19,103,
+188,286,393,499,608,732,868,996,1105,1206,1316,1433,1536,1609,1656,1693,1729,1764,1794,1817,
+1840,1873,1921,1985,2059,2138,2216,2290,2353,2401,2440,2480,2528,2581,2635,2689,2748,2816,2901,3015,
+3173,3361,3534,3627,3610,3522,3442,3427,3467,3506,3502,3462,3418,3396,3392,3387,3360,3299,3202,3086,
+2975,2885,2815,2749,2680,2609,2540,2484,2455,2466,2514,2579,2640,2683,2710,2721,2768,2790,2809,2847,
+2911,2989,3059,3115,3172,3248,3341,3415,3423,3352,3249,3180,3168,3166,3117,3019,2923,2865,2823,2763,
+2685,2620,2584,2565,2554,2555,2567,2562,2521,2461,2422,2423,2439,2423,2343,2191,1987,1777,1606,1485,
+1392,1302,1233,1222,1274,1348,1385,1368,1321,1270,1222,1171,1120,1082,1070,1072,1062,1022,960,904,
+874,857,827,779,740,739,763,763,698,587,487,445,456,489,528,582,647,686,660,565,
+439,311,176,16,-165,-342,-515,-719,-985,-1291,-1583,-1831,-2052,-2274,-2496,-2699,-2867,-2998,-3096,-3171,
+-3234,-3286,-3311,-3296,-3262,-3248,-3256,-3244,-3182,-3094,-3028,-2993,-2973,-2994,-3133,-3420,-3767,-4035,-4171,-4241,
+-4317,-4388,-4397,-4354,-4349,-4450,-4621,-4774,-4872,-4948,-5040,-5127,-5159,-5127,-5082,-5083,-5135,-5208,-5278,-5354,
+-5454,-5571,-5674,-5735,-5751,-5748,-5763,-5810,-5869,-5908,-5918,-5919,-5922,-5906,-5847,-5770,-5739,-5778,-5839,-5860,
+-5834,-5808,-5808,-5809,-5777,-5712,-5641,-5591,-5576,-5594,-5611,-5576,-5490,-5417,-5410,-5432,-5408,-5340,-5310,-5333,
+-5293,-5091,-4807,-4645,-4681,-4770,-4731,-4554,-4374,-4283,-4244,-4195,-4135,-4096,-4075,-4045,-3998,-3936,-3841,-3701,
+-3557,-3461,-3398,-3294,-3119,-2943,-2849,-2825,-2782,-2676,-2547,-2446,-2357,-2230,-2051,-1854,-1663,-1469,-1256,-1042,
+-860,-719,-597,-456,-273,-51,185,410,615,814,1027,1251,1462,1634,1757,1842,1913,1990,2071,2137,
+2169,2182,2215,2297,2428,2584,2741,2890,3031,3168,3301,3427,3528,3590,3616,3626,3637,3654,3678,3718,
+3776,3844,3909,3968,4024,4069,4097,4127,4194,4309,4437,4540,4614,4688,4766,4820,4831,4827,4839,4850,
+4800,4646,4392,4070,3702,3319,2996,2835,2891,3125,3419,3650,3758,3757,3703,3641,3575,3485,3361,3226,
+3111,3022,2943,2857,2763,2663,2552,2431,2314,2210,2112,2013,1924,1863,1823,1771,1682,1573,1479,1408,
+1335,1241,1144,1072,1025,973,900,826,777,751,725,685,642,605,565,511,450,401,367,336,
+302,275,265,260,237,196,153,124,102,79,58,47,48,60,86,122,146,136,103,84,
+102,141,176,203,238,287,343,403,470,540,600,649,698,750,792,817,833,842,829,792,
+765,784,838,878,891,913,968,1010,988,931,913,945,952,890,825,842,912,907,761,550,
+391,311,248,163,93,80,103,93,6,-140,-298,-428,-524,-609,-703,-805,-891,-953,-1012,-1090,
+-1179,-1257,-1320,-1389,-1478,-1572,-1655,-1734,-1823,-1913,-1982,-2026,-2067,-2131,-2214,-2303,-2386,-2464,-2538,-2610,
+-2687,-2771,-2857,-2938,-3014,-3096,-3183,-3264,-3330,-3391,-3458,-3536,-3618,-3700,-3780,-3856,-3927,-3994,-4060,-4125,
+-4187,-4245,-4303,-4361,-4409,-4444,-4475,-4513,-4554,-4587,-4608,-4628,-4652,-4676,-4690,-4695,-4698,-4701,-4694,-4666,
+-4617,-4559,-4504,-4457,-4407,-4340,-4256,-4169,-4090,-4020,-3951,-3884,-3822,-3761,-3687,-3592,-3491,-3402,-3322,-3224,
+-3091,-2927,-2757,-2593,-2430,-2251,-2046,-1831,-1638,-1498,-1411,-1352,-1296,-1247,-1232,-1263,-1333,-1434,-1569,-1734,
+-1901,-2046,-2180,-2341,-2526,-2673,-2719,-2672,-2602,-2554,-2500,-2392,-2233,-2077,-1949,-1817,-1652,-1494,-1418,-1443,
+-1503,-1531,-1541,-1605,-1754,-1926,-2014,-1972,-1850,-1752,-1744,-1818,-1912,-1977,-2016,-2062,-2124,-2177,-2202,-2229,
+-2308,-2461,-2669,-2904,-3146,-3370,-3541,-3664,-3793,-3983,-4215,-4415,-4545,-4643,-4758,-4877,-4947,-4954,-4942,-4953,
+-4985,-5013,-5031,-5053,-5084,-5111,-5130,-5146,-5157,-5151,-5121,-5078,-5031,-4981,-4929,-4885,-4854,-4821,-4768,-4696,
+-4620,-4548,-4476,-4394,-4304,-4204,-4096,-3986,-3885,-3789,-3681,-3550,-3410,-3277,-3148,-3006,-2847,-2688,-2540,-2391,
+-2231,-2069,-1916,-1769,-1616,-1462,-1328,-1223,-1134,-1042,-943,-846,-751,-659,-572,-492,-410,-313,-203,-94,
+3,101,212,333,453,571,699,841,983,1108,1219,1329,1441,1540,1609,1651,1681,1714,1745,1766,
+1777,1793,1827,1884,1958,2039,2120,2197,2266,2325,2371,2406,2436,2470,2512,2558,2596,2628,2674,2764,
+2912,3117,3348,3555,3670,3648,3515,3365,3295,3324,3385,3400,3350,3277,3223,3195,3175,3145,3100,3033,
+2946,2850,2766,2705,2665,2635,2602,2556,2495,2440,2421,2454,2524,2604,2675,2730,2768,2812,2848,2885,
+2933,2994,3053,3097,3129,3164,3211,3259,3280,3245,3157,3062,3018,3039,3073,3051,2961,2852,2772,2716,
+2658,2596,2554,2544,2550,2555,2562,2575,2578,2564,2555,2584,2643,2670,2596,2406,2144,1877,1657,1503,
+1399,1319,1248,1194,1177,1199,1238,1257,1239,1191,1132,1076,1029,990,962,949,950,948,930,895,
+861,839,824,800,768,746,753,773,765,698,581,461,385,365,382,420,481,565,640,657,
+590,459,303,138,-43,-242,-438,-628,-842,-1108,-1410,-1700,-1948,-2166,-2377,-2581,-2761,-2911,-3039,-3146,
+-3227,-3286,-3335,-3367,-3366,-3335,-3316,-3338,-3377,-3377,-3316,-3229,-3163,-3144,-3195,-3350,-3610,-3907,-4139,-4264,
+-4326,-4385,-4448,-4491,-4525,-4603,-4753,-4932,-5071,-5155,-5230,-5325,-5404,-5399,-5301,-5187,-5144,-5193,-5289,-5380,
+-5463,-5565,-5688,-5800,-5864,-5879,-5875,-5887,-5924,-5961,-5974,-5966,-5966,-5983,-5985,-5942,-5878,-5858,-5909,-5978,
+-6000,-5976,-5961,-5975,-5976,-5921,-5823,-5740,-5714,-5748,-5801,-5807,-5718,-5566,-5455,-5452,-5497,-5480,-5396,-5349,
+-5384,-5381,-5209,-4924,-4729,-4724,-4791,-4752,-4580,-4388,-4255,-4160,-4069,-3998,-3967,-3947,-3902,-3841,-3789,-3730,
+-3633,-3516,-3423,-3349,-3236,-3068,-2917,-2854,-2841,-2774,-2610,-2415,-2269,-2170,-2063,-1919,-1751,-1575,-1381,-1169,
+-967,-805,-677,-546,-381,-177,49,280,504,716,923,1130,1332,1515,1659,1754,1811,1859,1931,2043,
+2181,2312,2416,2500,2590,2703,2841,2985,3111,3215,3317,3434,3554,3639,3668,3664,3663,3677,3689,3696,
+3721,3781,3858,3924,3976,4033,4097,4150,4190,4249,4352,4476,4578,4646,4704,4770,4824,4844,4840,4843,
+4855,4847,4789,4671,4477,4179,3776,3339,3000,2873,2981,3243,3526,3720,3785,3755,3689,3616,3532,3428,
+3314,3208,3117,3035,2956,2877,2787,2675,2545,2413,2293,2184,2091,2029,2005,1991,1944,1846,1721,1608,
+1514,1424,1332,1253,1200,1158,1103,1033,968,926,896,859,811,769,736,700,643,572,512,474,
+445,410,374,355,358,366,360,334,294,253,224,213,213,213,208,209,225,239,229,195,
+163,158,178,207,237,272,315,367,433,509,578,624,659,707,769,819,843,860,887,911,
+915,913,931,957,949,902,865,873,894,880,848,851,886,895,864,865,952,1060,1069,956,
+816,730,658,507,270,45,-69,-67,-23,-23,-106,-250,-393,-490,-553,-629,-737,-844,-917,-970,
+-1041,-1134,-1216,-1274,-1333,-1419,-1519,-1610,-1695,-1789,-1886,-1962,-2007,-2048,-2109,-2193,-2285,-2372,-2453,-2527,
+-2596,-2671,-2759,-2854,-2940,-3015,-3092,-3175,-3256,-3326,-3390,-3458,-3533,-3612,-3690,-3770,-3849,-3924,-3995,-4064,
+-4129,-4189,-4248,-4310,-4366,-4407,-4432,-4459,-4503,-4554,-4594,-4618,-4637,-4659,-4677,-4683,-4684,-4687,-4695,-4692,
+-4669,-4624,-4565,-4503,-4444,-4390,-4332,-4264,-4188,-4111,-4033,-3952,-3872,-3802,-3744,-3683,-3601,-3501,-3399,-3303,
+-3198,-3065,-2905,-2741,-2595,-2461,-2311,-2124,-1911,-1712,-1562,-1458,-1372,-1291,-1232,-1217,-1248,-1307,-1389,-1507,
+-1660,-1813,-1938,-2055,-2201,-2374,-2507,-2544,-2500,-2439,-2385,-2290,-2110,-1884,-1703,-1609,-1556,-1482,-1392,-1337,
+-1333,-1336,-1322,-1341,-1461,-1674,-1873,-1944,-1872,-1740,-1652,-1661,-1751,-1866,-1956,-2004,-2029,-2051,-2071,-2092,
+-2136,-2245,-2435,-2688,-2969,-3244,-3478,-3638,-3738,-3842,-4003,-4195,-4337,-4406,-4466,-4592,-4767,-4907,-4969,-4983,
+-4999,-5022,-5037,-5048,-5077,-5124,-5162,-5174,-5168,-5156,-5137,-5105,-5063,-5016,-4966,-4914,-4868,-4831,-4792,-4736,
+-4663,-4586,-4511,-4437,-4361,-4285,-4206,-4117,-4022,-3929,-3837,-3729,-3596,-3455,-3328,-3209,-3079,-2929,-2773,-2624,
+-2471,-2304,-2133,-1974,-1828,-1681,-1535,-1408,-1310,-1230,-1145,-1050,-951,-855,-764,-680,-605,-528,-434,-322,
+-206,-96,11,131,264,396,523,654,800,954,1098,1223,1334,1442,1539,1614,1665,1700,1730,1754,
+1765,1771,1788,1829,1891,1966,2046,2124,2195,2257,2308,2350,2381,2401,2422,2455,2495,2524,2540,2578,
+2682,2868,3106,3353,3567,3701,3708,3588,3420,3315,3325,3393,3423,3370,3268,3168,3090,3023,2958,2895,
+2833,2767,2702,2650,2619,2608,2609,2607,2584,2531,2470,2441,2472,2551,2640,2714,2769,2812,2881,2918,
+2966,3025,3088,3136,3161,3172,3182,3194,3193,3160,3086,2980,2883,2844,2879,2939,2952,2890,2786,2689,
+2610,2534,2464,2423,2421,2440,2463,2491,2526,2559,2589,2648,2763,2892,2927,2776,2456,2078,1762,1554,
+1428,1336,1258,1196,1159,1143,1142,1147,1147,1129,1085,1024,964,919,888,864,849,847,854,861,
+858,843,818,783,740,705,692,705,726,722,670,569,449,353,306,301,322,373,463,574,
+646,621,497,318,126,-75,-294,-522,-746,-974,-1228,-1508,-1784,-2029,-2249,-2456,-2646,-2806,-2939,-3060,
+-3171,-3255,-3312,-3357,-3395,-3410,-3392,-3375,-3396,-3439,-3440,-3365,-3258,-3203,-3251,-3393,-3599,-3835,-4063,-4240,
+-4351,-4418,-4476,-4543,-4626,-4737,-4893,-5077,-5237,-5330,-5376,-5436,-5539,-5630,-5624,-5497,-5334,-5253,-5298,-5416,
+-5525,-5602,-5680,-5785,-5898,-5979,-6013,-6019,-6026,-6045,-6061,-6057,-6044,-6049,-6085,-6122,-6124,-6100,-6101,-6146,
+-6197,-6205,-6185,-6182,-6198,-6175,-6073,-5930,-5828,-5820,-5888,-5963,-5956,-5825,-5621,-5474,-5461,-5515,-5508,-5417,
+-5353,-5377,-5389,-5252,-4997,-4805,-4775,-4809,-4755,-4586,-4399,-4261,-4161,-4074,-4007,-3951,-3865,-3735,-3619,-3571,
+-3568,-3543,-3478,-3402,-3317,-3186,-3014,-2873,-2820,-2800,-2709,-2514,-2294,-2129,-2024,-1928,-1812,-1679,-1522,-1325,
+-1098,-886,-726,-600,-460,-280,-70,146,365,589,818,1038,1238,1422,1592,1733,1823,1863,1895,1973,
+2116,2289,2443,2557,2646,2738,2852,2985,3122,3240,3332,3416,3517,3630,3711,3730,3709,3694,3706,3722,
+3730,3748,3799,3872,3939,3991,4048,4116,4179,4231,4300,4406,4526,4619,4675,4724,4786,4843,4865,4861,
+4861,4877,4887,4870,4819,4721,4538,4235,3831,3419,3129,3053,3193,3453,3693,3815,3812,3741,3656,3566,
+3461,3344,3236,3152,3084,3014,2931,2832,2727,2626,2529,2426,2309,2197,2123,2099,2093,2053,1958,1828,
+1698,1588,1502,1441,1397,1350,1282,1196,1116,1065,1039,1015,978,930,889,858,824,772,705,645,
+602,567,524,476,447,451,478,497,490,459,426,406,403,402,388,357,326,309,304,293,
+266,233,211,209,226,260,303,351,404,475,560,633,673,697,742,810,869,895,907,931,
+963,981,990,1010,1034,1024,976,933,927,935,920,894,888,893,873,842,862,950,1030,1024,
+967,954,998,993,834,536,210,-37,-163,-177,-137,-129,-206,-339,-450,-510,-570,-671,-790,-873,
+-926,-993,-1090,-1181,-1240,-1291,-1370,-1474,-1576,-1670,-1765,-1857,-1928,-1974,-2021,-2089,-2174,-2262,-2348,-2431,
+-2508,-2578,-2652,-2742,-2840,-2930,-3008,-3086,-3171,-3255,-3330,-3398,-3466,-3536,-3606,-3680,-3761,-3845,-3926,-4000,
+-4070,-4136,-4196,-4253,-4311,-4362,-4396,-4417,-4446,-4493,-4549,-4593,-4622,-4647,-4670,-4682,-4682,-4679,-4684,-4693,
+-4692,-4671,-4632,-4577,-4509,-4441,-4380,-4323,-4260,-4185,-4105,-4026,-3946,-3863,-3784,-3717,-3655,-3578,-3480,-3370,
+-3260,-3153,-3038,-2913,-2781,-2646,-2500,-2331,-2135,-1935,-1760,-1626,-1517,-1409,-1309,-1245,-1230,-1246,-1269,-1311,
+-1407,-1557,-1713,-1829,-1917,-2026,-2166,-2286,-2329,-2304,-2258,-2203,-2091,-1885,-1635,-1447,-1378,-1383,-1379,-1333,
+-1272,-1224,-1186,-1169,-1227,-1402,-1647,-1842,-1899,-1840,-1757,-1731,-1779,-1876,-1986,-2073,-2117,-2118,-2094,-2063,
+-2043,-2062,-2151,-2316,-2531,-2764,-3002,-3238,-3459,-3663,-3874,-4104,-4305,-4408,-4411,-4409,-4497,-4668,-4829,-4917,
+-4945,-4953,-4950,-4934,-4932,-4974,-5047,-5101,-5109,-5093,-5086,-5091,-5088,-5067,-5032,-4989,-4942,-4891,-4836,-4773,
+-4697,-4620,-4553,-4493,-4427,-4351,-4274,-4202,-4125,-4040,-3950,-3858,-3754,-3630,-3497,-3373,-3262,-3145,-3009,-2862,
+-2709,-2547,-2372,-2196,-2033,-1886,-1744,-1609,-1493,-1402,-1325,-1242,-1149,-1053,-959,-871,-792,-720,-646,-554,
+-439,-315,-195,-80,42,177,316,448,582,729,893,1057,1201,1323,1432,1533,1622,1690,1736,1766,
+1782,1789,1801,1831,1883,1947,2014,2083,2154,2220,2274,2316,2353,2381,2396,2407,2429,2458,2478,2489,
+2537,2671,2889,3136,3357,3539,3674,3731,3678,3549,3440,3423,3472,3497,3442,3320,3183,3057,2940,2829,
+2729,2649,2593,2562,2554,2562,2575,2588,2598,2594,2563,2521,2507,2551,2640,2734,2802,2846,2881,2983,
+3013,3056,3112,3170,3207,3216,3207,3193,3172,3130,3058,2959,2842,2739,2692,2721,2790,2828,2793,2705,
+2609,2521,2433,2349,2289,2265,2269,2291,2335,2398,2466,2540,2657,2838,3018,3056,2850,2442,1993,1656,
+1469,1368,1285,1205,1151,1128,1117,1098,1076,1058,1037,995,933,870,824,791,765,746,742,758,
+785,808,811,782,724,658,612,601,617,642,653,627,550,436,325,255,229,230,260,343,
+475,595,618,515,327,112,-111,-354,-614,-870,-1113,-1359,-1618,-1873,-2104,-2308,-2498,-2674,-2824,-2951,
+-3068,-3176,-3261,-3315,-3356,-3395,-3419,-3418,-3414,-3439,-3478,-3470,-3384,-3276,-3249,-3356,-3560,-3790,-4000,-4180,
+-4335,-4459,-4548,-4609,-4666,-4755,-4902,-5101,-5303,-5446,-5507,-5529,-5583,-5700,-5823,-5852,-5744,-5575,-5476,-5517,
+-5647,-5760,-5812,-5843,-5908,-6011,-6108,-6166,-6186,-6198,-6217,-6238,-6246,-6241,-6244,-6275,-6322,-6354,-6360,-6361,
+-6371,-6378,-6367,-6361,-6384,-6406,-6358,-6215,-6038,-5924,-5919,-5990,-6063,-6053,-5918,-5708,-5549,-5524,-5578,-5582,
+-5497,-5413,-5403,-5396,-5282,-5076,-4914,-4869,-4857,-4760,-4572,-4382,-4252,-4171,-4115,-4069,-4000,-3864,-3677,-3528,
+-3482,-3502,-3507,-3462,-3389,-3292,-3147,-2966,-2820,-2749,-2703,-2595,-2411,-2218,-2071,-1959,-1845,-1721,-1595,-1448,
+-1251,-1014,-792,-624,-490,-338,-150,51,247,448,675,921,1150,1342,1515,1691,1851,1946,1967,1981,
+2074,2256,2454,2591,2665,2731,2829,2955,3088,3215,3329,3423,3499,3578,3670,3749,3780,3764,3743,3748,
+3770,3786,3800,3837,3901,3971,4030,4083,4137,4190,4250,4335,4452,4570,4653,4703,4755,4823,4880,4895,
+4880,4874,4893,4914,4909,4878,4826,4736,4563,4276,3897,3521,3279,3259,3434,3671,3831,3861,3807,3727,
+3636,3516,3372,3242,3159,3107,3045,2943,2821,2722,2672,2644,2586,2468,2319,2197,2132,2106,2075,2011,
+1907,1783,1669,1596,1569,1555,1506,1407,1294,1215,1182,1172,1154,1118,1070,1021,976,933,886,830,
+771,718,669,616,562,528,528,551,567,565,552,544,543,540,525,495,451,405,368,347,
+334,319,296,271,256,264,297,345,396,450,519,606,683,727,750,791,857,917,944,953,
+971,995,1005,1003,1013,1035,1041,1021,1001,1001,1006,992,967,948,922,872,826,830,867,869,
+815,785,856,987,1062,1018,878,667,381,61,-172,-236,-195,-196,-293,-413,-485,-536,-625,-743,
+-834,-888,-953,-1053,-1151,-1211,-1255,-1324,-1426,-1535,-1634,-1725,-1808,-1872,-1923,-1985,-2067,-2157,-2241,-2322,
+-2406,-2486,-2558,-2631,-2717,-2812,-2900,-2980,-3063,-3155,-3245,-3325,-3397,-3467,-3536,-3603,-3677,-3761,-3847,-3926,
+-3996,-4064,-4133,-4197,-4257,-4313,-4360,-4390,-4411,-4443,-4493,-4545,-4586,-4616,-4645,-4672,-4683,-4680,-4677,-4686,
+-4696,-4693,-4672,-4638,-4586,-4516,-4439,-4369,-4304,-4234,-4152,-4069,-3997,-3930,-3859,-3782,-3708,-3639,-3561,-3463,
+-3345,-3221,-3110,-3020,-2947,-2870,-2760,-2595,-2380,-2144,-1932,-1773,-1659,-1559,-1451,-1347,-1277,-1242,-1216,-1180,
+-1171,-1237,-1381,-1541,-1658,-1737,-1829,-1958,-2083,-2147,-2139,-2091,-2026,-1918,-1737,-1513,-1330,-1251,-1257,-1271,
+-1241,-1175,-1112,-1079,-1101,-1207,-1401,-1623,-1775,-1813,-1785,-1775,-1819,-1896,-1973,-2044,-2107,-2152,-2166,-2148,
+-2108,-2063,-2039,-2064,-2138,-2234,-2335,-2471,-2690,-3005,-3384,-3779,-4141,-4409,-4529,-4520,-4484,-4523,-4642,-4772,
+-4855,-4896,-4918,-4920,-4908,-4923,-4994,-5090,-5144,-5132,-5104,-5109,-5140,-5154,-5125,-5068,-5008,-4954,-4899,-4834,
+-4750,-4657,-4579,-4534,-4507,-4463,-4386,-4292,-4207,-4133,-4057,-3973,-3886,-3795,-3691,-3571,-3447,-3328,-3210,-3082,
+-2941,-2786,-2617,-2440,-2266,-2104,-1954,-1815,-1689,-1583,-1496,-1417,-1336,-1249,-1159,-1069,-984,-906,-835,-760,
+-667,-550,-419,-290,-169,-49,79,216,353,491,641,812,992,1157,1294,1411,1520,1621,1704,1762,
+1794,1810,1821,1844,1890,1954,2020,2079,2139,2205,2266,2312,2347,2382,2415,2437,2444,2449,2458,2465,
+2480,2546,2702,2930,3161,3338,3472,3597,3700,3733,3679,3592,3543,3542,3532,3461,3334,3190,3053,2922,
+2792,2670,2573,2516,2502,2520,2549,2570,2584,2598,2606,2595,2575,2580,2638,2738,2838,2911,2954,2983,
+3086,3111,3142,3182,3218,3229,3212,3183,3153,3112,3048,2959,2852,2737,2633,2579,2602,2672,2719,2697,
+2623,2539,2461,2379,2289,2208,2153,2126,2129,2170,2242,2324,2413,2542,2731,2913,2947,2734,2324,1886,
+1572,1409,1323,1247,1175,1132,1117,1100,1062,1015,977,945,899,837,776,728,693,664,647,649,
+671,705,737,746,716,652,582,539,533,549,573,592,584,522,407,283,198,163,152,162,
+221,347,488,554,490,316,86,-166,-441,-726,-996,-1243,-1482,-1729,-1968,-2175,-2348,-2509,-2668,-2819,
+-2952,-3066,-3165,-3240,-3290,-3328,-3366,-3396,-3412,-3430,-3473,-3524,-3525,-3454,-3368,-3364,-3484,-3687,-3900,-4090,
+-4266,-4440,-4598,-4709,-4762,-4789,-4851,-4990,-5193,-5395,-5531,-5588,-5612,-5675,-5809,-5968,-6058,-6015,-5883,-5787,
+-5817,-5940,-6047,-6077,-6068,-6095,-6179,-6278,-6345,-6374,-6394,-6429,-6476,-6509,-6515,-6505,-6509,-6537,-6570,-6580,
+-6559,-6517,-6468,-6436,-6442,-6485,-6507,-6444,-6293,-6129,-6040,-6047,-6112,-6175,-6174,-6073,-5900,-5754,-5714,-5747,
+-5744,-5660,-5560,-5509,-5470,-5362,-5192,-5051,-4981,-4916,-4775,-4567,-4371,-4235,-4153,-4104,-4066,-4000,-3871,-3703,
+-3571,-3518,-3503,-3465,-3391,-3302,-3196,-3051,-2883,-2747,-2666,-2591,-2469,-2311,-2165,-2047,-1918,-1757,-1586,-1434,
+-1289,-1111,-901,-696,-526,-371,-195,2,192,361,539,759,1008,1236,1419,1589,1779,1957,2047,2041,
+2040,2160,2400,2634,2756,2786,2829,2938,3080,3201,3300,3401,3499,3575,3632,3697,3773,3829,3838,3824,
+3823,3845,3866,3877,3899,3949,4018,4082,4128,4165,4207,4272,4371,4492,4604,4679,4730,4789,4859,4910,
+4914,4889,4878,4900,4932,4940,4917,4874,4819,4727,4545,4238,3843,3491,3327,3401,3611,3799,3876,3865,
+3824,3761,3645,3481,3326,3232,3185,3119,2992,2838,2732,2710,2733,2718,2617,2455,2294,2181,2122,2098,
+2074,2016,1914,1797,1721,1701,1693,1640,1534,1428,1370,1354,1348,1328,1292,1241,1172,1095,1027,975,
+926,867,800,734,674,625,599,598,605,601,588,585,598,608,597,564,526,489,451,415,
+391,382,378,369,353,337,339,366,410,459,508,571,650,726,776,805,839,890,934,954,
+965,988,1016,1024,1011,1002,1006,1008,999,992,996,999,989,975,961,927,867,818,806,796,
+731,633,595,659,765,855,975,1159,1278,1112,629,88,-215,-247,-211,-268,-388,-473,-521,-596,
+-707,-799,-855,-917,-1013,-1108,-1165,-1205,-1270,-1369,-1476,-1570,-1655,-1732,-1797,-1861,-1942,-2041,-2137,-2218,
+-2294,-2376,-2457,-2530,-2603,-2684,-2770,-2852,-2932,-3024,-3127,-3226,-3311,-3387,-3462,-3535,-3605,-3682,-3769,-3856,
+-3929,-3989,-4050,-4120,-4192,-4261,-4319,-4361,-4387,-4411,-4447,-4498,-4546,-4579,-4605,-4636,-4664,-4676,-4673,-4674,
+-4685,-4693,-4687,-4665,-4632,-4585,-4516,-4435,-4355,-4280,-4199,-4113,-4033,-3969,-3916,-3857,-3788,-3714,-3638,-3554,
+-3452,-3330,-3198,-3081,-3002,-2967,-2940,-2868,-2709,-2467,-2191,-1945,-1769,-1658,-1573,-1483,-1387,-1301,-1222,-1130,
+-1029,-963,-981,-1083,-1219,-1345,-1463,-1607,-1779,-1938,-2023,-2013,-1936,-1835,-1727,-1594,-1433,-1278,-1181,-1153,
+-1147,-1114,-1050,-1001,-1008,-1087,-1231,-1413,-1580,-1676,-1694,-1689,-1723,-1799,-1868,-1903,-1922,-1958,-2016,-2078,
+-2123,-2139,-2122,-2090,-2074,-2082,-2090,-2090,-2135,-2313,-2653,-3099,-3553,-3940,-4213,-4353,-4386,-4392,-4451,-4574,
+-4720,-4856,-4987,-5117,-5223,-5299,-5380,-5487,-5580,-5590,-5519,-5443,-5422,-5434,-5407,-5307,-5167,-5038,-4941,-4871,
+-4803,-4722,-4632,-4563,-4539,-4543,-4523,-4446,-4334,-4230,-4153,-4087,-4016,-3939,-3862,-3780,-3677,-3551,-3415,-3282,
+-3150,-3009,-2849,-2678,-2506,-2340,-2180,-2028,-1889,-1772,-1675,-1590,-1506,-1424,-1344,-1263,-1179,-1093,-1013,-937,
+-860,-768,-656,-526,-392,-264,-144,-22,111,254,402,560,735,922,1101,1253,1379,1493,1599,1690,
+1758,1801,1826,1845,1878,1936,2010,2084,2147,2208,2271,2327,2366,2397,2436,2483,2517,2524,2511,2495,
+2488,2504,2573,2719,2921,3122,3276,3398,3524,3660,3759,3779,3731,3663,3602,3534,3437,3317,3197,3090,
+2986,2876,2763,2665,2599,2573,2576,2589,2601,2614,2630,2640,2632,2618,2630,2694,2798,2909,2995,3052,
+3086,3147,3174,3199,3223,3227,3198,3146,3096,3057,3012,2943,2853,2752,2646,2552,2507,2538,2614,2663,
+2639,2565,2489,2423,2350,2260,2171,2101,2056,2039,2059,2113,2179,2247,2339,2474,2605,2620,2442,2112,
+1764,1513,1373,1290,1218,1159,1129,1116,1088,1032,967,910,860,806,748,696,652,616,590,583,
+598,622,648,667,667,635,578,528,509,513,524,535,550,549,491,370,234,143,106,92,
+83,107,196,328,428,430,314,98,-186,-504,-813,-1084,-1320,-1550,-1790,-2019,-2208,-2357,-2494,-2642,
+-2797,-2936,-3047,-3127,-3180,-3217,-3256,-3303,-3346,-3379,-3418,-3481,-3548,-3567,-3524,-3473,-3494,-3615,-3796,-3987,
+-4175,-4370,-4571,-4745,-4851,-4884,-4883,-4918,-5037,-5223,-5408,-5536,-5600,-5640,-5713,-5850,-6033,-6187,-6235,-6175,
+-6097,-6101,-6194,-6292,-6326,-6318,-6336,-6407,-6492,-6546,-6569,-6592,-6638,-6700,-6748,-6760,-6743,-6729,-6741,-6769,
+-6779,-6745,-6666,-6573,-6505,-6489,-6509,-6506,-6433,-6310,-6212,-6192,-6238,-6303,-6350,-6354,-6289,-6162,-6034,-5972,
+-5962,-5929,-5834,-5721,-5643,-5578,-5465,-5301,-5145,-5031,-4925,-4777,-4590,-4409,-4262,-4150,-4070,-4007,-3934,-3829,
+-3708,-3607,-3529,-3441,-3328,-3212,-3109,-3001,-2868,-2736,-2644,-2583,-2498,-2361,-2213,-2096,-1991,-1840,-1626,-1396,
+-1204,-1055,-915,-762,-601,-436,-257,-56,147,323,469,624,828,1066,1289,1473,1650,1848,2024,2099,
+2078,2089,2259,2562,2831,2938,2929,2949,3063,3207,3304,3360,3435,3539,3631,3688,3739,3814,3890,3925,
+3919,3911,3926,3949,3961,3975,4014,4076,4136,4177,4209,4255,4330,4433,4545,4642,4711,4764,4820,4881,
+4921,4926,4911,4905,4926,4960,4982,4974,4936,4877,4797,4659,4401,4013,3601,3342,3339,3528,3740,3859,
+3892,3897,3879,3797,3644,3482,3377,3323,3249,3108,2934,2808,2772,2790,2786,2714,2582,2431,2298,2211,
+2177,2172,2145,2059,1939,1845,1805,1780,1721,1633,1562,1535,1531,1520,1499,1471,1421,1329,1212,1111,
+1048,1003,949,879,805,739,691,670,672,672,652,625,620,638,647,623,578,540,516,494,
+469,452,452,458,456,445,433,435,456,494,541,592,649,717,785,836,869,899,933,955,
+961,969,999,1038,1053,1036,1008,985,965,948,939,940,939,935,937,938,914,862,820,809,
+786,707,609,568,582,576,581,772,1226,1687,1723,1193,429,-100,-245,-218,-253,-365,-455,-502,
+-567,-669,-759,-817,-877,-962,-1046,-1099,-1144,-1217,-1319,-1418,-1502,-1579,-1656,-1730,-1808,-1902,-2010,-2110,
+-2191,-2265,-2343,-2422,-2495,-2568,-2648,-2727,-2803,-2886,-2989,-3106,-3214,-3303,-3383,-3460,-3534,-3606,-3686,-3778,
+-3866,-3935,-3987,-4041,-4108,-4184,-4256,-4314,-4352,-4374,-4397,-4438,-4492,-4540,-4571,-4595,-4625,-4652,-4664,-4664,
+-4668,-4678,-4682,-4669,-4645,-4615,-4573,-4511,-4432,-4349,-4264,-4178,-4094,-4020,-3960,-3903,-3844,-3781,-3715,-3638,
+-3544,-3434,-3313,-3185,-3067,-2983,-2945,-2931,-2887,-2762,-2545,-2271,-2004,-1798,-1668,-1587,-1514,-1424,-1314,-1187,
+-1046,-906,-800,-753,-765,-829,-950,-1138,-1375,-1615,-1800,-1890,-1872,-1769,-1633,-1514,-1421,-1329,-1223,-1130,
+-1075,-1042,-993,-927,-895,-945,-1074,-1241,-1402,-1521,-1578,-1581,-1577,-1608,-1665,-1703,-1704,-1698,-1727,-1803,
+-1908,-2016,-2101,-2143,-2148,-2154,-2185,-2221,-2238,-2268,-2389,-2631,-2937,-3219,-3431,-3579,-3681,-3762,-3866,-4032,
+-4263,-4526,-4809,-5118,-5440,-5727,-5944,-6105,-6227,-6283,-6228,-6087,-5955,-5893,-5865,-5784,-5616,-5397,-5189,-5024,
+-4904,-4816,-4740,-4666,-4607,-4585,-4590,-4576,-4501,-4378,-4258,-4176,-4118,-4059,-3989,-3920,-3853,-3766,-3647,-3504,
+-3358,-3217,-3070,-2906,-2733,-2567,-2411,-2255,-2101,-1964,-1856,-1768,-1680,-1589,-1503,-1428,-1355,-1275,-1191,-1107,
+-1026,-945,-858,-759,-641,-506,-370,-244,-121,12,164,326,493,669,855,1037,1199,1335,1453,1559,
+1651,1727,1787,1828,1860,1899,1963,2048,2137,2216,2285,2348,2399,2437,2470,2515,2573,2617,2624,2597,
+2560,2538,2546,2594,2689,2829,2998,3171,3336,3495,3646,3770,3841,3841,3780,3679,3561,3444,3341,3258,
+3192,3125,3045,2953,2865,2793,2743,2708,2684,2676,2684,2697,2696,2672,2645,2652,2715,2820,2936,3035,
+3104,3147,3157,3185,3212,3227,3205,3137,3050,2983,2942,2899,2833,2749,2660,2570,2493,2466,2518,2609,
+2660,2627,2541,2456,2385,2307,2214,2126,2062,2019,1992,1988,2010,2044,2076,2116,2176,2228,2210,2078,
+1860,1637,1466,1349,1259,1182,1131,1109,1097,1066,1010,943,876,809,747,695,654,613,572,548,
+553,577,596,604,602,588,554,512,491,500,514,513,509,521,527,475,350,205,103,57,
+33,7,0,42,141,266,358,347,189,-108,-474,-820,-1100,-1329,-1552,-1787,-2010,-2192,-2334,-2462,
+-2601,-2748,-2884,-2987,-3047,-3073,-3095,-3143,-3218,-3292,-3346,-3398,-3470,-3541,-3567,-3543,-3530,-3598,-3752,-3944,
+-4134,-4326,-4528,-4722,-4870,-4945,-4955,-4947,-4982,-5094,-5263,-5429,-5548,-5621,-5680,-5757,-5879,-6056,-6252,-6388,
+-6409,-6356,-6326,-6372,-6455,-6514,-6548,-6596,-6671,-6739,-6770,-6774,-6787,-6826,-6879,-6920,-6935,-6929,-6922,-6936,
+-6971,-7000,-6987,-6914,-6796,-6678,-6594,-6545,-6495,-6422,-6354,-6345,-6407,-6494,-6552,-6567,-6546,-6485,-6383,-6270,
+-6191,-6140,-6071,-5960,-5842,-5755,-5679,-5560,-5380,-5180,-5010,-4875,-4753,-4623,-4478,-4326,-4185,-4069,-3971,-3872,
+-3766,-3666,-3571,-3454,-3300,-3139,-3013,-2916,-2809,-2683,-2584,-2540,-2509,-2421,-2269,-2114,-2002,-1897,-1732,-1489,
+-1219,-990,-830,-720,-621,-501,-344,-153,51,244,406,544,695,887,1115,1342,1544,1736,1927,2080,
+2143,2148,2220,2461,2808,3077,3148,3094,3082,3181,3311,3379,3399,3451,3563,3684,3766,3825,3897,3975,
+4015,4008,3991,3998,4022,4042,4060,4096,4148,4196,4232,4271,4332,4418,4513,4605,4685,4751,4807,4856,
+4901,4936,4957,4968,4972,4977,4993,5019,5038,5021,4961,4868,4730,4487,4103,3661,3347,3298,3472,3698,
+3837,3888,3910,3917,3867,3743,3597,3493,3430,3355,3228,3071,2942,2870,2839,2808,2750,2661,2548,2426,
+2325,2270,2250,2221,2144,2034,1938,1879,1829,1762,1694,1658,1655,1654,1641,1629,1619,1575,1467,1321,
+1197,1126,1090,1056,1007,942,865,794,753,749,751,731,699,687,696,694,660,613,581,564,
+546,527,523,536,547,540,524,516,525,550,589,641,698,755,810,859,898,930,963,992,
+1005,998,996,1020,1059,1077,1057,1014,969,932,907,899,901,900,895,901,911,896,852,815,
+810,799,744,684,673,665,564,436,540,1018,1600,1776,1324,554,-23,-211,-198,-228,-334,-424,
+-471,-531,-624,-712,-773,-833,-910,-981,-1032,-1088,-1178,-1287,-1380,-1453,-1526,-1607,-1691,-1777,-1874,-1981,
+-2081,-2163,-2238,-2314,-2390,-2462,-2536,-2614,-2691,-2768,-2858,-2972,-3099,-3212,-3303,-3382,-3457,-3527,-3597,-3679,
+-3774,-3865,-3934,-3984,-4035,-4098,-4169,-4236,-4290,-4323,-4343,-4366,-4408,-4463,-4514,-4551,-4580,-4610,-4635,-4648,
+-4654,-4662,-4670,-4665,-4645,-4619,-4593,-4559,-4507,-4436,-4351,-4260,-4171,-4093,-4026,-3960,-3887,-3815,-3756,-3702,
+-3629,-3528,-3410,-3293,-3181,-3070,-2971,-2898,-2852,-2806,-2723,-2575,-2364,-2125,-1911,-1757,-1656,-1570,-1463,-1325,
+-1173,-1029,-908,-807,-710,-619,-582,-668,-895,-1193,-1454,-1619,-1688,-1679,-1600,-1474,-1354,-1273,-1216,-1151,
+-1077,-1018,-970,-907,-835,-815,-895,-1054,-1228,-1366,-1453,-1491,-1486,-1465,-1459,-1470,-1477,-1473,-1484,-1536,
+-1627,-1738,-1860,-1973,-2052,-2094,-2142,-2237,-2368,-2479,-2552,-2621,-2709,-2785,-2810,-2790,-2776,-2812,-2913,-3096,
+-3375,-3732,-4125,-4540,-4987,-5452,-5868,-6172,-6357,-6452,-6461,-6374,-6227,-6105,-6058,-6051,-6004,-5879,-5701,-5503,
+-5303,-5117,-4965,-4857,-4778,-4714,-4667,-4639,-4603,-4525,-4404,-4279,-4187,-4128,-4074,-4011,-3945,-3882,-3809,-3706,
+-3573,-3429,-3285,-3134,-2967,-2795,-2633,-2484,-2331,-2177,-2042,-1941,-1857,-1768,-1669,-1578,-1505,-1437,-1362,-1281,
+-1199,-1114,-1026,-941,-856,-753,-622,-476,-337,-207,-70,87,259,433,607,784,960,1127,1276,1403,
+1509,1598,1678,1750,1810,1858,1908,1981,2078,2182,2275,2351,2415,2467,2511,2554,2604,2660,2700,2706,
+2675,2628,2594,2589,2604,2634,2702,2841,3053,3290,3493,3643,3759,3853,3897,3860,3747,3605,3482,3398,
+3344,3302,3254,3189,3112,3036,2970,2913,2858,2811,2785,2784,2786,2764,2717,2674,2674,2733,2835,2948,
+3046,3116,3157,3144,3163,3187,3196,3155,3059,2951,2877,2838,2798,2736,2664,2593,2518,2453,2442,2512,
+2617,2670,2624,2519,2415,2326,2233,2132,2049,1998,1965,1932,1905,1896,1903,1913,1921,1926,1912,1854,
+1749,1623,1509,1415,1324,1231,1148,1098,1078,1066,1040,999,943,874,795,726,678,641,595,544,
+516,525,547,552,539,525,508,479,450,448,474,491,478,468,490,513,472,350,201,87,
+16,-31,-70,-91,-80,-20,103,265,368,297,20,-376,-762,-1068,-1312,-1540,-1767,-1978,-2155,-2297,
+-2419,-2533,-2649,-2766,-2862,-2913,-2924,-2939,-3008,-3129,-3249,-3329,-3389,-3461,-3533,-3559,-3543,-3564,-3692,-3912,
+-4146,-4350,-4534,-4714,-4870,-4970,-5008,-5010,-5016,-5066,-5180,-5340,-5497,-5620,-5715,-5803,-5891,-5994,-6142,-6340,
+-6526,-6614,-6590,-6536,-6534,-6594,-6674,-6754,-6846,-6943,-7008,-7019,-7002,-6996,-7015,-7041,-7062,-7077,-7088,-7096,
+-7114,-7153,-7208,-7238,-7200,-7078,-6907,-6747,-6633,-6560,-6518,-6520,-6587,-6699,-6792,-6817,-6776,-6704,-6619,-6522,
+-6423,-6339,-6264,-6173,-6054,-5937,-5849,-5774,-5662,-5477,-5239,-5008,-4837,-4731,-4644,-4524,-4366,-4209,-4084,-3975,
+-3857,-3735,-3631,-3526,-3380,-3194,-3030,-2929,-2857,-2751,-2616,-2518,-2481,-2445,-2338,-2170,-2010,-1896,-1788,-1623,
+-1381,-1104,-858,-686,-588,-517,-417,-264,-78,108,281,442,604,776,972,1196,1432,1658,1861,2032,
+2152,2222,2296,2470,2781,3130,3349,3360,3260,3214,3285,3398,3457,3470,3515,3631,3772,3879,3950,4014,
+4075,4104,4094,4075,4079,4103,4129,4155,4189,4230,4264,4294,4340,4414,4503,4585,4656,4724,4793,4856,
+4903,4938,4970,5006,5035,5040,5021,5008,5031,5079,5101,5062,4969,4826,4587,4205,3744,3389,3296,3445,
+3669,3821,3882,3905,3907,3860,3753,3628,3528,3457,3383,3288,3181,3082,2994,2913,2838,2765,2686,2594,
+2490,2395,2327,2281,2230,2161,2084,2020,1965,1900,1824,1766,1745,1743,1733,1718,1717,1719,1678,1566,
+1416,1291,1222,1197,1189,1177,1133,1044,931,849,822,824,811,782,761,755,739,700,660,637,
+620,596,576,583,609,621,602,578,577,603,642,688,744,804,857,893,915,931,952,988,
+1027,1044,1032,1016,1027,1058,1074,1053,1004,953,912,889,887,894,890,876,870,874,860,818,
+783,780,779,747,719,745,765,658,451,389,660,1091,1260,948,379,-45,-171,-157,-196,-300,
+-386,-435,-496,-584,-666,-728,-793,-869,-933,-981,-1047,-1149,-1263,-1352,-1419,-1492,-1582,-1672,-1759,-1852,
+-1953,-2050,-2135,-2211,-2287,-2361,-2432,-2504,-2579,-2656,-2739,-2838,-2960,-3086,-3197,-3287,-3366,-3439,-3508,-3578,
+-3663,-3759,-3849,-3918,-3972,-4025,-4084,-4145,-4201,-4248,-4282,-4308,-4335,-4373,-4421,-4470,-4515,-4555,-4590,-4614,
+-4628,-4640,-4654,-4660,-4647,-4622,-4597,-4575,-4546,-4501,-4436,-4352,-4255,-4163,-4090,-4029,-3958,-3870,-3784,-3724,
+-3680,-3615,-3512,-3392,-3282,-3184,-3083,-2970,-2856,-2759,-2685,-2624,-2549,-2433,-2273,-2097,-1939,-1804,-1667,-1506,
+-1328,-1167,-1051,-982,-924,-822,-669,-550,-580,-794,-1088,-1316,-1425,-1465,-1485,-1471,-1397,-1287,-1192,-1126,
+-1066,-1005,-953,-906,-845,-784,-784,-887,-1056,-1213,-1317,-1375,-1403,-1398,-1363,-1318,-1281,-1258,-1259,-1301,
+-1384,-1481,-1574,-1670,-1772,-1854,-1901,-1950,-2061,-2236,-2410,-2522,-2569,-2572,-2534,-2454,-2363,-2310,-2323,-2413,
+-2603,-2910,-3304,-3720,-4127,-4546,-4984,-5379,-5648,-5772,-5803,-5784,-5727,-5654,-5615,-5647,-5726,-5798,-5836,-5840,
+-5797,-5674,-5470,-5239,-5047,-4918,-4826,-4746,-4670,-4597,-4515,-4409,-4291,-4189,-4118,-4066,-4013,-3953,-3892,-3827,
+-3742,-3628,-3493,-3351,-3201,-3036,-2868,-2711,-2564,-2414,-2260,-2125,-2024,-1941,-1851,-1752,-1662,-1589,-1523,-1452,
+-1376,-1296,-1208,-1112,-1022,-941,-847,-719,-565,-413,-274,-134,24,199,376,543,706,871,1039,1202,
+1344,1454,1540,1616,1693,1767,1833,1903,1991,2098,2209,2308,2390,2455,2509,2559,2610,2661,2705,2733,
+2737,2714,2671,2634,2618,2613,2603,2622,2737,2972,3256,3482,3615,3708,3806,3877,3856,3737,3583,3463,
+3392,3351,3315,3275,3223,3159,3094,3043,3003,2964,2923,2894,2884,2872,2837,2779,2732,2729,2782,2873,
+2976,3063,3118,3144,3132,3135,3146,3141,3082,2970,2855,2783,2748,2712,2659,2601,2546,2481,2418,2408,
+2482,2590,2638,2580,2459,2338,2235,2134,2036,1963,1921,1889,1844,1794,1760,1749,1752,1754,1736,1681,
+1590,1489,1414,1374,1342,1288,1212,1142,1103,1087,1071,1044,1005,952,879,791,715,667,628,572,
+511,481,491,504,490,460,444,437,416,392,394,419,426,406,401,439,475,440,330,202,
+97,6,-79,-138,-157,-156,-136,-53,113,276,281,55,-324,-717,-1042,-1307,-1544,-1759,-1946,-2106,
+-2242,-2348,-2423,-2493,-2580,-2673,-2730,-2741,-2759,-2853,-3019,-3182,-3285,-3353,-3435,-3524,-3564,-3561,-3610,-3791,
+-4073,-4348,-4559,-4727,-4879,-5001,-5065,-5082,-5088,-5114,-5177,-5288,-5438,-5594,-5734,-5865,-5997,-6118,-6220,-6336,
+-6503,-6690,-6813,-6825,-6779,-6758,-6792,-6861,-6953,-7074,-7199,-7276,-7281,-7246,-7219,-7216,-7220,-7224,-7234,-7249,
+-7257,-7262,-7290,-7352,-7411,-7397,-7272,-7071,-6876,-6755,-6721,-6752,-6829,-6940,-7050,-7104,-7069,-6964,-6841,-6731,
+-6635,-6541,-6447,-6350,-6243,-6125,-6010,-5919,-5851,-5768,-5615,-5370,-5090,-4867,-4743,-4662,-4540,-4366,-4199,-4079,
+-3978,-3858,-3732,-3629,-3526,-3374,-3185,-3036,-2966,-2917,-2815,-2671,-2551,-2474,-2384,-2235,-2054,-1899,-1786,-1672,
+-1509,-1285,-1030,-796,-631,-542,-478,-377,-220,-41,129,297,484,689,897,1102,1320,1559,1799,2004,
+2151,2247,2339,2500,2777,3131,3437,3573,3521,3394,3332,3386,3495,3575,3616,3672,3777,3906,4010,4077,
+4126,4168,4191,4190,4183,4191,4214,4237,4260,4287,4316,4339,4364,4413,4489,4574,4645,4705,4768,4839,
+4906,4956,4989,5016,5046,5072,5073,5045,5021,5044,5112,5166,5152,5068,4930,4703,4332,3860,3461,3306,
+3409,3628,3815,3923,3971,3965,3897,3780,3657,3555,3467,3382,3308,3249,3191,3114,3018,2919,2821,2720,
+2613,2518,2445,2387,2323,2249,2183,2144,2123,2088,2023,1946,1890,1861,1837,1802,1775,1772,1770,1725,
+1621,1494,1390,1325,1295,1295,1308,1288,1197,1058,943,894,888,876,846,819,801,773,731,697,
+681,663,632,609,621,652,660,633,607,620,667,723,775,829,882,922,940,938,931,938,
+972,1016,1037,1021,996,1001,1033,1054,1037,995,950,914,890,884,888,880,855,831,821,805,
+770,737,733,734,706,675,702,755,712,532,364,384,547,610,424,114,-88,-120,-110,-169,
+-273,-351,-402,-467,-552,-627,-688,-759,-838,-900,-948,-1017,-1122,-1232,-1314,-1378,-1455,-1549,-1644,-1732,
+-1823,-1922,-2017,-2099,-2175,-2251,-2326,-2397,-2466,-2537,-2612,-2698,-2803,-2925,-3046,-3151,-3242,-3325,-3404,-3479,
+-3558,-3648,-3744,-3828,-3894,-3951,-4009,-4065,-4116,-4160,-4202,-4244,-4283,-4320,-4355,-4389,-4427,-4473,-4523,-4566,
+-4591,-4605,-4622,-4640,-4645,-4629,-4602,-4578,-4558,-4529,-4484,-4421,-4339,-4242,-4147,-4076,-4021,-3956,-3865,-3771,
+-3702,-3652,-3588,-3492,-3382,-3279,-3187,-3086,-2965,-2830,-2698,-2589,-2517,-2474,-2431,-2364,-2266,-2143,-1987,-1790,
+-1558,-1330,-1148,-1036,-986,-951,-865,-705,-549,-531,-707,-981,-1198,-1294,-1329,-1368,-1395,-1358,-1255,-1140,
+-1047,-974,-913,-870,-835,-792,-761,-795,-917,-1076,-1196,-1255,-1286,-1313,-1320,-1289,-1226,-1156,-1100,-1084,
+-1127,-1216,-1308,-1384,-1460,-1553,-1638,-1680,-1700,-1765,-1899,-2055,-2170,-2234,-2272,-2304,-2334,-2368,-2408,-2448,
+-2507,-2642,-2902,-3251,-3594,-3880,-4147,-4434,-4699,-4857,-4886,-4854,-4832,-4832,-4841,-4871,-4949,-5070,-5217,-5392,
+-5603,-5805,-5891,-5786,-5527,-5239,-5023,-4888,-4783,-4675,-4570,-4484,-4405,-4310,-4206,-4118,-4061,-4021,-3975,-3920,
+-3859,-3783,-3680,-3551,-3409,-3260,-3104,-2943,-2789,-2642,-2494,-2343,-2207,-2101,-2015,-1930,-1841,-1759,-1689,-1620,
+-1546,-1471,-1393,-1301,-1197,-1099,-1014,-920,-793,-635,-475,-330,-187,-27,147,323,484,631,779,942,
+1114,1272,1393,1480,1555,1633,1715,1796,1884,1984,2094,2207,2317,2415,2488,2534,2569,2612,2659,2693,
+2709,2713,2703,2675,2643,2627,2622,2612,2622,2724,2951,3228,3436,3542,3615,3712,3787,3757,3616,3450,
+3333,3271,3231,3202,3182,3161,3121,3069,3028,3009,2997,2979,2961,2950,2939,2911,2867,2831,2827,2864,
+2934,3019,3089,3126,3132,3110,3101,3098,3075,3000,2881,2767,2700,2668,2635,2589,2542,2494,2431,2364,
+2348,2412,2509,2545,2478,2350,2223,2119,2027,1946,1891,1855,1814,1750,1679,1625,1598,1593,1591,1564,
+1489,1375,1271,1221,1226,1243,1230,1192,1161,1156,1157,1137,1089,1026,954,868,773,694,644,601,
+542,481,455,468,475,448,412,400,401,383,352,342,350,342,315,315,356,381,337,251,
+188,142,55,-76,-183,-217,-217,-229,-212,-108,36,78,-76,-381,-722,-1027,-1294,-1527,-1719,-1873,
+-2013,-2142,-2235,-2280,-2309,-2369,-2457,-2522,-2540,-2567,-2675,-2864,-3045,-3157,-3234,-3344,-3477,-3561,-3589,-3664,
+-3877,-4192,-4488,-4702,-4868,-5021,-5136,-5184,-5186,-5195,-5236,-5306,-5409,-5545,-5701,-5855,-6013,-6185,-6348,-6475,
+-6579,-6707,-6863,-6989,-7042,-7043,-7045,-7064,-7095,-7155,-7271,-7418,-7519,-7529,-7480,-7437,-7423,-7422,-7421,-7424,
+-7428,-7422,-7411,-7424,-7474,-7521,-7495,-7357,-7153,-6980,-6915,-6962,-7078,-7215,-7337,-7409,-7397,-7293,-7134,-6979,
+-6860,-6762,-6655,-6525,-6387,-6260,-6143,-6029,-5927,-5863,-5825,-5733,-5517,-5209,-4934,-4780,-4695,-4572,-4384,-4201,
+-4073,-3969,-3846,-3722,-3629,-3538,-3390,-3202,-3059,-2998,-2958,-2867,-2730,-2597,-2472,-2317,-2126,-1941,-1798,-1681,
+-1551,-1384,-1181,-962,-765,-631,-558,-489,-365,-186,1,175,360,579,819,1045,1251,1464,1702,1946,
+2151,2286,2374,2493,2722,3066,3431,3680,3736,3639,3508,3454,3512,3636,3757,3841,3906,3981,4068,4140,
+4186,4218,4250,4279,4297,4308,4323,4341,4357,4370,4388,4406,4423,4448,4495,4568,4647,4715,4774,4833,
+4895,4956,5009,5045,5063,5075,5089,5099,5091,5081,5109,5181,5242,5233,5151,5023,4821,4475,3999,3549,
+3319,3367,3589,3836,4024,4124,4120,4023,3879,3744,3632,3524,3420,3345,3302,3262,3196,3113,3028,2936,
+2818,2689,2590,2537,2495,2425,2329,2253,2225,2223,2202,2148,2084,2033,1985,1922,1853,1809,1800,1790,
+1741,1653,1560,1482,1414,1360,1339,1347,1337,1260,1132,1020,966,949,927,894,868,848,815,770,
+736,720,700,665,639,645,668,667,639,622,648,707,769,823,871,913,940,946,938,928,
+932,960,998,1012,989,962,973,1015,1043,1032,998,967,938,906,883,876,867,839,804,782,
+767,740,710,701,700,672,622,610,651,665,574,419,314,288,250,137,4,-56,-54,-76,
+-158,-254,-317,-367,-438,-521,-590,-650,-725,-806,-869,-919,-989,-1091,-1193,-1268,-1329,-1404,-1497,-1593,
+-1687,-1784,-1884,-1975,-2053,-2125,-2200,-2277,-2352,-2423,-2491,-2561,-2645,-2749,-2865,-2979,-3083,-3179,-3272,-3361,
+-3445,-3535,-3632,-3726,-3806,-3871,-3932,-3993,-4046,-4086,-4121,-4161,-4211,-4265,-4315,-4350,-4372,-4395,-4436,-4492,
+-4541,-4568,-4581,-4599,-4619,-4624,-4608,-4582,-4560,-4537,-4503,-4455,-4396,-4321,-4229,-4135,-4062,-4012,-3958,-3877,
+-3779,-3691,-3618,-3546,-3462,-3371,-3278,-3178,-3067,-2944,-2812,-2673,-2539,-2433,-2369,-2342,-2332,-2314,-2254,-2119,
+-1900,-1632,-1375,-1166,-1015,-911,-831,-728,-569,-398,-338,-476,-763,-1047,-1222,-1298,-1329,-1329,-1275,-1172,
+-1058,-965,-895,-843,-809,-780,-748,-738,-799,-932,-1073,-1154,-1175,-1188,-1217,-1237,-1219,-1162,-1086,-1009,
+-961,-970,-1032,-1108,-1174,-1251,-1359,-1471,-1534,-1551,-1576,-1651,-1756,-1857,-1956,-2085,-2260,-2463,-2655,-2793,
+-2851,-2866,-2939,-3149,-3457,-3743,-3935,-4079,-4239,-4393,-4463,-4435,-4384,-4380,-4415,-4442,-4453,-4476,-4523,-4602,
+-4760,-5059,-5471,-5831,-5942,-5755,-5407,-5097,-4910,-4797,-4682,-4559,-4468,-4415,-4356,-4263,-4161,-4090,-4052,-4020,
+-3973,-3913,-3837,-3734,-3600,-3454,-3309,-3164,-3012,-2857,-2707,-2559,-2413,-2278,-2170,-2084,-2007,-1932,-1860,-1790,
+-1715,-1634,-1554,-1473,-1379,-1272,-1170,-1079,-981,-853,-696,-533,-382,-235,-76,97,269,425,560,691,
+844,1018,1187,1321,1419,1503,1588,1674,1761,1854,1954,2059,2180,2322,2465,2558,2581,2574,2590,2635,
+2670,2675,2666,2661,2651,2634,2622,2625,2632,2661,2765,2969,3204,3364,3433,3493,3590,3657,3602,3432,
+3252,3140,3086,3052,3035,3049,3074,3069,3029,2988,2975,2980,2983,2980,2981,2987,2985,2971,2951,2941,
+2953,2990,3044,3092,3114,3110,3046,3037,3028,2995,2916,2801,2693,2624,2587,2554,2511,2466,2417,2354,
+2290,2271,2321,2394,2412,2343,2222,2102,2003,1921,1859,1819,1786,1734,1656,1573,1507,1466,1445,1429,
+1389,1302,1181,1081,1053,1090,1138,1156,1151,1161,1198,1228,1207,1132,1032,935,841,747,667,613,
+570,514,458,436,449,457,433,404,398,400,375,331,304,295,273,239,233,254,243,177,
+128,162,215,158,-27,-215,-297,-308,-333,-366,-341,-254,-207,-286,-481,-729,-986,-1237,-1455,-1619,
+-1747,-1876,-2008,-2103,-2138,-2149,-2190,-2264,-2328,-2358,-2399,-2516,-2700,-2871,-2976,-3065,-3211,-3400,-3542,-3616,
+-3719,-3948,-4268,-4566,-4791,-4985,-5171,-5300,-5330,-5305,-5306,-5360,-5445,-5548,-5675,-5825,-5981,-6145,-6330,-6522,
+-6681,-6798,-6903,-7018,-7130,-7217,-7287,-7347,-7374,-7365,-7371,-7456,-7605,-7724,-7744,-7689,-7637,-7628,-7641,-7648,
+-7641,-7628,-7614,-7608,-7624,-7656,-7662,-7592,-7441,-7267,-7156,-7161,-7270,-7430,-7585,-7691,-7714,-7635,-7471,-7273,
+-7103,-6983,-6880,-6744,-6564,-6378,-6230,-6116,-5999,-5882,-5815,-5814,-5786,-5609,-5288,-4975,-4800,-4725,-4619,-4436,
+-4243,-4098,-3973,-3831,-3694,-3598,-3504,-3354,-3166,-3022,-2955,-2910,-2825,-2706,-2579,-2432,-2242,-2033,-1852,-1713,
+-1585,-1438,-1273,-1093,-908,-748,-644,-578,-482,-311,-94,111,298,500,734,973,1190,1394,1615,1862,
+2112,2322,2462,2557,2689,2946,3319,3685,3896,3901,3776,3647,3608,3682,3832,3991,4104,4163,4197,4233,
+4269,4295,4316,4345,4381,4412,4432,4447,4460,4471,4480,4491,4504,4520,4545,4591,4657,4730,4797,4857,
+4909,4957,5008,5063,5105,5119,5117,5128,5157,5178,5184,5209,5275,5337,5329,5249,5136,4968,4654,4172,
+3670,3371,3378,3607,3901,4140,4264,4251,4126,3962,3820,3706,3593,3484,3408,3364,3312,3233,3155,3102,
+3047,2950,2820,2714,2658,2617,2540,2431,2338,2292,2276,2254,2217,2178,2135,2066,1967,1873,1827,1827,
+1823,1778,1702,1628,1562,1488,1408,1354,1335,1315,1254,1159,1076,1029,1000,966,934,919,908,879,
+833,795,773,748,710,677,669,672,661,640,637,669,722,774,822,866,901,918,922,924,
+931,947,976,1006,1010,986,968,991,1038,1060,1037,1003,985,969,934,894,877,873,853,813,
+781,765,741,705,680,674,656,606,557,550,564,540,462,371,298,226,142,69,30,0,
+-66,-161,-239,-286,-334,-407,-487,-553,-613,-688,-766,-828,-882,-956,-1057,-1155,-1227,-1284,-1350,-1435,
+-1530,-1632,-1737,-1837,-1921,-1993,-2063,-2137,-2217,-2300,-2380,-2451,-2517,-2592,-2687,-2797,-2907,-3013,-3116,-3218,
+-3312,-3402,-3496,-3595,-3690,-3772,-3846,-3917,-3980,-4027,-4059,-4090,-4130,-4183,-4244,-4301,-4339,-4356,-4371,-4405,
+-4460,-4511,-4540,-4555,-4573,-4593,-4598,-4585,-4563,-4540,-4512,-4471,-4423,-4373,-4313,-4230,-4136,-4057,-4005,-3958,
+-3889,-3791,-3684,-3586,-3504,-3433,-3361,-3274,-3163,-3038,-2913,-2793,-2666,-2525,-2386,-2276,-2216,-2207,-2226,-2220,
+-2134,-1951,-1717,-1491,-1293,-1103,-915,-743,-584,-401,-201,-81,-162,-455,-831,-1124,-1261,-1269,-1207,-1118,
+-1026,-947,-887,-844,-815,-791,-753,-703,-687,-752,-884,-1010,-1069,-1074,-1074,-1089,-1093,-1071,-1030,-979,
+-917,-858,-836,-864,-919,-979,-1060,-1182,-1322,-1430,-1488,-1529,-1589,-1670,-1765,-1894,-2086,-2341,-2622,-2868,
+-3023,-3063,-3045,-3090,-3283,-3585,-3866,-4049,-4174,-4302,-4419,-4464,-4439,-4419,-4453,-4501,-4500,-4444,-4372,-4302,
+-4242,-4266,-4507,-5005,-5588,-5951,-5910,-5563,-5177,-4935,-4819,-4716,-4589,-4490,-4454,-4431,-4363,-4257,-4167,-4117,
+-4083,-4037,-3974,-3895,-3785,-3645,-3495,-3357,-3225,-3080,-2921,-2763,-2614,-2473,-2345,-2238,-2153,-2081,-2014,-1947,
+-1877,-1797,-1711,-1625,-1538,-1442,-1336,-1233,-1137,-1033,-903,-748,-586,-432,-282,-128,35,201,352,481,
+603,746,918,1092,1235,1347,1446,1542,1634,1721,1811,1904,2004,2139,2330,2535,2662,2667,2617,2611,
+2664,2704,2684,2636,2612,2617,2623,2620,2622,2636,2685,2803,2994,3185,3293,3325,3371,3469,3532,3458,
+3266,3077,2972,2930,2907,2904,2941,2998,3020,2992,2951,2939,2953,2971,2984,3002,3028,3054,3066,3059,
+3040,3024,3020,3032,3047,3052,3046,2931,2919,2908,2880,2819,2724,2623,2543,2493,2455,2416,2371,2322,
+2266,2218,2205,2236,2275,2273,2209,2109,2003,1905,1818,1756,1717,1680,1621,1541,1462,1399,1353,1321,
+1290,1238,1144,1029,948,945,1003,1063,1084,1083,1106,1165,1215,1199,1109,992,891,808,726,646,
+584,538,486,430,398,401,411,402,391,394,392,358,307,276,261,232,191,171,163,114,
+30,14,130,268,242,15,-251,-396,-426,-444,-488,-506,-469,-423,-430,-516,-677,-904,-1156,-1374,
+-1526,-1642,-1769,-1900,-1991,-2021,-2027,-2056,-2116,-2179,-2233,-2309,-2441,-2612,-2757,-2851,-2951,-3124,-3350,-3537,
+-3654,-3786,-4021,-4329,-4618,-4858,-5094,-5325,-5469,-5474,-5412,-5399,-5471,-5584,-5700,-5826,-5973,-6126,-6283,-6460,
+-6656,-6839,-6979,-7083,-7172,-7262,-7367,-7495,-7618,-7677,-7652,-7615,-7658,-7787,-7905,-7929,-7877,-7829,-7831,-7863,
+-7881,-7869,-7844,-7833,-7850,-7885,-7898,-7853,-7742,-7603,-7494,-7460,-7509,-7618,-7754,-7876,-7945,-7921,-7793,-7590,
+-7373,-7196,-7070,-6955,-6797,-6586,-6373,-6214,-6100,-5980,-5850,-5778,-5799,-5809,-5656,-5324,-4982,-4786,-4710,-4617,
+-4447,-4262,-4116,-3980,-3819,-3662,-3543,-3430,-3273,-3095,-2967,-2903,-2845,-2750,-2633,-2513,-2366,-2173,-1962,-1775,
+-1615,-1462,-1315,-1178,-1035,-877,-730,-628,-541,-394,-165,84,294,478,683,915,1136,1335,1544,1787,
+2050,2306,2524,2681,2785,2912,3160,3536,3909,4114,4093,3938,3793,3754,3844,4023,4210,4334,4376,4377,
+4383,4403,4423,4440,4467,4503,4533,4549,4558,4568,4578,4587,4598,4609,4621,4645,4687,4745,4807,4867,
+4922,4969,5011,5058,5117,5165,5180,5175,5191,5232,5258,5254,5268,5338,5420,5435,5375,5291,5162,4872,
+4373,3822,3478,3473,3714,4010,4224,4304,4253,4112,3952,3825,3721,3617,3524,3468,3433,3365,3253,3152,
+3107,3089,3034,2929,2819,2743,2683,2604,2501,2405,2337,2297,2270,2252,2234,2194,2110,1995,1901,1872,
+1890,1899,1858,1781,1700,1627,1550,1468,1399,1353,1310,1251,1182,1124,1080,1038,997,974,972,971,
+948,907,868,839,804,761,722,698,682,664,652,664,694,728,759,796,838,868,878,881,
+895,923,956,990,1018,1025,1013,1012,1045,1087,1087,1042,1000,994,997,970,924,901,901,886,
+843,799,775,750,702,653,630,622,593,540,495,476,466,443,406,360,300,224,148,80,
+7,-82,-171,-233,-272,-320,-389,-460,-521,-580,-652,-723,-781,-837,-916,-1017,-1114,-1189,-1245,-1303,
+-1378,-1472,-1579,-1686,-1777,-1852,-1921,-1994,-2070,-2151,-2239,-2329,-2408,-2474,-2540,-2626,-2731,-2841,-2949,-3055,
+-3157,-3252,-3343,-3437,-3534,-3631,-3723,-3813,-3898,-3964,-4006,-4035,-4068,-4111,-4162,-4218,-4272,-4312,-4333,-4347,
+-4377,-4427,-4475,-4506,-4525,-4545,-4564,-4572,-4563,-4545,-4521,-4486,-4443,-4400,-4362,-4313,-4237,-4142,-4055,-3992,
+-3942,-3878,-3785,-3673,-3567,-3483,-3420,-3356,-3268,-3149,-3015,-2890,-2775,-2656,-2521,-2373,-2235,-2132,-2083,-2081,
+-2082,-2031,-1909,-1756,-1615,-1482,-1311,-1090,-863,-661,-459,-231,-42,-23,-244,-615,-949,-1110,-1101,-1013,
+-929,-874,-832,-792,-767,-763,-753,-703,-625,-585,-639,-764,-877,-924,-922,-907,-886,-845,-797,-771,
+-766,-754,-721,-695,-708,-755,-816,-895,-1009,-1150,-1284,-1388,-1473,-1555,-1641,-1744,-1888,-2092,-2345,-2603,
+-2817,-2945,-2977,-2969,-3021,-3203,-3477,-3738,-3926,-4069,-4208,-4325,-4377,-4383,-4414,-4493,-4559,-4545,-4461,-4363,
+-4261,-4137,-4053,-4176,-4630,-5295,-5835,-5958,-5673,-5252,-4958,-4829,-4748,-4637,-4540,-4510,-4515,-4480,-4388,-4288,
+-4219,-4169,-4111,-4039,-3952,-3837,-3694,-3544,-3413,-3291,-3152,-2991,-2825,-2671,-2533,-2411,-2307,-2223,-2150,-2082,
+-2015,-1946,-1868,-1782,-1693,-1602,-1503,-1395,-1289,-1187,-1075,-942,-789,-630,-476,-330,-187,-40,111,258,
+387,508,648,817,988,1131,1246,1353,1459,1558,1652,1747,1843,1943,2086,2307,2559,2724,2741,2689,
+2693,2765,2802,2734,2619,2558,2574,2610,2622,2615,2623,2683,2820,3012,3179,3248,3249,3282,3381,3451,
+3378,3180,2981,2873,2841,2833,2841,2881,2936,2961,2941,2911,2908,2933,2965,2992,3020,3058,3098,3126,
+3129,3109,3072,3032,2997,2969,2948,2931,2785,2754,2734,2719,2692,2631,2538,2444,2378,2342,2313,2275,
+2230,2188,2162,2155,2163,2165,2143,2092,2020,1930,1826,1722,1640,1585,1536,1475,1404,1341,1294,1256,
+1224,1189,1132,1043,943,885,900,964,1017,1023,1005,1011,1061,1110,1099,1017,911,831,775,710,
+629,557,504,452,391,341,326,333,339,345,352,345,306,260,237,229,201,154,119,91,
+27,-56,-59,73,228,214,-11,-298,-476,-524,-533,-562,-589,-576,-523,-466,-460,-565,-798,-1092,
+-1346,-1514,-1634,-1749,-1849,-1900,-1908,-1912,-1945,-2006,-2084,-2182,-2312,-2471,-2629,-2751,-2838,-2945,-3124,-3349,
+-3546,-3689,-3847,-4085,-4376,-4649,-4897,-5163,-5426,-5580,-5572,-5491,-5478,-5573,-5713,-5844,-5974,-6120,-6276,-6429,
+-6595,-6784,-6975,-7136,-7254,-7337,-7412,-7514,-7665,-7829,-7926,-7919,-7869,-7877,-7967,-8063,-8090,-8051,-8012,-8019,
+-8059,-8089,-8084,-8064,-8066,-8104,-8143,-8125,-8030,-7902,-7812,-7795,-7833,-7891,-7951,-8016,-8077,-8097,-8034,-7879,
+-7667,-7453,-7274,-7134,-7002,-6837,-6627,-6413,-6245,-6120,-5993,-5865,-5804,-5839,-5861,-5708,-5361,-4992,-4761,-4650,
+-4533,-4361,-4194,-4070,-3945,-3783,-3617,-3484,-3357,-3201,-3047,-2953,-2905,-2838,-2723,-2590,-2462,-2312,-2118,-1896,
+-1672,-1455,-1263,-1128,-1044,-954,-818,-668,-548,-424,-225,44,296,479,642,850,1091,1312,1510,1727,
+1979,2241,2490,2713,2888,2999,3108,3329,3696,4079,4286,4245,4051,3872,3821,3921,4121,4327,4457,4496,
+4493,4501,4528,4552,4570,4595,4627,4654,4666,4674,4682,4690,4697,4706,4715,4724,4742,4779,4829,4877,
+4920,4965,5013,5061,5113,5169,5213,5226,5224,5243,5280,5290,5266,5273,5363,5479,5525,5494,5446,5352,
+5071,4544,3954,3603,3625,3886,4152,4287,4287,4196,4063,3936,3835,3740,3637,3553,3518,3502,3436,3301,
+3161,3086,3067,3042,2972,2872,2780,2707,2640,2566,2483,2403,2345,2319,2314,2301,2252,2161,2058,1985,
+1965,1978,1978,1931,1845,1752,1671,1603,1540,1480,1420,1356,1290,1229,1177,1126,1076,1038,1025,1029,
+1026,1005,973,940,903,857,806,765,735,709,687,684,705,732,747,756,778,814,841,846,
+847,865,902,941,977,1007,1023,1026,1038,1074,1108,1098,1046,1003,1005,1021,1006,963,934,928,
+911,862,807,775,751,702,636,587,568,550,512,464,428,408,393,374,344,295,223,141,
+60,-22,-106,-182,-239,-284,-334,-392,-446,-497,-553,-619,-682,-737,-796,-874,-969,-1064,-1142,-1203,
+-1259,-1329,-1422,-1531,-1629,-1704,-1767,-1837,-1916,-1995,-2071,-2157,-2253,-2342,-2412,-2477,-2560,-2664,-2774,-2881,
+-2985,-3086,-3183,-3278,-3375,-3473,-3571,-3671,-3774,-3869,-3938,-3981,-4014,-4053,-4099,-4145,-4189,-4234,-4273,-4301,
+-4324,-4356,-4398,-4440,-4472,-4497,-4519,-4537,-4545,-4541,-4527,-4502,-4464,-4422,-4385,-4352,-4306,-4231,-4135,-4041,
+-3966,-3906,-3841,-3754,-3651,-3554,-3477,-3415,-3344,-3249,-3130,-3003,-2880,-2760,-2638,-2509,-2375,-2240,-2116,-2022,
+-1965,-1928,-1873,-1789,-1700,-1636,-1576,-1469,-1297,-1103,-931,-763,-558,-339,-218,-291,-525,-768,-886,-871,
+-808,-771,-749,-701,-630,-586,-596,-611,-570,-484,-433,-477,-580,-661,-682,-665,-638,-593,-523,-465,
+-461,-503,-539,-537,-523,-541,-601,-681,-766,-865,-981,-1106,-1225,-1333,-1434,-1534,-1649,-1799,-1993,-2212,
+-2425,-2601,-2721,-2785,-2828,-2909,-3062,-3259,-3440,-3582,-3712,-3851,-3968,-4032,-4068,-4135,-4245,-4331,-4337,-4282,
+-4227,-4183,-4110,-4020,-4053,-4375,-4967,-5562,-5829,-5668,-5277,-4945,-4789,-4728,-4658,-4585,-4563,-4583,-4577,-4512,
+-4418,-4336,-4264,-4188,-4105,-4012,-3897,-3755,-3606,-3475,-3354,-3218,-3059,-2891,-2733,-2593,-2472,-2372,-2288,-2212,
+-2141,-2074,-2010,-1937,-1853,-1762,-1668,-1567,-1458,-1346,-1236,-1118,-985,-835,-679,-528,-389,-259,-129,10,
+152,284,407,548,712,876,1009,1117,1222,1332,1440,1549,1667,1782,1887,2016,2219,2468,2656,2719,
+2720,2769,2859,2871,2745,2570,2481,2510,2574,2602,2596,2606,2680,2829,3020,3169,3217,3203,3229,3332,
+3418,3367,3178,2967,2841,2807,2816,2838,2870,2904,2915,2899,2881,2887,2918,2956,2988,3018,3056,3102,
+3142,3160,3145,3099,3032,2957,2887,2829,2785,2635,2575,2542,2540,2547,2518,2435,2331,2258,2232,2221,
+2194,2155,2124,2112,2107,2094,2067,2034,1997,1949,1874,1765,1644,1539,1462,1399,1337,1278,1233,1203,
+1178,1150,1115,1060,982,904,862,877,925,961,958,931,920,947,982,976,913,833,778,744,
+691,610,529,469,416,352,293,266,269,280,289,292,276,237,197,184,184,159,103,52,
+15,-33,-96,-108,-27,71,55,-115,-340,-499,-563,-584,-607,-634,-633,-573,-455,-361,-413,-659,
+-1010,-1323,-1533,-1668,-1762,-1805,-1794,-1775,-1798,-1866,-1954,-2060,-2199,-2371,-2545,-2688,-2792,-2878,-2989,-3152,
+-3348,-3529,-3684,-3862,-4103,-4381,-4641,-4890,-5168,-5441,-5605,-5612,-5553,-5563,-5678,-5834,-5974,-6105,-6251,-6406,
+-6558,-6718,-6898,-7088,-7261,-7397,-7494,-7567,-7657,-7797,-7966,-8088,-8115,-8082,-8072,-8120,-8190,-8225,-8209,-8178,
+-8172,-8202,-8242,-8267,-8278,-8305,-8352,-8373,-8310,-8173,-8049,-8021,-8088,-8174,-8216,-8216,-8212,-8216,-8190,-8095,
+-7930,-7734,-7542,-7367,-7206,-7049,-6879,-6682,-6471,-6283,-6131,-6000,-5896,-5868,-5919,-5935,-5767,-5409,-5022,-4757,
+-4597,-4437,-4250,-4092,-3980,-3862,-3704,-3546,-3422,-3303,-3158,-3023,-2948,-2911,-2842,-2717,-2573,-2431,-2269,-2063,
+-1817,-1539,-1249,-1005,-870,-830,-786,-674,-528,-399,-253,-28,246,470,612,758,984,1259,1506,1714,
+1927,2160,2393,2618,2840,3026,3138,3227,3422,3777,4162,4369,4313,4098,3903,3848,3948,4144,4343,4473,
+4528,4555,4593,4637,4666,4682,4704,4734,4760,4777,4792,4804,4808,4808,4814,4824,4834,4848,4881,4925,
+4959,4983,5015,5067,5126,5178,5220,5246,5253,5255,5277,5310,5313,5291,5313,5417,5540,5587,5568,5545,
+5471,5179,4619,4016,3699,3779,4067,4299,4366,4312,4214,4113,4026,3945,3846,3722,3617,3575,3568,3518,
+3388,3226,3106,3052,3029,2988,2914,2828,2760,2717,2674,2601,2505,2430,2403,2399,2372,2305,2223,2155,
+2106,2067,2030,1988,1932,1857,1773,1699,1643,1599,1551,1488,1416,1347,1290,1237,1181,1131,1103,1098,
+1098,1085,1061,1037,1008,962,901,844,808,786,762,739,736,756,779,783,777,784,807,828,
+835,840,859,892,926,957,986,1004,1008,1012,1036,1071,1080,1055,1028,1029,1043,1032,994,960,
+944,921,872,814,777,754,716,655,591,544,506,467,430,403,383,359,327,285,231,164,
+90,16,-54,-122,-188,-248,-302,-353,-397,-434,-474,-525,-585,-645,-704,-767,-841,-923,-1007,-1083,
+-1150,-1210,-1281,-1374,-1478,-1564,-1621,-1673,-1743,-1828,-1906,-1974,-2053,-2150,-2246,-2325,-2397,-2484,-2589,-2699,
+-2804,-2907,-3012,-3118,-3223,-3328,-3430,-3529,-3630,-3735,-3832,-3904,-3952,-3989,-4031,-4076,-4117,-4154,-4191,-4228,
+-4265,-4302,-4341,-4379,-4413,-4445,-4475,-4499,-4513,-4517,-4516,-4508,-4484,-4445,-4404,-4369,-4333,-4279,-4202,-4108,
+-4013,-3931,-3861,-3791,-3709,-3618,-3532,-3460,-3391,-3309,-3210,-3102,-2993,-2878,-2753,-2621,-2492,-2370,-2249,-2127,
+-2009,-1906,-1819,-1737,-1652,-1577,-1524,-1485,-1427,-1334,-1227,-1138,-1054,-930,-757,-598,-541,-601,-696,-737,
+-716,-691,-689,-659,-551,-403,-317,-332,-379,-368,-300,-259,-290,-348,-361,-327,-290,-273,-253,-216,
+-195,-226,-295,-347,-355,-349,-378,-458,-565,-672,-769,-865,-967,-1076,-1189,-1302,-1417,-1545,-1699,-1877,
+-2065,-2241,-2391,-2511,-2610,-2708,-2824,-2957,-3082,-3178,-3262,-3368,-3503,-3634,-3727,-3793,-3872,-3976,-4066,-4096,
+-4074,-4047,-4048,-4048,-4014,-4004,-4167,-4589,-5145,-5540,-5561,-5270,-4926,-4725,-4666,-4644,-4614,-4604,-4625,-4634,
+-4593,-4514,-4424,-4336,-4247,-4159,-4069,-3962,-3826,-3677,-3536,-3406,-3269,-3115,-2953,-2795,-2649,-2524,-2424,-2343,
+-2268,-2198,-2135,-2076,-2004,-1915,-1821,-1728,-1631,-1525,-1413,-1300,-1181,-1051,-906,-755,-608,-473,-350,-228,
+-95,44,176,302,441,599,755,881,983,1085,1197,1312,1438,1580,1720,1831,1931,2074,2272,2458,
+2575,2653,2748,2831,2805,2644,2459,2383,2429,2504,2541,2553,2595,2695,2847,3012,3130,3165,3152,3181,
+3288,3393,3380,3222,3013,2866,2819,2837,2872,2901,2917,2917,2903,2890,2890,2910,2939,2965,2989,3024,
+3076,3130,3159,3143,3086,3001,2902,2802,2712,2635,2503,2428,2387,2390,2414,2402,2327,2225,2159,2149,
+2155,2135,2096,2068,2061,2057,2035,2001,1968,1941,1906,1838,1732,1605,1485,1389,1312,1247,1196,1163,
+1143,1123,1093,1051,994,929,871,839,837,853,869,870,859,852,865,887,886,845,786,742,
+709,659,580,497,432,375,314,263,241,242,246,245,239,221,185,147,134,134,106,38,
+-32,-74,-99,-130,-154,-148,-128,-145,-224,-344,-463,-553,-608,-642,-675,-691,-628,-456,-267,-237,
+-455,-831,-1192,-1451,-1616,-1707,-1716,-1676,-1671,-1751,-1882,-2008,-2127,-2270,-2441,-2600,-2720,-2811,-2901,-3012,
+-3153,-3316,-3481,-3644,-3836,-4078,-4348,-4608,-4864,-5144,-5414,-5589,-5631,-5619,-5663,-5791,-5952,-6101,-6241,-6384,
+-6527,-6666,-6818,-6992,-7176,-7350,-7500,-7617,-7705,-7792,-7909,-8053,-8175,-8230,-8226,-8215,-8238,-8294,-8346,-8359,
+-8329,-8293,-8295,-8342,-8405,-8463,-8521,-8576,-8581,-8491,-8340,-8236,-8253,-8357,-8444,-8451,-8404,-8359,-8328,-8270,
+-8150,-7981,-7806,-7641,-7471,-7286,-7100,-6918,-6722,-6504,-6289,-6112,-5986,-5918,-5925,-5986,-5988,-5805,-5445,-5058,
+-4779,-4595,-4417,-4223,-4056,-3923,-3778,-3608,-3461,-3362,-3263,-3123,-2979,-2885,-2832,-2760,-2647,-2515,-2372,-2199,
+-1984,-1728,-1426,-1091,-799,-632,-583,-549,-458,-337,-223,-79,144,403,596,715,864,1116,1421,1690,
+1904,2105,2309,2509,2713,2927,3106,3200,3263,3436,3782,4170,4391,4363,4188,4035,4001,4087,4231,4368,
+4463,4527,4597,4679,4743,4770,4781,4801,4830,4852,4869,4892,4911,4914,4910,4917,4936,4952,4966,4994,
+5032,5057,5064,5086,5140,5205,5251,5272,5281,5286,5295,5321,5355,5373,5379,5420,5512,5599,5622,5608,
+5599,5510,5172,4577,3994,3749,3897,4204,4409,4443,4384,4307,4234,4163,4087,3981,3841,3709,3637,3615,
+3576,3474,3326,3187,3096,3053,3024,2976,2908,2855,2835,2811,2732,2606,2503,2464,2448,2399,2321,2262,
+2239,2209,2134,2034,1950,1897,1853,1798,1737,1682,1635,1584,1522,1455,1397,1347,1298,1245,1203,1186,
+1185,1179,1157,1130,1107,1073,1013,938,881,858,853,840,817,805,813,827,828,816,809,816,
+831,844,857,878,903,927,952,978,991,981,959,960,1000,1049,1074,1070,1061,1058,1044,1014,
+981,957,933,892,841,797,767,737,694,638,574,505,442,400,381,369,344,300,245,188,
+128,62,-6,-73,-135,-192,-246,-298,-344,-381,-413,-448,-493,-547,-607,-674,-745,-817,-884,-952,
+-1021,-1089,-1153,-1225,-1316,-1412,-1485,-1532,-1578,-1648,-1733,-1807,-1870,-1945,-2040,-2141,-2230,-2313,-2406,-2511,
+-2619,-2726,-2835,-2949,-3064,-3179,-3292,-3399,-3498,-3595,-3693,-3786,-3861,-3914,-3954,-3992,-4032,-4073,-4112,-4149,
+-4188,-4231,-4281,-4327,-4361,-4387,-4417,-4454,-4480,-4488,-4487,-4488,-4484,-4463,-4425,-4385,-4348,-4303,-4240,-4161,
+-4074,-3984,-3897,-3818,-3746,-3670,-3586,-3502,-3424,-3347,-3261,-3167,-3073,-2979,-2874,-2752,-2619,-2486,-2359,-2238,
+-2119,-1999,-1880,-1766,-1660,-1562,-1464,-1372,-1293,-1233,-1186,-1149,-1125,-1106,-1065,-976,-857,-765,-737,-746,
+-744,-725,-714,-703,-626,-443,-225,-97,-104,-161,-169,-125,-97,-109,-102,-33,60,108,92,50,
+14,-24,-86,-156,-202,-212,-214,-249,-334,-453,-576,-681,-770,-863,-973,-1101,-1238,-1378,-1521,-1671,
+-1828,-1984,-2125,-2240,-2336,-2434,-2558,-2707,-2853,-2967,-3045,-3119,-3224,-3367,-3523,-3656,-3751,-3823,-3897,-3975,
+-4022,-4009,-3959,-3934,-3959,-3983,-3967,-3997,-4236,-4716,-5219,-5445,-5297,-4966,-4714,-4632,-4639,-4643,-4638,-4645,
+-4651,-4622,-4551,-4457,-4361,-4271,-4191,-4114,-4022,-3898,-3752,-3602,-3460,-3320,-3176,-3023,-2864,-2707,-2571,-2466,
+-2385,-2314,-2250,-2195,-2138,-2061,-1963,-1863,-1774,-1688,-1591,-1485,-1376,-1262,-1137,-998,-853,-712,-580,-458,
+-338,-209,-71,61,189,325,477,626,752,859,968,1085,1205,1334,1485,1638,1756,1835,1922,2056,
+2218,2368,2495,2602,2651,2590,2441,2312,2289,2352,2417,2450,2493,2589,2729,2873,2992,3065,3086,3084,
+3119,3219,3331,3360,3259,3084,2934,2870,2881,2917,2943,2953,2956,2952,2939,2925,2922,2932,2948,2965,
+2999,3057,3117,3138,3100,3017,2915,2807,2699,2596,2503,2411,2342,2302,2300,2316,2303,2237,2151,2102,
+2103,2112,2089,2046,2020,2018,2022,2010,1985,1960,1934,1897,1833,1736,1615,1489,1377,1285,1214,1163,
+1131,1110,1087,1049,994,931,874,835,809,788,770,764,773,787,796,805,817,820,799,755,
+709,664,608,534,455,381,315,258,222,212,210,201,188,184,179,157,124,104,93,60,
+-15,-101,-156,-171,-178,-202,-238,-262,-260,-257,-296,-399,-529,-624,-669,-706,-740,-688,-486,-220,
+-98,-246,-592,-963,-1259,-1468,-1590,-1624,-1624,-1686,-1845,-2033,-2174,-2273,-2382,-2514,-2639,-2739,-2829,-2926,
+-3036,-3161,-3308,-3470,-3641,-3833,-4062,-4321,-4586,-4857,-5140,-5404,-5585,-5662,-5697,-5770,-5904,-6069,-6235,-6395,
+-6540,-6662,-6777,-6916,-7086,-7265,-7431,-7579,-7710,-7823,-7924,-8029,-8143,-8246,-8311,-8333,-8334,-8350,-8403,-8474,
+-8511,-8479,-8408,-8372,-8407,-8484,-8565,-8644,-8716,-8738,-8673,-8558,-8492,-8529,-8616,-8658,-8617,-8537,-8474,-8429,
+-8354,-8219,-8047,-7880,-7725,-7556,-7357,-7149,-6951,-6744,-6513,-6285,-6106,-5996,-5951,-5966,-6017,-6010,-5831,-5482,
+-5100,-4817,-4634,-4467,-4277,-4090,-3914,-3724,-3533,-3394,-3314,-3228,-3083,-2909,-2770,-2676,-2593,-2498,-2390,-2256,
+-2080,-1871,-1642,-1373,-1054,-740,-518,-405,-333,-248,-158,-70,62,278,521,706,838,1012,1274,1571,
+1829,2044,2249,2452,2645,2840,3036,3181,3230,3250,3393,3724,4124,4397,4461,4400,4345,4362,4425,4479,
+4495,4494,4529,4630,4761,4853,4881,4886,4906,4933,4944,4947,4965,4990,4999,4995,5006,5034,5058,5072,
+5092,5123,5142,5144,5161,5214,5281,5320,5328,5331,5340,5354,5373,5398,5426,5455,5498,5559,5611,5637,
+5656,5649,5491,5054,4419,3898,3760,3976,4278,4447,4468,4426,4365,4284,4195,4111,4016,3894,3767,3677,
+3629,3584,3510,3402,3281,3176,3109,3072,3031,2972,2928,2924,2915,2832,2683,2552,2493,2463,2402,2326,
+2292,2301,2280,2189,2065,1977,1940,1915,1869,1802,1732,1667,1607,1549,1495,1447,1403,1357,1313,1281,
+1269,1269,1261,1237,1206,1172,1123,1049,970,919,909,920,922,905,884,874,876,876,865,850,
+842,849,865,884,901,916,931,953,978,990,968,927,910,952,1033,1097,1110,1089,1067,1054,
+1037,1010,981,954,923,879,826,777,739,710,676,622,544,462,401,370,352,324,280,229,
+179,126,61,-14,-89,-150,-194,-230,-268,-308,-348,-385,-420,-458,-504,-562,-634,-712,-783,-843,
+-898,-958,-1021,-1086,-1157,-1241,-1325,-1391,-1438,-1486,-1556,-1637,-1710,-1775,-1851,-1946,-2050,-2148,-2240,-2336,
+-2438,-2543,-2654,-2773,-2896,-3017,-3134,-3248,-3358,-3459,-3553,-3644,-3730,-3804,-3861,-3901,-3935,-3973,-4019,-4070,
+-4115,-4156,-4203,-4258,-4305,-4331,-4348,-4378,-4422,-4453,-4458,-4453,-4455,-4456,-4439,-4404,-4365,-4325,-4273,-4206,
+-4131,-4054,-3967,-3872,-3785,-3714,-3647,-3569,-3480,-3391,-3308,-3226,-3142,-3055,-2962,-2859,-2747,-2626,-2494,-2353,
+-2215,-2093,-1981,-1864,-1741,-1626,-1521,-1408,-1277,-1151,-1062,-1019,-997,-977,-958,-939,-903,-845,-792,-779,
+-802,-824,-829,-823,-790,-676,-457,-208,-48,-17,-37,-24,15,37,45,100,221,343,387,343,
+258,176,104,38,-18,-59,-88,-114,-153,-221,-324,-440,-545,-635,-735,-865,-1025,-1195,-1359,-1510,
+-1650,-1787,-1921,-2041,-2132,-2204,-2293,-2428,-2600,-2772,-2914,-3027,-3131,-3243,-3374,-3518,-3654,-3750,-3802,-3847,
+-3918,-3986,-3982,-3902,-3836,-3867,-3947,-3957,-3913,-4012,-4406,-4965,-5343,-5330,-5042,-4766,-4659,-4666,-4676,-4660,
+-4648,-4643,-4614,-4544,-4451,-4358,-4278,-4210,-4145,-4066,-3960,-3828,-3684,-3540,-3402,-3264,-3116,-2951,-2779,-2623,
+-2504,-2416,-2344,-2284,-2237,-2184,-2106,-2002,-1900,-1814,-1735,-1645,-1544,-1441,-1334,-1214,-1082,-945,-812,-687,
+-569,-454,-332,-199,-62,71,209,354,496,624,742,862,987,1107,1229,1368,1517,1644,1729,1798,
+1894,2027,2174,2303,2384,2389,2316,2218,2176,2217,2290,2334,2360,2433,2578,2752,2891,2971,3010,3026,
+3037,3070,3146,3244,3300,3262,3143,3013,2939,2932,2953,2968,2977,2990,3003,2998,2975,2955,2952,2960,
+2975,3011,3070,3119,3109,3030,2914,2800,2695,2595,2497,2411,2382,2327,2288,2269,2260,2236,2182,2121,
+2089,2087,2080,2046,2003,1984,1995,2014,2022,2014,1994,1961,1915,1852,1769,1659,1531,1404,1297,1217,
+1159,1119,1091,1061,1016,952,883,831,805,786,753,709,682,692,723,746,752,750,749,740,
+711,663,603,538,468,393,312,234,176,152,148,137,111,94,105,130,135,114,87,64,
+26,-44,-135,-207,-239,-245,-259,-285,-293,-258,-210,-230,-357,-529,-644,-685,-717,-767,-744,-557,
+-279,-115,-198,-479,-815,-1117,-1361,-1532,-1627,-1702,-1841,-2051,-2250,-2371,-2437,-2511,-2611,-2715,-2813,-2914,
+-3021,-3129,-3248,-3392,-3557,-3726,-3897,-4094,-4328,-4592,-4874,-5162,-5420,-5604,-5707,-5777,-5871,-6008,-6176,-6362,
+-6545,-6695,-6802,-6897,-7027,-7196,-7371,-7523,-7657,-7788,-7921,-8050,-8164,-8261,-8341,-8403,-8444,-8462,-8479,-8527,
+-8604,-8652,-8618,-8526,-8456,-8456,-8500,-8556,-8626,-8717,-8788,-8796,-8760,-8749,-8793,-8839,-8823,-8738,-8639,-8568,
+-8516,-8436,-8300,-8126,-7953,-7790,-7615,-7413,-7200,-6988,-6764,-6524,-6303,-6147,-6058,-6008,-5993,-6019,-6021,-5881,
+-5561,-5175,-4869,-4673,-4509,-4315,-4100,-3886,-3675,-3486,-3356,-3279,-3190,-3038,-2847,-2673,-2541,-2437,-2345,-2249,
+-2119,-1942,-1745,-1558,-1357,-1101,-804,-531,-330,-193,-96,-25,48,179,387,619,815,988,1194,1445,
+1699,1927,2149,2385,2616,2822,3011,3180,3282,3282,3254,3347,3638,4038,4380,4571,4649,4705,4779,4833,
+4807,4690,4558,4528,4643,4828,4960,4996,4994,5015,5046,5048,5031,5032,5057,5072,5068,5072,5101,5132,
+5146,5158,5182,5202,5211,5229,5280,5343,5379,5383,5384,5395,5403,5399,5400,5418,5450,5487,5528,5582,
+5652,5712,5666,5375,4805,4157,3756,3768,4049,4320,4437,4442,4410,4344,4233,4113,4022,3950,3866,3772,
+3689,3618,3548,3481,3415,3335,3240,3157,3104,3057,2993,2946,2949,2964,2906,2765,2626,2553,2518,2464,
+2401,2375,2377,2346,2261,2170,2120,2095,2050,1968,1873,1788,1718,1660,1611,1565,1516,1466,1421,1384,
+1360,1350,1348,1341,1316,1274,1221,1154,1076,1003,958,952,969,982,976,954,933,926,928,923,
+904,886,884,898,915,924,928,935,952,977,990,975,938,921,962,1048,1122,1141,1117,1090,
+1081,1075,1051,1013,977,946,905,848,785,734,703,682,649,590,514,443,390,350,310,264,
+219,177,129,63,-17,-96,-153,-185,-204,-229,-268,-313,-354,-388,-418,-455,-507,-575,-651,-722,
+-782,-834,-888,-946,-1011,-1082,-1157,-1229,-1290,-1343,-1401,-1473,-1551,-1625,-1697,-1778,-1873,-1976,-2079,-2180,
+-2277,-2373,-2476,-2590,-2715,-2842,-2963,-3079,-3194,-3306,-3408,-3500,-3586,-3665,-3734,-3791,-3835,-3873,-3916,-3970,
+-4030,-4082,-4126,-4175,-4229,-4270,-4286,-4296,-4329,-4380,-4416,-4420,-4413,-4416,-4422,-4409,-4379,-4344,-4303,-4247,
+-4180,-4115,-4048,-3962,-3857,-3759,-3688,-3631,-3561,-3470,-3373,-3286,-3211,-3135,-3045,-2939,-2827,-2723,-2620,-2497,
+-2348,-2198,-2073,-1968,-1853,-1722,-1598,-1491,-1381,-1245,-1104,-1001,-944,-903,-849,-789,-744,-710,-677,-659,
+-683,-751,-825,-873,-891,-871,-771,-574,-336,-151,-56,-4,53,105,127,145,216,342,456,493,
+455,381,304,238,188,146,99,41,-10,-51,-101,-183,-288,-387,-478,-587,-737,-918,-1100,-1266,
+-1414,-1554,-1696,-1841,-1975,-2083,-2177,-2293,-2451,-2632,-2804,-2959,-3105,-3239,-3344,-3424,-3502,-3586,-3649,-3677,
+-3702,-3767,-3842,-3846,-3765,-3707,-3775,-3915,-3966,-3897,-3912,-4221,-4752,-5176,-5243,-5025,-4788,-4692,-4693,-4687,
+-4653,-4626,-4614,-4582,-4515,-4432,-4357,-4293,-4232,-4168,-4096,-4008,-3900,-3776,-3643,-3507,-3369,-3218,-3043,-2854,
+-2679,-2541,-2438,-2361,-2303,-2262,-2216,-2143,-2043,-1942,-1855,-1771,-1677,-1577,-1478,-1377,-1265,-1141,-1016,-894,
+-776,-664,-557,-447,-321,-181,-35,106,244,376,502,625,751,879,999,1114,1237,1373,1505,1612,
+1696,1783,1893,2014,2114,2159,2139,2084,2049,2076,2152,2224,2256,2284,2369,2531,2718,2864,2946,2990,
+3021,3048,3074,3116,3181,3237,3236,3163,3062,2993,2977,2985,2990,2996,3018,3043,3044,3018,2989,2979,
+2985,3004,3043,3098,3126,3082,2967,2832,2717,2625,2538,2453,2382,2414,2365,2321,2279,2244,2210,2171,
+2132,2108,2090,2060,2013,1974,1969,1996,2032,2058,2064,2046,2003,1943,1879,1805,1706,1579,1443,1325,
+1236,1171,1121,1082,1045,996,928,857,806,782,765,726,668,625,628,667,704,710,694,677,
+669,652,609,540,461,389,317,236,154,97,76,70,47,11,-2,25,74,104,98,69,
+33,-8,-67,-147,-234,-300,-330,-332,-318,-280,-214,-167,-215,-378,-569,-678,-701,-728,-792,-806,
+-681,-474,-351,-416,-630,-898,-1166,-1412,-1608,-1746,-1873,-2044,-2247,-2412,-2506,-2567,-2644,-2745,-2853,-2965,
+-3085,-3203,-3310,-3424,-3565,-3723,-3870,-4008,-4171,-4382,-4636,-4915,-5196,-5446,-5632,-5754,-5852,-5965,-6108,-6278,
+-6470,-6662,-6817,-6922,-7013,-7140,-7307,-7477,-7618,-7735,-7856,-7999,-8152,-8286,-8382,-8446,-8504,-8557,-8589,-8605,
+-8637,-8700,-8745,-8715,-8622,-8535,-8494,-8482,-8485,-8531,-8635,-8755,-8834,-8873,-8912,-8960,-8974,-8921,-8821,-8719,
+-8644,-8586,-8509,-8387,-8220,-8035,-7853,-7666,-7464,-7251,-7027,-6786,-6537,-6332,-6209,-6138,-6067,-6003,-6000,-6027,
+-5948,-5672,-5279,-4932,-4698,-4507,-4284,-4035,-3803,-3607,-3447,-3327,-3235,-3132,-2985,-2808,-2633,-2479,-2350,-2242,
+-2138,-2004,-1824,-1632,-1467,-1317,-1126,-866,-570,-302,-106,10,79,159,298,496,711,918,1131,1367,
+1604,1819,2028,2267,2532,2780,2984,3158,3310,3403,3402,3357,3394,3607,3968,4348,4635,4810,4933,5045,
+5115,5063,4866,4630,4529,4646,4884,5067,5115,5100,5114,5153,5161,5130,5114,5133,5150,5139,5127,5147,
+5184,5206,5215,5234,5261,5283,5306,5349,5403,5435,5434,5425,5423,5417,5397,5383,5401,5445,5493,5538,
+5598,5672,5692,5524,5072,4421,3857,3658,3847,4179,4399,4452,4433,4399,4321,4189,4060,3974,3913,3846,
+3774,3702,3612,3509,3428,3389,3349,3273,3187,3131,3090,3027,2965,2957,2988,2970,2867,2743,2669,2639,
+2607,2562,2522,2476,2402,2321,2280,2277,2252,2163,2036,1923,1846,1793,1749,1707,1659,1598,1538,1493,
+1465,1446,1432,1427,1418,1388,1331,1258,1183,1112,1051,1006,988,994,1009,1016,1004,986,977,981,
+980,962,938,928,938,952,958,958,961,972,988,999,996,982,980,1016,1086,1148,1168,1151,
+1130,1123,1116,1090,1047,1002,963,920,869,811,759,721,694,667,627,571,506,442,384,330,
+279,232,189,140,78,4,-66,-118,-149,-168,-194,-233,-277,-316,-343,-368,-400,-446,-504,-570,
+-638,-702,-759,-811,-868,-937,-1012,-1083,-1145,-1201,-1261,-1330,-1406,-1484,-1562,-1641,-1723,-1813,-1913,-2019,
+-2126,-2224,-2317,-2416,-2530,-2654,-2778,-2898,-3018,-3137,-3250,-3351,-3441,-3523,-3595,-3657,-3712,-3764,-3815,-3867,
+-3923,-3980,-4032,-4082,-4136,-4191,-4227,-4238,-4248,-4284,-4337,-4372,-4373,-4366,-4371,-4380,-4371,-4346,-4316,-4277,
+-4219,-4152,-4094,-4037,-3955,-3844,-3735,-3658,-3604,-3540,-3452,-3352,-3264,-3193,-3122,-3029,-2910,-2788,-2685,-2594,
+-2481,-2335,-2187,-2068,-1968,-1850,-1706,-1568,-1456,-1351,-1227,-1097,-993,-924,-861,-781,-699,-637,-594,-554,
+-526,-539,-604,-691,-768,-825,-850,-809,-675,-480,-295,-159,-57,31,94,121,148,222,339,447,
+504,508,475,420,363,320,288,240,175,116,74,23,-65,-177,-279,-371,-487,-640,-807,-964,
+-1109,-1261,-1429,-1615,-1803,-1973,-2115,-2251,-2410,-2590,-2761,-2906,-3051,-3218,-3378,-3483,-3527,-3552,-3593,-3632,
+-3647,-3656,-3687,-3713,-3681,-3603,-3588,-3712,-3890,-3955,-3883,-3868,-4111,-4554,-4916,-4991,-4850,-4706,-4667,-4676,
+-4653,-4605,-4575,-4560,-4526,-4466,-4405,-4358,-4313,-4255,-4190,-4124,-4053,-3968,-3863,-3740,-3602,-3455,-3293,-3111,
+-2918,-2736,-2587,-2474,-2391,-2333,-2293,-2251,-2183,-2089,-1987,-1892,-1797,-1696,-1596,-1502,-1409,-1305,-1193,-1081,
+-970,-856,-745,-641,-538,-418,-274,-121,23,153,275,395,516,638,764,888,1007,1124,1247,1373,
+1490,1590,1679,1771,1864,1933,1958,1946,1930,1945,2000,2074,2135,2173,2208,2283,2420,2596,2764,2892,
+2982,3047,3092,3116,3134,3162,3193,3191,3138,3062,3015,3014,3032,3042,3051,3072,3095,3090,3051,3008,
+2987,2991,3013,3055,3105,3118,3057,2933,2801,2701,2625,2550,2476,2414,2467,2417,2364,2307,2255,2217,
+2188,2164,2140,2109,2064,2013,1982,1991,2030,2078,2115,2131,2114,2062,1988,1911,1833,1737,1614,1479,
+1356,1263,1193,1138,1090,1044,991,923,851,793,760,734,689,623,568,562,606,661,682,660,
+624,605,594,557,480,387,308,242,170,96,44,25,14,-14,-48,-52,-16,34,69,72,
+44,-2,-51,-97,-159,-251,-347,-403,-397,-347,-279,-216,-203,-290,-470,-645,-726,-733,-759,-832,
+-876,-826,-732,-706,-793,-955,-1146,-1357,-1574,-1762,-1906,-2042,-2203,-2366,-2493,-2586,-2682,-2798,-2915,-3028,
+-3153,-3293,-3423,-3533,-3644,-3774,-3907,-4021,-4135,-4291,-4504,-4753,-5012,-5265,-5494,-5674,-5809,-5929,-6063,-6217,
+-6388,-6573,-6758,-6912,-7025,-7125,-7252,-7410,-7570,-7705,-7815,-7930,-8073,-8237,-8384,-8481,-8538,-8592,-8655,-8697,
+-8708,-8720,-8758,-8790,-8762,-8680,-8594,-8533,-8487,-8462,-8500,-8611,-8747,-8849,-8916,-8975,-9023,-9025,-8969,-8881,
+-8791,-8714,-8649,-8579,-8477,-8325,-8136,-7935,-7730,-7517,-7294,-7060,-6804,-6545,-6347,-6249,-6199,-6119,-6016,-5979,
+-6011,-5972,-5733,-5345,-4977,-4714,-4492,-4232,-3949,-3712,-3541,-3407,-3282,-3163,-3044,-2913,-2769,-2613,-2451,-2296,
+-2160,-2039,-1901,-1726,-1535,-1366,-1224,-1062,-833,-539,-245,-21,106,185,284,439,626,819,1023,1260,
+1514,1749,1956,2172,2421,2681,2905,3083,3243,3406,3543,3609,3605,3612,3739,4022,4386,4704,4910,5039,
+5156,5246,5219,5019,4743,4591,4686,4948,5173,5241,5216,5214,5256,5274,5241,5210,5219,5236,5219,5192,
+5204,5250,5284,5293,5307,5340,5374,5396,5424,5466,5494,5486,5457,5431,5412,5392,5389,5431,5513,5594,
+5640,5645,5603,5456,5118,4579,4004,3666,3724,4063,4395,4535,4522,4476,4430,4342,4216,4109,4040,3972,
+3887,3809,3739,3639,3511,3420,3398,3383,3313,3223,3179,3170,3126,3044,2995,3006,3011,2949,2852,2785,
+2759,2743,2713,2656,2559,2433,2336,2318,2338,2308,2197,2063,1972,1926,1892,1851,1804,1746,1677,1616,
+1579,1557,1534,1509,1492,1477,1441,1373,1294,1225,1169,1115,1061,1022,1009,1018,1031,1034,1027,1025,
+1031,1029,1009,981,967,973,989,1001,1010,1019,1026,1030,1031,1032,1035,1048,1080,1128,1172,1192,
+1188,1174,1160,1142,1115,1081,1040,994,946,899,859,821,781,742,705,667,621,565,502,441,
+384,331,282,235,185,127,66,7,-43,-84,-119,-154,-191,-228,-259,-284,-310,-345,-389,-438,
+-493,-556,-625,-688,-741,-800,-874,-957,-1029,-1084,-1136,-1201,-1277,-1356,-1434,-1517,-1602,-1686,-1769,-1863,
+-1969,-2078,-2177,-2267,-2361,-2470,-2588,-2706,-2825,-2950,-3075,-3189,-3286,-3374,-3455,-3523,-3579,-3633,-3696,-3764,
+-3823,-3871,-3915,-3962,-4019,-4083,-4143,-4180,-4194,-4210,-4249,-4298,-4325,-4323,-4317,-4325,-4334,-4327,-4305,-4278,
+-4239,-4181,-4115,-4061,-4011,-3936,-3828,-3715,-3626,-3561,-3495,-3411,-3316,-3229,-3157,-3088,-2999,-2882,-2761,-2658,
+-2567,-2457,-2319,-2181,-2069,-1969,-1848,-1700,-1557,-1437,-1326,-1203,-1079,-974,-890,-811,-729,-661,-620,-591,
+-548,-494,-458,-465,-508,-570,-639,-698,-714,-653,-532,-402,-296,-206,-123,-58,-17,26,112,243,
+384,500,568,576,527,456,405,377,344,296,249,203,130,17,-107,-212,-311,-435,-581,-715,
+-830,-957,-1132,-1361,-1614,-1855,-2049,-2195,-2323,-2469,-2625,-2762,-2881,-3027,-3219,-3413,-3547,-3621,-3684,-3762,
+-3831,-3865,-3863,-3834,-3760,-3639,-3539,-3561,-3719,-3887,-3924,-3856,-3870,-4101,-4453,-4698,-4720,-4622,-4568,-4594,
+-4617,-4586,-4535,-4509,-4493,-4455,-4402,-4365,-4346,-4319,-4270,-4214,-4162,-4107,-4035,-3938,-3815,-3671,-3511,-3340,
+-3160,-2978,-2807,-2660,-2544,-2456,-2393,-2346,-2296,-2224,-2129,-2024,-1920,-1819,-1720,-1628,-1542,-1452,-1354,-1253,
+-1154,-1052,-941,-826,-716,-609,-488,-344,-191,-49,75,190,306,424,543,668,798,926,1046,1158,
+1270,1379,1475,1560,1641,1715,1767,1789,1801,1828,1877,1934,1988,2039,2086,2125,2171,2260,2414,2612,
+2801,2948,3048,3111,3143,3153,3157,3156,3135,3087,3036,3021,3048,3087,3113,3131,3153,3166,3144,3086,
+3022,2986,2983,3005,3043,3081,3084,3023,2913,2801,2718,2655,2591,2525,2467,2491,2438,2381,2320,2266,
+2227,2202,2185,2167,2140,2103,2066,2051,2070,2115,2164,2203,2221,2206,2151,2062,1962,1864,1763,1644,
+1514,1391,1296,1227,1172,1119,1065,1006,938,864,797,747,706,654,584,518,496,534,600,639,
+622,575,544,533,499,418,314,230,172,114,52,8,-9,-23,-47,-64,-52,-19,11,31,
+36,14,-37,-92,-131,-175,-258,-361,-421,-404,-344,-291,-271,-305,-416,-586,-732,-788,-788,-816,
+-891,-947,-949,-947,-1004,-1117,-1242,-1375,-1540,-1729,-1898,-2036,-2171,-2319,-2459,-2576,-2697,-2843,-2989,-3103,
+-3203,-3331,-3488,-3634,-3752,-3864,-3984,-4091,-4178,-4287,-4465,-4704,-4955,-5183,-5390,-5582,-5747,-5886,-6020,-6169,
+-6334,-6507,-6683,-6855,-7007,-7133,-7249,-7375,-7517,-7662,-7795,-7912,-8031,-8174,-8338,-8485,-8577,-8628,-8681,-8750,
+-8801,-8813,-8814,-8832,-8844,-8809,-8730,-8653,-8600,-8564,-8560,-8617,-8729,-8840,-8910,-8961,-9019,-9068,-9071,-9025,
+-8954,-8872,-8788,-8712,-8646,-8561,-8425,-8240,-8030,-7805,-7567,-7326,-7084,-6827,-6563,-6360,-6270,-6246,-6182,-6063,
+-5979,-5966,-5908,-5679,-5315,-4970,-4718,-4490,-4209,-3906,-3663,-3499,-3363,-3217,-3068,-2938,-2824,-2704,-2561,-2392,
+-2214,-2050,-1909,-1773,-1616,-1437,-1262,-1102,-933,-712,-428,-138,81,208,297,421,594,778,955,1152,
+1391,1648,1888,2115,2350,2593,2814,2996,3156,3324,3514,3710,3865,3944,3976,4054,4263,4575,4875,5071,
+5180,5273,5362,5368,5219,4964,4772,4792,5006,5243,5354,5348,5336,5367,5387,5355,5311,5309,5326,5314,
+5283,5290,5340,5381,5387,5392,5425,5463,5479,5492,5525,5557,5550,5502,5445,5400,5363,5348,5388,5488,
+5590,5612,5512,5290,4959,4532,4080,3757,3726,3997,4379,4630,4671,4602,4534,4469,4367,4252,4177,4128,
+4049,3942,3857,3795,3701,3574,3496,3496,3490,3401,3283,3243,3269,3252,3152,3048,3013,3014,2986,2923,
+2865,2829,2802,2771,2718,2617,2478,2367,2337,2348,2314,2217,2117,2066,2044,2007,1950,1887,1822,1756,
+1705,1678,1657,1618,1567,1530,1503,1460,1395,1328,1276,1232,1176,1112,1058,1030,1028,1038,1049,1056,
+1064,1071,1068,1047,1019,1001,1004,1019,1038,1059,1078,1089,1087,1079,1074,1081,1099,1127,1160,1190,
+1210,1217,1207,1185,1158,1136,1118,1091,1044,987,939,907,879,844,802,761,721,674,617,555,
+495,442,395,353,311,262,206,150,97,45,-7,-57,-97,-129,-159,-190,-221,-255,-298,-345,
+-389,-436,-495,-566,-633,-688,-747,-825,-912,-984,-1035,-1086,-1155,-1236,-1316,-1394,-1480,-1571,-1659,-1741,
+-1830,-1935,-2042,-2136,-2220,-2309,-2410,-2520,-2632,-2749,-2875,-3001,-3113,-3209,-3298,-3381,-3450,-3505,-3562,-3637,
+-3718,-3782,-3821,-3851,-3893,-3955,-4025,-4088,-4129,-4152,-4176,-4213,-4253,-4273,-4273,-4272,-4282,-4289,-4280,-4258,
+-4231,-4194,-4139,-4078,-4026,-3978,-3910,-3813,-3703,-3604,-3520,-3442,-3361,-3275,-3191,-3116,-3045,-2964,-2861,-2750,
+-2651,-2558,-2449,-2318,-2187,-2074,-1966,-1841,-1703,-1571,-1448,-1325,-1193,-1064,-950,-851,-762,-687,-642,-627,
+-619,-591,-531,-460,-408,-388,-399,-434,-481,-513,-508,-474,-442,-418,-384,-327,-265,-219,-171,-77,
+78,275,469,608,656,616,541,485,460,435,395,348,290,202,88,-20,-111,-215,-355,-500,
+-610,-699,-830,-1043,-1328,-1639,-1922,-2128,-2245,-2306,-2364,-2440,-2528,-2641,-2807,-3016,-3215,-3370,-3510,-3678,
+-3859,-4000,-4073,-4081,-4016,-3862,-3663,-3540,-3589,-3761,-3895,-3896,-3856,-3953,-4232,-4535,-4668,-4607,-4502,-4487,
+-4543,-4570,-4536,-4488,-4463,-4442,-4399,-4354,-4336,-4334,-4317,-4280,-4242,-4211,-4169,-4101,-4004,-3883,-3739,-3576,
+-3404,-3233,-3068,-2909,-2762,-2635,-2534,-2458,-2396,-2330,-2247,-2149,-2044,-1941,-1846,-1759,-1678,-1595,-1501,-1400,
+-1303,-1213,-1122,-1018,-904,-788,-671,-544,-403,-256,-118,3,117,233,351,473,600,735,867,985,
+1090,1189,1285,1373,1451,1526,1595,1641,1664,1691,1746,1818,1878,1920,1963,2012,2045,2063,2114,2253,
+2472,2702,2884,3006,3084,3129,3145,3139,3122,3095,3064,3046,3056,3091,3129,3158,3183,3209,3220,3190,
+3121,3046,3001,2993,3009,3031,3045,3032,2976,2886,2790,2713,2656,2602,2546,2491,2464,2408,2352,2297,
+2249,2214,2195,2186,2182,2178,2171,2165,2171,2199,2240,2279,2305,2316,2303,2251,2154,2033,1913,1802,
+1688,1564,1444,1348,1280,1222,1161,1097,1033,967,892,815,748,694,640,572,501,457,467,517,
+555,543,498,466,454,423,342,237,157,106,59,6,-31,-48,-63,-79,-76,-47,-20,-15,
+-15,-10,-23,-73,-131,-163,-192,-260,-349,-389,-356,-310,-306,-341,-402,-508,-661,-799,-858,-866,
+-900,-976,-1039,-1064,-1098,-1184,-1297,-1401,-1512,-1662,-1836,-1996,-2137,-2288,-2449,-2596,-2730,-2886,-3062,-3209,
+-3298,-3375,-3502,-3671,-3828,-3951,-4067,-4186,-4285,-4363,-4476,-4673,-4930,-5174,-5367,-5529,-5685,-5836,-5977,-6116,
+-6270,-6440,-6616,-6787,-6949,-7101,-7243,-7377,-7505,-7632,-7761,-7893,-8023,-8155,-8303,-8464,-8604,-8690,-8736,-8789,
+-8863,-8925,-8952,-8963,-8975,-8967,-8910,-8826,-8759,-8729,-8728,-8762,-8843,-8938,-8998,-9017,-9046,-9112,-9174,-9184,
+-9138,-9061,-8965,-8859,-8767,-8698,-8620,-8495,-8320,-8113,-7875,-7610,-7348,-7106,-6860,-6598,-6382,-6287,-6283,-6250,
+-6133,-6001,-5908,-5786,-5543,-5212,-4915,-4698,-4480,-4194,-3884,-3637,-3465,-3310,-3138,-2970,-2836,-2728,-2613,-2468,
+-2290,-2096,-1912,-1752,-1615,-1477,-1323,-1155,-983,-797,-568,-292,-18,185,306,407,552,738,925,1100,
+1295,1526,1774,2021,2273,2527,2752,2935,3099,3278,3473,3674,3882,4087,4253,4359,4458,4626,4874,5125,
+5305,5410,5483,5547,5572,5503,5315,5082,4950,5019,5227,5410,5477,5477,5488,5500,5472,5421,5405,5421,
+5419,5393,5392,5433,5470,5472,5473,5503,5540,5549,5551,5583,5625,5622,5554,5456,5353,5238,5128,5078,
+5121,5200,5199,5042,4745,4390,4067,3862,3848,4046,4373,4660,4776,4734,4643,4568,4483,4363,4250,4190,
+4149,4068,3964,3894,3851,3775,3672,3628,3660,3655,3529,3362,3293,3322,3319,3215,3086,3024,3025,3028,
+3006,2964,2903,2830,2773,2740,2693,2604,2508,2459,2442,2398,2315,2241,2204,2174,2117,2042,1973,1912,
+1854,1811,1788,1758,1697,1619,1556,1512,1466,1411,1364,1329,1289,1227,1156,1099,1066,1050,1048,1056,
+1072,1088,1097,1096,1083,1064,1049,1043,1049,1064,1086,1110,1126,1128,1121,1113,1115,1130,1156,1184,
+1210,1230,1242,1240,1220,1192,1171,1157,1134,1089,1031,981,945,915,880,846,816,784,738,678,
+610,545,490,448,419,388,343,284,226,174,123,67,13,-27,-55,-85,-123,-165,-209,-257,
+-307,-352,-397,-452,-520,-588,-645,-704,-780,-863,-931,-981,-1035,-1111,-1196,-1274,-1350,-1437,-1534,-1628,
+-1714,-1805,-1906,-2009,-2100,-2177,-2258,-2351,-2455,-2563,-2676,-2796,-2917,-3027,-3125,-3216,-3301,-3372,-3431,-3496,
+-3580,-3671,-3740,-3777,-3803,-3843,-3902,-3968,-4027,-4070,-4101,-4129,-4160,-4190,-4210,-4219,-4227,-4238,-4241,-4230,
+-4207,-4180,-4144,-4098,-4047,-4000,-3949,-3883,-3797,-3698,-3593,-3491,-3398,-3319,-3244,-3165,-3084,-3007,-2927,-2837,
+-2739,-2647,-2557,-2453,-2331,-2205,-2084,-1963,-1834,-1706,-1586,-1466,-1336,-1201,-1071,-954,-848,-757,-690,-650,
+-633,-625,-605,-558,-489,-417,-358,-318,-298,-294,-299,-311,-336,-380,-423,-429,-388,-337,-313,-303,
+-247,-101,123,370,570,674,683,643,606,574,526,455,379,305,227,150,88,25,-80,-232,
+-378,-481,-575,-726,-960,-1253,-1569,-1868,-2088,-2186,-2180,-2143,-2142,-2201,-2326,-2505,-2688,-2829,-2945,-3112,
+-3359,-3619,-3808,-3913,-3959,-3927,-3779,-3571,-3457,-3537,-3729,-3859,-3868,-3892,-4086,-4427,-4712,-4772,-4645,-4515,
+-4500,-4557,-4584,-4549,-4500,-4468,-4437,-4395,-4362,-4355,-4355,-4336,-4303,-4277,-4257,-4221,-4156,-4069,-3963,-3833,
+-3679,-3515,-3354,-3196,-3033,-2868,-2715,-2590,-2496,-2417,-2336,-2246,-2148,-2050,-1957,-1872,-1795,-1720,-1633,-1530,
+-1420,-1320,-1233,-1148,-1055,-951,-838,-716,-585,-449,-311,-179,-56,57,172,291,418,551,685,810,
+919,1016,1112,1209,1297,1375,1451,1522,1570,1593,1619,1679,1760,1827,1869,1908,1952,1978,1987,2030,
+2168,2389,2623,2809,2939,3032,3097,3129,3132,3124,3120,3126,3139,3152,3159,3159,3164,3184,3215,3231,
+3207,3144,3073,3029,3023,3032,3032,3013,2977,2922,2845,2757,2677,2616,2567,2518,2464,2403,2345,2293,
+2247,2212,2191,2185,2188,2198,2216,2243,2272,2301,2330,2356,2372,2377,2377,2368,2325,2232,2104,1975,
+1863,1756,1640,1525,1433,1361,1289,1207,1126,1057,993,918,831,750,685,633,577,510,449,420,
+429,443,431,397,374,365,334,256,160,90,46,1,-49,-81,-93,-107,-120,-107,-69,-47,
+-60,-73,-67,-75,-125,-184,-209,-225,-284,-362,-385,-343,-319,-357,-414,-452,-518,-662,-832,-932,
+-960,-998,-1084,-1169,-1212,-1246,-1316,-1415,-1518,-1636,-1784,-1943,-2088,-2233,-2407,-2595,-2765,-2924,-3107,-3302,
+-3445,-3518,-3586,-3714,-3882,-4028,-4138,-4249,-4373,-4478,-4559,-4667,-4848,-5082,-5300,-5468,-5610,-5755,-5908,-6057,
+-6201,-6354,-6522,-6697,-6867,-7025,-7177,-7332,-7484,-7619,-7735,-7851,-7981,-8121,-8267,-8422,-8583,-8717,-8798,-8845,
+-8901,-8979,-9054,-9107,-9146,-9169,-9145,-9069,-8981,-8934,-8930,-8954,-9004,-9079,-9138,-9144,-9128,-9160,-9254,-9339,
+-9352,-9292,-9188,-9056,-8917,-8804,-8729,-8652,-8530,-8363,-8165,-7925,-7642,-7360,-7115,-6880,-6623,-6397,-6291,-6294,
+-6284,-6178,-6020,-5870,-5693,-5430,-5120,-4859,-4662,-4441,-4145,-3831,-3584,-3406,-3240,-3059,-2888,-2751,-2635,-2510,
+-2357,-2178,-1981,-1787,-1616,-1473,-1343,-1204,-1046,-874,-683,-454,-188,68,262,391,511,670,858,1042,
+1222,1425,1655,1897,2151,2422,2683,2893,3060,3239,3457,3672,3851,4023,4232,4463,4665,4826,4979,5149,
+5327,5492,5626,5710,5754,5797,5829,5745,5474,5140,4992,5136,5410,5586,5615,5599,5602,5590,5545,5512,
+5515,5519,5499,5487,5511,5545,5556,5562,5591,5623,5629,5628,5655,5691,5673,5579,5435,5256,5026,4767,
+4567,4500,4531,4544,4453,4275,4104,4028,4081,4249,4478,4688,4803,4800,4728,4654,4588,4494,4368,4258,
+4196,4146,4064,3978,3932,3905,3839,3757,3745,3803,3800,3650,3442,3328,3324,3314,3228,3126,3084,3099,
+3127,3142,3123,3042,2911,2806,2781,2799,2783,2726,2671,2628,2561,2463,2372,2314,2266,2204,2137,2084,
+2033,1976,1927,1893,1853,1781,1688,1607,1547,1495,1449,1417,1390,1346,1278,1208,1156,1120,1088,1068,
+1067,1081,1096,1104,1109,1113,1113,1105,1093,1086,1089,1102,1120,1134,1144,1148,1147,1148,1159,1183,
+1213,1241,1264,1283,1292,1284,1259,1227,1195,1159,1115,1071,1032,996,956,915,884,866,845,807,
+749,678,605,541,498,475,454,412,350,288,239,193,140,85,43,13,-19,-62,-111,-160,
+-210,-263,-313,-358,-408,-470,-536,-598,-661,-732,-806,-865,-915,-977,-1060,-1149,-1228,-1303,-1388,-1487,
+-1585,-1676,-1767,-1866,-1967,-2059,-2137,-2212,-2296,-2395,-2501,-2610,-2721,-2834,-2944,-3045,-3136,-3216,-3287,-3353,
+-3426,-3514,-3607,-3682,-3729,-3761,-3799,-3848,-3900,-3952,-3999,-4039,-4068,-4091,-4113,-4135,-4154,-4170,-4181,-4182,
+-4172,-4151,-4124,-4091,-4052,-4012,-3968,-3913,-3845,-3767,-3680,-3577,-3464,-3360,-3281,-3216,-3142,-3055,-2969,-2889,
+-2806,-2717,-2630,-2543,-2446,-2335,-2214,-2091,-1965,-1835,-1710,-1589,-1468,-1341,-1216,-1097,-983,-878,-791,-729,
+-685,-649,-619,-591,-552,-496,-430,-366,-305,-244,-189,-151,-139,-159,-205,-248,-248,-204,-171,-194,
+-255,-274,-189,0,247,483,653,739,760,743,691,593,465,347,261,202,163,133,81,-21,
+-162,-288,-385,-497,-667,-883,-1119,-1373,-1636,-1846,-1932,-1904,-1848,-1850,-1936,-2086,-2252,-2372,-2423,-2470,
+-2614,-2865,-3120,-3292,-3405,-3511,-3571,-3505,-3346,-3260,-3364,-3585,-3755,-3828,-3928,-4180,-4532,-4789,-4816,-4677,
+-4551,-4543,-4609,-4650,-4626,-4571,-4521,-4478,-4441,-4421,-4418,-4410,-4381,-4342,-4312,-4287,-4249,-4196,-4130,-4048,
+-3937,-3796,-3643,-3489,-3330,-3153,-2962,-2781,-2634,-2525,-2436,-2344,-2247,-2149,-2056,-1966,-1880,-1801,-1723,-1633,
+-1526,-1413,-1311,-1220,-1133,-1046,-952,-846,-726,-598,-472,-347,-221,-99,15,127,246,375,509,637,
+751,848,939,1037,1141,1237,1318,1395,1472,1531,1561,1583,1629,1700,1764,1808,1846,1885,1914,1938,
+1998,2140,2346,2559,2733,2867,2978,3068,3130,3167,3194,3229,3269,3297,3291,3248,3196,3169,3178,3204,
+3218,3197,3142,3077,3036,3033,3041,3027,2983,2927,2870,2800,2714,2629,2563,2513,2462,2403,2340,2280,
+2235,2204,2187,2188,2200,2210,2219,2245,2293,2348,2389,2408,2410,2402,2394,2396,2397,2366,2279,2154,
+2030,1927,1831,1725,1622,1537,1460,1366,1253,1148,1068,1002,923,827,734,660,604,553,495,430,
+378,351,343,332,313,301,290,253,178,94,35,-7,-58,-111,-136,-138,-148,-164,-154,-118,
+-102,-120,-134,-125,-135,-195,-257,-272,-279,-343,-438,-475,-444,-433,-475,-497,-464,-471,-618,-844,
+-998,-1041,-1073,-1173,-1297,-1373,-1410,-1465,-1561,-1682,-1814,-1948,-2070,-2180,-2316,-2503,-2711,-2903,-3091,-3311,
+-3540,-3712,-3807,-3886,-4006,-4146,-4256,-4337,-4429,-4544,-4646,-4720,-4803,-4937,-5116,-5301,-5469,-5627,-5789,-5956,
+-6116,-6269,-6422,-6587,-6761,-6932,-7089,-7243,-7405,-7568,-7707,-7817,-7924,-8050,-8197,-8352,-8511,-8669,-8798,-8880,
+-8932,-8990,-9066,-9149,-9230,-9305,-9346,-9318,-9236,-9164,-9147,-9167,-9192,-9224,-9266,-9285,-9257,-9233,-9284,-9403,
+-9501,-9508,-9432,-9303,-9139,-8968,-8838,-8759,-8682,-8557,-8388,-8191,-7949,-7656,-7357,-7099,-6860,-6608,-6387,-6280,
+-6279,-6271,-6180,-6039,-5888,-5691,-5408,-5090,-4828,-4622,-4381,-4066,-3744,-3495,-3320,-3162,-2991,-2825,-2680,-2548,
+-2410,-2258,-2086,-1896,-1704,-1532,-1387,-1249,-1099,-935,-764,-584,-375,-134,107,309,468,619,788,966,
+1141,1329,1548,1789,2036,2296,2572,2830,3031,3197,3394,3627,3837,3990,4137,4350,4623,4892,5102,5240,
+5326,5417,5566,5749,5874,5919,5984,6116,6146,5860,5343,4984,5056,5411,5689,5740,5693,5689,5703,5672,
+5617,5595,5597,5585,5570,5589,5633,5666,5682,5702,5721,5726,5726,5738,5737,5679,5556,5393,5182,4889,
+4539,4241,4097,4101,4160,4203,4235,4305,4435,4600,4747,4838,4862,4834,4779,4722,4667,4602,4511,4406,
+4318,4255,4188,4102,4029,3995,3965,3895,3818,3813,3869,3865,3725,3524,3390,3345,3314,3258,3216,3213,
+3228,3242,3265,3269,3190,3027,2879,2839,2876,2896,2862,2812,2760,2673,2546,2426,2355,2319,2286,2250,
+2214,2168,2103,2037,1986,1937,1866,1776,1691,1621,1562,1516,1487,1458,1407,1336,1270,1223,1182,1137,
+1102,1090,1096,1099,1096,1101,1119,1137,1140,1127,1112,1106,1112,1120,1130,1145,1165,1183,1192,1200,
+1219,1252,1288,1319,1344,1363,1367,1344,1298,1240,1185,1143,1116,1095,1066,1022,975,941,922,901,
+867,814,747,674,606,558,533,510,468,409,352,309,268,216,157,108,74,40,-3,-51,
+-99,-149,-206,-261,-307,-350,-404,-470,-541,-612,-682,-745,-798,-850,-918,-1005,-1095,-1177,-1255,-1341,
+-1438,-1535,-1626,-1714,-1808,-1908,-2008,-2095,-2169,-2246,-2337,-2441,-2546,-2651,-2759,-2870,-2971,-3054,-3125,-3196,
+-3270,-3349,-3433,-3521,-3599,-3658,-3701,-3736,-3772,-3814,-3864,-3920,-3968,-4000,-4018,-4035,-4057,-4079,-4096,-4107,
+-4110,-4104,-4089,-4063,-4030,-3993,-3956,-3913,-3856,-3786,-3713,-3635,-3538,-3423,-3314,-3235,-3175,-3104,-3015,-2925,
+-2847,-2774,-2692,-2605,-2517,-2422,-2315,-2201,-2085,-1968,-1848,-1725,-1598,-1472,-1352,-1242,-1134,-1019,-909,-821,
+-762,-716,-672,-631,-591,-543,-482,-421,-365,-305,-232,-154,-86,-35,-6,2,10,42,93,113,
+58,-46,-123,-110,7,208,448,668,814,872,857,776,635,463,312,211,150,102,50,-17,
+-109,-207,-291,-372,-490,-652,-817,-965,-1119,-1289,-1421,-1459,-1437,-1453,-1561,-1729,-1898,-2025,-2084,-2089,
+-2114,-2240,-2451,-2641,-2759,-2873,-3046,-3212,-3246,-3153,-3095,-3207,-3449,-3675,-3826,-3976,-4211,-4493,-4686,-4703,
+-4599,-4516,-4539,-4633,-4705,-4704,-4649,-4581,-4525,-4490,-4476,-4471,-4457,-4425,-4383,-4342,-4302,-4263,-4226,-4183,
+-4114,-4007,-3871,-3729,-3587,-3432,-3251,-3053,-2869,-2723,-2613,-2517,-2411,-2293,-2178,-2071,-1967,-1866,-1774,-1689,
+-1601,-1502,-1399,-1298,-1201,-1104,-1011,-919,-817,-702,-582,-469,-359,-244,-125,-9,103,221,345,471,
+591,698,792,878,971,1074,1171,1251,1325,1407,1486,1539,1567,1598,1642,1689,1728,1765,1806,1847,
+1892,1973,2116,2306,2501,2669,2808,2932,3046,3147,3232,3303,3367,3419,3439,3402,3319,3236,3195,3199,
+3214,3214,3184,3125,3055,3007,3000,3009,2993,2940,2876,2817,2751,2668,2583,2517,2465,2406,2340,2291,
+2234,2201,2187,2193,2216,2240,2243,2237,2255,2310,2375,2414,2417,2398,2383,2388,2413,2430,2400,2305,
+2176,2059,1969,1884,1787,1695,1620,1542,1433,1297,1172,1078,999,909,806,708,624,551,485,423,
+363,311,280,271,270,265,256,235,188,114,40,-10,-56,-117,-176,-197,-191,-195,-213,-212,
+-186,-176,-192,-196,-177,-189,-258,-322,-322,-316,-397,-537,-621,-616,-600,-608,-569,-464,-429,-588,
+-862,-1051,-1086,-1094,-1193,-1350,-1467,-1528,-1598,-1716,-1862,-1999,-2105,-2180,-2256,-2381,-2573,-2794,-3008,-3234,
+-3504,-3792,-4024,-4166,-4258,-4351,-4444,-4514,-4571,-4639,-4715,-4777,-4822,-4875,-4963,-5095,-5261,-5447,-5638,-5822,
+-5996,-6161,-6322,-6483,-6650,-6827,-7001,-7164,-7321,-7487,-7652,-7788,-7893,-7995,-8123,-8274,-8432,-8590,-8741,-8866,
+-8953,-9013,-9070,-9134,-9210,-9306,-9410,-9472,-9451,-9378,-9333,-9347,-9379,-9388,-9388,-9397,-9391,-9355,-9339,-9401,
+-9519,-9604,-9602,-9528,-9403,-9229,-9038,-8893,-8811,-8735,-8604,-8419,-8205,-7953,-7654,-7344,-7066,-6811,-6564,-6365,
+-6274,-6265,-6244,-6170,-6077,-5969,-5772,-5449,-5083,-4790,-4566,-4312,-3984,-3652,-3399,-3227,-3082,-2929,-2770,-2612,
+-2462,-2320,-2179,-2020,-1837,-1650,-1485,-1340,-1188,-1010,-821,-644,-480,-303,-95,133,356,558,743,917,
+1084,1257,1460,1697,1949,2201,2461,2730,2976,3170,3339,3529,3740,3928,4087,4270,4512,4794,5064,5280,
+5405,5440,5468,5601,5824,5991,6040,6107,6294,6409,6142,5534,5047,5066,5464,5800,5857,5785,5776,5813,
+5789,5709,5659,5659,5661,5658,5687,5752,5806,5820,5810,5806,5813,5821,5812,5761,5659,5534,5408,5248,
+5001,4685,4410,4273,4277,4360,4479,4631,4813,4986,5097,5112,5047,4948,4864,4807,4755,4682,4591,4503,
+4434,4381,4324,4250,4168,4107,4074,4036,3966,3894,3873,3894,3874,3767,3620,3507,3439,3387,3355,3359,
+3370,3343,3294,3281,3292,3239,3089,2934,2872,2881,2875,2831,2789,2750,2665,2526,2408,2371,2391,2402,
+2378,2332,2273,2201,2127,2066,2012,1945,1863,1780,1704,1638,1587,1551,1513,1456,1385,1323,1277,1231,
+1182,1143,1127,1121,1108,1090,1085,1100,1122,1131,1121,1105,1097,1099,1105,1114,1136,1175,1216,1238,
+1245,1257,1290,1335,1376,1407,1430,1440,1423,1375,1309,1246,1202,1177,1156,1127,1086,1045,1011,985,
+957,919,869,807,739,676,626,592,560,519,470,426,389,348,292,229,176,138,103,62,
+15,-32,-84,-142,-197,-241,-279,-329,-398,-479,-560,-631,-689,-740,-795,-865,-949,-1035,-1120,-1207,
+-1300,-1398,-1493,-1581,-1662,-1744,-1839,-1944,-2044,-2125,-2197,-2279,-2376,-2477,-2577,-2683,-2793,-2889,-2963,-3028,
+-3103,-3189,-3271,-3347,-3424,-3502,-3570,-3619,-3653,-3683,-3723,-3777,-3838,-3892,-3926,-3947,-3964,-3981,-3997,-4013,
+-4027,-4036,-4033,-4019,-3996,-3966,-3929,-3890,-3845,-3789,-3720,-3648,-3574,-3484,-3374,-3267,-3189,-3128,-3056,-2964,
+-2873,-2803,-2741,-2670,-2586,-2496,-2398,-2290,-2174,-2064,-1965,-1865,-1753,-1627,-1500,-1387,-1287,-1183,-1062,-940,
+-842,-775,-729,-693,-660,-617,-553,-475,-407,-354,-298,-225,-148,-76,-5,66,128,177,230,286,
+311,276,198,128,104,152,294,518,755,918,973,947,861,714,525,347,218,121,25,-74,
+-160,-226,-281,-336,-409,-507,-619,-716,-797,-879,-946,-948,-893,-888,-1030,-1290,-1537,-1683,-1740,-1760,
+-1786,-1858,-2000,-2174,-2303,-2384,-2512,-2742,-2988,-3108,-3094,-3089,-3223,-3479,-3740,-3935,-4085,-4239,-4394,-4496,
+-4505,-4451,-4418,-4469,-4584,-4684,-4711,-4668,-4599,-4541,-4504,-4485,-4473,-4461,-4441,-4409,-4362,-4311,-4272,-4248,
+-4214,-4138,-4019,-3885,-3758,-3635,-3493,-3326,-3151,-2994,-2871,-2772,-2667,-2535,-2381,-2229,-2091,-1962,-1840,-1731,
+-1639,-1554,-1465,-1373,-1277,-1177,-1072,-971,-876,-776,-665,-552,-449,-351,-247,-133,-16,101,219,331,
+438,545,653,753,838,919,1009,1099,1174,1243,1326,1424,1506,1555,1581,1605,1632,1661,1697,1741,
+1789,1848,1939,2082,2270,2470,2649,2794,2918,3040,3169,3290,3383,3445,3482,3484,3430,3335,3252,3220,
+3229,3239,3226,3188,3125,3044,2977,2952,2953,2934,2881,2817,2758,2694,2614,2537,2478,2426,2362,2291,
+2258,2207,2188,2195,2223,2263,2286,2275,2251,2258,2308,2365,2390,2381,2364,2367,2402,2454,2479,2432,
+2312,2170,2059,1982,1905,1812,1722,1651,1577,1469,1332,1202,1093,991,883,775,679,588,491,395,
+314,255,217,201,208,223,230,219,190,137,66,-1,-49,-98,-167,-232,-258,-251,-250,-269,
+-276,-265,-264,-276,-264,-227,-230,-296,-349,-327,-303,-395,-581,-718,-736,-701,-666,-589,-469,-439,
+-615,-903,-1089,-1103,-1082,-1165,-1327,-1468,-1564,-1670,-1818,-1980,-2112,-2199,-2259,-2335,-2471,-2673,-2905,-3141,
+-3401,-3712,-4047,-4330,-4513,-4611,-4667,-4713,-4764,-4821,-4869,-4886,-4877,-4876,-4913,-4990,-5104,-5263,-5463,-5673,
+-5862,-6027,-6190,-6363,-6540,-6717,-6896,-7073,-7242,-7409,-7580,-7742,-7873,-7975,-8080,-8213,-8367,-8524,-8677,-8821,
+-8946,-9042,-9113,-9170,-9218,-9274,-9365,-9483,-9564,-9559,-9503,-9478,-9506,-9534,-9522,-9495,-9484,-9470,-9437,-9428,
+-9486,-9579,-9637,-9633,-9588,-9499,-9340,-9138,-8973,-8879,-8799,-8658,-8452,-8211,-7942,-7643,-7334,-7042,-6768,-6521,
+-6348,-6276,-6257,-6216,-6156,-6120,-6063,-5862,-5479,-5043,-4709,-4475,-4225,-3900,-3565,-3307,-3132,-2993,-2850,-2692,
+-2525,-2365,-2227,-2104,-1962,-1784,-1595,-1426,-1275,-1109,-911,-704,-519,-360,-203,-16,207,451,683,883,
+1052,1214,1400,1623,1870,2120,2366,2619,2875,3106,3297,3465,3634,3806,3983,4188,4441,4710,4951,5161,
+5353,5492,5535,5550,5670,5903,6087,6131,6170,6347,6494,6283,5703,5197,5178,5554,5894,5959,5890,5885,
+5926,5896,5799,5736,5740,5758,5767,5807,5887,5949,5944,5897,5870,5885,5907,5883,5795,5678,5591,5549,
+5491,5349,5141,4959,4871,4868,4912,4992,5114,5253,5351,5363,5287,5164,5046,4964,4902,4820,4701,4576,
+4489,4445,4410,4358,4291,4229,4184,4151,4112,4061,4011,3978,3952,3905,3827,3741,3662,3584,3514,3487,
+3505,3499,3410,3285,3218,3213,3180,3067,2942,2880,2853,2800,2732,2702,2690,2622,2493,2404,2427,2507,
+2537,2484,2394,2314,2248,2189,2135,2082,2016,1936,1852,1772,1699,1640,1594,1547,1484,1413,1353,1306,
+1262,1217,1182,1166,1155,1134,1107,1086,1082,1090,1096,1090,1074,1061,1060,1069,1083,1114,1167,1226,
+1263,1269,1274,1303,1353,1401,1436,1464,1485,1486,1457,1405,1347,1297,1252,1207,1164,1126,1097,1074,
+1051,1021,982,931,869,805,747,697,651,607,567,534,504,470,424,366,306,255,217,180,
+136,86,33,-20,-75,-125,-164,-201,-252,-327,-418,-507,-579,-636,-688,-749,-819,-893,-970,-1056,
+-1154,-1260,-1364,-1459,-1544,-1618,-1688,-1771,-1875,-1983,-2073,-2146,-2221,-2307,-2399,-2495,-2600,-2708,-2800,-2867,
+-2932,-3016,-3111,-3194,-3262,-3330,-3408,-3481,-3535,-3570,-3604,-3648,-3702,-3758,-3805,-3843,-3874,-3896,-3908,-3914,
+-3927,-3949,-3964,-3960,-3942,-3925,-3906,-3877,-3836,-3789,-3734,-3668,-3595,-3519,-3434,-3333,-3233,-3153,-3088,-3012,
+-2914,-2819,-2749,-2695,-2634,-2560,-2479,-2388,-2279,-2156,-2043,-1951,-1870,-1776,-1662,-1540,-1431,-1333,-1229,-1109,
+-986,-880,-799,-745,-713,-690,-648,-572,-483,-411,-357,-294,-215,-141,-81,-17,61,136,194,247,
+306,358,382,380,364,341,347,441,639,862,1004,1043,1030,986,876,688,479,305,166,36,
+-74,-139,-174,-229,-323,-423,-485,-506,-526,-588,-669,-686,-588,-467,-503,-775,-1147,-1399,-1455,-1415,
+-1408,-1481,-1612,-1771,-1919,-2022,-2109,-2265,-2524,-2806,-2998,-3094,-3200,-3399,-3670,-3927,-4108,-4209,-4258,-4289,
+-4309,-4312,-4298,-4302,-4361,-4470,-4575,-4624,-4610,-4566,-4521,-4483,-4454,-4437,-4435,-4436,-4417,-4370,-4312,-4272,
+-4250,-4210,-4120,-3993,-3869,-3764,-3658,-3526,-3376,-3230,-3107,-3008,-2914,-2798,-2640,-2453,-2266,-2098,-1946,-1807,
+-1687,-1586,-1494,-1404,-1312,-1221,-1123,-1018,-918,-826,-732,-626,-518,-418,-324,-223,-113,2,120,233,
+329,412,503,613,723,811,881,958,1042,1118,1185,1266,1370,1472,1543,1581,1604,1625,1649,1680,
+1720,1767,1827,1920,2066,2265,2486,2686,2837,2953,3070,3203,3323,3394,3420,3429,3424,3382,3305,3242,
+3229,3251,3264,3252,3220,3162,3076,2988,2933,2905,2870,2813,2753,2701,2641,2567,2499,2450,2401,2332,
+2258,2245,2196,2190,2217,2267,2315,2332,2308,2279,2283,2317,2344,2347,2342,2352,2386,2439,2491,2500,
+2429,2290,2147,2050,1990,1920,1824,1727,1650,1574,1473,1349,1223,1101,974,842,726,631,536,422,
+304,210,152,123,120,142,171,186,179,151,103,37,-28,-80,-129,-197,-266,-300,-298,-296,
+-313,-329,-335,-348,-360,-336,-284,-270,-319,-353,-309,-265,-350,-552,-715,-744,-692,-637,-573,-500,
+-513,-694,-953,-1113,-1121,-1100,-1169,-1310,-1449,-1568,-1707,-1872,-2030,-2155,-2253,-2347,-2463,-2627,-2841,-3081,
+-3331,-3603,-3918,-4252,-4547,-4751,-4853,-4886,-4904,-4954,-5027,-5063,-5022,-4943,-4907,-4951,-5046,-5163,-5308,-5494,
+-5693,-5869,-6025,-6195,-6389,-6590,-6778,-6956,-7130,-7304,-7479,-7655,-7817,-7947,-8053,-8166,-8304,-8457,-8608,-8756,
+-8900,-9030,-9137,-9223,-9286,-9323,-9357,-9431,-9550,-9647,-9664,-9626,-9607,-9628,-9640,-9612,-9572,-9548,-9523,-9486,
+-9475,-9519,-9584,-9619,-9624,-9621,-9580,-9447,-9240,-9052,-8933,-8835,-8683,-8463,-8204,-7924,-7630,-7330,-7033,-6740,
+-6484,-6319,-6253,-6216,-6153,-6103,-6111,-6093,-5885,-5454,-4968,-4605,-4363,-4116,-3798,-3472,-3217,-3037,-2887,-2736,
+-2575,-2407,-2247,-2117,-2010,-1886,-1715,-1517,-1325,-1151,-974,-783,-587,-401,-229,-58,129,352,600,835,
+1022,1173,1334,1541,1784,2028,2261,2498,2751,3001,3220,3403,3563,3713,3865,4055,4315,4614,4867,5033,
+5171,5347,5519,5601,5622,5721,5937,6130,6188,6212,6349,6498,6373,5914,5458,5375,5645,5937,6032,6009,
+6015,6040,5999,5908,5860,5875,5897,5904,5939,6019,6077,6056,5988,5954,5982,6013,5979,5877,5777,5750,
+5787,5806,5743,5619,5507,5443,5405,5369,5354,5385,5442,5479,5462,5394,5298,5203,5122,5041,4929,4786,
+4652,4567,4523,4480,4425,4372,4332,4290,4237,4185,4154,4139,4116,4067,4000,3937,3884,3817,3723,3631,
+3595,3604,3577,3457,3297,3196,3164,3120,3027,2938,2898,2863,2786,2711,2698,2711,2655,2533,2461,2510,
+2604,2613,2515,2386,2297,2249,2216,2183,2142,2081,1999,1911,1827,1750,1685,1630,1576,1511,1440,1379,
+1333,1292,1253,1222,1205,1195,1180,1153,1117,1084,1069,1069,1067,1051,1028,1018,1027,1049,1085,1141,
+1205,1248,1256,1257,1281,1328,1377,1415,1454,1496,1527,1526,1493,1444,1388,1327,1263,1208,1170,1149,
+1134,1118,1097,1065,1016,951,886,827,772,715,660,623,603,582,547,496,441,390,347,308,
+268,220,165,106,48,-2,-46,-83,-124,-183,-264,-359,-449,-521,-580,-637,-702,-771,-838,-906,
+-990,-1097,-1214,-1323,-1418,-1502,-1573,-1636,-1709,-1805,-1914,-2012,-2090,-2163,-2240,-2323,-2414,-2517,-2624,-2713,
+-2778,-2844,-2931,-3027,-3108,-3173,-3242,-3322,-3397,-3453,-3495,-3538,-3586,-3633,-3672,-3709,-3751,-3796,-3828,-3833,
+-3827,-3837,-3866,-3886,-3876,-3854,-3847,-3848,-3832,-3792,-3742,-3689,-3626,-3552,-3474,-3392,-3300,-3202,-3117,-3046,
+-2967,-2867,-2767,-2689,-2630,-2573,-2512,-2451,-2380,-2279,-2152,-2027,-1931,-1857,-1777,-1675,-1561,-1451,-1348,-1246,
+-1140,-1034,-935,-848,-783,-744,-716,-665,-582,-496,-435,-382,-306,-210,-132,-79,-27,39,104,153,
+203,270,349,423,486,521,515,503,565,728,909,1012,1045,1082,1123,1077,902,669,467,315,
+195,127,122,115,12,-184,-352,-387,-317,-277,-352,-475,-502,-387,-282,-398,-758,-1141,-1306,-1236,
+-1117,-1111,-1223,-1374,-1514,-1634,-1740,-1859,-2039,-2293,-2570,-2813,-3029,-3270,-3548,-3822,-4033,-4153,-4184,-4154,
+-4110,-4094,-4108,-4135,-4171,-4236,-4331,-4425,-4487,-4510,-4506,-4483,-4447,-4411,-4396,-4407,-4424,-4413,-4364,-4302,
+-4257,-4228,-4176,-4081,-3963,-3860,-3774,-3673,-3541,-3393,-3260,-3150,-3055,-2954,-2827,-2660,-2462,-2263,-2080,-1917,
+-1769,-1640,-1527,-1422,-1318,-1221,-1129,-1034,-934,-840,-757,-673,-578,-476,-377,-278,-173,-63,46,154,
+254,334,401,480,588,703,793,861,934,1022,1105,1176,1251,1347,1451,1537,1596,1637,1668,1691,
+1713,1743,1785,1847,1940,2084,2283,2510,2719,2876,2992,3107,3234,3331,3355,3329,3310,3316,3311,3277,
+3247,3258,3293,3312,3305,3280,3228,3139,3033,2945,2881,2818,2752,2701,2662,2612,2546,2487,2446,2398,
+2324,2245,2261,2215,2215,2255,2316,2366,2374,2347,2327,2334,2344,2330,2313,2330,2382,2437,2470,2479,
+2451,2367,2242,2130,2066,2025,1960,1859,1753,1663,1575,1470,1347,1219,1084,934,783,654,553,453,
+338,226,144,98,74,71,91,125,148,149,131,93,31,-42,-103,-153,-213,-278,-319,-323,
+-318,-332,-357,-380,-404,-418,-396,-344,-320,-349,-367,-317,-266,-331,-508,-661,-694,-650,-613,-595,
+-587,-637,-793,-995,-1127,-1160,-1179,-1252,-1366,-1484,-1613,-1771,-1935,-2076,-2198,-2329,-2480,-2644,-2829,-3045,
+-3287,-3542,-3809,-4095,-4391,-4662,-4870,-4987,-5022,-5033,-5080,-5153,-5177,-5101,-4985,-4940,-5004,-5118,-5227,-5341,
+-5490,-5664,-5828,-5989,-6177,-6400,-6624,-6823,-7000,-7172,-7347,-7527,-7705,-7867,-8001,-8116,-8238,-8377,-8524,-8667,
+-8813,-8961,-9096,-9211,-9308,-9383,-9423,-9446,-9503,-9612,-9719,-9760,-9741,-9720,-9721,-9716,-9685,-9648,-9616,-9574,
+-9524,-9502,-9529,-9567,-9583,-9593,-9618,-9613,-9508,-9311,-9110,-8961,-8833,-8666,-8444,-8187,-7910,-7621,-7326,-7023,
+-6713,-6440,-6266,-6189,-6132,-6052,-6003,-6028,-6024,-5818,-5383,-4893,-4522,-4264,-4001,-3685,-3377,-3138,-2953,-2780,
+-2605,-2436,-2274,-2122,-1993,-1889,-1776,-1618,-1412,-1189,-981,-799,-638,-476,-296,-94,111,316,533,766,
+981,1146,1278,1441,1666,1918,2154,2374,2615,2879,3130,3334,3496,3637,3774,3935,4161,4457,4751,4953,
+5060,5169,5347,5530,5612,5616,5685,5886,6116,6249,6316,6435,6574,6538,6227,5829,5635,5729,5938,6080,
+6129,6145,6140,6095,6040,6028,6055,6068,6060,6082,6150,6201,6178,6112,6083,6113,6137,6088,5987,5918,
+5935,6004,6043,6006,5919,5835,5766,5686,5590,5513,5491,5519,5562,5583,5561,5494,5400,5309,5226,5130,
+5010,4888,4796,4733,4680,4632,4595,4553,4474,4361,4266,4233,4246,4247,4204,4137,4081,4033,3958,3842,
+3729,3673,3664,3629,3518,3378,3277,3216,3137,3032,2957,2935,2910,2839,2775,2778,2804,2753,2627,2540,
+2557,2605,2578,2469,2354,2284,2247,2223,2206,2183,2133,2052,1960,1875,1798,1729,1671,1616,1553,1483,
+1422,1378,1341,1305,1273,1254,1248,1242,1218,1168,1106,1064,1056,1061,1047,1017,997,1004,1030,1063,
+1109,1162,1203,1216,1220,1241,1281,1323,1363,1412,1474,1526,1544,1524,1484,1436,1386,1334,1288,1253,
+1229,1208,1191,1175,1151,1108,1047,981,921,859,791,730,693,677,658,620,570,522,480,439,
+398,357,312,257,194,130,76,33,-5,-54,-122,-208,-300,-384,-456,-518,-581,-649,-719,-784,
+-849,-930,-1038,-1158,-1268,-1361,-1440,-1509,-1574,-1645,-1736,-1841,-1941,-2027,-2103,-2177,-2254,-2341,-2444,-2550,
+-2637,-2699,-2761,-2840,-2927,-3004,-3075,-3152,-3235,-3308,-3366,-3417,-3470,-3518,-3555,-3582,-3614,-3661,-3717,-3754,
+-3753,-3735,-3737,-3766,-3788,-3778,-3758,-3761,-3776,-3768,-3724,-3670,-3621,-3567,-3498,-3423,-3345,-3257,-3155,-3061,
+-2984,-2911,-2822,-2726,-2641,-2570,-2507,-2454,-2412,-2361,-2272,-2146,-2015,-1911,-1834,-1759,-1667,-1559,-1446,-1336,
+-1233,-1141,-1057,-975,-894,-828,-781,-737,-670,-584,-510,-463,-413,-326,-220,-134,-78,-25,39,99,
+147,203,280,366,451,535,598,611,602,646,766,886,941,979,1080,1207,1228,1089,879,701,
+572,481,459,512,531,388,105,-132,-180,-91,-44,-138,-284,-327,-246,-212,-402,-772,-1072,-1112,
+-959,-844,-894,-1048,-1189,-1285,-1374,-1488,-1634,-1819,-2047,-2300,-2565,-2853,-3168,-3475,-3716,-3860,-3912,-3893,
+-3838,-3792,-3794,-3845,-3920,-4001,-4089,-4181,-4266,-4337,-4393,-4427,-4422,-4383,-4345,-4340,-4368,-4395,-4387,-4341,
+-4280,-4232,-4194,-4138,-4050,-3950,-3862,-3779,-3674,-3537,-3390,-3256,-3137,-3025,-2910,-2781,-2625,-2443,-2251,-2067,
+-1895,-1740,-1603,-1480,-1361,-1245,-1142,-1049,-953,-850,-754,-675,-600,-516,-424,-331,-232,-120,-6,97,
+191,276,348,410,485,587,698,789,859,936,1031,1124,1199,1270,1353,1448,1539,1617,1679,1721,
+1743,1757,1781,1825,1893,1985,2111,2275,2469,2657,2810,2936,3070,3212,3307,3307,3246,3206,3223,3259,
+3278,3298,3342,3390,3409,3392,3354,3288,3186,3067,2961,2873,2791,2720,2678,2652,2610,2551,2499,2462,
+2415,2340,2261,2314,2274,2274,2310,2365,2402,2397,2369,2364,2382,2376,2334,2310,2356,2441,2491,2475,
+2421,2356,2278,2196,2139,2115,2090,2024,1919,1809,1709,1604,1481,1341,1196,1044,882,725,591,482,
+379,275,188,137,113,92,75,80,107,133,139,126,92,29,-51,-123,-177,-231,-293,-337,
+-344,-336,-345,-373,-404,-426,-438,-424,-390,-370,-385,-396,-363,-328,-373,-501,-621,-667,-666,-676,
+-699,-723,-775,-888,-1034,-1151,-1227,-1299,-1386,-1476,-1574,-1708,-1878,-2038,-2166,-2292,-2454,-2645,-2834,-3021,
+-3229,-3472,-3735,-4001,-4264,-4519,-4754,-4951,-5081,-5137,-5155,-5189,-5240,-5240,-5152,-5036,-5002,-5075,-5184,-5266,
+-5341,-5456,-5613,-5780,-5953,-6158,-6396,-6633,-6841,-7026,-7207,-7392,-7575,-7751,-7911,-8048,-8172,-8301,-8441,-8581,
+-8721,-8868,-9018,-9152,-9263,-9361,-9446,-9499,-9527,-9574,-9669,-9777,-9838,-9836,-9809,-9786,-9765,-9742,-9725,-9706,
+-9666,-9611,-9576,-9573,-9571,-9554,-9552,-9582,-9594,-9515,-9349,-9161,-8993,-8829,-8640,-8422,-8181,-7913,-7623,-7321,
+-7006,-6683,-6397,-6208,-6115,-6043,-5956,-5905,-5921,-5902,-5694,-5280,-4818,-4454,-4175,-3889,-3573,-3288,-3070,-2883,
+-2682,-2479,-2304,-2155,-2014,-1878,-1758,-1642,-1493,-1291,-1050,-818,-633,-498,-367,-190,40,280,498,701,
+911,1107,1262,1394,1563,1794,2046,2278,2501,2751,3018,3254,3432,3569,3693,3832,4025,4296,4608,4865,
+5015,5111,5243,5423,5563,5594,5574,5639,5857,6153,6399,6552,6668,6771,6774,6571,6207,5889,5800,5933,
+6128,6245,6259,6221,6186,6180,6206,6235,6237,6225,6241,6294,6332,6306,6239,6200,6206,6203,6146,6065,
+6029,6063,6120,6142,6114,6063,6010,5947,5859,5753,5669,5640,5673,5738,5789,5781,5705,5596,5512,5469,
+5428,5340,5210,5085,5007,4975,4965,4942,4867,4717,4529,4387,4346,4374,4390,4352,4283,4226,4176,4097,
+3977,3854,3776,3738,3691,3599,3489,3400,3318,3207,3080,2996,2971,2947,2885,2831,2836,2862,2822,2712,
+2612,2569,2543,2488,2421,2378,2347,2300,2249,2222,2208,2166,2084,1990,1907,1832,1761,1701,1651,1595,
+1529,1471,1432,1402,1368,1335,1315,1312,1309,1283,1221,1138,1073,1053,1057,1048,1017,993,999,1025,
+1052,1082,1120,1155,1176,1190,1214,1249,1285,1320,1368,1427,1479,1500,1490,1467,1443,1422,1400,1376,
+1351,1323,1295,1270,1247,1221,1183,1134,1078,1020,952,878,814,775,754,730,691,648,608,569,
+524,477,438,401,353,288,216,152,103,59,4,-69,-155,-240,-316,-386,-453,-520,-590,-661,
+-729,-796,-875,-976,-1092,-1202,-1291,-1364,-1431,-1500,-1577,-1666,-1764,-1861,-1951,-2034,-2111,-2187,-2272,-2374,
+-2478,-2562,-2622,-2676,-2742,-2816,-2893,-2974,-3060,-3141,-3209,-3269,-3331,-3390,-3436,-3467,-3495,-3531,-3581,-3635,
+-3669,-3667,-3642,-3633,-3653,-3675,-3673,-3663,-3671,-3686,-3671,-3620,-3565,-3524,-3483,-3427,-3361,-3291,-3203,-3096,
+-2992,-2913,-2851,-2783,-2705,-2623,-2544,-2471,-2416,-2378,-2334,-2251,-2131,-2003,-1899,-1818,-1742,-1655,-1554,-1442,
+-1327,-1222,-1133,-1058,-985,-914,-853,-803,-747,-672,-590,-528,-486,-432,-343,-241,-159,-96,-29,45,
+108,162,228,308,383,454,534,610,649,662,704,786,851,870,916,1054,1222,1286,1212,1093,
+1000,913,823,796,864,915,800,527,267,162,173,157,49,-72,-101,-55,-77,-277,-575,-763,
+-732,-603,-580,-723,-917,-1042,-1101,-1164,-1269,-1410,-1581,-1788,-2026,-2288,-2572,-2865,-3129,-3316,-3411,-3432,
+-3412,-3388,-3394,-3450,-3546,-3661,-3778,-3890,-3987,-4068,-4148,-4232,-4293,-4297,-4254,-4218,-4229,-4279,-4323,-4331,
+-4301,-4253,-4206,-4164,-4115,-4047,-3962,-3869,-3769,-3653,-3524,-3391,-3258,-3124,-2990,-2866,-2746,-2615,-2460,-2285,
+-2101,-1922,-1758,-1616,-1485,-1354,-1227,-1117,-1019,-915,-800,-693,-608,-533,-454,-372,-291,-200,-88,30,
+134,220,299,372,439,511,603,706,798,873,953,1048,1143,1223,1293,1368,1454,1547,1637,1710,
+1755,1775,1787,1815,1867,1939,2022,2112,2219,2348,2487,2618,2747,2905,3090,3233,3269,3215,3164,3174,
+3230,3296,3369,3450,3512,3522,3482,3411,3313,3190,3064,2961,2875,2792,2721,2681,2657,2618,2561,2515,
+2484,2443,2380,2314,2399,2376,2370,2385,2413,2424,2399,2366,2370,2400,2399,2357,2344,2406,2496,2521,
+2458,2360,2277,2215,2174,2162,2166,2147,2076,1970,1862,1760,1648,1509,1349,1181,1011,847,698,576,
+473,373,279,210,180,169,146,110,93,106,126,128,108,73,14,-64,-140,-199,-254,-317,
+-367,-380,-369,-372,-398,-424,-432,-431,-427,-417,-409,-414,-421,-417,-415,-450,-527,-612,-680,-742,
+-799,-833,-843,-872,-961,-1090,-1219,-1335,-1443,-1535,-1606,-1690,-1830,-2010,-2172,-2298,-2430,-2605,-2806,-2995,
+-3178,-3387,-3635,-3908,-4185,-4451,-4691,-4894,-5057,-5178,-5253,-5291,-5320,-5340,-5313,-5221,-5121,-5096,-5158,-5237,
+-5286,-5335,-5437,-5595,-5769,-5948,-6151,-6383,-6617,-6833,-7036,-7239,-7439,-7626,-7798,-7955,-8097,-8229,-8366,-8509,
+-8650,-8789,-8935,-9084,-9213,-9316,-9406,-9491,-9556,-9597,-9643,-9726,-9827,-9897,-9909,-9878,-9833,-9795,-9781,-9797,
+-9820,-9816,-9777,-9723,-9666,-9598,-9537,-9518,-9548,-9567,-9514,-9388,-9227,-9051,-8853,-8639,-8424,-8198,-7937,-7639,
+-7323,-6998,-6669,-6373,-6165,-6048,-5966,-5888,-5846,-5847,-5794,-5564,-5157,-4713,-4349,-4057,-3763,-3457,-3191,-2984,
+-2791,-2574,-2357,-2182,-2050,-1922,-1779,-1636,-1503,-1358,-1169,-935,-699,-509,-374,-244,-61,181,435,653,
+844,1037,1227,1390,1538,1714,1938,2182,2416,2650,2894,3124,3310,3456,3591,3734,3905,4143,4457,4771,
+4987,5103,5215,5378,5537,5611,5609,5627,5754,6010,6348,6671,6888,6978,6993,6952,6780,6427,6028,5829,
+5938,6194,6361,6364,6306,6293,6330,6368,6382,6381,6384,6409,6446,6457,6407,6314,6234,6193,6164,6122,
+6090,6099,6139,6167,6167,6157,6156,6151,6121,6059,5982,5915,5882,5896,5943,5980,5958,5870,5768,5718,
+5728,5726,5634,5458,5290,5217,5242,5289,5271,5144,4929,4705,4567,4549,4594,4606,4541,4438,4356,4306,
+4251,4159,4042,3938,3861,3787,3691,3585,3489,3393,3275,3146,3053,3007,2967,2904,2846,2833,2845,2828,
+2770,2697,2619,2528,2455,2446,2488,2495,2420,2317,2257,2234,2189,2102,2009,1929,1852,1773,1710,1666,
+1619,1559,1506,1474,1451,1422,1393,1378,1376,1370,1340,1276,1187,1107,1066,1056,1045,1016,994,999,
+1023,1047,1066,1094,1127,1157,1182,1211,1247,1283,1315,1348,1383,1413,1432,1441,1445,1446,1444,1438,
+1426,1411,1395,1377,1352,1318,1279,1241,1206,1167,1115,1046,970,906,863,833,800,761,724,691,
+652,602,551,511,479,437,373,295,220,161,113,56,-19,-104,-180,-246,-313,-385,-458,-528,
+-597,-669,-740,-815,-904,-1013,-1124,-1218,-1290,-1354,-1425,-1506,-1594,-1685,-1776,-1867,-1954,-2035,-2112,-2197,
+-2294,-2393,-2474,-2535,-2587,-2645,-2713,-2791,-2880,-2968,-3042,-3104,-3169,-3241,-3303,-3344,-3375,-3413,-3458,-3500,
+-3537,-3564,-3569,-3552,-3536,-3543,-3562,-3573,-3577,-3585,-3588,-3562,-3511,-3463,-3433,-3403,-3358,-3302,-3239,-3156,
+-3050,-2944,-2863,-2807,-2755,-2695,-2625,-2545,-2465,-2400,-2355,-2306,-2224,-2111,-1995,-1896,-1812,-1732,-1648,-1554,
+-1446,-1332,-1226,-1138,-1063,-990,-920,-857,-799,-738,-669,-605,-554,-506,-439,-352,-266,-198,-132,-55,
+22,86,143,214,291,356,416,493,579,644,686,739,807,852,874,935,1071,1213,1274,1270,
+1280,1303,1260,1141,1060,1098,1179,1153,982,766,604,499,400,289,198,165,171,141,15,-167,
+-295,-315,-308,-395,-588,-781,-890,-933,-979,-1055,-1157,-1296,-1490,-1729,-1978,-2213,-2433,-2630,-2785,-2881,
+-2924,-2943,-2975,-3045,-3150,-3271,-3393,-3513,-3626,-3719,-3797,-3886,-3989,-4067,-4079,-4039,-4015,-4049,-4126,-4202,
+-4245,-4247,-4217,-4171,-4129,-4098,-4060,-3992,-3886,-3759,-3632,-3516,-3402,-3274,-3127,-2981,-2859,-2758,-2655,-2527,
+-2369,-2191,-2010,-1846,-1702,-1564,-1416,-1269,-1141,-1030,-914,-785,-666,-571,-490,-407,-327,-253,-171,-65,
+53,160,249,331,409,477,541,621,718,815,897,975,1061,1152,1235,1308,1380,1463,1561,1659,
+1734,1775,1793,1813,1850,1904,1966,2028,2083,2139,2211,2298,2390,2497,2657,2881,3098,3212,3208,3163,
+3161,3217,3306,3411,3513,3579,3581,3524,3430,3308,3168,3042,2951,2881,2806,2735,2688,2659,2621,2573,
+2536,2511,2480,2438,2399,2500,2499,2491,2480,2474,2457,2412,2366,2365,2399,2413,2393,2392,2449,2514,
+2513,2438,2341,2263,2209,2178,2176,2184,2162,2090,1988,1885,1787,1678,1545,1385,1204,1018,848,710,
+605,516,422,324,247,210,195,166,118,82,81,95,91,66,31,-13,-77,-148,-210,-267,
+-332,-390,-412,-406,-408,-429,-446,-439,-426,-428,-440,-444,-440,-445,-467,-499,-534,-571,-627,-715,
+-824,-901,-909,-876,-887,-992,-1160,-1336,-1491,-1620,-1710,-1768,-1843,-1980,-2160,-2324,-2453,-2587,-2758,-2949,
+-3135,-3328,-3548,-3798,-4063,-4343,-4626,-4876,-5056,-5171,-5256,-5336,-5406,-5449,-5450,-5395,-5298,-5211,-5191,-5233,
+-5282,-5310,-5353,-5459,-5619,-5792,-5964,-6155,-6373,-6599,-6817,-7034,-7255,-7467,-7656,-7825,-7984,-8135,-8280,-8427,
+-8577,-8722,-8859,-8999,-9142,-9271,-9372,-9452,-9527,-9595,-9649,-9703,-9779,-9869,-9941,-9967,-9944,-9891,-9840,-9830,
+-9879,-9956,-10005,-9983,-9889,-9748,-9600,-9502,-9493,-9545,-9581,-9548,-9448,-9305,-9121,-8896,-8660,-8440,-8218,-7959,
+-7657,-7334,-7006,-6675,-6365,-6122,-5961,-5860,-5804,-5798,-5808,-5729,-5465,-5037,-4575,-4194,-3897,-3620,-3337,-3075,
+-2854,-2651,-2436,-2227,-2059,-1936,-1818,-1675,-1518,-1368,-1221,-1049,-839,-616,-417,-253,-95,96,330,571,
+785,975,1162,1350,1525,1688,1867,2076,2303,2536,2771,2986,3149,3265,3391,3565,3775,4008,4294,4633,
+4938,5117,5207,5320,5481,5605,5652,5706,5858,6092,6355,6648,6959,7187,7236,7146,7007,6797,6433,6007,
+5795,5945,6273,6478,6476,6419,6436,6495,6517,6503,6504,6532,6562,6574,6549,6468,6341,6215,6131,6092,
+6087,6118,6178,6227,6232,6212,6211,6239,6263,6259,6232,6194,6145,6095,6066,6067,6076,6052,5985,5913,
+5888,5910,5900,5779,5563,5375,5327,5406,5489,5457,5285,5049,4853,4773,4810,4880,4879,4768,4605,4482,
+4434,4418,4367,4259,4128,4010,3905,3793,3670,3551,3444,3337,3228,3136,3070,3014,2947,2881,2836,2815,
+2808,2811,2801,2735,2612,2517,2533,2621,2648,2549,2402,2308,2265,2211,2127,2043,1968,1881,1786,1716,
+1679,1640,1583,1530,1502,1485,1462,1442,1436,1438,1430,1402,1348,1267,1177,1109,1074,1053,1026,1002,
+1003,1023,1044,1060,1083,1118,1154,1185,1216,1253,1295,1332,1356,1369,1379,1399,1431,1461,1475,1471,
+1458,1445,1441,1447,1452,1438,1395,1340,1296,1273,1250,1205,1137,1062,1000,955,918,877,837,802,
+771,734,685,632,587,550,509,450,371,287,218,165,109,35,-48,-119,-177,-239,-316,-396,
+-465,-531,-603,-676,-746,-824,-924,-1038,-1142,-1220,-1286,-1357,-1439,-1525,-1610,-1696,-1784,-1871,-1952,-2028,
+-2109,-2198,-2289,-2369,-2436,-2495,-2553,-2616,-2693,-2783,-2870,-2937,-2996,-3067,-3148,-3210,-3246,-3279,-3327,-3374,
+-3401,-3416,-3438,-3460,-3461,-3444,-3437,-3451,-3474,-3491,-3498,-3493,-3468,-3431,-3399,-3375,-3345,-3301,-3249,-3192,
+-3120,-3026,-2928,-2845,-2781,-2727,-2675,-2614,-2538,-2453,-2382,-2330,-2275,-2195,-2093,-1990,-1896,-1807,-1720,-1636,
+-1545,-1440,-1328,-1229,-1151,-1082,-1012,-936,-859,-783,-714,-660,-624,-588,-531,-451,-365,-294,-234,-169,
+-94,-24,33,92,164,239,302,364,443,533,608,669,737,815,883,945,1034,1141,1210,1228,
+1266,1379,1494,1487,1352,1227,1226,1313,1366,1316,1184,1022,873,759,662,550,430,360,364,373,
+294,123,-63,-218,-360,-510,-643,-731,-787,-837,-887,-941,-1036,-1205,-1432,-1658,-1844,-2004,-2165,-2328,
+-2464,-2555,-2618,-2691,-2795,-2918,-3035,-3139,-3240,-3336,-3418,-3491,-3580,-3687,-3772,-3794,-3771,-3766,-3821,-3924,
+-4039,-4129,-4173,-4161,-4112,-4069,-4058,-4058,-4020,-3917,-3772,-3632,-3517,-3409,-3278,-3122,-2972,-2859,-2779,-2700,
+-2594,-2454,-2290,-2122,-1967,-1828,-1683,-1515,-1337,-1180,-1050,-921,-782,-651,-545,-454,-363,-275,-197,-115,
+-15,95,199,293,384,466,526,575,641,736,841,930,1003,1078,1162,1247,1322,1393,1476,1581,
+1686,1760,1797,1818,1850,1893,1933,1969,2004,2040,2076,2120,2175,2229,2295,2425,2647,2902,3081,3138,
+3131,3145,3208,3300,3400,3489,3543,3544,3496,3411,3292,3153,3029,2943,2878,2806,2731,2680,2652,2628,
+2602,2579,2559,2532,2508,2500,2581,2600,2597,2570,2537,2498,2440,2384,2367,2390,2410,2408,2414,2453,
+2493,2490,2444,2385,2325,2263,2213,2191,2180,2148,2080,1988,1890,1792,1692,1582,1443,1266,1067,883,
+739,633,539,434,313,207,145,121,97,53,15,12,29,31,11,-14,-43,-90,-154,-216,
+-271,-331,-389,-421,-426,-430,-448,-462,-453,-438,-447,-472,-487,-488,-501,-545,-601,-635,-648,-682,
+-772,-888,-950,-914,-840,-846,-986,-1217,-1457,-1662,-1820,-1920,-1979,-2046,-2168,-2331,-2485,-2613,-2746,-2907,
+-3087,-3277,-3488,-3720,-3956,-4189,-4444,-4732,-4999,-5175,-5251,-5296,-5369,-5464,-5526,-5515,-5438,-5335,-5262,-5252,
+-5288,-5328,-5355,-5405,-5511,-5659,-5816,-5976,-6160,-6374,-6596,-6812,-7031,-7256,-7468,-7652,-7818,-7984,-8152,-8315,
+-8474,-8631,-8777,-8907,-9034,-9171,-9306,-9415,-9492,-9552,-9612,-9675,-9742,-9815,-9891,-9959,-10003,-10010,-9976,-9931,
+-9927,-9999,-10115,-10195,-10165,-10005,-9768,-9549,-9444,-9477,-9578,-9643,-9620,-9523,-9374,-9173,-8929,-8678,-8447,-8218,
+-7958,-7661,-7346,-7022,-6685,-6353,-6060,-5840,-5710,-5677,-5722,-5764,-5683,-5400,-4949,-4456,-4043,-3741,-3493,-3240,
+-2973,-2722,-2502,-2300,-2108,-1942,-1809,-1688,-1547,-1387,-1228,-1077,-917,-733,-533,-329,-130,65,265,474,
+689,899,1096,1283,1464,1640,1813,1994,2185,2389,2609,2834,3021,3133,3207,3339,3573,3863,4158,4471,
+4806,5087,5237,5305,5399,5533,5634,5716,5896,6205,6508,6704,6867,7099,7320,7368,7229,7012,6731,6322,
+5885,5711,5943,6350,6592,6596,6551,6590,6651,6648,6615,6622,6661,6676,6651,6598,6512,6385,6251,6157,
+6123,6143,6209,6293,6345,6337,6300,6285,6299,6313,6311,6306,6299,6269,6211,6152,6121,6117,6111,6078,
+6025,5982,5963,5923,5799,5596,5425,5394,5481,5553,5494,5313,5108,4972,4946,5011,5091,5088,4959,4763,
+4615,4572,4585,4557,4443,4280,4130,4010,3894,3761,3627,3511,3416,3327,3242,3167,3100,3036,2969,2897,
+2829,2796,2821,2865,2842,2725,2609,2605,2686,2714,2613,2456,2344,2288,2233,2166,2103,2032,1927,1812,
+1740,1714,1684,1623,1561,1529,1514,1498,1489,1497,1508,1504,1481,1439,1366,1266,1173,1117,1087,1058,
+1030,1021,1033,1048,1060,1079,1114,1154,1187,1214,1248,1294,1342,1375,1388,1397,1422,1465,1503,1517,
+1509,1495,1489,1496,1514,1531,1521,1473,1409,1362,1344,1330,1291,1223,1150,1091,1048,1010,969,926,
+886,852,818,776,725,670,621,578,529,458,369,287,225,169,98,16,-54,-107,-166,-245,
+-330,-400,-462,-530,-604,-673,-744,-836,-949,-1059,-1147,-1218,-1291,-1373,-1457,-1541,-1624,-1709,-1792,-1868,
+-1939,-2013,-2091,-2171,-2250,-2326,-2395,-2453,-2510,-2579,-2667,-2753,-2821,-2882,-2958,-3042,-3105,-3139,-3173,-3224,
+-3268,-3283,-3286,-3310,-3348,-3364,-3347,-3329,-3338,-3368,-3394,-3404,-3400,-3387,-3372,-3354,-3330,-3290,-3239,-3188,
+-3139,-3080,-3005,-2918,-2831,-2751,-2685,-2633,-2578,-2507,-2423,-2349,-2293,-2237,-2162,-2071,-1979,-1887,-1793,-1703,
+-1617,-1526,-1419,-1310,-1221,-1157,-1102,-1040,-962,-870,-773,-696,-657,-646,-622,-561,-475,-393,-328,-267,
+-201,-134,-75,-18,47,122,192,255,324,406,488,558,625,707,800,899,1009,1126,1204,1206,
+1177,1222,1368,1508,1515,1401,1291,1279,1347,1421,1446,1403,1318,1250,1219,1151,955,680,525,603,
+764,740,440,33,-263,-396,-450,-511,-597,-692,-777,-834,-866,-919,-1038,-1219,-1407,-1562,-1699,-1855,
+-2034,-2199,-2322,-2410,-2495,-2598,-2710,-2814,-2907,-2999,-3088,-3166,-3235,-3315,-3406,-3480,-3508,-3505,-3516,-3577,
+-3688,-3829,-3964,-4052,-4067,-4026,-3985,-3987,-4015,-4011,-3933,-3795,-3647,-3521,-3404,-3267,-3107,-2959,-2854,-2786,
+-2718,-2622,-2494,-2346,-2194,-2055,-1924,-1776,-1593,-1392,-1212,-1064,-926,-777,-629,-503,-397,-298,-201,-108,
+-16,81,180,273,365,459,540,590,623,677,771,880,971,1039,1106,1186,1272,1347,1414,1495,
+1602,1709,1783,1820,1851,1893,1932,1949,1952,1967,1997,2033,2071,2109,2141,2176,2262,2436,2658,2840,
+2938,2995,3071,3171,3264,3337,3393,3429,3435,3412,3358,3267,3147,3028,2937,2861,2780,2702,2656,2644,
+2646,2646,2639,2620,2589,2571,2581,2604,2626,2625,2586,2528,2466,2401,2347,2326,2338,2356,2363,2379,
+2416,2460,2490,2499,2483,2436,2363,2293,2243,2200,2143,2072,1991,1897,1794,1698,1609,1496,1330,1126,
+927,764,628,495,349,193,56,-25,-48,-52,-71,-91,-84,-53,-35,-41,-57,-79,-120,-180,
+-239,-286,-333,-383,-419,-432,-438,-454,-470,-471,-465,-477,-506,-534,-559,-602,-672,-739,-768,-765,
+-781,-852,-944,-978,-920,-841,-852,-1008,-1263,-1543,-1795,-1994,-2124,-2198,-2266,-2373,-2512,-2647,-2769,-2900,
+-3058,-3236,-3429,-3647,-3880,-4097,-4290,-4503,-4770,-5043,-5229,-5300,-5323,-5381,-5473,-5533,-5509,-5418,-5321,-5273,
+-5288,-5338,-5386,-5426,-5484,-5581,-5707,-5840,-5986,-6167,-6381,-6599,-6810,-7024,-7247,-7456,-7634,-7796,-7969,-8152,
+-8333,-8503,-8665,-8811,-8934,-9050,-9181,-9322,-9443,-9522,-9572,-9623,-9691,-9768,-9838,-9897,-9955,-10013,-10057,-10066,
+-10051,-10064,-10149,-10277,-10357,-10298,-10079,-9775,-9522,-9430,-9504,-9644,-9730,-9709,-9601,-9433,-9212,-8955,-8695,-8448,
+-8202,-7937,-7652,-7350,-7029,-6685,-6333,-6003,-5735,-5575,-5553,-5629,-5689,-5611,-5335,-4895,-4396,-3955,-3638,-3414,
+-3194,-2933,-2658,-2420,-2222,-2036,-1857,-1701,-1561,-1412,-1245,-1076,-915,-758,-595,-421,-228,-12,211,419,
+611,804,1007,1207,1390,1561,1734,1919,2107,2288,2467,2663,2874,3058,3177,3270,3431,3703,4033,4352,
+4661,4966,5212,5344,5408,5497,5619,5726,5866,6143,6520,6798,6873,6894,7042,7264,7358,7252,7017,6668,
+6183,5716,5587,5911,6404,6693,6713,6674,6711,6759,6744,6718,6739,6771,6749,6683,6620,6563,6485,6397,
+6331,6302,6307,6346,6404,6441,6426,6382,6351,6344,6341,6339,6346,6354,6338,6288,6227,6184,6168,6167,
+6148,6089,6006,5940,5890,5805,5655,5509,5458,5498,5523,5455,5317,5186,5102,5071,5093,5142,5148,5051,
+4884,4754,4722,4740,4701,4562,4372,4203,4079,3971,3848,3718,3602,3510,3428,3346,3265,3192,3128,3064,
+2981,2877,2795,2788,2843,2862,2783,2667,2624,2665,2682,2600,2463,2355,2293,2245,2200,2155,2081,1956,
+1831,1770,1764,1742,1672,1597,1558,1544,1536,1540,1563,1587,1589,1569,1530,1455,1345,1238,1172,1140,
+1111,1077,1058,1059,1065,1067,1080,1113,1155,1190,1216,1244,1286,1338,1388,1422,1446,1474,1509,1536,
+1544,1547,1560,1581,1599,1609,1609,1589,1542,1483,1440,1422,1408,1370,1306,1237,1180,1138,1104,1066,
+1022,977,937,903,865,812,748,689,648,611,551,462,367,292,234,167,87,15,-39,-96,
+-173,-258,-329,-388,-453,-527,-600,-672,-758,-862,-969,-1061,-1140,-1219,-1303,-1388,-1472,-1556,-1638,-1716,
+-1786,-1852,-1916,-1981,-2051,-2128,-2210,-2285,-2342,-2389,-2448,-2531,-2620,-2698,-2766,-2844,-2927,-2991,-3029,-3063,
+-3108,-3147,-3163,-3173,-3204,-3247,-3265,-3245,-3223,-3230,-3263,-3294,-3308,-3309,-3307,-3303,-3289,-3258,-3211,-3159,
+-3114,-3075,-3029,-2967,-2888,-2798,-2708,-2635,-2584,-2539,-2475,-2394,-2318,-2258,-2198,-2125,-2043,-1958,-1869,-1774,
+-1684,-1600,-1510,-1406,-1303,-1223,-1165,-1115,-1058,-985,-890,-785,-705,-674,-673,-651,-586,-504,-432,-371,
+-304,-236,-178,-126,-62,15,90,150,209,283,366,439,505,582,675,774,882,1009,1135,1201,
+1182,1147,1190,1308,1400,1391,1318,1270,1282,1331,1389,1438,1468,1501,1581,1679,1639,1348,950,776,
+963,1239,1195,727,131,-249,-347,-335,-374,-490,-633,-761,-850,-896,-927,-993,-1114,-1263,-1405,-1539,
+-1684,-1844,-1993,-2113,-2208,-2296,-2391,-2492,-2598,-2707,-2814,-2911,-2993,-3066,-3138,-3207,-3259,-3284,-3289,-3300,
+-3343,-3433,-3571,-3728,-3855,-3918,-3918,-3900,-3902,-3928,-3939,-3893,-3785,-3648,-3517,-3398,-3268,-3118,-2976,-2871,
+-2799,-2727,-2625,-2493,-2347,-2204,-2073,-1948,-1803,-1622,-1420,-1235,-1081,-937,-776,-606,-452,-324,-214,-109,
+-3,102,203,291,369,452,541,617,661,687,733,818,920,1008,1075,1141,1221,1306,1380,1442,
+1515,1610,1710,1784,1831,1875,1924,1953,1945,1926,1930,1960,1993,2019,2044,2070,2098,2154,2262,2404,
+2531,2634,2752,2906,3059,3166,3225,3265,3297,3312,3307,3279,3221,3129,3025,2929,2839,2747,2670,2636,
+2642,2661,2675,2676,2657,2622,2597,2604,2546,2541,2521,2460,2366,2271,2201,2171,2179,2209,2237,2259,
+2293,2352,2432,2514,2572,2581,2533,2459,2390,2329,2251,2155,2064,1986,1897,1791,1693,1612,1511,1351,
+1148,949,771,592,399,199,15,-131,-216,-233,-216,-204,-199,-177,-136,-103,-97,-110,-132,-171,
+-225,-277,-317,-354,-394,-427,-441,-447,-462,-482,-495,-501,-512,-534,-569,-627,-713,-810,-880,-900,
+-888,-889,-929,-983,-1007,-986,-965,-1008,-1145,-1361,-1619,-1884,-2111,-2268,-2364,-2447,-2559,-2689,-2808,-2919,
+-3052,-3217,-3397,-3584,-3791,-4015,-4225,-4401,-4580,-4807,-5059,-5250,-5335,-5357,-5393,-5456,-5491,-5454,-5369,-5299,
+-5289,-5335,-5401,-5458,-5508,-5571,-5662,-5769,-5882,-6015,-6185,-6387,-6592,-6793,-7006,-7233,-7445,-7620,-7778,-7950,
+-8142,-8333,-8511,-8675,-8823,-8949,-9064,-9193,-9336,-9462,-9548,-9600,-9650,-9717,-9794,-9860,-9906,-9950,-10009,-10077,
+-10125,-10147,-10185,-10279,-10407,-10481,-10412,-10187,-9889,-9650,-9570,-9642,-9766,-9832,-9797,-9675,-9491,-9258,-8996,-8727,
+-8461,-8192,-7921,-7647,-7354,-7028,-6676,-6322,-5983,-5694,-5514,-5482,-5544,-5574,-5472,-5220,-4844,-4389,-3940,-3593,
+-3367,-3178,-2941,-2666,-2414,-2202,-2004,-1807,-1630,-1471,-1303,-1113,-920,-742,-581,-432,-287,-120,88,326,
+552,748,935,1130,1320,1492,1655,1835,2035,2236,2416,2579,2749,2943,3141,3311,3465,3661,3931,4246,
+4555,4845,5113,5321,5445,5533,5651,5795,5928,6095,6371,6695,6884,6869,6817,6909,7106,7224,7172,6959,
+6565,6001,5500,5415,5831,6415,6767,6820,6779,6788,6812,6806,6812,6855,6872,6810,6714,6654,6634,6617,
+6591,6565,6536,6499,6473,6476,6484,6464,6425,6397,6395,6406,6423,6439,6443,6422,6379,6328,6276,6233,
+6206,6176,6112,6017,5940,5906,5862,5751,5604,5506,5478,5459,5408,5351,5313,5266,5189,5121,5109,5119,
+5078,4978,4892,4872,4869,4798,4632,4430,4257,4130,4024,3916,3805,3700,3604,3516,3431,3347,3261,3182,
+3115,3041,2936,2822,2762,2785,2824,2794,2701,2630,2621,2617,2557,2454,2363,2301,2256,2218,2172,2084,
+1949,1830,1790,1802,1782,1703,1618,1577,1570,1571,1587,1622,1653,1657,1637,1594,1516,1403,1298,1236,
+1205,1173,1135,1110,1103,1097,1089,1094,1122,1164,1204,1237,1266,1299,1343,1396,1449,1490,1521,1543,
+1554,1562,1583,1628,1677,1702,1694,1671,1642,1606,1563,1527,1503,1480,1442,1387,1326,1272,1229,1193,
+1156,1113,1067,1026,988,942,881,810,748,708,679,630,546,446,362,299,235,160,86,25,
+-32,-103,-183,-253,-311,-372,-445,-523,-601,-684,-779,-876,-968,-1054,-1140,-1227,-1313,-1397,-1480,-1561,
+-1638,-1708,-1769,-1823,-1875,-1936,-2013,-2097,-2173,-2228,-2270,-2322,-2399,-2491,-2579,-2657,-2736,-2817,-2885,-2929,
+-2960,-2992,-3025,-3053,-3084,-3125,-3162,-3171,-3152,-3135,-3145,-3176,-3207,-3223,-3227,-3224,-3216,-3196,-3161,-3115,
+-3071,-3039,-3012,-2975,-2919,-2842,-2753,-2664,-2595,-2552,-2516,-2460,-2384,-2307,-2238,-2169,-2094,-2015,-1936,-1850,
+-1758,-1669,-1586,-1502,-1411,-1326,-1256,-1197,-1136,-1072,-1001,-914,-817,-742,-712,-703,-669,-598,-524,-466,
+-412,-345,-280,-231,-183,-112,-27,42,91,148,227,311,383,456,550,655,750,841,951,1064,
+1130,1137,1144,1202,1278,1298,1255,1215,1229,1275,1319,1359,1410,1486,1620,1831,2028,2005,1677,1275,
+1177,1457,1741,1583,960,272,-108,-174,-161,-239,-393,-553,-688,-798,-869,-903,-944,-1033,-1169,-1314,
+-1444,-1557,-1658,-1749,-1838,-1933,-2034,-2142,-2260,-2397,-2542,-2672,-2773,-2857,-2943,-3030,-3102,-3145,-3161,-3158,
+-3149,-3156,-3207,-3312,-3456,-3602,-3719,-3791,-3821,-3824,-3821,-3817,-3791,-3719,-3609,-3493,-3390,-3284,-3156,-3019,
+-2906,-2822,-2736,-2620,-2475,-2322,-2180,-2051,-1926,-1787,-1618,-1430,-1251,-1095,-946,-779,-595,-419,-270,-146,
+-31,85,201,305,387,457,529,607,674,715,744,786,856,941,1021,1093,1166,1248,1333,1406,
+1466,1524,1596,1678,1757,1826,1889,1939,1952,1926,1895,1897,1924,1946,1952,1963,1991,2030,2077,2136,
+2199,2260,2344,2489,2685,2869,2995,3077,3145,3202,3226,3219,3194,3152,3086,3002,2913,2819,2724,2650,
+2625,2638,2657,2664,2662,2647,2612,2569,2546,2413,2356,2297,2205,2074,1949,1880,1892,1962,2046,2108,
+2150,2198,2274,2382,2499,2581,2590,2534,2468,2425,2376,2278,2143,2028,1946,1865,1764,1668,1585,1476,
+1307,1108,923,746,536,290,54,-132,-260,-333,-352,-333,-305,-282,-253,-213,-178,-166,-175,-198,
+-228,-265,-304,-343,-383,-418,-441,-452,-463,-484,-511,-536,-555,-565,-572,-600,-673,-788,-904,-974,
+-990,-979,-969,-972,-985,-1016,-1079,-1175,-1290,-1410,-1552,-1742,-1975,-2198,-2360,-2470,-2581,-2719,-2861,-2973,
+-3074,-3207,-3381,-3564,-3736,-3916,-4126,-4343,-4532,-4698,-4881,-5086,-5260,-5350,-5370,-5380,-5406,-5418,-5387,-5332,
+-5305,-5332,-5397,-5467,-5524,-5578,-5646,-5736,-5840,-5949,-6072,-6223,-6397,-6578,-6767,-6979,-7210,-7425,-7600,-7754,
+-7924,-8118,-8312,-8490,-8653,-8804,-8941,-9070,-9203,-9342,-9470,-9568,-9635,-9686,-9741,-9804,-9867,-9917,-9960,-10016,
+-10085,-10147,-10192,-10249,-10353,-10486,-10572,-10538,-10375,-10152,-9967,-9888,-9904,-9947,-9946,-9872,-9732,-9537,-9302,-9042,
+-8771,-8488,-8199,-7922,-7656,-7365,-7031,-6675,-6328,-5997,-5698,-5499,-5440,-5453,-5413,-5265,-5044,-4769,-4406,-3976,
+-3588,-3325,-3136,-2919,-2653,-2393,-2167,-1954,-1750,-1572,-1412,-1226,-1003,-776,-580,-415,-274,-148,-9,180,
+420,666,884,1081,1270,1445,1602,1764,1956,2168,2373,2555,2717,2876,3051,3249,3461,3672,3891,4138,
+4419,4715,4998,5239,5413,5533,5654,5818,5998,6153,6304,6503,6719,6841,6835,6807,6861,6972,7042,7011,
+6828,6414,5804,5294,5253,5732,6377,6795,6904,6879,6861,6860,6869,6914,6976,6980,6897,6793,6739,6734,
+6741,6745,6739,6705,6636,6567,6532,6518,6494,6459,6442,6458,6498,6541,6562,6547,6505,6460,6417,6359,
+6286,6225,6185,6137,6068,6010,5983,5939,5823,5662,5534,5466,5423,5391,5399,5436,5424,5319,5187,5124,
+5127,5120,5069,5017,4994,4958,4851,4676,4487,4327,4196,4082,3981,3893,3804,3703,3599,3506,3420,3325,
+3225,3143,3083,3009,2903,2810,2788,2820,2824,2761,2674,2615,2577,2522,2449,2383,2332,2286,2237,2172,
+2071,1941,1842,1816,1826,1797,1714,1633,1597,1595,1602,1622,1656,1682,1684,1664,1627,1558,1460,1370,
+1313,1277,1238,1199,1176,1164,1148,1130,1129,1150,1185,1226,1269,1308,1337,1365,1408,1463,1514,1550,
+1572,1584,1596,1624,1676,1730,1755,1742,1713,1690,1672,1647,1613,1576,1541,1505,1466,1420,1370,1322,
+1278,1233,1190,1150,1114,1072,1012,938,863,802,759,725,681,610,519,430,358,295,227,155,
+89,29,-35,-106,-174,-233,-293,-361,-437,-517,-602,-691,-784,-876,-968,-1061,-1150,-1234,-1314,-1394,
+-1475,-1557,-1633,-1692,-1736,-1777,-1833,-1911,-1995,-2070,-2126,-2170,-2220,-2289,-2376,-2469,-2556,-2638,-2717,-2788,
+-2838,-2866,-2885,-2910,-2950,-3000,-3048,-3076,-3080,-3073,-3071,-3083,-3105,-3129,-3148,-3155,-3149,-3130,-3104,-3070,
+-3031,-2997,-2973,-2954,-2921,-2867,-2794,-2711,-2631,-2569,-2530,-2497,-2451,-2382,-2304,-2226,-2150,-2074,-1999,-1923,
+-1840,-1750,-1659,-1574,-1493,-1420,-1360,-1307,-1244,-1169,-1093,-1022,-943,-857,-788,-755,-732,-682,-605,-536,
+-490,-443,-382,-324,-282,-237,-167,-85,-21,27,89,173,257,329,412,521,634,723,796,879,
+967,1031,1074,1137,1226,1285,1272,1221,1203,1243,1297,1330,1348,1383,1477,1677,1976,2230,2227,1939,
+1638,1643,1924,2071,1736,1025,372,71,35,7,-128,-303,-437,-536,-629,-708,-758,-809,-906,-1052,
+-1206,-1329,-1406,-1446,-1472,-1516,-1599,-1715,-1853,-2014,-2204,-2395,-2543,-2636,-2715,-2824,-2959,-3075,-3140,-3152,
+-3128,-3088,-3062,-3080,-3150,-3254,-3379,-3517,-3648,-3731,-3745,-3715,-3684,-3662,-3618,-3534,-3438,-3355,-3274,-3166,
+-3034,-2912,-2817,-2722,-2599,-2450,-2298,-2161,-2035,-1908,-1770,-1611,-1435,-1258,-1093,-936,-772,-596,-420,-262,
+-122,8,136,256,357,437,506,573,640,696,738,773,814,867,932,1006,1087,1170,1254,1337,
+1413,1472,1514,1558,1624,1714,1813,1899,1945,1938,1895,1860,1860,1883,1895,1891,1898,1931,1980,2026,
+2061,2084,2109,2174,2304,2479,2647,2785,2914,3046,3148,3187,3171,3131,3083,3022,2950,2873,2789,2697,
+2624,2599,2611,2622,2615,2605,2592,2556,2488,2413,2232,2126,2035,1926,1787,1658,1606,1661,1793,1936,
+2041,2101,2141,2193,2280,2391,2472,2476,2416,2361,2344,2319,2224,2077,1950,1870,1799,1711,1623,1536,
+1411,1226,1026,856,688,463,189,-57,-218,-306,-359,-389,-387,-363,-337,-314,-285,-255,-238,-244,
+-263,-280,-293,-317,-360,-409,-442,-452,-461,-487,-526,-568,-608,-643,-658,-652,-654,-710,-821,-939,
+-1014,-1042,-1046,-1035,-1004,-972,-998,-1132,-1345,-1551,-1687,-1779,-1906,-2096,-2296,-2446,-2558,-2690,-2860,-3022,
+-3139,-3234,-3363,-3537,-3713,-3865,-4017,-4206,-4425,-4629,-4797,-4953,-5116,-5256,-5326,-5328,-5312,-5314,-5325,-5322,
+-5312,-5327,-5377,-5447,-5514,-5573,-5632,-5704,-5795,-5901,-6016,-6140,-6276,-6425,-6583,-6758,-6961,-7180,-7384,-7554,
+-7711,-7886,-8081,-8274,-8448,-8605,-8757,-8907,-9054,-9195,-9331,-9460,-9573,-9659,-9706,-9730,-9764,-9827,-9904,-9974,
+-10036,-10098,-10157,-10208,-10277,-10388,-10528,-10636,-10656,-10584,-10460,-10339,-10253,-10195,-10136,-10047,-9918,-9749,-9543,-9311,
+-9065,-8803,-8513,-8211,-7931,-7669,-7381,-7044,-6691,-6353,-6020,-5699,-5467,-5372,-5336,-5227,-5032,-4843,-4677,-4431,
+-4048,-3628,-3302,-3064,-2820,-2542,-2280,-2058,-1853,-1659,-1498,-1350,-1159,-911,-658,-449,-282,-140,-16,112,
+285,515,766,1001,1214,1406,1570,1715,1877,2075,2286,2482,2662,2840,3014,3181,3359,3570,3803,4033,
+4264,4522,4815,5103,5331,5483,5601,5746,5936,6130,6282,6397,6516,6651,6774,6860,6912,6939,6944,6947,
+6935,6792,6385,5769,5278,5254,5713,6329,6769,6948,6975,6957,6942,6963,7033,7102,7096,7015,6926,6879,
+6861,6847,6834,6817,6775,6706,6642,6610,6592,6564,6528,6509,6525,6570,6621,6641,6611,6551,6501,6467,
+6417,6339,6266,6224,6197,6157,6108,6056,5972,5833,5677,5566,5501,5446,5403,5421,5486,5504,5418,5287,
+5213,5204,5197,5158,5112,5075,5006,4876,4708,4551,4417,4288,4163,4063,3991,3917,3812,3687,3579,3495,
+3407,3299,3201,3142,3098,3025,2930,2873,2876,2888,2844,2749,2649,2567,2498,2442,2405,2377,2338,2277,
+2194,2094,1988,1911,1878,1860,1810,1730,1662,1634,1629,1632,1646,1669,1682,1677,1665,1645,1601,1529,
+1454,1395,1346,1299,1265,1250,1237,1211,1186,1182,1195,1216,1247,1294,1343,1372,1390,1419,1468,1520,
+1563,1600,1630,1651,1670,1702,1741,1764,1761,1746,1737,1733,1716,1678,1630,1588,1560,1538,1509,1467,
+1414,1357,1300,1253,1222,1196,1152,1079,995,921,863,812,763,715,660,584,495,413,347,288,
+223,156,92,32,-30,-96,-158,-219,-281,-349,-424,-507,-596,-689,-787,-886,-984,-1075,-1157,-1232,
+-1308,-1389,-1477,-1559,-1618,-1654,-1688,-1744,-1822,-1905,-1976,-2036,-2089,-2140,-2198,-2273,-2364,-2458,-2544,-2621,
+-2691,-2746,-2777,-2790,-2809,-2851,-2906,-2952,-2975,-2987,-3001,-3016,-3025,-3029,-3041,-3064,-3081,-3077,-3056,-3029,
+-3000,-2966,-2932,-2908,-2889,-2860,-2810,-2744,-2672,-2602,-2541,-2495,-2461,-2424,-2366,-2290,-2207,-2130,-2061,-1994,
+-1920,-1836,-1745,-1654,-1565,-1484,-1422,-1381,-1341,-1280,-1200,-1120,-1048,-973,-893,-828,-790,-756,-697,-621,
+-558,-516,-472,-416,-362,-322,-279,-215,-140,-75,-14,57,139,215,286,375,488,596,679,746,
+815,881,936,999,1096,1209,1285,1300,1288,1297,1330,1355,1346,1315,1305,1397,1656,2035,2339,2369,
+2155,1962,2004,2162,2090,1610,929,421,239,222,147,-31,-209,-315,-377,-443,-513,-573,-646,-760,
+-911,-1060,-1176,-1244,-1262,-1251,-1253,-1306,-1418,-1576,-1778,-2017,-2249,-2414,-2503,-2581,-2719,-2913,-3095,-3200,
+-3214,-3164,-3097,-3059,-3077,-3136,-3205,-3279,-3382,-3511,-3612,-3634,-3594,-3551,-3530,-3502,-3438,-3354,-3281,-3212,
+-3118,-2993,-2871,-2771,-2676,-2558,-2419,-2282,-2156,-2035,-1907,-1768,-1615,-1444,-1260,-1080,-911,-753,-597,-442,
+-291,-141,7,148,269,363,441,512,580,640,691,734,776,817,858,909,979,1067,1158,1241,
+1321,1397,1455,1486,1509,1564,1666,1791,1890,1928,1903,1849,1812,1811,1828,1839,1843,1860,1902,1952,
+1992,2018,2036,2065,2124,2218,2333,2450,2582,2750,2938,3085,3147,3135,3084,3013,2930,2852,2786,2718,
+2632,2552,2518,2528,2540,2531,2513,2492,2445,2351,2232,2032,1915,1820,1724,1614,1517,1489,1564,1718,
+1894,2035,2113,2135,2136,2162,2230,2299,2309,2257,2207,2195,2181,2102,1972,1857,1784,1722,1646,1568,
+1481,1346,1151,950,786,620,386,100,-140,-266,-310,-340,-377,-398,-391,-374,-364,-352,-329,-311,
+-315,-335,-346,-342,-351,-393,-445,-472,-473,-487,-534,-597,-655,-709,-760,-786,-768,-737,-752,-832,
+-939,-1027,-1085,-1122,-1127,-1082,-1013,-1007,-1143,-1400,-1665,-1839,-1939,-2052,-2226,-2412,-2548,-2649,-2781,-2962,
+-3142,-3277,-3384,-3513,-3671,-3825,-3955,-4085,-4250,-4449,-4646,-4820,-4979,-5128,-5239,-5276,-5247,-5209,-5205,-5232,
+-5265,-5297,-5339,-5399,-5468,-5541,-5615,-5690,-5765,-5848,-5949,-6070,-6201,-6335,-6471,-6615,-6776,-6957,-7146,-7325,
+-7492,-7661,-7847,-8045,-8234,-8402,-8554,-8706,-8864,-9025,-9174,-9309,-9438,-9566,-9665,-9701,-9686,-9684,-9747,-9859,
+-9969,-10050,-10114,-10171,-10228,-10303,-10415,-10552,-10668,-10723,-10711,-10657,-10581,-10492,-10386,-10257,-10104,-9928,-9729,-9511,
+-9288,-9064,-8821,-8535,-8225,-7937,-7675,-7390,-7059,-6717,-6388,-6043,-5689,-5415,-5286,-5216,-5065,-4840,-4669,-4582,
+-4437,-4123,-3713,-3341,-3026,-2705,-2381,-2117,-1921,-1742,-1563,-1412,-1274,-1088,-834,-571,-354,-181,-28,109,
+246,414,628,865,1096,1317,1521,1687,1825,1979,2174,2379,2558,2732,2933,3145,3327,3487,3673,3901,
+4141,4371,4616,4896,5173,5389,5534,5662,5820,6001,6167,6291,6378,6457,6564,6723,6907,7034,7050,7010,
+7025,7089,7012,6626,6029,5569,5524,5862,6332,6715,6946,7046,7056,7040,7069,7152,7218,7206,7135,7066,
+7022,6982,6934,6888,6845,6796,6745,6712,6699,6684,6653,6617,6595,6597,6624,6662,6680,6650,6586,6532,
+6503,6470,6410,6344,6302,6277,6239,6176,6085,5961,5813,5684,5609,5560,5492,5422,5410,5461,5494,5448,
+5361,5306,5293,5274,5230,5179,5124,5035,4899,4749,4623,4513,4391,4259,4151,4081,4015,3911,3774,3650,
+3566,3497,3407,3303,3228,3184,3131,3048,2971,2941,2936,2901,2812,2696,2584,2496,2440,2421,2418,2394,
+2334,2251,2165,2089,2024,1969,1909,1836,1764,1713,1686,1671,1664,1669,1680,1680,1669,1665,1667,1650,
+1602,1535,1465,1400,1349,1325,1320,1305,1272,1244,1240,1249,1256,1273,1313,1359,1386,1399,1423,1467,
+1515,1562,1611,1659,1691,1704,1719,1744,1767,1772,1768,1768,1771,1757,1720,1670,1630,1610,1600,1581,
+1542,1487,1421,1357,1308,1281,1260,1216,1139,1053,986,932,872,806,751,705,643,556,467,398,
+345,288,223,158,100,43,-19,-84,-146,-206,-267,-335,-412,-499,-594,-696,-802,-905,-1000,-1083,
+-1157,-1230,-1311,-1401,-1486,-1545,-1579,-1611,-1666,-1743,-1821,-1889,-1952,-2013,-2066,-2117,-2181,-2269,-2367,-2455,
+-2526,-2591,-2651,-2692,-2713,-2730,-2763,-2806,-2842,-2868,-2897,-2933,-2957,-2955,-2939,-2940,-2966,-2994,-2998,-2980,
+-2957,-2931,-2898,-2861,-2834,-2814,-2788,-2744,-2689,-2631,-2568,-2501,-2444,-2408,-2380,-2336,-2262,-2176,-2103,-2045,
+-1986,-1913,-1827,-1740,-1652,-1563,-1483,-1425,-1388,-1350,-1291,-1215,-1140,-1071,-999,-923,-860,-815,-771,-713,
+-648,-594,-553,-507,-451,-397,-353,-307,-249,-180,-109,-35,39,109,173,248,343,448,541,616,
+684,750,806,857,930,1037,1157,1257,1326,1374,1409,1425,1409,1347,1246,1177,1271,1609,2083,2433,
+2481,2309,2156,2141,2120,1870,1372,846,528,438,410,293,93,-90,-203,-273,-337,-405,-472,-553,
+-660,-785,-910,-1023,-1114,-1162,-1161,-1147,-1172,-1261,-1409,-1612,-1862,-2111,-2293,-2393,-2478,-2633,-2861,-3086,
+-3225,-3248,-3184,-3103,-3073,-3122,-3209,-3277,-3311,-3347,-3409,-3464,-3467,-3423,-3383,-3372,-3365,-3326,-3260,-3193,
+-3130,-3049,-2942,-2829,-2728,-2631,-2519,-2393,-2269,-2152,-2032,-1902,-1764,-1616,-1451,-1266,-1074,-895,-735,-592,
+-459,-324,-178,-20,130,256,349,424,495,563,623,673,720,767,811,849,896,963,1050,1138,
+1217,1291,1363,1417,1443,1459,1507,1609,1735,1830,1859,1829,1780,1750,1751,1766,1779,1794,1826,1876,
+1924,1954,1973,2001,2049,2115,2181,2238,2300,2404,2571,2769,2933,3023,3039,2996,2903,2787,2694,2642,
+2594,2512,2415,2359,2364,2388,2390,2367,2329,2264,2159,2032,1849,1762,1687,1617,1547,1489,1474,1530,
+1659,1834,2005,2121,2154,2124,2094,2114,2168,2192,2157,2105,2075,2048,1979,1872,1777,1713,1653,1579,
+1500,1412,1279,1090,891,723,549,310,24,-203,-305,-317,-327,-366,-404,-414,-413,-419,-424,-411,
+-395,-402,-430,-444,-433,-428,-456,-497,-517,-520,-545,-607,-680,-743,-807,-871,-902,-873,-812,-787,
+-832,-928,-1034,-1132,-1208,-1244,-1218,-1150,-1115,-1194,-1401,-1656,-1863,-2009,-2156,-2344,-2529,-2653,-2732,-2838,
+-3005,-3196,-3364,-3506,-3643,-3779,-3900,-4012,-4136,-4284,-4447,-4615,-4788,-4968,-5127,-5220,-5222,-5165,-5116,-5119,
+-5166,-5226,-5285,-5345,-5409,-5480,-5565,-5665,-5765,-5846,-5916,-6001,-6115,-6248,-6383,-6515,-6651,-6799,-6953,-7109,
+-7267,-7434,-7618,-7814,-8008,-8189,-8355,-8511,-8668,-8832,-9000,-9154,-9287,-9416,-9552,-9661,-9689,-9647,-9621,-9685,
+-9820,-9955,-10050,-10119,-10185,-10252,-10331,-10434,-10554,-10657,-10712,-10719,-10691,-10636,-10552,-10437,-10290,-10117,-9922,-9708,
+-9486,-9274,-9074,-8852,-8571,-8252,-7948,-7674,-7386,-7061,-6733,-6415,-6069,-5695,-5391,-5232,-5138,-4968,-4727,-4552,
+-4484,-4386,-4140,-3790,-3436,-3081,-2687,-2304,-2025,-1848,-1686,-1504,-1341,-1202,-1025,-779,-515,-289,-102,69,
+228,381,555,762,981,1196,1416,1632,1808,1941,2083,2271,2474,2646,2810,3021,3266,3480,3643,3815,
+4043,4298,4534,4757,4993,5228,5420,5570,5718,5880,6029,6141,6229,6310,6391,6503,6689,6921,7081,7105,
+7097,7211,7392,7376,6995,6423,6012,5948,6139,6414,6690,6936,7093,7130,7115,7150,7243,7310,7295,7228,
+7161,7107,7048,6986,6929,6874,6824,6790,6777,6768,6743,6710,6688,6680,6681,6692,6717,6733,6711,6649,
+6588,6552,6525,6481,6422,6371,6331,6284,6209,6102,5968,5828,5716,5644,5586,5508,5428,5397,5426,5460,
+5447,5403,5370,5358,5338,5293,5235,5165,5068,4941,4813,4707,4610,4494,4358,4231,4141,4072,3982,3856,
+3726,3635,3580,3514,3418,3320,3250,3194,3120,3035,2975,2947,2916,2850,2752,2644,2548,2483,2460,2463,
+2451,2400,2323,2251,2190,2129,2051,1962,1877,1813,1771,1739,1712,1697,1699,1704,1695,1680,1680,1695,
+1696,1664,1600,1522,1448,1397,1380,1377,1360,1325,1297,1294,1300,1302,1312,1342,1374,1389,1398,1423,
+1466,1508,1548,1598,1654,1695,1717,1735,1760,1778,1776,1768,1772,1785,1784,1756,1710,1673,1656,1649,
+1630,1587,1527,1463,1403,1358,1331,1307,1261,1187,1107,1045,994,932,859,798,750,693,612,525,
+456,405,351,288,224,167,113,53,-10,-73,-134,-194,-259,-330,-412,-504,-605,-713,-820,-920,
+-1008,-1085,-1158,-1239,-1327,-1411,-1472,-1510,-1545,-1599,-1669,-1742,-1809,-1875,-1939,-1994,-2041,-2101,-2188,-2288,
+-2375,-2441,-2501,-2563,-2618,-2653,-2673,-2692,-2717,-2744,-2778,-2824,-2873,-2898,-2885,-2857,-2850,-2875,-2905,-2912,
+-2896,-2874,-2849,-2817,-2782,-2757,-2739,-2714,-2675,-2632,-2588,-2532,-2461,-2395,-2357,-2337,-2301,-2229,-2143,-2073,
+-2023,-1968,-1894,-1811,-1730,-1650,-1567,-1491,-1436,-1396,-1353,-1292,-1222,-1154,-1088,-1021,-954,-893,-837,-780,
+-723,-673,-631,-590,-540,-483,-427,-376,-326,-272,-208,-135,-58,8,61,120,204,307,402,476,
+541,609,673,728,792,886,1004,1122,1229,1326,1404,1445,1448,1416,1329,1183,1079,1204,1630,2174,
+2524,2540,2356,2188,2087,1930,1623,1233,913,742,671,593,444,243,49,-99,-209,-302,-388,-467,
+-543,-621,-701,-791,-903,-1028,-1129,-1177,-1191,-1220,-1293,-1409,-1569,-1775,-1999,-2183,-2297,-2388,-2528,-2740,
+-2965,-3119,-3161,-3111,-3040,-3029,-3109,-3239,-3340,-3376,-3366,-3345,-3317,-3266,-3202,-3162,-3170,-3200,-3211,-3183,
+-3129,-3066,-2996,-2913,-2818,-2717,-2610,-2495,-2375,-2255,-2135,-2007,-1874,-1739,-1601,-1445,-1268,-1079,-898,-733,
+-587,-459,-339,-210,-62,92,230,336,417,484,546,602,655,706,757,804,848,897,960,1036,
+1115,1187,1253,1314,1362,1388,1408,1450,1532,1634,1713,1742,1725,1697,1684,1695,1713,1727,1743,1778,
+1830,1878,1904,1918,1949,2011,2086,2143,2169,2192,2256,2376,2529,2672,2778,2831,2809,2711,2580,2487,
+2454,2427,2347,2231,2149,2138,2170,2188,2167,2113,2037,1945,1849,1723,1677,1626,1571,1521,1479,1452,
+1463,1545,1701,1894,2060,2140,2130,2084,2070,2101,2128,2110,2059,2010,1960,1885,1789,1706,1647,1584,
+1500,1408,1313,1186,1009,813,631,443,204,-62,-271,-358,-361,-366,-410,-462,-489,-499,-513,-526,
+-521,-508,-514,-541,-555,-540,-520,-524,-546,-562,-580,-621,-681,-737,-792,-865,-943,-973,-930,-852,
+-808,-833,-920,-1043,-1172,-1277,-1339,-1357,-1343,-1325,-1352,-1469,-1666,-1882,-2076,-2264,-2463,-2638,-2741,-2793,
+-2867,-3010,-3204,-3402,-3583,-3736,-3856,-3956,-4068,-4209,-4358,-4491,-4620,-4780,-4968,-5128,-5195,-5164,-5093,-5054,
+-5073,-5132,-5206,-5283,-5360,-5432,-5506,-5600,-5720,-5840,-5931,-5994,-6063,-6162,-6286,-6415,-6543,-6674,-6811,-6945,
+-7079,-7223,-7393,-7584,-7776,-7955,-8125,-8295,-8466,-8636,-8806,-8975,-9129,-9261,-9390,-9530,-9645,-9678,-9638,-9615,
+-9685,-9825,-9959,-10049,-10117,-10190,-10266,-10342,-10428,-10522,-10601,-10646,-10653,-10634,-10589,-10514,-10408,-10273,-10111,-9924,
+-9715,-9497,-9294,-9106,-8894,-8616,-8288,-7967,-7676,-7376,-7049,-6724,-6417,-6087,-5723,-5412,-5229,-5111,-4934,-4694,
+-4502,-4394,-4271,-4053,-3783,-3514,-3201,-2796,-2379,-2070,-1870,-1682,-1471,-1285,-1141,-973,-741,-481,-246,-38,
+156,336,505,690,904,1121,1325,1535,1753,1938,2071,2202,2385,2594,2771,2925,3123,3374,3610,3791,
+3970,4208,4484,4729,4922,5096,5267,5424,5571,5729,5884,5995,6061,6131,6229,6339,6469,6663,6903,7068,
+7104,7150,7357,7609,7590,7172,6614,6280,6260,6388,6538,6731,6969,7147,7188,7167,7204,7303,7374,7361,
+7291,7207,7124,7051,6998,6959,6918,6875,6851,6840,6819,6778,6743,6738,6754,6769,6781,6798,6808,6784,
+6723,6654,6606,6573,6531,6470,6409,6360,6311,6242,6146,6030,5906,5785,5677,5582,5499,5439,5417,5437,
+5469,5478,5461,5439,5426,5410,5368,5297,5205,5103,4996,4892,4796,4702,4593,4459,4314,4190,4106,4037,
+3943,3824,3720,3655,3599,3514,3405,3311,3242,3171,3085,3007,2960,2931,2890,2825,2743,2657,2584,2543,
+2531,2518,2474,2401,2325,2260,2194,2112,2020,1937,1878,1834,1795,1762,1745,1745,1743,1726,1704,1701,
+1718,1728,1709,1656,1583,1511,1461,1438,1426,1403,1371,1348,1342,1341,1342,1355,1380,1399,1401,1405,
+1430,1468,1503,1535,1580,1634,1681,1719,1754,1783,1787,1766,1750,1765,1800,1819,1799,1752,1708,1687,
+1679,1657,1608,1542,1483,1440,1407,1378,1345,1296,1229,1156,1094,1042,985,919,856,801,741,668,
+592,527,471,413,351,290,233,176,116,55,-5,-67,-131,-196,-264,-340,-426,-523,-627,-734,
+-835,-927,-1009,-1086,-1166,-1250,-1329,-1394,-1442,-1485,-1535,-1597,-1667,-1738,-1809,-1873,-1924,-1969,-2028,-2113,
+-2211,-2299,-2367,-2426,-2488,-2550,-2595,-2619,-2630,-2642,-2669,-2714,-2771,-2821,-2841,-2828,-2803,-2797,-2812,-2830,
+-2831,-2814,-2790,-2763,-2733,-2705,-2685,-2668,-2642,-2607,-2575,-2545,-2501,-2433,-2362,-2318,-2297,-2262,-2195,-2113,
+-2048,-1998,-1942,-1871,-1795,-1721,-1644,-1564,-1495,-1447,-1408,-1360,-1300,-1235,-1170,-1104,-1042,-986,-929,-860,
+-786,-725,-686,-654,-611,-555,-497,-442,-386,-332,-281,-226,-159,-88,-32,11,71,162,263,344,
+406,469,535,592,648,734,862,1001,1120,1221,1312,1374,1393,1389,1374,1305,1163,1080,1264,1754,
+2295,2567,2501,2293,2128,1997,1799,1527,1274,1101,980,861,720,554,363,165,-11,-153,-276,-391,
+-491,-563,-611,-655,-719,-822,-961,-1100,-1207,-1280,-1349,-1429,-1516,-1615,-1748,-1918,-2082,-2199,-2282,-2385,
+-2542,-2728,-2881,-2953,-2947,-2915,-2925,-3015,-3159,-3294,-3364,-3359,-3300,-3210,-3105,-3008,-2956,-2976,-3052,-3126,
+-3144,-3097,-3018,-2943,-2877,-2802,-2705,-2590,-2470,-2352,-2232,-2104,-1968,-1831,-1701,-1572,-1425,-1258,-1080,-905,
+-740,-588,-456,-343,-234,-107,41,193,324,420,487,539,589,641,694,744,795,846,896,948,
+1007,1075,1144,1204,1253,1292,1325,1354,1388,1441,1511,1579,1620,1628,1619,1622,1646,1675,1693,1705,
+1730,1776,1825,1853,1865,1892,1955,2035,2095,2118,2125,2150,2206,2285,2376,2471,2538,2535,2450,2338,
+2269,2257,2242,2166,2047,1950,1923,1950,1982,1974,1921,1845,1775,1723,1672,1655,1621,1572,1522,1474,
+1423,1395,1435,1563,1748,1928,2045,2077,2050,2021,2022,2035,2025,1986,1936,1876,1795,1702,1624,1567,
+1500,1405,1297,1190,1065,894,689,483,274,44,-192,-373,-455,-470,-494,-558,-629,-666,-673,-676,
+-680,-671,-651,-643,-649,-649,-628,-600,-586,-588,-604,-639,-687,-725,-747,-792,-885,-984,-1015,-964,
+-888,-850,-868,-943,-1066,-1206,-1316,-1382,-1438,-1504,-1557,-1588,-1647,-1786,-1991,-2207,-2407,-2588,-2730,-2806,
+-2841,-2903,-3033,-3216,-3414,-3605,-3771,-3901,-4013,-4152,-4328,-4493,-4609,-4701,-4829,-4993,-5120,-5147,-5092,-5029,
+-5017,-5058,-5122,-5197,-5285,-5379,-5464,-5542,-5635,-5757,-5886,-5988,-6058,-6122,-6207,-6315,-6437,-6565,-6699,-6830,
+-6952,-7070,-7205,-7371,-7555,-7732,-7890,-8048,-8223,-8411,-8597,-8773,-8939,-9091,-9224,-9356,-9495,-9612,-9657,-9638,
+-9639,-9722,-9861,-9984,-10060,-10120,-10192,-10268,-10335,-10397,-10462,-10519,-10557,-10573,-10566,-10530,-10462,-10365,-10242,-10095,
+-9925,-9730,-9519,-9315,-9120,-8906,-8631,-8306,-7982,-7681,-7374,-7038,-6706,-6399,-6086,-5750,-5449,-5247,-5104,-4929,
+-4710,-4512,-4345,-4143,-3891,-3667,-3498,-3285,-2945,-2540,-2191,-1920,-1662,-1409,-1213,-1075,-919,-697,-445,-209,
+14,235,438,620,815,1041,1267,1467,1660,1866,2054,2197,2329,2507,2719,2905,3058,3237,3469,3704,
+3896,4087,4336,4627,4879,5053,5178,5293,5408,5531,5669,5796,5875,5919,5994,6123,6265,6410,6607,6847,
+7018,7071,7145,7375,7608,7515,7020,6461,6213,6297,6479,6630,6810,7044,7219,7255,7231,7265,7355,7418,
+7406,7337,7235,7123,7038,7000,6988,6963,6930,6910,6901,6875,6832,6801,6804,6827,6849,6863,6870,6861,
+6824,6763,6699,6652,6617,6572,6511,6451,6404,6357,6289,6201,6109,6009,5882,5733,5601,5521,5485,5474,
+5484,5516,5546,5548,5525,5504,5487,5444,5355,5238,5130,5043,4957,4862,4764,4667,4552,4408,4263,4158,
+4096,4033,3933,3819,3731,3667,3589,3485,3382,3305,3237,3155,3074,3019,2987,2952,2898,2830,2756,2686,
+2634,2609,2593,2555,2484,2396,2314,2241,2169,2094,2024,1964,1912,1868,1835,1817,1807,1793,1766,1737,
+1724,1732,1744,1737,1702,1647,1588,1539,1502,1470,1439,1413,1396,1384,1372,1367,1382,1408,1422,1421,
+1424,1445,1474,1500,1530,1574,1627,1675,1720,1764,1790,1781,1749,1738,1770,1824,1854,1834,1779,1724,
+1696,1689,1671,1620,1550,1495,1468,1452,1424,1382,1332,1274,1210,1145,1089,1040,987,927,860,793,
+729,668,607,542,476,415,358,299,235,169,107,48,-13,-78,-144,-209,-280,-361,-452,-552,
+-655,-753,-845,-930,-1012,-1092,-1170,-1243,-1310,-1370,-1421,-1468,-1523,-1592,-1673,-1750,-1811,-1855,-1896,-1952,
+-2030,-2122,-2212,-2290,-2356,-2415,-2473,-2522,-2552,-2564,-2574,-2604,-2657,-2717,-2761,-2777,-2775,-2769,-2768,-2770,
+-2769,-2762,-2747,-2723,-2692,-2658,-2630,-2611,-2592,-2566,-2535,-2512,-2495,-2465,-2408,-2339,-2284,-2248,-2209,-2152,
+-2087,-2030,-1977,-1918,-1852,-1786,-1718,-1638,-1557,-1494,-1454,-1417,-1369,-1313,-1255,-1190,-1120,-1057,-1010,-958,
+-881,-793,-728,-694,-665,-616,-555,-497,-443,-384,-326,-277,-233,-179,-117,-63,-16,43,123,203,
+269,332,405,475,525,579,680,832,988,1116,1218,1298,1332,1321,1312,1319,1284,1185,1168,1429,
+1943,2407,2544,2390,2192,2090,2005,1837,1620,1443,1310,1160,978,797,624,434,231,51,-94,-232,
+-373,-492,-561,-594,-626,-679,-766,-889,-1037,-1185,-1314,-1427,-1523,-1596,-1657,-1738,-1859,-1997,-2109,-2181,
+-2247,-2346,-2481,-2617,-2716,-2764,-2786,-2822,-2901,-3023,-3157,-3256,-3289,-3251,-3161,-3045,-2932,-2864,-2880,-2982,
+-3100,-3143,-3082,-2968,-2869,-2807,-2747,-2659,-2546,-2427,-2314,-2198,-2070,-1930,-1793,-1669,-1546,-1407,-1245,-1073,
+-906,-749,-599,-463,-349,-251,-144,-11,144,295,413,489,539,586,637,688,736,785,837,881,
+917,958,1017,1087,1146,1185,1220,1260,1298,1326,1355,1405,1475,1536,1563,1561,1563,1590,1633,1663,
+1675,1692,1728,1772,1800,1813,1839,1899,1979,2046,2080,2091,2099,2110,2127,2159,2209,2252,2249,2191,
+2123,2090,2088,2071,2006,1912,1833,1800,1817,1856,1871,1833,1761,1699,1672,1678,1675,1660,1624,1579,
+1526,1465,1424,1442,1527,1651,1776,1875,1929,1930,1902,1880,1873,1866,1845,1810,1758,1682,1595,1523,
+1468,1401,1302,1186,1073,946,773,554,323,98,-125,-339,-504,-594,-640,-699,-793,-883,-924,-918,
+-896,-878,-857,-826,-795,-771,-749,-726,-704,-684,-669,-674,-709,-747,-752,-740,-781,-903,-1031,-1070,
+-1022,-967,-950,-964,-1010,-1109,-1241,-1341,-1390,-1456,-1584,-1723,-1811,-1871,-1984,-2169,-2374,-2551,-2692,-2793,
+-2852,-2897,-2978,-3113,-3271,-3430,-3595,-3769,-3936,-4098,-4283,-4490,-4665,-4763,-4819,-4899,-5012,-5089,-5081,-5022,
+-4987,-5009,-5065,-5124,-5190,-5278,-5382,-5479,-5562,-5651,-5765,-5893,-6006,-6093,-6165,-6243,-6338,-6454,-6590,-6735,
+-6869,-6983,-7089,-7211,-7364,-7535,-7696,-7839,-7985,-8157,-8355,-8553,-8735,-8899,-9049,-9189,-9326,-9464,-9574,-9620,
+-9619,-9642,-9739,-9880,-10000,-10073,-10130,-10197,-10265,-10320,-10361,-10399,-10437,-10470,-10495,-10499,-10471,-10408,-10315,-10198,
+-10060,-9903,-9721,-9515,-9300,-9087,-8863,-8597,-8290,-7981,-7686,-7381,-7046,-6706,-6390,-6082,-5768,-5480,-5262,-5093,
+-4918,-4728,-4543,-4335,-4057,-3746,-3519,-3403,-3281,-3031,-2668,-2284,-1923,-1583,-1299,-1115,-995,-842,-620,-377,
+-154,68,310,542,742,938,1163,1393,1592,1765,1947,2134,2298,2447,2621,2824,3014,3177,3350,3562,
+3782,3977,4174,4425,4716,4972,5144,5251,5334,5411,5493,5587,5674,5722,5754,5837,5983,6136,6273,6450,
+6683,6872,6959,7057,7275,7451,7272,6710,6145,5959,6145,6430,6656,6870,7103,7270,7317,7315,7350,7412,
+7444,7428,7372,7273,7153,7063,7034,7031,7009,6974,6955,6951,6935,6908,6892,6896,6908,6919,6926,6919,
+6887,6832,6772,6724,6690,6660,6620,6570,6523,6481,6421,6327,6224,6149,6085,5975,5811,5663,5588,5565,
+5546,5535,5562,5610,5624,5592,5554,5531,5487,5390,5263,5158,5081,4999,4890,4780,4690,4605,4492,4354,
+4234,4157,4098,4014,3906,3809,3735,3661,3566,3465,3382,3310,3231,3157,3106,3072,3023,2945,2855,2778,
+2720,2678,2656,2646,2623,2565,2475,2379,2297,2232,2175,2116,2054,1994,1947,1915,1893,1872,1846,1814,
+1781,1757,1749,1750,1747,1726,1690,1648,1606,1558,1507,1466,1443,1433,1417,1394,1382,1392,1414,1428,
+1433,1443,1461,1480,1500,1533,1580,1629,1672,1711,1749,1768,1758,1738,1745,1788,1839,1863,1844,1794,
+1739,1706,1697,1682,1635,1564,1510,1490,1483,1459,1416,1369,1324,1271,1208,1149,1103,1061,1002,927,
+854,795,743,683,611,541,481,426,362,289,214,147,86,24,-39,-101,-164,-231,-307,-393,
+-488,-587,-682,-772,-858,-943,-1024,-1094,-1159,-1225,-1293,-1352,-1398,-1447,-1516,-1602,-1683,-1742,-1783,-1824,
+-1876,-1943,-2025,-2119,-2209,-2283,-2338,-2389,-2438,-2476,-2494,-2506,-2537,-2590,-2645,-2679,-2697,-2713,-2730,-2737,
+-2725,-2708,-2696,-2687,-2667,-2631,-2589,-2554,-2529,-2507,-2483,-2459,-2442,-2430,-2410,-2370,-2311,-2248,-2192,-2146,
+-2103,-2061,-2015,-1959,-1897,-1838,-1784,-1719,-1638,-1560,-1506,-1470,-1430,-1379,-1328,-1278,-1214,-1136,-1067,-1021,
+-973,-898,-809,-744,-712,-680,-626,-561,-505,-452,-390,-325,-275,-238,-198,-145,-88,-33,21,77,
+130,185,259,348,424,473,528,632,782,937,1073,1193,1282,1309,1286,1273,1291,1281,1241,1315,
+1651,2152,2501,2502,2289,2133,2113,2095,1973,1794,1635,1481,1292,1084,898,715,504,288,115,-20,
+-166,-326,-448,-507,-537,-579,-641,-717,-821,-965,-1130,-1286,-1415,-1514,-1587,-1645,-1714,-1815,-1937,-2044,
+-2117,-2172,-2239,-2332,-2439,-2540,-2622,-2691,-2756,-2827,-2914,-3018,-3117,-3179,-3184,-3140,-3063,-2970,-2896,-2896,
+-2990,-3111,-3153,-3073,-2930,-2812,-2746,-2690,-2605,-2494,-2381,-2275,-2166,-2042,-1904,-1767,-1646,-1534,-1406,-1250,
+-1076,-910,-760,-620,-484,-363,-262,-168,-55,87,243,379,475,539,592,645,693,739,787,833,
+864,881,906,962,1035,1094,1130,1164,1207,1247,1267,1281,1323,1399,1477,1514,1508,1498,1518,1563,
+1604,1626,1641,1665,1695,1718,1737,1773,1838,1920,1992,2039,2065,2080,2083,2073,2059,2053,2049,2032,
+2003,1982,1978,1975,1950,1906,1860,1820,1792,1794,1831,1865,1847,1776,1706,1678,1706,1712,1719,1707,
+1677,1632,1581,1551,1563,1601,1636,1667,1710,1756,1773,1753,1726,1715,1712,1699,1671,1626,1560,1483,
+1415,1361,1294,1199,1089,979,852,678,459,227,3,-217,-429,-605,-722,-805,-899,-1015,-1115,-1160,
+-1149,-1117,-1089,-1066,-1037,-998,-954,-914,-887,-872,-852,-819,-798,-808,-820,-795,-760,-801,-942,-1087,
+-1133,-1099,-1074,-1085,-1092,-1095,-1149,-1259,-1351,-1391,-1451,-1605,-1807,-1963,-2063,-2177,-2339,-2510,-2649,-2756,
+-2840,-2908,-2984,-3103,-3252,-3385,-3492,-3618,-3799,-4015,-4236,-4459,-4675,-4836,-4905,-4916,-4941,-4997,-5035,-5019,
+-4983,-4981,-5024,-5080,-5127,-5180,-5262,-5363,-5462,-5550,-5640,-5748,-5872,-5996,-6107,-6200,-6279,-6361,-6469,-6608,
+-6761,-6900,-7012,-7111,-7225,-7367,-7529,-7684,-7819,-7950,-8108,-8303,-8509,-8699,-8865,-9016,-9163,-9311,-9448,-9547,
+-9586,-9590,-9620,-9717,-9857,-9982,-10067,-10130,-10194,-10255,-10302,-10332,-10353,-10375,-10399,-10420,-10422,-10395,-10336,-10251,
+-10141,-10009,-9859,-9687,-9488,-9266,-9037,-8804,-8549,-8265,-7972,-7687,-7390,-7066,-6729,-6404,-6092,-5787,-5510,-5280,
+-5081,-4885,-4696,-4519,-4309,-4018,-3697,-3460,-3344,-3245,-3043,-2713,-2307,-1876,-1476,-1179,-1015,-907,-745,-509,
+-271,-67,140,388,645,864,1057,1265,1488,1688,1855,2019,2201,2388,2562,2735,2920,3106,3281,3458,
+3655,3863,4062,4268,4515,4794,5046,5222,5330,5401,5456,5508,5567,5616,5630,5640,5712,5854,5991,6083,
+6197,6383,6579,6721,6874,7101,7243,7028,6462,5926,5788,6033,6384,6664,6895,7111,7270,7347,7393,7444,
+7474,7465,7439,7403,7330,7223,7137,7106,7096,7065,7026,7006,6999,6986,6974,6977,6986,6988,6986,6988,
+6974,6927,6860,6799,6757,6726,6697,6663,6629,6600,6560,6477,6347,6226,6167,6138,6049,5881,5725,5656,
+5641,5614,5584,5604,5655,5667,5620,5565,5537,5498,5411,5297,5203,5129,5034,4906,4777,4682,4612,4534,
+4427,4309,4207,4128,4051,3966,3884,3814,3742,3652,3552,3460,3375,3290,3216,3172,3143,3082,2972,2845,
+2750,2700,2677,2666,2663,2656,2622,2550,2455,2364,2293,2238,2183,2118,2051,1999,1967,1943,1917,1890,
+1864,1837,1806,1778,1760,1747,1728,1703,1676,1643,1596,1536,1487,1463,1453,1437,1416,1403,1408,1420,
+1429,1438,1453,1470,1484,1505,1540,1585,1626,1657,1684,1707,1718,1719,1728,1758,1799,1830,1844,1844,
+1827,1794,1757,1729,1703,1657,1589,1531,1507,1500,1480,1441,1402,1371,1332,1276,1218,1171,1127,1066,
+988,913,857,806,745,672,602,543,484,415,336,257,184,117,52,-10,-71,-131,-194,-263,
+-341,-431,-528,-623,-712,-799,-885,-965,-1031,-1088,-1151,-1220,-1284,-1333,-1379,-1443,-1525,-1603,-1664,-1713,
+-1761,-1813,-1871,-1944,-2037,-2134,-2212,-2264,-2310,-2362,-2408,-2431,-2442,-2468,-2515,-2563,-2592,-2613,-2643,-2677,
+-2690,-2672,-2644,-2628,-2622,-2604,-2566,-2520,-2479,-2449,-2427,-2409,-2393,-2375,-2358,-2342,-2320,-2278,-2215,-2146,
+-2091,-2058,-2032,-1993,-1937,-1877,-1826,-1778,-1716,-1643,-1580,-1540,-1505,-1455,-1396,-1347,-1305,-1244,-1161,-1084,
+-1033,-986,-917,-837,-778,-743,-706,-653,-593,-541,-487,-419,-346,-289,-254,-223,-179,-122,-64,-17,
+18,57,116,200,293,368,423,490,593,725,864,1003,1141,1248,1286,1272,1269,1298,1322,1356,
+1526,1909,2356,2582,2481,2246,2122,2136,2137,2039,1888,1740,1579,1390,1203,1033,837,599,375,215,
+83,-75,-242,-348,-386,-419,-491,-583,-672,-780,-929,-1099,-1249,-1365,-1456,-1535,-1607,-1686,-1783,-1894,
+-1998,-2080,-2146,-2212,-2285,-2364,-2447,-2532,-2621,-2705,-2778,-2846,-2923,-3003,-3063,-3089,-3089,-3067,-3016,-2952,
+-2933,-2996,-3093,-3125,-3047,-2915,-2807,-2739,-2670,-2573,-2457,-2347,-2246,-2142,-2023,-1886,-1748,-1627,-1524,-1412,
+-1265,-1091,-924,-780,-649,-513,-380,-266,-176,-83,38,185,331,448,533,599,653,700,747,797,
+840,860,863,881,935,1006,1062,1097,1129,1170,1203,1213,1217,1249,1321,1401,1447,1448,1434,1441,
+1473,1512,1541,1559,1573,1586,1603,1635,1693,1774,1861,1935,1988,2026,2054,2069,2059,2025,1980,1941,
+1918,1913,1922,1933,1926,1905,1888,1884,1875,1847,1828,1849,1887,1882,1817,1740,1706,1736,1747,1767,
+1771,1753,1719,1687,1678,1692,1698,1674,1646,1652,1682,1690,1663,1636,1633,1638,1621,1578,1521,1455,
+1382,1315,1253,1184,1096,996,890,759,587,386,186,-9,-218,-440,-640,-790,-902,-1011,-1129,-1230,
+-1285,-1295,-1285,-1276,-1275,-1273,-1253,-1208,-1148,-1100,-1072,-1044,-996,-946,-921,-905,-861,-815,-847,-979,
+-1115,-1159,-1137,-1140,-1179,-1186,-1151,-1151,-1229,-1324,-1383,-1457,-1620,-1851,-2057,-2203,-2332,-2472,-2605,-2716,
+-2817,-2915,-3010,-3121,-3269,-3432,-3554,-3633,-3738,-3924,-4171,-4420,-4648,-4845,-4976,-5010,-4977,-4949,-4957,-4976,
+-4975,-4970,-4990,-5033,-5075,-5111,-5161,-5238,-5331,-5423,-5513,-5608,-5715,-5838,-5974,-6114,-6235,-6324,-6396,-6484,
+-6609,-6755,-6893,-7010,-7115,-7231,-7371,-7530,-7685,-7815,-7930,-8067,-8250,-8462,-8661,-8828,-8978,-9133,-9292,-9434,
+-9529,-9569,-9578,-9607,-9688,-9809,-9934,-10034,-10112,-10176,-10232,-10275,-10304,-10322,-10338,-10356,-10367,-10356,-10321,-10265,
+-10189,-10084,-9950,-9800,-9639,-9458,-9249,-9022,-8786,-8535,-8262,-7975,-7687,-7391,-7078,-6752,-6428,-6112,-5813,-5546,
+-5310,-5079,-4837,-4607,-4412,-4223,-3998,-3753,-3553,-3413,-3269,-3043,-2709,-2288,-1824,-1398,-1098,-938,-824,-647,
+-399,-156,41,234,470,732,967,1162,1354,1565,1774,1953,2116,2291,2487,2678,2853,3022,3199,3378,
+3553,3734,3930,4141,4364,4608,4865,5099,5273,5383,5453,5506,5559,5614,5643,5626,5607,5666,5806,5929,
+5966,5981,6074,6243,6431,6646,6888,7008,6801,6309,5884,5834,6116,6469,6732,6927,7103,7247,7355,7450,
+7521,7532,7493,7460,7442,7394,7300,7215,7176,7157,7131,7107,7096,7077,7045,7026,7040,7061,7065,7060,
+7062,7052,7008,6938,6874,6823,6779,6737,6701,6674,6651,6611,6519,6382,6269,6234,6221,6125,5933,5761,
+5695,5692,5672,5641,5655,5698,5700,5645,5588,5560,5524,5447,5351,5265,5182,5074,4940,4807,4696,4612,
+4544,4468,4368,4256,4156,4081,4019,3958,3895,3824,3737,3638,3541,3446,3345,3255,3203,3179,3128,3013,
+2867,2755,2703,2686,2674,2662,2657,2644,2602,2523,2427,2341,2276,2219,2154,2081,2020,1983,1960,1939,
+1921,1908,1892,1862,1822,1785,1757,1732,1709,1689,1664,1622,1566,1517,1487,1469,1452,1437,1434,1439,
+1443,1443,1447,1458,1471,1487,1514,1552,1591,1621,1643,1659,1667,1667,1676,1709,1756,1790,1803,1818,
+1853,1886,1883,1838,1780,1730,1681,1620,1562,1528,1514,1496,1464,1433,1409,1381,1337,1282,1229,1174,
+1108,1033,967,913,859,794,724,657,595,530,456,379,301,224,150,80,15,-48,-111,-169,
+-228,-296,-379,-474,-569,-659,-746,-831,-910,-976,-1033,-1092,-1159,-1225,-1279,-1327,-1383,-1450,-1519,-1584,
+-1647,-1710,-1767,-1821,-1887,-1975,-2069,-2145,-2198,-2245,-2301,-2350,-2374,-2383,-2404,-2447,-2492,-2520,-2542,-2575,
+-2613,-2631,-2615,-2586,-2565,-2553,-2531,-2494,-2451,-2413,-2384,-2363,-2352,-2340,-2320,-2295,-2277,-2266,-2242,-2187,
+-2114,-2053,-2019,-1996,-1960,-1909,-1858,-1816,-1768,-1706,-1644,-1603,-1580,-1546,-1487,-1422,-1376,-1339,-1281,-1200,
+-1121,-1063,-1011,-949,-882,-827,-788,-748,-700,-651,-602,-543,-469,-389,-324,-285,-258,-221,-167,-110,
+-69,-37,6,78,163,240,305,371,456,560,676,801,938,1077,1182,1227,1236,1265,1336,1431,
+1565,1810,2173,2502,2598,2441,2222,2115,2103,2064,1956,1829,1708,1570,1413,1266,1116,915,675,472,
+336,204,28,-135,-213,-231,-278,-390,-525,-650,-783,-943,-1104,-1232,-1330,-1418,-1505,-1587,-1668,-1757,
+-1854,-1950,-2039,-2122,-2200,-2272,-2339,-2405,-2478,-2559,-2640,-2711,-2778,-2847,-2911,-2951,-2969,-2985,-3001,-2987,
+-2940,-2906,-2934,-2999,-3024,-2972,-2881,-2803,-2736,-2648,-2533,-2416,-2315,-2223,-2124,-2006,-1872,-1733,-1608,-1505,
+-1399,-1264,-1104,-949,-819,-695,-555,-405,-277,-184,-103,0,136,281,409,511,585,638,681,731,
+790,839,859,862,882,932,994,1042,1074,1105,1139,1164,1169,1167,1183,1235,1305,1363,1387,1386,
+1384,1398,1427,1459,1482,1491,1494,1511,1560,1640,1735,1824,1895,1945,1978,2005,2026,2027,1996,1947,
+1909,1900,1912,1928,1933,1929,1924,1929,1940,1931,1893,1854,1853,1880,1882,1832,1767,1736,1769,1776,
+1791,1792,1775,1749,1731,1738,1757,1759,1736,1722,1738,1752,1717,1646,1600,1604,1617,1588,1519,1439,
+1362,1287,1214,1144,1070,984,888,775,630,453,272,111,-43,-227,-443,-651,-815,-938,-1046,-1154,
+-1251,-1322,-1367,-1396,-1423,-1456,-1490,-1500,-1462,-1379,-1289,-1226,-1182,-1130,-1069,-1021,-983,-931,-879,-891,
+-986,-1092,-1126,-1110,-1131,-1196,-1225,-1181,-1136,-1168,-1260,-1360,-1478,-1659,-1896,-2125,-2307,-2454,-2584,-2695,
+-2798,-2913,-3039,-3163,-3295,-3456,-3626,-3754,-3835,-3938,-4118,-4353,-4584,-4786,-4952,-5055,-5065,-5004,-4940,-4917,
+-4924,-4937,-4952,-4977,-5005,-5031,-5065,-5121,-5202,-5289,-5376,-5465,-5564,-5674,-5800,-5948,-6112,-6261,-6367,-6437,
+-6507,-6605,-6731,-6863,-6987,-7106,-7228,-7367,-7523,-7679,-7808,-7912,-8032,-8204,-8415,-8616,-8779,-8922,-9077,-9243,
+-9392,-9497,-9555,-9584,-9615,-9671,-9762,-9875,-9988,-10081,-10149,-10200,-10239,-10270,-10295,-10318,-10338,-10342,-10318,-10272,
+-10212,-10132,-10018,-9869,-9711,-9562,-9413,-9240,-9034,-8803,-8550,-8275,-7985,-7689,-7387,-7078,-6765,-6450,-6141,-5852,
+-5594,-5357,-5101,-4812,-4524,-4287,-4113,-3976,-3851,-3721,-3563,-3346,-3054,-2690,-2260,-1795,-1370,-1061,-876,-737,
+-558,-322,-75,142,342,560,805,1049,1260,1447,1645,1858,2059,2230,2395,2579,2771,2947,3112,3287,
+3467,3633,3793,3977,4198,4436,4671,4896,5099,5258,5364,5434,5499,5574,5645,5672,5643,5621,5696,5866,
+6007,6016,5945,5931,6034,6216,6433,6635,6695,6499,6142,5921,6033,6370,6683,6867,6990,7122,7256,7378,
+7489,7563,7561,7512,7481,7475,7436,7343,7248,7195,7176,7174,7190,7205,7184,7131,7099,7117,7148,7153,
+7142,7141,7138,7103,7041,6975,6917,6864,6812,6767,6730,6699,6654,6570,6457,6374,6357,6337,6211,5991,
+5805,5738,5737,5718,5689,5700,5737,5739,5698,5659,5636,5592,5511,5415,5323,5220,5102,4986,4876,4762,
+4648,4560,4495,4420,4320,4219,4142,4082,4021,3955,3886,3807,3717,3625,3531,3420,3305,3226,3196,3165,
+3077,2941,2821,2755,2724,2695,2663,2644,2637,2619,2563,2473,2379,2306,2250,2188,2113,2043,2000,1979,
+1963,1948,1939,1931,1911,1872,1827,1788,1756,1732,1710,1684,1646,1601,1561,1530,1500,1473,1459,1463,
+1472,1474,1470,1468,1468,1473,1491,1525,1566,1601,1628,1650,1664,1658,1642,1645,1685,1738,1769,1778,
+1800,1855,1917,1933,1886,1810,1744,1696,1649,1598,1557,1533,1514,1488,1460,1437,1413,1379,1329,1269,
+1204,1135,1071,1017,966,907,839,771,707,641,569,496,425,351,269,188,115,45,-25,-93,
+-151,-201,-258,-334,-423,-515,-604,-688,-770,-847,-917,-980,-1041,-1104,-1168,-1229,-1284,-1335,-1388,-1446,
+-1513,-1588,-1661,-1722,-1775,-1836,-1917,-2003,-2076,-2131,-2184,-2241,-2289,-2314,-2325,-2348,-2392,-2438,-2466,-2483,
+-2505,-2537,-2560,-2558,-2537,-2513,-2490,-2461,-2425,-2389,-2357,-2329,-2307,-2295,-2287,-2269,-2241,-2220,-2210,-2193,
+-2148,-2080,-2019,-1980,-1952,-1918,-1879,-1844,-1808,-1758,-1694,-1640,-1614,-1599,-1566,-1507,-1448,-1406,-1368,-1312,
+-1239,-1168,-1106,-1049,-993,-940,-894,-850,-806,-764,-721,-670,-605,-527,-445,-375,-329,-302,-268,-215,
+-157,-114,-78,-21,58,134,192,249,329,426,528,635,759,896,1018,1097,1137,1173,1256,1408,
+1615,1857,2126,2380,2523,2482,2312,2156,2088,2051,1962,1829,1706,1598,1477,1349,1233,1099,909,695,
+532,422,288,104,-49,-105,-118,-189,-338,-508,-664,-819,-977,-1114,-1217,-1308,-1405,-1500,-1582,-1658,
+-1740,-1827,-1913,-2000,-2091,-2179,-2256,-2323,-2385,-2448,-2511,-2570,-2625,-2684,-2750,-2808,-2837,-2848,-2870,-2905,
+-2914,-2877,-2831,-2829,-2860,-2869,-2829,-2769,-2716,-2655,-2564,-2454,-2358,-2283,-2204,-2105,-1987,-1857,-1724,-1598,
+-1484,-1373,-1248,-1116,-998,-895,-779,-629,-460,-317,-220,-142,-47,74,208,336,447,532,587,626,
+677,745,807,841,857,884,930,980,1018,1048,1077,1107,1131,1143,1146,1150,1175,1230,1298,1348,
+1365,1362,1369,1398,1441,1476,1491,1494,1515,1571,1657,1749,1831,1894,1932,1947,1956,1972,1982,1969,
+1940,1931,1952,1976,1977,1961,1956,1968,1981,1978,1950,1905,1863,1849,1858,1858,1829,1789,1769,1801,
+1799,1800,1794,1778,1757,1748,1759,1780,1793,1806,1841,1885,1877,1777,1639,1557,1557,1573,1535,1443,
+1340,1252,1173,1097,1022,945,859,759,634,471,283,107,-34,-164,-320,-507,-694,-850,-975,-1084,
+-1188,-1284,-1368,-1435,-1489,-1539,-1593,-1646,-1670,-1634,-1535,-1413,-1317,-1261,-1217,-1162,-1101,-1045,-986,-930,
+-919,-974,-1049,-1076,-1066,-1097,-1190,-1264,-1244,-1169,-1140,-1207,-1340,-1510,-1716,-1949,-2179,-2378,-2542,-2678,
+-2792,-2903,-3032,-3175,-3316,-3463,-3632,-3805,-3939,-4031,-4133,-4288,-4477,-4661,-4824,-4963,-5050,-5053,-4991,-4923,
+-4889,-4888,-4899,-4914,-4934,-4953,-4971,-5004,-5065,-5148,-5235,-5321,-5414,-5518,-5633,-5763,-5917,-6091,-6254,-6378,
+-6460,-6530,-6615,-6725,-6849,-6978,-7103,-7225,-7354,-7501,-7655,-7790,-7898,-8014,-8177,-8378,-8569,-8721,-8854,-9004,
+-9170,-9322,-9437,-9518,-9574,-9612,-9649,-9712,-9814,-9938,-10046,-10120,-10166,-10201,-10233,-10264,-10294,-10317,-10318,-10285,
+-10228,-10156,-10059,-9919,-9745,-9575,-9439,-9324,-9193,-9018,-8796,-8541,-8266,-7982,-7691,-7391,-7086,-6782,-6484,-6193,
+-5918,-5666,-5422,-5154,-4844,-4518,-4236,-4043,-3942,-3885,-3799,-3625,-3357,-3024,-2645,-2223,-1781,-1375,-1055,-822,
+-640,-470,-275,-43,208,444,659,883,1129,1364,1559,1737,1935,2140,2319,2475,2642,2825,3001,3169,
+3350,3538,3704,3851,4024,4246,4483,4698,4886,5056,5195,5291,5360,5438,5532,5612,5641,5624,5638,5763,
+5979,6150,6160,6048,5956,5969,6067,6190,6275,6238,6052,5858,5889,6212,6629,6896,6986,7042,7156,7298,
+7417,7503,7544,7525,7478,7456,7458,7424,7332,7231,7168,7150,7171,7221,7267,7264,7221,7200,7229,7262,
+7256,7228,7214,7209,7180,7122,7057,7004,6959,6913,6863,6812,6765,6714,6639,6545,6477,6453,6409,6269,
+6059,5895,5831,5806,5757,5710,5717,5756,5772,5759,5748,5730,5674,5580,5477,5370,5243,5116,5021,4947,
+4847,4715,4599,4523,4460,4380,4295,4219,4142,4057,3979,3917,3855,3777,3694,3609,3500,3368,3258,3209,
+3188,3129,3013,2886,2797,2743,2699,2657,2627,2613,2600,2562,2493,2411,2343,2293,2240,2168,2096,2048,
+2024,2004,1979,1962,1957,1950,1923,1877,1828,1790,1765,1742,1709,1668,1633,1609,1585,1550,1511,1488,
+1486,1491,1494,1495,1496,1492,1487,1500,1534,1576,1611,1642,1672,1688,1674,1645,1638,1668,1716,1747,
+1758,1776,1819,1869,1887,1854,1790,1732,1695,1664,1622,1579,1546,1524,1501,1474,1450,1428,1399,1355,
+1295,1228,1164,1112,1068,1018,954,882,815,751,681,607,539,476,402,316,230,155,83,5,
+-68,-127,-173,-226,-296,-377,-463,-547,-627,-702,-775,-848,-918,-981,-1041,-1105,-1173,-1237,-1291,-1337,
+-1389,-1457,-1536,-1610,-1669,-1720,-1778,-1851,-1928,-1998,-2058,-2115,-2171,-2218,-2249,-2271,-2300,-2343,-2387,-2415,
+-2424,-2432,-2452,-2478,-2493,-2489,-2468,-2439,-2407,-2372,-2337,-2305,-2272,-2244,-2226,-2217,-2205,-2185,-2163,-2145,
+-2123,-2082,-2025,-1972,-1934,-1905,-1876,-1849,-1826,-1796,-1746,-1684,-1637,-1615,-1598,-1563,-1512,-1465,-1425,-1379,
+-1321,-1260,-1201,-1141,-1082,-1036,-1004,-972,-928,-880,-839,-798,-743,-672,-593,-510,-431,-376,-347,-316,
+-263,-202,-156,-114,-50,29,94,143,207,301,401,494,603,743,882,978,1025,1058,1125,1267,
+1512,1839,2167,2399,2478,2408,2252,2108,2049,2057,2044,1950,1802,1657,1525,1394,1273,1173,1055,886,
+700,559,451,310,129,-9,-63,-95,-191,-353,-530,-694,-851,-993,-1101,-1187,-1283,-1392,-1491,-1570,
+-1650,-1739,-1828,-1910,-1995,-2087,-2178,-2254,-2317,-2375,-2432,-2484,-2525,-2559,-2596,-2643,-2691,-2727,-2756,-2800,
+-2852,-2872,-2836,-2779,-2750,-2746,-2722,-2662,-2597,-2551,-2506,-2443,-2374,-2324,-2280,-2211,-2103,-1976,-1850,-1728,
+-1606,-1486,-1368,-1256,-1161,-1086,-1013,-904,-741,-555,-400,-297,-219,-133,-31,80,200,326,437,509,
+552,601,675,751,804,838,876,920,960,993,1022,1050,1076,1103,1132,1151,1153,1160,1202,1274,
+1336,1361,1366,1388,1440,1505,1560,1590,1604,1625,1671,1736,1807,1872,1923,1949,1945,1935,1944,1963,
+1967,1960,1980,2031,2065,2046,2002,1985,1999,2006,1982,1941,1906,1882,1867,1858,1849,1834,1814,1801,
+1823,1813,1810,1807,1798,1784,1778,1785,1800,1820,1855,1915,1962,1924,1777,1598,1495,1489,1502,1454,
+1342,1216,1110,1023,945,871,796,712,613,487,325,140,-33,-177,-306,-447,-605,-764,-910,-1046,
+-1171,-1287,-1388,-1471,-1535,-1589,-1644,-1703,-1749,-1760,-1717,-1623,-1506,-1406,-1346,-1305,-1247,-1163,-1075,-1002,
+-949,-934,-972,-1036,-1072,-1078,-1120,-1238,-1361,-1378,-1285,-1194,-1213,-1352,-1554,-1775,-2001,-2222,-2423,-2598,
+-2748,-2880,-3005,-3134,-3273,-3424,-3592,-3775,-3945,-4072,-4161,-4253,-4375,-4516,-4657,-4790,-4907,-4979,-4983,-4940,
+-4895,-4873,-4866,-4863,-4870,-4889,-4912,-4931,-4958,-5008,-5082,-5169,-5261,-5362,-5471,-5590,-5723,-5875,-6040,-6201,
+-6335,-6440,-6531,-6627,-6736,-6858,-6986,-7108,-7221,-7334,-7466,-7614,-7755,-7875,-7997,-8154,-8340,-8517,-8660,-8789,
+-8935,-9095,-9241,-9358,-9451,-9522,-9566,-9595,-9648,-9750,-9884,-10002,-10079,-10124,-10159,-10193,-10226,-10255,-10273,-10266,
+-10226,-10162,-10078,-9962,-9798,-9605,-9428,-9300,-9205,-9098,-8944,-8733,-8484,-8222,-7959,-7690,-7405,-7107,-6811,-6530,
+-6264,-6006,-5753,-5495,-5217,-4908,-4576,-4260,-4015,-3868,-3781,-3668,-3473,-3207,-2903,-2562,-2176,-1774,-1408,-1091,
+-806,-559,-378,-230,-33,240,521,753,965,1212,1469,1674,1831,1997,2187,2366,2523,2686,2867,3044,
+3211,3395,3593,3768,3914,4077,4287,4510,4703,4866,5015,5142,5232,5305,5391,5487,5555,5576,5583,5647,
+5813,6037,6203,6220,6114,5987,5903,5854,5812,5749,5632,5480,5443,5693,6204,6710,6970,7014,7043,7168,
+7326,7429,7465,7455,7414,7370,7358,7373,7360,7297,7219,7168,7152,7172,7223,7279,7301,7293,7301,7341,
+7369,7350,7309,7287,7276,7240,7171,7098,7047,7016,6983,6936,6880,6828,6777,6705,6611,6527,6468,6394,
+6264,6109,6002,5951,5893,5801,5733,5736,5778,5803,5807,5810,5795,5734,5638,5538,5426,5286,5147,5054,
+4993,4905,4773,4641,4544,4470,4401,4337,4267,4173,4063,3980,3937,3896,3825,3738,3654,3552,3418,3291,
+3220,3193,3144,3036,2898,2780,2705,2663,2636,2612,2587,2560,2529,2487,2434,2383,2340,2295,2234,2166,
+2115,2082,2050,2012,1984,1980,1985,1969,1921,1862,1817,1794,1774,1739,1694,1660,1646,1633,1602,1562,
+1531,1516,1507,1503,1510,1523,1525,1518,1521,1544,1577,1610,1643,1676,1691,1677,1649,1640,1660,1693,
+1719,1731,1738,1749,1768,1782,1774,1742,1705,1679,1656,1620,1576,1538,1512,1490,1465,1442,1423,1399,
+1360,1308,1250,1198,1155,1115,1064,997,925,856,787,713,639,576,519,447,359,271,196,122,
+43,-32,-91,-140,-194,-261,-336,-415,-496,-573,-643,-709,-779,-851,-916,-974,-1037,-1111,-1184,-1244,
+-1291,-1343,-1411,-1489,-1561,-1619,-1668,-1722,-1785,-1854,-1921,-1983,-2041,-2095,-2143,-2185,-2221,-2254,-2291,-2330,
+-2360,-2371,-2371,-2380,-2404,-2428,-2432,-2418,-2395,-2368,-2335,-2294,-2252,-2213,-2180,-2154,-2139,-2130,-2118,-2098,
+-2070,-2037,-1996,-1952,-1911,-1880,-1857,-1836,-1817,-1797,-1766,-1721,-1672,-1637,-1617,-1592,-1554,-1513,-1475,-1432,
+-1373,-1312,-1262,-1215,-1157,-1100,-1069,-1063,-1049,-1008,-958,-918,-879,-824,-754,-675,-581,-481,-405,-370,
+-347,-303,-248,-204,-161,-96,-20,37,87,166,272,371,463,590,753,891,960,988,1031,1128,
+1312,1628,2048,2422,2578,2476,2236,2024,1930,1956,2035,2075,2019,1880,1706,1534,1378,1254,1163,1066,
+925,756,601,463,306,137,8,-62,-127,-237,-387,-542,-693,-841,-968,-1065,-1154,-1262,-1376,-1469,
+-1549,-1641,-1748,-1846,-1928,-2016,-2115,-2210,-2282,-2335,-2380,-2425,-2471,-2510,-2538,-2554,-2569,-2597,-2639,-2698,
+-2772,-2840,-2863,-2824,-2761,-2716,-2685,-2630,-2542,-2457,-2407,-2382,-2363,-2348,-2342,-2320,-2251,-2130,-1991,-1863,
+-1747,-1632,-1513,-1401,-1307,-1238,-1188,-1128,-1019,-851,-661,-501,-394,-317,-246,-171,-87,23,169,316,
+419,474,527,605,695,765,815,859,903,940,971,1001,1024,1043,1071,1114,1148,1155,1156,1193,
+1264,1326,1356,1381,1436,1519,1605,1674,1722,1753,1776,1800,1833,1874,1919,1959,1975,1961,1944,1953,
+1979,1989,1988,2019,2085,2129,2102,2036,1998,2001,1999,1968,1933,1919,1915,1900,1876,1857,1847,1836,
+1823,1832,1823,1825,1830,1828,1817,1806,1803,1810,1824,1851,1890,1907,1848,1705,1547,1462,1459,1460,
+1390,1249,1087,946,836,750,678,611,538,454,348,216,65,-83,-223,-362,-509,-662,-815,-971,
+-1129,-1280,-1411,-1516,-1591,-1639,-1684,-1744,-1809,-1842,-1825,-1770,-1698,-1614,-1530,-1463,-1404,-1316,-1184,-1044,
+-949,-916,-933,-990,-1067,-1127,-1161,-1223,-1357,-1503,-1540,-1437,-1305,-1284,-1407,-1610,-1831,-2054,-2274,-2475,
+-2648,-2806,-2957,-3093,-3214,-3338,-3495,-3688,-3885,-4041,-4142,-4216,-4298,-4404,-4521,-4638,-4752,-4849,-4900,-4899,
+-4875,-4861,-4857,-4846,-4828,-4827,-4852,-4886,-4910,-4927,-4958,-5018,-5104,-5205,-5311,-5420,-5535,-5664,-5807,-5959,
+-6108,-6248,-6375,-6494,-6610,-6731,-6857,-6984,-7103,-7209,-7311,-7425,-7556,-7690,-7815,-7943,-8095,-8270,-8439,-8584,
+-8718,-8865,-9021,-9162,-9276,-9367,-9435,-9477,-9508,-9569,-9682,-9822,-9940,-10014,-10060,-10102,-10145,-10180,-10205,-10213,
+-10195,-10151,-10086,-9999,-9874,-9701,-9507,-9334,-9206,-9107,-8997,-8845,-8643,-8411,-8172,-7936,-7691,-7421,-7126,-6832,
+-6561,-6315,-6076,-5823,-5547,-5254,-4946,-4618,-4281,-3977,-3747,-3567,-3380,-3160,-2941,-2729,-2474,-2141,-1787,-1481,
+-1203,-886,-556,-314,-172,-10,253,560,814,1028,1273,1539,1752,1900,2043,2214,2389,2553,2731,2928,
+3111,3272,3443,3633,3807,3949,4100,4288,4491,4674,4836,4988,5116,5210,5294,5391,5477,5518,5523,5550,
+5648,5809,5981,6094,6115,6055,5940,5778,5571,5358,5179,5033,4936,4998,5357,5965,6551,6875,6961,7016,
+7154,7308,7380,7369,7326,7280,7244,7237,7262,7288,7290,7278,7271,7270,7276,7302,7343,7372,7379,7388,
+7410,7421,7403,7376,7363,7350,7303,7217,7130,7074,7045,7016,6971,6918,6873,6830,6766,6672,6573,6482,
+6380,6257,6144,6079,6039,5967,5864,5799,5806,5844,5860,5858,5858,5844,5786,5698,5605,5499,5364,5221,
+5110,5027,4931,4806,4675,4558,4461,4388,4337,4278,4179,4062,3987,3965,3941,3871,3774,3682,3580,3450,
+3318,3234,3195,3145,3040,2893,2751,2656,2621,2623,2618,2585,2537,2502,2483,2459,2422,2380,2336,2284,
+2224,2170,2128,2086,2042,2011,2008,2016,2004,1954,1888,1841,1822,1810,1779,1731,1692,1674,1662,1640,
+1610,1583,1560,1535,1517,1521,1542,1556,1553,1546,1553,1572,1599,1628,1653,1658,1643,1628,1629,1643,
+1661,1678,1692,1695,1688,1688,1700,1710,1701,1677,1655,1632,1597,1550,1508,1479,1456,1434,1416,1402,
+1382,1348,1304,1261,1223,1188,1148,1097,1032,962,892,818,736,657,593,538,472,389,305,229,
+154,77,5,-50,-100,-157,-225,-298,-375,-457,-534,-599,-659,-726,-795,-858,-915,-980,-1058,-1134,
+-1197,-1248,-1302,-1369,-1445,-1518,-1578,-1628,-1676,-1729,-1788,-1851,-1913,-1969,-2019,-2069,-2121,-2166,-2199,-2229,
+-2268,-2309,-2336,-2343,-2347,-2360,-2373,-2369,-2355,-2343,-2330,-2300,-2249,-2197,-2156,-2122,-2089,-2063,-2050,-2045,
+-2029,-1997,-1955,-1914,-1878,-1847,-1825,-1809,-1797,-1780,-1754,-1719,-1681,-1651,-1632,-1615,-1587,-1551,-1518,-1485,
+-1436,-1369,-1309,-1268,-1228,-1169,-1113,-1095,-1108,-1107,-1070,-1023,-989,-957,-910,-848,-770,-660,-526,-415,
+-364,-347,-323,-287,-255,-213,-145,-72,-21,28,114,226,330,439,595,775,899,945,982,1064,
+1190,1390,1740,2213,2593,2654,2408,2084,1890,1856,1915,2004,2070,2057,1940,1756,1564,1399,1273,1187,
+1116,1018,871,694,512,336,176,49,-48,-143,-255,-379,-508,-646,-785,-909,-1014,-1124,-1248,-1360,
+-1446,-1527,-1631,-1744,-1841,-1926,-2025,-2140,-2245,-2323,-2376,-2412,-2438,-2469,-2512,-2553,-2568,-2563,-2565,-2599,
+-2663,-2741,-2803,-2819,-2785,-2729,-2686,-2651,-2592,-2500,-2408,-2350,-2330,-2332,-2347,-2362,-2349,-2281,-2162,-2025,
+-1895,-1775,-1657,-1539,-1435,-1352,-1289,-1233,-1160,-1049,-897,-727,-577,-468,-392,-334,-285,-228,-131,18,
+182,304,375,439,532,636,717,771,817,860,896,927,955,974,986,1012,1059,1101,1112,1117,
+1157,1230,1296,1344,1402,1492,1591,1670,1733,1795,1850,1882,1895,1907,1930,1962,1992,2001,1987,1970,
+1978,2002,2008,2002,2025,2089,2137,2114,2042,1989,1978,1975,1953,1934,1933,1934,1915,1884,1862,1854,
+1846,1832,1842,1840,1846,1852,1846,1830,1810,1797,1796,1801,1804,1799,1772,1708,1609,1514,1469,1468,
+1448,1351,1172,962,772,628,528,458,404,354,298,225,133,32,-70,-185,-325,-490,-663,-838,
+-1018,-1198,-1364,-1502,-1607,-1673,-1709,-1750,-1824,-1907,-1940,-1904,-1837,-1778,-1719,-1645,-1566,-1480,-1351,-1156,
+-953,-834,-836,-915,-1021,-1125,-1210,-1277,-1359,-1490,-1620,-1648,-1547,-1418,-1392,-1497,-1676,-1885,-2116,-2353,
+-2559,-2722,-2873,-3029,-3173,-3289,-3407,-3572,-3779,-3967,-4089,-4155,-4217,-4307,-4419,-4533,-4639,-4739,-4814,-4846,
+-4839,-4825,-4825,-4826,-4809,-4783,-4779,-4809,-4847,-4870,-4879,-4901,-4957,-5048,-5157,-5264,-5363,-5463,-5578,-5711,
+-5855,-6001,-6146,-6288,-6424,-6557,-6689,-6823,-6953,-7074,-7182,-7282,-7382,-7487,-7596,-7710,-7838,-7989,-8158,-8327,
+-8480,-8626,-8778,-8936,-9081,-9198,-9285,-9342,-9375,-9409,-9483,-9608,-9747,-9857,-9926,-9978,-10031,-10085,-10127,-10152,
+-10157,-10137,-10093,-10030,-9943,-9817,-9648,-9465,-9302,-9173,-9058,-8927,-8764,-8571,-8362,-8149,-7930,-7693,-7424,-7128,
+-6830,-6558,-6321,-6099,-5853,-5568,-5256,-4937,-4605,-4257,-3921,-3629,-3369,-3107,-2865,-2699,-2589,-2424,-2141,-1829,
+-1594,-1390,-1086,-685,-338,-134,26,266,567,835,1058,1298,1555,1770,1925,2069,2233,2398,2564,2758,
+2979,3178,3338,3490,3655,3809,3939,4073,4241,4427,4609,4784,4948,5079,5179,5278,5385,5461,5475,5469,
+5515,5628,5758,5853,5912,5951,5964,5903,5717,5417,5103,4873,4741,4678,4741,5055,5625,6242,6666,6864,
+6980,7117,7234,7267,7240,7213,7199,7180,7165,7183,7238,7311,7385,7445,7477,7486,7497,7524,7542,7522,
+7472,7427,7406,7405,7415,7422,7409,7360,7283,7209,7163,7137,7105,7057,7003,6959,6921,6869,6795,6711,
+6618,6502,6363,6235,6149,6088,6017,5941,5904,5916,5937,5936,5927,5928,5918,5867,5780,5679,5572,5450,
+5318,5192,5075,4958,4838,4717,4593,4477,4394,4346,4291,4194,4081,4014,3997,3974,3909,3818,3728,3624,
+3492,3358,3268,3225,3180,3090,2951,2797,2681,2639,2654,2665,2631,2570,2528,2517,2506,2470,2418,2364,
+2313,2259,2205,2159,2116,2076,2046,2035,2034,2018,1974,1916,1872,1856,1850,1826,1781,1734,1702,1680,
+1659,1639,1622,1602,1572,1544,1539,1558,1576,1576,1563,1556,1563,1585,1611,1623,1612,1592,1586,1597,
+1610,1617,1629,1647,1657,1655,1654,1667,1677,1668,1646,1628,1608,1573,1523,1479,1448,1423,1400,1385,
+1375,1357,1324,1286,1255,1229,1200,1163,1115,1056,991,923,847,757,667,594,536,478,406,327,
+250,174,101,38,-12,-62,-120,-186,-260,-341,-426,-502,-564,-622,-686,-753,-814,-873,-941,-1019,
+-1093,-1156,-1209,-1264,-1327,-1399,-1473,-1539,-1592,-1633,-1674,-1724,-1783,-1843,-1895,-1941,-1989,-2044,-2093,-2128,
+-2159,-2206,-2264,-2310,-2331,-2335,-2337,-2329,-2305,-2281,-2275,-2276,-2251,-2194,-2134,-2094,-2063,-2025,-1987,-1970,
+-1972,-1966,-1935,-1889,-1847,-1815,-1789,-1770,-1762,-1755,-1738,-1705,-1667,-1638,-1622,-1613,-1599,-1574,-1546,-1521,
+-1491,-1441,-1378,-1325,-1292,-1254,-1193,-1135,-1121,-1137,-1137,-1104,-1067,-1044,-1021,-983,-935,-869,-755,-596,
+-450,-370,-346,-334,-319,-299,-257,-183,-110,-66,-22,62,177,290,423,603,779,874,912,994,
+1144,1306,1505,1859,2348,2698,2652,2294,1951,1827,1855,1901,1939,1986,1993,1900,1732,1559,1413,1291,
+1202,1155,1113,1010,831,618,423,262,128,9,-100,-208,-320,-444,-580,-714,-837,-956,-1087,-1222,
+-1333,-1418,-1504,-1609,-1715,-1807,-1901,-2017,-2142,-2253,-2346,-2426,-2476,-2490,-2495,-2527,-2580,-2614,-2612,-2601,
+-2611,-2643,-2680,-2707,-2714,-2696,-2664,-2634,-2609,-2571,-2507,-2428,-2355,-2306,-2288,-2296,-2312,-2302,-2245,-2147,
+-2031,-1914,-1795,-1669,-1543,-1432,-1343,-1265,-1184,-1093,-989,-870,-740,-612,-505,-425,-371,-335,-298,-225,
+-104,34,143,220,306,422,539,619,664,703,746,784,814,841,863,880,909,959,1005,1026,
+1042,1090,1170,1252,1329,1426,1538,1624,1668,1708,1777,1859,1912,1932,1946,1971,2000,2022,2029,2020,
+2006,2004,2012,2011,2001,2013,2061,2102,2084,2018,1960,1943,1943,1937,1931,1931,1926,1903,1875,1861,
+1857,1851,1842,1859,1864,1870,1868,1854,1832,1806,1784,1775,1772,1754,1709,1645,1579,1520,1474,1449,
+1437,1398,1285,1085,839,611,440,329,261,223,200,175,128,61,-5,-65,-146,-277,-457,-656,
+-857,-1056,-1245,-1412,-1550,-1656,-1721,-1751,-1787,-1867,-1967,-2016,-1983,-1909,-1842,-1778,-1700,-1617,-1525,-1373,
+-1129,-870,-731,-767,-912,-1068,-1194,-1293,-1379,-1472,-1581,-1669,-1676,-1598,-1520,-1526,-1615,-1750,-1930,-2172,
+-2438,-2656,-2806,-2938,-3089,-3239,-3366,-3498,-3673,-3869,-4018,-4089,-4124,-4188,-4299,-4426,-4537,-4630,-4710,-4771,
+-4797,-4794,-4784,-4778,-4768,-4744,-4722,-4725,-4752,-4780,-4793,-4801,-4827,-4891,-4990,-5104,-5211,-5300,-5384,-5482,
+-5606,-5749,-5902,-6056,-6205,-6347,-6486,-6627,-6767,-6900,-7022,-7136,-7241,-7334,-7416,-7499,-7598,-7723,-7871,-8036,
+-8203,-8363,-8518,-8678,-8842,-8997,-9124,-9211,-9256,-9278,-9313,-9395,-9524,-9660,-9764,-9835,-9896,-9958,-10017,-10063,
+-10095,-10108,-10093,-10049,-9981,-9888,-9758,-9594,-9423,-9274,-9148,-9025,-8880,-8710,-8525,-8337,-8142,-7927,-7682,-7409,
+-7117,-6824,-6550,-6312,-6097,-5864,-5582,-5261,-4926,-4584,-4233,-3894,-3587,-3291,-2984,-2717,-2572,-2520,-2412,-2166,
+-1888,-1715,-1599,-1353,-927,-479,-165,48,282,564,835,1073,1310,1547,1750,1915,2075,2239,2391,2544,
+2739,2973,3190,3360,3506,3653,3791,3913,4044,4203,4380,4557,4734,4896,5020,5116,5222,5331,5391,5383,
+5380,5456,5595,5709,5762,5798,5865,5941,5943,5799,5527,5235,5034,4932,4868,4849,4995,5387,5920,6387,
+6682,6860,6993,7076,7096,7098,7133,7181,7186,7150,7133,7182,7291,7418,7528,7598,7635,7669,7714,7732,
+7670,7537,7408,7354,7375,7419,7436,7420,7389,7364,7353,7351,7346,7322,7276,7219,7166,7120,7073,7021,
+6962,6888,6779,6625,6451,6294,6174,6090,6037,6013,6006,5999,5991,5996,6013,6015,5972,5880,5762,5639,
+5520,5399,5269,5131,5002,4891,4784,4664,4544,4455,4399,4334,4234,4129,4060,4023,3982,3924,3864,3800,
+3706,3572,3437,3345,3301,3266,3201,3086,2937,2804,2736,2735,2747,2721,2663,2615,2594,2573,2526,2457,
+2389,2330,2277,2227,2185,2150,2117,2083,2055,2034,2013,1982,1943,1910,1892,1883,1862,1823,1776,1734,
+1699,1670,1649,1637,1625,1603,1578,1569,1577,1589,1586,1569,1553,1554,1575,1601,1606,1583,1555,1547,
+1559,1571,1579,1592,1611,1624,1626,1629,1638,1638,1621,1605,1601,1594,1561,1511,1467,1436,1406,1375,
+1356,1347,1332,1301,1265,1238,1219,1195,1163,1121,1067,1006,941,868,778,681,597,534,478,414,
+340,262,188,121,64,14,-35,-91,-154,-227,-313,-400,-473,-531,-586,-650,-716,-777,-838,-910,
+-986,-1056,-1118,-1175,-1231,-1287,-1350,-1421,-1492,-1547,-1583,-1613,-1655,-1710,-1768,-1819,-1861,-1904,-1953,-2002,
+-2044,-2087,-2142,-2208,-2262,-2291,-2300,-2298,-2278,-2239,-2205,-2199,-2204,-2183,-2126,-2065,-2024,-1993,-1950,-1907,
+-1892,-1905,-1909,-1880,-1830,-1786,-1756,-1735,-1720,-1715,-1711,-1693,-1659,-1624,-1602,-1591,-1584,-1571,-1553,-1535,
+-1516,-1487,-1442,-1389,-1350,-1324,-1286,-1224,-1165,-1144,-1152,-1148,-1122,-1098,-1085,-1065,-1030,-997,-958,-871,
+-720,-561,-454,-405,-383,-369,-350,-302,-222,-149,-106,-58,34,151,268,409,592,747,813,859,
+1004,1234,1436,1634,1984,2466,2760,2601,2148,1805,1756,1838,1861,1840,1857,1873,1805,1672,1548,1447,
+1337,1237,1199,1198,1141,978,756,547,378,235,110,2,-104,-228,-374,-524,-657,-777,-902,-1041,
+-1176,-1286,-1376,-1470,-1574,-1675,-1773,-1887,-2014,-2127,-2222,-2326,-2447,-2538,-2560,-2543,-2552,-2603,-2654,-2671,
+-2663,-2651,-2637,-2616,-2604,-2610,-2620,-2615,-2593,-2571,-2556,-2531,-2473,-2383,-2289,-2228,-2213,-2218,-2203,-2147,
+-2061,-1967,-1876,-1781,-1670,-1543,-1418,-1307,-1208,-1111,-1015,-926,-841,-747,-639,-534,-451,-395,-360,-330,
+-282,-208,-123,-51,20,125,261,381,444,471,504,555,602,635,664,696,731,775,833,889,
+929,964,1024,1109,1203,1308,1432,1548,1609,1616,1634,1709,1812,1887,1925,1957,1994,2025,2043,2054,
+2057,2047,2028,2014,2006,2001,2009,2036,2060,2044,1990,1937,1913,1912,1916,1917,1915,1905,1888,1873,
+1867,1865,1861,1859,1876,1888,1890,1879,1861,1840,1811,1778,1755,1740,1708,1640,1552,1476,1421,1376,
+1335,1303,1262,1165,981,738,504,329,216,146,112,106,103,72,13,-42,-85,-147,-268,-450,
+-659,-868,-1070,-1260,-1428,-1569,-1682,-1757,-1789,-1813,-1876,-1971,-2035,-2025,-1957,-1873,-1788,-1707,-1642,-1571,
+-1419,-1152,-866,-718,-776,-957,-1139,-1269,-1366,-1456,-1546,-1629,-1678,-1674,-1641,-1638,-1684,-1748,-1821,-1956,
+-2195,-2483,-2716,-2863,-2982,-3125,-3284,-3436,-3598,-3781,-3946,-4038,-4060,-4079,-4156,-4283,-4412,-4510,-4581,-4641,
+-4691,-4724,-4734,-4726,-4707,-4682,-4659,-4653,-4669,-4691,-4702,-4702,-4710,-4745,-4815,-4914,-5029,-5139,-5232,-5313,
+-5402,-5517,-5658,-5815,-5977,-6132,-6278,-6420,-6565,-6707,-6835,-6951,-7064,-7175,-7272,-7349,-7421,-7513,-7633,-7775,
+-7929,-8090,-8253,-8416,-8583,-8751,-8912,-9044,-9131,-9171,-9188,-9225,-9311,-9439,-9570,-9675,-9756,-9826,-9892,-9946,
+-9991,-10029,-10051,-10040,-9990,-9908,-9797,-9657,-9495,-9334,-9197,-9085,-8973,-8835,-8667,-8487,-8307,-8118,-7899,-7647,
+-7377,-7106,-6834,-6569,-6327,-6111,-5886,-5614,-5293,-4951,-4604,-4258,-3929,-3629,-3328,-3005,-2712,-2544,-2486,-2398,
+-2186,-1944,-1813,-1756,-1581,-1188,-694,-274,32,295,565,831,1082,1324,1544,1730,1899,2073,2242,2383,
+2520,2703,2929,3147,3327,3482,3629,3767,3902,4053,4224,4395,4559,4719,4864,4974,5065,5170,5269,5302,
+5272,5278,5396,5577,5713,5770,5808,5874,5946,5964,5893,5748,5590,5481,5424,5356,5254,5211,5349,5671,
+6045,6347,6557,6707,6806,6862,6926,7034,7145,7180,7132,7077,7088,7169,7280,7385,7472,7550,7639,7736,
+7787,7724,7553,7379,7308,7345,7403,7416,7398,7404,7455,7524,7578,7601,7596,7568,7524,7476,7431,7384,
+7329,7265,7193,7104,6972,6784,6567,6377,6254,6186,6133,6074,6030,6026,6055,6085,6090,6055,5976,5858,
+5724,5594,5467,5328,5184,5059,4962,4867,4754,4639,4549,4476,4390,4289,4199,4131,4066,3995,3938,3908,
+3877,3801,3679,3552,3461,3409,3374,3324,3236,3107,2970,2875,2840,2835,2816,2772,2724,2683,2638,2576,
+2497,2417,2346,2288,2243,2211,2185,2153,2111,2066,2028,2002,1983,1961,1936,1915,1897,1876,1845,1805,
+1765,1726,1690,1660,1644,1635,1627,1615,1607,1607,1608,1600,1580,1561,1558,1576,1599,1600,1573,1539,
+1525,1531,1544,1560,1579,1593,1594,1586,1586,1591,1586,1569,1564,1576,1580,1551,1504,1465,1436,1398,
+1356,1329,1322,1314,1288,1253,1224,1203,1182,1154,1114,1060,998,936,871,791,698,610,542,485,
+424,353,279,207,144,87,33,-21,-77,-135,-206,-292,-379,-449,-502,-555,-616,-678,-737,-801,
+-875,-949,-1015,-1077,-1142,-1202,-1254,-1306,-1372,-1442,-1497,-1530,-1555,-1590,-1640,-1696,-1747,-1789,-1825,-1865,
+-1913,-1964,-2018,-2075,-2131,-2174,-2202,-2218,-2224,-2208,-2170,-2134,-2124,-2126,-2107,-2057,-2001,-1961,-1926,-1880,
+-1839,-1830,-1848,-1853,-1821,-1766,-1720,-1695,-1681,-1673,-1670,-1663,-1644,-1615,-1589,-1574,-1564,-1552,-1541,-1533,
+-1524,-1506,-1474,-1431,-1390,-1364,-1346,-1313,-1254,-1193,-1163,-1160,-1157,-1142,-1128,-1117,-1092,-1057,-1038,-1029,
+-983,-873,-732,-617,-542,-492,-457,-422,-364,-281,-207,-155,-85,27,150,257,386,555,690,736,
+786,970,1249,1481,1688,2042,2513,2756,2515,2000,1662,1659,1769,1779,1733,1747,1784,1749,1660,1594,
+1546,1458,1350,1299,1299,1253,1097,878,669,497,355,240,141,28,-123,-301,-468,-607,-732,-864,
+-1002,-1128,-1234,-1333,-1439,-1547,-1651,-1761,-1883,-1997,-2075,-2138,-2242,-2394,-2526,-2575,-2562,-2561,-2603,-2656,
+-2685,-2688,-2673,-2637,-2589,-2564,-2584,-2621,-2629,-2601,-2572,-2572,-2580,-2548,-2452,-2329,-2235,-2193,-2175,-2133,
+-2050,-1941,-1843,-1774,-1726,-1666,-1569,-1442,-1314,-1204,-1110,-1024,-946,-874,-794,-697,-596,-512,-455,-418,
+-386,-351,-309,-266,-223,-160,-54,80,185,229,243,283,353,418,457,487,529,581,640,707,
+777,841,900,969,1051,1146,1259,1391,1504,1551,1547,1563,1644,1755,1840,1891,1939,1990,2025,2043,
+2063,2083,2080,2048,2014,1999,2001,2009,2022,2034,2026,1991,1944,1908,1893,1892,1895,1897,1894,1888,
+1883,1880,1875,1871,1876,1887,1899,1898,1880,1857,1834,1798,1750,1706,1675,1633,1556,1457,1367,1292,
+1216,1141,1093,1070,1021,890,690,485,329,220,138,85,69,71,52,3,-49,-93,-156,-275,
+-449,-646,-842,-1037,-1229,-1402,-1548,-1668,-1756,-1804,-1827,-1866,-1935,-2001,-2016,-1967,-1877,-1782,-1714,-1676,
+-1619,-1464,-1196,-924,-797,-865,-1042,-1214,-1334,-1424,-1512,-1602,-1674,-1709,-1712,-1724,-1775,-1841,-1869,-1876,
+-1958,-2175,-2467,-2715,-2879,-3009,-3156,-3323,-3501,-3690,-3873,-3998,-4036,-4031,-4058,-4147,-4272,-4385,-4465,-4519,
+-4561,-4601,-4635,-4653,-4646,-4617,-4586,-4571,-4582,-4607,-4626,-4629,-4623,-4632,-4668,-4733,-4823,-4932,-5048,-5154,
+-5246,-5338,-5446,-5579,-5732,-5895,-6056,-6208,-6356,-6502,-6640,-6759,-6864,-6972,-7087,-7195,-7283,-7360,-7448,-7559,
+-7687,-7827,-7981,-8148,-8321,-8494,-8662,-8817,-8945,-9031,-9075,-9102,-9152,-9246,-9372,-9496,-9599,-9685,-9761,-9824,
+-9871,-9909,-9947,-9973,-9963,-9907,-9809,-9681,-9532,-9371,-9218,-9094,-8997,-8906,-8787,-8628,-8445,-8260,-8067,-7846,
+-7595,-7338,-7093,-6850,-6600,-6359,-6139,-5916,-5649,-5333,-4994,-4654,-4316,-3995,-3700,-3409,-3090,-2781,-2564,-2455,
+-2357,-2185,-1990,-1875,-1824,-1689,-1361,-891,-416,-21,292,560,813,1067,1313,1526,1705,1883,2074,2252,
+2393,2528,2699,2904,3102,3275,3433,3585,3731,3885,4066,4256,4426,4571,4713,4846,4957,5059,5172,5260,
+5264,5208,5216,5365,5589,5762,5847,5890,5916,5909,5868,5834,5826,5829,5829,5824,5783,5671,5525,5453,
+5529,5718,5934,6132,6310,6459,6575,6691,6840,6992,7072,7060,7013,6991,6999,7021,7060,7137,7257,7411,
+7571,7680,7669,7535,7377,7309,7346,7404,7417,7414,7460,7565,7677,7749,7779,7789,7790,7784,7774,7760,
+7728,7657,7554,7456,7385,7303,7149,6919,6684,6516,6403,6291,6169,6092,6094,6134,6153,6137,6103,6050,
+5962,5839,5700,5554,5397,5249,5134,5047,4953,4838,4727,4636,4545,4441,4345,4280,4227,4152,4062,3997,
+3970,3943,3878,3778,3673,3586,3518,3462,3408,3337,3237,3120,3015,2945,2906,2881,2849,2804,2746,2683,
+2617,2544,2460,2375,2306,2260,2233,2209,2174,2127,2076,2033,2003,1982,1963,1943,1923,1904,1882,1855,
+1824,1793,1759,1723,1689,1668,1660,1658,1654,1646,1639,1634,1626,1612,1596,1589,1597,1606,1598,1570,
+1538,1521,1521,1533,1554,1579,1588,1576,1556,1551,1556,1553,1541,1539,1551,1551,1522,1484,1456,1430,
+1386,1335,1304,1302,1303,1284,1249,1214,1186,1161,1132,1091,1033,969,909,852,785,704,622,553,
+494,434,369,300,232,168,106,45,-15,-74,-131,-197,-278,-364,-434,-488,-538,-593,-647,-702,
+-767,-839,-908,-969,-1034,-1108,-1176,-1227,-1274,-1332,-1398,-1453,-1487,-1511,-1540,-1581,-1631,-1683,-1727,-1759,
+-1792,-1836,-1894,-1954,-2005,-2042,-2068,-2090,-2113,-2129,-2127,-2101,-2070,-2054,-2048,-2031,-1994,-1952,-1917,-1880,
+-1834,-1796,-1787,-1797,-1794,-1755,-1699,-1655,-1635,-1630,-1628,-1624,-1612,-1591,-1569,-1556,-1550,-1540,-1525,-1517,
+-1519,-1517,-1495,-1456,-1413,-1382,-1368,-1361,-1336,-1282,-1219,-1181,-1176,-1181,-1177,-1164,-1146,-1117,-1085,-1072,
+-1076,-1056,-984,-881,-783,-699,-624,-560,-503,-435,-352,-277,-209,-112,20,142,230,338,494,621,
+651,676,832,1100,1346,1582,1953,2414,2630,2373,1870,1560,1577,1686,1691,1655,1700,1777,1783,1733,
+1708,1697,1633,1528,1454,1415,1333,1166,956,762,601,469,367,276,151,-25,-221,-394,-541,-686,
+-835,-973,-1090,-1195,-1306,-1425,-1541,-1646,-1744,-1836,-1906,-1949,-1999,-2105,-2261,-2402,-2475,-2497,-2523,-2570,
+-2615,-2641,-2654,-2653,-2631,-2601,-2599,-2640,-2686,-2690,-2653,-2623,-2638,-2672,-2663,-2580,-2452,-2336,-2257,-2193,
+-2108,-1988,-1849,-1729,-1662,-1649,-1645,-1595,-1486,-1358,-1251,-1171,-1096,-1018,-941,-862,-773,-678,-596,-541,
+-505,-476,-443,-402,-361,-321,-270,-186,-81,1,39,63,123,218,299,341,366,405,462,525,
+594,673,756,834,907,983,1069,1176,1300,1409,1466,1483,1517,1603,1709,1789,1843,1898,1958,1999,
+2023,2050,2081,2084,2048,2003,1982,1984,1990,1998,2014,2028,2018,1978,1927,1889,1874,1876,1883,1888,
+1890,1890,1887,1879,1877,1887,1886,1892,1885,1860,1828,1790,1737,1670,1606,1559,1508,1431,1333,1236,
+1143,1038,934,878,880,886,822,684,531,408,308,210,125,78,66,55,25,-15,-66,-144,
+-271,-435,-608,-783,-968,-1158,-1329,-1465,-1576,-1675,-1754,-1803,-1838,-1884,-1941,-1971,-1941,-1861,-1779,-1733,
+-1705,-1625,-1441,-1187,-977,-908,-984,-1128,-1266,-1373,-1464,-1559,-1660,-1747,-1792,-1805,-1830,-1893,-1951,-1947,
+-1910,-1951,-2135,-2410,-2670,-2872,-3039,-3201,-3369,-3553,-3752,-3921,-4008,-4016,-4014,-4064,-4163,-4269,-4356,-4422,
+-4470,-4503,-4530,-4556,-4571,-4562,-4532,-4503,-4493,-4507,-4531,-4548,-4553,-4553,-4562,-4591,-4642,-4720,-4825,-4945,
+-5063,-5167,-5265,-5371,-5494,-5638,-5798,-5965,-6126,-6277,-6420,-6554,-6670,-6773,-6879,-6996,-7112,-7211,-7295,-7377,
+-7471,-7580,-7709,-7862,-8035,-8217,-8393,-8557,-8704,-8826,-8914,-8970,-9018,-9092,-9203,-9331,-9444,-9533,-9609,-9680,
+-9738,-9777,-9809,-9842,-9867,-9860,-9808,-9713,-9583,-9429,-9268,-9121,-9003,-8917,-8842,-8740,-8591,-8402,-8205,-8008,
+-7794,-7555,-7309,-7075,-6843,-6604,-6369,-6153,-5933,-5669,-5356,-5025,-4696,-4370,-4055,-3765,-3490,-3194,-2883,-2614,
+-2430,-2298,-2162,-2020,-1908,-1819,-1679,-1413,-1014,-547,-102,258,532,769,1012,1255,1465,1651,1850,2065,
+2254,2398,2538,2710,2901,3077,3232,3383,3531,3675,3838,4033,4232,4394,4524,4655,4796,4931,5063,5197,
+5284,5268,5191,5192,5352,5596,5797,5912,5969,5964,5872,5741,5678,5728,5827,5896,5926,5926,5870,5739,
+5593,5525,5562,5668,5809,5974,6139,6274,6388,6526,6696,6847,6937,6968,6953,6888,6792,6738,6794,6958,
+7170,7373,7525,7580,7524,7416,7356,7383,7445,7484,7512,7577,7680,7772,7820,7840,7862,7895,7930,7967,
+7998,7997,7928,7803,7684,7618,7570,7451,7233,6988,6791,6631,6456,6284,6192,6207,6252,6251,6205,6159,
+6118,6050,5944,5813,5663,5499,5349,5241,5156,5052,4925,4810,4715,4615,4503,4413,4366,4328,4260,4174,
+4107,4060,4005,3931,3851,3773,3690,3601,3519,3451,3386,3314,3233,3139,3042,2959,2908,2877,2836,2776,
+2713,2661,2605,2525,2429,2345,2290,2257,2227,2188,2142,2097,2055,2017,1984,1959,1944,1935,1922,1897,
+1867,1841,1819,1792,1759,1728,1708,1701,1700,1694,1681,1667,1660,1657,1656,1652,1647,1641,1630,1606,
+1575,1548,1531,1523,1526,1543,1566,1577,1566,1548,1544,1549,1549,1537,1527,1519,1502,1473,1446,1430,
+1406,1361,1311,1287,1289,1294,1276,1240,1198,1162,1131,1100,1057,998,935,878,827,767,694,618,
+549,488,432,376,315,248,180,115,53,-11,-75,-134,-194,-266,-347,-423,-484,-536,-584,-632,
+-684,-746,-813,-874,-930,-996,-1075,-1149,-1203,-1246,-1297,-1357,-1411,-1449,-1476,-1501,-1531,-1571,-1620,-1665,
+-1697,-1724,-1765,-1823,-1884,-1927,-1952,-1970,-1991,-2018,-2039,-2043,-2028,-2005,-1985,-1971,-1955,-1934,-1911,-1884,
+-1848,-1804,-1766,-1747,-1739,-1724,-1688,-1642,-1605,-1587,-1581,-1579,-1573,-1556,-1536,-1523,-1524,-1527,-1518,-1502,
+-1498,-1507,-1508,-1483,-1438,-1397,-1375,-1374,-1377,-1360,-1309,-1242,-1201,-1202,-1222,-1225,-1204,-1175,-1147,-1127,
+-1116,-1108,-1080,-1023,-952,-882,-807,-722,-640,-569,-496,-413,-333,-251,-142,-8,102,173,265,414,
+536,547,514,594,817,1082,1368,1756,2185,2377,2160,1743,1499,1528,1625,1636,1635,1726,1849,1894,
+1871,1854,1844,1790,1696,1608,1524,1393,1204,1004,829,679,556,463,372,236,48,-144,-311,-465,
+-628,-790,-925,-1035,-1145,-1271,-1405,-1528,-1623,-1684,-1718,-1741,-1783,-1866,-1988,-2118,-2219,-2289,-2357,-2438,
+-2512,-2557,-2577,-2595,-2613,-2623,-2631,-2662,-2714,-2747,-2735,-2700,-2691,-2730,-2779,-2782,-2711,-2585,-2439,-2299,
+-2170,-2051,-1936,-1814,-1694,-1607,-1579,-1582,-1553,-1462,-1345,-1253,-1189,-1122,-1040,-961,-894,-821,-734,-648,
+-590,-562,-547,-519,-468,-404,-351,-313,-271,-211,-145,-91,-37,45,150,234,272,288,319,372,
+432,498,579,669,755,830,902,983,1082,1195,1302,1380,1431,1490,1577,1671,1743,1793,1847,1909,
+1960,1993,2021,2047,2048,2015,1973,1951,1947,1946,1954,1982,2020,2033,2002,1942,1888,1861,1860,1870,
+1877,1880,1881,1881,1879,1879,1886,1862,1852,1839,1813,1770,1713,1640,1557,1483,1424,1366,1288,1196,
+1104,1007,890,770,702,712,747,733,655,560,481,404,308,207,135,101,87,71,39,-19,
+-118,-256,-411,-565,-723,-897,-1077,-1230,-1338,-1424,-1522,-1634,-1728,-1787,-1829,-1876,-1909,-1892,-1829,-1771,
+-1746,-1705,-1574,-1351,-1131,-1015,-1025,-1107,-1207,-1306,-1404,-1500,-1602,-1721,-1834,-1899,-1908,-1911,-1950,-1991,
+-1983,-1944,-1967,-2113,-2352,-2615,-2862,-3076,-3251,-3404,-3570,-3755,-3906,-3969,-3972,-3994,-4071,-4171,-4252,-4313,
+-4370,-4419,-4450,-4469,-4487,-4498,-4488,-4462,-4438,-4429,-4434,-4445,-4458,-4467,-4468,-4468,-4478,-4514,-4587,-4698,
+-4828,-4955,-5067,-5172,-5278,-5395,-5529,-5686,-5858,-6025,-6177,-6316,-6449,-6574,-6686,-6795,-6908,-7023,-7129,-7217,
+-7293,-7371,-7464,-7586,-7739,-7916,-8099,-8276,-8438,-8582,-8701,-8790,-8855,-8922,-9021,-9154,-9289,-9390,-9456,-9512,
+-9571,-9622,-9656,-9680,-9706,-9726,-9726,-9694,-9623,-9506,-9349,-9180,-9031,-8920,-8844,-8780,-8691,-8549,-8358,-8154,
+-7958,-7760,-7538,-7297,-7053,-6811,-6573,-6352,-6151,-5942,-5686,-5380,-5056,-4738,-4424,-4118,-3839,-3582,-3313,-3007,
+-2694,-2430,-2242,-2116,-2014,-1909,-1783,-1624,-1403,-1084,-663,-209,180,469,706,944,1176,1377,1568,1790,
+2026,2218,2355,2491,2668,2863,3038,3190,3338,3481,3622,3783,3977,4168,4314,4426,4550,4702,4862,5021,
+5166,5250,5225,5145,5149,5314,5563,5772,5907,5992,6010,5907,5724,5599,5616,5720,5808,5849,5869,5862,
+5800,5708,5651,5654,5689,5742,5824,5925,6003,6056,6147,6323,6556,6774,6920,6954,6857,6676,6546,6587,
+6788,7037,7243,7393,7482,7492,7438,7391,7417,7502,7587,7644,7688,7728,7756,7773,7800,7853,7923,7989,
+8048,8099,8121,8083,7987,7884,7815,7755,7635,7433,7203,6990,6775,6534,6329,6251,6299,6367,6369,6320,
+6268,6209,6119,6006,5892,5768,5623,5482,5377,5289,5174,5036,4914,4814,4712,4601,4514,4460,4410,4343,
+4276,4221,4155,4066,3978,3914,3854,3768,3662,3564,3484,3417,3361,3310,3235,3122,3000,2916,2875,2840,
+2791,2743,2710,2671,2599,2499,2404,2334,2286,2247,2209,2172,2133,2089,2038,1990,1961,1958,1963,1952,
+1919,1884,1863,1850,1827,1789,1753,1734,1732,1735,1729,1713,1694,1684,1687,1698,1709,1711,1698,1670,
+1632,1596,1567,1545,1526,1514,1518,1533,1545,1546,1539,1536,1538,1537,1526,1507,1481,1449,1421,1404,
+1392,1365,1324,1288,1276,1280,1278,1256,1217,1174,1134,1101,1069,1026,971,912,859,808,749,679,
+604,532,467,412,364,311,246,175,113,57,-6,-76,-140,-195,-254,-328,-408,-478,-535,-583,
+-630,-682,-740,-799,-851,-903,-970,-1051,-1126,-1178,-1216,-1259,-1311,-1362,-1405,-1436,-1459,-1480,-1510,-1553,
+-1595,-1626,-1649,-1685,-1739,-1797,-1839,-1864,-1883,-1909,-1937,-1955,-1957,-1946,-1931,-1913,-1894,-1878,-1868,-1858,
+-1838,-1804,-1763,-1722,-1689,-1664,-1643,-1621,-1595,-1566,-1542,-1529,-1523,-1514,-1498,-1481,-1479,-1492,-1504,-1498,
+-1482,-1478,-1488,-1489,-1464,-1423,-1390,-1379,-1384,-1390,-1376,-1324,-1256,-1217,-1230,-1264,-1269,-1238,-1200,-1182,
+-1177,-1168,-1140,-1092,-1034,-980,-929,-863,-777,-690,-618,-548,-463,-371,-280,-176,-56,42,109,193,
+325,431,419,341,364,570,890,1246,1626,1968,2094,1916,1609,1446,1487,1579,1619,1673,1807,1960,
+2033,2027,1999,1963,1898,1812,1727,1621,1461,1261,1066,894,742,621,535,444,299,107,-82,-246,
+-407,-574,-722,-832,-927,-1040,-1177,-1320,-1448,-1539,-1577,-1578,-1597,-1686,-1834,-1979,-2060,-2087,-2122,-2214,
+-2343,-2452,-2508,-2531,-2555,-2584,-2614,-2651,-2704,-2752,-2759,-2728,-2705,-2732,-2796,-2844,-2837,-2762,-2629,-2448,
+-2241,-2052,-1927,-1866,-1816,-1730,-1617,-1525,-1469,-1411,-1320,-1223,-1158,-1120,-1067,-992,-926,-884,-834,-750,
+-651,-582,-562,-567,-555,-501,-421,-354,-328,-327,-308,-252,-175,-92,-4,88,161,196,211,239,
+291,354,423,504,595,681,758,833,918,1015,1118,1223,1318,1397,1473,1558,1644,1709,1752,1796,
+1854,1913,1957,1984,1996,1988,1961,1932,1917,1909,1901,1904,1933,1979,2004,1984,1930,1878,1850,1848,
+1857,1864,1864,1865,1871,1875,1871,1862,1798,1767,1750,1731,1689,1622,1538,1451,1373,1309,1244,1166,
+1079,995,907,793,668,584,572,597,598,563,523,495,459,394,314,245,197,166,141,104,
+33,-82,-225,-369,-510,-659,-825,-992,-1127,-1215,-1283,-1373,-1499,-1626,-1714,-1769,-1817,-1854,-1846,-1797,
+-1757,-1742,-1687,-1522,-1293,-1129,-1105,-1172,-1244,-1300,-1372,-1464,-1554,-1645,-1764,-1897,-1975,-1971,-1939,-1947,
+-1988,-2008,-2003,-2029,-2137,-2329,-2581,-2858,-3107,-3285,-3408,-3539,-3701,-3839,-3901,-3921,-3969,-4061,-4150,-4207,
+-4250,-4299,-4345,-4372,-4391,-4412,-4425,-4417,-4395,-4378,-4370,-4367,-4368,-4372,-4373,-4361,-4335,-4316,-4331,-4403,
+-4526,-4676,-4822,-4951,-5068,-5180,-5293,-5418,-5568,-5740,-5910,-6060,-6195,-6330,-6466,-6592,-6702,-6807,-6916,-7026,
+-7126,-7206,-7276,-7357,-7471,-7622,-7795,-7976,-8153,-8318,-8462,-8576,-8658,-8721,-8796,-8911,-9063,-9207,-9302,-9351,
+-9391,-9440,-9483,-9510,-9527,-9545,-9559,-9565,-9558,-9518,-9417,-9253,-9067,-8912,-8814,-8759,-8712,-8634,-8497,-8307,
+-8101,-7912,-7730,-7526,-7287,-7029,-6774,-6540,-6338,-6159,-5965,-5722,-5428,-5115,-4804,-4499,-4208,-3943,-3698,-3438,
+-3130,-2786,-2458,-2208,-2055,-1966,-1875,-1749,-1594,-1411,-1153,-781,-345,51,359,620,877,1112,1303,1487,
+1716,1964,2155,2278,2401,2577,2784,2974,3138,3292,3440,3585,3749,3939,4117,4245,4341,4454,4604,4768,
+4921,5043,5101,5072,5016,5053,5238,5491,5692,5820,5925,5996,5955,5788,5614,5562,5631,5727,5781,5795,
+5785,5763,5762,5804,5862,5877,5844,5812,5801,5779,5749,5792,5977,6269,6565,6785,6878,6811,6625,6471,
+6499,6706,6953,7123,7226,7307,7357,7356,7345,7400,7529,7662,7727,7713,7657,7604,7592,7641,7742,7860,
+7960,8033,8085,8118,8118,8083,8024,7953,7860,7726,7551,7347,7101,6793,6467,6249,6221,6327,6428,6455,
+6440,6412,6340,6208,6066,5961,5873,5756,5622,5511,5416,5301,5164,5038,4931,4828,4726,4642,4568,4483,
+4398,4342,4301,4230,4128,4041,3992,3938,3842,3723,3619,3535,3458,3398,3355,3292,3177,3038,2935,2884,
+2853,2815,2781,2757,2723,2655,2560,2464,2380,2313,2266,2237,2213,2177,2122,2057,2002,1979,1988,2000,
+1981,1938,1901,1892,1890,1863,1809,1756,1731,1733,1746,1752,1746,1730,1717,1719,1736,1758,1767,1752,
+1715,1670,1627,1590,1556,1524,1501,1493,1496,1503,1506,1503,1496,1490,1489,1488,1475,1445,1409,1382,
+1366,1346,1314,1280,1264,1264,1264,1249,1220,1185,1147,1110,1078,1046,1006,954,899,847,794,733,
+663,588,512,442,385,342,295,233,165,107,56,-5,-81,-150,-203,-252,-316,-393,-466,-526,
+-578,-630,-684,-739,-789,-835,-888,-958,-1039,-1110,-1157,-1188,-1220,-1263,-1310,-1353,-1388,-1411,-1428,-1449,
+-1483,-1519,-1548,-1570,-1599,-1646,-1702,-1746,-1775,-1798,-1826,-1854,-1867,-1865,-1858,-1852,-1842,-1823,-1804,-1795,
+-1792,-1777,-1747,-1707,-1664,-1621,-1582,-1558,-1547,-1534,-1510,-1481,-1461,-1454,-1449,-1437,-1426,-1431,-1452,-1472,
+-1473,-1462,-1457,-1462,-1461,-1441,-1412,-1393,-1389,-1392,-1391,-1369,-1319,-1257,-1225,-1245,-1285,-1292,-1258,-1221,
+-1211,-1216,-1208,-1175,-1125,-1074,-1029,-980,-909,-817,-731,-667,-604,-516,-409,-309,-213,-109,-10,64,
+139,236,312,297,231,272,525,933,1353,1690,1893,1907,1737,1515,1408,1449,1542,1627,1737,1899,
+2056,2140,2150,2122,2064,1982,1898,1820,1715,1555,1360,1166,986,824,703,626,541,394,193,-12,
+-200,-378,-536,-645,-708,-772,-873,-1004,-1143,-1277,-1388,-1453,-1490,-1562,-1719,-1922,-2069,-2098,-2055,-2047,
+-2131,-2273,-2394,-2462,-2496,-2525,-2555,-2589,-2640,-2708,-2751,-2737,-2689,-2677,-2730,-2808,-2844,-2811,-2724,-2588,
+-2394,-2157,-1942,-1822,-1806,-1815,-1761,-1629,-1473,-1343,-1235,-1136,-1064,-1041,-1041,-1018,-963,-915,-892,-854,
+-767,-654,-575,-556,-570,-567,-518,-435,-361,-337,-354,-360,-315,-229,-142,-69,-2,57,98,125,
+161,219,290,368,452,543,631,713,797,890,984,1079,1180,1284,1380,1465,1546,1625,1686,1721,
+1749,1794,1857,1912,1942,1947,1934,1914,1900,1894,1889,1875,1866,1880,1913,1937,1929,1897,1861,1840,
+1837,1845,1852,1852,1854,1861,1860,1837,1798,1712,1657,1635,1623,1589,1524,1441,1355,1277,1209,1144,
+1071,992,918,843,746,632,540,498,485,470,456,464,485,489,463,423,382,336,284,234,
+177,94,-24,-156,-283,-411,-559,-725,-889,-1025,-1122,-1197,-1284,-1402,-1531,-1634,-1706,-1768,-1815,-1817,
+-1777,-1744,-1731,-1676,-1524,-1334,-1234,-1266,-1344,-1386,-1410,-1470,-1558,-1626,-1683,-1779,-1908,-1989,-1979,-1932,
+-1928,-1980,-2038,-2078,-2122,-2205,-2356,-2588,-2876,-3140,-3308,-3400,-3497,-3637,-3770,-3847,-3890,-3954,-4040,-4110,
+-4149,-4185,-4228,-4265,-4286,-4308,-4336,-4353,-4345,-4323,-4308,-4304,-4301,-4298,-4293,-4280,-4245,-4193,-4145,-4135,
+-4190,-4315,-4484,-4661,-4822,-4963,-5089,-5204,-5321,-5461,-5625,-5790,-5935,-6065,-6198,-6340,-6472,-6582,-6679,-6785,
+-6905,-7022,-7115,-7182,-7253,-7354,-7495,-7663,-7846,-8030,-8198,-8333,-8429,-8495,-8554,-8636,-8767,-8932,-9083,-9178,
+-9223,-9259,-9302,-9339,-9359,-9373,-9389,-9403,-9410,-9415,-9396,-9308,-9134,-8929,-8772,-8697,-8674,-8646,-8573,-8435,
+-8244,-8039,-7855,-7685,-7493,-7260,-7000,-6746,-6527,-6346,-6182,-5997,-5763,-5485,-5188,-4888,-4594,-4316,-4064,-3821,
+-3551,-3234,-2878,-2524,-2227,-2026,-1910,-1826,-1727,-1608,-1460,-1238,-902,-500,-129,175,459,758,1030,1237,
+1420,1644,1896,2101,2236,2358,2527,2729,2920,3085,3238,3387,3540,3707,3888,4054,4175,4269,4378,4521,
+4670,4791,4863,4876,4844,4830,4924,5146,5405,5584,5676,5759,5857,5886,5775,5593,5488,5531,5654,5747,
+5760,5720,5692,5738,5856,5965,5980,5900,5793,5690,5575,5476,5500,5706,6019,6310,6522,6652,6674,6576,
+6455,6466,6638,6840,6951,6990,7042,7117,7175,7224,7332,7512,7685,7751,7687,7547,7414,7350,7378,7483,
+7626,7769,7890,7984,8052,8097,8116,8097,8031,7930,7814,7685,7488,7155,6702,6285,6092,6164,6348,6465,
+6491,6504,6524,6479,6338,6179,6075,6001,5893,5750,5619,5511,5401,5277,5155,5041,4932,4839,4765,4684,
+4577,4473,4409,4365,4290,4192,4124,4091,4035,3923,3794,3691,3605,3514,3434,3380,3319,3214,3085,2987,
+2935,2901,2863,2829,2799,2755,2687,2605,2518,2425,2340,2285,2265,2251,2215,2150,2077,2025,2010,2023,
+2028,1998,1948,1920,1924,1928,1892,1820,1751,1716,1720,1745,1769,1779,1772,1759,1758,1777,1804,1815,
+1796,1754,1705,1658,1609,1559,1517,1492,1482,1476,1469,1461,1450,1434,1424,1428,1440,1438,1413,1377,
+1349,1327,1296,1260,1237,1236,1242,1232,1203,1170,1143,1114,1081,1048,1018,983,936,882,826,769,
+706,640,571,498,427,369,326,285,231,168,110,54,-12,-92,-163,-216,-262,-320,-390,-457,
+-515,-568,-623,-678,-729,-774,-820,-876,-949,-1031,-1099,-1142,-1166,-1190,-1223,-1266,-1308,-1342,-1365,-1379,
+-1395,-1419,-1449,-1476,-1498,-1523,-1562,-1614,-1663,-1695,-1716,-1738,-1761,-1772,-1771,-1769,-1774,-1774,-1757,-1735,
+-1725,-1726,-1719,-1695,-1658,-1615,-1564,-1514,-1479,-1463,-1450,-1425,-1396,-1380,-1378,-1379,-1373,-1368,-1378,-1403,
+-1431,-1443,-1440,-1436,-1435,-1431,-1418,-1405,-1402,-1403,-1396,-1378,-1348,-1304,-1256,-1232,-1248,-1281,-1290,-1267,
+-1241,-1235,-1236,-1226,-1202,-1174,-1144,-1103,-1044,-959,-861,-777,-720,-663,-572,-453,-345,-254,-158,-54,
+29,87,141,191,204,208,326,661,1148,1602,1874,1939,1850,1682,1520,1440,1458,1538,1653,1799,
+1963,2101,2184,2218,2209,2156,2070,1982,1904,1806,1663,1485,1297,1111,946,832,764,684,536,324,
+88,-139,-343,-492,-563,-586,-620,-698,-807,-932,-1074,-1222,-1350,-1461,-1601,-1801,-2012,-2140,-2141,-2074,
+-2043,-2103,-2219,-2325,-2391,-2431,-2464,-2492,-2529,-2597,-2687,-2745,-2726,-2666,-2649,-2707,-2785,-2806,-2754,-2658,
+-2536,-2373,-2168,-1971,-1846,-1807,-1792,-1725,-1585,-1413,-1255,-1124,-1023,-975,-991,-1032,-1041,-1007,-969,-946,
+-906,-818,-708,-632,-609,-608,-590,-539,-460,-383,-345,-352,-364,-334,-265,-196,-146,-99,-40,16,
+59,103,163,240,323,411,504,598,690,785,880,970,1055,1152,1262,1369,1457,1531,1601,1657,
+1685,1701,1734,1794,1858,1898,1910,1904,1891,1883,1881,1876,1859,1838,1833,1846,1863,1868,1859,1841,
+1824,1816,1822,1833,1838,1840,1842,1828,1781,1712,1648,1574,1537,1517,1482,1421,1342,1258,1178,1110,
+1053,993,928,864,803,730,646,570,515,468,430,428,475,534,556,540,521,507,472,405,
+326,249,159,49,-61,-166,-283,-430,-600,-766,-915,-1038,-1138,-1230,-1333,-1449,-1556,-1643,-1718,-1775,
+-1788,-1756,-1722,-1707,-1665,-1553,-1425,-1376,-1420,-1474,-1483,-1492,-1555,-1642,-1690,-1712,-1774,-1880,-1957,-1960,
+-1929,-1933,-1986,-2056,-2124,-2195,-2284,-2420,-2638,-2921,-3181,-3337,-3410,-3486,-3609,-3735,-3821,-3879,-3945,-4014,
+-4061,-4094,-4134,-4178,-4208,-4223,-4245,-4274,-4287,-4272,-4246,-4230,-4224,-4221,-4218,-4209,-4187,-4147,-4095,-4043,
+-4012,-4033,-4129,-4294,-4490,-4682,-4852,-4997,-5118,-5234,-5367,-5520,-5675,-5810,-5931,-6058,-6196,-6330,-6444,-6546,
+-6655,-6781,-6908,-7006,-7069,-7126,-7213,-7344,-7513,-7707,-7903,-8067,-8174,-8236,-8287,-8361,-8474,-8628,-8802,-8952,
+-9045,-9091,-9127,-9167,-9197,-9213,-9232,-9262,-9284,-9291,-9294,-9281,-9201,-9027,-8817,-8667,-8616,-8617,-8596,-8513,
+-8362,-8167,-7966,-7789,-7627,-7445,-7220,-6967,-6725,-6524,-6360,-6203,-6016,-5785,-5522,-5248,-4967,-4689,-4427,-4185,
+-3939,-3657,-3333,-2988,-2646,-2333,-2081,-1910,-1801,-1720,-1637,-1522,-1322,-1015,-661,-349,-91,182,518,859,
+1132,1348,1573,1826,2057,2232,2379,2542,2721,2889,3033,3169,3310,3461,3617,3774,3919,4043,4156,4279,
+4420,4555,4648,4678,4657,4630,4663,4808,5052,5303,5458,5509,5544,5625,5692,5644,5491,5371,5400,5549,
+5688,5723,5674,5632,5674,5788,5884,5887,5802,5680,5526,5331,5174,5201,5451,5782,6031,6192,6349,6494,
+6540,6497,6497,6615,6759,6814,6800,6821,6908,7012,7114,7261,7472,7676,7773,7723,7569,7388,7247,7179,
+7190,7270,7411,7595,7787,7947,8057,8119,8133,8095,8028,7957,7853,7605,7128,6515,6039,5932,6154,6431,
+6546,6525,6519,6563,6558,6447,6300,6200,6128,6018,5863,5712,5586,5473,5362,5252,5138,5022,4927,4859,
+4786,4684,4579,4505,4442,4356,4265,4215,4191,4126,4001,3867,3767,3678,3575,3479,3412,3349,3257,3154,
+3075,3025,2981,2933,2890,2844,2784,2716,2652,2582,2488,2386,2318,2296,2285,2248,2180,2109,2061,2045,
+2045,2033,1996,1953,1936,1944,1940,1893,1818,1753,1723,1728,1755,1787,1807,1808,1797,1795,1814,1842,
+1850,1825,1777,1726,1677,1622,1562,1513,1489,1479,1466,1445,1422,1401,1382,1373,1384,1402,1401,1373,
+1338,1310,1286,1251,1214,1199,1204,1205,1181,1141,1108,1087,1064,1030,994,964,936,898,847,788,
+726,665,606,549,487,424,367,324,287,242,186,122,53,-23,-102,-171,-225,-276,-334,-398,
+-459,-513,-563,-613,-662,-709,-755,-803,-861,-934,-1014,-1084,-1128,-1149,-1167,-1194,-1233,-1273,-1306,-1329,
+-1343,-1355,-1370,-1392,-1418,-1441,-1464,-1496,-1544,-1597,-1632,-1647,-1656,-1670,-1682,-1684,-1688,-1700,-1705,-1690,
+-1667,-1659,-1668,-1672,-1657,-1625,-1581,-1524,-1462,-1411,-1379,-1357,-1334,-1313,-1304,-1306,-1309,-1310,-1313,-1328,
+-1355,-1386,-1409,-1417,-1415,-1410,-1405,-1399,-1400,-1409,-1413,-1397,-1364,-1327,-1295,-1267,-1250,-1254,-1271,-1282,
+-1278,-1271,-1264,-1250,-1229,-1216,-1213,-1200,-1158,-1086,-997,-903,-824,-766,-707,-614,-492,-379,-290,-201,
+-101,-24,9,30,71,128,209,404,797,1325,1780,1995,1975,1846,1713,1612,1549,1536,1587,1699,
+1846,1994,2113,2197,2253,2271,2239,2165,2079,2000,1908,1783,1623,1443,1261,1103,995,922,833,681,
+464,213,-40,-259,-403,-461,-476,-505,-571,-664,-782,-935,-1113,-1284,-1439,-1603,-1790,-1967,-2075,-2091,
+-2056,-2040,-2080,-2159,-2236,-2291,-2330,-2365,-2399,-2451,-2545,-2670,-2756,-2750,-2682,-2647,-2689,-2755,-2769,-2709,
+-2613,-2513,-2402,-2268,-2121,-1986,-1872,-1764,-1641,-1500,-1358,-1226,-1106,-1009,-965,-990,-1043,-1066,-1041,-1006,
+-983,-949,-879,-796,-738,-710,-681,-634,-573,-503,-430,-373,-354,-356,-341,-298,-251,-215,-172,-105,
+-33,21,64,119,193,277,364,460,562,666,768,863,946,1026,1121,1236,1349,1436,1501,1560,
+1610,1638,1654,1685,1742,1805,1853,1878,1886,1881,1872,1864,1853,1830,1802,1786,1790,1803,1814,1818,
+1810,1792,1777,1780,1795,1807,1812,1812,1792,1734,1648,1639,1553,1492,1447,1395,1330,1256,1174,1093,
+1026,979,936,884,828,774,721,670,628,589,537,494,512,598,686,703,661,624,610,577,
+499,399,305,212,112,14,-77,-187,-334,-501,-659,-803,-935,-1048,-1144,-1244,-1359,-1476,-1573,-1649,
+-1704,-1721,-1700,-1670,-1654,-1625,-1554,-1475,-1451,-1484,-1510,-1503,-1513,-1582,-1671,-1720,-1735,-1772,-1846,-1915,
+-1948,-1962,-1979,-2005,-2044,-2114,-2217,-2338,-2489,-2701,-2967,-3209,-3357,-3432,-3508,-3617,-3722,-3796,-3854,-3914,
+-3966,-4000,-4032,-4081,-4132,-4162,-4177,-4196,-4216,-4218,-4197,-4171,-4150,-4136,-4126,-4123,-4117,-4100,-4078,-4059,
+-4038,-4009,-3996,-4042,-4167,-4349,-4545,-4727,-4883,-5018,-5143,-5276,-5421,-5563,-5688,-5800,-5918,-6050,-6187,-6316,
+-6432,-6547,-6669,-6786,-6876,-6931,-6979,-7057,-7185,-7361,-7570,-7774,-7921,-7987,-8011,-8061,-8174,-8339,-8523,-8697,
+-8834,-8918,-8961,-8997,-9034,-9058,-9072,-9099,-9146,-9183,-9191,-9187,-9171,-9100,-8944,-8753,-8620,-8582,-8585,-8551,
+-8443,-8274,-8076,-7886,-7723,-7574,-7400,-7182,-6936,-6704,-6515,-6362,-6211,-6024,-5794,-5543,-5291,-5039,-4784,-4537,
+-4303,-4058,-3775,-3457,-3133,-2818,-2510,-2224,-1990,-1827,-1727,-1658,-1568,-1398,-1130,-829,-583,-394,-163,182,
+596,969,1254,1493,1734,1973,2182,2358,2520,2678,2823,2951,3078,3219,3369,3506,3623,3736,3863,4002,
+4142,4279,4405,4494,4520,4501,4498,4567,4729,4955,5172,5306,5342,5350,5406,5488,5498,5404,5305,5324,
+5463,5608,5663,5637,5607,5628,5682,5710,5679,5604,5486,5285,4999,4773,4806,5119,5501,5751,5901,6103,
+6370,6558,6600,6611,6699,6811,6839,6794,6785,6859,6970,7080,7221,7421,7639,7795,7835,7761,7613,7438,
+7270,7124,7033,7055,7220,7481,7735,7913,8019,8083,8114,8111,8066,7924,7573,6962,6255,5790,5796,6161,
+6535,6669,6614,6554,6556,6532,6426,6298,6219,6168,6083,5952,5807,5671,5546,5434,5338,5238,5126,5020,
+4937,4858,4765,4672,4596,4520,4425,4339,4295,4266,4190,4060,3932,3835,3744,3639,3541,3471,3408,3327,
+3245,3182,3129,3070,3011,2958,2900,2829,2762,2717,2666,2577,2464,2379,2342,2323,2285,2222,2156,2106,
+2072,2047,2016,1980,1952,1945,1941,1916,1863,1805,1768,1756,1762,1781,1807,1827,1830,1822,1819,1833,
+1853,1855,1825,1774,1722,1675,1625,1567,1515,1483,1464,1442,1412,1381,1356,1339,1336,1350,1363,1354,
+1321,1288,1265,1245,1213,1181,1166,1165,1154,1118,1071,1037,1017,993,955,912,880,857,831,789,
+735,675,619,569,523,476,423,371,325,288,252,203,137,57,-26,-102,-167,-223,-280,-340,
+-403,-464,-520,-568,-608,-646,-690,-738,-789,-844,-909,-985,-1055,-1103,-1128,-1145,-1169,-1205,-1244,-1280,
+-1306,-1324,-1333,-1339,-1352,-1376,-1401,-1421,-1444,-1487,-1541,-1580,-1591,-1588,-1591,-1601,-1610,-1618,-1630,-1634,
+-1619,-1597,-1593,-1608,-1623,-1616,-1588,-1543,-1481,-1410,-1349,-1309,-1286,-1270,-1259,-1253,-1247,-1244,-1248,-1264,
+-1289,-1318,-1349,-1378,-1393,-1394,-1387,-1383,-1383,-1392,-1408,-1413,-1393,-1350,-1311,-1291,-1282,-1272,-1264,-1266,
+-1280,-1296,-1305,-1296,-1266,-1235,-1227,-1236,-1226,-1175,-1096,-1016,-941,-870,-804,-734,-639,-520,-406,-314,
+-230,-148,-94,-82,-76,-34,42,157,382,798,1337,1785,1974,1935,1826,1751,1705,1658,1631,1661,
+1752,1876,2005,2125,2230,2305,2336,2318,2264,2195,2127,2049,1940,1788,1607,1424,1271,1159,1065,952,
+791,582,340,94,-114,-252,-323,-366,-420,-497,-595,-727,-896,-1078,-1241,-1376,-1504,-1640,-1772,-1877,
+-1940,-1968,-1988,-2026,-2085,-2146,-2195,-2233,-2273,-2321,-2393,-2511,-2660,-2771,-2783,-2716,-2661,-2674,-2721,-2729,
+-2674,-2584,-2496,-2418,-2341,-2246,-2116,-1947,-1757,-1579,-1436,-1328,-1234,-1132,-1030,-963,-956,-979,-982,-952,
+-925,-925,-929,-902,-855,-818,-790,-745,-682,-622,-571,-512,-446,-401,-384,-373,-347,-313,-280,-232,
+-158,-79,-21,20,71,142,224,311,407,515,626,732,827,910,991,1088,1205,1316,1400,1458,
+1508,1554,1588,1615,1654,1709,1765,1809,1839,1857,1859,1849,1833,1809,1777,1746,1732,1737,1750,1759,
+1764,1759,1742,1725,1727,1745,1764,1776,1782,1773,1724,1639,1662,1570,1486,1412,1340,1269,1201,1128,
+1051,985,941,905,861,809,756,707,673,659,648,620,600,651,782,902,916,840,761,718,
+667,572,455,350,255,155,55,-41,-157,-303,-458,-593,-708,-818,-922,-1018,-1126,-1258,-1393,-1498,
+-1562,-1599,-1611,-1600,-1582,-1574,-1560,-1519,-1467,-1448,-1466,-1482,-1480,-1497,-1563,-1651,-1716,-1749,-1776,-1819,
+-1880,-1957,-2029,-2059,-2040,-2025,-2080,-2211,-2370,-2539,-2741,-2978,-3193,-3338,-3434,-3530,-3632,-3708,-3756,-3802,
+-3857,-3902,-3929,-3963,-4015,-4068,-4100,-4120,-4138,-4145,-4132,-4110,-4091,-4071,-4046,-4028,-4027,-4030,-4025,-4026,
+-4048,-4073,-4071,-4047,-4052,-4127,-4264,-4429,-4594,-4749,-4895,-5035,-5175,-5315,-5447,-5563,-5673,-5787,-5913,-6052,
+-6195,-6328,-6448,-6556,-6654,-6731,-6784,-6832,-6911,-7042,-7226,-7443,-7645,-7770,-7797,-7792,-7851,-8010,-8224,-8429,
+-8592,-8711,-8784,-8826,-8859,-8893,-8915,-8928,-8956,-9007,-9050,-9062,-9053,-9033,-8974,-8848,-8691,-8581,-8546,-8534,
+-8476,-8348,-8171,-7979,-7804,-7658,-7521,-7355,-7140,-6897,-6670,-6489,-6350,-6215,-6042,-5819,-5573,-5336,-5110,-4882,
+-4650,-4418,-4176,-3902,-3600,-3293,-2995,-2698,-2399,-2120,-1896,-1749,-1667,-1602,-1480,-1268,-1016,-811,-661,-472,
+-147,300,757,1123,1392,1617,1835,2043,2225,2386,2537,2683,2819,2958,3113,3273,3399,3485,3571,3698,
+3852,3991,4108,4220,4322,4382,4402,4437,4533,4684,4857,5017,5132,5183,5200,5246,5330,5387,5365,5315,
+5331,5428,5532,5576,5571,5567,5578,5577,5539,5474,5397,5266,5004,4627,4335,4363,4725,5177,5495,5714,
+5994,6348,6615,6712,6752,6852,6973,7002,6944,6906,6947,7026,7104,7200,7351,7549,7744,7883,7934,7902,
+7806,7645,7401,7114,6915,6923,7116,7352,7522,7644,7778,7916,7988,7937,7725,7309,6696,6049,5660,5722,
+6125,6547,6749,6738,6655,6564,6437,6272,6140,6089,6081,6053,5984,5887,5768,5634,5510,5414,5332,5237,
+5130,5024,4921,4819,4730,4657,4580,4490,4411,4364,4319,4232,4110,3996,3905,3811,3706,3616,3551,3491,
+3420,3349,3289,3228,3157,3091,3034,2970,2893,2829,2792,2751,2667,2552,2454,2400,2368,2329,2274,2211,
+2149,2092,2041,1998,1969,1957,1951,1930,1885,1836,1806,1797,1794,1793,1801,1821,1841,1849,1845,1839,
+1836,1836,1825,1793,1743,1689,1645,1607,1564,1517,1472,1433,1398,1363,1331,1304,1288,1289,1303,1312,
+1299,1268,1239,1222,1205,1178,1151,1133,1119,1094,1052,1006,971,946,917,876,827,788,762,742,
+713,671,623,579,538,500,461,417,367,319,279,248,208,147,67,-16,-90,-153,-214,-274,
+-333,-394,-461,-528,-580,-614,-643,-681,-730,-782,-831,-886,-951,-1017,-1070,-1101,-1121,-1144,-1177,-1218,
+-1259,-1294,-1317,-1326,-1325,-1330,-1348,-1373,-1390,-1404,-1433,-1481,-1523,-1534,-1524,-1519,-1530,-1547,-1560,-1566,
+-1563,-1548,-1529,-1527,-1541,-1557,-1555,-1530,-1485,-1420,-1348,-1288,-1253,-1239,-1235,-1232,-1221,-1201,-1184,-1190,
+-1220,-1257,-1287,-1316,-1347,-1369,-1374,-1369,-1367,-1372,-1383,-1397,-1401,-1377,-1331,-1291,-1278,-1282,-1279,-1267,
+-1263,-1278,-1304,-1322,-1313,-1279,-1246,-1240,-1251,-1238,-1179,-1100,-1033,-977,-914,-839,-755,-659,-546,-429,
+-327,-242,-175,-141,-137,-131,-98,-44,44,259,682,1233,1686,1882,1870,1810,1781,1753,1705,1681,
+1718,1797,1889,2001,2144,2291,2391,2422,2403,2366,2326,2283,2226,2132,1980,1786,1591,1434,1310,1192,
+1054,887,690,470,248,62,-68,-161,-246,-337,-433,-547,-698,-879,-1049,-1175,-1264,-1343,-1433,-1539,
+-1653,-1759,-1840,-1896,-1948,-2012,-2077,-2129,-2173,-2221,-2281,-2361,-2479,-2625,-2745,-2775,-2722,-2659,-2644,-2665,
+-2669,-2630,-2559,-2476,-2396,-2326,-2252,-2144,-1978,-1771,-1573,-1423,-1322,-1242,-1149,-1041,-945,-887,-855,-812,
+-759,-741,-784,-852,-883,-870,-842,-816,-777,-726,-683,-655,-615,-553,-492,-456,-437,-413,-384,-351,
+-302,-229,-149,-86,-37,18,91,173,259,355,462,574,683,784,875,963,1061,1171,1275,1355,
+1413,1464,1510,1547,1584,1632,1688,1736,1768,1791,1808,1816,1811,1790,1755,1711,1677,1670,1683,1694,
+1698,1701,1701,1693,1682,1685,1705,1729,1747,1763,1768,1737,1662,1664,1569,1473,1382,1297,1225,1167,
+1111,1045,982,932,892,849,803,754,704,666,657,667,670,686,774,944,1100,1135,1051,940,
+855,765,640,505,396,303,203,92,-21,-151,-299,-443,-556,-644,-729,-818,-912,-1029,-1178,-1331,
+-1440,-1489,-1499,-1494,-1485,-1481,-1490,-1499,-1485,-1450,-1428,-1433,-1450,-1467,-1493,-1547,-1624,-1697,-1746,-1767,
+-1785,-1847,-1970,-2096,-2138,-2083,-2030,-2080,-2232,-2409,-2572,-2746,-2946,-3135,-3282,-3407,-3533,-3639,-3695,-3719,
+-3753,-3804,-3847,-3875,-3912,-3962,-4007,-4038,-4062,-4078,-4070,-4038,-4009,-3997,-3982,-3953,-3932,-3937,-3953,-3956,
+-3963,-4002,-4060,-4092,-4087,-4085,-4128,-4219,-4339,-4471,-4613,-4762,-4912,-5058,-5194,-5318,-5434,-5548,-5663,-5783,
+-5914,-6059,-6200,-6319,-6417,-6502,-6576,-6635,-6692,-6776,-6911,-7098,-7315,-7508,-7613,-7617,-7599,-7668,-7857,-8095,
+-8300,-8448,-8553,-8627,-8673,-8707,-8742,-8768,-8782,-8802,-8839,-8875,-8886,-8875,-8851,-8799,-8700,-8581,-8494,-8456,
+-8426,-8355,-8229,-8065,-7887,-7724,-7587,-7455,-7290,-7073,-6833,-6615,-6448,-6327,-6216,-6067,-5859,-5614,-5380,-5170,
+-4964,-4745,-4513,-4275,-4018,-3736,-3438,-3142,-2848,-2548,-2248,-1980,-1783,-1679,-1631,-1564,-1418,-1214,-1020,-869,
+-701,-424,-10,463,893,1226,1482,1701,1899,2072,2227,2378,2528,2668,2802,2952,3108,3229,3304,3385,
+3520,3681,3807,3894,3991,4114,4220,4292,4368,4485,4620,4739,4844,4942,5016,5058,5100,5172,5244,5273,
+5274,5299,5361,5412,5422,5417,5427,5442,5425,5367,5294,5213,5064,4770,4367,4060,4077,4436,4919,5322,
+5653,6021,6406,6671,6773,6837,6969,7112,7154,7097,7042,7051,7094,7135,7187,7280,7422,7593,7756,7883,
+7975,8035,8007,7802,7423,7037,6836,6836,6892,6907,6951,7125,7377,7535,7491,7265,6923,6504,6081,5803,
+5809,6082,6447,6719,6824,6778,6615,6373,6133,5984,5942,5952,5955,5937,5902,5834,5722,5592,5479,5391,
+5311,5224,5126,5017,4907,4812,4734,4656,4570,4493,4435,4373,4280,4171,4073,3985,3888,3783,3697,3636,
+3580,3518,3455,3395,3326,3251,3183,3124,3057,2980,2916,2872,2821,2732,2619,2519,2454,2413,2374,2325,
+2261,2187,2115,2054,2011,1988,1981,1970,1937,1890,1857,1848,1844,1824,1801,1800,1822,1849,1865,1870,
+1862,1842,1813,1783,1748,1698,1641,1593,1564,1540,1504,1454,1399,1352,1314,1280,1249,1230,1232,1249,
+1260,1250,1226,1200,1178,1155,1132,1114,1095,1068,1030,988,950,916,883,848,804,752,702,666,
+644,622,594,564,535,506,474,438,400,356,309,271,241,209,155,81,2,-70,-139,-207,
+-269,-323,-380,-450,-527,-590,-627,-651,-684,-731,-782,-830,-878,-930,-986,-1036,-1076,-1104,-1127,-1155,
+-1194,-1239,-1281,-1310,-1320,-1316,-1314,-1327,-1351,-1368,-1374,-1387,-1419,-1455,-1468,-1457,-1451,-1465,-1491,-1507,
+-1507,-1495,-1480,-1467,-1463,-1469,-1478,-1478,-1460,-1417,-1352,-1282,-1229,-1202,-1194,-1196,-1197,-1184,-1155,-1131,
+-1137,-1176,-1220,-1251,-1279,-1312,-1343,-1355,-1355,-1356,-1364,-1373,-1381,-1378,-1353,-1307,-1267,-1255,-1264,-1266,
+-1255,-1250,-1264,-1290,-1307,-1301,-1274,-1248,-1247,-1259,-1246,-1188,-1110,-1046,-999,-941,-863,-773,-677,-569,
+-452,-340,-247,-181,-144,-126,-112,-102,-107,-78,109,537,1099,1563,1788,1839,1850,1850,1798,1718,
+1698,1761,1843,1903,1990,2156,2354,2484,2513,2490,2466,2448,2426,2386,2305,2159,1958,1754,1587,1452,
+1316,1161,993,811,612,415,248,117,1,-116,-231,-339,-458,-613,-789,-944,-1051,-1124,-1191,-1271,
+-1370,-1488,-1610,-1713,-1793,-1867,-1948,-2024,-2083,-2133,-2188,-2249,-2320,-2415,-2539,-2652,-2699,-2673,-2624,-2597,
+-2594,-2595,-2586,-2554,-2488,-2388,-2282,-2188,-2091,-1955,-1776,-1587,-1428,-1318,-1240,-1162,-1061,-951,-857,-775,
+-683,-594,-570,-647,-777,-868,-881,-853,-826,-803,-775,-751,-735,-708,-654,-588,-538,-506,-479,-451,
+-422,-380,-314,-235,-161,-97,-30,45,127,212,307,413,523,634,744,847,942,1035,1132,1225,
+1304,1370,1428,1476,1513,1551,1603,1662,1708,1732,1744,1755,1766,1767,1748,1704,1649,1611,1609,1628,
+1641,1643,1650,1662,1666,1662,1666,1686,1710,1729,1748,1758,1734,1664,1619,1520,1423,1333,1247,1177,
+1128,1088,1040,984,930,880,838,804,771,727,681,662,676,703,747,856,1042,1225,1298,1242,
+1127,1005,870,710,558,447,363,269,154,24,-120,-275,-418,-527,-614,-701,-791,-885,-1002,-1154,
+-1312,-1420,-1454,-1436,-1403,-1382,-1384,-1413,-1447,-1458,-1439,-1412,-1408,-1433,-1476,-1524,-1573,-1627,-1684,-1724,
+-1733,-1739,-1807,-1958,-2113,-2163,-2104,-2058,-2131,-2298,-2464,-2593,-2726,-2891,-3063,-3218,-3366,-3513,-3625,-3676,
+-3693,-3721,-3766,-3807,-3845,-3894,-3947,-3982,-4003,-4028,-4044,-4020,-3959,-3908,-3889,-3877,-3849,-3828,-3840,-3867,
+-3875,-3876,-3908,-3971,-4026,-4051,-4068,-4107,-4174,-4259,-4362,-4486,-4629,-4781,-4927,-5058,-5176,-5294,-5416,-5536,
+-5649,-5767,-5902,-6040,-6157,-6250,-6334,-6415,-6484,-6548,-6637,-6775,-6962,-7170,-7348,-7439,-7438,-7424,-7501,-7696,
+-7934,-8128,-8264,-8369,-8452,-8507,-8544,-8579,-8613,-8634,-8648,-8669,-8691,-8698,-8684,-8654,-8601,-8516,-8423,-8353,
+-8311,-8270,-8201,-8098,-7961,-7803,-7647,-7512,-7379,-7209,-6989,-6756,-6557,-6411,-6306,-6212,-6083,-5891,-5650,-5410,
+-5203,-5012,-4805,-4579,-4348,-4113,-3856,-3569,-3266,-2964,-2660,-2353,-2063,-1838,-1710,-1660,-1621,-1529,-1376,-1202,
+-1047,-896,-693,-385,25,487,926,1301,1601,1835,2014,2161,2301,2434,2544,2631,2724,2831,2923,2994,
+3090,3248,3423,3546,3620,3714,3853,3990,4094,4195,4323,4447,4535,4609,4708,4816,4892,4940,4991,5046,
+5079,5095,5128,5179,5213,5210,5198,5204,5216,5202,5157,5098,5025,4891,4645,4326,4093,4116,4419,4862,
+5304,5725,6147,6512,6722,6796,6867,7008,7150,7195,7153,7109,7107,7131,7159,7196,7252,7331,7430,7539,
+7649,7781,7947,8066,7989,7672,7267,6972,6799,6604,6350,6210,6350,6681,6936,6953,6808,6653,6533,6390,
+6212,6092,6136,6351,6628,6825,6845,6682,6420,6176,6024,5951,5904,5857,5829,5832,5833,5786,5684,5554,
+5435,5345,5280,5221,5149,5060,4966,4876,4783,4686,4597,4521,4443,4350,4250,4157,4066,3968,3868,3785,
+3721,3666,3613,3560,3502,3432,3357,3289,3226,3157,3085,3023,2963,2885,2781,2669,2574,2506,2458,2421,
+2375,2310,2232,2158,2101,2062,2039,2025,2004,1968,1933,1921,1924,1904,1851,1802,1793,1819,1848,1868,
+1881,1881,1854,1806,1757,1714,1664,1601,1543,1509,1494,1473,1429,1371,1317,1275,1238,1204,1183,1186,
+1204,1215,1208,1188,1161,1126,1092,1074,1070,1057,1018,966,924,894,861,820,775,728,673,615,
+568,540,523,506,491,477,461,435,403,370,337,305,277,254,221,165,92,16,-55,-128,
+-203,-271,-326,-378,-443,-521,-590,-635,-663,-691,-733,-786,-840,-887,-928,-968,-1014,-1061,-1098,-1121,
+-1141,-1173,-1218,-1261,-1291,-1302,-1299,-1295,-1304,-1327,-1350,-1356,-1354,-1365,-1387,-1400,-1393,-1387,-1403,-1432,
+-1449,-1442,-1425,-1413,-1407,-1402,-1397,-1398,-1401,-1392,-1353,-1290,-1225,-1180,-1155,-1141,-1134,-1134,-1128,-1106,
+-1083,-1089,-1129,-1175,-1207,-1235,-1273,-1312,-1333,-1338,-1342,-1351,-1360,-1361,-1353,-1327,-1285,-1248,-1237,-1245,
+-1247,-1238,-1232,-1242,-1260,-1273,-1270,-1253,-1237,-1236,-1247,-1238,-1188,-1111,-1043,-994,-941,-867,-778,-682,
+-580,-468,-358,-263,-188,-130,-82,-53,-69,-133,-165,-14,394,936,1392,1656,1807,1925,1972,1891,
+1761,1728,1812,1899,1932,1994,2172,2406,2563,2596,2572,2557,2547,2522,2480,2410,2286,2105,1909,1736,
+1583,1423,1252,1084,923,757,590,435,296,161,26,-95,-204,-321,-464,-622,-766,-885,-986,-1080,
+-1173,-1273,-1385,-1501,-1607,-1701,-1794,-1887,-1967,-2028,-2082,-2138,-2192,-2248,-2323,-2426,-2526,-2584,-2592,-2574,
+-2553,-2538,-2537,-2557,-2572,-2534,-2422,-2274,-2140,-2028,-1905,-1747,-1568,-1407,-1298,-1237,-1184,-1104,-996,-886,
+-780,-656,-532,-481,-564,-736,-879,-925,-903,-873,-854,-836,-816,-799,-773,-725,-663,-607,-566,-535,
+-509,-485,-450,-392,-314,-233,-155,-79,-1,79,168,266,372,481,593,709,820,916,999,1080,
+1163,1243,1316,1381,1432,1469,1507,1561,1624,1674,1698,1707,1714,1724,1728,1710,1663,1601,1561,1560,
+1582,1598,1606,1623,1648,1661,1658,1657,1672,1691,1707,1721,1725,1694,1619,1541,1441,1352,1271,1192,
+1124,1078,1049,1018,977,926,873,830,809,799,773,730,701,711,749,806,911,1081,1266,1373,
+1363,1271,1139,976,793,627,510,428,341,229,91,-65,-230,-379,-500,-608,-716,-822,-923,-1036,
+-1178,-1326,-1424,-1440,-1391,-1328,-1290,-1295,-1334,-1379,-1402,-1393,-1370,-1369,-1412,-1492,-1573,-1628,-1655,-1675,
+-1691,-1693,-1701,-1770,-1913,-2055,-2104,-2073,-2077,-2194,-2372,-2509,-2591,-2681,-2824,-2995,-3160,-3314,-3457,-3564,
+-3619,-3644,-3673,-3710,-3752,-3810,-3887,-3950,-3973,-3976,-3995,-4013,-3980,-3892,-3809,-3773,-3758,-3733,-3712,-3726,
+-3760,-3779,-3783,-3804,-3856,-3912,-3954,-3992,-4043,-4106,-4177,-4262,-4368,-4496,-4636,-4776,-4904,-5020,-5138,-5265,
+-5390,-5502,-5613,-5741,-5875,-5990,-6082,-6168,-6255,-6330,-6398,-6491,-6633,-6817,-7007,-7161,-7242,-7253,-7259,-7347,
+-7539,-7765,-7948,-8078,-8185,-8277,-8338,-8373,-8406,-8446,-8479,-8499,-8515,-8530,-8532,-8514,-8475,-8415,-8338,-8260,
+-8199,-8154,-8106,-8046,-7966,-7858,-7719,-7572,-7441,-7311,-7140,-6923,-6705,-6532,-6408,-6308,-6209,-6085,-5909,-5681,
+-5441,-5228,-5039,-4842,-4627,-4411,-4199,-3966,-3692,-3385,-3070,-2758,-2449,-2162,-1935,-1790,-1709,-1646,-1566,-1461,
+-1337,-1207,-1086,-967,-800,-509,-64,474,1002,1436,1747,1957,2108,2240,2359,2445,2487,2510,2538,2577,
+2636,2751,2933,3126,3261,3344,3443,3580,3712,3811,3907,4024,4128,4196,4270,4402,4568,4702,4780,4830,
+4864,4872,4866,4886,4946,5011,5044,5048,5036,5008,4958,4896,4838,4782,4703,4579,4432,4344,4409,4654,
+5023,5448,5891,6308,6620,6775,6828,6893,7007,7110,7143,7131,7123,7133,7150,7179,7222,7268,7312,7359,
+7409,7457,7538,7687,7844,7863,7684,7427,7230,7041,6691,6203,5859,5909,6267,6605,6712,6670,6667,6743,
+6773,6653,6446,6322,6388,6593,6783,6833,6734,6567,6407,6268,6125,5964,5819,5738,5738,5784,5813,5779,
+5675,5538,5416,5341,5303,5269,5214,5135,5039,4932,4820,4713,4617,4528,4437,4339,4235,4132,4038,3956,
+3884,3817,3755,3705,3659,3604,3536,3462,3390,3320,3252,3195,3141,3068,2963,2844,2737,2650,2578,2523,
+2482,2441,2378,2301,2230,2176,2134,2100,2074,2044,2008,1984,1987,1993,1962,1890,1828,1814,1832,1848,
+1855,1868,1878,1859,1807,1746,1694,1643,1581,1515,1469,1447,1430,1395,1340,1283,1236,1196,1162,1145,
+1150,1163,1166,1155,1139,1115,1074,1033,1019,1028,1022,973,905,857,829,796,745,689,636,579,
+517,466,438,425,417,411,407,399,380,353,325,305,296,295,287,253,183,94,11,-56,
+-122,-198,-275,-341,-395,-452,-518,-585,-637,-669,-695,-732,-787,-849,-900,-932,-960,-1001,-1055,-1100,
+-1122,-1133,-1156,-1195,-1235,-1262,-1274,-1276,-1272,-1275,-1298,-1328,-1341,-1333,-1324,-1329,-1339,-1337,-1331,-1341,
+-1364,-1375,-1365,-1349,-1345,-1347,-1339,-1325,-1319,-1324,-1319,-1285,-1228,-1177,-1143,-1118,-1088,-1064,-1058,-1061,
+-1052,-1038,-1044,-1082,-1127,-1160,-1190,-1232,-1277,-1304,-1312,-1318,-1330,-1340,-1340,-1328,-1302,-1267,-1238,-1230,
+-1236,-1237,-1227,-1221,-1225,-1235,-1242,-1241,-1232,-1221,-1215,-1217,-1207,-1164,-1094,-1027,-977,-929,-862,-774,
+-676,-576,-476,-381,-295,-214,-133,-58,-14,-39,-134,-206,-103,240,715,1138,1443,1703,1945,2069,
+1997,1839,1780,1852,1931,1954,2019,2218,2475,2641,2673,2653,2648,2639,2595,2532,2465,2372,2229,2054,
+1875,1693,1497,1300,1132,1000,885,764,627,478,326,186,65,-47,-169,-306,-448,-590,-734,-873,
+-996,-1100,-1200,-1306,-1416,-1521,-1623,-1724,-1818,-1895,-1958,-2017,-2072,-2120,-2173,-2251,-2348,-2432,-2484,-2509,
+-2522,-2518,-2500,-2494,-2527,-2568,-2552,-2443,-2277,-2117,-1983,-1850,-1691,-1516,-1363,-1269,-1231,-1201,-1132,-1023,
+-907,-796,-666,-524,-449,-521,-710,-897,-985,-984,-952,-925,-898,-870,-846,-821,-781,-727,-673,-629,
+-594,-567,-543,-511,-460,-390,-308,-225,-142,-59,26,123,230,339,447,559,678,791,881,952,
+1020,1096,1173,1244,1308,1363,1412,1461,1521,1584,1634,1661,1672,1679,1688,1690,1673,1627,1568,1530,
+1529,1550,1567,1582,1609,1642,1658,1651,1642,1646,1657,1667,1674,1669,1626,1541,1459,1362,1282,1216,
+1147,1082,1036,1012,994,969,931,883,842,826,830,824,793,765,772,815,874,959,1090,1248,
+1369,1406,1357,1247,1092,910,735,599,500,409,300,160,-4,-177,-333,-468,-594,-723,-848,-960,
+-1074,-1205,-1333,-1409,-1398,-1322,-1240,-1202,-1214,-1250,-1279,-1288,-1283,-1285,-1317,-1394,-1506,-1607,-1656,-1655,
+-1644,-1650,-1665,-1687,-1742,-1843,-1947,-1998,-2017,-2085,-2237,-2407,-2509,-2549,-2612,-2749,-2932,-3106,-3250,-3365,
+-3453,-3512,-3554,-3588,-3620,-3668,-3754,-3861,-3929,-3929,-3903,-3910,-3935,-3907,-3809,-3704,-3651,-3635,-3614,-3593,
+-3607,-3650,-3687,-3704,-3723,-3758,-3800,-3840,-3888,-3951,-4023,-4097,-4173,-4259,-4358,-4473,-4600,-4727,-4845,-4962,
+-5088,-5216,-5335,-5453,-5584,-5719,-5834,-5924,-6009,-6096,-6175,-6250,-6351,-6499,-6673,-6835,-6957,-7030,-7066,-7108,
+-7217,-7406,-7618,-7789,-7911,-8012,-8101,-8162,-8195,-8227,-8270,-8314,-8346,-8368,-8383,-8380,-8356,-8312,-8253,-8184,
+-8119,-8066,-8020,-7970,-7913,-7847,-7755,-7630,-7494,-7373,-7252,-7091,-6887,-6692,-6549,-6442,-6335,-6214,-6080,-5920,
+-5718,-5489,-5270,-5073,-4879,-4675,-4472,-4273,-4055,-3791,-3485,-3164,-2852,-2557,-2296,-2092,-1941,-1812,-1682,-1565,
+-1478,-1403,-1310,-1214,-1152,-1099,-943,-584,-44,545,1051,1418,1664,1843,2003,2163,2300,2379,2396,2382,
+2381,2431,2559,2749,2938,3073,3165,3262,3373,3465,3531,3602,3688,3756,3802,3892,4076,4307,4493,4601,
+4665,4705,4706,4683,4691,4769,4891,4993,5029,4983,4867,4716,4579,4489,4451,4451,4473,4511,4584,4723,
+4956,5277,5658,6053,6403,6650,6782,6852,6919,6987,7030,7048,7073,7111,7139,7155,7183,7229,7274,7312,
+7359,7406,7427,7440,7501,7591,7611,7529,7450,7454,7410,7104,6565,6126,6096,6423,6783,6938,6928,6921,
+6975,6995,6891,6704,6570,6579,6688,6784,6804,6775,6738,6673,6531,6306,6063,5874,5768,5732,5748,5794,
+5829,5807,5717,5590,5475,5398,5345,5292,5221,5135,5038,4935,4827,4721,4627,4541,4441,4320,4196,4102,
+4042,3989,3923,3854,3801,3757,3703,3632,3553,3472,3394,3333,3296,3256,3178,3058,2934,2837,2757,2681,
+2615,2570,2530,2472,2396,2323,2260,2205,2162,2133,2106,2073,2045,2039,2038,2006,1942,1887,1868,1868,
+1859,1846,1848,1859,1847,1798,1731,1672,1624,1572,1511,1454,1414,1387,1352,1299,1238,1185,1144,1116,
+1106,1111,1113,1101,1085,1079,1069,1037,998,983,995,988,934,857,800,767,727,670,608,552,
+493,429,376,347,338,335,332,331,328,315,291,264,252,265,300,324,298,211,93,-8,
+-77,-130,-196,-280,-362,-426,-474,-525,-584,-637,-672,-696,-729,-785,-849,-900,-927,-949,-990,-1048,
+-1097,-1118,-1125,-1144,-1178,-1211,-1232,-1245,-1252,-1249,-1246,-1262,-1296,-1319,-1312,-1289,-1277,-1281,-1282,-1278,
+-1279,-1288,-1291,-1282,-1275,-1280,-1285,-1273,-1251,-1239,-1239,-1229,-1195,-1151,-1122,-1108,-1085,-1045,-1005,-991,
+-996,-998,-991,-998,-1033,-1078,-1114,-1145,-1186,-1232,-1264,-1278,-1288,-1304,-1317,-1316,-1302,-1277,-1249,-1229,
+-1224,-1228,-1228,-1220,-1215,-1218,-1222,-1222,-1220,-1216,-1207,-1195,-1184,-1167,-1129,-1072,-1016,-971,-926,-862,
+-774,-675,-575,-484,-405,-329,-247,-154,-66,-12,-28,-115,-201,-158,89,475,867,1208,1542,1866,
+2064,2053,1923,1843,1862,1900,1930,2044,2296,2578,2737,2756,2741,2752,2751,2694,2608,2530,2451,2336,
+2179,1994,1788,1564,1346,1178,1075,1011,938,822,665,500,357,238,116,-21,-166,-308,-456,-621,
+-782,-914,-1019,-1122,-1236,-1350,-1454,-1553,-1651,-1741,-1820,-1893,-1960,-2012,-2058,-2126,-2228,-2331,-2391,-2411,
+-2426,-2449,-2454,-2432,-2420,-2449,-2492,-2480,-2378,-2222,-2065,-1928,-1790,-1634,-1471,-1333,-1248,-1213,-1183,-1110,
+-996,-879,-771,-650,-516,-439,-502,-693,-901,-1025,-1049,-1023,-984,-944,-908,-882,-861,-830,-786,-739,
+-696,-658,-627,-600,-570,-528,-468,-392,-306,-215,-123,-26,80,196,310,416,525,644,757,844,
+907,969,1041,1113,1174,1229,1288,1356,1429,1499,1556,1595,1617,1629,1637,1642,1641,1626,1590,1544,
+1513,1512,1530,1545,1559,1586,1621,1638,1630,1615,1607,1607,1609,1612,1599,1548,1459,1386,1296,1227,
+1170,1111,1053,1012,992,982,970,948,913,877,861,868,873,857,839,849,893,949,1012,1100,
+1219,1337,1407,1407,1342,1221,1058,878,716,589,485,377,241,74,-102,-265,-409,-546,-686,-824,
+-949,-1069,-1191,-1298,-1347,-1314,-1225,-1147,-1125,-1147,-1167,-1157,-1136,-1143,-1195,-1289,-1407,-1523,-1598,-1610,
+-1578,-1560,-1587,-1635,-1673,-1706,-1761,-1838,-1916,-1995,-2109,-2260,-2394,-2458,-2476,-2532,-2678,-2881,-3068,-3196,
+-3276,-3339,-3402,-3459,-3497,-3525,-3580,-3687,-3809,-3868,-3836,-3778,-3772,-3804,-3792,-3704,-3595,-3534,-3514,-3497,
+-3482,-3500,-3553,-3605,-3633,-3648,-3668,-3694,-3728,-3779,-3853,-3939,-4025,-4100,-4164,-4225,-4301,-4407,-4534,-4660,
+-4779,-4901,-5028,-5154,-5283,-5421,-5558,-5671,-5758,-5839,-5926,-6012,-6099,-6212,-6361,-6517,-6645,-6738,-6812,-6883,
+-6970,-7103,-7287,-7484,-7642,-7751,-7835,-7911,-7970,-8012,-8051,-8097,-8144,-8183,-8212,-8227,-8220,-8191,-8149,-8100,
+-8047,-7996,-7953,-7913,-7865,-7808,-7742,-7654,-7538,-7410,-7295,-7180,-7031,-6848,-6680,-6562,-6470,-6355,-6211,-6063,
+-5916,-5745,-5539,-5321,-5114,-4918,-4719,-4519,-4319,-4100,-3839,-3541,-3234,-2944,-2683,-2463,-2290,-2139,-1969,-1773,
+-1599,-1488,-1416,-1326,-1220,-1157,-1150,-1098,-880,-480,0,440,789,1057,1283,1510,1765,2021,2214,2301,
+2310,2318,2389,2532,2707,2860,2968,3055,3145,3227,3279,3318,3376,3443,3485,3524,3641,3866,4113,4272,
+4334,4373,4427,4469,4481,4510,4614,4780,4933,4985,4895,4683,4427,4217,4109,4111,4200,4346,4522,4713,
+4928,5190,5498,5824,6125,6368,6551,6693,6811,6895,6925,6919,6929,6989,7065,7110,7130,7161,7207,7244,
+7279,7344,7423,7462,7458,7461,7476,7443,7364,7366,7522,7674,7572,7192,6821,6756,6996,7285,7404,7345,
+7229,7134,7048,6944,6845,6805,6835,6873,6864,6830,6833,6868,6836,6658,6386,6156,6034,5967,5880,5782,
+5741,5783,5854,5875,5807,5675,5531,5410,5315,5235,5165,5103,5038,4953,4850,4754,4671,4576,4443,4297,
+4189,4132,4091,4031,3962,3909,3866,3810,3733,3643,3552,3471,3419,3395,3365,3285,3161,3040,2951,2876,
+2796,2724,2674,2632,2574,2497,2418,2344,2282,2244,2235,2233,2209,2164,2121,2089,2052,2004,1959,1928,
+1904,1878,1857,1850,1847,1825,1773,1703,1643,1601,1565,1516,1454,1397,1355,1314,1257,1190,1134,1098,
+1080,1073,1070,1058,1033,1014,1018,1027,1014,982,962,964,953,903,831,771,727,677,616,557,
+505,447,380,319,280,263,257,254,254,253,245,223,194,179,205,272,337,336,246,102,
+-28,-109,-157,-212,-295,-385,-455,-499,-540,-590,-641,-677,-700,-733,-784,-841,-883,-907,-931,-972,
+-1028,-1076,-1100,-1113,-1133,-1163,-1189,-1203,-1214,-1224,-1224,-1215,-1220,-1250,-1280,-1278,-1250,-1225,-1220,-1223,
+-1223,-1220,-1217,-1211,-1204,-1207,-1217,-1219,-1199,-1172,-1154,-1143,-1121,-1088,-1062,-1056,-1058,-1041,-998,-953,
+-933,-935,-940,-940,-949,-980,-1024,-1062,-1094,-1132,-1178,-1215,-1239,-1258,-1278,-1291,-1289,-1273,-1252,-1231,
+-1216,-1211,-1212,-1211,-1207,-1207,-1208,-1206,-1200,-1196,-1195,-1191,-1179,-1160,-1133,-1096,-1052,-1011,-973,-926,
+-860,-775,-682,-587,-501,-424,-349,-262,-166,-81,-26,-21,-73,-152,-165,-19,292,678,1054,1407,
+1735,1977,2071,2039,1967,1903,1859,1887,2072,2397,2702,2845,2846,2834,2865,2881,2828,2730,2635,2547,
+2434,2281,2097,1890,1667,1457,1297,1206,1161,1110,1005,844,669,525,408,282,133,-21,-170,-330,
+-509,-680,-814,-923,-1041,-1174,-1297,-1398,-1489,-1580,-1671,-1758,-1844,-1915,-1961,-2005,-2092,-2220,-2327,-2359,
+-2338,-2323,-2330,-2325,-2295,-2277,-2304,-2341,-2323,-2228,-2091,-1954,-1832,-1714,-1591,-1462,-1341,-1247,-1189,-1141,
+-1070,-967,-856,-752,-641,-529,-474,-540,-715,-910,-1037,-1075,-1055,-1013,-969,-931,-905,-884,-858,-825,
+-788,-748,-707,-671,-644,-618,-583,-530,-458,-369,-270,-169,-67,44,164,280,385,491,608,722,
+812,877,939,1009,1076,1128,1173,1236,1324,1419,1496,1542,1562,1572,1580,1585,1583,1577,1566,1545,
+1517,1499,1501,1516,1526,1532,1550,1578,1599,1598,1582,1565,1554,1548,1544,1526,1472,1386,1326,1248,
+1184,1129,1074,1025,994,981,978,974,964,945,921,909,914,925,926,924,943,987,1037,1084,
+1143,1233,1341,1429,1464,1436,1344,1198,1018,841,696,583,476,345,182,6,-162,-317,-465,-616,
+-764,-899,-1020,-1130,-1217,-1251,-1216,-1139,-1079,-1072,-1093,-1085,-1035,-996,-1029,-1147,-1306,-1449,-1534,-1543,
+-1492,-1435,-1429,-1484,-1557,-1600,-1620,-1664,-1757,-1886,-2020,-2148,-2263,-2346,-2379,-2393,-2458,-2620,-2846,-3048,
+-3165,-3217,-3260,-3323,-3387,-3424,-3445,-3499,-3606,-3719,-3762,-3716,-3650,-3640,-3676,-3679,-3609,-3507,-3437,-3405,
+-3386,-3379,-3406,-3466,-3521,-3545,-3551,-3560,-3580,-3614,-3669,-3751,-3850,-3950,-4032,-4083,-4109,-4144,-4220,-4340,
+-4475,-4602,-4724,-4850,-4981,-5114,-5249,-5379,-5487,-5571,-5648,-5735,-5829,-5931,-6054,-6197,-6333,-6435,-6513,-6597,
+-6702,-6825,-6972,-7147,-7329,-7477,-7577,-7647,-7709,-7770,-7828,-7882,-7934,-7979,-8015,-8042,-8054,-8044,-8015,-7980,
+-7947,-7911,-7875,-7844,-7812,-7768,-7707,-7633,-7545,-7436,-7315,-7200,-7084,-6943,-6779,-6634,-6535,-6454,-6340,-6185,
+-6027,-5885,-5738,-5558,-5354,-5149,-4952,-4752,-4546,-4334,-4106,-3850,-3570,-3293,-3042,-2825,-2639,-2477,-2319,-2132,
+-1913,-1705,-1550,-1431,-1302,-1155,-1048,-1011,-995,-910,-722,-467,-191,84,354,619,902,1228,1569,1844,
+1992,2045,2100,2224,2398,2554,2655,2726,2812,2919,3009,3060,3107,3185,3276,3347,3433,3604,3849,4038,
+4060,3964,3896,3936,4037,4130,4216,4344,4517,4668,4711,4600,4368,4109,3926,3875,3955,4130,4358,4602,
+4843,5094,5372,5664,5923,6114,6251,6382,6542,6704,6805,6818,6793,6811,6894,6988,7044,7079,7130,7186,
+7216,7239,7300,7389,7447,7461,7469,7465,7387,7255,7223,7406,7688,7819,7701,7500,7438,7555,7702,7730,
+7615,7429,7247,7105,7012,6977,6998,7041,7043,6980,6913,6914,6951,6896,6685,6423,6274,6266,6262,6132,
+5905,5725,5695,5794,5911,5940,5849,5683,5515,5386,5296,5237,5204,5176,5118,5020,4913,4826,4738,4611,
+4454,4321,4242,4191,4133,4073,4028,3989,3931,3848,3751,3655,3574,3523,3499,3465,3385,3267,3152,3062,
+2985,2907,2837,2785,2734,2668,2588,2508,2435,2379,2362,2389,2426,2420,2356,2262,2178,2119,2075,2029,
+1976,1926,1895,1883,1871,1844,1797,1737,1675,1622,1589,1564,1524,1460,1396,1346,1297,1231,1156,1101,
+1079,1071,1061,1044,1017,982,957,959,976,978,958,937,928,913,875,821,768,714,652,587,
+534,486,429,359,291,237,202,183,176,176,177,173,157,127,107,130,209,302,333,260,
+114,-35,-137,-194,-247,-324,-410,-477,-517,-555,-602,-650,-683,-709,-744,-789,-830,-858,-880,-907,
+-944,-990,-1034,-1067,-1092,-1115,-1139,-1154,-1161,-1170,-1182,-1184,-1173,-1168,-1190,-1221,-1230,-1205,-1173,-1159,
+-1162,-1167,-1166,-1157,-1143,-1136,-1142,-1151,-1143,-1117,-1087,-1066,-1045,-1016,-989,-982,-991,-994,-974,-934,
+-894,-874,-875,-885,-893,-904,-930,-967,-1006,-1040,-1076,-1119,-1163,-1199,-1227,-1249,-1260,-1256,-1242,-1226,
+-1214,-1204,-1196,-1190,-1186,-1186,-1186,-1185,-1176,-1165,-1160,-1163,-1166,-1159,-1136,-1101,-1062,-1027,-997,-962,
+-908,-838,-761,-682,-600,-517,-437,-355,-261,-165,-87,-36,-7,-14,-72,-132,-78,172,570,983,
+1331,1625,1897,2124,2244,2220,2082,1937,1936,2161,2527,2832,2950,2936,2927,2970,3001,2962,2870,2770,
+2667,2543,2387,2209,2015,1819,1638,1495,1396,1330,1263,1155,996,822,676,560,438,293,142,-7,
+-174,-361,-539,-682,-809,-952,-1106,-1238,-1340,-1432,-1527,-1623,-1717,-1804,-1870,-1906,-1944,-2035,-2169,-2269,
+-2281,-2235,-2197,-2181,-2155,-2112,-2094,-2122,-2154,-2133,-2047,-1930,-1814,-1713,-1630,-1559,-1477,-1373,-1262,-1177,
+-1124,-1073,-998,-900,-792,-685,-600,-579,-653,-798,-946,-1040,-1070,-1056,-1022,-982,-944,-912,-883,-857,
+-836,-813,-778,-733,-692,-665,-643,-611,-558,-482,-389,-287,-185,-86,20,138,256,362,465,577,
+692,789,861,924,991,1054,1101,1145,1213,1311,1416,1492,1525,1530,1530,1534,1532,1522,1508,1499,
+1493,1484,1479,1488,1502,1508,1503,1504,1523,1548,1557,1546,1524,1504,1491,1480,1456,1403,1326,1283,
+1218,1155,1094,1038,996,976,973,976,977,975,968,959,955,963,980,999,1018,1048,1090,1136,
+1180,1235,1316,1417,1508,1554,1536,1449,1306,1133,962,820,704,590,456,298,126,-47,-215,-381,
+-546,-704,-843,-955,-1046,-1117,-1153,-1138,-1084,-1036,-1024,-1024,-991,-930,-904,-976,-1142,-1337,-1478,-1518,
+-1462,-1363,-1296,-1299,-1353,-1408,-1441,-1475,-1556,-1696,-1867,-2025,-2143,-2220,-2266,-2288,-2309,-2383,-2552,-2789,
+-3001,-3116,-3151,-3178,-3237,-3301,-3335,-3350,-3391,-3475,-3564,-3604,-3583,-3549,-3554,-3589,-3597,-3541,-3446,-3362,
+-3310,-3282,-3280,-3315,-3375,-3422,-3436,-3434,-3442,-3468,-3508,-3563,-3642,-3745,-3855,-3948,-4002,-4012,-4014,-4055,
+-4155,-4288,-4424,-4554,-4688,-4827,-4960,-5084,-5200,-5299,-5378,-5451,-5534,-5632,-5745,-5874,-6011,-6132,-6225,-6305,
+-6402,-6523,-6658,-6805,-6969,-7141,-7289,-7392,-7459,-7515,-7577,-7645,-7712,-7769,-7810,-7839,-7861,-7870,-7861,-7838,
+-7813,-7791,-7768,-7744,-7723,-7699,-7654,-7583,-7497,-7408,-7311,-7206,-7099,-6987,-6855,-6706,-6573,-6484,-6412,-6308,
+-6157,-5994,-5848,-5708,-5549,-5366,-5176,-4984,-4783,-4565,-4338,-4105,-3861,-3610,-3369,-3158,-2972,-2794,-2615,-2435,
+-2253,-2063,-1869,-1681,-1501,-1319,-1138,-980,-867,-801,-769,-751,-711,-604,-411,-163,98,369,671,982,
+1229,1360,1423,1524,1710,1923,2073,2138,2187,2292,2447,2588,2681,2763,2882,3031,3189,3383,3648,3915,
+4021,3877,3588,3374,3355,3481,3640,3780,3921,4073,4198,4240,4175,4044,3925,3889,3961,4124,4349,4601,
+4850,5082,5312,5559,5803,5992,6098,6165,6264,6424,6591,6688,6698,6686,6724,6818,6907,6961,7009,7087,
+7167,7211,7234,7281,7352,7403,7427,7452,7452,7354,7172,7065,7186,7487,7758,7856,7824,7792,7809,7825,
+7774,7649,7493,7356,7256,7186,7140,7126,7132,7116,7053,6988,6982,7002,6938,6743,6527,6435,6469,6480,
+6346,6089,5843,5723,5755,5869,5954,5929,5805,5658,5549,5478,5426,5389,5363,5315,5218,5093,4984,4892,
+4781,4637,4495,4389,4312,4246,4188,4146,4104,4042,3955,3859,3765,3683,3622,3581,3540,3471,3375,3273,
+3181,3098,3023,2961,2906,2843,2766,2686,2612,2547,2504,2505,2556,2617,2627,2552,2417,2284,2197,2149,
+2098,2021,1947,1910,1904,1886,1831,1759,1696,1648,1613,1591,1573,1537,1478,1417,1368,1312,1228,1138,
+1085,1076,1079,1063,1029,988,945,909,895,903,913,909,895,880,859,832,799,760,705,635,
+566,508,454,394,329,265,205,152,117,105,104,105,102,92,71,49,58,121,208,254,
+211,92,-44,-151,-222,-284,-358,-434,-491,-529,-567,-614,-657,-687,-716,-754,-792,-816,-832,-855,
+-885,-914,-945,-984,-1029,-1065,-1086,-1097,-1104,-1108,-1116,-1127,-1132,-1123,-1112,-1123,-1152,-1171,-1159,-1128,
+-1105,-1103,-1111,-1113,-1101,-1081,-1072,-1077,-1081,-1063,-1029,-1000,-978,-955,-929,-917,-926,-937,-927,-895,
+-858,-829,-814,-818,-836,-857,-873,-889,-918,-956,-994,-1028,-1068,-1113,-1158,-1193,-1215,-1222,-1217,-1206,
+-1199,-1197,-1191,-1180,-1167,-1161,-1160,-1158,-1149,-1133,-1120,-1117,-1125,-1133,-1129,-1105,-1066,-1025,-993,-969,
+-934,-875,-803,-733,-669,-599,-522,-444,-362,-267,-170,-97,-45,4,40,12,-77,-107,67,450,
+890,1251,1543,1864,2225,2505,2564,2403,2192,2151,2360,2698,2958,3043,3027,3028,3073,3104,3075,3002,
+2912,2809,2681,2526,2351,2167,1990,1836,1708,1592,1483,1377,1258,1112,952,807,685,564,428,287,
+145,-13,-194,-370,-524,-673,-838,-1008,-1153,-1270,-1382,-1495,-1598,-1686,-1763,-1821,-1851,-1881,-1954,-2062,
+-2139,-2141,-2097,-2060,-2037,-2000,-1953,-1935,-1954,-1970,-1943,-1874,-1787,-1700,-1624,-1573,-1540,-1491,-1397,-1280,
+-1195,-1160,-1138,-1081,-977,-856,-755,-703,-719,-800,-908,-998,-1044,-1054,-1042,-1019,-987,-948,-907,-871,
+-849,-843,-835,-804,-752,-704,-676,-655,-621,-562,-482,-387,-284,-185,-91,7,123,243,353,452,
+555,665,765,842,904,964,1021,1070,1122,1198,1298,1399,1465,1489,1489,1487,1489,1486,1468,1448,
+1438,1439,1445,1452,1465,1479,1481,1467,1456,1467,1494,1512,1506,1482,1456,1437,1420,1391,1345,1283,
+1250,1196,1134,1071,1017,983,971,975,982,986,986,987,989,994,1006,1030,1065,1106,1145,1182,
+1224,1277,1348,1437,1538,1627,1672,1650,1558,1417,1261,1117,987,857,714,556,392,224,50,-128,
+-308,-486,-653,-793,-894,-966,-1026,-1068,-1067,-1021,-967,-934,-914,-880,-845,-862,-969,-1149,-1336,-1456,
+-1463,-1378,-1273,-1216,-1215,-1223,-1220,-1238,-1323,-1475,-1655,-1820,-1952,-2050,-2121,-2172,-2206,-2235,-2298,-2443,
+-2660,-2866,-2983,-3016,-3035,-3087,-3151,-3193,-3216,-3248,-3301,-3359,-3404,-3430,-3449,-3476,-3506,-3512,-3466,-3377,
+-3284,-3219,-3189,-3191,-3226,-3276,-3313,-3323,-3325,-3342,-3377,-3417,-3464,-3531,-3626,-3738,-3841,-3908,-3922,-3907,
+-3911,-3973,-4085,-4219,-4363,-4518,-4675,-4815,-4933,-5036,-5126,-5200,-5264,-5337,-5434,-5555,-5689,-5822,-5941,-6039,
+-6129,-6228,-6345,-6473,-6612,-6770,-6940,-7094,-7207,-7280,-7336,-7395,-7462,-7529,-7586,-7626,-7651,-7668,-7678,-7676,
+-7662,-7645,-7629,-7614,-7602,-7592,-7571,-7519,-7434,-7336,-7246,-7165,-7088,-7010,-6920,-6803,-6661,-6530,-6442,-6379,
+-6292,-6153,-5986,-5830,-5690,-5543,-5379,-5205,-5023,-4822,-4593,-4352,-4118,-3896,-3680,-3473,-3284,-3108,-2921,-2713,
+-2508,-2341,-2206,-2057,-1861,-1633,-1416,-1222,-1027,-820,-646,-579,-633,-724,-733,-613,-418,-217,-22,187,
+397,547,613,662,789,1012,1248,1394,1443,1485,1607,1805,2000,2141,2258,2405,2604,2852,3161,3523,
+3830,3912,3696,3317,3010,2919,3010,3169,3325,3474,3623,3757,3849,3899,3942,4023,4157,4328,4519,4726,
+4947,5163,5354,5533,5720,5905,6043,6113,6158,6239,6371,6500,6570,6583,6598,6661,6754,6825,6859,6901,
+6984,7085,7162,7219,7283,7354,7400,7418,7428,7406,7293,7098,6951,6992,7219,7489,7673,7751,7775,7780,
+7756,7688,7587,7495,7440,7407,7349,7256,7169,7124,7095,7044,6989,6983,7012,6988,6859,6689,6576,6534,
+6495,6406,6265,6098,5945,5863,5878,5937,5942,5863,5768,5721,5707,5674,5615,5559,5503,5412,5277,5135,
+5019,4917,4806,4688,4578,4479,4392,4320,4262,4203,4127,4037,3945,3854,3764,3681,3618,3575,3537,3487,
+3416,3329,3239,3164,3103,3041,2966,2887,2814,2748,2686,2642,2641,2686,2741,2748,2668,2516,2357,2253,
+2206,2160,2079,1989,1938,1919,1881,1804,1719,1659,1623,1600,1589,1583,1560,1514,1465,1420,1351,1241,
+1127,1067,1065,1071,1047,1001,953,906,862,832,826,835,842,837,816,786,759,742,721,677,
+610,536,466,396,330,275,229,174,111,63,45,44,40,32,27,18,2,-5,19,67,
+99,79,9,-82,-166,-238,-308,-385,-456,-506,-543,-582,-628,-664,-688,-717,-756,-787,-799,-809,
+-836,-868,-888,-905,-942,-995,-1034,-1046,-1047,-1052,-1061,-1071,-1080,-1085,-1077,-1061,-1059,-1080,-1107,-1110,
+-1086,-1058,-1046,-1051,-1052,-1038,-1016,-1007,-1012,-1012,-989,-950,-919,-897,-875,-857,-862,-884,-892,-866,
+-824,-791,-771,-759,-764,-792,-827,-846,-855,-876,-917,-959,-992,-1026,-1071,-1121,-1158,-1176,-1179,-1173,
+-1166,-1165,-1168,-1166,-1154,-1139,-1133,-1133,-1128,-1111,-1087,-1072,-1072,-1084,-1094,-1089,-1065,-1029,-991,-962,
+-939,-905,-847,-777,-710,-651,-588,-517,-447,-375,-287,-192,-115,-58,6,77,87,-3,-100,-31,
+272,698,1090,1434,1825,2289,2685,2836,2721,2521,2462,2619,2874,3060,3119,3121,3146,3192,3212,3183,
+3123,3046,2946,2820,2673,2508,2331,2162,2024,1905,1774,1621,1469,1332,1199,1058,918,787,656,516,
+375,240,100,-52,-208,-360,-518,-696,-879,-1043,-1190,-1333,-1466,-1572,-1651,-1718,-1775,-1810,-1833,-1873,
+-1933,-1971,-1965,-1935,-1916,-1904,-1880,-1849,-1834,-1831,-1812,-1768,-1720,-1682,-1643,-1600,-1566,-1540,-1486,-1387,
+-1281,-1228,-1233,-1228,-1152,-1014,-877,-797,-791,-842,-919,-990,-1031,-1040,-1032,-1019,-1003,-978,-941,-898,
+-864,-855,-866,-870,-841,-784,-728,-694,-670,-632,-571,-492,-398,-295,-192,-96,1,112,234,345,
+440,531,631,729,807,865,915,965,1018,1082,1167,1266,1356,1413,1433,1433,1433,1438,1437,1422,
+1400,1386,1388,1401,1416,1431,1442,1440,1424,1409,1416,1443,1467,1464,1438,1407,1381,1359,1331,1295,
+1250,1219,1172,1115,1059,1017,993,986,990,998,1003,1005,1010,1021,1034,1049,1077,1123,1176,1218,
+1248,1287,1351,1439,1538,1639,1729,1783,1772,1691,1569,1445,1335,1216,1059,866,665,481,310,137,
+-43,-227,-409,-584,-730,-830,-896,-948,-982,-966,-900,-826,-783,-766,-760,-773,-838,-967,-1134,-1292,
+-1383,-1372,-1283,-1199,-1173,-1170,-1124,-1061,-1086,-1253,-1488,-1675,-1780,-1849,-1930,-2026,-2113,-2173,-2201,-2228,
+-2309,-2467,-2648,-2772,-2822,-2849,-2898,-2967,-3030,-3080,-3119,-3149,-3178,-3220,-3275,-3321,-3352,-3372,-3377,-3341,
+-3258,-3167,-3112,-3102,-3117,-3144,-3177,-3205,-3220,-3232,-3257,-3294,-3330,-3368,-3427,-3515,-3623,-3728,-3805,-3834,
+-3816,-3790,-3801,-3871,-3990,-4146,-4325,-4507,-4662,-4781,-4877,-4962,-5031,-5086,-5148,-5240,-5365,-5504,-5638,-5759,
+-5865,-5961,-6056,-6160,-6279,-6418,-6579,-6748,-6901,-7018,-7098,-7158,-7215,-7276,-7337,-7390,-7429,-7455,-7471,-7482,
+-7486,-7482,-7473,-7461,-7454,-7456,-7458,-7438,-7379,-7286,-7186,-7102,-7036,-6985,-6940,-6881,-6778,-6633,-6492,-6402,
+-6354,-6285,-6156,-5985,-5822,-5682,-5547,-5397,-5235,-5064,-4869,-4635,-4383,-4147,-3945,-3763,-3582,-3402,-3222,-3026,
+-2805,-2594,-2446,-2357,-2251,-2057,-1800,-1559,-1358,-1133,-840,-554,-420,-485,-634,-706,-647,-521,-400,-284,
+-146,-6,84,122,173,309,524,734,857,892,922,1030,1221,1428,1596,1732,1888,2099,2378,2732,
+3134,3476,3607,3467,3158,2875,2745,2767,2873,3014,3180,3370,3569,3757,3934,4119,4324,4534,4715,4861,
+5007,5177,5357,5515,5650,5789,5933,6049,6118,6164,6232,6323,6401,6440,6459,6501,6582,6671,6722,6733,
+6747,6806,6903,7009,7115,7230,7342,7417,7437,7412,7346,7223,7060,6930,6912,7019,7184,7337,7454,7545,
+7615,7647,7621,7551,7485,7455,7438,7379,7267,7155,7085,7033,6961,6895,6895,6955,6988,6925,6782,6613,
+6458,6353,6327,6351,6329,6202,6039,5955,5956,5938,5850,5765,5771,5837,5858,5798,5715,5653,5586,5468,
+5306,5152,5039,4959,4885,4796,4690,4581,4485,4402,4319,4226,4129,4036,3940,3836,3733,3654,3618,3616,
+3616,3582,3507,3414,3328,3251,3172,3089,3018,2958,2897,2828,2772,2754,2772,2797,2784,2702,2554,2393,
+2284,2237,2200,2130,2043,1977,1931,1870,1787,1711,1658,1615,1582,1571,1582,1584,1561,1526,1481,1394,
+1258,1123,1052,1042,1037,1003,951,904,862,820,786,770,772,776,769,740,700,669,662,658,
+631,573,500,420,338,269,226,196,146,75,16,-6,-9,-20,-36,-43,-43,-51,-68,-79,
+-80,-81,-94,-122,-158,-203,-258,-328,-407,-478,-529,-567,-606,-646,-675,-692,-716,-749,-772,-779,
+-789,-820,-852,-866,-876,-913,-967,-1002,-1004,-998,-1008,-1028,-1041,-1047,-1049,-1040,-1018,-1003,-1012,-1037,
+-1049,-1035,-1008,-989,-984,-980,-965,-945,-938,-946,-946,-921,-881,-846,-821,-799,-787,-801,-829,-834,
+-803,-762,-737,-722,-707,-709,-742,-786,-810,-816,-835,-876,-920,-952,-984,-1032,-1084,-1121,-1135,-1135,
+-1130,-1125,-1124,-1128,-1127,-1116,-1103,-1099,-1103,-1099,-1077,-1047,-1025,-1024,-1036,-1045,-1038,-1017,-988,-959,
+-934,-909,-875,-823,-758,-696,-640,-580,-514,-449,-385,-308,-216,-131,-65,8,99,152,97,-24,
+-63,103,444,844,1256,1720,2240,2693,2923,2902,2774,2725,2823,2989,3114,3170,3209,3268,3322,3333,
+3297,3236,3155,3046,2914,2777,2636,2487,2343,2222,2110,1967,1780,1585,1421,1284,1151,1014,876,732,
+577,423,289,172,55,-72,-212,-369,-550,-742,-928,-1105,-1271,-1416,-1523,-1599,-1667,-1731,-1775,-1794,
+-1805,-1817,-1817,-1795,-1769,-1760,-1764,-1768,-1772,-1773,-1755,-1703,-1641,-1611,-1619,-1630,-1618,-1587,-1537,-1452,
+-1338,-1253,-1251,-1302,-1302,-1187,-1003,-859,-818,-863,-935,-995,-1028,-1035,-1023,-1005,-991,-978,-957,-923,
+-885,-862,-866,-888,-898,-873,-817,-758,-717,-685,-646,-590,-519,-432,-327,-215,-111,-12,93,208,
+318,409,493,582,674,751,807,849,894,952,1026,1117,1213,1295,1346,1368,1370,1369,1373,1378,
+1372,1355,1338,1337,1352,1371,1385,1390,1387,1375,1365,1371,1399,1425,1425,1398,1360,1326,1300,1276,
+1251,1219,1191,1148,1097,1054,1030,1020,1015,1015,1018,1023,1029,1044,1066,1087,1105,1135,1185,1243,
+1282,1305,1338,1403,1492,1585,1679,1775,1852,1874,1825,1735,1650,1576,1471,1297,1065,827,619,435,
+255,75,-102,-282,-462,-619,-730,-803,-853,-867,-817,-720,-636,-606,-618,-645,-697,-796,-937,-1092,
+-1225,-1290,-1254,-1153,-1088,-1107,-1134,-1078,-997,-1058,-1315,-1618,-1788,-1812,-1817,-1894,-2022,-2140,-2212,-2229,
+-2209,-2209,-2285,-2425,-2564,-2651,-2700,-2749,-2812,-2887,-2962,-3019,-3048,-3065,-3096,-3141,-3171,-3179,-3186,-3192,
+-3161,-3081,-3004,-2985,-3016,-3051,-3068,-3082,-3103,-3123,-3138,-3161,-3196,-3231,-3270,-3331,-3421,-3524,-3621,-3701,
+-3747,-3743,-3700,-3665,-3686,-3781,-3939,-4134,-4330,-4493,-4612,-4705,-4786,-4853,-4903,-4958,-5046,-5171,-5310,-5442,
+-5563,-5672,-5768,-5858,-5958,-6083,-6234,-6401,-6563,-6705,-6814,-6896,-6963,-7028,-7091,-7149,-7198,-7238,-7267,-7282,
+-7290,-7296,-7302,-7303,-7299,-7300,-7312,-7321,-7299,-7237,-7155,-7078,-7014,-6958,-6914,-6886,-6845,-6745,-6583,-6425,
+-6336,-6306,-6254,-6127,-5950,-5788,-5662,-5545,-5408,-5255,-5095,-4913,-4687,-4428,-4185,-3990,-3830,-3670,-3495,-3311,
+-3116,-2909,-2717,-2588,-2518,-2427,-2235,-1964,-1704,-1486,-1232,-885,-541,-372,-433,-592,-676,-641,-558,-481,
+-391,-261,-120,-15,54,137,267,425,557,627,642,653,720,862,1043,1216,1373,1537,1734,1978,
+2283,2637,2968,3169,3180,3047,2883,2778,2760,2819,2943,3130,3370,3641,3909,4156,4381,4587,4761,4883,
+4968,5068,5217,5389,5536,5652,5767,5892,5999,6064,6107,6159,6223,6273,6302,6334,6395,6483,6565,6608,
+6607,6597,6621,6693,6803,6937,7092,7251,7370,7407,7361,7266,7162,7067,6988,6936,6926,6962,7034,7133,
+7251,7374,7470,7503,7471,7416,7377,7349,7297,7216,7136,7062,6961,6831,6741,6756,6843,6898,6854,6727,
+6552,6366,6236,6230,6317,6353,6243,6067,5971,5965,5920,5772,5634,5645,5784,5900,5897,5824,5769,5736,
+5661,5513,5336,5199,5125,5080,5015,4911,4791,4683,4591,4501,4403,4300,4196,4085,3968,3859,3781,3751,
+3761,3777,3760,3697,3604,3502,3398,3291,3197,3129,3077,3013,2935,2870,2838,2831,2823,2789,2710,2585,
+2441,2327,2262,2214,2151,2074,2002,1934,1862,1798,1754,1712,1646,1576,1547,1567,1594,1595,1569,1518,
+1417,1271,1133,1057,1029,1002,954,904,864,828,789,757,737,724,712,695,664,623,594,591,
+596,576,523,451,373,295,233,198,172,119,38,-30,-59,-67,-82,-105,-115,-113,-117,-135,
+-162,-191,-221,-243,-252,-254,-268,-304,-364,-438,-508,-561,-599,-634,-669,-692,-705,-720,-743,-759,
+-764,-777,-807,-835,-844,-853,-889,-940,-968,-964,-958,-973,-997,-1010,-1013,-1013,-1003,-977,-953,-950,
+-966,-979,-973,-952,-931,-916,-903,-886,-868,-862,-869,-870,-847,-807,-770,-741,-717,-706,-719,-746,
+-753,-732,-704,-688,-673,-652,-647,-679,-729,-759,-768,-786,-824,-864,-895,-931,-985,-1039,-1073,-1084,
+-1085,-1083,-1081,-1081,-1085,-1086,-1078,-1067,-1063,-1068,-1066,-1048,-1016,-988,-979,-985,-989,-980,-962,-942,
+-923,-900,-869,-830,-782,-726,-674,-627,-576,-513,-445,-382,-315,-230,-139,-59,18,114,200,209,
+118,14,30,228,578,1027,1551,2107,2590,2886,2964,2918,2880,2923,3022,3116,3188,3261,3344,3408,
+3420,3386,3324,3238,3116,2971,2834,2720,2617,2518,2422,2314,2161,1954,1734,1544,1389,1247,1105,961,
+807,638,473,341,243,153,43,-91,-246,-422,-617,-818,-1012,-1189,-1337,-1450,-1536,-1611,-1678,-1724,
+-1743,-1743,-1732,-1706,-1664,-1625,-1611,-1622,-1651,-1687,-1716,-1711,-1661,-1600,-1578,-1603,-1630,-1623,-1577,-1500,
+-1391,-1272,-1210,-1252,-1340,-1347,-1208,-1000,-864,-864,-945,-1017,-1043,-1037,-1020,-998,-975,-960,-950,-933,
+-902,-869,-855,-864,-885,-896,-878,-833,-779,-731,-691,-651,-603,-542,-462,-360,-245,-136,-39,58,
+163,267,357,439,524,611,686,742,784,831,891,970,1060,1149,1223,1274,1301,1307,1301,1297,
+1302,1308,1301,1286,1283,1299,1321,1333,1336,1336,1333,1329,1334,1356,1382,1387,1361,1319,1280,1252,
+1234,1218,1191,1176,1138,1093,1061,1049,1048,1046,1043,1043,1048,1061,1087,1121,1150,1172,1204,1258,
+1318,1357,1377,1404,1458,1526,1595,1676,1780,1885,1939,1916,1849,1790,1749,1676,1524,1301,1059,836,
+634,441,259,90,-82,-263,-427,-548,-633,-689,-697,-632,-530,-463,-467,-506,-550,-615,-729,-881,
+-1036,-1157,-1198,-1126,-998,-945,-1021,-1115,-1100,-1045,-1152,-1471,-1803,-1938,-1901,-1876,-1966,-2113,-2229,-2286,
+-2287,-2237,-2177,-2181,-2283,-2433,-2557,-2628,-2664,-2697,-2744,-2808,-2873,-2921,-2958,-2995,-3020,-3014,-2988,-2979,
+-2981,-2946,-2869,-2817,-2849,-2930,-2982,-2986,-2986,-3007,-3027,-3035,-3049,-3083,-3126,-3172,-3238,-3329,-3425,-3511,
+-3589,-3656,-3680,-3644,-3584,-3568,-3638,-3787,-3977,-4165,-4318,-4428,-4512,-4588,-4655,-4709,-4765,-4851,-4971,-5104,
+-5231,-5348,-5456,-5551,-5643,-5751,-5891,-6057,-6225,-6375,-6500,-6599,-6679,-6753,-6829,-6905,-6968,-7019,-7059,-7088,
+-7102,-7104,-7110,-7126,-7140,-7146,-7151,-7166,-7172,-7144,-7085,-7030,-7000,-6971,-6920,-6866,-6833,-6795,-6688,-6506,
+-6332,-6249,-6239,-6199,-6069,-5889,-5738,-5636,-5542,-5418,-5270,-5116,-4945,-4730,-4473,-4221,-4020,-3869,-3727,-3565,
+-3386,-3204,-3025,-2862,-2742,-2661,-2556,-2363,-2096,-1835,-1603,-1334,-986,-654,-495,-544,-662,-695,-624,-526,
+-439,-329,-173,-6,132,247,362,470,546,579,587,589,600,645,744,894,1070,1253,1436,1618,
+1803,2013,2265,2537,2767,2901,2939,2925,2908,2921,2983,3104,3288,3529,3806,4082,4322,4509,4654,4759,
+4828,4889,4993,5160,5348,5499,5607,5709,5822,5913,5960,5988,6035,6098,6154,6194,6240,6307,6390,6466,
+6511,6520,6508,6511,6557,6650,6779,6939,7112,7249,7291,7235,7144,7087,7071,7046,6977,6891,6841,6849,
+6899,6969,7054,7140,7201,7221,7215,7205,7193,7170,7142,7105,7023,6865,6686,6598,6648,6747,6771,6695,
+6585,6480,6372,6275,6233,6234,6183,6037,5891,5865,5915,5872,5667,5446,5411,5585,5805,5914,5906,5870,
+5858,5830,5730,5568,5414,5321,5274,5216,5116,4999,4899,4822,4750,4667,4566,4446,4315,4191,4095,4033,
+3998,3978,3962,3932,3875,3791,3685,3561,3430,3312,3226,3158,3085,3004,2937,2894,2863,2827,2781,2720,
+2634,2524,2413,2316,2231,2151,2075,2000,1921,1850,1816,1813,1787,1699,1589,1531,1546,1583,1595,1572,
+1513,1407,1271,1156,1088,1044,988,926,881,848,808,762,727,703,677,648,623,598,568,544,
+538,537,511,452,380,311,248,198,168,139,83,0,-74,-113,-130,-149,-170,-179,-179,-185,
+-201,-225,-257,-296,-328,-340,-341,-349,-377,-425,-487,-550,-601,-635,-663,-691,-714,-726,-735,-748,
+-758,-765,-777,-800,-820,-826,-836,-868,-911,-934,-932,-930,-942,-958,-966,-969,-970,-960,-936,-911,
+-901,-906,-912,-911,-899,-879,-854,-831,-812,-795,-784,-781,-777,-758,-723,-686,-656,-631,-617,-625,
+-648,-663,-657,-645,-636,-621,-595,-584,-612,-662,-700,-718,-736,-764,-796,-828,-872,-929,-980,-1007,
+-1016,-1021,-1027,-1030,-1034,-1043,-1050,-1048,-1038,-1030,-1028,-1028,-1017,-993,-966,-948,-943,-939,-924,-905,
+-892,-881,-859,-821,-776,-728,-680,-637,-603,-566,-509,-437,-370,-312,-242,-148,-52,31,118,219,
+291,273,168,76,121,369,805,1364,1956,2477,2838,3005,3021,2981,2974,3024,3104,3182,3255,3331,
+3392,3413,3395,3354,3293,3192,3051,2906,2793,2714,2645,2563,2449,2287,2084,1872,1681,1513,1354,1195,
+1038,874,700,536,414,333,254,144,7,-144,-309,-498,-704,-908,-1092,-1248,-1376,-1479,-1560,-1622,
+-1663,-1684,-1690,-1677,-1637,-1577,-1526,-1508,-1522,-1556,-1599,-1646,-1672,-1661,-1628,-1611,-1621,-1624,-1588,-1517,
+-1427,-1324,-1227,-1186,-1241,-1340,-1357,-1228,-1033,-919,-943,-1031,-1082,-1070,-1033,-998,-965,-935,-919,-916,
+-908,-882,-853,-841,-849,-864,-872,-864,-836,-790,-737,-690,-648,-603,-547,-473,-379,-271,-166,-71,
+19,115,211,301,384,469,554,628,685,733,784,848,925,1008,1086,1151,1200,1233,1243,1232,
+1218,1218,1230,1236,1232,1233,1251,1274,1287,1291,1298,1306,1307,1306,1318,1340,1349,1329,1288,1249,
+1224,1211,1199,1176,1175,1145,1109,1082,1072,1073,1074,1074,1076,1083,1102,1135,1176,1209,1233,1268,
+1326,1390,1435,1459,1485,1523,1564,1609,1683,1798,1919,1982,1959,1891,1840,1823,1796,1703,1535,1328,
+1115,904,702,519,356,192,17,-142,-265,-359,-435,-467,-433,-369,-346,-383,-434,-476,-543,-667,
+-827,-975,-1078,-1097,-1006,-876,-852,-989,-1150,-1182,-1155,-1284,-1616,-1929,-2015,-1940,-1922,-2046,-2205,-2295,
+-2320,-2312,-2265,-2192,-2165,-2242,-2391,-2525,-2595,-2606,-2589,-2573,-2584,-2629,-2698,-2778,-2848,-2876,-2848,-2795,
+-2763,-2747,-2702,-2637,-2629,-2719,-2840,-2897,-2891,-2890,-2918,-2939,-2935,-2938,-2975,-3027,-3075,-3134,-3217,-3304,
+-3379,-3457,-3546,-3607,-3597,-3537,-3503,-3554,-3685,-3853,-4016,-4147,-4240,-4310,-4376,-4441,-4503,-4569,-4659,-4774,
+-4899,-5020,-5135,-5243,-5341,-5437,-5556,-5710,-5881,-6042,-6179,-6294,-6388,-6465,-6540,-6624,-6713,-6787,-6840,-6878,
+-6907,-6919,-6917,-6923,-6947,-6975,-6989,-6994,-7004,-7005,-6971,-6920,-6899,-6918,-6926,-6880,-6811,-6769,-6732,-6623,
+-6429,-6250,-6179,-6186,-6153,-6022,-5850,-5720,-5641,-5561,-5442,-5293,-5134,-4957,-4742,-4489,-4237,-4031,-3883,-3760,
+-3624,-3467,-3305,-3153,-3012,-2885,-2766,-2624,-2426,-2185,-1949,-1729,-1479,-1179,-906,-773,-781,-807,-743,-601,
+-459,-338,-201,-32,136,279,412,539,625,637,599,571,584,630,699,799,937,1110,1302,1493,
+1662,1804,1942,2109,2312,2519,2697,2837,2949,3045,3140,3246,3370,3518,3697,3906,4123,4314,4459,4566,
+4644,4703,4770,4894,5085,5290,5444,5544,5636,5736,5812,5845,5867,5921,6003,6076,6127,6175,6237,6306,
+6371,6422,6451,6458,6461,6491,6564,6678,6827,6989,7110,7132,7059,6978,6970,7016,7027,6955,6844,6771,
+6756,6758,6747,6734,6746,6788,6848,6912,6964,6989,6993,6996,6986,6908,6747,6589,6552,6643,6729,6693,
+6569,6473,6454,6456,6419,6337,6215,6041,5848,5738,5778,5878,5852,5627,5342,5220,5353,5632,5870,5971,
+5972,5956,5948,5905,5794,5650,5536,5469,5407,5315,5207,5119,5058,5007,4945,4855,4731,4585,4459,4380,
+4333,4279,4205,4132,4079,4034,3974,3883,3763,3621,3477,3350,3248,3163,3087,3016,2945,2873,2808,2758,
+2720,2672,2601,2505,2393,2273,2165,2076,1994,1905,1830,1808,1826,1810,1714,1587,1515,1520,1552,1564,
+1542,1480,1377,1261,1175,1125,1072,996,924,882,849,796,733,689,662,629,589,561,543,520,
+495,480,469,434,370,298,236,182,137,105,75,27,-44,-114,-165,-197,-220,-230,-230,-231,
+-244,-261,-277,-300,-335,-370,-391,-404,-425,-459,-501,-552,-606,-649,-675,-692,-714,-737,-752,-758,
+-764,-773,-780,-789,-803,-815,-820,-830,-854,-885,-905,-912,-916,-920,-921,-921,-926,-930,-921,-900,
+-880,-868,-861,-856,-856,-853,-834,-800,-769,-749,-733,-713,-697,-686,-671,-644,-610,-578,-553,-536,
+-540,-561,-583,-592,-591,-586,-572,-547,-533,-551,-596,-641,-671,-691,-710,-733,-769,-820,-874,-910,
+-926,-936,-950,-962,-971,-980,-995,-1010,-1015,-1009,-999,-989,-982,-978,-968,-950,-928,-911,-896,-874,
+-854,-844,-840,-821,-781,-734,-689,-645,-604,-574,-546,-499,-428,-360,-312,-259,-169,-58,35,112,
+208,319,379,328,206,144,274,641,1182,1786,2343,2775,3033,3118,3092,3051,3063,3123,3187,3235,
+3277,3315,3329,3317,3299,3287,3248,3150,3007,2873,2777,2706,2623,2503,2345,2165,1983,1810,1641,1465,
+1285,1109,934,757,600,491,421,346,234,95,-46,-193,-369,-578,-796,-995,-1169,-1317,-1437,-1523,
+-1581,-1619,-1647,-1659,-1639,-1581,-1507,-1461,-1463,-1493,-1518,-1534,-1562,-1604,-1636,-1645,-1643,-1639,-1614,-1544,
+-1445,-1352,-1279,-1220,-1193,-1231,-1308,-1329,-1232,-1077,-992,-1023,-1095,-1115,-1074,-1018,-972,-925,-881,-860,
+-866,-870,-855,-834,-829,-838,-849,-856,-857,-843,-804,-749,-695,-650,-603,-544,-472,-387,-291,-193,
+-99,-10,78,167,253,337,423,507,579,638,692,751,817,891,966,1033,1087,1130,1163,1178,
+1167,1145,1137,1151,1171,1183,1195,1217,1242,1256,1264,1280,1298,1303,1297,1300,1316,1326,1310,1273,
+1236,1212,1201,1192,1175,1178,1162,1138,1113,1098,1095,1098,1103,1110,1122,1144,1180,1220,1252,1278,
+1317,1376,1439,1487,1521,1552,1579,1603,1642,1725,1854,1974,2024,1985,1907,1855,1853,1862,1830,1731,
+1581,1402,1208,1013,835,677,518,351,199,78,-26,-127,-204,-229,-229,-257,-315,-366,-406,-486,
+-627,-782,-896,-958,-963,-903,-832,-872,-1053,-1230,-1261,-1231,-1359,-1672,-1935,-1962,-1860,-1867,-2035,-2212,
+-2281,-2280,-2274,-2259,-2219,-2207,-2277,-2405,-2515,-2563,-2552,-2502,-2433,-2382,-2387,-2455,-2563,-2665,-2710,-2678,
+-2603,-2535,-2484,-2429,-2395,-2448,-2592,-2735,-2789,-2779,-2791,-2837,-2860,-2842,-2835,-2872,-2926,-2967,-3012,-3084,
+-3164,-3232,-3308,-3411,-3502,-3520,-3474,-3441,-3483,-3593,-3731,-3862,-3972,-4052,-4108,-4159,-4219,-4288,-4369,-4467,
+-4581,-4699,-4815,-4931,-5045,-5149,-5252,-5378,-5535,-5703,-5853,-5980,-6093,-6190,-6267,-6336,-6422,-6520,-6603,-6655,
+-6687,-6714,-6728,-6727,-6732,-6761,-6799,-6819,-6823,-6827,-6826,-6797,-6761,-6769,-6822,-6853,-6811,-6736,-6695,-6665,
+-6558,-6361,-6186,-6131,-6151,-6123,-5999,-5848,-5745,-5677,-5593,-5469,-5320,-5151,-4952,-4720,-4472,-4236,-4040,-3897,
+-3792,-3690,-3566,-3430,-3298,-3168,-3024,-2853,-2661,-2454,-2247,-2056,-1874,-1672,-1443,-1239,-1115,-1055,-974,-822,
+-634,-469,-329,-178,-12,137,264,393,523,607,609,563,540,582,676,795,927,1069,1221,1383,
+1545,1692,1819,1943,2089,2253,2419,2581,2751,2934,3117,3283,3427,3551,3659,3766,3892,4039,4186,4318,
+4434,4530,4600,4669,4788,4978,5186,5341,5438,5526,5624,5701,5738,5771,5840,5935,6011,6057,6094,6139,
+6190,6242,6296,6345,6374,6386,6409,6470,6580,6731,6888,6987,6976,6878,6797,6811,6888,6922,6863,6762,
+6699,6683,6665,6612,6541,6496,6501,6559,6646,6718,6747,6745,6750,6762,6737,6660,6600,6632,6727,6765,
+6677,6528,6440,6452,6502,6511,6445,6303,6110,5929,5846,5888,5969,5947,5748,5441,5210,5213,5461,5797,
+6027,6085,6051,6029,6024,5973,5862,5747,5670,5612,5534,5437,5345,5272,5214,5159,5087,4975,4830,4703,
+4629,4581,4501,4379,4266,4206,4182,4148,4078,3974,3841,3682,3518,3383,3296,3232,3150,3034,2910,2820,
+2775,2746,2701,2634,2551,2447,2324,2202,2101,2009,1906,1814,1771,1769,1741,1649,1539,1482,1488,1512,
+1520,1500,1443,1346,1243,1177,1142,1089,1006,932,890,852,785,711,663,636,596,546,509,489,
+464,432,407,390,358,301,234,173,117,63,19,-10,-44,-94,-155,-215,-262,-288,-288,-277,
+-277,-294,-313,-327,-346,-376,-408,-432,-455,-491,-536,-580,-625,-669,-704,-720,-728,-743,-765,-780,
+-785,-787,-794,-801,-807,-813,-822,-831,-839,-850,-866,-884,-901,-912,-910,-898,-891,-896,-900,-889,
+-870,-855,-842,-824,-808,-805,-808,-791,-752,-717,-699,-684,-658,-631,-615,-603,-582,-551,-521,-496,
+-479,-478,-497,-522,-536,-538,-536,-529,-513,-497,-503,-537,-586,-627,-650,-663,-682,-723,-779,-824,
+-843,-848,-861,-882,-900,-910,-922,-939,-955,-964,-968,-964,-950,-935,-930,-930,-922,-900,-873,-848,
+-824,-805,-800,-800,-784,-746,-704,-668,-629,-584,-547,-521,-484,-424,-361,-318,-274,-192,-76,28,
+104,190,314,430,456,376,281,315,563,1004,1550,2106,2600,2972,3171,3207,3167,3154,3200,3264,
+3304,3321,3323,3299,3244,3196,3189,3197,3156,3044,2910,2810,2747,2682,2584,2449,2291,2123,1951,1770,
+1580,1386,1197,1011,832,678,570,500,424,314,184,56,-75,-243,-457,-690,-909,-1100,-1262,-1391,
+-1483,-1547,-1596,-1630,-1633,-1587,-1501,-1421,-1403,-1453,-1518,-1536,-1504,-1477,-1493,-1539,-1579,-1606,-1622,-1605,
+-1528,-1409,-1308,-1253,-1223,-1201,-1207,-1247,-1264,-1206,-1105,-1055,-1087,-1135,-1125,-1064,-999,-946,-886,-824,
+-792,-801,-818,-817,-811,-818,-834,-845,-852,-859,-853,-819,-762,-706,-657,-605,-543,-473,-397,-310,
+-216,-122,-36,46,129,210,293,378,461,533,593,652,717,787,860,931,993,1040,1074,1101,
+1118,1113,1091,1078,1092,1122,1149,1173,1200,1226,1243,1257,1279,1304,1315,1312,1314,1326,1334,1317,
+1280,1242,1214,1198,1188,1178,1187,1181,1166,1145,1127,1119,1119,1125,1135,1152,1178,1213,1250,1284,
+1317,1358,1407,1458,1503,1545,1583,1608,1629,1678,1781,1917,2023,2051,2004,1933,1892,1895,1916,1912,
+1860,1763,1634,1481,1313,1148,993,838,678,529,402,283,159,47,-29,-84,-149,-217,-264,-314,
+-419,-579,-717,-780,-794,-804,-817,-852,-965,-1150,-1278,-1258,-1207,-1333,-1633,-1857,-1841,-1723,-1751,-1953,
+-2148,-2213,-2203,-2206,-2226,-2234,-2257,-2330,-2426,-2493,-2516,-2511,-2476,-2406,-2330,-2298,-2338,-2430,-2524,-2568,
+-2532,-2433,-2318,-2222,-2161,-2167,-2275,-2454,-2602,-2651,-2652,-2685,-2748,-2773,-2745,-2726,-2756,-2804,-2838,-2878,
+-2946,-3023,-3087,-3159,-3263,-3360,-3389,-3357,-3339,-3387,-3485,-3594,-3697,-3791,-3864,-3912,-3951,-4003,-4077,-4169,
+-4274,-4386,-4497,-4606,-4722,-4844,-4960,-5071,-5199,-5355,-5518,-5660,-5780,-5894,-5997,-6077,-6145,-6230,-6333,-6421,
+-6468,-6493,-6518,-6537,-6540,-6545,-6573,-6616,-6643,-6649,-6652,-6653,-6638,-6625,-6656,-6726,-6763,-6720,-6649,-6617,
+-6592,-6479,-6278,-6114,-6078,-6107,-6077,-5963,-5843,-5767,-5697,-5590,-5459,-5327,-5171,-4957,-4702,-4455,-4247,-4078,
+-3946,-3851,-3772,-3680,-3567,-3450,-3326,-3167,-2957,-2722,-2505,-2329,-2183,-2046,-1896,-1733,-1577,-1443,-1314,-1157,
+-968,-782,-625,-479,-319,-154,-19,91,211,346,455,500,502,516,579,693,840,999,1148,1275,
+1387,1496,1613,1746,1906,2085,2251,2389,2519,2683,2885,3093,3274,3424,3547,3644,3724,3809,3912,4033,
+4167,4305,4424,4501,4555,4651,4822,5026,5187,5290,5382,5487,5577,5631,5678,5755,5846,5913,5946,5969,
+5999,6032,6071,6124,6186,6233,6255,6277,6335,6451,6612,6773,6862,6834,6723,6636,6650,6732,6783,6752,
+6676,6616,6589,6569,6534,6491,6455,6443,6466,6513,6545,6535,6504,6498,6538,6595,6645,6698,6762,6800,
+6761,6650,6527,6452,6434,6451,6477,6478,6427,6327,6224,6165,6158,6171,6146,6013,5738,5408,5232,5368,
+5738,6079,6205,6163,6112,6115,6105,6032,5933,5865,5824,5767,5679,5574,5469,5376,5306,5247,5159,5029,
+4901,4818,4755,4654,4509,4387,4338,4332,4305,4235,4138,4018,3862,3686,3543,3466,3415,3319,3164,3012,
+2931,2910,2877,2789,2670,2563,2469,2364,2247,2137,2036,1926,1815,1734,1684,1625,1540,1465,1441,1458,
+1476,1476,1457,1408,1319,1223,1161,1130,1082,1006,936,892,845,774,704,664,634,582,515,467,
+442,415,378,348,330,304,256,198,139,77,9,-48,-84,-111,-146,-198,-258,-309,-336,-335,
+-324,-326,-344,-361,-375,-395,-427,-458,-481,-508,-552,-605,-652,-693,-731,-758,-767,-770,-781,-800,
+-811,-811,-811,-817,-823,-826,-829,-839,-851,-857,-856,-855,-867,-889,-907,-906,-888,-874,-873,-871,
+-858,-840,-827,-810,-782,-756,-752,-758,-743,-704,-669,-653,-639,-611,-578,-558,-546,-528,-501,-475,
+-455,-440,-435,-449,-470,-481,-482,-484,-491,-491,-479,-471,-489,-532,-579,-606,-615,-632,-677,-735,
+-774,-782,-782,-797,-824,-843,-855,-868,-883,-891,-899,-913,-923,-914,-891,-878,-880,-877,-853,-819,
+-789,-767,-755,-754,-756,-739,-702,-664,-639,-611,-567,-522,-493,-469,-428,-372,-325,-278,-203,-95,
+11,98,187,310,451,544,545,485,461,570,849,1268,1775,2314,2809,3154,3293,3284,3267,3327,
+3439,3528,3560,3540,3462,3326,3175,3074,3034,3001,2932,2850,2805,2807,2815,2781,2686,2534,2341,2128,
+1913,1708,1512,1323,1135,951,788,665,575,490,385,267,148,18,-149,-365,-602,-825,-1020,-1183,
+-1314,-1414,-1491,-1553,-1588,-1572,-1496,-1392,-1324,-1348,-1454,-1561,-1581,-1509,-1417,-1378,-1397,-1440,-1495,-1554,
+-1581,-1528,-1406,-1286,-1220,-1192,-1166,-1149,-1161,-1179,-1159,-1114,-1103,-1139,-1166,-1130,-1052,-981,-924,-856,
+-782,-741,-745,-766,-775,-783,-801,-822,-832,-839,-849,-849,-819,-765,-707,-654,-599,-539,-478,-411,
+-330,-238,-147,-65,11,90,170,252,334,413,482,543,607,679,754,827,899,962,1006,1034,
+1055,1074,1077,1063,1051,1064,1097,1133,1163,1193,1221,1243,1263,1288,1315,1332,1337,1345,1358,1362,
+1342,1304,1264,1231,1207,1193,1187,1211,1203,1191,1174,1159,1149,1142,1143,1155,1177,1205,1238,1276,
+1318,1360,1399,1431,1462,1500,1547,1590,1615,1639,1703,1820,1948,2026,2032,1995,1957,1944,1954,1966,
+1958,1919,1854,1771,1667,1535,1387,1239,1094,946,798,657,519,379,252,152,70,-12,-85,-133,
+-193,-316,-484,-608,-638,-631,-666,-755,-876,-1026,-1174,-1229,-1157,-1098,-1237,-1538,-1755,-1741,-1641,-1688,
+-1895,-2086,-2147,-2138,-2149,-2183,-2213,-2255,-2325,-2392,-2424,-2439,-2464,-2483,-2462,-2409,-2370,-2374,-2414,-2461,
+-2477,-2429,-2309,-2154,-2021,-1955,-1986,-2119,-2300,-2440,-2498,-2520,-2571,-2639,-2661,-2632,-2609,-2628,-2665,-2697,
+-2741,-2810,-2882,-2943,-3017,-3118,-3201,-3213,-3180,-3184,-3257,-3362,-3453,-3531,-3610,-3679,-3725,-3761,-3811,-3884,
+-3975,-4078,-4186,-4289,-4390,-4503,-4632,-4761,-4882,-5010,-5162,-5323,-5463,-5580,-5690,-5796,-5884,-5958,-6044,-6147,
+-6234,-6278,-6299,-6323,-6349,-6358,-6361,-6386,-6432,-6471,-6487,-6492,-6496,-6494,-6505,-6557,-6632,-6662,-6613,-6546,
+-6521,-6490,-6364,-6163,-6022,-6012,-6047,-6005,-5894,-5803,-5750,-5668,-5529,-5395,-5305,-5197,-4997,-4728,-4481,-4299,
+-4158,-4035,-3937,-3865,-3788,-3688,-3579,-3462,-3306,-3088,-2840,-2625,-2470,-2356,-2251,-2141,-2023,-1892,-1740,-1563,
+-1372,-1184,-1017,-864,-702,-528,-368,-250,-157,-49,89,230,341,417,474,537,626,755,917,1076,
+1197,1280,1350,1447,1600,1811,2038,2224,2353,2468,2625,2822,3013,3169,3303,3431,3546,3638,3718,3805,
+3909,4034,4173,4297,4375,4421,4500,4657,4855,5019,5130,5228,5340,5441,5509,5561,5631,5711,5773,5807,
+5829,5851,5872,5900,5951,6018,6074,6105,6136,6205,6326,6487,6641,6729,6711,6618,6539,6540,6606,6664,
+6664,6615,6550,6495,6460,6453,6462,6469,6465,6462,6466,6460,6427,6385,6377,6428,6531,6659,6771,6816,
+6766,6658,6562,6508,6466,6408,6368,6388,6449,6488,6480,6452,6419,6374,6332,6319,6275,6073,5699,5376,
+5375,5714,6113,6300,6271,6206,6203,6211,6162,6084,6030,6002,5960,5886,5784,5660,5533,5436,5373,5303,
+5193,5069,4975,4899,4788,4644,4531,4491,4482,4438,4346,4238,4125,3983,3819,3686,3616,3563,3450,3278,
+3137,3101,3130,3108,2974,2786,2631,2526,2425,2301,2171,2053,1940,1825,1718,1627,1539,1458,1411,1414,
+1437,1445,1430,1405,1360,1285,1197,1135,1097,1053,990,929,880,827,761,707,675,638,570,491,
+441,422,402,369,337,312,280,231,174,117,56,-11,-75,-119,-150,-184,-228,-277,-318,-343,
+-352,-360,-375,-394,-406,-416,-440,-479,-514,-540,-571,-616,-667,-710,-745,-776,-798,-806,-812,-824,
+-839,-843,-836,-834,-841,-847,-848,-849,-859,-871,-874,-864,-852,-854,-874,-896,-898,-879,-856,-843,
+-834,-821,-805,-792,-769,-734,-705,-699,-705,-693,-657,-623,-604,-588,-559,-526,-503,-485,-463,-440,
+-425,-414,-402,-396,-404,-419,-426,-426,-437,-461,-479,-474,-455,-452,-480,-523,-553,-563,-579,-622,
+-680,-718,-725,-724,-738,-764,-784,-800,-817,-830,-831,-833,-853,-876,-876,-852,-832,-830,-825,-799,
+-761,-732,-715,-707,-707,-706,-686,-646,-610,-592,-577,-542,-497,-468,-455,-432,-387,-332,-274,-205,
+-114,-11,91,197,319,459,590,672,680,644,645,768,1050,1488,2043,2628,3096,3331,3366,3366,
+3471,3665,3836,3916,3909,3822,3640,3380,3118,2924,2807,2739,2719,2765,2867,2970,3015,2964,2811,2579,
+2315,2066,1852,1662,1477,1287,1098,920,769,648,543,437,326,209,73,-99,-307,-526,-730,-912,
+-1073,-1207,-1313,-1397,-1459,-1485,-1454,-1371,-1281,-1247,-1313,-1457,-1590,-1620,-1534,-1403,-1312,-1285,-1308,-1367,
+-1453,-1519,-1502,-1394,-1262,-1171,-1123,-1085,-1060,-1067,-1096,-1111,-1112,-1130,-1168,-1178,-1123,-1034,-960,-901,
+-833,-759,-717,-716,-730,-740,-752,-774,-792,-797,-801,-813,-820,-799,-751,-693,-634,-577,-526,-480,
+-426,-349,-257,-170,-96,-21,59,143,224,300,371,435,495,564,644,723,798,868,933,980,
+1007,1027,1049,1062,1058,1052,1064,1097,1133,1163,1192,1223,1252,1276,1301,1324,1340,1351,1364,1379,
+1381,1363,1331,1296,1265,1238,1220,1211,1249,1234,1218,1205,1197,1187,1175,1172,1186,1211,1238,1267,
+1307,1358,1407,1438,1452,1465,1498,1549,1592,1616,1646,1722,1841,1947,1992,1983,1967,1973,1996,2017,
+2021,1998,1950,1891,1832,1762,1661,1531,1397,1273,1148,1008,856,697,543,410,307,218,128,48,
+-7,-69,-186,-344,-464,-502,-515,-583,-711,-857,-993,-1096,-1113,-1040,-999,-1136,-1414,-1627,-1659,-1626,
+-1705,-1895,-2050,-2094,-2088,-2102,-2125,-2137,-2163,-2218,-2270,-2293,-2316,-2374,-2445,-2481,-2475,-2458,-2447,-2440,
+-2432,-2415,-2356,-2227,-2054,-1904,-1836,-1868,-1984,-2138,-2271,-2353,-2403,-2458,-2511,-2530,-2513,-2497,-2507,-2530,
+-2560,-2604,-2663,-2722,-2788,-2884,-2994,-3049,-3015,-2957,-2978,-3090,-3220,-3310,-3370,-3433,-3495,-3542,-3582,-3635,
+-3705,-3786,-3877,-3979,-4081,-4178,-4286,-4418,-4559,-4689,-4816,-4963,-5123,-5267,-5380,-5482,-5585,-5680,-5762,-5847,
+-5942,-6025,-6071,-6094,-6122,-6154,-6170,-6174,-6194,-6241,-6293,-6327,-6345,-6353,-6360,-6387,-6451,-6522,-6533,-6468,
+-6394,-6363,-6324,-6199,-6023,-5929,-5959,-5998,-5939,-5821,-5747,-5711,-5616,-5448,-5312,-5267,-5222,-5059,-4793,-4544,
+-4375,-4252,-4132,-4027,-3951,-3878,-3783,-3676,-3567,-3429,-3233,-3005,-2805,-2664,-2565,-2477,-2390,-2295,-2172,-2003,
+-1803,-1604,-1424,-1255,-1079,-892,-716,-582,-495,-425,-328,-189,-23,141,280,376,429,476,564,711,
+880,1019,1105,1168,1264,1438,1683,1940,2139,2272,2398,2567,2763,2936,3071,3197,3335,3464,3564,3644,
+3725,3820,3931,4053,4164,4240,4289,4365,4506,4686,4839,4949,5050,5167,5279,5357,5412,5472,5544,5611,
+5663,5701,5725,5740,5762,5808,5868,5918,5957,6010,6104,6234,6382,6517,6607,6624,6580,6526,6510,6537,
+6573,6589,6569,6515,6442,6382,6362,6376,6394,6399,6398,6404,6409,6403,6391,6392,6424,6502,6620,6723,
+6732,6628,6499,6446,6467,6468,6402,6339,6354,6419,6457,6454,6451,6450,6412,6359,6360,6384,6266,5920,
+5541,5447,5721,6113,6335,6344,6296,6294,6300,6262,6199,6153,6122,6080,6021,5943,5834,5700,5580,5497,
+5425,5326,5212,5118,5039,4934,4800,4692,4642,4614,4549,4442,4327,4218,4093,3951,3828,3745,3662,3521,
+3338,3207,3199,3268,3284,3172,2982,2808,2680,2553,2390,2213,2060,1938,1827,1718,1612,1514,1435,1396,
+1399,1414,1408,1376,1335,1291,1234,1167,1107,1061,1014,962,910,859,801,744,703,675,629,555,
+483,446,436,421,390,357,326,284,224,161,106,54,-1,-56,-103,-144,-186,-227,-263,-292,
+-316,-342,-374,-409,-434,-445,-456,-484,-527,-570,-605,-640,-681,-720,-749,-775,-799,-819,-832,-846,
+-865,-877,-872,-860,-858,-866,-873,-873,-873,-880,-888,-888,-875,-859,-851,-863,-882,-889,-870,-838,
+-813,-799,-788,-775,-757,-730,-695,-667,-658,-658,-644,-612,-577,-553,-531,-505,-478,-453,-425,-395,
+-375,-369,-367,-360,-354,-362,-374,-380,-384,-405,-443,-474,-472,-443,-419,-426,-460,-494,-512,-527,
+-563,-617,-658,-670,-669,-679,-699,-719,-740,-762,-775,-775,-776,-796,-824,-829,-809,-792,-789,-782,
+-753,-716,-690,-677,-669,-663,-657,-638,-601,-565,-549,-541,-518,-480,-452,-442,-430,-396,-340,-273,
+-205,-127,-31,84,210,334,462,603,740,818,808,763,793,981,1351,1877,2475,2997,3303,3400,
+3451,3609,3860,4080,4196,4236,4221,4092,3802,3405,3027,2761,2629,2621,2717,2880,3042,3135,3114,2971,
+2733,2457,2203,1993,1808,1623,1427,1230,1043,871,719,588,473,366,252,111,-62,-256,-444,-616,
+-781,-944,-1093,-1209,-1288,-1335,-1342,-1306,-1240,-1188,-1197,-1290,-1441,-1577,-1623,-1553,-1421,-1305,-1245,-1240,
+-1283,-1360,-1430,-1432,-1348,-1226,-1122,-1050,-999,-973,-991,-1041,-1086,-1114,-1140,-1163,-1153,-1092,-1009,-937,
+-875,-807,-742,-706,-702,-707,-709,-719,-738,-749,-747,-748,-763,-777,-767,-729,-674,-612,-554,-510,
+-478,-434,-362,-272,-189,-117,-39,48,135,211,280,344,402,463,535,620,703,775,842,906,
+957,989,1013,1038,1058,1063,1063,1078,1110,1145,1174,1202,1232,1262,1287,1308,1325,1337,1346,1358,
+1371,1375,1367,1351,1332,1310,1287,1266,1249,1291,1269,1251,1243,1240,1233,1219,1216,1233,1260,1282,
+1306,1346,1402,1451,1472,1470,1475,1506,1555,1594,1621,1666,1757,1872,1954,1975,1967,1978,2018,2064,
+2094,2099,2071,2010,1938,1878,1820,1736,1622,1506,1406,1307,1183,1027,854,685,544,440,356,265,
+172,98,33,-61,-191,-304,-367,-421,-520,-659,-790,-896,-981,-1022,-1006,-995,-1087,-1278,-1447,-1524,
+-1580,-1710,-1883,-1996,-2022,-2028,-2049,-2053,-2027,-2016,-2056,-2112,-2150,-2188,-2261,-2352,-2419,-2451,-2463,-2457,
+-2430,-2390,-2348,-2280,-2154,-1989,-1849,-1787,-1804,-1879,-1993,-2121,-2232,-2308,-2354,-2382,-2397,-2399,-2396,-2396,
+-2404,-2427,-2464,-2503,-2547,-2629,-2766,-2895,-2915,-2815,-2713,-2739,-2888,-3051,-3150,-3204,-3255,-3309,-3354,-3398,
+-3455,-3520,-3586,-3664,-3764,-3871,-3972,-4077,-4208,-4355,-4491,-4618,-4760,-4922,-5071,-5184,-5276,-5372,-5468,-5553,
+-5631,-5713,-5789,-5842,-5874,-5908,-5947,-5973,-5984,-6000,-6038,-6094,-6150,-6192,-6217,-6233,-6266,-6329,-6386,-6370,
+-6275,-6177,-6128,-6086,-5987,-5872,-5849,-5925,-5973,-5900,-5774,-5710,-5685,-5586,-5403,-5261,-5234,-5226,-5096,-4848,
+-4606,-4443,-4325,-4208,-4104,-4031,-3964,-3872,-3765,-3662,-3546,-3383,-3186,-3007,-2874,-2777,-2692,-2612,-2523,-2395,
+-2216,-2012,-1819,-1641,-1456,-1253,-1056,-906,-816,-759,-692,-587,-444,-273,-88,83,209,273,305,369,
+500,671,825,926,998,1101,1284,1537,1796,1998,2148,2303,2497,2701,2870,3006,3141,3282,3403,3489,
+3564,3655,3761,3868,3966,4052,4113,4157,4221,4334,4477,4605,4707,4813,4941,5069,5166,5233,5294,5363,
+5440,5514,5571,5602,5614,5633,5671,5713,5745,5785,5863,5988,6132,6270,6393,6498,6567,6589,6573,6542,
+6513,6498,6501,6509,6495,6445,6376,6322,6296,6287,6285,6295,6318,6348,6380,6409,6424,6428,6447,6507,
+6572,6567,6473,6375,6368,6428,6451,6404,6362,6381,6410,6380,6322,6316,6355,6355,6309,6300,6336,6272,
+6002,5669,5555,5765,6109,6340,6397,6388,6389,6385,6347,6295,6253,6210,6154,6100,6047,5967,5847,5719,
+5614,5525,5424,5319,5232,5158,5064,4944,4835,4763,4710,4641,4550,4453,4356,4249,4131,4016,3907,3782,
+3609,3402,3229,3160,3194,3249,3237,3145,3017,2880,2712,2495,2264,2070,1931,1822,1718,1614,1520,1443,
+1393,1375,1372,1355,1313,1259,1214,1177,1138,1089,1034,980,933,888,838,781,732,697,665,615,
+551,501,477,461,432,394,365,342,305,248,184,130,88,49,7,-39,-93,-149,-201,-242,
+-274,-304,-339,-382,-425,-458,-477,-494,-525,-569,-617,-662,-704,-738,-758,-771,-788,-812,-833,-852,
+-874,-897,-906,-896,-881,-880,-889,-895,-895,-896,-901,-904,-900,-888,-871,-857,-858,-872,-879,-861,
+-824,-791,-774,-766,-752,-728,-699,-671,-648,-634,-622,-603,-573,-539,-508,-482,-462,-444,-419,-383,
+-346,-327,-325,-325,-320,-318,-328,-340,-347,-359,-390,-433,-463,-459,-424,-385,-372,-395,-436,-468,
+-487,-514,-557,-600,-619,-619,-624,-640,-661,-680,-698,-711,-716,-723,-744,-768,-773,-761,-750,-750,
+-742,-714,-682,-663,-654,-642,-628,-617,-602,-574,-543,-524,-515,-499,-472,-444,-429,-417,-390,-340,
+-271,-197,-121,-31,87,223,351,471,611,773,901,934,902,907,1040,1330,1760,2282,2792,3166,
+3381,3543,3761,4016,4210,4318,4408,4494,4468,4212,3757,3265,2886,2675,2625,2703,2859,3020,3116,3110,
+2997,2797,2554,2320,2117,1932,1742,1544,1350,1167,991,822,667,537,429,319,180,5,-180,-344,
+-487,-637,-809,-980,-1111,-1186,-1214,-1204,-1168,-1124,-1107,-1146,-1245,-1380,-1505,-1564,-1529,-1427,-1318,-1250,
+-1235,-1260,-1308,-1348,-1342,-1276,-1175,-1077,-997,-939,-919,-954,-1030,-1104,-1147,-1158,-1147,-1110,-1052,-986,
+-924,-855,-780,-718,-689,-685,-682,-677,-683,-699,-706,-699,-697,-712,-731,-734,-711,-665,-605,-544,
+-500,-471,-432,-367,-284,-205,-129,-45,46,130,199,262,324,384,447,522,609,691,759,822,
+885,940,980,1009,1035,1056,1066,1073,1092,1126,1162,1191,1218,1244,1269,1290,1308,1323,1332,1337,
+1343,1350,1357,1362,1367,1368,1358,1338,1314,1291,1327,1303,1288,1285,1286,1280,1267,1266,1284,1308,
+1324,1344,1386,1445,1490,1502,1495,1499,1524,1559,1593,1635,1711,1821,1927,1988,2004,2018,2058,2113,
+2156,2181,2189,2166,2101,2015,1942,1882,1806,1704,1600,1514,1431,1320,1171,995,818,670,569,497,
+414,309,209,130,52,-42,-132,-202,-280,-405,-559,-692,-795,-897,-997,-1058,-1077,-1103,-1169,-1250,
+-1329,-1445,-1619,-1793,-1894,-1928,-1959,-1995,-1990,-1937,-1907,-1946,-2021,-2080,-2125,-2190,-2275,-2346,-2389,-2412,
+-2412,-2379,-2324,-2263,-2183,-2064,-1926,-1822,-1782,-1788,-1819,-1886,-2000,-2128,-2219,-2255,-2263,-2274,-2289,-2290,
+-2276,-2270,-2291,-2327,-2355,-2394,-2497,-2665,-2797,-2776,-2616,-2479,-2508,-2681,-2864,-2972,-3026,-3075,-3125,-3165,
+-3206,-3260,-3319,-3375,-3444,-3543,-3658,-3764,-3867,-3992,-4140,-4282,-4412,-4555,-4719,-4875,-4993,-5080,-5167,-5260,
+-5343,-5412,-5480,-5551,-5611,-5654,-5692,-5736,-5777,-5804,-5819,-5839,-5883,-5952,-6028,-6084,-6116,-6147,-6199,-6235,
+-6197,-6079,-5953,-5878,-5831,-5767,-5720,-5764,-5879,-5937,-5866,-5746,-5687,-5668,-5577,-5402,-5257,-5216,-5198,-5081,
+-4865,-4651,-4501,-4386,-4275,-4184,-4125,-4066,-3975,-3867,-3768,-3667,-3531,-3364,-3203,-3075,-2974,-2883,-2797,-2698,
+-2560,-2380,-2189,-2013,-1841,-1646,-1437,-1261,-1154,-1097,-1038,-939,-803,-655,-503,-339,-167,-18,81,145,
+220,343,501,648,751,830,941,1125,1372,1624,1838,2024,2220,2434,2634,2794,2931,3071,3205,3306,
+3379,3464,3583,3715,3824,3897,3944,3972,3993,4034,4113,4216,4319,4417,4530,4669,4815,4938,5029,5100,
+5171,5255,5345,5418,5456,5469,5487,5518,5543,5558,5593,5685,5827,5978,6114,6243,6376,6499,6583,6609,
+6577,6506,6433,6404,6428,6465,6467,6424,6363,6314,6285,6272,6271,6277,6290,6317,6355,6381,6378,6367,
+6385,6419,6417,6362,6316,6336,6390,6405,6375,6364,6391,6383,6296,6207,6215,6294,6329,6282,6238,6240,
+6195,6014,5784,5711,5883,6171,6392,6487,6506,6498,6469,6424,6383,6348,6299,6233,6172,6119,6048,5945,
+5826,5714,5607,5496,5391,5306,5232,5147,5047,4944,4854,4779,4716,4659,4594,4515,4427,4337,4237,4117,
+3973,3797,3572,3308,3078,2975,3020,3124,3175,3125,2991,2793,2548,2294,2082,1934,1822,1714,1609,1517,
+1441,1379,1334,1312,1292,1252,1195,1149,1130,1117,1082,1023,963,916,876,828,776,734,700,663,
+615,570,541,515,474,420,376,358,351,329,285,231,185,151,124,92,44,-22,-100,-177,
+-246,-302,-344,-375,-406,-440,-474,-501,-524,-552,-589,-636,-692,-745,-778,-788,-792,-807,-834,-858,
+-876,-897,-917,-923,-910,-897,-897,-905,-909,-909,-913,-920,-920,-912,-898,-880,-861,-852,-859,-866,
+-851,-812,-775,-755,-743,-724,-697,-673,-656,-639,-616,-592,-570,-546,-514,-477,-447,-431,-420,-397,
+-357,-320,-301,-297,-293,-288,-291,-302,-312,-321,-342,-380,-420,-440,-431,-398,-356,-330,-343,-389,
+-434,-458,-475,-507,-546,-568,-571,-575,-593,-615,-629,-636,-644,-656,-674,-695,-713,-716,-710,-707,
+-708,-698,-673,-649,-639,-636,-623,-602,-585,-572,-553,-527,-504,-489,-476,-458,-436,-414,-391,-365,
+-322,-255,-173,-91,-6,102,235,369,493,630,796,949,1027,1038,1055,1147,1329,1604,1979,2429,
+2880,3272,3615,3928,4175,4315,4392,4496,4616,4607,4347,3886,3399,3026,2803,2714,2743,2857,2989,3071,
+3077,3006,2864,2666,2445,2234,2040,1854,1672,1499,1337,1172,996,820,668,549,440,302,122,-68,
+-228,-357,-493,-664,-846,-990,-1069,-1094,-1083,-1052,-1023,-1026,-1078,-1172,-1285,-1389,-1452,-1451,-1389,-1308,
+-1256,-1250,-1273,-1297,-1298,-1262,-1192,-1105,-1021,-950,-902,-894,-946,-1045,-1148,-1205,-1200,-1147,-1079,-1019,
+-970,-915,-836,-749,-686,-664,-661,-654,-646,-652,-667,-670,-660,-655,-669,-693,-707,-700,-668,-614,
+-551,-499,-462,-423,-366,-297,-223,-143,-51,40,115,177,238,305,371,439,516,601,679,744,
+806,872,934,979,1011,1035,1053,1065,1079,1105,1140,1176,1205,1230,1250,1268,1286,1307,1326,1337,
+1339,1340,1342,1347,1361,1382,1400,1400,1381,1353,1327,1359,1339,1328,1327,1330,1325,1314,1314,1329,
+1345,1356,1376,1423,1483,1524,1534,1531,1535,1547,1562,1593,1667,1786,1911,1995,2027,2046,2093,2163,
+2215,2230,2232,2236,2222,2164,2078,2000,1938,1865,1770,1673,1591,1510,1405,1268,1106,937,792,699,
+644,577,470,348,250,176,107,46,-5,-79,-218,-405,-576,-706,-830,-970,-1089,-1145,-1144,-1128,
+-1127,-1167,-1282,-1467,-1655,-1777,-1843,-1900,-1950,-1948,-1898,-1877,-1934,-2030,-2096,-2128,-2170,-2237,-2298,-2330,
+-2336,-2324,-2288,-2229,-2152,-2056,-1943,-1840,-1788,-1788,-1799,-1799,-1820,-1902,-2022,-2117,-2151,-2153,-2160,-2172,
+-2164,-2137,-2126,-2154,-2201,-2238,-2285,-2394,-2552,-2651,-2588,-2409,-2282,-2331,-2513,-2691,-2792,-2846,-2899,-2951,
+-2987,-3018,-3065,-3120,-3174,-3240,-3334,-3448,-3555,-3656,-3776,-3921,-4070,-4208,-4353,-4516,-4676,-4800,-4889,-4973,
+-5063,-5145,-5209,-5268,-5334,-5398,-5447,-5486,-5532,-5591,-5642,-5664,-5669,-5693,-5765,-5869,-5957,-6003,-6029,-6064,
+-6089,-6051,-5939,-5809,-5714,-5650,-5597,-5585,-5660,-5788,-5858,-5811,-5712,-5655,-5628,-5550,-5405,-5272,-5202,-5145,
+-5028,-4857,-4696,-4571,-4460,-4356,-4282,-4236,-4178,-4080,-3968,-3875,-3788,-3675,-3532,-3390,-3270,-3167,-3067,-2966,
+-2850,-2703,-2533,-2367,-2213,-2048,-1852,-1653,-1506,-1429,-1378,-1290,-1147,-984,-841,-721,-595,-445,-284,-144,
+-33,68,187,319,441,538,627,755,949,1196,1457,1704,1942,2179,2400,2577,2711,2833,2960,3077,
+3167,3251,3366,3518,3664,3763,3805,3811,3801,3797,3819,3877,3959,4050,4148,4265,4404,4551,4687,4801,
+4890,4969,5060,5164,5252,5299,5314,5333,5365,5389,5402,5436,5526,5661,5803,5937,6079,6236,6391,6511,
+6574,6562,6483,6380,6324,6348,6416,6464,6460,6429,6403,6391,6379,6352,6310,6270,6253,6266,6289,6300,
+6302,6312,6326,6317,6289,6279,6308,6339,6331,6307,6313,6335,6306,6214,6148,6189,6289,6331,6279,6211,
+6183,6145,6039,5918,5911,6072,6317,6521,6626,6643,6604,6543,6487,6451,6423,6382,6325,6260,6185,6097,
+6001,5907,5806,5687,5558,5443,5349,5267,5188,5114,5034,4940,4846,4780,4741,4696,4627,4555,4493,4416,
+4305,4183,4056,3855,3508,3084,2790,2767,2937,3089,3088,2948,2743,2512,2279,2080,1938,1826,1711,1593,
+1497,1425,1358,1298,1259,1237,1203,1151,1110,1102,1104,1078,1020,958,913,873,826,780,744,711,
+670,628,599,578,543,487,434,407,398,380,341,290,243,206,179,161,137,92,20,-70,
+-169,-266,-351,-407,-433,-445,-464,-492,-521,-541,-557,-579,-621,-687,-757,-805,-823,-831,-852,-880,
+-899,-908,-918,-930,-931,-919,-910,-912,-917,-916,-915,-925,-936,-935,-922,-903,-881,-857,-842,-843,
+-848,-834,-797,-757,-729,-708,-683,-658,-645,-639,-623,-594,-564,-545,-530,-503,-462,-425,-404,-390,
+-367,-331,-300,-283,-273,-265,-262,-269,-279,-283,-291,-321,-366,-401,-410,-399,-377,-343,-313,-315,
+-357,-409,-436,-445,-463,-493,-515,-520,-527,-549,-574,-584,-584,-589,-606,-630,-650,-663,-666,-665,
+-666,-665,-654,-633,-618,-616,-619,-609,-587,-563,-544,-525,-502,-476,-453,-436,-427,-415,-392,-358,
+-324,-285,-225,-142,-54,28,121,244,383,518,653,806,963,1081,1147,1195,1256,1332,1438,1633,
+1973,2451,3000,3533,3976,4269,4420,4509,4607,4658,4529,4177,3727,3350,3108,2954,2856,2835,2901,2999,
+3065,3080,3051,2967,2808,2588,2356,2154,1984,1833,1691,1549,1395,1217,1025,849,710,592,452,269,
+67,-105,-236,-361,-515,-684,-826,-914,-954,-962,-951,-939,-958,-1020,-1110,-1200,-1276,-1328,-1346,-1322,
+-1277,-1251,-1259,-1286,-1296,-1267,-1201,-1113,-1023,-950,-897,-868,-873,-928,-1034,-1155,-1231,-1224,-1147,-1053,
+-983,-937,-881,-797,-708,-652,-639,-639,-633,-627,-634,-646,-644,-629,-624,-641,-671,-696,-703,-683,
+-635,-571,-509,-460,-415,-366,-310,-242,-158,-62,27,96,153,217,289,362,435,514,595,667,
+728,791,861,928,978,1011,1033,1050,1067,1089,1118,1150,1180,1208,1231,1249,1264,1284,1312,1337,
+1349,1350,1348,1347,1350,1364,1394,1426,1435,1417,1387,1359,1394,1376,1368,1367,1370,1368,1361,1361,
+1371,1380,1388,1411,1459,1515,1550,1561,1568,1576,1574,1571,1608,1719,1876,2004,2049,2041,2057,2134,
+2225,2266,2249,2222,2217,2211,2166,2091,2018,1956,1884,1794,1706,1630,1551,1451,1329,1192,1043,906,
+816,769,715,617,495,392,317,253,201,167,113,-17,-222,-427,-581,-708,-849,-993,-1095,-1137,
+-1136,-1119,-1122,-1195,-1355,-1546,-1693,-1779,-1840,-1887,-1894,-1867,-1872,-1951,-2058,-2115,-2116,-2120,-2159,-2200,
+-2207,-2183,-2154,-2126,-2079,-1999,-1889,-1777,-1704,-1699,-1742,-1774,-1768,-1763,-1812,-1912,-2004,-2045,-2048,-2046,
+-2046,-2030,-2001,-1994,-2029,-2087,-2140,-2196,-2284,-2382,-2413,-2326,-2187,-2128,-2219,-2395,-2543,-2620,-2667,-2724,
+-2781,-2817,-2843,-2882,-2938,-2997,-3062,-3147,-3252,-3358,-3463,-3582,-3725,-3875,-4018,-4160,-4312,-4464,-4592,-4691,
+-4779,-4870,-4955,-5021,-5076,-5134,-5197,-5249,-5289,-5337,-5407,-5480,-5522,-5531,-5549,-5621,-5737,-5840,-5890,-5907,
+-5927,-5950,-5934,-5864,-5764,-5667,-5577,-5499,-5474,-5540,-5661,-5744,-5733,-5663,-5599,-5550,-5479,-5373,-5265,-5173,
+-5077,-4964,-4850,-4753,-4656,-4545,-4442,-4380,-4339,-4270,-4158,-4045,-3965,-3899,-3808,-3689,-3567,-3460,-3357,-3247,
+-3128,-2997,-2852,-2702,-2563,-2426,-2261,-2060,-1865,-1729,-1656,-1591,-1481,-1322,-1158,-1025,-919,-809,-673,-517,
+-367,-238,-128,-24,78,176,270,384,547,771,1040,1325,1611,1893,2156,2369,2520,2631,2735,2845,
+2947,3039,3147,3292,3453,3587,3663,3681,3658,3620,3599,3616,3673,3752,3840,3941,4056,4181,4308,4436,
+4560,4669,4766,4870,4985,5085,5141,5165,5193,5238,5278,5304,5343,5422,5535,5659,5789,5937,6100,6253,
+6378,6461,6482,6428,6331,6266,6282,6354,6418,6442,6447,6462,6483,6481,6438,6368,6296,6245,6223,6224,
+6239,6259,6276,6272,6246,6224,6233,6264,6276,6255,6233,6239,6244,6203,6133,6112,6178,6265,6287,6236,
+6179,6152,6126,6071,6030,6077,6239,6459,6650,6747,6740,6667,6585,6528,6492,6460,6428,6397,6346,6254,
+6141,6050,5984,5901,5772,5623,5496,5395,5303,5224,5171,5119,5032,4924,4843,4799,4749,4677,4614,4575,
+4516,4415,4328,4277,4141,3760,3190,2729,2625,2809,2995,2992,2835,2639,2446,2248,2066,1930,1824,1706,
+1578,1475,1409,1350,1285,1232,1200,1170,1128,1097,1096,1100,1073,1014,954,910,867,820,778,748,
+714,671,634,613,593,557,523,522,542,532,460,355,264,205,164,132,112,96,66,9,
+-68,-160,-262,-357,-424,-454,-465,-482,-512,-541,-555,-558,-565,-599,-668,-755,-826,-868,-893,-919,
+-943,-950,-943,-938,-941,-940,-931,-926,-930,-932,-927,-925,-935,-948,-948,-931,-908,-883,-856,-836,
+-831,-831,-817,-781,-739,-701,-668,-639,-623,-621,-618,-598,-564,-535,-524,-518,-495,-454,-411,-378,
+-354,-328,-300,-278,-261,-245,-233,-235,-248,-254,-249,-256,-294,-346,-377,-379,-372,-365,-346,-316,
+-307,-338,-388,-417,-421,-426,-444,-461,-467,-477,-500,-525,-538,-542,-553,-572,-592,-607,-617,-624,
+-629,-631,-628,-619,-605,-596,-597,-600,-594,-574,-547,-519,-496,-474,-449,-417,-391,-379,-375,-356,
+-317,-276,-240,-192,-115,-25,56,139,251,391,532,659,793,945,1095,1218,1309,1369,1387,1374,
+1400,1574,1957,2517,3137,3684,4080,4344,4543,4680,4657,4386,3947,3551,3344,3273,3200,3085,3002,3002,
+3044,3066,3064,3057,3023,2907,2703,2471,2275,2128,2004,1877,1736,1577,1396,1200,1014,859,729,589,
+409,205,18,-129,-254,-387,-528,-653,-745,-808,-848,-869,-885,-925,-1001,-1089,-1158,-1202,-1233,-1255,
+-1261,-1252,-1247,-1260,-1278,-1274,-1231,-1153,-1056,-961,-890,-850,-836,-841,-879,-963,-1078,-1168,-1179,-1110,
+-1010,-929,-873,-812,-734,-661,-624,-620,-623,-620,-619,-628,-634,-625,-607,-605,-628,-667,-703,-718,
+-704,-660,-597,-531,-470,-416,-366,-314,-250,-165,-68,18,85,144,211,285,361,440,522,599,
+662,717,779,850,918,968,1002,1027,1048,1072,1102,1132,1157,1177,1200,1225,1245,1263,1289,1323,
+1349,1357,1354,1354,1356,1356,1368,1401,1443,1463,1450,1420,1394,1430,1416,1407,1404,1408,1410,1408,
+1408,1415,1423,1434,1460,1504,1548,1573,1585,1602,1618,1612,1600,1643,1777,1954,2070,2078,2038,2050,
+2141,2241,2273,2239,2199,2191,2187,2149,2081,2010,1944,1866,1782,1711,1654,1585,1492,1386,1271,1141,
+1010,909,849,794,708,607,524,456,381,310,269,234,141,-30,-223,-377,-497,-624,-770,-911,
+-1029,-1112,-1149,-1157,-1197,-1320,-1493,-1630,-1696,-1729,-1765,-1787,-1788,-1815,-1907,-2018,-2063,-2028,-1982,-1977,
+-1985,-1960,-1911,-1883,-1884,-1873,-1806,-1687,-1565,-1499,-1514,-1581,-1643,-1667,-1678,-1725,-1815,-1902,-1944,-1942,
+-1928,-1919,-1909,-1896,-1897,-1925,-1976,-2034,-2091,-2140,-2156,-2113,-2029,-1972,-2009,-2139,-2291,-2396,-2446,-2486,
+-2541,-2600,-2641,-2669,-2706,-2762,-2827,-2894,-2970,-3065,-3175,-3293,-3418,-3555,-3698,-3836,-3967,-4099,-4234,-4364,
+-4476,-4575,-4670,-4759,-4830,-4882,-4931,-4988,-5047,-5096,-5146,-5217,-5301,-5366,-5401,-5439,-5518,-5631,-5726,-5771,
+-5781,-5794,-5813,-5818,-5793,-5741,-5661,-5548,-5430,-5371,-5415,-5529,-5625,-5644,-5596,-5524,-5451,-5378,-5301,-5215,
+-5114,-5002,-4910,-4854,-4810,-4728,-4609,-4504,-4450,-4411,-4331,-4210,-4104,-4045,-4003,-3933,-3832,-3725,-3624,-3516,
+-3391,-3258,-3123,-2990,-2864,-2746,-2617,-2451,-2248,-2052,-1909,-1819,-1739,-1631,-1493,-1346,-1206,-1071,-930,-785,
+-645,-522,-420,-334,-256,-178,-97,3,148,358,627,928,1233,1533,1820,2074,2270,2411,2525,2636,
+2743,2837,2934,3057,3209,3359,3473,3538,3551,3516,3459,3423,3440,3503,3583,3668,3769,3884,3995,4097,
+4203,4327,4457,4578,4694,4809,4907,4970,5012,5065,5135,5197,5237,5276,5341,5433,5544,5673,5823,5974,
+6107,6218,6313,6368,6351,6277,6214,6220,6281,6344,6380,6410,6453,6493,6499,6463,6405,6346,6294,6246,
+6211,6202,6219,6235,6224,6192,6175,6192,6218,6216,6189,6171,6173,6160,6111,6064,6075,6141,6194,6188,
+6145,6113,6102,6085,6056,6051,6116,6266,6473,6668,6772,6756,6670,6595,6557,6526,6480,6447,6438,6411,
+6320,6197,6110,6065,5993,5855,5698,5577,5486,5391,5300,5241,5192,5109,4997,4910,4857,4795,4714,4659,
+4637,4584,4478,4408,4415,4339,3954,3302,2743,2591,2776,2965,2943,2773,2595,2437,2255,2063,1916,1813,
+1702,1573,1466,1403,1353,1289,1228,1187,1158,1128,1107,1107,1103,1066,1004,945,899,852,804,768,
+741,704,655,620,603,582,554,563,636,715,703,577,412,292,219,152,79,25,2,-10,
+-37,-81,-141,-217,-301,-371,-413,-442,-476,-520,-557,-578,-584,-588,-611,-669,-754,-841,-907,-951,
+-982,-998,-992,-972,-957,-955,-955,-952,-950,-953,-953,-947,-943,-950,-959,-957,-942,-920,-894,-866,
+-842,-827,-818,-800,-769,-728,-684,-642,-611,-601,-603,-596,-568,-532,-507,-500,-496,-477,-443,-401,
+-360,-323,-295,-275,-259,-239,-217,-206,-213,-227,-226,-215,-221,-262,-314,-343,-347,-349,-354,-343,
+-313,-297,-320,-366,-396,-400,-396,-403,-414,-425,-438,-458,-478,-494,-512,-533,-552,-561,-566,-576,
+-590,-599,-599,-594,-589,-584,-580,-578,-575,-567,-549,-523,-493,-468,-450,-428,-391,-350,-325,-318,
+-303,-267,-224,-192,-155,-89,0,85,165,266,400,538,657,774,921,1095,1261,1393,1479,1503,
+1453,1370,1360,1534,1923,2449,2987,3463,3884,4265,4535,4556,4293,3911,3659,3626,3674,3627,3470,3317,
+3238,3186,3108,3027,2989,2969,2895,2736,2542,2378,2255,2140,2005,1843,1663,1475,1289,1116,964,829,
+689,523,330,136,-34,-176,-303,-422,-530,-622,-703,-771,-825,-873,-936,-1017,-1095,-1143,-1162,-1177,
+-1200,-1225,-1240,-1247,-1249,-1242,-1219,-1177,-1115,-1033,-942,-866,-824,-809,-806,-816,-863,-951,-1042,-1079,
+-1040,-958,-877,-811,-748,-682,-632,-611,-610,-609,-605,-608,-617,-619,-605,-590,-593,-624,-670,-712,
+-733,-722,-682,-624,-557,-488,-421,-361,-305,-241,-158,-67,15,83,147,217,291,370,456,543,
+616,670,718,777,845,906,953,989,1021,1050,1081,1114,1142,1159,1171,1192,1220,1245,1266,1295,
+1331,1354,1355,1348,1352,1360,1364,1375,1408,1456,1484,1478,1453,1430,1468,1458,1448,1442,1446,1451,
+1451,1451,1457,1470,1490,1520,1560,1593,1607,1619,1644,1670,1668,1655,1694,1824,1995,2102,2102,2062,
+2078,2171,2267,2295,2261,2227,2219,2209,2164,2091,2015,1937,1852,1772,1718,1678,1621,1534,1438,1341,
+1228,1099,983,904,838,760,683,627,574,493,396,331,304,263,164,25,-113,-241,-374,-516,
+-666,-829,-992,-1111,-1166,-1211,-1310,-1446,-1534,-1546,-1543,-1581,-1635,-1667,-1704,-1795,-1911,-1956,-1895,-1798,
+-1738,-1706,-1656,-1597,-1582,-1620,-1647,-1595,-1466,-1326,-1247,-1255,-1329,-1423,-1502,-1570,-1649,-1743,-1820,-1849,
+-1834,-1809,-1802,-1810,-1820,-1826,-1837,-1867,-1921,-1976,-1991,-1939,-1846,-1783,-1807,-1916,-2051,-2160,-2225,-2265,
+-2306,-2356,-2409,-2453,-2487,-2524,-2577,-2642,-2709,-2780,-2872,-2992,-3128,-3259,-3384,-3511,-3641,-3762,-3876,-3997,
+-4128,-4255,-4364,-4460,-4550,-4625,-4675,-4715,-4769,-4841,-4910,-4968,-5030,-5109,-5188,-5255,-5323,-5412,-5515,-5594,
+-5634,-5651,-5665,-5675,-5676,-5673,-5659,-5601,-5477,-5330,-5251,-5292,-5410,-5512,-5543,-5507,-5437,-5358,-5284,-5216,
+-5137,-5036,-4936,-4880,-4874,-4860,-4779,-4648,-4543,-4497,-4463,-4384,-4269,-4177,-4135,-4105,-4045,-3953,-3851,-3746,
+-3623,-3483,-3342,-3214,-3098,-2989,-2880,-2755,-2599,-2415,-2231,-2080,-1968,-1873,-1774,-1662,-1529,-1368,-1182,-990,
+-822,-696,-610,-549,-496,-440,-378,-304,-198,-27,223,534,859,1161,1435,1682,1897,2073,2221,2360,
+2497,2616,2712,2807,2927,3069,3208,3325,3408,3437,3397,3317,3266,3285,3355,3432,3508,3605,3724,3831,
+3914,4000,4123,4272,4414,4533,4633,4715,4782,4848,4934,5034,5116,5165,5199,5246,5321,5423,5555,5703,
+5842,5957,6064,6176,6264,6280,6225,6163,6152,6195,6253,6303,6352,6408,6452,6466,6449,6420,6385,6339,
+6276,6213,6177,6175,6186,6181,6162,6155,6169,6176,6152,6116,6100,6101,6080,6032,6001,6028,6085,6114,
+6095,6060,6042,6035,6021,6003,5998,6030,6130,6316,6539,6694,6714,6647,6596,6591,6578,6526,6479,6471,
+6456,6375,6254,6170,6130,6058,5921,5778,5690,5632,5544,5429,5328,5243,5145,5042,4972,4925,4855,4768,
+4725,4724,4678,4566,4495,4523,4467,4068,3368,2766,2601,2795,2985,2954,2785,2629,2492,2304,2083,1911,
+1805,1705,1584,1475,1408,1357,1297,1238,1201,1178,1154,1134,1124,1107,1060,995,937,886,834,788,
+759,734,687,628,590,576,552,524,554,667,780,780,659,521,441,384,276,122,-4,-62,
+-74,-83,-103,-134,-182,-247,-311,-361,-402,-450,-508,-563,-608,-638,-653,-665,-696,-758,-840,-917,
+-973,-1008,-1021,-1011,-989,-973,-971,-976,-978,-979,-981,-981,-976,-971,-970,-972,-969,-958,-940,-915,
+-885,-854,-827,-804,-781,-756,-724,-681,-633,-600,-590,-590,-575,-541,-506,-483,-471,-461,-447,-427,
+-395,-350,-304,-272,-257,-241,-218,-195,-189,-200,-208,-199,-184,-190,-226,-268,-296,-310,-325,-337,
+-325,-294,-275,-294,-337,-368,-373,-367,-367,-379,-399,-420,-437,-450,-466,-494,-524,-538,-535,-532,
+-543,-561,-570,-565,-557,-553,-553,-554,-551,-542,-526,-506,-482,-456,-432,-416,-396,-359,-310,-271,
+-254,-240,-207,-166,-135,-103,-45,41,129,206,297,417,548,664,779,928,1111,1291,1439,1548,
+1609,1591,1488,1363,1328,1461,1751,2138,2585,3098,3644,4094,4293,4228,4074,4033,4132,4216,4155,3983,
+3820,3699,3549,3333,3113,2969,2892,2811,2686,2547,2431,2333,2221,2071,1886,1685,1490,1319,1173,1039,
+905,763,608,434,246,59,-106,-246,-364,-469,-565,-654,-737,-815,-893,-974,-1049,-1102,-1126,-1133,
+-1145,-1170,-1198,-1219,-1223,-1207,-1172,-1133,-1102,-1073,-1026,-950,-867,-811,-788,-778,-773,-792,-852,-933,
+-982,-970,-914,-845,-780,-720,-667,-631,-613,-602,-590,-581,-584,-592,-591,-580,-573,-583,-616,-663,
+-707,-732,-727,-694,-643,-580,-506,-427,-353,-288,-223,-147,-65,10,80,149,220,297,382,478,
+568,636,683,730,791,854,904,944,982,1022,1057,1091,1123,1148,1160,1169,1192,1226,1253,1273,
+1298,1331,1351,1349,1342,1348,1363,1373,1389,1425,1473,1503,1500,1482,1468,1508,1504,1493,1485,1487,
+1493,1491,1488,1494,1513,1542,1579,1621,1652,1666,1678,1706,1736,1740,1726,1751,1857,2009,2121,2149,
+2142,2175,2261,2341,2360,2329,2297,2281,2255,2198,2120,2040,1958,1867,1786,1735,1695,1634,1547,1459,
+1380,1287,1169,1055,973,910,840,771,726,687,616,512,424,386,373,337,256,134,-15,-170,
+-307,-439,-603,-805,-987,-1099,-1169,-1257,-1350,-1380,-1341,-1326,-1397,-1503,-1565,-1600,-1679,-1793,-1839,-1760,
+-1624,-1526,-1472,-1414,-1352,-1338,-1382,-1413,-1358,-1224,-1083,-1006,-1015,-1098,-1224,-1360,-1487,-1599,-1688,-1740,
+-1747,-1723,-1701,-1702,-1723,-1746,-1755,-1755,-1772,-1822,-1878,-1878,-1794,-1682,-1641,-1712,-1840,-1943,-1997,-2036,
+-2087,-2140,-2183,-2222,-2264,-2304,-2339,-2382,-2441,-2508,-2578,-2668,-2797,-2946,-3080,-3190,-3302,-3426,-3548,-3657,
+-3772,-3906,-4043,-4158,-4250,-4335,-4411,-4463,-4500,-4555,-4642,-4734,-4804,-4859,-4925,-5005,-5088,-5174,-5267,-5356,
+-5421,-5465,-5501,-5528,-5529,-5513,-5508,-5513,-5473,-5347,-5191,-5117,-5177,-5308,-5407,-5428,-5398,-5349,-5292,-5224,
+-5147,-5060,-4968,-4900,-4887,-4912,-4905,-4818,-4684,-4584,-4545,-4518,-4449,-4352,-4275,-4233,-4195,-4129,-4040,-3942,
+-3831,-3696,-3546,-3408,-3294,-3194,-3090,-2975,-2850,-2714,-2566,-2411,-2263,-2128,-2011,-1907,-1804,-1679,-1514,-1310,
+-1095,-910,-783,-710,-668,-627,-574,-509,-430,-315,-128,144,475,801,1079,1304,1496,1671,1834,1993,
+2155,2312,2443,2542,2633,2741,2871,3013,3155,3272,3319,3272,3176,3121,3154,3238,3311,3370,3454,3569,
+3676,3752,3829,3951,4113,4269,4386,4469,4536,4605,4690,4800,4919,5019,5079,5112,5145,5200,5292,5420,
+5564,5695,5810,5932,6071,6189,6231,6192,6124,6089,6103,6149,6208,6274,6337,6385,6410,6414,6400,6366,
+6314,6249,6187,6148,6139,6147,6152,6144,6135,6126,6104,6063,6022,6006,6004,5984,5946,5929,5962,6018,
+6050,6044,6022,6004,5992,5987,5984,5960,5913,5912,6047,6311,6563,6668,6641,6605,6620,6634,6595,6538,
+6509,6485,6410,6298,6213,6160,6081,5956,5844,5797,5772,5694,5552,5396,5256,5137,5055,5020,4991,4916,
+4824,4792,4813,4786,4683,4620,4648,4574,4140,3409,2792,2629,2823,3005,2968,2807,2670,2545,2351,2111,
+1922,1811,1719,1606,1498,1421,1361,1302,1258,1240,1226,1197,1161,1132,1101,1051,991,936,882,823,
+777,755,730,672,598,554,539,509,466,472,563,667,687,636,609,636,623,479,242,37,
+-65,-97,-116,-144,-177,-219,-274,-328,-367,-397,-438,-497,-567,-638,-697,-728,-732,-734,-762,-824,
+-894,-950,-986,-1005,-1008,-998,-988,-987,-995,-1004,-1008,-1009,-1008,-1005,-1001,-996,-991,-987,-980,-965,
+-939,-905,-868,-830,-793,-764,-744,-722,-684,-634,-596,-581,-575,-555,-523,-493,-470,-447,-427,-417,
+-412,-390,-341,-286,-249,-232,-215,-191,-175,-179,-191,-189,-172,-159,-167,-193,-222,-249,-279,-310,
+-323,-305,-272,-255,-268,-300,-325,-334,-333,-334,-350,-380,-413,-433,-439,-452,-482,-513,-522,-512,
+-506,-517,-532,-536,-527,-515,-508,-508,-512,-514,-505,-483,-456,-432,-409,-386,-364,-343,-310,-264,
+-221,-195,-175,-145,-104,-68,-33,20,99,182,254,334,441,565,686,810,961,1139,1308,1442,
+1551,1639,1678,1633,1515,1392,1335,1376,1531,1832,2306,2901,3468,3865,4075,4212,4378,4545,4612,4554,
+4456,4389,4305,4103,3768,3407,3121,2921,2758,2610,2496,2418,2345,2241,2094,1912,1710,1516,1357,1235,
+1119,984,832,678,521,347,159,-20,-176,-307,-424,-529,-620,-706,-802,-911,-1015,-1083,-1107,-1103,
+-1099,-1110,-1131,-1151,-1160,-1153,-1120,-1066,-1019,-1004,-1013,-1004,-951,-870,-806,-775,-760,-750,-758,-804,
+-871,-915,-909,-864,-810,-758,-709,-666,-633,-609,-586,-563,-549,-548,-553,-553,-550,-555,-574,-606,
+-647,-687,-714,-718,-697,-657,-599,-523,-435,-350,-277,-211,-141,-68,2,72,143,217,297,392,
+495,585,645,689,743,813,876,917,948,986,1030,1069,1102,1132,1155,1167,1178,1206,1243,1270,
+1284,1300,1327,1347,1348,1343,1348,1363,1380,1406,1450,1498,1524,1522,1512,1508,1554,1553,1538,1525,
+1527,1534,1533,1528,1532,1553,1587,1631,1679,1719,1741,1754,1776,1801,1808,1795,1808,1891,2030,2158,
+2231,2267,2315,2387,2444,2446,2402,2351,2311,2270,2213,2147,2080,2003,1912,1823,1756,1697,1619,1525,
+1445,1386,1317,1220,1127,1071,1037,987,916,857,816,761,669,567,496,466,448,403,304,153,
+-5,-135,-250,-409,-631,-848,-990,-1069,-1141,-1202,-1201,-1155,-1165,-1286,-1440,-1522,-1545,-1597,-1683,-1706,
+-1606,-1455,-1357,-1317,-1272,-1204,-1161,-1162,-1152,-1075,-948,-843,-814,-865,-977,-1130,-1299,-1452,-1565,-1626,
+-1641,-1627,-1610,-1606,-1615,-1632,-1650,-1665,-1675,-1690,-1728,-1775,-1778,-1705,-1606,-1580,-1657,-1766,-1822,-1830,
+-1854,-1918,-1983,-2018,-2040,-2077,-2119,-2150,-2184,-2238,-2306,-2377,-2465,-2594,-2748,-2882,-2983,-3085,-3209,-3339,
+-3452,-3566,-3701,-3843,-3957,-4042,-4121,-4199,-4258,-4301,-4360,-4457,-4563,-4644,-4700,-4759,-4831,-4912,-4996,-5083,
+-5163,-5223,-5272,-5323,-5363,-5368,-5347,-5344,-5360,-5331,-5207,-5052,-4993,-5076,-5218,-5305,-5312,-5290,-5276,-5254,
+-5192,-5097,-4998,-4923,-4895,-4913,-4944,-4929,-4841,-4719,-4631,-4594,-4569,-4516,-4441,-4373,-4317,-4255,-4177,-4093,
+-4004,-3895,-3758,-3612,-3486,-3387,-3295,-3188,-3063,-2933,-2811,-2692,-2566,-2427,-2281,-2141,-2018,-1910,-1800,-1666,
+-1494,-1296,-1106,-961,-873,-822,-770,-698,-606,-502,-369,-172,102,423,726,967,1149,1308,1466,1627,
+1788,1951,2106,2239,2344,2434,2532,2651,2797,2958,3096,3152,3104,3016,2986,3049,3147,3211,3244,3303,
+3405,3512,3593,3674,3799,3963,4120,4236,4319,4391,4467,4555,4661,4779,4891,4975,5025,5053,5090,5165,
+5284,5425,5558,5685,5830,5992,6128,6187,6164,6101,6048,6029,6049,6098,6161,6217,6261,6295,6316,6306,
+6261,6201,6151,6117,6099,6096,6108,6119,6108,6072,6029,5990,5958,5932,5917,5906,5886,5860,5853,5882,
+5937,5989,6019,6022,6004,5987,5998,6020,5978,5838,5706,5757,6047,6411,6632,6660,6618,6621,6651,6639,
+6585,6533,6489,6421,6327,6243,6172,6081,5963,5870,5834,5812,5730,5573,5385,5214,5095,5049,5057,5047,
+4970,4874,4846,4876,4864,4784,4737,4754,4639,4166,3429,2833,2679,2852,3003,2955,2804,2681,2564,2375,
+2138,1945,1827,1732,1625,1522,1440,1368,1307,1278,1280,1275,1233,1175,1126,1086,1040,989,941,887,
+824,773,749,721,655,570,517,498,465,404,370,404,463,487,505,583,700,722,564,294,
+62,-58,-110,-156,-212,-268,-324,-381,-427,-446,-451,-472,-522,-594,-674,-744,-783,-784,-769,-776,
+-815,-867,-909,-939,-967,-992,-1005,-1004,-1002,-1010,-1023,-1031,-1030,-1027,-1027,-1026,-1021,-1014,-1009,-1004,
+-990,-962,-927,-890,-848,-804,-767,-746,-727,-690,-638,-593,-572,-561,-541,-515,-492,-470,-439,-411,
+-403,-406,-387,-332,-266,-222,-200,-180,-160,-155,-169,-177,-164,-143,-141,-158,-177,-194,-221,-264,
+-305,-316,-293,-263,-248,-252,-263,-276,-290,-301,-310,-327,-362,-401,-424,-428,-438,-464,-491,-497,
+-486,-481,-487,-494,-491,-482,-473,-464,-458,-462,-472,-469,-444,-410,-385,-366,-342,-311,-282,-255,
+-219,-178,-144,-116,-84,-42,0,40,90,156,227,293,368,468,587,710,838,985,1148,1298,
+1416,1513,1605,1682,1717,1695,1621,1514,1405,1360,1472,1794,2284,2826,3323,3758,4153,4480,4671,4706,
+4677,4701,4777,4773,4567,4186,3759,3385,3067,2786,2563,2429,2362,2302,2209,2083,1934,1764,1590,1443,
+1331,1222,1083,918,755,602,440,260,79,-82,-223,-354,-467,-556,-637,-742,-883,-1022,-1103,-1110,
+-1076,-1045,-1039,-1047,-1056,-1059,-1044,-1003,-942,-897,-900,-937,-961,-934,-873,-814,-774,-740,-713,-716,
+-765,-834,-871,-853,-803,-756,-720,-685,-646,-609,-579,-552,-527,-511,-506,-507,-509,-517,-536,-565,
+-597,-631,-664,-691,-703,-695,-667,-617,-543,-453,-362,-282,-211,-142,-74,-6,64,137,212,297,
+396,502,587,641,686,750,831,897,933,960,998,1044,1084,1116,1147,1174,1189,1203,1230,1267,
+1292,1299,1306,1325,1344,1351,1348,1349,1361,1382,1421,1475,1525,1548,1549,1548,1554,1603,1599,1576,
+1557,1559,1572,1577,1575,1580,1600,1635,1682,1736,1784,1812,1824,1834,1847,1852,1848,1867,1946,2082,
+2227,2333,2396,2447,2501,2535,2516,2449,2369,2306,2264,2229,2194,2148,2077,1979,1874,1786,1705,1613,
+1514,1439,1391,1335,1256,1188,1171,1184,1170,1105,1024,963,909,830,719,611,537,501,469,401,
+286,153,36,-86,-269,-515,-743,-876,-933,-979,-1030,-1048,-1045,-1104,-1261,-1431,-1513,-1520,-1532,-1562,
+-1528,-1401,-1263,-1206,-1210,-1187,-1108,-1019,-954,-880,-771,-661,-617,-664,-779,-931,-1102,-1275,-1422,-1514,
+-1542,-1523,-1497,-1494,-1511,-1522,-1523,-1534,-1569,-1600,-1602,-1593,-1602,-1617,-1595,-1545,-1533,-1593,-1670,-1694,
+-1677,-1687,-1747,-1808,-1832,-1842,-1874,-1917,-1948,-1979,-2036,-2113,-2189,-2273,-2394,-2544,-2679,-2780,-2879,-3006,
+-3140,-3255,-3365,-3495,-3636,-3750,-3831,-3906,-3988,-4060,-4116,-4184,-4283,-4391,-4476,-4537,-4598,-4667,-4738,-4811,
+-4895,-4977,-5040,-5087,-5135,-5177,-5192,-5190,-5206,-5233,-5206,-5081,-4930,-4884,-4980,-5123,-5199,-5199,-5192,-5211,
+-5211,-5148,-5037,-4936,-4887,-4890,-4919,-4935,-4907,-4829,-4735,-4662,-4623,-4596,-4560,-4510,-4449,-4376,-4291,-4205,
+-4127,-4046,-3943,-3813,-3677,-3560,-3467,-3379,-3273,-3147,-3017,-2898,-2789,-2676,-2550,-2409,-2265,-2130,-2015,-1921,
+-1827,-1700,-1526,-1330,-1165,-1060,-995,-925,-819,-685,-541,-380,-177,82,370,633,840,1000,1150,1308,
+1466,1614,1753,1891,2022,2135,2229,2318,2422,2557,2714,2848,2906,2880,2834,2850,2941,3038,3081,3085,
+3118,3207,3319,3421,3523,3653,3805,3946,4059,4157,4254,4347,4430,4511,4609,4728,4843,4920,4953,4976,
+5036,5151,5297,5443,5590,5754,5926,6060,6120,6111,6071,6027,5996,5989,6010,6042,6067,6089,6119,6148,
+6147,6107,6057,6027,6017,6010,6012,6033,6053,6034,5968,5900,5871,5878,5885,5869,5842,5819,5805,5800,
+5814,5855,5925,6000,6038,6024,5995,6006,6043,5998,5800,5559,5513,5785,6230,6571,6672,6628,6596,6616,
+6625,6585,6521,6465,6411,6346,6273,6191,6088,5967,5863,5792,5725,5617,5457,5276,5124,5042,5045,5092,
+5099,5029,4941,4915,4936,4920,4853,4812,4789,4600,4084,3379,2852,2732,2880,2992,2937,2808,2703,2587,
+2398,2168,1976,1843,1735,1629,1537,1458,1376,1307,1282,1294,1291,1242,1173,1117,1074,1029,983,946,
+904,845,784,743,703,632,545,485,459,426,365,312,302,313,315,342,437,555,572,424,
+191,3,-93,-150,-216,-293,-365,-435,-501,-545,-551,-541,-551,-595,-660,-728,-785,-818,-820,-809,
+-812,-839,-869,-886,-901,-932,-977,-1011,-1019,-1015,-1018,-1033,-1043,-1041,-1035,-1036,-1040,-1039,-1031,-1025,
+-1021,-1009,-984,-953,-922,-887,-841,-798,-768,-743,-703,-647,-598,-571,-555,-534,-512,-495,-477,-446,
+-415,-404,-406,-384,-324,-253,-204,-177,-156,-141,-143,-157,-156,-134,-118,-131,-162,-182,-191,-214,
+-259,-297,-301,-281,-263,-256,-248,-237,-238,-258,-285,-304,-319,-346,-381,-404,-409,-416,-436,-458,
+-463,-455,-450,-449,-444,-435,-430,-430,-424,-413,-414,-426,-428,-403,-367,-344,-330,-307,-270,-235,
+-210,-181,-141,-98,-61,-26,15,61,103,146,196,257,323,402,500,612,730,851,984,1128,
+1265,1382,1480,1568,1652,1733,1801,1827,1774,1644,1511,1480,1608,1882,2264,2750,3338,3950,4424,4635,
+4630,4599,4685,4837,4876,4689,4337,3951,3589,3227,2862,2565,2394,2319,2257,2163,2053,1945,1829,1698,
+1572,1464,1355,1211,1034,856,691,525,345,167,8,-133,-269,-389,-475,-543,-640,-793,-962,-1074,
+-1089,-1033,-964,-920,-909,-919,-932,-926,-887,-831,-800,-822,-878,-915,-908,-868,-821,-766,-696,-636,
+-634,-709,-811,-865,-843,-781,-730,-699,-667,-621,-572,-533,-506,-485,-470,-463,-463,-469,-484,-514,
+-551,-587,-617,-643,-666,-683,-685,-669,-630,-564,-479,-387,-299,-221,-152,-87,-21,50,128,209,
+297,397,499,579,632,681,752,836,903,942,972,1015,1064,1104,1137,1172,1204,1224,1237,1258,
+1287,1307,1311,1313,1325,1341,1350,1352,1354,1364,1390,1437,1499,1550,1575,1582,1591,1603,1650,1639,
+1608,1584,1586,1604,1617,1623,1634,1659,1697,1745,1798,1846,1874,1883,1882,1884,1890,1903,1944,2035,
+2172,2318,2429,2494,2533,2568,2586,2559,2481,2390,2329,2310,2311,2304,2266,2184,2065,1939,1833,1745,
+1653,1556,1476,1420,1363,1291,1240,1250,1303,1330,1285,1194,1108,1039,959,849,725,621,556,516,
+465,385,285,177,34,-179,-439,-653,-751,-768,-791,-854,-925,-991,-1096,-1255,-1404,-1473,-1472,-1455,
+-1422,-1327,-1181,-1079,-1080,-1127,-1119,-1030,-911,-796,-670,-532,-434,-434,-537,-697,-871,-1043,-1205,-1341,
+-1426,-1443,-1410,-1374,-1373,-1397,-1406,-1398,-1420,-1488,-1538,-1498,-1396,-1336,-1368,-1432,-1462,-1468,-1499,-1546,
+-1559,-1536,-1530,-1564,-1603,-1615,-1620,-1650,-1695,-1729,-1765,-1834,-1927,-2013,-2093,-2201,-2340,-2473,-2579,-2682,
+-2810,-2944,-3055,-3155,-3276,-3414,-3530,-3615,-3692,-3780,-3866,-3939,-4017,-4116,-4218,-4298,-4362,-4429,-4502,-4570,
+-4638,-4723,-4816,-4889,-4932,-4963,-4994,-5021,-5046,-5081,-5110,-5072,-4945,-4807,-4776,-4876,-5010,-5078,-5083,-5092,
+-5124,-5126,-5056,-4945,-4863,-4843,-4865,-4886,-4881,-4848,-4793,-4730,-4673,-4631,-4605,-4586,-4557,-4503,-4420,-4326,
+-4238,-4161,-4077,-3972,-3847,-3718,-3602,-3503,-3412,-3316,-3209,-3093,-2978,-2866,-2756,-2642,-2521,-2392,-2262,-2146,
+-2058,-1980,-1868,-1695,-1491,-1323,-1222,-1156,-1062,-913,-731,-549,-369,-169,64,312,540,727,886,1039,
+1192,1331,1447,1551,1665,1790,1910,2008,2088,2174,2287,2420,2537,2604,2621,2638,2700,2798,2874,2891,
+2879,2901,2986,3109,3240,3371,3508,3641,3753,3854,3964,4089,4204,4287,4353,4438,4563,4698,4792,4826,
+4838,4890,5007,5165,5329,5499,5682,5858,5978,6024,6023,6013,6004,5992,5978,5973,5970,5958,5948,5961,
+5991,6004,5986,5954,5929,5907,5880,5874,5908,5948,5933,5855,5785,5788,5845,5881,5857,5808,5783,5784,
+5782,5771,5787,5861,5972,6052,6051,5998,5973,5993,5959,5768,5489,5356,5555,6007,6436,6634,6626,6571,
+6562,6573,6549,6490,6434,6392,6350,6291,6210,6108,5987,5859,5731,5600,5453,5293,5142,5037,5009,5055,
+5122,5139,5091,5033,5015,5019,4990,4934,4882,4777,4461,3879,3225,2812,2762,2898,2978,2931,2842,2759,
+2634,2431,2199,2007,1861,1735,1627,1545,1470,1382,1301,1268,1276,1271,1224,1162,1114,1071,1017,970,
+951,940,900,828,754,686,609,526,463,427,392,342,298,278,263,236,225,261,311,291,
+169,12,-99,-158,-211,-283,-359,-429,-503,-578,-627,-635,-628,-644,-692,-747,-792,-825,-846,-853,
+-854,-864,-886,-902,-900,-898,-922,-971,-1014,-1026,-1018,-1018,-1033,-1047,-1045,-1037,-1038,-1046,-1048,-1040,
+-1033,-1030,-1021,-1001,-976,-953,-924,-882,-834,-794,-759,-714,-658,-609,-578,-556,-530,-507,-494,-481,
+-455,-424,-406,-399,-374,-318,-252,-203,-174,-153,-141,-143,-148,-136,-111,-104,-132,-172,-192,-198,
+-214,-245,-268,-267,-259,-262,-267,-254,-229,-222,-248,-286,-311,-323,-341,-366,-383,-388,-394,-408,
+-423,-427,-421,-415,-407,-391,-376,-375,-382,-381,-370,-367,-375,-376,-354,-321,-301,-291,-270,-234,
+-198,-172,-144,-100,-50,-7,29,69,113,153,189,230,285,355,438,533,636,744,858,978,
+1103,1230,1352,1464,1558,1636,1719,1818,1904,1926,1864,1761,1677,1639,1667,1835,2261,2970,3789,4417,
+4663,4607,4508,4547,4673,4705,4549,4271,3977,3680,3330,2936,2601,2410,2333,2267,2160,2042,1953,1885,
+1807,1714,1618,1511,1367,1183,986,795,606,413,231,75,-63,-202,-331,-422,-476,-543,-669,-837,
+-977,-1024,-974,-876,-792,-758,-773,-805,-813,-784,-746,-745,-794,-856,-882,-861,-821,-776,-712,-618,
+-539,-547,-664,-822,-917,-907,-838,-773,-730,-684,-619,-550,-499,-468,-447,-432,-426,-431,-442,-461,
+-492,-533,-572,-601,-620,-638,-655,-664,-657,-628,-574,-500,-412,-320,-237,-168,-110,-50,24,111,
+203,297,393,486,564,622,679,750,828,893,938,982,1036,1091,1133,1167,1203,1237,1259,1268,
+1277,1292,1304,1309,1313,1323,1336,1347,1356,1367,1384,1415,1464,1522,1571,1599,1616,1636,1650,1687,
+1675,1643,1620,1620,1636,1653,1667,1688,1723,1769,1820,1869,1909,1937,1948,1950,1951,1962,1995,2058,
+2156,2282,2409,2502,2549,2567,2582,2594,2578,2522,2456,2426,2441,2472,2474,2423,2315,2168,2017,1897,
+1808,1724,1630,1540,1469,1407,1345,1307,1326,1391,1439,1417,1332,1231,1144,1062,966,857,749,658,
+581,504,418,324,217,71,-134,-367,-541,-603,-593,-604,-683,-803,-927,-1054,-1186,-1294,-1350,-1362,
+-1343,-1276,-1147,-1011,-956,-1000,-1062,-1051,-963,-847,-721,-570,-412,-312,-326,-443,-609,-781,-943,-1092,
+-1222,-1315,-1345,-1314,-1266,-1251,-1267,-1272,-1267,-1309,-1413,-1477,-1388,-1188,-1055,-1106,-1264,-1376,-1395,-1387,
+-1402,-1415,-1399,-1375,-1375,-1388,-1391,-1398,-1431,-1477,-1516,-1560,-1640,-1747,-1845,-1925,-2017,-2138,-2265,-2376,
+-2487,-2618,-2750,-2856,-2947,-3057,-3189,-3310,-3402,-3486,-3580,-3676,-3762,-3850,-3948,-4042,-4117,-4181,-4255,-4337,
+-4409,-4478,-4563,-4661,-4741,-4785,-4806,-4830,-4864,-4905,-4945,-4957,-4902,-4781,-4672,-4667,-4770,-4890,-4950,-4961,
+-4977,-5004,-4995,-4927,-4840,-4794,-4803,-4829,-4835,-4818,-4793,-4765,-4729,-4685,-4646,-4624,-4616,-4596,-4542,-4457,
+-4364,-4279,-4196,-4099,-3986,-3863,-3740,-3619,-3507,-3411,-3329,-3248,-3157,-3053,-2941,-2828,-2718,-2612,-2502,-2386,
+-2278,-2190,-2105,-1982,-1802,-1605,-1457,-1374,-1299,-1167,-968,-749,-553,-378,-197,8,227,437,628,801,
+960,1102,1214,1294,1364,1450,1560,1674,1770,1846,1922,2015,2120,2220,2298,2364,2439,2532,2624,2678,
+2685,2679,2708,2792,2918,3065,3219,3365,3484,3573,3657,3766,3902,4032,4129,4206,4302,4438,4579,4670,
+4692,4692,4737,4853,5013,5186,5372,5577,5766,5885,5921,5919,5930,5957,5974,5971,5957,5938,5910,5886,
+5886,5912,5935,5933,5906,5862,5799,5734,5713,5758,5817,5813,5744,5695,5736,5828,5873,5835,5772,5752,
+5770,5773,5740,5722,5778,5907,6031,6066,6009,5940,5917,5892,5755,5503,5309,5384,5753,6210,6511,6588,
+6548,6515,6514,6503,6464,6415,6373,6330,6272,6200,6115,6009,5873,5711,5536,5361,5201,5076,5013,5024,
+5082,5137,5151,5131,5112,5108,5099,5078,5055,4997,4782,4299,3619,3015,2734,2771,2907,2958,2918,2864,
+2798,2660,2440,2211,2029,1884,1749,1634,1554,1481,1389,1300,1256,1253,1241,1197,1147,1109,1062,997,
+951,960,995,986,906,790,682,592,516,454,406,360,314,280,265,246,207,164,141,124,
+72,-18,-111,-171,-215,-270,-338,-400,-460,-535,-618,-673,-689,-694,-722,-772,-816,-839,-854,-869,
+-882,-891,-906,-928,-943,-940,-933,-947,-984,-1018,-1025,-1016,-1015,-1033,-1049,-1050,-1044,-1047,-1057,-1059,
+-1048,-1037,-1034,-1031,-1015,-991,-967,-940,-900,-852,-805,-764,-719,-668,-623,-590,-561,-528,-500,-487,
+-479,-459,-427,-400,-381,-356,-312,-258,-213,-183,-163,-153,-150,-144,-125,-107,-112,-145,-180,-197,
+-201,-209,-222,-228,-228,-237,-261,-277,-264,-235,-226,-250,-289,-314,-325,-337,-355,-369,-374,-377,
+-385,-392,-391,-385,-378,-366,-346,-326,-320,-326,-329,-323,-319,-322,-321,-305,-280,-260,-245,-222,
+-189,-157,-130,-97,-52,-3,40,77,116,159,197,230,268,321,391,471,557,648,752,866,
+982,1092,1200,1317,1442,1553,1638,1711,1796,1886,1954,1985,1978,1919,1779,1607,1592,1961,2761,3740,
+4493,4777,4680,4498,4450,4520,4552,4450,4247,4009,3734,3378,2971,2632,2452,2393,2337,2219,2075,1974,
+1923,1881,1821,1746,1654,1523,1340,1125,904,688,478,287,126,-16,-163,-308,-414,-464,-492,-561,
+-691,-837,-923,-907,-812,-706,-649,-655,-687,-694,-669,-656,-699,-785,-849,-843,-778,-708,-661,-612,
+-541,-484,-515,-658,-845,-967,-972,-898,-815,-751,-688,-611,-533,-476,-442,-419,-405,-406,-419,-436,
+-456,-484,-522,-559,-583,-596,-609,-625,-636,-632,-609,-567,-506,-426,-336,-253,-187,-137,-82,-7,
+90,194,293,382,465,541,610,677,746,813,873,928,988,1057,1120,1167,1202,1232,1260,1278,
+1284,1284,1284,1287,1294,1307,1322,1336,1349,1365,1388,1417,1453,1498,1545,1586,1617,1645,1673,1687,
+1709,1702,1681,1664,1663,1674,1691,1714,1749,1797,1852,1903,1944,1978,2009,2036,2054,2067,2086,2127,
+2195,2283,2382,2478,2547,2572,2567,2566,2584,2601,2592,2572,2577,2616,2655,2649,2580,2455,2293,2123,
+1980,1875,1788,1695,1601,1526,1476,1439,1419,1432,1477,1513,1498,1424,1325,1232,1155,1080,992,885,
+761,630,501,379,268,162,41,-111,-280,-410,-460,-451,-457,-532,-666,-813,-938,-1031,-1095,-1142,
+-1177,-1180,-1118,-1001,-900,-885,-943,-987,-964,-890,-801,-688,-532,-366,-268,-284,-395,-554,-723,-880,
+-1016,-1129,-1214,-1248,-1218,-1161,-1134,-1143,-1142,-1126,-1161,-1275,-1358,-1268,-1036,-874,-938,-1150,-1306,-1317,
+-1266,-1249,-1263,-1256,-1225,-1200,-1195,-1196,-1208,-1243,-1291,-1334,-1381,-1462,-1573,-1679,-1761,-1842,-1947,-2066,
+-2180,-2300,-2433,-2564,-2666,-2753,-2856,-2982,-3103,-3201,-3292,-3391,-3492,-3584,-3674,-3770,-3862,-3938,-4005,-4085,
+-4174,-4254,-4324,-4399,-4487,-4566,-4616,-4643,-4671,-4709,-4753,-4784,-4775,-4708,-4606,-4542,-4573,-4679,-4784,-4834,
+-4847,-4860,-4874,-4857,-4806,-4761,-4756,-4780,-4797,-4789,-4771,-4760,-4753,-4734,-4704,-4676,-4666,-4661,-4634,-4569,
+-4480,-4391,-4310,-4219,-4111,-3992,-3875,-3757,-3635,-3516,-3419,-3346,-3283,-3211,-3120,-3014,-2898,-2782,-2672,-2568,
+-2465,-2370,-2287,-2201,-2076,-1907,-1737,-1615,-1532,-1421,-1234,-994,-769,-595,-451,-298,-118,83,293,501,
+697,869,1007,1106,1170,1218,1276,1356,1450,1541,1622,1700,1783,1867,1949,2032,2127,2236,2347,2435,
+2487,2509,2528,2571,2648,2759,2900,3060,3216,3340,3427,3505,3606,3733,3860,3970,4073,4199,4350,4489,
+4568,4577,4566,4600,4701,4845,5007,5195,5414,5625,5764,5812,5817,5837,5878,5909,5910,5895,5878,5862,
+5850,5853,5874,5896,5895,5860,5789,5691,5602,5573,5615,5672,5674,5626,5610,5679,5782,5825,5781,5720,
+5711,5743,5752,5707,5653,5665,5777,5934,6041,6041,5972,5913,5880,5792,5586,5349,5280,5500,5914,6293,
+6482,6501,6465,6449,6449,6437,6406,6359,6299,6229,6160,6091,6003,5875,5711,5533,5360,5208,5099,5057,
+5077,5120,5144,5147,5151,5162,5162,5148,5158,5194,5140,4813,4158,3384,2830,2674,2791,2921,2930,2873,
+2824,2759,2611,2395,2190,2036,1904,1768,1650,1566,1492,1401,1314,1268,1255,1232,1182,1131,1093,1043,
+978,943,978,1049,1064,978,828,684,581,511,454,396,335,277,236,215,195,161,117,77,
+34,-25,-97,-161,-212,-264,-324,-381,-429,-485,-564,-650,-707,-727,-741,-775,-818,-846,-856,-866,
+-885,-902,-911,-923,-946,-972,-986,-989,-996,-1015,-1030,-1029,-1021,-1023,-1041,-1059,-1063,-1061,-1068,-1078,
+-1078,-1063,-1048,-1044,-1043,-1028,-1000,-970,-941,-905,-860,-811,-767,-724,-681,-641,-606,-571,-532,-500,
+-485,-479,-462,-428,-391,-363,-340,-309,-267,-225,-193,-176,-168,-161,-147,-130,-125,-140,-167,-189,
+-200,-205,-208,-207,-202,-207,-234,-270,-287,-274,-247,-236,-252,-279,-301,-315,-327,-341,-352,-357,
+-359,-360,-357,-351,-343,-335,-324,-306,-285,-270,-267,-270,-272,-273,-274,-273,-267,-253,-232,-204,
+-173,-142,-114,-84,-47,-4,38,77,117,161,202,238,270,308,361,427,500,574,655,753,
+868,982,1080,1167,1270,1396,1525,1631,1712,1784,1855,1935,2030,2119,2117,1945,1667,1544,1867,2683,
+3699,4484,4791,4707,4513,4431,4484,4553,4524,4371,4119,3783,3373,2951,2627,2475,2445,2409,2290,2125,
+1995,1928,1890,1845,1792,1728,1626,1458,1236,996,763,544,342,168,13,-141,-297,-421,-479,-484,
+-498,-572,-696,-802,-827,-760,-658,-586,-569,-572,-552,-517,-521,-604,-728,-804,-774,-670,-574,-537,
+-540,-539,-533,-568,-676,-820,-918,-919,-842,-746,-666,-603,-542,-486,-445,-418,-400,-393,-401,-422,
+-444,-465,-492,-527,-557,-573,-579,-589,-603,-612,-605,-582,-547,-496,-426,-342,-261,-198,-150,-99,
+-25,74,184,284,366,437,511,591,669,737,795,850,913,988,1069,1142,1198,1233,1255,1269,
+1280,1287,1285,1279,1275,1284,1306,1330,1348,1361,1380,1410,1448,1487,1524,1560,1594,1627,1662,1693,
+1709,1715,1717,1712,1708,1710,1721,1743,1780,1831,1888,1945,1991,2024,2053,2092,2138,2176,2199,2219,
+2254,2305,2365,2432,2506,2563,2580,2564,2564,2608,2673,2714,2725,2740,2775,2804,2789,2719,2605,2455,
+2279,2103,1957,1844,1747,1661,1602,1578,1573,1570,1568,1573,1574,1546,1481,1393,1307,1235,1167,1078,
+954,797,631,477,341,221,121,33,-60,-173,-285,-355,-369,-370,-415,-527,-668,-780,-838,-863,
+-894,-941,-969,-936,-860,-806,-815,-856,-869,-838,-790,-733,-633,-478,-324,-245,-270,-377,-534,-717,
+-889,-1014,-1090,-1131,-1137,-1097,-1040,-1021,-1035,-1019,-952,-920,-998,-1113,-1106,-952,-826,-888,-1086,-1224,
+-1209,-1126,-1090,-1105,-1109,-1079,-1048,-1038,-1042,-1057,-1091,-1140,-1185,-1229,-1299,-1400,-1505,-1592,-1673,-1769,
+-1882,-2001,-2125,-2256,-2380,-2480,-2567,-2669,-2791,-2909,-3007,-3102,-3206,-3312,-3406,-3492,-3584,-3679,-3764,-3838,
+-3918,-4009,-4095,-4166,-4231,-4301,-4371,-4427,-4468,-4500,-4535,-4571,-4594,-4579,-4520,-4449,-4428,-4489,-4598,-4689,
+-4732,-4747,-4760,-4767,-4752,-4727,-4722,-4744,-4767,-4766,-4745,-4726,-4722,-4723,-4716,-4705,-4702,-4707,-4702,-4661,
+-4583,-4489,-4402,-4319,-4223,-4110,-3994,-3882,-3767,-3647,-3533,-3445,-3381,-3322,-3254,-3171,-3073,-2961,-2839,-2721,
+-2615,-2519,-2435,-2361,-2283,-2176,-2037,-1894,-1775,-1655,-1484,-1247,-999,-806,-680,-578,-454,-295,-108,98,
+318,531,717,865,975,1049,1094,1127,1173,1241,1327,1418,1507,1590,1664,1733,1810,1907,2021,2136,
+2231,2297,2347,2395,2455,2528,2623,2749,2904,3066,3204,3307,3395,3491,3600,3709,3818,3939,4089,4253,
+4392,4465,4472,4458,4480,4558,4675,4815,4987,5199,5418,5584,5668,5701,5731,5772,5798,5795,5777,5765,
+5765,5768,5777,5794,5811,5807,5765,5683,5580,5493,5463,5490,5529,5535,5518,5535,5612,5703,5739,5710,
+5671,5674,5708,5723,5682,5605,5557,5606,5759,5941,6051,6051,5994,5941,5865,5690,5428,5239,5299,5619,
+6022,6309,6411,6400,6375,6376,6389,6386,6350,6284,6206,6134,6062,5966,5833,5676,5520,5374,5243,5148,
+5113,5130,5155,5163,5168,5193,5216,5206,5190,5235,5316,5242,4801,4012,3192,2710,2666,2837,2945,2904,
+2808,2736,2655,2508,2318,2153,2028,1907,1773,1654,1570,1497,1412,1334,1294,1278,1246,1186,1126,1082,
+1036,985,964,1004,1069,1077,985,827,675,571,508,455,393,318,245,188,152,124,92,57,
+20,-24,-81,-146,-210,-270,-329,-383,-425,-464,-521,-603,-683,-733,-755,-777,-810,-840,-852,-856,
+-871,-898,-918,-924,-929,-950,-985,-1016,-1033,-1041,-1046,-1049,-1046,-1043,-1048,-1061,-1072,-1077,-1081,-1090,
+-1100,-1097,-1080,-1064,-1060,-1058,-1042,-1011,-978,-951,-922,-883,-834,-785,-742,-703,-665,-626,-585,-544,
+-511,-494,-485,-467,-433,-391,-358,-336,-316,-285,-245,-212,-195,-188,-178,-160,-148,-154,-174,-192,
+-202,-210,-220,-221,-208,-197,-211,-249,-286,-297,-281,-257,-244,-247,-262,-283,-301,-313,-320,-328,
+-334,-335,-327,-315,-303,-293,-283,-273,-260,-243,-224,-212,-213,-222,-227,-226,-227,-231,-228,-206,
+-170,-135,-108,-81,-44,0,39,74,113,159,207,246,276,306,345,397,462,533,603,674,
+760,861,963,1049,1127,1221,1345,1480,1602,1703,1780,1841,1909,2023,2160,2209,2058,1771,1622,1900,
+2633,3543,4258,4587,4595,4488,4437,4492,4590,4619,4491,4190,3766,3298,2880,2597,2478,2462,2432,2316,
+2144,1995,1904,1844,1789,1743,1707,1641,1500,1287,1046,814,595,384,190,22,-130,-279,-405,-473,
+-479,-466,-493,-574,-667,-708,-673,-593,-524,-486,-455,-400,-343,-347,-449,-600,-699,-681,-580,-492,
+-491,-566,-649,-689,-695,-711,-754,-791,-775,-696,-591,-505,-457,-435,-423,-412,-400,-392,-395,-409,
+-429,-451,-475,-507,-542,-566,-572,-571,-577,-588,-591,-578,-554,-521,-475,-411,-333,-258,-195,-144,
+-93,-24,68,174,271,348,413,484,569,654,721,774,828,898,982,1070,1152,1217,1257,1271,
+1272,1276,1285,1290,1284,1279,1289,1316,1346,1367,1380,1398,1428,1466,1504,1536,1563,1593,1628,1667,
+1699,1715,1719,1728,1737,1746,1757,1775,1811,1866,1930,1992,2044,2084,2111,2139,2180,2230,2268,2286,
+2296,2313,2338,2368,2415,2486,2556,2586,2585,2610,2699,2814,2884,2891,2882,2897,2916,2900,2842,2757,
+2641,2475,2272,2075,1924,1819,1750,1712,1707,1716,1715,1694,1662,1628,1586,1525,1447,1363,1283,1198,
+1087,939,774,623,502,395,287,186,109,43,-46,-167,-271,-312,-303,-314,-398,-528,-632,-665,
+-654,-657,-695,-733,-735,-711,-701,-716,-727,-710,-683,-664,-630,-536,-395,-274,-232,-267,-356,-501,
+-699,-896,-1021,-1057,-1041,-1003,-949,-903,-904,-930,-887,-739,-593,-599,-751,-883,-887,-842,-885,-1011,
+-1089,-1049,-964,-933,-955,-965,-941,-916,-913,-921,-933,-961,-1007,-1053,-1092,-1144,-1227,-1326,-1417,-1501,
+-1596,-1709,-1831,-1953,-2073,-2184,-2279,-2372,-2481,-2604,-2718,-2813,-2908,-3018,-3132,-3230,-3315,-3404,-3503,-3598,
+-3678,-3752,-3834,-3920,-3997,-4063,-4124,-4187,-4247,-4293,-4321,-4341,-4366,-4391,-4390,-4353,-4311,-4318,-4394,-4502,
+-4587,-4632,-4656,-4677,-4687,-4682,-4679,-4697,-4727,-4741,-4724,-4692,-4668,-4658,-4658,-4663,-4678,-4703,-4722,-4715,
+-4668,-4588,-4497,-4408,-4318,-4217,-4105,-3991,-3875,-3751,-3627,-3525,-3458,-3411,-3356,-3284,-3201,-3113,-3014,-2904,
+-2795,-2697,-2609,-2526,-2448,-2372,-2280,-2162,-2024,-1872,-1690,-1462,-1208,-989,-849,-770,-699,-599,-465,-302,
+-108,108,323,511,668,799,897,952,972,990,1034,1111,1205,1299,1386,1464,1538,1614,1701,1802,
+1911,2011,2095,2167,2242,2325,2416,2516,2637,2782,2938,3079,3194,3292,3389,3485,3578,3675,3800,3959,
+4129,4268,4345,4361,4353,4363,4418,4512,4634,4782,4963,5162,5340,5465,5542,5599,5645,5670,5665,5648,
+5640,5643,5646,5648,5658,5675,5679,5644,5567,5474,5399,5366,5374,5400,5425,5451,5492,5551,5609,5642,
+5647,5641,5645,5663,5681,5666,5598,5503,5464,5555,5759,5963,6063,6054,6002,5927,5774,5520,5271,5205,
+5404,5768,6104,6289,6329,6309,6302,6322,6342,6331,6280,6209,6133,6043,5919,5761,5601,5465,5350,5247,
+5168,5139,5155,5183,5204,5234,5274,5291,5267,5255,5320,5390,5234,4671,3813,3033,2663,2708,2894,2965,
+2882,2757,2660,2561,2421,2263,2130,2017,1892,1755,1641,1561,1491,1411,1342,1308,1294,1262,1203,1142,
+1098,1064,1032,1016,1026,1038,1005,906,769,643,556,500,449,383,302,221,157,114,79,41,
+-1,-46,-97,-156,-222,-288,-351,-404,-442,-469,-504,-564,-640,-705,-746,-772,-803,-836,-854,-856,
+-862,-886,-918,-938,-941,-942,-956,-986,-1018,-1041,-1052,-1056,-1060,-1066,-1073,-1078,-1079,-1079,-1081,-1089,
+-1101,-1109,-1105,-1090,-1078,-1075,-1073,-1057,-1027,-996,-974,-953,-920,-870,-816,-768,-728,-688,-643,-597,
+-557,-526,-507,-493,-474,-442,-401,-364,-341,-328,-308,-275,-241,-221,-212,-200,-181,-172,-182,-200,
+-211,-217,-230,-244,-241,-217,-200,-220,-264,-299,-303,-285,-264,-247,-239,-247,-270,-293,-301,-299,
+-303,-311,-310,-292,-271,-256,-246,-233,-218,-206,-193,-176,-163,-163,-173,-179,-176,-176,-185,-188,
+-168,-132,-101,-81,-54,-9,42,82,114,155,208,257,292,317,346,384,435,499,573,645,
+710,775,850,929,1006,1087,1188,1311,1436,1555,1668,1765,1830,1884,1980,2120,2196,2089,1849,1726,
+1965,2570,3306,3913,4278,4434,4464,4451,4472,4545,4588,4475,4143,3664,3178,2802,2583,2496,2470,2415,
+2290,2125,1984,1884,1800,1718,1659,1630,1588,1473,1279,1053,835,623,407,198,23,-116,-241,-351,
+-425,-446,-436,-440,-480,-536,-565,-543,-486,-429,-386,-340,-271,-205,-202,-301,-460,-582,-600,-534,
+-480,-520,-655,-803,-877,-856,-793,-752,-741,-716,-638,-525,-429,-389,-394,-410,-414,-409,-409,-419,
+-432,-443,-455,-479,-517,-555,-574,-572,-564,-564,-568,-563,-546,-523,-492,-445,-380,-307,-240,-181,
+-127,-73,-10,69,165,260,337,400,469,553,638,703,754,810,886,977,1070,1156,1227,1271,
+1283,1276,1275,1285,1295,1295,1293,1303,1330,1359,1382,1397,1416,1443,1478,1512,1540,1563,1590,1626,
+1668,1701,1719,1734,1749,1767,1788,1810,1841,1890,1956,2024,2086,2138,2179,2210,2237,2266,2293,2302,
+2293,2284,2288,2297,2311,2354,2439,2535,2594,2622,2685,2818,2963,3031,3012,2979,2989,3015,3002,2945,
+2873,2786,2645,2437,2210,2029,1919,1862,1835,1827,1829,1818,1782,1731,1680,1631,1572,1493,1397,1295,
+1185,1056,910,773,677,616,549,444,325,233,169,87,-36,-158,-212,-198,-196,-270,-397,-495,
+-511,-475,-451,-468,-505,-535,-558,-583,-594,-572,-533,-513,-516,-494,-411,-302,-240,-245,-280,-330,
+-434,-620,-827,-956,-974,-927,-866,-806,-765,-774,-801,-737,-527,-292,-232,-403,-650,-796,-825,-839,
+-883,-901,-856,-798,-791,-821,-833,-813,-798,-805,-818,-826,-843,-883,-927,-964,-1005,-1073,-1161,-1250,
+-1333,-1425,-1536,-1657,-1774,-1881,-1978,-2072,-2174,-2293,-2419,-2530,-2623,-2717,-2830,-2951,-3058,-3146,-3235,-3337,
+-3437,-3519,-3583,-3650,-3730,-3815,-3891,-3956,-4020,-4083,-4129,-4148,-4153,-4169,-4201,-4221,-4208,-4185,-4202,-4281,
+-4388,-4476,-4532,-4571,-4605,-4624,-4627,-4634,-4658,-4687,-4696,-4676,-4640,-4608,-4587,-4585,-4605,-4646,-4688,-4710,
+-4697,-4651,-4583,-4503,-4415,-4318,-4213,-4105,-3990,-3859,-3713,-3576,-3484,-3444,-3424,-3384,-3311,-3223,-3135,-3049,
+-2965,-2888,-2818,-2743,-2656,-2564,-2474,-2378,-2256,-2094,-1892,-1653,-1393,-1151,-974,-875,-820,-764,-686,-585,
+-454,-281,-75,129,307,461,602,722,795,816,817,837,892,969,1053,1143,1240,1339,1431,1515,
+1602,1699,1801,1896,1984,2079,2193,2319,2446,2573,2709,2848,2975,3083,3180,3278,3372,3459,3551,3672,
+3831,4000,4140,4224,4254,4253,4253,4285,4361,4471,4598,4741,4903,5073,5226,5347,5436,5499,5534,5543,
+5540,5540,5542,5534,5520,5520,5541,5561,5541,5473,5385,5311,5268,5260,5288,5347,5415,5463,5484,5501,
+5538,5588,5615,5605,5588,5598,5620,5595,5495,5387,5383,5527,5744,5913,5981,5980,5938,5830,5625,5381,
+5237,5303,5561,5879,6122,6233,6248,6237,6244,6263,6261,6223,6160,6086,5990,5854,5687,5528,5406,5316,
+5235,5169,5142,5161,5205,5257,5309,5344,5336,5302,5308,5373,5368,5071,4398,3556,2914,2693,2795,2947,
+2963,2859,2734,2630,2519,2384,2248,2129,2010,1874,1737,1629,1550,1476,1396,1331,1299,1287,1264,1220,
+1171,1135,1110,1090,1064,1028,969,884,782,680,596,532,483,431,363,279,197,137,99,67,
+21,-38,-104,-168,-231,-294,-357,-415,-458,-486,-508,-545,-602,-666,-717,-752,-787,-824,-852,-862,
+-865,-881,-913,-943,-958,-959,-960,-968,-982,-1000,-1018,-1032,-1042,-1054,-1073,-1090,-1094,-1085,-1074,-1074,
+-1085,-1097,-1102,-1098,-1091,-1086,-1085,-1083,-1069,-1043,-1014,-992,-973,-943,-894,-836,-785,-743,-702,-654,
+-606,-567,-539,-518,-499,-479,-450,-411,-369,-342,-331,-323,-300,-268,-243,-230,-219,-205,-199,-207,
+-218,-224,-232,-252,-267,-255,-220,-200,-223,-271,-303,-305,-289,-270,-247,-230,-234,-262,-287,-291,
+-283,-287,-298,-293,-265,-235,-220,-212,-194,-170,-152,-140,-127,-114,-113,-122,-128,-124,-124,-134,
+-138,-119,-87,-65,-50,-20,32,86,124,156,200,256,304,335,362,395,433,477,535,607,
+676,730,778,833,896,965,1052,1165,1288,1399,1502,1618,1738,1822,1871,1947,2072,2156,2081,1886,
+1798,2020,2533,3138,3670,4085,4381,4527,4526,4476,4482,4511,4406,4062,3554,3070,2747,2595,2540,2492,
+2398,2253,2101,1984,1897,1803,1695,1609,1567,1525,1422,1246,1042,845,648,436,229,59,-67,-172,
+-271,-347,-387,-397,-405,-427,-455,-463,-435,-381,-325,-281,-242,-192,-146,-153,-246,-396,-523,-559,
+-519,-486,-545,-706,-890,-998,-993,-926,-874,-861,-842,-765,-640,-529,-477,-475,-479,-467,-450,-450,
+-465,-475,-472,-470,-488,-526,-561,-575,-567,-556,-550,-542,-527,-508,-489,-460,-409,-339,-269,-210,
+-157,-101,-44,14,84,170,263,341,404,470,550,631,695,746,807,890,986,1080,1164,1232,
+1274,1286,1281,1279,1287,1297,1299,1301,1313,1336,1361,1384,1405,1429,1456,1488,1520,1547,1568,1593,
+1631,1676,1712,1734,1762,1783,1810,1843,1879,1921,1974,2036,2099,2160,2220,2275,2316,2340,2345,2329,
+2290,2246,2223,2227,2238,2254,2300,2398,2514,2595,2647,2735,2884,3026,3076,3045,3026,3070,3120,3098,
+3008,2911,2830,2715,2528,2304,2118,2008,1953,1920,1900,1891,1879,1850,1802,1747,1691,1625,1534,1419,
+1295,1173,1052,936,847,802,777,717,592,441,329,271,215,119,13,-40,-40,-54,-135,-257,
+-337,-337,-291,-258,-264,-295,-341,-399,-449,-455,-409,-350,-328,-335,-315,-246,-185,-193,-254,-300,
+-318,-376,-524,-709,-826,-839,-794,-742,-687,-640,-629,-640,-578,-380,-141,-59,-216,-485,-678,-732,
+-722,-715,-706,-677,-656,-672,-707,-715,-696,-686,-701,-718,-723,-733,-765,-809,-847,-886,-947,-1026,
+-1107,-1181,-1265,-1369,-1486,-1597,-1696,-1787,-1884,-1993,-2116,-2240,-2349,-2441,-2536,-2648,-2770,-2883,-2978,-3070,
+-3170,-3270,-3352,-3412,-3470,-3545,-3632,-3713,-3782,-3847,-3912,-3963,-3986,-3993,-4011,-4049,-4081,-4081,-4067,-4088,
+-4167,-4278,-4375,-4445,-4498,-4541,-4566,-4574,-4581,-4602,-4630,-4644,-4632,-4600,-4562,-4535,-4535,-4570,-4626,-4671,
+-4681,-4659,-4616,-4562,-4493,-4408,-4311,-4211,-4109,-3994,-3849,-3683,-3533,-3444,-3425,-3434,-3416,-3348,-3247,-3144,
+-3058,-2996,-2956,-2920,-2866,-2783,-2682,-2575,-2458,-2309,-2112,-1869,-1599,-1336,-1115,-962,-873,-817,-768,-716,
+-654,-557,-407,-217,-28,132,276,422,560,654,687,680,675,697,741,804,890,1006,1138,1257,
+1348,1426,1514,1616,1717,1814,1922,2059,2216,2370,2509,2640,2767,2881,2978,3068,3164,3261,3349,3439,
+3557,3712,3876,4014,4106,4152,4162,4155,4165,4218,4314,4428,4547,4680,4835,4999,5146,5260,5340,5388,
+5412,5426,5441,5452,5444,5420,5411,5435,5466,5458,5396,5309,5230,5177,5156,5185,5264,5351,5389,5372,
+5363,5416,5511,5565,5537,5477,5464,5509,5535,5475,5353,5274,5316,5463,5637,5774,5860,5895,5859,5731,
+5531,5347,5282,5385,5616,5869,6050,6126,6134,6128,6125,6106,6054,5982,5912,5839,5739,5608,5476,5373,
+5300,5236,5180,5151,5169,5229,5302,5352,5350,5301,5262,5286,5322,5191,4734,4000,3272,2849,2792,2917,
+2993,2943,2831,2726,2628,2510,2375,2248,2132,2007,1868,1738,1633,1544,1455,1372,1312,1283,1268,1250,
+1223,1190,1158,1131,1106,1069,1000,897,782,681,607,549,498,452,403,339,258,177,121,90,
+60,8,-65,-143,-213,-275,-333,-392,-446,-487,-515,-542,-580,-631,-683,-726,-763,-803,-838,-856,
+-861,-873,-905,-943,-966,-970,-969,-974,-981,-986,-993,-1005,-1018,-1029,-1043,-1066,-1088,-1092,-1079,-1066,
+-1067,-1079,-1087,-1087,-1084,-1084,-1086,-1086,-1083,-1073,-1051,-1021,-992,-969,-940,-896,-840,-788,-749,-711,
+-666,-619,-581,-555,-532,-509,-485,-457,-417,-370,-336,-325,-325,-312,-282,-252,-236,-230,-228,-230,
+-236,-241,-243,-252,-272,-282,-261,-221,-203,-228,-274,-302,-301,-288,-270,-244,-221,-222,-250,-275,
+-278,-270,-277,-289,-279,-243,-209,-196,-189,-167,-132,-106,-91,-78,-64,-61,-69,-76,-77,-81,
+-92,-93,-74,-47,-29,-13,23,78,128,160,193,242,297,340,372,409,450,485,518,564,
+622,672,708,746,801,866,931,1014,1128,1254,1358,1454,1576,1718,1823,1878,1948,2070,2155,2081,
+1891,1816,2052,2555,3127,3637,4083,4459,4672,4674,4573,4523,4525,4405,4031,3482,2983,2689,2587,2561,
+2508,2391,2234,2093,1997,1926,1834,1716,1613,1550,1495,1390,1227,1046,872,693,498,306,150,30,
+-76,-182,-269,-324,-355,-384,-419,-445,-443,-399,-324,-246,-192,-167,-156,-156,-193,-291,-427,-532,
+-553,-506,-471,-528,-686,-878,-1015,-1057,-1042,-1030,-1036,-1022,-944,-817,-701,-636,-606,-575,-529,-496,
+-495,-515,-524,-513,-501,-509,-538,-564,-571,-562,-551,-539,-521,-496,-473,-455,-425,-370,-296,-227,
+-172,-121,-63,-1,58,121,199,285,361,422,485,561,640,707,763,828,915,1011,1101,1176,
+1233,1268,1281,1283,1285,1290,1293,1294,1300,1315,1335,1355,1378,1405,1435,1466,1498,1532,1562,1585,
+1610,1647,1694,1735,1762,1792,1820,1857,1906,1957,2006,2056,2106,2161,2225,2300,2372,2420,2433,2410,
+2353,2275,2207,2179,2193,2217,2239,2286,2381,2497,2585,2649,2740,2875,2991,3029,3023,3060,3160,3230,
+3179,3031,2885,2786,2685,2525,2326,2156,2052,1992,1946,1917,1915,1932,1936,1906,1845,1768,1681,1575,
+1452,1327,1214,1116,1032,971,938,908,830,681,510,393,355,344,300,228,169,134,82,-9,
+-106,-150,-131,-91,-73,-82,-109,-158,-232,-299,-308,-251,-177,-140,-130,-98,-39,-15,-78,-193,
+-279,-316,-367,-481,-616,-692,-687,-652,-621,-579,-518,-475,-463,-427,-306,-149,-94,-208,-408,-552,
+-587,-570,-559,-555,-544,-543,-568,-599,-601,-580,-569,-584,-603,-611,-621,-651,-695,-738,-780,-838,
+-911,-982,-1046,-1119,-1216,-1328,-1435,-1530,-1622,-1722,-1834,-1950,-2063,-2167,-2265,-2363,-2472,-2589,-2702,-2804,
+-2899,-2995,-3091,-3174,-3241,-3304,-3378,-3461,-3538,-3600,-3658,-3722,-3785,-3829,-3857,-3887,-3929,-3961,-3963,-3954,
+-3978,-4060,-4176,-4284,-4365,-4427,-4475,-4504,-4514,-4521,-4541,-4569,-4587,-4583,-4558,-4522,-4497,-4503,-4547,-4606,
+-4645,-4646,-4619,-4577,-4526,-4459,-4376,-4287,-4200,-4110,-4000,-3854,-3685,-3533,-3443,-3431,-3457,-3458,-3394,-3277,
+-3150,-3052,-3001,-2984,-2973,-2940,-2871,-2773,-2651,-2501,-2312,-2081,-1821,-1555,-1308,-1104,-954,-854,-787,-743,
+-715,-684,-617,-494,-331,-169,-29,105,254,405,519,565,558,538,535,556,600,677,796,944,
+1081,1180,1252,1329,1426,1528,1625,1732,1873,2044,2216,2369,2509,2641,2761,2861,2952,3048,3145,3231,
+3314,3421,3565,3722,3858,3959,4024,4053,4048,4039,4066,4143,4250,4365,4491,4639,4805,4961,5089,5180,
+5236,5264,5283,5310,5338,5345,5327,5315,5332,5362,5357,5302,5225,5158,5107,5076,5088,5152,5226,5248,
+5214,5201,5274,5400,5474,5439,5356,5322,5364,5417,5403,5319,5226,5192,5246,5372,5535,5691,5801,5836,
+5784,5647,5461,5299,5245,5340,5540,5746,5876,5922,5925,5912,5874,5800,5712,5647,5613,5577,5510,5422,
+5342,5285,5239,5195,5169,5187,5255,5335,5366,5319,5233,5188,5200,5152,4857,4259,3539,3006,2833,2925,
+3042,3031,2921,2806,2719,2623,2495,2358,2235,2121,1996,1866,1748,1642,1535,1430,1349,1303,1279,1256,
+1231,1208,1181,1145,1103,1063,1019,948,843,729,635,567,509,455,409,370,322,253,178,120,
+84,45,-16,-95,-174,-241,-299,-356,-413,-465,-507,-539,-570,-608,-651,-694,-734,-774,-814,-841,
+-851,-856,-880,-926,-968,-984,-979,-976,-986,-1000,-1011,-1020,-1031,-1040,-1042,-1046,-1063,-1082,-1089,-1078,
+-1068,-1070,-1077,-1076,-1069,-1067,-1072,-1076,-1073,-1068,-1063,-1048,-1019,-983,-955,-930,-894,-843,-792,-754,
+-723,-686,-644,-607,-580,-555,-527,-498,-467,-427,-378,-338,-324,-327,-321,-294,-261,-241,-241,-251,
+-262,-270,-273,-273,-280,-292,-293,-268,-232,-219,-244,-279,-294,-287,-275,-262,-240,-218,-217,-240,
+-262,-266,-263,-269,-276,-259,-222,-190,-177,-166,-137,-98,-69,-52,-36,-20,-14,-20,-28,-33,
+-43,-55,-55,-38,-17,0,23,67,121,162,189,226,279,331,368,404,450,495,524,546,
+583,628,654,663,693,759,836,900,971,1080,1209,1321,1423,1556,1711,1826,1883,1958,2091,2178,
+2081,1856,1772,2043,2605,3215,3725,4160,4544,4790,4821,4720,4641,4596,4420,3987,3394,2878,2598,2527,
+2529,2492,2383,2235,2102,2010,1939,1849,1737,1635,1563,1493,1382,1228,1067,913,749,568,394,253,
+136,16,-106,-208,-273,-319,-369,-424,-462,-457,-397,-298,-198,-137,-126,-149,-189,-254,-357,-475,
+-549,-543,-487,-461,-528,-681,-857,-988,-1050,-1069,-1079,-1085,-1059,-983,-878,-786,-727,-681,-622,-558,
+-519,-521,-544,-555,-545,-531,-534,-550,-564,-565,-556,-545,-529,-503,-470,-441,-416,-381,-323,-251,
+-185,-130,-75,-11,55,115,173,242,319,390,450,510,583,663,734,798,868,952,1042,1124,
+1189,1234,1260,1274,1284,1292,1296,1293,1292,1302,1319,1335,1349,1371,1403,1439,1473,1508,1547,1584,
+1614,1641,1677,1721,1762,1792,1818,1854,1904,1966,2030,2086,2132,2176,2230,2305,2395,2474,2514,2505,
+2456,2377,2287,2215,2190,2208,2237,2260,2298,2378,2483,2575,2651,2742,2855,2947,2992,3032,3131,3265,
+3322,3227,3029,2847,2728,2625,2480,2306,2160,2065,1998,1940,1911,1934,1998,2050,2042,1968,1857,1740,
+1629,1522,1422,1333,1252,1173,1099,1042,989,903,761,600,491,470,495,497,451,375,288,192,
+96,36,34,70,93,85,63,41,0,-77,-156,-179,-127,-46,11,48,99,160,174,95,
+-45,-179,-276,-365,-470,-555,-574,-537,-498,-479,-450,-388,-323,-293,-283,-248,-195,-185,-253,-355,
+-420,-433,-434,-447,-457,-450,-447,-465,-488,-486,-462,-447,-458,-478,-492,-507,-540,-586,-631,-674,
+-728,-793,-857,-916,-984,-1075,-1181,-1283,-1373,-1464,-1566,-1675,-1781,-1879,-1978,-2081,-2187,-2295,-2406,-2518,
+-2627,-2728,-2821,-2909,-2991,-3068,-3142,-3221,-3301,-3371,-3423,-3470,-3530,-3603,-3672,-3725,-3769,-3810,-3836,-3838,
+-3834,-3864,-3947,-4064,-4177,-4266,-4336,-4389,-4421,-4438,-4452,-4475,-4502,-4518,-4515,-4496,-4470,-4456,-4469,-4511,
+-4564,-4600,-4606,-4584,-4544,-4486,-4411,-4328,-4250,-4177,-4099,-3999,-3869,-3720,-3581,-3492,-3472,-3494,-3497,-3432,
+-3303,-3161,-3058,-3015,-3012,-3012,-2990,-2933,-2836,-2691,-2497,-2263,-2010,-1760,-1522,-1305,-1116,-964,-853,-778,
+-733,-710,-685,-632,-537,-416,-294,-180,-58,84,230,343,394,394,380,384,410,453,517,620,
+759,898,998,1060,1120,1202,1295,1384,1479,1609,1781,1967,2141,2298,2446,2581,2696,2800,2906,3008,
+3089,3158,3246,3372,3520,3655,3764,3846,3892,3896,3878,3884,3943,4047,4170,4304,4456,4621,4780,4918,
+5023,5088,5116,5128,5156,5199,5228,5224,5210,5214,5230,5220,5172,5117,5077,5046,5013,4998,5028,5078,
+5092,5061,5054,5130,5256,5335,5317,5251,5222,5252,5297,5304,5268,5211,5163,5156,5220,5357,5525,5664,
+5739,5745,5681,5541,5352,5195,5155,5248,5405,5535,5604,5634,5646,5629,5566,5482,5428,5423,5434,5413,
+5353,5288,5246,5221,5196,5180,5202,5275,5355,5376,5315,5227,5175,5125,4924,4444,3754,3124,2819,2865,
+3050,3133,3053,2908,2795,2711,2603,2464,2328,2211,2096,1971,1849,1744,1639,1523,1412,1339,1307,1284,
+1248,1209,1181,1156,1112,1050,992,943,883,799,702,615,543,475,411,364,334,302,251,188,
+130,81,24,-48,-127,-200,-263,-323,-383,-437,-481,-517,-553,-590,-629,-666,-701,-737,-776,-812,
+-836,-846,-859,-892,-943,-985,-999,-992,-991,-1007,-1031,-1054,-1072,-1084,-1085,-1075,-1067,-1075,-1091,-1099,
+-1092,-1084,-1081,-1076,-1063,-1050,-1049,-1058,-1061,-1051,-1041,-1039,-1034,-1012,-978,-950,-931,-903,-856,-802,
+-762,-736,-709,-675,-640,-611,-583,-550,-514,-480,-443,-398,-359,-341,-342,-339,-317,-284,-262,-261,
+-274,-290,-303,-309,-311,-313,-315,-307,-283,-257,-250,-267,-284,-281,-265,-253,-249,-240,-228,-225,
+-239,-255,-262,-262,-262,-256,-232,-200,-176,-161,-138,-100,-62,-38,-21,-2,16,23,19,15,
+10,0,-12,-14,-2,13,28,57,107,158,190,216,259,316,365,398,434,484,524,541,
+557,599,645,656,643,660,731,815,876,941,1049,1187,1308,1418,1556,1712,1819,1869,1946,2091,
+2178,2051,1781,1684,2001,2638,3293,3785,4168,4525,4802,4895,4832,4728,4604,4341,3858,3264,2777,2527,
+2472,2483,2462,2380,2258,2133,2030,1943,1848,1743,1649,1577,1498,1380,1231,1083,941,781,602,433,
+303,194,77,-49,-157,-228,-280,-337,-397,-435,-425,-360,-263,-172,-128,-135,-170,-214,-275,-366,
+-463,-516,-504,-475,-501,-615,-777,-918,-998,-1022,-1019,-1008,-986,-941,-876,-811,-761,-722,-676,-615,
+-556,-526,-530,-549,-559,-555,-547,-546,-552,-556,-554,-545,-531,-509,-476,-438,-399,-360,-315,-258,
+-196,-138,-83,-22,46,114,172,226,287,356,424,486,548,617,691,764,835,909,990,1072,
+1146,1205,1244,1265,1277,1289,1301,1305,1302,1302,1313,1329,1340,1350,1372,1409,1450,1486,1521,1564,
+1609,1648,1680,1713,1751,1786,1818,1847,1892,1952,2022,2092,2152,2202,2250,2312,2401,2502,2578,2597,
+2558,2485,2402,2323,2264,2241,2250,2269,2284,2313,2378,2474,2577,2678,2785,2892,2974,3032,3110,3234,
+3352,3362,3224,3013,2833,2713,2603,2459,2301,2175,2091,2022,1960,1936,1983,2083,2170,2178,2090,1947,
+1808,1705,1634,1576,1517,1445,1348,1236,1136,1062,991,886,754,652,629,666,695,661,560,426,
+296,203,172,197,233,236,205,172,152,119,45,-42,-83,-47,37,119,183,243,297,311,
+251,127,-20,-164,-296,-405,-459,-442,-382,-333,-314,-296,-250,-190,-152,-147,-154,-162,-181,-219,
+-257,-281,-300,-332,-369,-382,-367,-352,-358,-373,-368,-346,-332,-342,-362,-378,-398,-433,-481,-527,
+-567,-613,-670,-729,-785,-849,-934,-1033,-1126,-1209,-1296,-1398,-1506,-1605,-1692,-1784,-1889,-2003,-2114,-2222,
+-2334,-2450,-2558,-2652,-2734,-2813,-2893,-2973,-3055,-3135,-3204,-3256,-3301,-3358,-3434,-3515,-3584,-3637,-3676,-3699,
+-3703,-3706,-3740,-3821,-3933,-4048,-4146,-4223,-4281,-4319,-4343,-4368,-4399,-4426,-4438,-4433,-4422,-4414,-4416,-4431,
+-4463,-4504,-4540,-4557,-4548,-4509,-4443,-4360,-4279,-4210,-4147,-4076,-3991,-3888,-3774,-3661,-3576,-3541,-3541,-3529,
+-3455,-3320,-3179,-3088,-3059,-3065,-3067,-3045,-2987,-2877,-2697,-2455,-2188,-1938,-1721,-1528,-1343,-1169,-1019,-905,
+-825,-771,-728,-680,-616,-536,-451,-368,-281,-181,-67,43,124,162,172,186,227,285,339,388,
+462,578,709,809,862,902,965,1046,1126,1208,1326,1496,1692,1879,2044,2195,2336,2466,2592,2720,
+2837,2922,2982,3053,3165,3306,3442,3553,3636,3685,3691,3673,3672,3722,3823,3953,4097,4255,4422,4585,
+4734,4858,4941,4977,4987,5012,5062,5106,5116,5104,5097,5096,5073,5024,4979,4960,4951,4926,4903,4915,
+4955,4975,4957,4948,5001,5097,5167,5173,5154,5160,5193,5217,5215,5201,5187,5167,5150,5169,5254,5383,
+5506,5590,5636,5641,5579,5438,5263,5140,5121,5178,5248,5300,5348,5403,5440,5430,5382,5346,5350,5366,
+5348,5288,5226,5195,5190,5184,5178,5205,5278,5355,5380,5344,5292,5234,5077,4687,4044,3340,2867,2779,
+2963,3157,3182,3060,2912,2804,2705,2575,2428,2299,2187,2067,1935,1815,1720,1628,1520,1416,1348,1313,
+1279,1229,1181,1153,1131,1085,1010,932,869,811,741,661,583,511,442,378,330,298,266,223,
+172,120,65,-2,-78,-151,-214,-275,-340,-400,-442,-469,-498,-540,-593,-642,-681,-712,-741,-773,
+-805,-832,-852,-874,-908,-952,-989,-1007,-1012,-1019,-1040,-1071,-1102,-1124,-1132,-1125,-1109,-1098,-1104,-1118,
+-1124,-1119,-1108,-1096,-1079,-1056,-1040,-1042,-1054,-1054,-1036,-1019,-1017,-1018,-1005,-977,-953,-939,-915,-868,
+-811,-768,-745,-727,-700,-667,-637,-606,-568,-528,-493,-462,-428,-393,-370,-364,-360,-345,-320,-300,
+-293,-300,-314,-330,-342,-346,-345,-339,-327,-309,-293,-288,-292,-291,-274,-252,-240,-243,-247,-245,
+-241,-243,-251,-259,-262,-254,-233,-204,-181,-166,-146,-109,-63,-30,-12,5,30,51,56,53,
+53,53,43,30,27,37,48,61,93,144,192,219,243,288,348,394,425,465,515,546,
+549,561,611,668,681,660,668,732,810,869,938,1058,1202,1321,1422,1556,1710,1812,1852,1926,
+2072,2150,1997,1702,1609,1970,2658,3323,3771,4090,4424,4745,4919,4904,4772,4561,4219,3723,3183,2771,
+2563,2504,2492,2465,2403,2307,2192,2079,1974,1869,1761,1668,1589,1499,1372,1223,1082,946,789,605,
+432,305,212,117,9,-87,-156,-207,-260,-311,-342,-334,-288,-225,-178,-168,-188,-213,-233,-267,
+-335,-417,-468,-479,-504,-602,-771,-939,-1037,-1049,-1013,-967,-924,-876,-823,-774,-740,-716,-688,-645,
+-595,-554,-535,-534,-541,-547,-550,-550,-545,-539,-535,-533,-524,-504,-471,-432,-388,-338,-281,-222,
+-168,-121,-76,-24,38,107,173,229,280,334,398,467,535,599,661,723,791,866,946,1027,
+1103,1172,1229,1267,1286,1294,1303,1313,1318,1318,1321,1332,1345,1353,1363,1387,1428,1472,1508,1541,
+1582,1630,1676,1714,1748,1780,1812,1847,1885,1938,2004,2074,2142,2205,2260,2316,2388,2489,2601,2676,
+2676,2606,2510,2424,2363,2322,2299,2293,2296,2303,2326,2380,2469,2586,2718,2852,2965,3043,3108,3200,
+3316,3387,3339,3178,2987,2842,2740,2629,2486,2341,2230,2154,2092,2042,2033,2088,2190,2279,2287,2193,
+2038,1896,1808,1770,1748,1717,1657,1553,1411,1269,1169,1109,1041,937,835,796,828,868,838,723,
+565,426,347,331,352,369,350,304,264,241,210,143,54,0,26,120,232,319,370,393,
+389,348,262,138,-6,-146,-253,-299,-282,-229,-180,-153,-137,-112,-77,-46,-32,-35,-50,-72,
+-97,-121,-150,-193,-247,-288,-293,-271,-251,-251,-257,-250,-234,-230,-245,-264,-277,-293,-327,-375,
+-421,-460,-501,-551,-605,-656,-713,-789,-878,-964,-1042,-1125,-1226,-1334,-1432,-1514,-1598,-1701,-1817,-1932,
+-2041,-2153,-2270,-2382,-2479,-2564,-2644,-2723,-2801,-2878,-2957,-3030,-3091,-3143,-3202,-3276,-3359,-3434,-3494,-3538,
+-3563,-3571,-3578,-3613,-3692,-3803,-3923,-4031,-4118,-4179,-4217,-4243,-4276,-4315,-4347,-4358,-4356,-4358,-4369,-4384,
+-4398,-4416,-4444,-4475,-4496,-4490,-4452,-4386,-4307,-4233,-4170,-4112,-4049,-3980,-3907,-3829,-3745,-3668,-3620,-3597,
+-3563,-3478,-3345,-3213,-3135,-3116,-3123,-3121,-3092,-3022,-2887,-2670,-2399,-2130,-1913,-1746,-1597,-1438,-1272,-1122,
+-1006,-922,-855,-789,-711,-622,-534,-457,-388,-319,-245,-174,-119,-88,-73,-54,-6,76,167,232,
+265,307,397,520,622,675,706,757,832,907,982,1089,1248,1438,1615,1767,1906,2047,2195,2348,
+2503,2640,2738,2801,2868,2973,3111,3247,3352,3421,3455,3456,3442,3447,3499,3598,3727,3876,4040,4211,
+4378,4535,4675,4781,4837,4859,4885,4937,4990,5014,5010,5000,4987,4950,4886,4825,4797,4790,4779,4773,
+4799,4852,4887,4879,4864,4891,4957,5012,5033,5048,5090,5141,5161,5142,5121,5123,5133,5134,5139,5181,
+5265,5360,5443,5510,5560,5567,5500,5373,5242,5162,5137,5137,5150,5189,5262,5340,5378,5370,5350,5348,
+5347,5311,5241,5179,5158,5163,5165,5166,5197,5264,5327,5350,5348,5340,5269,4994,4434,3701,3079,2810,
+2900,3129,3258,3210,3067,2932,2823,2699,2547,2399,2279,2169,2040,1899,1779,1693,1618,1532,1441,1367,
+1311,1254,1191,1144,1124,1110,1069,991,898,814,741,671,599,531,471,415,363,316,270,221,
+169,120,75,23,-41,-109,-169,-222,-279,-342,-391,-414,-423,-449,-505,-576,-640,-685,-718,-746,
+-775,-804,-836,-868,-897,-924,-953,-983,-1009,-1029,-1049,-1075,-1110,-1143,-1162,-1163,-1151,-1139,-1137,-1146,
+-1156,-1159,-1151,-1138,-1119,-1095,-1068,-1052,-1056,-1067,-1065,-1043,-1019,-1010,-1010,-1002,-979,-957,-940,-917,
+-873,-819,-776,-754,-740,-718,-688,-655,-621,-581,-540,-506,-481,-456,-427,-399,-382,-374,-367,-355,
+-342,-334,-334,-343,-358,-372,-378,-374,-364,-353,-343,-334,-327,-318,-304,-281,-258,-246,-249,-257,
+-259,-251,-241,-239,-245,-251,-240,-211,-182,-166,-155,-129,-82,-34,-7,8,32,65,87,89,
+85,88,89,77,62,60,71,82,94,125,176,222,245,267,311,367,412,446,491,543,
+569,564,570,618,677,696,683,696,754,822,877,957,1089,1231,1332,1414,1543,1704,1812,1853,
+1920,2053,2112,1942,1650,1590,1996,2709,3356,3751,4021,4345,4707,4947,4977,4836,4576,4195,3712,3235,
+2888,2702,2616,2562,2511,2452,2370,2261,2144,2034,1924,1811,1707,1614,1511,1374,1219,1077,952,809,
+632,456,325,243,176,100,28,-25,-66,-112,-165,-213,-238,-237,-223,-215,-226,-246,-256,-261,
+-288,-356,-443,-506,-545,-609,-741,-917,-1060,-1111,-1078,-1011,-950,-898,-846,-796,-756,-729,-704,-669,
+-625,-584,-555,-539,-528,-525,-530,-541,-544,-531,-512,-500,-498,-490,-463,-421,-373,-320,-256,-182,
+-113,-63,-28,6,56,118,183,244,298,348,399,456,523,595,661,715,766,826,903,989,
+1072,1145,1208,1260,1295,1311,1317,1322,1329,1335,1340,1347,1358,1369,1377,1390,1418,1460,1501,1534,
+1563,1599,1644,1693,1739,1778,1812,1845,1885,1928,1985,2049,2114,2179,2243,2303,2361,2436,2543,2668,
+2755,2755,2667,2546,2448,2393,2368,2351,2336,2326,2328,2346,2389,2464,2582,2734,2889,3005,3076,3141,
+3239,3347,3386,3304,3136,2972,2860,2778,2677,2549,2421,2319,2247,2199,2179,2196,2250,2326,2383,2376,
+2285,2143,2015,1942,1914,1902,1885,1850,1770,1627,1453,1313,1238,1186,1102,998,940,956,992,964,
+849,700,585,532,520,518,500,459,404,356,325,294,238,160,106,130,240,386,497,535,
+514,472,426,364,266,140,15,-75,-119,-120,-93,-52,-15,8,17,23,35,51,62,61,
+49,31,2,-43,-101,-155,-182,-179,-162,-152,-150,-146,-134,-127,-135,-156,-171,-175,-183,-212,
+-258,-306,-346,-386,-434,-484,-530,-578,-641,-722,-806,-886,-968,-1064,-1168,-1265,-1345,-1425,-1522,-1637,
+-1756,-1868,-1976,-2085,-2193,-2296,-2392,-2482,-2564,-2638,-2709,-2782,-2857,-2924,-2984,-3047,-3121,-3203,-3284,-3356,
+-3410,-3438,-3444,-3447,-3480,-3562,-3683,-3816,-3938,-4035,-4098,-4130,-4152,-4183,-4228,-4266,-4285,-4292,-4305,-4329,
+-4350,-4360,-4369,-4386,-4410,-4422,-4408,-4367,-4308,-4244,-4183,-4127,-4073,-4019,-3967,-3916,-3861,-3797,-3732,-3683,
+-3650,-3607,-3523,-3400,-3280,-3205,-3178,-3171,-3156,-3114,-3026,-2864,-2624,-2349,-2107,-1938,-1821,-1705,-1560,-1396,
+-1243,-1120,-1031,-964,-896,-809,-701,-591,-497,-422,-358,-302,-265,-254,-261,-264,-239,-170,-63,45,
+114,137,159,228,340,445,506,540,587,652,717,780,872,1012,1177,1330,1462,1597,1755,1931,
+2112,2285,2432,2537,2605,2673,2774,2908,3038,3134,3188,3210,3211,3210,3231,3292,3390,3516,3665,3832,
+4008,4177,4336,4485,4610,4691,4731,4764,4817,4879,4919,4928,4922,4905,4861,4781,4691,4625,4592,4585,
+4605,4659,4729,4772,4770,4760,4791,4859,4913,4930,4941,4987,5054,5093,5078,5044,5032,5048,5066,5076,
+5101,5160,5243,5329,5402,5460,5492,5477,5412,5323,5252,5212,5191,5180,5194,5244,5308,5347,5346,5331,
+5323,5309,5264,5195,5143,5129,5133,5133,5141,5183,5247,5286,5290,5301,5318,5220,4840,4165,3430,2961,
+2902,3112,3316,3346,3230,3082,2959,2838,2687,2523,2382,2268,2152,2014,1871,1753,1671,1606,1537,1458,
+1374,1290,1210,1143,1103,1090,1082,1050,979,883,782,692,613,545,486,436,394,357,314,258,
+190,123,71,28,-18,-77,-137,-188,-234,-285,-336,-367,-372,-374,-404,-469,-545,-607,-653,-695,
+-737,-773,-805,-839,-879,-915,-938,-955,-978,-1009,-1041,-1071,-1103,-1140,-1175,-1192,-1189,-1179,-1176,-1183,
+-1193,-1197,-1193,-1185,-1171,-1152,-1126,-1100,-1084,-1082,-1087,-1083,-1062,-1035,-1019,-1013,-1004,-985,-961,-940,
+-916,-879,-834,-794,-771,-757,-738,-708,-673,-635,-595,-555,-523,-501,-481,-455,-426,-401,-387,-384,
+-384,-383,-380,-377,-381,-391,-403,-408,-402,-391,-382,-377,-372,-359,-339,-315,-291,-271,-259,-257,
+-261,-263,-253,-234,-220,-220,-225,-218,-193,-166,-150,-135,-104,-56,-14,8,27,59,97,118,
+117,115,121,121,104,85,85,100,113,122,150,198,243,269,292,336,390,431,465,511,
+565,593,589,591,627,671,687,688,716,778,836,887,974,1112,1244,1324,1393,1524,1695,1811,
+1853,1912,2026,2062,1885,1620,1614,2071,2805,3440,3808,4051,4356,4712,4963,5016,4895,4641,4260,3789,
+3340,3019,2836,2727,2643,2575,2511,2424,2309,2189,2085,1984,1873,1760,1657,1547,1403,1236,1088,973,
+857,705,536,399,315,264,221,184,163,146,105,24,-79,-172,-230,-251,-253,-256,-268,-287,
+-322,-389,-490,-595,-672,-721,-785,-889,-1010,-1090,-1097,-1050,-990,-941,-896,-849,-801,-760,-726,-691,
+-649,-604,-566,-538,-516,-500,-495,-506,-523,-526,-504,-472,-452,-447,-439,-410,-361,-304,-238,-159,
+-74,-2,41,69,103,155,218,277,332,385,435,481,529,587,656,723,776,822,879,956,
+1044,1127,1193,1245,1285,1313,1328,1336,1343,1351,1359,1368,1378,1390,1401,1412,1431,1462,1498,1533,
+1561,1587,1619,1661,1712,1765,1813,1851,1886,1928,1970,2023,2082,2142,2204,2269,2330,2387,2457,2566,
+2704,2813,2828,2738,2598,2483,2426,2411,2404,2387,2371,2366,2376,2401,2456,2563,2720,2880,2991,3053,
+3122,3240,3366,3405,3311,3139,2982,2882,2811,2730,2630,2525,2429,2353,2316,2328,2376,2431,2474,2492,
+2466,2386,2272,2171,2107,2069,2036,2015,2007,1971,1851,1656,1471,1367,1321,1257,1155,1072,1057,1072,
+1039,936,818,746,723,709,674,618,556,493,436,395,366,330,276,231,252,368,537,670,
+709,667,600,542,476,376,249,135,63,29,18,27,58,101,132,135,121,112,115,123,
+128,126,116,88,40,-13,-51,-63,-60,-58,-61,-58,-44,-28,-26,-41,-60,-67,-64,-67,
+-91,-133,-179,-220,-260,-307,-355,-399,-442,-495,-569,-655,-740,-822,-908,-1002,-1094,-1179,-1261,-1357,
+-1469,-1589,-1704,-1808,-1908,-2008,-2113,-2220,-2321,-2409,-2483,-2552,-2623,-2695,-2762,-2824,-2890,-2965,-3049,-3137,
+-3221,-3286,-3315,-3310,-3300,-3330,-3421,-3557,-3706,-3842,-3949,-4018,-4050,-4065,-4092,-4137,-4183,-4213,-4230,-4253,
+-4281,-4302,-4309,-4313,-4328,-4344,-4343,-4315,-4269,-4221,-4173,-4124,-4075,-4031,-3991,-3951,-3907,-3856,-3799,-3745,
+-3706,-3679,-3646,-3584,-3490,-3391,-3315,-3268,-3235,-3196,-3133,-3023,-2839,-2588,-2324,-2115,-1985,-1898,-1800,-1665,
+-1508,-1354,-1226,-1135,-1077,-1030,-960,-853,-728,-618,-535,-473,-424,-397,-396,-411,-416,-387,-314,-207,
+-97,-21,12,37,98,198,300,369,412,451,492,527,565,638,756,896,1028,1156,1310,1501,
+1709,1905,2074,2212,2312,2381,2448,2543,2663,2779,2865,2918,2947,2966,2988,3031,3105,3207,3331,3477,
+3643,3819,3988,4148,4303,4443,4545,4600,4638,4695,4770,4832,4857,4854,4837,4799,4721,4609,4496,4420,
+4398,4431,4503,4576,4612,4612,4622,4686,4786,4859,4868,4849,4868,4936,5002,5015,4980,4949,4950,4970,
+4987,5009,5060,5145,5239,5312,5358,5383,5385,5358,5316,5285,5279,5285,5284,5278,5282,5294,5293,5272,
+5252,5245,5234,5197,5141,5102,5092,5089,5082,5099,5161,5231,5252,5234,5243,5264,5131,4668,3935,3252,
+2945,3051,3315,3456,3396,3244,3107,2987,2840,2666,2506,2379,2265,2134,1989,1853,1740,1651,1578,1513,
+1442,1355,1256,1164,1096,1060,1046,1038,1017,965,878,771,667,583,517,461,410,372,341,306,
+251,180,110,56,14,-29,-85,-144,-199,-247,-291,-325,-339,-339,-348,-387,-446,-501,-539,-577,
+-633,-699,-753,-791,-829,-876,-921,-949,-963,-981,-1013,-1050,-1084,-1119,-1160,-1197,-1216,-1216,-1212,-1217,
+-1226,-1230,-1226,-1220,-1215,-1205,-1187,-1163,-1138,-1120,-1108,-1100,-1091,-1075,-1051,-1031,-1018,-1010,-996,-974,
+-949,-924,-896,-859,-821,-792,-774,-757,-732,-697,-657,-618,-580,-547,-521,-500,-478,-453,-427,-411,
+-407,-414,-422,-425,-423,-421,-426,-434,-438,-432,-420,-410,-404,-397,-379,-348,-315,-290,-274,-263,
+-257,-257,-260,-255,-235,-210,-196,-196,-195,-180,-157,-135,-112,-77,-34,0,22,46,81,116,
+129,128,132,146,149,131,112,116,134,145,149,169,213,260,295,329,379,432,469,493,
+528,573,604,612,622,649,675,681,688,729,792,845,892,980,1116,1239,1312,1385,1522,1691,
+1795,1826,1877,1981,2003,1826,1591,1636,2139,2904,3563,3953,4195,4456,4734,4918,4950,4851,4627,4260,
+3793,3353,3052,2890,2793,2711,2637,2561,2457,2325,2199,2103,2017,1914,1803,1702,1595,1448,1267,1104,
+992,900,778,624,483,394,353,338,342,362,373,329,206,31,-131,-232,-262,-253,-247,-274,
+-339,-439,-564,-695,-802,-872,-915,-959,-1015,-1062,-1073,-1045,-1000,-956,-915,-868,-815,-762,-717,-681,
+-648,-613,-573,-532,-494,-466,-451,-454,-471,-488,-486,-460,-423,-396,-383,-369,-340,-291,-227,-148,
+-56,33,100,136,162,202,261,324,379,426,475,522,564,603,651,712,777,833,884,942,
+1016,1100,1176,1235,1274,1300,1320,1337,1353,1367,1379,1390,1402,1415,1426,1437,1454,1479,1510,1539,
+1564,1589,1618,1653,1695,1747,1805,1858,1898,1931,1970,2005,2054,2108,2164,2225,2290,2353,2410,2479,
+2586,2726,2844,2872,2792,2651,2530,2472,2464,2464,2448,2424,2410,2409,2420,2460,2559,2716,2875,2978,
+3032,3111,3257,3411,3460,3357,3169,3001,2901,2843,2788,2723,2644,2554,2471,2431,2456,2518,2573,2597,
+2593,2562,2498,2414,2341,2288,2236,2177,2144,2156,2158,2061,1850,1628,1503,1469,1430,1328,1210,1146,
+1128,1092,1011,929,891,881,849,777,691,617,550,485,435,415,410,387,352,359,455,616,
+756,809,783,731,680,606,485,339,223,165,149,143,145,166,202,228,226,205,186,178,
+176,176,178,175,155,115,73,49,43,39,28,19,25,43,57,58,49,44,46,49,
+42,19,-15,-52,-87,-124,-167,-216,-263,-306,-355,-422,-506,-593,-674,-750,-831,-921,-1014,-1107,
+-1204,-1312,-1430,-1546,-1652,-1748,-1843,-1947,-2055,-2158,-2245,-2320,-2394,-2470,-2544,-2610,-2672,-2740,-2816,-2899,
+-2988,-3079,-3150,-3179,-3164,-3145,-3175,-3275,-3422,-3577,-3718,-3834,-3915,-3957,-3975,-3999,-4044,-4096,-4136,-4164,
+-4194,-4225,-4246,-4252,-4255,-4268,-4279,-4267,-4229,-4181,-4137,-4096,-4054,-4015,-3986,-3964,-3934,-3886,-3827,-3770,
+-3725,-3696,-3680,-3664,-3634,-3583,-3519,-3454,-3396,-3337,-3270,-3181,-3047,-2848,-2597,-2348,-2159,-2044,-1966,-1875,
+-1752,-1609,-1463,-1333,-1240,-1194,-1172,-1129,-1035,-910,-796,-716,-659,-611,-575,-560,-560,-553,-519,-450,
+-357,-255,-168,-103,-47,25,121,221,301,355,385,394,388,394,446,549,674,798,934,1107,
+1316,1527,1709,1855,1974,2067,2140,2211,2299,2403,2501,2578,2638,2691,2739,2788,2849,2935,3044,3168,
+3307,3464,3635,3804,3968,4128,4277,4388,4449,4488,4553,4652,4744,4788,4787,4772,4752,4696,4580,4428,
+4303,4254,4284,4356,4417,4439,4441,4471,4564,4694,4788,4802,4765,4756,4813,4898,4941,4923,4883,4867,
+4879,4896,4915,4963,5050,5152,5230,5273,5292,5298,5288,5268,5261,5282,5314,5329,5316,5289,5257,5219,
+5181,5160,5162,5163,5134,5089,5060,5051,5039,5024,5048,5126,5204,5217,5191,5204,5225,5057,4536,3780,
+3165,2987,3189,3450,3519,3404,3254,3140,3014,2833,2639,2491,2382,2264,2117,1968,1844,1737,1635,1542,
+1471,1407,1326,1224,1128,1060,1019,996,984,974,944,872,765,654,567,500,440,383,338,308,
+277,231,168,106,58,22,-16,-66,-125,-186,-238,-277,-297,-304,-312,-340,-387,-431,-451,-458,
+-486,-555,-643,-714,-759,-800,-855,-913,-951,-967,-984,-1015,-1054,-1091,-1127,-1167,-1205,-1229,-1236,-1239,
+-1246,-1250,-1245,-1236,-1235,-1238,-1233,-1214,-1190,-1171,-1152,-1130,-1109,-1094,-1081,-1063,-1041,-1025,-1018,-1011,
+-992,-966,-941,-917,-884,-842,-804,-783,-773,-756,-725,-686,-649,-614,-578,-544,-517,-498,-479,-459,
+-442,-438,-446,-457,-463,-460,-455,-454,-459,-464,-461,-450,-435,-424,-411,-387,-348,-306,-278,-267,
+-261,-253,-249,-254,-257,-242,-211,-183,-174,-176,-172,-155,-128,-97,-61,-25,4,30,60,94,
+117,121,120,133,156,164,151,140,149,167,174,172,187,227,278,324,373,431,485,513,
+524,542,572,600,622,650,685,705,701,704,742,801,849,896,984,1115,1235,1316,1404,1544,
+1691,1765,1780,1836,1946,1966,1785,1556,1614,2135,2933,3659,4129,4408,4618,4777,4843,4814,4710,4498,
+4132,3665,3250,3003,2902,2846,2773,2686,2589,2465,2320,2189,2095,2016,1919,1814,1722,1625,1480,1287,
+1104,980,895,793,656,527,449,426,436,466,505,519,457,296,80,-109,-213,-235,-226,-246,
+-323,-454,-610,-759,-871,-936,-972,-1002,-1042,-1077,-1085,-1060,-1018,-977,-938,-890,-829,-764,-704,-657,
+-621,-594,-569,-533,-485,-435,-405,-401,-415,-431,-436,-427,-404,-372,-341,-315,-290,-259,-214,-148,
+-59,41,130,188,216,242,289,354,419,469,509,550,594,635,672,713,765,824,881,937,
+996,1065,1139,1210,1264,1297,1314,1328,1348,1373,1394,1408,1420,1436,1451,1462,1474,1495,1527,1558,
+1580,1598,1622,1658,1699,1743,1794,1851,1902,1940,1969,2005,2030,2080,2135,2190,2250,2316,2384,2448,
+2521,2622,2745,2845,2869,2800,2679,2575,2527,2524,2526,2506,2475,2453,2447,2457,2500,2603,2761,2915,
+3006,3052,3135,3297,3464,3510,3390,3187,3018,2932,2895,2866,2827,2773,2698,2615,2563,2567,2610,2652,
+2672,2674,2655,2607,2543,2490,2451,2402,2339,2307,2333,2355,2263,2036,1790,1657,1638,1612,1498,1337,
+1223,1179,1151,1101,1049,1020,990,920,812,710,639,580,515,464,461,490,502,477,461,514,
+636,759,823,829,814,787,717,588,436,324,277,270,266,260,266,284,294,284,264,251,
+247,245,243,244,243,227,193,157,137,128,118,104,97,105,120,130,135,144,157,166,
+162,145,122,98,72,44,12,-25,-73,-125,-175,-224,-283,-360,-444,-523,-593,-667,-758,-862,
+-965,-1061,-1160,-1269,-1386,-1497,-1598,-1695,-1796,-1898,-1990,-2069,-2145,-2228,-2315,-2395,-2464,-2530,-2602,-2678,
+-2755,-2839,-2928,-3003,-3033,-3019,-3005,-3045,-3155,-3304,-3451,-3583,-3702,-3798,-3856,-3883,-3908,-3952,-4008,-4055,
+-4091,-4129,-4167,-4193,-4200,-4200,-4206,-4209,-4192,-4152,-4106,-4062,-4021,-3982,-3954,-3944,-3940,-3917,-3867,-3805,
+-3752,-3714,-3688,-3671,-3662,-3657,-3644,-3618,-3578,-3527,-3459,-3371,-3257,-3105,-2904,-2667,-2435,-2255,-2136,-2049,
+-1956,-1841,-1711,-1574,-1445,-1351,-1310,-1306,-1285,-1209,-1093,-982,-905,-851,-799,-753,-722,-705,-680,-632,
+-565,-489,-408,-319,-223,-123,-19,87,194,293,370,412,410,380,363,394,477,585,702,836,
+1002,1186,1357,1497,1616,1725,1825,1910,1993,2085,2182,2267,2336,2402,2475,2549,2616,2688,2781,2896,
+3020,3150,3297,3460,3627,3789,3946,4089,4194,4251,4291,4370,4500,4630,4698,4707,4703,4707,4677,4561,
+4375,4206,4132,4156,4222,4269,4284,4292,4334,4429,4553,4652,4684,4663,4652,4698,4782,4844,4847,4814,
+4792,4795,4807,4824,4867,4955,5063,5152,5204,5231,5248,5251,5238,5229,5242,5267,5279,5264,5231,5191,
+5146,5109,5097,5110,5116,5089,5044,5018,5011,4996,4976,4998,5076,5149,5157,5133,5156,5174,4973,4411,
+3657,3113,3033,3285,3520,3530,3391,3264,3175,3039,2825,2614,2474,2378,2257,2100,1955,1845,1744,1629,
+1520,1445,1387,1311,1209,1110,1037,987,951,933,930,914,853,749,636,545,474,409,346,299,
+267,236,191,134,79,39,10,-14,-49,-97,-155,-207,-240,-252,-261,-287,-335,-387,-413,-406,
+-394,-420,-496,-592,-668,-715,-759,-822,-889,-934,-952,-970,-1006,-1054,-1096,-1130,-1165,-1202,-1231,-1247,
+-1256,-1261,-1257,-1246,-1239,-1245,-1254,-1250,-1229,-1207,-1195,-1183,-1159,-1128,-1108,-1097,-1082,-1058,-1038,-1030,
+-1026,-1010,-983,-957,-934,-902,-855,-812,-791,-788,-780,-754,-718,-685,-654,-618,-577,-543,-523,-508,
+-491,-473,-467,-473,-485,-491,-489,-482,-477,-478,-483,-484,-476,-459,-442,-423,-395,-352,-305,-276,
+-269,-268,-259,-247,-246,-251,-244,-215,-179,-161,-164,-169,-159,-132,-100,-69,-40,-10,23,59,
+90,105,105,107,125,149,160,154,151,162,178,184,184,201,240,291,343,400,461,509,
+532,538,550,572,597,625,667,715,741,736,731,759,809,858,912,1002,1126,1242,1331,1431,
+1566,1686,1734,1749,1825,1950,1966,1765,1509,1536,2037,2861,3679,4271,4626,4811,4867,4822,4727,4598,
+4367,3979,3508,3131,2957,2926,2901,2817,2698,2575,2444,2299,2169,2070,1985,1887,1787,1704,1618,1481,
+1285,1087,943,847,750,634,534,489,495,523,551,566,541,438,253,42,-117,-188,-199,-216,
+-291,-432,-609,-777,-896,-946,-945,-936,-957,-1010,-1059,-1071,-1047,-1011,-977,-938,-883,-817,-751,-689,
+-632,-583,-548,-520,-482,-425,-370,-345,-355,-376,-382,-370,-352,-336,-316,-285,-247,-210,-177,-137,
+-74,16,118,204,255,281,311,362,430,494,542,579,615,656,698,738,778,821,869,922,
+977,1035,1098,1166,1234,1290,1321,1334,1345,1368,1397,1419,1433,1447,1467,1486,1499,1511,1535,1571,
+1604,1623,1636,1660,1700,1745,1789,1835,1884,1929,1963,1992,2030,2046,2101,2157,2213,2275,2346,2423,
+2498,2576,2664,2752,2813,2817,2761,2676,2606,2577,2578,2576,2553,2518,2497,2499,2521,2576,2684,2838,
+2978,3050,3081,3156,3314,3475,3514,3392,3201,3062,3009,2996,2974,2938,2899,2849,2785,2726,2695,2695,
+2709,2727,2743,2741,2705,2648,2604,2579,2550,2511,2500,2540,2565,2467,2229,1974,1837,1815,1778,1635,
+1431,1279,1222,1211,1192,1159,1120,1054,940,804,701,649,612,560,520,534,594,636,621,585,
+595,671,767,832,859,868,857,798,684,553,459,418,402,382,359,349,350,346,329,312,
+310,319,327,329,331,327,310,277,243,221,209,197,186,184,192,203,213,231,262,292,
+302,287,262,242,227,205,177,146,112,67,10,-47,-101,-156,-225,-305,-382,-450,-522,-613,
+-720,-825,-917,-1007,-1109,-1225,-1341,-1447,-1546,-1644,-1739,-1823,-1899,-1979,-2071,-2166,-2251,-2323,-2394,-2471,
+-2549,-2622,-2698,-2782,-2855,-2888,-2884,-2887,-2947,-3070,-3216,-3349,-3468,-3584,-3689,-3760,-3794,-3820,-3862,-3918,
+-3969,-4011,-4053,-4098,-4131,-4141,-4137,-4132,-4125,-4106,-4074,-4037,-4000,-3961,-3924,-3905,-3909,-3915,-3897,-3850,
+-3797,-3757,-3728,-3699,-3672,-3660,-3665,-3673,-3674,-3660,-3628,-3569,-3475,-3348,-3191,-3002,-2787,-2573,-2392,-2259,
+-2153,-2046,-1927,-1798,-1665,-1540,-1446,-1408,-1415,-1415,-1363,-1262,-1154,-1069,-1007,-953,-905,-872,-844,-798,
+-727,-652,-593,-544,-478,-377,-248,-115,8,124,241,350,428,456,441,420,429,479,560,664,
+791,933,1067,1178,1275,1378,1493,1605,1702,1797,1902,2006,2091,2155,2223,2306,2394,2474,2554,2651,
+2769,2892,3018,3158,3318,3480,3628,3760,3878,3966,4017,4062,4155,4312,4474,4573,4605,4624,4653,4636,
+4507,4286,4085,4000,4026,4088,4125,4138,4162,4213,4290,4379,4462,4515,4534,4545,4586,4659,4725,4746,
+4728,4706,4701,4707,4724,4771,4864,4978,5072,5127,5161,5191,5212,5213,5203,5197,5197,5192,5177,5155,
+5128,5093,5063,5056,5070,5072,5038,4990,4964,4959,4947,4929,4949,5020,5081,5078,5053,5074,5070,4827,
+4234,3503,3037,3044,3334,3546,3515,3365,3257,3188,3049,2819,2597,2457,2362,2237,2082,1949,1852,1754,
+1632,1518,1444,1390,1313,1208,1106,1030,973,926,896,886,870,814,718,612,522,445,372,309,
+265,234,197,145,85,33,-3,-26,-39,-52,-80,-125,-172,-202,-216,-235,-276,-334,-381,-392,
+-374,-361,-387,-458,-544,-611,-657,-706,-774,-844,-891,-913,-939,-988,-1048,-1097,-1130,-1160,-1196,-1232,
+-1258,-1273,-1276,-1269,-1255,-1249,-1257,-1266,-1259,-1237,-1219,-1216,-1213,-1192,-1159,-1136,-1125,-1111,-1086,-1060,
+-1048,-1042,-1025,-997,-970,-949,-919,-875,-833,-814,-813,-807,-782,-750,-723,-700,-667,-625,-589,-566,
+-549,-527,-504,-493,-498,-507,-513,-512,-507,-499,-492,-491,-493,-491,-479,-459,-437,-408,-366,-321,
+-292,-287,-288,-277,-254,-241,-242,-241,-218,-183,-161,-163,-172,-168,-146,-119,-95,-72,-43,-5,
+35,66,82,89,99,117,136,144,143,144,154,166,173,183,208,248,294,343,398,453,
+493,513,529,554,584,607,631,674,727,760,760,754,777,826,882,947,1039,1154,1261,1348,
+1446,1568,1669,1711,1742,1839,1968,1966,1739,1450,1437,1906,2746,3646,4352,4780,4954,4940,4825,4694,
+4545,4292,3878,3403,3057,2930,2933,2911,2803,2655,2519,2393,2259,2130,2022,1928,1830,1735,1659,1582,
+1458,1275,1078,921,808,707,607,538,526,557,591,598,566,481,332,140,-37,-144,-176,-189,
+-245,-369,-542,-721,-861,-931,-928,-882,-849,-868,-933,-997,-1025,-1015,-991,-963,-927,-879,-824,-769,
+-707,-633,-558,-499,-458,-414,-356,-303,-282,-298,-319,-315,-289,-265,-255,-245,-218,-174,-130,-97,
+-62,-4,80,176,255,306,339,377,432,498,559,608,646,681,721,763,805,843,877,915,
+961,1014,1071,1130,1196,1264,1321,1352,1361,1368,1389,1419,1441,1455,1471,1496,1521,1535,1548,1575,
+1613,1646,1663,1674,1697,1736,1781,1822,1861,1900,1937,1969,2002,2046,2061,2116,2170,2226,2293,2375,
+2461,2541,2613,2677,2727,2749,2739,2703,2660,2628,2617,2619,2613,2589,2557,2542,2553,2588,2650,2754,
+2890,3009,3063,3078,3135,3274,3424,3471,3382,3244,3160,3145,3138,3098,3041,3002,2981,2954,2910,2862,
+2826,2808,2809,2823,2823,2791,2738,2697,2685,2680,2674,2688,2732,2745,2637,2407,2169,2037,1997,1925,
+1743,1505,1326,1254,1243,1237,1215,1172,1084,945,798,704,676,667,638,615,645,722,778,766,
+716,700,750,835,906,944,957,943,890,799,702,630,584,542,493,452,434,430,420,399,
+382,384,400,416,426,429,424,405,373,341,317,303,291,284,286,295,310,333,371,420,
+456,460,435,407,390,376,350,313,276,242,200,141,76,15,-42,-107,-183,-258,-325,-394,
+-478,-577,-675,-763,-852,-957,-1076,-1193,-1297,-1392,-1486,-1579,-1667,-1750,-1838,-1936,-2031,-2114,-2186,-2261,
+-2343,-2425,-2497,-2570,-2648,-2717,-2750,-2754,-2773,-2853,-2988,-3134,-3258,-3368,-3482,-3591,-3667,-3703,-3727,-3766,
+-3822,-3876,-3920,-3962,-4006,-4041,-4056,-4053,-4042,-4026,-4006,-3986,-3968,-3950,-3923,-3894,-3879,-3882,-3883,-3862,
+-3823,-3787,-3765,-3744,-3715,-3686,-3677,-3689,-3707,-3718,-3719,-3708,-3666,-3581,-3457,-3308,-3136,-2941,-2735,-2543,
+-2383,-2248,-2118,-1985,-1854,-1729,-1613,-1524,-1486,-1500,-1522,-1500,-1421,-1315,-1220,-1148,-1091,-1049,-1019,-984,
+-919,-826,-740,-694,-681,-655,-578,-452,-314,-193,-88,22,144,257,333,360,355,350,373,437,
+546,684,820,926,1001,1077,1181,1305,1419,1513,1609,1724,1842,1935,2003,2074,2165,2266,2359,2449,
+2555,2676,2800,2925,3067,3225,3377,3498,3593,3678,3752,3805,3857,3956,4119,4296,4420,4484,4534,4582,
+4562,4407,4158,3944,3868,3905,3961,3981,3989,4026,4087,4146,4197,4257,4327,4386,4428,4471,4535,4601,
+4635,4629,4606,4590,4588,4606,4663,4767,4888,4981,5027,5051,5083,5123,5152,5159,5153,5141,5129,5119,
+5112,5097,5067,5033,5018,5020,5011,4969,4918,4892,4888,4878,4867,4895,4968,5024,5016,4983,4981,4930,
+4633,4019,3328,2945,3027,3346,3543,3486,3322,3217,3158,3030,2812,2596,2450,2341,2210,2062,1944,1857,
+1757,1632,1520,1450,1396,1316,1210,1112,1039,978,918,871,843,816,762,681,593,510,426,343,
+277,237,208,165,106,45,-3,-40,-63,-69,-66,-74,-105,-148,-183,-207,-238,-287,-342,-376,
+-376,-357,-348,-370,-423,-486,-539,-583,-636,-706,-776,-827,-861,-903,-967,-1038,-1090,-1121,-1150,-1190,
+-1234,-1270,-1289,-1296,-1291,-1280,-1272,-1274,-1277,-1268,-1248,-1235,-1236,-1236,-1218,-1187,-1163,-1151,-1137,-1113,
+-1087,-1071,-1061,-1041,-1012,-985,-967,-945,-911,-876,-857,-850,-838,-811,-783,-765,-750,-723,-686,-653,
+-630,-607,-576,-545,-529,-528,-532,-534,-533,-530,-521,-505,-493,-493,-497,-493,-476,-451,-421,-384,
+-345,-318,-311,-310,-296,-269,-248,-245,-246,-231,-203,-181,-179,-187,-185,-169,-149,-131,-112,-83,
+-45,-6,26,51,71,90,108,121,129,134,139,146,152,160,179,212,250,290,333,384,
+432,466,487,516,559,599,623,640,676,727,763,769,769,796,852,918,992,1085,1193,1290,
+1370,1457,1561,1651,1699,1745,1844,1954,1930,1701,1425,1414,1870,2705,3630,4369,4797,4924,4843,4684,
+4540,4397,4152,3755,3308,2988,2873,2869,2836,2721,2574,2446,2328,2200,2068,1955,1861,1771,1684,1610,
+1537,1428,1271,1094,939,816,708,611,548,540,571,603,601,544,425,254,70,-71,-142,-166,
+-202,-293,-436,-597,-740,-842,-886,-873,-830,-804,-826,-889,-953,-983,-978,-957,-931,-897,-856,-813,
+-766,-702,-614,-518,-441,-390,-347,-295,-244,-220,-225,-235,-224,-196,-173,-166,-160,-136,-94,-52,
+-19,16,70,147,231,302,356,402,452,510,570,624,671,712,750,789,830,870,902,929,
+961,1004,1058,1114,1171,1233,1300,1355,1382,1386,1389,1408,1436,1459,1476,1496,1525,1551,1566,1581,
+1608,1645,1675,1690,1703,1727,1766,1807,1845,1880,1914,1946,1975,2012,2061,2085,2136,2181,2233,2306,
+2398,2487,2555,2602,2635,2655,2662,2659,2653,2647,2644,2644,2646,2640,2619,2590,2576,2590,2626,2684,
+2773,2888,2992,3043,3053,3090,3199,3332,3397,3364,3295,3266,3275,3261,3193,3109,3065,3068,3084,3080,
+3051,3007,2962,2930,2912,2896,2863,2817,2784,2781,2798,2818,2842,2863,2837,2716,2516,2328,2223,2167,
+2055,1839,1582,1384,1286,1251,1234,1218,1186,1107,971,828,744,732,743,737,733,772,847,895,
+875,816,792,843,942,1034,1087,1100,1082,1035,968,898,835,771,698,625,572,551,545,532,
+508,489,490,507,525,538,543,538,518,486,452,427,413,405,403,409,424,451,494,551,
+606,634,625,594,564,546,524,487,439,395,359,317,259,190,123,61,-3,-74,-144,-208,
+-273,-347,-432,-518,-606,-703,-819,-943,-1058,-1156,-1244,-1334,-1430,-1525,-1617,-1712,-1808,-1898,-1976,-2049,
+-2129,-2216,-2299,-2373,-2445,-2522,-2587,-2620,-2629,-2658,-2745,-2882,-3028,-3151,-3260,-3373,-3483,-3561,-3600,-3624,
+-3661,-3717,-3773,-3819,-3858,-3895,-3927,-3947,-3953,-3943,-3921,-3895,-3882,-3888,-3900,-3899,-3882,-3865,-3855,-3840,
+-3812,-3780,-3761,-3756,-3746,-3724,-3708,-3717,-3745,-3768,-3778,-3782,-3782,-3758,-3692,-3584,-3452,-3297,-3113,-2904,
+-2692,-2499,-2328,-2168,-2023,-1902,-1801,-1707,-1625,-1581,-1590,-1624,-1626,-1567,-1470,-1374,-1300,-1244,-1199,-1162,
+-1118,-1047,-952,-867,-829,-837,-843,-799,-703,-591,-503,-438,-368,-271,-154,-49,18,44,54,88,
+176,325,505,665,775,849,930,1043,1168,1272,1352,1440,1555,1679,1779,1857,1939,2044,2160,2267,
+2372,2487,2614,2740,2867,3007,3160,3293,3384,3448,3514,3589,3655,3714,3806,3954,4124,4261,4353,4431,
+4490,4460,4286,4027,3826,3772,3820,3860,3850,3838,3875,3943,3994,4021,4064,4142,4230,4296,4347,4408,
+4475,4518,4520,4494,4469,4458,4475,4538,4652,4781,4875,4914,4925,4952,5002,5054,5086,5095,5091,5087,
+5088,5092,5084,5054,5014,4984,4969,4947,4902,4854,4829,4819,4805,4797,4835,4917,4982,4979,4940,4905,
+4795,4445,3828,3190,2881,3012,3338,3520,3448,3272,3157,3095,2986,2801,2607,2456,2326,2184,2044,1938,
+1854,1750,1623,1515,1447,1391,1310,1212,1125,1057,990,915,848,801,760,708,644,577,502,411,
+316,245,207,178,133,74,21,-19,-53,-80,-87,-76,-70,-90,-133,-175,-210,-251,-304,-352,
+-376,-372,-358,-352,-364,-391,-429,-469,-512,-564,-628,-697,-756,-809,-869,-944,-1018,-1070,-1102,-1133,
+-1178,-1227,-1264,-1287,-1300,-1306,-1304,-1296,-1290,-1288,-1282,-1270,-1260,-1257,-1253,-1235,-1207,-1183,-1168,-1154,
+-1133,-1110,-1094,-1081,-1059,-1029,-1005,-991,-978,-955,-927,-905,-889,-869,-842,-822,-813,-803,-781,-749,
+-721,-699,-672,-635,-601,-582,-576,-569,-559,-554,-552,-543,-522,-503,-500,-509,-511,-494,-465,-434,
+-404,-373,-347,-334,-327,-314,-292,-273,-269,-271,-262,-241,-221,-214,-215,-212,-201,-186,-169,-148,
+-119,-84,-48,-15,17,46,70,88,102,116,132,146,152,153,161,182,215,251,287,329,
+379,427,459,482,514,559,599,621,639,674,724,760,770,777,810,872,944,1022,1118,1227,
+1325,1402,1476,1562,1643,1696,1747,1830,1910,1879,1694,1495,1546,2010,2804,3656,4304,4625,4648,4493,
+4298,4150,4026,3833,3521,3165,2899,2784,2756,2712,2615,2495,2379,2260,2125,1992,1886,1804,1725,1642,
+1562,1484,1390,1264,1119,983,863,751,644,559,517,523,552,567,529,421,262,100,-15,-79,
+-130,-210,-332,-472,-600,-706,-785,-831,-839,-821,-811,-836,-892,-946,-970,-962,-936,-905,-869,-827,
+-781,-727,-658,-568,-472,-391,-337,-295,-250,-201,-163,-144,-135,-121,-103,-91,-86,-77,-53,-17,
+19,55,97,153,222,293,355,413,472,535,597,650,694,734,773,814,857,897,932,957,
+978,1008,1052,1106,1160,1212,1269,1330,1381,1406,1408,1410,1426,1451,1474,1494,1518,1546,1569,1583,
+1600,1627,1660,1685,1701,1719,1750,1789,1827,1863,1899,1934,1964,1994,2034,2085,2112,2161,2199,2247,
+2322,2416,2494,2534,2543,2544,2550,2565,2587,2612,2633,2645,2651,2657,2657,2640,2612,2594,2603,2637,
+2686,2757,2856,2962,3030,3052,3071,3135,3230,3296,3305,3290,3297,3318,3302,3228,3139,3095,3113,3163,
+3207,3218,3189,3126,3050,2988,2948,2915,2879,2853,2858,2897,2943,2966,2940,2848,2697,2531,2409,2345,
+2280,2137,1905,1654,1461,1347,1284,1248,1232,1215,1155,1037,906,826,816,833,842,853,896,958,
+988,953,891,873,937,1054,1167,1234,1255,1244,1217,1180,1129,1062,975,877,790,732,704,688,
+667,644,630,633,648,664,674,678,670,646,609,571,546,538,542,551,562,583,621,678,
+739,785,795,774,738,707,681,647,599,546,501,461,416,358,291,225,160,95,30,-33,
+-95,-159,-228,-301,-377,-462,-565,-686,-810,-922,-1016,-1104,-1196,-1293,-1391,-1486,-1579,-1669,-1754,-1832,
+-1913,-2000,-2090,-2171,-2242,-2314,-2393,-2463,-2505,-2524,-2559,-2643,-2770,-2908,-3030,-3140,-3250,-3357,-3440,-3488,
+-3519,-3555,-3604,-3658,-3705,-3741,-3771,-3799,-3828,-3848,-3844,-3813,-3775,-3762,-3789,-3836,-3868,-3869,-3849,-3824,
+-3795,-3763,-3738,-3734,-3742,-3745,-3739,-3744,-3774,-3816,-3842,-3845,-3841,-3840,-3828,-3781,-3699,-3589,-3454,-3284,
+-3079,-2858,-2639,-2430,-2239,-2086,-1987,-1923,-1860,-1785,-1729,-1722,-1748,-1752,-1701,-1613,-1530,-1469,-1415,-1354,
+-1292,-1234,-1173,-1103,-1038,-1006,-1012,-1023,-1000,-939,-870,-828,-813,-795,-742,-650,-543,-450,-381,-318,
+-228,-79,125,345,528,650,736,829,946,1065,1158,1231,1315,1424,1540,1638,1726,1828,1952,2080,
+2195,2305,2427,2559,2687,2812,2944,3078,3187,3256,3307,3377,3465,3545,3606,3683,3809,3966,4107,4217,
+4312,4375,4340,4166,3922,3746,3713,3760,3776,3732,3695,3723,3791,3840,3859,3893,3971,4069,4149,4208,
+4270,4336,4382,4388,4366,4342,4330,4344,4406,4521,4657,4761,4808,4823,4848,4900,4957,4999,5019,5026,
+5030,5037,5045,5045,5025,4991,4957,4928,4896,4854,4817,4795,4779,4754,4741,4776,4856,4925,4934,4897,
+4828,4655,4260,3658,3091,2852,3005,3314,3479,3412,3243,3117,3040,2938,2784,2616,2466,2319,2166,2031,
+1933,1849,1741,1616,1511,1440,1378,1300,1213,1140,1074,995,905,824,765,715,661,605,551,482,
+387,285,213,177,148,104,51,8,-22,-56,-90,-102,-88,-72,-83,-120,-164,-206,-254,-311,
+-359,-384,-388,-385,-385,-387,-393,-412,-443,-481,-522,-571,-630,-696,-764,-836,-914,-986,-1039,-1076,
+-1114,-1159,-1204,-1236,-1257,-1278,-1301,-1312,-1309,-1300,-1298,-1302,-1301,-1293,-1283,-1271,-1253,-1229,-1205,-1186,
+-1169,-1151,-1132,-1116,-1100,-1076,-1049,-1028,-1018,-1010,-994,-971,-946,-924,-900,-879,-867,-864,-856,-833,
+-803,-777,-756,-729,-694,-664,-649,-639,-622,-600,-585,-581,-574,-555,-535,-530,-540,-541,-519,-485,
+-454,-432,-411,-387,-366,-352,-341,-327,-315,-310,-309,-304,-289,-271,-259,-251,-245,-236,-224,-206,
+-180,-148,-115,-83,-50,-15,17,41,58,75,99,126,149,159,162,167,185,215,250,288,
+333,383,430,463,488,514,545,572,590,615,660,713,750,762,774,810,871,944,1025,1127,
+1243,1348,1425,1489,1560,1634,1694,1748,1814,1868,1844,1730,1647,1795,2276,2986,3676,4131,4283,4201,
+4008,3812,3665,3552,3418,3226,3007,2827,2721,2663,2606,2525,2424,2309,2176,2035,1911,1821,1752,1677,
+1589,1499,1417,1335,1239,1129,1017,910,802,686,572,489,466,498,542,538,455,317,184,91,
+23,-63,-192,-345,-485,-595,-685,-764,-821,-843,-835,-829,-852,-902,-951,-970,-956,-926,-892,-857,
+-811,-752,-683,-606,-524,-439,-359,-295,-245,-201,-155,-106,-63,-32,-16,-14,-18,-17,-5,18,
+49,84,124,173,231,292,351,408,469,538,611,676,726,763,796,832,874,919,961,993,
+1013,1030,1056,1098,1150,1199,1245,1295,1351,1399,1426,1434,1437,1447,1464,1483,1505,1530,1555,1573,
+1586,1607,1636,1664,1684,1701,1729,1767,1804,1837,1871,1912,1952,1983,2014,2058,2112,2130,2184,2223,
+2268,2339,2423,2479,2486,2461,2442,2449,2481,2526,2570,2603,2621,2632,2647,2659,2653,2627,2607,2614,
+2648,2691,2748,2835,2946,3042,3087,3094,3109,3148,3190,3211,3223,3249,3279,3277,3226,3157,3123,3147,
+3214,3287,3329,3311,3231,3122,3034,2987,2959,2925,2893,2903,2972,3062,3099,3029,2861,2661,2506,2430,
+2392,2312,2142,1912,1695,1545,1455,1394,1350,1326,1303,1244,1136,1017,941,925,937,951,971,1014,
+1064,1080,1044,994,993,1067,1187,1296,1358,1378,1381,1383,1378,1346,1274,1169,1058,966,904,866,
+837,812,798,797,807,818,824,825,820,806,776,734,696,678,686,708,730,745,765,803,
+857,909,934,926,895,861,828,792,747,696,647,602,557,505,447,387,326,262,198,135,
+75,13,-54,-124,-191,-258,-337,-436,-549,-662,-766,-862,-960,-1060,-1160,-1256,-1347,-1436,-1524,-1609,
+-1694,-1784,-1878,-1967,-2042,-2107,-2177,-2259,-2340,-2401,-2441,-2484,-2559,-2670,-2795,-2913,-3019,-3121,-3222,-3311,
+-3379,-3423,-3456,-3489,-3529,-3570,-3606,-3635,-3666,-3706,-3742,-3747,-3708,-3655,-3639,-3684,-3764,-3828,-3847,-3829,
+-3797,-3763,-3733,-3717,-3723,-3743,-3759,-3770,-3791,-3831,-3875,-3897,-3891,-3876,-3867,-3857,-3828,-3770,-3687,-3576,
+-3433,-3256,-3053,-2829,-2592,-2369,-2207,-2126,-2095,-2057,-1988,-1920,-1895,-1900,-1887,-1827,-1749,-1691,-1653,-1602,
+-1518,-1423,-1351,-1306,-1270,-1231,-1201,-1189,-1185,-1168,-1134,-1104,-1097,-1110,-1115,-1085,-1014,-914,-802,-685,
+-554,-390,-185,46,267,440,558,651,750,864,973,1063,1143,1233,1336,1437,1529,1626,1750,1893,
+2026,2135,2237,2355,2487,2617,2736,2853,2964,3053,3113,3171,3253,3352,3434,3490,3558,3673,3821,3963,
+4080,4180,4246,4215,4056,3835,3678,3644,3673,3665,3603,3557,3582,3653,3706,3728,3758,3828,3919,3999,
+4062,4125,4186,4225,4231,4219,4209,4209,4226,4283,4393,4531,4648,4715,4747,4779,4826,4875,4912,4935,
+4947,4951,4951,4955,4962,4963,4947,4916,4880,4844,4812,4789,4774,4756,4727,4707,4725,4782,4841,4858,
+4822,4712,4465,4021,3448,2973,2817,2988,3270,3420,3374,3233,3108,3009,2894,2751,2603,2459,2307,2153,
+2024,1932,1848,1740,1619,1516,1439,1367,1287,1211,1148,1080,990,889,804,742,685,624,568,517,
+452,360,261,192,158,131,88,41,5,-23,-62,-105,-124,-110,-88,-88,-114,-152,-197,-253,
+-318,-373,-404,-420,-432,-442,-442,-440,-452,-479,-508,-530,-555,-598,-660,-732,-805,-878,-948,-1007,
+-1054,-1098,-1141,-1177,-1201,-1221,-1251,-1286,-1310,-1311,-1302,-1305,-1320,-1330,-1324,-1308,-1291,-1276,-1257,-1234,
+-1210,-1190,-1173,-1155,-1137,-1115,-1090,-1066,-1051,-1045,-1041,-1028,-1006,-981,-958,-938,-923,-916,-912,-901,
+-876,-846,-821,-799,-774,-746,-725,-717,-709,-688,-657,-633,-624,-617,-602,-586,-580,-584,-578,-552,
+-516,-488,-473,-459,-438,-415,-398,-387,-378,-366,-357,-351,-348,-340,-326,-307,-290,-277,-270,-261,
+-243,-215,-182,-149,-118,-84,-48,-16,8,27,48,76,109,138,156,163,168,181,207,244,
+287,332,376,416,449,475,496,513,527,545,578,630,685,723,742,761,801,861,932,1016,
+1123,1242,1346,1419,1474,1536,1611,1684,1749,1803,1830,1803,1747,1777,2031,2538,3149,3640,3872,3868,
+3746,3604,3470,3338,3207,3089,2986,2890,2794,2700,2613,2535,2454,2353,2223,2075,1936,1828,1751,1681,
+1599,1506,1417,1344,1278,1205,1118,1023,927,829,718,598,500,467,505,565,570,488,357,245,
+179,117,7,-160,-340,-489,-600,-693,-779,-841,-859,-843,-828,-844,-889,-932,-944,-923,-890,-864,
+-842,-804,-739,-654,-569,-492,-414,-328,-241,-172,-125,-86,-36,23,73,92,81,62,55,65,
+87,114,147,190,239,291,342,394,451,517,592,668,736,788,827,859,893,933,977,1018,
+1049,1067,1081,1104,1141,1186,1230,1273,1320,1372,1418,1447,1460,1463,1466,1472,1485,1507,1534,1556,
+1571,1585,1610,1641,1666,1681,1702,1737,1779,1813,1839,1871,1916,1960,1992,2022,2069,2130,2139,2200,
+2244,2288,2351,2417,2447,2428,2388,2368,2385,2429,2480,2526,2559,2581,2601,2628,2654,2659,2640,2623,
+2637,2676,2719,2763,2831,2938,3052,3121,3131,3114,3110,3127,3151,3181,3220,3261,3274,3246,3197,3168,
+3188,3252,3327,3368,3341,3249,3138,3064,3040,3026,2982,2928,2936,3042,3191,3264,3176,2951,2701,2530,
+2456,2405,2292,2096,1876,1711,1630,1601,1577,1541,1497,1439,1352,1240,1134,1069,1049,1052,1062,1085,
+1127,1170,1183,1162,1143,1170,1254,1361,1443,1479,1483,1487,1506,1523,1505,1434,1325,1211,1121,1059,
+1016,985,971,976,992,1005,1005,993,978,961,937,904,866,839,839,867,905,931,940,948,
+975,1017,1052,1056,1030,994,961,928,886,837,790,751,709,658,599,543,491,435,371,304,
+242,182,117,45,-26,-89,-150,-222,-312,-409,-505,-599,-699,-808,-917,-1020,-1114,-1206,-1299,-1391,
+-1481,-1572,-1665,-1760,-1845,-1916,-1979,-2047,-2129,-2217,-2293,-2350,-2400,-2464,-2556,-2671,-2788,-2894,-2987,-3080,
+-3177,-3267,-3330,-3360,-3373,-3391,-3423,-3461,-3497,-3536,-3587,-3638,-3654,-3617,-3561,-3546,-3605,-3708,-3793,-3825,
+-3812,-3782,-3754,-3732,-3723,-3732,-3756,-3783,-3805,-3832,-3869,-3905,-3921,-3912,-3891,-3875,-3864,-3847,-3812,-3751,
+-3663,-3552,-3419,-3259,-3053,-2805,-2561,-2387,-2313,-2295,-2261,-2186,-2109,-2070,-2056,-2021,-1951,-1884,-1855,-1845,
+-1801,-1703,-1590,-1511,-1476,-1453,-1420,-1382,-1353,-1335,-1319,-1302,-1296,-1305,-1317,-1308,-1264,-1186,-1081,-951,
+-794,-607,-395,-171,43,226,366,474,573,677,784,882,971,1065,1170,1276,1369,1457,1565,1706,
+1860,1990,2088,2177,2285,2411,2535,2646,2747,2841,2920,2987,3059,3151,3247,3318,3368,3437,3553,3701,
+3840,3952,4048,4112,4088,3946,3741,3582,3527,3528,3508,3454,3423,3459,3537,3600,3633,3664,3720,3794,
+3864,3928,3992,4045,4071,4070,4064,4068,4082,4109,4168,4277,4416,4541,4624,4671,4709,4750,4790,4825,
+4855,4875,4877,4865,4857,4867,4881,4876,4846,4806,4773,4754,4743,4733,4717,4696,4680,4685,4715,4756,
+4774,4727,4559,4215,3709,3172,2813,2764,2967,3219,3343,3312,3204,3087,2968,2832,2688,2554,2424,2281,
+2136,2018,1931,1846,1740,1624,1522,1437,1354,1271,1202,1145,1076,982,880,796,731,666,597,538,
+491,433,348,257,191,157,127,86,42,10,-21,-67,-118,-145,-135,-112,-103,-118,-148,-196,
+-264,-339,-399,-431,-451,-474,-494,-502,-504,-517,-543,-566,-572,-576,-601,-653,-718,-783,-849,-917,
+-981,-1035,-1080,-1121,-1153,-1177,-1200,-1235,-1276,-1303,-1306,-1298,-1304,-1325,-1342,-1339,-1322,-1306,-1295,-1280,
+-1255,-1228,-1207,-1191,-1174,-1152,-1125,-1098,-1079,-1069,-1067,-1064,-1054,-1035,-1013,-994,-979,-966,-956,-947,
+-934,-912,-886,-861,-839,-815,-793,-779,-774,-767,-748,-719,-691,-675,-663,-650,-636,-627,-622,-610,
+-585,-556,-533,-519,-506,-488,-469,-455,-446,-436,-420,-403,-394,-393,-392,-381,-355,-327,-307,-300,
+-295,-282,-256,-225,-196,-166,-132,-94,-59,-29,-2,25,56,88,120,145,159,163,169,189,
+228,274,316,349,380,410,437,456,470,485,511,550,599,647,687,720,757,804,862,932,
+1017,1122,1232,1325,1389,1440,1502,1584,1673,1747,1786,1770,1710,1678,1802,2171,2728,3265,3571,3599,
+3481,3385,3362,3335,3224,3045,2889,2814,2791,2754,2674,2574,2486,2403,2293,2146,1986,1852,1754,1673,
+1589,1498,1413,1347,1297,1250,1190,1111,1017,922,832,737,637,554,527,563,611,595,493,358,
+264,222,169,44,-148,-348,-501,-608,-696,-777,-832,-843,-823,-807,-819,-854,-883,-882,-852,-819,
+-806,-804,-783,-721,-627,-532,-453,-375,-279,-173,-88,-39,-7,41,112,176,202,188,161,148,
+152,166,185,214,253,298,339,379,427,489,563,641,716,782,838,884,922,957,992,1029,
+1064,1092,1112,1129,1152,1183,1221,1262,1305,1351,1398,1439,1466,1479,1482,1480,1479,1487,1509,1537,
+1559,1571,1587,1613,1644,1666,1681,1704,1745,1789,1820,1842,1875,1922,1967,1996,2023,2072,2139,2152,
+2216,2261,2304,2357,2402,2411,2379,2341,2334,2362,2406,2448,2485,2518,2548,2579,2616,2651,2663,2652,
+2640,2659,2704,2749,2783,2831,2920,3034,3119,3145,3128,3114,3128,3168,3222,3282,3330,3345,3315,3261,
+3223,3230,3278,3333,3350,3303,3212,3129,3100,3117,3119,3065,2993,2996,3127,3318,3422,3336,3089,2810,
+2615,2514,2428,2278,2066,1866,1749,1730,1759,1779,1756,1688,1583,1457,1335,1244,1196,1178,1173,1177,
+1199,1237,1274,1289,1292,1310,1370,1466,1561,1621,1632,1616,1605,1615,1627,1608,1541,1439,1336,1254,
+1197,1159,1141,1147,1171,1198,1207,1194,1168,1140,1112,1083,1051,1024,1015,1034,1075,1117,1137,1130,
+1121,1130,1156,1172,1157,1116,1072,1036,1002,959,915,879,851,814,760,699,647,601,549,482,
+411,347,286,219,145,77,19,-37,-107,-192,-278,-358,-442,-542,-656,-769,-871,-965,-1063,-1166,
+-1269,-1365,-1457,-1547,-1635,-1717,-1791,-1860,-1932,-2011,-2094,-2170,-2229,-2274,-2323,-2400,-2509,-2633,-2743,-2834,
+-2921,-3025,-3133,-3215,-3249,-3250,-3255,-3284,-3329,-3375,-3423,-3483,-3545,-3575,-3553,-3509,-3504,-3570,-3678,-3767,
+-3801,-3793,-3773,-3758,-3749,-3745,-3751,-3770,-3797,-3824,-3850,-3879,-3907,-3922,-3920,-3903,-3886,-3876,-3871,-3853,
+-3806,-3730,-3641,-3550,-3439,-3269,-3034,-2791,-2619,-2546,-2519,-2463,-2362,-2266,-2214,-2187,-2140,-2070,-2019,-2014,
+-2020,-1982,-1889,-1787,-1720,-1684,-1645,-1588,-1530,-1493,-1475,-1463,-1455,-1462,-1477,-1479,-1443,-1369,-1270,-1153,
+-1006,-822,-605,-380,-172,2,142,259,370,485,601,704,792,881,988,1114,1236,1337,1430,1543,
+1689,1842,1968,2060,2143,2241,2354,2464,2560,2647,2733,2815,2896,2982,3074,3156,3213,3261,3339,3465,
+3611,3739,3839,3921,3973,3945,3808,3608,3440,3362,3348,3337,3312,3308,3354,3431,3500,3546,3584,3630,
+3685,3744,3809,3876,3925,3938,3924,3911,3916,3936,3974,4045,4162,4305,4434,4523,4577,4617,4653,4688,
+4727,4772,4809,4819,4803,4789,4793,4804,4794,4756,4716,4694,4690,4683,4667,4653,4649,4653,4658,4670,
+4692,4699,4622,4375,3927,3366,2884,2661,2735,2975,3188,3264,3219,3125,3015,2885,2738,2599,2480,2367,
+2239,2108,2001,1917,1833,1730,1620,1520,1430,1341,1258,1193,1139,1071,978,879,795,723,649,574,
+516,477,430,355,268,201,160,125,84,44,14,-17,-66,-121,-154,-152,-133,-120,-124,-147,
+-198,-278,-363,-423,-450,-467,-492,-522,-540,-549,-567,-596,-616,-616,-611,-626,-667,-721,-776,-836,
+-900,-961,-1009,-1048,-1085,-1122,-1155,-1187,-1224,-1264,-1289,-1293,-1288,-1296,-1319,-1338,-1339,-1326,-1313,-1304,
+-1288,-1261,-1232,-1212,-1198,-1181,-1155,-1126,-1101,-1084,-1076,-1073,-1072,-1065,-1051,-1036,-1023,-1012,-999,-984,
+-970,-958,-946,-927,-903,-877,-854,-836,-823,-814,-805,-789,-766,-740,-717,-700,-686,-674,-661,-648,
+-632,-615,-598,-581,-563,-545,-527,-515,-508,-500,-487,-466,-446,-437,-439,-441,-428,-396,-359,-335,
+-328,-328,-319,-298,-273,-248,-223,-191,-153,-115,-76,-38,0,35,68,101,132,151,153,151,
+164,199,244,281,310,338,368,394,410,425,453,495,539,578,615,659,713,769,821,874,
+939,1022,1118,1212,1291,1355,1413,1482,1568,1664,1739,1754,1685,1574,1547,1756,2246,2872,3358,3505,
+3354,3143,3083,3174,3241,3143,2914,2710,2638,2660,2670,2613,2523,2444,2370,2257,2096,1926,1791,1694,
+1605,1509,1420,1356,1318,1289,1252,1199,1124,1030,932,845,767,690,625,594,607,621,579,469,
+345,270,236,172,22,-193,-399,-540,-622,-680,-732,-767,-775,-766,-766,-785,-815,-831,-818,-783,
+-752,-745,-752,-738,-675,-572,-467,-382,-302,-207,-101,-17,27,56,106,184,257,291,285,265,
+254,252,253,259,279,315,354,388,422,470,538,619,700,771,833,889,939,984,1021,1053,
+1079,1105,1131,1156,1180,1204,1231,1262,1300,1342,1388,1430,1462,1481,1492,1496,1496,1495,1501,1521,
+1545,1564,1575,1588,1613,1642,1662,1678,1706,1751,1798,1831,1855,1889,1935,1977,2003,2031,2082,2152,
+2175,2233,2275,2316,2362,2394,2387,2350,2320,2326,2358,2392,2419,2448,2487,2531,2574,2617,2653,2669,
+2661,2649,2663,2706,2754,2788,2826,2897,2998,3089,3131,3131,3126,3150,3212,3296,3380,3439,3448,3403,
+3332,3280,3273,3303,3332,3320,3261,3184,3138,3150,3194,3206,3154,3084,3091,3219,3400,3493,3404,3161,
+2886,2682,2557,2444,2285,2092,1927,1848,1858,1912,1953,1938,1854,1716,1560,1432,1354,1320,1306,1298,
+1301,1322,1356,1384,1402,1425,1477,1565,1671,1764,1816,1822,1796,1764,1742,1723,1686,1619,1532,1449,
+1385,1340,1310,1302,1318,1351,1380,1388,1375,1352,1325,1295,1262,1232,1214,1218,1247,1291,1327,1334,
+1312,1284,1274,1279,1274,1241,1187,1133,1092,1056,1017,983,960,940,907,855,799,751,708,655,
+586,515,451,390,320,246,181,129,76,7,-74,-153,-224,-300,-397,-509,-620,-720,-816,-918,
+-1028,-1136,-1236,-1329,-1415,-1498,-1579,-1659,-1740,-1821,-1898,-1971,-2037,-2088,-2121,-2155,-2216,-2320,-2448,-2566,
+-2659,-2746,-2852,-2970,-3065,-3109,-3116,-3126,-3163,-3219,-3275,-3330,-3396,-3466,-3509,-3509,-3487,-3495,-3559,-3657,
+-3735,-3767,-3764,-3757,-3761,-3769,-3773,-3776,-3785,-3805,-3829,-3852,-3874,-3896,-3914,-3922,-3914,-3901,-3896,-3902,
+-3897,-3857,-3782,-3704,-3644,-3578,-3453,-3253,-3036,-2883,-2813,-2764,-2665,-2521,-2395,-2329,-2297,-2251,-2190,-2154,
+-2155,-2156,-2112,-2033,-1965,-1930,-1896,-1826,-1731,-1652,-1614,-1603,-1594,-1589,-1602,-1625,-1625,-1576,-1484,-1372,
+-1246,-1087,-885,-655,-435,-253,-114,0,111,236,373,503,612,703,800,927,1079,1226,1343,1439,
+1545,1678,1820,1945,2042,2126,2216,2309,2396,2474,2550,2635,2726,2821,2914,2998,3062,3108,3162,3256,
+3393,3538,3656,3738,3796,3818,3764,3614,3414,3248,3172,3168,3187,3200,3219,3261,3320,3380,3434,3485,
+3533,3577,3627,3691,3761,3810,3815,3790,3765,3760,3778,3823,3908,4035,4182,4309,4397,4456,4501,4539,
+4574,4618,4673,4725,4751,4747,4737,4737,4736,4712,4669,4635,4630,4636,4626,4599,4584,4598,4625,4638,
+4635,4629,4598,4461,4127,3603,3038,2651,2576,2764,3025,3186,3199,3123,3023,2913,2780,2633,2505,2403,
+2305,2189,2068,1966,1885,1802,1705,1603,1509,1421,1333,1254,1191,1137,1067,975,877,791,711,628,
+550,497,466,427,360,278,209,161,120,78,41,15,-14,-60,-115,-151,-159,-148,-134,-130,
+-145,-195,-278,-367,-427,-451,-468,-499,-537,-564,-580,-600,-628,-650,-652,-648,-659,-692,-736,-784,
+-837,-895,-945,-980,-1005,-1036,-1078,-1121,-1160,-1197,-1234,-1261,-1272,-1275,-1287,-1310,-1330,-1334,-1327,-1318,
+-1308,-1288,-1258,-1229,-1208,-1192,-1173,-1147,-1120,-1100,-1084,-1071,-1064,-1062,-1060,-1054,-1045,-1037,-1030,-1018,
+-1002,-989,-983,-979,-966,-939,-909,-887,-872,-859,-844,-828,-812,-795,-771,-745,-725,-713,-705,-690,
+-670,-653,-644,-639,-627,-605,-581,-565,-557,-552,-542,-524,-501,-483,-475,-476,-475,-459,-424,-386,
+-362,-357,-359,-353,-335,-314,-294,-273,-244,-210,-171,-128,-80,-33,6,40,76,110,133,135,
+127,133,159,197,231,264,302,338,360,367,383,426,486,537,566,595,645,716,782,830,
+872,930,1008,1092,1171,1246,1321,1396,1471,1552,1642,1715,1713,1602,1450,1430,1713,2305,2978,3404,
+3406,3105,2818,2773,2928,3046,2955,2708,2502,2460,2534,2586,2552,2471,2399,2327,2211,2040,1864,1729,
+1636,1553,1467,1394,1348,1319,1289,1253,1210,1154,1077,988,907,840,776,706,645,607,579,527,
+438,347,286,234,132,-55,-288,-488,-604,-649,-663,-673,-680,-683,-692,-717,-754,-788,-805,-796,
+-766,-734,-716,-706,-676,-600,-486,-369,-272,-190,-103,-15,50,83,108,156,231,302,342,352,
+354,357,355,343,333,342,373,412,446,479,528,599,684,767,837,895,946,996,1044,1085,
+1115,1136,1155,1179,1209,1239,1265,1288,1312,1344,1385,1429,1467,1490,1502,1509,1515,1520,1522,1526,
+1536,1552,1566,1576,1589,1611,1635,1654,1674,1705,1753,1803,1842,1872,1905,1943,1979,2008,2046,2105,
+2175,2194,2240,2275,2320,2370,2400,2386,2345,2318,2325,2351,2370,2383,2409,2458,2517,2571,2617,2654,
+2673,2666,2649,2651,2686,2737,2781,2822,2884,2972,3057,3108,3119,3119,3143,3208,3306,3411,3489,3509,
+3470,3403,3354,3345,3361,3367,3339,3281,3223,3199,3217,3250,3257,3221,3178,3192,3285,3402,3440,3334,
+3112,2863,2666,2529,2414,2285,2149,2043,1996,2009,2056,2094,2081,1994,1844,1677,1545,1471,1442,1432,
+1429,1438,1463,1492,1515,1538,1583,1662,1768,1876,1962,2012,2020,1991,1939,1880,1821,1758,1689,1621,
+1565,1523,1492,1467,1457,1468,1495,1523,1539,1544,1541,1528,1504,1471,1440,1425,1433,1462,1499,1526,
+1521,1486,1441,1406,1385,1357,1310,1249,1193,1152,1119,1088,1064,1048,1032,1000,950,898,853,808,
+753,686,620,562,502,427,348,281,231,181,118,44,-24,-86,-156,-250,-361,-472,-574,-672,
+-774,-882,-987,-1088,-1184,-1274,-1357,-1437,-1521,-1610,-1699,-1780,-1849,-1907,-1950,-1976,-2000,-2050,-2143,-2266,
+-2384,-2482,-2572,-2679,-2797,-2895,-2949,-2971,-2997,-3046,-3111,-3175,-3239,-3311,-3386,-3443,-3463,-3465,-3486,-3547,
+-3629,-3695,-3724,-3729,-3735,-3755,-3783,-3801,-3809,-3814,-3826,-3846,-3864,-3878,-3892,-3909,-3922,-3921,-3911,-3910,
+-3922,-3926,-3890,-3816,-3747,-3712,-3685,-3603,-3445,-3264,-3137,-3070,-2994,-2848,-2660,-2509,-2435,-2406,-2368,-2318,
+-2286,-2277,-2254,-2194,-2126,-2096,-2097,-2072,-1984,-1863,-1772,-1736,-1725,-1710,-1697,-1712,-1743,-1750,-1701,-1608,
+-1497,-1370,-1203,-986,-749,-538,-381,-267,-167,-54,78,226,371,497,609,731,885,1063,1230,1354,
+1441,1525,1637,1771,1901,2007,2091,2163,2231,2295,2359,2434,2527,2632,2737,2830,2899,2946,2988,3055,
+3168,3319,3470,3587,3657,3682,3651,3545,3368,3172,3027,2973,2995,3047,3096,3133,3165,3199,3244,3304,
+3372,3431,3473,3513,3569,3634,3681,3685,3657,3627,3618,3635,3684,3775,3903,4042,4158,4242,4306,4364,
+4413,4454,4497,4552,4611,4653,4669,4669,4666,4655,4624,4586,4567,4576,4586,4571,4540,4527,4553,4593,
+4608,4587,4536,4430,4195,3776,3229,2737,2496,2569,2833,3083,3186,3149,3053,2950,2835,2695,2547,2425,
+2335,2246,2138,2021,1921,1840,1760,1670,1576,1487,1402,1321,1249,1191,1134,1060,966,869,782,698,
+611,533,481,451,416,356,281,216,166,122,79,45,21,-6,-51,-104,-143,-159,-158,-149,
+-142,-151,-193,-269,-353,-412,-443,-471,-514,-563,-598,-617,-636,-661,-680,-686,-687,-700,-728,-763,
+-802,-849,-900,-941,-961,-973,-998,-1040,-1087,-1126,-1160,-1194,-1225,-1247,-1262,-1279,-1302,-1321,-1328,-1325,
+-1317,-1306,-1284,-1253,-1224,-1201,-1179,-1154,-1128,-1108,-1094,-1080,-1063,-1051,-1050,-1056,-1058,-1053,-1045,-1038,
+-1029,-1017,-1010,-1010,-1011,-999,-969,-935,-913,-903,-892,-873,-851,-834,-817,-795,-767,-746,-739,-735,
+-722,-698,-679,-674,-675,-668,-647,-624,-610,-603,-594,-574,-550,-529,-514,-507,-503,-495,-476,-444,
+-411,-391,-388,-389,-382,-367,-349,-333,-313,-286,-253,-216,-173,-123,-73,-30,4,40,76,101,
+106,101,103,121,147,176,216,266,310,327,326,341,396,471,525,550,575,632,711,778,
+818,853,909,983,1054,1119,1195,1288,1378,1449,1514,1597,1675,1673,1543,1366,1351,1678,2318,2986,
+3336,3225,2835,2517,2488,2672,2811,2735,2517,2359,2378,2500,2574,2533,2426,2325,2233,2107,1937,1767,
+1643,1567,1510,1452,1401,1358,1316,1271,1233,1212,1190,1146,1078,1011,955,894,805,697,602,535,
+482,423,356,287,196,49,-160,-386,-561,-651,-672,-660,-640,-624,-620,-641,-684,-737,-783,-811,
+-814,-794,-757,-717,-674,-613,-519,-395,-266,-153,-58,27,100,146,164,177,211,266,322,363,
+394,425,449,451,430,406,407,435,475,512,549,598,667,749,831,901,958,1007,1055,1103,
+1147,1179,1201,1220,1243,1273,1303,1329,1348,1369,1396,1434,1476,1511,1530,1535,1535,1539,1546,1549,
+1547,1546,1551,1562,1576,1591,1610,1631,1651,1674,1708,1754,1805,1849,1883,1912,1939,1968,2005,2060,
+2129,2194,2187,2218,2252,2309,2376,2414,2400,2355,2323,2323,2337,2344,2348,2374,2429,2494,2552,2599,
+2640,2666,2665,2647,2641,2669,2721,2774,2822,2879,2953,3030,3083,3100,3098,3107,3151,3235,3344,3442,
+3498,3502,3477,3458,3460,3469,3459,3423,3373,3330,3307,3301,3302,3295,3278,3264,3274,3310,3341,3314,
+3196,3002,2785,2594,2449,2342,2258,2195,2156,2144,2160,2193,2221,2206,2121,1972,1803,1667,1591,1562,
+1557,1564,1584,1613,1640,1663,1700,1772,1878,1995,2094,2162,2196,2195,2158,2090,2006,1919,1839,1770,
+1716,1682,1661,1642,1622,1606,1607,1625,1653,1682,1706,1723,1724,1708,1680,1655,1643,1651,1673,1698,
+1709,1691,1641,1576,1516,1468,1423,1373,1319,1274,1241,1216,1193,1173,1158,1137,1101,1052,1002,956,
+908,851,789,734,684,624,544,457,384,330,282,225,164,108,55,-10,-100,-209,-321,-428,
+-532,-636,-738,-837,-937,-1038,-1135,-1220,-1298,-1379,-1471,-1566,-1652,-1722,-1777,-1816,-1842,-1868,-1915,-2000,
+-2112,-2226,-2329,-2428,-2538,-2650,-2743,-2802,-2839,-2878,-2932,-2995,-3061,-3132,-3214,-3297,-3363,-3402,-3426,-3462,
+-3523,-3596,-3657,-3689,-3702,-3717,-3747,-3790,-3826,-3847,-3857,-3870,-3887,-3900,-3905,-3908,-3919,-3932,-3935,-3926,
+-3921,-3931,-3935,-3903,-3836,-3778,-3763,-3763,-3714,-3590,-3443,-3338,-3269,-3167,-2984,-2767,-2606,-2539,-2521,-2490,
+-2441,-2402,-2378,-2337,-2268,-2209,-2200,-2221,-2203,-2114,-1993,-1906,-1870,-1847,-1813,-1786,-1796,-1831,-1841,-1795,
+-1708,-1605,-1482,-1309,-1083,-848,-657,-527,-435,-342,-228,-89,64,222,371,513,664,843,1038,1211,
+1327,1392,1454,1553,1691,1831,1938,2004,2046,2084,2132,2198,2288,2401,2525,2640,2728,2784,2823,2869,
+2953,3084,3247,3409,3534,3600,3589,3495,3324,3116,2930,2817,2788,2823,2888,2957,3013,3051,3079,3120,
+3190,3277,3350,3391,3417,3453,3503,3542,3547,3524,3499,3494,3517,3572,3664,3785,3908,4006,4078,4142,
+4210,4274,4326,4370,4422,4483,4538,4571,4579,4570,4549,4521,4497,4495,4509,4518,4504,4480,4477,4506,
+4547,4565,4535,4437,4229,3866,3363,2841,2486,2422,2618,2907,3109,3156,3096,3006,2912,2794,2641,2483,
+2358,2269,2185,2085,1975,1876,1793,1714,1630,1540,1450,1362,1284,1222,1174,1121,1046,952,860,777,
+696,611,532,477,441,404,351,287,229,179,132,90,60,39,11,-34,-88,-131,-154,-164,
+-168,-170,-179,-212,-272,-341,-396,-436,-479,-536,-594,-636,-660,-680,-700,-714,-721,-729,-748,-775,
+-802,-830,-868,-915,-951,-966,-972,-991,-1029,-1073,-1107,-1134,-1163,-1195,-1223,-1245,-1265,-1287,-1304,-1310,
+-1308,-1301,-1288,-1267,-1239,-1212,-1188,-1161,-1131,-1105,-1091,-1086,-1076,-1058,-1044,-1047,-1061,-1071,-1067,-1057,
+-1048,-1040,-1033,-1029,-1032,-1035,-1024,-995,-962,-942,-935,-926,-906,-881,-861,-843,-819,-790,-768,-761,
+-760,-748,-726,-707,-702,-705,-700,-683,-666,-657,-648,-630,-602,-575,-557,-545,-535,-523,-509,-492,
+-469,-444,-428,-421,-419,-412,-401,-389,-375,-354,-325,-291,-254,-212,-162,-111,-68,-32,2,37,
+63,74,76,82,95,112,133,170,223,270,287,286,306,367,444,495,516,544,608,691,
+757,797,839,904,976,1032,1085,1165,1272,1367,1423,1468,1549,1643,1653,1509,1305,1275,1608,2248,
+2888,3185,3030,2634,2337,2329,2517,2660,2615,2456,2368,2437,2576,2634,2549,2382,2225,2098,1969,1816,
+1667,1560,1502,1468,1438,1403,1358,1305,1254,1227,1230,1237,1215,1164,1110,1064,1003,897,757,624,
+534,476,418,337,229,93,-74,-266,-445,-575,-643,-663,-656,-637,-617,-610,-632,-680,-737,-786,
+-819,-830,-815,-774,-716,-650,-571,-469,-343,-207,-77,38,138,212,252,262,264,278,305,340,
+378,426,479,519,526,504,480,478,504,543,582,623,674,739,814,891,959,1017,1066,1114,
+1162,1208,1245,1271,1291,1313,1338,1364,1387,1408,1430,1457,1492,1530,1562,1578,1574,1563,1558,1561,
+1565,1559,1550,1548,1558,1575,1593,1609,1627,1650,1677,1712,1754,1802,1850,1890,1918,1938,1963,2006,
+2069,2136,2187,2151,2171,2213,2289,2373,2419,2406,2359,2323,2317,2324,2325,2329,2353,2404,2465,2517,
+2563,2606,2640,2650,2642,2640,2666,2717,2771,2817,2863,2921,2987,3043,3074,3081,3081,3098,3149,3237,
+3342,3437,3500,3536,3560,3579,3583,3561,3520,3475,3438,3407,3379,3358,3347,3344,3339,3323,3297,3259,
+3195,3086,2925,2731,2538,2380,2277,2227,2217,2229,2252,2285,2323,2349,2330,2241,2091,1922,1787,1709,
+1682,1684,1701,1729,1759,1784,1814,1870,1969,2099,2225,2314,2359,2366,2344,2292,2214,2121,2030,1949,
+1884,1837,1811,1798,1788,1774,1760,1759,1773,1800,1833,1864,1887,1896,1890,1875,1862,1861,1869,1880,
+1885,1871,1829,1758,1674,1595,1534,1486,1445,1408,1379,1355,1334,1314,1294,1273,1245,1204,1154,1105,
+1059,1009,952,895,847,802,743,662,572,495,436,386,333,279,230,181,118,33,-67,-174,
+-284,-394,-501,-602,-697,-795,-898,-998,-1084,-1159,-1238,-1331,-1431,-1522,-1592,-1640,-1673,-1700,-1734,-1793,
+-1881,-1990,-2103,-2213,-2324,-2437,-2544,-2630,-2692,-2742,-2791,-2842,-2895,-2953,-3026,-3114,-3202,-3274,-3327,-3372,
+-3424,-3490,-3561,-3621,-3661,-3683,-3705,-3743,-3798,-3852,-3889,-3910,-3926,-3942,-3951,-3947,-3939,-3943,-3957,-3963,
+-3951,-3936,-3935,-3934,-3905,-3849,-3802,-3796,-3807,-3775,-3676,-3557,-3472,-3406,-3286,-3079,-2845,-2685,-2630,-2623,
+-2592,-2532,-2481,-2452,-2419,-2364,-2315,-2305,-2316,-2293,-2213,-2110,-2038,-1998,-1957,-1899,-1855,-1858,-1890,-1898,
+-1856,-1780,-1690,-1572,-1399,-1178,-962,-806,-711,-637,-539,-405,-244,-70,104,269,425,589,776,976,
+1148,1256,1308,1360,1461,1607,1749,1838,1866,1866,1878,1924,2008,2124,2263,2406,2530,2617,2670,2714,
+2777,2879,3018,3179,3339,3469,3533,3497,3349,3125,2897,2732,2654,2642,2667,2715,2782,2856,2917,2964,
+3018,3102,3203,3285,3323,3332,3347,3379,3410,3414,3395,3374,3375,3404,3468,3566,3686,3801,3885,3939,
+3989,4053,4125,4188,4240,4295,4361,4429,4474,4484,4464,4434,4411,4404,4413,4426,4433,4428,4422,4427,
+4451,4489,4524,4515,4390,4080,3580,2996,2521,2321,2426,2708,2976,3105,3097,3026,2950,2867,2748,2590,
+2428,2298,2203,2120,2031,1933,1839,1752,1669,1586,1497,1402,1307,1226,1172,1135,1092,1023,937,852,
+777,703,622,544,484,441,402,354,299,244,189,138,97,73,56,29,-17,-72,-117,-146,
+-169,-191,-211,-230,-257,-298,-347,-393,-435,-486,-547,-609,-658,-691,-716,-732,-741,-748,-766,-797,
+-829,-849,-865,-892,-933,-971,-988,-995,-1010,-1043,-1080,-1108,-1127,-1148,-1173,-1199,-1221,-1241,-1261,-1274,
+-1278,-1275,-1268,-1256,-1237,-1212,-1189,-1168,-1143,-1112,-1088,-1078,-1078,-1073,-1057,-1043,-1048,-1067,-1082,-1082,
+-1071,-1061,-1053,-1046,-1041,-1042,-1047,-1044,-1024,-998,-979,-969,-958,-936,-910,-889,-870,-845,-814,-789,
+-778,-775,-765,-747,-733,-731,-732,-726,-712,-700,-693,-680,-656,-625,-601,-588,-577,-560,-541,-526,
+-515,-503,-487,-471,-459,-452,-445,-439,-433,-422,-402,-371,-337,-299,-256,-204,-151,-106,-69,-34,
+0,27,42,49,61,77,91,105,132,176,218,239,249,278,338,404,446,467,505,579,
+666,734,783,843,921,990,1033,1079,1168,1289,1382,1419,1446,1529,1639,1653,1486,1243,1183,1505,
+2144,2786,3097,2978,2623,2338,2295,2430,2555,2555,2480,2462,2556,2679,2699,2568,2349,2143,1993,1873,
+1749,1624,1525,1467,1440,1422,1398,1360,1315,1281,1275,1290,1297,1270,1219,1171,1127,1061,946,797,
+662,568,496,403,266,100,-66,-219,-353,-461,-539,-591,-623,-639,-641,-632,-630,-647,-685,-731,
+-771,-797,-807,-794,-757,-703,-639,-564,-470,-353,-219,-81,49,163,249,300,321,329,335,345,
+363,396,448,509,554,567,554,541,547,573,608,650,699,758,824,892,960,1023,1080,1130,
+1178,1227,1274,1312,1340,1361,1382,1402,1422,1444,1469,1497,1524,1552,1582,1609,1620,1609,1586,1570,
+1568,1573,1569,1558,1551,1558,1574,1588,1600,1616,1643,1677,1714,1754,1799,1850,1897,1931,1953,1978,
+2019,2074,2123,2151,2103,2121,2177,2269,2359,2402,2383,2337,2304,2300,2310,2316,2323,2346,2386,2433,
+2476,2517,2560,2598,2619,2625,2636,2667,2716,2765,2802,2834,2872,2921,2976,3025,3060,3077,3085,3104,
+3157,3249,3362,3470,3553,3608,3635,3631,3600,3552,3503,3459,3420,3387,3369,3371,3378,3364,3316,3248,
+3182,3118,3031,2894,2709,2514,2354,2258,2224,2235,2271,2324,2389,2453,2488,2462,2360,2203,2036,1905,
+1833,1809,1817,1840,1870,1899,1925,1962,2034,2152,2299,2431,2517,2546,2532,2487,2419,2335,2248,2168,
+2100,2043,1997,1966,1948,1938,1929,1922,1924,1937,1960,1987,2015,2039,2055,2060,2059,2060,2064,2069,
+2065,2044,1999,1928,1837,1742,1659,1600,1562,1535,1513,1492,1470,1446,1422,1398,1372,1338,1294,1245,
+1199,1154,1105,1049,995,948,902,842,764,680,605,545,492,438,385,335,283,220,142,54,
+-41,-144,-254,-365,-467,-562,-657,-757,-855,-940,-1016,-1097,-1193,-1297,-1393,-1462,-1502,-1526,-1551,-1596,
+-1673,-1776,-1892,-2009,-2125,-2243,-2357,-2457,-2537,-2607,-2674,-2739,-2792,-2835,-2881,-2946,-3028,-3111,-3184,-3248,
+-3311,-3378,-3445,-3510,-3567,-3614,-3651,-3688,-3741,-3811,-3884,-3937,-3966,-3983,-3994,-3994,-3980,-3963,-3964,-3980,
+-3987,-3969,-3939,-3922,-3916,-3896,-3854,-3816,-3811,-3819,-3790,-3709,-3617,-3557,-3501,-3374,-3149,-2900,-2735,-2688,
+-2689,-2660,-2592,-2532,-2510,-2500,-2474,-2435,-2408,-2390,-2351,-2279,-2199,-2139,-2093,-2031,-1954,-1899,-1895,-1920,
+-1926,-1893,-1834,-1762,-1655,-1489,-1282,-1098,-985,-926,-862,-745,-571,-366,-158,36,205,352,500,676,
+876,1056,1174,1236,1294,1397,1536,1656,1706,1689,1655,1656,1715,1823,1964,2120,2273,2400,2489,2552,
+2617,2707,2825,2956,3088,3219,3336,3397,3349,3176,2928,2700,2565,2525,2532,2547,2570,2621,2700,2780,
+2847,2914,3005,3111,3196,3232,3233,3237,3261,3289,3294,3275,3252,3251,3285,3356,3464,3593,3713,3794,
+3834,3862,3907,3974,4045,4107,4167,4239,4318,4376,4390,4366,4332,4316,4322,4338,4351,4360,4371,4382,
+4389,4399,4437,4504,4534,4400,4004,3385,2741,2320,2259,2491,2814,3037,3094,3036,2947,2866,2781,2668,
+2528,2383,2255,2150,2061,1979,1896,1808,1716,1626,1540,1455,1361,1264,1182,1128,1094,1055,992,914,
+839,773,707,633,558,495,447,405,359,307,250,190,133,93,74,61,35,-12,-66,-110,
+-143,-179,-221,-261,-292,-314,-337,-365,-398,-438,-488,-548,-608,-661,-703,-734,-750,-756,-766,-795,
+-841,-880,-895,-900,-916,-954,-993,-1016,-1024,-1037,-1062,-1091,-1112,-1125,-1138,-1156,-1177,-1197,-1217,-1234,
+-1244,-1244,-1240,-1235,-1226,-1208,-1185,-1164,-1149,-1131,-1106,-1082,-1071,-1071,-1069,-1056,-1042,-1044,-1062,-1080,
+-1085,-1080,-1072,-1066,-1057,-1047,-1046,-1053,-1061,-1056,-1040,-1021,-1004,-985,-960,-933,-911,-892,-869,-841,
+-815,-798,-788,-778,-767,-760,-759,-758,-749,-736,-726,-716,-700,-674,-647,-630,-619,-604,-580,-555,
+-541,-538,-536,-527,-512,-498,-487,-480,-475,-471,-462,-443,-415,-384,-350,-306,-251,-195,-149,-113,
+-78,-42,-12,4,15,30,51,69,80,97,127,163,192,217,253,306,356,390,420,475,
+560,648,715,773,848,933,997,1033,1083,1188,1320,1408,1425,1440,1525,1642,1647,1451,1175,1094,
+1417,2079,2768,3151,3106,2775,2425,2246,2253,2340,2408,2448,2512,2624,2723,2718,2570,2336,2112,1952,
+1843,1742,1632,1530,1463,1435,1426,1414,1390,1365,1353,1359,1365,1348,1306,1256,1213,1164,1078,946,
+800,684,603,515,371,169,-45,-221,-336,-403,-449,-491,-535,-577,-612,-632,-639,-642,-654,-676,
+-703,-729,-749,-757,-751,-729,-695,-650,-590,-507,-400,-275,-144,-18,93,186,254,302,334,354,
+365,378,406,457,516,562,582,586,590,605,631,665,712,773,844,915,980,1041,1099,1153,
+1203,1252,1301,1346,1383,1410,1433,1454,1472,1489,1510,1536,1565,1589,1607,1625,1644,1652,1639,1610,
+1585,1579,1585,1587,1577,1565,1563,1569,1576,1583,1599,1632,1675,1719,1759,1803,1854,1904,1943,1971,
+1997,2033,2070,2093,2103,2061,2088,2156,2250,2329,2354,2329,2288,2267,2273,2290,2303,2315,2335,2365,
+2399,2433,2471,2514,2554,2582,2600,2621,2656,2701,2745,2779,2804,2824,2850,2891,2950,3018,3072,3096,
+3102,3125,3194,3306,3429,3529,3587,3604,3589,3549,3495,3435,3372,3313,3273,3262,3280,3299,3288,3239,
+3174,3120,3072,2996,2861,2679,2497,2362,2292,2273,2287,2330,2407,2509,2605,2651,2612,2490,2321,2155,
+2032,1965,1943,1950,1974,2006,2036,2066,2109,2189,2317,2473,2614,2704,2729,2702,2639,2557,2469,2388,
+2321,2268,2223,2182,2146,2119,2101,2090,2085,2087,2097,2114,2138,2169,2200,2226,2240,2243,2240,2233,
+2222,2198,2153,2085,1996,1898,1806,1733,1684,1655,1638,1622,1602,1575,1545,1515,1488,1459,1422,1377,
+1330,1286,1243,1194,1139,1084,1034,983,921,847,770,702,645,592,539,487,435,379,314,240,
+162,78,-15,-120,-228,-331,-426,-520,-617,-712,-798,-877,-961,-1057,-1161,-1256,-1328,-1370,-1392,-1420,
+-1475,-1567,-1685,-1808,-1927,-2043,-2158,-2266,-2355,-2431,-2509,-2599,-2689,-2759,-2803,-2841,-2892,-2959,-3032,-3104,
+-3179,-3257,-3330,-3390,-3440,-3489,-3542,-3598,-3659,-3736,-3829,-3920,-3986,-4020,-4032,-4033,-4021,-3995,-3970,-3968,
+-3984,-3988,-3959,-3912,-3879,-3870,-3862,-3839,-3816,-3813,-3816,-3786,-3712,-3635,-3590,-3543,-3415,-3179,-2915,-2741,
+-2697,-2717,-2708,-2653,-2599,-2584,-2591,-2582,-2545,-2499,-2455,-2402,-2336,-2267,-2206,-2145,-2066,-1982,-1926,-1917,
+-1935,-1939,-1916,-1877,-1823,-1726,-1567,-1376,-1222,-1142,-1108,-1049,-916,-711,-470,-229,-17,150,280,403,
+561,759,956,1102,1186,1251,1340,1446,1521,1529,1484,1443,1457,1538,1667,1818,1975,2122,2245,2338,
+2419,2515,2635,2764,2873,2958,3037,3119,3166,3115,2939,2691,2479,2377,2380,2422,2451,2471,2511,2580,
+2656,2718,2780,2865,2970,3058,3101,3108,3116,3145,3178,3188,3170,3146,3144,3177,3249,3357,3488,3612,
+3695,3728,3739,3766,3826,3900,3968,4030,4101,4184,4255,4284,4270,4245,4239,4257,4279,4294,4310,4336,
+4360,4367,4368,4409,4498,4544,4383,3912,3219,2567,2223,2272,2573,2892,3065,3071,2984,2875,2771,2670,
+2569,2468,2361,2242,2120,2012,1929,1859,1779,1682,1583,1495,1417,1337,1251,1171,1112,1067,1017,952,
+879,813,757,700,636,567,505,451,403,356,307,252,192,135,94,72,56,26,-19,-69,
+-110,-149,-196,-254,-309,-346,-363,-371,-384,-407,-443,-493,-550,-607,-659,-705,-740,-759,-768,-784,
+-824,-878,-919,-931,-929,-940,-977,-1020,-1047,-1056,-1061,-1075,-1093,-1107,-1117,-1128,-1145,-1164,-1185,-1204,
+-1218,-1223,-1219,-1213,-1211,-1205,-1189,-1165,-1146,-1136,-1127,-1107,-1082,-1065,-1062,-1064,-1057,-1045,-1042,-1052,
+-1069,-1079,-1082,-1080,-1076,-1066,-1055,-1051,-1059,-1074,-1083,-1077,-1060,-1037,-1011,-982,-954,-932,-915,-897,
+-874,-850,-829,-813,-801,-792,-787,-784,-779,-770,-760,-750,-738,-718,-693,-672,-660,-649,-627,-596,
+-568,-556,-556,-558,-555,-545,-532,-519,-508,-500,-494,-484,-467,-444,-419,-390,-348,-293,-237,-193,
+-162,-130,-92,-58,-36,-23,-6,17,37,48,58,80,114,152,189,229,272,311,347,393,
+466,557,639,701,762,842,929,990,1027,1086,1198,1327,1400,1402,1411,1497,1608,1596,1384,1103,
+1029,1364,2045,2777,3230,3247,2907,2442,2081,1941,2002,2164,2337,2488,2613,2691,2677,2543,2324,2099,
+1932,1823,1730,1627,1528,1466,1451,1461,1464,1450,1433,1425,1422,1404,1366,1322,1290,1263,1204,1086,
+927,780,686,624,526,346,101,-135,-299,-377,-403,-420,-450,-494,-541,-581,-611,-629,-639,-646,
+-655,-670,-691,-711,-726,-730,-722,-705,-674,-622,-542,-440,-326,-213,-107,-11,75,155,228,289,
+332,357,375,406,458,520,573,605,623,638,657,681,716,769,840,919,991,1055,1115,1172,
+1227,1277,1325,1374,1419,1455,1482,1506,1529,1549,1565,1582,1605,1630,1649,1658,1665,1675,1681,1669,
+1640,1612,1601,1605,1607,1597,1580,1569,1565,1567,1573,1593,1631,1682,1732,1776,1819,1864,1907,1942,
+1969,1996,2026,2050,2058,2061,2038,2072,2140,2221,2277,2284,2258,2231,2225,2240,2260,2277,2292,2310,
+2332,2359,2390,2430,2476,2518,2551,2575,2601,2632,2668,2708,2747,2776,2789,2793,2810,2864,2952,3041,
+3096,3112,3127,3181,3283,3401,3491,3529,3524,3493,3451,3398,3328,3239,3145,3073,3046,3064,3101,3124,
+3120,3103,3082,3044,2957,2811,2637,2490,2406,2381,2385,2405,2454,2550,2678,2791,2831,2771,2626,2445,
+2280,2163,2097,2071,2074,2096,2129,2164,2197,2242,2324,2457,2624,2780,2882,2910,2873,2796,2701,2607,
+2524,2462,2419,2388,2360,2329,2300,2276,2259,2250,2247,2253,2270,2301,2343,2389,2424,2436,2425,2397,
+2361,2322,2274,2211,2132,2044,1957,1881,1822,1780,1755,1740,1728,1711,1683,1650,1616,1584,1551,1512,
+1466,1420,1376,1332,1282,1226,1170,1117,1062,998,925,852,788,733,682,635,588,539,484,419,
+347,272,192,102,3,-99,-198,-293,-388,-486,-583,-673,-757,-839,-925,-1016,-1105,-1182,-1237,-1276,
+-1315,-1379,-1478,-1599,-1721,-1834,-1943,-2050,-2149,-2230,-2302,-2386,-2493,-2607,-2699,-2759,-2800,-2845,-2902,-2970,
+-3047,-3134,-3222,-3294,-3341,-3374,-3415,-3475,-3549,-3633,-3729,-3837,-3940,-4014,-4052,-4063,-4058,-4037,-4001,-3969,
+-3961,-3972,-3970,-3931,-3869,-3820,-3802,-3798,-3791,-3788,-3800,-3809,-3778,-3697,-3611,-3556,-3504,-3377,-3144,-2880,
+-2705,-2670,-2718,-2751,-2735,-2703,-2693,-2699,-2687,-2643,-2585,-2530,-2475,-2411,-2338,-2260,-2179,-2093,-2016,-1973,
+-1970,-1981,-1980,-1959,-1927,-1879,-1786,-1633,-1454,-1314,-1244,-1215,-1158,-1029,-828,-585,-337,-112,65,194,
+308,452,644,849,1014,1113,1173,1229,1287,1319,1305,1266,1251,1294,1397,1533,1678,1822,1958,2077,
+2179,2281,2404,2546,2680,2771,2816,2843,2875,2885,2818,2644,2413,2224,2154,2194,2277,2343,2386,2431,
+2487,2539,2576,2617,2690,2795,2894,2954,2978,2998,3034,3075,3093,3083,3067,3069,3100,3160,3249,3361,
+3474,3557,3592,3602,3625,3684,3762,3834,3892,3955,4033,4109,4154,4158,4150,4159,4189,4218,4236,4256,
+4290,4324,4340,4351,4397,4472,4469,4229,3689,2991,2416,2192,2331,2646,2917,3034,3016,2929,2815,2689,
+2572,2485,2424,2350,2235,2089,1959,1874,1816,1748,1650,1541,1447,1376,1312,1243,1173,1107,1044,977,
+903,834,777,731,685,631,573,514,455,397,346,301,257,208,156,111,78,49,12,-31,
+-73,-111,-154,-213,-282,-343,-381,-393,-393,-396,-413,-448,-499,-555,-608,-656,-699,-735,-761,-781,
+-808,-852,-905,-942,-950,-948,-962,-1002,-1049,-1079,-1088,-1087,-1088,-1094,-1100,-1109,-1123,-1143,-1165,-1184,
+-1200,-1209,-1207,-1198,-1189,-1187,-1183,-1170,-1148,-1130,-1124,-1119,-1102,-1075,-1053,-1050,-1059,-1065,-1060,-1054,
+-1057,-1069,-1081,-1087,-1088,-1085,-1078,-1068,-1062,-1068,-1083,-1097,-1100,-1088,-1066,-1038,-1008,-980,-958,-941,
+-926,-908,-888,-866,-846,-830,-818,-809,-801,-793,-786,-781,-776,-762,-740,-716,-698,-687,-673,-647,
+-614,-586,-573,-570,-570,-569,-565,-555,-541,-524,-512,-504,-495,-479,-459,-438,-413,-372,-317,-263,
+-227,-204,-179,-141,-100,-69,-51,-33,-11,6,14,21,41,79,125,168,207,245,284,329,
+390,472,562,639,700,764,849,938,1003,1047,1107,1203,1300,1345,1341,1358,1443,1535,1501,1289,
+1037,995,1332,1986,2697,3165,3220,2888,2361,1893,1675,1745,1993,2262,2454,2560,2604,2581,2468,2274,
+2057,1884,1770,1681,1588,1504,1463,1476,1509,1523,1509,1484,1465,1444,1407,1359,1327,1320,1307,1236,
+1088,905,759,682,632,532,339,86,-144,-291,-351,-369,-386,-421,-467,-512,-552,-587,-614,-632,
+-640,-645,-657,-679,-706,-727,-735,-732,-719,-690,-636,-555,-456,-354,-259,-174,-93,-14,68,152,
+231,291,331,363,404,467,540,604,648,674,690,705,727,766,825,899,974,1040,1101,1164,
+1227,1285,1334,1382,1433,1482,1520,1548,1574,1600,1623,1638,1649,1666,1689,1706,1712,1711,1712,1713,
+1701,1673,1644,1627,1625,1623,1611,1592,1577,1570,1572,1583,1607,1648,1700,1751,1797,1838,1875,1904,
+1927,1949,1976,2006,2026,2032,2038,2028,2057,2112,2173,2209,2212,2195,2184,2188,2204,2220,2236,2254,
+2273,2293,2318,2351,2396,2446,2491,2528,2557,2583,2607,2631,2662,2701,2736,2750,2740,2736,2775,2866,
+2978,3063,3104,3130,3184,3276,3378,3445,3458,3431,3392,3357,3317,3251,3146,3018,2902,2838,2841,2895,
+2965,3023,3058,3061,3016,2913,2765,2619,2525,2499,2517,2547,2582,2645,2752,2883,2981,2993,2902,2737,
+2552,2395,2285,2221,2192,2189,2208,2241,2275,2305,2343,2420,2556,2739,2917,3038,3072,3031,2945,2844,
+2744,2657,2591,2550,2530,2517,2502,2480,2457,2437,2425,2420,2427,2450,2492,2547,2600,2632,2629,2593,
+2534,2466,2396,2323,2246,2165,2088,2020,1963,1916,1878,1853,1841,1836,1826,1802,1767,1728,1689,1649,
+1606,1559,1513,1469,1423,1371,1313,1256,1202,1147,1084,1014,942,877,820,770,724,681,635,584,
+524,457,385,306,217,121,24,-70,-165,-263,-364,-466,-563,-652,-731,-803,-872,-947,-1025,-1099,
+-1161,-1219,-1290,-1388,-1504,-1619,-1724,-1824,-1925,-2020,-2101,-2175,-2261,-2371,-2494,-2601,-2680,-2738,-2792,-2855,
+-2929,-3016,-3114,-3205,-3271,-3305,-3330,-3371,-3440,-3527,-3620,-3719,-3825,-3926,-4003,-4048,-4067,-4069,-4051,-4013,
+-3974,-3956,-3959,-3951,-3907,-3834,-3767,-3727,-3709,-3704,-3718,-3754,-3783,-3756,-3663,-3550,-3466,-3398,-3280,-3074,
+-2836,-2675,-2649,-2716,-2787,-2813,-2810,-2809,-2807,-2784,-2732,-2670,-2616,-2565,-2502,-2420,-2328,-2240,-2164,-2115,
+-2100,-2111,-2122,-2111,-2079,-2035,-1977,-1880,-1735,-1567,-1427,-1342,-1290,-1223,-1104,-930,-716,-482,-254,-59,
+89,211,349,525,718,878,973,1014,1036,1057,1071,1071,1069,1095,1165,1275,1401,1529,1656,1783,
+1905,2023,2144,2282,2433,2571,2662,2695,2686,2659,2607,2500,2326,2127,1981,1944,2008,2112,2206,2275,
+2332,2383,2416,2431,2454,2520,2627,2740,2818,2858,2887,2927,2972,2997,2998,2991,2998,3025,3068,3128,
+3210,3307,3391,3441,3465,3496,3556,3636,3711,3771,3831,3903,3975,4021,4035,4038,4058,4097,4133,4153,
+4169,4200,4242,4282,4322,4369,4387,4267,3903,3311,2681,2268,2208,2425,2713,2904,2961,2933,2866,2763,
+2629,2502,2420,2374,2311,2187,2024,1885,1806,1765,1710,1617,1503,1402,1327,1269,1214,1153,1087,1012,
+931,853,789,740,697,654,610,565,515,455,391,334,293,261,226,181,132,85,40,-3,
+-43,-79,-113,-160,-223,-296,-356,-393,-406,-406,-406,-418,-449,-497,-552,-602,-642,-679,-716,-753,
+-788,-826,-870,-914,-944,-954,-958,-979,-1020,-1066,-1098,-1108,-1106,-1102,-1099,-1100,-1108,-1127,-1149,-1168,
+-1181,-1189,-1192,-1187,-1174,-1161,-1155,-1153,-1146,-1130,-1116,-1110,-1105,-1089,-1063,-1042,-1044,-1063,-1081,-1085,
+-1079,-1078,-1086,-1096,-1101,-1102,-1099,-1095,-1088,-1080,-1080,-1090,-1105,-1114,-1111,-1094,-1066,-1036,-1008,-986,
+-970,-955,-937,-916,-892,-871,-854,-840,-828,-815,-806,-802,-802,-797,-782,-758,-734,-717,-705,-687,
+-661,-630,-606,-590,-580,-575,-573,-572,-565,-548,-528,-515,-509,-504,-489,-469,-448,-422,-382,-328,
+-278,-248,-232,-212,-176,-131,-94,-70,-51,-30,-15,-9,-3,18,59,107,151,190,232,279,
+333,399,478,566,647,718,793,882,975,1051,1105,1154,1211,1259,1279,1287,1328,1412,1466,1394,
+1190,992,1004,1335,1917,2539,2965,3045,2776,2304,1864,1660,1749,2017,2283,2434,2477,2472,2438,2347,
+2183,1988,1825,1719,1641,1560,1489,1463,1488,1530,1546,1529,1502,1483,1461,1421,1371,1338,1327,1302,
+1212,1052,871,739,672,621,515,325,91,-117,-254,-320,-352,-381,-418,-457,-495,-533,-572,-607,
+-631,-641,-647,-659,-683,-711,-731,-738,-733,-717,-685,-631,-554,-466,-379,-299,-223,-145,-63,22,
+110,193,262,315,361,417,488,567,635,683,711,727,743,769,816,881,952,1015,1071,1130,
+1199,1269,1328,1375,1422,1477,1533,1577,1607,1633,1661,1688,1704,1711,1723,1744,1765,1773,1766,1755,
+1744,1727,1702,1673,1652,1643,1636,1624,1607,1593,1589,1594,1608,1633,1671,1716,1764,1807,1844,1872,
+1891,1905,1926,1959,1995,2017,2022,2028,2012,2026,2065,2110,2142,2153,2153,2153,2156,2161,2171,2187,
+2210,2234,2256,2282,2318,2367,2419,2467,2507,2542,2574,2596,2612,2630,2656,2683,2690,2674,2658,2683,
+2765,2881,2987,3059,3109,3170,3250,3329,3372,3367,3332,3295,3273,3253,3206,3112,2977,2841,2753,2742,
+2801,2894,2977,3021,3012,2950,2846,2730,2639,2603,2620,2663,2713,2769,2849,2957,3065,3122,3092,2972,
+2801,2627,2489,2398,2344,2315,2307,2320,2347,2376,2396,2421,2486,2619,2811,3008,3147,3195,3162,3083,
+2989,2893,2803,2731,2687,2671,2670,2668,2656,2638,2620,2608,2606,2618,2649,2697,2752,2797,2813,2791,
+2735,2657,2568,2476,2383,2291,2206,2136,2084,2043,2006,1974,1953,1947,1951,1948,1926,1887,1839,1791,
+1743,1694,1646,1601,1558,1511,1456,1397,1340,1286,1233,1172,1105,1037,972,914,861,812,764,715,
+664,610,554,493,421,337,243,148,54,-40,-139,-242,-346,-449,-544,-626,-690,-745,-805,-880,
+-964,-1043,-1116,-1195,-1292,-1403,-1513,-1612,-1704,-1800,-1896,-1986,-2068,-2155,-2258,-2372,-2482,-2575,-2654,-2728,
+-2805,-2890,-2986,-3085,-3172,-3229,-3259,-3286,-3338,-3418,-3512,-3604,-3695,-3789,-3882,-3958,-4012,-4048,-4068,-4065,
+-4034,-3991,-3960,-3948,-3933,-3887,-3810,-3727,-3660,-3616,-3599,-3621,-3678,-3730,-3717,-3622,-3488,-3378,-3299,-3199,
+-3038,-2846,-2709,-2682,-2740,-2814,-2860,-2879,-2892,-2894,-2869,-2816,-2753,-2698,-2647,-2587,-2513,-2438,-2375,-2336,
+-2326,-2342,-2370,-2383,-2362,-2310,-2242,-2163,-2061,-1924,-1768,-1621,-1505,-1407,-1303,-1172,-1012,-825,-615,-395,
+-193,-30,100,229,383,549,689,769,794,797,807,833,869,914,975,1058,1158,1264,1371,1482,
+1602,1731,1862,1996,2136,2286,2429,2536,2578,2548,2458,2327,2170,2008,1871,1799,1807,1878,1972,2057,
+2129,2194,2248,2278,2289,2310,2372,2477,2592,2677,2726,2761,2804,2851,2883,2890,2888,2893,2911,2937,
+2977,3042,3133,3230,3304,3350,3387,3439,3511,3589,3664,3740,3819,3889,3927,3933,3932,3952,3992,4029,
+4047,4054,4074,4119,4185,4254,4290,4221,3956,3467,2860,2354,2143,2252,2529,2772,2880,2884,2851,2802,
+2712,2577,2441,2351,2296,2220,2089,1930,1804,1740,1709,1664,1579,1472,1368,1285,1220,1167,1114,1050,
+971,885,809,749,700,651,602,561,529,495,443,378,319,279,254,228,188,137,82,28,
+-22,-64,-98,-132,-178,-240,-305,-358,-393,-412,-420,-423,-430,-452,-493,-543,-587,-621,-653,-691,
+-738,-785,-828,-868,-905,-933,-950,-964,-988,-1022,-1059,-1087,-1102,-1107,-1107,-1103,-1101,-1110,-1130,-1151,
+-1164,-1166,-1166,-1166,-1162,-1149,-1133,-1124,-1124,-1125,-1119,-1109,-1101,-1093,-1079,-1060,-1049,-1058,-1081,-1101,
+-1106,-1100,-1097,-1104,-1115,-1122,-1122,-1120,-1118,-1113,-1103,-1096,-1099,-1114,-1130,-1135,-1121,-1092,-1060,-1032,
+-1014,-1000,-985,-963,-935,-908,-885,-870,-860,-849,-838,-830,-827,-825,-816,-795,-768,-744,-727,-711,
+-690,-664,-637,-616,-598,-583,-573,-571,-572,-566,-548,-527,-515,-512,-508,-493,-470,-448,-423,-387,
+-339,-295,-268,-253,-233,-197,-154,-120,-97,-76,-53,-35,-26,-16,8,48,92,132,174,226,
+286,346,405,476,563,658,748,829,912,1002,1086,1151,1191,1211,1223,1240,1281,1353,1419,1410,
+1284,1092,973,1067,1413,1924,2436,2790,2885,2713,2369,2033,1875,1944,2142,2313,2371,2346,2308,2278,
+2215,2089,1929,1794,1708,1644,1572,1501,1466,1478,1506,1513,1499,1488,1491,1490,1462,1407,1350,1299,
+1231,1120,970,823,717,650,578,454,271,66,-116,-248,-333,-386,-423,-451,-475,-502,-535,-574,
+-610,-633,-643,-647,-657,-677,-701,-718,-723,-718,-702,-672,-621,-554,-481,-412,-345,-270,-183,-87,
+10,103,188,262,326,385,448,515,580,635,677,709,736,766,808,867,937,1006,1062,1113,
+1174,1247,1321,1377,1419,1465,1523,1586,1634,1664,1690,1722,1753,1772,1777,1783,1801,1823,1832,1820,
+1796,1772,1751,1729,1705,1684,1669,1658,1646,1632,1622,1619,1624,1635,1655,1686,1724,1765,1801,1830,
+1848,1860,1876,1906,1949,1992,2014,2015,2012,1976,1979,2006,2046,2085,2111,2124,2126,2120,2114,2118,
+2138,2169,2199,2225,2252,2291,2343,2398,2445,2487,2529,2570,2603,2621,2628,2633,2637,2628,2604,2583,
+2597,2664,2773,2889,2987,3063,3131,3196,3249,3274,3264,3233,3202,3184,3172,3143,3077,2973,2860,2783,
+2774,2827,2904,2958,2960,2911,2834,2755,2698,2674,2685,2722,2773,2834,2911,3005,3104,3175,3186,3119,
+2987,2826,2678,2569,2503,2466,2443,2430,2432,2451,2473,2488,2505,2557,2677,2860,3057,3205,3270,3259,
+3203,3129,3045,2960,2887,2842,2828,2832,2837,2832,2818,2802,2790,2789,2804,2837,2882,2926,2953,2948,
+2909,2841,2756,2660,2558,2453,2352,2263,2197,2152,2122,2095,2072,2059,2061,2070,2068,2044,1999,1945,
+1891,1839,1786,1735,1686,1640,1592,1538,1479,1421,1366,1310,1251,1188,1124,1063,1006,952,899,846,
+790,734,683,638,591,533,457,368,273,178,82,-16,-118,-220,-323,-423,-512,-582,-637,-693,
+-764,-849,-935,-1016,-1100,-1197,-1307,-1415,-1510,-1594,-1682,-1777,-1876,-1970,-2060,-2154,-2254,-2357,-2457,-2553,
+-2645,-2734,-2824,-2918,-3011,-3091,-3145,-3179,-3216,-3279,-3367,-3463,-3555,-3644,-3734,-3822,-3898,-3959,-4011,-4052,
+-4071,-4054,-4013,-3971,-3943,-3917,-3870,-3796,-3710,-3629,-3567,-3540,-3562,-3629,-3695,-3699,-3615,-3481,-3359,-3273,
+-3188,-3069,-2926,-2818,-2786,-2818,-2870,-2910,-2940,-2967,-2983,-2969,-2920,-2853,-2788,-2733,-2685,-2645,-2620,-2612,
+-2619,-2640,-2670,-2699,-2707,-2677,-2609,-2519,-2420,-2312,-2183,-2035,-1881,-1730,-1582,-1427,-1260,-1084,-900,-705,
+-504,-315,-158,-35,78,205,344,464,537,562,569,591,643,715,795,875,958,1045,1135,1226,
+1322,1432,1559,1695,1832,1970,2115,2262,2381,2427,2370,2216,2015,1827,1702,1656,1677,1737,1807,1869,
+1923,1979,2041,2099,2136,2153,2175,2230,2322,2423,2504,2557,2600,2651,2706,2746,2761,2760,2760,2767,
+2784,2817,2878,2973,3084,3180,3244,3282,3320,3375,3451,3546,3653,3760,3844,3884,3884,3874,3881,3909,
+3935,3943,3938,3946,3988,4064,4140,4142,3979,3592,3026,2454,2092,2060,2291,2591,2788,2842,2819,2787,
+2742,2650,2509,2368,2267,2195,2108,1985,1854,1755,1700,1663,1611,1535,1444,1351,1263,1188,1130,1079,
+1019,939,850,772,712,657,596,536,495,475,456,416,356,297,258,235,212,176,129,74,
+16,-41,-93,-136,-175,-219,-271,-322,-365,-398,-424,-444,-455,-461,-475,-504,-545,-583,-611,-640,
+-679,-729,-779,-821,-855,-888,-920,-948,-971,-991,-1012,-1034,-1055,-1074,-1090,-1098,-1098,-1097,-1104,-1122,
+-1141,-1148,-1144,-1138,-1137,-1137,-1129,-1115,-1106,-1109,-1117,-1120,-1113,-1100,-1089,-1079,-1073,-1075,-1089,-1109,
+-1120,-1116,-1105,-1102,-1113,-1130,-1143,-1146,-1145,-1143,-1136,-1125,-1113,-1113,-1128,-1149,-1158,-1145,-1114,-1079,
+-1055,-1042,-1034,-1018,-991,-957,-923,-899,-885,-878,-873,-867,-863,-859,-851,-835,-810,-781,-757,-737,
+-715,-688,-660,-636,-617,-598,-580,-568,-566,-569,-565,-549,-529,-517,-511,-500,-480,-455,-435,-415,
+-387,-349,-313,-288,-270,-243,-205,-169,-145,-130,-112,-86,-62,-44,-26,0,36,70,105,152,
+219,294,358,409,471,562,671,770,841,901,973,1060,1138,1182,1192,1199,1238,1315,1395,1414,
+1325,1148,985,968,1171,1564,2036,2461,2744,2836,2737,2506,2261,2119,2118,2195,2247,2231,2181,2152,
+2144,2108,2014,1888,1782,1714,1659,1590,1517,1470,1461,1465,1458,1444,1446,1469,1488,1472,1413,1327,
+1229,1120,999,878,776,696,615,502,349,171,-1,-153,-280,-379,-449,-487,-501,-509,-525,-553,
+-588,-618,-636,-643,-645,-652,-667,-685,-699,-706,-705,-692,-662,-612,-551,-490,-434,-375,-301,-207,
+-98,11,112,201,281,355,425,489,543,584,617,649,689,737,792,854,925,1001,1070,1128,
+1183,1248,1325,1397,1449,1487,1530,1588,1650,1696,1725,1751,1786,1823,1845,1847,1845,1855,1873,1880,
+1865,1834,1804,1781,1763,1745,1726,1708,1693,1679,1667,1659,1655,1655,1660,1672,1696,1730,1767,1797,
+1813,1817,1821,1839,1878,1930,1975,1995,1988,1976,1928,1928,1951,1991,2035,2073,2095,2097,2085,2074,
+2078,2103,2140,2174,2200,2229,2271,2328,2386,2436,2477,2521,2569,2613,2640,2647,2638,2619,2593,2564,
+2544,2553,2605,2698,2812,2924,3017,3087,3139,3175,3195,3193,3171,3135,3099,3068,3038,2995,2934,2868,
+2828,2835,2880,2926,2934,2888,2810,2737,2696,2695,2718,2751,2789,2838,2907,2997,3096,3177,3215,3192,
+3109,2983,2842,2720,2638,2595,2575,2558,2540,2532,2542,2563,2584,2606,2655,2759,2917,3092,3231,3306,
+3319,3292,3242,3177,3104,3040,3002,2993,3002,3011,3010,2999,2983,2969,2964,2975,3003,3038,3066,3070,
+3044,2989,2911,2818,2718,2613,2509,2411,2327,2266,2227,2203,2185,2171,2165,2171,2180,2177,2152,2107,
+2054,2001,1949,1893,1835,1778,1725,1672,1618,1562,1505,1447,1387,1325,1263,1204,1147,1091,1037,986,
+933,877,820,767,724,685,636,569,485,393,297,198,96,-5,-104,-201,-298,-390,-469,-535,
+-597,-670,-754,-842,-926,-1011,-1107,-1213,-1318,-1408,-1486,-1565,-1657,-1758,-1860,-1955,-2044,-2134,-2229,-2332,
+-2438,-2541,-2635,-2723,-2810,-2896,-2973,-3032,-3077,-3124,-3190,-3275,-3369,-3463,-3559,-3657,-3749,-3826,-3890,-3950,
+-4008,-4048,-4054,-4027,-3986,-3950,-3916,-3871,-3809,-3738,-3669,-3614,-3590,-3612,-3675,-3741,-3755,-3688,-3566,-3441,
+-3342,-3254,-3154,-3049,-2973,-2951,-2974,-3011,-3045,-3078,-3113,-3139,-3134,-3088,-3016,-2941,-2882,-2849,-2848,-2874,
+-2913,-2948,-2970,-2984,-2990,-2980,-2940,-2866,-2771,-2667,-2557,-2433,-2290,-2130,-1961,-1785,-1598,-1403,-1206,-1010,
+-814,-620,-442,-294,-181,-84,18,132,238,314,356,387,433,506,597,689,774,856,940,1026,
+1110,1195,1289,1403,1534,1673,1816,1964,2109,2217,2237,2132,1922,1682,1503,1440,1484,1581,1675,1739,
+1777,1810,1854,1910,1963,1997,2015,2034,2076,2145,2227,2301,2361,2417,2480,2545,2597,2625,2636,2641,
+2651,2666,2693,2745,2829,2935,3038,3116,3164,3197,3238,3305,3405,3533,3668,3780,3847,3867,3863,3859,
+3862,3864,3854,3838,3836,3867,3929,3977,3926,3687,3234,2664,2173,1946,2031,2309,2587,2740,2771,2751,
+2722,2667,2559,2413,2276,2177,2102,2018,1920,1826,1753,1692,1627,1554,1483,1414,1339,1254,1171,1108,
+1061,1005,924,828,744,679,619,553,490,450,435,421,384,326,270,232,210,188,156,115,
+66,8,-57,-123,-179,-225,-267,-309,-347,-380,-411,-445,-477,-499,-510,-520,-539,-568,-596,-620,
+-646,-686,-736,-783,-818,-847,-878,-914,-950,-976,-992,-1002,-1011,-1026,-1046,-1069,-1085,-1090,-1088,-1093,
+-1107,-1123,-1128,-1122,-1113,-1111,-1113,-1110,-1101,-1096,-1103,-1117,-1125,-1118,-1102,-1087,-1082,-1087,-1101,-1118,
+-1130,-1130,-1117,-1103,-1102,-1119,-1144,-1162,-1167,-1164,-1158,-1151,-1139,-1129,-1129,-1145,-1166,-1176,-1162,-1130,
+-1096,-1076,-1069,-1063,-1047,-1017,-978,-942,-916,-902,-896,-893,-891,-890,-885,-875,-856,-831,-805,-780,
+-755,-726,-693,-663,-641,-623,-603,-583,-569,-566,-567,-564,-552,-536,-520,-504,-481,-455,-433,-418,
+-404,-381,-349,-321,-299,-276,-241,-198,-166,-153,-150,-139,-115,-87,-63,-40,-11,19,47,78,
+131,211,300,369,418,477,571,684,777,828,860,914,1001,1090,1146,1170,1199,1264,1351,1398,
+1342,1180,987,889,987,1293,1730,2178,2541,2769,2847,2785,2618,2418,2260,2176,2143,2113,2073,2044,
+2044,2053,2027,1949,1847,1762,1704,1652,1589,1527,1486,1470,1456,1430,1401,1392,1403,1413,1394,1333,
+1239,1126,1006,895,808,741,669,560,403,222,52,-89,-210,-323,-424,-497,-531,-536,-535,-546,
+-570,-599,-624,-639,-647,-651,-657,-668,-682,-696,-704,-702,-686,-652,-601,-542,-485,-432,-377,-305,
+-212,-103,8,112,203,288,370,451,523,574,602,621,648,695,761,836,913,992,1072,1145,
+1210,1272,1342,1418,1488,1539,1576,1616,1668,1721,1759,1784,1810,1849,1888,1910,1908,1898,1898,1909,
+1914,1899,1870,1841,1819,1803,1787,1769,1750,1732,1716,1703,1697,1694,1692,1690,1692,1709,1743,1781,
+1809,1814,1804,1797,1809,1847,1897,1936,1950,1941,1928,1886,1892,1913,1948,1989,2029,2057,2066,2060,
+2053,2062,2090,2128,2164,2192,2223,2268,2326,2388,2441,2483,2523,2566,2611,2645,2658,2649,2623,2593,
+2566,2554,2566,2609,2684,2785,2890,2981,3048,3095,3135,3170,3189,3176,3126,3054,2984,2932,2894,2861,
+2834,2827,2851,2894,2927,2918,2866,2798,2750,2740,2763,2794,2821,2849,2893,2965,3057,3145,3205,3218,
+3181,3099,2987,2865,2760,2693,2665,2657,2647,2629,2617,2622,2645,2676,2713,2770,2866,3000,3143,3261,
+3331,3357,3352,3324,3279,3226,3183,3163,3166,3178,3190,3192,3186,3173,3156,3145,3147,3162,3181,3187,
+3168,3119,3046,2953,2848,2739,2635,2540,2456,2386,2334,2302,2285,2274,2265,2262,2266,2272,2270,2249,
+2211,2164,2113,2060,2002,1938,1872,1808,1749,1695,1643,1589,1529,1466,1402,1343,1287,1231,1172,1116,
+1066,1021,974,921,868,820,778,731,670,594,508,414,312,202,94,-5,-95,-181,-267,-350,
+-426,-499,-575,-659,-747,-834,-920,-1011,-1109,-1206,-1293,-1370,-1448,-1538,-1640,-1743,-1839,-1925,-2009,-2101,
+-2207,-2320,-2429,-2527,-2612,-2694,-2776,-2855,-2922,-2977,-3030,-3092,-3165,-3249,-3343,-3446,-3552,-3649,-3727,-3789,
+-3851,-3918,-3977,-4010,-4009,-3986,-3957,-3927,-3892,-3851,-3809,-3771,-3743,-3735,-3758,-3810,-3866,-3883,-3833,-3729,
+-3606,-3492,-3389,-3292,-3210,-3166,-3171,-3209,-3255,-3294,-3329,-3361,-3380,-3369,-3322,-3250,-3174,-3115,-3087,-3097,
+-3135,-3178,-3204,-3201,-3179,-3150,-3116,-3067,-3000,-2919,-2830,-2732,-2617,-2481,-2329,-2167,-2000,-1825,-1641,-1449,
+-1249,-1039,-825,-622,-450,-321,-224,-138,-47,43,124,190,251,323,409,500,587,669,751,838,
+926,1008,1083,1164,1266,1393,1541,1702,1863,2001,2073,2030,1860,1610,1375,1245,1250,1352,1477,1573,
+1628,1666,1708,1761,1812,1847,1864,1870,1882,1912,1964,2032,2104,2174,2241,2309,2375,2433,2480,2518,
+2551,2579,2602,2623,2652,2704,2781,2875,2965,3038,3090,3131,3181,3258,3369,3503,3637,3744,3812,3842,
+3844,3828,3801,3769,3739,3724,3731,3755,3753,3647,3365,2912,2403,2023,1911,2059,2326,2551,2658,2674,
+2659,2627,2555,2432,2290,2172,2090,2022,1949,1876,1814,1758,1685,1590,1495,1425,1375,1318,1236,1150,
+1085,1041,991,911,814,725,657,597,534,477,443,427,407,362,299,242,207,184,158,125,
+88,47,-6,-74,-149,-214,-263,-302,-337,-368,-397,-429,-467,-509,-543,-563,-573,-585,-601,-618,
+-636,-663,-704,-754,-798,-828,-851,-878,-914,-949,-975,-990,-996,-1002,-1013,-1032,-1055,-1075,-1086,-1087,
+-1088,-1096,-1106,-1110,-1104,-1094,-1089,-1091,-1093,-1091,-1092,-1102,-1118,-1128,-1123,-1106,-1091,-1087,-1095,-1111,
+-1126,-1133,-1128,-1114,-1103,-1106,-1128,-1156,-1174,-1177,-1169,-1161,-1155,-1149,-1145,-1147,-1160,-1176,-1182,-1168,
+-1138,-1109,-1091,-1084,-1075,-1056,-1024,-989,-958,-937,-923,-914,-910,-908,-906,-902,-891,-875,-855,-833,
+-808,-778,-743,-708,-679,-659,-642,-622,-599,-581,-571,-566,-560,-551,-538,-520,-493,-460,-432,-416,
+-410,-397,-372,-339,-314,-297,-273,-233,-185,-152,-144,-149,-144,-125,-102,-80,-56,-26,5,31,
+62,117,204,300,375,430,492,586,694,775,814,838,889,975,1065,1127,1169,1224,1302,1363,
+1342,1211,1019,875,882,1083,1442,1867,2266,2575,2769,2844,2809,2685,2514,2340,2197,2091,2019,1979,
+1973,1986,1987,1953,1884,1808,1745,1694,1643,1590,1547,1525,1512,1486,1441,1390,1352,1328,1303,1261,
+1197,1114,1017,915,826,759,701,617,478,292,100,-55,-168,-263,-359,-450,-516,-544,-545,-543,
+-551,-571,-594,-616,-635,-648,-657,-664,-673,-686,-699,-703,-694,-672,-637,-591,-540,-485,-429,-369,
+-297,-210,-111,-8,88,178,264,353,445,532,598,636,659,688,737,807,888,970,1054,1137,
+1217,1289,1357,1428,1503,1573,1626,1666,1703,1744,1784,1814,1837,1866,1905,1942,1959,1953,1939,1933,
+1938,1939,1927,1904,1878,1857,1840,1823,1807,1791,1774,1756,1741,1735,1737,1738,1732,1725,1730,1758,
+1798,1828,1832,1815,1797,1799,1825,1861,1888,1896,1891,1886,1852,1866,1887,1913,1947,1984,2018,2038,
+2046,2050,2063,2091,2131,2172,2210,2247,2289,2341,2398,2452,2497,2533,2566,2600,2631,2652,2653,2635,
+2609,2589,2587,2606,2646,2706,2782,2861,2929,2985,3038,3101,3172,3225,3226,3166,3065,2963,2889,2847,
+2825,2814,2821,2850,2894,2931,2940,2920,2889,2871,2872,2884,2896,2905,2924,2965,3033,3111,3178,3214,
+3212,3171,3097,2996,2888,2795,2740,2722,2725,2726,2717,2709,2714,2736,2770,2818,2889,2989,3110,3229,
+3322,3380,3407,3412,3400,3376,3352,3338,3341,3354,3367,3377,3381,3379,3369,3350,3331,3319,3317,3312,
+3291,3244,3174,3084,2978,2864,2750,2649,2564,2494,2437,2395,2370,2360,2356,2351,2347,2347,2351,2351,
+2336,2303,2256,2204,2148,2089,2024,1955,1886,1823,1768,1718,1666,1607,1544,1483,1429,1378,1321,1257,
+1194,1142,1103,1066,1021,968,917,871,825,771,705,625,533,426,307,190,89,6,-67,-144,
+-228,-312,-392,-470,-550,-637,-726,-816,-905,-995,-1084,-1169,-1251,-1337,-1431,-1531,-1630,-1720,-1802,-1884,
+-1977,-2086,-2204,-2320,-2422,-2510,-2589,-2668,-2745,-2817,-2880,-2937,-2996,-3060,-3133,-3219,-3318,-3422,-3517,-3594,
+-3655,-3716,-3786,-3855,-3908,-3934,-3936,-3924,-3908,-3890,-3874,-3864,-3860,-3862,-3872,-3898,-3942,-3988,-4007,-3975,
+-3897,-3792,-3684,-3582,-3492,-3429,-3407,-3431,-3483,-3539,-3584,-3614,-3631,-3629,-3603,-3552,-3487,-3418,-3360,-3322,
+-3308,-3313,-3321,-3314,-3283,-3235,-3181,-3127,-3072,-3015,-2957,-2896,-2824,-2733,-2618,-2490,-2358,-2227,-2095,-1954,
+-1797,-1613,-1394,-1144,-886,-654,-475,-350,-262,-187,-111,-31,53,143,237,329,415,493,569,649,
+734,816,890,961,1039,1141,1273,1436,1618,1794,1917,1934,1814,1581,1315,1118,1056,1121,1245,1359,
+1434,1486,1543,1615,1684,1727,1737,1730,1723,1730,1756,1800,1860,1932,2007,2077,2137,2191,2246,2309,
+2379,2449,2508,2547,2566,2578,2600,2647,2724,2823,2923,3003,3053,3085,3120,3183,3283,3413,3552,3674,
+3754,3783,3767,3724,3670,3617,3569,3531,3498,3441,3298,3018,2617,2208,1948,1930,2113,2354,2525,2585,
+2576,2545,2495,2405,2280,2156,2064,1998,1933,1861,1799,1758,1715,1640,1533,1432,1368,1332,1285,1207,
+1119,1051,1007,959,886,796,714,648,590,531,479,448,430,399,344,277,221,184,155,120,
+79,43,10,-34,-98,-173,-242,-293,-331,-362,-390,-417,-449,-490,-537,-580,-607,-619,-625,-630,
+-638,-653,-683,-728,-779,-821,-847,-865,-887,-915,-944,-968,-985,-997,-1006,-1014,-1026,-1045,-1068,-1088,
+-1097,-1099,-1099,-1101,-1100,-1092,-1083,-1078,-1081,-1089,-1095,-1101,-1112,-1127,-1138,-1137,-1126,-1113,-1106,-1107,
+-1114,-1121,-1123,-1118,-1108,-1103,-1111,-1133,-1158,-1173,-1172,-1163,-1157,-1158,-1163,-1165,-1168,-1174,-1181,-1181,
+-1167,-1142,-1116,-1099,-1086,-1070,-1045,-1015,-988,-969,-957,-948,-940,-932,-927,-922,-915,-904,-890,-874,
+-855,-829,-796,-760,-728,-704,-685,-666,-644,-620,-599,-582,-568,-555,-545,-534,-513,-481,-443,-416,
+-407,-405,-392,-361,-327,-305,-293,-273,-233,-184,-150,-141,-145,-142,-127,-110,-93,-71,-38,-3,
+26,58,111,194,288,369,433,503,594,693,767,811,850,913,996,1070,1122,1174,1247,1323,
+1337,1244,1069,912,879,1017,1293,1636,1982,2293,2548,2729,2821,2820,2737,2595,2420,2244,2093,1991,
+1947,1942,1945,1927,1884,1832,1788,1751,1709,1658,1610,1581,1568,1551,1511,1452,1392,1340,1291,1232,
+1163,1090,1017,940,859,783,715,643,536,376,184,5,-127,-218,-294,-376,-454,-509,-532,-534,
+-534,-541,-554,-571,-591,-613,-632,-644,-651,-661,-676,-689,-691,-676,-650,-621,-591,-555,-508,-447,
+-374,-295,-211,-122,-31,57,143,227,317,416,515,600,660,700,736,784,850,927,1010,1097,
+1186,1271,1349,1420,1491,1565,1635,1692,1735,1768,1800,1830,1858,1887,1921,1959,1991,2003,1995,1981,
+1973,1970,1966,1954,1935,1915,1895,1875,1859,1847,1839,1827,1809,1790,1782,1788,1794,1788,1770,1759,
+1772,1804,1834,1840,1824,1804,1798,1809,1826,1838,1842,1845,1852,1815,1839,1862,1884,1912,1946,1984,
+2016,2038,2052,2068,2096,2139,2194,2248,2294,2330,2365,2408,2458,2507,2545,2570,2592,2619,2647,2661,
+2654,2631,2610,2607,2627,2666,2715,2765,2808,2844,2883,2942,3034,3144,3231,3254,3202,3100,2996,2923,
+2885,2870,2867,2876,2903,2942,2979,3002,3007,3004,2999,2994,2987,2981,2982,3002,3044,3101,3159,3202,
+3221,3209,3166,3093,2999,2904,2830,2792,2788,2802,2816,2823,2828,2837,2854,2881,2929,3008,3116,3238,
+3346,3424,3471,3493,3501,3499,3495,3498,3513,3536,3557,3568,3572,3574,3572,3559,3531,3496,3465,3438,
+3406,3356,3286,3200,3102,2994,2881,2771,2676,2599,2536,2485,2446,2426,2422,2425,2425,2420,2417,2419,
+2419,2405,2372,2323,2266,2210,2154,2094,2030,1962,1898,1841,1790,1737,1678,1615,1558,1510,1466,1412,
+1346,1278,1222,1182,1149,1109,1059,1008,965,927,883,822,743,645,530,406,287,189,114,50,
+-22,-108,-200,-284,-358,-430,-511,-605,-703,-798,-886,-968,-1051,-1138,-1231,-1329,-1426,-1517,-1600,-1679,
+-1762,-1856,-1966,-2085,-2203,-2310,-2402,-2481,-2555,-2627,-2697,-2765,-2831,-2896,-2961,-3030,-3107,-3193,-3286,-3373,
+-3447,-3508,-3569,-3635,-3705,-3765,-3805,-3824,-3826,-3822,-3820,-3825,-3841,-3863,-3886,-3911,-3943,-3984,-4025,-4045,
+-4030,-3982,-3915,-3844,-3775,-3715,-3672,-3657,-3674,-3712,-3755,-3788,-3806,-3804,-3781,-3739,-3685,-3626,-3568,-3511,
+-3457,-3409,-3372,-3340,-3308,-3267,-3216,-3156,-3093,-3031,-2978,-2933,-2894,-2848,-2787,-2708,-2618,-2525,-2432,-2338,
+-2240,-2125,-1974,-1767,-1504,-1210,-927,-694,-525,-411,-329,-255,-172,-74,36,148,248,334,412,488,
+566,641,708,772,845,935,1048,1186,1351,1536,1705,1800,1762,1578,1304,1045,900,901,1005,1133,
+1229,1290,1349,1429,1522,1595,1623,1612,1589,1578,1587,1613,1649,1699,1765,1837,1903,1952,1994,2044,
+2119,2214,2312,2394,2449,2481,2499,2519,2556,2621,2713,2817,2906,2962,2983,2990,3011,3071,3178,3321,
+3470,3590,3655,3660,3620,3551,3461,3353,3239,3133,3028,2883,2651,2340,2043,1887,1937,2141,2367,2503,
+2527,2486,2424,2347,2244,2127,2026,1953,1891,1815,1731,1668,1638,1613,1553,1458,1366,1310,1283,1245,
+1175,1089,1016,961,907,840,765,699,643,585,523,469,436,415,381,325,261,209,170,130,
+80,30,-5,-30,-62,-120,-196,-271,-329,-370,-400,-426,-450,-479,-519,-568,-613,-643,-654,-655,
+-654,-660,-677,-712,-760,-811,-850,-872,-887,-903,-923,-945,-965,-985,-1004,-1018,-1023,-1026,-1037,-1063,
+-1093,-1114,-1120,-1116,-1109,-1102,-1093,-1084,-1081,-1088,-1103,-1117,-1127,-1136,-1148,-1160,-1166,-1163,-1153,-1143,
+-1135,-1130,-1126,-1120,-1112,-1104,-1102,-1111,-1130,-1150,-1160,-1159,-1154,-1157,-1169,-1182,-1189,-1188,-1185,-1184,
+-1180,-1168,-1147,-1123,-1104,-1086,-1065,-1037,-1008,-987,-978,-976,-974,-968,-960,-951,-941,-929,-915,-900,
+-884,-865,-840,-809,-778,-752,-731,-710,-686,-661,-639,-620,-600,-578,-557,-541,-528,-507,-472,-432,
+-403,-392,-388,-373,-343,-314,-299,-295,-281,-245,-199,-167,-155,-154,-147,-133,-119,-105,-83,-48,
+-8,24,55,103,177,266,349,424,502,592,679,749,803,863,939,1013,1063,1100,1156,1240,
+1304,1272,1128,953,881,989,1249,1560,1841,2076,2293,2504,2684,2794,2813,2749,2622,2448,2254,2076,
+1955,1905,1901,1899,1875,1835,1802,1782,1761,1723,1672,1629,1606,1590,1558,1503,1440,1388,1345,1294,
+1222,1135,1051,976,902,823,740,657,562,436,274,97,-53,-159,-229,-292,-361,-426,-471,-494,
+-503,-511,-521,-530,-541,-558,-582,-603,-615,-623,-634,-654,-672,-676,-661,-636,-613,-596,-573,-531,
+-466,-382,-292,-205,-121,-37,45,127,208,294,387,486,579,655,712,761,815,881,958,1042,
+1130,1221,1307,1386,1458,1530,1603,1673,1731,1774,1805,1832,1862,1895,1932,1973,2013,2041,2052,2046,
+2035,2024,2014,2002,1987,1974,1961,1946,1928,1911,1903,1901,1895,1876,1854,1843,1849,1859,1853,1829,
+1803,1795,1809,1828,1831,1816,1796,1785,1786,1788,1787,1788,1796,1815,1775,1806,1834,1859,1886,1919,
+1958,1996,2029,2054,2075,2104,2151,2215,2283,2336,2367,2384,2409,2450,2501,2542,2568,2588,2616,2653,
+2682,2685,2661,2630,2615,2627,2661,2701,2732,2749,2757,2777,2834,2936,3063,3169,3215,3188,3115,3036,
+2982,2959,2957,2970,2992,3023,3053,3074,3083,3081,3075,3066,3053,3039,3033,3041,3068,3109,3154,3195,
+3224,3234,3217,3167,3089,3000,2923,2875,2862,2873,2894,2918,2940,2963,2982,2996,3015,3056,3134,3246,
+3369,3476,3550,3592,3613,3620,3623,3631,3653,3689,3728,3755,3765,3767,3766,3758,3731,3682,3621,3561,
+3507,3451,3382,3299,3206,3108,3005,2899,2797,2709,2638,2580,2531,2494,2474,2471,2476,2478,2474,2470,
+2470,2467,2452,2418,2370,2317,2265,2215,2162,2104,2041,1977,1919,1865,1810,1749,1686,1629,1582,1540,
+1491,1430,1364,1308,1268,1234,1193,1145,1100,1067,1040,1003,941,850,737,611,486,376,290,227,
+169,97,6,-91,-177,-245,-308,-383,-479,-588,-692,-784,-863,-942,-1027,-1122,-1219,-1311,-1397,-1477,
+-1557,-1642,-1738,-1845,-1960,-2075,-2182,-2276,-2356,-2427,-2495,-2564,-2637,-2713,-2790,-2865,-2937,-3008,-3083,-3163,
+-3241,-3312,-3374,-3432,-3493,-3557,-3615,-3658,-3681,-3689,-3691,-3697,-3715,-3744,-3780,-3817,-3854,-3894,-3937,-3971,
+-3987,-3978,-3951,-3922,-3898,-3878,-3858,-3837,-3822,-3817,-3822,-3831,-3837,-3836,-3821,-3790,-3744,-3689,-3634,-3580,
+-3525,-3467,-3406,-3349,-3302,-3264,-3229,-3187,-3133,-3068,-3001,-2942,-2895,-2856,-2818,-2778,-2733,-2683,-2625,-2555,
+-2477,-2394,-2303,-2186,-2018,-1792,-1523,-1247,-1000,-799,-647,-532,-434,-332,-215,-83,47,163,262,351,
+437,516,581,635,697,782,892,1015,1144,1282,1432,1565,1620,1541,1327,1050,819,718,756,873,
+997,1088,1156,1227,1316,1406,1466,1480,1462,1440,1434,1447,1468,1493,1528,1580,1645,1708,1758,1802,
+1861,1947,2055,2163,2250,2313,2361,2406,2453,2504,2563,2634,2711,2780,2828,2851,2861,2877,2919,3000,
+3118,3256,3386,3477,3513,3493,3416,3282,3096,2889,2705,2566,2449,2301,2106,1919,1838,1921,2125,2335,
+2453,2459,2393,2303,2204,2096,1989,1902,1835,1765,1676,1583,1520,1501,1494,1458,1383,1303,1249,1221,
+1191,1136,1061,984,914,844,775,716,670,628,573,507,449,413,390,358,309,254,207,166,
+116,55,0,-35,-53,-78,-131,-210,-295,-366,-417,-453,-477,-498,-524,-562,-607,-648,-673,-680,
+-677,-677,-687,-711,-751,-800,-847,-881,-902,-915,-930,-946,-963,-979,-999,-1021,-1038,-1041,-1038,-1042,
+-1064,-1097,-1126,-1139,-1136,-1128,-1118,-1106,-1096,-1093,-1101,-1119,-1138,-1151,-1161,-1172,-1185,-1196,-1198,-1192,
+-1181,-1170,-1159,-1147,-1134,-1120,-1109,-1106,-1113,-1127,-1141,-1149,-1150,-1152,-1163,-1182,-1199,-1205,-1199,-1191,
+-1186,-1183,-1174,-1156,-1133,-1112,-1094,-1072,-1044,-1015,-994,-986,-987,-989,-986,-978,-967,-955,-940,-923,
+-906,-889,-871,-848,-823,-800,-781,-760,-735,-706,-680,-662,-648,-629,-601,-569,-543,-525,-503,-469,
+-427,-391,-370,-356,-338,-314,-295,-291,-293,-282,-250,-210,-180,-167,-160,-149,-135,-124,-112,-89,
+-54,-14,18,49,93,160,242,326,408,494,582,661,723,779,849,927,991,1026,1056,1120,
+1210,1257,1189,1022,879,900,1125,1460,1765,1971,2115,2271,2461,2639,2740,2738,2655,2519,2347,2154,
+1977,1861,1824,1837,1852,1840,1811,1786,1769,1745,1702,1654,1621,1609,1595,1557,1495,1433,1388,1352,
+1301,1226,1134,1044,959,870,770,666,565,458,332,182,32,-89,-167,-218,-264,-316,-367,-406,
+-433,-456,-480,-500,-514,-527,-544,-568,-588,-599,-604,-615,-637,-660,-669,-658,-634,-609,-589,-565,
+-523,-457,-371,-278,-188,-104,-25,53,131,208,287,371,460,548,628,699,765,834,911,994,
+1080,1166,1250,1331,1408,1482,1555,1628,1695,1750,1791,1824,1854,1887,1925,1968,2014,2056,2087,2101,
+2102,2095,2083,2068,2050,2035,2029,2027,2021,2005,1986,1974,1969,1964,1948,1928,1916,1920,1929,1924,
+1898,1864,1840,1833,1831,1822,1802,1782,1769,1761,1753,1743,1739,1750,1775,1749,1781,1813,1843,1872,
+1904,1940,1979,2020,2057,2089,2121,2164,2223,2290,2344,2372,2382,2395,2429,2475,2518,2546,2570,2606,
+2656,2701,2717,2698,2662,2637,2639,2664,2696,2716,2719,2714,2723,2768,2855,2967,3068,3126,3131,3097,
+3052,3017,3004,3016,3052,3102,3152,3183,3187,3170,3144,3123,3107,3094,3086,3087,3102,3128,3161,3194,
+3226,3252,3260,3237,3180,3098,3017,2960,2939,2945,2964,2986,3013,3049,3090,3124,3145,3162,3198,3271,
+3378,3497,3600,3674,3719,3743,3752,3758,3773,3807,3855,3901,3931,3944,3946,3944,3926,3880,3802,3708,
+3618,3541,3470,3395,3311,3221,3126,3024,2920,2821,2738,2674,2624,2581,2547,2524,2514,2511,2509,2505,
+2501,2498,2491,2474,2444,2406,2365,2323,2278,2229,2174,2116,2056,1999,1944,1888,1827,1763,1703,1651,
+1605,1557,1501,1444,1396,1357,1322,1281,1236,1199,1177,1160,1124,1053,943,811,676,556,461,390,
+336,281,209,118,21,-62,-127,-186,-259,-356,-469,-580,-675,-755,-832,-915,-1007,-1102,-1193,-1277,
+-1359,-1443,-1533,-1629,-1732,-1840,-1948,-2051,-2144,-2225,-2299,-2369,-2442,-2519,-2601,-2685,-2766,-2841,-2912,-2981,
+-3053,-3126,-3194,-3256,-3313,-3369,-3426,-3480,-3523,-3549,-3560,-3565,-3573,-3593,-3625,-3665,-3710,-3758,-3806,-3849,
+-3875,-3877,-3862,-3843,-3836,-3842,-3856,-3863,-3860,-3847,-3828,-3807,-3784,-3762,-3742,-3722,-3696,-3659,-3612,-3558,
+-3504,-3451,-3400,-3349,-3300,-3257,-3221,-3188,-3150,-3102,-3042,-2978,-2918,-2862,-2810,-2763,-2724,-2696,-2671,-2636,
+-2577,-2497,-2410,-2324,-2231,-2112,-1954,-1761,-1551,-1339,-1140,-960,-804,-665,-528,-380,-220,-63,76,196,
+303,399,478,536,587,658,762,888,1006,1102,1186,1273,1349,1364,1270,1069,831,649,583,628,
+733,846,940,1021,1101,1181,1249,1291,1304,1297,1289,1289,1299,1312,1327,1350,1391,1448,1510,1569,
+1630,1706,1807,1920,2024,2104,2164,2225,2299,2382,2461,2526,2578,2621,2657,2687,2712,2738,2771,2815,
+2875,2958,3063,3179,3282,3346,3349,3271,3101,2851,2569,2326,2173,2100,2048,1971,1885,1856,1936,2105,
+2276,2369,2362,2286,2183,2073,1962,1858,1772,1701,1627,1539,1454,1401,1391,1396,1378,1322,1248,1187,
+1147,1114,1071,1013,941,862,779,707,656,626,597,550,490,436,401,379,350,305,255,209,
+166,112,48,-9,-44,-62,-87,-140,-219,-308,-387,-449,-493,-524,-548,-575,-611,-651,-683,-698,
+-697,-693,-698,-716,-747,-789,-836,-880,-912,-932,-948,-965,-983,-997,-1010,-1027,-1047,-1066,-1072,-1068,
+-1065,-1077,-1102,-1128,-1145,-1150,-1147,-1139,-1127,-1112,-1103,-1107,-1123,-1142,-1158,-1172,-1187,-1203,-1215,-1217,
+-1211,-1202,-1194,-1186,-1174,-1157,-1139,-1126,-1122,-1127,-1138,-1147,-1151,-1152,-1157,-1171,-1190,-1206,-1210,-1202,
+-1194,-1190,-1189,-1182,-1166,-1143,-1121,-1103,-1082,-1055,-1024,-999,-987,-986,-987,-985,-978,-968,-957,-945,
+-930,-914,-896,-878,-859,-841,-825,-810,-790,-762,-731,-707,-693,-683,-663,-628,-585,-548,-522,-500,
+-469,-429,-389,-355,-329,-305,-285,-274,-275,-277,-265,-236,-200,-172,-156,-144,-133,-124,-118,-108,
+-86,-52,-15,14,45,89,152,227,306,389,479,569,643,699,751,818,893,953,988,1026,
+1097,1184,1211,1121,956,854,942,1222,1566,1831,1978,2079,2222,2412,2574,2631,2575,2451,2305,2150,
+1989,1844,1755,1740,1774,1807,1811,1792,1769,1746,1711,1663,1618,1596,1597,1594,1566,1514,1458,1408,
+1355,1286,1200,1110,1022,929,815,682,551,437,336,229,104,-20,-119,-179,-212,-239,-272,-309,
+-344,-379,-418,-459,-495,-521,-541,-561,-584,-601,-607,-607,-612,-628,-649,-661,-657,-636,-606,-573,
+-537,-490,-427,-349,-262,-175,-93,-16,56,129,205,283,364,445,526,604,681,761,845,934,
+1025,1111,1193,1270,1345,1421,1498,1575,1647,1710,1762,1804,1843,1881,1918,1956,1996,2040,2084,2119,
+2141,2149,2148,2139,2124,2108,2097,2098,2105,2107,2094,2070,2047,2033,2025,2014,2002,1995,1997,2000,
+1991,1966,1931,1900,1877,1857,1833,1806,1783,1768,1755,1739,1722,1715,1724,1749,1743,1773,1805,1838,
+1870,1901,1933,1969,2013,2060,2102,2137,2170,2213,2263,2310,2340,2356,2372,2401,2442,2480,2511,2541,
+2587,2648,2705,2735,2730,2706,2685,2684,2699,2716,2725,2724,2722,2732,2767,2830,2911,2992,3053,3082,
+3081,3057,3027,3010,3026,3081,3163,3241,3285,3285,3255,3217,3191,3177,3171,3167,3166,3171,3184,3202,
+3228,3257,3282,3288,3260,3199,3123,3058,3023,3019,3032,3049,3068,3099,3148,3206,3257,3291,3316,3354,
+3424,3523,3630,3723,3792,3838,3865,3882,3898,3925,3968,4020,4062,4084,4089,4086,4077,4050,3987,3888,
+3770,3659,3567,3490,3417,3340,3256,3164,3062,2956,2857,2776,2718,2677,2643,2611,2582,2560,2545,2535,
+2529,2524,2517,2504,2484,2461,2437,2410,2376,2334,2285,2234,2182,2131,2077,2023,1966,1907,1844,1782,
+1725,1671,1620,1568,1518,1474,1439,1404,1367,1329,1302,1289,1275,1235,1151,1025,882,748,639,559,
+498,444,385,313,229,141,63,-2,-65,-142,-239,-349,-457,-553,-636,-716,-802,-895,-989,-1081,
+-1168,-1254,-1341,-1432,-1528,-1629,-1733,-1837,-1936,-2025,-2106,-2183,-2258,-2335,-2413,-2493,-2573,-2653,-2730,-2803,
+-2874,-2945,-3017,-3085,-3148,-3204,-3258,-3312,-3363,-3405,-3433,-3448,-3457,-3469,-3489,-3517,-3553,-3598,-3651,-3704,
+-3745,-3763,-3757,-3739,-3727,-3729,-3746,-3765,-3777,-3780,-3773,-3757,-3729,-3690,-3647,-3611,-3588,-3573,-3553,-3518,
+-3468,-3412,-3360,-3318,-3281,-3246,-3208,-3169,-3129,-3089,-3043,-2994,-2943,-2894,-2842,-2786,-2728,-2679,-2646,-2624,
+-2594,-2539,-2460,-2372,-2287,-2206,-2121,-2022,-1906,-1772,-1620,-1451,-1272,-1097,-928,-759,-579,-389,-203,-35,
+106,226,324,397,448,500,581,699,824,919,966,987,1010,1035,1023,938,785,620,507,478,
+521,604,698,792,880,956,1017,1062,1096,1122,1138,1145,1146,1148,1154,1167,1189,1223,1271,1328,
+1391,1463,1553,1663,1779,1880,1953,2011,2079,2173,2285,2395,2482,2539,2569,2583,2589,2600,2624,2661,
+2706,2754,2812,2892,2994,3101,3179,3193,3115,2932,2663,2362,2109,1963,1927,1948,1965,1959,1964,2021,
+2126,2229,2276,2248,2165,2059,1945,1827,1715,1620,1546,1481,1415,1352,1311,1300,1304,1296,1259,1198,
+1133,1076,1027,981,931,873,801,722,652,604,576,550,512,465,426,402,385,356,310,258,
+209,162,109,51,-2,-42,-71,-106,-159,-230,-309,-384,-452,-508,-552,-587,-621,-658,-692,-714,
+-718,-712,-709,-720,-745,-780,-821,-866,-907,-940,-963,-981,-1001,-1021,-1036,-1047,-1060,-1077,-1096,-1107,
+-1107,-1102,-1103,-1113,-1130,-1146,-1157,-1162,-1159,-1146,-1127,-1113,-1111,-1122,-1140,-1158,-1177,-1198,-1219,-1231,
+-1231,-1223,-1215,-1210,-1206,-1196,-1179,-1161,-1149,-1146,-1151,-1159,-1164,-1166,-1165,-1167,-1178,-1193,-1207,-1211,
+-1207,-1200,-1198,-1196,-1189,-1172,-1149,-1127,-1107,-1086,-1058,-1025,-996,-980,-977,-980,-980,-975,-967,-960,
+-951,-939,-924,-907,-889,-872,-858,-845,-830,-810,-783,-755,-735,-724,-714,-692,-652,-602,-556,-522,
+-495,-467,-434,-396,-359,-325,-294,-271,-259,-256,-253,-240,-214,-183,-154,-132,-115,-105,-103,-105,
+-98,-75,-41,-7,20,51,94,153,219,288,365,455,547,624,680,730,794,868,930,973,
+1020,1092,1165,1174,1081,939,876,989,1259,1560,1777,1900,2011,2177,2371,2499,2495,2378,2223,2087,
+1973,1863,1761,1696,1688,1720,1751,1760,1751,1739,1723,1690,1640,1589,1560,1554,1554,1543,1517,1480,
+1428,1353,1255,1153,1065,985,888,750,584,426,308,225,145,48,-58,-147,-198,-218,-229,-247,
+-276,-313,-356,-406,-459,-506,-542,-569,-592,-613,-626,-628,-622,-616,-620,-631,-643,-648,-637,-609,
+-569,-520,-466,-407,-340,-263,-180,-99,-25,44,115,193,276,361,442,519,593,671,755,845,
+938,1029,1116,1197,1274,1351,1430,1512,1593,1666,1727,1778,1824,1871,1917,1956,1989,2022,2061,2105,
+2146,2174,2188,2192,2188,2180,2171,2165,2167,2176,2180,2170,2145,2116,2093,2081,2076,2073,2071,2070,
+2064,2049,2023,1991,1959,1926,1892,1856,1823,1798,1780,1761,1740,1720,1713,1721,1743,1748,1774,1805,
+1841,1878,1912,1940,1969,2007,2053,2098,2134,2160,2186,2221,2261,2297,2326,2352,2383,2419,2456,2491,
+2531,2584,2647,2705,2740,2749,2744,2740,2743,2748,2748,2744,2742,2751,2776,2816,2866,2924,2984,3040,
+3081,3095,3078,3042,3015,3029,3095,3197,3294,3349,3353,3323,3289,3269,3263,3259,3250,3235,3222,3218,
+3228,3252,3281,3303,3302,3271,3216,3159,3119,3105,3110,3120,3130,3148,3186,3248,3321,3387,3436,3475,
+3524,3596,3687,3780,3857,3912,3949,3975,4000,4034,4080,4134,4180,4204,4201,4183,4163,4143,4106,4036,
+3931,3809,3693,3596,3516,3442,3369,3292,3208,3115,3015,2920,2841,2785,2745,2714,2681,2647,2616,2591,
+2576,2568,2561,2548,2528,2506,2488,2474,2456,2428,2387,2340,2295,2253,2208,2157,2100,2040,1982,1923,
+1863,1803,1746,1692,1640,1592,1549,1512,1480,1448,1421,1404,1395,1377,1326,1230,1097,956,834,744,
+676,617,556,488,415,340,267,197,128,54,-29,-125,-229,-330,-425,-514,-601,-691,-784,-877,
+-968,-1058,-1146,-1235,-1325,-1419,-1520,-1626,-1730,-1824,-1908,-1986,-2063,-2142,-2221,-2297,-2372,-2447,-2525,-2605,
+-2683,-2757,-2830,-2902,-2973,-3041,-3102,-3159,-3211,-3256,-3293,-3318,-3337,-3353,-3371,-3393,-3418,-3449,-3490,-3539,
+-3589,-3626,-3642,-3640,-3635,-3639,-3654,-3671,-3683,-3685,-3684,-3682,-3672,-3647,-3602,-3548,-3502,-3478,-3471,-3464,
+-3441,-3397,-3341,-3289,-3251,-3221,-3190,-3152,-3109,-3065,-3022,-2980,-2940,-2903,-2868,-2832,-2787,-2733,-2679,-2633,
+-2595,-2555,-2500,-2431,-2354,-2278,-2206,-2134,-2059,-1980,-1891,-1785,-1656,-1507,-1347,-1182,-1007,-817,-614,-412,
+-226,-65,69,171,239,284,335,417,530,635,694,698,676,661,656,631,563,465,380,345,
+365,419,489,567,654,738,804,846,877,915,959,996,1012,1010,1004,1008,1024,1048,1078,1116,
+1163,1220,1290,1381,1492,1610,1712,1788,1849,1922,2026,2157,2293,2408,2489,2533,2542,2529,2511,2508,
+2528,2565,2610,2663,2736,2831,2931,3002,3007,2924,2755,2523,2273,2066,1949,1932,1980,2041,2083,2108,
+2137,2174,2199,2186,2128,2036,1928,1808,1681,1556,1452,1381,1335,1296,1255,1214,1187,1175,1172,1163,
+1137,1089,1026,956,890,835,786,733,674,616,567,529,494,456,420,397,387,378,354,309,
+255,202,154,107,59,11,-33,-77,-125,-180,-240,-303,-370,-441,-509,-569,-618,-661,-699,-729,
+-742,-739,-732,-734,-752,-781,-816,-853,-893,-933,-967,-991,-1009,-1028,-1049,-1068,-1082,-1093,-1107,-1124,
+-1138,-1143,-1141,-1137,-1138,-1145,-1157,-1168,-1176,-1174,-1162,-1145,-1132,-1130,-1137,-1150,-1166,-1186,-1212,-1236,
+-1251,-1252,-1243,-1233,-1226,-1220,-1210,-1194,-1179,-1170,-1168,-1172,-1177,-1181,-1182,-1182,-1183,-1188,-1197,-1208,
+-1215,-1216,-1212,-1207,-1202,-1192,-1174,-1151,-1129,-1108,-1086,-1058,-1026,-997,-980,-977,-980,-981,-979,-973,
+-967,-959,-948,-933,-916,-899,-884,-870,-855,-837,-815,-790,-767,-751,-741,-730,-708,-671,-624,-576,
+-533,-498,-468,-438,-407,-373,-338,-302,-272,-251,-240,-232,-219,-200,-175,-146,-117,-93,-82,-83,
+-89,-82,-57,-23,8,34,63,104,157,213,271,340,427,521,603,664,719,783,856,921,
+969,1017,1079,1136,1138,1060,951,914,1020,1243,1487,1677,1821,1983,2188,2375,2454,2385,2223,2060,
+1950,1879,1810,1735,1678,1658,1668,1681,1685,1684,1690,1692,1672,1623,1559,1502,1465,1447,1443,1446,
+1442,1411,1336,1229,1120,1034,959,856,702,513,340,223,156,100,22,-73,-157,-206,-220,-222,
+-234,-263,-305,-355,-410,-464,-513,-554,-587,-614,-635,-648,-650,-642,-629,-619,-617,-625,-637,-639,
+-621,-580,-524,-463,-403,-342,-273,-196,-116,-39,31,104,185,273,361,443,518,593,672,757,
+846,934,1021,1107,1192,1276,1361,1445,1530,1612,1685,1747,1800,1850,1902,1952,1992,2023,2051,2087,
+2131,2175,2207,2224,2231,2235,2236,2235,2230,2227,2228,2230,2224,2206,2181,2158,2144,2140,2140,2138,
+2132,2120,2101,2077,2048,2013,1971,1922,1874,1834,1805,1781,1757,1733,1715,1713,1725,1748,1754,1779,
+1807,1845,1889,1929,1957,1978,2001,2034,2072,2106,2131,2155,2185,2225,2270,2311,2349,2386,2424,2465,
+2510,2562,2620,2677,2722,2748,2761,2771,2783,2793,2793,2781,2767,2769,2794,2841,2895,2945,2989,3033,
+3076,3112,3126,3108,3072,3049,3070,3147,3255,3352,3403,3402,3369,3336,3319,3312,3303,3283,3256,3233,
+3227,3241,3270,3300,3314,3304,3271,3231,3201,3191,3196,3206,3211,3217,3236,3281,3352,3436,3515,3580,
+3636,3698,3775,3861,3942,4003,4039,4058,4074,4102,4149,4209,4265,4297,4292,4258,4214,4177,4146,4106,
+4039,3943,3832,3724,3629,3544,3465,3390,3317,3245,3168,3086,3004,2930,2871,2825,2786,2750,2713,2680,
+2654,2637,2626,2615,2599,2576,2554,2539,2529,2515,2490,2452,2411,2374,2338,2296,2241,2178,2115,2056,
+2000,1942,1883,1825,1772,1722,1674,1630,1591,1559,1533,1515,1503,1490,1461,1397,1291,1159,1029,926,
+854,797,738,668,593,520,455,393,329,258,176,86,-8,-105,-202,-297,-392,-485,-575,-662,
+-748,-836,-928,-1021,-1113,-1204,-1298,-1399,-1505,-1607,-1697,-1775,-1849,-1925,-2007,-2088,-2166,-2240,-2315,-2397,
+-2481,-2563,-2638,-2709,-2780,-2854,-2929,-3000,-3064,-3118,-3160,-3189,-3211,-3230,-3252,-3279,-3307,-3334,-3364,-3400,
+-3443,-3485,-3516,-3531,-3540,-3552,-3575,-3601,-3619,-3622,-3616,-3609,-3605,-3596,-3571,-3526,-3473,-3430,-3408,-3403,
+-3400,-3381,-3340,-3288,-3240,-3202,-3172,-3141,-3103,-3062,-3022,-2985,-2947,-2908,-2871,-2840,-2814,-2788,-2751,-2703,
+-2649,-2594,-2539,-2483,-2424,-2364,-2301,-2235,-2164,-2089,-2012,-1932,-1845,-1746,-1635,-1515,-1383,-1236,-1070,-888,
+-699,-512,-334,-175,-48,36,89,139,212,300,373,401,386,360,344,331,295,230,162,134,
+165,235,313,383,455,533,608,660,689,715,757,814,863,883,878,869,870,886,907,932,
+963,1005,1059,1127,1215,1324,1443,1549,1629,1693,1768,1876,2015,2162,2294,2394,2454,2471,2449,2411,
+2383,2386,2417,2463,2513,2571,2642,2712,2753,2737,2655,2524,2368,2216,2094,2024,2013,2052,2113,2166,
+2197,2204,2189,2152,2090,2005,1904,1792,1667,1531,1398,1291,1225,1193,1173,1140,1089,1036,1003,1002,
+1025,1046,1039,990,909,822,751,700,661,623,578,531,483,436,392,358,342,340,338,323,
+288,239,188,142,102,65,27,-17,-70,-128,-185,-239,-294,-358,-434,-513,-585,-646,-695,-734,
+-760,-767,-762,-757,-767,-793,-825,-856,-886,-919,-956,-990,-1014,-1031,-1048,-1069,-1092,-1111,-1125,-1137,
+-1149,-1160,-1168,-1171,-1172,-1173,-1176,-1181,-1186,-1188,-1185,-1176,-1167,-1162,-1163,-1169,-1174,-1182,-1196,-1220,
+-1246,-1264,-1269,-1263,-1252,-1241,-1230,-1216,-1202,-1191,-1185,-1184,-1185,-1186,-1190,-1196,-1201,-1202,-1202,-1203,
+-1209,-1217,-1220,-1217,-1209,-1199,-1186,-1170,-1149,-1127,-1106,-1085,-1062,-1036,-1011,-994,-987,-986,-987,-985,
+-980,-972,-962,-950,-935,-920,-906,-894,-879,-859,-834,-808,-784,-765,-753,-743,-731,-713,-686,-649,
+-606,-559,-514,-474,-442,-414,-385,-350,-311,-275,-247,-228,-215,-203,-189,-170,-144,-111,-82,-65,
+-63,-66,-58,-34,-3,23,46,73,112,161,211,263,328,412,504,587,652,710,776,848,
+912,961,1007,1062,1110,1112,1053,971,943,1023,1198,1405,1603,1802,2027,2259,2423,2445,2327,2145,
+1993,1906,1856,1798,1726,1665,1635,1631,1630,1622,1616,1623,1632,1622,1581,1517,1445,1383,1339,1324,
+1337,1361,1363,1317,1226,1121,1030,944,829,664,470,297,185,126,80,13,-75,-155,-201,-214,
+-216,-230,-263,-311,-364,-416,-466,-514,-557,-595,-628,-654,-672,-680,-675,-659,-638,-623,-620,-629,
+-636,-623,-583,-521,-453,-391,-334,-273,-204,-128,-51,24,103,186,273,357,437,514,595,684,
+777,867,952,1033,1118,1207,1299,1388,1473,1556,1635,1707,1770,1824,1875,1926,1975,2016,2048,2078,
+2114,2158,2202,2237,2258,2270,2281,2291,2296,2291,2282,2273,2269,2267,2259,2244,2226,2212,2205,2201,
+2195,2185,2171,2155,2137,2112,2072,2015,1949,1887,1838,1805,1778,1751,1726,1712,1715,1732,1754,1773,
+1790,1813,1849,1895,1940,1971,1986,1997,2013,2039,2069,2098,2127,2163,2209,2262,2315,2365,2411,2456,
+2505,2559,2618,2674,2720,2749,2764,2774,2790,2813,2831,2835,2826,2817,2827,2866,2924,2984,3029,3061,
+3085,3110,3132,3138,3125,3104,3103,3149,3241,3351,3438,3473,3457,3414,3372,3344,3325,3303,3274,3246,
+3230,3236,3263,3298,3324,3328,3309,3280,3256,3251,3265,3285,3301,3309,3317,3338,3385,3459,3548,3639,
+3720,3793,3864,3940,4020,4093,4143,4166,4169,4172,4192,4236,4290,4331,4337,4305,4251,4198,4159,4130,
+4093,4034,3953,3860,3766,3675,3587,3501,3420,3349,3285,3223,3158,3090,3023,2962,2909,2862,2821,2786,
+2755,2729,2709,2693,2678,2660,2640,2620,2605,2592,2576,2553,2523,2492,2462,2428,2383,2324,2258,2194,
+2137,2081,2023,1962,1903,1851,1805,1761,1719,1681,1650,1627,1611,1596,1575,1531,1455,1347,1223,1109,
+1021,960,907,847,775,700,632,574,517,454,380,296,207,117,27,-65,-161,-261,-357,-446,
+-527,-605,-690,-785,-886,-987,-1083,-1178,-1277,-1378,-1473,-1557,-1631,-1704,-1784,-1871,-1958,-2039,-2115,-2193,
+-2278,-2365,-2447,-2520,-2587,-2655,-2729,-2808,-2887,-2959,-3020,-3066,-3098,-3122,-3145,-3174,-3209,-3245,-3278,-3310,
+-3344,-3382,-3416,-3440,-3454,-3467,-3488,-3515,-3541,-3555,-3555,-3548,-3541,-3533,-3519,-3491,-3451,-3411,-3382,-3367,
+-3362,-3351,-3327,-3288,-3243,-3201,-3166,-3135,-3101,-3065,-3029,-2997,-2967,-2931,-2888,-2841,-2803,-2779,-2764,-2742,
+-2706,-2653,-2593,-2533,-2477,-2424,-2370,-2312,-2248,-2177,-2100,-2017,-1931,-1843,-1758,-1676,-1593,-1502,-1397,-1276,
+-1142,-996,-831,-646,-452,-278,-148,-64,-4,52,107,146,158,157,163,175,167,115,28,-42,
+-48,16,118,213,287,353,421,485,527,548,570,612,671,723,746,745,735,732,737,749,
+771,808,860,923,994,1082,1193,1314,1420,1496,1553,1624,1731,1872,2020,2150,2247,2309,2332,2317,
+2283,2258,2264,2296,2330,2346,2346,2349,2360,2368,2348,2296,2224,2156,2105,2072,2055,2057,2084,2129,
+2175,2199,2188,2141,2067,1978,1881,1776,1660,1531,1392,1259,1154,1090,1061,1042,1007,947,877,829,
+826,868,924,954,931,860,768,685,627,588,555,517,474,427,379,334,298,277,271,270,
+261,237,200,157,118,86,59,28,-13,-65,-123,-178,-228,-282,-349,-430,-516,-595,-663,-717,
+-757,-780,-785,-780,-782,-801,-835,-869,-894,-913,-936,-966,-1000,-1028,-1049,-1068,-1089,-1113,-1135,-1151,
+-1162,-1170,-1178,-1187,-1194,-1201,-1205,-1206,-1205,-1202,-1198,-1195,-1192,-1192,-1194,-1197,-1197,-1195,-1194,-1201,
+-1219,-1242,-1261,-1269,-1266,-1257,-1244,-1228,-1212,-1199,-1192,-1192,-1193,-1191,-1191,-1197,-1208,-1219,-1222,-1216,
+-1207,-1205,-1208,-1211,-1207,-1197,-1185,-1172,-1157,-1137,-1115,-1095,-1080,-1066,-1050,-1030,-1011,-997,-991,-988,
+-985,-979,-969,-958,-945,-932,-921,-910,-898,-879,-853,-823,-794,-771,-757,-748,-738,-725,-709,-689,
+-662,-625,-578,-527,-481,-446,-418,-389,-354,-313,-273,-240,-216,-198,-183,-169,-153,-130,-100,-69,
+-47,-36,-32,-24,-8,11,29,49,77,118,167,217,269,333,413,500,579,644,704,769,
+839,902,956,1010,1070,1118,1122,1069,995,964,1024,1172,1372,1598,1846,2107,2336,2460,2439,2302,
+2135,2013,1947,1895,1824,1740,1674,1646,1642,1633,1607,1577,1559,1552,1546,1528,1496,1451,1395,1337,
+1296,1288,1311,1333,1317,1250,1149,1037,920,780,608,421,261,156,98,52,-8,-87,-159,-205,
+-225,-237,-259,-296,-344,-393,-439,-485,-530,-574,-616,-653,-684,-706,-718,-715,-697,-668,-639,-622,
+-617,-614,-595,-551,-488,-419,-359,-308,-260,-203,-137,-63,15,97,181,264,345,423,506,600,
+704,808,904,988,1067,1150,1240,1334,1423,1504,1581,1655,1727,1791,1847,1897,1945,1992,2035,2071,
+2103,2138,2179,2223,2262,2291,2311,2328,2342,2349,2345,2334,2321,2312,2308,2304,2297,2286,2276,2267,
+2258,2247,2234,2222,2211,2200,2176,2131,2064,1985,1913,1860,1827,1803,1779,1756,1743,1744,1757,1773,
+1802,1810,1826,1855,1896,1939,1971,1987,1994,2003,2020,2044,2074,2108,2150,2202,2262,2327,2392,2452,
+2508,2562,2615,2665,2710,2743,2764,2777,2792,2815,2843,2869,2882,2887,2893,2916,2958,3010,3054,3080,
+3091,3097,3105,3115,3121,3120,3126,3160,3235,3344,3455,3532,3555,3529,3478,3425,3382,3344,3305,3269,
+3244,3242,3265,3303,3340,3358,3353,3331,3308,3299,3310,3337,3369,3396,3418,3438,3465,3509,3577,3665,
+3764,3859,3940,4011,4078,4148,4214,4264,4285,4283,4276,4282,4305,4333,4343,4320,4271,4215,4173,4148,
+4129,4099,4050,3983,3906,3824,3739,3650,3562,3482,3412,3352,3294,3235,3174,3113,3054,2999,2951,2910,
+2876,2845,2815,2786,2760,2741,2725,2709,2689,2666,2641,2616,2593,2574,2558,2538,2507,2459,2400,2337,
+2279,2225,2170,2108,2043,1982,1929,1885,1846,1808,1774,1745,1723,1704,1681,1648,1595,1516,1415,1308,
+1210,1133,1072,1013,949,880,813,753,697,638,570,492,411,330,250,169,82,-14,-116,-216,
+-308,-390,-469,-555,-653,-761,-869,-972,-1070,-1165,-1259,-1346,-1424,-1496,-1572,-1660,-1754,-1846,-1928,-2002,
+-2077,-2159,-2244,-2326,-2399,-2465,-2531,-2602,-2679,-2756,-2832,-2900,-2959,-3004,-3041,-3074,-3111,-3152,-3193,-3230,
+-3265,-3300,-3334,-3363,-3383,-3397,-3410,-3429,-3450,-3467,-3475,-3475,-3473,-3470,-3463,-3444,-3414,-3382,-3358,-3344,
+-3337,-3327,-3306,-3276,-3240,-3203,-3169,-3136,-3101,-3063,-3023,-2987,-2956,-2928,-2894,-2851,-2805,-2766,-2741,-2726,
+-2708,-2676,-2628,-2573,-2519,-2468,-2415,-2355,-2290,-2222,-2154,-2082,-2002,-1912,-1821,-1738,-1670,-1608,-1543,-1470,
+-1391,-1310,-1217,-1092,-918,-703,-482,-295,-163,-81,-33,-7,3,15,46,98,147,145,71,-44,
+-134,-143,-71,35,128,194,248,305,358,395,415,436,476,530,578,603,607,600,593,588,
+594,620,672,739,809,879,964,1074,1196,1298,1362,1405,1468,1580,1729,1879,1998,2080,2130,2155,
+2156,2145,2144,2166,2198,2200,2145,2047,1950,1897,1894,1915,1929,1931,1932,1945,1969,1998,2028,2065,
+2109,2146,2154,2121,2050,1958,1861,1763,1658,1539,1406,1269,1144,1044,976,935,905,867,811,747,
+700,693,728,783,821,816,767,695,624,567,520,477,433,390,351,313,277,242,216,199,
+189,178,159,132,102,76,54,31,1,-40,-91,-141,-185,-226,-274,-339,-419,-506,-589,-662,
+-723,-768,-792,-796,-795,-806,-836,-877,-912,-929,-934,-940,-961,-994,-1031,-1064,-1089,-1111,-1131,-1150,
+-1166,-1179,-1189,-1198,-1207,-1216,-1223,-1227,-1226,-1219,-1211,-1207,-1208,-1213,-1218,-1219,-1216,-1210,-1204,-1202,
+-1208,-1222,-1239,-1252,-1258,-1257,-1251,-1239,-1221,-1201,-1186,-1181,-1185,-1190,-1194,-1197,-1205,-1218,-1230,-1232,
+-1221,-1206,-1196,-1194,-1193,-1189,-1179,-1167,-1154,-1139,-1117,-1093,-1074,-1064,-1060,-1054,-1040,-1020,-1001,-990,
+-985,-983,-978,-968,-956,-944,-933,-923,-911,-893,-868,-836,-802,-774,-757,-749,-743,-734,-719,-700,
+-679,-654,-618,-571,-520,-474,-440,-415,-387,-351,-308,-265,-230,-203,-180,-160,-141,-125,-107,-84,
+-56,-29,-9,2,9,13,19,29,48,82,127,176,226,278,340,416,496,571,638,701,
+767,834,898,961,1032,1107,1159,1157,1096,1020,992,1057,1213,1428,1671,1928,2173,2362,2444,2406,
+2295,2181,2111,2070,2015,1925,1823,1748,1716,1705,1681,1630,1568,1518,1492,1489,1501,1518,1522,1497,
+1439,1371,1326,1321,1338,1335,1280,1172,1028,868,697,519,348,208,113,55,10,-44,-109,-172,
+-221,-256,-286,-320,-360,-401,-443,-485,-528,-571,-614,-653,-688,-718,-739,-748,-742,-720,-687,-650,
+-621,-599,-579,-549,-502,-442,-380,-327,-284,-245,-199,-142,-75,0,82,166,249,331,415,507,
+609,719,827,923,1007,1085,1169,1260,1353,1440,1517,1590,1664,1738,1807,1868,1920,1969,2017,2062,
+2102,2135,2167,2205,2249,2293,2331,2358,2375,2385,2388,2386,2378,2367,2357,2348,2342,2338,2334,2330,
+2324,2313,2298,2280,2266,2256,2246,2223,2177,2108,2028,1957,1909,1883,1867,1851,1830,1810,1800,1798,
+1802,1821,1829,1846,1871,1902,1934,1961,1979,1992,2004,2020,2042,2071,2107,2151,2206,2272,2348,2427,
+2503,2570,2623,2663,2694,2720,2744,2768,2794,2823,2854,2884,2908,2927,2943,2964,2993,3029,3062,3081,
+3084,3077,3071,3073,3084,3099,3119,3153,3215,3311,3427,3535,3605,3624,3597,3547,3490,3434,3379,3324,
+3278,3256,3264,3299,3343,3376,3387,3377,3360,3350,3357,3379,3413,3454,3498,3542,3582,3619,3661,3719,
+3800,3897,3994,4075,4136,4189,4246,4306,4356,4382,4382,4370,4361,4361,4359,4338,4295,4240,4194,4167,
+4155,4144,4120,4080,4026,3963,3889,3806,3718,3635,3562,3501,3445,3388,3328,3267,3208,3153,3102,3057,
+3017,2982,2945,2904,2861,2825,2802,2790,2777,2753,2714,2670,2632,2610,2605,2606,2599,2575,2531,2476,
+2419,2366,2315,2259,2196,2131,2069,2015,1969,1928,1892,1862,1836,1814,1790,1760,1718,1660,1586,1500,
+1412,1333,1262,1195,1127,1057,991,933,880,824,757,680,600,524,453,385,312,230,137,36,
+-68,-168,-260,-347,-437,-535,-642,-751,-855,-955,-1051,-1142,-1225,-1301,-1374,-1455,-1548,-1648,-1742,-1821,
+-1889,-1956,-2030,-2112,-2196,-2275,-2348,-2417,-2485,-2553,-2622,-2692,-2763,-2831,-2891,-2942,-2988,-3033,-3079,-3123,
+-3162,-3197,-3231,-3263,-3290,-3309,-3324,-3339,-3357,-3376,-3390,-3396,-3399,-3403,-3405,-3399,-3380,-3352,-3327,-3313,
+-3306,-3297,-3281,-3255,-3226,-3198,-3169,-3138,-3102,-3061,-3018,-2975,-2935,-2899,-2867,-2836,-2803,-2771,-2743,-2722,
+-2702,-2676,-2638,-2590,-2540,-2493,-2446,-2391,-2323,-2247,-2176,-2112,-2050,-1978,-1892,-1801,-1721,-1657,-1605,-1551,
+-1492,-1436,-1389,-1339,-1258,-1117,-913,-674,-444,-260,-140,-81,-66,-69,-55,0,86,153,147,52,
+-84,-186,-199,-132,-35,41,91,131,177,225,263,289,316,356,403,443,465,472,470,466,
+463,473,509,571,640,699,752,822,924,1042,1138,1192,1226,1290,1413,1579,1738,1852,1919,1959,
+1985,2000,2010,2030,2066,2094,2065,1944,1756,1576,1483,1501,1591,1688,1751,1783,1807,1845,1900,1966,
+2034,2093,2123,2109,2047,1953,1851,1754,1659,1553,1430,1295,1164,1050,956,882,823,775,733,691,
+651,621,611,623,645,659,651,624,588,551,513,466,410,350,299,261,230,202,173,146,
+124,105,85,62,39,24,17,9,-8,-45,-97,-150,-194,-224,-249,-283,-335,-406,-488,-573,
+-653,-723,-773,-800,-809,-817,-840,-881,-929,-962,-969,-957,-946,-953,-982,-1026,-1071,-1106,-1130,-1144,
+-1156,-1170,-1188,-1207,-1222,-1233,-1240,-1245,-1246,-1240,-1230,-1222,-1221,-1228,-1237,-1241,-1236,-1226,-1215,-1212,
+-1218,-1230,-1243,-1251,-1254,-1252,-1250,-1248,-1240,-1222,-1196,-1173,-1162,-1165,-1176,-1188,-1197,-1207,-1219,-1228,
+-1227,-1216,-1200,-1188,-1183,-1179,-1173,-1163,-1152,-1139,-1122,-1099,-1072,-1052,-1045,-1047,-1047,-1037,-1018,-998,
+-987,-985,-985,-981,-972,-960,-949,-939,-926,-908,-881,-849,-814,-782,-760,-748,-744,-741,-733,-717,
+-697,-672,-642,-602,-552,-500,-455,-424,-402,-378,-343,-300,-256,-218,-188,-163,-140,-120,-104,-90,
+-74,-50,-22,5,23,30,27,24,31,54,93,142,191,237,285,343,411,485,560,633,
+705,774,837,898,967,1052,1139,1191,1177,1106,1034,1031,1133,1324,1559,1797,2017,2206,2340,2394,
+2375,2321,2281,2269,2258,2204,2100,1978,1879,1819,1775,1718,1640,1558,1496,1465,1467,1495,1536,1570,
+1569,1521,1445,1378,1348,1347,1336,1274,1146,970,775,584,411,264,150,71,19,-22,-66,-117,
+-172,-225,-276,-323,-367,-405,-440,-476,-516,-560,-604,-644,-679,-711,-737,-756,-762,-752,-729,-696,
+-661,-628,-596,-561,-518,-468,-413,-360,-314,-273,-232,-188,-135,-74,-5,70,152,239,329,423,
+521,623,726,825,914,997,1078,1164,1255,1346,1431,1508,1582,1659,1739,1817,1886,1946,2000,2052,
+2102,2144,2179,2210,2245,2290,2339,2382,2411,2422,2421,2416,2412,2408,2404,2396,2385,2377,2373,2374,
+2375,2372,2360,2339,2316,2298,2284,2270,2245,2202,2140,2071,2011,1971,1949,1936,1919,1894,1863,1837,
+1823,1821,1825,1847,1877,1904,1926,1942,1957,1974,1992,2011,2033,2060,2093,2133,2183,2242,2310,2389,
+2474,2556,2627,2676,2705,2720,2734,2757,2792,2835,2877,2910,2933,2947,2959,2976,3000,3028,3055,3072,
+3075,3068,3057,3051,3056,3072,3099,3138,3193,3274,3378,3491,3589,3649,3662,3636,3588,3531,3469,3402,
+3336,3283,3261,3275,3315,3360,3389,3395,3389,3386,3399,3427,3465,3508,3557,3616,3682,3743,3793,3834,
+3881,3948,4032,4118,4188,4238,4278,4323,4373,4417,4439,4437,4420,4403,4389,4369,4336,4288,4239,4203,
+4184,4173,4160,4137,4106,4068,4018,3950,3867,3778,3698,3636,3587,3540,3488,3429,3370,3314,3262,3213,
+3167,3125,3083,3037,2983,2928,2883,2858,2848,2838,2809,2758,2699,2653,2633,2639,2652,2656,2639,2602,
+2554,2502,2450,2396,2340,2281,2223,2167,2114,2063,2016,1976,1946,1921,1898,1872,1837,1791,1732,1663,
+1589,1518,1453,1389,1321,1248,1177,1115,1062,1011,950,874,792,714,646,584,521,450,370,281,
+184,81,-24,-127,-225,-320,-417,-517,-620,-721,-821,-918,-1012,-1097,-1175,-1251,-1336,-1432,-1534,-1629,
+-1708,-1773,-1835,-1905,-1985,-2072,-2158,-2238,-2311,-2376,-2437,-2498,-2564,-2634,-2705,-2771,-2829,-2882,-2935,-2986,
+-3034,-3074,-3109,-3142,-3172,-3197,-3216,-3230,-3246,-3268,-3292,-3311,-3323,-3330,-3335,-3338,-3333,-3318,-3298,-3280,
+-3267,-3256,-3239,-3217,-3194,-3175,-3157,-3134,-3100,-3057,-3012,-2969,-2931,-2893,-2856,-2822,-2792,-2769,-2750,-2733,
+-2714,-2689,-2654,-2608,-2555,-2503,-2456,-2409,-2352,-2283,-2207,-2138,-2079,-2025,-1960,-1880,-1794,-1719,-1661,-1615,
+-1566,-1513,-1463,-1428,-1400,-1356,-1261,-1098,-876,-629,-399,-223,-122,-89,-88,-73,-15,70,125,96,
+-19,-166,-265,-273,-209,-126,-64,-28,2,43,90,132,168,207,251,291,318,331,338,345,
+354,364,385,427,485,541,579,610,663,755,869,961,1012,1047,1119,1256,1433,1595,1704,1762,
+1798,1827,1852,1871,1897,1940,1974,1942,1805,1584,1372,1267,1309,1448,1596,1687,1715,1721,1749,1816,
+1911,2007,2076,2097,2058,1971,1861,1754,1660,1570,1465,1340,1208,1085,983,895,815,739,672,623,
+591,573,562,553,543,527,504,479,462,458,460,452,418,358,288,224,175,137,106,78,
+57,41,22,-3,-34,-58,-63,-53,-44,-56,-98,-160,-220,-262,-283,-296,-316,-354,-412,-485,
+-567,-649,-722,-775,-807,-825,-847,-885,-936,-985,-1013,-1012,-989,-965,-958,-976,-1017,-1067,-1110,-1138,
+-1152,-1160,-1175,-1199,-1226,-1247,-1260,-1266,-1268,-1268,-1262,-1252,-1243,-1241,-1248,-1256,-1257,-1248,-1234,-1225,
+-1227,-1239,-1256,-1267,-1267,-1260,-1252,-1249,-1251,-1249,-1235,-1206,-1174,-1151,-1146,-1156,-1173,-1189,-1200,-1209,
+-1214,-1212,-1203,-1191,-1179,-1172,-1166,-1158,-1147,-1136,-1124,-1108,-1085,-1060,-1041,-1033,-1035,-1035,-1027,-1009,
+-992,-983,-982,-984,-981,-972,-960,-949,-937,-921,-898,-868,-835,-805,-782,-765,-756,-750,-744,-734,
+-721,-703,-680,-648,-604,-550,-493,-445,-411,-389,-367,-337,-296,-251,-210,-176,-150,-128,-111,-97,
+-87,-73,-52,-23,7,31,40,39,37,46,74,118,167,215,261,307,360,420,486,560,
+641,723,796,854,905,970,1056,1143,1190,1168,1097,1044,1080,1232,1464,1712,1928,2097,2227,2320,
+2374,2395,2406,2429,2458,2460,2402,2284,2138,2005,1898,1805,1710,1613,1529,1474,1449,1447,1464,1494,
+1525,1534,1508,1454,1396,1357,1331,1287,1193,1037,839,634,452,304,191,108,48,3,-34,-72,
+-114,-161,-213,-267,-318,-362,-396,-425,-459,-501,-548,-594,-636,-673,-708,-741,-765,-773,-764,-743,
+-716,-687,-656,-617,-568,-513,-455,-402,-353,-308,-264,-218,-168,-115,-59,2,71,150,239,336,
+437,538,637,730,819,905,990,1076,1165,1254,1340,1420,1497,1574,1657,1743,1828,1906,1974,2034,
+2089,2139,2184,2221,2255,2294,2340,2392,2435,2461,2465,2454,2441,2434,2434,2435,2430,2421,2412,2408,
+2409,2410,2404,2387,2363,2339,2319,2304,2286,2259,2220,2170,2117,2068,2030,2002,1978,1949,1912,1871,
+1836,1819,1825,1855,1892,1932,1961,1973,1973,1974,1983,2001,2026,2054,2089,2132,2185,2246,2310,2378,
+2448,2523,2597,2661,2707,2734,2749,2768,2800,2847,2899,2942,2968,2978,2979,2982,2993,3012,3033,3052,
+3064,3070,3070,3067,3067,3073,3091,3123,3173,3244,3336,3441,3545,3627,3670,3671,3638,3587,3530,3469,
+3402,3336,3284,3262,3276,3315,3357,3383,3392,3397,3418,3460,3517,3575,3630,3686,3753,3829,3904,3964,
+4008,4047,4096,4160,4227,4282,4322,4352,4385,4419,4446,4453,4441,4419,4399,4383,4364,4336,4299,4264,
+4238,4219,4200,4178,4153,4130,4106,4069,4010,3928,3838,3758,3698,3654,3615,3571,3523,3474,3424,3374,
+3322,3270,3221,3172,3117,3053,2988,2936,2907,2898,2889,2860,2808,2748,2702,2685,2691,2704,2706,2689,
+2657,2616,2571,2520,2465,2410,2360,2314,2268,2217,2162,2109,2065,2032,2007,1982,1952,1915,1869,1812,
+1747,1679,1616,1558,1500,1437,1369,1304,1247,1195,1139,1068,987,907,838,782,726,661,584,499,
+412,323,226,123,15,-91,-193,-293,-391,-489,-586,-683,-781,-876,-964,-1046,-1126,-1212,-1309,-1413,
+-1512,-1597,-1667,-1731,-1801,-1881,-1968,-2054,-2133,-2203,-2265,-2324,-2386,-2455,-2528,-2600,-2665,-2724,-2781,-2839,
+-2898,-2951,-2993,-3027,-3059,-3089,-3114,-3130,-3140,-3152,-3173,-3201,-3228,-3246,-3254,-3256,-3254,-3250,-3243,-3234,
+-3224,-3211,-3193,-3170,-3146,-3129,-3120,-3110,-3088,-3050,-3002,-2957,-2922,-2894,-2867,-2836,-2804,-2776,-2752,-2732,
+-2712,-2688,-2658,-2621,-2575,-2523,-2469,-2417,-2367,-2313,-2251,-2186,-2123,-2067,-2012,-1948,-1873,-1795,-1728,-1676,
+-1634,-1592,-1543,-1496,-1460,-1438,-1414,-1363,-1255,-1079,-842,-580,-342,-174,-90,-63,-45,-1,53,69,
+3,-134,-284,-375,-376,-314,-241,-189,-158,-128,-89,-45,-2,41,90,139,175,191,194,201,
+220,244,268,293,329,377,423,456,485,538,628,736,823,874,916,995,1134,1302,1448,1540,
+1591,1629,1668,1701,1722,1746,1790,1837,1833,1726,1526,1318,1205,1236,1370,1518,1608,1632,1636,1668,
+1746,1854,1954,2015,2019,1965,1871,1763,1663,1577,1492,1392,1274,1151,1040,946,862,777,690,610,
+551,518,505,500,492,470,432,385,342,322,329,351,363,346,298,233,168,110,58,12,
+-21,-39,-45,-54,-79,-115,-144,-150,-134,-116,-123,-163,-225,-283,-323,-343,-355,-373,-405,-451,
+-510,-580,-653,-719,-770,-808,-840,-879,-928,-981,-1025,-1047,-1045,-1024,-999,-982,-985,-1013,-1058,-1105,
+-1140,-1160,-1173,-1190,-1216,-1246,-1268,-1280,-1284,-1288,-1291,-1290,-1281,-1270,-1262,-1261,-1265,-1265,-1259,-1249,
+-1243,-1245,-1256,-1268,-1274,-1269,-1257,-1246,-1243,-1247,-1252,-1246,-1222,-1188,-1156,-1140,-1142,-1155,-1172,-1185,
+-1194,-1198,-1197,-1189,-1176,-1163,-1152,-1143,-1134,-1125,-1115,-1103,-1089,-1070,-1050,-1032,-1023,-1021,-1019,-1010,
+-996,-981,-973,-972,-972,-968,-958,-945,-933,-921,-905,-884,-858,-834,-815,-801,-791,-779,-766,-752,
+-738,-725,-711,-693,-665,-624,-570,-511,-457,-417,-390,-369,-343,-307,-262,-216,-177,-147,-126,-111,
+-99,-88,-73,-51,-22,9,37,54,62,69,84,115,157,206,256,308,360,413,465,521,
+589,670,758,834,889,931,983,1059,1138,1180,1159,1099,1070,1140,1326,1581,1831,2026,2161,2258,
+2339,2411,2476,2537,2596,2637,2631,2555,2415,2243,2075,1928,1798,1679,1575,1497,1448,1422,1407,1402,
+1410,1432,1455,1462,1445,1407,1356,1287,1185,1037,850,648,464,316,209,134,78,32,-9,-49,
+-89,-129,-170,-213,-256,-296,-331,-359,-386,-418,-459,-505,-552,-598,-645,-694,-741,-776,-790,-784,
+-766,-744,-720,-689,-643,-582,-513,-447,-391,-344,-300,-254,-204,-152,-99,-43,16,84,161,248,
+344,445,547,644,737,827,917,1008,1100,1190,1275,1354,1429,1505,1584,1670,1760,1849,1931,2003,
+2065,2119,2168,2212,2252,2292,2336,2384,2434,2475,2498,2501,2490,2475,2467,2467,2468,2466,2458,2448,
+2442,2438,2433,2420,2400,2377,2357,2342,2328,2308,2279,2243,2205,2166,2128,2090,2051,2011,1969,1924,
+1881,1849,1839,1855,1953,1986,2020,2039,2038,2025,2013,2013,2028,2053,2085,2125,2177,2242,2312,2380,
+2442,2498,2555,2612,2667,2712,2746,2775,2809,2853,2904,2951,2983,2998,2999,2998,3002,3011,3024,3037,
+3050,3065,3081,3096,3106,3111,3115,3130,3164,3222,3301,3396,3495,3583,3644,3666,3650,3607,3554,3500,
+3449,3397,3344,3300,3279,3287,3317,3352,3379,3398,3426,3475,3548,3631,3708,3774,3835,3903,3981,4058,
+4121,4167,4202,4241,4287,4335,4373,4399,4416,4431,4445,4451,4443,4423,4400,4383,4372,4360,4343,4322,
+4302,4286,4268,4243,4212,4181,4158,4139,4113,4066,3995,3912,3832,3766,3714,3672,3634,3600,3567,3531,
+3486,3431,3371,3313,3257,3197,3129,3059,3001,2966,2952,2940,2913,2867,2814,2774,2756,2753,2752,2740,
+2717,2688,2657,2620,2576,2527,2479,2438,2401,2362,2313,2258,2205,2162,2129,2099,2068,2031,1991,1947,
+1896,1838,1776,1715,1659,1605,1549,1491,1434,1379,1322,1254,1173,1089,1015,961,916,865,795,708,
+616,529,447,360,262,153,41,-69,-175,-277,-375,-470,-563,-656,-749,-838,-923,-1006,-1094,-1191,
+-1296,-1399,-1491,-1570,-1642,-1715,-1793,-1875,-1954,-2025,-2088,-2146,-2207,-2276,-2354,-2435,-2510,-2575,-2633,-2692,
+-2755,-2819,-2874,-2915,-2947,-2977,-3009,-3037,-3054,-3061,-3068,-3085,-3113,-3143,-3164,-3172,-3169,-3163,-3161,-3161,
+-3162,-3158,-3145,-3125,-3101,-3080,-3069,-3064,-3055,-3032,-2993,-2946,-2904,-2874,-2852,-2831,-2808,-2782,-2756,-2731,
+-2703,-2671,-2637,-2603,-2570,-2533,-2489,-2438,-2386,-2338,-2291,-2243,-2188,-2128,-2066,-2002,-1935,-1866,-1799,-1738,
+-1687,-1642,-1601,-1558,-1517,-1483,-1459,-1444,-1423,-1368,-1250,-1051,-786,-505,-270,-120,-47,-13,13,28,
+-4,-109,-265,-413,-493,-489,-432,-368,-322,-289,-257,-220,-183,-145,-101,-47,5,40,51,52,
+63,93,128,155,173,197,237,289,341,396,464,554,650,726,776,824,906,1033,1174,1288,
+1356,1399,1446,1502,1549,1575,1595,1633,1686,1704,1632,1463,1263,1128,1114,1204,1328,1424,1478,1521,
+1585,1678,1777,1853,1886,1873,1819,1742,1655,1572,1495,1416,1324,1220,1113,1014,925,839,749,659,
+577,514,473,450,435,418,391,349,297,247,217,214,228,240,231,201,157,111,60,3,
+-56,-103,-127,-130,-130,-146,-179,-212,-227,-221,-212,-221,-254,-301,-345,-376,-398,-420,-448,-481,
+-518,-560,-608,-662,-714,-762,-807,-854,-907,-961,-1008,-1040,-1056,-1060,-1054,-1039,-1022,-1013,-1024,-1059,
+-1106,-1149,-1179,-1198,-1217,-1242,-1267,-1284,-1291,-1293,-1298,-1306,-1310,-1305,-1291,-1278,-1271,-1271,-1273,-1274,
+-1271,-1267,-1266,-1267,-1268,-1266,-1261,-1251,-1240,-1233,-1234,-1239,-1239,-1226,-1200,-1169,-1144,-1134,-1138,-1150,
+-1164,-1175,-1182,-1182,-1172,-1156,-1138,-1123,-1114,-1107,-1099,-1091,-1080,-1067,-1052,-1034,-1017,-1004,-997,-993,
+-987,-978,-967,-959,-956,-954,-948,-938,-924,-911,-900,-887,-870,-852,-836,-826,-820,-813,-801,-782,
+-761,-741,-725,-711,-693,-668,-633,-587,-536,-486,-444,-413,-390,-366,-335,-294,-245,-198,-161,-135,
+-117,-103,-89,-70,-46,-16,17,51,80,102,122,144,173,210,255,309,369,432,489,537,
+581,636,710,796,874,929,967,1011,1073,1142,1180,1167,1126,1118,1204,1397,1651,1895,2081,2204,
+2292,2372,2457,2548,2637,2714,2754,2733,2634,2469,2273,2083,1918,1779,1661,1564,1489,1435,1395,1363,
+1345,1350,1380,1424,1458,1459,1418,1332,1202,1034,838,635,453,309,208,140,90,46,5,-37,
+-80,-124,-166,-203,-234,-262,-288,-313,-337,-362,-390,-423,-461,-505,-555,-613,-675,-733,-775,-794,
+-791,-776,-759,-738,-706,-655,-585,-509,-439,-383,-337,-294,-249,-201,-149,-95,-34,34,110,191,
+276,365,459,556,655,751,845,938,1032,1124,1213,1295,1372,1447,1525,1607,1695,1784,1873,1955,
+2028,2091,2144,2192,2237,2281,2326,2372,2418,2462,2499,2523,2530,2524,2514,2506,2504,2504,2501,2493,
+2482,2471,2461,2449,2432,2412,2394,2381,2371,2357,2332,2300,2266,2237,2212,2186,2152,2111,2068,2027,
+1991,1960,1939,1936,1953,2089,2103,2117,2121,2109,2086,2066,2060,2072,2096,2129,2171,2226,2290,2358,
+2420,2472,2517,2561,2610,2661,2711,2756,2799,2843,2888,2930,2960,2977,2984,2989,3001,3017,3033,3043,
+3049,3057,3074,3101,3129,3150,3160,3168,3187,3227,3289,3367,3450,3528,3588,3622,3623,3595,3549,3500,
+3459,3426,3396,3362,3330,3309,3307,3326,3357,3393,3435,3492,3569,3664,3761,3848,3921,3988,4058,4134,
+4207,4265,4308,4343,4379,4418,4453,4472,4475,4467,4458,4452,4445,4432,4415,4397,4384,4376,4368,4360,
+4351,4345,4338,4325,4298,4260,4219,4186,4162,4140,4107,4058,3992,3917,3843,3777,3725,3689,3668,3653,
+3632,3594,3539,3473,3407,3345,3283,3216,3147,3088,3047,3022,3001,2971,2927,2881,2845,2823,2811,2796,
+2773,2746,2721,2697,2672,2638,2597,2556,2520,2487,2448,2401,2350,2304,2267,2236,2201,2159,2110,2063,
+2020,1977,1930,1877,1821,1765,1712,1660,1608,1556,1500,1435,1355,1265,1181,1116,1071,1034,982,907,
+813,718,633,555,472,377,270,156,42,-68,-173,-273,-365,-454,-541,-630,-720,-808,-895,-985,
+-1081,-1184,-1286,-1381,-1466,-1545,-1622,-1699,-1776,-1849,-1914,-1974,-2032,-2096,-2170,-2251,-2335,-2411,-2477,-2537,
+-2598,-2663,-2726,-2779,-2816,-2844,-2873,-2906,-2940,-2964,-2977,-2987,-3004,-3032,-3064,-3087,-3096,-3094,-3090,-3089,
+-3091,-3091,-3085,-3072,-3054,-3037,-3024,-3017,-3010,-2998,-2974,-2939,-2899,-2862,-2830,-2803,-2777,-2753,-2734,-2716,
+-2696,-2667,-2629,-2588,-2551,-2520,-2489,-2452,-2409,-2364,-2325,-2290,-2252,-2202,-2136,-2061,-1985,-1916,-1857,-1802,
+-1747,-1691,-1636,-1589,-1552,-1522,-1495,-1471,-1455,-1447,-1432,-1372,-1232,-1003,-720,-446,-238,-112,-51,-31,
+-50,-123,-255,-416,-550,-614,-603,-550,-495,-453,-420,-386,-351,-318,-286,-245,-191,-137,-103,-91,
+-86,-67,-30,8,29,37,51,91,159,237,315,391,470,548,612,662,717,799,909,1022,
+1105,1155,1195,1252,1324,1389,1428,1452,1485,1528,1544,1483,1330,1135,982,932,988,1104,1229,1340,
+1441,1540,1632,1699,1730,1727,1701,1660,1609,1548,1480,1408,1330,1247,1158,1068,977,886,793,700,
+612,539,483,439,401,365,330,294,253,206,160,124,105,99,94,81,63,45,27,0,
+-44,-105,-164,-201,-212,-211,-217,-239,-267,-289,-301,-312,-330,-358,-386,-408,-427,-452,-487,-529,
+-567,-597,-622,-650,-684,-724,-769,-821,-880,-941,-992,-1026,-1042,-1052,-1064,-1075,-1078,-1069,-1056,-1057,
+-1084,-1129,-1175,-1209,-1232,-1251,-1273,-1293,-1304,-1305,-1303,-1305,-1313,-1320,-1319,-1308,-1296,-1288,-1288,-1292,
+-1296,-1298,-1295,-1288,-1279,-1270,-1263,-1259,-1254,-1244,-1232,-1222,-1218,-1218,-1214,-1199,-1174,-1147,-1128,-1122,
+-1128,-1140,-1153,-1161,-1161,-1150,-1131,-1112,-1097,-1089,-1085,-1080,-1072,-1061,-1049,-1035,-1018,-998,-980,-968,
+-963,-961,-958,-952,-946,-942,-939,-933,-923,-908,-894,-883,-873,-861,-846,-831,-821,-816,-812,-801,
+-784,-762,-741,-722,-703,-679,-650,-618,-583,-548,-511,-475,-442,-415,-392,-366,-330,-284,-234,-189,
+-154,-130,-112,-93,-71,-44,-11,26,69,112,151,184,212,238,269,308,359,422,489,549,
+595,633,677,739,816,892,951,994,1035,1088,1144,1179,1177,1154,1162,1252,1435,1677,1915,2101,
+2225,2304,2367,2436,2519,2611,2694,2738,2712,2605,2430,2226,2032,1873,1751,1655,1576,1507,1443,1386,
+1342,1323,1336,1379,1429,1457,1440,1365,1234,1057,850,639,451,306,210,148,103,58,13,-31,
+-72,-111,-150,-188,-221,-245,-263,-279,-298,-319,-341,-362,-384,-413,-452,-504,-567,-634,-695,-740,
+-762,-767,-762,-753,-737,-707,-655,-585,-510,-442,-388,-344,-300,-253,-203,-150,-91,-23,56,145,
+235,322,406,493,585,680,774,864,949,1035,1121,1207,1291,1373,1454,1537,1622,1710,1798,1883,
+1963,2037,2103,2161,2214,2264,2313,2361,2406,2448,2487,2520,2543,2553,2551,2542,2533,2529,2529,2528,
+2522,2510,2495,2480,2463,2446,2430,2416,2406,2394,2375,2346,2311,2280,2259,2244,2227,2202,2170,2139,
+2116,2104,2095,2087,2083,2089,2179,2177,2180,2179,2166,2142,2119,2110,2120,2147,2186,2232,2285,2341,
+2395,2441,2480,2518,2561,2614,2672,2731,2784,2831,2871,2902,2923,2933,2936,2943,2963,2994,3028,3052,
+3061,3063,3069,3090,3123,3158,3185,3203,3222,3254,3304,3367,3432,3488,3530,3554,3560,3546,3516,3477,
+3441,3415,3400,3389,3372,3351,3331,3325,3340,3377,3433,3505,3593,3691,3792,3889,3977,4057,4136,4216,
+4292,4354,4399,4431,4463,4501,4541,4568,4568,4540,4500,4465,4444,4435,4430,4422,4409,4396,4385,4379,
+4377,4379,4383,4384,4375,4349,4309,4260,4216,4183,4162,4143,4113,4066,3999,3921,3844,3784,3750,3737,
+3735,3724,3690,3633,3562,3488,3420,3356,3293,3232,3177,3134,3099,3067,3028,2982,2938,2903,2879,2863,
+2845,2823,2800,2781,2763,2743,2714,2678,2640,2605,2569,2529,2484,2440,2403,2374,2345,2306,2254,2194,
+2139,2093,2056,2017,1972,1919,1864,1811,1760,1710,1659,1600,1527,1442,1352,1273,1215,1174,1132,1073,
+991,897,806,725,649,567,470,363,252,143,38,-63,-160,-251,-337,-422,-511,-603,-697,-789,
+-880,-973,-1070,-1167,-1261,-1351,-1435,-1516,-1593,-1667,-1736,-1802,-1866,-1930,-1998,-2071,-2148,-2225,-2298,-2365,
+-2428,-2490,-2555,-2615,-2663,-2697,-2724,-2753,-2789,-2828,-2861,-2885,-2904,-2928,-2958,-2990,-3014,-3026,-3030,-3031,
+-3032,-3031,-3022,-3006,-2988,-2975,-2970,-2970,-2967,-2958,-2940,-2917,-2890,-2862,-2832,-2798,-2761,-2725,-2697,-2681,
+-2672,-2661,-2639,-2604,-2563,-2523,-2487,-2452,-2416,-2378,-2343,-2315,-2290,-2256,-2204,-2131,-2045,-1962,-1895,-1846,
+-1804,-1756,-1695,-1632,-1580,-1549,-1532,-1516,-1492,-1467,-1456,-1458,-1444,-1369,-1203,-957,-683,-442,-272,-181,
+-159,-199,-298,-440,-587,-692,-727,-703,-653,-609,-576,-547,-512,-474,-440,-407,-368,-319,-272,-240,
+-226,-215,-190,-150,-114,-97,-92,-76,-28,48,134,209,273,333,396,457,516,579,657,748,
+836,901,944,984,1044,1125,1205,1267,1313,1355,1394,1403,1343,1208,1037,902,856,913,1040,1193,
+1339,1465,1561,1620,1638,1624,1594,1562,1532,1498,1452,1392,1321,1245,1167,1088,1004,913,814,710,
+611,528,465,419,376,328,273,218,168,125,84,45,13,-10,-28,-47,-69,-87,-94,-91,
+-92,-114,-160,-217,-264,-289,-296,-298,-307,-323,-343,-366,-392,-420,-443,-456,-462,-473,-503,-550,
+-604,-648,-674,-690,-705,-728,-761,-805,-859,-922,-982,-1025,-1044,-1046,-1049,-1064,-1088,-1105,-1107,-1100,
+-1103,-1127,-1168,-1212,-1245,-1266,-1285,-1306,-1324,-1333,-1331,-1323,-1320,-1323,-1328,-1330,-1326,-1321,-1317,-1317,
+-1317,-1318,-1319,-1317,-1309,-1296,-1281,-1270,-1265,-1263,-1257,-1243,-1225,-1211,-1203,-1199,-1190,-1171,-1148,-1128,
+-1117,-1116,-1122,-1129,-1133,-1130,-1119,-1104,-1089,-1079,-1074,-1071,-1065,-1056,-1046,-1036,-1025,-1010,-988,-966,
+-948,-939,-937,-936,-934,-931,-929,-927,-922,-910,-893,-879,-869,-863,-855,-840,-822,-807,-797,-791,
+-783,-769,-751,-732,-713,-690,-661,-626,-592,-565,-544,-521,-492,-459,-426,-400,-377,-349,-310,-263,
+-214,-174,-144,-121,-100,-76,-47,-11,32,84,139,191,234,268,296,323,356,399,454,515,
+573,622,661,700,751,815,885,947,998,1044,1093,1139,1169,1175,1171,1194,1284,1455,1680,1910,
+2095,2213,2272,2298,2323,2369,2437,2509,2551,2531,2434,2276,2093,1923,1790,1696,1630,1575,1518,1455,
+1391,1342,1321,1334,1366,1392,1383,1325,1214,1059,874,675,486,332,227,167,129,90,39,-16,
+-63,-98,-123,-149,-178,-206,-227,-241,-250,-261,-275,-290,-304,-321,-347,-385,-436,-498,-563,-623,
+-671,-704,-724,-735,-738,-729,-702,-652,-585,-515,-452,-400,-354,-306,-252,-196,-139,-79,-10,74,
+169,267,360,447,533,622,713,800,879,954,1028,1108,1193,1280,1367,1451,1535,1621,1707,1792,
+1875,1953,2026,2095,2160,2222,2281,2337,2387,2432,2473,2509,2541,2563,2572,2567,2553,2540,2535,2538,
+2544,2543,2534,2517,2497,2478,2460,2444,2430,2415,2397,2374,2345,2316,2293,2278,2268,2253,2230,2205,
+2189,2188,2197,2205,2202,2190,2179,2184,2177,2186,2197,2196,2179,2157,2147,2158,2193,2243,2300,2356,
+2405,2443,2473,2499,2531,2577,2637,2703,2767,2821,2861,2888,2901,2903,2897,2896,2911,2946,2993,3037,
+3065,3076,3080,3092,3120,3157,3192,3218,3239,3266,3309,3365,3422,3467,3492,3500,3498,3489,3472,3448,
+3420,3395,3380,3374,3372,3367,3356,3345,3346,3370,3421,3499,3597,3706,3814,3915,4007,4095,4187,4283,
+4377,4453,4500,4522,4535,4558,4597,4639,4659,4639,4585,4518,4465,4440,4438,4443,4439,4423,4403,4388,
+4386,4394,4407,4417,4421,4413,4389,4351,4305,4261,4229,4212,4202,4184,4144,4079,3998,3918,3857,3824,
+3814,3812,3799,3763,3703,3626,3545,3469,3401,3342,3288,3240,3197,3157,3115,3071,3025,2983,2948,2924,
+2907,2892,2878,2865,2853,2840,2821,2792,2757,2719,2681,2643,2603,2563,2525,2495,2470,2441,2399,2344,
+2283,2226,2179,2139,2100,2054,2001,1945,1892,1842,1793,1741,1679,1603,1520,1438,1370,1318,1273,1219,
+1146,1057,966,883,811,737,652,552,445,341,241,145,49,-44,-134,-220,-305,-395,-490,-588,
+-683,-775,-865,-955,-1047,-1142,-1236,-1327,-1411,-1486,-1553,-1617,-1683,-1753,-1827,-1901,-1974,-2045,-2116,-2186,
+-2255,-2321,-2386,-2448,-2505,-2552,-2589,-2621,-2654,-2692,-2734,-2772,-2803,-2830,-2857,-2887,-2914,-2935,-2948,-2957,
+-2965,-2970,-2965,-2948,-2924,-2903,-2895,-2902,-2912,-2914,-2901,-2879,-2855,-2836,-2819,-2799,-2769,-2731,-2694,-2665,
+-2649,-2641,-2632,-2614,-2586,-2549,-2509,-2469,-2428,-2388,-2353,-2324,-2301,-2277,-2241,-2187,-2112,-2026,-1946,-1883,
+-1840,-1804,-1760,-1701,-1638,-1589,-1565,-1560,-1553,-1529,-1494,-1468,-1467,-1476,-1451,-1352,-1166,-923,-680,-488,
+-375,-347,-396,-503,-635,-749,-811,-812,-772,-727,-698,-683,-663,-628,-584,-541,-505,-469,-432,-397,
+-371,-355,-338,-310,-274,-244,-227,-213,-183,-123,-45,28,84,128,179,243,315,381,439,497,
+561,627,685,729,772,830,910,1005,1099,1185,1259,1314,1329,1285,1187,1070,988,979,1051,1176,
+1316,1439,1528,1576,1584,1562,1525,1488,1458,1432,1401,1358,1305,1244,1178,1105,1024,930,826,712,
+597,491,406,345,300,258,207,144,79,20,-27,-66,-97,-121,-138,-153,-174,-201,-226,-238,
+-233,-221,-218,-237,-274,-317,-351,-371,-381,-387,-395,-409,-431,-459,-485,-502,-505,-504,-516,-552,
+-608,-668,-713,-739,-753,-767,-788,-818,-858,-910,-967,-1020,-1053,-1061,-1054,-1050,-1063,-1089,-1116,-1131,
+-1137,-1149,-1174,-1210,-1246,-1273,-1295,-1316,-1340,-1359,-1367,-1361,-1350,-1341,-1339,-1340,-1342,-1343,-1345,-1345,
+-1342,-1336,-1330,-1327,-1327,-1323,-1311,-1293,-1275,-1266,-1265,-1264,-1256,-1239,-1220,-1205,-1195,-1184,-1170,-1154,
+-1138,-1127,-1120,-1115,-1110,-1103,-1096,-1087,-1079,-1071,-1065,-1060,-1053,-1043,-1032,-1024,-1020,-1016,-1005,-986,
+-962,-940,-925,-918,-914,-912,-910,-912,-912,-907,-893,-874,-858,-852,-852,-850,-838,-819,-799,-784,
+-773,-761,-744,-724,-704,-687,-666,-637,-601,-566,-542,-527,-513,-490,-455,-418,-387,-364,-342,-312,
+-272,-227,-187,-155,-129,-105,-79,-49,-12,33,89,149,207,257,298,332,364,397,433,475,
+525,578,630,675,716,758,809,868,932,994,1051,1102,1142,1169,1182,1194,1231,1321,1475,1676,
+1883,2050,2150,2182,2171,2155,2161,2195,2238,2260,2234,2155,2035,1902,1780,1684,1616,1568,1530,1488,
+1437,1382,1335,1310,1308,1311,1296,1243,1150,1026,881,722,558,402,276,195,152,126,89,32,
+-32,-85,-117,-132,-145,-166,-191,-213,-223,-225,-224,-227,-234,-247,-266,-292,-328,-374,-426,-483,
+-541,-596,-644,-682,-706,-715,-708,-679,-631,-569,-505,-446,-397,-350,-299,-241,-181,-123,-66,-2,
+74,165,264,363,457,548,640,730,815,892,964,1037,1117,1203,1289,1372,1451,1530,1612,1698,
+1782,1863,1938,2008,2077,2146,2215,2281,2341,2394,2441,2482,2521,2554,2579,2588,2580,2563,2547,2541,
+2547,2557,2561,2554,2536,2513,2492,2472,2452,2432,2411,2389,2366,2346,2329,2318,2310,2299,2279,2252,
+2227,2217,2225,2240,2245,2232,2207,2184,2148,2143,2162,2187,2198,2190,2173,2165,2181,2223,2283,2349,
+2410,2457,2490,2512,2533,2562,2608,2667,2730,2788,2833,2863,2879,2883,2877,2871,2876,2902,2948,3003,
+3049,3077,3090,3104,3129,3167,3207,3236,3252,3267,3292,3335,3386,3430,3456,3462,3458,3451,3445,3436,
+3420,3398,3377,3364,3360,3361,3363,3364,3369,3385,3424,3490,3581,3692,3810,3924,4027,4123,4221,4327,
+4438,4539,4608,4636,4633,4625,4636,4669,4706,4715,4681,4611,4533,4480,4462,4469,4479,4472,4449,4423,
+4409,4413,4429,4446,4454,4453,4441,4420,4389,4352,4318,4297,4289,4288,4275,4236,4168,4085,4006,3948,
+3914,3897,3883,3858,3815,3753,3676,3592,3508,3434,3372,3321,3276,3232,3187,3143,3099,3059,3022,2990,
+2962,2939,2922,2912,2908,2905,2899,2885,2861,2828,2791,2751,2711,2673,2636,2604,2575,2547,2515,2473,
+2424,2372,2323,2279,2235,2189,2135,2077,2019,1964,1915,1866,1812,1746,1670,1590,1518,1460,1412,1361,
+1295,1211,1117,1030,956,890,818,730,630,526,427,334,242,148,54,-36,-121,-205,-292,-385,
+-481,-577,-669,-757,-844,-935,-1030,-1129,-1225,-1312,-1383,-1441,-1496,-1558,-1631,-1713,-1794,-1870,-1940,-2010,
+-2081,-2155,-2226,-2292,-2352,-2406,-2454,-2497,-2536,-2575,-2617,-2660,-2700,-2734,-2762,-2788,-2812,-2833,-2850,-2863,
+-2875,-2888,-2897,-2894,-2878,-2854,-2834,-2830,-2840,-2853,-2856,-2842,-2817,-2793,-2777,-2765,-2752,-2730,-2700,-2671,
+-2647,-2630,-2618,-2603,-2583,-2558,-2529,-2494,-2456,-2415,-2377,-2344,-2316,-2289,-2257,-2214,-2157,-2090,-2017,-1947,
+-1888,-1841,-1800,-1756,-1703,-1648,-1608,-1592,-1594,-1593,-1571,-1531,-1493,-1481,-1494,-1498,-1451,-1327,-1134,-918,
+-729,-610,-576,-620,-713,-814,-884,-899,-867,-817,-783,-774,-776,-767,-732,-682,-632,-595,-569,-546,
+-523,-501,-478,-454,-426,-398,-377,-359,-333,-284,-212,-135,-73,-29,11,68,144,219,273,299,
+315,345,397,461,524,582,645,730,841,968,1094,1200,1269,1290,1264,1207,1149,1123,1148,1219,
+1311,1395,1451,1471,1461,1433,1400,1372,1349,1328,1301,1266,1228,1193,1158,1113,1047,954,839,712,
+582,459,349,258,188,135,88,38,-19,-78,-134,-181,-220,-249,-267,-277,-284,-297,-322,-353,
+-375,-379,-366,-346,-336,-345,-371,-405,-436,-460,-474,-484,-494,-511,-530,-547,-553,-549,-547,-563,
+-604,-662,-719,-761,-786,-802,-820,-844,-875,-912,-956,-1004,-1048,-1075,-1078,-1067,-1058,-1066,-1091,-1122,
+-1150,-1172,-1193,-1218,-1245,-1271,-1294,-1317,-1345,-1373,-1392,-1397,-1388,-1375,-1365,-1359,-1356,-1354,-1354,-1357,
+-1358,-1353,-1342,-1330,-1325,-1328,-1330,-1322,-1302,-1278,-1261,-1257,-1260,-1260,-1250,-1233,-1214,-1198,-1184,-1172,
+-1160,-1150,-1139,-1127,-1111,-1093,-1077,-1068,-1064,-1062,-1060,-1054,-1044,-1031,-1016,-1005,-999,-999,-999,-993,
+-977,-955,-933,-915,-902,-894,-889,-890,-895,-899,-894,-879,-858,-842,-837,-842,-845,-837,-819,-798,
+-780,-765,-745,-718,-688,-662,-642,-624,-599,-568,-538,-516,-504,-493,-472,-439,-400,-367,-344,-325,
+-301,-268,-231,-195,-164,-137,-109,-80,-47,-11,31,84,142,202,256,305,349,391,429,465,
+499,538,585,638,688,731,766,805,856,922,996,1065,1121,1160,1185,1205,1230,1278,1364,1494,
+1656,1819,1946,2014,2022,1998,1974,1973,1991,2008,1999,1955,1883,1801,1723,1653,1590,1533,1484,1443,
+1407,1369,1328,1292,1268,1253,1232,1184,1100,991,870,749,625,493,360,248,175,142,124,95,
+39,-32,-94,-132,-149,-160,-178,-204,-227,-237,-233,-225,-220,-225,-240,-260,-284,-309,-337,-371,
+-415,-469,-531,-590,-636,-663,-669,-656,-628,-586,-534,-479,-427,-381,-338,-290,-236,-176,-117,-61,
+-2,66,149,242,341,440,537,632,725,814,898,979,1061,1146,1232,1312,1386,1457,1530,1610,
+1697,1783,1863,1935,2001,2066,2135,2206,2274,2337,2390,2437,2479,2520,2558,2587,2602,2599,2586,2571,
+2564,2568,2576,2579,2571,2554,2532,2510,2490,2468,2445,2421,2398,2379,2366,2360,2359,2356,2344,2321,
+2292,2267,2256,2260,2264,2252,2220,2179,2148,2141,2135,2152,2176,2188,2185,2175,2174,2195,2238,2296,
+2357,2413,2459,2495,2523,2551,2586,2631,2684,2735,2777,2807,2828,2841,2848,2852,2857,2872,2906,2956,
+3010,3054,3083,3104,3129,3167,3213,3253,3276,3285,3292,3311,3346,3386,3415,3428,3429,3428,3431,3436,
+3434,3421,3400,3379,3365,3362,3365,3373,3386,3407,3442,3497,3572,3669,3783,3905,4027,4142,4252,4362,
+4477,4589,4681,4734,4743,4723,4701,4700,4721,4743,4739,4696,4626,4556,4515,4508,4521,4531,4524,4504,
+4485,4480,4486,4495,4497,4489,4477,4466,4452,4430,4400,4370,4352,4350,4357,4351,4318,4256,4179,4107,
+4052,4014,3982,3948,3907,3859,3800,3729,3647,3559,3476,3407,3352,3304,3257,3209,3164,3125,3093,3064,
+3033,3000,2969,2946,2934,2933,2938,2943,2941,2928,2904,2869,2829,2787,2748,2714,2683,2652,2619,2582,
+2541,2501,2461,2423,2382,2336,2283,2223,2160,2098,2042,1990,1937,1879,1810,1732,1655,1588,1533,1484,
+1428,1355,1267,1177,1096,1027,962,888,799,700,602,508,418,326,230,134,44,-37,-116,-197,
+-285,-378,-472,-564,-652,-739,-828,-922,-1021,-1118,-1205,-1276,-1332,-1384,-1444,-1518,-1602,-1686,-1763,-1834,
+-1904,-1977,-2053,-2127,-2194,-2253,-2305,-2353,-2397,-2440,-2484,-2531,-2578,-2621,-2656,-2683,-2707,-2729,-2750,-2770,
+-2787,-2802,-2816,-2826,-2828,-2820,-2804,-2789,-2784,-2790,-2798,-2798,-2786,-2766,-2746,-2731,-2719,-2705,-2685,-2661,
+-2640,-2623,-2608,-2592,-2573,-2551,-2528,-2504,-2477,-2446,-2412,-2380,-2350,-2320,-2284,-2238,-2184,-2127,-2071,-2015,
+-1959,-1903,-1848,-1798,-1750,-1704,-1662,-1632,-1621,-1623,-1625,-1609,-1573,-1535,-1517,-1525,-1540,-1526,-1452,-1315,
+-1144,-985,-877,-841,-869,-930,-986,-1006,-981,-928,-879,-858,-864,-875,-866,-827,-771,-722,-691,-678,
+-669,-652,-626,-592,-558,-530,-510,-497,-480,-444,-382,-303,-226,-165,-117,-67,-1,71,124,136,
+113,88,99,161,257,359,450,536,637,763,908,1045,1145,1194,1192,1159,1119,1096,1103,1138,
+1188,1233,1257,1251,1221,1181,1146,1127,1122,1119,1106,1077,1043,1017,1008,1004,982,922,818,685,
+543,409,290,184,91,11,-53,-106,-152,-197,-242,-285,-326,-363,-394,-416,-427,-432,-440,-458,
+-484,-510,-521,-510,-485,-458,-445,-452,-476,-509,-538,-558,-570,-579,-590,-601,-608,-606,-599,-599,
+-619,-659,-711,-759,-792,-815,-835,-861,-892,-926,-961,-999,-1040,-1078,-1102,-1108,-1098,-1089,-1092,-1114,
+-1148,-1184,-1217,-1244,-1265,-1281,-1297,-1316,-1343,-1376,-1405,-1422,-1423,-1413,-1402,-1394,-1388,-1381,-1372,-1367,
+-1366,-1366,-1361,-1348,-1334,-1328,-1331,-1337,-1332,-1313,-1285,-1263,-1253,-1253,-1254,-1246,-1230,-1210,-1191,-1177,
+-1166,-1157,-1147,-1133,-1114,-1091,-1068,-1052,-1047,-1049,-1053,-1052,-1043,-1029,-1013,-999,-989,-983,-980,-977,
+-969,-956,-938,-919,-902,-888,-878,-873,-875,-883,-889,-886,-871,-851,-835,-831,-836,-839,-831,-813,
+-792,-773,-755,-731,-698,-660,-625,-600,-579,-559,-534,-511,-494,-484,-473,-452,-419,-382,-351,-329,
+-311,-290,-263,-234,-205,-177,-148,-114,-79,-43,-8,29,76,131,190,248,302,353,403,447,
+484,515,549,591,643,695,737,769,802,849,917,998,1075,1134,1171,1196,1220,1254,1308,1387,
+1491,1610,1721,1796,1823,1810,1788,1786,1814,1854,1873,1850,1789,1715,1652,1606,1566,1518,1457,1394,
+1340,1299,1265,1235,1211,1194,1180,1149,1084,982,861,742,636,535,427,312,211,146,123,118,
+101,51,-21,-92,-140,-163,-176,-195,-221,-246,-259,-258,-251,-249,-257,-272,-289,-301,-307,-313,
+-327,-359,-410,-473,-534,-579,-600,-601,-588,-567,-539,-502,-459,-413,-372,-334,-294,-246,-189,-127,
+-63,0,68,146,234,329,427,525,621,716,809,901,992,1081,1167,1249,1323,1391,1458,1532,
+1615,1702,1788,1866,1934,1998,2064,2134,2207,2278,2340,2391,2435,2476,2517,2557,2592,2614,2622,2617,
+2608,2600,2599,2599,2597,2588,2573,2556,2539,2523,2505,2485,2464,2443,2426,2414,2408,2405,2402,2392,
+2372,2347,2326,2314,2309,2299,2272,2227,2176,2141,2181,2169,2173,2181,2183,2179,2178,2189,2214,2249,
+2288,2327,2367,2408,2449,2490,2533,2580,2630,2678,2718,2745,2763,2778,2794,2813,2831,2849,2871,2905,
+2951,3001,3046,3080,3110,3146,3191,3241,3281,3304,3313,3322,3342,3371,3400,3418,3423,3422,3424,3432,
+3439,3437,3422,3400,3382,3373,3372,3378,3390,3412,3448,3503,3575,3663,3766,3883,4009,4140,4268,4388,
+4501,4608,4702,4770,4803,4800,4773,4747,4736,4742,4746,4730,4687,4630,4580,4553,4551,4561,4568,4570,
+4572,4579,4589,4590,4572,4539,4507,4493,4499,4510,4506,4478,4434,4397,4382,4384,4384,4362,4316,4257,
+4200,4154,4112,4066,4013,3956,3902,3847,3783,3705,3615,3525,3448,3388,3337,3289,3239,3192,3154,3127,
+3104,3079,3050,3020,2997,2985,2985,2992,3002,3008,3005,2988,2958,2918,2875,2836,2802,2772,2739,2702,
+2662,2623,2587,2552,2516,2473,2422,2364,2302,2239,2177,2118,2060,2002,1939,1870,1795,1722,1656,1598,
+1543,1480,1405,1323,1241,1167,1099,1029,948,857,762,670,583,496,405,309,215,128,48,-27,
+-107,-192,-282,-373,-464,-553,-640,-728,-818,-910,-1003,-1090,-1165,-1229,-1291,-1357,-1433,-1514,-1593,-1665,
+-1732,-1799,-1870,-1944,-2016,-2082,-2141,-2195,-2244,-2289,-2332,-2377,-2426,-2478,-2526,-2564,-2592,-2614,-2640,-2670,
+-2701,-2727,-2745,-2754,-2760,-2763,-2762,-2757,-2749,-2743,-2741,-2742,-2741,-2736,-2727,-2717,-2706,-2693,-2675,-2651,
+-2627,-2607,-2594,-2583,-2569,-2549,-2527,-2504,-2482,-2460,-2434,-2406,-2379,-2351,-2318,-2273,-2216,-2155,-2098,-2051,
+-2010,-1965,-1912,-1854,-1798,-1750,-1712,-1683,-1663,-1654,-1654,-1654,-1643,-1618,-1587,-1568,-1569,-1580,-1578,-1537,
+-1449,-1330,-1213,-1131,-1098,-1107,-1133,-1146,-1128,-1080,-1024,-985,-975,-984,-987,-965,-915,-856,-811,-791,
+-789,-787,-771,-738,-696,-657,-629,-613,-600,-577,-533,-468,-390,-316,-254,-199,-143,-83,-37,-26,
+-58,-110,-139,-105,-3,140,286,411,520,632,758,886,988,1037,1027,976,916,875,865,882,
+912,938,950,940,911,870,830,803,795,798,800,785,755,725,711,720,733,722,665,561,
+429,298,183,84,-5,-91,-171,-239,-294,-336,-371,-403,-434,-467,-502,-536,-567,-588,-600,-607,
+-616,-631,-648,-658,-652,-631,-603,-582,-576,-587,-605,-620,-628,-630,-632,-638,-647,-652,-652,-649,
+-654,-676,-713,-757,-794,-820,-842,-868,-903,-944,-982,-1016,-1048,-1082,-1116,-1143,-1155,-1154,-1148,-1149,
+-1165,-1196,-1235,-1273,-1302,-1319,-1327,-1335,-1349,-1375,-1408,-1435,-1450,-1451,-1446,-1442,-1439,-1434,-1422,-1406,
+-1395,-1390,-1390,-1384,-1370,-1353,-1342,-1342,-1346,-1342,-1326,-1301,-1276,-1260,-1250,-1241,-1226,-1207,-1187,-1172,
+-1162,-1153,-1143,-1128,-1109,-1085,-1059,-1039,-1029,-1030,-1038,-1044,-1041,-1031,-1016,-1003,-993,-985,-977,-968,
+-957,-944,-930,-916,-901,-888,-876,-867,-863,-866,-872,-877,-874,-862,-846,-833,-829,-831,-831,-821,
+-803,-780,-760,-741,-718,-688,-653,-618,-589,-564,-541,-521,-503,-492,-481,-465,-438,-403,-367,-338,
+-319,-303,-285,-263,-239,-216,-190,-158,-118,-75,-36,-1,32,74,125,182,239,294,346,395,
+440,477,507,539,580,632,685,730,764,797,846,916,998,1074,1131,1165,1188,1213,1250,1304,
+1376,1463,1554,1626,1660,1648,1609,1580,1594,1654,1731,1779,1771,1715,1639,1575,1530,1492,1442,1379,
+1311,1253,1209,1174,1147,1128,1120,1111,1080,1006,889,752,624,521,435,348,253,167,112,95,
+99,90,49,-18,-89,-139,-165,-179,-196,-222,-249,-266,-272,-273,-277,-286,-298,-304,-302,-293,
+-285,-291,-317,-364,-424,-481,-520,-537,-538,-531,-521,-507,-483,-446,-403,-363,-328,-296,-257,-205,
+-140,-68,3,76,152,235,327,423,521,619,716,812,906,998,1086,1168,1243,1313,1381,1453,
+1531,1615,1700,1780,1852,1917,1983,2054,2132,2210,2282,2342,2392,2433,2473,2513,2555,2594,2623,2639,
+2643,2639,2632,2627,2622,2617,2609,2598,2586,2573,2561,2548,2535,2521,2506,2491,2477,2463,2453,2442,
+2430,2412,2392,2373,2359,2348,2331,2300,2257,2213,2181,2232,2218,2206,2195,2185,2180,2187,2206,2231,
+2254,2273,2293,2320,2357,2402,2451,2501,2551,2602,2649,2685,2708,2723,2737,2759,2787,2816,2841,2863,
+2891,2929,2976,3025,3070,3111,3154,3201,3248,3288,3316,3335,3353,3378,3406,3428,3439,3438,3433,3431,
+3433,3433,3425,3410,3395,3386,3385,3388,3394,3408,3438,3491,3567,3660,3765,3878,4000,4130,4263,4391,
+4505,4604,4686,4750,4792,4809,4799,4775,4748,4731,4722,4713,4694,4662,4627,4597,4578,4568,4563,4566,
+4585,4621,4665,4694,4684,4631,4561,4514,4517,4568,4631,4663,4642,4577,4504,4450,4423,4407,4383,4346,
+4303,4266,4235,4198,4146,4079,4007,3943,3886,3825,3749,3658,3566,3486,3424,3374,3326,3275,3224,3182,
+3154,3136,3122,3110,3098,3089,3084,3082,3081,3081,3081,3078,3065,3040,3004,2964,2926,2894,2864,2831,
+2794,2755,2718,2683,2645,2600,2546,2484,2421,2360,2301,2242,2182,2120,2056,1992,1927,1860,1795,1732,
+1670,1606,1536,1461,1384,1310,1240,1169,1089,1000,906,815,731,651,570,482,390,299,213,132,
+52,-30,-116,-202,-289,-376,-463,-552,-640,-726,-811,-896,-979,-1059,-1136,-1212,-1289,-1366,-1441,-1509,
+-1572,-1633,-1698,-1767,-1838,-1907,-1971,-2032,-2091,-2145,-2193,-2237,-2283,-2335,-2390,-2442,-2480,-2506,-2527,-2556,
+-2595,-2639,-2673,-2689,-2690,-2686,-2685,-2690,-2695,-2696,-2692,-2687,-2685,-2686,-2688,-2690,-2690,-2685,-2674,-2655,
+-2630,-2604,-2583,-2570,-2560,-2548,-2529,-2504,-2478,-2454,-2431,-2408,-2385,-2360,-2333,-2298,-2250,-2190,-2128,-2072,
+-2029,-1993,-1955,-1907,-1851,-1796,-1752,-1722,-1705,-1696,-1692,-1690,-1686,-1674,-1652,-1626,-1605,-1596,-1596,-1590,
+-1562,-1505,-1430,-1354,-1299,-1273,-1269,-1271,-1259,-1227,-1182,-1140,-1116,-1112,-1113,-1099,-1058,-997,-937,-898,
+-885,-888,-888,-872,-841,-804,-770,-745,-723,-697,-659,-607,-544,-477,-413,-352,-294,-240,-198,-184,
+-204,-247,-276,-255,-160,-6,170,331,459,561,657,750,826,859,835,762,672,600,566,568,
+590,612,622,617,600,574,543,511,485,468,455,439,413,380,354,346,355,364,349,294,
+205,102,6,-72,-140,-207,-278,-349,-412,-461,-498,-529,-556,-583,-612,-643,-678,-715,-745,-765,
+-774,-777,-780,-787,-792,-791,-779,-760,-741,-729,-724,-720,-710,-694,-675,-663,-663,-671,-681,-688,
+-694,-706,-731,-766,-804,-835,-859,-884,-917,-961,-1008,-1049,-1077,-1100,-1123,-1151,-1181,-1203,-1214,-1215,
+-1216,-1226,-1250,-1286,-1324,-1355,-1374,-1382,-1387,-1395,-1413,-1437,-1459,-1474,-1483,-1490,-1496,-1498,-1491,-1474,
+-1454,-1439,-1434,-1431,-1423,-1404,-1382,-1365,-1359,-1359,-1355,-1341,-1318,-1293,-1271,-1250,-1228,-1204,-1182,-1166,
+-1157,-1151,-1145,-1133,-1114,-1091,-1066,-1042,-1025,-1019,-1022,-1028,-1030,-1024,-1012,-999,-990,-983,-977,-966,
+-952,-936,-921,-908,-896,-884,-874,-865,-859,-857,-857,-859,-860,-855,-846,-835,-827,-824,-825,-824,
+-816,-799,-778,-755,-735,-714,-691,-666,-639,-611,-582,-556,-535,-520,-510,-497,-473,-436,-395,-358,
+-333,-318,-306,-291,-271,-250,-228,-201,-164,-118,-69,-27,7,39,75,121,172,224,274,322,
+367,409,444,475,508,552,607,664,713,753,792,845,917,998,1072,1125,1157,1179,1204,1238,
+1287,1351,1429,1511,1573,1592,1558,1491,1437,1434,1494,1587,1662,1684,1649,1581,1510,1452,1402,1351,
+1298,1249,1209,1176,1145,1116,1097,1091,1087,1057,978,851,701,564,461,383,309,227,146,89,
+67,67,61,27,-31,-94,-141,-168,-185,-206,-234,-262,-283,-292,-297,-301,-307,-310,-304,-292,
+-277,-270,-276,-301,-343,-393,-440,-474,-491,-495,-492,-486,-474,-450,-413,-370,-331,-302,-278,-250,
+-207,-147,-74,0,73,147,226,313,410,511,614,715,813,907,996,1079,1156,1227,1296,1366,
+1440,1519,1600,1678,1751,1818,1884,1954,2032,2114,2194,2265,2323,2370,2412,2455,2502,2549,2593,2627,
+2649,2659,2659,2656,2651,2648,2644,2638,2629,2616,2601,2586,2571,2561,2554,2548,2540,2527,2511,2492,
+2473,2452,2431,2408,2387,2370,2354,2336,2312,2283,2255,2232,2265,2247,2226,2203,2184,2179,2190,2211,
+2232,2247,2259,2278,2311,2358,2409,2453,2488,2522,2559,2600,2639,2668,2688,2706,2730,2762,2795,2822,
+2843,2865,2898,2945,3001,3057,3109,3156,3201,3244,3282,3313,3338,3363,3389,3414,3433,3442,3440,3433,
+3427,3421,3415,3408,3401,3399,3401,3405,3409,3416,3436,3480,3552,3648,3759,3876,3995,4119,4246,4372,
+4486,4580,4652,4704,4741,4763,4769,4759,4736,4711,4688,4672,4658,4645,4632,4618,4602,4581,4556,4533,
+4532,4568,4639,4719,4766,4748,4671,4578,4530,4566,4674,4802,4887,4891,4823,4720,4621,4543,4482,4425,
+4370,4327,4301,4285,4260,4211,4137,4055,3980,3915,3853,3779,3692,3603,3526,3466,3418,3370,3315,3258,
+3209,3177,3166,3170,3184,3200,3212,3214,3205,3188,3170,3155,3143,3130,3109,3079,3044,3009,2977,2945,
+2912,2876,2840,2806,2772,2730,2674,2606,2533,2463,2403,2351,2298,2241,2177,2110,2045,1984,1926,1869,
+1811,1747,1677,1602,1524,1448,1375,1303,1225,1137,1042,947,861,784,711,634,550,460,370,282,
+197,110,24,-59,-138,-215,-293,-378,-468,-559,-646,-727,-804,-881,-962,-1046,-1132,-1216,-1292,-1358,
+-1416,-1472,-1533,-1602,-1675,-1746,-1812,-1875,-1937,-2000,-2061,-2115,-2163,-2211,-2265,-2322,-2375,-2412,-2435,-2454,
+-2484,-2529,-2578,-2614,-2627,-2620,-2608,-2606,-2617,-2632,-2642,-2643,-2639,-2638,-2641,-2646,-2650,-2651,-2647,-2638,
+-2624,-2604,-2583,-2564,-2551,-2539,-2523,-2499,-2468,-2435,-2408,-2387,-2370,-2353,-2332,-2303,-2266,-2219,-2164,-2106,
+-2053,-2010,-1975,-1938,-1894,-1842,-1790,-1748,-1723,-1715,-1717,-1721,-1721,-1712,-1692,-1665,-1636,-1612,-1596,-1585,
+-1571,-1545,-1505,-1454,-1404,-1364,-1339,-1326,-1316,-1301,-1280,-1256,-1238,-1230,-1228,-1219,-1190,-1138,-1075,-1020,
+-986,-975,-976,-974,-961,-941,-920,-900,-878,-845,-799,-743,-685,-629,-576,-520,-458,-394,-341,-314,
+-318,-341,-352,-318,-217,-57,128,300,433,524,588,640,676,682,641,555,448,355,302,295,
+316,343,356,351,335,315,295,271,243,209,172,133,92,51,13,-11,-21,-21,-24,-47,
+-94,-158,-222,-275,-317,-357,-404,-460,-519,-570,-611,-644,-672,-699,-724,-749,-777,-809,-844,-877,
+-901,-911,-911,-910,-914,-921,-925,-922,-909,-891,-873,-856,-836,-809,-776,-743,-719,-710,-714,-723,
+-733,-744,-761,-788,-823,-858,-887,-912,-940,-979,-1029,-1078,-1115,-1135,-1144,-1154,-1175,-1205,-1236,-1258,
+-1268,-1271,-1278,-1295,-1325,-1361,-1396,-1423,-1437,-1444,-1448,-1454,-1464,-1478,-1495,-1516,-1536,-1551,-1553,-1541,
+-1519,-1497,-1483,-1478,-1472,-1458,-1433,-1407,-1388,-1380,-1378,-1373,-1358,-1334,-1306,-1278,-1250,-1222,-1195,-1175,
+-1163,-1158,-1153,-1145,-1131,-1113,-1093,-1073,-1053,-1038,-1027,-1022,-1020,-1015,-1005,-993,-981,-973,-965,-956,
+-943,-927,-912,-899,-888,-878,-867,-858,-853,-853,-854,-854,-851,-846,-840,-833,-828,-824,-822,-822,
+-822,-819,-809,-792,-770,-746,-724,-704,-686,-666,-641,-612,-583,-559,-544,-533,-516,-488,-448,-405,
+-370,-349,-337,-327,-312,-293,-270,-244,-212,-170,-120,-69,-24,10,41,74,113,156,199,243,
+287,331,372,408,440,477,524,582,641,693,737,781,838,913,994,1067,1119,1153,1177,1202,
+1233,1273,1328,1400,1483,1553,1580,1549,1473,1395,1361,1391,1468,1547,1587,1573,1518,1447,1378,1318,
+1270,1236,1217,1207,1195,1173,1144,1123,1116,1114,1087,1010,883,733,596,493,414,337,249,158,
+87,51,41,33,5,-44,-101,-150,-184,-212,-241,-274,-303,-323,-332,-335,-337,-336,-330,-317,
+-299,-283,-278,-285,-306,-336,-372,-408,-436,-453,-459,-454,-441,-422,-394,-359,-322,-292,-272,-257,
+-237,-201,-145,-75,0,73,145,220,303,398,500,604,706,803,893,978,1058,1134,1207,1278,
+1348,1419,1492,1566,1640,1711,1781,1852,1928,2008,2088,2163,2227,2280,2326,2372,2422,2477,2534,2586,
+2627,2656,2672,2679,2681,2680,2679,2676,2669,2658,2641,2620,2597,2576,2562,2556,2554,2552,2545,2531,
+2510,2486,2459,2431,2404,2381,2362,2347,2331,2315,2298,2281,2265,2283,2259,2231,2201,2180,2174,2183,
+2200,2215,2227,2246,2282,2339,2407,2464,2495,2503,2504,2516,2547,2588,2627,2655,2675,2696,2724,2756,
+2786,2811,2836,2870,2919,2979,3042,3099,3148,3190,3228,3262,3293,3318,3341,3362,3383,3400,3411,3415,
+3412,3406,3399,3396,3396,3402,3410,3418,3424,3430,3447,3485,3551,3644,3753,3866,3978,4092,4210,4331,
+4446,4543,4613,4658,4685,4701,4710,4709,4696,4673,4647,4623,4607,4597,4593,4591,4588,4577,4552,4516,
+4486,4488,4540,4636,4739,4799,4782,4699,4602,4560,4616,4758,4929,5058,5100,5055,4954,4833,4713,4598,
+4490,4400,4339,4312,4304,4289,4247,4176,4091,4010,3942,3879,3809,3730,3650,3580,3524,3477,3426,3366,
+3302,3248,3219,3219,3246,3288,3331,3359,3366,3349,3318,3284,3257,3238,3221,3197,3165,3126,3088,3051,
+3015,2978,2940,2904,2872,2838,2795,2735,2661,2583,2512,2454,2406,2359,2304,2241,2173,2106,2045,1989,
+1934,1878,1814,1743,1664,1583,1503,1425,1345,1259,1166,1071,981,902,832,765,692,609,520,429,
+338,249,160,75,-1,-71,-137,-207,-288,-379,-473,-562,-642,-715,-787,-865,-951,-1041,-1128,-1203,
+-1265,-1317,-1370,-1433,-1508,-1588,-1662,-1728,-1788,-1848,-1911,-1975,-2033,-2085,-2134,-2188,-2246,-2299,-2339,-2365,
+-2389,-2423,-2471,-2521,-2555,-2564,-2555,-2544,-2547,-2565,-2589,-2605,-2610,-2610,-2610,-2614,-2618,-2616,-2609,-2599,
+-2589,-2580,-2568,-2554,-2539,-2526,-2511,-2491,-2462,-2424,-2387,-2360,-2344,-2336,-2325,-2304,-2272,-2231,-2185,-2136,
+-2087,-2040,-1997,-1960,-1924,-1883,-1835,-1784,-1741,-1714,-1710,-1721,-1736,-1741,-1729,-1700,-1664,-1631,-1606,-1591,
+-1579,-1564,-1541,-1508,-1467,-1422,-1378,-1339,-1311,-1295,-1289,-1289,-1294,-1299,-1304,-1302,-1287,-1254,-1206,-1153,
+-1109,-1082,-1071,-1066,-1059,-1050,-1041,-1034,-1024,-1002,-960,-900,-836,-780,-734,-688,-630,-556,-479,-424,
+-407,-421,-435,-408,-311,-147,49,233,371,455,500,525,535,523,471,378,261,153,83,63,
+82,115,138,140,124,99,74,53,32,5,-31,-78,-133,-193,-252,-301,-334,-350,-357,-366,
+-388,-423,-462,-496,-520,-537,-558,-591,-634,-680,-722,-756,-785,-810,-834,-854,-873,-893,-919,-950,
+-981,-1003,-1012,-1014,-1016,-1024,-1037,-1048,-1048,-1036,-1014,-990,-968,-946,-921,-889,-856,-828,-810,-803,
+-801,-803,-810,-825,-851,-884,-916,-943,-967,-996,-1038,-1089,-1139,-1173,-1186,-1186,-1186,-1200,-1228,-1262,
+-1290,-1307,-1316,-1323,-1337,-1362,-1394,-1429,-1459,-1482,-1495,-1500,-1499,-1498,-1504,-1521,-1548,-1577,-1595,-1594,
+-1575,-1548,-1525,-1513,-1506,-1496,-1475,-1446,-1419,-1404,-1400,-1399,-1392,-1374,-1347,-1316,-1285,-1255,-1226,-1202,
+-1185,-1174,-1165,-1155,-1140,-1123,-1107,-1096,-1086,-1074,-1058,-1041,-1026,-1013,-1002,-992,-981,-971,-962,-951,
+-938,-922,-906,-892,-881,-871,-860,-849,-843,-843,-849,-855,-857,-852,-843,-837,-835,-836,-836,-833,
+-830,-826,-825,-821,-812,-794,-770,-745,-724,-707,-689,-666,-637,-606,-580,-562,-549,-533,-510,-477,
+-443,-415,-396,-383,-369,-350,-327,-300,-267,-228,-181,-129,-78,-33,4,38,72,106,141,176,
+214,257,303,347,386,421,459,506,562,618,666,708,753,812,888,968,1036,1084,1116,1142,
+1171,1206,1248,1300,1368,1450,1527,1572,1563,1506,1434,1390,1398,1449,1510,1545,1536,1488,1418,1344,
+1280,1234,1212,1212,1221,1222,1207,1180,1157,1150,1147,1123,1052,934,793,662,558,472,382,280,
+176,95,52,39,30,5,-41,-99,-152,-194,-229,-264,-299,-327,-345,-352,-354,-356,-355,-348,
+-331,-310,-290,-280,-281,-292,-312,-338,-367,-394,-412,-416,-407,-389,-367,-345,-323,-304,-287,-274,
+-259,-235,-194,-133,-57,24,103,178,251,330,417,512,611,705,793,874,951,1029,1107,1185,
+1260,1331,1397,1462,1529,1601,1677,1755,1834,1914,1991,2064,2130,2187,2238,2285,2335,2390,2450,2511,
+2569,2618,2656,2682,2700,2709,2711,2709,2702,2691,2677,2659,2637,2614,2591,2572,2559,2551,2544,2536,
+2523,2505,2481,2454,2426,2401,2381,2366,2354,2343,2330,2316,2301,2283,2301,2272,2238,2205,2182,2174,
+2181,2192,2202,2214,2239,2291,2369,2454,2517,2540,2526,2502,2494,2516,2561,2607,2639,2655,2666,2683,
+2711,2745,2779,2813,2852,2900,2957,3017,3074,3122,3164,3201,3234,3263,3285,3304,3320,3338,3356,3372,
+3381,3383,3380,3377,3380,3389,3403,3415,3423,3430,3446,3484,3552,3647,3756,3863,3960,4052,4150,4259,
+4376,4485,4569,4620,4643,4649,4648,4643,4632,4612,4586,4561,4542,4532,4528,4526,4524,4518,4503,4477,
+4446,4427,4443,4508,4613,4722,4787,4778,4704,4615,4573,4617,4743,4904,5041,5111,5106,5039,4935,4808,
+4669,4532,4416,4341,4307,4299,4287,4251,4187,4109,4034,3968,3906,3839,3766,3695,3634,3586,3542,3490,
+3427,3361,3310,3292,3312,3366,3435,3498,3538,3546,3526,3490,3453,3423,3398,3370,3331,3280,3224,3171,
+3125,3082,3041,2999,2959,2921,2883,2838,2780,2710,2637,2571,2516,2469,2421,2367,2304,2235,2167,2103,
+2044,1988,1930,1866,1795,1716,1632,1545,1458,1370,1278,1185,1095,1012,941,879,817,749,670,583,
+492,400,310,225,145,74,10,-51,-119,-198,-286,-379,-468,-547,-619,-689,-766,-852,-946,-1037,
+-1116,-1180,-1232,-1284,-1346,-1422,-1503,-1579,-1645,-1705,-1763,-1825,-1888,-1945,-1996,-2043,-2094,-2149,-2204,-2250,
+-2287,-2323,-2366,-2418,-2466,-2497,-2505,-2498,-2494,-2505,-2531,-2559,-2578,-2586,-2588,-2591,-2597,-2599,-2592,-2577,
+-2561,-2549,-2541,-2533,-2522,-2508,-2494,-2479,-2459,-2430,-2393,-2356,-2330,-2318,-2313,-2302,-2276,-2236,-2188,-2142,
+-2101,-2061,-2021,-1982,-1944,-1910,-1874,-1831,-1783,-1737,-1708,-1703,-1721,-1744,-1754,-1741,-1707,-1665,-1629,-1608,
+-1598,-1591,-1582,-1565,-1539,-1500,-1448,-1386,-1323,-1273,-1247,-1249,-1271,-1301,-1326,-1340,-1341,-1327,-1302,-1269,
+-1234,-1206,-1188,-1177,-1168,-1158,-1146,-1137,-1131,-1121,-1097,-1053,-994,-936,-889,-849,-800,-728,-636,-549,
+-499,-502,-537,-558,-517,-391,-203,-3,159,260,308,328,338,335,301,227,119,5,-81,-122,
+-121,-96,-71,-59,-65,-81,-103,-125,-145,-164,-184,-210,-249,-306,-380,-462,-538,-594,-626,-639,
+-647,-661,-684,-710,-731,-743,-748,-757,-774,-802,-837,-872,-903,-930,-952,-969,-981,-992,-1005,-1026,
+-1052,-1077,-1095,-1103,-1105,-1109,-1121,-1138,-1152,-1153,-1140,-1116,-1091,-1071,-1057,-1043,-1024,-1000,-972,-946,
+-924,-906,-894,-890,-899,-920,-949,-976,-999,-1019,-1047,-1089,-1140,-1190,-1223,-1236,-1235,-1234,-1245,-1270,
+-1301,-1328,-1348,-1361,-1374,-1390,-1410,-1433,-1458,-1484,-1511,-1533,-1546,-1549,-1546,-1547,-1560,-1585,-1613,-1629,
+-1625,-1601,-1572,-1549,-1536,-1527,-1511,-1485,-1453,-1426,-1413,-1411,-1410,-1401,-1381,-1353,-1322,-1292,-1263,-1235,
+-1212,-1194,-1180,-1165,-1145,-1120,-1098,-1085,-1081,-1080,-1077,-1064,-1045,-1025,-1007,-993,-983,-975,-968,-960,
+-950,-936,-918,-900,-883,-869,-857,-846,-836,-833,-838,-848,-857,-859,-852,-842,-838,-841,-850,-855,
+-854,-845,-836,-830,-827,-823,-812,-794,-772,-751,-734,-716,-694,-666,-634,-606,-584,-569,-557,-543,
+-526,-507,-487,-466,-445,-421,-396,-367,-335,-295,-247,-194,-140,-91,-47,-6,33,72,107,136,
+164,195,235,282,329,371,408,447,492,542,589,629,665,709,769,842,914,968,999,1019,
+1043,1082,1136,1198,1264,1337,1418,1495,1550,1567,1547,1511,1490,1500,1534,1567,1576,1549,1491,1418,
+1344,1280,1236,1216,1217,1227,1229,1215,1189,1167,1157,1150,1124,1057,949,821,699,596,505,409,
+302,198,118,75,58,44,13,-35,-91,-139,-175,-205,-236,-268,-295,-312,-320,-324,-331,-337,
+-337,-324,-301,-274,-253,-242,-245,-260,-286,-317,-346,-364,-367,-356,-340,-326,-320,-318,-315,-307,
+-290,-263,-225,-171,-101,-18,70,157,236,310,384,464,550,640,726,803,874,942,1014,1093,
+1176,1258,1331,1395,1454,1514,1581,1657,1738,1821,1901,1974,2040,2100,2155,2208,2260,2314,2370,2427,
+2485,2541,2593,2639,2678,2707,2725,2731,2726,2714,2700,2687,2676,2666,2653,2638,2618,2597,2575,2553,
+2534,2516,2498,2478,2457,2434,2413,2397,2384,2375,2365,2353,2340,2323,2301,2321,2293,2258,2224,2200,
+2192,2199,2209,2218,2227,2250,2302,2381,2468,2534,2558,2543,2514,2503,2525,2571,2620,2651,2659,2658,
+2664,2687,2725,2768,2809,2847,2888,2934,2986,3039,3090,3135,3176,3211,3240,3262,3279,3294,3311,3329,
+3345,3355,3358,3357,3359,3367,3383,3400,3413,3421,3435,3468,3535,3633,3748,3859,3950,4022,4090,4172,
+4276,4391,4496,4568,4602,4606,4594,4577,4558,4534,4505,4477,4456,4449,4450,4454,4451,4440,4423,4403,
+4383,4368,4370,4402,4471,4569,4666,4727,4727,4673,4599,4550,4561,4632,4737,4840,4910,4933,4911,4849,
+4753,4635,4513,4409,4339,4305,4290,4271,4234,4177,4113,4050,3989,3927,3857,3785,3721,3672,3636,3601,
+3553,3491,3428,3386,3385,3429,3508,3600,3680,3727,3737,3718,3684,3650,3620,3588,3544,3482,3404,3323,
+3252,3195,3150,3107,3063,3015,2966,2918,2867,2812,2752,2691,2633,2580,2530,2476,2417,2353,2286,2221,
+2158,2097,2037,1975,1909,1837,1757,1670,1578,1485,1391,1300,1211,1127,1052,985,926,867,803,731,
+648,559,469,381,299,224,157,93,28,-42,-120,-204,-291,-374,-452,-524,-596,-672,-758,-852,
+-947,-1034,-1106,-1164,-1218,-1278,-1347,-1423,-1497,-1565,-1627,-1688,-1751,-1813,-1869,-1917,-1961,-2006,-2057,-2111,
+-2163,-2212,-2261,-2313,-2366,-2410,-2436,-2442,-2440,-2443,-2461,-2491,-2520,-2539,-2548,-2553,-2561,-2570,-2573,-2565,
+-2548,-2531,-2519,-2512,-2504,-2491,-2474,-2458,-2445,-2430,-2407,-2374,-2339,-2312,-2297,-2288,-2271,-2238,-2191,-2141,
+-2097,-2062,-2031,-1998,-1960,-1924,-1892,-1861,-1825,-1782,-1738,-1708,-1703,-1721,-1748,-1761,-1748,-1713,-1670,-1635,
+-1615,-1606,-1601,-1595,-1583,-1563,-1529,-1472,-1394,-1309,-1238,-1200,-1203,-1238,-1284,-1324,-1349,-1359,-1357,-1347,
+-1333,-1317,-1303,-1295,-1289,-1281,-1267,-1249,-1231,-1216,-1201,-1177,-1140,-1092,-1044,-1001,-955,-894,-807,-708,
+-628,-602,-637,-704,-745,-708,-579,-391,-202,-61,15,46,59,68,64,32,-36,-126,-209,-260,
+-274,-264,-249,-241,-241,-245,-248,-254,-264,-279,-292,-301,-308,-327,-375,-459,-571,-687,-784,-845,
+-875,-887,-897,-915,-938,-956,-964,-962,-957,-958,-970,-993,-1023,-1052,-1078,-1097,-1108,-1115,-1120,-1130,
+-1146,-1167,-1187,-1201,-1206,-1205,-1206,-1213,-1225,-1236,-1238,-1228,-1212,-1195,-1184,-1177,-1170,-1159,-1139,-1112,
+-1082,-1051,-1021,-997,-984,-986,-1001,-1023,-1045,-1063,-1081,-1107,-1147,-1195,-1240,-1271,-1284,-1286,-1289,-1301,
+-1324,-1349,-1372,-1390,-1409,-1429,-1450,-1467,-1479,-1488,-1502,-1526,-1556,-1584,-1600,-1603,-1602,-1607,-1624,-1646,
+-1659,-1654,-1633,-1606,-1584,-1570,-1557,-1536,-1506,-1472,-1443,-1426,-1417,-1408,-1395,-1375,-1351,-1326,-1300,-1272,
+-1242,-1215,-1194,-1176,-1156,-1130,-1100,-1074,-1059,-1057,-1062,-1064,-1058,-1042,-1022,-1003,-987,-975,-966,-961,
+-957,-952,-941,-923,-900,-879,-861,-848,-839,-834,-835,-842,-852,-859,-857,-848,-837,-833,-841,-856,
+-869,-872,-865,-853,-841,-834,-830,-825,-815,-802,-787,-771,-753,-732,-705,-675,-645,-619,-601,-591,
+-587,-584,-577,-561,-536,-504,-471,-440,-408,-372,-325,-268,-206,-149,-100,-58,-16,26,68,104,
+131,152,176,211,254,301,344,384,424,468,513,553,586,619,664,725,795,853,886,895,
+898,920,973,1054,1147,1240,1327,1410,1484,1542,1577,1591,1596,1607,1627,1645,1643,1610,1547,1469,
+1391,1323,1273,1240,1226,1228,1234,1234,1219,1194,1172,1158,1147,1118,1055,958,843,734,640,554,
+463,363,264,182,127,90,56,12,-38,-84,-116,-136,-154,-179,-212,-242,-262,-272,-279,-291,
+-307,-318,-315,-294,-260,-226,-202,-196,-207,-232,-263,-289,-302,-299,-286,-274,-270,-276,-286,-289,
+-277,-249,-210,-161,-105,-39,37,121,206,285,359,430,506,588,675,760,836,903,966,1032,
+1108,1192,1277,1355,1421,1476,1528,1585,1651,1726,1805,1881,1949,2010,2065,2119,2175,2234,2293,2351,
+2406,2457,2506,2555,2605,2652,2692,2718,2729,2727,2718,2709,2705,2706,2710,2711,2705,2689,2663,2630,
+2594,2562,2536,2516,2499,2483,2464,2443,2422,2404,2389,2376,2365,2354,2340,2321,2336,2315,2284,2252,
+2229,2223,2232,2247,2258,2267,2284,2322,2387,2463,2526,2556,2552,2535,2530,2553,2598,2645,2674,2680,
+2675,2679,2702,2741,2787,2826,2856,2883,2916,2958,3009,3064,3118,3165,3204,3235,3258,3276,3290,3304,
+3318,3330,3337,3340,3343,3350,3366,3388,3408,3424,3440,3466,3519,3606,3717,3831,3926,3993,4041,4093,
+4168,4268,4377,4470,4526,4544,4535,4514,4490,4463,4430,4395,4367,4356,4364,4383,4399,4400,4385,4363,
+4342,4330,4331,4348,4385,4445,4520,4594,4644,4653,4623,4571,4524,4505,4519,4559,4609,4653,4681,4684,
+4660,4608,4536,4459,4393,4346,4317,4292,4259,4214,4162,4109,4058,4003,3938,3865,3794,3739,3704,3683,
+3658,3617,3559,3501,3469,3480,3539,3632,3735,3822,3874,3888,3872,3841,3807,3773,3731,3671,3590,3494,
+3397,3315,3254,3208,3168,3123,3070,3013,2956,2901,2848,2797,2747,2697,2644,2588,2527,2462,2396,2332,
+2270,2210,2148,2084,2017,1947,1872,1790,1701,1606,1510,1417,1329,1248,1172,1101,1034,971,910,846,
+776,698,612,524,439,361,291,226,162,95,22,-53,-133,-213,-292,-370,-445,-518,-591,-671,
+-758,-850,-941,-1023,-1094,-1156,-1217,-1282,-1351,-1419,-1485,-1549,-1614,-1681,-1746,-1805,-1854,-1897,-1940,-1988,
+-2040,-2095,-2150,-2204,-2258,-2308,-2347,-2369,-2376,-2379,-2389,-2410,-2439,-2465,-2483,-2494,-2505,-2519,-2531,-2533,
+-2523,-2506,-2491,-2483,-2480,-2473,-2459,-2440,-2423,-2411,-2400,-2382,-2352,-2317,-2286,-2265,-2249,-2228,-2194,-2149,
+-2102,-2064,-2036,-2010,-1979,-1942,-1906,-1875,-1847,-1817,-1778,-1738,-1708,-1701,-1717,-1742,-1756,-1746,-1715,-1675,
+-1641,-1619,-1604,-1592,-1581,-1572,-1560,-1537,-1489,-1414,-1322,-1240,-1190,-1184,-1214,-1260,-1306,-1342,-1367,-1384,
+-1394,-1398,-1396,-1394,-1393,-1393,-1388,-1372,-1348,-1322,-1300,-1285,-1269,-1243,-1205,-1157,-1103,-1041,-965,-876,
+-790,-737,-743,-807,-891,-936,-894,-760,-573,-393,-269,-210,-197,-200,-205,-218,-251,-305,-364,-404,
+-414,-400,-382,-375,-380,-386,-384,-374,-366,-369,-381,-391,-387,-372,-367,-400,-486,-621,-775,-915,
+-1015,-1071,-1098,-1116,-1135,-1156,-1172,-1175,-1164,-1148,-1138,-1140,-1155,-1178,-1202,-1221,-1234,-1242,-1248,-1254,
+-1262,-1275,-1290,-1304,-1314,-1317,-1314,-1308,-1304,-1304,-1307,-1310,-1310,-1309,-1307,-1306,-1302,-1294,-1279,-1258,
+-1233,-1204,-1173,-1142,-1114,-1095,-1088,-1094,-1110,-1127,-1144,-1162,-1187,-1222,-1261,-1295,-1315,-1323,-1325,-1332,
+-1348,-1371,-1394,-1412,-1429,-1450,-1478,-1506,-1524,-1527,-1523,-1523,-1539,-1572,-1610,-1638,-1649,-1649,-1648,-1657,
+-1671,-1683,-1683,-1669,-1648,-1629,-1614,-1598,-1576,-1544,-1509,-1477,-1451,-1430,-1410,-1390,-1370,-1352,-1333,-1310,
+-1280,-1246,-1214,-1189,-1170,-1151,-1125,-1095,-1066,-1048,-1044,-1048,-1053,-1051,-1041,-1024,-1004,-984,-966,-953,
+-946,-945,-943,-936,-919,-894,-869,-850,-840,-837,-840,-845,-852,-859,-863,-861,-854,-845,-841,-848,
+-862,-878,-888,-888,-879,-866,-855,-848,-844,-840,-834,-825,-811,-793,-771,-745,-716,-685,-657,-636,
+-626,-626,-630,-629,-615,-587,-551,-514,-482,-451,-412,-359,-293,-223,-160,-111,-71,-34,5,46,
+80,105,123,145,175,214,259,302,345,389,435,479,515,546,582,631,695,760,807,824,
+819,817,846,916,1019,1133,1241,1334,1416,1488,1551,1601,1639,1669,1695,1712,1705,1663,1586,1487,
+1391,1314,1265,1240,1233,1237,1248,1257,1256,1241,1217,1193,1177,1163,1136,1083,1001,905,811,731,
+658,579,488,388,293,210,141,79,21,-27,-62,-79,-89,-104,-133,-171,-206,-227,-236,-242,
+-257,-283,-308,-319,-305,-270,-225,-186,-165,-164,-177,-195,-207,-207,-195,-179,-168,-168,-178,-188,
+-186,-167,-132,-88,-42,4,55,115,185,261,338,410,479,550,626,709,792,871,941,1004,
+1068,1137,1215,1297,1376,1444,1499,1547,1595,1652,1717,1789,1860,1924,1977,2024,2072,2126,2187,2253,
+2317,2374,2425,2471,2518,2568,2618,2661,2693,2712,2720,2723,2728,2737,2749,2760,2766,2763,2748,2722,
+2687,2648,2610,2579,2555,2538,2522,2503,2479,2451,2423,2398,2378,2364,2355,2348,2336,2344,2328,2304,
+2278,2260,2257,2270,2290,2307,2318,2332,2360,2408,2469,2523,2553,2555,2544,2541,2562,2602,2647,2680,
+2694,2700,2713,2741,2782,2823,2854,2872,2885,2907,2943,2994,3053,3113,3166,3210,3245,3270,3287,3299,
+3308,3315,3323,3330,3338,3349,3365,3387,3413,3438,3463,3491,3534,3600,3689,3788,3879,3947,3990,4025,
+4071,4142,4234,4326,4397,4435,4444,4436,4423,4406,4382,4348,4312,4287,4288,4313,4352,4385,4399,4393,
+4375,4359,4351,4356,4373,4402,4442,4492,4542,4581,4599,4592,4566,4534,4506,4490,4487,4494,4507,4519,
+4523,4512,4486,4451,4414,4383,4358,4332,4297,4251,4198,4146,4100,4055,4004,3942,3874,3815,3774,3754,
+3743,3724,3686,3633,3584,3560,3576,3634,3719,3813,3894,3947,3970,3964,3939,3903,3859,3804,3731,3641,
+3541,3444,3363,3303,3257,3217,3172,3119,3062,3006,2953,2905,2860,2814,2764,2710,2649,2584,2517,2450,
+2386,2325,2262,2195,2125,2052,1977,1899,1816,1726,1632,1536,1446,1363,1289,1219,1151,1082,1014,946,
+878,808,732,651,568,487,414,349,289,226,160,88,13,-62,-139,-218,-299,-378,-453,-524,
+-593,-667,-749,-837,-925,-1008,-1084,-1153,-1218,-1281,-1343,-1402,-1463,-1527,-1595,-1664,-1729,-1784,-1833,-1879,
+-1928,-1981,-2036,-2091,-2145,-2195,-2239,-2274,-2298,-2313,-2326,-2343,-2366,-2390,-2410,-2426,-2441,-2458,-2477,-2490,
+-2491,-2478,-2459,-2445,-2442,-2443,-2441,-2430,-2412,-2395,-2383,-2372,-2355,-2326,-2289,-2253,-2227,-2207,-2187,-2157,
+-2119,-2079,-2047,-2021,-1996,-1966,-1930,-1895,-1865,-1840,-1812,-1777,-1737,-1706,-1695,-1707,-1729,-1744,-1739,-1715,
+-1682,-1650,-1624,-1600,-1579,-1563,-1556,-1555,-1550,-1525,-1471,-1395,-1315,-1256,-1230,-1235,-1261,-1295,-1333,-1371,
+-1407,-1436,-1455,-1464,-1468,-1472,-1476,-1473,-1456,-1429,-1400,-1381,-1373,-1368,-1352,-1313,-1254,-1182,-1104,-1025,
+-951,-893,-871,-897,-962,-1030,-1049,-986,-841,-657,-491,-386,-351,-364,-396,-429,-461,-499,-539,-568,
+-573,-551,-517,-492,-487,-497,-506,-504,-494,-489,-498,-515,-524,-511,-479,-453,-469,-548,-688,-860,
+-1024,-1152,-1234,-1280,-1308,-1331,-1349,-1358,-1354,-1339,-1323,-1314,-1317,-1328,-1342,-1351,-1356,-1359,-1363,-1370,
+-1379,-1388,-1395,-1402,-1409,-1416,-1420,-1418,-1411,-1399,-1388,-1382,-1384,-1394,-1407,-1419,-1425,-1421,-1408,-1388,
+-1365,-1342,-1320,-1297,-1269,-1240,-1214,-1197,-1192,-1199,-1213,-1229,-1249,-1273,-1301,-1329,-1348,-1356,-1356,-1357,
+-1368,-1390,-1415,-1437,-1451,-1465,-1486,-1517,-1551,-1574,-1579,-1569,-1560,-1566,-1591,-1626,-1656,-1672,-1673,-1672,
+-1677,-1688,-1699,-1704,-1697,-1685,-1671,-1657,-1641,-1618,-1588,-1554,-1520,-1489,-1460,-1432,-1407,-1385,-1366,-1346,
+-1321,-1288,-1250,-1217,-1191,-1171,-1152,-1126,-1095,-1066,-1045,-1038,-1040,-1044,-1044,-1036,-1022,-1003,-980,-959,
+-941,-931,-929,-928,-922,-905,-880,-855,-838,-834,-839,-847,-854,-860,-865,-872,-878,-881,-881,-879,
+-880,-886,-896,-907,-912,-910,-901,-889,-878,-871,-869,-866,-860,-847,-828,-803,-775,-744,-712,-681,
+-658,-645,-645,-652,-655,-645,-620,-586,-552,-522,-492,-453,-397,-326,-251,-184,-133,-95,-62,-28,
+5,35,60,83,108,141,179,220,262,305,351,399,443,480,514,555,609,673,732,770,
+780,779,793,844,936,1049,1160,1253,1329,1397,1467,1539,1606,1663,1706,1733,1736,1704,1633,1530,
+1415,1316,1250,1220,1219,1233,1253,1272,1284,1282,1266,1238,1210,1190,1175,1154,1112,1046,966,887,
+819,760,696,618,523,420,319,230,152,89,40,6,-14,-32,-55,-86,-120,-144,-154,-155,
+-160,-181,-218,-260,-285,-282,-251,-202,-153,-117,-99,-93,-92,-88,-78,-63,-50,-46,-52,-64,
+-72,-66,-43,-6,37,81,121,164,215,278,351,428,502,568,628,687,751,819,890,961,
+1029,1093,1159,1227,1299,1370,1437,1496,1548,1599,1654,1717,1785,1851,1909,1955,1993,2030,2076,2133,
+2200,2268,2331,2386,2436,2484,2535,2584,2628,2662,2686,2704,2722,2742,2764,2783,2794,2795,2786,2770,
+2748,2720,2688,2654,2621,2592,2570,2551,2532,2509,2483,2453,2423,2396,2376,2362,2354,2344,2355,2340,
+2324,2308,2298,2300,2314,2335,2355,2370,2385,2409,2446,2491,2530,2548,2543,2527,2520,2535,2572,2620,
+2662,2693,2716,2742,2776,2816,2852,2875,2886,2895,2913,2947,2997,3056,3116,3170,3217,3256,3286,3306,
+3317,3322,3328,3337,3352,3370,3390,3410,3432,3456,3484,3518,3561,3617,3685,3761,3833,3892,3933,3962,
+3994,4040,4105,4179,4245,4290,4314,4325,4332,4340,4341,4327,4298,4265,4247,4259,4300,4355,4405,4435,
+4441,4433,4421,4413,4412,4417,4430,4452,4483,4520,4554,4579,4589,4585,4570,4550,4530,4514,4502,4495,
+4489,4479,4462,4440,4415,4394,4375,4355,4326,4284,4233,4178,4128,4084,4040,3990,3935,3882,3842,3820,
+3810,3801,3780,3744,3703,3671,3663,3682,3724,3781,3845,3908,3962,4001,4019,4013,3982,3929,3857,3770,
+3673,3576,3487,3414,3356,3310,3266,3218,3167,3115,3067,3023,2982,2938,2889,2833,2773,2709,2643,2578,
+2513,2447,2380,2310,2236,2159,2081,2004,1926,1845,1758,1666,1571,1481,1400,1328,1261,1195,1126,1055,
+982,912,842,772,699,624,551,482,419,358,294,226,153,79,4,-71,-151,-233,-315,-393,
+-463,-529,-595,-667,-749,-836,-924,-1007,-1083,-1151,-1212,-1266,-1318,-1371,-1431,-1498,-1570,-1641,-1704,-1761,
+-1813,-1866,-1920,-1975,-2029,-2078,-2123,-2162,-2197,-2226,-2253,-2278,-2303,-2326,-2345,-2359,-2372,-2389,-2412,-2436,
+-2452,-2453,-2440,-2422,-2411,-2411,-2417,-2420,-2411,-2395,-2378,-2365,-2354,-2336,-2308,-2271,-2234,-2204,-2182,-2160,
+-2133,-2098,-2062,-2031,-2005,-1980,-1951,-1919,-1889,-1865,-1844,-1819,-1785,-1745,-1710,-1695,-1702,-1722,-1739,-1741,
+-1724,-1695,-1664,-1634,-1606,-1581,-1564,-1559,-1568,-1580,-1581,-1558,-1510,-1448,-1387,-1340,-1311,-1300,-1308,-1334,
+-1375,-1422,-1464,-1493,-1509,-1518,-1526,-1533,-1531,-1516,-1490,-1464,-1450,-1450,-1451,-1434,-1389,-1318,-1236,-1158,
+-1093,-1043,-1009,-999,-1016,-1052,-1082,-1069,-991,-852,-689,-552,-477,-470,-508,-562,-609,-646,-674,-695,
+-702,-689,-658,-624,-601,-598,-609,-622,-629,-633,-644,-666,-691,-701,-685,-649,-618,-628,-700,-830,
+-993,-1152,-1280,-1369,-1425,-1462,-1489,-1507,-1513,-1507,-1496,-1487,-1487,-1494,-1502,-1503,-1495,-1482,-1474,-1475,
+-1484,-1495,-1501,-1502,-1500,-1500,-1505,-1512,-1516,-1512,-1500,-1486,-1476,-1476,-1487,-1504,-1520,-1528,-1525,-1510,
+-1489,-1468,-1449,-1434,-1416,-1393,-1362,-1330,-1302,-1285,-1281,-1288,-1302,-1320,-1342,-1365,-1385,-1397,-1401,-1402,
+-1407,-1422,-1447,-1474,-1492,-1501,-1507,-1522,-1550,-1586,-1616,-1629,-1625,-1614,-1609,-1619,-1639,-1660,-1673,-1679,
+-1682,-1688,-1699,-1709,-1715,-1713,-1708,-1701,-1691,-1677,-1655,-1625,-1592,-1560,-1531,-1503,-1475,-1446,-1418,-1391,
+-1363,-1331,-1295,-1259,-1227,-1202,-1179,-1155,-1124,-1090,-1058,-1037,-1027,-1026,-1027,-1024,-1016,-1004,-988,-969,
+-950,-934,-923,-918,-915,-908,-892,-869,-848,-836,-836,-844,-854,-860,-864,-870,-881,-898,-915,-927,
+-930,-927,-924,-924,-928,-933,-935,-930,-919,-907,-899,-894,-892,-888,-876,-857,-830,-799,-765,-729,
+-696,-669,-653,-651,-658,-663,-658,-640,-612,-582,-554,-525,-486,-433,-365,-292,-224,-168,-126,-93,
+-64,-37,-10,17,48,84,122,160,195,230,268,314,362,409,450,490,536,593,653,701,
+726,733,744,787,874,993,1114,1209,1270,1310,1353,1415,1494,1577,1648,1696,1719,1713,1673,1600,
+1502,1399,1314,1259,1236,1237,1250,1268,1284,1294,1292,1274,1243,1210,1185,1168,1150,1116,1059,986,
+913,852,805,761,705,632,545,455,370,296,231,172,119,73,35,6,-11,-16,-9,2,
+9,0,-35,-86,-138,-171,-174,-148,-105,-58,-19,7,26,39,50,58,61,56,42,23,
+3,-6,0,26,68,118,168,216,262,313,375,447,526,601,665,714,753,791,836,893,
+961,1036,1110,1177,1239,1297,1356,1416,1479,1541,1603,1666,1729,1793,1852,1904,1945,1979,2013,2052,
+2103,2163,2226,2286,2341,2392,2444,2498,2550,2595,2629,2655,2677,2702,2731,2760,2782,2791,2787,2774,
+2759,2745,2729,2710,2685,2654,2623,2594,2570,2551,2535,2517,2495,2469,2440,2411,2387,2369,2355,2382,
+2368,2358,2351,2351,2358,2373,2390,2405,2418,2431,2452,2481,2511,2531,2531,2514,2491,2482,2499,2540,
+2593,2645,2686,2719,2751,2787,2825,2859,2884,2901,2918,2943,2980,3027,3078,3129,3178,3225,3269,3306,
+3331,3345,3353,3362,3380,3405,3432,3454,3471,3485,3503,3532,3576,3630,3690,3750,3805,3849,3884,3912,
+3941,3977,4023,4074,4122,4157,4180,4196,4216,4242,4270,4288,4285,4266,4245,4241,4266,4319,4382,4438,
+4474,4487,4485,4476,4466,4457,4451,4451,4461,4483,4514,4548,4576,4594,4599,4594,4582,4568,4553,4539,
+4526,4510,4491,4466,4438,4410,4382,4356,4327,4292,4249,4203,4157,4114,4070,4022,3969,3918,3877,3853,
+3842,3834,3818,3792,3764,3745,3745,3761,3785,3807,3826,3849,3885,3938,3998,4049,4072,4057,4003,3919,
+3817,3713,3617,3536,3474,3424,3379,3332,3279,3224,3173,3130,3093,3056,3012,2957,2893,2824,2756,2691,
+2627,2563,2496,2425,2352,2275,2197,2119,2043,1966,1887,1804,1714,1621,1529,1443,1368,1299,1234,1168,
+1098,1028,959,894,831,767,700,632,563,494,426,354,280,204,128,53,-19,-94,-171,-251,
+-330,-405,-476,-545,-617,-692,-772,-854,-935,-1011,-1081,-1143,-1197,-1245,-1295,-1352,-1417,-1490,-1564,-1634,
+-1697,-1755,-1809,-1863,-1915,-1964,-2009,-2048,-2084,-2119,-2153,-2187,-2220,-2250,-2273,-2289,-2299,-2311,-2329,-2356,
+-2384,-2404,-2409,-2403,-2393,-2389,-2395,-2405,-2409,-2402,-2385,-2367,-2353,-2340,-2325,-2300,-2268,-2233,-2202,-2174,
+-2147,-2116,-2080,-2045,-2015,-1990,-1966,-1940,-1912,-1888,-1869,-1852,-1831,-1799,-1760,-1724,-1705,-1708,-1727,-1746,
+-1752,-1738,-1709,-1674,-1641,-1611,-1587,-1572,-1569,-1580,-1599,-1616,-1619,-1602,-1566,-1515,-1459,-1405,-1365,-1348,
+-1358,-1393,-1440,-1484,-1516,-1535,-1547,-1560,-1571,-1574,-1564,-1543,-1522,-1512,-1510,-1505,-1481,-1430,-1359,-1287,
+-1227,-1182,-1147,-1114,-1086,-1070,-1067,-1066,-1042,-977,-871,-751,-655,-611,-625,-675,-731,-770,-786,-786,
+-779,-768,-752,-733,-715,-706,-711,-725,-743,-761,-781,-809,-842,-872,-886,-877,-856,-844,-868,-940,
+-1055,-1187,-1310,-1408,-1479,-1531,-1575,-1613,-1642,-1657,-1658,-1652,-1648,-1649,-1652,-1651,-1639,-1620,-1599,-1588,
+-1589,-1600,-1611,-1615,-1610,-1602,-1597,-1599,-1608,-1615,-1617,-1611,-1600,-1590,-1587,-1590,-1600,-1610,-1615,-1613,
+-1603,-1587,-1569,-1553,-1540,-1525,-1504,-1476,-1442,-1408,-1383,-1368,-1364,-1369,-1379,-1394,-1411,-1429,-1444,-1454,
+-1464,-1477,-1497,-1522,-1544,-1555,-1556,-1552,-1556,-1575,-1607,-1640,-1663,-1671,-1666,-1659,-1655,-1658,-1664,-1671,
+-1678,-1686,-1696,-1707,-1716,-1720,-1722,-1723,-1724,-1721,-1710,-1689,-1659,-1626,-1596,-1571,-1548,-1523,-1493,-1458,
+-1420,-1382,-1344,-1307,-1275,-1246,-1221,-1193,-1161,-1123,-1085,-1052,-1030,-1018,-1013,-1007,-998,-987,-976,-965,
+-953,-939,-925,-913,-905,-899,-893,-882,-867,-854,-847,-849,-857,-866,-872,-876,-882,-895,-915,-938,
+-957,-965,-964,-958,-952,-951,-952,-953,-950,-941,-930,-919,-913,-909,-905,-896,-880,-856,-825,-789,
+-751,-713,-683,-663,-657,-660,-665,-664,-651,-629,-603,-575,-547,-512,-466,-408,-342,-274,-211,-160,
+-121,-92,-69,-45,-14,24,69,110,144,170,196,229,274,325,376,423,469,522,581,636,
+672,683,683,704,771,891,1039,1173,1263,1302,1316,1337,1386,1462,1546,1614,1655,1668,1655,1621,
+1567,1497,1422,1356,1306,1276,1261,1258,1264,1278,1293,1301,1293,1269,1238,1212,1195,1179,1150,1100,
+1031,960,901,861,832,799,752,691,622,554,486,414,334,249,169,108,78,81,107,140,
+164,165,138,89,34,-10,-31,-26,0,36,75,110,139,162,180,190,187,170,141,103,
+67,39,28,40,75,127,187,247,299,344,385,432,489,557,629,694,746,782,810,844,
+895,965,1050,1138,1215,1277,1327,1373,1424,1485,1555,1627,1695,1757,1811,1858,1901,1940,1978,2016,
+2057,2103,2152,2202,2250,2297,2345,2398,2455,2511,2560,2598,2626,2647,2670,2697,2724,2744,2754,2753,
+2746,2739,2736,2736,2731,2719,2696,2666,2634,2606,2585,2570,2557,2541,2520,2491,2459,2428,2401,2382,
+2434,2419,2410,2408,2412,2423,2435,2446,2452,2456,2463,2477,2497,2515,2521,2510,2488,2468,2468,2494,
+2543,2601,2652,2691,2720,2748,2782,2821,2862,2899,2932,2966,3004,3044,3085,3124,3162,3201,3244,3289,
+3329,3359,3376,3389,3407,3433,3465,3494,3513,3522,3529,3547,3582,3633,3691,3744,3784,3813,3837,3864,
+3898,3939,3984,4025,4056,4076,4085,4092,4107,4134,4172,4211,4239,4250,4250,4253,4272,4314,4372,4433,
+4482,4512,4524,4524,4518,4509,4498,4486,4480,4484,4501,4528,4557,4582,4596,4598,4591,4578,4564,4550,
+4537,4524,4509,4489,4465,4437,4406,4372,4335,4294,4252,4212,4176,4143,4109,4067,4015,3957,3904,3865,
+3844,3831,3816,3791,3764,3747,3756,3788,3830,3860,3864,3847,3828,3832,3872,3939,4010,4058,4063,4021,
+3940,3840,3739,3651,3584,3538,3503,3468,3422,3364,3299,3237,3186,3145,3108,3064,3008,2941,2868,2797,
+2729,2663,2596,2527,2457,2387,2317,2247,2174,2098,2019,1938,1854,1766,1675,1584,1495,1414,1341,1274,
+1210,1146,1081,1017,955,895,834,769,700,626,550,473,395,317,238,162,89,19,-48,-117,
+-189,-266,-344,-424,-502,-577,-650,-721,-792,-864,-937,-1009,-1076,-1136,-1190,-1241,-1296,-1358,-1428,-1501,
+-1573,-1640,-1700,-1755,-1805,-1852,-1896,-1937,-1976,-2013,-2048,-2084,-2119,-2152,-2181,-2204,-2220,-2233,-2247,-2267,
+-2292,-2319,-2340,-2350,-2353,-2354,-2361,-2374,-2388,-2394,-2387,-2370,-2350,-2334,-2321,-2307,-2288,-2263,-2233,-2201,
+-2170,-2138,-2103,-2069,-2039,-2015,-1995,-1973,-1948,-1919,-1892,-1872,-1856,-1837,-1809,-1773,-1738,-1718,-1719,-1736,
+-1755,-1761,-1747,-1716,-1677,-1641,-1613,-1593,-1582,-1579,-1585,-1599,-1617,-1632,-1636,-1623,-1590,-1540,-1485,-1437,
+-1412,-1415,-1443,-1482,-1518,-1543,-1557,-1568,-1582,-1597,-1607,-1606,-1596,-1583,-1572,-1563,-1546,-1511,-1460,-1403,
+-1353,-1315,-1282,-1240,-1183,-1118,-1065,-1038,-1031,-1026,-996,-932,-850,-782,-756,-777,-828,-879,-905,-900,
+-875,-846,-824,-813,-810,-812,-819,-832,-851,-877,-909,-947,-989,-1031,-1065,-1084,-1090,-1095,-1115,-1162,
+-1238,-1329,-1417,-1487,-1536,-1574,-1615,-1665,-1720,-1770,-1804,-1817,-1814,-1803,-1791,-1778,-1761,-1741,-1720,-1704,
+-1700,-1708,-1721,-1732,-1734,-1728,-1718,-1712,-1713,-1718,-1724,-1728,-1727,-1722,-1715,-1707,-1700,-1695,-1694,-1695,
+-1696,-1694,-1686,-1672,-1657,-1642,-1627,-1610,-1588,-1560,-1529,-1501,-1478,-1464,-1456,-1454,-1457,-1465,-1478,-1494,
+-1510,-1527,-1545,-1564,-1583,-1597,-1602,-1597,-1587,-1582,-1590,-1612,-1642,-1671,-1691,-1700,-1700,-1695,-1687,-1681,
+-1678,-1680,-1688,-1699,-1711,-1720,-1726,-1731,-1737,-1745,-1749,-1744,-1725,-1697,-1664,-1634,-1610,-1589,-1565,-1534,
+-1495,-1452,-1408,-1367,-1330,-1298,-1269,-1241,-1210,-1174,-1135,-1097,-1066,-1043,-1028,-1014,-1000,-985,-971,-961,
+-953,-944,-932,-916,-899,-885,-878,-875,-874,-872,-870,-869,-873,-882,-893,-902,-910,-918,-928,-941,
+-957,-972,-982,-986,-985,-981,-977,-975,-973,-970,-963,-953,-941,-930,-921,-914,-905,-893,-874,-847,
+-813,-775,-736,-703,-680,-668,-666,-666,-664,-655,-638,-616,-592,-566,-537,-500,-452,-393,-326,-258,
+-198,-152,-122,-101,-78,-44,0,47,87,114,132,152,186,235,293,348,397,447,504,568,
+626,661,667,664,685,761,893,1055,1201,1296,1337,1348,1365,1410,1477,1546,1593,1609,1598,1572,
+1540,1501,1457,1406,1355,1307,1269,1242,1232,1240,1267,1303,1334,1348,1341,1319,1298,1285,1275,1257,
+1220,1164,1101,1046,1007,979,950,909,855,795,734,669,593,501,395,292,214,176,178,204,
+231,239,218,176,126,87,70,77,103,141,182,222,261,298,329,349,353,336,298,245,
+188,139,108,102,125,171,234,301,360,405,434,453,473,503,551,615,684,749,802,844,
+885,936,1007,1095,1189,1274,1340,1387,1424,1466,1520,1588,1662,1731,1789,1834,1869,1903,1939,1979,
+2022,2065,2108,2150,2190,2230,2271,2315,2366,2422,2479,2532,2574,2605,2627,2646,2665,2684,2702,2714,
+2721,2725,2731,2741,2753,2762,2762,2750,2728,2701,2672,2647,2626,2607,2588,2565,2538,2509,2481,2455,
+2434,2507,2488,2471,2462,2463,2472,2482,2487,2485,2479,2476,2482,2497,2511,2516,2507,2492,2485,2498,
+2535,2590,2645,2689,2718,2740,2765,2801,2847,2899,2951,3000,3047,3092,3131,3163,3190,3215,3245,3282,
+3323,3360,3387,3405,3421,3443,3475,3509,3535,3548,3553,3562,3589,3636,3693,3742,3772,3782,3784,3797,
+3831,3885,3947,4000,4033,4044,4040,4034,4036,4053,4086,4128,4170,4207,4237,4266,4300,4346,4401,4459,
+4509,4545,4565,4574,4576,4575,4572,4564,4555,4547,4547,4557,4574,4593,4607,4609,4598,4579,4556,4535,
+4517,4502,4490,4476,4460,4441,4420,4394,4363,4324,4278,4232,4190,4158,4133,4107,4070,4020,3962,3907,
+3866,3840,3821,3796,3765,3737,3729,3752,3801,3855,3885,3878,3838,3791,3765,3776,3821,3880,3928,3946,
+3928,3878,3809,3737,3674,3629,3603,3586,3566,3528,3468,3393,3315,3245,3190,3143,3097,3044,2981,2914,
+2844,2775,2704,2631,2558,2488,2424,2363,2302,2233,2155,2068,1979,1891,1806,1722,1636,1549,1465,1388,
+1319,1256,1196,1136,1075,1013,950,883,813,737,658,579,501,427,353,279,205,131,61,-5,
+-70,-137,-209,-286,-368,-449,-527,-597,-662,-725,-792,-863,-939,-1013,-1081,-1141,-1193,-1244,-1298,-1359,
+-1426,-1497,-1566,-1630,-1685,-1733,-1776,-1817,-1860,-1904,-1949,-1991,-2028,-2060,-2088,-2113,-2135,-2155,-2174,-2194,
+-2216,-2238,-2260,-2278,-2289,-2297,-2306,-2319,-2337,-2353,-2362,-2360,-2347,-2330,-2313,-2298,-2283,-2266,-2244,-2220,
+-2192,-2162,-2129,-2096,-2068,-2046,-2031,-2018,-1999,-1970,-1935,-1900,-1873,-1853,-1835,-1812,-1781,-1750,-1731,-1729,
+-1743,-1760,-1766,-1753,-1722,-1685,-1652,-1630,-1619,-1613,-1611,-1612,-1617,-1628,-1641,-1650,-1646,-1625,-1588,-1547,
+-1512,-1497,-1504,-1529,-1557,-1578,-1588,-1590,-1593,-1602,-1616,-1630,-1638,-1639,-1635,-1626,-1611,-1584,-1543,-1496,
+-1454,-1422,-1395,-1357,-1295,-1208,-1116,-1050,-1026,-1041,-1066,-1066,-1025,-955,-888,-856,-872,-921,-973,-1001,
+-997,-971,-942,-923,-920,-928,-941,-955,-973,-1000,-1041,-1094,-1155,-1218,-1274,-1316,-1343,-1363,-1387,-1426,
+-1482,-1549,-1611,-1652,-1669,-1672,-1679,-1706,-1759,-1829,-1898,-1948,-1971,-1967,-1945,-1915,-1883,-1853,-1828,-1811,
+-1805,-1811,-1824,-1839,-1849,-1851,-1848,-1843,-1839,-1837,-1837,-1838,-1839,-1841,-1841,-1837,-1825,-1807,-1789,-1777,
+-1775,-1781,-1788,-1788,-1778,-1761,-1742,-1726,-1712,-1698,-1680,-1656,-1631,-1607,-1587,-1571,-1559,-1550,-1545,-1546,
+-1552,-1563,-1575,-1588,-1600,-1611,-1619,-1622,-1619,-1611,-1604,-1602,-1611,-1631,-1657,-1685,-1709,-1724,-1727,-1720,
+-1707,-1693,-1686,-1688,-1699,-1713,-1726,-1736,-1744,-1752,-1761,-1768,-1767,-1756,-1733,-1705,-1677,-1651,-1626,-1598,
+-1565,-1527,-1485,-1442,-1400,-1361,-1323,-1287,-1253,-1220,-1188,-1156,-1126,-1099,-1074,-1051,-1029,-1008,-989,-975,
+-966,-959,-950,-934,-912,-889,-871,-863,-866,-875,-886,-894,-900,-906,-916,-930,-947,-963,-976,-983,
+-987,-990,-995,-1002,-1010,-1014,-1013,-1009,-1003,-997,-994,-990,-982,-971,-955,-938,-924,-912,-900,-884,
+-861,-830,-794,-757,-725,-701,-684,-675,-669,-663,-655,-644,-629,-610,-589,-563,-530,-488,-434,-370,
+-303,-243,-197,-166,-143,-117,-79,-30,17,53,74,88,111,152,209,271,325,370,417,477,
+552,626,678,699,702,721,785,903,1049,1185,1279,1327,1351,1382,1434,1500,1556,1581,1569,1532,
+1486,1444,1407,1371,1331,1287,1244,1210,1191,1195,1223,1273,1332,1383,1410,1411,1393,1372,1360,1356,
+1350,1331,1295,1249,1204,1165,1130,1089,1036,974,912,857,805,747,672,579,480,397,343,320,
+317,313,296,263,225,195,185,197,227,267,315,366,421,477,526,562,576,563,524,464,
+392,322,266,234,235,265,319,384,447,500,537,558,571,584,606,644,700,769,843,910,
+965,1010,1054,1107,1176,1256,1337,1404,1453,1487,1520,1561,1618,1684,1750,1807,1849,1882,1912,1946,
+1983,2023,2063,2101,2139,2179,2222,2267,2315,2364,2414,2464,2512,2555,2590,2616,2635,2650,2665,2680,
+2695,2709,2724,2740,2759,2778,2794,2803,2801,2788,2767,2743,2717,2692,2667,2641,2615,2590,2568,2547,
+2528,2507,2580,2554,2527,2507,2499,2503,2510,2511,2504,2491,2482,2485,2500,2520,2533,2536,2533,2537,
+2560,2602,2655,2706,2744,2772,2796,2829,2876,2934,2997,3057,3109,3154,3191,3220,3241,3258,3277,3303,
+3336,3371,3401,3421,3435,3452,3478,3511,3543,3563,3571,3576,3594,3635,3692,3746,3776,3773,3749,3730,
+3741,3793,3872,3952,4009,4031,4025,4007,3998,4006,4033,4073,4118,4165,4213,4264,4320,4380,4442,4501,
+4551,4591,4620,4638,4649,4656,4659,4659,4655,4650,4644,4642,4644,4650,4654,4651,4637,4612,4578,4543,
+4511,4488,4471,4457,4443,4428,4411,4394,4377,4355,4323,4281,4232,4185,4147,4119,4094,4063,4022,3971,
+3923,3884,3857,3834,3807,3774,3745,3734,3750,3789,3833,3858,3850,3812,3761,3719,3699,3703,3722,3746,
+3766,3776,3775,3762,3740,3714,3691,3678,3670,3660,3632,3580,3504,3416,3329,3253,3187,3128,3071,3013,
+2954,2894,2831,2761,2685,2606,2531,2465,2406,2347,2279,2196,2102,2006,1916,1833,1756,1679,1598,1515,
+1436,1364,1300,1243,1186,1127,1064,995,922,844,763,681,604,532,466,401,333,260,183,106,
+33,-34,-100,-167,-239,-315,-393,-468,-537,-601,-663,-729,-800,-876,-953,-1025,-1088,-1140,-1186,-1232,
+-1284,-1344,-1412,-1482,-1548,-1605,-1653,-1695,-1738,-1785,-1839,-1894,-1945,-1986,-2016,-2039,-2059,-2081,-2104,-2129,
+-2152,-2175,-2195,-2214,-2231,-2245,-2256,-2267,-2279,-2294,-2310,-2323,-2331,-2330,-2321,-2307,-2287,-2266,-2244,-2222,
+-2201,-2179,-2153,-2124,-2095,-2070,-2052,-2041,-2032,-2015,-1986,-1948,-1908,-1877,-1855,-1838,-1820,-1796,-1771,-1752,
+-1748,-1757,-1769,-1774,-1764,-1740,-1712,-1688,-1675,-1671,-1671,-1671,-1671,-1672,-1676,-1683,-1685,-1678,-1659,-1631,
+-1604,-1589,-1589,-1604,-1625,-1640,-1645,-1640,-1632,-1626,-1628,-1636,-1646,-1656,-1664,-1668,-1665,-1650,-1619,-1576,
+-1530,-1492,-1463,-1433,-1385,-1311,-1219,-1135,-1090,-1097,-1141,-1187,-1196,-1152,-1071,-990,-944,-948,-991,-1044,
+-1080,-1090,-1081,-1069,-1066,-1073,-1086,-1099,-1111,-1132,-1168,-1228,-1308,-1399,-1489,-1565,-1621,-1656,-1681,-1707,
+-1742,-1786,-1831,-1863,-1871,-1857,-1835,-1825,-1842,-1890,-1960,-2030,-2084,-2108,-2103,-2077,-2038,-1997,-1960,-1931,
+-1915,-1912,-1920,-1934,-1948,-1958,-1963,-1964,-1964,-1962,-1959,-1953,-1948,-1946,-1948,-1951,-1947,-1932,-1906,-1879,
+-1860,-1855,-1864,-1878,-1883,-1876,-1858,-1836,-1818,-1806,-1796,-1784,-1766,-1746,-1726,-1709,-1694,-1679,-1663,-1646,
+-1631,-1621,-1617,-1618,-1620,-1623,-1627,-1631,-1635,-1638,-1636,-1631,-1624,-1621,-1625,-1641,-1667,-1698,-1725,-1740,
+-1739,-1726,-1707,-1693,-1691,-1703,-1722,-1742,-1756,-1764,-1768,-1771,-1773,-1773,-1769,-1757,-1739,-1714,-1686,-1654,
+-1620,-1584,-1548,-1512,-1474,-1434,-1390,-1344,-1299,-1258,-1225,-1200,-1178,-1156,-1132,-1103,-1072,-1042,-1016,-997,
+-985,-978,-971,-960,-941,-918,-895,-878,-872,-879,-894,-911,-924,-933,-939,-949,-964,-985,-1008,-1025,
+-1033,-1033,-1028,-1027,-1030,-1038,-1044,-1043,-1036,-1026,-1018,-1015,-1015,-1012,-1003,-985,-963,-942,-925,-910,
+-894,-871,-842,-808,-774,-745,-722,-704,-688,-675,-665,-656,-649,-641,-628,-608,-582,-549,-507,-457,
+-401,-343,-291,-250,-219,-191,-157,-111,-58,-11,21,40,56,85,134,196,257,303,339,380,
+445,535,634,715,761,778,794,838,921,1029,1134,1210,1258,1294,1341,1407,1480,1535,1552,1529,
+1480,1425,1376,1336,1298,1259,1219,1184,1163,1164,1190,1239,1302,1365,1412,1431,1421,1393,1362,1341,
+1331,1326,1316,1295,1268,1239,1210,1177,1133,1077,1015,960,921,896,872,834,775,699,623,561,
+519,493,475,457,441,430,429,438,454,475,502,542,596,664,732,785,809,799,758,694,
+618,540,471,419,394,398,429,480,536,588,632,670,706,744,786,830,878,931,991,1056,
+1117,1167,1201,1223,1245,1279,1332,1399,1468,1524,1563,1590,1616,1652,1699,1753,1805,1850,1888,1923,
+1959,1995,2030,2062,2093,2127,2169,2219,2274,2328,2377,2420,2458,2496,2532,2566,2595,2618,2637,2654,
+2672,2691,2711,2731,2752,2774,2797,2817,2830,2832,2824,2808,2790,2770,2749,2726,2700,2674,2650,2632,
+2617,2601,2580,2631,2604,2574,2549,2535,2534,2537,2536,2526,2511,2501,2505,2525,2551,2573,2584,2590,
+2600,2624,2665,2716,2766,2809,2846,2886,2936,2999,3068,3135,3192,3234,3265,3285,3300,3311,3324,3343,
+3369,3401,3432,3455,3469,3480,3498,3526,3561,3589,3604,3607,3612,3636,3684,3742,3785,3792,3760,3712,
+3684,3702,3771,3867,3955,4006,4015,3995,3974,3972,3995,4037,4086,4138,4191,4250,4317,4388,4458,4521,
+4575,4621,4661,4697,4726,4745,4754,4754,4749,4743,4739,4736,4733,4728,4721,4711,4694,4668,4632,4589,
+4544,4506,4479,4462,4449,4434,4415,4393,4374,4359,4344,4322,4288,4241,4190,4143,4106,4077,4049,4015,
+3974,3933,3899,3874,3853,3831,3802,3772,3750,3745,3757,3778,3793,3792,3775,3744,3708,3673,3642,3621,
+3615,3630,3664,3709,3752,3780,3787,3778,3764,3753,3741,3722,3683,3621,3538,3444,3348,3257,3172,3095,
+3029,2973,2924,2875,2816,2744,2662,2579,2503,2436,2372,2301,2218,2124,2027,1937,1858,1786,1715,1640,
+1560,1480,1407,1341,1282,1226,1167,1103,1033,957,877,796,715,640,571,507,444,376,301,221,
+139,61,-9,-75,-138,-204,-273,-345,-417,-487,-554,-619,-684,-753,-824,-896,-965,-1030,-1086,-1137,
+-1184,-1234,-1291,-1354,-1421,-1486,-1543,-1592,-1636,-1681,-1734,-1793,-1853,-1907,-1949,-1977,-1997,-2016,-2038,-2063,
+-2088,-2110,-2130,-2149,-2170,-2194,-2216,-2235,-2247,-2255,-2262,-2274,-2290,-2309,-2323,-2326,-2316,-2292,-2262,-2231,
+-2206,-2187,-2171,-2152,-2128,-2100,-2073,-2052,-2039,-2029,-2014,-1991,-1960,-1926,-1898,-1878,-1862,-1846,-1827,-1805,
+-1789,-1781,-1783,-1789,-1790,-1781,-1765,-1747,-1733,-1726,-1724,-1723,-1722,-1721,-1724,-1730,-1736,-1735,-1724,-1704,
+-1681,-1665,-1661,-1670,-1685,-1697,-1700,-1693,-1682,-1672,-1668,-1668,-1671,-1674,-1678,-1685,-1693,-1696,-1684,-1654,
+-1607,-1555,-1509,-1471,-1434,-1389,-1331,-1272,-1233,-1232,-1273,-1331,-1373,-1368,-1310,-1220,-1135,-1086,-1083,-1113,
+-1151,-1179,-1191,-1195,-1202,-1216,-1234,-1249,-1259,-1269,-1293,-1340,-1418,-1520,-1635,-1746,-1838,-1905,-1946,-1969,
+-1985,-2004,-2027,-2051,-2066,-2067,-2052,-2033,-2024,-2036,-2072,-2124,-2178,-2219,-2237,-2233,-2210,-2176,-2137,-2098,
+-2065,-2041,-2030,-2031,-2040,-2053,-2065,-2074,-2079,-2081,-2078,-2071,-2061,-2053,-2049,-2049,-2050,-2043,-2024,-1995,
+-1962,-1938,-1930,-1937,-1949,-1955,-1950,-1934,-1916,-1901,-1891,-1883,-1873,-1858,-1840,-1824,-1811,-1800,-1786,-1768,
+-1744,-1720,-1699,-1686,-1678,-1673,-1669,-1666,-1665,-1667,-1670,-1671,-1668,-1658,-1645,-1636,-1637,-1652,-1677,-1706,
+-1727,-1735,-1729,-1716,-1707,-1709,-1725,-1751,-1775,-1791,-1795,-1790,-1782,-1775,-1772,-1771,-1768,-1758,-1739,-1710,
+-1674,-1634,-1595,-1560,-1527,-1495,-1458,-1414,-1365,-1316,-1273,-1241,-1219,-1202,-1183,-1158,-1125,-1088,-1054,-1026,
+-1006,-993,-984,-974,-961,-946,-929,-914,-904,-902,-908,-921,-937,-950,-960,-966,-974,-986,-1005,-1026,
+-1043,-1052,-1052,-1048,-1046,-1050,-1057,-1063,-1062,-1054,-1042,-1033,-1030,-1032,-1032,-1025,-1008,-986,-963,-944,
+-927,-908,-884,-853,-820,-789,-764,-745,-727,-708,-689,-673,-662,-655,-650,-640,-621,-593,-557,-516,
+-471,-424,-379,-338,-302,-270,-235,-192,-139,-85,-38,-7,12,34,70,122,183,236,273,303,
+344,417,522,640,740,803,829,841,868,923,999,1077,1139,1186,1229,1285,1357,1429,1479,1493,
+1471,1428,1382,1342,1310,1277,1240,1203,1174,1165,1181,1221,1276,1336,1386,1415,1418,1397,1360,1322,
+1291,1269,1253,1238,1222,1207,1195,1185,1170,1143,1102,1055,1014,987,973,961,937,892,830,764,
+708,669,647,640,643,653,665,674,675,665,650,644,662,710,779,848,892,898,866,808,
+740,678,625,586,562,557,575,611,657,700,735,764,798,847,914,990,1063,1122,1169,1211,
+1254,1299,1338,1362,1370,1370,1379,1412,1472,1546,1616,1668,1698,1714,1728,1749,1780,1815,1852,1889,
+1927,1968,2010,2048,2080,2108,2136,2172,2218,2271,2325,2373,2414,2447,2478,2508,2537,2563,2587,2610,
+2634,2660,2685,2709,2731,2753,2777,2803,2828,2846,2852,2846,2831,2815,2802,2789,2774,2753,2728,2702,
+2681,2665,2651,2631,2658,2641,2618,2596,2581,2574,2573,2570,2561,2549,2543,2551,2572,2599,2622,2635,
+2642,2652,2674,2714,2765,2820,2873,2925,2981,3046,3118,3191,3254,3302,3334,3353,3363,3371,3381,3395,
+3417,3446,3477,3503,3521,3532,3544,3565,3597,3631,3656,3665,3664,3667,3691,3735,3785,3812,3800,3752,
+3697,3671,3699,3777,3874,3953,3989,3983,3958,3942,3954,3993,4048,4107,4165,4226,4294,4368,4444,4512,
+4568,4619,4670,4725,4782,4829,4856,4861,4849,4832,4819,4814,4811,4805,4790,4768,4744,4717,4688,4653,
+4609,4562,4520,4489,4470,4457,4442,4420,4391,4363,4342,4327,4311,4288,4251,4205,4157,4115,4080,4048,
+4012,3972,3930,3894,3868,3850,3834,3814,3788,3759,3735,3720,3714,3715,3718,3718,3712,3695,3664,3623,
+3581,3557,3563,3608,3680,3760,3824,3859,3864,3851,3832,3814,3796,3768,3722,3654,3565,3460,3346,3232,
+3128,3041,2977,2931,2892,2846,2783,2703,2613,2525,2445,2372,2300,2221,2134,2044,1957,1878,1808,1740,
+1671,1598,1523,1451,1383,1319,1256,1191,1124,1054,981,905,828,752,677,606,537,469,397,321,
+241,162,86,16,-48,-110,-173,-238,-305,-375,-446,-516,-585,-650,-713,-775,-838,-903,-970,-1037,
+-1101,-1161,-1217,-1272,-1328,-1385,-1442,-1497,-1548,-1598,-1651,-1708,-1767,-1824,-1872,-1908,-1934,-1956,-1980,-2007,
+-2034,-2057,-2074,-2087,-2102,-2126,-2157,-2191,-2218,-2233,-2238,-2241,-2250,-2270,-2298,-2324,-2337,-2328,-2301,-2262,
+-2224,-2197,-2181,-2172,-2161,-2143,-2117,-2089,-2065,-2049,-2038,-2028,-2013,-1993,-1970,-1947,-1927,-1909,-1889,-1869,
+-1848,-1832,-1822,-1818,-1814,-1808,-1798,-1785,-1773,-1764,-1757,-1750,-1741,-1733,-1731,-1739,-1753,-1769,-1777,-1772,
+-1757,-1740,-1730,-1730,-1738,-1744,-1743,-1732,-1718,-1709,-1709,-1715,-1723,-1725,-1723,-1721,-1723,-1731,-1737,-1729,
+-1699,-1648,-1587,-1528,-1480,-1445,-1419,-1402,-1399,-1418,-1460,-1515,-1560,-1571,-1536,-1465,-1382,-1314,-1280,-1277,
+-1290,-1301,-1304,-1304,-1309,-1326,-1352,-1377,-1395,-1407,-1423,-1458,-1522,-1615,-1728,-1848,-1959,-2050,-2116,-2156,
+-2176,-2185,-2192,-2203,-2219,-2235,-2247,-2250,-2249,-2249,-2260,-2282,-2312,-2342,-2364,-2372,-2367,-2351,-2326,-2293,
+-2254,-2214,-2179,-2155,-2146,-2150,-2163,-2178,-2189,-2194,-2192,-2185,-2175,-2164,-2155,-2150,-2147,-2142,-2131,-2108,
+-2078,-2045,-2019,-2005,-2002,-2004,-2005,-1999,-1990,-1982,-1978,-1977,-1976,-1968,-1954,-1935,-1917,-1901,-1886,-1870,
+-1849,-1824,-1799,-1779,-1766,-1760,-1755,-1748,-1740,-1730,-1723,-1718,-1714,-1708,-1697,-1681,-1664,-1652,-1651,-1662,
+-1681,-1702,-1717,-1724,-1727,-1732,-1744,-1767,-1794,-1818,-1833,-1833,-1823,-1808,-1794,-1786,-1782,-1778,-1771,-1754,
+-1727,-1692,-1651,-1609,-1572,-1538,-1507,-1474,-1437,-1394,-1350,-1309,-1277,-1253,-1232,-1210,-1182,-1148,-1112,-1079,
+-1050,-1027,-1007,-990,-973,-959,-948,-942,-938,-936,-936,-938,-944,-953,-965,-977,-987,-996,-1006,-1019,
+-1033,-1045,-1053,-1054,-1053,-1054,-1060,-1069,-1077,-1079,-1074,-1064,-1056,-1051,-1049,-1045,-1034,-1016,-994,-973,
+-955,-938,-919,-894,-863,-832,-805,-786,-770,-754,-733,-709,-687,-671,-663,-658,-650,-634,-607,-572,
+-534,-494,-455,-419,-384,-351,-317,-277,-230,-177,-124,-81,-48,-22,7,48,101,155,199,231,
+262,311,392,503,622,720,779,801,810,831,880,953,1032,1103,1163,1217,1274,1333,1382,1407,
+1401,1372,1337,1312,1300,1294,1282,1259,1227,1201,1194,1211,1251,1303,1353,1391,1410,1410,1395,1370,
+1342,1315,1289,1265,1243,1227,1219,1222,1229,1231,1220,1192,1153,1110,1070,1032,989,935,869,800,
+736,688,658,644,639,639,642,641,632,608,570,529,503,510,553,621,689,731,738,713,
+674,639,619,614,623,643,678,728,788,846,888,909,918,933,973,1041,1126,1206,1265,1301,
+1323,1348,1383,1421,1451,1464,1464,1466,1491,1545,1622,1704,1771,1813,1833,1841,1848,1857,1869,1884,
+1903,1931,1970,2018,2067,2111,2144,2170,2194,2222,2258,2300,2344,2387,2428,2464,2495,2520,2540,2559,
+2582,2612,2646,2680,2707,2728,2745,2767,2796,2828,2856,2869,2867,2853,2838,2826,2819,2809,2790,2762,
+2729,2701,2681,2669,2658,2677,2673,2661,2644,2627,2615,2609,2606,2602,2598,2600,2611,2631,2654,2672,
+2681,2685,2694,2715,2754,2805,2864,2923,2984,3047,3114,3183,3248,3303,3344,3373,3393,3409,3426,3445,
+3467,3494,3523,3551,3573,3589,3601,3617,3643,3678,3712,3734,3740,3736,3736,3753,3785,3818,3828,3803,
+3751,3700,3682,3713,3785,3868,3927,3947,3935,3915,3914,3942,3995,4058,4121,4183,4249,4324,4404,4481,
+4546,4601,4656,4720,4796,4874,4934,4963,4959,4935,4909,4895,4891,4887,4871,4839,4797,4756,4725,4701,
+4675,4639,4592,4542,4500,4473,4458,4443,4421,4389,4354,4323,4303,4289,4275,4253,4220,4182,4142,4104,
+4064,4020,3969,3918,3874,3843,3824,3813,3800,3781,3754,3723,3692,3667,3650,3643,3644,3646,3642,3623,
+3589,3547,3515,3511,3547,3620,3713,3802,3868,3903,3910,3899,3880,3857,3828,3787,3728,3649,3549,3431,
+3304,3180,3073,2991,2935,2892,2849,2790,2711,2618,2522,2433,2355,2283,2210,2131,2047,1963,1884,1813,
+1748,1688,1628,1565,1500,1430,1358,1283,1206,1131,1057,986,917,847,776,705,634,563,492,420,
+346,271,197,124,53,-14,-79,-143,-206,-270,-335,-404,-475,-546,-613,-673,-729,-785,-846,-914,
+-989,-1065,-1135,-1196,-1248,-1294,-1339,-1387,-1440,-1497,-1559,-1624,-1688,-1748,-1799,-1838,-1867,-1891,-1919,-1953,
+-1990,-2025,-2049,-2062,-2068,-2077,-2098,-2130,-2166,-2197,-2215,-2221,-2226,-2240,-2267,-2303,-2335,-2349,-2339,-2306,
+-2263,-2224,-2198,-2187,-2184,-2181,-2170,-2151,-2128,-2106,-2091,-2081,-2073,-2064,-2051,-2034,-2014,-1991,-1966,-1941,
+-1916,-1894,-1877,-1865,-1855,-1844,-1830,-1814,-1801,-1791,-1784,-1775,-1761,-1743,-1728,-1724,-1737,-1763,-1792,-1814,
+-1821,-1816,-1806,-1799,-1798,-1800,-1796,-1782,-1763,-1746,-1741,-1749,-1765,-1779,-1785,-1782,-1778,-1780,-1789,-1797,
+-1793,-1766,-1716,-1651,-1586,-1535,-1507,-1505,-1529,-1575,-1637,-1702,-1749,-1763,-1735,-1671,-1592,-1524,-1483,-1469,
+-1468,-1466,-1453,-1434,-1423,-1428,-1451,-1482,-1510,-1531,-1551,-1585,-1645,-1734,-1844,-1960,-2068,-2158,-2228,-2278,
+-2311,-2330,-2340,-2348,-2359,-2377,-2400,-2423,-2440,-2451,-2459,-2467,-2479,-2493,-2506,-2513,-2512,-2505,-2493,-2474,
+-2447,-2411,-2367,-2325,-2291,-2274,-2274,-2285,-2299,-2307,-2307,-2299,-2287,-2275,-2266,-2259,-2253,-2246,-2235,-2218,
+-2195,-2168,-2140,-2115,-2095,-2080,-2067,-2054,-2044,-2039,-2041,-2051,-2063,-2072,-2071,-2060,-2040,-2015,-1990,-1965,
+-1939,-1913,-1889,-1868,-1854,-1847,-1844,-1842,-1835,-1822,-1806,-1789,-1775,-1763,-1753,-1740,-1724,-1705,-1686,-1672,
+-1667,-1671,-1684,-1700,-1718,-1737,-1756,-1778,-1803,-1827,-1848,-1861,-1864,-1860,-1850,-1837,-1825,-1812,-1800,-1787,
+-1769,-1746,-1716,-1678,-1636,-1593,-1553,-1518,-1487,-1458,-1427,-1394,-1358,-1323,-1291,-1262,-1233,-1204,-1174,-1144,
+-1115,-1087,-1060,-1032,-1005,-981,-964,-957,-957,-962,-965,-965,-962,-961,-966,-976,-991,-1007,-1022,-1034,
+-1045,-1055,-1062,-1067,-1069,-1070,-1074,-1081,-1093,-1104,-1111,-1111,-1106,-1097,-1087,-1076,-1061,-1042,-1019,-995,
+-975,-958,-941,-922,-898,-871,-845,-825,-812,-800,-785,-762,-734,-706,-685,-674,-669,-664,-653,-632,
+-603,-568,-533,-497,-463,-429,-396,-361,-321,-277,-229,-182,-140,-103,-69,-30,15,66,115,154,
+186,222,278,361,465,568,647,690,704,712,738,794,877,972,1063,1143,1211,1268,1307,1322,
+1307,1268,1223,1195,1197,1225,1262,1289,1292,1274,1249,1235,1243,1271,1310,1348,1377,1393,1398,1395,
+1386,1373,1355,1332,1307,1284,1270,1268,1277,1289,1291,1277,1242,1191,1130,1063,992,916,835,756,
+687,633,595,564,533,495,452,410,375,346,317,286,256,240,249,290,354,424,479,510,
+518,514,511,515,529,556,601,669,761,865,961,1027,1056,1059,1061,1089,1150,1234,1317,1377,
+1409,1423,1439,1468,1506,1541,1560,1561,1556,1565,1600,1661,1733,1802,1855,1892,1917,1934,1946,1951,
+1949,1946,1953,1977,2019,2074,2129,2174,2205,2223,2235,2251,2274,2309,2354,2404,2453,2494,2521,2538,
+2553,2574,2606,2647,2687,2717,2734,2743,2755,2778,2811,2844,2867,2874,2867,2856,2847,2842,2833,2813,
+2780,2741,2707,2686,2678,2677,2707,2708,2700,2682,2663,2648,2642,2641,2644,2649,2657,2669,2686,2702,
+2715,2721,2724,2732,2752,2786,2833,2887,2944,3003,3062,3122,3179,3230,3273,3308,3338,3368,3400,3433,
+3467,3500,3532,3561,3588,3610,3629,3649,3674,3707,3745,3780,3803,3809,3805,3803,3809,3824,3834,3824,
+3788,3736,3692,3679,3708,3766,3827,3868,3880,3875,3875,3895,3940,4001,4064,4124,4185,4254,4335,4421,
+4501,4568,4627,4688,4764,4852,4936,4997,5019,5007,4980,4959,4954,4960,4957,4930,4877,4812,4756,4722,
+4705,4691,4662,4613,4551,4494,4455,4435,4423,4407,4378,4340,4302,4273,4256,4247,4237,4220,4194,4160,
+4119,4072,4018,3960,3902,3854,3820,3799,3787,3776,3759,3734,3703,3668,3635,3607,3588,3578,3576,3576,
+3567,3545,3509,3472,3450,3460,3509,3593,3694,3791,3867,3912,3925,3913,3884,3843,3795,3739,3670,3586,
+3483,3364,3239,3122,3022,2945,2885,2829,2764,2685,2593,2497,2408,2329,2259,2190,2118,2038,1956,1875,
+1803,1743,1691,1645,1596,1540,1472,1393,1307,1219,1135,1057,986,920,856,791,726,661,595,529,
+462,393,321,247,171,93,17,-55,-123,-184,-242,-300,-362,-429,-500,-570,-635,-693,-748,-806,
+-872,-946,-1023,-1094,-1153,-1200,-1239,-1277,-1321,-1376,-1441,-1514,-1590,-1663,-1725,-1774,-1808,-1835,-1860,-1893,
+-1935,-1981,-2023,-2052,-2066,-2072,-2079,-2095,-2121,-2151,-2178,-2195,-2208,-2223,-2248,-2285,-2326,-2357,-2367,-2352,
+-2317,-2275,-2241,-2221,-2215,-2216,-2215,-2208,-2194,-2177,-2160,-2147,-2137,-2128,-2119,-2107,-2093,-2075,-2054,-2028,
+-2001,-1974,-1952,-1934,-1919,-1903,-1884,-1862,-1841,-1825,-1816,-1809,-1798,-1780,-1758,-1739,-1735,-1752,-1786,-1826,
+-1859,-1875,-1875,-1867,-1860,-1857,-1855,-1848,-1834,-1815,-1799,-1793,-1799,-1812,-1826,-1833,-1835,-1837,-1844,-1858,
+-1871,-1871,-1852,-1810,-1754,-1696,-1650,-1628,-1636,-1676,-1742,-1818,-1885,-1922,-1915,-1867,-1793,-1720,-1668,-1644,
+-1639,-1635,-1621,-1595,-1570,-1561,-1574,-1603,-1635,-1660,-1682,-1713,-1769,-1860,-1978,-2105,-2221,-2310,-2371,-2410,
+-2438,-2460,-2479,-2496,-2512,-2530,-2551,-2575,-2597,-2614,-2623,-2628,-2632,-2638,-2644,-2649,-2649,-2643,-2634,-2623,
+-2610,-2591,-2563,-2526,-2485,-2448,-2425,-2418,-2422,-2429,-2430,-2422,-2408,-2393,-2382,-2375,-2369,-2362,-2349,-2331,
+-2310,-2289,-2269,-2250,-2231,-2209,-2184,-2156,-2130,-2109,-2099,-2101,-2114,-2131,-2146,-2153,-2148,-2131,-2106,-2074,
+-2041,-2009,-1979,-1955,-1937,-1926,-1919,-1915,-1911,-1902,-1890,-1873,-1854,-1835,-1818,-1802,-1787,-1772,-1753,-1732,
+-1712,-1694,-1684,-1684,-1694,-1711,-1734,-1758,-1781,-1802,-1821,-1839,-1855,-1869,-1880,-1885,-1881,-1869,-1850,-1828,
+-1807,-1788,-1770,-1747,-1714,-1671,-1620,-1570,-1528,-1496,-1473,-1453,-1429,-1398,-1360,-1320,-1282,-1250,-1222,-1198,
+-1175,-1150,-1123,-1092,-1060,-1028,-1002,-984,-976,-978,-985,-990,-992,-990,-988,-990,-999,-1014,-1032,-1050,
+-1065,-1076,-1085,-1092,-1096,-1099,-1102,-1107,-1117,-1129,-1143,-1153,-1157,-1153,-1144,-1129,-1109,-1086,-1061,-1034,
+-1010,-989,-970,-952,-931,-907,-882,-862,-848,-839,-830,-816,-792,-762,-731,-707,-693,-687,-684,-675,
+-659,-634,-603,-568,-533,-497,-464,-431,-399,-365,-327,-286,-243,-200,-159,-117,-72,-24,25,71,
+111,148,191,249,326,413,495,555,589,604,616,645,698,773,859,946,1028,1102,1160,1193,
+1192,1157,1103,1056,1042,1075,1147,1234,1307,1346,1349,1330,1309,1299,1305,1320,1336,1344,1343,1334,
+1323,1308,1289,1264,1233,1200,1174,1160,1160,1167,1172,1161,1129,1074,1006,932,862,798,743,697,
+664,645,635,623,595,542,465,380,309,267,257,269,285,293,293,296,314,355,414,477,
+529,558,560,536,498,459,440,461,534,656,804,945,1050,1106,1125,1139,1176,1251,1352,1455,
+1534,1580,1600,1612,1631,1656,1677,1684,1671,1650,1634,1637,1663,1706,1756,1805,1853,1900,1945,1982,
+2006,2012,2007,2001,2007,2032,2075,2127,2177,2216,2241,2253,2261,2272,2293,2329,2378,2432,2479,2514,
+2536,2552,2574,2609,2654,2699,2731,2745,2745,2744,2752,2774,2803,2830,2846,2852,2853,2854,2854,2849,
+2831,2800,2761,2727,2708,2703,2707,2743,2739,2727,2710,2694,2685,2685,2692,2701,2708,2713,2720,2728,
+2737,2745,2750,2753,2760,2773,2798,2833,2876,2924,2974,3025,3073,3117,3153,3184,3211,3241,3277,3320,
+3367,3413,3455,3491,3524,3554,3582,3611,3643,3680,3722,3766,3804,3831,3843,3844,3840,3836,3831,3816,
+3785,3740,3690,3655,3649,3673,3717,3760,3789,3804,3816,3840,3883,3942,4004,4061,4113,4169,4238,4321,
+4410,4492,4561,4623,4688,4766,4852,4930,4979,4991,4975,4952,4945,4957,4975,4975,4942,4876,4798,4734,
+4699,4688,4680,4653,4600,4530,4465,4422,4406,4404,4399,4376,4336,4288,4246,4220,4208,4202,4194,4175,
+4144,4100,4048,3991,3934,3884,3844,3816,3797,3779,3758,3731,3699,3664,3631,3601,3576,3556,3545,3543,
+3546,3549,3540,3514,3474,3433,3410,3421,3474,3561,3666,3763,3836,3872,3871,3842,3796,3744,3689,3632,
+3564,3481,3379,3263,3144,3031,2934,2852,2779,2706,2627,2541,2454,2370,2296,2229,2165,2098,2025,1946,
+1867,1794,1733,1684,1642,1599,1548,1482,1403,1315,1225,1140,1063,993,928,865,803,741,681,621,
+561,499,432,359,281,199,115,33,-43,-112,-172,-225,-276,-331,-394,-463,-534,-604,-668,-728,
+-788,-853,-922,-992,-1057,-1114,-1161,-1202,-1244,-1291,-1349,-1416,-1491,-1567,-1640,-1702,-1752,-1790,-1819,-1848,
+-1882,-1923,-1967,-2008,-2040,-2061,-2075,-2088,-2106,-2128,-2152,-2172,-2190,-2208,-2235,-2271,-2315,-2356,-2382,-2385,
+-2367,-2336,-2305,-2283,-2273,-2271,-2271,-2265,-2253,-2237,-2222,-2207,-2195,-2183,-2170,-2156,-2145,-2135,-2125,-2113,
+-2097,-2076,-2053,-2031,-2011,-1991,-1967,-1940,-1910,-1882,-1863,-1851,-1843,-1832,-1813,-1789,-1769,-1765,-1783,-1821,
+-1866,-1902,-1921,-1922,-1911,-1900,-1895,-1896,-1898,-1896,-1888,-1877,-1868,-1864,-1865,-1870,-1878,-1888,-1901,-1917,
+-1934,-1945,-1945,-1933,-1907,-1874,-1839,-1810,-1793,-1797,-1825,-1878,-1943,-2003,-2037,-2034,-1995,-1938,-1883,-1846,
+-1829,-1822,-1810,-1788,-1760,-1741,-1743,-1766,-1802,-1834,-1858,-1880,-1919,-1992,-2102,-2235,-2366,-2472,-2540,-2574,
+-2589,-2599,-2614,-2636,-2660,-2684,-2707,-2729,-2749,-2763,-2771,-2773,-2771,-2769,-2771,-2774,-2775,-2770,-2759,-2748,
+-2739,-2734,-2728,-2715,-2691,-2659,-2624,-2596,-2579,-2573,-2569,-2562,-2549,-2532,-2515,-2503,-2495,-2487,-2474,-2455,
+-2431,-2407,-2387,-2373,-2362,-2349,-2330,-2303,-2270,-2235,-2205,-2183,-2172,-2171,-2178,-2188,-2196,-2197,-2189,-2171,
+-2146,-2116,-2086,-2059,-2038,-2021,-2006,-1992,-1978,-1965,-1953,-1942,-1930,-1915,-1897,-1877,-1856,-1836,-1818,-1800,
+-1782,-1761,-1738,-1718,-1704,-1699,-1704,-1717,-1733,-1748,-1760,-1773,-1787,-1808,-1833,-1860,-1881,-1890,-1885,-1867,
+-1844,-1823,-1807,-1795,-1779,-1750,-1705,-1647,-1588,-1539,-1505,-1485,-1470,-1452,-1423,-1385,-1343,-1305,-1274,-1251,
+-1230,-1209,-1183,-1153,-1121,-1089,-1059,-1035,-1017,-1007,-1005,-1009,-1015,-1020,-1024,-1026,-1030,-1036,-1045,-1058,
+-1071,-1083,-1093,-1101,-1108,-1113,-1118,-1123,-1131,-1142,-1156,-1170,-1180,-1185,-1183,-1173,-1158,-1138,-1115,-1091,
+-1067,-1045,-1025,-1005,-982,-956,-928,-902,-880,-866,-857,-848,-834,-813,-787,-760,-739,-726,-718,-712,
+-701,-682,-655,-622,-585,-548,-513,-482,-455,-429,-401,-369,-332,-290,-247,-205,-163,-119,-73,-24,
+26,75,124,176,233,299,368,433,485,524,550,573,597,627,662,702,748,803,866,928,
+975,993,979,946,922,933,994,1098,1219,1327,1397,1423,1415,1391,1366,1348,1333,1316,1292,1261,
+1225,1189,1153,1115,1071,1023,976,939,918,914,917,915,893,846,777,700,630,583,565,577,
+616,675,742,800,833,826,777,700,623,578,585,639,718,789,824,816,782,749,742,770,
+823,875,898,869,786,665,538,447,424,485,619,790,953,1073,1136,1157,1171,1209,1286,1393,
+1507,1600,1660,1690,1704,1715,1726,1732,1727,1709,1683,1661,1652,1660,1681,1711,1747,1790,1842,1900,
+1958,2006,2039,2055,2061,2066,2077,2099,2130,2167,2205,2239,2264,2279,2289,2298,2317,2347,2389,2435,
+2475,2506,2531,2558,2593,2638,2683,2718,2734,2733,2725,2721,2728,2747,2771,2794,2813,2829,2843,2853,
+2856,2846,2824,2794,2768,2751,2745,2743,2772,2757,2740,2727,2724,2732,2749,2766,2777,2778,2771,2762,
+2756,2754,2755,2756,2756,2756,2761,2772,2793,2823,2860,2900,2941,2979,3011,3037,3058,3080,3108,3144,
+3189,3239,3289,3335,3377,3415,3452,3489,3528,3570,3615,3663,3711,3754,3789,3811,3820,3818,3806,3784,
+3750,3706,3658,3618,3598,3602,3626,3659,3690,3712,3731,3759,3803,3864,3931,3992,4041,4084,4132,4195,
+4274,4360,4440,4509,4572,4639,4715,4795,4861,4899,4902,4883,4864,4864,4882,4903,4904,4870,4805,4730,
+4672,4643,4635,4627,4598,4544,4477,4420,4393,4396,4413,4421,4402,4355,4292,4232,4189,4167,4159,4152,
+4135,4104,4059,4005,3950,3902,3866,3842,3827,3811,3788,3753,3707,3659,3616,3582,3558,3543,3534,3531,
+3536,3548,3562,3570,3560,3530,3486,3445,3424,3438,3486,3560,3638,3702,3740,3746,3728,3694,3654,3612,
+3565,3507,3432,3337,3224,3101,2980,2869,2772,2688,2612,2538,2463,2387,2313,2244,2182,2124,2065,2003,
+1934,1861,1790,1725,1669,1619,1570,1516,1451,1375,1294,1213,1137,1067,1001,937,873,808,744,682,
+623,563,500,431,355,276,196,117,41,-30,-95,-156,-211,-265,-321,-381,-445,-512,-580,-648,
+-714,-780,-847,-915,-980,-1042,-1098,-1150,-1201,-1253,-1309,-1370,-1433,-1498,-1564,-1627,-1686,-1738,-1783,-1821,
+-1855,-1888,-1922,-1956,-1989,-2019,-2045,-2069,-2093,-2119,-2144,-2166,-2185,-2204,-2228,-2260,-2300,-2343,-2378,-2396,
+-2395,-2379,-2359,-2344,-2338,-2339,-2340,-2335,-2322,-2303,-2284,-2267,-2254,-2242,-2227,-2211,-2196,-2184,-2179,-2178,
+-2177,-2171,-2159,-2141,-2120,-2096,-2070,-2040,-2004,-1967,-1934,-1909,-1895,-1885,-1873,-1854,-1829,-1809,-1803,-1820,
+-1857,-1903,-1943,-1965,-1966,-1952,-1937,-1929,-1933,-1946,-1961,-1969,-1968,-1957,-1943,-1933,-1931,-1941,-1960,-1983,
+-2001,-2009,-2006,-1994,-1981,-1975,-1976,-1981,-1985,-1985,-1986,-1996,-2022,-2063,-2109,-2143,-2151,-2132,-2095,-2057,
+-2031,-2018,-2012,-2001,-1983,-1964,-1957,-1972,-2008,-2053,-2094,-2128,-2160,-2207,-2281,-2384,-2501,-2609,-2689,-2732,
+-2746,-2748,-2752,-2766,-2789,-2817,-2845,-2869,-2890,-2907,-2918,-2922,-2920,-2916,-2912,-2911,-2909,-2904,-2893,-2877,
+-2862,-2854,-2854,-2859,-2860,-2849,-2825,-2794,-2762,-2738,-2723,-2713,-2703,-2689,-2671,-2652,-2636,-2623,-2608,-2590,
+-2566,-2538,-2510,-2488,-2473,-2461,-2449,-2434,-2412,-2384,-2353,-2321,-2290,-2264,-2243,-2230,-2224,-2225,-2227,-2226,
+-2219,-2205,-2187,-2167,-2149,-2134,-2118,-2099,-2076,-2051,-2028,-2010,-1999,-1990,-1979,-1962,-1938,-1911,-1885,-1864,
+-1847,-1832,-1815,-1793,-1769,-1745,-1726,-1714,-1710,-1709,-1711,-1712,-1714,-1722,-1739,-1766,-1797,-1826,-1845,-1850,
+-1844,-1832,-1821,-1816,-1812,-1802,-1776,-1732,-1673,-1612,-1560,-1524,-1503,-1488,-1469,-1441,-1406,-1370,-1339,-1316,
+-1298,-1278,-1253,-1221,-1186,-1153,-1124,-1101,-1083,-1066,-1053,-1044,-1041,-1045,-1053,-1063,-1071,-1075,-1078,-1080,
+-1083,-1088,-1095,-1102,-1108,-1113,-1118,-1123,-1131,-1140,-1152,-1165,-1178,-1187,-1192,-1191,-1185,-1174,-1159,-1141,
+-1123,-1105,-1088,-1070,-1049,-1023,-992,-958,-925,-897,-876,-861,-848,-836,-821,-807,-794,-785,-779,-772,
+-760,-740,-711,-674,-633,-591,-551,-517,-490,-468,-449,-427,-399,-365,-326,-285,-247,-211,-174,-131,
+-80,-20,43,108,170,229,285,339,391,442,489,530,562,581,585,576,563,558,574,617,
+679,744,794,821,830,841,875,948,1055,1178,1291,1371,1411,1416,1398,1370,1338,1304,1265,1221,
+1175,1132,1097,1068,1039,1006,965,921,882,859,853,856,856,835,785,711,627,557,522,532,
+592,690,811,933,1033,1095,1109,1083,1039,1009,1022,1092,1206,1330,1423,1454,1418,1338,1254,1202,
+1201,1242,1292,1309,1266,1155,1000,843,733,707,773,912,1079,1224,1312,1332,1303,1257,1228,1234,
+1275,1333,1390,1435,1468,1493,1516,1539,1556,1564,1564,1561,1564,1579,1606,1644,1688,1733,1781,1831,
+1883,1936,1987,2032,2071,2102,2126,2141,2149,2156,2167,2188,2219,2254,2284,2302,2310,2313,2322,2343,
+2376,2416,2454,2487,2517,2549,2586,2626,2661,2684,2693,2692,2689,2691,2703,2724,2749,2775,2799,2821,
+2837,2846,2846,2837,2822,2808,2795,2784,2772,2781,2754,2733,2726,2739,2769,2805,2834,2846,2839,2818,
+2791,2767,2750,2739,2729,2719,2709,2703,2705,2716,2737,2763,2792,2820,2846,2870,2891,2912,2937,2967,
+3005,3049,3098,3147,3194,3240,3284,3328,3371,3414,3457,3500,3544,3590,3634,3673,3703,3721,3723,3708,
+3678,3637,3592,3553,3530,3529,3546,3574,3601,3623,3640,3662,3700,3756,3826,3896,3955,4000,4036,4078,
+4134,4204,4282,4357,4424,4489,4559,4635,4711,4771,4802,4800,4778,4755,4746,4752,4761,4754,4722,4668,
+4613,4573,4556,4551,4539,4506,4453,4395,4358,4356,4384,4422,4442,4426,4371,4293,4216,4157,4125,4112,
+4105,4090,4061,4018,3966,3915,3874,3848,3834,3827,3815,3790,3748,3692,3633,3582,3544,3521,3510,3505,
+3504,3510,3523,3542,3562,3571,3565,3543,3512,3486,3475,3484,3510,3542,3570,3589,3595,3591,3580,3563,
+3538,3499,3442,3363,3262,3143,3014,2886,2766,2660,2570,2494,2426,2360,2295,2229,2166,2109,2056,2007,
+1957,1902,1841,1775,1708,1644,1584,1526,1465,1400,1329,1256,1186,1120,1057,997,934,868,801,735,
+672,610,546,478,404,327,251,180,115,56,-1,-61,-125,-192,-260,-327,-389,-448,-506,-566,
+-629,-697,-769,-841,-910,-974,-1032,-1086,-1142,-1201,-1264,-1329,-1394,-1454,-1510,-1564,-1618,-1674,-1729,-1783,
+-1831,-1872,-1907,-1938,-1966,-1993,-2019,-2046,-2075,-2105,-2136,-2165,-2190,-2214,-2237,-2263,-2295,-2331,-2366,-2392,
+-2404,-2404,-2397,-2391,-2390,-2394,-2400,-2400,-2391,-2374,-2354,-2336,-2323,-2313,-2304,-2290,-2274,-2258,-2247,-2242,
+-2242,-2243,-2240,-2230,-2215,-2194,-2171,-2144,-2110,-2072,-2031,-1994,-1966,-1950,-1940,-1930,-1914,-1892,-1870,-1862,
+-1874,-1908,-1954,-1999,-2028,-2034,-2021,-2000,-1985,-1985,-2001,-2024,-2044,-2052,-2045,-2028,-2012,-2009,-2024,-2050,
+-2076,-2087,-2076,-2047,-2014,-1996,-2008,-2048,-2103,-2155,-2189,-2203,-2207,-2216,-2238,-2269,-2293,-2298,-2277,-2238,
+-2197,-2170,-2161,-2167,-2177,-2184,-2190,-2205,-2236,-2286,-2348,-2412,-2470,-2524,-2579,-2643,-2715,-2787,-2847,-2886,
+-2902,-2904,-2903,-2909,-2925,-2948,-2973,-2997,-3019,-3038,-3055,-3069,-3076,-3078,-3076,-3073,-3069,-3064,-3054,-3037,
+-3015,-2995,-2983,-2981,-2986,-2990,-2984,-2965,-2936,-2905,-2879,-2862,-2851,-2841,-2827,-2808,-2787,-2766,-2747,-2728,
+-2708,-2684,-2657,-2628,-2600,-2575,-2553,-2532,-2514,-2497,-2479,-2461,-2438,-2410,-2377,-2342,-2311,-2288,-2276,-2271,
+-2270,-2267,-2260,-2250,-2240,-2231,-2222,-2210,-2192,-2167,-2137,-2109,-2087,-2074,-2064,-2053,-2035,-2009,-1978,-1949,
+-1925,-1907,-1894,-1879,-1860,-1835,-1807,-1780,-1758,-1741,-1727,-1715,-1703,-1693,-1688,-1692,-1706,-1728,-1752,-1773,
+-1786,-1792,-1795,-1799,-1805,-1809,-1805,-1785,-1748,-1697,-1643,-1596,-1560,-1533,-1511,-1486,-1456,-1425,-1397,-1376,
+-1361,-1346,-1324,-1293,-1254,-1216,-1184,-1162,-1148,-1138,-1127,-1113,-1101,-1093,-1093,-1100,-1110,-1118,-1121,-1121,
+-1119,-1119,-1122,-1128,-1134,-1140,-1144,-1147,-1152,-1158,-1166,-1175,-1183,-1190,-1196,-1200,-1201,-1199,-1193,-1182,
+-1168,-1151,-1135,-1120,-1104,-1085,-1060,-1029,-993,-955,-920,-890,-866,-848,-836,-831,-831,-838,-847,-853,
+-852,-837,-808,-766,-715,-661,-609,-563,-526,-498,-477,-460,-442,-419,-390,-357,-322,-290,-259,-225,
+-183,-129,-61,13,89,159,219,269,313,357,403,451,499,536,556,554,529,494,463,453,
+473,521,586,652,707,750,790,840,910,1000,1099,1190,1261,1303,1317,1310,1289,1258,1220,1178,
+1137,1105,1092,1100,1125,1158,1183,1193,1188,1175,1166,1169,1182,1191,1181,1139,1064,972,885,828,
+819,860,944,1049,1153,1236,1284,1295,1281,1262,1265,1308,1395,1511,1625,1699,1711,1658,1566,1471,
+1412,1406,1446,1503,1540,1529,1464,1366,1273,1225,1248,1343,1485,1632,1738,1775,1733,1627,1487,1342,
+1218,1126,1068,1041,1041,1065,1107,1158,1207,1246,1270,1282,1289,1303,1335,1389,1466,1560,1662,1762,
+1850,1917,1964,1997,2025,2059,2100,2142,2174,2187,2184,2173,2170,2185,2217,2258,2293,2311,2315,2312,
+2316,2333,2365,2402,2438,2469,2497,2524,2555,2587,2616,2637,2650,2658,2666,2679,2699,2723,2750,2774,
+2793,2806,2815,2821,2825,2827,2827,2820,2805,2781,2765,2727,2699,2692,2714,2756,2805,2843,2859,2849,
+2819,2782,2745,2713,2685,2660,2636,2616,2605,2604,2614,2630,2648,2664,2678,2691,2708,2731,2761,2799,
+2841,2886,2932,2978,3025,3073,3122,3172,3222,3268,3309,3345,3378,3411,3446,3483,3519,3550,3569,3573,
+3559,3530,3493,3459,3436,3432,3448,3476,3507,3533,3551,3568,3595,3640,3703,3777,3847,3904,3945,3979,
+4016,4066,4128,4196,4264,4329,4394,4463,4539,4611,4667,4694,4690,4665,4635,4612,4599,4589,4572,4543,
+4507,4477,4461,4458,4457,4440,4400,4343,4289,4262,4272,4314,4362,4390,4378,4327,4250,4171,4109,4073,
+4057,4050,4039,4017,3980,3935,3888,3848,3820,3804,3794,3781,3758,3721,3671,3616,3566,3528,3502,3486,
+3475,3467,3462,3464,3474,3491,3509,3522,3527,3524,3517,3508,3502,3496,3491,3486,3483,3482,3485,3489,
+3487,3473,3438,3380,3297,3193,3073,2943,2810,2682,2565,2464,2381,2312,2252,2195,2138,2081,2027,1979,
+1935,1894,1849,1797,1739,1675,1610,1546,1485,1423,1359,1292,1225,1160,1098,1038,979,917,853,788,
+724,663,603,539,468,390,310,235,171,118,74,29,-24,-92,-172,-257,-337,-407,-465,-516,
+-566,-622,-688,-761,-835,-903,-963,-1015,-1064,-1118,-1179,-1248,-1321,-1391,-1455,-1511,-1564,-1616,-1671,-1728,
+-1785,-1838,-1884,-1924,-1959,-1990,-2020,-2048,-2076,-2103,-2130,-2158,-2187,-2217,-2247,-2277,-2308,-2338,-2368,-2394,
+-2413,-2425,-2432,-2435,-2439,-2445,-2450,-2452,-2447,-2435,-2418,-2402,-2390,-2384,-2379,-2372,-2362,-2348,-2334,-2323,
+-2317,-2313,-2309,-2301,-2288,-2273,-2257,-2239,-2217,-2188,-2151,-2109,-2069,-2039,-2021,-2013,-2007,-1997,-1979,-1959,
+-1946,-1951,-1979,-2023,-2072,-2108,-2123,-2113,-2088,-2063,-2052,-2059,-2082,-2107,-2122,-2121,-2107,-2093,-2090,-2106,
+-2134,-2158,-2161,-2135,-2087,-2041,-2024,-2052,-2124,-2222,-2316,-2384,-2420,-2435,-2446,-2465,-2489,-2504,-2495,-2454,
+-2392,-2329,-2287,-2280,-2305,-2348,-2395,-2439,-2481,-2531,-2595,-2674,-2761,-2845,-2918,-2976,-3020,-3052,-3071,-3080,
+-3080,-3075,-3072,-3075,-3085,-3101,-3119,-3137,-3153,-3170,-3188,-3207,-3224,-3235,-3240,-3239,-3236,-3233,-3227,-3217,
+-3199,-3175,-3151,-3130,-3118,-3113,-3108,-3099,-3081,-3056,-3030,-3008,-2992,-2980,-2968,-2952,-2931,-2906,-2882,-2861,
+-2844,-2827,-2809,-2787,-2758,-2725,-2688,-2650,-2617,-2590,-2571,-2560,-2552,-2541,-2521,-2490,-2453,-2414,-2380,-2357,
+-2342,-2332,-2324,-2314,-2305,-2298,-2293,-2290,-2283,-2269,-2248,-2221,-2195,-2173,-2159,-2148,-2137,-2120,-2096,-2067,
+-2039,-2015,-1995,-1977,-1959,-1936,-1910,-1881,-1854,-1831,-1811,-1793,-1774,-1754,-1733,-1715,-1704,-1702,-1709,-1721,
+-1735,-1747,-1756,-1764,-1772,-1781,-1788,-1789,-1778,-1754,-1719,-1680,-1641,-1605,-1573,-1541,-1508,-1474,-1444,-1421,
+-1406,-1393,-1376,-1350,-1313,-1271,-1233,-1206,-1192,-1189,-1189,-1187,-1179,-1170,-1162,-1160,-1163,-1168,-1172,-1172,
+-1170,-1170,-1173,-1180,-1190,-1199,-1207,-1212,-1217,-1221,-1226,-1231,-1232,-1231,-1229,-1227,-1227,-1229,-1230,-1227,
+-1217,-1200,-1180,-1160,-1143,-1127,-1110,-1091,-1065,-1034,-999,-964,-930,-901,-878,-865,-864,-875,-896,-921,
+-941,-947,-934,-899,-846,-783,-716,-653,-597,-551,-516,-490,-470,-453,-435,-413,-386,-357,-326,-293,
+-256,-211,-155,-88,-15,58,127,186,236,280,321,363,407,451,489,515,525,516,494,468,
+448,445,464,502,556,617,683,752,825,904,986,1067,1138,1194,1231,1248,1247,1230,1199,1159,
+1117,1083,1071,1092,1149,1237,1338,1435,1511,1559,1587,1604,1624,1649,1670,1674,1644,1579,1487,1388,
+1308,1262,1256,1284,1330,1375,1406,1418,1411,1396,1384,1387,1414,1465,1530,1591,1629,1630,1594,1533,
+1473,1436,1436,1472,1528,1581,1614,1623,1616,1616,1645,1714,1821,1949,2068,2148,2167,2113,1990,1815,
+1608,1397,1207,1057,962,924,936,983,1042,1092,1119,1115,1085,1039,996,975,996,1073,1208,1390,
+1591,1778,1920,2005,2036,2038,2038,2055,2092,2135,2165,2171,2157,2140,2139,2162,2206,2255,2292,2310,
+2310,2306,2309,2326,2355,2389,2421,2448,2473,2500,2529,2559,2587,2609,2626,2641,2657,2677,2700,2724,
+2743,2755,2761,2766,2775,2788,2804,2816,2816,2798,2765,2715,2671,2635,2624,2641,2680,2728,2765,2781,
+2771,2741,2701,2658,2616,2577,2541,2509,2486,2476,2480,2494,2511,2524,2530,2531,2535,2549,2578,2621,
+2674,2730,2783,2831,2875,2920,2968,3020,3075,3129,3177,3217,3248,3273,3295,3318,3343,3368,3389,3402,
+3404,3392,3370,3346,3327,3321,3332,3357,3391,3424,3452,3476,3501,3537,3589,3654,3725,3790,3841,3879,
+3910,3945,3990,4045,4105,4165,4223,4281,4343,4408,4470,4516,4539,4536,4515,4487,4461,4440,4423,4403,
+4381,4361,4352,4355,4365,4366,4345,4298,4233,4172,4135,4135,4165,4206,4235,4235,4203,4149,4091,4042,
+4010,3994,3985,3975,3958,3931,3895,3856,3816,3782,3754,3732,3712,3689,3659,3622,3582,3545,3515,3495,
+3482,3473,3465,3456,3449,3445,3445,3450,3458,3468,3477,3485,3489,3487,3479,3464,3446,3430,3420,3416,
+3415,3411,3394,3360,3307,3235,3146,3041,2921,2789,2653,2519,2399,2299,2221,2161,2111,2064,2016,1968,
+1922,1878,1836,1792,1743,1688,1628,1567,1507,1449,1392,1333,1271,1208,1145,1084,1024,963,900,836,
+773,713,657,601,540,470,390,307,228,163,113,75,38,-9,-75,-159,-252,-343,-422,-486,
+-537,-584,-636,-698,-767,-837,-902,-957,-1005,-1052,-1105,-1167,-1239,-1316,-1390,-1459,-1520,-1576,-1631,-1686,
+-1741,-1793,-1841,-1884,-1924,-1964,-2004,-2043,-2078,-2108,-2132,-2154,-2177,-2205,-2239,-2277,-2315,-2351,-2381,-2405,
+-2426,-2443,-2460,-2475,-2488,-2499,-2505,-2505,-2499,-2489,-2476,-2464,-2455,-2449,-2446,-2441,-2435,-2425,-2415,-2406,
+-2400,-2395,-2390,-2381,-2368,-2353,-2339,-2329,-2320,-2307,-2286,-2252,-2209,-2165,-2127,-2104,-2093,-2089,-2084,-2071,
+-2052,-2035,-2030,-2046,-2083,-2130,-2172,-2195,-2192,-2168,-2137,-2116,-2115,-2134,-2162,-2185,-2193,-2184,-2171,-2166,
+-2178,-2203,-2226,-2231,-2210,-2169,-2131,-2124,-2164,-2251,-2363,-2471,-2552,-2600,-2627,-2650,-2682,-2719,-2744,-2737,
+-2690,-2614,-2534,-2480,-2472,-2510,-2581,-2662,-2737,-2802,-2863,-2931,-3011,-3100,-3188,-3261,-3309,-3330,-3327,-3309,
+-3285,-3264,-3252,-3250,-3256,-3267,-3279,-3290,-3299,-3310,-3325,-3344,-3364,-3382,-3393,-3396,-3393,-3388,-3385,-3381,
+-3375,-3363,-3343,-3316,-3289,-3264,-3244,-3228,-3213,-3196,-3178,-3160,-3144,-3128,-3113,-3094,-3071,-3044,-3016,-2991,
+-2970,-2955,-2942,-2928,-2908,-2881,-2845,-2802,-2757,-2715,-2682,-2659,-2647,-2640,-2632,-2615,-2589,-2554,-2516,-2481,
+-2452,-2430,-2412,-2396,-2381,-2368,-2358,-2352,-2347,-2341,-2329,-2311,-2289,-2267,-2249,-2236,-2228,-2219,-2208,-2191,
+-2171,-2150,-2128,-2105,-2080,-2053,-2022,-1990,-1959,-1933,-1911,-1893,-1876,-1858,-1838,-1817,-1797,-1783,-1775,-1773,
+-1776,-1779,-1780,-1779,-1777,-1776,-1776,-1779,-1780,-1776,-1766,-1748,-1724,-1695,-1663,-1629,-1594,-1558,-1525,-1497,
+-1476,-1459,-1441,-1417,-1384,-1343,-1301,-1265,-1242,-1233,-1235,-1241,-1245,-1244,-1240,-1236,-1234,-1233,-1232,-1231,
+-1228,-1227,-1230,-1238,-1250,-1262,-1273,-1281,-1288,-1295,-1303,-1309,-1311,-1306,-1296,-1284,-1275,-1271,-1272,-1275,
+-1273,-1263,-1244,-1221,-1196,-1175,-1157,-1141,-1124,-1104,-1081,-1054,-1026,-997,-969,-945,-929,-927,-939,-965,
+-997,-1025,-1037,-1025,-989,-932,-863,-790,-721,-658,-605,-561,-527,-501,-481,-464,-445,-423,-394,-359,
+-318,-272,-221,-165,-107,-45,15,76,134,190,243,293,338,379,417,451,481,506,520,522,
+511,489,465,450,454,485,547,635,741,856,970,1074,1163,1235,1288,1322,1336,1330,1305,1263,
+1211,1159,1120,1108,1135,1204,1309,1432,1555,1659,1736,1788,1824,1855,1885,1912,1925,1912,1868,1799,
+1721,1652,1603,1578,1572,1573,1575,1571,1564,1556,1552,1551,1553,1558,1564,1573,1583,1592,1596,1591,
+1576,1557,1540,1533,1542,1566,1601,1641,1680,1719,1760,1807,1866,1938,2020,2103,2176,2222,2226,2178,
+2075,1927,1753,1581,1439,1345,1306,1310,1337,1365,1373,1347,1281,1177,1041,889,749,655,646,745,
+952,1236,1540,1802,1978,2055,2056,2024,1999,2006,2041,2082,2109,2112,2099,2091,2104,2143,2198,2250,
+2283,2293,2287,2279,2280,2297,2325,2359,2393,2424,2453,2484,2515,2544,2570,2590,2607,2623,2643,2664,
+2684,2699,2706,2707,2707,2713,2728,2748,2766,2769,2752,2715,2626,2588,2555,2539,2546,2571,2602,2626,
+2631,2616,2584,2543,2499,2456,2415,2379,2350,2333,2332,2344,2363,2382,2393,2394,2392,2394,2411,2447,
+2499,2561,2623,2680,2728,2772,2815,2863,2916,2972,3027,3076,3117,3148,3172,3191,3207,3221,3233,3241,
+3244,3242,3235,3226,3218,3216,3223,3242,3271,3305,3341,3374,3408,3444,3488,3542,3601,3660,3711,3752,
+3784,3814,3849,3893,3943,3996,4047,4095,4141,4189,4237,4282,4315,4333,4333,4322,4307,4294,4284,4274,
+4263,4250,4242,4242,4253,4266,4269,4249,4203,4137,4069,4018,3995,4000,4022,4044,4054,4047,4026,3998,
+3971,3947,3929,3913,3898,3881,3862,3838,3810,3778,3742,3707,3673,3642,3613,3584,3555,3528,3506,3493,
+3490,3496,3509,3522,3530,3531,3524,3508,3489,3470,3456,3448,3448,3451,3452,3448,3436,3417,3395,3374,
+3356,3338,3319,3294,3260,3218,3167,3104,3024,2923,2800,2659,2511,2372,2254,2163,2098,2051,2012,1973,
+1931,1887,1840,1793,1743,1691,1635,1577,1520,1465,1412,1361,1308,1253,1196,1138,1079,1019,958,893,
+827,761,699,641,585,525,456,377,293,211,142,90,53,20,-19,-78,-156,-248,-344,-431,
+-503,-561,-612,-663,-719,-780,-843,-903,-957,-1009,-1062,-1122,-1190,-1265,-1340,-1413,-1479,-1541,-1599,-1657,
+-1713,-1765,-1811,-1850,-1885,-1920,-1959,-2004,-2050,-2092,-2126,-2151,-2171,-2192,-2221,-2259,-2303,-2346,-2384,-2413,
+-2434,-2452,-2470,-2491,-2514,-2534,-2549,-2555,-2552,-2544,-2534,-2527,-2524,-2523,-2522,-2518,-2510,-2499,-2488,-2480,
+-2478,-2479,-2481,-2479,-2470,-2456,-2440,-2427,-2420,-2417,-2411,-2395,-2365,-2322,-2273,-2228,-2196,-2178,-2172,-2167,
+-2157,-2138,-2116,-2100,-2102,-2126,-2166,-2209,-2239,-2245,-2229,-2201,-2178,-2175,-2194,-2227,-2259,-2275,-2271,-2256,
+-2244,-2247,-2268,-2298,-2320,-2323,-2311,-2297,-2304,-2346,-2422,-2518,-2610,-2679,-2724,-2755,-2791,-2844,-2906,-2960,
+-2983,-2962,-2904,-2835,-2785,-2777,-2818,-2895,-2985,-3071,-3141,-3200,-3257,-3320,-3390,-3456,-3509,-3538,-3540,-3520,
+-3490,-3460,-3439,-3430,-3430,-3436,-3442,-3447,-3450,-3455,-3464,-3480,-3501,-3522,-3538,-3546,-3545,-3539,-3532,-3527,
+-3526,-3525,-3518,-3502,-3478,-3447,-3414,-3385,-3360,-3342,-3328,-3316,-3305,-3292,-3276,-3254,-3228,-3197,-3165,-3135,
+-3108,-3087,-3068,-3051,-3032,-3009,-2980,-2945,-2906,-2866,-2829,-2797,-2773,-2756,-2742,-2726,-2705,-2678,-2646,-2613,
+-2582,-2556,-2534,-2514,-2494,-2475,-2458,-2443,-2431,-2419,-2405,-2388,-2367,-2345,-2325,-2310,-2301,-2296,-2291,-2286,
+-2279,-2269,-2257,-2242,-2222,-2195,-2163,-2126,-2087,-2052,-2021,-1996,-1976,-1958,-1941,-1925,-1911,-1901,-1896,-1894,
+-1895,-1894,-1889,-1879,-1864,-1846,-1830,-1819,-1812,-1811,-1810,-1808,-1800,-1786,-1767,-1742,-1716,-1687,-1660,-1634,
+-1612,-1591,-1569,-1545,-1514,-1476,-1435,-1396,-1364,-1343,-1332,-1328,-1328,-1327,-1325,-1320,-1315,-1309,-1303,-1297,
+-1292,-1289,-1290,-1297,-1307,-1319,-1329,-1336,-1341,-1347,-1354,-1364,-1372,-1374,-1367,-1354,-1338,-1326,-1321,-1322,
+-1326,-1325,-1316,-1299,-1275,-1250,-1226,-1205,-1185,-1165,-1145,-1125,-1105,-1086,-1066,-1044,-1023,-1006,-999,-1007,
+-1030,-1061,-1088,-1101,-1091,-1057,-1002,-936,-868,-803,-744,-692,-645,-606,-573,-547,-526,-505,-480,-447,
+-404,-353,-297,-239,-183,-130,-80,-30,23,81,144,209,271,325,369,404,435,466,497,526,
+544,546,527,494,461,446,466,530,636,773,925,1074,1209,1320,1407,1468,1504,1515,1502,1466,
+1412,1350,1290,1247,1230,1246,1296,1374,1467,1563,1647,1715,1764,1802,1835,1864,1889,1904,1901,1881,
+1849,1814,1785,1768,1760,1754,1745,1731,1718,1712,1719,1740,1765,1786,1792,1784,1767,1750,1743,1748,
+1759,1768,1768,1755,1732,1708,1692,1691,1705,1731,1760,1785,1802,1813,1824,1847,1888,1950,2024,2095,
+2143,2154,2125,2067,1998,1939,1903,1889,1888,1883,1864,1822,1757,1665,1539,1368,1150,903,669,505,
+469,590,854,1204,1557,1836,1998,2045,2018,1970,1945,1958,1997,2037,2059,2060,2055,2061,2090,2139,
+2193,2234,2252,2249,2236,2227,2233,2253,2284,2320,2355,2388,2422,2456,2489,2520,2545,2566,2584,2601,
+2620,2636,2647,2650,2646,2639,2635,2640,2653,2665,2669,2656,2626,2513,2494,2475,2463,2462,2469,2477,
+2477,2463,2434,2395,2351,2308,2268,2235,2209,2192,2186,2192,2206,2225,2241,2251,2254,2258,2269,2294,
+2335,2390,2451,2512,2569,2619,2667,2715,2765,2816,2868,2917,2961,3000,3034,3062,3084,3099,3106,3107,
+3105,3101,3100,3101,3107,3115,3128,3145,3167,3196,3229,3267,3306,3348,3391,3435,3480,3524,3565,3600,
+3631,3661,3694,3733,3778,3826,3873,3915,3953,3988,4023,4057,4088,4111,4124,4128,4127,4127,4131,4136,
+4140,4139,4134,4129,4128,4134,4143,4146,4133,4101,4051,3995,3945,3911,3896,3896,3904,3913,3918,3917,
+3911,3900,3884,3863,3840,3817,3797,3781,3766,3751,3731,3704,3670,3633,3595,3560,3528,3501,3481,3471,
+3472,3486,3512,3547,3582,3612,3628,3627,3608,3576,3537,3500,3472,3454,3445,3439,3429,3413,3389,3359,
+3327,3295,3264,3233,3201,3169,3135,3099,3055,2995,2912,2802,2668,2520,2373,2243,2139,2062,2006,1963,
+1924,1884,1841,1796,1748,1698,1646,1590,1533,1477,1424,1374,1326,1279,1230,1179,1127,1074,1018,959,
+893,823,752,682,617,554,490,421,343,261,181,112,60,22,-7,-44,-95,-167,-255,-350,
+-440,-518,-582,-635,-684,-732,-783,-837,-892,-948,-1007,-1071,-1142,-1217,-1293,-1366,-1431,-1491,-1549,-1607,
+-1668,-1728,-1784,-1831,-1868,-1899,-1930,-1966,-2010,-2057,-2103,-2140,-2170,-2193,-2217,-2248,-2286,-2329,-2371,-2407,
+-2433,-2453,-2471,-2492,-2517,-2545,-2569,-2585,-2592,-2591,-2587,-2585,-2588,-2595,-2602,-2606,-2602,-2592,-2578,-2565,
+-2559,-2559,-2565,-2571,-2571,-2565,-2552,-2536,-2523,-2515,-2511,-2507,-2495,-2469,-2431,-2383,-2337,-2301,-2279,-2270,
+-2266,-2258,-2239,-2213,-2187,-2175,-2183,-2212,-2252,-2286,-2303,-2297,-2276,-2257,-2253,-2273,-2308,-2345,-2365,-2364,
+-2345,-2326,-2322,-2343,-2384,-2431,-2468,-2487,-2493,-2502,-2527,-2574,-2637,-2702,-2757,-2801,-2841,-2890,-2959,-3042,
+-3123,-3181,-3201,-3186,-3152,-3122,-3120,-3153,-3216,-3292,-3366,-3427,-3475,-3518,-3560,-3604,-3645,-3676,-3691,-3689,
+-3674,-3654,-3635,-3623,-3618,-3617,-3617,-3615,-3613,-3612,-3616,-3626,-3641,-3660,-3677,-3689,-3693,-3690,-3683,-3676,
+-3671,-3670,-3668,-3663,-3651,-3629,-3601,-3569,-3537,-3510,-3489,-3475,-3464,-3454,-3441,-3422,-3397,-3367,-3334,-3301,
+-3270,-3242,-3216,-3190,-3163,-3133,-3101,-3069,-3037,-3006,-2977,-2951,-2928,-2906,-2883,-2860,-2833,-2803,-2772,-2741,
+-2712,-2688,-2668,-2650,-2631,-2612,-2591,-2571,-2551,-2532,-2511,-2488,-2463,-2437,-2412,-2392,-2378,-2370,-2365,-2361,
+-2358,-2355,-2352,-2349,-2345,-2336,-2319,-2293,-2260,-2221,-2181,-2143,-2108,-2078,-2051,-2030,-2013,-2004,-2001,-2004,
+-2009,-2014,-2014,-2006,-1990,-1967,-1942,-1919,-1902,-1891,-1887,-1885,-1883,-1877,-1868,-1854,-1839,-1823,-1808,-1794,
+-1778,-1761,-1741,-1716,-1688,-1657,-1624,-1592,-1564,-1540,-1520,-1505,-1491,-1477,-1463,-1449,-1435,-1421,-1407,-1393,
+-1380,-1371,-1367,-1371,-1381,-1393,-1403,-1409,-1410,-1409,-1409,-1412,-1418,-1422,-1422,-1415,-1403,-1389,-1380,-1377,
+-1379,-1382,-1380,-1371,-1355,-1334,-1311,-1288,-1265,-1240,-1215,-1190,-1168,-1150,-1136,-1122,-1106,-1089,-1072,-1063,
+-1066,-1082,-1106,-1128,-1137,-1127,-1095,-1047,-991,-934,-881,-834,-789,-747,-707,-671,-639,-611,-584,-554,
+-515,-467,-410,-347,-283,-222,-166,-116,-67,-16,40,102,168,233,291,340,379,414,449,487,
+526,557,573,569,548,523,511,531,591,693,826,975,1123,1259,1375,1468,1537,1581,1597,1585,
+1550,1500,1448,1404,1379,1378,1400,1440,1493,1551,1607,1659,1706,1748,1786,1820,1850,1870,1880,1878,
+1869,1859,1855,1861,1873,1885,1887,1875,1852,1829,1817,1826,1854,1893,1928,1947,1946,1929,1905,1887,
+1880,1882,1887,1886,1874,1851,1823,1799,1785,1785,1797,1813,1823,1822,1808,1788,1774,1779,1812,1873,
+1950,2029,2095,2139,2165,2182,2198,2216,2229,2226,2201,2157,2105,2057,2013,1956,1854,1675,1411,1091,
+781,564,506,633,912,1266,1602,1849,1976,2003,1975,1942,1935,1956,1991,2019,2030,2030,2034,2053,
+2091,2137,2177,2200,2204,2194,2184,2184,2195,2217,2244,2272,2302,2335,2373,2415,2457,2495,2526,2548,
+2565,2579,2589,2595,2593,2582,2565,2547,2534,2529,2530,2531,2527,2513,2407,2407,2403,2398,2392,2385,
+2372,2351,2320,2278,2231,2184,2142,2109,2086,2072,2066,2066,2071,2079,2087,2095,2102,2111,2126,2150,
+2185,2230,2283,2339,2396,2454,2512,2571,2629,2685,2736,2780,2819,2853,2887,2920,2951,2976,2991,2995,
+2991,2983,2978,2981,2992,3011,3033,3055,3077,3100,3127,3160,3200,3244,3288,3330,3367,3398,3425,3450,
+3475,3503,3538,3578,3623,3670,3715,3756,3791,3821,3851,3881,3909,3934,3952,3962,3966,3968,3974,3984,
+3998,4009,4015,4014,4009,4004,4002,4003,4004,4000,3986,3962,3932,3902,3876,3855,3841,3832,3827,3824,
+3824,3823,3820,3810,3792,3768,3742,3718,3700,3688,3678,3667,3650,3626,3594,3559,3525,3495,3472,3457,
+3452,3457,3472,3495,3523,3551,3574,3586,3586,3572,3549,3521,3495,3476,3463,3453,3442,3425,3399,3364,
+3325,3286,3250,3217,3185,3154,3121,3087,3051,3009,2957,2886,2794,2679,2548,2411,2279,2162,2064,1984,
+1918,1862,1814,1771,1732,1693,1653,1609,1559,1506,1451,1397,1345,1297,1250,1203,1156,1109,1060,1007,
+950,887,818,745,672,601,531,460,387,308,228,151,85,33,-5,-38,-76,-128,-197,-281,
+-372,-459,-534,-596,-646,-690,-732,-776,-823,-875,-931,-994,-1064,-1139,-1217,-1293,-1363,-1425,-1481,-1537,
+-1596,-1659,-1725,-1787,-1840,-1883,-1918,-1950,-1986,-2027,-2073,-2118,-2159,-2193,-2222,-2250,-2280,-2315,-2352,-2388,
+-2420,-2446,-2469,-2493,-2521,-2551,-2581,-2607,-2623,-2631,-2632,-2633,-2638,-2648,-2661,-2674,-2680,-2679,-2671,-2659,
+-2647,-2640,-2639,-2642,-2645,-2646,-2642,-2633,-2620,-2608,-2599,-2594,-2588,-2577,-2557,-2526,-2487,-2447,-2414,-2394,
+-2387,-2386,-2382,-2366,-2338,-2306,-2281,-2274,-2290,-2323,-2357,-2379,-2381,-2366,-2348,-2342,-2357,-2389,-2424,-2446,
+-2446,-2426,-2404,-2399,-2425,-2481,-2552,-2616,-2656,-2667,-2660,-2652,-2659,-2688,-2737,-2796,-2859,-2924,-2994,-3073,
+-3159,-3244,-3316,-3364,-3387,-3391,-3390,-3398,-3424,-3466,-3518,-3571,-3618,-3657,-3692,-3724,-3754,-3783,-3805,-3820,
+-3826,-3826,-3823,-3818,-3813,-3807,-3800,-3793,-3786,-3783,-3784,-3790,-3799,-3810,-3820,-3827,-3831,-3831,-3828,-3823,
+-3817,-3812,-3807,-3802,-3796,-3785,-3770,-3750,-3725,-3698,-3671,-3647,-3626,-3608,-3592,-3574,-3553,-3528,-3500,-3470,
+-3440,-3411,-3382,-3352,-3319,-3283,-3245,-3207,-3172,-3142,-3116,-3095,-3076,-3057,-3035,-3009,-2978,-2944,-2907,-2873,
+-2842,-2817,-2798,-2781,-2764,-2745,-2725,-2702,-2679,-2657,-2634,-2610,-2584,-2557,-2530,-2506,-2487,-2474,-2465,-2457,
+-2448,-2440,-2433,-2430,-2432,-2438,-2443,-2443,-2433,-2413,-2382,-2344,-2303,-2261,-2220,-2184,-2153,-2129,-2113,-2105,
+-2102,-2103,-2104,-2100,-2091,-2075,-2054,-2032,-2012,-1996,-1986,-1980,-1975,-1970,-1962,-1952,-1941,-1931,-1923,-1916,
+-1908,-1897,-1881,-1861,-1836,-1811,-1788,-1770,-1755,-1743,-1732,-1719,-1704,-1685,-1664,-1641,-1619,-1596,-1573,-1550,
+-1527,-1506,-1492,-1486,-1489,-1499,-1511,-1520,-1524,-1522,-1516,-1509,-1503,-1499,-1493,-1485,-1474,-1461,-1451,-1446,
+-1444,-1445,-1443,-1436,-1423,-1405,-1384,-1364,-1344,-1323,-1299,-1272,-1246,-1223,-1205,-1191,-1178,-1164,-1148,-1132,
+-1120,-1117,-1124,-1137,-1149,-1150,-1135,-1106,-1065,-1019,-975,-934,-896,-858,-820,-782,-745,-712,-681,-651,
+-618,-579,-530,-473,-410,-342,-275,-211,-151,-95,-43,8,61,115,171,224,276,324,371,419,
+469,519,564,598,617,623,622,627,650,698,772,866,972,1079,1182,1277,1362,1433,1484,1512,
+1514,1496,1467,1441,1430,1441,1474,1524,1579,1633,1681,1723,1763,1805,1850,1897,1940,1974,1993,1995,
+1985,1970,1960,1960,1972,1991,2006,2007,1990,1958,1920,1889,1874,1879,1898,1922,1940,1945,1934,1913,
+1888,1866,1849,1838,1831,1826,1821,1815,1811,1812,1819,1835,1858,1883,1902,1910,1907,1896,1888,1891,
+1911,1946,1990,2032,2070,2102,2135,2172,2210,2240,2249,2233,2199,2168,2162,2186,2224,2231,2154,1959,
+1649,1276,926,691,634,763,1029,1352,1646,1854,1962,1990,1979,1963,1961,1972,1987,1998,2003,2011,
+2029,2059,2096,2131,2152,2159,2156,2150,2148,2155,2167,2183,2200,2221,2250,2291,2341,2396,2447,2488,
+2515,2529,2536,2539,2537,2530,2514,2490,2462,2434,2413,2403,2401,2404,2407,2317,2324,2327,2322,2312,
+2296,2273,2243,2205,2161,2114,2070,2032,2005,1989,1982,1981,1980,1978,1973,1967,1964,1967,1981,2007,
+2044,2087,2135,2184,2234,2288,2347,2413,2483,2552,2614,2665,2703,2733,2759,2788,2819,2851,2877,2893,
+2897,2891,2883,2881,2890,2909,2936,2963,2989,3012,3035,3063,3098,3141,3187,3231,3268,3296,3315,3331,
+3348,3372,3404,3444,3489,3536,3580,3619,3652,3682,3710,3739,3770,3799,3823,3840,3849,3851,3851,3854,
+3862,3874,3886,3895,3899,3898,3894,3890,3887,3885,3883,3879,3872,3862,3850,3836,3819,3799,3778,3758,
+3743,3735,3733,3734,3732,3723,3706,3683,3657,3634,3617,3604,3593,3580,3561,3537,3510,3483,3460,3445,
+3436,3432,3430,3427,3421,3412,3400,3386,3372,3360,3351,3348,3352,3362,3378,3394,3404,3403,3387,3359,
+3322,3283,3248,3220,3197,3175,3150,3118,3080,3037,2989,2937,2878,2806,2718,2614,2497,2371,2244,2122,
+2010,1910,1827,1761,1711,1673,1644,1616,1583,1541,1491,1435,1377,1321,1268,1219,1172,1126,1080,1032,
+981,926,867,803,735,666,595,522,446,367,284,201,124,58,5,-37,-75,-118,-172,-240,
+-319,-400,-477,-543,-597,-643,-685,-729,-775,-826,-880,-937,-998,-1063,-1134,-1208,-1282,-1353,-1419,-1480,
+-1539,-1599,-1660,-1723,-1783,-1838,-1884,-1923,-1958,-1995,-2035,-2078,-2123,-2166,-2204,-2239,-2271,-2302,-2333,-2364,
+-2394,-2423,-2452,-2484,-2518,-2554,-2591,-2623,-2648,-2664,-2673,-2678,-2684,-2692,-2703,-2716,-2727,-2734,-2736,-2733,
+-2726,-2718,-2711,-2705,-2703,-2703,-2703,-2704,-2702,-2698,-2692,-2685,-2677,-2669,-2657,-2639,-2614,-2582,-2549,-2521,
+-2503,-2498,-2499,-2497,-2485,-2458,-2422,-2388,-2370,-2373,-2396,-2427,-2449,-2454,-2442,-2423,-2413,-2423,-2451,-2486,
+-2511,-2515,-2499,-2479,-2477,-2510,-2580,-2670,-2754,-2808,-2818,-2790,-2748,-2716,-2717,-2758,-2833,-2928,-3028,-3122,
+-3206,-3282,-3350,-3411,-3464,-3507,-3540,-3567,-3591,-3618,-3648,-3681,-3717,-3754,-3789,-3823,-3854,-3882,-3906,-3927,
+-3944,-3958,-3968,-3974,-3975,-3970,-3960,-3949,-3940,-3936,-3939,-3948,-3958,-3967,-3971,-3970,-3965,-3960,-3956,-3953,
+-3950,-3945,-3937,-3928,-3919,-3911,-3904,-3898,-3889,-3875,-3855,-3830,-3800,-3771,-3742,-3716,-3692,-3670,-3646,-3622,
+-3597,-3570,-3543,-3513,-3480,-3444,-3406,-3367,-3328,-3293,-3261,-3234,-3211,-3189,-3167,-3142,-3113,-3081,-3046,-3010,
+-2977,-2948,-2924,-2904,-2885,-2865,-2842,-2817,-2791,-2767,-2745,-2724,-2704,-2682,-2660,-2638,-2618,-2603,-2592,-2583,
+-2572,-2559,-2544,-2531,-2523,-2523,-2531,-2543,-2553,-2557,-2550,-2532,-2505,-2470,-2433,-2394,-2357,-2321,-2288,-2259,
+-2235,-2217,-2203,-2192,-2181,-2168,-2153,-2136,-2118,-2102,-2088,-2078,-2069,-2061,-2051,-2040,-2028,-2016,-2005,-1996,
+-1988,-1978,-1964,-1946,-1925,-1905,-1889,-1878,-1874,-1874,-1875,-1874,-1868,-1858,-1843,-1826,-1808,-1789,-1769,-1746,
+-1721,-1695,-1672,-1654,-1644,-1644,-1649,-1658,-1664,-1665,-1661,-1652,-1640,-1625,-1610,-1593,-1575,-1558,-1544,-1534,
+-1529,-1527,-1523,-1513,-1497,-1476,-1452,-1429,-1409,-1392,-1375,-1356,-1336,-1314,-1294,-1277,-1262,-1247,-1232,-1214,
+-1196,-1180,-1170,-1165,-1163,-1158,-1146,-1126,-1097,-1063,-1028,-992,-957,-920,-882,-842,-805,-770,-740,-713,
+-685,-654,-616,-571,-519,-460,-396,-328,-259,-191,-128,-72,-23,19,61,104,152,205,262,322,
+382,441,497,549,594,631,660,684,710,741,781,832,890,953,1019,1087,1156,1226,1292,1348,
+1387,1408,1411,1407,1408,1425,1464,1522,1593,1665,1730,1784,1830,1873,1920,1971,2025,2073,2107,2123,
+2120,2103,2080,2060,2051,2054,2064,2073,2073,2060,2033,1996,1957,1923,1900,1889,1889,1895,1901,1902,
+1895,1878,1854,1828,1806,1792,1788,1792,1799,1805,1809,1816,1830,1858,1898,1945,1987,2017,2029,2028,
+2022,2021,2027,2039,2049,2054,2056,2065,2088,2127,2173,2210,2226,2220,2204,2202,2233,2292,2350,2354,
+2255,2029,1699,1328,1005,810,787,929,1182,1471,1726,1904,1996,2020,2007,1983,1965,1958,1961,1971,
+1988,2013,2043,2072,2094,2105,2105,2098,2092,2092,2100,2112,2127,2143,2162,2191,2231,2283,2339,2392,
+2433,2457,2467,2467,2463,2457,2449,2435,2414,2385,2355,2328,2311,2306,2309,2317,2228,2230,2228,2219,
+2204,2184,2161,2133,2101,2064,2025,1988,1957,1936,1926,1923,1924,1921,1914,1900,1885,1876,1878,1896,
+1929,1973,2022,2070,2115,2160,2207,2263,2329,2401,2472,2535,2584,2619,2645,2669,2695,2727,2760,2788,
+2806,2813,2812,2810,2814,2828,2851,2879,2907,2932,2955,2980,3012,3052,3097,3144,3185,3216,3236,3249,
+3261,3277,3301,3334,3374,3415,3454,3488,3519,3548,3577,3608,3642,3677,3710,3736,3754,3763,3765,3765,
+3766,3770,3778,3789,3800,3811,3819,3824,3827,3827,3823,3815,3806,3795,3784,3773,3762,3747,3728,3707,
+3686,3670,3662,3662,3667,3673,3672,3662,3642,3616,3589,3565,3547,3531,3517,3499,3478,3455,3433,3414,
+3401,3392,3383,3368,3344,3309,3265,3218,3172,3135,3111,3104,3114,3138,3172,3210,3245,3271,3282,3279,
+3263,3240,3218,3201,3192,3186,3178,3163,3136,3098,3053,3004,2954,2904,2848,2782,2703,2606,2493,2367,
+2233,2099,1972,1860,1767,1697,1646,1611,1583,1553,1516,1468,1412,1350,1289,1231,1179,1131,1086,1042,
+995,946,892,835,776,714,650,583,511,432,347,259,172,93,25,-28,-72,-113,-157,-211,
+-274,-344,-415,-479,-535,-584,-630,-677,-731,-790,-853,-915,-974,-1031,-1088,-1148,-1214,-1285,-1359,-1432,
+-1501,-1565,-1625,-1680,-1732,-1782,-1829,-1873,-1914,-1953,-1991,-2031,-2072,-2114,-2158,-2200,-2241,-2279,-2313,-2343,
+-2371,-2398,-2427,-2459,-2496,-2536,-2578,-2616,-2648,-2674,-2693,-2707,-2721,-2734,-2747,-2760,-2770,-2778,-2783,-2786,
+-2787,-2787,-2785,-2780,-2774,-2769,-2767,-2769,-2775,-2782,-2786,-2785,-2778,-2768,-2756,-2742,-2724,-2702,-2674,-2643,
+-2615,-2594,-2584,-2582,-2580,-2569,-2544,-2508,-2471,-2445,-2440,-2454,-2478,-2499,-2504,-2492,-2474,-2463,-2473,-2504,
+-2545,-2579,-2593,-2585,-2569,-2566,-2598,-2671,-2773,-2874,-2945,-2966,-2938,-2880,-2825,-2805,-2834,-2914,-3025,-3145,
+-3253,-3337,-3400,-3448,-3492,-3538,-3589,-3642,-3692,-3735,-3770,-3800,-3828,-3858,-3891,-3926,-3961,-3993,-4019,-4039,
+-4053,-4065,-4074,-4082,-4087,-4086,-4080,-4070,-4060,-4056,-4059,-4069,-4084,-4097,-4104,-4104,-4097,-4088,-4080,-4075,
+-4071,-4067,-4059,-4047,-4033,-4019,-4011,-4009,-4011,-4013,-4009,-3995,-3970,-3937,-3901,-3864,-3832,-3803,-3779,-3758,
+-3736,-3713,-3688,-3660,-3629,-3595,-3559,-3522,-3485,-3449,-3413,-3379,-3347,-3315,-3286,-3257,-3229,-3201,-3172,-3143,
+-3113,-3085,-3059,-3034,-3011,-2986,-2959,-2930,-2900,-2871,-2846,-2825,-2808,-2792,-2776,-2759,-2742,-2726,-2715,-2706,
+-2699,-2691,-2679,-2664,-2648,-2636,-2629,-2630,-2636,-2643,-2648,-2647,-2639,-2625,-2607,-2585,-2561,-2534,-2502,-2467,
+-2430,-2394,-2361,-2334,-2312,-2295,-2280,-2265,-2248,-2229,-2209,-2191,-2175,-2160,-2147,-2134,-2121,-2106,-2090,-2074,
+-2058,-2042,-2024,-2007,-1989,-1973,-1962,-1956,-1955,-1958,-1962,-1963,-1961,-1954,-1946,-1936,-1928,-1921,-1913,-1902,
+-1888,-1869,-1849,-1831,-1817,-1809,-1807,-1809,-1811,-1810,-1805,-1796,-1783,-1766,-1748,-1727,-1705,-1684,-1664,-1649,
+-1638,-1631,-1624,-1613,-1596,-1573,-1544,-1515,-1488,-1465,-1447,-1431,-1417,-1402,-1386,-1371,-1355,-1340,-1323,-1305,
+-1285,-1265,-1245,-1226,-1207,-1186,-1163,-1137,-1111,-1085,-1059,-1034,-1005,-971,-931,-887,-843,-804,-772,-747,
+-725,-700,-669,-631,-586,-538,-486,-431,-372,-308,-241,-176,-116,-65,-21,17,58,104,158,218,
+279,338,392,441,486,529,571,614,658,704,754,807,863,920,976,1032,1087,1143,1201,1257,
+1310,1355,1389,1413,1431,1453,1485,1532,1593,1662,1732,1795,1849,1895,1937,1979,2022,2063,2098,2122,
+2131,2127,2113,2094,2077,2065,2059,2058,2059,2060,2057,2048,2032,2009,1980,1951,1928,1916,1917,1931,
+1951,1969,1975,1967,1948,1923,1902,1888,1881,1874,1864,1849,1834,1829,1843,1878,1926,1976,2014,2035,
+2042,2046,2057,2078,2103,2120,2123,2112,2101,2108,2145,2207,2277,2329,2345,2323,2283,2255,2260,2292,
+2322,2301,2186,1964,1663,1347,1092,964,988,1148,1389,1645,1857,1994,2051,2048,2014,1974,1947,1940,
+1951,1976,2006,2035,2054,2059,2051,2034,2014,2001,1999,2010,2030,2055,2081,2108,2138,2174,2216,2260,
+2299,2328,2344,2347,2344,2339,2334,2330,2323,2311,2292,2269,2248,2232,2224,2224,2228,2114,2112,2106,
+2094,2078,2060,2040,2017,1993,1966,1937,1909,1887,1873,1869,1872,1877,1880,1876,1865,1852,1843,1847,
+1866,1901,1947,1997,2045,2088,2128,2170,2218,2275,2339,2402,2459,2505,2539,2565,2589,2616,2647,2680,
+2710,2734,2748,2757,2765,2776,2793,2815,2840,2865,2890,2916,2946,2982,3025,3070,3112,3145,3168,3182,
+3192,3204,3222,3246,3276,3307,3335,3361,3384,3409,3437,3472,3512,3554,3596,3632,3660,3679,3691,3697,
+3701,3705,3709,3715,3723,3733,3746,3761,3776,3789,3795,3793,3781,3761,3736,3711,3688,3670,3655,3642,
+3631,3623,3619,3619,3624,3632,3637,3636,3625,3605,3579,3552,3528,3508,3492,3478,3461,3441,3418,3394,
+3371,3350,3330,3309,3282,3248,3206,3160,3114,3074,3045,3028,3024,3032,3047,3066,3087,3106,3121,3130,
+3135,3136,3138,3142,3152,3164,3176,3182,3177,3159,3128,3088,3042,2994,2944,2892,2834,2766,2686,2592,
+2483,2361,2230,2093,1959,1835,1728,1644,1581,1535,1498,1462,1420,1370,1312,1251,1191,1136,1087,1043,
+1000,956,907,854,798,739,680,618,554,484,406,321,233,146,67,0,-53,-96,-136,-180,
+-230,-289,-353,-416,-473,-524,-570,-617,-670,-732,-801,-873,-941,-1003,-1056,-1106,-1157,-1214,-1280,-1353,
+-1430,-1504,-1571,-1630,-1682,-1728,-1774,-1820,-1867,-1914,-1959,-2002,-2041,-2079,-2117,-2158,-2202,-2247,-2291,-2330,
+-2363,-2392,-2418,-2445,-2476,-2512,-2550,-2589,-2624,-2654,-2681,-2705,-2730,-2757,-2783,-2806,-2823,-2834,-2840,-2843,
+-2847,-2852,-2858,-2861,-2862,-2859,-2855,-2855,-2859,-2867,-2875,-2879,-2876,-2866,-2851,-2836,-2821,-2806,-2788,-2765,
+-2737,-2708,-2683,-2666,-2658,-2652,-2642,-2619,-2587,-2551,-2524,-2513,-2521,-2538,-2554,-2556,-2543,-2524,-2514,-2526,
+-2562,-2614,-2662,-2689,-2690,-2673,-2662,-2680,-2740,-2838,-2949,-3043,-3094,-3094,-3055,-3004,-2975,-2989,-3052,-3150,
+-3261,-3363,-3441,-3494,-3531,-3564,-3606,-3659,-3721,-3784,-3839,-3884,-3920,-3951,-3983,-4019,-4059,-4099,-4133,-4158,
+-4172,-4178,-4179,-4178,-4179,-4180,-4179,-4178,-4175,-4172,-4173,-4179,-4188,-4197,-4205,-4207,-4205,-4200,-4196,-4193,
+-4191,-4189,-4182,-4168,-4150,-4130,-4114,-4105,-4106,-4112,-4118,-4117,-4106,-4083,-4050,-4013,-3975,-3941,-3911,-3886,
+-3863,-3842,-3819,-3794,-3767,-3737,-3704,-3671,-3636,-3601,-3566,-3530,-3493,-3456,-3419,-3383,-3350,-3320,-3294,-3270,
+-3246,-3223,-3199,-3175,-3149,-3121,-3091,-3058,-3024,-2990,-2960,-2934,-2914,-2897,-2882,-2867,-2850,-2833,-2818,-2808,
+-2802,-2800,-2797,-2792,-2782,-2769,-2755,-2742,-2733,-2726,-2722,-2718,-2714,-2710,-2706,-2703,-2699,-2692,-2678,-2656,
+-2625,-2587,-2547,-2509,-2478,-2455,-2437,-2422,-2407,-2387,-2364,-2338,-2313,-2289,-2268,-2251,-2234,-2217,-2199,-2178,
+-2154,-2130,-2106,-2084,-2065,-2052,-2046,-2045,-2049,-2053,-2055,-2052,-2044,-2031,-2016,-2004,-1995,-1991,-1989,-1987,
+-1982,-1973,-1962,-1951,-1945,-1943,-1947,-1953,-1958,-1958,-1951,-1938,-1920,-1900,-1880,-1859,-1839,-1820,-1801,-1783,
+-1767,-1753,-1740,-1726,-1709,-1688,-1661,-1631,-1600,-1570,-1544,-1521,-1502,-1485,-1471,-1458,-1445,-1430,-1413,-1395,
+-1375,-1353,-1331,-1306,-1279,-1247,-1211,-1173,-1137,-1107,-1084,-1067,-1052,-1030,-998,-956,-908,-861,-821,-791,
+-768,-746,-719,-683,-638,-588,-540,-494,-450,-405,-354,-297,-235,-173,-117,-67,-21,22,70,122,
+176,229,276,317,353,388,426,471,523,583,650,722,800,879,959,1036,1105,1166,1219,1267,
+1312,1356,1400,1443,1485,1525,1565,1607,1654,1706,1762,1817,1869,1915,1954,1987,2015,2036,2052,2063,
+2068,2070,2070,2071,2073,2074,2072,2066,2056,2044,2034,2028,2026,2024,2017,2002,1981,1960,1948,1952,
+1974,2009,2046,2074,2084,2077,2057,2033,2011,1991,1971,1945,1916,1888,1871,1873,1894,1928,1961,1981,
+1988,1988,1996,2025,2075,2135,2185,2211,2209,2195,2192,2220,2285,2369,2440,2470,2444,2378,2304,2258,
+2258,2291,2317,2285,2158,1936,1657,1387,1198,1137,1213,1394,1622,1838,1995,2076,2090,2059,2015,1979,
+1963,1969,1988,2011,2028,2034,2025,2003,1972,1943,1921,1914,1922,1944,1973,2004,2034,2061,2085,2107,
+2129,2147,2160,2167,2169,2167,2165,2164,2164,2163,2159,2151,2140,2129,2120,2115,2114,2114,1978,1978,
+1974,1966,1955,1941,1926,1908,1889,1868,1847,1828,1814,1808,1811,1821,1834,1845,1851,1851,1847,1845,
+1852,1871,1904,1948,1998,2046,2091,2132,2171,2214,2262,2315,2369,2420,2463,2497,2523,2547,2571,2598,
+2629,2660,2689,2714,2734,2751,2767,2783,2800,2819,2840,2865,2894,2929,2968,3008,3046,3076,3097,3110,
+3119,3130,3146,3168,3195,3221,3244,3262,3276,3290,3311,3340,3380,3427,3477,3523,3562,3592,3614,3629,
+3640,3648,3655,3660,3664,3668,3674,3684,3698,3716,3733,3744,3746,3735,3712,3681,3648,3617,3594,3580,
+3575,3576,3581,3589,3597,3603,3606,3604,3595,3578,3556,3531,3508,3488,3473,3461,3449,3435,3417,3394,
+3366,3335,3302,3269,3235,3201,3169,3141,3119,3106,3102,3105,3110,3113,3110,3101,3085,3065,3047,3033,
+3027,3029,3041,3061,3088,3118,3147,3172,3187,3191,3181,3157,3122,3077,3024,2965,2902,2837,2771,2704,
+2635,2559,2470,2363,2235,2089,1935,1786,1654,1549,1474,1424,1390,1360,1325,1280,1226,1168,1109,1054,
+1004,957,910,860,806,749,691,633,575,514,449,377,299,216,134,59,-5,-58,-103,-145,
+-190,-243,-302,-365,-427,-482,-531,-575,-619,-668,-726,-792,-862,-931,-993,-1047,-1095,-1143,-1195,-1256,
+-1324,-1396,-1467,-1533,-1593,-1646,-1698,-1751,-1808,-1868,-1929,-1984,-2032,-2072,-2107,-2141,-2178,-2220,-2266,-2313,
+-2356,-2392,-2422,-2447,-2473,-2502,-2535,-2571,-2607,-2640,-2670,-2698,-2728,-2761,-2797,-2833,-2864,-2886,-2898,-2904,
+-2908,-2913,-2921,-2932,-2941,-2946,-2948,-2949,-2950,-2955,-2961,-2966,-2966,-2957,-2941,-2922,-2905,-2893,-2883,-2873,
+-2858,-2835,-2808,-2781,-2761,-2748,-2740,-2729,-2710,-2683,-2652,-2626,-2614,-2616,-2628,-2638,-2636,-2619,-2596,-2582,
+-2590,-2625,-2681,-2738,-2777,-2787,-2771,-2747,-2742,-2776,-2853,-2959,-3070,-3157,-3203,-3209,-3191,-3174,-3180,-3219,
+-3288,-3373,-3455,-3521,-3568,-3603,-3635,-3674,-3724,-3783,-3843,-3898,-3945,-3983,-4018,-4055,-4098,-4145,-4191,-4232,
+-4261,-4277,-4281,-4279,-4275,-4274,-4277,-4283,-4291,-4300,-4307,-4311,-4311,-4309,-4304,-4296,-4289,-4284,-4283,-4286,
+-4292,-4297,-4295,-4285,-4265,-4241,-4217,-4198,-4189,-4189,-4194,-4198,-4197,-4186,-4167,-4140,-4108,-4076,-4044,-4014,
+-3985,-3959,-3933,-3910,-3886,-3863,-3839,-3814,-3786,-3756,-3724,-3690,-3654,-3616,-3577,-3537,-3498,-3462,-3431,-3403,
+-3378,-3355,-3332,-3308,-3283,-3255,-3225,-3192,-3157,-3121,-3087,-3056,-3029,-3008,-2989,-2972,-2955,-2937,-2920,-2906,
+-2896,-2892,-2891,-2893,-2892,-2888,-2878,-2864,-2849,-2832,-2816,-2801,-2788,-2778,-2773,-2772,-2776,-2781,-2784,-2779,
+-2764,-2738,-2703,-2666,-2630,-2601,-2580,-2565,-2552,-2538,-2519,-2495,-2467,-2439,-2413,-2389,-2368,-2348,-2327,-2304,
+-2278,-2249,-2220,-2193,-2170,-2154,-2146,-2146,-2152,-2159,-2163,-2160,-2150,-2132,-2110,-2089,-2072,-2062,-2056,-2052,
+-2047,-2038,-2027,-2017,-2013,-2018,-2031,-2051,-2072,-2088,-2094,-2088,-2071,-2047,-2021,-1995,-1973,-1953,-1935,-1918,
+-1900,-1881,-1860,-1839,-1817,-1794,-1770,-1745,-1718,-1690,-1661,-1632,-1604,-1580,-1560,-1544,-1531,-1518,-1503,-1485,
+-1465,-1441,-1417,-1390,-1361,-1328,-1288,-1243,-1198,-1157,-1125,-1105,-1093,-1082,-1064,-1034,-992,-944,-897,-858,
+-828,-804,-778,-743,-697,-643,-588,-539,-499,-465,-433,-396,-349,-295,-236,-178,-124,-75,-29,17,
+65,114,159,199,235,268,305,348,400,461,531,608,691,780,874,969,1061,1143,1213,1269,
+1314,1354,1394,1440,1491,1547,1604,1657,1705,1749,1790,1832,1875,1919,1962,2001,2033,2054,2064,2064,
+2056,2048,2044,2050,2067,2090,2113,2127,2129,2115,2092,2065,2042,2026,2015,2004,1988,1966,1944,1930,
+1930,1948,1981,2017,2046,2059,2055,2039,2018,1999,1983,1969,1954,1937,1924,1921,1933,1957,1986,2007,
+2011,1999,1983,1982,2009,2068,2145,2218,2266,2281,2272,2261,2272,2315,2382,2447,2484,2476,2433,2379,
+2346,2353,2390,2422,2403,2295,2092,1823,1551,1342,1248,1286,1433,1640,1847,2009,2104,2134,2120,2086,
+2055,2035,2027,2027,2028,2026,2018,2003,1983,1960,1936,1915,1901,1897,1903,1916,1933,1948,1959,1964,
+1966,1966,1966,1968,1971,1974,1976,1976,1976,1975,1974,1973,1971,1970,1970,1971,1973,1976,1978,1838,
+1840,1842,1841,1838,1832,1823,1812,1799,1785,1772,1761,1755,1755,1762,1775,1791,1809,1824,1835,1842,
+1851,1864,1886,1920,1964,2014,2066,2115,2160,2200,2239,2280,2325,2371,2417,2458,2491,2516,2536,2555,
+2577,2604,2636,2671,2706,2737,2762,2780,2792,2803,2815,2832,2856,2887,2923,2960,2992,3016,3031,3038,
+3042,3049,3063,3086,3116,3148,3177,3199,3213,3222,3232,3248,3275,3313,3359,3408,3456,3497,3530,3555,
+3573,3587,3596,3603,3608,3610,3612,3615,3622,3632,3646,3660,3671,3674,3667,3649,3623,3594,3567,3546,
+3535,3532,3537,3547,3557,3564,3568,3565,3556,3542,3525,3505,3485,3466,3450,3436,3424,3411,3396,3378,
+3355,3326,3291,3252,3211,3172,3138,3114,3104,3109,3127,3152,3178,3197,3203,3192,3166,3128,3085,3045,
+3013,2993,2989,2999,3021,3053,3089,3125,3156,3177,3186,3181,3161,3126,3077,3016,2945,2871,2798,2734,
+2682,2640,2599,2548,2473,2364,2219,2048,1866,1693,1549,1443,1376,1338,1316,1294,1263,1219,1162,1099,
+1034,971,911,854,797,740,684,629,576,524,472,415,352,282,207,131,59,-4,-60,-111,
+-159,-211,-269,-332,-397,-460,-516,-564,-604,-642,-683,-731,-787,-850,-916,-981,-1041,-1097,-1151,-1205,
+-1263,-1324,-1387,-1449,-1507,-1562,-1615,-1670,-1731,-1798,-1869,-1938,-2001,-2054,-2096,-2131,-2163,-2198,-2239,-2284,
+-2330,-2373,-2409,-2438,-2465,-2492,-2524,-2561,-2600,-2640,-2676,-2710,-2741,-2774,-2810,-2848,-2884,-2914,-2936,-2949,
+-2956,-2962,-2970,-2983,-2998,-3012,-3023,-3030,-3034,-3038,-3045,-3053,-3058,-3058,-3049,-3033,-3014,-2998,-2986,-2978,
+-2969,-2956,-2934,-2906,-2877,-2853,-2835,-2823,-2810,-2793,-2768,-2741,-2718,-2708,-2711,-2723,-2733,-2731,-2713,-2685,
+-2662,-2657,-2680,-2727,-2783,-2829,-2849,-2841,-2815,-2795,-2803,-2852,-2939,-3049,-3157,-3243,-3297,-3322,-3332,-3345,
+-3371,-3416,-3474,-3536,-3592,-3638,-3675,-3709,-3746,-3789,-3836,-3885,-3931,-3971,-4008,-4044,-4084,-4129,-4179,-4230,
+-4276,-4312,-4336,-4349,-4353,-4354,-4358,-4366,-4380,-4398,-4416,-4430,-4436,-4433,-4420,-4400,-4379,-4361,-4352,-4352,
+-4359,-4369,-4376,-4373,-4359,-4335,-4307,-4281,-4262,-4251,-4248,-4249,-4249,-4246,-4238,-4225,-4208,-4188,-4165,-4139,
+-4109,-4076,-4043,-4012,-3986,-3965,-3948,-3932,-3915,-3896,-3871,-3842,-3809,-3772,-3734,-3694,-3653,-3614,-3576,-3541,
+-3509,-3480,-3452,-3425,-3397,-3369,-3340,-3309,-3277,-3244,-3211,-3179,-3149,-3122,-3099,-3079,-3062,-3045,-3030,-3016,
+-3004,-2995,-2991,-2988,-2986,-2983,-2976,-2966,-2952,-2936,-2919,-2901,-2884,-2868,-2855,-2847,-2844,-2846,-2850,-2853,
+-2850,-2838,-2817,-2788,-2756,-2725,-2699,-2679,-2664,-2651,-2637,-2620,-2600,-2577,-2553,-2529,-2506,-2483,-2459,-2435,
+-2409,-2383,-2356,-2329,-2306,-2286,-2272,-2265,-2263,-2264,-2266,-2264,-2256,-2240,-2219,-2196,-2174,-2157,-2146,-2138,
+-2129,-2118,-2104,-2088,-2076,-2073,-2083,-2104,-2134,-2166,-2192,-2206,-2205,-2192,-2169,-2141,-2113,-2088,-2065,-2043,
+-2022,-1998,-1972,-1944,-1915,-1887,-1860,-1836,-1813,-1789,-1763,-1734,-1704,-1674,-1647,-1625,-1609,-1597,-1585,-1571,
+-1552,-1527,-1499,-1469,-1438,-1405,-1369,-1328,-1284,-1240,-1200,-1169,-1148,-1132,-1117,-1094,-1062,-1020,-973,-929,
+-892,-861,-833,-800,-758,-707,-650,-596,-551,-517,-490,-465,-434,-393,-343,-289,-236,-186,-141,-98,
+-54,-8,40,87,132,174,215,258,308,363,425,491,560,634,714,801,894,990,1083,1166,
+1237,1296,1349,1400,1455,1515,1577,1637,1689,1732,1766,1795,1824,1859,1901,1948,1997,2040,2073,2090,
+2092,2083,2070,2061,2063,2078,2104,2133,2157,2168,2163,2144,2116,2087,2060,2035,2011,1985,1956,1929,
+1909,1903,1912,1931,1952,1965,1965,1951,1929,1907,1893,1888,1889,1894,1900,1910,1928,1958,1997,2036,
+2066,2076,2067,2050,2041,2057,2104,2173,2247,2306,2337,2341,2330,2323,2333,2360,2396,2427,2444,2450,
+2456,2472,2500,2522,2509,2428,2262,2021,1746,1494,1323,1271,1341,1503,1708,1904,2053,2142,2177,2177,
+2161,2143,2125,2107,2085,2059,2034,2016,2005,2002,2000,1995,1982,1961,1937,1915,1897,1885,1875,1866,
+1854,1840,1827,1818,1814,1814,1817,1820,1819,1816,1811,1806,1804,1805,1810,1816,1823,1829,1834,1838,
+1708,1709,1713,1718,1724,1729,1731,1730,1728,1725,1722,1721,1722,1725,1732,1743,1759,1777,1798,1819,
+1841,1864,1890,1923,1965,2015,2071,2128,2180,2224,2259,2289,2317,2347,2380,2415,2448,2476,2497,2512,
+2526,2544,2571,2607,2650,2695,2736,2768,2789,2802,2810,2821,2839,2864,2896,2930,2959,2979,2988,2989,
+2985,2983,2989,3006,3033,3067,3103,3135,3161,3179,3192,3204,3219,3240,3270,3307,3349,3394,3437,3474,
+3505,3527,3542,3551,3556,3559,3562,3567,3574,3583,3592,3601,3607,3610,3607,3599,3585,3567,3547,3527,
+3511,3501,3497,3498,3502,3508,3512,3513,3510,3504,3495,3484,3472,3459,3444,3427,3408,3387,3366,3344,
+3321,3295,3265,3230,3191,3151,3115,3088,3074,3077,3093,3119,3147,3169,3180,3177,3161,3135,3102,3069,
+3037,3010,2989,2977,2976,2986,3008,3038,3072,3104,3128,3139,3135,3114,3076,3024,2960,2889,2817,2751,
+2698,2661,2638,2620,2593,2541,2451,2319,2151,1963,1776,1611,1481,1391,1336,1303,1277,1246,1203,1147,
+1080,1008,934,862,792,727,665,609,559,512,468,422,372,314,248,178,105,36,-28,-86,
+-141,-195,-251,-313,-378,-444,-507,-564,-613,-655,-694,-733,-778,-831,-892,-959,-1028,-1096,-1162,-1225,
+-1286,-1345,-1401,-1455,-1504,-1549,-1592,-1635,-1683,-1738,-1801,-1869,-1937,-2000,-2055,-2101,-2140,-2177,-2216,-2258,
+-2302,-2346,-2385,-2418,-2447,-2475,-2506,-2542,-2584,-2629,-2673,-2714,-2751,-2786,-2821,-2856,-2893,-2926,-2955,-2975,
+-2990,-3001,-3013,-3029,-3050,-3072,-3091,-3106,-3115,-3121,-3128,-3138,-3150,-3163,-3171,-3172,-3165,-3152,-3138,-3123,
+-3109,-3092,-3069,-3039,-3002,-2964,-2930,-2902,-2879,-2858,-2836,-2811,-2786,-2769,-2765,-2776,-2796,-2815,-2823,-2812,
+-2785,-2754,-2733,-2735,-2763,-2807,-2853,-2884,-2893,-2883,-2868,-2867,-2896,-2961,-3054,-3160,-3260,-3340,-3396,-3430,
+-3454,-3478,-3510,-3552,-3600,-3651,-3698,-3740,-3778,-3814,-3851,-3888,-3927,-3965,-4002,-4038,-4075,-4114,-4157,-4202,
+-4249,-4294,-4333,-4363,-4384,-4398,-4406,-4413,-4424,-4439,-4459,-4482,-4501,-4513,-4514,-4502,-4482,-4457,-4436,-4423,
+-4419,-4423,-4430,-4432,-4425,-4407,-4382,-4353,-4327,-4307,-4294,-4287,-4283,-4279,-4274,-4269,-4265,-4261,-4254,-4244,
+-4226,-4199,-4166,-4129,-4094,-4064,-4041,-4025,-4012,-3998,-3979,-3954,-3922,-3885,-3846,-3805,-3764,-3725,-3688,-3653,
+-3620,-3589,-3560,-3531,-3502,-3472,-3442,-3412,-3382,-3352,-3323,-3294,-3265,-3238,-3212,-3189,-3169,-3153,-3140,-3129,
+-3119,-3111,-3103,-3095,-3086,-3076,-3064,-3051,-3037,-3024,-3011,-2998,-2985,-2971,-2957,-2944,-2932,-2924,-2920,-2918,
+-2917,-2912,-2903,-2888,-2869,-2846,-2823,-2801,-2781,-2763,-2745,-2727,-2709,-2691,-2672,-2652,-2630,-2607,-2582,-2556,
+-2531,-2507,-2486,-2469,-2454,-2441,-2428,-2416,-2404,-2392,-2382,-2371,-2359,-2343,-2325,-2303,-2281,-2262,-2246,-2234,
+-2224,-2214,-2202,-2186,-2171,-2159,-2155,-2162,-2180,-2206,-2235,-2259,-2275,-2279,-2273,-2257,-2236,-2211,-2186,-2160,
+-2134,-2106,-2076,-2045,-2013,-1983,-1955,-1929,-1906,-1882,-1856,-1826,-1792,-1757,-1722,-1693,-1670,-1654,-1642,-1630,
+-1614,-1592,-1564,-1532,-1497,-1463,-1430,-1396,-1361,-1324,-1287,-1253,-1222,-1196,-1172,-1146,-1114,-1076,-1034,-990,
+-950,-915,-884,-852,-815,-770,-719,-668,-621,-584,-555,-530,-503,-468,-423,-372,-321,-273,-232,-196,
+-159,-119,-72,-21,31,81,127,168,207,247,289,335,383,436,494,562,643,736,841,950,
+1058,1158,1247,1327,1400,1468,1534,1596,1650,1694,1728,1753,1773,1796,1825,1864,1912,1964,2015,2057,
+2086,2098,2096,2083,2067,2055,2052,2060,2076,2096,2113,2123,2124,2118,2105,2088,2067,2043,2015,1987,
+1963,1948,1946,1955,1971,1984,1987,1975,1951,1921,1894,1877,1872,1874,1881,1889,1899,1917,1947,1990,
+2041,2090,2128,2147,2153,2155,2166,2196,2244,2305,2362,2405,2424,2423,2408,2390,2378,2377,2389,2415,
+2452,2496,2537,2555,2529,2434,2262,2023,1754,1504,1326,1259,1310,1458,1660,1864,2029,2136,2189,2205,
+2205,2203,2202,2194,2174,2138,2093,2051,2024,2019,2031,2048,2058,2049,2019,1974,1924,1878,1841,1814,
+1793,1774,1756,1738,1724,1715,1711,1710,1708,1703,1696,1688,1682,1680,1684,1692,1700,1706,1709,1709,
+1708,1600,1599,1604,1614,1629,1644,1657,1669,1678,1687,1695,1703,1711,1719,1727,1738,1752,1773,1800,
+1832,1869,1909,1954,2004,2061,2123,2187,2246,2296,2331,2351,2361,2364,2369,2378,2393,2410,2426,2439,
+2450,2461,2478,2507,2549,2600,2654,2705,2746,2775,2795,2811,2829,2854,2884,2916,2944,2964,2972,2970,
+2961,2953,2949,2954,2969,2991,3018,3047,3077,3106,3133,3159,3182,3204,3226,3249,3276,3309,3347,3388,
+3430,3465,3492,3509,3516,3518,3520,3524,3534,3547,3560,3571,3576,3573,3565,3552,3537,3522,3508,3494,
+3480,3468,3459,3452,3450,3451,3454,3458,3462,3463,3463,3461,3457,3450,3440,3425,3404,3380,3352,3323,
+3294,3264,3234,3200,3162,3123,3086,3056,3039,3037,3048,3068,3090,3104,3107,3097,3079,3057,3038,3024,
+3015,3006,2995,2979,2962,2946,2940,2946,2966,2995,3026,3049,3056,3045,3016,2971,2918,2860,2804,2753,
+2710,2677,2653,2636,2619,2592,2544,2465,2353,2208,2043,1872,1710,1571,1459,1374,1311,1260,1212,1161,
+1103,1039,968,893,816,741,669,603,544,493,447,402,356,303,244,178,109,40,-24,-85,
+-140,-194,-247,-304,-365,-429,-495,-559,-620,-676,-728,-778,-829,-882,-939,-1001,-1066,-1134,-1202,-1269,
+-1334,-1397,-1455,-1507,-1554,-1593,-1627,-1659,-1691,-1729,-1775,-1830,-1891,-1955,-2017,-2075,-2127,-2173,-2217,-2260,
+-2303,-2346,-2386,-2423,-2455,-2484,-2514,-2547,-2584,-2624,-2665,-2704,-2741,-2775,-2810,-2846,-2885,-2926,-2964,-2996,
+-3022,-3042,-3061,-3082,-3108,-3137,-3167,-3191,-3208,-3216,-3220,-3225,-3234,-3250,-3269,-3288,-3302,-3307,-3304,-3294,
+-3278,-3258,-3232,-3199,-3158,-3111,-3060,-3011,-2966,-2928,-2894,-2864,-2837,-2817,-2809,-2816,-2838,-2871,-2903,-2922,
+-2921,-2898,-2863,-2829,-2811,-2815,-2841,-2881,-2921,-2951,-2966,-2973,-2983,-3007,-3055,-3126,-3213,-3302,-3381,-3443,
+-3485,-3514,-3537,-3562,-3595,-3636,-3683,-3732,-3778,-3820,-3857,-3890,-3924,-3958,-3994,-4033,-4073,-4113,-4153,-4192,
+-4231,-4269,-4307,-4344,-4376,-4403,-4422,-4435,-4444,-4452,-4464,-4481,-4504,-4529,-4550,-4563,-4564,-4554,-4537,-4518,
+-4502,-4493,-4489,-4487,-4482,-4471,-4452,-4428,-4402,-4378,-4358,-4342,-4331,-4321,-4313,-4307,-4304,-4305,-4310,-4314,
+-4315,-4308,-4290,-4263,-4230,-4195,-4162,-4135,-4111,-4089,-4065,-4036,-4000,-3958,-3913,-3866,-3822,-3782,-3747,-3717,
+-3692,-3671,-3651,-3631,-3608,-3582,-3553,-3522,-3491,-3460,-3432,-3405,-3380,-3356,-3331,-3307,-3285,-3265,-3248,-3235,
+-3226,-3218,-3210,-3200,-3188,-3173,-3155,-3138,-3122,-3108,-3098,-3090,-3083,-3075,-3066,-3054,-3040,-3026,-3012,-3000,
+-2990,-2983,-2977,-2971,-2965,-2958,-2949,-2938,-2923,-2904,-2882,-2856,-2830,-2805,-2781,-2759,-2738,-2715,-2691,-2664,
+-2637,-2612,-2593,-2582,-2577,-2576,-2575,-2571,-2561,-2545,-2524,-2502,-2478,-2456,-2434,-2413,-2391,-2370,-2351,-2334,
+-2320,-2309,-2299,-2288,-2277,-2267,-2259,-2255,-2257,-2264,-2276,-2288,-2300,-2309,-2313,-2311,-2305,-2295,-2280,-2261,
+-2237,-2209,-2179,-2147,-2117,-2089,-2064,-2042,-2020,-1997,-1970,-1936,-1897,-1853,-1808,-1766,-1730,-1702,-1681,-1663,
+-1646,-1625,-1598,-1566,-1531,-1497,-1464,-1434,-1407,-1379,-1350,-1321,-1290,-1259,-1228,-1195,-1160,-1122,-1082,-1042,
+-1004,-971,-940,-910,-877,-838,-794,-747,-703,-665,-634,-607,-578,-541,-495,-441,-385,-333,-290,-256,
+-227,-198,-162,-117,-68,-17,26,61,86,105,122,142,167,201,246,303,376,467,575,698,
+830,961,1086,1198,1297,1382,1457,1525,1587,1642,1691,1733,1768,1799,1827,1855,1885,1917,1950,1982,
+2010,2031,2044,2046,2039,2026,2013,2005,2004,2012,2028,2049,2071,2090,2103,2109,2107,2096,2078,2056,
+2035,2020,2017,2028,2050,2078,2104,2119,2120,2108,2089,2070,2054,2043,2034,2023,2008,1991,1980,1985,
+2010,2057,2117,2180,2234,2271,2293,2306,2320,2343,2375,2414,2451,2476,2484,2472,2446,2415,2391,2384,
+2401,2437,2479,2505,2487,2403,2243,2018,1761,1522,1351,1287,1340,1493,1701,1911,2079,2180,2217,2211,
+2193,2183,2188,2202,2208,2192,2152,2099,2048,2017,2011,2026,2046,2054,2039,1996,1935,1869,1809,1764,
+1734,1714,1697,1679,1659,1640,1624,1613,1606,1600,1594,1586,1580,1577,1580,1588,1598,1607,1611,1610,
+1605,1600,1520,1525,1536,1553,1573,1595,1615,1632,1648,1664,1680,1696,1712,1727,1742,1759,1778,1804,
+1838,1878,1926,1979,2038,2103,2173,2245,2314,2374,2418,2441,2445,2432,2412,2392,2377,2372,2373,2378,
+2383,2389,2399,2416,2445,2488,2541,2598,2653,2701,2739,2771,2800,2830,2863,2896,2926,2948,2958,2958,
+2951,2943,2937,2937,2941,2949,2958,2969,2983,3004,3033,3070,3113,3155,3192,3221,3243,3262,3283,3311,
+3345,3384,3421,3450,3468,3475,3476,3475,3478,3487,3501,3516,3525,3526,3518,3503,3484,3466,3451,3439,
+3430,3422,3415,3409,3405,3405,3409,3416,3425,3431,3435,3435,3431,3423,3412,3397,3378,3356,3331,3304,
+3276,3247,3217,3184,3146,3104,3062,3024,2998,2988,2994,3014,3039,3058,3063,3053,3029,2999,2973,2959,
+2956,2962,2969,2968,2955,2933,2908,2890,2886,2899,2922,2947,2961,2955,2928,2882,2827,2771,2725,2691,
+2670,2657,2647,2635,2616,2587,2544,2486,2410,2314,2200,2072,1935,1797,1664,1542,1434,1339,1258,1185,
+1120,1056,992,925,853,778,701,626,555,492,435,383,332,278,220,156,89,22,-41,-100,
+-153,-204,-254,-307,-363,-424,-489,-555,-621,-687,-753,-817,-881,-943,-1005,-1066,-1125,-1184,-1242,-1301,
+-1361,-1420,-1478,-1532,-1580,-1622,-1656,-1685,-1713,-1745,-1783,-1832,-1889,-1954,-2022,-2089,-2151,-2207,-2256,-2300,
+-2341,-2380,-2418,-2455,-2491,-2527,-2562,-2599,-2636,-2672,-2705,-2734,-2760,-2784,-2810,-2842,-2882,-2928,-2978,-3025,
+-3066,-3099,-3124,-3148,-3173,-3202,-3236,-3268,-3295,-3311,-3318,-3319,-3319,-3325,-3340,-3362,-3388,-3410,-3425,-3429,
+-3424,-3410,-3390,-3363,-3328,-3284,-3232,-3173,-3111,-3052,-2999,-2954,-2919,-2896,-2887,-2892,-2913,-2946,-2986,-3021,
+-3043,-3044,-3023,-2986,-2943,-2910,-2897,-2907,-2938,-2980,-3024,-3062,-3093,-3119,-3148,-3187,-3238,-3300,-3367,-3430,
+-3482,-3521,-3548,-3569,-3591,-3618,-3654,-3698,-3746,-3793,-3836,-3873,-3905,-3934,-3965,-4000,-4040,-4083,-4127,-4169,
+-4208,-4244,-4279,-4313,-4347,-4380,-4409,-4433,-4449,-4460,-4468,-4478,-4495,-4520,-4550,-4581,-4607,-4622,-4624,-4615,
+-4599,-4582,-4566,-4555,-4546,-4537,-4526,-4511,-4491,-4470,-4449,-4430,-4414,-4399,-4386,-4375,-4368,-4364,-4366,-4373,
+-4381,-4388,-4389,-4382,-4365,-4341,-4311,-4279,-4246,-4212,-4176,-4137,-4093,-4045,-3993,-3940,-3890,-3845,-3807,-3778,
+-3758,-3745,-3737,-3729,-3719,-3704,-3681,-3651,-3618,-3583,-3550,-3521,-3496,-3474,-3454,-3433,-3411,-3388,-3366,-3346,
+-3330,-3317,-3305,-3294,-3281,-3265,-3248,-3231,-3215,-3202,-3193,-3188,-3185,-3182,-3177,-3168,-3156,-3141,-3124,-3105,
+-3087,-3071,-3057,-3048,-3043,-3043,-3046,-3050,-3051,-3046,-3032,-3009,-2978,-2943,-2907,-2874,-2845,-2819,-2794,-2768,
+-2741,-2715,-2692,-2677,-2670,-2672,-2678,-2684,-2684,-2676,-2659,-2635,-2607,-2577,-2550,-2526,-2504,-2484,-2465,-2447,
+-2430,-2415,-2402,-2391,-2382,-2374,-2369,-2364,-2360,-2357,-2355,-2351,-2348,-2344,-2342,-2341,-2341,-2342,-2342,-2337,
+-2326,-2307,-2281,-2252,-2221,-2193,-2169,-2150,-2133,-2114,-2090,-2058,-2017,-1969,-1917,-1865,-1818,-1777,-1742,-1712,
+-1685,-1656,-1624,-1590,-1554,-1519,-1487,-1458,-1434,-1410,-1386,-1360,-1332,-1300,-1267,-1232,-1196,-1159,-1121,-1085,
+-1051,-1020,-993,-967,-938,-905,-866,-824,-782,-743,-710,-682,-653,-619,-576,-523,-464,-405,-354,-313,
+-283,-258,-232,-200,-162,-119,-79,-47,-26,-16,-12,-8,2,25,63,117,188,277,383,505,
+638,776,911,1035,1145,1238,1318,1388,1454,1520,1589,1659,1727,1791,1845,1886,1913,1926,1928,1921,
+1911,1902,1897,1897,1903,1915,1931,1952,1977,2007,2040,2075,2107,2135,2154,2164,2165,2155,2138,2115,
+2091,2069,2056,2055,2070,2101,2143,2190,2237,2277,2310,2333,2349,2357,2355,2340,2308,2262,2206,2153,
+2115,2104,2124,2172,2237,2303,2357,2390,2403,2402,2396,2396,2404,2421,2439,2450,2448,2432,2407,2385,
+2375,2384,2407,2431,2431,2386,2279,2111,1905,1698,1537,1461,1488,1609,1790,1981,2135,2225,2243,2211,
+2159,2118,2105,2118,2142,2155,2142,2102,2046,1993,1960,1950,1959,1970,1966,1937,1884,1816,1748,1691,
+1651,1627,1611,1595,1575,1550,1524,1502,1487,1478,1473,1469,1466,1463,1464,1470,1481,1495,1508,1516,
+1519,1520,1520,1463,1479,1499,1522,1546,1569,1589,1608,1625,1644,1665,1689,1714,1740,1765,1790,1817,
+1847,1882,1924,1972,2027,2089,2157,2230,2305,2375,2433,2473,2491,2488,2469,2441,2414,2393,2382,2378,
+2379,2381,2384,2391,2405,2429,2466,2512,2564,2615,2661,2703,2740,2777,2813,2849,2882,2907,2921,2926,
+2923,2918,2917,2920,2927,2934,2937,2934,2928,2926,2935,2960,3002,3056,3113,3164,3200,3222,3234,3244,
+3260,3284,3316,3352,3383,3405,3417,3420,3420,3421,3428,3437,3447,3452,3450,3440,3425,3409,3396,3386,
+3381,3378,3375,3372,3371,3371,3377,3386,3398,3410,3418,3420,3414,3402,3386,3367,3346,3324,3302,3279,
+3256,3233,3209,3182,3150,3112,3070,3026,2986,2959,2948,2954,2974,2998,3016,3019,3006,2979,2947,2920,
+2904,2902,2908,2914,2912,2899,2875,2848,2827,2820,2827,2842,2854,2853,2829,2782,2720,2654,2598,2562,
+2549,2554,2569,2583,2585,2569,2533,2479,2412,2334,2249,2158,2061,1958,1849,1736,1621,1509,1401,1301,
+1210,1127,1050,976,901,824,744,663,584,510,443,383,327,271,214,152,88,22,-40,-100,
+-155,-207,-259,-312,-369,-430,-495,-560,-627,-693,-759,-826,-894,-962,-1029,-1093,-1155,-1215,-1273,-1332,
+-1392,-1454,-1517,-1576,-1629,-1673,-1708,-1735,-1759,-1784,-1817,-1861,-1917,-1983,-2056,-2130,-2199,-2260,-2311,-2354,
+-2390,-2422,-2453,-2486,-2521,-2560,-2604,-2651,-2699,-2744,-2785,-2817,-2841,-2859,-2876,-2897,-2929,-2973,-3026,-3082,
+-3135,-3180,-3212,-3236,-3255,-3275,-3300,-3329,-3358,-3383,-3400,-3409,-3413,-3418,-3431,-3454,-3484,-3517,-3545,-3563,
+-3566,-3557,-3538,-3511,-3479,-3441,-3396,-3341,-3278,-3209,-3140,-3079,-3031,-3001,-2990,-2998,-3022,-3057,-3097,-3136,
+-3165,-3178,-3172,-3147,-3108,-3065,-3028,-3008,-3009,-3032,-3071,-3118,-3166,-3208,-3243,-3274,-3305,-3340,-3380,-3425,
+-3472,-3514,-3551,-3580,-3604,-3627,-3654,-3687,-3726,-3770,-3814,-3855,-3889,-3918,-3943,-3968,-3997,-4032,-4072,-4115,
+-4158,-4199,-4237,-4273,-4307,-4341,-4374,-4405,-4430,-4450,-4465,-4478,-4493,-4515,-4545,-4581,-4619,-4653,-4675,-4684,
+-4680,-4665,-4646,-4628,-4613,-4603,-4596,-4588,-4578,-4564,-4547,-4530,-4512,-4497,-4484,-4474,-4465,-4459,-4455,-4454,
+-4456,-4460,-4464,-4465,-4462,-4453,-4437,-4415,-4386,-4351,-4312,-4268,-4221,-4171,-4120,-4070,-4022,-3977,-3938,-3905,
+-3881,-3864,-3855,-3849,-3844,-3835,-3818,-3793,-3759,-3721,-3683,-3648,-3619,-3596,-3578,-3562,-3544,-3524,-3500,-3476,
+-3452,-3430,-3411,-3394,-3378,-3362,-3346,-3331,-3317,-3307,-3300,-3296,-3294,-3291,-3287,-3280,-3270,-3257,-3241,-3224,
+-3206,-3187,-3167,-3149,-3134,-3126,-3125,-3132,-3142,-3152,-3155,-3148,-3128,-3097,-3058,-3018,-2979,-2946,-2918,-2893,
+-2869,-2845,-2820,-2798,-2781,-2771,-2768,-2770,-2773,-2772,-2763,-2747,-2723,-2696,-2667,-2639,-2616,-2596,-2579,-2564,
+-2549,-2535,-2521,-2507,-2495,-2484,-2475,-2468,-2463,-2458,-2453,-2445,-2434,-2421,-2408,-2397,-2390,-2388,-2391,-2394,
+-2395,-2388,-2373,-2349,-2319,-2288,-2259,-2234,-2214,-2196,-2175,-2148,-2113,-2070,-2020,-1969,-1919,-1874,-1834,-1797,
+-1761,-1723,-1682,-1639,-1596,-1556,-1520,-1490,-1466,-1443,-1421,-1396,-1367,-1336,-1303,-1269,-1234,-1201,-1167,-1134,
+-1103,-1073,-1044,-1016,-988,-956,-921,-882,-842,-803,-768,-738,-711,-683,-651,-611,-563,-510,-458,-411,
+-373,-342,-314,-286,-255,-219,-182,-148,-121,-100,-86,-72,-53,-24,16,71,138,218,310,414,
+526,645,766,881,986,1078,1157,1225,1289,1354,1426,1505,1590,1676,1754,1818,1862,1882,1877,1853,
+1816,1774,1736,1711,1704,1719,1756,1813,1887,1971,2059,2142,2213,2264,2292,2297,2283,2255,2218,2180,
+2143,2109,2082,2061,2051,2055,2076,2116,2174,2248,2332,2419,2502,2572,2621,2643,2632,2590,2519,2431,
+2338,2259,2206,2187,2202,2242,2292,2337,2366,2373,2362,2342,2322,2312,2314,2325,2340,2351,2354,2350,
+2344,2343,2351,2365,2375,2365,2321,2234,2111,1971,1844,1762,1744,1795,1897,2018,2122,2182,2186,2144,
+2081,2025,1996,1998,2023,2049,2057,2036,1990,1932,1881,1848,1836,1838,1838,1823,1788,1734,1672,1615,
+1572,1545,1529,1515,1496,1470,1440,1411,1388,1376,1371,1371,1370,1367,1362,1359,1360,1369,1383,1400,
+1418,1434,1448,1463,1404,1429,1454,1481,1506,1531,1553,1575,1597,1622,1651,1683,1717,1751,1784,1815,
+1844,1873,1904,1940,1982,2032,2089,2153,2223,2293,2359,2413,2451,2471,2473,2462,2446,2431,2421,2418,
+2419,2422,2424,2425,2427,2435,2451,2478,2513,2553,2594,2632,2668,2701,2734,2767,2799,2826,2846,2857,
+2860,2860,2863,2870,2883,2897,2907,2908,2899,2885,2873,2873,2892,2931,2984,3042,3093,3130,3151,3161,
+3167,3178,3200,3233,3272,3310,3342,3364,3377,3385,3390,3397,3403,3408,3409,3403,3393,3381,3371,3364,
+3360,3360,3360,3359,3356,3355,3355,3361,3372,3385,3398,3407,3410,3405,3395,3381,3365,3348,3329,3309,
+3286,3261,3234,3206,3177,3145,3110,3071,3031,2994,2963,2944,2937,2941,2950,2955,2951,2935,2909,2878,
+2850,2830,2820,2816,2814,2806,2790,2767,2742,2723,2713,2712,2715,2713,2697,2660,2606,2540,2477,2427,
+2401,2401,2422,2454,2484,2500,2496,2469,2422,2360,2287,2210,2129,2047,1962,1873,1779,1681,1580,1478,
+1377,1279,1182,1088,994,900,806,713,624,542,467,401,342,286,231,175,115,53,-9,-70,
+-128,-185,-242,-301,-362,-427,-494,-561,-626,-689,-750,-810,-871,-933,-997,-1064,-1132,-1203,-1279,-1359,
+-1445,-1536,-1628,-1715,-1791,-1851,-1892,-1915,-1925,-1930,-1939,-1958,-1992,-2042,-2103,-2170,-2236,-2296,-2348,-2390,
+-2424,-2453,-2481,-2510,-2542,-2580,-2624,-2675,-2730,-2786,-2840,-2887,-2925,-2953,-2975,-2996,-3022,-3057,-3104,-3158,
+-3215,-3266,-3308,-3338,-3358,-3373,-3388,-3406,-3428,-3451,-3472,-3489,-3504,-3522,-3548,-3586,-3636,-3692,-3746,-3786,
+-3804,-3798,-3770,-3725,-3672,-3614,-3556,-3496,-3431,-3361,-3288,-3217,-3157,-3114,-3095,-3100,-3126,-3167,-3213,-3257,
+-3290,-3310,-3313,-3299,-3273,-3239,-3203,-3173,-3155,-3154,-3170,-3201,-3240,-3281,-3319,-3350,-3374,-3393,-3412,-3436,
+-3466,-3503,-3543,-3584,-3622,-3656,-3686,-3714,-3744,-3776,-3812,-3850,-3886,-3919,-3948,-3972,-3995,-4020,-4048,-4081,
+-4118,-4158,-4198,-4237,-4274,-4309,-4342,-4373,-4401,-4426,-4447,-4467,-4487,-4511,-4541,-4578,-4620,-4662,-4698,-4723,
+-4733,-4730,-4718,-4701,-4684,-4672,-4665,-4661,-4656,-4648,-4636,-4620,-4603,-4587,-4575,-4567,-4563,-4562,-4560,-4557,
+-4551,-4544,-4536,-4528,-4520,-4513,-4505,-4493,-4477,-4454,-4424,-4387,-4346,-4303,-4261,-4220,-4182,-4148,-4116,-4087,
+-4061,-4039,-4020,-4005,-3992,-3979,-3962,-3939,-3909,-3873,-3834,-3797,-3764,-3738,-3719,-3703,-3689,-3672,-3652,-3627,
+-3600,-3573,-3547,-3524,-3503,-3484,-3467,-3451,-3437,-3427,-3419,-3415,-3412,-3408,-3403,-3394,-3383,-3371,-3358,-3345,
+-3333,-3320,-3305,-3287,-3268,-3251,-3237,-3231,-3234,-3242,-3252,-3259,-3256,-3242,-3217,-3184,-3147,-3112,-3082,-3057,
+-3036,-3016,-2994,-2971,-2946,-2923,-2904,-2890,-2880,-2872,-2864,-2853,-2837,-2815,-2790,-2762,-2736,-2712,-2691,-2674,
+-2660,-2648,-2636,-2624,-2611,-2596,-2582,-2568,-2557,-2548,-2540,-2533,-2523,-2511,-2496,-2479,-2463,-2452,-2446,-2445,
+-2447,-2448,-2443,-2429,-2407,-2377,-2344,-2312,-2284,-2259,-2236,-2211,-2181,-2144,-2101,-2055,-2009,-1966,-1927,-1891,
+-1855,-1816,-1772,-1724,-1673,-1624,-1580,-1544,-1514,-1490,-1468,-1445,-1419,-1390,-1360,-1330,-1302,-1277,-1252,-1227,
+-1199,-1168,-1134,-1097,-1058,-1018,-977,-936,-894,-854,-816,-783,-755,-730,-706,-680,-650,-615,-577,-537,
+-498,-460,-425,-390,-355,-318,-280,-243,-208,-174,-140,-104,-62,-12,45,109,176,244,313,384,
+460,543,632,727,824,917,1004,1084,1158,1228,1298,1370,1445,1519,1587,1646,1691,1718,1728,1723,
+1706,1682,1658,1637,1627,1632,1657,1706,1780,1876,1990,2109,2220,2310,2369,2390,2376,2335,2278,2219,
+2167,2126,2096,2072,2053,2035,2022,2021,2039,2085,2159,2259,2376,2496,2603,2683,2725,2724,2681,2603,
+2504,2398,2301,2226,2180,2164,2171,2192,2215,2231,2234,2225,2209,2194,2186,2189,2203,2222,2242,2257,
+2265,2270,2274,2279,2286,2288,2279,2251,2202,2136,2065,2003,1965,1958,1979,2013,2044,2054,2035,1992,
+1939,1894,1871,1877,1903,1935,1953,1944,1907,1850,1789,1738,1706,1693,1689,1682,1664,1632,1589,1547,
+1512,1490,1479,1471,1460,1440,1414,1385,1361,1347,1344,1346,1349,1345,1333,1314,1295,1281,1278,1286,
+1304,1327,1353,1379,1404,1333,1359,1386,1414,1443,1474,1505,1538,1572,1608,1646,1686,1727,1765,1800,
+1832,1860,1887,1915,1949,1988,2036,2091,2153,2217,2280,2337,2384,2417,2436,2444,2444,2442,2441,2444,
+2448,2453,2455,2453,2449,2445,2446,2456,2475,2501,2532,2562,2590,2615,2638,2661,2685,2709,2731,2749,
+2762,2770,2777,2785,2798,2813,2828,2838,2839,2832,2818,2807,2806,2821,2852,2895,2942,2985,3017,3038,
+3053,3067,3089,3121,3164,3213,3261,3304,3338,3363,3382,3397,3409,3418,3421,3418,3409,3395,3381,3368,
+3360,3356,3355,3353,3351,3347,3343,3342,3346,3355,3368,3382,3395,3405,3411,3415,3417,3418,3415,3407,
+3390,3364,3329,3288,3246,3205,3168,3134,3102,3071,3039,3007,2977,2951,2929,2911,2893,2872,2847,2818,
+2787,2758,2733,2713,2698,2684,2668,2649,2628,2606,2588,2574,2565,2556,2543,2521,2486,2441,2391,2344,
+2310,2293,2296,2315,2342,2370,2390,2396,2384,2354,2308,2249,2179,2103,2023,1940,1855,1770,1683,1594,
+1504,1410,1312,1210,1105,996,888,781,681,588,505,432,367,308,251,195,136,76,15,-45,
+-103,-159,-215,-271,-329,-390,-454,-520,-585,-648,-709,-767,-825,-883,-944,-1009,-1081,-1161,-1253,-1359,
+-1478,-1608,-1745,-1878,-1999,-2096,-2163,-2198,-2204,-2190,-2167,-2148,-2141,-2151,-2179,-2219,-2267,-2316,-2363,-2405,
+-2444,-2480,-2516,-2553,-2592,-2633,-2677,-2723,-2771,-2822,-2874,-2924,-2970,-3009,-3042,-3070,-3096,-3126,-3162,-3206,
+-3256,-3307,-3356,-3398,-3433,-3461,-3485,-3508,-3530,-3550,-3567,-3580,-3592,-3609,-3638,-3686,-3756,-3844,-3939,-4026,
+-4089,-4115,-4101,-4050,-3972,-3881,-3787,-3697,-3614,-3537,-3464,-3394,-3332,-3281,-3250,-3241,-3256,-3289,-3333,-3378,
+-3416,-3441,-3452,-3450,-3437,-3418,-3396,-3374,-3355,-3342,-3338,-3343,-3357,-3378,-3402,-3424,-3440,-3450,-3456,-3461,
+-3472,-3493,-3525,-3568,-3618,-3669,-3715,-3754,-3785,-3810,-3834,-3859,-3887,-3918,-3951,-3984,-4014,-4042,-4068,-4095,
+-4123,-4154,-4188,-4223,-4260,-4296,-4331,-4363,-4393,-4419,-4444,-4468,-4492,-4519,-4550,-4587,-4630,-4674,-4715,-4750,
+-4774,-4785,-4784,-4776,-4765,-4755,-4748,-4745,-4742,-4737,-4728,-4713,-4694,-4675,-4659,-4649,-4646,-4647,-4650,-4650,
+-4644,-4631,-4610,-4586,-4563,-4543,-4528,-4518,-4511,-4502,-4489,-4469,-4442,-4409,-4375,-4342,-4311,-4285,-4262,-4241,
+-4221,-4200,-4179,-4158,-4139,-4121,-4102,-4082,-4059,-4031,-4000,-3967,-3936,-3908,-3885,-3867,-3851,-3834,-3815,-3793,
+-3766,-3738,-3709,-3683,-3658,-3636,-3616,-3597,-3581,-3567,-3556,-3547,-3541,-3536,-3529,-3521,-3509,-3496,-3483,-3472,
+-3464,-3457,-3451,-3442,-3430,-3415,-3397,-3381,-3370,-3365,-3365,-3369,-3372,-3370,-3361,-3343,-3320,-3293,-3267,-3244,
+-3224,-3205,-3187,-3165,-3141,-3113,-3084,-3056,-3032,-3010,-2992,-2975,-2958,-2940,-2918,-2894,-2868,-2841,-2814,-2789,
+-2767,-2749,-2734,-2720,-2708,-2694,-2680,-2664,-2649,-2634,-2621,-2611,-2601,-2591,-2578,-2562,-2545,-2527,-2512,-2501,
+-2497,-2496,-2495,-2490,-2479,-2460,-2435,-2405,-2375,-2346,-2319,-2293,-2265,-2232,-2193,-2149,-2104,-2059,-2017,-1979,
+-1944,-1907,-1867,-1821,-1771,-1718,-1667,-1622,-1584,-1553,-1527,-1503,-1478,-1453,-1427,-1404,-1384,-1370,-1359,-1347,
+-1333,-1310,-1278,-1237,-1189,-1137,-1084,-1032,-985,-941,-901,-865,-832,-803,-776,-751,-726,-701,-674,-645,
+-613,-578,-540,-500,-458,-415,-373,-334,-296,-259,-219,-174,-119,-53,19,96,171,238,296,344,
+388,435,490,558,639,732,832,934,1034,1128,1216,1295,1366,1425,1472,1505,1526,1539,1549,1561,
+1582,1613,1653,1698,1743,1782,1816,1847,1881,1926,1987,2064,2152,2238,2309,2351,2356,2326,2270,2203,
+2139,2091,2062,2050,2046,2041,2027,2007,1985,1975,1987,2031,2106,2205,2314,2415,2493,2536,2540,2508,
+2447,2371,2291,2220,2163,2125,2105,2098,2099,2104,2106,2106,2103,2099,2098,2101,2109,2121,2134,2145,
+2152,2155,2154,2152,2150,2148,2145,2138,2123,2099,2069,2037,2007,1984,1967,1953,1935,1908,1870,1825,
+1782,1751,1742,1755,1786,1822,1846,1847,1820,1769,1707,1645,1597,1565,1547,1536,1523,1504,1480,1454,
+1435,1426,1426,1430,1432,1426,1411,1392,1373,1363,1362,1369,1376,1376,1363,1336,1299,1262,1231,1215,
+1214,1228,1251,1278,1306,1333,1273,1299,1327,1359,1396,1435,1478,1522,1567,1612,1657,1701,1743,1782,
+1817,1849,1878,1908,1941,1979,2025,2077,2135,2195,2254,2307,2350,2383,2404,2416,2422,2425,2428,2433,
+2439,2444,2445,2441,2431,2420,2411,2408,2415,2430,2453,2478,2501,2520,2535,2547,2559,2574,2592,2611,
+2631,2648,2663,2676,2688,2700,2712,2722,2728,2730,2727,2723,2723,2731,2748,2776,2811,2847,2880,2908,
+2931,2954,2980,3015,3058,3108,3160,3211,3255,3293,3326,3353,3377,3397,3411,3416,3410,3395,3374,3351,
+3330,3315,3307,3304,3304,3306,3308,3311,3317,3326,3340,3356,3374,3390,3405,3418,3431,3444,3456,3464,
+3463,3449,3421,3380,3329,3276,3226,3184,3151,3124,3099,3072,3040,3003,2961,2917,2874,2835,2798,2765,
+2733,2703,2673,2645,2619,2595,2573,2552,2532,2513,2496,2480,2466,2454,2440,2424,2404,2381,2354,2327,
+2302,2282,2269,2262,2261,2264,2267,2270,2267,2258,2238,2207,2162,2104,2033,1951,1863,1772,1681,1592,
+1503,1415,1325,1230,1131,1028,921,816,714,618,531,452,380,313,249,185,121,57,-4,-63,
+-117,-165,-209,-248,-288,-329,-374,-424,-481,-542,-608,-676,-745,-815,-885,-957,-1032,-1115,-1209,-1318,
+-1445,-1589,-1746,-1908,-2062,-2197,-2299,-2364,-2390,-2384,-2355,-2318,-2285,-2265,-2261,-2274,-2301,-2336,-2376,-2418,
+-2462,-2508,-2558,-2610,-2663,-2716,-2766,-2812,-2855,-2895,-2935,-2974,-3012,-3049,-3083,-3112,-3138,-3163,-3188,-3218,
+-3253,-3294,-3340,-3388,-3438,-3488,-3536,-3582,-3623,-3656,-3677,-3685,-3683,-3677,-3678,-3700,-3751,-3834,-3945,-4069,
+-4186,-4274,-4319,-4313,-4260,-4171,-4064,-3955,-3854,-3768,-3697,-3637,-3587,-3546,-3515,-3497,-3494,-3506,-3528,-3555,
+-3579,-3596,-3604,-3603,-3597,-3588,-3579,-3571,-3562,-3552,-3540,-3528,-3517,-3509,-3506,-3506,-3507,-3507,-3503,-3498,
+-3494,-3497,-3513,-3544,-3591,-3649,-3712,-3770,-3819,-3855,-3880,-3897,-3912,-3931,-3956,-3987,-4022,-4058,-4093,-4124,
+-4152,-4179,-4206,-4235,-4266,-4300,-4336,-4372,-4407,-4440,-4471,-4500,-4530,-4560,-4593,-4629,-4669,-4710,-4751,-4788,
+-4818,-4839,-4850,-4853,-4851,-4846,-4843,-4841,-4841,-4838,-4832,-4821,-4804,-4783,-4763,-4747,-4738,-4735,-4735,-4735,
+-4729,-4712,-4686,-4650,-4611,-4575,-4546,-4529,-4522,-4523,-4527,-4527,-4519,-4502,-4477,-4446,-4414,-4384,-4358,-4336,
+-4316,-4298,-4280,-4262,-4245,-4229,-4216,-4203,-4191,-4177,-4159,-4139,-4115,-4091,-4067,-4044,-4023,-4003,-3982,-3959,
+-3933,-3906,-3878,-3851,-3825,-3801,-3779,-3759,-3739,-3722,-3706,-3692,-3681,-3672,-3663,-3655,-3645,-3633,-3621,-3610,
+-3600,-3593,-3588,-3584,-3579,-3572,-3561,-3548,-3534,-3521,-3511,-3505,-3500,-3495,-3489,-3480,-3467,-3450,-3432,-3413,
+-3395,-3376,-3357,-3335,-3312,-3285,-3257,-3227,-3197,-3168,-3140,-3113,-3087,-3063,-3039,-3015,-2990,-2964,-2937,-2910,
+-2882,-2856,-2832,-2810,-2792,-2777,-2763,-2749,-2735,-2721,-2707,-2694,-2681,-2669,-2657,-2642,-2626,-2608,-2589,-2573,
+-2560,-2552,-2548,-2546,-2541,-2532,-2518,-2498,-2475,-2450,-2426,-2401,-2376,-2346,-2311,-2270,-2224,-2174,-2125,-2078,
+-2036,-1996,-1956,-1915,-1871,-1823,-1774,-1726,-1681,-1642,-1607,-1576,-1545,-1515,-1486,-1460,-1440,-1426,-1420,-1419,
+-1418,-1413,-1398,-1370,-1331,-1282,-1228,-1174,-1124,-1079,-1040,-1006,-974,-942,-910,-876,-842,-808,-776,-743,
+-711,-676,-639,-598,-553,-507,-462,-420,-382,-348,-315,-277,-230,-171,-100,-20,60,137,203,255,
+297,334,373,421,485,565,661,767,879,992,1100,1200,1288,1360,1413,1446,1461,1463,1463,1473,
+1504,1563,1652,1764,1885,2000,2092,2154,2183,2188,2181,2177,2185,2208,2240,2271,2287,2279,2244,2187,
+2122,2063,2022,2004,2005,2017,2026,2024,2007,1978,1947,1928,1930,1957,2006,2067,2128,2176,2203,2207,
+2192,2165,2135,2109,2092,2083,2080,2079,2078,2076,2071,2067,2064,2064,2067,2072,2078,2080,2078,2071,
+2058,2043,2027,2013,2003,1997,1992,1987,1978,1964,1945,1921,1895,1870,1846,1822,1797,1767,1734,1697,
+1664,1640,1630,1637,1658,1683,1704,1710,1696,1662,1613,1559,1509,1467,1435,1411,1390,1369,1348,1330,
+1318,1316,1322,1334,1346,1351,1348,1339,1328,1322,1324,1335,1348,1356,1352,1332,1297,1253,1210,1177,
+1159,1159,1172,1194,1221,1247,1273,1251,1281,1314,1352,1394,1440,1487,1534,1580,1625,1668,1711,1752,
+1790,1827,1861,1895,1931,1971,2016,2066,2121,2177,2230,2277,2314,2340,2356,2363,2365,2365,2366,2371,
+2378,2385,2389,2389,2382,2371,2358,2348,2344,2349,2362,2380,2399,2416,2428,2436,2440,2445,2452,2464,
+2480,2500,2521,2541,2558,2572,2583,2591,2597,2600,2602,2606,2613,2627,2647,2675,2708,2743,2776,2806,
+2831,2855,2879,2908,2941,2979,3019,3059,3097,3131,3164,3195,3228,3260,3288,3308,3317,3312,3294,3269,
+3241,3217,3201,3196,3199,3209,3224,3242,3261,3282,3305,3328,3350,3369,3381,3388,3390,3391,3391,3392,
+3393,3390,3379,3358,3325,3284,3238,3194,3155,3124,3098,3075,3048,3015,2973,2924,2870,2815,2765,2721,
+2684,2652,2624,2597,2571,2544,2518,2493,2472,2455,2442,2432,2424,2417,2408,2398,2386,2373,2359,2347,
+2335,2322,2309,2292,2270,2245,2216,2186,2158,2132,2109,2086,2059,2023,1975,1912,1834,1743,1644,1541,
+1438,1336,1237,1141,1047,953,860,768,678,592,509,431,357,286,217,149,83,19,-40,-94,
+-141,-178,-206,-227,-242,-257,-275,-302,-340,-392,-458,-536,-622,-713,-804,-892,-977,-1059,-1143,-1234,
+-1338,-1456,-1591,-1737,-1885,-2025,-2145,-2236,-2294,-2320,-2321,-2307,-2289,-2276,-2274,-2286,-2311,-2345,-2385,-2430,
+-2478,-2529,-2584,-2642,-2700,-2758,-2811,-2859,-2900,-2938,-2973,-3009,-3045,-3083,-3120,-3154,-3183,-3207,-3228,-3248,
+-3270,-3297,-3331,-3373,-3423,-3479,-3540,-3603,-3664,-3716,-3753,-3770,-3766,-3743,-3712,-3685,-3680,-3708,-3775,-3877,
+-3999,-4123,-4227,-4292,-4312,-4286,-4225,-4146,-4063,-3990,-3933,-3893,-3865,-3847,-3834,-3826,-3821,-3820,-3821,-3824,
+-3823,-3817,-3804,-3786,-3766,-3750,-3739,-3735,-3734,-3734,-3729,-3716,-3695,-3668,-3640,-3614,-3593,-3576,-3563,-3551,
+-3541,-3535,-3536,-3552,-3584,-3633,-3697,-3767,-3836,-3896,-3941,-3971,-3990,-4003,-4016,-4035,-4060,-4092,-4126,-4161,
+-4192,-4221,-4247,-4272,-4298,-4328,-4362,-4398,-4437,-4476,-4514,-4551,-4588,-4624,-4661,-4698,-4736,-4775,-4812,-4846,
+-4876,-4899,-4916,-4926,-4931,-4934,-4935,-4937,-4939,-4940,-4939,-4933,-4922,-4906,-4888,-4871,-4857,-4848,-4842,-4836,
+-4827,-4808,-4778,-4737,-4689,-4640,-4597,-4568,-4554,-4556,-4569,-4586,-4599,-4602,-4592,-4569,-4536,-4498,-4460,-4426,
+-4397,-4373,-4353,-4336,-4323,-4311,-4303,-4298,-4295,-4293,-4289,-4281,-4270,-4253,-4232,-4209,-4185,-4161,-4138,-4115,
+-4091,-4066,-4041,-4015,-3989,-3964,-3941,-3919,-3898,-3878,-3859,-3841,-3824,-3809,-3796,-3784,-3772,-3761,-3750,-3739,
+-3728,-3718,-3709,-3701,-3695,-3689,-3683,-3678,-3671,-3664,-3656,-3648,-3639,-3630,-3619,-3608,-3596,-3583,-3569,-3554,
+-3538,-3519,-3498,-3475,-3450,-3424,-3398,-3372,-3346,-3320,-3292,-3263,-3231,-3197,-3163,-3131,-3101,-3074,-3049,-3025,
+-3000,-2973,-2945,-2916,-2889,-2865,-2844,-2826,-2812,-2798,-2786,-2772,-2759,-2745,-2730,-2715,-2700,-2684,-2668,-2652,
+-2638,-2626,-2616,-2608,-2601,-2593,-2582,-2568,-2550,-2530,-2509,-2487,-2464,-2439,-2410,-2374,-2332,-2285,-2235,-2184,
+-2135,-2090,-2049,-2010,-1971,-1930,-1888,-1844,-1800,-1757,-1716,-1676,-1636,-1596,-1556,-1517,-1480,-1450,-1429,-1417,
+-1413,-1412,-1409,-1401,-1383,-1355,-1319,-1279,-1239,-1204,-1174,-1149,-1127,-1104,-1079,-1048,-1011,-969,-924,-879,
+-834,-790,-746,-701,-654,-606,-558,-512,-470,-433,-399,-367,-332,-288,-234,-168,-93,-14,63,134,
+197,253,306,359,420,489,568,655,749,847,947,1047,1144,1236,1317,1384,1432,1463,1481,1496,
+1521,1569,1649,1763,1902,2053,2194,2307,2378,2404,2391,2353,2308,2271,2252,2249,2256,2259,2249,2217,
+2166,2103,2042,1993,1965,1957,1964,1975,1981,1974,1954,1926,1899,1879,1872,1879,1895,1913,1927,1934,
+1935,1933,1933,1942,1959,1983,2010,2034,2050,2055,2053,2046,2040,2038,2042,2052,2061,2066,2061,2044,
+2017,1983,1948,1918,1896,1884,1879,1877,1871,1859,1836,1804,1766,1726,1690,1658,1633,1612,1594,1576,
+1558,1540,1526,1517,1514,1515,1517,1515,1507,1490,1465,1434,1402,1370,1340,1311,1283,1255,1229,1207,
+1192,1186,1189,1197,1206,1212,1210,1202,1192,1184,1184,1192,1207,1222,1230,1227,1209,1181,1150,1122,
+1106,1104,1116,1138,1166,1194,1223,1251,1254,1289,1329,1371,1416,1461,1505,1546,1585,1623,1662,1701,
+1742,1782,1821,1859,1896,1933,1973,2015,2059,2105,2149,2187,2218,2238,2249,2251,2248,2244,2242,2246,
+2254,2267,2281,2293,2300,2302,2298,2291,2284,2280,2280,2285,2293,2303,2312,2318,2321,2322,2323,2326,
+2332,2343,2358,2377,2398,2419,2438,2454,2465,2473,2478,2483,2489,2501,2521,2549,2585,2625,2666,2704,
+2737,2765,2787,2807,2825,2843,2862,2881,2900,2920,2943,2971,3004,3041,3080,3115,3142,3156,3156,3145,
+3127,3109,3097,3094,3101,3116,3137,3161,3186,3211,3238,3264,3289,3310,3323,3325,3314,3293,3266,3238,
+3215,3200,3192,3189,3187,3180,3166,3146,3119,3090,3061,3033,3006,2977,2943,2903,2855,2803,2748,2695,
+2646,2604,2569,2539,2512,2488,2464,2441,2419,2401,2387,2379,2375,2374,2374,2373,2369,2363,2355,2346,
+2337,2329,2318,2304,2282,2252,2212,2165,2115,2065,2020,1982,1950,1921,1889,1849,1796,1725,1637,1534,
+1420,1302,1185,1072,968,871,783,702,625,550,476,402,330,259,192,129,72,22,-21,-57,
+-86,-108,-123,-132,-137,-141,-149,-165,-195,-242,-308,-393,-493,-600,-709,-812,-903,-982,-1051,-1113,
+-1177,-1249,-1334,-1432,-1541,-1654,-1764,-1863,-1945,-2009,-2056,-2092,-2122,-2152,-2186,-2226,-2272,-2321,-2373,-2425,
+-2478,-2531,-2585,-2638,-2688,-2735,-2776,-2812,-2843,-2874,-2908,-2948,-2995,-3048,-3104,-3159,-3207,-3247,-3278,-3302,
+-3323,-3346,-3374,-3410,-3453,-3503,-3559,-3618,-3677,-3732,-3776,-3805,-3813,-3799,-3765,-3720,-3677,-3649,-3650,-3686,
+-3756,-3851,-3956,-4054,-4129,-4174,-4186,-4174,-4146,-4115,-4089,-4074,-4069,-4072,-4079,-4086,-4091,-4094,-4095,-4093,
+-4084,-4069,-4045,-4014,-3978,-3944,-3915,-3897,-3889,-3888,-3889,-3885,-3872,-3848,-3815,-3777,-3738,-3705,-3678,-3658,
+-3644,-3636,-3633,-3640,-3658,-3690,-3738,-3800,-3869,-3939,-4002,-4054,-4093,-4119,-4137,-4152,-4168,-4189,-4213,-4241,
+-4269,-4297,-4323,-4348,-4375,-4403,-4433,-4468,-4504,-4542,-4580,-4618,-4655,-4693,-4730,-4769,-4808,-4846,-4882,-4916,
+-4945,-4969,-4988,-5001,-5011,-5018,-5025,-5030,-5036,-5040,-5043,-5042,-5037,-5028,-5015,-5001,-4988,-4977,-4969,-4960,
+-4949,-4930,-4901,-4860,-4810,-4755,-4703,-4660,-4634,-4627,-4637,-4659,-4684,-4703,-4711,-4703,-4680,-4645,-4604,-4562,
+-4524,-4493,-4467,-4447,-4431,-4418,-4408,-4400,-4395,-4392,-4390,-4388,-4382,-4372,-4358,-4340,-4319,-4297,-4277,-4257,
+-4238,-4219,-4199,-4177,-4153,-4127,-4101,-4075,-4051,-4029,-4008,-3988,-3968,-3949,-3929,-3910,-3891,-3875,-3860,-3848,
+-3836,-3825,-3815,-3804,-3793,-3783,-3775,-3769,-3766,-3765,-3765,-3765,-3763,-3757,-3748,-3737,-3724,-3710,-3697,-3685,
+-3672,-3656,-3638,-3615,-3589,-3561,-3533,-3508,-3485,-3465,-3444,-3420,-3390,-3356,-3317,-3276,-3236,-3201,-3171,-3145,
+-3122,-3098,-3070,-3039,-3005,-2970,-2936,-2906,-2881,-2860,-2842,-2825,-2809,-2792,-2775,-2759,-2744,-2730,-2719,-2709,
+-2699,-2690,-2681,-2670,-2658,-2644,-2629,-2611,-2592,-2571,-2550,-2528,-2506,-2482,-2456,-2426,-2392,-2352,-2310,-2266,
+-2222,-2181,-2142,-2107,-2072,-2037,-2001,-1962,-1921,-1879,-1837,-1794,-1751,-1707,-1661,-1612,-1563,-1514,-1470,-1432,
+-1404,-1384,-1372,-1364,-1355,-1343,-1326,-1304,-1279,-1255,-1233,-1215,-1202,-1191,-1180,-1165,-1143,-1113,-1075,-1031,
+-983,-932,-880,-829,-778,-726,-674,-622,-571,-523,-478,-436,-396,-355,-309,-257,-196,-128,-54,21,
+97,172,245,317,389,461,534,607,680,752,826,903,985,1074,1169,1264,1355,1436,1502,1553,
+1594,1635,1686,1756,1848,1961,2083,2201,2298,2362,2389,2380,2348,2307,2270,2247,2238,2239,2238,2226,
+2193,2139,2069,1993,1923,1869,1836,1823,1825,1834,1842,1844,1841,1833,1824,1818,1815,1814,1814,1812,
+1810,1808,1809,1818,1835,1860,1889,1915,1935,1944,1943,1936,1927,1923,1927,1941,1961,1980,1992,1991,
+1974,1943,1904,1863,1829,1805,1792,1787,1783,1773,1752,1718,1671,1617,1562,1512,1474,1447,1431,1421,
+1413,1404,1391,1373,1354,1334,1316,1301,1290,1280,1272,1264,1254,1241,1225,1205,1181,1155,1129,1106,
+1089,1078,1074,1074,1074,1071,1063,1050,1035,1021,1014,1015,1023,1037,1050,1058,1059,1053,1044,1037,
+1037,1046,1065,1092,1124,1157,1189,1221,1254,1245,1285,1328,1374,1419,1461,1499,1534,1568,1603,1641,
+1682,1726,1769,1810,1846,1878,1907,1934,1963,1992,2023,2053,2080,2100,2113,2118,2118,2114,2110,2110,
+2116,2127,2144,2164,2183,2200,2212,2217,2216,2210,2201,2191,2182,2176,2173,2173,2176,2179,2182,2184,
+2185,2186,2190,2197,2210,2230,2255,2283,2313,2339,2360,2375,2385,2392,2402,2417,2441,2474,2515,2560,
+2605,2646,2679,2704,2721,2732,2739,2744,2750,2760,2775,2798,2828,2865,2905,2945,2980,3007,3023,3030,
+3032,3034,3041,3054,3075,3100,3124,3145,3159,3167,3172,3178,3186,3197,3207,3210,3202,3180,3143,3098,
+3052,3015,2992,2988,3000,3021,3043,3058,3060,3047,3022,2990,2956,2925,2898,2873,2849,2819,2782,2736,
+2683,2627,2570,2518,2473,2437,2407,2384,2364,2346,2329,2314,2302,2294,2289,2286,2285,2284,2282,2277,
+2270,2261,2249,2235,2216,2191,2158,2118,2071,2019,1968,1922,1882,1850,1824,1798,1766,1722,1659,1576,
+1473,1357,1233,1110,994,891,802,726,658,594,529,461,389,317,248,187,138,103,81,70,
+66,65,65,62,55,44,26,-2,-43,-102,-180,-277,-390,-512,-634,-747,-843,-917,-969,-1003,
+-1027,-1049,-1079,-1123,-1182,-1255,-1340,-1430,-1522,-1612,-1700,-1787,-1872,-1957,-2041,-2123,-2200,-2272,-2338,-2400,
+-2457,-2513,-2567,-2618,-2665,-2705,-2735,-2756,-2771,-2785,-2805,-2836,-2883,-2944,-3015,-3090,-3160,-3220,-3268,-3304,
+-3333,-3359,-3390,-3428,-3473,-3523,-3577,-3629,-3678,-3721,-3757,-3784,-3800,-3804,-3794,-3772,-3743,-3713,-3692,-3689,
+-3708,-3752,-3815,-3889,-3964,-4029,-4080,-4115,-4136,-4148,-4156,-4165,-4176,-4188,-4198,-4206,-4211,-4214,-4217,-4221,
+-4225,-4226,-4223,-4212,-4192,-4164,-4133,-4103,-4080,-4065,-4057,-4053,-4048,-4037,-4016,-3986,-3950,-3912,-3877,-3848,
+-3828,-3817,-3814,-3819,-3831,-3852,-3882,-3921,-3969,-4023,-4079,-4132,-4179,-4218,-4250,-4276,-4299,-4319,-4340,-4362,
+-4384,-4407,-4431,-4456,-4483,-4512,-4544,-4579,-4615,-4650,-4684,-4716,-4746,-4776,-4808,-4841,-4878,-4916,-4954,-4991,
+-5024,-5052,-5074,-5091,-5104,-5115,-5124,-5134,-5143,-5152,-5158,-5161,-5160,-5154,-5144,-5132,-5119,-5107,-5098,-5089,
+-5079,-5064,-5041,-5006,-4960,-4907,-4850,-4799,-4759,-4736,-4733,-4746,-4769,-4795,-4814,-4822,-4814,-4793,-4761,-4726,
+-4691,-4660,-4636,-4616,-4600,-4584,-4568,-4550,-4533,-4516,-4501,-4489,-4478,-4468,-4456,-4442,-4428,-4412,-4398,-4385,
+-4375,-4364,-4353,-4338,-4318,-4294,-4265,-4234,-4204,-4176,-4152,-4130,-4110,-4091,-4069,-4046,-4022,-3998,-3975,-3956,
+-3942,-3931,-3922,-3913,-3904,-3893,-3881,-3870,-3861,-3856,-3855,-3857,-3858,-3858,-3855,-3847,-3836,-3823,-3811,-3800,
+-3791,-3783,-3772,-3757,-3736,-3711,-3682,-3653,-3626,-3602,-3581,-3559,-3536,-3508,-3473,-3434,-3393,-3352,-3315,-3282,
+-3254,-3227,-3197,-3164,-3125,-3081,-3035,-2991,-2950,-2915,-2886,-2861,-2838,-2817,-2797,-2777,-2760,-2746,-2737,-2732,
+-2729,-2727,-2723,-2716,-2705,-2689,-2670,-2649,-2626,-2604,-2582,-2561,-2539,-2516,-2491,-2464,-2434,-2401,-2367,-2332,
+-2298,-2265,-2235,-2206,-2177,-2147,-2114,-2078,-2038,-1997,-1954,-1912,-1871,-1830,-1789,-1746,-1700,-1650,-1599,-1548,
+-1500,-1459,-1424,-1398,-1378,-1361,-1345,-1326,-1304,-1280,-1254,-1229,-1208,-1192,-1181,-1174,-1166,-1156,-1140,-1115,
+-1083,-1044,-999,-951,-900,-848,-794,-740,-684,-627,-570,-513,-457,-402,-348,-294,-238,-180,-119,-54,
+12,82,154,227,301,375,449,522,591,658,724,791,862,942,1032,1132,1239,1347,1450,1540,
+1615,1675,1723,1768,1816,1873,1941,2017,2094,2163,2215,2246,2255,2247,2229,2209,2192,2180,2170,2153,
+2123,2075,2007,1923,1832,1746,1674,1622,1595,1588,1599,1618,1642,1664,1683,1699,1711,1720,1727,1732,
+1734,1734,1735,1737,1743,1752,1764,1776,1783,1784,1777,1764,1750,1738,1735,1743,1761,1786,1811,1829,
+1834,1824,1800,1767,1730,1697,1670,1652,1638,1625,1606,1577,1536,1485,1429,1373,1325,1289,1264,1248,
+1239,1231,1219,1203,1181,1157,1134,1114,1100,1093,1091,1092,1092,1091,1084,1073,1057,1039,1021,1005,
+992,985,980,977,973,966,955,941,925,911,901,898,901,909,919,928,936,942,948,957,
+971,992,1020,1051,1084,1116,1147,1177,1209,1245,1218,1261,1308,1355,1400,1440,1476,1509,1544,1582,
+1625,1671,1718,1761,1797,1824,1843,1855,1866,1878,1895,1917,1944,1972,1998,2019,2034,2042,2045,2046,
+2045,2047,2052,2061,2074,2088,2101,2111,2116,2113,2102,2084,2062,2039,2019,2005,1999,2000,2006,2013,
+2019,2022,2020,2017,2017,2024,2042,2073,2115,2164,2214,2259,2295,2319,2334,2343,2353,2368,2391,2424,
+2464,2507,2548,2584,2612,2632,2645,2655,2665,2678,2697,2723,2755,2791,2828,2862,2890,2910,2924,2934,
+2946,2963,2990,3028,3074,3122,3165,3193,3204,3198,3177,3151,3128,3113,3108,3110,3113,3107,3088,3054,
+3009,2962,2923,2902,2902,2922,2954,2985,3006,3007,2986,2948,2903,2861,2831,2817,2819,2829,2837,2832,
+2807,2761,2694,2617,2537,2465,2406,2362,2331,2310,2293,2275,2255,2232,2209,2189,2173,2164,2159,2157,
+2154,2149,2139,2123,2101,2073,2038,2000,1957,1913,1869,1829,1795,1770,1752,1738,1725,1703,1667,1610,
+1532,1433,1320,1201,1087,984,899,831,776,728,678,621,555,481,404,333,275,233,211,205,
+210,219,226,227,217,198,170,130,80,15,-67,-168,-287,-418,-554,-682,-793,-877,-930,-955,
+-957,-947,-935,-932,-945,-977,-1029,-1097,-1181,-1276,-1382,-1497,-1619,-1745,-1871,-1992,-2103,-2200,-2284,-2355,
+-2417,-2476,-2534,-2592,-2649,-2701,-2742,-2772,-2788,-2797,-2805,-2819,-2847,-2892,-2951,-3019,-3087,-3147,-3194,-3228,
+-3250,-3270,-3294,-3328,-3375,-3432,-3496,-3558,-3613,-3658,-3691,-3714,-3729,-3740,-3748,-3756,-3762,-3769,-3779,-3793,
+-3814,-3845,-3883,-3929,-3977,-4024,-4067,-4103,-4132,-4158,-4180,-4201,-4220,-4235,-4242,-4241,-4232,-4218,-4204,-4196,
+-4198,-4211,-4234,-4260,-4285,-4302,-4307,-4301,-4287,-4268,-4249,-4234,-4222,-4213,-4202,-4188,-4168,-4143,-4116,-4089,
+-4066,-4050,-4043,-4045,-4054,-4069,-4089,-4113,-4139,-4167,-4197,-4228,-4260,-4293,-4327,-4361,-4395,-4428,-4459,-4487,
+-4512,-4534,-4554,-4573,-4595,-4620,-4651,-4685,-4722,-4760,-4795,-4827,-4854,-4879,-4904,-4931,-4962,-4997,-5036,-5077,
+-5115,-5150,-5178,-5199,-5214,-5226,-5236,-5247,-5259,-5272,-5284,-5294,-5298,-5296,-5288,-5275,-5259,-5244,-5229,-5218,
+-5208,-5196,-5179,-5153,-5116,-5067,-5011,-4954,-4902,-4863,-4842,-4839,-4851,-4873,-4897,-4915,-4922,-4917,-4900,-4877,
+-4851,-4829,-4812,-4799,-4789,-4779,-4764,-4744,-4719,-4689,-4660,-4632,-4608,-4588,-4571,-4557,-4543,-4530,-4518,-4508,
+-4500,-4494,-4489,-4482,-4471,-4453,-4429,-4399,-4366,-4333,-4303,-4276,-4254,-4234,-4214,-4193,-4168,-4141,-4114,-4089,
+-4069,-4054,-4044,-4037,-4032,-4025,-4015,-4003,-3988,-3975,-3963,-3955,-3949,-3944,-3938,-3928,-3916,-3902,-3887,-3875,
+-3867,-3862,-3860,-3857,-3850,-3836,-3815,-3788,-3757,-3725,-3694,-3665,-3637,-3609,-3580,-3548,-3514,-3478,-3442,-3408,
+-3375,-3343,-3310,-3272,-3230,-3182,-3130,-3079,-3030,-2986,-2949,-2919,-2893,-2869,-2847,-2826,-2806,-2789,-2776,-2769,
+-2766,-2766,-2766,-2763,-2756,-2743,-2726,-2705,-2684,-2663,-2643,-2624,-2606,-2588,-2566,-2542,-2515,-2485,-2454,-2423,
+-2394,-2366,-2341,-2316,-2291,-2264,-2233,-2198,-2160,-2118,-2075,-2033,-1992,-1955,-1919,-1885,-1850,-1812,-1771,-1727,
+-1680,-1633,-1588,-1548,-1513,-1482,-1455,-1427,-1396,-1362,-1324,-1283,-1242,-1206,-1176,-1155,-1142,-1135,-1131,-1124,
+-1113,-1093,-1065,-1029,-987,-940,-891,-840,-787,-732,-674,-613,-550,-486,-421,-357,-294,-232,-172,-114,
+-57,-1,55,112,170,230,293,359,428,501,578,658,743,832,926,1026,1130,1236,1340,1439,
+1527,1603,1665,1715,1757,1796,1836,1879,1928,1979,2029,2073,2107,2128,2136,2133,2120,2101,2075,2042,
+2000,1947,1881,1803,1718,1631,1551,1485,1437,1410,1403,1413,1434,1460,1488,1515,1538,1557,1573,1586,
+1596,1604,1610,1616,1621,1627,1632,1637,1640,1639,1633,1623,1608,1593,1581,1574,1574,1580,1591,1602,
+1608,1606,1595,1574,1546,1514,1483,1455,1431,1408,1385,1358,1326,1288,1246,1203,1163,1129,1103,1084,
+1071,1059,1046,1030,1012,992,973,957,947,943,943,945,947,945,939,929,916,903,892,884,
+881,881,883,884,882,877,869,859,850,843,842,845,852,860,869,876,881,887,896,909,
+928,954,984,1016,1047,1075,1100,1124,1150,1181,1218,1205,1251,1299,1346,1388,1425,1458,1491,1527,
+1567,1613,1661,1705,1742,1768,1780,1782,1778,1774,1776,1787,1810,1842,1882,1923,1961,1993,2017,2031,
+2037,2036,2030,2023,2015,2009,2005,2002,1999,1994,1983,1966,1942,1914,1884,1857,1837,1827,1826,1833,
+1843,1852,1855,1854,1848,1845,1849,1867,1903,1957,2024,2099,2172,2237,2288,2323,2346,2360,2371,2383,
+2400,2421,2445,2470,2493,2513,2530,2547,2567,2591,2623,2660,2701,2743,2780,2809,2826,2833,2832,2829,
+2831,2846,2879,2930,2998,3072,3144,3201,3236,3245,3232,3204,3173,3151,3144,3154,3175,3198,3211,3206,
+3180,3136,3083,3034,2998,2982,2984,2995,3003,2998,2969,2919,2853,2786,2733,2706,2712,2748,2800,2854,
+2890,2894,2860,2789,2693,2586,2483,2397,2334,2293,2268,2251,2234,2211,2182,2147,2113,2084,2064,2053,
+2049,2048,2043,2031,2008,1973,1928,1875,1818,1762,1712,1671,1641,1625,1621,1626,1634,1638,1630,1602,
+1551,1475,1379,1271,1162,1063,980,917,872,838,806,766,713,645,565,480,400,331,280,246,
+226,214,203,188,167,141,112,83,51,16,-29,-91,-175,-280,-405,-538,-668,-781,-868,-922,
+-944,-940,-922,-899,-885,-885,-904,-944,-1003,-1079,-1172,-1280,-1402,-1536,-1675,-1816,-1951,-2073,-2180,-2270,
+-2347,-2415,-2481,-2549,-2618,-2688,-2753,-2808,-2849,-2875,-2891,-2903,-2919,-2942,-2977,-3021,-3067,-3108,-3137,-3152,
+-3156,-3153,-3155,-3169,-3201,-3254,-3323,-3400,-3476,-3543,-3594,-3630,-3651,-3663,-3672,-3685,-3705,-3733,-3771,-3816,
+-3867,-3921,-3975,-4025,-4069,-4104,-4130,-4147,-4158,-4167,-4178,-4192,-4210,-4228,-4241,-4243,-4232,-4208,-4175,-4141,
+-4115,-4106,-4119,-4155,-4208,-4269,-4327,-4375,-4404,-4415,-4410,-4394,-4374,-4355,-4341,-4332,-4326,-4321,-4315,-4305,
+-4294,-4282,-4272,-4267,-4267,-4274,-4285,-4299,-4314,-4327,-4340,-4352,-4366,-4383,-4407,-4439,-4478,-4523,-4569,-4614,
+-4653,-4684,-4705,-4719,-4730,-4741,-4756,-4777,-4805,-4839,-4875,-4911,-4944,-4973,-5000,-5027,-5056,-5090,-5129,-5171,
+-5214,-5255,-5290,-5316,-5335,-5347,-5355,-5363,-5373,-5387,-5403,-5419,-5432,-5439,-5438,-5429,-5413,-5394,-5374,-5356,
+-5342,-5329,-5316,-5297,-5268,-5227,-5176,-5116,-5056,-5002,-4961,-4939,-4936,-4948,-4971,-4995,-5014,-5023,-5021,-5009,
+-4992,-4974,-4961,-4953,-4950,-4948,-4943,-4932,-4913,-4887,-4856,-4823,-4792,-4765,-4742,-4722,-4705,-4687,-4669,-4651,
+-4635,-4622,-4612,-4605,-4599,-4591,-4578,-4560,-4535,-4505,-4473,-4441,-4412,-4385,-4361,-4338,-4314,-4288,-4260,-4232,
+-4207,-4185,-4169,-4158,-4151,-4144,-4135,-4124,-4109,-4091,-4074,-4057,-4043,-4031,-4019,-4005,-3989,-3970,-3949,-3930,
+-3915,-3905,-3902,-3904,-3907,-3908,-3903,-3889,-3866,-3835,-3799,-3761,-3723,-3687,-3654,-3622,-3592,-3563,-3533,-3503,
+-3472,-3440,-3405,-3367,-3324,-3277,-3227,-3177,-3130,-3089,-3055,-3027,-3006,-2987,-2969,-2951,-2931,-2911,-2893,-2878,
+-2866,-2859,-2854,-2848,-2841,-2830,-2814,-2796,-2776,-2756,-2738,-2722,-2707,-2692,-2675,-2655,-2631,-2604,-2574,-2544,
+-2515,-2487,-2461,-2436,-2410,-2382,-2353,-2320,-2283,-2245,-2205,-2166,-2127,-2090,-2055,-2021,-1988,-1955,-1919,-1881,
+-1841,-1798,-1756,-1714,-1674,-1636,-1600,-1564,-1526,-1484,-1438,-1388,-1336,-1285,-1239,-1202,-1175,-1159,-1151,-1147,
+-1144,-1136,-1120,-1095,-1061,-1020,-974,-925,-876,-826,-776,-724,-670,-611,-550,-485,-418,-350,-282,-216,
+-152,-93,-37,13,61,107,153,203,259,326,403,493,593,701,812,922,1029,1129,1220,1302,
+1376,1442,1501,1554,1603,1647,1690,1731,1772,1813,1854,1893,1929,1958,1980,1992,1993,1982,1961,1929,
+1888,1839,1783,1721,1657,1594,1534,1482,1440,1411,1394,1389,1393,1402,1414,1426,1436,1444,1450,1455,
+1459,1462,1466,1470,1474,1479,1484,1490,1495,1499,1502,1503,1500,1494,1485,1474,1461,1447,1433,1418,
+1403,1385,1365,1343,1319,1295,1270,1247,1225,1203,1179,1154,1125,1093,1060,1027,995,968,946,928,
+913,899,885,869,852,834,819,808,802,800,803,806,808,805,799,789,778,768,762,762,
+767,775,783,789,792,790,785,780,777,779,787,801,817,833,846,855,860,863,868,879,
+897,922,952,984,1015,1041,1064,1084,1105,1131,1164,1205,1222,1269,1315,1355,1390,1418,1444,1472,
+1505,1543,1587,1630,1669,1697,1712,1714,1705,1692,1681,1678,1689,1713,1749,1794,1843,1891,1933,1966,
+1989,2001,2002,1994,1979,1960,1939,1919,1902,1886,1873,1858,1841,1820,1795,1768,1742,1720,1706,1700,
+1702,1709,1717,1723,1725,1725,1726,1735,1756,1796,1854,1930,2018,2109,2196,2271,2331,2373,2400,2413,
+2417,2414,2408,2401,2394,2389,2387,2392,2407,2432,2468,2513,2564,2615,2659,2692,2711,2715,2708,2697,
+2690,2697,2724,2774,2846,2932,3022,3106,3171,3214,3235,3240,3240,3248,3272,3318,3380,3450,3512,3553,
+3561,3533,3474,3394,3309,3233,3172,3128,3095,3062,3017,2952,2869,2777,2689,2624,2595,2609,2661,2738,
+2818,2880,2904,2881,2812,2706,2583,2460,2355,2276,2226,2199,2185,2174,2157,2131,2096,2059,2025,2000,
+1984,1977,1974,1967,1950,1918,1869,1805,1731,1655,1583,1523,1481,1459,1459,1476,1505,1535,1557,1562,
+1542,1494,1419,1325,1221,1119,1028,956,904,867,838,806,762,701,624,533,438,346,263,192,
+133,80,29,-21,-73,-122,-162,-186,-191,-180,-159,-141,-138,-163,-223,-315,-433,-562,-687,-792,
+-870,-916,-935,-935,-927,-922,-927,-948,-984,-1036,-1102,-1181,-1273,-1377,-1493,-1618,-1748,-1878,-2001,-2115,
+-2218,-2310,-2396,-2477,-2557,-2636,-2712,-2780,-2838,-2883,-2915,-2938,-2956,-2976,-3001,-3032,-3066,-3096,-3119,-3128,
+-3125,-3113,-3101,-3097,-3111,-3149,-3210,-3290,-3380,-3469,-3548,-3608,-3648,-3670,-3678,-3681,-3687,-3700,-3727,-3769,
+-3825,-3891,-3962,-4031,-4091,-4138,-4166,-4177,-4174,-4162,-4149,-4142,-4146,-4160,-4182,-4204,-4216,-4213,-4191,-4153,
+-4107,-4067,-4044,-4048,-4084,-4147,-4230,-4319,-4400,-4462,-4498,-4509,-4499,-4478,-4455,-4438,-4432,-4436,-4447,-4461,
+-4473,-4479,-4479,-4473,-4464,-4456,-4451,-4449,-4452,-4458,-4464,-4472,-4481,-4493,-4512,-4539,-4578,-4627,-4684,-4743,
+-4799,-4847,-4881,-4900,-4908,-4907,-4903,-4903,-4911,-4927,-4953,-4984,-5018,-5052,-5084,-5114,-5144,-5177,-5213,-5255,
+-5300,-5345,-5388,-5423,-5450,-5468,-5479,-5485,-5492,-5501,-5515,-5532,-5550,-5565,-5575,-5575,-5566,-5549,-5527,-5505,
+-5486,-5469,-5456,-5441,-5420,-5390,-5347,-5293,-5231,-5169,-5113,-5071,-5048,-5045,-5058,-5082,-5107,-5128,-5138,-5137,
+-5127,-5111,-5095,-5083,-5077,-5076,-5077,-5077,-5071,-5059,-5041,-5018,-4993,-4970,-4949,-4930,-4912,-4892,-4869,-4843,
+-4813,-4784,-4759,-4739,-4725,-4717,-4712,-4707,-4697,-4682,-4659,-4629,-4595,-4560,-4523,-4488,-4455,-4422,-4390,-4359,
+-4330,-4303,-4279,-4259,-4241,-4225,-4209,-4192,-4173,-4154,-4136,-4120,-4108,-4099,-4092,-4086,-4077,-4064,-4046,-4025,
+-4003,-3984,-3971,-3965,-3965,-3969,-3974,-3973,-3966,-3948,-3922,-3887,-3849,-3809,-3770,-3734,-3701,-3671,-3642,-3615,
+-3586,-3555,-3521,-3483,-3442,-3397,-3352,-3308,-3267,-3231,-3203,-3181,-3165,-3152,-3140,-3126,-3110,-3089,-3067,-3045,
+-3023,-3005,-2988,-2974,-2959,-2944,-2928,-2909,-2890,-2870,-2851,-2833,-2816,-2799,-2781,-2761,-2738,-2713,-2686,-2658,
+-2630,-2603,-2577,-2550,-2522,-2493,-2462,-2429,-2396,-2362,-2328,-2296,-2263,-2231,-2197,-2161,-2123,-2081,-2038,-1993,
+-1947,-1902,-1858,-1815,-1774,-1736,-1697,-1659,-1619,-1576,-1530,-1480,-1429,-1377,-1330,-1289,-1257,-1235,-1223,-1218,
+-1216,-1212,-1203,-1184,-1155,-1117,-1072,-1022,-972,-922,-874,-828,-783,-737,-688,-635,-577,-514,-446,-375,
+-302,-229,-160,-95,-36,15,61,105,150,202,265,344,438,545,661,780,894,997,1087,1160,
+1220,1270,1314,1356,1400,1445,1492,1538,1582,1622,1658,1688,1714,1737,1756,1771,1782,1787,1786,1777,
+1761,1738,1709,1677,1644,1611,1580,1552,1528,1508,1493,1481,1472,1466,1460,1453,1446,1438,1429,1419,
+1410,1401,1393,1386,1380,1375,1371,1368,1365,1363,1362,1362,1362,1361,1359,1354,1344,1329,1309,1284,
+1255,1222,1190,1159,1131,1108,1089,1076,1065,1055,1043,1026,1004,975,942,906,869,835,804,779,
+758,740,724,708,693,678,666,656,651,651,654,658,662,664,662,659,655,653,654,661,
+672,687,701,713,720,722,720,718,718,723,734,752,773,794,812,826,834,839,844,854,
+870,893,922,954,986,1014,1039,1060,1082,1107,1138,1177,1222,1248,1291,1329,1360,1384,1403,1423,
+1446,1475,1511,1551,1590,1624,1647,1658,1657,1649,1638,1631,1632,1643,1665,1695,1732,1770,1807,1840,
+1869,1890,1905,1911,1908,1897,1880,1859,1836,1815,1797,1784,1773,1763,1751,1735,1715,1692,1668,1647,
+1632,1626,1627,1635,1647,1662,1678,1697,1720,1751,1794,1849,1918,1998,2084,2169,2248,2315,2366,2398,
+2412,2409,2392,2365,2334,2302,2276,2260,2257,2270,2298,2339,2388,2438,2485,2521,2544,2553,2552,2545,
+2543,2552,2579,2629,2699,2786,2881,2973,3054,3119,3166,3201,3234,3275,3336,3420,3528,3648,3765,3862,
+3921,3931,3891,3806,3692,3566,3444,3340,3255,3187,3125,3059,2982,2890,2792,2698,2625,2586,2586,2623,
+2686,2755,2810,2832,2810,2743,2641,2520,2396,2288,2206,2152,2123,2111,2103,2091,2071,2042,2008,1975,
+1947,1928,1917,1909,1897,1876,1839,1784,1712,1630,1545,1467,1405,1365,1351,1363,1394,1437,1480,1511,
+1522,1504,1456,1382,1289,1189,1091,1006,937,884,841,800,752,691,614,524,426,327,233,147,
+68,-5,-80,-160,-243,-326,-397,-446,-464,-445,-392,-318,-237,-172,-139,-151,-210,-309,-435,-569,
+-693,-796,-870,-917,-944,-961,-977,-1001,-1036,-1081,-1135,-1195,-1259,-1328,-1402,-1484,-1575,-1676,-1786,-1902,
+-2020,-2137,-2250,-2357,-2456,-2547,-2626,-2695,-2751,-2794,-2827,-2852,-2875,-2899,-2927,-2963,-3003,-3045,-3083,-3112,
+-3130,-3137,-3140,-3144,-3159,-3192,-3246,-3320,-3410,-3507,-3600,-3681,-3742,-3781,-3798,-3799,-3790,-3780,-3777,-3786,
+-3813,-3857,-3915,-3983,-4050,-4110,-4154,-4176,-4176,-4158,-4130,-4101,-4083,-4081,-4098,-4130,-4169,-4202,-4221,-4217,
+-4193,-4155,-4115,-4088,-4088,-4121,-4188,-4281,-4386,-4486,-4569,-4622,-4645,-4640,-4619,-4593,-4573,-4566,-4576,-4597,
+-4626,-4652,-4670,-4676,-4668,-4651,-4629,-4607,-4589,-4579,-4576,-4579,-4587,-4600,-4618,-4641,-4674,-4715,-4767,-4825,
+-4885,-4943,-4991,-5027,-5048,-5056,-5054,-5050,-5048,-5053,-5068,-5091,-5119,-5151,-5181,-5208,-5234,-5258,-5285,-5316,
+-5355,-5399,-5446,-5493,-5535,-5569,-5595,-5611,-5622,-5630,-5639,-5651,-5665,-5680,-5693,-5700,-5699,-5689,-5672,-5651,
+-5630,-5611,-5595,-5582,-5568,-5548,-5519,-5478,-5425,-5364,-5303,-5248,-5207,-5184,-5180,-5193,-5215,-5239,-5259,-5268,
+-5266,-5254,-5236,-5218,-5203,-5194,-5191,-5192,-5192,-5190,-5184,-5173,-5160,-5145,-5132,-5120,-5109,-5097,-5080,-5056,
+-5026,-4990,-4953,-4917,-4888,-4868,-4857,-4852,-4851,-4847,-4837,-4818,-4789,-4750,-4705,-4657,-4607,-4560,-4517,-4477,
+-4442,-4411,-4382,-4355,-4328,-4301,-4273,-4244,-4215,-4188,-4165,-4148,-4138,-4137,-4143,-4154,-4165,-4172,-4173,-4167,
+-4154,-4136,-4118,-4102,-4091,-4086,-4086,-4087,-4086,-4080,-4066,-4045,-4016,-3982,-3945,-3909,-3874,-3842,-3812,-3783,
+-3753,-3722,-3687,-3650,-3609,-3567,-3524,-3482,-3444,-3410,-3381,-3358,-3339,-3323,-3308,-3292,-3273,-3250,-3225,-3197,
+-3169,-3143,-3117,-3094,-3073,-3053,-3033,-3013,-2993,-2973,-2953,-2934,-2913,-2892,-2870,-2846,-2821,-2795,-2769,-2744,
+-2720,-2697,-2674,-2651,-2625,-2596,-2565,-2531,-2497,-2464,-2433,-2405,-2379,-2353,-2325,-2292,-2253,-2207,-2156,-2101,
+-2044,-1989,-1938,-1891,-1848,-1808,-1770,-1732,-1692,-1649,-1603,-1553,-1502,-1452,-1404,-1362,-1328,-1303,-1286,-1277,
+-1273,-1270,-1265,-1253,-1233,-1203,-1164,-1118,-1069,-1018,-967,-919,-874,-831,-788,-743,-696,-645,-589,-526,
+-459,-387,-313,-239,-168,-102,-42,10,59,109,162,225,301,391,492,602,712,818,912,990,
+1054,1104,1146,1183,1221,1263,1308,1355,1401,1442,1477,1503,1522,1535,1545,1554,1564,1575,1586,1597,
+1604,1608,1608,1604,1596,1587,1575,1563,1550,1536,1521,1505,1489,1472,1456,1440,1425,1411,1398,1386,
+1373,1362,1350,1339,1327,1315,1303,1290,1276,1261,1245,1229,1214,1200,1188,1178,1169,1158,1146,1129,
+1108,1082,1053,1022,992,967,947,935,929,927,925,921,911,891,862,824,780,734,689,649,
+614,587,566,551,540,531,524,519,516,516,519,523,529,535,541,547,554,561,572,585,
+602,620,638,654,667,676,681,684,689,696,709,726,746,767,787,802,814,823,832,844,
+861,884,913,944,975,1004,1029,1051,1072,1096,1126,1162,1203,1248,1263,1298,1327,1350,1368,1385,
+1404,1429,1459,1495,1533,1568,1597,1617,1628,1632,1633,1635,1641,1652,1669,1688,1707,1724,1737,1747,
+1755,1762,1771,1780,1789,1795,1797,1793,1784,1772,1759,1748,1740,1736,1733,1729,1720,1705,1683,1656,
+1628,1604,1590,1588,1600,1625,1660,1703,1750,1798,1846,1895,1947,2001,2059,2118,2178,2235,2284,2323,
+2347,2355,2350,2331,2305,2277,2252,2235,2231,2240,2263,2296,2335,2372,2403,2424,2432,2429,2418,2406,
+2401,2410,2439,2491,2564,2655,2755,2855,2948,3027,3090,3142,3188,3240,3307,3395,3507,3635,3770,3893,
+3988,4038,4036,3980,3880,3750,3610,3476,3361,3271,3203,3149,3099,3042,2974,2896,2817,2746,2694,2668,
+2670,2691,2720,2742,2744,2717,2658,2573,2472,2370,2278,2204,2152,2119,2097,2080,2060,2032,1997,1959,
+1921,1889,1867,1853,1844,1834,1817,1786,1738,1675,1599,1520,1446,1386,1348,1335,1346,1375,1415,1454,
+1480,1484,1460,1410,1336,1248,1156,1069,994,932,881,835,786,727,655,570,476,381,291,210,
+140,77,13,-57,-138,-230,-325,-411,-474,-502,-488,-436,-356,-265,-186,-137,-133,-178,-266,-384,
+-514,-640,-747,-830,-890,-932,-967,-1005,-1051,-1107,-1172,-1239,-1304,-1362,-1412,-1457,-1501,-1552,-1616,-1697,
+-1797,-1912,-2037,-2167,-2293,-2409,-2509,-2590,-2651,-2694,-2724,-2745,-2765,-2790,-2822,-2865,-2917,-2974,-3031,-3085,
+-3130,-3166,-3194,-3220,-3249,-3287,-3340,-3408,-3489,-3579,-3670,-3755,-3825,-3877,-3909,-3920,-3916,-3903,-3887,-3876,
+-3876,-3891,-3922,-3968,-4023,-4080,-4131,-4166,-4181,-4174,-4150,-4116,-4083,-4062,-4061,-4083,-4126,-4180,-4234,-4277,
+-4300,-4302,-4287,-4266,-4254,-4264,-4303,-4375,-4472,-4581,-4688,-4776,-4835,-4861,-4858,-4836,-4806,-4782,-4771,-4777,
+-4798,-4827,-4854,-4871,-4873,-4860,-4834,-4800,-4766,-4738,-4719,-4710,-4710,-4717,-4728,-4741,-4757,-4777,-4803,-4835,
+-4874,-4918,-4963,-5006,-5043,-5072,-5095,-5113,-5130,-5151,-5176,-5207,-5241,-5276,-5307,-5332,-5349,-5360,-5368,-5379,
+-5398,-5427,-5467,-5517,-5572,-5626,-5675,-5715,-5743,-5761,-5771,-5777,-5780,-5784,-5788,-5791,-5791,-5788,-5779,-5766,
+-5752,-5737,-5724,-5714,-5705,-5693,-5675,-5647,-5608,-5558,-5500,-5441,-5389,-5349,-5326,-5321,-5330,-5350,-5372,-5389,
+-5398,-5396,-5385,-5368,-5349,-5333,-5322,-5316,-5313,-5311,-5307,-5299,-5288,-5276,-5264,-5254,-5247,-5242,-5237,-5228,
+-5213,-5190,-5159,-5124,-5088,-5056,-5030,-5012,-5002,-4996,-4989,-4978,-4957,-4926,-4884,-4834,-4778,-4722,-4667,-4618,
+-4576,-4540,-4509,-4481,-4453,-4424,-4392,-4357,-4319,-4282,-4249,-4223,-4206,-4201,-4207,-4223,-4246,-4269,-4289,-4303,
+-4308,-4303,-4292,-4278,-4262,-4249,-4239,-4232,-4226,-4220,-4210,-4195,-4174,-4147,-4117,-4085,-4053,-4021,-3991,-3962,
+-3932,-3901,-3868,-3833,-3794,-3754,-3714,-3673,-3635,-3599,-3565,-3535,-3506,-3479,-3452,-3424,-3395,-3364,-3332,-3300,
+-3269,-3239,-3210,-3184,-3159,-3136,-3114,-3093,-3073,-3053,-3033,-3013,-2992,-2971,-2947,-2922,-2896,-2869,-2843,-2818,
+-2796,-2776,-2758,-2740,-2719,-2695,-2666,-2633,-2599,-2564,-2531,-2501,-2475,-2451,-2426,-2398,-2364,-2323,-2275,-2220,
+-2163,-2105,-2051,-2001,-1957,-1917,-1879,-1843,-1804,-1761,-1715,-1664,-1611,-1556,-1503,-1452,-1407,-1368,-1336,-1311,
+-1293,-1279,-1267,-1254,-1240,-1220,-1195,-1164,-1127,-1086,-1041,-994,-947,-899,-852,-805,-758,-710,-660,-608,
+-552,-494,-431,-367,-301,-235,-171,-110,-52,3,59,119,185,260,343,434,529,624,714,795,
+865,924,974,1018,1061,1104,1150,1197,1245,1290,1329,1360,1383,1399,1409,1418,1427,1437,1449,1462,
+1474,1484,1491,1494,1493,1489,1482,1472,1460,1446,1428,1409,1387,1365,1343,1323,1305,1291,1280,1270,
+1262,1254,1245,1236,1227,1217,1206,1195,1182,1167,1150,1129,1105,1079,1053,1028,1007,988,973,960,
+948,933,915,893,868,842,817,796,781,772,767,765,761,751,734,706,670,626,579,533,
+492,459,435,420,413,411,412,414,417,420,423,427,433,441,451,464,478,493,510,528,
+547,566,585,602,618,633,647,660,674,691,709,729,750,771,789,805,819,831,844,860,
+880,905,933,963,993,1019,1041,1061,1079,1098,1122,1152,1187,1225,1263,1280,1306,1328,1347,1366,
+1386,1410,1439,1472,1505,1536,1562,1580,1591,1599,1605,1616,1632,1653,1678,1702,1720,1728,1724,1709,
+1688,1666,1648,1639,1641,1652,1669,1689,1705,1717,1722,1723,1722,1721,1721,1722,1720,1714,1701,1680,
+1653,1623,1597,1582,1582,1601,1640,1696,1764,1838,1912,1981,2042,2095,2141,2180,2215,2246,2274,2297,
+2314,2324,2327,2325,2319,2313,2312,2319,2336,2362,2396,2433,2466,2489,2498,2489,2462,2422,2374,2327,
+2291,2274,2281,2317,2381,2468,2572,2684,2797,2903,2997,3080,3152,3220,3288,3364,3449,3543,3641,3734,
+3810,3858,3870,3840,3771,3672,3555,3435,3326,3237,3174,3133,3108,3089,3066,3033,2988,2933,2874,2819,
+2774,2742,2723,2712,2701,2683,2653,2608,2550,2483,2415,2350,2292,2243,2200,2160,2118,2071,2018,1962,
+1906,1857,1819,1796,1786,1786,1789,1789,1777,1749,1704,1643,1573,1502,1439,1392,1366,1360,1371,1391,
+1411,1419,1409,1377,1322,1251,1171,1092,1021,964,920,886,853,815,765,701,625,544,464,393,
+334,289,250,210,160,95,14,-78,-171,-251,-307,-329,-319,-282,-234,-191,-170,-182,-232,-315,
+-420,-534,-643,-735,-807,-861,-904,-947,-998,-1062,-1138,-1223,-1306,-1381,-1440,-1480,-1505,-1522,-1541,-1573,
+-1627,-1706,-1812,-1938,-2076,-2216,-2346,-2458,-2547,-2614,-2661,-2695,-2723,-2753,-2791,-2839,-2898,-2963,-3031,-3095,
+-3151,-3198,-3236,-3267,-3298,-3333,-3376,-3431,-3496,-3568,-3644,-3717,-3782,-3835,-3874,-3899,-3912,-3916,-3915,-3913,
+-3915,-3925,-3945,-3976,-4016,-4062,-4108,-4147,-4175,-4187,-4181,-4162,-4137,-4113,-4101,-4108,-4137,-4186,-4248,-4314,
+-4374,-4419,-4447,-4462,-4470,-4482,-4510,-4560,-4634,-4726,-4826,-4922,-5001,-5054,-5077,-5074,-5053,-5024,-5000,-4986,
+-4987,-5000,-5019,-5036,-5044,-5039,-5020,-4991,-4957,-4924,-4898,-4881,-4873,-4871,-4873,-4873,-4870,-4864,-4857,-4853,
+-4854,-4864,-4883,-4911,-4946,-4986,-5029,-5073,-5120,-5169,-5222,-5278,-5334,-5388,-5434,-5468,-5489,-5496,-5492,-5484,
+-5478,-5482,-5501,-5536,-5588,-5649,-5715,-5776,-5826,-5862,-5882,-5887,-5881,-5869,-5855,-5843,-5833,-5827,-5824,-5822,
+-5822,-5823,-5824,-5826,-5826,-5824,-5815,-5798,-5768,-5727,-5675,-5617,-5559,-5507,-5467,-5444,-5438,-5447,-5465,-5487,
+-5507,-5518,-5521,-5514,-5502,-5487,-5472,-5461,-5453,-5446,-5440,-5430,-5417,-5400,-5381,-5364,-5351,-5342,-5339,-5338,
+-5338,-5333,-5323,-5304,-5279,-5248,-5216,-5186,-5159,-5138,-5121,-5104,-5086,-5063,-5032,-4993,-4947,-4896,-4843,-4792,
+-4746,-4706,-4672,-4643,-4617,-4592,-4565,-4535,-4502,-4465,-4429,-4396,-4368,-4350,-4342,-4345,-4356,-4373,-4392,-4408,
+-4419,-4424,-4420,-4412,-4399,-4385,-4371,-4359,-4348,-4337,-4325,-4310,-4290,-4266,-4238,-4208,-4177,-4146,-4117,-4088,
+-4060,-4032,-4003,-3971,-3938,-3903,-3867,-3830,-3794,-3758,-3723,-3688,-3653,-3617,-3580,-3542,-3503,-3464,-3425,-3388,
+-3353,-3322,-3293,-3266,-3241,-3217,-3193,-3169,-3146,-3123,-3101,-3080,-3059,-3038,-3016,-2994,-2969,-2944,-2919,-2894,
+-2871,-2850,-2831,-2813,-2794,-2773,-2749,-2721,-2689,-2656,-2622,-2590,-2561,-2534,-2508,-2481,-2452,-2417,-2378,-2333,
+-2284,-2234,-2184,-2137,-2092,-2051,-2011,-1972,-1930,-1886,-1839,-1788,-1735,-1682,-1628,-1575,-1524,-1475,-1429,-1385,
+-1345,-1308,-1276,-1249,-1225,-1204,-1185,-1165,-1144,-1119,-1089,-1054,-1013,-967,-918,-866,-812,-757,-702,-648,
+-594,-541,-487,-433,-378,-322,-265,-208,-150,-92,-32,30,95,165,240,318,399,479,557,629,
+694,752,803,850,895,939,984,1031,1078,1124,1166,1204,1236,1262,1284,1303,1320,1337,1352,1366,
+1377,1383,1384,1380,1372,1361,1349,1336,1322,1309,1294,1279,1262,1243,1224,1205,1188,1173,1161,1151,
+1142,1132,1121,1109,1095,1081,1068,1057,1048,1040,1032,1022,1009,991,968,942,914,887,862,840,
+822,805,789,771,749,724,695,666,638,614,595,582,572,564,555,540,519,492,459,424,
+391,362,341,329,325,327,334,342,349,355,360,364,369,377,388,403,422,442,464,487,
+508,527,545,562,579,597,617,639,663,689,716,743,768,791,811,829,844,859,876,895,
+917,943,971,999,1026,1050,1070,1086,1102,1118,1137,1160,1188,1219,1251,1280,1317,1335,1351,1367,
+1386,1408,1435,1465,1494,1519,1537,1546,1547,1545,1543,1547,1561,1584,1615,1648,1675,1689,1686,1664,
+1627,1582,1538,1504,1486,1488,1508,1542,1582,1621,1654,1677,1690,1695,1695,1693,1690,1686,1680,1671,
+1656,1638,1618,1602,1595,1603,1629,1676,1741,1820,1907,1995,2078,2151,2213,2263,2301,2330,2351,2366,
+2376,2382,2385,2387,2390,2397,2411,2433,2466,2506,2551,2593,2626,2643,2639,2611,2559,2490,2409,2327,
+2254,2200,2171,2171,2202,2261,2344,2446,2561,2682,2806,2928,3046,3158,3263,3360,3448,3526,3591,3640,
+3672,3681,3667,3629,3569,3491,3402,3310,3224,3151,3096,3059,3039,3030,3026,3019,3003,2977,2940,2895,
+2845,2796,2750,2711,2678,2648,2621,2593,2563,2529,2493,2455,2415,2373,2327,2274,2214,2146,2069,1987,
+1905,1830,1769,1727,1706,1707,1723,1748,1773,1787,1783,1758,1711,1648,1575,1502,1439,1390,1360,1347,
+1344,1343,1336,1315,1277,1221,1154,1082,1014,958,918,893,879,869,854,828,789,737,679,620,
+568,528,499,476,454,422,373,306,221,126,32,-50,-113,-154,-174,-183,-190,-208,-244,-302,
+-379,-469,-561,-646,-719,-777,-824,-867,-915,-975,-1049,-1137,-1232,-1325,-1406,-1468,-1508,-1527,-1535,-1541,
+-1559,-1598,-1666,-1763,-1885,-2022,-2164,-2300,-2420,-2519,-2597,-2658,-2707,-2753,-2802,-2859,-2923,-2993,-3064,-3131,
+-3188,-3234,-3267,-3290,-3309,-3328,-3352,-3386,-3429,-3479,-3535,-3590,-3642,-3687,-3725,-3755,-3779,-3801,-3821,-3843,
+-3867,-3894,-3925,-3959,-3997,-4036,-4076,-4114,-4147,-4172,-4188,-4194,-4193,-4189,-4187,-4193,-4213,-4249,-4300,-4361,
+-4428,-4491,-4548,-4593,-4630,-4661,-4693,-4732,-4783,-4846,-4918,-4993,-5063,-5119,-5157,-5174,-5174,-5162,-5146,-5132,
+-5126,-5128,-5137,-5147,-5155,-5156,-5147,-5130,-5109,-5086,-5067,-5055,-5048,-5047,-5045,-5041,-5030,-5011,-4987,-4961,
+-4937,-4921,-4917,-4926,-4949,-4985,-5029,-5081,-5139,-5200,-5266,-5334,-5404,-5473,-5535,-5587,-5624,-5645,-5649,-5639,
+-5624,-5610,-5605,-5617,-5647,-5695,-5755,-5821,-5882,-5931,-5963,-5974,-5967,-5946,-5916,-5885,-5859,-5840,-5833,-5835,
+-5847,-5865,-5887,-5909,-5928,-5941,-5945,-5937,-5917,-5881,-5833,-5775,-5713,-5652,-5600,-5561,-5540,-5536,-5547,-5568,
+-5593,-5616,-5631,-5638,-5636,-5626,-5613,-5600,-5589,-5580,-5572,-5564,-5553,-5538,-5520,-5498,-5477,-5458,-5445,-5438,
+-5436,-5437,-5438,-5435,-5426,-5409,-5384,-5353,-5320,-5286,-5255,-5226,-5201,-5177,-5152,-5125,-5093,-5057,-5017,-4974,
+-4931,-4890,-4853,-4820,-4790,-4764,-4740,-4716,-4690,-4663,-4634,-4604,-4576,-4552,-4532,-4519,-4511,-4508,-4509,-4511,
+-4511,-4508,-4502,-4492,-4480,-4467,-4454,-4442,-4431,-4420,-4408,-4394,-4376,-4354,-4328,-4298,-4267,-4236,-4205,-4176,
+-4149,-4122,-4095,-4067,-4038,-4007,-3975,-3941,-3907,-3873,-3838,-3804,-3769,-3732,-3695,-3655,-3615,-3574,-3533,-3494,
+-3458,-3424,-3394,-3366,-3339,-3313,-3287,-3260,-3232,-3204,-3176,-3149,-3124,-3100,-3078,-3056,-3034,-3012,-2988,-2964,
+-2940,-2916,-2892,-2869,-2846,-2823,-2799,-2773,-2746,-2718,-2688,-2659,-2630,-2602,-2574,-2546,-2517,-2486,-2452,-2417,
+-2379,-2339,-2298,-2257,-2213,-2168,-2120,-2068,-2012,-1954,-1894,-1835,-1779,-1727,-1681,-1639,-1601,-1565,-1528,-1490,
+-1448,-1405,-1361,-1318,-1279,-1245,-1216,-1192,-1171,-1151,-1129,-1102,-1070,-1032,-987,-937,-882,-825,-766,-707,
+-649,-591,-535,-479,-424,-369,-316,-262,-207,-152,-94,-33,29,96,166,238,311,381,448,510,
+566,615,660,701,741,780,820,861,903,943,982,1017,1049,1077,1104,1129,1154,1178,1201,1222,
+1238,1248,1251,1247,1238,1225,1212,1199,1190,1182,1177,1173,1168,1161,1152,1141,1129,1116,1104,1093,
+1081,1069,1055,1037,1017,993,970,947,928,913,903,896,891,884,874,859,839,815,788,761,
+735,711,689,667,645,620,593,563,532,502,474,450,432,418,407,397,386,372,354,334,
+313,294,279,270,267,270,277,286,295,303,309,315,321,329,341,358,379,404,432,459,
+485,510,532,552,572,592,615,641,670,701,733,764,793,819,841,860,878,896,915,936,
+960,986,1013,1039,1063,1084,1102,1118,1133,1150,1169,1192,1218,1245,1272,1296,1317,1366,1376,1385,
+1396,1412,1433,1458,1484,1507,1523,1531,1530,1523,1514,1510,1514,1530,1557,1589,1619,1640,1644,1628,
+1593,1543,1488,1439,1405,1394,1407,1443,1494,1551,1604,1646,1671,1680,1675,1661,1643,1627,1614,1605,
+1601,1598,1597,1598,1602,1613,1633,1667,1715,1777,1850,1932,2016,2099,2176,2245,2305,2354,2393,2424,
+2446,2461,2469,2473,2475,2478,2483,2495,2513,2538,2566,2593,2613,2621,2612,2584,2537,2475,2405,2334,
+2271,2221,2190,2180,2191,2220,2266,2326,2399,2485,2584,2696,2820,2953,3091,3227,3354,3463,3548,3605,
+3631,3626,3595,3543,3476,3400,3322,3247,3179,3120,3072,3034,3006,2984,2966,2948,2929,2905,2876,2842,
+2803,2760,2717,2674,2632,2594,2560,2529,2502,2477,2454,2432,2409,2382,2349,2307,2253,2186,2107,2018,
+1923,1831,1747,1681,1637,1620,1627,1654,1694,1735,1768,1782,1773,1739,1682,1610,1531,1456,1393,1347,
+1317,1301,1291,1278,1257,1221,1171,1109,1043,981,930,895,877,873,877,882,880,868,844,811,
+776,742,713,692,675,657,630,588,526,446,351,249,147,55,-22,-84,-134,-178,-221,-270,
+-329,-397,-471,-546,-617,-681,-736,-787,-838,-895,-963,-1042,-1131,-1225,-1317,-1397,-1460,-1505,-1532,-1549,
+-1565,-1591,-1636,-1705,-1798,-1913,-2041,-2173,-2299,-2411,-2507,-2585,-2651,-2708,-2765,-2825,-2890,-2960,-3032,-3101,
+-3161,-3209,-3244,-3266,-3281,-3293,-3307,-3327,-3357,-3394,-3437,-3482,-3526,-3565,-3600,-3629,-3657,-3685,-3716,-3752,
+-3792,-3836,-3882,-3928,-3971,-4012,-4050,-4086,-4119,-4150,-4180,-4208,-4233,-4256,-4278,-4301,-4328,-4360,-4400,-4448,
+-4501,-4559,-4618,-4674,-4725,-4772,-4814,-4853,-4892,-4932,-4974,-5016,-5057,-5094,-5123,-5144,-5158,-5165,-5168,-5172,
+-5178,-5186,-5197,-5209,-5218,-5223,-5223,-5217,-5209,-5201,-5195,-5193,-5195,-5199,-5201,-5199,-5189,-5172,-5150,-5125,
+-5102,-5089,-5087,-5100,-5126,-5165,-5211,-5262,-5313,-5364,-5415,-5465,-5518,-5572,-5628,-5681,-5728,-5765,-5788,-5798,
+-5796,-5786,-5775,-5771,-5780,-5803,-5842,-5891,-5945,-5994,-6032,-6053,-6054,-6037,-6006,-5967,-5929,-5898,-5879,-5874,
+-5884,-5907,-5939,-5974,-6008,-6036,-6054,-6058,-6047,-6019,-5977,-5923,-5860,-5796,-5737,-5688,-5654,-5638,-5639,-5654,
+-5678,-5703,-5726,-5740,-5744,-5739,-5726,-5710,-5693,-5681,-5672,-5668,-5666,-5664,-5658,-5648,-5633,-5615,-5596,-5579,
+-5565,-5556,-5551,-5548,-5543,-5535,-5521,-5500,-5472,-5439,-5403,-5367,-5333,-5302,-5274,-5248,-5222,-5196,-5167,-5135,
+-5099,-5061,-5023,-4984,-4948,-4914,-4884,-4856,-4831,-4807,-4784,-4761,-4738,-4716,-4695,-4675,-4658,-4644,-4630,-4618,
+-4606,-4594,-4580,-4565,-4550,-4535,-4521,-4509,-4498,-4488,-4478,-4466,-4452,-4435,-4413,-4388,-4360,-4331,-4301,-4272,
+-4244,-4217,-4191,-4164,-4136,-4106,-4074,-4040,-4004,-3968,-3931,-3895,-3859,-3823,-3787,-3751,-3714,-3677,-3639,-3602,
+-3566,-3531,-3497,-3466,-3436,-3406,-3376,-3346,-3314,-3282,-3250,-3218,-3187,-3159,-3132,-3108,-3085,-3063,-3041,-3018,
+-2994,-2969,-2942,-2915,-2887,-2859,-2832,-2806,-2780,-2755,-2730,-2704,-2678,-2651,-2623,-2593,-2562,-2529,-2497,-2465,
+-2435,-2405,-2374,-2342,-2306,-2262,-2209,-2146,-2073,-1992,-1907,-1823,-1746,-1680,-1627,-1589,-1565,-1549,-1538,-1527,
+-1512,-1490,-1461,-1426,-1387,-1347,-1307,-1270,-1236,-1204,-1171,-1138,-1101,-1060,-1015,-968,-918,-866,-814,-762,
+-709,-656,-601,-545,-488,-429,-371,-314,-258,-202,-148,-93,-38,20,80,143,207,270,331,388,
+440,486,527,565,601,637,674,711,749,786,821,852,879,902,922,941,960,980,1002,1023,
+1043,1059,1071,1076,1077,1073,1067,1062,1058,1058,1061,1064,1068,1069,1067,1060,1050,1038,1025,1013,
+1002,992,981,969,954,936,913,887,861,836,813,795,780,769,758,747,732,715,693,669,
+644,619,594,572,550,529,507,484,460,435,410,386,366,348,334,322,311,301,289,277,
+264,251,240,232,228,229,234,242,251,260,269,278,288,300,315,335,359,387,418,451,
+483,513,541,568,593,619,646,675,706,739,771,803,832,858,881,901,921,940,962,986,
+1012,1038,1065,1089,1111,1129,1144,1158,1172,1189,1209,1233,1260,1288,1314,1336,1354,1366,1411,1414,
+1418,1425,1438,1456,1479,1503,1525,1543,1554,1559,1562,1566,1574,1590,1613,1642,1672,1694,1704,1697,
+1671,1630,1582,1535,1499,1483,1492,1523,1573,1632,1689,1734,1759,1760,1739,1701,1654,1606,1564,1534,
+1518,1515,1524,1540,1563,1590,1620,1655,1695,1743,1797,1859,1927,1997,2069,2140,2207,2269,2324,2373,
+2413,2445,2468,2481,2485,2483,2475,2465,2453,2442,2431,2420,2407,2390,2368,2341,2311,2282,2258,2244,
+2243,2259,2290,2331,2378,2425,2465,2497,2519,2537,2558,2588,2636,2707,2802,2917,3044,3173,3291,3388,
+3454,3486,3485,3455,3403,3340,3273,3209,3153,3106,3067,3035,3005,2976,2946,2912,2875,2837,2796,2756,
+2717,2679,2642,2607,2573,2539,2505,2473,2441,2411,2382,2356,2331,2307,2281,2252,2216,2172,2116,2050,
+1975,1894,1812,1737,1673,1628,1605,1604,1622,1654,1690,1722,1740,1738,1713,1667,1604,1532,1460,1396,
+1347,1313,1293,1281,1270,1253,1224,1183,1130,1070,1011,960,922,900,893,898,909,920,927,927,
+920,908,894,881,869,855,837,809,764,701,617,517,405,288,176,73,-15,-90,-154,-211,
+-266,-322,-382,-447,-514,-582,-649,-715,-779,-844,-912,-985,-1064,-1147,-1230,-1311,-1383,-1445,-1496,-1538,
+-1575,-1614,-1662,-1724,-1803,-1898,-2005,-2119,-2231,-2335,-2428,-2506,-2571,-2627,-2679,-2732,-2788,-2850,-2915,-2980,
+-3042,-3096,-3140,-3174,-3200,-3220,-3241,-3266,-3298,-3336,-3381,-3428,-3474,-3517,-3554,-3586,-3615,-3643,-3674,-3710,
+-3752,-3800,-3850,-3901,-3949,-3993,-4033,-4068,-4101,-4135,-4171,-4210,-4253,-4298,-4343,-4388,-4431,-4472,-4512,-4552,
+-4593,-4637,-4684,-4735,-4787,-4840,-4890,-4937,-4978,-5013,-5042,-5066,-5084,-5099,-5111,-5123,-5135,-5148,-5164,-5182,
+-5202,-5223,-5243,-5260,-5273,-5282,-5286,-5286,-5286,-5286,-5289,-5295,-5303,-5310,-5313,-5311,-5302,-5286,-5267,-5249,
+-5239,-5240,-5258,-5293,-5343,-5404,-5469,-5530,-5583,-5625,-5654,-5674,-5689,-5705,-5726,-5753,-5787,-5823,-5859,-5889,
+-5911,-5923,-5927,-5927,-5928,-5935,-5951,-5977,-6011,-6049,-6084,-6110,-6124,-6122,-6106,-6079,-6047,-6016,-5992,-5979,
+-5979,-5993,-6018,-6049,-6082,-6111,-6132,-6141,-6136,-6115,-6081,-6034,-5979,-5920,-5864,-5814,-5776,-5753,-5745,-5751,
+-5768,-5790,-5812,-5827,-5833,-5828,-5814,-5793,-5771,-5751,-5738,-5734,-5738,-5747,-5759,-5770,-5775,-5773,-5764,-5749,
+-5729,-5709,-5690,-5673,-5660,-5647,-5635,-5620,-5602,-5578,-5549,-5517,-5482,-5447,-5413,-5382,-5352,-5324,-5296,-5266,
+-5235,-5201,-5164,-5125,-5086,-5047,-5010,-4976,-4944,-4916,-4891,-4867,-4844,-4822,-4800,-4779,-4759,-4740,-4723,-4706,
+-4691,-4676,-4661,-4645,-4630,-4614,-4599,-4584,-4571,-4558,-4547,-4535,-4522,-4508,-4490,-4470,-4447,-4422,-4395,-4368,
+-4341,-4314,-4288,-4262,-4235,-4206,-4174,-4139,-4102,-4063,-4022,-3981,-3941,-3902,-3864,-3828,-3792,-3757,-3722,-3686,
+-3649,-3613,-3576,-3540,-3505,-3471,-3437,-3404,-3371,-3339,-3306,-3274,-3242,-3211,-3181,-3153,-3127,-3103,-3079,-3057,
+-3033,-3009,-2984,-2957,-2929,-2901,-2872,-2845,-2818,-2793,-2769,-2745,-2720,-2693,-2663,-2630,-2595,-2558,-2521,-2487,
+-2458,-2433,-2412,-2392,-2370,-2341,-2301,-2246,-2174,-2087,-1988,-1883,-1780,-1686,-1607,-1549,-1511,-1492,-1487,-1491,
+-1497,-1500,-1495,-1481,-1457,-1425,-1387,-1344,-1298,-1250,-1201,-1149,-1094,-1038,-982,-926,-873,-824,-780,-741,
+-704,-668,-630,-588,-542,-490,-434,-376,-318,-262,-208,-157,-110,-63,-16,32,82,134,187,238,
+288,334,376,415,453,489,526,565,605,644,682,717,746,770,789,803,815,826,838,851,
+865,880,893,904,912,917,919,920,921,922,925,928,930,931,927,919,906,890,872,855,
+840,830,823,819,816,813,807,796,782,763,742,720,698,678,659,642,625,607,589,569,
+547,526,505,485,466,449,433,416,400,383,365,347,330,313,298,285,273,262,251,241,
+231,222,214,208,206,207,212,220,230,242,255,270,285,303,323,346,372,402,433,466,
+499,532,563,593,622,652,683,715,748,783,817,849,879,905,929,951,972,993,1017,1043,
+1071,1100,1128,1154,1176,1193,1206,1217,1228,1241,1258,1280,1304,1331,1356,1378,1395,1405,1411,1454,
+1455,1458,1464,1475,1492,1514,1538,1563,1588,1610,1632,1653,1676,1702,1731,1762,1791,1815,1828,1829,
+1815,1790,1759,1728,1707,1701,1715,1749,1798,1854,1907,1946,1963,1952,1913,1852,1774,1691,1613,1548,
+1502,1477,1473,1485,1511,1545,1583,1625,1668,1713,1761,1812,1866,1923,1982,2041,2099,2154,2207,2254,
+2297,2332,2361,2380,2390,2390,2380,2361,2333,2299,2258,2215,2169,2123,2080,2044,2018,2009,2020,2055,
+2117,2205,2313,2433,2555,2665,2753,2809,2831,2819,2781,2730,2678,2641,2629,2648,2699,2777,2871,2969,
+3059,3128,3172,3187,3177,3147,3105,3060,3018,2983,2956,2936,2920,2905,2885,2860,2828,2790,2747,2704,
+2661,2622,2588,2560,2536,2516,2497,2477,2456,2432,2404,2374,2341,2307,2272,2238,2205,2172,2137,2099,
+2057,2009,1956,1900,1843,1789,1742,1706,1683,1674,1676,1685,1696,1701,1696,1676,1642,1594,1538,1479,
+1424,1377,1341,1316,1299,1284,1267,1244,1210,1167,1118,1067,1019,980,953,939,937,944,956,970,
+983,993,1000,1005,1008,1008,1002,987,958,910,842,752,643,520,391,263,142,35,-56,-134,
+-200,-259,-315,-373,-436,-503,-576,-652,-729,-808,-885,-962,-1038,-1112,-1185,-1255,-1322,-1385,-1443,-1499,
+-1554,-1610,-1672,-1741,-1820,-1909,-2005,-2105,-2205,-2298,-2382,-2454,-2515,-2566,-2612,-2655,-2700,-2749,-2803,-2859,
+-2916,-2970,-3020,-3063,-3100,-3133,-3165,-3199,-3236,-3279,-3327,-3377,-3428,-3475,-3518,-3555,-3587,-3617,-3646,-3679,
+-3716,-3759,-3806,-3855,-3904,-3950,-3993,-4031,-4067,-4103,-4142,-4186,-4235,-4290,-4349,-4408,-4466,-4519,-4566,-4608,
+-4647,-4684,-4723,-4766,-4813,-4865,-4920,-4975,-5026,-5071,-5108,-5136,-5155,-5167,-5176,-5184,-5194,-5208,-5227,-5251,
+-5278,-5304,-5328,-5347,-5360,-5367,-5368,-5367,-5366,-5366,-5370,-5377,-5386,-5393,-5396,-5391,-5378,-5358,-5335,-5315,
+-5304,-5310,-5338,-5387,-5456,-5539,-5627,-5710,-5779,-5828,-5854,-5859,-5848,-5830,-5813,-5804,-5808,-5825,-5854,-5889,
+-5925,-5957,-5982,-5997,-6005,-6010,-6014,-6023,-6038,-6059,-6083,-6108,-6130,-6143,-6148,-6144,-6132,-6117,-6103,-6093,
+-6090,-6096,-6110,-6129,-6151,-6170,-6183,-6188,-6181,-6163,-6134,-6095,-6049,-6001,-5953,-5911,-5877,-5854,-5843,-5843,
+-5853,-5869,-5885,-5898,-5903,-5899,-5886,-5865,-5841,-5817,-5800,-5791,-5794,-5807,-5827,-5851,-5874,-5891,-5899,-5896,
+-5883,-5861,-5835,-5808,-5782,-5758,-5739,-5722,-5706,-5689,-5670,-5647,-5619,-5588,-5554,-5519,-5484,-5450,-5416,-5383,
+-5350,-5316,-5281,-5245,-5208,-5171,-5134,-5098,-5065,-5033,-5003,-4975,-4948,-4921,-4894,-4867,-4842,-4817,-4794,-4774,
+-4756,-4741,-4727,-4713,-4700,-4687,-4672,-4657,-4641,-4624,-4608,-4592,-4576,-4559,-4542,-4523,-4503,-4481,-4456,-4431,
+-4405,-4378,-4352,-4325,-4298,-4270,-4241,-4209,-4175,-4138,-4099,-4058,-4017,-3976,-3936,-3897,-3860,-3824,-3788,-3751,
+-3714,-3676,-3637,-3597,-3557,-3519,-3482,-3446,-3413,-3381,-3350,-3320,-3290,-3260,-3229,-3199,-3170,-3141,-3114,-3087,
+-3062,-3037,-3013,-2987,-2962,-2935,-2909,-2882,-2856,-2831,-2807,-2782,-2757,-2729,-2699,-2664,-2625,-2584,-2543,-2504,
+-2469,-2442,-2421,-2408,-2397,-2386,-2368,-2337,-2291,-2226,-2143,-2047,-1942,-1838,-1740,-1657,-1591,-1546,-1518,-1505,
+-1501,-1501,-1498,-1490,-1473,-1447,-1412,-1370,-1321,-1266,-1206,-1142,-1073,-1002,-930,-861,-797,-741,-694,-658,
+-630,-608,-588,-566,-539,-505,-462,-413,-359,-304,-250,-200,-155,-114,-77,-41,-4,34,75,118,
+161,204,244,283,318,352,385,419,454,491,529,566,601,631,656,676,690,701,710,718,
+727,736,746,756,765,772,776,778,778,777,776,775,773,771,766,759,748,734,717,700,
+683,668,658,652,650,651,652,653,652,647,639,627,612,596,579,562,545,528,512,495,
+478,460,443,426,410,395,380,366,352,337,323,308,293,278,264,251,239,229,220,213,
+207,202,200,200,202,208,216,227,240,255,272,290,310,331,354,379,407,436,466,498,
+529,560,590,619,649,679,711,744,779,815,851,886,920,950,977,1002,1026,1049,1074,1101,
+1129,1159,1189,1216,1240,1260,1275,1287,1297,1307,1319,1335,1354,1375,1396,1416,1433,1444,1451,1454,
+1505,1509,1514,1521,1531,1544,1561,1581,1602,1625,1649,1674,1701,1728,1755,1781,1804,1821,1830,1831,
+1823,1809,1793,1782,1781,1794,1824,1870,1928,1990,2047,2089,2108,2099,2062,1999,1918,1828,1738,1658,
+1595,1551,1529,1525,1536,1557,1586,1619,1654,1693,1734,1780,1829,1880,1934,1987,2037,2083,2124,2158,
+2187,2210,2228,2242,2250,2253,2249,2238,2219,2190,2153,2109,2059,2006,1954,1909,1876,1861,1871,1909,
+1979,2081,2210,2359,2517,2671,2806,2911,2975,2996,2974,2917,2837,2748,2666,2602,2567,2564,2589,2637,
+2698,2760,2814,2851,2869,2868,2852,2826,2796,2770,2750,2739,2735,2736,2738,2737,2730,2715,2691,2661,
+2627,2594,2564,2541,2526,2521,2523,2531,2540,2546,2546,2537,2516,2483,2441,2391,2339,2286,2238,2194,
+2157,2125,2095,2065,2033,1996,1955,1911,1866,1824,1786,1755,1732,1714,1699,1684,1665,1639,1606,1566,
+1522,1475,1430,1390,1354,1324,1298,1274,1248,1219,1187,1151,1113,1076,1043,1016,996,984,979,979,
+983,990,999,1008,1018,1026,1031,1028,1015,985,937,868,778,669,546,416,286,163,52,-44,
+-127,-197,-259,-318,-377,-442,-513,-590,-673,-760,-847,-932,-1014,-1091,-1162,-1229,-1292,-1351,-1409,-1467,
+-1527,-1590,-1659,-1734,-1815,-1902,-1994,-2087,-2179,-2266,-2346,-2417,-2479,-2532,-2579,-2622,-2664,-2708,-2754,-2804,
+-2854,-2905,-2954,-2999,-3040,-3078,-3113,-3148,-3185,-3224,-3266,-3310,-3355,-3399,-3441,-3479,-3513,-3544,-3575,-3607,
+-3642,-3682,-3727,-3775,-3825,-3874,-3921,-3965,-4007,-4048,-4089,-4134,-4184,-4239,-4299,-4362,-4425,-4485,-4540,-4590,
+-4634,-4674,-4714,-4754,-4799,-4849,-4903,-4960,-5018,-5073,-5122,-5163,-5196,-5221,-5242,-5259,-5278,-5299,-5325,-5353,
+-5384,-5413,-5438,-5457,-5467,-5470,-5466,-5459,-5452,-5447,-5446,-5450,-5457,-5464,-5468,-5464,-5451,-5430,-5404,-5378,
+-5360,-5358,-5376,-5418,-5483,-5567,-5660,-5753,-5834,-5896,-5933,-5944,-5931,-5904,-5870,-5839,-5818,-5812,-5823,-5847,
+-5880,-5916,-5948,-5973,-5989,-5997,-5999,-6000,-6002,-6010,-6023,-6042,-6063,-6083,-6101,-6114,-6122,-6125,-6126,-6127,
+-6131,-6139,-6151,-6167,-6185,-6200,-6211,-6214,-6208,-6193,-6168,-6136,-6099,-6061,-6023,-5989,-5962,-5943,-5932,-5930,
+-5935,-5944,-5954,-5963,-5967,-5965,-5955,-5940,-5920,-5900,-5883,-5873,-5872,-5880,-5898,-5922,-5948,-5971,-5988,-5996,
+-5993,-5979,-5956,-5928,-5897,-5867,-5840,-5818,-5799,-5782,-5766,-5748,-5727,-5703,-5674,-5642,-5607,-5570,-5533,-5497,
+-5461,-5426,-5390,-5355,-5320,-5285,-5251,-5217,-5184,-5152,-5121,-5091,-5061,-5031,-5000,-4968,-4937,-4906,-4876,-4849,
+-4825,-4804,-4785,-4769,-4755,-4740,-4725,-4708,-4690,-4671,-4651,-4630,-4610,-4591,-4571,-4552,-4533,-4512,-4489,-4465,
+-4439,-4412,-4384,-4355,-4326,-4298,-4269,-4240,-4210,-4179,-4146,-4111,-4074,-4037,-3999,-3961,-3923,-3886,-3849,-3812,
+-3774,-3736,-3696,-3656,-3615,-3574,-3534,-3497,-3461,-3428,-3397,-3367,-3337,-3308,-3278,-3246,-3214,-3182,-3150,-3118,
+-3088,-3059,-3032,-3005,-2979,-2952,-2926,-2899,-2873,-2847,-2821,-2795,-2770,-2743,-2714,-2683,-2648,-2609,-2569,-2528,
+-2490,-2456,-2429,-2410,-2396,-2387,-2378,-2364,-2340,-2304,-2253,-2187,-2109,-2023,-1936,-1852,-1776,-1712,-1661,-1621,
+-1591,-1566,-1543,-1518,-1489,-1455,-1416,-1371,-1321,-1266,-1206,-1142,-1073,-1000,-925,-850,-779,-714,-658,-614,
+-581,-557,-541,-526,-510,-489,-459,-420,-375,-324,-271,-220,-173,-132,-95,-63,-33,-3,28,63,
+99,136,173,207,238,266,290,312,334,357,382,408,435,462,488,510,529,544,556,566,
+574,583,592,601,609,617,622,625,625,622,618,614,611,608,607,606,606,605,602,598,
+592,584,575,566,558,550,544,538,533,528,522,515,507,499,490,480,470,460,449,438,
+426,414,401,387,373,359,345,331,318,304,290,276,263,250,238,227,218,211,206,203,
+202,203,206,211,218,228,239,252,267,284,301,320,340,362,385,410,436,465,495,525,
+557,588,619,649,679,710,741,774,809,845,882,919,955,989,1021,1051,1078,1104,1129,1155,
+1181,1208,1235,1262,1287,1309,1328,1344,1357,1369,1381,1394,1408,1424,1440,1457,1472,1485,1494,1501,
+1505,1560,1567,1574,1580,1587,1594,1601,1609,1618,1627,1637,1648,1658,1666,1673,1674,1671,1661,1645,
+1625,1604,1587,1579,1585,1607,1646,1702,1770,1842,1910,1967,2004,2018,2007,1974,1924,1865,1804,1749,
+1705,1674,1658,1653,1656,1664,1675,1687,1701,1717,1739,1768,1804,1848,1898,1949,1999,2043,2079,2106,
+2123,2133,2137,2138,2139,2141,2144,2147,2149,2147,2139,2125,2103,2074,2040,2006,1975,1952,1944,1954,
+1987,2043,2123,2223,2338,2459,2577,2682,2766,2823,2848,2843,2812,2763,2705,2648,2600,2569,2557,2563,
+2584,2614,2646,2672,2688,2692,2684,2666,2643,2618,2598,2586,2582,2587,2598,2611,2623,2628,2625,2613,
+2593,2568,2542,2521,2510,2512,2530,2562,2606,2655,2703,2742,2765,2767,2744,2698,2632,2552,2466,2382,
+2306,2242,2192,2155,2128,2105,2083,2056,2022,1981,1934,1885,1836,1792,1753,1722,1696,1674,1653,1629,
+1602,1568,1530,1488,1445,1401,1360,1323,1290,1260,1232,1206,1181,1156,1130,1104,1078,1053,1028,1005,
+984,966,951,939,930,923,918,911,899,878,846,799,735,654,559,454,343,232,125,27,
+-59,-135,-203,-265,-326,-389,-456,-531,-612,-698,-787,-878,-966,-1050,-1129,-1202,-1270,-1335,-1397,-1459,
+-1522,-1589,-1659,-1733,-1812,-1894,-1979,-2064,-2148,-2229,-2305,-2375,-2439,-2496,-2548,-2597,-2643,-2689,-2735,-2782,
+-2830,-2878,-2925,-2970,-3011,-3050,-3085,-3119,-3152,-3185,-3218,-3253,-3288,-3324,-3358,-3392,-3425,-3456,-3489,-3523,
+-3560,-3601,-3647,-3696,-3748,-3801,-3853,-3903,-3951,-3997,-4042,-4089,-4138,-4190,-4247,-4306,-4368,-4430,-4490,-4547,
+-4599,-4648,-4694,-4740,-4786,-4834,-4885,-4939,-4994,-5047,-5098,-5144,-5185,-5221,-5252,-5281,-5310,-5341,-5374,-5409,
+-5444,-5477,-5506,-5527,-5540,-5544,-5541,-5533,-5523,-5515,-5511,-5513,-5519,-5526,-5533,-5534,-5529,-5515,-5495,-5473,
+-5453,-5444,-5450,-5475,-5521,-5585,-5661,-5742,-5818,-5880,-5922,-5942,-5940,-5921,-5891,-5858,-5831,-5815,-5812,-5823,
+-5843,-5869,-5895,-5916,-5930,-5936,-5935,-5931,-5928,-5929,-5936,-5950,-5969,-5992,-6014,-6035,-6051,-6063,-6071,-6079,
+-6087,-6098,-6113,-6133,-6155,-6179,-6199,-6215,-6222,-6221,-6210,-6192,-6167,-6139,-6111,-6085,-6063,-6048,-6038,-6035,
+-6036,-6040,-6046,-6050,-6052,-6049,-6043,-6033,-6019,-6006,-5993,-5985,-5981,-5985,-5995,-6009,-6026,-6043,-6057,-6064,
+-6064,-6056,-6041,-6019,-5994,-5967,-5941,-5917,-5896,-5877,-5860,-5842,-5822,-5799,-5773,-5743,-5711,-5677,-5642,-5606,
+-5571,-5536,-5501,-5466,-5431,-5395,-5358,-5322,-5286,-5250,-5216,-5183,-5151,-5120,-5089,-5057,-5026,-4994,-4962,-4931,
+-4902,-4875,-4851,-4828,-4807,-4787,-4767,-4747,-4725,-4703,-4680,-4657,-4634,-4612,-4591,-4572,-4553,-4534,-4514,-4492,
+-4468,-4442,-4414,-4384,-4353,-4322,-4291,-4261,-4232,-4202,-4173,-4142,-4110,-4076,-4041,-4005,-3969,-3932,-3895,-3858,
+-3821,-3784,-3746,-3707,-3668,-3629,-3589,-3551,-3513,-3477,-3443,-3410,-3378,-3347,-3315,-3282,-3249,-3215,-3181,-3147,
+-3114,-3083,-3052,-3023,-2995,-2967,-2938,-2909,-2880,-2850,-2821,-2792,-2764,-2737,-2710,-2682,-2654,-2623,-2590,-2556,
+-2520,-2485,-2452,-2422,-2396,-2373,-2353,-2332,-2309,-2281,-2245,-2201,-2149,-2090,-2026,-1961,-1898,-1838,-1783,-1734,
+-1689,-1646,-1604,-1562,-1517,-1470,-1420,-1369,-1316,-1263,-1208,-1152,-1094,-1032,-968,-901,-835,-770,-710,-658,
+-614,-580,-553,-531,-512,-491,-465,-432,-393,-348,-300,-250,-203,-160,-122,-89,-60,-32,-5,24,
+55,88,121,154,184,209,230,246,259,270,281,293,306,321,336,351,366,378,388,397,
+404,411,418,426,435,444,452,458,462,462,460,456,452,449,447,449,453,461,470,480,
+488,495,497,496,491,483,472,459,446,433,422,411,403,395,390,385,380,375,371,365,
+358,351,342,333,323,312,302,291,280,270,260,251,242,235,228,223,219,217,217,217,
+220,223,229,235,244,254,265,278,293,308,325,343,362,382,403,427,452,480,509,541,
+575,609,644,678,713,746,780,813,847,882,917,953,989,1025,1059,1091,1122,1150,1176,1201,
+1225,1248,1271,1294,1317,1338,1359,1379,1397,1413,1428,1443,1457,1470,1484,1497,1510,1522,1533,1543,
+1552,1560,1600,1610,1618,1624,1628,1630,1631,1629,1627,1623,1618,1611,1602,1588,1568,1542,1509,1470,
+1429,1387,1351,1326,1315,1322,1349,1394,1454,1523,1594,1659,1712,1750,1770,1775,1769,1756,1743,1733,
+1731,1738,1750,1766,1782,1794,1800,1800,1795,1789,1786,1792,1807,1835,1872,1917,1965,2010,2047,2074,
+2090,2096,2094,2089,2085,2086,2094,2110,2132,2158,2184,2207,2225,2236,2238,2234,2224,2212,2201,2193,
+2191,2198,2213,2237,2268,2306,2347,2389,2429,2465,2495,2518,2534,2544,2550,2554,2558,2565,2575,2588,
+2604,2620,2635,2645,2648,2644,2632,2614,2593,2571,2552,2539,2533,2535,2544,2557,2571,2582,2587,2582,
+2567,2544,2516,2489,2470,2464,2478,2513,2571,2647,2734,2823,2902,2961,2992,2988,2947,2874,2774,2657,
+2535,2418,2315,2232,2171,2128,2101,2082,2065,2045,2016,1980,1935,1886,1837,1790,1749,1715,1688,1665,
+1645,1623,1598,1569,1534,1495,1453,1411,1371,1334,1301,1273,1249,1227,1206,1184,1160,1132,1100,1065,
+1027,987,947,908,872,838,807,778,750,720,687,647,599,542,475,401,320,236,151,68,
+-10,-84,-155,-222,-288,-354,-424,-497,-576,-658,-743,-830,-917,-1003,-1085,-1165,-1242,-1317,-1390,-1463,
+-1536,-1610,-1685,-1760,-1837,-1913,-1988,-2063,-2135,-2205,-2272,-2336,-2396,-2453,-2507,-2559,-2609,-2657,-2705,-2751,
+-2797,-2842,-2886,-2928,-2969,-3008,-3044,-3079,-3113,-3146,-3179,-3211,-3244,-3276,-3309,-3341,-3373,-3406,-3440,-3476,
+-3515,-3558,-3604,-3653,-3705,-3757,-3810,-3862,-3912,-3961,-4009,-4057,-4106,-4159,-4215,-4275,-4338,-4404,-4470,-4535,
+-4598,-4658,-4714,-4766,-4817,-4865,-4912,-4959,-5004,-5048,-5091,-5131,-5168,-5203,-5236,-5268,-5301,-5334,-5370,-5406,
+-5442,-5476,-5506,-5530,-5546,-5556,-5559,-5557,-5554,-5551,-5551,-5555,-5563,-5573,-5583,-5590,-5592,-5587,-5576,-5562,
+-5547,-5538,-5538,-5552,-5580,-5621,-5674,-5731,-5788,-5836,-5872,-5892,-5895,-5885,-5866,-5843,-5823,-5809,-5805,-5810,
+-5822,-5838,-5853,-5864,-5868,-5866,-5858,-5848,-5840,-5838,-5844,-5859,-5881,-5909,-5939,-5967,-5990,-6007,-6018,-6024,
+-6029,-6036,-6047,-6064,-6088,-6117,-6149,-6180,-6208,-6228,-6240,-6242,-6236,-6223,-6207,-6189,-6174,-6161,-6153,-6150,
+-6150,-6153,-6156,-6159,-6160,-6157,-6152,-6144,-6135,-6125,-6116,-6109,-6105,-6104,-6106,-6111,-6116,-6122,-6125,-6125,
+-6121,-6113,-6101,-6085,-6068,-6050,-6031,-6013,-5996,-5979,-5961,-5941,-5919,-5893,-5865,-5834,-5801,-5768,-5734,-5701,
+-5668,-5636,-5603,-5570,-5535,-5499,-5460,-5419,-5377,-5335,-5294,-5254,-5217,-5182,-5149,-5118,-5087,-5058,-5028,-4998,
+-4969,-4940,-4912,-4885,-4859,-4833,-4808,-4784,-4759,-4733,-4708,-4682,-4657,-4633,-4610,-4589,-4568,-4549,-4530,-4510,
+-4488,-4464,-4438,-4410,-4380,-4349,-4318,-4287,-4256,-4225,-4195,-4164,-4132,-4099,-4064,-4028,-3991,-3954,-3916,-3878,
+-3841,-3805,-3769,-3733,-3697,-3661,-3624,-3587,-3550,-3513,-3477,-3441,-3405,-3371,-3336,-3302,-3268,-3234,-3200,-3167,
+-3136,-3105,-3076,-3047,-3019,-2992,-2963,-2934,-2903,-2872,-2839,-2807,-2774,-2743,-2714,-2686,-2658,-2631,-2604,-2575,
+-2544,-2512,-2478,-2443,-2408,-2372,-2336,-2300,-2264,-2226,-2186,-2143,-2097,-2049,-2000,-1950,-1900,-1852,-1805,-1759,
+-1714,-1668,-1621,-1572,-1520,-1467,-1412,-1358,-1304,-1252,-1203,-1155,-1108,-1060,-1010,-957,-903,-846,-790,-736,
+-685,-640,-601,-567,-537,-509,-480,-448,-413,-375,-333,-290,-248,-208,-172,-141,-113,-88,-65,-41,
+-16,10,39,69,98,124,147,165,180,191,200,208,216,225,234,244,253,260,265,269,
+270,271,272,274,278,283,290,298,306,312,315,316,314,310,305,301,299,300,303,309,
+317,326,334,339,343,343,339,334,326,318,310,303,298,293,290,288,286,284,282,279,
+275,270,264,258,252,246,241,235,231,226,223,220,218,217,217,218,220,223,226,231,
+235,240,246,252,259,268,278,290,303,319,336,355,375,396,419,442,467,494,524,555,
+588,624,661,698,736,772,808,843,877,910,943,976,1009,1042,1075,1107,1139,1170,1199,1226,
+1251,1274,1296,1317,1337,1358,1378,1398,1419,1438,1457,1474,1490,1504,1517,1528,1539,1549,1559,1570,
+1580,1590,1600,1623,1633,1642,1650,1655,1658,1660,1659,1658,1654,1649,1640,1626,1606,1578,1542,1498,
+1448,1395,1344,1299,1266,1247,1247,1264,1297,1342,1395,1450,1501,1544,1579,1605,1624,1641,1658,1679,
+1706,1739,1774,1810,1841,1864,1876,1877,1870,1857,1843,1835,1837,1850,1875,1911,1953,1996,2034,2064,
+2083,2091,2091,2087,2083,2085,2096,2118,2151,2193,2241,2290,2336,2377,2410,2434,2451,2460,2464,2464,
+2460,2453,2442,2428,2409,2385,2358,2330,2302,2279,2262,2255,2259,2275,2302,2337,2379,2424,2469,2509,
+2543,2569,2586,2593,2592,2583,2570,2553,2536,2520,2509,2502,2501,2507,2518,2532,2546,2558,2564,2562,
+2550,2527,2497,2463,2430,2407,2400,2414,2454,2520,2608,2712,2822,2925,3010,3066,3084,3061,2999,2902,
+2780,2645,2509,2383,2276,2191,2130,2090,2066,2050,2036,2018,1993,1959,1917,1871,1823,1778,1737,1702,
+1673,1649,1627,1605,1582,1555,1525,1492,1456,1420,1385,1352,1321,1294,1267,1242,1216,1187,1156,1121,
+1082,1040,995,948,901,853,806,761,716,672,627,582,535,484,431,374,314,250,183,114,
+43,-29,-103,-179,-256,-335,-416,-497,-579,-661,-743,-824,-903,-982,-1060,-1138,-1217,-1298,-1381,-1466,
+-1553,-1640,-1726,-1810,-1890,-1965,-2036,-2101,-2161,-2217,-2271,-2322,-2374,-2425,-2476,-2528,-2579,-2629,-2678,-2725,
+-2770,-2812,-2851,-2889,-2925,-2960,-2995,-3029,-3064,-3099,-3135,-3171,-3207,-3243,-3279,-3314,-3349,-3384,-3420,-3458,
+-3497,-3539,-3583,-3629,-3677,-3725,-3773,-3820,-3867,-3913,-3958,-4005,-4055,-4108,-4166,-4230,-4299,-4373,-4449,-4527,
+-4603,-4675,-4742,-4803,-4858,-4905,-4947,-4984,-5018,-5049,-5078,-5107,-5137,-5167,-5199,-5232,-5267,-5303,-5340,-5376,
+-5410,-5441,-5468,-5490,-5507,-5519,-5527,-5533,-5538,-5545,-5555,-5567,-5581,-5595,-5608,-5617,-5620,-5618,-5609,-5596,
+-5582,-5571,-5566,-5570,-5585,-5611,-5645,-5683,-5722,-5756,-5781,-5796,-5800,-5795,-5784,-5772,-5762,-5757,-5758,-5767,
+-5779,-5792,-5802,-5806,-5803,-5791,-5775,-5757,-5741,-5733,-5736,-5752,-5780,-5817,-5859,-5902,-5941,-5971,-5993,-6005,
+-6011,-6013,-6017,-6024,-6039,-6062,-6093,-6128,-6165,-6199,-6228,-6250,-6262,-6266,-6263,-6255,-6246,-6237,-6231,-6229,
+-6230,-6233,-6238,-6243,-6247,-6248,-6246,-6241,-6235,-6227,-6220,-6214,-6209,-6206,-6204,-6204,-6203,-6201,-6197,-6190,
+-6181,-6169,-6156,-6143,-6129,-6115,-6103,-6091,-6079,-6066,-6051,-6032,-6009,-5982,-5951,-5917,-5881,-5845,-5809,-5774,
+-5742,-5711,-5681,-5651,-5619,-5585,-5548,-5509,-5466,-5422,-5377,-5333,-5290,-5251,-5213,-5179,-5146,-5115,-5085,-5054,
+-5023,-4992,-4961,-4929,-4899,-4869,-4841,-4813,-4786,-4759,-4733,-4707,-4681,-4655,-4630,-4605,-4580,-4556,-4533,-4510,
+-4486,-4462,-4437,-4411,-4383,-4355,-4326,-4296,-4266,-4236,-4206,-4175,-4143,-4110,-4075,-4038,-4001,-3963,-3924,-3886,
+-3849,-3812,-3777,-3742,-3708,-3675,-3641,-3606,-3571,-3536,-3500,-3464,-3427,-3391,-3356,-3321,-3286,-3252,-3219,-3187,
+-3156,-3126,-3098,-3070,-3043,-3017,-2990,-2962,-2933,-2903,-2872,-2840,-2807,-2774,-2741,-2709,-2678,-2648,-2618,-2587,
+-2556,-2524,-2490,-2455,-2417,-2378,-2337,-2295,-2252,-2208,-2162,-2117,-2070,-2023,-1976,-1930,-1885,-1840,-1796,-1752,
+-1708,-1662,-1615,-1565,-1513,-1459,-1404,-1349,-1296,-1245,-1197,-1153,-1110,-1068,-1027,-983,-937,-888,-837,-785,
+-733,-683,-636,-592,-552,-515,-481,-447,-413,-379,-343,-307,-271,-237,-205,-177,-153,-131,-112,-94,
+-76,-56,-36,-15,6,27,47,64,78,90,101,110,119,129,139,149,159,167,173,176,
+176,173,168,162,158,155,155,158,163,169,176,181,185,186,184,180,174,167,161,155,
+151,149,148,149,151,154,157,160,163,167,172,176,181,186,191,195,198,199,199,198,
+195,192,189,186,184,182,182,182,183,184,185,186,188,190,192,196,200,205,210,217,
+223,230,237,245,253,261,272,284,299,316,336,358,382,407,433,459,486,513,541,570,
+600,632,665,700,735,771,806,841,874,906,937,968,998,1028,1059,1090,1121,1153,1184,1214,
+1242,1269,1294,1318,1340,1361,1382,1403,1424,1444,1464,1483,1501,1516,1530,1542,1552,1561,1570,1580,
+1590,1600,1611,1623,1632,1643,1653,1662,1669,1676,1683,1689,1696,1702,1707,1710,1708,1699,1683,1659,
+1626,1587,1544,1502,1463,1432,1413,1406,1413,1432,1459,1492,1527,1561,1591,1618,1641,1662,1684,1708,
+1736,1767,1801,1834,1863,1886,1900,1904,1900,1890,1879,1872,1872,1882,1904,1935,1973,2014,2052,2083,
+2105,2117,2120,2117,2114,2115,2125,2145,2177,2219,2269,2322,2374,2422,2463,2496,2523,2543,2559,2573,
+2584,2593,2598,2595,2583,2560,2525,2478,2423,2363,2305,2253,2214,2190,2184,2195,2221,2259,2303,2348,
+2389,2422,2446,2459,2462,2458,2448,2436,2425,2416,2411,2412,2418,2428,2443,2461,2479,2496,2509,2516,
+2516,2507,2489,2465,2436,2409,2388,2380,2389,2420,2473,2548,2639,2739,2837,2924,2988,3022,3021,2983,
+2911,2812,2694,2569,2446,2334,2240,2166,2113,2076,2051,2033,2015,1994,1966,1931,1890,1846,1799,1755,
+1714,1677,1646,1619,1595,1573,1550,1525,1498,1469,1438,1405,1371,1337,1302,1269,1235,1202,1169,1136,
+1102,1067,1031,994,955,914,872,827,780,732,682,631,579,527,474,421,366,310,251,188,
+120,46,-32,-118,-208,-302,-399,-494,-588,-677,-761,-840,-915,-986,-1056,-1127,-1203,-1284,-1372,-1467,
+-1567,-1670,-1773,-1873,-1966,-2050,-2124,-2186,-2239,-2284,-2324,-2360,-2397,-2436,-2478,-2524,-2573,-2624,-2675,-2724,
+-2771,-2815,-2854,-2889,-2921,-2951,-2980,-3010,-3041,-3074,-3108,-3144,-3181,-3218,-3255,-3291,-3327,-3362,-3397,-3432,
+-3469,-3508,-3549,-3591,-3635,-3679,-3723,-3766,-3808,-3849,-3890,-3933,-3978,-4029,-4085,-4148,-4219,-4296,-4379,-4464,
+-4549,-4630,-4705,-4771,-4827,-4872,-4907,-4933,-4952,-4967,-4982,-4999,-5019,-5045,-5078,-5116,-5159,-5205,-5252,-5297,
+-5339,-5375,-5405,-5427,-5445,-5457,-5468,-5478,-5489,-5504,-5522,-5543,-5566,-5587,-5604,-5615,-5618,-5611,-5596,-5576,
+-5552,-5529,-5511,-5501,-5502,-5513,-5533,-5560,-5590,-5618,-5642,-5658,-5668,-5670,-5669,-5666,-5665,-5669,-5678,-5692,
+-5709,-5725,-5736,-5740,-5734,-5719,-5696,-5669,-5643,-5624,-5617,-5625,-5649,-5688,-5739,-5795,-5852,-5904,-5947,-5979,
+-6000,-6012,-6018,-6023,-6030,-6043,-6062,-6089,-6121,-6156,-6190,-6220,-6243,-6259,-6267,-6269,-6266,-6262,-6257,-6255,
+-6257,-6261,-6267,-6275,-6283,-6289,-6292,-6293,-6292,-6288,-6283,-6279,-6275,-6272,-6271,-6270,-6268,-6266,-6261,-6255,
+-6245,-6233,-6220,-6206,-6191,-6178,-6165,-6154,-6142,-6130,-6115,-6098,-6076,-6049,-6018,-5984,-5946,-5907,-5869,-5832,
+-5797,-5765,-5734,-5705,-5676,-5646,-5614,-5579,-5542,-5502,-5460,-5418,-5375,-5335,-5295,-5258,-5222,-5187,-5152,-5117,
+-5081,-5044,-5007,-4970,-4933,-4898,-4864,-4833,-4804,-4777,-4751,-4725,-4700,-4674,-4648,-4621,-4593,-4564,-4535,-4506,
+-4477,-4449,-4421,-4393,-4365,-4338,-4310,-4283,-4255,-4228,-4199,-4170,-4140,-4109,-4076,-4043,-4008,-3972,-3936,-3900,
+-3865,-3830,-3795,-3761,-3728,-3695,-3661,-3628,-3593,-3559,-3524,-3489,-3454,-3420,-3386,-3352,-3319,-3287,-3255,-3223,
+-3191,-3160,-3128,-3097,-3067,-3037,-3008,-2979,-2950,-2921,-2892,-2863,-2833,-2803,-2771,-2739,-2707,-2673,-2640,-2605,
+-2570,-2534,-2497,-2460,-2423,-2385,-2347,-2308,-2268,-2228,-2187,-2145,-2102,-2059,-2014,-1969,-1923,-1877,-1831,-1784,
+-1737,-1689,-1640,-1589,-1537,-1483,-1429,-1375,-1321,-1270,-1220,-1173,-1127,-1084,-1040,-997,-952,-906,-857,-808,
+-757,-707,-658,-611,-567,-526,-487,-450,-415,-381,-346,-313,-279,-247,-217,-189,-164,-143,-123,-106,
+-90,-76,-61,-47,-33,-20,-9,0,6,11,15,17,20,23,28,34,42,50,57,63,
+66,66,63,57,49,41,34,28,24,24,25,29,35,40,45,48,50,49,47,43,
+39,34,30,26,24,23,24,28,33,40,49,60,70,81,91,100,106,111,114,114,
+114,114,113,114,116,119,124,130,136,141,146,150,153,156,158,160,163,167,173,180,
+189,198,209,219,231,243,256,270,286,305,325,349,374,401,429,457,485,512,539,565,
+592,619,646,675,705,737,769,802,835,867,898,929,959,989,1019,1049,1079,1110,1141,1172,
+1202,1232,1260,1286,1311,1335,1358,1380,1401,1422,1442,1462,1480,1497,1513,1527,1540,1551,1562,1573,
+1584,1596,1608,1620,1632,1626,1637,1647,1656,1664,1672,1681,1691,1703,1716,1730,1743,1753,1760,1760,
+1755,1743,1726,1705,1683,1662,1646,1636,1633,1638,1651,1668,1689,1711,1733,1753,1770,1787,1803,1819,
+1837,1856,1876,1894,1911,1923,1930,1931,1927,1920,1913,1909,1911,1923,1943,1972,2007,2045,2081,2112,
+2135,2149,2154,2153,2150,2148,2151,2163,2184,2213,2250,2289,2328,2362,2391,2413,2429,2441,2452,2465,
+2482,2504,2528,2554,2576,2589,2591,2579,2550,2507,2453,2393,2333,2279,2235,2206,2192,2193,2207,2229,
+2256,2283,2307,2326,2338,2343,2344,2341,2337,2333,2331,2332,2335,2342,2352,2364,2379,2396,2414,2433,
+2451,2466,2479,2487,2490,2490,2487,2485,2486,2495,2515,2547,2592,2648,2712,2778,2839,2888,2917,2923,
+2902,2854,2782,2692,2589,2482,2377,2282,2200,2132,2080,2040,2009,1983,1959,1933,1903,1869,1831,1790,
+1748,1707,1668,1632,1600,1571,1545,1520,1496,1470,1443,1413,1381,1346,1309,1270,1231,1193,1155,1120,
+1087,1056,1027,999,971,943,911,876,837,794,745,694,639,583,526,470,414,358,301,241,
+176,105,26,-60,-155,-256,-361,-467,-570,-668,-759,-842,-917,-986,-1053,-1120,-1191,-1271,-1360,-1460,
+-1571,-1688,-1808,-1928,-2040,-2142,-2230,-2302,-2358,-2399,-2430,-2454,-2474,-2496,-2522,-2553,-2592,-2636,-2684,-2734,
+-2784,-2831,-2873,-2911,-2945,-2975,-3002,-3028,-3055,-3084,-3114,-3147,-3181,-3215,-3249,-3283,-3315,-3345,-3376,-3406,
+-3437,-3471,-3507,-3546,-3587,-3631,-3675,-3720,-3764,-3807,-3848,-3889,-3931,-3976,-4025,-4079,-4140,-4208,-4282,-4360,
+-4440,-4517,-4589,-4653,-4705,-4745,-4772,-4788,-4795,-4797,-4797,-4801,-4812,-4832,-4864,-4906,-4959,-5018,-5081,-5144,
+-5202,-5254,-5298,-5332,-5357,-5376,-5391,-5406,-5422,-5441,-5466,-5494,-5524,-5553,-5577,-5594,-5599,-5593,-5574,-5546,
+-5511,-5473,-5438,-5410,-5392,-5386,-5392,-5409,-5434,-5462,-5491,-5517,-5538,-5555,-5567,-5577,-5587,-5599,-5614,-5633,
+-5652,-5671,-5685,-5691,-5688,-5673,-5649,-5617,-5584,-5553,-5531,-5523,-5531,-5557,-5599,-5654,-5716,-5780,-5841,-5894,
+-5937,-5968,-5990,-6005,-6016,-6028,-6042,-6062,-6086,-6115,-6147,-6179,-6207,-6232,-6250,-6262,-6268,-6271,-6271,-6272,
+-6273,-6277,-6283,-6291,-6300,-6309,-6316,-6322,-6324,-6325,-6323,-6321,-6318,-6316,-6315,-6315,-6315,-6315,-6313,-6310,
+-6305,-6297,-6287,-6275,-6261,-6247,-6232,-6217,-6201,-6185,-6167,-6147,-6123,-6096,-6066,-6032,-5995,-5957,-5919,-5881,
+-5845,-5811,-5780,-5750,-5721,-5692,-5663,-5632,-5598,-5563,-5525,-5486,-5447,-5407,-5368,-5329,-5291,-5253,-5215,-5176,
+-5136,-5096,-5055,-5013,-4972,-4933,-4895,-4859,-4826,-4796,-4768,-4741,-4715,-4688,-4661,-4633,-4604,-4573,-4541,-4509,
+-4477,-4446,-4415,-4385,-4356,-4327,-4299,-4272,-4244,-4216,-4188,-4159,-4129,-4099,-4069,-4038,-4007,-3976,-3945,-3914,
+-3883,-3851,-3820,-3788,-3755,-3721,-3686,-3651,-3615,-3579,-3543,-3507,-3473,-3440,-3409,-3379,-3350,-3322,-3294,-3265,
+-3235,-3205,-3172,-3139,-3105,-3070,-3035,-3001,-2968,-2937,-2907,-2878,-2850,-2822,-2795,-2766,-2736,-2705,-2672,-2637,
+-2601,-2563,-2525,-2487,-2449,-2412,-2375,-2339,-2303,-2267,-2231,-2193,-2154,-2112,-2069,-2023,-1976,-1926,-1877,-1826,
+-1775,-1725,-1675,-1624,-1574,-1524,-1474,-1423,-1373,-1322,-1272,-1222,-1173,-1124,-1075,-1026,-977,-929,-880,-831,
+-783,-737,-692,-648,-607,-568,-531,-495,-460,-425,-391,-357,-323,-290,-258,-228,-201,-177,-155,-136,
+-118,-102,-87,-72,-58,-46,-35,-26,-21,-19,-21,-26,-32,-41,-49,-56,-61,-65,-66,-65,
+-64,-63,-62,-63,-67,-72,-79,-88,-97,-105,-112,-117,-120,-120,-118,-114,-108,-101,-93,-86,
+-79,-73,-68,-65,-62,-60,-58,-56,-53,-49,-44,-38,-31,-24,-16,-9,-3,1,5,8,
+10,12,15,19,26,33,43,53,64,74,84,91,97,102,105,108,112,116,123,131,
+142,155,169,185,200,216,232,248,264,281,299,318,340,363,388,414,440,466,492,518,
+543,568,593,620,647,675,706,737,770,803,836,869,901,933,963,994,1023,1053,1082,1111,
+1140,1169,1196,1223,1249,1274,1298,1320,1342,1364,1384,1404,1424,1442,1460,1477,1494,1510,1525,1541,
+1556,1571,1586,1600,1614,1626,1596,1608,1619,1628,1636,1645,1654,1664,1676,1689,1704,1720,1735,1748,
+1759,1766,1770,1771,1770,1768,1767,1767,1770,1776,1786,1799,1814,1830,1846,1862,1876,1889,1902,1914,
+1926,1939,1951,1963,1972,1980,1983,1983,1980,1975,1970,1967,1968,1976,1990,2011,2037,2066,2095,2121,
+2142,2156,2162,2163,2161,2158,2157,2160,2170,2185,2204,2225,2246,2262,2273,2277,2276,2272,2268,2268,
+2275,2291,2318,2353,2394,2436,2473,2501,2515,2513,2495,2461,2417,2366,2315,2267,2228,2200,2185,2181,
+2187,2201,2218,2238,2257,2273,2286,2296,2303,2306,2307,2306,2304,2301,2299,2297,2299,2304,2316,2334,
+2360,2393,2432,2476,2521,2565,2606,2642,2672,2696,2716,2733,2749,2766,2786,2807,2830,2850,2865,2870,
+2861,2836,2793,2732,2655,2565,2468,2369,2272,2181,2102,2034,1979,1935,1899,1871,1845,1821,1795,1766,
+1735,1701,1666,1629,1593,1559,1526,1496,1468,1441,1414,1386,1357,1326,1292,1255,1216,1177,1137,1099,
+1064,1031,1002,976,951,927,902,873,840,800,755,704,648,588,527,465,405,345,286,227,
+165,99,27,-52,-140,-236,-338,-442,-547,-649,-745,-832,-912,-984,-1052,-1118,-1187,-1263,-1349,-1447,
+-1557,-1679,-1807,-1938,-2066,-2185,-2290,-2379,-2448,-2499,-2533,-2554,-2567,-2576,-2587,-2603,-2625,-2655,-2693,-2736,
+-2782,-2829,-2875,-2916,-2954,-2988,-3018,-3046,-3073,-3101,-3131,-3162,-3194,-3228,-3261,-3294,-3324,-3353,-3380,-3406,
+-3432,-3460,-3490,-3524,-3563,-3605,-3652,-3700,-3750,-3799,-3846,-3892,-3936,-3979,-4022,-4067,-4114,-4166,-4222,-4281,
+-4343,-4405,-4464,-4517,-4562,-4596,-4620,-4632,-4636,-4634,-4630,-4628,-4634,-4649,-4678,-4720,-4774,-4840,-4912,-4987,
+-5060,-5127,-5185,-5233,-5271,-5299,-5321,-5339,-5358,-5379,-5405,-5436,-5469,-5504,-5536,-5561,-5576,-5578,-5567,-5543,
+-5508,-5466,-5423,-5383,-5350,-5329,-5321,-5326,-5342,-5367,-5397,-5430,-5461,-5489,-5514,-5535,-5553,-5571,-5589,-5607,
+-5626,-5644,-5658,-5667,-5667,-5658,-5640,-5612,-5579,-5545,-5514,-5491,-5481,-5486,-5506,-5542,-5590,-5645,-5704,-5762,
+-5815,-5861,-5898,-5927,-5949,-5969,-5988,-6008,-6032,-6061,-6093,-6127,-6162,-6196,-6226,-6251,-6271,-6285,-6296,-6303,
+-6309,-6315,-6321,-6328,-6336,-6344,-6352,-6359,-6364,-6367,-6368,-6368,-6366,-6364,-6362,-6360,-6359,-6358,-6357,-6355,
+-6352,-6348,-6341,-6333,-6322,-6310,-6296,-6280,-6263,-6244,-6223,-6200,-6174,-6145,-6114,-6080,-6044,-6006,-5969,-5931,
+-5895,-5861,-5829,-5799,-5770,-5741,-5712,-5682,-5650,-5616,-5580,-5542,-5502,-5461,-5419,-5378,-5336,-5296,-5255,-5215,
+-5175,-5135,-5094,-5054,-5014,-4975,-4936,-4899,-4864,-4830,-4797,-4766,-4734,-4703,-4672,-4640,-4608,-4575,-4542,-4509,
+-4477,-4446,-4416,-4387,-4359,-4331,-4303,-4275,-4246,-4217,-4186,-4154,-4122,-4089,-4057,-4026,-3995,-3965,-3937,-3909,
+-3882,-3854,-3826,-3796,-3765,-3731,-3696,-3659,-3621,-3582,-3543,-3505,-3469,-3436,-3406,-3378,-3353,-3329,-3307,-3285,
+-3262,-3238,-3211,-3182,-3151,-3118,-3084,-3049,-3015,-2982,-2950,-2919,-2890,-2863,-2836,-2809,-2781,-2752,-2721,-2689,
+-2655,-2619,-2582,-2545,-2508,-2471,-2434,-2398,-2361,-2324,-2285,-2244,-2201,-2154,-2104,-2051,-1996,-1939,-1881,-1824,
+-1769,-1716,-1665,-1617,-1573,-1530,-1489,-1448,-1408,-1366,-1323,-1278,-1231,-1182,-1131,-1079,-1027,-975,-924,-876,
+-829,-786,-745,-707,-671,-637,-605,-572,-540,-507,-474,-439,-405,-372,-340,-311,-284,-260,-240,-221,
+-205,-189,-174,-157,-139,-120,-101,-82,-66,-52,-44,-41,-44,-53,-66,-83,-102,-121,-139,-154,
+-166,-174,-179,-182,-183,-184,-185,-188,-193,-200,-209,-220,-231,-241,-249,-255,-258,-258,-254,-247,
+-238,-228,-216,-206,-196,-187,-181,-176,-172,-169,-166,-163,-159,-155,-150,-144,-138,-132,-126,-120,
+-114,-108,-101,-94,-85,-75,-64,-51,-38,-25,-13,-2,7,15,22,29,36,43,53,64,
+77,93,110,128,146,165,182,199,214,229,244,259,275,293,313,334,357,381,406,432,
+458,484,510,537,564,592,622,652,684,716,749,782,815,847,878,909,938,966,994,1021,
+1048,1074,1100,1126,1151,1176,1201,1224,1248,1270,1292,1314,1335,1355,1375,1395,1415,1434,1453,1472,
+1492,1511,1530,1548,1566,1581,1596,1533,1550,1565,1579,1592,1605,1617,1630,1643,1657,1671,1685,1700,
+1714,1727,1739,1751,1761,1771,1781,1792,1804,1816,1830,1843,1858,1871,1884,1896,1907,1918,1928,1938,
+1949,1961,1974,1987,1999,2010,2019,2026,2029,2030,2030,2028,2028,2030,2035,2044,2057,2072,2089,2105,
+2120,2131,2138,2142,2143,2143,2143,2145,2150,2157,2167,2177,2187,2193,2195,2191,2183,2172,2160,2151,
+2147,2153,2168,2194,2230,2271,2314,2355,2388,2411,2419,2413,2393,2362,2324,2282,2241,2204,2175,2155,
+2145,2145,2152,2164,2181,2200,2218,2235,2250,2261,2267,2270,2267,2261,2252,2241,2231,2224,2222,2230,
+2249,2280,2324,2380,2446,2518,2593,2666,2733,2790,2837,2870,2892,2904,2906,2903,2895,2884,2869,2851,
+2827,2795,2754,2702,2637,2561,2475,2381,2284,2188,2095,2011,1937,1874,1824,1784,1754,1729,1709,1689,
+1668,1644,1617,1586,1553,1519,1484,1450,1418,1388,1359,1332,1305,1277,1247,1216,1181,1145,1107,1069,
+1032,997,965,935,908,883,857,830,799,763,721,672,617,557,494,428,362,297,234,171,
+109,45,-22,-94,-173,-259,-351,-449,-549,-648,-745,-837,-922,-1000,-1072,-1140,-1208,-1279,-1357,-1444,
+-1543,-1652,-1771,-1895,-2021,-2143,-2256,-2356,-2439,-2505,-2552,-2585,-2605,-2617,-2627,-2637,-2652,-2674,-2703,-2738,
+-2779,-2822,-2867,-2910,-2950,-2987,-3020,-3051,-3080,-3108,-3137,-3168,-3201,-3236,-3271,-3307,-3341,-3373,-3402,-3430,
+-3456,-3482,-3509,-3538,-3571,-3608,-3650,-3696,-3745,-3795,-3846,-3896,-3944,-3990,-4033,-4075,-4116,-4158,-4201,-4246,
+-4293,-4340,-4387,-4431,-4471,-4505,-4531,-4550,-4562,-4569,-4573,-4579,-4589,-4607,-4636,-4676,-4729,-4792,-4862,-4937,
+-5012,-5083,-5146,-5199,-5242,-5274,-5298,-5316,-5333,-5350,-5370,-5395,-5425,-5458,-5491,-5522,-5547,-5562,-5565,-5557,
+-5537,-5507,-5473,-5436,-5403,-5377,-5360,-5355,-5361,-5377,-5400,-5428,-5457,-5485,-5510,-5531,-5549,-5564,-5577,-5590,
+-5602,-5614,-5625,-5634,-5639,-5638,-5630,-5616,-5595,-5571,-5545,-5521,-5502,-5492,-5493,-5505,-5528,-5561,-5601,-5644,
+-5689,-5731,-5770,-5805,-5836,-5864,-5891,-5918,-5948,-5982,-6020,-6061,-6104,-6147,-6189,-6228,-6262,-6290,-6313,-6330,
+-6343,-6352,-6359,-6365,-6371,-6377,-6383,-6389,-6396,-6401,-6405,-6408,-6409,-6409,-6408,-6406,-6403,-6399,-6395,-6391,
+-6385,-6380,-6373,-6366,-6357,-6348,-6337,-6325,-6311,-6295,-6277,-6256,-6232,-6206,-6175,-6142,-6107,-6070,-6032,-5994,
+-5957,-5921,-5888,-5856,-5826,-5796,-5767,-5738,-5707,-5674,-5639,-5601,-5560,-5517,-5473,-5428,-5382,-5337,-5293,-5250,
+-5208,-5168,-5129,-5091,-5053,-5017,-4981,-4945,-4909,-4873,-4837,-4800,-4763,-4725,-4686,-4648,-4610,-4573,-4536,-4502,
+-4469,-4439,-4410,-4383,-4357,-4331,-4306,-4279,-4251,-4221,-4189,-4155,-4121,-4086,-4051,-4017,-3984,-3953,-3924,-3896,
+-3869,-3843,-3816,-3788,-3758,-3726,-3691,-3654,-3615,-3575,-3535,-3496,-3459,-3424,-3393,-3366,-3342,-3321,-3302,-3285,
+-3268,-3251,-3232,-3212,-3189,-3164,-3138,-3109,-3080,-3051,-3022,-2993,-2964,-2936,-2908,-2880,-2851,-2821,-2790,-2757,
+-2724,-2689,-2653,-2618,-2582,-2546,-2509,-2473,-2435,-2395,-2353,-2308,-2258,-2204,-2146,-2084,-2019,-1951,-1884,-1818,
+-1754,-1695,-1641,-1592,-1550,-1512,-1479,-1448,-1419,-1390,-1359,-1325,-1289,-1248,-1204,-1156,-1107,-1056,-1006,-957,
+-910,-866,-825,-788,-753,-720,-688,-656,-624,-591,-557,-521,-486,-451,-418,-387,-360,-338,-319,-304,
+-291,-279,-267,-253,-235,-214,-190,-163,-134,-107,-82,-63,-51,-48,-54,-69,-92,-120,-151,-184,
+-215,-242,-264,-280,-290,-296,-297,-296,-295,-295,-297,-301,-309,-319,-331,-344,-356,-367,-375,-379,
+-381,-379,-374,-368,-360,-353,-345,-339,-334,-329,-325,-321,-316,-310,-302,-294,-283,-272,-260,-248,
+-237,-225,-214,-203,-193,-182,-172,-161,-150,-138,-127,-115,-104,-93,-83,-73,-62,-51,-40,-27,
+-13,2,18,36,54,72,90,106,122,137,151,166,181,197,214,234,255,277,302,327,
+354,381,408,435,462,489,517,545,573,602,631,660,690,719,749,777,805,833,860,886,
+912,939,965,991,1017,1043,1069,1095,1121,1147,1171,1196,1220,1243,1265,1287,1309,1330,1351,1372,
+1393,1414,1435,1456,1476,1496,1516,1533,1441,1463,1484,1506,1526,1547,1566,1585,1603,1621,1637,1653,
+1668,1683,1696,1710,1724,1738,1753,1769,1785,1802,1818,1835,1850,1864,1877,1887,1897,1904,1912,1919,
+1928,1937,1949,1962,1976,1991,2006,2019,2029,2038,2043,2046,2047,2047,2048,2049,2052,2056,2062,2070,
+2078,2085,2093,2099,2103,2108,2112,2116,2121,2126,2133,2140,2147,2152,2155,2155,2153,2149,2143,2139,
+2138,2141,2150,2166,2187,2213,2242,2270,2295,2313,2323,2323,2314,2295,2269,2239,2206,2175,2147,2123,
+2107,2096,2092,2093,2099,2108,2118,2129,2140,2150,2157,2161,2162,2160,2155,2146,2137,2128,2121,2121,
+2128,2145,2174,2215,2269,2332,2403,2477,2551,2620,2681,2730,2767,2790,2800,2798,2786,2767,2742,2712,
+2678,2639,2595,2546,2489,2425,2353,2275,2192,2106,2022,1940,1866,1800,1743,1697,1660,1632,1609,1589,
+1571,1551,1528,1502,1473,1441,1407,1373,1340,1308,1278,1251,1224,1199,1173,1145,1115,1083,1048,1012,
+974,936,900,866,835,805,777,749,720,688,651,608,559,505,446,382,317,250,184,118,
+53,-11,-77,-146,-219,-297,-381,-470,-563,-659,-755,-849,-939,-1023,-1102,-1177,-1248,-1317,-1389,-1465,
+-1548,-1638,-1736,-1841,-1949,-2057,-2162,-2260,-2347,-2422,-2483,-2530,-2566,-2593,-2615,-2635,-2657,-2682,-2713,-2749,
+-2790,-2835,-2881,-2926,-2970,-3009,-3045,-3077,-3106,-3132,-3158,-3185,-3214,-3245,-3279,-3314,-3350,-3386,-3420,-3454,
+-3485,-3515,-3543,-3572,-3601,-3632,-3666,-3702,-3742,-3784,-3829,-3874,-3920,-3965,-4009,-4052,-4095,-4137,-4179,-4223,
+-4267,-4311,-4356,-4401,-4443,-4482,-4516,-4546,-4572,-4593,-4613,-4632,-4653,-4679,-4711,-4752,-4801,-4858,-4922,-4989,
+-5057,-5122,-5181,-5232,-5273,-5304,-5326,-5342,-5353,-5362,-5373,-5388,-5406,-5430,-5456,-5484,-5510,-5532,-5548,-5556,
+-5554,-5545,-5529,-5509,-5489,-5470,-5456,-5449,-5449,-5457,-5470,-5486,-5504,-5521,-5536,-5547,-5554,-5557,-5559,-5559,
+-5559,-5561,-5565,-5571,-5578,-5584,-5589,-5592,-5590,-5585,-5576,-5565,-5554,-5544,-5537,-5536,-5540,-5551,-5567,-5589,
+-5615,-5643,-5673,-5703,-5734,-5766,-5799,-5835,-5873,-5915,-5960,-6009,-6060,-6112,-6163,-6210,-6254,-6291,-6321,-6344,
+-6361,-6371,-6377,-6380,-6381,-6382,-6384,-6387,-6391,-6397,-6403,-6410,-6417,-6423,-6427,-6430,-6430,-6428,-6423,-6417,
+-6409,-6400,-6391,-6380,-6370,-6360,-6350,-6340,-6330,-6319,-6307,-6293,-6276,-6257,-6233,-6206,-6176,-6142,-6106,-6069,
+-6031,-5993,-5956,-5921,-5887,-5855,-5824,-5793,-5762,-5730,-5696,-5660,-5622,-5581,-5538,-5492,-5446,-5399,-5352,-5306,
+-5261,-5218,-5176,-5136,-5097,-5059,-5022,-4985,-4948,-4910,-4871,-4832,-4791,-4749,-4707,-4665,-4623,-4583,-4544,-4507,
+-4473,-4441,-4411,-4383,-4356,-4330,-4303,-4276,-4248,-4217,-4186,-4153,-4119,-4085,-4051,-4018,-3987,-3958,-3929,-3903,
+-3877,-3851,-3824,-3796,-3766,-3734,-3699,-3662,-3624,-3584,-3545,-3507,-3471,-3437,-3407,-3380,-3357,-3337,-3319,-3304,
+-3289,-3274,-3259,-3242,-3225,-3206,-3185,-3163,-3140,-3116,-3092,-3067,-3041,-3015,-2988,-2960,-2930,-2899,-2867,-2833,
+-2799,-2763,-2728,-2692,-2657,-2622,-2587,-2552,-2516,-2478,-2438,-2394,-2346,-2293,-2235,-2172,-2106,-2036,-1966,-1895,
+-1826,-1761,-1701,-1646,-1598,-1556,-1519,-1488,-1460,-1434,-1408,-1382,-1354,-1323,-1288,-1250,-1209,-1166,-1121,-1076,
+-1031,-987,-945,-905,-866,-829,-793,-758,-721,-684,-646,-606,-566,-526,-488,-451,-417,-387,-361,-339,
+-321,-304,-288,-272,-254,-233,-208,-180,-150,-120,-91,-66,-48,-39,-40,-52,-74,-106,-146,-190,
+-237,-282,-324,-360,-389,-409,-422,-429,-430,-429,-426,-423,-423,-425,-430,-438,-447,-458,-468,-477,
+-484,-489,-491,-491,-489,-486,-482,-478,-473,-469,-465,-460,-454,-447,-438,-427,-414,-399,-384,-368,
+-352,-337,-323,-311,-300,-289,-280,-272,-263,-254,-244,-234,-223,-212,-200,-187,-175,-162,-149,-136,
+-123,-110,-96,-81,-67,-52,-36,-21,-5,10,26,43,60,79,98,118,140,163,186,211,
+235,261,286,310,335,359,384,408,432,456,481,506,531,557,583,609,636,662,689,716,
+743,771,798,826,854,883,911,939,967,995,1023,1050,1076,1102,1127,1152,1175,1199,1221,1243,
+1265,1287,1309,1331,1352,1374,1397,1419,1441,1324,1349,1374,1400,1425,1451,1476,1500,1524,1546,1566,
+1585,1602,1619,1634,1650,1666,1682,1699,1717,1736,1755,1774,1792,1809,1824,1838,1849,1858,1866,1873,
+1881,1888,1897,1908,1920,1933,1946,1959,1972,1982,1991,1997,2000,2002,2002,2002,2002,2003,2005,2009,
+2014,2021,2028,2034,2041,2047,2051,2055,2057,2059,2061,2063,2065,2068,2072,2076,2081,2088,2095,2104,
+2115,2128,2142,2158,2174,2190,2205,2217,2226,2229,2227,2219,2206,2188,2167,2144,2122,2100,2081,2065,
+2052,2043,2036,2032,2029,2027,2026,2024,2023,2022,2021,2021,2021,2020,2020,2018,2017,2015,2013,2013,
+2015,2021,2032,2050,2074,2105,2142,2184,2228,2273,2315,2351,2381,2403,2415,2418,2413,2400,2380,2356,
+2327,2295,2260,2221,2179,2132,2081,2026,1967,1907,1845,1785,1727,1674,1627,1586,1551,1522,1498,1476,
+1456,1435,1412,1387,1359,1329,1296,1264,1231,1200,1171,1144,1119,1096,1072,1048,1021,992,960,925,
+887,849,809,771,734,699,667,636,605,574,540,503,462,416,364,308,248,186,123,59,
+-4,-68,-132,-197,-264,-335,-410,-489,-574,-662,-753,-845,-936,-1026,-1112,-1194,-1272,-1347,-1420,-1494,
+-1569,-1647,-1730,-1816,-1906,-1997,-2089,-2177,-2260,-2336,-2403,-2460,-2509,-2551,-2587,-2620,-2652,-2686,-2722,-2763,
+-2808,-2857,-2907,-2957,-3005,-3051,-3091,-3127,-3158,-3185,-3209,-3231,-3253,-3277,-3302,-3331,-3362,-3396,-3431,-3467,
+-3504,-3539,-3573,-3606,-3638,-3669,-3700,-3730,-3762,-3794,-3828,-3864,-3901,-3939,-3979,-4020,-4063,-4107,-4153,-4201,
+-4250,-4299,-4350,-4399,-4448,-4493,-4536,-4575,-4610,-4642,-4670,-4698,-4726,-4755,-4789,-4827,-4871,-4921,-4975,-5032,
+-5091,-5148,-5202,-5250,-5290,-5323,-5347,-5364,-5376,-5384,-5391,-5399,-5410,-5423,-5440,-5459,-5480,-5500,-5517,-5531,
+-5541,-5545,-5545,-5541,-5535,-5529,-5524,-5523,-5524,-5529,-5537,-5547,-5556,-5563,-5568,-5568,-5564,-5556,-5546,-5534,
+-5524,-5515,-5511,-5511,-5516,-5525,-5538,-5553,-5568,-5581,-5592,-5600,-5605,-5606,-5605,-5603,-5601,-5601,-5603,-5609,
+-5618,-5632,-5651,-5673,-5701,-5732,-5769,-5809,-5854,-5903,-5955,-6010,-6067,-6123,-6177,-6228,-6273,-6312,-6343,-6366,
+-6381,-6389,-6391,-6389,-6384,-6378,-6372,-6368,-6367,-6369,-6375,-6383,-6393,-6404,-6415,-6424,-6432,-6436,-6438,-6435,
+-6430,-6421,-6411,-6398,-6385,-6371,-6358,-6345,-6334,-6323,-6312,-6301,-6290,-6276,-6261,-6242,-6220,-6194,-6165,-6133,
+-6099,-6063,-6026,-5989,-5951,-5915,-5879,-5844,-5809,-5775,-5740,-5704,-5668,-5629,-5589,-5547,-5504,-5460,-5415,-5370,
+-5324,-5279,-5235,-5191,-5148,-5105,-5063,-5021,-4980,-4938,-4897,-4855,-4813,-4771,-4730,-4690,-4650,-4612,-4575,-4539,
+-4505,-4472,-4440,-4408,-4376,-4343,-4310,-4277,-4242,-4207,-4172,-4137,-4103,-4070,-4040,-4012,-3987,-3964,-3943,-3922,
+-3902,-3881,-3858,-3833,-3805,-3773,-3738,-3701,-3662,-3622,-3583,-3545,-3510,-3478,-3450,-3426,-3405,-3387,-3371,-3357,
+-3344,-3330,-3316,-3300,-3283,-3264,-3244,-3223,-3200,-3177,-3153,-3129,-3105,-3080,-3054,-3027,-3000,-2971,-2940,-2909,
+-2877,-2844,-2811,-2777,-2745,-2712,-2680,-2648,-2616,-2582,-2547,-2510,-2469,-2425,-2377,-2324,-2268,-2208,-2146,-2082,
+-2017,-1953,-1891,-1831,-1774,-1722,-1673,-1629,-1588,-1550,-1515,-1481,-1449,-1417,-1384,-1350,-1316,-1280,-1243,-1204,
+-1166,-1127,-1088,-1049,-1010,-972,-935,-897,-859,-821,-782,-742,-701,-659,-617,-574,-532,-491,-450,-411,
+-373,-337,-301,-267,-232,-199,-165,-132,-101,-73,-49,-31,-21,-19,-28,-47,-77,-116,-163,-216,
+-272,-328,-382,-431,-474,-509,-535,-554,-566,-572,-575,-575,-574,-574,-576,-578,-583,-588,-593,-598,
+-602,-604,-605,-603,-600,-596,-591,-586,-581,-576,-572,-568,-563,-558,-551,-543,-534,-523,-510,-497,
+-484,-470,-458,-446,-436,-427,-419,-411,-403,-395,-386,-375,-363,-350,-336,-321,-306,-291,-276,-262,
+-249,-237,-225,-213,-202,-190,-178,-164,-149,-134,-116,-98,-78,-58,-37,-16,5,27,48,69,
+90,111,132,152,173,194,215,236,258,281,304,328,352,377,403,429,455,481,509,536,
+564,592,620,649,678,706,735,763,792,820,847,875,902,928,955,981,1008,1033,1059,1084,
+1109,1134,1158,1181,1205,1228,1252,1275,1299,1324,1189,1214,1239,1264,1290,1317,1343,1369,1394,1418,
+1441,1463,1483,1503,1522,1540,1558,1576,1595,1614,1634,1654,1673,1693,1711,1729,1744,1758,1771,1782,
+1792,1801,1811,1821,1831,1841,1852,1862,1872,1881,1888,1894,1898,1901,1903,1904,1906,1908,1911,1916,
+1921,1928,1935,1942,1948,1951,1953,1951,1947,1941,1932,1923,1914,1907,1902,1901,1904,1912,1924,1941,
+1962,1985,2009,2033,2056,2075,2089,2098,2101,2098,2088,2074,2057,2037,2017,1998,1982,1969,1959,1954,
+1951,1951,1951,1952,1951,1948,1944,1937,1928,1919,1909,1901,1895,1891,1889,1890,1892,1896,1899,1903,
+1907,1909,1911,1913,1916,1919,1923,1929,1935,1943,1951,1958,1963,1967,1967,1963,1956,1946,1932,1916,
+1897,1875,1852,1828,1801,1772,1742,1709,1675,1639,1602,1566,1530,1496,1464,1434,1408,1383,1361,1339,
+1318,1296,1272,1247,1219,1190,1159,1128,1098,1069,1042,1017,994,972,950,928,904,878,849,817,
+782,744,705,666,626,588,551,516,482,448,413,376,337,294,247,196,142,85,26,-33,
+-93,-152,-211,-270,-331,-392,-457,-525,-598,-675,-756,-840,-927,-1014,-1101,-1187,-1270,-1351,-1430,-1507,
+-1583,-1659,-1737,-1816,-1896,-1979,-2061,-2143,-2223,-2298,-2368,-2432,-2489,-2539,-2584,-2624,-2662,-2699,-2737,-2777,
+-2820,-2866,-2914,-2964,-3014,-3063,-3109,-3151,-3189,-3222,-3251,-3276,-3299,-3320,-3342,-3365,-3391,-3419,-3450,-3483,
+-3519,-3557,-3595,-3633,-3670,-3706,-3741,-3774,-3806,-3836,-3867,-3897,-3928,-3961,-3995,-4031,-4070,-4112,-4157,-4204,
+-4254,-4305,-4357,-4409,-4459,-4508,-4553,-4595,-4633,-4667,-4699,-4727,-4755,-4784,-4814,-4847,-4883,-4924,-4969,-5016,
+-5066,-5117,-5166,-5212,-5254,-5291,-5322,-5347,-5367,-5382,-5395,-5407,-5418,-5430,-5442,-5456,-5471,-5485,-5499,-5510,
+-5520,-5526,-5531,-5533,-5534,-5535,-5537,-5540,-5546,-5553,-5561,-5571,-5579,-5585,-5588,-5587,-5582,-5572,-5559,-5543,
+-5528,-5515,-5505,-5500,-5501,-5508,-5522,-5540,-5562,-5585,-5609,-5630,-5648,-5662,-5672,-5677,-5679,-5680,-5679,-5679,
+-5682,-5689,-5700,-5717,-5740,-5769,-5804,-5845,-5891,-5941,-5994,-6049,-6104,-6157,-6208,-6254,-6295,-6329,-6356,-6375,
+-6387,-6392,-6391,-6386,-6378,-6368,-6359,-6351,-6346,-6344,-6346,-6352,-6361,-6372,-6385,-6399,-6411,-6422,-6430,-6435,
+-6437,-6434,-6428,-6419,-6408,-6394,-6379,-6363,-6348,-6332,-6317,-6303,-6289,-6274,-6259,-6243,-6226,-6206,-6184,-6160,
+-6133,-6104,-6073,-6039,-6004,-5968,-5931,-5893,-5855,-5816,-5777,-5738,-5698,-5659,-5618,-5578,-5537,-5496,-5454,-5412,
+-5370,-5328,-5285,-5241,-5197,-5153,-5108,-5063,-5017,-4972,-4927,-4883,-4840,-4799,-4759,-4721,-4685,-4650,-4617,-4585,
+-4552,-4519,-4485,-4449,-4412,-4371,-4329,-4284,-4239,-4193,-4147,-4104,-4064,-4028,-3997,-3970,-3949,-3932,-3918,-3907,
+-3897,-3886,-3872,-3856,-3835,-3809,-3779,-3746,-3709,-3670,-3631,-3594,-3558,-3527,-3499,-3475,-3456,-3441,-3428,-3418,
+-3408,-3398,-3387,-3375,-3360,-3343,-3323,-3301,-3277,-3252,-3226,-3200,-3173,-3146,-3118,-3091,-3064,-3037,-3009,-2982,
+-2954,-2927,-2899,-2872,-2844,-2817,-2789,-2762,-2733,-2704,-2674,-2642,-2608,-2573,-2535,-2494,-2451,-2406,-2358,-2308,
+-2256,-2202,-2147,-2090,-2033,-1976,-1919,-1862,-1807,-1753,-1701,-1651,-1604,-1559,-1518,-1478,-1440,-1405,-1370,-1336,
+-1303,-1270,-1236,-1203,-1169,-1136,-1103,-1070,-1037,-1005,-974,-942,-910,-876,-841,-804,-764,-721,-674,-623,
+-569,-512,-452,-392,-331,-272,-216,-165,-120,-84,-57,-41,-36,-44,-63,-94,-134,-183,-237,-296,
+-355,-414,-469,-519,-563,-599,-628,-651,-667,-679,-688,-694,-700,-706,-712,-719,-727,-735,-742,-748,
+-752,-753,-752,-749,-743,-736,-728,-720,-712,-705,-699,-695,-691,-688,-684,-681,-676,-670,-663,-655,
+-646,-636,-627,-617,-607,-598,-590,-581,-573,-563,-553,-541,-528,-514,-498,-481,-464,-447,-430,-414,
+-400,-386,-374,-363,-352,-341,-330,-317,-303,-288,-271,-253,-233,-213,-193,-173,-153,-134,-116,-99,
+-83,-67,-51,-35,-18,0,19,40,62,85,110,136,162,189,216,243,270,296,323,350,
+377,404,432,459,487,514,542,569,596,623,649,675,701,728,754,781,808,836,865,894,
+923,952,981,1009,1036,1063,1089,1115,1139,1164,1189,1041,1065,1090,1114,1139,1165,1190,1216,1242,
+1268,1293,1318,1342,1364,1386,1407,1427,1447,1466,1485,1504,1523,1542,1560,1578,1595,1611,1627,1641,
+1655,1668,1680,1692,1703,1714,1724,1734,1742,1750,1756,1762,1766,1769,1772,1774,1777,1781,1785,1791,
+1798,1805,1813,1819,1824,1826,1824,1818,1809,1795,1777,1758,1737,1717,1700,1687,1679,1678,1685,1698,
+1718,1743,1772,1803,1833,1861,1884,1901,1911,1914,1911,1901,1887,1871,1853,1837,1823,1813,1807,1805,
+1807,1812,1818,1824,1829,1832,1831,1827,1820,1811,1800,1789,1779,1771,1765,1762,1761,1763,1766,1770,
+1773,1775,1774,1771,1766,1758,1749,1737,1725,1713,1700,1688,1676,1664,1653,1641,1629,1616,1603,1589,
+1574,1559,1542,1525,1507,1488,1469,1448,1427,1405,1383,1360,1337,1314,1292,1270,1249,1227,1206,1185,
+1162,1139,1115,1089,1063,1035,1007,979,952,925,900,877,854,833,812,790,767,743,716,687,
+656,622,587,550,514,477,440,404,369,332,295,256,215,171,123,73,20,-35,-91,-148,
+-205,-261,-316,-370,-424,-478,-534,-593,-656,-722,-794,-869,-948,-1030,-1114,-1198,-1281,-1363,-1442,-1519,
+-1594,-1668,-1741,-1814,-1888,-1963,-2040,-2116,-2193,-2269,-2342,-2411,-2475,-2534,-2588,-2636,-2679,-2718,-2755,-2791,
+-2827,-2865,-2904,-2946,-2989,-3034,-3080,-3125,-3168,-3210,-3249,-3285,-3317,-3347,-3376,-3402,-3429,-3456,-3485,-3515,
+-3547,-3582,-3618,-3655,-3693,-3731,-3769,-3807,-3843,-3878,-3912,-3945,-3978,-4011,-4044,-4078,-4114,-4152,-4192,-4234,
+-4279,-4324,-4371,-4418,-4464,-4509,-4552,-4592,-4630,-4665,-4697,-4728,-4758,-4787,-4818,-4850,-4884,-4921,-4961,-5003,
+-5047,-5092,-5136,-5180,-5221,-5259,-5293,-5323,-5350,-5373,-5393,-5411,-5428,-5443,-5458,-5472,-5484,-5496,-5506,-5514,
+-5520,-5523,-5525,-5526,-5525,-5526,-5527,-5530,-5535,-5543,-5553,-5564,-5575,-5585,-5593,-5598,-5599,-5596,-5590,-5580,
+-5568,-5557,-5547,-5540,-5537,-5540,-5549,-5563,-5582,-5604,-5628,-5653,-5677,-5698,-5715,-5728,-5738,-5744,-5749,-5752,
+-5756,-5763,-5772,-5787,-5807,-5833,-5864,-5900,-5941,-5984,-6029,-6075,-6119,-6161,-6199,-6233,-6261,-6284,-6301,-6312,
+-6318,-6320,-6318,-6313,-6307,-6300,-6294,-6289,-6287,-6286,-6289,-6294,-6302,-6311,-6323,-6335,-6348,-6361,-6373,-6383,
+-6392,-6398,-6402,-6402,-6400,-6395,-6387,-6377,-6364,-6350,-6333,-6316,-6297,-6278,-6257,-6237,-6216,-6195,-6173,-6151,
+-6129,-6105,-6081,-6055,-6027,-5998,-5966,-5932,-5897,-5859,-5819,-5778,-5736,-5693,-5650,-5607,-5564,-5522,-5481,-5441,
+-5402,-5363,-5323,-5284,-5244,-5203,-5160,-5117,-5072,-5026,-4980,-4933,-4888,-4843,-4801,-4760,-4722,-4685,-4651,-4617,
+-4584,-4550,-4514,-4476,-4435,-4391,-4343,-4291,-4238,-4183,-4128,-4075,-4025,-3980,-3940,-3907,-3881,-3862,-3848,-3839,
+-3834,-3830,-3826,-3820,-3810,-3797,-3779,-3756,-3729,-3699,-3667,-3634,-3602,-3571,-3544,-3520,-3500,-3484,-3471,-3461,
+-3454,-3447,-3440,-3433,-3424,-3412,-3398,-3381,-3362,-3339,-3315,-3288,-3260,-3231,-3201,-3172,-3142,-3112,-3084,-3056,
+-3029,-3004,-2979,-2954,-2931,-2907,-2883,-2858,-2833,-2806,-2778,-2749,-2718,-2686,-2652,-2618,-2584,-2548,-2512,-2475,
+-2438,-2398,-2357,-2314,-2268,-2220,-2168,-2115,-2059,-2001,-1943,-1886,-1830,-1776,-1724,-1677,-1632,-1591,-1554,-1518,
+-1485,-1454,-1423,-1393,-1362,-1333,-1303,-1275,-1248,-1222,-1198,-1175,-1154,-1133,-1111,-1088,-1061,-1030,-992,-947,
+-895,-835,-768,-696,-620,-543,-467,-396,-332,-278,-237,-209,-197,-200,-217,-248,-289,-339,-395,-454,
+-512,-567,-617,-661,-697,-726,-748,-763,-773,-781,-786,-791,-797,-804,-814,-825,-838,-851,-865,-877,
+-887,-895,-899,-900,-899,-894,-888,-881,-874,-868,-862,-857,-853,-851,-848,-846,-843,-839,-834,-827,
+-819,-809,-799,-788,-777,-766,-755,-745,-734,-723,-713,-701,-689,-676,-662,-647,-632,-617,-602,-587,
+-573,-559,-547,-535,-523,-512,-500,-487,-474,-459,-442,-425,-406,-387,-369,-350,-332,-316,-300,-285,
+-271,-258,-245,-231,-215,-199,-180,-159,-137,-113,-87,-60,-33,-6,20,46,72,97,122,146,
+171,195,220,246,272,298,326,353,381,408,436,463,490,516,543,570,598,627,656,687,
+718,750,782,814,846,877,907,936,964,990,1016,1041,878,904,930,955,981,1008,1034,1061,
+1089,1116,1144,1170,1196,1222,1246,1269,1290,1311,1330,1349,1366,1383,1399,1415,1431,1446,1461,1475,
+1490,1504,1517,1531,1544,1556,1567,1578,1588,1596,1603,1609,1614,1618,1621,1624,1628,1631,1636,1641,
+1648,1654,1661,1667,1672,1675,1674,1670,1661,1648,1630,1610,1587,1563,1541,1521,1505,1495,1491,1495,
+1506,1524,1547,1575,1605,1635,1664,1689,1709,1723,1732,1734,1731,1723,1713,1701,1690,1680,1672,1667,
+1665,1666,1668,1672,1676,1680,1681,1681,1678,1673,1666,1657,1649,1640,1632,1626,1621,1617,1615,1613,
+1612,1609,1606,1601,1594,1585,1575,1563,1550,1537,1523,1510,1497,1484,1472,1460,1449,1437,1424,1411,
+1397,1382,1367,1350,1333,1315,1296,1277,1258,1238,1219,1199,1178,1157,1136,1115,1093,1071,1048,1024,
+1000,976,951,926,901,876,851,826,803,779,757,735,713,691,669,646,622,597,570,542,
+513,482,451,419,387,355,323,290,257,222,186,147,105,60,12,-37,-91,-145,-201,-256,
+-311,-365,-417,-469,-519,-570,-623,-677,-736,-798,-866,-938,-1015,-1095,-1178,-1261,-1343,-1423,-1500,-1573,
+-1642,-1707,-1769,-1829,-1888,-1948,-2009,-2072,-2137,-2205,-2274,-2344,-2413,-2480,-2544,-2604,-2659,-2709,-2754,-2796,
+-2834,-2869,-2904,-2939,-2975,-3013,-3052,-3094,-3137,-3181,-3225,-3269,-3312,-3353,-3392,-3429,-3465,-3498,-3530,-3561,
+-3591,-3622,-3653,-3685,-3717,-3751,-3786,-3821,-3857,-3894,-3930,-3967,-4004,-4041,-4077,-4114,-4152,-4189,-4227,-4266,
+-4304,-4344,-4383,-4423,-4462,-4501,-4539,-4576,-4613,-4650,-4686,-4722,-4758,-4795,-4833,-4873,-4913,-4955,-4998,-5041,
+-5084,-5127,-5168,-5207,-5244,-5278,-5309,-5336,-5361,-5384,-5404,-5423,-5441,-5458,-5474,-5488,-5502,-5513,-5522,-5529,
+-5534,-5535,-5534,-5532,-5529,-5525,-5522,-5521,-5523,-5527,-5535,-5544,-5556,-5569,-5581,-5592,-5601,-5607,-5609,-5608,
+-5605,-5599,-5593,-5587,-5583,-5582,-5585,-5592,-5603,-5618,-5636,-5655,-5676,-5696,-5714,-5730,-5744,-5756,-5765,-5774,
+-5783,-5792,-5804,-5820,-5839,-5862,-5889,-5920,-5954,-5989,-6024,-6058,-6090,-6118,-6142,-6160,-6174,-6182,-6186,-6185,
+-6182,-6177,-6171,-6165,-6160,-6156,-6154,-6154,-6156,-6160,-6165,-6172,-6180,-6188,-6197,-6207,-6217,-6227,-6238,-6250,
+-6262,-6275,-6287,-6300,-6311,-6322,-6330,-6335,-6337,-6336,-6330,-6320,-6306,-6288,-6267,-6244,-6218,-6192,-6166,-6140,
+-6114,-6090,-6066,-6044,-6021,-5998,-5974,-5949,-5921,-5890,-5857,-5821,-5782,-5740,-5697,-5654,-5609,-5566,-5523,-5481,
+-5442,-5403,-5366,-5330,-5294,-5257,-5219,-5179,-5137,-5093,-5047,-4999,-4949,-4899,-4849,-4800,-4752,-4706,-4662,-4620,
+-4581,-4542,-4504,-4465,-4426,-4384,-4340,-4293,-4243,-4192,-4138,-4085,-4032,-3981,-3934,-3892,-3855,-3824,-3799,-3780,
+-3767,-3757,-3751,-3747,-3743,-3738,-3731,-3722,-3711,-3696,-3679,-3659,-3638,-3616,-3594,-3573,-3553,-3536,-3520,-3507,
+-3496,-3487,-3479,-3472,-3465,-3459,-3451,-3442,-3431,-3417,-3401,-3382,-3360,-3335,-3308,-3279,-3248,-3217,-3185,-3152,
+-3121,-3090,-3061,-3033,-3005,-2979,-2953,-2927,-2900,-2872,-2844,-2814,-2783,-2751,-2718,-2685,-2652,-2621,-2590,-2560,
+-2531,-2502,-2474,-2445,-2415,-2382,-2347,-2308,-2267,-2222,-2175,-2126,-2076,-2026,-1977,-1930,-1885,-1843,-1804,-1768,
+-1734,-1702,-1670,-1640,-1609,-1579,-1548,-1519,-1490,-1462,-1437,-1414,-1393,-1375,-1358,-1342,-1325,-1305,-1281,-1251,
+-1214,-1169,-1116,-1055,-988,-916,-842,-768,-699,-636,-584,-543,-516,-504,-506,-522,-550,-587,-632,-680,
+-729,-776,-819,-856,-886,-908,-923,-932,-936,-937,-936,-934,-934,-936,-940,-948,-957,-969,-981,-994,
+-1005,-1015,-1022,-1027,-1030,-1030,-1029,-1026,-1022,-1018,-1015,-1012,-1010,-1008,-1006,-1003,-1000,-995,-989,-982,
+-972,-961,-948,-935,-922,-908,-895,-883,-871,-860,-850,-841,-832,-823,-813,-803,-793,-782,-772,-760,
+-749,-738,-727,-716,-705,-693,-682,-670,-656,-642,-627,-611,-594,-577,-559,-541,-524,-508,-492,-477,
+-462,-448,-434,-419,-404,-387,-369,-349,-327,-304,-280,-255,-230,-205,-181,-158,-135,-113,-92,-71,
+-50,-28,-6,17,43,69,98,127,157,188,218,249,279,309,338,366,394,423,452,481,
+511,542,574,606,639,671,703,735,766,795,824,851,878,701,729,757,785,812,840,867,
+895,923,950,978,1005,1031,1057,1081,1104,1126,1147,1167,1185,1202,1219,1235,1250,1265,1279,1294,
+1308,1322,1336,1349,1363,1376,1388,1399,1410,1420,1428,1435,1441,1446,1451,1454,1457,1461,1464,1468,
+1473,1478,1484,1489,1494,1498,1501,1501,1499,1493,1484,1473,1459,1443,1427,1411,1396,1384,1376,1373,
+1374,1381,1393,1410,1430,1452,1476,1498,1520,1538,1553,1564,1571,1573,1572,1568,1562,1555,1548,1542,
+1536,1531,1528,1526,1525,1525,1524,1523,1522,1520,1517,1513,1509,1503,1498,1492,1485,1479,1472,1466,
+1458,1451,1442,1433,1424,1413,1403,1393,1382,1372,1363,1354,1346,1337,1329,1321,1311,1301,1290,1276,
+1262,1246,1228,1209,1189,1169,1148,1127,1105,1084,1063,1043,1021,1000,978,956,933,909,885,860,
+836,811,787,763,740,718,697,677,657,638,619,600,581,560,538,514,489,462,435,406,
+376,347,317,288,259,231,202,173,144,112,79,42,2,-40,-86,-135,-187,-240,-294,-347,
+-400,-452,-502,-551,-599,-648,-699,-753,-811,-875,-944,-1019,-1099,-1184,-1271,-1360,-1447,-1532,-1611,-1685,
+-1751,-1809,-1861,-1906,-1947,-1986,-2024,-2064,-2106,-2153,-2205,-2261,-2323,-2388,-2455,-2523,-2590,-2655,-2716,-2773,
+-2825,-2872,-2916,-2956,-2993,-3030,-3066,-3103,-3141,-3180,-3222,-3265,-3309,-3354,-3398,-3442,-3484,-3524,-3562,-3597,
+-3631,-3662,-3692,-3721,-3749,-3777,-3806,-3837,-3868,-3901,-3936,-3972,-4009,-4048,-4088,-4128,-4168,-4208,-4248,-4287,
+-4325,-4362,-4399,-4435,-4469,-4504,-4538,-4573,-4608,-4644,-4682,-4721,-4762,-4805,-4849,-4895,-4941,-4989,-5036,-5082,
+-5126,-5168,-5207,-5243,-5275,-5304,-5329,-5351,-5371,-5390,-5406,-5423,-5438,-5454,-5469,-5484,-5498,-5511,-5521,-5529,
+-5534,-5536,-5536,-5532,-5527,-5521,-5514,-5509,-5506,-5505,-5507,-5513,-5522,-5533,-5546,-5559,-5572,-5584,-5594,-5601,
+-5606,-5607,-5607,-5606,-5604,-5602,-5602,-5604,-5609,-5616,-5625,-5637,-5650,-5663,-5677,-5690,-5701,-5712,-5721,-5730,
+-5739,-5750,-5762,-5777,-5795,-5817,-5842,-5871,-5902,-5935,-5967,-5999,-6027,-6052,-6071,-6086,-6094,-6097,-6095,-6089,
+-6079,-6068,-6057,-6046,-6037,-6030,-6025,-6023,-6023,-6025,-6029,-6034,-6038,-6043,-6048,-6052,-6056,-6061,-6068,-6075,
+-6085,-6098,-6114,-6132,-6152,-6174,-6197,-6219,-6239,-6256,-6268,-6276,-6277,-6272,-6261,-6244,-6223,-6198,-6170,-6141,
+-6112,-6083,-6056,-6031,-6007,-5985,-5964,-5943,-5921,-5898,-5872,-5844,-5812,-5777,-5739,-5699,-5657,-5614,-5571,-5529,
+-5488,-5449,-5411,-5375,-5340,-5305,-5270,-5233,-5194,-5152,-5106,-5057,-5004,-4949,-4891,-4831,-4772,-4713,-4656,-4602,
+-4552,-4505,-4463,-4424,-4388,-4354,-4321,-4288,-4255,-4220,-4184,-4145,-4104,-4062,-4018,-3974,-3930,-3888,-3849,-3813,
+-3782,-3755,-3733,-3715,-3702,-3693,-3687,-3683,-3680,-3678,-3676,-3672,-3667,-3660,-3650,-3639,-3625,-3611,-3595,-3578,
+-3562,-3547,-3534,-3521,-3511,-3503,-3497,-3492,-3488,-3483,-3478,-3472,-3462,-3450,-3434,-3415,-3391,-3365,-3335,-3302,
+-3268,-3233,-3197,-3162,-3128,-3094,-3062,-3030,-2999,-2968,-2937,-2906,-2873,-2841,-2808,-2774,-2741,-2708,-2677,-2646,
+-2617,-2590,-2564,-2538,-2513,-2488,-2462,-2433,-2403,-2371,-2336,-2299,-2260,-2220,-2180,-2141,-2102,-2066,-2031,-1998,
+-1967,-1937,-1908,-1880,-1851,-1821,-1791,-1760,-1728,-1696,-1665,-1635,-1607,-1580,-1557,-1535,-1515,-1496,-1477,-1455,
+-1431,-1403,-1370,-1332,-1288,-1239,-1187,-1132,-1078,-1026,-978,-937,-904,-880,-867,-865,-872,-888,-911,-939,
+-970,-1001,-1032,-1059,-1082,-1101,-1115,-1123,-1128,-1129,-1129,-1127,-1125,-1124,-1124,-1126,-1129,-1134,-1140,-1145,
+-1151,-1155,-1159,-1161,-1161,-1160,-1159,-1156,-1153,-1151,-1148,-1146,-1144,-1143,-1141,-1139,-1136,-1133,-1127,-1120,
+-1112,-1102,-1091,-1079,-1067,-1055,-1044,-1034,-1024,-1015,-1008,-1001,-994,-987,-980,-973,-965,-956,-946,-935,
+-924,-912,-901,-889,-877,-866,-855,-843,-832,-820,-807,-794,-780,-765,-750,-734,-718,-702,-686,-670,
+-653,-637,-621,-605,-588,-570,-552,-533,-513,-492,-470,-449,-427,-405,-384,-363,-342,-322,-303,-283,
+-263,-242,-220,-196,-171,-144,-115,-85,-54,-21,11,43,76,107,138,168,197,225,253,281,
+308,337,366,395,426,456,488,519,551,582,613,643,672,701,521,551,579,607,635,662,
+688,715,741,766,791,816,840,864,887,909,930,951,971,990,1009,1027,1044,1061,1078,1094,
+1110,1125,1139,1153,1166,1179,1191,1202,1213,1222,1231,1239,1245,1251,1257,1261,1265,1269,1272,1276,
+1280,1284,1288,1292,1297,1302,1306,1310,1313,1315,1316,1315,1313,1310,1305,1300,1294,1289,1284,1281,
+1279,1279,1282,1287,1295,1304,1315,1327,1339,1351,1362,1372,1380,1387,1391,1393,1394,1394,1392,1389,
+1386,1383,1380,1378,1376,1374,1373,1372,1371,1371,1371,1370,1369,1367,1365,1361,1357,1352,1345,1337,
+1328,1318,1307,1295,1283,1271,1259,1247,1236,1226,1216,1207,1199,1190,1181,1172,1161,1149,1135,1119,
+1101,1082,1061,1040,1018,995,973,951,930,909,889,870,851,832,812,792,771,749,727,704,
+681,658,636,614,594,574,556,539,523,508,492,475,458,439,418,396,371,344,316,287,
+258,229,200,172,145,118,93,67,40,12,-17,-50,-86,-126,-170,-216,-265,-316,-368,-420,
+-471,-521,-570,-617,-664,-712,-761,-814,-871,-934,-1004,-1080,-1164,-1254,-1348,-1444,-1541,-1636,-1726,-1809,
+-1883,-1947,-2000,-2043,-2077,-2104,-2126,-2145,-2165,-2187,-2213,-2246,-2287,-2334,-2389,-2449,-2515,-2583,-2652,-2720,
+-2785,-2847,-2905,-2957,-3005,-3049,-3089,-3126,-3162,-3198,-3234,-3271,-3309,-3349,-3390,-3432,-3474,-3516,-3557,-3598,
+-3636,-3672,-3707,-3740,-3771,-3801,-3830,-3860,-3890,-3921,-3954,-3988,-4024,-4062,-4101,-4142,-4183,-4224,-4266,-4306,
+-4346,-4385,-4422,-4458,-4493,-4526,-4559,-4592,-4625,-4659,-4693,-4730,-4767,-4807,-4848,-4890,-4934,-4977,-5020,-5062,
+-5102,-5140,-5175,-5207,-5236,-5262,-5286,-5308,-5328,-5347,-5365,-5383,-5402,-5420,-5439,-5457,-5473,-5489,-5501,-5511,
+-5517,-5520,-5519,-5514,-5507,-5497,-5487,-5477,-5468,-5462,-5459,-5459,-5464,-5472,-5483,-5497,-5513,-5529,-5545,-5560,
+-5572,-5583,-5591,-5598,-5602,-5605,-5608,-5610,-5613,-5617,-5622,-5627,-5633,-5639,-5645,-5650,-5654,-5658,-5661,-5663,
+-5666,-5669,-5675,-5684,-5696,-5713,-5734,-5760,-5790,-5823,-5858,-5895,-5930,-5964,-5994,-6019,-6039,-6053,-6061,-6064,
+-6061,-6054,-6045,-6034,-6022,-6011,-6000,-5991,-5984,-5979,-5975,-5972,-5969,-5967,-5965,-5962,-5960,-5958,-5957,-5958,
+-5961,-5967,-5978,-5992,-6010,-6031,-6056,-6082,-6109,-6135,-6159,-6179,-6194,-6203,-6205,-6201,-6191,-6176,-6155,-6131,
+-6104,-6077,-6049,-6023,-5997,-5973,-5951,-5929,-5909,-5887,-5865,-5840,-5814,-5784,-5751,-5716,-5678,-5638,-5598,-5557,
+-5517,-5478,-5441,-5406,-5372,-5339,-5306,-5272,-5237,-5198,-5156,-5109,-5058,-5001,-4940,-4876,-4810,-4742,-4676,-4611,
+-4551,-4495,-4446,-4403,-4368,-4338,-4314,-4295,-4278,-4263,-4247,-4230,-4209,-4185,-4155,-4121,-4082,-4039,-3994,-3947,
+-3900,-3856,-3814,-3777,-3746,-3721,-3703,-3691,-3685,-3684,-3686,-3691,-3696,-3701,-3704,-3704,-3700,-3692,-3681,-3666,
+-3649,-3630,-3612,-3593,-3577,-3564,-3554,-3548,-3546,-3546,-3549,-3553,-3557,-3560,-3560,-3557,-3549,-3536,-3518,-3495,
+-3468,-3437,-3404,-3368,-3332,-3296,-3261,-3226,-3193,-3160,-3129,-3098,-3068,-3037,-3006,-2974,-2941,-2908,-2873,-2839,
+-2804,-2769,-2734,-2699,-2664,-2628,-2593,-2557,-2520,-2482,-2443,-2404,-2364,-2324,-2285,-2248,-2211,-2177,-2146,-2117,
+-2090,-2066,-2043,-2022,-2000,-1978,-1955,-1931,-1905,-1877,-1847,-1817,-1786,-1755,-1725,-1696,-1669,-1643,-1620,-1598,
+-1577,-1556,-1535,-1512,-1489,-1463,-1436,-1407,-1376,-1346,-1316,-1288,-1262,-1240,-1222,-1209,-1201,-1198,-1200,-1206,
+-1214,-1225,-1236,-1248,-1259,-1270,-1278,-1285,-1291,-1295,-1298,-1301,-1303,-1305,-1307,-1310,-1313,-1315,-1318,-1320,
+-1322,-1323,-1322,-1321,-1319,-1316,-1312,-1308,-1304,-1300,-1296,-1293,-1290,-1287,-1285,-1283,-1280,-1277,-1273,-1269,
+-1264,-1259,-1253,-1248,-1242,-1237,-1232,-1228,-1224,-1221,-1217,-1213,-1208,-1202,-1194,-1185,-1174,-1161,-1146,-1129,
+-1112,-1094,-1077,-1059,-1043,-1028,-1014,-1001,-989,-978,-968,-958,-948,-938,-926,-914,-901,-887,-872,-856,
+-840,-823,-806,-788,-771,-753,-735,-716,-698,-679,-660,-641,-621,-601,-581,-560,-540,-519,-498,-476,
+-454,-431,-407,-382,-357,-330,-302,-273,-243,-212,-182,-151,-120,-90,-61,-32,-3,23,51,78,
+105,132,160,188,217,246,276,307,338,369,400,431,462,492,521,353,381,409,436,462,
+488,513,538,562,585,608,630,652,674,695,715,736,756,776,796,815,834,853,871,888,
+905,920,935,949,962,974,985,995,1005,1013,1021,1029,1036,1043,1050,1056,1062,1068,1073,1078,
+1083,1087,1092,1096,1100,1105,1109,1114,1118,1123,1128,1132,1137,1142,1146,1150,1153,1156,1159,1161,
+1163,1164,1166,1167,1169,1170,1172,1174,1177,1180,1183,1186,1190,1194,1197,1201,1205,1208,1211,1213,
+1216,1218,1219,1221,1222,1223,1224,1225,1225,1226,1226,1226,1226,1225,1224,1222,1218,1214,1209,1203,
+1195,1186,1177,1166,1155,1144,1133,1121,1110,1099,1089,1078,1067,1056,1043,1030,1016,1000,982,963,
+942,921,898,876,853,831,810,790,772,754,738,722,707,692,677,661,643,625,606,586,
+565,544,523,502,483,464,446,429,412,396,381,364,347,328,307,284,260,233,205,177,
+148,119,92,65,40,16,-6,-28,-50,-74,-99,-126,-157,-192,-230,-272,-318,-366,-416,-467,
+-517,-568,-617,-665,-713,-761,-809,-860,-915,-974,-1040,-1113,-1193,-1280,-1373,-1471,-1571,-1672,-1771,-1865,
+-1952,-2029,-2096,-2151,-2195,-2228,-2251,-2268,-2279,-2289,-2299,-2312,-2330,-2355,-2387,-2427,-2475,-2530,-2590,-2653,
+-2719,-2784,-2848,-2909,-2966,-3018,-3066,-3110,-3151,-3188,-3223,-3258,-3292,-3327,-3362,-3400,-3438,-3478,-3519,-3561,
+-3603,-3645,-3686,-3726,-3765,-3803,-3839,-3875,-3910,-3944,-3979,-4013,-4049,-4085,-4122,-4160,-4199,-4238,-4277,-4316,
+-4356,-4394,-4432,-4469,-4505,-4540,-4574,-4607,-4640,-4673,-4706,-4738,-4771,-4805,-4839,-4873,-4906,-4940,-4973,-5006,
+-5038,-5068,-5098,-5126,-5154,-5180,-5206,-5232,-5258,-5284,-5310,-5337,-5364,-5390,-5416,-5440,-5461,-5479,-5494,-5503,
+-5508,-5507,-5502,-5492,-5478,-5461,-5444,-5426,-5410,-5397,-5388,-5383,-5383,-5389,-5400,-5415,-5434,-5456,-5478,-5502,
+-5524,-5546,-5565,-5581,-5596,-5607,-5617,-5625,-5631,-5636,-5641,-5644,-5646,-5648,-5648,-5647,-5645,-5641,-5636,-5629,
+-5623,-5617,-5612,-5609,-5611,-5616,-5627,-5644,-5667,-5695,-5729,-5766,-5806,-5848,-5889,-5928,-5964,-5995,-6020,-6040,
+-6054,-6061,-6064,-6061,-6055,-6047,-6036,-6025,-6014,-6004,-5994,-5985,-5978,-5971,-5964,-5958,-5953,-5948,-5944,-5940,
+-5939,-5939,-5942,-5947,-5955,-5967,-5981,-5997,-6015,-6034,-6053,-6070,-6085,-6097,-6104,-6108,-6106,-6100,-6089,-6075,
+-6058,-6038,-6018,-5996,-5975,-5953,-5933,-5912,-5892,-5871,-5849,-5825,-5800,-5772,-5742,-5709,-5674,-5637,-5600,-5562,
+-5525,-5489,-5454,-5422,-5392,-5364,-5337,-5310,-5282,-5252,-5220,-5183,-5141,-5093,-5040,-4982,-4920,-4854,-4787,-4719,
+-4654,-4592,-4535,-4485,-4442,-4408,-4381,-4361,-4347,-4337,-4329,-4322,-4314,-4302,-4286,-4263,-4234,-4198,-4157,-4110,
+-4061,-4009,-3958,-3909,-3864,-3825,-3792,-3768,-3750,-3741,-3737,-3738,-3743,-3750,-3756,-3761,-3762,-3760,-3753,-3741,
+-3725,-3706,-3685,-3663,-3643,-3624,-3609,-3599,-3594,-3593,-3597,-3605,-3616,-3628,-3640,-3650,-3656,-3659,-3656,-3648,
+-3635,-3616,-3594,-3567,-3539,-3508,-3478,-3448,-3419,-3392,-3366,-3341,-3317,-3293,-3268,-3242,-3215,-3185,-3152,-3116,
+-3077,-3035,-2990,-2942,-2891,-2839,-2785,-2730,-2674,-2618,-2562,-2507,-2454,-2402,-2353,-2307,-2265,-2227,-2194,-2164,
+-2139,-2119,-2101,-2087,-2074,-2063,-2052,-2040,-2027,-2011,-1994,-1973,-1950,-1925,-1899,-1871,-1843,-1815,-1788,-1763,
+-1739,-1717,-1698,-1679,-1663,-1647,-1633,-1619,-1605,-1591,-1577,-1563,-1550,-1536,-1523,-1511,-1500,-1489,-1480,-1472,
+-1465,-1459,-1454,-1450,-1447,-1444,-1443,-1441,-1441,-1441,-1442,-1444,-1446,-1449,-1452,-1455,-1459,-1463,-1467,-1471,
+-1473,-1476,-1477,-1477,-1477,-1476,-1474,-1472,-1469,-1466,-1463,-1459,-1455,-1451,-1447,-1443,-1439,-1435,-1431,-1427,
+-1424,-1421,-1419,-1419,-1419,-1420,-1423,-1426,-1429,-1432,-1434,-1434,-1433,-1428,-1421,-1411,-1397,-1379,-1359,-1337,
+-1312,-1287,-1262,-1237,-1213,-1192,-1172,-1155,-1141,-1128,-1118,-1109,-1101,-1092,-1084,-1075,-1065,-1053,-1040,-1025,
+-1010,-993,-976,-958,-941,-923,-905,-888,-871,-853,-836,-819,-801,-782,-763,-742,-721,-699,-675,-651,
+-626,-601,-575,-548,-522,-495,-469,-442,-416,-389,-363,-337,-310,-284,-258,-231,-205,-178,-150,-123,
+-95,-66,-37,-7,22,52,83,114,145,176,206,236,266,296,325,353,196,222,248,274,
+299,324,349,373,397,421,443,465,487,507,528,547,566,585,604,622,640,658,675,691,
+707,722,736,749,761,772,782,791,800,808,816,824,832,840,848,856,865,873,882,890,
+897,904,910,916,921,925,929,932,935,939,942,946,951,956,962,969,976,983,991,999,
+1006,1013,1019,1024,1028,1032,1034,1035,1036,1037,1037,1037,1038,1039,1041,1043,1046,1049,1054,1058,
+1063,1068,1072,1077,1081,1084,1086,1088,1089,1090,1089,1088,1086,1084,1080,1077,1072,1068,1062,1057,
+1051,1044,1037,1030,1022,1014,1006,998,990,981,971,961,950,938,925,911,895,878,860,841,
+821,801,781,760,741,722,705,689,674,660,647,635,623,610,596,582,566,549,530,511,
+490,468,446,424,403,382,363,344,326,308,290,272,253,233,212,189,164,137,109,81,
+53,25,-1,-27,-50,-72,-92,-111,-129,-147,-166,-187,-211,-238,-269,-305,-344,-387,-434,-483,
+-534,-585,-637,-688,-738,-789,-839,-889,-942,-997,-1056,-1120,-1190,-1266,-1348,-1435,-1527,-1622,-1717,-1812,
+-1903,-1989,-2067,-2136,-2196,-2245,-2284,-2314,-2336,-2351,-2363,-2373,-2384,-2397,-2415,-2438,-2467,-2504,-2547,-2596,
+-2649,-2706,-2765,-2825,-2884,-2941,-2996,-3047,-3095,-3140,-3181,-3220,-3257,-3293,-3329,-3365,-3402,-3440,-3480,-3521,
+-3563,-3606,-3650,-3694,-3738,-3782,-3825,-3866,-3907,-3946,-3984,-4021,-4056,-4092,-4126,-4160,-4195,-4229,-4263,-4298,
+-4333,-4369,-4405,-4441,-4477,-4514,-4551,-4588,-4624,-4661,-4697,-4733,-4768,-4802,-4835,-4867,-4899,-4929,-4959,-4987,
+-5015,-5043,-5070,-5098,-5126,-5155,-5185,-5216,-5248,-5281,-5315,-5349,-5382,-5414,-5444,-5470,-5492,-5509,-5519,-5523,
+-5521,-5512,-5496,-5476,-5451,-5424,-5395,-5368,-5342,-5321,-5305,-5295,-5293,-5297,-5308,-5326,-5349,-5377,-5407,-5439,
+-5472,-5503,-5532,-5559,-5582,-5602,-5618,-5631,-5641,-5649,-5654,-5657,-5659,-5659,-5657,-5654,-5650,-5643,-5636,-5627,
+-5617,-5606,-5596,-5588,-5581,-5578,-5579,-5585,-5597,-5614,-5637,-5665,-5699,-5735,-5774,-5814,-5854,-5891,-5925,-5955,
+-5979,-5998,-6011,-6019,-6021,-6020,-6015,-6008,-5999,-5990,-5982,-5974,-5967,-5962,-5958,-5956,-5955,-5954,-5955,-5955,
+-5957,-5958,-5960,-5962,-5964,-5967,-5970,-5974,-5978,-5982,-5986,-5990,-5993,-5995,-5996,-5995,-5993,-5989,-5982,-5975,
+-5966,-5955,-5944,-5932,-5919,-5906,-5892,-5877,-5862,-5844,-5825,-5804,-5780,-5754,-5726,-5695,-5662,-5627,-5592,-5557,
+-5523,-5490,-5460,-5433,-5408,-5387,-5368,-5351,-5334,-5318,-5300,-5279,-5255,-5225,-5191,-5150,-5103,-5052,-4996,-4936,
+-4876,-4815,-4755,-4699,-4647,-4601,-4561,-4527,-4499,-4477,-4458,-4442,-4426,-4411,-4393,-4371,-4345,-4314,-4277,-4236,
+-4191,-4143,-4094,-4045,-3998,-3955,-3917,-3885,-3859,-3840,-3827,-3819,-3815,-3814,-3815,-3814,-3812,-3808,-3799,-3786,
+-3769,-3749,-3726,-3702,-3678,-3656,-3636,-3620,-3609,-3603,-3602,-3606,-3614,-3626,-3638,-3651,-3663,-3672,-3677,-3678,
+-3675,-3667,-3654,-3638,-3619,-3598,-3576,-3555,-3535,-3516,-3498,-3483,-3468,-3454,-3440,-3425,-3407,-3386,-3361,-3331,
+-3295,-3254,-3208,-3156,-3099,-3038,-2973,-2907,-2838,-2770,-2701,-2635,-2571,-2510,-2454,-2402,-2355,-2314,-2279,-2250,
+-2226,-2208,-2195,-2185,-2179,-2175,-2173,-2170,-2168,-2164,-2157,-2148,-2136,-2121,-2103,-2082,-2059,-2034,-2009,-1982,
+-1956,-1931,-1908,-1886,-1866,-1849,-1833,-1819,-1807,-1797,-1787,-1779,-1771,-1763,-1755,-1747,-1738,-1729,-1720,-1711,
+-1701,-1692,-1682,-1673,-1663,-1654,-1646,-1638,-1631,-1625,-1619,-1614,-1610,-1608,-1605,-1604,-1603,-1604,-1604,-1605,
+-1607,-1609,-1611,-1613,-1615,-1617,-1618,-1619,-1619,-1619,-1617,-1615,-1611,-1607,-1601,-1595,-1588,-1581,-1574,-1567,
+-1561,-1557,-1554,-1553,-1554,-1557,-1561,-1567,-1574,-1581,-1588,-1593,-1596,-1596,-1593,-1586,-1575,-1559,-1540,-1518,
+-1493,-1466,-1438,-1410,-1384,-1358,-1335,-1315,-1297,-1282,-1269,-1258,-1249,-1240,-1231,-1222,-1212,-1200,-1188,-1173,
+-1157,-1140,-1123,-1104,-1086,-1068,-1050,-1032,-1015,-999,-983,-967,-950,-933,-915,-896,-876,-854,-831,-807,
+-782,-756,-730,-704,-677,-651,-626,-601,-577,-553,-530,-507,-484,-460,-436,-412,-386,-359,-331,-303,
+-273,-242,-211,-179,-148,-116,-85,-54,-23,5,34,62,90,117,144,170,196,42,66,90,
+115,140,166,191,216,240,264,288,310,331,351,370,389,406,423,440,456,471,486,501,
+515,529,542,555,567,578,589,599,608,618,627,636,645,654,664,673,683,694,704,714,
+723,732,740,748,754,759,763,766,768,769,771,772,774,776,780,784,790,796,804,812,
+821,831,840,849,857,865,872,877,882,886,889,892,894,896,899,902,905,909,914,919,
+925,931,937,943,948,953,958,961,963,964,964,963,961,958,954,949,945,939,934,929,
+924,918,913,908,903,898,893,887,881,874,867,858,848,838,826,812,798,783,767,750,
+734,717,701,685,670,656,642,630,618,607,595,583,571,557,542,526,507,488,466,444,
+420,396,372,349,326,305,285,266,249,233,217,201,185,168,149,129,108,84,59,33,
+7,-19,-45,-70,-94,-115,-135,-153,-170,-186,-202,-219,-238,-260,-285,-315,-348,-387,-429,-475,
+-524,-576,-629,-684,-738,-792,-846,-899,-952,-1005,-1060,-1116,-1175,-1237,-1303,-1373,-1447,-1524,-1605,-1686,
+-1768,-1849,-1927,-2000,-2068,-2130,-2184,-2231,-2270,-2303,-2331,-2354,-2374,-2393,-2412,-2433,-2458,-2486,-2519,-2557,
+-2600,-2647,-2698,-2751,-2807,-2863,-2920,-2975,-3029,-3080,-3129,-3176,-3220,-3262,-3302,-3342,-3380,-3419,-3457,-3497,
+-3537,-3578,-3620,-3662,-3705,-3749,-3792,-3834,-3876,-3916,-3955,-3993,-4029,-4064,-4097,-4129,-4160,-4191,-4221,-4252,
+-4283,-4316,-4349,-4384,-4420,-4458,-4498,-4539,-4581,-4624,-4667,-4710,-4753,-4795,-4837,-4876,-4915,-4951,-4987,-5020,
+-5053,-5084,-5115,-5146,-5178,-5209,-5242,-5275,-5309,-5343,-5378,-5411,-5443,-5473,-5499,-5520,-5536,-5545,-5548,-5542,
+-5530,-5510,-5485,-5454,-5420,-5383,-5346,-5311,-5280,-5253,-5233,-5221,-5217,-5222,-5234,-5254,-5281,-5313,-5349,-5386,
+-5424,-5461,-5495,-5526,-5553,-5574,-5592,-5604,-5613,-5618,-5620,-5620,-5618,-5614,-5611,-5606,-5602,-5597,-5592,-5587,
+-5582,-5577,-5572,-5568,-5565,-5564,-5565,-5569,-5576,-5586,-5601,-5620,-5642,-5667,-5695,-5725,-5755,-5785,-5813,-5839,
+-5862,-5881,-5895,-5905,-5911,-5913,-5912,-5908,-5903,-5898,-5892,-5888,-5885,-5884,-5885,-5889,-5894,-5901,-5910,-5919,
+-5928,-5936,-5944,-5951,-5955,-5958,-5959,-5958,-5955,-5951,-5945,-5938,-5930,-5921,-5912,-5903,-5894,-5885,-5877,-5869,
+-5862,-5855,-5849,-5843,-5837,-5830,-5823,-5815,-5805,-5794,-5780,-5763,-5743,-5720,-5694,-5666,-5636,-5604,-5571,-5538,
+-5506,-5476,-5448,-5423,-5402,-5385,-5372,-5361,-5354,-5348,-5343,-5337,-5329,-5319,-5304,-5285,-5260,-5229,-5193,-5152,
+-5106,-5056,-5004,-4950,-4896,-4844,-4793,-4745,-4701,-4659,-4621,-4585,-4552,-4520,-4488,-4455,-4422,-4387,-4350,-4311,
+-4270,-4227,-4185,-4142,-4101,-4062,-4025,-3993,-3965,-3941,-3921,-3905,-3892,-3881,-3871,-3861,-3850,-3837,-3822,-3804,
+-3784,-3761,-3736,-3710,-3684,-3659,-3637,-3617,-3602,-3590,-3583,-3581,-3582,-3586,-3592,-3599,-3605,-3610,-3613,-3612,
+-3608,-3601,-3590,-3577,-3561,-3544,-3526,-3510,-3494,-3480,-3469,-3459,-3452,-3445,-3439,-3432,-3423,-3412,-3396,-3375,
+-3348,-3316,-3276,-3230,-3179,-3122,-3061,-2997,-2931,-2864,-2798,-2734,-2673,-2616,-2564,-2517,-2476,-2441,-2412,-2389,
+-2372,-2359,-2350,-2345,-2343,-2342,-2343,-2344,-2344,-2343,-2339,-2334,-2326,-2315,-2301,-2285,-2265,-2244,-2221,-2196,
+-2171,-2146,-2121,-2096,-2073,-2051,-2031,-2012,-1996,-1981,-1967,-1955,-1945,-1935,-1927,-1919,-1913,-1906,-1900,-1895,
+-1889,-1884,-1878,-1873,-1868,-1862,-1856,-1850,-1844,-1837,-1830,-1822,-1815,-1807,-1799,-1791,-1784,-1777,-1770,-1764,
+-1760,-1756,-1753,-1751,-1750,-1750,-1750,-1751,-1751,-1752,-1751,-1749,-1746,-1742,-1736,-1729,-1720,-1711,-1701,-1691,
+-1681,-1673,-1666,-1661,-1659,-1658,-1660,-1664,-1669,-1676,-1683,-1689,-1694,-1698,-1698,-1696,-1690,-1680,-1666,-1649,
+-1630,-1607,-1584,-1559,-1534,-1510,-1488,-1467,-1448,-1431,-1416,-1402,-1390,-1379,-1368,-1357,-1345,-1332,-1318,-1302,
+-1286,-1268,-1249,-1230,-1210,-1191,-1172,-1153,-1136,-1119,-1102,-1086,-1070,-1054,-1037,-1020,-1001,-982,-961,-939,
+-915,-891,-867,-841,-816,-791,-767,-742,-719,-696,-673,-650,-628,-605,-581,-557,-531,-504,-476,-447,
+-417,-386,-355,-323,-292,-261,-231,-202,-174,-148,-122,-97,-73,-50,-27,-4,19,42,-99,-76,
+-52,-28,-3,20,45,69,93,116,138,158,178,196,213,229,244,259,273,286,300,314,
+328,341,355,369,382,396,408,421,433,444,455,466,476,486,495,505,514,523,533,542,
+551,559,567,575,582,588,594,599,603,606,609,612,614,617,619,623,627,631,636,642,
+649,655,663,670,676,683,689,695,700,704,708,712,716,719,723,728,732,738,744,752,
+760,768,777,786,795,804,812,820,827,832,836,840,841,842,842,841,839,837,834,832,
+828,825,822,819,815,811,807,802,797,791,783,775,765,755,743,731,717,704,689,675,
+661,647,634,621,610,598,587,577,566,555,543,531,516,500,483,463,442,419,395,370,
+344,319,295,272,251,232,216,201,189,178,169,161,152,143,133,121,106,90,71,50,
+28,3,-20,-46,-71,-95,-118,-140,-161,-180,-200,-219,-240,-261,-286,-313,-344,-378,-417,-460,
+-507,-557,-610,-664,-720,-777,-833,-889,-944,-998,-1051,-1104,-1157,-1210,-1264,-1320,-1378,-1438,-1500,-1565,
+-1631,-1698,-1765,-1832,-1898,-1961,-2022,-2078,-2131,-2179,-2223,-2263,-2300,-2334,-2366,-2397,-2428,-2461,-2495,-2531,
+-2570,-2612,-2657,-2705,-2755,-2807,-2860,-2914,-2967,-3020,-3072,-3122,-3170,-3217,-3261,-3304,-3346,-3386,-3425,-3464,
+-3502,-3541,-3580,-3619,-3659,-3699,-3739,-3780,-3819,-3859,-3897,-3935,-3971,-4007,-4041,-4074,-4106,-4137,-4168,-4199,
+-4230,-4262,-4296,-4331,-4368,-4407,-4449,-4492,-4537,-4584,-4632,-4681,-4730,-4779,-4827,-4875,-4920,-4964,-5006,-5046,
+-5084,-5120,-5154,-5188,-5220,-5252,-5283,-5313,-5344,-5373,-5401,-5428,-5453,-5475,-5492,-5506,-5514,-5516,-5512,-5502,
+-5485,-5463,-5435,-5404,-5371,-5336,-5302,-5270,-5242,-5220,-5204,-5195,-5195,-5203,-5218,-5240,-5269,-5302,-5338,-5375,
+-5412,-5447,-5478,-5506,-5528,-5544,-5555,-5560,-5560,-5556,-5548,-5538,-5527,-5516,-5504,-5494,-5486,-5480,-5476,-5474,
+-5474,-5476,-5480,-5485,-5492,-5501,-5510,-5521,-5533,-5547,-5563,-5580,-5598,-5618,-5638,-5660,-5681,-5702,-5722,-5741,
+-5757,-5771,-5782,-5790,-5794,-5796,-5796,-5794,-5790,-5786,-5782,-5779,-5777,-5778,-5780,-5785,-5793,-5802,-5814,-5827,
+-5840,-5854,-5867,-5879,-5889,-5897,-5902,-5904,-5904,-5901,-5895,-5887,-5876,-5865,-5852,-5839,-5826,-5814,-5802,-5791,
+-5781,-5772,-5765,-5758,-5752,-5747,-5741,-5734,-5726,-5717,-5705,-5691,-5674,-5654,-5631,-5606,-5578,-5548,-5517,-5486,
+-5455,-5425,-5397,-5371,-5349,-5331,-5316,-5305,-5297,-5292,-5290,-5289,-5289,-5287,-5285,-5279,-5270,-5257,-5239,-5215,
+-5187,-5154,-5116,-5074,-5029,-4982,-4933,-4883,-4833,-4783,-4734,-4686,-4639,-4594,-4550,-4507,-4465,-4423,-4383,-4342,
+-4303,-4264,-4226,-4190,-4155,-4121,-4090,-4061,-4034,-4009,-3987,-3966,-3946,-3928,-3910,-3892,-3873,-3853,-3832,-3810,
+-3787,-3763,-3738,-3714,-3691,-3669,-3650,-3633,-3619,-3608,-3601,-3596,-3594,-3593,-3594,-3594,-3593,-3591,-3586,-3578,
+-3567,-3553,-3536,-3517,-3496,-3474,-3453,-3431,-3412,-3395,-3380,-3368,-3358,-3350,-3343,-3337,-3330,-3321,-3309,-3293,
+-3272,-3246,-3215,-3177,-3134,-3086,-3035,-2980,-2924,-2867,-2812,-2758,-2708,-2662,-2622,-2586,-2557,-2533,-2515,-2502,
+-2493,-2488,-2486,-2485,-2486,-2487,-2488,-2487,-2485,-2481,-2475,-2466,-2455,-2442,-2426,-2409,-2390,-2370,-2349,-2328,
+-2306,-2285,-2264,-2244,-2224,-2205,-2187,-2170,-2154,-2139,-2125,-2111,-2099,-2087,-2076,-2066,-2057,-2050,-2043,-2037,
+-2032,-2028,-2025,-2022,-2020,-2019,-2017,-2015,-2013,-2009,-2005,-2000,-1994,-1987,-1979,-1970,-1960,-1950,-1940,-1929,
+-1920,-1911,-1903,-1896,-1890,-1886,-1883,-1880,-1878,-1877,-1875,-1873,-1870,-1866,-1861,-1855,-1848,-1839,-1829,-1819,
+-1809,-1800,-1791,-1783,-1777,-1772,-1769,-1769,-1769,-1771,-1774,-1777,-1780,-1782,-1782,-1780,-1776,-1769,-1759,-1746,
+-1731,-1713,-1694,-1673,-1652,-1630,-1609,-1589,-1570,-1552,-1535,-1520,-1506,-1492,-1480,-1467,-1454,-1440,-1426,-1410,
+-1394,-1376,-1358,-1339,-1320,-1301,-1281,-1262,-1244,-1226,-1208,-1191,-1174,-1157,-1139,-1122,-1104,-1085,-1065,-1044,
+-1022,-1000,-977,-953,-929,-905,-881,-857,-833,-810,-787,-764,-741,-717,-693,-669,-644,-617,-591,-563,
+-535,-506,-477,-448,-420,-392,-365,-339,-314,-290,-268,-246,-225,-204,-184,-163,-142,-121,-99,-208,
+-185,-162,-138,-115,-92,-69,-48,-27,-7,10,27,43,58,72,85,97,110,122,135,148,
+161,175,190,205,220,235,250,265,278,291,303,314,324,333,341,348,355,361,367,373,
+379,385,392,399,407,415,424,433,442,452,461,471,480,489,497,505,513,519,525,531,
+535,538,541,543,544,544,544,543,541,540,538,537,537,537,538,541,545,551,558,567,
+577,588,601,614,628,642,656,670,682,694,705,714,722,728,733,737,740,742,742,743,
+742,741,740,738,736,733,729,725,720,715,708,700,692,682,672,660,649,636,624,612,
+599,588,576,565,555,545,535,525,514,503,492,479,464,448,431,412,391,370,347,325,
+303,281,261,243,227,214,203,195,189,186,183,181,180,177,173,167,158,147,131,113,
+91,67,40,11,-18,-49,-80,-110,-139,-168,-196,-223,-249,-276,-303,-332,-363,-396,-431,-470,
+-512,-556,-604,-654,-706,-760,-814,-868,-923,-976,-1029,-1081,-1131,-1181,-1230,-1279,-1329,-1379,-1430,-1482,
+-1535,-1591,-1647,-1705,-1763,-1822,-1881,-1939,-1995,-2050,-2103,-2154,-2203,-2249,-2293,-2336,-2377,-2417,-2456,-2496,
+-2536,-2577,-2618,-2661,-2706,-2751,-2798,-2845,-2893,-2942,-2990,-3038,-3085,-3132,-3177,-3221,-3264,-3306,-3347,-3388,
+-3428,-3467,-3507,-3546,-3586,-3625,-3665,-3705,-3744,-3784,-3823,-3862,-3900,-3937,-3973,-4009,-4044,-4078,-4112,-4146,
+-4180,-4215,-4251,-4288,-4326,-4366,-4408,-4451,-4497,-4543,-4591,-4640,-4690,-4739,-4787,-4835,-4881,-4925,-4968,-5007,
+-5044,-5079,-5112,-5142,-5170,-5197,-5222,-5245,-5268,-5289,-5308,-5326,-5343,-5357,-5368,-5377,-5382,-5384,-5382,-5376,
+-5366,-5353,-5337,-5319,-5300,-5281,-5263,-5247,-5235,-5227,-5224,-5226,-5234,-5249,-5268,-5292,-5321,-5351,-5383,-5415,
+-5446,-5473,-5497,-5515,-5528,-5535,-5536,-5531,-5520,-5505,-5487,-5467,-5445,-5423,-5402,-5383,-5367,-5354,-5345,-5340,
+-5339,-5341,-5347,-5356,-5367,-5381,-5396,-5413,-5430,-5449,-5468,-5487,-5507,-5526,-5545,-5564,-5583,-5601,-5617,-5633,
+-5647,-5659,-5669,-5677,-5683,-5687,-5689,-5689,-5689,-5687,-5685,-5683,-5681,-5681,-5682,-5685,-5690,-5696,-5705,-5715,
+-5726,-5738,-5751,-5763,-5775,-5785,-5794,-5801,-5806,-5808,-5808,-5805,-5801,-5794,-5785,-5775,-5764,-5753,-5741,-5729,
+-5717,-5706,-5696,-5686,-5676,-5666,-5657,-5647,-5636,-5624,-5611,-5595,-5578,-5559,-5538,-5514,-5488,-5461,-5432,-5402,
+-5372,-5342,-5313,-5285,-5260,-5236,-5216,-5198,-5183,-5172,-5163,-5156,-5150,-5146,-5142,-5137,-5131,-5123,-5113,-5099,
+-5082,-5060,-5035,-5006,-4974,-4938,-4899,-4857,-4813,-4768,-4722,-4675,-4629,-4583,-4537,-4493,-4450,-4408,-4368,-4330,
+-4293,-4258,-4225,-4194,-4164,-4136,-4109,-4084,-4060,-4037,-4014,-3992,-3971,-3949,-3928,-3906,-3885,-3863,-3841,-3819,
+-3798,-3777,-3758,-3741,-3725,-3712,-3702,-3694,-3689,-3687,-3686,-3688,-3690,-3692,-3694,-3693,-3691,-3685,-3676,-3663,
+-3645,-3624,-3599,-3571,-3540,-3508,-3475,-3442,-3411,-3381,-3354,-3329,-3307,-3288,-3270,-3254,-3239,-3223,-3206,-3187,
+-3165,-3140,-3111,-3077,-3040,-2999,-2956,-2910,-2863,-2816,-2771,-2728,-2688,-2653,-2622,-2597,-2577,-2562,-2553,-2548,
+-2547,-2548,-2552,-2556,-2561,-2564,-2566,-2566,-2563,-2557,-2548,-2537,-2523,-2507,-2489,-2470,-2450,-2431,-2412,-2394,
+-2377,-2361,-2347,-2335,-2323,-2314,-2304,-2296,-2288,-2280,-2272,-2264,-2255,-2246,-2236,-2226,-2216,-2205,-2195,-2185,
+-2175,-2166,-2158,-2151,-2144,-2139,-2134,-2129,-2125,-2122,-2118,-2113,-2109,-2103,-2097,-2090,-2082,-2074,-2065,-2056,
+-2047,-2038,-2030,-2022,-2015,-2009,-2004,-2000,-1996,-1993,-1990,-1988,-1985,-1981,-1977,-1972,-1967,-1960,-1953,-1945,
+-1936,-1927,-1919,-1911,-1903,-1897,-1891,-1886,-1883,-1880,-1878,-1876,-1874,-1871,-1867,-1862,-1856,-1847,-1837,-1824,
+-1810,-1793,-1775,-1756,-1736,-1715,-1695,-1675,-1655,-1636,-1619,-1602,-1586,-1572,-1558,-1544,-1531,-1517,-1503,-1489,
+-1475,-1459,-1443,-1427,-1409,-1392,-1374,-1355,-1337,-1319,-1300,-1282,-1263,-1245,-1226,-1207,-1188,-1168,-1147,-1126,
+-1105,-1083,-1061,-1038,-1015,-991,-968,-945,-922,-899,-876,-853,-830,-807,-784,-760,-736,-712,-687,-662,
+-637,-611,-586,-560,-535,-511,-486,-463,-440,-418,-397,-376,-356,-335,-315,-294,-274,-252,-230,-208,
+-286,-263,-241,-219,-198,-177,-158,-140,-123,-107,-92,-78,-66,-54,-43,-32,-21,-10,1,14,
+27,40,55,70,85,101,116,131,146,159,171,182,191,199,206,211,216,220,223,227,
+231,236,242,250,259,269,282,296,311,327,345,363,381,398,415,431,446,458,468,477,
+482,485,486,484,480,474,467,458,449,440,431,423,416,411,407,406,408,412,419,428,
+439,453,468,484,502,520,538,555,572,587,601,613,624,632,639,644,648,650,651,651,
+651,650,648,646,644,642,639,636,633,630,626,622,616,611,604,597,589,581,572,563,
+554,544,535,525,516,506,496,487,477,466,455,444,432,419,406,392,378,364,350,336,
+323,312,301,293,287,282,279,278,279,280,281,282,282,280,275,268,256,241,221,197,
+169,137,101,63,23,-18,-60,-102,-143,-183,-222,-258,-294,-327,-359,-391,-422,-453,-485,-518,
+-552,-589,-627,-668,-710,-755,-801,-848,-897,-945,-994,-1043,-1091,-1139,-1187,-1234,-1280,-1327,-1374,-1421,
+-1469,-1518,-1568,-1618,-1670,-1723,-1777,-1832,-1886,-1941,-1995,-2048,-2101,-2152,-2202,-2250,-2297,-2342,-2385,-2428,
+-2470,-2511,-2551,-2592,-2632,-2673,-2714,-2755,-2797,-2840,-2883,-2927,-2971,-3015,-3059,-3103,-3147,-3191,-3235,-3279,
+-3323,-3366,-3410,-3453,-3496,-3539,-3581,-3624,-3666,-3707,-3748,-3788,-3827,-3865,-3903,-3940,-3976,-4011,-4046,-4081,
+-4116,-4151,-4186,-4223,-4260,-4299,-4339,-4381,-4424,-4468,-4513,-4559,-4605,-4651,-4696,-4740,-4783,-4824,-4863,-4899,
+-4932,-4963,-4991,-5016,-5039,-5059,-5077,-5093,-5108,-5121,-5133,-5144,-5154,-5163,-5172,-5179,-5185,-5191,-5195,-5198,
+-5200,-5201,-5202,-5202,-5202,-5203,-5206,-5209,-5215,-5223,-5234,-5249,-5266,-5285,-5307,-5332,-5357,-5383,-5408,-5432,
+-5453,-5471,-5486,-5495,-5500,-5499,-5493,-5483,-5468,-5449,-5427,-5403,-5378,-5353,-5329,-5307,-5287,-5270,-5257,-5248,
+-5243,-5241,-5243,-5249,-5257,-5268,-5280,-5294,-5310,-5325,-5342,-5358,-5375,-5391,-5407,-5423,-5438,-5453,-5467,-5481,
+-5493,-5505,-5516,-5526,-5534,-5542,-5548,-5553,-5556,-5559,-5561,-5562,-5563,-5564,-5565,-5567,-5570,-5573,-5578,-5583,
+-5590,-5598,-5606,-5615,-5624,-5634,-5643,-5651,-5659,-5665,-5670,-5673,-5674,-5674,-5672,-5668,-5663,-5657,-5649,-5640,
+-5630,-5620,-5609,-5598,-5586,-5573,-5561,-5548,-5534,-5519,-5504,-5487,-5470,-5451,-5431,-5409,-5386,-5362,-5336,-5310,
+-5283,-5255,-5228,-5200,-5174,-5148,-5124,-5101,-5080,-5060,-5043,-5027,-5012,-4999,-4986,-4974,-4962,-4950,-4937,-4922,
+-4906,-4887,-4867,-4844,-4818,-4790,-4759,-4726,-4691,-4655,-4617,-4578,-4538,-4499,-4459,-4421,-4383,-4347,-4312,-4279,
+-4248,-4219,-4191,-4165,-4140,-4117,-4095,-4073,-4053,-4032,-4012,-3992,-3971,-3951,-3930,-3909,-3888,-3868,-3849,-3830,
+-3813,-3799,-3786,-3777,-3770,-3766,-3766,-3769,-3774,-3782,-3791,-3801,-3812,-3821,-3828,-3833,-3834,-3830,-3822,-3808,
+-3788,-3763,-3733,-3698,-3659,-3617,-3572,-3527,-3481,-3436,-3392,-3350,-3311,-3274,-3239,-3207,-3177,-3148,-3120,-3092,
+-3064,-3034,-3004,-2971,-2937,-2901,-2864,-2826,-2788,-2751,-2715,-2682,-2651,-2625,-2603,-2586,-2574,-2566,-2564,-2565,
+-2570,-2578,-2587,-2597,-2607,-2616,-2624,-2628,-2630,-2629,-2625,-2617,-2606,-2593,-2578,-2561,-2544,-2527,-2510,-2494,
+-2480,-2467,-2457,-2448,-2442,-2437,-2433,-2430,-2428,-2426,-2423,-2420,-2415,-2409,-2402,-2393,-2382,-2370,-2357,-2343,
+-2328,-2313,-2298,-2283,-2269,-2256,-2244,-2232,-2222,-2213,-2206,-2199,-2192,-2187,-2181,-2176,-2171,-2166,-2162,-2157,
+-2152,-2147,-2142,-2137,-2132,-2127,-2123,-2119,-2114,-2110,-2106,-2101,-2096,-2091,-2085,-2079,-2072,-2064,-2055,-2047,
+-2037,-2028,-2018,-2009,-2000,-1991,-1982,-1975,-1967,-1961,-1954,-1948,-1941,-1935,-1927,-1919,-1910,-1900,-1889,-1876,
+-1861,-1846,-1829,-1811,-1792,-1773,-1754,-1734,-1715,-1697,-1679,-1662,-1645,-1630,-1615,-1601,-1587,-1573,-1560,-1546,
+-1532,-1518,-1504,-1488,-1473,-1456,-1439,-1422,-1404,-1386,-1367,-1348,-1329,-1309,-1290,-1270,-1249,-1229,-1208,-1187,
+-1166,-1144,-1123,-1101,-1079,-1057,-1035,-1013,-991,-969,-947,-925,-903,-881,-859,-837,-814,-792,-769,-746,
+-723,-701,-678,-655,-632,-610,-587,-566,-544,-523,-501,-480,-459,-439,-417,-396,-374,-353,-330,-308,
+-286,-355,-335,-316,-297,-279,-261,-245,-230,-216,-203,-191,-179,-169,-158,-148,-138,-128,-117,-105,
+-93,-80,-67,-53,-38,-23,-8,6,20,34,46,58,69,78,86,94,100,106,112,118,
+125,132,141,151,162,176,192,209,228,249,270,292,315,337,358,377,395,410,422,431,
+437,440,439,435,429,420,409,396,383,370,358,346,336,329,324,322,323,327,335,346,
+359,375,393,412,432,453,473,492,510,526,540,553,562,570,575,577,578,578,576,573,
+569,565,561,558,555,552,551,550,549,549,549,550,550,550,550,549,547,544,540,535,
+529,523,515,506,497,487,477,466,456,445,434,424,414,405,397,389,383,378,374,371,
+371,371,374,378,383,389,395,402,409,415,419,421,420,416,407,395,377,354,327,294,
+257,215,169,121,70,19,-33,-85,-136,-186,-233,-278,-320,-359,-395,-429,-461,-491,-520,-549,
+-578,-607,-638,-670,-704,-740,-778,-817,-859,-902,-946,-991,-1037,-1084,-1130,-1177,-1224,-1270,-1316,-1362,
+-1409,-1455,-1501,-1548,-1595,-1643,-1692,-1741,-1790,-1840,-1890,-1941,-1991,-2041,-2090,-2139,-2187,-2234,-2280,-2325,
+-2369,-2412,-2454,-2495,-2536,-2576,-2617,-2657,-2697,-2738,-2779,-2821,-2863,-2906,-2949,-2994,-3038,-3084,-3130,-3176,
+-3222,-3269,-3316,-3362,-3408,-3454,-3499,-3543,-3587,-3629,-3670,-3710,-3748,-3785,-3821,-3855,-3889,-3921,-3953,-3984,
+-4015,-4046,-4078,-4110,-4144,-4178,-4214,-4252,-4290,-4330,-4372,-4414,-4457,-4500,-4543,-4585,-4626,-4666,-4703,-4739,
+-4772,-4802,-4829,-4854,-4875,-4894,-4910,-4924,-4935,-4945,-4954,-4962,-4969,-4975,-4982,-4988,-4995,-5001,-5008,-5016,
+-5024,-5033,-5042,-5052,-5063,-5075,-5087,-5101,-5115,-5131,-5148,-5165,-5183,-5202,-5221,-5240,-5258,-5276,-5292,-5307,
+-5319,-5329,-5336,-5339,-5340,-5337,-5331,-5322,-5310,-5297,-5281,-5265,-5249,-5232,-5217,-5203,-5190,-5180,-5173,-5167,
+-5165,-5165,-5167,-5171,-5177,-5184,-5193,-5202,-5211,-5221,-5231,-5241,-5250,-5259,-5268,-5277,-5285,-5294,-5302,-5311,
+-5319,-5327,-5336,-5344,-5352,-5360,-5367,-5374,-5381,-5387,-5392,-5396,-5400,-5404,-5407,-5410,-5412,-5415,-5418,-5422,
+-5425,-5430,-5435,-5440,-5446,-5452,-5459,-5466,-5473,-5479,-5485,-5491,-5495,-5499,-5501,-5502,-5502,-5501,-5498,-5493,
+-5488,-5481,-5473,-5464,-5454,-5443,-5432,-5420,-5407,-5393,-5379,-5364,-5348,-5332,-5315,-5297,-5279,-5260,-5239,-5219,
+-5197,-5175,-5153,-5130,-5107,-5084,-5061,-5039,-5017,-4995,-4974,-4954,-4934,-4915,-4897,-4879,-4861,-4842,-4824,-4805,
+-4785,-4764,-4742,-4719,-4694,-4668,-4639,-4610,-4579,-4547,-4513,-4480,-4445,-4411,-4377,-4343,-4311,-4279,-4249,-4220,
+-4193,-4168,-4144,-4121,-4100,-4080,-4061,-4043,-4024,-4006,-3988,-3970,-3951,-3932,-3913,-3894,-3874,-3856,-3838,-3822,
+-3808,-3796,-3786,-3780,-3776,-3777,-3780,-3787,-3796,-3808,-3822,-3836,-3851,-3864,-3876,-3884,-3889,-3889,-3884,-3873,
+-3856,-3833,-3803,-3768,-3727,-3681,-3632,-3580,-3526,-3471,-3416,-3361,-3308,-3257,-3208,-3162,-3118,-3077,-3038,-3001,
+-2966,-2932,-2899,-2867,-2835,-2804,-2774,-2744,-2715,-2688,-2662,-2639,-2618,-2601,-2588,-2578,-2573,-2572,-2575,-2581,
+-2591,-2604,-2618,-2634,-2650,-2666,-2681,-2694,-2704,-2712,-2717,-2719,-2718,-2714,-2708,-2699,-2688,-2677,-2664,-2651,
+-2639,-2627,-2616,-2606,-2597,-2590,-2583,-2577,-2572,-2566,-2560,-2554,-2547,-2538,-2529,-2517,-2504,-2490,-2474,-2457,
+-2439,-2421,-2403,-2384,-2366,-2350,-2334,-2319,-2307,-2296,-2287,-2279,-2274,-2269,-2267,-2265,-2265,-2265,-2265,-2266,
+-2267,-2268,-2269,-2269,-2268,-2267,-2265,-2262,-2258,-2253,-2247,-2239,-2231,-2222,-2211,-2200,-2188,-2174,-2161,-2146,
+-2131,-2116,-2101,-2087,-2072,-2058,-2044,-2031,-2019,-2007,-1996,-1985,-1975,-1965,-1955,-1945,-1934,-1923,-1912,-1900,
+-1887,-1874,-1860,-1845,-1830,-1814,-1798,-1781,-1765,-1748,-1732,-1716,-1700,-1685,-1670,-1655,-1640,-1625,-1611,-1596,
+-1581,-1566,-1550,-1534,-1517,-1500,-1483,-1465,-1446,-1427,-1408,-1388,-1369,-1349,-1329,-1309,-1289,-1269,-1249,-1229,
+-1209,-1188,-1168,-1148,-1128,-1108,-1087,-1067,-1046,-1025,-1005,-983,-962,-941,-919,-898,-876,-854,-832,-810,
+-788,-767,-745,-723,-702,-681,-660,-640,-619,-599,-579,-559,-539,-519,-499,-479,-458,-438,-417,-396,
+-376,-355,-430,-413,-397,-381,-366,-352,-338,-325,-314,-302,-292,-282,-273,-264,-255,-246,-237,-227,
+-217,-207,-196,-184,-172,-159,-146,-133,-119,-105,-92,-78,-65,-52,-39,-27,-15,-2,9,22,
+35,50,64,80,98,116,135,156,177,198,220,242,263,283,302,319,333,345,354,360,
+363,362,358,352,343,332,320,307,293,280,268,257,249,243,240,240,244,251,261,275,
+291,310,330,351,373,395,417,437,455,472,486,497,506,512,516,517,516,513,510,505,
+500,495,490,486,484,482,482,484,486,490,495,500,506,511,517,521,525,527,528,527,
+524,519,513,505,495,484,472,460,447,434,422,411,401,392,385,381,378,378,381,386,
+393,402,414,426,440,454,468,481,493,504,511,515,515,511,502,488,469,444,414,379,
+340,296,249,199,147,94,40,-12,-64,-114,-163,-208,-251,-291,-328,-362,-395,-425,-454,-482,
+-511,-539,-569,-600,-632,-667,-704,-743,-785,-828,-873,-920,-968,-1017,-1067,-1116,-1166,-1215,-1263,-1311,
+-1357,-1403,-1448,-1493,-1537,-1580,-1624,-1667,-1710,-1754,-1798,-1843,-1887,-1933,-1979,-2025,-2071,-2118,-2164,-2211,
+-2257,-2303,-2348,-2393,-2438,-2482,-2525,-2568,-2611,-2654,-2696,-2739,-2781,-2824,-2867,-2910,-2954,-2998,-3043,-3087,
+-3132,-3177,-3223,-3268,-3313,-3357,-3401,-3444,-3486,-3526,-3566,-3604,-3640,-3675,-3709,-3740,-3771,-3800,-3829,-3856,
+-3883,-3910,-3937,-3965,-3993,-4022,-4053,-4084,-4118,-4153,-4189,-4226,-4265,-4304,-4344,-4385,-4424,-4464,-4502,-4538,
+-4573,-4606,-4636,-4663,-4688,-4710,-4730,-4747,-4761,-4773,-4784,-4793,-4800,-4807,-4813,-4818,-4823,-4829,-4834,-4840,
+-4847,-4854,-4862,-4871,-4880,-4890,-4900,-4911,-4923,-4934,-4946,-4957,-4969,-4980,-4991,-5001,-5010,-5019,-5026,-5032,
+-5037,-5041,-5043,-5044,-5044,-5043,-5040,-5037,-5034,-5030,-5026,-5022,-5019,-5017,-5016,-5016,-5017,-5019,-5023,-5029,
+-5035,-5043,-5051,-5060,-5069,-5078,-5087,-5095,-5103,-5111,-5117,-5123,-5128,-5133,-5137,-5140,-5144,-5147,-5150,-5154,
+-5158,-5162,-5167,-5172,-5178,-5184,-5191,-5197,-5204,-5210,-5217,-5223,-5229,-5234,-5239,-5243,-5247,-5250,-5253,-5256,
+-5258,-5261,-5263,-5266,-5269,-5272,-5275,-5278,-5282,-5285,-5289,-5293,-5296,-5299,-5302,-5304,-5305,-5305,-5305,-5303,
+-5301,-5298,-5294,-5288,-5282,-5276,-5268,-5259,-5250,-5241,-5230,-5220,-5208,-5196,-5184,-5171,-5157,-5143,-5128,-5113,
+-5097,-5081,-5064,-5047,-5029,-5011,-4992,-4974,-4955,-4936,-4917,-4898,-4880,-4861,-4842,-4823,-4804,-4784,-4765,-4744,
+-4723,-4701,-4678,-4655,-4629,-4603,-4575,-4547,-4517,-4486,-4455,-4422,-4390,-4357,-4325,-4293,-4262,-4232,-4204,-4176,
+-4150,-4126,-4103,-4081,-4061,-4042,-4023,-4005,-3988,-3971,-3953,-3935,-3917,-3899,-3880,-3860,-3841,-3822,-3803,-3786,
+-3769,-3755,-3742,-3732,-3725,-3721,-3719,-3721,-3725,-3732,-3740,-3750,-3761,-3771,-3780,-3788,-3793,-3794,-3792,-3784,
+-3772,-3754,-3730,-3701,-3667,-3628,-3584,-3537,-3487,-3435,-3382,-3328,-3274,-3221,-3169,-3120,-3073,-3028,-2986,-2946,
+-2909,-2875,-2843,-2812,-2784,-2758,-2733,-2709,-2687,-2667,-2649,-2632,-2618,-2606,-2597,-2590,-2586,-2585,-2588,-2593,
+-2600,-2610,-2622,-2636,-2650,-2666,-2681,-2696,-2710,-2723,-2734,-2743,-2750,-2755,-2757,-2758,-2756,-2753,-2747,-2741,
+-2734,-2725,-2716,-2707,-2697,-2687,-2677,-2667,-2656,-2645,-2633,-2621,-2608,-2594,-2579,-2563,-2546,-2529,-2510,-2491,
+-2472,-2453,-2434,-2416,-2399,-2383,-2369,-2356,-2346,-2338,-2332,-2328,-2326,-2327,-2329,-2333,-2339,-2346,-2353,-2361,
+-2369,-2377,-2385,-2392,-2397,-2401,-2404,-2405,-2404,-2401,-2396,-2389,-2380,-2369,-2356,-2341,-2325,-2308,-2289,-2269,
+-2248,-2227,-2206,-2185,-2163,-2143,-2122,-2102,-2083,-2065,-2048,-2031,-2015,-2000,-1986,-1972,-1959,-1946,-1933,-1921,
+-1908,-1896,-1883,-1870,-1857,-1844,-1831,-1817,-1803,-1789,-1775,-1761,-1747,-1732,-1717,-1702,-1687,-1672,-1656,-1640,
+-1623,-1606,-1589,-1571,-1552,-1534,-1515,-1495,-1475,-1456,-1436,-1416,-1395,-1376,-1356,-1336,-1317,-1298,-1279,-1260,
+-1241,-1223,-1204,-1186,-1167,-1148,-1129,-1110,-1091,-1071,-1051,-1031,-1010,-989,-967,-946,-924,-902,-880,-858,
+-837,-815,-794,-774,-753,-733,-714,-695,-676,-658,-640,-622,-604,-587,-570,-552,-535,-517,-499,-482,
+-464,-447,-430,-496,-481,-467,-453,-440,-427,-416,-405,-395,-386,-377,-370,-363,-357,-351,-346,-340,
+-335,-330,-324,-318,-311,-304,-296,-287,-277,-267,-255,-243,-229,-215,-200,-183,-166,-148,-129,-109,
+-88,-66,-43,-19,4,29,54,79,105,129,153,176,198,218,236,251,264,275,282,286,
+288,287,283,277,268,259,248,237,225,215,205,197,190,186,185,186,191,198,208,220,
+235,251,269,287,306,325,343,360,375,388,400,409,416,421,423,424,423,421,418,415,
+412,409,407,406,406,409,412,418,424,433,442,452,462,473,483,492,500,507,511,514,
+514,512,508,501,493,482,470,458,444,431,417,405,394,385,378,373,370,371,374,379,
+387,398,410,424,438,454,468,482,495,505,513,518,518,515,507,495,478,457,431,402,
+368,331,292,250,207,164,120,76,33,-7,-47,-85,-121,-156,-188,-220,-250,-279,-308,-337,
+-368,-399,-432,-467,-505,-545,-588,-633,-681,-731,-784,-838,-893,-949,-1005,-1061,-1116,-1170,-1223,-1274,
+-1324,-1371,-1417,-1460,-1503,-1543,-1583,-1621,-1660,-1697,-1735,-1774,-1813,-1853,-1893,-1935,-1978,-2022,-2067,-2113,
+-2159,-2206,-2254,-2301,-2349,-2396,-2442,-2488,-2534,-2578,-2622,-2665,-2707,-2749,-2790,-2830,-2870,-2910,-2950,-2989,
+-3029,-3069,-3108,-3148,-3188,-3228,-3268,-3308,-3347,-3386,-3425,-3463,-3499,-3535,-3570,-3604,-3636,-3667,-3697,-3726,
+-3754,-3782,-3809,-3835,-3862,-3888,-3915,-3942,-3970,-3999,-4028,-4059,-4090,-4122,-4154,-4187,-4220,-4253,-4286,-4319,
+-4350,-4381,-4410,-4438,-4464,-4488,-4510,-4531,-4549,-4565,-4580,-4593,-4604,-4614,-4623,-4631,-4638,-4644,-4650,-4656,
+-4661,-4667,-4672,-4677,-4683,-4688,-4693,-4699,-4704,-4710,-4715,-4720,-4725,-4729,-4733,-4737,-4740,-4743,-4746,-4748,
+-4750,-4752,-4754,-4755,-4757,-4759,-4761,-4764,-4768,-4771,-4776,-4782,-4788,-4796,-4804,-4813,-4823,-4834,-4845,-4857,
+-4869,-4881,-4893,-4904,-4915,-4926,-4935,-4944,-4952,-4958,-4964,-4968,-4972,-4975,-4978,-4980,-4982,-4984,-4986,-4988,
+-4991,-4994,-4999,-5003,-5009,-5015,-5022,-5029,-5037,-5045,-5053,-5061,-5068,-5075,-5082,-5088,-5094,-5098,-5102,-5106,
+-5108,-5110,-5112,-5113,-5113,-5114,-5114,-5114,-5113,-5113,-5113,-5113,-5112,-5112,-5112,-5112,-5111,-5110,-5110,-5109,
+-5107,-5105,-5103,-5101,-5097,-5094,-5090,-5085,-5080,-5074,-5068,-5061,-5054,-5046,-5037,-5028,-5017,-5007,-4995,-4983,
+-4970,-4957,-4943,-4928,-4913,-4898,-4882,-4866,-4850,-4833,-4817,-4800,-4784,-4767,-4750,-4733,-4716,-4699,-4681,-4662,
+-4643,-4623,-4603,-4581,-4558,-4534,-4509,-4483,-4456,-4428,-4399,-4370,-4340,-4310,-4280,-4250,-4221,-4193,-4165,-4139,
+-4114,-4090,-4068,-4046,-4026,-4007,-3989,-3971,-3954,-3937,-3920,-3903,-3885,-3867,-3848,-3828,-3808,-3788,-3768,-3747,
+-3727,-3708,-3689,-3672,-3657,-3643,-3632,-3622,-3615,-3610,-3606,-3604,-3603,-3603,-3604,-3603,-3602,-3599,-3595,-3587,
+-3577,-3563,-3546,-3525,-3501,-3473,-3442,-3407,-3371,-3332,-3292,-3250,-3209,-3168,-3127,-3088,-3050,-3014,-2979,-2948,
+-2918,-2890,-2864,-2841,-2819,-2798,-2779,-2761,-2745,-2729,-2713,-2699,-2685,-2673,-2661,-2650,-2640,-2631,-2623,-2617,
+-2612,-2609,-2607,-2606,-2607,-2609,-2612,-2615,-2619,-2624,-2629,-2634,-2639,-2644,-2648,-2652,-2655,-2658,-2660,-2661,
+-2661,-2661,-2659,-2657,-2654,-2650,-2646,-2640,-2633,-2625,-2616,-2606,-2594,-2582,-2568,-2553,-2538,-2521,-2504,-2487,
+-2469,-2451,-2434,-2418,-2402,-2388,-2375,-2364,-2355,-2349,-2344,-2342,-2342,-2344,-2348,-2355,-2362,-2372,-2382,-2393,
+-2405,-2417,-2429,-2440,-2450,-2459,-2466,-2472,-2476,-2478,-2477,-2474,-2469,-2462,-2452,-2440,-2426,-2410,-2393,-2374,
+-2353,-2332,-2309,-2286,-2262,-2238,-2214,-2191,-2167,-2144,-2122,-2100,-2079,-2058,-2038,-2019,-2001,-1984,-1967,-1950,
+-1935,-1919,-1905,-1890,-1876,-1862,-1848,-1835,-1821,-1808,-1795,-1781,-1767,-1753,-1739,-1725,-1710,-1695,-1679,-1663,
+-1647,-1630,-1613,-1595,-1576,-1558,-1539,-1519,-1500,-1480,-1460,-1440,-1421,-1401,-1382,-1363,-1344,-1325,-1307,-1289,
+-1271,-1253,-1235,-1218,-1200,-1182,-1164,-1146,-1127,-1108,-1089,-1069,-1049,-1028,-1008,-987,-966,-945,-923,-902,
+-882,-861,-841,-821,-802,-783,-765,-748,-731,-714,-698,-682,-666,-650,-635,-620,-604,-589,-573,-558,
+-542,-527,-511,-496,-545,-531,-517,-503,-491,-479,-468,-459,-451,-444,-438,-434,-431,-429,-427,-427,
+-428,-428,-429,-431,-431,-432,-432,-431,-428,-425,-420,-413,-405,-394,-382,-368,-351,-333,-312,-290,
+-266,-239,-212,-183,-152,-121,-89,-57,-25,6,37,67,96,123,149,172,193,211,227,240,
+250,258,263,266,267,266,264,260,256,251,246,241,237,234,232,231,231,232,235,238,
+243,248,254,260,266,272,277,282,286,289,290,291,291,289,287,285,282,279,277,275,
+274,274,276,279,284,290,299,309,320,333,347,362,376,391,405,419,431,442,451,457,
+462,464,464,462,457,451,443,434,425,415,405,395,386,378,372,368,365,365,366,370,
+375,382,390,399,408,418,427,434,441,445,447,447,443,437,426,413,396,376,353,327,
+299,269,238,205,172,139,105,73,41,10,-18,-47,-74,-100,-126,-152,-177,-203,-230,-258,
+-288,-320,-354,-391,-432,-475,-521,-570,-622,-676,-733,-791,-850,-910,-969,-1029,-1087,-1144,-1199,-1253,
+-1303,-1352,-1398,-1441,-1482,-1521,-1558,-1594,-1629,-1663,-1696,-1730,-1765,-1800,-1836,-1873,-1912,-1952,-1994,-2037,
+-2081,-2127,-2173,-2220,-2266,-2313,-2360,-2406,-2451,-2495,-2538,-2580,-2620,-2660,-2698,-2734,-2770,-2806,-2840,-2875,
+-2909,-2943,-2978,-3013,-3049,-3085,-3123,-3161,-3200,-3239,-3279,-3320,-3360,-3401,-3441,-3481,-3520,-3559,-3596,-3632,
+-3667,-3700,-3732,-3762,-3791,-3818,-3844,-3869,-3892,-3915,-3937,-3959,-3980,-4000,-4021,-4041,-4062,-4082,-4103,-4124,
+-4144,-4165,-4186,-4206,-4227,-4247,-4267,-4286,-4305,-4323,-4341,-4358,-4374,-4389,-4404,-4417,-4430,-4443,-4454,-4465,
+-4475,-4484,-4492,-4500,-4507,-4514,-4520,-4525,-4530,-4535,-4539,-4543,-4546,-4550,-4553,-4556,-4559,-4562,-4565,-4568,
+-4572,-4576,-4580,-4585,-4591,-4597,-4604,-4612,-4620,-4629,-4638,-4648,-4659,-4670,-4681,-4692,-4703,-4714,-4725,-4736,
+-4746,-4755,-4764,-4771,-4778,-4784,-4788,-4792,-4794,-4796,-4797,-4797,-4797,-4796,-4795,-4794,-4794,-4794,-4794,-4795,
+-4797,-4800,-4804,-4809,-4815,-4822,-4830,-4839,-4848,-4858,-4868,-4878,-4889,-4899,-4908,-4917,-4925,-4933,-4940,-4945,
+-4950,-4954,-4956,-4958,-4959,-4959,-4959,-4957,-4956,-4954,-4951,-4949,-4946,-4944,-4941,-4939,-4936,-4934,-4932,-4930,
+-4928,-4927,-4925,-4923,-4922,-4920,-4918,-4916,-4913,-4910,-4906,-4902,-4897,-4891,-4885,-4877,-4869,-4860,-4850,-4839,
+-4827,-4814,-4801,-4787,-4772,-4757,-4741,-4726,-4710,-4693,-4677,-4661,-4645,-4629,-4613,-4597,-4581,-4565,-4548,-4532,
+-4515,-4498,-4480,-4461,-4442,-4421,-4400,-4378,-4355,-4332,-4307,-4282,-4257,-4231,-4205,-4180,-4154,-4129,-4105,-4082,
+-4060,-4038,-4018,-3999,-3981,-3964,-3947,-3931,-3916,-3901,-3886,-3871,-3855,-3839,-3822,-3804,-3786,-3766,-3746,-3725,
+-3704,-3682,-3660,-3638,-3616,-3595,-3574,-3555,-3536,-3518,-3501,-3486,-3471,-3457,-3444,-3431,-3418,-3405,-3392,-3378,
+-3363,-3347,-3330,-3311,-3291,-3269,-3246,-3222,-3197,-3171,-3144,-3118,-3091,-3065,-3040,-3016,-2993,-2972,-2952,-2934,
+-2917,-2902,-2889,-2877,-2866,-2855,-2846,-2836,-2827,-2817,-2807,-2797,-2785,-2773,-2760,-2745,-2730,-2714,-2697,-2679,
+-2662,-2644,-2626,-2608,-2591,-2575,-2560,-2545,-2533,-2521,-2511,-2503,-2497,-2492,-2489,-2487,-2487,-2489,-2491,-2495,
+-2500,-2506,-2512,-2518,-2525,-2531,-2537,-2542,-2547,-2550,-2552,-2553,-2552,-2550,-2546,-2541,-2534,-2526,-2516,-2505,
+-2493,-2481,-2468,-2454,-2441,-2428,-2415,-2404,-2393,-2384,-2376,-2369,-2365,-2362,-2360,-2361,-2363,-2366,-2371,-2377,
+-2384,-2391,-2399,-2407,-2415,-2422,-2429,-2435,-2440,-2444,-2446,-2446,-2445,-2442,-2437,-2430,-2422,-2412,-2400,-2386,
+-2371,-2354,-2336,-2317,-2297,-2276,-2254,-2232,-2210,-2187,-2164,-2141,-2119,-2096,-2074,-2052,-2031,-2010,-1990,-1970,
+-1951,-1933,-1915,-1898,-1881,-1865,-1849,-1834,-1819,-1805,-1791,-1777,-1764,-1750,-1737,-1723,-1710,-1696,-1682,-1667,
+-1652,-1637,-1622,-1606,-1589,-1572,-1555,-1538,-1520,-1502,-1484,-1465,-1447,-1428,-1410,-1391,-1373,-1354,-1336,-1318,
+-1300,-1282,-1264,-1247,-1229,-1211,-1193,-1175,-1156,-1138,-1119,-1100,-1081,-1062,-1043,-1024,-1004,-985,-966,-946,
+-928,-909,-891,-873,-856,-839,-822,-806,-790,-775,-759,-744,-729,-714,-699,-684,-669,-654,-638,-623,
+-607,-591,-576,-560,-545,-595,-581,-567,-554,-542,-530,-521,-512,-505,-499,-495,-492,-491,-491,-493,
+-495,-499,-504,-509,-514,-520,-525,-530,-534,-537,-539,-539,-538,-534,-529,-521,-510,-497,-481,-463,
+-442,-419,-393,-364,-334,-301,-267,-232,-195,-158,-120,-82,-44,-7,29,64,98,131,161,190,
+216,240,261,280,296,310,322,331,338,343,346,347,346,344,340,336,330,322,314,305,
+296,285,274,262,250,237,224,211,197,183,170,157,144,133,122,112,104,97,92,89,
+88,89,93,99,107,117,129,143,159,175,193,211,229,248,265,282,298,312,325,336,
+345,352,357,360,361,361,359,357,353,349,345,340,337,333,331,329,329,329,330,333,
+336,339,343,347,351,353,355,355,354,350,344,336,325,312,295,277,255,232,206,179,
+150,120,89,59,28,-2,-31,-60,-88,-115,-141,-165,-189,-212,-234,-256,-279,-302,-325,-350,
+-377,-406,-437,-470,-507,-545,-587,-631,-677,-726,-776,-828,-881,-935,-989,-1042,-1095,-1147,-1198,-1246,
+-1293,-1338,-1380,-1421,-1459,-1496,-1531,-1564,-1597,-1629,-1660,-1692,-1724,-1756,-1789,-1824,-1860,-1897,-1936,-1976,
+-2017,-2059,-2102,-2146,-2190,-2235,-2279,-2322,-2365,-2408,-2449,-2488,-2527,-2564,-2600,-2635,-2669,-2702,-2734,-2766,
+-2799,-2831,-2864,-2897,-2932,-2968,-3005,-3044,-3084,-3125,-3168,-3212,-3257,-3302,-3348,-3394,-3440,-3485,-3529,-3572,
+-3613,-3652,-3689,-3723,-3755,-3784,-3810,-3834,-3855,-3874,-3890,-3904,-3916,-3927,-3936,-3945,-3953,-3960,-3968,-3975,
+-3983,-3992,-4002,-4012,-4024,-4037,-4051,-4066,-4082,-4099,-4117,-4135,-4154,-4173,-4193,-4212,-4231,-4249,-4267,-4284,
+-4300,-4315,-4329,-4342,-4353,-4363,-4372,-4379,-4386,-4391,-4396,-4400,-4403,-4406,-4408,-4410,-4413,-4415,-4419,-4422,
+-4427,-4432,-4438,-4445,-4453,-4462,-4472,-4483,-4495,-4507,-4520,-4533,-4547,-4561,-4574,-4587,-4600,-4612,-4623,-4633,
+-4642,-4650,-4656,-4661,-4664,-4666,-4667,-4666,-4664,-4661,-4657,-4653,-4648,-4642,-4637,-4631,-4627,-4622,-4619,-4616,
+-4614,-4614,-4615,-4617,-4620,-4625,-4631,-4638,-4646,-4655,-4664,-4674,-4685,-4696,-4706,-4717,-4727,-4736,-4745,-4753,
+-4760,-4767,-4772,-4776,-4779,-4782,-4783,-4784,-4784,-4783,-4782,-4780,-4778,-4775,-4773,-4771,-4768,-4766,-4764,-4762,
+-4760,-4759,-4757,-4756,-4755,-4754,-4753,-4751,-4750,-4748,-4746,-4743,-4739,-4735,-4730,-4724,-4717,-4710,-4701,-4691,
+-4681,-4669,-4657,-4644,-4630,-4615,-4600,-4585,-4569,-4554,-4538,-4522,-4506,-4490,-4474,-4458,-4442,-4427,-4411,-4395,
+-4379,-4363,-4346,-4329,-4311,-4293,-4275,-4255,-4235,-4215,-4194,-4172,-4150,-4128,-4106,-4084,-4062,-4040,-4019,-3999,
+-3979,-3960,-3942,-3924,-3908,-3892,-3878,-3863,-3850,-3837,-3824,-3811,-3798,-3785,-3771,-3756,-3741,-3725,-3708,-3690,
+-3670,-3650,-3629,-3607,-3584,-3561,-3537,-3513,-3488,-3463,-3438,-3413,-3388,-3363,-3339,-3314,-3289,-3265,-3241,-3216,
+-3192,-3167,-3143,-3118,-3093,-3069,-3045,-3020,-2997,-2974,-2951,-2930,-2910,-2891,-2874,-2859,-2845,-2833,-2824,-2816,
+-2810,-2805,-2803,-2802,-2802,-2803,-2804,-2805,-2807,-2808,-2808,-2807,-2805,-2801,-2795,-2788,-2778,-2766,-2752,-2736,
+-2719,-2699,-2679,-2657,-2634,-2612,-2588,-2566,-2543,-2522,-2502,-2484,-2467,-2453,-2440,-2430,-2423,-2417,-2415,-2414,
+-2416,-2420,-2425,-2432,-2441,-2450,-2460,-2471,-2481,-2491,-2501,-2510,-2518,-2525,-2530,-2534,-2536,-2536,-2534,-2531,
+-2526,-2520,-2512,-2503,-2493,-2482,-2471,-2459,-2447,-2435,-2424,-2413,-2403,-2393,-2384,-2377,-2370,-2365,-2360,-2357,
+-2354,-2352,-2351,-2351,-2351,-2351,-2352,-2352,-2352,-2352,-2351,-2350,-2348,-2345,-2341,-2336,-2330,-2323,-2315,-2305,
+-2295,-2283,-2270,-2256,-2241,-2226,-2209,-2192,-2174,-2156,-2137,-2118,-2099,-2079,-2060,-2040,-2021,-2002,-1983,-1964,
+-1946,-1928,-1911,-1894,-1878,-1862,-1846,-1832,-1817,-1803,-1789,-1776,-1763,-1750,-1737,-1725,-1712,-1699,-1686,-1673,
+-1660,-1646,-1632,-1618,-1603,-1588,-1573,-1557,-1541,-1524,-1508,-1491,-1473,-1456,-1438,-1420,-1402,-1384,-1367,-1348,
+-1330,-1312,-1294,-1276,-1258,-1240,-1222,-1204,-1186,-1168,-1150,-1132,-1114,-1096,-1078,-1061,-1043,-1026,-1008,-991,
+-974,-958,-942,-926,-910,-895,-880,-865,-851,-836,-822,-807,-793,-779,-764,-749,-734,-719,-704,-688,
+-673,-657,-641,-626,-610,-595,-666,-653,-640,-627,-616,-605,-594,-585,-577,-570,-565,-560,-557,-555,
+-554,-554,-556,-558,-561,-564,-568,-572,-576,-580,-584,-586,-588,-589,-588,-585,-581,-575,-566,-555,
+-542,-526,-508,-487,-464,-438,-410,-380,-347,-313,-277,-240,-202,-162,-122,-82,-42,-3,35,73,
+109,144,177,208,236,262,285,305,321,335,345,352,356,356,354,348,339,327,312,295,
+276,254,231,207,181,155,128,101,75,49,24,0,-21,-42,-60,-75,-88,-98,-106,-110,
+-111,-110,-105,-97,-87,-75,-60,-44,-26,-7,12,32,53,73,92,111,129,145,159,172,
+183,193,200,206,210,213,215,216,216,216,215,214,213,213,213,213,214,215,217,219,
+221,223,225,226,226,226,224,220,214,207,197,185,171,154,134,113,89,63,35,5,
+-24,-56,-88,-120,-153,-185,-217,-248,-278,-307,-335,-362,-387,-412,-437,-460,-483,-506,-530,-553,
+-578,-603,-629,-657,-686,-717,-749,-783,-819,-856,-894,-933,-973,-1014,-1055,-1096,-1137,-1178,-1218,-1257,
+-1295,-1332,-1368,-1403,-1437,-1470,-1502,-1533,-1564,-1595,-1626,-1656,-1688,-1719,-1752,-1786,-1820,-1856,-1892,-1930,
+-1969,-2008,-2048,-2089,-2130,-2171,-2212,-2253,-2293,-2332,-2371,-2409,-2445,-2481,-2516,-2550,-2583,-2616,-2648,-2680,
+-2712,-2745,-2778,-2812,-2847,-2883,-2920,-2959,-2999,-3041,-3084,-3128,-3173,-3219,-3266,-3312,-3359,-3405,-3450,-3493,
+-3535,-3575,-3613,-3648,-3680,-3709,-3734,-3757,-3776,-3793,-3806,-3817,-3825,-3831,-3835,-3838,-3840,-3841,-3842,-3843,
+-3845,-3847,-3851,-3856,-3862,-3870,-3880,-3892,-3905,-3921,-3937,-3955,-3974,-3994,-4014,-4035,-4055,-4075,-4095,-4113,
+-4130,-4146,-4160,-4172,-4182,-4190,-4196,-4200,-4202,-4203,-4202,-4199,-4195,-4191,-4186,-4181,-4176,-4171,-4167,-4163,
+-4161,-4161,-4162,-4164,-4169,-4175,-4184,-4194,-4206,-4220,-4235,-4251,-4269,-4287,-4306,-4326,-4345,-4364,-4383,-4401,
+-4418,-4434,-4448,-4461,-4473,-4483,-4490,-4497,-4501,-4504,-4506,-4506,-4505,-4503,-4501,-4497,-4494,-4490,-4486,-4483,
+-4480,-4478,-4476,-4475,-4475,-4476,-4478,-4481,-4485,-4490,-4496,-4503,-4510,-4517,-4525,-4533,-4542,-4550,-4557,-4565,
+-4572,-4579,-4585,-4590,-4595,-4598,-4602,-4604,-4606,-4607,-4607,-4607,-4607,-4606,-4605,-4603,-4602,-4600,-4598,-4597,
+-4595,-4593,-4592,-4590,-4589,-4587,-4586,-4584,-4583,-4581,-4578,-4576,-4573,-4569,-4565,-4560,-4555,-4549,-4542,-4534,
+-4526,-4517,-4507,-4496,-4485,-4474,-4461,-4449,-4436,-4423,-4409,-4396,-4382,-4368,-4354,-4340,-4326,-4312,-4297,-4282,
+-4268,-4252,-4237,-4221,-4204,-4188,-4170,-4152,-4134,-4114,-4095,-4075,-4054,-4033,-4012,-3991,-3970,-3949,-3928,-3908,
+-3887,-3868,-3849,-3831,-3814,-3797,-3781,-3766,-3751,-3737,-3724,-3710,-3698,-3685,-3672,-3659,-3646,-3632,-3618,-3603,
+-3587,-3571,-3553,-3535,-3516,-3495,-3474,-3452,-3428,-3404,-3379,-3353,-3326,-3299,-3270,-3242,-3212,-3182,-3152,-3121,
+-3090,-3059,-3027,-2996,-2965,-2934,-2904,-2874,-2845,-2817,-2790,-2765,-2741,-2719,-2699,-2682,-2666,-2653,-2642,-2634,
+-2628,-2625,-2624,-2625,-2628,-2632,-2638,-2646,-2654,-2662,-2671,-2679,-2687,-2694,-2700,-2705,-2708,-2709,-2708,-2706,
+-2701,-2694,-2686,-2675,-2663,-2649,-2635,-2619,-2602,-2585,-2568,-2551,-2535,-2519,-2505,-2491,-2479,-2468,-2459,-2452,
+-2446,-2442,-2440,-2439,-2440,-2442,-2444,-2448,-2452,-2457,-2462,-2467,-2472,-2476,-2480,-2482,-2484,-2485,-2485,-2484,
+-2481,-2477,-2472,-2467,-2460,-2452,-2444,-2435,-2425,-2415,-2405,-2395,-2385,-2375,-2366,-2357,-2348,-2340,-2332,-2325,
+-2319,-2313,-2307,-2302,-2297,-2293,-2288,-2284,-2280,-2275,-2271,-2266,-2261,-2256,-2250,-2243,-2236,-2229,-2221,-2212,
+-2202,-2192,-2182,-2170,-2159,-2146,-2134,-2121,-2107,-2093,-2079,-2065,-2051,-2036,-2022,-2007,-1993,-1979,-1965,-1951,
+-1937,-1923,-1910,-1897,-1884,-1871,-1859,-1846,-1834,-1822,-1810,-1798,-1786,-1773,-1761,-1749,-1737,-1724,-1711,-1698,
+-1685,-1671,-1657,-1643,-1628,-1613,-1598,-1582,-1567,-1551,-1534,-1518,-1501,-1485,-1468,-1451,-1434,-1417,-1400,-1383,
+-1365,-1348,-1331,-1314,-1297,-1280,-1263,-1245,-1228,-1211,-1194,-1177,-1160,-1143,-1126,-1109,-1092,-1076,-1060,-1044,
+-1028,-1012,-997,-982,-967,-953,-938,-924,-911,-897,-884,-871,-857,-844,-831,-818,-805,-791,-777,-764,
+-750,-736,-722,-708,-694,-680,-666,-756,-744,-732,-720,-709,-697,-686,-675,-664,-654,-644,-635,-627,
+-619,-612,-606,-601,-596,-592,-589,-587,-585,-584,-583,-582,-581,-580,-580,-578,-576,-574,-570,-565,
+-559,-552,-543,-532,-520,-505,-489,-470,-450,-428,-403,-377,-349,-320,-289,-257,-224,-190,-157,-123,
+-89,-56,-24,6,36,63,88,111,131,149,163,173,181,184,185,182,175,165,152,136,
+118,97,74,49,23,-4,-31,-59,-87,-114,-139,-164,-186,-206,-224,-239,-252,-261,-267,-270,
+-270,-267,-261,-252,-241,-227,-212,-195,-177,-158,-138,-118,-98,-78,-60,-42,-26,-11,1,13,
+22,30,37,41,45,46,47,46,45,43,41,38,36,33,31,29,28,27,26,25,
+25,25,24,24,22,20,18,14,8,2,-6,-16,-29,-43,-59,-77,-98,-120,-144,-169,
+-196,-224,-253,-282,-313,-343,-374,-404,-434,-464,-493,-521,-549,-576,-602,-628,-653,-678,-702,-726,
+-750,-774,-798,-822,-847,-872,-898,-925,-952,-979,-1008,-1037,-1066,-1096,-1126,-1157,-1187,-1218,-1249,-1280,
+-1310,-1341,-1371,-1401,-1432,-1461,-1491,-1521,-1551,-1581,-1612,-1643,-1674,-1706,-1738,-1771,-1805,-1839,-1874,-1910,
+-1946,-1982,-2019,-2056,-2093,-2131,-2167,-2204,-2240,-2276,-2311,-2346,-2380,-2413,-2446,-2478,-2510,-2541,-2573,-2604,
+-2635,-2667,-2699,-2732,-2766,-2800,-2836,-2872,-2910,-2948,-2988,-3028,-3069,-3111,-3153,-3195,-3236,-3277,-3318,-3357,
+-3394,-3430,-3464,-3496,-3525,-3552,-3576,-3597,-3615,-3631,-3645,-3656,-3664,-3671,-3677,-3681,-3684,-3686,-3688,-3691,
+-3693,-3696,-3701,-3706,-3713,-3721,-3731,-3742,-3755,-3769,-3784,-3801,-3818,-3836,-3854,-3872,-3890,-3907,-3922,-3937,
+-3949,-3960,-3969,-3975,-3978,-3979,-3977,-3973,-3967,-3958,-3946,-3933,-3919,-3903,-3886,-3869,-3852,-3835,-3819,-3804,
+-3791,-3779,-3770,-3763,-3758,-3757,-3758,-3763,-3770,-3781,-3794,-3810,-3829,-3850,-3873,-3898,-3925,-3953,-3981,-4010,
+-4039,-4068,-4097,-4125,-4151,-4177,-4201,-4223,-4244,-4263,-4280,-4296,-4309,-4321,-4331,-4340,-4347,-4353,-4358,-4362,
+-4365,-4367,-4369,-4371,-4373,-4374,-4376,-4378,-4380,-4382,-4385,-4388,-4391,-4395,-4399,-4403,-4408,-4412,-4417,-4421,
+-4425,-4430,-4434,-4437,-4441,-4444,-4446,-4448,-4450,-4451,-4452,-4452,-4452,-4451,-4450,-4449,-4447,-4445,-4443,-4441,
+-4439,-4436,-4433,-4431,-4428,-4425,-4422,-4419,-4415,-4412,-4408,-4405,-4401,-4396,-4392,-4387,-4381,-4376,-4370,-4363,
+-4357,-4350,-4342,-4334,-4326,-4318,-4309,-4300,-4291,-4281,-4271,-4261,-4251,-4241,-4230,-4220,-4209,-4197,-4186,-4174,
+-4162,-4149,-4136,-4122,-4108,-4094,-4078,-4062,-4046,-4028,-4011,-3992,-3973,-3953,-3933,-3913,-3892,-3871,-3850,-3829,
+-3808,-3788,-3767,-3747,-3728,-3708,-3690,-3672,-3654,-3638,-3622,-3606,-3591,-3576,-3562,-3549,-3535,-3522,-3509,-3495,
+-3482,-3468,-3455,-3440,-3426,-3410,-3395,-3378,-3360,-3342,-3323,-3303,-3282,-3260,-3236,-3212,-3187,-3161,-3134,-3105,
+-3076,-3046,-3016,-2985,-2953,-2921,-2889,-2856,-2824,-2792,-2761,-2731,-2701,-2673,-2646,-2621,-2598,-2576,-2557,-2540,
+-2525,-2513,-2503,-2495,-2490,-2487,-2487,-2488,-2491,-2496,-2503,-2510,-2518,-2527,-2537,-2546,-2556,-2565,-2573,-2581,
+-2588,-2593,-2598,-2601,-2602,-2602,-2601,-2599,-2595,-2590,-2583,-2576,-2568,-2559,-2550,-2540,-2529,-2519,-2509,-2498,
+-2488,-2478,-2468,-2459,-2450,-2441,-2433,-2425,-2417,-2410,-2403,-2397,-2390,-2384,-2378,-2371,-2365,-2359,-2353,-2347,
+-2341,-2334,-2328,-2322,-2316,-2310,-2304,-2298,-2293,-2288,-2283,-2278,-2274,-2270,-2266,-2263,-2260,-2257,-2255,-2253,
+-2251,-2249,-2247,-2246,-2244,-2242,-2240,-2237,-2234,-2231,-2227,-2223,-2218,-2213,-2207,-2200,-2193,-2185,-2177,-2168,
+-2159,-2149,-2139,-2129,-2118,-2107,-2096,-2085,-2073,-2062,-2051,-2040,-2029,-2018,-2007,-1997,-1986,-1976,-1966,-1956,
+-1946,-1937,-1927,-1917,-1908,-1898,-1888,-1878,-1867,-1857,-1846,-1835,-1823,-1811,-1799,-1787,-1774,-1760,-1746,-1732,
+-1718,-1703,-1688,-1673,-1657,-1641,-1626,-1610,-1594,-1578,-1562,-1546,-1530,-1514,-1499,-1483,-1468,-1453,-1437,-1422,
+-1408,-1393,-1378,-1363,-1348,-1333,-1318,-1303,-1288,-1272,-1257,-1241,-1225,-1210,-1194,-1178,-1161,-1145,-1129,-1113,
+-1097,-1082,-1066,-1051,-1036,-1021,-1007,-993,-979,-966,-953,-940,-928,-916,-904,-893,-881,-870,-859,-848,
+-836,-825,-814,-803,-791,-779,-768,-756,-854,-843,-832,-821,-809,-797,-784,-772,-759,-746,-733,-720,
+-708,-695,-683,-672,-661,-650,-640,-631,-623,-615,-609,-603,-597,-593,-589,-586,-583,-581,-578,-576,
+-574,-571,-568,-565,-561,-556,-549,-542,-533,-523,-512,-499,-484,-468,-451,-432,-412,-391,-369,-346,
+-323,-299,-276,-252,-229,-206,-185,-165,-146,-130,-115,-102,-92,-84,-79,-76,-76,-79,-84,-91,
+-101,-113,-126,-141,-158,-175,-193,-212,-230,-248,-265,-282,-297,-310,-322,-332,-340,-345,-348,-349,
+-347,-343,-337,-329,-318,-307,-294,-279,-264,-248,-233,-217,-201,-186,-171,-158,-146,-136,-126,-119,
+-113,-109,-106,-105,-106,-108,-111,-115,-120,-126,-133,-139,-146,-153,-160,-167,-174,-180,-186,-191,
+-196,-201,-205,-209,-213,-218,-222,-227,-232,-238,-245,-253,-261,-271,-282,-295,-308,-324,-340,-358,
+-376,-396,-417,-439,-462,-486,-510,-534,-559,-584,-609,-634,-659,-684,-708,-733,-757,-781,-804,-828,
+-851,-874,-897,-920,-943,-966,-990,-1013,-1037,-1061,-1085,-1109,-1134,-1159,-1185,-1211,-1237,-1263,-1290,-1317,
+-1344,-1372,-1400,-1428,-1456,-1485,-1514,-1543,-1573,-1603,-1633,-1663,-1694,-1725,-1756,-1788,-1820,-1852,-1884,-1917,
+-1949,-1982,-2014,-2046,-2079,-2111,-2142,-2174,-2205,-2236,-2266,-2296,-2326,-2355,-2384,-2413,-2441,-2470,-2499,-2528,
+-2557,-2586,-2616,-2646,-2677,-2709,-2741,-2774,-2807,-2841,-2876,-2911,-2947,-2983,-3019,-3055,-3090,-3125,-3160,-3193,
+-3225,-3256,-3286,-3314,-3340,-3364,-3386,-3407,-3425,-3442,-3457,-3470,-3481,-3491,-3500,-3508,-3515,-3522,-3528,-3534,
+-3541,-3548,-3555,-3563,-3572,-3582,-3593,-3604,-3617,-3630,-3644,-3659,-3674,-3689,-3704,-3718,-3732,-3744,-3756,-3766,
+-3774,-3780,-3784,-3786,-3785,-3782,-3776,-3767,-3756,-3743,-3727,-3710,-3691,-3670,-3649,-3626,-3604,-3581,-3559,-3538,
+-3518,-3500,-3484,-3470,-3459,-3451,-3446,-3444,-3445,-3450,-3458,-3470,-3485,-3503,-3524,-3547,-3573,-3602,-3632,-3664,
+-3697,-3732,-3766,-3801,-3836,-3871,-3904,-3937,-3969,-4000,-4029,-4056,-4082,-4106,-4128,-4148,-4166,-4183,-4198,-4211,
+-4223,-4233,-4242,-4249,-4256,-4262,-4267,-4271,-4275,-4278,-4281,-4283,-4286,-4288,-4290,-4293,-4295,-4297,-4299,-4301,
+-4303,-4305,-4307,-4309,-4311,-4312,-4313,-4314,-4315,-4316,-4316,-4316,-4316,-4315,-4314,-4312,-4311,-4309,-4306,-4304,
+-4301,-4297,-4294,-4290,-4286,-4282,-4277,-4273,-4268,-4263,-4257,-4252,-4246,-4240,-4234,-4228,-4222,-4215,-4209,-4202,
+-4195,-4188,-4181,-4173,-4166,-4158,-4151,-4143,-4135,-4127,-4120,-4112,-4104,-4095,-4087,-4079,-4070,-4061,-4053,-4043,
+-4034,-4024,-4014,-4003,-3992,-3981,-3969,-3956,-3943,-3929,-3915,-3900,-3885,-3869,-3852,-3835,-3818,-3800,-3782,-3764,
+-3745,-3727,-3708,-3689,-3671,-3652,-3634,-3616,-3599,-3582,-3565,-3549,-3533,-3518,-3504,-3490,-3476,-3463,-3451,-3439,
+-3427,-3416,-3404,-3393,-3383,-3372,-3361,-3350,-3338,-3326,-3314,-3301,-3288,-3274,-3259,-3243,-3226,-3208,-3189,-3169,
+-3148,-3125,-3102,-3077,-3051,-3024,-2996,-2968,-2938,-2908,-2878,-2847,-2816,-2785,-2755,-2724,-2695,-2666,-2639,-2612,
+-2587,-2564,-2542,-2522,-2503,-2487,-2473,-2461,-2451,-2443,-2436,-2432,-2430,-2429,-2429,-2431,-2435,-2439,-2444,-2450,
+-2456,-2462,-2469,-2475,-2482,-2487,-2493,-2497,-2501,-2504,-2506,-2507,-2507,-2505,-2503,-2499,-2495,-2489,-2482,-2475,
+-2466,-2456,-2446,-2435,-2423,-2410,-2398,-2384,-2371,-2357,-2343,-2329,-2315,-2301,-2287,-2274,-2261,-2248,-2236,-2225,
+-2214,-2204,-2195,-2187,-2180,-2174,-2168,-2164,-2161,-2158,-2157,-2156,-2157,-2158,-2159,-2162,-2165,-2168,-2172,-2176,
+-2180,-2184,-2189,-2192,-2196,-2199,-2202,-2204,-2205,-2206,-2206,-2205,-2203,-2200,-2197,-2193,-2187,-2181,-2175,-2167,
+-2159,-2151,-2142,-2132,-2123,-2113,-2103,-2093,-2083,-2072,-2062,-2053,-2043,-2033,-2024,-2015,-2006,-1997,-1989,-1980,
+-1972,-1964,-1955,-1947,-1938,-1929,-1920,-1910,-1901,-1890,-1880,-1869,-1857,-1845,-1833,-1819,-1806,-1792,-1778,-1763,
+-1748,-1733,-1717,-1702,-1686,-1670,-1655,-1639,-1624,-1609,-1594,-1579,-1565,-1551,-1537,-1523,-1510,-1497,-1485,-1472,
+-1460,-1448,-1436,-1424,-1411,-1399,-1387,-1374,-1361,-1348,-1335,-1321,-1307,-1293,-1278,-1263,-1248,-1232,-1216,-1201,
+-1185,-1169,-1153,-1138,-1122,-1107,-1092,-1078,-1064,-1050,-1037,-1024,-1012,-1000,-989,-979,-968,-958,-949,-939,
+-930,-921,-912,-903,-893,-884,-874,-864,-854,-960,-950,-940,-930,-919,-908,-896,-884,-872,-859,-846,
+-833,-820,-807,-794,-781,-769,-757,-746,-735,-725,-715,-707,-699,-692,-686,-680,-676,-672,-669,-666,
+-664,-662,-660,-659,-657,-655,-653,-650,-647,-643,-638,-632,-625,-617,-608,-598,-587,-574,-561,-546,
+-531,-514,-498,-480,-463,-445,-427,-410,-393,-377,-362,-347,-334,-322,-312,-303,-296,-290,-286,-284,
+-283,-284,-286,-289,-294,-300,-306,-313,-320,-328,-336,-343,-350,-357,-363,-368,-372,-375,-376,-377,
+-376,-374,-371,-366,-361,-354,-347,-339,-331,-322,-313,-305,-296,-288,-280,-274,-268,-262,-259,-256,
+-254,-254,-255,-257,-260,-264,-270,-276,-283,-291,-300,-309,-319,-329,-338,-348,-358,-368,-378,-387,
+-396,-405,-413,-421,-429,-437,-444,-452,-460,-467,-475,-483,-491,-500,-510,-520,-530,-541,-553,-566,
+-579,-593,-608,-624,-640,-657,-674,-692,-710,-729,-748,-768,-788,-808,-828,-849,-869,-890,-910,-931,
+-952,-973,-994,-1015,-1037,-1058,-1080,-1101,-1123,-1146,-1168,-1191,-1214,-1238,-1261,-1285,-1310,-1335,-1360,-1385,
+-1411,-1438,-1464,-1491,-1518,-1546,-1573,-1601,-1629,-1657,-1686,-1714,-1743,-1772,-1800,-1829,-1857,-1886,-1914,-1942,
+-1970,-1998,-2026,-2053,-2080,-2107,-2133,-2159,-2185,-2211,-2237,-2262,-2287,-2313,-2338,-2363,-2388,-2414,-2440,-2466,
+-2492,-2519,-2547,-2574,-2603,-2632,-2661,-2691,-2722,-2753,-2784,-2816,-2847,-2879,-2911,-2943,-2975,-3006,-3036,-3066,
+-3095,-3123,-3150,-3176,-3200,-3223,-3245,-3265,-3284,-3302,-3318,-3333,-3347,-3360,-3372,-3382,-3393,-3402,-3412,-3421,
+-3430,-3438,-3447,-3457,-3466,-3476,-3487,-3498,-3509,-3521,-3533,-3545,-3557,-3569,-3582,-3594,-3605,-3616,-3626,-3634,
+-3642,-3649,-3653,-3657,-3658,-3658,-3656,-3652,-3647,-3639,-3630,-3620,-3608,-3595,-3581,-3566,-3551,-3535,-3520,-3505,
+-3491,-3477,-3465,-3454,-3445,-3437,-3432,-3429,-3428,-3429,-3433,-3440,-3449,-3460,-3474,-3490,-3509,-3529,-3551,-3575,
+-3600,-3626,-3653,-3681,-3709,-3737,-3765,-3793,-3821,-3848,-3874,-3899,-3923,-3945,-3967,-3987,-4006,-4023,-4039,-4053,
+-4066,-4078,-4089,-4098,-4106,-4114,-4120,-4126,-4131,-4135,-4139,-4142,-4145,-4148,-4150,-4153,-4155,-4157,-4159,-4161,
+-4164,-4166,-4168,-4170,-4172,-4174,-4176,-4178,-4180,-4182,-4183,-4185,-4186,-4187,-4187,-4188,-4187,-4187,-4186,-4185,
+-4184,-4182,-4179,-4177,-4174,-4170,-4166,-4162,-4157,-4152,-4147,-4141,-4135,-4128,-4122,-4115,-4107,-4100,-4092,-4084,
+-4075,-4067,-4058,-4050,-4041,-4032,-4023,-4014,-4005,-3996,-3987,-3978,-3969,-3960,-3951,-3942,-3933,-3924,-3915,-3906,
+-3897,-3888,-3879,-3870,-3861,-3851,-3842,-3832,-3822,-3812,-3801,-3791,-3780,-3769,-3757,-3746,-3734,-3721,-3709,-3696,
+-3683,-3670,-3657,-3644,-3630,-3617,-3604,-3591,-3577,-3565,-3552,-3539,-3527,-3515,-3503,-3492,-3481,-3470,-3460,-3450,
+-3441,-3432,-3423,-3414,-3406,-3398,-3390,-3382,-3374,-3366,-3357,-3349,-3340,-3331,-3321,-3311,-3300,-3288,-3275,-3261,
+-3247,-3231,-3214,-3195,-3176,-3155,-3133,-3110,-3086,-3060,-3034,-3006,-2978,-2949,-2919,-2889,-2858,-2828,-2797,-2766,
+-2736,-2706,-2677,-2648,-2621,-2595,-2570,-2546,-2524,-2503,-2484,-2467,-2452,-2438,-2426,-2416,-2407,-2401,-2395,-2391,
+-2389,-2388,-2388,-2389,-2390,-2393,-2396,-2399,-2402,-2406,-2409,-2413,-2416,-2418,-2420,-2421,-2422,-2421,-2420,-2418,
+-2415,-2410,-2405,-2399,-2392,-2384,-2375,-2365,-2355,-2344,-2333,-2321,-2308,-2296,-2283,-2271,-2258,-2246,-2234,-2223,
+-2212,-2202,-2193,-2184,-2176,-2170,-2164,-2159,-2156,-2153,-2151,-2150,-2151,-2152,-2153,-2156,-2159,-2163,-2167,-2171,
+-2175,-2180,-2185,-2189,-2193,-2197,-2200,-2203,-2205,-2207,-2207,-2207,-2206,-2205,-2202,-2199,-2195,-2190,-2185,-2179,
+-2172,-2165,-2157,-2149,-2140,-2131,-2122,-2113,-2104,-2095,-2086,-2077,-2068,-2059,-2050,-2041,-2033,-2024,-2016,-2008,
+-2000,-1991,-1983,-1975,-1966,-1958,-1949,-1939,-1930,-1920,-1910,-1899,-1888,-1876,-1864,-1852,-1839,-1826,-1813,-1799,
+-1785,-1771,-1757,-1743,-1729,-1715,-1701,-1687,-1673,-1659,-1646,-1633,-1621,-1608,-1596,-1585,-1573,-1562,-1552,-1541,
+-1530,-1520,-1510,-1499,-1489,-1478,-1468,-1457,-1446,-1434,-1422,-1410,-1397,-1384,-1371,-1357,-1343,-1328,-1314,-1299,
+-1284,-1269,-1253,-1238,-1223,-1208,-1194,-1180,-1166,-1152,-1139,-1127,-1115,-1103,-1092,-1082,-1072,-1062,-1053,-1044,
+-1035,-1027,-1019,-1011,-1003,-995,-986,-978,-969,-960,-1082,-1074,-1065,-1056,-1047,-1038,-1028,-1018,-1008,-998,
+-988,-977,-966,-956,-945,-935,-925,-915,-905,-896,-887,-879,-871,-864,-857,-851,-846,-841,-836,-832,
+-828,-825,-822,-819,-816,-813,-810,-806,-802,-798,-794,-788,-782,-776,-768,-760,-751,-741,-730,-718,
+-705,-692,-678,-663,-648,-633,-617,-601,-585,-570,-554,-539,-525,-511,-498,-485,-474,-464,-454,-446,
+-439,-433,-429,-425,-423,-421,-421,-421,-422,-424,-426,-429,-432,-436,-439,-443,-446,-449,-452,-455,
+-457,-459,-461,-462,-462,-462,-462,-461,-460,-459,-458,-456,-455,-453,-452,-451,-450,-449,-449,-450,
+-451,-452,-454,-457,-460,-464,-469,-474,-480,-487,-494,-501,-509,-517,-526,-534,-544,-553,-562,-572,
+-581,-591,-600,-610,-620,-629,-639,-649,-659,-669,-679,-689,-699,-710,-721,-732,-743,-755,-767,-779,
+-791,-804,-818,-831,-845,-860,-875,-890,-905,-921,-936,-953,-969,-986,-1003,-1020,-1037,-1054,-1072,-1090,
+-1108,-1126,-1144,-1162,-1181,-1200,-1219,-1239,-1258,-1278,-1298,-1319,-1340,-1361,-1382,-1404,-1426,-1448,-1471,-1494,
+-1517,-1541,-1565,-1589,-1613,-1638,-1662,-1687,-1712,-1737,-1762,-1787,-1812,-1837,-1861,-1886,-1910,-1935,-1959,-1983,
+-2006,-2030,-2053,-2076,-2099,-2121,-2144,-2166,-2188,-2210,-2232,-2254,-2276,-2298,-2321,-2343,-2366,-2389,-2412,-2436,
+-2461,-2485,-2511,-2536,-2563,-2589,-2617,-2644,-2672,-2701,-2729,-2758,-2787,-2816,-2845,-2874,-2903,-2932,-2960,-2987,
+-3014,-3040,-3065,-3090,-3113,-3136,-3157,-3177,-3197,-3215,-3232,-3248,-3263,-3277,-3290,-3303,-3315,-3326,-3336,-3346,
+-3356,-3365,-3375,-3384,-3393,-3403,-3412,-3422,-3432,-3442,-3452,-3463,-3473,-3484,-3495,-3506,-3518,-3528,-3539,-3550,
+-3560,-3570,-3579,-3588,-3596,-3603,-3609,-3615,-3620,-3624,-3627,-3629,-3631,-3632,-3632,-3631,-3631,-3629,-3628,-3626,
+-3624,-3622,-3621,-3619,-3618,-3618,-3618,-3619,-3621,-3623,-3627,-3631,-3637,-3643,-3650,-3658,-3667,-3677,-3688,-3699,
+-3711,-3723,-3736,-3749,-3763,-3776,-3789,-3803,-3816,-3828,-3841,-3853,-3864,-3875,-3886,-3895,-3904,-3913,-3921,-3928,
+-3934,-3940,-3946,-3950,-3955,-3959,-3963,-3966,-3969,-3972,-3975,-3978,-3980,-3983,-3986,-3989,-3992,-3995,-3999,-4002,
+-4006,-4010,-4014,-4019,-4023,-4027,-4032,-4037,-4041,-4046,-4051,-4055,-4060,-4064,-4068,-4071,-4075,-4078,-4081,-4083,
+-4085,-4086,-4087,-4087,-4087,-4086,-4085,-4083,-4081,-4078,-4074,-4070,-4065,-4060,-4054,-4047,-4040,-4033,-4025,-4016,
+-4007,-3998,-3989,-3979,-3968,-3958,-3947,-3936,-3925,-3914,-3903,-3891,-3880,-3869,-3857,-3846,-3835,-3824,-3813,-3802,
+-3792,-3781,-3771,-3761,-3751,-3741,-3732,-3723,-3714,-3705,-3696,-3688,-3679,-3671,-3663,-3654,-3646,-3638,-3631,-3623,
+-3615,-3607,-3599,-3591,-3584,-3576,-3568,-3560,-3552,-3545,-3537,-3529,-3522,-3514,-3506,-3499,-3491,-3484,-3476,-3469,
+-3462,-3454,-3447,-3440,-3433,-3426,-3419,-3411,-3404,-3396,-3389,-3381,-3373,-3364,-3355,-3345,-3335,-3325,-3314,-3302,
+-3289,-3275,-3261,-3245,-3229,-3211,-3193,-3173,-3153,-3131,-3109,-3085,-3060,-3035,-3009,-2982,-2954,-2926,-2898,-2869,
+-2840,-2811,-2782,-2753,-2724,-2696,-2668,-2642,-2616,-2591,-2567,-2544,-2523,-2503,-2484,-2467,-2451,-2437,-2424,-2413,
+-2403,-2395,-2388,-2382,-2378,-2375,-2373,-2372,-2371,-2372,-2373,-2375,-2377,-2379,-2382,-2385,-2387,-2390,-2392,-2393,
+-2395,-2396,-2396,-2396,-2395,-2393,-2391,-2388,-2385,-2380,-2376,-2371,-2365,-2359,-2352,-2345,-2338,-2331,-2324,-2316,
+-2309,-2302,-2295,-2289,-2282,-2276,-2271,-2266,-2261,-2257,-2254,-2251,-2248,-2246,-2245,-2243,-2242,-2242,-2241,-2241,
+-2241,-2241,-2241,-2241,-2241,-2240,-2240,-2239,-2237,-2236,-2233,-2231,-2228,-2224,-2220,-2215,-2210,-2205,-2199,-2193,
+-2186,-2179,-2172,-2164,-2157,-2149,-2141,-2132,-2124,-2116,-2108,-2100,-2092,-2084,-2076,-2068,-2061,-2053,-2045,-2038,
+-2030,-2023,-2015,-2008,-2000,-1992,-1984,-1976,-1967,-1959,-1950,-1941,-1931,-1921,-1911,-1901,-1890,-1880,-1868,-1857,
+-1846,-1834,-1822,-1811,-1799,-1787,-1775,-1763,-1752,-1740,-1729,-1717,-1706,-1695,-1685,-1674,-1664,-1653,-1643,-1633,
+-1623,-1613,-1603,-1593,-1583,-1573,-1562,-1552,-1541,-1530,-1519,-1507,-1495,-1483,-1471,-1458,-1445,-1432,-1419,-1405,
+-1392,-1378,-1364,-1351,-1337,-1323,-1310,-1297,-1284,-1271,-1259,-1247,-1236,-1225,-1214,-1204,-1195,-1185,-1176,-1168,
+-1159,-1151,-1143,-1136,-1128,-1121,-1113,-1105,-1098,-1090,-1082,-1219,-1212,-1204,-1196,-1189,-1181,-1173,-1165,-1157,
+-1148,-1140,-1132,-1124,-1116,-1108,-1100,-1092,-1085,-1077,-1070,-1063,-1057,-1050,-1044,-1038,-1032,-1027,-1022,-1017,
+-1012,-1007,-1003,-998,-993,-989,-984,-979,-973,-968,-962,-956,-949,-942,-934,-926,-917,-908,-898,-887,
+-876,-865,-853,-841,-828,-815,-802,-789,-775,-762,-749,-736,-724,-711,-700,-688,-678,-668,-659,-651,
+-643,-636,-631,-626,-622,-619,-617,-616,-615,-616,-617,-619,-621,-624,-627,-631,-635,-639,-644,-648,
+-653,-657,-662,-666,-670,-674,-678,-682,-685,-688,-691,-693,-696,-698,-700,-701,-703,-704,-706,-707,
+-709,-710,-712,-713,-715,-717,-720,-722,-725,-728,-732,-735,-739,-744,-749,-754,-760,-766,-772,-779,
+-786,-793,-801,-809,-818,-827,-836,-845,-855,-866,-876,-887,-898,-910,-921,-933,-946,-958,-971,-984,
+-998,-1011,-1025,-1039,-1053,-1067,-1081,-1096,-1111,-1125,-1140,-1155,-1170,-1185,-1201,-1216,-1231,-1247,-1262,-1278,
+-1294,-1309,-1325,-1341,-1358,-1374,-1391,-1407,-1424,-1441,-1459,-1476,-1494,-1512,-1530,-1549,-1568,-1587,-1606,-1626,
+-1645,-1665,-1686,-1706,-1727,-1748,-1769,-1790,-1811,-1832,-1853,-1874,-1895,-1917,-1938,-1959,-1980,-2000,-2021,-2041,
+-2062,-2082,-2102,-2122,-2141,-2161,-2181,-2200,-2220,-2239,-2258,-2278,-2298,-2317,-2337,-2357,-2378,-2398,-2419,-2440,
+-2462,-2484,-2506,-2528,-2551,-2575,-2598,-2622,-2646,-2671,-2695,-2720,-2745,-2770,-2795,-2820,-2845,-2869,-2893,-2917,
+-2941,-2964,-2986,-3008,-3029,-3050,-3070,-3089,-3107,-3125,-3142,-3158,-3173,-3188,-3201,-3215,-3227,-3239,-3251,-3262,
+-3273,-3283,-3294,-3304,-3314,-3324,-3333,-3343,-3354,-3364,-3374,-3385,-3396,-3407,-3419,-3430,-3443,-3455,-3467,-3480,
+-3493,-3506,-3519,-3532,-3545,-3558,-3570,-3583,-3596,-3608,-3620,-3632,-3643,-3654,-3664,-3674,-3684,-3693,-3702,-3711,
+-3719,-3726,-3733,-3740,-3746,-3753,-3758,-3764,-3769,-3773,-3778,-3782,-3786,-3790,-3794,-3797,-3800,-3803,-3806,-3809,
+-3811,-3813,-3816,-3817,-3819,-3820,-3822,-3823,-3824,-3824,-3825,-3825,-3825,-3825,-3825,-3825,-3824,-3824,-3823,-3823,
+-3822,-3822,-3821,-3821,-3821,-3821,-3822,-3822,-3823,-3824,-3826,-3828,-3830,-3833,-3836,-3839,-3843,-3847,-3852,-3857,
+-3862,-3868,-3874,-3880,-3887,-3894,-3900,-3908,-3915,-3922,-3929,-3936,-3943,-3950,-3957,-3964,-3970,-3976,-3981,-3986,
+-3991,-3995,-3999,-4002,-4004,-4006,-4008,-4008,-4008,-4007,-4006,-4004,-4001,-3998,-3994,-3989,-3983,-3977,-3971,-3963,
+-3955,-3947,-3938,-3929,-3919,-3908,-3898,-3886,-3875,-3863,-3852,-3840,-3827,-3815,-3803,-3790,-3778,-3766,-3754,-3742,
+-3730,-3718,-3707,-3696,-3685,-3675,-3664,-3654,-3645,-3635,-3627,-3618,-3610,-3602,-3594,-3586,-3579,-3572,-3566,-3559,
+-3553,-3547,-3541,-3535,-3529,-3524,-3518,-3513,-3507,-3501,-3496,-3490,-3484,-3479,-3473,-3466,-3460,-3454,-3447,-3441,
+-3434,-3427,-3420,-3413,-3405,-3397,-3389,-3381,-3372,-3364,-3355,-3345,-3336,-3326,-3315,-3304,-3293,-3281,-3269,-3257,
+-3244,-3230,-3216,-3201,-3186,-3170,-3153,-3136,-3118,-3100,-3081,-3061,-3041,-3020,-2999,-2977,-2955,-2933,-2910,-2887,
+-2864,-2840,-2817,-2794,-2770,-2747,-2724,-2702,-2680,-2659,-2638,-2618,-2598,-2580,-2562,-2546,-2530,-2515,-2501,-2489,
+-2477,-2467,-2457,-2449,-2442,-2436,-2430,-2426,-2423,-2420,-2418,-2417,-2416,-2416,-2416,-2417,-2418,-2419,-2421,-2422,
+-2424,-2425,-2426,-2427,-2428,-2429,-2429,-2429,-2429,-2429,-2428,-2426,-2424,-2422,-2420,-2417,-2414,-2410,-2407,-2403,
+-2399,-2394,-2390,-2385,-2381,-2376,-2371,-2367,-2362,-2357,-2353,-2348,-2344,-2340,-2335,-2331,-2327,-2323,-2319,-2315,
+-2311,-2307,-2303,-2299,-2295,-2291,-2287,-2282,-2278,-2273,-2268,-2263,-2258,-2252,-2247,-2241,-2235,-2229,-2223,-2216,
+-2210,-2203,-2197,-2190,-2183,-2176,-2169,-2163,-2156,-2149,-2142,-2135,-2129,-2122,-2116,-2109,-2103,-2096,-2090,-2083,
+-2077,-2071,-2064,-2058,-2051,-2044,-2038,-2031,-2024,-2017,-2009,-2002,-1994,-1986,-1978,-1970,-1961,-1953,-1944,-1935,
+-1925,-1916,-1907,-1897,-1887,-1877,-1868,-1858,-1848,-1838,-1828,-1818,-1808,-1798,-1788,-1778,-1768,-1759,-1749,-1739,
+-1729,-1719,-1709,-1699,-1689,-1679,-1669,-1658,-1648,-1637,-1627,-1616,-1605,-1594,-1583,-1571,-1560,-1548,-1536,-1525,
+-1513,-1501,-1489,-1477,-1466,-1454,-1443,-1431,-1420,-1409,-1398,-1387,-1377,-1367,-1357,-1348,-1338,-1329,-1320,-1312,
+-1303,-1295,-1287,-1279,-1272,-1264,-1257,-1249,-1242,-1234,-1227,-1219,-1371,-1363,-1355,-1347,-1340,-1332,-1325,-1317,
+-1310,-1302,-1295,-1288,-1280,-1273,-1266,-1260,-1253,-1246,-1240,-1234,-1228,-1222,-1216,-1211,-1205,-1200,-1194,-1189,
+-1184,-1179,-1174,-1169,-1164,-1159,-1154,-1149,-1144,-1138,-1133,-1127,-1121,-1115,-1108,-1102,-1095,-1087,-1080,-1072,
+-1064,-1056,-1047,-1039,-1030,-1021,-1012,-1003,-995,-986,-977,-968,-960,-952,-944,-936,-929,-923,-917,-911,
+-906,-901,-897,-894,-891,-889,-888,-887,-886,-887,-887,-889,-890,-893,-895,-898,-902,-905,-909,-913,
+-917,-921,-925,-930,-934,-938,-942,-946,-949,-953,-956,-959,-962,-965,-967,-969,-971,-973,-974,-976,
+-977,-978,-979,-980,-981,-982,-983,-984,-985,-987,-988,-990,-992,-994,-997,-1000,-1003,-1007,-1011,-1016,
+-1020,-1026,-1032,-1038,-1044,-1052,-1059,-1067,-1076,-1084,-1094,-1103,-1114,-1124,-1135,-1146,-1157,-1169,-1181,-1193,
+-1206,-1218,-1231,-1244,-1257,-1271,-1284,-1297,-1311,-1324,-1338,-1352,-1365,-1379,-1393,-1406,-1420,-1434,-1448,-1462,
+-1476,-1489,-1503,-1517,-1532,-1546,-1560,-1575,-1589,-1604,-1619,-1634,-1650,-1665,-1681,-1697,-1713,-1729,-1746,-1762,
+-1779,-1797,-1814,-1832,-1849,-1867,-1885,-1903,-1922,-1940,-1958,-1977,-1995,-2014,-2032,-2050,-2069,-2087,-2105,-2123,
+-2141,-2159,-2177,-2195,-2213,-2230,-2248,-2265,-2282,-2300,-2317,-2334,-2351,-2368,-2385,-2403,-2420,-2437,-2455,-2472,
+-2490,-2508,-2526,-2544,-2562,-2580,-2599,-2617,-2636,-2655,-2674,-2693,-2712,-2731,-2750,-2769,-2788,-2807,-2826,-2845,
+-2863,-2881,-2899,-2917,-2935,-2952,-2969,-2985,-3001,-3017,-3032,-3047,-3062,-3076,-3090,-3103,-3116,-3129,-3142,-3154,
+-3166,-3178,-3190,-3202,-3213,-3225,-3237,-3248,-3260,-3272,-3284,-3296,-3308,-3321,-3333,-3346,-3359,-3372,-3386,-3400,
+-3413,-3427,-3441,-3456,-3470,-3484,-3499,-3513,-3527,-3541,-3555,-3569,-3583,-3596,-3609,-3622,-3634,-3646,-3658,-3669,
+-3679,-3689,-3699,-3707,-3716,-3723,-3730,-3737,-3742,-3748,-3752,-3756,-3759,-3762,-3764,-3766,-3767,-3767,-3767,-3767,
+-3766,-3764,-3763,-3761,-3758,-3755,-3753,-3749,-3746,-3743,-3739,-3735,-3732,-3728,-3725,-3721,-3718,-3715,-3712,-3710,
+-3707,-3705,-3704,-3702,-3702,-3701,-3701,-3701,-3702,-3704,-3705,-3708,-3710,-3714,-3717,-3721,-3726,-3731,-3736,-3742,
+-3748,-3754,-3761,-3767,-3775,-3782,-3789,-3797,-3804,-3811,-3819,-3826,-3834,-3841,-3848,-3854,-3861,-3867,-3873,-3878,
+-3883,-3887,-3892,-3895,-3898,-3901,-3903,-3904,-3905,-3905,-3905,-3904,-3903,-3901,-3898,-3895,-3891,-3887,-3882,-3876,
+-3870,-3864,-3857,-3849,-3842,-3833,-3825,-3816,-3806,-3797,-3787,-3777,-3767,-3756,-3746,-3735,-3725,-3714,-3703,-3693,
+-3682,-3672,-3662,-3651,-3641,-3631,-3622,-3612,-3603,-3594,-3585,-3576,-3568,-3560,-3552,-3544,-3536,-3529,-3522,-3515,
+-3508,-3501,-3494,-3488,-3481,-3475,-3468,-3462,-3455,-3449,-3442,-3435,-3429,-3422,-3415,-3407,-3400,-3392,-3385,-3377,
+-3369,-3360,-3352,-3343,-3334,-3325,-3315,-3306,-3296,-3286,-3275,-3265,-3254,-3243,-3231,-3220,-3208,-3196,-3184,-3172,
+-3159,-3146,-3133,-3120,-3106,-3092,-3079,-3064,-3050,-3035,-3021,-3006,-2991,-2975,-2960,-2945,-2929,-2913,-2897,-2882,
+-2866,-2850,-2834,-2819,-2803,-2788,-2772,-2757,-2743,-2728,-2714,-2700,-2687,-2673,-2661,-2649,-2637,-2626,-2615,-2605,
+-2595,-2586,-2577,-2569,-2561,-2554,-2548,-2542,-2536,-2531,-2526,-2522,-2518,-2515,-2511,-2509,-2506,-2503,-2501,-2499,
+-2497,-2495,-2493,-2491,-2489,-2487,-2485,-2483,-2480,-2478,-2476,-2473,-2470,-2467,-2464,-2461,-2457,-2454,-2450,-2446,
+-2442,-2438,-2434,-2430,-2426,-2421,-2417,-2412,-2408,-2403,-2398,-2394,-2389,-2385,-2380,-2375,-2371,-2366,-2361,-2357,
+-2352,-2348,-2343,-2339,-2334,-2329,-2325,-2320,-2315,-2311,-2306,-2301,-2296,-2292,-2287,-2282,-2277,-2272,-2266,-2261,
+-2256,-2251,-2246,-2240,-2235,-2230,-2224,-2219,-2214,-2208,-2203,-2197,-2192,-2187,-2181,-2176,-2170,-2164,-2159,-2153,
+-2147,-2142,-2136,-2130,-2124,-2118,-2111,-2105,-2099,-2092,-2085,-2079,-2072,-2064,-2057,-2050,-2042,-2035,-2027,-2019,
+-2011,-2003,-1995,-1986,-1978,-1969,-1961,-1952,-1943,-1934,-1926,-1917,-1908,-1899,-1890,-1881,-1872,-1863,-1854,-1845,
+-1837,-1828,-1818,-1809,-1800,-1791,-1782,-1773,-1764,-1755,-1745,-1736,-1727,-1717,-1708,-1698,-1689,-1679,-1670,-1660,
+-1651,-1641,-1631,-1622,-1612,-1603,-1593,-1584,-1574,-1565,-1555,-1546,-1537,-1528,-1519,-1510,-1501,-1493,-1484,-1476,
+-1467,-1459,-1450,-1442,-1434,-1426,-1418,-1410,-1402,-1394,-1386,-1378,-1371,-1540,-1532,-1524,-1517,-1509,-1501,-1493,
+-1486,-1478,-1471,-1464,-1457,-1450,-1443,-1437,-1430,-1424,-1417,-1411,-1406,-1400,-1394,-1389,-1384,-1378,-1373,-1368,
+-1364,-1359,-1354,-1350,-1345,-1341,-1337,-1332,-1328,-1323,-1319,-1315,-1310,-1306,-1301,-1296,-1292,-1287,-1282,-1277,
+-1272,-1267,-1262,-1257,-1251,-1246,-1241,-1236,-1230,-1225,-1220,-1215,-1210,-1205,-1201,-1196,-1192,-1188,-1184,-1180,
+-1177,-1174,-1171,-1169,-1167,-1165,-1163,-1162,-1161,-1161,-1160,-1160,-1160,-1161,-1162,-1163,-1164,-1165,-1167,-1169,
+-1171,-1173,-1175,-1177,-1179,-1182,-1184,-1186,-1189,-1191,-1193,-1195,-1198,-1200,-1202,-1204,-1206,-1208,-1210,-1211,
+-1213,-1215,-1217,-1219,-1221,-1223,-1225,-1227,-1229,-1231,-1234,-1237,-1240,-1243,-1246,-1250,-1254,-1258,-1262,-1267,
+-1272,-1277,-1283,-1289,-1295,-1302,-1309,-1316,-1324,-1332,-1340,-1348,-1357,-1366,-1375,-1385,-1395,-1404,-1415,-1425,
+-1435,-1446,-1457,-1468,-1478,-1490,-1501,-1512,-1523,-1534,-1546,-1557,-1568,-1580,-1591,-1603,-1614,-1626,-1638,-1649,
+-1661,-1673,-1685,-1697,-1709,-1721,-1733,-1746,-1758,-1771,-1784,-1797,-1810,-1824,-1837,-1851,-1865,-1879,-1894,-1908,
+-1923,-1938,-1953,-1969,-1984,-2000,-2016,-2032,-2048,-2064,-2080,-2096,-2113,-2129,-2146,-2162,-2179,-2195,-2211,-2228,
+-2244,-2260,-2276,-2292,-2308,-2324,-2339,-2355,-2370,-2385,-2400,-2415,-2430,-2445,-2459,-2474,-2488,-2502,-2516,-2530,
+-2544,-2558,-2572,-2586,-2600,-2614,-2627,-2641,-2655,-2669,-2682,-2696,-2710,-2724,-2737,-2751,-2765,-2778,-2792,-2805,
+-2819,-2833,-2846,-2859,-2873,-2886,-2900,-2913,-2926,-2939,-2952,-2965,-2978,-2991,-3003,-3016,-3029,-3041,-3054,-3066,
+-3079,-3091,-3104,-3116,-3129,-3141,-3153,-3166,-3178,-3191,-3204,-3216,-3229,-3242,-3254,-3267,-3280,-3293,-3306,-3319,
+-3332,-3345,-3357,-3370,-3383,-3396,-3408,-3421,-3433,-3445,-3457,-3468,-3480,-3491,-3502,-3512,-3522,-3532,-3541,-3550,
+-3559,-3567,-3574,-3581,-3588,-3594,-3600,-3605,-3609,-3613,-3617,-3620,-3623,-3625,-3627,-3628,-3629,-3630,-3630,-3630,
+-3629,-3628,-3627,-3626,-3625,-3623,-3621,-3620,-3618,-3616,-3614,-3612,-3610,-3609,-3607,-3606,-3604,-3603,-3603,-3602,
+-3602,-3602,-3602,-3603,-3603,-3605,-3606,-3608,-3610,-3613,-3616,-3619,-3622,-3626,-3630,-3634,-3639,-3643,-3648,-3653,
+-3659,-3664,-3669,-3675,-3681,-3686,-3692,-3697,-3703,-3708,-3714,-3719,-3724,-3729,-3734,-3738,-3742,-3746,-3750,-3753,
+-3756,-3759,-3761,-3763,-3764,-3766,-3766,-3767,-3767,-3767,-3766,-3765,-3763,-3761,-3759,-3757,-3754,-3750,-3747,-3743,
+-3739,-3734,-3729,-3724,-3719,-3713,-3707,-3701,-3695,-3688,-3682,-3675,-3668,-3661,-3654,-3646,-3639,-3632,-3624,-3617,
+-3609,-3602,-3594,-3587,-3579,-3572,-3564,-3557,-3550,-3542,-3535,-3528,-3520,-3513,-3506,-3499,-3492,-3485,-3477,-3470,
+-3463,-3456,-3448,-3441,-3434,-3426,-3419,-3411,-3403,-3396,-3388,-3380,-3372,-3363,-3355,-3346,-3338,-3329,-3320,-3310,
+-3301,-3292,-3282,-3272,-3263,-3253,-3243,-3232,-3222,-3212,-3201,-3191,-3180,-3169,-3159,-3148,-3137,-3126,-3115,-3105,
+-3094,-3083,-3072,-3062,-3051,-3040,-3030,-3019,-3009,-2999,-2988,-2978,-2968,-2958,-2948,-2938,-2928,-2919,-2909,-2900,
+-2890,-2881,-2872,-2863,-2854,-2845,-2837,-2828,-2819,-2811,-2803,-2795,-2787,-2779,-2771,-2763,-2756,-2748,-2741,-2734,
+-2727,-2720,-2713,-2707,-2700,-2693,-2687,-2681,-2674,-2668,-2662,-2656,-2650,-2645,-2639,-2633,-2627,-2622,-2616,-2610,
+-2605,-2599,-2593,-2588,-2582,-2577,-2571,-2566,-2560,-2554,-2549,-2543,-2538,-2532,-2527,-2521,-2516,-2510,-2505,-2499,
+-2494,-2489,-2483,-2478,-2473,-2468,-2463,-2458,-2453,-2449,-2444,-2439,-2435,-2431,-2426,-2422,-2418,-2414,-2410,-2406,
+-2403,-2399,-2395,-2392,-2388,-2385,-2381,-2378,-2375,-2371,-2368,-2365,-2361,-2358,-2354,-2351,-2347,-2344,-2340,-2337,
+-2333,-2329,-2325,-2321,-2317,-2313,-2309,-2305,-2300,-2296,-2291,-2287,-2282,-2277,-2272,-2267,-2262,-2256,-2251,-2245,
+-2239,-2233,-2228,-2221,-2215,-2209,-2203,-2196,-2189,-2183,-2176,-2169,-2162,-2155,-2147,-2140,-2133,-2125,-2118,-2110,
+-2103,-2095,-2087,-2079,-2072,-2064,-2056,-2048,-2041,-2033,-2025,-2017,-2010,-2002,-1994,-1987,-1979,-1972,-1964,-1957,
+-1949,-1942,-1934,-1927,-1920,-1912,-1905,-1898,-1890,-1883,-1876,-1869,-1861,-1854,-1847,-1840,-1832,-1825,-1818,-1810,
+-1803,-1795,-1788,-1780,-1773,-1765,-1757,-1750,-1742,-1734,-1727,-1719,-1711,-1703,-1695,-1687,-1679,-1671,-1663,-1655,
+-1647,-1638,-1630,-1622,-1614,-1606,-1597,-1589,-1581,-1573,-1565,-1557,-1548,-1540,-1729,-1721,-1714,-1707,-1700,-1693,
+-1686,-1679,-1672,-1665,-1659,-1652,-1646,-1640,-1634,-1628,-1622,-1617,-1611,-1606,-1601,-1595,-1591,-1586,-1581,-1577,
+-1572,-1568,-1564,-1559,-1555,-1552,-1548,-1544,-1540,-1537,-1533,-1529,-1526,-1522,-1519,-1515,-1512,-1508,-1505,-1501,
+-1498,-1494,-1491,-1487,-1484,-1480,-1477,-1473,-1470,-1466,-1463,-1460,-1456,-1453,-1450,-1446,-1443,-1440,-1437,-1434,
+-1431,-1429,-1426,-1423,-1421,-1419,-1417,-1415,-1413,-1412,-1410,-1409,-1408,-1407,-1406,-1405,-1405,-1405,-1405,-1405,
+-1405,-1405,-1406,-1406,-1407,-1408,-1409,-1411,-1412,-1414,-1415,-1417,-1419,-1421,-1423,-1426,-1428,-1431,-1434,-1437,
+-1440,-1443,-1446,-1449,-1453,-1457,-1461,-1465,-1469,-1473,-1478,-1482,-1487,-1492,-1498,-1503,-1508,-1514,-1520,-1526,
+-1532,-1539,-1545,-1552,-1559,-1566,-1573,-1581,-1588,-1596,-1603,-1611,-1619,-1627,-1636,-1644,-1652,-1661,-1669,-1678,
+-1686,-1695,-1704,-1712,-1721,-1730,-1739,-1747,-1756,-1765,-1774,-1783,-1792,-1801,-1810,-1819,-1828,-1837,-1847,-1856,
+-1865,-1875,-1884,-1894,-1904,-1914,-1924,-1934,-1944,-1955,-1965,-1976,-1987,-1998,-2009,-2021,-2033,-2044,-2056,-2069,
+-2081,-2094,-2107,-2119,-2133,-2146,-2159,-2173,-2186,-2200,-2214,-2228,-2242,-2256,-2270,-2284,-2299,-2313,-2327,-2341,
+-2355,-2369,-2383,-2397,-2411,-2425,-2438,-2452,-2465,-2478,-2492,-2505,-2517,-2530,-2543,-2555,-2567,-2579,-2591,-2603,
+-2615,-2626,-2638,-2649,-2660,-2671,-2682,-2693,-2704,-2715,-2726,-2736,-2747,-2757,-2768,-2778,-2789,-2799,-2809,-2820,
+-2830,-2840,-2851,-2861,-2872,-2882,-2893,-2903,-2914,-2924,-2935,-2946,-2956,-2967,-2978,-2989,-3000,-3010,-3021,-3032,
+-3043,-3055,-3066,-3077,-3088,-3099,-3110,-3121,-3133,-3144,-3155,-3166,-3177,-3188,-3199,-3210,-3221,-3232,-3243,-3254,
+-3264,-3275,-3285,-3295,-3306,-3315,-3325,-3335,-3344,-3353,-3362,-3371,-3379,-3388,-3396,-3403,-3411,-3418,-3425,-3431,
+-3438,-3444,-3449,-3455,-3460,-3464,-3469,-3473,-3477,-3481,-3484,-3487,-3490,-3492,-3495,-3497,-3499,-3501,-3502,-3504,
+-3505,-3506,-3508,-3509,-3510,-3510,-3511,-3512,-3513,-3514,-3515,-3516,-3517,-3518,-3519,-3520,-3522,-3523,-3525,-3527,
+-3529,-3531,-3533,-3535,-3537,-3540,-3543,-3545,-3548,-3551,-3554,-3557,-3561,-3564,-3567,-3571,-3574,-3578,-3581,-3585,
+-3588,-3592,-3595,-3598,-3601,-3604,-3607,-3610,-3613,-3616,-3618,-3620,-3622,-3624,-3626,-3627,-3628,-3629,-3630,-3631,
+-3631,-3631,-3631,-3631,-3630,-3630,-3629,-3627,-3626,-3624,-3623,-3621,-3618,-3616,-3613,-3611,-3608,-3605,-3601,-3598,
+-3595,-3591,-3587,-3583,-3580,-3576,-3571,-3567,-3563,-3559,-3554,-3550,-3545,-3541,-3536,-3531,-3527,-3522,-3517,-3512,
+-3508,-3503,-3498,-3493,-3488,-3482,-3477,-3472,-3467,-3461,-3456,-3450,-3445,-3439,-3433,-3428,-3422,-3416,-3409,-3403,
+-3397,-3390,-3384,-3377,-3370,-3363,-3356,-3348,-3341,-3333,-3326,-3318,-3310,-3302,-3293,-3285,-3277,-3268,-3259,-3250,
+-3242,-3233,-3223,-3214,-3205,-3196,-3187,-3177,-3168,-3159,-3150,-3140,-3131,-3122,-3113,-3104,-3095,-3086,-3078,-3069,
+-3061,-3052,-3044,-3036,-3028,-3020,-3013,-3005,-2998,-2991,-2984,-2977,-2970,-2964,-2958,-2952,-2946,-2940,-2934,-2928,
+-2923,-2918,-2912,-2907,-2902,-2897,-2893,-2888,-2883,-2878,-2874,-2869,-2864,-2860,-2855,-2851,-2846,-2841,-2837,-2832,
+-2827,-2822,-2817,-2812,-2807,-2802,-2797,-2791,-2786,-2780,-2775,-2769,-2763,-2757,-2751,-2745,-2739,-2733,-2727,-2720,
+-2714,-2707,-2701,-2694,-2688,-2681,-2674,-2668,-2661,-2654,-2648,-2641,-2635,-2628,-2622,-2615,-2609,-2603,-2596,-2590,
+-2584,-2579,-2573,-2567,-2562,-2556,-2551,-2546,-2541,-2536,-2531,-2527,-2522,-2518,-2514,-2510,-2506,-2502,-2499,-2495,
+-2492,-2488,-2485,-2482,-2479,-2476,-2473,-2470,-2467,-2464,-2461,-2459,-2456,-2453,-2450,-2447,-2444,-2441,-2438,-2435,
+-2432,-2428,-2425,-2421,-2418,-2414,-2410,-2406,-2402,-2398,-2393,-2389,-2384,-2379,-2375,-2370,-2364,-2359,-2354,-2348,
+-2342,-2336,-2331,-2324,-2318,-2312,-2306,-2299,-2293,-2286,-2279,-2273,-2266,-2259,-2252,-2245,-2238,-2231,-2224,-2217,
+-2210,-2203,-2196,-2189,-2182,-2175,-2169,-2162,-2155,-2148,-2142,-2135,-2128,-2122,-2115,-2109,-2103,-2097,-2090,-2084,
+-2078,-2072,-2066,-2060,-2055,-2049,-2043,-2037,-2032,-2026,-2020,-2015,-2009,-2003,-1998,-1992,-1986,-1981,-1975,-1969,
+-1963,-1957,-1951,-1945,-1939,-1933,-1927,-1921,-1914,-1908,-1902,-1895,-1888,-1882,-1875,-1868,-1861,-1854,-1847,-1840,
+-1833,-1825,-1818,-1811,-1803,-1796,-1788,-1781,-1773,-1766,-1758,-1751,-1744,-1736,-1729,-1925,-1919,-1913,-1907,-1901,
+-1896,-1890,-1885,-1879,-1874,-1868,-1863,-1858,-1853,-1848,-1843,-1839,-1834,-1830,-1825,-1821,-1817,-1813,-1809,-1805,
+-1801,-1797,-1794,-1790,-1787,-1783,-1780,-1777,-1773,-1770,-1767,-1764,-1761,-1758,-1755,-1752,-1749,-1747,-1744,-1741,
+-1738,-1735,-1733,-1730,-1727,-1725,-1722,-1719,-1717,-1714,-1711,-1709,-1706,-1704,-1701,-1698,-1696,-1694,-1691,-1689,
+-1687,-1684,-1682,-1680,-1678,-1676,-1674,-1673,-1671,-1670,-1668,-1667,-1666,-1665,-1664,-1663,-1662,-1662,-1662,-1661,
+-1661,-1662,-1662,-1662,-1663,-1664,-1665,-1666,-1668,-1669,-1671,-1673,-1675,-1677,-1680,-1682,-1685,-1688,-1692,-1695,
+-1698,-1702,-1706,-1710,-1714,-1719,-1723,-1728,-1733,-1738,-1743,-1748,-1754,-1759,-1765,-1771,-1776,-1782,-1789,-1795,
+-1801,-1807,-1814,-1820,-1827,-1833,-1840,-1847,-1853,-1860,-1867,-1874,-1881,-1887,-1894,-1901,-1908,-1915,-1922,-1929,
+-1935,-1942,-1949,-1956,-1963,-1970,-1976,-1983,-1990,-1997,-2004,-2010,-2017,-2024,-2031,-2038,-2045,-2052,-2059,-2066,
+-2073,-2081,-2088,-2095,-2103,-2111,-2118,-2126,-2134,-2142,-2151,-2159,-2167,-2176,-2185,-2194,-2203,-2212,-2222,-2231,
+-2241,-2251,-2261,-2271,-2281,-2291,-2302,-2313,-2323,-2334,-2345,-2356,-2368,-2379,-2390,-2402,-2413,-2425,-2436,-2448,
+-2459,-2471,-2482,-2494,-2505,-2517,-2528,-2539,-2551,-2562,-2573,-2584,-2595,-2606,-2617,-2628,-2639,-2649,-2660,-2670,
+-2680,-2690,-2700,-2710,-2720,-2730,-2739,-2749,-2758,-2768,-2777,-2786,-2795,-2804,-2813,-2822,-2831,-2840,-2849,-2858,
+-2866,-2875,-2884,-2892,-2901,-2910,-2918,-2927,-2935,-2944,-2953,-2961,-2970,-2978,-2987,-2996,-3004,-3013,-3022,-3030,
+-3039,-3048,-3056,-3065,-3074,-3082,-3091,-3100,-3108,-3117,-3125,-3134,-3142,-3151,-3159,-3167,-3176,-3184,-3192,-3200,
+-3208,-3216,-3223,-3231,-3238,-3246,-3253,-3260,-3267,-3274,-3281,-3287,-3294,-3300,-3306,-3312,-3318,-3324,-3329,-3335,
+-3340,-3345,-3350,-3355,-3359,-3364,-3368,-3372,-3376,-3380,-3384,-3388,-3392,-3395,-3399,-3402,-3405,-3408,-3411,-3415,
+-3418,-3421,-3423,-3426,-3429,-3432,-3435,-3438,-3440,-3443,-3446,-3449,-3452,-3454,-3457,-3460,-3463,-3466,-3468,-3471,
+-3474,-3477,-3480,-3483,-3485,-3488,-3491,-3494,-3496,-3499,-3502,-3504,-3507,-3509,-3512,-3514,-3516,-3518,-3520,-3522,
+-3524,-3526,-3527,-3529,-3530,-3531,-3532,-3533,-3534,-3534,-3535,-3535,-3535,-3535,-3535,-3534,-3534,-3533,-3532,-3531,
+-3530,-3528,-3527,-3525,-3523,-3521,-3519,-3517,-3515,-3512,-3510,-3507,-3504,-3502,-3499,-3496,-3493,-3490,-3486,-3483,
+-3480,-3477,-3473,-3470,-3467,-3463,-3460,-3456,-3453,-3449,-3445,-3442,-3438,-3435,-3431,-3427,-3424,-3420,-3416,-3412,
+-3408,-3405,-3401,-3397,-3393,-3389,-3385,-3381,-3376,-3372,-3368,-3363,-3359,-3354,-3349,-3344,-3340,-3335,-3329,-3324,
+-3319,-3313,-3308,-3302,-3296,-3291,-3285,-3278,-3272,-3266,-3259,-3253,-3246,-3239,-3232,-3226,-3219,-3211,-3204,-3197,
+-3190,-3182,-3175,-3168,-3160,-3153,-3146,-3138,-3131,-3123,-3116,-3109,-3102,-3094,-3087,-3080,-3073,-3066,-3060,-3053,
+-3047,-3040,-3034,-3028,-3022,-3016,-3010,-3004,-2999,-2994,-2988,-2983,-2978,-2974,-2969,-2965,-2960,-2956,-2952,-2948,
+-2944,-2940,-2936,-2933,-2929,-2925,-2922,-2919,-2915,-2912,-2909,-2905,-2902,-2899,-2896,-2892,-2889,-2886,-2882,-2879,
+-2875,-2872,-2868,-2864,-2860,-2857,-2853,-2849,-2845,-2840,-2836,-2832,-2827,-2823,-2818,-2813,-2808,-2804,-2799,-2794,
+-2788,-2783,-2778,-2773,-2767,-2762,-2757,-2751,-2746,-2740,-2735,-2729,-2724,-2718,-2713,-2707,-2702,-2697,-2691,-2686,
+-2681,-2676,-2671,-2666,-2661,-2656,-2652,-2647,-2642,-2638,-2634,-2629,-2625,-2621,-2617,-2613,-2609,-2606,-2602,-2598,
+-2595,-2591,-2588,-2585,-2581,-2578,-2575,-2572,-2568,-2565,-2562,-2559,-2556,-2553,-2550,-2546,-2543,-2540,-2537,-2533,
+-2530,-2527,-2523,-2519,-2516,-2512,-2508,-2504,-2500,-2496,-2492,-2488,-2484,-2479,-2475,-2470,-2465,-2461,-2456,-2451,
+-2446,-2441,-2435,-2430,-2425,-2419,-2414,-2408,-2403,-2397,-2392,-2386,-2380,-2374,-2369,-2363,-2357,-2351,-2345,-2340,
+-2334,-2328,-2322,-2316,-2311,-2305,-2299,-2294,-2288,-2283,-2277,-2272,-2266,-2261,-2256,-2250,-2245,-2240,-2235,-2229,
+-2224,-2219,-2214,-2209,-2204,-2200,-2195,-2190,-2185,-2180,-2175,-2170,-2165,-2161,-2156,-2151,-2146,-2141,-2136,-2131,
+-2126,-2121,-2116,-2111,-2106,-2100,-2095,-2090,-2084,-2079,-2074,-2068,-2062,-2057,-2051,-2045,-2039,-2034,-2028,-2022,
+-2016,-2010,-2004,-1998,-1992,-1986,-1979,-1973,-1967,-1961,-1955,-1949,-1943,-1937,-1931,-1925,-2119,-2115,-2110,-2106,
+-2102,-2097,-2093,-2089,-2085,-2081,-2077,-2073,-2069,-2066,-2062,-2058,-2055,-2051,-2048,-2045,-2042,-2038,-2035,-2032,
+-2029,-2026,-2024,-2021,-2018,-2015,-2013,-2010,-2008,-2005,-2003,-2001,-1999,-1996,-1994,-1992,-1990,-1988,-1986,-1984,
+-1982,-1980,-1978,-1977,-1975,-1973,-1971,-1970,-1968,-1966,-1965,-1963,-1962,-1960,-1959,-1958,-1956,-1955,-1954,-1953,
+-1952,-1951,-1950,-1949,-1948,-1947,-1946,-1945,-1945,-1944,-1944,-1944,-1943,-1943,-1943,-1943,-1943,-1944,-1944,-1945,
+-1945,-1946,-1947,-1948,-1949,-1950,-1951,-1953,-1954,-1956,-1958,-1960,-1962,-1964,-1966,-1969,-1971,-1974,-1977,-1980,
+-1983,-1986,-1989,-1993,-1996,-2000,-2003,-2007,-2011,-2015,-2019,-2023,-2028,-2032,-2036,-2041,-2045,-2050,-2055,-2059,
+-2064,-2069,-2074,-2078,-2083,-2088,-2093,-2098,-2103,-2108,-2113,-2118,-2123,-2128,-2133,-2138,-2143,-2148,-2153,-2158,
+-2163,-2168,-2173,-2178,-2183,-2188,-2193,-2198,-2203,-2208,-2213,-2218,-2223,-2228,-2233,-2239,-2244,-2249,-2254,-2260,
+-2265,-2271,-2276,-2282,-2288,-2293,-2299,-2305,-2311,-2317,-2324,-2330,-2336,-2343,-2349,-2356,-2363,-2370,-2377,-2384,
+-2391,-2399,-2406,-2414,-2421,-2429,-2437,-2445,-2453,-2461,-2470,-2478,-2486,-2495,-2503,-2512,-2521,-2529,-2538,-2547,
+-2556,-2565,-2574,-2583,-2592,-2601,-2610,-2619,-2628,-2637,-2646,-2655,-2664,-2673,-2682,-2691,-2700,-2708,-2717,-2726,
+-2734,-2743,-2752,-2760,-2769,-2777,-2785,-2794,-2802,-2810,-2818,-2826,-2834,-2842,-2850,-2857,-2865,-2873,-2880,-2888,
+-2895,-2903,-2910,-2917,-2924,-2932,-2939,-2946,-2953,-2960,-2967,-2974,-2981,-2987,-2994,-3001,-3008,-3014,-3021,-3028,
+-3034,-3041,-3047,-3054,-3060,-3066,-3073,-3079,-3085,-3091,-3098,-3104,-3110,-3116,-3122,-3128,-3134,-3140,-3145,-3151,
+-3157,-3162,-3168,-3174,-3179,-3184,-3190,-3195,-3200,-3206,-3211,-3216,-3221,-3226,-3231,-3235,-3240,-3245,-3249,-3254,
+-3259,-3263,-3268,-3272,-3276,-3280,-3285,-3289,-3293,-3297,-3301,-3305,-3309,-3313,-3317,-3321,-3324,-3328,-3332,-3336,
+-3339,-3343,-3346,-3350,-3354,-3357,-3360,-3364,-3367,-3371,-3374,-3377,-3381,-3384,-3387,-3390,-3393,-3396,-3399,-3402,
+-3405,-3408,-3411,-3413,-3416,-3419,-3421,-3424,-3426,-3428,-3430,-3432,-3434,-3436,-3438,-3440,-3442,-3443,-3444,-3446,
+-3447,-3448,-3449,-3450,-3450,-3451,-3451,-3451,-3452,-3452,-3452,-3451,-3451,-3451,-3450,-3449,-3448,-3447,-3446,-3445,
+-3444,-3443,-3441,-3439,-3438,-3436,-3434,-3432,-3430,-3428,-3426,-3423,-3421,-3419,-3416,-3414,-3411,-3408,-3406,-3403,
+-3400,-3397,-3394,-3391,-3389,-3386,-3383,-3379,-3376,-3373,-3370,-3367,-3364,-3361,-3357,-3354,-3351,-3348,-3344,-3341,
+-3338,-3334,-3331,-3327,-3324,-3320,-3316,-3313,-3309,-3305,-3301,-3298,-3294,-3290,-3286,-3282,-3278,-3273,-3269,-3265,
+-3260,-3256,-3251,-3247,-3242,-3238,-3233,-3228,-3223,-3218,-3213,-3208,-3203,-3198,-3193,-3188,-3182,-3177,-3172,-3166,
+-3161,-3155,-3150,-3145,-3139,-3134,-3128,-3123,-3117,-3112,-3106,-3101,-3096,-3090,-3085,-3080,-3075,-3069,-3064,-3059,
+-3054,-3049,-3044,-3040,-3035,-3030,-3026,-3021,-3017,-3012,-3008,-3004,-3000,-2996,-2992,-2988,-2984,-2980,-2976,-2973,
+-2969,-2966,-2962,-2959,-2956,-2952,-2949,-2946,-2943,-2939,-2936,-2933,-2930,-2927,-2924,-2921,-2918,-2915,-2912,-2909,
+-2906,-2903,-2899,-2896,-2893,-2890,-2887,-2884,-2880,-2877,-2874,-2870,-2867,-2863,-2860,-2856,-2853,-2849,-2845,-2842,
+-2838,-2834,-2831,-2827,-2823,-2819,-2815,-2811,-2807,-2803,-2800,-2796,-2792,-2788,-2784,-2780,-2776,-2772,-2768,-2764,
+-2760,-2756,-2752,-2749,-2745,-2741,-2737,-2733,-2730,-2726,-2722,-2719,-2715,-2712,-2708,-2705,-2701,-2698,-2694,-2691,
+-2688,-2684,-2681,-2678,-2675,-2671,-2668,-2665,-2662,-2659,-2655,-2652,-2649,-2646,-2643,-2639,-2636,-2633,-2630,-2627,
+-2623,-2620,-2617,-2613,-2610,-2607,-2603,-2600,-2596,-2593,-2589,-2585,-2582,-2578,-2574,-2571,-2567,-2563,-2559,-2555,
+-2551,-2547,-2543,-2539,-2535,-2531,-2527,-2523,-2518,-2514,-2510,-2506,-2501,-2497,-2493,-2488,-2484,-2479,-2475,-2471,
+-2466,-2462,-2457,-2453,-2448,-2444,-2440,-2435,-2431,-2426,-2422,-2418,-2413,-2409,-2404,-2400,-2396,-2391,-2387,-2382,
+-2378,-2374,-2369,-2365,-2361,-2356,-2352,-2347,-2343,-2339,-2334,-2330,-2325,-2321,-2317,-2312,-2308,-2303,-2299,-2294,
+-2290,-2285,-2280,-2276,-2271,-2267,-2262,-2257,-2253,-2248,-2243,-2238,-2234,-2229,-2224,-2219,-2214,-2210,-2205,-2200,
+-2195,-2190,-2185,-2180,-2176,-2171,-2166,-2161,-2156,-2152,-2147,-2142,-2138,-2133,-2128,-2124,-2119,-2314,-2310,-2307,
+-2304,-2300,-2297,-2294,-2291,-2288,-2285,-2282,-2279,-2277,-2274,-2271,-2268,-2266,-2263,-2261,-2258,-2256,-2254,-2252,
+-2249,-2247,-2245,-2243,-2241,-2239,-2238,-2236,-2234,-2232,-2231,-2229,-2228,-2226,-2225,-2223,-2222,-2221,-2220,-2218,
+-2217,-2216,-2215,-2214,-2213,-2212,-2212,-2211,-2210,-2209,-2209,-2208,-2208,-2207,-2207,-2206,-2206,-2206,-2205,-2205,
+-2205,-2205,-2205,-2205,-2205,-2205,-2205,-2205,-2206,-2206,-2206,-2207,-2207,-2208,-2209,-2209,-2210,-2211,-2212,-2212,
+-2213,-2215,-2216,-2217,-2218,-2219,-2221,-2222,-2224,-2225,-2227,-2228,-2230,-2232,-2234,-2236,-2238,-2240,-2242,-2244,
+-2246,-2248,-2251,-2253,-2255,-2258,-2260,-2263,-2266,-2268,-2271,-2274,-2276,-2279,-2282,-2285,-2288,-2291,-2294,-2297,
+-2300,-2303,-2306,-2309,-2313,-2316,-2319,-2322,-2326,-2329,-2332,-2335,-2339,-2342,-2346,-2349,-2352,-2356,-2359,-2363,
+-2366,-2370,-2374,-2377,-2381,-2384,-2388,-2392,-2395,-2399,-2403,-2407,-2411,-2415,-2419,-2422,-2427,-2431,-2435,-2439,
+-2443,-2447,-2452,-2456,-2460,-2465,-2469,-2474,-2479,-2483,-2488,-2493,-2498,-2503,-2508,-2513,-2518,-2523,-2528,-2534,
+-2539,-2545,-2550,-2556,-2562,-2567,-2573,-2579,-2585,-2591,-2597,-2603,-2609,-2616,-2622,-2628,-2635,-2641,-2647,-2654,
+-2660,-2667,-2674,-2680,-2687,-2693,-2700,-2707,-2714,-2720,-2727,-2734,-2740,-2747,-2754,-2761,-2767,-2774,-2781,-2788,
+-2794,-2801,-2807,-2814,-2821,-2827,-2834,-2840,-2847,-2853,-2859,-2866,-2872,-2878,-2884,-2891,-2897,-2903,-2909,-2915,
+-2921,-2927,-2932,-2938,-2944,-2950,-2955,-2961,-2966,-2972,-2977,-2983,-2988,-2993,-2999,-3004,-3009,-3014,-3019,-3024,
+-3029,-3034,-3039,-3044,-3049,-3053,-3058,-3063,-3067,-3072,-3076,-3081,-3085,-3090,-3094,-3098,-3103,-3107,-3111,-3115,
+-3119,-3124,-3128,-3132,-3136,-3140,-3144,-3148,-3151,-3155,-3159,-3163,-3167,-3170,-3174,-3178,-3182,-3185,-3189,-3192,
+-3196,-3199,-3203,-3206,-3210,-3213,-3217,-3220,-3224,-3227,-3230,-3234,-3237,-3240,-3243,-3247,-3250,-3253,-3256,-3259,
+-3262,-3265,-3268,-3271,-3274,-3277,-3280,-3283,-3286,-3289,-3292,-3294,-3297,-3300,-3302,-3305,-3308,-3310,-3312,-3315,
+-3317,-3320,-3322,-3324,-3326,-3328,-3330,-3332,-3334,-3336,-3338,-3339,-3341,-3342,-3344,-3345,-3347,-3348,-3349,-3350,
+-3351,-3352,-3353,-3354,-3355,-3355,-3356,-3356,-3357,-3357,-3357,-3357,-3357,-3357,-3357,-3357,-3357,-3356,-3356,-3355,
+-3355,-3354,-3354,-3353,-3352,-3351,-3350,-3349,-3348,-3347,-3345,-3344,-3343,-3341,-3340,-3338,-3337,-3335,-3334,-3332,
+-3330,-3328,-3326,-3324,-3323,-3321,-3318,-3316,-3314,-3312,-3310,-3308,-3306,-3303,-3301,-3299,-3296,-3294,-3291,-3289,
+-3286,-3284,-3281,-3279,-3276,-3273,-3270,-3268,-3265,-3262,-3259,-3256,-3254,-3251,-3248,-3245,-3242,-3238,-3235,-3232,
+-3229,-3226,-3223,-3219,-3216,-3213,-3209,-3206,-3203,-3199,-3196,-3192,-3189,-3185,-3182,-3178,-3175,-3171,-3167,-3164,
+-3160,-3156,-3153,-3149,-3145,-3142,-3138,-3134,-3131,-3127,-3123,-3119,-3116,-3112,-3108,-3105,-3101,-3097,-3094,-3090,
+-3087,-3083,-3079,-3076,-3072,-3069,-3065,-3062,-3058,-3055,-3052,-3048,-3045,-3042,-3038,-3035,-3032,-3029,-3025,-3022,
+-3019,-3016,-3013,-3010,-3007,-3004,-3001,-2998,-2995,-2992,-2989,-2986,-2983,-2980,-2977,-2974,-2971,-2969,-2966,-2963,
+-2960,-2957,-2954,-2951,-2949,-2946,-2943,-2940,-2937,-2934,-2931,-2929,-2926,-2923,-2920,-2917,-2914,-2911,-2908,-2905,
+-2903,-2900,-2897,-2894,-2891,-2888,-2885,-2882,-2879,-2876,-2873,-2870,-2867,-2864,-2861,-2858,-2855,-2852,-2849,-2846,
+-2843,-2840,-2837,-2834,-2831,-2828,-2825,-2823,-2820,-2817,-2814,-2811,-2808,-2805,-2802,-2799,-2796,-2794,-2791,-2788,
+-2785,-2782,-2779,-2776,-2774,-2771,-2768,-2765,-2762,-2760,-2757,-2754,-2751,-2748,-2746,-2743,-2740,-2737,-2734,-2731,
+-2729,-2726,-2723,-2720,-2717,-2714,-2711,-2709,-2706,-2703,-2700,-2697,-2694,-2691,-2688,-2685,-2682,-2679,-2676,-2673,
+-2670,-2667,-2664,-2660,-2657,-2654,-2651,-2648,-2645,-2641,-2638,-2635,-2631,-2628,-2625,-2622,-2618,-2615,-2611,-2608,
+-2605,-2601,-2598,-2594,-2591,-2587,-2584,-2580,-2577,-2573,-2569,-2566,-2562,-2559,-2555,-2551,-2548,-2544,-2540,-2536,
+-2533,-2529,-2525,-2521,-2518,-2514,-2510,-2506,-2502,-2499,-2495,-2491,-2487,-2483,-2479,-2475,-2471,-2467,-2463,-2459,
+-2455,-2451,-2447,-2443,-2439,-2435,-2431,-2428,-2424,-2420,-2416,-2412,-2408,-2404,-2400,-2396,-2392,-2388,-2384,-2380,
+-2376,-2372,-2368,-2364,-2361,-2357,-2353,-2349,-2345,-2342,-2338,-2335,-2331,-2327,-2324,-2320,-2317,-2314,-2507,-2505,
+-2502,-2500,-2497,-2495,-2493,-2491,-2488,-2486,-2484,-2482,-2480,-2478,-2476,-2474,-2472,-2470,-2468,-2467,-2465,-2463,
+-2461,-2460,-2458,-2457,-2455,-2454,-2453,-2451,-2450,-2449,-2447,-2446,-2445,-2444,-2443,-2442,-2441,-2440,-2439,-2439,
+-2438,-2437,-2436,-2436,-2435,-2435,-2434,-2434,-2433,-2433,-2433,-2432,-2432,-2432,-2432,-2432,-2432,-2431,-2431,-2432,
+-2432,-2432,-2432,-2432,-2432,-2433,-2433,-2433,-2434,-2434,-2435,-2435,-2436,-2436,-2437,-2438,-2438,-2439,-2440,-2441,
+-2442,-2443,-2443,-2444,-2445,-2447,-2448,-2449,-2450,-2451,-2452,-2454,-2455,-2456,-2457,-2459,-2460,-2462,-2463,-2465,
+-2466,-2468,-2470,-2471,-2473,-2475,-2476,-2478,-2480,-2482,-2484,-2485,-2487,-2489,-2491,-2493,-2495,-2497,-2499,-2502,
+-2504,-2506,-2508,-2510,-2512,-2515,-2517,-2519,-2522,-2524,-2527,-2529,-2531,-2534,-2536,-2539,-2542,-2544,-2547,-2549,
+-2552,-2555,-2558,-2560,-2563,-2566,-2569,-2572,-2575,-2578,-2580,-2584,-2587,-2590,-2593,-2596,-2599,-2602,-2605,-2609,
+-2612,-2615,-2619,-2622,-2626,-2629,-2633,-2636,-2640,-2643,-2647,-2651,-2654,-2658,-2662,-2666,-2670,-2674,-2678,-2682,
+-2686,-2690,-2694,-2698,-2702,-2706,-2710,-2714,-2719,-2723,-2727,-2732,-2736,-2740,-2745,-2749,-2754,-2758,-2763,-2767,
+-2772,-2776,-2781,-2785,-2790,-2794,-2799,-2804,-2808,-2813,-2818,-2822,-2827,-2831,-2836,-2841,-2845,-2850,-2855,-2859,
+-2864,-2868,-2873,-2878,-2882,-2887,-2891,-2896,-2900,-2905,-2909,-2914,-2918,-2922,-2927,-2931,-2935,-2940,-2944,-2948,
+-2953,-2957,-2961,-2965,-2969,-2973,-2977,-2981,-2985,-2989,-2993,-2997,-3001,-3005,-3008,-3012,-3016,-3020,-3023,-3027,
+-3030,-3034,-3037,-3041,-3044,-3048,-3051,-3055,-3058,-3061,-3064,-3068,-3071,-3074,-3077,-3080,-3083,-3086,-3089,-3092,
+-3095,-3098,-3101,-3104,-3107,-3110,-3113,-3115,-3118,-3121,-3124,-3126,-3129,-3131,-3134,-3137,-3139,-3142,-3144,-3147,
+-3149,-3152,-3154,-3157,-3159,-3161,-3164,-3166,-3168,-3170,-3173,-3175,-3177,-3179,-3182,-3184,-3186,-3188,-3190,-3192,
+-3194,-3196,-3198,-3200,-3202,-3204,-3206,-3208,-3210,-3211,-3213,-3215,-3217,-3219,-3220,-3222,-3224,-3225,-3227,-3228,
+-3230,-3231,-3233,-3234,-3236,-3237,-3238,-3240,-3241,-3242,-3243,-3244,-3245,-3247,-3248,-3249,-3250,-3250,-3251,-3252,
+-3253,-3254,-3254,-3255,-3256,-3256,-3257,-3258,-3258,-3258,-3259,-3259,-3260,-3260,-3260,-3260,-3260,-3261,-3261,-3261,
+-3261,-3261,-3261,-3261,-3260,-3260,-3260,-3260,-3259,-3259,-3259,-3258,-3258,-3257,-3257,-3256,-3256,-3255,-3254,-3254,
+-3253,-3252,-3251,-3250,-3250,-3249,-3248,-3247,-3246,-3245,-3244,-3243,-3242,-3241,-3239,-3238,-3237,-3236,-3234,-3233,
+-3232,-3231,-3229,-3228,-3226,-3225,-3223,-3222,-3220,-3219,-3217,-3216,-3214,-3213,-3211,-3209,-3208,-3206,-3204,-3202,
+-3201,-3199,-3197,-3195,-3193,-3192,-3190,-3188,-3186,-3184,-3182,-3180,-3178,-3176,-3174,-3172,-3170,-3168,-3166,-3164,
+-3162,-3160,-3158,-3155,-3153,-3151,-3149,-3147,-3145,-3143,-3140,-3138,-3136,-3134,-3132,-3129,-3127,-3125,-3123,-3120,
+-3118,-3116,-3114,-3112,-3109,-3107,-3105,-3102,-3100,-3098,-3096,-3093,-3091,-3089,-3087,-3084,-3082,-3080,-3078,-3075,
+-3073,-3071,-3069,-3066,-3064,-3062,-3060,-3057,-3055,-3053,-3051,-3048,-3046,-3044,-3042,-3039,-3037,-3035,-3033,-3030,
+-3028,-3026,-3024,-3021,-3019,-3017,-3015,-3012,-3010,-3008,-3006,-3003,-3001,-2999,-2996,-2994,-2992,-2990,-2987,-2985,
+-2983,-2981,-2978,-2976,-2974,-2971,-2969,-2967,-2965,-2962,-2960,-2958,-2955,-2953,-2951,-2948,-2946,-2944,-2942,-2939,
+-2937,-2935,-2932,-2930,-2928,-2925,-2923,-2921,-2918,-2916,-2914,-2912,-2909,-2907,-2905,-2902,-2900,-2898,-2895,-2893,
+-2891,-2888,-2886,-2884,-2881,-2879,-2877,-2874,-2872,-2870,-2867,-2865,-2863,-2860,-2858,-2855,-2853,-2851,-2848,-2846,
+-2843,-2841,-2839,-2836,-2834,-2831,-2829,-2827,-2824,-2822,-2819,-2817,-2814,-2812,-2809,-2807,-2804,-2802,-2799,-2797,
+-2794,-2791,-2789,-2786,-2784,-2781,-2778,-2776,-2773,-2770,-2768,-2765,-2762,-2760,-2757,-2754,-2751,-2749,-2746,-2743,
+-2740,-2737,-2735,-2732,-2729,-2726,-2723,-2720,-2717,-2714,-2711,-2708,-2705,-2702,-2699,-2696,-2693,-2690,-2687,-2684,
+-2681,-2678,-2675,-2672,-2669,-2666,-2663,-2660,-2657,-2653,-2650,-2647,-2644,-2641,-2638,-2634,-2631,-2628,-2625,-2622,
+-2619,-2616,-2612,-2609,-2606,-2603,-2600,-2597,-2593,-2590,-2587,-2584,-2581,-2578,-2575,-2572,-2569,-2566,-2563,-2560,
+-2557,-2554,-2551,-2548,-2545,-2542,-2539,-2536,-2534,-2531,-2528,-2525,-2523,-2520,-2517,-2515,-2512,-2510,-2507,-2688,
+-2687,-2685,-2683,-2682,-2680,-2679,-2677,-2676,-2674,-2673,-2672,-2670,-2669,-2668,-2666,-2665,-2664,-2663,-2661,-2660,
+-2659,-2658,-2657,-2656,-2655,-2654,-2653,-2652,-2651,-2650,-2649,-2648,-2648,-2647,-2646,-2645,-2645,-2644,-2643,-2643,
+-2642,-2642,-2641,-2640,-2640,-2640,-2639,-2639,-2638,-2638,-2638,-2638,-2637,-2637,-2637,-2637,-2637,-2637,-2636,-2636,
+-2636,-2636,-2636,-2637,-2637,-2637,-2637,-2637,-2637,-2638,-2638,-2638,-2638,-2639,-2639,-2640,-2640,-2640,-2641,-2641,
+-2642,-2642,-2643,-2644,-2644,-2645,-2646,-2646,-2647,-2648,-2649,-2650,-2650,-2651,-2652,-2653,-2654,-2655,-2656,-2657,
+-2658,-2659,-2660,-2661,-2662,-2664,-2665,-2666,-2667,-2668,-2670,-2671,-2672,-2674,-2675,-2676,-2678,-2679,-2681,-2682,
+-2684,-2685,-2687,-2688,-2690,-2692,-2693,-2695,-2697,-2698,-2700,-2702,-2703,-2705,-2707,-2709,-2711,-2713,-2714,-2716,
+-2718,-2720,-2722,-2724,-2726,-2728,-2730,-2732,-2734,-2737,-2739,-2741,-2743,-2745,-2747,-2750,-2752,-2754,-2756,-2759,
+-2761,-2763,-2766,-2768,-2770,-2773,-2775,-2778,-2780,-2782,-2785,-2787,-2790,-2792,-2795,-2798,-2800,-2803,-2805,-2808,
+-2810,-2813,-2816,-2818,-2821,-2824,-2826,-2829,-2832,-2835,-2837,-2840,-2843,-2845,-2848,-2851,-2854,-2856,-2859,-2862,
+-2865,-2868,-2870,-2873,-2876,-2879,-2882,-2884,-2887,-2890,-2893,-2896,-2898,-2901,-2904,-2907,-2910,-2912,-2915,-2918,
+-2921,-2924,-2926,-2929,-2932,-2935,-2937,-2940,-2943,-2946,-2948,-2951,-2954,-2956,-2959,-2962,-2964,-2967,-2970,-2972,
+-2975,-2977,-2980,-2982,-2985,-2988,-2990,-2993,-2995,-2997,-3000,-3002,-3005,-3007,-3010,-3012,-3014,-3017,-3019,-3021,
+-3024,-3026,-3028,-3030,-3033,-3035,-3037,-3039,-3041,-3043,-3045,-3048,-3050,-3052,-3054,-3056,-3058,-3060,-3062,-3064,
+-3066,-3067,-3069,-3071,-3073,-3075,-3077,-3079,-3080,-3082,-3084,-3086,-3087,-3089,-3091,-3092,-3094,-3096,-3097,-3099,
+-3100,-3102,-3103,-3105,-3106,-3108,-3109,-3111,-3112,-3114,-3115,-3116,-3118,-3119,-3120,-3122,-3123,-3124,-3126,-3127,
+-3128,-3129,-3130,-3132,-3133,-3134,-3135,-3136,-3137,-3138,-3139,-3140,-3142,-3143,-3144,-3144,-3145,-3146,-3147,-3148,
+-3149,-3150,-3151,-3152,-3153,-3153,-3154,-3155,-3156,-3156,-3157,-3158,-3158,-3159,-3160,-3160,-3161,-3162,-3162,-3163,
+-3163,-3164,-3164,-3165,-3165,-3166,-3166,-3167,-3167,-3167,-3168,-3168,-3169,-3169,-3169,-3169,-3170,-3170,-3170,-3170,
+-3171,-3171,-3171,-3171,-3171,-3171,-3171,-3171,-3171,-3171,-3172,-3172,-3172,-3171,-3171,-3171,-3171,-3171,-3171,-3171,
+-3171,-3171,-3170,-3170,-3170,-3170,-3170,-3169,-3169,-3169,-3168,-3168,-3168,-3167,-3167,-3167,-3166,-3166,-3165,-3165,
+-3165,-3164,-3164,-3163,-3163,-3162,-3161,-3161,-3160,-3160,-3159,-3159,-3158,-3157,-3157,-3156,-3155,-3155,-3154,-3153,
+-3152,-3152,-3151,-3150,-3149,-3149,-3148,-3147,-3146,-3145,-3145,-3144,-3143,-3142,-3141,-3140,-3139,-3138,-3137,-3136,
+-3135,-3134,-3134,-3133,-3132,-3131,-3130,-3128,-3127,-3126,-3125,-3124,-3123,-3122,-3121,-3120,-3119,-3118,-3117,-3115,
+-3114,-3113,-3112,-3111,-3110,-3108,-3107,-3106,-3105,-3104,-3102,-3101,-3100,-3099,-3097,-3096,-3095,-3094,-3092,-3091,
+-3090,-3089,-3087,-3086,-3085,-3083,-3082,-3081,-3079,-3078,-3076,-3075,-3074,-3072,-3071,-3070,-3068,-3067,-3065,-3064,
+-3063,-3061,-3060,-3058,-3057,-3055,-3054,-3052,-3051,-3049,-3048,-3046,-3045,-3043,-3042,-3040,-3039,-3037,-3036,-3034,
+-3033,-3031,-3030,-3028,-3027,-3025,-3023,-3022,-3020,-3019,-3017,-3016,-3014,-3012,-3011,-3009,-3007,-3006,-3004,-3003,
+-3001,-2999,-2998,-2996,-2994,-2993,-2991,-2989,-2988,-2986,-2984,-2982,-2981,-2979,-2977,-2976,-2974,-2972,-2970,-2969,
+-2967,-2965,-2963,-2962,-2960,-2958,-2956,-2954,-2953,-2951,-2949,-2947,-2945,-2943,-2942,-2940,-2938,-2936,-2934,-2932,
+-2930,-2929,-2927,-2925,-2923,-2921,-2919,-2917,-2915,-2913,-2911,-2909,-2908,-2906,-2904,-2902,-2900,-2898,-2896,-2894,
+-2892,-2890,-2888,-2886,-2884,-2882,-2880,-2878,-2876,-2873,-2871,-2869,-2867,-2865,-2863,-2861,-2859,-2857,-2855,-2853,
+-2850,-2848,-2846,-2844,-2842,-2840,-2838,-2836,-2833,-2831,-2829,-2827,-2825,-2823,-2820,-2818,-2816,-2814,-2812,-2809,
+-2807,-2805,-2803,-2801,-2799,-2796,-2794,-2792,-2790,-2788,-2785,-2783,-2781,-2779,-2777,-2775,-2772,-2770,-2768,-2766,
+-2764,-2762,-2760,-2757,-2755,-2753,-2751,-2749,-2747,-2745,-2743,-2741,-2739,-2737,-2734,-2732,-2730,-2728,-2726,-2724,
+-2723,-2721,-2719,-2717,-2715,-2713,-2711,-2709,-2707,-2706,-2704,-2702,-2700,-2698,-2697,-2695,-2693,-2692,-2690,-2688,
+-2844,-2843,-2842,-2842,-2841,-2840,-2840,-2839,-2838,-2838,-2837,-2836,-2836,-2835,-2835,-2834,-2833,-2833,-2832,-2832,
+-2831,-2831,-2830,-2830,-2829,-2829,-2828,-2828,-2828,-2827,-2827,-2826,-2826,-2826,-2825,-2825,-2825,-2824,-2824,-2824,
+-2823,-2823,-2823,-2823,-2822,-2822,-2822,-2822,-2822,-2821,-2821,-2821,-2821,-2821,-2821,-2821,-2821,-2820,-2820,-2820,
+-2820,-2820,-2820,-2820,-2820,-2820,-2820,-2821,-2821,-2821,-2821,-2821,-2821,-2821,-2821,-2822,-2822,-2822,-2822,-2822,
+-2823,-2823,-2823,-2823,-2824,-2824,-2824,-2825,-2825,-2825,-2826,-2826,-2826,-2827,-2827,-2828,-2828,-2829,-2829,-2829,
+-2830,-2830,-2831,-2831,-2832,-2833,-2833,-2834,-2834,-2835,-2835,-2836,-2837,-2837,-2838,-2839,-2839,-2840,-2841,-2841,
+-2842,-2843,-2844,-2844,-2845,-2846,-2847,-2847,-2848,-2849,-2850,-2851,-2851,-2852,-2853,-2854,-2855,-2856,-2857,-2858,
+-2859,-2859,-2860,-2861,-2862,-2863,-2864,-2865,-2866,-2867,-2868,-2869,-2870,-2871,-2872,-2873,-2874,-2875,-2876,-2878,
+-2879,-2880,-2881,-2882,-2883,-2884,-2885,-2886,-2887,-2889,-2890,-2891,-2892,-2893,-2894,-2896,-2897,-2898,-2899,-2900,
+-2901,-2903,-2904,-2905,-2906,-2907,-2909,-2910,-2911,-2912,-2914,-2915,-2916,-2917,-2918,-2920,-2921,-2922,-2923,-2925,
+-2926,-2927,-2928,-2930,-2931,-2932,-2933,-2935,-2936,-2937,-2938,-2940,-2941,-2942,-2943,-2945,-2946,-2947,-2948,-2950,
+-2951,-2952,-2953,-2955,-2956,-2957,-2958,-2960,-2961,-2962,-2963,-2965,-2966,-2967,-2968,-2970,-2971,-2972,-2973,-2974,
+-2976,-2977,-2978,-2979,-2980,-2982,-2983,-2984,-2985,-2986,-2987,-2989,-2990,-2991,-2992,-2993,-2994,-2995,-2997,-2998,
+-2999,-3000,-3001,-3002,-3003,-3004,-3005,-3006,-3007,-3009,-3010,-3011,-3012,-3013,-3014,-3015,-3016,-3017,-3018,-3019,
+-3020,-3021,-3022,-3023,-3024,-3025,-3026,-3026,-3027,-3028,-3029,-3030,-3031,-3032,-3033,-3034,-3035,-3035,-3036,-3037,
+-3038,-3039,-3040,-3040,-3041,-3042,-3043,-3044,-3044,-3045,-3046,-3047,-3047,-3048,-3049,-3050,-3050,-3051,-3052,-3052,
+-3053,-3054,-3055,-3055,-3056,-3056,-3057,-3058,-3058,-3059,-3060,-3060,-3061,-3061,-3062,-3062,-3063,-3064,-3064,-3065,
+-3065,-3066,-3066,-3067,-3067,-3068,-3068,-3069,-3069,-3070,-3070,-3070,-3071,-3071,-3072,-3072,-3072,-3073,-3073,-3074,
+-3074,-3074,-3075,-3075,-3075,-3076,-3076,-3076,-3077,-3077,-3077,-3077,-3078,-3078,-3078,-3078,-3079,-3079,-3079,-3079,
+-3080,-3080,-3080,-3080,-3080,-3080,-3081,-3081,-3081,-3081,-3081,-3081,-3081,-3082,-3082,-3082,-3082,-3082,-3082,-3082,
+-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3082,
+-3082,-3081,-3081,-3081,-3081,-3081,-3081,-3081,-3080,-3080,-3080,-3080,-3080,-3080,-3079,-3079,-3079,-3079,-3079,-3078,
+-3078,-3078,-3078,-3077,-3077,-3077,-3077,-3076,-3076,-3076,-3075,-3075,-3075,-3074,-3074,-3074,-3073,-3073,-3073,-3072,
+-3072,-3072,-3071,-3071,-3070,-3070,-3070,-3069,-3069,-3068,-3068,-3067,-3067,-3066,-3066,-3066,-3065,-3065,-3064,-3064,
+-3063,-3063,-3062,-3062,-3061,-3061,-3060,-3059,-3059,-3058,-3058,-3057,-3057,-3056,-3056,-3055,-3054,-3054,-3053,-3053,
+-3052,-3051,-3051,-3050,-3049,-3049,-3048,-3047,-3047,-3046,-3045,-3045,-3044,-3043,-3043,-3042,-3041,-3041,-3040,-3039,
+-3038,-3038,-3037,-3036,-3035,-3035,-3034,-3033,-3032,-3032,-3031,-3030,-3029,-3029,-3028,-3027,-3026,-3025,-3024,-3024,
+-3023,-3022,-3021,-3020,-3019,-3019,-3018,-3017,-3016,-3015,-3014,-3013,-3013,-3012,-3011,-3010,-3009,-3008,-3007,-3006,
+-3005,-3004,-3003,-3003,-3002,-3001,-3000,-2999,-2998,-2997,-2996,-2995,-2994,-2993,-2992,-2991,-2990,-2989,-2988,-2987,
+-2986,-2985,-2984,-2983,-2982,-2981,-2980,-2979,-2978,-2977,-2976,-2975,-2974,-2973,-2972,-2971,-2970,-2969,-2968,-2967,
+-2966,-2965,-2963,-2962,-2961,-2960,-2959,-2958,-2957,-2956,-2955,-2954,-2953,-2952,-2951,-2949,-2948,-2947,-2946,-2945,
+-2944,-2943,-2942,-2941,-2940,-2938,-2937,-2936,-2935,-2934,-2933,-2932,-2931,-2930,-2929,-2927,-2926,-2925,-2924,-2923,
+-2922,-2921,-2920,-2919,-2917,-2916,-2915,-2914,-2913,-2912,-2911,-2910,-2909,-2908,-2906,-2905,-2904,-2903,-2902,-2901,
+-2900,-2899,-2898,-2897,-2896,-2895,-2893,-2892,-2891,-2890,-2889,-2888,-2887,-2886,-2885,-2884,-2883,-2882,-2881,-2880,
+-2879,-2878,-2877,-2876,-2875,-2874,-2873,-2872,-2871,-2870,-2869,-2868,-2867,-2866,-2865,-2864,-2864,-2863,-2862,-2861,
+-2860,-2859,-2858,-2857,-2856,-2856,-2855,-2854,-2853,-2852,-2851,-2851,-2850,-2849,-2848,-2847,-2847,-2846,-2845,-2844,
+-2844,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971
+};
+
+}
+
+#endif // OSGEARTH_VDATUM_EGM84_GRID_H
diff --git a/src/osgEarthDrivers/vdatum_egm96/CMakeLists.txt b/src/osgEarthDrivers/vdatum_egm96/CMakeLists.txt
new file mode 100644
index 0000000..a42aec0
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm96/CMakeLists.txt
@@ -0,0 +1,9 @@
+SET(TARGET_SRC EGM96.cpp)
+SET(TARGET_H EGM96Grid.h)
+SETUP_PLUGIN(osgearth_vdatum_egm96)
+
+
+# to install public driver includes:
+SET(LIB_NAME vdatum_egm96)
+#SET(LIB_PUBLIC_HEADERS EGM96Grid.h)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/vdatum_egm96/EGM96.cpp b/src/osgEarthDrivers/vdatum_egm96/EGM96.cpp
new file mode 100644
index 0000000..b5489a7
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm96/EGM96.cpp
@@ -0,0 +1,101 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarth/VerticalDatum>
+#include <osgEarth/Geoid>
+#include <osgEarth/Units>
+#include <osgDB/ReaderWriter>
+#include <osgDB/Registry>
+#include <osgDB/FileNameUtils>
+#include "EGM96Grid.h"
+
+using namespace osgEarth;
+
+//--------------------------------------------------------------------------
+
+namespace
+{
+    class EGM96VerticalDatum : public VerticalDatum
+    {
+    public:
+        EGM96VerticalDatum() : VerticalDatum(
+            "EGM96",                                  // readable name
+            "egm96" )                                 // initialization string
+        {
+            // build a heightfield from the data.
+
+            unsigned cols = 1441, rows = 721;
+            float colStep = 0.25f, rowStep = 0.25f;
+
+            osg::HeightField* hf = new osg::HeightField();
+            hf->allocate( cols, rows );
+            osg::Vec3 origin(-180.f, -90.f, 0.f);
+            hf->setOrigin( origin );
+            hf->setXInterval( colStep );
+            hf->setYInterval( rowStep );
+
+            for( unsigned c=0; c<cols-1; ++c )
+            {
+                float inputLon = 0.0f + float(c) * colStep;
+                if ( inputLon > 180.0 ) inputLon -= 360.0;
+
+                for( unsigned r=0; r<rows; ++r )
+                {
+                    float inputLat = 90.0f - float(r) * rowStep;
+
+                    unsigned outc = unsigned( (inputLon-origin.x())/colStep );
+                    unsigned outr = unsigned( (inputLat-origin.y())/rowStep );
+
+                    Linear h( (double)s_egm96grid[r*cols+c], Units::CENTIMETERS );
+                    hf->setHeight( outc, outr, float(h.as(Units::METERS)) );
+                }
+            }
+
+            _geoid = new Geoid();
+            _geoid->setHeightField( hf );
+            _geoid->setUnits( Units::METERS );
+            _geoid->setName( "EGM96" );
+        }
+    };
+}
+
+
+class EGM96VerticalDatumFactory : public osgDB::ReaderWriter
+{
+public:
+    EGM96VerticalDatumFactory()
+    {
+        supportsExtension( "osgearth_vdatum_egm96", "osgEarth EGM96 vertical datum" );
+    }
+
+    virtual const char* className()
+    {
+        return "osgEarth EGM96 vertical datum";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return ReadResult( new EGM96VerticalDatum() );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_vdatum_egm96, EGM96VerticalDatumFactory) 
diff --git a/src/osgEarthDrivers/vdatum_egm96/EGM96Grid.h b/src/osgEarthDrivers/vdatum_egm96/EGM96Grid.h
new file mode 100644
index 0000000..ddaa973
--- /dev/null
+++ b/src/osgEarthDrivers/vdatum_egm96/EGM96Grid.h
@@ -0,0 +1,49558 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_VDATUM_EGM96_GRID_H
+#define OSGEARTH_VDATUM_EGM96_GRID_H
+
+  // 1441x721 array (1038961 elements)
+  // 1441 longitude points, 0.25 deg spacing (0-360)
+  // 721 latitude points, 0.25 deg spacing (0-180)
+  // points start at 90 (0 northpole), then go around easterly starting at 0,
+  // ending at south pole (180)
+  // unit = cm.
+
+namespace
+{
+
+static short s_egm96grid[] = {
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1360,1390,1390,1390,1390,1389,1389,1389,1389,
+1389,1389,1389,1389,1389,1388,1388,1388,1388,1388,1388,1388,1388,1388,1387,1387,1387,1387,1387,1387,1387,
+1387,1386,1386,1386,1386,1386,1386,1386,1386,1386,1385,1385,1385,1385,1385,1385,1385,1385,1384,1384,1384,
+1384,1384,1384,1384,1384,1383,1383,1383,1383,1383,1383,1383,1383,1382,1382,1382,1382,1382,1382,1382,1381,
+1381,1381,1381,1381,1381,1381,1381,1380,1380,1380,1380,1380,1380,1380,1379,1379,1379,1379,1379,1379,1379,
+1379,1378,1378,1378,1378,1378,1378,1378,1377,1377,1377,1377,1377,1377,1377,1376,1376,1376,1376,1376,1376,
+1376,1376,1375,1375,1375,1375,1375,1375,1375,1374,1374,1374,1374,1374,1374,1374,1373,1373,1373,1373,1373,
+1373,1373,1373,1372,1372,1372,1372,1372,1372,1372,1371,1371,1371,1371,1371,1371,1371,1371,1370,1370,1370,
+1370,1370,1370,1370,1369,1369,1369,1369,1369,1369,1369,1369,1368,1368,1368,1368,1368,1368,1368,1368,1367,
+1367,1367,1367,1367,1367,1367,1367,1366,1366,1366,1366,1366,1366,1366,1366,1365,1365,1365,1365,1365,1365,
+1365,1365,1365,1364,1364,1364,1364,1364,1364,1364,1364,1364,1363,1363,1363,1363,1363,1363,1363,1363,1362,
+1362,1362,1362,1362,1362,1362,1362,1362,1362,1361,1361,1361,1361,1361,1361,1361,1361,1361,1360,1360,1360,
+1360,1360,1360,1360,1360,1360,1360,1359,1359,1359,1359,1359,1359,1359,1359,1359,1359,1359,1358,1358,1358,
+1358,1358,1358,1358,1358,1358,1358,1357,1357,1357,1357,1357,1357,1357,1357,1357,1357,1357,1357,1356,1356,
+1356,1356,1356,1356,1356,1356,1356,1356,1356,1356,1355,1355,1355,1355,1355,1355,1355,1355,1355,1355,1355,
+1355,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1354,1353,1353,1353,1353,1353,1353,
+1353,1353,1353,1353,1353,1353,1353,1353,1352,1352,1352,1352,1352,1352,1352,1352,1352,1352,1352,1352,1352,
+1352,1352,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1351,1350,1350,1350,
+1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1349,1349,1349,1349,1349,1349,
+1349,1349,1349,1349,1349,1349,1349,1349,1349,1349,1349,1349,1348,1348,1348,1348,1348,1348,1348,1348,1348,
+1348,1348,1348,1348,1348,1348,1348,1348,1348,1348,1348,1347,1347,1347,1347,1347,1347,1347,1347,1347,1347,
+1347,1347,1347,1347,1347,1347,1347,1347,1347,1347,1347,1347,1346,1346,1346,1346,1346,1346,1346,1346,1346,
+1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1345,1345,1345,1345,1345,1345,1345,
+1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1344,1344,
+1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,
+1344,1344,1344,1344,1344,1344,1344,1344,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,1343,
+1343,1343,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,1344,
+1344,1344,1344,1344,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,1345,
+1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1346,1347,1347,1347,1347,1347,1347,1347,
+1347,1347,1347,1347,1347,1348,1348,1348,1348,1348,1348,1348,1348,1348,1348,1348,1349,1349,1349,1349,1349,
+1349,1349,1349,1349,1349,1350,1350,1350,1350,1350,1350,1350,1350,1350,1350,1351,1351,1351,1351,1351,1351,
+1351,1351,1351,1352,1352,1352,1352,1352,1352,1352,1352,1352,1353,1353,1353,1353,1353,1353,1353,1353,1354,
+1354,1354,1354,1354,1354,1354,1354,1355,1355,1355,1355,1355,1355,1355,1355,1356,1356,1356,1356,1356,1356,
+1356,1357,1357,1357,1357,1357,1357,1357,1358,1358,1358,1358,1358,1358,1358,1358,1359,1359,1359,1359,1359,
+1359,1359,1360,1360,1360,1360,1360,1360,1360,1361,1361,1361,1361,1361,1361,1361,1362,1362,1362,1362,1362,
+1362,1362,1363,1363,1363,1363,1363,1363,1364,1364,1364,1364,1364,1364,1364,1365,1365,1365,1365,1365,1365,
+1365,1366,1366,1366,1366,1366,1366,1366,1367,1367,1367,1367,1367,1367,1367,1368,1368,1368,1368,1368,1368,
+1369,1369,1369,1369,1369,1369,1369,1370,1370,1370,1370,1370,1370,1370,1371,1371,1371,1371,1371,1371,1371,
+1372,1372,1372,1372,1372,1372,1372,1373,1373,1373,1373,1373,1373,1373,1374,1374,1374,1374,1374,1374,1374,
+1375,1375,1375,1375,1375,1375,1375,1375,1376,1376,1376,1376,1376,1376,1376,1377,1377,1377,1377,1377,1377,
+1377,1377,1378,1378,1378,1378,1378,1378,1378,1378,1379,1379,1379,1379,1379,1379,1379,1379,1380,1380,1380,
+1380,1380,1380,1380,1380,1381,1381,1381,1381,1381,1381,1381,1381,1381,1382,1382,1382,1382,1382,1382,1382,
+1382,1382,1383,1383,1383,1383,1383,1383,1383,1383,1383,1384,1384,1384,1384,1384,1384,1384,1384,1384,1384,
+1385,1385,1385,1385,1385,1385,1385,1385,1385,1385,1386,1386,1386,1386,1386,1386,1386,1386,1386,1386,1386,
+1387,1387,1387,1387,1387,1387,1387,1387,1387,1387,1387,1387,1388,1388,1388,1388,1388,1388,1388,1388,1388,
+1388,1388,1388,1389,1389,1389,1389,1389,1389,1389,1389,1389,1389,1389,1389,1389,1390,1390,1390,1390,1390,
+1390,1390,1390,1390,1390,1390,1390,1390,1390,1390,1391,1391,1391,1391,1391,1391,1391,1391,1391,1391,1391,
+1391,1391,1391,1391,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,1392,
+1392,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1394,
+1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1394,1395,
+1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,
+1395,1395,1395,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,
+1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1397,1397,1397,1397,1397,1397,1397,1397,1397,
+1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,
+1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1398,1398,1398,1398,1398,1398,1398,
+1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,
+1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,
+1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,1398,
+1398,1398,1398,1398,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,
+1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1397,1396,1396,1396,1396,
+1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1396,1395,1395,1395,1395,
+1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1395,1394,1394,1394,1394,1394,1394,1394,1394,1394,
+1394,1394,1394,1394,1394,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1393,1392,1392,1392,
+1392,1392,1392,1392,1392,1392,1392,1392,1391,1391,1391,1391,1391,1391,1391,1391,1391,1391,1391,1390,1390,
+1390,1390,1390,1390,1390,1442,1442,1441,1441,1441,1441,1441,1440,1440,1440,1440,1439,1439,1439,1439,1438,
+1438,1438,1438,1437,1437,1437,1437,1436,1436,1436,1436,1435,1435,1435,1435,1434,1434,1434,1434,1433,1433,
+1433,1432,1432,1432,1432,1431,1431,1431,1430,1430,1430,1430,1429,1429,1429,1428,1428,1428,1428,1427,1427,
+1427,1426,1426,1426,1425,1425,1425,1424,1424,1424,1424,1423,1423,1423,1422,1422,1422,1421,1421,1421,1420,
+1420,1420,1419,1419,1419,1418,1418,1418,1418,1417,1417,1417,1416,1416,1416,1415,1415,1415,1414,1414,1414,
+1413,1413,1413,1412,1412,1412,1411,1411,1411,1410,1410,1410,1409,1409,1409,1409,1408,1408,1408,1407,1407,
+1407,1406,1406,1406,1405,1405,1405,1404,1404,1404,1403,1403,1403,1403,1402,1402,1402,1401,1401,1401,1400,
+1400,1400,1399,1399,1399,1399,1398,1398,1398,1397,1397,1397,1397,1396,1396,1396,1395,1395,1395,1394,1394,
+1394,1394,1393,1393,1393,1393,1392,1392,1392,1391,1391,1391,1391,1390,1390,1390,1390,1389,1389,1389,1388,
+1388,1388,1388,1387,1387,1387,1387,1386,1386,1386,1386,1385,1385,1385,1385,1384,1384,1384,1384,1383,1383,
+1383,1383,1382,1382,1382,1382,1382,1381,1381,1381,1381,1380,1380,1380,1380,1379,1379,1379,1379,1379,1378,
+1378,1378,1378,1378,1377,1377,1377,1377,1376,1376,1376,1376,1376,1375,1375,1375,1375,1375,1374,1374,1374,
+1374,1374,1373,1373,1373,1373,1373,1372,1372,1372,1372,1372,1372,1371,1371,1371,1371,1371,1370,1370,1370,
+1370,1370,1369,1369,1369,1369,1369,1369,1368,1368,1368,1368,1368,1368,1367,1367,1367,1367,1367,1367,1366,
+1366,1366,1366,1366,1366,1365,1365,1365,1365,1365,1365,1364,1364,1364,1364,1364,1364,1363,1363,1363,1363,
+1363,1363,1363,1362,1362,1362,1362,1362,1362,1361,1361,1361,1361,1361,1361,1361,1360,1360,1360,1360,1360,
+1360,1360,1359,1359,1359,1359,1359,1359,1359,1358,1358,1358,1358,1358,1358,1358,1357,1357,1357,1357,1357,
+1357,1357,1356,1356,1356,1356,1356,1356,1356,1355,1355,1355,1355,1355,1355,1355,1355,1354,1354,1354,1354,
+1354,1354,1354,1353,1353,1353,1353,1353,1353,1353,1353,1352,1352,1352,1352,1352,1352,1352,1352,1351,1351,
+1351,1351,1351,1351,1351,1351,1350,1350,1350,1350,1350,1350,1350,1350,1349,1349,1349,1349,1349,1349,1349,
+1349,1348,1348,1348,1348,1348,1348,1348,1348,1347,1347,1347,1347,1347,1347,1347,1347,1347,1346,1346,1346,
+1346,1346,1346,1346,1346,1345,1345,1345,1345,1345,1345,1345,1345,1345,1344,1344,1344,1344,1344,1344,1344,
+1344,1343,1343,1343,1343,1343,1343,1343,1343,1343,1342,1342,1342,1342,1342,1342,1342,1342,1341,1341,1341,
+1341,1341,1341,1341,1341,1341,1340,1340,1340,1340,1340,1340,1340,1340,1339,1339,1339,1339,1339,1339,1339,
+1339,1339,1338,1338,1338,1338,1338,1338,1338,1338,1337,1337,1337,1337,1337,1337,1337,1337,1337,1336,1336,
+1336,1336,1336,1336,1336,1336,1335,1335,1335,1335,1335,1335,1335,1335,1335,1334,1334,1334,1334,1334,1334,
+1334,1334,1333,1333,1333,1333,1333,1333,1333,1333,1333,1332,1332,1332,1332,1332,1332,1332,1332,1332,1331,
+1331,1331,1331,1331,1331,1331,1331,1331,1330,1330,1330,1330,1330,1330,1330,1330,1330,1330,1329,1329,1329,
+1329,1329,1329,1329,1329,1329,1329,1329,1328,1328,1328,1328,1328,1328,1328,1328,1328,1328,1328,1328,1328,
+1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1327,1326,1326,1326,1326,
+1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,
+1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1326,1327,1327,1327,1327,1327,1327,1327,
+1327,1327,1327,1327,1327,1327,1327,1327,1328,1328,1328,1328,1328,1328,1328,1328,1328,1328,1329,1329,1329,
+1329,1329,1329,1329,1329,1330,1330,1330,1330,1330,1330,1330,1331,1331,1331,1331,1331,1331,1332,1332,1332,
+1332,1332,1332,1333,1333,1333,1333,1333,1334,1334,1334,1334,1334,1335,1335,1335,1335,1336,1336,1336,1336,
+1336,1337,1337,1337,1337,1338,1338,1338,1338,1339,1339,1339,1340,1340,1340,1340,1341,1341,1341,1341,1342,
+1342,1342,1343,1343,1343,1343,1344,1344,1344,1345,1345,1345,1346,1346,1346,1347,1347,1347,1348,1348,1348,
+1348,1349,1349,1349,1350,1350,1350,1351,1351,1352,1352,1352,1353,1353,1353,1354,1354,1354,1355,1355,1355,
+1356,1356,1356,1357,1357,1358,1358,1358,1359,1359,1359,1360,1360,1361,1361,1361,1362,1362,1362,1363,1363,
+1364,1364,1364,1365,1365,1366,1366,1366,1367,1367,1367,1368,1368,1369,1369,1369,1370,1370,1371,1371,1371,
+1372,1372,1373,1373,1373,1374,1374,1375,1375,1375,1376,1376,1377,1377,1377,1378,1378,1379,1379,1379,1380,
+1380,1381,1381,1381,1382,1382,1383,1383,1383,1384,1384,1385,1385,1385,1386,1386,1386,1387,1387,1388,1388,
+1388,1389,1389,1390,1390,1390,1391,1391,1391,1392,1392,1393,1393,1393,1394,1394,1394,1395,1395,1396,1396,
+1396,1397,1397,1397,1398,1398,1399,1399,1399,1400,1400,1400,1401,1401,1401,1402,1402,1402,1403,1403,1403,
+1404,1404,1404,1405,1405,1405,1406,1406,1406,1407,1407,1407,1408,1408,1408,1409,1409,1409,1410,1410,1410,
+1411,1411,1411,1411,1412,1412,1412,1413,1413,1413,1414,1414,1414,1414,1415,1415,1415,1416,1416,1416,1416,
+1417,1417,1417,1417,1418,1418,1418,1418,1419,1419,1419,1419,1420,1420,1420,1420,1421,1421,1421,1421,1422,
+1422,1422,1422,1422,1423,1423,1423,1423,1424,1424,1424,1424,1424,1425,1425,1425,1425,1425,1426,1426,1426,
+1426,1426,1427,1427,1427,1427,1427,1427,1428,1428,1428,1428,1428,1428,1429,1429,1429,1429,1429,1429,1430,
+1430,1430,1430,1430,1430,1431,1431,1431,1431,1431,1431,1431,1432,1432,1432,1432,1432,1432,1432,1432,1433,
+1433,1433,1433,1433,1433,1433,1433,1434,1434,1434,1434,1434,1434,1434,1434,1434,1435,1435,1435,1435,1435,
+1435,1435,1435,1435,1435,1435,1436,1436,1436,1436,1436,1436,1436,1436,1436,1436,1436,1437,1437,1437,1437,
+1437,1437,1437,1437,1437,1437,1437,1437,1437,1438,1438,1438,1438,1438,1438,1438,1438,1438,1438,1438,1438,
+1438,1438,1438,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1439,1440,1440,
+1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1440,1441,1441,1441,1441,
+1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1441,1442,1442,1442,1442,1442,1442,
+1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1442,1443,1443,1443,1443,1443,1443,1443,1443,1443,
+1443,1443,1443,1443,1443,1443,1443,1443,1443,1444,1444,1444,1444,1444,1444,1444,1444,1444,1444,1444,1444,
+1444,1444,1444,1444,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1445,1446,
+1446,1446,1446,1446,1446,1446,1446,1446,1446,1446,1446,1446,1446,1447,1447,1447,1447,1447,1447,1447,1447,
+1447,1447,1447,1447,1447,1447,1447,1448,1448,1448,1448,1448,1448,1448,1448,1448,1448,1448,1448,1448,1448,
+1448,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1449,1450,1450,1450,1450,1450,
+1450,1450,1450,1450,1450,1450,1450,1450,1450,1450,1450,1450,1450,1450,1451,1451,1451,1451,1451,1451,1451,
+1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,
+1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,
+1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1451,1450,1450,1450,1450,1450,
+1450,1450,1450,1450,1450,1450,1450,1450,1450,1449,1449,1449,1449,1449,1449,1449,1449,1449,1448,1448,1448,
+1448,1448,1448,1448,1448,1448,1447,1447,1447,1447,1447,1447,1447,1446,1446,1446,1446,1446,1446,1445,1445,
+1445,1445,1445,1445,1444,1444,1444,1444,1444,1443,1443,1443,1443,1443,1442,1442,1442,1442,1497,1497,1497,
+1497,1497,1496,1496,1496,1496,1495,1495,1495,1494,1494,1494,1494,1493,1493,1493,1492,1492,1492,1492,1491,
+1491,1491,1490,1490,1490,1489,1489,1489,1488,1488,1488,1487,1487,1487,1486,1486,1485,1485,1485,1484,1484,
+1484,1483,1483,1482,1482,1482,1481,1481,1481,1480,1480,1479,1479,1479,1478,1478,1477,1477,1477,1476,1476,
+1475,1475,1474,1474,1474,1473,1473,1472,1472,1471,1471,1471,1470,1470,1469,1469,1468,1468,1468,1467,1467,
+1466,1466,1465,1465,1465,1464,1464,1463,1463,1462,1462,1461,1461,1461,1460,1460,1459,1459,1458,1458,1457,
+1457,1457,1456,1456,1455,1455,1454,1454,1454,1453,1453,1452,1452,1451,1451,1450,1450,1450,1449,1449,1448,
+1448,1447,1447,1447,1446,1446,1445,1445,1444,1444,1444,1443,1443,1442,1442,1442,1441,1441,1440,1440,1439,
+1439,1439,1438,1438,1437,1437,1437,1436,1436,1435,1435,1435,1434,1434,1433,1433,1433,1432,1432,1431,1431,
+1431,1430,1430,1429,1429,1429,1428,1428,1427,1427,1427,1426,1426,1426,1425,1425,1424,1424,1424,1423,1423,
+1423,1422,1422,1421,1421,1421,1420,1420,1420,1419,1419,1418,1418,1418,1417,1417,1417,1416,1416,1415,1415,
+1415,1414,1414,1414,1413,1413,1412,1412,1412,1411,1411,1411,1410,1410,1409,1409,1409,1408,1408,1407,1407,
+1407,1406,1406,1406,1405,1405,1404,1404,1404,1403,1403,1403,1402,1402,1401,1401,1401,1400,1400,1399,1399,
+1399,1398,1398,1397,1397,1397,1396,1396,1395,1395,1395,1394,1394,1393,1393,1393,1392,1392,1391,1391,1391,
+1390,1390,1389,1389,1389,1388,1388,1387,1387,1387,1386,1386,1385,1385,1384,1384,1384,1383,1383,1382,1382,
+1382,1381,1381,1380,1380,1379,1379,1379,1378,1378,1377,1377,1376,1376,1376,1375,1375,1374,1374,1373,1373,
+1373,1372,1372,1371,1371,1370,1370,1370,1369,1369,1368,1368,1367,1367,1367,1366,1366,1365,1365,1364,1364,
+1364,1363,1363,1362,1362,1362,1361,1361,1360,1360,1359,1359,1359,1358,1358,1357,1357,1356,1356,1356,1355,
+1355,1354,1354,1354,1353,1353,1352,1352,1352,1351,1351,1350,1350,1350,1349,1349,1348,1348,1348,1347,1347,
+1347,1346,1346,1345,1345,1345,1344,1344,1344,1343,1343,1342,1342,1342,1341,1341,1341,1340,1340,1340,1339,
+1339,1339,1338,1338,1338,1337,1337,1337,1336,1336,1336,1336,1335,1335,1335,1334,1334,1334,1334,1333,1333,
+1333,1332,1332,1332,1332,1331,1331,1331,1331,1330,1330,1330,1330,1330,1329,1329,1329,1329,1328,1328,1328,
+1328,1328,1328,1327,1327,1327,1327,1327,1326,1326,1326,1326,1326,1326,1326,1325,1325,1325,1325,1325,1325,
+1325,1325,1324,1324,1324,1324,1324,1324,1324,1324,1324,1324,1323,1323,1323,1323,1323,1323,1323,1323,1323,
+1323,1323,1323,1323,1323,1323,1323,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,
+1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1322,1321,1321,1321,1321,1321,
+1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1321,1320,1320,1320,1320,
+1320,1320,1320,1320,1320,1320,1320,1320,1320,1319,1319,1319,1319,1319,1319,1319,1319,1319,1318,1318,1318,
+1318,1318,1318,1318,1318,1317,1317,1317,1317,1317,1317,1317,1316,1316,1316,1316,1316,1316,1316,1315,1315,
+1315,1315,1315,1315,1314,1314,1314,1314,1314,1314,1313,1313,1313,1313,1313,1312,1312,1312,1312,1312,1312,
+1311,1311,1311,1311,1311,1311,1310,1310,1310,1310,1310,1309,1309,1309,1309,1309,1309,1308,1308,1308,1308,
+1308,1308,1308,1307,1307,1307,1307,1307,1307,1307,1307,1306,1306,1306,1306,1306,1306,1306,1306,1306,1305,
+1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,
+1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1305,1306,1306,1306,1306,
+1306,1306,1306,1306,1306,1307,1307,1307,1307,1307,1307,1307,1308,1308,1308,1308,1308,1309,1309,1309,1309,
+1309,1310,1310,1310,1310,1310,1311,1311,1311,1311,1312,1312,1312,1312,1313,1313,1313,1313,1314,1314,1314,
+1315,1315,1315,1316,1316,1316,1316,1317,1317,1317,1318,1318,1318,1319,1319,1319,1320,1320,1320,1321,1321,
+1322,1322,1322,1323,1323,1323,1324,1324,1325,1325,1325,1326,1326,1327,1327,1327,1328,1328,1329,1329,1329,
+1330,1330,1331,1331,1332,1332,1333,1333,1333,1334,1334,1335,1335,1336,1336,1337,1337,1338,1338,1338,1339,
+1339,1340,1340,1341,1341,1342,1342,1343,1343,1344,1344,1345,1345,1346,1346,1347,1347,1348,1349,1349,1350,
+1350,1351,1351,1352,1352,1353,1353,1354,1354,1355,1356,1356,1357,1357,1358,1358,1359,1360,1360,1361,1361,
+1362,1362,1363,1364,1364,1365,1365,1366,1367,1367,1368,1368,1369,1369,1370,1371,1371,1372,1373,1373,1374,
+1374,1375,1376,1376,1377,1377,1378,1379,1379,1380,1380,1381,1382,1382,1383,1384,1384,1385,1385,1386,1387,
+1387,1388,1389,1389,1390,1390,1391,1392,1392,1393,1394,1394,1395,1395,1396,1397,1397,1398,1399,1399,1400,
+1400,1401,1402,1402,1403,1404,1404,1405,1405,1406,1407,1407,1408,1408,1409,1410,1410,1411,1411,1412,1413,
+1413,1414,1414,1415,1416,1416,1417,1417,1418,1419,1419,1420,1420,1421,1421,1422,1423,1423,1424,1424,1425,
+1425,1426,1427,1427,1428,1428,1429,1429,1430,1430,1431,1432,1432,1433,1433,1434,1434,1435,1435,1436,1436,
+1437,1437,1438,1439,1439,1440,1440,1441,1441,1442,1442,1443,1443,1444,1444,1445,1445,1446,1446,1447,1447,
+1448,1448,1449,1449,1450,1450,1450,1451,1451,1452,1452,1453,1453,1454,1454,1455,1455,1456,1456,1457,1457,
+1457,1458,1458,1459,1459,1460,1460,1461,1461,1461,1462,1462,1463,1463,1464,1464,1464,1465,1465,1466,1466,
+1466,1467,1467,1468,1468,1468,1469,1469,1470,1470,1470,1471,1471,1472,1472,1472,1473,1473,1473,1474,1474,
+1475,1475,1475,1476,1476,1476,1477,1477,1477,1478,1478,1479,1479,1479,1480,1480,1480,1481,1481,1481,1482,
+1482,1482,1482,1483,1483,1483,1484,1484,1484,1485,1485,1485,1485,1486,1486,1486,1487,1487,1487,1487,1488,
+1488,1488,1489,1489,1489,1489,1490,1490,1490,1490,1490,1491,1491,1491,1491,1492,1492,1492,1492,1492,1493,
+1493,1493,1493,1494,1494,1494,1494,1494,1494,1495,1495,1495,1495,1495,1495,1496,1496,1496,1496,1496,1496,
+1496,1497,1497,1497,1497,1497,1497,1497,1497,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1499,1499,
+1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1500,1500,1500,1500,1500,
+1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,1500,
+1500,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,
+1499,1499,1499,1499,1499,1499,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,
+1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,
+1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,1497,
+1497,1497,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,1498,
+1498,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1499,1500,1500,1500,1500,1500,1500,
+1500,1500,1500,1500,1500,1501,1501,1501,1501,1501,1501,1501,1501,1501,1501,1501,1501,1502,1502,1502,1502,
+1502,1502,1502,1502,1502,1502,1502,1502,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,
+1503,1503,1503,1503,1503,1503,1503,1504,1504,1504,1504,1504,1504,1504,1504,1504,1504,1504,1504,1504,1504,
+1504,1504,1504,1504,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1503,1502,
+1502,1502,1502,1502,1502,1502,1502,1502,1501,1501,1501,1501,1501,1501,1501,1500,1500,1500,1500,1500,1499,
+1499,1499,1499,1499,1499,1498,1498,1498,1498,1497,1545,1545,1544,1544,1544,1544,1544,1544,1543,1543,1543,
+1543,1543,1542,1542,1542,1542,1542,1541,1541,1541,1541,1540,1540,1540,1540,1539,1539,1539,1539,1538,1538,
+1538,1538,1537,1537,1537,1536,1536,1536,1535,1535,1535,1534,1534,1534,1534,1533,1533,1533,1532,1532,1531,
+1531,1531,1530,1530,1530,1529,1529,1529,1528,1528,1527,1527,1527,1526,1526,1526,1525,1525,1524,1524,1524,
+1523,1523,1522,1522,1521,1521,1521,1520,1520,1519,1519,1518,1518,1518,1517,1517,1516,1516,1515,1515,1514,
+1514,1514,1513,1513,1512,1512,1511,1511,1510,1510,1509,1509,1508,1508,1507,1507,1506,1506,1506,1505,1505,
+1504,1504,1503,1503,1502,1502,1501,1501,1500,1500,1499,1499,1498,1498,1497,1497,1496,1496,1495,1495,1494,
+1494,1493,1493,1492,1492,1491,1491,1490,1490,1489,1489,1488,1488,1487,1487,1486,1486,1485,1485,1484,1484,
+1483,1483,1482,1482,1481,1481,1480,1480,1479,1479,1478,1478,1477,1477,1476,1476,1475,1475,1474,1474,1473,
+1473,1472,1472,1471,1471,1470,1470,1469,1469,1468,1468,1467,1467,1466,1466,1465,1465,1464,1464,1463,1463,
+1462,1462,1461,1461,1460,1459,1459,1458,1458,1457,1457,1456,1456,1455,1455,1454,1453,1453,1452,1452,1451,
+1451,1450,1450,1449,1448,1448,1447,1447,1446,1445,1445,1444,1444,1443,1442,1442,1441,1440,1440,1439,1439,
+1438,1437,1437,1436,1435,1435,1434,1433,1433,1432,1431,1431,1430,1429,1428,1428,1427,1426,1426,1425,1424,
+1423,1423,1422,1421,1421,1420,1419,1418,1418,1417,1416,1415,1414,1414,1413,1412,1411,1411,1410,1409,1408,
+1407,1407,1406,1405,1404,1403,1403,1402,1401,1400,1399,1398,1398,1397,1396,1395,1394,1393,1393,1392,1391,
+1390,1389,1388,1387,1387,1386,1385,1384,1383,1382,1381,1380,1380,1379,1378,1377,1376,1375,1374,1373,1373,
+1372,1371,1370,1369,1368,1367,1366,1365,1365,1364,1363,1362,1361,1360,1359,1358,1357,1356,1356,1355,1354,
+1353,1352,1351,1350,1349,1348,1348,1347,1346,1345,1344,1343,1342,1341,1340,1339,1339,1338,1337,1336,1335,
+1334,1333,1332,1331,1331,1330,1329,1328,1327,1326,1325,1324,1324,1323,1322,1321,1320,1319,1318,1318,1317,
+1316,1315,1314,1313,1313,1312,1311,1310,1309,1309,1308,1307,1306,1306,1305,1304,1303,1303,1302,1301,1300,
+1300,1299,1298,1298,1297,1296,1296,1295,1294,1294,1293,1292,1292,1291,1291,1290,1290,1289,1289,1288,1288,
+1287,1287,1286,1286,1285,1285,1284,1284,1284,1283,1283,1283,1282,1282,1282,1282,1281,1281,1281,1281,1281,
+1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1280,1281,1281,
+1281,1281,1281,1282,1282,1282,1282,1283,1283,1283,1284,1284,1285,1285,1285,1286,1286,1287,1287,1288,1288,
+1289,1289,1290,1290,1291,1291,1292,1292,1293,1294,1294,1295,1295,1296,1297,1297,1298,1299,1299,1300,1301,
+1301,1302,1303,1303,1304,1304,1305,1306,1306,1307,1308,1308,1309,1310,1310,1311,1312,1312,1313,1313,1314,
+1315,1315,1316,1316,1317,1318,1318,1319,1319,1320,1320,1321,1321,1322,1322,1323,1323,1323,1324,1324,1325,
+1325,1325,1326,1326,1326,1326,1327,1327,1327,1327,1328,1328,1328,1328,1328,1328,1328,1329,1329,1329,1329,
+1329,1329,1329,1329,1329,1329,1328,1328,1328,1328,1328,1328,1328,1327,1327,1327,1327,1327,1326,1326,1326,
+1325,1325,1325,1325,1324,1324,1323,1323,1323,1322,1322,1322,1321,1321,1320,1320,1319,1319,1318,1318,1318,
+1317,1317,1316,1316,1315,1315,1314,1314,1313,1313,1312,1312,1311,1311,1310,1310,1309,1309,1308,1308,1307,
+1307,1306,1306,1305,1305,1304,1304,1303,1303,1302,1302,1301,1301,1300,1300,1300,1299,1299,1298,1298,1297,
+1297,1297,1296,1296,1296,1295,1295,1295,1294,1294,1294,1293,1293,1293,1292,1292,1292,1292,1291,1291,1291,
+1291,1290,1290,1290,1290,1289,1289,1289,1289,1289,1289,1288,1288,1288,1288,1288,1288,1288,1287,1287,1287,
+1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,
+1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1286,1287,
+1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1287,1288,1288,
+1288,1288,1288,1288,1288,1288,1288,1288,1288,1288,1288,1289,1289,1289,1289,1289,1289,1289,1289,1289,1290,
+1290,1290,1290,1290,1290,1290,1291,1291,1291,1291,1291,1291,1292,1292,1292,1292,1292,1293,1293,1293,1293,
+1293,1294,1294,1294,1294,1295,1295,1295,1296,1296,1296,1296,1297,1297,1297,1298,1298,1298,1299,1299,1299,
+1300,1300,1301,1301,1301,1302,1302,1303,1303,1303,1304,1304,1305,1305,1306,1306,1307,1307,1308,1308,1309,
+1309,1310,1310,1311,1312,1312,1313,1313,1314,1314,1315,1316,1316,1317,1317,1318,1319,1319,1320,1321,1321,
+1322,1323,1323,1324,1325,1325,1326,1327,1327,1328,1329,1330,1330,1331,1332,1333,1333,1334,1335,1336,1336,
+1337,1338,1339,1339,1340,1341,1342,1342,1343,1344,1345,1346,1346,1347,1348,1349,1350,1351,1351,1352,1353,
+1354,1355,1355,1356,1357,1358,1359,1360,1360,1361,1362,1363,1364,1365,1365,1366,1367,1368,1369,1370,1371,
+1371,1372,1373,1374,1375,1376,1377,1378,1378,1379,1380,1381,1382,1383,1384,1385,1385,1386,1387,1388,1389,
+1390,1391,1392,1393,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1406,1407,1408,
+1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,
+1430,1431,1432,1433,1434,1435,1436,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1451,1452,
+1453,1454,1455,1456,1457,1458,1460,1461,1462,1463,1464,1465,1466,1468,1469,1470,1471,1472,1473,1475,1476,
+1477,1478,1479,1480,1481,1483,1484,1485,1486,1487,1489,1490,1491,1492,1493,1494,1495,1497,1498,1499,1500,
+1501,1502,1504,1505,1506,1507,1508,1509,1510,1512,1513,1514,1515,1516,1517,1518,1519,1521,1522,1523,1524,
+1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,
+1546,1547,1548,1549,1550,1551,1551,1552,1553,1554,1555,1556,1556,1557,1558,1559,1560,1560,1561,1562,1563,
+1563,1564,1565,1565,1566,1567,1567,1568,1569,1569,1570,1570,1571,1572,1572,1573,1573,1574,1574,1575,1575,
+1576,1576,1577,1577,1577,1578,1578,1579,1579,1579,1580,1580,1580,1580,1581,1581,1581,1581,1582,1582,1582,
+1582,1582,1582,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,1583,
+1583,1582,1582,1582,1582,1582,1582,1581,1581,1581,1581,1580,1580,1580,1580,1579,1579,1579,1578,1578,1578,
+1577,1577,1576,1576,1576,1575,1575,1574,1574,1574,1573,1573,1572,1572,1571,1571,1570,1570,1569,1569,1568,
+1568,1567,1567,1566,1566,1565,1565,1564,1564,1563,1563,1562,1561,1561,1560,1560,1559,1559,1558,1558,1557,
+1557,1556,1556,1555,1554,1554,1553,1553,1552,1552,1551,1551,1550,1550,1549,1549,1548,1548,1548,1547,1547,
+1546,1546,1545,1545,1545,1544,1544,1543,1543,1543,1542,1542,1542,1541,1541,1541,1540,1540,1540,1540,1539,
+1539,1539,1539,1538,1538,1538,1538,1538,1537,1537,1537,1537,1537,1537,1537,1536,1536,1536,1536,1536,1536,
+1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1536,1537,1537,1537,
+1537,1537,1537,1537,1537,1537,1538,1538,1538,1538,1538,1538,1538,1539,1539,1539,1539,1539,1539,1540,1540,
+1540,1540,1540,1540,1541,1541,1541,1541,1541,1542,1542,1542,1542,1542,1542,1543,1543,1543,1543,1543,1543,
+1544,1544,1544,1544,1544,1544,1545,1545,1545,1545,1545,1545,1545,1545,1546,1546,1546,1546,1546,1546,1546,
+1546,1546,1546,1546,1546,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,1547,
+1547,1547,1547,1547,1547,1547,1546,1546,1546,1546,1546,1546,1546,1546,1546,1546,1546,1545,1545,1545,1545,
+1545,1545,1592,1592,1591,1591,1591,1591,1591,1591,1590,1590,1590,1590,1590,1590,1589,1589,1589,1589,1589,
+1588,1588,1588,1588,1588,1587,1587,1587,1587,1587,1586,1586,1586,1586,1586,1585,1585,1585,1585,1584,1584,
+1584,1584,1584,1583,1583,1583,1583,1582,1582,1582,1582,1581,1581,1581,1581,1580,1580,1580,1580,1579,1579,
+1579,1578,1578,1578,1578,1577,1577,1577,1576,1576,1576,1575,1575,1575,1574,1574,1573,1573,1573,1572,1572,
+1572,1571,1571,1570,1570,1569,1569,1569,1568,1568,1567,1567,1566,1566,1565,1565,1564,1564,1563,1563,1562,
+1562,1561,1561,1560,1559,1559,1558,1558,1557,1557,1556,1555,1555,1554,1554,1553,1552,1552,1551,1550,1550,
+1549,1548,1548,1547,1546,1546,1545,1544,1544,1543,1542,1542,1541,1540,1539,1539,1538,1537,1537,1536,1535,
+1534,1534,1533,1532,1532,1531,1530,1529,1529,1528,1527,1526,1526,1525,1524,1524,1523,1522,1521,1521,1520,
+1519,1518,1518,1517,1516,1516,1515,1514,1513,1513,1512,1511,1510,1510,1509,1508,1508,1507,1506,1505,1505,
+1504,1503,1503,1502,1501,1500,1500,1499,1498,1498,1497,1496,1495,1495,1494,1493,1493,1492,1491,1490,1490,
+1489,1488,1487,1487,1486,1485,1485,1484,1483,1482,1482,1481,1480,1479,1479,1478,1477,1476,1475,1475,1474,
+1473,1472,1471,1471,1470,1469,1468,1467,1467,1466,1465,1464,1463,1462,1461,1461,1460,1459,1458,1457,1456,
+1455,1454,1453,1452,1451,1451,1450,1449,1448,1447,1446,1445,1444,1443,1442,1441,1440,1439,1438,1437,1436,
+1435,1434,1433,1432,1431,1429,1428,1427,1426,1425,1424,1423,1422,1421,1420,1419,1418,1417,1415,1414,1413,
+1412,1411,1410,1409,1408,1406,1405,1404,1403,1402,1401,1400,1399,1397,1396,1395,1394,1393,1392,1391,1389,
+1388,1387,1386,1385,1384,1383,1381,1380,1379,1378,1377,1376,1375,1373,1372,1371,1370,1369,1368,1367,1365,
+1364,1363,1362,1361,1360,1358,1357,1356,1355,1354,1353,1351,1350,1349,1348,1347,1345,1344,1343,1342,1341,
+1339,1338,1337,1336,1335,1333,1332,1331,1330,1328,1327,1326,1325,1323,1322,1321,1319,1318,1317,1316,1314,
+1313,1312,1310,1309,1308,1306,1305,1304,1302,1301,1299,1298,1297,1295,1294,1293,1291,1290,1288,1287,1286,
+1284,1283,1281,1280,1279,1277,1276,1275,1273,1272,1270,1269,1268,1266,1265,1264,1262,1261,1260,1258,1257,
+1256,1254,1253,1252,1251,1249,1248,1247,1246,1245,1243,1242,1241,1240,1239,1238,1237,1236,1235,1234,1233,
+1233,1232,1231,1230,1229,1229,1228,1227,1227,1226,1226,1225,1225,1224,1224,1224,1223,1223,1223,1223,1223,
+1223,1223,1223,1223,1223,1223,1223,1224,1224,1224,1225,1225,1226,1226,1227,1228,1228,1229,1230,1231,1232,
+1233,1234,1235,1236,1237,1238,1239,1241,1242,1243,1245,1246,1248,1249,1251,1252,1254,1256,1257,1259,1261,
+1263,1265,1266,1268,1270,1272,1274,1276,1278,1280,1282,1284,1286,1288,1290,1293,1295,1297,1299,1301,1303,
+1305,1307,1310,1312,1314,1316,1318,1320,1322,1324,1326,1328,1330,1332,1334,1336,1338,1340,1342,1344,1346,
+1347,1349,1351,1352,1354,1356,1357,1359,1360,1362,1363,1364,1366,1367,1368,1369,1370,1371,1372,1373,1374,
+1375,1376,1377,1377,1378,1379,1379,1380,1380,1380,1381,1381,1381,1381,1381,1382,1382,1382,1381,1381,1381,
+1381,1381,1380,1380,1379,1379,1378,1378,1377,1377,1376,1375,1374,1374,1373,1372,1371,1370,1369,1368,1367,
+1366,1365,1364,1363,1361,1360,1359,1358,1357,1355,1354,1353,1351,1350,1349,1347,1346,1345,1343,1342,1340,
+1339,1338,1336,1335,1333,1332,1331,1329,1328,1326,1325,1324,1322,1321,1320,1318,1317,1316,1314,1313,1312,
+1310,1309,1308,1307,1305,1304,1303,1302,1301,1300,1299,1297,1296,1295,1294,1293,1292,1291,1290,1289,1289,
+1288,1287,1286,1285,1284,1283,1283,1282,1281,1280,1280,1279,1278,1278,1277,1276,1276,1275,1274,1274,1273,
+1273,1272,1272,1271,1271,1270,1270,1269,1269,1268,1268,1267,1267,1267,1266,1266,1265,1265,1265,1264,1264,
+1263,1263,1263,1262,1262,1262,1261,1261,1260,1260,1260,1259,1259,1259,1258,1258,1257,1257,1257,1256,1256,
+1256,1255,1255,1254,1254,1254,1253,1253,1252,1252,1252,1251,1251,1250,1250,1249,1249,1249,1248,1248,1247,
+1247,1246,1246,1245,1245,1244,1244,1244,1243,1243,1242,1242,1241,1241,1240,1240,1239,1239,1238,1238,1237,
+1237,1237,1236,1236,1235,1235,1234,1234,1233,1233,1233,1232,1232,1231,1231,1231,1230,1230,1229,1229,1229,
+1228,1228,1228,1227,1227,1227,1226,1226,1226,1226,1225,1225,1225,1225,1224,1224,1224,1224,1224,1224,1224,
+1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1223,1224,1224,1224,1224,1224,1224,
+1224,1225,1225,1225,1225,1226,1226,1226,1227,1227,1227,1228,1228,1228,1229,1229,1230,1230,1230,1231,1231,
+1232,1232,1233,1233,1234,1235,1235,1236,1236,1237,1238,1238,1239,1239,1240,1241,1241,1242,1243,1243,1244,
+1245,1246,1246,1247,1248,1249,1249,1250,1251,1252,1252,1253,1254,1255,1256,1257,1257,1258,1259,1260,1261,
+1262,1262,1263,1264,1265,1266,1267,1268,1268,1269,1270,1271,1272,1273,1274,1275,1276,1276,1277,1278,1279,
+1280,1281,1282,1283,1284,1285,1286,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,
+1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1320,1321,
+1322,1323,1324,1325,1326,1328,1329,1330,1331,1333,1334,1335,1336,1338,1339,1340,1342,1343,1344,1346,1347,
+1349,1350,1351,1353,1354,1356,1357,1359,1361,1362,1364,1365,1367,1369,1370,1372,1374,1375,1377,1379,1381,
+1383,1384,1386,1388,1390,1392,1394,1396,1398,1400,1401,1403,1405,1408,1410,1412,1414,1416,1418,1420,1422,
+1424,1426,1429,1431,1433,1435,1437,1440,1442,1444,1447,1449,1451,1453,1456,1458,1460,1463,1465,1467,1470,
+1472,1475,1477,1479,1482,1484,1486,1489,1491,1494,1496,1498,1501,1503,1506,1508,1510,1513,1515,1518,1520,
+1522,1525,1527,1529,1532,1534,1536,1539,1541,1543,1546,1548,1550,1553,1555,1557,1559,1562,1564,1566,1568,
+1571,1573,1575,1577,1579,1581,1583,1586,1588,1590,1592,1594,1596,1598,1600,1602,1604,1606,1608,1610,1612,
+1613,1615,1617,1619,1621,1623,1624,1626,1628,1630,1631,1633,1635,1636,1638,1639,1641,1643,1644,1646,1647,
+1648,1650,1651,1653,1654,1655,1657,1658,1659,1661,1662,1663,1664,1665,1667,1668,1669,1670,1671,1672,1673,
+1674,1675,1676,1676,1677,1678,1679,1680,1680,1681,1682,1682,1683,1683,1684,1684,1685,1685,1686,1686,1686,
+1687,1687,1687,1687,1688,1688,1688,1688,1688,1688,1688,1688,1688,1688,1687,1687,1687,1687,1686,1686,1686,
+1685,1685,1684,1684,1683,1683,1682,1682,1681,1680,1680,1679,1678,1677,1677,1676,1675,1674,1673,1672,1671,
+1670,1669,1668,1667,1666,1665,1664,1663,1661,1660,1659,1658,1657,1655,1654,1653,1652,1650,1649,1648,1646,
+1645,1644,1642,1641,1639,1638,1637,1635,1634,1633,1631,1630,1629,1627,1626,1625,1623,1622,1620,1619,1618,
+1617,1615,1614,1613,1611,1610,1609,1608,1606,1605,1604,1603,1602,1601,1600,1598,1597,1596,1595,1594,1593,
+1592,1591,1590,1590,1589,1588,1587,1586,1586,1585,1584,1583,1583,1582,1581,1581,1580,1580,1579,1579,1578,
+1578,1577,1577,1577,1576,1576,1576,1575,1575,1575,1575,1575,1574,1574,1574,1574,1574,1574,1574,1574,1574,
+1574,1574,1574,1574,1574,1574,1575,1575,1575,1575,1575,1575,1576,1576,1576,1576,1577,1577,1577,1578,1578,
+1578,1579,1579,1579,1580,1580,1580,1581,1581,1581,1582,1582,1582,1583,1583,1583,1584,1584,1585,1585,1585,
+1586,1586,1586,1587,1587,1587,1588,1588,1588,1589,1589,1589,1589,1590,1590,1590,1591,1591,1591,1591,1592,
+1592,1592,1592,1592,1593,1593,1593,1593,1593,1593,1594,1594,1594,1594,1594,1594,1594,1594,1594,1594,1594,
+1595,1595,1595,1595,1595,1595,1595,1595,1595,1595,1594,1594,1594,1594,1594,1594,1594,1594,1594,1594,1594,
+1594,1594,1593,1593,1593,1593,1593,1593,1593,1593,1592,1592,1592,1592,1592,1646,1646,1645,1645,1645,1644,
+1644,1643,1643,1643,1642,1642,1641,1641,1641,1640,1640,1640,1639,1639,1639,1639,1638,1638,1638,1638,1637,
+1637,1637,1637,1636,1636,1636,1636,1636,1635,1635,1635,1635,1635,1634,1634,1634,1634,1634,1634,1633,1633,
+1633,1633,1633,1632,1632,1632,1632,1632,1632,1632,1631,1631,1631,1631,1631,1630,1630,1630,1630,1630,1629,
+1629,1629,1629,1628,1628,1628,1627,1627,1627,1627,1626,1626,1626,1625,1625,1624,1624,1623,1623,1623,1622,
+1622,1621,1621,1620,1620,1619,1619,1618,1617,1617,1616,1616,1615,1614,1614,1613,1612,1612,1611,1610,1609,
+1609,1608,1607,1606,1605,1604,1604,1603,1602,1601,1600,1599,1598,1597,1596,1595,1594,1593,1592,1591,1590,
+1589,1588,1587,1586,1585,1584,1583,1582,1581,1580,1579,1578,1577,1576,1574,1573,1572,1571,1570,1569,1568,
+1567,1565,1564,1563,1562,1561,1560,1559,1557,1556,1555,1554,1553,1552,1551,1550,1548,1547,1546,1545,1544,
+1543,1542,1541,1540,1539,1537,1536,1535,1534,1533,1532,1531,1530,1529,1528,1527,1526,1525,1524,1523,1522,
+1521,1520,1519,1518,1517,1516,1515,1514,1513,1512,1511,1510,1509,1508,1507,1506,1506,1505,1504,1503,1502,
+1501,1500,1499,1498,1497,1496,1495,1494,1494,1493,1492,1491,1490,1489,1488,1487,1486,1485,1484,1483,1482,
+1481,1480,1479,1478,1477,1476,1475,1474,1473,1472,1471,1470,1469,1468,1467,1466,1465,1464,1463,1462,1461,
+1460,1459,1458,1457,1456,1454,1453,1452,1451,1450,1449,1448,1446,1445,1444,1443,1442,1441,1439,1438,1437,
+1436,1435,1433,1432,1431,1430,1429,1427,1426,1425,1424,1423,1421,1420,1419,1418,1416,1415,1414,1413,1412,
+1410,1409,1408,1407,1406,1404,1403,1402,1401,1400,1398,1397,1396,1395,1394,1393,1392,1390,1389,1388,1387,
+1386,1385,1384,1383,1381,1380,1379,1378,1377,1376,1375,1374,1373,1372,1371,1370,1369,1368,1367,1366,1365,
+1363,1362,1361,1360,1359,1358,1357,1356,1355,1354,1353,1352,1351,1350,1349,1348,1347,1345,1344,1343,1342,
+1341,1340,1339,1337,1336,1335,1334,1333,1331,1330,1329,1327,1326,1325,1323,1322,1321,1319,1318,1316,1315,
+1313,1312,1310,1308,1307,1305,1303,1302,1300,1298,1297,1295,1293,1291,1289,1287,1286,1284,1282,1280,1278,
+1276,1274,1272,1270,1267,1265,1263,1261,1259,1257,1255,1253,1250,1248,1246,1244,1242,1239,1237,1235,1233,
+1231,1229,1226,1224,1222,1220,1218,1216,1214,1212,1210,1208,1206,1204,1202,1201,1199,1197,1195,1194,1192,
+1191,1189,1188,1186,1185,1184,1183,1181,1180,1179,1178,1178,1177,1176,1176,1175,1175,1174,1174,1174,1174,
+1174,1174,1174,1175,1175,1175,1176,1177,1178,1178,1179,1181,1182,1183,1184,1186,1188,1189,1191,1193,1195,
+1197,1199,1201,1204,1206,1209,1211,1214,1217,1220,1223,1226,1229,1232,1236,1239,1242,1246,1249,1253,1257,
+1260,1264,1268,1272,1276,1279,1283,1287,1291,1295,1299,1304,1308,1312,1316,1320,1324,1328,1332,1336,1340,
+1344,1348,1352,1356,1360,1363,1367,1371,1375,1378,1382,1385,1389,1392,1395,1398,1401,1404,1407,1410,1413,
+1416,1418,1421,1423,1425,1427,1429,1431,1433,1435,1436,1438,1439,1441,1442,1443,1444,1444,1445,1446,1446,
+1446,1447,1447,1447,1447,1446,1446,1446,1445,1444,1444,1443,1442,1441,1439,1438,1437,1435,1434,1432,1430,
+1429,1427,1425,1423,1420,1418,1416,1414,1411,1409,1406,1404,1401,1398,1396,1393,1390,1387,1385,1382,1379,
+1376,1373,1370,1367,1364,1361,1358,1355,1352,1349,1346,1343,1340,1337,1334,1331,1329,1326,1323,1320,1317,
+1314,1312,1309,1306,1304,1301,1299,1296,1294,1291,1289,1287,1284,1282,1280,1278,1276,1274,1272,1270,1268,
+1266,1264,1262,1261,1259,1257,1256,1254,1253,1251,1250,1249,1247,1246,1245,1244,1243,1241,1240,1239,1238,
+1238,1237,1236,1235,1234,1233,1233,1232,1231,1231,1230,1229,1229,1228,1228,1227,1227,1226,1226,1225,1225,
+1224,1224,1223,1223,1223,1222,1222,1221,1221,1221,1220,1220,1220,1219,1219,1218,1218,1218,1217,1217,1216,
+1216,1216,1215,1215,1214,1214,1213,1213,1213,1212,1212,1211,1211,1210,1210,1209,1208,1208,1207,1207,1206,
+1206,1205,1204,1204,1203,1203,1202,1201,1201,1200,1199,1199,1198,1197,1197,1196,1195,1195,1194,1193,1193,
+1192,1191,1190,1190,1189,1188,1188,1187,1186,1186,1185,1184,1184,1183,1183,1182,1181,1181,1180,1179,1179,
+1178,1178,1177,1177,1176,1176,1175,1175,1174,1174,1173,1173,1173,1172,1172,1171,1171,1171,1170,1170,1170,
+1169,1169,1169,1169,1169,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,1168,
+1168,1168,1168,1168,1168,1169,1169,1169,1169,1170,1170,1170,1170,1171,1171,1171,1172,1172,1173,1173,1173,
+1174,1174,1175,1175,1176,1176,1177,1177,1178,1178,1179,1180,1180,1181,1181,1182,1183,1183,1184,1185,1186,
+1186,1187,1188,1188,1189,1190,1191,1191,1192,1193,1194,1195,1195,1196,1197,1198,1199,1200,1200,1201,1202,
+1203,1204,1205,1206,1207,1207,1208,1209,1210,1211,1212,1213,1214,1215,1215,1216,1217,1218,1219,1220,1221,
+1222,1223,1224,1225,1225,1226,1227,1228,1229,1230,1231,1232,1233,1233,1234,1235,1236,1237,1238,1239,1240,
+1240,1241,1242,1243,1244,1245,1246,1246,1247,1248,1249,1250,1251,1252,1252,1253,1254,1255,1256,1257,1258,
+1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,
+1279,1281,1282,1283,1284,1286,1287,1288,1290,1291,1292,1294,1295,1297,1298,1300,1301,1303,1305,1306,1308,
+1310,1312,1313,1315,1317,1319,1321,1323,1325,1327,1329,1331,1334,1336,1338,1340,1343,1345,1348,1350,1353,
+1355,1358,1360,1363,1366,1368,1371,1374,1377,1380,1382,1385,1388,1391,1394,1397,1400,1403,1407,1410,1413,
+1416,1419,1422,1426,1429,1432,1436,1439,1442,1446,1449,1452,1456,1459,1462,1466,1469,1473,1476,1480,1483,
+1486,1490,1493,1497,1500,1504,1507,1510,1514,1517,1521,1524,1527,1531,1534,1538,1541,1544,1547,1551,1554,
+1557,1561,1564,1567,1570,1573,1577,1580,1583,1586,1589,1592,1595,1598,1601,1604,1607,1610,1613,1616,1619,
+1621,1624,1627,1630,1633,1635,1638,1641,1644,1646,1649,1651,1654,1657,1659,1662,1664,1667,1669,1672,1674,
+1677,1679,1681,1684,1686,1688,1691,1693,1695,1698,1700,1702,1704,1706,1709,1711,1713,1715,1717,1719,1721,
+1723,1725,1727,1729,1731,1733,1735,1736,1738,1740,1742,1743,1745,1747,1748,1750,1752,1753,1755,1756,1758,
+1759,1760,1762,1763,1764,1765,1767,1768,1769,1770,1771,1772,1773,1773,1774,1775,1776,1777,1777,1778,1778,
+1779,1779,1779,1780,1780,1780,1780,1780,1780,1780,1780,1780,1780,1779,1779,1779,1778,1778,1777,1777,1776,
+1775,1774,1773,1773,1772,1771,1769,1768,1767,1766,1765,1763,1762,1761,1759,1757,1756,1754,1753,1751,1749,
+1747,1746,1744,1742,1740,1738,1736,1734,1732,1730,1728,1726,1724,1722,1720,1717,1715,1713,1711,1709,1707,
+1704,1702,1700,1698,1696,1694,1691,1689,1687,1685,1683,1681,1679,1677,1675,1673,1671,1669,1667,1665,1663,
+1661,1659,1658,1656,1654,1653,1651,1649,1648,1646,1645,1644,1642,1641,1640,1639,1637,1636,1635,1634,1633,
+1632,1631,1630,1630,1629,1628,1628,1627,1627,1626,1626,1625,1625,1625,1624,1624,1624,1624,1624,1624,1624,
+1624,1624,1624,1624,1624,1624,1625,1625,1625,1626,1626,1626,1627,1627,1628,1628,1629,1629,1630,1630,1631,
+1632,1632,1633,1634,1635,1635,1636,1637,1637,1638,1639,1639,1640,1641,1642,1643,1643,1644,1645,1645,1646,
+1647,1648,1648,1649,1650,1650,1651,1652,1652,1653,1653,1654,1655,1655,1656,1656,1657,1657,1658,1658,1659,
+1659,1659,1660,1660,1660,1661,1661,1661,1661,1662,1662,1662,1662,1662,1662,1662,1662,1662,1662,1662,1662,
+1662,1662,1662,1662,1662,1662,1662,1662,1661,1661,1661,1661,1660,1660,1660,1660,1659,1659,1659,1658,1658,
+1657,1657,1657,1656,1656,1656,1655,1655,1654,1654,1654,1653,1653,1652,1652,1651,1651,1650,1650,1650,1649,
+1649,1648,1648,1647,1647,1647,1646,1704,1703,1702,1702,1701,1700,1700,1699,1698,1698,1697,1697,1696,1696,
+1695,1695,1694,1694,1693,1693,1693,1692,1692,1692,1691,1691,1691,1690,1690,1690,1689,1689,1689,1689,1688,
+1688,1688,1688,1688,1688,1687,1687,1687,1687,1687,1687,1687,1686,1686,1686,1686,1686,1686,1686,1686,1685,
+1685,1685,1685,1685,1685,1685,1685,1684,1684,1684,1684,1684,1684,1684,1683,1683,1683,1683,1682,1682,1682,
+1682,1681,1681,1681,1680,1680,1680,1679,1679,1679,1678,1678,1677,1677,1676,1676,1675,1675,1674,1674,1673,
+1673,1672,1671,1671,1670,1669,1669,1668,1667,1666,1666,1665,1664,1663,1662,1661,1661,1660,1659,1658,1657,
+1656,1655,1654,1653,1652,1651,1650,1648,1647,1646,1645,1644,1643,1641,1640,1639,1638,1637,1635,1634,1633,
+1631,1630,1629,1627,1626,1625,1623,1622,1620,1619,1618,1616,1615,1613,1612,1610,1609,1607,1606,1605,1603,
+1602,1600,1599,1597,1596,1594,1593,1591,1590,1588,1587,1585,1584,1582,1581,1579,1578,1576,1575,1573,1572,
+1570,1569,1567,1566,1565,1563,1562,1560,1559,1558,1556,1555,1553,1552,1551,1549,1548,1547,1545,1544,1543,
+1542,1540,1539,1538,1537,1535,1534,1533,1532,1530,1529,1528,1527,1526,1525,1523,1522,1521,1520,1519,1518,
+1517,1515,1514,1513,1512,1511,1510,1509,1508,1507,1506,1504,1503,1502,1501,1500,1499,1498,1497,1496,1495,
+1493,1492,1491,1490,1489,1488,1487,1486,1484,1483,1482,1481,1480,1479,1477,1476,1475,1474,1472,1471,1470,
+1469,1467,1466,1465,1464,1462,1461,1460,1458,1457,1456,1454,1453,1452,1450,1449,1448,1446,1445,1443,1442,
+1441,1439,1438,1436,1435,1433,1432,1431,1429,1428,1426,1425,1424,1422,1421,1419,1418,1417,1415,1414,1412,
+1411,1410,1408,1407,1406,1404,1403,1402,1400,1399,1398,1397,1395,1394,1393,1392,1390,1389,1388,1387,1386,
+1385,1384,1382,1381,1380,1379,1378,1377,1376,1375,1374,1373,1372,1371,1370,1369,1369,1368,1367,1366,1365,
+1364,1363,1362,1362,1361,1360,1359,1358,1357,1357,1356,1355,1354,1353,1352,1352,1351,1350,1349,1348,1347,
+1346,1345,1344,1343,1342,1341,1340,1339,1338,1337,1336,1335,1333,1332,1331,1330,1328,1327,1326,1324,1323,
+1321,1320,1318,1316,1315,1313,1311,1309,1307,1306,1304,1302,1299,1297,1295,1293,1291,1288,1286,1284,1281,
+1279,1276,1274,1271,1268,1266,1263,1260,1257,1255,1252,1249,1246,1243,1240,1237,1234,1231,1228,1225,1222,
+1219,1215,1212,1209,1206,1203,1200,1197,1194,1191,1188,1185,1182,1180,1177,1174,1171,1169,1166,1164,1161,
+1159,1157,1155,1152,1150,1149,1147,1145,1143,1142,1141,1139,1138,1137,1136,1136,1135,1135,1134,1134,1134,
+1134,1134,1135,1135,1136,1137,1138,1139,1141,1142,1144,1146,1148,1150,1153,1155,1158,1161,1164,1167,1170,
+1174,1177,1181,1185,1189,1193,1197,1202,1206,1211,1216,1221,1226,1231,1236,1241,1247,1252,1258,1264,1269,
+1275,1281,1286,1292,1298,1304,1310,1316,1322,1328,1334,1339,1345,1351,1357,1362,1368,1374,1379,1384,1390,
+1395,1400,1405,1410,1415,1419,1424,1428,1432,1437,1440,1444,1448,1451,1455,1458,1460,1463,1466,1468,1470,
+1472,1474,1475,1477,1478,1479,1480,1480,1481,1481,1481,1480,1480,1479,1478,1477,1476,1475,1473,1471,1469,
+1467,1465,1462,1460,1457,1454,1451,1447,1444,1440,1437,1433,1429,1425,1420,1416,1412,1407,1403,1398,1393,
+1389,1384,1379,1374,1369,1364,1359,1354,1349,1344,1339,1333,1328,1323,1318,1313,1308,1303,1298,1293,1288,
+1284,1279,1274,1269,1265,1260,1256,1252,1247,1243,1239,1235,1231,1227,1224,1220,1217,1213,1210,1207,1203,
+1200,1197,1195,1192,1189,1187,1185,1182,1180,1178,1176,1174,1172,1171,1169,1167,1166,1165,1164,1162,1161,
+1160,1159,1159,1158,1157,1157,1156,1155,1155,1155,1154,1154,1154,1154,1154,1154,1154,1154,1154,1154,1154,
+1154,1154,1154,1154,1154,1155,1155,1155,1155,1156,1156,1156,1156,1157,1157,1157,1157,1157,1158,1158,1158,
+1158,1158,1158,1158,1159,1159,1159,1159,1159,1159,1159,1159,1159,1159,1158,1158,1158,1158,1158,1158,1157,
+1157,1157,1157,1156,1156,1156,1155,1155,1154,1154,1154,1153,1153,1152,1152,1151,1151,1151,1150,1150,1149,
+1149,1148,1148,1147,1147,1146,1146,1146,1145,1145,1144,1144,1144,1143,1143,1143,1142,1142,1142,1141,1141,
+1141,1141,1141,1140,1140,1140,1140,1140,1140,1140,1140,1140,1140,1140,1140,1140,1140,1141,1141,1141,1141,
+1142,1142,1142,1142,1143,1143,1144,1144,1144,1145,1145,1146,1146,1147,1147,1148,1149,1149,1150,1150,1151,
+1152,1152,1153,1154,1155,1155,1156,1157,1157,1158,1159,1160,1161,1161,1162,1163,1164,1164,1165,1166,1167,
+1168,1168,1169,1170,1171,1172,1172,1173,1174,1175,1176,1176,1177,1178,1179,1180,1181,1181,1182,1183,1184,
+1185,1185,1186,1187,1188,1189,1189,1190,1191,1192,1193,1193,1194,1195,1196,1197,1198,1198,1199,1200,1201,
+1202,1203,1204,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,
+1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1238,1239,1240,1241,1242,1243,
+1244,1245,1246,1247,1248,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,
+1266,1267,1268,1269,1269,1270,1271,1272,1273,1274,1275,1275,1276,1277,1278,1279,1280,1280,1281,1282,1283,
+1284,1284,1285,1286,1287,1287,1288,1289,1290,1291,1291,1292,1293,1294,1295,1296,1296,1297,1298,1299,1300,
+1301,1302,1303,1304,1305,1307,1308,1309,1310,1312,1313,1314,1316,1317,1319,1320,1322,1323,1325,1327,1328,
+1330,1332,1334,1336,1338,1340,1342,1344,1347,1349,1351,1354,1356,1359,1361,1364,1367,1370,1372,1375,1378,
+1381,1384,1387,1390,1393,1397,1400,1403,1406,1410,1413,1417,1420,1424,1427,1431,1435,1438,1442,1446,1449,
+1453,1457,1461,1464,1468,1472,1476,1480,1483,1487,1491,1495,1499,1503,1507,1510,1514,1518,1522,1525,1529,
+1533,1537,1540,1544,1548,1551,1555,1558,1562,1565,1569,1572,1576,1579,1582,1586,1589,1592,1595,1599,1602,
+1605,1608,1611,1614,1617,1620,1623,1625,1628,1631,1634,1637,1639,1642,1645,1647,1650,1652,1655,1657,1660,
+1662,1665,1667,1670,1672,1675,1677,1679,1682,1684,1686,1689,1691,1693,1696,1698,1700,1703,1705,1707,1710,
+1712,1714,1717,1719,1721,1724,1726,1728,1731,1733,1736,1738,1740,1743,1745,1747,1750,1752,1755,1757,1759,
+1762,1764,1767,1769,1771,1774,1776,1778,1781,1783,1785,1788,1790,1792,1794,1796,1798,1801,1803,1805,1807,
+1809,1811,1813,1814,1816,1818,1820,1821,1823,1824,1826,1827,1828,1830,1831,1832,1833,1834,1835,1836,1836,
+1837,1838,1838,1839,1839,1839,1839,1839,1839,1839,1839,1839,1838,1838,1837,1837,1836,1835,1834,1833,1832,
+1831,1830,1828,1827,1825,1824,1822,1821,1819,1817,1815,1813,1811,1809,1807,1804,1802,1800,1797,1795,1793,
+1790,1788,1785,1782,1780,1777,1774,1772,1769,1766,1764,1761,1758,1755,1753,1750,1747,1745,1742,1739,1737,
+1734,1732,1729,1727,1724,1722,1719,1717,1715,1713,1710,1708,1706,1704,1702,1700,1698,1697,1695,1693,1692,
+1690,1689,1688,1686,1685,1684,1683,1682,1681,1680,1679,1679,1678,1678,1677,1677,1676,1676,1676,1676,1676,
+1676,1676,1676,1676,1676,1677,1677,1678,1678,1679,1679,1680,1681,1681,1682,1683,1684,1685,1686,1687,1688,
+1689,1690,1691,1692,1693,1695,1696,1697,1698,1700,1701,1702,1703,1705,1706,1707,1709,1710,1711,1712,1714,
+1715,1716,1717,1719,1720,1721,1722,1723,1724,1725,1727,1728,1729,1730,1730,1732,1732,1733,1734,1735,1736,
+1736,1737,1738,1738,1739,1740,1740,1741,1741,1742,1742,1742,1743,1743,1743,1743,1743,1743,1744,1744,1744,
+1744,1743,1743,1743,1743,1743,1743,1742,1742,1742,1741,1741,1741,1740,1739,1739,1739,1738,1737,1737,1736,
+1736,1735,1734,1734,1733,1732,1731,1730,1730,1729,1728,1727,1727,1726,1725,1724,1723,1722,1722,1721,1720,
+1719,1718,1717,1716,1716,1715,1714,1713,1712,1711,1711,1710,1709,1708,1707,1707,1706,1705,1705,1704,1763,
+1762,1762,1761,1760,1760,1759,1759,1758,1758,1757,1757,1757,1756,1756,1755,1755,1755,1754,1754,1754,1753,
+1753,1753,1752,1752,1752,1752,1751,1751,1751,1751,1750,1750,1750,1750,1750,1749,1749,1749,1749,1748,1748,
+1748,1748,1748,1747,1747,1747,1747,1747,1746,1746,1746,1746,1745,1745,1745,1744,1744,1744,1744,1743,1743,
+1743,1742,1742,1741,1741,1741,1740,1740,1739,1739,1739,1738,1738,1737,1737,1736,1736,1735,1735,1734,1734,
+1733,1733,1732,1732,1731,1730,1730,1729,1729,1728,1728,1727,1726,1726,1725,1725,1724,1723,1723,1722,1721,
+1721,1720,1719,1718,1718,1717,1716,1716,1715,1714,1713,1712,1712,1711,1710,1709,1708,1707,1707,1706,1705,
+1704,1703,1702,1701,1700,1699,1698,1697,1696,1695,1694,1693,1692,1691,1690,1689,1687,1686,1685,1684,1682,
+1681,1680,1679,1677,1676,1674,1673,1672,1670,1669,1667,1666,1664,1663,1661,1660,1658,1656,1655,1653,1651,
+1650,1648,1646,1645,1643,1641,1639,1638,1636,1634,1632,1631,1629,1627,1625,1623,1622,1620,1618,1616,1614,
+1613,1611,1609,1607,1605,1603,1602,1600,1598,1596,1595,1593,1591,1589,1588,1586,1584,1582,1581,1579,1577,
+1576,1574,1573,1571,1569,1568,1566,1565,1563,1562,1560,1559,1557,1556,1554,1553,1551,1550,1548,1547,1546,
+1544,1543,1542,1540,1539,1537,1536,1535,1533,1532,1531,1529,1528,1527,1526,1524,1523,1522,1520,1519,1518,
+1516,1515,1513,1512,1511,1509,1508,1507,1505,1504,1502,1501,1500,1498,1497,1495,1494,1492,1491,1489,1488,
+1486,1484,1483,1481,1480,1478,1476,1475,1473,1471,1470,1468,1466,1465,1463,1461,1459,1458,1456,1454,1452,
+1450,1449,1447,1445,1443,1441,1439,1438,1436,1434,1432,1430,1428,1427,1425,1423,1421,1419,1417,1415,1414,
+1412,1410,1408,1406,1404,1403,1401,1399,1397,1396,1394,1392,1390,1389,1387,1385,1384,1382,1380,1379,1377,
+1376,1374,1373,1371,1370,1368,1367,1365,1364,1362,1361,1360,1359,1357,1356,1355,1354,1352,1351,1350,1349,
+1348,1347,1346,1345,1344,1343,1342,1341,1340,1339,1338,1337,1336,1335,1334,1333,1333,1332,1331,1330,1329,
+1328,1328,1327,1326,1325,1324,1323,1323,1322,1321,1320,1319,1318,1317,1316,1315,1314,1313,1312,1311,1309,
+1308,1307,1306,1304,1303,1301,1300,1298,1297,1295,1293,1291,1290,1288,1286,1284,1282,1279,1277,1275,1272,
+1270,1267,1265,1262,1260,1257,1254,1251,1248,1245,1242,1239,1236,1232,1229,1226,1222,1219,1215,1212,1208,
+1205,1201,1197,1194,1190,1186,1183,1179,1176,1172,1168,1165,1161,1158,1154,1151,1147,1144,1141,1138,1135,
+1132,1129,1126,1124,1121,1119,1116,1114,1112,1110,1109,1107,1106,1105,1104,1103,1102,1102,1101,1101,1102,
+1102,1103,1103,1104,1106,1107,1109,1111,1113,1115,1118,1121,1124,1127,1130,1134,1138,1142,1146,1151,1156,
+1161,1166,1171,1177,1182,1188,1194,1200,1206,1213,1219,1226,1233,1240,1247,1254,1261,1268,1275,1283,1290,
+1297,1304,1312,1319,1326,1333,1340,1347,1354,1361,1368,1375,1381,1388,1394,1400,1406,1411,1417,1422,1427,
+1432,1437,1441,1446,1449,1453,1456,1460,1462,1465,1467,1469,1471,1472,1474,1474,1475,1475,1475,1474,1474,
+1473,1471,1470,1468,1466,1463,1460,1457,1454,1450,1447,1442,1438,1433,1429,1424,1418,1413,1407,1401,1395,
+1389,1383,1376,1369,1363,1356,1349,1342,1334,1327,1320,1312,1305,1298,1290,1283,1275,1268,1260,1253,1245,
+1238,1231,1224,1217,1210,1203,1196,1189,1183,1176,1170,1164,1158,1152,1146,1140,1135,1130,1125,1120,1115,
+1110,1106,1102,1098,1094,1091,1087,1084,1081,1078,1075,1073,1071,1068,1066,1065,1063,1062,1060,1059,1058,
+1058,1057,1056,1056,1056,1056,1056,1056,1056,1057,1057,1058,1059,1060,1060,1061,1062,1064,1065,1066,1067,
+1069,1070,1072,1073,1075,1076,1078,1079,1081,1082,1084,1085,1087,1089,1090,1092,1093,1095,1096,1098,1099,
+1100,1102,1103,1104,1105,1107,1108,1109,1110,1111,1112,1112,1113,1114,1115,1115,1116,1117,1117,1118,1118,
+1118,1119,1119,1119,1119,1119,1119,1119,1119,1119,1119,1119,1119,1119,1119,1118,1118,1118,1118,1117,1117,
+1117,1116,1116,1116,1115,1115,1115,1114,1114,1114,1113,1113,1113,1113,1112,1112,1112,1112,1112,1111,1111,
+1111,1111,1111,1111,1111,1112,1112,1112,1112,1112,1113,1113,1114,1114,1115,1115,1116,1116,1117,1118,1119,
+1120,1121,1121,1122,1124,1125,1126,1127,1128,1129,1131,1132,1133,1135,1136,1138,1139,1141,1142,1144,1145,
+1147,1149,1150,1152,1154,1155,1157,1159,1160,1162,1164,1166,1167,1169,1171,1173,1174,1176,1178,1179,1181,
+1183,1184,1186,1188,1189,1191,1192,1194,1195,1197,1198,1200,1201,1203,1204,1205,1206,1208,1209,1210,1211,
+1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1223,1224,1225,1226,1226,1227,1228,1228,1229,
+1230,1230,1231,1231,1232,1233,1233,1234,1234,1235,1235,1236,1237,1237,1238,1238,1239,1240,1240,1241,1242,
+1243,1243,1244,1245,1246,1247,1247,1248,1249,1250,1251,1252,1253,1254,1256,1257,1258,1259,1260,1262,1263,
+1264,1266,1267,1269,1270,1272,1273,1275,1276,1278,1279,1281,1283,1284,1286,1288,1289,1291,1293,1295,1296,
+1298,1300,1302,1303,1305,1307,1309,1310,1312,1314,1315,1317,1319,1320,1322,1324,1325,1327,1328,1330,1331,
+1333,1334,1336,1337,1338,1339,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1354,
+1355,1356,1357,1357,1358,1358,1359,1360,1360,1361,1361,1362,1362,1363,1363,1364,1364,1365,1366,1366,1367,
+1367,1368,1369,1369,1370,1371,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1383,1384,1386,1387,
+1389,1390,1392,1394,1395,1397,1399,1401,1403,1406,1408,1410,1413,1415,1418,1420,1423,1426,1428,1431,1434,
+1437,1440,1443,1446,1450,1453,1456,1460,1463,1466,1470,1473,1477,1481,1484,1488,1492,1495,1499,1503,1506,
+1510,1514,1518,1521,1525,1529,1532,1536,1540,1543,1547,1551,1554,1558,1561,1565,1568,1572,1575,1578,1582,
+1585,1588,1591,1594,1597,1600,1603,1606,1609,1612,1614,1617,1620,1622,1625,1627,1629,1632,1634,1636,1639,
+1641,1643,1645,1647,1649,1651,1653,1655,1657,1659,1660,1662,1664,1666,1668,1669,1671,1673,1675,1676,1678,
+1680,1681,1683,1685,1687,1689,1690,1692,1694,1696,1698,1700,1702,1704,1706,1708,1710,1713,1715,1717,1719,
+1722,1724,1727,1729,1732,1734,1737,1740,1742,1745,1748,1751,1754,1757,1760,1763,1766,1769,1772,1775,1778,
+1781,1785,1788,1791,1794,1797,1801,1804,1807,1810,1813,1817,1820,1823,1826,1829,1832,1835,1838,1841,1843,
+1846,1849,1851,1854,1856,1859,1861,1863,1865,1867,1869,1871,1873,1874,1876,1877,1879,1880,1881,1882,1882,
+1883,1884,1884,1885,1885,1885,1885,1884,1884,1884,1883,1882,1882,1881,1880,1878,1877,1876,1874,1873,1871,
+1869,1867,1865,1863,1861,1859,1856,1854,1852,1849,1846,1844,1841,1838,1835,1832,1830,1827,1824,1821,1818,
+1815,1812,1809,1806,1803,1800,1797,1794,1791,1788,1786,1783,1780,1777,1775,1772,1770,1767,1765,1762,1760,
+1758,1756,1754,1752,1750,1748,1747,1745,1743,1742,1741,1739,1738,1737,1736,1735,1735,1734,1733,1733,1732,
+1732,1732,1732,1732,1732,1732,1732,1732,1733,1733,1734,1734,1735,1736,1737,1737,1738,1739,1740,1741,1742,
+1744,1745,1746,1747,1749,1750,1751,1753,1754,1756,1757,1759,1760,1762,1763,1765,1766,1768,1769,1771,1772,
+1774,1775,1777,1778,1780,1781,1782,1784,1785,1787,1788,1789,1790,1792,1793,1794,1795,1796,1797,1798,1799,
+1800,1801,1802,1803,1804,1804,1805,1806,1806,1807,1807,1808,1808,1809,1809,1810,1810,1810,1810,1810,1811,
+1811,1811,1811,1811,1811,1811,1810,1810,1810,1810,1810,1809,1809,1809,1808,1808,1807,1807,1806,1806,1805,
+1805,1804,1803,1803,1802,1801,1801,1800,1799,1798,1798,1797,1796,1795,1794,1794,1793,1792,1791,1790,1789,
+1788,1787,1787,1786,1785,1784,1783,1782,1781,1780,1779,1779,1778,1777,1776,1775,1774,1773,1773,1772,1771,
+1770,1770,1769,1768,1767,1767,1766,1765,1765,1764,1763,1763,1828,1828,1828,1828,1828,1828,1827,1827,1827,
+1827,1827,1827,1827,1827,1827,1827,1827,1827,1827,1827,1827,1827,1827,1826,1826,1826,1826,1826,1826,1826,
+1826,1825,1825,1825,1825,1825,1824,1824,1824,1823,1823,1823,1822,1822,1821,1821,1820,1820,1819,1819,1818,
+1817,1817,1816,1815,1814,1814,1813,1812,1811,1811,1810,1809,1808,1807,1806,1805,1804,1803,1802,1801,1800,
+1799,1798,1797,1796,1795,1794,1793,1792,1791,1790,1789,1788,1787,1786,1785,1784,1782,1782,1781,1780,1779,
+1778,1777,1776,1775,1774,1773,1773,1772,1771,1770,1769,1769,1768,1767,1767,1766,1765,1765,1764,1763,1763,
+1762,1762,1761,1761,1760,1760,1759,1759,1758,1758,1757,1757,1756,1756,1755,1755,1754,1754,1753,1753,1752,
+1752,1751,1751,1750,1750,1749,1748,1748,1747,1746,1746,1745,1744,1743,1742,1741,1740,1739,1739,1737,1736,
+1735,1734,1733,1732,1730,1729,1728,1726,1725,1723,1722,1720,1719,1717,1715,1713,1712,1710,1708,1706,1704,
+1702,1700,1698,1696,1694,1692,1690,1688,1686,1683,1681,1679,1677,1675,1672,1670,1668,1665,1663,1661,1659,
+1656,1654,1652,1649,1647,1645,1643,1640,1638,1636,1634,1632,1629,1627,1625,1623,1621,1619,1617,1615,1613,
+1611,1609,1607,1605,1603,1601,1599,1597,1596,1594,1592,1590,1588,1587,1585,1583,1582,1580,1578,1577,1575,
+1573,1572,1570,1568,1567,1565,1564,1562,1560,1559,1557,1556,1554,1552,1551,1549,1547,1546,1544,1542,1541,
+1539,1537,1536,1534,1532,1531,1529,1527,1525,1523,1522,1520,1518,1516,1514,1512,1511,1509,1507,1505,1503,
+1501,1499,1497,1495,1493,1491,1489,1487,1485,1483,1481,1478,1476,1474,1472,1470,1468,1466,1464,1461,1459,
+1457,1455,1453,1450,1448,1446,1444,1441,1439,1437,1435,1432,1430,1428,1426,1423,1421,1419,1416,1414,1412,
+1409,1407,1405,1402,1400,1398,1395,1393,1391,1388,1386,1384,1381,1379,1377,1374,1372,1370,1367,1365,1363,
+1361,1358,1356,1354,1352,1349,1347,1345,1343,1341,1339,1337,1335,1333,1331,1329,1327,1325,1323,1321,1319,
+1318,1316,1314,1313,1311,1309,1308,1307,1305,1304,1302,1301,1300,1299,1297,1296,1295,1294,1293,1292,1291,
+1290,1289,1288,1288,1287,1286,1285,1285,1284,1283,1283,1282,1281,1281,1280,1280,1279,1278,1278,1277,1277,
+1276,1275,1274,1274,1273,1272,1271,1270,1269,1268,1267,1266,1265,1264,1263,1261,1260,1258,1257,1255,1253,
+1251,1249,1247,1245,1243,1241,1238,1236,1233,1231,1228,1225,1222,1219,1216,1212,1209,1206,1202,1199,1195,
+1191,1188,1184,1180,1176,1172,1168,1164,1160,1156,1152,1148,1144,1140,1136,1132,1129,1125,1121,1117,1114,
+1110,1107,1104,1101,1098,1095,1092,1090,1087,1085,1083,1082,1080,1079,1078,1077,1076,1076,1076,1076,1077,
+1077,1078,1080,1081,1083,1085,1088,1090,1093,1097,1100,1104,1109,1113,1118,1123,1128,1134,1139,1145,1152,
+1158,1165,1172,1179,1186,1194,1201,1209,1217,1225,1233,1241,1250,1258,1266,1275,1283,1292,1300,1308,1316,
+1325,1333,1340,1348,1356,1363,1370,1378,1384,1391,1397,1403,1409,1415,1420,1425,1429,1433,1437,1441,1444,
+1446,1449,1451,1452,1453,1454,1454,1454,1454,1453,1451,1449,1447,1445,1442,1438,1435,1430,1426,1421,1416,
+1410,1404,1398,1391,1384,1377,1369,1362,1354,1345,1337,1328,1320,1311,1301,1292,1283,1273,1264,1254,1244,
+1234,1225,1215,1205,1196,1186,1176,1167,1157,1148,1139,1130,1121,1112,1104,1096,1087,1079,1072,1064,1057,
+1050,1043,1037,1031,1025,1019,1014,1008,1003,999,995,991,987,984,981,978,975,973,971,969,968,
+967,966,965,965,965,965,965,965,966,967,968,969,971,973,974,976,978,981,983,986,988,
+991,994,997,999,1002,1006,1009,1012,1015,1018,1022,1025,1028,1031,1034,1038,1041,1044,1047,1050,1053,
+1056,1059,1062,1065,1068,1070,1073,1076,1078,1080,1083,1085,1087,1089,1091,1093,1095,1096,1098,1099,1101,
+1102,1103,1104,1105,1106,1107,1108,1109,1109,1110,1110,1111,1111,1111,1111,1111,1111,1111,1111,1111,1111,
+1111,1111,1110,1110,1109,1109,1109,1108,1108,1107,1107,1106,1105,1105,1104,1104,1103,1103,1102,1102,1101,
+1101,1100,1100,1099,1099,1099,1098,1098,1098,1098,1098,1097,1097,1097,1098,1098,1098,1098,1098,1099,1099,
+1100,1100,1101,1102,1102,1103,1104,1105,1106,1107,1109,1110,1111,1112,1114,1115,1117,1119,1120,1122,1124,
+1126,1128,1129,1131,1134,1136,1138,1140,1142,1144,1147,1149,1151,1154,1156,1159,1161,1163,1166,1168,1171,
+1173,1176,1178,1181,1183,1186,1188,1190,1193,1195,1197,1200,1202,1204,1206,1209,1211,1213,1215,1217,1219,
+1221,1223,1224,1226,1228,1230,1231,1233,1234,1236,1237,1238,1240,1241,1242,1243,1244,1245,1246,1247,1248,
+1248,1249,1250,1250,1251,1251,1252,1252,1253,1253,1253,1254,1254,1254,1255,1255,1255,1255,1255,1255,1256,
+1256,1256,1256,1256,1256,1257,1257,1257,1257,1257,1258,1258,1258,1259,1259,1260,1260,1261,1261,1262,1263,
+1263,1264,1265,1266,1267,1268,1269,1270,1272,1273,1274,1276,1277,1279,1280,1282,1284,1286,1288,1290,1292,
+1294,1296,1298,1300,1303,1305,1307,1310,1312,1315,1317,1320,1323,1325,1328,1331,1334,1336,1339,1342,1345,
+1347,1350,1353,1356,1359,1361,1364,1367,1369,1372,1374,1377,1380,1382,1384,1387,1389,1391,1393,1396,1398,
+1400,1402,1403,1405,1407,1408,1410,1411,1413,1414,1415,1417,1418,1419,1420,1421,1421,1422,1423,1423,1424,
+1424,1425,1425,1425,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,1426,
+1425,1425,1425,1425,1426,1426,1426,1426,1426,1427,1427,1427,1428,1428,1429,1430,1430,1431,1432,1433,1434,
+1435,1436,1438,1439,1441,1442,1444,1446,1448,1450,1452,1454,1456,1458,1460,1463,1465,1468,1471,1473,1476,
+1479,1482,1485,1488,1491,1494,1498,1501,1504,1507,1511,1514,1517,1521,1524,1528,1531,1535,1538,1542,1545,
+1549,1552,1555,1559,1562,1565,1569,1572,1575,1578,1582,1585,1588,1591,1594,1597,1600,1602,1605,1608,1610,
+1613,1616,1618,1620,1623,1625,1627,1629,1632,1634,1636,1638,1639,1641,1643,1645,1647,1648,1650,1652,1653,
+1655,1656,1658,1659,1661,1662,1664,1665,1667,1668,1669,1671,1672,1674,1675,1677,1679,1680,1682,1684,1685,
+1687,1689,1691,1693,1695,1697,1699,1701,1704,1706,1708,1711,1713,1716,1719,1722,1725,1728,1731,1734,1737,
+1740,1744,1747,1751,1754,1758,1762,1765,1769,1773,1777,1781,1785,1789,1794,1798,1802,1807,1811,1815,1820,
+1824,1828,1833,1837,1841,1846,1850,1854,1859,1863,1867,1871,1875,1879,1883,1887,1890,1894,1898,1901,1904,
+1907,1911,1914,1917,1919,1922,1924,1927,1929,1931,1933,1934,1936,1937,1939,1940,1941,1941,1942,1942,1943,
+1943,1943,1942,1942,1941,1941,1940,1939,1938,1936,1935,1933,1932,1930,1928,1926,1924,1922,1919,1917,1914,
+1912,1909,1906,1903,1900,1897,1894,1891,1888,1885,1882,1879,1876,1873,1870,1867,1864,1861,1858,1855,1852,
+1849,1846,1843,1841,1838,1836,1833,1831,1828,1826,1824,1822,1820,1818,1817,1815,1814,1812,1811,1810,1809,
+1807,1807,1806,1805,1805,1804,1804,1804,1803,1803,1803,1804,1804,1804,1804,1805,1805,1806,1807,1807,1808,
+1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1820,1821,1822,1823,1825,1826,1827,1829,1830,1831,1832,
+1834,1835,1836,1837,1838,1839,1841,1842,1843,1844,1845,1846,1847,1847,1848,1849,1850,1851,1851,1852,1853,
+1853,1854,1854,1855,1855,1856,1856,1856,1857,1857,1857,1857,1857,1858,1858,1858,1858,1858,1858,1858,1858,
+1858,1858,1858,1858,1857,1857,1857,1857,1857,1856,1856,1856,1856,1855,1855,1855,1854,1854,1854,1853,1853,
+1853,1852,1852,1852,1851,1851,1850,1850,1850,1849,1849,1848,1848,1847,1847,1847,1846,1846,1845,1845,1844,
+1844,1843,1843,1842,1842,1842,1841,1841,1840,1840,1839,1839,1838,1838,1837,1837,1837,1836,1836,1835,1835,
+1834,1834,1834,1833,1833,1832,1832,1832,1832,1831,1831,1831,1830,1830,1830,1830,1829,1829,1829,1829,1829,
+1828,1828,1828,1828,1897,1897,1897,1898,1898,1898,1898,1898,1899,1899,1899,1900,1900,1900,1900,1901,1901,
+1901,1901,1901,1902,1902,1902,1902,1902,1902,1902,1902,1902,1902,1902,1902,1902,1902,1901,1901,1901,1900,
+1900,1899,1899,1898,1898,1897,1896,1896,1895,1894,1893,1892,1891,1890,1889,1888,1887,1885,1884,1883,1881,
+1880,1879,1877,1876,1874,1873,1871,1870,1868,1866,1865,1863,1862,1860,1858,1857,1855,1853,1852,1850,1848,
+1847,1845,1843,1842,1840,1839,1837,1836,1834,1833,1831,1830,1829,1827,1826,1825,1824,1822,1821,1820,1819,
+1818,1817,1816,1816,1815,1814,1813,1813,1812,1811,1811,1810,1810,1809,1809,1809,1808,1808,1808,1807,1807,
+1807,1807,1807,1807,1806,1806,1806,1806,1806,1806,1806,1806,1806,1805,1805,1805,1805,1805,1805,1805,1804,
+1804,1804,1803,1803,1802,1802,1801,1801,1800,1799,1799,1798,1797,1796,1795,1794,1793,1792,1790,1789,1788,
+1786,1785,1783,1782,1780,1778,1776,1774,1772,1770,1768,1766,1764,1762,1759,1757,1755,1752,1750,1747,1745,
+1742,1740,1737,1734,1732,1729,1726,1723,1721,1718,1715,1713,1710,1707,1704,1702,1699,1696,1694,1691,1688,
+1686,1683,1681,1678,1676,1673,1671,1669,1666,1664,1662,1659,1657,1655,1653,1651,1649,1647,1645,1643,1641,
+1639,1637,1635,1633,1631,1629,1628,1626,1624,1622,1621,1619,1617,1615,1613,1612,1610,1608,1606,1605,1603,
+1601,1599,1597,1595,1593,1591,1590,1588,1586,1584,1581,1579,1577,1575,1573,1571,1569,1566,1564,1562,1559,
+1557,1555,1552,1550,1548,1545,1543,1540,1538,1535,1533,1530,1528,1525,1523,1520,1517,1515,1512,1510,1507,
+1505,1502,1500,1497,1495,1492,1490,1488,1485,1483,1480,1478,1476,1473,1471,1468,1466,1464,1462,1459,1457,
+1455,1453,1450,1448,1446,1444,1441,1439,1437,1435,1433,1430,1428,1426,1424,1421,1419,1417,1414,1412,1410,
+1407,1405,1403,1400,1398,1395,1393,1391,1388,1386,1383,1380,1378,1375,1373,1370,1367,1365,1362,1359,1356,
+1354,1351,1348,1345,1343,1340,1337,1334,1332,1329,1326,1323,1321,1318,1315,1313,1310,1307,1305,1302,1300,
+1297,1295,1292,1290,1288,1285,1283,1281,1279,1277,1275,1273,1271,1269,1268,1266,1265,1263,1262,1260,1259,
+1258,1257,1255,1254,1254,1253,1252,1251,1250,1250,1249,1249,1248,1248,1247,1247,1247,1246,1246,1246,1246,
+1245,1245,1245,1245,1245,1244,1244,1244,1243,1243,1243,1242,1242,1241,1241,1240,1239,1238,1237,1236,1235,
+1234,1232,1231,1229,1228,1226,1224,1222,1219,1217,1215,1212,1209,1206,1203,1200,1197,1193,1190,1186,1182,
+1178,1174,1170,1166,1162,1158,1153,1149,1144,1140,1135,1130,1126,1121,1117,1112,1108,1103,1099,1094,1090,
+1086,1082,1078,1075,1071,1068,1065,1062,1060,1057,1055,1053,1052,1050,1049,1049,1048,1048,1049,1049,1050,
+1052,1054,1056,1058,1061,1064,1068,1072,1076,1081,1086,1092,1097,1103,1110,1117,1124,1131,1139,1146,1155,
+1163,1171,1180,1189,1198,1207,1217,1226,1236,1245,1255,1264,1273,1283,1292,1301,1310,1319,1328,1337,1345,
+1353,1361,1368,1375,1382,1389,1395,1400,1406,1410,1415,1419,1422,1425,1428,1430,1431,1432,1432,1432,1432,
+1430,1429,1426,1424,1420,1417,1412,1407,1402,1396,1390,1384,1376,1369,1361,1353,1344,1335,1326,1316,1306,
+1296,1285,1275,1264,1253,1242,1230,1219,1207,1196,1184,1173,1161,1150,1139,1127,1116,1105,1094,1084,1073,
+1063,1053,1043,1034,1024,1015,1007,998,990,983,975,969,962,956,950,944,939,935,930,926,923,
+919,917,914,912,910,909,908,907,907,907,907,908,909,910,911,913,915,917,919,922,925,
+928,931,934,938,941,945,949,953,957,961,965,969,973,977,982,986,990,995,999,1003,1007,
+1012,1016,1020,1024,1028,1032,1035,1039,1043,1046,1050,1053,1056,1060,1063,1066,1068,1071,1074,1076,1079,
+1081,1083,1085,1087,1089,1091,1092,1094,1095,1097,1098,1099,1100,1101,1102,1103,1104,1104,1105,1105,1106,
+1106,1107,1107,1107,1107,1107,1107,1107,1107,1107,1106,1106,1106,1105,1105,1105,1104,1104,1103,1103,1102,
+1102,1101,1101,1100,1099,1099,1098,1098,1097,1097,1096,1095,1095,1094,1094,1093,1093,1093,1092,1092,1092,
+1091,1091,1091,1091,1091,1091,1091,1091,1091,1091,1091,1091,1092,1092,1092,1093,1094,1094,1095,1096,1096,
+1097,1098,1099,1100,1102,1103,1104,1105,1107,1108,1110,1111,1113,1115,1117,1118,1120,1122,1124,1126,1128,
+1131,1133,1135,1137,1139,1142,1144,1146,1149,1151,1154,1156,1158,1161,1163,1166,1168,1171,1173,1176,1178,
+1180,1183,1185,1188,1190,1192,1195,1197,1199,1201,1203,1206,1208,1210,1212,1214,1216,1218,1219,1221,1223,
+1225,1226,1228,1229,1231,1232,1234,1235,1236,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1247,1248,
+1249,1249,1250,1250,1251,1251,1252,1252,1253,1253,1253,1254,1254,1254,1255,1255,1255,1256,1256,1256,1256,
+1257,1257,1257,1258,1258,1258,1259,1259,1260,1260,1261,1261,1262,1263,1264,1264,1265,1266,1267,1268,1269,
+1270,1272,1273,1274,1276,1278,1279,1281,1283,1285,1287,1289,1291,1293,1295,1298,1300,1303,1305,1308,1311,
+1313,1316,1319,1322,1325,1328,1332,1335,1338,1341,1345,1348,1352,1355,1358,1362,1365,1369,1372,1376,1379,
+1383,1386,1390,1393,1396,1400,1403,1406,1409,1412,1415,1418,1421,1424,1426,1429,1432,1434,1436,1439,1441,
+1443,1445,1447,1448,1450,1451,1453,1454,1455,1456,1457,1458,1459,1460,1460,1461,1461,1462,1462,1462,1462,
+1462,1462,1462,1461,1461,1461,1460,1460,1460,1459,1459,1458,1457,1457,1456,1456,1455,1455,1454,1454,1453,
+1453,1452,1452,1452,1451,1451,1451,1451,1451,1451,1451,1451,1452,1452,1452,1453,1454,1454,1455,1456,1457,
+1458,1459,1461,1462,1463,1465,1467,1468,1470,1472,1474,1476,1478,1481,1483,1485,1488,1490,1493,1496,1498,
+1501,1504,1507,1510,1512,1515,1518,1521,1524,1528,1531,1534,1537,1540,1543,1546,1549,1552,1555,1558,1561,
+1564,1567,1570,1573,1576,1579,1582,1585,1588,1590,1593,1596,1599,1601,1604,1606,1609,1611,1614,1616,1618,
+1621,1623,1625,1627,1629,1631,1633,1635,1637,1639,1641,1643,1645,1647,1649,1651,1653,1655,1657,1658,1660,
+1662,1664,1666,1668,1670,1672,1674,1676,1678,1680,1682,1684,1687,1689,1691,1694,1696,1698,1701,1704,1706,
+1709,1712,1715,1718,1721,1724,1727,1731,1734,1738,1741,1745,1749,1753,1757,1761,1765,1769,1773,1778,1782,
+1787,1792,1796,1801,1806,1811,1816,1821,1826,1831,1836,1841,1847,1852,1857,1862,1868,1873,1878,1884,1889,
+1894,1899,1904,1909,1914,1919,1924,1929,1934,1938,1943,1947,1951,1956,1960,1964,1967,1971,1974,1978,1981,
+1984,1986,1989,1991,1994,1996,1998,1999,2001,2002,2003,2004,2005,2005,2005,2006,2005,2005,2005,2004,2003,
+2003,2001,2000,1999,1997,1995,1993,1991,1989,1987,1985,1982,1979,1977,1974,1971,1968,1965,1962,1959,1956,
+1953,1950,1947,1944,1941,1938,1935,1932,1929,1926,1923,1920,1917,1915,1912,1910,1907,1905,1903,1901,1899,
+1897,1895,1893,1892,1890,1889,1888,1887,1886,1885,1884,1883,1883,1882,1882,1882,1882,1882,1882,1882,1882,
+1882,1883,1883,1884,1884,1885,1886,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,
+1900,1901,1902,1902,1903,1904,1905,1906,1906,1907,1908,1908,1909,1909,1910,1910,1910,1911,1911,1911,1911,
+1911,1911,1911,1911,1911,1911,1911,1910,1910,1910,1910,1909,1909,1908,1908,1907,1907,1907,1906,1905,1905,
+1904,1904,1903,1903,1902,1902,1901,1901,1900,1900,1899,1899,1898,1898,1898,1897,1897,1897,1896,1896,1896,
+1896,1895,1895,1895,1895,1895,1895,1895,1895,1894,1894,1894,1894,1894,1895,1895,1895,1895,1895,1895,1895,
+1895,1895,1895,1895,1895,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,
+1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,
+1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1896,1897,1897,1897,1959,1959,1959,1959,
+1959,1960,1960,1960,1960,1961,1961,1961,1962,1962,1962,1962,1963,1963,1963,1964,1964,1964,1964,1965,1965,
+1965,1965,1965,1965,1965,1965,1965,1965,1964,1964,1964,1964,1963,1963,1962,1962,1961,1960,1960,1959,1958,
+1957,1956,1955,1954,1953,1951,1950,1949,1947,1946,1945,1943,1942,1940,1939,1937,1935,1934,1932,1930,1929,
+1927,1925,1923,1922,1920,1918,1917,1915,1913,1912,1910,1908,1907,1905,1904,1902,1901,1899,1898,1897,1895,
+1894,1893,1891,1890,1889,1888,1887,1886,1885,1884,1883,1882,1882,1881,1880,1879,1879,1878,1878,1877,1877,
+1876,1876,1876,1875,1875,1875,1875,1875,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,1874,1873,
+1873,1873,1873,1873,1873,1873,1873,1873,1872,1872,1872,1872,1871,1871,1870,1870,1869,1869,1868,1867,1866,
+1865,1864,1863,1862,1861,1860,1858,1857,1855,1854,1852,1850,1848,1846,1844,1842,1840,1838,1836,1833,1831,
+1828,1825,1823,1820,1817,1814,1811,1808,1805,1802,1799,1796,1793,1789,1786,1783,1780,1776,1773,1770,1767,
+1763,1760,1757,1754,1750,1747,1744,1741,1738,1735,1732,1730,1727,1724,1722,1719,1716,1714,1712,1709,1707,
+1705,1703,1701,1699,1697,1695,1694,1692,1690,1689,1687,1686,1684,1683,1682,1680,1679,1678,1677,1675,1674,
+1673,1672,1670,1669,1668,1667,1665,1664,1662,1661,1659,1658,1656,1654,1653,1651,1649,1647,1645,1643,1641,
+1638,1636,1633,1631,1628,1625,1623,1620,1617,1614,1611,1607,1604,1601,1598,1594,1591,1587,1584,1580,1576,
+1573,1569,1565,1562,1558,1554,1550,1546,1543,1539,1535,1532,1528,1524,1521,1517,1514,1510,1507,1503,1500,
+1497,1494,1490,1487,1484,1481,1478,1476,1473,1470,1468,1465,1463,1460,1458,1455,1453,1451,1449,1447,1445,
+1442,1440,1439,1437,1435,1433,1431,1429,1427,1425,1424,1422,1420,1418,1416,1415,1413,1411,1409,1407,1405,
+1403,1401,1399,1397,1395,1393,1391,1389,1386,1384,1382,1379,1377,1374,1372,1369,1367,1364,1361,1359,1356,
+1353,1350,1347,1344,1341,1338,1336,1332,1329,1326,1323,1320,1317,1314,1311,1308,1305,1302,1299,1296,1292,
+1289,1286,1283,1280,1278,1275,1272,1269,1266,1264,1261,1258,1256,1253,1251,1249,1246,1244,1242,1240,1238,
+1236,1235,1233,1231,1230,1228,1227,1226,1225,1223,1222,1222,1221,1220,1219,1219,1218,1218,1217,1217,1216,
+1216,1216,1216,1216,1215,1215,1215,1215,1215,1215,1215,1214,1214,1214,1213,1213,1213,1212,1211,1211,1210,
+1209,1208,1207,1205,1204,1202,1200,1198,1196,1194,1192,1189,1186,1183,1180,1177,1173,1170,1166,1162,1158,
+1153,1149,1144,1140,1135,1130,1125,1120,1115,1109,1104,1099,1093,1088,1083,1078,1072,1067,1062,1057,1053,
+1048,1044,1039,1036,1032,1028,1025,1022,1020,1017,1015,1014,1013,1012,1012,1012,1012,1013,1015,1016,1019,
+1021,1024,1028,1032,1037,1042,1047,1053,1059,1066,1073,1081,1089,1097,1105,1114,1123,1133,1142,1152,1162,
+1173,1183,1193,1204,1214,1225,1235,1246,1256,1266,1276,1286,1296,1305,1314,1323,1331,1339,1347,1354,1361,
+1367,1373,1378,1382,1387,1390,1393,1395,1397,1398,1399,1398,1397,1396,1394,1391,1388,1384,1379,1374,1368,
+1362,1355,1348,1340,1331,1322,1313,1303,1293,1283,1272,1260,1249,1237,1225,1213,1201,1189,1176,1164,1151,
+1139,1126,1114,1101,1089,1077,1065,1053,1042,1031,1020,1009,999,989,979,970,961,952,944,937,930,
+923,917,911,905,900,896,892,888,885,882,880,878,876,875,875,874,874,875,875,877,878,
+880,882,884,886,889,892,895,899,902,906,909,913,917,921,926,930,934,938,943,947,951,
+956,960,964,969,973,977,981,985,989,992,996,1000,1003,1007,1010,1013,1016,1019,1022,1025,1027,
+1030,1032,1035,1037,1039,1041,1043,1045,1047,1048,1050,1051,1053,1054,1055,1057,1058,1059,1060,1061,1062,
+1063,1064,1065,1066,1066,1067,1068,1068,1069,1070,1070,1071,1071,1072,1072,1073,1073,1074,1074,1075,1075,
+1075,1076,1076,1076,1077,1077,1077,1077,1078,1078,1078,1078,1078,1078,1078,1079,1079,1079,1079,1079,1079,
+1079,1079,1078,1078,1078,1078,1078,1078,1078,1078,1078,1078,1077,1077,1077,1077,1077,1077,1077,1077,1077,
+1077,1077,1077,1078,1078,1078,1078,1078,1079,1079,1080,1080,1081,1081,1082,1082,1083,1084,1085,1086,1086,
+1087,1088,1090,1091,1092,1093,1094,1096,1097,1098,1100,1101,1103,1104,1106,1108,1109,1111,1113,1114,1116,
+1118,1120,1122,1124,1125,1127,1129,1131,1133,1135,1137,1139,1141,1143,1145,1147,1149,1151,1153,1155,1157,
+1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1179,1181,1183,1185,1187,1189,1191,1193,1195,1197,1199,
+1200,1202,1204,1206,1208,1210,1212,1213,1215,1217,1219,1221,1222,1224,1226,1227,1229,1231,1232,1234,1235,
+1237,1238,1240,1241,1243,1244,1246,1247,1248,1249,1251,1252,1253,1254,1255,1257,1258,1259,1260,1261,1262,
+1263,1264,1265,1266,1267,1268,1269,1270,1272,1273,1274,1275,1276,1277,1278,1280,1281,1282,1284,1285,1287,
+1288,1290,1292,1293,1295,1297,1299,1301,1303,1305,1308,1310,1312,1315,1318,1320,1323,1326,1329,1332,1335,
+1338,1341,1344,1348,1351,1354,1358,1361,1365,1368,1372,1376,1379,1383,1387,1390,1394,1398,1401,1405,1409,
+1412,1416,1419,1423,1426,1429,1433,1436,1439,1442,1445,1448,1450,1453,1456,1458,1460,1463,1465,1467,1469,
+1470,1472,1474,1475,1476,1477,1478,1479,1480,1481,1482,1482,1483,1483,1483,1483,1483,1483,1483,1483,1483,
+1482,1482,1482,1481,1481,1480,1480,1479,1479,1478,1478,1477,1477,1476,1476,1475,1475,1474,1474,1473,1473,
+1473,1473,1473,1473,1473,1473,1473,1473,1473,1474,1474,1475,1475,1476,1477,1478,1479,1480,1481,1482,1483,
+1484,1486,1487,1489,1490,1492,1494,1495,1497,1499,1501,1503,1505,1507,1509,1511,1513,1515,1517,1520,1522,
+1524,1526,1529,1531,1533,1536,1538,1540,1543,1545,1547,1550,1552,1554,1557,1559,1562,1564,1566,1569,1571,
+1573,1576,1578,1581,1583,1585,1588,1590,1592,1595,1597,1600,1602,1604,1607,1609,1612,1614,1616,1619,1621,
+1624,1626,1629,1631,1633,1636,1638,1641,1643,1646,1648,1651,1653,1656,1658,1661,1664,1666,1669,1672,1674,
+1677,1680,1682,1685,1688,1691,1693,1696,1699,1702,1705,1708,1711,1714,1718,1721,1724,1727,1731,1734,1738,
+1741,1745,1749,1752,1756,1760,1764,1768,1773,1777,1781,1786,1790,1795,1799,1804,1809,1814,1819,1824,1829,
+1834,1839,1845,1850,1855,1861,1866,1872,1878,1883,1889,1895,1900,1906,1912,1917,1923,1929,1934,1940,1945,
+1951,1956,1961,1967,1972,1977,1982,1986,1991,1995,2000,2004,2008,2012,2015,2019,2022,2025,2028,2031,2033,
+2035,2037,2039,2041,2042,2043,2044,2045,2046,2046,2046,2046,2046,2045,2044,2044,2042,2041,2040,2038,2036,
+2035,2032,2030,2028,2026,2023,2021,2018,2015,2012,2010,2007,2004,2001,1998,1995,1992,1989,1986,1984,1981,
+1978,1975,1973,1970,1968,1966,1963,1961,1959,1957,1955,1954,1952,1951,1949,1948,1947,1946,1945,1944,1944,
+1943,1943,1943,1942,1942,1942,1943,1943,1943,1944,1944,1945,1945,1946,1947,1947,1948,1949,1950,1951,1952,
+1953,1953,1954,1955,1956,1957,1958,1959,1960,1960,1961,1962,1963,1963,1964,1964,1965,1965,1965,1966,1966,
+1966,1966,1966,1966,1966,1966,1966,1965,1965,1964,1964,1964,1963,1962,1962,1961,1961,1960,1959,1958,1957,
+1957,1956,1955,1954,1954,1953,1952,1951,1951,1950,1949,1948,1948,1947,1947,1946,1946,1945,1945,1945,1945,
+1944,1944,1944,1944,1944,1944,1944,1944,1944,1945,1945,1945,1946,1946,1947,1947,1948,1948,1949,1950,1950,
+1951,1952,1953,1953,1954,1955,1956,1956,1957,1958,1959,1960,1960,1961,1962,1962,1963,1963,1964,1964,1965,
+1965,1966,1966,1967,1967,1967,1967,1967,1968,1968,1968,1968,1968,1968,1967,1967,1967,1967,1967,1966,1966,
+1966,1965,1965,1965,1964,1964,1964,1963,1963,1962,1962,1962,1961,1961,1961,1960,1960,1960,1960,1959,1959,
+1959,1959,1959,1959,1959,1959,1959,1959,1959,2014,2014,2015,2015,2015,2015,2016,2016,2017,2017,2017,2018,
+2018,2018,2019,2019,2020,2020,2020,2021,2021,2021,2021,2022,2022,2022,2022,2022,2022,2022,2021,2021,2021,
+2020,2020,2020,2019,2018,2018,2017,2016,2015,2014,2013,2012,2011,2010,2009,2008,2007,2005,2004,2003,2001,
+2000,1998,1997,1996,1994,1993,1991,1990,1988,1987,1986,1984,1983,1982,1980,1979,1978,1977,1976,1975,1973,
+1972,1972,1971,1970,1969,1968,1968,1967,1966,1966,1965,1965,1964,1964,1964,1963,1963,1963,1963,1963,1962,
+1962,1962,1962,1962,1962,1962,1962,1962,1962,1963,1963,1963,1963,1963,1963,1963,1963,1963,1963,1963,1963,
+1963,1963,1963,1963,1962,1962,1962,1962,1962,1961,1961,1961,1960,1960,1959,1959,1958,1957,1957,1956,1955,
+1954,1953,1952,1951,1950,1949,1948,1947,1945,1944,1943,1941,1939,1938,1936,1934,1932,1930,1928,1926,1923,
+1921,1919,1916,1913,1911,1908,1905,1902,1899,1896,1892,1889,1885,1882,1878,1875,1871,1867,1863,1859,1855,
+1851,1847,1843,1839,1835,1831,1827,1823,1819,1814,1810,1806,1802,1798,1794,1791,1787,1783,1779,1776,1772,
+1769,1766,1763,1760,1757,1754,1751,1749,1746,1744,1742,1740,1738,1736,1735,1733,1732,1730,1729,1728,1727,
+1727,1726,1725,1725,1724,1724,1724,1724,1723,1723,1723,1723,1723,1723,1723,1723,1723,1722,1722,1722,1721,
+1721,1720,1720,1719,1718,1717,1716,1715,1714,1712,1710,1709,1707,1704,1702,1700,1697,1694,1691,1688,1685,
+1681,1678,1674,1670,1666,1662,1658,1653,1649,1644,1639,1634,1629,1624,1619,1614,1609,1604,1598,1593,1588,
+1582,1577,1572,1566,1561,1556,1551,1545,1540,1535,1530,1525,1520,1516,1511,1507,1502,1498,1493,1489,1485,
+1481,1477,1474,1470,1467,1463,1460,1457,1454,1451,1448,1445,1442,1440,1437,1435,1432,1430,1428,1425,1423,
+1421,1419,1417,1415,1413,1412,1410,1408,1406,1404,1403,1401,1399,1397,1395,1394,1392,1390,1388,1387,1385,
+1383,1381,1379,1377,1375,1373,1371,1369,1367,1365,1363,1361,1359,1356,1354,1352,1349,1347,1345,1342,1340,
+1337,1335,1332,1330,1327,1324,1321,1319,1316,1313,1310,1307,1304,1301,1298,1295,1292,1289,1286,1282,1279,
+1276,1273,1269,1266,1263,1259,1256,1253,1249,1246,1243,1240,1236,1233,1230,1227,1224,1221,1218,1215,1212,
+1209,1206,1204,1201,1199,1197,1194,1192,1190,1188,1187,1185,1183,1182,1181,1179,1178,1177,1177,1176,1175,
+1175,1174,1174,1174,1173,1173,1173,1173,1173,1173,1174,1174,1174,1174,1174,1174,1174,1174,1173,1173,1173,
+1172,1172,1171,1170,1169,1167,1166,1164,1162,1160,1158,1155,1153,1150,1147,1143,1140,1136,1132,1127,1123,
+1118,1113,1108,1103,1098,1092,1087,1081,1075,1069,1064,1058,1052,1046,1040,1034,1029,1023,1018,1013,1008,
+1003,999,995,991,988,985,982,980,978,976,975,975,975,976,977,978,980,983,986,990,994,
+999,1004,1010,1016,1023,1031,1038,1047,1055,1064,1073,1083,1093,1103,1114,1124,1135,1146,1157,1168,1179,
+1190,1201,1212,1222,1233,1243,1253,1262,1272,1281,1289,1297,1304,1311,1317,1323,1328,1333,1337,1340,1342,
+1344,1345,1346,1345,1344,1342,1340,1337,1333,1328,1323,1317,1310,1303,1295,1286,1277,1268,1258,1247,1237,
+1225,1214,1202,1190,1177,1164,1152,1139,1126,1113,1100,1086,1074,1061,1048,1035,1023,1011,999,988,976,
+966,955,945,935,926,917,909,901,894,887,881,875,869,865,860,857,853,850,848,846,845,
+844,843,843,843,844,844,846,847,849,852,854,857,860,863,866,869,873,877,880,884,888,
+892,896,900,904,908,912,916,919,923,927,930,934,937,941,944,947,950,952,955,958,960,
+963,965,967,969,971,972,974,976,977,978,980,981,982,983,984,985,986,987,988,989,990,
+990,991,992,993,994,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1007,1008,1009,1010,
+1012,1013,1014,1016,1017,1019,1020,1022,1023,1024,1026,1027,1029,1030,1032,1033,1034,1036,1037,1038,1040,
+1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1050,1051,1052,1052,1053,1053,1054,1054,1054,1055,1055,
+1055,1055,1055,1055,1056,1056,1056,1056,1056,1056,1056,1056,1056,1056,1056,1056,1056,1056,1057,1057,1057,
+1057,1057,1058,1058,1059,1059,1059,1060,1061,1061,1062,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,
+1072,1073,1074,1075,1076,1077,1079,1080,1081,1082,1084,1085,1086,1088,1089,1090,1092,1093,1094,1096,1097,
+1098,1099,1101,1102,1103,1105,1106,1108,1109,1110,1112,1113,1115,1116,1117,1119,1120,1122,1124,1125,1127,
+1128,1130,1132,1134,1136,1138,1139,1142,1144,1146,1148,1150,1152,1155,1157,1159,1162,1164,1167,1170,1172,
+1175,1178,1181,1183,1186,1189,1192,1195,1198,1201,1204,1207,1210,1213,1216,1219,1221,1224,1227,1230,1233,
+1236,1238,1241,1244,1246,1249,1251,1253,1256,1258,1260,1262,1265,1267,1269,1271,1272,1274,1276,1278,1279,
+1281,1283,1284,1286,1287,1289,1290,1292,1293,1294,1296,1297,1299,1300,1302,1303,1305,1307,1308,1310,1312,
+1314,1316,1318,1320,1322,1324,1326,1329,1331,1334,1336,1339,1342,1345,1348,1351,1354,1357,1361,1364,1367,
+1371,1375,1378,1382,1386,1390,1393,1397,1401,1405,1409,1413,1417,1421,1425,1429,1433,1437,1440,1444,1448,
+1452,1455,1459,1462,1465,1469,1472,1475,1478,1480,1483,1486,1488,1490,1493,1495,1497,1498,1500,1502,1503,
+1504,1505,1507,1507,1508,1509,1510,1510,1510,1511,1511,1511,1511,1511,1511,1511,1510,1510,1510,1510,1509,
+1509,1508,1508,1507,1507,1506,1506,1506,1505,1505,1504,1504,1504,1504,1503,1503,1503,1503,1503,1503,1503,
+1504,1504,1504,1504,1505,1505,1506,1506,1507,1508,1509,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,
+1519,1521,1522,1523,1524,1525,1527,1528,1529,1530,1532,1533,1534,1535,1537,1538,1539,1541,1542,1543,1544,
+1546,1547,1548,1550,1551,1552,1554,1555,1556,1558,1559,1561,1562,1564,1565,1567,1569,1570,1572,1574,1576,
+1578,1579,1581,1584,1586,1588,1590,1592,1595,1597,1599,1602,1604,1607,1610,1612,1615,1618,1621,1623,1626,
+1629,1632,1635,1638,1641,1644,1647,1650,1654,1657,1660,1663,1666,1669,1672,1675,1678,1681,1684,1687,1690,
+1693,1696,1699,1702,1705,1708,1711,1714,1717,1720,1723,1726,1729,1732,1735,1738,1741,1744,1747,1751,1754,
+1757,1761,1764,1768,1772,1775,1779,1783,1787,1792,1796,1800,1805,1809,1814,1819,1824,1829,1834,1839,1845,
+1851,1856,1862,1868,1873,1879,1885,1892,1898,1904,1910,1916,1922,1929,1935,1941,1947,1953,1959,1965,1971,
+1977,1982,1988,1994,1999,2004,2009,2014,2018,2023,2027,2031,2034,2038,2041,2044,2047,2049,2052,2054,2055,
+2057,2058,2059,2060,2060,2060,2060,2060,2060,2059,2058,2057,2056,2054,2053,2051,2049,2047,2045,2043,2040,
+2038,2035,2033,2030,2027,2025,2022,2019,2017,2014,2011,2009,2006,2004,2002,1999,1997,1995,1993,1991,1989,
+1988,1986,1985,1984,1983,1982,1981,1980,1980,1979,1979,1979,1978,1979,1979,1979,1979,1980,1980,1981,1982,
+1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,
+2003,2004,2005,2005,2006,2007,2007,2007,2008,2008,2008,2008,2008,2008,2008,2008,2008,2008,2008,2007,2007,
+2007,2006,2006,2005,2005,2004,2004,2003,2003,2002,2002,2001,2000,2000,1999,1999,1998,1998,1998,1997,1997,
+1997,1996,1996,1996,1996,1996,1996,1996,1996,1996,1996,1997,1997,1997,1998,1998,1999,2000,2000,2001,2002,
+2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2016,2017,2018,2019,2020,2022,2023,2024,2025,
+2026,2027,2028,2029,2029,2030,2031,2032,2032,2033,2033,2034,2034,2034,2035,2035,2035,2035,2035,2035,2035,
+2034,2034,2034,2033,2033,2032,2032,2031,2031,2030,2029,2029,2028,2027,2026,2026,2025,2024,2023,2023,2022,
+2021,2020,2020,2019,2018,2018,2017,2017,2016,2016,2015,2015,2015,2014,2014,2014,2014,2014,2014,2014,2014,
+2014,2078,2079,2079,2080,2081,2082,2083,2084,2085,2086,2086,2087,2088,2088,2089,2090,2090,2091,2091,2091,
+2091,2092,2092,2092,2091,2091,2091,2091,2090,2090,2089,2088,2088,2087,2086,2085,2084,2082,2081,2080,2079,
+2077,2076,2074,2073,2071,2070,2068,2066,2065,2063,2061,2060,2058,2057,2055,2054,2052,2051,2049,2048,2046,
+2045,2044,2043,2042,2041,2040,2039,2038,2037,2037,2036,2036,2036,2035,2035,2035,2035,2035,2035,2035,2036,
+2036,2036,2037,2037,2038,2038,2039,2040,2040,2041,2042,2042,2043,2044,2044,2045,2046,2046,2047,2048,2048,
+2049,2049,2049,2050,2050,2050,2050,2050,2050,2050,2050,2050,2050,2049,2049,2048,2048,2047,2046,2045,2044,
+2043,2042,2041,2040,2038,2037,2036,2034,2033,2031,2029,2028,2026,2024,2022,2020,2018,2016,2014,2012,2010,
+2008,2005,2003,2001,1998,1996,1993,1990,1988,1985,1982,1979,1976,1973,1970,1967,1964,1960,1957,1954,1950,
+1946,1943,1939,1935,1931,1927,1923,1918,1914,1910,1905,1901,1896,1891,1887,1882,1877,1872,1868,1863,1858,
+1853,1848,1843,1839,1834,1829,1825,1820,1815,1811,1807,1803,1798,1795,1791,1787,1784,1780,1777,1774,1771,
+1768,1766,1763,1761,1759,1757,1756,1755,1753,1752,1752,1751,1750,1750,1750,1750,1750,1750,1751,1751,1752,
+1752,1753,1754,1755,1755,1757,1757,1758,1759,1760,1761,1762,1763,1763,1764,1764,1764,1764,1765,1764,1764,
+1764,1763,1762,1761,1760,1758,1757,1755,1753,1750,1748,1745,1742,1739,1735,1732,1728,1724,1719,1715,1710,
+1705,1701,1695,1690,1685,1679,1673,1668,1662,1656,1650,1643,1637,1631,1625,1618,1612,1606,1599,1593,1587,
+1581,1575,1569,1562,1557,1551,1545,1539,1534,1528,1523,1517,1512,1507,1502,1497,1492,1488,1483,1479,1474,
+1470,1466,1462,1458,1454,1450,1446,1443,1439,1436,1432,1429,1426,1423,1419,1416,1413,1410,1407,1404,1401,
+1399,1396,1393,1390,1388,1385,1382,1380,1377,1374,1372,1369,1367,1364,1362,1360,1357,1355,1353,1350,1348,
+1346,1344,1342,1340,1338,1336,1334,1332,1330,1328,1326,1324,1323,1321,1319,1317,1316,1314,1312,1310,1308,
+1307,1305,1303,1301,1299,1297,1295,1293,1291,1288,1286,1284,1281,1279,1276,1273,1270,1267,1264,1261,1258,
+1255,1251,1248,1244,1240,1237,1233,1229,1225,1221,1217,1213,1209,1205,1201,1197,1193,1189,1185,1181,1178,
+1174,1170,1167,1163,1160,1157,1154,1151,1149,1146,1144,1142,1140,1138,1136,1135,1134,1133,1132,1131,1131,
+1131,1130,1131,1131,1131,1131,1132,1133,1133,1134,1135,1136,1137,1137,1138,1139,1140,1140,1141,1141,1141,
+1141,1141,1141,1141,1140,1139,1138,1136,1134,1132,1130,1127,1124,1121,1118,1114,1110,1105,1101,1096,1091,
+1086,1080,1074,1068,1062,1056,1050,1043,1037,1031,1024,1018,1011,1005,999,994,988,983,977,973,968,
+964,961,957,955,952,950,949,949,948,949,950,951,954,956,960,964,969,974,980,986,993,
+1000,1008,1017,1025,1035,1044,1054,1064,1075,1086,1097,1108,1119,1130,1141,1152,1163,1174,1184,1195,1205,
+1214,1223,1232,1241,1248,1256,1262,1268,1273,1278,1282,1285,1288,1289,1290,1290,1290,1288,1286,1283,1279,
+1274,1269,1263,1256,1248,1240,1231,1222,1212,1201,1190,1179,1167,1155,1142,1130,1117,1104,1090,1077,1063,
+1050,1037,1023,1010,997,985,972,960,948,937,926,915,905,895,886,877,869,861,854,847,841,
+835,830,826,822,818,816,813,811,810,809,808,808,809,809,810,812,813,815,817,820,823,
+825,828,832,835,838,842,845,848,852,855,859,862,866,869,872,875,878,881,884,887,889,
+892,894,896,898,900,902,904,905,907,908,909,910,911,913,913,914,915,916,917,917,918,
+919,919,920,921,921,922,923,924,924,925,926,927,928,930,931,932,933,935,936,938,940,
+941,943,945,947,949,951,953,955,958,960,962,965,967,969,972,974,977,979,982,984,987,
+989,991,994,996,998,1001,1003,1005,1007,1009,1011,1013,1014,1016,1018,1019,1021,1022,1023,1024,1025,
+1026,1027,1028,1029,1030,1030,1031,1031,1031,1032,1032,1032,1032,1032,1032,1032,1032,1032,1032,1032,1032,
+1032,1032,1031,1031,1031,1031,1031,1031,1031,1031,1031,1031,1031,1032,1032,1032,1033,1033,1034,1034,1035,
+1035,1036,1037,1038,1038,1039,1040,1041,1042,1043,1044,1046,1047,1048,1049,1050,1051,1053,1054,1055,1056,
+1057,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1072,1073,1074,1075,1075,1076,
+1077,1078,1078,1079,1080,1081,1082,1082,1083,1084,1085,1086,1087,1089,1090,1091,1092,1094,1095,1097,1099,
+1101,1103,1105,1107,1109,1111,1114,1116,1119,1122,1125,1128,1131,1134,1137,1141,1144,1147,1151,1155,1158,
+1162,1166,1170,1174,1177,1181,1185,1189,1193,1197,1201,1205,1209,1212,1216,1220,1224,1227,1231,1234,1238,
+1241,1244,1247,1250,1253,1256,1259,1262,1265,1267,1270,1272,1274,1277,1279,1281,1283,1285,1287,1289,1291,
+1293,1295,1297,1299,1301,1303,1304,1306,1308,1310,1312,1314,1316,1319,1321,1323,1325,1328,1330,1333,1336,
+1339,1341,1344,1347,1351,1354,1357,1361,1364,1368,1372,1375,1379,1383,1387,1391,1396,1400,1404,1408,1413,
+1417,1422,1426,1431,1435,1439,1444,1448,1453,1457,1461,1466,1470,1474,1478,1482,1486,1490,1493,1497,1500,
+1503,1507,1510,1512,1515,1518,1520,1523,1525,1527,1529,1530,1532,1533,1534,1535,1536,1537,1538,1538,1539,
+1539,1539,1539,1539,1539,1539,1539,1538,1538,1537,1537,1536,1535,1534,1534,1533,1532,1531,1531,1530,1529,
+1528,1528,1527,1526,1526,1525,1525,1524,1524,1523,1523,1523,1523,1523,1522,1523,1523,1523,1523,1523,1524,
+1524,1524,1525,1525,1526,1527,1527,1528,1529,1529,1530,1531,1532,1532,1533,1534,1535,1536,1536,1537,1538,
+1539,1539,1540,1541,1542,1542,1543,1544,1544,1545,1545,1546,1547,1547,1548,1548,1549,1550,1550,1551,1551,
+1552,1553,1554,1554,1555,1556,1557,1558,1559,1560,1562,1563,1564,1566,1567,1569,1571,1573,1574,1576,1579,
+1581,1583,1585,1588,1591,1593,1596,1599,1602,1605,1608,1611,1614,1617,1620,1624,1627,1630,1634,1637,1641,
+1644,1647,1651,1654,1657,1661,1664,1667,1670,1673,1676,1679,1682,1685,1688,1691,1693,1696,1698,1701,1703,
+1706,1708,1710,1713,1715,1717,1719,1721,1723,1726,1728,1730,1732,1735,1737,1739,1742,1745,1747,1750,1753,
+1756,1760,1763,1767,1770,1774,1778,1783,1787,1792,1797,1802,1807,1813,1818,1824,1830,1836,1843,1849,1856,
+1863,1870,1877,1884,1892,1899,1906,1914,1921,1929,1937,1944,1952,1959,1966,1973,1980,1987,1994,2001,2007,
+2014,2019,2025,2031,2036,2041,2045,2050,2054,2058,2061,2064,2067,2069,2071,2073,2074,2075,2076,2077,2077,
+2077,2076,2076,2075,2073,2072,2070,2069,2067,2064,2062,2060,2057,2054,2052,2049,2046,2043,2041,2038,2035,
+2032,2029,2027,2024,2022,2019,2017,2015,2013,2011,2010,2008,2007,2006,2005,2004,2003,2003,2002,2002,2002,
+2002,2002,2003,2003,2004,2004,2005,2006,2007,2009,2010,2011,2013,2014,2015,2017,2019,2020,2022,2023,2025,
+2026,2028,2030,2031,2032,2034,2035,2037,2038,2039,2041,2042,2043,2044,2045,2046,2047,2047,2048,2049,2050,
+2050,2051,2051,2052,2052,2052,2053,2053,2053,2053,2053,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,
+2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2054,2055,2055,2055,2055,2056,
+2056,2056,2057,2057,2057,2058,2058,2059,2059,2060,2060,2061,2062,2062,2063,2064,2064,2065,2066,2066,2067,
+2068,2069,2069,2070,2071,2071,2072,2073,2073,2074,2074,2075,2075,2076,2076,2077,2077,2077,2077,2078,2078,
+2078,2078,2078,2078,2078,2078,2078,2077,2077,2077,2077,2076,2076,2075,2075,2075,2074,2074,2073,2073,2072,
+2072,2071,2071,2070,2070,2070,2069,2069,2069,2068,2068,2068,2068,2068,2068,2068,2068,2068,2068,2068,2069,
+2069,2069,2070,2070,2071,2071,2072,2073,2074,2074,2075,2076,2077,2078,2152,2153,2155,2157,2158,2159,2161,
+2162,2163,2164,2165,2166,2167,2168,2168,2168,2169,2169,2169,2169,2169,2169,2168,2168,2167,2167,2166,2165,
+2164,2163,2162,2160,2159,2158,2156,2155,2153,2152,2150,2148,2147,2145,2143,2142,2140,2138,2136,2135,2133,
+2131,2129,2128,2126,2125,2123,2122,2120,2119,2118,2116,2115,2114,2113,2112,2111,2110,2110,2109,2108,2108,
+2107,2107,2107,2107,2106,2106,2106,2107,2107,2107,2107,2108,2108,2108,2109,2109,2110,2111,2111,2112,2112,
+2113,2113,2114,2115,2115,2116,2116,2116,2117,2117,2117,2117,2117,2117,2117,2117,2116,2116,2115,2115,2114,
+2113,2112,2111,2110,2108,2107,2105,2104,2102,2100,2098,2096,2094,2092,2089,2087,2085,2082,2079,2077,2074,
+2072,2069,2066,2063,2061,2058,2055,2052,2049,2047,2044,2041,2038,2035,2032,2030,2027,2024,2021,2018,2016,
+2013,2010,2007,2004,2001,1998,1996,1993,1989,1986,1983,1980,1977,1973,1970,1967,1963,1960,1956,1952,1948,
+1944,1940,1936,1932,1928,1923,1919,1914,1909,1905,1900,1895,1890,1885,1880,1876,1871,1866,1861,1856,1851,
+1846,1841,1837,1832,1827,1823,1818,1814,1810,1806,1802,1798,1795,1791,1788,1785,1782,1780,1777,1775,1773,
+1771,1769,1768,1767,1766,1765,1764,1764,1763,1763,1763,1763,1764,1764,1764,1765,1766,1766,1767,1768,1769,
+1770,1771,1772,1773,1774,1775,1775,1776,1777,1777,1778,1778,1778,1778,1778,1777,1777,1776,1775,1774,1773,
+1771,1770,1768,1765,1763,1760,1757,1754,1751,1748,1744,1740,1736,1732,1727,1723,1718,1713,1708,1703,1697,
+1692,1686,1681,1675,1669,1663,1657,1651,1645,1639,1633,1627,1621,1615,1609,1603,1598,1592,1586,1580,1575,
+1569,1563,1558,1553,1547,1542,1537,1532,1527,1522,1517,1513,1508,1503,1499,1494,1490,1486,1481,1477,1473,
+1469,1465,1461,1457,1453,1449,1444,1441,1437,1433,1429,1425,1421,1417,1413,1409,1405,1401,1397,1393,1389,
+1385,1382,1378,1374,1370,1367,1363,1359,1356,1352,1349,1346,1343,1340,1337,1334,1331,1328,1326,1323,1321,
+1318,1316,1314,1312,1311,1309,1307,1306,1304,1303,1302,1300,1299,1298,1297,1296,1295,1294,1293,1292,1291,
+1290,1289,1288,1286,1285,1283,1282,1280,1278,1276,1274,1272,1269,1267,1264,1261,1258,1255,1251,1248,1244,
+1240,1236,1232,1228,1223,1219,1214,1209,1204,1200,1195,1190,1185,1180,1175,1170,1165,1160,1156,1151,1147,
+1143,1138,1134,1131,1127,1124,1121,1118,1115,1113,1110,1109,1107,1105,1104,1103,1103,1102,1102,1102,1102,
+1103,1103,1104,1105,1106,1107,1108,1110,1111,1112,1114,1115,1116,1117,1118,1119,1120,1121,1121,1122,1122,
+1121,1121,1120,1119,1118,1116,1114,1111,1109,1106,1102,1098,1094,1090,1085,1080,1075,1069,1063,1057,1051,
+1044,1037,1031,1024,1017,1010,1003,996,989,983,976,970,964,958,953,948,943,939,935,932,929,
+927,926,925,924,925,926,927,929,932,936,940,945,951,957,963,971,979,987,996,1005,1015,
+1025,1035,1046,1057,1068,1079,1091,1102,1113,1124,1135,1146,1157,1167,1177,1186,1195,1203,1211,1218,1224,
+1230,1235,1239,1243,1245,1247,1248,1248,1247,1246,1243,1240,1236,1231,1225,1218,1211,1203,1194,1184,1174,
+1164,1152,1141,1129,1116,1103,1090,1077,1063,1050,1036,1022,1009,995,982,968,955,943,930,918,906,
+895,884,874,864,855,846,838,831,823,817,811,806,801,797,793,790,787,785,783,782,781,
+781,781,781,782,783,784,786,788,789,791,794,796,798,801,803,806,808,811,813,815,818,
+820,822,824,826,828,829,831,833,834,835,836,838,839,840,840,841,842,843,843,844,845,
+845,846,847,847,848,849,850,851,851,852,854,855,856,858,859,861,862,864,866,868,870,
+872,875,877,880,882,885,888,890,893,896,899,902,905,908,911,915,918,921,924,927,931,
+934,937,940,943,946,949,952,955,958,961,964,967,969,972,974,977,979,981,984,986,988,
+990,992,993,995,997,998,1000,1001,1002,1003,1004,1005,1006,1007,1008,1008,1009,1009,1010,1010,1011,
+1011,1011,1011,1011,1011,1011,1011,1011,1011,1011,1010,1010,1010,1010,1009,1009,1009,1009,1009,1008,1008,
+1008,1008,1008,1008,1008,1008,1008,1009,1009,1009,1010,1010,1010,1011,1011,1012,1013,1013,1014,1015,1016,
+1017,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1032,1033,1034,1035,
+1035,1036,1037,1037,1038,1039,1039,1040,1040,1041,1041,1042,1042,1043,1043,1044,1044,1045,1046,1046,1047,
+1048,1049,1050,1051,1052,1053,1054,1055,1057,1058,1060,1062,1064,1066,1068,1070,1073,1075,1078,1081,1084,
+1087,1090,1093,1097,1100,1104,1108,1111,1115,1119,1123,1128,1132,1136,1140,1145,1149,1153,1158,1162,1166,
+1171,1175,1179,1184,1188,1192,1196,1201,1205,1209,1212,1216,1220,1224,1227,1231,1234,1238,1241,1244,1247,
+1250,1253,1256,1259,1262,1265,1267,1270,1273,1275,1278,1280,1283,1285,1287,1290,1292,1295,1297,1300,1302,
+1305,1307,1310,1313,1315,1318,1321,1324,1327,1330,1333,1336,1339,1343,1346,1350,1353,1357,1360,1364,1368,
+1372,1376,1380,1384,1388,1392,1397,1401,1405,1410,1414,1419,1423,1428,1432,1436,1441,1445,1450,1454,1459,
+1463,1467,1471,1476,1480,1484,1488,1492,1495,1499,1502,1506,1509,1512,1515,1518,1521,1524,1526,1529,1531,
+1533,1535,1537,1538,1540,1541,1542,1543,1544,1545,1545,1546,1546,1546,1546,1546,1546,1545,1545,1544,1544,
+1543,1542,1541,1540,1539,1538,1537,1536,1535,1534,1533,1532,1531,1529,1528,1527,1526,1525,1525,1524,1523,
+1522,1522,1521,1521,1520,1520,1520,1520,1519,1519,1520,1520,1520,1520,1521,1521,1522,1522,1523,1524,1524,
+1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1541,1542,1543,1544,
+1545,1546,1547,1547,1548,1549,1549,1550,1551,1552,1552,1553,1554,1554,1555,1556,1557,1557,1558,1559,1560,
+1561,1562,1563,1564,1566,1567,1569,1570,1572,1573,1575,1577,1579,1581,1584,1586,1588,1591,1594,1596,1599,
+1602,1605,1608,1612,1615,1618,1622,1625,1629,1632,1636,1639,1643,1647,1650,1654,1657,1661,1664,1668,1671,
+1675,1678,1681,1684,1687,1690,1693,1696,1698,1701,1704,1706,1708,1710,1712,1714,1716,1718,1720,1722,1723,
+1725,1727,1728,1730,1732,1734,1735,1737,1739,1741,1743,1746,1748,1751,1754,1757,1760,1763,1767,1771,1775,
+1779,1784,1789,1794,1800,1806,1812,1818,1825,1832,1839,1847,1854,1862,1871,1879,1888,1896,1905,1914,1923,
+1933,1942,1951,1961,1970,1979,1988,1997,2006,2015,2023,2032,2040,2047,2055,2062,2069,2075,2081,2087,2092,
+2097,2102,2106,2109,2112,2115,2117,2119,2120,2121,2121,2121,2121,2120,2119,2117,2115,2113,2110,2108,2105,
+2102,2098,2095,2091,2087,2083,2079,2075,2071,2068,2064,2060,2056,2052,2049,2046,2042,2039,2037,2034,2032,
+2030,2028,2026,2025,2023,2022,2022,2021,2021,2021,2021,2022,2022,2023,2024,2025,2027,2028,2030,2032,2033,
+2035,2037,2039,2042,2044,2046,2049,2051,2053,2055,2058,2060,2062,2064,2066,2068,2070,2072,2074,2076,2078,
+2080,2081,2083,2084,2086,2087,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2102,
+2103,2104,2105,2105,2106,2107,2108,2108,2109,2109,2110,2111,2111,2112,2112,2113,2113,2114,2114,2115,2115,
+2116,2116,2116,2117,2117,2117,2117,2118,2118,2118,2118,2118,2118,2118,2118,2118,2118,2118,2118,2118,2118,
+2118,2118,2118,2118,2118,2118,2118,2117,2117,2117,2117,2117,2117,2116,2116,2116,2116,2116,2115,2115,2115,
+2115,2114,2114,2114,2113,2113,2113,2112,2112,2112,2111,2111,2110,2110,2110,2109,2109,2108,2108,2107,2107,
+2107,2106,2106,2106,2105,2105,2105,2105,2105,2105,2105,2105,2105,2105,2106,2106,2106,2107,2107,2108,2109,
+2110,2111,2112,2113,2114,2115,2117,2118,2119,2121,2123,2124,2126,2128,2129,2131,2133,2135,2137,2139,2141,
+2143,2144,2146,2148,2150,2152,2218,2220,2221,2223,2224,2225,2226,2227,2227,2228,2228,2228,2229,2228,2228,
+2228,2228,2227,2226,2226,2225,2224,2223,2222,2221,2220,2219,2217,2216,2215,2214,2212,2211,2210,2209,2208,
+2207,2206,2205,2204,2203,2202,2201,2200,2199,2199,2198,2198,2197,2197,2196,2196,2195,2195,2195,2195,2194,
+2194,2194,2194,2194,2193,2193,2193,2193,2193,2192,2192,2192,2192,2192,2191,2191,2191,2191,2190,2190,2190,
+2189,2189,2188,2188,2188,2187,2187,2186,2186,2185,2184,2184,2183,2182,2182,2181,2180,2179,2178,2177,2176,
+2175,2174,2173,2171,2170,2168,2167,2165,2163,2161,2159,2157,2155,2153,2151,2148,2145,2143,2140,2137,2134,
+2131,2128,2125,2122,2119,2115,2112,2108,2105,2101,2098,2094,2091,2087,2084,2080,2076,2073,2070,2066,2063,
+2059,2056,2053,2050,2047,2044,2041,2038,2035,2032,2029,2027,2024,2021,2019,2016,2014,2011,2009,2007,2004,
+2002,1999,1997,1994,1992,1989,1987,1984,1981,1978,1976,1973,1969,1966,1963,1960,1956,1953,1949,1945,1941,
+1937,1933,1929,1925,1920,1916,1912,1907,1902,1898,1893,1888,1883,1879,1874,1869,1864,1859,1855,1850,1845,
+1841,1836,1832,1828,1823,1819,1816,1812,1808,1804,1801,1798,1795,1792,1789,1787,1784,1782,1780,1778,1776,
+1774,1773,1771,1770,1769,1768,1767,1766,1766,1765,1765,1764,1764,1764,1763,1763,1763,1763,1763,1762,1762,
+1762,1761,1761,1761,1760,1759,1759,1758,1757,1756,1755,1754,1752,1751,1749,1747,1745,1743,1741,1738,1736,
+1733,1730,1727,1724,1720,1717,1713,1709,1705,1701,1697,1693,1688,1684,1679,1675,1670,1665,1660,1655,1650,
+1645,1640,1635,1629,1624,1619,1614,1609,1604,1599,1594,1589,1584,1579,1575,1570,1565,1561,1556,1552,1548,
+1543,1539,1535,1531,1527,1523,1519,1516,1512,1508,1505,1501,1498,1494,1491,1487,1484,1480,1477,1473,1470,
+1466,1462,1459,1455,1451,1448,1444,1440,1436,1432,1428,1424,1420,1416,1412,1408,1404,1400,1396,1391,1387,
+1383,1379,1375,1371,1367,1364,1360,1356,1353,1349,1346,1343,1340,1337,1334,1331,1329,1326,1324,1322,1320,
+1318,1316,1314,1313,1312,1310,1309,1308,1307,1306,1305,1304,1303,1302,1301,1300,1299,1298,1297,1295,1294,
+1292,1291,1289,1287,1285,1283,1280,1278,1275,1272,1269,1265,1262,1258,1254,1250,1245,1241,1236,1231,1226,
+1221,1216,1211,1205,1200,1194,1189,1183,1178,1172,1166,1161,1156,1150,1145,1140,1135,1130,1126,1121,1117,
+1113,1109,1106,1102,1099,1096,1094,1091,1089,1088,1086,1085,1084,1083,1082,1082,1082,1082,1082,1082,1083,
+1083,1084,1085,1086,1087,1088,1088,1089,1090,1091,1092,1092,1093,1093,1093,1093,1092,1092,1091,1089,1088,
+1086,1084,1082,1079,1076,1072,1068,1064,1060,1055,1050,1044,1039,1033,1027,1020,1014,1007,1000,993,986,
+979,972,965,958,951,944,938,932,926,920,915,910,906,902,899,896,894,892,891,891,892,
+893,895,897,900,904,909,914,920,927,934,942,951,960,969,979,990,1000,1011,1022,1034,1045,
+1057,1068,1080,1091,1102,1113,1124,1134,1144,1153,1162,1170,1177,1184,1190,1195,1199,1203,1205,1207,1208,
+1208,1206,1204,1201,1197,1193,1187,1180,1173,1165,1156,1146,1136,1125,1114,1102,1090,1077,1064,1050,1037,
+1023,1009,996,982,968,955,941,928,916,903,891,879,868,858,848,838,829,821,813,805,799,
+793,787,782,778,774,771,768,765,764,762,761,760,760,760,760,760,761,762,762,763,765,
+766,767,768,769,770,771,772,773,773,774,775,775,775,776,776,776,776,775,775,775,775,
+774,774,773,773,773,773,772,772,772,772,773,773,774,774,775,777,778,779,781,783,785,
+787,790,792,795,798,802,805,809,812,816,820,824,828,832,836,841,845,849,853,858,862,
+866,870,874,878,882,886,890,893,897,900,904,907,910,913,916,919,921,924,926,929,931,
+933,935,937,939,941,943,945,946,948,950,951,953,954,956,957,959,960,962,963,965,966,
+968,969,970,972,973,974,976,977,978,980,981,982,983,984,985,986,987,988,989,990,991,
+992,992,993,994,994,995,995,996,996,996,996,997,997,997,997,997,997,997,997,997,997,
+997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,997,
+997,997,998,998,998,998,998,998,998,998,999,999,999,999,999,1000,1000,1000,1000,1001,1001,
+1002,1002,1003,1003,1004,1005,1005,1006,1007,1008,1009,1011,1012,1014,1015,1017,1019,1021,1023,1025,1027,
+1030,1032,1035,1038,1041,1044,1047,1051,1054,1058,1061,1065,1069,1073,1078,1082,1086,1091,1095,1100,1104,
+1109,1114,1118,1123,1128,1133,1138,1142,1147,1152,1157,1161,1166,1170,1175,1179,1184,1188,1192,1196,1200,
+1204,1208,1212,1216,1220,1223,1227,1230,1233,1237,1240,1243,1246,1249,1252,1255,1258,1261,1264,1267,1270,
+1273,1276,1278,1281,1284,1287,1290,1292,1295,1298,1301,1304,1307,1310,1313,1316,1319,1322,1325,1328,1331,
+1334,1338,1341,1344,1347,1350,1354,1357,1360,1363,1367,1370,1373,1376,1380,1383,1386,1389,1393,1396,1399,
+1402,1405,1409,1412,1415,1418,1421,1424,1427,1430,1433,1436,1439,1442,1445,1448,1451,1454,1457,1460,1463,
+1465,1468,1471,1474,1476,1479,1481,1484,1486,1488,1491,1493,1495,1497,1499,1501,1502,1504,1506,1507,1509,
+1510,1511,1512,1513,1514,1515,1516,1516,1517,1517,1517,1518,1518,1518,1518,1518,1518,1517,1517,1517,1517,
+1516,1516,1515,1515,1515,1514,1514,1513,1513,1513,1512,1512,1512,1512,1512,1512,1512,1512,1512,1512,1513,
+1513,1514,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1525,1526,1527,1529,1530,1532,1534,1535,1537,
+1539,1540,1542,1544,1545,1547,1549,1551,1552,1554,1555,1557,1559,1560,1562,1563,1564,1566,1567,1568,1570,
+1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1584,1585,1586,1587,1588,1589,1590,1591,1593,
+1594,1595,1597,1599,1600,1602,1604,1606,1608,1610,1612,1614,1617,1619,1622,1625,1628,1630,1633,1637,1640,
+1643,1646,1650,1653,1657,1661,1664,1668,1672,1675,1679,1683,1687,1690,1694,1698,1701,1705,1708,1712,1715,
+1718,1721,1725,1728,1730,1733,1736,1739,1741,1744,1746,1749,1751,1753,1755,1758,1760,1762,1764,1767,1769,
+1771,1773,1776,1779,1782,1785,1788,1791,1795,1798,1802,1807,1811,1816,1821,1827,1832,1839,1845,1852,1859,
+1867,1874,1883,1891,1900,1909,1918,1928,1938,1948,1958,1969,1979,1990,2001,2012,2022,2033,2044,2055,2065,
+2075,2085,2095,2105,2114,2123,2131,2139,2147,2154,2161,2167,2172,2177,2182,2185,2189,2191,2193,2195,2195,
+2196,2195,2194,2193,2191,2188,2185,2182,2178,2173,2169,2164,2159,2153,2147,2141,2135,2129,2123,2117,2111,
+2105,2099,2093,2087,2081,2076,2071,2066,2061,2057,2053,2050,2046,2043,2041,2039,2037,2035,2034,2034,2033,
+2033,2033,2034,2035,2036,2037,2039,2041,2043,2045,2047,2050,2053,2055,2058,2061,2064,2067,2070,2073,2076,
+2079,2082,2084,2087,2090,2093,2095,2098,2100,2102,2105,2107,2109,2111,2113,2115,2116,2118,2120,2121,2123,
+2124,2126,2127,2128,2130,2131,2132,2133,2135,2136,2137,2138,2140,2141,2142,2143,2144,2146,2147,2148,2149,
+2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2162,2163,2164,2164,2165,2165,2166,2166,
+2167,2167,2167,2168,2168,2168,2169,2169,2169,2169,2169,2170,2170,2170,2170,2170,2171,2171,2171,2171,2171,
+2172,2172,2172,2172,2172,2173,2173,2173,2173,2173,2173,2173,2173,2173,2173,2173,2173,2172,2172,2172,2171,
+2171,2171,2170,2170,2169,2168,2168,2167,2166,2166,2165,2164,2164,2163,2162,2162,2161,2161,2160,2160,2159,
+2159,2159,2159,2159,2159,2159,2160,2160,2161,2161,2162,2163,2164,2165,2167,2168,2170,2171,2173,2175,2177,
+2179,2181,2184,2186,2188,2190,2193,2195,2197,2200,2202,2204,2207,2209,2211,2213,2215,2217,2218,2265,2266,
+2267,2268,2268,2268,2268,2268,2268,2267,2267,2266,2265,2264,2263,2262,2260,2259,2258,2256,2255,2253,2252,
+2251,2249,2248,2247,2246,2245,2244,2244,2243,2243,2243,2243,2243,2243,2244,2244,2245,2246,2247,2249,2250,
+2252,2253,2255,2257,2259,2261,2263,2265,2267,2269,2271,2272,2274,2276,2278,2279,2281,2282,2283,2284,2285,
+2286,2287,2287,2287,2287,2287,2287,2286,2286,2285,2284,2283,2282,2280,2279,2277,2275,2274,2272,2270,2267,
+2265,2263,2261,2258,2256,2253,2251,2248,2246,2243,2240,2238,2235,2232,2229,2227,2224,2221,2218,2215,2212,
+2209,2206,2203,2200,2196,2193,2190,2186,2183,2179,2176,2172,2168,2165,2161,2157,2153,2149,2145,2141,2137,
+2133,2129,2125,2121,2117,2113,2109,2105,2101,2097,2093,2090,2086,2082,2079,2075,2072,2068,2065,2062,2058,
+2055,2052,2049,2046,2043,2041,2038,2035,2032,2030,2027,2025,2022,2019,2017,2014,2012,2009,2006,2004,2001,
+1998,1995,1992,1989,1986,1983,1979,1976,1972,1969,1965,1961,1957,1954,1949,1945,1941,1937,1932,1928,1923,
+1919,1914,1910,1905,1900,1895,1891,1886,1881,1876,1872,1867,1862,1857,1853,1848,1844,1839,1835,1830,1826,
+1822,1818,1814,1810,1806,1803,1799,1796,1792,1789,1786,1782,1779,1776,1773,1771,1768,1765,1763,1760,1758,
+1756,1753,1751,1749,1747,1745,1743,1741,1739,1737,1735,1733,1732,1730,1728,1726,1724,1723,1721,1719,1717,
+1715,1714,1712,1710,1708,1706,1704,1702,1700,1698,1695,1693,1691,1688,1686,1683,1680,1678,1675,1672,1669,
+1665,1662,1659,1655,1652,1648,1644,1640,1636,1632,1628,1624,1619,1615,1611,1606,1602,1597,1592,1588,1583,
+1579,1574,1569,1565,1560,1556,1551,1547,1543,1538,1534,1530,1526,1523,1519,1515,1512,1508,1505,1502,1499,
+1496,1493,1490,1487,1485,1482,1480,1477,1475,1473,1470,1468,1466,1464,1461,1459,1457,1454,1452,1449,1447,
+1444,1441,1439,1436,1433,1430,1427,1424,1421,1417,1414,1411,1407,1404,1400,1397,1393,1390,1386,1383,1379,
+1376,1373,1369,1366,1363,1360,1357,1354,1351,1348,1346,1343,1341,1338,1336,1334,1332,1330,1328,1326,1325,
+1323,1321,1320,1318,1316,1315,1313,1311,1310,1308,1306,1304,1302,1300,1297,1295,1292,1290,1287,1284,1280,
+1277,1273,1269,1266,1261,1257,1253,1248,1243,1239,1234,1228,1223,1218,1212,1207,1201,1196,1190,1185,1179,
+1173,1168,1162,1156,1151,1146,1140,1135,1130,1125,1120,1115,1111,1106,1102,1098,1094,1090,1087,1083,1080,
+1077,1074,1071,1069,1067,1065,1063,1061,1060,1058,1057,1056,1055,1054,1054,1053,1053,1052,1052,1052,1052,
+1052,1052,1052,1052,1052,1051,1051,1051,1051,1050,1050,1049,1048,1047,1045,1044,1042,1040,1038,1035,1032,
+1029,1026,1022,1018,1014,1009,1004,999,994,988,982,976,970,963,957,950,943,936,929,923,916,
+909,903,896,890,885,879,874,869,865,862,859,856,854,853,852,852,853,855,857,860,864,
+868,873,879,886,893,901,909,918,928,938,948,959,970,981,992,1004,1015,1027,1038,1049,1060,
+1071,1081,1091,1100,1108,1116,1123,1130,1135,1140,1144,1147,1149,1150,1150,1149,1147,1144,1140,1135,1129,
+1122,1115,1106,1097,1087,1077,1065,1054,1041,1029,1016,1002,989,975,962,948,934,921,907,894,882,
+869,857,846,835,824,814,805,796,788,780,773,767,761,756,752,748,744,741,739,737,735,
+734,733,733,733,733,733,733,734,734,734,735,735,736,736,736,736,736,736,735,735,734,
+733,732,731,729,728,726,725,723,721,719,717,716,714,712,711,709,708,707,706,706,705,
+705,706,706,707,709,710,712,715,717,720,723,727,731,735,740,744,749,754,759,765,770,
+776,782,787,793,799,805,810,816,821,826,831,836,841,845,850,854,858,861,865,868,871,
+873,876,878,880,881,883,884,886,887,888,889,889,890,891,891,892,893,893,894,895,896,
+896,897,898,900,901,902,904,905,907,909,911,913,915,918,920,923,926,928,931,934,937,
+940,943,946,949,952,955,958,961,964,967,970,972,975,977,980,982,984,986,988,990,992,
+993,994,996,997,998,999,999,1000,1000,1001,1001,1001,1001,1001,1001,1001,1000,1000,999,999,998,
+997,997,996,995,994,994,993,992,991,990,989,988,987,986,986,985,984,983,982,982,981,
+980,980,979,979,979,978,978,978,978,978,978,978,979,979,980,980,981,982,983,984,986,
+987,989,990,992,994,997,999,1001,1004,1007,1010,1013,1016,1019,1023,1027,1031,1035,1039,1043,1047,
+1052,1056,1061,1066,1070,1075,1080,1085,1090,1095,1100,1105,1111,1116,1121,1126,1131,1136,1141,1146,1151,
+1156,1161,1166,1170,1175,1180,1184,1188,1193,1197,1201,1205,1209,1213,1217,1220,1224,1228,1231,1235,1238,
+1241,1245,1248,1251,1254,1257,1261,1264,1267,1270,1273,1276,1279,1282,1285,1288,1292,1295,1298,1301,1304,
+1307,1310,1314,1317,1320,1323,1326,1329,1332,1335,1338,1341,1344,1347,1350,1352,1355,1357,1360,1362,1364,
+1367,1369,1371,1373,1374,1376,1378,1379,1380,1382,1383,1384,1385,1386,1387,1388,1389,1390,1390,1391,1392,
+1393,1393,1394,1395,1396,1397,1397,1398,1399,1400,1401,1403,1404,1405,1407,1408,1410,1411,1413,1415,1417,
+1419,1421,1423,1425,1427,1429,1431,1434,1436,1438,1441,1443,1445,1448,1450,1452,1454,1457,1459,1461,1463,
+1465,1467,1469,1471,1472,1474,1476,1477,1479,1481,1482,1483,1485,1486,1488,1489,1490,1491,1493,1494,1495,
+1496,1498,1499,1500,1502,1503,1505,1506,1508,1509,1511,1512,1514,1516,1518,1520,1522,1524,1526,1528,1530,
+1532,1534,1537,1539,1541,1544,1546,1549,1551,1554,1556,1559,1561,1564,1566,1569,1571,1573,1576,1578,1580,
+1583,1585,1587,1589,1591,1593,1595,1597,1599,1600,1602,1604,1605,1607,1608,1609,1610,1612,1613,1614,1615,
+1616,1616,1617,1618,1619,1619,1620,1621,1621,1622,1622,1623,1624,1624,1625,1626,1626,1627,1628,1629,1630,
+1631,1632,1633,1634,1636,1637,1639,1641,1643,1645,1647,1650,1652,1655,1657,1660,1663,1667,1670,1673,1677,
+1681,1685,1689,1693,1697,1701,1705,1710,1714,1719,1723,1728,1732,1737,1742,1746,1751,1755,1760,1764,1768,
+1773,1777,1781,1785,1789,1794,1798,1802,1805,1809,1813,1817,1821,1825,1828,1832,1836,1840,1844,1848,1853,
+1857,1862,1867,1872,1877,1882,1888,1894,1900,1907,1914,1921,1928,1936,1944,1953,1962,1971,1980,1990,2000,
+2010,2021,2031,2042,2053,2065,2076,2087,2099,2110,2121,2132,2143,2154,2165,2175,2185,2195,2204,2213,2221,
+2229,2236,2243,2249,2254,2259,2263,2266,2268,2270,2271,2272,2271,2270,2268,2266,2263,2259,2254,2249,2244,
+2238,2231,2224,2217,2209,2201,2193,2184,2176,2167,2159,2150,2141,2133,2124,2116,2108,2101,2093,2086,2080,
+2073,2068,2062,2057,2053,2049,2045,2042,2040,2038,2036,2035,2034,2034,2034,2035,2036,2037,2039,2041,2043,
+2045,2048,2051,2054,2057,2060,2064,2067,2071,2074,2078,2081,2085,2088,2091,2095,2098,2101,2104,2107,2110,
+2113,2115,2118,2121,2123,2125,2127,2130,2132,2134,2136,2138,2139,2141,2143,2145,2146,2148,2149,2151,2153,
+2154,2156,2157,2158,2160,2161,2163,2164,2165,2166,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,
+2179,2180,2180,2181,2182,2183,2184,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2196,2197,2199,
+2200,2202,2204,2206,2208,2210,2212,2215,2217,2220,2222,2225,2227,2230,2233,2236,2238,2241,2244,2246,2249,
+2251,2254,2256,2258,2260,2262,2264,2265,2267,2268,2269,2270,2270,2271,2271,2271,2271,2270,2270,2269,2268,
+2267,2265,2264,2262,2261,2259,2257,2255,2253,2251,2249,2247,2245,2243,2241,2240,2238,2236,2235,2234,2233,
+2232,2231,2230,2230,2230,2230,2230,2230,2231,2232,2232,2234,2235,2236,2238,2239,2241,2243,2244,2246,2248,
+2250,2252,2254,2256,2257,2259,2261,2262,2263,2264,2265,2306,2307,2308,2308,2308,2308,2308,2308,2307,2306,
+2305,2304,2303,2302,2300,2299,2297,2295,2294,2292,2291,2289,2288,2286,2285,2284,2283,2283,2282,2282,2282,
+2283,2283,2284,2286,2287,2289,2291,2293,2296,2299,2302,2305,2308,2312,2315,2319,2323,2327,2331,2335,2339,
+2342,2346,2350,2353,2357,2360,2363,2365,2368,2370,2372,2374,2375,2376,2377,2377,2377,2377,2377,2376,2375,
+2373,2372,2370,2368,2366,2363,2360,2358,2355,2351,2348,2345,2341,2338,2334,2331,2327,2323,2320,2316,2312,
+2309,2305,2301,2298,2294,2291,2287,2283,2280,2277,2273,2270,2266,2263,2259,2256,2252,2248,2245,2241,2237,
+2234,2230,2226,2222,2218,2214,2210,2205,2201,2197,2192,2188,2184,2179,2175,2170,2166,2161,2157,2152,2148,
+2143,2139,2134,2130,2125,2121,2117,2113,2108,2104,2100,2096,2092,2088,2084,2081,2077,2073,2069,2066,2062,
+2058,2055,2051,2047,2044,2040,2036,2032,2028,2024,2020,2016,2012,2008,2004,2000,1995,1991,1986,1982,1977,
+1972,1968,1963,1958,1953,1948,1943,1938,1933,1928,1922,1917,1912,1907,1902,1897,1891,1886,1881,1876,1871,
+1866,1861,1856,1852,1847,1842,1837,1833,1828,1824,1819,1815,1811,1807,1802,1798,1794,1790,1786,1782,1779,
+1775,1771,1767,1763,1760,1756,1752,1749,1745,1742,1738,1734,1731,1727,1724,1720,1717,1713,1710,1707,1703,
+1700,1697,1694,1690,1687,1684,1681,1678,1675,1672,1670,1667,1664,1662,1659,1657,1654,1652,1650,1647,1645,
+1643,1641,1639,1637,1635,1633,1631,1629,1627,1625,1623,1621,1618,1616,1614,1611,1609,1606,1603,1600,1598,
+1594,1591,1588,1584,1581,1577,1573,1569,1565,1560,1556,1552,1547,1543,1538,1533,1529,1524,1519,1514,1510,
+1505,1500,1496,1491,1487,1483,1479,1475,1471,1467,1464,1460,1457,1454,1451,1448,1446,1443,1441,1439,1437,
+1435,1433,1431,1429,1428,1426,1425,1423,1422,1420,1419,1417,1415,1414,1412,1410,1408,1406,1404,1402,1400,
+1398,1395,1393,1391,1388,1385,1383,1380,1377,1374,1372,1369,1366,1364,1361,1358,1356,1353,1351,1348,1346,
+1344,1342,1339,1337,1336,1334,1332,1330,1329,1327,1325,1324,1322,1321,1319,1318,1316,1314,1312,1311,1309,
+1306,1304,1302,1299,1296,1293,1290,1287,1283,1280,1276,1272,1267,1263,1258,1253,1249,1243,1238,1233,1227,
+1222,1216,1210,1205,1199,1193,1187,1182,1176,1170,1165,1159,1154,1149,1143,1138,1133,1128,1123,1119,1114,
+1110,1106,1102,1097,1094,1090,1086,1082,1079,1076,1072,1069,1066,1063,1060,1057,1054,1051,1049,1046,1043,
+1041,1038,1036,1034,1031,1029,1027,1025,1023,1021,1020,1018,1017,1015,1014,1013,1012,1011,1010,1009,1008,
+1008,1007,1007,1006,1006,1005,1005,1004,1004,1003,1002,1001,1000,999,998,996,994,992,989,987,984,
+980,977,973,969,964,959,954,948,943,936,930,924,917,910,903,896,889,882,875,869,862,
+856,850,844,839,834,829,825,822,819,817,816,816,816,817,818,821,824,828,833,839,845,
+852,860,868,877,887,897,907,918,928,940,951,962,973,984,995,1005,1016,1025,1034,1043,1051,
+1058,1064,1069,1074,1077,1080,1082,1082,1082,1080,1077,1074,1069,1064,1057,1049,1041,1032,1022,1011,1000,
+988,976,963,950,937,923,910,896,882,869,856,843,830,818,806,795,785,774,765,756,748,
+741,734,728,722,718,714,710,707,705,703,702,701,700,700,700,700,701,702,702,703,704,
+705,705,706,706,706,706,706,705,705,703,702,701,699,697,695,692,690,687,684,681,678,
+675,672,670,667,664,662,660,658,657,656,655,654,654,655,656,657,659,661,664,667,671,
+675,679,684,689,695,701,707,713,720,727,734,740,747,754,761,768,775,782,788,794,800,
+806,812,817,822,826,830,834,837,840,843,845,847,849,850,851,852,852,853,853,853,852,
+852,852,851,851,850,850,849,849,849,849,849,849,849,850,851,852,853,854,856,858,860,
+863,865,868,871,875,878,882,885,889,893,898,902,906,911,915,919,924,928,933,937,941,
+946,950,954,958,961,965,969,972,975,978,981,984,986,989,991,993,994,996,998,999,1000,
+1001,1002,1003,1003,1004,1004,1004,1005,1005,1004,1004,1004,1004,1003,1003,1002,1002,1001,1000,1000,999,
+998,997,996,996,995,994,993,993,992,991,991,990,989,989,988,988,988,987,987,987,987,
+987,987,988,988,989,989,990,991,992,993,994,995,996,998,999,1001,1003,1005,1007,1009,1012,
+1014,1017,1019,1022,1025,1028,1032,1035,1038,1042,1045,1049,1052,1056,1060,1064,1068,1072,1076,1080,1085,
+1089,1093,1098,1102,1106,1111,1115,1120,1124,1128,1133,1137,1142,1146,1150,1155,1159,1163,1167,1172,1176,
+1180,1184,1188,1192,1196,1200,1204,1208,1212,1216,1219,1223,1227,1231,1234,1238,1242,1245,1249,1252,1256,
+1260,1263,1267,1270,1274,1278,1281,1285,1288,1292,1295,1299,1302,1305,1309,1312,1315,1319,1322,1325,1328,
+1331,1334,1336,1339,1342,1344,1346,1348,1350,1352,1354,1355,1357,1358,1359,1360,1361,1361,1362,1362,1362,
+1362,1362,1362,1362,1361,1361,1360,1360,1359,1358,1357,1357,1356,1355,1355,1354,1353,1353,1352,1352,1352,
+1352,1352,1352,1352,1353,1353,1354,1355,1356,1357,1359,1360,1362,1364,1366,1368,1370,1372,1375,1377,1380,
+1382,1385,1388,1390,1393,1396,1399,1402,1405,1408,1410,1413,1416,1419,1422,1424,1427,1430,1432,1435,1437,
+1440,1442,1445,1447,1450,1452,1455,1457,1460,1462,1465,1467,1470,1473,1475,1478,1481,1484,1487,1490,1493,
+1496,1499,1502,1506,1509,1512,1516,1519,1523,1526,1530,1534,1537,1541,1545,1548,1552,1556,1559,1563,1567,
+1570,1574,1577,1581,1584,1587,1591,1594,1597,1600,1603,1605,1608,1611,1613,1615,1618,1620,1622,1624,1626,
+1627,1629,1630,1632,1633,1635,1636,1637,1638,1638,1639,1640,1640,1641,1641,1641,1642,1642,1642,1642,1642,
+1642,1642,1642,1641,1641,1641,1641,1641,1641,1641,1641,1641,1641,1641,1641,1642,1642,1643,1643,1644,1645,
+1646,1648,1649,1651,1653,1655,1657,1659,1662,1665,1668,1672,1675,1679,1683,1687,1692,1696,1701,1706,1712,
+1717,1723,1729,1735,1741,1747,1753,1759,1766,1772,1779,1786,1792,1799,1805,1812,1819,1825,1831,1838,1844,
+1850,1857,1863,1869,1875,1880,1886,1892,1898,1903,1909,1914,1920,1926,1931,1937,1942,1948,1954,1960,1966,
+1972,1979,1985,1992,1999,2006,2014,2022,2030,2038,2046,2055,2064,2073,2082,2092,2102,2112,2122,2132,2142,
+2153,2163,2173,2184,2194,2204,2214,2223,2233,2242,2250,2258,2266,2273,2280,2286,2292,2296,2301,2304,2307,
+2309,2310,2310,2310,2309,2307,2304,2301,2297,2292,2286,2280,2274,2266,2258,2250,2241,2232,2223,2213,2204,
+2193,2183,2173,2163,2153,2143,2133,2124,2115,2106,2097,2089,2082,2074,2068,2061,2056,2050,2046,2042,2038,
+2035,2033,2031,2030,2029,2029,2029,2029,2030,2032,2034,2036,2038,2041,2044,2047,2050,2054,2058,2061,2065,
+2069,2073,2077,2082,2086,2090,2094,2098,2102,2106,2109,2113,2117,2120,2124,2127,2131,2134,2137,2141,2144,
+2147,2150,2153,2155,2158,2161,2163,2166,2168,2171,2173,2175,2177,2179,2181,2183,2185,2186,2188,2189,2190,
+2191,2192,2193,2194,2195,2195,2196,2196,2196,2196,2196,2196,2196,2196,2196,2196,2196,2197,2197,2197,2197,
+2198,2198,2199,2200,2201,2202,2204,2206,2208,2210,2213,2216,2219,2223,2226,2230,2235,2239,2244,2249,2255,
+2260,2266,2272,2278,2284,2290,2297,2303,2309,2316,2322,2328,2334,2340,2345,2351,2356,2360,2365,2369,2373,
+2376,2379,2381,2383,2385,2386,2387,2387,2387,2386,2385,2384,2382,2379,2377,2374,2371,2367,2363,2359,2355,
+2350,2346,2341,2337,2332,2327,2323,2318,2314,2310,2306,2302,2298,2295,2292,2289,2287,2285,2283,2282,2280,
+2280,2279,2279,2279,2279,2280,2281,2282,2283,2284,2286,2287,2289,2291,2293,2294,2296,2298,2300,2301,2303,
+2304,2305,2306,2361,2363,2364,2365,2366,2367,2368,2368,2368,2368,2368,2367,2366,2365,2364,2363,2361,2360,
+2358,2357,2356,2354,2353,2352,2351,2350,2349,2349,2348,2348,2349,2349,2350,2351,2353,2354,2356,2359,2361,
+2364,2367,2370,2373,2377,2381,2385,2388,2392,2396,2400,2404,2408,2412,2415,2419,2422,2425,2427,2430,2432,
+2434,2435,2437,2437,2438,2438,2438,2438,2437,2436,2434,2433,2431,2429,2426,2424,2421,2418,2414,2411,2408,
+2404,2401,2397,2393,2390,2386,2382,2379,2375,2372,2368,2365,2361,2358,2354,2351,2348,2345,2342,2338,2335,
+2332,2329,2326,2323,2319,2316,2312,2309,2305,2301,2297,2293,2289,2285,2281,2276,2271,2267,2262,2257,2251,
+2246,2241,2235,2230,2224,2219,2213,2207,2201,2196,2190,2184,2178,2173,2167,2162,2156,2151,2145,2140,2135,
+2130,2125,2120,2115,2110,2105,2101,2096,2091,2087,2082,2077,2073,2068,2063,2059,2054,2049,2045,2040,2035,
+2030,2025,2020,2014,2009,2004,1998,1993,1987,1981,1975,1970,1964,1958,1952,1946,1940,1934,1928,1922,1916,
+1910,1904,1898,1892,1886,1880,1874,1869,1863,1857,1852,1847,1841,1836,1831,1826,1821,1816,1812,1807,1802,
+1798,1793,1789,1785,1780,1776,1772,1768,1764,1760,1755,1751,1747,1743,1739,1735,1731,1727,1723,1719,1715,
+1711,1707,1702,1698,1694,1690,1685,1681,1677,1673,1668,1664,1660,1655,1651,1647,1643,1639,1635,1631,1627,
+1623,1619,1616,1612,1609,1605,1602,1599,1596,1594,1591,1588,1586,1584,1582,1580,1578,1576,1574,1573,1571,
+1570,1568,1567,1565,1564,1563,1561,1560,1558,1557,1555,1553,1551,1549,1547,1544,1542,1539,1536,1533,1530,
+1526,1523,1519,1515,1511,1507,1502,1498,1494,1489,1484,1480,1475,1470,1465,1461,1456,1452,1447,1443,1438,
+1434,1430,1427,1423,1419,1416,1413,1410,1407,1404,1402,1399,1397,1395,1393,1391,1389,1387,1386,1384,1382,
+1380,1379,1377,1375,1373,1371,1369,1367,1365,1363,1360,1358,1355,1353,1350,1347,1344,1341,1338,1335,1332,
+1329,1327,1324,1321,1318,1316,1313,1311,1309,1307,1305,1303,1302,1300,1299,1298,1297,1297,1296,1296,1296,
+1295,1295,1295,1295,1295,1295,1295,1295,1295,1294,1294,1293,1292,1291,1289,1288,1286,1284,1281,1278,1275,
+1272,1268,1264,1260,1255,1250,1245,1240,1234,1228,1223,1217,1210,1204,1198,1192,1185,1179,1173,1167,1161,
+1155,1149,1144,1138,1133,1128,1123,1119,1114,1110,1106,1103,1099,1096,1092,1089,1086,1083,1080,1078,1075,
+1072,1070,1067,1065,1062,1059,1056,1054,1051,1048,1045,1041,1038,1035,1031,1028,1024,1021,1017,1013,1010,
+1006,1002,999,996,992,989,986,983,981,978,976,974,972,970,969,968,967,966,966,966,965,
+965,966,966,966,967,967,967,968,968,968,968,967,967,966,965,963,961,959,956,953,949,
+945,941,936,931,925,919,912,905,898,891,883,875,867,859,851,844,836,828,821,814,808,
+802,796,792,787,784,781,779,778,778,779,780,782,786,790,795,801,807,815,823,832,841,
+851,861,872,883,894,906,917,928,940,950,961,971,980,989,997,1005,1011,1017,1021,1025,1027,
+1029,1029,1029,1027,1024,1020,1015,1009,1002,994,985,975,965,954,942,930,917,904,891,877,864,
+851,837,824,811,799,787,775,764,753,743,734,725,718,710,704,698,693,689,685,683,680,
+678,677,676,676,676,677,677,678,679,680,681,682,683,684,684,685,685,685,685,684,683,
+682,680,678,676,673,670,667,664,660,657,653,649,645,641,638,634,631,628,625,623,621,
+619,618,617,616,617,617,619,620,623,626,629,633,638,642,648,654,660,666,673,680,687,
+695,702,710,718,725,733,740,748,755,761,768,774,780,786,791,796,800,805,808,811,814,
+817,819,821,822,823,824,824,824,825,824,824,824,823,823,822,822,821,821,821,820,820,
+821,821,822,822,823,825,826,828,830,832,834,837,840,843,846,850,853,857,861,865,869,
+874,878,882,887,891,895,900,904,908,913,917,921,925,929,932,936,940,943,946,949,952,
+955,958,961,963,966,968,970,972,974,976,978,980,981,983,984,985,986,988,989,990,991,
+992,993,994,994,995,996,996,997,997,998,998,999,999,999,1000,1000,1001,1001,1001,1001,1002,
+1002,1002,1003,1003,1003,1004,1004,1005,1005,1006,1006,1007,1007,1008,1009,1010,1010,1011,1012,1013,1014,
+1015,1016,1018,1019,1020,1021,1023,1024,1025,1027,1028,1029,1031,1032,1034,1035,1037,1038,1040,1041,1043,
+1045,1046,1048,1050,1051,1053,1055,1057,1058,1060,1062,1064,1066,1069,1071,1073,1075,1078,1080,1083,1086,
+1089,1092,1095,1098,1101,1105,1108,1112,1115,1119,1123,1127,1131,1135,1139,1143,1147,1152,1156,1160,1165,
+1169,1174,1178,1182,1187,1191,1196,1200,1204,1209,1213,1217,1221,1225,1229,1233,1237,1241,1244,1248,1252,
+1255,1259,1262,1265,1269,1272,1275,1278,1281,1284,1286,1289,1292,1294,1296,1299,1301,1303,1305,1307,1309,
+1310,1312,1313,1315,1316,1317,1318,1319,1320,1320,1321,1321,1322,1322,1322,1322,1323,1323,1323,1323,1323,
+1323,1322,1322,1322,1322,1323,1323,1323,1323,1323,1324,1324,1325,1326,1327,1328,1329,1330,1332,1333,1335,
+1337,1338,1340,1342,1345,1347,1349,1351,1354,1356,1359,1361,1364,1366,1369,1371,1374,1376,1378,1381,1383,
+1385,1387,1390,1392,1394,1396,1397,1399,1401,1403,1405,1407,1408,1410,1412,1414,1416,1418,1420,1422,1424,
+1426,1429,1431,1434,1437,1439,1442,1446,1449,1452,1456,1460,1464,1468,1472,1476,1481,1485,1490,1494,1499,
+1504,1509,1514,1519,1524,1529,1534,1539,1544,1548,1553,1558,1563,1567,1572,1576,1580,1585,1589,1593,1596,
+1600,1603,1607,1610,1613,1616,1618,1621,1623,1626,1628,1630,1632,1633,1635,1636,1637,1638,1639,1640,1641,
+1642,1642,1643,1643,1643,1644,1644,1644,1644,1644,1643,1643,1643,1643,1643,1642,1642,1642,1642,1641,1641,
+1641,1641,1641,1641,1641,1642,1642,1642,1643,1643,1644,1645,1646,1648,1649,1651,1653,1655,1657,1659,1662,
+1665,1668,1672,1675,1679,1683,1688,1692,1697,1702,1708,1714,1719,1726,1732,1738,1745,1752,1759,1767,1774,
+1782,1789,1797,1805,1813,1822,1830,1838,1846,1854,1863,1871,1879,1887,1895,1903,1910,1918,1926,1933,1940,
+1947,1954,1961,1968,1974,1981,1987,1993,2000,2006,2012,2017,2023,2029,2035,2041,2047,2053,2058,2064,2071,
+2077,2083,2090,2096,2103,2110,2117,2124,2132,2139,2147,2154,2162,2170,2178,2186,2194,2202,2210,2218,2225,
+2233,2240,2247,2253,2260,2265,2271,2276,2280,2284,2288,2291,2293,2294,2295,2295,2295,2293,2291,2289,2285,
+2281,2277,2271,2265,2259,2252,2244,2236,2228,2219,2210,2200,2191,2181,2171,2162,2152,2142,2133,2123,2114,
+2105,2097,2088,2081,2073,2066,2060,2054,2049,2044,2040,2036,2033,2031,2029,2027,2026,2026,2026,2027,2028,
+2029,2031,2033,2036,2038,2042,2045,2049,2052,2056,2061,2065,2069,2074,2079,2083,2088,2093,2098,2103,2108,
+2113,2118,2123,2128,2133,2138,2143,2148,2153,2158,2162,2167,2172,2177,2182,2186,2191,2196,2200,2204,2208,
+2212,2216,2220,2224,2227,2230,2233,2236,2238,2240,2242,2244,2245,2247,2247,2248,2249,2249,2249,2249,2248,
+2248,2247,2246,2246,2245,2244,2243,2242,2241,2240,2239,2239,2239,2239,2239,2239,2240,2241,2243,2245,2247,
+2250,2253,2257,2261,2265,2270,2275,2281,2287,2293,2300,2307,2315,2322,2330,2339,2347,2355,2364,2372,2381,
+2389,2397,2405,2413,2421,2428,2435,2442,2448,2454,2459,2464,2469,2472,2475,2478,2480,2481,2482,2482,2481,
+2480,2478,2476,2473,2470,2466,2461,2456,2451,2446,2440,2434,2427,2421,2414,2408,2401,2394,2387,2381,2374,
+2368,2362,2357,2351,2346,2341,2337,2333,2330,2327,2324,2322,2320,2319,2318,2318,2318,2318,2319,2320,2322,
+2323,2325,2328,2330,2333,2335,2338,2341,2344,2346,2349,2352,2354,2357,2359,2361,2431,2434,2436,2438,2440,
+2441,2442,2443,2443,2444,2444,2443,2443,2442,2441,2440,2439,2438,2436,2435,2433,2432,2430,2429,2428,2426,
+2425,2424,2424,2423,2423,2423,2423,2423,2424,2424,2425,2426,2428,2429,2431,2433,2435,2437,2439,2441,2444,
+2446,2448,2450,2452,2454,2456,2458,2459,2461,2462,2463,2463,2464,2464,2464,2463,2462,2462,2460,2459,2457,
+2455,2453,2451,2448,2446,2443,2440,2437,2434,2431,2428,2425,2422,2419,2416,2413,2411,2408,2405,2403,2400,
+2398,2396,2393,2391,2389,2387,2385,2383,2381,2379,2377,2375,2372,2370,2367,2365,2362,2359,2355,2352,2348,
+2344,2340,2335,2330,2325,2320,2314,2308,2302,2296,2289,2283,2276,2269,2261,2254,2246,2239,2231,2224,2216,
+2209,2201,2194,2186,2179,2172,2165,2158,2152,2145,2139,2133,2127,2121,2115,2110,2104,2099,2094,2089,2084,
+2079,2074,2070,2065,2060,2056,2051,2046,2042,2037,2032,2027,2022,2017,2012,2007,2001,1996,1990,1985,1979,
+1973,1967,1962,1956,1950,1944,1938,1932,1926,1920,1913,1907,1902,1896,1890,1884,1878,1872,1867,1861,1856,
+1850,1845,1840,1835,1829,1824,1819,1814,1810,1805,1800,1795,1791,1786,1781,1777,1772,1768,1763,1759,1754,
+1749,1745,1740,1736,1731,1727,1722,1717,1713,1708,1703,1699,1694,1689,1684,1680,1675,1670,1665,1660,1655,
+1650,1645,1640,1635,1630,1625,1620,1615,1610,1605,1600,1595,1590,1585,1580,1576,1571,1567,1562,1558,1554,
+1550,1546,1543,1539,1536,1532,1529,1527,1524,1521,1519,1517,1515,1513,1511,1509,1507,1506,1504,1503,1501,
+1500,1498,1497,1495,1494,1492,1490,1488,1486,1484,1482,1479,1477,1474,1471,1468,1465,1462,1458,1454,1451,
+1447,1443,1439,1435,1431,1427,1423,1419,1415,1411,1407,1403,1400,1396,1393,1389,1386,1383,1381,1378,1375,
+1373,1371,1369,1367,1365,1363,1362,1360,1358,1357,1355,1353,1352,1350,1348,1346,1343,1341,1339,1336,1333,
+1330,1327,1324,1320,1316,1312,1309,1304,1300,1296,1292,1288,1284,1279,1275,1271,1268,1264,1260,1257,1254,
+1252,1249,1247,1245,1244,1243,1242,1241,1241,1241,1242,1242,1243,1244,1246,1247,1249,1250,1252,1254,1255,
+1257,1258,1260,1261,1262,1263,1263,1263,1263,1262,1261,1260,1258,1256,1253,1250,1247,1243,1239,1235,1230,
+1225,1220,1214,1209,1203,1197,1191,1185,1179,1173,1167,1161,1156,1150,1145,1140,1135,1130,1126,1121,1117,
+1114,1110,1107,1104,1101,1098,1096,1094,1091,1089,1087,1085,1083,1081,1079,1077,1075,1073,1070,1067,1065,
+1061,1058,1055,1051,1047,1043,1038,1034,1029,1024,1019,1014,1008,1003,997,992,986,981,976,970,965,
+960,956,951,947,943,939,936,933,931,928,926,925,924,923,922,922,922,922,923,924,924,
+925,926,927,928,929,930,930,930,930,930,929,928,926,924,922,918,915,911,906,901,895,
+889,883,876,869,861,853,845,836,828,820,811,803,795,787,780,773,767,761,755,751,747,
+744,742,741,741,741,743,745,749,753,759,765,772,780,789,798,808,819,830,841,852,864,
+876,888,899,911,922,932,942,951,960,968,975,981,986,990,992,994,995,994,993,990,986,
+981,975,968,960,951,942,931,920,909,897,884,872,859,846,833,821,808,796,784,773,761,
+751,741,732,723,715,708,701,696,691,686,682,679,677,675,673,672,672,671,671,672,672,
+673,673,674,674,674,675,674,674,674,673,671,670,668,666,663,660,657,653,650,646,641,
+637,633,628,624,619,615,610,606,603,599,596,593,591,589,587,586,586,586,587,588,590,
+592,595,599,603,607,612,618,623,629,636,642,649,656,663,671,678,685,692,699,706,713,
+719,725,731,737,742,747,751,756,759,763,766,769,771,774,776,777,779,780,781,781,782,
+783,783,784,784,785,785,786,786,787,788,789,790,792,793,795,797,799,802,804,807,810,
+813,816,820,823,827,830,834,838,842,846,850,853,857,861,865,869,872,876,879,883,886,
+889,892,895,898,901,904,906,909,911,914,916,918,921,923,925,927,929,931,933,935,937,
+939,941,943,945,947,949,951,953,955,957,959,961,963,965,966,968,970,972,973,975,976,
+978,979,980,982,983,984,985,986,988,989,990,991,992,992,993,994,995,996,997,998,999,
+1000,1001,1002,1003,1004,1006,1007,1008,1009,1011,1012,1013,1015,1016,1017,1019,1020,1021,1022,1024,1025,
+1026,1027,1028,1029,1030,1031,1031,1032,1032,1033,1033,1033,1034,1034,1034,1034,1034,1034,1033,1033,1033,
+1033,1033,1033,1033,1033,1033,1033,1033,1034,1035,1035,1036,1038,1039,1040,1042,1044,1046,1049,1052,1054,
+1058,1061,1064,1068,1072,1076,1080,1085,1089,1094,1099,1103,1108,1113,1118,1123,1128,1133,1138,1143,1147,
+1152,1157,1161,1165,1169,1173,1177,1181,1184,1188,1191,1194,1197,1199,1202,1204,1206,1209,1211,1212,1214,
+1216,1218,1219,1221,1222,1224,1225,1226,1228,1229,1230,1232,1233,1234,1236,1237,1238,1240,1241,1243,1244,
+1246,1247,1249,1251,1252,1254,1256,1257,1259,1261,1263,1265,1266,1268,1270,1273,1275,1277,1279,1281,1284,
+1286,1289,1291,1294,1297,1299,1302,1305,1308,1311,1314,1317,1320,1323,1327,1330,1333,1336,1339,1342,1345,
+1348,1351,1354,1357,1359,1362,1364,1366,1369,1371,1373,1374,1376,1377,1379,1380,1381,1382,1383,1384,1385,
+1386,1387,1387,1388,1389,1390,1391,1392,1393,1394,1395,1397,1398,1400,1402,1404,1406,1409,1411,1414,1417,
+1420,1424,1428,1431,1435,1440,1444,1448,1453,1458,1463,1468,1473,1478,1483,1488,1494,1499,1504,1510,1515,
+1520,1525,1530,1535,1540,1545,1550,1555,1559,1564,1568,1572,1576,1580,1584,1588,1591,1595,1598,1601,1604,
+1607,1609,1612,1614,1616,1618,1620,1622,1623,1625,1626,1627,1628,1629,1630,1631,1632,1632,1633,1633,1634,
+1634,1634,1635,1635,1635,1635,1636,1636,1636,1637,1637,1638,1638,1639,1640,1641,1642,1643,1644,1646,1647,
+1649,1651,1653,1655,1657,1660,1663,1665,1668,1672,1675,1679,1682,1686,1690,1694,1699,1703,1708,1713,1718,
+1723,1728,1734,1739,1745,1751,1757,1764,1770,1777,1784,1790,1797,1805,1812,1819,1827,1834,1842,1850,1858,
+1866,1873,1881,1889,1898,1905,1914,1921,1929,1937,1945,1953,1960,1968,1975,1982,1989,1996,2003,2009,2016,
+2022,2028,2034,2040,2046,2051,2056,2062,2067,2072,2077,2082,2086,2091,2096,2101,2105,2110,2115,2120,2124,
+2129,2134,2139,2144,2150,2155,2160,2165,2171,2176,2181,2187,2192,2197,2202,2207,2212,2217,2221,2225,2229,
+2232,2235,2238,2240,2242,2243,2244,2244,2244,2243,2241,2239,2237,2233,2230,2225,2221,2215,2210,2204,2197,
+2190,2183,2176,2168,2160,2152,2144,2136,2128,2120,2112,2105,2097,2090,2084,2077,2071,2066,2061,2056,2052,
+2048,2045,2042,2040,2038,2037,2036,2036,2037,2037,2038,2040,2042,2044,2047,2050,2053,2056,2060,2064,2068,
+2072,2077,2081,2086,2091,2096,2101,2106,2112,2117,2122,2128,2134,2140,2146,2152,2158,2164,2170,2177,2183,
+2190,2196,2203,2209,2216,2223,2230,2236,2243,2249,2256,2262,2268,2274,2280,2286,2291,2296,2301,2305,2310,
+2313,2317,2320,2323,2326,2328,2330,2331,2332,2333,2334,2334,2335,2335,2334,2334,2334,2333,2333,2332,2332,
+2332,2332,2332,2332,2333,2334,2335,2336,2338,2340,2343,2346,2349,2353,2357,2362,2367,2373,2378,2385,2391,
+2398,2405,2412,2419,2427,2435,2442,2450,2458,2465,2473,2480,2488,2495,2501,2508,2514,2520,2525,2530,2534,
+2538,2541,2544,2546,2548,2549,2550,2550,2549,2548,2546,2544,2541,2538,2534,2530,2526,2521,2515,2510,2504,
+2498,2491,2484,2478,2471,2464,2457,2450,2443,2437,2430,2424,2418,2412,2407,2401,2397,2392,2388,2385,2381,
+2379,2376,2375,2373,2372,2372,2372,2372,2373,2374,2376,2378,2380,2383,2386,2389,2392,2395,2399,2402,2406,
+2409,2413,2416,2420,2423,2426,2429,2431,2507,2509,2511,2512,2513,2514,2514,2515,2515,2514,2514,2513,2512,
+2511,2510,2508,2506,2505,2503,2501,2499,2497,2495,2493,2491,2489,2487,2485,2484,2482,2481,2480,2479,2478,
+2477,2476,2476,2476,2476,2475,2476,2476,2476,2476,2476,2477,2477,2477,2478,2478,2478,2478,2478,2477,2477,
+2476,2475,2474,2473,2472,2471,2469,2467,2465,2463,2461,2458,2456,2453,2450,2447,2444,2442,2439,2436,2433,
+2430,2428,2425,2423,2420,2418,2416,2414,2412,2410,2409,2407,2406,2404,2403,2402,2401,2400,2399,2398,2396,
+2395,2394,2392,2391,2389,2387,2384,2382,2379,2376,2372,2368,2364,2359,2354,2349,2343,2337,2331,2324,2317,
+2310,2302,2294,2286,2278,2270,2261,2252,2243,2235,2226,2217,2208,2200,2191,2183,2175,2167,2159,2152,2144,
+2137,2131,2124,2118,2112,2106,2100,2095,2090,2085,2080,2075,2071,2066,2062,2058,2053,2049,2045,2040,2036,
+2032,2027,2023,2018,2013,2009,2004,1999,1994,1989,1983,1978,1973,1967,1962,1957,1951,1946,1940,1934,1929,
+1923,1918,1913,1907,1902,1897,1892,1887,1882,1877,1872,1867,1862,1857,1852,1848,1843,1838,1833,1829,1824,
+1819,1814,1809,1804,1799,1794,1789,1784,1779,1774,1769,1763,1758,1752,1747,1741,1736,1730,1725,1719,1714,
+1708,1703,1697,1692,1686,1681,1675,1670,1664,1659,1654,1648,1643,1638,1632,1627,1621,1616,1610,1605,1600,
+1594,1589,1583,1578,1572,1566,1561,1555,1550,1544,1539,1533,1528,1523,1517,1512,1507,1502,1497,1493,1488,
+1484,1480,1475,1471,1468,1464,1461,1457,1454,1451,1448,1445,1442,1440,1437,1435,1432,1430,1427,1425,1422,
+1420,1417,1415,1412,1409,1406,1403,1400,1397,1393,1390,1387,1383,1379,1376,1372,1368,1365,1361,1358,1354,
+1351,1347,1344,1341,1338,1335,1332,1330,1328,1326,1324,1322,1321,1319,1318,1317,1316,1315,1315,1314,1313,
+1313,1312,1311,1311,1310,1309,1308,1306,1305,1303,1301,1299,1296,1293,1290,1287,1283,1280,1275,1271,1267,
+1262,1257,1253,1248,1243,1238,1233,1228,1223,1219,1214,1210,1206,1203,1199,1196,1194,1191,1190,1188,1187,
+1186,1186,1186,1186,1187,1188,1189,1191,1192,1194,1196,1198,1200,1203,1205,1207,1208,1210,1212,1213,1214,
+1215,1215,1215,1215,1214,1213,1212,1211,1209,1206,1204,1201,1198,1194,1191,1187,1183,1178,1174,1170,1165,
+1161,1157,1152,1148,1144,1140,1136,1132,1128,1125,1121,1118,1115,1113,1110,1108,1106,1104,1102,1100,1098,
+1097,1095,1094,1092,1091,1089,1087,1086,1084,1082,1079,1077,1074,1071,1068,1065,1061,1057,1053,1048,1043,
+1038,1033,1027,1021,1015,1009,1003,996,989,983,976,969,962,956,949,942,936,930,924,918,913,
+908,903,898,894,891,887,885,882,880,878,877,876,875,874,874,874,874,875,875,875,876,
+876,877,877,877,876,876,875,873,872,870,867,864,860,856,852,847,842,836,830,823,816,
+809,801,794,786,778,770,763,755,748,741,735,729,723,719,714,711,709,707,706,706,707,
+709,712,716,721,726,733,740,748,757,767,777,788,799,810,821,833,845,856,867,878,889,
+899,909,917,925,933,939,944,949,952,954,955,955,954,952,949,945,940,934,927,919,910,
+901,892,881,871,860,849,838,826,815,804,793,783,772,763,753,744,736,728,721,715,709,
+703,699,695,691,688,685,683,681,680,678,677,676,676,675,674,674,673,672,671,670,668,
+666,664,662,659,656,653,649,645,641,637,633,628,623,618,614,609,604,600,595,591,587,
+583,580,577,574,572,570,569,569,568,569,569,571,573,575,578,581,584,588,593,597,602,
+608,613,619,624,630,636,642,647,653,659,664,669,674,679,684,688,692,696,699,703,706,
+708,711,713,715,717,718,720,721,722,723,724,725,726,727,728,729,731,732,734,735,737,
+739,741,743,746,749,751,755,758,761,765,768,772,776,780,784,788,792,796,800,804,808,
+812,816,820,823,827,830,834,837,840,843,846,849,852,855,857,860,862,865,867,870,872,
+874,877,879,881,884,886,888,891,893,896,899,901,904,907,909,912,915,917,920,923,926,
+928,931,933,936,938,940,943,945,947,949,951,952,954,955,957,958,959,960,961,962,962,
+963,964,964,965,965,965,966,966,967,967,967,968,968,969,969,970,971,972,973,973,974,
+976,977,978,979,980,982,983,984,986,987,989,990,991,993,994,995,996,997,998,999,999,
+1000,1000,1000,1001,1001,1001,1000,1000,1000,999,999,998,997,997,996,995,995,994,993,993,993,
+992,992,992,992,993,994,994,996,997,998,1000,1002,1005,1007,1010,1014,1017,1020,1024,1028,1032,
+1037,1041,1046,1050,1055,1060,1065,1069,1074,1079,1083,1088,1092,1096,1100,1104,1108,1111,1114,1117,1120,
+1122,1124,1126,1128,1130,1131,1132,1133,1134,1135,1136,1136,1137,1137,1137,1138,1138,1138,1139,1139,1140,
+1140,1141,1142,1143,1144,1145,1146,1147,1149,1151,1152,1154,1156,1159,1161,1163,1166,1168,1171,1174,1177,
+1180,1183,1186,1189,1192,1195,1198,1202,1205,1209,1212,1216,1219,1223,1227,1230,1234,1238,1242,1246,1250,
+1254,1258,1262,1266,1270,1274,1279,1283,1287,1291,1295,1299,1303,1307,1311,1314,1318,1321,1325,1328,1331,
+1334,1337,1340,1343,1345,1347,1350,1352,1354,1356,1358,1360,1361,1363,1365,1367,1368,1370,1372,1374,1376,
+1378,1380,1382,1384,1387,1389,1392,1394,1397,1400,1403,1407,1410,1413,1417,1420,1424,1428,1432,1435,1439,
+1443,1447,1451,1455,1459,1463,1467,1471,1475,1479,1482,1486,1490,1494,1497,1501,1505,1509,1512,1516,1520,
+1523,1527,1530,1534,1538,1541,1545,1549,1552,1556,1559,1563,1566,1570,1573,1576,1579,1583,1586,1589,1591,
+1594,1597,1599,1601,1604,1606,1607,1609,1611,1613,1614,1615,1617,1618,1619,1620,1621,1622,1623,1624,1625,
+1626,1627,1628,1630,1631,1633,1635,1636,1639,1641,1643,1646,1649,1652,1655,1658,1662,1666,1670,1674,1679,
+1683,1688,1693,1698,1703,1708,1713,1719,1724,1729,1735,1740,1746,1751,1757,1762,1768,1773,1779,1784,1789,
+1795,1800,1805,1811,1816,1821,1827,1832,1838,1843,1848,1854,1860,1865,1871,1877,1883,1889,1895,1901,1907,
+1913,1919,1926,1932,1938,1945,1951,1957,1964,1970,1977,1983,1989,1995,2001,2007,2013,2018,2024,2029,2035,
+2040,2045,2050,2054,2059,2063,2068,2072,2076,2080,2084,2088,2092,2096,2100,2104,2108,2112,2115,2119,2123,
+2127,2131,2135,2139,2143,2147,2151,2155,2159,2163,2166,2170,2173,2176,2179,2182,2185,2187,2188,2190,2191,
+2192,2192,2192,2191,2190,2188,2186,2184,2181,2178,2174,2170,2166,2161,2157,2151,2146,2141,2135,2130,2124,
+2119,2113,2108,2103,2098,2094,2090,2086,2082,2079,2076,2074,2072,2071,2070,2069,2069,2070,2070,2072,2073,
+2075,2078,2080,2083,2086,2090,2093,2097,2101,2105,2110,2114,2119,2123,2128,2133,2138,2143,2148,2153,2158,
+2163,2169,2174,2180,2186,2192,2198,2204,2211,2217,2224,2231,2238,2246,2253,2261,2268,2276,2284,2292,2300,
+2308,2316,2324,2332,2339,2347,2354,2361,2368,2375,2381,2387,2393,2399,2404,2408,2413,2417,2421,2424,2427,
+2430,2433,2435,2437,2440,2442,2443,2445,2447,2449,2451,2453,2455,2458,2460,2463,2466,2470,2473,2477,2482,
+2486,2491,2496,2502,2507,2513,2520,2526,2532,2539,2545,2552,2559,2565,2571,2578,2584,2590,2595,2600,2605,
+2610,2614,2618,2621,2624,2626,2628,2629,2630,2630,2630,2629,2628,2626,2624,2621,2618,2614,2611,2606,2602,
+2597,2592,2587,2581,2576,2570,2564,2558,2552,2546,2540,2534,2528,2522,2517,2511,2506,2500,2495,2490,2485,
+2481,2477,2472,2469,2465,2462,2459,2456,2454,2452,2450,2449,2448,2447,2447,2447,2447,2448,2448,2450,2451,
+2453,2455,2457,2459,2462,2464,2467,2470,2473,2476,2480,2483,2486,2489,2492,2495,2498,2500,2503,2505,2507,
+2581,2582,2583,2583,2583,2583,2582,2581,2580,2579,2577,2575,2573,2571,2569,2566,2564,2561,2558,2555,2552,
+2549,2546,2543,2540,2537,2534,2532,2529,2526,2524,2522,2520,2518,2516,2515,2513,2512,2511,2509,2508,2507,
+2506,2505,2505,2504,2503,2502,2501,2500,2499,2498,2496,2495,2494,2492,2490,2488,2486,2484,2482,2480,2477,
+2475,2472,2469,2466,2463,2460,2457,2454,2451,2448,2445,2442,2439,2436,2433,2430,2428,2425,2423,2420,2418,
+2416,2414,2412,2410,2408,2406,2404,2403,2401,2399,2398,2396,2394,2392,2390,2388,2386,2383,2381,2378,2375,
+2371,2368,2364,2359,2355,2350,2345,2339,2334,2327,2321,2314,2307,2300,2293,2285,2277,2269,2261,2253,2245,
+2237,2229,2221,2213,2205,2197,2189,2182,2174,2167,2160,2153,2147,2141,2135,2129,2123,2118,2113,2108,2103,
+2098,2094,2089,2085,2081,2076,2072,2068,2063,2059,2054,2050,2045,2040,2035,2030,2025,2020,2014,2009,2003,
+1998,1992,1986,1980,1974,1968,1963,1957,1951,1945,1939,1933,1928,1922,1917,1911,1906,1901,1896,1891,1886,
+1881,1876,1871,1867,1862,1857,1853,1848,1843,1838,1833,1829,1823,1818,1813,1808,1802,1797,1791,1785,1779,
+1773,1767,1761,1755,1749,1742,1736,1730,1723,1717,1710,1704,1698,1692,1686,1679,1673,1668,1662,1656,1651,
+1645,1640,1634,1629,1624,1619,1614,1609,1604,1599,1594,1588,1583,1578,1573,1568,1562,1557,1551,1546,1540,
+1534,1528,1522,1516,1510,1504,1498,1492,1486,1480,1474,1468,1462,1456,1451,1445,1440,1434,1429,1424,1419,
+1414,1410,1405,1401,1396,1392,1388,1384,1380,1377,1373,1369,1366,1362,1358,1354,1351,1347,1343,1339,1335,
+1331,1327,1323,1319,1315,1311,1306,1302,1298,1293,1289,1285,1281,1277,1273,1269,1266,1262,1259,1256,1254,
+1251,1249,1247,1245,1243,1242,1241,1240,1239,1239,1238,1238,1238,1238,1238,1238,1238,1238,1238,1237,1237,
+1237,1236,1235,1234,1233,1232,1230,1228,1226,1223,1220,1217,1214,1211,1207,1203,1200,1196,1192,1187,1183,
+1179,1175,1171,1167,1164,1160,1157,1153,1150,1148,1145,1143,1141,1140,1138,1137,1136,1136,1135,1135,1135,
+1135,1135,1136,1136,1137,1137,1138,1138,1139,1139,1140,1140,1140,1140,1140,1140,1140,1139,1138,1137,1136,
+1135,1134,1133,1131,1130,1128,1126,1124,1122,1121,1119,1117,1115,1113,1111,1109,1107,1105,1103,1102,1100,
+1098,1097,1095,1094,1092,1091,1089,1088,1087,1085,1084,1083,1082,1080,1079,1078,1077,1075,1074,1072,1071,
+1070,1068,1066,1064,1063,1061,1058,1056,1054,1051,1048,1045,1042,1039,1035,1031,1027,1022,1017,1012,1007,
+1002,996,990,983,977,970,963,956,949,942,935,927,920,913,905,898,892,885,878,872,866,
+861,856,851,847,843,839,836,833,831,829,827,826,825,824,824,823,823,823,823,823,823,
+823,822,821,820,819,818,815,813,810,807,803,799,794,789,783,778,771,765,758,751,744,
+736,729,722,715,709,702,696,691,686,681,678,675,673,672,671,672,673,676,679,683,688,
+694,701,709,717,726,736,746,756,767,778,789,800,811,822,832,842,852,861,869,877,884,
+890,895,899,902,904,905,905,905,903,900,896,892,887,881,874,867,859,851,843,834,825,
+816,807,798,790,781,773,765,757,750,743,736,730,724,719,714,710,706,703,699,696,694,
+691,689,687,684,682,680,678,676,674,671,669,666,663,660,657,653,649,645,641,637,632,
+628,623,619,614,609,605,600,596,592,588,584,580,577,575,572,570,568,567,566,566,566,
+566,567,568,570,572,574,577,580,583,587,590,594,598,602,606,610,615,619,623,627,631,
+635,638,642,645,648,651,654,656,658,661,662,664,665,667,668,669,670,671,671,672,672,
+673,674,674,675,676,677,678,679,680,682,684,685,687,690,692,695,697,700,704,707,710,
+714,717,721,725,729,733,737,741,745,749,753,757,761,765,768,772,776,779,783,786,789,
+793,796,799,802,805,808,811,814,817,820,823,827,830,833,836,839,843,846,850,853,857,
+860,864,867,871,875,878,882,886,889,893,896,900,903,906,909,912,915,918,920,922,925,
+927,928,930,932,933,934,935,936,937,938,938,938,939,939,939,939,938,938,938,938,937,
+937,936,936,936,935,935,935,934,934,934,934,934,934,934,934,934,935,935,936,936,937,
+937,938,939,939,940,941,942,943,944,945,946,947,947,948,949,950,951,951,952,952,953,
+953,953,954,954,954,955,955,955,955,955,955,956,956,956,956,957,957,958,959,960,961,
+962,963,965,967,968,970,973,975,977,980,983,986,989,992,996,999,1002,1006,1009,1012,1016,
+1019,1022,1026,1029,1032,1034,1037,1039,1042,1044,1046,1047,1049,1050,1051,1052,1053,1054,1055,1055,1055,
+1056,1056,1056,1056,1056,1056,1056,1056,1057,1057,1057,1058,1059,1060,1061,1062,1063,1064,1066,1068,1069,
+1072,1074,1076,1078,1081,1083,1086,1089,1091,1094,1097,1100,1103,1106,1108,1111,1114,1117,1120,1123,1125,
+1128,1131,1134,1137,1139,1142,1145,1148,1151,1155,1158,1161,1165,1168,1172,1176,1180,1184,1188,1192,1196,
+1201,1206,1210,1215,1220,1225,1230,1235,1239,1244,1249,1254,1259,1264,1269,1274,1279,1284,1289,1293,1298,
+1303,1307,1312,1316,1321,1325,1330,1334,1339,1343,1348,1352,1357,1361,1366,1370,1375,1379,1384,1388,1393,
+1397,1401,1406,1410,1414,1418,1421,1425,1428,1432,1435,1437,1440,1443,1445,1447,1449,1451,1452,1454,1455,
+1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1467,1468,1470,1471,1473,1476,1478,1481,1483,1486,1490,
+1493,1497,1501,1505,1509,1513,1517,1522,1526,1531,1535,1540,1544,1549,1553,1557,1561,1565,1568,1572,1575,
+1578,1581,1584,1586,1589,1591,1593,1594,1596,1598,1599,1600,1602,1603,1605,1606,1607,1609,1611,1613,1615,
+1617,1619,1622,1625,1628,1632,1636,1640,1644,1648,1653,1658,1664,1669,1675,1681,1687,1693,1700,1706,1712,
+1719,1725,1732,1738,1744,1751,1757,1763,1768,1774,1780,1785,1790,1795,1800,1804,1808,1813,1817,1820,1824,
+1828,1831,1835,1838,1841,1845,1848,1851,1855,1858,1862,1865,1869,1873,1877,1881,1885,1890,1895,1899,1904,
+1909,1915,1920,1925,1931,1937,1942,1948,1954,1960,1965,1971,1977,1982,1988,1993,1999,2004,2009,2014,2019,
+2024,2029,2034,2038,2043,2047,2052,2056,2060,2064,2069,2073,2077,2081,2086,2090,2094,2099,2103,2107,2112,
+2116,2121,2125,2130,2134,2138,2143,2147,2151,2154,2158,2161,2164,2167,2169,2172,2173,2175,2176,2176,2177,
+2177,2176,2175,2174,2173,2171,2169,2167,2164,2162,2159,2156,2153,2151,2148,2145,2143,2141,2139,2137,2136,
+2135,2134,2134,2134,2134,2135,2136,2138,2140,2142,2145,2148,2151,2155,2159,2163,2167,2172,2176,2181,2185,
+2190,2195,2200,2204,2209,2214,2218,2223,2228,2232,2237,2241,2246,2251,2255,2260,2265,2271,2276,2281,2287,
+2293,2299,2306,2312,2319,2327,2334,2342,2349,2357,2366,2374,2382,2391,2399,2408,2416,2425,2433,2441,2449,
+2456,2464,2471,2478,2485,2491,2497,2502,2508,2513,2518,2522,2527,2531,2535,2539,2542,2546,2550,2554,2558,
+2562,2566,2570,2575,2580,2585,2590,2596,2602,2608,2614,2621,2628,2635,2643,2650,2658,2666,2673,2681,2688,
+2696,2703,2710,2716,2722,2728,2733,2737,2741,2744,2747,2748,2750,2750,2749,2748,2746,2744,2740,2736,2732,
+2726,2721,2714,2707,2700,2693,2685,2677,2668,2660,2651,2643,2634,2626,2617,2609,2601,2594,2586,2579,2573,
+2566,2560,2555,2550,2545,2541,2537,2533,2530,2527,2524,2522,2520,2519,2518,2517,2516,2516,2516,2516,2516,
+2516,2517,2518,2519,2520,2521,2523,2524,2526,2528,2530,2532,2534,2536,2539,2541,2544,2546,2549,2552,2554,
+2557,2560,2562,2565,2567,2570,2572,2574,2576,2577,2579,2580,2581,2650,2651,2651,2651,2650,2649,2648,2646,
+2644,2642,2639,2636,2633,2630,2626,2622,2618,2614,2609,2605,2601,2596,2592,2588,2584,2580,2576,2572,2568,
+2565,2562,2559,2556,2553,2551,2548,2546,2544,2542,2541,2539,2538,2536,2535,2534,2532,2531,2530,2528,2527,
+2525,2524,2522,2521,2519,2517,2515,2513,2510,2508,2506,2503,2500,2498,2495,2492,2489,2486,2482,2479,2476,
+2472,2469,2465,2462,2458,2455,2451,2448,2444,2440,2437,2433,2429,2426,2422,2419,2415,2412,2408,2405,2401,
+2398,2394,2391,2387,2384,2380,2376,2373,2369,2365,2362,2358,2354,2350,2345,2341,2337,2332,2327,2322,2317,
+2312,2307,2301,2296,2290,2284,2278,2272,2266,2260,2253,2247,2241,2234,2228,2222,2215,2209,2203,2197,2191,
+2185,2180,2174,2169,2164,2158,2153,2148,2144,2139,2134,2130,2125,2120,2116,2111,2106,2102,2097,2092,2087,
+2082,2077,2071,2066,2060,2054,2048,2042,2035,2029,2022,2015,2008,2001,1994,1987,1980,1973,1966,1959,1952,
+1945,1938,1931,1924,1918,1911,1905,1899,1893,1887,1881,1875,1870,1864,1859,1853,1848,1843,1837,1832,1827,
+1821,1816,1810,1805,1799,1793,1787,1781,1775,1769,1763,1756,1750,1743,1736,1729,1723,1716,1709,1702,1695,
+1688,1682,1675,1669,1662,1656,1650,1644,1638,1632,1626,1621,1616,1610,1605,1600,1595,1591,1586,1581,1577,
+1572,1568,1563,1558,1554,1549,1544,1539,1534,1529,1524,1519,1514,1508,1502,1497,1491,1485,1479,1473,1467,
+1461,1455,1449,1442,1436,1430,1424,1418,1412,1406,1401,1395,1390,1384,1379,1374,1369,1364,1359,1354,1349,
+1345,1340,1336,1331,1327,1322,1318,1314,1309,1305,1300,1296,1291,1286,1281,1277,1272,1267,1262,1257,1252,
+1247,1242,1237,1231,1226,1221,1217,1212,1207,1202,1198,1194,1189,1185,1182,1178,1175,1172,1169,1166,1164,
+1162,1160,1158,1157,1155,1154,1153,1152,1151,1151,1150,1150,1149,1149,1148,1148,1147,1146,1146,1145,1144,
+1143,1142,1141,1140,1138,1137,1135,1133,1131,1129,1127,1125,1123,1121,1119,1117,1115,1113,1111,1109,1107,
+1105,1103,1101,1099,1097,1096,1094,1092,1091,1089,1088,1087,1085,1084,1082,1081,1079,1078,1076,1075,1073,
+1071,1070,1068,1066,1065,1063,1061,1060,1058,1057,1056,1054,1053,1052,1051,1050,1050,1049,1049,1048,1048,
+1048,1048,1049,1049,1049,1050,1050,1051,1051,1051,1052,1052,1052,1052,1052,1052,1052,1051,1050,1049,1048,
+1047,1046,1045,1043,1041,1040,1038,1036,1035,1033,1032,1030,1029,1028,1026,1025,1025,1024,1024,1023,1023,
+1023,1023,1023,1023,1023,1023,1023,1022,1022,1021,1020,1018,1016,1014,1011,1008,1004,1000,995,990,984,
+977,970,963,955,947,938,929,920,910,901,891,882,872,863,854,845,837,829,822,815,809,
+803,798,793,789,786,784,782,780,779,778,778,778,779,779,780,781,781,782,782,782,782,
+782,781,779,777,774,771,768,763,759,753,748,741,735,727,720,713,705,697,689,682,675,
+667,661,655,649,644,640,637,634,633,632,633,634,636,640,644,650,656,663,671,680,689,
+699,710,721,732,743,755,766,777,788,799,809,819,827,836,843,850,855,860,864,867,869,
+870,870,869,867,865,861,857,852,847,841,835,828,822,815,808,800,793,786,779,772,766,
+760,754,748,742,737,732,728,724,720,716,712,709,705,702,699,696,692,689,686,682,679,
+675,671,667,663,658,654,649,644,639,634,629,623,618,613,608,603,598,593,589,585,581,
+577,573,570,568,565,563,562,561,560,559,559,560,560,561,562,564,566,568,570,572,575,
+578,581,584,587,590,593,596,599,602,604,607,610,613,615,617,619,621,623,625,627,628,
+629,630,631,632,633,634,634,635,635,636,636,637,637,637,638,638,639,640,640,641,642,
+643,645,646,648,650,652,654,656,658,661,664,667,670,673,676,679,682,686,689,693,697,
+700,704,707,711,714,718,722,725,729,732,735,739,742,746,749,752,756,759,763,766,769,
+773,776,780,784,787,791,795,799,803,807,811,814,818,822,826,830,834,838,842,846,849,
+853,857,860,863,867,870,873,876,879,881,884,886,889,891,893,895,897,899,900,902,903,
+905,906,907,908,909,910,911,912,913,913,914,914,914,914,914,914,914,913,913,912,912,
+911,910,909,908,907,906,905,903,902,901,900,898,897,896,895,894,893,892,892,891,891,
+891,890,890,891,891,891,892,893,894,895,896,897,898,900,901,903,904,906,908,909,911,
+913,915,916,918,920,922,923,925,927,928,930,931,933,934,936,937,939,940,941,943,944,
+946,947,948,950,951,952,953,955,956,957,958,959,960,961,962,963,964,965,966,966,967,
+967,968,968,969,969,969,970,970,971,971,971,972,972,972,973,974,974,975,976,977,978,
+980,981,983,985,987,989,991,993,996,999,1001,1004,1007,1010,1013,1016,1019,1022,1025,1028,1030,
+1033,1036,1038,1041,1043,1045,1048,1050,1051,1053,1055,1056,1058,1059,1061,1062,1063,1065,1066,1068,1070,
+1071,1073,1075,1077,1080,1083,1085,1088,1092,1095,1099,1103,1108,1112,1117,1122,1127,1133,1138,1144,1150,
+1156,1162,1169,1175,1181,1188,1194,1201,1208,1214,1221,1227,1234,1240,1247,1254,1260,1267,1273,1280,1287,
+1293,1300,1306,1313,1319,1326,1332,1339,1345,1351,1357,1363,1369,1375,1380,1385,1390,1395,1399,1403,1407,
+1410,1413,1416,1418,1420,1421,1423,1423,1424,1424,1424,1423,1423,1422,1421,1420,1418,1417,1416,1415,1414,
+1413,1413,1412,1412,1412,1413,1414,1415,1417,1419,1421,1424,1427,1431,1434,1439,1443,1448,1453,1458,1464,
+1469,1475,1481,1486,1492,1498,1503,1509,1514,1519,1524,1529,1533,1537,1541,1545,1548,1551,1554,1557,1559,
+1561,1563,1565,1566,1568,1569,1570,1572,1573,1574,1575,1577,1578,1580,1582,1584,1587,1589,1592,1596,1599,
+1603,1607,1612,1616,1622,1627,1633,1639,1645,1651,1658,1665,1672,1679,1687,1694,1701,1709,1716,1723,1730,
+1738,1745,1752,1758,1764,1771,1777,1782,1788,1793,1798,1803,1807,1811,1815,1819,1822,1825,1829,1832,1834,
+1837,1840,1843,1846,1848,1851,1854,1857,1860,1863,1867,1871,1874,1878,1883,1887,1892,1897,1902,1907,1912,
+1918,1923,1929,1935,1941,1947,1953,1959,1965,1971,1977,1983,1989,1994,2000,2006,2011,2016,2022,2027,2032,
+2037,2042,2047,2052,2057,2062,2067,2072,2077,2082,2088,2093,2098,2104,2110,2115,2121,2127,2133,2139,2145,
+2151,2157,2163,2169,2175,2180,2186,2191,2196,2200,2205,2209,2212,2215,2218,2221,2223,2225,2227,2228,2229,
+2230,2230,2230,2230,2230,2230,2230,2230,2231,2231,2231,2232,2232,2233,2235,2236,2238,2241,2243,2246,2249,
+2253,2257,2261,2265,2269,2274,2279,2283,2288,2293,2298,2303,2307,2312,2316,2321,2325,2329,2333,2336,2340,
+2343,2346,2350,2353,2356,2359,2362,2366,2369,2373,2377,2381,2385,2390,2395,2400,2406,2412,2418,2425,2432,
+2439,2447,2455,2463,2471,2479,2488,2496,2505,2513,2522,2530,2538,2545,2553,2560,2567,2573,2580,2585,2591,
+2596,2601,2606,2610,2614,2618,2622,2625,2629,2632,2636,2640,2643,2647,2651,2656,2660,2665,2670,2676,2681,
+2687,2694,2700,2707,2714,2721,2729,2736,2743,2751,2758,2765,2771,2778,2784,2789,2794,2799,2803,2806,2808,
+2810,2811,2811,2810,2808,2806,2802,2798,2794,2788,2782,2775,2768,2760,2751,2742,2733,2724,2714,2704,2695,
+2685,2675,2666,2657,2648,2639,2631,2623,2616,2609,2603,2597,2591,2587,2582,2579,2575,2573,2570,2568,2567,
+2566,2565,2565,2565,2565,2565,2566,2567,2568,2569,2570,2572,2573,2575,2577,2578,2580,2582,2584,2586,2588,
+2591,2593,2595,2598,2600,2603,2605,2608,2611,2614,2617,2620,2623,2626,2628,2631,2634,2637,2639,2641,2644,
+2645,2647,2649,2650,2650,2706,2707,2707,2706,2705,2704,2702,2699,2697,2693,2689,2685,2681,2676,2671,2666,
+2660,2654,2649,2643,2637,2632,2626,2621,2615,2610,2605,2601,2596,2592,2589,2585,2582,2579,2576,2574,2572,
+2570,2568,2566,2564,2563,2561,2560,2558,2557,2555,2554,2552,2551,2549,2547,2545,2543,2541,2538,2536,2533,
+2530,2528,2525,2522,2519,2516,2512,2509,2506,2503,2499,2496,2492,2489,2485,2481,2477,2474,2470,2466,2462,
+2458,2454,2450,2445,2441,2437,2432,2428,2423,2418,2414,2409,2404,2400,2395,2390,2385,2381,2376,2371,2367,
+2362,2357,2353,2348,2344,2339,2335,2330,2325,2321,2316,2312,2307,2303,2298,2293,2288,2283,2279,2274,2269,
+2263,2258,2253,2248,2243,2237,2232,2227,2221,2216,2211,2205,2200,2195,2189,2184,2179,2174,2169,2164,2159,
+2153,2148,2143,2138,2133,2128,2122,2117,2111,2106,2100,2094,2088,2082,2076,2070,2063,2057,2050,2043,2036,
+2029,2022,2014,2007,2000,1992,1985,1977,1970,1962,1955,1947,1940,1933,1926,1918,1911,1904,1898,1891,1884,
+1878,1871,1864,1858,1852,1846,1839,1833,1827,1821,1814,1808,1802,1796,1789,1783,1776,1770,1763,1757,1750,
+1743,1737,1730,1723,1716,1709,1702,1696,1689,1682,1675,1669,1662,1655,1649,1642,1636,1630,1624,1618,1612,
+1606,1600,1595,1589,1584,1578,1573,1568,1563,1558,1553,1548,1543,1538,1532,1527,1522,1517,1512,1507,1502,
+1496,1491,1486,1480,1475,1469,1463,1458,1452,1446,1441,1435,1429,1424,1418,1412,1407,1401,1395,1390,1384,
+1379,1373,1368,1363,1357,1352,1347,1342,1337,1332,1327,1322,1317,1312,1307,1302,1297,1293,1288,1283,1278,
+1273,1268,1263,1259,1254,1249,1244,1239,1234,1229,1224,1218,1213,1208,1203,1198,1192,1187,1182,1177,1171,
+1166,1161,1156,1151,1146,1141,1136,1131,1126,1121,1117,1112,1108,1104,1100,1096,1093,1089,1086,1083,1080,
+1077,1074,1072,1069,1067,1065,1063,1062,1060,1059,1057,1056,1055,1054,1053,1052,1051,1050,1049,1048,1048,
+1047,1046,1046,1045,1045,1044,1044,1043,1043,1043,1042,1042,1042,1041,1041,1041,1040,1040,1039,1038,1038,
+1037,1036,1035,1033,1032,1030,1029,1027,1025,1023,1021,1018,1016,1013,1011,1008,1005,1003,1000,998,995,
+993,991,989,987,986,985,984,984,983,983,984,984,985,986,988,990,991,993,995,997,999,
+1001,1002,1004,1005,1006,1007,1007,1008,1007,1007,1006,1005,1003,1001,999,997,994,991,988,986,983,
+980,977,975,973,972,970,969,969,969,969,970,972,974,976,978,982,985,988,992,996,999,
+1003,1006,1009,1011,1013,1015,1015,1015,1014,1013,1010,1006,1002,996,990,983,974,965,955,945,934,
+922,910,898,885,873,860,848,836,824,813,802,792,783,774,766,759,753,748,744,740,738,
+736,735,734,734,735,736,737,739,740,742,744,745,746,747,747,747,746,745,743,741,737,
+733,729,724,718,711,705,697,690,682,673,665,657,649,641,634,626,620,614,609,604,601,
+599,597,597,597,599,602,606,611,618,625,633,642,652,663,674,686,698,711,723,736,749,
+761,773,785,796,806,816,825,833,840,846,851,855,857,859,860,860,858,856,853,850,845,
+840,835,829,823,816,809,802,796,789,782,776,769,763,758,752,747,742,737,733,729,725,
+721,717,714,710,707,703,700,696,692,688,684,679,675,670,664,659,653,647,641,635,628,
+622,615,609,602,596,589,583,577,571,566,561,556,552,548,544,541,538,536,534,532,531,
+530,530,530,530,531,531,532,534,535,537,538,540,542,544,546,548,551,553,555,557,559,
+561,563,566,568,570,571,573,575,577,579,580,582,584,585,586,588,589,590,591,593,594,
+595,595,596,597,598,599,600,601,602,603,604,605,606,607,608,610,612,613,615,617,619,
+622,624,627,630,632,635,639,642,645,648,652,655,659,662,666,670,673,677,680,684,687,
+691,694,698,701,704,708,711,714,718,721,724,727,730,734,737,740,743,747,750,753,756,
+760,763,766,769,772,775,778,781,784,787,790,793,795,798,801,803,805,808,810,812,815,
+817,819,822,824,826,829,831,834,836,839,841,844,847,850,852,855,858,861,864,867,869,
+872,875,877,879,881,883,885,886,887,888,888,888,888,887,887,886,884,883,881,878,876,
+874,871,868,866,863,860,857,854,852,849,847,845,843,841,839,838,837,837,836,836,837,
+837,838,839,841,843,845,847,849,852,855,858,861,864,867,870,873,877,880,883,886,889,
+892,895,897,900,902,904,906,908,909,911,912,913,913,914,914,914,914,914,913,913,912,
+911,910,909,908,907,905,904,902,901,899,898,897,895,894,893,892,891,890,889,889,888,
+888,888,888,889,889,890,891,892,894,895,897,899,901,903,906,909,912,915,918,921,924,
+928,931,935,938,942,946,949,952,956,959,962,965,968,971,974,976,978,981,983,984,986,
+987,989,990,991,992,993,994,995,996,997,998,999,1000,1002,1003,1005,1007,1010,1012,1015,1018,
+1022,1026,1030,1034,1038,1043,1048,1054,1059,1065,1071,1077,1083,1089,1095,1102,1108,1115,1121,1128,1134,
+1141,1147,1153,1160,1166,1172,1178,1185,1191,1197,1204,1210,1216,1223,1229,1235,1242,1248,1255,1262,1268,
+1275,1281,1287,1294,1300,1306,1312,1318,1323,1328,1333,1338,1342,1346,1350,1353,1356,1358,1360,1362,1363,
+1365,1365,1366,1366,1366,1366,1365,1365,1365,1364,1364,1363,1363,1363,1363,1364,1364,1365,1367,1368,1370,
+1372,1375,1378,1381,1385,1389,1393,1397,1402,1407,1412,1417,1423,1428,1434,1439,1445,1451,1456,1461,1467,
+1472,1477,1482,1487,1491,1495,1499,1503,1507,1511,1514,1517,1520,1522,1525,1527,1530,1532,1534,1536,1537,
+1539,1541,1543,1544,1546,1548,1550,1552,1554,1557,1559,1562,1565,1568,1572,1575,1580,1584,1589,1594,1599,
+1605,1611,1617,1624,1631,1639,1646,1654,1662,1670,1679,1688,1696,1705,1714,1723,1732,1741,1750,1758,1767,
+1775,1783,1791,1799,1806,1813,1820,1826,1832,1838,1844,1849,1854,1859,1863,1868,1872,1876,1879,1883,1887,
+1890,1894,1897,1901,1905,1908,1912,1916,1921,1925,1930,1935,1940,1945,1950,1956,1962,1967,1973,1979,1986,
+1992,1998,2004,2011,2017,2023,2029,2035,2041,2046,2052,2057,2063,2068,2073,2078,2083,2088,2093,2098,2103,
+2108,2113,2118,2123,2129,2134,2140,2146,2152,2159,2165,2172,2179,2186,2193,2201,2208,2216,2224,2231,2239,
+2246,2254,2261,2268,2275,2281,2287,2293,2299,2304,2309,2313,2318,2321,2325,2328,2332,2334,2337,2340,2342,
+2345,2347,2350,2352,2355,2357,2360,2363,2367,2370,2374,2378,2382,2386,2390,2394,2399,2403,2408,2412,2417,
+2421,2425,2429,2433,2436,2439,2442,2445,2447,2449,2451,2452,2454,2454,2455,2456,2457,2457,2458,2458,2459,
+2460,2461,2462,2464,2466,2469,2472,2475,2479,2483,2488,2494,2499,2506,2512,2519,2526,2534,2542,2549,2557,
+2565,2573,2581,2589,2596,2604,2611,2617,2624,2629,2635,2640,2645,2649,2653,2656,2659,2662,2665,2667,2669,
+2671,2672,2674,2676,2677,2679,2681,2683,2685,2687,2690,2693,2695,2699,2702,2706,2709,2713,2717,2721,2726,
+2730,2734,2738,2742,2745,2749,2752,2755,2757,2759,2760,2762,2762,2762,2762,2760,2759,2757,2754,2751,2747,
+2743,2738,2733,2728,2723,2717,2711,2705,2699,2693,2686,2680,2675,2669,2663,2658,2653,2649,2644,2641,2637,
+2634,2632,2629,2627,2626,2625,2624,2624,2624,2624,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2635,
+2636,2637,2638,2639,2640,2640,2641,2642,2643,2644,2645,2646,2647,2648,2650,2651,2653,2654,2656,2659,2661,
+2663,2666,2669,2672,2675,2678,2681,2684,2687,2690,2693,2696,2699,2701,2703,2704,2706,2706,2741,2741,2740,
+2739,2737,2735,2732,2729,2725,2721,2717,2712,2706,2700,2694,2688,2682,2675,2669,2662,2656,2650,2644,2638,
+2632,2627,2622,2617,2613,2609,2605,2602,2599,2597,2594,2592,2590,2588,2587,2585,2584,2582,2581,2579,2578,
+2576,2574,2572,2570,2567,2565,2562,2559,2556,2553,2549,2546,2542,2538,2534,2530,2526,2522,2519,2515,2511,
+2507,2503,2500,2496,2492,2489,2486,2482,2479,2476,2472,2469,2466,2463,2459,2456,2452,2449,2445,2442,2438,
+2434,2431,2427,2423,2418,2414,2410,2406,2401,2397,2393,2388,2384,2379,2375,2370,2366,2361,2356,2352,2347,
+2342,2338,2333,2328,2323,2318,2313,2308,2303,2298,2292,2287,2281,2276,2270,2264,2258,2252,2246,2240,2234,
+2228,2222,2216,2209,2203,2197,2191,2185,2178,2172,2166,2160,2153,2147,2141,2135,2128,2122,2116,2109,2103,
+2096,2090,2083,2076,2070,2063,2056,2049,2042,2035,2028,2021,2014,2007,2000,1993,1986,1979,1972,1965,1959,
+1952,1945,1939,1932,1926,1919,1913,1906,1900,1893,1887,1880,1874,1867,1861,1854,1848,1841,1834,1827,1820,
+1813,1806,1799,1792,1785,1777,1770,1763,1756,1748,1741,1734,1727,1720,1713,1706,1699,1692,1685,1678,1672,
+1665,1659,1653,1646,1640,1634,1628,1622,1615,1609,1603,1597,1591,1585,1579,1573,1567,1561,1554,1548,1542,
+1535,1529,1523,1516,1510,1503,1497,1490,1484,1477,1471,1464,1458,1451,1445,1439,1433,1427,1421,1415,1409,
+1404,1398,1393,1388,1382,1377,1372,1367,1363,1358,1353,1348,1344,1339,1334,1329,1325,1320,1315,1310,1305,
+1300,1295,1289,1284,1279,1273,1267,1262,1256,1250,1245,1239,1233,1227,1222,1216,1210,1205,1199,1194,1189,
+1183,1178,1173,1168,1163,1158,1153,1148,1143,1139,1134,1129,1124,1119,1114,1109,1105,1100,1094,1089,1084,
+1079,1074,1069,1064,1058,1053,1048,1043,1038,1033,1028,1024,1019,1015,1011,1007,1003,999,996,992,989,
+986,983,981,978,976,974,972,970,969,967,965,964,963,962,961,960,959,958,958,957,957,
+956,956,956,956,956,956,956,957,957,957,957,958,958,958,958,958,958,958,958,957,957,
+956,955,954,953,951,950,948,946,944,942,940,938,936,935,933,932,930,929,928,928,928,
+928,929,929,931,932,934,936,938,941,943,946,948,951,953,956,958,959,961,962,962,963,
+962,961,960,958,956,954,951,947,944,940,936,932,928,925,921,918,915,913,911,910,910,
+910,911,913,916,919,923,928,933,939,945,951,957,964,970,977,982,988,992,996,999,1001,
+1002,1002,1001,998,995,990,983,976,967,957,947,935,922,909,895,881,867,852,838,823,809,
+796,783,770,758,748,738,729,721,714,708,703,699,696,694,692,692,692,692,694,695,696,
+698,700,702,703,704,705,705,705,704,703,701,698,695,691,687,681,675,669,662,655,648,
+640,632,624,616,609,601,594,588,582,577,573,570,567,566,565,566,568,572,576,581,588,
+596,605,615,626,637,650,663,676,690,704,718,732,746,760,773,785,797,808,818,827,835,
+842,847,851,854,856,856,856,854,851,847,842,836,830,823,816,808,800,792,783,775,767,
+759,752,745,738,732,726,721,716,712,708,704,701,698,695,693,690,687,685,682,679,676,
+673,669,665,660,655,650,644,638,631,625,617,610,602,595,587,579,571,564,556,549,542,
+535,529,523,517,512,507,503,499,496,493,491,489,487,486,485,484,484,484,484,484,484,
+485,486,487,488,489,490,491,492,494,495,497,498,500,501,503,505,507,509,511,513,515,
+517,519,521,524,526,528,530,532,534,536,538,539,541,543,544,545,547,548,549,550,551,
+552,553,555,556,557,558,560,561,563,565,567,570,572,575,578,581,584,587,591,595,599,
+603,607,611,615,619,624,628,632,636,640,644,648,652,656,659,663,666,669,672,675,678,
+681,684,686,689,691,694,696,699,701,703,705,707,710,712,714,716,718,720,721,723,725,
+727,728,730,731,733,734,736,737,738,740,741,742,744,745,747,749,751,753,755,757,760,
+762,765,768,772,775,779,783,786,790,794,798,802,806,810,814,818,821,825,828,831,833,
+835,837,838,839,840,840,840,839,838,837,835,833,831,828,826,823,820,817,814,811,807,
+805,802,799,796,794,792,790,789,788,787,786,786,786,787,787,788,790,791,793,795,798,
+801,803,806,809,813,816,819,823,827,830,834,837,840,844,847,850,853,855,858,860,862,
+864,865,867,867,868,868,868,868,867,867,865,864,862,860,858,856,853,851,848,845,842,
+839,836,834,831,828,826,823,821,819,818,816,815,814,813,813,813,813,813,814,815,816,
+817,819,821,823,825,827,830,833,836,838,841,844,848,851,854,857,860,864,867,870,873,
+876,879,882,884,887,890,892,894,897,899,901,903,905,907,908,910,912,914,915,917,919,
+920,922,924,926,928,931,933,936,938,942,945,948,952,956,960,964,969,974,979,984,989,
+994,1000,1005,1010,1016,1021,1027,1032,1038,1043,1048,1053,1058,1063,1068,1072,1077,1082,1086,1091,1095,
+1100,1104,1109,1114,1119,1123,1128,1134,1139,1144,1150,1156,1161,1167,1173,1179,1185,1192,1198,1204,1210,
+1216,1221,1227,1233,1238,1243,1248,1252,1257,1261,1265,1268,1272,1275,1278,1281,1284,1287,1289,1292,1294,
+1297,1300,1302,1305,1308,1311,1314,1317,1321,1324,1328,1332,1336,1340,1344,1348,1353,1357,1361,1366,1370,
+1375,1379,1383,1388,1392,1396,1400,1404,1408,1412,1416,1420,1424,1428,1431,1435,1439,1443,1447,1451,1455,
+1459,1463,1467,1471,1475,1479,1484,1488,1492,1496,1501,1505,1509,1513,1517,1521,1525,1529,1533,1537,1540,
+1544,1548,1552,1555,1559,1563,1567,1571,1575,1580,1585,1589,1595,1600,1606,1612,1618,1625,1632,1640,1648,
+1656,1665,1674,1683,1693,1702,1713,1723,1733,1744,1754,1765,1776,1786,1797,1807,1818,1828,1838,1847,1856,
+1865,1874,1882,1890,1897,1904,1911,1917,1923,1929,1934,1939,1944,1948,1953,1957,1961,1965,1969,1973,1977,
+1981,1986,1990,1995,1999,2004,2010,2015,2021,2026,2032,2039,2045,2051,2058,2064,2071,2078,2084,2091,2097,
+2103,2110,2116,2121,2127,2132,2137,2142,2147,2151,2156,2160,2164,2168,2172,2176,2180,2185,2189,2194,2198,
+2203,2209,2214,2220,2226,2233,2240,2247,2254,2262,2270,2278,2286,2295,2303,2312,2321,2329,2338,2346,2354,
+2362,2369,2377,2384,2391,2397,2403,2409,2414,2420,2425,2430,2434,2439,2443,2447,2451,2455,2459,2463,2468,
+2472,2476,2480,2484,2489,2493,2497,2502,2506,2510,2514,2518,2521,2524,2527,2530,2532,2534,2536,2537,2537,
+2538,2537,2537,2536,2535,2533,2532,2530,2528,2526,2524,2522,2520,2518,2517,2516,2516,2516,2516,2517,2518,
+2520,2523,2526,2530,2534,2538,2543,2549,2555,2561,2567,2574,2581,2588,2594,2601,2608,2614,2620,2626,2632,
+2637,2642,2646,2650,2653,2657,2659,2662,2664,2665,2667,2667,2668,2669,2669,2669,2669,2669,2669,2669,2668,
+2668,2668,2668,2668,2668,2667,2667,2667,2667,2668,2668,2668,2668,2668,2667,2667,2667,2667,2666,2666,2665,
+2664,2663,2662,2660,2659,2657,2656,2654,2652,2650,2648,2646,2644,2642,2640,2638,2636,2634,2632,2631,2630,
+2628,2628,2627,2627,2627,2627,2627,2628,2629,2631,2633,2635,2637,2640,2643,2646,2650,2653,2657,2661,2665,
+2669,2673,2677,2681,2685,2689,2693,2696,2699,2702,2705,2708,2710,2712,2713,2715,2716,2716,2717,2717,2717,
+2717,2717,2716,2716,2716,2715,2715,2715,2714,2715,2715,2715,2716,2717,2718,2719,2720,2722,2724,2726,2728,
+2730,2732,2734,2735,2737,2739,2740,2741,2741,2741,2761,2760,2758,2757,2755,2752,2749,2746,2742,2738,2734,
+2729,2724,2719,2713,2708,2702,2696,2690,2684,2678,2672,2666,2661,2656,2651,2646,2641,2637,2634,2630,2627,
+2624,2622,2619,2617,2615,2613,2612,2610,2608,2606,2604,2602,2600,2598,2595,2593,2590,2586,2583,2579,2575,
+2571,2566,2562,2557,2552,2547,2542,2538,2533,2528,2523,2518,2514,2510,2505,2501,2498,2494,2491,2487,2484,
+2481,2479,2476,2474,2471,2469,2467,2464,2462,2460,2458,2456,2453,2451,2448,2446,2443,2440,2438,2435,2431,
+2428,2425,2421,2418,2414,2410,2406,2401,2397,2393,2388,2383,2378,2373,2367,2362,2356,2350,2344,2338,2331,
+2325,2318,2311,2304,2297,2290,2282,2275,2268,2260,2253,2246,2238,2231,2224,2216,2209,2202,2195,2188,2181,
+2174,2167,2160,2153,2146,2139,2133,2126,2119,2112,2104,2097,2090,2083,2075,2068,2060,2052,2045,2037,2029,
+2022,2014,2007,1999,1992,1985,1977,1970,1964,1957,1950,1944,1937,1931,1925,1919,1913,1907,1901,1895,1889,
+1883,1877,1871,1864,1858,1851,1844,1837,1830,1822,1815,1807,1799,1791,1783,1775,1766,1758,1750,1741,1733,
+1725,1717,1709,1701,1694,1686,1679,1672,1665,1658,1652,1645,1639,1633,1627,1621,1615,1609,1603,1597,1592,
+1586,1580,1574,1567,1561,1555,1548,1541,1535,1528,1521,1513,1506,1499,1491,1484,1476,1468,1461,1453,1446,
+1438,1431,1423,1416,1409,1402,1396,1389,1383,1377,1371,1366,1360,1355,1350,1345,1341,1336,1332,1328,1324,
+1320,1316,1312,1309,1305,1301,1297,1292,1288,1284,1279,1274,1269,1264,1258,1253,1247,1241,1234,1228,1221,
+1214,1207,1200,1193,1186,1179,1172,1166,1159,1152,1146,1139,1133,1127,1121,1116,1110,1105,1100,1094,1090,
+1085,1080,1075,1070,1066,1061,1056,1051,1046,1041,1036,1031,1025,1020,1015,1009,1003,998,992,987,981,
+976,970,965,960,955,950,946,942,938,934,930,927,923,920,918,915,912,910,907,905,903,
+901,898,896,894,892,890,888,885,883,881,879,877,875,873,871,869,868,867,865,864,864,
+863,863,862,863,863,863,864,864,865,866,867,867,868,869,870,870,871,871,871,871,871,
+871,870,870,869,868,868,867,866,866,865,865,865,865,866,866,867,869,870,872,875,877,
+880,883,886,889,892,895,898,900,903,905,907,908,909,909,909,908,907,905,903,900,897,
+893,889,885,881,876,872,868,864,861,858,856,855,854,854,855,857,860,863,868,873,879,
+885,892,900,907,915,923,930,937,944,950,955,960,963,965,966,966,964,961,956,951,943,
+935,925,914,903,890,877,863,848,834,819,804,790,776,762,749,737,726,715,706,697,689,
+683,677,673,669,666,664,663,662,662,662,663,663,664,665,666,667,667,667,667,666,665,
+663,660,657,654,650,645,640,634,628,621,615,608,600,593,586,579,572,565,559,553,548,
+543,539,536,534,533,533,534,536,539,544,549,556,564,573,583,594,606,619,633,647,661,
+676,691,707,722,736,751,764,777,789,800,810,819,826,832,836,839,840,840,838,835,831,
+826,819,811,802,793,783,773,762,751,741,730,720,710,700,691,683,675,669,663,657,653,
+649,646,644,642,640,639,638,637,637,636,635,634,632,630,628,625,622,618,613,608,603,
+597,590,583,576,568,561,553,545,537,529,521,514,506,500,493,487,481,476,471,467,463,
+459,456,454,451,449,448,446,445,444,444,443,443,442,442,442,442,442,443,443,444,444,
+445,446,447,448,449,451,452,454,456,458,460,463,465,468,470,473,476,478,480,483,485,
+488,490,491,493,495,496,497,498,499,500,501,501,502,503,503,504,505,505,507,508,509,
+511,513,515,518,521,524,528,531,535,540,544,549,554,559,564,569,574,579,584,589,593,
+598,602,606,610,614,618,621,624,627,629,631,634,636,637,639,640,642,643,645,646,647,
+648,649,651,652,653,654,656,657,658,660,661,662,664,665,666,668,669,670,672,673,674,
+675,676,678,679,680,682,683,685,686,688,690,692,694,696,699,702,705,708,711,714,717,
+721,724,728,732,735,739,742,745,749,752,754,757,759,761,763,764,765,766,766,766,766,
+766,765,764,763,761,760,758,757,755,753,752,750,749,747,746,745,743,743,742,741,741,
+741,741,741,741,741,742,743,744,744,746,747,748,749,751,752,754,756,757,759,761,763,
+765,767,769,772,774,776,778,780,783,785,787,789,790,792,793,795,796,796,797,797,797,
+797,796,795,794,792,791,789,786,784,781,778,775,772,769,766,763,760,758,755,752,750,
+748,746,745,744,743,742,742,742,742,743,743,744,745,747,748,750,752,754,756,758,760,
+762,764,766,768,770,772,774,776,778,780,782,784,786,788,790,792,794,796,798,800,803,
+805,807,810,812,814,817,819,822,825,827,830,833,836,838,841,844,847,850,853,856,860,
+863,866,870,874,877,881,885,889,893,897,901,905,909,914,918,922,926,931,935,939,943,
+947,951,954,958,962,965,969,972,976,979,982,986,989,993,997,1000,1004,1009,1013,1017,1022,
+1027,1032,1037,1042,1048,1054,1059,1065,1071,1077,1083,1089,1096,1101,1107,1113,1119,1124,1130,1135,1140,
+1145,1150,1155,1159,1164,1169,1173,1178,1183,1187,1192,1197,1202,1207,1213,1218,1224,1230,1236,1242,1248,
+1254,1260,1267,1273,1279,1285,1291,1297,1303,1308,1313,1318,1323,1327,1331,1335,1339,1342,1345,1348,1351,
+1354,1357,1360,1363,1366,1369,1372,1376,1380,1384,1389,1393,1399,1404,1410,1416,1423,1430,1437,1444,1452,
+1459,1467,1475,1483,1491,1499,1506,1514,1521,1529,1536,1543,1550,1556,1563,1569,1575,1581,1587,1593,1599,
+1605,1611,1616,1622,1628,1635,1641,1648,1654,1661,1669,1676,1684,1692,1700,1708,1717,1726,1735,1744,1754,
+1764,1773,1783,1793,1803,1813,1822,1832,1842,1851,1861,1870,1879,1887,1896,1904,1911,1919,1926,1932,1939,
+1945,1951,1956,1961,1966,1970,1974,1978,1982,1986,1989,1993,1997,2001,2004,2008,2012,2017,2021,2026,2031,
+2037,2043,2049,2055,2061,2068,2075,2083,2090,2097,2105,2112,2120,2127,2135,2142,2149,2155,2161,2167,2173,
+2179,2184,2188,2193,2197,2201,2204,2208,2211,2215,2218,2221,2225,2228,2232,2236,2240,2245,2250,2255,2261,
+2267,2274,2280,2288,2295,2303,2311,2319,2327,2336,2345,2353,2362,2370,2378,2387,2395,2402,2410,2417,2424,
+2431,2437,2444,2450,2455,2461,2467,2472,2477,2482,2487,2492,2497,2502,2507,2512,2517,2522,2527,2531,2536,
+2540,2545,2549,2553,2556,2560,2562,2565,2567,2569,2570,2571,2572,2572,2571,2571,2570,2568,2567,2565,2563,
+2561,2559,2557,2556,2554,2553,2552,2551,2551,2551,2551,2552,2554,2556,2558,2561,2565,2568,2573,2577,2582,
+2587,2592,2597,2603,2608,2613,2619,2624,2629,2634,2638,2643,2647,2650,2654,2657,2660,2662,2664,2666,2668,
+2670,2671,2672,2673,2674,2674,2675,2675,2675,2675,2675,2675,2675,2674,2674,2673,2672,2671,2670,2669,2667,
+2665,2663,2660,2658,2655,2652,2648,2645,2641,2637,2633,2629,2625,2620,2616,2611,2607,2603,2599,2594,2591,
+2587,2583,2580,2577,2574,2572,2570,2568,2567,2566,2565,2565,2565,2566,2567,2568,2569,2571,2574,2577,2580,
+2584,2588,2592,2597,2602,2607,2613,2619,2626,2633,2640,2647,2655,2662,2670,2678,2686,2694,2702,2710,2717,
+2725,2732,2739,2745,2751,2757,2762,2767,2771,2775,2778,2780,2782,2784,2785,2785,2786,2785,2785,2784,2783,
+2781,2780,2778,2777,2775,2773,2772,2771,2769,2768,2767,2767,2766,2765,2765,2765,2764,2764,2764,2763,2763,
+2762,2761,2781,2780,2779,2778,2776,2775,2773,2772,2770,2767,2765,2762,2758,2755,2751,2747,2743,2738,2733,
+2728,2723,2718,2712,2707,2702,2697,2692,2687,2682,2677,2673,2668,2664,2660,2657,2653,2650,2647,2644,2641,
+2638,2635,2633,2630,2627,2624,2622,2619,2615,2612,2609,2605,2601,2598,2594,2589,2585,2581,2576,2572,2567,
+2562,2558,2553,2548,2544,2539,2535,2531,2527,2523,2519,2515,2512,2508,2505,2502,2499,2496,2493,2490,2487,
+2485,2482,2479,2477,2474,2472,2469,2466,2463,2461,2458,2455,2452,2448,2445,2441,2437,2434,2429,2425,2420,
+2415,2410,2405,2399,2393,2387,2381,2374,2367,2360,2352,2344,2336,2328,2320,2312,2303,2295,2286,2278,2269,
+2261,2252,2244,2236,2228,2221,2213,2206,2199,2192,2186,2179,2173,2167,2160,2154,2148,2142,2135,2129,2122,
+2116,2109,2102,2094,2087,2079,2071,2063,2054,2046,2037,2028,2019,2011,2002,1993,1984,1976,1967,1959,1951,
+1943,1935,1928,1921,1914,1907,1900,1893,1887,1880,1873,1867,1860,1854,1847,1839,1832,1824,1817,1808,1800,
+1791,1782,1773,1764,1755,1745,1735,1726,1716,1707,1697,1688,1679,1670,1662,1653,1645,1638,1630,1623,1617,
+1610,1604,1599,1593,1588,1582,1577,1572,1567,1562,1557,1552,1547,1542,1536,1531,1525,1519,1513,1507,1500,
+1494,1487,1481,1474,1467,1460,1453,1446,1439,1432,1425,1418,1411,1405,1398,1391,1385,1379,1372,1366,1360,
+1354,1349,1343,1338,1333,1327,1322,1318,1313,1308,1304,1300,1295,1291,1287,1283,1278,1274,1270,1266,1261,
+1257,1252,1247,1242,1237,1232,1226,1220,1214,1208,1201,1194,1187,1180,1173,1166,1159,1151,1144,1137,1130,
+1123,1116,1109,1102,1095,1089,1083,1077,1071,1065,1059,1054,1048,1043,1037,1032,1026,1020,1015,1009,1003,
+997,990,984,977,971,964,957,950,943,936,929,922,915,909,903,897,891,886,881,876,871,
+868,864,861,858,855,853,851,849,847,846,844,843,841,840,838,836,834,832,830,827,825,
+822,819,815,812,809,806,802,799,796,793,790,787,785,783,782,780,779,779,779,779,779,
+780,781,782,784,785,787,788,790,792,793,794,796,797,797,798,798,798,798,798,798,797,
+797,796,796,796,795,795,796,796,797,798,800,802,804,807,809,813,816,819,823,827,831,
+834,838,841,843,846,848,849,850,850,849,848,847,844,842,838,835,831,826,822,818,814,
+810,806,803,800,798,797,797,797,799,801,804,809,813,819,825,832,840,847,855,863,871,
+878,885,891,896,900,904,906,907,907,905,902,897,892,885,877,867,857,846,834,821,808,
+795,782,769,756,743,731,719,708,698,688,680,672,665,659,654,650,646,644,641,640,639,
+638,637,637,637,636,636,636,635,634,633,631,629,626,624,620,617,612,608,603,598,592,
+587,581,575,568,562,556,549,543,537,531,526,521,516,512,508,505,503,502,501,502,503,
+506,510,515,521,528,537,546,557,569,582,595,610,625,640,656,672,688,703,719,733,747,
+760,772,783,792,799,805,810,812,813,812,809,805,799,791,782,772,761,748,736,722,709,
+695,681,668,655,642,631,620,610,601,593,586,581,576,572,570,568,567,566,567,567,568,
+569,570,571,572,572,572,572,571,569,567,564,560,556,552,547,541,535,529,522,515,508,
+502,495,488,482,475,470,464,459,454,449,445,442,438,435,433,430,428,426,425,423,422,
+421,419,418,417,417,416,415,415,414,414,413,413,413,414,414,415,416,418,419,421,423,
+425,427,430,433,435,438,441,444,447,450,452,455,457,459,461,462,464,465,466,466,467,
+467,467,467,467,467,467,467,467,467,468,469,470,471,473,476,478,481,484,488,492,497,
+501,506,511,516,522,527,533,538,543,548,553,558,562,566,570,573,576,579,581,583,584,
+585,586,587,587,588,588,588,587,587,587,587,586,586,586,586,586,587,587,588,589,590,
+591,592,594,595,597,599,601,603,605,607,609,611,613,615,617,619,621,623,625,627,629,
+631,633,635,637,640,642,644,646,648,651,653,656,658,660,663,665,668,670,672,674,676,
+678,679,681,682,683,684,684,685,685,685,685,685,685,684,684,683,683,682,682,681,681,
+681,681,681,681,681,682,682,683,684,685,686,687,688,690,691,692,693,694,695,696,697,
+697,698,698,698,698,698,698,698,698,697,697,697,697,696,696,696,697,697,697,698,699,
+699,700,701,702,703,704,705,706,707,708,708,708,708,708,708,707,706,705,703,702,700,
+697,695,692,690,687,684,682,679,677,675,672,671,669,668,667,666,666,666,666,666,667,
+668,670,671,673,675,677,679,681,683,685,687,689,691,693,694,696,697,698,699,700,701,
+702,703,704,705,706,707,709,710,711,713,715,717,719,721,724,727,730,733,736,739,743,
+746,750,753,757,761,764,768,771,775,778,781,784,788,791,794,797,799,802,805,808,810,
+813,816,819,821,824,827,830,832,835,838,841,844,847,850,853,856,859,863,866,869,873,
+876,880,883,887,891,895,900,904,909,913,918,924,929,934,940,946,951,957,963,969,975,
+981,987,992,998,1003,1009,1014,1018,1023,1027,1032,1036,1040,1043,1047,1051,1054,1058,1062,1065,1069,
+1074,1078,1083,1088,1094,1099,1106,1112,1119,1126,1134,1141,1149,1157,1165,1173,1181,1189,1197,1205,1212,
+1220,1227,1233,1239,1245,1251,1256,1261,1265,1270,1274,1278,1283,1287,1291,1295,1300,1305,1310,1316,1322,
+1329,1336,1343,1351,1360,1369,1378,1388,1398,1408,1419,1430,1441,1452,1463,1473,1484,1495,1506,1516,1526,
+1536,1546,1555,1565,1574,1582,1591,1599,1607,1616,1624,1632,1639,1647,1655,1663,1671,1679,1687,1694,1702,
+1710,1718,1726,1733,1741,1748,1756,1763,1770,1777,1784,1791,1798,1804,1810,1816,1822,1828,1834,1839,1845,
+1850,1855,1861,1866,1871,1876,1881,1886,1891,1896,1900,1905,1909,1914,1918,1922,1926,1930,1933,1937,1940,
+1943,1946,1949,1952,1955,1958,1961,1964,1967,1971,1974,1978,1982,1987,1992,1997,2003,2009,2015,2022,2029,
+2036,2043,2051,2059,2067,2075,2083,2091,2099,2107,2114,2121,2128,2135,2141,2147,2152,2157,2162,2166,2170,
+2174,2177,2180,2183,2187,2190,2193,2196,2199,2203,2206,2211,2215,2220,2225,2230,2236,2242,2248,2255,2262,
+2269,2276,2283,2291,2298,2306,2313,2321,2328,2335,2342,2349,2356,2363,2369,2375,2381,2387,2393,2399,2405,
+2411,2416,2422,2428,2433,2439,2445,2451,2457,2463,2469,2475,2481,2487,2493,2498,2504,2509,2514,2519,2524,
+2528,2532,2536,2539,2543,2545,2548,2550,2553,2555,2557,2559,2561,2562,2565,2567,2569,2572,2575,2578,2582,
+2586,2590,2594,2599,2605,2610,2616,2622,2628,2635,2641,2647,2654,2660,2666,2672,2678,2684,2689,2694,2699,
+2703,2707,2711,2714,2717,2720,2723,2725,2728,2730,2732,2733,2735,2737,2739,2740,2742,2744,2746,2747,2749,
+2751,2753,2754,2755,2757,2758,2758,2759,2759,2758,2758,2756,2755,2752,2749,2746,2742,2738,2733,2728,2722,
+2716,2710,2703,2696,2689,2681,2674,2666,2659,2651,2644,2637,2630,2623,2617,2610,2604,2599,2594,2589,2584,
+2580,2576,2572,2569,2566,2563,2561,2559,2557,2556,2555,2554,2554,2554,2555,2556,2558,2560,2563,2566,2571,
+2576,2581,2587,2594,2602,2610,2619,2628,2638,2649,2660,2671,2683,2694,2706,2718,2730,2741,2752,2763,2773,
+2783,2792,2800,2808,2814,2820,2825,2829,2832,2834,2836,2837,2836,2836,2834,2832,2830,2827,2824,2821,2818,
+2814,2811,2807,2804,2801,2798,2795,2793,2791,2789,2787,2785,2784,2783,2781,2811,2810,2809,2808,2807,2807,
+2806,2806,2805,2804,2803,2802,2800,2798,2796,2793,2790,2787,2783,2778,2774,2769,2763,2758,2752,2746,2739,
+2733,2727,2721,2714,2708,2702,2697,2691,2686,2681,2677,2673,2669,2665,2662,2659,2657,2655,2653,2651,2649,
+2648,2646,2645,2643,2642,2641,2639,2637,2635,2633,2631,2628,2626,2622,2619,2615,2612,2607,2603,2598,2594,
+2589,2583,2578,2573,2567,2562,2556,2551,2545,2540,2534,2529,2524,2519,2513,2508,2503,2499,2494,2489,2484,
+2480,2475,2471,2466,2462,2457,2453,2448,2443,2438,2433,2427,2422,2416,2410,2403,2397,2390,2382,2375,2367,
+2359,2350,2341,2333,2323,2314,2305,2295,2286,2277,2267,2258,2249,2240,2232,2223,2215,2208,2200,2193,2187,
+2180,2174,2168,2162,2157,2152,2146,2141,2136,2130,2125,2119,2113,2106,2099,2092,2085,2077,2069,2060,2051,
+2042,2033,2023,2013,2003,1993,1983,1973,1964,1954,1944,1935,1926,1918,1909,1901,1893,1886,1878,1871,1864,
+1856,1849,1842,1834,1827,1819,1811,1802,1794,1785,1775,1765,1755,1745,1734,1723,1712,1701,1690,1679,1668,
+1657,1647,1637,1628,1619,1611,1603,1595,1589,1583,1577,1572,1567,1563,1559,1556,1553,1549,1547,1544,1541,
+1538,1535,1532,1529,1525,1522,1518,1514,1510,1505,1501,1496,1491,1486,1482,1477,1472,1467,1462,1457,1452,
+1448,1443,1438,1433,1428,1423,1418,1413,1408,1403,1397,1391,1385,1379,1372,1366,1359,1352,1344,1337,1329,
+1322,1314,1306,1299,1291,1284,1276,1269,1262,1255,1248,1241,1235,1228,1222,1216,1210,1203,1198,1192,1186,
+1180,1174,1168,1162,1156,1150,1143,1137,1131,1125,1118,1112,1106,1100,1093,1087,1081,1075,1069,1064,1058,
+1052,1046,1041,1035,1029,1023,1017,1011,1005,998,991,984,977,969,961,953,945,936,927,918,909,
+900,891,882,873,864,855,847,839,831,824,817,811,806,800,796,792,788,785,782,780,778,
+776,775,773,772,771,770,769,768,767,765,764,762,760,758,755,753,750,747,744,741,738,
+735,733,730,728,725,723,722,720,719,719,718,718,719,719,720,722,723,724,726,728,729,
+731,733,734,735,736,737,737,737,737,737,736,735,734,733,732,730,729,728,726,726,725,
+725,725,725,726,728,729,732,734,738,741,745,749,753,758,762,767,771,775,778,781,784,
+786,787,788,788,787,785,783,780,777,773,769,765,760,755,751,746,742,739,735,733,731,
+731,731,732,734,737,740,745,751,757,763,770,778,785,793,800,807,813,819,823,827,830,
+832,832,831,829,826,821,816,809,801,792,782,771,760,749,737,726,714,703,692,681,671,
+661,652,644,636,630,624,619,614,610,607,604,601,599,598,596,595,594,592,591,590,588,
+587,585,583,581,579,576,573,570,567,564,560,556,552,548,544,539,535,530,525,520,515,
+510,505,500,495,490,485,481,477,474,471,469,468,467,468,470,473,477,483,490,498,508,
+519,531,545,560,575,592,609,626,644,661,679,696,712,727,741,754,765,774,782,787,790,
+792,791,787,782,775,766,755,742,729,714,698,682,665,648,631,614,598,583,569,555,543,
+532,523,514,508,502,498,495,493,492,492,492,494,495,497,500,502,504,505,507,508,508,
+508,508,506,505,502,499,496,492,488,483,479,474,469,463,459,454,449,445,440,436,433,
+429,426,423,421,419,416,414,412,411,409,408,406,404,403,401,400,399,397,396,395,393,
+392,392,391,391,390,391,391,392,393,394,396,398,400,403,405,408,411,414,417,420,423,
+426,429,431,434,436,438,439,440,441,442,442,442,442,442,442,442,442,442,442,442,442,
+443,444,445,447,449,452,455,458,462,466,470,475,479,484,490,495,500,505,510,515,520,
+525,529,533,536,539,542,544,546,547,548,549,549,548,548,547,546,544,543,541,539,537,
+535,534,532,530,529,528,527,526,525,525,525,525,526,527,528,529,531,532,535,537,539,
+542,544,547,549,552,555,558,561,563,566,569,571,574,576,579,581,584,586,588,590,592,
+594,596,598,600,602,604,605,607,608,609,611,612,613,613,614,614,614,614,614,614,613,
+613,612,611,611,610,609,608,607,607,606,606,605,605,606,606,607,608,609,610,612,614,
+616,618,620,622,624,627,629,631,633,635,636,637,638,639,640,640,640,640,639,639,638,
+637,636,634,633,632,631,629,628,627,626,626,625,625,624,624,624,624,624,624,624,624,
+624,624,624,623,622,621,620,619,617,615,613,611,608,605,603,600,597,594,591,588,586,
+583,581,580,578,577,576,576,576,577,578,579,581,583,585,587,590,593,596,599,602,605,
+608,611,613,616,618,620,622,624,625,626,627,628,629,630,631,631,632,633,634,635,636,
+638,639,641,644,646,649,652,655,659,663,667,671,675,679,684,688,693,697,701,705,709,
+713,716,719,722,725,728,730,733,735,737,738,740,742,743,745,746,748,750,751,753,755,
+757,759,761,764,766,769,772,775,778,782,785,789,793,797,801,806,810,815,820,825,830,
+835,841,846,852,858,864,870,876,882,888,893,899,905,910,916,921,925,930,934,938,942,
+945,948,951,953,956,958,960,963,965,967,970,973,976,979,983,988,993,998,1004,1010,1017,
+1025,1032,1041,1049,1058,1068,1077,1087,1096,1106,1115,1125,1134,1143,1151,1160,1168,1176,1183,1191,1198,
+1205,1212,1219,1226,1233,1241,1248,1256,1265,1273,1283,1292,1303,1313,1324,1336,1348,1360,1373,1386,1399,
+1412,1425,1438,1451,1463,1475,1487,1499,1510,1521,1531,1541,1551,1560,1569,1578,1586,1595,1603,1611,1619,
+1628,1636,1645,1653,1662,1671,1681,1690,1700,1709,1719,1728,1738,1747,1756,1765,1773,1781,1788,1795,1801,
+1807,1812,1816,1820,1823,1826,1829,1830,1832,1833,1835,1836,1837,1838,1839,1840,1842,1843,1845,1848,1850,
+1854,1857,1861,1864,1869,1873,1878,1882,1887,1891,1896,1900,1904,1909,1912,1916,1919,1923,1926,1928,1931,
+1933,1936,1938,1940,1943,1945,1948,1951,1954,1958,1961,1966,1970,1975,1980,1985,1991,1997,2003,2009,2015,
+2021,2028,2034,2040,2046,2052,2057,2062,2067,2072,2076,2080,2084,2087,2090,2093,2096,2098,2101,2104,2106,
+2109,2112,2115,2118,2121,2125,2128,2133,2137,2142,2146,2151,2157,2162,2168,2174,2179,2185,2191,2197,2203,
+2209,2214,2220,2226,2231,2237,2242,2248,2253,2259,2264,2270,2276,2282,2288,2294,2301,2307,2314,2322,2329,
+2337,2345,2353,2361,2369,2378,2386,2394,2403,2411,2419,2428,2436,2443,2451,2459,2466,2474,2481,2488,2495,
+2502,2509,2517,2524,2531,2539,2547,2555,2564,2573,2582,2591,2601,2612,2622,2633,2644,2655,2666,2677,2689,
+2700,2711,2722,2733,2743,2753,2762,2772,2780,2788,2796,2803,2809,2815,2821,2826,2831,2835,2839,2842,2846,
+2849,2852,2855,2858,2861,2863,2866,2869,2872,2875,2878,2881,2883,2886,2889,2891,2893,2895,2897,2898,2898,
+2898,2898,2896,2895,2892,2889,2885,2881,2876,2870,2864,2857,2850,2842,2834,2826,2817,2808,2799,2790,2782,
+2773,2764,2756,2748,2740,2732,2725,2718,2711,2705,2698,2692,2686,2681,2675,2670,2665,2659,2654,2649,2644,
+2639,2634,2629,2624,2619,2615,2610,2606,2603,2600,2597,2595,2594,2594,2594,2595,2598,2601,2605,2610,2617,
+2624,2632,2642,2652,2663,2675,2687,2700,2713,2726,2739,2753,2766,2779,2791,2803,2814,2825,2834,2843,2850,
+2857,2862,2867,2870,2872,2874,2874,2873,2872,2870,2867,2864,2861,2857,2853,2848,2844,2840,2836,2832,2828,
+2825,2821,2819,2816,2814,2812,2811,2847,2844,2841,2838,2836,2833,2831,2829,2827,2825,2823,2821,2820,2817,
+2815,2813,2810,2807,2804,2800,2796,2792,2787,2782,2777,2772,2767,2761,2755,2750,2744,2739,2734,2729,2724,
+2720,2716,2712,2709,2707,2705,2704,2703,2703,2703,2703,2704,2705,2707,2708,2710,2712,2713,2714,2715,2716,
+2716,2716,2715,2714,2712,2709,2705,2701,2697,2691,2685,2678,2671,2664,2656,2647,2639,2630,2621,2612,2602,
+2593,2584,2575,2567,2558,2550,2542,2534,2527,2520,2513,2506,2500,2494,2488,2482,2476,2470,2465,2459,2453,
+2447,2441,2435,2429,2422,2416,2409,2402,2394,2386,2378,2370,2361,2352,2343,2334,2325,2315,2305,2296,2286,
+2276,2266,2256,2247,2238,2228,2220,2211,2203,2195,2187,2179,2172,2165,2159,2152,2146,2140,2134,2128,2122,
+2115,2109,2102,2096,2088,2081,2073,2065,2056,2047,2038,2029,2019,2009,1999,1988,1978,1968,1958,1948,1938,
+1929,1920,1911,1903,1895,1887,1880,1873,1867,1861,1854,1848,1842,1836,1830,1823,1816,1809,1801,1792,1783,
+1774,1764,1753,1742,1730,1718,1706,1694,1681,1669,1657,1645,1634,1623,1614,1604,1596,1589,1582,1576,1572,
+1568,1565,1563,1562,1561,1561,1562,1562,1563,1564,1565,1566,1566,1566,1566,1566,1565,1564,1563,1561,1559,
+1556,1554,1551,1548,1545,1541,1538,1535,1532,1529,1527,1524,1521,1519,1516,1513,1510,1507,1503,1499,1495,
+1489,1484,1477,1470,1462,1453,1444,1434,1423,1411,1399,1387,1373,1360,1347,1333,1319,1306,1292,1279,1267,
+1254,1243,1232,1221,1211,1202,1193,1185,1177,1170,1163,1157,1151,1145,1139,1134,1129,1123,1118,1113,1108,
+1102,1097,1091,1086,1080,1075,1069,1063,1057,1051,1046,1040,1034,1028,1022,1016,1010,1004,998,992,985,
+979,972,965,958,950,943,934,926,917,908,899,890,880,870,860,850,840,830,820,810,801,
+791,782,773,765,757,749,742,735,729,723,718,713,709,705,701,698,695,693,691,689,687,
+685,684,683,682,681,680,679,678,677,676,675,675,674,673,673,672,672,671,671,671,671,
+671,671,671,671,672,672,672,673,674,674,675,675,676,676,676,677,677,676,676,675,675,
+674,672,671,669,667,666,664,662,660,658,656,654,653,651,650,650,650,650,651,652,654,
+656,659,662,665,669,673,678,682,687,691,696,700,704,707,710,712,714,715,715,715,713,
+712,709,706,702,698,694,689,684,680,675,671,667,664,661,659,658,658,659,661,663,667,
+671,676,682,689,695,702,710,717,724,730,736,741,746,749,752,753,753,752,750,746,741,
+735,728,720,712,702,693,682,672,661,650,640,629,619,610,601,593,585,578,571,565,560,
+556,552,548,545,542,540,538,536,534,532,531,529,528,527,525,524,522,521,519,518,516,
+515,513,511,509,507,505,503,500,498,494,491,487,483,479,474,470,465,459,454,449,444,
+439,435,432,429,427,426,426,428,431,436,442,450,460,471,484,499,515,532,550,570,590,
+610,630,650,670,688,706,722,737,749,760,768,774,777,778,776,771,764,755,744,730,715,
+698,680,661,642,622,601,582,562,543,526,509,494,480,467,457,447,440,433,429,426,424,
+423,423,424,425,428,430,433,435,438,440,443,444,446,446,447,447,446,445,443,441,439,
+436,434,431,428,425,422,419,416,413,411,409,407,405,403,401,400,399,397,396,395,394,
+393,391,390,389,387,385,384,382,381,379,377,376,375,373,373,372,371,371,372,372,373,
+374,376,377,379,382,384,387,389,392,395,397,400,402,404,406,408,410,411,412,413,413,
+413,414,414,414,413,413,413,413,414,414,415,416,417,419,421,423,426,429,433,437,441,
+445,450,455,459,464,469,474,479,484,488,493,497,500,504,507,509,511,513,515,516,516,
+516,516,516,515,514,512,511,509,507,505,503,501,498,496,494,492,490,488,486,485,484,
+482,482,481,481,481,481,482,482,483,485,486,488,490,492,494,496,499,501,503,506,508,
+511,513,515,518,520,522,524,526,527,529,531,532,533,535,536,537,538,539,541,541,542,
+543,544,545,545,546,546,546,547,547,547,546,546,545,545,544,543,542,541,540,539,538,
+538,537,536,536,536,536,536,536,537,538,539,541,543,545,547,549,552,554,557,560,562,
+564,567,569,571,573,574,575,576,577,577,578,577,577,577,576,575,574,573,572,571,569,
+568,567,566,565,564,563,562,561,560,559,558,556,555,554,552,550,548,546,543,540,537,
+534,531,527,524,520,516,512,508,505,501,498,495,492,489,487,486,484,484,483,484,484,
+485,487,489,491,494,497,500,503,507,511,514,518,522,526,529,532,536,539,541,544,546,
+548,550,552,554,555,556,558,559,560,562,563,565,567,569,571,574,576,579,583,586,590,
+594,598,603,607,612,617,621,626,631,636,640,644,648,652,656,659,662,665,667,669,671,
+673,674,676,677,678,679,680,681,682,683,684,685,687,688,690,692,694,696,699,702,705,
+708,712,715,719,723,727,731,736,740,745,749,754,759,764,769,774,780,785,790,796,801,
+806,812,817,822,827,832,837,842,846,850,855,858,862,866,869,872,875,878,882,885,888,
+892,895,899,904,909,914,919,926,933,940,948,957,966,975,985,996,1007,1018,1029,1040,1051,
+1063,1074,1085,1096,1106,1116,1126,1136,1145,1154,1163,1171,1180,1188,1197,1206,1214,1224,1233,1243,1253,
+1264,1275,1287,1299,1312,1325,1339,1353,1367,1381,1395,1409,1423,1436,1449,1462,1474,1485,1496,1506,1515,
+1523,1531,1538,1545,1551,1557,1563,1568,1574,1579,1585,1591,1597,1604,1611,1619,1627,1636,1645,1655,1665,
+1675,1686,1696,1707,1718,1728,1738,1747,1756,1765,1772,1779,1785,1790,1795,1798,1801,1804,1805,1807,1808,
+1809,1809,1810,1811,1812,1813,1815,1818,1821,1825,1829,1835,1841,1847,1854,1862,1870,1879,1888,1897,1906,
+1915,1923,1932,1940,1948,1955,1962,1968,1974,1979,1983,1986,1989,1992,1993,1995,1996,1996,1996,1996,1996,
+1996,1996,1996,1995,1995,1996,1996,1996,1997,1997,1998,1999,2000,2001,2003,2004,2005,2006,2007,2008,2008,
+2009,2010,2010,2010,2010,2011,2011,2011,2011,2011,2011,2012,2012,2013,2014,2015,2017,2019,2021,2023,2026,
+2029,2032,2036,2039,2043,2047,2051,2055,2059,2063,2067,2071,2075,2079,2083,2087,2091,2095,2100,2104,2108,
+2113,2118,2123,2129,2134,2141,2147,2155,2162,2170,2179,2188,2198,2207,2218,2229,2240,2251,2263,2274,2286,
+2298,2310,2322,2334,2346,2358,2370,2382,2393,2405,2416,2427,2439,2450,2462,2473,2485,2497,2509,2521,2534,
+2547,2560,2573,2587,2601,2616,2630,2645,2660,2675,2691,2706,2721,2736,2751,2765,2780,2794,2807,2820,2833,
+2845,2856,2867,2877,2887,2897,2905,2914,2921,2929,2936,2942,2948,2954,2960,2965,2970,2975,2979,2984,2988,
+2992,2995,2998,3001,3004,3006,3008,3009,3009,3009,3009,3008,3006,3003,3000,2996,2991,2986,2980,2974,2966,
+2959,2951,2942,2933,2924,2915,2906,2897,2888,2879,2870,2862,2855,2847,2841,2835,2829,2825,2821,2817,2814,
+2812,2810,2808,2807,2806,2806,2805,2805,2804,2804,2803,2802,2800,2799,2797,2794,2791,2787,2783,2779,2775,
+2770,2765,2760,2754,2749,2744,2740,2736,2732,2729,2726,2725,2724,2724,2725,2727,2730,2734,2739,2744,2751,
+2758,2766,2775,2784,2794,2803,2813,2823,2833,2843,2852,2861,2869,2877,2884,2890,2896,2900,2904,2907,2909,
+2910,2910,2909,2908,2906,2904,2901,2897,2894,2889,2885,2881,2876,2872,2867,2863,2859,2855,2851,2847,2889,
+2882,2875,2868,2861,2855,2848,2842,2837,2832,2827,2823,2819,2815,2812,2809,2807,2805,2803,2801,2800,2799,
+2798,2797,2796,2795,2794,2793,2793,2792,2791,2791,2791,2791,2791,2791,2792,2793,2794,2796,2798,2800,2803,
+2806,2809,2812,2816,2819,2822,2825,2828,2830,2832,2833,2834,2833,2832,2830,2826,2822,2816,2810,2802,2794,
+2784,2774,2762,2750,2738,2725,2712,2698,2684,2671,2657,2644,2631,2619,2607,2596,2585,2574,2565,2556,2547,
+2539,2532,2525,2518,2512,2506,2500,2494,2488,2482,2476,2470,2464,2458,2451,2444,2437,2430,2422,2414,2405,
+2397,2388,2379,2370,2361,2352,2342,2333,2323,2313,2304,2294,2285,2275,2266,2257,2248,2239,2230,2221,2212,
+2204,2195,2187,2179,2170,2162,2154,2146,2138,2130,2122,2113,2105,2096,2087,2078,2069,2059,2049,2039,2029,
+2019,2008,1997,1987,1976,1966,1955,1946,1936,1927,1918,1910,1902,1895,1889,1883,1878,1873,1869,1866,1863,
+1860,1857,1854,1852,1848,1845,1841,1837,1832,1826,1819,1811,1803,1793,1783,1772,1760,1747,1734,1721,1707,
+1694,1681,1668,1656,1644,1634,1625,1617,1610,1604,1600,1597,1596,1596,1597,1599,1602,1606,1610,1615,1620,
+1625,1630,1634,1639,1642,1645,1648,1649,1650,1650,1650,1649,1647,1645,1642,1639,1637,1633,1630,1627,1624,
+1622,1619,1617,1614,1612,1610,1607,1605,1602,1598,1594,1589,1584,1577,1569,1560,1550,1539,1526,1513,1498,
+1482,1465,1447,1429,1410,1391,1371,1352,1333,1314,1296,1278,1261,1245,1230,1216,1203,1191,1180,1171,1162,
+1154,1147,1140,1134,1129,1123,1119,1114,1109,1104,1099,1094,1089,1083,1077,1071,1064,1057,1050,1043,1035,
+1027,1019,1011,1003,995,987,980,972,964,957,949,942,935,928,921,914,907,901,894,887,880,
+874,867,860,852,845,837,830,822,814,805,797,788,780,771,762,753,744,735,726,717,708,
+699,691,682,674,667,660,653,646,640,635,630,626,622,619,617,615,614,613,613,613,614,
+615,617,618,620,622,624,626,628,630,631,633,634,634,635,635,634,633,632,631,629,627,
+625,622,620,617,614,611,609,606,604,601,599,597,595,593,591,589,588,587,585,584,583,
+582,581,580,580,579,578,577,577,577,576,576,577,577,578,579,581,582,584,587,590,593,
+596,600,603,607,611,615,618,621,624,627,629,631,632,632,632,631,630,628,626,623,620,
+616,613,609,605,602,599,596,594,593,592,592,593,595,597,601,605,610,615,621,627,633,
+640,646,652,657,662,667,670,673,674,674,673,671,668,664,659,653,646,638,629,620,611,
+601,592,582,573,564,555,547,539,532,525,519,513,508,504,500,496,493,491,488,486,484,
+482,480,479,477,475,474,473,471,470,469,467,466,465,464,463,462,461,460,459,457,455,
+454,451,449,445,442,438,434,429,424,419,414,408,403,398,394,390,387,384,384,384,386,
+390,395,402,411,422,435,450,466,484,504,524,545,567,589,611,632,652,672,690,706,720,
+731,741,747,751,752,750,745,737,727,714,700,683,665,645,624,603,581,559,538,517,497,
+477,459,443,428,415,403,394,385,379,374,370,368,367,367,368,369,371,374,376,379,382,
+384,386,388,389,390,391,391,391,390,390,388,387,386,384,383,381,380,378,377,376,375,
+375,374,374,374,374,374,374,374,374,374,374,374,374,374,373,373,372,371,370,369,368,
+367,365,364,363,363,362,362,361,361,362,362,363,364,365,366,368,370,371,373,375,377,
+378,380,381,382,383,384,384,385,385,385,384,384,383,383,382,382,381,381,381,381,382,
+383,384,385,387,390,392,395,399,403,407,411,415,420,424,429,434,438,443,447,451,455,
+459,462,465,468,471,473,475,476,478,479,480,480,480,481,480,480,480,479,479,478,477,
+476,475,474,472,471,469,468,467,465,464,462,461,460,459,458,457,456,456,455,455,455,
+456,456,457,458,459,460,461,463,464,466,467,468,470,471,472,473,474,475,475,476,476,
+476,476,476,476,475,475,475,474,474,474,473,473,473,473,473,473,474,474,475,475,476,
+476,477,477,478,478,478,478,479,479,479,479,479,478,478,478,478,478,478,478,479,479,
+480,481,482,483,485,487,489,491,493,495,498,500,503,505,507,509,511,513,515,516,517,
+518,518,518,518,518,518,517,516,515,514,512,511,509,507,505,504,502,500,498,496,494,
+491,489,487,484,481,478,475,472,469,465,462,458,454,450,446,442,438,434,430,426,422,
+419,416,413,410,408,407,405,404,404,404,404,405,406,408,409,412,414,417,420,424,427,
+431,434,438,442,446,450,454,457,461,465,468,471,474,478,480,483,486,489,491,494,496,
+499,501,503,506,508,511,514,517,520,523,526,529,533,537,541,545,549,553,557,562,566,
+570,574,578,582,586,589,592,595,598,600,602,604,605,606,607,608,609,609,609,610,610,
+610,610,611,611,612,613,614,615,617,619,621,623,626,628,632,635,638,642,645,649,653,
+657,661,665,670,674,678,682,687,691,695,699,704,708,713,717,722,727,731,736,741,746,
+751,755,761,766,771,776,782,787,793,799,805,812,819,826,834,842,851,860,870,881,891,
+903,915,927,940,954,967,981,995,1010,1024,1038,1052,1065,1078,1091,1104,1115,1126,1137,1147,1156,
+1165,1174,1182,1189,1197,1204,1212,1219,1227,1235,1243,1252,1261,1271,1281,1292,1303,1315,1327,1340,1352,
+1365,1378,1390,1402,1414,1425,1435,1445,1454,1462,1469,1476,1481,1486,1490,1494,1497,1499,1502,1504,1506,
+1509,1512,1516,1520,1524,1530,1536,1543,1551,1559,1569,1578,1589,1599,1610,1621,1632,1643,1654,1664,1674,
+1683,1692,1700,1708,1714,1721,1727,1732,1737,1742,1747,1751,1756,1762,1767,1774,1781,1789,1797,1807,1817,
+1828,1840,1853,1867,1881,1896,1911,1927,1942,1958,1973,1988,2003,2017,2030,2043,2055,2065,2075,2084,2091,
+2098,2104,2108,2112,2115,2116,2117,2118,2117,2117,2115,2113,2111,2108,2105,2102,2098,2095,2091,2086,2082,
+2077,2072,2067,2062,2056,2051,2045,2038,2032,2026,2019,2012,2005,1999,1992,1985,1979,1972,1966,1960,1955,
+1950,1945,1941,1938,1935,1932,1930,1929,1928,1928,1928,1929,1930,1932,1934,1936,1939,1941,1944,1947,1950,
+1953,1955,1958,1961,1964,1967,1969,1972,1975,1978,1981,1984,1988,1991,1996,2000,2006,2012,2018,2025,2033,
+2042,2051,2061,2072,2084,2096,2109,2123,2137,2152,2167,2183,2199,2215,2231,2248,2264,2281,2297,2313,2330,
+2346,2362,2378,2393,2409,2424,2439,2454,2469,2484,2499,2514,2528,2543,2558,2573,2588,2603,2618,2633,2649,
+2664,2679,2694,2710,2725,2740,2755,2770,2784,2799,2813,2827,2841,2854,2867,2880,2893,2905,2917,2928,2939,
+2950,2960,2970,2980,2989,2997,3005,3013,3020,3026,3032,3037,3042,3045,3048,3051,3052,3053,3053,3052,3050,
+3047,3044,3039,3034,3028,3020,3013,3004,2995,2985,2975,2964,2953,2942,2930,2919,2907,2896,2885,2874,2864,
+2855,2846,2838,2831,2825,2820,2816,2813,2812,2812,2813,2815,2818,2823,2828,2834,2842,2850,2859,2868,2877,
+2887,2897,2907,2916,2925,2934,2942,2949,2956,2961,2966,2969,2971,2972,2972,2971,2969,2965,2961,2956,2950,
+2944,2937,2929,2922,2914,2907,2899,2892,2885,2879,2873,2869,2865,2861,2859,2858,2857,2857,2859,2861,2864,
+2867,2871,2876,2881,2887,2893,2899,2905,2911,2917,2922,2928,2932,2937,2940,2944,2946,2948,2948,2949,2948,
+2946,2944,2941,2937,2933,2928,2922,2916,2910,2903,2896,2889,2947,2938,2929,2920,2911,2902,2893,2884,2876,
+2868,2861,2855,2849,2845,2842,2839,2838,2838,2838,2840,2842,2845,2849,2853,2858,2863,2869,2875,2881,2887,
+2893,2899,2905,2911,2917,2923,2928,2934,2939,2944,2949,2954,2959,2963,2967,2970,2973,2976,2977,2978,2978,
+2977,2975,2972,2968,2962,2955,2946,2937,2925,2913,2899,2884,2868,2852,2834,2816,2797,2778,2759,2740,2721,
+2703,2685,2668,2652,2637,2622,2609,2597,2586,2576,2567,2559,2552,2546,2540,2534,2529,2524,2519,2513,2508,
+2502,2496,2490,2483,2475,2467,2459,2450,2440,2430,2420,2409,2399,2388,2377,2366,2355,2344,2333,2323,2313,
+2303,2294,2285,2276,2268,2260,2252,2244,2236,2229,2221,2214,2206,2199,2191,2183,2175,2167,2159,2150,2141,
+2132,2122,2112,2102,2091,2081,2070,2059,2048,2036,2025,2014,2002,1991,1980,1970,1959,1949,1940,1931,1923,
+1915,1909,1903,1898,1894,1890,1888,1887,1886,1886,1886,1887,1889,1890,1892,1894,1895,1896,1896,1895,1893,
+1890,1887,1881,1875,1867,1858,1847,1836,1823,1810,1796,1781,1767,1752,1737,1723,1710,1698,1687,1677,1669,
+1663,1658,1654,1653,1653,1655,1657,1662,1667,1673,1680,1687,1694,1700,1707,1713,1718,1723,1726,1729,1730,
+1730,1730,1728,1726,1722,1718,1714,1709,1704,1699,1694,1689,1685,1680,1676,1672,1668,1665,1661,1657,1653,
+1648,1643,1637,1630,1622,1613,1602,1590,1577,1562,1546,1528,1510,1490,1469,1447,1425,1402,1380,1357,1335,
+1313,1292,1273,1254,1236,1220,1205,1192,1180,1170,1160,1152,1146,1140,1135,1130,1127,1123,1120,1116,1113,
+1109,1105,1100,1095,1090,1083,1077,1069,1061,1052,1043,1033,1023,1012,1002,991,980,969,958,947,936,
+926,916,907,897,888,880,872,864,857,851,845,839,834,829,824,819,815,811,807,803,800,
+796,791,787,782,777,772,766,760,753,746,738,730,722,713,704,695,686,677,668,659,651,
+643,636,629,623,618,614,611,608,607,607,607,608,610,613,616,620,623,627,631,634,637,
+639,641,642,642,642,640,637,634,629,624,618,611,603,595,587,579,570,562,554,546,539,
+532,527,521,517,514,511,509,508,508,508,509,510,512,513,515,517,519,520,522,523,524,
+524,524,524,523,523,522,521,519,518,518,517,516,516,516,517,518,520,522,524,526,529,
+532,536,539,542,545,548,550,552,554,555,556,556,555,555,553,552,550,548,545,543,541,
+539,538,537,536,536,537,538,540,543,546,550,554,558,563,568,572,577,581,585,588,591,
+592,593,593,592,590,587,584,579,573,567,561,554,546,538,531,523,516,508,501,495,489,
+483,478,474,470,466,463,460,457,455,453,451,449,447,445,443,441,438,436,434,431,429,
+427,424,422,420,418,416,414,413,411,410,408,407,405,403,401,399,396,393,390,386,382,
+378,374,369,365,360,356,353,350,348,347,347,349,352,357,364,372,383,395,409,425,443,
+462,482,502,524,545,567,587,607,626,643,659,672,683,691,696,699,699,696,690,681,670,
+657,641,624,605,585,565,543,522,501,481,461,443,425,409,395,382,371,361,353,347,342,
+339,336,335,335,335,336,337,339,340,342,343,344,345,346,346,345,345,344,343,341,339,
+338,336,334,332,331,329,328,328,327,327,327,328,329,330,331,333,334,336,338,340,341,
+343,345,346,348,349,350,350,351,351,352,352,352,352,352,352,352,353,353,353,354,354,
+355,356,357,358,359,360,361,362,363,364,365,366,366,366,367,366,366,366,365,364,363,
+362,361,360,359,358,357,357,356,356,356,357,358,359,361,363,366,369,372,375,379,383,
+387,391,396,400,404,409,413,417,420,424,427,430,433,435,437,439,441,443,444,445,446,
+447,448,449,450,451,451,452,452,453,453,454,454,454,454,454,454,453,452,452,451,450,
+448,447,446,444,443,441,440,439,438,437,436,435,434,434,434,434,434,435,435,436,437,
+438,438,439,440,440,440,441,440,440,439,439,438,436,435,433,431,429,427,425,423,421,
+419,418,416,415,414,413,413,413,413,414,414,415,416,418,419,421,422,424,426,427,429,
+430,432,433,434,435,436,437,438,439,439,440,441,442,443,444,445,447,448,450,451,453,
+455,456,458,460,461,463,464,465,465,466,466,466,465,465,463,462,460,458,456,454,451,
+448,445,442,439,436,433,429,426,423,420,417,413,410,407,404,401,398,394,391,388,385,
+381,378,375,372,369,365,363,360,357,355,352,351,349,347,346,346,345,345,345,345,346,
+347,348,350,352,353,355,358,360,363,365,368,371,374,377,380,383,386,390,393,397,401,
+404,408,412,416,420,424,427,431,435,439,443,446,450,453,457,460,463,466,469,471,474,
+476,479,482,484,487,489,492,495,497,500,503,506,509,512,515,518,521,523,526,528,531,
+533,534,536,537,538,538,539,539,538,538,537,536,535,534,533,532,531,531,530,530,530,
+531,531,532,534,536,538,541,543,547,550,554,558,562,566,570,574,578,582,587,591,595,
+599,603,607,611,616,620,624,628,633,637,642,647,652,658,663,669,676,683,690,698,706,
+714,723,733,743,754,766,778,791,804,818,833,848,863,880,897,914,931,949,967,984,1002,
+1020,1037,1054,1070,1085,1100,1114,1127,1139,1150,1160,1169,1178,1185,1192,1198,1204,1209,1214,1219,1224,
+1228,1234,1239,1245,1251,1258,1266,1274,1282,1291,1301,1310,1320,1329,1339,1348,1358,1366,1374,1382,1388,
+1394,1399,1404,1407,1410,1413,1415,1417,1418,1420,1421,1423,1425,1428,1432,1436,1441,1447,1453,1461,1469,
+1478,1488,1498,1509,1520,1531,1543,1554,1565,1576,1587,1597,1606,1616,1625,1633,1641,1650,1658,1666,1675,
+1684,1693,1703,1714,1726,1739,1753,1768,1785,1802,1820,1840,1860,1880,1902,1923,1945,1967,1988,2009,2029,
+2048,2066,2083,2099,2113,2126,2138,2148,2157,2165,2171,2176,2180,2182,2185,2186,2186,2186,2186,2185,2184,
+2182,2181,2179,2176,2174,2171,2168,2164,2159,2155,2149,2143,2136,2129,2120,2111,2101,2091,2079,2067,2054,
+2041,2028,2014,2000,1985,1971,1957,1944,1930,1918,1906,1894,1884,1874,1866,1858,1851,1846,1841,1838,1835,
+1833,1832,1832,1833,1834,1836,1838,1841,1844,1847,1850,1853,1857,1860,1863,1866,1869,1872,1875,1878,1880,
+1883,1886,1888,1891,1894,1898,1902,1906,1911,1917,1923,1931,1939,1948,1958,1969,1981,1994,2008,2023,2039,
+2055,2073,2092,2111,2131,2151,2172,2193,2215,2237,2259,2281,2303,2325,2347,2369,2390,2411,2432,2452,2472,
+2492,2511,2530,2548,2566,2583,2600,2616,2632,2648,2663,2677,2692,2706,2720,2733,2747,2760,2773,2785,2798,
+2810,2823,2835,2847,2860,2872,2884,2896,2908,2920,2931,2943,2954,2965,2976,2986,2996,3005,3014,3022,3030,
+3036,3042,3047,3051,3055,3057,3058,3058,3057,3054,3051,3047,3041,3035,3027,3019,3009,2999,2988,2976,2963,
+2950,2937,2923,2909,2894,2880,2865,2851,2837,2823,2809,2797,2784,2773,2763,2753,2745,2738,2732,2728,2725,
+2723,2724,2726,2729,2734,2741,2750,2760,2772,2785,2800,2816,2832,2850,2869,2888,2907,2927,2946,2965,2984,
+3002,3019,3035,3049,3062,3074,3084,3092,3098,3102,3105,3105,3104,3101,3097,3090,3083,3074,3064,3053,3041,
+3029,3017,3004,2991,2979,2967,2955,2944,2934,2925,2917,2910,2904,2900,2896,2894,2893,2893,2895,2897,2901,
+2905,2910,2916,2922,2928,2935,2942,2949,2955,2962,2967,2972,2976,2980,2982,2983,2983,2982,2980,2977,2973,
+2968,2961,2954,2947,3023,3020,3016,3010,3005,2998,2991,2984,2977,2970,2964,2958,2953,2949,2946,2945,2944,
+2945,2946,2950,2954,2959,2965,2972,2980,2988,2996,3005,3014,3023,3032,3040,3049,3056,3064,3070,3076,3082,
+3087,3091,3094,3097,3099,3100,3101,3101,3099,3097,3094,3090,3085,3079,3071,3063,3052,3041,3028,3014,2999,
+2983,2965,2946,2926,2906,2884,2863,2841,2819,2797,2775,2754,2734,2714,2696,2679,2662,2648,2634,2622,2612,
+2602,2594,2587,2581,2575,2570,2565,2561,2557,2552,2547,2541,2535,2528,2520,2512,2502,2492,2480,2468,2455,
+2442,2428,2413,2399,2384,2369,2355,2341,2327,2314,2302,2290,2279,2269,2259,2251,2243,2235,2229,2223,2217,
+2211,2206,2200,2195,2190,2184,2178,2172,2165,2158,2150,2142,2133,2124,2115,2105,2095,2084,2073,2062,2051,
+2040,2029,2018,2008,1998,1988,1979,1970,1962,1954,1948,1942,1937,1933,1930,1928,1926,1926,1927,1928,1931,
+1934,1937,1942,1946,1951,1956,1961,1965,1969,1973,1975,1976,1977,1976,1973,1969,1964,1956,1948,1937,1926,
+1913,1899,1884,1869,1853,1836,1820,1805,1790,1776,1763,1751,1741,1733,1726,1721,1717,1716,1715,1717,1719,
+1723,1727,1732,1737,1742,1747,1752,1756,1759,1761,1763,1763,1762,1760,1757,1753,1748,1742,1736,1729,1722,
+1715,1708,1702,1695,1689,1683,1677,1672,1666,1661,1656,1651,1645,1638,1631,1623,1614,1604,1592,1579,1564,
+1548,1530,1511,1491,1470,1448,1424,1401,1377,1353,1330,1307,1285,1264,1244,1225,1208,1192,1179,1166,1156,
+1146,1139,1133,1128,1124,1121,1118,1116,1115,1114,1112,1111,1109,1107,1104,1101,1097,1092,1087,1081,1074,
+1067,1059,1050,1041,1032,1022,1011,1001,990,978,967,956,944,933,922,911,901,890,880,871,862,
+853,846,838,832,826,821,816,813,809,807,804,803,801,800,799,798,797,795,793,791,789,
+786,782,777,772,767,760,754,746,739,731,723,715,708,700,694,687,682,678,674,672,670,
+670,670,672,675,678,682,686,691,695,700,704,707,710,712,712,712,710,706,701,694,686,
+676,665,653,639,625,610,595,580,565,550,535,522,509,498,488,480,473,467,463,461,460,
+460,462,464,467,471,475,479,484,488,492,495,497,499,500,500,499,497,495,491,487,483,
+478,473,468,463,459,454,451,448,445,443,443,443,443,445,447,450,453,457,461,465,469,
+473,477,480,483,486,488,489,490,490,490,489,488,487,486,484,483,482,481,480,480,480,
+481,482,483,486,488,491,493,496,499,502,505,507,509,510,511,511,510,508,506,503,499,
+494,489,484,478,472,466,460,454,449,443,438,434,429,426,422,420,417,415,413,412,410,
+408,407,405,403,401,399,397,394,391,388,384,381,377,374,370,367,364,361,359,357,355,
+353,352,351,350,349,348,348,347,346,344,343,341,339,336,334,331,328,325,323,320,319,
+318,318,319,322,326,331,338,347,357,369,383,398,414,432,450,469,488,507,526,543,560,
+575,589,600,609,616,620,621,620,616,609,601,589,576,562,545,528,510,492,473,455,437,
+420,404,389,376,364,354,345,338,332,327,324,322,321,321,321,321,322,323,323,324,324,
+323,322,321,319,316,313,310,306,302,298,293,289,285,281,278,275,272,270,269,268,268,
+268,269,270,272,274,277,280,283,286,289,292,296,299,302,305,308,310,313,315,318,320,
+321,323,325,327,328,330,331,332,334,335,337,338,339,341,342,343,344,345,346,347,348,
+348,349,349,349,349,348,348,347,346,346,345,344,344,343,342,342,342,342,342,343,344,
+345,347,349,352,354,357,360,364,367,371,375,379,383,387,391,394,398,401,404,407,410,
+412,415,417,418,420,422,423,424,425,427,428,429,430,431,433,434,435,436,438,439,440,
+441,442,442,443,443,443,443,443,442,441,439,438,436,434,432,429,427,425,422,420,418,
+416,414,413,411,410,409,409,408,408,408,409,409,409,410,410,410,411,411,411,410,409,
+409,407,406,404,403,401,398,396,394,391,389,387,385,383,382,381,380,379,379,379,380,
+380,382,383,385,387,389,391,393,395,398,400,402,404,406,407,409,410,411,412,413,413,
+414,414,415,415,416,416,417,417,418,418,419,420,420,421,422,422,423,423,423,422,422,
+421,419,417,415,413,409,406,403,399,394,390,385,381,376,371,366,361,357,352,348,344,
+340,336,332,329,326,323,320,318,315,313,311,309,307,305,303,302,300,299,298,297,296,
+296,296,296,296,297,298,299,300,302,303,305,307,310,312,314,317,319,321,323,326,328,
+330,332,334,336,338,340,343,345,347,350,352,355,358,362,365,369,373,377,381,385,389,
+394,398,402,406,410,413,417,420,423,425,428,430,432,433,435,436,437,438,439,440,441,
+442,444,445,446,448,450,452,454,456,458,460,462,464,466,467,469,470,470,471,471,470,
+470,469,467,466,464,462,460,458,455,454,452,450,449,449,448,449,449,451,453,455,458,
+461,465,469,474,478,483,489,494,499,505,510,515,520,525,530,534,539,544,548,552,557,
+561,566,571,576,581,587,593,600,607,614,623,632,641,651,662,674,686,699,713,727,742,
+758,775,792,810,828,847,866,886,905,925,945,964,983,1002,1020,1038,1054,1070,1085,1099,1111,
+1123,1133,1142,1150,1157,1164,1169,1174,1178,1181,1185,1188,1191,1194,1198,1202,1207,1212,1218,1224,1231,
+1239,1247,1255,1264,1272,1281,1290,1298,1306,1314,1321,1327,1333,1339,1343,1347,1351,1354,1357,1360,1363,
+1366,1370,1374,1378,1384,1390,1397,1405,1415,1425,1436,1448,1460,1474,1487,1501,1515,1529,1543,1556,1570,
+1582,1594,1605,1616,1626,1636,1645,1654,1664,1673,1683,1693,1704,1716,1729,1743,1759,1776,1794,1814,1835,
+1857,1880,1903,1927,1952,1976,2000,2023,2045,2066,2085,2102,2118,2132,2143,2152,2159,2164,2167,2168,2168,
+2166,2163,2159,2154,2148,2143,2137,2132,2126,2122,2117,2114,2110,2108,2106,2104,2102,2100,2098,2096,2093,
+2090,2085,2080,2073,2066,2057,2046,2035,2022,2007,1992,1976,1959,1941,1923,1905,1887,1868,1850,1833,1817,
+1801,1786,1773,1761,1750,1741,1733,1726,1721,1718,1716,1714,1715,1716,1718,1721,1725,1730,1735,1740,1746,
+1752,1759,1765,1771,1777,1784,1789,1795,1801,1806,1811,1816,1821,1825,1830,1834,1839,1843,1848,1853,1858,
+1864,1870,1877,1884,1892,1901,1911,1922,1934,1948,1962,1977,1994,2012,2031,2051,2073,2095,2119,2143,2168,
+2194,2221,2249,2276,2305,2333,2362,2390,2419,2447,2475,2502,2529,2555,2581,2606,2630,2653,2675,2697,2717,
+2736,2755,2772,2789,2805,2820,2834,2847,2860,2873,2884,2896,2907,2917,2927,2938,2947,2957,2967,2976,2986,
+2995,3004,3013,3022,3030,3038,3046,3054,3061,3067,3073,3078,3082,3086,3089,3091,3092,3092,3091,3088,3085,
+3081,3076,3070,3063,3055,3047,3037,3027,3015,3004,2991,2978,2964,2950,2936,2921,2906,2891,2875,2859,2843,
+2828,2812,2796,2781,2766,2751,2737,2724,2711,2700,2689,2680,2671,2665,2659,2656,2654,2654,2656,2660,2666,
+2674,2684,2696,2710,2726,2744,2763,2784,2805,2828,2852,2876,2900,2925,2949,2973,2996,3018,3038,3057,3075,
+3091,3105,3117,3127,3135,3141,3144,3146,3145,3143,3139,3133,3125,3116,3106,3094,3082,3069,3055,3041,3026,
+3012,2998,2984,2970,2958,2946,2934,2924,2916,2908,2902,2897,2894,2892,2892,2893,2896,2900,2906,2912,2920,
+2928,2937,2946,2956,2966,2976,2985,2993,3001,3008,3014,3019,3022,3024,3025,3025,3023,3097,3105,3110,3114,
+3116,3117,3116,3114,3111,3107,3103,3099,3094,3090,3087,3084,3082,3081,3081,3082,3084,3087,3091,3096,3101,
+3107,3114,3120,3126,3132,3138,3144,3148,3152,3155,3158,3159,3160,3159,3158,3155,3152,3148,3144,3138,3132,
+3125,3118,3110,3101,3092,3082,3072,3060,3048,3036,3022,3008,2993,2977,2961,2944,2927,2909,2891,2873,2854,
+2836,2818,2801,2784,2768,2752,2738,2724,2711,2700,2690,2680,2672,2665,2658,2652,2647,2642,2637,2632,2627,
+2622,2616,2609,2602,2594,2584,2574,2563,2550,2537,2522,2507,2491,2475,2458,2440,2423,2406,2389,2372,2356,
+2340,2326,2312,2299,2288,2277,2268,2259,2251,2244,2238,2232,2227,2222,2218,2213,2209,2204,2199,2194,2188,
+2182,2175,2167,2159,2151,2142,2132,2123,2113,2102,2092,2082,2071,2061,2052,2042,2033,2025,2017,2010,2004,
+1999,1994,1990,1987,1985,1983,1983,1983,1984,1986,1988,1991,1995,1999,2003,2008,2013,2018,2023,2028,2032,
+2036,2039,2042,2043,2044,2043,2040,2037,2032,2025,2017,2007,1996,1983,1970,1955,1939,1923,1907,1890,1873,
+1857,1841,1826,1812,1799,1787,1777,1768,1760,1754,1750,1747,1744,1743,1743,1743,1743,1744,1744,1745,1745,
+1744,1742,1740,1737,1734,1729,1724,1718,1711,1705,1697,1690,1683,1676,1669,1662,1656,1650,1644,1639,1634,
+1629,1624,1619,1613,1607,1600,1592,1583,1572,1561,1547,1533,1516,1498,1479,1459,1437,1414,1391,1367,1344,
+1320,1296,1273,1251,1230,1210,1192,1175,1160,1146,1134,1123,1114,1107,1100,1095,1091,1088,1086,1083,1082,
+1081,1079,1078,1077,1075,1074,1072,1070,1068,1065,1062,1059,1056,1052,1048,1044,1039,1035,1030,1024,1018,
+1012,1006,998,991,983,975,966,957,947,937,927,918,908,898,889,880,871,863,856,849,843,
+838,834,830,827,825,823,822,821,820,820,819,819,817,816,814,812,809,806,802,797,792,
+787,781,775,770,764,759,754,750,747,744,742,741,742,743,745,748,752,756,761,767,772,
+777,782,786,789,792,792,792,790,786,780,773,763,752,739,724,708,691,673,654,635,615,
+596,577,558,541,525,510,497,486,476,468,462,458,455,455,455,457,459,463,467,470,474,
+478,481,483,485,485,484,483,479,475,469,463,455,447,438,428,419,409,400,391,382,375,
+368,362,357,354,352,350,350,352,354,357,360,365,369,374,380,385,390,394,399,403,406,
+409,411,413,414,415,415,415,415,415,415,415,414,415,415,415,416,417,419,420,422,424,
+426,427,429,430,431,431,431,430,428,426,423,420,416,411,406,401,396,390,384,379,374,
+369,364,360,357,353,351,349,347,345,344,343,342,341,340,339,337,336,334,331,329,325,
+322,319,315,311,307,304,300,297,294,292,291,289,289,289,289,290,292,293,295,297,298,
+300,301,302,303,303,303,302,301,300,298,297,295,294,294,294,294,296,299,303,309,316,
+325,335,346,358,372,387,402,417,433,448,463,477,490,501,511,519,524,527,528,527,524,
+518,510,500,489,476,462,447,432,417,401,386,372,359,347,336,327,319,313,307,304,301,
+300,300,300,301,302,303,305,306,306,306,306,304,302,299,295,291,286,280,274,268,261,
+254,248,242,236,231,226,222,218,216,214,213,212,213,214,215,217,220,223,226,230,234,
+238,242,246,249,253,257,261,265,268,272,275,279,282,285,289,292,295,298,301,304,307,
+309,312,314,317,319,321,322,324,325,326,327,327,328,328,328,328,328,328,328,327,327,
+327,327,328,328,329,330,331,332,334,336,338,341,343,346,350,353,357,360,364,368,371,
+375,379,382,385,388,391,394,396,398,400,402,403,405,406,407,408,409,410,412,413,414,
+415,417,418,420,422,423,425,427,429,431,432,434,435,436,437,437,437,437,437,436,434,
+432,430,428,425,422,419,416,412,409,406,403,400,397,395,392,390,389,387,386,385,384,
+384,383,383,383,383,382,382,382,381,381,380,379,378,377,375,374,372,370,369,367,366,
+364,363,362,361,361,360,361,361,362,363,364,366,367,369,372,374,376,379,381,383,385,
+387,389,390,391,392,392,392,392,392,391,390,389,387,386,384,383,381,379,378,377,375,
+374,373,372,371,370,370,369,368,367,366,365,363,362,360,357,354,351,348,344,340,336,
+331,326,321,316,311,306,301,296,291,287,283,279,275,272,269,267,265,263,261,259,258,
+257,256,255,255,254,254,253,253,253,253,253,253,254,254,255,256,258,259,261,263,265,
+268,270,273,275,278,281,283,286,289,291,293,295,297,299,301,302,304,305,307,308,310,
+311,313,315,317,319,321,324,327,330,333,336,340,343,346,350,353,356,359,362,364,367,
+368,370,371,372,373,373,373,373,373,373,372,372,372,372,372,372,373,373,374,375,377,
+378,380,382,384,386,388,389,391,392,394,394,395,395,395,394,393,391,390,388,386,384,
+382,380,378,376,375,374,374,374,375,376,378,381,384,388,393,398,403,409,415,422,428,
+435,441,448,454,461,467,473,478,484,489,494,499,504,509,514,520,525,531,537,544,551,
+558,566,575,585,595,605,617,629,642,655,669,684,700,716,732,749,767,785,803,821,839,
+858,876,894,912,930,947,963,979,993,1007,1020,1031,1042,1052,1060,1067,1074,1080,1085,1089,1093,
+1096,1099,1103,1106,1110,1115,1120,1125,1132,1139,1147,1156,1166,1176,1187,1198,1209,1221,1232,1243,1254,
+1265,1275,1284,1293,1301,1309,1315,1322,1328,1333,1339,1345,1351,1358,1365,1373,1383,1393,1405,1418,1432,
+1448,1465,1483,1501,1521,1541,1561,1582,1602,1622,1641,1659,1677,1693,1708,1723,1736,1748,1759,1769,1779,
+1789,1799,1809,1819,1829,1841,1854,1867,1882,1898,1915,1933,1952,1972,1992,2012,2032,2051,2070,2087,2103,
+2116,2128,2137,2144,2148,2149,2148,2144,2138,2129,2119,2107,2094,2080,2065,2050,2035,2021,2008,1995,1984,
+1974,1965,1957,1951,1946,1942,1939,1936,1934,1931,1929,1925,1921,1916,1910,1902,1893,1882,1870,1856,1841,
+1824,1806,1788,1769,1749,1729,1710,1691,1673,1655,1639,1625,1612,1601,1592,1584,1578,1575,1573,1573,1574,
+1577,1582,1587,1594,1602,1611,1620,1630,1640,1650,1661,1672,1683,1694,1705,1715,1726,1736,1747,1757,1766,
+1776,1785,1795,1804,1813,1821,1830,1838,1846,1854,1862,1871,1879,1887,1895,1904,1913,1923,1933,1944,1955,
+1967,1980,1995,2010,2026,2044,2063,2083,2105,2128,2152,2178,2205,2233,2262,2292,2324,2355,2388,2421,2455,
+2488,2522,2556,2589,2622,2654,2686,2717,2747,2776,2804,2831,2856,2881,2904,2925,2946,2965,2983,3000,3016,
+3030,3044,3057,3068,3079,3089,3099,3108,3116,3124,3131,3138,3144,3150,3156,3161,3165,3169,3173,3176,3179,
+3181,3183,3184,3184,3184,3184,3182,3180,3178,3175,3171,3167,3162,3157,3151,3144,3137,3130,3122,3113,3104,
+3095,3085,3074,3063,3052,3040,3028,3015,3002,2988,2973,2958,2943,2927,2911,2894,2877,2860,2842,2825,2807,
+2790,2773,2756,2740,2725,2711,2698,2686,2676,2668,2661,2656,2654,2654,2656,2660,2666,2675,2686,2699,2714,
+2731,2750,2770,2792,2814,2838,2862,2886,2910,2935,2958,2982,3004,3026,3046,3066,3084,3100,3115,3128,3139,
+3149,3157,3163,3168,3170,3171,3170,3168,3163,3157,3149,3140,3129,3117,3103,3088,3073,3056,3039,3022,3004,
+2987,2969,2953,2938,2923,2911,2900,2890,2884,2879,2877,2877,2879,2884,2891,2901,2912,2925,2939,2954,2971,
+2987,3004,3020,3036,3051,3065,3077,3088,3097,3138,3154,3168,3180,3189,3195,3199,3200,3200,3198,3194,3189,
+3184,3178,3172,3166,3161,3156,3152,3149,3147,3146,3146,3147,3148,3150,3152,3155,3157,3159,3161,3162,3162,
+3162,3160,3157,3153,3148,3143,3136,3128,3119,3110,3100,3090,3080,3069,3059,3048,3038,3027,3017,3007,2998,
+2988,2979,2970,2961,2952,2944,2935,2926,2917,2908,2899,2890,2881,2872,2863,2854,2845,2836,2828,2820,2812,
+2804,2797,2790,2783,2777,2771,2765,2759,2753,2747,2740,2734,2727,2720,2712,2703,2694,2685,2674,2663,2650,
+2638,2624,2610,2595,2580,2564,2548,2532,2516,2500,2484,2469,2454,2440,2426,2413,2400,2388,2378,2367,2358,
+2349,2341,2334,2327,2320,2314,2307,2301,2295,2288,2281,2274,2266,2258,2250,2241,2231,2222,2211,2201,2190,
+2179,2168,2157,2146,2136,2125,2116,2106,2098,2089,2082,2075,2069,2064,2059,2055,2052,2049,2047,2045,2044,
+2043,2043,2043,2043,2044,2044,2045,2046,2047,2048,2049,2050,2051,2051,2051,2051,2049,2048,2045,2042,2038,
+2033,2026,2019,2010,2001,1990,1978,1965,1951,1937,1922,1906,1890,1874,1858,1843,1828,1813,1799,1787,1775,
+1764,1754,1745,1737,1730,1724,1718,1714,1709,1705,1701,1697,1693,1689,1684,1679,1674,1668,1663,1656,1650,
+1644,1637,1631,1624,1619,1613,1608,1603,1598,1594,1591,1587,1584,1580,1576,1572,1567,1561,1554,1547,1537,
+1526,1514,1500,1485,1468,1449,1430,1409,1387,1364,1341,1318,1295,1272,1249,1228,1207,1188,1169,1152,1137,
+1123,1110,1099,1088,1079,1071,1064,1058,1052,1047,1042,1037,1033,1029,1025,1021,1017,1014,1011,1008,1005,
+1002,1001,999,998,998,997,998,998,999,1000,1001,1001,1002,1002,1001,1000,998,995,991,986,981,
+974,967,959,951,941,932,922,912,902,893,884,875,867,859,853,847,841,836,832,829,826,
+823,820,818,816,813,811,808,805,801,798,793,789,785,780,775,770,765,761,757,753,751,
+748,747,746,746,747,749,752,755,759,764,769,774,779,784,789,793,796,798,799,799,798,
+794,790,783,775,765,754,741,727,711,695,677,660,642,623,606,588,571,556,541,527,515,
+505,496,488,482,478,474,472,471,471,471,471,472,472,472,471,470,468,464,459,454,447,
+438,429,418,406,394,381,368,354,340,327,313,301,289,279,269,261,254,248,244,241,239,
+239,240,243,246,250,254,259,265,271,277,282,288,294,299,304,308,312,315,319,322,324,
+326,328,330,332,334,336,338,339,341,343,345,347,348,350,351,352,352,352,352,351,349,
+347,344,341,337,332,328,323,318,313,307,303,298,294,290,286,283,281,279,278,277,276,
+276,276,276,276,276,275,274,273,272,270,267,264,261,258,254,250,246,242,238,235,233,
+230,229,228,228,229,230,232,235,238,241,245,248,252,256,259,262,264,266,267,267,267,
+267,266,265,264,263,262,261,262,263,265,268,272,277,284,292,301,312,323,335,347,360,
+373,385,397,409,419,427,434,440,443,445,444,441,437,430,422,412,401,389,377,364,350,
+337,325,313,301,291,282,275,269,264,261,258,257,258,258,260,262,264,266,268,270,271,
+272,271,270,268,266,262,258,252,247,241,234,228,221,215,209,203,198,193,189,186,183,
+182,181,180,180,181,182,184,186,188,191,194,197,200,203,206,209,212,215,219,222,226,
+229,233,237,241,245,250,254,259,263,268,272,277,281,285,289,293,296,299,302,304,306,
+308,309,310,311,312,312,312,312,312,313,313,313,314,314,315,316,318,319,321,324,326,
+329,332,335,339,342,346,350,353,357,360,364,367,370,373,376,378,381,383,385,386,387,
+389,390,391,392,392,393,394,395,396,397,399,400,402,404,406,408,410,413,415,417,419,
+421,423,425,426,427,428,428,428,427,426,424,422,420,417,414,411,408,404,400,397,393,
+390,387,384,381,378,376,374,372,371,369,368,367,366,365,364,363,362,361,360,358,357,
+355,353,352,350,348,346,344,342,341,339,338,337,336,336,336,336,337,337,339,340,342,
+343,345,348,350,352,354,357,359,361,362,364,365,366,366,366,366,365,364,363,361,359,
+356,354,350,347,344,340,336,332,329,325,321,317,314,311,308,305,302,300,297,295,293,
+291,290,288,286,284,282,280,278,275,273,270,267,264,261,257,254,250,247,243,240,237,
+234,231,228,226,224,222,220,219,218,217,216,216,215,215,215,215,214,214,214,214,214,
+214,214,214,214,214,215,215,216,217,219,220,222,224,227,229,232,235,238,241,244,247,
+249,252,255,257,260,262,264,265,267,268,270,271,272,273,274,276,277,278,279,280,282,
+283,285,286,288,289,291,292,294,295,296,297,298,299,299,299,300,300,299,299,298,298,
+297,296,295,295,294,293,292,292,292,291,291,291,292,292,293,293,294,295,296,298,299,
+300,301,301,302,303,303,303,303,303,302,302,301,300,300,299,298,298,298,299,300,301,
+303,305,309,312,317,322,327,334,340,347,354,362,370,377,385,393,400,408,415,422,429,
+436,442,449,455,461,468,474,481,488,495,502,510,518,527,536,545,555,566,577,588,600,
+612,625,638,651,665,679,693,707,722,736,751,766,780,795,809,823,837,850,863,875,887,
+898,908,918,926,934,941,947,953,958,962,967,971,974,978,983,987,993,999,1006,1014,1023,
+1033,1044,1056,1069,1083,1097,1113,1128,1144,1160,1176,1192,1207,1221,1235,1248,1260,1271,1281,1291,1300,
+1309,1317,1326,1335,1345,1355,1366,1379,1393,1408,1425,1444,1464,1486,1510,1535,1561,1588,1615,1643,1670,
+1698,1724,1750,1774,1797,1819,1838,1856,1872,1886,1899,1910,1920,1928,1936,1943,1950,1957,1964,1971,1979,
+1987,1996,2006,2016,2027,2038,2049,2060,2070,2080,2089,2096,2102,2105,2107,2107,2104,2099,2092,2082,2070,
+2057,2042,2025,2007,1989,1971,1952,1934,1916,1899,1884,1869,1856,1844,1833,1823,1815,1807,1800,1793,1786,
+1779,1771,1762,1753,1742,1730,1716,1701,1685,1667,1648,1628,1607,1586,1564,1543,1523,1503,1485,1468,1454,
+1441,1431,1423,1418,1415,1415,1418,1423,1430,1439,1450,1463,1477,1493,1509,1526,1543,1560,1578,1595,1612,
+1629,1645,1661,1677,1692,1706,1721,1734,1748,1761,1775,1788,1801,1814,1827,1839,1853,1865,1878,1891,1904,
+1917,1930,1943,1955,1968,1980,1992,2005,2017,2029,2042,2055,2068,2082,2096,2111,2127,2143,2161,2179,2199,
+2220,2242,2266,2291,2317,2344,2373,2403,2434,2466,2498,2532,2566,2601,2636,2671,2706,2741,2776,2810,2843,
+2876,2908,2939,2969,2998,3025,3051,3076,3099,3121,3142,3161,3179,3195,3210,3224,3236,3247,3257,3266,3274,
+3280,3286,3291,3295,3298,3300,3302,3303,3303,3303,3302,3301,3299,3297,3294,3291,3288,3285,3282,3279,3275,
+3271,3268,3264,3260,3257,3253,3249,3245,3241,3236,3232,3227,3222,3216,3210,3204,3197,3189,3180,3171,3161,
+3150,3139,3126,3113,3099,3084,3068,3051,3034,3016,2997,2978,2959,2939,2920,2900,2881,2862,2844,2827,2811,
+2796,2783,2771,2760,2752,2745,2741,2738,2738,2740,2744,2750,2758,2768,2779,2793,2808,2824,2841,2859,2878,
+2897,2917,2938,2958,2978,2999,3019,3039,3058,3077,3096,3114,3131,3147,3163,3178,3192,3204,3215,3225,3233,
+3239,3243,3244,3244,3241,3235,3227,3216,3202,3186,3168,3147,3125,3101,3076,3050,3024,2998,2973,2949,2927,
+2908,2891,2877,2867,2860,2857,2857,2862,2870,2882,2897,2914,2934,2956,2980,3004,3028,3052,3076,3098,3119,
+3138,3143,3162,3178,3191,3202,3209,3212,3213,3212,3208,3202,3195,3186,3177,3167,3158,3149,3141,3134,3128,
+3124,3120,3118,3117,3117,3118,3120,3121,3123,3124,3126,3126,3125,3124,3121,3117,3112,3106,3098,3090,3081,
+3070,3060,3049,3038,3026,3015,3005,2995,2986,2977,2969,2962,2956,2951,2947,2944,2941,2939,2937,2936,2935,
+2935,2934,2933,2933,2932,2931,2929,2928,2925,2923,2920,2916,2912,2908,2903,2897,2892,2885,2879,2872,2864,
+2856,2848,2840,2832,2823,2814,2805,2796,2786,2776,2767,2757,2747,2736,2726,2716,2705,2694,2683,2672,2661,
+2649,2638,2626,2614,2603,2591,2579,2567,2555,2544,2532,2521,2510,2499,2488,2477,2467,2457,2447,2437,2427,
+2418,2408,2398,2388,2378,2367,2357,2346,2335,2323,2311,2299,2287,2275,2263,2251,2238,2226,2215,2203,2192,
+2181,2171,2161,2151,2142,2134,2126,2118,2110,2103,2097,2090,2084,2077,2071,2065,2059,2053,2047,2042,2036,
+2030,2025,2019,2014,2009,2004,1999,1994,1990,1985,1980,1975,1970,1965,1959,1953,1946,1939,1930,1921,1912,
+1901,1890,1878,1866,1853,1840,1826,1812,1799,1785,1772,1759,1746,1734,1722,1712,1702,1692,1683,1675,1667,
+1660,1653,1646,1640,1633,1627,1621,1614,1608,1602,1595,1589,1583,1577,1571,1565,1560,1555,1550,1546,1542,
+1539,1536,1533,1530,1528,1525,1521,1517,1512,1507,1500,1492,1482,1471,1459,1445,1429,1412,1394,1374,1354,
+1333,1311,1289,1268,1246,1225,1204,1184,1166,1148,1132,1116,1102,1089,1077,1066,1056,1047,1038,1029,1021,
+1013,1005,997,990,982,974,966,958,951,944,937,932,926,922,918,915,914,913,913,914,916,
+918,920,923,926,929,932,934,936,936,936,935,933,930,926,921,915,909,901,893,885,877,
+868,859,851,842,834,827,819,813,806,800,794,789,783,778,773,767,762,757,751,745,739,
+733,727,721,715,708,702,696,691,686,681,676,673,669,667,665,664,663,664,664,666,668,
+671,673,677,680,684,688,692,695,698,701,704,705,706,706,705,704,701,697,692,686,678,
+670,661,651,641,630,618,607,595,584,572,562,551,542,533,525,518,512,506,501,497,494,
+491,488,485,482,478,474,470,464,458,451,442,433,422,410,397,383,368,352,336,319,302,
+285,269,252,236,221,207,194,182,172,162,155,148,143,140,138,137,137,138,141,144,148,
+152,157,163,169,174,180,186,192,198,203,209,214,219,223,228,232,236,240,244,247,250,
+254,257,259,262,264,266,267,268,268,268,267,266,264,262,260,257,253,250,246,243,239,
+236,233,231,229,227,226,226,226,227,229,230,232,235,237,239,241,243,244,245,245,244,
+243,241,238,234,230,225,220,215,210,204,199,195,190,187,184,182,180,180,180,181,182,
+184,187,190,193,196,199,201,204,206,207,209,210,210,210,210,210,210,210,211,212,214,
+216,220,224,229,236,244,252,262,272,284,295,307,319,331,342,353,362,371,378,384,388,
+390,390,388,385,380,373,365,355,344,333,321,308,296,284,272,261,251,242,234,227,222,
+218,215,214,213,214,215,217,219,222,225,227,229,231,233,233,233,233,231,229,226,223,
+219,215,211,207,202,198,194,190,187,184,182,180,178,177,176,176,176,176,177,177,178,
+178,179,179,180,181,181,182,182,183,184,186,188,190,192,195,198,202,206,211,216,221,
+227,232,238,244,249,255,260,265,270,274,278,281,284,287,289,291,292,293,294,295,296,
+297,297,298,299,300,301,302,303,305,307,309,311,313,316,318,321,324,327,330,333,336,
+339,342,345,348,351,353,356,358,361,363,365,367,370,372,374,375,377,379,381,383,385,
+387,390,392,394,396,399,401,403,406,408,410,412,413,415,416,417,417,417,416,415,414,
+412,409,407,404,400,397,393,389,385,381,377,374,370,367,364,361,359,357,355,353,352,
+351,350,349,348,347,346,344,343,342,340,338,336,334,332,329,327,325,322,320,318,316,
+314,313,312,311,310,310,310,310,311,311,312,313,314,315,316,316,317,317,318,318,318,
+317,317,316,315,314,313,311,310,308,306,304,301,299,296,293,290,287,284,280,276,272,
+268,264,259,255,250,246,241,237,233,229,225,222,219,216,213,210,208,206,204,203,201,
+200,199,197,196,195,193,192,191,189,188,186,185,183,182,180,179,178,176,175,174,174,
+173,172,171,171,170,170,169,168,168,167,167,166,166,165,165,165,165,165,166,166,167,
+169,170,172,175,177,180,183,187,190,194,197,201,205,208,212,215,218,221,223,226,228,
+230,231,233,234,235,235,236,236,236,236,236,235,235,234,233,233,232,231,230,229,228,
+227,226,225,224,223,223,222,222,221,221,221,220,220,220,220,219,219,218,217,217,216,
+215,214,213,211,210,209,208,206,205,204,204,203,203,203,203,203,203,204,204,205,206,
+208,209,210,212,213,215,217,219,221,223,226,229,233,237,242,247,253,259,266,273,281,
+289,297,306,315,324,334,343,353,362,371,381,390,399,407,416,425,433,442,450,459,468,
+476,485,494,504,513,523,533,543,553,563,573,583,593,603,612,622,632,641,650,660,669,
+678,687,696,705,714,723,732,741,750,759,767,776,784,792,800,808,815,822,828,834,840,
+846,852,857,863,869,875,882,889,897,906,916,927,939,952,966,981,997,1014,1031,1048,1066,
+1084,1102,1119,1136,1153,1168,1183,1196,1209,1221,1232,1243,1253,1263,1273,1283,1293,1305,1317,1331,1346,
+1363,1382,1403,1425,1450,1476,1504,1534,1564,1596,1628,1660,1692,1723,1754,1783,1810,1836,1859,1880,1898,
+1914,1928,1939,1948,1955,1960,1963,1965,1966,1966,1966,1965,1965,1965,1966,1967,1968,1971,1974,1977,1981,
+1986,1990,1994,1998,2001,2003,2004,2004,2002,2000,1995,1989,1982,1973,1963,1952,1940,1927,1914,1900,1886,
+1871,1857,1842,1828,1814,1799,1785,1771,1757,1742,1726,1710,1694,1676,1657,1638,1617,1595,1572,1548,1523,
+1498,1473,1448,1423,1399,1377,1356,1336,1320,1305,1294,1286,1281,1279,1281,1286,1295,1307,1321,1339,1358,
+1380,1404,1429,1455,1482,1509,1536,1562,1589,1614,1638,1662,1684,1705,1725,1744,1762,1779,1795,1811,1826,
+1840,1854,1869,1882,1897,1911,1925,1939,1954,1969,1984,2000,2015,2031,2047,2063,2078,2094,2110,2126,2141,
+2157,2172,2188,2204,2219,2235,2251,2268,2285,2302,2320,2339,2359,2379,2401,2423,2446,2470,2496,2522,2549,
+2578,2607,2637,2668,2699,2731,2764,2796,2829,2862,2895,2928,2960,2992,3023,3053,3083,3111,3139,3165,3190,
+3214,3236,3257,3276,3294,3310,3324,3337,3349,3359,3367,3374,3380,3384,3387,3389,3390,3390,3388,3386,3384,
+3381,3377,3373,3369,3365,3360,3356,3352,3349,3345,3343,3340,3338,3337,3336,3335,3334,3334,3334,3334,3334,
+3334,3334,3333,3331,3329,3327,3323,3319,3313,3307,3300,3291,3282,3272,3260,3248,3235,3221,3206,3190,3174,
+3158,3141,3124,3106,3089,3071,3054,3036,3019,3003,2987,2972,2957,2943,2931,2919,2909,2900,2893,2887,2883,
+2880,2879,2879,2881,2884,2889,2895,2902,2911,2920,2930,2941,2952,2964,2976,2989,3002,3015,3028,3042,3055,
+3069,3084,3098,3113,3129,3144,3160,3177,3193,3209,3225,3240,3254,3268,3279,3289,3297,3302,3304,3304,3300,
+3292,3281,3267,3249,3227,3203,3177,3148,3118,3086,3055,3024,2994,2966,2940,2917,2898,2882,2871,2865,2863,
+2866,2874,2885,2901,2920,2942,2966,2991,3018,3045,3072,3097,3121,3143,3159,3176,3190,3200,3208,3212,3213,
+3211,3207,3200,3192,3182,3171,3160,3148,3137,3127,3118,3110,3104,3099,3096,3094,3094,3095,3097,3099,3102,
+3105,3108,3111,3113,3114,3114,3113,3111,3108,3103,3098,3091,3084,3076,3068,3059,3050,3042,3034,3026,3019,
+3013,3007,3002,2998,2996,2993,2992,2992,2992,2992,2993,2994,2996,2997,2999,3000,3001,3002,3002,3002,3001,
+2999,2997,2994,2990,2986,2980,2974,2968,2960,2952,2944,2935,2925,2915,2906,2895,2885,2875,2866,2856,2847,
+2838,2829,2821,2813,2806,2799,2792,2786,2779,2773,2767,2760,2753,2746,2738,2730,2721,2712,2702,2691,2679,
+2667,2655,2642,2628,2614,2601,2587,2573,2559,2545,2532,2519,2506,2494,2481,2470,2458,2447,2436,2425,2414,
+2402,2391,2380,2368,2356,2344,2332,2319,2306,2293,2279,2266,2252,2239,2225,2212,2199,2185,2172,2159,2146,
+2134,2121,2109,2096,2084,2072,2060,2048,2036,2024,2012,2001,1989,1979,1968,1958,1948,1939,1930,1922,1915,
+1908,1902,1896,1890,1885,1880,1875,1870,1864,1859,1853,1847,1840,1832,1824,1815,1805,1795,1785,1773,1762,
+1750,1738,1726,1713,1701,1690,1678,1668,1657,1647,1638,1629,1620,1612,1604,1596,1589,1582,1575,1568,1561,
+1553,1546,1539,1532,1525,1519,1512,1505,1499,1494,1488,1483,1478,1474,1470,1466,1462,1458,1454,1450,1445,
+1439,1433,1425,1417,1407,1396,1383,1369,1354,1338,1321,1302,1283,1263,1243,1223,1203,1183,1163,1144,1126,
+1109,1093,1078,1063,1050,1038,1026,1016,1005,996,986,977,967,958,948,938,928,918,908,898,888,
+878,869,859,851,843,836,830,825,821,818,816,815,814,814,815,816,817,818,819,820,821,
+821,820,818,816,814,810,806,802,796,791,785,779,773,767,761,755,750,744,738,732,726,
+720,714,708,701,694,687,679,671,663,654,645,636,627,618,609,600,592,583,576,569,562,
+556,551,546,542,538,535,533,531,529,528,528,527,527,528,528,529,531,533,535,538,541,
+544,548,553,557,562,567,571,576,580,584,587,590,592,593,594,593,592,590,587,583,579,
+574,568,563,557,552,546,541,536,532,527,524,520,517,514,510,507,504,500,495,490,483,
+476,468,458,447,435,422,407,392,375,358,340,321,302,283,264,246,227,210,193,177,161,
+147,135,123,113,104,96,90,85,81,78,77,76,77,78,80,82,86,89,93,98,103,
+108,113,118,123,129,134,139,145,150,155,160,165,170,174,178,182,185,188,190,192,193,
+194,194,194,193,191,189,187,185,182,180,178,176,175,174,174,174,175,177,180,184,188,
+193,199,205,211,217,222,227,232,236,239,241,242,242,240,238,234,229,224,217,210,202,
+195,187,179,172,165,158,152,147,142,138,135,133,131,129,128,128,128,128,128,128,128,
+129,129,130,131,131,133,134,136,139,142,146,151,157,163,171,180,189,199,210,222,234,
+247,260,272,285,297,309,319,329,338,345,351,355,358,359,358,356,352,347,340,332,323,
+313,302,291,280,268,257,246,236,226,218,210,204,198,194,191,190,189,189,190,192,194,
+196,199,201,204,206,208,210,211,211,211,211,210,208,206,204,201,199,196,194,192,190,
+188,186,185,184,183,182,182,181,181,180,179,178,177,176,174,172,170,168,166,163,161,
+159,158,156,156,155,156,157,159,161,164,168,172,177,182,188,194,200,206,211,217,223,
+228,233,238,242,246,249,252,255,258,260,262,264,266,268,270,271,273,275,276,278,280,
+281,283,285,286,288,290,291,293,295,297,299,301,303,306,309,312,315,318,322,326,330,
+334,338,343,347,352,356,361,365,370,374,378,382,386,389,392,395,398,401,403,405,408,
+409,411,412,412,413,413,412,412,411,409,407,405,402,399,395,391,387,383,378,373,369,
+364,359,355,351,347,343,340,337,334,332,330,329,327,326,325,324,324,323,322,321,320,
+319,318,316,314,313,311,309,307,305,303,301,299,297,296,294,293,292,291,290,289,288,
+287,286,285,284,282,281,279,276,273,270,267,264,260,257,253,250,246,243,240,238,235,
+233,231,230,229,228,227,226,225,224,223,221,220,218,215,212,209,205,200,196,191,186,
+181,176,171,166,162,157,153,150,147,144,142,141,139,139,138,138,137,137,138,138,138,
+138,138,137,137,136,136,135,134,133,132,131,130,128,127,126,125,124,123,122,121,120,
+119,118,117,117,117,117,117,117,118,119,120,121,123,126,128,131,134,138,141,145,149,
+153,157,161,165,168,172,175,178,181,183,185,187,188,189,190,190,190,190,189,189,188,
+186,184,183,180,178,175,172,169,166,162,159,156,152,149,146,143,141,139,137,135,134,
+134,133,133,133,134,134,135,135,136,136,136,136,136,135,134,133,131,130,128,126,124,
+122,121,120,119,118,118,118,119,120,122,124,126,129,132,135,139,143,147,151,156,160,
+165,170,176,182,188,194,202,209,217,226,235,245,255,265,277,288,300,311,323,336,348,
+360,372,384,396,407,419,430,441,452,463,474,484,495,505,515,525,535,544,553,562,571,
+578,586,593,599,604,609,614,618,621,624,627,629,631,634,636,639,642,645,649,653,658,
+663,669,676,683,690,698,706,715,724,733,742,751,761,771,780,790,801,811,822,834,846,
+858,871,885,899,914,929,945,961,977,994,1010,1026,1042,1057,1072,1086,1099,1112,1123,1133,1143,
+1152,1160,1167,1175,1182,1189,1197,1206,1216,1227,1240,1254,1270,1288,1308,1330,1354,1380,1408,1437,1467,
+1498,1530,1562,1594,1625,1655,1684,1711,1736,1759,1779,1796,1811,1823,1832,1839,1843,1844,1844,1842,1838,
+1833,1828,1822,1817,1812,1807,1804,1801,1800,1801,1803,1807,1812,1819,1827,1836,1846,1857,1868,1878,1889,
+1899,1908,1916,1923,1928,1931,1932,1932,1929,1924,1917,1908,1897,1883,1868,1851,1832,1811,1789,1765,1740,
+1714,1686,1657,1628,1598,1567,1536,1505,1474,1443,1412,1383,1354,1327,1302,1278,1257,1239,1223,1210,1201,
+1195,1193,1194,1199,1208,1220,1236,1254,1276,1301,1327,1356,1387,1419,1452,1485,1519,1553,1587,1620,1652,
+1682,1712,1741,1768,1794,1818,1841,1862,1882,1902,1920,1937,1954,1970,1985,2000,2015,2030,2044,2059,2074,
+2089,2104,2119,2134,2150,2166,2182,2198,2214,2231,2248,2264,2281,2298,2315,2332,2350,2367,2385,2402,2420,
+2438,2457,2476,2495,2514,2534,2555,2576,2598,2620,2642,2666,2690,2715,2740,2766,2792,2820,2847,2875,2904,
+2933,2962,2991,3020,3050,3078,3107,3135,3162,3189,3215,3240,3263,3285,3306,3326,3344,3360,3374,3387,3399,
+3408,3416,3422,3427,3430,3431,3432,3431,3429,3427,3423,3419,3415,3411,3406,3402,3398,3394,3391,3388,3386,
+3385,3385,3385,3387,3388,3391,3394,3397,3400,3404,3407,3410,3412,3414,3414,3414,3412,3409,3405,3399,3392,
+3384,3374,3363,3351,3338,3324,3309,3294,3279,3263,3247,3232,3217,3202,3188,3174,3160,3147,3135,3124,3112,
+3102,3092,3082,3073,3064,3056,3048,3041,3035,3029,3024,3019,3016,3013,3011,3010,3010,3011,3013,3016,3019,
+3023,3027,3032,3038,3043,3049,3054,3060,3066,3071,3077,3082,3088,3094,3100,3107,3114,3122,3131,3141,3152,
+3164,3177,3191,3205,3220,3235,3249,3263,3276,3287,3296,3303,3307,3308,3305,3299,3290,3276,3260,3240,3217,
+3192,3164,3136,3107,3078,3049,3023,2998,2976,2958,2944,2934,2928,2927,2930,2937,2949,2964,2982,3003,3025,
+3049,3073,3096,3119,3140,3159,3234,3248,3259,3268,3274,3277,3277,3275,3271,3265,3257,3248,3239,3228,3218,
+3208,3199,3191,3184,3178,3173,3170,3168,3167,3167,3167,3169,3170,3172,3173,3174,3175,3176,3175,3174,3172,
+3170,3167,3164,3160,3156,3151,3147,3143,3139,3135,3131,3128,3125,3123,3121,3119,3118,3117,3116,3114,3113,
+3112,3110,3108,3105,3102,3099,3095,3090,3085,3079,3073,3066,3059,3052,3044,3035,3026,3017,3007,2998,2987,
+2977,2966,2955,2944,2933,2921,2910,2899,2888,2877,2867,2857,2848,2839,2830,2822,2815,2809,2802,2797,2791,
+2786,2781,2776,2770,2765,2758,2752,2744,2736,2726,2716,2705,2693,2680,2666,2651,2636,2621,2605,2589,2573,
+2557,2542,2527,2513,2499,2486,2474,2463,2452,2441,2431,2421,2412,2402,2393,2383,2373,2362,2351,2340,2328,
+2315,2302,2288,2273,2258,2243,2227,2211,2195,2178,2162,2145,2129,2112,2096,2080,2064,2048,2033,2018,2003,
+1989,1975,1962,1949,1936,1924,1913,1903,1893,1883,1875,1867,1860,1854,1848,1842,1837,1832,1828,1823,1818,
+1813,1808,1802,1796,1789,1781,1773,1763,1754,1743,1732,1720,1708,1696,1683,1670,1658,1645,1633,1621,1610,
+1599,1588,1578,1569,1560,1551,1543,1535,1527,1519,1511,1504,1496,1488,1480,1472,1463,1455,1447,1438,1430,
+1422,1414,1406,1399,1392,1386,1379,1373,1367,1362,1356,1350,1344,1337,1330,1323,1314,1305,1295,1283,1271,
+1257,1243,1227,1211,1193,1176,1157,1139,1120,1102,1084,1066,1048,1032,1016,1000,986,972,959,946,934,
+923,912,901,890,880,869,858,848,837,826,815,804,794,783,773,764,755,746,739,732,726,
+722,717,714,712,710,708,707,706,706,705,704,703,702,700,698,696,693,690,686,683,679,
+674,670,666,662,657,653,649,644,640,635,630,625,619,613,606,598,589,580,570,560,549,
+537,525,513,501,489,477,466,455,446,437,429,422,416,411,406,403,400,398,396,395,393,
+392,391,390,389,389,388,388,388,388,389,391,394,397,402,408,415,423,431,441,451,462,
+473,484,494,504,514,522,530,536,541,544,546,547,547,546,544,541,538,535,531,528,525,
+523,520,519,518,517,516,516,516,515,514,512,510,506,502,496,488,480,469,457,444,429,
+413,397,379,360,341,321,301,282,262,243,225,207,190,174,159,145,132,120,110,100,92,
+85,78,73,69,65,62,60,59,59,59,60,61,63,65,68,71,75,79,84,89,94,
+100,106,112,118,124,130,136,141,146,150,154,157,159,161,161,161,160,158,156,153,149,
+146,143,139,137,135,133,133,134,135,138,142,147,153,160,168,175,183,191,199,206,213,
+218,222,225,227,227,226,223,219,214,208,201,193,185,176,167,159,150,142,134,126,119,
+113,107,101,96,91,87,83,79,76,72,70,67,65,63,61,61,61,62,63,66,70,
+75,81,89,97,107,117,129,141,154,167,181,195,209,223,236,249,261,272,282,291,299,
+306,311,315,318,320,320,319,316,313,308,303,297,290,282,274,265,257,248,239,231,223,
+215,209,202,197,193,189,186,184,183,183,183,184,185,187,189,190,192,193,195,195,196,
+195,195,194,192,190,188,186,184,181,179,177,176,174,174,173,173,173,173,174,174,175,
+175,175,175,175,174,172,170,168,165,161,158,154,150,146,143,139,136,134,132,131,131,
+131,132,134,137,140,144,148,152,157,162,167,172,177,181,186,190,194,198,202,206,209,
+213,216,220,223,226,230,233,236,239,242,245,248,251,253,255,257,259,260,261,262,263,
+265,266,267,269,271,273,276,279,283,287,291,297,302,308,315,322,328,335,342,349,356,
+362,368,374,379,384,388,392,395,398,401,403,404,405,406,407,407,407,406,405,404,403,
+401,399,397,394,391,387,384,380,375,370,366,361,356,350,345,340,336,331,327,323,319,
+316,313,311,309,308,307,306,305,305,305,305,305,304,304,304,303,302,301,300,299,297,
+295,293,291,289,287,285,283,280,278,276,274,271,269,266,263,260,257,253,249,244,239,
+234,229,223,217,211,205,199,193,188,183,179,175,172,170,168,167,167,167,168,168,169,
+171,172,172,173,172,172,170,168,165,162,158,153,148,143,138,132,127,121,117,112,108,
+105,102,100,99,98,98,98,98,99,100,101,102,102,103,104,104,104,104,103,103,102,
+101,99,98,97,95,94,92,91,89,88,87,86,85,84,83,82,82,82,82,82,83,
+84,85,86,88,90,93,95,98,101,104,108,111,114,117,120,123,125,127,129,130,131,
+132,132,132,131,130,129,128,126,125,123,120,118,116,113,110,107,103,100,96,92,87,
+83,78,73,68,64,59,54,50,46,42,39,36,33,32,30,29,29,29,29,30,31,
+32,33,34,35,35,36,37,37,38,38,38,39,40,41,42,44,46,48,51,55,59,
+63,68,74,79,85,91,97,103,110,116,123,130,136,143,151,158,166,174,183,193,203,
+214,225,237,250,263,277,291,306,321,336,352,367,382,397,412,426,440,454,467,480,492,
+504,515,526,536,546,555,564,572,579,586,592,597,601,604,606,607,608,607,605,603,600,
+596,593,588,584,580,577,574,571,570,569,570,571,574,578,584,590,598,606,616,626,637,
+649,662,675,688,703,717,732,748,764,780,797,815,833,851,870,889,908,927,945,964,982,
+999,1016,1031,1045,1058,1069,1079,1087,1093,1099,1102,1105,1106,1107,1107,1107,1107,1108,1109,1112,1116,
+1121,1129,1138,1150,1164,1181,1199,1220,1243,1267,1293,1320,1348,1377,1405,1434,1462,1489,1515,1539,1562,
+1582,1600,1616,1629,1640,1649,1655,1658,1660,1660,1658,1655,1651,1646,1641,1636,1632,1629,1627,1626,1627,
+1631,1636,1644,1654,1666,1681,1697,1715,1735,1755,1776,1798,1819,1839,1858,1875,1891,1903,1913,1919,1921,
+1920,1915,1906,1892,1875,1854,1830,1802,1771,1737,1702,1664,1625,1585,1544,1504,1463,1424,1386,1350,1315,
+1283,1253,1227,1203,1183,1166,1152,1142,1135,1132,1133,1136,1143,1153,1167,1182,1201,1222,1245,1270,1297,
+1326,1356,1387,1419,1452,1485,1518,1552,1586,1620,1653,1686,1719,1751,1782,1813,1843,1872,1900,1927,1953,
+1979,2003,2026,2049,2070,2091,2110,2129,2147,2165,2182,2198,2214,2230,2245,2261,2276,2291,2306,2321,2336,
+2352,2367,2383,2400,2416,2433,2450,2468,2485,2503,2521,2540,2558,2577,2596,2615,2634,2653,2672,2691,2711,
+2730,2750,2770,2790,2811,2832,2853,2875,2898,2920,2944,2967,2992,3016,3041,3066,3092,3118,3143,3169,3194,
+3218,3243,3266,3288,3310,3330,3349,3366,3382,3397,3410,3421,3430,3438,3444,3449,3452,3454,3455,3455,3454,
+3453,3450,3448,3446,3443,3441,3439,3438,3437,3438,3439,3440,3443,3447,3451,3456,3461,3467,3473,3479,3485,
+3490,3495,3498,3501,3501,3500,3498,3493,3486,3478,3467,3455,3440,3424,3407,3388,3369,3349,3329,3309,3289,
+3270,3252,3235,3219,3205,3192,3181,3172,3164,3157,3152,3148,3144,3141,3139,3137,3134,3132,3130,3127,3124,
+3120,3117,3113,3109,3105,3101,3097,3094,3092,3090,3089,3089,3089,3090,3092,3094,3097,3100,3103,3106,3109,
+3112,3114,3116,3118,3119,3120,3121,3121,3122,3124,3126,3129,3134,3139,3146,3154,3164,3175,3188,3201,3215,
+3229,3243,3257,3270,3281,3290,3296,3301,3302,3300,3294,3286,3274,3260,3243,3224,3204,3183,3161,3140,3120,
+3102,3086,3073,3063,3056,3053,3054,3058,3066,3077,3090,3106,3124,3143,3162,3182,3201,3218,3234,3347,3361,
+3373,3383,3392,3398,3402,3404,3404,3403,3400,3396,3390,3385,3379,3372,3365,3359,3353,3347,3342,3337,3332,
+3328,3323,3320,3316,3312,3308,3305,3301,3297,3293,3289,3285,3282,3278,3275,3273,3271,3269,3268,3268,3268,
+3268,3269,3271,3272,3274,3275,3276,3277,3276,3275,3273,3270,3265,3259,3252,3243,3233,3222,3209,3195,3181,
+3166,3150,3134,3117,3101,3084,3068,3052,3036,3021,3006,2992,2978,2965,2952,2939,2927,2915,2903,2891,2880,
+2869,2858,2847,2837,2826,2816,2807,2797,2788,2779,2771,2763,2755,2748,2740,2733,2725,2717,2709,2701,2692,
+2683,2673,2662,2650,2638,2625,2612,2598,2583,2568,2553,2538,2523,2509,2495,2481,2468,2455,2443,2432,2421,
+2411,2402,2393,2384,2376,2367,2359,2350,2340,2331,2320,2309,2297,2285,2271,2257,2242,2226,2210,2193,2176,
+2158,2140,2122,2104,2086,2068,2050,2033,2016,2000,1984,1969,1954,1941,1928,1915,1904,1893,1884,1875,1867,
+1859,1852,1846,1841,1836,1831,1826,1821,1817,1812,1807,1801,1795,1788,1780,1772,1762,1752,1741,1729,1716,
+1703,1688,1674,1659,1643,1628,1612,1597,1582,1567,1553,1540,1527,1514,1502,1491,1481,1470,1461,1452,1443,
+1434,1425,1416,1408,1399,1390,1381,1372,1362,1353,1343,1334,1324,1315,1305,1296,1287,1278,1269,1261,1253,
+1246,1239,1231,1224,1217,1210,1203,1196,1188,1179,1170,1161,1150,1139,1127,1114,1101,1086,1071,1056,1040,
+1024,1007,990,973,957,940,924,908,893,878,863,849,835,822,809,796,783,771,759,747,735,
+723,712,700,690,679,669,660,651,643,636,630,625,620,617,614,612,611,611,611,611,611,
+612,612,612,612,612,611,609,607,605,602,599,595,591,587,582,578,573,568,562,557,551,
+545,538,531,523,514,505,495,483,471,458,444,430,415,400,385,370,355,341,328,316,305,
+296,287,281,276,272,269,268,267,268,269,270,272,273,275,276,277,278,278,279,280,281,
+282,284,287,291,296,303,311,320,331,343,356,370,385,400,415,429,442,455,466,476,484,
+490,494,496,497,496,494,491,487,483,479,475,471,469,467,466,465,466,468,471,474,477,
+481,484,487,488,489,489,487,483,477,470,461,450,438,424,409,392,375,357,338,320,301,
+283,264,247,229,213,198,183,169,156,144,133,123,114,105,97,90,84,78,72,68,64,
+60,57,54,53,51,51,51,52,54,56,59,64,69,75,81,89,96,104,113,121,129,
+137,144,150,156,160,162,164,164,162,160,156,151,145,138,132,125,119,112,107,103,101,
+99,99,100,103,107,113,119,126,134,142,149,157,163,169,174,177,180,181,180,178,176,
+172,167,161,155,149,142,136,129,123,117,111,105,100,95,90,86,81,76,71,67,62,
+57,52,47,43,38,35,31,29,28,28,28,31,34,39,46,53,62,72,83,95,107,
+119,132,145,157,170,181,192,202,211,219,227,233,238,243,246,249,250,252,252,252,251,
+249,247,245,242,239,235,231,227,223,219,214,209,205,201,197,193,190,187,184,183,181,
+180,180,180,180,181,181,182,182,182,182,182,181,179,177,175,172,168,165,161,157,154,
+151,148,146,144,143,143,143,145,146,149,151,154,157,160,163,165,167,168,169,168,167,
+165,163,159,155,151,147,142,138,134,130,127,124,122,121,120,121,121,123,125,127,130,
+133,136,139,142,145,148,151,154,157,160,163,166,169,173,176,180,185,189,194,199,204,
+209,214,218,222,226,230,233,236,238,240,241,242,242,243,243,244,244,246,247,249,252,
+256,260,265,270,276,283,290,298,306,314,322,330,337,344,351,357,363,368,373,377,380,
+383,385,387,389,390,391,391,391,391,391,391,390,389,388,386,385,383,380,377,374,371,
+367,362,358,353,348,343,338,333,328,323,318,314,311,308,305,303,302,301,300,300,301,
+302,303,304,305,306,307,307,307,307,306,305,303,300,297,294,290,286,281,277,272,267,
+262,258,253,249,244,240,235,231,226,222,217,212,207,202,196,190,184,178,171,165,159,
+153,147,142,137,133,129,127,125,123,123,122,123,124,124,125,126,127,127,127,126,125,
+123,121,117,114,110,105,101,96,92,88,84,81,78,76,74,73,73,73,74,75,76,
+78,80,81,82,84,84,85,85,85,84,84,82,81,79,78,76,74,72,70,69,67,
+66,64,63,61,60,59,58,56,55,54,53,53,52,51,51,51,51,52,52,53,54,
+56,57,58,60,61,62,63,64,64,64,63,62,61,59,56,54,51,47,44,40,37,
+33,30,26,23,19,16,12,9,6,2,-1,-5,-8,-13,-17,-21,-26,-31,-36,-41,-45,
+-50,-55,-59,-63,-66,-69,-72,-74,-76,-77,-78,-79,-79,-78,-77,-76,-75,-73,-71,-69,-66,
+-62,-59,-54,-50,-44,-38,-32,-25,-17,-9,0,8,17,27,36,46,56,65,75,84,93,
+102,110,118,127,135,144,153,162,172,183,194,206,219,233,248,264,280,297,315,332,351,
+369,387,405,422,439,455,470,485,498,511,523,533,543,552,560,567,574,579,584,588,591,
+592,593,593,592,590,587,582,577,571,564,556,547,539,530,521,513,505,498,492,486,483,
+480,479,480,482,485,490,496,504,512,522,533,545,557,570,584,598,614,630,647,665,683,
+703,724,746,768,792,817,842,868,894,921,946,972,996,1018,1039,1058,1074,1088,1099,1107,1112,
+1115,1114,1112,1107,1100,1092,1083,1073,1064,1055,1047,1040,1036,1033,1032,1035,1040,1047,1057,1070,1086,
+1103,1123,1144,1167,1190,1215,1239,1264,1288,1312,1336,1358,1379,1399,1417,1434,1449,1463,1475,1485,1495,
+1502,1509,1515,1520,1524,1528,1531,1535,1539,1544,1549,1556,1564,1573,1584,1596,1610,1626,1643,1662,1681,
+1701,1721,1742,1761,1780,1797,1812,1824,1833,1839,1840,1837,1830,1818,1802,1780,1754,1724,1690,1653,1612,
+1569,1524,1478,1431,1384,1339,1295,1253,1213,1177,1145,1116,1092,1072,1057,1046,1040,1039,1041,1048,1058,
+1071,1088,1107,1128,1151,1176,1202,1229,1256,1283,1311,1339,1367,1395,1423,1450,1478,1506,1534,1562,1591,
+1620,1649,1680,1710,1741,1773,1805,1838,1871,1903,1936,1969,2001,2032,2063,2093,2122,2150,2177,2203,2227,
+2250,2272,2292,2312,2330,2348,2365,2382,2398,2413,2429,2444,2460,2475,2491,2507,2524,2540,2557,2575,2592,
+2610,2628,2646,2665,2683,2702,2720,2738,2757,2775,2793,2811,2829,2847,2865,2883,2901,2919,2937,2956,2974,
+2993,3013,3032,3052,3073,3093,3115,3136,3158,3179,3201,3223,3244,3265,3286,3306,3325,3343,3360,3376,3391,
+3405,3417,3428,3438,3446,3454,3460,3465,3469,3473,3476,3478,3480,3482,3484,3487,3489,3492,3496,3500,3505,
+3510,3516,3523,3530,3538,3546,3554,3563,3571,3579,3586,3592,3598,3602,3604,3604,3603,3599,3593,3585,3574,
+3560,3544,3526,3506,3483,3460,3435,3409,3383,3357,3331,3306,3283,3261,3241,3223,3208,3195,3185,3178,3172,
+3169,3168,3169,3171,3173,3177,3180,3184,3186,3188,3189,3189,3187,3184,3180,3175,3169,3162,3155,3147,3140,
+3133,3127,3122,3118,3115,3114,3113,3114,3116,3118,3121,3125,3129,3133,3136,3139,3141,3143,3144,3144,3144,
+3144,3143,3142,3142,3143,3145,3147,3152,3158,3165,3175,3186,3199,3213,3228,3244,3259,3275,3290,3304,3316,
+3326,3334,3339,3341,3340,3337,3331,3322,3312,3300,3287,3273,3259,3246,3233,3222,3214,3207,3204,3203,3204,
+3209,3217,3227,3239,3253,3268,3284,3300,3317,3333,3347,3427,3441,3454,3467,3478,3488,3497,3504,3510,3514,
+3517,3519,3519,3519,3517,3515,3512,3508,3504,3499,3494,3488,3482,3475,3468,3461,3453,3446,3438,3430,3423,
+3416,3409,3403,3397,3393,3389,3386,3385,3384,3385,3386,3389,3391,3395,3399,3402,3406,3409,3411,3412,3412,
+3410,3406,3401,3394,3384,3372,3359,3343,3326,3306,3286,3264,3241,3218,3194,3170,3147,3123,3101,3079,3058,
+3038,3019,3002,2986,2971,2957,2943,2931,2919,2908,2898,2887,2877,2866,2856,2845,2834,2823,2812,2800,2788,
+2777,2765,2752,2740,2729,2717,2705,2694,2682,2671,2660,2649,2638,2627,2616,2605,2594,2582,2571,2559,2547,
+2535,2523,2511,2499,2487,2475,2463,2452,2441,2430,2419,2409,2399,2389,2380,2370,2361,2352,2342,2332,2322,
+2312,2301,2289,2277,2264,2251,2237,2222,2206,2190,2173,2156,2138,2120,2101,2083,2064,2046,2027,2009,1991,
+1974,1957,1942,1926,1912,1898,1886,1874,1864,1854,1846,1838,1831,1825,1820,1815,1810,1806,1801,1797,1792,
+1786,1780,1773,1765,1756,1746,1735,1723,1710,1696,1680,1665,1648,1631,1613,1596,1578,1560,1542,1525,1508,
+1491,1475,1460,1445,1431,1418,1405,1392,1380,1369,1358,1347,1337,1327,1317,1307,1298,1288,1279,1270,1260,
+1251,1242,1232,1223,1213,1204,1195,1185,1176,1167,1157,1148,1139,1130,1122,1113,1104,1095,1087,1078,1070,
+1061,1052,1043,1034,1025,1015,1005,994,983,971,959,947,934,920,906,892,877,863,848,833,818,
+803,788,773,758,743,729,714,700,686,672,659,645,632,619,607,595,584,573,563,554,546,
+538,532,527,523,520,518,517,517,519,520,523,526,529,532,535,538,540,542,543,543,542,
+541,539,536,532,527,521,515,508,501,493,484,476,466,456,445,434,422,410,397,383,368,
+353,337,320,304,287,270,253,237,222,208,195,183,173,165,158,154,151,150,150,152,155,
+159,164,169,174,179,184,189,193,197,201,204,207,210,213,217,221,227,233,241,249,259,
+271,283,297,311,325,340,354,368,380,392,401,409,415,419,421,421,419,416,411,406,400,
+394,388,383,379,375,373,373,374,376,379,384,389,395,401,407,412,417,420,422,423,421,
+418,414,407,399,389,377,364,350,335,320,304,288,271,255,239,224,208,194,180,167,154,
+143,131,121,111,102,94,86,78,71,65,58,53,47,42,38,33,29,26,24,22,20,
+20,21,22,25,29,34,41,48,56,65,75,85,95,105,114,123,130,137,141,144,145,
+144,142,137,131,124,116,107,98,88,80,71,64,58,54,51,50,51,53,57,62,67,
+74,81,88,94,100,106,110,114,116,117,117,116,114,112,108,105,101,97,93,89,86,
+83,80,78,76,74,72,70,68,65,63,60,56,52,48,44,39,35,30,26,22,19,
+17,16,15,16,18,21,25,30,36,43,51,59,67,76,84,93,101,109,116,123,130,
+136,141,146,151,155,159,163,166,169,172,175,178,181,183,185,187,189,190,191,191,191,
+191,191,190,188,187,186,184,183,182,181,181,181,181,181,182,183,184,185,187,188,188,
+188,188,187,185,183,180,176,171,166,161,155,150,145,140,135,131,128,127,126,126,127,
+129,131,135,138,142,146,150,154,157,159,160,161,160,159,157,153,150,145,141,136,131,
+126,122,118,115,112,111,109,109,109,110,111,112,114,116,117,119,121,122,124,125,127,
+128,130,132,134,137,141,144,149,154,159,165,171,178,184,191,197,203,208,212,216,219,
+222,223,224,224,224,224,223,222,222,222,222,223,225,228,232,237,243,249,257,265,273,
+282,291,300,309,318,326,334,342,349,355,360,365,369,373,376,379,382,384,385,387,388,
+389,389,389,389,389,388,387,385,383,380,377,373,369,365,360,355,349,343,338,332,326,
+321,316,311,307,304,301,299,297,296,297,297,299,300,303,305,308,310,312,314,316,317,
+316,316,314,311,307,302,296,290,283,275,267,258,250,241,233,225,218,211,204,199,193,
+188,184,180,176,172,168,164,160,156,151,146,141,135,129,123,118,112,106,101,97,93,
+89,86,84,82,81,80,79,79,78,78,78,77,76,74,73,71,69,66,63,61,58,
+56,54,52,51,50,50,50,51,53,54,56,58,60,62,64,65,66,67,67,66,65,
+64,62,60,57,54,51,49,46,43,41,38,36,34,32,30,28,26,24,22,19,17,
+14,12,9,6,3,0,-2,-4,-7,-9,-10,-12,-13,-13,-14,-14,-14,-14,-14,-14,-15,
+-16,-17,-19,-21,-24,-27,-31,-35,-40,-45,-50,-55,-60,-66,-71,-76,-80,-85,-89,-93,-96,
+-100,-103,-105,-108,-111,-113,-116,-118,-121,-123,-126,-129,-131,-134,-137,-140,-143,-146,-148,-151,-153,
+-155,-157,-159,-161,-162,-162,-162,-162,-161,-159,-157,-154,-150,-145,-139,-132,-124,-115,-105,-95,-83,
+-71,-58,-44,-31,-17,-3,10,23,37,49,62,73,85,96,106,117,127,138,149,161,173,
+186,199,214,230,247,265,284,303,323,343,364,384,404,424,443,460,477,492,506,518,529,
+538,546,552,557,561,563,565,565,564,563,560,557,552,547,541,534,526,517,507,497,486,
+474,462,450,438,427,416,405,396,388,382,377,374,372,373,375,379,384,391,399,408,418,
+429,440,451,463,475,488,501,514,528,542,558,575,593,614,636,660,686,714,744,775,808,
+843,877,912,947,980,1012,1042,1069,1093,1114,1130,1143,1151,1154,1154,1149,1141,1130,1116,1099,1082,
+1063,1044,1025,1008,992,977,965,956,949,946,945,947,953,961,972,985,1000,1017,1036,1057,1078,
+1101,1124,1148,1173,1198,1223,1248,1273,1298,1323,1348,1372,1395,1418,1439,1460,1480,1498,1516,1532,1548,
+1562,1575,1587,1599,1609,1620,1629,1639,1648,1656,1664,1672,1680,1686,1692,1696,1699,1701,1699,1696,1689,
+1680,1667,1650,1630,1606,1578,1547,1512,1474,1434,1391,1347,1302,1256,1211,1167,1124,1084,1047,1014,984,
+959,939,924,913,908,909,914,923,937,956,977,1002,1029,1059,1090,1122,1154,1187,1219,1251,1283,
+1313,1342,1370,1397,1423,1449,1473,1497,1521,1545,1569,1594,1620,1646,1674,1703,1732,1764,1796,1829,1863,
+1898,1934,1969,2005,2040,2074,2108,2141,2173,2204,2234,2262,2288,2314,2338,2360,2382,2403,2422,2442,2460,
+2478,2496,2513,2531,2548,2565,2583,2600,2618,2635,2653,2671,2688,2706,2724,2742,2760,2777,2795,2813,2830,
+2848,2865,2883,2900,2917,2935,2952,2969,2987,3004,3021,3039,3056,3074,3092,3110,3127,3145,3163,3181,3199,
+3217,3235,3253,3270,3287,3303,3319,3335,3350,3364,3377,3389,3401,3412,3422,3432,3441,3449,3457,3465,3472,
+3479,3486,3493,3501,3509,3517,3525,3534,3544,3553,3564,3574,3585,3596,3607,3618,3629,3639,3649,3658,3667,
+3674,3680,3685,3688,3690,3690,3687,3683,3676,3667,3656,3643,3627,3608,3588,3566,3541,3516,3489,3461,3433,
+3405,3377,3350,3325,3300,3278,3258,3241,3227,3215,3206,3200,3197,3196,3197,3200,3205,3210,3216,3222,3227,
+3232,3235,3237,3237,3236,3232,3227,3220,3211,3202,3191,3180,3169,3159,3148,3139,3132,3125,3120,3117,3116,
+3116,3118,3121,3125,3129,3134,3139,3144,3149,3152,3156,3158,3159,3160,3161,3161,3161,3161,3162,3164,3168,
+3172,3179,3187,3197,3209,3223,3238,3254,3272,3289,3307,3325,3341,3356,3370,3381,3390,3397,3400,3401,3400,
+3396,3390,3383,3374,3364,3354,3344,3335,3327,3320,3316,3313,3312,3314,3318,3325,3333,3343,3355,3368,3382,
+3397,3412,3427,3427,3439,3451,3463,3474,3485,3494,3503,3512,3519,3525,3531,3535,3539,3542,3544,3545,3546,
+3545,3544,3542,3540,3536,3532,3528,3523,3518,3512,3507,3501,3496,3490,3486,3482,3479,3476,3474,3473,3473,
+3474,3476,3478,3480,3482,3485,3487,3489,3489,3489,3488,3485,3480,3474,3465,3455,3443,3429,3412,3394,3374,
+3353,3330,3306,3282,3256,3231,3205,3180,3155,3131,3108,3086,3066,3046,3028,3012,2997,2983,2970,2959,2948,
+2939,2929,2921,2912,2903,2894,2885,2875,2864,2853,2841,2828,2815,2800,2786,2770,2755,2739,2723,2707,2691,
+2675,2660,2645,2630,2616,2603,2590,2577,2565,2553,2542,2531,2520,2509,2499,2489,2479,2469,2459,2449,2439,
+2429,2420,2410,2400,2390,2379,2369,2358,2347,2336,2325,2313,2300,2288,2275,2261,2247,2232,2218,2202,2186,
+2170,2154,2137,2119,2102,2084,2066,2047,2029,2010,1991,1973,1954,1936,1918,1901,1884,1868,1853,1839,1825,
+1813,1802,1792,1782,1774,1767,1760,1754,1748,1742,1736,1730,1723,1715,1707,1698,1688,1677,1665,1652,1638,
+1623,1608,1592,1575,1558,1541,1524,1507,1490,1474,1457,1442,1426,1412,1397,1383,1369,1355,1342,1329,1316,
+1303,1290,1278,1266,1254,1242,1231,1220,1210,1200,1191,1182,1174,1166,1158,1151,1144,1137,1130,1123,1116,
+1108,1100,1091,1082,1073,1062,1052,1041,1030,1018,1006,994,983,971,959,948,936,925,914,903,893,
+882,872,861,850,839,828,816,805,793,780,767,754,741,727,713,699,685,671,656,642,628,
+613,599,585,571,558,544,531,519,507,495,484,474,465,457,450,444,439,436,433,432,433,
+434,436,439,443,447,451,455,459,463,466,468,469,469,468,466,462,457,451,444,436,427,
+417,407,396,384,372,360,347,334,321,307,294,279,265,250,236,221,206,191,176,162,148,
+135,123,112,102,94,87,82,79,78,78,80,83,88,94,100,107,115,123,130,137,144,
+150,156,161,166,170,174,178,182,187,192,197,204,211,219,227,237,247,257,267,277,287,
+295,303,310,315,318,320,321,320,317,314,310,305,300,296,291,288,285,283,283,283,285,
+288,293,298,303,309,315,320,325,330,333,335,336,335,333,330,325,319,311,303,293,283,
+272,260,248,235,222,209,195,182,168,155,141,128,115,103,91,79,68,58,48,39,30,
+23,15,9,3,-2,-7,-12,-17,-21,-25,-28,-32,-34,-36,-38,-39,-39,-37,-35,-32,-27,
+-21,-15,-7,0,9,18,26,35,43,49,55,59,62,62,62,59,56,51,45,38,31,
+24,17,11,6,3,0,0,0,2,5,9,15,21,27,33,39,45,50,54,56,58,
+59,58,56,53,50,46,42,37,33,29,25,21,18,16,14,12,11,10,9,9,8,
+7,6,5,4,2,0,-1,-3,-5,-7,-9,-10,-12,-12,-13,-13,-12,-11,-9,-7,-5,
+-2,0,3,6,10,13,17,21,25,30,34,40,45,51,57,63,70,78,85,93,102,
+110,119,127,135,143,151,157,164,169,174,179,182,185,187,189,190,190,191,191,192,193,
+194,195,197,199,202,205,209,213,217,221,225,229,232,235,236,237,237,235,232,229,224,
+218,211,204,196,188,180,172,165,158,152,147,143,140,138,137,136,137,137,138,139,140,
+140,140,139,138,136,133,129,125,120,115,110,104,99,94,90,86,83,81,79,78,78,
+78,79,81,82,84,85,87,88,90,91,92,93,94,95,97,99,102,105,109,114,120,
+127,134,141,150,158,166,174,181,188,194,199,203,205,207,207,207,205,203,201,198,196,
+194,193,193,193,195,198,203,209,217,225,235,245,257,268,280,293,304,316,327,338,348,
+357,366,373,380,387,392,397,401,405,409,411,413,415,417,417,417,417,415,413,411,407,
+403,399,393,387,380,373,366,358,351,343,335,327,320,313,307,301,296,292,289,286,284,
+283,283,284,285,287,290,293,296,299,302,305,307,309,310,309,308,305,301,296,289,281,
+272,263,252,241,230,219,207,196,186,177,168,160,153,147,142,138,134,131,128,126,123,
+120,117,113,110,105,100,95,90,84,78,72,67,62,57,52,48,45,42,40,38,37,
+36,35,34,33,32,31,30,28,27,25,23,22,20,19,18,18,18,18,19,21,23,
+25,27,29,32,34,36,37,38,38,37,36,34,31,28,24,20,16,11,7,3,-1,
+-4,-8,-11,-15,-17,-20,-23,-25,-28,-31,-34,-37,-41,-45,-49,-54,-58,-63,-68,-72,-77,
+-81,-84,-87,-90,-91,-93,-94,-94,-94,-94,-94,-94,-94,-94,-95,-96,-98,-101,-104,-108,-113,
+-118,-124,-130,-137,-144,-151,-158,-165,-172,-178,-184,-190,-195,-199,-203,-206,-209,-211,-212,-213,-213,
+-213,-213,-212,-211,-210,-209,-208,-207,-206,-206,-205,-205,-205,-206,-206,-207,-208,-209,-210,-211,-211,
+-211,-210,-208,-206,-202,-197,-191,-184,-175,-166,-154,-142,-129,-114,-99,-83,-67,-51,-34,-18,-2,
+13,28,43,58,72,86,100,114,128,142,157,172,189,206,224,243,262,283,304,325,346,
+368,389,409,429,447,463,478,491,503,512,519,524,527,528,528,526,523,518,513,506,499,
+491,483,474,464,454,443,432,420,407,394,381,367,354,340,326,313,300,289,278,270,262,
+257,254,253,254,258,263,271,280,291,303,316,330,345,359,373,387,401,414,427,440,453,
+466,480,494,510,527,547,568,592,619,648,680,714,751,789,829,869,910,950,989,1026,1061,
+1092,1119,1142,1160,1174,1182,1185,1183,1176,1164,1149,1130,1109,1085,1060,1034,1008,982,958,935,915,
+896,881,868,859,853,850,850,853,860,869,882,898,916,936,960,986,1014,1044,1076,1110,1145,
+1181,1218,1256,1294,1332,1368,1404,1439,1471,1501,1529,1554,1576,1595,1611,1624,1634,1641,1645,1646,1645,
+1642,1636,1629,1619,1608,1595,1581,1565,1547,1527,1506,1482,1456,1428,1399,1367,1333,1297,1260,1221,1182,
+1142,1102,1062,1024,987,951,919,889,863,840,821,807,797,792,792,795,804,816,832,852,876,
+902,930,961,993,1027,1062,1097,1132,1167,1202,1236,1269,1302,1333,1364,1394,1423,1451,1479,1507,1535,
+1562,1590,1618,1647,1677,1707,1738,1770,1803,1836,1870,1904,1939,1973,2008,2042,2075,2108,2140,2171,2200,
+2229,2257,2283,2308,2333,2356,2379,2401,2423,2444,2465,2485,2506,2526,2546,2566,2586,2605,2624,2643,2662,
+2680,2698,2716,2733,2750,2766,2782,2798,2814,2829,2845,2861,2877,2893,2909,2926,2943,2960,2978,2996,3014,
+3032,3050,3069,3087,3105,3123,3141,3159,3176,3193,3210,3226,3241,3257,3271,3286,3299,3312,3325,3337,3349,
+3360,3371,3381,3391,3401,3410,3420,3429,3438,3447,3457,3467,3477,3488,3499,3511,3524,3537,3551,3565,3580,
+3595,3610,3624,3639,3653,3667,3679,3691,3701,3710,3718,3724,3728,3730,3731,3730,3727,3722,3715,3707,3697,
+3686,3672,3657,3641,3623,3604,3584,3562,3539,3516,3491,3467,3442,3417,3392,3368,3345,3323,3303,3285,3268,
+3254,3242,3232,3225,3220,3217,3217,3218,3220,3224,3228,3233,3237,3241,3244,3246,3246,3245,3242,3238,3232,
+3224,3215,3206,3195,3184,3173,3163,3153,3144,3137,3130,3126,3123,3121,3121,3122,3124,3128,3131,3136,3140,
+3144,3148,3151,3154,3157,3158,3160,3161,3163,3164,3167,3170,3174,3179,3187,3195,3206,3218,3232,3247,3264,
+3282,3301,3319,3338,3356,3372,3388,3401,3413,3422,3428,3432,3434,3433,3430,3425,3418,3410,3401,3392,3384,
+3375,3368,3361,3356,3353,3352,3353,3355,3360,3366,3373,3383,3393,3404,3415,3427,3389,3396,3404,3411,3418,
+3426,3433,3440,3446,3453,3460,3466,3473,3479,3486,3492,3498,3504,3510,3515,3520,3525,3528,3532,3535,3537,
+3539,3540,3541,3541,3542,3541,3541,3541,3541,3541,3541,3540,3540,3540,3540,3539,3538,3537,3535,3532,3528,
+3523,3517,3509,3501,3490,3479,3466,3452,3437,3420,3403,3384,3364,3344,3323,3301,3279,3257,3235,3213,3191,
+3170,3149,3128,3109,3090,3072,3056,3040,3026,3013,3001,2990,2980,2971,2962,2954,2946,2938,2929,2921,2912,
+2902,2891,2879,2866,2852,2837,2820,2803,2785,2767,2748,2728,2709,2689,2670,2650,2632,2613,2596,2579,2562,
+2547,2532,2518,2504,2492,2480,2468,2457,2447,2436,2427,2417,2407,2398,2388,2379,2369,2359,2348,2337,2326,
+2314,2301,2288,2274,2260,2245,2229,2214,2197,2181,2165,2148,2131,2114,2097,2080,2063,2046,2029,2011,1994,
+1976,1958,1939,1921,1902,1884,1865,1847,1829,1811,1794,1777,1761,1747,1733,1720,1708,1697,1687,1678,1669,
+1661,1653,1646,1638,1629,1621,1611,1601,1591,1579,1567,1554,1541,1527,1513,1498,1484,1470,1455,1442,1428,
+1415,1403,1391,1379,1367,1355,1343,1331,1319,1306,1293,1280,1266,1252,1238,1224,1209,1196,1182,1169,1158,
+1147,1137,1128,1121,1114,1109,1105,1101,1098,1095,1092,1089,1085,1080,1075,1068,1060,1051,1041,1029,1017,
+1003,988,973,958,942,927,911,896,882,868,854,841,829,817,806,795,784,773,762,751,740,
+728,716,704,691,678,665,652,638,624,610,596,582,568,555,541,527,514,500,487,474,461,
+449,437,425,414,404,395,386,378,372,366,362,359,357,356,357,358,360,363,366,369,372,
+375,378,379,380,380,379,376,373,368,362,355,346,337,328,317,306,295,284,273,262,251,
+240,230,220,210,200,191,181,172,163,153,144,135,126,118,109,102,94,88,83,78,75,
+72,72,72,73,76,80,85,90,96,103,109,115,122,127,133,137,141,145,147,150,151,
+153,154,156,157,159,162,164,168,171,175,180,184,189,194,198,202,206,209,212,214,216,
+217,218,218,218,218,218,219,219,221,222,224,227,229,232,236,239,243,246,249,251,253,
+255,256,256,256,255,253,251,249,246,243,239,235,231,225,220,213,206,197,188,178,166,
+154,141,126,111,96,80,65,49,34,19,6,-6,-17,-28,-37,-44,-51,-57,-62,-66,-70,
+-74,-77,-81,-84,-87,-90,-93,-96,-99,-101,-103,-104,-104,-104,-102,-100,-97,-93,-88,-83,-78,
+-73,-68,-63,-59,-56,-53,-51,-50,-50,-50,-51,-52,-53,-53,-54,-53,-52,-49,-46,-42,-37,
+-31,-25,-19,-12,-6,0,4,8,11,12,12,11,9,5,1,-4,-10,-17,-24,-31,-38,
+-45,-52,-58,-64,-69,-74,-78,-82,-85,-88,-90,-93,-94,-96,-97,-98,-98,-98,-97,-96,-94,
+-92,-90,-87,-84,-81,-78,-75,-73,-70,-68,-67,-66,-65,-65,-65,-66,-66,-66,-66,-65,-64,
+-61,-57,-51,-44,-36,-26,-14,-1,12,27,43,60,76,93,109,124,139,152,165,176,185,
+194,200,206,210,214,216,218,220,221,222,224,226,228,231,235,239,244,250,257,264,271,
+279,286,294,301,307,312,317,320,322,322,320,317,313,307,299,291,281,271,259,248,236,
+225,214,203,193,184,175,168,161,155,149,145,140,136,132,128,123,119,114,109,103,98,
+92,86,80,74,68,63,58,54,51,48,46,44,44,43,43,44,45,45,46,47,48,
+49,50,51,53,54,56,59,63,67,73,79,87,95,104,114,124,135,146,156,165,174,
+182,188,193,196,197,197,195,193,189,184,179,174,170,166,164,163,164,166,171,177,186,
+196,208,221,236,251,267,283,299,314,329,344,357,369,380,391,400,408,415,422,427,432,
+437,441,444,446,448,449,449,449,447,445,441,437,432,425,418,410,402,393,383,374,364,
+354,345,335,326,318,310,302,296,289,284,279,275,271,269,267,265,264,264,265,266,267,
+269,271,273,275,277,278,279,279,278,275,272,267,260,253,244,234,223,212,199,187,174,
+162,150,139,129,120,112,105,99,94,90,86,83,81,79,76,74,72,69,65,62,58,
+53,49,44,39,35,31,27,23,20,17,14,12,10,9,7,6,4,2,0,-1,-4,
+-6,-9,-12,-15,-17,-19,-21,-22,-23,-23,-22,-20,-19,-16,-14,-11,-9,-6,-4,-3,-2,
+-2,-3,-5,-7,-11,-15,-19,-25,-30,-35,-41,-46,-52,-56,-61,-65,-69,-73,-76,-80,-83,
+-87,-90,-94,-98,-103,-108,-113,-118,-124,-130,-135,-140,-146,-150,-154,-158,-161,-163,-164,-165,-165,
+-165,-164,-164,-163,-162,-161,-161,-161,-162,-164,-166,-169,-174,-179,-185,-191,-199,-206,-215,-223,-232,
+-241,-250,-258,-266,-274,-281,-287,-292,-296,-299,-300,-301,-301,-300,-298,-295,-291,-287,-282,-277,-272,
+-268,-263,-259,-255,-252,-250,-248,-247,-247,-247,-247,-247,-247,-247,-247,-246,-244,-241,-237,-231,-224,
+-215,-205,-194,-181,-167,-152,-136,-119,-101,-83,-64,-46,-27,-9,9,27,45,63,81,99,118,
+136,155,174,193,214,234,255,276,297,317,338,358,377,394,411,425,438,448,457,463,466,
+467,466,463,458,452,444,434,424,413,401,389,377,365,353,341,330,318,306,295,283,271,
+259,248,236,224,212,200,189,179,170,162,155,150,147,146,148,151,157,165,175,187,201,
+217,233,251,269,287,306,325,343,360,378,394,410,426,442,458,475,492,510,529,550,573,
+597,624,653,684,717,751,787,824,861,898,934,969,1002,1033,1061,1085,1105,1121,1132,1138,1140,
+1137,1130,1119,1104,1085,1064,1040,1015,989,962,935,909,885,861,840,821,805,791,781,774,770,
+770,773,780,790,804,822,843,868,896,927,961,998,1037,1077,1119,1161,1204,1246,1287,1327,1364,
+1398,1429,1457,1481,1500,1515,1526,1533,1535,1534,1529,1520,1508,1494,1477,1458,1437,1414,1390,1364,1337,
+1309,1280,1249,1218,1186,1152,1118,1084,1049,1014,979,945,912,881,851,823,798,776,758,742,731,
+723,719,719,723,730,740,753,770,788,809,832,857,883,910,939,968,998,1029,1060,1092,1125,
+1157,1191,1225,1259,1293,1328,1364,1400,1436,1472,1509,1546,1583,1621,1658,1696,1734,1771,1809,1846,1882,
+1919,1954,1989,2023,2056,2087,2118,2147,2176,2203,2228,2253,2277,2300,2322,2343,2364,2385,2406,2427,2448,
+2469,2490,2511,2533,2555,2577,2599,2620,2641,2662,2682,2701,2719,2736,2753,2768,2783,2797,2810,2823,2835,
+2848,2861,2874,2887,2901,2916,2931,2947,2963,2981,2999,3017,3036,3055,3074,3093,3112,3131,3149,3167,3184,
+3200,3216,3232,3246,3261,3274,3287,3300,3312,3323,3335,3346,3356,3367,3377,3387,3397,3406,3416,3426,3437,
+3447,3458,3470,3482,3494,3507,3521,3536,3551,3567,3584,3600,3617,3633,3650,3665,3680,3693,3706,3716,3725,
+3732,3736,3739,3739,3737,3733,3727,3719,3710,3698,3686,3672,3657,3641,3624,3607,3589,3571,3553,3535,3516,
+3497,3477,3458,3438,3418,3398,3378,3358,3339,3320,3302,3284,3267,3252,3238,3226,3215,3206,3198,3193,3188,
+3186,3184,3184,3185,3186,3187,3189,3191,3192,3192,3192,3191,3189,3186,3183,3179,3174,3169,3163,3158,3152,
+3147,3143,3139,3136,3134,3132,3131,3131,3132,3133,3134,3136,3138,3140,3142,3144,3146,3148,3150,3152,3154,
+3157,3160,3165,3170,3177,3185,3194,3206,3219,3233,3249,3266,3284,3303,3322,3341,3359,3377,3394,3409,3422,
+3433,3442,3448,3452,3453,3452,3448,3443,3436,3428,3419,3409,3400,3390,3381,3373,3367,3361,3357,3355,3354,
+3355,3357,3360,3364,3370,3376,3382,3389,3385,3389,3392,3395,3398,3402,3405,3409,3414,3419,3425,3431,3439,
+3447,3457,3467,3478,3490,3502,3514,3527,3539,3551,3562,3572,3582,3590,3598,3604,3609,3613,3616,3618,3618,
+3618,3617,3615,3612,3609,3605,3600,3594,3588,3581,3573,3564,3555,3545,3534,3522,3510,3498,3485,3471,3457,
+3443,3428,3413,3398,3382,3367,3350,3334,3317,3299,3281,3262,3243,3224,3204,3184,3163,3143,3123,3104,3085,
+3066,3049,3033,3018,3003,2990,2978,2967,2957,2947,2937,2927,2918,2907,2896,2885,2872,2858,2843,2827,2809,
+2791,2771,2751,2730,2708,2687,2664,2642,2620,2599,2578,2557,2537,2517,2499,2481,2464,2448,2433,2419,2405,
+2393,2381,2370,2360,2350,2340,2331,2321,2312,2302,2292,2281,2269,2257,2243,2229,2214,2198,2181,2163,2145,
+2126,2108,2089,2070,2051,2033,2015,1998,1980,1964,1947,1931,1915,1898,1882,1866,1849,1832,1814,1797,1779,
+1761,1744,1726,1709,1693,1677,1662,1648,1635,1623,1612,1602,1592,1583,1575,1566,1558,1549,1541,1531,1522,
+1511,1500,1489,1477,1464,1452,1439,1426,1414,1401,1390,1378,1367,1356,1346,1336,1326,1315,1305,1294,1282,
+1270,1256,1242,1228,1212,1196,1180,1164,1147,1132,1117,1103,1090,1079,1070,1063,1057,1053,1050,1049,1049,
+1049,1050,1051,1051,1050,1049,1045,1041,1034,1026,1015,1003,990,975,960,943,926,908,891,874,858,
+842,826,812,798,785,772,760,748,736,724,712,700,688,675,661,647,633,619,605,590,575,
+561,547,533,519,505,492,479,467,454,442,430,418,406,394,383,372,361,350,340,330,322,
+314,306,300,295,291,288,286,285,285,285,287,288,290,292,293,294,295,295,295,293,291,
+287,283,278,272,265,257,250,242,234,226,218,210,203,197,191,186,181,177,173,169,166,
+163,160,157,154,150,146,142,137,132,127,122,117,112,107,102,98,95,93,91,90,89,
+90,91,92,94,96,98,100,102,103,104,104,104,103,101,100,98,96,94,92,91,89,
+89,89,90,92,94,97,101,105,110,115,121,126,132,138,144,150,155,161,166,170,175,
+179,182,185,187,189,190,191,190,190,189,187,185,183,181,179,177,176,175,175,176,178,
+180,183,186,189,193,196,198,200,200,199,195,190,183,173,161,147,131,113,95,75,56,
+36,17,-1,-18,-34,-48,-60,-71,-80,-88,-94,-99,-103,-107,-110,-113,-116,-120,-123,-127,-131,
+-136,-140,-144,-148,-152,-155,-157,-159,-160,-160,-160,-158,-156,-154,-152,-149,-146,-143,-140,-137,-134,
+-131,-127,-124,-120,-115,-111,-105,-99,-93,-86,-79,-71,-64,-57,-50,-44,-39,-36,-33,-32,-32,
+-34,-37,-42,-48,-54,-61,-69,-77,-85,-93,-101,-109,-116,-123,-129,-135,-141,-147,-152,-158,-163,
+-168,-174,-178,-183,-187,-190,-193,-195,-195,-194,-193,-190,-185,-180,-174,-168,-162,-155,-149,-143,-139,
+-135,-133,-132,-132,-134,-136,-139,-143,-146,-148,-150,-149,-147,-142,-135,-125,-113,-97,-79,-58,-36,
+-12,13,38,64,90,114,137,159,178,195,210,223,233,241,247,252,255,257,259,260,261,
+262,264,266,269,272,276,281,287,294,301,308,316,325,333,341,349,356,363,369,374,378,
+381,382,382,381,378,373,367,360,351,341,330,319,306,294,281,268,255,243,231,220,210,
+201,192,184,177,170,164,158,152,146,141,135,129,123,117,110,104,97,90,84,77,71,
+65,60,55,50,46,42,39,36,34,31,29,28,26,25,25,24,25,26,28,31,35,
+40,47,54,63,73,84,95,107,120,132,143,154,164,172,178,183,185,186,185,182,177,
+172,165,159,153,147,142,139,138,139,143,149,157,168,181,195,211,229,247,265,283,301,
+318,334,349,362,374,384,394,401,408,414,419,423,427,431,434,436,439,440,442,442,442,
+441,439,436,432,427,421,414,406,398,389,380,370,361,352,343,335,327,319,312,306,300,
+294,288,283,277,272,267,262,258,253,249,245,242,240,238,237,236,236,237,237,238,239,
+239,239,238,236,233,228,222,215,206,197,186,174,162,149,136,124,112,101,91,82,74,
+68,63,58,55,52,50,49,47,46,44,42,40,38,35,32,29,25,22,18,15,11,
+8,5,2,-1,-4,-7,-10,-13,-17,-21,-26,-30,-36,-41,-46,-52,-57,-62,-66,-69,-72,
+-73,-74,-74,-72,-70,-67,-64,-60,-56,-52,-49,-46,-44,-43,-43,-44,-46,-49,-53,-58,-63,
+-69,-75,-81,-87,-93,-98,-104,-109,-113,-118,-122,-126,-130,-135,-139,-144,-149,-155,-161,-167,-173,
+-180,-186,-193,-199,-205,-210,-215,-219,-223,-225,-227,-229,-229,-229,-229,-228,-227,-226,-225,-225,-224,
+-224,-225,-226,-227,-230,-234,-238,-243,-249,-255,-263,-271,-279,-288,-297,-306,-315,-323,-332,-339,-346,
+-352,-356,-360,-362,-362,-362,-360,-357,-353,-349,-343,-337,-331,-325,-320,-314,-309,-305,-302,-299,-297,
+-296,-296,-295,-295,-295,-295,-294,-292,-289,-286,-280,-274,-265,-256,-244,-231,-217,-201,-184,-166,-148,
+-128,-108,-87,-66,-45,-24,-2,19,40,62,83,105,127,148,170,191,212,233,253,273,292,
+310,326,341,354,365,374,380,384,386,385,381,375,367,358,346,333,319,304,288,272,257,
+241,226,212,199,186,175,164,154,145,137,130,122,116,110,104,98,93,89,84,81,78,
+76,75,75,77,79,84,89,96,105,114,126,139,153,168,184,201,218,237,256,275,294,
+314,334,354,374,394,414,433,453,473,493,513,533,554,575,596,618,641,664,688,712,737,
+762,787,812,836,860,883,904,924,942,957,969,979,985,988,988,984,977,968,955,941,924,
+905,886,865,844,824,804,785,768,752,739,728,719,714,711,712,716,723,735,749,767,789,
+813,841,871,904,938,974,1011,1048,1085,1121,1155,1187,1216,1242,1265,1283,1297,1307,1313,1314,1312,
+1306,1297,1284,1269,1252,1234,1214,1193,1171,1148,1126,1102,1079,1055,1030,1005,980,955,929,903,876,
+851,825,801,777,756,736,719,705,694,686,682,681,684,690,700,712,727,745,765,786,808,
+831,855,880,904,929,954,980,1005,1032,1059,1087,1116,1146,1178,1211,1246,1283,1321,1361,1402,1444,
+1488,1532,1576,1621,1666,1711,1755,1799,1841,1883,1924,1963,2001,2037,2072,2105,2137,2167,2195,2222,2247,
+2271,2294,2316,2337,2357,2377,2397,2416,2436,2455,2475,2496,2517,2538,2560,2582,2604,2627,2649,2670,2691,
+2711,2731,2749,2766,2782,2797,2811,2824,2835,2847,2857,2868,2879,2889,2901,2912,2925,2939,2953,2968,2984,
+3001,3019,3036,3055,3073,3091,3110,3127,3145,3162,3178,3194,3209,3223,3237,3251,3264,3277,3289,3301,3314,
+3326,3338,3350,3362,3374,3385,3397,3409,3420,3431,3443,3454,3465,3476,3488,3499,3511,3524,3536,3549,3563,
+3577,3591,3605,3620,3634,3648,3662,3674,3686,3697,3706,3713,3719,3722,3723,3722,3718,3713,3705,3695,3684,
+3670,3656,3640,3623,3606,3588,3569,3551,3533,3514,3496,3478,3460,3443,3425,3407,3390,3372,3354,3336,3318,
+3300,3282,3264,3246,3228,3211,3194,3178,3163,3149,3136,3125,3114,3106,3099,3093,3089,3086,3084,3083,3084,
+3085,3087,3089,3092,3095,3098,3102,3105,3108,3111,3114,3117,3119,3121,3123,3125,3127,3128,3130,3131,3132,
+3133,3133,3134,3134,3135,3136,3136,3137,3139,3141,3143,3147,3151,3156,3163,3171,3181,3192,3205,3219,3236,
+3253,3272,3292,3313,3335,3356,3378,3399,3419,3438,3455,3470,3483,3493,3501,3505,3507,3506,3503,3497,3490,
+3480,3470,3458,3446,3435,3423,3412,3402,3394,3387,3381,3377,3374,3372,3372,3373,3374,3377,3379,3382,3385,
+3444,3448,3451,3453,3456,3458,3460,3462,3465,3469,3474,3481,3488,3498,3509,3521,3535,3550,3567,3584,3601,
+3618,3635,3651,3666,3680,3692,3702,3710,3716,3720,3722,3722,3721,3717,3712,3706,3699,3690,3681,3671,3660,
+3649,3638,3626,3614,3601,3589,3576,3564,3552,3540,3528,3517,3507,3496,3486,3476,3466,3455,3445,3433,3421,
+3407,3392,3376,3358,3338,3317,3294,3269,3243,3217,3189,3162,3134,3108,3081,3056,3033,3011,2990,2972,2954,
+2939,2924,2911,2898,2886,2873,2861,2848,2834,2820,2804,2788,2770,2752,2732,2712,2691,2670,2648,2627,2605,
+2583,2561,2539,2518,2497,2477,2457,2438,2419,2402,2385,2369,2354,2340,2326,2314,2303,2292,2282,2272,2262,
+2253,2243,2233,2222,2210,2197,2183,2168,2151,2133,2114,2095,2074,2053,2031,2010,1989,1968,1948,1929,1911,
+1894,1878,1862,1847,1833,1819,1805,1790,1776,1761,1746,1731,1715,1699,1683,1666,1650,1634,1619,1605,1591,
+1578,1567,1556,1546,1537,1529,1521,1514,1507,1499,1491,1483,1474,1464,1454,1442,1430,1418,1405,1392,1378,
+1365,1351,1338,1325,1313,1300,1288,1276,1264,1252,1240,1227,1213,1199,1184,1169,1152,1135,1118,1101,1084,
+1067,1051,1036,1023,1011,1001,993,986,982,979,977,977,978,979,981,982,982,982,980,976,971,
+963,954,944,931,917,903,887,871,855,838,822,807,792,778,764,751,739,727,715,703,691,
+679,666,653,639,624,609,594,578,563,547,531,515,500,486,472,458,446,434,422,411,401,
+390,380,370,360,349,339,329,319,308,298,289,279,270,262,254,247,241,236,232,229,226,
+224,223,223,223,223,224,225,225,226,226,226,226,225,223,221,219,215,212,207,202,197,
+192,187,181,176,172,167,163,160,158,156,155,155,155,155,156,156,157,157,156,155,153,
+150,147,142,136,129,122,114,106,97,89,80,72,65,58,52,47,42,38,35,33,30,
+28,27,25,23,22,20,18,16,14,12,10,8,7,7,7,8,10,13,16,21,26,
+32,39,46,54,62,70,78,85,92,99,105,110,114,117,120,121,121,121,119,117,114,
+110,106,102,98,95,92,89,88,88,89,92,97,102,110,118,128,138,148,159,168,177,
+185,190,193,194,192,187,180,169,156,141,123,104,84,63,42,21,1,-17,-35,-52,-67,
+-81,-93,-103,-113,-121,-129,-136,-142,-148,-154,-160,-165,-170,-175,-180,-184,-188,-191,-194,-195,-196,
+-197,-197,-196,-194,-193,-191,-189,-186,-184,-181,-178,-175,-172,-169,-165,-161,-156,-151,-146,-139,-133,
+-126,-119,-113,-107,-101,-97,-94,-92,-91,-93,-95,-99,-104,-111,-118,-126,-133,-141,-149,-155,-161,
+-166,-170,-173,-176,-177,-178,-179,-180,-181,-183,-185,-188,-192,-196,-201,-207,-212,-218,-222,-226,-229,
+-231,-231,-229,-227,-222,-217,-210,-203,-196,-189,-183,-178,-175,-173,-173,-175,-178,-182,-187,-193,-198,
+-203,-206,-206,-204,-199,-190,-177,-160,-140,-115,-88,-58,-26,7,41,74,107,138,166,192,215,
+235,251,265,275,282,287,290,292,292,292,292,291,292,292,294,296,299,302,306,311,316,
+321,325,330,335,339,344,347,351,354,357,360,363,365,367,369,370,370,370,369,367,365,
+361,357,351,345,338,331,323,314,306,298,290,282,275,268,262,257,252,247,243,239,236,
+232,228,223,218,212,206,199,191,183,174,164,154,144,134,123,113,104,95,86,78,70,
+63,57,51,46,41,37,33,30,27,26,25,24,25,27,30,34,40,47,54,63,72,
+82,92,103,112,121,130,136,142,145,147,148,146,143,140,135,130,125,121,118,116,116,
+118,123,130,139,151,164,180,197,215,233,251,269,286,301,315,328,339,348,355,361,366,
+369,372,375,377,379,381,384,387,390,393,396,398,400,402,403,402,401,398,395,390,384,
+378,371,364,357,349,342,336,330,324,319,314,310,306,302,298,293,288,283,277,270,263,
+256,249,242,235,229,223,218,215,212,211,210,210,211,213,214,215,216,216,214,212,208,
+202,196,187,178,168,157,145,134,123,112,103,94,86,80,75,70,67,65,63,62,60,
+59,57,55,52,48,44,40,34,28,23,16,10,4,-2,-8,-14,-20,-26,-32,-38,-44,
+-51,-57,-64,-71,-79,-86,-93,-100,-107,-113,-118,-122,-125,-126,-127,-126,-123,-120,-116,-111,-105,
+-100,-95,-90,-86,-83,-81,-81,-81,-83,-86,-91,-96,-102,-108,-115,-122,-128,-135,-141,-147,-153,
+-158,-163,-167,-172,-177,-182,-187,-192,-198,-205,-211,-218,-225,-233,-240,-248,-254,-261,-267,-273,-278,
+-282,-285,-288,-290,-292,-293,-293,-293,-293,-293,-292,-292,-291,-290,-290,-290,-290,-290,-291,-292,-294,
+-297,-300,-304,-309,-314,-320,-326,-333,-341,-348,-355,-362,-368,-374,-379,-383,-386,-388,-389,-388,-386,
+-384,-380,-376,-372,-368,-363,-359,-356,-353,-350,-349,-348,-347,-347,-348,-348,-348,-348,-346,-344,-341,
+-337,-331,-323,-314,-303,-290,-276,-260,-244,-225,-207,-187,-166,-145,-124,-102,-80,-58,-36,-14,8,
+30,53,75,97,119,140,161,180,199,217,233,248,261,272,280,286,290,291,290,286,279,
+270,260,247,232,217,200,182,164,146,129,111,95,79,65,51,39,29,19,11,5,0,
+-4,-7,-9,-10,-10,-8,-6,-3,0,4,10,16,23,30,38,47,56,64,74,83,92,
+101,109,118,127,135,144,153,163,173,184,196,209,223,239,256,273,292,312,332,353,374,
+395,415,434,453,471,488,503,518,532,546,559,572,586,599,613,628,644,660,676,694,711,
+728,744,760,774,786,797,805,810,812,811,808,802,794,784,772,758,744,729,715,701,688,
+676,666,658,652,649,649,651,656,664,675,689,706,726,748,772,798,826,855,885,915,944,
+973,1001,1026,1049,1069,1086,1099,1108,1113,1114,1112,1106,1096,1084,1070,1054,1036,1018,999,980,962,
+944,926,909,893,877,861,846,830,815,799,783,766,750,734,719,704,691,679,669,662,658,
+658,660,666,676,690,706,725,748,772,798,825,853,881,910,938,967,994,1022,1049,1077,1104,
+1132,1161,1190,1221,1253,1287,1323,1360,1399,1440,1482,1525,1569,1613,1658,1702,1747,1790,1833,1875,1916,
+1955,1993,2030,2065,2099,2132,2163,2193,2222,2249,2276,2301,2325,2349,2371,2393,2415,2436,2456,2476,2496,
+2517,2537,2557,2577,2597,2618,2638,2659,2679,2698,2717,2736,2754,2771,2787,2801,2815,2829,2841,2852,2863,
+2874,2885,2895,2907,2918,2930,2943,2957,2972,2987,3004,3020,3038,3056,3074,3091,3109,3126,3143,3159,3174,
+3189,3203,3216,3229,3241,3253,3265,3277,3289,3301,3313,3325,3338,3351,3364,3378,3391,3404,3417,3430,3443,
+3455,3467,3478,3489,3499,3509,3519,3528,3537,3546,3555,3565,3574,3584,3593,3603,3613,3623,3633,3642,3651,
+3660,3667,3674,3679,3683,3685,3686,3685,3682,3678,3671,3663,3653,3641,3628,3614,3599,3582,3565,3547,3528,
+3509,3490,3471,3451,3431,3411,3392,3372,3352,3332,3312,3292,3272,3251,3231,3211,3191,3171,3151,3132,3113,
+3095,3077,3061,3045,3031,3017,3006,2995,2987,2980,2974,2971,2969,2968,2970,2973,2977,2983,2990,2997,3006,
+3015,3025,3034,3044,3054,3063,3071,3079,3086,3092,3097,3101,3104,3107,3109,3110,3111,3112,3113,3114,3116,
+3119,3122,3127,3133,3141,3150,3161,3173,3188,3204,3223,3243,3265,3288,3313,3339,3365,3392,3419,3446,3471,
+3495,3518,3538,3556,3571,3583,3591,3596,3597,3596,3590,3583,3572,3560,3546,3531,3515,3500,3485,3472,3459,
+3449,3440,3433,3429,3426,3425,3425,3427,3430,3433,3437,3441,3444,3536,3544,3551,3557,3561,3566,3569,3572,
+3575,3578,3582,3586,3593,3600,3610,3621,3634,3648,3664,3681,3698,3716,3733,3750,3765,3779,3791,3801,3809,
+3814,3817,3818,3816,3812,3807,3799,3790,3780,3769,3756,3743,3729,3715,3701,3686,3671,3657,3642,3628,3615,
+3602,3590,3579,3569,3560,3552,3544,3537,3531,3524,3517,3509,3500,3490,3477,3462,3444,3424,3400,3374,3346,
+3315,3282,3248,3213,3178,3143,3109,3076,3045,3015,2988,2963,2940,2918,2899,2881,2864,2848,2832,2816,2800,
+2783,2766,2748,2729,2710,2691,2670,2650,2629,2609,2589,2569,2549,2530,2511,2492,2473,2455,2437,2419,2401,
+2384,2366,2349,2333,2316,2300,2285,2271,2257,2245,2232,2221,2210,2199,2188,2176,2164,2151,2138,2123,2107,
+2089,2070,2050,2029,2007,1985,1963,1941,1920,1899,1879,1860,1843,1827,1812,1798,1785,1772,1760,1748,1736,
+1723,1710,1696,1681,1666,1650,1634,1618,1602,1586,1571,1556,1543,1530,1519,1509,1500,1492,1485,1479,1473,
+1467,1461,1454,1447,1439,1429,1419,1408,1395,1382,1367,1352,1336,1320,1304,1288,1271,1255,1240,1224,1209,
+1193,1178,1163,1148,1132,1117,1101,1084,1068,1052,1035,1019,1003,988,974,961,949,939,930,922,916,
+911,907,905,903,901,900,898,896,893,888,883,876,867,857,846,834,821,807,793,778,764,
+750,737,724,712,700,689,679,669,659,648,638,626,614,601,587,573,557,541,524,507,490,
+473,457,442,427,413,401,389,378,369,360,352,344,336,329,321,313,304,295,286,277,267,
+257,248,238,229,220,212,204,198,192,187,183,179,176,174,172,170,169,167,167,166,165,
+164,163,162,162,160,159,158,156,154,152,149,145,142,137,133,128,123,118,113,109,105,
+102,99,97,96,95,96,97,98,100,102,104,105,105,105,103,100,95,89,81,73,63,
+52,41,29,17,5,-5,-16,-26,-34,-42,-48,-54,-58,-62,-64,-66,-67,-68,-69,-69,-69,
+-69,-69,-69,-69,-68,-68,-66,-65,-63,-60,-57,-53,-49,-45,-40,-35,-30,-24,-20,-15,-11,
+-7,-4,-1,0,1,2,2,1,1,0,0,-1,-2,-3,-4,-4,-3,-2,0,2,5,
+10,16,23,31,40,49,60,71,83,95,107,118,129,139,147,154,158,161,161,160,155,
+149,140,129,116,101,85,68,50,31,12,-7,-26,-45,-64,-83,-101,-118,-135,-151,-167,-181,
+-194,-207,-218,-227,-235,-242,-247,-250,-252,-252,-251,-249,-245,-241,-236,-231,-226,-221,-216,-212,-208,
+-205,-203,-201,-199,-197,-196,-194,-192,-190,-187,-183,-180,-176,-172,-168,-165,-162,-160,-159,-160,-162,
+-165,-170,-176,-183,-190,-198,-206,-213,-220,-225,-229,-231,-232,-231,-228,-224,-219,-213,-207,-200,-195,
+-190,-186,-183,-182,-182,-184,-187,-190,-194,-199,-203,-206,-208,-209,-209,-207,-204,-200,-194,-188,-182,
+-176,-171,-167,-164,-163,-164,-167,-171,-177,-183,-190,-197,-202,-206,-207,-204,-198,-188,-173,-154,-130,
+-103,-72,-38,-2,34,72,108,144,176,206,232,255,273,288,299,306,310,312,312,311,308,
+306,304,302,301,301,302,304,306,309,312,315,318,320,321,322,321,320,318,315,313,309,
+306,304,301,300,299,298,299,300,302,304,307,310,312,315,317,319,321,322,323,323,323,
+323,323,322,322,322,323,323,324,325,325,326,326,326,325,323,320,315,309,302,294,284,
+273,261,248,234,220,206,192,178,165,153,142,132,122,114,107,100,94,88,82,77,72,
+66,61,55,50,44,39,34,30,27,25,23,23,25,28,32,37,43,49,56,64,70,
+77,83,87,91,94,96,97,97,97,97,97,98,100,104,109,116,125,136,149,163,178,
+194,210,226,242,256,270,282,292,301,307,313,316,319,321,323,324,325,327,330,333,337,
+342,347,353,358,363,368,372,375,376,376,375,372,368,364,358,351,345,338,332,326,320,
+316,312,308,305,302,299,296,293,289,285,280,274,268,261,253,246,239,231,225,220,216,
+213,211,211,212,214,217,220,223,227,229,231,232,231,230,227,222,216,209,202,194,186,
+178,170,163,156,150,146,141,138,135,132,129,125,121,116,110,102,94,84,73,62,49,
+36,22,9,-3,-16,-28,-39,-50,-60,-69,-77,-85,-93,-100,-107,-114,-122,-129,-136,-143,-150,
+-156,-161,-166,-170,-172,-173,-172,-171,-168,-164,-159,-153,-147,-141,-136,-131,-128,-125,-125,-125,-127,
+-131,-136,-142,-150,-157,-166,-174,-182,-190,-197,-204,-210,-215,-220,-225,-229,-233,-237,-241,-246,-251,
+-256,-262,-268,-275,-282,-289,-296,-303,-309,-316,-321,-326,-331,-335,-338,-341,-344,-345,-347,-348,-349,
+-350,-350,-351,-351,-351,-351,-350,-350,-350,-349,-349,-348,-348,-348,-349,-349,-351,-353,-355,-358,-362,
+-366,-370,-375,-379,-383,-387,-390,-393,-394,-395,-395,-394,-393,-390,-388,-385,-382,-379,-377,-376,-375,
+-374,-375,-376,-378,-380,-382,-383,-385,-385,-385,-383,-379,-374,-367,-359,-348,-336,-322,-306,-290,-272,
+-254,-235,-216,-196,-176,-157,-137,-118,-98,-79,-59,-40,-21,-1,17,36,55,73,90,107,122,
+136,148,159,167,173,177,178,177,173,167,159,148,136,123,108,93,77,61,44,28,13,
+-1,-14,-27,-39,-49,-59,-67,-74,-80,-85,-89,-92,-93,-94,-93,-91,-88,-83,-78,-70,-61,
+-51,-40,-27,-13,1,16,31,46,61,74,87,98,108,115,121,126,128,129,129,129,128,
+127,127,129,131,136,143,152,163,175,190,206,223,241,258,276,292,308,322,335,347,357,
+367,376,384,394,403,415,427,442,458,477,497,519,542,566,590,613,635,654,672,686,697,
+704,707,706,702,694,684,672,658,643,628,613,599,587,577,569,564,562,563,566,573,583,
+595,610,628,648,670,694,719,747,775,804,833,863,892,920,946,971,993,1011,1027,1039,1046,
+1050,1050,1045,1037,1026,1011,995,976,956,935,914,894,873,854,835,818,801,786,772,758,745,
+732,720,708,696,685,675,666,659,653,649,648,650,656,665,677,694,714,737,764,793,825,
+859,894,930,967,1003,1040,1076,1111,1146,1180,1213,1246,1279,1312,1345,1379,1414,1449,1485,1523,1561,
+1599,1639,1678,1718,1757,1796,1835,1872,1908,1944,1978,2011,2043,2074,2104,2134,2162,2191,2218,2246,2273,
+2300,2326,2352,2377,2402,2427,2451,2474,2496,2518,2538,2558,2578,2596,2614,2632,2649,2665,2682,2697,2713,
+2728,2742,2756,2770,2783,2795,2807,2818,2830,2840,2851,2862,2873,2884,2896,2908,2921,2935,2950,2966,2983,
+3000,3018,3036,3054,3073,3091,3109,3126,3142,3158,3173,3188,3201,3214,3226,3238,3250,3262,3273,3285,3297,
+3309,3322,3335,3349,3362,3376,3390,3403,3417,3429,3442,3454,3465,3476,3485,3495,3503,3511,3519,3526,3533,
+3539,3546,3552,3559,3566,3573,3580,3587,3594,3601,3609,3616,3623,3629,3636,3641,3646,3651,3654,3657,3658,
+3658,3657,3654,3650,3644,3637,3628,3618,3606,3592,3577,3560,3542,3523,3502,3481,3459,3435,3411,3387,3362,
+3338,3313,3288,3263,3239,3214,3191,3167,3144,3122,3100,3079,3058,3038,3019,3000,2983,2966,2950,2935,2922,
+2910,2900,2892,2885,2881,2879,2878,2880,2885,2891,2899,2909,2920,2933,2946,2959,2973,2986,2999,3011,3022,
+3032,3041,3048,3054,3058,3062,3065,3067,3069,3071,3073,3076,3080,3084,3090,3097,3105,3116,3127,3141,3156,
+3174,3193,3214,3236,3261,3287,3314,3343,3373,3403,3434,3465,3496,3526,3554,3581,3605,3626,3644,3658,3668,
+3673,3675,3672,3665,3655,3642,3627,3609,3591,3572,3554,3537,3522,3509,3498,3491,3486,3485,3486,3489,3495,
+3502,3510,3518,3527,3536,3621,3636,3649,3661,3671,3679,3686,3692,3696,3699,3702,3705,3708,3712,3717,3724,
+3732,3741,3752,3763,3775,3788,3801,3813,3825,3835,3844,3852,3858,3862,3864,3865,3863,3860,3855,3849,3841,
+3831,3820,3808,3795,3780,3764,3747,3729,3710,3690,3671,3651,3631,3612,3594,3578,3563,3550,3538,3529,3521,
+3515,3510,3506,3501,3497,3490,3482,3472,3459,3443,3423,3400,3374,3344,3312,3278,3242,3205,3168,3132,3096,
+3062,3030,3000,2972,2945,2921,2898,2877,2856,2836,2816,2796,2776,2754,2733,2710,2688,2665,2641,2619,2596,
+2574,2554,2534,2515,2497,2481,2465,2449,2434,2419,2404,2388,2372,2355,2338,2320,2302,2283,2264,2246,2228,
+2210,2193,2177,2162,2147,2133,2119,2106,2092,2078,2064,2049,2032,2015,1997,1979,1959,1939,1919,1899,1879,
+1860,1842,1825,1809,1794,1781,1768,1757,1745,1734,1723,1712,1700,1687,1673,1658,1642,1626,1608,1590,1572,
+1554,1536,1519,1503,1489,1476,1464,1454,1445,1438,1432,1426,1421,1416,1410,1404,1397,1389,1380,1370,1358,
+1345,1331,1315,1299,1281,1263,1245,1227,1208,1190,1172,1154,1137,1120,1103,1087,1071,1055,1039,1024,1009,
+994,979,964,950,936,923,911,899,888,878,869,861,853,847,841,835,829,824,818,812,806,
+798,790,781,771,760,748,736,724,711,699,687,675,664,653,644,635,626,618,610,602,594,
+585,575,565,552,539,524,508,491,473,455,436,418,400,383,367,352,339,328,318,310,302,
+296,291,286,281,276,270,264,257,249,240,231,221,211,200,190,180,171,162,154,148,142,
+137,133,130,127,124,122,120,118,115,112,110,106,103,100,96,93,90,87,84,81,79,
+76,73,71,68,64,60,56,51,45,40,34,28,22,16,11,7,4,1,0,0,0,
+1,2,4,6,7,8,8,7,5,1,-3,-10,-18,-27,-36,-46,-57,-68,-78,-88,-96,
+-104,-111,-117,-122,-125,-128,-129,-130,-130,-130,-130,-129,-129,-129,-129,-129,-130,-131,-132,-133,-134,
+-135,-136,-137,-138,-138,-139,-140,-141,-142,-143,-145,-146,-148,-150,-153,-155,-157,-159,-160,-161,-161,
+-159,-157,-153,-148,-141,-133,-124,-113,-102,-90,-78,-65,-52,-39,-27,-15,-3,6,16,25,33,
+41,47,54,60,65,71,76,80,85,88,92,95,97,98,98,97,94,89,83,75,65,
+53,38,22,4,-15,-37,-60,-84,-108,-133,-158,-182,-205,-226,-246,-263,-278,-290,-299,-305,-308,
+-309,-307,-302,-296,-289,-280,-272,-263,-255,-247,-241,-236,-232,-230,-229,-229,-229,-231,-232,-233,-234,
+-235,-235,-234,-233,-231,-229,-226,-224,-222,-221,-220,-221,-223,-225,-229,-234,-239,-245,-250,-255,-260,
+-263,-265,-265,-264,-261,-256,-250,-243,-236,-227,-219,-211,-203,-196,-191,-186,-183,-181,-180,-180,-180,
+-181,-181,-180,-179,-176,-173,-168,-162,-155,-147,-139,-131,-124,-117,-111,-107,-105,-104,-105,-108,-112,
+-117,-122,-127,-131,-134,-134,-131,-124,-114,-100,-81,-59,-33,-4,27,60,93,127,159,190,217,
+242,263,280,293,303,308,311,311,309,305,301,297,293,290,288,287,288,290,292,296,299,
+303,306,309,310,310,309,307,303,298,292,285,278,271,264,258,252,248,245,243,242,242,
+243,246,249,252,256,260,265,269,274,279,284,289,294,299,305,311,317,323,330,336,343,
+349,354,359,363,365,366,365,363,358,352,344,334,322,309,295,281,266,251,236,222,209,
+198,188,179,172,166,162,159,157,155,153,151,148,145,140,133,126,117,106,94,82,69,
+56,44,32,22,13,7,3,1,1,4,9,16,24,33,42,52,61,70,78,85,90,
+95,98,101,104,107,109,113,117,123,130,138,148,159,172,185,198,211,224,237,248,258,
+267,274,280,285,289,292,294,296,299,302,305,309,314,320,326,333,340,347,353,358,362,
+365,367,366,365,361,357,351,344,337,329,322,315,308,302,297,293,289,286,283,281,278,
+276,273,269,266,262,257,253,248,244,240,237,235,234,235,236,239,243,248,254,260,267,
+273,279,284,287,290,292,292,291,289,285,281,277,272,267,262,257,252,248,244,239,235,
+229,223,215,206,196,183,169,152,134,114,93,71,49,26,4,-16,-36,-55,-71,-86,-98,
+-109,-118,-126,-132,-137,-142,-147,-152,-157,-162,-168,-174,-180,-187,-193,-198,-203,-207,-210,-211,-211,
+-209,-206,-203,-199,-194,-189,-185,-181,-179,-178,-179,-182,-186,-192,-199,-208,-217,-227,-237,-247,-257,
+-266,-274,-281,-287,-292,-296,-299,-302,-304,-307,-309,-312,-315,-319,-323,-327,-332,-338,-343,-348,-354,
+-359,-363,-367,-371,-374,-376,-379,-380,-382,-383,-385,-387,-388,-390,-392,-394,-396,-398,-400,-402,-403,
+-405,-405,-406,-407,-407,-407,-407,-407,-407,-407,-407,-408,-409,-410,-411,-412,-413,-414,-414,-414,-413,
+-411,-409,-406,-403,-399,-395,-391,-388,-385,-382,-381,-380,-381,-382,-385,-388,-391,-395,-398,-401,-402,
+-403,-401,-398,-393,-386,-377,-366,-353,-339,-323,-306,-289,-272,-254,-236,-219,-203,-187,-172,-157,-143,
+-129,-115,-101,-87,-73,-59,-46,-32,-18,-5,7,18,28,37,45,50,53,54,53,50,45,
+38,29,19,8,-3,-15,-28,-40,-52,-63,-74,-83,-92,-100,-107,-112,-117,-122,-125,-128,-131,
+-133,-135,-136,-136,-137,-136,-134,-131,-128,-122,-115,-107,-97,-85,-72,-57,-41,-25,-7,9,26,
+42,57,70,81,89,95,98,99,97,93,87,81,73,66,59,53,49,47,47,49,54,
+62,71,82,94,107,120,133,145,156,166,175,184,191,199,207,216,226,238,253,272,293,
+317,345,375,407,440,474,508,539,569,594,616,632,643,649,649,643,633,620,602,583,562,
+542,522,503,488,475,466,460,459,461,468,478,492,509,529,551,575,602,630,660,691,723,
+756,790,825,860,894,928,961,992,1021,1047,1069,1088,1102,1112,1117,1117,1113,1104,1091,1074,1053,
+1030,1006,979,952,925,898,872,847,823,801,781,762,745,730,717,706,696,689,685,682,683,
+687,693,704,717,735,756,781,810,841,876,913,952,993,1035,1077,1120,1162,1204,1245,1285,1324,
+1362,1399,1435,1470,1505,1540,1575,1610,1646,1681,1717,1753,1789,1825,1860,1895,1929,1961,1993,2023,2053,
+2081,2107,2133,2158,2182,2205,2229,2252,2276,2300,2324,2349,2373,2399,2424,2449,2473,2497,2520,2543,2564,
+2584,2602,2620,2636,2650,2664,2677,2689,2701,2712,2722,2733,2743,2753,2764,2774,2784,2794,2804,2814,2825,
+2835,2845,2856,2867,2879,2891,2903,2917,2930,2945,2960,2976,2992,3009,3026,3043,3060,3077,3093,3109,3124,
+3139,3153,3167,3181,3194,3207,3219,3232,3246,3259,3273,3287,3301,3316,3330,3345,3359,3373,3387,3400,3412,
+3423,3433,3443,3451,3459,3467,3473,3480,3486,3493,3499,3506,3513,3521,3529,3538,3546,3556,3565,3574,3584,
+3593,3602,3611,3619,3627,3634,3641,3647,3652,3657,3661,3665,3667,3668,3669,3668,3666,3662,3657,3651,3642,
+3632,3620,3605,3589,3571,3550,3528,3505,3480,3453,3426,3398,3369,3340,3311,3282,3253,3225,3198,3171,3145,
+3120,3095,3071,3048,3026,3005,2984,2964,2945,2926,2908,2892,2877,2863,2851,2841,2833,2828,2825,2825,2827,
+2832,2840,2849,2861,2875,2890,2905,2921,2937,2952,2966,2980,2991,3001,3010,3017,3022,3026,3030,3033,3035,
+3038,3041,3045,3049,3055,3063,3071,3081,3092,3104,3117,3131,3146,3162,3179,3197,3216,3237,3259,3282,3307,
+3334,3363,3393,3425,3458,3491,3525,3558,3590,3621,3648,3672,3692,3707,3718,3723,3723,3719,3709,3696,3679,
+3661,3640,3620,3600,3581,3565,3552,3542,3536,3535,3537,3542,3551,3562,3576,3590,3606,3621,3685,3705,3725,
+3742,3759,3773,3785,3795,3803,3809,3814,3817,3820,3822,3825,3827,3830,3833,3836,3840,3844,3848,3852,3856,
+3860,3863,3866,3868,3870,3870,3871,3870,3870,3868,3865,3862,3858,3852,3844,3834,3823,3809,3792,3772,3750,
+3725,3699,3670,3640,3610,3579,3550,3522,3496,3474,3454,3438,3425,3416,3410,3407,3405,3405,3405,3404,3401,
+3397,3389,3378,3363,3345,3322,3297,3268,3237,3205,3172,3138,3105,3074,3043,3014,2987,2962,2938,2915,2893,
+2872,2850,2828,2805,2781,2756,2730,2703,2675,2648,2620,2593,2567,2543,2520,2499,2479,2462,2445,2430,2416,
+2402,2388,2373,2358,2341,2324,2305,2285,2264,2242,2219,2197,2174,2152,2131,2111,2092,2074,2057,2041,2026,
+2012,1997,1983,1968,1954,1938,1923,1907,1890,1873,1857,1840,1824,1809,1795,1781,1769,1757,1746,1736,1726,
+1716,1705,1694,1682,1669,1654,1638,1621,1603,1583,1563,1542,1522,1502,1482,1464,1447,1431,1417,1405,1394,
+1385,1377,1370,1364,1358,1352,1346,1339,1331,1322,1311,1300,1287,1273,1258,1242,1225,1208,1190,1172,1154,
+1136,1118,1100,1083,1066,1049,1033,1017,1001,986,971,956,942,927,913,899,885,872,859,847,835,
+823,812,802,791,782,773,764,755,747,739,731,722,713,704,695,686,676,666,656,646,636,
+626,617,608,600,592,585,579,573,567,561,555,549,541,532,522,510,497,482,465,447,428,
+408,388,368,348,329,312,296,282,269,259,251,244,239,234,230,227,223,218,212,206,198,
+189,178,167,156,144,132,121,110,100,92,85,79,74,71,69,67,66,64,63,62,60,
+57,54,50,45,40,35,29,24,19,14,9,5,2,-1,-4,-7,-10,-13,-16,-20,-25,
+-30,-36,-42,-48,-54,-61,-67,-73,-78,-83,-86,-89,-92,-93,-94,-94,-94,-95,-95,-96,-97,
+-98,-101,-104,-108,-113,-118,-123,-129,-134,-140,-145,-150,-154,-157,-159,-161,-162,-163,-163,-163,-163,
+-163,-164,-164,-165,-167,-170,-173,-176,-181,-186,-191,-197,-203,-209,-215,-222,-228,-234,-241,-247,-254,
+-261,-268,-275,-282,-289,-296,-302,-308,-313,-317,-320,-321,-319,-316,-310,-301,-289,-275,-258,-239,-218,
+-196,-173,-149,-126,-103,-82,-63,-45,-31,-19,-9,-3,1,3,4,3,2,0,-1,-2,-2,
+0,1,5,10,17,24,31,38,45,51,55,56,56,52,46,36,23,7,-11,-33,-57,
+-82,-109,-135,-162,-187,-211,-233,-252,-269,-281,-291,-297,-300,-299,-296,-292,-285,-278,-270,-262,-255,
+-249,-245,-242,-242,-243,-245,-249,-254,-260,-265,-271,-276,-280,-283,-284,-284,-283,-280,-277,-273,-268,
+-263,-259,-255,-251,-249,-247,-246,-246,-246,-247,-248,-249,-250,-250,-250,-249,-247,-245,-242,-239,-235,
+-232,-228,-224,-221,-218,-216,-213,-211,-208,-206,-203,-199,-194,-188,-181,-172,-162,-151,-138,-125,-111,
+-97,-83,-69,-56,-44,-33,-25,-18,-12,-9,-6,-6,-6,-6,-6,-6,-5,-2,2,9,18,
+30,45,62,81,102,124,147,169,191,212,230,246,260,270,278,282,284,283,280,276,271,
+265,260,256,252,250,250,251,254,258,263,268,274,280,285,289,292,294,295,294,292,290,
+286,282,277,273,268,264,261,258,255,253,252,251,250,249,248,247,246,245,244,244,243,
+243,244,246,249,253,258,264,272,280,289,299,308,318,327,335,342,348,352,353,353,351,
+346,340,332,322,311,299,286,273,260,248,236,226,217,210,205,202,201,202,204,207,211,
+216,221,225,227,229,229,226,221,214,204,191,177,162,145,128,111,95,80,67,57,50,
+45,44,45,50,57,65,75,86,97,108,117,126,132,137,140,142,142,140,139,137,135,
+134,134,136,140,145,152,161,172,183,195,208,220,232,244,254,263,270,276,282,286,289,
+292,295,297,300,303,307,311,315,320,325,329,333,337,339,341,341,340,338,334,330,324,
+318,311,305,298,292,286,280,276,271,268,265,262,260,258,257,255,254,252,252,251,251,
+252,253,256,259,263,269,275,283,291,300,309,318,327,335,342,349,354,358,361,362,362,
+361,359,356,352,348,343,338,333,327,321,315,307,299,289,277,263,247,229,209,186,162,
+135,107,79,50,22,-5,-31,-55,-76,-94,-109,-121,-130,-137,-141,-144,-145,-146,-146,-148,-150,
+-153,-158,-164,-172,-181,-191,-201,-212,-222,-231,-239,-246,-250,-252,-253,-252,-250,-246,-243,-239,-235,
+-233,-232,-232,-235,-239,-245,-253,-262,-273,-284,-295,-306,-317,-327,-336,-343,-350,-355,-359,-362,-364,
+-366,-368,-370,-371,-373,-376,-379,-382,-386,-390,-394,-397,-401,-404,-407,-409,-411,-413,-414,-415,-416,
+-417,-418,-420,-422,-425,-428,-431,-436,-440,-445,-449,-454,-458,-462,-465,-468,-470,-471,-472,-472,-472,
+-472,-471,-470,-468,-467,-465,-463,-461,-459,-456,-452,-448,-443,-438,-432,-426,-419,-413,-406,-401,-395,
+-391,-388,-386,-385,-386,-387,-390,-393,-397,-400,-404,-406,-407,-406,-403,-399,-392,-384,-373,-361,-347,
+-332,-317,-301,-285,-270,-256,-242,-229,-218,-208,-198,-189,-181,-173,-165,-156,-148,-139,-130,-120,-110,
+-100,-90,-81,-73,-66,-60,-55,-53,-52,-54,-56,-61,-67,-75,-83,-92,-101,-110,-119,-128,-135,
+-142,-149,-154,-158,-162,-165,-168,-170,-171,-173,-174,-175,-176,-178,-179,-179,-180,-180,-180,-178,-176,
+-173,-168,-163,-156,-147,-137,-126,-114,-101,-87,-73,-59,-46,-33,-22,-12,-5,0,3,4,3,
+0,-5,-11,-18,-25,-33,-39,-44,-47,-49,-48,-45,-39,-32,-23,-13,-2,8,19,29,38,
+46,52,58,63,67,72,78,85,95,107,123,143,167,195,226,260,296,334,371,407,441,
+471,497,517,531,539,541,536,526,512,493,472,450,428,407,388,373,361,355,353,356,364,
+377,394,414,438,464,493,523,554,587,620,654,689,724,761,798,836,874,913,952,990,1027,
+1063,1096,1126,1153,1175,1192,1204,1210,1211,1206,1196,1180,1160,1137,1110,1080,1049,1017,985,953,923,
+894,868,844,823,806,792,782,775,772,773,778,788,801,818,839,864,892,924,959,996,1036,
+1078,1122,1166,1210,1255,1299,1343,1385,1426,1465,1503,1539,1574,1608,1640,1672,1704,1735,1767,1798,1830,
+1862,1895,1927,1960,1993,2025,2056,2087,2117,2145,2172,2198,2222,2245,2267,2288,2308,2328,2348,2368,2388,
+2408,2429,2450,2472,2493,2515,2537,2558,2579,2599,2617,2635,2651,2665,2678,2690,2700,2710,2718,2726,2734,
+2742,2750,2758,2766,2775,2784,2794,2805,2815,2826,2838,2849,2861,2872,2883,2895,2906,2918,2929,2941,2953,
+2965,2977,2990,3002,3015,3028,3041,3054,3067,3079,3092,3104,3117,3129,3141,3154,3167,3180,3193,3207,3222,
+3237,3253,3269,3285,3301,3317,3333,3348,3362,3375,3387,3397,3407,3415,3422,3427,3433,3437,3442,3447,3452,
+3458,3465,3473,3483,3493,3505,3518,3532,3546,3561,3576,3591,3606,3620,3633,3646,3657,3668,3677,3685,3692,
+3698,3703,3707,3710,3712,3712,3712,3710,3707,3703,3697,3689,3679,3668,3654,3639,3621,3601,3579,3556,3531,
+3504,3477,3448,3418,3388,3358,3328,3298,3268,3239,3210,3181,3154,3127,3101,3075,3050,3025,3001,2978,2955,
+2933,2912,2892,2873,2856,2840,2827,2817,2809,2804,2802,2804,2808,2816,2827,2840,2855,2871,2889,2907,2925,
+2942,2958,2972,2985,2995,3004,3010,3015,3018,3020,3023,3025,3028,3032,3037,3044,3053,3064,3077,3091,3106,
+3121,3138,3154,3169,3184,3198,3212,3225,3237,3250,3263,3277,3293,3312,3333,3357,3384,3415,3448,3484,3522,
+3560,3598,3635,3670,3702,3729,3751,3767,3777,3780,3778,3770,3757,3740,3719,3697,3675,3653,3633,3616,3602,
+3592,3587,3587,3592,3600,3613,3628,3646,3665,3685,3732,3753,3773,3794,3813,3831,3848,3863,3876,3888,3897,
+3906,3913,3918,3922,3925,3927,3928,3928,3926,3924,3920,3916,3911,3905,3899,3893,3886,3881,3875,3871,3868,
+3865,3864,3863,3862,3861,3859,3856,3850,3842,3831,3815,3795,3771,3743,3711,3675,3636,3595,3554,3512,3472,
+3434,3400,3370,3344,3324,3309,3299,3293,3291,3292,3295,3298,3301,3302,3301,3297,3289,3277,3262,3242,3220,
+3195,3168,3140,3111,3083,3056,3030,3006,2984,2963,2943,2924,2905,2887,2867,2846,2823,2799,2773,2745,2716,
+2685,2654,2623,2592,2563,2535,2509,2484,2462,2442,2424,2407,2390,2375,2359,2343,2326,2307,2288,2267,2244,
+2221,2196,2171,2146,2121,2097,2074,2052,2032,2013,1996,1980,1965,1951,1937,1924,1911,1898,1884,1871,1856,
+1842,1828,1813,1799,1785,1772,1760,1748,1737,1726,1716,1706,1695,1685,1673,1661,1647,1632,1615,1597,1578,
+1558,1537,1516,1494,1473,1452,1433,1415,1398,1383,1369,1357,1346,1336,1327,1319,1310,1302,1294,1284,1275,
+1264,1252,1239,1226,1211,1196,1180,1164,1147,1131,1114,1098,1081,1065,1049,1033,1018,1002,987,971,956,
+941,926,911,896,881,866,851,837,823,809,795,781,768,755,743,731,720,709,698,688,678,
+669,660,651,643,635,627,619,611,602,594,586,578,571,563,556,548,542,535,530,524,518,
+513,507,501,495,487,479,469,458,445,430,414,397,378,359,339,320,300,282,265,249,234,
+222,211,202,195,188,182,177,172,166,160,152,144,134,123,111,99,86,73,60,47,36,
+26,17,10,5,1,-1,-3,-4,-5,-6,-6,-7,-9,-11,-14,-17,-22,-26,-31,-36,-41,
+-46,-50,-55,-58,-62,-65,-68,-70,-73,-76,-80,-83,-88,-93,-98,-103,-110,-116,-122,-129,-135,
+-141,-147,-152,-157,-162,-166,-170,-174,-178,-182,-186,-190,-194,-198,-202,-205,-209,-212,-215,-218,-220,
+-221,-222,-222,-221,-220,-219,-218,-216,-214,-213,-211,-211,-211,-211,-213,-215,-218,-222,-227,-232,-239,
+-246,-253,-261,-269,-277,-286,-294,-303,-311,-319,-327,-336,-344,-352,-361,-369,-378,-387,-396,-404,-412,
+-419,-425,-429,-432,-432,-429,-423,-415,-402,-387,-368,-346,-322,-296,-268,-239,-211,-183,-157,-132,-111,
+-93,-78,-66,-58,-54,-52,-53,-56,-59,-64,-68,-71,-73,-73,-71,-68,-62,-54,-45,-34,-24,
+-13,-3,5,12,17,19,17,13,5,-5,-18,-35,-53,-73,-93,-114,-135,-154,-172,-189,-202,
+-213,-221,-227,-230,-231,-229,-226,-223,-218,-215,-211,-209,-209,-211,-214,-220,-228,-237,-247,-259,-271,
+-282,-293,-303,-311,-317,-320,-322,-321,-318,-313,-307,-299,-291,-282,-273,-264,-256,-248,-241,-235,-230,
+-225,-222,-219,-216,-214,-212,-211,-211,-211,-211,-212,-213,-216,-218,-221,-224,-227,-230,-231,-232,-231,
+-229,-224,-217,-208,-196,-182,-166,-147,-128,-107,-86,-64,-43,-23,-3,14,30,45,58,69,79,
+87,94,101,107,112,118,124,130,137,145,154,163,173,184,194,205,216,226,236,244,251,
+256,259,261,261,259,255,250,244,237,230,223,217,212,207,205,204,204,207,211,216,222,
+229,236,243,249,255,260,264,267,269,271,272,273,274,276,278,280,283,287,291,296,300,
+304,307,309,310,309,306,302,296,289,281,272,262,254,246,239,235,232,232,234,238,244,
+252,261,272,282,293,303,313,320,327,331,333,333,332,328,323,316,308,300,291,282,272,
+264,256,249,243,239,236,234,234,236,239,244,250,257,264,271,279,286,292,297,299,300,
+299,295,289,281,270,258,245,231,216,202,189,178,168,161,156,153,154,156,161,167,174,
+181,188,194,199,202,202,201,198,193,186,178,170,161,153,147,142,139,139,142,147,155,
+166,178,191,206,221,235,248,261,271,280,287,292,295,297,297,296,295,293,291,289,287,
+286,286,286,286,287,287,288,289,289,289,288,287,286,283,281,278,275,271,268,265,261,
+258,255,253,250,249,247,246,246,247,248,250,253,257,262,268,275,284,293,302,313,323,
+334,345,356,365,374,382,389,394,398,400,400,399,397,393,389,383,377,370,362,354,345,
+336,326,316,304,291,277,261,243,224,202,179,153,127,99,71,43,16,-10,-34,-56,-74,
+-90,-102,-111,-116,-119,-119,-117,-113,-110,-107,-105,-105,-107,-112,-120,-131,-144,-159,-176,-195,-213,
+-231,-247,-262,-274,-284,-290,-294,-295,-293,-290,-285,-280,-274,-269,-266,-264,-264,-266,-271,-277,-286,
+-296,-307,-319,-331,-343,-355,-365,-375,-383,-390,-396,-401,-405,-409,-412,-415,-418,-421,-424,-428,-431,
+-435,-439,-443,-446,-449,-452,-454,-455,-457,-458,-459,-459,-460,-462,-463,-466,-469,-473,-477,-482,-488,
+-494,-500,-507,-512,-518,-523,-527,-530,-532,-533,-533,-533,-531,-529,-526,-523,-519,-515,-510,-505,-500,
+-495,-489,-482,-475,-468,-460,-452,-444,-436,-427,-419,-412,-405,-400,-395,-392,-390,-389,-389,-390,-392,
+-393,-395,-396,-396,-394,-392,-388,-382,-374,-365,-354,-342,-330,-318,-305,-293,-282,-272,-263,-256,-249,
+-244,-240,-236,-233,-230,-227,-222,-218,-212,-205,-198,-189,-181,-172,-163,-154,-147,-140,-135,-132,-130,
+-130,-132,-135,-140,-145,-151,-158,-165,-172,-178,-185,-190,-195,-200,-204,-207,-211,-214,-217,-221,-224,
+-228,-231,-235,-239,-243,-247,-250,-252,-254,-255,-255,-254,-252,-249,-245,-240,-234,-226,-219,-211,-202,
+-193,-184,-176,-168,-161,-154,-149,-144,-141,-140,-140,-141,-143,-146,-150,-154,-158,-162,-165,-167,-167,
+-165,-161,-155,-147,-137,-125,-111,-97,-82,-68,-54,-42,-31,-22,-15,-9,-6,-3,-1,0,2,
+6,13,22,34,50,69,91,116,143,171,199,227,252,275,294,309,319,324,324,319,311,
+300,287,274,260,249,240,235,234,238,248,262,281,304,331,361,394,428,463,498,534,569,
+603,637,671,704,737,771,806,841,877,913,950,987,1023,1059,1092,1123,1151,1175,1194,1208,1217,
+1220,1218,1210,1197,1180,1158,1134,1107,1078,1049,1019,991,964,940,919,901,886,876,871,870,874,
+883,897,915,938,965,996,1031,1069,1110,1154,1199,1245,1292,1339,1385,1431,1476,1519,1560,1599,1635,
+1670,1702,1733,1762,1789,1816,1842,1867,1893,1919,1945,1972,2000,2029,2058,2088,2118,2148,2179,2208,2237,
+2265,2292,2317,2342,2365,2386,2407,2426,2445,2463,2481,2498,2516,2533,2551,2569,2587,2605,2623,2640,2657,
+2672,2687,2701,2714,2725,2735,2744,2752,2760,2767,2773,2780,2787,2794,2802,2811,2821,2831,2842,2854,2866,
+2879,2891,2904,2916,2928,2940,2951,2962,2972,2982,2992,3001,3010,3019,3029,3038,3047,3056,3065,3075,3084,
+3094,3104,3113,3123,3133,3144,3154,3166,3177,3190,3203,3217,3231,3247,3262,3278,3294,3310,3325,3340,3353,
+3366,3377,3386,3395,3401,3407,3412,3416,3419,3423,3427,3432,3438,3446,3454,3465,3477,3491,3507,3523,3541,
+3559,3578,3596,3615,3632,3649,3665,3680,3694,3707,3718,3728,3736,3744,3751,3756,3760,3763,3765,3765,3764,
+3761,3756,3750,3741,3731,3718,3703,3686,3668,3647,3625,3602,3577,3551,3524,3496,3468,3440,3411,3382,3354,
+3325,3296,3268,3239,3211,3182,3154,3125,3097,3069,3041,3013,2986,2960,2935,2911,2889,2869,2851,2837,2825,
+2817,2813,2813,2816,2823,2833,2847,2862,2880,2899,2918,2937,2956,2972,2987,2999,3009,3016,3020,3023,3024,
+3024,3024,3024,3026,3030,3036,3045,3058,3074,3092,3114,3137,3161,3186,3211,3234,3255,3274,3291,3304,3315,
+3324,3332,3338,3345,3353,3363,3376,3392,3413,3438,3468,3502,3540,3580,3622,3663,3704,3742,3777,3806,3830,
+3847,3857,3860,3857,3847,3832,3813,3791,3767,3743,3720,3699,3681,3667,3657,3652,3652,3657,3666,3679,3694,
+3712,3732,3778,3792,3807,3822,3838,3853,3869,3884,3899,3914,3928,3941,3954,3965,3975,3983,3990,3994,3996,
+3995,3991,3986,3977,3967,3956,3943,3929,3916,3904,3892,3883,3875,3870,3867,3865,3866,3867,3868,3869,3868,
+3864,3857,3846,3829,3807,3780,3747,3709,3667,3622,3574,3526,3478,3432,3388,3349,3315,3286,3263,3246,3233,
+3226,3222,3221,3221,3222,3222,3220,3215,3208,3197,3183,3165,3145,3123,3100,3076,3052,3029,3008,2989,2971,
+2956,2942,2930,2918,2906,2893,2879,2862,2843,2822,2797,2770,2741,2709,2677,2643,2610,2577,2545,2515,2487,
+2461,2437,2415,2394,2375,2356,2337,2318,2298,2278,2256,2233,2209,2184,2159,2134,2109,2084,2061,2038,2018,
+1998,1981,1965,1950,1936,1923,1910,1898,1885,1872,1859,1845,1831,1816,1802,1787,1773,1759,1745,1732,1719,
+1707,1695,1684,1672,1660,1647,1634,1619,1604,1587,1569,1550,1530,1510,1489,1469,1448,1428,1410,1392,1375,
+1360,1346,1334,1322,1312,1301,1291,1281,1271,1260,1249,1237,1224,1210,1195,1180,1165,1149,1133,1117,1101,
+1085,1070,1055,1040,1025,1011,997,983,969,955,940,926,911,896,880,865,850,835,819,805,790,
+776,762,748,735,722,710,698,687,676,665,655,645,636,627,618,609,601,593,584,576,568,
+559,550,541,532,522,512,502,493,483,474,465,456,448,441,433,426,419,412,405,397,388,
+378,367,355,342,328,312,296,280,263,247,231,215,201,187,175,164,154,144,135,127,118,
+110,101,91,81,70,58,45,32,19,6,-5,-17,-28,-39,-48,-55,-62,-68,-72,-76,-79,
+-81,-83,-85,-88,-90,-92,-95,-97,-100,-103,-105,-108,-110,-112,-114,-117,-119,-121,-123,-126,-129,
+-133,-138,-143,-148,-154,-161,-167,-174,-181,-188,-194,-201,-207,-213,-218,-224,-229,-235,-241,-247,-253,
+-260,-267,-274,-281,-289,-295,-302,-308,-313,-317,-320,-322,-323,-323,-322,-320,-318,-315,-313,-310,-308,
+-306,-304,-303,-303,-304,-305,-307,-309,-312,-315,-319,-323,-328,-333,-338,-343,-348,-354,-360,-366,-372,
+-378,-384,-391,-397,-404,-411,-418,-426,-433,-441,-449,-457,-464,-472,-479,-484,-489,-492,-492,-491,-486,
+-479,-468,-454,-437,-418,-395,-371,-345,-318,-292,-265,-240,-217,-196,-178,-163,-151,-141,-135,-131,-129,
+-128,-128,-128,-128,-127,-125,-122,-117,-111,-104,-96,-87,-78,-70,-62,-56,-51,-49,-48,-50,-53,
+-59,-67,-76,-87,-98,-110,-122,-133,-144,-153,-161,-167,-171,-174,-175,-174,-172,-170,-167,-164,-162,
+-160,-161,-162,-166,-173,-181,-192,-204,-219,-234,-250,-266,-282,-297,-310,-320,-329,-334,-337,-336,-333,
+-328,-321,-312,-301,-290,-279,-268,-257,-247,-237,-228,-221,-214,-208,-203,-198,-195,-192,-189,-188,-187,
+-188,-190,-192,-196,-200,-205,-210,-215,-219,-222,-223,-221,-217,-210,-200,-187,-170,-150,-128,-103,-78,
+-51,-25,0,25,48,68,87,103,117,129,139,148,156,163,171,179,187,196,206,216,227,
+238,248,259,268,277,284,289,293,294,293,291,286,280,272,263,253,242,231,220,209,200,
+191,184,178,174,172,172,173,176,181,187,194,201,208,214,220,225,229,232,234,235,235,
+235,236,237,238,242,247,253,262,272,283,295,307,319,330,339,345,349,350,348,343,335,
+325,312,299,285,272,259,249,241,235,233,234,237,243,252,261,272,283,294,305,314,321,
+327,331,333,334,332,330,327,323,319,314,309,305,301,297,294,291,289,287,285,284,283,
+283,283,285,287,290,293,298,303,309,315,321,327,333,338,341,343,344,343,340,335,329,
+321,313,303,294,285,277,270,263,259,256,254,254,254,256,257,258,258,256,254,249,243,
+235,225,214,202,190,179,169,161,155,151,151,155,161,171,183,197,213,230,247,263,278,
+291,302,310,316,318,318,316,311,305,297,289,280,272,264,258,252,247,244,242,241,241,
+242,243,245,247,249,250,252,252,253,252,251,250,248,246,243,241,239,237,236,235,236,
+238,241,246,251,259,267,277,287,299,311,323,335,347,358,369,378,387,393,399,402,404,
+405,403,401,396,391,384,376,367,357,346,335,324,312,299,286,273,259,244,229,212,195,
+177,157,137,116,94,73,51,30,9,-8,-25,-39,-51,-60,-65,-68,-69,-67,-64,-59,-55,
+-51,-49,-49,-52,-58,-68,-81,-97,-117,-139,-162,-186,-210,-233,-254,-273,-288,-299,-307,-311,-312,
+-310,-305,-298,-291,-284,-277,-272,-268,-267,-268,-272,-278,-287,-297,-309,-322,-335,-348,-361,-374,-385,
+-396,-405,-414,-422,-429,-435,-441,-446,-452,-457,-462,-467,-472,-477,-482,-486,-490,-493,-496,-498,-500,
+-501,-503,-504,-506,-507,-510,-512,-516,-520,-524,-530,-535,-541,-548,-554,-559,-565,-569,-573,-576,-577,
+-578,-578,-576,-574,-570,-566,-562,-557,-551,-546,-540,-533,-527,-521,-514,-507,-499,-491,-483,-474,-465,
+-456,-447,-437,-428,-420,-411,-404,-397,-391,-385,-381,-377,-373,-370,-367,-363,-359,-355,-349,-343,-337,
+-329,-321,-313,-305,-298,-291,-285,-280,-276,-274,-273,-274,-275,-277,-280,-282,-284,-285,-285,-283,-280,
+-275,-269,-262,-253,-244,-234,-224,-215,-208,-201,-196,-193,-191,-191,-193,-195,-199,-204,-209,-214,-219,
+-224,-228,-232,-236,-240,-244,-247,-252,-257,-262,-269,-276,-284,-292,-301,-310,-319,-328,-336,-342,-347,
+-351,-353,-354,-352,-350,-346,-340,-334,-328,-321,-314,-308,-301,-296,-291,-286,-283,-280,-278,-277,-276,
+-276,-277,-279,-281,-283,-286,-288,-291,-293,-294,-295,-294,-292,-287,-281,-272,-260,-247,-231,-213,-194,
+-173,-153,-132,-112,-94,-78,-64,-53,-44,-38,-35,-33,-33,-34,-36,-37,-37,-36,-33,-28,-21,
+-13,-2,8,19,31,42,51,59,66,70,73,74,74,75,75,77,81,88,99,113,132,
+155,183,214,248,285,324,364,404,444,483,521,557,591,624,655,685,714,743,772,801,830,
+860,891,922,953,983,1013,1040,1066,1088,1107,1122,1132,1138,1139,1135,1127,1116,1101,1083,1063,1042,
+1020,998,977,958,941,926,915,908,905,906,911,921,936,956,980,1008,1041,1077,1117,1159,1204,
+1251,1298,1347,1395,1443,1490,1536,1580,1621,1661,1698,1732,1765,1795,1823,1850,1875,1900,1923,1947,1970,
+1994,2018,2043,2068,2095,2122,2150,2179,2208,2237,2266,2295,2323,2350,2377,2402,2427,2450,2472,2493,2512,
+2531,2549,2567,2583,2600,2616,2633,2649,2665,2680,2696,2711,2726,2740,2754,2767,2779,2790,2800,2810,2819,
+2828,2836,2844,2852,2861,2869,2879,2888,2898,2909,2920,2931,2942,2953,2964,2974,2984,2994,3003,3011,3019,
+3026,3033,3040,3046,3053,3060,3067,3075,3082,3090,3099,3108,3117,3126,3135,3145,3155,3165,3175,3185,3196,
+3207,3218,3230,3242,3255,3268,3281,3294,3308,3321,3333,3345,3357,3367,3377,3385,3392,3399,3405,3410,3416,
+3421,3427,3433,3440,3449,3458,3469,3481,3495,3510,3525,3542,3559,3576,3593,3611,3627,3644,3660,3675,3689,
+3703,3717,3730,3742,3754,3765,3776,3786,3796,3804,3811,3816,3819,3821,3820,3817,3811,3803,3793,3780,3765,
+3747,3728,3708,3686,3663,3639,3614,3589,3564,3538,3512,3486,3459,3431,3403,3375,3345,3315,3284,3252,3219,
+3186,3153,3120,3087,3055,3024,2995,2967,2942,2919,2900,2884,2873,2865,2861,2862,2866,2874,2886,2900,2916,
+2934,2952,2970,2987,3003,3016,3027,3034,3039,3041,3040,3038,3034,3030,3027,3026,3028,3032,3042,3055,3074,
+3097,3124,3155,3188,3223,3259,3294,3327,3357,3384,3407,3426,3440,3452,3460,3466,3471,3476,3482,3491,3504,
+3520,3541,3566,3596,3630,3666,3705,3744,3782,3818,3851,3879,3902,3918,3929,3932,3929,3921,3908,3891,3871,
+3849,3827,3806,3786,3769,3755,3744,3737,3734,3734,3738,3745,3754,3765,3778,3849,3852,3855,3858,3862,3868,
+3874,3882,3892,3903,3915,3929,3943,3958,3972,3986,3998,4007,4014,4019,4019,4017,4011,4002,3990,3977,3962,
+3947,3932,3918,3906,3896,3888,3884,3881,3881,3883,3886,3888,3890,3890,3886,3879,3866,3849,3825,3796,3762,
+3722,3678,3632,3583,3533,3485,3438,3394,3353,3318,3287,3261,3240,3223,3210,3200,3191,3183,3175,3166,3155,
+3143,3127,3110,3091,3070,3049,3028,3007,2988,2970,2955,2942,2932,2924,2918,2913,2909,2904,2897,2889,2877,
+2863,2845,2823,2798,2769,2738,2705,2670,2635,2601,2566,2534,2503,2473,2446,2421,2397,2374,2352,2330,2308,
+2286,2263,2240,2216,2191,2166,2141,2116,2091,2067,2045,2023,2003,1985,1967,1951,1936,1922,1907,1894,1880,
+1866,1852,1837,1822,1806,1791,1775,1760,1744,1729,1715,1701,1687,1673,1660,1647,1634,1620,1605,1590,1574,
+1557,1539,1521,1501,1482,1462,1442,1422,1403,1385,1368,1352,1337,1323,1310,1299,1287,1276,1266,1255,1244,
+1233,1221,1208,1194,1180,1165,1150,1135,1119,1103,1088,1072,1057,1043,1029,1015,1002,989,975,962,949,
+935,921,907,892,877,862,847,832,817,802,788,774,761,748,736,725,714,703,693,683,674,
+664,655,645,636,626,617,607,597,587,577,566,555,543,531,519,506,492,478,464,450,435,
+421,408,395,383,371,361,352,344,337,330,325,319,313,308,301,294,286,277,267,255,243,
+230,216,202,187,172,157,143,129,116,103,90,78,66,54,43,31,20,8,-3,-15,-26,
+-38,-49,-60,-70,-80,-89,-97,-105,-113,-120,-126,-132,-138,-143,-148,-153,-157,-161,-165,-168,-170,
+-172,-173,-173,-173,-173,-173,-173,-174,-175,-177,-180,-184,-190,-197,-205,-214,-224,-234,-245,-255,-266,
+-275,-284,-292,-299,-305,-310,-314,-319,-323,-328,-332,-338,-344,-351,-358,-366,-374,-382,-390,-397,-404,
+-410,-414,-418,-420,-421,-421,-420,-419,-418,-416,-414,-413,-412,-412,-412,-412,-413,-414,-415,-416,-417,
+-417,-418,-417,-417,-417,-416,-416,-416,-417,-418,-421,-424,-427,-432,-437,-443,-449,-455,-462,-469,-475,
+-482,-488,-494,-500,-506,-511,-516,-521,-525,-528,-529,-530,-529,-525,-520,-511,-501,-488,-472,-455,-435,
+-414,-392,-369,-347,-325,-304,-285,-267,-251,-238,-225,-215,-206,-199,-192,-186,-180,-175,-169,-163,-156,
+-150,-144,-138,-133,-129,-126,-123,-123,-124,-126,-129,-134,-139,-145,-151,-158,-164,-169,-174,-177,-180,
+-181,-181,-180,-178,-176,-172,-168,-164,-160,-156,-153,-151,-150,-150,-152,-156,-162,-169,-179,-190,-203,
+-216,-230,-245,-258,-271,-282,-292,-299,-303,-305,-305,-301,-296,-288,-279,-269,-259,-248,-238,-228,-220,
+-213,-206,-201,-197,-194,-192,-190,-188,-187,-186,-185,-184,-184,-185,-185,-187,-189,-191,-193,-194,-195,
+-194,-192,-187,-179,-168,-154,-136,-114,-90,-63,-35,-5,23,52,79,104,127,145,161,173,182,
+188,192,195,197,199,201,205,210,216,224,233,242,253,263,273,281,288,293,296,296,294,
+289,283,274,264,253,241,229,217,206,196,186,178,171,166,163,161,161,162,165,169,174,
+180,186,192,198,204,208,211,213,213,212,210,207,203,199,196,194,193,194,198,204,212,
+222,235,248,263,277,290,302,311,318,322,322,319,313,305,295,283,272,260,250,242,237,
+234,234,237,242,250,259,270,281,293,303,313,321,327,332,335,337,338,338,337,336,335,
+334,334,334,335,336,337,339,340,340,340,339,337,335,332,329,325,322,319,317,315,315,
+317,319,323,329,335,342,349,356,363,369,373,376,377,376,373,368,362,354,346,337,329,
+320,313,306,300,296,292,290,287,285,283,280,275,270,263,255,246,235,225,214,203,194,
+187,182,180,182,186,194,204,218,233,249,267,284,300,314,326,335,341,344,344,341,335,
+326,316,305,293,281,269,259,250,242,236,231,228,227,227,227,229,231,233,235,237,237,
+238,237,235,233,230,226,223,219,216,214,213,213,214,217,222,229,238,248,259,272,285,
+298,312,325,337,349,359,368,376,381,386,388,389,389,388,385,381,376,369,362,354,345,
+335,325,314,302,289,277,264,250,237,223,210,196,182,167,153,138,123,107,92,77,62,
+48,34,22,11,2,-4,-9,-13,-15,-15,-15,-15,-15,-16,-19,-24,-32,-43,-57,-74,-94,
+-116,-140,-164,-188,-212,-234,-253,-270,-282,-292,-297,-299,-298,-294,-289,-282,-276,-269,-264,-261,-260,
+-261,-265,-272,-280,-290,-302,-315,-328,-342,-356,-369,-381,-393,-404,-414,-423,-432,-441,-449,-456,-464,
+-471,-479,-486,-492,-499,-504,-510,-514,-518,-522,-525,-528,-530,-532,-534,-537,-539,-542,-546,-550,-554,
+-559,-564,-569,-574,-580,-585,-590,-594,-597,-600,-602,-603,-603,-602,-601,-599,-596,-593,-589,-585,-581,
+-576,-572,-567,-563,-558,-553,-548,-542,-535,-528,-520,-511,-501,-490,-479,-466,-453,-439,-425,-411,-397,
+-384,-371,-358,-346,-335,-324,-314,-306,-297,-290,-283,-277,-271,-267,-263,-260,-259,-259,-260,-263,-267,
+-273,-280,-288,-297,-306,-315,-324,-331,-337,-342,-344,-344,-342,-338,-332,-324,-315,-305,-296,-286,-278,
+-271,-265,-261,-259,-258,-259,-262,-265,-269,-273,-278,-282,-286,-289,-292,-295,-298,-300,-304,-308,-313,
+-319,-327,-336,-346,-357,-370,-383,-396,-408,-420,-430,-439,-446,-450,-452,-452,-450,-446,-441,-434,-427,
+-420,-413,-406,-400,-394,-390,-386,-384,-382,-381,-380,-380,-380,-380,-380,-381,-381,-382,-383,-384,-385,
+-387,-388,-389,-390,-390,-388,-385,-379,-371,-359,-345,-327,-307,-284,-259,-232,-205,-177,-151,-126,-104,
+-85,-70,-59,-53,-50,-51,-55,-62,-70,-80,-90,-100,-109,-117,-123,-127,-130,-130,-129,-127,-123,
+-118,-111,-104,-95,-85,-73,-59,-43,-24,-2,23,52,84,119,156,196,238,281,323,366,407,
+447,485,521,555,587,617,645,672,699,725,751,777,803,831,858,885,911,936,960,981,1000,
+1016,1027,1035,1040,1040,1036,1029,1018,1005,991,974,957,941,924,909,895,884,875,868,865,866,
+870,878,890,906,926,950,978,1009,1044,1082,1122,1165,1210,1255,1302,1348,1394,1440,1484,1527,1568,
+1607,1645,1680,1714,1746,1777,1807,1835,1863,1890,1916,1943,1969,1996,2022,2049,2076,2103,2130,2158,2186,
+2213,2241,2269,2297,2324,2351,2377,2403,2428,2452,2475,2498,2519,2540,2559,2578,2597,2615,2633,2650,2667,
+2685,2702,2720,2737,2754,2771,2788,2805,2820,2836,2850,2864,2878,2890,2902,2913,2923,2933,2943,2952,2961,
+2970,2978,2986,2994,3002,3009,3015,3022,3027,3033,3038,3042,3047,3051,3055,3059,3064,3068,3074,3080,3087,
+3094,3102,3111,3120,3130,3141,3151,3162,3173,3184,3196,3207,3218,3229,3240,3251,3262,3273,3284,3295,3306,
+3317,3327,3337,3347,3356,3365,3374,3383,3391,3399,3407,3415,3424,3432,3442,3452,3463,3474,3486,3499,3513,
+3527,3542,3557,3572,3586,3601,3616,3630,3644,3658,3672,3686,3700,3714,3729,3744,3760,3776,3792,3808,3825,
+3840,3855,3869,3881,3891,3899,3904,3906,3905,3901,3895,3885,3873,3858,3842,3823,3804,3783,3762,3740,3717,
+3694,3670,3645,3619,3592,3564,3535,3504,3471,3436,3400,3363,3324,3285,3245,3206,3168,3130,3095,3062,3032,
+3006,2983,2965,2951,2941,2936,2935,2938,2945,2955,2967,2982,2998,3014,3030,3044,3057,3068,3076,3081,3083,
+3082,3078,3072,3066,3059,3052,3048,3047,3049,3056,3069,3087,3111,3140,3173,3211,3252,3294,3337,3379,3419,
+3456,3489,3518,3542,3561,3576,3588,3597,3605,3612,3621,3630,3643,3658,3677,3700,3725,3754,3784,3814,3845,
+3874,3900,3923,3942,3955,3964,3968,3967,3961,3953,3941,3927,3913,3899,3885,3872,3861,3853,3846,3842,3839,
+3838,3839,3840,3842,3844,3847,3849,3954,3947,3939,3931,3923,3916,3911,3908,3908,3911,3917,3925,3936,3949,
+3963,3977,3991,4003,4013,4021,4026,4027,4025,4020,4013,4002,3991,3978,3965,3953,3941,3932,3924,3919,3915,
+3914,3914,3915,3916,3917,3915,3912,3906,3895,3880,3861,3836,3806,3772,3734,3692,3648,3603,3557,3511,3467,
+3425,3386,3350,3318,3289,3263,3240,3219,3200,3182,3164,3146,3127,3108,3087,3066,3044,3023,3002,2982,2963,
+2947,2933,2922,2914,2908,2905,2903,2902,2901,2899,2896,2890,2881,2869,2853,2833,2809,2782,2753,2721,2688,
+2654,2620,2586,2554,2523,2493,2465,2439,2413,2389,2365,2342,2318,2295,2271,2246,2221,2195,2169,2143,2118,
+2092,2068,2044,2021,2000,1979,1959,1940,1922,1904,1887,1870,1853,1836,1819,1802,1786,1769,1753,1737,1722,
+1707,1693,1679,1665,1652,1638,1625,1611,1597,1582,1567,1551,1534,1516,1498,1479,1459,1439,1420,1400,1381,
+1363,1345,1328,1312,1297,1282,1269,1256,1244,1232,1220,1209,1197,1186,1173,1161,1148,1135,1121,1107,1093,
+1079,1064,1050,1036,1022,1008,994,981,967,954,940,927,913,899,884,870,855,840,825,810,796,
+782,768,755,743,731,720,710,700,691,682,673,665,656,647,638,628,618,607,596,584,572,
+559,546,532,518,504,489,474,458,442,426,411,395,379,364,349,336,323,312,301,292,284,
+278,272,268,264,260,256,252,248,243,237,230,222,212,202,190,177,163,149,133,118,102,
+87,71,55,40,25,10,-3,-17,-30,-42,-54,-66,-76,-86,-95,-104,-112,-119,-126,-132,-138,
+-144,-149,-155,-161,-167,-172,-178,-183,-188,-193,-197,-200,-203,-204,-205,-206,-206,-205,-205,-206,-207,
+-209,-213,-219,-226,-235,-246,-259,-273,-288,-303,-318,-333,-347,-360,-371,-381,-390,-397,-403,-407,-411,
+-415,-418,-422,-426,-431,-436,-442,-449,-455,-462,-469,-475,-480,-485,-488,-490,-492,-492,-491,-490,-489,
+-487,-486,-486,-485,-485,-486,-487,-488,-489,-490,-490,-490,-488,-486,-484,-480,-476,-472,-468,-465,-462,
+-461,-461,-463,-466,-471,-478,-486,-494,-503,-512,-521,-530,-538,-544,-550,-555,-559,-562,-564,-565,-566,
+-567,-567,-566,-565,-563,-560,-555,-549,-542,-533,-521,-508,-494,-477,-460,-442,-423,-404,-385,-367,-349,
+-333,-318,-304,-291,-279,-268,-258,-248,-239,-230,-222,-214,-207,-200,-195,-191,-187,-186,-185,-186,-188,
+-191,-195,-200,-204,-208,-211,-214,-215,-215,-214,-211,-208,-203,-198,-193,-187,-182,-177,-173,-169,-166,
+-164,-163,-163,-163,-163,-165,-166,-169,-171,-175,-179,-183,-187,-192,-197,-202,-207,-211,-214,-215,-216,
+-214,-212,-207,-201,-194,-186,-178,-170,-162,-155,-149,-145,-142,-141,-142,-144,-147,-151,-156,-160,-165,
+-169,-172,-175,-176,-178,-178,-178,-177,-176,-174,-171,-167,-162,-155,-147,-135,-121,-104,-83,-60,-34,
+-5,24,55,86,115,143,169,190,208,222,231,236,238,237,234,229,223,218,214,211,209,
+209,211,214,218,222,226,230,232,233,233,231,227,222,215,208,200,193,186,179,173,168,
+164,162,160,158,158,158,159,160,161,163,166,169,172,175,179,183,187,191,194,196,197,
+197,195,193,189,184,178,172,167,162,159,157,157,160,165,172,180,190,201,212,222,231,
+238,244,247,248,247,244,240,235,230,225,222,219,219,220,224,229,237,246,255,266,276,
+286,295,302,309,314,319,322,324,325,327,328,330,332,334,338,342,346,351,355,360,364,
+367,370,371,371,370,368,364,360,356,351,346,342,339,337,336,337,339,342,347,354,360,
+368,375,381,387,391,394,394,392,389,383,376,367,358,348,338,329,320,313,308,303,300,
+297,296,294,292,290,286,281,275,267,259,249,240,230,222,215,210,208,209,212,219,228,
+240,253,268,283,297,310,322,331,337,341,341,339,333,326,317,306,295,284,273,263,254,
+246,240,235,231,229,228,227,227,227,227,226,225,223,220,217,212,207,202,196,191,186,
+182,180,179,180,183,188,196,205,216,229,243,257,272,286,300,313,324,334,342,348,353,
+357,359,360,360,360,359,358,356,354,352,349,345,340,335,328,321,312,303,293,282,271,
+259,248,236,224,212,200,188,176,163,150,137,123,108,94,80,66,52,39,28,17,8,
+0,-6,-12,-18,-25,-31,-39,-48,-59,-72,-87,-104,-123,-142,-163,-183,-202,-220,-236,-249,-260,
+-267,-271,-272,-271,-268,-264,-260,-255,-252,-250,-250,-252,-257,-264,-273,-283,-295,-308,-321,-334,-347,
+-359,-371,-382,-392,-401,-410,-418,-427,-435,-443,-452,-461,-470,-479,-488,-496,-504,-511,-518,-524,-529,
+-533,-537,-540,-543,-547,-550,-553,-557,-562,-566,-572,-577,-583,-589,-594,-600,-604,-608,-612,-615,-617,
+-618,-619,-619,-618,-617,-616,-615,-613,-611,-610,-608,-606,-605,-603,-602,-600,-598,-596,-593,-589,-585,
+-579,-572,-563,-552,-540,-526,-510,-492,-473,-452,-430,-408,-386,-364,-342,-321,-302,-284,-269,-255,-243,
+-234,-227,-222,-220,-219,-220,-224,-229,-236,-244,-254,-265,-278,-291,-305,-319,-334,-348,-361,-372,-382,
+-390,-396,-400,-400,-399,-396,-390,-383,-376,-368,-360,-353,-348,-343,-341,-340,-341,-343,-347,-352,-357,
+-363,-369,-375,-380,-384,-387,-390,-393,-395,-398,-401,-405,-411,-418,-426,-435,-446,-459,-471,-485,-498,
+-510,-521,-531,-538,-543,-546,-546,-544,-539,-533,-526,-518,-509,-501,-493,-486,-480,-475,-471,-469,-467,
+-467,-466,-466,-466,-465,-463,-462,-460,-458,-455,-454,-452,-452,-452,-453,-455,-458,-461,-464,-466,-466,
+-464,-458,-450,-437,-420,-399,-374,-346,-315,-282,-248,-216,-185,-157,-133,-113,-99,-90,-86,-88,-94,
+-104,-117,-132,-148,-164,-179,-192,-203,-211,-217,-218,-217,-213,-206,-196,-184,-170,-153,-134,-113,-89,
+-63,-34,-3,30,66,105,145,186,228,270,312,352,391,429,464,498,529,558,586,612,638,
+663,688,713,739,765,791,817,843,868,891,912,930,946,957,965,969,969,965,958,948,935,
+921,906,890,875,860,846,834,824,816,811,809,809,813,819,829,842,858,878,901,927,956,
+989,1024,1061,1100,1141,1182,1225,1267,1309,1351,1392,1432,1471,1509,1545,1581,1616,1650,1683,1716,1748,
+1780,1812,1843,1874,1905,1935,1965,1994,2023,2051,2079,2106,2133,2160,2186,2213,2239,2265,2291,2317,2343,
+2368,2393,2417,2441,2464,2486,2508,2528,2548,2568,2588,2607,2626,2645,2665,2685,2705,2726,2747,2768,2789,
+2809,2830,2849,2868,2885,2902,2917,2931,2944,2956,2966,2976,2985,2994,3001,3008,3015,3021,3027,3033,3038,
+3043,3047,3051,3055,3059,3062,3065,3068,3072,3075,3079,3084,3089,3095,3102,3109,3118,3127,3137,3148,3159,
+3171,3184,3197,3210,3223,3236,3249,3262,3274,3286,3298,3309,3319,3329,3339,3348,3356,3365,3373,3382,3390,
+3399,3409,3418,3429,3440,3451,3464,3477,3491,3505,3520,3536,3552,3568,3584,3601,3617,3633,3648,3664,3679,
+3695,3710,3726,3741,3757,3774,3791,3809,3828,3847,3867,3886,3906,3926,3944,3961,3976,3990,4000,4008,4013,
+4014,4013,4008,4000,3990,3977,3962,3946,3929,3910,3890,3870,3849,3827,3804,3780,3754,3727,3697,3664,3629,
+3590,3550,3507,3461,3414,3367,3319,3272,3226,3183,3143,3107,3076,3050,3029,3014,3005,3000,3001,3007,3016,
+3029,3043,3060,3077,3093,3109,3123,3134,3143,3148,3150,3148,3144,3137,3129,3120,3111,3103,3097,3094,3096,
+3103,3115,3133,3157,3187,3222,3262,3304,3349,3395,3440,3484,3525,3562,3595,3624,3647,3667,3683,3696,3706,
+3716,3726,3736,3749,3764,3781,3800,3822,3846,3870,3895,3918,3940,3959,3974,3986,3993,3996,3994,3990,3982,
+3972,3962,3951,3941,3933,3927,3924,3923,3925,3929,3935,3941,3948,3954,3960,3963,3964,3963,3960,3954,4061,
+4051,4040,4027,4013,4001,3990,3982,3976,3974,3974,3978,3984,3993,4002,4013,4024,4033,4042,4048,4052,4054,
+4053,4049,4044,4036,4027,4018,4008,3998,3989,3980,3973,3967,3962,3958,3955,3952,3949,3945,3940,3933,3924,
+3912,3898,3880,3858,3834,3805,3774,3740,3704,3666,3626,3586,3546,3506,3467,3429,3393,3358,3325,3293,3264,
+3235,3207,3181,3155,3129,3104,3079,3055,3032,3009,2988,2968,2951,2936,2923,2912,2904,2898,2894,2890,2888,
+2885,2881,2877,2870,2860,2848,2832,2814,2793,2769,2743,2715,2686,2657,2627,2598,2570,2542,2515,2489,2464,
+2440,2416,2392,2368,2343,2318,2293,2267,2241,2214,2187,2160,2133,2106,2080,2054,2029,2004,1980,1957,1934,
+1912,1890,1869,1848,1827,1808,1789,1770,1753,1736,1720,1705,1691,1677,1664,1651,1638,1625,1612,1599,1585,
+1571,1555,1539,1523,1505,1487,1469,1450,1431,1412,1393,1374,1355,1337,1318,1301,1283,1266,1250,1234,1219,
+1204,1190,1177,1164,1151,1138,1126,1114,1102,1090,1077,1065,1052,1038,1025,1011,996,982,967,952,937,
+922,907,893,878,863,849,835,820,806,792,778,764,751,737,725,712,700,689,678,668,658,
+648,638,628,619,609,599,588,577,565,553,540,527,513,499,485,471,456,441,427,412,398,
+384,370,356,343,330,318,306,295,285,275,267,259,252,245,240,235,230,226,222,218,213,
+209,204,198,192,184,176,167,157,146,134,121,108,93,78,62,45,28,11,-6,-23,-40,
+-56,-71,-86,-100,-112,-123,-133,-141,-148,-153,-158,-162,-165,-167,-170,-172,-174,-176,-179,-182,-184,
+-188,-191,-194,-196,-199,-201,-203,-205,-206,-208,-210,-213,-217,-222,-228,-236,-246,-257,-270,-284,-300,
+-316,-333,-350,-366,-382,-396,-409,-421,-432,-441,-449,-455,-461,-467,-472,-477,-482,-487,-493,-499,-505,
+-510,-516,-521,-525,-528,-531,-532,-532,-531,-530,-528,-526,-523,-521,-520,-518,-518,-518,-518,-519,-520,
+-520,-521,-521,-520,-518,-516,-512,-508,-504,-501,-497,-495,-493,-494,-496,-500,-506,-514,-523,-533,-544,
+-556,-567,-578,-588,-596,-603,-608,-612,-615,-616,-616,-615,-614,-612,-611,-608,-606,-603,-600,-596,-590,
+-584,-576,-566,-554,-541,-527,-511,-494,-477,-459,-442,-426,-410,-395,-381,-368,-356,-345,-334,-324,-315,
+-306,-297,-289,-281,-274,-267,-261,-257,-253,-251,-250,-250,-251,-253,-254,-255,-255,-254,-252,-248,-242,
+-235,-226,-216,-205,-195,-185,-176,-168,-162,-158,-156,-156,-158,-161,-165,-169,-172,-175,-177,-178,-178,
+-175,-172,-167,-161,-155,-148,-141,-134,-127,-120,-114,-108,-102,-96,-90,-84,-77,-71,-65,-59,-54,
+-50,-47,-47,-48,-51,-56,-62,-71,-80,-91,-101,-112,-121,-130,-137,-142,-146,-148,-148,-146,-143,
+-139,-133,-127,-119,-111,-100,-89,-75,-59,-41,-21,1,26,52,80,108,136,163,187,209,228,
+243,254,260,263,262,257,251,242,232,222,212,203,194,187,180,175,170,165,161,156,151,
+145,140,134,128,123,119,115,113,112,114,116,120,125,131,137,143,148,152,156,158,159,
+159,158,157,156,156,156,157,159,162,166,171,176,180,184,187,188,188,186,183,178,172,
+166,160,154,149,145,143,143,144,148,152,158,165,172,178,185,190,195,198,201,203,204,
+205,206,208,210,213,217,221,227,233,239,246,253,260,266,272,278,283,287,292,295,299,
+303,307,311,315,319,324,328,333,338,343,348,353,357,361,365,368,371,373,375,375,376,
+375,374,372,370,367,365,363,361,360,360,361,363,366,370,375,381,386,391,395,398,399,
+398,396,391,385,377,368,358,348,339,330,323,317,312,308,306,304,303,301,299,296,291,
+286,278,270,260,250,241,232,224,219,216,215,217,221,228,237,247,258,269,278,287,294,
+299,301,301,299,295,289,282,274,265,257,249,242,236,230,226,222,220,217,216,214,212,
+210,207,203,199,194,189,183,176,169,162,156,150,146,143,142,142,145,151,158,168,180,
+193,208,223,238,253,267,279,290,299,307,312,316,318,319,319,320,320,320,321,323,325,
+327,329,331,333,333,332,330,327,322,315,307,298,288,277,266,254,243,231,218,206,192,
+178,164,148,132,114,97,78,60,42,25,9,-5,-19,-31,-42,-51,-60,-68,-76,-85,-94,
+-105,-117,-130,-144,-159,-175,-191,-206,-220,-232,-242,-249,-254,-256,-255,-253,-250,-246,-242,-239,-237,
+-237,-240,-245,-253,-263,-275,-288,-302,-316,-330,-344,-356,-367,-377,-385,-393,-400,-406,-413,-419,-427,
+-435,-444,-454,-464,-475,-485,-496,-506,-515,-523,-530,-536,-542,-546,-550,-554,-557,-561,-566,-572,-578,
+-585,-592,-600,-608,-616,-623,-630,-636,-640,-644,-646,-647,-647,-646,-644,-642,-640,-638,-635,-633,-632,
+-630,-629,-628,-628,-627,-627,-626,-625,-624,-622,-619,-615,-609,-602,-593,-582,-569,-553,-535,-514,-491,
+-467,-440,-413,-385,-357,-330,-304,-280,-259,-241,-226,-215,-207,-203,-202,-204,-210,-217,-227,-239,-252,
+-266,-281,-297,-313,-329,-345,-361,-376,-390,-403,-416,-426,-435,-442,-446,-449,-450,-449,-446,-443,-438,
+-434,-429,-426,-423,-422,-423,-425,-429,-434,-441,-449,-458,-467,-475,-484,-492,-499,-505,-510,-514,-518,
+-522,-525,-529,-534,-539,-546,-553,-562,-572,-582,-592,-603,-613,-622,-629,-634,-638,-639,-637,-634,-627,
+-619,-610,-600,-589,-578,-568,-559,-551,-545,-541,-538,-537,-537,-539,-540,-542,-544,-545,-545,-544,-542,
+-539,-536,-532,-529,-526,-524,-523,-523,-525,-527,-530,-533,-536,-536,-534,-529,-521,-507,-490,-468,-441,
+-411,-379,-345,-310,-277,-246,-218,-194,-176,-163,-156,-155,-158,-166,-178,-191,-206,-220,-234,-246,-254,
+-260,-262,-261,-256,-248,-237,-223,-206,-188,-167,-145,-120,-94,-65,-35,-2,33,70,109,150,192,
+235,277,319,360,398,435,468,500,528,554,578,601,622,643,664,685,707,729,752,776,799,
+822,844,864,882,897,909,917,921,922,919,913,904,893,880,867,853,840,828,817,808,801,
+796,793,793,795,799,806,815,827,842,859,879,902,927,956,986,1019,1053,1090,1127,1165,1204,
+1242,1281,1319,1357,1394,1430,1466,1501,1536,1571,1606,1641,1675,1710,1745,1780,1814,1848,1882,1914,1946,
+1976,2006,2035,2063,2090,2116,2142,2167,2192,2217,2242,2267,2291,2315,2338,2361,2383,2404,2424,2444,2462,
+2480,2498,2515,2532,2549,2567,2585,2604,2624,2645,2666,2688,2710,2733,2755,2777,2799,2819,2839,2857,2874,
+2890,2905,2918,2931,2944,2955,2966,2977,2988,2998,3008,3017,3027,3036,3044,3051,3058,3064,3069,3074,3077,
+3080,3083,3085,3088,3090,3093,3097,3101,3107,3114,3122,3132,3143,3156,3170,3185,3201,3218,3235,3252,3268,
+3285,3300,3315,3329,3341,3353,3364,3373,3383,3391,3400,3408,3417,3426,3435,3446,3457,3469,3482,3496,3511,
+3527,3543,3561,3579,3597,3616,3636,3656,3676,3696,3716,3737,3757,3778,3798,3818,3838,3858,3879,3899,3919,
+3939,3959,3979,3999,4018,4036,4054,4070,4084,4096,4105,4113,4117,4118,4117,4113,4106,4097,4085,4073,4059,
+4043,4028,4011,3994,3976,3958,3938,3916,3892,3865,3835,3801,3762,3720,3673,3622,3569,3512,3454,3395,3338,
+3282,3230,3182,3140,3105,3077,3056,3043,3038,3040,3048,3062,3079,3100,3122,3144,3166,3185,3202,3215,3223,
+3227,3227,3223,3215,3204,3192,3179,3167,3156,3149,3146,3147,3155,3169,3190,3217,3250,3289,3332,3378,3427,
+3475,3523,3569,3612,3651,3685,3714,3737,3756,3772,3783,3793,3801,3810,3819,3830,3843,3860,3878,3899,3922,
+3946,3970,3993,4014,4032,4046,4055,4060,4060,4055,4047,4036,4024,4010,3997,3986,3977,3972,3970,3972,3978,
+3987,3999,4012,4026,4040,4052,4062,4069,4072,4072,4068,4061,4127,4120,4112,4103,4093,4084,4077,4070,4067,
+4065,4065,4068,4072,4078,4084,4090,4096,4100,4103,4104,4104,4101,4097,4091,4084,4076,4067,4058,4049,4041,
+4033,4025,4018,4011,4004,3998,3990,3983,3975,3965,3955,3944,3931,3917,3902,3886,3867,3848,3826,3803,3778,
+3751,3722,3692,3659,3624,3588,3551,3512,3473,3434,3394,3355,3317,3280,3244,3209,3176,3144,3115,3087,3061,
+3036,3014,2993,2974,2957,2941,2928,2916,2905,2896,2888,2880,2873,2866,2858,2849,2840,2828,2816,2801,2784,
+2766,2746,2725,2703,2680,2656,2632,2608,2584,2560,2536,2513,2489,2465,2441,2416,2391,2366,2340,2313,2286,
+2258,2231,2203,2176,2148,2121,2094,2068,2042,2016,1991,1966,1941,1917,1893,1869,1846,1824,1802,1782,1763,
+1744,1727,1711,1696,1682,1668,1654,1641,1627,1614,1599,1585,1569,1553,1537,1520,1502,1485,1467,1450,1432,
+1414,1397,1379,1361,1344,1326,1308,1289,1271,1252,1234,1216,1198,1180,1164,1148,1132,1118,1104,1091,1078,
+1066,1054,1041,1028,1015,1001,986,971,955,939,922,905,888,872,856,840,825,810,796,783,770,
+757,744,732,719,707,694,682,669,657,644,632,620,608,596,584,573,562,551,540,528,517,
+505,493,481,468,455,442,428,415,401,388,375,362,349,337,325,314,303,292,282,273,263,
+254,246,237,229,221,214,206,199,193,187,181,176,171,167,163,159,156,153,149,145,141,
+136,130,122,114,103,91,78,62,45,27,8,-12,-32,-53,-74,-94,-113,-130,-146,-160,-173,
+-183,-191,-198,-202,-205,-207,-208,-208,-207,-206,-206,-206,-206,-207,-208,-210,-212,-215,-218,-221,-225,
+-229,-233,-238,-243,-248,-254,-261,-268,-276,-284,-294,-304,-314,-326,-338,-350,-362,-374,-386,-398,-410,
+-421,-432,-443,-453,-462,-472,-480,-489,-498,-506,-513,-521,-527,-533,-538,-543,-546,-548,-550,-550,-550,
+-548,-547,-544,-542,-540,-538,-536,-535,-534,-534,-534,-535,-536,-537,-538,-539,-539,-540,-539,-539,-538,
+-538,-537,-537,-538,-540,-543,-547,-552,-558,-566,-574,-583,-593,-602,-611,-619,-626,-633,-638,-642,-645,
+-647,-649,-650,-651,-652,-653,-654,-654,-655,-655,-654,-652,-649,-644,-636,-627,-615,-602,-586,-569,-552,
+-533,-515,-498,-481,-465,-451,-438,-426,-416,-407,-399,-391,-383,-376,-368,-360,-353,-345,-338,-332,-326,
+-321,-318,-315,-314,-313,-312,-312,-310,-307,-303,-297,-288,-278,-265,-250,-235,-219,-204,-189,-177,-167,
+-159,-155,-154,-156,-161,-167,-175,-182,-189,-195,-198,-199,-197,-191,-183,-172,-159,-144,-128,-111,-95,
+-80,-66,-53,-41,-31,-23,-15,-9,-3,1,6,9,12,14,14,13,10,5,0,-9,-19,
+-30,-41,-53,-64,-75,-84,-91,-95,-98,-98,-95,-91,-85,-78,-70,-61,-52,-42,-32,-22,-11,
+0,12,25,40,57,75,94,114,134,155,174,192,208,221,231,238,242,242,239,233,224,
+214,202,190,176,163,150,137,125,113,102,91,82,73,65,58,53,50,48,49,52,57,
+64,73,84,95,107,118,129,138,145,150,153,154,153,150,146,141,137,134,132,132,133,
+137,143,150,159,168,177,185,192,198,201,202,201,198,194,188,182,175,169,164,160,157,
+156,157,159,162,167,172,178,184,190,196,201,206,211,216,220,224,227,230,233,235,238,
+240,242,243,245,247,249,252,254,258,262,267,273,279,286,293,300,306,312,318,322,326,
+329,331,332,334,335,337,339,341,345,349,353,358,363,367,371,373,375,375,374,372,369,
+365,362,359,357,356,357,359,364,369,375,382,388,394,398,400,401,399,394,388,379,370,
+360,349,339,330,322,316,311,307,303,301,298,295,291,286,279,272,263,254,245,236,228,
+221,216,213,213,214,217,222,228,235,241,247,252,256,258,258,257,254,250,245,240,234,
+228,223,218,214,210,207,204,201,198,195,192,188,183,178,172,166,159,151,144,136,129,
+122,115,109,105,102,100,100,103,107,114,123,134,147,161,176,191,206,221,234,245,255,
+263,268,272,274,275,275,275,275,276,277,279,282,285,289,293,296,298,299,299,296,292,
+286,277,268,257,245,233,220,207,194,182,169,156,142,128,113,97,81,63,45,27,9,
+-8,-24,-39,-53,-65,-75,-83,-90,-96,-101,-107,-113,-120,-129,-139,-151,-164,-179,-193,-208,-221,
+-233,-243,-251,-255,-257,-256,-254,-249,-244,-239,-235,-232,-232,-234,-239,-247,-258,-271,-285,-300,-316,
+-331,-345,-358,-369,-379,-387,-393,-399,-405,-410,-416,-423,-431,-441,-451,-463,-476,-488,-501,-513,-524,
+-534,-542,-549,-554,-559,-562,-566,-569,-574,-578,-585,-592,-600,-610,-620,-631,-642,-652,-661,-670,-676,
+-681,-685,-686,-686,-685,-682,-679,-675,-671,-667,-663,-660,-656,-653,-649,-646,-643,-640,-637,-634,-630,
+-626,-621,-615,-608,-600,-591,-580,-566,-551,-533,-512,-490,-465,-438,-410,-381,-353,-325,-300,-276,-256,
+-240,-227,-220,-217,-218,-224,-233,-245,-260,-277,-294,-313,-331,-349,-366,-383,-398,-413,-426,-438,-449,
+-459,-467,-475,-481,-486,-490,-493,-495,-495,-495,-494,-492,-491,-490,-490,-492,-494,-498,-504,-511,-520,
+-531,-542,-554,-566,-578,-590,-601,-611,-619,-627,-634,-640,-645,-650,-654,-659,-663,-669,-674,-680,-687,
+-693,-700,-707,-713,-719,-723,-726,-727,-726,-723,-718,-710,-701,-691,-678,-666,-652,-639,-627,-616,-607,
+-599,-594,-592,-591,-592,-596,-600,-605,-611,-616,-620,-623,-624,-625,-623,-621,-617,-613,-609,-604,-601,
+-597,-595,-593,-591,-588,-585,-580,-573,-564,-550,-533,-513,-488,-461,-431,-400,-368,-337,-308,-281,-259,
+-241,-228,-221,-218,-220,-225,-233,-243,-253,-263,-272,-278,-281,-281,-277,-270,-259,-246,-230,-212,-192,
+-170,-146,-121,-95,-66,-36,-3,32,70,110,153,197,243,289,335,379,421,461,496,528,556,
+580,600,617,631,644,655,667,679,692,708,724,743,763,784,805,826,846,864,879,891,900,
+905,907,906,902,896,889,880,872,864,856,850,846,843,842,843,845,849,855,863,871,882,
+894,908,924,942,962,984,1009,1035,1064,1095,1128,1162,1197,1233,1270,1307,1343,1380,1417,1453,1489,
+1525,1561,1597,1633,1670,1706,1743,1779,1816,1851,1887,1921,1955,1987,2019,2049,2077,2105,2131,2157,2181,
+2204,2227,2249,2270,2290,2309,2328,2345,2361,2376,2390,2403,2415,2427,2438,2449,2460,2471,2484,2498,2513,
+2529,2546,2565,2585,2606,2628,2650,2672,2694,2715,2736,2756,2776,2795,2814,2831,2849,2866,2882,2899,2915,
+2932,2948,2964,2979,2994,3008,3021,3033,3044,3053,3061,3067,3072,3076,3078,3080,3080,3081,3082,3083,3086,
+3089,3094,3101,3110,3121,3134,3149,3166,3185,3204,3225,3246,3267,3287,3307,3326,3343,3359,3374,3387,3399,
+3410,3420,3430,3440,3450,3461,3472,3484,3496,3510,3525,3540,3557,3574,3592,3611,3630,3651,3672,3693,3715,
+3738,3761,3785,3809,3833,3858,3882,3905,3929,3952,3974,3995,4016,4036,4055,4073,4091,4108,4124,4140,4154,
+4166,4178,4187,4195,4200,4203,4204,4202,4199,4193,4186,4177,4168,4158,4147,4137,4126,4114,4102,4088,4072,
+4053,4030,4003,3971,3933,3889,3838,3782,3720,3654,3585,3514,3443,3373,3308,3248,3195,3150,3115,3089,3074,
+3068,3072,3084,3103,3126,3153,3182,3210,3236,3259,3278,3290,3297,3299,3294,3285,3272,3256,3239,3223,3208,
+3198,3192,3192,3199,3213,3236,3265,3302,3345,3393,3445,3499,3554,3607,3658,3706,3748,3786,3817,3843,3863,
+3878,3889,3897,3903,3908,3914,3921,3931,3943,3959,3977,3998,4021,4045,4068,4091,4111,4127,4140,4148,4151,
+4149,4143,4133,4120,4105,4089,4074,4060,4049,4041,4037,4036,4040,4047,4057,4069,4082,4095,4107,4117,4125,
+4130,4132,4131,4127,4156,4153,4150,4146,4142,4138,4136,4134,4134,4135,4138,4142,4146,4151,4155,4158,4160,
+4161,4160,4156,4151,4144,4136,4127,4117,4107,4098,4088,4079,4071,4063,4056,4048,4040,4032,4023,4012,4000,
+3987,3973,3958,3943,3927,3911,3895,3880,3865,3851,3836,3822,3806,3789,3771,3749,3725,3697,3666,3631,3592,
+3551,3507,3461,3415,3368,3322,3277,3235,3195,3158,3125,3095,3067,3043,3022,3003,2986,2970,2956,2943,2930,
+2918,2907,2896,2885,2874,2862,2851,2839,2827,2815,2801,2787,2772,2756,2739,2721,2702,2683,2663,2642,2620,
+2598,2575,2552,2528,2503,2478,2452,2426,2399,2371,2343,2315,2287,2259,2232,2204,2177,2151,2125,2100,2076,
+2051,2027,2003,1980,1956,1932,1909,1886,1863,1841,1819,1798,1778,1759,1741,1723,1707,1690,1674,1658,1642,
+1626,1609,1592,1574,1556,1538,1519,1500,1482,1464,1446,1429,1412,1396,1380,1364,1348,1331,1314,1297,1279,
+1260,1241,1222,1202,1183,1164,1145,1128,1111,1095,1080,1066,1053,1039,1026,1013,999,985,970,954,937,
+919,902,884,865,848,830,814,798,784,770,757,745,733,721,709,698,685,673,660,646,633,
+619,605,591,577,564,552,540,529,518,508,499,490,480,471,461,451,441,430,418,406,393,
+380,367,353,340,326,313,300,287,275,263,252,241,230,219,209,199,189,180,170,161,153,
+145,138,132,127,124,121,120,120,122,124,126,129,131,133,133,132,129,123,115,104,91,
+75,56,35,12,-11,-36,-62,-87,-112,-137,-159,-181,-200,-217,-232,-245,-255,-264,-270,-275,-278,
+-281,-283,-284,-285,-286,-288,-290,-293,-296,-300,-305,-310,-316,-322,-327,-333,-338,-342,-346,-349,-352,
+-354,-355,-356,-356,-357,-358,-359,-361,-364,-368,-374,-381,-388,-398,-408,-419,-430,-443,-455,-467,-479,
+-491,-501,-511,-519,-527,-533,-538,-543,-546,-548,-550,-551,-552,-552,-552,-552,-552,-552,-552,-552,-553,
+-553,-554,-556,-557,-559,-562,-564,-567,-570,-574,-577,-581,-585,-589,-593,-597,-601,-606,-610,-615,-620,
+-624,-629,-634,-639,-644,-648,-652,-656,-660,-663,-666,-669,-671,-675,-678,-682,-686,-691,-696,-701,-706,
+-711,-714,-717,-717,-715,-711,-704,-694,-682,-667,-651,-632,-613,-593,-574,-556,-539,-523,-510,-498,-488,
+-480,-473,-466,-460,-453,-446,-439,-431,-422,-413,-404,-396,-388,-381,-376,-372,-370,-369,-368,-369,-368,
+-367,-365,-360,-352,-342,-329,-314,-297,-279,-260,-242,-225,-211,-199,-191,-187,-186,-189,-195,-202,-211,
+-219,-227,-232,-235,-234,-229,-222,-210,-196,-179,-160,-141,-122,-103,-86,-69,-55,-43,-32,-24,-16,
+-10,-4,0,4,7,10,12,13,12,10,7,2,-3,-11,-19,-27,-35,-42,-47,-51,-52,
+-52,-48,-43,-35,-26,-16,-6,3,13,22,29,36,41,46,50,54,58,63,69,77,86,
+97,108,121,133,146,157,167,175,180,183,182,179,173,164,153,140,126,111,96,81,67,
+54,43,33,25,19,15,14,15,18,24,31,40,51,63,75,88,100,111,121,129,136,
+140,142,141,139,135,130,125,120,115,112,111,111,114,119,126,134,144,155,166,176,186,
+194,201,206,209,210,209,207,204,200,196,192,189,186,184,183,183,184,186,189,193,197,
+201,206,211,217,222,227,232,236,240,243,245,246,246,245,244,242,240,238,237,236,237,
+239,243,249,256,265,274,284,294,303,312,318,323,327,328,327,326,323,321,318,317,317,
+318,321,325,330,336,342,348,352,356,357,356,354,349,344,338,333,328,326,325,326,331,
+337,346,356,367,378,387,395,400,403,402,399,392,383,373,362,350,339,328,319,312,306,
+301,297,294,292,288,284,279,273,267,259,251,242,235,228,222,218,215,214,214,216,218,
+221,224,227,228,229,230,229,227,225,223,221,218,216,214,212,211,209,208,205,202,198,
+193,187,179,170,161,150,140,129,118,108,98,89,80,73,67,61,57,55,54,55,57,
+61,68,76,86,98,111,126,140,155,170,183,195,206,215,222,227,231,234,236,238,239,
+241,243,245,247,249,251,252,251,249,245,238,229,218,204,189,173,157,140,124,109,95,
+82,71,60,50,41,32,22,12,2,-9,-20,-32,-43,-54,-64,-73,-80,-86,-90,-93,-95,
+-97,-99,-103,-108,-115,-124,-136,-150,-165,-182,-199,-215,-231,-244,-255,-263,-267,-268,-266,-262,-257,
+-250,-244,-239,-236,-236,-238,-244,-252,-263,-276,-291,-307,-323,-338,-352,-364,-375,-384,-392,-398,-404,
+-410,-417,-424,-432,-442,-454,-466,-479,-493,-507,-520,-533,-544,-553,-560,-566,-570,-574,-577,-579,-582,
+-586,-592,-599,-607,-617,-628,-641,-653,-666,-678,-689,-698,-706,-712,-716,-718,-719,-718,-715,-712,-708,
+-703,-698,-693,-687,-681,-675,-668,-661,-654,-646,-638,-629,-620,-611,-602,-593,-583,-573,-562,-550,-537,
+-522,-505,-486,-465,-442,-418,-394,-369,-344,-322,-302,-285,-272,-264,-260,-262,-268,-279,-294,-312,-332,
+-353,-375,-396,-416,-435,-452,-467,-479,-490,-499,-506,-512,-517,-522,-526,-529,-532,-535,-537,-539,-541,
+-542,-543,-544,-545,-547,-549,-553,-558,-564,-572,-581,-592,-605,-618,-632,-647,-661,-675,-689,-701,-713,
+-723,-732,-740,-747,-754,-759,-764,-769,-773,-777,-781,-785,-789,-792,-795,-797,-799,-800,-800,-799,-797,
+-794,-789,-784,-776,-767,-757,-746,-734,-721,-708,-695,-683,-671,-662,-654,-649,-646,-645,-647,-651,-656,
+-662,-669,-676,-682,-687,-690,-691,-690,-687,-683,-677,-669,-661,-653,-644,-634,-625,-615,-605,-594,-582,
+-567,-551,-532,-511,-488,-462,-434,-406,-377,-350,-323,-300,-280,-264,-251,-244,-240,-240,-242,-247,-253,
+-259,-263,-267,-267,-265,-260,-251,-240,-226,-209,-190,-170,-148,-125,-100,-74,-47,-17,14,48,85,
+125,167,212,259,306,353,399,443,484,521,553,580,602,618,630,638,643,647,649,653,658,
+665,676,690,707,728,750,775,801,826,850,872,892,908,921,930,936,939,939,938,936,933,
+931,930,930,931,934,938,944,950,958,966,974,982,990,999,1008,1017,1028,1040,1054,1070,1088,
+1109,1134,1161,1190,1223,1257,1294,1331,1370,1410,1450,1490,1530,1570,1609,1648,1687,1725,1763,1800,1837,
+1873,1909,1944,1978,2011,2043,2073,2102,2129,2155,2179,2201,2222,2242,2260,2276,2291,2305,2318,2329,2339,
+2348,2356,2363,2370,2376,2382,2388,2394,2401,2409,2418,2429,2441,2455,2470,2487,2505,2524,2544,2565,2586,
+2607,2629,2650,2672,2693,2714,2735,2756,2777,2797,2818,2839,2859,2879,2899,2918,2937,2955,2971,2987,3001,
+3014,3026,3035,3044,3051,3056,3060,3063,3066,3067,3069,3071,3073,3077,3081,3088,3096,3107,3119,3134,3151,
+3170,3190,3211,3233,3255,3277,3299,3320,3339,3357,3374,3390,3405,3419,3432,3446,3459,3473,3488,3503,3519,
+3536,3554,3573,3592,3611,3631,3650,3670,3691,3711,3731,3752,3774,3795,3818,3840,3863,3886,3910,3933,3956,
+3979,4001,4022,4042,4062,4081,4098,4116,4133,4149,4165,4181,4197,4212,4227,4240,4253,4264,4273,4280,4286,
+4289,4291,4291,4290,4288,4285,4282,4278,4274,4269,4264,4256,4247,4234,4216,4193,4164,4127,4083,4030,3970,
+3902,3828,3749,3667,3584,3501,3422,3349,3283,3227,3181,3147,3125,3114,3115,3125,3143,3168,3197,3228,3259,
+3288,3313,3333,3347,3354,3355,3351,3341,3328,3312,3297,3282,3270,3263,3262,3267,3281,3302,3331,3367,3410,
+3458,3511,3567,3623,3679,3734,3785,3833,3875,3912,3943,3969,3989,4004,4017,4026,4033,4039,4046,4054,4063,
+4074,4087,4102,4119,4138,4156,4174,4191,4206,4218,4227,4232,4233,4229,4222,4211,4197,4182,4166,4149,4134,
+4121,4109,4101,4096,4095,4096,4101,4107,4115,4123,4132,4140,4147,4152,4155,4156,4156,4194,4193,4191,4188,
+4184,4181,4177,4175,4173,4173,4174,4177,4180,4183,4187,4189,4191,4191,4189,4186,4180,4173,4165,4155,4145,
+4135,4126,4116,4108,4099,4092,4084,4076,4067,4057,4045,4032,4017,4000,3981,3961,3941,3921,3902,3885,3870,
+3857,3846,3837,3829,3822,3815,3806,3795,3780,3760,3735,3704,3668,3626,3580,3530,3477,3424,3370,3318,3268,
+3222,3180,3143,3110,3082,3059,3039,3022,3007,2994,2981,2970,2958,2946,2934,2921,2908,2894,2880,2866,2852,
+2837,2823,2808,2793,2777,2761,2744,2727,2708,2689,2668,2647,2624,2601,2577,2552,2526,2499,2472,2445,2417,
+2389,2360,2332,2303,2275,2247,2220,2194,2168,2143,2119,2096,2073,2051,2030,2008,1987,1966,1945,1924,1903,
+1882,1861,1840,1819,1799,1779,1760,1741,1722,1703,1685,1666,1647,1628,1608,1588,1567,1546,1525,1504,1484,
+1463,1444,1425,1406,1389,1372,1355,1339,1322,1306,1289,1271,1253,1234,1215,1196,1177,1157,1138,1120,1103,
+1086,1071,1056,1042,1028,1015,1001,987,973,958,942,926,909,891,874,856,838,821,805,789,774,
+760,747,734,722,709,697,684,670,656,641,626,611,596,580,566,551,538,526,515,506,497,
+490,483,477,471,465,459,452,444,435,425,414,402,388,374,359,343,326,310,294,278,263,
+248,234,221,208,197,186,175,165,156,147,138,130,123,116,110,106,103,101,101,102,105,
+109,114,120,125,131,135,138,140,138,134,127,117,103,87,67,45,21,-4,-32,-60,-88,
+-116,-144,-171,-197,-222,-245,-266,-286,-304,-320,-334,-347,-358,-368,-377,-385,-392,-399,-405,-412,-419,
+-426,-433,-440,-448,-455,-462,-469,-474,-479,-482,-483,-483,-480,-476,-469,-462,-453,-443,-434,-424,-416,
+-408,-403,-399,-398,-400,-404,-410,-419,-429,-440,-453,-465,-478,-490,-501,-511,-520,-528,-534,-540,-544,
+-548,-551,-554,-557,-559,-562,-564,-567,-570,-572,-575,-577,-579,-581,-583,-584,-586,-589,-592,-595,-599,
+-604,-610,-616,-622,-629,-636,-643,-650,-657,-663,-669,-674,-678,-683,-686,-690,-693,-696,-699,-701,-705,
+-708,-711,-715,-719,-723,-728,-733,-738,-743,-748,-754,-759,-763,-767,-769,-770,-769,-766,-761,-753,-742,
+-729,-714,-697,-679,-661,-643,-625,-608,-594,-581,-570,-560,-553,-547,-542,-536,-531,-525,-518,-509,-500,
+-489,-477,-465,-453,-441,-431,-423,-417,-413,-411,-411,-412,-414,-416,-416,-415,-412,-406,-396,-383,-367,
+-349,-328,-307,-287,-267,-249,-235,-224,-217,-214,-215,-219,-226,-234,-242,-250,-256,-260,-260,-258,-252,
+-243,-231,-216,-200,-182,-165,-148,-132,-116,-103,-91,-80,-71,-63,-56,-49,-43,-37,-31,-26,-22,
+-18,-15,-14,-13,-14,-16,-19,-23,-26,-29,-31,-32,-31,-28,-23,-16,-7,2,13,24,35,
+44,52,58,62,64,64,62,59,56,52,50,48,49,51,55,61,68,77,86,95,103,
+109,114,115,114,110,103,94,82,69,55,41,28,16,7,0,-4,-5,-3,1,8,17,
+29,41,54,67,79,90,100,108,115,119,121,122,121,118,115,111,106,101,97,94,91,
+89,89,90,93,97,102,109,116,124,132,140,149,157,164,171,178,183,188,191,194,196,
+198,199,199,199,198,197,196,195,194,192,192,191,191,192,194,196,199,204,208,213,218,
+223,227,231,234,235,235,234,232,230,227,225,223,222,224,227,232,240,249,260,272,285,
+297,308,318,325,330,333,334,332,329,325,321,317,314,312,312,313,316,319,323,327,330,
+332,333,331,328,323,317,311,305,299,296,295,297,301,309,319,330,343,356,368,379,387,
+392,393,392,387,380,371,361,350,340,331,323,317,312,308,306,304,302,300,297,293,287,
+279,271,261,251,241,231,222,214,207,201,197,194,191,190,189,189,188,189,189,190,191,
+193,195,198,202,206,210,214,218,220,220,218,214,208,199,188,174,160,144,127,111,96,
+81,68,56,46,37,30,24,20,17,14,13,13,14,16,20,26,34,44,55,68,82,
+97,112,127,141,154,166,177,186,194,201,207,212,216,220,223,225,227,227,226,222,215,
+206,194,178,159,138,115,92,67,44,22,2,-15,-29,-40,-49,-54,-58,-59,-60,-60,-60,
+-61,-62,-63,-65,-68,-70,-72,-74,-75,-76,-77,-78,-79,-81,-85,-90,-98,-109,-122,-137,-155,
+-174,-193,-213,-231,-248,-261,-272,-279,-283,-283,-280,-275,-269,-262,-255,-250,-247,-247,-249,-254,-263,
+-274,-286,-301,-315,-330,-344,-357,-369,-379,-388,-395,-402,-409,-415,-423,-431,-441,-451,-463,-476,-490,
+-504,-518,-531,-543,-554,-562,-570,-575,-580,-583,-586,-589,-593,-598,-604,-612,-621,-632,-644,-656,-669,
+-681,-693,-704,-714,-722,-729,-734,-737,-739,-739,-738,-737,-734,-730,-726,-720,-713,-705,-696,-686,-674,
+-662,-649,-635,-621,-608,-594,-582,-570,-560,-549,-539,-529,-519,-508,-495,-481,-466,-449,-431,-413,-394,
+-377,-361,-349,-339,-334,-333,-337,-346,-359,-376,-395,-417,-439,-461,-482,-501,-518,-532,-543,-551,-557,
+-561,-564,-565,-566,-568,-569,-571,-574,-577,-580,-584,-588,-591,-595,-598,-601,-604,-607,-611,-616,-622,
+-629,-637,-647,-659,-671,-685,-699,-714,-729,-743,-757,-770,-782,-793,-803,-813,-822,-830,-837,-844,-850,
+-856,-860,-864,-866,-868,-869,-868,-867,-865,-862,-859,-855,-852,-848,-843,-839,-834,-829,-823,-816,-809,
+-800,-791,-780,-769,-758,-748,-737,-728,-721,-715,-711,-709,-709,-710,-713,-716,-719,-722,-723,-723,-721,
+-717,-711,-703,-694,-682,-670,-657,-643,-630,-615,-601,-586,-571,-555,-537,-519,-499,-477,-454,-430,-405,
+-380,-356,-332,-311,-292,-276,-263,-253,-246,-242,-240,-240,-240,-240,-240,-238,-234,-228,-220,-209,-196,
+-182,-165,-147,-128,-109,-88,-66,-43,-19,6,34,65,98,133,171,210,250,291,332,370,407,
+439,468,492,511,525,535,540,543,544,545,546,550,556,567,581,600,624,651,682,715,749,
+784,817,848,876,901,922,939,952,962,970,976,980,985,989,995,1002,1010,1019,1030,1042,1054,
+1065,1076,1086,1095,1102,1108,1113,1117,1120,1124,1130,1137,1146,1160,1176,1197,1222,1252,1285,1322,1361,
+1403,1447,1491,1536,1580,1624,1667,1708,1748,1786,1823,1859,1893,1926,1957,1988,2017,2045,2072,2097,2121,
+2143,2164,2182,2199,2215,2228,2240,2250,2259,2267,2274,2280,2285,2290,2295,2300,2305,2310,2316,2323,2330,
+2338,2348,2359,2371,2385,2400,2416,2434,2452,2471,2492,2512,2533,2555,2577,2599,2621,2644,2667,2689,2712,
+2735,2758,2781,2804,2826,2848,2869,2890,2909,2928,2946,2962,2978,2992,3005,3018,3029,3039,3048,3057,3064,
+3070,3076,3081,3085,3090,3094,3099,3105,3112,3121,3131,3143,3156,3172,3189,3208,3228,3248,3268,3289,3309,
+3329,3348,3366,3383,3400,3417,3434,3451,3469,3487,3507,3528,3549,3572,3595,3618,3642,3665,3688,3710,3731,
+3752,3772,3791,3810,3829,3847,3866,3885,3904,3924,3944,3964,3984,4003,4023,4042,4060,4078,4095,4112,4130,
+4147,4165,4184,4203,4222,4243,4263,4283,4303,4322,4340,4357,4371,4384,4395,4403,4410,4415,4419,4422,4423,
+4423,4423,4420,4415,4407,4395,4378,4355,4325,4287,4240,4185,4122,4051,3973,3889,3802,3713,3626,3541,3462,
+3390,3328,3277,3237,3210,3194,3190,3196,3210,3231,3256,3284,3312,3339,3362,3382,3396,3406,3410,3410,3406,
+3400,3393,3386,3382,3381,3384,3393,3408,3429,3457,3490,3529,3571,3618,3666,3716,3765,3814,3860,3904,3945,
+3982,4015,4045,4071,4094,4114,4132,4148,4163,4176,4189,4201,4213,4224,4235,4246,4256,4265,4273,4279,4284,
+4287,4288,4286,4281,4275,4266,4254,4241,4227,4212,4197,4182,4168,4155,4145,4138,4133,4131,4131,4135,4140,
+4147,4155,4164,4172,4180,4186,4190,4193,4194,4262,4261,4257,4251,4244,4235,4225,4216,4208,4202,4198,4196,
+4195,4197,4199,4202,4206,4208,4210,4210,4208,4204,4199,4192,4183,4175,4165,4156,4148,4139,4131,4123,4115,
+4105,4094,4081,4066,4048,4027,4005,3981,3956,3931,3908,3888,3870,3856,3846,3840,3837,3837,3838,3839,3837,
+3833,3823,3807,3784,3754,3716,3671,3621,3566,3508,3449,3391,3335,3282,3234,3192,3155,3124,3098,3077,3059,
+3044,3031,3018,3006,2994,2980,2966,2951,2935,2918,2901,2883,2866,2848,2831,2814,2796,2779,2761,2742,2723,
+2702,2681,2659,2635,2611,2586,2561,2535,2509,2482,2456,2429,2402,2375,2348,2321,2294,2267,2240,2214,2187,
+2162,2137,2113,2090,2067,2045,2024,2004,1984,1964,1945,1926,1907,1888,1869,1849,1830,1811,1791,1772,1753,
+1733,1713,1694,1674,1653,1633,1612,1590,1568,1546,1524,1501,1479,1457,1435,1413,1392,1371,1351,1331,1311,
+1291,1272,1253,1233,1214,1194,1175,1156,1138,1120,1103,1086,1071,1056,1042,1028,1015,1002,989,976,962,
+947,932,916,900,884,867,850,834,818,802,787,773,759,745,732,718,704,689,674,658,641,
+624,607,589,572,556,540,526,514,503,493,486,479,474,470,466,462,458,453,448,441,432,
+422,411,398,383,367,351,333,316,298,280,263,247,232,218,206,195,186,178,171,164,159,
+154,149,145,140,136,132,128,124,121,118,117,116,116,118,119,122,124,126,127,126,124,
+119,111,101,88,72,54,33,10,-13,-39,-65,-91,-118,-145,-171,-196,-221,-245,-268,-290,-312,
+-332,-352,-371,-389,-406,-422,-437,-451,-464,-477,-489,-501,-512,-524,-534,-545,-556,-565,-575,-583,-591,
+-596,-600,-602,-602,-599,-594,-586,-576,-564,-551,-537,-522,-508,-494,-482,-472,-464,-459,-457,-458,-461,
+-467,-475,-485,-496,-507,-519,-530,-540,-550,-558,-565,-572,-578,-583,-587,-592,-596,-600,-604,-607,-611,
+-614,-617,-619,-621,-623,-623,-624,-624,-625,-626,-628,-630,-633,-637,-642,-647,-653,-660,-667,-673,-680,
+-686,-691,-696,-701,-705,-709,-713,-718,-723,-729,-735,-742,-749,-757,-764,-772,-779,-786,-792,-797,-802,
+-805,-807,-808,-808,-807,-805,-802,-799,-794,-787,-780,-771,-760,-749,-736,-722,-708,-693,-679,-665,-652,
+-641,-631,-623,-616,-611,-606,-601,-597,-592,-585,-578,-568,-557,-544,-530,-515,-499,-484,-470,-457,-447,
+-438,-433,-430,-429,-429,-430,-431,-431,-430,-426,-419,-409,-396,-379,-360,-339,-316,-294,-273,-254,-238,
+-225,-217,-212,-212,-215,-221,-229,-238,-247,-256,-263,-267,-268,-267,-262,-254,-243,-231,-217,-203,-188,
+-174,-160,-148,-137,-127,-118,-109,-102,-95,-88,-82,-75,-69,-63,-57,-52,-48,-45,-42,-41,-40,
+-40,-40,-40,-39,-38,-35,-31,-26,-19,-11,-2,7,16,25,33,39,44,46,47,45,42,
+37,33,28,23,20,18,18,21,24,30,36,44,50,56,61,63,63,60,55,47,37,
+26,14,2,-7,-15,-20,-22,-20,-15,-6,5,19,35,52,68,84,97,108,115,120,121,
+120,115,110,102,94,86,79,73,68,65,63,64,65,68,72,76,81,85,90,94,98,
+102,106,111,115,120,126,132,138,145,153,160,168,175,181,187,191,194,196,197,197,195,
+193,190,186,183,180,178,177,176,177,179,183,187,192,198,203,209,213,217,220,221,222,
+221,219,218,216,215,215,217,221,227,235,245,257,270,283,296,308,319,328,334,339,340,
+340,337,334,329,325,321,317,315,313,312,313,313,313,313,313,311,308,304,299,294,289,
+285,282,281,282,286,291,299,308,318,329,338,347,354,358,360,360,358,353,348,342,336,
+331,327,324,322,321,321,321,321,321,318,314,309,300,290,278,265,250,235,220,206,192,
+179,168,158,149,142,136,132,129,127,127,128,131,136,143,151,160,171,182,192,201,209,
+213,215,213,207,198,184,168,149,129,108,87,68,50,34,21,11,3,-1,-5,-7,-9,
+-9,-10,-10,-10,-9,-8,-5,-1,3,10,20,31,44,58,73,89,104,119,133,146,158,
+168,177,186,193,199,204,208,211,212,210,206,199,189,174,156,134,109,81,52,21,-7,
+-36,-61,-83,-101,-115,-124,-129,-129,-127,-121,-114,-106,-98,-91,-84,-78,-73,-69,-67,-66,-66,
+-66,-68,-70,-74,-79,-86,-95,-106,-120,-135,-152,-171,-190,-210,-229,-247,-263,-276,-286,-293,-297,
+-298,-296,-293,-287,-282,-276,-271,-268,-267,-268,-272,-278,-286,-295,-306,-318,-330,-342,-353,-363,-373,
+-381,-389,-396,-402,-409,-416,-424,-433,-443,-454,-467,-480,-493,-507,-520,-533,-545,-556,-566,-574,-582,
+-588,-594,-600,-606,-612,-619,-627,-636,-645,-656,-667,-678,-690,-701,-712,-721,-730,-738,-744,-749,-754,
+-757,-759,-760,-760,-759,-756,-752,-746,-738,-728,-716,-702,-687,-669,-651,-633,-615,-598,-581,-567,-554,
+-543,-534,-527,-520,-514,-508,-501,-494,-485,-476,-466,-455,-444,-435,-427,-422,-420,-422,-428,-437,-451,
+-468,-487,-507,-528,-548,-567,-583,-597,-607,-614,-617,-618,-617,-615,-612,-610,-608,-608,-609,-612,-617,
+-623,-629,-636,-644,-650,-656,-662,-666,-670,-674,-677,-681,-685,-690,-696,-703,-711,-720,-730,-741,-752,
+-763,-775,-786,-797,-808,-819,-829,-840,-851,-862,-873,-884,-894,-903,-911,-918,-923,-927,-928,-927,-925,
+-921,-916,-910,-904,-899,-894,-889,-886,-884,-882,-881,-880,-878,-876,-872,-867,-861,-853,-844,-834,-823,
+-812,-802,-792,-782,-774,-768,-762,-757,-752,-748,-743,-738,-731,-724,-714,-704,-692,-680,-666,-652,-638,
+-624,-610,-596,-582,-569,-556,-542,-528,-512,-496,-479,-461,-443,-423,-404,-385,-366,-348,-332,-317,-304,
+-293,-283,-274,-266,-259,-252,-244,-235,-226,-216,-204,-192,-179,-165,-151,-137,-122,-108,-93,-79,-63,
+-47,-30,-12,7,29,53,78,104,131,158,185,211,234,256,274,289,302,311,318,324,328,
+333,339,347,357,372,391,414,441,473,508,546,586,627,668,708,746,781,813,842,868,890,
+910,927,943,958,972,987,1002,1018,1035,1053,1072,1090,1109,1127,1144,1159,1171,1182,1190,1195,1199,
+1201,1203,1204,1207,1212,1219,1230,1246,1265,1290,1319,1352,1389,1428,1470,1513,1557,1600,1642,1682,1720,
+1756,1790,1821,1850,1877,1903,1927,1950,1972,1992,2012,2031,2049,2066,2081,2095,2107,2118,2128,2137,2144,
+2151,2157,2162,2168,2174,2179,2186,2193,2201,2210,2219,2230,2242,2255,2269,2284,2301,2318,2337,2357,2378,
+2399,2421,2444,2467,2491,2515,2540,2565,2590,2616,2641,2667,2693,2719,2744,2770,2794,2819,2842,2864,2886,
+2906,2926,2944,2962,2979,2996,3012,3027,3042,3056,3070,3083,3095,3106,3116,3124,3132,3138,3143,3148,3153,
+3158,3163,3170,3178,3188,3199,3212,3227,3243,3261,3279,3298,3318,3337,3356,3374,3393,3411,3429,3448,3468,
+3488,3509,3532,3556,3581,3607,3633,3660,3686,3712,3737,3760,3783,3804,3824,3842,3860,3877,3893,3910,3926,
+3943,3960,3978,3995,4013,4030,4048,4065,4083,4100,4117,4134,4152,4170,4190,4210,4232,4255,4279,4304,4330,
+4355,4381,4406,4430,4452,4473,4491,4507,4520,4531,4539,4545,4549,4550,4548,4543,4535,4522,4504,4481,4451,
+4414,4371,4320,4261,4196,4124,4048,3968,3886,3804,3724,3648,3577,3514,3459,3414,3379,3354,3339,3333,3335,
+3344,3357,3374,3393,3411,3430,3446,3460,3471,3479,3485,3490,3493,3497,3502,3509,3519,3533,3551,3573,3599,
+3629,3662,3697,3735,3773,3811,3849,3885,3920,3952,3983,4012,4040,4066,4091,4116,4140,4165,4189,4213,4237,
+4261,4283,4304,4323,4339,4353,4363,4370,4374,4374,4370,4364,4356,4345,4332,4318,4303,4287,4271,4255,4239,
+4224,4209,4195,4183,4172,4163,4157,4153,4152,4153,4158,4165,4175,4186,4199,4212,4225,4237,4247,4255,4260,
+4262,4322,4323,4320,4313,4303,4291,4278,4264,4250,4239,4229,4223,4220,4219,4221,4225,4230,4236,4241,4244,
+4246,4245,4242,4237,4229,4221,4211,4201,4191,4181,4172,4163,4154,4145,4134,4121,4106,4088,4068,4044,4019,
+3992,3964,3938,3914,3894,3879,3868,3863,3864,3868,3876,3886,3894,3901,3903,3898,3886,3865,3835,3796,3748,
+3694,3635,3572,3509,3446,3386,3330,3279,3235,3196,3164,3136,3113,3094,3076,3060,3044,3028,3011,2994,2975,
+2955,2934,2913,2893,2872,2851,2831,2812,2793,2773,2754,2734,2713,2692,2669,2646,2622,2598,2573,2548,2523,
+2498,2473,2449,2424,2400,2376,2351,2326,2301,2275,2249,2222,2195,2168,2141,2114,2089,2063,2039,2016,1994,
+1973,1953,1934,1916,1898,1880,1863,1846,1828,1810,1792,1773,1755,1736,1716,1696,1677,1656,1636,1615,1593,
+1572,1550,1527,1504,1481,1457,1434,1410,1386,1362,1338,1314,1290,1266,1243,1220,1198,1176,1156,1136,1117,
+1099,1083,1067,1053,1039,1026,1014,1002,990,977,964,951,936,921,906,890,873,857,841,825,809,
+795,781,767,754,741,727,713,699,683,667,650,632,613,594,576,558,541,525,511,499,489,
+481,475,470,466,462,458,454,450,444,436,427,417,405,391,377,361,344,326,309,291,274,
+257,242,228,215,204,195,189,184,180,179,178,179,180,180,181,180,179,176,172,167,160,
+153,144,136,128,120,112,105,98,91,84,77,69,59,48,35,20,4,-14,-34,-55,-78,
+-100,-123,-146,-168,-189,-210,-230,-249,-267,-284,-301,-318,-334,-351,-367,-383,-399,-415,-431,-446,-461,
+-476,-491,-505,-519,-533,-546,-559,-572,-585,-597,-609,-620,-630,-639,-647,-653,-658,-660,-661,-659,-654,
+-648,-639,-629,-617,-605,-592,-579,-567,-557,-548,-542,-539,-537,-539,-543,-549,-558,-567,-578,-589,-600,
+-611,-622,-631,-640,-648,-656,-662,-668,-673,-677,-681,-684,-686,-688,-689,-688,-688,-686,-684,-682,-680,
+-678,-676,-676,-676,-677,-678,-681,-684,-687,-690,-693,-695,-697,-698,-699,-700,-701,-702,-703,-707,-711,
+-717,-725,-734,-745,-757,-769,-781,-792,-803,-812,-819,-824,-827,-827,-826,-824,-820,-815,-810,-804,-798,
+-793,-787,-781,-775,-768,-761,-753,-744,-735,-725,-715,-704,-694,-684,-674,-665,-657,-650,-643,-637,-630,
+-624,-616,-607,-597,-586,-573,-558,-543,-527,-510,-494,-478,-464,-451,-440,-431,-424,-419,-415,-412,-409,
+-406,-402,-397,-389,-380,-368,-354,-338,-320,-302,-284,-267,-252,-239,-228,-221,-218,-218,-222,-228,-236,
+-245,-255,-264,-272,-277,-280,-281,-278,-272,-264,-254,-242,-229,-216,-204,-192,-182,-173,-165,-158,-153,
+-148,-143,-139,-134,-128,-123,-116,-109,-102,-95,-89,-82,-77,-73,-69,-66,-64,-63,-61,-60,-57,
+-55,-51,-46,-40,-33,-26,-19,-12,-5,0,4,7,9,9,8,7,4,2,1,0,0,
+1,3,6,10,14,17,20,22,21,19,15,9,1,-7,-16,-24,-31,-36,-37,-36,-31,
+-22,-9,5,22,40,59,76,91,103,112,117,118,115,109,101,92,81,71,63,56,51,
+48,49,51,55,60,66,72,78,83,87,90,92,93,94,95,97,99,103,107,113,121,
+129,138,148,157,167,175,183,190,196,200,203,205,205,205,204,203,201,199,198,196,195,
+194,194,194,195,197,199,202,204,207,210,213,215,217,217,217,217,216,216,216,216,218,
+221,225,232,240,250,261,273,286,298,309,318,326,331,334,335,333,330,326,320,314,308,
+303,298,295,292,290,288,287,286,285,284,282,280,278,277,275,275,275,276,278,281,285,
+289,294,298,302,305,308,309,310,309,309,308,308,308,309,311,313,316,319,322,324,324,
+323,320,315,307,297,285,270,255,239,222,206,190,175,160,147,136,125,116,108,102,97,
+95,94,95,99,105,113,123,135,147,159,171,180,187,190,189,184,173,159,140,119,95,
+71,48,26,6,-9,-22,-30,-35,-36,-35,-31,-27,-22,-17,-12,-8,-6,-3,-1,0,3,
+7,13,21,30,41,54,67,81,95,108,121,132,142,151,159,166,171,176,180,183,185,
+185,183,178,170,159,143,124,101,75,46,16,-13,-43,-71,-95,-116,-132,-143,-150,-151,-149,
+-143,-135,-125,-114,-103,-93,-85,-78,-73,-70,-69,-70,-73,-78,-84,-93,-103,-114,-128,-143,-159,
+-176,-194,-212,-230,-247,-262,-276,-287,-296,-302,-306,-307,-306,-304,-301,-298,-294,-292,-290,-290,-291,
+-293,-297,-303,-309,-316,-324,-331,-339,-347,-354,-361,-368,-374,-381,-388,-395,-402,-410,-418,-428,-438,
+-449,-460,-473,-486,-499,-512,-525,-538,-551,-563,-574,-584,-594,-604,-613,-621,-630,-639,-647,-657,-666,
+-676,-686,-697,-707,-717,-726,-736,-744,-752,-759,-766,-772,-777,-781,-784,-786,-787,-786,-784,-779,-772,
+-762,-750,-736,-719,-700,-679,-658,-637,-615,-595,-577,-561,-547,-536,-527,-520,-515,-511,-507,-505,-501,
+-498,-495,-491,-488,-485,-483,-484,-487,-492,-501,-513,-528,-546,-566,-587,-608,-628,-646,-662,-674,-683,
+-688,-690,-689,-685,-680,-675,-669,-665,-663,-663,-665,-670,-677,-685,-695,-705,-715,-725,-733,-740,-746,
+-750,-753,-755,-756,-757,-758,-759,-761,-763,-766,-769,-772,-776,-780,-784,-789,-795,-801,-808,-816,-826,
+-838,-851,-865,-880,-896,-911,-926,-939,-951,-959,-965,-969,-969,-966,-962,-956,-950,-943,-936,-931,-927,
+-925,-925,-925,-927,-929,-932,-933,-934,-933,-930,-925,-918,-909,-899,-887,-875,-862,-849,-837,-825,-813,
+-802,-791,-780,-770,-758,-747,-735,-722,-709,-696,-682,-668,-655,-642,-629,-618,-607,-596,-586,-577,-567,
+-558,-548,-538,-528,-516,-504,-491,-478,-463,-449,-434,-419,-404,-389,-374,-358,-343,-327,-311,-294,-278,
+-261,-244,-228,-212,-197,-183,-170,-158,-147,-138,-129,-122,-115,-108,-102,-95,-87,-78,-68,-56,-44,
+-31,-17,-3,11,25,39,52,64,76,87,98,110,122,135,149,166,185,206,230,257,287,
+318,352,388,424,462,500,538,576,614,650,686,720,754,786,817,848,877,906,935,963,991,
+1019,1046,1074,1100,1126,1151,1175,1197,1217,1235,1251,1264,1274,1283,1290,1295,1300,1305,1311,1319,1329,
+1342,1358,1378,1400,1426,1455,1486,1518,1550,1582,1613,1643,1671,1696,1720,1741,1760,1777,1794,1809,1824,
+1839,1853,1868,1882,1897,1911,1925,1938,1951,1963,1974,1985,1995,2005,2015,2024,2034,2044,2054,2065,2076,
+2088,2101,2114,2129,2144,2160,2177,2195,2215,2236,2258,2282,2307,2333,2361,2390,2419,2449,2480,2511,2542,
+2573,2604,2635,2665,2695,2724,2753,2780,2807,2832,2857,2880,2902,2923,2943,2962,2981,2999,3017,3034,3052,
+3069,3086,3102,3118,3132,3146,3158,3168,3177,3184,3190,3195,3198,3202,3206,3210,3216,3223,3233,3244,3257,
+3272,3289,3307,3326,3346,3365,3385,3405,3424,3444,3463,3483,3503,3524,3546,3569,3593,3619,3644,3671,3697,
+3723,3749,3773,3796,3818,3838,3858,3876,3893,3909,3926,3942,3958,3975,3992,4010,4028,4046,4064,4082,4100,
+4118,4135,4152,4170,4188,4207,4227,4247,4270,4294,4319,4346,4373,4402,4431,4459,4487,4514,4540,4563,4584,
+4602,4617,4629,4637,4641,4641,4636,4626,4611,4590,4564,4531,4492,4448,4397,4341,4280,4216,4149,4081,4013,
+3946,3881,3821,3766,3716,3674,3638,3609,3588,3572,3563,3559,3559,3561,3566,3572,3578,3583,3588,3592,3594,
+3597,3599,3601,3605,3611,3620,3632,3648,3669,3693,3720,3751,3785,3820,3856,3892,3926,3959,3989,4016,4040,
+4061,4079,4096,4111,4125,4140,4157,4174,4194,4217,4241,4267,4294,4321,4348,4373,4395,4413,4428,4437,4442,
+4442,4437,4428,4416,4400,4383,4365,4346,4327,4309,4291,4274,4258,4244,4230,4218,4207,4197,4189,4183,4179,
+4178,4179,4184,4192,4203,4216,4231,4248,4265,4281,4296,4308,4317,4322,4337,4343,4345,4343,4337,4329,4317,
+4304,4292,4279,4269,4261,4256,4254,4255,4259,4264,4269,4275,4279,4281,4281,4278,4272,4263,4253,4241,4228,
+4215,4203,4192,4182,4172,4164,4155,4145,4133,4119,4102,4082,4059,4035,4009,3984,3961,3940,3925,3915,3911,
+3913,3922,3935,3952,3969,3986,3998,4005,4004,3993,3972,3940,3897,3846,3786,3721,3652,3583,3514,3449,3388,
+3333,3284,3241,3205,3173,3146,3123,3101,3080,3060,3039,3018,2996,2974,2951,2928,2905,2882,2860,2839,2819,
+2799,2780,2760,2740,2720,2699,2677,2654,2631,2606,2582,2557,2532,2507,2483,2459,2435,2412,2389,2365,2341,
+2316,2290,2264,2236,2208,2179,2149,2120,2091,2062,2035,2009,1984,1961,1939,1920,1901,1883,1866,1850,1833,
+1817,1800,1783,1765,1747,1728,1708,1688,1668,1647,1626,1604,1583,1561,1539,1516,1494,1471,1447,1423,1399,
+1374,1349,1324,1298,1273,1247,1222,1197,1173,1149,1127,1106,1086,1068,1051,1036,1022,1009,997,985,974,
+962,950,937,923,908,893,877,860,843,826,810,794,779,765,751,738,725,712,699,686,671,
+656,640,622,604,586,568,551,534,519,506,495,485,477,471,465,460,455,450,444,436,427,
+417,405,391,376,361,345,328,312,296,280,265,252,239,227,217,208,200,194,190,187,186,
+187,189,192,195,198,201,202,202,199,195,187,177,164,149,133,115,97,78,59,41,23,
+6,-9,-25,-40,-56,-72,-89,-107,-125,-144,-163,-183,-203,-222,-241,-259,-275,-291,-305,-318,-329,
+-340,-349,-358,-367,-375,-384,-392,-401,-410,-420,-430,-441,-452,-463,-475,-487,-499,-511,-524,-536,-548,
+-560,-572,-583,-595,-606,-617,-628,-638,-647,-656,-663,-669,-674,-677,-678,-677,-675,-670,-664,-657,-650,
+-642,-635,-628,-623,-620,-619,-620,-624,-629,-637,-646,-657,-668,-679,-691,-702,-712,-721,-729,-736,-742,
+-747,-750,-753,-754,-754,-753,-751,-748,-745,-741,-737,-733,-730,-727,-724,-723,-722,-722,-722,-723,-724,
+-724,-723,-722,-719,-716,-711,-706,-700,-695,-691,-688,-686,-687,-691,-697,-705,-716,-728,-741,-753,-766,
+-777,-787,-794,-799,-802,-804,-803,-801,-799,-796,-794,-791,-790,-789,-788,-788,-787,-786,-784,-781,-777,
+-771,-763,-754,-744,-733,-721,-709,-697,-686,-674,-664,-654,-644,-635,-626,-617,-607,-596,-584,-572,-558,
+-544,-528,-512,-496,-479,-463,-448,-433,-419,-407,-396,-387,-379,-373,-367,-363,-358,-354,-350,-345,-339,
+-333,-325,-317,-309,-301,-293,-286,-281,-277,-275,-275,-278,-282,-287,-294,-300,-306,-311,-314,-315,-314,
+-310,-303,-295,-284,-273,-261,-249,-238,-229,-221,-215,-210,-207,-204,-203,-201,-199,-195,-190,-184,-175,
+-166,-155,-143,-132,-120,-110,-100,-93,-87,-83,-81,-81,-81,-82,-83,-83,-82,-80,-77,-73,-67,
+-60,-52,-45,-37,-30,-24,-20,-17,-15,-14,-15,-16,-18,-19,-21,-23,-24,-25,-25,-26,-27,
+-29,-31,-34,-38,-42,-47,-51,-55,-58,-59,-57,-53,-46,-36,-23,-9,7,24,40,56,69,
+80,87,91,92,89,85,78,71,64,57,52,49,49,50,53,58,65,71,78,84,89,
+93,96,98,99,99,100,101,103,107,111,117,124,132,141,150,159,167,175,182,189,195,
+200,204,209,214,219,224,229,234,238,242,244,246,246,244,241,238,233,227,222,217,213,
+210,208,206,206,207,208,210,211,212,213,213,213,213,213,214,216,219,223,230,238,247,
+257,268,279,288,296,303,306,308,307,304,299,293,286,279,272,266,262,258,256,256,256,
+257,259,260,262,263,264,264,264,264,264,263,263,263,263,263,263,264,265,266,267,269,
+271,273,275,279,282,286,290,294,298,302,304,305,304,302,298,292,284,274,264,252,241,
+229,218,207,197,187,179,171,163,156,150,144,138,134,130,129,128,130,134,139,146,154,
+162,170,177,181,181,178,170,158,142,121,97,72,46,20,-3,-24,-40,-52,-59,-61,-58,
+-52,-42,-31,-19,-7,4,13,21,27,31,34,36,38,41,44,49,56,64,72,82,92,
+102,111,119,126,132,137,140,142,144,146,146,147,146,144,141,136,128,118,104,87,67,
+44,19,-5,-31,-55,-78,-97,-113,-124,-131,-134,-132,-128,-121,-113,-104,-95,-87,-81,-76,-74,
+-74,-76,-80,-87,-96,-107,-120,-134,-150,-167,-184,-203,-221,-239,-256,-271,-285,-296,-304,-309,-312,
+-312,-310,-307,-303,-299,-295,-293,-291,-292,-294,-298,-303,-309,-316,-323,-329,-335,-341,-345,-349,-353,
+-356,-360,-364,-369,-374,-381,-388,-397,-407,-417,-429,-440,-452,-465,-477,-489,-502,-514,-527,-539,-551,
+-564,-575,-587,-598,-609,-620,-630,-640,-649,-659,-668,-678,-687,-697,-707,-717,-727,-736,-746,-756,-765,
+-773,-782,-789,-796,-801,-806,-810,-812,-812,-811,-808,-802,-794,-784,-771,-756,-738,-718,-697,-676,-653,
+-632,-610,-590,-572,-556,-541,-529,-519,-510,-503,-498,-493,-490,-488,-486,-486,-487,-491,-496,-504,-515,
+-528,-545,-564,-586,-609,-633,-658,-682,-704,-724,-740,-754,-763,-770,-772,-772,-770,-766,-762,-758,-755,
+-754,-754,-757,-763,-770,-779,-789,-799,-809,-819,-827,-834,-839,-843,-844,-844,-843,-841,-838,-834,-830,
+-825,-820,-816,-811,-806,-802,-798,-795,-793,-793,-795,-799,-806,-816,-828,-843,-861,-880,-900,-920,-939,
+-957,-973,-985,-995,-1001,-1004,-1004,-1001,-997,-992,-986,-981,-977,-974,-973,-973,-975,-978,-981,-985,-988,
+-990,-990,-989,-986,-981,-973,-964,-954,-942,-930,-917,-903,-890,-877,-864,-851,-838,-826,-813,-800,-787,
+-773,-759,-745,-730,-716,-702,-688,-675,-662,-650,-639,-630,-621,-613,-605,-598,-592,-585,-579,-572,-564,
+-555,-545,-534,-522,-508,-492,-475,-456,-436,-415,-392,-369,-346,-322,-299,-276,-255,-235,-217,-201,-188,
+-177,-168,-162,-157,-154,-153,-152,-151,-150,-149,-146,-143,-138,-131,-123,-113,-101,-88,-73,-57,-40,
+-21,-1,20,42,65,88,112,136,160,184,207,229,251,273,294,315,337,359,383,409,437,
+468,502,539,578,620,664,710,756,802,847,892,934,975,1014,1051,1086,1119,1151,1181,1211,1239,
+1267,1293,1318,1342,1363,1382,1398,1412,1424,1433,1440,1447,1452,1458,1464,1472,1482,1493,1506,1521,1537,
+1554,1571,1588,1604,1618,1631,1643,1653,1661,1669,1675,1682,1689,1696,1704,1713,1724,1735,1748,1761,1775,
+1789,1804,1819,1835,1850,1866,1882,1898,1914,1930,1947,1963,1980,1996,2012,2029,2045,2062,2079,2097,2116,
+2137,2160,2185,2213,2242,2274,2308,2344,2381,2420,2458,2497,2536,2573,2610,2646,2680,2713,2744,2774,2803,
+2829,2855,2879,2902,2924,2944,2964,2983,3001,3018,3035,3052,3069,3085,3101,3117,3132,3146,3159,3170,3181,
+3190,3197,3203,3209,3213,3218,3223,3228,3235,3244,3254,3267,3282,3298,3316,3336,3356,3377,3398,3419,3440,
+3461,3482,3503,3523,3544,3566,3588,3611,3634,3658,3682,3707,3731,3754,3776,3798,3818,3837,3855,3873,3889,
+3906,3922,3939,3956,3974,3993,4012,4032,4053,4073,4094,4113,4133,4152,4170,4188,4206,4223,4241,4260,4280,
+4301,4323,4347,4373,4400,4427,4456,4485,4514,4543,4571,4597,4621,4642,4660,4674,4684,4688,4688,4681,4669,
+4649,4624,4591,4553,4510,4461,4409,4353,4296,4239,4183,4129,4078,4031,3989,3953,3922,3896,3876,3860,3848,
+3840,3835,3831,3827,3825,3821,3817,3812,3806,3799,3791,3782,3774,3767,3761,3758,3758,3761,3768,3780,3796,
+3816,3840,3869,3899,3932,3967,4001,4034,4066,4095,4122,4145,4164,4180,4194,4206,4216,4225,4235,4246,4259,
+4274,4291,4309,4330,4351,4373,4394,4414,4431,4445,4455,4461,4463,4461,4455,4446,4435,4423,4409,4396,4382,
+4369,4357,4346,4335,4324,4314,4303,4292,4281,4269,4257,4246,4236,4227,4221,4217,4217,4220,4227,4238,4251,
+4266,4282,4298,4314,4327,4337,4321,4332,4342,4347,4349,4348,4344,4337,4329,4319,4310,4302,4296,4292,4290,
+4290,4292,4295,4298,4301,4302,4300,4296,4289,4280,4267,4253,4238,4223,4208,4195,4183,4172,4163,4155,4148,
+4140,4130,4119,4105,4088,4069,4049,4028,4008,3990,3976,3967,3964,3968,3979,3995,4015,4038,4061,4082,4097,
+4105,4103,4090,4066,4029,3981,3924,3858,3786,3712,3636,3562,3492,3427,3368,3315,3270,3230,3195,3165,3138,
+3114,3090,3067,3044,3021,2997,2973,2950,2926,2903,2881,2860,2839,2820,2801,2781,2762,2742,2722,2700,2677,
+2652,2627,2601,2574,2547,2520,2493,2467,2441,2416,2391,2367,2342,2317,2291,2265,2237,2209,2180,2150,2120,
+2091,2061,2032,2005,1979,1955,1932,1911,1891,1873,1856,1839,1823,1807,1790,1773,1755,1736,1716,1696,1674,
+1652,1629,1605,1582,1558,1535,1511,1488,1464,1441,1418,1395,1372,1349,1326,1302,1278,1253,1229,1204,1179,
+1154,1130,1106,1084,1062,1042,1024,1007,992,978,965,953,941,929,917,905,892,877,862,846,829,
+812,795,778,761,745,730,716,702,689,676,662,649,635,620,604,588,572,555,539,523,509,
+495,483,473,463,455,447,440,432,423,413,402,389,375,360,343,327,311,295,281,268,257,
+247,239,233,228,223,219,215,212,208,205,201,198,196,193,191,190,189,187,185,182,177,
+169,160,147,131,113,92,69,44,18,-7,-33,-59,-83,-106,-128,-149,-169,-188,-206,-224,-241,
+-258,-275,-291,-308,-323,-338,-352,-364,-376,-386,-395,-403,-410,-416,-420,-425,-428,-432,-435,-438,-441,
+-445,-449,-453,-458,-464,-470,-478,-485,-494,-502,-511,-520,-529,-537,-545,-554,-562,-570,-578,-586,-596,
+-605,-615,-626,-637,-648,-658,-668,-676,-683,-688,-692,-693,-693,-692,-689,-687,-684,-682,-681,-681,-683,
+-687,-692,-698,-705,-713,-722,-730,-738,-746,-752,-758,-762,-766,-768,-769,-769,-768,-767,-764,-761,-758,
+-754,-750,-747,-743,-740,-738,-737,-737,-737,-738,-739,-740,-741,-741,-740,-737,-733,-727,-721,-713,-705,
+-697,-690,-684,-681,-679,-680,-684,-690,-698,-708,-719,-730,-741,-751,-760,-768,-774,-779,-783,-785,-788,
+-790,-792,-794,-797,-800,-804,-807,-810,-812,-813,-813,-810,-806,-800,-793,-783,-773,-762,-750,-738,-727,
+-716,-705,-695,-685,-676,-667,-658,-648,-639,-629,-618,-606,-593,-580,-565,-548,-531,-513,-494,-475,-455,
+-436,-418,-400,-385,-372,-361,-353,-348,-346,-346,-348,-352,-356,-361,-365,-368,-371,-372,-371,-370,-367,
+-365,-362,-359,-358,-357,-357,-359,-361,-363,-365,-366,-365,-363,-359,-353,-344,-334,-323,-310,-298,-286,
+-276,-267,-261,-256,-253,-251,-250,-250,-249,-246,-242,-236,-227,-216,-202,-187,-171,-154,-138,-124,-111,
+-100,-93,-88,-87,-88,-90,-95,-99,-104,-107,-110,-110,-108,-104,-98,-91,-82,-73,-64,-56,-49,
+-44,-41,-40,-41,-43,-47,-52,-57,-63,-68,-74,-78,-82,-85,-87,-89,-90,-91,-91,-90,-89,
+-86,-82,-77,-70,-61,-51,-40,-27,-14,-1,11,23,33,40,46,50,51,50,49,46,43,
+41,40,40,42,45,50,56,63,69,76,82,87,91,94,96,98,100,102,105,109,114,
+121,129,137,145,154,162,169,174,179,182,183,185,186,187,189,193,199,206,215,225,236,
+246,256,264,270,273,272,268,262,253,242,230,218,207,198,191,187,185,185,187,190,194,
+197,200,202,202,201,199,197,194,192,191,192,195,200,207,216,225,236,246,254,262,267,
+269,270,268,264,259,253,247,241,237,234,232,232,233,235,238,241,244,247,249,251,252,
+252,252,251,251,250,250,251,252,253,255,257,260,262,265,268,270,272,275,276,278,279,
+279,279,278,276,273,269,264,258,252,246,240,234,229,225,222,219,217,216,215,214,213,
+211,209,206,202,199,196,193,192,191,191,193,195,198,200,202,202,200,195,186,173,156,
+137,114,89,64,39,16,-3,-19,-30,-37,-37,-33,-24,-12,2,18,34,50,63,75,83,
+90,93,95,95,94,93,93,93,95,97,100,104,108,112,116,119,121,121,121,120,118,
+116,114,111,108,105,101,96,90,82,71,58,43,26,7,-12,-32,-52,-70,-85,-97,-106,
+-111,-112,-110,-106,-100,-92,-85,-78,-72,-69,-67,-68,-72,-78,-86,-97,-109,-123,-139,-156,-175,
+-194,-214,-233,-253,-271,-287,-302,-313,-321,-326,-327,-326,-321,-315,-307,-299,-292,-286,-283,-281,-283,
+-287,-294,-302,-312,-321,-330,-338,-345,-350,-353,-355,-357,-358,-359,-361,-364,-369,-375,-384,-393,-405,
+-417,-430,-443,-455,-468,-480,-492,-504,-515,-527,-538,-549,-561,-572,-584,-596,-607,-618,-629,-639,-649,
+-658,-667,-676,-685,-694,-704,-714,-724,-735,-747,-758,-769,-781,-791,-801,-810,-818,-825,-830,-833,-835,
+-835,-833,-829,-823,-815,-805,-793,-779,-763,-746,-728,-708,-687,-666,-645,-623,-602,-581,-561,-541,-523,
+-506,-491,-478,-466,-458,-452,-449,-450,-454,-462,-474,-489,-508,-530,-555,-582,-611,-641,-672,-702,-730,
+-758,-783,-805,-824,-840,-852,-862,-869,-874,-876,-878,-878,-879,-880,-881,-884,-888,-893,-899,-905,-913,
+-920,-926,-932,-936,-939,-940,-940,-937,-933,-927,-920,-911,-902,-893,-883,-872,-862,-852,-843,-835,-828,
+-822,-819,-818,-819,-824,-832,-843,-857,-873,-892,-912,-933,-955,-975,-994,-1011,-1025,-1037,-1046,-1052,-1055,
+-1056,-1056,-1055,-1053,-1051,-1050,-1049,-1049,-1051,-1053,-1055,-1058,-1060,-1062,-1063,-1063,-1062,-1059,-1054,-1047,-1040,
+-1031,-1020,-1009,-998,-986,-974,-962,-950,-938,-925,-913,-900,-886,-872,-857,-841,-825,-807,-789,-771,-752,
+-734,-717,-700,-685,-672,-660,-650,-642,-635,-629,-624,-620,-616,-611,-605,-598,-590,-580,-567,-553,-536,
+-517,-497,-474,-449,-424,-397,-371,-344,-318,-293,-270,-249,-230,-214,-200,-189,-181,-174,-169,-166,-163,
+-161,-158,-154,-149,-142,-132,-121,-107,-90,-70,-47,-22,5,35,68,101,136,171,206,240,271,
+300,326,347,364,377,386,392,395,396,397,400,405,414,429,450,478,512,554,600,652,708,
+765,823,880,935,987,1036,1082,1124,1163,1199,1234,1268,1301,1334,1366,1399,1430,1460,1488,1513,1535,
+1553,1568,1578,1585,1589,1591,1591,1592,1592,1594,1597,1602,1608,1615,1624,1632,1640,1647,1652,1656,1658,
+1657,1656,1653,1650,1646,1643,1641,1640,1641,1644,1649,1655,1663,1673,1685,1698,1713,1730,1747,1767,1787,
+1809,1832,1855,1878,1901,1923,1945,1966,1987,2007,2026,2046,2067,2089,2113,2140,2169,2200,2235,2272,2312,
+2353,2396,2439,2481,2524,2565,2604,2642,2678,2712,2744,2774,2803,2831,2857,2882,2905,2928,2949,2970,2989,
+3008,3025,3042,3058,3073,3087,3101,3114,3126,3138,3149,3160,3169,3178,3186,3194,3202,3209,3217,3226,3235,
+3246,3259,3273,3289,3306,3325,3344,3365,3386,3408,3430,3451,3473,3494,3515,3536,3558,3579,3601,3623,3645,
+3668,3690,3713,3734,3755,3775,3793,3811,3827,3842,3857,3871,3886,3902,3918,3936,3955,3975,3997,4020,4044,
+4068,4091,4115,4137,4158,4178,4196,4214,4230,4246,4262,4278,4294,4312,4331,4351,4373,4396,4421,4447,4474,
+4502,4529,4556,4582,4607,4629,4648,4663,4674,4680,4680,4675,4663,4644,4620,4589,4554,4514,4471,4426,4381,
+4337,4295,4256,4221,4190,4165,4144,4128,4117,4108,4102,4098,4094,4091,4086,4080,4073,4064,4053,4040,4027,
+4013,3998,3984,3970,3958,3948,3940,3934,3931,3932,3936,3943,3954,3969,3986,4007,4031,4057,4085,4114,4144,
+4173,4201,4228,4253,4276,4296,4314,4329,4343,4354,4365,4375,4384,4394,4403,4413,4422,4432,4441,4449,4456,
+4461,4464,4466,4465,4462,4458,4453,4447,4441,4434,4429,4424,4420,4417,4415,4413,4410,4407,4402,4395,4386,
+4375,4362,4346,4330,4312,4295,4278,4264,4252,4244,4240,4241,4245,4253,4264,4278,4292,4307,4321,4316,4329,
+4342,4352,4361,4366,4368,4368,4364,4358,4350,4342,4334,4327,4321,4316,4314,4313,4314,4314,4315,4314,4311,
+4306,4298,4288,4274,4259,4242,4225,4209,4193,4179,4167,4157,4148,4140,4132,4123,4113,4102,4088,4072,4056,
+4040,4024,4011,4002,3999,4001,4009,4024,4043,4066,4090,4114,4134,4148,4153,4148,4132,4104,4063,4012,3951,
+3882,3808,3731,3654,3579,3507,3441,3381,3327,3280,3239,3203,3171,3142,3115,3089,3064,3039,3015,2990,2966,
+2941,2918,2895,2873,2852,2832,2812,2792,2772,2751,2730,2707,2682,2656,2628,2599,2569,2539,2509,2478,2449,
+2420,2392,2365,2340,2314,2290,2266,2241,2217,2192,2166,2140,2113,2087,2060,2033,2007,1982,1959,1936,1915,
+1895,1876,1858,1840,1823,1806,1789,1771,1753,1733,1712,1690,1667,1643,1617,1592,1565,1539,1512,1486,1461,
+1436,1411,1388,1365,1343,1321,1300,1278,1256,1234,1211,1188,1164,1139,1115,1090,1067,1044,1022,1001,982,
+965,950,936,923,911,899,887,875,863,849,835,819,803,786,768,751,733,716,700,684,668,
+654,639,625,610,596,581,565,550,534,518,502,487,473,459,447,435,423,412,401,389,376,
+362,347,331,313,295,277,260,244,231,220,212,208,206,208,212,217,223,229,234,237,237,
+235,231,224,215,204,193,181,168,156,144,131,119,106,92,77,61,42,21,0,-24,-50,
+-76,-103,-129,-156,-181,-205,-227,-249,-268,-287,-305,-321,-336,-351,-364,-377,-388,-399,-409,-418,-425,
+-433,-439,-445,-451,-456,-461,-465,-470,-474,-478,-481,-484,-487,-489,-492,-495,-497,-501,-504,-509,-514,
+-519,-525,-531,-537,-542,-547,-551,-555,-558,-561,-564,-568,-572,-578,-585,-594,-604,-615,-628,-640,-653,
+-665,-676,-686,-694,-700,-705,-708,-710,-711,-712,-713,-714,-715,-717,-720,-722,-726,-729,-732,-735,-737,
+-738,-739,-739,-738,-737,-736,-734,-733,-731,-728,-726,-724,-722,-719,-717,-715,-714,-713,-712,-713,-714,
+-716,-718,-721,-723,-726,-728,-729,-728,-727,-725,-721,-717,-713,-709,-706,-704,-703,-704,-708,-713,-720,
+-728,-737,-747,-757,-767,-776,-785,-792,-799,-805,-810,-815,-820,-824,-828,-833,-837,-840,-843,-844,-844,
+-843,-840,-835,-829,-822,-814,-806,-797,-790,-783,-776,-771,-767,-764,-761,-758,-755,-751,-746,-739,-731,
+-721,-709,-696,-682,-666,-650,-632,-614,-594,-574,-553,-531,-509,-487,-465,-444,-425,-407,-393,-382,-374,
+-371,-371,-374,-380,-389,-398,-408,-417,-425,-431,-434,-436,-436,-433,-430,-426,-422,-418,-415,-413,-412,
+-412,-412,-412,-411,-409,-405,-399,-391,-380,-368,-355,-341,-327,-314,-303,-293,-286,-280,-277,-274,-273,
+-272,-270,-268,-263,-256,-246,-234,-220,-204,-187,-170,-153,-138,-125,-115,-108,-104,-103,-105,-109,-115,
+-122,-128,-134,-139,-141,-141,-138,-134,-127,-119,-110,-100,-92,-84,-78,-75,-73,-74,-77,-82,-88,
+-94,-102,-109,-115,-120,-124,-127,-128,-127,-125,-121,-117,-111,-103,-95,-87,-77,-67,-57,-46,-36,
+-26,-17,-9,-2,3,7,10,12,13,13,13,13,14,15,18,22,26,32,38,45,52,
+58,64,69,73,76,79,82,85,89,94,100,107,116,125,135,146,155,164,170,175,177,
+176,174,170,165,160,156,153,153,155,160,168,178,190,203,215,226,235,241,243,242,237,
+229,219,207,195,184,174,167,162,160,161,163,168,173,178,182,185,186,185,183,179,174,
+169,165,163,162,163,167,173,181,190,199,209,217,225,230,233,235,235,233,231,228,225,
+223,222,222,223,224,226,229,231,233,235,236,237,238,238,239,241,243,245,249,253,258,
+263,268,272,276,279,281,282,281,280,277,274,270,266,261,256,251,247,242,237,233,229,
+225,222,220,218,217,217,218,219,221,223,225,227,228,228,228,227,225,223,221,219,217,
+216,215,215,215,216,216,215,213,209,202,193,182,168,152,135,116,98,81,66,54,46,
+42,42,46,54,66,80,95,111,127,141,154,163,170,174,175,174,171,166,161,156,151,
+146,143,139,136,134,132,129,126,122,118,113,108,103,98,92,87,81,75,68,61,52,
+42,30,17,1,-14,-32,-49,-66,-81,-95,-105,-112,-116,-117,-114,-110,-103,-96,-89,-83,-78,
+-76,-76,-78,-84,-92,-102,-114,-129,-145,-162,-180,-200,-220,-240,-260,-280,-299,-316,-331,-342,-351,
+-356,-356,-353,-347,-339,-328,-318,-307,-299,-292,-289,-289,-292,-298,-306,-316,-326,-336,-345,-352,-358,
+-361,-363,-363,-363,-362,-363,-364,-367,-372,-379,-388,-398,-409,-420,-431,-443,-453,-464,-474,-484,-494,
+-504,-516,-528,-540,-554,-568,-582,-596,-609,-622,-634,-646,-656,-665,-674,-683,-692,-701,-711,-722,-734,
+-746,-759,-773,-786,-800,-812,-824,-834,-842,-849,-854,-857,-859,-858,-856,-852,-846,-839,-831,-821,-809,
+-797,-782,-766,-749,-730,-709,-687,-663,-637,-610,-582,-553,-525,-497,-472,-449,-429,-414,-404,-399,-401,
+-408,-422,-441,-465,-493,-525,-560,-596,-633,-670,-707,-742,-777,-809,-839,-867,-893,-916,-936,-954,-969,
+-982,-992,-1000,-1006,-1010,-1013,-1015,-1016,-1018,-1019,-1021,-1023,-1026,-1028,-1031,-1033,-1034,-1034,-1032,-1028,-1023,
+-1016,-1007,-997,-986,-974,-961,-949,-937,-927,-917,-908,-901,-896,-893,-892,-893,-896,-901,-909,-919,-931,
+-944,-960,-977,-994,-1012,-1030,-1047,-1064,-1079,-1093,-1105,-1116,-1125,-1132,-1139,-1143,-1147,-1150,-1153,-1155,-1157,
+-1159,-1161,-1162,-1163,-1164,-1165,-1165,-1164,-1162,-1159,-1155,-1149,-1143,-1135,-1126,-1116,-1106,-1095,-1084,-1072,-1061,
+-1049,-1036,-1023,-1010,-995,-979,-962,-943,-923,-901,-879,-856,-832,-809,-786,-765,-745,-728,-712,-699,-687,
+-678,-670,-664,-659,-654,-649,-644,-639,-633,-626,-617,-607,-595,-582,-566,-549,-529,-507,-484,-459,-432,
+-405,-377,-350,-323,-298,-274,-252,-233,-216,-200,-187,-175,-164,-153,-142,-130,-116,-101,-84,-64,-41,
+-15,12,44,78,115,154,196,239,284,328,373,416,456,492,524,550,569,581,586,583,575,
+561,545,527,510,497,488,487,495,513,540,577,623,676,736,798,863,927,990,1049,1104,1155,
+1202,1245,1285,1323,1360,1396,1431,1467,1501,1536,1568,1598,1625,1648,1666,1680,1690,1697,1700,1702,1702,
+1703,1705,1709,1715,1722,1732,1742,1752,1761,1769,1774,1776,1775,1771,1763,1753,1740,1726,1712,1697,1683,
+1670,1659,1650,1643,1638,1635,1635,1638,1644,1653,1665,1680,1699,1720,1745,1771,1799,1828,1858,1887,1916,
+1943,1969,1994,2018,2042,2066,2090,2115,2143,2172,2204,2238,2274,2312,2351,2391,2431,2471,2511,2549,2586,
+2622,2657,2691,2723,2755,2787,2817,2847,2876,2904,2931,2957,2981,3003,3024,3043,3061,3076,3091,3104,3116,
+3127,3138,3148,3157,3167,3177,3186,3197,3207,3219,3231,3245,3259,3275,3291,3309,3328,3348,3368,3388,3409,
+3429,3449,3469,3489,3508,3527,3546,3565,3584,3604,3624,3645,3666,3686,3707,3726,3745,3763,3779,3793,3807,
+3819,3831,3843,3855,3869,3883,3900,3919,3940,3964,3989,4015,4043,4071,4098,4124,4148,4170,4190,4208,4223,
+4237,4249,4261,4272,4284,4296,4310,4326,4343,4362,4383,4405,4429,4454,4479,4505,4529,4553,4574,4593,4608,
+4620,4627,4629,4625,4616,4602,4583,4561,4535,4507,4478,4450,4423,4399,4379,4363,4351,4343,4338,4336,4337,
+4337,4338,4337,4334,4328,4319,4306,4291,4273,4253,4232,4211,4190,4171,4154,4140,4127,4118,4111,4107,4105,
+4105,4107,4110,4116,4124,4133,4145,4159,4176,4195,4216,4240,4265,4292,4319,4347,4374,4400,4424,4446,4465,
+4482,4495,4506,4513,4519,4522,4523,4522,4520,4517,4513,4508,4503,4497,4491,4485,4478,4472,4467,4462,4458,
+4456,4454,4454,4455,4456,4459,4461,4464,4466,4466,4465,4461,4455,4446,4434,4420,4404,4386,4367,4348,4330,
+4313,4298,4286,4277,4273,4272,4275,4282,4291,4303,4316,4337,4345,4355,4365,4375,4383,4389,4392,4392,4389,
+4383,4376,4367,4357,4349,4341,4336,4333,4332,4333,4335,4338,4339,4338,4335,4328,4318,4304,4287,4268,4248,
+4228,4208,4190,4173,4159,4147,4137,4127,4118,4107,4096,4083,4069,4054,4039,4025,4013,4004,4000,4002,4009,
+4021,4038,4057,4078,4098,4114,4124,4126,4119,4101,4072,4032,3981,3922,3857,3786,3713,3640,3569,3501,3437,
+3379,3326,3278,3235,3197,3162,3130,3100,3071,3044,3017,2990,2964,2939,2914,2890,2867,2845,2823,2801,2780,
+2758,2735,2711,2686,2659,2631,2601,2569,2537,2504,2470,2438,2406,2375,2346,2319,2293,2269,2246,2224,2203,
+2183,2162,2141,2121,2099,2078,2056,2034,2012,1990,1968,1947,1927,1907,1887,1868,1850,1831,1813,1794,1775,
+1756,1735,1714,1692,1668,1643,1618,1591,1564,1536,1508,1480,1453,1426,1400,1375,1351,1328,1306,1284,1263,
+1241,1220,1198,1175,1152,1128,1104,1080,1056,1032,1009,988,968,950,934,919,905,893,881,869,857,
+844,831,816,801,785,768,750,732,714,696,678,661,644,628,612,596,580,563,547,530,514,
+497,480,464,449,433,419,405,391,378,364,350,335,318,301,283,264,244,225,208,192,180,
+171,167,167,172,180,192,207,222,237,251,261,268,270,266,257,244,226,204,180,155,129,
+103,78,54,32,11,-8,-27,-46,-65,-85,-104,-124,-145,-166,-187,-208,-229,-249,-269,-287,-305,
+-322,-338,-353,-367,-379,-391,-401,-410,-418,-424,-429,-434,-438,-441,-445,-449,-453,-459,-465,-472,-479,
+-487,-494,-502,-508,-514,-520,-524,-529,-532,-536,-540,-544,-549,-554,-559,-565,-570,-575,-579,-582,-585,
+-586,-587,-587,-588,-589,-592,-595,-601,-607,-616,-626,-637,-648,-659,-670,-680,-689,-697,-703,-708,-712,
+-715,-717,-720,-722,-724,-725,-727,-728,-729,-729,-728,-727,-724,-721,-717,-713,-709,-705,-701,-698,-696,
+-694,-692,-691,-690,-690,-690,-690,-690,-690,-691,-692,-694,-696,-699,-702,-706,-709,-713,-717,-721,-724,
+-726,-728,-730,-732,-734,-737,-740,-745,-750,-757,-765,-774,-784,-794,-804,-814,-824,-833,-841,-849,-855,
+-861,-866,-871,-875,-879,-883,-886,-889,-891,-891,-890,-887,-883,-877,-869,-860,-850,-841,-832,-825,-819,
+-816,-815,-817,-821,-826,-832,-839,-844,-848,-849,-847,-842,-833,-822,-807,-791,-772,-753,-733,-712,-692,
+-672,-652,-632,-613,-593,-573,-553,-534,-515,-498,-483,-470,-459,-452,-449,-448,-451,-455,-461,-468,-475,
+-481,-485,-487,-487,-485,-482,-477,-472,-467,-462,-458,-455,-454,-453,-453,-453,-452,-450,-446,-440,-432,
+-421,-409,-394,-379,-363,-348,-334,-321,-310,-302,-296,-292,-289,-288,-287,-285,-283,-280,-275,-268,-259,
+-248,-236,-222,-208,-195,-182,-172,-163,-156,-152,-150,-151,-154,-158,-163,-168,-172,-175,-177,-177,-174,
+-170,-164,-157,-148,-140,-132,-124,-118,-113,-111,-110,-111,-113,-117,-122,-127,-132,-136,-140,-142,-143,
+-142,-140,-136,-130,-122,-114,-104,-94,-84,-73,-63,-53,-44,-36,-28,-23,-18,-14,-11,-8,-7,
+-5,-4,-2,0,1,5,9,14,19,24,30,36,41,46,50,53,56,59,62,65,69,
+73,79,86,94,103,113,124,134,143,151,157,160,161,160,156,150,142,135,127,120,115,
+112,111,114,119,126,135,145,155,164,172,178,182,183,182,179,174,168,161,155,150,146,
+144,144,145,147,150,154,157,159,161,161,160,158,156,153,151,149,148,149,151,154,159,
+164,170,176,181,186,189,192,194,195,196,197,198,200,202,205,208,211,215,217,220,221,
+221,221,220,219,218,218,220,222,226,232,239,247,255,264,271,277,282,284,285,283,279,
+273,266,259,251,243,236,230,225,220,217,214,211,209,208,206,205,204,203,202,201,200,
+200,200,199,199,199,199,198,198,197,197,196,196,196,197,197,198,199,200,200,200,199,
+197,194,190,184,178,171,163,156,149,144,139,137,137,139,143,150,159,169,181,193,204,
+216,226,235,241,246,248,249,247,243,239,233,227,220,212,205,198,190,183,175,167,158,
+149,139,130,120,110,100,91,82,73,64,54,44,33,21,8,-6,-22,-38,-56,-72,-88,
+-103,-115,-125,-131,-135,-136,-135,-131,-127,-123,-119,-117,-117,-119,-123,-130,-140,-151,-165,-180,-196,
+-213,-231,-250,-269,-288,-308,-327,-345,-362,-377,-389,-399,-405,-406,-404,-399,-390,-379,-367,-355,-343,
+-333,-327,-323,-322,-325,-331,-339,-347,-356,-365,-372,-377,-381,-382,-382,-380,-379,-377,-376,-376,-377,
+-380,-384,-389,-395,-401,-407,-413,-419,-425,-431,-438,-447,-457,-469,-484,-500,-517,-536,-556,-576,-595,
+-613,-630,-644,-658,-669,-680,-689,-698,-708,-718,-728,-740,-753,-766,-780,-795,-809,-823,-836,-847,-858,
+-867,-874,-879,-883,-885,-886,-884,-882,-877,-872,-865,-856,-846,-834,-821,-806,-789,-770,-748,-723,-695,
+-665,-632,-597,-560,-523,-486,-452,-421,-394,-374,-362,-357,-361,-373,-394,-422,-456,-495,-538,-583,-628,
+-673,-717,-759,-799,-836,-870,-903,-933,-960,-986,-1010,-1031,-1050,-1066,-1080,-1091,-1099,-1105,-1109,-1111,-1112,
+-1112,-1112,-1112,-1113,-1114,-1115,-1117,-1118,-1119,-1118,-1116,-1112,-1107,-1099,-1090,-1079,-1068,-1056,-1044,-1033,-1024,
+-1016,-1009,-1005,-1003,-1002,-1004,-1007,-1011,-1017,-1024,-1032,-1040,-1050,-1060,-1071,-1083,-1095,-1108,-1121,-1134,-1148,
+-1162,-1175,-1188,-1201,-1214,-1225,-1236,-1246,-1254,-1262,-1268,-1274,-1278,-1281,-1283,-1284,-1285,-1285,-1284,-1283,-1280,
+-1277,-1274,-1269,-1264,-1257,-1249,-1241,-1231,-1221,-1210,-1198,-1186,-1173,-1160,-1145,-1130,-1114,-1097,-1079,-1058,-1037,
+-1013,-989,-964,-938,-913,-888,-864,-842,-822,-804,-788,-774,-762,-751,-741,-732,-723,-714,-705,-696,-687,
+-679,-670,-662,-654,-645,-636,-627,-615,-603,-587,-570,-549,-526,-501,-473,-445,-415,-385,-356,-328,-302,
+-277,-254,-232,-212,-192,-172,-152,-130,-107,-83,-56,-27,3,35,70,106,144,184,225,267,312,
+358,404,452,499,546,589,630,665,693,714,726,729,723,709,687,660,630,600,573,551,537,
+533,541,561,594,638,691,753,820,890,960,1029,1095,1156,1212,1262,1308,1350,1389,1426,1462,1496,
+1530,1563,1595,1626,1654,1679,1701,1719,1733,1744,1753,1760,1766,1773,1781,1791,1803,1817,1832,1848,1864,
+1879,1891,1900,1905,1905,1901,1893,1881,1865,1848,1829,1808,1788,1768,1748,1730,1712,1696,1681,1668,1657,
+1649,1645,1644,1648,1656,1670,1688,1711,1738,1768,1800,1834,1868,1902,1934,1965,1994,2021,2046,2070,2094,
+2118,2142,2167,2194,2223,2253,2285,2318,2352,2387,2423,2460,2497,2534,2572,2610,2648,2686,2725,2763,2801,
+2838,2874,2909,2941,2972,3001,3027,3050,3071,3090,3106,3121,3135,3147,3158,3169,3180,3191,3202,3214,3227,
+3241,3255,3271,3288,3306,3325,3345,3365,3386,3406,3426,3446,3465,3483,3500,3516,3531,3545,3559,3573,3588,
+3602,3618,3634,3651,3668,3686,3703,3720,3736,3751,3765,3778,3789,3799,3809,3819,3829,3841,3855,3871,3890,
+3911,3936,3962,3990,4020,4049,4078,4105,4131,4154,4174,4191,4205,4217,4227,4236,4244,4253,4263,4274,4286,
+4301,4318,4337,4358,4380,4404,4429,4454,4478,4501,4522,4540,4556,4567,4574,4577,4575,4569,4559,4547,4532,
+4517,4502,4490,4480,4474,4472,4475,4482,4493,4507,4522,4537,4551,4561,4566,4566,4560,4547,4529,4505,4478,
+4448,4417,4386,4357,4330,4308,4289,4276,4266,4260,4258,4259,4262,4266,4272,4279,4286,4294,4303,4314,4326,
+4340,4357,4375,4396,4419,4443,4468,4493,4517,4541,4562,4580,4595,4607,4615,4620,4621,4618,4613,4606,4598,
+4588,4577,4566,4556,4546,4536,4528,4520,4514,4509,4505,4502,4501,4500,4499,4500,4501,4502,4503,4504,4504,
+4504,4503,4502,4499,4495,4489,4482,4474,4465,4453,4441,4427,4413,4398,4383,4369,4356,4345,4336,4330,4327,
+4327,4331,4337,4372,4372,4374,4380,4387,4394,4400,4405,4408,4407,4404,4398,4390,4381,4372,4364,4358,4354,
+4354,4356,4361,4367,4373,4377,4379,4377,4370,4359,4343,4323,4299,4275,4249,4225,4202,4182,4165,4150,4138,
+4127,4117,4106,4094,4081,4066,4049,4032,4014,3999,3986,3976,3972,3972,3977,3987,3999,4013,4025,4036,4041,
+4040,4031,4014,3986,3950,3906,3854,3796,3734,3670,3605,3541,3479,3420,3365,3313,3265,3221,3181,3143,3108,
+3075,3043,3013,2985,2957,2930,2905,2880,2856,2832,2809,2785,2762,2737,2712,2685,2657,2628,2597,2564,2531,
+2497,2463,2429,2396,2364,2334,2306,2279,2254,2231,2209,2188,2169,2150,2132,2114,2096,2078,2060,2042,2025,
+2007,1988,1970,1952,1933,1914,1895,1875,1855,1834,1814,1793,1771,1750,1728,1706,1683,1660,1636,1612,1587,
+1562,1536,1509,1482,1456,1429,1403,1377,1352,1328,1304,1281,1258,1235,1212,1189,1166,1142,1118,1094,1070,
+1047,1024,1002,981,962,944,928,913,898,885,872,858,845,831,816,800,784,768,751,733,716,
+698,681,663,646,629,611,593,575,557,539,520,501,482,464,446,429,413,397,383,369,355,
+342,328,314,298,282,265,247,228,210,193,178,165,157,152,153,158,167,181,198,216,235,
+252,267,277,282,280,272,256,235,208,176,142,105,68,32,-2,-34,-63,-90,-114,-136,-155,
+-173,-189,-205,-220,-234,-248,-262,-276,-289,-302,-314,-327,-339,-351,-362,-373,-384,-393,-402,-409,-416,
+-421,-424,-426,-428,-429,-430,-432,-435,-439,-445,-452,-460,-470,-480,-491,-502,-512,-521,-529,-536,-543,
+-548,-553,-558,-564,-570,-576,-583,-590,-598,-605,-612,-618,-622,-626,-630,-632,-634,-636,-639,-642,-646,
+-652,-658,-665,-672,-680,-687,-693,-699,-704,-708,-710,-713,-715,-716,-718,-720,-723,-725,-728,-730,-732,
+-734,-734,-734,-732,-730,-727,-723,-719,-715,-711,-708,-706,-704,-703,-702,-702,-703,-704,-705,-706,-708,
+-710,-712,-715,-718,-722,-726,-731,-736,-741,-745,-750,-755,-759,-763,-767,-771,-775,-780,-786,-792,-800,
+-808,-817,-827,-837,-848,-858,-867,-876,-883,-890,-896,-901,-905,-908,-912,-915,-918,-921,-925,-928,-931,
+-933,-934,-934,-932,-928,-924,-917,-910,-902,-895,-888,-883,-880,-879,-881,-884,-890,-898,-905,-913,-919,
+-922,-923,-920,-913,-903,-890,-873,-855,-836,-816,-797,-779,-762,-747,-733,-721,-709,-697,-685,-673,-661,
+-648,-635,-623,-611,-600,-591,-584,-579,-575,-573,-571,-571,-570,-569,-566,-563,-558,-552,-545,-537,-530,
+-523,-516,-511,-507,-505,-503,-501,-500,-498,-495,-490,-483,-475,-464,-451,-437,-422,-406,-390,-376,-362,
+-351,-341,-333,-327,-323,-320,-318,-317,-316,-315,-313,-310,-306,-301,-294,-287,-278,-269,-259,-250,-241,
+-233,-226,-220,-216,-213,-212,-211,-211,-212,-212,-212,-212,-210,-208,-204,-200,-194,-188,-182,-175,-168,
+-162,-157,-152,-149,-147,-145,-145,-146,-147,-148,-149,-150,-151,-150,-149,-146,-142,-136,-130,-122,-113,
+-104,-95,-85,-76,-67,-58,-50,-43,-36,-30,-24,-19,-13,-8,-3,1,5,10,15,19,23,
+27,31,34,36,39,41,42,44,45,47,49,51,54,57,62,67,72,79,86,93,100,
+107,114,120,124,127,129,129,127,123,118,113,106,100,94,89,86,84,84,87,91,97,
+104,112,120,128,135,141,145,147,147,145,142,137,132,127,121,116,112,110,109,109,110,
+113,116,120,124,129,133,138,142,146,149,151,153,154,154,154,152,150,148,145,143,141,
+141,141,144,148,153,160,168,176,184,191,196,200,203,203,202,200,198,195,194,194,196,
+200,206,214,223,233,242,250,256,260,262,260,257,251,244,236,227,219,212,206,202,199,
+197,196,196,196,197,196,196,194,192,190,186,183,180,176,173,171,169,168,167,167,168,
+169,170,172,174,176,178,180,182,183,184,184,184,184,184,183,182,182,182,183,184,186,
+189,192,196,200,205,210,215,221,226,232,238,243,249,254,260,265,270,274,277,280,283,
+284,285,284,283,281,277,273,267,260,251,241,230,217,204,189,174,158,143,128,113,99,
+86,73,61,49,37,24,11,-2,-17,-32,-48,-64,-79,-93,-106,-117,-127,-134,-140,-144,-147,
+-150,-154,-158,-164,-172,-182,-194,-208,-223,-240,-257,-276,-294,-312,-331,-349,-366,-384,-400,-416,-431,
+-444,-455,-463,-469,-471,-469,-464,-456,-445,-432,-418,-404,-392,-381,-374,-369,-368,-369,-374,-380,-387,
+-394,-401,-406,-409,-411,-411,-409,-407,-403,-399,-396,-393,-390,-389,-387,-386,-385,-384,-383,-383,-384,
+-386,-390,-397,-407,-420,-436,-456,-478,-502,-527,-552,-577,-600,-622,-641,-657,-671,-684,-694,-705,-714,
+-725,-735,-747,-759,-773,-786,-800,-814,-828,-840,-852,-864,-874,-883,-891,-898,-904,-909,-912,-914,-914,
+-912,-909,-903,-894,-885,-872,-858,-842,-823,-802,-779,-752,-722,-689,-653,-613,-572,-529,-487,-447,-411,
+-380,-356,-342,-337,-343,-359,-386,-421,-463,-512,-563,-617,-670,-722,-770,-816,-857,-894,-927,-956,-983,
+-1007,-1029,-1049,-1067,-1083,-1097,-1109,-1119,-1127,-1133,-1137,-1141,-1143,-1146,-1149,-1153,-1157,-1163,-1169,-1175,-1182,
+-1187,-1191,-1194,-1194,-1193,-1189,-1184,-1178,-1170,-1163,-1156,-1150,-1145,-1141,-1139,-1139,-1140,-1142,-1145,-1149,-1153,
+-1158,-1163,-1168,-1173,-1179,-1186,-1193,-1201,-1210,-1220,-1231,-1243,-1255,-1268,-1282,-1295,-1309,-1323,-1336,-1348,-1360,
+-1370,-1379,-1387,-1394,-1398,-1402,-1404,-1405,-1404,-1403,-1402,-1399,-1396,-1392,-1388,-1382,-1376,-1369,-1360,-1351,-1341,
+-1330,-1318,-1305,-1292,-1278,-1263,-1248,-1231,-1213,-1194,-1173,-1151,-1127,-1102,-1076,-1050,-1024,-999,-976,-954,-935,
+-918,-903,-890,-878,-867,-856,-845,-833,-819,-805,-789,-774,-758,-744,-730,-719,-709,-700,-693,-686,-679,
+-671,-662,-649,-634,-615,-593,-568,-541,-512,-483,-454,-425,-398,-373,-348,-325,-302,-279,-254,-229,-202,
+-173,-141,-107,-72,-36,0,38,75,111,148,184,220,257,295,334,376,419,464,509,554,597,
+637,671,698,716,725,724,714,696,671,642,612,584,562,548,544,553,575,610,658,716,782,
+854,929,1003,1075,1142,1203,1258,1306,1349,1387,1421,1452,1482,1511,1540,1569,1598,1625,1651,1675,1697,
+1716,1732,1745,1757,1769,1780,1791,1803,1817,1832,1848,1864,1880,1895,1907,1917,1923,1927,1926,1922,1916,
+1907,1897,1886,1875,1863,1850,1838,1824,1810,1794,1777,1760,1741,1723,1707,1692,1681,1675,1674,1679,1690,
+1707,1730,1757,1789,1823,1858,1894,1928,1961,1992,2020,2046,2070,2093,2115,2137,2159,2183,2208,2235,2264,
+2295,2329,2364,2402,2441,2482,2524,2568,2612,2656,2700,2744,2788,2830,2870,2909,2945,2979,3011,3040,3066,
+3090,3111,3131,3148,3165,3180,3194,3208,3221,3234,3247,3261,3276,3291,3307,3323,3341,3360,3379,3399,3420,
+3440,3459,3478,3496,3512,3527,3541,3553,3563,3573,3582,3590,3599,3609,3619,3631,3644,3658,3672,3688,3703,
+3719,3733,3747,3760,3771,3781,3790,3799,3808,3818,3829,3842,3857,3875,3896,3920,3945,3972,4001,4029,4057,
+4083,4107,4129,4149,4166,4181,4194,4206,4218,4230,4242,4255,4270,4287,4306,4327,4350,4374,4399,4424,4450,
+4474,4498,4518,4536,4551,4561,4567,4569,4566,4560,4552,4542,4531,4522,4516,4513,4516,4524,4538,4558,4583,
+4611,4641,4670,4697,4719,4736,4744,4745,4736,4720,4696,4666,4632,4595,4558,4523,4490,4462,4439,4421,4409,
+4401,4399,4399,4403,4409,4417,4425,4435,4445,4456,4469,4482,4497,4513,4531,4550,4571,4591,4612,4632,4651,
+4668,4682,4693,4701,4705,4705,4702,4697,4688,4678,4666,4654,4641,4628,4617,4606,4597,4589,4583,4578,4574,
+4572,4570,4569,4569,4569,4570,4570,4569,4568,4566,4564,4561,4558,4554,4550,4545,4541,4538,4534,4531,4528,
+4525,4521,4516,4510,4502,4493,4481,4467,4452,4437,4421,4406,4393,4383,4376,4372,4423,4415,4410,4408,4409,
+4412,4415,4418,4420,4419,4416,4411,4403,4394,4385,4377,4371,4368,4368,4372,4379,4387,4397,4405,4412,4414,
+4412,4404,4390,4371,4348,4322,4294,4266,4240,4216,4195,4178,4163,4151,4140,4130,4118,4105,4089,4071,4051,
+4029,4007,3986,3967,3951,3939,3931,3928,3928,3931,3935,3940,3942,3941,3935,3924,3906,3881,3849,3811,3767,
+3719,3667,3613,3558,3503,3449,3396,3345,3296,3249,3205,3163,3124,3087,3052,3019,2988,2959,2930,2903,2877,
+2851,2826,2800,2774,2747,2720,2691,2661,2629,2597,2564,2530,2496,2462,2429,2397,2366,2336,2308,2282,2257,
+2233,2210,2188,2167,2146,2125,2105,2085,2067,2049,2031,2015,2000,1985,1970,1955,1940,1924,1906,1888,1868,
+1846,1824,1800,1776,1751,1726,1701,1677,1654,1631,1608,1586,1564,1542,1520,1497,1474,1450,1427,1403,1378,
+1354,1330,1306,1282,1258,1233,1209,1184,1159,1134,1109,1084,1059,1036,1013,992,972,953,935,919,903,
+888,873,857,842,826,810,794,777,760,744,728,712,697,681,666,650,633,616,598,579,558,
+537,516,494,472,451,431,412,395,379,365,352,340,328,316,304,292,278,263,248,232,216,
+200,186,174,164,158,156,157,163,173,185,199,214,228,240,248,252,249,241,226,204,176,
+144,107,68,27,-12,-52,-89,-123,-153,-181,-205,-226,-244,-260,-274,-286,-297,-308,-317,-326,-334,
+-342,-349,-356,-362,-369,-376,-383,-390,-397,-403,-409,-415,-419,-423,-425,-427,-428,-428,-429,-430,-432,
+-435,-440,-447,-455,-465,-476,-487,-498,-508,-519,-528,-536,-543,-550,-557,-563,-570,-578,-586,-595,-605,
+-615,-624,-634,-643,-651,-659,-666,-672,-677,-683,-689,-695,-701,-707,-714,-720,-726,-731,-736,-739,-740,
+-741,-741,-740,-739,-738,-737,-737,-739,-740,-743,-747,-750,-754,-757,-760,-762,-763,-764,-763,-763,-762,
+-760,-759,-758,-758,-757,-757,-758,-758,-759,-760,-762,-763,-766,-769,-773,-778,-784,-790,-797,-803,-810,
+-817,-823,-828,-832,-836,-839,-842,-844,-847,-850,-853,-857,-862,-868,-874,-880,-887,-893,-899,-904,-909,
+-912,-915,-918,-919,-921,-923,-925,-927,-931,-935,-941,-947,-953,-961,-968,-975,-981,-986,-989,-991,-992,
+-991,-988,-985,-981,-977,-974,-971,-968,-967,-966,-965,-964,-962,-959,-954,-948,-939,-928,-916,-902,-888,
+-874,-860,-847,-837,-828,-821,-815,-811,-808,-805,-801,-797,-792,-786,-778,-770,-761,-752,-743,-734,-726,
+-718,-710,-703,-696,-688,-680,-670,-660,-650,-638,-627,-615,-604,-594,-585,-577,-571,-565,-560,-556,-552,
+-547,-541,-535,-527,-517,-507,-496,-483,-471,-458,-445,-433,-422,-411,-402,-393,-386,-380,-374,-370,-366,
+-363,-360,-357,-354,-351,-347,-343,-339,-334,-328,-322,-316,-309,-302,-295,-288,-281,-275,-269,-264,-259,
+-255,-251,-248,-245,-243,-240,-238,-236,-234,-231,-228,-224,-220,-216,-211,-205,-200,-194,-188,-183,-178,
+-174,-170,-167,-165,-163,-162,-160,-159,-156,-154,-150,-146,-141,-134,-128,-120,-112,-104,-95,-86,-76,
+-67,-57,-47,-36,-26,-16,-6,2,9,16,21,25,28,29,30,29,28,27,27,27,27,
+28,30,32,35,38,41,44,46,48,50,52,54,57,60,64,68,74,80,86,92,98,
+102,105,106,105,102,98,93,87,81,75,72,70,71,74,80,87,96,106,115,122,128,
+131,130,127,120,111,101,89,77,67,59,53,50,51,55,62,71,82,94,107,119,129,
+138,145,149,150,149,145,140,132,124,115,106,98,93,89,88,90,95,102,112,123,135,
+147,158,167,174,179,182,182,181,179,176,174,174,175,177,182,188,195,203,210,216,221,
+224,224,223,219,214,207,200,194,188,183,180,178,177,177,177,179,180,180,181,180,179,
+177,175,172,169,166,164,162,160,160,160,161,162,164,167,169,172,175,177,179,181,181,
+181,180,179,178,177,176,175,176,178,181,185,190,196,203,210,217,223,228,233,236,239,
+240,240,240,240,240,241,243,245,249,254,260,266,274,282,290,298,305,311,316,318,319,
+316,311,304,293,280,265,247,228,208,188,168,148,129,112,96,81,68,55,43,32,20,
+9,-2,-15,-27,-40,-53,-66,-78,-90,-102,-113,-124,-135,-147,-160,-175,-191,-209,-229,-251,-273,
+-297,-321,-344,-367,-389,-409,-429,-446,-462,-477,-490,-502,-512,-520,-526,-530,-531,-529,-524,-517,-506,
+-494,-480,-465,-451,-438,-427,-418,-413,-410,-411,-413,-418,-423,-429,-434,-438,-441,-441,-440,-438,-434,
+-429,-423,-417,-411,-404,-398,-391,-384,-378,-372,-367,-364,-363,-364,-369,-378,-391,-408,-429,-453,-480,
+-507,-535,-562,-588,-611,-631,-649,-665,-678,-690,-701,-712,-723,-735,-748,-761,-775,-789,-803,-817,-830,
+-841,-852,-863,-872,-882,-891,-901,-910,-919,-927,-934,-940,-943,-944,-942,-937,-930,-919,-906,-891,-874,
+-855,-833,-810,-783,-754,-721,-685,-645,-603,-558,-513,-469,-428,-393,-365,-347,-339,-344,-360,-387,-425,
+-471,-523,-579,-637,-694,-749,-800,-845,-885,-920,-950,-974,-995,-1013,-1028,-1041,-1052,-1062,-1071,-1079,-1086,
+-1093,-1099,-1105,-1112,-1120,-1129,-1139,-1151,-1164,-1178,-1192,-1207,-1220,-1233,-1244,-1253,-1259,-1264,-1268,-1269,-1271,
+-1272,-1273,-1274,-1276,-1279,-1283,-1286,-1289,-1292,-1294,-1296,-1296,-1296,-1295,-1294,-1294,-1294,-1296,-1300,-1306,-1313,
+-1322,-1333,-1346,-1360,-1374,-1388,-1403,-1418,-1432,-1445,-1458,-1469,-1480,-1489,-1497,-1504,-1509,-1513,-1516,-1517,-1517,
+-1516,-1513,-1511,-1507,-1502,-1497,-1491,-1484,-1476,-1467,-1457,-1446,-1434,-1421,-1407,-1394,-1380,-1365,-1350,-1335,-1318,
+-1301,-1282,-1261,-1239,-1215,-1189,-1163,-1137,-1111,-1087,-1065,-1046,-1030,-1016,-1005,-995,-986,-977,-968,-956,-943,
+-927,-909,-889,-869,-849,-830,-812,-798,-786,-777,-771,-766,-761,-756,-749,-740,-728,-713,-695,-674,-651,
+-628,-604,-581,-559,-538,-519,-501,-483,-465,-445,-423,-399,-371,-340,-306,-269,-231,-191,-152,-114,-77,
+-43,-11,17,45,72,99,127,157,190,226,266,308,351,395,438,477,512,540,561,574,578,
+575,567,554,541,530,524,526,538,560,595,641,697,762,833,907,982,1054,1121,1182,1235,1281,
+1321,1354,1383,1409,1433,1457,1482,1507,1534,1561,1589,1615,1640,1663,1683,1700,1715,1727,1738,1747,1755,
+1764,1772,1780,1789,1797,1805,1812,1818,1823,1827,1830,1833,1836,1840,1844,1850,1856,1863,1870,1875,1879,
+1879,1876,1868,1856,1839,1819,1797,1773,1751,1730,1714,1704,1700,1703,1714,1732,1756,1786,1819,1855,1891,
+1928,1963,1996,2028,2056,2083,2108,2132,2155,2180,2205,2233,2262,2295,2330,2368,2408,2451,2495,2541,2588,
+2635,2681,2727,2772,2815,2856,2895,2932,2967,2999,3030,3058,3085,3110,3134,3156,3177,3197,3215,3233,3250,
+3266,3281,3296,3311,3326,3340,3356,3372,3388,3405,3423,3441,3459,3477,3495,3512,3528,3542,3555,3566,3575,
+3583,3590,3596,3602,3608,3615,3622,3631,3642,3653,3667,3681,3696,3712,3727,3742,3755,3768,3779,3788,3796,
+3804,3811,3820,3829,3840,3853,3869,3888,3909,3933,3959,3987,4015,4043,4071,4098,4124,4148,4170,4192,4212,
+4232,4252,4271,4292,4313,4335,4358,4382,4407,4432,4457,4481,4505,4528,4548,4566,4581,4592,4599,4602,4601,
+4596,4588,4578,4567,4557,4548,4544,4544,4551,4564,4583,4609,4639,4672,4707,4741,4771,4795,4812,4821,4821,
+4812,4795,4771,4742,4709,4675,4643,4612,4586,4564,4547,4536,4530,4528,4530,4534,4542,4551,4561,4573,4585,
+4599,4614,4629,4646,4664,4683,4702,4721,4739,4756,4771,4783,4792,4798,4801,4800,4795,4788,4778,4766,4752,
+4738,4723,4709,4696,4684,4674,4665,4657,4652,4647,4644,4642,4641,4640,4640,4640,4640,4641,4641,4641,4640,
+4639,4637,4634,4631,4626,4621,4616,4610,4605,4600,4596,4593,4591,4589,4588,4586,4584,4580,4574,4565,4554,
+4540,4523,4505,4486,4468,4450,4435,4423,4503,4490,4478,4469,4463,4457,4453,4449,4445,4439,4432,4423,4413,
+4403,4392,4384,4378,4375,4376,4381,4389,4400,4413,4425,4436,4443,4446,4443,4434,4418,4398,4374,4347,4319,
+4291,4265,4242,4223,4206,4191,4179,4167,4155,4141,4126,4107,4086,4063,4039,4014,3990,3967,3946,3929,3915,
+3904,3895,3889,3883,3877,3869,3860,3847,3831,3810,3785,3755,3722,3685,3645,3602,3557,3511,3464,3416,3369,
+3322,3276,3231,3187,3145,3105,3066,3029,2994,2961,2929,2897,2867,2837,2808,2778,2748,2717,2685,2653,2619,
+2586,2552,2518,2484,2452,2420,2391,2362,2336,2311,2287,2264,2242,2220,2198,2175,2151,2127,2102,2078,2055,
+2032,2011,1993,1976,1961,1948,1935,1924,1912,1899,1884,1867,1848,1826,1802,1776,1748,1720,1693,1665,1639,
+1614,1591,1569,1548,1528,1509,1490,1471,1451,1431,1410,1389,1368,1346,1324,1301,1278,1254,1230,1205,1179,
+1153,1126,1100,1074,1048,1023,1000,977,957,937,919,902,885,868,851,834,817,799,782,765,748,
+732,717,703,689,677,664,651,638,622,605,587,566,543,519,494,470,446,423,402,383,367,
+353,340,329,319,309,299,288,276,263,249,235,220,205,192,180,170,163,159,157,159,163,
+168,175,182,188,192,194,192,185,174,158,137,111,81,48,12,-24,-60,-96,-131,-163,-192,
+-217,-240,-260,-278,-293,-306,-318,-329,-338,-347,-355,-362,-369,-374,-379,-383,-387,-390,-394,-397,-401,
+-406,-410,-415,-419,-424,-427,-431,-433,-435,-437,-439,-441,-443,-446,-451,-456,-463,-471,-479,-489,-498,
+-508,-517,-526,-534,-542,-550,-558,-567,-576,-585,-596,-606,-617,-629,-640,-650,-661,-670,-679,-687,-695,
+-703,-711,-719,-728,-736,-745,-754,-762,-770,-776,-781,-784,-786,-787,-787,-786,-784,-783,-783,-783,-784,
+-786,-789,-793,-797,-801,-806,-809,-813,-816,-818,-821,-822,-824,-826,-827,-829,-831,-832,-833,-834,-835,
+-835,-836,-837,-839,-842,-845,-850,-856,-864,-872,-880,-889,-897,-904,-911,-916,-920,-923,-924,-925,-925,
+-924,-924,-923,-923,-923,-924,-924,-925,-926,-926,-927,-927,-927,-927,-927,-927,-928,-929,-932,-935,-939,
+-945,-953,-961,-971,-983,-995,-1009,-1022,-1036,-1048,-1060,-1069,-1076,-1080,-1082,-1080,-1075,-1068,-1059,-1048,-1036,
+-1024,-1013,-1002,-992,-983,-975,-968,-961,-955,-948,-942,-936,-929,-923,-918,-913,-908,-905,-902,-901,-899,
+-898,-897,-895,-893,-889,-884,-878,-871,-864,-856,-847,-838,-829,-820,-811,-801,-790,-779,-767,-754,-740,
+-726,-711,-696,-682,-668,-656,-644,-634,-625,-616,-609,-602,-595,-588,-581,-574,-566,-558,-549,-541,-532,
+-523,-515,-506,-498,-490,-481,-473,-465,-456,-448,-440,-431,-423,-416,-409,-402,-396,-390,-385,-380,-376,
+-372,-368,-364,-359,-355,-351,-346,-341,-336,-330,-324,-317,-311,-304,-297,-291,-285,-280,-275,-272,-270,
+-268,-267,-266,-265,-264,-262,-259,-255,-250,-243,-235,-227,-218,-209,-201,-194,-187,-181,-177,-173,-171,
+-168,-166,-164,-161,-158,-155,-151,-146,-141,-135,-128,-120,-112,-102,-92,-80,-68,-56,-44,-32,-22,
+-13,-6,-1,1,2,1,0,-3,-5,-7,-8,-7,-4,0,5,11,18,24,29,33,35,
+36,34,32,29,26,24,24,25,29,36,44,54,65,76,86,94,100,103,103,100,96,
+89,83,77,72,70,70,74,80,89,98,108,118,125,130,131,129,123,114,103,90,76,
+64,54,46,42,42,45,51,60,71,83,95,106,116,124,129,132,133,130,126,119,112,
+103,94,85,77,71,66,65,66,70,76,85,96,107,119,131,142,150,157,162,165,166,
+166,165,164,163,164,165,167,171,175,179,183,187,189,190,189,188,185,181,177,173,169,
+165,162,160,158,157,156,155,155,155,154,153,153,152,152,152,152,152,153,154,155,157,
+158,160,161,163,165,166,168,169,171,171,172,172,171,170,169,168,166,165,164,164,165,
+167,170,175,180,186,193,200,206,212,216,219,221,221,221,219,217,215,213,211,211,212,
+215,220,226,234,243,254,266,279,291,303,314,323,330,334,334,332,325,315,301,284,265,
+244,221,198,176,154,134,116,100,86,73,63,53,44,36,28,19,10,0,-9,-20,-32,
+-45,-58,-73,-88,-106,-124,-145,-168,-192,-219,-247,-276,-307,-337,-367,-396,-423,-448,-470,-490,-507,
+-522,-534,-543,-551,-558,-562,-565,-567,-566,-564,-559,-553,-545,-535,-523,-511,-499,-488,-478,-469,-463,
+-459,-458,-458,-461,-464,-468,-471,-474,-476,-477,-475,-473,-468,-462,-455,-447,-437,-428,-417,-406,-396,
+-386,-378,-371,-367,-367,-370,-377,-388,-404,-424,-447,-473,-500,-527,-553,-578,-601,-621,-638,-653,-667,
+-679,-691,-703,-716,-731,-746,-762,-778,-795,-810,-825,-838,-849,-860,-868,-877,-885,-893,-902,-912,-923,
+-934,-944,-954,-962,-967,-970,-969,-965,-957,-947,-934,-920,-903,-886,-867,-846,-822,-795,-765,-731,-692,
+-650,-605,-558,-511,-466,-427,-395,-372,-360,-360,-373,-397,-433,-477,-528,-584,-641,-697,-751,-800,-843,
+-880,-911,-936,-955,-971,-982,-991,-998,-1003,-1009,-1013,-1019,-1024,-1031,-1039,-1049,-1061,-1076,-1092,-1110,-1129,
+-1150,-1171,-1192,-1211,-1230,-1246,-1259,-1271,-1281,-1290,-1298,-1306,-1314,-1324,-1335,-1347,-1360,-1374,-1386,-1398,-1407,
+-1414,-1417,-1418,-1416,-1412,-1407,-1402,-1398,-1396,-1395,-1398,-1404,-1413,-1425,-1438,-1453,-1469,-1485,-1501,-1515,-1529,
+-1541,-1553,-1563,-1572,-1580,-1588,-1594,-1599,-1603,-1606,-1608,-1609,-1609,-1607,-1605,-1602,-1597,-1592,-1586,-1578,-1569,
+-1559,-1548,-1535,-1522,-1507,-1492,-1477,-1462,-1446,-1432,-1417,-1402,-1387,-1371,-1354,-1335,-1314,-1291,-1266,-1241,-1215,
+-1190,-1166,-1145,-1126,-1111,-1099,-1090,-1083,-1076,-1070,-1062,-1052,-1040,-1025,-1007,-987,-967,-946,-927,-911,-897,
+-886,-879,-874,-870,-868,-864,-860,-853,-844,-832,-818,-802,-785,-769,-753,-740,-728,-717,-708,-700,-691,
+-681,-668,-652,-632,-608,-580,-547,-512,-475,-437,-399,-363,-328,-296,-268,-242,-218,-197,-176,-155,-134,
+-110,-84,-55,-22,13,52,92,134,175,214,250,283,310,333,352,367,381,395,410,430,456,
+489,531,581,639,704,774,846,919,989,1055,1115,1168,1214,1253,1286,1314,1338,1361,1384,1407,1432,
+1458,1486,1515,1543,1571,1596,1619,1639,1655,1668,1678,1684,1688,1691,1692,1693,1693,1694,1694,1695,1697,
+1700,1704,1711,1720,1731,1745,1763,1783,1805,1829,1853,1876,1896,1911,1922,1925,1922,1912,1895,1873,1847,
+1819,1791,1765,1743,1727,1718,1718,1726,1742,1765,1795,1829,1867,1907,1947,1986,2023,2058,2091,2121,2150,
+2177,2204,2231,2260,2291,2324,2360,2399,2441,2484,2530,2576,2623,2669,2715,2759,2801,2841,2879,2916,2950,
+2982,3013,3043,3072,3100,3127,3153,3179,3203,3227,3249,3269,3288,3306,3322,3338,3352,3366,3380,3394,3408,
+3423,3439,3455,3471,3488,3505,3521,3537,3552,3566,3578,3589,3599,3608,3615,3622,3628,3634,3641,3647,3655,
+3664,3674,3685,3698,3711,3725,3739,3752,3766,3778,3790,3801,3810,3819,3828,3837,3847,3858,3872,3888,3907,
+3928,3952,3979,4008,4038,4069,4100,4131,4161,4190,4219,4247,4274,4301,4327,4353,4379,4405,4430,4455,4480,
+4504,4526,4548,4568,4586,4603,4617,4628,4637,4643,4646,4645,4641,4634,4625,4614,4603,4592,4584,4579,4579,
+4584,4595,4613,4635,4661,4690,4720,4748,4772,4791,4804,4809,4807,4797,4781,4761,4738,4714,4690,4669,4652,
+4639,4631,4627,4628,4632,4640,4650,4662,4675,4689,4704,4720,4736,4753,4770,4788,4806,4824,4841,4857,4870,
+4882,4890,4895,4896,4894,4888,4879,4868,4855,4840,4825,4810,4795,4782,4769,4758,4749,4741,4735,4729,4725,
+4721,4718,4715,4711,4708,4704,4701,4698,4695,4693,4692,4691,4691,4691,4691,4691,4691,4689,4687,4683,4678,
+4673,4667,4661,4655,4650,4646,4642,4639,4637,4634,4631,4626,4619,4610,4598,4585,4569,4553,4535,4519,4503,
+4598,4583,4567,4552,4538,4525,4512,4499,4487,4474,4461,4448,4435,4423,4412,4403,4397,4395,4397,4404,4413,
+4426,4441,4455,4468,4479,4485,4485,4480,4469,4452,4430,4405,4378,4350,4323,4298,4275,4255,4238,4222,4208,
+4194,4179,4163,4145,4125,4104,4081,4057,4032,4008,3985,3963,3943,3925,3908,3892,3876,3861,3845,3829,3810,
+3790,3768,3744,3717,3688,3656,3621,3585,3546,3505,3463,3419,3375,3329,3284,3238,3193,3149,3105,3063,3022,
+2982,2943,2905,2867,2831,2795,2760,2725,2690,2655,2621,2587,2553,2519,2487,2455,2425,2396,2369,2344,2321,
+2300,2280,2260,2241,2222,2201,2179,2156,2131,2104,2077,2050,2023,1997,1974,1953,1936,1921,1908,1897,1887,
+1876,1865,1851,1835,1817,1795,1770,1744,1716,1688,1660,1632,1607,1582,1560,1539,1519,1500,1482,1463,1445,
+1426,1406,1387,1367,1346,1326,1305,1284,1263,1241,1219,1195,1170,1145,1118,1091,1064,1038,1011,987,963,
+941,921,901,883,865,847,829,811,793,775,757,739,723,708,694,682,671,661,650,640,627,
+613,596,577,555,531,505,479,454,429,406,386,369,354,342,331,322,312,302,291,278,264,
+249,234,218,203,189,178,169,163,159,158,159,160,163,165,165,164,161,154,144,131,114,
+95,72,46,19,-10,-40,-70,-100,-130,-157,-183,-207,-228,-247,-264,-279,-292,-304,-314,-324,-334,
+-342,-351,-359,-366,-372,-377,-382,-386,-389,-392,-394,-397,-400,-403,-407,-411,-416,-421,-427,-432,-437,
+-442,-447,-451,-455,-459,-463,-467,-472,-477,-483,-490,-497,-504,-512,-521,-529,-538,-547,-557,-567,-578,
+-589,-601,-613,-625,-637,-648,-659,-670,-679,-688,-696,-704,-712,-720,-728,-737,-746,-756,-765,-775,-785,
+-793,-801,-807,-813,-817,-820,-822,-824,-826,-828,-830,-833,-837,-841,-845,-850,-855,-860,-864,-868,-871,
+-875,-878,-881,-884,-888,-892,-895,-899,-903,-907,-910,-912,-914,-915,-916,-917,-919,-921,-924,-928,-933,
+-940,-947,-954,-962,-969,-975,-981,-985,-987,-989,-989,-988,-986,-984,-982,-979,-975,-972,-968,-964,-960,
+-956,-952,-949,-946,-944,-943,-944,-946,-949,-955,-961,-969,-979,-989,-1000,-1011,-1023,-1036,-1049,-1062,-1075,
+-1088,-1100,-1111,-1120,-1127,-1130,-1130,-1126,-1119,-1108,-1095,-1080,-1064,-1049,-1034,-1021,-1011,-1003,-998,-995,-994,
+-995,-997,-999,-1000,-1000,-1000,-998,-996,-992,-987,-982,-977,-971,-965,-959,-952,-946,-938,-931,-923,-915,
+-907,-898,-890,-881,-872,-863,-854,-844,-833,-822,-810,-796,-782,-768,-753,-739,-725,-712,-700,-688,-678,
+-669,-660,-652,-644,-637,-630,-623,-616,-609,-602,-596,-590,-584,-578,-572,-566,-560,-554,-546,-538,-530,
+-521,-511,-501,-492,-482,-473,-464,-455,-447,-440,-433,-426,-420,-414,-409,-404,-400,-397,-393,-390,-388,
+-385,-382,-378,-373,-368,-361,-354,-346,-337,-329,-321,-314,-308,-304,-301,-299,-298,-297,-296,-294,-292,
+-287,-282,-274,-266,-256,-246,-235,-225,-216,-207,-199,-193,-187,-182,-178,-174,-170,-166,-163,-160,-157,
+-153,-150,-147,-143,-138,-132,-125,-117,-107,-97,-87,-77,-67,-59,-52,-47,-45,-45,-46,-48,-50,
+-52,-52,-50,-45,-38,-28,-16,-4,8,20,30,37,41,42,40,36,30,23,17,12,10,
+11,14,21,31,42,55,67,78,87,94,98,99,98,94,90,86,84,83,85,89,97,
+107,119,132,145,157,167,174,179,180,178,173,167,160,152,144,138,132,128,126,124,123,
+122,121,120,118,116,113,110,107,104,100,97,94,91,88,85,82,80,77,76,75,75,
+77,80,85,91,99,107,115,123,131,138,144,148,151,154,155,156,157,158,159,160,161,
+162,162,163,163,163,162,160,159,157,155,153,151,150,148,146,144,142,140,137,134,131,
+128,126,124,123,124,125,127,130,134,138,141,145,147,149,150,150,149,148,147,146,145,
+144,143,143,143,143,143,143,144,144,145,146,148,150,153,156,160,164,168,172,176,180,
+183,185,187,187,188,188,187,187,186,185,185,185,186,187,190,194,199,206,215,225,237,
+249,263,276,288,299,307,313,315,314,308,298,285,268,249,227,205,183,161,141,122,106,
+91,80,70,62,55,49,43,37,31,24,15,6,-4,-17,-31,-47,-66,-86,-108,-133,-160,
+-189,-220,-252,-286,-320,-353,-386,-416,-445,-470,-492,-510,-525,-537,-545,-552,-557,-561,-565,-568,-571,
+-573,-575,-577,-578,-577,-576,-572,-568,-562,-556,-549,-542,-536,-531,-528,-526,-526,-526,-528,-530,-532,
+-534,-534,-533,-530,-526,-519,-510,-499,-487,-473,-459,-444,-430,-417,-405,-397,-392,-390,-393,-401,-413,
+-430,-449,-472,-497,-522,-546,-570,-592,-612,-629,-645,-659,-672,-685,-698,-713,-728,-745,-763,-782,-800,
+-818,-834,-848,-861,-871,-880,-888,-895,-902,-911,-919,-930,-940,-952,-963,-973,-981,-986,-989,-988,-984,
+-977,-968,-957,-945,-932,-917,-901,-884,-863,-840,-811,-779,-741,-699,-653,-606,-558,-512,-471,-438,-414,
+-401,-400,-411,-434,-467,-509,-556,-607,-659,-710,-757,-800,-837,-868,-893,-913,-927,-938,-945,-950,-953,
+-956,-958,-961,-965,-971,-978,-989,-1001,-1017,-1035,-1055,-1077,-1101,-1125,-1148,-1170,-1189,-1206,-1220,-1232,-1241,
+-1250,-1258,-1267,-1278,-1291,-1307,-1326,-1348,-1371,-1395,-1418,-1439,-1457,-1471,-1480,-1486,-1488,-1486,-1483,-1480,-1477,
+-1476,-1478,-1483,-1491,-1501,-1514,-1529,-1544,-1559,-1572,-1585,-1596,-1606,-1614,-1621,-1628,-1634,-1640,-1645,-1651,-1656,
+-1660,-1664,-1666,-1668,-1669,-1668,-1666,-1664,-1660,-1655,-1650,-1643,-1636,-1626,-1616,-1603,-1590,-1575,-1560,-1544,-1528,
+-1512,-1497,-1482,-1467,-1453,-1437,-1421,-1403,-1383,-1360,-1336,-1311,-1285,-1260,-1236,-1215,-1197,-1182,-1171,-1163,-1157,
+-1153,-1148,-1142,-1134,-1123,-1110,-1093,-1075,-1056,-1036,-1018,-1003,-990,-980,-974,-969,-966,-964,-962,-958,-953,
+-946,-937,-927,-917,-908,-899,-893,-888,-885,-884,-883,-881,-878,-873,-864,-852,-836,-816,-792,-766,-737,
+-708,-678,-648,-619,-592,-565,-540,-515,-492,-470,-448,-427,-406,-385,-364,-342,-319,-294,-268,-238,-207,
+-173,-137,-100,-61,-22,16,55,92,130,167,205,245,287,333,384,440,501,567,636,708,780,
+852,921,986,1045,1099,1146,1187,1223,1255,1284,1311,1337,1363,1390,1417,1444,1472,1498,1524,1547,1568,
+1586,1601,1612,1620,1626,1629,1630,1630,1630,1629,1629,1630,1633,1638,1645,1656,1670,1688,1709,1735,1763,
+1794,1826,1859,1890,1919,1943,1962,1974,1978,1975,1963,1945,1921,1892,1861,1830,1802,1777,1758,1747,1745,
+1751,1767,1790,1821,1856,1896,1938,1981,2022,2062,2099,2133,2165,2195,2223,2250,2278,2308,2339,2373,2410,
+2449,2491,2535,2580,2625,2670,2715,2758,2799,2839,2877,2914,2949,2983,3016,3048,3080,3111,3142,3172,3201,
+3228,3253,3277,3298,3318,3335,3351,3366,3379,3393,3406,3419,3433,3448,3464,3480,3497,3514,3531,3547,3564,
+3579,3594,3608,3620,3632,3643,3654,3663,3672,3681,3689,3696,3704,3711,3719,3726,3734,3743,3752,3762,3773,
+3785,3797,3810,3823,3837,3852,3868,3886,3904,3925,3947,3971,3997,4024,4053,4084,4115,4146,4176,4206,4235,
+4263,4290,4316,4341,4367,4392,4418,4445,4471,4498,4524,4549,4573,4595,4615,4632,4646,4658,4667,4674,4678,
+4680,4680,4679,4675,4670,4664,4657,4649,4642,4635,4630,4627,4628,4633,4643,4656,4673,4692,4713,4734,4753,
+4769,4781,4788,4790,4786,4778,4767,4754,4740,4727,4716,4708,4704,4705,4709,4716,4727,4740,4755,4771,4787,
+4805,4822,4841,4859,4878,4897,4915,4933,4949,4964,4975,4983,4987,4987,4982,4974,4963,4948,4932,4915,4897,
+4879,4863,4848,4836,4825,4816,4809,4803,4799,4796,4793,4791,4788,4785,4781,4776,4770,4764,4757,4750,4743,
+4737,4732,4728,4726,4726,4726,4728,4731,4733,4735,4735,4735,4732,4727,4721,4714,4706,4698,4691,4685,4680,
+4676,4674,4673,4672,4670,4668,4664,4658,4650,4640,4627,4613,4598,4672,4656,4640,4622,4605,4588,4571,4555,
+4540,4525,4512,4499,4487,4477,4468,4461,4457,4456,4458,4463,4471,4481,4492,4504,4514,4522,4526,4525,4520,
+4509,4493,4472,4448,4422,4395,4368,4342,4318,4296,4276,4258,4242,4226,4211,4195,4178,4160,4141,4120,4098,
+4075,4053,4030,4007,3985,3963,3942,3921,3899,3878,3857,3834,3811,3787,3762,3735,3706,3675,3642,3606,3568,
+3528,3486,3442,3396,3349,3302,3255,3208,3162,3116,3071,3027,2984,2941,2899,2858,2816,2776,2735,2696,2658,
+2621,2585,2550,2517,2486,2456,2427,2400,2375,2351,2328,2307,2288,2269,2251,2233,2216,2197,2177,2155,2132,
+2107,2081,2053,2025,1998,1973,1949,1928,1909,1893,1879,1867,1855,1843,1830,1815,1797,1777,1754,1730,1704,
+1678,1652,1627,1603,1581,1561,1542,1524,1506,1489,1470,1451,1431,1410,1388,1366,1344,1322,1300,1279,1259,
+1238,1218,1197,1175,1152,1128,1103,1077,1051,1024,999,974,950,927,907,887,868,850,832,813,795,
+776,758,739,722,705,690,677,665,654,644,635,624,612,599,582,563,541,518,493,468,443,
+420,398,380,364,351,339,328,318,306,294,279,263,246,228,210,193,179,168,161,157,157,
+159,164,169,174,177,177,173,165,153,137,116,93,67,40,12,-16,-44,-72,-98,-124,-148,
+-170,-191,-210,-228,-244,-258,-271,-282,-293,-302,-310,-319,-326,-334,-341,-348,-354,-360,-366,-371,-375,
+-379,-383,-386,-389,-392,-396,-400,-406,-412,-419,-427,-435,-443,-451,-459,-466,-473,-479,-485,-490,-495,
+-499,-504,-509,-515,-521,-528,-536,-544,-554,-564,-575,-587,-599,-612,-625,-638,-650,-662,-674,-684,-694,
+-704,-712,-721,-729,-736,-744,-752,-761,-769,-777,-785,-793,-800,-806,-811,-816,-820,-824,-827,-830,-834,
+-838,-843,-848,-855,-862,-869,-877,-885,-892,-899,-906,-911,-916,-921,-926,-930,-935,-940,-946,-952,-958,
+-964,-970,-976,-980,-985,-988,-990,-992,-994,-996,-998,-1000,-1002,-1005,-1009,-1013,-1016,-1020,-1022,-1025,-1026,
+-1026,-1025,-1023,-1021,-1018,-1014,-1010,-1005,-1000,-994,-988,-982,-976,-970,-965,-961,-959,-959,-961,-966,-974,
+-985,-997,-1011,-1026,-1041,-1055,-1069,-1081,-1092,-1101,-1109,-1116,-1122,-1127,-1130,-1133,-1134,-1134,-1132,-1127,-1120,
+-1111,-1100,-1088,-1075,-1063,-1052,-1044,-1038,-1035,-1036,-1039,-1045,-1052,-1060,-1067,-1073,-1077,-1078,-1076,-1071,-1064,
+-1055,-1045,-1034,-1022,-1011,-999,-989,-978,-969,-960,-951,-943,-934,-926,-918,-910,-901,-893,-884,-875,-865,
+-855,-844,-833,-821,-809,-798,-786,-775,-764,-754,-744,-736,-728,-720,-713,-705,-698,-691,-684,-677,-670,
+-664,-657,-651,-645,-639,-633,-627,-620,-613,-605,-596,-587,-578,-568,-558,-549,-540,-533,-526,-519,-513,
+-507,-502,-495,-489,-482,-475,-467,-460,-453,-447,-442,-438,-435,-433,-432,-430,-429,-426,-421,-415,-407,
+-398,-388,-378,-368,-358,-349,-342,-336,-331,-327,-324,-322,-318,-314,-310,-303,-296,-288,-279,-270,-261,
+-252,-243,-234,-226,-219,-211,-204,-197,-190,-183,-177,-172,-168,-164,-162,-160,-158,-157,-155,-152,-148,
+-142,-135,-127,-118,-109,-101,-94,-89,-85,-83,-83,-83,-83,-82,-80,-75,-67,-56,-43,-28,-12,
+4,19,32,42,48,51,50,47,41,34,27,21,17,16,17,21,27,35,45,55,64,
+72,79,84,88,90,91,92,94,96,101,108,117,129,144,160,177,195,213,230,245,258,
+269,278,284,288,290,289,287,282,276,267,255,242,226,208,189,169,149,131,114,99,88,
+80,75,73,74,76,80,84,88,91,93,94,94,93,92,91,92,92,95,98,102,107,
+112,118,124,130,135,139,143,147,150,152,153,153,153,152,150,148,145,143,140,138,137,
+136,136,136,137,138,139,139,138,136,133,130,126,121,117,114,112,112,113,116,119,124,
+128,132,136,138,139,138,137,134,131,127,124,121,119,117,117,117,118,120,122,125,128,
+131,135,138,142,145,148,150,152,153,154,153,152,150,148,146,144,142,141,141,141,141,
+142,143,144,145,146,146,147,148,150,154,159,166,174,185,198,211,225,239,251,260,267,
+270,269,263,254,241,225,206,186,166,146,127,110,95,82,72,63,57,52,48,45,41,
+36,31,24,15,3,-9,-25,-43,-64,-86,-111,-139,-167,-198,-230,-263,-297,-330,-363,-394,-423,
+-450,-473,-492,-507,-519,-528,-534,-537,-540,-543,-546,-550,-556,-563,-572,-583,-593,-603,-613,-621,-626,
+-629,-630,-629,-626,-622,-618,-614,-611,-610,-609,-610,-612,-615,-617,-618,-618,-616,-611,-603,-592,-579,
+-562,-544,-525,-505,-485,-467,-451,-439,-430,-426,-427,-432,-443,-457,-475,-496,-518,-542,-565,-587,-608,
+-627,-644,-660,-674,-688,-702,-716,-731,-746,-762,-779,-796,-813,-828,-843,-855,-867,-877,-886,-894,-903,
+-911,-921,-931,-942,-954,-965,-975,-984,-991,-996,-997,-996,-993,-988,-981,-973,-964,-954,-944,-931,-917,
+-898,-876,-849,-817,-780,-738,-693,-647,-601,-559,-523,-494,-476,-468,-471,-486,-510,-543,-582,-625,-669,
+-713,-755,-792,-825,-852,-874,-891,-904,-913,-919,-923,-926,-927,-928,-930,-931,-934,-939,-946,-955,-966,
+-981,-998,-1018,-1039,-1061,-1083,-1105,-1124,-1141,-1155,-1166,-1175,-1183,-1190,-1197,-1206,-1218,-1234,-1254,-1279,-1306,
+-1336,-1367,-1398,-1427,-1453,-1475,-1493,-1506,-1516,-1522,-1527,-1531,-1535,-1540,-1547,-1557,-1568,-1580,-1594,-1607,-1619,
+-1630,-1640,-1648,-1654,-1658,-1662,-1666,-1670,-1674,-1679,-1685,-1691,-1696,-1702,-1706,-1708,-1710,-1710,-1709,-1708,-1706,
+-1704,-1702,-1699,-1697,-1694,-1690,-1685,-1678,-1669,-1658,-1646,-1632,-1618,-1603,-1588,-1572,-1557,-1541,-1524,-1506,-1487,
+-1465,-1441,-1416,-1389,-1362,-1335,-1311,-1289,-1270,-1256,-1245,-1238,-1233,-1230,-1226,-1221,-1213,-1202,-1187,-1170,-1149,
+-1127,-1106,-1085,-1066,-1050,-1037,-1027,-1019,-1014,-1010,-1006,-1002,-997,-992,-986,-981,-977,-974,-973,-973,-974,
+-976,-978,-979,-977,-973,-966,-955,-940,-924,-905,-886,-868,-850,-834,-818,-804,-790,-776,-760,-742,-721,
+-698,-672,-645,-617,-589,-562,-538,-516,-496,-479,-462,-445,-427,-406,-381,-352,-317,-277,-233,-185,-135,
+-82,-29,24,77,131,186,241,299,358,421,486,554,624,696,768,838,907,971,1032,1087,1137,
+1181,1220,1255,1285,1313,1339,1363,1386,1408,1430,1451,1471,1491,1509,1526,1541,1554,1565,1574,1580,1586,
+1590,1594,1598,1604,1611,1621,1633,1650,1670,1694,1722,1753,1787,1823,1860,1897,1933,1968,1998,2024,2044,
+2057,2062,2059,2048,2030,2005,1975,1941,1906,1872,1841,1815,1797,1787,1786,1795,1813,1839,1872,1910,1952,
+1994,2036,2077,2115,2150,2183,2213,2242,2270,2299,2329,2361,2396,2434,2474,2516,2560,2605,2651,2696,2740,
+2783,2825,2865,2905,2943,2981,3018,3054,3090,3124,3158,3190,3221,3249,3276,3299,3320,3339,3356,3371,3385,
+3398,3411,3425,3439,3454,3470,3487,3504,3521,3539,3556,3573,3589,3604,3619,3633,3647,3661,3674,3688,3701,
+3714,3726,3737,3747,3756,3764,3771,3776,3782,3787,3793,3800,3809,3820,3833,3849,3868,3890,3914,3941,3970,
+4002,4035,4069,4104,4139,4174,4208,4241,4272,4300,4325,4348,4368,4386,4402,4417,4433,4450,4469,4489,4512,
+4537,4563,4590,4617,4642,4665,4685,4700,4711,4718,4721,4721,4718,4714,4709,4703,4698,4694,4690,4688,4687,
+4686,4687,4689,4693,4699,4706,4715,4727,4739,4753,4767,4781,4793,4804,4812,4817,4820,4821,4819,4817,4814,
+4811,4810,4811,4813,4818,4825,4833,4843,4854,4865,4877,4890,4904,4919,4935,4952,4970,4989,5009,5027,5044,
+5057,5067,5072,5071,5066,5054,5039,5019,4997,4974,4950,4928,4907,4890,4875,4863,4854,4848,4844,4841,4839,
+4838,4837,4836,4835,4833,4830,4827,4822,4817,4811,4805,4798,4791,4784,4778,4773,4770,4767,4767,4768,4769,
+4772,4774,4776,4776,4775,4773,4769,4763,4756,4748,4741,4734,4728,4724,4721,4720,4720,4720,4720,4720,4717,
+4713,4707,4697,4686,4672,4711,4697,4683,4669,4655,4641,4629,4617,4607,4598,4590,4583,4577,4571,4566,4562,
+4558,4555,4553,4553,4553,4554,4556,4557,4558,4557,4553,4547,4536,4523,4505,4485,4462,4438,4413,4388,4364,
+4342,4321,4303,4286,4271,4256,4241,4226,4211,4194,4176,4156,4136,4115,4092,4070,4047,4024,4001,3978,3954,
+3931,3907,3882,3857,3831,3803,3774,3743,3709,3673,3634,3591,3546,3498,3447,3396,3343,3290,3239,3189,3141,
+3095,3052,3010,2969,2929,2890,2850,2810,2769,2728,2687,2647,2609,2572,2537,2504,2474,2445,2419,2395,2372,
+2350,2329,2309,2289,2270,2250,2231,2212,2193,2173,2152,2131,2108,2084,2059,2034,2008,1983,1960,1937,1917,
+1898,1881,1864,1849,1833,1816,1798,1777,1755,1732,1707,1682,1657,1634,1612,1591,1573,1558,1543,1530,1517,
+1503,1488,1471,1452,1431,1408,1384,1359,1334,1309,1284,1261,1238,1216,1194,1173,1151,1128,1105,1081,1056,
+1031,1005,980,956,933,911,891,871,853,835,817,799,780,762,743,724,706,689,672,658,645,
+633,621,611,599,587,573,557,538,518,495,472,448,425,403,383,365,349,335,322,310,296,
+282,266,249,229,210,191,173,159,148,142,140,144,151,161,172,183,191,195,193,186,173,
+153,129,100,69,36,3,-29,-59,-88,-114,-138,-159,-179,-198,-215,-231,-246,-259,-272,-283,-294,
+-303,-310,-317,-323,-329,-334,-340,-345,-351,-356,-362,-368,-373,-378,-383,-388,-392,-397,-402,-408,-414,
+-422,-430,-440,-450,-461,-472,-483,-493,-502,-510,-517,-523,-529,-533,-537,-541,-546,-551,-557,-565,-573,
+-583,-594,-606,-618,-630,-643,-655,-667,-679,-690,-700,-710,-720,-730,-739,-749,-758,-768,-777,-786,-794,
+-801,-807,-812,-815,-818,-819,-819,-819,-818,-818,-818,-818,-820,-824,-829,-836,-844,-854,-865,-876,-888,
+-900,-911,-922,-933,-942,-950,-958,-965,-973,-980,-987,-994,-1002,-1009,-1017,-1025,-1032,-1038,-1044,-1048,-1052,
+-1054,-1056,-1056,-1056,-1056,-1055,-1055,-1054,-1053,-1052,-1050,-1048,-1045,-1042,-1038,-1033,-1028,-1022,-1015,-1009,-1002,
+-996,-989,-983,-978,-974,-970,-969,-970,-973,-980,-989,-1002,-1017,-1035,-1054,-1074,-1094,-1112,-1128,-1141,-1151,
+-1157,-1160,-1160,-1157,-1153,-1148,-1141,-1135,-1128,-1121,-1114,-1107,-1100,-1092,-1085,-1079,-1074,-1071,-1070,-1071,-1075,
+-1082,-1091,-1101,-1112,-1122,-1130,-1136,-1139,-1137,-1132,-1123,-1111,-1096,-1081,-1064,-1049,-1034,-1021,-1010,-1000,-993,
+-986,-980,-975,-970,-965,-959,-952,-945,-937,-928,-918,-908,-897,-886,-875,-864,-852,-842,-832,-823,-815,
+-807,-800,-794,-789,-783,-778,-772,-766,-760,-753,-746,-738,-730,-723,-715,-707,-699,-692,-684,-675,-666,
+-656,-645,-634,-622,-611,-600,-590,-582,-575,-569,-566,-563,-561,-560,-558,-555,-551,-545,-538,-530,-521,
+-512,-503,-496,-489,-485,-482,-480,-480,-479,-479,-477,-474,-469,-462,-453,-442,-431,-419,-407,-396,-385,
+-376,-368,-360,-353,-347,-340,-333,-327,-320,-312,-305,-298,-292,-286,-279,-273,-267,-261,-253,-245,-237,
+-227,-218,-209,-201,-194,-188,-184,-181,-180,-179,-178,-176,-173,-168,-162,-154,-144,-134,-124,-115,-107,
+-101,-96,-94,-92,-91,-89,-87,-82,-75,-65,-54,-40,-26,-11,2,14,24,31,35,36,35,
+33,30,27,25,23,23,25,28,33,38,44,50,55,61,65,69,73,78,82,88,95,
+103,113,125,139,154,171,189,207,226,246,264,283,300,316,331,345,356,365,371,373,372,
+365,354,338,318,293,265,235,204,174,146,122,101,86,76,71,70,73,78,84,90,95,
+99,100,100,98,95,91,88,85,83,82,83,86,89,94,100,106,112,119,125,131,137,
+141,145,148,149,149,148,145,142,138,134,130,128,126,127,128,131,134,137,140,143,144,
+144,142,139,136,132,128,126,124,124,125,127,130,133,136,138,139,138,136,133,130,125,
+121,117,114,112,111,112,113,115,117,120,124,127,131,135,139,142,146,149,151,152,152,
+150,146,141,134,126,117,108,100,92,86,82,79,78,77,78,78,79,79,79,78,78,
+78,80,83,88,96,107,120,134,150,165,180,192,202,208,210,207,200,190,177,162,145,
+127,110,95,81,68,59,51,46,43,41,40,39,38,36,32,25,16,5,-9,-26,-46,
+-69,-93,-119,-147,-175,-205,-235,-265,-296,-326,-356,-385,-412,-437,-459,-478,-493,-505,-513,-518,-521,
+-523,-525,-528,-533,-540,-550,-564,-579,-596,-614,-632,-649,-663,-675,-683,-688,-690,-690,-689,-688,-687,
+-687,-688,-691,-695,-700,-704,-708,-709,-708,-704,-695,-683,-667,-648,-625,-602,-577,-553,-531,-511,-495,
+-483,-476,-473,-476,-483,-495,-510,-529,-549,-570,-592,-613,-634,-653,-670,-686,-701,-714,-727,-739,-751,
+-763,-774,-786,-798,-809,-821,-831,-842,-852,-862,-872,-883,-894,-905,-917,-930,-942,-954,-965,-975,-982,
+-988,-991,-992,-991,-989,-985,-981,-976,-971,-965,-958,-948,-935,-919,-898,-871,-840,-804,-764,-723,-681,
+-642,-608,-580,-561,-551,-552,-563,-583,-610,-643,-679,-717,-754,-788,-819,-845,-867,-884,-897,-907,-913,
+-917,-920,-921,-922,-922,-921,-921,-921,-921,-923,-925,-930,-937,-947,-959,-974,-991,-1008,-1027,-1046,-1063,
+-1079,-1094,-1106,-1117,-1128,-1138,-1149,-1162,-1178,-1197,-1220,-1247,-1277,-1309,-1342,-1375,-1407,-1437,-1464,-1488,-1508,
+-1526,-1541,-1555,-1568,-1581,-1594,-1608,-1623,-1638,-1653,-1668,-1681,-1692,-1701,-1709,-1714,-1718,-1722,-1725,-1729,-1734,
+-1740,-1747,-1753,-1760,-1766,-1770,-1772,-1773,-1771,-1769,-1765,-1761,-1758,-1756,-1756,-1757,-1760,-1764,-1767,-1769,-1770,
+-1768,-1764,-1756,-1746,-1734,-1719,-1703,-1687,-1669,-1650,-1631,-1609,-1587,-1562,-1535,-1506,-1476,-1446,-1417,-1390,-1367,
+-1347,-1332,-1322,-1315,-1310,-1307,-1303,-1297,-1288,-1275,-1257,-1235,-1209,-1182,-1153,-1126,-1100,-1077,-1058,-1042,-1029,
+-1020,-1012,-1006,-1001,-997,-993,-991,-990,-990,-991,-994,-998,-1001,-1004,-1004,-1001,-994,-984,-969,-951,-931,
+-911,-892,-876,-864,-857,-855,-856,-859,-863,-865,-862,-854,-839,-817,-788,-754,-716,-677,-640,-605,-575,
+-550,-530,-515,-502,-489,-475,-456,-432,-400,-361,-313,-260,-200,-138,-73,-9,52,112,168,222,273,
+324,375,426,481,539,600,664,731,800,869,937,1002,1062,1118,1167,1210,1246,1277,1302,1324,1342,
+1358,1374,1389,1405,1422,1439,1456,1473,1489,1504,1517,1527,1536,1543,1550,1556,1564,1574,1586,1603,1623,
+1648,1677,1710,1746,1785,1826,1869,1913,1956,1999,2039,2077,2111,2140,2162,2176,2181,2176,2161,2137,2103,
+2063,2017,1970,1923,1881,1845,1818,1802,1798,1805,1823,1851,1887,1927,1970,2015,2058,2100,2139,2176,2210,
+2243,2276,2308,2342,2378,2417,2457,2500,2545,2590,2637,2683,2729,2774,2818,2862,2904,2945,2985,3024,3063,
+3101,3137,3172,3206,3238,3267,3295,3320,3342,3363,3381,3398,3414,3429,3444,3459,3474,3489,3505,3521,3537,
+3553,3568,3583,3597,3610,3623,3636,3649,3662,3676,3691,3707,3724,3741,3758,3774,3790,3803,3815,3825,3834,
+3842,3849,3856,3865,3876,3890,3907,3927,3952,3981,4013,4048,4086,4125,4166,4207,4247,4287,4324,4359,4390,
+4417,4439,4458,4472,4483,4491,4497,4503,4510,4519,4532,4548,4569,4593,4621,4650,4680,4708,4733,4753,4767,
+4775,4777,4774,4766,4755,4743,4731,4721,4713,4709,4709,4712,4719,4728,4738,4750,4762,4774,4785,4795,4805,
+4814,4822,4829,4836,4843,4850,4857,4864,4872,4879,4888,4897,4906,4916,4925,4935,4945,4953,4960,4966,4971,
+4975,4978,4981,4986,4992,5000,5012,5027,5044,5062,5082,5100,5116,5128,5135,5135,5129,5116,5098,5075,5048,
+5021,4993,4967,4945,4925,4910,4898,4890,4885,4882,4880,4879,4878,4876,4875,4873,4871,4870,4868,4866,4865,
+4863,4861,4859,4856,4853,4849,4845,4840,4836,4831,4828,4825,4823,4822,4822,4822,4823,4823,4822,4821,4819,
+4816,4812,4807,4802,4797,4791,4787,4782,4778,4774,4770,4765,4760,4753,4745,4735,4724,4711,4745,4736,4727,
+4719,4712,4706,4701,4697,4693,4691,4689,4687,4684,4681,4676,4671,4664,4656,4647,4637,4627,4617,4606,4595,
+4585,4573,4561,4548,4533,4517,4499,4480,4459,4438,4417,4396,4376,4358,4341,4325,4311,4297,4284,4271,4257,
+4242,4226,4209,4191,4172,4152,4131,4109,4087,4064,4041,4017,3992,3966,3939,3910,3881,3850,3817,3782,3745,
+3704,3660,3613,3562,3508,3451,3393,3333,3275,3218,3165,3115,3069,3027,2989,2954,2920,2888,2855,2821,2786,
+2748,2709,2669,2629,2590,2552,2516,2483,2453,2425,2400,2377,2355,2334,2314,2293,2272,2251,2230,2209,2188,
+2167,2145,2123,2101,2079,2056,2033,2010,1987,1964,1942,1921,1901,1881,1863,1844,1825,1806,1785,1763,1739,
+1715,1690,1665,1641,1618,1598,1579,1564,1551,1540,1530,1521,1511,1500,1487,1472,1455,1435,1413,1389,1363,
+1337,1311,1285,1259,1233,1208,1184,1159,1135,1110,1085,1060,1034,1009,985,961,938,916,894,874,855,
+837,819,800,782,764,745,726,708,689,671,655,639,624,610,597,585,572,558,543,526,507,
+486,464,441,418,395,373,352,333,316,301,286,272,257,242,225,208,190,173,156,143,132,
+126,126,130,138,150,163,177,188,195,197,193,181,161,136,105,70,34,-2,-38,-72,-103,
+-130,-154,-175,-194,-211,-227,-241,-255,-268,-281,-293,-303,-312,-320,-326,-331,-336,-339,-343,-348,-353,
+-359,-365,-372,-380,-387,-395,-402,-409,-415,-421,-427,-433,-440,-448,-457,-468,-479,-492,-504,-517,-529,
+-540,-550,-558,-565,-570,-575,-578,-582,-586,-591,-597,-604,-612,-622,-633,-644,-656,-667,-678,-688,-698,
+-707,-715,-723,-731,-740,-749,-759,-770,-781,-792,-803,-813,-822,-829,-835,-838,-840,-840,-838,-835,-832,
+-828,-825,-823,-821,-822,-823,-827,-832,-840,-849,-860,-873,-887,-902,-917,-933,-948,-962,-975,-986,-997,
+-1006,-1015,-1022,-1030,-1038,-1045,-1053,-1061,-1069,-1077,-1084,-1090,-1094,-1097,-1099,-1098,-1097,-1094,-1091,-1087,-1083,
+-1079,-1074,-1069,-1064,-1059,-1052,-1045,-1037,-1028,-1019,-1010,-1001,-993,-987,-982,-979,-978,-981,-985,-993,-1003,
+-1016,-1032,-1050,-1070,-1090,-1112,-1133,-1153,-1171,-1186,-1197,-1204,-1207,-1206,-1201,-1193,-1182,-1170,-1158,-1146,-1135,
+-1126,-1118,-1111,-1107,-1104,-1103,-1104,-1106,-1111,-1117,-1124,-1134,-1145,-1156,-1168,-1179,-1188,-1194,-1197,-1195,-1189,
+-1179,-1164,-1147,-1127,-1107,-1087,-1068,-1051,-1038,-1027,-1019,-1014,-1011,-1010,-1009,-1009,-1008,-1006,-1002,-998,-992,
+-984,-975,-964,-953,-940,-927,-914,-901,-889,-877,-867,-858,-850,-843,-838,-834,-830,-827,-824,-820,-816,
+-811,-805,-799,-791,-783,-775,-766,-757,-748,-739,-729,-719,-708,-697,-685,-672,-660,-647,-635,-624,-615,
+-608,-602,-599,-597,-597,-598,-598,-599,-598,-595,-591,-585,-578,-569,-561,-552,-545,-539,-534,-531,-529,
+-529,-529,-529,-527,-525,-521,-514,-506,-496,-485,-473,-459,-446,-433,-420,-407,-395,-382,-371,-359,-348,
+-338,-329,-321,-314,-309,-304,-301,-298,-295,-292,-287,-282,-274,-266,-257,-247,-238,-229,-221,-215,-210,
+-207,-204,-202,-198,-194,-187,-179,-169,-157,-144,-132,-119,-109,-100,-94,-90,-88,-87,-86,-85,-83,
+-79,-73,-66,-57,-47,-37,-27,-19,-12,-6,-2,0,1,3,4,6,9,13,18,23,29,
+34,39,44,47,50,53,56,59,62,67,73,81,90,101,113,126,140,154,168,182,196,
+210,224,238,252,266,281,295,310,323,335,344,351,353,350,342,329,310,287,261,233,204,
+176,151,130,113,101,94,92,93,96,101,105,108,110,109,106,101,95,89,83,77,73,
+71,70,71,74,78,82,88,94,101,108,115,122,129,136,141,146,149,150,150,147,144,
+139,135,131,128,126,126,128,131,136,141,146,149,152,153,153,151,148,145,142,140,139,
+138,138,139,140,141,142,141,139,136,132,128,123,119,116,114,114,115,117,119,122,126,
+129,132,135,137,140,142,145,147,150,152,154,154,153,149,143,134,123,110,96,81,66,
+53,42,32,25,21,18,16,15,15,14,13,11,10,10,10,12,17,24,34,46,60,
+75,90,105,117,127,133,135,134,129,121,111,98,86,73,60,49,40,32,26,23,21,
+21,22,24,26,26,26,23,18,11,0,-13,-30,-49,-70,-92,-114,-137,-160,-183,-206,-230,
+-253,-278,-303,-329,-355,-381,-406,-429,-450,-468,-482,-493,-501,-508,-512,-517,-523,-531,-541,-555,-571,
+-591,-611,-633,-654,-673,-689,-703,-714,-721,-726,-729,-732,-735,-739,-743,-749,-756,-764,-771,-777,-780,
+-780,-777,-769,-757,-741,-721,-699,-675,-651,-627,-604,-585,-568,-555,-547,-543,-544,-548,-557,-569,-583,
+-600,-618,-637,-655,-674,-691,-707,-721,-734,-745,-755,-764,-772,-779,-785,-792,-798,-805,-812,-820,-828,
+-837,-846,-857,-868,-880,-893,-906,-919,-932,-943,-953,-961,-968,-972,-974,-974,-973,-971,-969,-966,-963,
+-960,-956,-950,-942,-931,-916,-897,-873,-845,-813,-779,-743,-710,-679,-654,-636,-626,-625,-633,-649,-672,
+-701,-732,-765,-798,-828,-855,-878,-897,-911,-922,-929,-934,-936,-938,-938,-936,-935,-932,-929,-925,-921,
+-917,-914,-911,-911,-912,-915,-922,-931,-942,-956,-972,-990,-1008,-1026,-1045,-1063,-1081,-1099,-1118,-1137,-1157,
+-1178,-1201,-1227,-1254,-1283,-1313,-1343,-1374,-1404,-1433,-1461,-1487,-1512,-1534,-1556,-1577,-1598,-1618,-1639,-1660,-1680,
+-1700,-1719,-1737,-1753,-1767,-1778,-1788,-1797,-1804,-1811,-1818,-1826,-1834,-1842,-1851,-1858,-1865,-1869,-1871,-1869,-1866,
+-1860,-1853,-1846,-1840,-1835,-1834,-1835,-1839,-1846,-1854,-1862,-1870,-1875,-1876,-1874,-1868,-1857,-1844,-1827,-1809,-1789,
+-1768,-1746,-1723,-1699,-1673,-1645,-1616,-1585,-1552,-1520,-1489,-1460,-1435,-1414,-1398,-1386,-1379,-1375,-1371,-1367,-1360,
+-1350,-1334,-1313,-1288,-1258,-1226,-1192,-1159,-1129,-1101,-1077,-1058,-1043,-1031,-1022,-1016,-1012,-1009,-1007,-1007,-1008,
+-1011,-1014,-1018,-1022,-1024,-1024,-1021,-1013,-1001,-984,-964,-941,-917,-895,-877,-864,-858,-859,-866,-879,-894,
+-909,-921,-927,-925,-913,-891,-858,-818,-771,-721,-672,-625,-583,-548,-519,-497,-479,-464,-447,-428,-402,
+-369,-327,-276,-216,-150,-80,-7,63,131,194,250,299,342,379,413,446,479,515,555,601,653,
+711,773,839,907,973,1037,1096,1148,1194,1232,1263,1287,1306,1322,1335,1348,1360,1374,1389,1404,1420,
+1436,1450,1462,1471,1479,1484,1489,1493,1499,1507,1518,1534,1554,1579,1609,1642,1680,1720,1763,1808,1855,
+1905,1955,2007,2060,2113,2163,2209,2249,2279,2298,2303,2294,2270,2231,2181,2122,2057,1992,1930,1875,1832,
+1801,1786,1786,1799,1825,1861,1903,1950,1998,2046,2092,2135,2176,2214,2251,2286,2323,2360,2398,2439,2482,
+2526,2573,2620,2668,2715,2763,2809,2855,2900,2943,2985,3027,3067,3106,3144,3181,3217,3252,3286,3317,3348,
+3376,3403,3427,3450,3470,3489,3507,3523,3537,3551,3564,3576,3587,3597,3607,3617,3626,3636,3646,3656,3668,
+3681,3696,3713,3732,3752,3774,3796,3818,3839,3859,3878,3894,3909,3923,3935,3948,3961,3976,3994,4014,4037,
+4065,4095,4129,4165,4203,4242,4282,4321,4360,4397,4432,4463,4492,4516,4537,4553,4566,4574,4581,4585,4590,
+4595,4603,4614,4630,4650,4674,4701,4729,4758,4784,4807,4823,4832,4834,4828,4815,4798,4777,4756,4737,4722,
+4713,4710,4713,4724,4740,4759,4781,4803,4823,4841,4856,4866,4872,4875,4876,4875,4874,4873,4875,4879,4886,
+4896,4909,4925,4943,4961,4980,4998,5014,5027,5037,5044,5047,5048,5046,5044,5043,5044,5047,5054,5066,5081,
+5100,5120,5141,5160,5175,5185,5188,5185,5174,5156,5133,5105,5076,5047,5019,4995,4974,4958,4947,4939,4934,
+4932,4931,4930,4929,4927,4925,4922,4919,4917,4915,4914,4914,4915,4917,4920,4922,4924,4925,4925,4924,4920,
+4916,4911,4905,4899,4894,4889,4885,4882,4880,4879,4879,4879,4879,4879,4878,4876,4872,4868,4862,4855,4846,
+4837,4827,4817,4807,4796,4785,4775,4765,4755,4745,4807,4803,4800,4797,4794,4792,4789,4787,4784,4781,4778,
+4774,4768,4762,4754,4743,4731,4717,4701,4685,4667,4649,4631,4614,4597,4581,4565,4550,4534,4518,4501,4484,
+4466,4448,4429,4410,4393,4375,4359,4344,4330,4316,4302,4288,4273,4259,4244,4228,4212,4196,4180,4163,4146,
+4128,4108,4086,4062,4036,4006,3973,3938,3900,3859,3816,3771,3724,3674,3623,3570,3514,3457,3398,3339,3281,
+3225,3171,3122,3077,3038,3003,2972,2945,2919,2893,2865,2835,2802,2766,2726,2684,2640,2597,2554,2514,2476,
+2442,2411,2382,2357,2332,2310,2287,2265,2244,2222,2200,2177,2155,2133,2111,2088,2065,2042,2018,1994,1970,
+1945,1922,1899,1877,1856,1836,1816,1798,1779,1760,1741,1721,1700,1679,1658,1638,1619,1601,1585,1570,1558,
+1546,1536,1525,1515,1504,1491,1477,1461,1444,1425,1405,1384,1361,1338,1313,1288,1261,1235,1207,1179,1151,
+1123,1095,1068,1042,1016,992,969,946,925,904,884,864,845,826,807,788,769,750,731,712,694,
+676,659,643,627,612,598,583,569,554,538,520,501,480,458,435,410,386,362,338,317,297,
+279,263,249,236,224,212,200,188,176,165,156,148,143,141,142,147,155,163,173,180,185,
+185,179,166,147,122,92,57,20,-17,-54,-89,-120,-148,-173,-194,-212,-227,-241,-254,-267,-279,
+-290,-301,-312,-320,-328,-334,-339,-343,-347,-351,-355,-360,-367,-375,-384,-394,-404,-415,-424,-433,-441,
+-448,-455,-461,-467,-473,-481,-490,-501,-513,-526,-540,-553,-567,-579,-590,-599,-606,-611,-616,-619,-623,
+-627,-632,-638,-645,-654,-664,-675,-685,-695,-705,-713,-720,-726,-730,-735,-739,-744,-750,-757,-766,-776,
+-788,-799,-811,-823,-833,-842,-849,-854,-858,-860,-862,-862,-862,-862,-862,-862,-863,-864,-865,-867,-870,
+-874,-879,-886,-896,-907,-921,-936,-952,-969,-986,-1002,-1017,-1030,-1041,-1051,-1059,-1066,-1073,-1080,-1088,-1096,
+-1104,-1113,-1120,-1127,-1132,-1135,-1135,-1134,-1130,-1126,-1120,-1114,-1108,-1102,-1097,-1092,-1087,-1081,-1075,-1068,-1060,
+-1051,-1041,-1031,-1023,-1016,-1012,-1011,-1013,-1020,-1030,-1044,-1061,-1080,-1101,-1123,-1144,-1166,-1186,-1204,-1220,-1233,
+-1243,-1248,-1251,-1249,-1243,-1234,-1223,-1209,-1195,-1181,-1167,-1156,-1147,-1141,-1137,-1137,-1140,-1145,-1153,-1162,-1172,
+-1184,-1196,-1209,-1221,-1232,-1243,-1251,-1256,-1259,-1257,-1251,-1241,-1227,-1209,-1188,-1166,-1143,-1121,-1100,-1082,-1067,
+-1055,-1046,-1041,-1038,-1036,-1036,-1036,-1036,-1036,-1035,-1032,-1028,-1023,-1017,-1009,-1000,-989,-978,-965,-952,-938,
+-924,-911,-899,-888,-879,-872,-866,-862,-860,-858,-857,-856,-854,-852,-848,-844,-838,-831,-823,-815,-806,
+-796,-787,-776,-766,-756,-745,-734,-722,-710,-699,-687,-676,-666,-657,-649,-643,-639,-636,-635,-635,-635,
+-636,-635,-634,-632,-629,-624,-618,-611,-604,-597,-591,-586,-582,-579,-576,-575,-573,-571,-568,-563,-557,
+-550,-540,-530,-517,-504,-489,-474,-458,-441,-424,-407,-391,-374,-359,-346,-334,-324,-317,-312,-308,-306,
+-305,-304,-302,-299,-295,-289,-282,-274,-265,-256,-248,-241,-235,-230,-226,-221,-216,-209,-201,-191,-178,
+-165,-150,-135,-121,-109,-99,-92,-87,-84,-83,-82,-81,-80,-78,-74,-68,-62,-55,-49,-42,-37,
+-34,-31,-30,-29,-28,-26,-23,-19,-14,-7,0,9,17,25,32,37,42,46,48,51,54,
+58,63,70,78,87,97,107,118,128,137,145,153,159,166,172,178,186,194,204,215,228,
+240,253,265,274,280,281,278,271,258,242,223,202,180,161,144,130,122,117,117,119,124,
+129,134,138,139,137,133,126,118,109,100,93,86,82,79,78,79,81,83,87,91,95,
+100,106,113,120,128,136,143,149,154,157,157,155,152,147,141,136,132,129,128,129,132,
+136,140,145,149,151,152,152,150,147,144,142,139,138,137,137,138,138,138,138,136,134,
+130,126,123,119,117,115,116,117,120,124,128,132,135,138,140,142,143,145,146,147,149,
+151,153,154,154,152,147,140,130,117,102,85,68,51,35,21,10,2,-3,-7,-10,-11,
+-12,-13,-14,-16,-19,-21,-23,-24,-22,-19,-14,-6,2,12,22,32,40,47,50,52,50,
+47,42,35,28,21,15,9,4,0,-1,-3,-3,-3,-1,0,2,3,4,3,1,-2,
+-9,-17,-28,-41,-55,-69,-84,-97,-109,-121,-131,-142,-152,-165,-180,-197,-218,-243,-270,-299,-329,
+-359,-387,-413,-435,-454,-470,-482,-494,-504,-515,-528,-543,-561,-581,-603,-626,-649,-670,-690,-708,-722,
+-734,-743,-750,-757,-763,-770,-777,-785,-793,-802,-810,-816,-821,-822,-820,-814,-804,-792,-777,-759,-741,
+-722,-703,-686,-671,-658,-647,-640,-636,-634,-636,-641,-648,-657,-668,-680,-693,-706,-720,-733,-745,-755,
+-765,-773,-781,-787,-792,-796,-801,-805,-809,-813,-817,-823,-828,-835,-843,-851,-860,-870,-880,-891,-902,
+-913,-922,-931,-938,-944,-948,-949,-949,-948,-945,-942,-938,-934,-929,-923,-916,-908,-897,-884,-867,-848,
+-825,-800,-773,-747,-723,-702,-686,-677,-674,-680,-692,-711,-736,-764,-795,-826,-856,-883,-908,-929,-946,
+-958,-968,-973,-976,-977,-975,-972,-967,-960,-952,-944,-934,-924,-915,-906,-899,-893,-891,-891,-894,-900,
+-910,-923,-939,-958,-979,-1001,-1026,-1051,-1077,-1103,-1129,-1155,-1181,-1206,-1232,-1257,-1282,-1307,-1332,-1358,-1384,
+-1410,-1437,-1463,-1490,-1516,-1542,-1569,-1595,-1621,-1647,-1673,-1699,-1725,-1749,-1773,-1795,-1815,-1834,-1850,-1865,-1879,
+-1891,-1902,-1913,-1923,-1933,-1942,-1950,-1956,-1960,-1962,-1960,-1956,-1950,-1943,-1935,-1928,-1923,-1920,-1921,-1926,-1934,
+-1944,-1955,-1965,-1973,-1977,-1977,-1971,-1960,-1944,-1924,-1902,-1878,-1853,-1828,-1803,-1778,-1753,-1727,-1700,-1671,-1641,
+-1609,-1577,-1546,-1516,-1490,-1469,-1452,-1440,-1432,-1427,-1423,-1419,-1412,-1401,-1385,-1364,-1337,-1307,-1273,-1239,-1205,
+-1174,-1147,-1124,-1106,-1092,-1083,-1077,-1073,-1072,-1072,-1072,-1074,-1076,-1079,-1082,-1085,-1087,-1087,-1084,-1078,-1068,
+-1055,-1037,-1017,-996,-975,-957,-943,-935,-933,-938,-949,-964,-981,-996,-1008,-1012,-1007,-991,-964,-926,-880,
+-826,-769,-711,-656,-606,-563,-528,-500,-478,-460,-442,-423,-400,-369,-330,-282,-224,-159,-89,-15,58,
+128,193,251,300,340,371,396,416,434,453,476,506,543,588,643,704,772,843,915,985,1050,
+1109,1160,1203,1238,1265,1286,1303,1317,1329,1341,1353,1366,1378,1390,1400,1409,1416,1421,1424,1426,1429,
+1433,1440,1451,1465,1484,1507,1534,1564,1596,1630,1666,1704,1745,1789,1838,1893,1952,2016,2083,2150,2215,
+2273,2321,2355,2371,2369,2348,2309,2255,2189,2117,2045,1976,1917,1871,1840,1825,1827,1843,1872,1909,1952,
+1998,2045,2089,2131,2170,2205,2239,2271,2303,2336,2371,2409,2449,2493,2539,2587,2637,2688,2740,2791,2842,
+2891,2939,2985,3030,3073,3115,3156,3196,3236,3276,3315,3353,3391,3428,3463,3495,3525,3550,3573,3591,3606,
+3617,3626,3632,3637,3641,3646,3650,3656,3663,3671,3682,3694,3708,3725,3743,3763,3786,3809,3834,3860,3886,
+3911,3935,3958,3979,3999,4016,4033,4049,4065,4082,4100,4120,4143,4168,4195,4225,4257,4290,4324,4359,4395,
+4430,4464,4497,4529,4558,4586,4610,4632,4650,4666,4678,4688,4697,4705,4714,4724,4737,4753,4771,4792,4813,
+4835,4854,4869,4878,4880,4874,4862,4843,4819,4794,4769,4748,4732,4724,4725,4736,4754,4779,4808,4839,4869,
+4895,4916,4931,4938,4939,4934,4926,4915,4905,4897,4892,4892,4897,4908,4924,4943,4964,4987,5009,5030,5047,
+5061,5071,5077,5080,5081,5081,5081,5083,5089,5098,5111,5128,5148,5169,5191,5212,5228,5239,5244,5241,5231,
+5213,5190,5163,5133,5103,5075,5049,5028,5011,4999,4992,4988,4986,4986,4987,4987,4987,4986,4984,4981,4979,
+4977,4976,4976,4977,4979,4982,4986,4990,4994,4997,4999,5000,4999,4996,4992,4987,4981,4974,4967,4960,4954,
+4948,4944,4940,4938,4936,4934,4932,4929,4926,4921,4914,4906,4897,4886,4875,4863,4852,4841,4832,4824,4817,
+4811,4807,4892,4891,4890,4887,4883,4878,4871,4862,4853,4843,4832,4821,4809,4796,4783,4769,4753,4736,4719,
+4700,4681,4662,4643,4626,4609,4594,4579,4565,4550,4536,4520,4504,4486,4467,4448,4428,4409,4389,4370,4352,
+4333,4316,4298,4281,4265,4249,4233,4219,4207,4195,4185,4176,4167,4156,4143,4127,4105,4078,4044,4005,3960,
+3910,3856,3800,3744,3686,3630,3575,3521,3468,3416,3365,3316,3269,3224,3182,3143,3108,3076,3049,3023,3000,
+2976,2951,2923,2892,2856,2815,2770,2723,2673,2623,2574,2527,2483,2443,2406,2373,2343,2315,2289,2264,2240,
+2217,2194,2172,2150,2128,2105,2082,2058,2032,2006,1978,1950,1921,1893,1865,1839,1814,1792,1771,1753,1737,
+1722,1708,1695,1682,1669,1657,1644,1632,1620,1609,1597,1585,1573,1559,1545,1528,1511,1492,1473,1452,1432,
+1411,1392,1372,1353,1333,1313,1291,1269,1244,1218,1190,1161,1131,1102,1073,1046,1020,997,975,955,936,
+918,901,882,864,844,824,803,783,762,742,723,704,686,670,654,639,624,610,596,581,565,
+548,530,511,490,467,443,417,391,365,339,315,292,272,255,241,229,220,212,207,202,199,
+195,193,190,189,188,188,188,189,189,189,187,182,174,161,143,120,93,62,28,-7,-43,
+-78,-110,-140,-166,-188,-208,-224,-238,-251,-263,-274,-285,-297,-308,-319,-328,-337,-345,-351,-356,-361,
+-366,-371,-377,-384,-393,-403,-415,-427,-439,-451,-461,-471,-479,-485,-491,-496,-501,-507,-515,-524,-534,
+-546,-560,-574,-588,-601,-613,-624,-633,-641,-646,-651,-655,-659,-664,-670,-677,-685,-694,-704,-714,-723,
+-730,-737,-741,-744,-745,-745,-745,-745,-746,-749,-754,-761,-770,-780,-792,-804,-817,-829,-840,-850,-859,
+-868,-875,-883,-891,-898,-906,-913,-919,-925,-929,-931,-932,-932,-931,-931,-932,-935,-941,-950,-961,-976,
+-992,-1010,-1027,-1044,-1059,-1073,-1084,-1093,-1102,-1109,-1117,-1125,-1133,-1142,-1150,-1158,-1165,-1169,-1171,-1170,-1166,
+-1159,-1152,-1143,-1135,-1128,-1123,-1119,-1117,-1116,-1116,-1116,-1114,-1112,-1108,-1103,-1098,-1094,-1092,-1092,-1096,-1103,
+-1114,-1129,-1146,-1165,-1184,-1204,-1222,-1238,-1251,-1262,-1269,-1274,-1276,-1276,-1273,-1267,-1260,-1250,-1239,-1227,-1215,
+-1203,-1191,-1182,-1176,-1173,-1173,-1177,-1184,-1195,-1208,-1222,-1238,-1253,-1268,-1282,-1294,-1303,-1310,-1314,-1315,-1312,
+-1305,-1294,-1281,-1264,-1244,-1222,-1200,-1178,-1156,-1136,-1118,-1103,-1090,-1080,-1072,-1066,-1061,-1057,-1053,-1049,-1046,
+-1042,-1039,-1035,-1032,-1028,-1024,-1020,-1015,-1008,-1001,-993,-983,-972,-961,-949,-938,-927,-918,-911,-904,-900,
+-897,-896,-895,-895,-895,-894,-892,-889,-885,-879,-872,-863,-853,-843,-832,-821,-811,-800,-791,-781,-772,
+-763,-754,-745,-736,-726,-717,-707,-698,-690,-683,-678,-674,-672,-671,-671,-671,-671,-671,-669,-666,-662,
+-656,-649,-642,-635,-627,-621,-615,-610,-605,-601,-597,-593,-588,-582,-575,-566,-556,-544,-531,-517,-501,
+-484,-466,-447,-428,-410,-391,-374,-359,-345,-334,-326,-319,-315,-312,-310,-308,-306,-303,-299,-293,-286,
+-279,-271,-263,-256,-250,-244,-238,-233,-226,-219,-210,-199,-187,-173,-158,-143,-130,-117,-107,-98,-92,
+-88,-85,-82,-79,-75,-70,-64,-56,-48,-40,-33,-28,-25,-23,-24,-26,-30,-33,-35,-37,-36,
+-32,-27,-19,-10,-1,8,18,26,34,40,45,50,55,60,65,71,78,85,93,101,108,
+114,120,125,128,131,133,135,138,142,147,154,164,175,187,199,211,222,229,233,233,228,
+218,205,189,172,155,140,128,120,116,117,122,129,138,148,156,163,166,166,164,159,152,
+144,136,129,122,118,114,111,110,109,108,108,108,110,112,116,121,128,136,144,153,160,
+166,169,170,169,165,159,153,147,141,137,135,135,136,138,141,144,146,146,146,144,141,
+138,135,132,130,128,128,129,131,132,134,135,136,135,135,134,133,132,131,132,133,135,
+138,140,143,145,147,149,150,151,151,152,153,155,156,157,158,158,156,152,145,136,124,
+109,93,76,59,42,27,15,5,-1,-5,-7,-8,-8,-7,-8,-9,-12,-16,-20,-25,-30,
+-33,-36,-37,-36,-34,-31,-28,-25,-22,-20,-20,-20,-21,-23,-24,-26,-27,-27,-27,-26,-24,
+-22,-20,-18,-17,-16,-15,-15,-15,-16,-18,-20,-23,-28,-34,-40,-48,-56,-63,-70,-75,-78,
+-79,-77,-75,-71,-69,-69,-72,-80,-93,-112,-137,-167,-200,-235,-270,-305,-337,-366,-392,-415,-436,
+-455,-474,-493,-514,-536,-561,-586,-612,-638,-663,-685,-706,-723,-738,-750,-761,-770,-778,-787,-795,-804,
+-813,-821,-829,-835,-840,-842,-842,-840,-835,-828,-820,-811,-801,-790,-780,-770,-760,-752,-744,-738,-733,
+-730,-728,-728,-729,-732,-736,-741,-748,-755,-762,-769,-776,-783,-788,-794,-799,-803,-807,-810,-813,-816,
+-819,-821,-824,-826,-829,-832,-835,-839,-843,-848,-855,-862,-870,-879,-888,-897,-905,-912,-917,-920,-920,
+-918,-914,-908,-901,-892,-883,-872,-861,-849,-836,-823,-807,-791,-773,-754,-736,-718,-703,-692,-685,-684,
+-689,-701,-720,-744,-772,-804,-837,-871,-903,-932,-959,-981,-999,-1012,-1021,-1026,-1027,-1025,-1019,-1010,-999,
+-985,-970,-953,-937,-921,-906,-893,-883,-876,-873,-874,-878,-886,-898,-914,-933,-955,-980,-1008,-1037,-1067,
+-1098,-1129,-1159,-1188,-1215,-1241,-1264,-1286,-1307,-1328,-1348,-1369,-1391,-1415,-1440,-1466,-1494,-1523,-1553,-1583,-1613,
+-1643,-1672,-1702,-1731,-1759,-1786,-1813,-1839,-1863,-1885,-1906,-1924,-1941,-1956,-1968,-1980,-1989,-1997,-2004,-2008,-2012,
+-2013,-2012,-2009,-2004,-1999,-1993,-1989,-1986,-1986,-1989,-1996,-2006,-2019,-2033,-2047,-2058,-2066,-2068,-2064,-2053,-2036,
+-2014,-1988,-1959,-1929,-1900,-1871,-1844,-1819,-1795,-1771,-1746,-1721,-1693,-1665,-1635,-1606,-1578,-1553,-1532,-1515,-1503,
+-1494,-1489,-1484,-1480,-1473,-1462,-1446,-1426,-1400,-1371,-1339,-1306,-1274,-1245,-1221,-1201,-1186,-1176,-1171,-1170,-1171,
+-1174,-1178,-1182,-1187,-1191,-1194,-1197,-1198,-1198,-1196,-1191,-1184,-1174,-1162,-1147,-1131,-1116,-1101,-1089,-1081,-1077,
+-1078,-1084,-1092,-1103,-1112,-1119,-1121,-1115,-1100,-1076,-1041,-997,-945,-889,-829,-770,-714,-664,-620,-586,-559,
+-540,-527,-517,-508,-496,-480,-456,-423,-382,-331,-271,-206,-138,-68,-1,61,117,165,205,237,263,
+285,306,329,356,390,433,484,545,614,689,768,847,924,996,1061,1117,1165,1203,1234,1258,1276,
+1291,1302,1312,1322,1330,1338,1344,1350,1355,1358,1362,1366,1371,1379,1391,1406,1424,1446,1471,1497,1523,
+1549,1574,1598,1623,1648,1678,1712,1755,1805,1865,1933,2007,2084,2160,2230,2290,2335,2362,2369,2358,2328,
+2285,2231,2173,2116,2064,2022,1992,1976,1974,1984,2005,2033,2066,2100,2134,2165,2194,2219,2242,2263,2284,
+2306,2331,2360,2393,2431,2474,2521,2572,2626,2682,2740,2798,2855,2910,2963,3014,3063,3109,3153,3196,3238,
+3280,3322,3365,3408,3451,3492,3532,3569,3602,3629,3652,3668,3678,3684,3686,3685,3682,3680,3679,3681,3686,
+3695,3707,3722,3741,3761,3784,3808,3832,3858,3884,3910,3936,3962,3987,4011,4035,4057,4078,4097,4115,4131,
+4148,4164,4180,4198,4218,4240,4263,4290,4318,4349,4381,4415,4449,4485,4520,4556,4591,4625,4658,4689,4717,
+4743,4765,4783,4797,4808,4816,4822,4827,4832,4839,4847,4857,4868,4880,4891,4901,4907,4908,4904,4895,4880,
+4863,4844,4825,4811,4803,4802,4810,4826,4850,4880,4913,4946,4975,5000,5016,5025,5024,5017,5003,4986,4968,
+4953,4941,4936,4937,4944,4958,4977,5000,5023,5047,5068,5086,5101,5111,5118,5122,5124,5126,5129,5134,5143,
+5154,5170,5189,5209,5231,5252,5270,5285,5293,5295,5291,5279,5261,5238,5211,5182,5154,5127,5103,5083,5067,
+5056,5049,5046,5045,5045,5047,5049,5051,5053,5054,5054,5055,5055,5055,5056,5056,5057,5059,5060,5061,5063,
+5064,5066,5067,5068,5068,5067,5065,5063,5059,5053,5047,5039,5031,5022,5014,5005,4997,4990,4984,4978,4972,
+4966,4960,4954,4946,4939,4930,4922,4915,4908,4902,4898,4895,4893,4892,4892,4970,4967,4963,4956,4946,4934,
+4920,4904,4887,4870,4853,4837,4821,4806,4791,4776,4761,4745,4729,4711,4694,4676,4658,4641,4625,4610,4595,
+4580,4565,4549,4532,4513,4493,4472,4450,4427,4405,4383,4361,4340,4320,4300,4280,4260,4241,4223,4206,4192,
+4181,4173,4168,4165,4164,4161,4156,4146,4129,4104,4070,4026,3975,3916,3854,3789,3724,3661,3602,3548,3499,
+3454,3413,3376,3341,3308,3276,3246,3217,3190,3163,3138,3112,3086,3059,3029,2995,2957,2914,2867,2816,2763,
+2709,2654,2601,2550,2503,2459,2419,2383,2349,2318,2289,2262,2236,2211,2187,2164,2141,2118,2095,2071,2045,
+2018,1988,1957,1925,1893,1861,1830,1802,1777,1755,1736,1720,1707,1696,1687,1678,1671,1664,1657,1650,1643,
+1635,1627,1617,1605,1591,1574,1554,1531,1505,1478,1449,1421,1394,1369,1346,1325,1306,1288,1269,1250,1229,
+1206,1181,1154,1125,1096,1067,1040,1015,993,973,956,941,927,913,899,883,866,847,826,804,782,
+760,739,718,699,682,666,651,637,623,609,596,581,565,548,530,510,488,464,439,412,385,
+358,332,308,285,265,249,235,226,219,216,214,215,217,220,223,226,228,230,229,227,223,
+216,206,191,173,151,125,96,63,28,-7,-43,-77,-109,-139,-164,-186,-204,-219,-232,-243,-253,
+-263,-274,-285,-297,-310,-323,-336,-348,-360,-370,-379,-386,-394,-401,-408,-416,-425,-435,-446,-458,-470,
+-481,-492,-501,-510,-517,-523,-528,-533,-538,-545,-553,-562,-573,-584,-597,-610,-622,-634,-644,-653,-661,
+-667,-673,-678,-683,-689,-695,-703,-711,-720,-729,-738,-746,-752,-757,-760,-760,-758,-755,-751,-748,-744,
+-743,-743,-747,-752,-761,-771,-784,-797,-810,-824,-837,-850,-862,-875,-887,-900,-913,-926,-939,-952,-963,
+-972,-979,-982,-983,-981,-977,-973,-969,-967,-969,-974,-983,-996,-1011,-1030,-1049,-1068,-1085,-1100,-1114,-1125,
+-1134,-1143,-1151,-1159,-1167,-1175,-1183,-1190,-1196,-1198,-1197,-1193,-1186,-1176,-1165,-1154,-1145,-1138,-1134,-1134,-1137,
+-1143,-1151,-1160,-1169,-1177,-1183,-1189,-1194,-1198,-1203,-1209,-1217,-1227,-1238,-1250,-1263,-1275,-1285,-1292,-1296,-1297,
+-1296,-1291,-1285,-1278,-1271,-1264,-1257,-1251,-1244,-1238,-1232,-1226,-1219,-1213,-1209,-1206,-1205,-1208,-1214,-1224,-1238,
+-1254,-1272,-1291,-1309,-1326,-1341,-1352,-1360,-1363,-1362,-1357,-1348,-1336,-1320,-1302,-1281,-1259,-1236,-1213,-1191,-1170,
+-1151,-1135,-1120,-1108,-1097,-1088,-1081,-1074,-1067,-1060,-1052,-1045,-1038,-1032,-1026,-1021,-1017,-1015,-1013,-1012,-1011,
+-1010,-1008,-1005,-1002,-997,-991,-985,-978,-972,-965,-959,-954,-950,-946,-943,-940,-938,-935,-933,-930,-926,
+-920,-914,-906,-897,-886,-875,-863,-852,-841,-830,-821,-813,-806,-799,-793,-787,-780,-773,-764,-754,-743,
+-733,-722,-712,-704,-698,-693,-691,-691,-691,-692,-692,-692,-690,-687,-682,-675,-668,-660,-652,-644,-636,
+-630,-624,-618,-613,-607,-601,-594,-587,-578,-568,-556,-544,-531,-516,-501,-484,-467,-449,-432,-414,-397,
+-381,-367,-354,-344,-335,-329,-323,-319,-314,-310,-305,-299,-292,-285,-278,-270,-263,-256,-250,-245,-239,
+-233,-226,-218,-209,-198,-186,-173,-160,-147,-136,-126,-118,-111,-105,-100,-94,-88,-81,-71,-61,-50,
+-38,-26,-17,-9,-5,-4,-6,-10,-17,-24,-30,-36,-39,-39,-37,-31,-23,-13,-3,8,18,
+28,37,44,50,55,60,64,69,74,79,84,90,96,102,108,112,117,121,124,127,130,
+135,140,146,154,163,174,184,195,204,210,213,213,208,198,186,171,154,138,123,112,105,
+102,104,111,120,132,144,156,166,173,178,180,179,177,173,169,165,162,158,155,152,149,
+145,141,138,135,133,132,134,138,143,151,159,167,175,181,185,187,186,183,178,172,167,
+162,158,155,154,153,154,154,154,154,152,149,146,142,138,134,131,130,129,130,132,135,
+138,142,146,150,153,157,160,163,166,169,171,172,173,173,172,171,170,168,166,165,164,
+164,164,165,166,167,167,166,163,158,150,140,127,113,96,79,61,44,28,15,4,-2,
+-7,-10,-10,-9,-7,-5,-4,-5,-7,-10,-15,-22,-28,-34,-40,-44,-48,-50,-51,-52,-52,
+-52,-53,-54,-55,-56,-57,-57,-56,-53,-50,-45,-40,-34,-29,-24,-20,-17,-16,-16,-17,-18,
+-21,-24,-27,-31,-35,-40,-44,-49,-54,-57,-59,-60,-57,-53,-46,-37,-27,-17,-9,-5,-5,
+-10,-22,-40,-64,-93,-125,-159,-194,-228,-261,-292,-321,-348,-375,-401,-428,-455,-484,-513,-543,-573,
+-601,-628,-653,-675,-695,-713,-728,-742,-755,-768,-780,-792,-803,-815,-825,-834,-842,-848,-852,-855,-857,
+-857,-856,-854,-852,-849,-846,-842,-837,-832,-827,-821,-815,-809,-803,-798,-794,-791,-789,-788,-788,-789,
+-791,-793,-795,-797,-800,-802,-804,-806,-808,-810,-812,-813,-814,-815,-815,-814,-813,-811,-810,-808,-808,
+-808,-809,-813,-818,-825,-833,-843,-853,-863,-871,-878,-883,-884,-882,-876,-868,-857,-844,-829,-813,-797,
+-780,-763,-745,-728,-711,-694,-677,-663,-651,-642,-639,-641,-650,-666,-689,-718,-753,-791,-832,-872,-912,
+-948,-980,-1008,-1029,-1046,-1057,-1062,-1063,-1060,-1052,-1041,-1027,-1010,-991,-971,-950,-929,-910,-894,-880,-870,
+-864,-863,-867,-875,-887,-904,-924,-947,-973,-1002,-1033,-1064,-1097,-1129,-1161,-1191,-1219,-1245,-1268,-1288,-1307,
+-1325,-1342,-1360,-1379,-1401,-1425,-1452,-1480,-1511,-1543,-1576,-1608,-1640,-1672,-1703,-1733,-1763,-1792,-1821,-1849,-1876,
+-1902,-1926,-1948,-1968,-1985,-1999,-2011,-2020,-2027,-2033,-2036,-2039,-2040,-2040,-2039,-2036,-2034,-2031,-2028,-2027,-2028,
+-2032,-2040,-2051,-2065,-2082,-2099,-2116,-2130,-2140,-2144,-2141,-2131,-2113,-2090,-2062,-2031,-2000,-1968,-1939,-1911,-1886,
+-1862,-1839,-1816,-1792,-1767,-1740,-1713,-1685,-1659,-1635,-1614,-1597,-1584,-1575,-1569,-1565,-1560,-1553,-1543,-1528,-1508,
+-1484,-1457,-1426,-1395,-1366,-1339,-1316,-1299,-1287,-1281,-1279,-1282,-1288,-1297,-1306,-1315,-1324,-1332,-1338,-1342,-1343,
+-1342,-1337,-1330,-1320,-1308,-1294,-1279,-1264,-1249,-1237,-1227,-1220,-1216,-1216,-1218,-1221,-1223,-1223,-1220,-1211,-1195,
+-1171,-1140,-1100,-1054,-1002,-948,-891,-836,-785,-740,-702,-672,-652,-640,-635,-635,-639,-643,-644,-640,-629,
+-608,-576,-535,-483,-424,-359,-290,-221,-154,-91,-33,18,64,105,142,179,216,257,303,355,414,
+480,552,628,706,783,859,930,994,1051,1101,1142,1175,1202,1223,1240,1253,1263,1270,1276,1280,1284,
+1287,1290,1294,1300,1309,1322,1339,1361,1387,1415,1446,1477,1506,1532,1555,1574,1590,1604,1620,1638,1664,
+1697,1741,1795,1859,1930,2006,2081,2152,2215,2266,2302,2323,2329,2322,2304,2281,2255,2231,2211,2198,2193,
+2196,2206,2220,2238,2256,2273,2288,2300,2309,2317,2323,2331,2340,2354,2373,2398,2429,2467,2512,2562,2616,
+2675,2736,2798,2860,2922,2981,3037,3090,3139,3185,3228,3269,3309,3349,3388,3429,3470,3511,3552,3591,3626,
+3658,3683,3702,3714,3720,3720,3715,3709,3702,3697,3694,3697,3704,3716,3733,3755,3779,3806,3834,3861,3889,
+3915,3940,3964,3988,4011,4034,4057,4080,4102,4124,4145,4164,4183,4201,4218,4236,4254,4273,4295,4319,4346,
+4375,4408,4443,4480,4518,4556,4595,4634,4671,4707,4741,4773,4802,4827,4849,4866,4878,4886,4889,4890,4887,
+4884,4881,4880,4882,4886,4894,4904,4916,4927,4938,4945,4949,4950,4947,4943,4939,4936,4938,4945,4959,4979,
+5004,5032,5060,5087,5108,5122,5128,5124,5112,5094,5071,5048,5027,5011,5002,5002,5010,5027,5049,5075,5103,
+5130,5155,5175,5190,5199,5205,5207,5208,5208,5209,5212,5219,5229,5242,5257,5274,5291,5306,5317,5325,5327,
+5324,5316,5302,5283,5262,5239,5215,5193,5173,5155,5142,5131,5124,5120,5119,5119,5120,5122,5124,5126,5129,
+5132,5135,5139,5143,5146,5150,5152,5154,5154,5153,5151,5147,5143,5139,5134,5131,5128,5126,5124,5123,5122,
+5120,5117,5112,5106,5098,5089,5079,5068,5058,5048,5039,5031,5024,5018,5012,5006,5001,4995,4990,4985,4980,
+4977,4974,4972,4972,4971,4971,4970,5019,5011,5001,4989,4974,4958,4940,4921,4902,4883,4865,4849,4834,4820,
+4806,4793,4779,4764,4747,4729,4710,4690,4669,4649,4629,4610,4591,4572,4552,4532,4510,4488,4465,4441,4417,
+4394,4372,4351,4331,4313,4295,4277,4258,4239,4220,4201,4183,4167,4154,4146,4141,4140,4142,4145,4146,4142,
+4131,4111,4080,4039,3988,3930,3866,3800,3734,3672,3615,3564,3521,3483,3451,3422,3396,3371,3346,3320,3293,
+3265,3236,3206,3174,3141,3105,3067,3025,2980,2931,2879,2825,2769,2714,2660,2608,2560,2514,2473,2434,2399,
+2365,2334,2303,2274,2246,2219,2193,2169,2145,2121,2098,2073,2048,2021,1992,1962,1932,1901,1871,1843,1817,
+1795,1775,1759,1745,1734,1723,1713,1704,1694,1684,1674,1664,1655,1644,1634,1622,1608,1592,1573,1551,1525,
+1497,1466,1435,1404,1374,1346,1321,1299,1278,1259,1240,1221,1200,1177,1151,1124,1095,1067,1039,1013,990,
+971,954,940,927,916,904,892,877,861,843,823,802,780,759,737,717,699,681,665,651,637,
+624,611,598,584,570,554,536,516,494,471,446,419,393,366,340,315,293,274,257,244,235,
+228,224,223,224,226,230,234,237,241,242,241,238,230,218,202,180,153,122,86,48,8,
+-31,-69,-106,-138,-166,-190,-208,-222,-232,-240,-246,-252,-259,-267,-277,-288,-302,-318,-334,-351,-368,
+-383,-398,-411,-422,-433,-443,-452,-462,-471,-481,-492,-502,-512,-521,-530,-538,-545,-551,-557,-564,-570,
+-578,-586,-595,-606,-616,-627,-637,-647,-655,-662,-668,-674,-678,-683,-688,-694,-701,-709,-718,-727,-737,
+-747,-756,-764,-770,-774,-776,-775,-773,-768,-763,-757,-752,-748,-745,-745,-748,-754,-762,-773,-786,-800,
+-815,-831,-846,-861,-876,-890,-904,-919,-933,-948,-962,-975,-987,-997,-1005,-1009,-1010,-1008,-1005,-1001,-997,
+-996,-997,-1002,-1011,-1024,-1041,-1060,-1080,-1100,-1118,-1134,-1148,-1159,-1168,-1175,-1182,-1188,-1195,-1201,-1207,-1212,
+-1215,-1216,-1213,-1207,-1199,-1188,-1176,-1164,-1155,-1149,-1147,-1150,-1158,-1170,-1184,-1201,-1218,-1236,-1252,-1267,-1281,
+-1293,-1306,-1318,-1329,-1340,-1350,-1358,-1364,-1365,-1363,-1356,-1345,-1331,-1315,-1298,-1281,-1266,-1254,-1245,-1240,-1236,
+-1235,-1235,-1235,-1234,-1233,-1232,-1232,-1232,-1235,-1242,-1252,-1266,-1283,-1303,-1325,-1346,-1366,-1383,-1395,-1402,-1404,
+-1401,-1392,-1378,-1361,-1340,-1317,-1293,-1268,-1242,-1218,-1194,-1171,-1151,-1132,-1116,-1102,-1091,-1081,-1072,-1065,-1057,
+-1050,-1043,-1036,-1029,-1023,-1016,-1011,-1007,-1003,-1001,-1000,-999,-999,-999,-999,-999,-999,-998,-998,-997,-996,
+-994,-992,-990,-986,-983,-978,-972,-966,-959,-952,-945,-938,-931,-924,-917,-910,-902,-894,-885,-876,-867,
+-858,-849,-841,-834,-827,-822,-816,-810,-804,-796,-786,-775,-763,-749,-735,-722,-710,-700,-692,-687,-685,
+-685,-687,-690,-693,-695,-696,-695,-693,-689,-684,-678,-672,-665,-658,-652,-645,-638,-631,-623,-614,-605,
+-596,-585,-574,-563,-551,-539,-526,-513,-498,-483,-468,-452,-435,-419,-403,-389,-375,-363,-352,-343,-335,
+-327,-320,-313,-306,-299,-291,-284,-276,-269,-263,-257,-252,-247,-242,-237,-231,-223,-215,-205,-195,-184,
+-174,-164,-155,-147,-141,-135,-129,-123,-115,-106,-96,-83,-70,-55,-42,-29,-19,-11,-8,-7,-9,
+-14,-20,-26,-30,-33,-34,-31,-26,-18,-9,1,12,23,32,40,46,50,53,54,56,57,
+59,61,65,71,77,85,93,101,109,117,124,130,135,139,143,147,151,156,162,168,174,
+180,184,187,186,183,177,168,157,144,132,121,113,107,106,108,113,120,129,139,148,156,
+163,168,171,174,175,177,178,180,182,183,184,184,182,179,175,170,165,161,158,157,159,
+163,169,176,183,190,196,200,202,203,201,199,196,193,190,187,186,184,182,181,178,175,
+172,167,163,158,154,151,148,147,147,147,149,152,154,158,162,167,173,179,186,193,200,
+207,212,216,218,217,215,210,204,197,191,185,180,176,174,173,172,172,172,170,166,161,
+153,142,129,114,98,81,64,46,30,16,4,-5,-13,-17,-20,-20,-18,-16,-14,-12,-11,
+-11,-13,-16,-21,-26,-30,-35,-38,-41,-42,-42,-41,-41,-41,-41,-42,-43,-45,-47,-49,-49,
+-49,-47,-44,-39,-34,-28,-23,-19,-15,-13,-12,-11,-11,-12,-13,-13,-14,-15,-16,-18,-19,
+-21,-23,-25,-25,-25,-22,-18,-12,-5,1,7,12,13,11,4,-7,-23,-44,-68,-94,-122,
+-151,-180,-208,-236,-264,-292,-319,-348,-376,-405,-434,-462,-490,-517,-542,-566,-589,-610,-631,-652,-673,
+-694,-715,-736,-757,-777,-796,-812,-826,-838,-848,-855,-860,-864,-866,-868,-870,-871,-872,-872,-871,-869,
+-867,-863,-858,-853,-847,-841,-836,-831,-827,-823,-820,-817,-815,-813,-811,-810,-808,-807,-806,-805,-804,
+-804,-804,-803,-803,-802,-800,-798,-795,-791,-786,-782,-778,-775,-773,-772,-774,-777,-783,-790,-799,-808,
+-818,-826,-832,-836,-837,-834,-828,-819,-807,-792,-775,-757,-737,-716,-695,-673,-650,-628,-607,-588,-573,
+-562,-557,-560,-571,-592,-622,-660,-705,-754,-807,-859,-908,-953,-991,-1022,-1046,-1061,-1070,-1072,-1070,-1064,
+-1054,-1042,-1028,-1012,-995,-977,-959,-940,-922,-906,-892,-881,-875,-872,-874,-881,-893,-909,-928,-951,-977,
+-1005,-1035,-1066,-1097,-1129,-1159,-1189,-1216,-1242,-1265,-1286,-1304,-1322,-1340,-1358,-1377,-1399,-1423,-1450,-1480,-1512,
+-1545,-1579,-1613,-1646,-1678,-1709,-1739,-1768,-1797,-1825,-1853,-1881,-1909,-1935,-1959,-1982,-2001,-2017,-2031,-2041,-2049,
+-2056,-2061,-2065,-2069,-2072,-2075,-2077,-2078,-2078,-2077,-2076,-2075,-2075,-2078,-2084,-2093,-2106,-2122,-2140,-2159,-2177,
+-2192,-2202,-2205,-2202,-2192,-2175,-2152,-2126,-2097,-2067,-2038,-2010,-1984,-1958,-1934,-1909,-1884,-1857,-1830,-1801,-1773,
+-1746,-1721,-1700,-1682,-1669,-1660,-1654,-1650,-1646,-1641,-1632,-1619,-1602,-1580,-1555,-1528,-1499,-1472,-1448,-1428,-1412,
+-1403,-1399,-1401,-1407,-1417,-1430,-1443,-1457,-1470,-1482,-1490,-1495,-1496,-1492,-1485,-1472,-1456,-1437,-1415,-1393,-1370,
+-1349,-1331,-1315,-1302,-1294,-1287,-1283,-1280,-1277,-1271,-1262,-1249,-1230,-1205,-1174,-1138,-1096,-1050,-1002,-954,-907,
+-862,-823,-790,-764,-746,-737,-734,-738,-746,-755,-764,-769,-768,-758,-738,-708,-666,-615,-555,-487,-416,
+-342,-268,-196,-127,-64,-5,48,97,144,189,234,279,328,379,434,493,555,619,685,750,815,
+876,934,987,1035,1077,1113,1142,1167,1186,1200,1211,1217,1222,1225,1227,1230,1235,1244,1256,1274,1296,
+1324,1356,1390,1426,1462,1495,1524,1549,1570,1587,1601,1616,1633,1655,1685,1723,1769,1824,1886,1952,2019,
+2085,2145,2199,2244,2279,2306,2326,2340,2350,2358,2367,2376,2387,2399,2410,2420,2429,2434,2436,2434,2430,
+2424,2418,2415,2414,2420,2431,2450,2476,2509,2550,2596,2648,2704,2763,2824,2885,2947,3007,3065,3120,3171,
+3219,3263,3304,3341,3377,3412,3446,3481,3516,3551,3586,3619,3650,3676,3698,3714,3724,3728,3727,3723,3717,
+3711,3707,3706,3711,3721,3737,3758,3782,3809,3838,3866,3893,3919,3942,3964,3984,4004,4024,4044,4066,4089,
+4114,4139,4164,4189,4213,4236,4258,4280,4302,4325,4350,4378,4409,4442,4479,4517,4558,4598,4638,4677,4714,
+4747,4779,4807,4832,4854,4873,4889,4901,4910,4915,4916,4914,4909,4904,4899,4896,4896,4901,4910,4924,4941,
+4961,4980,4999,5015,5027,5036,5042,5046,5051,5058,5070,5086,5106,5131,5157,5183,5205,5220,5227,5225,5213,
+5193,5168,5139,5112,5090,5074,5069,5073,5087,5110,5138,5169,5200,5229,5254,5273,5286,5295,5299,5301,5301,
+5303,5305,5310,5316,5325,5334,5343,5350,5355,5356,5354,5347,5337,5323,5307,5290,5272,5256,5241,5228,5219,
+5212,5209,5207,5207,5208,5210,5211,5212,5212,5211,5211,5212,5213,5215,5219,5224,5230,5235,5241,5245,5247,
+5247,5244,5238,5230,5221,5210,5200,5191,5182,5175,5170,5166,5163,5161,5158,5155,5150,5145,5138,5131,5123,
+5115,5108,5102,5096,5091,5087,5083,5080,5076,5071,5067,5061,5056,5051,5045,5040,5035,5031,5025,5019,5042,
+5030,5016,5002,4985,4968,4950,4932,4914,4897,4881,4866,4851,4838,4824,4809,4793,4775,4754,4732,4707,4682,
+4656,4631,4606,4581,4558,4535,4512,4488,4464,4439,4414,4389,4365,4343,4323,4305,4290,4276,4264,4251,4238,
+4223,4206,4188,4169,4152,4137,4125,4118,4115,4117,4120,4123,4124,4118,4104,4081,4046,4002,3949,3891,3829,
+3768,3709,3655,3607,3565,3528,3496,3466,3438,3409,3379,3347,3313,3278,3240,3202,3162,3121,3079,3034,2988,
+2939,2887,2835,2781,2729,2677,2628,2583,2541,2503,2468,2436,2405,2375,2346,2316,2287,2258,2229,2201,2174,
+2149,2125,2101,2078,2054,2030,2005,1979,1953,1928,1903,1880,1860,1841,1825,1811,1798,1785,1771,1756,1740,
+1722,1704,1685,1666,1648,1632,1616,1601,1586,1571,1554,1535,1514,1490,1464,1437,1410,1383,1357,1332,1309,
+1287,1266,1245,1222,1198,1172,1144,1115,1086,1057,1029,1004,981,961,944,929,916,903,891,878,863,
+848,831,813,795,777,758,740,723,707,691,677,663,650,638,626,613,601,587,572,555,535,
+514,490,464,437,409,382,356,332,311,292,276,264,254,246,240,236,234,232,232,233,234,
+235,235,233,228,220,206,187,163,132,97,58,16,-26,-68,-108,-143,-174,-198,-217,-231,-240,
+-245,-249,-251,-254,-259,-266,-276,-289,-305,-322,-342,-362,-382,-401,-419,-436,-451,-464,-476,-488,-498,
+-508,-517,-526,-534,-542,-550,-557,-564,-571,-578,-586,-594,-603,-613,-623,-634,-645,-655,-664,-671,-677,
+-681,-684,-686,-688,-690,-694,-699,-706,-715,-725,-737,-749,-760,-771,-780,-787,-791,-793,-793,-791,-788,
+-783,-778,-773,-769,-765,-764,-764,-766,-771,-778,-788,-801,-816,-832,-849,-867,-885,-902,-919,-936,-951,
+-966,-979,-992,-1003,-1013,-1022,-1029,-1033,-1036,-1037,-1037,-1036,-1037,-1038,-1042,-1050,-1060,-1074,-1090,-1108,-1126,
+-1145,-1161,-1175,-1187,-1196,-1203,-1208,-1212,-1216,-1220,-1224,-1228,-1232,-1235,-1236,-1235,-1232,-1226,-1219,-1210,-1203,
+-1197,-1194,-1194,-1198,-1207,-1218,-1233,-1249,-1267,-1284,-1301,-1318,-1334,-1349,-1364,-1379,-1392,-1404,-1414,-1420,-1422,
+-1419,-1410,-1396,-1378,-1357,-1335,-1312,-1292,-1276,-1263,-1255,-1251,-1250,-1251,-1252,-1253,-1253,-1251,-1249,-1248,-1248,
+-1251,-1259,-1272,-1289,-1310,-1334,-1360,-1383,-1404,-1420,-1430,-1432,-1428,-1418,-1402,-1382,-1359,-1333,-1307,-1281,-1255,
+-1230,-1205,-1181,-1159,-1137,-1117,-1099,-1083,-1069,-1056,-1046,-1037,-1030,-1024,-1020,-1016,-1013,-1011,-1009,-1008,-1007,
+-1006,-1005,-1003,-1001,-999,-996,-992,-989,-986,-984,-982,-982,-983,-984,-984,-985,-984,-981,-976,-969,-960,
+-950,-939,-928,-918,-910,-903,-897,-894,-891,-889,-887,-885,-882,-878,-874,-868,-862,-856,-848,-840,-831,
+-820,-809,-795,-780,-764,-747,-730,-713,-698,-685,-675,-669,-666,-666,-669,-675,-681,-688,-694,-699,-703,
+-705,-705,-703,-700,-695,-690,-683,-676,-667,-658,-649,-638,-627,-616,-605,-593,-582,-570,-559,-547,-535,
+-523,-510,-496,-482,-467,-451,-436,-421,-406,-392,-379,-368,-357,-348,-338,-330,-322,-313,-305,-297,-290,
+-283,-277,-272,-267,-263,-259,-254,-250,-243,-236,-228,-219,-210,-200,-192,-184,-177,-171,-165,-161,-155,
+-149,-142,-132,-121,-108,-95,-80,-67,-54,-44,-36,-30,-27,-26,-26,-26,-26,-24,-21,-16,-9,
+0,9,19,28,36,42,47,49,49,48,45,43,41,40,41,44,49,57,67,78,90,
+102,112,122,129,134,137,138,138,138,137,137,138,139,142,145,148,150,152,152,151,149,
+147,145,143,142,143,144,148,151,155,159,161,163,163,163,162,162,164,167,172,179,188,
+197,206,214,219,222,221,218,213,207,201,196,192,190,191,194,198,203,208,213,217,219,
+221,221,221,220,220,219,218,216,214,210,205,200,193,186,179,173,169,166,166,167,169,
+172,176,179,183,186,189,192,196,200,207,215,223,232,241,248,253,255,254,250,243,234,
+224,214,204,196,190,185,182,179,177,174,169,163,154,144,132,119,105,90,75,60,46,
+32,20,9,0,-7,-12,-15,-17,-16,-14,-12,-9,-7,-5,-4,-5,-7,-9,-11,-13,-14,
+-14,-12,-10,-7,-3,-1,0,0,-2,-5,-10,-15,-19,-24,-27,-28,-28,-27,-24,-21,-17,
+-14,-11,-9,-6,-4,-1,1,5,9,13,17,21,24,25,25,24,22,19,16,14,12,
+11,10,9,8,6,1,-5,-15,-27,-43,-62,-82,-104,-126,-149,-172,-194,-216,-238,-259,-280,
+-301,-321,-340,-359,-377,-396,-414,-433,-454,-476,-501,-529,-560,-592,-626,-661,-695,-727,-756,-781,-802,
+-819,-831,-840,-845,-849,-851,-853,-855,-857,-858,-860,-861,-861,-861,-859,-858,-855,-852,-850,-847,-844,
+-842,-839,-836,-833,-829,-825,-820,-815,-810,-806,-802,-799,-796,-795,-794,-793,-792,-791,-789,-786,-783,
+-778,-774,-769,-764,-760,-757,-755,-755,-756,-758,-762,-766,-770,-775,-778,-781,-781,-780,-777,-772,-764,
+-754,-741,-726,-709,-689,-667,-642,-616,-588,-561,-535,-511,-493,-483,-482,-491,-513,-546,-591,-645,-706,
+-771,-835,-897,-951,-997,-1033,-1058,-1072,-1077,-1074,-1066,-1054,-1040,-1026,-1013,-1000,-988,-976,-965,-953,-942,
+-931,-921,-913,-907,-904,-906,-911,-921,-935,-953,-975,-998,-1024,-1052,-1080,-1108,-1137,-1164,-1191,-1217,-1241,
+-1264,-1285,-1305,-1324,-1343,-1363,-1384,-1407,-1432,-1460,-1490,-1522,-1554,-1587,-1620,-1651,-1682,-1710,-1738,-1764,-1791,
+-1818,-1845,-1873,-1901,-1928,-1955,-1980,-2002,-2021,-2037,-2050,-2060,-2069,-2077,-2084,-2092,-2101,-2110,-2119,-2126,-2132,
+-2136,-2137,-2136,-2133,-2130,-2128,-2128,-2131,-2139,-2151,-2167,-2187,-2207,-2227,-2244,-2257,-2263,-2263,-2255,-2241,-2221,
+-2198,-2172,-2144,-2116,-2089,-2062,-2035,-2007,-1979,-1950,-1919,-1888,-1858,-1829,-1802,-1780,-1762,-1748,-1739,-1734,-1730,
+-1728,-1724,-1717,-1707,-1693,-1675,-1653,-1629,-1605,-1581,-1561,-1544,-1533,-1527,-1526,-1530,-1539,-1551,-1565,-1580,-1594,
+-1607,-1618,-1624,-1627,-1624,-1616,-1602,-1583,-1559,-1532,-1501,-1469,-1436,-1406,-1378,-1353,-1333,-1317,-1305,-1296,-1289,
+-1283,-1277,-1269,-1258,-1243,-1224,-1201,-1173,-1140,-1104,-1066,-1026,-987,-949,-914,-883,-857,-838,-824,-816,-812,
+-812,-813,-814,-811,-804,-790,-769,-738,-699,-652,-596,-534,-467,-396,-324,-252,-181,-113,-50,7,59,
+105,146,182,214,244,273,303,336,374,416,465,519,578,641,705,770,833,893,948,997,1039,
+1074,1102,1125,1141,1154,1163,1170,1176,1182,1189,1199,1213,1230,1252,1279,1310,1344,1380,1417,1454,1489,
+1521,1550,1576,1600,1624,1648,1674,1705,1741,1782,1830,1882,1939,1997,2056,2114,2169,2221,2269,2312,2351,
+2386,2418,2446,2472,2494,2511,2525,2533,2537,2535,2529,2520,2509,2498,2489,2484,2484,2491,2505,2526,2554,
+2588,2627,2671,2719,2769,2821,2874,2929,2984,3039,3093,3146,3196,3244,3289,3330,3368,3403,3435,3466,3495,
+3524,3552,3580,3607,3632,3655,3675,3692,3705,3713,3719,3721,3722,3724,3726,3732,3741,3754,3771,3793,3816,
+3842,3868,3893,3917,3938,3957,3974,3990,4007,4023,4042,4063,4087,4113,4142,4171,4202,4231,4260,4288,4315,
+4342,4369,4398,4429,4462,4498,4537,4577,4617,4657,4694,4728,4759,4785,4808,4827,4844,4859,4873,4885,4897,
+4907,4915,4922,4926,4928,4929,4931,4933,4938,4946,4959,4975,4994,5014,5034,5052,5066,5075,5080,5082,5081,
+5082,5085,5094,5111,5134,5163,5197,5231,5263,5288,5304,5309,5304,5288,5264,5237,5209,5185,5168,5159,5160,
+5170,5188,5210,5235,5261,5284,5304,5321,5334,5345,5354,5363,5373,5383,5394,5406,5416,5425,5430,5431,5427,
+5418,5405,5389,5370,5350,5332,5315,5301,5291,5285,5283,5284,5289,5295,5301,5307,5312,5315,5316,5314,5310,
+5305,5299,5293,5288,5285,5284,5285,5288,5293,5298,5303,5307,5309,5309,5306,5300,5291,5281,5269,5257,5246,
+5235,5225,5218,5211,5206,5202,5199,5195,5192,5188,5184,5180,5176,5172,5168,5165,5162,5159,5157,5154,5151,
+5147,5141,5135,5127,5118,5108,5098,5087,5076,5065,5054,5042,5055,5041,5027,5012,4997,4980,4963,4945,4927,
+4909,4891,4873,4855,4837,4819,4799,4777,4754,4728,4700,4671,4642,4613,4585,4558,4534,4510,4488,4466,4444,
+4421,4397,4373,4349,4325,4303,4283,4267,4253,4242,4233,4224,4215,4204,4190,4175,4158,4140,4124,4111,4101,
+4096,4096,4098,4101,4103,4100,4090,4071,4043,4005,3959,3907,3851,3793,3737,3684,3634,3589,3547,3508,3470,
+3431,3392,3351,3308,3264,3219,3175,3130,3086,3042,2998,2953,2908,2861,2814,2765,2717,2671,2627,2586,2550,
+2517,2488,2462,2438,2414,2390,2365,2338,2309,2279,2249,2218,2189,2161,2135,2110,2086,2062,2039,2015,1992,
+1968,1944,1922,1901,1881,1864,1848,1833,1818,1802,1785,1766,1744,1721,1697,1672,1648,1626,1605,1587,1572,
+1558,1545,1533,1519,1505,1489,1471,1451,1430,1408,1385,1362,1339,1315,1290,1264,1237,1208,1178,1146,1115,
+1084,1055,1027,1001,978,957,938,921,905,890,874,859,844,829,815,801,787,774,762,749,737,
+724,712,700,688,676,665,654,643,631,618,603,586,565,542,515,486,456,426,396,369,345,
+324,307,293,281,272,264,257,250,244,238,233,229,225,223,220,216,210,200,187,168,143,
+113,78,39,-2,-44,-84,-122,-155,-183,-205,-222,-234,-243,-248,-252,-256,-261,-268,-277,-288,-303,
+-319,-338,-358,-379,-400,-420,-440,-458,-474,-489,-502,-514,-524,-534,-542,-550,-558,-564,-571,-577,-584,
+-591,-598,-607,-616,-626,-637,-649,-660,-671,-681,-689,-695,-700,-702,-704,-705,-707,-709,-714,-721,-730,
+-742,-754,-768,-781,-793,-802,-810,-815,-818,-818,-817,-815,-812,-809,-806,-803,-800,-798,-796,-795,-795,
+-797,-801,-808,-818,-832,-848,-867,-889,-911,-933,-955,-975,-993,-1009,-1023,-1034,-1044,-1051,-1058,-1064,-1069,
+-1073,-1076,-1080,-1083,-1087,-1092,-1099,-1107,-1117,-1129,-1142,-1156,-1171,-1186,-1199,-1210,-1220,-1227,-1233,-1237,-1240,
+-1244,-1247,-1251,-1256,-1261,-1266,-1270,-1274,-1277,-1278,-1278,-1277,-1276,-1275,-1275,-1276,-1280,-1285,-1291,-1298,-1306,
+-1315,-1323,-1332,-1341,-1350,-1360,-1370,-1382,-1393,-1404,-1413,-1419,-1422,-1420,-1413,-1401,-1385,-1367,-1347,-1328,-1311,
+-1297,-1286,-1280,-1276,-1274,-1272,-1269,-1265,-1260,-1253,-1246,-1241,-1239,-1242,-1251,-1266,-1287,-1314,-1342,-1371,-1398,
+-1419,-1433,-1439,-1437,-1427,-1410,-1388,-1363,-1336,-1310,-1284,-1260,-1237,-1216,-1195,-1175,-1155,-1134,-1114,-1094,-1075,
+-1058,-1042,-1029,-1018,-1010,-1005,-1002,-1002,-1004,-1008,-1012,-1018,-1023,-1027,-1030,-1030,-1028,-1024,-1017,-1009,-1000,
+-990,-981,-974,-968,-965,-963,-963,-964,-963,-962,-959,-953,-945,-936,-925,-915,-905,-897,-891,-888,-887,
+-889,-892,-896,-900,-902,-904,-903,-900,-894,-886,-876,-864,-850,-835,-818,-799,-780,-760,-741,-721,-703,
+-687,-673,-662,-655,-651,-651,-654,-660,-668,-677,-686,-695,-702,-708,-711,-713,-712,-709,-704,-698,-691,
+-683,-674,-665,-656,-646,-636,-626,-616,-605,-595,-584,-573,-561,-549,-537,-524,-510,-496,-482,-467,-453,
+-439,-426,-413,-401,-390,-379,-369,-359,-350,-340,-331,-323,-315,-308,-301,-296,-291,-286,-282,-277,-271,
+-265,-257,-248,-239,-229,-219,-210,-202,-194,-188,-183,-179,-175,-170,-165,-158,-149,-139,-128,-115,-102,
+-90,-78,-67,-58,-50,-43,-37,-31,-25,-19,-12,-4,4,14,23,31,38,44,48,49,49,
+47,44,40,36,34,32,33,36,42,51,61,73,86,99,111,121,128,133,135,135,133,
+131,127,124,123,122,123,125,129,134,139,144,150,156,163,170,177,185,193,201,207,212,
+215,214,212,206,200,193,188,185,185,189,197,209,223,239,254,267,277,282,283,280,273,
+264,255,246,239,234,232,233,235,238,241,244,246,248,249,249,249,249,249,249,247,245,
+240,234,226,217,206,196,187,180,175,175,177,182,189,197,205,212,218,223,226,229,231,
+235,240,246,254,262,270,277,282,284,282,278,271,263,253,243,234,227,220,215,210,205,
+200,192,184,173,161,148,134,120,107,94,82,71,61,51,42,33,25,18,13,9,7,
+7,8,11,15,19,22,24,25,25,24,23,22,21,22,24,27,31,36,39,41,42,
+40,37,31,24,17,10,4,-1,-4,-6,-7,-7,-6,-5,-5,-3,-2,0,3,8,13,
+21,28,37,44,51,55,57,57,55,50,44,37,29,22,16,9,3,-3,-10,-19,-30,
+-43,-58,-75,-94,-114,-134,-153,-172,-190,-206,-219,-231,-241,-249,-255,-261,-266,-272,-279,-288,-301,
+-318,-341,-369,-402,-441,-483,-527,-573,-617,-659,-695,-727,-752,-772,-786,-795,-800,-803,-805,-806,-808,
+-810,-813,-815,-819,-821,-824,-826,-828,-830,-832,-834,-836,-837,-838,-839,-838,-835,-832,-827,-820,-813,
+-806,-800,-794,-790,-787,-785,-785,-785,-784,-784,-783,-781,-778,-774,-769,-764,-759,-754,-750,-746,-742,
+-739,-737,-735,-733,-731,-730,-728,-726,-724,-721,-717,-713,-707,-699,-689,-676,-661,-641,-619,-593,-565,
+-535,-506,-479,-457,-442,-436,-443,-462,-496,-542,-600,-667,-739,-812,-883,-947,-1001,-1043,-1073,-1089,-1094,
+-1090,-1079,-1064,-1047,-1031,-1016,-1004,-994,-986,-980,-974,-968,-962,-956,-951,-948,-946,-948,-954,-964,-978,
+-996,-1017,-1040,-1066,-1092,-1118,-1144,-1170,-1195,-1219,-1242,-1264,-1285,-1305,-1325,-1345,-1365,-1386,-1407,-1430,-1455,
+-1482,-1509,-1538,-1567,-1596,-1624,-1650,-1676,-1699,-1722,-1744,-1766,-1789,-1814,-1841,-1869,-1898,-1928,-1956,-1983,-2007,
+-2027,-2044,-2059,-2071,-2081,-2092,-2103,-2115,-2129,-2143,-2158,-2171,-2182,-2190,-2194,-2194,-2191,-2186,-2181,-2177,-2176,
+-2180,-2189,-2204,-2223,-2244,-2267,-2289,-2307,-2319,-2326,-2325,-2317,-2304,-2285,-2263,-2238,-2213,-2186,-2159,-2132,-2104,
+-2075,-2045,-2014,-1982,-1950,-1920,-1893,-1869,-1850,-1836,-1827,-1821,-1818,-1815,-1811,-1805,-1796,-1782,-1765,-1745,-1723,
+-1701,-1681,-1664,-1652,-1645,-1643,-1646,-1654,-1664,-1677,-1690,-1702,-1713,-1720,-1724,-1724,-1720,-1711,-1696,-1677,-1652,
+-1624,-1592,-1558,-1522,-1486,-1452,-1420,-1392,-1368,-1349,-1333,-1322,-1314,-1308,-1303,-1298,-1291,-1282,-1269,-1253,-1233,
+-1209,-1181,-1150,-1118,-1084,-1050,-1018,-988,-961,-938,-919,-902,-888,-875,-862,-848,-831,-810,-784,-753,-717,
+-676,-630,-580,-527,-470,-411,-350,-289,-228,-169,-112,-60,-12,27,61,88,108,123,135,146,160,
+178,204,238,281,334,394,461,530,601,670,736,796,850,898,940,976,1007,1035,1060,1082,1103,
+1122,1139,1156,1172,1189,1206,1225,1247,1272,1301,1333,1369,1406,1445,1484,1522,1559,1595,1629,1663,1697,
+1733,1771,1812,1857,1905,1957,2011,2067,2123,2178,2232,2284,2332,2377,2418,2455,2487,2514,2535,2551,2562,
+2567,2567,2563,2557,2551,2545,2541,2541,2546,2557,2572,2593,2618,2646,2677,2711,2745,2781,2819,2859,2901,
+2946,2993,3042,3093,3145,3196,3245,3292,3335,3374,3409,3440,3468,3493,3516,3539,3561,3583,3604,3626,3647,
+3667,3685,3701,3716,3729,3742,3754,3767,3781,3797,3814,3834,3855,3877,3899,3921,3941,3960,3977,3992,4006,
+4021,4036,4054,4074,4097,4123,4152,4183,4215,4247,4278,4309,4338,4367,4396,4426,4457,4491,4526,4564,4602,
+4640,4676,4709,4739,4764,4784,4802,4816,4830,4843,4857,4873,4890,4908,4925,4942,4958,4971,4982,4992,5001,
+5012,5024,5039,5055,5073,5090,5104,5113,5116,5112,5102,5087,5072,5058,5051,5054,5068,5095,5134,5181,5233,
+5285,5332,5369,5394,5405,5403,5390,5370,5345,5321,5300,5285,5277,5275,5279,5287,5298,5309,5320,5332,5344,
+5356,5372,5390,5411,5434,5460,5484,5506,5524,5534,5537,5531,5517,5497,5472,5446,5420,5397,5378,5366,5360,
+5360,5366,5376,5389,5402,5414,5425,5432,5435,5434,5429,5420,5409,5397,5384,5372,5361,5352,5346,5342,5340,
+5339,5340,5341,5342,5342,5341,5338,5334,5328,5322,5315,5307,5300,5293,5287,5281,5276,5272,5269,5265,5262,
+5259,5255,5251,5247,5242,5237,5231,5225,5219,5213,5207,5201,5194,5187,5179,5170,5159,5148,5136,5123,5109,
+5096,5082,5068,5055,5064,5051,5037,5022,5007,4990,4971,4951,4929,4906,4882,4858,4834,4809,4784,4759,4733,
+4705,4677,4647,4618,4588,4560,4534,4509,4488,4468,4451,4434,4417,4398,4379,4357,4335,4312,4289,4268,4250,
+4234,4222,4211,4202,4194,4184,4173,4160,4145,4129,4114,4101,4091,4084,4081,4080,4081,4080,4076,4066,4048,
+4022,3986,3944,3895,3842,3786,3731,3677,3625,3575,3527,3479,3432,3384,3334,3284,3233,3182,3132,3084,3039,
+2995,2954,2914,2874,2835,2796,2756,2716,2677,2639,2604,2573,2545,2522,2501,2483,2466,2448,2428,2406,2381,
+2353,2322,2290,2257,2225,2194,2164,2135,2108,2081,2055,2028,2001,1973,1946,1919,1893,1869,1847,1826,1807,
+1789,1772,1754,1735,1716,1695,1674,1652,1631,1612,1594,1578,1564,1551,1541,1530,1520,1509,1497,1483,1468,
+1450,1431,1410,1387,1362,1335,1306,1275,1243,1209,1174,1140,1106,1075,1045,1018,993,970,950,930,912,
+894,877,860,844,829,816,803,793,784,776,769,761,753,744,734,724,713,702,691,681,670,
+659,646,631,613,590,564,534,501,467,433,400,370,344,323,306,293,282,273,264,256,247,
+237,227,218,209,202,196,190,185,178,168,155,137,114,86,54,18,-18,-55,-91,-124,-153,
+-179,-200,-217,-232,-244,-255,-265,-275,-287,-299,-312,-327,-343,-360,-377,-396,-415,-434,-453,-471,-488,
+-504,-519,-532,-543,-553,-562,-569,-576,-582,-587,-592,-598,-604,-610,-617,-626,-635,-645,-656,-668,-679,
+-690,-701,-710,-717,-723,-728,-732,-736,-740,-746,-754,-764,-776,-789,-803,-817,-830,-841,-849,-854,-857,
+-857,-856,-853,-851,-848,-846,-844,-843,-841,-839,-836,-832,-829,-826,-826,-828,-834,-844,-860,-879,-902,
+-928,-955,-981,-1006,-1028,-1046,-1061,-1072,-1081,-1087,-1092,-1097,-1102,-1107,-1112,-1118,-1124,-1131,-1137,-1145,-1152,
+-1160,-1169,-1179,-1189,-1200,-1211,-1222,-1233,-1242,-1251,-1258,-1265,-1270,-1275,-1280,-1286,-1292,-1298,-1305,-1313,-1320,
+-1327,-1333,-1339,-1343,-1347,-1349,-1351,-1352,-1353,-1353,-1353,-1352,-1351,-1350,-1348,-1347,-1346,-1346,-1347,-1350,-1355,
+-1361,-1367,-1374,-1379,-1382,-1381,-1378,-1371,-1361,-1348,-1335,-1322,-1310,-1300,-1292,-1286,-1281,-1277,-1272,-1265,-1256,
+-1245,-1234,-1223,-1215,-1211,-1213,-1223,-1240,-1264,-1293,-1325,-1355,-1383,-1403,-1416,-1419,-1413,-1398,-1377,-1351,-1323,
+-1295,-1269,-1246,-1225,-1207,-1191,-1176,-1161,-1145,-1129,-1111,-1092,-1073,-1055,-1037,-1022,-1010,-1000,-994,-991,-992,
+-996,-1002,-1011,-1021,-1032,-1042,-1051,-1057,-1059,-1058,-1052,-1043,-1031,-1017,-1003,-989,-977,-968,-961,-957,-955,
+-954,-953,-953,-951,-947,-942,-935,-928,-921,-914,-909,-906,-904,-905,-907,-910,-913,-916,-917,-915,-911,
+-905,-895,-883,-868,-851,-833,-813,-793,-773,-753,-734,-715,-698,-683,-670,-659,-652,-647,-645,-647,-651,
+-657,-664,-673,-681,-689,-695,-699,-701,-702,-700,-697,-692,-687,-682,-676,-671,-666,-660,-655,-649,-642,
+-634,-625,-615,-604,-591,-578,-565,-551,-537,-523,-510,-497,-484,-472,-460,-449,-438,-427,-416,-405,-394,
+-383,-373,-362,-352,-343,-335,-327,-320,-314,-308,-302,-295,-288,-280,-270,-260,-249,-238,-227,-216,-207,
+-199,-192,-186,-182,-178,-174,-170,-165,-158,-151,-142,-132,-121,-110,-99,-88,-78,-68,-59,-50,-40,
+-31,-22,-13,-3,5,14,23,31,37,43,47,50,51,51,51,50,49,48,48,49,52,
+56,63,71,81,91,101,111,120,127,132,136,138,138,138,137,136,136,137,139,141,145,
+148,153,158,163,170,178,188,198,210,222,234,245,253,259,261,259,255,249,242,237,235,
+237,243,254,269,287,305,321,334,343,346,343,336,325,312,299,288,280,275,273,273,276,
+280,284,286,288,288,288,286,285,284,282,281,279,276,270,263,253,241,228,215,203,194,
+188,186,188,195,204,214,226,236,246,253,259,263,267,271,275,279,284,290,295,299,301,
+301,299,295,290,284,279,273,269,266,263,260,256,250,242,231,217,201,184,166,149,132,
+118,106,96,87,80,73,67,61,54,49,44,40,38,38,39,42,47,51,55,58,60,
+60,59,58,57,56,56,57,59,62,65,68,70,71,70,67,62,56,50,43,37,32,
+28,24,20,17,14,11,8,5,3,2,3,6,10,17,24,33,41,47,52,54,53,
+49,42,34,24,15,6,-2,-9,-15,-21,-28,-35,-44,-55,-69,-84,-102,-121,-140,-159,-177,
+-192,-204,-214,-219,-222,-222,-219,-216,-212,-209,-209,-212,-220,-234,-254,-281,-314,-353,-396,-441,-487,
+-532,-574,-611,-643,-669,-688,-703,-713,-719,-724,-728,-731,-735,-739,-743,-747,-752,-755,-759,-761,-764,
+-767,-770,-774,-779,-785,-790,-795,-799,-802,-803,-803,-801,-797,-793,-788,-784,-780,-778,-776,-776,-775,
+-775,-774,-773,-770,-766,-761,-755,-749,-742,-734,-727,-719,-712,-705,-698,-692,-686,-680,-675,-671,-667,
+-664,-661,-657,-652,-645,-637,-625,-611,-594,-573,-550,-525,-498,-473,-450,-431,-420,-417,-425,-446,-479,
+-524,-581,-647,-719,-793,-865,-933,-992,-1040,-1076,-1099,-1111,-1113,-1108,-1097,-1084,-1070,-1057,-1046,-1037,-1030,
+-1024,-1018,-1012,-1007,-1001,-996,-993,-992,-995,-1002,-1013,-1029,-1049,-1073,-1098,-1126,-1153,-1180,-1206,-1231,-1255,
+-1277,-1298,-1318,-1338,-1357,-1376,-1395,-1414,-1434,-1454,-1475,-1497,-1519,-1542,-1565,-1588,-1610,-1631,-1651,-1668,-1684,
+-1699,-1714,-1730,-1748,-1768,-1791,-1817,-1847,-1879,-1912,-1945,-1977,-2007,-2033,-2056,-2076,-2092,-2108,-2122,-2136,-2152,
+-2168,-2184,-2200,-2216,-2229,-2239,-2246,-2249,-2248,-2246,-2242,-2240,-2240,-2244,-2253,-2266,-2284,-2305,-2327,-2348,-2366,
+-2381,-2389,-2391,-2387,-2378,-2363,-2345,-2325,-2303,-2280,-2257,-2233,-2208,-2181,-2153,-2124,-2093,-2062,-2033,-2005,-1982,
+-1962,-1947,-1937,-1930,-1925,-1920,-1914,-1905,-1892,-1875,-1855,-1831,-1807,-1784,-1764,-1748,-1738,-1735,-1737,-1745,-1757,
+-1770,-1784,-1797,-1807,-1814,-1816,-1813,-1806,-1794,-1779,-1760,-1738,-1713,-1686,-1658,-1628,-1598,-1567,-1538,-1510,-1485,
+-1463,-1444,-1428,-1416,-1406,-1399,-1392,-1387,-1380,-1373,-1362,-1349,-1333,-1313,-1289,-1262,-1233,-1202,-1171,-1141,-1111,
+-1083,-1058,-1034,-1012,-991,-969,-946,-921,-893,-861,-826,-788,-747,-704,-660,-615,-569,-522,-475,-427,-378,
+-328,-279,-230,-184,-141,-104,-73,-48,-30,-17,-8,0,9,23,44,74,112,159,213,273,335,
+398,459,517,570,619,664,707,748,790,833,877,922,968,1012,1054,1091,1125,1153,1177,1197,1216,
+1234,1255,1278,1306,1338,1375,1415,1457,1501,1545,1588,1629,1670,1711,1752,1793,1837,1884,1933,1984,2038,
+2092,2147,2201,2253,2302,2349,2391,2430,2464,2494,2520,2541,2558,2570,2580,2587,2592,2596,2601,2607,2615,
+2626,2639,2654,2672,2690,2708,2726,2744,2761,2779,2798,2819,2845,2875,2910,2951,2997,3048,3100,3154,3206,
+3256,3301,3342,3377,3407,3433,3457,3478,3500,3522,3545,3570,3597,3625,3653,3680,3707,3731,3754,3775,3793,
+3811,3828,3845,3862,3880,3899,3919,3938,3958,3977,3995,4012,4028,4045,4061,4080,4100,4123,4149,4177,4207,
+4239,4271,4303,4335,4365,4394,4423,4452,4483,4514,4547,4582,4617,4651,4684,4714,4741,4764,4784,4801,4817,
+4833,4851,4871,4893,4918,4944,4969,4994,5016,5035,5052,5066,5080,5094,5110,5128,5148,5168,5186,5200,5207,
+5205,5193,5172,5145,5115,5088,5069,5062,5071,5097,5138,5192,5254,5318,5377,5427,5464,5486,5493,5487,5471,
+5450,5428,5408,5392,5381,5375,5372,5372,5373,5375,5377,5382,5389,5401,5418,5443,5472,5506,5542,5576,5604,
+5624,5634,5633,5621,5599,5571,5540,5509,5482,5461,5448,5444,5447,5457,5473,5490,5509,5526,5539,5549,5553,
+5553,5548,5540,5528,5514,5500,5484,5470,5456,5444,5432,5422,5414,5406,5399,5392,5386,5381,5376,5372,5369,
+5366,5365,5363,5362,5362,5361,5360,5359,5358,5357,5355,5353,5350,5347,5342,5336,5328,5319,5307,5295,5281,
+5267,5253,5239,5226,5213,5201,5190,5179,5168,5156,5144,5131,5117,5104,5090,5077,5064,5064,5050,5036,5021,
+5004,4985,4963,4939,4913,4884,4855,4825,4795,4766,4738,4711,4684,4657,4630,4603,4576,4549,4523,4499,4477,
+4458,4441,4427,4414,4401,4388,4373,4356,4337,4316,4295,4274,4255,4237,4222,4209,4198,4188,4177,4166,4154,
+4140,4125,4110,4096,4084,4074,4067,4061,4057,4051,4042,4029,4009,3982,3948,3907,3860,3810,3757,3703,3650,
+3597,3545,3493,3442,3389,3336,3281,3226,3172,3118,3067,3019,2975,2935,2897,2863,2831,2800,2769,2738,2708,
+2678,2649,2622,2598,2577,2558,2542,2526,2511,2494,2475,2453,2428,2399,2368,2335,2302,2268,2235,2203,2172,
+2143,2113,2084,2053,2022,1989,1956,1923,1889,1858,1828,1800,1776,1754,1735,1718,1703,1688,1675,1662,1648,
+1635,1622,1610,1597,1585,1574,1562,1551,1539,1527,1513,1499,1483,1466,1446,1425,1400,1374,1344,1312,1278,
+1242,1205,1167,1131,1096,1064,1034,1007,984,963,943,925,908,891,874,858,843,829,817,807,799,
+792,786,781,775,768,760,751,740,728,716,705,693,681,669,655,639,619,595,567,535,500,
+463,427,393,362,335,312,294,279,267,256,244,232,220,206,193,181,169,160,153,147,141,
+135,127,116,100,81,57,30,0,-30,-60,-90,-117,-142,-165,-186,-205,-225,-243,-262,-281,-301,
+-320,-338,-357,-374,-391,-407,-423,-439,-455,-472,-488,-506,-522,-539,-554,-567,-579,-588,-596,-602,-607,
+-612,-615,-619,-623,-628,-634,-641,-649,-658,-668,-678,-690,-701,-713,-724,-734,-744,-753,-761,-768,-776,
+-784,-793,-803,-815,-829,-843,-857,-871,-884,-894,-902,-906,-908,-908,-906,-903,-900,-897,-894,-892,-890,
+-888,-884,-879,-874,-867,-861,-856,-853,-855,-862,-874,-892,-914,-940,-968,-996,-1022,-1045,-1065,-1080,-1092,
+-1100,-1106,-1111,-1116,-1121,-1128,-1135,-1144,-1152,-1161,-1170,-1178,-1186,-1193,-1200,-1208,-1217,-1226,-1237,-1248,-1260,
+-1272,-1283,-1294,-1303,-1312,-1319,-1325,-1331,-1336,-1342,-1347,-1353,-1359,-1365,-1371,-1375,-1379,-1382,-1383,-1383,-1382,
+-1380,-1378,-1375,-1372,-1368,-1365,-1362,-1359,-1356,-1354,-1352,-1352,-1352,-1353,-1355,-1357,-1358,-1359,-1357,-1354,-1349,
+-1342,-1333,-1324,-1314,-1305,-1297,-1290,-1285,-1279,-1274,-1267,-1259,-1248,-1236,-1222,-1210,-1199,-1192,-1191,-1197,-1210,
+-1230,-1255,-1283,-1311,-1336,-1356,-1368,-1371,-1366,-1352,-1332,-1309,-1283,-1257,-1233,-1212,-1194,-1178,-1164,-1152,-1139,
+-1125,-1111,-1095,-1078,-1060,-1043,-1026,-1011,-998,-987,-979,-974,-972,-974,-979,-987,-998,-1011,-1024,-1037,-1049,
+-1058,-1063,-1064,-1060,-1053,-1042,-1028,-1014,-1000,-987,-977,-969,-964,-962,-961,-961,-961,-961,-961,-959,-955,
+-951,-946,-941,-936,-931,-926,-922,-919,-915,-911,-906,-900,-892,-882,-871,-857,-842,-825,-808,-789,-771,
+-754,-737,-721,-706,-693,-681,-670,-661,-654,-649,-647,-646,-647,-651,-656,-663,-670,-677,-683,-688,-692,
+-694,-694,-693,-692,-690,-688,-687,-686,-685,-683,-681,-677,-672,-665,-656,-644,-631,-617,-601,-585,-570,
+-554,-540,-527,-514,-502,-491,-480,-470,-460,-449,-438,-427,-416,-404,-393,-382,-371,-361,-351,-342,-334,
+-326,-318,-310,-301,-291,-281,-270,-258,-246,-234,-222,-211,-201,-193,-186,-180,-176,-172,-169,-165,-161,
+-156,-151,-144,-137,-129,-120,-111,-101,-91,-80,-70,-59,-48,-37,-26,-15,-4,5,14,23,31,
+39,46,53,60,65,70,75,78,80,82,83,83,83,84,85,87,91,95,100,106,113,
+119,125,130,135,139,143,147,151,155,159,162,166,169,171,173,174,176,178,182,187,195,
+204,216,228,241,252,261,268,273,274,275,274,275,278,284,293,306,321,338,353,366,374,
+377,374,366,354,339,323,309,298,291,289,290,295,301,308,314,318,320,320,318,316,313,
+311,310,309,307,305,302,296,287,276,263,249,234,222,212,206,205,207,213,222,232,243,
+253,263,271,278,284,289,293,297,300,302,304,303,302,299,295,291,287,284,283,283,284,
+286,289,290,288,284,275,262,246,227,206,185,165,147,131,119,109,101,95,90,85,81,
+76,71,67,64,61,61,62,64,68,71,75,79,82,83,84,85,85,85,86,87,89,
+91,93,94,94,92,90,86,82,77,71,66,60,56,51,46,41,35,29,23,16,10,
+5,1,0,0,2,7,12,18,23,27,27,25,20,11,0,-11,-23,-35,-45,-53,-58,
+-61,-62,-63,-63,-65,-69,-76,-86,-99,-114,-130,-147,-163,-177,-189,-199,-205,-208,-208,-206,-203,
+-200,-198,-197,-200,-206,-217,-233,-253,-279,-308,-341,-376,-411,-446,-479,-509,-535,-558,-576,-591,-603,
+-612,-621,-628,-635,-641,-646,-650,-653,-653,-652,-649,-645,-641,-638,-636,-637,-640,-647,-656,-668,-681,
+-694,-708,-720,-730,-738,-745,-749,-752,-755,-756,-757,-757,-757,-757,-755,-753,-749,-744,-738,-730,-722,
+-712,-701,-690,-678,-667,-655,-644,-634,-625,-617,-610,-605,-600,-595,-590,-584,-576,-565,-552,-536,-518,
+-498,-476,-455,-434,-417,-403,-395,-394,-402,-419,-446,-483,-529,-584,-645,-710,-778,-844,-906,-962,-1011,
+-1050,-1081,-1102,-1116,-1123,-1125,-1124,-1122,-1118,-1114,-1110,-1105,-1100,-1094,-1088,-1080,-1073,-1067,-1063,-1063,-1066,
+-1074,-1087,-1104,-1126,-1151,-1178,-1206,-1234,-1260,-1286,-1309,-1331,-1352,-1371,-1390,-1408,-1426,-1443,-1461,-1479,-1496,
+-1514,-1531,-1548,-1565,-1583,-1599,-1616,-1632,-1646,-1659,-1670,-1680,-1688,-1696,-1704,-1714,-1727,-1743,-1764,-1790,-1820,
+-1855,-1893,-1933,-1973,-2013,-2050,-2084,-2115,-2141,-2165,-2186,-2205,-2222,-2239,-2254,-2268,-2281,-2292,-2301,-2308,-2312,
+-2314,-2315,-2315,-2316,-2319,-2325,-2333,-2346,-2361,-2378,-2397,-2415,-2432,-2444,-2453,-2457,-2456,-2450,-2440,-2426,-2411,
+-2394,-2375,-2356,-2336,-2314,-2291,-2265,-2238,-2210,-2182,-2154,-2127,-2104,-2084,-2069,-2057,-2048,-2040,-2032,-2022,-2008,
+-1990,-1967,-1940,-1911,-1880,-1852,-1828,-1811,-1801,-1799,-1805,-1818,-1835,-1854,-1874,-1891,-1904,-1911,-1913,-1909,-1900,
+-1886,-1870,-1851,-1831,-1810,-1788,-1767,-1745,-1723,-1702,-1680,-1659,-1639,-1619,-1601,-1584,-1570,-1557,-1545,-1535,-1526,
+-1516,-1506,-1495,-1481,-1466,-1447,-1425,-1400,-1373,-1344,-1315,-1285,-1255,-1226,-1199,-1173,-1147,-1122,-1096,-1068,-1039,
+-1006,-970,-932,-892,-850,-807,-764,-721,-678,-636,-593,-550,-506,-461,-415,-369,-325,-282,-243,-208,-178,
+-153,-131,-112,-94,-74,-51,-23,9,48,91,138,185,232,275,315,349,380,409,436,466,500,
+540,588,642,704,769,837,903,966,1023,1072,1113,1146,1173,1196,1217,1239,1264,1293,1327,1365,1406,
+1450,1496,1541,1586,1630,1673,1716,1759,1804,1850,1899,1951,2005,2060,2116,2171,2224,2275,2324,2368,2409,
+2447,2481,2511,2538,2563,2584,2603,2620,2636,2651,2666,2682,2697,2714,2730,2746,2762,2775,2786,2793,2798,
+2800,2800,2801,2803,2809,2821,2840,2866,2900,2942,2989,3041,3094,3147,3198,3245,3287,3325,3358,3388,3415,
+3441,3468,3496,3526,3558,3591,3625,3660,3693,3723,3752,3777,3799,3818,3835,3851,3867,3884,3901,3920,3939,
+3960,3981,4003,4024,4044,4065,4086,4108,4132,4157,4185,4215,4247,4280,4314,4348,4382,4414,4445,4475,4504,
+4534,4563,4594,4625,4656,4687,4717,4745,4771,4795,4817,4837,4858,4880,4903,4930,4958,4987,5017,5045,5070,
+5091,5108,5122,5133,5145,5160,5178,5200,5227,5257,5286,5310,5326,5332,5326,5307,5280,5247,5214,5187,5172,
+5172,5189,5222,5267,5320,5374,5423,5462,5488,5499,5497,5484,5466,5446,5428,5416,5410,5411,5417,5426,5435,
+5443,5449,5453,5458,5464,5475,5491,5515,5544,5578,5612,5643,5668,5684,5688,5680,5662,5636,5606,5576,5549,
+5528,5516,5513,5519,5531,5549,5569,5589,5608,5624,5635,5642,5645,5645,5642,5636,5629,5621,5612,5601,5590,
+5579,5566,5553,5539,5525,5510,5496,5482,5469,5457,5448,5440,5435,5432,5431,5431,5432,5432,5433,5432,5431,
+5429,5427,5424,5421,5417,5412,5406,5398,5388,5375,5360,5343,5324,5304,5283,5264,5246,5230,5215,5201,5189,
+5176,5164,5151,5137,5123,5108,5093,5079,5064,5046,5029,5013,4996,4978,4958,4935,4909,4880,4849,4817,4786,
+4755,4726,4699,4674,4650,4628,4605,4582,4558,4534,4510,4487,4465,4446,4429,4415,4402,4391,4381,4369,4356,
+4341,4325,4307,4288,4270,4253,4237,4223,4210,4197,4185,4172,4157,4142,4125,4107,4090,4073,4059,4046,4034,
+4024,4013,4000,3984,3963,3937,3905,3867,3825,3779,3731,3681,3630,3579,3528,3476,3424,3371,3316,3261,3205,
+3150,3097,3046,3000,2957,2919,2886,2856,2830,2805,2782,2759,2737,2714,2691,2669,2647,2625,2604,2584,2563,
+2542,2519,2495,2470,2442,2413,2382,2350,2319,2288,2258,2229,2201,2174,2147,2120,2091,2061,2029,1995,1959,
+1922,1885,1849,1814,1783,1755,1732,1712,1696,1683,1672,1663,1655,1647,1639,1629,1619,1608,1597,1584,1571,
+1557,1542,1527,1510,1493,1474,1454,1431,1406,1379,1349,1316,1282,1245,1207,1170,1133,1097,1065,1035,1008,
+985,964,946,930,914,899,885,871,858,846,835,826,818,811,805,799,793,785,776,765,752,
+739,724,710,695,680,664,647,627,605,579,550,517,483,448,414,382,352,327,306,287,271,
+257,242,227,212,195,179,163,148,136,126,120,114,110,106,100,91,78,62,43,21,-1,
+-25,-49,-71,-93,-113,-134,-154,-175,-198,-222,-247,-273,-299,-324,-347,-368,-388,-405,-421,-436,-452,
+-468,-486,-505,-525,-545,-565,-584,-601,-615,-627,-635,-641,-646,-648,-651,-653,-657,-661,-666,-673,-681,
+-689,-699,-709,-720,-730,-742,-753,-763,-774,-784,-794,-803,-812,-822,-831,-842,-854,-866,-880,-894,-908,
+-921,-933,-943,-950,-954,-956,-956,-954,-951,-948,-945,-942,-939,-935,-931,-925,-918,-911,-903,-896,-892,
+-891,-894,-902,-916,-934,-956,-980,-1005,-1028,-1050,-1069,-1084,-1097,-1106,-1115,-1122,-1130,-1138,-1148,-1159,-1170,
+-1183,-1195,-1206,-1217,-1226,-1235,-1243,-1251,-1260,-1270,-1281,-1292,-1305,-1318,-1331,-1343,-1353,-1363,-1370,-1376,-1380,
+-1383,-1386,-1388,-1390,-1392,-1393,-1394,-1395,-1394,-1392,-1390,-1386,-1383,-1380,-1377,-1376,-1377,-1378,-1381,-1386,-1390,
+-1394,-1398,-1401,-1403,-1404,-1404,-1403,-1402,-1400,-1397,-1393,-1388,-1383,-1375,-1367,-1358,-1348,-1338,-1329,-1320,-1313,
+-1306,-1299,-1292,-1284,-1274,-1262,-1248,-1233,-1219,-1206,-1196,-1191,-1193,-1200,-1213,-1230,-1250,-1270,-1288,-1302,-1310,
+-1312,-1307,-1297,-1282,-1264,-1245,-1225,-1206,-1188,-1171,-1154,-1138,-1121,-1103,-1085,-1067,-1048,-1030,-1012,-996,-981,
+-968,-956,-947,-940,-935,-934,-936,-941,-949,-960,-974,-989,-1004,-1018,-1030,-1038,-1043,-1045,-1042,-1036,-1028,
+-1019,-1009,-1000,-992,-985,-980,-977,-975,-974,-974,-973,-973,-971,-969,-965,-960,-954,-946,-938,-928,-918,
+-907,-896,-885,-873,-861,-848,-834,-820,-805,-790,-774,-758,-743,-729,-716,-704,-694,-685,-677,-670,-664,
+-660,-657,-655,-656,-658,-662,-668,-676,-684,-692,-701,-708,-714,-719,-722,-724,-725,-726,-726,-725,-724,
+-722,-719,-715,-708,-700,-689,-676,-661,-645,-628,-610,-592,-575,-559,-543,-529,-515,-502,-491,-479,-468,
+-458,-447,-436,-425,-414,-403,-393,-382,-371,-361,-351,-341,-332,-322,-313,-303,-293,-282,-270,-257,-245,
+-232,-220,-208,-197,-188,-180,-173,-168,-163,-160,-156,-153,-150,-147,-143,-138,-133,-127,-121,-113,-104,
+-94,-83,-70,-57,-43,-29,-15,-2,9,20,31,40,49,57,66,75,84,93,102,109,115,
+120,122,121,119,115,111,106,102,99,98,99,101,105,111,116,123,129,135,140,146,151,
+157,162,167,171,175,178,179,180,180,180,180,181,184,189,196,205,215,226,236,245,254,
+261,267,273,279,287,297,309,322,336,350,361,369,373,371,365,353,339,323,308,296,287,
+283,284,289,296,305,314,322,327,330,330,329,327,324,323,323,324,325,326,326,324,318,
+310,299,286,272,258,245,234,227,223,223,226,231,238,245,253,261,268,275,281,285,289,
+291,291,290,286,282,277,271,266,262,260,261,263,268,273,278,282,284,282,276,265,251,
+234,215,195,176,158,143,130,119,111,105,100,95,91,87,84,81,78,77,76,77,78,
+81,84,87,91,95,100,104,108,112,116,119,122,124,125,125,123,119,114,108,101,94,
+86,79,72,66,59,53,46,39,31,23,16,8,2,-2,-6,-7,-6,-4,0,3,6,
+7,6,2,-5,-15,-29,-44,-60,-75,-88,-99,-106,-110,-110,-107,-102,-96,-91,-87,-86,-88,
+-93,-101,-112,-124,-137,-150,-162,-172,-181,-189,-195,-199,-203,-207,-212,-216,-222,-229,-238,-249,-261,
+-275,-291,-309,-328,-348,-368,-389,-408,-427,-445,-461,-476,-489,-500,-511,-520,-527,-532,-535,-534,-530,
+-522,-511,-497,-481,-465,-449,-437,-429,-426,-429,-439,-455,-476,-501,-529,-556,-584,-609,-632,-652,-668,
+-681,-692,-700,-706,-710,-713,-714,-714,-713,-710,-706,-699,-691,-681,-668,-655,-639,-623,-607,-590,-575,
+-561,-548,-537,-527,-517,-508,-498,-487,-474,-459,-443,-425,-407,-390,-374,-363,-355,-354,-360,-373,-394,
+-422,-458,-501,-549,-601,-656,-713,-770,-824,-876,-923,-965,-1003,-1035,-1062,-1085,-1105,-1122,-1137,-1149,-1160,
+-1169,-1175,-1179,-1180,-1179,-1176,-1171,-1167,-1164,-1163,-1166,-1172,-1183,-1199,-1218,-1240,-1263,-1287,-1311,-1334,-1355,
+-1374,-1391,-1407,-1423,-1438,-1454,-1469,-1485,-1501,-1518,-1533,-1549,-1563,-1577,-1590,-1603,-1615,-1628,-1639,-1651,-1662,
+-1672,-1681,-1689,-1694,-1699,-1703,-1707,-1712,-1721,-1733,-1751,-1774,-1804,-1840,-1882,-1927,-1976,-2026,-2076,-2123,-2167,
+-2207,-2242,-2272,-2297,-2318,-2334,-2348,-2358,-2367,-2374,-2379,-2383,-2386,-2388,-2390,-2392,-2395,-2399,-2404,-2411,-2421,
+-2432,-2446,-2460,-2475,-2489,-2502,-2512,-2518,-2521,-2520,-2514,-2505,-2494,-2480,-2463,-2446,-2427,-2406,-2385,-2361,-2337,
+-2311,-2285,-2260,-2236,-2214,-2195,-2180,-2167,-2156,-2146,-2136,-2122,-2104,-2081,-2053,-2021,-1986,-1950,-1917,-1888,-1867,
+-1855,-1853,-1861,-1876,-1899,-1924,-1951,-1975,-1995,-2009,-2017,-2019,-2014,-2005,-1992,-1977,-1961,-1945,-1929,-1913,-1897,
+-1881,-1865,-1848,-1830,-1812,-1794,-1776,-1757,-1740,-1723,-1707,-1693,-1679,-1666,-1653,-1640,-1626,-1610,-1593,-1573,-1551,
+-1527,-1501,-1473,-1444,-1414,-1385,-1356,-1327,-1299,-1271,-1243,-1214,-1183,-1151,-1116,-1079,-1040,-1000,-958,-915,-871,
+-827,-781,-736,-689,-641,-593,-544,-495,-447,-400,-356,-314,-275,-238,-204,-170,-136,-101,-65,-26,14,
+56,97,137,173,205,231,250,265,275,284,294,308,328,357,397,446,506,573,645,720,793,
+862,926,982,1030,1072,1109,1142,1174,1207,1242,1281,1322,1366,1412,1459,1505,1550,1594,1636,1678,1720,
+1764,1810,1860,1912,1968,2027,2086,2146,2205,2262,2315,2365,2411,2452,2489,2522,2552,2579,2603,2625,2646,
+2667,2687,2707,2727,2749,2770,2791,2811,2829,2843,2853,2857,2855,2849,2838,2824,2810,2798,2791,2791,2799,
+2816,2844,2880,2924,2974,3027,3081,3135,3187,3235,3279,3320,3358,3394,3428,3463,3497,3533,3569,3605,3640,
+3674,3706,3736,3763,3786,3808,3827,3845,3863,3880,3898,3918,3939,3961,3984,4007,4031,4056,4080,4106,4132,
+4160,4190,4222,4255,4291,4328,4366,4404,4441,4477,4511,4543,4574,4604,4634,4663,4692,4721,4749,4777,4804,
+4829,4854,4878,4902,4927,4954,4983,5014,5045,5077,5107,5134,5155,5172,5183,5190,5195,5202,5213,5229,5253,
+5284,5320,5357,5392,5419,5436,5439,5430,5409,5380,5350,5323,5305,5299,5307,5328,5359,5393,5425,5450,5464,
+5464,5451,5428,5400,5371,5348,5335,5334,5345,5367,5396,5428,5458,5485,5505,5520,5531,5540,5550,5564,5582,
+5604,5629,5654,5676,5690,5696,5691,5678,5657,5632,5606,5584,5569,5561,5563,5573,5589,5609,5630,5649,5666,
+5679,5688,5694,5697,5699,5700,5701,5702,5703,5704,5704,5702,5698,5691,5681,5668,5653,5636,5618,5599,5582,
+5566,5552,5540,5531,5525,5520,5517,5513,5509,5504,5497,5489,5479,5468,5457,5446,5436,5427,5419,5412,5404,
+5395,5384,5370,5355,5337,5319,5300,5281,5263,5246,5231,5217,5203,5188,5173,5156,5138,5119,5100,5081,5063,
+5046,5005,4987,4970,4953,4935,4915,4893,4868,4840,4811,4780,4750,4722,4695,4672,4651,4632,4613,4595,4577,
+4557,4535,4513,4491,4470,4450,4432,4417,4403,4392,4381,4370,4359,4346,4331,4316,4299,4282,4265,4249,4233,
+4218,4204,4189,4172,4155,4136,4115,4094,4073,4052,4033,4016,4000,3986,3973,3959,3943,3924,3901,3873,3841,
+3804,3763,3720,3673,3625,3576,3526,3475,3423,3371,3317,3263,3210,3157,3106,3058,3014,2975,2940,2910,2884,
+2862,2843,2826,2809,2792,2773,2752,2728,2702,2673,2643,2611,2578,2545,2512,2480,2448,2418,2389,2361,2333,
+2307,2283,2259,2237,2215,2195,2174,2154,2132,2109,2083,2054,2022,1987,1949,1910,1870,1831,1795,1762,1733,
+1709,1689,1673,1660,1649,1639,1630,1621,1611,1601,1590,1579,1566,1553,1540,1525,1509,1491,1472,1450,1427,
+1401,1374,1344,1313,1280,1246,1210,1175,1140,1106,1073,1043,1016,992,971,953,938,925,913,902,891,
+881,871,861,851,843,834,826,818,810,801,790,779,765,750,734,716,698,678,656,634,609,
+582,554,523,492,460,428,399,372,348,327,309,293,279,265,250,234,217,200,182,165,149,
+136,125,117,110,104,97,89,79,66,51,34,16,-2,-19,-36,-52,-66,-80,-95,-110,-128,
+-149,-172,-197,-223,-250,-277,-302,-325,-347,-367,-386,-406,-426,-448,-472,-498,-525,-554,-581,-607,-631,
+-650,-666,-677,-685,-689,-692,-693,-695,-697,-700,-705,-711,-718,-726,-734,-743,-752,-761,-770,-779,-789,
+-798,-808,-818,-827,-836,-845,-854,-864,-874,-884,-896,-909,-923,-936,-950,-962,-972,-980,-985,-988,-988,
+-987,-984,-981,-977,-973,-969,-965,-960,-955,-950,-944,-939,-935,-934,-935,-940,-949,-962,-978,-996,-1016,
+-1036,-1055,-1073,-1089,-1103,-1116,-1128,-1140,-1153,-1166,-1180,-1194,-1210,-1225,-1240,-1253,-1266,-1277,-1287,-1297,-1305,
+-1314,-1323,-1333,-1343,-1354,-1365,-1375,-1386,-1395,-1403,-1409,-1414,-1417,-1419,-1420,-1421,-1421,-1420,-1419,-1417,-1414,
+-1411,-1406,-1402,-1397,-1392,-1390,-1389,-1391,-1396,-1403,-1413,-1425,-1437,-1449,-1460,-1468,-1474,-1476,-1477,-1476,-1473,
+-1470,-1466,-1462,-1457,-1452,-1445,-1437,-1427,-1416,-1404,-1391,-1379,-1368,-1358,-1350,-1342,-1334,-1326,-1315,-1302,-1287,
+-1269,-1250,-1231,-1215,-1202,-1194,-1193,-1197,-1206,-1219,-1235,-1250,-1263,-1273,-1279,-1280,-1276,-1267,-1255,-1240,-1223,
+-1204,-1184,-1162,-1139,-1115,-1090,-1065,-1041,-1017,-994,-973,-955,-938,-923,-911,-902,-894,-890,-888,-889,-894,
+-902,-913,-927,-943,-959,-976,-991,-1005,-1017,-1026,-1032,-1035,-1036,-1035,-1032,-1028,-1022,-1016,-1009,-1003,-996,
+-991,-985,-981,-977,-974,-971,-967,-962,-956,-948,-939,-927,-914,-900,-884,-869,-853,-838,-823,-808,-793,
+-778,-764,-750,-737,-725,-714,-705,-696,-689,-684,-680,-677,-675,-675,-676,-679,-683,-689,-697,-707,-717,
+-728,-740,-751,-760,-769,-775,-780,-783,-784,-783,-781,-776,-770,-761,-751,-739,-725,-710,-694,-677,-659,
+-642,-625,-608,-592,-575,-559,-543,-527,-511,-496,-481,-467,-454,-441,-429,-418,-408,-398,-388,-378,-369,
+-359,-349,-339,-329,-320,-310,-300,-289,-278,-267,-255,-242,-229,-217,-205,-193,-183,-174,-166,-159,-153,
+-148,-144,-140,-136,-133,-130,-126,-123,-119,-115,-110,-103,-95,-85,-72,-57,-41,-24,-7,9,25,
+39,51,62,71,78,86,93,101,110,119,129,137,144,149,151,150,146,140,133,124,117,
+111,108,107,109,113,119,126,132,138,142,146,149,151,154,157,160,164,169,173,178,181,
+184,186,188,189,190,191,194,198,203,209,216,224,232,240,249,258,268,279,291,304,318,
+331,343,353,360,362,360,355,346,335,323,311,302,296,293,294,297,303,310,317,323,327,
+330,331,331,330,330,331,332,335,338,340,342,341,338,333,325,314,303,290,278,267,257,
+250,245,242,241,242,244,247,250,254,257,260,263,264,265,264,262,259,254,249,244,239,
+235,233,233,235,238,243,248,252,254,255,252,247,238,227,214,200,185,169,155,141,129,
+118,109,101,95,90,87,84,83,83,84,85,87,89,92,96,99,104,109,115,121,128,
+135,141,147,151,153,152,150,145,138,130,121,111,100,90,80,71,61,52,43,34,25,
+16,8,0,-5,-10,-13,-14,-14,-13,-11,-9,-7,-8,-10,-14,-21,-31,-42,-56,-70,-84,
+-97,-109,-118,-124,-127,-127,-124,-119,-113,-107,-102,-98,-96,-97,-100,-106,-112,-121,-129,-138,-147,
+-155,-164,-172,-181,-190,-199,-209,-218,-228,-237,-245,-253,-260,-267,-273,-280,-288,-297,-307,-318,-331,
+-344,-357,-370,-383,-394,-404,-412,-418,-421,-422,-419,-412,-402,-387,-368,-346,-322,-297,-272,-250,-233,
+-222,-219,-223,-236,-257,-284,-316,-351,-388,-425,-459,-492,-520,-545,-566,-584,-599,-612,-622,-631,-638,
+-643,-647,-648,-647,-643,-637,-627,-614,-598,-580,-561,-540,-519,-499,-479,-460,-443,-426,-410,-394,-379,
+-364,-349,-336,-325,-316,-312,-313,-320,-333,-353,-380,-412,-450,-492,-537,-584,-632,-680,-726,-771,-813,
+-852,-888,-921,-952,-981,-1009,-1035,-1061,-1087,-1112,-1136,-1158,-1178,-1195,-1209,-1219,-1226,-1231,-1235,-1239,-1244,
+-1252,-1263,-1277,-1295,-1316,-1338,-1361,-1382,-1402,-1419,-1433,-1444,-1453,-1461,-1469,-1478,-1487,-1499,-1512,-1526,-1542,
+-1558,-1573,-1587,-1601,-1612,-1623,-1633,-1642,-1652,-1661,-1671,-1681,-1692,-1701,-1710,-1717,-1722,-1726,-1729,-1731,-1734,
+-1740,-1749,-1763,-1783,-1811,-1845,-1887,-1935,-1988,-2045,-2103,-2160,-2215,-2266,-2311,-2350,-2382,-2407,-2426,-2439,-2448,
+-2454,-2457,-2459,-2461,-2462,-2463,-2465,-2467,-2469,-2472,-2475,-2480,-2486,-2494,-2504,-2516,-2530,-2544,-2558,-2570,-2581,
+-2587,-2590,-2588,-2582,-2571,-2557,-2540,-2521,-2501,-2481,-2459,-2438,-2417,-2395,-2375,-2354,-2335,-2317,-2301,-2287,-2275,
+-2263,-2252,-2239,-2223,-2203,-2177,-2147,-2112,-2074,-2036,-1999,-1967,-1943,-1927,-1923,-1929,-1944,-1967,-1995,-2026,-2056,
+-2082,-2104,-2120,-2129,-2133,-2131,-2125,-2116,-2105,-2092,-2079,-2066,-2053,-2039,-2024,-2009,-1992,-1975,-1957,-1939,-1920,
+-1902,-1883,-1865,-1848,-1831,-1814,-1798,-1783,-1767,-1751,-1734,-1715,-1696,-1674,-1651,-1626,-1600,-1572,-1544,-1515,-1486,
+-1458,-1429,-1400,-1372,-1342,-1312,-1280,-1247,-1212,-1175,-1135,-1093,-1048,-1001,-951,-899,-845,-790,-734,-677,-621,
+-566,-511,-459,-408,-358,-310,-262,-214,-167,-119,-71,-23,22,65,105,141,171,196,216,229,239,
+246,251,257,266,280,299,326,361,404,454,510,570,632,695,756,814,869,921,969,1017,1063,
+1110,1158,1209,1261,1314,1367,1420,1471,1519,1566,1610,1652,1695,1738,1785,1835,1889,1947,2009,2073,2138,
+2202,2264,2322,2375,2422,2464,2501,2532,2559,2583,2605,2624,2644,2663,2683,2705,2728,2753,2778,2804,2828,
+2850,2867,2878,2883,2881,2871,2854,2833,2809,2786,2765,2750,2744,2748,2763,2789,2825,2870,2922,2979,3038,
+3097,3155,3210,3262,3311,3356,3398,3438,3477,3514,3551,3586,3620,3654,3686,3716,3745,3772,3798,3822,3844,
+3866,3888,3909,3930,3952,3974,3997,4020,4045,4071,4097,4125,4155,4186,4219,4253,4290,4328,4367,4406,4445,
+4484,4522,4558,4593,4626,4658,4689,4720,4749,4779,4807,4835,4862,4889,4915,4941,4968,4996,5026,5057,5091,
+5125,5158,5189,5216,5237,5253,5262,5267,5270,5273,5279,5290,5309,5335,5365,5398,5429,5454,5469,5473,5464,
+5445,5420,5392,5368,5352,5347,5353,5371,5394,5419,5440,5451,5448,5432,5403,5366,5327,5291,5266,5255,5261,
+5283,5319,5363,5411,5456,5497,5529,5554,5572,5586,5599,5613,5629,5648,5668,5686,5699,5705,5703,5692,5674,
+5653,5631,5613,5601,5599,5605,5621,5642,5665,5689,5710,5725,5734,5738,5738,5735,5731,5729,5729,5732,5737,
+5743,5750,5755,5758,5757,5752,5742,5729,5714,5696,5677,5659,5643,5628,5617,5608,5601,5597,5592,5588,5581,
+5571,5557,5540,5519,5495,5470,5445,5422,5403,5387,5374,5365,5359,5353,5347,5340,5331,5319,5306,5292,5276,
+5261,5245,5230,5214,5197,5179,5160,5139,5116,5092,5069,5046,5025,5005,4958,4940,4924,4908,4891,4873,4853,
+4830,4805,4778,4751,4724,4699,4676,4655,4637,4621,4605,4589,4573,4556,4538,4519,4500,4481,4463,4446,4432,
+4418,4406,4394,4381,4368,4353,4336,4319,4300,4281,4263,4244,4226,4208,4190,4172,4153,4133,4111,4089,4066,
+4044,4023,4003,3986,3970,3957,3944,3932,3918,3902,3882,3858,3829,3795,3757,3715,3670,3623,3574,3523,3472,
+3421,3370,3319,3269,3219,3171,3124,3080,3040,3004,2973,2946,2924,2906,2891,2878,2864,2850,2832,2809,2782,
+2748,2710,2668,2623,2577,2533,2491,2452,2418,2389,2364,2342,2323,2305,2287,2270,2253,2236,2220,2204,2188,
+2171,2154,2134,2111,2084,2053,2017,1977,1934,1889,1845,1803,1764,1729,1698,1672,1650,1632,1617,1603,1591,
+1580,1570,1561,1552,1543,1534,1524,1512,1497,1480,1460,1438,1413,1386,1357,1328,1299,1268,1238,1207,1176,
+1144,1112,1081,1051,1023,998,976,958,943,932,923,915,907,900,892,882,872,862,851,840,829,
+818,807,796,784,771,756,739,720,699,676,651,623,595,565,534,503,473,443,415,390,368,
+348,332,317,305,294,282,270,257,242,227,210,193,177,161,146,131,117,102,87,70,53,
+34,15,-2,-20,-35,-48,-58,-65,-71,-76,-80,-86,-95,-106,-120,-137,-157,-180,-203,-228,-253,
+-279,-305,-331,-358,-387,-418,-451,-486,-522,-558,-593,-626,-655,-680,-700,-715,-724,-730,-732,-733,-733,
+-734,-735,-738,-743,-749,-755,-762,-769,-776,-783,-790,-797,-805,-814,-823,-832,-842,-851,-861,-869,-878,
+-887,-896,-905,-916,-928,-940,-952,-964,-975,-984,-990,-994,-995,-994,-991,-988,-984,-981,-978,-976,-975,
+-974,-974,-973,-972,-972,-973,-975,-979,-985,-994,-1006,-1020,-1036,-1053,-1070,-1088,-1106,-1123,-1139,-1155,-1172,
+-1188,-1205,-1222,-1239,-1256,-1272,-1287,-1302,-1314,-1325,-1335,-1344,-1351,-1358,-1364,-1371,-1377,-1384,-1391,-1397,-1404,
+-1411,-1417,-1422,-1426,-1430,-1432,-1434,-1434,-1434,-1434,-1432,-1430,-1427,-1424,-1420,-1416,-1412,-1409,-1407,-1407,-1409,
+-1414,-1422,-1431,-1443,-1454,-1466,-1475,-1483,-1488,-1491,-1492,-1491,-1489,-1488,-1487,-1487,-1486,-1486,-1484,-1479,-1472,
+-1462,-1450,-1436,-1421,-1407,-1395,-1384,-1376,-1369,-1363,-1357,-1348,-1337,-1322,-1305,-1285,-1265,-1246,-1230,-1219,-1214,
+-1215,-1222,-1232,-1245,-1259,-1270,-1279,-1284,-1284,-1279,-1270,-1256,-1240,-1220,-1198,-1174,-1148,-1121,-1093,-1065,-1037,
+-1009,-982,-957,-934,-913,-895,-880,-869,-861,-857,-857,-861,-869,-881,-896,-912,-931,-949,-967,-984,-999,
+-1012,-1024,-1034,-1043,-1050,-1055,-1059,-1061,-1060,-1056,-1050,-1042,-1033,-1022,-1011,-1002,-993,-985,-978,-972,-966,
+-959,-951,-941,-928,-914,-897,-880,-862,-844,-826,-810,-794,-779,-766,-754,-743,-734,-726,-719,-714,-710,
+-707,-705,-705,-705,-707,-711,-716,-722,-730,-740,-751,-764,-776,-789,-802,-813,-823,-831,-837,-840,-841,
+-839,-833,-825,-813,-798,-780,-760,-739,-717,-696,-675,-657,-641,-627,-615,-603,-591,-579,-565,-550,-532,
+-514,-494,-475,-456,-439,-423,-409,-397,-386,-376,-367,-358,-349,-339,-330,-320,-310,-301,-292,-282,-273,
+-263,-253,-242,-230,-219,-207,-196,-185,-175,-167,-159,-152,-146,-140,-134,-129,-123,-118,-114,-109,-105,
+-102,-98,-93,-87,-80,-69,-56,-40,-23,-3,16,36,54,70,82,93,100,106,111,115,121,
+127,135,143,151,159,165,169,169,166,161,154,146,139,134,131,132,135,141,148,155,162,
+168,171,172,172,170,168,166,165,167,170,175,181,188,195,201,206,210,212,213,214,214,
+216,218,221,226,232,240,249,260,271,284,298,312,325,338,350,360,367,371,373,371,368,
+362,356,349,343,337,333,330,329,329,330,332,334,336,339,341,343,346,349,351,354,356,
+358,358,358,355,352,346,339,331,323,314,306,298,291,285,279,275,270,267,263,260,257,
+254,252,250,248,246,244,242,240,237,235,231,228,225,223,221,220,220,221,222,224,226,
+228,230,230,229,226,222,215,206,195,182,167,152,136,120,105,93,83,75,71,69,70,
+73,77,82,88,93,98,103,108,113,118,124,130,136,142,147,151,153,154,153,149,144,
+137,129,121,112,103,93,84,74,64,54,43,32,22,13,4,-2,-7,-11,-13,-15,-16,
+-17,-18,-21,-25,-30,-36,-44,-52,-60,-69,-77,-84,-90,-96,-101,-104,-107,-109,-110,-111,-111,
+-111,-110,-110,-111,-112,-114,-116,-119,-122,-124,-126,-129,-130,-133,-135,-139,-144,-150,-158,-168,-178,
+-188,-198,-208,-216,-223,-229,-235,-240,-245,-252,-259,-268,-278,-288,-299,-309,-319,-326,-332,-335,-336,
+-335,-332,-326,-318,-308,-294,-278,-260,-239,-216,-193,-172,-152,-136,-125,-121,-123,-132,-148,-169,-196,
+-226,-258,-291,-324,-355,-384,-411,-435,-457,-476,-493,-508,-521,-533,-542,-550,-556,-558,-558,-555,-547,
+-537,-523,-505,-486,-465,-442,-419,-396,-374,-353,-333,-316,-301,-289,-281,-278,-281,-289,-304,-325,-352,
+-384,-421,-461,-503,-546,-589,-630,-670,-708,-743,-776,-806,-834,-861,-886,-910,-934,-958,-983,-1008,-1035,
+-1062,-1089,-1115,-1140,-1162,-1181,-1198,-1212,-1225,-1237,-1249,-1264,-1281,-1302,-1326,-1353,-1380,-1407,-1432,-1453,-1470,
+-1483,-1490,-1494,-1496,-1497,-1499,-1503,-1511,-1521,-1536,-1552,-1571,-1589,-1608,-1625,-1640,-1653,-1664,-1673,-1682,-1690,
+-1698,-1707,-1716,-1726,-1736,-1745,-1753,-1759,-1765,-1768,-1771,-1773,-1776,-1780,-1788,-1801,-1819,-1844,-1877,-1917,-1964,
+-2017,-2074,-2135,-2196,-2255,-2312,-2363,-2408,-2446,-2476,-2500,-2516,-2527,-2534,-2538,-2540,-2540,-2541,-2541,-2542,-2543,
+-2544,-2546,-2548,-2551,-2556,-2563,-2572,-2584,-2597,-2612,-2628,-2642,-2654,-2662,-2666,-2664,-2657,-2645,-2628,-2609,-2589,
+-2568,-2547,-2529,-2511,-2496,-2482,-2468,-2456,-2444,-2432,-2421,-2409,-2398,-2386,-2373,-2358,-2341,-2319,-2293,-2263,-2228,
+-2191,-2153,-2116,-2083,-2056,-2038,-2030,-2031,-2042,-2061,-2086,-2115,-2144,-2173,-2198,-2219,-2235,-2246,-2251,-2252,-2249,
+-2244,-2236,-2227,-2216,-2205,-2192,-2179,-2165,-2151,-2136,-2120,-2103,-2086,-2068,-2049,-2030,-2010,-1989,-1968,-1947,-1926,
+-1905,-1885,-1865,-1845,-1826,-1806,-1785,-1764,-1741,-1717,-1693,-1667,-1641,-1614,-1588,-1561,-1534,-1507,-1480,-1452,-1423,
+-1392,-1358,-1322,-1282,-1239,-1191,-1139,-1084,-1025,-964,-902,-838,-774,-711,-649,-587,-526,-465,-405,-345,-286,
+-227,-170,-115,-63,-16,26,65,98,127,153,176,197,217,237,255,274,292,310,329,349,371,
+395,423,455,490,529,572,618,666,715,766,817,870,924,981,1039,1101,1164,1229,1293,1357,1419,
+1478,1533,1585,1635,1683,1732,1782,1834,1891,1951,2014,2080,2145,2210,2271,2327,2378,2422,2460,2492,2519,
+2543,2563,2582,2601,2620,2640,2662,2686,2712,2739,2766,2793,2818,2839,2856,2867,2870,2866,2855,2837,2814,
+2787,2761,2736,2716,2705,2702,2711,2732,2763,2805,2855,2912,2972,3034,3096,3157,3214,3269,3319,3367,3411,
+3453,3492,3531,3567,3603,3638,3672,3705,3737,3768,3799,3828,3855,3882,3907,3930,3953,3975,3996,4018,4041,
+4066,4092,4120,4150,4181,4214,4248,4284,4319,4356,4392,4429,4465,4502,4538,4574,4609,4644,4679,4713,4746,
+4779,4811,4842,4873,4903,4932,4961,4990,5019,5050,5081,5114,5149,5184,5218,5252,5282,5308,5329,5344,5355,
+5362,5368,5374,5383,5395,5410,5428,5446,5461,5470,5471,5462,5443,5417,5386,5355,5329,5313,5308,5317,5337,
+5364,5393,5418,5435,5439,5429,5407,5376,5341,5309,5285,5275,5279,5298,5329,5368,5411,5453,5491,5523,5549,
+5571,5591,5612,5634,5659,5686,5711,5733,5748,5753,5749,5736,5716,5693,5672,5656,5650,5653,5666,5688,5714,
+5741,5766,5785,5796,5800,5797,5790,5781,5772,5765,5762,5763,5766,5772,5777,5780,5781,5777,5769,5756,5740,
+5722,5702,5683,5664,5649,5636,5627,5622,5619,5617,5615,5611,5603,5590,5570,5544,5513,5477,5440,5403,5370,
+5342,5321,5306,5297,5293,5292,5292,5291,5288,5281,5272,5260,5246,5230,5214,5196,5178,5159,5138,5117,5094,
+5070,5045,5021,4998,4977,4958,4924,4907,4891,4875,4858,4840,4821,4800,4778,4755,4732,4710,4688,4668,4650,
+4632,4616,4600,4584,4568,4552,4536,4519,4503,4487,4472,4458,4445,4432,4418,4404,4389,4372,4353,4333,4313,
+4291,4269,4247,4226,4205,4184,4163,4143,4121,4100,4078,4057,4036,4016,3998,3982,3968,3955,3944,3934,3923,
+3911,3896,3877,3853,3824,3790,3752,3709,3664,3616,3566,3516,3467,3417,3368,3320,3273,3227,3182,3138,3096,
+3057,3022,2991,2964,2943,2926,2912,2900,2889,2875,2857,2833,2802,2764,2719,2670,2618,2566,2517,2473,2437,
+2408,2386,2371,2359,2350,2341,2331,2318,2303,2285,2266,2247,2228,2208,2189,2170,2148,2123,2094,2060,2022,
+1979,1933,1887,1841,1797,1756,1720,1688,1660,1636,1615,1597,1581,1567,1555,1545,1536,1528,1521,1512,1502,
+1489,1472,1452,1429,1404,1376,1348,1320,1293,1266,1240,1213,1186,1158,1128,1098,1068,1039,1011,988,968,
+953,942,934,929,924,918,911,901,890,876,861,846,830,816,802,788,775,762,747,730,712,
+690,667,641,614,586,557,527,499,471,444,419,396,375,357,341,327,315,304,293,283,272,
+261,248,234,218,200,182,161,138,114,89,62,34,7,-19,-44,-66,-85,-99,-109,-115,-117,
+-115,-112,-107,-102,-99,-98,-100,-107,-117,-132,-151,-174,-200,-229,-260,-293,-328,-364,-401,-439,-478,
+-517,-555,-592,-628,-660,-687,-710,-727,-739,-746,-749,-750,-749,-748,-749,-751,-755,-761,-768,-775,-783,
+-790,-798,-804,-811,-818,-826,-835,-845,-855,-865,-875,-884,-893,-901,-909,-916,-925,-933,-943,-952,-962,
+-971,-978,-983,-985,-986,-984,-981,-978,-975,-974,-974,-976,-979,-984,-989,-994,-998,-1003,-1007,-1011,-1017,
+-1023,-1032,-1042,-1055,-1069,-1085,-1102,-1119,-1138,-1156,-1174,-1193,-1211,-1230,-1248,-1265,-1283,-1299,-1314,-1329,-1342,
+-1353,-1362,-1370,-1377,-1382,-1386,-1389,-1392,-1395,-1398,-1401,-1404,-1408,-1413,-1418,-1422,-1426,-1429,-1430,-1431,-1429,
+-1427,-1424,-1420,-1416,-1412,-1408,-1405,-1402,-1399,-1397,-1395,-1393,-1393,-1393,-1394,-1395,-1398,-1401,-1405,-1408,-1410,
+-1413,-1414,-1416,-1419,-1422,-1426,-1433,-1440,-1448,-1456,-1462,-1465,-1464,-1460,-1452,-1440,-1427,-1413,-1401,-1390,-1383,
+-1379,-1377,-1376,-1375,-1372,-1367,-1358,-1346,-1333,-1319,-1306,-1296,-1289,-1287,-1289,-1294,-1301,-1308,-1314,-1316,-1315,
+-1309,-1299,-1285,-1268,-1249,-1229,-1207,-1185,-1163,-1140,-1116,-1091,-1066,-1039,-1013,-986,-959,-934,-910,-889,-872,
+-859,-852,-851,-856,-866,-882,-901,-923,-945,-966,-986,-1004,-1019,-1032,-1043,-1052,-1061,-1070,-1078,-1085,-1091,
+-1094,-1094,-1092,-1086,-1077,-1066,-1053,-1041,-1028,-1017,-1007,-998,-989,-979,-969,-956,-942,-926,-907,-888,-868,
+-848,-828,-811,-795,-781,-770,-761,-755,-751,-748,-748,-749,-750,-753,-756,-759,-763,-767,-772,-779,-787,
+-796,-806,-818,-830,-842,-853,-863,-872,-880,-885,-887,-887,-883,-876,-864,-848,-828,-804,-777,-748,-719,
+-691,-666,-645,-628,-616,-608,-603,-598,-593,-585,-574,-559,-540,-518,-495,-470,-447,-425,-406,-390,-375,
+-363,-352,-341,-330,-320,-309,-299,-289,-279,-270,-262,-254,-247,-239,-230,-221,-211,-201,-191,-181,-173,
+-165,-159,-153,-148,-144,-139,-134,-128,-122,-116,-109,-103,-98,-93,-88,-82,-76,-68,-58,-44,-28,
+-9,11,33,55,75,92,107,118,125,130,133,136,139,143,148,155,162,170,178,183,186,
+187,185,180,175,169,165,162,162,165,171,178,185,193,199,202,203,202,199,195,190,187,
+186,187,190,196,203,211,220,227,233,238,241,243,243,244,245,247,251,257,264,274,285,
+297,311,324,337,350,361,371,379,386,391,394,396,397,396,394,391,386,381,375,369,363,
+357,353,351,350,351,355,360,366,372,378,383,386,387,386,383,378,371,364,357,349,342,
+336,331,326,322,319,315,312,308,303,299,293,287,281,275,269,262,256,251,246,242,239,
+236,234,232,231,230,229,228,227,225,224,223,222,221,221,222,223,223,223,222,218,212,
+203,190,175,156,137,116,97,80,66,56,50,48,50,55,62,70,79,87,95,102,108,
+114,119,123,126,129,131,132,132,131,129,126,123,119,116,112,109,105,101,97,92,85,
+77,68,58,47,37,27,18,11,5,1,-2,-5,-9,-14,-21,-30,-40,-51,-62,-73,-82,
+-90,-95,-97,-98,-97,-95,-92,-90,-89,-89,-90,-93,-98,-103,-109,-115,-121,-126,-130,-133,-135,
+-135,-133,-129,-125,-119,-113,-107,-103,-100,-100,-102,-106,-112,-120,-129,-139,-149,-159,-168,-177,-186,
+-195,-205,-214,-225,-235,-246,-255,-264,-271,-276,-279,-280,-279,-277,-274,-271,-267,-262,-258,-252,-246,
+-238,-229,-218,-206,-193,-179,-167,-156,-148,-143,-143,-146,-155,-167,-183,-203,-224,-248,-271,-295,-318,
+-339,-358,-376,-391,-405,-417,-429,-439,-447,-455,-460,-464,-465,-463,-457,-448,-436,-422,-404,-386,-367,
+-347,-329,-314,-301,-293,-290,-293,-302,-318,-340,-369,-403,-441,-482,-523,-564,-603,-639,-672,-702,-729,
+-753,-776,-798,-818,-839,-859,-879,-899,-919,-940,-961,-984,-1006,-1030,-1053,-1076,-1098,-1119,-1138,-1156,-1173,
+-1191,-1209,-1229,-1252,-1278,-1307,-1338,-1369,-1400,-1427,-1449,-1466,-1477,-1483,-1485,-1485,-1486,-1488,-1494,-1504,-1520,
+-1539,-1562,-1588,-1614,-1639,-1662,-1682,-1699,-1713,-1725,-1735,-1744,-1752,-1759,-1766,-1773,-1780,-1787,-1793,-1798,-1802,
+-1805,-1808,-1811,-1814,-1818,-1825,-1834,-1848,-1868,-1893,-1925,-1963,-2008,-2059,-2114,-2173,-2234,-2294,-2352,-2407,-2457,
+-2500,-2537,-2566,-2589,-2605,-2617,-2623,-2627,-2629,-2629,-2628,-2628,-2628,-2628,-2629,-2631,-2635,-2640,-2648,-2658,-2670,
+-2684,-2699,-2713,-2726,-2736,-2742,-2743,-2738,-2728,-2713,-2694,-2673,-2653,-2633,-2616,-2601,-2590,-2581,-2575,-2570,-2565,
+-2561,-2555,-2548,-2540,-2531,-2519,-2506,-2491,-2473,-2452,-2427,-2399,-2368,-2334,-2299,-2266,-2235,-2208,-2188,-2176,-2172,
+-2176,-2188,-2206,-2228,-2252,-2277,-2301,-2322,-2341,-2355,-2366,-2372,-2376,-2377,-2374,-2370,-2364,-2357,-2348,-2338,-2328,
+-2317,-2305,-2291,-2277,-2261,-2244,-2224,-2202,-2178,-2153,-2125,-2097,-2070,-2042,-2016,-1992,-1970,-1949,-1929,-1911,-1892,
+-1874,-1855,-1835,-1814,-1792,-1768,-1744,-1720,-1695,-1669,-1643,-1617,-1589,-1561,-1530,-1496,-1459,-1417,-1372,-1322,-1268,
+-1210,-1148,-1085,-1019,-953,-886,-819,-751,-683,-615,-546,-477,-408,-341,-277,-216,-161,-111,-68,-30,3,
+35,65,96,128,162,198,234,270,303,333,358,378,395,409,423,437,454,474,499,528,561,
+598,639,684,732,785,842,904,971,1042,1117,1193,1269,1344,1417,1485,1549,1610,1668,1724,1781,1839,
+1900,1962,2025,2089,2152,2212,2267,2317,2361,2399,2431,2459,2483,2505,2527,2549,2572,2597,2624,2652,2681,
+2709,2738,2764,2788,2808,2824,2834,2840,2839,2832,2820,2802,2781,2757,2733,2711,2693,2682,2679,2686,2703,
+2731,2769,2816,2869,2926,2987,3048,3108,3166,3222,3275,3326,3374,3420,3465,3508,3550,3590,3630,3668,3705,
+3741,3775,3808,3840,3870,3898,3924,3949,3972,3994,4016,4038,4063,4089,4117,4148,4181,4215,4250,4285,4319,
+4353,4385,4417,4449,4480,4513,4546,4580,4615,4651,4687,4723,4758,4793,4827,4861,4895,4928,4961,4995,5028,
+5062,5096,5130,5165,5200,5234,5269,5303,5335,5366,5394,5418,5439,5457,5471,5484,5495,5505,5515,5523,5529,
+5530,5526,5514,5493,5465,5430,5392,5355,5322,5300,5290,5294,5311,5339,5374,5409,5440,5463,5475,5475,5465,
+5448,5428,5410,5398,5393,5397,5408,5425,5445,5467,5488,5508,5528,5551,5577,5608,5644,5685,5727,5766,5799,
+5823,5834,5833,5819,5798,5772,5747,5729,5719,5719,5730,5750,5775,5800,5824,5842,5853,5857,5854,5847,5838,
+5828,5820,5815,5812,5811,5811,5810,5808,5802,5793,5779,5762,5742,5720,5696,5673,5651,5632,5616,5605,5598,
+5595,5593,5592,5588,5579,5564,5541,5510,5473,5430,5386,5343,5304,5272,5249,5234,5228,5227,5231,5236,5239,
+5240,5236,5228,5215,5200,5183,5164,5145,5125,5106,5086,5066,5046,5024,5003,4982,4962,4942,4924,4905,4887,
+4869,4851,4833,4815,4797,4778,4759,4740,4722,4704,4686,4669,4652,4635,4617,4600,4582,4565,4547,4531,4515,
+4499,4485,4471,4458,4444,4429,4414,4397,4379,4359,4339,4318,4296,4274,4252,4230,4208,4186,4164,4141,4119,
+4097,4075,4054,4034,4015,3998,3983,3970,3958,3948,3938,3928,3917,3904,3887,3866,3841,3812,3778,3740,3698,
+3654,3608,3562,3515,3468,3421,3375,3328,3282,3236,3190,3144,3099,3056,3016,2981,2950,2924,2904,2888,2875,
+2863,2850,2833,2810,2780,2743,2699,2651,2600,2551,2506,2468,2439,2420,2410,2406,2407,2409,2409,2405,2394,
+2378,2356,2330,2301,2272,2243,2215,2188,2161,2133,2103,2071,2035,1996,1955,1913,1872,1832,1795,1761,1730,
+1702,1677,1653,1631,1611,1592,1574,1559,1545,1534,1523,1513,1501,1488,1472,1453,1432,1409,1384,1360,1336,
+1313,1291,1269,1246,1223,1197,1169,1138,1107,1075,1045,1019,996,979,966,958,952,947,941,934,923,
+909,893,874,853,833,814,796,778,762,746,730,713,694,674,652,629,604,580,555,530,506,
+482,459,437,414,393,373,354,336,320,305,292,280,269,258,247,234,220,203,184,161,135,
+107,76,43,10,-22,-53,-81,-106,-127,-143,-154,-161,-163,-162,-157,-150,-142,-133,-126,-121,-120,
+-123,-131,-145,-164,-189,-218,-250,-285,-320,-356,-392,-427,-462,-497,-531,-565,-598,-630,-658,-683,-703,
+-718,-728,-733,-735,-736,-736,-737,-740,-746,-754,-764,-776,-788,-799,-810,-819,-827,-835,-843,-852,-860,
+-870,-879,-889,-898,-906,-914,-920,-927,-934,-941,-948,-956,-964,-971,-977,-981,-984,-984,-983,-981,-979,
+-979,-980,-983,-988,-995,-1004,-1013,-1022,-1030,-1038,-1045,-1052,-1059,-1067,-1076,-1087,-1099,-1114,-1129,-1145,-1162,
+-1179,-1197,-1215,-1232,-1250,-1267,-1284,-1301,-1317,-1332,-1347,-1359,-1370,-1380,-1388,-1394,-1399,-1402,-1404,-1406,-1407,
+-1409,-1410,-1413,-1416,-1419,-1424,-1428,-1432,-1434,-1435,-1433,-1428,-1422,-1413,-1403,-1393,-1383,-1375,-1368,-1363,-1359,
+-1356,-1353,-1350,-1346,-1340,-1333,-1325,-1316,-1309,-1302,-1297,-1295,-1295,-1298,-1303,-1311,-1321,-1333,-1347,-1362,-1377,
+-1394,-1409,-1422,-1433,-1440,-1443,-1442,-1438,-1430,-1422,-1413,-1407,-1402,-1401,-1403,-1406,-1411,-1415,-1418,-1418,-1416,
+-1412,-1407,-1401,-1397,-1393,-1392,-1393,-1394,-1395,-1395,-1392,-1385,-1373,-1358,-1339,-1317,-1293,-1270,-1247,-1225,-1205,
+-1186,-1169,-1152,-1134,-1116,-1096,-1073,-1049,-1022,-994,-965,-938,-913,-893,-878,-870,-871,-878,-893,-913,-937,
+-962,-986,-1009,-1029,-1044,-1057,-1067,-1075,-1083,-1090,-1098,-1105,-1112,-1118,-1122,-1123,-1120,-1115,-1107,-1096,-1085,
+-1074,-1063,-1052,-1041,-1030,-1019,-1007,-993,-977,-959,-939,-918,-897,-876,-856,-838,-822,-809,-799,-792,-789,
+-789,-792,-796,-803,-810,-818,-825,-832,-838,-844,-850,-857,-865,-873,-882,-891,-901,-909,-917,-923,-927,
+-930,-929,-926,-920,-910,-896,-878,-854,-827,-795,-761,-726,-692,-661,-635,-616,-602,-595,-593,-593,-593,
+-592,-587,-576,-560,-540,-515,-489,-462,-435,-411,-390,-370,-354,-338,-324,-310,-296,-282,-269,-256,-245,
+-234,-225,-217,-210,-202,-194,-185,-176,-166,-156,-147,-140,-133,-129,-127,-127,-127,-128,-127,-126,-123,
+-119,-113,-107,-100,-94,-87,-81,-74,-67,-58,-47,-33,-17,1,23,46,68,90,110,127,140,
+150,157,162,164,167,169,173,178,183,190,197,203,208,211,212,210,207,202,198,194,192,
+191,193,197,202,207,213,217,219,220,220,218,216,214,213,213,216,221,227,235,243,251,
+259,265,270,274,277,279,281,284,287,292,299,308,318,329,341,353,364,374,383,390,395,
+400,404,406,409,411,412,411,410,407,401,395,387,378,371,365,362,361,365,371,379,389,
+399,407,413,416,415,412,405,397,388,379,370,363,356,351,348,345,342,340,338,335,333,
+330,327,324,320,316,311,306,300,294,287,280,273,267,262,258,254,252,251,250,249,248,
+246,243,241,238,235,232,230,228,227,225,223,219,212,203,190,174,155,134,113,94,76,
+61,50,43,40,41,45,52,60,69,78,87,95,103,109,114,117,119,118,116,113,109,
+104,99,95,92,90,90,91,93,95,97,98,97,95,90,84,75,66,56,46,37,30,
+23,17,12,7,1,-5,-14,-24,-36,-49,-62,-74,-85,-94,-99,-102,-102,-100,-97,-92,-89,
+-86,-84,-84,-86,-90,-95,-101,-107,-112,-117,-121,-123,-123,-122,-118,-112,-105,-97,-88,-79,-71,
+-63,-58,-54,-53,-54,-58,-64,-72,-81,-91,-102,-114,-126,-139,-151,-163,-174,-185,-196,-205,-214,
+-221,-226,-230,-232,-233,-233,-233,-232,-232,-232,-233,-235,-237,-239,-241,-243,-242,-241,-237,-232,-225,
+-216,-208,-200,-193,-189,-188,-191,-197,-207,-220,-235,-251,-268,-284,-299,-312,-324,-335,-345,-354,-364,
+-373,-383,-393,-402,-410,-415,-418,-417,-413,-407,-398,-387,-377,-367,-358,-353,-352,-355,-363,-376,-395,
+-418,-446,-478,-512,-546,-581,-613,-643,-669,-693,-713,-731,-749,-765,-782,-801,-819,-839,-859,-878,-898,
+-916,-933,-950,-967,-984,-1002,-1020,-1040,-1059,-1079,-1098,-1117,-1136,-1156,-1177,-1200,-1225,-1252,-1280,-1309,-1338,
+-1363,-1386,-1403,-1416,-1424,-1429,-1433,-1437,-1444,-1455,-1472,-1494,-1521,-1552,-1584,-1618,-1650,-1679,-1705,-1728,-1746,
+-1762,-1774,-1784,-1792,-1798,-1803,-1807,-1810,-1812,-1813,-1814,-1816,-1818,-1820,-1824,-1829,-1836,-1845,-1856,-1870,-1888,
+-1910,-1937,-1969,-2007,-2050,-2098,-2152,-2209,-2269,-2330,-2390,-2448,-2503,-2553,-2596,-2633,-2663,-2686,-2703,-2714,-2720,
+-2722,-2722,-2720,-2718,-2716,-2715,-2716,-2719,-2723,-2731,-2740,-2751,-2764,-2777,-2789,-2800,-2809,-2813,-2814,-2809,-2800,
+-2786,-2770,-2751,-2732,-2713,-2697,-2685,-2675,-2669,-2666,-2666,-2666,-2667,-2667,-2666,-2663,-2659,-2652,-2643,-2633,-2620,
+-2605,-2587,-2566,-2543,-2518,-2490,-2462,-2434,-2408,-2384,-2365,-2350,-2342,-2339,-2342,-2350,-2362,-2377,-2393,-2410,-2427,
+-2442,-2456,-2467,-2477,-2484,-2488,-2491,-2492,-2490,-2487,-2483,-2478,-2471,-2464,-2455,-2444,-2431,-2416,-2398,-2376,-2352,
+-2324,-2294,-2262,-2229,-2196,-2165,-2136,-2110,-2087,-2067,-2049,-2033,-2019,-2005,-1990,-1974,-1957,-1938,-1918,-1895,-1872,
+-1847,-1821,-1794,-1767,-1739,-1709,-1678,-1645,-1610,-1571,-1529,-1482,-1432,-1378,-1321,-1261,-1200,-1137,-1073,-1008,-941,
+-873,-803,-731,-657,-582,-508,-436,-369,-306,-250,-201,-157,-118,-82,-45,-7,32,76,122,170,216,
+259,297,329,354,373,387,397,407,417,428,443,461,483,509,538,573,614,661,715,778,849,
+926,1009,1095,1182,1267,1348,1425,1497,1564,1628,1690,1752,1815,1878,1943,2007,2070,2131,2187,2238,2283,
+2322,2357,2387,2414,2440,2466,2494,2522,2553,2586,2619,2652,2685,2715,2742,2766,2785,2799,2808,2813,2812,
+2808,2800,2788,2772,2754,2734,2713,2693,2675,2662,2656,2658,2670,2692,2724,2766,2815,2870,2929,2990,3051,
+3110,3169,3225,3279,3332,3384,3434,3484,3531,3578,3622,3665,3706,3744,3780,3814,3846,3877,3905,3932,3958,
+3982,4007,4031,4057,4084,4113,4145,4180,4216,4252,4289,4324,4358,4389,4419,4447,4475,4504,4533,4565,4599,
+4634,4670,4706,4742,4776,4810,4843,4877,4911,4947,4985,5024,5066,5108,5150,5190,5229,5265,5299,5331,5361,
+5391,5420,5449,5476,5503,5528,5551,5570,5587,5601,5612,5620,5625,5625,5622,5612,5596,5573,5544,5511,5476,
+5443,5416,5398,5391,5398,5417,5446,5482,5520,5555,5584,5604,5613,5614,5606,5592,5577,5561,5547,5535,5527,
+5522,5521,5524,5531,5544,5565,5594,5632,5677,5727,5778,5827,5867,5896,5911,5912,5900,5879,5852,5825,5803,
+5789,5785,5791,5805,5824,5846,5867,5885,5897,5903,5904,5901,5895,5888,5881,5874,5867,5862,5856,5849,5840,
+5830,5817,5802,5783,5762,5737,5711,5683,5656,5630,5608,5589,5575,5566,5560,5556,5550,5539,5523,5498,5464,
+5423,5377,5329,5282,5240,5207,5183,5170,5165,5168,5174,5181,5187,5189,5186,5179,5167,5152,5135,5117,5100,
+5083,5067,5050,5034,5017,4999,4981,4962,4943,4924,4905,4883,4864,4846,4828,4811,4794,4778,4762,4747,4732,
+4717,4702,4688,4672,4656,4639,4621,4602,4583,4565,4546,4529,4512,4496,4480,4465,4449,4432,4415,4396,4377,
+4357,4338,4318,4298,4279,4259,4239,4219,4198,4176,4153,4130,4106,4083,4061,4039,4019,4000,3983,3968,3954,
+3941,3929,3916,3904,3890,3874,3855,3834,3809,3781,3749,3715,3678,3639,3599,3557,3514,3471,3427,3382,3335,
+3287,3238,3188,3137,3087,3039,2994,2953,2917,2888,2864,2846,2831,2819,2807,2792,2773,2748,2716,2679,2637,
+2593,2551,2514,2483,2462,2450,2448,2452,2460,2469,2474,2473,2464,2446,2419,2386,2347,2307,2266,2226,2189,
+2154,2121,2089,2058,2026,1993,1959,1926,1893,1862,1833,1805,1780,1756,1732,1708,1684,1660,1635,1611,1588,
+1567,1548,1530,1514,1499,1483,1468,1451,1433,1414,1395,1377,1359,1341,1325,1307,1289,1269,1246,1220,1190,
+1159,1127,1095,1066,1041,1020,1004,992,983,975,967,957,944,928,910,888,866,843,821,800,780,
+761,743,725,707,687,667,646,624,602,580,559,537,516,495,474,453,430,408,386,363,341,
+320,301,283,268,254,241,229,216,203,189,172,153,131,106,79,50,21,-8,-37,-64,-89,
+-111,-131,-147,-159,-169,-175,-179,-179,-177,-174,-169,-165,-163,-164,-170,-180,-195,-216,-240,-267,-296,
+-325,-354,-381,-407,-433,-459,-486,-514,-543,-573,-602,-629,-654,-673,-688,-698,-704,-708,-711,-715,-721,
+-730,-742,-757,-773,-790,-807,-821,-834,-844,-854,-862,-869,-877,-886,-894,-902,-911,-918,-925,-931,-937,
+-943,-950,-957,-965,-974,-982,-989,-995,-999,-1001,-1002,-1003,-1003,-1005,-1008,-1014,-1021,-1030,-1040,-1051,-1061,
+-1070,-1079,-1087,-1094,-1102,-1111,-1121,-1133,-1145,-1159,-1174,-1189,-1204,-1219,-1234,-1249,-1263,-1278,-1293,-1308,-1322,
+-1336,-1350,-1362,-1373,-1382,-1390,-1396,-1401,-1405,-1408,-1411,-1414,-1418,-1421,-1426,-1430,-1435,-1441,-1446,-1450,-1453,
+-1453,-1451,-1445,-1436,-1423,-1409,-1394,-1378,-1364,-1352,-1343,-1337,-1333,-1330,-1326,-1321,-1314,-1303,-1290,-1274,-1258,
+-1242,-1230,-1221,-1218,-1221,-1229,-1242,-1260,-1279,-1300,-1321,-1342,-1361,-1379,-1396,-1411,-1425,-1436,-1445,-1451,-1455,
+-1457,-1458,-1458,-1458,-1459,-1461,-1466,-1472,-1479,-1486,-1493,-1498,-1501,-1501,-1500,-1498,-1496,-1494,-1493,-1491,-1490,
+-1488,-1483,-1475,-1463,-1446,-1425,-1400,-1372,-1343,-1314,-1286,-1261,-1239,-1220,-1203,-1189,-1176,-1162,-1148,-1131,-1111,
+-1088,-1062,-1034,-1005,-977,-952,-931,-917,-910,-912,-921,-937,-958,-981,-1005,-1028,-1048,-1065,-1079,-1089,-1098,
+-1105,-1112,-1119,-1126,-1134,-1140,-1144,-1147,-1146,-1143,-1138,-1131,-1123,-1114,-1105,-1096,-1087,-1077,-1067,-1055,-1041,
+-1026,-1009,-991,-971,-951,-931,-911,-893,-877,-863,-852,-845,-841,-842,-846,-853,-862,-873,-884,-895,-906,
+-915,-924,-932,-940,-948,-956,-964,-971,-977,-981,-983,-983,-979,-973,-963,-950,-934,-915,-892,-865,-834,
+-800,-764,-726,-690,-657,-628,-606,-591,-583,-581,-582,-586,-588,-587,-581,-569,-552,-530,-504,-477,-450,
+-424,-400,-377,-357,-338,-319,-301,-282,-264,-246,-229,-213,-199,-187,-176,-166,-156,-145,-134,-123,-111,
+-98,-87,-78,-72,-68,-67,-70,-74,-80,-85,-90,-93,-95,-94,-91,-87,-81,-75,-69,-62,-55,
+-47,-37,-26,-13,2,19,39,60,82,103,123,141,157,170,181,189,195,199,203,206,210,
+214,218,223,228,232,236,238,238,237,235,231,227,223,220,218,217,217,219,221,224,227,
+230,233,235,237,239,242,245,249,255,261,269,276,285,292,300,306,311,315,318,320,322,
+324,327,332,337,345,354,364,374,384,394,402,409,414,418,421,424,426,427,428,428,426,
+422,417,409,401,393,386,381,379,380,385,394,404,415,425,433,437,438,435,430,422,413,
+404,397,390,386,382,380,378,376,373,371,368,365,363,362,361,361,361,361,361,360,358,
+353,347,340,331,322,313,304,297,291,287,284,281,279,276,273,269,265,260,254,248,243,
+237,231,225,218,209,198,184,169,152,134,116,99,83,70,60,52,48,46,47,51,56,
+62,70,79,87,96,103,109,113,115,114,110,105,98,91,84,78,74,72,73,75,79,
+84,89,93,96,97,96,93,87,80,72,62,53,44,36,29,23,18,14,9,4,0,
+-7,-15,-24,-33,-43,-52,-60,-66,-71,-74,-75,-75,-74,-72,-70,-68,-67,-66,-66,-66,-67,
+-68,-68,-68,-67,-66,-64,-61,-58,-54,-49,-44,-38,-32,-27,-21,-16,-12,-10,-9,-10,-13,
+-19,-27,-37,-48,-61,-74,-86,-98,-109,-119,-128,-137,-145,-152,-158,-164,-168,-171,-172,-171,-169,
+-165,-160,-155,-151,-148,-148,-149,-153,-158,-164,-171,-176,-181,-183,-184,-184,-183,-182,-181,-183,-187,
+-193,-202,-212,-224,-237,-250,-262,-273,-284,-294,-305,-317,-330,-345,-360,-376,-391,-404,-414,-421,-424,
+-424,-421,-417,-413,-410,-410,-413,-420,-432,-447,-466,-488,-512,-537,-562,-586,-610,-631,-650,-667,-681,
+-693,-704,-715,-727,-740,-756,-774,-795,-817,-841,-863,-885,-904,-920,-935,-948,-960,-973,-987,-1003,-1020,
+-1038,-1057,-1076,-1095,-1113,-1130,-1146,-1163,-1181,-1200,-1220,-1240,-1260,-1279,-1296,-1311,-1323,-1334,-1344,-1356,-1370,
+-1389,-1412,-1441,-1474,-1510,-1549,-1587,-1624,-1658,-1689,-1715,-1738,-1757,-1772,-1785,-1794,-1801,-1805,-1807,-1807,-1805,
+-1803,-1801,-1799,-1800,-1803,-1809,-1818,-1830,-1844,-1860,-1877,-1897,-1918,-1942,-1969,-2000,-2037,-2078,-2125,-2177,-2234,
+-2295,-2357,-2421,-2483,-2543,-2598,-2648,-2692,-2728,-2756,-2777,-2792,-2800,-2804,-2804,-2802,-2800,-2798,-2797,-2799,-2803,
+-2810,-2819,-2830,-2841,-2853,-2864,-2872,-2878,-2880,-2879,-2873,-2864,-2852,-2837,-2821,-2804,-2789,-2776,-2765,-2758,-2753,
+-2752,-2752,-2754,-2757,-2759,-2762,-2763,-2763,-2762,-2759,-2754,-2748,-2740,-2730,-2718,-2704,-2688,-2671,-2651,-2631,-2610,
+-2589,-2570,-2552,-2536,-2524,-2514,-2508,-2504,-2504,-2506,-2510,-2516,-2523,-2530,-2538,-2545,-2551,-2557,-2561,-2564,-2567,
+-2568,-2568,-2566,-2564,-2561,-2557,-2551,-2543,-2532,-2518,-2501,-2480,-2454,-2425,-2393,-2359,-2324,-2289,-2256,-2226,-2200,
+-2178,-2160,-2146,-2134,-2124,-2115,-2105,-2094,-2081,-2066,-2048,-2028,-2006,-1982,-1956,-1930,-1902,-1873,-1844,-1813,-1781,
+-1748,-1711,-1672,-1630,-1585,-1536,-1485,-1431,-1375,-1319,-1261,-1201,-1139,-1075,-1007,-936,-861,-783,-703,-624,-547,
+-474,-408,-348,-294,-245,-201,-157,-114,-69,-21,28,78,128,174,217,254,284,309,328,344,356,
+367,378,388,399,412,428,448,475,510,555,612,681,761,849,943,1039,1133,1222,1304,1379,1447,
+1509,1568,1626,1684,1745,1808,1873,1938,2002,2064,2121,2172,2219,2261,2299,2335,2368,2402,2436,2470,2505,
+2541,2577,2613,2647,2678,2707,2733,2754,2770,2782,2789,2792,2791,2786,2777,2765,2750,2731,2710,2687,2662,
+2639,2618,2603,2596,2599,2614,2641,2680,2730,2788,2851,2918,2986,3052,3117,3179,3238,3295,3350,3404,3456,
+3507,3556,3603,3648,3690,3730,3768,3803,3837,3869,3900,3931,3960,3989,4017,4046,4075,4105,4138,4172,4207,
+4244,4281,4317,4352,4384,4414,4443,4470,4497,4526,4557,4590,4626,4663,4701,4738,4773,4806,4837,4867,4898,
+4931,4969,5011,5058,5110,5163,5216,5266,5311,5350,5383,5410,5433,5453,5474,5495,5518,5543,5569,5594,5617,
+5638,5655,5670,5682,5692,5700,5708,5714,5718,5718,5713,5703,5688,5670,5651,5634,5623,5619,5625,5641,5665,
+5694,5725,5754,5777,5791,5796,5790,5776,5755,5731,5705,5680,5658,5641,5630,5625,5627,5638,5656,5684,5718,
+5759,5803,5847,5888,5921,5944,5955,5954,5944,5925,5903,5882,5864,5853,5850,5854,5865,5880,5897,5913,5927,
+5937,5943,5945,5943,5938,5932,5924,5915,5905,5894,5884,5873,5862,5851,5839,5826,5811,5792,5770,5744,5714,
+5683,5651,5621,5595,5574,5558,5547,5538,5529,5517,5500,5474,5439,5396,5347,5296,5247,5203,5167,5141,5126,
+5120,5121,5126,5132,5137,5139,5136,5130,5120,5108,5094,5081,5068,5055,5043,5029,5015,4999,4982,4963,4943,
+4923,4903,4883,4851,4835,4820,4807,4794,4782,4769,4757,4744,4731,4718,4705,4690,4675,4658,4641,4622,4604,
+4585,4566,4548,4530,4513,4496,4479,4461,4443,4423,4403,4383,4363,4343,4324,4305,4288,4270,4251,4232,4211,
+4189,4165,4140,4115,4090,4066,4042,4020,3999,3979,3961,3943,3925,3908,3891,3874,3858,3840,3823,3804,3784,
+3762,3737,3710,3681,3648,3614,3577,3538,3497,3455,3410,3364,3316,3266,3216,3165,3114,3066,3019,2977,2938,
+2905,2877,2854,2835,2820,2808,2796,2783,2766,2746,2721,2691,2658,2623,2588,2556,2529,2510,2498,2495,2497,
+2503,2509,2513,2510,2499,2479,2449,2411,2366,2318,2270,2222,2178,2138,2102,2069,2040,2012,1985,1959,1934,
+1908,1884,1860,1837,1815,1793,1770,1747,1722,1696,1669,1641,1613,1585,1559,1534,1511,1490,1470,1452,1435,
+1418,1402,1386,1372,1358,1345,1333,1320,1306,1291,1273,1252,1228,1202,1174,1145,1117,1091,1068,1047,1030,
+1015,1001,988,973,958,940,919,898,875,853,831,810,790,772,754,737,720,701,682,661,640,
+617,595,571,549,526,503,481,458,436,413,390,367,344,322,301,280,261,243,227,211,197,
+183,169,155,140,124,106,88,67,46,24,1,-21,-44,-66,-88,-109,-129,-148,-164,-178,-190,
+-199,-205,-210,-213,-216,-219,-225,-234,-247,-263,-281,-301,-322,-342,-360,-377,-393,-408,-425,-443,-464,
+-488,-515,-545,-574,-602,-626,-647,-663,-675,-684,-691,-699,-708,-720,-735,-752,-770,-789,-807,-824,-838,
+-850,-861,-870,-880,-889,-899,-909,-918,-927,-936,-943,-949,-955,-960,-967,-974,-982,-990,-999,-1008,-1016,
+-1022,-1027,-1031,-1034,-1037,-1041,-1046,-1053,-1061,-1070,-1080,-1090,-1099,-1108,-1116,-1124,-1131,-1139,-1148,-1158,-1170,
+-1183,-1196,-1210,-1224,-1237,-1250,-1262,-1273,-1284,-1295,-1306,-1318,-1329,-1340,-1351,-1360,-1368,-1375,-1381,-1386,-1391,
+-1396,-1401,-1407,-1414,-1422,-1431,-1440,-1449,-1457,-1464,-1469,-1472,-1473,-1470,-1464,-1455,-1444,-1430,-1416,-1402,-1388,
+-1377,-1369,-1363,-1360,-1359,-1359,-1356,-1351,-1342,-1328,-1310,-1290,-1268,-1248,-1232,-1223,-1221,-1227,-1240,-1259,-1282,
+-1307,-1330,-1351,-1369,-1383,-1395,-1405,-1414,-1424,-1435,-1446,-1458,-1470,-1482,-1493,-1503,-1513,-1522,-1531,-1541,-1551,
+-1562,-1573,-1582,-1590,-1595,-1597,-1596,-1593,-1588,-1582,-1576,-1569,-1563,-1557,-1549,-1539,-1526,-1509,-1488,-1463,-1435,
+-1405,-1373,-1343,-1314,-1288,-1265,-1245,-1228,-1214,-1200,-1188,-1174,-1159,-1142,-1122,-1100,-1077,-1053,-1031,-1011,-996,
+-986,-982,-985,-994,-1007,-1023,-1041,-1058,-1073,-1087,-1099,-1109,-1117,-1126,-1134,-1143,-1151,-1159,-1166,-1170,-1172,
+-1172,-1169,-1164,-1157,-1150,-1143,-1136,-1129,-1122,-1114,-1106,-1096,-1084,-1071,-1056,-1039,-1022,-1004,-986,-968,-950,
+-934,-921,-909,-902,-898,-898,-902,-911,-922,-935,-950,-964,-979,-993,-1006,-1018,-1030,-1040,-1050,-1057,-1063,
+-1065,-1063,-1056,-1045,-1029,-1009,-984,-956,-925,-891,-855,-817,-779,-740,-702,-667,-635,-609,-590,-577,-571,
+-570,-573,-577,-581,-581,-577,-568,-553,-534,-512,-487,-462,-438,-415,-393,-372,-352,-332,-311,-289,-267,
+-246,-225,-205,-187,-170,-155,-141,-127,-113,-98,-83,-67,-52,-39,-27,-19,-14,-13,-15,-20,-27,
+-34,-41,-47,-51,-53,-53,-51,-48,-44,-39,-33,-27,-21,-13,-4,5,17,30,45,61,78,
+95,113,130,147,163,177,191,203,214,223,230,236,241,245,249,252,254,257,260,262,264,
+265,265,264,263,260,257,254,251,249,247,246,247,248,250,253,257,261,267,272,278,285,
+292,299,307,314,322,329,336,342,348,351,354,355,356,356,357,359,362,368,376,386,397,
+409,422,434,444,453,459,465,468,471,472,472,471,468,463,457,449,440,432,425,421,419,
+422,428,436,445,453,460,464,464,460,454,445,436,428,422,418,416,417,418,420,422,422,
+421,420,417,414,412,410,410,411,413,416,418,419,418,415,410,402,392,381,369,357,346,
+336,328,322,316,312,308,304,299,293,286,279,270,261,252,242,232,221,210,197,184,170,
+155,140,125,110,97,85,75,67,61,56,53,53,54,57,62,69,77,85,94,101,106,
+109,110,107,103,97,90,83,77,72,69,68,69,71,75,80,85,90,93,96,96,94,
+90,84,76,66,56,47,39,32,28,26,27,29,32,35,38,39,38,35,30,24,17,
+10,4,-1,-5,-7,-7,-6,-4,-1,2,5,9,12,15,17,19,21,23,23,24,24,
+24,23,23,23,23,25,28,32,37,42,47,50,50,48,43,35,25,13,1,-10,-20,
+-29,-36,-43,-48,-53,-57,-62,-66,-68,-68,-66,-59,-48,-34,-17,1,20,38,52,62,66,
+65,59,49,36,22,8,-6,-19,-30,-41,-51,-61,-71,-83,-94,-107,-120,-134,-148,-162,-176,
+-192,-210,-230,-253,-278,-306,-335,-363,-390,-413,-430,-442,-449,-451,-450,-447,-446,-448,-455,-467,-484,
+-506,-531,-558,-584,-608,-630,-648,-661,-671,-678,-681,-683,-685,-686,-689,-695,-704,-716,-734,-754,-778,
+-804,-830,-855,-878,-898,-914,-928,-940,-951,-963,-976,-991,-1007,-1024,-1040,-1055,-1068,-1077,-1084,-1089,-1093,
+-1097,-1102,-1109,-1119,-1131,-1144,-1159,-1175,-1192,-1210,-1230,-1253,-1279,-1310,-1344,-1382,-1423,-1466,-1508,-1549,-1587,
+-1622,-1653,-1681,-1705,-1726,-1744,-1760,-1772,-1780,-1785,-1787,-1787,-1785,-1782,-1780,-1782,-1786,-1795,-1808,-1825,-1845,
+-1866,-1888,-1910,-1932,-1953,-1976,-2001,-2029,-2062,-2101,-2146,-2197,-2254,-2315,-2380,-2446,-2511,-2574,-2633,-2686,-2733,
+-2773,-2804,-2829,-2846,-2858,-2864,-2867,-2868,-2869,-2870,-2872,-2877,-2884,-2894,-2905,-2916,-2928,-2937,-2945,-2950,-2950,
+-2947,-2941,-2931,-2919,-2905,-2891,-2877,-2865,-2856,-2849,-2844,-2842,-2843,-2845,-2848,-2851,-2855,-2858,-2861,-2863,-2864,
+-2865,-2865,-2864,-2861,-2858,-2853,-2847,-2839,-2830,-2819,-2807,-2793,-2779,-2764,-2748,-2732,-2715,-2699,-2683,-2668,-2654,
+-2641,-2631,-2622,-2615,-2610,-2607,-2605,-2604,-2604,-2605,-2606,-2606,-2607,-2607,-2607,-2607,-2606,-2605,-2603,-2601,-2597,
+-2591,-2581,-2569,-2551,-2529,-2501,-2469,-2434,-2396,-2358,-2321,-2288,-2258,-2234,-2215,-2201,-2191,-2185,-2180,-2175,-2170,
+-2163,-2154,-2141,-2126,-2108,-2088,-2066,-2043,-2018,-1992,-1966,-1938,-1910,-1880,-1848,-1814,-1776,-1736,-1693,-1647,-1598,
+-1548,-1495,-1442,-1386,-1328,-1266,-1201,-1130,-1055,-974,-891,-806,-722,-641,-565,-495,-432,-375,-323,-274,-226,
+-178,-128,-77,-26,25,74,121,164,201,234,262,285,304,318,328,335,338,342,348,359,380,
+414,464,530,613,710,816,927,1035,1136,1227,1305,1370,1425,1472,1516,1560,1607,1658,1715,1775,1838,
+1900,1961,2020,2076,2128,2178,2227,2274,2320,2366,2410,2452,2493,2531,2566,2599,2630,2658,2685,2710,2732,
+2750,2764,2773,2777,2775,2768,2756,2738,2716,2689,2659,2627,2593,2560,2530,2506,2492,2490,2502,2529,2571,
+2627,2693,2767,2845,2923,3000,3073,3141,3204,3264,3320,3374,3425,3476,3524,3571,3616,3659,3700,3739,3778,
+3815,3851,3887,3922,3957,3990,4022,4054,4085,4116,4149,4182,4217,4252,4288,4324,4358,4390,4420,4449,4477,
+4507,4538,4572,4609,4649,4690,4732,4772,4808,4842,4872,4901,4931,4965,5004,5050,5103,5162,5224,5286,5342,
+5391,5430,5459,5478,5491,5500,5510,5522,5539,5561,5587,5614,5641,5666,5687,5704,5718,5732,5746,5763,5784,
+5807,5832,5857,5878,5893,5902,5905,5902,5897,5891,5889,5891,5898,5909,5922,5934,5943,5945,5939,5924,5903,
+5877,5848,5821,5796,5777,5764,5759,5760,5767,5781,5799,5821,5846,5872,5897,5921,5941,5955,5962,5963,5958,
+5948,5936,5923,5913,5907,5907,5911,5920,5931,5944,5955,5965,5972,5976,5977,5975,5970,5963,5954,5944,5932,
+5920,5906,5893,5881,5870,5860,5851,5842,5832,5818,5800,5776,5748,5715,5681,5647,5616,5589,5569,5554,5542,
+5531,5518,5500,5473,5438,5396,5347,5295,5244,5199,5161,5132,5113,5102,5099,5099,5100,5101,5099,5095,5089,
+5080,5071,5061,5051,5041,5030,5018,5004,4988,4970,4950,4929,4908,4888,4869,4851,4826,4816,4808,4800,4791,
+4782,4772,4760,4748,4735,4721,4706,4690,4674,4657,4638,4620,4600,4581,4562,4544,4526,4508,4490,4473,4454,
+4435,4416,4396,4376,4357,4338,4320,4301,4283,4263,4242,4219,4193,4166,4137,4109,4081,4054,4030,4007,3986,
+3967,3948,3929,3910,3891,3871,3852,3834,3816,3798,3782,3765,3747,3727,3705,3680,3651,3619,3583,3543,3501,
+3456,3410,3362,3313,3264,3217,3171,3127,3086,3049,3016,2986,2960,2936,2916,2897,2880,2864,2848,2832,2815,
+2798,2778,2757,2732,2706,2678,2649,2621,2595,2573,2556,2543,2536,2531,2528,2522,2513,2497,2473,2441,2402,
+2356,2307,2257,2208,2163,2124,2089,2060,2036,2014,1993,1973,1952,1930,1907,1883,1859,1835,1811,1787,1764,
+1739,1715,1689,1662,1633,1604,1575,1546,1518,1491,1466,1442,1421,1401,1383,1366,1351,1337,1325,1314,1303,
+1293,1283,1272,1259,1244,1227,1207,1185,1162,1138,1113,1090,1067,1046,1026,1007,988,968,948,927,905,
+882,860,839,819,801,785,770,756,742,727,711,692,672,649,624,598,571,544,517,491,466,
+442,419,398,377,357,337,317,297,277,257,236,216,196,178,160,143,128,113,99,85,71,
+56,40,22,3,-17,-39,-62,-85,-109,-132,-154,-175,-194,-211,-225,-237,-247,-255,-264,-273,-284,
+-296,-311,-327,-343,-359,-374,-386,-397,-405,-412,-420,-430,-443,-459,-480,-505,-531,-559,-585,-609,-630,
+-648,-663,-676,-688,-700,-713,-728,-745,-762,-779,-795,-810,-824,-837,-849,-862,-875,-889,-904,-920,-934,
+-948,-960,-970,-978,-984,-990,-995,-1000,-1007,-1014,-1022,-1031,-1039,-1047,-1054,-1060,-1066,-1071,-1076,-1082,-1089,
+-1097,-1105,-1114,-1123,-1132,-1140,-1148,-1155,-1163,-1171,-1180,-1190,-1201,-1213,-1226,-1239,-1252,-1264,-1275,-1284,-1293,
+-1301,-1309,-1317,-1325,-1333,-1341,-1349,-1357,-1363,-1369,-1374,-1379,-1384,-1391,-1399,-1409,-1420,-1434,-1448,-1461,-1473,
+-1483,-1489,-1492,-1490,-1485,-1477,-1467,-1455,-1444,-1432,-1423,-1416,-1412,-1411,-1412,-1417,-1423,-1429,-1433,-1434,-1431,
+-1421,-1406,-1386,-1363,-1338,-1316,-1298,-1287,-1284,-1289,-1302,-1320,-1340,-1360,-1377,-1390,-1397,-1400,-1400,-1399,-1400,
+-1404,-1412,-1425,-1441,-1460,-1479,-1499,-1516,-1533,-1548,-1564,-1579,-1596,-1614,-1632,-1649,-1665,-1677,-1684,-1686,-1682,
+-1673,-1661,-1646,-1631,-1617,-1603,-1590,-1577,-1564,-1549,-1531,-1510,-1487,-1461,-1434,-1406,-1379,-1353,-1330,-1308,-1290,
+-1273,-1259,-1245,-1232,-1220,-1206,-1192,-1177,-1161,-1145,-1130,-1116,-1104,-1096,-1091,-1089,-1091,-1094,-1099,-1104,-1109,
+-1114,-1118,-1121,-1126,-1132,-1139,-1149,-1159,-1171,-1181,-1190,-1196,-1198,-1197,-1192,-1186,-1178,-1170,-1162,-1156,-1149,
+-1144,-1137,-1130,-1121,-1110,-1097,-1082,-1066,-1049,-1031,-1015,-999,-984,-971,-961,-954,-951,-951,-956,-964,-976,
+-991,-1009,-1027,-1047,-1066,-1085,-1103,-1120,-1136,-1150,-1162,-1170,-1174,-1172,-1164,-1148,-1125,-1094,-1056,-1013,-966,
+-915,-863,-811,-760,-712,-669,-631,-600,-577,-562,-554,-553,-557,-563,-571,-576,-577,-573,-564,-550,-531,
+-510,-488,-466,-445,-425,-407,-389,-370,-351,-331,-309,-286,-264,-241,-220,-200,-182,-164,-147,-130,-112,
+-94,-75,-57,-39,-24,-12,-3,1,2,0,-4,-10,-15,-20,-23,-25,-24,-22,-19,-15,-10,
+-5,0,4,9,16,22,30,40,50,61,73,86,99,112,126,139,153,168,182,197,212,
+226,240,252,262,271,278,282,286,288,289,289,290,290,291,292,292,293,293,293,292,291,
+289,288,287,286,285,286,288,290,294,299,305,311,318,325,332,338,345,352,359,365,371,
+375,379,382,384,385,385,385,387,391,397,406,418,432,448,464,480,494,506,516,524,529,
+533,535,535,534,531,526,519,511,503,495,488,483,481,482,486,491,496,501,502,500,494,
+486,475,463,453,445,440,438,440,444,450,456,461,465,467,467,466,465,463,462,462,462,
+463,464,465,465,463,460,455,448,438,427,415,402,389,377,366,356,348,341,335,329,322,
+316,308,299,290,279,268,257,245,233,221,208,195,182,167,153,139,125,112,100,89,80,
+71,64,59,55,53,53,55,59,65,72,79,86,92,96,98,99,98,95,92,88,84,
+80,77,75,74,73,74,76,79,83,88,92,95,96,95,92,85,76,67,57,49,43,
+41,43,50,59,71,85,98,111,121,129,134,136,135,133,130,127,124,121,119,118,118,
+119,119,120,120,120,120,120,119,117,116,114,112,109,106,103,100,98,96,97,98,102,
+107,113,119,124,126,126,122,115,106,95,85,75,67,61,58,57,57,58,59,61,63,
+68,75,86,101,122,148,177,209,241,271,297,317,331,338,338,332,322,307,290,271,252,
+233,213,194,175,157,138,120,103,85,67,49,30,9,-15,-43,-76,-114,-157,-203,-251,-298,
+-343,-382,-415,-439,-455,-465,-470,-473,-477,-483,-495,-511,-533,-559,-587,-614,-638,-658,-672,-681,-684,
+-683,-679,-674,-668,-663,-660,-660,-663,-671,-684,-700,-721,-745,-770,-797,-822,-845,-866,-883,-898,-911,
+-924,-937,-950,-965,-979,-992,-1003,-1011,-1013,-1011,-1005,-996,-985,-976,-968,-965,-966,-972,-984,-1000,-1019,
+-1042,-1068,-1097,-1129,-1163,-1202,-1243,-1286,-1331,-1376,-1420,-1462,-1502,-1540,-1574,-1606,-1637,-1665,-1691,-1714,-1735,
+-1752,-1765,-1774,-1781,-1785,-1789,-1794,-1802,-1813,-1829,-1848,-1870,-1894,-1919,-1942,-1963,-1983,-2001,-2019,-2039,-2063,
+-2091,-2127,-2169,-2219,-2276,-2338,-2404,-2471,-2537,-2601,-2661,-2716,-2764,-2804,-2838,-2865,-2885,-2900,-2911,-2919,-2925,
+-2930,-2936,-2943,-2952,-2963,-2974,-2987,-2998,-3009,-3017,-3022,-3024,-3022,-3016,-3007,-2995,-2982,-2969,-2956,-2946,-2938,
+-2933,-2932,-2933,-2936,-2942,-2948,-2953,-2959,-2963,-2967,-2969,-2971,-2972,-2973,-2973,-2972,-2971,-2970,-2967,-2964,-2959,
+-2954,-2948,-2940,-2932,-2922,-2911,-2897,-2882,-2865,-2846,-2826,-2804,-2783,-2762,-2742,-2723,-2707,-2693,-2682,-2673,-2667,
+-2662,-2658,-2655,-2654,-2652,-2650,-2649,-2648,-2647,-2646,-2645,-2645,-2645,-2644,-2641,-2635,-2625,-2608,-2585,-2555,-2519,
+-2478,-2433,-2388,-2345,-2306,-2273,-2247,-2228,-2217,-2211,-2209,-2210,-2211,-2211,-2209,-2203,-2194,-2182,-2167,-2149,-2129,
+-2108,-2086,-2063,-2040,-2017,-1992,-1966,-1938,-1907,-1873,-1836,-1796,-1752,-1705,-1656,-1604,-1550,-1492,-1431,-1365,-1295,
+-1219,-1139,-1055,-969,-884,-801,-723,-650,-584,-524,-467,-414,-363,-311,-258,-204,-149,-94,-40,11,60,
+106,148,185,216,241,259,269,272,269,263,260,263,280,314,370,449,549,667,794,924,1048,
+1160,1254,1330,1387,1430,1463,1493,1522,1557,1597,1643,1695,1750,1806,1863,1919,1975,2032,2090,2150,2211,
+2273,2332,2388,2439,2484,2522,2555,2584,2611,2638,2664,2691,2717,2739,2757,2767,2768,2759,2741,2715,2682,
+2643,2602,2559,2516,2476,2439,2409,2387,2377,2379,2397,2431,2480,2544,2618,2701,2787,2873,2956,3034,3106,
+3172,3233,3290,3343,3395,3444,3493,3541,3587,3631,3674,3716,3757,3797,3837,3876,3914,3950,3985,4018,4050,
+4080,4111,4142,4174,4208,4244,4281,4318,4355,4390,4424,4455,4486,4518,4551,4587,4626,4669,4713,4758,4801,
+4842,4879,4913,4945,4977,5012,5053,5101,5156,5217,5279,5340,5395,5439,5472,5492,5501,5503,5503,5505,5513,
+5530,5556,5590,5628,5666,5700,5729,5751,5767,5780,5794,5810,5833,5864,5900,5941,5983,6022,6054,6077,6091,
+6096,6095,6088,6080,6072,6063,6055,6045,6033,6016,5994,5969,5941,5912,5885,5863,5847,5839,5839,5845,5858,
+5873,5891,5909,5926,5941,5953,5962,5967,5969,5967,5963,5956,5948,5940,5934,5931,5933,5939,5949,5962,5976,
+5989,6000,6008,6012,6012,6009,6003,5996,5987,5978,5968,5956,5944,5930,5916,5902,5889,5878,5868,5860,5853,
+5845,5834,5819,5798,5773,5742,5709,5675,5643,5614,5591,5572,5556,5541,5525,5503,5475,5440,5398,5350,5301,
+5253,5209,5172,5143,5122,5108,5100,5095,5091,5087,5081,5074,5065,5056,5045,5035,5024,5012,4999,4984,4968,
+4949,4929,4908,4888,4869,4853,4838,4826,4830,4823,4816,4807,4797,4785,4772,4758,4743,4728,4713,4698,4682,
+4666,4649,4631,4611,4590,4569,4548,4527,4507,4488,4469,4451,4433,4415,4396,4378,4360,4342,4323,4304,4284,
+4262,4237,4211,4181,4150,4118,4086,4055,4027,4002,3980,3961,3945,3931,3917,3902,3887,3871,3855,3839,3823,
+3807,3793,3778,3762,3744,3723,3697,3667,3632,3593,3549,3501,3452,3401,3350,3300,3253,3208,3168,3132,3102,
+3077,3057,3041,3028,3016,3004,2990,2975,2956,2935,2911,2886,2861,2837,2813,2789,2766,2743,2720,2695,2670,
+2645,2621,2598,2577,2559,2543,2528,2512,2495,2473,2447,2414,2376,2333,2287,2241,2196,2156,2120,2091,2068,
+2048,2032,2016,1999,1980,1958,1933,1906,1877,1849,1822,1797,1773,1751,1729,1707,1685,1661,1635,1607,1578,
+1549,1519,1491,1464,1438,1414,1392,1371,1352,1334,1318,1304,1292,1282,1273,1266,1259,1250,1240,1227,1211,
+1191,1169,1146,1121,1097,1073,1051,1031,1011,991,971,951,929,906,883,860,838,819,802,788,776,
+765,754,741,726,708,687,663,636,606,576,546,517,490,464,441,420,401,384,367,351,333,
+315,294,272,249,224,200,176,153,132,113,97,82,68,54,39,24,6,-12,-34,-56,-80,
+-104,-128,-151,-173,-193,-211,-227,-241,-255,-267,-279,-292,-306,-321,-339,-357,-376,-394,-410,-424,-434,
+-442,-447,-450,-453,-458,-465,-476,-491,-510,-532,-555,-578,-600,-621,-639,-656,-672,-686,-701,-715,-730,
+-744,-759,-773,-787,-801,-815,-829,-845,-863,-882,-902,-923,-944,-964,-981,-996,-1008,-1018,-1026,-1032,-1038,
+-1044,-1051,-1059,-1067,-1075,-1084,-1092,-1099,-1106,-1113,-1119,-1125,-1131,-1137,-1144,-1151,-1159,-1166,-1174,-1182,-1189,
+-1197,-1205,-1214,-1223,-1233,-1244,-1255,-1267,-1278,-1289,-1299,-1308,-1315,-1322,-1328,-1335,-1341,-1348,-1355,-1363,-1371,
+-1378,-1385,-1391,-1397,-1404,-1411,-1420,-1432,-1445,-1460,-1475,-1490,-1503,-1511,-1515,-1513,-1505,-1494,-1480,-1464,-1449,
+-1437,-1429,-1426,-1429,-1436,-1447,-1462,-1478,-1494,-1508,-1519,-1524,-1524,-1516,-1502,-1483,-1459,-1434,-1411,-1391,-1378,
+-1372,-1374,-1381,-1392,-1403,-1413,-1419,-1419,-1415,-1407,-1397,-1389,-1386,-1388,-1397,-1412,-1432,-1454,-1476,-1497,-1514,
+-1529,-1542,-1555,-1570,-1588,-1610,-1636,-1663,-1690,-1713,-1731,-1740,-1740,-1731,-1716,-1695,-1672,-1649,-1627,-1608,-1591,
+-1577,-1564,-1551,-1537,-1522,-1506,-1488,-1470,-1452,-1435,-1418,-1402,-1387,-1373,-1360,-1346,-1333,-1320,-1307,-1294,-1281,
+-1269,-1257,-1246,-1237,-1229,-1222,-1217,-1213,-1209,-1205,-1200,-1193,-1185,-1176,-1167,-1159,-1154,-1153,-1155,-1162,-1173,
+-1185,-1198,-1208,-1216,-1219,-1217,-1212,-1203,-1193,-1183,-1174,-1167,-1161,-1155,-1150,-1143,-1134,-1122,-1108,-1092,-1074,
+-1056,-1038,-1022,-1008,-997,-990,-987,-988,-993,-1003,-1016,-1033,-1053,-1075,-1099,-1123,-1147,-1171,-1194,-1217,-1239,
+-1259,-1277,-1291,-1301,-1304,-1300,-1286,-1263,-1230,-1186,-1134,-1074,-1009,-940,-869,-801,-736,-677,-627,-587,-558,
+-540,-532,-534,-541,-551,-562,-570,-573,-570,-560,-545,-526,-505,-483,-463,-445,-428,-413,-399,-384,-368,
+-350,-330,-308,-286,-265,-244,-225,-207,-190,-173,-155,-135,-114,-92,-70,-50,-32,-17,-7,-2,-1,
+-3,-7,-11,-16,-19,-20,-19,-15,-10,-4,3,10,18,25,32,38,44,50,57,64,72,
+80,90,101,113,126,139,152,165,179,192,206,221,235,250,265,279,292,303,312,319,324,
+327,327,326,324,321,318,315,313,312,312,313,314,317,319,321,323,325,326,328,329,331,
+333,336,340,344,349,354,359,364,369,375,381,386,392,398,403,407,410,413,415,418,422,
+427,435,446,459,475,492,509,526,541,553,563,571,577,581,584,587,588,588,587,584,579,
+573,566,559,554,550,548,547,548,548,546,542,535,526,514,501,488,476,468,463,461,462,
+465,470,475,480,484,487,489,491,492,494,495,496,497,497,497,497,496,495,493,490,485,
+479,471,461,449,436,422,409,396,384,373,364,355,347,339,330,321,310,299,287,276,264,
+252,240,227,215,201,187,173,158,144,130,117,105,95,85,77,71,65,61,59,58,59,
+61,64,67,72,76,80,84,87,90,93,95,96,97,96,95,92,89,85,82,80,80,
+82,84,88,91,94,94,92,87,81,73,67,62,61,64,72,85,102,122,144,167,189,
+209,228,243,256,267,274,279,282,283,282,280,276,271,265,259,252,245,237,229,222,214,
+207,201,195,189,185,181,178,176,175,175,176,179,184,189,194,199,203,205,205,202,196,
+189,182,175,170,167,167,169,174,180,187,195,204,214,227,243,263,288,317,349,384,420,
+454,486,513,535,551,561,567,568,564,558,548,535,520,502,482,460,437,413,388,364,340,
+316,294,270,246,220,189,154,113,65,11,-47,-110,-174,-236,-294,-344,-387,-420,-445,-464,-479,
+-491,-505,-520,-538,-559,-581,-603,-622,-638,-648,-653,-653,-649,-642,-634,-627,-622,-619,-618,-620,-625,
+-634,-646,-661,-679,-700,-724,-748,-772,-795,-817,-836,-852,-867,-881,-894,-908,-920,-932,-942,-948,-950,
+-946,-937,-923,-906,-888,-871,-858,-850,-848,-853,-864,-881,-903,-928,-956,-987,-1020,-1055,-1093,-1132,-1173,
+-1216,-1259,-1302,-1344,-1386,-1426,-1466,-1505,-1544,-1582,-1619,-1654,-1688,-1718,-1745,-1769,-1788,-1806,-1821,-1837,-1853,
+-1872,-1892,-1914,-1938,-1961,-1983,-2003,-2020,-2035,-2049,-2063,-2078,-2098,-2123,-2156,-2197,-2246,-2302,-2364,-2429,-2497,
+-2565,-2630,-2691,-2747,-2796,-2839,-2875,-2904,-2927,-2945,-2960,-2971,-2981,-2990,-2999,-3010,-3021,-3033,-3046,-3058,-3070,
+-3079,-3087,-3091,-3092,-3090,-3084,-3075,-3064,-3052,-3041,-3030,-3022,-3017,-3016,-3018,-3023,-3031,-3040,-3050,-3059,-3066,
+-3072,-3076,-3078,-3078,-3077,-3075,-3073,-3071,-3069,-3067,-3064,-3061,-3058,-3054,-3050,-3045,-3038,-3031,-3021,-3009,-2994,
+-2976,-2956,-2933,-2908,-2882,-2856,-2831,-2808,-2787,-2770,-2755,-2744,-2735,-2729,-2726,-2723,-2722,-2720,-2718,-2716,-2713,
+-2710,-2708,-2706,-2706,-2707,-2709,-2711,-2711,-2707,-2698,-2681,-2656,-2621,-2578,-2529,-2477,-2424,-2375,-2332,-2298,-2273,
+-2258,-2251,-2250,-2254,-2260,-2264,-2267,-2266,-2261,-2251,-2238,-2221,-2203,-2182,-2161,-2140,-2119,-2098,-2078,-2056,-2034,
+-2010,-1982,-1952,-1918,-1879,-1837,-1791,-1741,-1687,-1630,-1569,-1503,-1434,-1361,-1284,-1204,-1124,-1044,-967,-894,-824,
+-760,-699,-641,-584,-528,-471,-413,-354,-296,-238,-181,-127,-74,-25,21,64,102,134,158,173,177,
+174,166,158,157,171,205,264,351,463,594,738,884,1022,1145,1247,1327,1385,1425,1455,1480,1505,
+1534,1569,1610,1654,1702,1750,1799,1850,1904,1962,2025,2094,2168,2242,2314,2380,2436,2483,2519,2548,2572,
+2594,2618,2644,2673,2703,2729,2747,2755,2749,2728,2693,2647,2594,2537,2482,2431,2386,2350,2323,2307,2301,
+2306,2324,2354,2398,2454,2521,2597,2679,2763,2848,2929,3006,3077,3143,3204,3263,3319,3373,3426,3479,3530,
+3579,3627,3673,3717,3760,3801,3841,3880,3917,3953,3986,4017,4047,4076,4105,4136,4169,4204,4243,4284,4326,
+4368,4408,4446,4482,4515,4547,4580,4614,4652,4692,4736,4781,4826,4869,4910,4948,4985,5021,5059,5101,5149,
+5201,5257,5314,5367,5413,5448,5470,5480,5479,5473,5467,5467,5477,5500,5536,5582,5635,5689,5738,5779,5809,
+5829,5842,5851,5862,5878,5902,5935,5975,6020,6063,6102,6133,6154,6163,6163,6154,6140,6121,6100,6078,6054,
+6029,6002,5973,5944,5916,5891,5871,5857,5851,5851,5859,5871,5886,5902,5918,5932,5943,5952,5959,5963,5965,
+5965,5963,5959,5955,5951,5949,5949,5953,5961,5973,5988,6005,6021,6034,6043,6048,6048,6043,6035,6025,6015,
+6004,5994,5985,5974,5963,5951,5937,5922,5907,5893,5881,5870,5860,5850,5839,5825,5808,5787,5762,5733,5704,
+5674,5646,5620,5596,5573,5550,5525,5497,5463,5425,5383,5338,5293,5251,5213,5181,5156,5137,5123,5113,5105,
+5098,5090,5080,5070,5058,5045,5031,5017,5002,4986,4970,4953,4935,4916,4898,4882,4867,4855,4845,4836,4830,
+4853,4844,4831,4816,4798,4778,4759,4739,4722,4706,4693,4680,4668,4654,4639,4621,4601,4578,4554,4529,4505,
+4482,4460,4440,4422,4404,4386,4368,4349,4329,4307,4285,4260,4234,4206,4176,4145,4113,4081,4049,4020,3993,
+3970,3952,3938,3927,3919,3912,3906,3899,3891,3882,3872,3861,3848,3834,3819,3801,3779,3753,3722,3685,3643,
+3596,3546,3493,3440,3387,3337,3290,3247,3210,3177,3150,3130,3114,3104,3097,3092,3088,3083,3075,3062,3044,
+3021,2993,2961,2927,2893,2861,2830,2801,2775,2751,2727,2704,2679,2654,2628,2602,2577,2553,2530,2508,2487,
+2465,2442,2416,2385,2351,2314,2274,2233,2195,2159,2128,2102,2080,2062,2047,2031,2014,1993,1970,1943,1914,
+1884,1855,1828,1804,1783,1765,1748,1732,1716,1698,1677,1654,1628,1601,1574,1546,1520,1494,1469,1445,1421,
+1398,1376,1354,1334,1316,1300,1286,1275,1265,1254,1243,1229,1213,1193,1171,1147,1124,1102,1082,1066,1052,
+1039,1027,1014,999,981,961,937,913,889,866,846,829,815,802,791,778,764,748,728,704,677,
+648,617,586,555,525,497,472,448,428,410,394,379,365,350,333,313,291,266,239,211,183,
+156,132,110,92,75,60,45,29,12,-6,-27,-50,-73,-97,-120,-142,-163,-181,-198,-212,-226,
+-239,-251,-264,-278,-294,-312,-333,-355,-379,-403,-426,-448,-465,-479,-488,-494,-497,-499,-501,-505,-512,
+-522,-536,-552,-570,-589,-607,-624,-640,-655,-668,-682,-695,-709,-723,-738,-753,-769,-785,-802,-820,-838,
+-858,-878,-900,-923,-946,-969,-991,-1012,-1031,-1048,-1063,-1076,-1088,-1098,-1108,-1117,-1126,-1135,-1144,-1152,-1160,
+-1167,-1173,-1178,-1182,-1186,-1188,-1192,-1195,-1200,-1205,-1212,-1220,-1228,-1236,-1244,-1252,-1260,-1268,-1276,-1284,-1293,
+-1303,-1312,-1321,-1330,-1338,-1345,-1352,-1359,-1366,-1374,-1383,-1393,-1403,-1413,-1423,-1431,-1438,-1444,-1450,-1456,-1464,
+-1474,-1485,-1497,-1509,-1519,-1526,-1527,-1522,-1512,-1497,-1479,-1462,-1447,-1437,-1433,-1436,-1447,-1464,-1486,-1511,-1537,
+-1562,-1583,-1599,-1609,-1612,-1607,-1595,-1578,-1557,-1534,-1511,-1492,-1478,-1469,-1466,-1467,-1470,-1473,-1474,-1470,-1462,
+-1450,-1436,-1424,-1415,-1413,-1418,-1430,-1449,-1472,-1494,-1514,-1529,-1537,-1540,-1540,-1540,-1543,-1552,-1569,-1594,-1624,
+-1657,-1689,-1715,-1732,-1739,-1734,-1720,-1699,-1673,-1646,-1621,-1599,-1582,-1569,-1559,-1552,-1547,-1542,-1538,-1532,-1527,
+-1522,-1516,-1510,-1504,-1497,-1489,-1479,-1469,-1457,-1445,-1432,-1418,-1405,-1391,-1379,-1367,-1357,-1348,-1341,-1335,-1330,
+-1324,-1317,-1308,-1296,-1282,-1266,-1248,-1231,-1217,-1207,-1202,-1202,-1207,-1216,-1226,-1234,-1240,-1242,-1239,-1231,-1221,
+-1208,-1196,-1184,-1175,-1168,-1162,-1157,-1150,-1142,-1131,-1117,-1100,-1082,-1063,-1045,-1029,-1017,-1009,-1006,-1009,-1017,
+-1030,-1048,-1070,-1095,-1123,-1152,-1182,-1212,-1242,-1271,-1300,-1327,-1354,-1378,-1399,-1416,-1426,-1429,-1424,-1407,-1380,
+-1340,-1290,-1228,-1157,-1079,-995,-910,-827,-749,-679,-620,-574,-542,-524,-519,-523,-533,-545,-555,-562,-561,
+-554,-540,-522,-501,-481,-461,-445,-431,-419,-408,-396,-382,-366,-347,-326,-305,-284,-264,-247,-230,-215,
+-199,-181,-161,-139,-114,-88,-63,-39,-19,-3,7,14,18,18,18,17,16,16,17,19,21,
+25,29,35,41,49,57,66,75,83,91,98,104,110,116,124,134,145,159,174,190,206,
+222,238,252,265,278,289,301,312,323,333,343,350,357,360,361,360,356,351,344,338,331,
+327,324,323,325,328,334,341,348,355,361,366,370,373,376,378,380,382,385,388,391,395,
+399,404,409,415,420,426,432,437,442,446,450,454,459,466,474,486,499,514,530,546,561,
+574,584,592,599,605,611,617,623,630,636,641,644,645,643,639,634,628,621,615,610,604,
+599,592,583,573,561,548,534,522,511,503,496,492,490,489,488,488,487,488,488,491,494,
+498,503,508,513,517,521,523,525,527,529,531,533,533,532,528,521,511,498,483,467,450,
+435,421,408,397,387,376,366,354,342,328,314,300,286,273,260,247,234,221,207,193,179,
+164,150,137,125,114,105,97,90,85,80,76,72,70,68,66,66,67,68,70,74,79,
+84,91,97,103,107,110,110,108,104,99,94,89,86,85,86,88,91,93,93,92,89,
+86,82,81,83,89,100,116,137,161,187,215,243,270,296,321,343,364,382,398,409,418,
+422,422,418,411,402,391,380,368,355,343,331,319,307,296,286,277,269,263,260,259,260,
+262,266,271,276,281,286,290,292,293,293,292,290,288,286,286,288,291,297,304,313,323,
+333,343,354,367,381,399,420,446,476,508,542,575,607,634,656,674,687,696,702,706,710,
+713,714,713,710,703,691,674,652,627,598,568,538,507,478,449,421,393,364,332,296,256,
+209,156,97,33,-33,-100,-167,-229,-285,-333,-374,-408,-437,-461,-482,-503,-522,-539,-555,-568,-577,
+-581,-580,-576,-569,-561,-554,-550,-548,-549,-553,-560,-569,-579,-591,-604,-620,-638,-658,-680,-703,-728,
+-751,-772,-792,-808,-823,-836,-847,-859,-870,-881,-890,-896,-898,-896,-889,-878,-864,-848,-834,-822,-816,
+-815,-821,-832,-849,-869,-891,-915,-941,-967,-994,-1022,-1052,-1084,-1117,-1153,-1191,-1230,-1271,-1313,-1357,-1401,
+-1446,-1492,-1538,-1583,-1627,-1669,-1708,-1744,-1777,-1807,-1836,-1863,-1889,-1915,-1941,-1967,-1991,-2014,-2034,-2052,-2067,
+-2080,-2092,-2105,-2120,-2139,-2164,-2196,-2236,-2284,-2340,-2401,-2466,-2534,-2602,-2669,-2732,-2790,-2842,-2887,-2926,-2957,
+-2982,-3001,-3017,-3029,-3039,-3048,-3058,-3068,-3079,-3091,-3103,-3115,-3127,-3137,-3144,-3150,-3152,-3152,-3148,-3143,-3135,
+-3126,-3118,-3110,-3105,-3102,-3103,-3108,-3116,-3126,-3138,-3150,-3161,-3170,-3176,-3179,-3180,-3178,-3175,-3171,-3167,-3162,
+-3158,-3155,-3152,-3149,-3145,-3142,-3138,-3133,-3126,-3119,-3109,-3096,-3081,-3062,-3040,-3015,-2988,-2959,-2930,-2901,-2875,
+-2851,-2830,-2814,-2802,-2795,-2790,-2789,-2790,-2791,-2792,-2793,-2792,-2789,-2785,-2781,-2777,-2774,-2774,-2776,-2779,-2783,
+-2784,-2781,-2770,-2750,-2720,-2681,-2633,-2580,-2525,-2472,-2425,-2387,-2359,-2342,-2334,-2334,-2339,-2345,-2351,-2355,-2354,
+-2349,-2339,-2326,-2308,-2288,-2267,-2245,-2223,-2202,-2181,-2161,-2142,-2122,-2101,-2078,-2051,-2021,-1987,-1948,-1904,-1856,
+-1803,-1747,-1688,-1625,-1560,-1492,-1422,-1351,-1280,-1210,-1141,-1074,-1009,-946,-885,-823,-761,-699,-635,-571,-508,
+-448,-390,-335,-284,-235,-188,-142,-97,-54,-14,18,44,59,66,65,61,62,75,107,165,250,
+361,495,642,792,937,1066,1175,1261,1325,1372,1408,1439,1470,1503,1542,1584,1628,1673,1718,1764,1812,
+1865,1925,1994,2071,2153,2236,2316,2386,2444,2488,2519,2539,2554,2569,2587,2611,2640,2670,2698,2718,2723,
+2711,2682,2635,2577,2512,2448,2389,2340,2305,2284,2277,2282,2299,2324,2359,2401,2452,2509,2573,2643,2717,
+2792,2866,2939,3008,3074,3137,3197,3256,3314,3372,3429,3486,3542,3595,3646,3695,3741,3785,3827,3867,3906,
+3942,3977,4010,4040,4069,4098,4127,4158,4192,4230,4270,4314,4359,4405,4448,4489,4526,4560,4591,4621,4652,
+4685,4721,4760,4801,4844,4887,4929,4970,5010,5050,5091,5135,5182,5232,5284,5335,5382,5420,5448,5463,5467,
+5462,5452,5444,5443,5454,5479,5519,5570,5630,5690,5746,5794,5829,5853,5867,5876,5884,5895,5913,5938,5970,
+6005,6041,6073,6098,6114,6119,6115,6104,6087,6067,6046,6024,6002,5980,5958,5936,5915,5897,5881,5870,5863,
+5860,5862,5866,5871,5877,5883,5889,5894,5900,5907,5916,5926,5937,5949,5959,5968,5976,5981,5987,5992,6000,
+6010,6022,6036,6051,6065,6076,6082,6083,6079,6071,6060,6047,6035,6024,6014,6005,5996,5986,5974,5960,5944,
+5926,5908,5890,5873,5858,5844,5832,5819,5805,5789,5771,5751,5729,5704,5678,5651,5622,5592,5559,5524,5487,
+5447,5405,5363,5322,5283,5248,5217,5192,5171,5154,5141,5129,5119,5108,5097,5085,5071,5057,5041,5024,5007,
+4989,4972,4954,4937,4921,4906,4894,4885,4877,4871,4866,4861,4853,4872,4857,4837,4814,4789,4765,4741,4721,
+4705,4692,4682,4673,4665,4654,4640,4621,4599,4573,4546,4518,4492,4468,4446,4426,4408,4390,4370,4348,4324,
+4295,4264,4231,4197,4162,4128,4095,4064,4036,4010,3988,3969,3954,3942,3935,3930,3929,3929,3930,3931,3931,
+3929,3924,3916,3904,3888,3866,3839,3806,3766,3720,3669,3614,3556,3497,3439,3385,3335,3291,3255,3225,3202,
+3184,3172,3164,3158,3154,3152,3148,3144,3137,3127,3113,3094,3071,3043,3012,2979,2944,2908,2872,2838,2805,
+2773,2742,2712,2682,2652,2622,2593,2564,2537,2511,2488,2466,2445,2424,2403,2381,2356,2328,2298,2265,2231,
+2197,2165,2134,2107,2082,2059,2037,2016,1994,1970,1946,1920,1894,1868,1845,1825,1808,1794,1782,1772,1762,
+1751,1738,1722,1703,1682,1659,1636,1613,1590,1567,1545,1522,1498,1474,1448,1421,1394,1369,1344,1322,1301,
+1281,1262,1241,1219,1196,1171,1145,1120,1099,1081,1068,1060,1057,1057,1057,1056,1051,1042,1028,1010,989,
+966,942,921,901,884,868,852,836,819,799,776,751,723,693,661,629,595,562,528,497,467,
+441,418,398,383,369,358,346,332,315,294,270,242,213,183,155,129,107,87,71,55,40,
+24,6,-14,-36,-59,-83,-106,-128,-147,-165,-180,-193,-205,-216,-227,-238,-251,-266,-283,-303,-326,
+-352,-380,-409,-437,-464,-488,-508,-524,-535,-543,-549,-554,-560,-567,-577,-587,-599,-611,-622,-632,-641,
+-648,-655,-663,-673,-684,-699,-716,-735,-757,-779,-802,-824,-845,-866,-886,-906,-927,-949,-973,-998,-1024,
+-1051,-1077,-1103,-1126,-1147,-1165,-1180,-1192,-1202,-1211,-1218,-1225,-1231,-1236,-1239,-1241,-1242,-1242,-1241,-1240,-1240,
+-1242,-1246,-1252,-1260,-1268,-1277,-1285,-1292,-1297,-1302,-1307,-1312,-1318,-1325,-1333,-1343,-1352,-1361,-1370,-1378,-1386,
+-1394,-1404,-1414,-1426,-1438,-1450,-1461,-1470,-1476,-1480,-1482,-1483,-1484,-1487,-1492,-1499,-1506,-1513,-1518,-1519,-1516,
+-1507,-1495,-1481,-1468,-1458,-1454,-1456,-1466,-1484,-1509,-1538,-1569,-1601,-1630,-1655,-1674,-1687,-1692,-1690,-1680,-1666,
+-1647,-1626,-1605,-1586,-1571,-1561,-1554,-1551,-1549,-1547,-1542,-1534,-1523,-1509,-1495,-1484,-1477,-1478,-1487,-1503,-1524,
+-1546,-1567,-1581,-1588,-1585,-1575,-1559,-1543,-1530,-1525,-1529,-1544,-1568,-1597,-1628,-1655,-1676,-1686,-1686,-1675,-1657,
+-1634,-1609,-1586,-1568,-1554,-1546,-1543,-1543,-1546,-1551,-1556,-1561,-1566,-1570,-1573,-1575,-1576,-1575,-1572,-1567,-1561,
+-1554,-1546,-1536,-1526,-1515,-1502,-1489,-1476,-1463,-1451,-1440,-1431,-1423,-1417,-1411,-1404,-1395,-1383,-1369,-1352,-1333,
+-1315,-1299,-1287,-1279,-1276,-1277,-1279,-1281,-1282,-1279,-1272,-1260,-1246,-1230,-1213,-1198,-1186,-1175,-1167,-1160,-1153,
+-1145,-1135,-1122,-1108,-1092,-1075,-1059,-1045,-1034,-1028,-1026,-1030,-1039,-1054,-1074,-1099,-1127,-1158,-1192,-1227,-1264,
+-1300,-1337,-1373,-1407,-1439,-1467,-1491,-1508,-1518,-1519,-1510,-1490,-1458,-1414,-1358,-1290,-1212,-1126,-1034,-939,-846,
+-758,-680,-614,-563,-528,-508,-502,-506,-516,-528,-538,-542,-540,-532,-518,-500,-482,-464,-449,-436,-426,
+-416,-406,-394,-378,-360,-339,-317,-296,-276,-258,-241,-226,-211,-194,-174,-151,-125,-96,-66,-37,-10,
+12,31,47,60,71,80,88,95,100,102,102,99,93,87,80,76,75,78,86,97,110,
+123,135,145,153,158,162,166,172,180,192,208,225,244,263,281,296,309,319,328,335,342,
+349,356,363,369,375,380,383,383,381,377,371,363,356,349,345,342,343,346,353,361,372,
+382,392,401,409,414,418,421,423,425,427,429,432,435,439,444,449,454,460,465,470,475,
+479,482,484,487,491,497,505,515,527,541,556,571,585,597,607,616,624,631,639,648,658,
+670,681,692,701,707,709,709,705,699,692,684,675,666,656,645,633,620,606,592,578,566,
+555,547,539,533,527,521,515,509,503,499,498,499,502,509,517,526,534,542,549,555,560,
+566,571,577,582,587,590,589,585,576,563,547,529,511,493,477,463,450,438,426,414,399,
+384,366,348,330,313,296,280,265,251,238,224,210,195,181,167,154,143,132,123,115,109,
+103,97,93,88,84,80,76,73,71,69,69,70,74,78,85,91,98,104,108,109,108,
+105,101,96,93,91,91,93,97,101,105,107,107,106,104,104,107,113,125,142,163,189,
+217,247,276,305,332,359,383,407,429,449,466,480,489,493,492,487,479,468,456,445,434,
+424,415,407,399,391,383,375,368,364,361,362,366,373,382,392,402,410,416,420,421,419,
+416,412,409,408,410,415,424,436,450,466,483,498,512,524,535,544,555,567,583,602,626,
+654,683,711,737,757,772,781,784,783,780,777,776,777,780,784,787,788,785,776,761,740,
+714,684,650,616,580,546,512,480,449,418,387,355,321,283,242,195,144,89,30,-28,-88,
+-145,-198,-247,-291,-329,-364,-394,-420,-443,-462,-475,-484,-487,-484,-478,-468,-458,-450,-445,-445,-450,
+-459,-472,-487,-504,-520,-537,-555,-573,-593,-615,-640,-665,-690,-714,-736,-754,-769,-780,-790,-799,-808,
+-818,-830,-841,-852,-861,-867,-869,-868,-863,-856,-850,-844,-843,-846,-853,-865,-880,-898,-916,-935,-952,
+-969,-986,-1002,-1020,-1040,-1063,-1090,-1121,-1157,-1197,-1240,-1286,-1334,-1383,-1432,-1480,-1527,-1572,-1616,-1658,-1698,
+-1737,-1774,-1812,-1849,-1886,-1922,-1958,-1992,-2024,-2053,-2080,-2102,-2122,-2140,-2156,-2173,-2191,-2214,-2241,-2275,-2315,
+-2362,-2416,-2474,-2537,-2602,-2668,-2732,-2794,-2851,-2902,-2947,-2985,-3017,-3041,-3060,-3073,-3084,-3093,-3101,-3109,-3118,
+-3129,-3140,-3152,-3164,-3176,-3186,-3194,-3201,-3206,-3208,-3209,-3208,-3206,-3203,-3200,-3198,-3197,-3198,-3202,-3209,-3218,
+-3230,-3242,-3255,-3266,-3275,-3280,-3283,-3282,-3279,-3274,-3268,-3262,-3256,-3252,-3247,-3244,-3240,-3236,-3232,-3227,-3221,
+-3213,-3204,-3193,-3180,-3163,-3143,-3119,-3091,-3061,-3029,-2996,-2963,-2932,-2904,-2881,-2862,-2849,-2841,-2837,-2838,-2841,
+-2846,-2851,-2855,-2857,-2857,-2855,-2852,-2849,-2847,-2846,-2847,-2850,-2854,-2856,-2853,-2844,-2827,-2800,-2764,-2719,-2669,
+-2618,-2568,-2524,-2488,-2462,-2447,-2440,-2440,-2445,-2451,-2456,-2459,-2458,-2452,-2443,-2429,-2413,-2394,-2374,-2353,-2331,
+-2310,-2288,-2267,-2247,-2226,-2204,-2180,-2154,-2124,-2090,-2051,-2007,-1959,-1907,-1852,-1795,-1735,-1674,-1613,-1551,-1488,
+-1426,-1364,-1302,-1240,-1179,-1116,-1052,-987,-919,-849,-779,-710,-643,-580,-522,-470,-423,-379,-336,-292,-247,
+-199,-151,-106,-66,-34,-12,0,7,15,29,58,109,184,284,405,542,685,824,952,1062,1152,
+1223,1279,1324,1364,1404,1445,1490,1538,1586,1634,1681,1729,1780,1836,1901,1975,2059,2148,2237,2321,2393,
+2449,2488,2512,2523,2528,2534,2545,2563,2589,2620,2648,2670,2677,2668,2640,2596,2541,2481,2424,2375,2340,
+2321,2317,2327,2349,2380,2418,2460,2507,2558,2613,2673,2736,2801,2867,2932,2996,3058,3117,3174,3229,3284,
+3340,3397,3454,3511,3567,3622,3674,3724,3772,3818,3862,3904,3945,3984,4022,4057,4090,4121,4152,4182,4214,
+4248,4284,4324,4366,4409,4453,4495,4534,4570,4603,4634,4663,4691,4721,4753,4788,4825,4864,4905,4947,4988,
+5030,5073,5117,5164,5214,5265,5317,5368,5413,5450,5477,5491,5495,5490,5481,5472,5468,5475,5493,5525,5567,
+5615,5666,5714,5755,5787,5810,5826,5838,5849,5863,5882,5905,5932,5960,5986,6007,6021,6026,6024,6017,6005,
+5992,5980,5968,5959,5950,5942,5935,5927,5918,5910,5904,5898,5894,5891,5888,5885,5881,5877,5872,5868,5866,
+5869,5876,5890,5908,5931,5955,5978,5999,6017,6032,6043,6052,6061,6070,6080,6092,6103,6112,6119,6120,6117,
+6110,6098,6084,6069,6055,6043,6032,6022,6013,6002,5990,5975,5958,5939,5917,5896,5875,5856,5838,5823,5809,
+5796,5784,5771,5757,5741,5721,5698,5671,5640,5605,5567,5526,5483,5441,5400,5361,5325,5293,5265,5240,5218,
+5198,5179,5162,5146,5130,5115,5101,5086,5072,5058,5043,5027,5011,4993,4976,4959,4944,4931,4920,4911,4906,
+4901,4897,4892,4884,4872,4873,4855,4833,4811,4787,4765,4746,4730,4718,4710,4703,4696,4688,4676,4660,4639,
+4613,4584,4554,4525,4498,4473,4452,4432,4413,4392,4368,4340,4306,4268,4226,4183,4140,4101,4065,4036,4012,
+3994,3981,3973,3968,3966,3967,3969,3973,3978,3983,3988,3992,3992,3989,3980,3964,3940,3907,3865,3813,3753,
+3685,3613,3538,3464,3393,3328,3272,3226,3191,3168,3155,3151,3154,3161,3171,3180,3188,3191,3189,3182,3169,
+3151,3128,3103,3075,3047,3018,2990,2962,2934,2905,2874,2842,2807,2770,2731,2690,2649,2609,2570,2534,2501,
+2472,2446,2423,2403,2384,2367,2349,2331,2311,2289,2265,2239,2211,2182,2152,2121,2090,2060,2030,2001,1973,
+1946,1920,1896,1874,1855,1839,1826,1817,1810,1806,1803,1799,1794,1787,1777,1763,1747,1729,1709,1689,1670,
+1651,1632,1612,1592,1570,1545,1519,1491,1461,1431,1402,1372,1344,1315,1286,1257,1225,1193,1161,1130,1102,
+1078,1061,1051,1047,1050,1056,1064,1071,1075,1075,1069,1059,1044,1028,1010,993,976,959,943,926,907,
+886,862,836,808,777,745,711,676,639,601,562,523,486,451,421,396,376,362,351,343,334,
+322,306,285,260,230,199,167,138,112,90,72,56,42,27,11,-7,-27,-48,-71,-93,-113,
+-132,-149,-164,-178,-190,-201,-211,-222,-233,-244,-257,-273,-292,-314,-340,-368,-399,-431,-463,-492,-518,
+-541,-561,-577,-591,-603,-615,-626,-636,-645,-652,-656,-657,-656,-653,-650,-648,-649,-655,-666,-682,-704,
+-730,-759,-789,-818,-845,-869,-892,-913,-934,-956,-981,-1008,-1039,-1072,-1107,-1142,-1175,-1204,-1229,-1248,-1262,
+-1272,-1279,-1283,-1286,-1288,-1290,-1291,-1291,-1291,-1289,-1287,-1285,-1284,-1285,-1289,-1295,-1304,-1313,-1321,-1329,-1334,
+-1338,-1340,-1341,-1343,-1347,-1353,-1361,-1371,-1382,-1393,-1403,-1412,-1421,-1429,-1437,-1447,-1458,-1469,-1480,-1491,-1498,
+-1503,-1504,-1503,-1500,-1497,-1494,-1494,-1496,-1500,-1504,-1508,-1510,-1510,-1506,-1501,-1495,-1490,-1490,-1494,-1504,-1521,
+-1544,-1572,-1602,-1634,-1664,-1692,-1716,-1735,-1747,-1753,-1752,-1745,-1732,-1716,-1696,-1676,-1657,-1641,-1628,-1618,-1611,
+-1606,-1601,-1594,-1585,-1575,-1562,-1551,-1542,-1538,-1540,-1549,-1564,-1583,-1602,-1619,-1629,-1631,-1623,-1608,-1586,-1563,
+-1543,-1528,-1523,-1527,-1541,-1561,-1583,-1605,-1622,-1631,-1632,-1624,-1610,-1592,-1573,-1556,-1543,-1534,-1531,-1532,-1538,
+-1546,-1556,-1567,-1578,-1587,-1596,-1602,-1606,-1608,-1608,-1606,-1604,-1601,-1598,-1596,-1594,-1591,-1587,-1581,-1572,-1561,
+-1546,-1531,-1515,-1501,-1490,-1481,-1474,-1469,-1465,-1459,-1451,-1440,-1427,-1411,-1396,-1381,-1368,-1358,-1351,-1345,-1340,
+-1333,-1324,-1312,-1296,-1278,-1258,-1237,-1217,-1199,-1183,-1170,-1158,-1148,-1138,-1128,-1117,-1106,-1094,-1082,-1071,-1061,
+-1053,-1048,-1046,-1048,-1055,-1066,-1083,-1104,-1130,-1161,-1196,-1234,-1276,-1319,-1363,-1407,-1448,-1486,-1518,-1543,-1560,
+-1566,-1562,-1547,-1519,-1479,-1428,-1365,-1291,-1207,-1116,-1019,-921,-825,-734,-654,-588,-537,-504,-486,-482,-487,
+-498,-510,-520,-524,-521,-513,-500,-485,-470,-455,-443,-432,-423,-413,-401,-386,-368,-348,-326,-305,-284,
+-265,-248,-233,-217,-199,-178,-153,-123,-91,-58,-25,5,32,55,74,91,107,122,138,154,167,
+177,182,179,169,154,134,113,96,84,79,84,96,114,134,155,173,187,196,202,206,210,
+216,225,237,252,270,287,305,320,333,344,352,359,365,371,376,381,387,392,396,399,401,
+402,401,399,395,391,387,384,382,382,384,389,396,405,415,425,435,443,450,455,458,461,
+463,465,468,471,475,479,484,489,495,500,504,508,511,513,514,515,516,518,521,526,534,
+545,557,572,587,601,615,628,639,649,659,670,681,693,706,718,730,740,747,752,754,754,
+751,747,742,735,727,716,704,690,674,658,641,624,609,596,584,574,565,557,549,541,534,
+528,524,524,526,532,541,551,562,572,580,587,592,596,600,604,609,615,620,623,624,622,
+615,604,589,573,556,539,523,509,496,483,471,456,440,422,402,382,361,341,322,304,288,
+273,258,243,228,213,198,184,170,157,146,136,127,120,113,108,103,99,95,91,87,83,
+79,75,72,70,69,70,72,76,80,84,87,89,89,88,86,84,84,86,91,97,105,
+114,121,126,129,131,131,132,135,142,154,171,192,217,244,272,299,325,350,372,394,414,
+433,451,466,477,484,487,485,479,471,462,452,445,440,437,437,438,440,443,445,449,453,
+460,469,481,496,513,530,548,562,574,580,582,578,572,564,555,550,548,551,561,576,596,
+620,645,670,692,710,724,734,742,747,754,762,774,788,805,822,838,851,858,860,855,846,
+835,822,812,805,801,801,802,804,804,800,791,777,757,732,703,671,638,603,568,533,499,
+466,435,405,376,348,320,291,260,225,188,146,102,55,7,-40,-87,-132,-175,-217,-255,-291,
+-322,-348,-368,-380,-385,-384,-376,-366,-356,-347,-343,-345,-354,-367,-385,-405,-427,-449,-470,-492,-515,
+-539,-564,-592,-619,-646,-670,-691,-708,-720,-729,-736,-743,-752,-763,-776,-792,-809,-826,-841,-853,-861,
+-866,-868,-869,-870,-873,-880,-890,-903,-919,-937,-954,-971,-986,-998,-1009,-1019,-1030,-1042,-1059,-1081,-1110,
+-1145,-1187,-1234,-1284,-1336,-1387,-1437,-1483,-1526,-1564,-1600,-1635,-1669,-1704,-1741,-1782,-1826,-1873,-1921,-1971,-2020,
+-2067,-2111,-2150,-2185,-2216,-2243,-2267,-2291,-2315,-2343,-2373,-2409,-2450,-2495,-2545,-2599,-2654,-2711,-2767,-2822,-2874,
+-2923,-2966,-3005,-3038,-3065,-3087,-3103,-3115,-3125,-3133,-3141,-3149,-3159,-3171,-3184,-3197,-3210,-3222,-3232,-3241,-3249,
+-3255,-3261,-3266,-3271,-3276,-3281,-3286,-3292,-3298,-3305,-3313,-3321,-3332,-3343,-3354,-3365,-3374,-3381,-3385,-3386,-3383,
+-3378,-3371,-3364,-3356,-3350,-3344,-3339,-3334,-3329,-3324,-3318,-3311,-3303,-3294,-3284,-3272,-3257,-3240,-3219,-3195,-3166,
+-3133,-3098,-3061,-3025,-2990,-2958,-2932,-2911,-2896,-2886,-2883,-2883,-2887,-2893,-2899,-2906,-2911,-2916,-2920,-2922,-2925,
+-2928,-2931,-2934,-2937,-2939,-2936,-2929,-2915,-2892,-2861,-2821,-2776,-2727,-2678,-2633,-2594,-2563,-2541,-2529,-2525,-2527,
+-2532,-2538,-2543,-2546,-2546,-2542,-2535,-2525,-2513,-2498,-2481,-2462,-2442,-2421,-2398,-2375,-2352,-2329,-2304,-2278,-2250,
+-2219,-2184,-2144,-2100,-2052,-2000,-1946,-1890,-1833,-1776,-1719,-1662,-1605,-1548,-1491,-1433,-1375,-1315,-1254,-1190,-1123,
+-1052,-980,-905,-831,-760,-692,-629,-573,-521,-473,-426,-379,-328,-274,-218,-162,-110,-64,-28,-1,16,
+31,47,72,113,173,255,357,474,600,726,846,953,1045,1121,1184,1238,1287,1334,1382,1432,1483,
+1533,1583,1633,1683,1736,1796,1864,1942,2029,2121,2213,2300,2374,2432,2471,2494,2503,2505,2507,2513,2527,
+2548,2575,2602,2623,2634,2630,2612,2580,2541,2498,2459,2429,2411,2406,2414,2432,2458,2490,2526,2565,2608,
+2655,2707,2764,2826,2890,2956,3021,3083,3141,3196,3247,3297,3346,3395,3446,3497,3550,3603,3656,3707,3758,
+3807,3855,3902,3948,3992,4035,4077,4115,4152,4186,4219,4252,4284,4317,4352,4389,4427,4466,4504,4542,4577,
+4611,4642,4672,4701,4729,4759,4790,4824,4860,4898,4937,4979,5022,5066,5112,5161,5212,5266,5320,5375,5426,
+5472,5509,5536,5551,5555,5551,5541,5530,5523,5523,5531,5549,5575,5606,5640,5671,5700,5723,5743,5759,5776,
+5794,5815,5839,5865,5891,5914,5932,5943,5946,5944,5937,5928,5921,5917,5916,5919,5925,5930,5935,5938,5937,
+5933,5928,5922,5915,5910,5906,5902,5899,5895,5891,5887,5886,5887,5894,5906,5924,5947,5973,6001,6027,6051,
+6071,6087,6100,6110,6118,6127,6136,6144,6151,6156,6157,6154,6146,6135,6120,6105,6089,6074,6060,6048,6036,
+6025,6013,5999,5984,5967,5949,5929,5909,5888,5868,5848,5830,5813,5797,5782,5767,5752,5736,5718,5696,5670,
+5640,5605,5567,5528,5488,5450,5414,5382,5354,5328,5304,5281,5258,5234,5209,5183,5159,5136,5116,5098,5084,
+5073,5063,5053,5043,5032,5019,5005,4990,4975,4960,4948,4937,4928,4919,4911,4901,4889,4873,4867,4851,4835,
+4820,4805,4792,4781,4771,4763,4756,4748,4739,4727,4710,4690,4664,4636,4605,4573,4542,4513,4486,4461,4438,
+4413,4386,4355,4319,4279,4236,4192,4148,4109,4076,4051,4033,4023,4019,4020,4023,4028,4034,4039,4044,4049,
+4054,4057,4059,4058,4052,4039,4017,3983,3938,3879,3808,3727,3638,3544,3450,3359,3276,3205,3146,3103,3074,
+3061,3060,3070,3088,3111,3136,3160,3180,3194,3199,3195,3182,3160,3131,3096,3060,3025,2992,2963,2939,2918,
+2898,2878,2855,2827,2794,2754,2709,2660,2611,2562,2517,2475,2439,2408,2381,2358,2337,2317,2298,2279,2259,
+2239,2219,2197,2175,2151,2126,2099,2071,2041,2011,1980,1950,1921,1894,1870,1850,1834,1823,1815,1812,1812,
+1814,1818,1820,1821,1819,1814,1805,1794,1779,1763,1746,1728,1711,1693,1676,1657,1638,1617,1594,1569,1542,
+1514,1486,1457,1428,1399,1369,1338,1305,1270,1234,1197,1161,1128,1100,1077,1062,1053,1051,1053,1058,1063,
+1067,1068,1066,1060,1052,1043,1032,1021,1011,999,987,973,956,936,914,889,861,832,800,767,732,
+695,655,614,572,530,490,454,423,399,381,367,357,348,337,322,301,276,246,213,179,147,
+118,92,71,53,38,23,8,-6,-23,-41,-60,-79,-97,-115,-131,-147,-163,-177,-191,-205,-217,
+-229,-239,-250,-261,-273,-289,-308,-331,-358,-388,-420,-452,-483,-512,-539,-563,-585,-605,-623,-640,-654,
+-666,-674,-677,-675,-668,-658,-645,-633,-623,-619,-621,-631,-649,-674,-705,-740,-775,-811,-844,-875,-904,
+-931,-959,-987,-1018,-1053,-1090,-1130,-1170,-1208,-1243,-1272,-1294,-1310,-1320,-1325,-1327,-1327,-1327,-1327,-1328,-1329,
+-1329,-1330,-1330,-1331,-1332,-1334,-1339,-1346,-1353,-1362,-1369,-1375,-1379,-1380,-1380,-1380,-1381,-1384,-1390,-1399,-1410,
+-1422,-1435,-1446,-1456,-1464,-1471,-1477,-1484,-1492,-1501,-1510,-1518,-1523,-1527,-1527,-1526,-1522,-1519,-1516,-1515,-1515,
+-1517,-1519,-1520,-1521,-1520,-1519,-1519,-1520,-1525,-1533,-1547,-1565,-1586,-1610,-1636,-1662,-1687,-1710,-1730,-1748,-1763,
+-1773,-1780,-1781,-1778,-1770,-1757,-1741,-1722,-1703,-1685,-1669,-1655,-1643,-1634,-1625,-1618,-1609,-1601,-1593,-1586,-1581,
+-1579,-1582,-1589,-1600,-1613,-1626,-1637,-1644,-1645,-1639,-1628,-1612,-1595,-1579,-1566,-1560,-1560,-1567,-1578,-1592,-1605,
+-1616,-1622,-1622,-1616,-1606,-1594,-1580,-1567,-1557,-1550,-1547,-1549,-1554,-1562,-1572,-1584,-1596,-1607,-1616,-1623,-1627,
+-1627,-1625,-1621,-1617,-1614,-1613,-1615,-1618,-1623,-1627,-1628,-1626,-1619,-1606,-1590,-1571,-1553,-1535,-1521,-1510,-1503,
+-1499,-1495,-1491,-1486,-1478,-1468,-1457,-1444,-1432,-1420,-1409,-1398,-1387,-1374,-1360,-1343,-1324,-1302,-1280,-1256,-1233,
+-1211,-1191,-1172,-1155,-1140,-1127,-1116,-1106,-1097,-1090,-1083,-1078,-1073,-1070,-1067,-1067,-1068,-1072,-1080,-1091,-1108,
+-1130,-1157,-1190,-1228,-1270,-1316,-1364,-1412,-1458,-1499,-1534,-1559,-1574,-1577,-1568,-1546,-1510,-1463,-1404,-1333,-1253,
+-1165,-1070,-972,-873,-779,-693,-619,-559,-516,-490,-479,-479,-487,-499,-510,-517,-519,-515,-506,-493,-479,
+-464,-451,-439,-428,-417,-405,-391,-375,-357,-337,-318,-299,-282,-267,-252,-237,-218,-196,-167,-134,-96,
+-56,-16,20,51,76,94,108,118,127,138,150,164,178,189,195,192,181,161,135,106,80,
+59,47,46,56,74,99,126,153,177,196,212,223,233,242,252,263,276,289,304,318,332,
+344,356,367,378,388,397,405,412,418,422,425,427,428,429,430,431,432,433,433,433,433,
+433,434,436,440,446,452,459,466,472,477,482,485,487,490,492,496,500,504,509,515,521,
+526,531,536,540,543,545,546,547,547,548,550,553,558,565,574,586,599,612,627,641,655,
+668,680,692,704,715,725,735,744,751,758,763,768,772,775,778,779,778,775,769,759,745,
+728,708,687,665,644,624,607,593,580,570,561,555,550,548,549,553,560,570,582,594,605,
+614,621,624,624,623,621,620,620,622,624,627,628,628,624,618,608,596,582,568,553,540,
+526,512,497,481,464,445,426,406,386,367,349,333,317,301,286,270,254,237,221,205,190,
+176,164,152,141,132,124,117,111,106,103,99,96,93,89,84,78,72,67,63,61,60,
+61,63,65,66,67,67,67,66,68,71,78,86,97,108,118,127,133,137,139,141,144,
+150,159,173,192,213,237,261,285,308,329,348,366,383,399,413,425,435,441,443,441,437,
+430,422,416,411,410,412,417,426,438,452,469,487,508,531,557,583,611,638,663,685,702,
+712,716,714,707,696,683,672,664,661,665,675,693,717,744,773,802,829,851,868,880,888,
+892,894,895,897,899,902,904,905,903,898,889,877,862,847,833,821,812,807,804,802,800,
+796,789,778,763,745,724,700,675,648,619,589,558,526,495,464,436,409,385,363,342,320,
+297,271,243,211,177,140,101,61,20,-22,-66,-111,-155,-196,-233,-264,-286,-298,-301,-297,-288,
+-277,-268,-263,-264,-272,-286,-306,-328,-352,-377,-401,-426,-451,-478,-506,-534,-563,-589,-613,-633,-648,
+-659,-668,-675,-683,-693,-707,-725,-746,-768,-791,-811,-830,-844,-855,-863,-870,-876,-883,-893,-905,-921,
+-939,-959,-979,-998,-1016,-1031,-1044,-1056,-1068,-1082,-1100,-1124,-1155,-1195,-1241,-1293,-1349,-1406,-1460,-1510,-1554,
+-1591,-1622,-1648,-1671,-1695,-1722,-1754,-1793,-1839,-1893,-1951,-2014,-2077,-2139,-2198,-2252,-2300,-2341,-2377,-2408,-2438,
+-2466,-2497,-2529,-2566,-2606,-2648,-2693,-2739,-2785,-2829,-2871,-2911,-2949,-2983,-3015,-3044,-3069,-3091,-3109,-3124,-3136,
+-3146,-3156,-3166,-3177,-3190,-3205,-3220,-3236,-3251,-3265,-3276,-3285,-3293,-3301,-3308,-3318,-3329,-3341,-3355,-3370,-3385,
+-3399,-3411,-3422,-3432,-3442,-3450,-3458,-3465,-3471,-3475,-3476,-3474,-3469,-3462,-3454,-3444,-3435,-3427,-3419,-3412,-3406,
+-3399,-3392,-3384,-3375,-3366,-3355,-3344,-3331,-3317,-3300,-3279,-3254,-3225,-3192,-3155,-3116,-3078,-3041,-3008,-2981,-2960,
+-2945,-2936,-2932,-2931,-2934,-2938,-2943,-2949,-2957,-2965,-2974,-2984,-2995,-3007,-3017,-3026,-3031,-3031,-3023,-3008,-2983,
+-2950,-2909,-2862,-2812,-2761,-2712,-2669,-2634,-2607,-2589,-2580,-2578,-2580,-2586,-2593,-2599,-2604,-2606,-2605,-2601,-2594,
+-2585,-2572,-2557,-2538,-2516,-2493,-2468,-2442,-2416,-2391,-2366,-2340,-2314,-2285,-2253,-2216,-2175,-2130,-2082,-2030,-1978,
+-1924,-1870,-1816,-1762,-1708,-1653,-1599,-1543,-1487,-1430,-1371,-1310,-1247,-1180,-1110,-1037,-961,-885,-810,-736,-666,
+-599,-536,-474,-413,-351,-287,-223,-159,-99,-44,1,39,67,90,110,134,167,213,274,352,444,
+546,652,757,856,947,1027,1098,1161,1220,1275,1330,1384,1438,1490,1541,1590,1639,1691,1748,1814,1888,
+1971,2061,2152,2239,2318,2382,2431,2463,2482,2493,2499,2506,2518,2533,2552,2571,2586,2593,2591,2580,2561,
+2539,2517,2500,2491,2491,2501,2517,2538,2562,2588,2615,2644,2679,2720,2770,2827,2892,2962,3034,3104,3170,
+3231,3285,3335,3381,3425,3469,3514,3561,3609,3659,3709,3760,3810,3860,3910,3959,4007,4054,4099,4142,4183,
+4221,4258,4292,4325,4359,4392,4426,4461,4496,4530,4564,4596,4626,4655,4683,4710,4737,4765,4795,4828,4863,
+4900,4940,4982,5027,5073,5122,5174,5228,5284,5341,5398,5453,5502,5545,5577,5598,5607,5606,5596,5583,5569,
+5558,5554,5558,5570,5589,5613,5637,5661,5683,5703,5720,5738,5757,5778,5802,5828,5854,5876,5894,5904,5907,
+5904,5897,5889,5884,5884,5889,5900,5914,5929,5942,5950,5951,5947,5937,5925,5912,5901,5894,5892,5893,5898,
+5906,5915,5926,5938,5952,5968,5986,6007,6030,6053,6075,6096,6114,6129,6141,6152,6161,6170,6178,6185,6190,
+6193,6192,6187,6179,6167,6153,6139,6124,6109,6096,6083,6070,6056,6041,6025,6008,5991,5975,5958,5943,5927,
+5911,5894,5876,5855,5833,5810,5788,5765,5743,5722,5701,5678,5653,5626,5596,5564,5531,5499,5468,5441,5415,
+5392,5370,5346,5321,5293,5261,5227,5193,5161,5132,5109,5092,5081,5075,5073,5072,5069,5065,5057,5046,5031,
+5015,4997,4979,4961,4944,4928,4913,4897,4882,4867,4867,4856,4847,4840,4834,4828,4822,4816,4807,4797,4785,
+4770,4752,4731,4707,4679,4650,4618,4586,4552,4519,4486,4453,4419,4384,4347,4308,4268,4228,4190,4155,4126,
+4104,4090,4084,4084,4089,4097,4105,4111,4116,4117,4117,4115,4112,4109,4104,4097,4085,4067,4038,3997,3943,
+3874,3791,3696,3593,3486,3381,3282,3193,3119,3062,3023,3000,2993,2999,3015,3038,3065,3093,3121,3145,3164,
+3175,3179,3172,3156,3131,3098,3059,3019,2979,2943,2913,2888,2867,2849,2831,2810,2784,2750,2710,2665,2616,
+2566,2518,2473,2432,2396,2365,2336,2310,2284,2258,2232,2205,2178,2152,2126,2102,2078,2055,2032,2009,1985,
+1962,1938,1914,1892,1871,1852,1835,1822,1813,1807,1804,1804,1807,1811,1815,1819,1821,1821,1818,1813,1805,
+1794,1782,1769,1754,1739,1723,1705,1686,1665,1642,1618,1593,1566,1540,1515,1490,1466,1442,1418,1392,1364,
+1334,1301,1266,1229,1194,1161,1132,1108,1090,1078,1070,1065,1062,1060,1056,1051,1044,1036,1027,1017,1008,
+998,988,978,968,955,941,925,907,887,865,841,815,785,753,719,681,642,602,563,525,492,
+462,437,417,399,383,367,348,326,300,271,239,205,172,141,113,88,66,47,30,14,-1,
+-16,-32,-47,-63,-79,-95,-111,-128,-146,-164,-182,-200,-216,-231,-243,-254,-263,-273,-285,-299,-316,
+-338,-363,-390,-418,-446,-473,-499,-523,-546,-568,-590,-611,-630,-647,-660,-667,-668,-662,-650,-633,-614,
+-595,-581,-572,-572,-581,-600,-628,-664,-704,-748,-792,-835,-876,-914,-951,-986,-1022,-1059,-1097,-1138,-1179,
+-1220,-1257,-1289,-1316,-1335,-1348,-1355,-1358,-1359,-1360,-1361,-1363,-1366,-1369,-1373,-1376,-1379,-1382,-1386,-1389,-1394,
+-1399,-1404,-1408,-1411,-1413,-1413,-1413,-1413,-1415,-1420,-1427,-1438,-1450,-1463,-1476,-1487,-1496,-1504,-1510,-1516,-1522,
+-1528,-1535,-1541,-1546,-1550,-1553,-1553,-1553,-1552,-1552,-1552,-1553,-1554,-1555,-1554,-1551,-1547,-1543,-1540,-1540,-1545,
+-1555,-1570,-1590,-1613,-1637,-1660,-1680,-1697,-1712,-1724,-1735,-1746,-1757,-1767,-1777,-1784,-1789,-1789,-1784,-1774,-1761,
+-1745,-1727,-1709,-1691,-1675,-1660,-1648,-1638,-1630,-1625,-1622,-1621,-1623,-1627,-1633,-1640,-1647,-1653,-1659,-1662,-1663,
+-1661,-1657,-1651,-1644,-1637,-1631,-1627,-1626,-1629,-1634,-1641,-1649,-1657,-1663,-1666,-1666,-1663,-1656,-1647,-1637,-1627,
+-1617,-1608,-1602,-1599,-1599,-1602,-1608,-1617,-1628,-1639,-1649,-1657,-1661,-1662,-1660,-1655,-1648,-1643,-1640,-1640,-1643,
+-1648,-1655,-1659,-1661,-1657,-1648,-1634,-1616,-1596,-1576,-1557,-1542,-1529,-1520,-1513,-1507,-1502,-1496,-1489,-1481,-1472,
+-1461,-1451,-1439,-1425,-1410,-1393,-1375,-1354,-1332,-1309,-1286,-1263,-1240,-1219,-1198,-1179,-1161,-1145,-1131,-1119,-1110,
+-1103,-1098,-1095,-1094,-1093,-1092,-1092,-1092,-1094,-1097,-1102,-1111,-1123,-1140,-1163,-1191,-1224,-1262,-1305,-1350,-1397,
+-1442,-1484,-1519,-1545,-1560,-1563,-1552,-1528,-1490,-1438,-1375,-1300,-1216,-1124,-1028,-929,-833,-744,-665,-599,-550,
+-517,-499,-494,-498,-508,-518,-526,-529,-526,-519,-507,-493,-478,-464,-451,-439,-427,-415,-402,-388,-372,
+-356,-340,-326,-313,-302,-291,-279,-264,-244,-217,-182,-141,-93,-44,4,47,83,109,124,132,132,
+130,128,128,132,139,146,152,154,149,137,118,94,70,47,31,23,24,35,53,77,103,
+130,156,181,203,223,242,260,276,292,307,320,332,344,357,370,383,398,414,428,442,452,
+460,465,467,467,466,466,467,469,471,474,477,479,480,481,481,482,483,485,488,492,496,
+500,503,506,508,510,512,515,518,523,528,534,540,546,552,557,563,568,573,577,581,585,
+588,591,593,594,596,599,603,609,617,627,638,651,665,680,693,706,718,727,736,742,748,
+754,759,765,772,780,788,796,803,808,810,808,801,789,772,751,728,703,677,653,631,611,
+595,582,573,567,564,565,570,577,588,600,613,626,637,645,649,649,646,640,634,628,623,
+621,621,623,626,629,630,629,625,618,608,596,582,566,549,532,513,495,476,457,438,421,
+404,388,373,359,344,330,314,298,281,264,248,232,217,202,188,175,163,151,140,130,122,
+115,111,108,105,103,99,95,89,83,75,69,63,59,57,57,58,59,60,59,59,57,
+56,57,60,65,72,81,91,100,108,114,119,124,129,137,147,161,178,198,220,244,267,
+289,309,327,344,359,373,386,397,406,413,416,417,415,410,405,399,394,391,392,397,407,
+422,443,469,500,534,571,609,647,682,713,740,760,772,778,778,771,761,749,737,727,720,
+719,723,733,749,770,795,821,848,873,896,915,929,940,945,948,947,943,938,931,922,912,
+900,887,874,860,847,836,826,819,813,808,804,799,792,782,771,757,742,726,710,692,674,
+655,635,612,587,562,535,510,485,463,443,423,404,385,364,340,315,288,259,230,200,168,
+134,97,56,11,-36,-84,-130,-169,-200,-221,-230,-230,-223,-213,-204,-199,-201,-209,-225,-246,-270,
+-296,-322,-348,-374,-399,-426,-453,-480,-506,-531,-552,-570,-585,-597,-607,-617,-630,-645,-664,-687,-712,
+-739,-766,-790,-813,-832,-848,-861,-872,-883,-894,-906,-920,-936,-955,-976,-998,-1022,-1045,-1067,-1089,-1110,
+-1131,-1153,-1178,-1209,-1245,-1288,-1338,-1393,-1451,-1509,-1564,-1614,-1656,-1690,-1717,-1738,-1755,-1772,-1792,-1817,-1851,
+-1895,-1947,-2007,-2073,-2142,-2211,-2278,-2339,-2394,-2441,-2481,-2516,-2547,-2577,-2607,-2639,-2674,-2711,-2750,-2790,-2829,
+-2867,-2901,-2932,-2961,-2987,-3012,-3035,-3058,-3079,-3099,-3117,-3132,-3145,-3157,-3169,-3181,-3195,-3211,-3230,-3250,-3270,
+-3288,-3305,-3318,-3329,-3337,-3346,-3355,-3368,-3383,-3402,-3423,-3446,-3467,-3486,-3503,-3515,-3525,-3531,-3536,-3539,-3542,
+-3544,-3545,-3544,-3540,-3534,-3525,-3515,-3504,-3494,-3484,-3475,-3467,-3459,-3452,-3445,-3436,-3426,-3415,-3403,-3390,-3376,
+-3361,-3343,-3321,-3296,-3266,-3231,-3194,-3154,-3115,-3078,-3046,-3019,-2999,-2985,-2977,-2973,-2971,-2972,-2973,-2976,-2979,
+-2986,-2995,-3007,-3023,-3042,-3062,-3080,-3094,-3103,-3102,-3092,-3070,-3039,-2998,-2951,-2899,-2847,-2796,-2750,-2709,-2677,
+-2652,-2635,-2626,-2622,-2622,-2626,-2631,-2636,-2640,-2643,-2644,-2642,-2636,-2627,-2613,-2595,-2572,-2547,-2518,-2489,-2461,
+-2434,-2409,-2386,-2365,-2344,-2322,-2297,-2268,-2234,-2196,-2153,-2107,-2059,-2011,-1961,-1911,-1861,-1811,-1759,-1706,-1653,
+-1598,-1543,-1488,-1432,-1374,-1314,-1250,-1182,-1109,-1032,-951,-867,-782,-698,-615,-534,-454,-377,-302,-228,-156,
+-88,-24,33,84,128,166,199,230,262,299,342,394,455,524,599,677,757,835,911,985,1055,
+1124,1191,1257,1322,1384,1444,1501,1554,1605,1656,1710,1767,1832,1904,1983,2066,2149,2229,2302,2363,2411,
+2448,2474,2492,2506,2518,2529,2538,2545,2548,2547,2541,2531,2521,2512,2510,2515,2529,2552,2580,2610,2640,
+2668,2692,2714,2737,2765,2800,2844,2900,2965,3036,3110,3184,3253,3316,3372,3423,3469,3513,3556,3601,3647,
+3694,3743,3793,3842,3892,3942,3992,4041,4090,4139,4185,4229,4270,4308,4344,4378,4411,4444,4476,4509,4541,
+4573,4603,4631,4656,4679,4700,4721,4741,4764,4789,4817,4851,4888,4930,4975,5024,5076,5130,5186,5245,5304,
+5364,5423,5480,5532,5577,5611,5634,5645,5643,5632,5613,5593,5575,5562,5559,5565,5582,5605,5633,5663,5691,
+5716,5738,5758,5776,5795,5814,5835,5856,5875,5890,5900,5903,5902,5896,5890,5887,5888,5896,5909,5927,5946,
+5962,5972,5975,5969,5956,5939,5920,5903,5891,5887,5891,5902,5920,5941,5965,5989,6013,6037,6059,6081,6101,
+6120,6137,6152,6165,6176,6186,6196,6205,6214,6223,6231,6236,6237,6234,6227,6216,6202,6188,6173,6160,6149,
+6139,6129,6117,6103,6085,6064,6041,6018,5995,5976,5960,5947,5936,5925,5912,5896,5876,5851,5823,5794,5765,
+5736,5710,5686,5663,5641,5618,5594,5569,5543,5518,5494,5471,5449,5427,5403,5377,5346,5311,5272,5232,5192,
+5156,5125,5103,5088,5081,5080,5083,5086,5088,5087,5082,5072,5058,5041,5021,5000,4978,4956,4934,4914,4896,
+4881,4867,4875,4866,4860,4856,4853,4850,4845,4838,4826,4811,4793,4772,4749,4724,4697,4669,4640,4609,4576,
+4540,4502,4462,4419,4375,4331,4286,4243,4204,4170,4144,4126,4117,4118,4125,4138,4153,4167,4177,4182,4181,
+4174,4163,4149,4135,4120,4105,4090,4071,4047,4014,3969,3911,3839,3754,3657,3552,3444,3338,3239,3153,3082,
+3029,2995,2979,2978,2989,3009,3033,3058,3081,3102,3119,3133,3142,3145,3144,3136,3121,3099,3070,3036,2999,
+2961,2924,2890,2860,2833,2808,2782,2754,2722,2686,2646,2602,2558,2514,2473,2435,2400,2368,2337,2307,2276,
+2243,2210,2175,2139,2104,2070,2038,2007,1979,1954,1930,1909,1889,1873,1858,1846,1836,1827,1819,1812,1806,
+1800,1795,1791,1789,1787,1787,1788,1790,1792,1794,1796,1796,1795,1792,1788,1782,1773,1763,1749,1732,1711,
+1687,1659,1629,1598,1567,1538,1511,1487,1466,1448,1431,1415,1396,1376,1351,1323,1292,1260,1227,1196,1168,
+1145,1127,1113,1102,1094,1087,1080,1071,1059,1045,1029,1011,993,975,958,942,928,916,905,895,886,
+876,864,850,834,815,793,767,738,707,674,639,603,568,533,501,470,442,416,391,367,342,
+317,291,264,235,205,176,148,120,95,71,49,29,10,-7,-23,-39,-54,-69,-84,-100,-118,
+-137,-157,-177,-197,-216,-232,-246,-259,-270,-280,-292,-306,-324,-344,-366,-391,-415,-438,-460,-480,-500,
+-518,-537,-556,-576,-595,-613,-627,-637,-639,-635,-623,-606,-586,-564,-545,-531,-525,-529,-543,-568,-603,
+-647,-696,-749,-802,-853,-901,-946,-987,-1026,-1063,-1101,-1140,-1180,-1221,-1260,-1296,-1328,-1353,-1372,-1384,-1391,
+-1395,-1397,-1399,-1402,-1405,-1410,-1414,-1419,-1422,-1424,-1426,-1427,-1428,-1429,-1429,-1430,-1430,-1430,-1431,-1432,-1435,
+-1441,-1448,-1459,-1471,-1483,-1496,-1507,-1516,-1524,-1531,-1538,-1544,-1551,-1558,-1564,-1570,-1573,-1576,-1576,-1576,-1576,
+-1578,-1581,-1586,-1592,-1596,-1597,-1595,-1588,-1579,-1570,-1562,-1560,-1564,-1576,-1594,-1618,-1643,-1666,-1686,-1701,-1711,
+-1718,-1722,-1728,-1735,-1746,-1760,-1775,-1790,-1804,-1813,-1817,-1816,-1810,-1799,-1784,-1767,-1749,-1731,-1713,-1698,-1686,
+-1678,-1675,-1676,-1683,-1692,-1704,-1715,-1724,-1730,-1732,-1729,-1723,-1715,-1707,-1699,-1692,-1689,-1688,-1690,-1695,-1701,
+-1708,-1716,-1724,-1732,-1738,-1742,-1744,-1743,-1740,-1734,-1726,-1716,-1706,-1694,-1684,-1674,-1666,-1661,-1659,-1661,-1667,
+-1675,-1685,-1695,-1705,-1712,-1715,-1715,-1712,-1706,-1700,-1694,-1690,-1688,-1689,-1690,-1692,-1692,-1689,-1683,-1672,-1658,
+-1642,-1624,-1606,-1589,-1572,-1558,-1544,-1532,-1521,-1511,-1501,-1491,-1482,-1472,-1460,-1447,-1432,-1414,-1394,-1372,-1349,
+-1326,-1304,-1283,-1263,-1245,-1228,-1212,-1197,-1183,-1170,-1158,-1149,-1141,-1136,-1132,-1129,-1127,-1125,-1123,-1121,-1120,
+-1119,-1120,-1124,-1131,-1141,-1154,-1173,-1195,-1222,-1254,-1290,-1329,-1370,-1411,-1450,-1484,-1511,-1527,-1531,-1522,-1500,
+-1463,-1412,-1348,-1272,-1186,-1093,-996,-899,-805,-720,-648,-590,-549,-524,-512,-512,-518,-526,-533,-537,-535,
+-529,-519,-506,-493,-480,-468,-457,-446,-435,-423,-410,-396,-381,-367,-354,-343,-334,-327,-319,-310,-297,
+-277,-251,-215,-172,-121,-65,-9,43,88,124,147,158,158,150,137,125,116,111,112,117,125,
+131,135,134,128,118,105,92,81,73,69,71,78,88,102,118,137,159,182,207,232,257,
+281,303,322,339,354,369,384,401,418,437,455,471,485,496,502,505,505,504,503,503,505,
+507,510,513,516,517,518,518,518,518,519,521,524,527,530,533,535,536,538,540,543,546,
+551,557,564,570,576,582,588,593,599,605,611,618,625,632,637,641,643,644,644,644,644,
+647,651,659,669,682,696,710,724,736,745,753,759,764,769,775,782,790,800,809,818,826,
+831,833,831,824,814,800,782,762,740,717,693,671,650,632,618,606,598,594,594,597,603,
+611,621,631,641,649,655,658,657,653,647,640,633,628,625,626,629,634,640,646,649,649,
+645,637,625,609,590,569,548,526,504,484,465,447,431,416,403,389,376,362,347,332,316,
+300,284,268,254,240,226,213,199,185,171,157,144,133,125,119,116,115,115,115,113,110,
+105,99,91,84,78,74,71,70,70,71,70,69,67,64,61,59,59,60,64,69,75,
+82,90,98,107,117,129,143,160,180,203,227,252,276,299,321,340,357,372,385,397,407,
+416,424,430,434,435,433,430,424,418,413,410,411,418,431,452,481,515,554,596,637,677,
+711,740,761,775,783,784,781,774,767,759,752,748,746,748,754,763,775,789,806,824,842,
+861,879,895,910,921,930,934,935,932,925,915,902,887,872,858,845,834,826,819,815,812,
+808,803,796,787,775,761,746,730,716,702,690,679,668,656,642,627,610,592,573,555,539,
+522,506,489,470,448,422,394,364,334,306,281,257,235,212,186,153,114,69,20,-28,-74,
+-112,-140,-156,-162,-161,-155,-150,-149,-155,-167,-186,-210,-237,-264,-291,-317,-341,-365,-389,-413,-437,
+-460,-481,-500,-517,-531,-544,-557,-572,-589,-611,-635,-663,-693,-723,-753,-781,-808,-832,-854,-874,-892,
+-909,-924,-939,-954,-970,-987,-1007,-1030,-1057,-1085,-1116,-1149,-1182,-1215,-1249,-1284,-1321,-1360,-1403,-1450,-1500,
+-1552,-1604,-1654,-1700,-1740,-1773,-1799,-1820,-1837,-1852,-1869,-1889,-1917,-1952,-1996,-2047,-2106,-2169,-2234,-2299,-2359,
+-2414,-2462,-2504,-2539,-2569,-2598,-2626,-2655,-2687,-2722,-2758,-2794,-2831,-2865,-2897,-2926,-2954,-2980,-3006,-3032,-3058,
+-3083,-3107,-3128,-3146,-3161,-3173,-3184,-3196,-3211,-3228,-3249,-3272,-3296,-3320,-3340,-3358,-3371,-3382,-3392,-3404,-3418,
+-3435,-3457,-3482,-3507,-3531,-3552,-3569,-3580,-3587,-3591,-3592,-3593,-3593,-3593,-3593,-3592,-3589,-3584,-3576,-3565,-3554,
+-3543,-3533,-3524,-3517,-3511,-3505,-3499,-3491,-3481,-3468,-3454,-3438,-3421,-3402,-3382,-3358,-3332,-3301,-3267,-3230,-3191,
+-3152,-3115,-3082,-3054,-3033,-3018,-3008,-3003,-3000,-2998,-2996,-2996,-2998,-3002,-3011,-3024,-3042,-3064,-3088,-3110,-3128,
+-3139,-3139,-3129,-3107,-3076,-3036,-2992,-2945,-2898,-2854,-2814,-2779,-2749,-2724,-2705,-2690,-2679,-2671,-2667,-2666,-2666,
+-2668,-2669,-2670,-2668,-2663,-2653,-2638,-2618,-2593,-2564,-2533,-2503,-2474,-2448,-2427,-2409,-2393,-2379,-2363,-2344,-2321,
+-2291,-2257,-2218,-2175,-2131,-2087,-2043,-2000,-1957,-1913,-1867,-1819,-1770,-1718,-1664,-1610,-1556,-1501,-1444,-1385,-1323,
+-1255,-1181,-1101,-1014,-923,-829,-733,-638,-545,-455,-368,-284,-202,-123,-45,30,104,174,239,299,351,
+396,434,467,496,524,553,585,622,665,715,771,833,900,972,1048,1127,1207,1287,1364,1438,1507,
+1570,1628,1683,1736,1790,1848,1911,1979,2052,2127,2200,2269,2330,2382,2423,2455,2478,2494,2504,2509,2510,
+2507,2501,2493,2486,2483,2487,2500,2525,2561,2606,2655,2706,2752,2792,2824,2850,2872,2896,2925,2962,3010,
+3067,3132,3201,3270,3337,3400,3457,3509,3558,3606,3653,3701,3749,3798,3847,3896,3944,3992,4040,4088,4137,
+4187,4236,4283,4329,4371,4409,4444,4477,4507,4537,4565,4594,4621,4646,4670,4690,4706,4720,4732,4744,4757,
+4774,4795,4823,4857,4899,4948,5001,5060,5121,5185,5249,5313,5377,5439,5498,5552,5599,5638,5665,5681,5683,
+5674,5655,5631,5606,5584,5571,5568,5577,5597,5626,5660,5696,5729,5759,5784,5804,5822,5837,5852,5866,5880,
+5892,5901,5907,5909,5909,5908,5908,5912,5920,5934,5951,5969,5985,5996,5999,5995,5983,5967,5949,5934,5924,
+5922,5930,5945,5968,5995,6024,6053,6080,6105,6127,6147,6165,6181,6194,6206,6217,6226,6235,6244,6253,6262,
+6272,6280,6286,6288,6285,6277,6264,6248,6231,6215,6202,6191,6184,6178,6171,6160,6145,6123,6096,6065,6033,
+6003,5977,5956,5941,5929,5918,5907,5892,5873,5849,5821,5791,5761,5733,5707,5684,5663,5644,5624,5604,5583,
+5562,5541,5519,5498,5476,5453,5426,5395,5360,5320,5277,5235,5194,5159,5130,5110,5098,5092,5090,5091,5092,
+5091,5087,5079,5069,5056,5040,5023,5005,4985,4964,4943,4923,4904,4888,4875,4882,4870,4862,4858,4855,4853,
+4848,4840,4826,4808,4785,4758,4728,4697,4666,4634,4601,4567,4532,4495,4455,4413,4369,4324,4280,4237,4199,
+4167,4144,4131,4128,4135,4150,4169,4189,4207,4217,4220,4213,4197,4176,4150,4124,4098,4074,4051,4026,3997,
+3962,3916,3859,3790,3709,3618,3521,3421,3323,3232,3151,3083,3033,3000,2984,2984,2996,3016,3041,3066,3088,
+3106,3117,3123,3124,3122,3117,3109,3099,3086,3069,3047,3020,2990,2957,2921,2886,2850,2814,2777,2740,2701,
+2660,2618,2575,2532,2492,2455,2421,2389,2360,2331,2300,2268,2234,2197,2158,2119,2081,2043,2007,1973,1941,
+1911,1882,1857,1836,1818,1806,1798,1794,1793,1793,1794,1793,1790,1784,1777,1768,1758,1751,1745,1742,1743,
+1746,1751,1758,1766,1774,1781,1786,1789,1789,1785,1777,1762,1742,1716,1684,1647,1608,1569,1532,1498,1470,
+1449,1433,1421,1411,1402,1390,1375,1355,1331,1303,1274,1245,1219,1197,1180,1167,1158,1151,1145,1138,1127,
+1112,1092,1067,1038,1006,973,942,914,890,871,857,847,841,837,833,828,822,813,800,785,765,
+743,716,686,653,616,577,536,496,457,421,388,359,333,310,289,268,246,223,198,172,145,
+118,92,66,42,19,-1,-20,-38,-55,-71,-88,-105,-122,-141,-160,-180,-199,-217,-233,-248,-261,
+-274,-287,-302,-320,-341,-364,-390,-416,-442,-466,-488,-507,-524,-539,-553,-566,-579,-590,-599,-605,-606,
+-602,-592,-578,-561,-544,-527,-514,-507,-508,-517,-535,-563,-601,-646,-697,-752,-809,-864,-917,-964,-1007,
+-1046,-1083,-1118,-1154,-1192,-1231,-1270,-1309,-1344,-1375,-1399,-1416,-1427,-1433,-1436,-1438,-1440,-1442,-1445,-1448,-1451,
+-1454,-1455,-1455,-1455,-1453,-1451,-1449,-1448,-1447,-1447,-1449,-1452,-1459,-1468,-1479,-1492,-1505,-1518,-1528,-1537,-1543,
+-1549,-1554,-1559,-1566,-1575,-1583,-1591,-1597,-1600,-1600,-1599,-1597,-1597,-1600,-1607,-1617,-1628,-1638,-1644,-1644,-1638,
+-1627,-1614,-1602,-1596,-1597,-1607,-1624,-1647,-1671,-1694,-1711,-1723,-1730,-1734,-1738,-1744,-1754,-1768,-1787,-1807,-1826,
+-1843,-1855,-1862,-1864,-1861,-1855,-1845,-1833,-1820,-1805,-1790,-1776,-1764,-1756,-1753,-1757,-1766,-1780,-1796,-1811,-1823,
+-1829,-1828,-1820,-1807,-1791,-1775,-1761,-1751,-1746,-1747,-1753,-1762,-1775,-1788,-1802,-1814,-1824,-1831,-1835,-1835,-1832,
+-1824,-1814,-1801,-1787,-1773,-1759,-1746,-1735,-1727,-1722,-1720,-1721,-1725,-1731,-1739,-1748,-1757,-1765,-1771,-1774,-1774,
+-1771,-1767,-1761,-1754,-1748,-1742,-1737,-1732,-1727,-1721,-1714,-1706,-1696,-1685,-1673,-1658,-1643,-1626,-1607,-1588,-1568,
+-1549,-1530,-1513,-1497,-1483,-1469,-1455,-1440,-1424,-1405,-1385,-1363,-1342,-1322,-1303,-1287,-1273,-1260,-1248,-1237,-1227,
+-1216,-1207,-1198,-1190,-1184,-1179,-1174,-1170,-1165,-1160,-1153,-1147,-1141,-1137,-1136,-1138,-1143,-1152,-1164,-1180,-1200,
+-1223,-1250,-1280,-1314,-1350,-1386,-1421,-1451,-1474,-1488,-1490,-1480,-1456,-1417,-1365,-1300,-1224,-1138,-1045,-950,-855,
+-766,-686,-620,-570,-535,-516,-510,-512,-518,-526,-531,-532,-528,-521,-512,-502,-492,-483,-474,-465,-456,
+-445,-432,-418,-403,-387,-372,-358,-346,-335,-326,-317,-308,-297,-282,-262,-235,-199,-155,-103,-46,12,
+69,120,160,187,199,199,188,171,154,140,132,132,140,154,171,189,204,215,222,224,221,
+216,207,196,184,172,160,150,144,143,149,162,181,205,233,263,292,319,345,368,390,411,
+432,452,471,488,503,515,523,528,530,531,532,533,534,536,539,541,543,543,543,543,543,
+544,545,548,552,556,560,563,565,567,569,572,575,580,587,594,602,609,616,622,627,631,
+635,639,645,651,659,666,674,680,684,686,686,685,683,683,684,688,696,706,719,732,746,
+757,767,775,781,787,793,800,807,816,825,833,840,843,844,842,837,830,821,811,799,786,
+772,756,739,722,705,688,673,661,651,643,638,636,635,635,637,639,642,645,647,648,647,
+645,641,637,633,630,630,632,637,644,651,658,662,663,659,649,635,617,596,574,551,528,
+507,488,470,455,440,427,413,400,387,372,357,341,325,310,295,281,267,254,242,229,215,
+200,186,171,157,146,138,133,132,133,137,141,144,146,144,140,134,126,117,110,104,100,
+98,97,97,97,96,95,93,92,90,89,89,90,93,98,104,113,123,136,151,169,189,
+211,235,260,285,309,332,353,371,388,402,415,426,437,446,455,462,468,473,475,474,472,
+468,463,459,459,463,474,492,518,549,584,622,659,693,722,745,761,772,778,781,781,781,
+780,780,781,783,786,790,796,802,809,818,826,836,846,857,868,880,891,901,909,914,916,
+914,908,897,884,868,852,837,824,813,805,800,796,792,787,780,769,756,742,726,711,697,
+687,678,673,668,664,659,652,643,633,623,612,602,592,582,570,553,532,505,472,437,400,
+367,339,317,301,289,278,264,242,211,171,122,70,19,-25,-61,-86,-101,-107,-110,-112,-118,
+-129,-147,-169,-195,-223,-250,-276,-299,-321,-343,-364,-385,-407,-427,-447,-464,-480,-495,-509,-525,-543,
+-564,-588,-616,-646,-678,-710,-742,-774,-805,-835,-865,-893,-919,-943,-964,-983,-1001,-1017,-1035,-1055,-1079,
+-1108,-1143,-1181,-1223,-1267,-1311,-1354,-1395,-1435,-1472,-1510,-1547,-1585,-1623,-1663,-1701,-1739,-1774,-1805,-1832,-1856,
+-1876,-1893,-1910,-1927,-1948,-1974,-2006,-2044,-2090,-2141,-2196,-2252,-2308,-2360,-2407,-2448,-2484,-2515,-2543,-2570,-2598,
+-2627,-2659,-2693,-2729,-2766,-2802,-2838,-2874,-2909,-2945,-2981,-3018,-3054,-3089,-3120,-3147,-3168,-3184,-3195,-3204,-3214,
+-3226,-3242,-3262,-3287,-3314,-3341,-3366,-3388,-3406,-3420,-3433,-3446,-3461,-3479,-3501,-3526,-3550,-3574,-3593,-3608,-3617,
+-3622,-3623,-3623,-3622,-3623,-3625,-3627,-3628,-3628,-3624,-3619,-3610,-3601,-3591,-3582,-3575,-3570,-3565,-3561,-3556,-3549,
+-3538,-3524,-3507,-3487,-3465,-3442,-3419,-3394,-3368,-3340,-3310,-3277,-3242,-3206,-3170,-3137,-3108,-3084,-3065,-3051,-3041,
+-3034,-3029,-3025,-3023,-3023,-3026,-3034,-3046,-3063,-3084,-3107,-3129,-3146,-3157,-3158,-3149,-3131,-3105,-3072,-3037,-3000,
+-2965,-2931,-2900,-2871,-2844,-2817,-2792,-2769,-2748,-2729,-2715,-2704,-2698,-2695,-2695,-2695,-2694,-2690,-2682,-2668,-2650,
+-2627,-2600,-2573,-2546,-2521,-2500,-2483,-2470,-2459,-2448,-2435,-2417,-2393,-2362,-2325,-2283,-2239,-2195,-2152,-2112,-2075,
+-2040,-2005,-1970,-1930,-1887,-1840,-1788,-1733,-1676,-1619,-1560,-1500,-1439,-1375,-1306,-1231,-1149,-1062,-969,-872,-774,
+-676,-580,-486,-395,-305,-215,-123,-28,70,170,269,364,449,521,578,616,637,644,642,635,630,
+630,641,664,701,751,814,888,971,1062,1157,1255,1350,1441,1524,1598,1661,1716,1764,1811,1858,1910,
+1968,2031,2097,2165,2229,2287,2337,2378,2410,2434,2451,2463,2471,2476,2478,2479,2480,2486,2498,2521,2555,
+2600,2656,2718,2782,2841,2894,2936,2970,2996,3020,3045,3076,3115,3162,3217,3278,3340,3403,3463,3521,3576,
+3631,3684,3738,3792,3846,3897,3947,3995,4040,4084,4128,4173,4220,4269,4318,4367,4414,4457,4496,4531,4562,
+4590,4615,4638,4660,4680,4698,4713,4726,4736,4743,4749,4756,4766,4780,4801,4830,4867,4914,4969,5031,5098,
+5168,5239,5309,5377,5441,5501,5555,5603,5645,5677,5700,5712,5713,5704,5687,5664,5641,5622,5609,5606,5613,
+5630,5656,5685,5717,5746,5772,5793,5811,5825,5837,5848,5859,5871,5882,5891,5900,5907,5914,5921,5930,5941,
+5955,5970,5985,5998,6006,6008,6003,5994,5981,5969,5961,5960,5967,5983,6008,6037,6070,6102,6132,6158,6180,
+6197,6211,6223,6233,6243,6253,6262,6271,6280,6288,6297,6306,6315,6323,6329,6332,6331,6326,6315,6300,6283,
+6266,6252,6240,6232,6227,6223,6218,6208,6192,6170,6140,6106,6070,6034,6002,5973,5949,5928,5910,5892,5873,
+5851,5828,5804,5779,5756,5734,5714,5695,5677,5659,5640,5620,5599,5579,5558,5538,5517,5495,5470,5441,5408,
+5370,5329,5286,5245,5208,5177,5153,5136,5125,5118,5112,5106,5099,5089,5078,5066,5054,5042,5031,5020,5008,
+4994,4978,4959,4938,4917,4898,4882,4886,4868,4857,4851,4848,4847,4845,4838,4825,4804,4777,4744,4706,4665,
+4623,4581,4540,4500,4462,4425,4389,4353,4319,4285,4253,4224,4199,4181,4170,4167,4172,4185,4201,4219,4233,
+4241,4239,4227,4206,4177,4143,4109,4075,4045,4017,3989,3959,3923,3879,3825,3760,3686,3605,3519,3433,3348,
+3269,3196,3134,3082,3043,3018,3006,3006,3017,3035,3057,3079,3099,3113,3120,3121,3117,3108,3097,3085,3072,
+3057,3040,3021,2997,2970,2940,2906,2869,2829,2788,2743,2697,2649,2600,2552,2505,2462,2423,2388,2357,2329,
+2302,2273,2243,2209,2173,2136,2098,2061,2026,1993,1963,1933,1905,1877,1850,1824,1802,1785,1773,1767,1766,
+1768,1772,1775,1775,1771,1762,1750,1736,1722,1710,1701,1698,1699,1704,1714,1725,1738,1751,1764,1776,1785,
+1792,1795,1794,1786,1771,1748,1718,1682,1641,1598,1556,1519,1488,1464,1447,1437,1429,1422,1413,1400,1381,
+1358,1331,1303,1276,1251,1231,1216,1206,1200,1196,1192,1185,1174,1157,1134,1104,1068,1027,984,942,901,
+866,837,815,800,791,787,786,787,787,786,782,775,764,749,728,702,669,631,589,543,496,
+450,407,369,336,309,286,267,250,233,215,196,174,151,127,102,77,53,30,7,-14,-34,
+-54,-73,-91,-110,-128,-147,-165,-184,-203,-220,-237,-252,-267,-281,-297,-315,-336,-361,-390,-422,-455,
+-489,-520,-549,-574,-594,-609,-620,-625,-626,-622,-613,-600,-582,-562,-541,-522,-505,-495,-491,-495,-506,
+-525,-551,-583,-620,-662,-709,-758,-810,-863,-915,-965,-1010,-1051,-1089,-1122,-1155,-1187,-1221,-1256,-1293,-1330,
+-1366,-1398,-1424,-1444,-1458,-1467,-1471,-1473,-1474,-1475,-1477,-1479,-1481,-1484,-1485,-1487,-1487,-1487,-1486,-1485,-1483,
+-1482,-1482,-1484,-1488,-1496,-1506,-1519,-1534,-1549,-1562,-1572,-1579,-1584,-1586,-1589,-1592,-1598,-1607,-1616,-1624,-1630,
+-1633,-1632,-1629,-1625,-1624,-1628,-1638,-1653,-1671,-1689,-1702,-1709,-1707,-1698,-1685,-1671,-1662,-1659,-1666,-1680,-1700,
+-1722,-1743,-1759,-1771,-1780,-1786,-1794,-1804,-1819,-1838,-1859,-1879,-1896,-1908,-1914,-1914,-1910,-1904,-1898,-1892,-1887,
+-1883,-1878,-1871,-1864,-1857,-1850,-1848,-1849,-1856,-1868,-1882,-1897,-1908,-1914,-1913,-1905,-1891,-1873,-1854,-1838,-1826,
+-1819,-1819,-1825,-1836,-1851,-1869,-1887,-1903,-1917,-1927,-1931,-1929,-1920,-1906,-1887,-1865,-1843,-1822,-1805,-1791,-1782,
+-1777,-1776,-1778,-1782,-1787,-1793,-1798,-1804,-1809,-1814,-1818,-1820,-1821,-1821,-1818,-1814,-1807,-1798,-1789,-1778,-1767,
+-1756,-1745,-1736,-1727,-1718,-1710,-1701,-1690,-1677,-1661,-1641,-1618,-1593,-1567,-1541,-1517,-1495,-1475,-1457,-1440,-1424,
+-1408,-1392,-1376,-1360,-1345,-1332,-1320,-1310,-1301,-1291,-1281,-1271,-1259,-1247,-1236,-1226,-1218,-1211,-1206,-1201,-1197,
+-1192,-1185,-1177,-1169,-1162,-1156,-1154,-1155,-1160,-1169,-1181,-1196,-1215,-1237,-1261,-1289,-1318,-1349,-1380,-1408,-1431,
+-1446,-1451,-1444,-1424,-1391,-1345,-1287,-1218,-1141,-1056,-966,-876,-788,-707,-637,-580,-539,-512,-499,-497,-501,
+-508,-515,-519,-520,-517,-512,-506,-500,-494,-488,-481,-473,-462,-449,-433,-415,-396,-376,-356,-338,-320,
+-304,-289,-275,-263,-252,-242,-231,-216,-196,-167,-129,-81,-23,38,101,158,205,238,255,257,247,
+230,212,196,188,189,199,217,241,269,298,326,351,372,387,394,391,379,357,326,290,252,
+217,188,169,163,169,186,212,244,278,313,346,377,405,430,454,475,493,509,521,531,538,
+542,545,548,551,554,557,559,561,562,562,562,561,561,561,563,566,570,574,579,582,586,
+589,592,596,602,609,618,628,639,648,657,664,668,671,673,675,677,680,685,692,699,707,
+713,718,720,720,719,717,717,719,723,731,741,753,764,775,784,791,797,802,808,816,824,
+833,841,848,852,853,851,846,839,831,824,817,810,804,796,787,776,763,750,736,723,710,
+700,690,681,673,665,657,650,644,639,636,634,632,632,631,630,629,629,629,631,634,640,
+646,652,657,658,656,648,636,619,600,579,558,538,519,502,487,474,462,450,438,426,413,
+400,386,371,355,339,323,308,292,278,264,250,236,223,210,197,185,175,167,162,161,163,
+168,174,182,189,194,196,194,189,182,173,163,154,147,142,140,139,141,143,145,148,150,
+151,152,152,152,153,155,159,165,174,185,199,216,235,255,276,297,317,337,356,373,389,
+405,419,432,444,455,466,476,485,493,500,506,510,512,513,513,514,517,522,532,548,568,
+593,621,650,679,705,728,747,763,775,786,795,803,811,818,824,828,832,835,837,840,843,
+848,854,860,868,876,884,891,899,906,912,917,920,919,915,906,894,878,859,840,821,803,
+789,778,769,762,755,748,739,728,717,704,693,683,676,673,673,675,678,681,682,681,679,
+674,669,663,658,651,643,631,612,587,555,517,477,438,404,379,363,356,354,353,348,334,
+307,268,218,161,103,49,3,-31,-56,-72,-84,-94,-107,-123,-144,-168,-194,-221,-245,-268,-290,
+-310,-330,-350,-371,-393,-414,-435,-453,-471,-487,-503,-520,-539,-561,-585,-612,-642,-672,-704,-736,-769,
+-803,-838,-874,-909,-942,-974,-1002,-1027,-1049,-1070,-1091,-1114,-1142,-1175,-1214,-1258,-1305,-1353,-1400,-1445,-1485,
+-1521,-1552,-1579,-1604,-1628,-1652,-1677,-1703,-1730,-1759,-1787,-1815,-1840,-1863,-1884,-1902,-1919,-1936,-1956,-1979,-2008,
+-2043,-2085,-2131,-2180,-2230,-2279,-2325,-2366,-2403,-2436,-2465,-2493,-2521,-2551,-2582,-2616,-2652,-2690,-2729,-2769,-2811,
+-2854,-2899,-2945,-2993,-3039,-3083,-3122,-3155,-3180,-3198,-3211,-3219,-3227,-3237,-3251,-3270,-3293,-3320,-3349,-3376,-3401,
+-3423,-3441,-3458,-3473,-3490,-3510,-3532,-3555,-3578,-3599,-3616,-3628,-3636,-3639,-3640,-3639,-3639,-3641,-3644,-3649,-3653,
+-3655,-3656,-3653,-3648,-3641,-3634,-3627,-3622,-3618,-3615,-3612,-3606,-3598,-3585,-3568,-3546,-3522,-3496,-3470,-3444,-3420,
+-3396,-3374,-3351,-3327,-3302,-3274,-3246,-3216,-3188,-3162,-3139,-3119,-3104,-3092,-3083,-3076,-3072,-3070,-3071,-3076,-3086,
+-3100,-3117,-3135,-3153,-3168,-3177,-3179,-3173,-3159,-3139,-3115,-3089,-3062,-3037,-3012,-2987,-2962,-2937,-2909,-2880,-2851,
+-2823,-2797,-2775,-2759,-2748,-2741,-2738,-2737,-2736,-2733,-2726,-2715,-2700,-2681,-2659,-2636,-2615,-2596,-2580,-2568,-2560,
+-2553,-2544,-2532,-2514,-2487,-2453,-2411,-2364,-2315,-2267,-2223,-2183,-2149,-2120,-2093,-2066,-2035,-1999,-1957,-1907,-1852,
+-1792,-1729,-1665,-1600,-1536,-1472,-1406,-1336,-1262,-1182,-1096,-1005,-910,-814,-719,-626,-535,-445,-354,-259,-158,
+-48,69,192,317,435,542,629,692,730,745,739,720,696,673,659,656,668,697,741,801,875,
+961,1058,1162,1269,1375,1473,1562,1636,1698,1747,1789,1827,1867,1912,1964,2020,2080,2140,2196,2246,2290,
+2326,2358,2387,2414,2440,2464,2486,2504,2519,2533,2547,2567,2594,2631,2678,2734,2794,2854,2910,2958,2998,
+3030,3058,3085,3116,3152,3195,3245,3300,3359,3418,3478,3538,3598,3659,3721,3785,3847,3909,3967,4021,4070,
+4115,4157,4197,4238,4280,4325,4371,4418,4463,4507,4546,4581,4611,4638,4661,4681,4698,4714,4727,4738,4746,
+4754,4760,4766,4774,4785,4801,4823,4853,4892,4940,4996,5060,5130,5203,5277,5348,5416,5478,5534,5581,5621,
+5654,5679,5696,5706,5709,5706,5698,5687,5674,5664,5658,5657,5662,5673,5689,5707,5725,5742,5757,5770,5782,
+5793,5804,5817,5831,5846,5862,5878,5893,5907,5921,5935,5949,5964,5979,5992,6003,6009,6009,6005,5996,5987,
+5978,5975,5979,5993,6016,6047,6084,6123,6161,6195,6222,6243,6258,6269,6276,6282,6289,6296,6303,6312,6320,
+6328,6336,6342,6349,6354,6358,6361,6362,6359,6353,6344,6333,6320,6307,6296,6287,6280,6275,6271,6266,6257,
+6244,6226,6202,6173,6140,6105,6069,6033,5997,5963,5929,5896,5865,5837,5811,5789,5770,5755,5742,5729,5715,
+5699,5680,5660,5637,5614,5592,5570,5550,5530,5507,5482,5452,5417,5379,5338,5297,5260,5228,5202,5184,5172,
+5162,5154,5145,5133,5118,5102,5085,5069,5056,5047,5040,5034,5027,5017,5002,4983,4959,4933,4908,4886,4895,
+4873,4858,4849,4845,4843,4840,4832,4818,4796,4765,4726,4681,4632,4581,4530,4481,4436,4396,4361,4332,4307,
+4287,4271,4257,4246,4238,4233,4232,4235,4242,4252,4261,4269,4270,4264,4248,4223,4189,4151,4111,4073,4038,
+4007,3979,3950,3917,3877,3828,3769,3702,3629,3554,3480,3409,3344,3286,3233,3185,3144,3108,3080,3060,3049,
+3048,3054,3067,3082,3097,3109,3116,3116,3111,3102,3088,3073,3055,3036,3015,2992,2965,2935,2902,2865,2826,
+2784,2739,2692,2642,2591,2538,2487,2438,2393,2353,2318,2288,2261,2235,2208,2179,2147,2112,2077,2043,2010,
+1981,1955,1930,1907,1884,1861,1837,1813,1792,1775,1762,1755,1753,1754,1756,1757,1755,1748,1738,1723,1708,
+1693,1681,1674,1672,1675,1682,1693,1705,1717,1729,1740,1750,1759,1767,1773,1777,1777,1771,1759,1740,1714,
+1683,1648,1613,1580,1551,1529,1511,1499,1488,1476,1460,1440,1414,1383,1350,1316,1285,1258,1236,1221,1211,
+1204,1199,1193,1185,1173,1156,1133,1103,1068,1028,984,938,892,849,811,780,757,742,734,733,736,
+741,746,750,751,747,738,722,698,668,631,588,541,492,444,398,357,321,290,265,243,225,
+209,193,177,161,144,127,108,89,69,47,25,2,-20,-43,-65,-85,-105,-124,-143,-162,-182,
+-202,-222,-242,-261,-280,-298,-317,-338,-363,-392,-426,-465,-506,-549,-591,-629,-661,-685,-699,-704,-699,
+-684,-661,-630,-595,-558,-523,-493,-471,-460,-461,-475,-501,-535,-576,-621,-668,-714,-760,-805,-849,-894,
+-939,-984,-1027,-1068,-1106,-1141,-1172,-1202,-1230,-1259,-1289,-1321,-1355,-1387,-1418,-1445,-1468,-1485,-1497,-1504,-1509,
+-1511,-1512,-1513,-1515,-1516,-1519,-1521,-1525,-1528,-1532,-1534,-1536,-1536,-1535,-1533,-1532,-1533,-1537,-1545,-1558,-1573,
+-1590,-1607,-1620,-1630,-1636,-1638,-1640,-1642,-1646,-1652,-1660,-1667,-1673,-1675,-1673,-1669,-1664,-1662,-1665,-1675,-1692,
+-1714,-1736,-1756,-1769,-1773,-1769,-1759,-1747,-1738,-1735,-1740,-1753,-1773,-1794,-1815,-1833,-1847,-1858,-1869,-1880,-1895,
+-1913,-1934,-1954,-1972,-1983,-1986,-1982,-1972,-1960,-1949,-1941,-1938,-1939,-1944,-1950,-1954,-1956,-1955,-1952,-1948,-1947,
+-1948,-1953,-1961,-1971,-1979,-1985,-1985,-1981,-1971,-1959,-1944,-1930,-1919,-1912,-1909,-1911,-1918,-1930,-1944,-1961,-1978,
+-1993,-2003,-2008,-2006,-1995,-1978,-1954,-1926,-1899,-1873,-1853,-1838,-1831,-1829,-1832,-1838,-1844,-1850,-1855,-1857,-1857,
+-1856,-1854,-1852,-1850,-1847,-1843,-1839,-1833,-1825,-1815,-1803,-1790,-1776,-1762,-1749,-1738,-1728,-1719,-1711,-1703,-1693,
+-1681,-1665,-1645,-1622,-1596,-1569,-1542,-1516,-1492,-1470,-1451,-1434,-1418,-1405,-1392,-1381,-1372,-1364,-1358,-1353,-1347,
+-1341,-1332,-1320,-1306,-1289,-1271,-1254,-1239,-1227,-1218,-1213,-1210,-1208,-1206,-1204,-1200,-1196,-1193,-1191,-1190,-1193,
+-1199,-1207,-1218,-1232,-1247,-1265,-1286,-1309,-1334,-1359,-1383,-1404,-1417,-1421,-1414,-1395,-1362,-1317,-1261,-1196,-1123,
+-1044,-962,-879,-798,-722,-653,-595,-549,-517,-498,-490,-490,-495,-501,-507,-511,-511,-509,-506,-502,-499,
+-496,-491,-485,-475,-462,-444,-423,-400,-376,-351,-327,-303,-280,-257,-235,-215,-198,-185,-176,-170,-165,
+-158,-145,-123,-88,-41,15,79,144,203,252,287,306,311,304,291,275,261,252,251,258,273,
+297,329,368,412,458,503,541,568,579,573,548,506,453,393,334,281,241,217,207,213,230,
+255,285,317,350,381,410,437,461,482,500,515,527,536,543,549,554,559,565,569,574,577,
+579,580,580,579,579,578,579,580,582,585,587,590,593,597,601,608,616,625,637,650,663,
+676,687,696,702,706,708,708,709,710,713,719,726,734,742,749,754,755,755,753,751,751,
+753,758,766,776,787,796,804,810,815,819,824,830,837,846,854,862,867,868,867,863,857,
+850,844,838,832,826,818,810,800,788,776,764,752,742,732,721,711,699,686,673,660,648,
+639,633,629,629,630,631,633,634,635,636,637,640,643,646,649,649,646,639,627,612,594,
+575,557,539,524,510,499,488,479,470,461,451,442,431,420,408,394,379,362,345,326,308,
+290,273,257,243,231,221,214,208,204,202,203,205,210,216,223,230,237,242,245,246,243,
+239,232,225,217,210,204,201,199,199,201,204,207,210,213,215,217,218,219,221,223,227,
+233,241,252,264,278,293,307,322,335,347,359,372,385,399,414,429,445,461,475,488,500,
+510,519,527,534,541,548,554,561,569,578,589,602,618,637,656,676,696,715,732,749,764,
+780,795,810,824,836,846,853,856,857,855,853,852,854,859,866,876,887,898,908,916,922,
+925,926,926,922,916,907,894,878,859,837,814,792,771,754,740,729,721,715,711,706,702,
+697,693,690,688,689,692,698,706,713,720,726,729,729,728,725,721,716,709,698,682,661,
+632,597,558,519,483,454,436,428,430,437,444,445,434,409,369,315,252,186,123,66,20,
+-16,-44,-66,-85,-105,-127,-151,-177,-203,-228,-252,-274,-295,-316,-337,-359,-382,-405,-429,-451,-472,
+-491,-509,-527,-546,-566,-588,-611,-637,-663,-691,-721,-752,-786,-821,-859,-898,-937,-975,-1011,-1043,-1073,
+-1100,-1126,-1153,-1182,-1216,-1253,-1294,-1338,-1384,-1428,-1470,-1508,-1541,-1568,-1590,-1607,-1622,-1635,-1649,-1664,-1681,
+-1702,-1725,-1750,-1776,-1801,-1825,-1847,-1866,-1883,-1900,-1918,-1940,-1966,-1998,-2036,-2079,-2124,-2172,-2218,-2262,-2304,
+-2341,-2375,-2407,-2437,-2468,-2499,-2531,-2565,-2601,-2638,-2676,-2716,-2758,-2803,-2850,-2899,-2950,-3001,-3049,-3094,-3133,
+-3165,-3189,-3207,-3221,-3232,-3243,-3257,-3275,-3297,-3322,-3349,-3376,-3402,-3427,-3449,-3469,-3489,-3510,-3531,-3554,-3577,
+-3599,-3618,-3634,-3645,-3652,-3655,-3656,-3656,-3656,-3658,-3662,-3668,-3673,-3678,-3681,-3683,-3682,-3679,-3676,-3673,-3670,
+-3667,-3663,-3659,-3651,-3640,-3624,-3603,-3578,-3550,-3520,-3490,-3463,-3439,-3418,-3401,-3386,-3372,-3358,-3341,-3323,-3302,
+-3278,-3254,-3231,-3209,-3189,-3173,-3160,-3150,-3142,-3137,-3134,-3135,-3139,-3146,-3157,-3170,-3184,-3196,-3205,-3209,-3207,
+-3199,-3185,-3168,-3148,-3128,-3107,-3086,-3065,-3042,-3018,-2991,-2963,-2934,-2906,-2880,-2858,-2841,-2828,-2819,-2813,-2809,
+-2804,-2798,-2789,-2777,-2761,-2743,-2723,-2703,-2685,-2669,-2656,-2648,-2643,-2640,-2635,-2627,-2613,-2590,-2558,-2517,-2470,
+-2419,-2369,-2321,-2279,-2243,-2213,-2187,-2162,-2134,-2101,-2061,-2014,-1959,-1898,-1833,-1766,-1698,-1632,-1566,-1501,-1434,
+-1365,-1290,-1211,-1125,-1036,-944,-853,-764,-679,-598,-518,-435,-345,-245,-131,-5,129,267,400,519,618,
+691,737,760,764,756,744,734,731,737,754,783,824,878,945,1025,1116,1215,1319,1420,1515,1599,
+1669,1726,1773,1813,1852,1893,1939,1989,2041,2092,2140,2183,2222,2257,2293,2330,2372,2418,2464,2508,2546,
+2574,2594,2607,2616,2626,2644,2670,2708,2754,2806,2859,2910,2955,2996,3032,3066,3101,3140,3184,3233,3286,
+3342,3399,3458,3519,3581,3647,3717,3788,3861,3933,4001,4063,4118,4167,4210,4250,4288,4326,4366,4407,4449,
+4491,4532,4570,4604,4636,4663,4687,4707,4724,4737,4748,4757,4764,4771,4779,4788,4800,4814,4833,4855,4883,
+4917,4958,5007,5063,5126,5194,5264,5334,5401,5461,5513,5555,5589,5613,5630,5642,5650,5655,5659,5662,5666,
+5670,5676,5683,5691,5700,5710,5719,5727,5733,5739,5744,5750,5758,5768,5781,5798,5818,5839,5861,5883,5903,
+5922,5939,5956,5971,5986,5999,6010,6018,6022,6021,6018,6014,6010,6011,6017,6031,6053,6082,6117,6154,6191,
+6225,6254,6276,6293,6305,6314,6320,6326,6332,6339,6347,6355,6362,6368,6373,6377,6379,6380,6381,6380,6379,
+6376,6372,6368,6362,6355,6348,6342,6335,6330,6324,6318,6312,6304,6295,6283,6268,6250,6227,6198,6165,6126,
+6081,6033,5984,5935,5889,5850,5818,5794,5778,5767,5760,5752,5741,5727,5708,5686,5662,5637,5614,5592,5571,
+5549,5526,5498,5465,5427,5387,5345,5306,5271,5244,5224,5211,5202,5195,5187,5176,5162,5144,5125,5107,5091,
+5079,5072,5067,5064,5058,5048,5032,5010,4983,4952,4922,4895,4920,4897,4877,4863,4851,4840,4827,4811,4790,
+4763,4730,4690,4645,4597,4548,4499,4452,4409,4372,4341,4318,4302,4291,4286,4284,4285,4286,4289,4293,4297,
+4300,4303,4304,4299,4289,4270,4243,4208,4167,4124,4082,4043,4009,3980,3952,3924,3890,3848,3797,3737,3671,
+3602,3536,3474,3421,3375,3335,3300,3267,3235,3203,3173,3146,3124,3109,3102,3102,3106,3111,3116,3118,3115,
+3108,3096,3081,3063,3043,3020,2993,2964,2930,2893,2853,2810,2766,2721,2674,2625,2575,2524,2471,2419,2370,
+2325,2285,2251,2223,2198,2175,2151,2126,2098,2068,2037,2006,1977,1950,1927,1906,1886,1866,1846,1826,1805,
+1786,1770,1757,1749,1744,1742,1740,1738,1734,1727,1717,1705,1693,1682,1675,1671,1672,1676,1683,1691,1700,
+1706,1711,1714,1715,1716,1717,1719,1722,1725,1727,1726,1720,1709,1694,1675,1654,1632,1613,1595,1580,1565,
+1549,1529,1504,1473,1435,1394,1350,1309,1272,1241,1217,1199,1187,1178,1170,1161,1151,1139,1123,1104,1081,
+1052,1018,979,935,888,841,795,755,722,698,684,680,683,692,703,714,722,724,720,708,688,
+661,626,585,541,494,447,402,359,319,284,253,226,202,183,167,153,142,133,123,112,99,
+83,63,40,15,-10,-36,-60,-82,-101,-120,-137,-156,-176,-198,-222,-246,-272,-296,-321,-347,-374,
+-405,-440,-479,-524,-572,-621,-667,-708,-740,-759,-766,-758,-736,-703,-662,-615,-567,-522,-485,-458,-446,
+-449,-468,-501,-545,-597,-652,-708,-762,-811,-855,-896,-935,-973,-1011,-1049,-1087,-1125,-1160,-1192,-1222,-1248,
+-1273,-1298,-1324,-1351,-1380,-1410,-1440,-1468,-1493,-1514,-1530,-1542,-1549,-1553,-1555,-1555,-1555,-1555,-1556,-1558,-1562,
+-1568,-1574,-1581,-1585,-1587,-1585,-1581,-1576,-1571,-1570,-1573,-1583,-1598,-1618,-1639,-1659,-1675,-1686,-1692,-1696,-1697,
+-1700,-1704,-1710,-1717,-1722,-1723,-1721,-1715,-1708,-1703,-1702,-1709,-1723,-1743,-1766,-1788,-1805,-1814,-1815,-1810,-1803,
+-1799,-1800,-1809,-1826,-1849,-1875,-1899,-1920,-1936,-1949,-1959,-1971,-1985,-2001,-2020,-2039,-2054,-2062,-2063,-2056,-2044,
+-2030,-2017,-2010,-2008,-2013,-2023,-2034,-2044,-2051,-2053,-2051,-2047,-2041,-2037,-2036,-2037,-2041,-2047,-2052,-2055,-2056,
+-2054,-2048,-2041,-2032,-2023,-2015,-2007,-2002,-2000,-2002,-2007,-2016,-2027,-2039,-2050,-2057,-2057,-2051,-2037,-2017,-1993,
+-1967,-1943,-1923,-1908,-1900,-1897,-1899,-1903,-1907,-1910,-1911,-1909,-1904,-1897,-1889,-1879,-1870,-1860,-1849,-1838,-1827,
+-1814,-1800,-1786,-1772,-1758,-1745,-1734,-1725,-1716,-1709,-1702,-1693,-1683,-1670,-1654,-1635,-1614,-1591,-1568,-1545,-1524,
+-1504,-1486,-1469,-1454,-1440,-1427,-1415,-1406,-1400,-1395,-1393,-1391,-1388,-1384,-1375,-1362,-1345,-1325,-1303,-1281,-1262,
+-1246,-1235,-1230,-1228,-1229,-1231,-1234,-1237,-1239,-1242,-1244,-1248,-1252,-1257,-1264,-1271,-1279,-1288,-1298,-1312,-1327,
+-1345,-1364,-1381,-1395,-1402,-1399,-1385,-1357,-1317,-1264,-1202,-1131,-1056,-978,-899,-823,-750,-684,-625,-576,-538,
+-512,-495,-488,-487,-490,-494,-497,-499,-498,-497,-495,-494,-492,-491,-487,-480,-469,-453,-433,-408,-380,
+-351,-323,-294,-267,-240,-213,-187,-163,-142,-125,-113,-106,-102,-100,-94,-81,-58,-23,22,76,135,
+193,247,291,323,344,354,354,349,339,328,319,312,312,320,339,371,415,470,532,595,652,
+696,721,723,703,663,608,545,481,422,373,336,313,301,300,307,321,338,359,382,405,429,
+451,472,490,506,519,531,541,551,560,569,578,586,593,598,602,604,606,606,606,605,604,
+603,602,601,600,601,603,607,614,623,634,647,661,675,690,703,714,723,729,734,737,739,
+742,747,754,762,772,782,791,797,800,799,797,794,792,793,797,805,815,827,837,846,852,
+855,857,859,862,867,873,881,888,895,899,900,898,894,888,880,872,862,852,841,828,816,
+804,793,783,774,766,757,747,734,718,700,682,664,650,640,635,635,639,644,649,653,654,
+653,651,649,647,645,643,641,636,629,619,607,592,576,561,547,534,523,514,505,496,487,
+478,470,461,453,445,437,427,416,401,385,366,345,324,303,285,269,257,248,243,240,241,
+243,247,252,257,262,267,271,275,278,280,281,281,281,279,278,276,274,271,269,267,266,
+264,263,262,261,261,262,264,266,269,272,275,278,282,287,293,301,309,319,328,337,345,
+352,358,365,373,384,398,414,434,454,475,494,511,525,537,547,557,566,575,586,596,607,
+618,629,640,652,663,675,688,701,713,726,738,751,764,778,794,809,824,836,846,851,852,
+850,846,842,840,842,848,857,869,882,894,903,909,911,909,905,898,889,879,867,852,836,
+817,797,776,756,737,722,711,704,701,701,704,707,712,716,721,725,729,734,739,745,752,
+759,765,770,774,776,776,774,770,764,754,740,722,697,667,633,597,562,533,512,501,502,
+511,525,538,543,536,513,474,420,355,285,215,149,91,40,-1,-38,-71,-102,-133,-164,-194,
+-223,-251,-277,-302,-326,-349,-373,-397,-422,-446,-469,-491,-511,-531,-550,-570,-590,-611,-634,-657,-681,
+-706,-733,-763,-795,-829,-867,-908,-949,-989,-1028,-1064,-1097,-1128,-1157,-1187,-1218,-1252,-1290,-1330,-1372,-1414,
+-1455,-1492,-1526,-1554,-1577,-1596,-1611,-1623,-1633,-1643,-1653,-1665,-1680,-1697,-1716,-1738,-1760,-1781,-1800,-1818,-1834,
+-1849,-1864,-1883,-1906,-1934,-1968,-2007,-2051,-2096,-2142,-2187,-2229,-2269,-2306,-2340,-2374,-2407,-2439,-2473,-2506,-2540,
+-2574,-2609,-2644,-2680,-2719,-2759,-2803,-2849,-2898,-2947,-2997,-3044,-3087,-3126,-3159,-3186,-3208,-3227,-3245,-3262,-3281,
+-3302,-3326,-3352,-3379,-3406,-3433,-3459,-3483,-3507,-3531,-3554,-3577,-3599,-3619,-3637,-3652,-3663,-3671,-3675,-3678,-3680,
+-3682,-3685,-3689,-3695,-3702,-3709,-3716,-3722,-3727,-3730,-3732,-3732,-3731,-3728,-3723,-3715,-3704,-3689,-3670,-3647,-3620,
+-3590,-3559,-3528,-3500,-3474,-3454,-3438,-3427,-3419,-3413,-3406,-3396,-3384,-3368,-3349,-3328,-3307,-3288,-3270,-3254,-3241,
+-3230,-3220,-3212,-3206,-3202,-3201,-3204,-3210,-3219,-3229,-3238,-3246,-3249,-3247,-3240,-3229,-3215,-3197,-3179,-3159,-3138,
+-3116,-3093,-3069,-3045,-3021,-2997,-2976,-2958,-2942,-2928,-2917,-2906,-2896,-2884,-2872,-2858,-2842,-2824,-2805,-2785,-2765,
+-2746,-2729,-2716,-2708,-2704,-2703,-2704,-2702,-2696,-2682,-2659,-2626,-2585,-2538,-2488,-2439,-2393,-2352,-2315,-2283,-2251,
+-2219,-2183,-2141,-2094,-2040,-1981,-1919,-1854,-1789,-1724,-1661,-1598,-1534,-1467,-1397,-1321,-1239,-1153,-1064,-976,-891,
+-812,-740,-673,-606,-535,-454,-359,-246,-119,19,161,299,423,528,611,672,715,745,767,785,803,
+823,844,868,895,928,970,1023,1090,1169,1260,1357,1454,1546,1628,1699,1759,1811,1858,1904,1950,1997,
+2043,2085,2122,2154,2182,2211,2244,2285,2336,2395,2459,2522,2577,2619,2647,2660,2663,2663,2667,2680,2705,
+2743,2791,2845,2900,2953,3001,3044,3085,3124,3164,3207,3253,3300,3350,3402,3455,3511,3571,3636,3707,3782,
+3859,3937,4011,4080,4142,4197,4244,4287,4327,4365,4404,4443,4482,4521,4560,4598,4633,4665,4694,4718,4738,
+4753,4764,4770,4775,4779,4784,4792,4804,4819,4837,4857,4879,4902,4926,4954,4987,5027,5074,5129,5190,5254,
+5318,5378,5430,5472,5504,5526,5541,5551,5559,5568,5580,5596,5615,5636,5659,5682,5703,5721,5734,5743,5748,
+5750,5751,5752,5755,5762,5773,5790,5810,5834,5859,5884,5908,5930,5950,5967,5983,5997,6010,6022,6032,6040,
+6047,6053,6059,6065,6074,6086,6102,6122,6147,6173,6201,6229,6254,6277,6296,6313,6326,6337,6346,6354,6362,
+6369,6376,6383,6390,6396,6400,6404,6406,6407,6407,6405,6402,6399,6395,6392,6389,6387,6385,6383,6381,6378,
+6374,6368,6361,6354,6345,6337,6329,6320,6310,6296,6277,6250,6215,6171,6120,6064,6007,5952,5904,5865,5835,
+5814,5801,5791,5783,5772,5758,5740,5719,5696,5672,5649,5626,5603,5578,5549,5515,5477,5435,5392,5351,5314,
+5283,5261,5245,5235,5228,5220,5210,5197,5181,5162,5143,5126,5111,5101,5095,5091,5087,5081,5070,5054,5032,
+5006,4977,4947,4920,4961,4938,4914,4890,4865,4838,4809,4779,4747,4714,4679,4644,4608,4571,4534,4497,4461,
+4427,4396,4370,4349,4333,4324,4319,4318,4319,4321,4323,4323,4322,4319,4313,4303,4289,4268,4240,4206,4166,
+4123,4079,4038,4001,3969,3942,3916,3888,3855,3813,3762,3704,3640,3576,3517,3465,3423,3390,3365,3345,3326,
+3305,3282,3257,3231,3208,3187,3172,3160,3152,3144,3136,3126,3114,3099,3081,3062,3042,3019,2993,2964,2929,
+2890,2846,2799,2750,2699,2650,2600,2550,2500,2450,2399,2349,2301,2257,2218,2186,2159,2138,2119,2100,2080,
+2058,2032,2005,1978,1951,1925,1903,1883,1865,1848,1832,1816,1801,1786,1772,1760,1750,1743,1736,1731,1726,
+1721,1716,1710,1704,1699,1695,1692,1692,1695,1699,1704,1709,1712,1713,1710,1704,1696,1686,1676,1668,1662,
+1658,1657,1657,1657,1655,1651,1644,1635,1625,1614,1604,1593,1581,1564,1542,1514,1477,1435,1388,1341,1295,
+1255,1222,1197,1179,1165,1156,1148,1140,1132,1123,1113,1101,1085,1064,1037,1002,959,910,856,801,750,
+705,672,650,640,642,652,666,681,694,701,701,692,675,650,619,582,541,498,454,410,367,
+325,286,249,216,187,164,146,133,125,120,115,109,99,85,64,39,11,-18,-47,-73,-96,
+-115,-131,-147,-163,-181,-202,-226,-253,-283,-314,-346,-380,-416,-454,-496,-541,-588,-636,-682,-722,-753,
+-772,-775,-764,-737,-699,-652,-601,-551,-508,-475,-455,-450,-460,-486,-524,-572,-627,-684,-741,-796,-845,
+-890,-930,-966,-1001,-1036,-1070,-1106,-1142,-1178,-1211,-1241,-1268,-1293,-1315,-1337,-1360,-1385,-1412,-1441,-1471,-1500,
+-1527,-1551,-1570,-1585,-1595,-1600,-1603,-1602,-1600,-1598,-1597,-1597,-1600,-1606,-1613,-1621,-1627,-1630,-1629,-1624,-1616,
+-1607,-1601,-1600,-1606,-1620,-1640,-1664,-1689,-1711,-1729,-1740,-1747,-1751,-1754,-1758,-1764,-1770,-1774,-1776,-1774,-1767,
+-1757,-1748,-1743,-1743,-1752,-1768,-1788,-1810,-1829,-1842,-1850,-1852,-1852,-1854,-1862,-1877,-1899,-1927,-1957,-1985,-2008,
+-2026,-2037,-2045,-2051,-2060,-2071,-2085,-2100,-2114,-2125,-2130,-2130,-2125,-2118,-2111,-2107,-2108,-2112,-2120,-2128,-2135,
+-2139,-2138,-2133,-2125,-2117,-2110,-2105,-2103,-2105,-2110,-2116,-2122,-2127,-2131,-2132,-2130,-2125,-2118,-2108,-2097,-2086,
+-2076,-2068,-2064,-2064,-2068,-2076,-2085,-2093,-2098,-2099,-2094,-2083,-2068,-2050,-2030,-2013,-1997,-1986,-1978,-1973,-1970,
+-1967,-1964,-1960,-1954,-1946,-1937,-1925,-1912,-1898,-1882,-1865,-1847,-1828,-1808,-1788,-1770,-1753,-1739,-1727,-1719,-1712,
+-1707,-1703,-1697,-1689,-1677,-1663,-1646,-1627,-1607,-1588,-1570,-1554,-1539,-1527,-1515,-1503,-1491,-1478,-1466,-1454,-1444,
+-1437,-1433,-1431,-1431,-1431,-1429,-1424,-1415,-1401,-1384,-1363,-1343,-1323,-1307,-1295,-1287,-1284,-1285,-1287,-1291,-1296,
+-1300,-1305,-1309,-1312,-1316,-1319,-1322,-1324,-1327,-1329,-1333,-1339,-1347,-1358,-1371,-1384,-1395,-1400,-1396,-1382,-1354,
+-1313,-1260,-1196,-1124,-1047,-968,-889,-814,-744,-680,-624,-577,-539,-511,-492,-480,-475,-473,-474,-476,-477,
+-478,-478,-479,-479,-479,-478,-475,-468,-456,-439,-416,-388,-357,-325,-292,-261,-230,-201,-174,-147,-123,
+-100,-81,-66,-55,-46,-39,-30,-17,2,30,65,107,154,202,249,292,330,361,385,402,412,
+415,412,403,391,379,370,370,382,409,451,505,569,634,694,742,774,787,781,759,723,679,
+631,584,538,498,463,434,412,396,387,384,386,394,405,420,435,452,469,487,504,522,540,
+558,574,589,602,613,622,629,634,639,642,644,645,644,640,636,630,625,622,621,623,629,
+638,649,661,675,688,702,714,725,735,744,752,760,767,775,785,795,807,820,832,842,848,
+852,851,849,845,843,844,849,858,870,883,895,904,909,911,910,908,907,907,910,915,922,
+928,933,935,934,929,921,910,897,883,868,853,839,827,818,810,805,801,795,787,774,756,
+733,708,682,660,643,633,631,636,644,653,661,665,664,659,652,643,635,627,620,613,607,
+599,590,580,570,560,552,545,538,531,523,514,503,491,479,468,459,452,446,441,434,425,
+413,398,380,360,340,322,306,293,284,278,276,277,279,283,289,294,300,305,309,312,313,
+313,312,310,308,306,305,305,307,309,313,316,319,321,321,319,317,314,312,311,312,315,
+320,326,333,339,345,350,355,360,366,372,378,384,389,394,398,402,408,418,431,448,469,
+492,514,536,554,569,581,591,600,609,620,631,644,656,668,678,686,694,701,707,714,722,
+730,738,747,757,767,778,790,803,816,827,836,843,846,847,846,845,846,850,856,864,873,
+882,887,890,888,883,875,866,856,846,836,827,817,806,793,780,766,753,742,733,727,724,
+726,730,737,745,755,764,772,778,783,787,790,792,794,796,799,802,806,809,810,810,807,
+801,792,777,758,734,705,673,641,611,586,569,562,565,575,590,603,611,607,590,557,509,
+450,382,311,239,171,107,49,-3,-52,-97,-139,-179,-215,-250,-282,-313,-343,-371,-400,-427,-453,
+-477,-500,-520,-538,-556,-573,-590,-609,-629,-650,-672,-695,-718,-743,-771,-802,-836,-875,-917,-961,-1006,
+-1048,-1087,-1122,-1153,-1182,-1210,-1240,-1273,-1310,-1350,-1393,-1435,-1476,-1514,-1547,-1574,-1597,-1616,-1632,-1646,-1658,
+-1670,-1682,-1694,-1708,-1723,-1739,-1756,-1773,-1789,-1802,-1813,-1822,-1829,-1837,-1847,-1862,-1884,-1914,-1950,-1992,-2037,
+-2083,-2128,-2171,-2211,-2249,-2284,-2318,-2352,-2386,-2420,-2454,-2488,-2521,-2554,-2587,-2620,-2655,-2691,-2729,-2770,-2813,
+-2859,-2905,-2952,-2999,-3043,-3085,-3124,-3158,-3188,-3215,-3239,-3262,-3285,-3309,-3334,-3362,-3391,-3421,-3450,-3479,-3507,
+-3533,-3557,-3580,-3600,-3620,-3637,-3653,-3667,-3679,-3689,-3697,-3703,-3709,-3715,-3722,-3729,-3737,-3746,-3756,-3767,-3777,
+-3787,-3795,-3801,-3803,-3803,-3799,-3791,-3779,-3764,-3746,-3725,-3701,-3675,-3647,-3618,-3589,-3562,-3537,-3517,-3502,-3492,
+-3486,-3483,-3481,-3477,-3471,-3461,-3447,-3431,-3414,-3396,-3379,-3364,-3350,-3337,-3324,-3311,-3298,-3286,-3276,-3269,-3266,
+-3268,-3273,-3281,-3289,-3296,-3299,-3298,-3293,-3283,-3269,-3253,-3234,-3214,-3192,-3170,-3148,-3126,-3106,-3086,-3068,-3051,
+-3035,-3020,-3004,-2987,-2970,-2952,-2935,-2917,-2900,-2882,-2864,-2846,-2826,-2807,-2789,-2773,-2761,-2754,-2751,-2752,-2753,
+-2752,-2745,-2729,-2704,-2670,-2629,-2583,-2534,-2486,-2440,-2397,-2356,-2316,-2276,-2233,-2187,-2138,-2085,-2029,-1971,-1912,
+-1852,-1793,-1734,-1675,-1615,-1553,-1486,-1414,-1337,-1254,-1168,-1082,-1000,-923,-853,-791,-731,-671,-603,-522,-425,
+-312,-185,-49,87,217,336,438,525,598,659,713,762,805,844,876,901,921,940,962,994,1040,
+1104,1185,1280,1383,1487,1585,1674,1751,1817,1875,1927,1974,2018,2057,2090,2117,2138,2157,2179,2208,2249,
+2305,2373,2449,2525,2594,2649,2687,2708,2717,2720,2726,2740,2768,2809,2862,2922,2983,3040,3092,3137,3176,
+3212,3247,3282,3319,3359,3400,3444,3490,3541,3596,3657,3723,3796,3871,3947,4020,4089,4152,4208,4258,4304,
+4348,4390,4432,4474,4516,4558,4599,4638,4675,4708,4737,4759,4776,4785,4788,4787,4783,4780,4781,4788,4801,
+4820,4843,4867,4890,4909,4926,4940,4956,4976,5004,5040,5086,5139,5197,5254,5306,5352,5388,5416,5436,5453,
+5470,5488,5512,5540,5574,5610,5646,5681,5711,5735,5752,5763,5768,5771,5772,5775,5781,5791,5805,5824,5846,
+5870,5895,5919,5942,5963,5981,5997,6011,6023,6035,6045,6055,6065,6076,6089,6104,6121,6142,6165,6189,6214,
+6238,6260,6280,6297,6312,6326,6338,6350,6362,6373,6385,6395,6403,6411,6417,6422,6426,6431,6436,6440,6445,
+6447,6448,6447,6443,6437,6431,6424,6419,6416,6414,6415,6416,6417,6416,6412,6405,6396,6384,6372,6360,6349,
+6339,6329,6316,6298,6274,6241,6201,6153,6102,6048,5997,5952,5913,5881,5856,5836,5819,5803,5787,5769,5750,
+5729,5707,5684,5659,5631,5599,5562,5521,5478,5434,5392,5355,5325,5302,5285,5274,5264,5255,5243,5228,5210,
+5190,5170,5151,5135,5123,5114,5107,5102,5095,5087,5076,5062,5045,5026,5005,4983,4961,5003,4982,4956,4925,
+4888,4847,4804,4761,4720,4682,4647,4616,4588,4562,4537,4511,4485,4458,4432,4408,4386,4368,4354,4345,4338,
+4334,4330,4325,4318,4309,4296,4279,4259,4235,4207,4174,4138,4100,4060,4022,3986,3955,3928,3903,3879,3852,
+3819,3777,3727,3670,3609,3547,3491,3443,3406,3379,3360,3347,3336,3324,3310,3294,3275,3256,3236,3218,3201,
+3184,3166,3146,3124,3100,3075,3050,3025,3000,2975,2946,2914,2876,2833,2784,2732,2678,2624,2571,2519,2469,
+2419,2370,2322,2274,2228,2187,2150,2119,2095,2075,2058,2042,2025,2006,1985,1962,1938,1914,1892,1873,1856,
+1843,1831,1822,1814,1805,1797,1788,1779,1768,1758,1747,1738,1730,1723,1719,1718,1717,1718,1720,1722,1724,
+1727,1730,1733,1736,1737,1737,1734,1726,1714,1698,1679,1659,1640,1624,1610,1600,1592,1586,1580,1573,1567,
+1561,1554,1549,1543,1536,1526,1511,1490,1461,1425,1384,1342,1300,1262,1230,1205,1186,1173,1165,1159,1155,
+1152,1150,1147,1141,1132,1116,1091,1056,1010,954,892,828,766,711,667,638,622,619,626,639,655,
+669,678,680,674,660,639,610,577,540,500,459,417,375,333,292,253,217,186,160,140,126,
+116,111,106,100,91,76,55,29,0,-31,-61,-90,-115,-137,-155,-171,-187,-204,-223,-245,-271,
+-300,-333,-369,-408,-450,-493,-537,-581,-623,-662,-693,-716,-726,-724,-707,-678,-638,-592,-545,-502,-469,
+-448,-444,-456,-483,-522,-570,-624,-680,-734,-786,-833,-876,-915,-951,-986,-1020,-1054,-1088,-1123,-1159,-1193,
+-1227,-1257,-1285,-1311,-1333,-1355,-1377,-1400,-1425,-1453,-1483,-1513,-1543,-1571,-1595,-1616,-1632,-1643,-1651,-1655,-1656,
+-1655,-1654,-1652,-1651,-1652,-1655,-1660,-1667,-1672,-1676,-1675,-1671,-1663,-1654,-1646,-1642,-1645,-1655,-1674,-1698,-1724,
+-1749,-1770,-1786,-1797,-1804,-1809,-1814,-1819,-1825,-1830,-1831,-1829,-1822,-1811,-1800,-1791,-1788,-1793,-1805,-1825,-1848,
+-1870,-1889,-1903,-1912,-1919,-1927,-1938,-1956,-1980,-2009,-2040,-2070,-2094,-2111,-2122,-2126,-2128,-2130,-2134,-2142,-2153,
+-2166,-2178,-2189,-2196,-2201,-2202,-2203,-2204,-2205,-2207,-2210,-2211,-2210,-2206,-2198,-2188,-2177,-2167,-2158,-2154,-2153,
+-2157,-2164,-2172,-2182,-2191,-2197,-2202,-2202,-2200,-2194,-2185,-2174,-2161,-2149,-2139,-2131,-2128,-2128,-2132,-2139,-2147,
+-2153,-2158,-2158,-2154,-2145,-2132,-2116,-2099,-2082,-2066,-2052,-2041,-2031,-2023,-2015,-2008,-2001,-1993,-1984,-1973,-1961,
+-1946,-1929,-1909,-1887,-1863,-1837,-1811,-1787,-1765,-1746,-1732,-1723,-1716,-1712,-1708,-1702,-1693,-1680,-1663,-1644,-1623,
+-1602,-1583,-1568,-1555,-1546,-1539,-1533,-1526,-1519,-1510,-1500,-1491,-1483,-1477,-1475,-1476,-1479,-1483,-1487,-1488,-1485,
+-1479,-1467,-1453,-1437,-1420,-1405,-1392,-1383,-1377,-1374,-1373,-1374,-1375,-1376,-1376,-1376,-1376,-1376,-1377,-1377,-1377,
+-1377,-1378,-1379,-1382,-1387,-1395,-1404,-1415,-1424,-1429,-1428,-1417,-1393,-1355,-1304,-1240,-1167,-1088,-1005,-923,-844,
+-770,-702,-641,-588,-544,-508,-481,-462,-451,-446,-445,-448,-453,-458,-463,-467,-469,-469,-467,-462,-453,
+-439,-419,-395,-366,-333,-298,-263,-229,-196,-166,-138,-113,-91,-71,-53,-36,-21,-7,8,25,46,
+70,98,130,165,202,240,278,315,349,382,412,437,457,471,476,474,464,450,434,422,417,
+423,442,473,515,563,615,665,709,745,771,787,792,788,775,755,728,696,661,624,587,551,
+519,490,466,448,434,426,424,429,439,456,478,505,533,561,587,609,626,639,649,657,664,
+672,679,685,689,689,687,680,672,663,656,653,653,659,668,679,692,705,717,728,737,746,
+755,765,775,786,799,813,827,842,857,872,884,894,901,904,904,902,899,898,899,904,913,
+924,936,947,954,957,956,952,946,941,939,939,942,946,952,955,956,953,945,934,919,903,
+885,868,853,840,831,826,824,823,822,818,808,791,767,737,705,672,645,626,615,615,621,
+631,641,647,649,644,635,622,608,596,585,576,569,562,556,550,545,541,538,537,536,534,
+530,522,511,497,482,467,454,444,438,435,433,430,425,416,405,391,376,361,348,337,329,
+323,319,317,315,314,315,317,321,326,332,339,345,350,352,352,349,345,340,334,330,329,
+330,334,340,346,353,359,363,365,366,367,369,373,379,388,397,407,416,423,429,432,436,
+439,443,448,453,459,464,469,475,481,490,501,516,534,553,573,591,606,618,627,635,643,
+652,663,675,688,700,710,717,722,724,726,728,731,736,743,751,760,770,779,789,799,810,
+821,832,843,853,862,870,876,883,889,896,903,909,913,914,911,905,896,885,875,865,858,
+852,850,848,846,844,841,836,830,823,816,810,806,803,802,803,806,811,817,822,827,831,
+833,834,833,831,829,828,829,831,834,838,841,843,842,838,830,817,800,779,753,725,696,
+668,644,625,613,608,610,615,621,623,619,604,578,540,491,432,368,299,229,160,94,31,
+-26,-80,-128,-173,-214,-252,-289,-325,-360,-396,-430,-463,-493,-520,-542,-561,-577,-591,-605,-620,-637,
+-655,-673,-693,-713,-734,-757,-784,-815,-852,-894,-941,-990,-1038,-1083,-1123,-1158,-1189,-1217,-1245,-1275,-1309,
+-1348,-1390,-1434,-1479,-1520,-1558,-1590,-1618,-1641,-1661,-1678,-1694,-1710,-1726,-1742,-1758,-1775,-1791,-1807,-1821,-1834,
+-1843,-1849,-1851,-1850,-1848,-1847,-1851,-1862,-1882,-1910,-1946,-1988,-2033,-2078,-2121,-2161,-2198,-2233,-2266,-2299,-2332,
+-2366,-2400,-2434,-2468,-2501,-2534,-2567,-2601,-2638,-2677,-2718,-2761,-2805,-2850,-2895,-2939,-2982,-3024,-3064,-3102,-3138,
+-3171,-3201,-3230,-3257,-3285,-3313,-3342,-3373,-3406,-3439,-3472,-3504,-3533,-3559,-3583,-3603,-3621,-3637,-3652,-3666,-3679,
+-3693,-3705,-3718,-3729,-3741,-3753,-3764,-3776,-3789,-3801,-3814,-3827,-3839,-3851,-3860,-3867,-3870,-3868,-3861,-3850,-3835,
+-3817,-3796,-3773,-3750,-3726,-3702,-3678,-3654,-3631,-3610,-3593,-3579,-3570,-3566,-3564,-3565,-3565,-3562,-3557,-3547,-3535,
+-3521,-3507,-3493,-3480,-3468,-3456,-3443,-3427,-3410,-3392,-3374,-3358,-3345,-3338,-3335,-3337,-3341,-3346,-3351,-3352,-3350,
+-3344,-3335,-3321,-3305,-3286,-3266,-3245,-3224,-3203,-3183,-3165,-3147,-3130,-3113,-3094,-3074,-3052,-3029,-3007,-2986,-2967,
+-2950,-2936,-2922,-2908,-2893,-2875,-2856,-2837,-2819,-2805,-2795,-2789,-2785,-2780,-2771,-2756,-2732,-2701,-2661,-2617,-2570,
+-2523,-2477,-2432,-2389,-2346,-2301,-2255,-2206,-2154,-2101,-2046,-1990,-1935,-1879,-1824,-1769,-1713,-1657,-1598,-1535,-1469,
+-1398,-1323,-1243,-1163,-1083,-1008,-937,-872,-810,-749,-682,-607,-519,-417,-303,-181,-56,66,181,286,381,
+466,544,615,680,739,788,825,851,867,878,891,914,955,1017,1102,1205,1321,1440,1555,1659,1748,
+1823,1884,1936,1979,2017,2050,2077,2099,2116,2133,2154,2183,2226,2285,2357,2439,2523,2602,2667,2716,2749,
+2768,2781,2796,2818,2852,2898,2954,3015,3075,3130,3177,3215,3247,3274,3299,3327,3357,3392,3430,3473,3520,
+3571,3627,3688,3753,3823,3895,3966,4034,4098,4157,4210,4260,4306,4352,4397,4443,4490,4537,4584,4629,4671,
+4710,4744,4771,4791,4802,4805,4800,4790,4779,4770,4766,4771,4785,4806,4833,4860,4884,4902,4914,4920,4924,
+4929,4940,4960,4991,5031,5080,5132,5185,5234,5277,5315,5348,5379,5410,5444,5482,5525,5569,5615,5657,5695,
+5726,5749,5764,5774,5781,5786,5792,5802,5814,5831,5850,5872,5894,5917,5938,5958,5976,5992,6007,6021,6033,
+6044,6055,6065,6075,6086,6100,6116,6136,6160,6186,6214,6242,6268,6292,6312,6328,6342,6354,6366,6378,6392,
+6408,6423,6437,6450,6459,6465,6470,6472,6475,6479,6484,6491,6498,6505,6509,6510,6507,6500,6491,6480,6470,
+6463,6459,6459,6461,6465,6467,6466,6460,6449,6433,6414,6393,6372,6354,6338,6325,6313,6300,6283,6261,6231,
+6195,6152,6104,6056,6008,5964,5924,5889,5860,5835,5813,5793,5774,5755,5733,5707,5677,5642,5602,5558,5512,
+5467,5426,5391,5363,5343,5329,5319,5309,5297,5282,5263,5241,5218,5196,5176,5160,5148,5139,5131,5124,5115,
+5105,5093,5081,5068,5056,5044,5032,5019,5003,5032,5014,4989,4957,4918,4873,4826,4780,4735,4694,4658,4625,
+4596,4569,4543,4518,4492,4467,4442,4418,4396,4377,4362,4349,4339,4329,4319,4306,4291,4271,4249,4223,4194,
+4164,4133,4102,4070,4040,4011,3984,3959,3936,3915,3894,3871,3843,3808,3765,3714,3658,3598,3539,3484,3437,
+3400,3371,3351,3336,3324,3311,3298,3282,3265,3247,3228,3209,3189,3168,3145,3120,3093,3065,3035,3006,2977,
+2948,2918,2886,2849,2806,2759,2707,2652,2595,2539,2485,2433,2383,2335,2288,2242,2197,2155,2117,2083,2054,
+2031,2011,1993,1977,1961,1943,1925,1905,1886,1868,1851,1837,1827,1819,1815,1813,1812,1812,1812,1809,1803,
+1794,1782,1768,1754,1742,1732,1727,1726,1728,1732,1737,1742,1745,1748,1750,1753,1757,1762,1766,1769,1767,
+1759,1745,1725,1701,1673,1645,1618,1594,1572,1553,1535,1519,1504,1492,1482,1474,1470,1467,1464,1459,1450,
+1435,1413,1386,1355,1322,1290,1261,1236,1217,1203,1193,1188,1186,1185,1186,1187,1184,1177,1161,1135,1097,
+1047,987,920,850,783,724,675,639,617,608,609,618,631,643,653,658,655,645,628,604,574,
+540,502,463,422,382,342,303,265,231,199,172,150,132,119,109,100,91,80,67,49,27,
+2,-26,-56,-87,-118,-148,-175,-200,-223,-244,-264,-283,-304,-327,-354,-385,-420,-457,-495,-532,-565,
+-593,-614,-626,-628,-620,-603,-577,-546,-511,-478,-450,-433,-429,-442,-471,-514,-569,-629,-691,-750,-802,
+-847,-885,-917,-947,-975,-1003,-1034,-1067,-1101,-1136,-1171,-1205,-1236,-1266,-1294,-1319,-1343,-1366,-1389,-1413,-1438,
+-1466,-1495,-1526,-1557,-1586,-1614,-1638,-1658,-1674,-1687,-1698,-1706,-1712,-1716,-1718,-1719,-1719,-1718,-1717,-1718,-1719,
+-1721,-1723,-1722,-1720,-1714,-1707,-1700,-1696,-1697,-1705,-1720,-1741,-1766,-1792,-1815,-1835,-1849,-1858,-1865,-1869,-1873,
+-1877,-1880,-1880,-1877,-1870,-1860,-1848,-1839,-1835,-1839,-1851,-1872,-1897,-1924,-1949,-1970,-1986,-1999,-2010,-2023,-2039,
+-2061,-2087,-2115,-2143,-2167,-2185,-2197,-2202,-2204,-2203,-2204,-2206,-2211,-2218,-2227,-2236,-2244,-2251,-2257,-2262,-2266,
+-2270,-2273,-2274,-2272,-2267,-2259,-2247,-2233,-2219,-2207,-2199,-2195,-2197,-2205,-2216,-2229,-2243,-2255,-2264,-2269,-2271,
+-2268,-2262,-2253,-2243,-2232,-2222,-2214,-2208,-2204,-2204,-2206,-2211,-2216,-2221,-2224,-2224,-2220,-2212,-2199,-2182,-2163,
+-2143,-2123,-2106,-2091,-2079,-2070,-2062,-2056,-2050,-2044,-2037,-2028,-2017,-2005,-1989,-1971,-1950,-1925,-1898,-1869,-1839,
+-1812,-1787,-1767,-1751,-1739,-1731,-1724,-1715,-1704,-1689,-1671,-1649,-1626,-1604,-1584,-1568,-1556,-1547,-1542,-1538,-1535,
+-1532,-1528,-1524,-1522,-1521,-1523,-1528,-1536,-1545,-1555,-1563,-1569,-1571,-1568,-1561,-1549,-1535,-1521,-1506,-1493,-1483,
+-1476,-1471,-1467,-1465,-1462,-1458,-1453,-1448,-1442,-1438,-1435,-1434,-1435,-1437,-1440,-1443,-1448,-1452,-1458,-1466,-1474,
+-1481,-1486,-1486,-1476,-1455,-1420,-1371,-1308,-1234,-1152,-1066,-980,-895,-816,-742,-674,-612,-558,-512,-474,-445,
+-427,-418,-418,-424,-434,-445,-455,-463,-466,-465,-460,-450,-436,-418,-397,-372,-343,-311,-278,-243,-208,
+-175,-145,-118,-94,-74,-56,-39,-22,-5,13,35,60,88,119,152,186,221,256,289,322,353,
+383,412,438,461,480,494,502,503,499,490,478,467,459,456,460,472,491,517,548,583,621,
+660,699,736,769,797,818,831,835,830,818,798,772,741,704,664,621,576,533,494,463,444,
+438,447,469,501,538,577,612,640,660,674,682,688,693,701,709,718,726,729,728,722,713,
+703,695,691,693,700,712,727,741,755,765,773,779,784,790,798,808,822,838,855,873,890,
+906,921,933,942,948,951,951,951,950,950,952,956,963,971,978,984,986,985,981,975,968,
+963,959,959,960,963,966,967,964,958,948,935,919,903,886,870,857,845,837,832,828,826,
+821,814,800,781,754,723,690,658,632,614,604,603,608,615,621,622,618,608,594,578,564,
+551,542,536,531,528,524,521,518,516,516,517,519,518,515,508,496,480,463,448,435,427,
+423,423,424,425,424,419,412,403,393,385,378,373,369,365,361,355,348,341,336,332,332,
+336,344,355,366,378,387,393,395,393,386,377,368,359,352,350,351,357,366,377,387,398,
+407,415,423,432,442,454,466,478,489,497,503,506,509,511,514,519,525,533,541,550,557,
+565,573,582,593,605,618,631,642,651,658,664,670,677,686,698,711,724,735,743,747,747,
+745,743,741,743,747,756,766,778,791,803,814,824,835,845,856,867,878,890,902,915,927,
+939,951,961,968,971,969,964,955,944,934,926,921,921,925,931,939,946,952,956,957,955,
+951,945,939,931,923,915,908,902,898,894,892,891,889,887,884,880,875,871,868,867,867,
+869,872,874,876,875,871,863,853,839,822,802,779,756,731,707,685,666,649,636,625,615,
+604,590,571,546,514,475,429,378,323,264,205,147,90,37,-12,-58,-101,-142,-182,-223,-265,
+-308,-352,-396,-438,-476,-510,-538,-562,-583,-601,-619,-636,-654,-673,-691,-709,-726,-744,-763,-787,-815,
+-850,-891,-938,-987,-1036,-1083,-1126,-1163,-1196,-1227,-1258,-1291,-1327,-1368,-1413,-1460,-1506,-1549,-1587,-1620,-1648,
+-1672,-1693,-1711,-1729,-1747,-1765,-1783,-1802,-1820,-1837,-1853,-1867,-1877,-1883,-1885,-1882,-1877,-1872,-1869,-1872,-1883,
+-1902,-1930,-1966,-2005,-2047,-2088,-2126,-2161,-2194,-2225,-2255,-2287,-2320,-2353,-2387,-2421,-2454,-2487,-2520,-2555,-2593,
+-2633,-2676,-2723,-2770,-2818,-2865,-2910,-2953,-2994,-3034,-3071,-3107,-3141,-3173,-3204,-3233,-3261,-3289,-3319,-3350,-3383,
+-3418,-3453,-3488,-3521,-3551,-3577,-3600,-3620,-3637,-3653,-3668,-3683,-3698,-3714,-3729,-3745,-3761,-3777,-3793,-3809,-3825,
+-3841,-3856,-3871,-3884,-3896,-3906,-3914,-3919,-3920,-3917,-3910,-3898,-3882,-3862,-3840,-3817,-3794,-3771,-3749,-3729,-3709,
+-3690,-3674,-3659,-3648,-3641,-3637,-3636,-3637,-3638,-3637,-3634,-3628,-3620,-3610,-3599,-3589,-3579,-3570,-3561,-3550,-3536,
+-3519,-3499,-3477,-3456,-3436,-3421,-3410,-3404,-3401,-3401,-3402,-3402,-3401,-3396,-3389,-3378,-3365,-3349,-3331,-3311,-3291,
+-3272,-3254,-3237,-3222,-3206,-3190,-3171,-3149,-3124,-3097,-3069,-3044,-3022,-3005,-2992,-2981,-2971,-2960,-2945,-2926,-2904,
+-2881,-2859,-2839,-2822,-2807,-2792,-2774,-2751,-2722,-2686,-2644,-2599,-2553,-2508,-2465,-2424,-2384,-2345,-2303,-2259,-2211,
+-2160,-2106,-2052,-1996,-1941,-1885,-1830,-1774,-1718,-1661,-1602,-1543,-1481,-1416,-1349,-1279,-1207,-1136,-1065,-997,-932,
+-869,-805,-739,-667,-586,-495,-395,-287,-175,-63,45,150,248,341,428,509,582,644,693,728,749,
+760,767,779,805,852,926,1024,1144,1276,1410,1536,1647,1739,1811,1867,1911,1947,1979,2009,2036,2060,
+2083,2106,2133,2168,2214,2274,2347,2430,2516,2598,2670,2726,2766,2793,2812,2828,2850,2879,2918,2964,3014,
+3063,3107,3144,3173,3197,3218,3241,3268,3301,3341,3387,3439,3496,3558,3623,3692,3763,3837,3910,3982,4050,
+4113,4171,4223,4271,4316,4360,4405,4451,4498,4546,4594,4641,4685,4725,4759,4785,4803,4811,4809,4800,4786,
+4770,4755,4747,4746,4754,4770,4791,4813,4833,4849,4858,4862,4862,4864,4871,4886,4912,4948,4994,5046,5100,
+5154,5206,5256,5302,5348,5395,5444,5495,5547,5598,5645,5686,5719,5743,5758,5767,5773,5779,5788,5801,5820,
+5843,5869,5896,5922,5945,5964,5979,5991,6001,6010,6019,6029,6040,6051,6064,6077,6092,6108,6127,6148,6171,
+6197,6224,6251,6277,6300,6320,6338,6353,6367,6381,6397,6415,6435,6455,6475,6493,6507,6517,6523,6526,6527,
+6528,6532,6537,6546,6556,6566,6575,6580,6581,6577,6569,6558,6546,6536,6528,6524,6523,6526,6528,6529,6525,
+6514,6495,6470,6440,6408,6377,6351,6330,6316,6307,6300,6291,6277,6256,6225,6185,6138,6087,6034,5985,5940,
+5901,5869,5843,5821,5800,5779,5754,5725,5690,5650,5605,5558,5512,5470,5434,5407,5387,5373,5363,5353,5340,
+5322,5299,5273,5246,5221,5200,5184,5175,5169,5166,5161,5153,5141,5126,5109,5092,5078,5066,5058,5051,5043,
+5032,5047,5032,5011,4983,4949,4911,4870,4827,4784,4742,4701,4660,4621,4582,4546,4511,4480,4452,4427,4406,
+4387,4372,4358,4344,4330,4315,4298,4277,4254,4227,4198,4167,4136,4106,4079,4053,4032,4013,3997,3982,3969,
+3955,3939,3919,3894,3863,3825,3780,3729,3674,3618,3563,3513,3468,3431,3399,3372,3349,3326,3303,3279,3254,
+3228,3202,3178,3154,3131,3109,3087,3064,3040,3014,2988,2960,2931,2899,2865,2827,2785,2737,2685,2630,2573,
+2515,2458,2403,2350,2300,2251,2205,2161,2120,2082,2048,2018,1992,1969,1950,1932,1915,1899,1884,1869,1854,
+1840,1828,1817,1808,1801,1796,1795,1796,1800,1806,1811,1815,1815,1810,1800,1785,1767,1750,1735,1725,1720,
+1720,1725,1730,1737,1742,1747,1751,1756,1763,1772,1783,1793,1799,1801,1795,1781,1760,1734,1703,1671,1639,
+1607,1576,1546,1517,1489,1464,1443,1426,1414,1407,1404,1401,1398,1392,1382,1367,1348,1325,1302,1279,1257,
+1237,1221,1208,1198,1191,1186,1183,1180,1174,1163,1144,1117,1078,1030,973,911,847,786,730,682,645,
+620,605,599,601,608,618,627,635,637,633,622,603,577,545,509,470,429,389,350,313,278,
+246,216,189,164,142,123,107,93,80,69,57,45,31,13,-8,-35,-67,-104,-144,-185,-224,
+-259,-287,-309,-325,-337,-348,-360,-374,-393,-414,-436,-458,-475,-487,-492,-492,-486,-476,-463,-451,-439,
+-430,-427,-432,-447,-475,-515,-567,-628,-694,-759,-819,-871,-912,-943,-966,-985,-1004,-1025,-1050,-1080,-1113,
+-1147,-1181,-1212,-1242,-1268,-1293,-1317,-1341,-1365,-1390,-1415,-1442,-1470,-1499,-1529,-1559,-1589,-1618,-1644,-1667,-1687,
+-1704,-1718,-1731,-1742,-1752,-1761,-1768,-1772,-1774,-1773,-1771,-1768,-1766,-1764,-1763,-1763,-1762,-1759,-1755,-1751,-1747,
+-1748,-1754,-1766,-1785,-1810,-1837,-1863,-1886,-1904,-1916,-1923,-1925,-1925,-1924,-1921,-1917,-1912,-1904,-1894,-1884,-1876,
+-1873,-1877,-1889,-1909,-1935,-1964,-1994,-2021,-2043,-2062,-2077,-2092,-2108,-2126,-2148,-2171,-2195,-2218,-2236,-2250,-2259,
+-2263,-2264,-2262,-2261,-2259,-2259,-2259,-2260,-2263,-2267,-2273,-2280,-2290,-2300,-2310,-2319,-2323,-2323,-2317,-2306,-2292,
+-2276,-2262,-2253,-2249,-2252,-2262,-2276,-2294,-2312,-2328,-2339,-2345,-2345,-2340,-2330,-2318,-2305,-2292,-2281,-2272,-2265,
+-2262,-2261,-2263,-2267,-2272,-2277,-2281,-2282,-2278,-2269,-2254,-2235,-2212,-2188,-2164,-2144,-2127,-2115,-2107,-2101,-2097,
+-2093,-2087,-2081,-2072,-2063,-2051,-2039,-2024,-2007,-1986,-1961,-1934,-1904,-1874,-1845,-1819,-1797,-1780,-1766,-1754,-1743,
+-1730,-1714,-1695,-1673,-1650,-1627,-1607,-1589,-1576,-1566,-1559,-1554,-1551,-1549,-1550,-1553,-1559,-1568,-1580,-1595,-1611,
+-1626,-1640,-1651,-1657,-1658,-1654,-1646,-1633,-1619,-1604,-1589,-1576,-1566,-1559,-1554,-1551,-1548,-1544,-1538,-1531,-1522,
+-1513,-1506,-1501,-1499,-1500,-1504,-1509,-1515,-1521,-1526,-1531,-1536,-1541,-1547,-1550,-1549,-1540,-1520,-1487,-1439,-1376,
+-1302,-1220,-1133,-1045,-959,-876,-798,-724,-654,-589,-531,-481,-441,-413,-398,-395,-402,-415,-431,-445,-455,
+-458,-455,-446,-431,-413,-393,-371,-346,-320,-292,-262,-231,-199,-168,-139,-112,-89,-68,-49,-31,-13,
+6,28,54,82,112,145,180,215,250,284,317,349,379,407,433,455,474,489,500,506,508,
+508,506,504,502,502,504,509,516,527,541,559,581,607,637,671,706,742,776,807,834,857,
+875,889,898,899,891,872,840,793,736,670,604,544,498,471,465,481,513,556,602,644,677,
+700,713,719,721,724,729,737,746,754,759,759,756,749,741,735,734,739,750,765,782,798,
+811,820,825,827,829,832,837,846,859,875,892,909,926,940,953,964,972,979,984,988,992,
+995,998,1001,1005,1009,1012,1015,1015,1014,1010,1005,999,993,988,985,984,983,982,980,975,968,
+958,947,934,921,909,897,885,874,863,851,838,825,812,798,783,765,745,723,700,676,655,
+638,626,620,618,619,620,617,611,598,582,565,548,534,524,519,517,517,516,515,512,509,
+506,504,503,503,502,499,491,480,466,451,437,427,421,419,421,425,427,428,426,421,416,
+411,407,404,403,402,399,394,386,376,366,356,349,345,346,352,361,373,387,401,413,421,
+425,424,418,408,396,383,373,367,366,372,382,396,411,427,442,455,468,481,495,508,521,
+533,543,551,556,559,562,566,572,580,589,600,611,621,630,638,645,653,660,668,675,682,
+687,692,696,701,709,719,731,744,757,766,772,774,772,767,762,760,761,767,778,792,808,
+824,840,853,865,874,883,891,899,907,915,926,938,952,967,983,997,1009,1017,1020,1018,1012,
+1005,999,995,996,1002,1012,1025,1040,1053,1064,1072,1077,1078,1076,1071,1065,1056,1045,1033,1020,1008,
+996,985,977,969,962,956,949,942,935,928,921,916,913,911,909,908,905,901,895,887,877,
+866,853,840,826,810,793,775,755,734,712,688,664,639,612,585,557,527,496,464,431,396,
+360,323,286,249,212,175,139,103,65,26,-16,-62,-112,-165,-219,-272,-323,-371,-415,-454,-489,
+-522,-553,-584,-614,-643,-671,-697,-721,-743,-763,-783,-805,-830,-860,-895,-935,-978,-1022,-1066,-1108,-1147,
+-1184,-1220,-1256,-1294,-1335,-1380,-1427,-1475,-1522,-1565,-1603,-1635,-1662,-1683,-1701,-1717,-1733,-1750,-1768,-1787,-1807,
+-1828,-1848,-1865,-1880,-1890,-1896,-1898,-1897,-1894,-1892,-1895,-1903,-1919,-1942,-1973,-2007,-2044,-2081,-2115,-2146,-2175,
+-2202,-2230,-2259,-2290,-2324,-2358,-2393,-2428,-2461,-2495,-2528,-2564,-2602,-2644,-2689,-2737,-2786,-2835,-2884,-2931,-2976,
+-3019,-3060,-3100,-3137,-3172,-3204,-3234,-3260,-3285,-3310,-3336,-3364,-3394,-3427,-3460,-3494,-3527,-3557,-3584,-3609,-3631,
+-3652,-3671,-3690,-3709,-3728,-3746,-3764,-3782,-3800,-3818,-3836,-3854,-3873,-3890,-3907,-3921,-3933,-3943,-3951,-3957,-3960,
+-3962,-3961,-3956,-3947,-3934,-3917,-3897,-3874,-3851,-3829,-3807,-3786,-3767,-3750,-3734,-3720,-3708,-3699,-3692,-3688,-3686,
+-3684,-3682,-3680,-3675,-3670,-3663,-3655,-3649,-3642,-3636,-3630,-3622,-3611,-3598,-3581,-3561,-3540,-3521,-3503,-3488,-3477,
+-3469,-3464,-3459,-3455,-3450,-3444,-3436,-3425,-3412,-3397,-3380,-3362,-3344,-3327,-3313,-3301,-3292,-3283,-3272,-3258,-3239,
+-3214,-3184,-3152,-3120,-3092,-3069,-3052,-3041,-3032,-3023,-3011,-2994,-2972,-2946,-2917,-2887,-2859,-2831,-2804,-2775,-2743,
+-2706,-2665,-2619,-2571,-2524,-2479,-2439,-2401,-2366,-2332,-2296,-2256,-2212,-2164,-2112,-2058,-2002,-1946,-1889,-1831,-1773,
+-1714,-1654,-1593,-1531,-1469,-1407,-1343,-1280,-1216,-1153,-1090,-1029,-970,-912,-855,-796,-734,-666,-592,-509,-419,
+-322,-220,-114,-6,101,206,306,398,478,543,589,618,632,637,642,656,690,750,839,955,1091,
+1236,1379,1510,1621,1708,1773,1820,1855,1885,1914,1945,1977,2010,2044,2077,2112,2152,2200,2258,2328,2407,
+2492,2575,2650,2712,2758,2788,2806,2817,2826,2838,2855,2879,2908,2939,2970,2999,3026,3052,3080,3111,3149,
+3195,3249,3309,3376,3447,3521,3597,3675,3755,3835,3915,3993,4068,4137,4200,4257,4307,4353,4396,4437,4478,
+4521,4564,4609,4653,4696,4735,4767,4793,4809,4815,4812,4801,4783,4762,4740,4721,4707,4699,4697,4700,4707,
+4715,4723,4731,4739,4749,4762,4782,4809,4846,4892,4946,5006,5069,5132,5194,5254,5312,5368,5424,5480,5535,
+5588,5637,5679,5712,5734,5747,5753,5754,5754,5759,5769,5788,5815,5847,5882,5916,5946,5969,5986,5996,6000,
+6002,6004,6007,6013,6023,6038,6057,6079,6105,6133,6163,6194,6224,6253,6280,6303,6323,6340,6354,6367,6380,
+6394,6410,6429,6450,6473,6495,6515,6533,6546,6555,6561,6564,6565,6568,6571,6578,6588,6599,6613,6626,6637,
+6644,6648,6646,6639,6629,6617,6605,6595,6588,6584,6583,6583,6580,6572,6556,6531,6499,6461,6421,6383,6351,
+6327,6311,6302,6295,6287,6273,6250,6218,6176,6129,6078,6028,5983,5943,5909,5880,5855,5832,5807,5779,5747,
+5711,5671,5628,5586,5545,5508,5478,5453,5433,5416,5400,5382,5360,5333,5303,5272,5243,5219,5203,5194,5191,
+5191,5192,5189,5180,5166,5148,5127,5106,5089,5077,5068,5062,5056,5047,5059,5045,5027,5003,4975,4944,4909,
+4872,4831,4788,4741,4691,4641,4592,4545,4504,4469,4441,4420,4403,4390,4376,4361,4344,4322,4298,4270,4241,
+4211,4180,4151,4123,4097,4074,4053,4037,4024,4014,4006,3999,3991,3981,3967,3946,3919,3885,3844,3798,3749,
+3699,3650,3603,3560,3520,3484,3449,3416,3382,3346,3309,3271,3232,3194,3158,3125,3095,3069,3046,3025,3005,
+2985,2965,2942,2917,2889,2857,2820,2779,2732,2681,2625,2568,2508,2448,2389,2332,2276,2222,2172,2124,2080,
+2040,2005,1975,1948,1926,1906,1889,1873,1859,1846,1835,1826,1818,1810,1804,1797,1789,1782,1776,1771,1771,
+1775,1783,1793,1803,1810,1812,1806,1793,1775,1753,1732,1714,1702,1698,1698,1704,1712,1721,1729,1737,1745,
+1755,1766,1779,1792,1803,1810,1812,1808,1796,1779,1756,1729,1700,1667,1633,1596,1558,1520,1482,1448,1417,
+1392,1372,1358,1347,1339,1331,1323,1313,1301,1288,1274,1258,1241,1224,1206,1188,1170,1153,1137,1123,1110,
+1095,1079,1058,1032,1000,961,917,870,822,775,732,693,661,635,616,604,599,600,605,613,622,
+629,631,626,614,593,564,529,489,448,406,365,326,290,257,226,197,171,145,122,100,81,
+64,51,40,31,23,13,0,-21,-51,-90,-135,-185,-234,-278,-312,-334,-344,-344,-338,-329,-321,
+-316,-317,-320,-326,-331,-336,-339,-342,-347,-354,-366,-383,-404,-430,-460,-494,-534,-580,-633,-691,-752,
+-814,-872,-921,-960,-989,-1007,-1020,-1032,-1046,-1066,-1092,-1123,-1157,-1190,-1222,-1250,-1273,-1295,-1315,-1336,-1358,
+-1383,-1409,-1437,-1465,-1493,-1521,-1549,-1577,-1605,-1633,-1659,-1681,-1701,-1717,-1731,-1743,-1754,-1765,-1777,-1787,-1796,
+-1802,-1805,-1806,-1806,-1805,-1804,-1804,-1805,-1805,-1805,-1802,-1798,-1795,-1794,-1797,-1808,-1826,-1851,-1880,-1910,-1938,
+-1960,-1974,-1980,-1980,-1975,-1966,-1957,-1948,-1940,-1932,-1924,-1917,-1912,-1910,-1913,-1923,-1940,-1963,-1990,-2020,-2050,
+-2078,-2102,-2124,-2144,-2162,-2180,-2199,-2217,-2236,-2253,-2268,-2280,-2288,-2291,-2291,-2289,-2283,-2277,-2269,-2262,-2257,
+-2254,-2256,-2263,-2275,-2293,-2315,-2337,-2358,-2375,-2385,-2387,-2381,-2369,-2353,-2338,-2325,-2319,-2320,-2329,-2345,-2364,
+-2384,-2402,-2414,-2420,-2417,-2408,-2393,-2375,-2355,-2335,-2317,-2302,-2291,-2285,-2283,-2287,-2294,-2305,-2317,-2329,-2337,
+-2339,-2334,-2321,-2300,-2274,-2245,-2215,-2189,-2168,-2152,-2141,-2134,-2128,-2123,-2117,-2110,-2101,-2092,-2082,-2072,-2062,
+-2049,-2034,-2015,-1992,-1965,-1936,-1908,-1880,-1857,-1836,-1820,-1805,-1792,-1777,-1761,-1742,-1721,-1699,-1678,-1658,-1640,
+-1625,-1612,-1602,-1594,-1589,-1587,-1589,-1596,-1608,-1624,-1644,-1666,-1687,-1707,-1722,-1731,-1736,-1734,-1728,-1717,-1703,
+-1688,-1672,-1657,-1645,-1634,-1627,-1622,-1619,-1617,-1614,-1609,-1602,-1594,-1585,-1577,-1571,-1568,-1569,-1573,-1578,-1584,
+-1589,-1593,-1597,-1600,-1605,-1609,-1611,-1610,-1602,-1582,-1549,-1501,-1439,-1365,-1283,-1196,-1108,-1022,-939,-858,-780,
+-704,-631,-563,-502,-452,-415,-392,-383,-386,-397,-410,-423,-431,-433,-428,-416,-400,-381,-360,-338,-315,
+-291,-265,-237,-208,-178,-149,-121,-95,-71,-49,-28,-7,14,37,62,88,115,144,172,200,229,
+257,286,315,344,373,402,429,454,475,493,507,517,524,529,533,538,544,552,561,572,585,
+600,617,637,659,683,708,733,756,778,796,812,828,846,867,891,918,943,961,966,953,919,
+865,795,716,640,575,530,510,515,542,582,628,672,707,732,747,753,754,755,758,763,769,
+776,781,783,783,780,778,778,782,790,803,818,834,847,857,863,866,866,866,868,872,879,
+889,900,913,925,936,947,957,967,977,988,999,1010,1021,1030,1038,1044,1047,1049,1049,1048,1047,
+1044,1041,1037,1033,1029,1025,1021,1016,1010,1002,991,979,966,952,938,927,918,912,907,901,893,
+880,863,842,817,792,767,745,726,710,697,687,678,670,663,657,653,649,645,639,629,615,
+597,576,554,534,519,509,505,505,507,509,509,508,505,502,499,496,495,493,491,485,476,
+465,453,442,433,427,426,427,430,433,434,434,432,430,428,428,428,429,428,426,422,415,
+407,398,389,382,376,373,372,373,376,382,391,402,413,424,432,434,432,424,412,399,388,
+382,383,390,402,419,437,455,472,488,502,516,530,544,557,569,579,587,593,598,602,608,
+616,626,637,648,659,669,678,685,691,698,704,710,716,722,729,735,743,752,762,774,785,
+794,801,803,802,798,793,789,789,793,802,815,832,851,869,886,901,913,923,929,934,936,
+938,940,944,952,962,977,994,1012,1029,1042,1051,1054,1053,1048,1044,1042,1045,1052,1064,1078,1094,
+1109,1122,1133,1140,1144,1147,1147,1144,1140,1133,1124,1112,1100,1087,1074,1063,1052,1043,1034,1024,1014,
+1003,992,982,972,964,957,952,947,941,936,929,921,912,902,893,884,875,867,857,846,834,
+818,798,775,748,718,685,651,617,584,552,524,499,476,457,441,425,410,395,377,355,328,
+295,255,208,155,98,39,-20,-77,-132,-183,-231,-278,-325,-371,-419,-469,-519,-568,-616,-662,-704,
+-743,-778,-810,-840,-868,-897,-926,-957,-989,-1023,-1058,-1093,-1130,-1168,-1207,-1247,-1290,-1335,-1382,-1431,-1479,
+-1526,-1568,-1604,-1633,-1655,-1673,-1686,-1699,-1712,-1729,-1749,-1772,-1798,-1825,-1850,-1872,-1889,-1900,-1907,-1910,-1911,
+-1912,-1916,-1926,-1942,-1965,-1993,-2025,-2059,-2092,-2123,-2151,-2176,-2199,-2224,-2250,-2280,-2313,-2349,-2386,-2423,-2459,
+-2493,-2527,-2560,-2595,-2631,-2671,-2713,-2757,-2803,-2849,-2896,-2944,-2992,-3040,-3088,-3135,-3179,-3219,-3253,-3282,-3305,
+-3324,-3342,-3360,-3381,-3405,-3433,-3464,-3495,-3527,-3558,-3587,-3614,-3639,-3664,-3688,-3713,-3736,-3760,-3782,-3803,-3823,
+-3843,-3862,-3881,-3900,-3919,-3937,-3953,-3966,-3977,-3985,-3992,-3997,-4001,-4005,-4007,-4007,-4004,-3997,-3985,-3969,-3950,
+-3928,-3906,-3884,-3863,-3843,-3825,-3808,-3791,-3775,-3760,-3747,-3735,-3726,-3718,-3713,-3708,-3703,-3698,-3693,-3688,-3683,
+-3679,-3674,-3669,-3663,-3655,-3645,-3633,-3619,-3604,-3589,-3575,-3562,-3551,-3541,-3532,-3523,-3514,-3503,-3492,-3478,-3463,
+-3446,-3428,-3408,-3388,-3370,-3354,-3343,-3337,-3335,-3335,-3334,-3329,-3316,-3296,-3267,-3233,-3197,-3162,-3133,-3112,-3099,
+-3090,-3084,-3076,-3062,-3041,-3012,-2978,-2939,-2900,-2861,-2824,-2786,-2747,-2707,-2663,-2616,-2568,-2521,-2476,-2435,-2398,
+-2364,-2330,-2295,-2257,-2215,-2168,-2118,-2064,-2009,-1952,-1896,-1838,-1780,-1720,-1657,-1594,-1528,-1462,-1396,-1330,-1266,
+-1203,-1142,-1083,-1026,-972,-920,-871,-823,-775,-726,-673,-614,-548,-471,-384,-286,-179,-65,50,163,267,
+355,423,470,497,508,512,520,542,587,661,765,895,1043,1196,1344,1476,1584,1666,1725,1766,1796,
+1822,1850,1883,1921,1961,2003,2044,2084,2125,2170,2223,2287,2361,2442,2527,2609,2680,2735,2772,2792,2796,
+2791,2783,2776,2776,2783,2798,2821,2849,2882,2919,2962,3011,3066,3129,3199,3274,3353,3435,3517,3600,3682,
+3764,3847,3929,4011,4091,4168,4240,4304,4362,4412,4457,4497,4536,4574,4614,4654,4695,4734,4770,4799,4820,
+4832,4834,4827,4810,4787,4757,4725,4691,4657,4627,4601,4581,4569,4565,4568,4580,4599,4626,4660,4702,4750,
+4806,4868,4936,5008,5082,5156,5228,5297,5362,5423,5480,5533,5582,5626,5663,5692,5712,5722,5724,5720,5714,
+5710,5712,5723,5744,5774,5811,5850,5887,5919,5944,5960,5968,5970,5970,5969,5972,5980,5994,6015,6043,6077,
+6116,6158,6200,6241,6279,6311,6338,6358,6373,6384,6394,6404,6415,6429,6446,6465,6485,6505,6523,6539,6552,
+6562,6569,6575,6580,6584,6590,6597,6606,6617,6629,6643,6658,6673,6686,6695,6700,6699,6692,6679,6664,6647,
+6633,6622,6615,6612,6610,6607,6597,6580,6552,6516,6473,6429,6387,6352,6325,6305,6292,6280,6267,6248,6221,
+6188,6148,6105,6062,6021,5983,5948,5917,5886,5857,5826,5795,5763,5730,5696,5663,5631,5599,5569,5540,5513,
+5487,5460,5433,5404,5373,5340,5307,5277,5250,5229,5216,5209,5206,5206,5204,5199,5188,5173,5154,5134,5115,
+5100,5089,5081,5075,5068,5059,5074,5057,5036,5012,4984,4953,4920,4883,4842,4797,4748,4695,4641,4589,4542,
+4502,4470,4446,4429,4416,4403,4387,4367,4340,4308,4271,4234,4197,4164,4135,4112,4092,4076,4062,4050,4040,
+4031,4023,4016,4010,4003,3992,3977,3955,3926,3891,3849,3804,3758,3712,3668,3628,3590,3553,3517,3479,3439,
+3395,3350,3302,3254,3208,3165,3125,3089,3059,3032,3009,2988,2968,2948,2928,2905,2879,2849,2815,2776,2732,
+2684,2630,2573,2513,2452,2389,2327,2266,2206,2150,2096,2047,2003,1964,1930,1902,1879,1859,1843,1829,1817,
+1807,1800,1795,1792,1791,1789,1787,1782,1775,1767,1758,1751,1748,1751,1760,1774,1789,1803,1812,1812,1803,
+1785,1760,1733,1708,1688,1676,1672,1674,1682,1693,1705,1717,1727,1737,1746,1756,1766,1775,1783,1788,1791,
+1789,1784,1773,1759,1739,1714,1683,1647,1607,1564,1519,1475,1434,1398,1366,1338,1316,1297,1281,1267,1255,
+1245,1236,1226,1216,1204,1188,1168,1144,1118,1090,1062,1036,1011,989,968,947,926,902,877,850,821,
+792,764,737,711,688,667,649,634,624,618,618,621,627,634,639,639,632,617,595,565,528,
+487,443,399,355,314,274,238,204,174,145,118,93,70,50,32,19,9,1,-4,-13,-28,
+-52,-85,-127,-175,-225,-269,-303,-322,-325,-314,-292,-265,-237,-214,-198,-190,-189,-194,-205,-221,-241,
+-268,-302,-341,-386,-434,-483,-532,-580,-629,-678,-729,-783,-838,-892,-942,-983,-1014,-1036,-1049,-1058,-1068,
+-1082,-1103,-1131,-1164,-1199,-1232,-1261,-1285,-1304,-1320,-1336,-1354,-1375,-1399,-1425,-1452,-1479,-1505,-1531,-1556,-1583,
+-1610,-1637,-1663,-1686,-1706,-1722,-1735,-1745,-1756,-1767,-1780,-1794,-1808,-1822,-1834,-1844,-1851,-1855,-1859,-1862,-1864,
+-1865,-1863,-1860,-1854,-1847,-1842,-1841,-1848,-1863,-1886,-1916,-1948,-1979,-2004,-2020,-2028,-2026,-2018,-2007,-1994,-1983,
+-1974,-1968,-1963,-1961,-1959,-1960,-1964,-1972,-1985,-2004,-2027,-2055,-2085,-2115,-2145,-2172,-2196,-2217,-2236,-2252,-2266,
+-2278,-2287,-2294,-2299,-2300,-2299,-2295,-2289,-2280,-2270,-2260,-2250,-2243,-2240,-2244,-2255,-2274,-2300,-2331,-2365,-2397,
+-2425,-2444,-2454,-2455,-2447,-2434,-2419,-2406,-2398,-2396,-2402,-2414,-2430,-2448,-2463,-2473,-2476,-2471,-2459,-2441,-2418,
+-2394,-2369,-2346,-2328,-2314,-2307,-2307,-2315,-2328,-2348,-2370,-2391,-2409,-2420,-2422,-2412,-2392,-2364,-2331,-2295,-2261,
+-2232,-2207,-2189,-2175,-2165,-2156,-2148,-2141,-2134,-2127,-2121,-2115,-2109,-2100,-2089,-2073,-2054,-2030,-2004,-1978,-1952,
+-1929,-1909,-1891,-1875,-1859,-1842,-1824,-1804,-1784,-1763,-1743,-1723,-1706,-1690,-1676,-1663,-1652,-1644,-1641,-1642,-1650,
+-1664,-1684,-1706,-1730,-1751,-1769,-1782,-1789,-1791,-1787,-1780,-1771,-1760,-1747,-1733,-1720,-1706,-1695,-1685,-1678,-1672,
+-1669,-1666,-1663,-1659,-1654,-1648,-1643,-1639,-1637,-1638,-1640,-1643,-1647,-1650,-1652,-1655,-1658,-1662,-1667,-1670,-1669,
+-1660,-1640,-1605,-1556,-1492,-1417,-1333,-1244,-1155,-1067,-982,-899,-819,-740,-664,-593,-530,-476,-436,-408,-393,
+-389,-391,-396,-400,-400,-396,-386,-372,-355,-336,-315,-293,-269,-242,-214,-183,-152,-122,-93,-67,-43,
+-21,0,20,42,65,91,118,145,171,195,217,236,254,271,288,306,326,350,376,404,433,
+462,490,514,536,553,566,577,585,592,600,609,621,637,658,682,711,743,775,805,831,849,
+859,861,858,854,853,860,876,902,933,963,985,990,975,937,878,808,733,666,614,585,578,
+592,621,658,695,727,752,768,776,780,782,784,787,791,795,799,803,806,810,815,822,831,
+841,852,864,874,882,887,891,893,895,898,901,905,911,916,921,926,930,934,939,946,955,
+969,985,1004,1023,1042,1057,1068,1075,1078,1078,1076,1073,1071,1069,1068,1067,1065,1062,1058,1051,1042,
+1031,1017,1000,983,964,947,931,920,913,909,907,904,897,884,865,838,808,776,747,724,707,
+698,694,693,692,690,686,680,672,664,655,645,633,618,599,577,554,531,511,496,487,484,
+486,489,493,495,496,495,493,492,491,490,488,485,479,470,460,450,441,434,431,431,433,
+436,439,442,445,447,449,452,454,455,455,453,450,445,440,435,431,427,423,417,409,400,
+392,385,382,385,392,404,417,428,434,435,430,421,412,405,403,409,421,437,457,478,497,
+514,530,545,560,574,589,602,614,623,630,634,638,642,648,656,666,677,688,699,709,717,
+724,732,739,747,756,765,776,786,797,808,818,827,833,837,837,835,830,825,821,820,823,
+830,842,858,875,893,910,926,940,952,961,967,971,972,971,969,969,971,978,989,1004,1022,
+1039,1055,1066,1071,1072,1069,1066,1064,1065,1071,1080,1093,1106,1119,1131,1141,1150,1157,1164,1169,1174,
+1178,1179,1177,1172,1165,1157,1147,1137,1128,1119,1109,1099,1087,1074,1060,1046,1033,1021,1012,1006,1002,
+1000,999,997,995,990,984,976,967,956,946,935,924,913,901,886,869,848,824,797,768,737,
+708,679,654,632,614,601,592,586,582,577,569,556,534,503,462,413,357,298,239,183,130,
+82,37,-6,-52,-101,-156,-216,-281,-349,-419,-489,-559,-627,-692,-754,-810,-860,-904,-941,-972,-997,
+-1020,-1042,-1065,-1091,-1120,-1154,-1191,-1232,-1275,-1321,-1368,-1416,-1462,-1506,-1545,-1578,-1604,-1624,-1638,-1649,-1660,
+-1675,-1696,-1722,-1755,-1791,-1829,-1863,-1892,-1914,-1928,-1936,-1939,-1941,-1945,-1954,-1969,-1990,-2017,-2047,-2078,-2108,
+-2136,-2161,-2183,-2205,-2227,-2253,-2282,-2315,-2352,-2390,-2429,-2467,-2503,-2538,-2571,-2604,-2638,-2673,-2710,-2747,-2786,
+-2825,-2866,-2909,-2955,-3004,-3057,-3111,-3165,-3215,-3260,-3297,-3325,-3345,-3359,-3369,-3381,-3395,-3414,-3438,-3467,-3498,
+-3531,-3564,-3595,-3624,-3652,-3679,-3706,-3734,-3761,-3789,-3816,-3841,-3866,-3889,-3910,-3931,-3951,-3969,-3987,-4002,-4015,
+-4025,-4032,-4038,-4044,-4049,-4053,-4058,-4061,-4061,-4058,-4051,-4039,-4024,-4005,-3985,-3965,-3946,-3927,-3909,-3890,-3871,
+-3851,-3831,-3811,-3792,-3775,-3761,-3751,-3743,-3736,-3731,-3727,-3722,-3716,-3710,-3704,-3698,-3691,-3684,-3677,-3669,-3661,
+-3652,-3643,-3635,-3626,-3618,-3608,-3598,-3586,-3572,-3556,-3538,-3517,-3494,-3470,-3443,-3416,-3390,-3367,-3348,-3336,-3331,
+-3333,-3339,-3347,-3351,-3349,-3338,-3316,-3286,-3251,-3216,-3186,-3164,-3150,-3143,-3140,-3135,-3123,-3103,-3072,-3032,-2986,
+-2937,-2888,-2842,-2800,-2759,-2720,-2680,-2639,-2596,-2553,-2510,-2469,-2429,-2392,-2355,-2316,-2275,-2230,-2181,-2128,-2073,
+-2017,-1961,-1905,-1849,-1793,-1734,-1674,-1610,-1543,-1473,-1402,-1330,-1260,-1191,-1125,-1062,-1002,-945,-892,-843,-798,
+-757,-720,-685,-648,-607,-557,-494,-417,-325,-220,-108,4,109,200,273,324,356,376,392,415,454,
+516,607,724,864,1017,1173,1321,1451,1557,1637,1694,1732,1759,1782,1807,1838,1875,1917,1961,2005,2046,
+2086,2128,2175,2231,2298,2377,2464,2553,2635,2705,2755,2783,2791,2781,2761,2739,2721,2713,2717,2734,2763,
+2802,2851,2907,2969,3039,3116,3198,3286,3376,3467,3556,3643,3727,3808,3887,3965,4044,4123,4201,4276,4347,
+4412,4470,4522,4569,4613,4654,4695,4735,4774,4809,4839,4861,4874,4878,4871,4856,4831,4799,4760,4715,4667,
+4617,4569,4525,4491,4468,4460,4467,4489,4524,4568,4621,4678,4740,4806,4876,4950,5027,5108,5190,5270,5346,
+5415,5476,5528,5572,5607,5635,5655,5668,5673,5672,5665,5656,5646,5641,5642,5653,5675,5705,5741,5781,5818,
+5851,5878,5896,5909,5917,5923,5931,5942,5958,5982,6012,6049,6091,6137,6185,6232,6276,6314,6345,6369,6387,
+6400,6410,6420,6432,6447,6464,6482,6501,6519,6534,6547,6556,6564,6571,6578,6585,6594,6604,6615,6626,6637,
+6648,6659,6671,6684,6696,6709,6719,6725,6727,6722,6711,6695,6676,6657,6641,6630,6625,6623,6622,6617,6606,
+6585,6554,6513,6468,6422,6380,6344,6317,6297,6281,6267,6250,6229,6203,6171,6136,6099,6061,6022,5982,5943,
+5902,5862,5823,5787,5754,5726,5702,5680,5659,5637,5612,5583,5551,5517,5481,5445,5411,5378,5348,5320,5296,
+5275,5258,5244,5233,5224,5216,5206,5194,5181,5166,5151,5136,5124,5115,5108,5101,5095,5086,5074,5080,5057,
+5030,5000,4966,4931,4893,4852,4809,4763,4714,4664,4614,4567,4524,4488,4460,4438,4422,4408,4393,4374,4348,
+4316,4278,4237,4196,4159,4129,4105,4089,4079,4071,4064,4057,4049,4040,4032,4024,4018,4010,4000,3985,3963,
+3932,3894,3849,3800,3751,3703,3659,3618,3580,3542,3503,3461,3415,3366,3314,3262,3212,3167,3126,3091,3061,
+3036,3014,2994,2974,2953,2930,2905,2876,2844,2809,2771,2728,2682,2632,2578,2520,2459,2396,2332,2268,2204,
+2143,2086,2033,1985,1942,1905,1874,1848,1827,1809,1795,1785,1777,1772,1770,1770,1771,1772,1773,1772,1768,
+1762,1754,1745,1739,1737,1741,1752,1767,1786,1803,1816,1820,1813,1797,1771,1741,1710,1684,1664,1654,1652,
+1657,1667,1680,1692,1702,1710,1716,1720,1723,1727,1730,1735,1740,1745,1748,1750,1746,1738,1722,1699,1668,
+1631,1589,1545,1500,1457,1417,1381,1349,1321,1295,1273,1254,1237,1224,1212,1201,1190,1176,1157,1134,1105,
+1072,1036,1000,967,936,910,888,868,851,834,818,802,786,770,756,743,730,718,706,693,681,
+669,659,651,646,644,645,646,646,643,635,621,600,572,537,496,451,403,354,306,261,220,
+183,150,121,93,68,44,22,4,-10,-20,-28,-34,-44,-60,-85,-118,-159,-203,-243,-274,-290,
+-289,-271,-241,-204,-167,-135,-114,-106,-110,-126,-152,-186,-227,-274,-326,-381,-437,-492,-545,-594,-640,
+-685,-729,-777,-827,-880,-932,-981,-1022,-1053,-1074,-1088,-1097,-1106,-1121,-1142,-1170,-1203,-1237,-1269,-1295,-1316,
+-1330,-1342,-1353,-1367,-1384,-1405,-1429,-1455,-1480,-1506,-1530,-1556,-1582,-1610,-1638,-1665,-1691,-1712,-1730,-1744,-1757,
+-1769,-1784,-1801,-1821,-1843,-1865,-1885,-1902,-1915,-1923,-1929,-1931,-1932,-1930,-1925,-1918,-1909,-1899,-1890,-1885,-1887,
+-1897,-1915,-1941,-1971,-2001,-2027,-2046,-2056,-2058,-2052,-2042,-2031,-2021,-2014,-2010,-2009,-2010,-2013,-2017,-2024,-2033,
+-2046,-2064,-2085,-2111,-2140,-2170,-2199,-2227,-2251,-2272,-2289,-2303,-2312,-2318,-2321,-2322,-2320,-2317,-2311,-2304,-2296,
+-2286,-2275,-2265,-2256,-2250,-2249,-2255,-2269,-2291,-2321,-2356,-2394,-2431,-2463,-2489,-2505,-2513,-2513,-2506,-2497,-2487,
+-2480,-2476,-2477,-2483,-2491,-2500,-2508,-2512,-2512,-2507,-2495,-2479,-2460,-2438,-2418,-2399,-2385,-2376,-2374,-2379,-2392,
+-2411,-2435,-2461,-2486,-2507,-2520,-2522,-2514,-2495,-2467,-2433,-2395,-2357,-2322,-2291,-2264,-2243,-2226,-2213,-2204,-2197,
+-2193,-2190,-2189,-2188,-2185,-2179,-2169,-2155,-2135,-2113,-2088,-2062,-2037,-2014,-1992,-1972,-1953,-1933,-1913,-1892,-1870,
+-1848,-1828,-1808,-1790,-1774,-1758,-1743,-1730,-1717,-1708,-1703,-1703,-1710,-1723,-1741,-1762,-1782,-1800,-1814,-1821,-1824,
+-1822,-1817,-1810,-1803,-1795,-1786,-1776,-1764,-1752,-1739,-1727,-1716,-1709,-1704,-1701,-1700,-1700,-1700,-1699,-1698,-1698,
+-1697,-1697,-1698,-1699,-1700,-1700,-1700,-1701,-1702,-1705,-1709,-1711,-1708,-1697,-1675,-1639,-1587,-1522,-1444,-1359,-1269,
+-1177,-1087,-1000,-916,-835,-757,-684,-618,-560,-513,-476,-450,-433,-422,-414,-406,-396,-382,-365,-346,-325,
+-303,-281,-257,-231,-202,-170,-135,-100,-65,-34,-7,15,33,48,62,77,96,118,143,171,200,
+227,251,272,287,299,308,315,323,332,345,363,385,413,444,477,509,540,566,586,601,611,
+617,622,628,637,651,672,699,733,771,811,850,883,907,920,922,914,902,890,883,885,897,
+918,944,967,981,980,961,925,876,821,767,721,689,674,673,685,704,728,750,770,785,796,
+804,809,812,814,815,817,820,825,832,841,852,864,875,886,894,900,904,908,911,915,921,
+928,936,944,952,957,959,959,957,954,952,952,956,965,980,999,1021,1045,1066,1083,1094,1100,
+1100,1097,1092,1087,1084,1082,1082,1082,1080,1077,1072,1064,1054,1043,1030,1016,1000,984,967,951,937,
+926,917,910,903,893,879,858,832,803,773,747,728,716,711,711,711,710,703,692,678,662,
+647,636,628,621,614,603,586,565,540,514,492,476,467,466,469,475,481,485,487,487,486,
+484,482,481,478,474,468,459,450,441,434,430,429,432,437,444,452,459,466,472,476,479,
+480,478,475,471,466,462,460,459,458,457,452,444,433,419,406,396,391,392,400,411,423,
+433,439,440,437,433,429,430,437,450,467,488,509,530,549,567,583,599,615,630,644,656,
+665,670,673,675,677,680,686,695,707,719,732,744,754,764,772,781,791,802,815,828,843,
+856,868,876,881,882,880,874,866,859,853,851,853,859,869,882,896,910,922,934,944,954,
+963,972,980,987,992,995,996,998,1000,1005,1014,1025,1039,1053,1065,1074,1079,1081,1080,1078,1077,
+1080,1085,1094,1104,1115,1124,1133,1139,1145,1152,1159,1168,1179,1189,1199,1206,1211,1212,1211,1207,1202,
+1197,1191,1183,1175,1163,1150,1134,1117,1100,1085,1073,1067,1066,1070,1078,1087,1095,1100,1100,1094,1083,
+1067,1049,1029,1010,992,975,959,944,929,914,897,878,858,837,814,791,769,748,729,714,703,
+695,688,681,669,651,624,587,541,489,435,383,336,294,258,224,190,152,106,53,-8,-78,
+-153,-234,-318,-404,-493,-583,-671,-756,-834,-901,-956,-997,-1026,-1045,-1059,-1072,-1087,-1107,-1133,-1165,-1202,
+-1243,-1286,-1330,-1374,-1417,-1457,-1493,-1522,-1546,-1563,-1576,-1587,-1601,-1621,-1649,-1685,-1730,-1778,-1827,-1872,-1909,
+-1938,-1956,-1968,-1975,-1981,-1989,-2003,-2022,-2046,-2073,-2101,-2128,-2153,-2174,-2193,-2212,-2233,-2257,-2287,-2321,-2358,
+-2398,-2438,-2477,-2514,-2548,-2581,-2614,-2648,-2682,-2718,-2754,-2790,-2825,-2859,-2895,-2933,-2975,-3023,-3075,-3131,-3187,
+-3240,-3287,-3325,-3352,-3369,-3379,-3386,-3393,-3404,-3420,-3444,-3474,-3508,-3545,-3581,-3617,-3650,-3680,-3710,-3739,-3768,
+-3797,-3828,-3858,-3889,-3917,-3944,-3969,-3991,-4011,-4030,-4046,-4061,-4073,-4084,-4092,-4099,-4104,-4109,-4112,-4114,-4116,
+-4115,-4112,-4106,-4097,-4085,-4070,-4054,-4036,-4019,-4001,-3982,-3963,-3941,-3919,-3895,-3871,-3848,-3827,-3810,-3797,-3788,
+-3781,-3775,-3770,-3765,-3758,-3749,-3740,-3731,-3722,-3715,-3708,-3702,-3698,-3694,-3690,-3687,-3682,-3676,-3669,-3658,-3645,
+-3629,-3609,-3586,-3560,-3529,-3497,-3462,-3426,-3391,-3359,-3333,-3314,-3305,-3305,-3312,-3324,-3336,-3343,-3342,-3330,-3310,
+-3283,-3254,-3228,-3208,-3195,-3189,-3187,-3182,-3171,-3150,-3117,-3073,-3021,-2965,-2911,-2860,-2816,-2777,-2742,-2709,-2676,
+-2642,-2605,-2566,-2527,-2486,-2445,-2403,-2359,-2313,-2263,-2209,-2153,-2094,-2035,-1976,-1919,-1863,-1807,-1750,-1692,-1630,
+-1564,-1494,-1421,-1347,-1272,-1199,-1127,-1056,-988,-922,-858,-798,-744,-697,-658,-627,-602,-578,-551,-516,-467,
+-403,-324,-235,-140,-48,35,106,163,208,247,288,339,405,493,603,733,878,1030,1180,1321,1444,
+1545,1623,1679,1715,1739,1758,1777,1801,1833,1872,1916,1962,2007,2049,2091,2134,2184,2243,2315,2398,2487,
+2577,2659,2724,2767,2787,2786,2769,2744,2719,2702,2697,2707,2731,2768,2815,2872,2937,3010,3092,3181,3277,
+3378,3481,3582,3679,3769,3853,3932,4007,4079,4152,4226,4299,4372,4443,4511,4574,4634,4689,4740,4787,4830,
+4867,4897,4920,4933,4936,4930,4914,4890,4858,4819,4772,4719,4662,4603,4546,4496,4458,4438,4436,4453,4488,
+4536,4592,4652,4713,4774,4835,4899,4968,5043,5123,5208,5292,5372,5443,5501,5546,5577,5597,5607,5610,5607,
+5601,5593,5583,5574,5568,5566,5572,5586,5610,5641,5677,5715,5752,5786,5815,5839,5859,5877,5896,5917,5942,
+5971,6005,6044,6086,6131,6177,6222,6264,6302,6333,6359,6378,6393,6406,6419,6434,6451,6471,6493,6514,6534,
+6550,6563,6572,6579,6585,6592,6600,6611,6623,6637,6650,6663,6674,6683,6691,6698,6704,6711,6718,6724,6728,
+6729,6725,6717,6704,6687,6670,6654,6641,6632,6628,6624,6618,6607,6588,6559,6521,6478,6433,6391,6355,6327,
+6306,6291,6279,6265,6249,6228,6203,6172,6137,6098,6056,6009,5959,5907,5855,5807,5765,5730,5704,5686,5671,
+5657,5640,5617,5586,5550,5510,5469,5430,5396,5368,5345,5327,5312,5298,5284,5269,5253,5237,5220,5204,5189,
+5175,5163,5154,5146,5140,5135,5129,5122,5112,5098,5080,5066,5038,5005,4968,4929,4886,4842,4796,4749,4702,
+4655,4609,4563,4520,4480,4445,4415,4391,4372,4356,4341,4325,4304,4279,4249,4216,4182,4152,4126,4107,4093,
+4085,4078,4072,4064,4057,4049,4042,4038,4035,4031,4024,4010,3986,3951,3904,3850,3790,3730,3673,3621,3575,
+3533,3493,3453,3409,3361,3310,3257,3206,3157,3115,3079,3051,3029,3012,2998,2983,2967,2946,2921,2891,2857,
+2818,2776,2732,2686,2637,2586,2532,2474,2414,2350,2286,2221,2157,2098,2042,1992,1948,1909,1876,1847,1823,
+1803,1787,1776,1769,1766,1765,1766,1768,1770,1770,1769,1765,1760,1753,1747,1741,1738,1739,1745,1755,1769,
+1785,1801,1812,1816,1811,1796,1773,1743,1712,1682,1658,1643,1636,1637,1645,1655,1666,1675,1680,1682,1681,
+1678,1675,1673,1673,1676,1681,1688,1694,1697,1696,1688,1673,1649,1618,1583,1544,1505,1468,1434,1403,1376,
+1351,1328,1306,1286,1266,1248,1231,1213,1195,1175,1151,1122,1090,1054,1017,980,946,916,890,868,850,
+833,817,802,788,775,765,757,752,748,746,743,737,729,718,705,690,675,662,651,643,637,
+634,630,623,612,594,569,536,494,447,395,342,290,242,199,161,127,97,69,43,19,-1,
+-18,-31,-40,-47,-54,-67,-86,-115,-151,-190,-228,-256,-271,-268,-248,-215,-175,-136,-106,-90,-90,
+-107,-138,-181,-231,-286,-343,-399,-453,-505,-552,-596,-637,-676,-715,-757,-804,-855,-910,-965,-1016,-1060,
+-1093,-1115,-1129,-1137,-1146,-1159,-1178,-1203,-1233,-1265,-1293,-1317,-1334,-1346,-1354,-1362,-1372,-1386,-1404,-1425,-1450,
+-1475,-1501,-1527,-1555,-1583,-1612,-1642,-1671,-1698,-1723,-1745,-1764,-1783,-1803,-1825,-1850,-1877,-1904,-1930,-1953,-1970,
+-1981,-1987,-1987,-1985,-1980,-1974,-1967,-1959,-1951,-1941,-1933,-1928,-1927,-1932,-1945,-1964,-1987,-2013,-2038,-2058,-2073,
+-2080,-2081,-2078,-2071,-2064,-2058,-2054,-2052,-2053,-2057,-2064,-2074,-2087,-2105,-2126,-2150,-2176,-2204,-2231,-2257,-2280,
+-2300,-2317,-2329,-2339,-2346,-2350,-2351,-2351,-2349,-2346,-2341,-2335,-2328,-2319,-2310,-2300,-2292,-2286,-2285,-2290,-2303,
+-2324,-2351,-2385,-2421,-2458,-2491,-2520,-2543,-2559,-2568,-2571,-2571,-2567,-2562,-2558,-2553,-2550,-2549,-2548,-2548,-2547,
+-2545,-2541,-2534,-2525,-2514,-2503,-2493,-2485,-2482,-2484,-2491,-2504,-2522,-2544,-2566,-2587,-2605,-2617,-2621,-2618,-2606,
+-2587,-2561,-2530,-2496,-2462,-2428,-2395,-2366,-2340,-2318,-2301,-2289,-2283,-2280,-2281,-2283,-2285,-2285,-2280,-2271,-2256,
+-2237,-2213,-2188,-2161,-2135,-2109,-2085,-2060,-2036,-2012,-1987,-1962,-1939,-1916,-1896,-1877,-1861,-1846,-1831,-1817,-1803,
+-1790,-1779,-1771,-1769,-1773,-1783,-1797,-1814,-1830,-1844,-1852,-1855,-1853,-1847,-1839,-1830,-1821,-1813,-1804,-1795,-1785,
+-1773,-1760,-1748,-1737,-1730,-1726,-1725,-1727,-1730,-1734,-1737,-1738,-1739,-1739,-1738,-1736,-1734,-1731,-1727,-1723,-1720,
+-1717,-1716,-1715,-1713,-1707,-1694,-1671,-1636,-1587,-1525,-1452,-1371,-1285,-1197,-1108,-1021,-937,-857,-782,-714,-655,
+-606,-567,-538,-518,-502,-488,-473,-454,-430,-401,-369,-336,-303,-270,-237,-204,-168,-131,-91,-50,-10,
+25,56,79,94,104,111,116,125,137,155,179,206,236,265,293,317,337,352,363,371,376,
+380,385,394,406,424,446,471,499,526,551,572,588,601,611,619,628,639,653,672,696,726,
+759,795,833,868,898,922,937,943,941,935,928,923,923,929,940,953,964,969,965,951,928,
+899,867,836,810,790,778,774,775,781,791,802,815,827,837,845,850,853,853,853,855,859,
+867,878,892,905,917,927,933,937,939,943,948,956,967,980,994,1006,1015,1021,1023,1022,1019,
+1015,1011,1010,1012,1019,1031,1046,1065,1083,1100,1113,1120,1121,1118,1110,1102,1095,1089,1086,1084,1083,
+1080,1075,1068,1061,1054,1048,1044,1039,1034,1027,1016,1001,984,965,946,929,911,894,875,854,830,
+805,781,761,746,738,735,734,731,723,709,688,664,641,624,613,610,612,615,613,603,584,
+558,528,499,477,463,459,462,468,475,480,480,477,472,467,463,460,458,456,453,448,442,
+436,431,429,430,436,444,454,465,474,482,487,490,491,490,487,482,476,470,465,461,459,
+458,458,456,453,448,441,433,427,423,423,426,432,440,446,451,453,452,452,453,456,464,
+476,492,510,529,548,566,584,602,619,636,653,667,679,688,693,695,696,698,701,708,718,
+731,746,761,776,790,801,812,823,834,847,861,877,892,907,918,925,927,925,918,910,901,
+894,891,891,896,905,915,926,935,942,946,949,951,954,960,968,979,991,1004,1016,1026,1035,
+1043,1050,1058,1065,1073,1081,1087,1091,1093,1094,1094,1096,1099,1105,1114,1125,1136,1145,1152,1157,1159,
+1159,1161,1164,1171,1182,1195,1210,1225,1238,1247,1254,1258,1259,1258,1256,1252,1246,1237,1224,1206,1186,
+1163,1142,1125,1113,1110,1115,1127,1143,1160,1175,1183,1183,1175,1159,1137,1112,1085,1059,1035,1014,996,
+980,967,954,942,929,914,897,875,850,823,795,768,744,725,711,699,688,674,653,625,588,
+546,502,459,421,388,361,336,310,279,240,192,135,71,0,-75,-157,-246,-340,-441,-546,-651,
+-751,-840,-914,-971,-1010,-1033,-1046,-1054,-1062,-1074,-1093,-1118,-1150,-1187,-1227,-1269,-1311,-1352,-1390,-1424,-1453,
+-1476,-1494,-1509,-1523,-1542,-1567,-1602,-1646,-1697,-1752,-1807,-1858,-1901,-1935,-1960,-1980,-1995,-2011,-2029,-2051,-2076,
+-2104,-2132,-2158,-2180,-2199,-2215,-2230,-2246,-2266,-2292,-2324,-2361,-2402,-2443,-2484,-2522,-2557,-2589,-2620,-2653,-2686,
+-2722,-2759,-2796,-2832,-2866,-2899,-2932,-2967,-3005,-3050,-3100,-3154,-3209,-3261,-3307,-3344,-3370,-3386,-3394,-3399,-3404,
+-3413,-3429,-3453,-3485,-3524,-3566,-3609,-3652,-3692,-3728,-3762,-3794,-3824,-3856,-3887,-3920,-3952,-3983,-4012,-4039,-4061,
+-4082,-4099,-4115,-4130,-4143,-4156,-4166,-4175,-4180,-4182,-4182,-4179,-4175,-4170,-4164,-4157,-4149,-4140,-4128,-4114,-4098,
+-4079,-4059,-4037,-4014,-3988,-3963,-3936,-3911,-3887,-3867,-3850,-3838,-3829,-3823,-3819,-3814,-3809,-3802,-3793,-3782,-3772,
+-3762,-3754,-3747,-3744,-3742,-3741,-3740,-3740,-3738,-3734,-3728,-3720,-3707,-3691,-3671,-3647,-3618,-3585,-3548,-3508,-3466,
+-3424,-3385,-3350,-3324,-3308,-3301,-3304,-3314,-3327,-3338,-3343,-3340,-3329,-3311,-3290,-3269,-3252,-3240,-3232,-3227,-3221,
+-3208,-3185,-3151,-3107,-3056,-3001,-2947,-2898,-2855,-2818,-2787,-2758,-2729,-2699,-2665,-2629,-2590,-2548,-2505,-2460,-2412,
+-2362,-2308,-2251,-2191,-2128,-2065,-2002,-1940,-1880,-1821,-1762,-1702,-1640,-1575,-1507,-1437,-1365,-1292,-1219,-1146,-1072,
+-998,-922,-846,-772,-701,-638,-586,-545,-516,-496,-480,-463,-438,-403,-355,-297,-231,-163,-97,-35,22,
+79,141,211,294,394,510,639,779,923,1065,1201,1326,1435,1526,1597,1649,1684,1707,1722,1736,1755,
+1783,1821,1867,1919,1972,2023,2070,2114,2158,2208,2266,2336,2417,2503,2589,2665,2725,2763,2781,2779,2764,
+2744,2726,2715,2714,2726,2750,2785,2830,2885,2952,3029,3119,3219,3328,3441,3556,3666,3769,3864,3949,4026,
+4099,4168,4238,4310,4383,4458,4534,4609,4680,4747,4807,4860,4905,4939,4964,4979,4984,4980,4968,4948,4920,
+4884,4840,4788,4729,4665,4601,4540,4491,4458,4445,4454,4484,4531,4588,4650,4711,4769,4823,4875,4930,4991,
+5061,5139,5221,5305,5382,5448,5499,5532,5550,5555,5551,5542,5531,5521,5513,5508,5506,5509,5516,5530,5551,
+5578,5611,5648,5686,5723,5758,5789,5818,5845,5872,5901,5933,5968,6007,6048,6092,6136,6180,6223,6263,6298,
+6329,6354,6375,6391,6404,6417,6432,6449,6469,6491,6514,6535,6555,6570,6583,6592,6601,6610,6620,6631,6643,
+6655,6668,6679,6688,6696,6702,6706,6710,6713,6716,6718,6719,6718,6716,6712,6705,6695,6682,6668,6653,6640,
+6628,6617,6607,6595,6579,6557,6528,6494,6455,6416,6380,6350,6326,6309,6298,6288,6278,6265,6248,6225,6197,
+6163,6124,6078,6027,5972,5913,5856,5802,5756,5719,5693,5675,5662,5648,5630,5604,5569,5528,5483,5439,5399,
+5366,5341,5324,5311,5301,5290,5278,5263,5247,5229,5213,5198,5186,5177,5170,5165,5161,5156,5150,5141,5128,
+5111,5091,5066,5038,5008,4973,4935,4892,4845,4796,4744,4693,4644,4596,4550,4505,4462,4420,4380,4345,4316,
+4294,4280,4272,4268,4265,4260,4249,4233,4213,4190,4167,4145,4126,4110,4097,4085,4075,4067,4061,4058,4058,
+4060,4060,4053,4036,4006,3961,3903,3835,3762,3689,3622,3564,3513,3470,3431,3392,3352,3308,3260,3211,3163,
+3117,3078,3045,3021,3003,2990,2980,2971,2958,2941,2917,2886,2849,2806,2760,2711,2661,2610,2558,2504,2447,
+2387,2324,2259,2194,2131,2072,2018,1971,1929,1892,1861,1834,1811,1793,1779,1772,1769,1771,1775,1780,1784,
+1785,1783,1778,1770,1762,1754,1749,1745,1745,1748,1753,1760,1770,1779,1788,1795,1797,1792,1780,1760,1735,
+1706,1678,1653,1636,1626,1624,1628,1636,1645,1652,1655,1654,1649,1641,1632,1624,1617,1614,1614,1617,1621,
+1625,1627,1623,1614,1598,1576,1549,1520,1490,1463,1438,1416,1397,1380,1364,1347,1329,1309,1288,1267,1244,
+1219,1193,1165,1135,1103,1070,1036,1004,975,947,923,901,880,861,842,825,809,796,786,780,779,
+780,782,784,782,776,764,747,725,701,677,655,636,622,612,606,599,592,580,562,536,502,
+460,413,362,310,260,213,171,133,100,70,43,19,-1,-18,-30,-39,-47,-56,-70,-92,-123,
+-161,-202,-239,-267,-279,-272,-249,-212,-171,-133,-108,-100,-111,-142,-188,-244,-305,-366,-423,-476,-524,
+-567,-606,-643,-679,-716,-757,-801,-851,-904,-959,-1012,-1060,-1100,-1130,-1149,-1161,-1168,-1175,-1186,-1202,-1223,
+-1249,-1277,-1303,-1325,-1342,-1354,-1364,-1372,-1382,-1395,-1411,-1431,-1455,-1480,-1507,-1535,-1564,-1593,-1622,-1652,-1681,
+-1709,-1737,-1763,-1789,-1817,-1845,-1875,-1906,-1937,-1966,-1991,-2010,-2022,-2027,-2026,-2021,-2014,-2005,-1998,-1991,-1986,
+-1983,-1980,-1978,-1977,-1977,-1981,-1989,-2001,-2017,-2036,-2056,-2077,-2095,-2109,-2118,-2122,-2121,-2116,-2110,-2103,-2098,
+-2095,-2097,-2103,-2115,-2133,-2155,-2181,-2209,-2238,-2266,-2291,-2313,-2331,-2346,-2357,-2366,-2373,-2379,-2383,-2386,-2387,
+-2388,-2387,-2384,-2381,-2375,-2368,-2360,-2351,-2342,-2334,-2331,-2332,-2341,-2357,-2380,-2410,-2443,-2479,-2514,-2547,-2576,
+-2600,-2618,-2632,-2640,-2642,-2641,-2635,-2627,-2618,-2609,-2602,-2597,-2594,-2593,-2593,-2593,-2592,-2590,-2589,-2589,-2591,
+-2598,-2610,-2626,-2646,-2667,-2688,-2705,-2718,-2725,-2724,-2718,-2705,-2688,-2668,-2645,-2620,-2593,-2566,-2538,-2510,-2482,
+-2455,-2432,-2412,-2398,-2389,-2386,-2386,-2389,-2391,-2391,-2388,-2379,-2365,-2347,-2325,-2300,-2273,-2245,-2216,-2187,-2157,
+-2127,-2098,-2070,-2042,-2017,-1994,-1974,-1956,-1940,-1926,-1911,-1897,-1882,-1867,-1853,-1843,-1837,-1836,-1842,-1853,-1867,
+-1881,-1894,-1902,-1904,-1900,-1892,-1880,-1866,-1853,-1839,-1827,-1814,-1802,-1789,-1776,-1764,-1755,-1749,-1747,-1748,-1751,
+-1755,-1759,-1762,-1762,-1760,-1757,-1753,-1747,-1741,-1733,-1725,-1716,-1706,-1697,-1689,-1682,-1675,-1666,-1653,-1634,-1606,
+-1568,-1519,-1461,-1394,-1321,-1243,-1163,-1082,-1003,-926,-854,-790,-735,-690,-657,-634,-619,-607,-595,-580,-558,
+-529,-492,-449,-402,-354,-304,-254,-204,-154,-103,-53,-4,40,79,109,131,145,153,157,161,167,
+178,194,215,241,269,298,327,355,380,402,421,436,448,457,463,469,474,480,488,499,511,
+524,539,553,569,585,603,622,642,664,686,707,727,746,765,786,808,834,861,890,918,941,
+959,970,975,975,971,967,965,964,965,968,969,969,965,958,947,933,916,899,882,867,855,
+848,846,849,857,868,880,890,898,903,905,906,907,911,919,929,941,954,966,975,982,988,
+993,1001,1010,1023,1036,1051,1064,1075,1083,1089,1093,1095,1096,1097,1098,1098,1100,1102,1106,1112,1119,
+1128,1135,1140,1141,1138,1131,1121,1110,1101,1093,1088,1084,1080,1075,1068,1061,1054,1049,1048,1050,1055,
+1059,1059,1054,1042,1022,998,971,944,919,896,875,854,833,812,793,776,765,758,754,751,746,
+735,717,693,667,643,625,616,615,619,624,623,612,591,562,528,495,470,455,450,453,459,
+465,467,463,454,444,435,429,427,429,432,435,437,436,435,434,435,440,448,458,468,478,
+485,488,489,487,485,482,478,475,471,467,462,456,450,445,442,440,441,443,446,451,456,
+461,466,469,472,474,474,474,473,472,473,475,479,485,493,502,512,524,537,551,566,583,
+601,620,638,654,668,678,685,689,693,696,702,711,722,737,754,772,790,806,822,836,851,
+865,880,897,913,928,941,951,956,956,952,946,939,934,931,933,938,947,957,967,975,980,
+980,978,975,972,972,977,987,1001,1019,1039,1059,1078,1093,1105,1114,1120,1124,1126,1128,1129,1129,
+1129,1130,1132,1136,1144,1155,1168,1183,1198,1211,1220,1223,1222,1217,1211,1206,1204,1206,1214,1225,1239,
+1254,1267,1277,1284,1289,1291,1292,1291,1288,1282,1272,1256,1235,1210,1183,1157,1137,1125,1121,1127,1139,
+1154,1169,1181,1186,1183,1173,1156,1136,1112,1088,1064,1040,1018,998,980,963,949,934,919,902,881,
+855,824,789,755,722,695,674,659,648,638,626,607,582,552,517,483,451,423,399,376,352,
+323,287,244,194,138,77,13,-56,-132,-217,-311,-414,-522,-629,-729,-816,-885,-936,-969,-988,-999,
+-1008,-1018,-1034,-1057,-1086,-1121,-1161,-1203,-1246,-1289,-1330,-1367,-1400,-1428,-1451,-1473,-1495,-1520,-1551,-1588,-1633,
+-1682,-1734,-1786,-1834,-1877,-1913,-1945,-1974,-2001,-2029,-2058,-2090,-2122,-2155,-2185,-2211,-2232,-2249,-2262,-2275,-2289,
+-2307,-2332,-2363,-2401,-2442,-2484,-2526,-2565,-2600,-2632,-2664,-2695,-2728,-2762,-2797,-2832,-2866,-2899,-2930,-2962,-2996,
+-3034,-3078,-3127,-3180,-3233,-3283,-3327,-3361,-3385,-3400,-3408,-3412,-3416,-3424,-3440,-3464,-3498,-3540,-3587,-3638,-3689,
+-3737,-3781,-3821,-3857,-3890,-3922,-3954,-3987,-4019,-4051,-4081,-4107,-4131,-4151,-4169,-4186,-4202,-4218,-4233,-4246,-4255,
+-4259,-4259,-4253,-4244,-4234,-4223,-4214,-4207,-4200,-4193,-4183,-4170,-4154,-4132,-4108,-4080,-4052,-4023,-3994,-3968,-3943,
+-3921,-3902,-3887,-3876,-3868,-3863,-3860,-3858,-3854,-3849,-3842,-3833,-3824,-3815,-3808,-3803,-3800,-3800,-3800,-3801,-3801,
+-3800,-3797,-3792,-3784,-3772,-3758,-3740,-3718,-3691,-3660,-3624,-3585,-3544,-3502,-3462,-3425,-3395,-3373,-3360,-3355,-3357,
+-3363,-3369,-3372,-3370,-3362,-3349,-3332,-3315,-3300,-3288,-3279,-3271,-3261,-3246,-3224,-3192,-3153,-3108,-3061,-3015,-2971,
+-2932,-2898,-2866,-2835,-2804,-2771,-2734,-2696,-2654,-2611,-2566,-2518,-2469,-2416,-2360,-2300,-2237,-2172,-2105,-2037,-1969,
+-1901,-1834,-1767,-1701,-1634,-1567,-1500,-1433,-1366,-1299,-1233,-1165,-1095,-1020,-940,-856,-769,-683,-602,-532,-475,
+-432,-404,-386,-373,-360,-342,-317,-286,-248,-206,-163,-117,-65,-4,69,160,269,395,534,679,823,
+962,1090,1206,1309,1397,1472,1533,1581,1616,1640,1657,1673,1693,1722,1763,1814,1874,1938,1998,2053,2101,
+2142,2182,2226,2279,2344,2419,2500,2581,2654,2713,2754,2777,2783,2778,2767,2756,2749,2749,2759,2779,2811,
+2855,2913,2984,3069,3167,3275,3391,3510,3627,3739,3842,3936,4021,4098,4171,4242,4314,4388,4466,4546,4626,
+4704,4776,4841,4895,4938,4970,4990,5002,5005,5000,4989,4971,4943,4906,4858,4799,4732,4660,4590,4529,4483,
+4458,4457,4480,4524,4582,4649,4717,4781,4839,4892,4942,4994,5051,5116,5187,5260,5332,5395,5445,5479,5497,
+5500,5494,5482,5470,5461,5457,5458,5464,5474,5487,5505,5527,5552,5583,5617,5653,5691,5728,5764,5797,5829,
+5861,5893,5926,5962,6000,6040,6081,6124,6167,6209,6249,6288,6322,6353,6378,6398,6414,6427,6439,6452,6466,
+6482,6500,6519,6537,6554,6570,6584,6597,6611,6624,6637,6649,6659,6668,6674,6679,6683,6688,6694,6700,6707,
+6713,6716,6717,6714,6708,6699,6689,6677,6665,6652,6638,6624,6609,6595,6579,6564,6547,6528,6505,6479,6449,
+6418,6387,6358,6335,6317,6304,6295,6287,6278,6266,6249,6227,6200,6167,6129,6085,6036,5983,5927,5871,5820,
+5775,5738,5711,5690,5673,5654,5630,5599,5559,5513,5464,5416,5374,5338,5311,5291,5277,5265,5254,5243,5231,
+5218,5206,5196,5188,5183,5179,5177,5173,5168,5160,5147,5132,5112,5090,5066,5038,5008,4981,4950,4914,4873,
+4826,4774,4720,4666,4614,4564,4515,4468,4420,4373,4327,4286,4253,4232,4223,4227,4240,4257,4274,4285,4287,
+4279,4261,4238,4212,4185,4160,4138,4120,4104,4093,4085,4082,4080,4078,4073,4059,4033,3993,3938,3870,3794,
+3715,3639,3569,3509,3459,3416,3378,3342,3306,3267,3227,3185,3144,3105,3070,3041,3017,3000,2987,2977,2968,
+2957,2941,2918,2888,2850,2805,2755,2703,2649,2595,2540,2485,2427,2366,2303,2237,2172,2108,2048,1993,1946,
+1904,1869,1838,1812,1791,1774,1763,1759,1761,1768,1777,1787,1794,1797,1795,1789,1780,1771,1763,1758,1756,
+1756,1758,1761,1764,1768,1772,1775,1778,1778,1774,1764,1748,1726,1701,1674,1650,1631,1619,1614,1616,1621,
+1627,1632,1632,1629,1621,1610,1597,1584,1572,1562,1555,1551,1550,1550,1551,1549,1544,1535,1522,1505,1485,
+1465,1446,1430,1415,1403,1392,1380,1367,1352,1334,1314,1291,1267,1242,1216,1189,1162,1135,1108,1081,1054,
+1028,1002,976,951,926,903,882,863,849,839,833,831,833,835,837,837,832,821,804,781,753,
+723,693,664,638,616,598,583,569,556,540,522,499,470,437,399,357,313,268,224,182,143,
+107,75,46,22,3,-11,-22,-31,-41,-54,-74,-102,-140,-183,-226,-264,-288,-295,-282,-251,-210,
+-167,-132,-112,-113,-136,-179,-235,-299,-364,-425,-480,-528,-572,-611,-650,-689,-730,-774,-821,-870,-921,
+-972,-1021,-1065,-1103,-1133,-1155,-1169,-1178,-1185,-1192,-1202,-1216,-1235,-1257,-1281,-1305,-1328,-1349,-1366,-1382,-1396,
+-1411,-1427,-1444,-1464,-1487,-1511,-1537,-1564,-1592,-1620,-1647,-1674,-1701,-1729,-1757,-1787,-1818,-1850,-1884,-1917,-1949,
+-1979,-2005,-2026,-2041,-2050,-2053,-2052,-2047,-2040,-2032,-2026,-2023,-2022,-2023,-2027,-2031,-2036,-2040,-2045,-2049,-2055,
+-2063,-2075,-2090,-2108,-2127,-2145,-2161,-2172,-2177,-2176,-2171,-2163,-2155,-2149,-2148,-2154,-2166,-2185,-2210,-2239,-2269,
+-2299,-2327,-2351,-2371,-2387,-2400,-2410,-2419,-2426,-2431,-2436,-2439,-2440,-2439,-2437,-2434,-2429,-2423,-2416,-2407,-2398,
+-2388,-2379,-2373,-2371,-2375,-2386,-2405,-2430,-2461,-2495,-2530,-2566,-2599,-2630,-2656,-2678,-2693,-2702,-2705,-2702,-2695,
+-2686,-2676,-2668,-2664,-2664,-2666,-2670,-2674,-2679,-2682,-2686,-2691,-2699,-2710,-2727,-2747,-2768,-2790,-2808,-2822,-2829,
+-2829,-2822,-2811,-2795,-2776,-2757,-2736,-2716,-2695,-2673,-2650,-2625,-2601,-2576,-2554,-2535,-2520,-2510,-2505,-2503,-2503,
+-2503,-2501,-2497,-2489,-2476,-2460,-2439,-2415,-2388,-2359,-2327,-2294,-2261,-2228,-2195,-2164,-2135,-2108,-2083,-2061,-2041,
+-2023,-2006,-1990,-1974,-1957,-1941,-1925,-1912,-1902,-1898,-1900,-1909,-1922,-1938,-1954,-1966,-1972,-1971,-1964,-1951,-1935,
+-1916,-1898,-1879,-1861,-1844,-1827,-1812,-1798,-1787,-1780,-1776,-1775,-1776,-1778,-1778,-1776,-1771,-1764,-1755,-1746,-1736,
+-1725,-1713,-1700,-1687,-1672,-1657,-1643,-1631,-1620,-1610,-1599,-1586,-1568,-1544,-1512,-1472,-1425,-1370,-1310,-1245,-1178,
+-1109,-1041,-977,-917,-866,-825,-795,-776,-765,-759,-755,-747,-733,-709,-674,-629,-574,-513,-448,-380,-311,
+-244,-177,-114,-54,0,47,87,120,144,163,179,193,208,225,246,269,294,321,348,374,400,
+426,451,475,498,518,536,549,558,562,564,563,561,560,560,564,571,583,602,626,655,688,
+721,752,777,796,808,814,818,822,831,847,871,901,934,965,992,1011,1022,1023,1019,1011,1002,
+996,992,992,995,999,1002,1002,999,991,979,963,945,928,914,904,900,902,909,919,930,940,
+948,954,959,965,972,981,991,1003,1015,1026,1036,1045,1055,1065,1077,1090,1103,1116,1126,1134,1139,
+1143,1146,1150,1156,1163,1170,1175,1178,1178,1176,1171,1166,1163,1161,1160,1159,1156,1150,1141,1130,1118,
+1107,1099,1094,1091,1087,1083,1077,1069,1061,1054,1051,1050,1053,1055,1055,1049,1035,1015,990,962,935,
+911,890,873,857,841,825,809,794,782,774,769,765,760,750,736,717,695,673,656,645,639,
+636,631,620,600,571,535,497,464,439,426,424,429,436,440,439,431,419,406,396,391,392,
+399,409,418,426,431,433,435,438,444,452,462,472,479,483,483,479,474,470,467,466,468,
+470,472,471,467,460,451,443,438,437,441,450,463,477,492,503,510,513,512,509,504,500,
+498,497,499,501,504,506,508,510,513,518,526,538,552,569,588,606,623,637,649,659,667,
+674,682,690,701,714,729,747,766,785,805,824,844,863,882,902,920,937,952,962,969,970,
+968,963,958,954,954,957,965,976,988,1000,1010,1016,1019,1018,1017,1016,1017,1022,1033,1048,1067,
+1089,1110,1130,1146,1158,1166,1171,1173,1175,1177,1180,1185,1190,1196,1204,1212,1221,1234,1249,1267,1287,
+1308,1327,1342,1350,1350,1342,1328,1310,1293,1278,1269,1265,1266,1271,1277,1282,1285,1286,1285,1284,1284,
+1283,1282,1278,1269,1255,1235,1211,1185,1159,1139,1124,1116,1113,1115,1119,1121,1120,1116,1108,1097,1084,
+1069,1052,1034,1015,993,970,947,924,903,883,864,845,823,797,767,733,697,663,633,609,593,
+583,576,569,559,544,524,499,472,446,421,397,373,347,316,280,237,189,138,85,32,-23,
+-83,-150,-227,-313,-407,-504,-600,-688,-763,-824,-869,-901,-923,-941,-958,-978,-1002,-1032,-1068,-1108,-1151,
+-1197,-1243,-1289,-1332,-1372,-1409,-1444,-1476,-1509,-1543,-1580,-1619,-1659,-1701,-1743,-1784,-1823,-1862,-1899,-1936,-1973,
+-2010,-2048,-2085,-2123,-2159,-2193,-2224,-2252,-2275,-2295,-2312,-2326,-2341,-2358,-2380,-2408,-2443,-2482,-2525,-2568,-2610,
+-2648,-2683,-2715,-2745,-2774,-2803,-2831,-2860,-2888,-2917,-2945,-2976,-3011,-3051,-3097,-3147,-3199,-3251,-3298,-3338,-3369,
+-3391,-3404,-3411,-3416,-3422,-3433,-3452,-3479,-3515,-3560,-3611,-3666,-3721,-3774,-3823,-3866,-3904,-3938,-3971,-4003,-4035,
+-4069,-4102,-4134,-4164,-4190,-4213,-4234,-4254,-4272,-4290,-4307,-4320,-4328,-4330,-4325,-4314,-4300,-4284,-4270,-4259,-4250,
+-4244,-4238,-4229,-4217,-4199,-4177,-4150,-4122,-4093,-4066,-4041,-4018,-3998,-3980,-3964,-3949,-3938,-3929,-3923,-3919,-3916,
+-3914,-3912,-3908,-3903,-3896,-3890,-3884,-3879,-3876,-3875,-3874,-3873,-3871,-3867,-3861,-3853,-3842,-3830,-3815,-3799,-3779,
+-3757,-3731,-3703,-3672,-3639,-3605,-3573,-3543,-3517,-3496,-3479,-3467,-3459,-3452,-3445,-3437,-3426,-3412,-3396,-3380,-3365,
+-3352,-3341,-3332,-3322,-3309,-3291,-3268,-3238,-3204,-3168,-3130,-3094,-3060,-3027,-2995,-2963,-2930,-2894,-2855,-2815,-2773,
+-2730,-2686,-2640,-2592,-2540,-2485,-2426,-2363,-2297,-2229,-2157,-2084,-2009,-1932,-1854,-1775,-1697,-1620,-1545,-1475,-1410,
+-1348,-1290,-1234,-1176,-1114,-1044,-967,-880,-786,-689,-595,-508,-434,-375,-332,-304,-285,-271,-259,-245,-229,
+-211,-190,-167,-139,-101,-48,26,123,245,385,537,691,838,972,1088,1186,1267,1336,1393,1443,1486,
+1521,1550,1575,1597,1623,1656,1700,1754,1818,1886,1953,2013,2065,2107,2143,2178,2219,2269,2332,2405,2485,
+2566,2641,2705,2754,2786,2802,2807,2804,2798,2795,2799,2813,2841,2882,2938,3008,3090,3183,3284,3391,3500,
+3609,3716,3818,3915,4004,4088,4166,4242,4317,4392,4470,4550,4629,4707,4778,4841,4894,4935,4966,4988,5002,
+5010,5013,5008,4993,4966,4925,4870,4802,4725,4647,4576,4520,4486,4478,4496,4539,4600,4674,4751,4826,4896,
+4957,5012,5062,5112,5163,5216,5269,5321,5366,5402,5426,5437,5438,5431,5421,5412,5407,5409,5418,5432,5452,
+5473,5496,5521,5546,5573,5603,5635,5670,5706,5744,5781,5818,5854,5889,5924,5959,5994,6029,6064,6100,6137,
+6174,6213,6253,6292,6330,6364,6394,6418,6436,6449,6459,6467,6475,6484,6495,6509,6524,6540,6557,6574,6591,
+6608,6623,6636,6646,6653,6656,6656,6656,6659,6664,6674,6687,6701,6713,6721,6722,6715,6700,6681,6660,6638,
+6618,6599,6583,6568,6553,6538,6523,6507,6490,6472,6452,6429,6406,6381,6357,6335,6316,6302,6292,6284,6276,
+6267,6254,6237,6215,6188,6156,6120,6080,6036,5990,5941,5894,5849,5810,5776,5748,5724,5700,5673,5640,5601,
+5555,5505,5454,5405,5360,5322,5291,5267,5248,5232,5220,5210,5201,5194,5189,5185,5182,5180,5177,5172,5166,
+5155,5142,5124,5104,5081,5058,5033,5008,4978,4955,4929,4899,4863,4821,4774,4723,4671,4619,4569,4519,4468,
+4417,4366,4315,4271,4236,4215,4211,4223,4248,4279,4310,4335,4348,4349,4339,4319,4293,4265,4237,4211,4188,
+4166,4147,4131,4116,4102,4086,4065,4037,3999,3949,3890,3822,3750,3679,3610,3547,3491,3441,3395,3353,3313,
+3274,3236,3201,3167,3137,3109,3084,3062,3042,3025,3009,2995,2980,2964,2943,2916,2882,2840,2791,2736,2678,
+2618,2558,2498,2438,2376,2314,2249,2184,2119,2056,1998,1946,1901,1863,1832,1805,1783,1765,1752,1743,1741,
+1745,1754,1766,1778,1788,1794,1796,1792,1787,1780,1774,1771,1770,1770,1771,1772,1772,1772,1772,1773,1774,
+1774,1771,1763,1748,1727,1701,1674,1648,1626,1611,1603,1600,1601,1602,1602,1599,1593,1583,1571,1557,1544,
+1531,1520,1511,1504,1499,1495,1493,1490,1486,1480,1471,1461,1449,1436,1424,1413,1403,1394,1385,1375,1363,
+1348,1331,1312,1292,1271,1249,1228,1207,1187,1167,1147,1126,1104,1079,1052,1023,993,962,935,912,895,
+885,882,884,889,895,898,897,891,877,858,832,803,772,739,707,677,648,622,597,573,549,
+525,500,475,449,422,393,364,333,300,265,229,192,156,120,88,58,33,13,-1,-13,-24,
+-36,-53,-77,-111,-151,-196,-239,-273,-292,-291,-272,-238,-197,-158,-130,-121,-134,-168,-219,-281,-346,
+-409,-467,-518,-563,-605,-646,-689,-735,-784,-835,-887,-939,-989,-1034,-1074,-1107,-1134,-1153,-1168,-1178,-1187,
+-1195,-1205,-1217,-1232,-1249,-1269,-1291,-1314,-1338,-1363,-1388,-1412,-1435,-1457,-1478,-1499,-1520,-1542,-1565,-1589,-1614,
+-1640,-1665,-1689,-1713,-1738,-1764,-1791,-1822,-1854,-1886,-1919,-1949,-1977,-2001,-2022,-2039,-2054,-2066,-2075,-2081,-2083,
+-2083,-2079,-2075,-2072,-2071,-2072,-2077,-2085,-2093,-2100,-2105,-2108,-2110,-2112,-2117,-2125,-2139,-2156,-2176,-2196,-2213,
+-2225,-2231,-2230,-2226,-2219,-2214,-2213,-2218,-2229,-2247,-2271,-2299,-2328,-2356,-2382,-2405,-2425,-2441,-2454,-2466,-2477,
+-2487,-2495,-2501,-2504,-2504,-2501,-2496,-2488,-2480,-2472,-2464,-2457,-2449,-2440,-2432,-2425,-2421,-2420,-2425,-2437,-2455,
+-2478,-2506,-2537,-2571,-2604,-2637,-2668,-2696,-2720,-2738,-2750,-2756,-2758,-2756,-2753,-2750,-2750,-2752,-2756,-2761,-2766,
+-2770,-2774,-2779,-2785,-2795,-2808,-2824,-2842,-2861,-2878,-2891,-2900,-2904,-2902,-2897,-2888,-2877,-2864,-2850,-2834,-2818,
+-2799,-2780,-2759,-2737,-2715,-2694,-2675,-2659,-2647,-2638,-2632,-2628,-2624,-2621,-2616,-2608,-2598,-2585,-2568,-2547,-2523,
+-2495,-2464,-2431,-2396,-2361,-2326,-2293,-2261,-2231,-2203,-2177,-2151,-2127,-2105,-2084,-2065,-2047,-2030,-2013,-1997,-1982,
+-1971,-1964,-1964,-1971,-1984,-2002,-2020,-2036,-2046,-2050,-2046,-2035,-2019,-2000,-1980,-1959,-1938,-1916,-1895,-1873,-1853,
+-1836,-1821,-1811,-1804,-1799,-1794,-1789,-1781,-1770,-1757,-1742,-1727,-1711,-1696,-1681,-1666,-1649,-1632,-1614,-1597,-1581,
+-1566,-1554,-1544,-1533,-1521,-1505,-1484,-1458,-1425,-1388,-1345,-1299,-1250,-1200,-1150,-1101,-1055,-1015,-982,-958,-945,
+-940,-943,-948,-952,-949,-935,-908,-866,-810,-744,-670,-592,-513,-435,-360,-288,-220,-155,-93,-37,14,
+60,101,138,172,204,236,269,301,333,365,394,422,448,473,498,523,549,573,596,615,628,
+636,638,636,631,625,620,619,623,634,651,676,706,740,776,810,839,859,871,875,874,870,
+869,875,889,912,941,974,1006,1033,1053,1064,1067,1064,1057,1049,1042,1039,1038,1040,1043,1046,1046,
+1043,1036,1025,1011,995,979,965,955,949,949,952,960,969,979,991,1003,1015,1029,1042,1056,1069,
+1081,1092,1102,1112,1123,1135,1148,1162,1174,1184,1190,1193,1193,1193,1194,1197,1203,1212,1220,1227,1229,
+1227,1220,1210,1200,1191,1185,1181,1178,1174,1167,1157,1145,1133,1122,1114,1111,1111,1112,1113,1111,1105,
+1096,1084,1071,1059,1048,1037,1026,1012,995,975,953,932,913,898,887,878,870,860,849,835,821,
+808,797,790,785,780,774,764,750,732,714,696,681,667,653,636,614,584,549,509,472,440,
+418,407,407,412,418,421,418,408,394,379,368,363,365,374,386,398,409,415,419,421,424,
+428,435,443,452,459,464,465,464,461,459,460,463,469,477,485,490,491,488,481,472,464,
+460,461,469,482,499,517,532,542,547,547,542,536,530,527,525,526,528,529,528,527,525,
+523,524,528,535,546,559,574,589,603,616,628,639,650,661,672,684,697,711,727,745,764,
+785,807,830,853,877,901,923,943,961,973,981,983,981,975,968,962,959,962,969,981,994,
+1008,1020,1030,1036,1039,1043,1047,1055,1067,1083,1104,1126,1148,1168,1183,1192,1196,1195,1192,1189,1189,
+1195,1206,1224,1247,1272,1297,1321,1341,1359,1375,1391,1410,1432,1456,1480,1502,1516,1521,1514,1496,1470,
+1438,1406,1377,1354,1338,1326,1318,1311,1303,1294,1285,1276,1270,1266,1265,1264,1263,1258,1249,1235,1217,
+1197,1176,1157,1139,1124,1109,1095,1080,1064,1047,1030,1013,998,983,969,954,938,919,898,875,851,
+827,805,784,763,741,717,689,658,624,592,562,537,520,508,501,497,492,484,472,457,438,
+418,398,376,353,326,293,254,210,162,111,61,13,-34,-82,-134,-192,-258,-331,-409,-490,-569,
+-643,-708,-763,-809,-847,-880,-910,-940,-971,-1004,-1041,-1081,-1123,-1167,-1213,-1258,-1304,-1349,-1393,-1438,-1483,
+-1528,-1573,-1617,-1659,-1697,-1733,-1765,-1797,-1829,-1864,-1902,-1943,-1987,-2032,-2075,-2115,-2152,-2186,-2218,-2249,-2279,
+-2308,-2336,-2360,-2381,-2400,-2418,-2438,-2462,-2492,-2528,-2570,-2614,-2658,-2700,-2736,-2767,-2794,-2817,-2839,-2859,-2880,
+-2901,-2924,-2950,-2981,-3017,-3058,-3106,-3157,-3208,-3257,-3301,-3336,-3362,-3380,-3392,-3402,-3412,-3425,-3445,-3471,-3506,
+-3549,-3597,-3649,-3703,-3756,-3805,-3850,-3890,-3925,-3958,-3990,-4024,-4059,-4096,-4135,-4173,-4208,-4240,-4268,-4293,-4316,
+-4336,-4355,-4371,-4383,-4389,-4389,-4382,-4369,-4353,-4336,-4320,-4307,-4297,-4289,-4281,-4271,-4257,-4239,-4218,-4195,-4171,
+-4150,-4131,-4116,-4103,-4091,-4079,-4067,-4053,-4039,-4026,-4015,-4007,-4002,-4000,-3998,-3997,-3994,-3990,-3985,-3980,-3974,
+-3969,-3965,-3960,-3955,-3947,-3937,-3925,-3911,-3895,-3878,-3861,-3844,-3825,-3807,-3787,-3766,-3745,-3725,-3705,-3687,-3670,
+-3655,-3641,-3626,-3611,-3594,-3575,-3553,-3529,-3504,-3479,-3456,-3435,-3419,-3405,-3394,-3383,-3370,-3353,-3330,-3302,-3269,
+-3236,-3202,-3171,-3144,-3118,-3094,-3069,-3041,-3010,-2975,-2937,-2899,-2859,-2820,-2779,-2736,-2690,-2638,-2580,-2518,-2451,
+-2380,-2307,-2231,-2153,-2070,-1983,-1893,-1800,-1707,-1616,-1531,-1454,-1386,-1328,-1278,-1232,-1186,-1137,-1079,-1009,-927,
+-834,-733,-630,-531,-442,-368,-309,-266,-236,-216,-201,-189,-180,-172,-164,-155,-141,-115,-72,-5,90,
+212,356,514,674,825,958,1069,1156,1224,1277,1320,1359,1395,1429,1461,1491,1521,1552,1587,1630,1682,
+1743,1808,1874,1937,1992,2039,2079,2115,2153,2196,2249,2313,2387,2468,2551,2629,2698,2754,2794,2819,2831,
+2836,2838,2844,2861,2892,2938,3001,3076,3161,3251,3345,3438,3531,3624,3717,3809,3901,3991,4078,4163,4244,
+4323,4401,4478,4555,4631,4705,4772,4833,4885,4927,4962,4990,5011,5028,5037,5036,5021,4991,4942,4877,4800,
+4719,4643,4581,4543,4533,4552,4598,4665,4745,4831,4915,4992,5059,5117,5166,5208,5245,5279,5309,5334,5354,
+5367,5373,5372,5367,5359,5353,5350,5353,5363,5380,5403,5429,5457,5486,5514,5541,5567,5594,5623,5653,5687,
+5723,5761,5801,5841,5882,5921,5960,5996,6031,6063,6094,6123,6153,6184,6218,6254,6293,6332,6369,6402,6430,
+6450,6464,6472,6477,6481,6487,6496,6508,6522,6538,6556,6573,6589,6604,6616,6625,6631,6633,6632,6630,6629,
+6632,6640,6654,6672,6691,6707,6716,6714,6702,6680,6651,6619,6588,6561,6538,6520,6506,6493,6481,6468,6453,
+6437,6420,6400,6380,6359,6337,6317,6299,6284,6274,6266,6261,6256,6249,6238,6222,6201,6175,6144,6110,6073,
+6033,5994,5954,5916,5881,5848,5819,5790,5761,5728,5690,5647,5598,5546,5493,5441,5392,5349,5312,5281,5254,
+5233,5216,5204,5195,5189,5185,5182,5180,5176,5170,5162,5151,5138,5123,5105,5085,5064,5042,5021,4999,4978,
+4941,4920,4898,4873,4845,4811,4774,4732,4689,4644,4598,4550,4501,4450,4398,4347,4302,4268,4248,4245,4259,
+4285,4319,4353,4382,4401,4408,4404,4392,4373,4351,4327,4301,4273,4244,4214,4183,4152,4120,4087,4051,4011,
+3965,3914,3859,3801,3742,3684,3629,3575,3521,3468,3414,3360,3308,3260,3218,3184,3157,3137,3121,3108,3094,
+3079,3061,3041,3018,2992,2963,2930,2891,2847,2795,2738,2675,2609,2541,2472,2404,2337,2271,2207,2144,2083,
+2024,1970,1921,1880,1845,1817,1796,1779,1766,1755,1747,1742,1741,1743,1749,1758,1769,1779,1786,1791,1792,
+1791,1789,1788,1788,1788,1788,1787,1785,1782,1779,1777,1776,1776,1776,1773,1765,1750,1729,1702,1672,1643,
+1618,1599,1586,1578,1572,1567,1562,1553,1543,1532,1520,1509,1500,1491,1485,1479,1475,1471,1467,1462,1457,
+1450,1442,1432,1421,1410,1400,1392,1384,1378,1371,1363,1352,1339,1324,1308,1290,1272,1254,1237,1221,1206,
+1192,1179,1165,1151,1134,1113,1087,1056,1022,987,954,928,911,904,906,914,925,935,940,938,927,
+908,883,852,820,787,754,723,693,663,634,604,573,541,507,474,440,409,378,350,324,298,
+272,246,219,191,162,132,102,74,49,26,8,-7,-22,-37,-56,-82,-114,-152,-192,-229,-256,
+-268,-263,-243,-212,-179,-152,-140,-147,-175,-221,-279,-342,-405,-464,-516,-562,-605,-647,-690,-736,-785,
+-835,-887,-938,-986,-1031,-1070,-1102,-1128,-1148,-1162,-1173,-1182,-1193,-1204,-1218,-1234,-1252,-1270,-1289,-1310,-1333,
+-1359,-1386,-1416,-1446,-1476,-1504,-1530,-1554,-1578,-1601,-1626,-1651,-1676,-1701,-1725,-1748,-1769,-1791,-1815,-1840,-1868,
+-1897,-1927,-1954,-1978,-1998,-2016,-2032,-2048,-2064,-2082,-2099,-2115,-2127,-2133,-2134,-2130,-2124,-2119,-2117,-2119,-2126,
+-2135,-2144,-2152,-2155,-2156,-2155,-2154,-2158,-2167,-2181,-2201,-2224,-2245,-2263,-2275,-2281,-2282,-2279,-2276,-2275,-2278,
+-2288,-2304,-2325,-2349,-2376,-2402,-2425,-2446,-2463,-2477,-2490,-2502,-2514,-2527,-2539,-2550,-2557,-2561,-2560,-2554,-2547,
+-2538,-2530,-2524,-2518,-2514,-2510,-2505,-2499,-2493,-2488,-2486,-2487,-2493,-2505,-2522,-2543,-2569,-2597,-2629,-2661,-2694,
+-2726,-2754,-2778,-2798,-2812,-2822,-2829,-2833,-2836,-2838,-2840,-2842,-2843,-2845,-2847,-2852,-2861,-2872,-2886,-2901,-2915,
+-2927,-2934,-2938,-2938,-2935,-2932,-2929,-2926,-2924,-2921,-2917,-2911,-2901,-2888,-2872,-2854,-2836,-2817,-2800,-2785,-2773,
+-2763,-2756,-2750,-2744,-2738,-2731,-2722,-2711,-2698,-2682,-2662,-2640,-2613,-2584,-2551,-2516,-2480,-2444,-2410,-2378,-2348,
+-2320,-2293,-2266,-2239,-2214,-2189,-2166,-2145,-2126,-2109,-2093,-2077,-2063,-2051,-2043,-2040,-2044,-2054,-2069,-2086,-2101,
+-2112,-2117,-2115,-2107,-2095,-2079,-2061,-2041,-2019,-1995,-1967,-1938,-1909,-1881,-1857,-1837,-1822,-1811,-1801,-1791,-1778,
+-1762,-1743,-1722,-1700,-1679,-1659,-1640,-1623,-1605,-1588,-1570,-1552,-1533,-1516,-1500,-1485,-1470,-1456,-1439,-1420,-1398,
+-1373,-1346,-1317,-1288,-1258,-1229,-1200,-1173,-1146,-1123,-1104,-1092,-1087,-1090,-1098,-1110,-1120,-1123,-1114,-1091,-1052,
+-999,-934,-863,-789,-715,-645,-577,-511,-446,-380,-313,-245,-178,-114,-55,0,51,100,148,196,244,
+293,341,386,427,464,498,529,558,586,612,637,657,673,682,686,685,681,676,674,674,680,
+690,705,724,747,773,801,830,858,882,902,916,925,929,931,934,940,952,970,993,1018,1044,
+1068,1086,1099,1106,1107,1104,1100,1095,1090,1088,1087,1088,1089,1090,1089,1085,1078,1067,1054,1039,1024,
+1012,1002,997,997,1002,1012,1026,1043,1062,1082,1101,1118,1132,1143,1152,1159,1167,1175,1185,1197,1210,
+1221,1231,1237,1240,1240,1240,1239,1241,1245,1250,1254,1257,1256,1251,1242,1231,1221,1213,1207,1204,1202,
+1198,1191,1182,1169,1156,1145,1139,1138,1141,1148,1154,1156,1152,1141,1124,1101,1076,1050,1025,1002,981,
+961,944,928,916,907,902,899,897,894,889,881,869,855,841,829,820,813,807,800,791,779,
+763,745,727,709,691,674,654,631,603,570,536,503,475,454,442,438,438,439,437,430,418,
+402,384,369,360,356,359,366,376,385,393,398,401,402,404,407,411,418,425,433,441,448,
+454,460,466,473,480,488,497,504,509,511,509,505,500,497,497,501,511,525,540,555,566,
+572,573,569,563,558,554,553,554,557,560,561,561,560,559,559,562,566,573,580,589,598,
+607,616,626,638,651,665,681,696,713,730,749,768,790,813,836,861,886,911,935,958,978,
+993,1004,1009,1007,1000,991,981,973,971,974,982,995,1009,1023,1034,1042,1047,1052,1058,1067,1081,
+1101,1125,1151,1176,1197,1211,1216,1214,1206,1195,1186,1184,1192,1212,1244,1286,1334,1384,1429,1467,1496,
+1515,1527,1536,1546,1560,1578,1601,1624,1644,1655,1655,1643,1620,1589,1555,1521,1491,1467,1447,1429,1413,
+1394,1374,1351,1329,1309,1292,1280,1272,1266,1262,1258,1252,1243,1232,1219,1204,1186,1167,1144,1119,1091,
+1062,1031,1000,971,943,919,897,877,858,839,821,802,782,763,744,724,704,681,657,629,599,
+567,535,505,479,458,444,434,428,423,418,411,402,390,377,362,345,325,299,268,231,189,
+142,93,45,-2,-47,-91,-136,-183,-235,-292,-354,-419,-485,-551,-614,-673,-728,-779,-826,-870,-911,
+-952,-991,-1030,-1070,-1109,-1149,-1189,-1229,-1270,-1313,-1358,-1407,-1459,-1515,-1570,-1624,-1673,-1716,-1752,-1782,-1811,
+-1840,-1875,-1915,-1961,-2010,-2059,-2105,-2145,-2180,-2211,-2240,-2271,-2304,-2340,-2376,-2409,-2439,-2463,-2483,-2502,-2523,
+-2549,-2582,-2621,-2663,-2706,-2746,-2781,-2809,-2830,-2848,-2863,-2878,-2894,-2912,-2933,-2958,-2988,-3024,-3065,-3112,-3161,
+-3211,-3257,-3296,-3327,-3349,-3366,-3379,-3392,-3410,-3434,-3466,-3505,-3550,-3600,-3651,-3702,-3750,-3795,-3835,-3871,-3903,
+-3933,-3964,-3996,-4032,-4072,-4115,-4158,-4202,-4242,-4279,-4311,-4339,-4364,-4385,-4404,-4420,-4432,-4438,-4440,-4436,-4427,
+-4415,-4401,-4388,-4375,-4364,-4353,-4341,-4327,-4310,-4292,-4273,-4254,-4238,-4226,-4218,-4213,-4210,-4207,-4201,-4191,-4178,
+-4162,-4145,-4130,-4117,-4109,-4104,-4102,-4101,-4100,-4097,-4093,-4087,-4080,-4073,-4065,-4056,-4045,-4033,-4017,-3999,-3980,
+-3959,-3937,-3917,-3897,-3877,-3859,-3842,-3826,-3812,-3801,-3793,-3787,-3783,-3779,-3774,-3764,-3750,-3729,-3703,-3671,-3636,
+-3600,-3565,-3533,-3506,-3484,-3466,-3450,-3433,-3412,-3386,-3354,-3318,-3278,-3240,-3205,-3177,-3155,-3137,-3122,-3106,-3087,
+-3063,-3035,-3003,-2970,-2937,-2903,-2869,-2831,-2789,-2739,-2683,-2620,-2551,-2479,-2403,-2325,-2242,-2155,-2061,-1961,-1857,
+-1750,-1646,-1549,-1462,-1387,-1327,-1278,-1239,-1203,-1166,-1122,-1066,-997,-914,-819,-716,-612,-514,-426,-352,-294,
+-251,-220,-200,-186,-177,-172,-168,-164,-154,-132,-93,-28,63,184,328,487,649,803,937,1047,1131,
+1191,1234,1266,1294,1322,1351,1381,1413,1445,1479,1516,1557,1604,1657,1716,1779,1840,1899,1953,2001,2045,
+2087,2130,2178,2234,2299,2372,2451,2533,2613,2686,2747,2794,2825,2845,2858,2872,2892,2926,2977,3044,3124,
+3212,3304,3394,3482,3565,3647,3728,3812,3899,3989,4080,4170,4258,4342,4423,4502,4577,4650,4719,4784,4843,
+4896,4941,4981,5014,5041,5060,5068,5062,5038,4996,4936,4862,4783,4707,4645,4606,4596,4616,4665,4735,4820,
+4909,4995,5073,5139,5193,5236,5268,5293,5311,5322,5328,5327,5321,5312,5301,5291,5286,5286,5293,5307,5327,
+5352,5380,5410,5440,5469,5498,5526,5554,5582,5611,5642,5674,5710,5748,5788,5829,5872,5914,5956,5996,6034,
+6069,6101,6130,6157,6183,6210,6238,6269,6303,6339,6375,6409,6437,6460,6476,6487,6495,6501,6508,6518,6530,
+6544,6559,6573,6585,6594,6601,6605,6606,6606,6605,6602,6600,6600,6602,6609,6619,6633,6647,6658,6662,6657,
+6642,6618,6588,6555,6524,6497,6475,6458,6445,6434,6422,6409,6393,6374,6353,6332,6309,6288,6268,6251,6238,
+6230,6226,6225,6226,6227,6225,6219,6207,6189,6165,6137,6104,6070,6035,6001,5968,5939,5912,5887,5861,5832,
+5799,5758,5710,5656,5598,5539,5483,5431,5385,5345,5310,5279,5251,5228,5208,5193,5183,5177,5173,5169,5164,
+5156,5145,5131,5114,5097,5079,5061,5042,5023,5002,4982,4961,4941,4906,4883,4861,4838,4814,4789,4761,4731,
+4699,4664,4628,4589,4546,4501,4454,4408,4368,4338,4320,4318,4330,4353,4380,4408,4432,4447,4454,4454,4446,
+4433,4415,4392,4364,4331,4294,4254,4212,4171,4131,4092,4052,4010,3966,3919,3871,3822,3774,3726,3678,3627,
+3573,3514,3451,3387,3325,3270,3224,3189,3166,3151,3141,3132,3122,3107,3086,3058,3024,2984,2939,2889,2835,
+2776,2712,2644,2573,2498,2422,2346,2271,2199,2131,2069,2011,1960,1916,1877,1845,1819,1799,1786,1777,1772,
+1769,1767,1765,1764,1764,1764,1767,1772,1777,1784,1789,1794,1797,1800,1802,1803,1805,1806,1806,1804,1799,
+1792,1785,1778,1772,1769,1765,1761,1753,1739,1719,1693,1664,1635,1608,1585,1568,1554,1544,1534,1524,1513,
+1501,1488,1476,1466,1458,1452,1450,1449,1449,1450,1450,1447,1441,1431,1417,1401,1385,1369,1357,1348,1343,
+1338,1334,1327,1318,1305,1290,1273,1257,1241,1225,1211,1198,1186,1175,1166,1159,1151,1142,1128,1108,1081,
+1047,1010,973,942,919,908,908,917,930,943,951,951,943,927,905,879,850,819,788,757,725,
+691,656,620,582,543,503,464,425,388,352,319,288,260,235,212,191,171,151,131,110,88,
+65,42,20,0,-19,-39,-60,-85,-114,-146,-179,-208,-227,-235,-229,-211,-188,-167,-156,-161,-184,
+-226,-281,-343,-407,-468,-522,-572,-617,-661,-705,-751,-797,-843,-888,-931,-973,-1012,-1048,-1079,-1106,-1128,
+-1144,-1156,-1166,-1175,-1187,-1203,-1222,-1244,-1267,-1291,-1314,-1338,-1362,-1388,-1417,-1447,-1479,-1511,-1542,-1572,-1599,
+-1627,-1654,-1682,-1711,-1739,-1766,-1791,-1813,-1833,-1853,-1873,-1895,-1919,-1944,-1969,-1991,-2009,-2024,-2037,-2050,-2064,
+-2082,-2103,-2125,-2147,-2164,-2175,-2178,-2175,-2168,-2161,-2156,-2157,-2164,-2175,-2187,-2198,-2204,-2206,-2205,-2202,-2202,
+-2208,-2220,-2239,-2262,-2286,-2307,-2323,-2333,-2335,-2333,-2329,-2325,-2326,-2332,-2345,-2364,-2388,-2415,-2441,-2464,-2482,
+-2496,-2505,-2511,-2518,-2527,-2540,-2555,-2571,-2586,-2598,-2604,-2604,-2601,-2594,-2588,-2583,-2581,-2581,-2582,-2581,-2578,
+-2573,-2566,-2558,-2551,-2548,-2549,-2555,-2567,-2584,-2607,-2635,-2666,-2700,-2735,-2770,-2802,-2830,-2853,-2871,-2884,-2892,
+-2896,-2897,-2895,-2892,-2890,-2889,-2891,-2898,-2909,-2924,-2941,-2956,-2967,-2971,-2969,-2961,-2949,-2937,-2928,-2923,-2923,
+-2927,-2934,-2942,-2947,-2948,-2945,-2937,-2925,-2911,-2896,-2882,-2869,-2858,-2849,-2842,-2836,-2830,-2823,-2815,-2804,-2792,
+-2776,-2759,-2738,-2714,-2686,-2655,-2621,-2584,-2547,-2511,-2476,-2445,-2416,-2391,-2366,-2342,-2319,-2295,-2272,-2251,-2231,
+-2212,-2195,-2179,-2162,-2147,-2133,-2122,-2117,-2117,-2123,-2133,-2146,-2158,-2168,-2173,-2173,-2168,-2159,-2146,-2129,-2108,
+-2083,-2052,-2016,-1977,-1937,-1900,-1868,-1842,-1823,-1810,-1798,-1787,-1772,-1752,-1728,-1700,-1671,-1642,-1616,-1593,-1573,
+-1555,-1539,-1522,-1504,-1486,-1466,-1446,-1425,-1405,-1384,-1364,-1343,-1321,-1300,-1279,-1259,-1240,-1224,-1209,-1196,-1184,
+-1173,-1163,-1155,-1151,-1151,-1156,-1163,-1172,-1178,-1176,-1164,-1138,-1098,-1048,-990,-928,-869,-814,-764,-717,-671,
+-623,-571,-514,-451,-387,-323,-262,-204,-148,-93,-36,24,90,159,231,301,367,427,480,527,568,
+604,637,666,689,706,717,721,721,718,715,715,718,726,736,748,762,775,790,808,829,854,
+882,912,941,966,985,998,1005,1007,1009,1012,1020,1033,1050,1071,1092,1111,1127,1138,1142,1142,1139,
+1134,1130,1127,1127,1130,1134,1138,1142,1142,1138,1129,1116,1101,1084,1069,1057,1052,1053,1061,1076,1095,
+1117,1139,1159,1175,1187,1196,1201,1204,1208,1214,1221,1231,1242,1254,1264,1273,1278,1281,1281,1281,1280,
+1278,1277,1276,1272,1267,1260,1251,1242,1233,1226,1220,1217,1213,1209,1203,1194,1183,1173,1164,1159,1159,
+1164,1170,1175,1177,1171,1158,1136,1109,1077,1045,1015,989,968,952,941,933,928,925,923,922,921,
+917,911,903,892,880,868,856,846,837,829,820,809,796,780,763,745,728,713,700,687,673,
+657,637,613,588,562,539,520,506,497,489,482,472,459,442,423,403,385,371,364,363,368,
+376,386,395,401,404,403,401,398,397,401,408,420,436,452,467,480,489,495,499,502,505,
+509,513,518,521,523,525,527,531,537,547,559,571,581,588,590,589,585,582,579,580,583,
+587,592,597,600,602,603,604,606,609,612,616,620,625,631,638,648,661,677,694,713,733,
+754,775,797,821,845,870,896,921,945,968,989,1008,1024,1036,1043,1044,1039,1030,1018,1007,1000,
+997,1001,1011,1025,1040,1054,1065,1072,1076,1078,1082,1089,1101,1119,1140,1162,1183,1199,1209,1212,1210,
+1206,1203,1208,1224,1253,1295,1349,1410,1472,1528,1574,1605,1622,1626,1620,1612,1605,1604,1611,1626,1646,
+1667,1685,1696,1698,1692,1680,1663,1646,1630,1615,1602,1588,1570,1547,1519,1486,1449,1411,1374,1342,1315,
+1293,1276,1264,1255,1248,1242,1234,1225,1212,1196,1176,1152,1123,1092,1058,1022,986,951,917,885,856,
+831,809,790,773,757,742,725,707,686,662,635,606,574,541,509,479,452,430,412,397,386,
+376,367,357,348,337,327,315,302,286,266,241,211,175,136,94,51,9,-33,-75,-118,-164,
+-212,-263,-316,-372,-428,-485,-542,-598,-654,-710,-765,-819,-872,-923,-971,-1017,-1060,-1101,-1138,-1174,-1208,
+-1242,-1279,-1320,-1367,-1421,-1481,-1546,-1609,-1669,-1721,-1764,-1799,-1829,-1860,-1894,-1934,-1980,-2031,-2082,-2129,-2171,
+-2207,-2239,-2270,-2303,-2340,-2381,-2423,-2463,-2497,-2525,-2547,-2565,-2584,-2608,-2637,-2673,-2712,-2750,-2785,-2814,-2836,
+-2853,-2867,-2880,-2895,-2912,-2931,-2953,-2979,-3007,-3041,-3079,-3122,-3168,-3214,-3258,-3295,-3325,-3347,-3364,-3380,-3398,
+-3422,-3454,-3494,-3541,-3594,-3647,-3699,-3747,-3789,-3826,-3858,-3886,-3913,-3940,-3971,-4005,-4044,-4087,-4132,-4177,-4221,
+-4262,-4299,-4332,-4361,-4386,-4409,-4429,-4446,-4460,-4470,-4476,-4479,-4478,-4475,-4469,-4462,-4454,-4444,-4432,-4418,-4403,
+-4386,-4369,-4353,-4338,-4328,-4321,-4317,-4317,-4318,-4318,-4315,-4308,-4297,-4282,-4264,-4247,-4233,-4222,-4215,-4211,-4210,
+-4209,-4206,-4201,-4194,-4186,-4176,-4165,-4153,-4140,-4125,-4108,-4088,-4067,-4045,-4022,-4000,-3979,-3958,-3939,-3921,-3905,
+-3892,-3882,-3877,-3875,-3875,-3875,-3872,-3864,-3850,-3829,-3802,-3769,-3733,-3696,-3659,-3624,-3593,-3565,-3539,-3514,-3488,
+-3458,-3423,-3382,-3338,-3294,-3251,-3215,-3187,-3168,-3156,-3147,-3139,-3126,-3108,-3084,-3055,-3023,-2990,-2958,-2924,-2889,
+-2850,-2805,-2753,-2695,-2632,-2564,-2493,-2418,-2337,-2251,-2156,-2053,-1944,-1832,-1720,-1613,-1516,-1431,-1361,-1305,-1260,
+-1224,-1191,-1156,-1114,-1061,-996,-916,-826,-729,-630,-536,-452,-381,-325,-283,-254,-234,-220,-211,-202,-191,
+-174,-144,-97,-28,66,187,329,483,641,790,920,1025,1103,1157,1192,1216,1235,1254,1278,1305,1337,
+1371,1408,1447,1489,1534,1584,1639,1696,1756,1815,1873,1928,1979,2028,2075,2122,2171,2226,2287,2356,2433,
+2515,2597,2674,2741,2795,2836,2865,2888,2912,2944,2990,3051,3127,3213,3305,3399,3490,3577,3663,3747,3834,
+3923,4015,4109,4202,4294,4382,4465,4544,4618,4689,4755,4817,4874,4927,4973,5013,5046,5068,5078,5073,5051,
+5009,4951,4881,4805,4734,4676,4640,4631,4650,4697,4763,4842,4925,5004,5074,5132,5178,5212,5237,5254,5265,
+5270,5270,5265,5255,5244,5233,5226,5226,5233,5250,5275,5304,5337,5370,5401,5430,5457,5482,5508,5535,5563,
+5595,5628,5664,5703,5743,5784,5826,5868,5909,5950,5990,6028,6065,6099,6132,6163,6191,6217,6242,6266,6292,
+6320,6350,6381,6412,6441,6466,6487,6503,6516,6527,6537,6548,6560,6571,6580,6586,6588,6587,6583,6579,6574,
+6571,6568,6566,6563,6559,6554,6550,6547,6545,6545,6545,6543,6537,6526,6510,6489,6466,6443,6422,6403,6387,
+6372,6358,6342,6324,6303,6280,6256,6232,6211,6193,6180,6172,6169,6171,6176,6184,6193,6199,6202,6200,6191,
+6177,6156,6131,6102,6071,6040,6011,5984,5962,5941,5922,5901,5875,5841,5797,5745,5686,5624,5563,5507,5456,
+5412,5372,5336,5301,5267,5236,5208,5186,5170,5159,5152,5146,5139,5128,5114,5097,5078,5060,5042,5025,5008,
+4991,4972,4951,4928,4906,4892,4867,4842,4818,4794,4771,4748,4726,4703,4679,4654,4625,4594,4559,4522,4486,
+4455,4432,4420,4419,4428,4443,4460,4475,4485,4489,4487,4480,4468,4452,4432,4406,4375,4339,4299,4258,4219,
+4182,4148,4115,4082,4047,4007,3964,3917,3868,3818,3768,3717,3663,3606,3545,3481,3417,3356,3302,3258,3223,
+3198,3180,3165,3151,3135,3114,3086,3050,3007,2955,2897,2832,2762,2688,2612,2535,2457,2379,2300,2222,2146,
+2075,2011,1954,1907,1870,1841,1819,1802,1790,1782,1777,1775,1776,1779,1782,1787,1790,1793,1795,1797,1799,
+1801,1804,1806,1808,1809,1810,1812,1814,1817,1819,1819,1816,1810,1800,1788,1776,1764,1754,1746,1738,1729,
+1717,1700,1678,1652,1625,1598,1574,1553,1537,1525,1514,1505,1494,1482,1469,1454,1439,1426,1416,1410,1409,
+1412,1418,1425,1428,1425,1415,1398,1376,1353,1331,1314,1303,1297,1294,1291,1286,1278,1266,1251,1235,1220,
+1206,1193,1181,1169,1157,1147,1140,1136,1134,1132,1128,1116,1096,1066,1030,990,953,924,906,900,905,
+916,929,941,947,947,941,931,915,897,874,847,815,778,737,693,646,599,553,508,464,421,
+379,339,299,262,228,198,174,155,142,132,124,114,102,86,66,43,20,-4,-28,-52,-79,
+-107,-138,-168,-194,-212,-219,-215,-201,-183,-170,-167,-180,-212,-259,-318,-381,-445,-505,-561,-613,-664,
+-715,-765,-815,-861,-903,-940,-972,-1001,-1027,-1052,-1076,-1098,-1115,-1129,-1139,-1148,-1157,-1171,-1191,-1216,-1246,
+-1278,-1311,-1342,-1370,-1398,-1425,-1454,-1484,-1516,-1549,-1581,-1612,-1642,-1673,-1703,-1734,-1766,-1797,-1826,-1852,-1874,
+-1894,-1912,-1930,-1949,-1969,-1991,-2012,-2031,-2047,-2060,-2072,-2083,-2096,-2113,-2133,-2156,-2178,-2197,-2210,-2216,-2216,
+-2212,-2207,-2204,-2207,-2215,-2228,-2244,-2258,-2268,-2274,-2275,-2274,-2273,-2277,-2287,-2303,-2324,-2346,-2367,-2383,-2393,
+-2394,-2389,-2381,-2372,-2367,-2369,-2379,-2398,-2425,-2455,-2485,-2510,-2529,-2539,-2541,-2539,-2537,-2538,-2546,-2560,-2580,
+-2601,-2620,-2634,-2640,-2640,-2635,-2629,-2625,-2623,-2626,-2630,-2634,-2636,-2635,-2630,-2623,-2615,-2609,-2607,-2610,-2618,
+-2633,-2653,-2678,-2706,-2737,-2770,-2801,-2831,-2857,-2879,-2897,-2909,-2917,-2921,-2921,-2918,-2915,-2912,-2911,-2915,-2924,
+-2938,-2955,-2974,-2989,-2999,-3000,-2993,-2979,-2960,-2941,-2925,-2915,-2913,-2918,-2928,-2942,-2955,-2966,-2972,-2972,-2967,
+-2957,-2944,-2930,-2916,-2904,-2895,-2888,-2883,-2878,-2873,-2866,-2856,-2844,-2829,-2811,-2792,-2769,-2742,-2712,-2678,-2642,
+-2603,-2565,-2529,-2497,-2468,-2443,-2422,-2401,-2382,-2363,-2345,-2326,-2309,-2291,-2274,-2255,-2237,-2219,-2201,-2187,-2178,
+-2175,-2178,-2186,-2197,-2210,-2221,-2228,-2231,-2228,-2218,-2202,-2179,-2149,-2111,-2067,-2018,-1969,-1923,-1883,-1851,-1829,
+-1816,-1807,-1800,-1790,-1774,-1752,-1722,-1686,-1648,-1611,-1577,-1547,-1523,-1503,-1485,-1469,-1452,-1434,-1415,-1394,-1373,
+-1352,-1331,-1311,-1293,-1275,-1258,-1243,-1228,-1214,-1202,-1191,-1180,-1170,-1160,-1150,-1142,-1135,-1130,-1127,-1124,-1121,
+-1115,-1101,-1079,-1047,-1006,-959,-908,-859,-815,-777,-746,-719,-694,-666,-633,-595,-553,-507,-461,-415,-370,
+-325,-276,-221,-156,-81,2,92,184,273,356,430,496,553,603,648,686,718,743,759,768,771,
+770,768,768,771,777,786,795,804,812,820,830,845,867,896,932,970,1007,1037,1058,1068,1069,
+1064,1056,1051,1051,1059,1073,1093,1115,1135,1151,1162,1167,1167,1165,1161,1158,1158,1160,1165,1172,1178,
+1181,1180,1175,1165,1151,1135,1121,1110,1105,1108,1118,1135,1155,1177,1198,1215,1227,1234,1238,1240,1242,
+1246,1251,1259,1269,1280,1291,1300,1306,1310,1310,1308,1304,1299,1293,1286,1279,1272,1265,1256,1247,1237,
+1227,1217,1208,1201,1194,1188,1182,1177,1171,1167,1164,1162,1163,1165,1166,1165,1160,1150,1132,1109,1082,
+1053,1024,1000,981,967,959,955,953,952,950,947,942,936,929,921,911,902,891,880,869,859,
+849,839,829,817,804,789,772,756,741,728,719,712,705,698,687,671,650,625,598,572,550,
+534,522,515,509,501,489,473,453,431,411,396,388,388,395,407,420,431,436,434,427,417,
+407,401,402,412,429,450,472,490,502,507,508,506,504,504,507,514,521,529,536,542,547,
+553,561,570,580,590,598,603,605,606,606,607,609,614,619,625,630,634,637,639,641,643,
+647,650,655,659,665,672,682,694,710,728,748,770,792,815,839,863,889,915,941,967,991,
+1013,1032,1048,1061,1071,1077,1078,1074,1066,1056,1045,1036,1031,1032,1040,1053,1069,1087,1102,1113,1120,
+1123,1122,1121,1121,1124,1131,1142,1156,1171,1186,1199,1212,1226,1243,1266,1299,1342,1395,1455,1517,1574,
+1622,1654,1671,1670,1657,1636,1613,1592,1578,1573,1577,1589,1607,1627,1646,1663,1677,1688,1696,1702,1707,
+1711,1713,1713,1708,1696,1676,1648,1611,1568,1520,1471,1422,1378,1340,1309,1284,1266,1253,1243,1234,1224,
+1212,1198,1180,1159,1137,1112,1085,1056,1025,992,958,924,891,861,834,810,790,771,753,734,713,
+689,662,633,602,571,540,510,483,458,436,415,396,377,358,339,320,303,286,272,260,249,
+237,223,206,184,159,131,101,69,37,3,-32,-72,-115,-162,-213,-266,-319,-373,-426,-478,-531,
+-585,-642,-701,-762,-823,-884,-943,-1000,-1052,-1099,-1142,-1179,-1212,-1243,-1274,-1309,-1351,-1401,-1461,-1527,-1597,
+-1665,-1727,-1779,-1822,-1857,-1888,-1920,-1957,-1999,-2046,-2095,-2144,-2190,-2231,-2270,-2308,-2348,-2390,-2434,-2479,-2519,
+-2554,-2582,-2604,-2622,-2640,-2662,-2690,-2722,-2755,-2788,-2816,-2839,-2857,-2871,-2884,-2900,-2918,-2938,-2961,-2986,-3011,
+-3037,-3067,-3100,-3138,-3181,-3224,-3267,-3305,-3336,-3361,-3381,-3398,-3418,-3443,-3476,-3517,-3564,-3615,-3667,-3717,-3762,
+-3801,-3835,-3865,-3894,-3922,-3952,-3985,-4023,-4063,-4105,-4148,-4190,-4229,-4265,-4298,-4329,-4356,-4382,-4406,-4428,-4447,
+-4463,-4477,-4487,-4496,-4503,-4508,-4511,-4512,-4510,-4506,-4499,-4489,-4479,-4468,-4457,-4447,-4438,-4431,-4425,-4422,-4420,
+-4420,-4419,-4417,-4412,-4403,-4391,-4376,-4361,-4347,-4336,-4327,-4322,-4319,-4315,-4311,-4303,-4294,-4282,-4269,-4255,-4241,
+-4226,-4210,-4193,-4174,-4155,-4135,-4115,-4096,-4076,-4057,-4038,-4019,-4001,-3985,-3972,-3961,-3954,-3947,-3940,-3931,-3917,
+-3898,-3876,-3850,-3822,-3793,-3764,-3735,-3706,-3676,-3647,-3616,-3585,-3551,-3515,-3476,-3433,-3389,-3344,-3302,-3266,-3238,
+-3218,-3205,-3197,-3188,-3175,-3157,-3131,-3098,-3060,-3020,-2980,-2941,-2902,-2862,-2821,-2776,-2727,-2675,-2618,-2557,-2491,
+-2419,-2338,-2249,-2152,-2048,-1939,-1829,-1722,-1620,-1527,-1445,-1373,-1312,-1261,-1217,-1177,-1139,-1097,-1048,-989,-920,
+-841,-755,-667,-583,-506,-440,-386,-345,-313,-287,-264,-240,-212,-175,-128,-64,16,117,237,372,515,
+658,790,905,996,1062,1106,1133,1150,1164,1181,1203,1232,1266,1306,1348,1393,1439,1488,1538,1591,1645,
+1700,1755,1811,1866,1921,1973,2024,2072,2120,2167,2218,2275,2340,2414,2497,2583,2667,2744,2810,2861,2900,
+2931,2962,2998,3046,3108,3184,3273,3371,3473,3577,3679,3780,3879,3976,4071,4165,4256,4344,4429,4509,4585,
+4656,4723,4785,4844,4898,4948,4992,5028,5053,5063,5055,5028,4982,4920,4848,4775,4709,4659,4632,4630,4654,
+4699,4759,4827,4894,4957,5010,5052,5085,5109,5128,5143,5156,5166,5174,5179,5181,5182,5182,5184,5192,5206,
+5227,5256,5290,5326,5362,5395,5424,5450,5473,5496,5520,5548,5578,5613,5650,5691,5733,5777,5820,5864,5906,
+5946,5985,6021,6056,6091,6124,6157,6189,6219,6247,6272,6294,6315,6337,6360,6385,6412,6440,6466,6490,6511,
+6527,6541,6551,6560,6568,6572,6573,6571,6565,6556,6546,6538,6531,6528,6526,6523,6517,6506,6490,6470,6448,
+6429,6414,6404,6399,6397,6395,6392,6385,6374,6359,6342,6323,6303,6283,6262,6240,6216,6192,6168,6146,6128,
+6115,6108,6107,6113,6123,6136,6151,6164,6174,6181,6183,6180,6172,6159,6142,6121,6096,6070,6043,6017,5995,
+5976,5961,5946,5930,5908,5879,5840,5793,5739,5684,5629,5578,5532,5490,5449,5408,5365,5321,5279,5240,5207,
+5183,5166,5154,5145,5135,5121,5104,5083,5061,5041,5022,5005,4990,4974,4957,4938,4916,4892,4907,4884,4859,
+4832,4806,4780,4758,4738,4721,4705,4689,4672,4651,4626,4599,4572,4548,4529,4519,4516,4518,4523,4526,4525,
+4519,4507,4492,4474,4454,4434,4411,4386,4358,4328,4298,4268,4242,4219,4197,4175,4148,4114,4072,4022,3965,
+3905,3845,3785,3726,3668,3610,3552,3495,3441,3390,3345,3306,3271,3241,3213,3186,3159,3131,3101,3066,3026,
+2977,2919,2851,2775,2692,2607,2523,2441,2362,2287,2214,2144,2077,2014,1959,1912,1875,1849,1830,1818,1809,
+1802,1795,1790,1786,1785,1787,1792,1798,1806,1813,1819,1824,1826,1828,1827,1826,1823,1820,1817,1815,1815,
+1817,1820,1822,1822,1818,1810,1797,1781,1764,1749,1735,1724,1714,1702,1687,1669,1646,1620,1593,1567,1545,
+1528,1515,1507,1500,1493,1483,1469,1450,1427,1404,1384,1370,1365,1368,1378,1391,1402,1406,1400,1383,1359,
+1332,1305,1284,1270,1261,1257,1253,1246,1236,1223,1209,1195,1182,1172,1162,1153,1143,1132,1122,1115,1111,
+1112,1114,1115,1109,1094,1068,1032,992,953,920,898,888,888,896,908,920,930,937,940,940,937,
+929,916,894,863,824,777,724,668,612,558,505,457,410,366,322,281,241,204,172,147,130,
+120,117,117,118,116,108,95,75,51,25,-2,-31,-62,-96,-131,-166,-197,-221,-234,-234,-224,
+-208,-193,-188,-199,-226,-270,-326,-388,-452,-515,-575,-634,-694,-753,-811,-866,-914,-953,-984,-1007,-1025,
+-1041,-1058,-1075,-1092,-1107,-1119,-1129,-1137,-1149,-1166,-1191,-1223,-1261,-1302,-1342,-1379,-1411,-1441,-1469,-1498,-1530,
+-1563,-1597,-1632,-1665,-1697,-1727,-1757,-1787,-1818,-1848,-1877,-1903,-1927,-1948,-1966,-1984,-2001,-2019,-2038,-2056,-2074,
+-2089,-2103,-2115,-2127,-2139,-2154,-2172,-2191,-2212,-2231,-2247,-2257,-2263,-2264,-2264,-2264,-2268,-2277,-2290,-2307,-2324,
+-2339,-2350,-2357,-2360,-2362,-2365,-2372,-2384,-2399,-2417,-2435,-2449,-2456,-2456,-2450,-2438,-2425,-2416,-2413,-2420,-2437,
+-2464,-2496,-2529,-2557,-2577,-2585,-2583,-2574,-2563,-2556,-2557,-2568,-2587,-2610,-2633,-2650,-2660,-2661,-2656,-2650,-2644,
+-2643,-2647,-2654,-2663,-2671,-2675,-2676,-2674,-2670,-2668,-2670,-2676,-2687,-2703,-2723,-2746,-2772,-2797,-2822,-2845,-2866,
+-2883,-2896,-2907,-2914,-2919,-2923,-2925,-2926,-2927,-2928,-2931,-2937,-2947,-2960,-2975,-2991,-3005,-3015,-3018,-3014,-3002,
+-2986,-2968,-2951,-2938,-2932,-2932,-2938,-2949,-2963,-2975,-2984,-2988,-2985,-2976,-2963,-2948,-2932,-2920,-2911,-2906,-2903,
+-2902,-2899,-2894,-2885,-2873,-2858,-2841,-2822,-2802,-2778,-2751,-2720,-2686,-2649,-2611,-2575,-2542,-2512,-2488,-2466,-2448,
+-2431,-2415,-2399,-2383,-2367,-2350,-2333,-2314,-2294,-2274,-2254,-2238,-2226,-2220,-2221,-2228,-2240,-2254,-2267,-2277,-2279,
+-2273,-2257,-2229,-2190,-2141,-2085,-2026,-1968,-1916,-1875,-1846,-1830,-1824,-1826,-1829,-1829,-1821,-1803,-1774,-1735,-1690,
+-1641,-1594,-1549,-1510,-1477,-1451,-1428,-1409,-1392,-1376,-1359,-1342,-1326,-1310,-1297,-1285,-1275,-1265,-1256,-1246,-1234,
+-1220,-1205,-1187,-1168,-1149,-1128,-1108,-1088,-1068,-1050,-1033,-1015,-997,-976,-951,-921,-885,-845,-803,-760,-720,
+-684,-654,-629,-608,-589,-570,-550,-529,-505,-482,-458,-434,-409,-380,-345,-300,-242,-171,-87,6,105,
+204,299,385,463,532,593,648,697,740,776,805,826,838,844,847,848,850,853,858,864,869,
+873,878,885,896,914,940,973,1009,1046,1077,1099,1111,1111,1104,1092,1081,1075,1077,1086,1103,1124,
+1146,1165,1181,1191,1195,1196,1193,1190,1188,1187,1188,1189,1191,1191,1189,1184,1175,1164,1152,1142,1137,
+1138,1147,1163,1184,1208,1231,1250,1264,1272,1275,1275,1276,1279,1286,1295,1307,1318,1328,1335,1338,1337,
+1332,1324,1315,1305,1294,1283,1274,1265,1256,1248,1239,1229,1218,1205,1192,1179,1167,1158,1151,1147,1145,
+1146,1148,1151,1153,1154,1154,1150,1144,1133,1118,1099,1077,1053,1030,1010,994,983,977,975,975,976,
+976,973,968,961,953,945,937,929,920,909,898,884,871,857,844,832,821,809,796,781,764,
+747,730,714,701,690,678,665,647,625,599,571,545,524,511,506,508,513,518,518,512,498,
+480,461,444,432,429,432,441,453,463,468,466,458,445,431,421,416,420,432,451,471,490,
+504,512,513,511,508,506,508,514,522,531,540,548,555,561,569,578,588,598,608,616,622,
+627,631,636,641,647,652,658,661,664,666,668,671,675,681,688,697,706,716,728,742,758,
+777,797,819,841,863,885,907,930,954,979,1004,1028,1050,1069,1084,1095,1102,1105,1103,1098,1089,
+1079,1069,1061,1057,1059,1066,1079,1095,1114,1131,1146,1157,1163,1164,1162,1158,1153,1150,1150,1155,1165,
+1180,1200,1224,1252,1285,1324,1368,1420,1476,1534,1588,1633,1663,1674,1666,1642,1609,1575,1545,1527,1522,
+1530,1548,1570,1594,1614,1631,1644,1653,1662,1670,1680,1690,1701,1711,1720,1726,1727,1723,1712,1694,1667,
+1633,1592,1546,1498,1451,1408,1370,1339,1314,1294,1277,1261,1244,1226,1205,1183,1160,1138,1117,1095,1074,
+1051,1026,998,969,938,906,876,846,818,792,766,739,713,685,657,629,601,573,546,521,497,
+476,455,434,412,387,360,330,300,271,245,225,209,198,189,179,167,152,134,114,93,73,
+54,34,12,-14,-48,-89,-137,-190,-246,-302,-358,-413,-469,-527,-588,-653,-721,-791,-861,-930,-995,
+-1056,-1112,-1161,-1204,-1240,-1271,-1299,-1328,-1361,-1401,-1452,-1512,-1579,-1648,-1716,-1777,-1828,-1871,-1906,-1938,-1971,
+-2009,-2052,-2099,-2150,-2200,-2250,-2298,-2345,-2391,-2438,-2485,-2529,-2569,-2603,-2631,-2652,-2671,-2690,-2711,-2736,-2764,
+-2792,-2819,-2842,-2862,-2877,-2892,-2908,-2926,-2948,-2973,-2999,-3024,-3049,-3073,-3099,-3128,-3162,-3201,-3242,-3284,-3322,
+-3355,-3382,-3404,-3424,-3444,-3467,-3497,-3533,-3574,-3620,-3666,-3712,-3755,-3795,-3832,-3866,-3900,-3934,-3969,-4007,-4046,
+-4086,-4126,-4164,-4200,-4233,-4263,-4290,-4317,-4343,-4368,-4392,-4414,-4434,-4450,-4464,-4477,-4488,-4499,-4510,-4520,-4528,
+-4534,-4538,-4539,-4539,-4538,-4537,-4536,-4535,-4534,-4531,-4527,-4523,-4520,-4517,-4515,-4514,-4511,-4506,-4498,-4487,-4474,
+-4461,-4450,-4441,-4433,-4427,-4420,-4411,-4399,-4384,-4367,-4349,-4331,-4313,-4295,-4277,-4258,-4240,-4221,-4203,-4187,-4171,
+-4156,-4141,-4126,-4109,-4091,-4073,-4056,-4038,-4021,-4003,-3982,-3959,-3933,-3906,-3878,-3853,-3830,-3810,-3792,-3774,-3755,
+-3732,-3705,-3674,-3641,-3606,-3569,-3532,-3494,-3454,-3414,-3374,-3337,-3304,-3277,-3256,-3240,-3224,-3207,-3184,-3155,-3119,
+-3076,-3031,-2983,-2937,-2893,-2851,-2811,-2772,-2732,-2691,-2646,-2598,-2543,-2480,-2409,-2330,-2244,-2151,-2054,-1956,-1859,
+-1763,-1671,-1582,-1497,-1418,-1345,-1280,-1222,-1172,-1127,-1083,-1038,-987,-929,-864,-792,-718,-644,-576,-513,-458,
+-408,-361,-315,-265,-210,-148,-77,4,97,201,317,439,564,685,795,887,958,1008,1040,1059,1072,
+1085,1104,1131,1165,1207,1253,1302,1353,1405,1457,1510,1563,1614,1665,1715,1765,1815,1867,1920,1973,2024,
+2073,2118,2161,2207,2257,2318,2391,2475,2567,2661,2749,2826,2887,2934,2971,3003,3039,3087,3150,3232,3331,
+3444,3564,3686,3806,3919,4024,4119,4208,4290,4368,4444,4517,4587,4654,4718,4778,4834,4887,4936,4978,5010,
+5026,5023,4996,4947,4878,4799,4721,4654,4609,4593,4605,4643,4700,4764,4829,4885,4930,4962,4984,4999,5010,
+5021,5034,5049,5066,5084,5103,5121,5137,5152,5167,5183,5201,5224,5250,5280,5312,5345,5377,5408,5436,5462,
+5487,5513,5540,5571,5604,5640,5678,5719,5761,5805,5849,5894,5938,5979,6019,6055,6089,6122,6154,6186,6218,
+6249,6277,6303,6324,6344,6361,6380,6400,6422,6446,6471,6493,6513,6528,6539,6546,6550,6551,6549,6544,6536,
+6526,6515,6504,6496,6491,6489,6487,6483,6473,6456,6430,6399,6366,6336,6312,6299,6294,6297,6303,6308,6308,
+6302,6289,6270,6247,6223,6198,6174,6150,6127,6106,6087,6072,6062,6059,6063,6074,6091,6110,6129,6146,6158,
+6164,6165,6162,6156,6146,6134,6120,6103,6084,6062,6039,6016,5996,5979,5965,5953,5940,5923,5901,5871,5835,
+5794,5752,5710,5669,5631,5592,5551,5507,5458,5407,5357,5310,5270,5239,5216,5198,5183,5165,5144,5118,5089,
+5059,5031,5007,4989,4975,4963,4953,4941,4926,4907,4936,4920,4897,4870,4841,4814,4790,4773,4760,4752,4743,
+4733,4718,4697,4672,4645,4618,4596,4580,4569,4561,4554,4545,4532,4514,4493,4471,4450,4432,4415,4401,4386,
+4372,4357,4343,4329,4315,4301,4283,4259,4225,4180,4124,4059,3988,3916,3846,3779,3716,3658,3603,3552,3505,
+3462,3423,3387,3352,3316,3279,3240,3200,3159,3120,3081,3041,2997,2945,2882,2807,2721,2630,2538,2450,2370,
+2299,2237,2181,2128,2077,2028,1983,1944,1913,1890,1873,1861,1850,1839,1828,1817,1807,1801,1799,1801,1807,
+1816,1825,1833,1840,1844,1846,1845,1841,1835,1827,1820,1815,1812,1813,1817,1822,1826,1826,1822,1812,1797,
+1780,1762,1745,1730,1717,1705,1691,1673,1652,1627,1600,1573,1549,1531,1518,1510,1504,1498,1488,1472,1449,
+1420,1390,1363,1345,1337,1342,1355,1374,1390,1398,1395,1380,1356,1327,1298,1274,1256,1244,1234,1224,1212,
+1197,1180,1165,1152,1144,1138,1134,1130,1123,1115,1106,1099,1095,1096,1098,1099,1093,1078,1052,1017,977,
+938,906,884,873,871,877,885,894,901,907,911,914,915,912,902,885,857,819,773,719,661,
+601,542,485,432,382,336,293,253,217,184,155,132,115,106,103,106,110,113,111,103,89,
+68,42,14,-16,-51,-89,-130,-173,-213,-247,-269,-277,-270,-254,-235,-222,-222,-240,-276,-327,-388,
+-454,-520,-586,-652,-717,-782,-844,-901,-949,-986,-1013,-1030,-1043,-1054,-1067,-1082,-1098,-1113,-1126,-1138,-1151,
+-1167,-1191,-1222,-1262,-1306,-1352,-1394,-1431,-1463,-1492,-1519,-1549,-1582,-1619,-1658,-1696,-1732,-1764,-1793,-1819,-1844,
+-1869,-1895,-1922,-1949,-1974,-1998,-2020,-2039,-2056,-2071,-2086,-2101,-2115,-2128,-2141,-2154,-2166,-2179,-2193,-2209,-2227,
+-2247,-2267,-2286,-2302,-2314,-2321,-2325,-2326,-2329,-2335,-2347,-2363,-2383,-2403,-2422,-2437,-2447,-2453,-2457,-2461,-2467,
+-2476,-2488,-2501,-2513,-2520,-2522,-2517,-2507,-2494,-2482,-2475,-2477,-2488,-2509,-2537,-2566,-2592,-2610,-2616,-2611,-2598,
+-2582,-2569,-2565,-2571,-2587,-2608,-2631,-2650,-2661,-2665,-2664,-2660,-2658,-2660,-2667,-2679,-2691,-2703,-2712,-2717,-2720,
+-2721,-2724,-2729,-2739,-2753,-2770,-2789,-2810,-2831,-2851,-2868,-2883,-2894,-2902,-2907,-2910,-2913,-2917,-2922,-2929,-2936,
+-2945,-2953,-2961,-2968,-2975,-2983,-2992,-3002,-3011,-3020,-3026,-3028,-3027,-3021,-3011,-2999,-2987,-2977,-2971,-2970,-2973,
+-2980,-2988,-2993,-2995,-2990,-2979,-2964,-2948,-2933,-2921,-2914,-2912,-2913,-2914,-2913,-2908,-2898,-2885,-2870,-2853,-2835,
+-2817,-2797,-2774,-2747,-2716,-2683,-2649,-2615,-2584,-2557,-2532,-2510,-2491,-2472,-2455,-2438,-2422,-2407,-2392,-2377,-2360,
+-2343,-2324,-2305,-2288,-2275,-2266,-2264,-2267,-2275,-2285,-2293,-2295,-2289,-2272,-2240,-2195,-2138,-2073,-2005,-1942,-1890,
+-1854,-1835,-1835,-1848,-1869,-1891,-1905,-1907,-1894,-1865,-1821,-1767,-1707,-1644,-1584,-1527,-1477,-1434,-1398,-1368,-1344,
+-1324,-1308,-1294,-1282,-1273,-1266,-1261,-1258,-1255,-1253,-1248,-1240,-1228,-1211,-1189,-1163,-1134,-1103,-1070,-1037,-1004,
+-971,-939,-907,-876,-845,-813,-780,-745,-710,-673,-636,-600,-565,-532,-501,-472,-446,-423,-402,-385,-369,
+-357,-346,-336,-327,-316,-301,-279,-247,-203,-145,-73,10,102,197,291,379,459,531,594,651,703,
+752,797,838,872,899,919,932,939,943,946,949,952,955,958,961,966,974,986,1004,1027,1053,
+1081,1105,1124,1135,1137,1132,1123,1113,1106,1106,1112,1126,1145,1167,1189,1209,1224,1234,1239,1240,1237,
+1232,1226,1221,1215,1211,1206,1201,1195,1188,1180,1172,1166,1164,1169,1181,1200,1224,1250,1275,1294,1307,
+1314,1315,1315,1315,1319,1326,1337,1349,1360,1366,1367,1362,1352,1338,1322,1306,1291,1276,1264,1253,1243,
+1235,1227,1219,1211,1202,1191,1179,1167,1156,1146,1139,1135,1134,1135,1138,1141,1144,1146,1146,1142,1136,
+1125,1111,1094,1074,1054,1035,1018,1006,998,995,994,996,997,997,996,993,990,987,985,982,977,
+970,958,941,920,897,875,855,838,826,815,803,789,770,745,717,687,657,628,601,575,549,
+523,498,475,459,450,451,461,478,497,513,523,525,519,508,494,480,469,463,461,462,465,
+468,469,467,463,458,451,446,443,445,451,461,474,488,500,509,515,517,518,519,521,525,
+532,539,547,555,563,571,580,590,600,611,621,630,637,644,650,657,664,671,677,683,687,
+690,693,696,702,709,719,731,744,757,772,787,804,823,844,865,887,908,928,947,965,984,
+1004,1025,1046,1067,1087,1103,1116,1124,1126,1124,1117,1108,1096,1086,1079,1076,1079,1088,1101,1117,1134,
+1149,1162,1171,1177,1180,1181,1180,1178,1176,1177,1182,1193,1211,1236,1267,1302,1339,1376,1414,1452,1490,
+1525,1556,1577,1585,1576,1551,1513,1470,1431,1406,1403,1423,1465,1522,1583,1639,1682,1709,1720,1718,1708,
+1695,1683,1673,1665,1661,1659,1659,1661,1666,1672,1678,1681,1679,1668,1648,1620,1584,1544,1503,1464,1429,
+1399,1372,1347,1322,1296,1268,1239,1209,1181,1155,1131,1109,1087,1066,1043,1018,991,962,932,901,868,
+835,802,770,738,709,681,655,631,607,583,558,535,512,490,469,447,424,397,366,330,293,
+256,223,197,179,167,159,152,142,128,111,92,74,60,50,43,36,24,5,-23,-63,-111,
+-167,-227,-288,-352,-417,-485,-556,-631,-708,-786,-864,-939,-1010,-1075,-1135,-1188,-1234,-1272,-1303,-1328,-1349,
+-1370,-1395,-1429,-1474,-1530,-1595,-1663,-1730,-1792,-1846,-1892,-1932,-1970,-2009,-2052,-2100,-2152,-2206,-2261,-2314,-2367,
+-2418,-2467,-2515,-2560,-2602,-2638,-2668,-2693,-2714,-2734,-2754,-2776,-2798,-2822,-2844,-2864,-2882,-2899,-2917,-2936,-2958,
+-2983,-3010,-3036,-3061,-3085,-3109,-3134,-3161,-3193,-3229,-3268,-3306,-3342,-3374,-3401,-3425,-3446,-3468,-3492,-3520,-3553,
+-3589,-3629,-3671,-3713,-3755,-3797,-3837,-3877,-3916,-3955,-3994,-4033,-4072,-4111,-4148,-4182,-4213,-4241,-4266,-4290,-4312,
+-4335,-4357,-4379,-4399,-4418,-4434,-4449,-4463,-4477,-4492,-4508,-4524,-4539,-4553,-4564,-4574,-4582,-4590,-4597,-4604,-4610,
+-4614,-4615,-4614,-4611,-4608,-4606,-4606,-4606,-4606,-4604,-4599,-4590,-4580,-4568,-4557,-4548,-4539,-4531,-4521,-4507,-4490,
+-4469,-4446,-4422,-4399,-4376,-4354,-4332,-4310,-4288,-4267,-4248,-4232,-4218,-4208,-4198,-4187,-4174,-4159,-4141,-4121,-4098,
+-4072,-4044,-4012,-3977,-3941,-3905,-3872,-3844,-3823,-3807,-3795,-3783,-3769,-3749,-3724,-3693,-3660,-3626,-3591,-3558,-3524,
+-3489,-3451,-3411,-3369,-3327,-3289,-3254,-3225,-3200,-3176,-3151,-3123,-3090,-3053,-3010,-2966,-2920,-2875,-2833,-2793,-2756,
+-2721,-2688,-2653,-2615,-2572,-2521,-2462,-2396,-2322,-2243,-2161,-2078,-1996,-1914,-1833,-1750,-1665,-1579,-1494,-1411,-1333,
+-1263,-1202,-1149,-1102,-1056,-1009,-959,-902,-841,-777,-710,-643,-575,-506,-435,-360,-281,-197,-109,-17,77,
+175,276,382,489,597,699,790,866,922,960,981,993,1002,1015,1036,1067,1108,1155,1207,1260,1314,
+1368,1423,1478,1532,1586,1637,1686,1732,1779,1828,1879,1932,1985,2036,2082,2123,2160,2198,2243,2298,2369,
+2455,2551,2651,2746,2830,2898,2950,2990,3026,3066,3119,3190,3283,3395,3520,3651,3780,3899,4006,4099,4180,
+4253,4323,4392,4461,4531,4599,4666,4729,4789,4846,4899,4945,4978,4991,4980,4941,4875,4792,4703,4625,4570,
+4551,4568,4619,4693,4776,4853,4915,4957,4978,4983,4980,4976,4975,4981,4994,5013,5035,5059,5084,5109,5132,
+5156,5178,5201,5224,5248,5273,5299,5327,5355,5384,5413,5443,5473,5503,5534,5567,5601,5636,5673,5711,5750,
+5790,5833,5877,5922,5968,6012,6053,6091,6126,6159,6189,6220,6250,6280,6308,6335,6358,6379,6397,6414,6431,
+6450,6469,6488,6505,6519,6528,6534,6536,6534,6531,6525,6517,6507,6496,6485,6474,6466,6461,6458,6455,6449,
+6438,6419,6393,6362,6330,6301,6279,6267,6263,6265,6269,6270,6266,6254,6236,6213,6189,6165,6143,6124,6106,
+6090,6076,6062,6052,6047,6047,6055,6069,6087,6106,6123,6135,6141,6140,6136,6128,6120,6111,6102,6092,6080,
+6066,6048,6029,6010,5992,5976,5962,5950,5938,5923,5904,5880,5853,5824,5794,5764,5734,5703,5669,5631,5587,
+5539,5488,5437,5389,5347,5312,5281,5254,5226,5196,5161,5122,5081,5041,5006,4978,4960,4950,4947,4948,4948,
+4945,4936,4964,4952,4931,4903,4872,4844,4822,4808,4800,4796,4792,4783,4767,4743,4712,4678,4644,4613,4588,
+4569,4553,4539,4524,4508,4490,4473,4458,4448,4442,4440,4441,4444,4445,4443,4438,4429,4414,4392,4360,4317,
+4263,4198,4125,4048,3971,3897,3828,3765,3707,3654,3606,3561,3520,3483,3450,3418,3386,3350,3309,3263,3214,
+3165,3117,3070,3023,2972,2912,2841,2757,2664,2567,2474,2390,2320,2265,2222,2187,2154,2121,2085,2048,2011,
+1978,1949,1926,1908,1892,1877,1862,1847,1835,1825,1819,1817,1820,1825,1832,1838,1845,1849,1852,1852,1849,
+1844,1837,1830,1824,1821,1821,1825,1830,1835,1838,1836,1828,1816,1799,1781,1764,1748,1733,1720,1707,1692,
+1674,1652,1629,1604,1580,1560,1543,1531,1520,1509,1494,1473,1447,1417,1386,1361,1345,1340,1348,1365,1384,
+1401,1408,1404,1389,1364,1336,1308,1283,1263,1246,1229,1210,1190,1168,1147,1131,1121,1118,1118,1120,1119,
+1116,1109,1100,1094,1090,1090,1091,1090,1082,1064,1036,1000,961,924,895,875,865,863,865,868,870,
+870,868,866,863,858,851,840,821,795,761,720,673,622,568,513,457,402,350,302,259,222,
+191,163,139,118,100,86,77,73,73,75,74,70,59,43,22,-2,-30,-62,-99,-140,-186,
+-231,-272,-302,-317,-315,-299,-275,-254,-245,-253,-282,-330,-392,-462,-534,-607,-677,-744,-809,-869,-923,
+-968,-1002,-1026,-1041,-1051,-1061,-1073,-1088,-1105,-1122,-1139,-1157,-1177,-1202,-1235,-1275,-1322,-1372,-1419,-1461,-1496,
+-1525,-1549,-1575,-1604,-1639,-1678,-1720,-1761,-1798,-1830,-1857,-1879,-1899,-1920,-1943,-1968,-1996,-2024,-2052,-2076,-2097,
+-2113,-2126,-2135,-2143,-2150,-2160,-2170,-2183,-2196,-2211,-2227,-2244,-2263,-2285,-2308,-2331,-2352,-2369,-2381,-2386,-2388,
+-2389,-2392,-2401,-2417,-2439,-2465,-2490,-2513,-2529,-2540,-2546,-2549,-2552,-2557,-2565,-2575,-2585,-2594,-2598,-2598,-2592,
+-2583,-2572,-2562,-2558,-2561,-2571,-2588,-2607,-2625,-2636,-2638,-2631,-2615,-2597,-2582,-2574,-2575,-2586,-2603,-2623,-2642,
+-2655,-2664,-2668,-2672,-2678,-2688,-2702,-2718,-2734,-2749,-2760,-2767,-2772,-2776,-2780,-2788,-2797,-2810,-2825,-2840,-2855,
+-2870,-2882,-2893,-2901,-2907,-2910,-2912,-2914,-2917,-2922,-2931,-2942,-2956,-2971,-2985,-2997,-3006,-3011,-3014,-3015,-3017,
+-3020,-3025,-3033,-3040,-3047,-3050,-3049,-3043,-3033,-3022,-3011,-3003,-3000,-2999,-3001,-3002,-2999,-2992,-2979,-2964,-2948,
+-2934,-2924,-2919,-2919,-2920,-2921,-2918,-2912,-2902,-2889,-2875,-2862,-2848,-2834,-2817,-2796,-2772,-2744,-2714,-2683,-2653,
+-2625,-2599,-2575,-2552,-2529,-2506,-2484,-2465,-2447,-2432,-2420,-2409,-2398,-2386,-2373,-2359,-2344,-2331,-2320,-2312,-2307,
+-2303,-2299,-2291,-2277,-2253,-2217,-2169,-2110,-2043,-1976,-1915,-1868,-1841,-1838,-1857,-1893,-1938,-1983,-2017,-2032,-2024,
+-1993,-1941,-1874,-1798,-1718,-1640,-1567,-1500,-1441,-1390,-1347,-1312,-1283,-1261,-1244,-1231,-1222,-1216,-1212,-1210,-1209,
+-1207,-1204,-1198,-1187,-1170,-1147,-1119,-1087,-1051,-1012,-973,-933,-893,-854,-814,-775,-737,-698,-659,-621,-583,
+-546,-510,-476,-443,-411,-379,-347,-315,-285,-258,-234,-214,-199,-188,-180,-174,-167,-159,-149,-133,-111,
+-79,-36,20,90,170,256,344,427,503,569,626,675,721,765,809,853,896,934,967,992,1010,
+1023,1031,1036,1041,1045,1050,1054,1059,1064,1071,1080,1091,1104,1120,1135,1148,1158,1163,1163,1159,1153,
+1148,1146,1150,1159,1175,1196,1218,1241,1261,1278,1288,1294,1294,1291,1284,1277,1270,1264,1260,1257,1255,
+1251,1247,1241,1234,1230,1230,1236,1250,1269,1293,1317,1337,1352,1361,1364,1363,1362,1362,1364,1369,1374,
+1377,1376,1370,1359,1344,1327,1309,1292,1276,1262,1250,1240,1231,1225,1220,1217,1214,1211,1208,1202,1195,
+1187,1177,1166,1157,1148,1141,1137,1135,1135,1137,1138,1138,1135,1129,1118,1103,1085,1066,1047,1030,1018,
+1010,1006,1006,1009,1013,1018,1022,1027,1032,1037,1043,1047,1047,1041,1027,1004,973,939,904,873,848,
+830,815,802,785,760,728,687,642,594,548,505,467,433,406,385,373,372,382,403,432,463,
+491,512,523,524,517,506,495,486,480,476,472,467,460,454,448,446,448,453,461,468,474,
+479,482,485,489,495,503,512,522,530,536,541,545,549,553,557,563,570,577,586,595,604,
+614,623,631,638,643,648,654,660,668,677,686,695,703,711,718,727,737,748,761,776,790,
+805,820,837,854,874,895,917,938,958,975,991,1006,1021,1036,1053,1071,1089,1106,1121,1133,1140,
+1142,1138,1131,1122,1112,1105,1103,1106,1115,1128,1144,1158,1169,1176,1179,1179,1177,1177,1178,1181,1187,
+1196,1211,1231,1258,1292,1332,1374,1414,1448,1472,1486,1489,1484,1471,1452,1427,1395,1355,1311,1268,1234,
+1219,1230,1272,1344,1438,1541,1641,1724,1782,1814,1820,1807,1781,1749,1715,1683,1653,1627,1607,1595,1593,
+1602,1623,1651,1682,1709,1727,1731,1720,1695,1659,1618,1575,1533,1493,1455,1419,1383,1347,1312,1277,1244,
+1213,1186,1161,1137,1113,1087,1061,1033,1004,975,945,915,883,850,816,783,752,724,699,677,657,
+636,612,586,559,530,503,478,454,430,403,371,335,296,256,221,192,173,161,154,148,138,
+124,104,83,62,47,38,34,33,30,21,2,-28,-71,-122,-180,-242,-309,-379,-453,-532,-614,
+-699,-785,-869,-948,-1022,-1090,-1151,-1206,-1253,-1292,-1323,-1344,-1358,-1368,-1379,-1397,-1426,-1469,-1526,-1593,-1665,
+-1737,-1804,-1864,-1917,-1965,-2011,-2058,-2108,-2160,-2214,-2268,-2321,-2373,-2424,-2473,-2523,-2571,-2616,-2658,-2695,-2725,
+-2751,-2772,-2791,-2810,-2828,-2847,-2866,-2885,-2904,-2924,-2945,-2968,-2992,-3017,-3043,-3069,-3093,-3118,-3142,-3169,-3198,
+-3229,-3262,-3297,-3330,-3360,-3388,-3414,-3438,-3462,-3488,-3516,-3547,-3580,-3615,-3652,-3691,-3731,-3773,-3815,-3858,-3901,
+-3942,-3983,-4022,-4060,-4097,-4133,-4167,-4198,-4226,-4251,-4273,-4293,-4311,-4329,-4347,-4366,-4385,-4404,-4422,-4441,-4461,
+-4481,-4503,-4525,-4548,-4569,-4588,-4605,-4620,-4633,-4645,-4656,-4666,-4674,-4679,-4681,-4681,-4679,-4677,-4677,-4678,-4681,
+-4684,-4684,-4681,-4675,-4667,-4657,-4648,-4639,-4631,-4622,-4609,-4592,-4570,-4544,-4517,-4489,-4462,-4437,-4412,-4388,-4363,
+-4337,-4313,-4291,-4274,-4260,-4250,-4243,-4234,-4224,-4209,-4190,-4167,-4140,-4110,-4077,-4041,-4002,-3963,-3925,-3890,-3861,
+-3837,-3819,-3803,-3787,-3768,-3743,-3713,-3679,-3643,-3607,-3573,-3540,-3508,-3473,-3435,-3391,-3343,-3293,-3244,-3197,-3156,
+-3121,-3090,-3063,-3037,-3010,-2980,-2947,-2911,-2872,-2832,-2790,-2750,-2713,-2678,-2648,-2620,-2593,-2563,-2530,-2488,-2439,
+-2381,-2317,-2248,-2179,-2110,-2042,-1975,-1906,-1835,-1758,-1677,-1592,-1507,-1425,-1348,-1279,-1217,-1161,-1108,-1055,-1001,
+-944,-882,-816,-745,-668,-584,-493,-395,-291,-185,-79,22,120,214,306,399,494,591,686,773,847,
+902,937,953,958,960,966,984,1014,1056,1106,1159,1214,1267,1320,1375,1431,1490,1550,1609,1664,1716,
+1765,1814,1863,1915,1968,2021,2070,2113,2149,2181,2214,2253,2305,2372,2454,2548,2648,2744,2831,2903,2960,
+3007,3049,3096,3155,3232,3328,3439,3560,3681,3796,3900,3991,4071,4146,4218,4292,4369,4447,4524,4599,4669,
+4737,4801,4861,4914,4953,4971,4959,4916,4845,4755,4664,4589,4547,4546,4588,4664,4759,4853,4933,4987,5014,
+5017,5006,4990,4979,4976,4984,5000,5022,5045,5069,5092,5115,5138,5162,5186,5211,5237,5262,5287,5313,5340,
+5368,5398,5428,5460,5492,5524,5558,5593,5629,5667,5706,5746,5786,5827,5869,5912,5956,6001,6044,6085,6124,
+6158,6189,6218,6246,6274,6303,6331,6359,6385,6409,6430,6449,6466,6481,6495,6508,6518,6526,6530,6531,6529,
+6525,6519,6512,6503,6492,6480,6468,6457,6447,6440,6434,6428,6421,6410,6395,6376,6354,6332,6312,6297,6286,
+6279,6273,6266,6256,6240,6220,6196,6172,6150,6132,6118,6107,6098,6089,6079,6068,6058,6051,6049,6053,6062,
+6075,6088,6099,6105,6105,6100,6093,6085,6078,6073,6068,6063,6055,6045,6031,6015,5999,5985,5972,5960,5948,
+5933,5915,5894,5870,5845,5820,5797,5774,5750,5725,5694,5659,5619,5574,5528,5481,5436,5392,5350,5310,5268,
+5225,5179,5131,5083,5036,4995,4961,4938,4926,4925,4934,4946,4959,4966,4964,4991,4975,4947,4914,4879,4849,
+4827,4814,4808,4805,4799,4787,4765,4735,4699,4661,4624,4593,4568,4549,4534,4522,4511,4500,4491,4484,4483,
+4487,4497,4510,4525,4537,4545,4544,4534,4513,4480,4435,4378,4311,4235,4155,4074,3996,3924,3860,3803,3752,
+3704,3658,3614,3571,3531,3495,3463,3433,3401,3367,3327,3281,3231,3178,3124,3069,3012,2949,2878,2796,2704,
+2608,2512,2424,2350,2294,2255,2228,2208,2189,2165,2134,2097,2057,2017,1981,1951,1926,1907,1892,1880,1868,
+1858,1849,1841,1835,1832,1830,1831,1834,1839,1843,1848,1851,1853,1852,1850,1846,1843,1842,1842,1844,1847,
+1849,1849,1846,1838,1826,1811,1794,1778,1762,1749,1738,1728,1718,1706,1692,1675,1656,1635,1614,1594,1574,
+1555,1535,1512,1485,1456,1425,1397,1376,1364,1363,1372,1387,1403,1414,1416,1409,1392,1370,1347,1324,1303,
+1284,1264,1241,1215,1188,1161,1140,1126,1121,1122,1127,1131,1130,1125,1115,1104,1095,1091,1090,1091,1090,
+1081,1063,1035,1000,963,929,902,884,874,870,868,865,860,852,843,833,823,811,796,776,753,
+725,693,660,624,586,544,499,449,395,342,291,245,208,177,151,127,104,81,59,39,24,
+14,9,5,1,-6,-18,-34,-54,-76,-100,-129,-164,-203,-246,-288,-320,-339,-339,-322,-295,-268,
+-250,-252,-276,-324,-389,-464,-543,-621,-694,-761,-824,-880,-930,-971,-1003,-1025,-1040,-1050,-1059,-1070,-1084,
+-1101,-1120,-1142,-1166,-1195,-1230,-1273,-1324,-1380,-1436,-1488,-1531,-1565,-1591,-1613,-1636,-1662,-1694,-1731,-1772,-1812,
+-1848,-1879,-1905,-1926,-1945,-1965,-1988,-2014,-2044,-2076,-2106,-2134,-2155,-2171,-2180,-2184,-2185,-2187,-2192,-2200,-2213,
+-2229,-2248,-2268,-2289,-2312,-2337,-2363,-2389,-2413,-2432,-2445,-2452,-2453,-2454,-2456,-2464,-2480,-2503,-2530,-2559,-2584,
+-2604,-2618,-2627,-2632,-2636,-2641,-2649,-2658,-2669,-2678,-2685,-2688,-2687,-2681,-2672,-2662,-2654,-2650,-2650,-2655,-2663,
+-2670,-2674,-2671,-2662,-2648,-2632,-2618,-2609,-2609,-2616,-2628,-2643,-2657,-2668,-2678,-2686,-2696,-2709,-2725,-2745,-2766,
+-2786,-2803,-2816,-2825,-2831,-2836,-2841,-2847,-2855,-2864,-2874,-2883,-2891,-2897,-2902,-2906,-2909,-2911,-2914,-2917,-2923,
+-2930,-2941,-2955,-2972,-2991,-3010,-3027,-3041,-3051,-3056,-3057,-3055,-3052,-3051,-3053,-3059,-3066,-3074,-3080,-3081,-3078,
+-3068,-3056,-3042,-3030,-3022,-3017,-3014,-3011,-3005,-2996,-2984,-2969,-2955,-2943,-2935,-2931,-2929,-2927,-2923,-2918,-2910,
+-2902,-2894,-2888,-2882,-2876,-2868,-2855,-2835,-2810,-2781,-2749,-2718,-2688,-2659,-2632,-2606,-2579,-2552,-2525,-2500,-2478,
+-2460,-2446,-2437,-2431,-2425,-2419,-2411,-2403,-2392,-2381,-2369,-2356,-2342,-2325,-2304,-2278,-2244,-2202,-2151,-2093,-2030,
+-1969,-1915,-1876,-1858,-1865,-1896,-1947,-2010,-2073,-2125,-2154,-2156,-2127,-2070,-1991,-1899,-1802,-1705,-1615,-1534,-1463,
+-1402,-1350,-1307,-1272,-1243,-1220,-1202,-1187,-1175,-1165,-1157,-1149,-1142,-1134,-1124,-1110,-1092,-1069,-1041,-1009,-974,
+-936,-897,-857,-817,-777,-738,-699,-660,-621,-581,-540,-498,-455,-413,-372,-334,-298,-264,-233,-202,-173,
+-146,-120,-98,-78,-63,-50,-39,-28,-17,-5,7,24,45,73,110,159,220,291,370,449,525,
+593,649,694,732,765,798,833,871,912,952,989,1021,1048,1069,1086,1099,1111,1122,1132,1140,1147,
+1152,1156,1158,1161,1164,1170,1177,1185,1193,1199,1203,1204,1202,1199,1197,1198,1204,1215,1231,1251,1272,
+1293,1313,1328,1340,1347,1350,1349,1347,1345,1344,1345,1348,1351,1353,1353,1348,1340,1330,1320,1315,1316,
+1326,1342,1362,1384,1402,1414,1420,1419,1414,1407,1399,1390,1381,1372,1361,1349,1335,1320,1306,1292,1279,
+1267,1257,1249,1243,1240,1240,1242,1247,1253,1257,1259,1256,1249,1236,1220,1200,1179,1159,1142,1129,1121,
+1118,1118,1121,1123,1123,1118,1108,1093,1075,1056,1037,1022,1011,1006,1006,1011,1020,1030,1042,1053,1064,
+1075,1085,1094,1101,1103,1097,1081,1055,1019,977,932,890,854,825,801,779,754,722,682,633,578,
+521,466,416,374,339,314,301,300,314,343,383,429,475,511,533,539,531,514,495,479,470,
+468,469,469,465,457,447,437,433,436,446,461,477,490,499,503,504,505,509,516,527,540,
+552,563,571,576,580,582,584,587,592,597,603,610,617,624,630,635,639,642,644,648,653,
+661,671,684,699,714,729,745,760,775,790,805,819,833,847,861,876,893,912,933,954,974,
+993,1009,1023,1035,1047,1059,1073,1088,1104,1119,1133,1145,1153,1157,1158,1155,1150,1146,1144,1146,1153,
+1163,1175,1187,1195,1197,1195,1188,1181,1174,1173,1176,1186,1202,1225,1253,1288,1330,1377,1428,1475,1514,
+1539,1545,1530,1496,1447,1389,1327,1263,1202,1146,1098,1064,1049,1062,1106,1183,1286,1406,1530,1644,1737,
+1802,1839,1850,1843,1822,1792,1758,1719,1679,1639,1606,1583,1577,1591,1623,1669,1720,1769,1805,1823,1822,
+1802,1767,1724,1677,1630,1583,1536,1490,1443,1395,1349,1307,1269,1238,1212,1189,1167,1145,1119,1091,1061,
+1031,1000,970,940,909,877,845,813,782,755,732,711,692,671,647,619,587,554,522,492,465,
+439,411,380,344,305,265,229,200,180,168,161,155,146,131,111,88,65,45,31,22,16,
+8,-4,-24,-54,-92,-137,-187,-241,-298,-360,-428,-503,-584,-671,-759,-848,-932,-1011,-1084,-1150,-1208,
+-1259,-1301,-1333,-1355,-1368,-1374,-1380,-1391,-1414,-1450,-1503,-1569,-1643,-1720,-1795,-1863,-1924,-1978,-2029,-2078,-2127,
+-2177,-2228,-2278,-2328,-2376,-2425,-2474,-2524,-2575,-2625,-2672,-2714,-2750,-2779,-2802,-2822,-2839,-2856,-2873,-2892,-2912,
+-2933,-2955,-2978,-3002,-3026,-3050,-3074,-3099,-3124,-3149,-3176,-3204,-3235,-3266,-3296,-3326,-3353,-3377,-3400,-3423,-3446,
+-3472,-3501,-3532,-3565,-3600,-3635,-3672,-3709,-3749,-3791,-3834,-3879,-3924,-3967,-4008,-4046,-4082,-4115,-4146,-4176,-4204,
+-4229,-4252,-4271,-4288,-4303,-4318,-4334,-4352,-4373,-4395,-4420,-4445,-4472,-4500,-4528,-4555,-4582,-4606,-4629,-4649,-4667,
+-4683,-4698,-4712,-4724,-4732,-4737,-4738,-4737,-4734,-4732,-4732,-4735,-4739,-4743,-4746,-4745,-4742,-4735,-4728,-4720,-4712,
+-4703,-4691,-4676,-4655,-4629,-4600,-4570,-4541,-4514,-4489,-4466,-4443,-4419,-4394,-4370,-4347,-4329,-4314,-4303,-4294,-4284,
+-4271,-4254,-4232,-4205,-4176,-4144,-4110,-4076,-4040,-4005,-3971,-3938,-3909,-3882,-3858,-3833,-3806,-3775,-3740,-3701,-3659,
+-3618,-3579,-3542,-3507,-3473,-3437,-3397,-3352,-3302,-3250,-3197,-3146,-3098,-3054,-3014,-2978,-2945,-2915,-2885,-2855,-2824,
+-2789,-2752,-2711,-2669,-2627,-2590,-2559,-2535,-2519,-2506,-2494,-2478,-2452,-2417,-2370,-2315,-2255,-2194,-2134,-2077,-2022,
+-1967,-1908,-1844,-1774,-1698,-1618,-1537,-1458,-1381,-1308,-1237,-1168,-1099,-1029,-958,-884,-805,-720,-627,-525,-415,
+-300,-184,-73,29,121,205,285,366,454,550,651,749,835,901,942,958,956,947,941,947,970,
+1008,1058,1112,1168,1221,1272,1325,1382,1444,1510,1578,1645,1707,1764,1816,1866,1917,1969,2023,2076,2125,
+2168,2204,2235,2266,2301,2347,2407,2481,2569,2664,2760,2850,2927,2991,3044,3090,3138,3194,3263,3347,3443,
+3547,3652,3753,3849,3940,4028,4115,4204,4295,4384,4470,4550,4625,4695,4762,4827,4885,4930,4953,4947,4908,
+4839,4753,4666,4599,4567,4578,4631,4714,4810,4900,4971,5013,5027,5021,5005,4989,4982,4985,4999,5018,5041,
+5062,5082,5100,5119,5139,5162,5187,5213,5241,5268,5296,5326,5356,5388,5420,5452,5484,5515,5546,5578,5613,
+5650,5691,5734,5779,5824,5868,5911,5953,5994,6034,6074,6112,6147,6180,6210,6239,6266,6293,6320,6348,6376,
+6403,6429,6451,6470,6486,6498,6508,6515,6519,6522,6522,6521,6518,6513,6507,6499,6490,6479,6467,6455,6443,
+6433,6423,6415,6407,6399,6390,6379,6366,6353,6339,6326,6314,6303,6290,6277,6260,6240,6217,6192,6168,6146,
+6127,6113,6104,6097,6090,6082,6072,6060,6049,6040,6035,6036,6043,6053,6062,6069,6071,6068,6062,6054,6048,
+6043,6041,6039,6035,6028,6017,6004,5990,5979,5970,5963,5955,5944,5928,5906,5879,5849,5821,5795,5773,5752,
+5731,5707,5678,5644,5606,5564,5522,5479,5435,5389,5340,5287,5231,5173,5117,5064,5016,4976,4946,4925,4916,
+4918,4930,4948,4968,4985,4994,4991,5017,4989,4950,4906,4863,4827,4802,4787,4778,4771,4761,4742,4716,4684,
+4649,4617,4591,4571,4559,4551,4546,4541,4535,4528,4524,4523,4528,4540,4557,4577,4596,4610,4615,4607,4583,
+4544,4490,4422,4343,4258,4171,4087,4009,3940,3880,3830,3785,3743,3701,3658,3614,3571,3529,3491,3457,3426,
+3396,3363,3326,3283,3236,3183,3126,3066,3000,2927,2846,2758,2664,2570,2482,2404,2342,2296,2264,2241,2223,
+2203,2176,2141,2100,2055,2011,1970,1937,1913,1896,1887,1881,1877,1873,1866,1858,1850,1841,1834,1831,1830,
+1834,1839,1845,1850,1853,1855,1854,1853,1851,1850,1850,1850,1850,1848,1845,1840,1832,1822,1809,1796,1783,
+1770,1759,1750,1743,1737,1731,1723,1713,1699,1682,1663,1642,1620,1597,1572,1544,1514,1483,1451,1422,1399,
+1385,1380,1383,1390,1396,1398,1394,1384,1370,1355,1341,1330,1318,1305,1286,1262,1233,1202,1175,1155,1146,
+1146,1152,1158,1161,1157,1145,1129,1112,1100,1093,1092,1093,1092,1085,1068,1043,1012,979,950,926,909,
+898,891,883,875,864,852,839,826,811,795,775,751,722,691,661,632,606,580,551,517,475,
+426,371,316,266,223,188,159,133,106,76,44,13,-14,-36,-51,-61,-69,-78,-90,-104,-119,
+-136,-153,-173,-197,-228,-264,-301,-332,-349,-349,-331,-300,-266,-242,-238,-259,-306,-373,-452,-535,-614,
+-687,-753,-813,-867,-916,-958,-991,-1015,-1032,-1043,-1052,-1062,-1075,-1092,-1113,-1139,-1169,-1206,-1251,-1304,-1364,
+-1427,-1491,-1548,-1595,-1631,-1658,-1678,-1697,-1718,-1744,-1774,-1808,-1843,-1876,-1905,-1931,-1954,-1976,-1998,-2024,-2053,
+-2086,-2120,-2155,-2185,-2209,-2226,-2234,-2236,-2235,-2234,-2236,-2244,-2259,-2279,-2302,-2328,-2355,-2382,-2408,-2435,-2459,
+-2481,-2497,-2508,-2513,-2515,-2516,-2520,-2530,-2547,-2569,-2595,-2622,-2646,-2665,-2680,-2690,-2699,-2707,-2716,-2726,-2736,
+-2746,-2754,-2761,-2764,-2765,-2762,-2755,-2747,-2738,-2729,-2723,-2719,-2717,-2716,-2714,-2710,-2704,-2695,-2687,-2682,-2682,
+-2686,-2695,-2706,-2716,-2723,-2727,-2730,-2733,-2740,-2752,-2769,-2791,-2815,-2837,-2857,-2872,-2882,-2888,-2893,-2897,-2901,
+-2906,-2911,-2916,-2920,-2923,-2924,-2924,-2924,-2924,-2925,-2929,-2937,-2949,-2965,-2984,-3005,-3027,-3049,-3069,-3086,-3101,
+-3111,-3117,-3119,-3119,-3117,-3115,-3114,-3115,-3118,-3122,-3124,-3123,-3117,-3106,-3092,-3076,-3062,-3049,-3039,-3031,-3023,
+-3015,-3004,-2992,-2979,-2968,-2959,-2953,-2948,-2943,-2937,-2929,-2921,-2913,-2908,-2906,-2908,-2911,-2913,-2910,-2899,-2879,
+-2853,-2821,-2786,-2752,-2719,-2687,-2656,-2624,-2593,-2562,-2532,-2507,-2486,-2471,-2461,-2454,-2450,-2446,-2441,-2436,-2430,
+-2423,-2415,-2404,-2389,-2369,-2344,-2312,-2274,-2228,-2178,-2122,-2066,-2011,-1963,-1928,-1910,-1914,-1942,-1989,-2050,-2115,
+-2172,-2211,-2222,-2202,-2151,-2074,-1977,-1871,-1763,-1660,-1567,-1486,-1418,-1361,-1314,-1276,-1246,-1220,-1198,-1177,-1158,
+-1138,-1119,-1101,-1083,-1066,-1048,-1030,-1010,-987,-961,-932,-900,-867,-831,-795,-758,-721,-684,-648,-612,-576,
+-540,-502,-462,-417,-370,-321,-272,-226,-183,-145,-112,-83,-57,-33,-11,9,27,43,58,73,87,
+102,119,137,160,187,221,264,316,378,447,518,588,651,705,749,783,810,835,859,885,913,
+944,975,1006,1035,1062,1087,1111,1132,1153,1171,1187,1201,1211,1219,1223,1224,1224,1223,1223,1225,1228,
+1233,1239,1245,1249,1252,1254,1256,1258,1263,1270,1280,1293,1308,1324,1340,1357,1372,1386,1397,1405,1411,
+1415,1418,1421,1426,1431,1436,1438,1436,1429,1417,1403,1391,1384,1385,1395,1412,1433,1452,1467,1474,1472,
+1463,1447,1428,1406,1384,1362,1342,1324,1308,1295,1284,1274,1267,1261,1258,1258,1262,1270,1282,1297,1311,
+1323,1329,1327,1316,1296,1269,1238,1204,1172,1144,1122,1107,1100,1098,1100,1102,1103,1101,1093,1081,1066,
+1049,1034,1021,1013,1010,1013,1021,1033,1048,1063,1078,1090,1100,1108,1114,1118,1121,1121,1115,1102,1079,
+1046,1002,953,902,854,810,772,736,700,659,612,559,501,444,390,342,301,270,248,238,242,
+264,302,355,417,479,529,561,571,559,533,502,475,458,451,453,457,459,456,448,438,430,
+428,434,445,458,471,482,489,495,502,512,525,541,559,575,589,598,604,608,611,613,616,
+618,621,623,625,628,632,636,641,645,647,650,653,657,664,675,691,709,730,752,774,795,
+815,832,848,862,875,887,900,913,929,947,966,986,1006,1024,1039,1052,1063,1074,1085,1096,1109,
+1121,1134,1146,1157,1166,1174,1179,1183,1186,1188,1191,1195,1201,1208,1215,1221,1223,1220,1212,1202,1192,
+1186,1185,1192,1208,1230,1260,1295,1336,1382,1430,1478,1522,1555,1572,1567,1541,1493,1428,1352,1270,1189,
+1112,1045,992,959,951,972,1025,1108,1215,1334,1455,1566,1660,1732,1783,1817,1836,1843,1839,1824,1797,
+1759,1715,1672,1639,1624,1631,1660,1706,1759,1809,1846,1866,1866,1850,1822,1788,1752,1716,1679,1639,1593,
+1541,1483,1422,1363,1311,1267,1233,1208,1188,1169,1149,1126,1100,1071,1041,1010,978,946,912,877,841,
+807,775,747,723,701,679,656,630,601,572,542,514,486,459,430,396,359,319,280,244,215,
+193,180,170,161,149,133,112,89,65,44,25,8,-7,-27,-52,-83,-120,-159,-200,-240,-280,
+-321,-366,-418,-480,-553,-635,-723,-814,-903,-988,-1067,-1139,-1203,-1259,-1305,-1341,-1368,-1386,-1399,-1411,-1428,
+-1456,-1497,-1551,-1617,-1690,-1764,-1835,-1900,-1957,-2008,-2056,-2102,-2148,-2196,-2245,-2293,-2342,-2390,-2439,-2489,-2540,
+-2592,-2642,-2690,-2732,-2769,-2799,-2824,-2845,-2865,-2884,-2904,-2925,-2947,-2969,-2992,-3015,-3037,-3060,-3083,-3107,-3131,
+-3156,-3183,-3211,-3240,-3269,-3298,-3326,-3351,-3373,-3393,-3411,-3430,-3451,-3475,-3503,-3533,-3566,-3601,-3636,-3673,-3712,
+-3754,-3798,-3844,-3892,-3939,-3983,-4024,-4061,-4094,-4124,-4151,-4176,-4200,-4221,-4241,-4259,-4275,-4291,-4307,-4325,-4345,
+-4369,-4397,-4427,-4458,-4490,-4521,-4551,-4579,-4605,-4629,-4652,-4674,-4695,-4716,-4736,-4755,-4771,-4783,-4790,-4793,-4792,
+-4789,-4786,-4786,-4788,-4793,-4799,-4803,-4805,-4804,-4799,-4791,-4781,-4769,-4755,-4738,-4717,-4691,-4662,-4631,-4601,-4572,
+-4547,-4525,-4505,-4486,-4466,-4446,-4426,-4408,-4391,-4377,-4364,-4352,-4338,-4321,-4300,-4274,-4246,-4215,-4184,-4152,-4120,
+-4088,-4057,-4026,-3996,-3967,-3938,-3908,-3875,-3839,-3798,-3753,-3707,-3660,-3616,-3575,-3536,-3500,-3465,-3427,-3387,-3343,
+-3297,-3250,-3201,-3152,-3102,-3052,-3001,-2950,-2902,-2857,-2815,-2778,-2742,-2707,-2669,-2627,-2582,-2535,-2493,-2458,-2435,
+-2425,-2425,-2433,-2440,-2441,-2430,-2404,-2365,-2316,-2261,-2206,-2153,-2105,-2060,-2016,-1970,-1918,-1859,-1793,-1721,-1644,
+-1563,-1478,-1391,-1302,-1210,-1118,-1025,-933,-840,-745,-646,-540,-429,-314,-200,-93,3,87,161,231,306,
+392,492,603,717,820,900,951,970,963,944,926,920,934,968,1017,1074,1132,1187,1238,1289,1343,
+1403,1470,1542,1615,1685,1750,1809,1863,1915,1968,2023,2080,2136,2189,2235,2274,2306,2335,2366,2405,2457,
+2526,2609,2703,2801,2894,2974,3039,3089,3130,3169,3213,3271,3343,3429,3526,3630,3736,3842,3947,4051,4153,
+4252,4345,4429,4505,4575,4641,4705,4770,4830,4878,4907,4906,4874,4815,4741,4669,4616,4598,4619,4676,4755,
+4841,4916,4970,4998,5004,4996,4985,4978,4980,4992,5011,5033,5054,5073,5090,5107,5126,5147,5171,5196,5223,
+5250,5278,5306,5337,5369,5403,5437,5471,5503,5534,5565,5597,5633,5672,5716,5764,5813,5861,5907,5951,5991,
+6029,6065,6100,6134,6168,6201,6232,6262,6291,6319,6347,6374,6400,6424,6447,6466,6482,6495,6503,6508,6510,
+6510,6509,6507,6504,6500,6495,6488,6479,6469,6458,6447,6437,6428,6419,6411,6403,6394,6383,6371,6359,6346,
+6334,6322,6309,6296,6282,6267,6249,6231,6211,6190,6170,6150,6132,6115,6100,6088,6076,6064,6053,6041,6029,
+6019,6012,6010,6014,6022,6032,6041,6047,6047,6043,6035,6028,6021,6017,6014,6010,6003,5991,5976,5960,5947,
+5939,5937,5938,5937,5931,5917,5893,5862,5828,5796,5768,5746,5726,5704,5679,5647,5610,5570,5529,5489,5448,
+5405,5357,5303,5242,5177,5112,5054,5004,4967,4943,4930,4928,4936,4950,4971,4993,5014,5028,5029,5017,5033,
+4994,4944,4890,4839,4798,4769,4751,4739,4727,4711,4688,4659,4629,4601,4582,4572,4570,4575,4581,4585,4584,
+4578,4569,4559,4552,4552,4559,4572,4591,4609,4623,4625,4613,4582,4533,4468,4389,4301,4212,4125,4045,3975,
+3914,3863,3817,3775,3733,3690,3644,3599,3553,3510,3471,3435,3401,3369,3335,3298,3258,3213,3164,3109,3047,
+2979,2903,2821,2733,2644,2558,2480,2411,2356,2311,2276,2246,2217,2186,2151,2111,2067,2022,1980,1942,1912,
+1891,1880,1876,1877,1879,1880,1878,1872,1864,1854,1846,1842,1841,1843,1846,1849,1850,1847,1841,1834,1826,
+1819,1814,1811,1809,1808,1807,1805,1803,1800,1796,1790,1784,1777,1768,1760,1751,1744,1737,1731,1723,1713,
+1701,1686,1669,1651,1633,1614,1595,1573,1547,1516,1483,1450,1419,1395,1378,1367,1361,1355,1348,1338,1328,
+1319,1313,1312,1313,1314,1309,1297,1276,1247,1217,1191,1174,1167,1169,1176,1182,1182,1174,1158,1138,1119,
+1105,1097,1095,1096,1094,1086,1070,1047,1019,992,967,947,933,921,911,899,886,870,854,839,826,
+812,797,779,755,726,696,666,641,619,601,581,556,521,475,421,364,310,262,224,193,165,
+135,102,64,23,-15,-48,-75,-95,-112,-127,-143,-160,-176,-191,-205,-219,-236,-259,-288,-320,-347,
+-363,-361,-340,-306,-268,-239,-231,-249,-295,-361,-440,-520,-597,-666,-728,-785,-839,-890,-935,-974,-1003,
+-1023,-1037,-1047,-1058,-1073,-1093,-1120,-1152,-1190,-1233,-1284,-1342,-1406,-1473,-1539,-1599,-1649,-1687,-1715,-1735,-1751,
+-1767,-1787,-1810,-1838,-1866,-1895,-1923,-1948,-1973,-1997,-2022,-2050,-2082,-2117,-2155,-2193,-2228,-2256,-2276,-2287,-2290,
+-2289,-2287,-2290,-2298,-2315,-2338,-2367,-2398,-2430,-2460,-2488,-2512,-2531,-2546,-2555,-2559,-2560,-2560,-2562,-2570,-2584,
+-2604,-2628,-2653,-2677,-2698,-2716,-2730,-2741,-2752,-2763,-2773,-2783,-2791,-2799,-2805,-2810,-2813,-2814,-2813,-2809,-2802,
+-2792,-2781,-2770,-2760,-2752,-2745,-2740,-2736,-2734,-2735,-2739,-2749,-2764,-2783,-2802,-2819,-2829,-2832,-2829,-2821,-2813,
+-2810,-2813,-2823,-2840,-2861,-2883,-2903,-2918,-2929,-2934,-2936,-2937,-2937,-2937,-2939,-2942,-2945,-2948,-2951,-2951,-2952,
+-2953,-2956,-2964,-2978,-2998,-3024,-3053,-3082,-3110,-3134,-3154,-3169,-3181,-3189,-3195,-3199,-3200,-3198,-3195,-3192,-3188,
+-3185,-3182,-3178,-3173,-3165,-3154,-3140,-3124,-3108,-3091,-3075,-3059,-3044,-3029,-3015,-3001,-2990,-2982,-2976,-2972,-2967,
+-2962,-2954,-2944,-2935,-2927,-2924,-2924,-2928,-2933,-2935,-2931,-2920,-2902,-2877,-2847,-2815,-2782,-2748,-2713,-2677,-2641,
+-2605,-2573,-2545,-2523,-2508,-2498,-2491,-2485,-2480,-2474,-2467,-2461,-2455,-2449,-2443,-2433,-2418,-2397,-2369,-2334,-2293,
+-2247,-2198,-2147,-2098,-2052,-2014,-1988,-1977,-1983,-2007,-2046,-2092,-2137,-2172,-2188,-2179,-2142,-2079,-1995,-1897,-1792,
+-1689,-1592,-1505,-1431,-1369,-1318,-1277,-1244,-1217,-1193,-1170,-1147,-1121,-1094,-1066,-1037,-1009,-983,-958,-934,-911,
+-887,-863,-838,-812,-784,-755,-724,-691,-657,-621,-584,-548,-512,-476,-438,-397,-352,-304,-252,-200,-149,
+-102,-61,-25,5,32,56,79,101,121,139,156,170,184,198,215,236,264,300,346,402,466,
+534,602,666,723,770,808,837,862,885,908,931,954,976,996,1015,1034,1053,1075,1098,1124,1150,
+1175,1197,1216,1231,1243,1253,1261,1266,1269,1271,1271,1270,1270,1272,1275,1281,1288,1296,1305,1314,1322,
+1330,1337,1344,1349,1355,1362,1371,1383,1398,1416,1433,1448,1458,1464,1466,1466,1466,1468,1470,1473,1474,
+1472,1465,1457,1448,1444,1446,1455,1470,1489,1506,1517,1520,1514,1499,1476,1448,1418,1388,1359,1333,1310,
+1292,1277,1267,1260,1257,1258,1264,1274,1291,1313,1339,1365,1387,1400,1401,1389,1362,1325,1280,1232,1187,
+1148,1119,1100,1090,1089,1092,1096,1099,1098,1091,1080,1067,1054,1044,1037,1036,1039,1047,1057,1068,1081,
+1093,1104,1112,1117,1118,1115,1111,1107,1104,1103,1102,1097,1083,1058,1020,970,912,851,792,737,688,
+641,593,543,489,434,379,328,283,245,214,190,175,172,186,219,272,342,418,490,546,577,
+582,564,533,498,468,449,441,441,442,442,437,429,420,412,409,410,415,423,433,445,459,
+477,499,523,546,568,586,600,610,617,624,631,637,643,646,647,646,644,643,645,650,657,
+664,671,677,682,686,692,702,716,735,758,782,807,831,853,873,889,904,916,927,939,951,
+965,981,998,1017,1036,1053,1068,1082,1093,1104,1114,1124,1133,1143,1151,1160,1168,1177,1186,1196,1206,
+1216,1224,1231,1236,1240,1244,1247,1249,1250,1247,1242,1235,1227,1222,1222,1229,1243,1266,1295,1329,1366,
+1403,1441,1476,1507,1529,1541,1539,1520,1483,1430,1360,1279,1191,1101,1017,946,897,875,886,931,1006,
+1104,1215,1329,1438,1535,1620,1694,1757,1811,1855,1885,1897,1889,1862,1821,1775,1734,1707,1699,1712,1739,
+1774,1807,1830,1839,1836,1824,1807,1792,1781,1772,1763,1748,1721,1678,1620,1549,1472,1396,1329,1274,1234,
+1206,1187,1171,1155,1135,1110,1082,1049,1015,978,939,898,856,815,776,739,708,680,656,635,615,
+595,575,555,533,509,483,452,417,379,340,302,269,241,219,201,185,167,146,121,95,69,
+45,25,6,-12,-34,-62,-96,-137,-181,-224,-264,-299,-329,-359,-391,-432,-485,-551,-629,-716,-808,
+-899,-985,-1065,-1137,-1201,-1256,-1303,-1342,-1374,-1400,-1424,-1449,-1479,-1518,-1568,-1627,-1693,-1762,-1828,-1889,-1944,
+-1991,-2035,-2077,-2120,-2165,-2213,-2263,-2314,-2365,-2417,-2469,-2521,-2573,-2623,-2670,-2713,-2751,-2784,-2813,-2839,-2864,
+-2888,-2912,-2937,-2960,-2983,-3005,-3027,-3048,-3069,-3091,-3114,-3138,-3162,-3187,-3213,-3239,-3266,-3292,-3318,-3342,-3364,
+-3383,-3400,-3417,-3433,-3451,-3472,-3496,-3524,-3555,-3589,-3627,-3668,-3711,-3756,-3803,-3852,-3899,-3946,-3989,-4029,-4065,
+-4096,-4123,-4147,-4169,-4190,-4209,-4228,-4246,-4264,-4283,-4303,-4325,-4349,-4376,-4405,-4436,-4469,-4501,-4532,-4561,-4588,
+-4614,-4639,-4663,-4686,-4711,-4736,-4760,-4784,-4805,-4822,-4833,-4840,-4842,-4841,-4840,-4840,-4843,-4848,-4855,-4861,-4865,
+-4864,-4857,-4846,-4829,-4810,-4787,-4762,-4735,-4706,-4676,-4646,-4617,-4591,-4568,-4549,-4532,-4517,-4502,-4488,-4474,-4461,
+-4448,-4435,-4422,-4407,-4390,-4369,-4346,-4320,-4293,-4264,-4234,-4203,-4171,-4138,-4106,-4074,-4043,-4012,-3981,-3948,-3911,
+-3871,-3826,-3778,-3729,-3683,-3640,-3602,-3567,-3533,-3498,-3461,-3422,-3381,-3338,-3295,-3251,-3205,-3155,-3102,-3043,-2981,
+-2918,-2859,-2804,-2756,-2715,-2676,-2637,-2595,-2548,-2499,-2451,-2411,-2382,-2370,-2372,-2387,-2406,-2423,-2430,-2423,-2400,
+-2363,-2317,-2268,-2220,-2175,-2134,-2096,-2059,-2019,-1974,-1923,-1864,-1798,-1724,-1641,-1549,-1448,-1340,-1228,-1113,-1000,
+-890,-782,-675,-567,-457,-346,-237,-136,-46,31,99,164,236,321,424,541,664,778,870,929,954,
+949,928,906,895,904,936,985,1045,1105,1163,1214,1263,1313,1368,1429,1497,1569,1641,1711,1776,1837,
+1895,1952,2010,2069,2128,2187,2241,2289,2329,2362,2391,2421,2458,2510,2577,2660,2754,2848,2936,3008,3063,
+3103,3134,3166,3208,3266,3342,3435,3540,3652,3766,3879,3986,4088,4181,4264,4339,4406,4469,4532,4598,4667,
+4733,4787,4820,4825,4801,4753,4696,4645,4616,4620,4656,4719,4794,4865,4922,4956,4971,4971,4965,4962,4967,
+4980,4999,5020,5040,5059,5076,5093,5113,5137,5163,5191,5219,5245,5270,5294,5319,5347,5377,5411,5446,5481,
+5517,5552,5587,5624,5664,5707,5753,5802,5850,5897,5942,5984,6022,6058,6092,6126,6160,6194,6228,6262,6295,
+6326,6356,6383,6408,6431,6451,6468,6483,6494,6502,6507,6508,6506,6503,6498,6493,6488,6482,6475,6467,6457,
+6446,6435,6425,6416,6409,6403,6397,6388,6377,6362,6346,6328,6310,6293,6277,6261,6245,6228,6212,6196,6181,
+6168,6156,6144,6132,6118,6101,6083,6064,6047,6031,6017,6007,5998,5993,5990,5992,5997,6005,6014,6022,6026,
+6025,6019,6011,6002,5994,5989,5983,5975,5962,5944,5923,5904,5890,5885,5888,5897,5905,5906,5896,5873,5842,
+5807,5775,5748,5727,5707,5685,5656,5619,5576,5530,5486,5444,5405,5364,5318,5264,5202,5137,5074,5021,4981,
+4957,4948,4951,4963,4980,5000,5022,5043,5058,5065,5057,5033,5026,4981,4926,4868,4816,4775,4747,4729,4717,
+4703,4684,4658,4628,4600,4578,4568,4569,4580,4595,4610,4618,4618,4609,4593,4574,4557,4545,4542,4548,4560,
+4576,4588,4592,4580,4551,4502,4436,4358,4274,4189,4109,4036,3970,3912,3859,3808,3758,3708,3658,3609,3562,
+3517,3475,3436,3399,3362,3325,3287,3248,3208,3167,3122,3072,3016,2952,2879,2800,2716,2633,2554,2482,2418,
+2363,2316,2273,2233,2193,2154,2115,2075,2037,1999,1964,1933,1907,1888,1877,1873,1874,1878,1882,1884,1882,
+1878,1872,1868,1865,1864,1863,1861,1854,1842,1825,1804,1781,1760,1742,1730,1722,1718,1718,1720,1724,1730,
+1736,1742,1747,1750,1751,1748,1742,1735,1726,1716,1705,1693,1678,1661,1644,1627,1612,1601,1593,1585,1575,
+1559,1536,1504,1468,1430,1394,1365,1341,1322,1305,1290,1276,1264,1257,1257,1265,1276,1288,1293,1289,1274,
+1250,1222,1197,1179,1170,1170,1174,1177,1175,1167,1153,1136,1121,1110,1104,1102,1099,1092,1080,1061,1037,
+1011,986,966,951,940,931,921,907,890,871,851,833,818,805,793,779,760,737,711,685,661,
+642,626,609,588,559,518,467,412,357,309,271,240,215,188,157,119,75,30,-12,-50,-82,
+-111,-137,-163,-188,-210,-229,-244,-257,-271,-290,-314,-341,-364,-377,-373,-351,-316,-277,-248,-239,-257,
+-302,-367,-442,-519,-591,-655,-713,-768,-822,-875,-924,-966,-998,-1021,-1036,-1048,-1063,-1084,-1113,-1149,-1191,
+-1237,-1287,-1339,-1396,-1456,-1519,-1581,-1638,-1687,-1726,-1755,-1777,-1794,-1810,-1828,-1849,-1873,-1898,-1924,-1950,-1974,
+-1998,-2022,-2047,-2076,-2109,-2147,-2187,-2227,-2265,-2295,-2317,-2329,-2333,-2332,-2331,-2334,-2344,-2363,-2390,-2423,-2459,
+-2496,-2531,-2561,-2584,-2599,-2607,-2607,-2604,-2599,-2597,-2601,-2612,-2631,-2656,-2685,-2713,-2737,-2758,-2774,-2787,-2798,
+-2808,-2816,-2824,-2830,-2834,-2838,-2842,-2846,-2850,-2853,-2854,-2852,-2845,-2834,-2821,-2807,-2794,-2783,-2774,-2768,-2764,
+-2764,-2770,-2782,-2802,-2830,-2862,-2895,-2922,-2939,-2945,-2940,-2927,-2910,-2896,-2887,-2886,-2892,-2905,-2920,-2936,-2949,
+-2958,-2962,-2963,-2960,-2957,-2956,-2957,-2961,-2967,-2975,-2983,-2989,-2994,-2999,-3006,-3018,-3038,-3066,-3100,-3138,-3175,
+-3209,-3235,-3254,-3267,-3274,-3278,-3280,-3280,-3279,-3275,-3268,-3259,-3249,-3239,-3230,-3223,-3216,-3210,-3202,-3192,-3178,
+-3161,-3142,-3120,-3097,-3074,-3052,-3033,-3017,-3005,-2996,-2991,-2987,-2984,-2979,-2972,-2964,-2956,-2950,-2946,-2944,-2943,
+-2941,-2936,-2927,-2914,-2897,-2878,-2856,-2833,-2806,-2775,-2740,-2702,-2663,-2626,-2594,-2570,-2555,-2545,-2540,-2535,-2529,
+-2521,-2512,-2503,-2496,-2492,-2488,-2484,-2476,-2462,-2441,-2412,-2378,-2339,-2298,-2254,-2209,-2164,-2119,-2079,-2046,-2023,
+-2014,-2018,-2032,-2053,-2073,-2084,-2080,-2056,-2012,-1948,-1869,-1781,-1690,-1601,-1517,-1442,-1377,-1322,-1276,-1238,-1207,
+-1180,-1155,-1130,-1103,-1073,-1040,-1005,-969,-934,-901,-871,-843,-818,-796,-775,-756,-736,-716,-693,-667,-638,
+-604,-566,-526,-484,-443,-401,-358,-315,-270,-223,-175,-127,-80,-36,4,40,73,104,132,159,184,
+207,227,243,255,265,274,287,306,335,378,433,500,573,648,716,774,819,852,876,896,916,
+940,966,993,1018,1038,1052,1062,1071,1083,1099,1121,1147,1173,1197,1216,1231,1243,1253,1265,1277,1289,
+1300,1307,1311,1312,1310,1309,1309,1313,1321,1332,1345,1360,1375,1387,1397,1403,1405,1405,1405,1407,1414,
+1427,1444,1463,1480,1492,1498,1498,1494,1489,1486,1487,1490,1495,1499,1501,1503,1504,1508,1516,1528,1542,
+1556,1565,1567,1559,1543,1519,1490,1458,1425,1393,1362,1334,1308,1287,1271,1261,1256,1257,1264,1277,1297,
+1322,1352,1384,1413,1435,1445,1441,1422,1387,1341,1288,1234,1185,1144,1115,1098,1093,1095,1102,1109,1114,
+1112,1106,1096,1085,1077,1074,1077,1085,1096,1107,1116,1122,1125,1123,1119,1113,1104,1093,1081,1071,1063,
+1062,1065,1072,1078,1076,1060,1027,976,911,839,767,700,642,590,542,493,441,387,333,281,235,
+194,159,127,100,80,74,87,125,187,268,358,442,509,550,563,553,527,496,467,446,433,
+426,421,415,407,397,387,379,374,374,380,391,408,431,460,491,523,551,574,591,603,612,
+621,631,643,656,666,673,675,673,669,666,667,673,683,696,709,719,727,732,738,746,757,
+774,794,818,842,866,888,908,925,940,953,964,975,986,998,1012,1027,1044,1061,1078,1094,1108,
+1120,1132,1142,1151,1159,1165,1171,1176,1183,1191,1202,1215,1230,1244,1257,1267,1273,1277,1279,1280,1283,
+1287,1289,1291,1289,1285,1280,1276,1278,1288,1305,1330,1358,1387,1414,1436,1455,1469,1481,1490,1494,1489,
+1471,1434,1375,1293,1192,1081,969,871,799,761,763,803,877,973,1083,1195,1303,1403,1496,1582,1663,
+1739,1806,1860,1896,1910,1903,1879,1846,1812,1786,1772,1770,1778,1790,1800,1802,1796,1781,1764,1750,1742,
+1744,1756,1771,1784,1785,1769,1731,1671,1594,1509,1424,1349,1288,1244,1215,1194,1178,1159,1137,1108,1074,
+1036,995,952,908,864,820,777,737,700,667,640,617,599,584,570,555,538,518,492,463,429,
+394,360,328,301,277,254,232,206,175,140,102,65,33,7,-11,-26,-41,-59,-85,-120,-163,
+-209,-254,-296,-330,-359,-387,-418,-459,-513,-582,-664,-754,-846,-934,-1015,-1087,-1149,-1202,-1249,-1291,-1328,
+-1363,-1395,-1428,-1464,-1505,-1553,-1610,-1672,-1737,-1801,-1862,-1916,-1963,-2007,-2048,-2089,-2133,-2181,-2231,-2283,-2337,
+-2391,-2445,-2499,-2551,-2602,-2649,-2692,-2731,-2765,-2795,-2823,-2851,-2879,-2907,-2934,-2961,-2985,-3008,-3028,-3048,-3069,
+-3089,-3111,-3134,-3157,-3180,-3203,-3226,-3248,-3270,-3292,-3314,-3335,-3355,-3374,-3392,-3409,-3426,-3444,-3464,-3487,-3514,
+-3546,-3584,-3626,-3672,-3720,-3769,-3816,-3861,-3904,-3944,-3982,-4017,-4050,-4081,-4109,-4133,-4155,-4176,-4196,-4215,-4236,
+-4257,-4279,-4303,-4328,-4353,-4380,-4408,-4437,-4467,-4498,-4528,-4559,-4589,-4619,-4647,-4675,-4702,-4729,-4754,-4779,-4802,
+-4823,-4841,-4856,-4866,-4872,-4875,-4877,-4879,-4883,-4889,-4896,-4903,-4906,-4904,-4895,-4879,-4856,-4829,-4799,-4769,-4738,
+-4709,-4682,-4655,-4631,-4609,-4589,-4572,-4557,-4544,-4533,-4523,-4514,-4506,-4496,-4485,-4471,-4455,-4435,-4414,-4390,-4366,
+-4341,-4315,-4286,-4255,-4221,-4184,-4146,-4109,-4074,-4040,-4007,-3973,-3936,-3894,-3849,-3801,-3754,-3711,-3674,-3642,-3614,
+-3587,-3559,-3526,-3488,-3446,-3402,-3357,-3311,-3264,-3215,-3161,-3102,-3039,-2974,-2910,-2851,-2799,-2754,-2714,-2674,-2633,
+-2587,-2538,-2488,-2442,-2406,-2383,-2376,-2382,-2396,-2412,-2421,-2421,-2407,-2381,-2345,-2305,-2263,-2223,-2186,-2152,-2118,
+-2084,-2047,-2007,-1960,-1907,-1845,-1772,-1686,-1587,-1477,-1356,-1231,-1103,-978,-856,-738,-622,-508,-397,-291,-193,
+-106,-32,33,96,165,248,348,462,583,698,793,859,893,900,889,876,871,883,914,961,1018,
+1076,1133,1185,1234,1283,1335,1392,1454,1520,1590,1660,1729,1797,1863,1926,1986,2045,2103,2160,2216,2269,
+2318,2361,2399,2434,2469,2511,2565,2631,2709,2793,2874,2944,3000,3042,3075,3106,3144,3197,3266,3352,3450,
+3555,3661,3763,3858,3944,4020,4088,4151,4213,4280,4355,4438,4527,4611,4680,4722,4733,4714,4675,4633,4604,
+4601,4630,4687,4759,4831,4889,4926,4942,4942,4935,4931,4935,4949,4969,4992,5013,5032,5048,5065,5086,5113,
+5144,5177,5210,5241,5267,5291,5313,5336,5362,5391,5423,5458,5495,5534,5574,5617,5661,5707,5754,5800,5846,
+5890,5932,5973,6012,6050,6086,6122,6157,6192,6226,6259,6293,6326,6357,6386,6412,6434,6453,6469,6482,6492,
+6500,6506,6508,6507,6503,6496,6488,6480,6472,6465,6456,6447,6437,6425,6413,6401,6392,6384,6377,6369,6359,
+6345,6328,6307,6285,6264,6244,6225,6206,6188,6170,6153,6138,6126,6118,6113,6107,6100,6089,6074,6055,6036,
+6018,6004,5994,5988,5985,5983,5981,5980,5981,5984,5988,5992,5994,5993,5987,5979,5971,5963,5956,5948,5938,
+5922,5901,5877,5855,5840,5836,5843,5856,5869,5874,5866,5844,5814,5781,5751,5728,5711,5695,5674,5643,5601,
+5551,5498,5448,5404,5365,5326,5283,5233,5176,5115,5059,5014,4986,4974,4976,4988,5004,5022,5039,5055,5067,
+5075,5073,5057,5026,4994,4947,4894,4840,4792,4757,4734,4721,4710,4697,4677,4649,4618,4589,4568,4559,4562,
+4575,4592,4609,4620,4622,4616,4601,4582,4562,4546,4536,4533,4538,4546,4552,4550,4534,4502,4452,4388,4313,
+4235,4159,4087,4021,3960,3901,3843,3784,3724,3665,3607,3554,3505,3462,3422,3384,3346,3308,3268,3228,3189,
+3150,3113,3074,3030,2980,2921,2852,2775,2694,2613,2536,2466,2403,2348,2298,2252,2209,2167,2128,2093,2061,
+2032,2004,1977,1951,1926,1904,1887,1877,1872,1872,1876,1881,1885,1887,1889,1889,1888,1885,1879,1866,1847,
+1819,1786,1749,1712,1678,1651,1631,1619,1614,1614,1618,1626,1637,1650,1664,1677,1689,1697,1702,1702,1699,
+1692,1683,1671,1656,1637,1615,1592,1572,1557,1548,1547,1548,1549,1544,1530,1505,1471,1432,1393,1357,1325,
+1298,1273,1251,1230,1214,1205,1205,1215,1232,1251,1265,1269,1261,1243,1218,1193,1173,1160,1155,1154,1155,
+1153,1147,1138,1129,1120,1113,1108,1102,1093,1079,1059,1036,1010,985,965,950,941,935,930,922,909,
+891,869,844,821,802,787,776,766,754,738,719,696,674,654,637,621,602,577,542,498,448,
+397,351,314,286,264,243,218,185,145,101,55,11,-29,-68,-106,-143,-178,-211,-238,-259,-276,
+-291,-308,-329,-353,-373,-383,-379,-357,-324,-287,-260,-253,-273,-318,-384,-459,-535,-606,-669,-727,-782,
+-836,-889,-936,-976,-1006,-1026,-1040,-1055,-1077,-1107,-1148,-1197,-1250,-1303,-1354,-1404,-1453,-1504,-1557,-1610,-1662,
+-1709,-1749,-1782,-1809,-1831,-1852,-1872,-1894,-1917,-1941,-1966,-1989,-2012,-2034,-2058,-2083,-2113,-2146,-2184,-2223,-2262,
+-2297,-2325,-2344,-2354,-2357,-2357,-2357,-2362,-2375,-2397,-2427,-2465,-2507,-2550,-2590,-2625,-2650,-2666,-2671,-2667,-2659,
+-2650,-2647,-2651,-2665,-2688,-2718,-2749,-2779,-2806,-2827,-2843,-2856,-2866,-2874,-2879,-2882,-2883,-2882,-2883,-2885,-2889,
+-2896,-2901,-2904,-2903,-2896,-2884,-2871,-2858,-2848,-2842,-2837,-2834,-2831,-2829,-2831,-2839,-2856,-2882,-2915,-2951,-2985,
+-3010,-3025,-3027,-3018,-3002,-2983,-2966,-2952,-2945,-2944,-2947,-2954,-2962,-2970,-2976,-2979,-2981,-2982,-2984,-2989,-2999,
+-3012,-3026,-3041,-3053,-3062,-3070,-3079,-3093,-3114,-3145,-3184,-3227,-3269,-3305,-3333,-3351,-3360,-3363,-3360,-3355,-3349,
+-3340,-3329,-3316,-3301,-3285,-3270,-3258,-3249,-3244,-3241,-3238,-3232,-3222,-3207,-3187,-3162,-3135,-3108,-3082,-3060,-3041,
+-3026,-3015,-3006,-2999,-2992,-2987,-2982,-2978,-2975,-2973,-2970,-2966,-2958,-2947,-2934,-2918,-2902,-2887,-2874,-2860,-2844,
+-2823,-2796,-2761,-2722,-2682,-2646,-2618,-2599,-2588,-2583,-2580,-2575,-2567,-2557,-2548,-2542,-2540,-2543,-2546,-2548,-2543,
+-2531,-2510,-2482,-2448,-2412,-2373,-2330,-2284,-2233,-2179,-2124,-2073,-2031,-2000,-1982,-1976,-1977,-1978,-1973,-1956,-1925,
+-1878,-1818,-1748,-1672,-1595,-1521,-1452,-1390,-1335,-1288,-1247,-1211,-1180,-1151,-1123,-1094,-1063,-1029,-992,-953,-912,
+-872,-833,-798,-766,-738,-715,-694,-676,-660,-642,-622,-598,-569,-535,-497,-454,-408,-360,-313,-266,-220,
+-176,-133,-91,-50,-11,27,64,100,134,168,199,228,254,276,294,308,318,324,330,339,355,
+382,423,479,547,623,699,767,823,865,893,914,933,955,981,1011,1041,1066,1084,1094,1100,1106,
+1117,1134,1157,1183,1208,1227,1239,1246,1252,1259,1270,1287,1306,1323,1337,1345,1346,1344,1340,1338,1340,
+1346,1356,1370,1385,1401,1415,1428,1436,1441,1443,1444,1445,1451,1461,1476,1493,1509,1520,1527,1528,1526,
+1523,1524,1527,1534,1542,1551,1558,1565,1572,1580,1592,1604,1614,1620,1618,1606,1585,1556,1524,1491,1458,
+1427,1397,1368,1341,1316,1294,1278,1270,1268,1274,1286,1302,1322,1345,1369,1392,1413,1428,1435,1432,1417,
+1390,1353,1309,1261,1214,1173,1140,1119,1109,1110,1118,1129,1139,1143,1142,1136,1128,1121,1119,1123,1131,
+1141,1149,1151,1146,1134,1116,1096,1075,1055,1039,1025,1016,1013,1016,1025,1037,1047,1047,1032,997,941,
+869,790,711,640,579,529,484,439,390,336,278,221,169,123,83,46,11,-20,-45,-53,-39,
+2,72,163,264,360,438,492,518,521,508,487,464,444,427,413,401,390,379,370,363,359,
+361,369,384,406,435,469,505,539,568,589,604,613,620,628,639,653,669,684,694,699,699,
+696,694,695,701,713,728,743,757,768,776,783,791,802,817,836,857,879,900,921,939,956,
+972,985,998,1010,1022,1034,1046,1059,1072,1086,1100,1114,1127,1139,1151,1162,1172,1181,1189,1196,1202,
+1209,1219,1232,1249,1268,1287,1303,1315,1321,1323,1322,1322,1323,1328,1335,1341,1345,1344,1340,1335,1333,
+1337,1349,1369,1392,1415,1433,1444,1450,1453,1457,1465,1475,1479,1470,1436,1371,1273,1148,1008,869,752,
+671,635,648,702,788,891,1001,1106,1202,1288,1366,1440,1513,1584,1652,1713,1763,1799,1820,1828,1827,
+1821,1815,1812,1812,1814,1814,1809,1796,1775,1746,1713,1682,1657,1644,1646,1662,1688,1715,1735,1737,1717,
+1672,1607,1530,1450,1377,1315,1268,1233,1205,1179,1151,1118,1081,1040,997,954,912,871,830,791,753,
+718,685,655,628,606,585,566,548,528,505,479,451,422,393,366,341,319,297,274,246,212,
+172,126,78,33,-3,-31,-50,-61,-70,-81,-101,-131,-170,-215,-260,-301,-337,-367,-396,-431,-477,
+-539,-617,-708,-804,-899,-984,-1056,-1114,-1160,-1198,-1232,-1265,-1298,-1333,-1370,-1409,-1451,-1497,-1549,-1607,-1669,
+-1732,-1794,-1852,-1906,-1956,-2003,-2049,-2096,-2145,-2196,-2248,-2300,-2352,-2404,-2455,-2506,-2557,-2605,-2650,-2692,-2729,
+-2764,-2796,-2827,-2858,-2889,-2919,-2947,-2972,-2994,-3014,-3034,-3054,-3075,-3097,-3119,-3140,-3161,-3180,-3198,-3215,-3233,
+-3252,-3271,-3290,-3310,-3330,-3349,-3370,-3390,-3411,-3433,-3456,-3483,-3513,-3549,-3590,-3637,-3686,-3736,-3783,-3825,-3862,
+-3895,-3925,-3954,-3985,-4016,-4048,-4079,-4108,-4133,-4156,-4177,-4197,-4220,-4244,-4269,-4296,-4323,-4349,-4375,-4401,-4428,
+-4455,-4485,-4517,-4550,-4585,-4620,-4655,-4688,-4718,-4744,-4768,-4788,-4806,-4824,-4839,-4854,-4866,-4876,-4883,-4889,-4893,
+-4898,-4903,-4909,-4914,-4916,-4912,-4901,-4883,-4857,-4828,-4796,-4764,-4735,-4708,-4685,-4663,-4643,-4625,-4608,-4593,-4579,
+-4568,-4559,-4552,-4546,-4541,-4534,-4524,-4511,-4494,-4474,-4451,-4428,-4404,-4380,-4354,-4326,-4294,-4258,-4219,-4179,-4139,
+-4101,-4065,-4031,-3995,-3956,-3913,-3867,-3820,-3776,-3737,-3707,-3684,-3667,-3651,-3632,-3606,-3571,-3528,-3479,-3427,-3374,
+-3322,-3270,-3217,-3163,-3106,-3047,-2989,-2932,-2879,-2831,-2787,-2744,-2701,-2655,-2607,-2557,-2509,-2467,-2435,-2414,-2404,
+-2401,-2401,-2400,-2393,-2378,-2354,-2325,-2292,-2258,-2225,-2195,-2167,-2141,-2115,-2087,-2056,-2020,-1978,-1927,-1865,-1791,
+-1703,-1600,-1485,-1360,-1229,-1095,-961,-829,-700,-576,-457,-347,-248,-162,-89,-24,36,101,178,269,372,
+482,587,679,748,793,816,827,833,845,867,900,942,991,1041,1092,1143,1194,1248,1303,1362,1422,
+1485,1550,1617,1687,1758,1828,1896,1958,2015,2068,2119,2172,2227,2283,2339,2391,2439,2482,2523,2568,2619,
+2679,2744,2811,2874,2929,2973,3010,3046,3085,3134,3195,3268,3350,3436,3522,3603,3677,3743,3801,3854,3910,
+3973,4051,4147,4259,4379,4492,4584,4642,4661,4647,4614,4582,4569,4588,4639,4712,4791,4860,4906,4925,4922,
+4907,4893,4889,4898,4917,4943,4969,4991,5010,5028,5049,5076,5109,5146,5184,5219,5250,5277,5302,5327,5354,
+5383,5414,5448,5483,5520,5559,5602,5649,5698,5748,5797,5843,5885,5925,5963,6000,6039,6078,6118,6156,6193,
+6227,6259,6290,6319,6348,6376,6403,6426,6445,6461,6472,6482,6489,6495,6498,6499,6496,6489,6479,6468,6458,
+6448,6440,6433,6425,6415,6403,6389,6375,6362,6350,6339,6328,6316,6301,6282,6262,6241,6220,6202,6184,6167,
+6149,6131,6113,6098,6085,6077,6073,6069,6063,6054,6041,6025,6009,5995,5986,5982,5981,5980,5978,5973,5967,
+5961,5958,5959,5961,5964,5964,5961,5954,5946,5937,5929,5922,5911,5897,5878,5856,5836,5821,5816,5821,5832,
+5841,5842,5830,5806,5773,5741,5715,5698,5688,5680,5664,5636,5593,5540,5481,5426,5378,5337,5299,5259,5214,
+5163,5110,5063,5029,5010,5008,5018,5033,5047,5059,5065,5068,5067,5062,5050,5028,4994,4945,4901,4853,4807,
+4768,4740,4723,4713,4704,4690,4667,4637,4603,4572,4548,4536,4537,4547,4563,4580,4594,4604,4606,4603,4595,
+4585,4574,4565,4559,4555,4550,4540,4520,4488,4441,4381,4312,4239,4167,4100,4039,3984,3930,3875,3816,3753,
+3687,3621,3557,3498,3446,3399,3357,3318,3280,3242,3204,3168,3133,3099,3065,3030,2991,2943,2886,2819,2743,
+2662,2582,2505,2436,2375,2322,2273,2228,2186,2147,2112,2081,2055,2033,2013,1993,1971,1947,1923,1902,1885,
+1874,1870,1872,1878,1886,1895,1902,1905,1904,1897,1882,1858,1826,1787,1742,1696,1653,1614,1584,1561,1547,
+1540,1538,1540,1546,1555,1566,1580,1595,1610,1624,1636,1645,1651,1653,1652,1646,1634,1616,1593,1567,1542,
+1522,1510,1507,1510,1517,1520,1515,1499,1474,1440,1403,1366,1330,1296,1263,1232,1203,1180,1165,1163,1172,
+1191,1214,1233,1243,1240,1226,1205,1181,1161,1148,1141,1139,1138,1137,1134,1129,1122,1114,1106,1096,1083,
+1067,1047,1024,1000,978,960,947,940,936,935,933,926,914,894,869,840,811,786,767,754,745,
+738,728,714,695,674,653,634,617,600,579,551,515,472,426,383,347,319,298,280,259,233,
+201,163,121,79,38,-3,-45,-90,-134,-177,-215,-245,-270,-289,-309,-329,-351,-369,-379,-375,-357,
+-326,-294,-270,-266,-287,-335,-402,-481,-561,-637,-706,-768,-824,-877,-925,-966,-997,-1020,-1036,-1051,-1071,
+-1101,-1144,-1197,-1256,-1316,-1371,-1420,-1463,-1503,-1543,-1586,-1631,-1677,-1722,-1765,-1802,-1834,-1863,-1888,-1912,-1935,
+-1958,-1982,-2005,-2027,-2050,-2074,-2100,-2128,-2159,-2193,-2228,-2264,-2296,-2324,-2345,-2359,-2366,-2370,-2372,-2377,-2387,
+-2405,-2431,-2464,-2504,-2549,-2596,-2641,-2680,-2709,-2727,-2733,-2730,-2721,-2711,-2707,-2713,-2728,-2752,-2782,-2813,-2841,
+-2866,-2886,-2902,-2916,-2927,-2936,-2941,-2942,-2941,-2938,-2936,-2937,-2941,-2947,-2953,-2955,-2953,-2945,-2935,-2925,-2920,
+-2919,-2924,-2930,-2936,-2937,-2934,-2928,-2923,-2925,-2935,-2956,-2984,-3016,-3047,-3070,-3084,-3088,-3081,-3066,-3046,-3024,
+-3004,-2987,-2977,-2972,-2974,-2980,-2989,-2999,-3008,-3017,-3028,-3041,-3058,-3078,-3100,-3121,-3138,-3152,-3162,-3172,-3185,
+-3205,-3234,-3270,-3310,-3350,-3385,-3411,-3426,-3431,-3428,-3420,-3408,-3394,-3378,-3362,-3344,-3326,-3308,-3292,-3280,-3272,
+-3268,-3266,-3264,-3260,-3251,-3236,-3216,-3191,-3164,-3138,-3113,-3090,-3070,-3052,-3036,-3020,-3007,-2996,-2988,-2985,-2986,
+-2989,-2992,-2993,-2989,-2979,-2963,-2943,-2922,-2904,-2888,-2876,-2864,-2849,-2828,-2800,-2765,-2726,-2689,-2658,-2636,-2623,
+-2616,-2613,-2609,-2602,-2592,-2583,-2578,-2579,-2588,-2602,-2617,-2626,-2626,-2616,-2595,-2567,-2533,-2496,-2454,-2406,-2349,
+-2285,-2214,-2140,-2071,-2012,-1967,-1937,-1920,-1911,-1903,-1890,-1867,-1832,-1784,-1726,-1662,-1595,-1528,-1465,-1407,-1356,
+-1310,-1270,-1234,-1201,-1170,-1139,-1108,-1075,-1039,-1000,-959,-915,-869,-823,-779,-738,-701,-669,-641,-618,-598,
+-578,-558,-535,-509,-479,-445,-408,-368,-326,-282,-237,-192,-148,-106,-67,-30,6,41,78,115,153,
+191,226,258,284,306,323,336,346,354,361,367,376,390,413,448,497,558,628,700,768,828,
+875,911,941,967,994,1022,1052,1078,1099,1112,1120,1126,1134,1148,1170,1195,1221,1241,1253,1258,1258,
+1259,1265,1279,1299,1322,1342,1356,1362,1362,1358,1353,1352,1354,1360,1369,1379,1390,1402,1414,1428,1441,
+1453,1463,1473,1482,1492,1503,1515,1529,1540,1550,1556,1560,1563,1569,1577,1588,1601,1612,1621,1627,1631,
+1635,1641,1648,1655,1658,1655,1642,1619,1587,1552,1516,1482,1452,1426,1401,1377,1353,1331,1312,1299,1294,
+1297,1306,1319,1333,1346,1357,1365,1371,1378,1383,1389,1392,1390,1382,1364,1337,1301,1259,1216,1178,1150,
+1134,1132,1142,1159,1176,1188,1192,1187,1176,1163,1153,1148,1150,1154,1158,1157,1147,1127,1102,1073,1046,
+1025,1011,1003,1000,1000,1002,1002,999,990,970,937,887,823,747,668,591,524,468,423,382,340,
+291,235,173,112,56,10,-27,-57,-85,-111,-136,-152,-153,-131,-83,-9,82,181,275,353,411,
+446,462,464,457,445,431,416,402,388,377,368,363,363,369,382,400,425,456,490,526,559,
+588,610,625,633,639,644,651,662,676,690,703,712,717,719,720,723,729,739,752,766,780,
+793,805,817,830,845,862,881,902,922,941,959,975,991,1006,1021,1036,1051,1065,1078,1089,1099,
+1108,1116,1124,1132,1142,1153,1165,1178,1191,1203,1215,1226,1236,1248,1262,1279,1301,1325,1348,1367,1380,
+1385,1382,1375,1366,1361,1360,1365,1373,1380,1385,1386,1385,1384,1388,1397,1413,1431,1446,1457,1461,1461,
+1461,1465,1476,1489,1494,1480,1433,1346,1221,1067,906,759,647,587,582,627,711,815,924,1024,1108,
+1175,1228,1272,1313,1355,1401,1450,1500,1550,1598,1640,1676,1707,1732,1751,1766,1777,1783,1785,1779,1765,
+1741,1705,1658,1605,1553,1511,1487,1487,1512,1556,1609,1659,1691,1697,1674,1625,1557,1481,1406,1339,1283,
+1236,1195,1157,1118,1078,1036,993,951,909,870,833,799,767,737,708,681,653,626,598,570,541,
+512,483,455,427,401,376,352,329,306,281,253,220,181,138,91,45,2,-34,-60,-77,-87,
+-94,-103,-120,-147,-184,-228,-273,-313,-347,-375,-403,-436,-483,-549,-634,-732,-836,-934,-1018,-1083,-1129,
+-1160,-1183,-1205,-1230,-1260,-1295,-1335,-1378,-1423,-1472,-1525,-1582,-1642,-1704,-1764,-1822,-1878,-1931,-1982,-2033,-2086,
+-2138,-2191,-2243,-2293,-2342,-2390,-2437,-2484,-2531,-2577,-2622,-2665,-2707,-2747,-2785,-2823,-2859,-2893,-2923,-2950,-2972,
+-2991,-3009,-3029,-3050,-3073,-3095,-3117,-3136,-3152,-3166,-3180,-3194,-3210,-3228,-3247,-3266,-3285,-3305,-3325,-3347,-3371,
+-3398,-3426,-3457,-3489,-3523,-3561,-3602,-3647,-3693,-3738,-3779,-3813,-3841,-3865,-3888,-3913,-3942,-3975,-4011,-4047,-4079,
+-4107,-4131,-4152,-4173,-4195,-4221,-4249,-4280,-4310,-4339,-4367,-4394,-4420,-4447,-4475,-4506,-4539,-4575,-4611,-4648,-4682,
+-4714,-4740,-4762,-4781,-4797,-4812,-4827,-4842,-4857,-4871,-4882,-4890,-4896,-4901,-4904,-4908,-4909,-4908,-4902,-4890,-4871,
+-4846,-4818,-4788,-4758,-4731,-4705,-4683,-4663,-4645,-4628,-4614,-4602,-4592,-4584,-4578,-4573,-4570,-4566,-4561,-4553,-4541,
+-4525,-4505,-4482,-4456,-4429,-4402,-4374,-4344,-4313,-4279,-4243,-4206,-4169,-4133,-4097,-4061,-4022,-3981,-3938,-3892,-3848,
+-3809,-3778,-3757,-3745,-3739,-3734,-3724,-3705,-3674,-3630,-3577,-3517,-3456,-3396,-3340,-3286,-3235,-3183,-3130,-3075,-3018,
+-2961,-2905,-2852,-2800,-2750,-2700,-2652,-2603,-2557,-2514,-2477,-2446,-2422,-2403,-2386,-2370,-2351,-2328,-2301,-2271,-2240,
+-2210,-2183,-2160,-2142,-2127,-2113,-2098,-2080,-2056,-2023,-1981,-1928,-1863,-1785,-1693,-1588,-1470,-1342,-1205,-1063,-919,
+-777,-640,-512,-396,-294,-208,-135,-71,-11,50,121,201,290,383,472,552,618,668,707,739,770,
+804,841,882,923,964,1005,1048,1094,1147,1205,1268,1332,1396,1458,1519,1582,1648,1717,1788,1856,1920,
+1976,2026,2074,2124,2179,2241,2307,2372,2432,2485,2531,2574,2617,2664,2716,2773,2829,2882,2929,2971,3010,
+3050,3095,3147,3206,3272,3342,3412,3479,3539,3592,3638,3680,3726,3786,3867,3975,4105,4248,4386,4500,4576,
+4607,4602,4577,4555,4554,4586,4648,4729,4810,4873,4908,4913,4897,4874,4857,4853,4865,4889,4918,4946,4970,
+4993,5016,5043,5075,5112,5150,5187,5219,5247,5274,5302,5333,5368,5405,5442,5479,5515,5551,5589,5631,5679,
+5729,5781,5830,5876,5917,5955,5991,6028,6067,6109,6151,6191,6228,6262,6291,6318,6345,6370,6395,6419,6439,
+6455,6466,6474,6479,6482,6484,6484,6481,6474,6464,6452,6439,6427,6417,6410,6404,6398,6389,6377,6362,6346,
+6329,6313,6299,6285,6271,6255,6238,6219,6200,6182,6166,6152,6138,6124,6110,6094,6080,6068,6059,6053,6048,
+6042,6033,6021,6007,5993,5982,5975,5972,5971,5969,5965,5959,5951,5945,5943,5945,5951,5957,5960,5957,5949,
+5938,5926,5915,5907,5899,5889,5875,5859,5842,5827,5820,5819,5821,5822,5814,5794,5764,5728,5695,5671,5660,
+5658,5658,5650,5628,5588,5535,5474,5415,5363,5321,5285,5250,5212,5171,5130,5096,5073,5065,5070,5082,5095,
+5102,5100,5090,5074,5055,5035,5011,4982,4945,4894,4855,4815,4778,4748,4728,4714,4705,4693,4675,4649,4615,
+4578,4545,4520,4507,4506,4514,4528,4544,4559,4572,4582,4590,4594,4597,4598,4597,4593,4585,4570,4544,4504,
+4451,4385,4311,4234,4160,4095,4040,3992,3950,3907,3859,3804,3743,3675,3605,3535,3469,3406,3350,3299,3254,
+3215,3180,3148,3119,3090,3061,3030,2994,2953,2903,2845,2779,2706,2629,2553,2481,2416,2357,2304,2256,2210,
+2166,2124,2085,2052,2026,2005,1989,1976,1963,1948,1932,1916,1901,1890,1885,1886,1891,1901,1911,1918,1921,
+1917,1904,1880,1848,1807,1760,1711,1664,1620,1583,1554,1533,1519,1510,1505,1503,1502,1503,1507,1514,1525,
+1539,1556,1574,1591,1607,1620,1628,1631,1626,1613,1594,1569,1543,1520,1504,1498,1500,1507,1515,1518,1513,
+1496,1470,1436,1396,1355,1312,1268,1226,1187,1156,1136,1130,1138,1156,1179,1198,1209,1208,1196,1178,1158,
+1142,1132,1129,1130,1132,1133,1130,1123,1114,1101,1087,1071,1053,1033,1013,995,980,968,962,959,958,
+958,956,950,939,921,897,866,831,797,767,744,729,721,717,711,702,686,667,645,625,607,
+591,573,550,520,484,443,403,367,338,315,296,276,253,224,192,158,123,89,53,14,-29,
+-77,-126,-172,-212,-245,-271,-294,-316,-337,-356,-367,-366,-352,-327,-300,-280,-278,-301,-350,-421,-505,
+-593,-677,-753,-818,-875,-922,-961,-992,-1015,-1032,-1049,-1069,-1099,-1141,-1195,-1257,-1320,-1380,-1432,-1475,-1511,
+-1544,-1576,-1611,-1650,-1692,-1734,-1775,-1813,-1848,-1879,-1908,-1934,-1958,-1982,-2005,-2029,-2055,-2082,-2111,-2142,-2175,
+-2207,-2240,-2271,-2300,-2325,-2345,-2360,-2372,-2381,-2389,-2399,-2412,-2428,-2449,-2476,-2508,-2546,-2588,-2634,-2678,-2719,
+-2750,-2769,-2777,-2774,-2766,-2758,-2757,-2765,-2784,-2809,-2838,-2866,-2890,-2911,-2927,-2942,-2957,-2971,-2983,-2992,-2997,
+-2997,-2994,-2990,-2988,-2988,-2991,-2994,-2994,-2990,-2983,-2975,-2970,-2971,-2981,-2997,-3015,-3030,-3038,-3037,-3028,-3015,
+-3004,-3000,-3006,-3024,-3050,-3081,-3111,-3136,-3152,-3156,-3149,-3132,-3107,-3079,-3052,-3029,-3015,-3009,-3011,-3018,-3028,
+-3039,-3050,-3062,-3078,-3099,-3124,-3152,-3181,-3207,-3229,-3247,-3262,-3277,-3296,-3321,-3350,-3382,-3413,-3439,-3458,-3467,
+-3467,-3460,-3447,-3431,-3414,-3396,-3379,-3363,-3347,-3333,-3321,-3312,-3305,-3300,-3295,-3290,-3282,-3271,-3254,-3234,-3210,
+-3186,-3162,-3140,-3119,-3099,-3079,-3058,-3038,-3019,-3004,-2996,-2994,-2998,-3006,-3013,-3016,-3012,-2999,-2980,-2957,-2933,
+-2911,-2892,-2876,-2860,-2841,-2818,-2789,-2756,-2722,-2693,-2671,-2657,-2650,-2647,-2645,-2639,-2630,-2621,-2615,-2616,-2626,
+-2645,-2667,-2688,-2701,-2703,-2692,-2670,-2640,-2602,-2560,-2510,-2451,-2381,-2302,-2215,-2129,-2049,-1984,-1936,-1904,-1886,
+-1875,-1863,-1846,-1818,-1780,-1733,-1679,-1620,-1559,-1500,-1443,-1389,-1340,-1296,-1257,-1221,-1188,-1156,-1123,-1088,-1051,
+-1010,-967,-920,-871,-821,-771,-722,-676,-636,-601,-571,-545,-521,-498,-472,-445,-415,-383,-351,-318,-286,
+-253,-219,-184,-147,-109,-70,-33,4,41,80,120,162,205,246,283,312,334,349,358,364,369,
+376,383,392,403,418,438,466,506,557,618,686,754,818,874,922,963,998,1030,1060,1086,1108,
+1123,1132,1139,1146,1158,1176,1199,1223,1243,1255,1259,1258,1255,1257,1268,1287,1311,1336,1354,1362,1362,
+1356,1348,1344,1346,1353,1363,1374,1382,1389,1396,1404,1416,1432,1452,1473,1494,1514,1532,1547,1560,1569,
+1577,1581,1585,1588,1595,1606,1620,1637,1654,1666,1673,1675,1673,1671,1669,1669,1669,1665,1654,1634,1605,
+1570,1533,1499,1469,1444,1424,1406,1388,1370,1353,1338,1329,1327,1331,1340,1351,1359,1364,1364,1360,1356,
+1354,1356,1363,1371,1380,1383,1377,1360,1332,1296,1255,1218,1189,1174,1174,1187,1207,1227,1240,1242,1230,
+1209,1184,1162,1148,1144,1148,1154,1157,1150,1134,1109,1082,1058,1043,1038,1040,1043,1040,1025,994,949,
+891,824,752,677,601,528,460,399,346,302,264,226,185,137,81,21,-36,-86,-123,-147,-160,
+-167,-172,-178,-182,-182,-169,-140,-92,-28,46,123,195,257,306,343,369,386,397,401,401,396,
+389,381,375,373,375,384,398,417,441,468,499,532,565,595,621,640,652,659,662,664,668,
+675,686,699,713,726,737,745,752,757,764,772,783,795,809,825,842,861,882,904,927,949,
+970,989,1006,1021,1035,1049,1064,1081,1097,1113,1126,1136,1142,1145,1146,1148,1151,1158,1168,1181,1197,
+1213,1228,1243,1257,1271,1287,1307,1330,1357,1386,1413,1434,1447,1448,1440,1425,1407,1391,1381,1380,1386,
+1396,1407,1417,1424,1430,1436,1444,1453,1462,1468,1470,1468,1466,1468,1477,1491,1504,1503,1473,1404,1292,
+1144,978,818,691,617,603,648,737,850,965,1068,1147,1201,1234,1252,1262,1270,1281,1295,1315,1341,
+1372,1408,1447,1488,1527,1561,1590,1611,1627,1637,1643,1644,1639,1623,1594,1551,1497,1438,1385,1349,1340,
+1363,1416,1490,1570,1639,1684,1697,1675,1625,1554,1474,1394,1321,1257,1203,1156,1114,1074,1034,992,950,
+907,864,824,788,756,729,705,683,660,635,606,573,539,503,469,436,407,379,353,327,299,
+269,236,200,161,121,81,41,4,-29,-58,-81,-98,-110,-121,-134,-153,-181,-219,-262,-306,-346,
+-378,-402,-425,-454,-498,-563,-649,-751,-858,-958,-1040,-1100,-1138,-1159,-1171,-1183,-1201,-1227,-1262,-1303,-1348,
+-1397,-1449,-1504,-1561,-1620,-1679,-1736,-1791,-1842,-1892,-1940,-1990,-2041,-2094,-2147,-2199,-2250,-2299,-2347,-2394,-2441,
+-2488,-2534,-2580,-2625,-2671,-2716,-2761,-2806,-2848,-2885,-2917,-2943,-2964,-2983,-3001,-3021,-3044,-3068,-3091,-3111,-3127,
+-3139,-3150,-3161,-3176,-3194,-3214,-3236,-3256,-3274,-3292,-3311,-3334,-3361,-3393,-3429,-3466,-3502,-3538,-3573,-3609,-3645,
+-3682,-3718,-3751,-3779,-3803,-3825,-3848,-3876,-3909,-3947,-3988,-4027,-4060,-4088,-4110,-4129,-4148,-4171,-4198,-4229,-4262,
+-4296,-4329,-4360,-4389,-4416,-4443,-4470,-4498,-4527,-4558,-4590,-4623,-4656,-4687,-4715,-4739,-4761,-4780,-4799,-4818,-4838,
+-4857,-4874,-4889,-4899,-4906,-4910,-4912,-4912,-4910,-4905,-4896,-4882,-4862,-4839,-4812,-4784,-4756,-4728,-4701,-4677,-4654,
+-4635,-4619,-4608,-4600,-4596,-4594,-4593,-4592,-4591,-4589,-4585,-4579,-4569,-4554,-4535,-4510,-4481,-4449,-4416,-4383,-4351,
+-4321,-4291,-4261,-4231,-4200,-4168,-4134,-4098,-4059,-4018,-3978,-3939,-3905,-3879,-3861,-3852,-3850,-3850,-3850,-3842,-3824,
+-3792,-3746,-3689,-3624,-3556,-3490,-3426,-3368,-3313,-3259,-3203,-3145,-3083,-3018,-2952,-2888,-2827,-2770,-2717,-2669,-2623,
+-2580,-2539,-2501,-2466,-2434,-2405,-2379,-2353,-2327,-2299,-2269,-2236,-2204,-2173,-2145,-2124,-2109,-2101,-2096,-2092,-2084,
+-2069,-2044,-2007,-1957,-1896,-1823,-1737,-1639,-1528,-1404,-1268,-1124,-975,-826,-684,-552,-434,-332,-246,-172,-108,
+-47,15,82,154,230,306,377,440,494,542,586,632,681,735,790,843,891,933,970,1007,1048,
+1098,1156,1221,1289,1356,1419,1479,1539,1601,1666,1735,1802,1866,1924,1977,2026,2078,2136,2201,2272,2344,
+2412,2472,2523,2569,2612,2658,2707,2760,2814,2866,2914,2957,2997,3037,3080,3128,3182,3244,3310,3379,3447,
+3511,3565,3608,3644,3679,3724,3790,3884,4007,4148,4290,4413,4501,4547,4557,4547,4538,4549,4589,4656,4736,
+4812,4867,4893,4893,4875,4854,4841,4843,4860,4885,4914,4941,4964,4988,5014,5045,5081,5119,5156,5189,5217,
+5243,5269,5301,5337,5379,5424,5467,5507,5545,5581,5620,5662,5710,5761,5813,5862,5907,5948,5985,6022,6059,
+6100,6141,6183,6223,6259,6292,6320,6347,6372,6397,6420,6441,6458,6470,6477,6479,6479,6476,6473,6468,6461,
+6451,6440,6426,6412,6400,6391,6383,6377,6371,6362,6349,6333,6315,6296,6278,6262,6246,6231,6214,6196,6177,
+6159,6142,6128,6117,6108,6100,6091,6083,6074,6066,6058,6052,6046,6038,6028,6015,6001,5987,5974,5966,5960,
+5957,5955,5952,5949,5946,5947,5951,5958,5968,5974,5976,5969,5955,5937,5918,5903,5891,5883,5875,5865,5851,
+5834,5819,5807,5800,5796,5790,5779,5757,5726,5691,5659,5637,5627,5628,5631,5628,5610,5573,5521,5460,5400,
+5349,5308,5278,5253,5229,5204,5180,5161,5151,5149,5155,5162,5164,5156,5136,5106,5070,5033,4998,4964,4930,
+4894,4853,4821,4790,4762,4740,4724,4713,4702,4688,4665,4633,4595,4557,4523,4499,4488,4487,4495,4507,4518,
+4528,4536,4541,4548,4555,4565,4576,4586,4592,4589,4574,4542,4493,4428,4351,4269,4190,4121,4064,4020,3984,
+3951,3916,3874,3822,3762,3694,3622,3546,3471,3397,3328,3266,3213,3171,3137,3111,3088,3065,3037,3003,2961,
+2913,2859,2800,2737,2671,2604,2537,2473,2412,2355,2300,2246,2192,2139,2086,2038,1996,1964,1942,1931,1927,
+1928,1930,1930,1928,1924,1920,1917,1917,1921,1926,1933,1937,1936,1926,1907,1878,1840,1795,1747,1698,1652,
+1612,1578,1551,1532,1519,1509,1503,1497,1491,1486,1483,1484,1491,1503,1521,1542,1564,1584,1601,1613,1619,
+1618,1611,1598,1580,1560,1541,1527,1521,1523,1532,1543,1551,1552,1542,1519,1486,1443,1395,1342,1288,1235,
+1187,1147,1121,1110,1114,1129,1148,1165,1173,1172,1161,1146,1131,1120,1116,1118,1123,1127,1128,1124,1115,
+1103,1088,1072,1055,1038,1023,1011,1003,1000,1000,1003,1005,1004,999,988,972,949,921,888,851,812,
+776,744,721,706,700,698,696,691,679,662,641,619,599,581,562,541,514,482,446,411,379,
+352,329,308,285,259,228,195,162,132,104,75,44,7,-36,-85,-133,-178,-216,-246,-272,-295,
+-316,-334,-346,-349,-339,-320,-299,-284,-286,-313,-366,-443,-534,-630,-721,-802,-868,-919,-958,-986,-1007,
+-1024,-1042,-1065,-1097,-1140,-1194,-1254,-1317,-1377,-1429,-1474,-1510,-1542,-1573,-1604,-1637,-1671,-1707,-1742,-1777,-1811,
+-1844,-1876,-1906,-1935,-1963,-1990,-2018,-2047,-2079,-2113,-2148,-2184,-2219,-2251,-2279,-2304,-2326,-2345,-2362,-2378,-2394,
+-2410,-2428,-2446,-2466,-2485,-2506,-2528,-2553,-2584,-2619,-2660,-2701,-2740,-2770,-2789,-2796,-2795,-2789,-2786,-2790,-2805,
+-2830,-2860,-2891,-2918,-2940,-2956,-2968,-2980,-2994,-3009,-3025,-3038,-3047,-3051,-3048,-3043,-3038,-3034,-3033,-3032,-3031,
+-3028,-3023,-3018,-3017,-3021,-3034,-3052,-3074,-3093,-3106,-3110,-3105,-3094,-3083,-3076,-3078,-3091,-3114,-3144,-3176,-3205,
+-3226,-3238,-3236,-3222,-3198,-3169,-3138,-3111,-3091,-3079,-3073,-3072,-3072,-3071,-3071,-3072,-3079,-3094,-3117,-3148,-3183,
+-3220,-3255,-3287,-3315,-3339,-3363,-3386,-3409,-3430,-3449,-3463,-3471,-3474,-3470,-3461,-3447,-3432,-3416,-3401,-3388,-3378,
+-3371,-3364,-3359,-3353,-3346,-3339,-3330,-3320,-3307,-3292,-3274,-3254,-3234,-3213,-3193,-3173,-3154,-3134,-3112,-3088,-3065,
+-3044,-3029,-3022,-3021,-3027,-3035,-3041,-3041,-3033,-3016,-2993,-2966,-2939,-2913,-2890,-2869,-2848,-2826,-2802,-2776,-2750,
+-2727,-2709,-2697,-2691,-2689,-2688,-2686,-2681,-2674,-2668,-2667,-2673,-2688,-2708,-2730,-2747,-2755,-2751,-2734,-2706,-2669,
+-2625,-2574,-2515,-2446,-2366,-2278,-2186,-2098,-2021,-1960,-1918,-1892,-1876,-1864,-1849,-1828,-1797,-1759,-1714,-1665,-1614,
+-1561,-1506,-1449,-1391,-1335,-1282,-1233,-1189,-1149,-1113,-1077,-1039,-999,-955,-908,-858,-806,-754,-703,-653,-607,
+-566,-530,-499,-473,-449,-426,-400,-373,-342,-311,-280,-250,-223,-196,-169,-140,-107,-72,-34,5,46,
+88,131,175,220,264,305,339,365,383,392,396,398,400,403,409,418,428,442,460,486,522,
+568,625,689,755,819,879,931,977,1016,1050,1080,1105,1125,1140,1151,1161,1172,1186,1204,1223,1239,
+1249,1251,1247,1241,1239,1246,1265,1292,1321,1347,1363,1366,1359,1346,1336,1333,1338,1351,1367,1381,1390,
+1395,1398,1402,1411,1426,1448,1474,1502,1529,1554,1574,1589,1600,1606,1609,1611,1613,1618,1627,1641,1657,
+1672,1683,1689,1688,1684,1678,1672,1668,1663,1655,1641,1619,1589,1555,1520,1488,1462,1442,1427,1414,1402,
+1390,1378,1368,1360,1357,1359,1363,1368,1372,1374,1375,1374,1376,1380,1387,1396,1405,1409,1407,1396,1376,
+1348,1315,1283,1257,1239,1232,1236,1248,1261,1272,1273,1262,1239,1208,1175,1147,1130,1126,1131,1140,1145,
+1140,1124,1100,1074,1056,1052,1060,1075,1085,1076,1037,966,865,744,617,498,395,314,253,208,174,
+145,119,91,59,22,-20,-67,-116,-160,-196,-218,-226,-221,-208,-192,-176,-163,-150,-136,-116,-88,
+-53,-13,29,72,113,152,189,226,263,298,330,355,374,385,390,391,392,396,403,414,430,
+450,472,498,527,558,590,620,646,665,676,680,678,676,677,684,698,717,738,758,775,786,
+792,796,800,806,816,830,847,867,889,913,938,963,989,1013,1035,1053,1069,1083,1096,1109,1124,
+1138,1151,1162,1168,1170,1169,1166,1165,1168,1176,1189,1206,1225,1243,1258,1273,1286,1302,1320,1344,1372,
+1404,1435,1463,1483,1493,1492,1481,1461,1439,1418,1404,1399,1402,1414,1429,1444,1457,1467,1474,1477,1478,
+1477,1473,1467,1462,1459,1462,1472,1484,1489,1474,1425,1336,1209,1058,905,777,696,677,720,811,929,
+1052,1159,1239,1290,1316,1324,1323,1318,1311,1303,1294,1287,1282,1283,1290,1305,1325,1348,1370,1388,1402,
+1412,1419,1425,1429,1429,1423,1408,1382,1346,1306,1271,1248,1248,1275,1327,1396,1473,1543,1594,1619,1613,
+1581,1528,1462,1390,1320,1255,1198,1150,1108,1070,1034,996,956,912,866,819,776,738,706,681,660,
+640,618,593,564,531,495,459,424,391,361,331,301,269,234,195,154,112,72,35,2,-27,
+-54,-80,-103,-123,-142,-160,-180,-203,-233,-268,-308,-348,-385,-415,-439,-463,-494,-541,-608,-695,-797,
+-902,-998,-1074,-1127,-1157,-1171,-1176,-1182,-1195,-1217,-1250,-1290,-1337,-1388,-1443,-1499,-1557,-1614,-1668,-1717,-1762,
+-1802,-1841,-1881,-1924,-1970,-2021,-2075,-2130,-2185,-2239,-2292,-2344,-2394,-2443,-2491,-2537,-2582,-2629,-2676,-2724,-2772,
+-2818,-2860,-2895,-2925,-2949,-2970,-2990,-3012,-3035,-3059,-3081,-3098,-3112,-3123,-3134,-3147,-3164,-3185,-3208,-3231,-3251,
+-3268,-3284,-3303,-3326,-3357,-3394,-3434,-3475,-3513,-3547,-3576,-3603,-3629,-3656,-3684,-3711,-3738,-3764,-3791,-3821,-3857,
+-3897,-3940,-3983,-4022,-4054,-4079,-4098,-4115,-4133,-4156,-4183,-4214,-4248,-4281,-4312,-4343,-4372,-4400,-4428,-4455,-4482,
+-4509,-4536,-4564,-4594,-4624,-4656,-4686,-4714,-4740,-4765,-4790,-4814,-4838,-4862,-4883,-4900,-4913,-4921,-4926,-4928,-4927,
+-4922,-4914,-4902,-4884,-4863,-4838,-4811,-4784,-4756,-4727,-4698,-4670,-4645,-4624,-4610,-4602,-4601,-4604,-4610,-4615,-4619,
+-4621,-4620,-4618,-4613,-4604,-4590,-4570,-4544,-4511,-4474,-4436,-4399,-4365,-4334,-4307,-4283,-4259,-4234,-4206,-4175,-4142,
+-4107,-4073,-4042,-4018,-4000,-3991,-3989,-3990,-3993,-3993,-3987,-3971,-3943,-3902,-3849,-3786,-3717,-3643,-3569,-3498,-3430,
+-3366,-3304,-3242,-3178,-3111,-3043,-2975,-2908,-2846,-2789,-2738,-2691,-2649,-2608,-2570,-2532,-2496,-2462,-2431,-2402,-2374,
+-2348,-2320,-2291,-2259,-2225,-2191,-2159,-2131,-2110,-2095,-2086,-2079,-2070,-2055,-2029,-1991,-1941,-1879,-1806,-1722,-1626,
+-1518,-1397,-1265,-1124,-980,-837,-701,-577,-466,-369,-285,-211,-142,-76,-10,57,126,194,258,314,363,
+404,443,482,528,582,645,712,778,838,889,931,968,1006,1050,1103,1163,1228,1295,1360,1423,1484,
+1546,1610,1677,1744,1810,1871,1928,1983,2039,2100,2167,2239,2311,2380,2444,2501,2553,2603,2653,2706,2759,
+2812,2861,2905,2946,2985,3026,3070,3121,3178,3243,3315,3392,3471,3547,3614,3668,3708,3739,3771,3816,3883,
+3977,4092,4214,4328,4416,4473,4500,4510,4520,4545,4592,4658,4731,4797,4843,4865,4865,4854,4844,4843,4854,
+4875,4900,4924,4945,4964,4985,5010,5042,5080,5119,5156,5189,5218,5246,5276,5311,5353,5398,5445,5489,5531,
+5571,5610,5652,5698,5748,5800,5851,5898,5941,5981,6018,6056,6094,6135,6176,6215,6253,6286,6317,6345,6371,
+6395,6419,6440,6457,6469,6476,6477,6475,6470,6464,6456,6448,6440,6429,6418,6406,6394,6383,6373,6364,6355,
+6346,6334,6320,6304,6285,6266,6246,6227,6208,6189,6171,6152,6133,6116,6102,6090,6083,6078,6076,6074,6072,
+6068,6062,6055,6047,6038,6028,6017,6004,5990,5977,5966,5957,5951,5949,5950,5952,5955,5960,5967,5974,5981,
+5986,5986,5980,5965,5945,5921,5898,5878,5862,5848,5835,5819,5798,5776,5754,5737,5727,5723,5722,5719,5707,
+5688,5662,5636,5615,5605,5602,5603,5599,5582,5548,5500,5444,5388,5340,5305,5283,5270,5262,5255,5248,5241,
+5236,5233,5230,5222,5206,5178,5139,5093,5044,4997,4955,4919,4885,4853,4832,4806,4780,4757,4739,4726,4715,
+4704,4687,4662,4627,4587,4546,4512,4490,4481,4483,4492,4502,4508,4508,4503,4496,4491,4493,4502,4519,4539,
+4557,4566,4558,4531,4482,4416,4339,4261,4188,4127,4079,4043,4013,3982,3946,3902,3849,3787,3719,3645,3567,
+3486,3406,3327,3257,3197,3150,3116,3091,3069,3045,3014,2974,2925,2871,2814,2756,2698,2642,2586,2529,2472,
+2414,2356,2296,2234,2170,2106,2044,1987,1939,1903,1881,1873,1877,1889,1904,1919,1931,1939,1943,1944,1945,
+1945,1946,1947,1944,1936,1921,1897,1864,1826,1783,1738,1695,1655,1620,1589,1565,1546,1532,1522,1514,1508,
+1502,1496,1493,1494,1500,1513,1531,1551,1571,1587,1598,1604,1605,1604,1599,1593,1584,1575,1565,1559,1557,
+1561,1570,1582,1591,1594,1585,1565,1532,1489,1438,1382,1324,1266,1213,1167,1133,1114,1109,1117,1130,1145,
+1154,1155,1148,1138,1126,1118,1115,1116,1119,1122,1122,1118,1110,1101,1091,1081,1071,1063,1057,1054,1054,
+1056,1058,1058,1053,1042,1024,998,968,933,896,859,821,784,751,724,705,694,690,691,691,688,
+679,664,645,622,599,576,553,528,500,469,438,409,384,363,345,325,301,270,233,194,156,
+123,95,70,44,13,-23,-67,-112,-157,-195,-227,-253,-274,-294,-310,-321,-323,-315,-300,-283,-274,
+-282,-316,-378,-463,-564,-669,-768,-851,-915,-960,-989,-1008,-1022,-1038,-1060,-1093,-1136,-1189,-1248,-1307,-1362,
+-1410,-1451,-1486,-1519,-1552,-1587,-1622,-1657,-1690,-1719,-1746,-1772,-1799,-1829,-1862,-1896,-1931,-1966,-2000,-2034,-2069,
+-2106,-2145,-2184,-2222,-2256,-2285,-2308,-2329,-2346,-2364,-2383,-2405,-2429,-2455,-2481,-2506,-2528,-2546,-2562,-2576,-2593,
+-2616,-2646,-2682,-2721,-2757,-2787,-2805,-2813,-2813,-2812,-2814,-2826,-2849,-2880,-2915,-2949,-2977,-2997,-3009,-3018,-3025,
+-3036,-3049,-3066,-3082,-3095,-3102,-3103,-3100,-3094,-3089,-3086,-3085,-3085,-3085,-3085,-3085,-3086,-3090,-3098,-3111,-3127,
+-3143,-3156,-3164,-3165,-3163,-3161,-3161,-3168,-3184,-3207,-3235,-3266,-3294,-3315,-3327,-3326,-3314,-3292,-3263,-3234,-3207,
+-3186,-3170,-3158,-3147,-3134,-3118,-3101,-3086,-3077,-3078,-3091,-3116,-3150,-3192,-3236,-3280,-3321,-3359,-3392,-3419,-3439,
+-3454,-3462,-3466,-3466,-3462,-3457,-3449,-3439,-3427,-3416,-3406,-3399,-3395,-3394,-3394,-3394,-3392,-3386,-3378,-3366,-3353,
+-3338,-3322,-3305,-3289,-3272,-3255,-3239,-3221,-3202,-3181,-3156,-3130,-3105,-3084,-3070,-3064,-3064,-3070,-3075,-3076,-3070,
+-3055,-3033,-3006,-2977,-2947,-2919,-2892,-2867,-2843,-2819,-2797,-2777,-2759,-2746,-2736,-2731,-2729,-2728,-2728,-2728,-2727,
+-2725,-2726,-2729,-2736,-2748,-2761,-2772,-2776,-2772,-2755,-2727,-2689,-2643,-2591,-2531,-2465,-2390,-2309,-2223,-2139,-2061,
+-1997,-1948,-1916,-1897,-1883,-1869,-1850,-1824,-1790,-1751,-1710,-1667,-1623,-1575,-1522,-1462,-1397,-1328,-1260,-1197,-1140,
+-1091,-1048,-1008,-969,-927,-882,-834,-783,-732,-682,-632,-585,-540,-500,-463,-433,-407,-386,-367,-348,-326,
+-301,-273,-243,-213,-183,-152,-121,-88,-52,-13,29,74,119,164,208,250,290,327,359,387,408,
+423,434,441,445,449,452,455,459,466,476,494,522,560,609,667,729,791,849,901,947,986,
+1022,1054,1084,1112,1136,1156,1173,1188,1203,1217,1231,1243,1250,1250,1244,1234,1226,1225,1236,1259,1291,
+1325,1353,1370,1374,1367,1355,1345,1343,1350,1363,1379,1394,1403,1406,1407,1408,1414,1426,1444,1468,1494,
+1521,1547,1570,1590,1606,1618,1626,1631,1635,1639,1646,1654,1664,1673,1680,1683,1682,1678,1673,1669,1665,
+1660,1652,1638,1618,1590,1558,1526,1496,1470,1451,1437,1427,1418,1411,1403,1394,1386,1379,1374,1370,1370,
+1373,1379,1390,1405,1424,1444,1461,1473,1476,1467,1447,1418,1383,1350,1321,1300,1289,1286,1289,1293,1295,
+1293,1285,1269,1245,1217,1185,1155,1130,1113,1104,1100,1097,1087,1067,1036,1001,971,955,960,983,1014,
+1036,1029,979,880,738,571,400,248,130,52,9,-8,-12,-15,-22,-37,-60,-88,-120,-152,-182,
+-208,-227,-236,-234,-222,-202,-178,-153,-130,-109,-91,-73,-54,-36,-18,-1,13,28,46,70,103,
+146,197,252,305,351,386,408,420,425,427,430,437,447,462,480,501,526,554,586,618,649,
+675,693,700,700,696,694,698,712,733,760,786,808,823,831,835,837,843,852,866,882,901,
+921,941,963,987,1012,1039,1064,1087,1106,1121,1134,1145,1155,1164,1173,1178,1181,1181,1178,1177,1178,
+1186,1199,1217,1238,1259,1276,1290,1302,1314,1330,1351,1379,1410,1443,1472,1495,1509,1512,1507,1495,1478,
+1461,1445,1435,1431,1435,1446,1459,1473,1485,1493,1495,1494,1489,1482,1474,1466,1459,1455,1455,1457,1456,
+1443,1408,1342,1245,1124,994,880,803,779,813,895,1006,1124,1226,1301,1345,1364,1368,1366,1363,1360,
+1354,1342,1324,1300,1275,1252,1236,1228,1226,1229,1233,1237,1240,1241,1241,1240,1237,1232,1223,1210,1194,
+1177,1162,1152,1152,1163,1186,1220,1259,1299,1336,1364,1381,1387,1381,1365,1339,1305,1265,1222,1177,1134,
+1094,1058,1025,992,956,917,874,827,781,737,698,665,636,611,587,563,537,508,476,441,405,
+371,338,307,277,247,216,181,143,103,63,26,-7,-37,-65,-94,-122,-152,-182,-211,-240,-267,
+-295,-325,-355,-385,-415,-443,-471,-504,-548,-606,-682,-773,-872,-969,-1054,-1119,-1161,-1183,-1192,-1195,-1201,
+-1214,-1236,-1268,-1307,-1354,-1405,-1460,-1515,-1570,-1620,-1665,-1702,-1734,-1763,-1791,-1824,-1862,-1907,-1958,-2013,-2070,
+-2127,-2184,-2240,-2294,-2347,-2396,-2444,-2490,-2535,-2581,-2628,-2676,-2724,-2772,-2816,-2856,-2890,-2920,-2947,-2972,-2996,
+-3019,-3042,-3061,-3078,-3092,-3104,-3117,-3133,-3152,-3174,-3197,-3218,-3237,-3254,-3271,-3292,-3319,-3353,-3393,-3435,-3475,
+-3510,-3538,-3561,-3581,-3601,-3623,-3648,-3675,-3705,-3736,-3771,-3808,-3850,-3895,-3941,-3983,-4020,-4049,-4070,-4087,-4104,
+-4124,-4148,-4175,-4204,-4233,-4259,-4284,-4308,-4333,-4360,-4390,-4421,-4452,-4483,-4513,-4543,-4573,-4604,-4635,-4665,-4694,
+-4722,-4749,-4776,-4803,-4831,-4858,-4883,-4904,-4920,-4931,-4938,-4941,-4941,-4936,-4926,-4910,-4890,-4866,-4839,-4812,-4784,
+-4756,-4727,-4698,-4669,-4643,-4623,-4610,-4606,-4611,-4620,-4632,-4643,-4652,-4658,-4660,-4660,-4656,-4648,-4634,-4612,-4584,
+-4548,-4509,-4469,-4430,-4395,-4364,-4338,-4315,-4294,-4273,-4251,-4227,-4201,-4175,-4151,-4133,-4121,-4118,-4122,-4129,-4135,
+-4136,-4127,-4107,-4075,-4031,-3976,-3914,-3844,-3768,-3689,-3609,-3530,-3453,-3381,-3311,-3245,-3181,-3118,-3056,-2995,-2937,
+-2882,-2832,-2785,-2741,-2701,-2662,-2624,-2587,-2552,-2519,-2488,-2459,-2433,-2408,-2383,-2357,-2328,-2296,-2261,-2225,-2189,
+-2156,-2126,-2101,-2077,-2052,-2022,-1986,-1940,-1886,-1821,-1747,-1664,-1569,-1463,-1347,-1221,-1089,-957,-829,-710,-602,
+-505,-418,-337,-261,-187,-114,-41,30,100,166,226,279,324,361,394,426,463,509,565,630,699,
+766,827,880,925,966,1007,1054,1107,1167,1232,1298,1364,1429,1495,1561,1628,1695,1761,1825,1886,1945,
+2005,2069,2135,2205,2276,2344,2410,2471,2530,2588,2644,2700,2753,2802,2845,2884,2922,2961,3005,3054,3109,
+3170,3236,3307,3385,3468,3553,3636,3711,3771,3819,3857,3896,3944,4008,4089,4180,4270,4347,4406,4446,4475,
+4504,4543,4596,4658,4721,4774,4810,4827,4831,4829,4831,4841,4860,4884,4908,4929,4945,4960,4979,5003,5036,
+5073,5113,5152,5188,5223,5258,5295,5336,5380,5426,5471,5514,5555,5597,5641,5688,5739,5791,5841,5889,5932,
+5973,6011,6049,6089,6130,6171,6211,6248,6281,6311,6339,6364,6388,6409,6428,6443,6453,6458,6459,6457,6452,
+6446,6439,6431,6423,6414,6404,6394,6384,6374,6364,6353,6342,6330,6318,6305,6290,6275,6257,6237,6214,6191,
+6166,6143,6122,6105,6091,6081,6074,6069,6067,6066,6065,6064,6061,6056,6048,6037,6025,6012,6000,5989,5980,
+5972,5965,5960,5956,5954,5955,5960,5967,5975,5982,5987,5988,5984,5976,5962,5945,5924,5901,5878,5855,5834,
+5813,5791,5767,5739,5707,5675,5646,5625,5615,5616,5624,5634,5639,5636,5624,5608,5591,5579,5574,5572,5569,
+5558,5535,5500,5456,5410,5370,5340,5322,5315,5314,5315,5313,5308,5298,5283,5262,5233,5196,5152,5101,5049,
+4999,4954,4917,4886,4858,4832,4822,4799,4775,4754,4736,4722,4711,4700,4682,4656,4620,4578,4536,4502,4480,
+4473,4478,4489,4500,4503,4496,4481,4463,4449,4445,4454,4475,4504,4530,4546,4543,4517,4469,4405,4332,4261,
+4197,4146,4107,4075,4045,4011,3969,3918,3859,3794,3725,3652,3576,3496,3415,3335,3261,3196,3143,3103,3072,
+3044,3014,2977,2933,2881,2826,2770,2716,2666,2617,2569,2520,2467,2411,2352,2289,2223,2156,2089,2026,1968,
+1920,1884,1861,1851,1852,1862,1877,1895,1912,1927,1938,1946,1950,1952,1951,1946,1937,1922,1901,1874,1841,
+1805,1768,1732,1699,1668,1641,1616,1594,1575,1559,1547,1539,1533,1528,1526,1527,1531,1540,1554,1570,1586,
+1598,1605,1605,1600,1593,1586,1581,1579,1579,1579,1580,1580,1583,1588,1597,1606,1612,1612,1602,1583,1553,
+1516,1473,1425,1375,1322,1269,1220,1179,1149,1133,1130,1139,1152,1165,1173,1174,1169,1160,1151,1142,1136,
+1133,1130,1129,1127,1126,1124,1123,1121,1120,1118,1116,1114,1111,1106,1097,1083,1062,1034,1000,962,922,
+883,847,813,783,756,733,715,703,697,695,696,696,693,684,670,651,628,603,576,547,517,
+485,454,425,401,381,366,353,337,314,283,244,201,158,120,88,60,34,6,-27,-66,-109,
+-151,-189,-221,-247,-268,-285,-298,-305,-304,-294,-278,-263,-258,-273,-315,-386,-482,-593,-706,-810,-896,
+-959,-1000,-1024,-1038,-1050,-1067,-1095,-1134,-1184,-1239,-1296,-1347,-1390,-1425,-1455,-1483,-1515,-1551,-1592,-1634,-1672,
+-1704,-1729,-1750,-1770,-1793,-1822,-1857,-1896,-1936,-1976,-2015,-2053,-2091,-2131,-2172,-2211,-2249,-2281,-2308,-2331,-2351,
+-2371,-2393,-2418,-2446,-2476,-2508,-2538,-2564,-2586,-2601,-2613,-2623,-2635,-2654,-2681,-2714,-2751,-2786,-2814,-2833,-2843,
+-2847,-2851,-2860,-2878,-2904,-2936,-2971,-3002,-3027,-3044,-3054,-3059,-3063,-3070,-3081,-3096,-3114,-3130,-3144,-3153,-3157,
+-3156,-3153,-3151,-3150,-3151,-3153,-3156,-3160,-3163,-3166,-3172,-3180,-3190,-3201,-3211,-3219,-3225,-3229,-3234,-3242,-3255,
+-3275,-3300,-3330,-3360,-3388,-3410,-3422,-3422,-3411,-3391,-3363,-3334,-3306,-3283,-3264,-3249,-3233,-3214,-3192,-3167,-3142,
+-3121,-3109,-3107,-3118,-3140,-3173,-3214,-3260,-3308,-3354,-3396,-3429,-3452,-3465,-3469,-3467,-3462,-3457,-3452,-3447,-3442,
+-3436,-3429,-3422,-3417,-3415,-3417,-3421,-3424,-3425,-3423,-3416,-3406,-3393,-3379,-3364,-3349,-3334,-3320,-3306,-3291,-3275,
+-3255,-3232,-3206,-3177,-3150,-3127,-3112,-3105,-3105,-3107,-3109,-3105,-3095,-3076,-3053,-3026,-2998,-2969,-2941,-2913,-2884,
+-2857,-2831,-2809,-2791,-2777,-2767,-2760,-2756,-2753,-2753,-2755,-2759,-2764,-2769,-2775,-2778,-2781,-2782,-2780,-2773,-2761,
+-2741,-2711,-2672,-2623,-2567,-2506,-2440,-2370,-2298,-2224,-2152,-2083,-2023,-1975,-1940,-1917,-1902,-1889,-1874,-1852,-1823,
+-1786,-1745,-1703,-1661,-1618,-1573,-1521,-1461,-1393,-1318,-1241,-1168,-1102,-1045,-996,-953,-911,-867,-821,-771,-721,
+-671,-623,-576,-532,-490,-449,-411,-378,-351,-331,-315,-302,-288,-270,-247,-217,-183,-146,-107,-68,-27,
+14,58,105,152,199,243,284,319,348,373,394,413,431,449,467,485,501,514,522,526,527,
+529,537,555,586,630,684,744,804,859,906,945,978,1007,1035,1065,1096,1127,1156,1181,1202,1218,
+1231,1242,1251,1258,1260,1257,1248,1238,1229,1227,1236,1256,1285,1318,1348,1369,1380,1382,1378,1374,1373,
+1379,1388,1399,1408,1413,1414,1414,1415,1419,1429,1444,1463,1484,1507,1530,1553,1577,1599,1620,1638,1652,
+1662,1668,1673,1677,1680,1682,1683,1681,1678,1673,1669,1666,1663,1659,1653,1642,1625,1603,1575,1546,1518,
+1492,1471,1456,1445,1437,1431,1424,1416,1406,1396,1385,1377,1374,1378,1391,1413,1443,1477,1510,1536,1549,
+1545,1523,1485,1438,1390,1349,1320,1307,1306,1312,1318,1320,1313,1298,1277,1254,1231,1209,1188,1167,1144,
+1118,1090,1058,1020,975,923,866,813,772,755,766,801,848,885,892,849,750,603,427,248,92,
+-22,-91,-118,-117,-104,-92,-88,-95,-109,-127,-145,-162,-176,-188,-196,-198,-195,-184,-167,-146,-123,
+-101,-82,-64,-48,-33,-19,-7,0,5,7,11,22,44,81,134,199,269,336,391,430,452,
+459,458,455,455,461,472,489,508,531,556,585,617,651,682,706,721,727,726,725,728,740,
+761,788,816,840,857,868,874,880,888,900,915,930,946,959,973,987,1004,1025,1049,1074,1099,
+1121,1139,1153,1164,1172,1178,1183,1186,1188,1188,1189,1191,1198,1209,1226,1246,1268,1288,1304,1317,1329,
+1343,1362,1387,1418,1451,1481,1504,1516,1519,1513,1503,1491,1480,1471,1466,1464,1466,1471,1480,1489,1499,
+1505,1509,1508,1504,1498,1492,1486,1479,1472,1464,1453,1438,1415,1380,1328,1257,1169,1074,985,921,897,
+918,981,1071,1169,1255,1315,1346,1352,1346,1338,1334,1337,1342,1343,1336,1318,1294,1267,1243,1224,1211,
+1201,1193,1185,1177,1169,1162,1153,1141,1125,1105,1081,1058,1038,1026,1023,1028,1039,1050,1058,1059,1054,
+1044,1035,1030,1035,1050,1074,1103,1130,1150,1156,1149,1129,1100,1067,1033,1000,967,935,901,865,827,
+787,746,706,666,628,593,561,532,505,479,450,418,384,348,314,284,259,238,218,194,164,
+127,87,45,5,-31,-64,-98,-133,-172,-213,-255,-294,-329,-358,-382,-402,-421,-442,-467,-501,-545,
+-604,-677,-763,-856,-948,-1032,-1099,-1148,-1178,-1194,-1202,-1210,-1222,-1241,-1267,-1301,-1342,-1388,-1438,-1490,-1542,
+-1590,-1630,-1663,-1689,-1711,-1732,-1759,-1792,-1833,-1881,-1932,-1986,-2038,-2090,-2139,-2188,-2235,-2282,-2329,-2376,-2423,
+-2471,-2519,-2568,-2618,-2668,-2716,-2762,-2805,-2845,-2881,-2914,-2944,-2971,-2995,-3016,-3036,-3053,-3070,-3087,-3104,-3123,
+-3143,-3163,-3183,-3202,-3221,-3240,-3263,-3289,-3321,-3358,-3396,-3433,-3465,-3491,-3511,-3527,-3544,-3563,-3586,-3614,-3645,
+-3679,-3715,-3753,-3794,-3838,-3884,-3929,-3969,-4003,-4029,-4049,-4067,-4086,-4109,-4136,-4164,-4191,-4215,-4234,-4251,-4269,
+-4289,-4316,-4347,-4383,-4420,-4456,-4492,-4526,-4559,-4591,-4621,-4649,-4676,-4702,-4728,-4755,-4785,-4817,-4849,-4879,-4905,
+-4924,-4938,-4946,-4950,-4949,-4943,-4932,-4915,-4893,-4868,-4842,-4815,-4787,-4760,-4732,-4704,-4676,-4651,-4633,-4622,-4621,
+-4627,-4639,-4654,-4668,-4681,-4691,-4698,-4701,-4699,-4691,-4675,-4652,-4621,-4586,-4547,-4509,-4473,-4439,-4408,-4382,-4359,
+-4340,-4324,-4309,-4294,-4279,-4263,-4248,-4236,-4229,-4229,-4233,-4239,-4242,-4235,-4215,-4182,-4134,-4076,-4010,-3939,-3864,
+-3785,-3703,-3620,-3537,-3457,-3381,-3312,-3249,-3192,-3139,-3088,-3040,-2993,-2946,-2900,-2855,-2811,-2768,-2728,-2690,-2654,
+-2621,-2590,-2561,-2533,-2506,-2480,-2454,-2429,-2403,-2375,-2344,-2310,-2272,-2232,-2190,-2146,-2101,-2053,-2002,-1948,-1890,
+-1827,-1760,-1688,-1607,-1518,-1418,-1308,-1191,-1071,-953,-842,-740,-649,-565,-486,-408,-330,-251,-172,-94,-18,
+54,124,189,250,305,351,389,420,450,481,520,568,626,690,756,818,875,925,972,1019,1070,
+1125,1186,1251,1317,1384,1451,1517,1584,1651,1717,1782,1845,1908,1970,2034,2100,2168,2236,2304,2370,2435,
+2499,2561,2621,2678,2729,2774,2814,2852,2891,2935,2986,3042,3101,3160,3219,3279,3344,3418,3503,3596,3691,
+3779,3856,3919,3970,4016,4065,4121,4183,4248,4310,4365,4412,4455,4500,4549,4605,4661,4713,4754,4780,4792,
+4796,4800,4810,4827,4850,4876,4901,4922,4940,4959,4982,5010,5043,5080,5118,5156,5194,5233,5274,5317,5363,
+5409,5454,5497,5539,5581,5626,5674,5726,5779,5830,5877,5920,5959,5996,6035,6076,6120,6164,6206,6245,6278,
+6308,6333,6357,6379,6400,6417,6429,6437,6439,6438,6434,6430,6426,6421,6415,6408,6399,6389,6378,6368,6358,
+6348,6337,6326,6313,6299,6286,6273,6261,6248,6232,6211,6186,6157,6127,6100,6079,6067,6062,6062,6065,6068,
+6068,6065,6061,6054,6047,6037,6025,6012,5998,5986,5976,5971,5970,5971,5973,5974,5974,5974,5975,5979,5986,
+5992,5995,5991,5979,5958,5930,5901,5872,5846,5825,5806,5788,5769,5747,5721,5692,5659,5625,5593,5565,5545,
+5535,5536,5545,5557,5568,5573,5570,5561,5550,5541,5538,5541,5548,5553,5550,5537,5513,5482,5449,5420,5399,
+5386,5378,5372,5363,5347,5323,5291,5250,5203,5151,5098,5045,4996,4953,4918,4890,4866,4844,4822,4801,4780,
+4759,4739,4722,4708,4697,4684,4666,4639,4603,4561,4520,4485,4464,4458,4466,4479,4490,4493,4484,4465,4443,
+4428,4426,4440,4468,4502,4531,4545,4537,4504,4450,4383,4312,4247,4192,4150,4118,4090,4059,4021,3972,3915,
+3850,3782,3712,3642,3570,3496,3420,3344,3270,3203,3144,3094,3052,3013,2975,2933,2887,2837,2787,2737,2689,
+2644,2600,2556,2509,2460,2407,2350,2291,2229,2166,2105,2047,1994,1948,1911,1882,1861,1848,1843,1845,1854,
+1869,1888,1908,1927,1941,1950,1953,1948,1935,1916,1890,1860,1827,1794,1763,1736,1713,1694,1676,1658,1639,
+1620,1603,1588,1576,1569,1566,1565,1568,1575,1584,1595,1606,1615,1619,1615,1605,1591,1577,1566,1561,1561,
+1566,1572,1579,1586,1593,1601,1609,1616,1619,1615,1603,1584,1558,1529,1498,1465,1429,1390,1345,1298,1253,
+1215,1189,1177,1180,1191,1206,1219,1225,1223,1213,1199,1184,1171,1162,1159,1160,1165,1171,1176,1180,1180,
+1176,1169,1159,1147,1133,1114,1090,1061,1025,984,941,899,861,827,799,776,757,742,729,719,712,
+708,706,704,701,695,684,669,650,627,602,573,543,511,478,445,416,390,370,355,341,326,
+306,279,245,205,165,126,92,61,33,2,-31,-70,-112,-155,-194,-228,-256,-278,-295,-306,-309,
+-304,-291,-273,-258,-255,-274,-322,-399,-501,-617,-735,-841,-927,-990,-1031,-1055,-1071,-1086,-1108,-1139,-1181,
+-1232,-1286,-1337,-1382,-1417,-1444,-1467,-1491,-1522,-1559,-1601,-1645,-1684,-1716,-1740,-1760,-1779,-1803,-1834,-1870,-1911,
+-1952,-1992,-2030,-2067,-2105,-2144,-2185,-2225,-2263,-2298,-2328,-2356,-2382,-2408,-2436,-2466,-2497,-2529,-2560,-2589,-2614,
+-2635,-2651,-2663,-2675,-2689,-2708,-2733,-2762,-2794,-2824,-2848,-2867,-2879,-2889,-2900,-2915,-2935,-2959,-2985,-3011,-3034,
+-3052,-3066,-3075,-3082,-3088,-3095,-3105,-3118,-3136,-3156,-3177,-3195,-3209,-3216,-3219,-3217,-3215,-3213,-3213,-3214,-3218,
+-3222,-3227,-3234,-3242,-3252,-3262,-3271,-3278,-3283,-3288,-3293,-3303,-3318,-3340,-3369,-3401,-3435,-3468,-3495,-3514,-3521,
+-3516,-3499,-3473,-3442,-3409,-3379,-3354,-3334,-3316,-3298,-3278,-3256,-3232,-3210,-3190,-3177,-3172,-3177,-3193,-3221,-3258,
+-3303,-3350,-3396,-3433,-3460,-3474,-3478,-3475,-3470,-3465,-3464,-3464,-3463,-3461,-3457,-3452,-3447,-3445,-3446,-3450,-3456,
+-3461,-3463,-3461,-3455,-3445,-3432,-3416,-3399,-3381,-3363,-3346,-3329,-3311,-3292,-3268,-3241,-3211,-3182,-3158,-3141,-3131,
+-3128,-3128,-3126,-3119,-3107,-3089,-3069,-3046,-3023,-3000,-2974,-2946,-2916,-2886,-2857,-2831,-2811,-2795,-2783,-2774,-2768,
+-2765,-2766,-2771,-2780,-2791,-2800,-2803,-2800,-2790,-2773,-2751,-2726,-2696,-2661,-2620,-2570,-2512,-2448,-2381,-2312,-2245,
+-2182,-2123,-2068,-2020,-1978,-1944,-1919,-1902,-1891,-1880,-1867,-1846,-1817,-1779,-1735,-1688,-1640,-1594,-1548,-1498,-1442,
+-1379,-1309,-1234,-1160,-1091,-1029,-974,-925,-879,-832,-782,-730,-678,-628,-581,-538,-497,-457,-416,-376,-338,
+-306,-281,-263,-249,-235,-218,-194,-163,-126,-85,-43,-2,37,77,118,161,205,249,291,328,359,
+383,401,416,432,451,474,503,535,565,589,605,613,615,616,624,643,676,722,778,835,890,
+936,972,1001,1024,1046,1071,1100,1133,1165,1195,1219,1236,1247,1252,1256,1260,1263,1266,1267,1264,1258,
+1251,1246,1247,1258,1277,1302,1329,1354,1373,1386,1393,1397,1401,1406,1411,1416,1419,1420,1419,1420,1423,
+1430,1443,1459,1477,1497,1517,1538,1560,1584,1610,1636,1660,1680,1696,1705,1710,1711,1709,1705,1700,1693,
+1685,1677,1669,1662,1655,1650,1644,1636,1625,1610,1590,1568,1544,1520,1499,1482,1469,1460,1452,1445,1437,
+1427,1417,1409,1403,1404,1413,1431,1458,1491,1528,1562,1589,1601,1594,1567,1523,1467,1410,1361,1328,1312,
+1312,1319,1327,1327,1319,1304,1286,1270,1258,1249,1237,1218,1186,1139,1078,1007,929,847,766,690,625,
+580,562,575,615,669,717,738,714,638,514,362,206,69,-32,-91,-114,-112,-101,-92,-89,-94,
+-103,-113,-122,-129,-136,-142,-148,-151,-148,-140,-125,-106,-86,-68,-53,-42,-32,-22,-11,0,9,
+16,19,19,22,32,57,101,163,237,314,384,437,469,481,479,472,466,468,478,494,513,
+534,557,582,612,645,680,711,735,749,756,759,764,774,792,816,842,865,883,896,907,918,
+931,947,964,980,994,1003,1010,1018,1027,1041,1058,1079,1101,1122,1142,1158,1171,1182,1190,1196,1200,
+1205,1209,1214,1220,1229,1241,1256,1273,1291,1308,1324,1339,1355,1373,1396,1424,1456,1486,1510,1525,1529,
+1523,1512,1499,1488,1482,1480,1481,1483,1487,1492,1499,1506,1514,1520,1523,1523,1520,1517,1514,1510,1504,
+1493,1475,1448,1412,1369,1318,1260,1198,1134,1075,1030,1008,1016,1054,1114,1184,1247,1291,1311,1309,1295,
+1281,1274,1278,1289,1300,1306,1303,1292,1277,1263,1252,1243,1233,1219,1200,1177,1152,1129,1108,1088,1066,
+1039,1007,972,939,915,904,907,918,932,939,933,910,874,830,787,757,746,758,791,841,897,
+950,994,1024,1038,1037,1025,1003,974,939,901,862,824,790,759,730,700,668,632,594,558,524,
+494,466,438,408,373,336,302,273,253,240,229,215,191,156,112,63,15,-26,-62,-96,-131,
+-172,-219,-270,-320,-365,-401,-426,-444,-459,-476,-502,-542,-597,-667,-749,-837,-925,-1004,-1069,-1117,-1150,
+-1171,-1185,-1198,-1214,-1234,-1260,-1291,-1327,-1368,-1415,-1465,-1516,-1565,-1607,-1641,-1665,-1684,-1702,-1724,-1753,-1792,
+-1837,-1886,-1934,-1979,-2019,-2054,-2087,-2120,-2153,-2190,-2230,-2276,-2326,-2380,-2437,-2496,-2553,-2608,-2660,-2708,-2754,
+-2798,-2840,-2878,-2913,-2943,-2969,-2992,-3013,-3034,-3056,-3079,-3103,-3126,-3148,-3167,-3186,-3204,-3225,-3249,-3277,-3308,
+-3342,-3375,-3405,-3430,-3449,-3462,-3474,-3486,-3502,-3523,-3551,-3582,-3616,-3651,-3687,-3724,-3764,-3806,-3850,-3892,-3931,
+-3963,-3988,-4010,-4030,-4053,-4079,-4110,-4140,-4168,-4191,-4210,-4225,-4242,-4263,-4290,-4323,-4360,-4399,-4437,-4474,-4510,
+-4544,-4576,-4607,-4634,-4660,-4685,-4712,-4742,-4775,-4812,-4850,-4885,-4915,-4936,-4950,-4957,-4957,-4954,-4945,-4933,-4916,
+-4896,-4873,-4849,-4824,-4799,-4773,-4747,-4720,-4694,-4672,-4656,-4647,-4646,-4652,-4663,-4675,-4689,-4702,-4714,-4724,-4730,
+-4730,-4722,-4705,-4680,-4649,-4615,-4580,-4546,-4514,-4484,-4455,-4429,-4408,-4392,-4382,-4376,-4372,-4365,-4355,-4342,-4327,
+-4314,-4307,-4304,-4304,-4301,-4289,-4262,-4220,-4163,-4096,-4023,-3947,-3869,-3791,-3711,-3630,-3550,-3473,-3402,-3339,-3285,
+-3238,-3195,-3155,-3115,-3073,-3028,-2982,-2933,-2885,-2837,-2793,-2753,-2717,-2686,-2657,-2630,-2603,-2574,-2545,-2516,-2488,
+-2462,-2438,-2414,-2387,-2355,-2316,-2270,-2216,-2156,-2090,-2020,-1948,-1876,-1805,-1735,-1664,-1589,-1508,-1418,-1319,-1212,
+-1103,-996,-895,-803,-720,-642,-566,-489,-409,-328,-246,-165,-88,-12,62,137,210,281,344,396,434,
+462,483,503,531,571,623,685,752,819,883,941,996,1049,1104,1161,1221,1282,1344,1406,1468,1531,
+1596,1663,1730,1798,1866,1932,1998,2064,2130,2196,2262,2327,2392,2456,2518,2578,2634,2685,2731,2774,2817,
+2864,2918,2978,3043,3106,3165,3218,3268,3320,3382,3460,3552,3655,3759,3854,3933,3996,4046,4089,4133,4180,
+4232,4287,4343,4397,4450,4504,4558,4612,4662,4704,4734,4753,4762,4768,4776,4789,4809,4833,4860,4887,4914,
+4941,4969,5001,5035,5070,5106,5140,5174,5209,5247,5289,5335,5383,5431,5476,5520,5564,5609,5658,5710,5764,
+5816,5864,5907,5946,5983,6021,6062,6107,6153,6198,6238,6273,6302,6326,6348,6369,6389,6406,6420,6428,6430,
+6428,6422,6416,6411,6408,6405,6400,6393,6383,6370,6357,6344,6332,6321,6310,6297,6283,6269,6255,6243,6232,
+6221,6206,6186,6159,6129,6098,6072,6055,6049,6052,6060,6067,6069,6065,6056,6044,6032,6022,6013,6006,5999,
+5993,5988,5987,5991,5997,6004,6010,6010,6006,6000,5994,5992,5993,5994,5991,5979,5955,5918,5874,5829,5789,
+5757,5733,5716,5701,5685,5667,5647,5627,5608,5592,5579,5566,5554,5543,5534,5527,5522,5520,5517,5514,5509,
+5505,5504,5510,5524,5544,5565,5582,5589,5582,5562,5534,5502,5471,5446,5425,5406,5385,5358,5322,5277,5224,
+5167,5109,5053,5002,4957,4919,4888,4863,4841,4821,4801,4755,4739,4725,4713,4701,4690,4678,4663,4643,4616,
+4581,4542,4502,4470,4451,4446,4454,4467,4477,4478,4466,4447,4426,4415,4419,4442,4477,4515,4543,4550,4531,
+4486,4423,4352,4283,4223,4177,4144,4117,4090,4058,4016,3963,3900,3832,3762,3692,3623,3556,3488,3420,3351,
+3282,3215,3153,3096,3045,2997,2952,2908,2864,2819,2775,2731,2688,2644,2601,2556,2510,2463,2414,2363,2310,
+2255,2199,2144,2091,2042,1996,1955,1915,1879,1848,1823,1810,1810,1823,1848,1879,1911,1939,1958,1966,1964,
+1953,1933,1907,1877,1844,1813,1784,1761,1743,1729,1717,1703,1688,1670,1652,1635,1621,1611,1605,1603,1602,
+1604,1607,1610,1613,1613,1609,1599,1585,1568,1553,1542,1537,1539,1546,1558,1571,1585,1600,1615,1629,1639,
+1642,1635,1620,1597,1571,1545,1521,1499,1477,1451,1419,1381,1340,1301,1272,1254,1249,1255,1265,1275,1278,
+1273,1259,1241,1223,1208,1201,1202,1210,1222,1234,1241,1240,1231,1214,1192,1167,1141,1115,1086,1054,1018,
+978,937,897,861,830,806,788,773,761,749,740,731,725,720,715,710,704,694,680,662,642,
+618,592,565,536,506,476,445,415,386,361,337,317,297,276,253,226,195,162,129,96,66,
+35,2,-33,-73,-116,-159,-199,-235,-264,-287,-304,-315,-318,-313,-300,-283,-270,-270,-292,-342,-421,
+-523,-638,-751,-853,-935,-995,-1037,-1065,-1088,-1111,-1140,-1177,-1222,-1272,-1323,-1372,-1413,-1447,-1474,-1496,-1520,
+-1547,-1580,-1618,-1656,-1693,-1724,-1751,-1775,-1800,-1828,-1862,-1899,-1937,-1975,-2011,-2046,-2081,-2117,-2157,-2198,-2239,
+-2279,-2316,-2352,-2385,-2419,-2453,-2486,-2519,-2551,-2580,-2608,-2633,-2657,-2679,-2698,-2716,-2734,-2752,-2772,-2794,-2818,
+-2842,-2863,-2881,-2897,-2912,-2928,-2946,-2967,-2989,-3010,-3028,-3043,-3056,-3069,-3082,-3096,-3110,-3123,-3133,-3143,-3154,
+-3169,-3188,-3210,-3234,-3256,-3271,-3280,-3282,-3279,-3274,-3270,-3268,-3268,-3272,-3279,-3288,-3299,-3311,-3322,-3330,-3336,
+-3338,-3339,-3342,-3350,-3363,-3385,-3413,-3446,-3482,-3519,-3553,-3581,-3600,-3607,-3600,-3579,-3549,-3513,-3475,-3441,-3412,
+-3389,-3369,-3351,-3333,-3314,-3294,-3273,-3255,-3241,-3235,-3237,-3251,-3277,-3313,-3354,-3396,-3433,-3460,-3475,-3480,-3479,
+-3476,-3475,-3478,-3484,-3490,-3494,-3495,-3493,-3490,-3488,-3489,-3493,-3499,-3506,-3511,-3514,-3511,-3504,-3491,-3472,-3449,
+-3424,-3397,-3372,-3348,-3325,-3302,-3277,-3249,-3221,-3194,-3171,-3154,-3144,-3139,-3137,-3132,-3124,-3111,-3095,-3078,-3061,
+-3044,-3026,-3005,-2980,-2951,-2919,-2888,-2860,-2836,-2816,-2800,-2788,-2779,-2776,-2777,-2784,-2795,-2805,-2809,-2804,-2787,
+-2758,-2721,-2679,-2634,-2588,-2541,-2489,-2431,-2368,-2300,-2232,-2167,-2110,-2061,-2020,-1985,-1956,-1930,-1908,-1890,-1878,
+-1869,-1862,-1853,-1837,-1810,-1773,-1727,-1675,-1621,-1569,-1519,-1471,-1421,-1366,-1304,-1235,-1162,-1090,-1022,-960,-905,
+-852,-801,-750,-697,-645,-596,-552,-512,-475,-437,-398,-357,-315,-276,-241,-212,-187,-163,-138,-109,-75,
+-38,0,35,67,97,125,155,189,227,268,309,348,382,411,434,454,474,499,529,564,602,
+638,668,688,699,704,708,717,738,770,814,864,914,960,997,1026,1050,1071,1094,1121,1152,1186,
+1218,1244,1263,1273,1274,1271,1268,1266,1268,1274,1279,1283,1282,1277,1270,1264,1264,1272,1287,1308,1331,
+1352,1370,1384,1395,1404,1412,1419,1423,1426,1426,1427,1429,1435,1447,1464,1485,1508,1531,1554,1576,1599,
+1623,1648,1674,1698,1718,1732,1741,1744,1743,1738,1732,1723,1713,1701,1688,1673,1659,1647,1637,1630,1624,
+1619,1612,1602,1588,1571,1552,1534,1517,1503,1491,1481,1472,1465,1459,1456,1457,1462,1473,1489,1509,1533,
+1559,1586,1612,1632,1642,1637,1613,1571,1515,1454,1399,1358,1336,1330,1335,1343,1347,1343,1333,1320,1308,
+1298,1286,1268,1236,1185,1115,1029,934,837,744,660,587,528,489,475,487,523,574,623,652,644,
+593,500,380,253,138,48,-9,-39,-50,-53,-54,-58,-64,-71,-76,-80,-83,-88,-95,-102,-108,
+-108,-99,-84,-64,-43,-26,-15,-10,-9,-8,-4,4,15,26,34,35,33,33,42,69,118,
+188,270,353,424,474,500,506,501,495,494,501,514,531,549,567,588,612,643,678,713,744,
+767,781,790,798,808,824,844,865,885,902,915,928,943,960,979,998,1016,1030,1039,1047,1053,
+1060,1069,1080,1094,1109,1126,1144,1162,1179,1194,1206,1215,1223,1231,1239,1248,1257,1267,1277,1287,1299,
+1312,1328,1346,1366,1386,1408,1432,1456,1480,1502,1519,1528,1530,1525,1516,1508,1502,1498,1497,1496,1495,
+1495,1496,1501,1510,1520,1530,1537,1540,1540,1539,1536,1531,1522,1504,1476,1435,1385,1329,1274,1222,1177,
+1139,1110,1091,1085,1094,1118,1152,1188,1217,1234,1238,1233,1227,1227,1236,1252,1270,1283,1288,1284,1277,
+1269,1265,1261,1255,1239,1210,1169,1120,1072,1028,993,964,936,906,874,840,812,796,795,809,831,
+854,868,867,847,812,767,720,679,651,639,644,665,700,743,793,845,896,939,970,981,970,
+936,885,825,768,721,689,671,660,650,633,608,576,541,506,473,441,407,370,332,296,267,
+249,239,233,223,202,165,117,63,11,-32,-67,-96,-124,-160,-205,-257,-313,-365,-407,-439,-462,
+-483,-508,-543,-593,-658,-735,-818,-901,-976,-1039,-1087,-1122,-1146,-1165,-1182,-1201,-1223,-1247,-1274,-1304,-1338,
+-1378,-1425,-1478,-1532,-1583,-1626,-1659,-1682,-1701,-1719,-1743,-1775,-1815,-1858,-1900,-1938,-1968,-1991,-2009,-2025,-2041,
+-2061,-2087,-2120,-2163,-2215,-2276,-2345,-2416,-2486,-2551,-2611,-2665,-2716,-2763,-2809,-2852,-2891,-2924,-2953,-2977,-3001,
+-3025,-3052,-3082,-3112,-3140,-3165,-3187,-3206,-3226,-3249,-3275,-3304,-3335,-3364,-3388,-3406,-3418,-3425,-3430,-3437,-3450,
+-3468,-3492,-3521,-3553,-3584,-3614,-3645,-3676,-3710,-3748,-3788,-3829,-3867,-3901,-3931,-3957,-3982,-4009,-4040,-4072,-4104,
+-4134,-4160,-4182,-4202,-4224,-4249,-4279,-4313,-4349,-4386,-4421,-4456,-4491,-4525,-4559,-4593,-4624,-4653,-4682,-4712,-4745,
+-4782,-4822,-4862,-4899,-4928,-4949,-4960,-4963,-4960,-4953,-4943,-4930,-4915,-4898,-4879,-4860,-4840,-4819,-4797,-4773,-4749,
+-4727,-4709,-4696,-4690,-4689,-4693,-4699,-4706,-4713,-4723,-4733,-4743,-4750,-4751,-4743,-4725,-4699,-4668,-4636,-4605,-4577,
+-4550,-4523,-4498,-4474,-4456,-4445,-4441,-4443,-4445,-4442,-4430,-4411,-4387,-4364,-4349,-4342,-4340,-4338,-4326,-4298,-4251,
+-4189,-4115,-4036,-3956,-3878,-3802,-3727,-3652,-3580,-3511,-3450,-3396,-3351,-3311,-3275,-3238,-3199,-3157,-3111,-3062,-3012,
+-2960,-2909,-2862,-2818,-2780,-2748,-2719,-2692,-2665,-2635,-2605,-2574,-2546,-2522,-2501,-2482,-2461,-2435,-2399,-2353,-2295,
+-2227,-2152,-2071,-1989,-1907,-1829,-1754,-1682,-1611,-1537,-1457,-1369,-1273,-1172,-1070,-972,-878,-792,-712,-635,-558,
+-480,-401,-322,-242,-163,-84,-4,79,164,248,325,390,438,469,486,496,509,532,571,625,691,
+762,834,903,967,1027,1085,1141,1197,1252,1306,1359,1413,1470,1533,1601,1673,1748,1823,1896,1967,2035,
+2102,2166,2230,2291,2352,2410,2468,2526,2581,2636,2688,2740,2793,2849,2912,2979,3050,3120,3185,3243,3297,
+3350,3410,3482,3566,3657,3749,3834,3904,3960,4004,4045,4088,4138,4196,4260,4326,4390,4451,4508,4561,4608,
+4649,4682,4706,4723,4735,4746,4759,4777,4799,4825,4852,4882,4913,4946,4982,5021,5059,5096,5131,5162,5194,
+5227,5264,5307,5354,5403,5452,5499,5545,5592,5641,5692,5745,5798,5847,5892,5933,5973,6012,6054,6099,6146,
+6190,6231,6265,6293,6316,6335,6354,6373,6391,6406,6417,6422,6420,6415,6407,6400,6395,6391,6388,6383,6376,
+6365,6352,6337,6323,6309,6297,6285,6272,6258,6242,6227,6213,6201,6188,6174,6155,6132,6106,6082,6063,6053,
+6053,6058,6064,6067,6062,6049,6033,6016,6005,6000,6002,6006,6012,6017,6022,6027,6034,6041,6045,6044,6036,
+6021,6002,5986,5976,5972,5972,5969,5956,5928,5885,5832,5777,5726,5686,5657,5636,5619,5604,5591,5582,5579,
+5585,5598,5612,5622,5621,5608,5584,5554,5524,5500,5484,5478,5480,5488,5500,5517,5539,5563,5588,5607,5616,
+5612,5593,5563,5526,5489,5456,5428,5404,5379,5349,5311,5264,5210,5152,5094,5039,4988,4940,4898,4859,4826,
+4797,4774,4755,4707,4696,4691,4687,4682,4673,4661,4644,4622,4595,4564,4529,4495,4466,4449,4444,4449,4459,
+4466,4463,4450,4431,4413,4406,4416,4444,4483,4520,4543,4542,4513,4460,4393,4322,4259,4208,4170,4142,4117,
+4088,4052,4004,3946,3880,3809,3737,3666,3599,3534,3472,3411,3350,3290,3230,3171,3114,3061,3012,2966,2924,
+2883,2844,2804,2762,2719,2674,2627,2580,2533,2486,2438,2389,2339,2286,2231,2178,2126,2076,2029,1983,1936,
+1890,1847,1811,1789,1786,1801,1832,1872,1914,1950,1975,1987,1989,1980,1965,1944,1918,1890,1860,1832,1807,
+1787,1772,1759,1746,1732,1716,1698,1680,1665,1652,1641,1631,1622,1613,1604,1596,1587,1579,1569,1557,1543,
+1530,1518,1511,1510,1516,1528,1546,1569,1594,1620,1646,1669,1683,1687,1678,1658,1630,1598,1569,1545,1526,
+1510,1493,1471,1444,1413,1382,1355,1336,1327,1324,1326,1326,1323,1313,1297,1278,1261,1248,1244,1249,1260,
+1274,1285,1286,1276,1254,1222,1185,1148,1114,1082,1052,1022,990,956,923,893,867,846,830,816,803,
+788,773,759,747,737,729,722,715,706,693,677,657,633,607,580,552,525,498,472,446,418,
+389,358,327,297,270,244,221,197,172,145,117,88,59,29,-2,-37,-76,-117,-158,-196,-229,
+-257,-278,-294,-305,-311,-310,-302,-292,-285,-291,-318,-370,-449,-547,-655,-760,-851,-924,-979,-1019,-1052,
+-1084,-1119,-1158,-1202,-1250,-1299,-1348,-1394,-1436,-1471,-1501,-1527,-1551,-1576,-1604,-1635,-1669,-1703,-1736,-1768,-1799,
+-1832,-1866,-1902,-1938,-1973,-2006,-2039,-2071,-2106,-2143,-2184,-2225,-2266,-2305,-2341,-2377,-2414,-2451,-2490,-2528,-2564,
+-2597,-2625,-2651,-2674,-2697,-2720,-2743,-2765,-2786,-2807,-2828,-2849,-2868,-2885,-2899,-2912,-2925,-2942,-2963,-2989,-3016,
+-3042,-3061,-3075,-3083,-3090,-3101,-3117,-3139,-3162,-3183,-3198,-3207,-3213,-3219,-3231,-3248,-3271,-3295,-3317,-3333,-3341,
+-3344,-3343,-3340,-3339,-3339,-3341,-3347,-3356,-3366,-3377,-3387,-3393,-3396,-3395,-3394,-3395,-3400,-3412,-3431,-3454,-3481,
+-3511,-3543,-3575,-3607,-3635,-3654,-3662,-3655,-3634,-3603,-3565,-3527,-3491,-3461,-3435,-3413,-3392,-3371,-3351,-3331,-3313,
+-3298,-3289,-3286,-3292,-3308,-3333,-3363,-3395,-3424,-3447,-3461,-3468,-3471,-3474,-3479,-3489,-3501,-3515,-3527,-3536,-3542,
+-3545,-3547,-3549,-3552,-3556,-3560,-3563,-3565,-3563,-3557,-3545,-3526,-3501,-3470,-3436,-3400,-3365,-3332,-3300,-3270,-3241,
+-3214,-3191,-3174,-3162,-3157,-3154,-3152,-3146,-3137,-3124,-3108,-3092,-3077,-3062,-3048,-3030,-3009,-2983,-2954,-2924,-2895,
+-2868,-2845,-2825,-2808,-2795,-2788,-2786,-2789,-2793,-2795,-2788,-2769,-2736,-2691,-2637,-2579,-2519,-2459,-2400,-2339,-2277,
+-2213,-2150,-2091,-2040,-1998,-1966,-1942,-1925,-1910,-1897,-1885,-1875,-1866,-1860,-1854,-1846,-1830,-1805,-1769,-1722,-1668,
+-1611,-1555,-1504,-1456,-1408,-1356,-1296,-1227,-1151,-1073,-996,-926,-864,-810,-759,-711,-663,-616,-572,-531,-494,
+-459,-425,-387,-346,-301,-255,-210,-169,-131,-96,-61,-26,8,42,73,98,120,138,157,179,207,
+242,283,328,373,415,454,489,521,552,584,617,652,686,717,742,759,770,777,786,800,822,
+854,893,935,976,1011,1041,1066,1089,1112,1138,1168,1201,1234,1263,1287,1302,1308,1306,1299,1292,1288,
+1288,1291,1296,1299,1298,1291,1281,1272,1266,1267,1276,1290,1307,1324,1339,1353,1366,1379,1392,1404,1414,
+1422,1427,1430,1435,1443,1457,1478,1503,1530,1558,1586,1612,1637,1662,1686,1710,1730,1746,1756,1761,1760,
+1757,1751,1745,1737,1726,1713,1697,1679,1660,1644,1632,1625,1622,1622,1621,1618,1611,1601,1587,1572,1558,
+1545,1534,1525,1518,1514,1514,1520,1531,1547,1566,1585,1603,1619,1633,1647,1662,1676,1684,1682,1664,1628,
+1576,1516,1458,1413,1386,1376,1378,1384,1385,1376,1357,1330,1299,1267,1233,1192,1141,1077,1001,918,833,
+754,683,623,572,532,504,493,502,531,573,616,646,647,612,541,443,332,226,137,72,29,
+5,-8,-16,-22,-26,-29,-31,-32,-34,-38,-45,-52,-59,-60,-55,-43,-27,-10,3,12,14,
+11,7,6,11,22,37,48,53,49,39,32,39,70,129,211,305,398,473,524,550,557,
+556,555,559,568,581,593,605,617,634,659,690,724,757,784,803,816,827,838,852,870,887,
+903,916,928,940,955,973,992,1012,1030,1045,1058,1070,1082,1093,1104,1114,1123,1133,1144,1159,1177,
+1195,1213,1227,1239,1247,1256,1265,1277,1289,1301,1311,1320,1329,1341,1358,1379,1403,1427,1449,1467,1482,
+1494,1504,1513,1520,1525,1527,1527,1527,1525,1523,1518,1511,1504,1497,1495,1499,1510,1523,1537,1546,1550,
+1550,1547,1543,1538,1527,1508,1475,1429,1373,1316,1263,1220,1188,1164,1144,1126,1110,1098,1093,1096,1106,
+1120,1136,1151,1167,1186,1210,1237,1263,1282,1290,1287,1275,1260,1246,1234,1219,1196,1159,1106,1041,972,
+909,858,821,794,772,749,724,701,685,682,694,719,752,786,813,831,836,830,814,789,757,
+719,678,637,601,580,579,605,659,735,821,902,958,976,950,887,801,713,641,598,584,592,
+607,617,611,589,553,512,469,427,386,345,306,270,242,225,216,212,203,183,148,102,49,
+0,-42,-74,-99,-124,-156,-197,-245,-297,-346,-387,-420,-447,-475,-512,-561,-624,-698,-780,-861,-936,
+-1001,-1053,-1093,-1126,-1153,-1178,-1203,-1229,-1254,-1277,-1300,-1324,-1353,-1390,-1437,-1492,-1551,-1606,-1654,-1691,-1718,
+-1739,-1760,-1785,-1815,-1848,-1882,-1912,-1936,-1952,-1963,-1971,-1979,-1988,-2001,-2020,-2046,-2083,-2134,-2197,-2272,-2353,
+-2435,-2511,-2580,-2641,-2695,-2745,-2792,-2838,-2879,-2916,-2946,-2973,-2997,-3023,-3052,-3084,-3117,-3149,-3178,-3202,-3224,
+-3245,-3267,-3290,-3315,-3337,-3356,-3370,-3379,-3385,-3390,-3398,-3411,-3428,-3450,-3474,-3499,-3524,-3546,-3567,-3588,-3611,
+-3638,-3670,-3707,-3747,-3788,-3828,-3865,-3899,-3932,-3964,-3997,-4030,-4062,-4092,-4119,-4144,-4169,-4196,-4226,-4259,-4294,
+-4330,-4365,-4399,-4433,-4468,-4504,-4542,-4580,-4617,-4652,-4685,-4719,-4754,-4790,-4829,-4865,-4898,-4923,-4940,-4949,-4951,
+-4948,-4941,-4932,-4920,-4908,-4895,-4881,-4868,-4855,-4841,-4826,-4808,-4790,-4772,-4759,-4750,-4746,-4745,-4746,-4746,-4746,
+-4746,-4749,-4754,-4761,-4767,-4767,-4759,-4742,-4717,-4687,-4657,-4629,-4604,-4581,-4558,-4537,-4518,-4505,-4499,-4501,-4505,
+-4507,-4499,-4479,-4449,-4415,-4386,-4369,-4365,-4369,-4373,-4366,-4339,-4290,-4221,-4141,-4057,-3974,-3897,-3824,-3754,-3685,
+-3620,-3559,-3505,-3459,-3419,-3383,-3348,-3310,-3269,-3225,-3179,-3132,-3085,-3037,-2989,-2942,-2896,-2854,-2817,-2784,-2753,
+-2724,-2696,-2668,-2642,-2619,-2600,-2584,-2568,-2548,-2520,-2480,-2428,-2365,-2292,-2213,-2131,-2047,-1964,-1883,-1805,-1730,
+-1657,-1585,-1509,-1429,-1341,-1246,-1145,-1043,-942,-848,-760,-680,-606,-535,-464,-392,-317,-238,-154,-65,27,
+122,216,302,376,431,467,485,493,499,512,539,582,640,708,780,851,919,985,1048,1109,1168,
+1224,1276,1325,1373,1425,1484,1550,1624,1704,1785,1864,1941,2013,2082,2148,2211,2270,2326,2380,2433,2487,
+2543,2602,2662,2724,2786,2850,2915,2983,3054,3127,3200,3271,3340,3408,3476,3545,3615,3684,3746,3799,3843,
+3879,3916,3958,4012,4079,4156,4238,4318,4391,4455,4509,4553,4591,4622,4648,4670,4689,4707,4726,4747,4772,
+4799,4827,4857,4888,4920,4955,4993,5032,5070,5107,5142,5176,5210,5248,5290,5336,5384,5434,5483,5532,5579,
+5627,5677,5727,5776,5824,5870,5914,5957,6001,6047,6094,6141,6185,6224,6257,6284,6306,6325,6342,6359,6376,
+6389,6399,6404,6404,6399,6391,6383,6375,6369,6365,6361,6356,6349,6338,6325,6311,6296,6282,6270,6258,6245,
+6232,6216,6199,6182,6166,6150,6135,6120,6104,6089,6076,6067,6064,6066,6068,6068,6062,6050,6033,6017,6005,
+6003,6009,6021,6035,6047,6054,6056,6056,6053,6049,6042,6030,6010,5985,5959,5937,5925,5923,5927,5930,5922,
+5899,5858,5805,5747,5694,5651,5618,5595,5577,5561,5549,5544,5549,5568,5596,5627,5651,5659,5646,5614,5572,
+5528,5494,5477,5477,5492,5516,5542,5567,5588,5604,5613,5616,5609,5592,5564,5529,5491,5455,5424,5400,5380,
+5360,5335,5301,5259,5209,5156,5102,5048,4996,4944,4892,4841,4794,4755,4726,4707,4692,4682,4679,4677,4672,
+4661,4646,4626,4604,4579,4553,4525,4497,4472,4454,4446,4446,4451,4454,4450,4439,4422,4408,4405,4418,4445,
+4480,4511,4526,4516,4481,4425,4360,4296,4241,4198,4166,4139,4111,4077,4033,3979,3917,3849,3778,3707,3638,
+3572,3511,3454,3399,3346,3293,3241,3189,3138,3091,3047,3006,2968,2932,2895,2857,2816,2772,2725,2676,2627,
+2577,2527,2475,2422,2365,2306,2246,2188,2133,2084,2037,1992,1946,1900,1857,1821,1799,1796,1813,1846,1887,
+1929,1964,1988,2000,2003,2000,1992,1980,1965,1944,1919,1892,1865,1842,1822,1806,1792,1777,1760,1742,1723,
+1705,1687,1670,1651,1631,1609,1587,1566,1547,1531,1517,1506,1496,1488,1482,1481,1486,1499,1519,1546,1577,
+1612,1647,1678,1704,1719,1721,1709,1686,1654,1620,1588,1562,1541,1525,1509,1492,1472,1449,1426,1405,1388,
+1377,1371,1367,1364,1358,1349,1335,1320,1304,1291,1284,1284,1289,1295,1296,1289,1269,1239,1200,1159,1120,
+1086,1057,1031,1007,982,956,932,910,893,878,865,851,834,815,794,775,758,745,736,727,718,
+707,692,673,651,626,598,568,539,511,485,461,438,414,386,355,321,286,253,222,195,169,
+144,119,92,65,39,12,-16,-47,-82,-119,-157,-191,-220,-242,-260,-274,-285,-295,-301,-303,-302,
+-304,-315,-345,-399,-476,-570,-672,-768,-850,-914,-962,-1000,-1037,-1076,-1122,-1171,-1222,-1272,-1319,-1363,-1404,
+-1443,-1479,-1513,-1543,-1571,-1599,-1626,-1656,-1689,-1725,-1762,-1801,-1839,-1878,-1916,-1953,-1987,-2019,-2049,-2079,-2111,
+-2147,-2185,-2225,-2264,-2301,-2334,-2365,-2397,-2432,-2470,-2511,-2554,-2594,-2630,-2662,-2690,-2714,-2737,-2760,-2781,-2801,
+-2822,-2842,-2863,-2883,-2902,-2918,-2931,-2943,-2955,-2973,-2997,-3027,-3059,-3089,-3110,-3123,-3129,-3134,-3144,-3163,-3189,
+-3218,-3244,-3262,-3270,-3272,-3271,-3274,-3285,-3304,-3328,-3352,-3374,-3390,-3402,-3410,-3415,-3418,-3420,-3423,-3426,-3431,
+-3437,-3444,-3449,-3452,-3452,-3450,-3448,-3450,-3456,-3468,-3484,-3501,-3518,-3535,-3554,-3576,-3603,-3633,-3661,-3682,-3692,
+-3689,-3673,-3647,-3615,-3581,-3549,-3518,-3488,-3460,-3434,-3410,-3389,-3371,-3359,-3350,-3347,-3349,-3356,-3368,-3385,-3404,
+-3424,-3442,-3457,-3470,-3480,-3491,-3503,-3517,-3533,-3550,-3567,-3583,-3597,-3608,-3615,-3619,-3619,-3618,-3615,-3611,-3607,
+-3603,-3597,-3588,-3573,-3551,-3521,-3484,-3441,-3396,-3351,-3307,-3268,-3235,-3209,-3190,-3180,-3177,-3179,-3181,-3182,-3178,
+-3169,-3155,-3138,-3121,-3104,-3089,-3074,-3058,-3040,-3018,-2992,-2965,-2936,-2907,-2880,-2854,-2831,-2812,-2797,-2787,-2779,
+-2770,-2757,-2737,-2705,-2660,-2606,-2543,-2474,-2404,-2335,-2266,-2200,-2138,-2081,-2030,-1988,-1954,-1928,-1910,-1897,-1888,
+-1882,-1878,-1876,-1875,-1872,-1866,-1855,-1839,-1814,-1781,-1741,-1694,-1643,-1591,-1539,-1490,-1442,-1393,-1338,-1275,-1201,
+-1119,-1034,-951,-875,-811,-757,-712,-672,-633,-593,-553,-514,-476,-439,-402,-362,-318,-271,-221,-173,-127,
+-84,-45,-8,26,58,88,114,136,154,172,192,217,249,287,331,378,426,474,520,564,604,
+643,678,711,741,767,788,804,816,826,836,850,871,898,931,967,1003,1036,1064,1088,1110,1131,
+1155,1181,1209,1240,1270,1297,1319,1334,1341,1342,1338,1332,1326,1322,1319,1316,1310,1300,1287,1273,1261,
+1254,1254,1260,1271,1283,1295,1305,1315,1326,1339,1355,1373,1389,1402,1412,1420,1427,1438,1454,1475,1501,
+1530,1559,1588,1615,1642,1668,1693,1716,1735,1748,1755,1757,1753,1748,1741,1733,1725,1715,1703,1687,1670,
+1654,1640,1632,1630,1632,1636,1639,1639,1635,1626,1616,1606,1598,1592,1588,1587,1587,1590,1596,1607,1621,
+1637,1652,1663,1671,1675,1679,1686,1696,1710,1720,1722,1708,1675,1627,1571,1517,1475,1449,1438,1434,1429,
+1411,1377,1327,1265,1199,1133,1071,1013,956,900,845,793,746,705,672,642,614,588,566,553,555,
+574,608,646,676,683,659,599,511,405,298,201,124,70,38,21,15,15,15,15,14,12,
+9,6,3,0,-3,-6,-8,-8,-6,-2,2,7,10,11,11,12,19,32,51,68,78,
+76,62,43,30,39,79,152,248,353,449,523,570,593,602,607,614,624,636,645,652,657,
+666,683,707,737,767,794,814,829,841,854,870,887,903,917,927,937,947,961,977,996,1014,
+1029,1044,1058,1075,1094,1113,1131,1145,1154,1161,1169,1180,1196,1215,1234,1249,1259,1266,1273,1283,1296,
+1312,1328,1342,1353,1363,1376,1394,1417,1443,1468,1488,1501,1508,1511,1513,1517,1523,1529,1536,1540,1541,
+1540,1535,1527,1517,1507,1500,1498,1503,1514,1528,1541,1549,1550,1548,1545,1542,1539,1533,1516,1486,1441,
+1386,1329,1278,1238,1208,1183,1157,1125,1090,1055,1028,1016,1020,1040,1070,1108,1148,1189,1228,1262,1287,
+1298,1294,1276,1246,1212,1175,1137,1095,1045,983,913,842,777,727,696,680,672,665,654,638,621,
+611,611,624,646,674,702,729,753,776,796,813,821,814,789,743,680,611,549,509,503,539,
+614,714,818,900,940,925,859,758,650,559,505,491,508,540,567,575,558,520,470,418,369,
+326,288,254,224,200,184,175,169,160,143,115,78,35,-6,-42,-73,-100,-130,-166,-209,-255,
+-301,-340,-371,-395,-418,-446,-486,-541,-609,-687,-767,-844,-914,-975,-1028,-1075,-1118,-1159,-1198,-1235,-1268,
+-1295,-1317,-1337,-1358,-1384,-1420,-1467,-1521,-1579,-1635,-1683,-1722,-1752,-1776,-1799,-1823,-1850,-1878,-1903,-1925,-1941,
+-1953,-1962,-1972,-1982,-1994,-2008,-2024,-2046,-2078,-2122,-2182,-2255,-2337,-2422,-2502,-2573,-2634,-2687,-2735,-2781,-2825,
+-2867,-2906,-2939,-2967,-2992,-3017,-3044,-3074,-3105,-3137,-3167,-3194,-3217,-3238,-3258,-3276,-3292,-3305,-3315,-3322,-3330,
+-3340,-3354,-3373,-3396,-3420,-3443,-3463,-3479,-3493,-3504,-3515,-3527,-3544,-3566,-3594,-3628,-3668,-3711,-3755,-3799,-3840,
+-3879,-3916,-3950,-3982,-4012,-4040,-4067,-4094,-4122,-4152,-4185,-4221,-4258,-4296,-4332,-4368,-4404,-4442,-4481,-4521,-4561,
+-4600,-4637,-4673,-4708,-4743,-4777,-4811,-4842,-4869,-4889,-4904,-4913,-4917,-4918,-4916,-4911,-4904,-4895,-4885,-4876,-4869,
+-4863,-4857,-4850,-4840,-4829,-4818,-4809,-4803,-4800,-4799,-4797,-4792,-4787,-4781,-4777,-4778,-4781,-4785,-4784,-4777,-4761,
+-4737,-4709,-4681,-4656,-4634,-4614,-4596,-4579,-4566,-4558,-4557,-4561,-4564,-4560,-4543,-4511,-4470,-4429,-4396,-4380,-4382,
+-4394,-4404,-4400,-4373,-4322,-4250,-4168,-4084,-4004,-3931,-3862,-3796,-3731,-3668,-3610,-3558,-3514,-3477,-3441,-3404,-3364,
+-3320,-3275,-3231,-3189,-3149,-3110,-3070,-3027,-2982,-2937,-2894,-2854,-2818,-2786,-2757,-2733,-2714,-2701,-2691,-2682,-2669,
+-2646,-2610,-2559,-2494,-2419,-2340,-2260,-2180,-2103,-2025,-1948,-1869,-1791,-1713,-1637,-1561,-1482,-1398,-1306,-1207,-1101,
+-994,-892,-798,-717,-649,-588,-531,-472,-405,-328,-240,-142,-36,71,177,274,358,423,466,490,499,
+503,509,527,559,606,664,727,793,859,925,992,1061,1129,1195,1255,1309,1359,1408,1463,1525,1595,
+1672,1752,1832,1910,1985,2058,2128,2194,2257,2314,2367,2418,2470,2527,2589,2656,2726,2795,2861,2926,2990,
+3056,3126,3200,3278,3357,3435,3508,3574,3632,3679,3717,3747,3775,3805,3845,3901,3972,4058,4151,4243,4327,
+4399,4456,4500,4535,4564,4590,4613,4636,4659,4683,4710,4739,4770,4803,4836,4869,4902,4936,4971,5007,5044,
+5080,5117,5153,5191,5232,5276,5324,5374,5425,5475,5524,5571,5618,5665,5712,5758,5804,5848,5891,5936,5983,
+6032,6083,6132,6177,6215,6246,6271,6293,6313,6333,6351,6367,6379,6385,6386,6382,6376,6368,6361,6354,6348,
+6343,6338,6332,6326,6318,6307,6294,6280,6264,6249,6236,6223,6212,6200,6186,6169,6152,6134,6118,6105,6094,
+6087,6082,6079,6077,6077,6075,6072,6066,6056,6045,6034,6028,6029,6037,6052,6068,6080,6084,6079,6066,6048,
+6027,6007,5985,5963,5938,5912,5889,5874,5868,5872,5881,5887,5882,5862,5824,5775,5723,5675,5638,5613,5597,
+5583,5570,5556,5543,5538,5544,5561,5585,5608,5620,5616,5596,5564,5531,5507,5499,5511,5539,5575,5610,5636,
+5650,5649,5637,5616,5589,5557,5522,5487,5454,5424,5400,5381,5364,5345,5321,5288,5246,5199,5149,5099,5051,
+5003,4954,4901,4846,4794,4748,4714,4692,4720,4705,4696,4687,4675,4657,4635,4612,4589,4569,4549,4527,4504,
+4481,4459,4443,4434,4431,4430,4426,4419,4408,4399,4399,4409,4431,4456,4476,4481,4464,4426,4372,4312,4255,
+4206,4167,4136,4106,4073,4034,3986,3930,3869,3805,3739,3675,3614,3557,3503,3452,3403,3354,3304,3254,3205,
+3159,3116,3077,3042,3009,2976,2941,2904,2864,2822,2778,2731,2683,2633,2578,2520,2456,2388,2318,2249,2185,
+2128,2079,2036,1997,1959,1921,1886,1856,1838,1836,1851,1878,1912,1945,1972,1989,1999,2003,2004,2004,2002,
+1996,1985,1967,1945,1921,1898,1879,1862,1846,1829,1809,1788,1765,1742,1718,1693,1666,1636,1605,1572,1542,
+1516,1496,1480,1470,1463,1459,1460,1465,1477,1496,1522,1554,1588,1623,1655,1682,1700,1708,1705,1693,1672,
+1646,1618,1591,1567,1546,1526,1506,1485,1464,1442,1422,1404,1391,1381,1375,1373,1372,1371,1367,1359,1347,
+1331,1314,1299,1287,1278,1271,1262,1247,1225,1195,1160,1125,1092,1064,1040,1019,998,977,955,935,918,
+904,891,878,862,842,819,797,777,761,749,738,727,714,697,679,658,637,613,587,559,529,
+499,471,445,420,395,368,337,304,268,233,200,170,141,113,85,57,31,8,-14,-38,-64,
+-95,-129,-164,-195,-221,-240,-255,-268,-282,-298,-312,-323,-330,-336,-348,-375,-423,-495,-585,-682,-775,
+-854,-915,-961,-1000,-1039,-1084,-1136,-1192,-1246,-1295,-1338,-1375,-1409,-1443,-1479,-1515,-1552,-1587,-1621,-1655,-1689,
+-1727,-1767,-1809,-1853,-1896,-1937,-1976,-2011,-2042,-2071,-2098,-2126,-2157,-2191,-2228,-2265,-2300,-2332,-2359,-2385,-2412,
+-2443,-2479,-2521,-2566,-2611,-2652,-2689,-2722,-2749,-2773,-2794,-2811,-2827,-2842,-2859,-2878,-2899,-2921,-2940,-2955,-2967,
+-2980,-2997,-3021,-3052,-3086,-3118,-3142,-3157,-3163,-3168,-3177,-3195,-3220,-3250,-3277,-3297,-3307,-3310,-3311,-3314,-3324,
+-3341,-3363,-3387,-3409,-3429,-3445,-3458,-3468,-3475,-3479,-3482,-3483,-3484,-3486,-3489,-3490,-3490,-3487,-3484,-3482,-3486,
+-3495,-3510,-3525,-3540,-3551,-3560,-3569,-3582,-3603,-3630,-3661,-3691,-3715,-3728,-3729,-3720,-3702,-3677,-3649,-3618,-3586,
+-3553,-3521,-3492,-3469,-3451,-3439,-3432,-3428,-3427,-3429,-3433,-3441,-3452,-3467,-3486,-3506,-3528,-3548,-3566,-3582,-3595,
+-3607,-3619,-3632,-3647,-3661,-3674,-3683,-3687,-3685,-3677,-3666,-3654,-3643,-3635,-3628,-3620,-3609,-3592,-3566,-3530,-3485,
+-3433,-3378,-3326,-3279,-3243,-3218,-3206,-3203,-3207,-3215,-3222,-3226,-3223,-3215,-3201,-3184,-3165,-3146,-3128,-3112,-3095,
+-3078,-3059,-3036,-3010,-2980,-2948,-2915,-2883,-2852,-2825,-2801,-2779,-2757,-2732,-2703,-2667,-2623,-2572,-2513,-2447,-2377,
+-2304,-2229,-2157,-2091,-2033,-1985,-1949,-1922,-1900,-1881,-1864,-1848,-1836,-1832,-1834,-1843,-1853,-1858,-1853,-1835,-1802,
+-1760,-1712,-1664,-1617,-1574,-1533,-1493,-1452,-1407,-1358,-1301,-1235,-1159,-1076,-989,-905,-830,-766,-716,-675,-640,
+-606,-569,-529,-485,-440,-393,-346,-298,-249,-199,-150,-104,-63,-26,6,36,66,96,127,156,185,
+214,243,274,309,348,391,435,480,525,569,612,653,692,728,761,789,812,831,846,857,868,
+879,893,913,939,970,1005,1039,1072,1100,1124,1146,1165,1185,1206,1230,1255,1282,1307,1331,1351,1365,
+1373,1374,1371,1365,1358,1351,1342,1330,1316,1297,1277,1258,1243,1237,1238,1245,1256,1267,1276,1283,1291,
+1300,1313,1329,1347,1365,1380,1392,1403,1414,1428,1446,1468,1492,1519,1545,1571,1597,1622,1648,1673,1696,
+1715,1728,1735,1735,1730,1722,1713,1702,1690,1678,1664,1651,1640,1632,1629,1631,1637,1644,1650,1653,1651,
+1645,1638,1632,1630,1633,1641,1651,1663,1675,1686,1696,1704,1710,1712,1710,1704,1696,1691,1690,1698,1714,
+1733,1748,1751,1737,1704,1658,1607,1560,1525,1503,1489,1472,1444,1395,1326,1239,1144,1051,968,900,846,
+805,775,753,737,726,718,709,696,677,652,625,604,597,606,631,665,696,710,696,648,570,
+470,361,257,170,107,68,52,50,55,59,59,55,47,40,36,36,39,40,37,28,15,
+0,-9,-13,-10,-3,4,12,18,27,42,63,87,105,110,98,73,46,33,48,98,177,
+274,369,447,503,537,558,575,595,617,639,654,662,665,669,680,700,728,759,787,809,826,
+840,856,874,894,912,927,938,946,956,969,984,1001,1016,1028,1039,1050,1066,1088,1113,1137,1157,
+1170,1178,1184,1194,1209,1229,1249,1265,1276,1282,1288,1298,1313,1332,1352,1370,1384,1394,1406,1422,1443,
+1468,1492,1512,1525,1532,1534,1536,1539,1544,1548,1550,1549,1544,1537,1528,1519,1511,1505,1503,1505,1512,
+1524,1536,1547,1554,1556,1555,1554,1554,1554,1549,1533,1501,1454,1397,1339,1288,1247,1214,1184,1150,1109,
+1064,1022,994,986,1001,1035,1082,1134,1184,1230,1268,1296,1312,1312,1293,1256,1204,1142,1074,1003,930,
+856,782,714,659,622,608,612,629,646,656,654,642,627,613,606,606,610,614,616,619,624,
+636,657,683,709,727,730,714,678,629,575,531,509,519,562,632,713,783,821,812,757,667,
+566,479,424,408,424,455,481,487,469,430,381,333,292,261,238,219,200,183,166,151,137,
+123,105,83,56,26,-3,-31,-60,-92,-129,-174,-225,-275,-320,-354,-377,-392,-406,-426,-458,-503,
+-562,-628,-698,-767,-833,-898,-961,-1024,-1086,-1146,-1201,-1249,-1289,-1320,-1345,-1368,-1393,-1423,-1461,-1504,-1552,
+-1601,-1647,-1687,-1722,-1752,-1780,-1806,-1834,-1863,-1892,-1919,-1942,-1962,-1980,-1996,-2013,-2031,-2049,-2068,-2087,-2109,
+-2138,-2178,-2230,-2295,-2368,-2443,-2515,-2577,-2630,-2674,-2714,-2754,-2795,-2837,-2879,-2916,-2948,-2975,-2999,-3022,-3047,
+-3075,-3104,-3134,-3161,-3186,-3207,-3224,-3238,-3249,-3256,-3263,-3271,-3283,-3301,-3326,-3355,-3385,-3411,-3431,-3443,-3450,
+-3454,-3459,-3466,-3477,-3493,-3514,-3540,-3572,-3609,-3650,-3694,-3738,-3780,-3819,-3855,-3887,-3918,-3947,-3977,-4006,-4036,
+-4068,-4101,-4137,-4175,-4214,-4254,-4293,-4332,-4370,-4408,-4446,-4484,-4521,-4558,-4594,-4629,-4665,-4700,-4735,-4767,-4794,
+-4817,-4835,-4849,-4860,-4868,-4875,-4880,-4881,-4879,-4874,-4868,-4863,-4861,-4861,-4862,-4862,-4860,-4855,-4849,-4844,-4840,
+-4838,-4836,-4833,-4828,-4820,-4812,-4805,-4803,-4804,-4806,-4804,-4797,-4782,-4761,-4736,-4711,-4689,-4670,-4653,-4638,-4626,
+-4617,-4613,-4614,-4616,-4615,-4603,-4578,-4537,-4489,-4443,-4408,-4392,-4394,-4406,-4416,-4411,-4383,-4333,-4266,-4191,-4117,
+-4048,-3985,-3923,-3860,-3794,-3729,-3667,-3613,-3568,-3529,-3493,-3455,-3413,-3367,-3321,-3278,-3239,-3205,-3173,-3140,-3103,
+-3061,-3016,-2970,-2926,-2884,-2847,-2816,-2792,-2777,-2770,-2768,-2767,-2758,-2734,-2691,-2629,-2551,-2464,-2376,-2293,-2217,
+-2146,-2077,-2006,-1931,-1851,-1768,-1686,-1604,-1523,-1440,-1352,-1255,-1151,-1045,-941,-847,-768,-706,-657,-615,-572,
+-519,-451,-366,-264,-149,-26,97,214,318,402,461,496,511,515,517,527,550,587,636,690,747,
+805,866,932,1003,1080,1157,1230,1294,1352,1404,1457,1515,1579,1649,1723,1797,1871,1945,2019,2093,2167,
+2238,2302,2360,2413,2465,2520,2582,2651,2724,2797,2867,2932,2993,3054,3118,3186,3260,3335,3410,3478,3539,
+3589,3630,3664,3697,3734,3780,3840,3913,3999,4090,4181,4263,4333,4389,4433,4468,4498,4527,4555,4583,4611,
+4639,4668,4699,4732,4767,4803,4840,4878,4916,4954,4992,5030,5067,5104,5140,5178,5218,5262,5310,5361,5412,
+5462,5511,5558,5604,5650,5697,5743,5788,5832,5876,5921,5967,6017,6068,6118,6164,6202,6232,6256,6276,6296,
+6317,6338,6357,6370,6376,6373,6364,6353,6343,6336,6333,6332,6330,6327,6321,6313,6304,6293,6281,6267,6251,
+6234,6217,6201,6188,6176,6166,6156,6143,6130,6115,6103,6094,6089,6088,6089,6089,6087,6083,6075,6066,6058,
+6051,6048,6049,6057,6069,6084,6099,6109,6111,6103,6084,6056,6022,5987,5954,5924,5898,5876,5860,5851,5848,
+5852,5860,5868,5870,5859,5832,5792,5744,5695,5654,5627,5612,5608,5606,5601,5587,5566,5543,5524,5515,5519,
+5533,5552,5569,5577,5575,5568,5562,5563,5577,5603,5636,5667,5687,5692,5679,5652,5617,5579,5542,5510,5482,
+5458,5435,5413,5390,5365,5335,5297,5253,5203,5152,5102,5058,5019,4984,4949,4910,4867,4822,4779,4744,4720,
+4761,4742,4725,4709,4689,4664,4636,4608,4584,4565,4548,4531,4510,4486,4459,4433,4413,4399,4390,4383,4376,
+4368,4361,4359,4363,4375,4388,4397,4393,4374,4338,4289,4236,4184,4138,4099,4065,4032,3996,3956,3911,3861,
+3809,3754,3700,3649,3601,3557,3515,3475,3432,3386,3336,3284,3232,3184,3140,3103,3070,3039,3007,2973,2937,
+2899,2860,2819,2777,2732,2683,2627,2563,2493,2418,2341,2267,2198,2139,2089,2049,2015,1985,1956,1929,1907,
+1893,1890,1898,1916,1937,1957,1973,1983,1988,1991,1995,1998,2001,2001,1996,1986,1972,1956,1941,1927,1914,
+1900,1883,1862,1836,1808,1778,1747,1716,1683,1648,1612,1576,1543,1514,1490,1474,1463,1457,1457,1461,1471,
+1487,1508,1533,1560,1586,1610,1629,1642,1649,1650,1645,1637,1625,1610,1595,1577,1558,1538,1515,1490,1465,
+1441,1418,1398,1382,1369,1359,1354,1352,1351,1351,1349,1342,1329,1311,1290,1268,1248,1231,1217,1204,1188,
+1168,1144,1118,1091,1066,1044,1024,1005,985,964,944,926,911,899,886,871,853,832,810,789,773,
+761,750,738,723,702,679,654,631,611,593,573,550,523,492,460,429,399,369,338,306,271,
+236,200,167,135,104,74,43,14,-10,-32,-51,-70,-92,-120,-152,-186,-217,-241,-259,-273,-288,
+-306,-328,-351,-369,-380,-384,-388,-403,-437,-497,-578,-673,-768,-852,-921,-974,-1018,-1062,-1110,-1164,-1220,
+-1274,-1320,-1358,-1390,-1420,-1452,-1488,-1528,-1570,-1612,-1652,-1692,-1732,-1773,-1817,-1863,-1909,-1953,-1994,-2031,-2064,
+-2093,-2119,-2144,-2170,-2198,-2229,-2263,-2298,-2331,-2361,-2387,-2410,-2434,-2462,-2494,-2533,-2575,-2619,-2662,-2703,-2739,
+-2771,-2797,-2818,-2834,-2847,-2860,-2873,-2891,-2911,-2933,-2953,-2970,-2983,-2995,-3010,-3032,-3061,-3096,-3130,-3158,-3177,
+-3188,-3195,-3204,-3219,-3242,-3268,-3293,-3313,-3327,-3337,-3345,-3355,-3370,-3389,-3410,-3431,-3449,-3465,-3479,-3490,-3500,
+-3507,-3511,-3512,-3512,-3511,-3511,-3511,-3509,-3505,-3500,-3495,-3493,-3497,-3509,-3526,-3545,-3562,-3575,-3584,-3592,-3604,
+-3622,-3647,-3678,-3711,-3740,-3763,-3776,-3779,-3773,-3758,-3736,-3708,-3675,-3641,-3607,-3576,-3550,-3531,-3519,-3514,-3514,
+-3517,-3523,-3530,-3540,-3554,-3572,-3596,-3624,-3654,-3682,-3704,-3719,-3726,-3728,-3728,-3729,-3735,-3743,-3752,-3758,-3758,
+-3750,-3736,-3718,-3699,-3682,-3668,-3656,-3646,-3634,-3617,-3591,-3556,-3510,-3457,-3401,-3347,-3301,-3267,-3248,-3242,-3245,
+-3255,-3265,-3272,-3276,-3273,-3266,-3253,-3237,-3218,-3199,-3179,-3161,-3144,-3128,-3111,-3089,-3063,-3029,-2991,-2949,-2907,
+-2867,-2830,-2795,-2761,-2725,-2684,-2638,-2587,-2530,-2471,-2409,-2345,-2279,-2211,-2142,-2076,-2016,-1966,-1927,-1898,-1874,
+-1851,-1824,-1794,-1764,-1741,-1731,-1737,-1757,-1780,-1796,-1794,-1769,-1724,-1665,-1604,-1548,-1503,-1468,-1439,-1411,-1378,
+-1339,-1291,-1235,-1172,-1101,-1025,-945,-867,-796,-736,-687,-647,-611,-574,-531,-481,-426,-367,-307,-248,-191,
+-137,-86,-40,-1,32,59,84,108,136,169,208,250,293,337,380,422,464,506,547,589,628,
+666,702,735,766,793,817,838,857,873,887,900,913,926,940,958,979,1004,1033,1064,1095,1124,
+1151,1174,1196,1216,1237,1259,1283,1309,1334,1358,1379,1394,1402,1402,1396,1386,1375,1364,1354,1344,1333,
+1317,1298,1278,1259,1246,1241,1243,1251,1261,1271,1280,1288,1297,1309,1323,1339,1355,1370,1384,1396,1408,
+1421,1437,1456,1477,1498,1520,1542,1563,1585,1607,1630,1653,1673,1691,1703,1709,1710,1705,1695,1681,1666,
+1649,1634,1621,1613,1610,1613,1622,1633,1644,1651,1654,1652,1646,1640,1637,1641,1652,1670,1693,1719,1743,
+1763,1778,1787,1787,1779,1764,1744,1723,1705,1697,1701,1718,1742,1767,1783,1782,1761,1723,1675,1627,1587,
+1557,1535,1512,1477,1422,1344,1248,1143,1041,951,881,831,801,784,777,775,776,777,775,767,752,
+727,696,663,635,619,620,636,663,691,708,704,672,610,524,422,319,227,156,110,90,87,
+94,101,101,93,80,66,58,57,62,66,64,53,34,12,-4,-10,-5,6,21,32,39,
+44,53,70,94,118,131,128,105,73,45,37,57,106,173,244,304,349,383,412,445,486,
+530,570,597,610,613,616,628,654,693,736,776,806,828,844,859,878,901,923,941,955,964,
+972,983,997,1012,1025,1034,1039,1046,1057,1076,1101,1128,1152,1168,1178,1186,1195,1211,1231,1254,1274,
+1289,1299,1307,1318,1333,1353,1374,1393,1406,1415,1424,1435,1453,1475,1499,1520,1535,1546,1552,1557,1561,
+1564,1565,1561,1553,1542,1530,1520,1513,1509,1508,1509,1513,1520,1530,1542,1554,1565,1572,1577,1580,1579,
+1574,1559,1532,1489,1435,1375,1319,1271,1235,1206,1179,1146,1108,1067,1034,1019,1026,1056,1103,1157,1209,
+1253,1289,1316,1334,1340,1329,1298,1244,1169,1079,981,883,790,707,639,589,561,557,575,607,644,
+674,691,693,683,667,651,638,626,611,590,564,537,512,496,491,498,515,536,557,576,587,
+588,580,563,545,532,531,547,577,609,632,631,602,547,481,419,376,357,359,371,379,373,
+352,320,285,258,243,238,239,238,231,215,193,167,140,114,88,64,41,18,-2,-23,-48,
+-79,-118,-166,-220,-274,-323,-361,-388,-405,-419,-434,-455,-484,-523,-568,-618,-674,-736,-805,-881,-961,
+-1042,-1118,-1185,-1239,-1282,-1316,-1346,-1377,-1411,-1448,-1486,-1524,-1559,-1591,-1621,-1650,-1679,-1710,-1743,-1778,-1814,
+-1851,-1888,-1923,-1956,-1987,-2015,-2040,-2062,-2084,-2106,-2128,-2152,-2180,-2213,-2252,-2298,-2351,-2408,-2465,-2517,-2561,
+-2598,-2630,-2661,-2696,-2735,-2780,-2826,-2870,-2907,-2938,-2962,-2984,-3006,-3031,-3058,-3087,-3114,-3139,-3159,-3175,-3188,
+-3198,-3207,-3217,-3230,-3249,-3273,-3302,-3332,-3360,-3381,-3394,-3400,-3403,-3406,-3411,-3423,-3439,-3460,-3484,-3511,-3540,
+-3573,-3609,-3646,-3683,-3717,-3749,-3778,-3806,-3836,-3867,-3902,-3938,-3976,-4014,-4052,-4090,-4129,-4169,-4209,-4248,-4286,
+-4323,-4359,-4393,-4426,-4459,-4492,-4526,-4562,-4598,-4635,-4671,-4703,-4731,-4753,-4770,-4784,-4797,-4809,-4821,-4831,-4839,
+-4842,-4843,-4842,-4842,-4844,-4849,-4853,-4857,-4859,-4859,-4857,-4856,-4857,-4858,-4859,-4859,-4855,-4848,-4840,-4833,-4829,
+-4827,-4826,-4823,-4815,-4801,-4783,-4762,-4740,-4721,-4704,-4690,-4678,-4668,-4661,-4657,-4656,-4655,-4649,-4633,-4604,-4562,
+-4513,-4467,-4430,-4410,-4405,-4409,-4411,-4400,-4373,-4328,-4271,-4211,-4153,-4099,-4047,-3992,-3931,-3864,-3795,-3729,-3672,
+-3624,-3585,-3548,-3510,-3468,-3421,-3374,-3330,-3292,-3259,-3229,-3199,-3164,-3126,-3083,-3038,-2991,-2946,-2904,-2867,-2838,
+-2820,-2813,-2814,-2817,-2813,-2792,-2749,-2683,-2599,-2505,-2411,-2324,-2247,-2178,-2112,-2045,-1972,-1892,-1807,-1720,-1633,
+-1548,-1463,-1376,-1284,-1187,-1088,-991,-903,-829,-773,-732,-702,-673,-638,-588,-519,-428,-317,-188,-49,92,
+225,339,425,481,509,517,518,523,541,574,619,670,722,774,827,886,953,1029,1109,1189,1263,
+1329,1388,1444,1503,1565,1631,1700,1768,1835,1903,1975,2050,2129,2208,2282,2347,2404,2457,2509,2566,2630,
+2701,2775,2847,2916,2979,3040,3101,3164,3229,3295,3360,3421,3477,3528,3576,3624,3677,3737,3806,3884,3967,
+4050,4129,4198,4255,4301,4339,4372,4405,4439,4476,4513,4551,4586,4621,4655,4689,4724,4760,4798,4837,4878,
+4919,4962,5006,5049,5092,5132,5171,5210,5251,5294,5341,5389,5438,5487,5533,5579,5625,5672,5720,5768,5816,
+5863,5910,5958,6007,6057,6106,6151,6189,6219,6242,6261,6278,6296,6316,6335,6350,6357,6355,6345,6331,6318,
+6310,6308,6310,6314,6316,6314,6306,6295,6283,6270,6256,6242,6227,6210,6192,6175,6161,6150,6142,6134,6125,
+6116,6107,6100,6097,6097,6100,6102,6101,6095,6085,6072,6061,6054,6053,6060,6072,6087,6102,6114,6122,6124,
+6118,6103,6081,6051,6015,5977,5940,5908,5885,5871,5868,5873,5884,5896,5905,5907,5898,5876,5841,5795,5743,
+5691,5646,5616,5601,5600,5606,5610,5605,5586,5555,5521,5493,5483,5494,5525,5568,5610,5642,5659,5662,5659,
+5658,5664,5678,5695,5706,5704,5686,5655,5616,5579,5548,5525,5507,5490,5469,5440,5403,5358,5306,5249,5189,
+5129,5073,5024,4984,4956,4935,4918,4899,4876,4847,4816,4786,4761,4782,4762,4744,4726,4704,4677,4645,4613,
+4584,4561,4541,4523,4503,4477,4448,4417,4388,4364,4346,4332,4320,4308,4297,4288,4284,4284,4286,4286,4279,
+4261,4230,4191,4145,4098,4054,4014,3978,3944,3911,3877,3841,3802,3761,3718,3674,3633,3596,3564,3536,3507,
+3475,3435,3388,3335,3280,3229,3184,3146,3112,3081,3049,3013,2975,2934,2892,2850,2807,2762,2714,2660,2600,
+2533,2461,2387,2314,2244,2182,2129,2086,2051,2023,1999,1979,1962,1951,1946,1948,1954,1962,1969,1973,1974,
+1972,1971,1971,1972,1973,1974,1972,1969,1964,1959,1955,1953,1949,1941,1928,1908,1882,1851,1818,1784,1749,
+1714,1679,1643,1608,1575,1545,1520,1501,1488,1482,1483,1489,1500,1513,1529,1544,1557,1568,1575,1579,1580,
+1581,1580,1580,1579,1577,1572,1564,1550,1532,1511,1488,1465,1443,1425,1408,1394,1380,1367,1354,1342,1331,
+1322,1312,1301,1287,1270,1250,1228,1208,1191,1178,1166,1155,1141,1124,1104,1082,1060,1039,1020,1001,982,
+963,944,927,914,904,896,886,873,855,832,810,790,775,764,753,739,718,691,660,631,606,
+586,571,556,537,512,481,446,411,375,341,306,270,233,196,159,124,91,58,25,-6,-36,
+-62,-84,-102,-119,-139,-164,-193,-225,-253,-276,-293,-306,-322,-344,-372,-401,-424,-435,-434,-426,-425,
+-441,-484,-555,-646,-746,-841,-923,-990,-1046,-1097,-1147,-1200,-1253,-1302,-1345,-1381,-1413,-1445,-1480,-1519,-1561,
+-1605,-1648,-1688,-1728,-1769,-1812,-1858,-1905,-1953,-1997,-2038,-2074,-2105,-2132,-2158,-2182,-2208,-2235,-2266,-2299,-2334,
+-2368,-2399,-2426,-2450,-2471,-2494,-2520,-2551,-2586,-2624,-2664,-2704,-2742,-2776,-2807,-2832,-2852,-2868,-2882,-2896,-2912,
+-2931,-2950,-2969,-2984,-2996,-3007,-3021,-3042,-3070,-3104,-3140,-3172,-3198,-3216,-3229,-3243,-3259,-3278,-3300,-3320,-3337,
+-3351,-3363,-3375,-3390,-3409,-3430,-3451,-3469,-3485,-3498,-3509,-3520,-3530,-3537,-3542,-3544,-3544,-3542,-3540,-3535,-3529,
+-3521,-3511,-3503,-3500,-3504,-3517,-3537,-3559,-3579,-3595,-3607,-3618,-3630,-3647,-3669,-3696,-3726,-3756,-3781,-3801,-3812,
+-3813,-3805,-3788,-3763,-3732,-3698,-3664,-3632,-3606,-3587,-3578,-3579,-3590,-3607,-3628,-3649,-3670,-3691,-3713,-3739,-3769,
+-3801,-3831,-3854,-3867,-3868,-3862,-3853,-3846,-3844,-3846,-3849,-3849,-3842,-3826,-3804,-3778,-3751,-3726,-3704,-3684,-3666,
+-3647,-3624,-3596,-3560,-3517,-3467,-3416,-3368,-3330,-3304,-3293,-3293,-3301,-3311,-3320,-3325,-3325,-3322,-3316,-3307,-3295,
+-3279,-3262,-3244,-3226,-3209,-3193,-3175,-3152,-3120,-3079,-3029,-2975,-2919,-2865,-2815,-2769,-2723,-2674,-2620,-2560,-2495,
+-2427,-2361,-2297,-2238,-2183,-2130,-2079,-2030,-1985,-1946,-1912,-1881,-1849,-1812,-1768,-1719,-1672,-1635,-1617,-1622,-1644,
+-1674,-1696,-1697,-1672,-1623,-1559,-1494,-1437,-1394,-1364,-1340,-1315,-1284,-1244,-1196,-1142,-1085,-1024,-959,-891,-824,
+-761,-705,-657,-615,-574,-528,-473,-409,-338,-264,-193,-126,-66,-13,34,76,112,141,165,188,214,
+246,287,336,390,444,496,543,585,623,660,696,732,770,806,839,868,890,906,917,924,930,
+938,949,962,977,992,1007,1022,1037,1055,1075,1097,1121,1146,1171,1197,1222,1248,1274,1303,1333,1363,
+1392,1418,1437,1446,1443,1431,1410,1387,1365,1349,1337,1330,1324,1316,1306,1294,1284,1279,1278,1282,1289,
+1296,1303,1311,1320,1333,1349,1367,1386,1403,1417,1429,1440,1452,1465,1480,1495,1511,1525,1539,1554,1570,
+1588,1607,1626,1644,1660,1673,1683,1688,1688,1684,1673,1659,1641,1623,1609,1602,1602,1610,1623,1639,1652,
+1659,1659,1653,1644,1637,1635,1644,1662,1689,1722,1756,1788,1814,1832,1842,1843,1835,1818,1796,1771,1748,
+1735,1735,1749,1774,1802,1825,1832,1818,1784,1736,1683,1636,1598,1569,1542,1506,1454,1381,1291,1193,1097,
+1015,952,911,886,874,868,864,859,852,841,826,805,776,743,706,671,643,626,623,632,651,
+672,686,686,664,618,548,461,367,277,202,152,126,120,127,136,140,133,119,103,90,85,
+85,87,85,75,58,39,26,23,31,47,62,71,72,69,68,76,96,120,139,144,130,
+101,70,50,50,70,104,141,171,196,219,250,296,355,418,472,505,518,519,522,543,587,
+650,722,786,833,860,874,883,895,914,938,960,977,988,996,1004,1015,1028,1040,1048,1052,1056,
+1062,1076,1097,1122,1146,1164,1176,1185,1195,1210,1231,1257,1281,1302,1317,1329,1340,1355,1372,1390,1405,
+1416,1424,1431,1442,1458,1480,1502,1523,1538,1548,1554,1557,1560,1563,1563,1559,1552,1543,1535,1528,1524,
+1522,1519,1516,1515,1516,1522,1534,1550,1567,1581,1589,1589,1580,1560,1529,1486,1434,1378,1325,1280,1248,
+1227,1211,1193,1168,1137,1107,1088,1088,1110,1152,1203,1254,1295,1325,1345,1356,1360,1354,1332,1286,1215,
+1120,1010,895,787,695,624,577,553,553,571,603,640,675,700,712,711,701,689,675,662,646,
+623,592,555,514,474,438,409,387,374,371,381,402,434,467,493,504,496,472,443,418,408,
+413,428,445,453,448,429,401,374,350,330,313,295,273,250,231,221,223,236,256,273,281,
+277,258,229,193,156,119,86,57,31,8,-11,-31,-52,-78,-111,-151,-197,-246,-295,-339,-378,
+-409,-434,-456,-476,-497,-520,-547,-580,-622,-677,-745,-826,-915,-1005,-1088,-1159,-1214,-1256,-1291,-1325,-1361,
+-1401,-1442,-1479,-1509,-1530,-1546,-1561,-1582,-1610,-1646,-1689,-1734,-1780,-1824,-1868,-1911,-1954,-1993,-2028,-2057,-2080,
+-2100,-2121,-2145,-2176,-2212,-2252,-2294,-2335,-2375,-2412,-2446,-2476,-2501,-2525,-2548,-2575,-2610,-2653,-2704,-2757,-2807,
+-2850,-2884,-2909,-2931,-2952,-2977,-3004,-3032,-3057,-3079,-3096,-3109,-3121,-3133,-3149,-3167,-3189,-3213,-3240,-3265,-3289,
+-3308,-3321,-3329,-3334,-3339,-3347,-3362,-3383,-3408,-3435,-3463,-3490,-3517,-3545,-3574,-3602,-3629,-3654,-3676,-3699,-3724,
+-3753,-3788,-3828,-3872,-3916,-3959,-4000,-4040,-4079,-4117,-4155,-4191,-4227,-4261,-4293,-4325,-4357,-4390,-4423,-4458,-4492,
+-4527,-4562,-4595,-4626,-4653,-4675,-4695,-4711,-4728,-4744,-4760,-4775,-4788,-4798,-4806,-4811,-4816,-4822,-4828,-4834,-4838,
+-4841,-4843,-4846,-4851,-4858,-4867,-4874,-4879,-4878,-4873,-4864,-4855,-4847,-4841,-4837,-4832,-4824,-4813,-4798,-4780,-4762,
+-4745,-4731,-4718,-4706,-4696,-4687,-4681,-4677,-4672,-4664,-4649,-4623,-4588,-4546,-4503,-4465,-4438,-4422,-4412,-4403,-4386,
+-4359,-4321,-4276,-4229,-4182,-4138,-4092,-4042,-3984,-3919,-3852,-3787,-3730,-3682,-3641,-3604,-3565,-3523,-3477,-3431,-3387,
+-3348,-3314,-3282,-3250,-3215,-3177,-3135,-3090,-3042,-2994,-2946,-2902,-2866,-2842,-2831,-2830,-2833,-2831,-2815,-2777,-2716,
+-2636,-2544,-2449,-2358,-2276,-2202,-2133,-2065,-1992,-1914,-1830,-1741,-1650,-1558,-1468,-1378,-1288,-1198,-1109,-1024,-946,
+-880,-827,-790,-763,-744,-724,-696,-653,-588,-499,-382,-242,-86,71,218,338,423,472,493,498,503,
+520,554,601,656,711,762,812,864,923,991,1067,1146,1221,1291,1356,1418,1482,1549,1617,1686,1751,
+1813,1874,1939,2011,2089,2171,2250,2322,2384,2438,2488,2540,2598,2663,2733,2804,2874,2942,3007,3071,3135,
+3199,3263,3326,3385,3443,3499,3557,3619,3687,3761,3840,3920,3996,4064,4120,4166,4202,4232,4261,4294,4333,
+4377,4423,4470,4515,4557,4596,4635,4675,4714,4754,4793,4833,4873,4915,4960,5007,5054,5101,5147,5190,5232,
+5274,5318,5364,5412,5460,5507,5553,5598,5644,5691,5740,5790,5841,5893,5944,5995,6044,6091,6134,6173,6204,
+6230,6250,6267,6283,6298,6312,6323,6329,6328,6320,6308,6296,6287,6284,6285,6290,6293,6294,6289,6279,6266,
+6252,6239,6227,6215,6202,6188,6174,6160,6148,6138,6129,6121,6114,6107,6101,6098,6098,6101,6106,6109,6107,
+6099,6088,6076,6068,6066,6073,6085,6101,6115,6124,6128,6126,6120,6111,6100,6084,6063,6034,6001,5966,5936,
+5915,5907,5911,5925,5943,5959,5968,5967,5955,5932,5899,5856,5804,5746,5687,5637,5602,5585,5584,5592,5598,
+5591,5569,5536,5505,5491,5504,5547,5610,5677,5732,5761,5764,5748,5724,5707,5701,5704,5708,5704,5685,5654,
+5617,5582,5557,5541,5530,5515,5488,5446,5390,5323,5252,5182,5116,5055,5003,4958,4925,4902,4890,4883,4877,
+4867,4851,4829,4805,4782,4776,4756,4740,4725,4706,4682,4650,4615,4578,4546,4518,4494,4472,4448,4421,4392,
+4363,4337,4314,4295,4277,4261,4244,4228,4215,4206,4199,4192,4182,4167,4143,4111,4074,4033,3992,3953,3918,
+3887,3861,3837,3812,3785,3753,3717,3677,3638,3604,3576,3553,3533,3510,3480,3440,3393,3343,3294,3250,3213,
+3181,3149,3115,3075,3029,2980,2928,2875,2824,2774,2724,2675,2623,2568,2509,2446,2380,2313,2248,2189,2139,
+2098,2067,2043,2026,2014,2005,1999,1996,1994,1991,1986,1979,1969,1957,1946,1937,1931,1928,1927,1928,1931,
+1936,1944,1953,1961,1967,1967,1961,1946,1924,1896,1864,1830,1796,1762,1729,1697,1665,1634,1604,1577,1554,
+1538,1529,1528,1532,1539,1547,1552,1553,1550,1545,1539,1534,1533,1535,1540,1547,1552,1552,1546,1533,1512,
+1488,1464,1444,1429,1422,1419,1418,1415,1407,1392,1373,1350,1325,1301,1278,1255,1233,1212,1193,1177,1165,
+1156,1148,1140,1129,1113,1094,1072,1049,1027,1008,989,970,951,933,918,907,903,904,906,905,897,
+880,857,831,807,787,770,755,736,711,681,647,616,589,569,552,534,513,485,451,415,377,
+341,305,270,234,196,156,117,79,43,7,-27,-62,-95,-124,-149,-168,-185,-204,-225,-251,-277,
+-302,-321,-336,-349,-366,-389,-419,-450,-474,-485,-480,-466,-453,-456,-486,-546,-633,-734,-838,-933,-1013,
+-1080,-1137,-1190,-1240,-1288,-1334,-1376,-1413,-1449,-1486,-1524,-1566,-1607,-1648,-1686,-1721,-1757,-1796,-1839,-1887,-1938,
+-1987,-2033,-2073,-2107,-2136,-2162,-2188,-2215,-2243,-2273,-2306,-2341,-2378,-2413,-2445,-2472,-2495,-2514,-2533,-2552,-2576,
+-2604,-2637,-2672,-2709,-2745,-2780,-2813,-2842,-2868,-2889,-2907,-2924,-2940,-2956,-2973,-2988,-3002,-3014,-3027,-3042,-3063,
+-3091,-3124,-3160,-3194,-3224,-3249,-3269,-3287,-3305,-3323,-3339,-3353,-3363,-3371,-3378,-3389,-3403,-3421,-3441,-3461,-3480,
+-3497,-3513,-3529,-3545,-3560,-3573,-3583,-3589,-3591,-3589,-3583,-3573,-3560,-3546,-3532,-3522,-3520,-3527,-3543,-3564,-3587,
+-3607,-3623,-3634,-3643,-3653,-3664,-3680,-3699,-3722,-3747,-3773,-3795,-3812,-3821,-3819,-3808,-3787,-3761,-3731,-3700,-3671,
+-3648,-3632,-3629,-3640,-3665,-3701,-3740,-3777,-3807,-3829,-3847,-3864,-3885,-3911,-3936,-3957,-3970,-3971,-3965,-3957,-3952,
+-3951,-3953,-3954,-3948,-3932,-3906,-3873,-3836,-3799,-3764,-3733,-3704,-3677,-3651,-3624,-3594,-3561,-3523,-3481,-3439,-3400,
+-3370,-3353,-3347,-3350,-3357,-3365,-3369,-3369,-3367,-3363,-3360,-3356,-3350,-3342,-3330,-3315,-3299,-3281,-3262,-3237,-3204,
+-3161,-3106,-3042,-2972,-2901,-2833,-2769,-2711,-2656,-2600,-2541,-2477,-2409,-2339,-2272,-2212,-2160,-2119,-2086,-2059,-2034,
+-2008,-1980,-1948,-1911,-1868,-1818,-1761,-1701,-1642,-1594,-1564,-1554,-1563,-1579,-1592,-1590,-1566,-1523,-1467,-1409,-1359,
+-1320,-1289,-1261,-1229,-1190,-1144,-1094,-1042,-990,-938,-884,-827,-771,-716,-667,-623,-582,-537,-483,-415,-336,
+-250,-166,-88,-21,34,82,126,165,202,235,265,295,327,366,412,464,520,573,619,657,687,
+712,737,766,800,840,882,923,957,982,996,1002,1001,1000,1002,1010,1022,1037,1052,1064,1074,1082,
+1090,1099,1113,1131,1154,1180,1209,1241,1274,1308,1344,1379,1414,1446,1471,1487,1490,1479,1456,1425,1392,
+1363,1341,1328,1321,1317,1314,1312,1311,1314,1320,1328,1337,1343,1346,1349,1353,1362,1378,1400,1425,1449,
+1469,1485,1498,1510,1523,1535,1546,1555,1561,1566,1570,1576,1586,1599,1614,1628,1641,1651,1660,1666,1671,
+1672,1668,1659,1646,1630,1617,1610,1611,1622,1639,1659,1675,1683,1681,1669,1654,1642,1638,1648,1672,1708,
+1750,1792,1829,1856,1873,1880,1878,1869,1855,1837,1819,1802,1793,1793,1805,1827,1853,1875,1885,1875,1844,
+1796,1739,1682,1633,1593,1558,1522,1475,1413,1338,1256,1177,1110,1060,1027,1006,992,978,962,943,922,
+900,876,848,813,773,729,686,650,625,613,614,626,642,658,666,662,640,598,538,463,380,
+300,232,183,157,150,155,165,172,170,160,145,130,120,114,112,108,100,88,74,64,62,
+69,82,94,100,98,92,88,92,106,127,146,155,147,127,103,85,80,88,102,115,123,
+129,141,169,218,283,349,400,427,429,421,423,454,522,618,725,819,884,916,922,917,915,
+925,945,970,993,1008,1018,1025,1034,1047,1060,1072,1080,1084,1089,1097,1111,1131,1152,1170,1184,1194,
+1204,1218,1238,1263,1289,1313,1333,1348,1361,1373,1386,1398,1409,1418,1426,1436,1450,1469,1491,1514,1532,
+1543,1547,1545,1542,1540,1540,1541,1542,1542,1541,1538,1536,1532,1527,1520,1512,1504,1502,1506,1516,1532,
+1547,1557,1558,1547,1524,1491,1450,1405,1360,1319,1288,1268,1259,1255,1251,1239,1218,1193,1171,1164,1177,
+1212,1261,1312,1354,1380,1389,1384,1370,1350,1320,1275,1209,1121,1014,900,791,698,630,589,574,579,
+599,628,660,688,709,720,721,715,705,694,682,669,650,625,595,561,526,493,461,426,390,
+351,316,291,282,290,310,331,343,337,314,279,247,228,231,257,297,341,378,401,405,392,
+365,327,285,244,210,187,180,189,210,237,262,278,280,267,243,211,175,141,108,79,51,
+25,0,-25,-50,-74,-99,-125,-154,-186,-222,-261,-304,-348,-391,-431,-467,-498,-525,-548,-571,-596,
+-628,-672,-730,-803,-886,-972,-1053,-1122,-1176,-1218,-1252,-1287,-1325,-1367,-1408,-1442,-1464,-1477,-1483,-1492,-1511,
+-1543,-1587,-1639,-1691,-1742,-1789,-1834,-1879,-1925,-1969,-2006,-2036,-2057,-2074,-2094,-2120,-2156,-2200,-2246,-2289,-2325,
+-2351,-2370,-2383,-2395,-2408,-2424,-2447,-2478,-2519,-2570,-2629,-2689,-2744,-2789,-2823,-2849,-2869,-2891,-2917,-2944,-2972,
+-2994,-3009,-3019,-3026,-3036,-3051,-3074,-3103,-3133,-3162,-3187,-3207,-3222,-3233,-3242,-3249,-3259,-3272,-3290,-3314,-3343,
+-3374,-3406,-3435,-3462,-3486,-3510,-3533,-3555,-3575,-3594,-3612,-3632,-3657,-3688,-3725,-3768,-3813,-3857,-3901,-3942,-3982,
+-4021,-4059,-4096,-4131,-4163,-4195,-4226,-4259,-4293,-4329,-4365,-4400,-4433,-4462,-4490,-4517,-4543,-4568,-4594,-4619,-4643,
+-4667,-4690,-4711,-4731,-4747,-4761,-4773,-4782,-4791,-4799,-4805,-4810,-4813,-4816,-4819,-4826,-4837,-4851,-4867,-4882,-4891,
+-4893,-4887,-4877,-4863,-4851,-4841,-4834,-4829,-4823,-4815,-4803,-4790,-4775,-4760,-4745,-4733,-4721,-4711,-4702,-4694,-4687,
+-4681,-4673,-4662,-4644,-4618,-4583,-4544,-4505,-4469,-4439,-4416,-4397,-4376,-4352,-4321,-4284,-4243,-4201,-4157,-4112,-4064,
+-4011,-3955,-3896,-3839,-3786,-3739,-3697,-3657,-3616,-3574,-3529,-3485,-3443,-3403,-3367,-3331,-3295,-3257,-3216,-3172,-3125,
+-3074,-3022,-2970,-2922,-2881,-2852,-2836,-2831,-2832,-2829,-2816,-2784,-2733,-2663,-2579,-2489,-2398,-2310,-2228,-2151,-2078,
+-2005,-1930,-1850,-1764,-1672,-1575,-1477,-1379,-1284,-1195,-1113,-1037,-970,-912,-863,-825,-797,-778,-764,-751,-732,
+-698,-639,-550,-428,-277,-109,59,209,326,403,444,461,471,489,522,571,630,692,751,805,858,
+915,979,1048,1121,1192,1260,1326,1391,1460,1532,1605,1677,1743,1803,1859,1917,1981,2052,2130,2208,2282,
+2348,2407,2460,2513,2568,2629,2694,2761,2829,2897,2965,3035,3106,3177,3248,3316,3381,3443,3504,3565,3628,
+3696,3766,3837,3906,3968,4022,4065,4101,4132,4164,4200,4243,4291,4342,4394,4443,4489,4532,4575,4619,4665,
+4710,4755,4797,4837,4876,4917,4960,5006,5054,5102,5150,5197,5243,5290,5338,5387,5437,5487,5535,5582,5627,
+5672,5718,5766,5817,5870,5923,5976,6027,6073,6115,6152,6184,6211,6235,6255,6273,6287,6297,6302,6303,6299,
+6292,6285,6277,6272,6269,6269,6269,6269,6267,6262,6254,6244,6232,6219,6208,6197,6188,6179,6169,6160,6151,
+6142,6133,6125,6116,6108,6101,6095,6092,6093,6097,6101,6104,6103,6099,6092,6086,6085,6090,6101,6116,6130,
+6139,6140,6135,6125,6114,6104,6095,6084,6069,6048,6019,5988,5959,5939,5932,5937,5952,5970,5985,5995,5998,
+5997,5991,5979,5955,5916,5858,5785,5709,5641,5595,5576,5579,5590,5597,5588,5563,5534,5516,5526,5569,5637,
+5715,5779,5815,5817,5794,5761,5732,5718,5716,5718,5712,5693,5660,5621,5586,5562,5548,5538,5520,5485,5430,
+5358,5278,5200,5130,5073,5025,4986,4952,4924,4902,4887,4877,4869,4859,4844,4823,4799,4776,4756,4734,4717,
+4704,4689,4669,4640,4603,4562,4521,4484,4454,4429,4406,4384,4362,4339,4318,4298,4279,4262,4244,4226,4208,
+4190,4174,4159,4147,4133,4117,4097,4071,4040,4006,3969,3934,3902,3876,3856,3841,3827,3809,3785,3752,3713,
+3671,3633,3601,3577,3558,3539,3515,3483,3443,3400,3356,3316,3282,3251,3219,3182,3138,3085,3025,2961,2896,
+2834,2777,2726,2681,2639,2597,2552,2500,2442,2378,2313,2250,2194,2148,2113,2087,2070,2058,2050,2045,2039,
+2034,2025,2014,1998,1979,1957,1935,1916,1901,1893,1891,1897,1908,1924,1943,1961,1977,1989,1994,1991,1979,
+1961,1935,1905,1873,1841,1810,1782,1756,1730,1703,1674,1646,1619,1598,1583,1576,1575,1576,1576,1571,1562,
+1551,1539,1530,1527,1529,1536,1545,1552,1553,1547,1530,1504,1472,1440,1412,1395,1391,1397,1411,1423,1429,
+1424,1407,1381,1349,1316,1284,1256,1231,1209,1191,1177,1166,1158,1150,1141,1127,1108,1084,1057,1032,1008,
+988,970,952,934,916,900,890,889,896,909,922,930,927,912,887,856,824,795,770,747,723,
+695,665,633,603,576,552,529,505,476,441,402,363,325,290,258,225,191,154,114,73,31,
+-8,-47,-86,-125,-161,-195,-223,-245,-264,-281,-298,-317,-338,-357,-374,-388,-402,-420,-444,-472,-502,
+-524,-535,-531,-518,-505,-505,-530,-583,-663,-761,-864,-962,-1048,-1119,-1179,-1231,-1279,-1325,-1369,-1411,-1453,
+-1493,-1534,-1576,-1616,-1655,-1690,-1721,-1752,-1784,-1822,-1867,-1917,-1971,-2022,-2068,-2105,-2136,-2162,-2186,-2213,-2242,
+-2274,-2309,-2346,-2383,-2420,-2454,-2486,-2513,-2535,-2554,-2573,-2592,-2615,-2641,-2672,-2704,-2737,-2769,-2801,-2830,-2859,
+-2885,-2909,-2930,-2948,-2964,-2979,-2993,-3007,-3022,-3037,-3053,-3072,-3095,-3123,-3155,-3188,-3220,-3250,-3275,-3297,-3316,
+-3333,-3347,-3359,-3367,-3372,-3375,-3379,-3386,-3397,-3413,-3432,-3452,-3472,-3492,-3512,-3533,-3554,-3576,-3595,-3610,-3621,
+-3626,-3624,-3617,-3604,-3587,-3569,-3554,-3547,-3550,-3563,-3583,-3607,-3629,-3648,-3662,-3671,-3678,-3684,-3690,-3697,-3706,
+-3719,-3735,-3756,-3778,-3798,-3812,-3816,-3812,-3799,-3782,-3761,-3739,-3718,-3701,-3691,-3695,-3716,-3753,-3803,-3855,-3899,
+-3929,-3943,-3947,-3947,-3952,-3965,-3984,-4002,-4015,-4020,-4018,-4015,-4015,-4020,-4026,-4028,-4020,-3998,-3964,-3921,-3874,
+-3829,-3787,-3748,-3713,-3681,-3652,-3625,-3599,-3572,-3542,-3510,-3478,-3447,-3424,-3409,-3403,-3404,-3407,-3408,-3406,-3402,
+-3396,-3392,-3390,-3390,-3390,-3387,-3382,-3371,-3356,-3335,-3306,-3268,-3218,-3157,-3087,-3010,-2929,-2849,-2772,-2700,-2635,
+-2575,-2520,-2467,-2414,-2358,-2300,-2243,-2190,-2147,-2117,-2098,-2087,-2078,-2065,-2043,-2010,-1968,-1920,-1866,-1809,-1750,
+-1691,-1636,-1588,-1551,-1526,-1511,-1499,-1484,-1461,-1427,-1387,-1345,-1306,-1270,-1237,-1202,-1162,-1117,-1068,-1019,-970,
+-923,-876,-827,-775,-723,-675,-632,-595,-559,-515,-458,-384,-296,-201,-111,-32,31,83,127,170,213,
+258,302,344,383,422,462,507,554,601,643,676,700,716,728,743,765,797,840,889,940,984,
+1018,1039,1048,1049,1047,1048,1054,1065,1079,1094,1105,1113,1118,1122,1129,1141,1159,1183,1213,1248,1285,
+1324,1362,1398,1431,1461,1486,1504,1513,1510,1496,1471,1441,1410,1383,1362,1346,1335,1325,1319,1317,1321,
+1333,1350,1369,1383,1391,1392,1390,1391,1400,1420,1448,1480,1509,1532,1550,1564,1578,1591,1603,1613,1619,
+1619,1616,1613,1612,1614,1620,1628,1636,1642,1648,1653,1658,1662,1663,1660,1651,1639,1626,1618,1618,1628,
+1646,1669,1690,1704,1705,1696,1680,1663,1655,1661,1684,1722,1770,1820,1865,1899,1920,1928,1925,1914,1898,
+1882,1867,1855,1850,1852,1863,1880,1900,1918,1927,1921,1897,1856,1802,1743,1684,1631,1583,1536,1485,1426,
+1360,1291,1227,1176,1141,1119,1105,1091,1070,1041,1007,972,942,916,891,861,822,773,717,664,621,
+595,588,597,617,640,657,662,651,622,575,514,444,373,307,252,214,192,184,185,189,192,
+190,182,170,156,145,137,132,127,121,112,101,90,84,83,87,93,98,101,102,105,112,
+126,143,157,163,158,146,132,124,126,136,148,156,157,155,161,184,226,281,333,368,376,
+361,341,340,380,466,589,724,844,925,962,962,945,930,930,947,974,1002,1023,1036,1044,1053,
+1067,1084,1101,1115,1123,1127,1132,1140,1152,1169,1186,1200,1212,1222,1234,1250,1272,1297,1322,1344,1362,
+1376,1388,1398,1408,1416,1424,1433,1444,1460,1480,1503,1525,1540,1548,1546,1539,1529,1521,1517,1516,1517,
+1518,1518,1516,1512,1506,1501,1495,1492,1491,1495,1502,1511,1517,1517,1507,1487,1458,1424,1389,1357,1330,
+1312,1301,1299,1303,1310,1315,1313,1302,1284,1264,1252,1258,1284,1327,1377,1422,1449,1452,1431,1392,1341,
+1283,1218,1143,1056,960,859,763,682,625,596,591,606,633,665,696,722,741,750,750,744,734,
+723,710,695,676,651,622,590,560,535,514,496,473,440,396,344,292,248,217,199,189,180,
+165,142,115,93,84,95,128,179,240,300,349,377,382,362,321,269,217,176,153,151,166,
+190,213,227,227,214,191,164,138,113,93,74,56,37,16,-8,-37,-68,-99,-130,-158,-184,
+-208,-232,-259,-290,-328,-370,-415,-461,-505,-545,-580,-611,-639,-668,-700,-742,-795,-859,-931,-1003,-1068,
+-1123,-1168,-1205,-1240,-1278,-1318,-1357,-1389,-1411,-1422,-1429,-1438,-1459,-1494,-1542,-1596,-1650,-1700,-1745,-1788,-1833,
+-1879,-1925,-1964,-1995,-2017,-2034,-2053,-2082,-2122,-2170,-2219,-2260,-2288,-2302,-2307,-2307,-2310,-2318,-2335,-2363,-2401,
+-2450,-2508,-2572,-2636,-2692,-2736,-2767,-2789,-2809,-2831,-2859,-2889,-2916,-2935,-2945,-2947,-2948,-2955,-2973,-3002,-3037,
+-3073,-3103,-3125,-3140,-3149,-3156,-3165,-3178,-3195,-3216,-3243,-3273,-3306,-3339,-3371,-3400,-3425,-3446,-3466,-3485,-3502,
+-3519,-3536,-3555,-3577,-3603,-3636,-3674,-3715,-3756,-3798,-3838,-3879,-3921,-3963,-4005,-4045,-4081,-4112,-4141,-4171,-4204,
+-4240,-4278,-4316,-4350,-4379,-4402,-4424,-4445,-4469,-4498,-4530,-4564,-4599,-4633,-4663,-4690,-4711,-4728,-4741,-4752,-4762,
+-4771,-4779,-4785,-4790,-4793,-4795,-4800,-4808,-4821,-4839,-4859,-4876,-4888,-4891,-4886,-4875,-4861,-4847,-4835,-4828,-4823,
+-4819,-4813,-4805,-4795,-4782,-4768,-4755,-4743,-4733,-4725,-4718,-4711,-4704,-4698,-4692,-4683,-4670,-4648,-4618,-4578,-4533,
+-4487,-4445,-4412,-4387,-4367,-4349,-4327,-4299,-4263,-4222,-4176,-4130,-4083,-4036,-3989,-3942,-3894,-3847,-3801,-3756,-3712,
+-3669,-3626,-3583,-3540,-3498,-3457,-3416,-3375,-3333,-3290,-3245,-3198,-3148,-3096,-3041,-2987,-2937,-2894,-2863,-2845,-2836,
+-2833,-2827,-2813,-2785,-2741,-2681,-2608,-2525,-2437,-2346,-2258,-2173,-2095,-2021,-1949,-1876,-1796,-1708,-1611,-1507,-1401,
+-1299,-1205,-1122,-1051,-990,-938,-894,-858,-828,-805,-790,-779,-770,-753,-719,-658,-562,-431,-271,-97,70,
+214,321,388,424,443,461,490,535,593,659,726,791,855,918,983,1051,1119,1185,1248,1310,1373,
+1442,1515,1591,1665,1733,1794,1849,1902,1959,2021,2089,2160,2231,2299,2363,2424,2485,2546,2609,2672,2736,
+2801,2867,2937,3010,3086,3165,3242,3315,3383,3445,3503,3559,3615,3673,3733,3794,3854,3911,3962,4007,4049,
+4091,4135,4183,4236,4291,4346,4397,4444,4487,4529,4572,4618,4667,4716,4763,4807,4848,4888,4928,4970,5015,
+5062,5109,5157,5205,5255,5306,5359,5413,5467,5519,5568,5616,5662,5708,5755,5804,5855,5908,5961,6013,6060,
+6102,6137,6166,6192,6214,6235,6255,6271,6281,6285,6283,6275,6266,6259,6255,6255,6256,6257,6256,6252,6245,
+6237,6228,6220,6213,6205,6196,6187,6177,6167,6159,6151,6145,6139,6134,6128,6121,6114,6106,6099,6093,6090,
+6089,6090,6093,6096,6097,6098,6097,6098,6102,6110,6121,6134,6143,6147,6144,6133,6117,6100,6084,6070,6057,
+6043,6024,6001,5976,5953,5936,5929,5930,5939,5951,5964,5976,5989,6006,6025,6041,6043,6022,5970,5890,5795,
+5703,5633,5597,5592,5606,5619,5618,5596,5562,5534,5531,5562,5623,5698,5766,5810,5821,5806,5778,5754,5741,
+5738,5737,5727,5702,5665,5623,5588,5564,5551,5540,5518,5478,5417,5340,5259,5186,5128,5086,5055,5029,5004,
+4977,4950,4925,4904,4885,4865,4842,4814,4784,4756,4741,4713,4692,4676,4663,4645,4620,4586,4546,4503,4463,
+4428,4399,4376,4356,4338,4321,4305,4290,4275,4261,4245,4228,4209,4189,4169,4150,4132,4115,4098,4080,4059,
+4034,4004,3972,3940,3911,3887,3870,3859,3850,3839,3822,3795,3761,3722,3683,3649,3622,3600,3579,3554,3523,
+3484,3441,3398,3358,3322,3290,3258,3221,3175,3120,3055,2985,2914,2847,2788,2738,2696,2660,2625,2586,2541,
+2487,2427,2365,2303,2248,2201,2164,2136,2115,2101,2092,2085,2080,2075,2068,2055,2038,2014,1987,1959,1932,
+1912,1900,1899,1908,1927,1951,1977,2000,2018,2028,2029,2022,2007,1985,1958,1927,1896,1865,1839,1818,1801,
+1784,1764,1740,1712,1681,1654,1631,1616,1606,1600,1593,1584,1574,1565,1559,1558,1562,1569,1576,1579,1576,
+1565,1545,1516,1479,1440,1403,1374,1359,1357,1368,1385,1400,1407,1400,1381,1353,1321,1290,1264,1244,1228,
+1215,1203,1192,1180,1167,1150,1128,1100,1069,1036,1005,980,960,945,931,917,901,885,873,869,875,
+891,911,930,940,936,919,890,855,818,784,754,727,700,672,643,613,584,556,529,501,470,
+434,394,352,310,271,237,205,174,140,103,63,19,-24,-67,-110,-152,-193,-233,-269,-300,-325,
+-345,-359,-372,-384,-397,-411,-425,-440,-456,-476,-500,-527,-552,-572,-583,-583,-577,-572,-579,-605,-656,
+-729,-818,-914,-1005,-1086,-1154,-1211,-1261,-1307,-1352,-1398,-1444,-1490,-1535,-1579,-1621,-1660,-1695,-1726,-1755,-1783,
+-1816,-1855,-1901,-1953,-2006,-2056,-2099,-2133,-2160,-2183,-2206,-2233,-2265,-2301,-2340,-2378,-2415,-2451,-2484,-2515,-2544,
+-2571,-2595,-2620,-2645,-2672,-2702,-2732,-2762,-2790,-2816,-2839,-2862,-2885,-2908,-2930,-2950,-2968,-2983,-2996,-3009,-3024,
+-3041,-3061,-3084,-3109,-3136,-3166,-3196,-3226,-3255,-3279,-3300,-3317,-3330,-3342,-3351,-3359,-3365,-3371,-3376,-3382,-3392,
+-3406,-3422,-3441,-3460,-3479,-3497,-3515,-3534,-3554,-3574,-3594,-3611,-3624,-3631,-3633,-3627,-3616,-3600,-3586,-3576,-3575,
+-3585,-3604,-3628,-3653,-3676,-3693,-3707,-3718,-3726,-3734,-3738,-3740,-3741,-3743,-3750,-3761,-3777,-3794,-3807,-3813,-3813,
+-3809,-3801,-3793,-3783,-3772,-3762,-3758,-3766,-3792,-3835,-3891,-3948,-3994,-4019,-4023,-4013,-3999,-3990,-3993,-4004,-4018,
+-4029,-4033,-4032,-4031,-4033,-4040,-4047,-4049,-4038,-4013,-3976,-3931,-3883,-3837,-3794,-3754,-3717,-3684,-3656,-3631,-3610,
+-3591,-3570,-3547,-3523,-3499,-3479,-3466,-3458,-3454,-3450,-3445,-3437,-3428,-3419,-3411,-3406,-3403,-3402,-3401,-3399,-3392,
+-3377,-3351,-3311,-3255,-3186,-3107,-3024,-2940,-2858,-2780,-2705,-2633,-2567,-2507,-2456,-2414,-2378,-2343,-2307,-2266,-2225,
+-2188,-2159,-2141,-2129,-2119,-2104,-2078,-2040,-1994,-1945,-1896,-1849,-1800,-1747,-1687,-1622,-1556,-1497,-1448,-1412,-1386,
+-1364,-1342,-1317,-1288,-1256,-1223,-1188,-1151,-1112,-1072,-1032,-991,-950,-906,-858,-804,-747,-691,-642,-602,-570,
+-541,-504,-452,-381,-295,-203,-114,-36,27,81,130,180,234,291,347,398,444,486,525,565,605,
+645,680,708,727,739,748,759,776,804,843,891,942,991,1030,1057,1071,1075,1075,1075,1080,1090,
+1105,1120,1135,1146,1156,1166,1178,1195,1218,1248,1282,1321,1360,1398,1432,1460,1481,1496,1506,1509,1508,
+1499,1486,1468,1448,1430,1413,1399,1384,1368,1352,1337,1330,1334,1351,1376,1402,1422,1431,1430,1425,1425,
+1437,1462,1497,1534,1567,1591,1608,1619,1630,1642,1655,1666,1673,1675,1673,1669,1665,1663,1662,1662,1662,
+1662,1663,1665,1668,1670,1669,1662,1650,1636,1624,1618,1621,1634,1654,1676,1694,1706,1708,1702,1693,1687,
+1690,1706,1736,1779,1828,1878,1921,1955,1975,1983,1981,1971,1957,1942,1930,1921,1919,1922,1931,1941,1951,
+1956,1952,1937,1910,1872,1823,1769,1711,1651,1589,1523,1451,1376,1301,1234,1184,1153,1140,1139,1137,1125,
+1099,1059,1015,975,945,924,906,882,844,791,728,665,614,582,575,587,612,639,659,665,652,
+618,566,503,435,371,317,276,248,231,220,214,208,201,194,185,174,163,153,144,137,132,
+127,120,112,100,89,80,76,78,84,93,105,117,131,145,157,166,168,164,157,151,152,
+161,176,192,203,208,211,217,235,265,303,334,348,338,310,283,281,323,415,547,695,829,
+926,977,988,977,964,961,975,1000,1027,1047,1060,1067,1075,1088,1107,1127,1145,1156,1161,1162,1166,
+1174,1187,1204,1220,1233,1244,1255,1268,1285,1306,1329,1352,1372,1389,1403,1415,1425,1434,1442,1450,1460,
+1472,1488,1506,1523,1537,1544,1543,1535,1524,1513,1503,1496,1490,1483,1475,1467,1459,1455,1456,1464,1479,
+1496,1514,1526,1527,1515,1487,1447,1401,1356,1319,1295,1285,1289,1302,1319,1338,1354,1366,1372,1372,1365,
+1357,1352,1356,1374,1405,1443,1479,1500,1498,1468,1413,1338,1252,1161,1067,975,884,799,723,665,626,
+611,616,636,665,697,727,751,770,780,783,780,771,759,745,729,711,687,657,623,587,555,
+529,511,497,481,457,422,376,323,268,216,173,136,106,80,56,34,18,11,15,35,72,
+123,184,245,294,322,323,297,251,200,158,133,129,140,157,169,170,157,137,114,94,79,
+69,59,47,32,14,-7,-31,-59,-90,-124,-160,-195,-227,-254,-277,-297,-318,-343,-374,-411,-455,
+-502,-552,-601,-644,-681,-710,-734,-759,-790,-832,-886,-947,-1010,-1069,-1118,-1160,-1197,-1234,-1272,-1309,-1343,
+-1369,-1386,-1398,-1412,-1433,-1466,-1508,-1557,-1606,-1652,-1696,-1740,-1787,-1836,-1885,-1928,-1960,-1983,-2002,-2023,-2054,
+-2096,-2144,-2190,-2227,-2249,-2256,-2254,-2250,-2252,-2264,-2286,-2319,-2363,-2416,-2476,-2540,-2601,-2653,-2692,-2719,-2738,
+-2757,-2782,-2813,-2847,-2877,-2898,-2906,-2906,-2905,-2912,-2931,-2960,-2995,-3027,-3052,-3068,-3076,-3082,-3091,-3104,-3124,
+-3148,-3175,-3205,-3237,-3271,-3304,-3335,-3362,-3384,-3403,-3419,-3434,-3449,-3464,-3480,-3500,-3523,-3551,-3583,-3619,-3658,
+-3696,-3735,-3776,-3818,-3865,-3913,-3961,-4004,-4042,-4073,-4100,-4128,-4158,-4193,-4230,-4266,-4297,-4323,-4345,-4365,-4389,
+-4419,-4456,-4497,-4541,-4584,-4623,-4657,-4684,-4705,-4719,-4729,-4737,-4744,-4752,-4760,-4768,-4775,-4780,-4784,-4789,-4796,
+-4808,-4824,-4842,-4859,-4871,-4877,-4876,-4868,-4858,-4847,-4837,-4830,-4825,-4820,-4815,-4808,-4798,-4787,-4776,-4765,-4757,
+-4750,-4745,-4741,-4736,-4731,-4725,-4718,-4709,-4694,-4672,-4638,-4594,-4541,-4487,-4437,-4398,-4373,-4360,-4352,-4344,-4328,
+-4301,-4264,-4220,-4174,-4128,-4084,-4042,-4000,-3957,-3911,-3864,-3816,-3770,-3724,-3681,-3639,-3597,-3554,-3509,-3462,-3414,
+-3366,-3319,-3272,-3225,-3175,-3123,-3069,-3015,-2964,-2920,-2887,-2865,-2852,-2842,-2831,-2814,-2787,-2747,-2694,-2630,-2554,
+-2469,-2378,-2285,-2194,-2110,-2032,-1960,-1890,-1817,-1736,-1646,-1546,-1442,-1338,-1241,-1154,-1081,-1021,-973,-935,-904,
+-878,-856,-837,-820,-805,-787,-760,-714,-639,-531,-390,-225,-53,107,240,336,396,430,451,475,510,
+560,623,693,767,840,913,984,1053,1119,1181,1240,1298,1359,1424,1495,1569,1644,1714,1778,1836,1890,
+1944,1999,2058,2120,2184,2250,2318,2387,2458,2528,2597,2664,2728,2792,2858,2927,3002,3080,3159,3235,3304,
+3367,3423,3474,3524,3575,3628,3686,3747,3808,3869,3927,3981,4033,4084,4138,4194,4253,4311,4365,4415,4460,
+4502,4543,4586,4631,4677,4723,4768,4810,4852,4894,4938,4983,5030,5077,5123,5170,5219,5270,5325,5381,5438,
+5492,5545,5594,5643,5692,5742,5793,5846,5899,5952,6003,6050,6092,6128,6157,6179,6198,6214,6230,6244,6256,
+6262,6261,6254,6244,6235,6229,6229,6232,6235,6234,6229,6220,6209,6199,6192,6188,6185,6182,6177,6168,6159,
+6149,6140,6133,6129,6125,6122,6119,6115,6111,6106,6102,6097,6094,6091,6090,6091,6094,6098,6103,6108,6112,
+6117,6123,6129,6135,6138,6138,6130,6116,6095,6070,6045,6022,6003,5989,5978,5967,5956,5945,5934,5925,5921,
+5921,5926,5937,5954,5978,6008,6040,6067,6077,6059,6007,5924,5825,5728,5655,5616,5612,5628,5644,5644,5621,
+5582,5544,5527,5544,5594,5664,5733,5785,5810,5811,5797,5780,5768,5760,5749,5729,5697,5656,5614,5581,5561,
+5550,5539,5517,5478,5420,5351,5282,5222,5178,5147,5123,5100,5071,5037,4999,4963,4930,4901,4872,4842,4809,
+4774,4741,4733,4702,4678,4659,4643,4626,4605,4577,4543,4505,4467,4431,4399,4372,4350,4331,4314,4299,4285,
+4272,4258,4242,4224,4204,4181,4158,4136,4117,4100,4085,4070,4055,4036,4012,3984,3953,3923,3897,3877,3863,
+3853,3844,3832,3815,3791,3762,3733,3705,3680,3658,3634,3605,3568,3524,3474,3423,3376,3334,3299,3266,3231,
+3189,3138,3077,3009,2940,2875,2818,2769,2729,2694,2658,2618,2573,2521,2465,2409,2355,2305,2262,2226,2196,
+2172,2154,2141,2134,2130,2127,2122,2112,2097,2075,2049,2020,1992,1970,1956,1954,1964,1983,2009,2036,2058,
+2071,2073,2065,2048,2024,1995,1963,1930,1898,1871,1851,1838,1831,1824,1812,1793,1764,1731,1696,1665,1640,
+1623,1610,1600,1592,1588,1588,1594,1605,1617,1626,1627,1617,1598,1570,1536,1498,1458,1419,1383,1355,1337,
+1332,1338,1349,1360,1364,1357,1341,1318,1295,1275,1261,1251,1244,1236,1224,1209,1188,1162,1131,1095,1055,
+1016,980,951,931,917,908,899,887,873,861,853,854,865,882,900,912,913,900,875,843,809,
+776,748,724,702,678,653,624,594,563,532,502,471,437,400,359,317,274,234,196,160,126,
+89,50,7,-37,-84,-131,-177,-222,-265,-305,-342,-374,-400,-419,-432,-440,-445,-450,-456,-465,-478,
+-495,-516,-540,-565,-588,-605,-616,-620,-622,-626,-641,-671,-722,-790,-871,-956,-1039,-1112,-1175,-1228,-1275,
+-1321,-1368,-1417,-1469,-1520,-1569,-1615,-1656,-1692,-1725,-1755,-1785,-1816,-1851,-1891,-1936,-1985,-2034,-2080,-2119,-2151,
+-2177,-2200,-2226,-2255,-2289,-2327,-2365,-2403,-2438,-2471,-2504,-2538,-2572,-2606,-2640,-2674,-2706,-2738,-2768,-2797,-2823,
+-2846,-2865,-2882,-2898,-2915,-2933,-2951,-2969,-2985,-3000,-3013,-3027,-3045,-3067,-3093,-3123,-3155,-3188,-3220,-3252,-3280,
+-3305,-3325,-3339,-3348,-3354,-3358,-3363,-3369,-3376,-3384,-3394,-3406,-3421,-3437,-3455,-3474,-3491,-3506,-3519,-3531,-3543,
+-3556,-3571,-3587,-3602,-3615,-3625,-3629,-3627,-3620,-3610,-3602,-3599,-3607,-3624,-3648,-3676,-3701,-3722,-3739,-3752,-3764,
+-3776,-3786,-3792,-3793,-3791,-3788,-3788,-3793,-3802,-3813,-3821,-3825,-3826,-3825,-3825,-3826,-3825,-3822,-3815,-3811,-3816,
+-3838,-3879,-3933,-3990,-4037,-4062,-4065,-4052,-4033,-4020,-4017,-4022,-4030,-4035,-4035,-4031,-4028,-4028,-4032,-4035,-4032,
+-4017,-3991,-3955,-3914,-3873,-3833,-3795,-3759,-3724,-3692,-3665,-3642,-3624,-3608,-3592,-3575,-3557,-3539,-3523,-3510,-3499,
+-3490,-3482,-3473,-3463,-3452,-3440,-3428,-3415,-3402,-3393,-3387,-3384,-3380,-3367,-3340,-3291,-3221,-3134,-3039,-2946,-2861,
+-2785,-2717,-2651,-2585,-2520,-2461,-2414,-2380,-2358,-2342,-2325,-2302,-2271,-2237,-2204,-2176,-2153,-2129,-2098,-2059,-2010,
+-1957,-1905,-1861,-1821,-1780,-1732,-1671,-1598,-1520,-1445,-1385,-1343,-1318,-1302,-1288,-1268,-1240,-1204,-1165,-1127,-1093,
+-1065,-1041,-1017,-992,-959,-917,-862,-798,-728,-661,-603,-559,-528,-503,-475,-434,-378,-306,-225,-145,-70,
+-3,57,118,181,247,313,375,429,475,516,554,593,634,677,717,752,780,800,815,828,844,
+866,897,936,980,1024,1062,1090,1105,1109,1107,1104,1105,1113,1127,1144,1163,1181,1199,1217,1237,1262,
+1291,1325,1362,1401,1437,1467,1490,1504,1509,1506,1500,1491,1481,1470,1460,1449,1441,1435,1431,1425,1416,
+1400,1381,1364,1355,1361,1381,1412,1443,1465,1473,1470,1462,1461,1475,1504,1545,1587,1623,1648,1661,1668,
+1674,1682,1692,1703,1713,1719,1723,1724,1723,1722,1719,1714,1709,1705,1703,1702,1702,1699,1691,1677,1660,
+1643,1630,1624,1626,1635,1648,1664,1678,1691,1702,1711,1720,1731,1747,1768,1797,1833,1873,1915,1955,1989,
+2016,2032,2040,2039,2032,2023,2013,2005,2000,1997,1995,1993,1988,1981,1969,1953,1930,1899,1860,1812,1755,
+1689,1614,1531,1440,1347,1258,1182,1128,1099,1094,1103,1112,1111,1093,1059,1019,981,953,934,919,897,
+861,811,751,691,642,610,597,601,616,634,647,650,637,607,560,501,437,377,327,291,267,
+252,240,228,216,205,195,187,178,168,156,142,129,120,113,110,106,100,92,83,78,79,
+86,98,114,129,144,155,164,170,174,175,175,175,179,186,198,210,221,229,236,246,262,
+283,304,318,318,301,272,248,246,283,365,486,627,766,881,961,1006,1025,1033,1040,1052,1067,
+1082,1092,1098,1101,1106,1117,1133,1152,1167,1177,1181,1181,1183,1190,1203,1222,1241,1258,1271,1282,1291,
+1304,1320,1340,1361,1381,1399,1415,1429,1441,1453,1463,1471,1478,1484,1492,1502,1513,1523,1530,1530,1525,
+1514,1500,1486,1472,1460,1448,1437,1429,1426,1430,1445,1469,1499,1529,1550,1555,1539,1499,1442,1374,1309,
+1256,1225,1217,1231,1259,1294,1327,1354,1375,1390,1402,1413,1425,1438,1453,1470,1488,1503,1511,1506,1484,
+1440,1376,1295,1203,1107,1012,922,841,771,716,679,660,659,671,692,717,740,759,774,785,792,
+795,793,785,773,758,742,724,705,682,655,624,589,554,522,494,470,448,424,397,363,324,
+281,235,190,149,113,83,59,38,18,0,-17,-27,-21,5,53,117,184,238,266,262,231,
+187,144,117,107,113,123,128,124,112,99,89,87,89,88,79,57,24,-13,-51,-84,-113,
+-139,-167,-199,-235,-272,-306,-334,-357,-374,-391,-410,-434,-468,-510,-560,-613,-665,-709,-742,-763,-779,
+-796,-821,-860,-912,-973,-1033,-1088,-1135,-1174,-1209,-1245,-1281,-1317,-1348,-1373,-1392,-1409,-1428,-1453,-1486,-1524,
+-1565,-1609,-1654,-1703,-1756,-1811,-1863,-1907,-1940,-1963,-1982,-2003,-2034,-2075,-2121,-2165,-2198,-2216,-2222,-2221,-2221,
+-2228,-2247,-2276,-2314,-2359,-2411,-2467,-2524,-2577,-2621,-2654,-2677,-2695,-2716,-2745,-2782,-2823,-2859,-2885,-2897,-2901,
+-2903,-2911,-2929,-2954,-2980,-3001,-3013,-3018,-3019,-3024,-3036,-3055,-3081,-3110,-3141,-3172,-3203,-3235,-3267,-3296,-3321,
+-3341,-3356,-3370,-3382,-3396,-3412,-3430,-3450,-3474,-3501,-3532,-3567,-3604,-3643,-3683,-3725,-3770,-3819,-3869,-3917,-3961,
+-3998,-4028,-4055,-4082,-4113,-4146,-4181,-4214,-4242,-4267,-4290,-4317,-4349,-4388,-4433,-4481,-4527,-4570,-4608,-4639,-4664,
+-4683,-4696,-4705,-4711,-4718,-4726,-4736,-4747,-4758,-4766,-4773,-4779,-4786,-4795,-4808,-4822,-4838,-4851,-4859,-4863,-4863,
+-4859,-4854,-4848,-4841,-4834,-4826,-4818,-4810,-4801,-4793,-4785,-4779,-4774,-4770,-4767,-4764,-4760,-4754,-4747,-4738,-4726,
+-4708,-4682,-4644,-4595,-4538,-4480,-4428,-4389,-4367,-4361,-4365,-4369,-4366,-4350,-4320,-4279,-4233,-4187,-4143,-4101,-4060,
+-4017,-3970,-3920,-3869,-3820,-3773,-3729,-3687,-3645,-3601,-3554,-3503,-3451,-3400,-3351,-3304,-3258,-3212,-3163,-3111,-3058,
+-3007,-2961,-2923,-2894,-2871,-2853,-2835,-2814,-2786,-2750,-2703,-2645,-2575,-2494,-2404,-2310,-2215,-2123,-2037,-1958,-1884,
+-1810,-1735,-1655,-1568,-1477,-1382,-1289,-1201,-1124,-1061,-1013,-980,-958,-942,-927,-909,-888,-862,-833,-798,-754,
+-691,-602,-482,-333,-166,2,156,280,368,424,457,481,509,548,602,666,739,815,891,965,1035,
+1101,1163,1221,1279,1338,1401,1468,1540,1612,1683,1751,1814,1873,1930,1985,2040,2097,2156,2219,2288,2361,
+2438,2514,2588,2659,2725,2791,2858,2929,3003,3079,3152,3220,3280,3334,3384,3432,3483,3537,3597,3661,3728,
+3796,3862,3924,3982,4038,4092,4148,4205,4264,4322,4377,4427,4472,4515,4557,4599,4642,4684,4724,4764,4803,
+4845,4890,4939,4990,5040,5088,5135,5182,5232,5286,5343,5402,5459,5512,5562,5610,5659,5711,5766,5823,5880,
+5934,5984,6029,6070,6106,6137,6161,6180,6194,6205,6214,6222,6228,6230,6228,6222,6214,6208,6205,6204,6204,
+6202,6196,6186,6174,6164,6158,6156,6156,6157,6155,6150,6142,6134,6127,6122,6119,6117,6115,6113,6110,6108,
+6107,6106,6104,6102,6099,6096,6095,6097,6103,6112,6122,6131,6138,6142,6143,6142,6139,6135,6128,6116,6097,
+6070,6038,6005,5978,5960,5955,5958,5966,5973,5972,5964,5950,5936,5928,5930,5944,5968,5997,6026,6049,6057,
+6044,6005,5940,5856,5763,5680,5622,5595,5598,5618,5637,5639,5620,5586,5552,5535,5547,5590,5652,5718,5773,
+5806,5818,5814,5803,5788,5770,5747,5715,5676,5634,5596,5568,5551,5541,5530,5509,5475,5430,5379,5329,5286,
+5251,5222,5192,5156,5114,5066,5017,4971,4931,4897,4866,4835,4802,4767,4733,4726,4698,4673,4653,4635,4619,
+4601,4579,4553,4522,4488,4453,4419,4388,4360,4337,4317,4299,4284,4269,4253,4235,4214,4192,4168,4144,4121,
+4103,4088,4077,4067,4057,4044,4026,4002,3973,3942,3912,3886,3865,3849,3835,3823,3809,3794,3776,3758,3741,
+3725,3708,3686,3657,3616,3566,3508,3447,3391,3342,3303,3272,3242,3207,3164,3110,3048,2983,2920,2864,2815,
+2774,2735,2695,2651,2604,2553,2502,2454,2408,2367,2329,2296,2266,2242,2224,2212,2206,2203,2200,2195,2185,
+2170,2150,2127,2103,2079,2059,2043,2037,2040,2052,2070,2089,2104,2109,2103,2086,2060,2029,1996,1962,1930,
+1901,1880,1866,1860,1860,1858,1851,1832,1802,1764,1723,1685,1654,1631,1616,1606,1602,1603,1613,1629,1648,
+1664,1672,1665,1643,1609,1567,1524,1482,1443,1407,1374,1348,1329,1320,1322,1331,1342,1349,1350,1343,1331,
+1318,1305,1295,1286,1275,1259,1238,1210,1177,1140,1099,1057,1015,976,944,920,904,894,886,877,865,
+851,840,835,837,846,856,861,857,842,816,785,754,728,710,697,688,677,662,641,614,582,
+548,513,479,445,411,375,336,296,253,210,168,127,88,47,4,-41,-90,-142,-193,-244,-291,
+-335,-375,-410,-441,-466,-484,-496,-501,-501,-499,-497,-498,-505,-519,-538,-560,-584,-605,-622,-634,-640,
+-645,-654,-672,-704,-753,-817,-894,-975,-1054,-1125,-1186,-1238,-1285,-1331,-1381,-1435,-1492,-1549,-1602,-1648,-1688,
+-1721,-1751,-1781,-1811,-1845,-1882,-1923,-1966,-2011,-2055,-2096,-2133,-2165,-2194,-2221,-2249,-2280,-2313,-2349,-2385,-2419,
+-2452,-2484,-2518,-2554,-2594,-2635,-2677,-2716,-2752,-2785,-2815,-2842,-2866,-2887,-2903,-2917,-2930,-2943,-2957,-2973,-2989,
+-3004,-3019,-3035,-3053,-3076,-3103,-3136,-3171,-3208,-3244,-3279,-3310,-3337,-3359,-3375,-3384,-3387,-3388,-3389,-3392,-3398,
+-3406,-3416,-3427,-3439,-3452,-3467,-3483,-3499,-3514,-3526,-3535,-3542,-3551,-3561,-3574,-3589,-3604,-3618,-3627,-3631,-3628,
+-3621,-3614,-3610,-3615,-3630,-3656,-3688,-3721,-3749,-3771,-3785,-3795,-3802,-3810,-3815,-3819,-3819,-3818,-3817,-3820,-3828,
+-3840,-3850,-3857,-3860,-3860,-3861,-3865,-3872,-3877,-3875,-3866,-3853,-3845,-3852,-3879,-3924,-3977,-4024,-4055,-4067,-4063,
+-4052,-4042,-4037,-4037,-4039,-4038,-4035,-4030,-4027,-4028,-4029,-4027,-4018,-3998,-3970,-3937,-3902,-3867,-3834,-3801,-3768,
+-3736,-3705,-3679,-3657,-3638,-3622,-3607,-3592,-3576,-3561,-3546,-3532,-3518,-3504,-3492,-3482,-3474,-3467,-3457,-3441,-3420,
+-3396,-3374,-3361,-3356,-3355,-3348,-3323,-3270,-3189,-3087,-2978,-2876,-2789,-2719,-2661,-2607,-2552,-2496,-2443,-2400,-2373,
+-2359,-2353,-2347,-2333,-2310,-2279,-2244,-2209,-2173,-2134,-2088,-2032,-1969,-1905,-1846,-1796,-1753,-1711,-1662,-1601,-1531,
+-1458,-1392,-1343,-1313,-1298,-1288,-1271,-1241,-1196,-1143,-1090,-1045,-1015,-999,-992,-987,-975,-951,-909,-850,-777,
+-697,-618,-550,-498,-460,-433,-409,-379,-338,-285,-223,-156,-88,-20,48,119,190,261,328,386,436,
+477,516,555,598,646,697,747,793,832,863,886,903,918,935,958,990,1029,1070,1108,1137,1152,
+1154,1149,1142,1139,1144,1157,1176,1198,1220,1242,1264,1290,1319,1352,1389,1426,1460,1489,1508,1517,1515,
+1506,1492,1477,1465,1455,1446,1439,1433,1429,1427,1427,1426,1421,1411,1396,1384,1380,1390,1416,1451,1485,
+1508,1516,1510,1499,1496,1508,1537,1579,1623,1662,1688,1703,1710,1713,1717,1722,1729,1736,1744,1751,1758,
+1764,1769,1770,1768,1765,1762,1759,1756,1751,1741,1724,1704,1683,1664,1652,1646,1644,1646,1648,1654,1664,
+1681,1704,1732,1761,1788,1813,1835,1857,1882,1911,1944,1979,2013,2042,2064,2079,2087,2089,2088,2085,2081,
+2076,2069,2058,2043,2025,2005,1985,1963,1938,1907,1869,1822,1766,1701,1628,1545,1453,1353,1252,1158,1084,
+1038,1022,1029,1048,1062,1063,1048,1021,991,964,942,922,897,862,819,772,728,692,667,651,642,
+634,628,622,613,599,575,537,487,429,370,319,282,257,243,233,224,215,206,199,193,185,
+173,156,134,112,95,85,83,86,90,92,92,92,96,104,116,129,142,152,160,167,175,
+184,194,204,210,213,214,213,213,216,220,229,240,254,269,281,287,283,269,249,232,231,
+257,316,409,527,658,785,897,985,1047,1087,1109,1121,1127,1130,1132,1135,1141,1149,1162,1175,1188,
+1196,1199,1197,1194,1194,1201,1216,1237,1260,1281,1298,1310,1320,1330,1343,1358,1375,1391,1405,1418,1430,
+1443,1456,1469,1479,1485,1489,1492,1495,1500,1505,1508,1506,1498,1485,1468,1452,1440,1432,1431,1434,1442,
+1456,1475,1499,1527,1553,1570,1571,1550,1505,1437,1356,1274,1203,1154,1132,1139,1168,1210,1255,1297,1332,
+1361,1388,1415,1444,1475,1502,1523,1532,1525,1500,1458,1400,1330,1252,1171,1091,1016,946,884,831,786,
+753,733,727,733,748,767,786,800,808,811,811,810,807,801,792,778,759,738,716,696,676,
+657,636,612,584,551,515,478,442,408,377,349,321,292,261,227,192,156,125,98,77,57,
+34,3,-31,-66,-87,-85,-52,8,84,156,205,222,207,171,131,99,84,83,87,90,88,
+84,85,95,114,135,145,134,96,37,-32,-100,-155,-194,-220,-241,-264,-292,-325,-360,-391,-417,
+-436,-450,-463,-480,-504,-538,-581,-631,-682,-728,-765,-790,-805,-818,-836,-866,-910,-966,-1026,-1083,-1134,
+-1176,-1212,-1246,-1279,-1314,-1347,-1376,-1400,-1419,-1436,-1454,-1477,-1505,-1540,-1581,-1630,-1684,-1742,-1800,-1852,-1895,
+-1925,-1946,-1962,-1983,-2013,-2053,-2097,-2139,-2171,-2190,-2197,-2201,-2207,-2222,-2247,-2282,-2323,-2368,-2415,-2463,-2509,
+-2551,-2586,-2614,-2635,-2657,-2684,-2720,-2764,-2812,-2854,-2885,-2904,-2913,-2921,-2931,-2945,-2962,-2976,-2982,-2980,-2974,
+-2970,-2974,-2988,-3012,-3042,-3073,-3105,-3136,-3167,-3198,-3227,-3253,-3274,-3289,-3301,-3313,-3327,-3344,-3366,-3389,-3414,
+-3440,-3468,-3499,-3534,-3573,-3613,-3655,-3697,-3740,-3783,-3826,-3868,-3905,-3939,-3969,-3999,-4030,-4065,-4101,-4136,-4166,
+-4192,-4215,-4240,-4270,-4309,-4354,-4402,-4450,-4492,-4529,-4560,-4587,-4611,-4631,-4647,-4660,-4669,-4678,-4687,-4699,-4712,
+-4726,-4739,-4750,-4759,-4769,-4779,-4792,-4807,-4822,-4834,-4845,-4851,-4855,-4857,-4856,-4852,-4846,-4838,-4829,-4819,-4811,
+-4805,-4801,-4798,-4795,-4792,-4787,-4781,-4775,-4768,-4762,-4754,-4745,-4733,-4714,-4686,-4647,-4598,-4541,-4483,-4432,-4394,
+-4374,-4369,-4376,-4384,-4387,-4376,-4351,-4313,-4268,-4221,-4177,-4136,-4097,-4056,-4011,-3961,-3908,-3854,-3803,-3756,-3713,
+-3671,-3628,-3583,-3535,-3485,-3434,-3384,-3337,-3292,-3247,-3200,-3152,-3102,-3052,-3003,-2958,-2919,-2885,-2856,-2831,-2807,
+-2780,-2749,-2709,-2658,-2595,-2520,-2434,-2342,-2246,-2149,-2053,-1961,-1874,-1793,-1716,-1643,-1570,-1496,-1417,-1334,-1249,
+-1170,-1102,-1051,-1020,-1005,-999,-994,-983,-963,-933,-897,-857,-811,-756,-681,-580,-450,-294,-123,44,193,
+314,400,458,497,529,563,605,658,719,786,856,926,995,1061,1126,1187,1248,1309,1372,1437,1504,
+1572,1642,1710,1778,1843,1906,1966,2024,2082,2142,2206,2276,2351,2429,2506,2581,2652,2720,2788,2857,2929,
+3002,3073,3138,3197,3249,3299,3348,3402,3461,3526,3596,3668,3739,3809,3874,3934,3989,4042,4096,4151,4208,
+4267,4324,4378,4426,4470,4512,4554,4597,4640,4681,4722,4760,4800,4843,4890,4942,4995,5047,5097,5144,5193,
+5245,5302,5363,5423,5480,5531,5577,5623,5672,5726,5784,5844,5900,5951,5995,6033,6066,6097,6124,6146,6164,
+6176,6184,6189,6192,6193,6194,6193,6192,6190,6188,6185,6181,6175,6166,6155,6143,6134,6130,6130,6133,6135,
+6134,6130,6123,6116,6111,6110,6111,6113,6113,6111,6108,6105,6103,6104,6105,6106,6105,6103,6102,6105,6112,
+6124,6140,6156,6169,6177,6179,6175,6167,6157,6146,6133,6115,6092,6063,6030,5999,5977,5970,5979,6000,6023,
+6039,6040,6025,5999,5973,5958,5960,5980,6009,6036,6050,6043,6012,5960,5890,5810,5727,5651,5590,5551,5537,
+5544,5562,5581,5590,5587,5574,5562,5561,5580,5619,5670,5723,5768,5799,5815,5818,5811,5796,5772,5741,5702,
+5660,5619,5585,5560,5543,5529,5513,5492,5465,5434,5402,5372,5342,5311,5274,5230,5177,5120,5061,5006,4957,
+4916,4881,4849,4819,4788,4756,4726,4711,4686,4664,4644,4627,4611,4596,4579,4559,4535,4506,4472,4437,4403,
+4372,4345,4322,4302,4284,4267,4250,4232,4212,4191,4169,4147,4127,4110,4097,4087,4079,4071,4060,4046,4026,
+4002,3974,3944,3915,3888,3863,3840,3820,3801,3784,3769,3756,3746,3738,3728,3714,3690,3654,3604,3544,3479,
+3416,3363,3322,3292,3267,3241,3206,3159,3101,3038,2974,2916,2864,2818,2774,2730,2683,2635,2586,2540,2497,
+2457,2421,2388,2359,2334,2316,2305,2300,2299,2298,2293,2282,2266,2247,2227,2207,2188,2170,2152,2135,2122,
+2113,2111,2115,2120,2123,2120,2109,2088,2062,2032,2002,1972,1945,1922,1905,1895,1891,1892,1890,1882,1861,
+1827,1785,1740,1699,1667,1645,1631,1624,1622,1627,1639,1657,1677,1693,1698,1687,1660,1619,1573,1526,1483,
+1444,1411,1382,1359,1344,1340,1346,1360,1378,1393,1402,1403,1397,1384,1369,1351,1329,1304,1273,1238,1199,
+1159,1118,1077,1037,1000,967,939,918,902,890,879,867,854,840,828,820,816,814,809,798,777,
+748,716,686,664,652,649,652,655,654,644,627,601,568,533,496,459,424,388,353,315,275,
+232,188,143,100,57,15,-29,-78,-131,-189,-247,-303,-354,-399,-437,-470,-497,-519,-537,-548,-553,
+-552,-547,-541,-536,-537,-543,-557,-576,-599,-621,-639,-652,-659,-664,-671,-686,-715,-760,-822,-897,-979,
+-1061,-1135,-1199,-1254,-1303,-1351,-1403,-1461,-1523,-1584,-1640,-1687,-1723,-1753,-1779,-1805,-1836,-1871,-1911,-1953,-1996,
+-2038,-2078,-2117,-2152,-2185,-2215,-2243,-2272,-2301,-2331,-2363,-2395,-2426,-2457,-2489,-2523,-2561,-2603,-2646,-2690,-2731,
+-2770,-2805,-2837,-2868,-2895,-2918,-2936,-2950,-2961,-2971,-2981,-2993,-3007,-3024,-3042,-3062,-3087,-3115,-3148,-3183,-3220,
+-3256,-3290,-3321,-3349,-3373,-3392,-3404,-3411,-3413,-3413,-3415,-3421,-3429,-3439,-3448,-3456,-3463,-3470,-3479,-3491,-3504,
+-3517,-3526,-3534,-3540,-3548,-3559,-3576,-3595,-3613,-3627,-3634,-3632,-3623,-3610,-3599,-3595,-3603,-3624,-3659,-3701,-3744,
+-3781,-3808,-3824,-3830,-3830,-3827,-3822,-3818,-3815,-3815,-3821,-3833,-3851,-3869,-3884,-3892,-3894,-3895,-3900,-3911,-3926,
+-3937,-3938,-3925,-3901,-3875,-3861,-3866,-3892,-3933,-3976,-4013,-4037,-4048,-4051,-4050,-4048,-4047,-4045,-4042,-4039,-4039,
+-4040,-4044,-4045,-4040,-4026,-4004,-3976,-3946,-3914,-3883,-3851,-3818,-3784,-3752,-3724,-3700,-3680,-3662,-3644,-3626,-3608,
+-3591,-3575,-3558,-3539,-3517,-3495,-3478,-3467,-3463,-3462,-3458,-3443,-3416,-3383,-3353,-3334,-3329,-3333,-3330,-3306,-3249,
+-3158,-3042,-2920,-2809,-2720,-2655,-2609,-2571,-2536,-2500,-2467,-2440,-2423,-2415,-2410,-2402,-2387,-2364,-2333,-2299,-2263,
+-2223,-2177,-2122,-2056,-1984,-1910,-1842,-1782,-1728,-1675,-1618,-1554,-1486,-1422,-1369,-1333,-1313,-1300,-1283,-1252,-1202,
+-1137,-1064,-998,-949,-921,-913,-916,-922,-919,-901,-864,-808,-738,-659,-580,-506,-443,-393,-354,-323,-293,
+-261,-223,-177,-124,-66,-2,64,134,204,271,331,382,427,467,507,550,599,652,707,761,811,
+852,885,909,925,937,951,972,1002,1043,1089,1134,1168,1189,1195,1190,1183,1181,1186,1200,1219,1240,
+1261,1282,1303,1329,1360,1395,1432,1467,1497,1516,1524,1520,1507,1488,1470,1456,1447,1443,1439,1435,1428,
+1421,1415,1412,1410,1409,1404,1397,1391,1393,1407,1436,1473,1510,1537,1548,1545,1536,1531,1539,1562,1597,
+1637,1674,1702,1721,1733,1741,1746,1749,1751,1754,1758,1765,1775,1787,1798,1807,1813,1816,1818,1818,1815,
+1805,1789,1766,1740,1718,1701,1692,1686,1680,1672,1664,1660,1665,1685,1718,1759,1803,1841,1871,1893,1911,
+1930,1953,1980,2010,2039,2065,2086,2102,2114,2125,2133,2140,2144,2143,2134,2117,2092,2061,2028,1992,1955,
+1915,1869,1818,1764,1710,1657,1604,1544,1471,1381,1274,1162,1061,987,950,948,968,995,1013,1016,1004,
+984,963,944,924,900,868,831,793,760,736,718,703,684,659,632,605,582,560,535,501,455,
+399,342,292,256,236,227,224,220,213,203,192,182,170,155,135,111,87,69,59,59,67,
+77,86,93,99,105,114,125,136,146,153,159,166,175,189,206,222,234,239,238,231,223,
+217,215,220,228,239,250,257,261,259,252,242,232,230,240,271,327,410,517,637,760,871,
+960,1023,1060,1078,1088,1096,1110,1131,1157,1184,1208,1224,1232,1232,1226,1217,1209,1206,1211,1224,1243,
+1266,1289,1309,1326,1339,1352,1365,1378,1391,1402,1410,1417,1424,1433,1444,1456,1466,1474,1478,1480,1482,
+1483,1484,1482,1475,1463,1447,1431,1421,1421,1432,1453,1481,1511,1541,1567,1587,1599,1600,1584,1550,1496,
+1424,1338,1249,1168,1103,1064,1054,1070,1108,1159,1214,1268,1317,1360,1397,1430,1458,1479,1489,1481,1454,
+1404,1335,1251,1160,1071,991,926,878,845,825,813,805,801,800,802,809,819,832,844,852,856,
+856,852,846,840,831,820,804,782,757,729,701,675,652,631,612,591,566,537,503,465,425,
+386,350,317,288,259,230,198,165,131,101,77,58,41,20,-9,-49,-93,-129,-145,-129,-81,
+-10,66,129,164,168,145,111,79,57,47,44,42,38,37,45,67,101,138,163,160,123,
+54,-33,-125,-204,-262,-300,-325,-346,-368,-395,-424,-452,-475,-492,-505,-517,-533,-554,-583,-620,-661,
+-706,-748,-785,-814,-834,-851,-869,-894,-930,-977,-1033,-1090,-1145,-1192,-1231,-1265,-1296,-1327,-1357,-1385,-1411,
+-1432,-1450,-1467,-1485,-1508,-1539,-1578,-1626,-1680,-1738,-1794,-1842,-1879,-1905,-1923,-1940,-1961,-1991,-2029,-2072,-2112,
+-2144,-2164,-2175,-2183,-2194,-2215,-2245,-2283,-2325,-2368,-2409,-2448,-2483,-2514,-2542,-2568,-2593,-2622,-2659,-2704,-2754,
+-2805,-2849,-2882,-2905,-2919,-2930,-2941,-2954,-2964,-2968,-2964,-2954,-2942,-2935,-2937,-2952,-2975,-3004,-3034,-3065,-3096,
+-3127,-3158,-3186,-3209,-3225,-3234,-3242,-3252,-3269,-3293,-3322,-3354,-3386,-3417,-3449,-3484,-3521,-3561,-3602,-3641,-3678,
+-3713,-3747,-3779,-3811,-3842,-3872,-3904,-3939,-3977,-4017,-4057,-4093,-4122,-4145,-4166,-4189,-4218,-4257,-4301,-4346,-4388,
+-4425,-4455,-4481,-4506,-4531,-4556,-4578,-4597,-4611,-4622,-4634,-4646,-4660,-4677,-4693,-4710,-4727,-4744,-4762,-4781,-4799,
+-4814,-4825,-4832,-4836,-4838,-4840,-4840,-4840,-4837,-4832,-4824,-4817,-4812,-4810,-4810,-4811,-4810,-4805,-4796,-4784,-4771,
+-4760,-4752,-4747,-4741,-4733,-4718,-4693,-4656,-4610,-4556,-4501,-4450,-4410,-4385,-4374,-4373,-4376,-4374,-4362,-4337,-4300,
+-4256,-4212,-4171,-4135,-4103,-4070,-4032,-3986,-3933,-3876,-3819,-3766,-3718,-3675,-3636,-3596,-3554,-3508,-3460,-3410,-3361,
+-3313,-3267,-3221,-3175,-3129,-3081,-3033,-2984,-2937,-2893,-2855,-2822,-2795,-2771,-2745,-2712,-2670,-2616,-2550,-2473,-2388,
+-2295,-2197,-2095,-1991,-1890,-1796,-1712,-1638,-1573,-1511,-1445,-1373,-1295,-1217,-1147,-1093,-1058,-1043,-1040,-1040,-1035,
+-1020,-996,-965,-930,-892,-846,-785,-701,-588,-446,-281,-106,63,214,339,434,503,553,592,628,666,
+709,758,812,873,938,1005,1074,1142,1208,1273,1337,1402,1466,1532,1598,1665,1733,1800,1866,1931,1994,
+2058,2123,2192,2265,2342,2420,2497,2570,2640,2708,2777,2847,2920,2990,3056,3116,3169,3219,3270,3326,3390,
+3460,3534,3610,3683,3752,3817,3877,3933,3987,4040,4094,4151,4210,4269,4325,4376,4421,4461,4499,4540,4584,
+4631,4678,4725,4769,4813,4858,4907,4958,5010,5061,5110,5158,5209,5264,5324,5386,5446,5502,5551,5596,5641,
+5690,5745,5803,5862,5915,5961,5999,6030,6058,6084,6108,6129,6145,6156,6161,6162,6162,6162,6162,6163,6164,
+6166,6165,6162,6156,6146,6134,6122,6114,6113,6116,6123,6129,6130,6127,6119,6110,6105,6104,6106,6110,6112,
+6111,6107,6103,6101,6101,6105,6109,6112,6114,6115,6120,6130,6146,6167,6188,6205,6215,6217,6211,6199,6184,
+6169,6153,6137,6118,6097,6072,6048,6029,6021,6028,6050,6080,6108,6123,6117,6091,6055,6020,6001,6004,6024,
+6048,6061,6050,6009,5941,5858,5772,5692,5624,5571,5531,5503,5489,5486,5493,5507,5524,5542,5559,5578,5602,
+5631,5665,5701,5735,5763,5785,5800,5809,5809,5800,5779,5747,5707,5664,5624,5590,5564,5543,5522,5501,5477,
+5454,5433,5413,5393,5367,5332,5285,5227,5164,5100,5041,4989,4945,4905,4868,4833,4800,4768,4738,4711,4687,
+4663,4641,4621,4603,4587,4574,4562,4547,4528,4503,4473,4440,4406,4375,4347,4323,4301,4281,4263,4245,4229,
+4214,4199,4184,4168,4151,4135,4120,4107,4096,4086,4075,4063,4048,4030,4008,3984,3956,3926,3895,3862,3831,
+3801,3775,3754,3738,3727,3721,3717,3711,3697,3671,3631,3576,3512,3447,3390,3345,3315,3293,3272,3243,3202,
+3149,3088,3024,2963,2908,2857,2809,2760,2711,2662,2614,2570,2530,2494,2460,2431,2406,2388,2379,2378,2383,
+2388,2388,2381,2365,2342,2317,2293,2274,2258,2243,2227,2209,2189,2169,2153,2141,2133,2126,2118,2106,2089,
+2069,2047,2023,2000,1978,1957,1939,1927,1920,1917,1912,1901,1879,1845,1802,1758,1718,1688,1669,1660,1657,
+1658,1664,1674,1687,1702,1713,1715,1704,1678,1641,1597,1552,1511,1474,1444,1421,1405,1398,1402,1416,1436,
+1456,1472,1479,1474,1459,1437,1409,1378,1343,1306,1266,1225,1184,1145,1108,1073,1040,1008,978,951,927,
+908,893,879,866,853,840,826,813,798,781,760,733,703,673,646,628,619,619,624,629,631,
+627,615,595,570,540,507,472,437,401,365,328,290,249,205,160,115,72,31,-10,-54,-104,
+-160,-221,-284,-345,-401,-448,-486,-516,-539,-559,-574,-586,-593,-596,-594,-589,-583,-579,-579,-587,-602,
+-623,-646,-666,-681,-689,-692,-695,-704,-727,-767,-827,-901,-985,-1070,-1150,-1219,-1278,-1330,-1380,-1435,-1495,
+-1559,-1622,-1679,-1725,-1759,-1783,-1805,-1828,-1858,-1896,-1938,-1983,-2026,-2067,-2105,-2139,-2172,-2203,-2232,-2259,-2286,
+-2313,-2340,-2369,-2399,-2429,-2460,-2492,-2526,-2563,-2602,-2644,-2686,-2728,-2770,-2810,-2850,-2887,-2922,-2951,-2973,-2988,
+-2997,-3003,-3009,-3017,-3030,-3048,-3070,-3097,-3127,-3160,-3195,-3230,-3263,-3292,-3318,-3342,-3364,-3384,-3400,-3411,-3417,
+-3420,-3422,-3427,-3436,-3448,-3461,-3471,-3477,-3481,-3484,-3490,-3500,-3512,-3524,-3532,-3536,-3540,-3546,-3558,-3576,-3598,
+-3618,-3632,-3635,-3627,-3611,-3591,-3574,-3566,-3572,-3594,-3631,-3679,-3730,-3777,-3814,-3837,-3847,-3845,-3836,-3825,-3815,
+-3809,-3811,-3820,-3837,-3857,-3875,-3887,-3890,-3889,-3890,-3899,-3919,-3945,-3969,-3979,-3971,-3945,-3911,-3882,-3868,-3874,
+-3897,-3931,-3966,-3995,-4018,-4035,-4046,-4054,-4058,-4059,-4059,-4060,-4063,-4067,-4070,-4069,-4061,-4045,-4025,-4002,-3978,
+-3952,-3922,-3888,-3850,-3813,-3782,-3756,-3737,-3720,-3700,-3678,-3654,-3630,-3609,-3590,-3569,-3544,-3513,-3482,-3457,-3444,
+-3442,-3445,-3442,-3426,-3396,-3358,-3325,-3307,-3306,-3313,-3311,-3282,-3215,-3113,-2989,-2864,-2756,-2675,-2622,-2591,-2573,
+-2561,-2552,-2544,-2539,-2535,-2528,-2515,-2494,-2464,-2430,-2393,-2358,-2322,-2283,-2236,-2179,-2112,-2040,-1968,-1900,-1836,
+-1774,-1711,-1643,-1570,-1497,-1429,-1373,-1330,-1299,-1271,-1237,-1189,-1127,-1054,-980,-916,-871,-848,-842,-846,-851,
+-849,-834,-804,-761,-705,-639,-568,-495,-424,-359,-303,-257,-218,-184,-150,-114,-72,-24,30,88,149,
+210,269,323,373,420,466,514,564,617,672,727,779,826,866,896,917,930,938,948,967,997,
+1040,1091,1142,1184,1212,1225,1227,1226,1228,1237,1252,1271,1290,1307,1322,1339,1361,1390,1423,1458,1491,
+1515,1529,1529,1518,1500,1479,1462,1451,1446,1445,1444,1439,1429,1417,1406,1400,1400,1402,1404,1404,1403,
+1405,1418,1443,1477,1514,1546,1566,1574,1575,1577,1585,1602,1626,1654,1681,1704,1724,1740,1754,1764,1770,
+1773,1775,1778,1786,1797,1812,1827,1840,1851,1859,1866,1869,1866,1855,1836,1810,1784,1763,1749,1741,1735,
+1725,1710,1693,1682,1685,1705,1743,1791,1840,1882,1914,1938,1957,1977,1999,2025,2052,2077,2100,2121,2140,
+2160,2180,2197,2209,2213,2207,2190,2163,2129,2090,2047,2000,1946,1885,1816,1744,1675,1618,1575,1542,1507,
+1456,1377,1269,1145,1025,933,884,877,900,933,958,966,959,945,934,928,923,912,890,856,816,
+779,751,731,715,697,673,643,610,579,547,512,469,417,360,306,263,239,232,235,238,234,
+218,195,168,144,123,107,92,78,65,56,52,53,59,67,73,77,81,86,94,106,120,
+133,144,153,161,170,181,194,210,225,237,244,245,243,239,236,236,238,243,248,253,256,
+256,255,252,247,242,240,247,270,315,383,471,569,665,747,809,852,882,911,947,994,1051,
+1111,1164,1205,1229,1240,1240,1234,1227,1222,1219,1222,1229,1242,1259,1279,1300,1320,1339,1357,1374,1389,
+1402,1412,1419,1423,1427,1432,1438,1446,1453,1459,1462,1464,1465,1465,1464,1461,1454,1444,1434,1430,1435,
+1454,1485,1524,1564,1600,1626,1639,1639,1623,1594,1550,1491,1421,1341,1259,1181,1114,1066,1040,1039,1063,
+1107,1166,1232,1297,1354,1396,1422,1429,1418,1389,1343,1282,1208,1125,1037,950,872,809,765,742,738,
+749,770,795,817,836,849,858,865,870,874,877,879,880,879,876,872,865,855,839,819,793,
+763,732,700,671,644,621,598,575,550,521,487,451,412,375,339,306,274,243,210,175,138,
+102,68,41,20,3,-13,-38,-74,-118,-162,-195,-204,-180,-127,-55,18,75,105,106,86,56,
+29,8,-5,-16,-26,-33,-32,-17,12,52,87,103,87,36,-40,-131,-219,-294,-350,-391,-422,
+-450,-476,-501,-521,-537,-547,-557,-568,-584,-607,-635,-667,-702,-736,-771,-804,-834,-860,-883,-904,-928,
+-957,-996,-1044,-1098,-1154,-1206,-1252,-1288,-1319,-1345,-1371,-1397,-1422,-1446,-1467,-1486,-1506,-1529,-1558,-1595,-1639,
+-1689,-1740,-1787,-1827,-1858,-1881,-1899,-1916,-1939,-1968,-2004,-2042,-2078,-2108,-2128,-2143,-2155,-2172,-2196,-2229,-2268,
+-2310,-2349,-2384,-2415,-2442,-2468,-2494,-2523,-2557,-2596,-2642,-2693,-2745,-2794,-2835,-2867,-2890,-2906,-2920,-2933,-2944,
+-2952,-2954,-2948,-2937,-2925,-2918,-2919,-2929,-2947,-2970,-2996,-3024,-3055,-3087,-3118,-3146,-3166,-3179,-3185,-3191,-3201,
+-3220,-3246,-3280,-3316,-3353,-3389,-3425,-3463,-3502,-3541,-3577,-3609,-3637,-3663,-3690,-3717,-3747,-3778,-3811,-3846,-3883,
+-3924,-3965,-4006,-4041,-4069,-4091,-4111,-4132,-4160,-4194,-4233,-4272,-4308,-4338,-4364,-4389,-4415,-4443,-4472,-4499,-4523,
+-4541,-4556,-4570,-4584,-4600,-4618,-4640,-4664,-4690,-4718,-4746,-4772,-4794,-4808,-4814,-4815,-4812,-4809,-4808,-4810,-4813,
+-4815,-4815,-4812,-4809,-4808,-4810,-4813,-4816,-4816,-4809,-4796,-4778,-4760,-4745,-4736,-4732,-4731,-4729,-4719,-4699,-4667,
+-4624,-4574,-4520,-4470,-4427,-4395,-4374,-4363,-4356,-4348,-4333,-4307,-4272,-4231,-4189,-4152,-4121,-4095,-4069,-4038,-3997,
+-3947,-3889,-3828,-3771,-3719,-3675,-3636,-3599,-3561,-3519,-3473,-3424,-3374,-3323,-3274,-3227,-3182,-3138,-3094,-3048,-2999,
+-2949,-2900,-2854,-2815,-2784,-2759,-2737,-2711,-2677,-2633,-2577,-2510,-2433,-2346,-2251,-2147,-2037,-1928,-1825,-1733,-1656,
+-1592,-1534,-1475,-1411,-1340,-1267,-1199,-1143,-1104,-1081,-1070,-1064,-1057,-1046,-1030,-1010,-988,-962,-929,-882,-814,
+-719,-595,-444,-274,-95,79,238,374,482,562,618,654,679,701,726,760,807,865,933,1006,1082,
+1155,1227,1296,1363,1429,1496,1562,1629,1695,1761,1825,1890,1955,2022,2091,2165,2242,2321,2400,2476,2547,
+2616,2684,2753,2824,2896,2965,3030,3087,3140,3193,3250,3314,3386,3463,3540,3614,3683,3747,3807,3865,3921,
+3977,4033,4090,4148,4208,4266,4321,4370,4412,4451,4489,4530,4576,4628,4682,4736,4786,4834,4881,4929,4978,
+5028,5077,5127,5177,5230,5286,5346,5406,5464,5518,5566,5613,5661,5714,5770,5829,5886,5937,5979,6014,6043,
+6068,6090,6109,6125,6135,6141,6144,6143,6141,6139,6138,6137,6137,6137,6135,6131,6123,6114,6104,6097,6095,
+6100,6109,6120,6127,6129,6125,6118,6111,6108,6108,6109,6110,6107,6101,6095,6093,6096,6104,6114,6124,6131,
+6137,6146,6160,6181,6208,6235,6255,6264,6260,6244,6222,6196,6173,6153,6137,6123,6110,6097,6084,6073,6069,
+6073,6089,6115,6145,6171,6182,6174,6147,6112,6080,6062,6061,6070,6077,6065,6025,5957,5871,5782,5704,5644,
+5601,5569,5541,5513,5487,5466,5458,5466,5489,5523,5564,5605,5644,5678,5706,5728,5746,5761,5776,5791,5804,
+5812,5809,5793,5762,5722,5678,5637,5602,5574,5549,5525,5501,5476,5453,5433,5415,5393,5363,5320,5265,5201,
+5136,5076,5023,4979,4940,4901,4862,4822,4782,4746,4715,4687,4669,4640,4612,4586,4563,4545,4532,4521,4510,
+4495,4474,4449,4421,4393,4366,4341,4317,4294,4271,4250,4232,4218,4207,4199,4191,4181,4167,4151,4134,4118,
+4104,4092,4081,4072,4061,4048,4032,4012,3986,3956,3920,3881,3841,3802,3767,3738,3715,3698,3689,3684,3682,
+3677,3663,3635,3592,3535,3472,3412,3363,3327,3302,3281,3256,3220,3174,3119,3061,3003,2948,2896,2844,2791,
+2738,2687,2639,2595,2557,2523,2492,2465,2443,2430,2425,2429,2436,2443,2444,2436,2417,2392,2365,2340,2319,
+2302,2288,2272,2252,2228,2203,2179,2159,2144,2133,2125,2116,2106,2094,2079,2061,2040,2017,1992,1969,1949,
+1936,1928,1922,1911,1892,1862,1824,1783,1746,1719,1703,1697,1697,1700,1705,1712,1719,1727,1732,1730,1719,
+1698,1667,1631,1593,1556,1525,1500,1483,1475,1477,1486,1502,1517,1528,1530,1520,1498,1467,1431,1393,1354,
+1316,1278,1241,1205,1170,1136,1105,1075,1045,1015,985,955,927,904,885,870,859,849,838,825,807,
+784,757,725,693,664,642,629,624,625,628,629,625,614,597,575,551,525,497,467,436,403,
+370,335,298,260,218,174,129,85,44,5,-33,-74,-121,-175,-235,-299,-361,-419,-468,-509,-541,
+-565,-584,-600,-612,-623,-631,-635,-634,-630,-625,-622,-625,-636,-655,-678,-701,-718,-726,-726,-725,-729,
+-747,-784,-841,-915,-999,-1085,-1167,-1239,-1302,-1358,-1412,-1468,-1528,-1591,-1652,-1706,-1749,-1780,-1803,-1823,-1848,
+-1880,-1920,-1966,-2012,-2055,-2093,-2125,-2154,-2182,-2211,-2239,-2267,-2295,-2322,-2349,-2378,-2408,-2440,-2472,-2504,-2536,
+-2570,-2606,-2644,-2685,-2727,-2772,-2817,-2862,-2906,-2946,-2980,-3005,-3022,-3032,-3038,-3043,-3052,-3066,-3085,-3110,-3139,
+-3172,-3207,-3242,-3273,-3300,-3322,-3340,-3356,-3373,-3390,-3406,-3419,-3427,-3431,-3434,-3440,-3449,-3463,-3477,-3488,-3495,
+-3499,-3503,-3510,-3522,-3536,-3548,-3555,-3557,-3556,-3559,-3567,-3583,-3603,-3621,-3633,-3633,-3623,-3606,-3586,-3568,-3557,
+-3557,-3571,-3598,-3639,-3686,-3735,-3778,-3809,-3828,-3835,-3832,-3826,-3819,-3815,-3817,-3825,-3837,-3848,-3855,-3854,-3847,
+-3838,-3834,-3844,-3869,-3904,-3939,-3964,-3970,-3957,-3932,-3907,-3890,-3888,-3898,-3918,-3942,-3966,-3989,-4010,-4030,-4048,
+-4063,-4074,-4082,-4089,-4094,-4097,-4095,-4087,-4074,-4059,-4044,-4030,-4015,-3996,-3968,-3933,-3893,-3855,-3826,-3804,-3788,
+-3770,-3745,-3714,-3680,-3650,-3626,-3606,-3583,-3554,-3518,-3479,-3449,-3431,-3426,-3425,-3417,-3393,-3357,-3317,-3289,-3279,
+-3287,-3297,-3290,-3249,-3171,-3064,-2946,-2839,-2757,-2702,-2671,-2655,-2647,-2643,-2642,-2644,-2645,-2641,-2625,-2596,-2554,
+-2504,-2455,-2410,-2370,-2332,-2290,-2241,-2184,-2123,-2060,-2000,-1944,-1890,-1833,-1768,-1695,-1615,-1531,-1449,-1375,-1309,
+-1252,-1200,-1149,-1096,-1039,-983,-930,-886,-855,-837,-827,-822,-816,-805,-786,-761,-728,-687,-637,-578,-510,
+-436,-362,-292,-233,-183,-143,-108,-73,-34,8,55,105,157,210,263,317,371,426,481,536,591,
+645,700,755,810,861,906,943,969,985,995,1004,1018,1044,1080,1126,1173,1213,1242,1259,1266,1270,
+1277,1290,1307,1325,1342,1355,1366,1378,1395,1417,1443,1471,1496,1515,1525,1525,1516,1501,1484,1470,1461,
+1456,1453,1449,1441,1428,1414,1403,1400,1406,1416,1426,1433,1435,1436,1441,1455,1480,1511,1543,1571,1594,
+1612,1628,1645,1663,1682,1698,1711,1723,1734,1747,1760,1774,1785,1793,1800,1808,1818,1832,1847,1861,1873,
+1882,1889,1896,1900,1899,1890,1873,1851,1829,1810,1799,1792,1784,1771,1753,1734,1721,1723,1744,1782,1830,
+1878,1920,1953,1979,2001,2022,2045,2069,2095,2122,2151,2184,2219,2253,2282,2299,2301,2287,2258,2220,2179,
+2140,2102,2065,2021,1965,1892,1804,1707,1614,1536,1479,1437,1397,1342,1258,1147,1021,907,829,800,818,
+863,909,937,937,918,894,879,880,891,899,893,868,827,782,741,711,691,677,662,644,619,
+589,552,505,449,387,326,277,247,239,248,261,267,256,228,188,144,107,81,65,58,55,
+52,50,46,43,40,37,34,31,30,33,40,54,72,94,117,137,153,164,171,177,185,
+197,213,231,249,263,271,273,270,266,263,263,265,268,272,276,277,275,271,267,265,270,
+287,319,363,416,468,516,555,591,630,680,745,824,909,989,1057,1106,1139,1160,1176,1191,1207,
+1223,1234,1242,1247,1252,1259,1271,1288,1308,1330,1351,1371,1388,1404,1417,1427,1435,1442,1447,1453,1458,
+1463,1466,1468,1469,1470,1470,1471,1470,1469,1469,1475,1490,1515,1549,1588,1625,1652,1664,1661,1642,1612,
+1572,1526,1475,1420,1361,1301,1243,1191,1150,1122,1112,1121,1150,1197,1256,1318,1373,1411,1424,1406,1359,
+1286,1195,1094,991,895,812,744,695,664,652,656,673,701,734,769,802,829,850,864,872,876,
+877,877,877,877,877,876,873,867,857,844,826,803,776,747,716,685,657,632,610,589,567,
+541,511,475,436,396,358,322,289,258,227,195,161,126,90,55,24,-1,-23,-43,-66,-99,
+-143,-197,-249,-286,-294,-265,-202,-119,-37,25,57,57,34,2,-28,-52,-69,-85,-101,-114,-121,
+-115,-95,-67,-43,-36,-54,-100,-166,-243,-318,-385,-441,-487,-525,-557,-582,-598,-607,-611,-614,-622,
+-638,-661,-689,-718,-745,-770,-794,-820,-849,-879,-908,-936,-962,-989,-1021,-1061,-1108,-1162,-1215,-1264,-1304,
+-1335,-1361,-1384,-1407,-1431,-1456,-1480,-1503,-1526,-1552,-1582,-1618,-1659,-1703,-1744,-1781,-1812,-1837,-1858,-1877,-1897,
+-1921,-1948,-1977,-2006,-2034,-2057,-2077,-2095,-2114,-2137,-2166,-2202,-2241,-2281,-2317,-2348,-2374,-2399,-2425,-2455,-2492,
+-2535,-2582,-2632,-2682,-2730,-2772,-2808,-2838,-2861,-2880,-2896,-2911,-2923,-2931,-2934,-2931,-2925,-2917,-2913,-2912,-2918,
+-2930,-2946,-2966,-2991,-3019,-3049,-3078,-3104,-3124,-3138,-3147,-3156,-3169,-3188,-3213,-3243,-3276,-3310,-3346,-3384,-3422,
+-3459,-3492,-3518,-3540,-3558,-3579,-3604,-3637,-3675,-3716,-3756,-3794,-3831,-3867,-3903,-3939,-3972,-4002,-4028,-4053,-4078,
+-4106,-4138,-4170,-4202,-4231,-4257,-4280,-4305,-4332,-4361,-4392,-4422,-4448,-4471,-4491,-4509,-4527,-4546,-4569,-4596,-4627,
+-4661,-4697,-4731,-4760,-4781,-4791,-4792,-4786,-4778,-4772,-4771,-4774,-4780,-4786,-4790,-4791,-4790,-4791,-4794,-4799,-4804,
+-4805,-4800,-4786,-4767,-4746,-4728,-4716,-4712,-4711,-4711,-4704,-4688,-4660,-4622,-4577,-4529,-4481,-4439,-4406,-4382,-4366,
+-4356,-4347,-4333,-4311,-4280,-4241,-4201,-4163,-4130,-4100,-4071,-4038,-3998,-3949,-3893,-3835,-3779,-3728,-3683,-3641,-3601,
+-3561,-3518,-3474,-3427,-3379,-3330,-3281,-3232,-3184,-3138,-3094,-3048,-3001,-2952,-2901,-2852,-2808,-2771,-2742,-2719,-2696,
+-2669,-2633,-2586,-2528,-2458,-2377,-2285,-2182,-2072,-1961,-1855,-1761,-1682,-1617,-1560,-1504,-1445,-1382,-1317,-1254,-1199,
+-1155,-1121,-1096,-1075,-1058,-1042,-1028,-1016,-1002,-986,-962,-925,-871,-794,-693,-566,-415,-245,-65,112,278,
+420,531,607,652,672,679,685,700,733,783,851,928,1011,1092,1171,1246,1318,1390,1461,1532,1601,
+1667,1731,1793,1855,1918,1985,2056,2132,2212,2294,2373,2449,2520,2587,2653,2721,2792,2863,2934,3000,3061,
+3118,3177,3240,3310,3385,3462,3537,3606,3669,3729,3789,3849,3910,3970,4029,4085,4140,4195,4250,4303,4353,
+4400,4444,4487,4532,4581,4635,4691,4746,4798,4848,4895,4941,4989,5038,5089,5140,5194,5249,5306,5364,5421,
+5475,5527,5577,5628,5682,5740,5800,5859,5914,5961,6002,6035,6062,6085,6102,6115,6122,6126,6127,6127,6128,
+6128,6127,6124,6120,6114,6108,6102,6096,6090,6084,6079,6077,6078,6085,6095,6105,6112,6115,6114,6112,6110,
+6109,6109,6107,6102,6094,6086,6082,6086,6098,6116,6135,6150,6162,6174,6189,6213,6244,6278,6305,6317,6309,
+6283,6244,6202,6164,6137,6120,6111,6106,6103,6100,6098,6096,6098,6106,6120,6141,6164,6186,6198,6199,6187,
+6167,6146,6131,6121,6110,6091,6052,5991,5913,5829,5755,5699,5663,5640,5619,5593,5558,5520,5488,5473,5478,
+5504,5543,5588,5631,5668,5697,5720,5738,5752,5766,5781,5796,5810,5818,5815,5798,5767,5726,5682,5641,5606,
+5579,5556,5534,5511,5487,5463,5441,5418,5391,5356,5309,5252,5190,5128,5072,5024,4981,4940,4898,4855,4812,
+4770,4733,4699,4669,4667,4631,4593,4557,4525,4500,4482,4468,4456,4442,4424,4404,4383,4362,4342,4323,4302,
+4279,4255,4231,4212,4199,4191,4186,4181,4174,4162,4147,4131,4116,4103,4094,4087,4080,4072,4061,4047,4028,
+4003,3972,3934,3892,3848,3805,3765,3731,3701,3677,3659,3648,3642,3639,3631,3614,3583,3538,3484,3427,3376,
+3335,3305,3279,3253,3221,3181,3135,3086,3036,2986,2936,2883,2828,2771,2717,2668,2626,2590,2558,2530,2505,
+2484,2468,2459,2457,2458,2459,2457,2448,2433,2412,2389,2365,2344,2324,2307,2289,2269,2247,2224,2202,2183,
+2169,2159,2153,2148,2142,2134,2121,2104,2081,2054,2024,1994,1968,1949,1937,1929,1919,1904,1881,1850,1816,
+1783,1757,1740,1732,1730,1732,1735,1739,1742,1743,1742,1736,1725,1707,1682,1654,1625,1596,1571,1551,1539,
+1535,1538,1545,1552,1555,1549,1533,1505,1468,1426,1383,1343,1306,1273,1243,1214,1185,1156,1126,1096,1065,
+1035,1003,972,940,910,882,859,842,830,822,814,803,787,764,737,707,679,657,644,640,642,
+644,643,635,619,595,567,538,509,480,451,422,390,358,326,294,260,224,184,141,96,53,
+13,-22,-57,-93,-135,-182,-236,-294,-352,-409,-461,-507,-545,-576,-601,-620,-636,-650,-662,-671,-676,
+-676,-672,-669,-670,-679,-698,-722,-745,-761,-766,-762,-755,-756,-772,-809,-867,-941,-1024,-1108,-1188,-1261,
+-1326,-1386,-1444,-1502,-1560,-1618,-1671,-1718,-1756,-1785,-1810,-1834,-1864,-1903,-1948,-1997,-2043,-2084,-2116,-2142,-2165,
+-2190,-2217,-2248,-2280,-2312,-2342,-2371,-2400,-2430,-2461,-2492,-2523,-2554,-2585,-2618,-2654,-2693,-2735,-2780,-2825,-2870,
+-2914,-2954,-2990,-3019,-3041,-3059,-3072,-3085,-3099,-3115,-3134,-3157,-3185,-3215,-3249,-3282,-3311,-3334,-3351,-3363,-3375,
+-3388,-3404,-3423,-3440,-3452,-3459,-3463,-3467,-3473,-3483,-3494,-3503,-3508,-3510,-3514,-3521,-3533,-3549,-3563,-3573,-3578,
+-3579,-3580,-3587,-3598,-3613,-3626,-3632,-3631,-3624,-3612,-3600,-3587,-3577,-3570,-3569,-3578,-3599,-3630,-3669,-3709,-3745,
+-3773,-3792,-3802,-3807,-3808,-3810,-3813,-3818,-3823,-3826,-3824,-3816,-3802,-3788,-3781,-3786,-3806,-3837,-3872,-3901,-3919,
+-3925,-3922,-3919,-3919,-3925,-3935,-3945,-3953,-3960,-3967,-3978,-3993,-4012,-4033,-4054,-4073,-4090,-4101,-4106,-4103,-4093,
+-4079,-4066,-4056,-4049,-4041,-4026,-4000,-3966,-3928,-3896,-3872,-3855,-3838,-3813,-3778,-3735,-3692,-3658,-3634,-3616,-3595,
+-3564,-3524,-3483,-3448,-3427,-3417,-3406,-3386,-3351,-3307,-3269,-3251,-3255,-3274,-3285,-3270,-3218,-3133,-3034,-2944,-2878,
+-2842,-2825,-2815,-2800,-2775,-2746,-2718,-2696,-2678,-2656,-2623,-2576,-2520,-2461,-2408,-2362,-2321,-2280,-2233,-2177,-2116,
+-2057,-2004,-1960,-1922,-1883,-1838,-1781,-1712,-1632,-1545,-1455,-1367,-1283,-1206,-1139,-1082,-1035,-998,-969,-944,-923,
+-905,-887,-868,-848,-824,-798,-769,-738,-706,-670,-628,-578,-516,-447,-373,-302,-240,-188,-144,-105,-65,
+-22,24,73,122,170,218,269,323,379,437,493,546,596,646,699,757,819,885,947,1002,1046,
+1078,1099,1114,1129,1148,1173,1203,1235,1262,1283,1295,1302,1308,1317,1331,1348,1366,1383,1397,1408,1418,
+1429,1442,1457,1472,1486,1497,1505,1508,1508,1503,1495,1486,1477,1469,1462,1454,1443,1430,1417,1410,1412,
+1423,1440,1458,1472,1479,1480,1480,1484,1496,1514,1538,1565,1594,1624,1656,1687,1716,1738,1752,1759,1760,
+1762,1766,1773,1784,1796,1807,1819,1832,1846,1861,1875,1886,1893,1897,1900,1904,1908,1909,1905,1896,1882,
+1867,1854,1846,1839,1831,1819,1801,1784,1773,1776,1795,1830,1873,1919,1961,1996,2023,2045,2063,2081,2102,
+2128,2163,2209,2263,2320,2368,2398,2400,2374,2325,2263,2201,2151,2117,2096,2080,2056,2011,1938,1837,1714,
+1583,1459,1349,1254,1164,1070,962,846,738,660,633,664,741,838,923,970,972,938,890,850,831,
+833,843,848,838,810,770,729,693,666,647,633,620,601,575,537,486,425,360,303,262,243,
+246,260,274,276,260,227,185,142,106,81,63,51,40,27,12,-3,-19,-32,-43,-49,-52,
+-52,-48,-40,-27,-6,21,55,92,126,152,168,175,178,183,195,216,242,267,286,296,296,
+290,284,281,282,288,296,304,310,313,315,316,319,325,336,351,367,382,395,405,416,437,
+472,527,599,680,762,833,889,931,967,1004,1049,1102,1157,1208,1247,1270,1279,1281,1281,1286,1297,
+1313,1332,1351,1369,1385,1400,1415,1428,1441,1452,1462,1470,1478,1485,1492,1500,1507,1515,1521,1527,1531,
+1537,1548,1566,1593,1627,1663,1693,1708,1702,1676,1634,1582,1529,1480,1437,1400,1366,1335,1306,1281,1261,
+1248,1244,1249,1266,1294,1328,1365,1395,1409,1399,1360,1290,1195,1083,966,855,759,685,636,612,609,
+623,647,678,710,742,770,795,816,833,846,855,860,862,863,861,859,856,851,844,834,821,
+806,790,771,750,726,698,668,638,610,588,572,558,544,524,496,460,417,373,330,291,256,
+224,194,166,139,111,83,53,22,-8,-36,-62,-89,-122,-168,-228,-296,-358,-395,-393,-345,-260,
+-159,-68,-7,14,1,-31,-67,-95,-113,-128,-146,-172,-201,-227,-241,-241,-229,-217,-215,-233,-270,
+-324,-386,-448,-504,-554,-596,-631,-657,-674,-682,-684,-685,-690,-702,-722,-746,-769,-788,-804,-819,-836,
+-860,-891,-926,-961,-993,-1023,-1053,-1087,-1127,-1172,-1220,-1266,-1306,-1339,-1366,-1390,-1413,-1436,-1460,-1484,-1508,
+-1533,-1561,-1594,-1631,-1670,-1709,-1743,-1771,-1795,-1815,-1836,-1858,-1882,-1907,-1931,-1952,-1971,-1988,-2004,-2022,-2042,
+-2067,-2097,-2132,-2171,-2211,-2250,-2285,-2314,-2340,-2367,-2397,-2433,-2477,-2525,-2575,-2622,-2665,-2703,-2737,-2769,-2798,
+-2825,-2848,-2868,-2884,-2895,-2903,-2907,-2909,-2909,-2908,-2907,-2908,-2913,-2921,-2934,-2952,-2973,-2996,-3021,-3044,-3065,
+-3084,-3100,-3116,-3132,-3150,-3170,-3191,-3214,-3239,-3267,-3299,-3335,-3371,-3403,-3428,-3444,-3455,-3467,-3485,-3515,-3557,
+-3606,-3656,-3703,-3742,-3775,-3805,-3835,-3867,-3901,-3936,-3971,-4006,-4039,-4071,-4102,-4130,-4155,-4178,-4199,-4220,-4244,
+-4271,-4300,-4331,-4362,-4391,-4418,-4442,-4465,-4487,-4510,-4535,-4565,-4600,-4638,-4677,-4711,-4738,-4753,-4758,-4754,-4746,
+-4738,-4734,-4735,-4742,-4750,-4758,-4762,-4763,-4762,-4761,-4763,-4766,-4771,-4774,-4771,-4761,-4744,-4723,-4702,-4686,-4676,
+-4671,-4668,-4660,-4646,-4624,-4593,-4557,-4518,-4480,-4447,-4421,-4403,-4393,-4388,-4384,-4376,-4360,-4334,-4299,-4259,-4215,
+-4173,-4130,-4088,-4043,-3994,-3942,-3889,-3838,-3788,-3741,-3695,-3650,-3603,-3555,-3508,-3463,-3420,-3378,-3335,-3288,-3238,
+-3186,-3133,-3083,-3035,-2987,-2939,-2889,-2838,-2790,-2747,-2712,-2683,-2660,-2636,-2606,-2568,-2518,-2455,-2378,-2289,-2189,
+-2080,-1970,-1866,-1773,-1695,-1631,-1577,-1526,-1474,-1419,-1361,-1305,-1252,-1204,-1160,-1122,-1087,-1056,-1031,-1011,-996,
+-981,-964,-941,-908,-863,-803,-726,-628,-506,-361,-198,-24,148,305,435,531,591,621,630,633,643,
+670,718,785,867,955,1041,1124,1201,1275,1348,1421,1494,1564,1632,1697,1759,1821,1885,1953,2027,2106,
+2189,2273,2355,2433,2505,2571,2635,2700,2767,2837,2908,2978,3044,3108,3173,3241,3314,3389,3464,3534,3598,
+3658,3718,3779,3843,3909,3972,4030,4083,4131,4179,4229,4281,4335,4389,4441,4492,4541,4592,4644,4696,4749,
+4800,4849,4897,4945,4994,5044,5096,5150,5206,5264,5322,5380,5435,5487,5538,5590,5645,5704,5765,5825,5881,
+5931,5973,6009,6040,6066,6085,6098,6104,6104,6103,6103,6106,6111,6116,6118,6115,6108,6097,6087,6078,6072,
+6069,6066,6065,6065,6067,6071,6078,6085,6091,6095,6097,6100,6102,6104,6104,6101,6094,6087,6082,6084,6096,
+6116,6139,6161,6178,6190,6202,6219,6244,6276,6307,6326,6325,6298,6253,6198,6147,6109,6091,6089,6097,6109,
+6119,6124,6125,6124,6121,6121,6125,6134,6149,6168,6185,6197,6200,6193,6179,6158,6134,6104,6064,6012,5949,
+5881,5815,5762,5724,5699,5680,5657,5625,5587,5550,5524,5515,5524,5548,5578,5608,5634,5658,5681,5705,5730,
+5755,5777,5795,5808,5815,5813,5803,5781,5750,5711,5671,5634,5604,5580,5561,5543,5524,5503,5481,5458,5433,
+5404,5369,5326,5276,5220,5162,5106,5051,4998,4947,4897,4850,4807,4769,4734,4701,4667,4674,4631,4585,4540,
+4500,4468,4443,4423,4405,4387,4368,4350,4332,4317,4304,4289,4272,4251,4229,4208,4191,4180,4173,4170,4165,
+4157,4146,4133,4120,4111,4105,4102,4100,4096,4089,4078,4064,4045,4021,3992,3955,3914,3870,3826,3784,3746,
+3711,3679,3650,3627,3609,3596,3586,3573,3552,3521,3481,3436,3392,3354,3321,3292,3262,3228,3190,3149,3108,
+3066,3024,2978,2926,2870,2813,2758,2709,2668,2634,2604,2577,2551,2527,2506,2489,2476,2466,2458,2451,2443,
+2433,2419,2403,2383,2363,2341,2321,2303,2285,2268,2251,2236,2222,2212,2204,2198,2192,2184,2173,2157,2136,
+2111,2083,2052,2023,1996,1974,1958,1945,1933,1919,1900,1876,1848,1821,1796,1776,1763,1754,1749,1747,1746,
+1745,1742,1736,1727,1715,1699,1680,1659,1637,1616,1595,1578,1566,1559,1556,1554,1550,1541,1524,1498,1464,
+1425,1383,1342,1304,1271,1243,1218,1194,1169,1141,1110,1077,1042,1008,975,944,913,883,854,827,805,
+788,776,767,759,749,734,716,696,676,660,650,645,643,640,632,617,596,570,541,511,480,
+448,415,379,344,310,278,249,220,188,152,111,68,27,-11,-45,-76,-108,-144,-185,-231,-282,
+-334,-387,-440,-491,-537,-579,-613,-640,-663,-682,-699,-713,-723,-728,-729,-729,-732,-744,-763,-787,-806,
+-816,-813,-801,-789,-787,-805,-846,-908,-983,-1064,-1143,-1217,-1287,-1353,-1416,-1478,-1537,-1592,-1642,-1685,-1722,
+-1754,-1782,-1811,-1845,-1885,-1932,-1983,-2034,-2079,-2116,-2143,-2164,-2185,-2208,-2237,-2270,-2306,-2339,-2371,-2399,-2427,
+-2455,-2485,-2515,-2545,-2574,-2604,-2636,-2670,-2707,-2747,-2788,-2829,-2870,-2909,-2947,-2983,-3018,-3051,-3080,-3107,-3131,
+-3152,-3170,-3187,-3205,-3225,-3250,-3278,-3309,-3338,-3362,-3378,-3389,-3397,-3407,-3422,-3441,-3462,-3480,-3493,-3500,-3504,
+-3508,-3512,-3516,-3518,-3517,-3513,-3510,-3513,-3522,-3538,-3557,-3574,-3586,-3595,-3603,-3610,-3619,-3626,-3630,-3630,-3626,
+-3622,-3618,-3615,-3611,-3603,-3591,-3577,-3567,-3566,-3578,-3602,-3633,-3668,-3699,-3726,-3746,-3761,-3772,-3779,-3785,-3790,
+-3796,-3801,-3804,-3805,-3801,-3793,-3786,-3784,-3790,-3803,-3820,-3838,-3853,-3867,-3883,-3904,-3928,-3953,-3973,-3982,-3979,
+-3968,-3954,-3943,-3940,-3946,-3961,-3982,-4007,-4033,-4057,-4074,-4083,-4083,-4078,-4071,-4065,-4059,-4050,-4033,-4007,-3975,
+-3944,-3920,-3904,-3891,-3871,-3838,-3792,-3739,-3692,-3658,-3637,-3622,-3600,-3567,-3523,-3478,-3443,-3421,-3406,-3387,-3354,
+-3309,-3261,-3228,-3221,-3240,-3266,-3277,-3253,-3193,-3111,-3034,-2984,-2969,-2979,-2992,-2984,-2945,-2879,-2800,-2725,-2665,
+-2618,-2577,-2532,-2481,-2426,-2376,-2334,-2300,-2266,-2224,-2169,-2103,-2034,-1971,-1922,-1886,-1859,-1830,-1793,-1743,-1681,
+-1610,-1532,-1450,-1366,-1283,-1205,-1137,-1084,-1048,-1026,-1012,-1001,-988,-970,-946,-917,-885,-848,-809,-767,-726,
+-685,-645,-603,-556,-502,-441,-377,-313,-256,-206,-161,-118,-70,-17,38,93,145,192,237,283,333,
+386,438,486,528,566,605,653,712,782,859,937,1009,1071,1122,1161,1192,1217,1237,1256,1274,1290,
+1304,1314,1321,1326,1331,1339,1352,1369,1388,1408,1425,1440,1451,1459,1465,1468,1471,1474,1479,1485,1493,
+1501,1505,1505,1500,1492,1483,1474,1465,1457,1447,1439,1433,1434,1443,1459,1478,1495,1508,1515,1519,1521,
+1525,1531,1541,1556,1577,1605,1640,1680,1718,1750,1772,1784,1788,1788,1789,1792,1798,1806,1814,1825,1837,
+1851,1866,1879,1889,1894,1896,1898,1900,1904,1908,1911,1909,1905,1899,1893,1889,1885,1878,1868,1854,1840,
+1830,1831,1845,1873,1912,1956,2000,2038,2067,2086,2098,2108,2123,2152,2198,2262,2335,2405,2454,2469,2445,
+2385,2304,2221,2151,2106,2088,2089,2095,2089,2056,1985,1873,1725,1550,1362,1173,992,823,668,531,419,
+344,322,361,461,606,766,908,1006,1047,1034,985,923,867,828,806,795,786,775,756,731,700,
+667,634,604,577,550,520,482,436,383,330,287,260,251,256,264,267,258,236,208,178,150,
+124,98,68,33,-5,-45,-81,-109,-128,-138,-140,-135,-127,-118,-111,-105,-100,-90,-71,-39,4,
+55,104,143,168,180,187,193,206,226,249,272,288,297,299,298,299,304,313,325,337,348,
+356,362,371,382,398,418,436,450,456,454,446,441,447,469,509,562,619,671,713,744,773,
+808,858,927,1011,1100,1180,1242,1282,1301,1308,1311,1316,1326,1339,1354,1369,1381,1393,1404,1417,1429,
+1441,1451,1461,1469,1480,1493,1511,1533,1558,1583,1604,1621,1634,1643,1655,1670,1692,1717,1737,1745,1732,
+1697,1643,1578,1513,1457,1414,1386,1367,1355,1346,1340,1337,1340,1347,1359,1374,1388,1399,1404,1396,1373,
+1331,1268,1186,1091,990,894,811,745,701,679,675,686,707,733,760,784,804,819,829,837,842,
+845,848,849,848,846,843,838,832,823,810,795,777,757,739,722,706,690,670,644,613,579,
+548,523,507,498,490,477,454,422,381,338,295,256,220,187,156,127,102,80,59,36,9,
+-21,-53,-85,-116,-149,-193,-252,-324,-400,-460,-485,-461,-392,-293,-190,-110,-67,-63,-85,-115,-140,
+-156,-168,-185,-213,-255,-302,-343,-371,-384,-386,-387,-396,-419,-455,-499,-546,-590,-630,-665,-695,-720,
+-738,-749,-756,-760,-765,-775,-789,-805,-821,-833,-841,-849,-860,-878,-905,-940,-978,-1016,-1052,-1084,-1116,
+-1150,-1186,-1225,-1263,-1299,-1332,-1362,-1389,-1415,-1439,-1462,-1485,-1507,-1531,-1559,-1592,-1629,-1667,-1701,-1730,-1753,
+-1772,-1791,-1813,-1839,-1867,-1894,-1917,-1933,-1945,-1956,-1968,-1984,-2006,-2035,-2068,-2105,-2145,-2185,-2223,-2258,-2290,
+-2319,-2348,-2382,-2423,-2468,-2516,-2561,-2600,-2633,-2662,-2689,-2719,-2751,-2783,-2812,-2836,-2852,-2862,-2869,-2874,-2879,
+-2884,-2889,-2894,-2899,-2906,-2917,-2932,-2950,-2969,-2989,-3006,-3022,-3036,-3052,-3070,-3091,-3114,-3136,-3156,-3173,-3189,
+-3206,-3228,-3256,-3289,-3322,-3351,-3370,-3382,-3389,-3400,-3421,-3456,-3502,-3554,-3605,-3651,-3688,-3719,-3747,-3777,-3812,
+-3851,-3892,-3935,-3977,-4017,-4052,-4083,-4108,-4130,-4149,-4168,-4189,-4213,-4240,-4269,-4298,-4328,-4357,-4385,-4411,-4435,
+-4457,-4479,-4504,-4534,-4569,-4608,-4647,-4679,-4701,-4711,-4712,-4708,-4702,-4700,-4703,-4709,-4719,-4728,-4736,-4741,-4742,
+-4740,-4737,-4733,-4731,-4730,-4728,-4723,-4713,-4697,-4677,-4656,-4637,-4622,-4611,-4603,-4594,-4582,-4565,-4543,-4518,-4492,
+-4467,-4447,-4434,-4427,-4427,-4430,-4433,-4430,-4419,-4397,-4365,-4326,-4279,-4229,-4174,-4116,-4057,-3996,-3939,-3885,-3836,
+-3792,-3748,-3702,-3652,-3598,-3544,-3492,-3446,-3406,-3369,-3330,-3287,-3236,-3181,-3122,-3066,-3013,-2963,-2915,-2866,-2814,
+-2762,-2713,-2670,-2635,-2607,-2582,-2556,-2524,-2481,-2426,-2356,-2272,-2176,-2071,-1964,-1861,-1769,-1693,-1633,-1585,-1542,
+-1500,-1454,-1404,-1352,-1299,-1248,-1199,-1154,-1112,-1074,-1041,-1013,-989,-967,-943,-915,-883,-844,-796,-736,-660,
+-564,-446,-309,-159,-4,143,276,384,464,518,551,574,600,638,694,768,855,947,1036,1118,1191,
+1258,1322,1387,1452,1517,1581,1646,1710,1777,1847,1922,2001,2085,2172,2260,2346,2428,2504,2572,2636,2697,
+2761,2827,2896,2967,3037,3106,3176,3248,3322,3396,3469,3536,3599,3659,3718,3780,3846,3913,3976,4034,4084,
+4128,4172,4219,4271,4327,4384,4441,4494,4545,4594,4643,4693,4744,4796,4848,4900,4951,5002,5053,5106,5160,
+5217,5276,5336,5395,5451,5504,5555,5607,5663,5721,5780,5836,5886,5929,5965,5996,6024,6047,6064,6074,6077,
+6076,6075,6077,6084,6093,6102,6106,6103,6094,6082,6071,6063,6059,6058,6058,6058,6059,6060,6063,6068,6074,
+6080,6085,6089,6093,6095,6097,6097,6096,6093,6091,6094,6102,6118,6138,6158,6176,6187,6192,6198,6207,6222,
+6243,6260,6264,6249,6211,6159,6104,6061,6039,6041,6063,6095,6126,6149,6160,6161,6154,6143,6133,6127,6127,
+6135,6149,6164,6176,6177,6164,6138,6101,6060,6016,5973,5931,5888,5846,5806,5770,5740,5712,5684,5653,5619,
+5588,5564,5554,5556,5569,5584,5597,5607,5616,5631,5655,5690,5730,5768,5798,5813,5816,5807,5792,5772,5748,
+5721,5691,5659,5629,5603,5581,5564,5548,5533,5517,5498,5478,5456,5432,5402,5367,5325,5277,5221,5160,5095,
+5029,4965,4905,4854,4812,4777,4745,4712,4674,4668,4621,4573,4526,4485,4450,4421,4395,4370,4346,4325,4306,
+4290,4277,4264,4250,4232,4213,4193,4176,4164,4158,4154,4151,4145,4136,4124,4113,4106,4103,4106,4110,4111,
+4109,4101,4089,4075,4060,4042,4019,3989,3952,3910,3865,3823,3783,3745,3708,3671,3635,3602,3574,3551,3532,
+3513,3490,3464,3435,3406,3377,3350,3321,3289,3252,3213,3174,3136,3099,3062,3020,2972,2917,2860,2804,2755,
+2714,2679,2649,2621,2593,2567,2543,2521,2502,2487,2473,2463,2454,2447,2438,2427,2411,2393,2372,2353,2336,
+2321,2309,2299,2289,2279,2270,2261,2250,2237,2221,2201,2178,2154,2129,2105,2081,2059,2036,2015,1994,1975,
+1956,1937,1918,1898,1877,1855,1833,1811,1791,1773,1759,1748,1740,1734,1727,1719,1708,1695,1682,1667,1652,
+1636,1618,1600,1583,1567,1555,1545,1536,1526,1513,1495,1472,1444,1411,1374,1335,1296,1260,1229,1202,1177,
+1153,1126,1095,1060,1023,986,952,920,891,862,833,803,776,752,734,721,713,708,703,695,685,
+672,659,645,633,621,610,597,582,563,542,518,491,460,425,386,345,305,270,240,215,191,
+165,133,96,56,18,-16,-46,-75,-106,-141,-181,-226,-273,-322,-371,-421,-473,-525,-575,-619,-658,
+-690,-717,-742,-764,-782,-794,-802,-808,-815,-828,-845,-861,-872,-870,-856,-836,-821,-822,-848,-898,-966,
+-1043,-1119,-1189,-1253,-1315,-1377,-1442,-1506,-1567,-1620,-1664,-1699,-1728,-1756,-1786,-1821,-1864,-1913,-1967,-2022,-2072,
+-2115,-2148,-2173,-2193,-2213,-2236,-2265,-2298,-2331,-2363,-2391,-2418,-2444,-2473,-2503,-2536,-2568,-2599,-2628,-2658,-2689,
+-2723,-2760,-2798,-2836,-2873,-2910,-2946,-2984,-3024,-3064,-3104,-3141,-3174,-3202,-3223,-3239,-3252,-3265,-3282,-3305,-3333,
+-3361,-3386,-3404,-3415,-3421,-3428,-3440,-3459,-3482,-3505,-3524,-3538,-3546,-3549,-3551,-3549,-3544,-3534,-3523,-3514,-3511,
+-3518,-3534,-3556,-3580,-3600,-3617,-3629,-3636,-3640,-3640,-3636,-3629,-3624,-3623,-3627,-3633,-3636,-3630,-3615,-3592,-3569,
+-3552,-3548,-3556,-3575,-3601,-3628,-3655,-3681,-3705,-3725,-3740,-3752,-3761,-3772,-3786,-3802,-3819,-3830,-3835,-3832,-3823,
+-3813,-3805,-3799,-3796,-3798,-3806,-3824,-3853,-3891,-3930,-3962,-3979,-3978,-3962,-3938,-3912,-3892,-3880,-3878,-3887,-3906,
+-3933,-3966,-3998,-4026,-4046,-4058,-4064,-4065,-4059,-4047,-4027,-4000,-3972,-3949,-3934,-3924,-3912,-3889,-3849,-3797,-3742,
+-3696,-3665,-3646,-3629,-3602,-3561,-3513,-3467,-3435,-3415,-3400,-3377,-3336,-3283,-3234,-3207,-3209,-3235,-3262,-3267,-3235,
+-3172,-3103,-3054,-3044,-3067,-3102,-3116,-3086,-3007,-2895,-2775,-2671,-2594,-2539,-2497,-2455,-2411,-2367,-2330,-2302,-2280,
+-2252,-2209,-2148,-2073,-1996,-1929,-1878,-1843,-1814,-1784,-1745,-1695,-1639,-1578,-1515,-1450,-1383,-1314,-1247,-1187,-1140,
+-1106,-1084,-1067,-1049,-1027,-999,-968,-935,-900,-862,-819,-771,-720,-670,-622,-577,-533,-485,-432,-376,-318,
+-264,-215,-168,-120,-66,-7,54,112,163,206,246,287,333,381,427,468,501,530,563,605,661,
+730,805,881,953,1020,1081,1136,1186,1228,1262,1286,1303,1314,1323,1330,1337,1342,1348,1355,1367,1382,
+1401,1421,1440,1456,1467,1473,1476,1475,1474,1474,1477,1485,1496,1508,1516,1518,1514,1506,1498,1492,1489,
+1487,1484,1479,1472,1466,1464,1469,1481,1498,1516,1533,1547,1557,1562,1563,1562,1562,1567,1580,1604,1636,
+1673,1708,1739,1761,1777,1787,1795,1802,1807,1811,1814,1819,1826,1836,1849,1863,1876,1885,1892,1897,1902,
+1908,1914,1919,1924,1926,1928,1929,1929,1928,1925,1917,1905,1892,1880,1875,1881,1902,1937,1981,2028,2069,
+2098,2114,2120,2126,2142,2177,2236,2312,2391,2456,2489,2480,2431,2353,2266,2188,2134,2108,2106,2116,2124,
+2116,2081,2010,1896,1735,1529,1286,1019,750,499,286,127,29,-5,20,102,231,397,583,769,933,
+1057,1128,1144,1110,1044,962,884,823,783,762,750,738,716,680,635,585,537,494,452,411,368,
+326,291,269,262,266,273,272,258,232,200,170,146,125,100,64,14,-45,-104,-151,-179,-185,
+-174,-153,-128,-105,-85,-71,-66,-70,-83,-98,-109,-106,-84,-43,10,66,115,151,173,185,195,
+206,222,242,264,285,301,314,324,334,346,359,374,388,400,410,420,434,453,478,506,532,
+549,555,551,544,542,549,569,597,628,656,678,697,721,756,810,883,968,1057,1138,1205,1254,
+1286,1308,1325,1341,1356,1372,1385,1396,1405,1414,1424,1436,1448,1457,1464,1468,1472,1479,1494,1518,1552,
+1593,1637,1676,1708,1730,1742,1748,1752,1756,1759,1755,1741,1709,1661,1601,1539,1483,1441,1414,1400,1393,
+1388,1383,1379,1379,1384,1393,1403,1409,1405,1388,1354,1304,1238,1160,1075,991,915,856,816,799,800,
+814,835,859,879,896,907,913,914,912,907,900,892,883,875,865,855,845,834,823,811,800,
+786,770,751,729,707,687,670,657,643,626,603,571,534,498,467,444,429,417,403,382,354,
+321,288,255,225,194,162,129,96,67,44,24,4,-19,-49,-83,-119,-152,-185,-223,-272,-338,
+-414,-486,-537,-548,-514,-442,-351,-265,-202,-169,-165,-176,-192,-207,-221,-239,-266,-305,-352,-399,-440,
+-470,-492,-508,-526,-548,-576,-607,-640,-670,-698,-723,-745,-765,-784,-799,-811,-821,-829,-838,-847,-857,
+-867,-876,-884,-891,-901,-915,-935,-963,-996,-1033,-1070,-1106,-1140,-1171,-1200,-1229,-1258,-1288,-1320,-1353,-1386,
+-1418,-1448,-1474,-1498,-1520,-1543,-1569,-1599,-1630,-1661,-1688,-1711,-1729,-1745,-1763,-1786,-1813,-1843,-1871,-1894,-1911,
+-1924,-1936,-1950,-1969,-1994,-2023,-2056,-2090,-2126,-2164,-2202,-2238,-2273,-2306,-2339,-2374,-2413,-2454,-2495,-2532,-2563,
+-2588,-2610,-2634,-2662,-2695,-2731,-2764,-2789,-2807,-2817,-2824,-2831,-2840,-2850,-2861,-2871,-2881,-2892,-2906,-2924,-2944,
+-2964,-2981,-2995,-3006,-3017,-3032,-3051,-3074,-3098,-3120,-3138,-3151,-3162,-3175,-3193,-3218,-3247,-3277,-3303,-3322,-3337,
+-3351,-3369,-3396,-3433,-3477,-3522,-3564,-3601,-3634,-3666,-3701,-3740,-3782,-3828,-3874,-3918,-3961,-3999,-4033,-4062,-4086,
+-4107,-4126,-4147,-4171,-4198,-4225,-4253,-4279,-4305,-4330,-4355,-4378,-4399,-4418,-4437,-4460,-4488,-4524,-4563,-4601,-4632,
+-4652,-4661,-4663,-4662,-4664,-4669,-4678,-4690,-4701,-4712,-4721,-4728,-4732,-4732,-4727,-4718,-4706,-4693,-4679,-4664,-4649,
+-4631,-4612,-4592,-4574,-4558,-4546,-4537,-4529,-4520,-4508,-4494,-4479,-4463,-4450,-4441,-4439,-4442,-4449,-4457,-4461,-4459,
+-4447,-4425,-4395,-4358,-4313,-4261,-4203,-4138,-4070,-4002,-3939,-3881,-3832,-3786,-3742,-3695,-3643,-3587,-3530,-3476,-3428,
+-3387,-3349,-3312,-3270,-3222,-3167,-3109,-3052,-2996,-2944,-2894,-2842,-2788,-2733,-2678,-2628,-2586,-2552,-2523,-2496,-2465,
+-2426,-2377,-2316,-2241,-2154,-2057,-1955,-1855,-1765,-1691,-1635,-1594,-1562,-1531,-1496,-1453,-1403,-1350,-1296,-1247,-1201,
+-1161,-1124,-1090,-1058,-1028,-998,-969,-940,-908,-873,-830,-775,-705,-619,-516,-401,-279,-153,-28,90,200,
+297,380,449,508,566,629,705,793,891,989,1081,1162,1229,1287,1339,1388,1437,1488,1542,1599,1662,
+1731,1808,1890,1977,2065,2153,2242,2330,2415,2495,2569,2637,2700,2761,2823,2889,2958,3029,3101,3174,3249,
+3324,3399,3471,3540,3603,3663,3722,3783,3846,3910,3971,4028,4079,4126,4172,4220,4271,4326,4381,4435,4487,
+4536,4585,4634,4684,4737,4792,4848,4905,4960,5014,5066,5117,5169,5225,5284,5345,5406,5463,5516,5567,5618,
+5671,5725,5780,5831,5876,5915,5948,5977,6003,6026,6042,6051,6054,6053,6054,6058,6066,6076,6083,6085,6081,
+6073,6063,6056,6051,6049,6048,6048,6047,6047,6050,6055,6063,6072,6080,6087,6091,6091,6090,6089,6088,6089,
+6093,6099,6108,6120,6132,6145,6155,6162,6163,6160,6155,6151,6151,6153,6153,6146,6125,6091,6047,6006,5978,
+5974,5994,6034,6083,6127,6160,6177,6179,6172,6160,6148,6140,6136,6137,6141,6144,6139,6121,6087,6038,5982,
+5927,5882,5849,5829,5816,5804,5787,5763,5734,5700,5666,5634,5608,5590,5582,5582,5588,5595,5598,5598,5598,
+5606,5627,5664,5713,5763,5804,5828,5831,5817,5793,5767,5744,5724,5704,5683,5659,5632,5604,5580,5560,5544,
+5532,5521,5509,5495,5477,5455,5430,5399,5361,5317,5263,5201,5131,5058,4986,4921,4865,4820,4782,4747,4710,
+4668,4643,4594,4547,4504,4465,4430,4399,4369,4341,4315,4294,4278,4265,4253,4239,4220,4198,4175,4154,4138,
+4129,4124,4122,4119,4111,4101,4089,4080,4077,4080,4088,4096,4101,4099,4090,4079,4067,4056,4046,4032,4011,
+3980,3941,3898,3856,3817,3781,3747,3710,3670,3627,3586,3548,3516,3488,3464,3442,3423,3405,3388,3370,3347,
+3318,3283,3244,3205,3169,3136,3102,3063,3016,2963,2905,2849,2799,2756,2719,2686,2656,2629,2604,2583,2564,
+2548,2533,2520,2507,2496,2487,2478,2467,2454,2439,2422,2406,2392,2380,2371,2363,2355,2346,2337,2324,2307,
+2285,2258,2228,2198,2171,2149,2131,2116,2101,2083,2062,2038,2011,1985,1960,1938,1918,1900,1882,1863,1840,
+1816,1791,1768,1748,1733,1720,1710,1698,1686,1674,1661,1649,1636,1623,1608,1591,1573,1556,1542,1531,1522,
+1515,1506,1494,1478,1456,1427,1390,1348,1302,1257,1218,1185,1159,1137,1115,1091,1061,1026,990,953,918,
+886,855,824,793,762,734,710,691,680,675,674,673,670,662,649,631,612,593,577,562,549,
+535,518,497,470,438,399,357,315,276,243,217,196,177,155,127,95,61,29,0,-25,-52,
+-83,-121,-166,-215,-264,-312,-359,-406,-457,-510,-565,-619,-669,-714,-754,-790,-823,-850,-871,-886,-895,
+-902,-908,-913,-914,-907,-892,-869,-849,-841,-856,-896,-959,-1033,-1109,-1176,-1234,-1285,-1338,-1395,-1459,-1525,
+-1588,-1642,-1684,-1716,-1744,-1772,-1805,-1846,-1895,-1948,-2003,-2056,-2103,-2142,-2172,-2196,-2216,-2236,-2259,-2286,-2316,
+-2345,-2374,-2400,-2427,-2455,-2488,-2524,-2561,-2598,-2630,-2659,-2686,-2714,-2744,-2779,-2816,-2855,-2893,-2931,-2968,-3006,
+-3045,-3086,-3128,-3169,-3207,-3241,-3269,-3290,-3306,-3319,-3332,-3349,-3370,-3394,-3417,-3436,-3449,-3457,-3464,-3474,-3490,
+-3513,-3537,-3560,-3578,-3589,-3593,-3592,-3587,-3577,-3564,-3550,-3540,-3538,-3546,-3563,-3586,-3611,-3633,-3649,-3659,-3663,
+-3662,-3657,-3649,-3643,-3641,-3647,-3660,-3675,-3685,-3684,-3669,-3644,-3613,-3586,-3565,-3554,-3552,-3557,-3569,-3590,-3619,
+-3653,-3687,-3716,-3738,-3753,-3767,-3783,-3803,-3825,-3843,-3852,-3849,-3837,-3820,-3801,-3784,-3770,-3759,-3754,-3760,-3778,
+-3807,-3844,-3878,-3904,-3915,-3913,-3899,-3879,-3857,-3838,-3822,-3815,-3819,-3835,-3863,-3900,-3939,-3975,-4006,-4028,-4042,
+-4045,-4038,-4022,-4000,-3978,-3961,-3950,-3941,-3927,-3900,-3857,-3805,-3752,-3708,-3678,-3654,-3629,-3594,-3548,-3500,-3461,
+-3438,-3426,-3412,-3385,-3339,-3283,-3234,-3211,-3217,-3240,-3259,-3253,-3215,-3159,-3110,-3092,-3110,-3151,-3181,-3171,-3105,
+-2989,-2852,-2724,-2628,-2567,-2532,-2503,-2468,-2424,-2378,-2339,-2310,-2285,-2253,-2206,-2142,-2066,-1990,-1926,-1877,-1839,
+-1805,-1767,-1720,-1667,-1612,-1559,-1509,-1459,-1406,-1350,-1293,-1240,-1193,-1155,-1123,-1092,-1059,-1024,-988,-954,-924,
+-895,-863,-824,-776,-721,-665,-613,-567,-524,-480,-430,-374,-315,-258,-204,-154,-103,-48,9,68,122,
+167,205,240,277,321,370,418,460,494,524,556,597,650,711,775,837,895,952,1012,1075,1140,
+1199,1249,1285,1310,1326,1340,1352,1363,1372,1379,1385,1392,1403,1416,1431,1446,1457,1464,1468,1470,1472,
+1475,1481,1490,1502,1516,1528,1537,1539,1535,1528,1522,1520,1522,1527,1529,1526,1517,1504,1492,1486,1490,
+1503,1524,1549,1573,1593,1605,1607,1601,1591,1581,1577,1582,1596,1619,1646,1675,1703,1728,1751,1771,1786,
+1796,1801,1803,1805,1809,1818,1831,1848,1865,1881,1895,1906,1914,1921,1928,1934,1941,1947,1952,1957,1961,
+1963,1962,1956,1947,1933,1918,1908,1908,1924,1956,1999,2046,2085,2110,2121,2123,2130,2155,2205,2278,2361,
+2436,2485,2496,2467,2408,2335,2268,2219,2192,2184,2183,2180,2166,2137,2092,2025,1926,1780,1575,1308,991,
+655,339,82,-88,-168,-171,-120,-40,56,170,308,479,680,890,1082,1222,1289,1276,1198,1085,967,
+870,804,765,740,713,677,630,577,523,470,419,368,318,275,246,238,247,266,280,277,252,
+209,160,115,79,46,8,-42,-103,-162,-203,-211,-181,-121,-47,22,77,112,128,132,126,110,
+82,43,-1,-45,-76,-86,-70,-32,18,72,119,154,177,192,206,223,248,277,306,332,351,
+365,377,390,406,425,442,456,466,476,488,509,536,568,596,615,623,623,619,618,625,641,
+664,691,719,748,781,820,865,918,976,1036,1094,1149,1199,1245,1286,1323,1354,1378,1396,1406,1414,
+1422,1434,1451,1471,1492,1510,1521,1526,1528,1530,1538,1556,1586,1624,1668,1711,1748,1774,1789,1793,1790,
+1782,1769,1751,1724,1687,1641,1589,1540,1499,1471,1454,1444,1435,1423,1406,1389,1373,1361,1351,1339,1321,
+1291,1247,1192,1127,1059,993,935,892,868,864,880,912,952,992,1026,1050,1063,1066,1062,1052,1038,
+1022,1003,982,959,935,911,886,863,840,820,802,786,771,757,742,724,703,681,659,638,619,
+602,583,560,531,498,463,429,400,375,353,330,304,278,251,228,208,189,168,142,109,73,
+39,10,-12,-33,-55,-83,-118,-156,-192,-225,-257,-296,-347,-413,-487,-555,-601,-613,-585,-525,-448,
+-370,-307,-267,-249,-252,-267,-289,-315,-343,-373,-406,-440,-476,-512,-546,-578,-605,-630,-653,-674,-696,
+-718,-741,-762,-782,-799,-814,-828,-841,-853,-864,-873,-882,-891,-902,-915,-930,-945,-960,-973,-986,-1002,
+-1024,-1052,-1086,-1122,-1157,-1187,-1211,-1232,-1252,-1276,-1306,-1342,-1381,-1421,-1460,-1494,-1525,-1552,-1577,-1601,-1623,
+-1644,-1663,-1680,-1694,-1707,-1721,-1737,-1757,-1780,-1804,-1828,-1849,-1868,-1887,-1907,-1931,-1959,-1990,-2021,-2052,-2083,
+-2114,-2148,-2185,-2224,-2263,-2300,-2335,-2368,-2401,-2434,-2466,-2495,-2519,-2539,-2557,-2577,-2603,-2633,-2667,-2698,-2725,
+-2744,-2758,-2769,-2781,-2795,-2810,-2825,-2838,-2850,-2864,-2879,-2898,-2918,-2937,-2953,-2967,-2980,-2994,-3012,-3034,-3058,
+-3081,-3100,-3114,-3125,-3135,-3148,-3166,-3188,-3213,-3239,-3262,-3283,-3303,-3326,-3354,-3388,-3425,-3462,-3496,-3526,-3555,
+-3586,-3624,-3668,-3719,-3770,-3819,-3864,-3903,-3939,-3971,-4000,-4027,-4050,-4071,-4092,-4115,-4141,-4169,-4197,-4222,-4244,
+-4265,-4285,-4306,-4327,-4347,-4366,-4385,-4407,-4435,-4470,-4509,-4546,-4577,-4597,-4609,-4615,-4620,-4628,-4639,-4653,-4666,
+-4678,-4689,-4701,-4712,-4721,-4725,-4722,-4709,-4689,-4664,-4637,-4612,-4589,-4568,-4550,-4532,-4518,-4505,-4496,-4489,-4483,
+-4477,-4470,-4462,-4453,-4444,-4437,-4435,-4438,-4445,-4454,-4461,-4462,-4454,-4436,-4410,-4378,-4340,-4298,-4249,-4193,-4131,
+-4064,-3996,-3932,-3873,-3821,-3773,-3726,-3677,-3626,-3571,-3516,-3463,-3413,-3366,-3324,-3283,-3243,-3199,-3152,-3101,-3047,
+-2991,-2935,-2879,-2822,-2764,-2705,-2648,-2595,-2549,-2509,-2475,-2442,-2408,-2368,-2322,-2268,-2204,-2131,-2047,-1956,-1864,
+-1777,-1705,-1652,-1616,-1592,-1571,-1545,-1509,-1462,-1410,-1358,-1311,-1271,-1238,-1207,-1178,-1146,-1113,-1080,-1048,-1018,
+-987,-951,-906,-846,-770,-679,-579,-475,-372,-272,-173,-73,28,133,236,335,428,518,610,708,814,
+926,1035,1136,1223,1294,1351,1398,1439,1474,1508,1544,1585,1637,1701,1779,1865,1956,2045,2132,2215,2298,
+2382,2465,2545,2620,2688,2752,2813,2875,2941,3011,3085,3161,3239,3317,3394,3468,3538,3603,3663,3721,3779,
+3837,3895,3953,4008,4061,4112,4163,4214,4267,4319,4372,4423,4473,4523,4574,4626,4680,4734,4791,4848,4906,
+4963,5019,5072,5124,5176,5230,5287,5347,5406,5462,5515,5565,5615,5666,5719,5772,5822,5867,5906,5940,5970,
+5996,6017,6031,6037,6038,6037,6037,6041,6048,6056,6061,6061,6057,6051,6045,6042,6040,6038,6036,6032,6029,
+6030,6035,6045,6058,6072,6083,6090,6092,6088,6082,6076,6074,6078,6087,6101,6115,6127,6134,6136,6134,6129,
+6122,6111,6097,6082,6068,6057,6049,6043,6032,6015,5991,5966,5950,5950,5971,6010,6058,6105,6141,6163,6172,
+6172,6168,6163,6157,6150,6142,6131,6114,6088,6051,6000,5940,5878,5824,5785,5765,5762,5767,5770,5763,5744,
+5715,5682,5653,5631,5618,5613,5612,5611,5608,5603,5597,5596,5606,5630,5670,5720,5773,5818,5844,5850,5835,
+5809,5780,5755,5738,5725,5713,5696,5672,5641,5607,5575,5549,5532,5522,5516,5509,5499,5483,5460,5431,5398,
+5361,5319,5270,5213,5147,5076,5004,4936,4876,4824,4777,4734,4689,4643,4618,4567,4520,4476,4436,4399,4364,
+4331,4302,4278,4262,4252,4245,4238,4225,4205,4179,4150,4125,4105,4092,4084,4079,4072,4062,4050,4038,4030,
+4029,4035,4045,4056,4062,4062,4056,4047,4038,4031,4026,4017,4001,3975,3940,3901,3862,3829,3801,3775,3746,
+3712,3671,3626,3579,3534,3495,3461,3434,3412,3397,3385,3373,3357,3334,3304,3269,3234,3201,3170,3138,3101,
+3056,3004,2947,2890,2838,2794,2757,2724,2696,2672,2652,2635,2621,2610,2597,2584,2570,2556,2543,2530,2519,
+2508,2496,2484,2473,2461,2451,2441,2433,2425,2417,2406,2392,2370,2341,2306,2270,2237,2210,2190,2175,2163,
+2147,2128,2103,2075,2044,2014,1986,1961,1938,1918,1899,1878,1854,1828,1799,1771,1746,1725,1708,1694,1680,
+1666,1652,1638,1624,1611,1598,1583,1568,1553,1539,1529,1523,1519,1516,1512,1504,1490,1468,1438,1398,1350,
+1298,1247,1201,1165,1139,1122,1109,1095,1077,1051,1017,978,937,895,856,820,786,754,723,695,671,
+654,646,644,645,646,642,631,614,592,571,553,539,527,513,496,473,443,408,368,326,286,
+250,220,197,178,160,141,118,92,65,40,18,-2,-26,-57,-97,-144,-196,-248,-296,-342,-388,
+-438,-494,-554,-617,-680,-739,-793,-843,-886,-923,-951,-968,-974,-971,-961,-946,-925,-901,-875,-854,-845,
+-856,-892,-951,-1023,-1099,-1168,-1224,-1270,-1313,-1359,-1414,-1478,-1546,-1609,-1664,-1707,-1741,-1771,-1803,-1841,-1886,
+-1936,-1988,-2039,-2086,-2128,-2162,-2190,-2213,-2234,-2255,-2279,-2306,-2335,-2365,-2393,-2421,-2449,-2479,-2514,-2551,-2590,
+-2627,-2660,-2687,-2712,-2736,-2765,-2800,-2839,-2882,-2925,-2966,-3005,-3041,-3077,-3113,-3150,-3190,-3231,-3271,-3309,-3342,
+-3368,-3386,-3399,-3410,-3422,-3438,-3457,-3476,-3493,-3507,-3519,-3531,-3547,-3565,-3586,-3606,-3621,-3629,-3630,-3626,-3617,
+-3604,-3592,-3581,-3576,-3578,-3590,-3609,-3631,-3652,-3669,-3680,-3685,-3685,-3682,-3679,-3675,-3675,-3682,-3696,-3717,-3740,
+-3758,-3765,-3758,-3738,-3709,-3675,-3640,-3604,-3570,-3543,-3529,-3534,-3561,-3604,-3654,-3701,-3736,-3758,-3771,-3783,-3796,
+-3811,-3823,-3828,-3822,-3810,-3795,-3780,-3768,-3757,-3744,-3730,-3719,-3715,-3722,-3739,-3762,-3786,-3805,-3817,-3822,-3820,
+-3812,-3800,-3785,-3770,-3762,-3764,-3778,-3806,-3843,-3884,-3925,-3962,-3993,-4014,-4024,-4022,-4012,-3997,-3983,-3970,-3956,
+-3937,-3907,-3865,-3815,-3765,-3721,-3683,-3649,-3611,-3569,-3526,-3488,-3464,-3454,-3448,-3434,-3401,-3350,-3293,-3248,-3228,
+-3232,-3247,-3253,-3236,-3198,-3156,-3135,-3146,-3186,-3230,-3244,-3205,-3110,-2978,-2843,-2734,-2665,-2630,-2609,-2582,-2536,
+-2474,-2408,-2349,-2302,-2262,-2221,-2171,-2110,-2043,-1980,-1927,-1884,-1847,-1808,-1763,-1712,-1658,-1606,-1559,-1514,-1470,
+-1423,-1371,-1317,-1264,-1216,-1173,-1132,-1092,-1050,-1008,-968,-935,-909,-885,-857,-820,-773,-717,-660,-607,-561,
+-518,-474,-422,-363,-299,-236,-177,-124,-73,-21,33,87,136,178,214,247,285,331,381,431,474,
+508,538,570,612,663,720,776,826,872,919,974,1039,1110,1180,1240,1287,1320,1345,1366,1385,1401,
+1412,1418,1419,1421,1425,1433,1441,1449,1453,1455,1456,1459,1466,1477,1490,1505,1521,1536,1550,1560,1566,
+1566,1563,1560,1560,1564,1570,1573,1571,1562,1547,1532,1522,1521,1531,1550,1576,1603,1626,1641,1646,1640,
+1626,1608,1591,1580,1577,1582,1595,1615,1639,1666,1694,1720,1742,1758,1770,1779,1787,1797,1810,1827,1846,
+1865,1883,1899,1912,1923,1930,1937,1944,1952,1960,1967,1974,1979,1982,1983,1980,1973,1962,1948,1937,1936,
+1950,1980,2021,2062,2093,2107,2108,2108,2121,2160,2227,2314,2402,2472,2507,2503,2466,2412,2358,2317,2294,
+2285,2279,2265,2235,2191,2139,2085,2030,1959,1848,1670,1410,1076,705,350,67,-107,-169,-146,-83,-24,
+9,27,61,150,316,554,827,1084,1274,1365,1354,1266,1136,1003,890,805,744,697,656,614,573,
+531,485,433,371,306,247,207,193,205,229,249,247,218,167,105,47,-2,-46,-92,-141,-188,
+-217,-209,-152,-49,81,211,316,380,404,400,384,368,353,334,301,246,172,89,10,-45,-69,
+-56,-14,43,103,151,185,206,223,243,270,303,334,360,376,388,399,416,439,465,487,501,
+509,515,526,546,574,605,631,646,652,650,649,655,671,701,741,787,836,882,922,955,982,
+1006,1033,1066,1109,1160,1216,1272,1323,1363,1390,1405,1412,1417,1426,1445,1473,1511,1552,1591,1622,1642,
+1653,1657,1659,1662,1669,1681,1697,1716,1734,1750,1761,1766,1765,1760,1749,1733,1710,1678,1638,1594,1550,
+1511,1481,1457,1436,1414,1386,1352,1315,1278,1242,1208,1172,1132,1087,1040,994,954,927,913,913,927,
+953,986,1025,1064,1100,1130,1151,1164,1170,1170,1167,1160,1148,1130,1104,1071,1032,990,948,908,871,
+839,811,788,768,751,736,721,705,686,663,638,610,582,555,529,504,479,452,425,396,367,
+338,308,278,248,219,193,172,155,140,124,102,73,39,4,-27,-53,-75,-97,-123,-155,-192,
+-229,-263,-294,-325,-362,-411,-474,-545,-613,-663,-682,-664,-612,-536,-454,-384,-338,-322,-334,-364,-400,
+-432,-457,-477,-497,-524,-559,-600,-639,-671,-692,-705,-714,-727,-746,-771,-797,-819,-833,-842,-847,-853,
+-861,-873,-885,-899,-913,-930,-950,-975,-1000,-1022,-1037,-1046,-1053,-1062,-1080,-1107,-1140,-1174,-1202,-1223,-1236,
+-1249,-1266,-1291,-1326,-1368,-1413,-1457,-1499,-1538,-1574,-1604,-1628,-1646,-1658,-1665,-1671,-1678,-1687,-1699,-1712,-1727,
+-1742,-1757,-1772,-1789,-1810,-1834,-1864,-1900,-1939,-1978,-2015,-2048,-2077,-2107,-2139,-2176,-2217,-2260,-2300,-2336,-2366,
+-2393,-2417,-2440,-2462,-2482,-2499,-2514,-2531,-2551,-2575,-2602,-2629,-2655,-2677,-2696,-2715,-2733,-2750,-2767,-2781,-2794,
+-2806,-2819,-2835,-2852,-2869,-2884,-2898,-2911,-2928,-2948,-2974,-3002,-3030,-3054,-3073,-3088,-3101,-3115,-3132,-3152,-3174,
+-3197,-3218,-3237,-3257,-3279,-3306,-3338,-3372,-3407,-3438,-3464,-3489,-3516,-3551,-3595,-3648,-3705,-3759,-3806,-3844,-3875,
+-3902,-3929,-3954,-3979,-4002,-4023,-4043,-4066,-4090,-4117,-4142,-4163,-4182,-4199,-4218,-4239,-4264,-4289,-4314,-4338,-4364,
+-4392,-4424,-4460,-4494,-4522,-4543,-4557,-4568,-4578,-4591,-4605,-4619,-4631,-4642,-4654,-4667,-4682,-4695,-4703,-4702,-4690,
+-4668,-4640,-4609,-4581,-4555,-4532,-4514,-4498,-4485,-4475,-4467,-4461,-4456,-4452,-4448,-4444,-4441,-4437,-4435,-4436,-4439,
+-4444,-4449,-4451,-4444,-4428,-4402,-4369,-4332,-4292,-4250,-4204,-4152,-4094,-4033,-3973,-3915,-3861,-3810,-3761,-3711,-3660,
+-3608,-3556,-3503,-3450,-3397,-3345,-3296,-3252,-3212,-3174,-3136,-3093,-3043,-2987,-2926,-2862,-2799,-2738,-2678,-2623,-2571,
+-2525,-2484,-2446,-2409,-2369,-2326,-2279,-2229,-2175,-2116,-2050,-1975,-1896,-1817,-1747,-1693,-1656,-1632,-1615,-1594,-1564,
+-1525,-1479,-1434,-1395,-1363,-1337,-1314,-1288,-1258,-1224,-1187,-1150,-1114,-1075,-1032,-977,-909,-826,-732,-633,-537,
+-446,-361,-279,-193,-99,2,111,222,332,442,553,670,792,917,1038,1151,1250,1334,1404,1461,1505,
+1537,1560,1577,1597,1630,1682,1754,1842,1936,2027,2112,2189,2264,2342,2423,2506,2588,2663,2731,2794,2855,
+2919,2988,3063,3143,3224,3306,3384,3460,3530,3595,3656,3714,3770,3824,3877,3929,3980,4032,4085,4140,4196,
+4252,4306,4359,4411,4463,4516,4571,4627,4682,4736,4789,4843,4899,4957,5015,5073,5128,5182,5235,5289,5344,
+5398,5451,5502,5553,5604,5658,5715,5770,5823,5870,5910,5944,5974,5997,6013,6021,6022,6018,6014,6014,6019,
+6027,6035,6041,6042,6040,6037,6036,6035,6034,6031,6026,6022,6020,6023,6033,6047,6063,6077,6088,6093,6091,
+6085,6075,6067,6064,6070,6084,6104,6122,6134,6136,6130,6118,6105,6091,6075,6057,6036,6016,6003,5999,6005,
+6014,6019,6015,6001,5985,5976,5982,6006,6042,6083,6118,6144,6160,6169,6173,6172,6165,6149,6125,6094,6058,
+6020,5979,5936,5891,5845,5806,5777,5761,5756,5756,5751,5738,5715,5686,5660,5641,5633,5632,5634,5632,5625,
+5613,5603,5601,5613,5643,5687,5740,5790,5830,5851,5853,5839,5815,5789,5770,5758,5753,5749,5741,5722,5693,
+5655,5614,5576,5546,5526,5515,5509,5502,5490,5470,5442,5409,5374,5339,5302,5262,5215,5158,5092,5022,4951,
+4885,4825,4771,4720,4669,4618,4614,4559,4506,4456,4410,4367,4327,4291,4259,4236,4222,4216,4216,4214,4207,
+4192,4169,4141,4113,4088,4068,4052,4039,4027,4014,4001,3989,3980,3977,3980,3988,3998,4006,4011,4011,4008,
+4004,4000,3996,3989,3975,3953,3923,3889,3856,3829,3807,3789,3769,3743,3709,3667,3622,3575,3530,3488,3452,
+3423,3402,3387,3376,3363,3344,3319,3287,3254,3221,3190,3160,3126,3085,3036,2983,2929,2880,2838,2804,2776,
+2753,2733,2716,2701,2687,2674,2660,2646,2631,2616,2603,2590,2579,2570,2561,2553,2544,2533,2522,2511,2501,
+2493,2485,2475,2459,2434,2401,2363,2325,2294,2270,2253,2238,2219,2195,2164,2130,2095,2064,2034,2007,1980,
+1953,1926,1900,1875,1849,1821,1793,1764,1737,1714,1695,1679,1664,1650,1634,1618,1602,1586,1572,1558,1545,
+1533,1524,1517,1513,1510,1505,1498,1485,1467,1441,1407,1366,1320,1269,1219,1174,1138,1112,1097,1091,1087,
+1081,1067,1041,1004,958,908,859,814,776,742,711,681,655,634,621,617,619,622,622,613,597,
+576,555,535,520,506,491,471,445,413,377,338,298,259,223,192,165,144,126,108,91,72,
+52,34,16,-1,-22,-50,-87,-132,-183,-234,-283,-330,-377,-429,-488,-555,-627,-701,-772,-839,-899,
+-950,-991,-1019,-1033,-1032,-1016,-989,-954,-916,-881,-854,-844,-855,-891,-947,-1018,-1092,-1161,-1218,-1264,-1304,
+-1345,-1393,-1452,-1517,-1582,-1642,-1693,-1735,-1771,-1806,-1844,-1887,-1935,-1985,-2035,-2082,-2124,-2161,-2193,-2219,-2242,
+-2264,-2287,-2314,-2345,-2379,-2414,-2448,-2477,-2503,-2528,-2553,-2582,-2613,-2645,-2675,-2702,-2727,-2752,-2782,-2819,-2862,
+-2910,-2957,-3002,-3043,-3078,-3111,-3143,-3177,-3213,-3254,-3298,-3342,-3383,-3418,-3443,-3458,-3467,-3473,-3482,-3496,-3516,
+-3538,-3561,-3582,-3600,-3616,-3630,-3644,-3655,-3663,-3665,-3661,-3654,-3643,-3631,-3621,-3615,-3615,-3622,-3636,-3654,-3673,
+-3689,-3700,-3706,-3709,-3711,-3713,-3715,-3718,-3723,-3733,-3749,-3770,-3795,-3818,-3834,-3841,-3837,-3821,-3792,-3750,-3695,
+-3632,-3571,-3524,-3504,-3518,-3560,-3617,-3675,-3721,-3750,-3766,-3776,-3787,-3799,-3808,-3810,-3805,-3794,-3784,-3777,-3774,
+-3770,-3761,-3745,-3723,-3703,-3688,-3683,-3687,-3696,-3707,-3718,-3726,-3733,-3736,-3735,-3729,-3720,-3712,-3709,-3715,-3733,
+-3762,-3799,-3842,-3888,-3933,-3973,-4003,-4019,-4022,-4014,-3999,-3981,-3960,-3936,-3906,-3869,-3826,-3780,-3732,-3684,-3636,
+-3587,-3541,-3503,-3478,-3467,-3465,-3460,-3440,-3403,-3351,-3299,-3262,-3246,-3245,-3247,-3237,-3210,-3177,-3155,-3163,-3203,
+-3259,-3304,-3308,-3257,-3158,-3035,-2919,-2831,-2777,-2741,-2704,-2650,-2574,-2486,-2398,-2323,-2264,-2216,-2170,-2121,-2069,
+-2018,-1971,-1930,-1892,-1854,-1811,-1763,-1713,-1663,-1617,-1574,-1531,-1485,-1435,-1380,-1324,-1270,-1220,-1175,-1131,-1088,
+-1045,-1002,-963,-929,-900,-872,-841,-802,-754,-698,-642,-589,-543,-500,-454,-401,-340,-273,-207,-147,-92,
+-41,10,66,123,176,223,263,300,339,382,427,469,502,526,546,571,608,657,714,770,819,
+863,908,961,1024,1095,1167,1230,1281,1320,1351,1378,1400,1417,1427,1430,1429,1429,1433,1443,1453,1462,
+1467,1468,1469,1474,1483,1495,1509,1523,1537,1552,1567,1581,1594,1603,1607,1609,1611,1613,1617,1619,1616,
+1609,1596,1582,1571,1566,1571,1584,1604,1626,1648,1663,1668,1662,1646,1624,1601,1580,1566,1561,1564,1575,
+1593,1615,1640,1664,1687,1709,1729,1749,1771,1792,1814,1834,1852,1868,1882,1895,1906,1915,1924,1933,1942,
+1951,1961,1970,1977,1983,1987,1990,1991,1989,1982,1973,1966,1967,1982,2011,2048,2082,2102,2104,2097,2093,
+2111,2161,2241,2337,2428,2494,2524,2516,2483,2439,2397,2368,2350,2338,2320,2289,2240,2176,2109,2048,1995,
+1935,1842,1685,1442,1117,745,386,102,-61,-99,-46,38,97,97,45,-17,-36,33,205,456,736,
+986,1162,1243,1234,1160,1054,942,840,755,688,636,597,567,538,504,457,393,319,247,191,161,
+159,172,184,180,151,104,48,-2,-43,-73,-100,-124,-139,-130,-83,9,140,287,420,513,555,
+553,525,495,480,485,501,509,493,438,346,228,108,10,-46,-52,-14,49,118,173,209,228,
+242,260,286,317,345,366,380,390,405,427,456,484,506,519,527,535,550,574,603,631,651,
+662,666,668,678,699,735,784,841,899,950,988,1011,1024,1031,1043,1067,1105,1155,1212,1269,1319,
+1358,1384,1401,1413,1425,1443,1472,1513,1565,1624,1682,1733,1772,1797,1809,1807,1795,1773,1745,1715,1687,
+1665,1651,1644,1644,1647,1651,1652,1649,1637,1615,1581,1539,1491,1442,1397,1356,1318,1279,1237,1191,1142,
+1093,1047,1004,964,927,894,869,858,864,888,928,978,1029,1077,1117,1147,1168,1181,1189,1194,1199,
+1205,1214,1223,1229,1228,1216,1190,1152,1103,1049,994,943,897,856,821,790,763,738,715,695,676,
+656,634,608,578,545,512,480,451,424,400,377,352,326,298,270,240,211,181,152,125,101,
+79,58,36,12,-15,-45,-76,-104,-129,-151,-174,-201,-232,-266,-299,-330,-357,-385,-418,-463,-523,
+-593,-662,-716,-740,-725,-672,-595,-513,-447,-411,-411,-438,-479,-517,-544,-563,-579,-602,-635,-676,-716,
+-745,-759,-761,-761,-767,-786,-815,-845,-867,-877,-874,-867,-862,-865,-878,-897,-919,-941,-964,-989,-1018,
+-1048,-1073,-1090,-1097,-1098,-1100,-1111,-1132,-1163,-1195,-1222,-1240,-1250,-1256,-1267,-1286,-1315,-1350,-1388,-1428,-1468,
+-1509,-1549,-1586,-1616,-1636,-1646,-1649,-1650,-1653,-1660,-1671,-1684,-1696,-1706,-1716,-1728,-1744,-1766,-1795,-1831,-1872,
+-1917,-1962,-2004,-2041,-2073,-2103,-2135,-2172,-2214,-2258,-2300,-2336,-2365,-2387,-2405,-2422,-2438,-2455,-2471,-2486,-2501,
+-2517,-2535,-2555,-2578,-2601,-2626,-2650,-2674,-2695,-2713,-2726,-2735,-2742,-2751,-2764,-2779,-2795,-2808,-2818,-2826,-2837,
+-2854,-2881,-2915,-2952,-2987,-3017,-3040,-3059,-3077,-3097,-3119,-3143,-3167,-3189,-3208,-3226,-3243,-3263,-3285,-3311,-3340,
+-3370,-3399,-3429,-3459,-3493,-3534,-3582,-3636,-3689,-3737,-3776,-3806,-3830,-3853,-3878,-3904,-3931,-3955,-3975,-3994,-4013,
+-4033,-4054,-4076,-4095,-4112,-4129,-4149,-4174,-4204,-4237,-4270,-4301,-4330,-4358,-4388,-4418,-4447,-4473,-4494,-4511,-4526,
+-4540,-4555,-4570,-4582,-4593,-4604,-4615,-4629,-4645,-4658,-4666,-4666,-4656,-4639,-4617,-4594,-4570,-4546,-4525,-4505,-4488,
+-4474,-4463,-4454,-4446,-4440,-4435,-4433,-4434,-4436,-4438,-4439,-4439,-4440,-4439,-4436,-4429,-4414,-4391,-4359,-4322,-4283,
+-4243,-4202,-4159,-4111,-4059,-4006,-3954,-3904,-3857,-3810,-3761,-3709,-3654,-3600,-3546,-3492,-3437,-3381,-3324,-3270,-3223,
+-3184,-3150,-3117,-3079,-3032,-2974,-2910,-2843,-2778,-2717,-2660,-2606,-2557,-2512,-2471,-2432,-2393,-2351,-2306,-2257,-2208,
+-2161,-2114,-2064,-2009,-1946,-1879,-1813,-1756,-1712,-1681,-1659,-1638,-1614,-1584,-1551,-1517,-1488,-1464,-1443,-1423,-1399,
+-1370,-1335,-1294,-1248,-1197,-1142,-1081,-1013,-938,-856,-769,-681,-594,-511,-431,-352,-270,-182,-86,16,124,
+236,351,473,600,732,866,995,1115,1224,1320,1404,1476,1532,1570,1589,1595,1599,1613,1651,1717,1805,
+1906,2005,2094,2171,2242,2312,2389,2471,2555,2636,2708,2773,2835,2897,2965,3040,3121,3204,3287,3367,3442,
+3513,3579,3641,3700,3756,3809,3860,3908,3957,4006,4060,4117,4177,4237,4295,4350,4403,4456,4511,4567,4623,
+4678,4730,4780,4831,4886,4944,5006,5068,5128,5185,5239,5290,5340,5388,5436,5486,5537,5592,5652,5714,5775,
+5830,5878,5917,5949,5974,5992,6002,6004,5999,5992,5987,5989,5998,6011,6023,6031,6033,6032,6030,6029,6028,
+6027,6024,6021,6020,6025,6035,6050,6067,6081,6092,6097,6099,6095,6089,6080,6072,6069,6076,6091,6112,6132,
+6145,6145,6136,6120,6102,6086,6069,6049,6028,6008,5996,5999,6016,6040,6060,6066,6057,6036,6017,6010,6022,
+6049,6083,6117,6142,6159,6169,6173,6169,6153,6124,6081,6032,5984,5945,5917,5899,5885,5869,5849,5827,5803,
+5780,5757,5733,5706,5677,5651,5631,5622,5622,5626,5629,5627,5620,5614,5615,5630,5661,5707,5758,5805,5838,
+5852,5846,5828,5804,5783,5770,5766,5769,5773,5773,5763,5742,5711,5673,5632,5594,5562,5539,5523,5510,5494,
+5474,5445,5412,5377,5346,5318,5293,5265,5228,5177,5113,5040,4965,4894,4831,4774,4720,4668,4614,4620,4562,
+4504,4448,4398,4352,4310,4271,4237,4209,4189,4180,4178,4179,4179,4172,4157,4136,4110,4084,4058,4035,4015,
+3998,3983,3969,3958,3949,3942,3939,3939,3944,3951,3960,3968,3974,3977,3977,3974,3968,3957,3940,3917,3892,
+3866,3843,3823,3805,3785,3761,3731,3695,3656,3615,3574,3533,3495,3461,3434,3414,3399,3385,3366,3340,3307,
+3269,3232,3196,3164,3131,3095,3055,3010,2964,2922,2887,2859,2838,2822,2806,2790,2773,2754,2735,2717,2702,
+2689,2679,2670,2661,2651,2641,2632,2623,2613,2601,2588,2575,2563,2553,2544,2533,2514,2487,2451,2412,2377,
+2350,2332,2317,2299,2271,2232,2186,2140,2099,2066,2039,2014,1987,1957,1924,1892,1863,1835,1808,1780,1751,
+1724,1700,1682,1668,1656,1643,1628,1611,1593,1576,1562,1551,1541,1532,1523,1513,1501,1487,1471,1451,1427,
+1400,1368,1333,1294,1254,1213,1171,1132,1097,1069,1052,1044,1045,1049,1047,1034,1004,961,908,854,805,
+765,732,704,679,655,635,622,616,616,617,614,604,586,563,539,518,500,483,465,444,418,
+387,353,316,277,237,198,160,128,103,84,70,59,46,31,15,-3,-22,-45,-72,-105,-147,
+-194,-245,-296,-346,-397,-451,-512,-581,-656,-736,-814,-887,-952,-1004,-1043,-1066,-1073,-1064,-1040,-1004,-961,
+-918,-883,-865,-869,-899,-951,-1019,-1092,-1160,-1218,-1264,-1304,-1346,-1395,-1452,-1516,-1579,-1638,-1688,-1730,-1767,
+-1804,-1844,-1889,-1938,-1988,-2038,-2087,-2132,-2173,-2209,-2241,-2267,-2291,-2314,-2340,-2371,-2409,-2450,-2492,-2529,-2557,
+-2576,-2587,-2597,-2611,-2631,-2656,-2685,-2715,-2743,-2772,-2804,-2841,-2885,-2934,-2984,-3032,-3074,-3111,-3144,-3177,-3210,
+-3246,-3283,-3323,-3364,-3404,-3440,-3469,-3490,-3504,-3512,-3521,-3535,-3556,-3583,-3613,-3641,-3665,-3682,-3694,-3702,-3707,
+-3710,-3709,-3705,-3698,-3691,-3683,-3678,-3677,-3681,-3689,-3701,-3714,-3726,-3736,-3744,-3750,-3756,-3763,-3772,-3779,-3785,
+-3789,-3792,-3798,-3808,-3824,-3844,-3866,-3886,-3901,-3905,-3893,-3860,-3804,-3729,-3647,-3574,-3527,-3515,-3538,-3584,-3637,
+-3684,-3719,-3744,-3766,-3788,-3811,-3830,-3839,-3838,-3829,-3819,-3811,-3808,-3806,-3799,-3785,-3763,-3739,-3718,-3701,-3690,
+-3683,-3676,-3671,-3665,-3662,-3660,-3658,-3656,-3654,-3654,-3657,-3666,-3682,-3707,-3740,-3781,-3828,-3880,-3931,-3975,-4006,
+-4020,-4018,-4004,-3982,-3957,-3932,-3905,-3876,-3842,-3801,-3754,-3702,-3645,-3588,-3538,-3500,-3476,-3464,-3457,-3445,-3421,
+-3385,-3345,-3309,-3285,-3271,-3261,-3244,-3215,-3180,-3152,-3149,-3178,-3235,-3299,-3343,-3346,-3302,-3222,-3125,-3032,-2953,
+-2885,-2817,-2738,-2645,-2542,-2443,-2357,-2290,-2238,-2194,-2152,-2108,-2065,-2025,-1988,-1952,-1914,-1871,-1823,-1773,-1725,
+-1681,-1640,-1599,-1553,-1501,-1444,-1385,-1328,-1274,-1224,-1178,-1134,-1090,-1047,-1004,-963,-925,-889,-854,-817,-775,
+-727,-675,-621,-570,-523,-478,-431,-379,-319,-255,-191,-130,-74,-19,38,100,166,230,286,334,374,
+412,449,485,515,536,546,554,568,597,641,697,754,807,854,900,951,1010,1076,1142,1202,1252,
+1292,1326,1354,1378,1394,1403,1407,1411,1419,1436,1458,1482,1501,1513,1519,1523,1528,1535,1544,1551,1558,
+1564,1573,1587,1604,1623,1639,1651,1658,1663,1666,1670,1672,1670,1664,1651,1635,1618,1605,1598,1600,1612,
+1632,1654,1673,1683,1679,1663,1636,1606,1578,1558,1546,1545,1553,1567,1584,1604,1625,1646,1670,1696,1726,
+1758,1790,1817,1838,1852,1862,1870,1878,1887,1897,1907,1917,1928,1940,1952,1963,1972,1979,1985,1990,1994,
+1997,1996,1993,1991,1996,2012,2042,2077,2107,2122,2120,2109,2104,2124,2176,2257,2352,2439,2502,2532,2529,
+2504,2467,2428,2392,2361,2333,2302,2263,2210,2142,2062,1977,1889,1793,1672,1502,1266,966,630,311,67,
+-58,-60,29,151,243,264,209,112,22,-10,38,168,351,547,721,846,915,931,907,857,795,
+730,671,621,581,550,522,490,448,394,330,265,209,171,152,146,141,129,104,71,38,15,
+7,10,19,29,42,65,109,179,269,364,442,488,494,469,430,400,394,418,468,527,572,
+582,541,449,319,177,56,-16,-30,7,74,144,197,227,241,252,271,298,329,356,373,383,
+392,406,428,454,479,499,513,526,543,567,596,626,651,668,680,690,704,729,766,814,868,
+923,969,1002,1023,1034,1043,1058,1083,1120,1164,1210,1254,1295,1332,1368,1403,1438,1475,1514,1557,1605,
+1660,1718,1773,1822,1859,1881,1887,1875,1844,1794,1728,1652,1576,1508,1457,1425,1410,1409,1416,1425,1431,
+1429,1416,1391,1352,1305,1253,1202,1155,1111,1068,1025,981,937,897,864,838,820,810,808,818,841,
+880,932,992,1052,1105,1146,1172,1186,1189,1187,1183,1182,1184,1192,1205,1221,1235,1242,1239,1221,1190,
+1147,1097,1044,991,941,894,849,807,767,729,695,664,638,614,591,568,542,513,482,450,418,
+387,359,331,303,275,247,221,195,170,143,113,80,46,13,-14,-37,-58,-80,-105,-133,-163,
+-191,-216,-237,-257,-279,-306,-336,-366,-395,-419,-443,-473,-514,-571,-641,-712,-768,-792,-777,-725,-650,
+-574,-519,-497,-509,-543,-585,-623,-651,-673,-696,-725,-758,-789,-811,-821,-821,-822,-830,-852,-881,-909,
+-924,-923,-907,-887,-875,-877,-896,-924,-956,-985,-1011,-1036,-1062,-1089,-1113,-1129,-1136,-1135,-1134,-1141,-1160,
+-1188,-1220,-1249,-1268,-1278,-1285,-1293,-1306,-1324,-1345,-1366,-1388,-1414,-1445,-1483,-1524,-1560,-1588,-1604,-1611,-1614,
+-1618,-1626,-1637,-1651,-1664,-1678,-1694,-1712,-1735,-1763,-1794,-1829,-1866,-1907,-1950,-1992,-2032,-2068,-2101,-2133,-2169,
+-2209,-2251,-2292,-2328,-2355,-2376,-2391,-2404,-2418,-2433,-2450,-2467,-2483,-2499,-2514,-2530,-2548,-2568,-2592,-2618,-2644,
+-2666,-2681,-2688,-2689,-2688,-2691,-2701,-2715,-2730,-2742,-2749,-2753,-2762,-2781,-2813,-2854,-2900,-2944,-2980,-3008,-3031,
+-3052,-3073,-3096,-3120,-3143,-3164,-3183,-3201,-3217,-3232,-3248,-3266,-3289,-3318,-3353,-3393,-3437,-3483,-3530,-3577,-3623,
+-3665,-3701,-3729,-3752,-3773,-3796,-3822,-3852,-3882,-3910,-3932,-3951,-3967,-3984,-4002,-4021,-4038,-4055,-4073,-4095,-4122,
+-4155,-4190,-4226,-4259,-4289,-4317,-4345,-4373,-4400,-4426,-4450,-4471,-4490,-4509,-4526,-4541,-4554,-4566,-4577,-4590,-4604,
+-4617,-4628,-4632,-4629,-4621,-4610,-4597,-4582,-4565,-4546,-4524,-4503,-4483,-4468,-4457,-4447,-4440,-4433,-4428,-4426,-4429,
+-4434,-4438,-4441,-4440,-4435,-4428,-4417,-4403,-4382,-4354,-4321,-4284,-4247,-4212,-4176,-4140,-4099,-4054,-4007,-3961,-3916,
+-3872,-3827,-3777,-3722,-3664,-3604,-3546,-3489,-3431,-3372,-3311,-3255,-3205,-3165,-3133,-3101,-3065,-3018,-2962,-2900,-2836,
+-2775,-2718,-2663,-2610,-2558,-2509,-2465,-2425,-2386,-2345,-2299,-2249,-2200,-2155,-2115,-2079,-2041,-1997,-1945,-1887,-1830,
+-1780,-1739,-1709,-1685,-1664,-1642,-1620,-1598,-1575,-1554,-1532,-1508,-1482,-1454,-1420,-1378,-1327,-1264,-1191,-1111,-1029,
+-949,-872,-796,-720,-642,-560,-475,-390,-303,-216,-128,-35,63,169,283,407,537,672,807,937,1057,
+1167,1266,1356,1435,1500,1545,1569,1576,1575,1583,1613,1673,1762,1868,1975,2072,2154,2225,2293,2364,2442,
+2524,2606,2682,2751,2815,2878,2944,3016,3093,3173,3254,3333,3408,3480,3548,3613,3676,3734,3790,3841,3890,
+3938,3988,4042,4100,4162,4224,4284,4340,4391,4441,4492,4545,4599,4653,4706,4757,4810,4865,4926,4989,5054,
+5117,5176,5230,5281,5328,5374,5420,5468,5520,5577,5640,5705,5769,5827,5875,5913,5942,5963,5978,5985,5984,
+5979,5973,5972,5978,5992,6009,6023,6030,6030,6024,6018,6013,6011,6011,6011,6014,6020,6033,6051,6070,6087,
+6097,6102,6102,6100,6098,6095,6091,6086,6084,6087,6099,6117,6135,6146,6147,6137,6122,6106,6092,6078,6061,
+6042,6022,6010,6011,6027,6051,6072,6081,6073,6054,6036,6030,6042,6069,6102,6131,6149,6157,6158,6154,6144,
+6123,6087,6038,5982,5932,5897,5883,5885,5894,5899,5891,5867,5832,5791,5750,5712,5681,5655,5637,5626,5623,
+5624,5628,5632,5635,5639,5649,5670,5703,5744,5789,5828,5853,5861,5851,5831,5807,5787,5774,5771,5774,5778,
+5778,5773,5760,5741,5715,5685,5653,5621,5591,5565,5541,5518,5492,5460,5423,5384,5349,5323,5305,5291,5274,
+5244,5196,5130,5053,4973,4899,4834,4778,4726,4675,4620,4610,4552,4496,4443,4397,4357,4319,4282,4245,4209,
+4180,4160,4150,4148,4150,4150,4143,4130,4109,4084,4057,4031,4006,3986,3971,3959,3951,3943,3935,3926,3918,
+3915,3917,3925,3936,3948,3956,3960,3960,3957,3950,3941,3929,3913,3896,3878,3858,3837,3812,3784,3751,3716,
+3681,3646,3611,3576,3541,3509,3480,3457,3439,3423,3403,3374,3336,3291,3244,3199,3159,3123,3089,3055,3018,
+2982,2949,2921,2902,2890,2882,2875,2864,2847,2826,2803,2783,2768,2759,2754,2748,2741,2729,2715,2700,2686,
+2672,2658,2642,2625,2609,2596,2584,2571,2551,2523,2487,2449,2416,2392,2376,2361,2339,2302,2252,2195,2140,
+2096,2063,2038,2014,1987,1955,1921,1887,1856,1828,1801,1772,1742,1713,1690,1673,1664,1656,1648,1635,1619,
+1601,1585,1573,1565,1559,1551,1537,1516,1488,1456,1422,1387,1352,1316,1280,1243,1207,1173,1140,1108,1076,
+1044,1014,992,980,979,987,993,991,972,935,887,836,789,753,726,707,691,676,663,652,645,
+639,631,618,598,574,547,522,499,479,460,439,416,390,361,331,297,260,220,177,135,99,
+72,55,46,39,31,17,-2,-26,-52,-80,-110,-145,-187,-237,-292,-348,-404,-458,-512,-569,-633,
+-704,-780,-858,-931,-993,-1039,-1070,-1083,-1083,-1070,-1046,-1013,-976,-940,-913,-903,-916,-955,-1013,-1083,-1153,
+-1215,-1266,-1310,-1354,-1405,-1465,-1531,-1597,-1655,-1701,-1737,-1769,-1802,-1841,-1887,-1939,-1993,-2046,-2096,-2142,-2186,
+-2226,-2262,-2293,-2320,-2344,-2368,-2395,-2430,-2471,-2517,-2561,-2598,-2623,-2634,-2637,-2637,-2643,-2658,-2683,-2715,-2748,
+-2779,-2807,-2836,-2870,-2910,-2956,-3005,-3051,-3093,-3131,-3167,-3203,-3239,-3275,-3310,-3344,-3376,-3410,-3444,-3477,-3507,
+-3531,-3550,-3566,-3584,-3606,-3634,-3665,-3696,-3722,-3741,-3753,-3760,-3765,-3768,-3771,-3772,-3773,-3773,-3772,-3773,-3775,
+-3779,-3784,-3790,-3797,-3802,-3808,-3813,-3820,-3830,-3843,-3857,-3868,-3874,-3874,-3868,-3861,-3857,-3859,-3870,-3888,-3912,
+-3937,-3955,-3960,-3943,-3900,-3832,-3749,-3666,-3600,-3562,-3555,-3574,-3608,-3647,-3685,-3723,-3763,-3806,-3847,-3881,-3900,
+-3902,-3893,-3878,-3864,-3855,-3849,-3842,-3830,-3814,-3796,-3777,-3761,-3746,-3730,-3713,-3692,-3670,-3649,-3630,-3614,-3603,
+-3598,-3600,-3608,-3624,-3645,-3672,-3704,-3742,-3786,-3836,-3888,-3937,-3976,-4000,-4008,-4000,-3982,-3959,-3934,-3910,-3886,
+-3861,-3830,-3791,-3743,-3688,-3629,-3574,-3526,-3488,-3459,-3436,-3415,-3394,-3374,-3357,-3344,-3331,-3314,-3287,-3248,-3203,
+-3164,-3145,-3155,-3194,-3248,-3299,-3328,-3325,-3290,-3233,-3163,-3088,-3006,-2914,-2810,-2695,-2579,-2473,-2389,-2328,-2285,
+-2249,-2214,-2174,-2132,-2091,-2055,-2022,-1985,-1943,-1893,-1840,-1789,-1743,-1703,-1664,-1619,-1566,-1507,-1444,-1383,-1328,
+-1277,-1230,-1184,-1138,-1092,-1046,-1001,-957,-914,-873,-834,-796,-757,-716,-671,-623,-574,-525,-477,-429,-378,
+-322,-262,-200,-139,-79,-19,45,114,187,257,319,370,412,448,484,519,550,572,586,595,607,
+632,671,721,776,827,874,918,964,1016,1073,1130,1183,1228,1265,1297,1325,1348,1366,1380,1392,1409,
+1435,1469,1507,1543,1570,1586,1592,1593,1594,1597,1600,1602,1604,1605,1611,1622,1638,1656,1673,1687,1698,
+1707,1716,1724,1730,1731,1725,1709,1686,1657,1629,1607,1597,1603,1625,1655,1686,1706,1710,1694,1662,1623,
+1586,1557,1540,1536,1542,1554,1571,1589,1607,1628,1652,1680,1712,1747,1778,1804,1821,1832,1838,1845,1854,
+1866,1878,1890,1900,1911,1923,1936,1949,1961,1970,1977,1985,1992,1999,2004,2006,2008,2016,2034,2065,2102,
+2134,2154,2156,2149,2147,2165,2211,2281,2363,2439,2496,2527,2532,2517,2487,2446,2401,2356,2315,2278,2238,
+2186,2110,2003,1866,1707,1532,1342,1132,895,635,372,141,-16,-73,-25,98,248,372,433,422,354,
+260,173,118,105,132,190,268,353,435,504,556,587,600,598,587,569,547,519,488,453,415,
+375,334,293,255,221,195,175,159,143,127,112,104,107,124,153,185,214,235,250,264,281,
+302,322,334,332,315,287,257,236,233,254,304,377,463,540,582,567,488,358,207,76,-1,
+-14,27,98,167,216,242,254,267,290,320,350,372,384,390,397,410,429,451,471,488,504,
+523,547,577,609,638,662,681,699,720,748,785,829,878,925,965,994,1014,1029,1046,1069,1099,
+1135,1172,1208,1243,1283,1330,1389,1456,1525,1589,1644,1691,1732,1769,1803,1830,1847,1851,1839,1811,1767,
+1706,1626,1531,1425,1319,1224,1151,1103,1078,1072,1077,1087,1096,1100,1096,1082,1059,1029,995,963,934,
+909,885,861,837,815,800,793,797,811,832,859,890,925,965,1008,1050,1088,1117,1137,1147,1150,
+1148,1145,1141,1138,1137,1139,1144,1154,1164,1173,1177,1172,1158,1134,1102,1063,1019,972,921,869,817,
+768,721,679,641,607,577,551,527,504,481,456,428,397,365,331,296,260,225,193,163,137,
+112,87,57,22,-15,-52,-84,-108,-127,-145,-166,-193,-224,-255,-283,-303,-319,-334,-353,-378,-408,
+-439,-466,-489,-510,-537,-578,-635,-706,-778,-834,-857,-840,-785,-711,-638,-588,-574,-593,-635,-685,-731,
+-765,-790,-808,-824,-839,-850,-860,-869,-883,-904,-931,-958,-977,-978,-962,-935,-907,-893,-898,-922,-959,
+-997,-1031,-1059,-1082,-1104,-1127,-1149,-1164,-1171,-1171,-1170,-1174,-1189,-1215,-1246,-1275,-1298,-1314,-1325,-1335,-1345,
+-1355,-1362,-1365,-1367,-1373,-1389,-1416,-1453,-1491,-1523,-1546,-1560,-1569,-1578,-1590,-1605,-1622,-1641,-1662,-1687,-1716,
+-1749,-1782,-1813,-1843,-1872,-1904,-1940,-1980,-2021,-2061,-2097,-2131,-2166,-2203,-2241,-2278,-2310,-2336,-2354,-2368,-2380,
+-2392,-2406,-2423,-2441,-2460,-2477,-2492,-2506,-2518,-2533,-2552,-2576,-2603,-2626,-2641,-2646,-2641,-2634,-2630,-2635,-2647,
+-2662,-2675,-2682,-2689,-2700,-2724,-2763,-2812,-2865,-2914,-2952,-2981,-3002,-3021,-3039,-3058,-3076,-3093,-3110,-3126,-3142,
+-3157,-3171,-3184,-3200,-3224,-3258,-3304,-3358,-3416,-3472,-3521,-3563,-3599,-3629,-3656,-3678,-3698,-3718,-3740,-3767,-3797,
+-3829,-3858,-3884,-3905,-3923,-3940,-3958,-3976,-3994,-4012,-4031,-4053,-4079,-4110,-4143,-4175,-4206,-4234,-4262,-4289,-4318,
+-4348,-4377,-4404,-4430,-4455,-4477,-4498,-4517,-4532,-4547,-4561,-4576,-4591,-4603,-4610,-4610,-4605,-4597,-4588,-4580,-4570,
+-4557,-4539,-4517,-4495,-4476,-4463,-4455,-4450,-4445,-4440,-4435,-4433,-4433,-4436,-4439,-4438,-4433,-4424,-4413,-4399,-4382,
+-4361,-4333,-4301,-4266,-4232,-4201,-4173,-4144,-4111,-4074,-4032,-3988,-3944,-3899,-3851,-3799,-3742,-3682,-3622,-3561,-3502,
+-3442,-3380,-3319,-3260,-3209,-3167,-3132,-3099,-3062,-3016,-2963,-2905,-2848,-2793,-2741,-2687,-2631,-2574,-2519,-2469,-2426,
+-2386,-2344,-2298,-2248,-2197,-2152,-2117,-2089,-2065,-2037,-2000,-1954,-1903,-1853,-1809,-1774,-1747,-1726,-1708,-1691,-1671,
+-1648,-1619,-1587,-1553,-1520,-1490,-1460,-1426,-1381,-1318,-1240,-1151,-1060,-973,-893,-817,-740,-656,-564,-467,-371,
+-280,-195,-113,-30,58,156,265,382,505,633,760,884,1001,1109,1207,1296,1374,1440,1491,1525,1544,
+1555,1570,1601,1659,1742,1843,1949,2048,2133,2204,2269,2334,2406,2483,2564,2644,2719,2789,2857,2923,2991,
+3060,3132,3207,3282,3359,3434,3507,3577,3642,3703,3760,3814,3866,3917,3968,4023,4082,4143,4205,4264,4318,
+4366,4412,4459,4508,4561,4617,4673,4729,4785,4842,4902,4964,5027,5088,5147,5203,5257,5307,5356,5403,5451,
+5501,5556,5618,5684,5749,5808,5857,5896,5925,5947,5961,5969,5971,5968,5966,5969,5980,5996,6014,6026,6028,
+6023,6012,6002,5996,5995,5998,6002,6009,6020,6036,6055,6074,6087,6092,6092,6088,6087,6088,6092,6094,6093,
+6091,6092,6098,6109,6122,6130,6131,6124,6112,6101,6092,6083,6071,6053,6032,6015,6008,6015,6031,6048,6057,
+6054,6043,6035,6039,6057,6086,6114,6133,6138,6132,6122,6112,6103,6090,6067,6030,5985,5941,5909,5894,5896,
+5904,5907,5897,5871,5831,5788,5748,5718,5700,5693,5691,5694,5696,5698,5700,5704,5712,5728,5751,5781,5815,
+5848,5872,5885,5885,5873,5854,5834,5816,5804,5796,5790,5783,5773,5761,5747,5732,5717,5701,5683,5661,5635,
+5607,5580,5553,5526,5495,5458,5416,5373,5336,5308,5291,5280,5267,5241,5195,5130,5052,4969,4892,4825,4768,
+4716,4664,4610,4582,4530,4481,4439,4403,4372,4341,4307,4269,4228,4190,4161,4144,4138,4138,4139,4136,4127,
+4111,4089,4064,4039,4014,3993,3977,3968,3963,3959,3954,3945,3934,3924,3919,3920,3927,3936,3944,3950,3952,
+3952,3950,3948,3944,3937,3929,3917,3902,3883,3859,3828,3793,3754,3715,3678,3643,3609,3577,3545,3517,3493,
+3474,3457,3437,3409,3372,3324,3270,3215,3164,3119,3078,3041,3006,2974,2946,2925,2915,2914,2919,2926,2927,
+2920,2905,2885,2865,2851,2841,2835,2828,2815,2796,2774,2751,2732,2715,2698,2679,2659,2638,2620,2605,2591,
+2573,2549,2517,2482,2449,2422,2401,2379,2350,2308,2255,2197,2144,2101,2069,2044,2019,1991,1958,1922,1889,
+1858,1830,1801,1770,1738,1708,1686,1672,1666,1663,1657,1646,1629,1611,1596,1587,1583,1578,1568,1546,1512,
+1468,1419,1370,1326,1285,1247,1209,1172,1136,1104,1075,1049,1023,995,967,942,926,921,926,933,934,
+920,890,849,803,763,733,714,703,696,691,686,679,669,655,635,609,578,547,519,496,476,
+456,435,411,384,356,327,298,268,235,197,156,115,81,56,40,32,27,18,2,-21,-50,
+-82,-115,-150,-190,-237,-293,-356,-420,-481,-536,-586,-636,-691,-754,-825,-899,-967,-1022,-1060,-1079,-1083,
+-1076,-1063,-1045,-1023,-998,-972,-952,-946,-960,-997,-1053,-1121,-1190,-1253,-1309,-1360,-1414,-1476,-1545,-1614,-1677,
+-1726,-1761,-1787,-1813,-1846,-1890,-1943,-2001,-2058,-2110,-2158,-2200,-2240,-2276,-2309,-2337,-2362,-2384,-2407,-2434,-2468,
+-2508,-2552,-2593,-2626,-2649,-2660,-2664,-2669,-2679,-2700,-2731,-2765,-2798,-2826,-2849,-2870,-2897,-2931,-2972,-3017,-3061,
+-3101,-3137,-3172,-3209,-3248,-3288,-3325,-3358,-3388,-3418,-3452,-3491,-3530,-3567,-3597,-3620,-3639,-3660,-3685,-3714,-3743,
+-3768,-3787,-3800,-3808,-3816,-3825,-3836,-3846,-3855,-3861,-3866,-3870,-3872,-3874,-3875,-3875,-3875,-3875,-3876,-3881,-3890,
+-3902,-3918,-3935,-3950,-3959,-3959,-3953,-3942,-3931,-3926,-3927,-3936,-3952,-3970,-3985,-3992,-3983,-3954,-3902,-3834,-3758,
+-3688,-3633,-3603,-3596,-3610,-3639,-3680,-3730,-3786,-3845,-3899,-3939,-3960,-3962,-3950,-3932,-3917,-3907,-3901,-3896,-3887,
+-3873,-3856,-3836,-3818,-3801,-3785,-3766,-3743,-3715,-3684,-3650,-3617,-3590,-3571,-3565,-3571,-3588,-3612,-3640,-3671,-3705,
+-3743,-3785,-3831,-3876,-3918,-3950,-3971,-3977,-3971,-3956,-3934,-3912,-3890,-3869,-3847,-3819,-3783,-3736,-3681,-3621,-3560,
+-3504,-3457,-3420,-3397,-3387,-3388,-3394,-3397,-3386,-3357,-3310,-3255,-3207,-3181,-3181,-3207,-3244,-3277,-3294,-3287,-3261,
+-3220,-3171,-3115,-3047,-2962,-2858,-2740,-2619,-2511,-2426,-2369,-2332,-2304,-2273,-2235,-2189,-2143,-2103,-2068,-2035,-1997,
+-1952,-1899,-1844,-1795,-1752,-1713,-1671,-1621,-1561,-1495,-1430,-1371,-1321,-1277,-1235,-1189,-1141,-1090,-1039,-990,-943,
+-898,-856,-819,-788,-760,-731,-697,-655,-606,-554,-502,-451,-401,-347,-290,-229,-166,-103,-39,28,99,
+172,242,304,354,395,433,473,518,564,606,640,666,690,718,755,800,848,895,938,979,1021,
+1067,1116,1165,1210,1249,1282,1310,1336,1360,1382,1405,1432,1465,1506,1553,1599,1635,1656,1661,1654,1643,
+1633,1629,1630,1634,1640,1648,1657,1669,1682,1695,1708,1719,1731,1743,1757,1771,1781,1785,1778,1760,1730,
+1692,1652,1619,1600,1601,1623,1661,1702,1734,1745,1732,1697,1650,1603,1565,1540,1531,1534,1546,1563,1582,
+1603,1624,1647,1673,1702,1729,1754,1772,1784,1793,1802,1814,1831,1849,1866,1878,1886,1894,1904,1917,1933,
+1947,1959,1968,1977,1986,1997,2006,2013,2020,2030,2049,2080,2120,2158,2186,2198,2199,2200,2214,2249,2304,
+2368,2429,2477,2505,2515,2508,2486,2450,2405,2357,2311,2269,2221,2152,2046,1890,1685,1445,1188,933,689,
+463,259,91,-22,-65,-28,76,224,375,498,571,592,568,512,436,345,249,156,79,30,16,
+36,82,143,209,275,338,395,438,464,469,456,432,406,382,362,342,318,289,259,233,215,
+204,198,195,195,201,217,242,271,299,318,324,319,306,288,269,249,229,210,194,181,171,
+162,160,174,217,295,398,502,570,571,492,352,191,57,-11,-8,49,126,194,235,253,262,
+276,299,328,355,374,386,396,409,426,447,465,479,492,506,527,554,585,617,645,670,692,
+717,748,786,831,878,922,959,987,1009,1029,1054,1087,1128,1172,1216,1259,1304,1357,1424,1503,1587,
+1663,1720,1756,1772,1775,1772,1765,1751,1725,1682,1621,1546,1459,1363,1257,1145,1030,923,832,766,728,
+714,717,729,745,761,774,783,788,790,788,788,791,798,808,818,825,830,835,844,861,886,
+917,950,982,1011,1034,1054,1070,1082,1090,1094,1095,1093,1091,1089,1087,1082,1075,1066,1056,1049,1046,
+1048,1054,1060,1063,1063,1056,1043,1022,992,952,905,853,801,751,706,666,629,593,558,524,494,
+467,443,421,397,369,338,303,265,225,185,146,109,76,46,16,-14,-48,-84,-119,-150,-176,
+-196,-214,-235,-261,-290,-320,-347,-368,-383,-397,-413,-435,-463,-494,-523,-548,-568,-587,-614,-656,-716,
+-789,-862,-916,-934,-909,-846,-764,-689,-642,-637,-670,-726,-787,-838,-870,-883,-884,-882,-882,-891,-911,
+-940,-974,-1007,-1031,-1039,-1027,-1000,-965,-935,-921,-928,-953,-990,-1028,-1062,-1089,-1112,-1135,-1158,-1180,-1197,
+-1207,-1209,-1207,-1210,-1221,-1241,-1268,-1295,-1319,-1337,-1351,-1363,-1374,-1382,-1385,-1380,-1372,-1366,-1368,-1382,-1406,
+-1434,-1461,-1483,-1502,-1519,-1538,-1560,-1584,-1608,-1632,-1657,-1686,-1719,-1753,-1786,-1815,-1840,-1864,-1892,-1927,-1967,
+-2011,-2054,-2094,-2131,-2165,-2200,-2233,-2264,-2291,-2312,-2327,-2338,-2348,-2358,-2370,-2384,-2400,-2418,-2436,-2451,-2461,
+-2468,-2476,-2488,-2507,-2533,-2560,-2580,-2590,-2588,-2581,-2575,-2577,-2587,-2602,-2615,-2626,-2637,-2654,-2683,-2727,-2781,
+-2836,-2883,-2919,-2944,-2962,-2979,-2996,-3012,-3026,-3037,-3045,-3054,-3065,-3078,-3092,-3108,-3129,-3159,-3201,-3257,-3321,
+-3387,-3447,-3495,-3533,-3562,-3588,-3611,-3634,-3655,-3675,-3695,-3717,-3742,-3770,-3798,-3825,-3848,-3869,-3889,-3909,-3928,
+-3948,-3968,-3988,-4012,-4038,-4068,-4098,-4128,-4155,-4181,-4207,-4234,-4264,-4294,-4325,-4354,-4383,-4410,-4436,-4461,-4484,
+-4505,-4524,-4542,-4561,-4577,-4590,-4597,-4597,-4592,-4584,-4577,-4570,-4561,-4548,-4531,-4510,-4489,-4473,-4465,-4462,-4462,
+-4460,-4457,-4452,-4447,-4444,-4442,-4439,-4433,-4424,-4412,-4400,-4389,-4376,-4360,-4337,-4307,-4272,-4237,-4205,-4177,-4150,
+-4123,-4090,-4053,-4010,-3964,-3916,-3866,-3813,-3757,-3700,-3642,-3584,-3526,-3467,-3406,-3344,-3285,-3232,-3187,-3148,-3111,
+-3071,-3024,-2972,-2917,-2863,-2812,-2761,-2708,-2651,-2593,-2536,-2484,-2439,-2397,-2354,-2307,-2257,-2207,-2164,-2131,-2108,
+-2089,-2068,-2039,-2001,-1958,-1915,-1876,-1844,-1818,-1797,-1779,-1759,-1736,-1705,-1664,-1617,-1569,-1525,-1491,-1465,-1440,
+-1407,-1356,-1286,-1199,-1104,-1008,-915,-821,-723,-618,-506,-395,-292,-201,-121,-47,28,111,202,299,399,
+502,608,719,835,951,1063,1164,1252,1328,1392,1447,1493,1531,1564,1597,1638,1693,1765,1851,1942,2030,
+2109,2178,2239,2300,2364,2435,2512,2593,2675,2755,2830,2901,2967,3030,3094,3160,3232,3308,3386,3463,3535,
+3602,3663,3720,3776,3831,3886,3941,3997,4056,4116,4176,4234,4289,4339,4386,4433,4483,4537,4594,4653,4712,
+4769,4827,4884,4942,4999,5057,5114,5172,5229,5286,5340,5390,5438,5487,5539,5598,5662,5728,5789,5841,5883,
+5914,5936,5952,5961,5963,5963,5962,5966,5976,5992,6008,6019,6020,6013,6004,5997,5996,6002,6009,6017,6024,
+6031,6041,6054,6066,6073,6075,6072,6068,6068,6073,6081,6089,6093,6094,6094,6096,6103,6111,6116,6117,6111,
+6102,6094,6087,6080,6068,6050,6028,6006,5994,5995,6007,6024,6038,6043,6042,6042,6048,6065,6086,6104,6110,
+6103,6087,6071,6064,6067,6075,6077,6067,6042,6007,5971,5942,5922,5910,5898,5881,5856,5828,5801,5783,5778,
+5786,5802,5820,5836,5846,5850,5850,5852,5860,5875,5894,5914,5930,5935,5930,5916,5895,5875,5857,5843,5833,
+5824,5812,5796,5775,5751,5729,5710,5697,5688,5680,5669,5650,5626,5598,5572,5548,5526,5501,5469,5430,5385,
+5342,5305,5279,5261,5243,5217,5175,5115,5041,4960,4881,4809,4746,4689,4635,4582,4564,4519,4480,4447,4419,
+4393,4365,4333,4295,4254,4215,4183,4162,4152,4149,4147,4143,4135,4122,4105,4086,4066,4044,4022,4004,3993,
+3988,3988,3987,3984,3975,3964,3953,3945,3943,3945,3950,3954,3957,3959,3961,3962,3961,3958,3954,3949,3943,
+3934,3919,3896,3862,3820,3773,3726,3683,3643,3607,3573,3542,3514,3491,3472,3453,3431,3401,3360,3310,3254,
+3194,3136,3082,3032,2988,2951,2923,2907,2904,2915,2934,2957,2976,2985,2981,2967,2949,2931,2915,2901,2885,
+2863,2837,2809,2784,2763,2746,2729,2709,2685,2658,2635,2616,2603,2591,2573,2548,2515,2479,2444,2410,2377,
+2340,2296,2247,2198,2153,2115,2085,2059,2031,1998,1963,1926,1892,1860,1830,1798,1765,1733,1706,1687,1676,
+1673,1670,1664,1651,1633,1615,1602,1595,1591,1586,1571,1541,1495,1440,1381,1326,1279,1240,1204,1168,1131,
+1095,1062,1034,1011,989,966,942,918,899,890,888,889,886,871,844,807,768,734,707,690,680,
+674,672,669,665,655,636,609,574,538,505,479,459,444,427,405,377,345,313,282,253,225,
+195,163,128,93,62,38,21,9,0,-12,-31,-54,-83,-113,-145,-181,-223,-274,-335,-403,-471,
+-534,-588,-635,-681,-732,-792,-861,-933,-997,-1046,-1075,-1086,-1083,-1074,-1064,-1054,-1043,-1029,-1012,-996,-989,
+-999,-1032,-1086,-1154,-1227,-1296,-1359,-1419,-1480,-1546,-1615,-1682,-1739,-1783,-1814,-1838,-1866,-1904,-1955,-2013,-2074,
+-2130,-2180,-2222,-2259,-2292,-2321,-2348,-2370,-2390,-2409,-2430,-2455,-2486,-2521,-2559,-2594,-2624,-2647,-2664,-2678,-2693,
+-2713,-2740,-2772,-2805,-2834,-2855,-2871,-2887,-2909,-2941,-2982,-3027,-3070,-3107,-3140,-3171,-3207,-3247,-3291,-3334,-3372,
+-3407,-3441,-3478,-3520,-3564,-3606,-3640,-3666,-3685,-3703,-3725,-3750,-3776,-3798,-3815,-3826,-3835,-3847,-3862,-3879,-3897,
+-3912,-3923,-3930,-3934,-3935,-3934,-3931,-3926,-3921,-3917,-3918,-3923,-3933,-3947,-3964,-3983,-4000,-4013,-4020,-4020,-4014,
+-4006,-3999,-3996,-3997,-3999,-4002,-4001,-3995,-3982,-3958,-3923,-3875,-3818,-3760,-3707,-3667,-3648,-3651,-3677,-3722,-3782,
+-3849,-3913,-3966,-4001,-4015,-4012,-4000,-3986,-3977,-3974,-3975,-3974,-3965,-3947,-3921,-3891,-3862,-3837,-3816,-3798,-3779,
+-3754,-3721,-3681,-3638,-3598,-3569,-3553,-3552,-3564,-3584,-3609,-3634,-3660,-3687,-3716,-3749,-3784,-3822,-3859,-3891,-3915,
+-3927,-3926,-3914,-3897,-3878,-3860,-3843,-3823,-3796,-3758,-3709,-3650,-3586,-3524,-3470,-3431,-3411,-3409,-3421,-3434,-3435,
+-3413,-3368,-3310,-3258,-3228,-3231,-3260,-3300,-3330,-3334,-3307,-3257,-3197,-3137,-3080,-3022,-2955,-2871,-2773,-2668,-2570,
+-2490,-2431,-2390,-2357,-2323,-2280,-2230,-2177,-2128,-2088,-2054,-2021,-1983,-1937,-1885,-1832,-1785,-1744,-1706,-1663,-1610,
+-1547,-1480,-1416,-1361,-1317,-1278,-1239,-1194,-1143,-1087,-1030,-975,-924,-878,-838,-808,-786,-770,-753,-728,-691,
+-642,-586,-529,-473,-421,-368,-312,-252,-190,-126,-62,5,76,148,218,279,330,371,411,455,508,
+567,626,680,723,760,794,832,875,920,966,1009,1051,1093,1137,1184,1229,1270,1305,1335,1362,1388,
+1416,1445,1478,1515,1559,1608,1657,1700,1727,1733,1720,1694,1665,1642,1630,1631,1642,1660,1679,1697,1713,
+1725,1735,1743,1751,1762,1776,1791,1806,1816,1819,1813,1796,1769,1733,1694,1658,1635,1630,1646,1680,1719,
+1751,1764,1752,1717,1668,1616,1572,1541,1526,1526,1537,1555,1578,1601,1624,1646,1669,1691,1711,1728,1740,
+1749,1758,1772,1791,1815,1838,1857,1869,1874,1880,1889,1903,1922,1939,1953,1963,1971,1982,1995,2009,2021,
+2031,2042,2062,2092,2132,2175,2209,2230,2239,2243,2254,2279,2319,2368,2414,2451,2473,2481,2475,2456,2427,
+2389,2346,2300,2247,2176,2068,1908,1689,1419,1119,815,533,289,94,-45,-120,-124,-56,73,239,407,
+546,639,686,700,694,674,636,570,471,344,204,72,-31,-101,-134,-135,-108,-52,27,124,224,
+312,377,415,433,439,441,437,424,399,363,324,292,273,265,261,254,242,227,219,222,237,
+257,275,285,287,284,276,266,252,237,224,215,212,208,198,178,157,154,190,274,392,506,
+571,553,449,290,130,18,-17,17,91,168,220,243,249,253,267,292,321,347,369,388,408,
+430,452,468,479,486,494,511,537,569,604,635,662,687,712,744,783,828,877,923,964,997,
+1026,1057,1096,1146,1206,1271,1336,1400,1464,1531,1601,1670,1725,1753,1748,1711,1652,1588,1529,1478,1430,
+1374,1304,1217,1116,1007,897,788,684,587,505,445,412,406,422,451,487,524,559,592,622,650,
+676,702,730,761,798,836,872,905,931,953,975,998,1024,1050,1074,1091,1103,1107,1106,1102,1095,
+1087,1077,1067,1058,1050,1043,1034,1023,1008,991,973,958,948,943,942,942,942,941,938,933,923,
+907,880,844,800,754,712,674,642,611,578,541,503,466,433,405,381,356,330,299,265,228,
+189,148,107,65,24,-13,-48,-82,-115,-148,-181,-212,-239,-265,-289,-313,-338,-364,-389,-411,-431,
+-449,-467,-487,-509,-534,-561,-588,-612,-633,-650,-669,-696,-739,-801,-877,-950,-1001,-1010,-973,-897,-808,
+-732,-693,-699,-744,-810,-875,-924,-948,-952,-945,-939,-944,-963,-994,-1032,-1067,-1090,-1094,-1080,-1052,-1019,
+-991,-976,-978,-995,-1022,-1051,-1079,-1104,-1127,-1150,-1174,-1197,-1216,-1228,-1234,-1236,-1241,-1250,-1267,-1288,-1308,
+-1324,-1337,-1347,-1358,-1370,-1382,-1389,-1391,-1388,-1383,-1380,-1383,-1390,-1401,-1413,-1426,-1444,-1468,-1501,-1538,-1575,
+-1608,-1636,-1660,-1684,-1709,-1735,-1761,-1785,-1809,-1837,-1870,-1912,-1958,-2006,-2052,-2093,-2129,-2164,-2197,-2227,-2253,
+-2273,-2287,-2296,-2304,-2311,-2319,-2328,-2339,-2351,-2365,-2379,-2391,-2398,-2401,-2402,-2407,-2422,-2446,-2476,-2504,-2523,
+-2530,-2529,-2528,-2532,-2543,-2558,-2574,-2586,-2599,-2618,-2648,-2690,-2739,-2788,-2829,-2858,-2880,-2899,-2920,-2942,-2963,
+-2979,-2987,-2990,-2993,-2999,-3010,-3027,-3049,-3078,-3115,-3163,-3222,-3287,-3352,-3409,-3456,-3491,-3519,-3545,-3570,-3594,
+-3616,-3636,-3653,-3671,-3690,-3713,-3737,-3762,-3786,-3809,-3832,-3854,-3876,-3897,-3919,-3941,-3967,-3996,-4028,-4060,-4090,
+-4116,-4140,-4164,-4188,-4216,-4244,-4273,-4302,-4329,-4357,-4384,-4412,-4440,-4466,-4490,-4513,-4534,-4554,-4570,-4581,-4585,
+-4585,-4581,-4575,-4568,-4558,-4545,-4528,-4510,-4493,-4481,-4475,-4474,-4474,-4472,-4468,-4461,-4455,-4449,-4444,-4438,-4430,
+-4419,-4408,-4397,-4389,-4382,-4372,-4354,-4328,-4293,-4254,-4216,-4181,-4150,-4121,-4090,-4055,-4014,-3968,-3919,-3867,-3815,
+-3762,-3708,-3654,-3600,-3545,-3487,-3428,-3368,-3310,-3256,-3208,-3165,-3122,-3078,-3028,-2974,-2919,-2864,-2812,-2761,-2710,
+-2657,-2603,-2550,-2501,-2456,-2413,-2370,-2324,-2278,-2234,-2198,-2170,-2146,-2123,-2095,-2059,-2018,-1976,-1938,-1907,-1883,
+-1863,-1845,-1825,-1803,-1775,-1738,-1692,-1638,-1582,-1531,-1490,-1460,-1436,-1407,-1364,-1301,-1220,-1124,-1020,-909,-792,
+-668,-538,-410,-292,-190,-106,-34,36,111,195,283,369,447,521,599,687,791,907,1025,1134,1226,
+1300,1361,1417,1473,1529,1586,1641,1695,1751,1812,1879,1950,2022,2090,2154,2213,2271,2331,2396,2468,2547,
+2630,2714,2797,2874,2944,3006,3066,3127,3194,3268,3345,3421,3492,3556,3616,3673,3731,3790,3851,3911,3970,
+4029,4089,4150,4211,4270,4326,4379,4431,4483,4538,4595,4653,4710,4765,4820,4874,4929,4984,5038,5093,5150,
+5208,5266,5323,5377,5427,5477,5529,5587,5652,5718,5781,5835,5878,5909,5932,5948,5957,5960,5960,5958,5959,
+5967,5980,5994,6005,6010,6009,6007,6010,6018,6030,6043,6051,6053,6053,6053,6057,6062,6067,6068,6066,6064,
+6065,6071,6081,6092,6100,6105,6107,6110,6115,6121,6125,6125,6118,6108,6097,6087,6075,6061,6041,6018,5998,
+5987,5990,6006,6028,6048,6060,6062,6059,6057,6060,6067,6073,6071,6062,6047,6037,6038,6054,6078,6101,6111,
+6101,6071,6029,5982,5940,5907,5882,5864,5852,5846,5847,5859,5880,5909,5942,5971,5992,6003,6006,6004,6002,
+6004,6009,6013,6012,6000,5978,5947,5914,5883,5860,5843,5832,5822,5809,5793,5771,5747,5721,5699,5683,5673,
+5667,5661,5649,5630,5603,5574,5549,5530,5516,5503,5483,5453,5411,5364,5318,5278,5247,5220,5192,5153,5101,
+5035,4959,4880,4803,4732,4669,4613,4564,4577,4538,4505,4475,4447,4421,4394,4364,4329,4292,4255,4224,4201,
+4186,4178,4171,4164,4154,4144,4134,4123,4110,4092,4071,4050,4033,4023,4021,4023,4024,4020,4010,3998,3985,
+3977,3974,3975,3979,3985,3991,3995,3995,3992,3986,3980,3977,3978,3980,3978,3966,3939,3897,3845,3789,3736,
+3689,3646,3607,3569,3534,3502,3475,3453,3434,3414,3387,3350,3303,3245,3180,3114,3049,2992,2946,2914,2897,
+2898,2915,2943,2977,3009,3029,3035,3026,3007,2984,2959,2934,2909,2881,2853,2827,2805,2789,2776,2761,2741,
+2714,2683,2655,2633,2619,2608,2594,2572,2539,2498,2452,2406,2361,2318,2275,2233,2194,2157,2125,2095,2064,
+2032,1997,1961,1926,1892,1860,1827,1794,1762,1733,1711,1697,1689,1685,1679,1670,1655,1638,1623,1612,1605,
+1600,1589,1565,1527,1475,1415,1354,1300,1255,1219,1186,1153,1118,1081,1048,1019,996,976,956,933,910,
+891,877,869,863,853,837,812,781,749,719,693,671,652,637,625,618,611,602,586,560,528,
+494,463,440,424,411,394,371,341,307,272,238,208,179,151,123,93,64,36,10,-11,-30,
+-47,-64,-83,-104,-125,-148,-174,-204,-243,-292,-351,-416,-482,-542,-595,-644,-693,-749,-815,-887,-960,
+-1023,-1068,-1092,-1099,-1096,-1089,-1083,-1080,-1077,-1069,-1057,-1044,-1039,-1051,-1085,-1142,-1213,-1289,-1362,-1427,-1486,
+-1543,-1603,-1666,-1727,-1780,-1823,-1857,-1889,-1924,-1970,-2025,-2085,-2144,-2197,-2242,-2278,-2309,-2335,-2358,-2377,-2392,
+-2406,-2422,-2441,-2466,-2495,-2527,-2559,-2590,-2619,-2645,-2668,-2690,-2712,-2735,-2760,-2787,-2812,-2835,-2853,-2869,-2887,
+-2913,-2950,-2995,-3043,-3088,-3127,-3158,-3187,-3220,-3259,-3304,-3350,-3394,-3434,-3471,-3510,-3552,-3595,-3635,-3667,-3692,
+-3711,-3729,-3751,-3775,-3799,-3819,-3831,-3839,-3847,-3860,-3879,-3901,-3923,-3942,-3955,-3963,-3968,-3971,-3970,-3965,-3959,
+-3952,-3947,-3947,-3953,-3963,-3976,-3991,-4008,-4025,-4041,-4053,-4059,-4060,-4056,-4050,-4045,-4039,-4032,-4020,-4004,-3984,
+-3963,-3940,-3916,-3889,-3857,-3820,-3781,-3748,-3729,-3731,-3757,-3805,-3868,-3936,-3996,-4040,-4063,-4067,-4059,-4047,-4039,
+-4037,-4042,-4046,-4045,-4034,-4011,-3978,-3941,-3904,-3872,-3846,-3826,-3806,-3782,-3749,-3709,-3665,-3625,-3594,-3576,-3571,
+-3575,-3585,-3596,-3608,-3621,-3633,-3647,-3663,-3684,-3710,-3743,-3780,-3817,-3847,-3865,-3871,-3866,-3856,-3844,-3831,-3814,
+-3791,-3758,-3716,-3666,-3614,-3562,-3517,-3483,-3463,-3456,-3458,-3457,-3443,-3408,-3357,-3306,-3274,-3272,-3303,-3350,-3390,
+-3401,-3374,-3313,-3234,-3152,-3078,-3013,-2948,-2877,-2798,-2716,-2638,-2572,-2518,-2474,-2432,-2387,-2336,-2279,-2222,-2169,
+-2122,-2081,-2044,-2007,-1966,-1920,-1871,-1822,-1777,-1737,-1698,-1655,-1603,-1543,-1479,-1418,-1365,-1321,-1281,-1240,-1193,
+-1137,-1076,-1014,-954,-899,-852,-814,-787,-771,-759,-746,-724,-687,-636,-577,-514,-455,-400,-347,-293,-236,
+-178,-118,-56,9,80,154,226,291,344,387,425,466,516,573,632,688,736,777,816,857,901,
+948,996,1041,1086,1130,1176,1223,1268,1310,1347,1380,1411,1444,1478,1514,1554,1596,1641,1688,1732,1769,
+1788,1787,1766,1729,1689,1657,1639,1639,1653,1677,1703,1726,1743,1754,1762,1770,1779,1791,1804,1818,1829,
+1836,1837,1832,1821,1804,1781,1754,1725,1702,1691,1695,1713,1737,1757,1765,1753,1721,1677,1627,1581,1546,
+1527,1523,1533,1552,1575,1600,1623,1644,1665,1684,1703,1719,1732,1742,1753,1768,1788,1811,1832,1849,1858,
+1862,1868,1879,1898,1920,1941,1957,1967,1975,1986,2001,2019,2034,2047,2060,2078,2106,2145,2189,2228,2255,
+2269,2277,2286,2305,2335,2372,2407,2435,2450,2450,2437,2413,2381,2343,2302,2255,2192,2095,1946,1733,1458,
+1138,805,488,214,-1,-153,-236,-244,-173,-29,167,381,572,708,780,798,787,772,762,751,721,
+657,555,424,282,144,19,-86,-170,-223,-237,-204,-128,-21,98,212,309,387,446,488,510,507,
+481,440,396,364,347,339,329,305,268,226,191,174,174,186,199,211,222,236,253,270,277,
+270,253,235,224,223,222,210,186,162,162,208,302,420,516,544,484,353,196,69,10,24,
+87,162,218,243,247,246,254,275,302,328,350,369,388,409,428,444,454,461,472,492,524,
+564,606,645,676,703,729,760,798,844,894,946,995,1041,1086,1135,1191,1259,1335,1415,1492,1561,
+1621,1671,1707,1722,1705,1648,1548,1417,1274,1142,1034,953,891,835,773,700,619,536,456,384,320,
+268,232,216,224,254,302,359,421,482,542,598,651,699,742,781,819,858,899,942,983,1019,
+1049,1073,1094,1111,1126,1138,1145,1147,1144,1137,1128,1117,1105,1092,1078,1063,1048,1032,1016,998,978,
+957,935,915,899,886,876,866,855,842,829,818,810,804,796,782,758,726,689,653,622,595,
+569,540,506,468,431,397,368,343,317,288,255,219,182,144,105,65,24,-17,-58,-96,-132,
+-166,-198,-230,-263,-295,-327,-358,-388,-415,-438,-458,-475,-494,-515,-540,-566,-591,-614,-636,-658,-681,
+-702,-721,-736,-752,-777,-821,-886,-964,-1037,-1082,-1081,-1032,-948,-856,-783,-750,-761,-809,-875,-940,-989,
+-1015,-1023,-1021,-1019,-1027,-1047,-1077,-1110,-1136,-1149,-1146,-1129,-1106,-1082,-1065,-1057,-1058,-1066,-1080,-1096,-1115,
+-1135,-1155,-1176,-1194,-1210,-1222,-1232,-1243,-1255,-1271,-1290,-1307,-1320,-1327,-1329,-1331,-1337,-1348,-1363,-1379,-1392,
+-1400,-1404,-1405,-1403,-1399,-1395,-1391,-1393,-1405,-1431,-1469,-1515,-1560,-1599,-1629,-1651,-1670,-1688,-1707,-1726,-1748,
+-1774,-1809,-1852,-1902,-1955,-2005,-2048,-2085,-2118,-2151,-2183,-2212,-2234,-2249,-2257,-2261,-2266,-2272,-2280,-2288,-2295,
+-2303,-2311,-2320,-2328,-2333,-2334,-2332,-2334,-2346,-2368,-2398,-2430,-2454,-2469,-2476,-2482,-2491,-2506,-2525,-2542,-2556,
+-2568,-2584,-2607,-2640,-2679,-2718,-2751,-2776,-2798,-2821,-2847,-2877,-2904,-2923,-2933,-2937,-2940,-2948,-2965,-2990,-3022,
+-3058,-3100,-3148,-3203,-3261,-3319,-3371,-3415,-3449,-3477,-3501,-3524,-3546,-3565,-3583,-3600,-3617,-3636,-3658,-3681,-3705,
+-3729,-3753,-3778,-3803,-3827,-3849,-3871,-3894,-3920,-3950,-3984,-4018,-4049,-4076,-4099,-4121,-4143,-4168,-4196,-4224,-4251,
+-4278,-4305,-4333,-4363,-4393,-4423,-4451,-4477,-4502,-4524,-4544,-4561,-4572,-4578,-4578,-4574,-4566,-4555,-4541,-4526,-4511,
+-4498,-4489,-4484,-4482,-4479,-4475,-4469,-4462,-4455,-4450,-4446,-4442,-4436,-4427,-4418,-4408,-4400,-4393,-4385,-4370,-4347,
+-4314,-4274,-4230,-4189,-4151,-4117,-4085,-4051,-4011,-3966,-3916,-3863,-3810,-3757,-3705,-3651,-3597,-3541,-3484,-3427,-3369,
+-3314,-3260,-3211,-3163,-3117,-3069,-3019,-2967,-2913,-2860,-2807,-2756,-2706,-2656,-2607,-2558,-2512,-2466,-2422,-2378,-2336,
+-2299,-2267,-2241,-2218,-2192,-2156,-2110,-2055,-1998,-1947,-1909,-1882,-1865,-1851,-1836,-1816,-1791,-1761,-1726,-1685,-1639,
+-1590,-1542,-1499,-1460,-1423,-1381,-1328,-1261,-1178,-1082,-974,-856,-728,-593,-456,-327,-214,-123,-49,17,89,
+173,267,361,444,510,564,617,686,777,887,1004,1114,1204,1274,1330,1384,1444,1513,1588,1661,1730,
+1792,1849,1904,1960,2017,2075,2134,2193,2252,2313,2376,2443,2514,2591,2673,2756,2837,2913,2981,3043,3105,
+3170,3239,3311,3382,3448,3509,3567,3626,3687,3753,3820,3885,3949,4011,4073,4137,4201,4265,4325,4382,4437,
+4489,4542,4594,4647,4699,4750,4803,4857,4913,4968,5022,5075,5127,5181,5235,5290,5344,5397,5451,5508,5569,
+5636,5703,5765,5817,5858,5889,5914,5933,5948,5957,5960,5960,5960,5964,5973,5985,5997,6005,6009,6014,6022,
+6035,6050,6062,6069,6068,6063,6058,6057,6061,6067,6071,6074,6075,6078,6085,6095,6107,6117,6124,6130,6134,
+6140,6145,6147,6145,6136,6123,6107,6091,6074,6057,6038,6018,6002,5996,6002,6019,6043,6064,6076,6075,6065,
+6052,6043,6040,6041,6041,6038,6033,6030,6036,6052,6076,6099,6111,6105,6078,6033,5981,5931,5891,5866,5858,
+5864,5884,5912,5948,5986,6024,6056,6079,6091,6093,6087,6080,6074,6072,6071,6065,6049,6021,5982,5940,5900,
+5866,5841,5821,5804,5788,5770,5753,5735,5717,5699,5682,5667,5655,5647,5639,5628,5610,5585,5556,5531,5512,
+5503,5497,5488,5469,5436,5392,5342,5293,5250,5213,5179,5142,5096,5038,4970,4893,4816,4742,4677,4622,4577,
+4609,4573,4540,4509,4479,4451,4426,4401,4373,4342,4309,4276,4249,4229,4215,4203,4193,4183,4174,4168,4163,
+4157,4145,4127,4104,4083,4068,4062,4062,4065,4064,4058,4047,4034,4024,4019,4019,4023,4031,4040,4046,4047,
+4041,4030,4018,4011,4011,4016,4020,4015,3994,3957,3905,3848,3792,3742,3696,3654,3611,3569,3527,3488,3457,
+3433,3415,3397,3375,3342,3296,3236,3167,3097,3032,2978,2941,2923,2922,2938,2966,3000,3033,3056,3064,3056,
+3035,3006,2973,2940,2910,2881,2856,2836,2822,2811,2803,2791,2771,2745,2713,2683,2658,2639,2623,2605,2580,
+2545,2500,2449,2396,2345,2298,2256,2218,2182,2148,2113,2078,2043,2009,1977,1948,1922,1897,1870,1840,1809,
+1780,1756,1739,1728,1719,1710,1698,1684,1668,1654,1644,1635,1627,1614,1592,1559,1513,1459,1401,1345,1296,
+1255,1221,1190,1158,1124,1089,1056,1026,1001,979,957,934,911,890,873,860,849,836,819,798,775,
+751,728,703,676,645,614,588,568,554,544,531,513,489,463,437,416,399,383,365,341,312,
+279,243,208,174,142,112,84,57,30,3,-24,-52,-78,-103,-124,-143,-160,-176,-192,-211,-236,
+-269,-311,-362,-419,-476,-531,-583,-635,-692,-758,-832,-910,-984,-1047,-1090,-1115,-1123,-1123,-1120,-1118,-1116,
+-1113,-1106,-1097,-1090,-1094,-1116,-1161,-1224,-1299,-1375,-1444,-1503,-1554,-1602,-1654,-1708,-1763,-1814,-1859,-1899,-1938,
+-1982,-2032,-2089,-2147,-2203,-2250,-2289,-2320,-2344,-2363,-2378,-2389,-2398,-2408,-2422,-2443,-2469,-2499,-2532,-2564,-2595,
+-2625,-2655,-2684,-2709,-2732,-2750,-2767,-2783,-2801,-2820,-2842,-2865,-2892,-2925,-2966,-3014,-3065,-3113,-3154,-3188,-3218,
+-3249,-3286,-3328,-3373,-3417,-3458,-3497,-3536,-3576,-3616,-3653,-3685,-3709,-3730,-3751,-3775,-3802,-3827,-3846,-3857,-3864,
+-3871,-3883,-3901,-3922,-3943,-3960,-3972,-3983,-3992,-4000,-4005,-4006,-4002,-3996,-3991,-3990,-3994,-4001,-4010,-4020,-4032,
+-4048,-4066,-4082,-4094,-4099,-4098,-4091,-4082,-4071,-4057,-4038,-4012,-3984,-3957,-3936,-3921,-3911,-3900,-3884,-3863,-3842,
+-3828,-3830,-3854,-3897,-3953,-4011,-4058,-4087,-4098,-4093,-4082,-4072,-4066,-4067,-4069,-4068,-4062,-4048,-4027,-4000,-3972,
+-3945,-3921,-3902,-3884,-3864,-3840,-3808,-3770,-3731,-3697,-3671,-3655,-3646,-3639,-3631,-3624,-3617,-3613,-3612,-3613,-3616,
+-3622,-3634,-3655,-3687,-3724,-3762,-3794,-3815,-3827,-3832,-3830,-3823,-3810,-3789,-3761,-3729,-3695,-3661,-3627,-3593,-3561,
+-3534,-3513,-3497,-3481,-3459,-3429,-3393,-3364,-3353,-3365,-3393,-3422,-3430,-3406,-3349,-3271,-3188,-3112,-3045,-2982,-2916,
+-2844,-2770,-2703,-2648,-2603,-2563,-2519,-2467,-2409,-2349,-2293,-2243,-2195,-2148,-2099,-2049,-2000,-1954,-1910,-1868,-1827,
+-1785,-1743,-1700,-1655,-1605,-1549,-1490,-1429,-1373,-1321,-1274,-1226,-1173,-1114,-1050,-985,-924,-870,-824,-786,-757,
+-733,-712,-688,-656,-613,-558,-496,-432,-371,-314,-261,-209,-158,-106,-53,3,65,133,206,277,342,
+395,436,471,505,545,590,639,687,732,774,815,860,907,955,1002,1046,1089,1132,1177,1224,1270,
+1315,1356,1396,1436,1478,1522,1565,1607,1647,1685,1724,1763,1797,1819,1824,1808,1776,1737,1701,1679,1674,
+1685,1706,1728,1746,1760,1769,1777,1787,1799,1813,1827,1838,1846,1851,1852,1852,1848,1842,1830,1813,1793,
+1774,1759,1752,1753,1759,1766,1767,1757,1733,1697,1652,1607,1569,1543,1534,1540,1558,1580,1603,1624,1643,
+1663,1685,1708,1731,1750,1765,1777,1789,1802,1817,1831,1840,1846,1850,1858,1873,1896,1922,1945,1962,1974,
+1984,1998,2016,2037,2055,2070,2083,2100,2127,2164,2207,2248,2280,2299,2310,2318,2332,2354,2382,2412,2435,
+2448,2444,2421,2382,2330,2275,2220,2165,2097,1994,1832,1597,1295,949,599,282,27,-155,-264,-301,-267,
+-160,12,231,462,665,810,884,901,885,863,848,838,818,775,703,607,496,377,253,125,-3,
+-122,-215,-265,-262,-210,-120,-7,112,228,332,415,470,493,489,470,453,449,459,472,470,442,
+391,330,276,240,220,208,195,179,169,175,199,230,251,248,222,186,159,155,168,183,184,
+171,164,186,253,354,453,504,479,381,247,127,63,65,117,183,234,257,259,258,266,285,
+308,327,337,342,347,357,373,391,408,427,451,484,528,580,632,679,719,752,783,816,856,
+904,959,1017,1077,1136,1194,1252,1313,1377,1442,1503,1551,1584,1596,1588,1556,1496,1400,1267,1100,916,
+735,578,461,383,335,304,277,250,224,202,188,181,180,187,202,230,270,323,386,453,523,
+593,663,731,793,849,894,932,963,992,1020,1048,1074,1097,1117,1133,1147,1158,1165,1169,1168,1164,
+1157,1148,1138,1127,1113,1098,1081,1062,1043,1022,1001,977,953,930,907,887,868,851,835,816,794,
+770,746,724,709,700,694,686,671,647,618,587,557,531,505,478,446,412,379,349,323,299,
+273,243,208,170,132,94,57,20,-17,-56,-94,-132,-168,-203,-238,-272,-306,-340,-375,-411,-446,
+-478,-503,-522,-538,-555,-578,-607,-638,-667,-691,-710,-730,-751,-776,-799,-816,-826,-837,-860,-905,-972,
+-1049,-1117,-1154,-1146,-1093,-1011,-924,-856,-822,-829,-871,-934,-1000,-1055,-1088,-1100,-1097,-1093,-1097,-1115,-1143,
+-1176,-1203,-1219,-1221,-1211,-1194,-1174,-1155,-1137,-1124,-1117,-1118,-1126,-1138,-1152,-1165,-1176,-1186,-1197,-1210,-1229,
+-1252,-1278,-1303,-1322,-1333,-1336,-1333,-1330,-1331,-1340,-1355,-1373,-1390,-1405,-1417,-1424,-1427,-1425,-1418,-1408,-1402,
+-1403,-1417,-1444,-1478,-1513,-1546,-1575,-1601,-1627,-1653,-1679,-1703,-1728,-1756,-1793,-1839,-1892,-1946,-1993,-2031,-2061,
+-2089,-2119,-2150,-2180,-2202,-2216,-2221,-2223,-2226,-2232,-2240,-2248,-2254,-2257,-2260,-2264,-2268,-2270,-2271,-2271,-2275,
+-2288,-2309,-2338,-2368,-2392,-2407,-2416,-2424,-2436,-2455,-2477,-2498,-2514,-2527,-2539,-2556,-2580,-2610,-2642,-2673,-2700,
+-2725,-2751,-2779,-2806,-2830,-2848,-2861,-2870,-2883,-2905,-2936,-2974,-3016,-3060,-3104,-3149,-3196,-3246,-3294,-3339,-3378,
+-3409,-3434,-3453,-3469,-3483,-3496,-3510,-3527,-3548,-3572,-3599,-3625,-3650,-3674,-3700,-3727,-3755,-3782,-3807,-3829,-3849,
+-3872,-3899,-3931,-3964,-3996,-4023,-4046,-4068,-4090,-4117,-4146,-4177,-4207,-4236,-4264,-4292,-4322,-4352,-4382,-4412,-4440,
+-4466,-4491,-4513,-4533,-4549,-4559,-4563,-4560,-4552,-4539,-4524,-4509,-4497,-4489,-4485,-4483,-4483,-4482,-4479,-4475,-4469,
+-4463,-4459,-4456,-4454,-4453,-4449,-4443,-4434,-4422,-4410,-4396,-4380,-4358,-4328,-4290,-4246,-4201,-4159,-4121,-4087,-4052,
+-4012,-3965,-3914,-3859,-3803,-3748,-3692,-3635,-3577,-3517,-3459,-3402,-3348,-3296,-3245,-3195,-3146,-3098,-3051,-3005,-2960,
+-2914,-2867,-2819,-2769,-2719,-2668,-2618,-2567,-2518,-2471,-2425,-2383,-2346,-2316,-2294,-2274,-2252,-2219,-2170,-2105,-2030,
+-1957,-1896,-1852,-1825,-1809,-1795,-1777,-1752,-1721,-1688,-1656,-1625,-1595,-1564,-1529,-1489,-1442,-1386,-1322,-1247,-1164,
+-1075,-980,-879,-771,-654,-530,-407,-293,-196,-119,-53,11,88,182,288,393,484,554,608,659,721,
+803,903,1008,1104,1182,1242,1291,1343,1405,1480,1564,1651,1732,1804,1867,1922,1971,2019,2068,2119,2175,
+2236,2299,2363,2428,2492,2560,2633,2710,2790,2870,2946,3017,3085,3151,3218,3285,3350,3412,3471,3529,3590,
+3655,3723,3793,3861,3926,3989,4053,4117,4183,4247,4307,4363,4415,4464,4512,4560,4607,4654,4703,4755,4810,
+4869,4927,4983,5034,5081,5127,5174,5224,5277,5332,5390,5451,5516,5584,5649,5708,5757,5796,5828,5858,5887,
+5914,5937,5951,5958,5961,5964,5970,5980,5990,5998,6003,6007,6013,6023,6034,6044,6049,6048,6044,6040,6041,
+6046,6055,6064,6071,6078,6085,6094,6106,6118,6129,6137,6143,6148,6152,6156,6157,6153,6143,6129,6111,6093,
+6075,6059,6044,6029,6018,6012,6014,6025,6040,6055,6062,6060,6050,6037,6028,6025,6028,6033,6036,6034,6031,
+6029,6033,6040,6049,6051,6042,6019,5984,5942,5903,5873,5859,5864,5888,5926,5973,6023,6068,6102,6122,6127,
+6118,6102,6084,6070,6065,6068,6071,6068,6053,6023,5982,5938,5899,5866,5839,5815,5791,5767,5746,5729,5717,
+5705,5691,5672,5650,5630,5617,5610,5605,5595,5577,5551,5523,5499,5485,5480,5478,5471,5450,5415,5369,5317,
+5265,5218,5176,5135,5092,5041,4981,4912,4838,4767,4704,4652,4609,4636,4600,4565,4532,4501,4474,4452,4433,
+4413,4387,4355,4321,4291,4267,4251,4239,4229,4219,4210,4204,4200,4197,4190,4178,4161,4143,4129,4122,4123,
+4126,4127,4125,4117,4107,4097,4089,4085,4085,4088,4094,4100,4101,4096,4084,4070,4057,4049,4047,4045,4038,
+4018,3985,3940,3889,3838,3791,3748,3707,3666,3622,3577,3532,3490,3455,3428,3408,3390,3367,3333,3285,3224,
+3158,3094,3041,3004,2984,2981,2992,3013,3038,3062,3079,3083,3072,3048,3014,2976,2939,2905,2878,2857,2843,
+2834,2827,2820,2808,2790,2765,2736,2707,2680,2657,2635,2611,2582,2546,2501,2451,2399,2346,2297,2252,2210,
+2169,2127,2083,2039,2000,1967,1945,1933,1925,1917,1904,1884,1860,1835,1814,1799,1786,1772,1754,1734,1714,
+1697,1685,1676,1667,1651,1626,1590,1545,1495,1443,1392,1346,1306,1270,1238,1208,1177,1145,1112,1080,1049,
+1021,995,970,946,922,900,881,864,847,829,810,791,774,758,741,721,694,659,619,580,546,
+521,503,488,474,457,438,417,397,377,358,338,314,288,257,223,186,148,110,75,45,17,
+-9,-37,-68,-101,-133,-163,-188,-209,-226,-242,-258,-276,-298,-326,-361,-402,-447,-494,-542,-591,-645,
+-707,-779,-858,-939,-1015,-1077,-1122,-1149,-1162,-1165,-1164,-1159,-1152,-1143,-1132,-1124,-1126,-1143,-1179,-1236,-1306,
+-1382,-1453,-1515,-1567,-1613,-1658,-1707,-1760,-1813,-1863,-1909,-1951,-1993,-2040,-2092,-2148,-2203,-2253,-2295,-2327,-2350,
+-2366,-2377,-2383,-2387,-2391,-2399,-2414,-2437,-2467,-2500,-2535,-2570,-2604,-2638,-2672,-2704,-2731,-2752,-2765,-2774,-2783,
+-2797,-2818,-2845,-2877,-2911,-2947,-2988,-3032,-3080,-3127,-3171,-3208,-3240,-3271,-3305,-3344,-3386,-3430,-3472,-3514,-3554,
+-3596,-3637,-3675,-3707,-3733,-3755,-3777,-3802,-3831,-3858,-3880,-3896,-3906,-3915,-3925,-3939,-3953,-3965,-3974,-3982,-3993,
+-4007,-4023,-4038,-4047,-4049,-4046,-4044,-4044,-4047,-4051,-4056,-4062,-4072,-4088,-4109,-4133,-4152,-4162,-4162,-4153,-4138,
+-4119,-4098,-4073,-4044,-4013,-3984,-3964,-3953,-3949,-3949,-3945,-3935,-3923,-3914,-3916,-3933,-3966,-4006,-4045,-4073,-4086,
+-4084,-4075,-4064,-4058,-4056,-4056,-4053,-4044,-4030,-4014,-3999,-3988,-3981,-3976,-3973,-3970,-3964,-3953,-3936,-3912,-3883,
+-3853,-3825,-3802,-3783,-3763,-3740,-3712,-3684,-3660,-3643,-3634,-3629,-3626,-3624,-3623,-3629,-3644,-3667,-3696,-3725,-3751,
+-3772,-3788,-3799,-3803,-3798,-3786,-3769,-3751,-3733,-3714,-3691,-3661,-3625,-3588,-3558,-3540,-3533,-3533,-3532,-3528,-3521,
+-3515,-3509,-3497,-3471,-3422,-3352,-3270,-3190,-3123,-3071,-3025,-2975,-2914,-2844,-2776,-2718,-2673,-2635,-2592,-2539,-2477,
+-2414,-2361,-2318,-2281,-2239,-2184,-2117,-2046,-1983,-1935,-1899,-1870,-1837,-1797,-1750,-1700,-1650,-1599,-1546,-1488,-1426,
+-1364,-1303,-1247,-1191,-1134,-1073,-1009,-947,-891,-843,-802,-765,-727,-685,-639,-589,-535,-478,-419,-357,-295,
+-235,-178,-125,-75,-27,19,66,116,171,230,292,352,405,450,487,519,550,586,625,668,711,
+755,800,845,892,939,984,1025,1063,1100,1139,1180,1225,1271,1316,1360,1405,1454,1506,1560,1610,1653,
+1688,1718,1747,1778,1811,1838,1852,1848,1824,1789,1753,1728,1718,1723,1738,1753,1767,1776,1785,1795,1808,
+1822,1836,1847,1857,1865,1873,1881,1886,1887,1881,1869,1854,1836,1819,1805,1793,1785,1780,1778,1777,1771,
+1757,1730,1692,1648,1605,1573,1558,1560,1574,1593,1613,1629,1646,1665,1690,1719,1749,1775,1795,1807,1816,
+1823,1830,1836,1840,1843,1846,1855,1871,1894,1919,1943,1961,1976,1992,2010,2033,2057,2078,2095,2110,2128,
+2154,2189,2230,2270,2303,2325,2337,2345,2353,2366,2385,2409,2434,2451,2450,2421,2360,2271,2171,2075,1995,
+1921,1831,1692,1480,1192,853,506,196,-39,-187,-250,-241,-171,-49,117,314,519,703,844,929,966,
+970,960,946,928,899,852,787,711,630,546,456,352,229,94,-40,-154,-232,-263,-248,-193,-110,
+-11,89,179,248,295,325,353,396,461,541,618,670,682,653,597,532,471,414,355,291,226,
+174,149,157,184,208,208,179,134,97,87,105,139,167,180,189,214,271,358,445,494,477,
+393,274,164,103,101,142,195,232,244,241,238,249,273,299,317,322,318,317,326,347,378,
+413,451,491,537,589,646,703,755,801,842,880,919,964,1015,1072,1133,1195,1252,1301,1341,1371,
+1393,1406,1406,1390,1353,1293,1213,1113,994,855,700,534,370,225,112,39,3,-4,4,21,44,
+75,115,164,217,272,327,381,436,493,551,610,667,722,778,835,891,943,987,1022,1047,1066,
+1081,1093,1104,1113,1120,1128,1136,1146,1154,1161,1163,1163,1160,1155,1148,1137,1123,1105,1086,1066,1047,
+1028,1008,987,964,940,917,894,871,849,826,803,779,753,727,699,673,651,634,621,609,594,
+574,549,521,494,467,441,412,381,347,315,286,262,240,216,188,155,119,83,48,12,-22,
+-58,-95,-131,-168,-204,-241,-278,-315,-350,-383,-417,-453,-490,-527,-559,-583,-601,-618,-640,-668,-700,
+-731,-757,-778,-797,-820,-848,-876,-898,-910,-916,-924,-946,-990,-1053,-1123,-1182,-1214,-1210,-1169,-1102,-1025,
+-957,-917,-915,-949,-1008,-1074,-1128,-1158,-1164,-1158,-1153,-1160,-1183,-1218,-1253,-1282,-1299,-1303,-1296,-1278,-1252,
+-1221,-1188,-1160,-1140,-1132,-1133,-1139,-1147,-1155,-1164,-1175,-1191,-1214,-1243,-1273,-1302,-1325,-1340,-1346,-1347,-1347,
+-1350,-1357,-1367,-1379,-1391,-1402,-1414,-1427,-1441,-1452,-1456,-1453,-1443,-1432,-1423,-1419,-1421,-1428,-1442,-1465,-1500,
+-1544,-1595,-1643,-1685,-1719,-1749,-1781,-1821,-1867,-1915,-1959,-1994,-2023,-2049,-2077,-2108,-2138,-2163,-2178,-2185,-2187,
+-2188,-2191,-2196,-2201,-2204,-2204,-2202,-2201,-2201,-2202,-2203,-2207,-2216,-2233,-2258,-2286,-2312,-2332,-2343,-2349,-2354,
+-2364,-2382,-2405,-2428,-2448,-2464,-2477,-2492,-2512,-2540,-2572,-2608,-2642,-2673,-2700,-2721,-2738,-2752,-2765,-2781,-2803,
+-2835,-2876,-2924,-2975,-3025,-3071,-3114,-3154,-3194,-3235,-3274,-3311,-3343,-3369,-3389,-3403,-3413,-3419,-3425,-3434,-3450,
+-3472,-3499,-3528,-3556,-3583,-3608,-3636,-3667,-3700,-3733,-3763,-3788,-3809,-3830,-3853,-3880,-3910,-3939,-3966,-3991,-4014,
+-4040,-4070,-4103,-4137,-4172,-4203,-4233,-4261,-4288,-4317,-4346,-4375,-4402,-4428,-4452,-4473,-4492,-4508,-4520,-4525,-4524,
+-4516,-4503,-4488,-4474,-4465,-4462,-4463,-4468,-4475,-4481,-4486,-4488,-4487,-4483,-4477,-4473,-4471,-4471,-4472,-4470,-4462,
+-4448,-4430,-4409,-4388,-4364,-4335,-4298,-4255,-4209,-4166,-4126,-4090,-4054,-4013,-3964,-3909,-3851,-3792,-3734,-3675,-3615,
+-3552,-3489,-3428,-3373,-3323,-3275,-3228,-3180,-3130,-3082,-3038,-2997,-2960,-2923,-2884,-2842,-2795,-2745,-2692,-2640,-2588,
+-2538,-2492,-2448,-2409,-2375,-2346,-2321,-2295,-2263,-2218,-2158,-2083,-2001,-1923,-1858,-1812,-1781,-1760,-1739,-1711,-1674,
+-1631,-1589,-1553,-1527,-1508,-1492,-1470,-1436,-1385,-1317,-1234,-1141,-1046,-954,-867,-782,-696,-603,-504,-403,-308,
+-225,-155,-92,-26,52,148,255,363,460,543,613,680,755,840,932,1022,1100,1162,1212,1257,1309,
+1373,1452,1540,1631,1721,1804,1878,1940,1992,2036,2075,2115,2162,2218,2280,2346,2411,2473,2536,2601,2671,
+2748,2828,2909,2987,3062,3134,3202,3268,3331,3392,3451,3509,3570,3633,3697,3761,3824,3884,3944,4005,4068,
+4132,4193,4250,4302,4352,4400,4449,4496,4543,4589,4636,4686,4741,4801,4860,4916,4966,5010,5051,5093,5139,
+5190,5244,5301,5362,5426,5491,5553,5608,5654,5693,5728,5764,5803,5843,5878,5905,5922,5932,5939,5948,5959,
+5969,5977,5981,5983,5986,5991,5999,6006,6010,6011,6010,6010,6013,6020,6030,6041,6052,6063,6075,6087,6101,
+6114,6125,6134,6140,6145,6149,6152,6153,6149,6141,6128,6113,6096,6081,6067,6055,6042,6029,6018,6011,6010,
+6013,6020,6026,6029,6028,6026,6026,6028,6032,6034,6032,6022,6008,5992,5979,5969,5963,5957,5948,5934,5916,
+5896,5877,5864,5864,5879,5912,5960,6017,6073,6118,6144,6149,6134,6104,6070,6042,6027,6028,6041,6058,6067,
+6059,6033,5994,5952,5912,5881,5854,5829,5803,5777,5753,5735,5721,5707,5686,5659,5628,5602,5587,5586,5590,
+5589,5576,5547,5511,5478,5458,5453,5458,5463,5457,5433,5393,5339,5280,5223,5170,5124,5080,5033,4980,4920,
+4854,4788,4729,4678,4636,4648,4613,4580,4547,4516,4490,4469,4452,4433,4409,4378,4346,4317,4295,4283,4275,
+4268,4260,4250,4242,4237,4234,4233,4228,4220,4212,4206,4205,4208,4214,4219,4221,4218,4211,4202,4190,4178,
+4166,4158,4155,4155,4157,4156,4149,4137,4121,4104,4089,4073,4055,4031,4000,3963,3922,3881,3840,3801,3765,
+3730,3695,3657,3616,3571,3527,3486,3452,3425,3400,3370,3331,3280,3222,3165,3117,3082,3064,3059,3065,3076,
+3090,3102,3108,3104,3089,3061,3024,2982,2941,2906,2879,2861,2850,2844,2839,2830,2815,2795,2771,2745,2719,
+2695,2672,2648,2623,2595,2562,2522,2477,2427,2373,2319,2267,2215,2163,2110,2056,2004,1962,1935,1926,1934,
+1949,1963,1967,1959,1942,1920,1899,1880,1863,1842,1818,1790,1764,1743,1728,1715,1698,1671,1632,1582,1527,
+1473,1424,1383,1347,1314,1284,1255,1227,1199,1171,1141,1111,1079,1049,1020,993,968,945,922,900,877,
+853,828,805,783,764,750,737,722,702,673,636,594,552,513,482,457,437,420,404,386,366,
+344,322,300,278,253,225,192,154,112,70,32,-1,-31,-61,-92,-127,-164,-200,-233,-261,-286,
+-308,-329,-350,-372,-396,-422,-450,-482,-516,-553,-593,-637,-689,-750,-822,-902,-984,-1060,-1124,-1172,-1202,
+-1217,-1220,-1215,-1202,-1185,-1167,-1152,-1146,-1155,-1183,-1232,-1296,-1368,-1440,-1503,-1558,-1607,-1655,-1707,-1764,-1822,
+-1879,-1930,-1974,-2015,-2058,-2105,-2157,-2211,-2262,-2306,-2340,-2364,-2379,-2386,-2388,-2386,-2385,-2387,-2396,-2414,-2441,
+-2474,-2510,-2546,-2581,-2616,-2651,-2686,-2719,-2747,-2767,-2779,-2787,-2794,-2809,-2832,-2864,-2900,-2937,-2973,-3009,-3047,
+-3088,-3132,-3174,-3213,-3246,-3277,-3310,-3347,-3389,-3434,-3480,-3525,-3570,-3615,-3659,-3700,-3734,-3760,-3780,-3799,-3821,
+-3848,-3878,-3907,-3930,-3948,-3962,-3972,-3979,-3984,-3984,-3984,-3987,-3997,-4015,-4037,-4059,-4074,-4083,-4087,-4091,-4097,
+-4105,-4113,-4121,-4128,-4140,-4158,-4184,-4212,-4235,-4246,-4243,-4228,-4205,-4179,-4151,-4123,-4094,-4065,-4039,-4019,-4006,
+-3998,-3992,-3985,-3975,-3964,-3957,-3958,-3970,-3991,-4016,-4036,-4047,-4047,-4039,-4030,-4027,-4030,-4038,-4044,-4043,-4032,
+-4016,-4000,-3989,-3987,-3990,-3996,-4003,-4009,-4015,-4018,-4018,-4013,-4000,-3981,-3957,-3931,-3902,-3868,-3829,-3786,-3745,
+-3711,-3689,-3677,-3672,-3668,-3661,-3652,-3642,-3637,-3638,-3646,-3659,-3676,-3697,-3719,-3739,-3754,-3763,-3766,-3765,-3763,
+-3760,-3750,-3728,-3694,-3652,-3615,-3594,-3598,-3625,-3664,-3700,-3721,-3721,-3698,-3653,-3587,-3501,-3401,-3297,-3203,-3130,
+-3082,-3051,-3021,-2980,-2924,-2859,-2796,-2744,-2700,-2656,-2601,-2536,-2466,-2406,-2363,-2336,-2309,-2267,-2201,-2116,-2030,
+-1959,-1913,-1887,-1868,-1840,-1796,-1740,-1680,-1622,-1569,-1517,-1461,-1399,-1334,-1271,-1211,-1154,-1095,-1033,-969,-910,
+-861,-823,-790,-753,-705,-642,-565,-484,-405,-333,-269,-210,-153,-96,-39,15,67,116,161,206,251,
+298,344,389,429,465,498,529,562,598,637,678,720,764,809,856,904,951,995,1034,1069,1102,
+1135,1172,1212,1255,1297,1339,1382,1429,1483,1543,1604,1661,1706,1739,1762,1782,1806,1833,1859,1875,1872,
+1851,1816,1780,1753,1742,1746,1759,1775,1790,1803,1817,1833,1848,1861,1870,1875,1881,1892,1907,1922,1932,
+1931,1918,1896,1872,1851,1835,1823,1812,1801,1790,1783,1780,1779,1773,1755,1723,1681,1637,1602,1583,1583,
+1595,1612,1628,1641,1655,1673,1699,1729,1761,1788,1809,1823,1833,1842,1850,1856,1859,1860,1862,1868,1881,
+1899,1921,1941,1960,1978,1998,2021,2047,2073,2096,2115,2134,2155,2183,2216,2252,2287,2315,2336,2350,2358,
+2362,2365,2373,2390,2415,2440,2445,2410,2321,2180,2009,1841,1702,1600,1515,1409,1247,1012,719,410,137,
+-56,-153,-158,-94,14,148,295,447,596,731,841,920,969,996,1006,1005,990,958,907,843,772,
+704,641,579,508,418,306,178,46,-71,-163,-221,-242,-233,-201,-159,-117,-81,-49,-11,47,142,
+277,443,615,763,862,901,883,824,741,646,545,445,353,280,236,224,234,245,240,214,174,
+140,128,142,173,207,235,264,304,365,441,506,528,487,389,265,157,98,94,127,167,188,
+186,173,170,187,224,268,304,327,342,360,390,434,487,541,592,637,681,726,774,824,873,
+919,960,999,1036,1076,1120,1169,1218,1262,1291,1300,1286,1251,1201,1140,1070,989,895,788,670,543,
+414,287,166,57,-30,-90,-117,-113,-84,-40,10,64,123,188,262,340,420,497,568,635,697,
+755,807,852,891,924,955,985,1015,1042,1064,1080,1091,1099,1106,1110,1111,1111,1110,1111,1115,1123,
+1131,1137,1139,1138,1135,1129,1122,1109,1092,1071,1050,1031,1014,999,983,963,941,917,895,874,853,
+831,807,781,756,733,710,686,660,633,607,582,560,537,514,488,463,437,412,386,357,325,
+290,257,226,200,177,153,127,98,68,37,5,-28,-64,-103,-141,-178,-213,-249,-287,-326,-365,
+-400,-431,-462,-495,-532,-573,-611,-642,-665,-683,-703,-727,-758,-790,-818,-842,-862,-885,-912,-942,-968,
+-987,-996,-1001,-1010,-1031,-1069,-1121,-1179,-1235,-1274,-1288,-1268,-1217,-1146,-1076,-1028,-1017,-1045,-1099,-1157,-1201,
+-1222,-1224,-1220,-1222,-1236,-1261,-1291,-1320,-1342,-1358,-1364,-1358,-1337,-1302,-1257,-1209,-1168,-1140,-1127,-1126,-1133,
+-1145,-1160,-1177,-1197,-1220,-1245,-1271,-1296,-1319,-1338,-1352,-1361,-1369,-1375,-1381,-1386,-1389,-1390,-1394,-1402,-1418,
+-1441,-1465,-1484,-1491,-1483,-1461,-1430,-1396,-1362,-1337,-1327,-1338,-1375,-1435,-1508,-1582,-1645,-1692,-1725,-1753,-1783,
+-1821,-1865,-1909,-1948,-1982,-2011,-2039,-2068,-2096,-2120,-2138,-2147,-2151,-2151,-2150,-2147,-2143,-2138,-2134,-2130,-2128,
+-2126,-2125,-2127,-2134,-2148,-2171,-2200,-2230,-2255,-2272,-2279,-2282,-2285,-2292,-2306,-2327,-2349,-2371,-2389,-2405,-2421,
+-2441,-2468,-2503,-2543,-2584,-2620,-2645,-2660,-2667,-2674,-2688,-2716,-2759,-2815,-2878,-2939,-2995,-3043,-3084,-3120,-3155,
+-3189,-3222,-3253,-3281,-3306,-3327,-3344,-3357,-3366,-3371,-3374,-3378,-3387,-3402,-3424,-3449,-3475,-3501,-3529,-3559,-3594,
+-3634,-3674,-3711,-3742,-3768,-3791,-3813,-3836,-3863,-3890,-3918,-3946,-3973,-4003,-4035,-4069,-4105,-4141,-4174,-4204,-4232,
+-4258,-4284,-4311,-4339,-4366,-4390,-4411,-4427,-4440,-4451,-4460,-4466,-4467,-4462,-4452,-4441,-4431,-4425,-4425,-4430,-4439,
+-4450,-4462,-4474,-4484,-4490,-4489,-4484,-4476,-4471,-4471,-4474,-4477,-4474,-4463,-4444,-4421,-4395,-4367,-4334,-4296,-4251,
+-4205,-4160,-4121,-4086,-4050,-4008,-3958,-3900,-3839,-3778,-3719,-3659,-3596,-3532,-3468,-3409,-3357,-3311,-3268,-3225,-3178,
+-3130,-3082,-3038,-2999,-2964,-2930,-2895,-2856,-2813,-2766,-2718,-2670,-2624,-2582,-2542,-2504,-2467,-2430,-2391,-2350,-2304,
+-2252,-2192,-2124,-2049,-1973,-1903,-1845,-1801,-1769,-1741,-1711,-1672,-1624,-1570,-1518,-1475,-1444,-1426,-1412,-1394,-1363,
+-1311,-1239,-1149,-1053,-958,-873,-798,-731,-665,-593,-513,-429,-344,-265,-193,-124,-54,24,111,205,299,
+388,473,556,643,737,836,931,1017,1086,1142,1190,1238,1295,1362,1440,1526,1616,1707,1797,1881,1955,
+2014,2060,2094,2125,2160,2204,2258,2320,2385,2450,2514,2578,2646,2719,2796,2876,2956,3035,3110,3182,3251,
+3315,3377,3436,3493,3550,3606,3661,3714,3766,3818,3872,3929,3989,4049,4108,4164,4218,4273,4328,4385,4440,
+4492,4541,4588,4636,4689,4744,4800,4853,4900,4943,4983,5024,5069,5117,5167,5219,5274,5331,5391,5448,5501,
+5546,5586,5623,5661,5703,5747,5786,5819,5842,5860,5876,5894,5913,5930,5944,5953,5959,5965,5972,5980,5987,
+5992,5994,5995,5998,6002,6011,6021,6032,6044,6056,6068,6081,6093,6105,6115,6124,6133,6141,6147,6152,6154,
+6152,6147,6139,6128,6114,6100,6084,6068,6050,6032,6014,5999,5989,5985,5988,5994,6003,6013,6023,6032,6037,
+6036,6027,6009,5984,5955,5927,5904,5887,5876,5868,5864,5862,5861,5860,5859,5861,5870,5891,5929,5982,6042,
+6099,6140,6157,6149,6120,6079,6039,6009,5997,6005,6026,6052,6068,6066,6043,6004,5959,5919,5888,5866,5846,
+5824,5800,5774,5751,5729,5706,5678,5646,5614,5591,5582,5585,5591,5588,5567,5529,5482,5442,5420,5420,5435,
+5451,5457,5442,5405,5349,5283,5215,5153,5099,5052,5008,4962,4910,4852,4792,4737,4689,4648,4651,4621,4593,
+4564,4534,4507,4483,4462,4441,4417,4390,4362,4338,4323,4315,4311,4306,4298,4288,4279,4274,4274,4277,4280,
+4281,4282,4284,4289,4297,4305,4313,4318,4320,4320,4314,4303,4287,4267,4248,4235,4230,4231,4234,4233,4225,
+4209,4186,4157,4127,4096,4065,4036,4007,3977,3944,3909,3873,3839,3810,3786,3762,3734,3697,3651,3601,3553,
+3511,3475,3441,3402,3355,3302,3248,3201,3167,3148,3140,3139,3141,3144,3144,3141,3130,3111,3082,3044,3002,
+2959,2921,2893,2876,2867,2861,2853,2840,2820,2796,2770,2747,2726,2708,2690,2672,2651,2627,2599,2565,2524,
+2475,2419,2359,2298,2237,2176,2114,2054,1999,1959,1940,1946,1971,2007,2040,2060,2060,2045,2020,1992,1966,
+1942,1917,1889,1859,1829,1803,1780,1759,1731,1693,1642,1583,1522,1466,1419,1382,1351,1322,1294,1266,1240,
+1215,1191,1164,1135,1103,1071,1042,1015,992,969,944,917,887,857,826,797,771,748,730,715,703,
+690,673,648,614,572,525,480,440,409,384,364,343,320,294,267,241,217,193,167,136,99,
+58,17,-21,-56,-90,-124,-161,-200,-239,-277,-311,-342,-371,-399,-427,-455,-482,-509,-534,-560,-586,
+-613,-643,-675,-714,-761,-820,-889,-967,-1049,-1126,-1192,-1242,-1273,-1286,-1283,-1268,-1245,-1219,-1193,-1175,-1171,
+-1186,-1222,-1277,-1345,-1415,-1480,-1535,-1583,-1629,-1681,-1742,-1809,-1877,-1939,-1993,-2038,-2081,-2125,-2174,-2225,-2277,
+-2323,-2360,-2387,-2403,-2411,-2412,-2408,-2402,-2400,-2404,-2416,-2439,-2469,-2503,-2538,-2572,-2605,-2637,-2669,-2702,-2734,
+-2761,-2782,-2796,-2806,-2817,-2834,-2860,-2893,-2930,-2967,-3000,-3032,-3066,-3104,-3146,-3188,-3227,-3261,-3291,-3322,-3357,
+-3399,-3444,-3490,-3535,-3580,-3626,-3671,-3713,-3749,-3777,-3796,-3813,-3832,-3857,-3888,-3922,-3953,-3978,-3995,-4005,-4009,
+-4007,-4003,-4000,-4002,-4013,-4032,-4056,-4079,-4098,-4111,-4123,-4136,-4153,-4173,-4191,-4207,-4222,-4239,-4259,-4283,-4305,
+-4319,-4320,-4307,-4284,-4254,-4224,-4196,-4170,-4147,-4126,-4106,-4088,-4069,-4048,-4026,-4002,-3980,-3962,-3952,-3950,-3958,
+-3971,-3985,-3996,-4001,-4000,-3996,-3997,-4005,-4023,-4045,-4064,-4074,-4073,-4065,-4054,-4046,-4040,-4034,-4026,-4017,-4010,
+-4011,-4019,-4034,-4047,-4053,-4045,-4025,-3994,-3957,-3916,-3872,-3828,-3786,-3752,-3727,-3711,-3702,-3694,-3684,-3670,-3652,
+-3633,-3618,-3609,-3610,-3621,-3641,-3667,-3693,-3714,-3731,-3744,-3757,-3770,-3780,-3779,-3762,-3730,-3693,-3666,-3664,-3693,
+-3745,-3803,-3848,-3865,-3846,-3795,-3718,-3620,-3510,-3395,-3288,-3200,-3137,-3096,-3068,-3037,-2995,-2939,-2877,-2820,-2771,
+-2725,-2672,-2605,-2529,-2454,-2397,-2361,-2341,-2319,-2275,-2205,-2116,-2028,-1959,-1917,-1892,-1870,-1833,-1779,-1713,-1645,
+-1584,-1530,-1478,-1424,-1365,-1303,-1244,-1188,-1132,-1071,-1005,-937,-876,-829,-797,-770,-735,-680,-601,-504,-401,
+-305,-224,-158,-101,-47,8,67,126,181,232,280,325,369,410,447,477,502,524,548,577,613,
+654,697,739,780,821,863,908,953,997,1037,1073,1106,1140,1176,1215,1256,1297,1337,1376,1417,1463,
+1518,1580,1645,1704,1752,1785,1807,1823,1840,1860,1878,1887,1880,1855,1820,1785,1760,1751,1757,1774,1794,
+1816,1838,1862,1884,1903,1913,1914,1911,1912,1922,1941,1962,1973,1968,1946,1912,1879,1854,1840,1832,1824,
+1811,1796,1782,1775,1773,1770,1758,1731,1693,1652,1620,1602,1602,1614,1630,1644,1657,1670,1687,1709,1736,
+1763,1787,1807,1825,1842,1859,1876,1888,1895,1896,1897,1900,1908,1921,1937,1953,1970,1988,2009,2033,2059,
+2084,2106,2128,2151,2178,2209,2241,2272,2298,2321,2340,2356,2367,2371,2370,2369,2378,2400,2425,2431,2385,
+2265,2067,1816,1556,1332,1167,1053,957,836,665,449,223,33,-80,-100,-37,79,219,356,479,586,
+680,762,832,888,930,960,979,989,987,969,935,885,827,766,708,653,597,531,449,351,241,
+128,24,-65,-135,-187,-228,-264,-297,-330,-354,-357,-323,-237,-92,106,337,567,759,884,930,905,
+831,737,646,572,520,484,459,438,416,391,362,332,306,289,285,294,309,328,349,380,424,
+482,537,567,549,473,354,225,124,74,77,110,146,162,158,148,152,183,238,304,367,420,
+467,516,573,638,703,759,800,828,848,870,897,932,970,1006,1035,1056,1071,1085,1101,1120,1138,
+1145,1129,1081,1002,899,783,667,558,457,360,265,171,80,-3,-74,-129,-161,-168,-145,-95,-24,
+59,144,225,300,371,444,518,592,664,729,789,845,897,946,987,1020,1043,1059,1071,1081,1089,
+1094,1095,1095,1094,1095,1097,1099,1097,1093,1088,1086,1088,1094,1099,1100,1097,1091,1084,1076,1068,1055,
+1038,1019,1000,984,971,959,943,921,895,870,850,834,820,804,785,762,739,718,698,678,655,
+628,597,564,532,500,469,438,409,382,356,331,304,275,243,211,181,154,129,103,75,47,
+19,-8,-38,-73,-113,-156,-199,-238,-273,-306,-342,-380,-419,-455,-487,-516,-546,-581,-622,-663,-699,
+-725,-745,-764,-787,-817,-850,-880,-906,-927,-948,-972,-998,-1024,-1046,-1063,-1074,-1083,-1094,-1111,-1137,-1176,
+-1229,-1289,-1344,-1374,-1367,-1321,-1249,-1176,-1129,-1120,-1148,-1196,-1244,-1276,-1291,-1293,-1292,-1295,-1305,-1318,-1335,
+-1355,-1376,-1395,-1406,-1399,-1373,-1328,-1272,-1217,-1172,-1142,-1130,-1133,-1149,-1173,-1201,-1228,-1251,-1270,-1287,-1305,
+-1324,-1344,-1362,-1376,-1386,-1392,-1396,-1397,-1397,-1396,-1396,-1402,-1416,-1439,-1467,-1491,-1503,-1498,-1475,-1437,-1390,
+-1340,-1295,-1264,-1257,-1278,-1329,-1401,-1481,-1557,-1618,-1664,-1699,-1732,-1771,-1815,-1863,-1908,-1949,-1982,-2010,-2033,
+-2054,-2072,-2088,-2101,-2108,-2109,-2104,-2092,-2078,-2066,-2058,-2055,-2054,-2055,-2056,-2059,-2068,-2087,-2114,-2146,-2176,
+-2200,-2214,-2221,-2225,-2229,-2237,-2250,-2267,-2286,-2306,-2324,-2341,-2358,-2376,-2400,-2432,-2471,-2511,-2546,-2569,-2579,
+-2584,-2594,-2620,-2670,-2739,-2820,-2900,-2968,-3021,-3059,-3089,-3116,-3145,-3176,-3205,-3231,-3253,-3271,-3288,-3305,-3321,
+-3333,-3340,-3342,-3341,-3340,-3344,-3354,-3371,-3394,-3420,-3450,-3484,-3523,-3564,-3607,-3648,-3685,-3716,-3743,-3766,-3790,
+-3814,-3840,-3869,-3900,-3933,-3967,-4002,-4037,-4073,-4108,-4142,-4173,-4201,-4228,-4253,-4278,-4305,-4331,-4355,-4373,-4384,
+-4389,-4391,-4393,-4395,-4396,-4396,-4392,-4387,-4383,-4383,-4386,-4391,-4397,-4405,-4415,-4427,-4440,-4451,-4456,-4454,-4448,
+-4442,-4440,-4444,-4451,-4454,-4450,-4437,-4416,-4390,-4359,-4322,-4280,-4233,-4185,-4142,-4105,-4073,-4039,-3999,-3949,-3890,
+-3828,-3766,-3706,-3645,-3583,-3520,-3459,-3404,-3357,-3315,-3275,-3234,-3188,-3140,-3094,-3050,-3011,-2975,-2939,-2903,-2865,
+-2826,-2786,-2747,-2708,-2670,-2634,-2597,-2559,-2517,-2469,-2413,-2351,-2284,-2213,-2142,-2071,-2002,-1938,-1882,-1834,-1796,
+-1764,-1734,-1701,-1660,-1611,-1558,-1505,-1459,-1424,-1398,-1376,-1352,-1316,-1263,-1192,-1107,-1018,-932,-857,-793,-736,
+-680,-617,-546,-466,-382,-298,-216,-136,-56,23,102,178,249,316,386,465,558,663,775,883,977,
+1054,1117,1173,1230,1292,1361,1435,1512,1594,1679,1768,1857,1940,2011,2065,2105,2135,2163,2196,2237,2288,
+2347,2412,2480,2549,2620,2692,2765,2839,2915,2991,3066,3140,3211,3278,3340,3398,3453,3505,3554,3601,3646,
+3693,3742,3795,3851,3911,3970,4029,4088,4149,4212,4279,4348,4414,4475,4530,4581,4630,4679,4730,4779,4825,
+4867,4907,4947,4990,5036,5082,5129,5174,5221,5271,5323,5376,5427,5472,5513,5550,5588,5627,5665,5700,5730,
+5756,5780,5806,5835,5865,5892,5916,5935,5952,5968,5985,6000,6010,6015,6017,6018,6022,6030,6042,6054,6066,
+6076,6084,6091,6096,6100,6105,6112,6121,6133,6146,6157,6165,6168,6168,6166,6162,6157,6148,6135,6117,6094,
+6069,6045,6024,6009,5998,5993,5992,5995,6002,6013,6026,6037,6042,6036,6015,5981,5941,5901,5867,5843,5827,
+5816,5810,5808,5812,5819,5829,5838,5848,5863,5890,5933,5990,6053,6108,6142,6149,6131,6096,6057,6023,6000,
+5992,6000,6018,6039,6053,6051,6028,5989,5944,5904,5876,5859,5848,5834,5814,5787,5758,5728,5699,5670,5642,
+5619,5604,5599,5599,5595,5578,5543,5493,5442,5403,5387,5395,5417,5439,5448,5434,5396,5337,5266,5190,5120,
+5060,5010,4968,4927,4883,4833,4780,4730,4687,4651,4646,4621,4598,4573,4547,4519,4494,4471,4450,4429,4408,
+4388,4370,4358,4349,4342,4335,4326,4317,4311,4310,4313,4320,4327,4333,4339,4346,4354,4362,4370,4378,4385,
+4393,4401,4405,4403,4392,4374,4354,4338,4330,4330,4334,4336,4331,4314,4287,4250,4210,4170,4135,4107,4085,
+4064,4040,4008,3972,3937,3908,3889,3875,3860,3834,3796,3747,3695,3646,3602,3562,3518,3468,3412,3355,3304,
+3265,3237,3220,3210,3203,3196,3189,3181,3169,3150,3124,3090,3049,3006,2966,2934,2911,2896,2884,2870,2850,
+2825,2798,2773,2753,2740,2729,2720,2708,2693,2674,2651,2621,2583,2535,2477,2414,2348,2281,2214,2149,2088,
+2036,2003,1995,2014,2056,2108,2155,2184,2187,2166,2129,2087,2046,2011,1981,1953,1924,1893,1862,1832,1800,
+1763,1716,1660,1598,1536,1480,1434,1398,1367,1338,1309,1280,1252,1227,1203,1178,1149,1118,1086,1056,1030,
+1006,982,955,922,887,852,820,791,764,739,716,696,681,672,664,652,628,592,544,490,439,
+396,362,332,302,268,230,192,158,128,103,78,51,20,-14,-50,-86,-122,-160,-199,-240,-282,
+-322,-360,-394,-428,-462,-496,-530,-562,-593,-622,-648,-673,-698,-722,-748,-777,-812,-857,-913,-980,-1056,
+-1136,-1213,-1279,-1329,-1357,-1364,-1353,-1327,-1293,-1258,-1226,-1205,-1200,-1217,-1257,-1316,-1388,-1459,-1522,-1572,-1613,
+-1654,-1703,-1765,-1836,-1910,-1978,-2037,-2089,-2137,-2187,-2239,-2292,-2340,-2380,-2410,-2430,-2442,-2447,-2446,-2441,-2436,
+-2434,-2441,-2457,-2483,-2515,-2549,-2582,-2612,-2641,-2670,-2700,-2730,-2760,-2787,-2809,-2826,-2840,-2856,-2876,-2903,-2935,
+-2970,-3004,-3035,-3065,-3099,-3138,-3182,-3227,-3268,-3303,-3332,-3360,-3391,-3427,-3467,-3508,-3548,-3587,-3629,-3672,-3717,
+-3757,-3789,-3813,-3832,-3851,-3876,-3907,-3941,-3973,-3999,-4017,-4027,-4031,-4032,-4031,-4031,-4036,-4048,-4065,-4085,-4105,
+-4124,-4141,-4161,-4184,-4210,-4237,-4263,-4287,-4308,-4329,-4350,-4367,-4376,-4373,-4358,-4334,-4305,-4276,-4249,-4225,-4206,
+-4190,-4177,-4164,-4147,-4122,-4087,-4046,-4002,-3964,-3935,-3918,-3911,-3914,-3922,-3933,-3946,-3958,-3969,-3981,-3996,-4018,
+-4046,-4077,-4105,-4127,-4141,-4149,-4154,-4154,-4146,-4127,-4096,-4056,-4020,-3998,-3995,-4009,-4028,-4042,-4041,-4023,-3992,
+-3956,-3920,-3885,-3851,-3818,-3786,-3757,-3732,-3712,-3697,-3683,-3667,-3650,-3632,-3616,-3608,-3612,-3631,-3660,-3693,-3721,
+-3738,-3748,-3756,-3770,-3792,-3818,-3837,-3841,-3830,-3812,-3802,-3810,-3836,-3872,-3900,-3905,-3880,-3829,-3758,-3676,-3588,
+-3497,-3407,-3323,-3250,-3192,-3147,-3107,-3063,-3011,-2952,-2893,-2840,-2792,-2742,-2683,-2611,-2531,-2458,-2402,-2368,-2346,
+-2320,-2277,-2212,-2134,-2059,-1998,-1955,-1920,-1881,-1829,-1763,-1692,-1624,-1564,-1510,-1458,-1402,-1343,-1284,-1229,-1177,
+-1121,-1056,-983,-907,-839,-788,-754,-726,-691,-633,-549,-446,-338,-238,-154,-87,-29,27,87,150,212,
+269,321,368,413,456,495,527,551,568,584,604,633,670,712,754,794,830,865,901,940,980,
+1020,1058,1095,1131,1168,1207,1248,1290,1330,1370,1409,1451,1498,1551,1608,1667,1721,1768,1803,1828,1847,
+1864,1879,1891,1894,1883,1860,1829,1799,1779,1773,1780,1796,1817,1841,1869,1899,1927,1948,1957,1954,1946,
+1942,1949,1967,1987,1997,1988,1959,1921,1886,1863,1853,1849,1844,1830,1811,1791,1778,1772,1766,1754,1730,
+1696,1659,1630,1615,1616,1627,1642,1656,1669,1682,1698,1719,1741,1762,1783,1803,1824,1849,1875,1898,1916,
+1924,1927,1927,1929,1936,1948,1961,1974,1989,2005,2024,2046,2069,2091,2112,2134,2161,2194,2229,2263,2291,
+2312,2329,2346,2364,2381,2391,2394,2394,2400,2418,2438,2436,2374,2224,1979,1663,1326,1020,780,610,487,
+376,255,124,4,-69,-76,-10,108,251,390,508,602,675,735,788,833,868,894,910,921,928,
+933,934,925,904,869,823,769,713,655,596,531,458,377,291,205,123,47,-25,-99,-178,-263,
+-349,-430,-495,-530,-521,-451,-316,-122,104,325,501,603,630,605,567,550,570,618,667,689,667,
+608,533,468,430,424,440,461,476,480,478,479,492,518,548,565,553,500,410,301,201,135,
+116,138,181,223,248,259,268,292,337,402,474,543,603,657,710,767,823,869,897,904,895,
+881,873,878,896,920,938,943,930,903,871,841,818,798,769,717,632,517,384,249,131,38,
+-27,-73,-104,-125,-138,-143,-138,-121,-89,-41,25,111,210,312,409,494,567,632,692,750,804,
+854,898,937,975,1012,1047,1076,1098,1111,1119,1123,1125,1125,1121,1113,1103,1095,1090,1087,1084,1078,
+1069,1059,1053,1052,1053,1053,1048,1038,1027,1017,1009,1002,992,978,961,944,929,918,905,886,860,
+830,802,782,770,762,754,739,719,696,674,654,636,616,593,566,534,501,465,428,391,354,
+322,294,269,245,220,194,168,143,119,94,66,35,2,-28,-59,-91,-127,-170,-217,-264,-304,
+-338,-368,-400,-436,-475,-514,-548,-577,-606,-638,-675,-713,-748,-777,-799,-820,-845,-875,-909,-941,-968,
+-991,-1012,-1034,-1056,-1078,-1099,-1118,-1135,-1151,-1164,-1173,-1183,-1199,-1232,-1284,-1349,-1406,-1436,-1425,-1376,-1309,
+-1250,-1220,-1225,-1256,-1296,-1331,-1352,-1360,-1360,-1357,-1354,-1353,-1357,-1368,-1387,-1408,-1425,-1429,-1414,-1381,-1333,
+-1280,-1229,-1186,-1159,-1150,-1161,-1188,-1224,-1259,-1286,-1303,-1316,-1329,-1346,-1367,-1386,-1398,-1403,-1403,-1403,-1406,
+-1411,-1418,-1424,-1430,-1439,-1453,-1472,-1489,-1499,-1498,-1483,-1455,-1419,-1376,-1330,-1287,-1254,-1239,-1251,-1289,-1349,
+-1422,-1496,-1565,-1626,-1680,-1731,-1781,-1831,-1879,-1922,-1956,-1981,-1997,-2007,-2016,-2027,-2041,-2052,-2058,-2053,-2038,
+-2019,-2003,-1995,-1996,-2002,-2009,-2014,-2020,-2030,-2049,-2078,-2110,-2139,-2160,-2172,-2179,-2185,-2193,-2204,-2218,-2232,
+-2247,-2262,-2278,-2294,-2310,-2327,-2348,-2375,-2408,-2442,-2469,-2486,-2493,-2498,-2516,-2557,-2627,-2718,-2818,-2909,-2980,
+-3027,-3056,-3077,-3097,-3122,-3152,-3181,-3207,-3229,-3247,-3264,-3279,-3294,-3305,-3311,-3311,-3306,-3299,-3296,-3299,-3311,
+-3331,-3359,-3392,-3429,-3467,-3505,-3544,-3582,-3617,-3650,-3679,-3705,-3729,-3752,-3776,-3805,-3838,-3876,-3915,-3955,-3994,
+-4032,-4069,-4105,-4138,-4168,-4195,-4218,-4242,-4267,-4293,-4317,-4333,-4341,-4339,-4333,-4325,-4321,-4319,-4320,-4322,-4324,
+-4329,-4336,-4344,-4351,-4354,-4355,-4356,-4361,-4370,-4382,-4391,-4395,-4393,-4388,-4387,-4392,-4400,-4409,-4411,-4404,-4388,
+-4363,-4332,-4294,-4250,-4203,-4157,-4117,-4084,-4056,-4025,-3986,-3938,-3881,-3819,-3757,-3696,-3636,-3576,-3517,-3462,-3413,
+-3371,-3331,-3290,-3246,-3199,-3153,-3110,-3072,-3036,-3002,-2965,-2928,-2891,-2855,-2821,-2787,-2750,-2711,-2667,-2619,-2566,
+-2507,-2441,-2370,-2294,-2218,-2143,-2074,-2010,-1951,-1900,-1855,-1817,-1785,-1756,-1727,-1696,-1661,-1622,-1579,-1537,-1496,
+-1459,-1425,-1393,-1357,-1313,-1258,-1190,-1114,-1034,-958,-890,-831,-777,-722,-661,-591,-512,-425,-336,-245,-154,
+-63,22,101,168,223,271,321,384,469,575,693,813,922,1015,1092,1160,1224,1289,1355,1421,1489,
+1558,1634,1715,1802,1888,1968,2037,2092,2133,2165,2193,2222,2257,2301,2356,2421,2493,2567,2640,2711,2780,
+2850,2921,2995,3068,3140,3207,3269,3327,3381,3431,3480,3527,3574,3625,3679,3739,3801,3864,3926,3987,4049,
+4113,4182,4256,4331,4405,4474,4537,4594,4647,4698,4746,4789,4828,4864,4901,4941,4986,5035,5083,5129,5172,
+5213,5256,5301,5349,5396,5440,5481,5520,5557,5594,5628,5659,5687,5714,5742,5775,5811,5847,5879,5908,5935,
+5964,5994,6024,6050,6066,6073,6073,6074,6080,6092,6108,6123,6135,6141,6142,6139,6134,6128,6125,6127,6134,
+6147,6162,6175,6182,6184,6182,6181,6183,6186,6187,6181,6165,6143,6118,6095,6078,6068,6061,6056,6049,6041,
+6035,6036,6043,6054,6059,6051,6024,5980,5929,5882,5844,5819,5804,5792,5782,5776,5776,5783,5794,5806,5819,
+5839,5872,5923,5988,6056,6109,6136,6133,6108,6075,6045,6023,6010,6004,6002,6004,6010,6014,6009,5991,5959,
+5920,5883,5858,5844,5838,5830,5813,5786,5752,5718,5687,5661,5641,5626,5614,5604,5592,5572,5541,5500,5454,
+5413,5388,5382,5393,5410,5424,5424,5403,5362,5302,5230,5152,5078,5013,4961,4919,4883,4846,4805,4760,4716,
+4677,4646,4630,4605,4583,4561,4537,4512,4488,4469,4453,4441,4429,4418,4405,4394,4382,4371,4360,4350,4343,
+4340,4341,4346,4353,4360,4369,4379,4391,4403,4414,4422,4429,4438,4450,4464,4478,4486,4485,4475,4461,4447,
+4439,4437,4438,4437,4430,4414,4386,4349,4306,4262,4225,4198,4180,4166,4148,4121,4085,4046,4011,3987,3973,
+3960,3943,3914,3876,3833,3789,3748,3706,3660,3607,3548,3486,3429,3380,3340,3309,3287,3270,3259,3251,3244,
+3236,3223,3202,3173,3135,3091,3046,3004,2967,2936,2909,2882,2855,2827,2802,2784,2773,2768,2767,2764,2758,
+2747,2733,2715,2690,2657,2614,2559,2496,2427,2355,2283,2214,2153,2106,2082,2086,2119,2175,2239,2296,2330,
+2332,2301,2247,2181,2118,2066,2026,1995,1967,1936,1902,1863,1821,1776,1725,1668,1607,1548,1495,1452,1417,
+1388,1360,1331,1300,1269,1241,1215,1189,1161,1130,1099,1069,1042,1016,989,958,922,884,848,817,791,
+766,741,714,689,669,657,650,643,627,596,550,496,442,393,350,309,265,216,162,109,62,
+24,-4,-29,-53,-79,-108,-139,-173,-211,-252,-295,-339,-380,-418,-455,-492,-531,-572,-613,-651,-686,
+-717,-745,-773,-798,-823,-847,-870,-897,-931,-975,-1030,-1095,-1168,-1244,-1317,-1381,-1428,-1453,-1455,-1436,-1403,
+-1363,-1320,-1280,-1250,-1236,-1246,-1283,-1345,-1423,-1503,-1572,-1625,-1663,-1698,-1741,-1796,-1865,-1939,-2010,-2074,-2132,
+-2187,-2243,-2298,-2351,-2396,-2431,-2456,-2474,-2486,-2492,-2492,-2488,-2483,-2481,-2489,-2507,-2535,-2567,-2600,-2630,-2656,
+-2682,-2710,-2739,-2770,-2800,-2828,-2852,-2873,-2891,-2910,-2932,-2959,-2988,-3018,-3047,-3075,-3105,-3138,-3180,-3227,-3277,
+-3322,-3359,-3388,-3412,-3438,-3467,-3499,-3534,-3568,-3603,-3642,-3685,-3731,-3776,-3814,-3843,-3866,-3886,-3910,-3938,-3968,
+-3997,-4021,-4038,-4050,-4058,-4064,-4068,-4072,-4076,-4082,-4091,-4103,-4119,-4138,-4160,-4185,-4212,-4239,-4262,-4283,-4303,
+-4324,-4346,-4366,-4379,-4380,-4369,-4347,-4322,-4298,-4277,-4258,-4239,-4221,-4204,-4191,-4178,-4161,-4133,-4090,-4036,-3980,
+-3932,-3898,-3879,-3873,-3876,-3885,-3901,-3923,-3950,-3980,-4010,-4039,-4067,-4094,-4121,-4148,-4172,-4197,-4221,-4246,-4265,
+-4269,-4253,-4212,-4155,-4096,-4049,-4025,-4022,-4031,-4037,-4033,-4014,-3987,-3959,-3933,-3911,-3889,-3863,-3832,-3797,-3762,
+-3733,-3710,-3694,-3681,-3669,-3657,-3649,-3652,-3669,-3703,-3747,-3788,-3815,-3820,-3811,-3801,-3803,-3826,-3867,-3914,-3954,
+-3979,-3992,-3996,-3996,-3991,-3972,-3931,-3870,-3793,-3715,-3645,-3586,-3535,-3484,-3427,-3365,-3302,-3243,-3188,-3136,-3080,
+-3021,-2960,-2902,-2848,-2798,-2744,-2682,-2612,-2540,-2474,-2423,-2386,-2357,-2323,-2279,-2222,-2160,-2100,-2047,-1999,-1950,
+-1894,-1829,-1761,-1694,-1632,-1576,-1520,-1461,-1397,-1332,-1270,-1214,-1160,-1100,-1031,-952,-871,-799,-743,-701,-666,
+-622,-560,-475,-376,-272,-175,-91,-20,44,108,173,238,300,355,403,447,490,531,568,597,617,
+631,643,660,686,720,759,798,835,868,900,934,969,1007,1045,1083,1120,1158,1196,1234,1273,1313,
+1355,1399,1446,1495,1542,1588,1632,1674,1717,1758,1797,1830,1859,1881,1897,1906,1907,1897,1879,1855,1833,
+1818,1812,1814,1824,1839,1860,1887,1918,1948,1972,1982,1981,1974,1969,1974,1987,2002,2007,1994,1965,1928,
+1895,1875,1868,1867,1864,1853,1835,1815,1798,1787,1776,1760,1735,1702,1667,1639,1624,1623,1632,1646,1660,
+1674,1689,1705,1723,1743,1762,1782,1804,1828,1856,1883,1906,1921,1929,1930,1932,1937,1947,1960,1973,1987,
+2000,2015,2033,2054,2075,2096,2116,2139,2169,2205,2244,2280,2306,2323,2334,2347,2364,2383,2401,2414,2425,
+2441,2463,2480,2466,2385,2211,1936,1588,1211,859,568,349,190,70,-21,-84,-105,-71,18,147,291,
+423,529,606,664,713,760,805,844,871,885,887,884,880,879,882,884,881,868,842,803,755,
+701,644,586,525,461,395,330,267,207,145,79,5,-76,-165,-259,-356,-450,-531,-578,-573,-504,
+-378,-221,-72,35,94,122,157,232,357,506,634,696,674,586,476,394,367,396,457,519,558,
+572,569,563,561,560,548,517,464,396,327,271,241,240,265,305,349,386,415,440,468,506,
+554,605,651,688,712,731,747,763,774,775,758,724,681,640,613,605,612,624,626,605,557,
+489,413,345,291,250,211,159,84,-10,-113,-205,-270,-302,-301,-275,-231,-175,-111,-42,29,101,
+172,244,320,403,490,577,656,722,776,821,861,899,935,968,998,1024,1050,1075,1098,1116,1128,
+1134,1136,1137,1138,1137,1132,1123,1111,1098,1087,1077,1066,1051,1035,1019,1008,1001,996,990,981,968,
+956,947,942,938,931,918,900,881,865,850,836,816,789,757,728,705,692,683,673,659,638,
+613,590,569,551,534,516,494,470,442,410,374,335,297,262,233,208,185,162,139,115,93,
+71,47,19,-14,-50,-85,-119,-152,-189,-232,-279,-326,-366,-399,-427,-456,-491,-531,-573,-610,-642,
+-670,-698,-729,-763,-795,-823,-848,-873,-900,-932,-964,-995,-1023,-1048,-1074,-1099,-1123,-1143,-1158,-1171,-1187,
+-1206,-1225,-1240,-1248,-1252,-1264,-1294,-1342,-1397,-1442,-1459,-1443,-1404,-1360,-1331,-1326,-1342,-1368,-1393,-1411,-1420,
+-1423,-1422,-1418,-1415,-1413,-1414,-1420,-1426,-1429,-1426,-1413,-1392,-1363,-1326,-1284,-1239,-1198,-1173,-1170,-1190,-1226,
+-1264,-1294,-1313,-1325,-1339,-1360,-1384,-1406,-1417,-1417,-1411,-1408,-1415,-1430,-1448,-1463,-1472,-1475,-1479,-1484,-1492,
+-1499,-1501,-1498,-1488,-1472,-1448,-1413,-1366,-1311,-1256,-1216,-1202,-1224,-1279,-1360,-1455,-1549,-1635,-1706,-1764,-1813,
+-1855,-1892,-1923,-1945,-1957,-1961,-1963,-1968,-1978,-1992,-2001,-2000,-1988,-1971,-1957,-1955,-1963,-1978,-1992,-2001,-2007,
+-2017,-2036,-2064,-2097,-2125,-2145,-2155,-2160,-2165,-2175,-2188,-2200,-2211,-2220,-2229,-2241,-2257,-2274,-2293,-2315,-2341,
+-2369,-2396,-2416,-2426,-2429,-2434,-2454,-2503,-2581,-2681,-2787,-2883,-2955,-3002,-3030,-3048,-3067,-3090,-3118,-3150,-3181,
+-3210,-3233,-3251,-3264,-3273,-3277,-3277,-3274,-3269,-3264,-3262,-3265,-3277,-3297,-3326,-3359,-3394,-3429,-3462,-3493,-3523,
+-3554,-3586,-3617,-3646,-3672,-3695,-3717,-3743,-3774,-3812,-3854,-3898,-3942,-3985,-4026,-4064,-4100,-4131,-4156,-4177,-4197,
+-4218,-4242,-4264,-4280,-4285,-4280,-4268,-4255,-4245,-4241,-4242,-4247,-4256,-4269,-4286,-4304,-4317,-4324,-4323,-4317,-4313,
+-4314,-4321,-4328,-4332,-4332,-4329,-4328,-4333,-4343,-4354,-4360,-4357,-4343,-4320,-4289,-4252,-4211,-4168,-4127,-4092,-4062,
+-4034,-4004,-3965,-3918,-3864,-3805,-3746,-3688,-3630,-3575,-3522,-3475,-3434,-3395,-3355,-3310,-3262,-3213,-3169,-3133,-3103,
+-3076,-3046,-3010,-2972,-2932,-2895,-2858,-2820,-2775,-2723,-2662,-2593,-2518,-2438,-2356,-2276,-2199,-2129,-2068,-2013,-1965,
+-1922,-1883,-1849,-1819,-1791,-1763,-1734,-1704,-1673,-1643,-1612,-1581,-1547,-1510,-1471,-1429,-1384,-1335,-1281,-1219,-1150,
+-1076,-1004,-938,-879,-827,-775,-719,-653,-577,-491,-400,-306,-210,-114,-23,59,128,182,226,269,326,
+406,512,636,765,885,989,1075,1148,1213,1275,1336,1396,1455,1517,1584,1658,1739,1824,1910,1991,2063,
+2123,2169,2202,2224,2244,2268,2304,2355,2419,2490,2561,2631,2698,2765,2835,2908,2981,3053,3121,3185,3245,
+3303,3359,3414,3469,3525,3584,3648,3716,3785,3853,3918,3979,4040,4102,4168,4239,4313,4386,4458,4526,4590,
+4650,4705,4755,4797,4834,4868,4904,4946,4994,5047,5099,5147,5191,5230,5269,5310,5351,5393,5434,5474,5514,
+5554,5594,5631,5664,5695,5725,5758,5793,5830,5864,5894,5921,5950,5985,6027,6071,6107,6131,6141,6142,6144,
+6151,6165,6182,6196,6203,6203,6197,6189,6180,6171,6165,6163,6168,6178,6190,6199,6202,6199,6193,6191,6196,
+6208,6220,6226,6222,6209,6192,6177,6168,6165,6164,6157,6142,6120,6098,6085,6085,6093,6100,6093,6064,6014,
+5955,5899,5857,5830,5811,5793,5775,5758,5749,5749,5756,5767,5781,5802,5840,5899,5974,6050,6108,6132,6124,
+6096,6064,6041,6030,6023,6014,6001,5986,5976,5972,5969,5961,5941,5911,5878,5852,5836,5828,5819,5803,5775,
+5740,5703,5671,5647,5629,5613,5595,5573,5546,5515,5483,5451,5426,5409,5402,5403,5407,5408,5402,5385,5354,
+5311,5254,5186,5112,5037,4970,4916,4874,4841,4809,4775,4737,4697,4660,4630,4606,4579,4555,4533,4510,4487,
+4467,4452,4443,4438,4436,4433,4427,4419,4410,4401,4393,4387,4382,4379,4377,4376,4378,4384,4396,4414,4436,
+4459,4479,4494,4507,4519,4534,4551,4566,4575,4575,4567,4554,4542,4533,4527,4523,4517,4506,4490,4465,4433,
+4393,4351,4313,4284,4266,4254,4241,4218,4185,4144,4104,4072,4048,4031,4014,3993,3967,3936,3904,3871,3834,
+3790,3740,3683,3624,3565,3510,3460,3416,3381,3358,3345,3341,3340,3338,3330,3312,3284,3246,3199,3146,3090,
+3034,2981,2933,2892,2857,2832,2816,2809,2810,2815,2819,2819,2815,2809,2801,2792,2778,2755,2720,2670,2608,
+2536,2458,2378,2303,2240,2196,2178,2190,2230,2291,2361,2421,2458,2459,2423,2354,2268,2182,2110,2056,2017,
+1986,1953,1913,1867,1816,1763,1709,1654,1598,1544,1494,1454,1422,1397,1374,1348,1317,1285,1254,1225,1199,
+1173,1145,1115,1085,1055,1026,997,964,928,890,854,823,796,770,744,714,685,660,643,633,623,
+606,577,535,485,433,385,338,290,234,170,100,33,-26,-74,-112,-143,-171,-197,-226,-258,-294,
+-336,-381,-428,-471,-510,-545,-582,-623,-669,-718,-765,-806,-840,-868,-896,-923,-949,-974,-995,-1017,-1041,
+-1072,-1114,-1166,-1227,-1293,-1362,-1429,-1488,-1532,-1556,-1558,-1541,-1508,-1467,-1419,-1370,-1325,-1294,-1287,-1312,-1371,
+-1453,-1543,-1623,-1685,-1728,-1763,-1802,-1853,-1918,-1989,-2059,-2124,-2183,-2239,-2294,-2349,-2401,-2444,-2478,-2504,-2524,
+-2539,-2547,-2549,-2544,-2537,-2534,-2541,-2561,-2590,-2624,-2655,-2681,-2704,-2725,-2750,-2778,-2810,-2842,-2872,-2899,-2923,
+-2944,-2965,-2987,-3011,-3037,-3063,-3090,-3116,-3145,-3180,-3222,-3271,-3322,-3368,-3404,-3432,-3454,-3476,-3502,-3534,-3570,
+-3607,-3644,-3685,-3728,-3774,-3817,-3854,-3882,-3902,-3920,-3940,-3963,-3988,-4013,-4037,-4057,-4076,-4092,-4105,-4114,-4116,
+-4114,-4109,-4106,-4108,-4118,-4136,-4161,-4188,-4212,-4229,-4239,-4244,-4249,-4261,-4279,-4299,-4312,-4314,-4305,-4290,-4275,
+-4264,-4254,-4240,-4218,-4191,-4164,-4144,-4129,-4114,-4089,-4049,-3996,-3941,-3896,-3869,-3860,-3865,-3879,-3901,-3930,-3966,
+-4009,-4053,-4093,-4125,-4149,-4166,-4181,-4195,-4213,-4237,-4269,-4307,-4343,-4367,-4367,-4340,-4290,-4231,-4177,-4138,-4117,
+-4106,-4095,-4080,-4058,-4033,-4010,-3991,-3973,-3953,-3927,-3895,-3859,-3823,-3792,-3769,-3753,-3742,-3731,-3721,-3713,-3716,
+-3736,-3774,-3822,-3865,-3888,-3884,-3858,-3828,-3816,-3833,-3880,-3946,-4014,-4071,-4109,-4125,-4116,-4077,-4007,-3910,-3800,
+-3696,-3615,-3565,-3537,-3517,-3489,-3444,-3385,-3319,-3255,-3196,-3140,-3084,-3025,-2964,-2905,-2848,-2791,-2733,-2671,-2608,
+-2548,-2495,-2451,-2412,-2372,-2328,-2278,-2224,-2171,-2121,-2070,-2016,-1957,-1894,-1828,-1766,-1709,-1654,-1598,-1535,-1465,
+-1391,-1318,-1251,-1190,-1130,-1065,-993,-915,-838,-768,-710,-659,-609,-551,-478,-391,-294,-196,-101,-15,63,
+136,206,272,333,389,439,483,525,566,606,641,669,687,698,706,717,737,764,798,835,871,
+906,940,974,1008,1044,1080,1117,1155,1191,1227,1262,1298,1338,1386,1442,1500,1555,1600,1634,1659,1682,
+1711,1749,1795,1841,1882,1913,1931,1937,1932,1921,1905,1886,1869,1855,1846,1843,1846,1857,1875,1900,1930,
+1960,1984,1998,2003,2002,2001,2005,2013,2020,2018,2002,1973,1937,1905,1883,1874,1874,1874,1870,1858,1843,
+1827,1811,1793,1772,1744,1711,1679,1652,1636,1633,1640,1653,1667,1682,1696,1711,1727,1745,1764,1786,1810,
+1834,1858,1879,1895,1905,1909,1912,1916,1925,1938,1953,1968,1983,1997,2013,2032,2055,2079,2103,2127,2153,
+2184,2219,2255,2287,2308,2319,2323,2329,2340,2358,2380,2405,2433,2466,2499,2516,2488,2385,2186,1890,1528,
+1146,789,491,261,93,-21,-88,-100,-52,52,195,349,483,581,642,678,707,740,779,819,852,
+873,881,880,872,860,848,835,826,819,814,805,789,763,726,681,631,577,522,466,410,357,
+306,258,211,163,114,60,-2,-82,-185,-306,-432,-538,-600,-609,-573,-517,-465,-427,-389,-323,-205,
+-37,146,292,355,323,225,116,52,62,138,246,350,427,477,509,533,547,538,496,425,342,
+274,243,257,305,365,418,451,465,468,473,487,510,539,564,579,577,559,529,492,454,416,
+377,334,284,229,176,133,106,98,105,113,109,79,20,-59,-144,-217,-268,-296,-311,-325,-348,
+-377,-404,-414,-399,-357,-291,-210,-119,-21,81,187,290,386,469,541,606,669,731,789,839,879,
+909,933,956,980,1005,1030,1053,1074,1094,1112,1127,1137,1142,1141,1139,1136,1134,1131,1126,1116,1102,
+1087,1070,1052,1034,1013,991,971,954,942,931,921,910,897,887,881,878,875,868,854,834,811,
+789,771,754,736,712,686,658,634,614,597,580,560,537,514,492,473,456,439,420,401,380,
+357,331,301,269,236,206,180,157,134,109,80,50,23,-2,-26,-53,-84,-118,-153,-186,-218,
+-253,-293,-337,-381,-420,-452,-480,-509,-545,-586,-629,-668,-701,-729,-756,-784,-814,-845,-873,-901,-929,
+-959,-990,-1020,-1046,-1071,-1098,-1129,-1162,-1193,-1216,-1227,-1232,-1239,-1254,-1276,-1299,-1314,-1320,-1323,-1332,-1357,
+-1395,-1435,-1465,-1475,-1468,-1453,-1441,-1439,-1447,-1459,-1471,-1479,-1483,-1486,-1487,-1488,-1489,-1489,-1486,-1479,-1464,
+-1442,-1417,-1394,-1376,-1362,-1346,-1320,-1282,-1237,-1200,-1183,-1190,-1216,-1246,-1270,-1283,-1292,-1307,-1332,-1365,-1396,
+-1414,-1418,-1414,-1413,-1423,-1445,-1470,-1490,-1500,-1501,-1499,-1499,-1504,-1511,-1517,-1521,-1522,-1520,-1512,-1491,-1451,
+-1390,-1314,-1238,-1182,-1163,-1190,-1262,-1366,-1484,-1594,-1685,-1751,-1796,-1829,-1856,-1882,-1904,-1918,-1924,-1924,-1925,
+-1930,-1939,-1946,-1947,-1939,-1929,-1923,-1930,-1948,-1971,-1991,-2003,-2008,-2015,-2031,-2059,-2093,-2123,-2144,-2155,-2158,
+-2162,-2169,-2178,-2186,-2191,-2194,-2198,-2205,-2218,-2237,-2259,-2284,-2312,-2340,-2366,-2383,-2391,-2392,-2396,-2416,-2463,
+-2537,-2632,-2734,-2826,-2900,-2951,-2985,-3009,-3029,-3052,-3079,-3111,-3147,-3182,-3212,-3233,-3245,-3247,-3243,-3238,-3235,
+-3236,-3239,-3244,-3252,-3264,-3282,-3307,-3336,-3369,-3402,-3431,-3458,-3485,-3513,-3545,-3579,-3613,-3643,-3667,-3688,-3709,
+-3735,-3768,-3807,-3851,-3896,-3939,-3980,-4018,-4053,-4083,-4107,-4127,-4144,-4161,-4179,-4196,-4208,-4212,-4205,-4193,-4180,
+-4171,-4168,-4172,-4182,-4197,-4218,-4242,-4268,-4290,-4303,-4306,-4301,-4292,-4285,-4281,-4281,-4279,-4277,-4274,-4275,-4282,
+-4294,-4307,-4313,-4310,-4296,-4272,-4242,-4207,-4170,-4132,-4097,-4065,-4036,-4006,-3973,-3933,-3886,-3835,-3782,-3729,-3677,
+-3626,-3576,-3531,-3492,-3456,-3421,-3381,-3334,-3284,-3237,-3198,-3169,-3146,-3123,-3092,-3052,-3005,-2955,-2906,-2858,-2808,
+-2754,-2692,-2622,-2543,-2457,-2368,-2280,-2198,-2128,-2071,-2026,-1991,-1960,-1932,-1906,-1881,-1856,-1830,-1801,-1767,-1731,
+-1697,-1667,-1641,-1616,-1586,-1550,-1507,-1460,-1413,-1366,-1318,-1264,-1201,-1131,-1057,-988,-928,-878,-834,-787,-730,
+-660,-577,-487,-394,-303,-214,-128,-47,23,85,141,198,269,363,482,617,755,881,987,1070,1138,
+1196,1252,1307,1363,1419,1478,1542,1614,1692,1777,1865,1954,2041,2120,2185,2232,2258,2270,2278,2292,2321,
+2366,2423,2486,2550,2616,2683,2754,2829,2905,2979,3049,3117,3184,3251,3318,3384,3449,3513,3578,3645,3715,
+3786,3856,3921,3981,4038,4094,4153,4214,4280,4348,4418,4487,4555,4620,4680,4734,4780,4820,4859,4900,4947,
+4999,5055,5110,5161,5206,5246,5284,5321,5358,5396,5434,5473,5513,5556,5599,5641,5681,5717,5753,5790,5827,
+5862,5892,5917,5939,5967,6005,6053,6104,6148,6178,6193,6199,6203,6213,6227,6241,6248,6247,6240,6231,6224,
+6220,6218,6217,6217,6218,6223,6229,6232,6230,6223,6215,6211,6216,6230,6248,6263,6270,6268,6260,6254,6253,
+6256,6258,6251,6231,6200,6167,6143,6135,6139,6145,6137,6105,6050,5985,5926,5881,5852,5830,5807,5779,5751,
+5731,5723,5725,5732,5741,5759,5796,5859,5944,6033,6102,6134,6127,6095,6058,6032,6019,6012,6001,5982,5961,
+5947,5945,5951,5954,5947,5924,5893,5863,5840,5824,5810,5791,5762,5725,5688,5654,5627,5605,5582,5555,5523,
+5488,5456,5432,5418,5416,5419,5424,5423,5414,5395,5369,5337,5300,5257,5206,5145,5076,5005,4938,4882,4839,
+4804,4775,4744,4710,4673,4638,4606,4581,4557,4535,4514,4493,4472,4452,4438,4430,4429,4432,4435,4437,4437,
+4436,4436,4438,4439,4438,4433,4425,4415,4410,4414,4431,4458,4493,4529,4562,4591,4616,4638,4657,4673,4680,
+4678,4666,4648,4630,4615,4604,4595,4585,4573,4559,4543,4523,4497,4464,4425,4386,4353,4331,4318,4306,4288,
+4259,4223,4183,4147,4119,4098,4080,4061,4041,4018,3991,3961,3926,3886,3843,3797,3750,3701,3649,3594,3542,
+3498,3468,3454,3453,3456,3455,3445,3424,3391,3350,3300,3243,3179,3109,3039,2973,2918,2878,2855,2848,2854,
+2864,2872,2876,2874,2870,2869,2872,2876,2876,2865,2837,2791,2729,2654,2571,2486,2407,2342,2297,2279,2288,
+2322,2373,2432,2486,2522,2526,2492,2423,2331,2233,2147,2081,2034,1996,1958,1911,1856,1797,1740,1687,1637,
+1588,1539,1493,1452,1419,1394,1373,1349,1320,1288,1255,1225,1200,1177,1154,1127,1097,1066,1034,1002,971,
+938,905,870,836,804,772,740,708,678,651,631,615,600,579,548,509,463,416,371,323,270,
+207,133,53,-26,-97,-159,-210,-254,-293,-330,-366,-404,-446,-494,-544,-593,-637,-674,-708,-743,-785,
+-833,-884,-932,-971,-1003,-1030,-1058,-1087,-1115,-1140,-1161,-1180,-1201,-1229,-1267,-1314,-1366,-1423,-1481,-1538,-1590,
+-1631,-1656,-1663,-1654,-1630,-1594,-1548,-1493,-1435,-1384,-1357,-1365,-1413,-1491,-1583,-1670,-1740,-1791,-1832,-1875,-1928,
+-1991,-2059,-2125,-2184,-2237,-2287,-2338,-2389,-2438,-2483,-2520,-2551,-2575,-2594,-2604,-2605,-2599,-2591,-2588,-2596,-2618,
+-2651,-2687,-2718,-2741,-2757,-2771,-2788,-2812,-2841,-2874,-2906,-2936,-2963,-2986,-3008,-3029,-3051,-3076,-3102,-3130,-3160,
+-3193,-3230,-3272,-3318,-3364,-3404,-3436,-3461,-3482,-3505,-3536,-3575,-3618,-3664,-3708,-3751,-3793,-3833,-3869,-3897,-3918,
+-3932,-3945,-3959,-3976,-3997,-4020,-4045,-4072,-4101,-4129,-4152,-4168,-4172,-4167,-4156,-4144,-4138,-4141,-4152,-4170,-4190,
+-4206,-4212,-4208,-4197,-4189,-4188,-4196,-4209,-4220,-4223,-4218,-4212,-4208,-4208,-4203,-4188,-4158,-4118,-4081,-4056,-4045,
+-4040,-4028,-4002,-3961,-3917,-3883,-3868,-3873,-3895,-3929,-3969,-4014,-4064,-4115,-4161,-4197,-4221,-4234,-4240,-4244,-4249,
+-4258,-4276,-4302,-4336,-4374,-4404,-4419,-4412,-4386,-4349,-4310,-4276,-4248,-4224,-4200,-4175,-4150,-4127,-4106,-4083,-4057,
+-4028,-3996,-3963,-3933,-3906,-3883,-3865,-3849,-3835,-3820,-3803,-3786,-3776,-3779,-3799,-3832,-3865,-3883,-3877,-3850,-3816,
+-3794,-3800,-3835,-3893,-3960,-4022,-4070,-4096,-4091,-4050,-3972,-3869,-3759,-3666,-3604,-3574,-3562,-3546,-3511,-3454,-3382,
+-3308,-3241,-3185,-3133,-3080,-3024,-2965,-2905,-2846,-2786,-2725,-2664,-2607,-2557,-2514,-2475,-2434,-2387,-2334,-2278,-2223,
+-2171,-2121,-2069,-2011,-1947,-1882,-1821,-1765,-1714,-1660,-1599,-1529,-1453,-1376,-1302,-1234,-1169,-1103,-1033,-960,-888,
+-820,-757,-698,-638,-571,-496,-411,-319,-223,-126,-32,58,143,219,287,347,400,448,493,537,581,
+625,666,704,733,753,765,774,783,797,819,847,880,915,950,983,1014,1045,1077,1111,1147,1184,
+1221,1255,1289,1326,1372,1429,1495,1561,1616,1654,1673,1683,1694,1719,1761,1816,1875,1926,1961,1976,1976,
+1966,1949,1930,1911,1894,1878,1867,1861,1863,1875,1895,1921,1951,1979,2003,2021,2032,2039,2044,2049,2053,
+2052,2043,2021,1989,1950,1914,1888,1875,1875,1882,1888,1888,1878,1860,1837,1811,1783,1754,1725,1697,1674,
+1660,1656,1663,1675,1690,1703,1714,1724,1735,1750,1770,1792,1815,1836,1853,1866,1875,1882,1887,1894,1903,
+1914,1928,1943,1959,1975,1992,2012,2034,2061,2089,2119,2149,2180,2210,2240,2266,2285,2295,2299,2299,2303,
+2314,2334,2361,2395,2435,2477,2512,2519,2469,2333,2099,1777,1402,1022,683,411,211,78,2,-19,14,
+103,235,384,522,624,685,715,731,750,777,806,830,844,850,852,854,853,844,823,792,760,
+738,730,734,740,739,723,692,651,606,561,515,468,418,368,320,277,243,217,195,167,124,
+53,-47,-173,-307,-428,-521,-584,-624,-654,-677,-681,-646,-561,-434,-301,-208,-187,-243,-342,-431,-462,
+-418,-313,-183,-58,47,140,229,313,373,386,340,249,150,85,84,144,237,323,370,369,332,
+284,246,228,225,224,213,185,140,83,17,-51,-121,-189,-254,-313,-366,-411,-446,-468,-477,-471,
+-456,-439,-431,-441,-473,-520,-569,-606,-619,-608,-578,-540,-500,-457,-406,-341,-258,-162,-59,42,142,
+240,338,437,531,615,686,744,792,835,875,912,943,966,981,993,1006,1022,1041,1060,1078,1093,
+1107,1119,1128,1134,1135,1133,1128,1122,1115,1107,1098,1086,1071,1053,1033,1011,989,966,943,922,903,
+886,871,857,844,832,823,817,813,808,798,782,761,737,713,692,672,654,634,614,591,568,
+544,521,496,473,450,430,413,398,381,362,340,316,293,270,248,224,198,171,147,126,106,
+83,54,19,-18,-54,-86,-113,-138,-163,-190,-219,-249,-280,-315,-355,-397,-440,-477,-508,-536,-565,
+-599,-638,-680,-718,-750,-779,-808,-838,-871,-903,-933,-961,-991,-1022,-1053,-1082,-1105,-1127,-1151,-1182,-1219,
+-1257,-1285,-1298,-1301,-1300,-1308,-1326,-1350,-1372,-1385,-1388,-1391,-1400,-1420,-1449,-1478,-1501,-1516,-1526,-1534,-1542,
+-1552,-1559,-1561,-1560,-1555,-1549,-1544,-1541,-1541,-1542,-1542,-1533,-1512,-1479,-1441,-1408,-1387,-1378,-1372,-1358,-1329,
+-1290,-1251,-1227,-1223,-1233,-1246,-1252,-1250,-1247,-1256,-1283,-1324,-1366,-1398,-1415,-1420,-1425,-1437,-1457,-1481,-1500,
+-1510,-1514,-1517,-1522,-1531,-1540,-1546,-1548,-1548,-1547,-1544,-1535,-1510,-1465,-1399,-1321,-1248,-1200,-1193,-1235,-1320,
+-1433,-1551,-1653,-1727,-1772,-1797,-1815,-1834,-1856,-1877,-1892,-1899,-1901,-1901,-1903,-1904,-1903,-1898,-1894,-1896,-1910,
+-1935,-1965,-1990,-2004,-2009,-2013,-2025,-2049,-2082,-2115,-2139,-2152,-2156,-2158,-2160,-2164,-2167,-2167,-2165,-2164,-2167,
+-2176,-2192,-2213,-2239,-2268,-2298,-2325,-2346,-2356,-2361,-2368,-2388,-2430,-2495,-2578,-2666,-2750,-2821,-2878,-2920,-2953,
+-2980,-3004,-3030,-3060,-3095,-3132,-3164,-3188,-3200,-3201,-3198,-3195,-3197,-3205,-3217,-3228,-3239,-3249,-3263,-3283,-3309,
+-3341,-3374,-3405,-3434,-3461,-3491,-3524,-3560,-3596,-3629,-3655,-3676,-3694,-3715,-3742,-3776,-3814,-3853,-3889,-3923,-3956,
+-3987,-4018,-4046,-4069,-4088,-4103,-4116,-4126,-4131,-4131,-4124,-4114,-4106,-4103,-4108,-4120,-4137,-4157,-4181,-4206,-4233,
+-4256,-4272,-4278,-4275,-4265,-4253,-4243,-4235,-4229,-4226,-4226,-4232,-4244,-4259,-4273,-4280,-4276,-4260,-4235,-4204,-4170,
+-4135,-4101,-4069,-4038,-4008,-3975,-3938,-3895,-3847,-3798,-3751,-3704,-3659,-3615,-3572,-3532,-3496,-3464,-3432,-3395,-3353,
+-3310,-3270,-3239,-3215,-3192,-3163,-3122,-3067,-3002,-2934,-2866,-2802,-2741,-2682,-2622,-2560,-2493,-2419,-2339,-2257,-2181,
+-2118,-2070,-2036,-2011,-1989,-1969,-1948,-1928,-1907,-1880,-1847,-1806,-1762,-1721,-1689,-1666,-1644,-1618,-1583,-1539,-1492,
+-1448,-1410,-1373,-1330,-1273,-1203,-1125,-1049,-986,-937,-898,-858,-807,-740,-658,-570,-483,-402,-327,-256,-187,
+-117,-47,25,108,207,328,470,622,769,895,994,1068,1125,1175,1225,1276,1330,1385,1445,1510,1583,
+1664,1750,1840,1934,2030,2124,2208,2274,2315,2332,2334,2334,2341,2363,2398,2445,2498,2557,2622,2695,2773,
+2853,2932,3008,3080,3153,3228,3305,3381,3454,3523,3589,3653,3717,3783,3849,3913,3972,4027,4078,4130,4183,
+4241,4303,4369,4437,4505,4570,4632,4688,4739,4788,4836,4885,4938,4993,5050,5104,5154,5199,5239,5277,5314,
+5352,5390,5427,5466,5506,5548,5591,5634,5677,5718,5758,5798,5837,5873,5902,5926,5948,5975,6012,6060,6111,
+6156,6189,6209,6221,6233,6249,6267,6280,6283,6275,6263,6252,6248,6251,6258,6263,6265,6265,6264,6264,6264,
+6262,6256,6250,6246,6249,6259,6273,6287,6296,6299,6297,6295,6296,6301,6305,6301,6284,6253,6216,6184,6166,
+6163,6163,6152,6119,6065,6000,5941,5898,5871,5851,5825,5792,5757,5729,5715,5711,5710,5711,5719,5747,5808,
+5898,6001,6087,6132,6129,6092,6043,6001,5976,5962,5951,5937,5925,5921,5929,5946,5960,5962,5947,5918,5885,
+5856,5832,5812,5788,5758,5721,5682,5645,5613,5584,5555,5524,5490,5457,5431,5416,5414,5420,5429,5431,5423,
+5402,5371,5335,5297,5258,5216,5167,5109,5045,4978,4914,4856,4809,4769,4735,4704,4672,4640,4609,4581,4556,
+4540,4526,4512,4495,4476,4457,4441,4432,4431,4436,4444,4451,4456,4463,4472,4483,4492,4497,4494,4483,4471,
+4464,4469,4488,4519,4557,4597,4638,4676,4714,4748,4774,4789,4787,4770,4744,4715,4691,4674,4662,4650,4637,
+4620,4604,4588,4571,4551,4524,4488,4450,4414,4388,4370,4355,4338,4314,4283,4250,4221,4198,4181,4167,4151,
+4132,4107,4076,4039,3998,3958,3920,3888,3858,3825,3784,3734,3678,3627,3590,3572,3567,3567,3561,3543,3513,
+3474,3430,3383,3330,3269,3198,3119,3042,2975,2927,2902,2899,2909,2922,2930,2929,2924,2920,2924,2937,2952,
+2962,2957,2932,2888,2827,2755,2675,2595,2519,2457,2411,2387,2382,2394,2419,2453,2487,2513,2519,2496,2440,
+2359,2267,2180,2111,2058,2014,1969,1914,1850,1784,1725,1676,1634,1595,1553,1508,1463,1423,1390,1363,1336,
+1306,1273,1239,1209,1186,1168,1151,1130,1103,1071,1037,1006,977,951,923,891,855,816,776,738,704,
+673,647,626,606,585,560,527,487,444,400,355,307,249,180,98,9,-79,-163,-238,-304,-364,
+-417,-466,-511,-555,-603,-655,-710,-763,-810,-848,-880,-912,-948,-990,-1033,-1074,-1110,-1141,-1171,-1203,-1237,
+-1270,-1298,-1319,-1339,-1361,-1389,-1424,-1464,-1507,-1551,-1597,-1643,-1686,-1723,-1747,-1758,-1756,-1743,-1716,-1675,-1618,
+-1551,-1488,-1447,-1441,-1477,-1547,-1632,-1716,-1785,-1840,-1888,-1938,-1996,-2061,-2126,-2185,-2237,-2282,-2326,-2370,-2418,
+-2466,-2511,-2553,-2589,-2618,-2640,-2651,-2653,-2648,-2640,-2639,-2651,-2676,-2712,-2749,-2780,-2801,-2812,-2818,-2828,-2844,
+-2870,-2902,-2938,-2972,-3004,-3031,-3054,-3074,-3095,-3119,-3147,-3179,-3214,-3252,-3290,-3329,-3368,-3404,-3436,-3462,-3485,
+-3509,-3538,-3577,-3623,-3673,-3723,-3770,-3812,-3850,-3884,-3913,-3936,-3954,-3967,-3978,-3990,-4004,-4019,-4038,-4060,-4089,
+-4124,-4162,-4198,-4225,-4240,-4243,-4238,-4229,-4219,-4212,-4209,-4210,-4214,-4216,-4213,-4203,-4187,-4170,-4158,-4153,-4152,
+-4152,-4150,-4147,-4146,-4151,-4156,-4155,-4137,-4102,-4057,-4017,-3994,-3990,-3999,-4004,-3995,-3971,-3939,-3913,-3904,-3914,
+-3943,-3985,-4036,-4091,-4146,-4195,-4235,-4260,-4274,-4280,-4283,-4286,-4292,-4299,-4309,-4322,-4340,-4360,-4378,-4390,-4393,
+-4390,-4382,-4371,-4356,-4337,-4312,-4285,-4261,-4242,-4226,-4208,-4181,-4142,-4096,-4051,-4015,-3991,-3976,-3962,-3948,-3932,
+-3916,-3901,-3885,-3867,-3845,-3827,-3817,-3819,-3830,-3840,-3839,-3824,-3801,-3780,-3772,-3783,-3808,-3844,-3883,-3922,-3952,
+-3966,-3954,-3913,-3847,-3774,-3710,-3668,-3643,-3622,-3587,-3530,-3454,-3371,-3295,-3232,-3180,-3130,-3077,-3019,-2960,-2903,
+-2847,-2790,-2731,-2672,-2616,-2568,-2527,-2489,-2447,-2398,-2342,-2283,-2227,-2175,-2122,-2066,-2004,-1938,-1872,-1812,-1757,
+-1703,-1645,-1580,-1508,-1434,-1362,-1295,-1231,-1165,-1096,-1023,-951,-882,-819,-759,-697,-627,-548,-460,-367,-273,
+-178,-83,10,103,188,263,324,375,419,461,505,552,600,648,693,734,769,797,819,837,853,
+870,890,914,941,969,996,1022,1046,1070,1098,1132,1170,1210,1248,1284,1320,1361,1412,1474,1543,1607,
+1656,1684,1696,1701,1715,1746,1796,1858,1920,1970,2002,2014,2011,1998,1981,1962,1944,1926,1910,1896,1889,
+1891,1903,1924,1951,1980,2007,2032,2053,2072,2088,2099,2105,2105,2096,2077,2049,2010,1966,1924,1894,1882,
+1889,1909,1930,1941,1935,1912,1878,1839,1804,1773,1747,1725,1708,1698,1696,1702,1712,1723,1732,1737,1741,
+1748,1761,1779,1800,1819,1833,1843,1850,1857,1867,1879,1892,1904,1916,1928,1941,1957,1977,1998,2022,2047,
+2076,2108,2142,2177,2211,2239,2261,2273,2278,2278,2278,2285,2302,2329,2364,2402,2439,2473,2502,2512,2485,
+2392,2211,1935,1582,1193,818,503,273,130,62,54,94,174,286,415,538,635,697,728,743,759,
+783,810,830,833,822,808,801,805,811,808,783,740,692,657,648,662,685,699,692,663,623,
+585,553,527,500,463,418,367,320,283,258,241,224,199,156,94,14,-78,-174,-266,-353,-437,
+-517,-592,-648,-672,-658,-617,-575,-564,-605,-693,-797,-876,-900,-861,-777,-675,-573,-473,-365,-242,-117,
+-20,16,-19,-109,-208,-268,-259,-189,-94,-20,1,-32,-102,-178,-237,-274,-297,-322,-358,-408,-467,
+-529,-591,-653,-715,-777,-833,-877,-906,-921,-922,-915,-900,-877,-847,-811,-775,-744,-723,-709,-696,-676,
+-640,-586,-518,-442,-361,-276,-184,-83,25,136,241,336,420,496,567,635,699,755,801,839,872,
+902,932,959,981,997,1008,1017,1027,1039,1052,1064,1075,1082,1088,1092,1095,1097,1098,1096,1091,1084,
+1074,1063,1051,1037,1023,1006,986,964,941,919,898,878,858,837,818,800,785,774,765,757,748,
+737,724,708,690,669,646,622,599,577,557,539,522,502,479,454,427,402,380,363,348,335,
+318,298,273,247,222,199,176,153,129,104,80,58,38,16,-11,-46,-86,-125,-161,-189,-212,
+-231,-252,-275,-303,-335,-373,-416,-461,-504,-541,-571,-598,-625,-657,-694,-731,-766,-797,-827,-859,-894,
+-931,-967,-998,-1026,-1054,-1085,-1118,-1149,-1175,-1196,-1217,-1243,-1276,-1313,-1343,-1362,-1369,-1369,-1372,-1384,-1403,
+-1424,-1439,-1448,-1452,-1458,-1469,-1488,-1510,-1532,-1553,-1574,-1595,-1615,-1632,-1644,-1650,-1648,-1638,-1621,-1600,-1578,
+-1562,-1553,-1552,-1552,-1545,-1527,-1502,-1475,-1454,-1443,-1436,-1425,-1405,-1376,-1347,-1326,-1316,-1312,-1306,-1291,-1270,
+-1255,-1256,-1278,-1319,-1365,-1405,-1432,-1447,-1456,-1467,-1482,-1499,-1514,-1528,-1540,-1553,-1567,-1580,-1588,-1589,-1583,
+-1574,-1566,-1561,-1557,-1548,-1527,-1488,-1433,-1368,-1307,-1267,-1264,-1306,-1389,-1494,-1599,-1682,-1735,-1760,-1771,-1782,
+-1802,-1829,-1856,-1876,-1886,-1887,-1885,-1882,-1880,-1878,-1878,-1884,-1899,-1924,-1952,-1977,-1993,-1999,-2002,-2011,-2030,
+-2059,-2090,-2116,-2132,-2138,-2140,-2139,-2138,-2137,-2134,-2130,-2128,-2129,-2135,-2146,-2162,-2183,-2211,-2242,-2272,-2297,
+-2314,-2324,-2334,-2355,-2393,-2448,-2516,-2589,-2658,-2721,-2776,-2825,-2867,-2905,-2937,-2965,-2994,-3024,-3056,-3086,-3109,
+-3125,-3132,-3136,-3142,-3151,-3164,-3179,-3192,-3202,-3212,-3226,-3245,-3272,-3305,-3339,-3373,-3404,-3433,-3462,-3492,-3525,
+-3558,-3589,-3615,-3638,-3658,-3680,-3706,-3736,-3767,-3797,-3822,-3846,-3871,-3900,-3934,-3969,-4002,-4028,-4046,-4056,-4061,
+-4060,-4057,-4051,-4045,-4042,-4046,-4059,-4079,-4103,-4127,-4151,-4172,-4192,-4208,-4219,-4223,-4219,-4209,-4196,-4185,-4177,
+-4173,-4175,-4183,-4196,-4214,-4233,-4247,-4254,-4250,-4234,-4210,-4180,-4146,-4112,-4078,-4046,-4015,-3984,-3949,-3908,-3861,
+-3811,-3761,-3714,-3672,-3632,-3593,-3555,-3517,-3483,-3451,-3421,-3390,-3357,-3325,-3297,-3272,-3247,-3219,-3178,-3122,-3052,
+-2972,-2888,-2805,-2726,-2655,-2594,-2542,-2496,-2450,-2398,-2337,-2270,-2205,-2151,-2110,-2081,-2058,-2034,-2009,-1984,-1961,
+-1938,-1911,-1875,-1832,-1786,-1747,-1719,-1701,-1686,-1664,-1630,-1585,-1539,-1500,-1471,-1445,-1413,-1364,-1295,-1214,-1132,
+-1061,-1006,-962,-919,-865,-796,-715,-631,-552,-483,-422,-362,-299,-228,-149,-61,41,163,306,465,628,
+778,901,991,1055,1105,1152,1201,1255,1310,1365,1423,1488,1563,1645,1734,1826,1921,2020,2120,2216,2299,
+2358,2390,2399,2395,2391,2395,2411,2439,2476,2524,2583,2655,2738,2825,2911,2992,3067,3140,3215,3294,3375,
+3453,3525,3590,3650,3708,3767,3828,3889,3949,4004,4055,4103,4152,4205,4264,4328,4393,4459,4521,4581,4637,
+4693,4749,4805,4861,4918,4974,5029,5081,5129,5172,5211,5248,5286,5325,5366,5407,5447,5486,5525,5565,5606,
+5649,5691,5733,5774,5814,5850,5881,5908,5934,5964,6001,6045,6092,6134,6166,6190,6211,6233,6259,6285,6305,
+6311,6305,6291,6277,6272,6274,6282,6288,6290,6288,6284,6282,6281,6281,6281,6280,6279,6280,6284,6290,6298,
+6304,6306,6305,6304,6304,6308,6313,6313,6302,6276,6240,6203,6176,6163,6157,6146,6119,6072,6013,5959,5918,
+5892,5872,5848,5815,5779,5749,5730,5721,5713,5703,5698,5713,5763,5850,5957,6053,6108,6112,6071,6010,5953,
+5913,5892,5882,5879,5881,5890,5909,5934,5957,5967,5961,5940,5911,5881,5853,5827,5799,5767,5730,5690,5649,
+5610,5574,5541,5510,5482,5458,5441,5432,5430,5432,5432,5425,5409,5384,5354,5321,5285,5244,5197,5143,5082,
+5017,4953,4890,4832,4779,4732,4690,4655,4624,4598,4576,4556,4530,4519,4511,4503,4493,4480,4464,4451,4444,
+4445,4452,4461,4469,4475,4483,4495,4511,4528,4540,4545,4544,4540,4541,4551,4570,4595,4623,4653,4687,4724,
+4766,4807,4838,4853,4847,4825,4794,4763,4740,4725,4713,4700,4683,4664,4646,4632,4621,4606,4584,4553,4516,
+4479,4449,4425,4404,4382,4357,4330,4305,4286,4275,4270,4264,4255,4237,4209,4171,4125,4074,4026,3988,3962,
+3945,3929,3902,3862,3810,3758,3715,3687,3672,3662,3647,3620,3582,3539,3496,3455,3413,3362,3297,3218,3133,
+3054,2994,2960,2952,2961,2974,2982,2980,2975,2972,2980,2996,3014,3023,3015,2988,2945,2891,2830,2766,2699,
+2636,2579,2533,2501,2479,2466,2460,2460,2465,2473,2475,2459,2420,2358,2283,2207,2142,2090,2043,1992,1931,
+1860,1787,1723,1674,1636,1603,1568,1525,1476,1428,1386,1350,1319,1287,1253,1219,1188,1165,1151,1140,1127,
+1107,1079,1047,1016,990,968,945,916,880,837,793,750,713,681,653,628,604,577,546,510,470,
+427,382,335,282,217,139,46,-53,-153,-247,-332,-407,-474,-533,-587,-636,-683,-732,-786,-843,-900,
+-950,-992,-1024,-1052,-1081,-1112,-1146,-1180,-1214,-1248,-1284,-1323,-1361,-1395,-1423,-1447,-1471,-1499,-1532,-1568,-1603,
+-1637,-1670,-1705,-1742,-1778,-1809,-1831,-1843,-1845,-1837,-1816,-1776,-1716,-1642,-1572,-1525,-1517,-1550,-1614,-1691,-1765,
+-1827,-1879,-1929,-1984,-2046,-2110,-2172,-2226,-2274,-2316,-2357,-2400,-2445,-2492,-2538,-2583,-2623,-2657,-2681,-2694,-2698,
+-2695,-2690,-2692,-2705,-2730,-2764,-2800,-2830,-2850,-2859,-2864,-2870,-2885,-2911,-2946,-2986,-3027,-3063,-3094,-3119,-3140,
+-3159,-3180,-3206,-3236,-3270,-3304,-3338,-3369,-3399,-3427,-3454,-3481,-3509,-3540,-3577,-3620,-3667,-3716,-3763,-3806,-3845,
+-3880,-3913,-3944,-3971,-3995,-4015,-4033,-4049,-4062,-4073,-4084,-4098,-4122,-4155,-4195,-4237,-4274,-4301,-4318,-4326,-4326,
+-4318,-4304,-4285,-4265,-4249,-4237,-4227,-4214,-4196,-4172,-4147,-4124,-4107,-4097,-4093,-4096,-4106,-4121,-4137,-4144,-4134,
+-4105,-4065,-4028,-4004,-4000,-4010,-4021,-4023,-4012,-3993,-3973,-3961,-3963,-3980,-4012,-4055,-4105,-4156,-4201,-4236,-4259,
+-4276,-4290,-4305,-4321,-4334,-4342,-4346,-4346,-4345,-4343,-4340,-4336,-4334,-4337,-4345,-4355,-4358,-4350,-4331,-4308,-4292,
+-4287,-4289,-4284,-4260,-4213,-4152,-4092,-4048,-4022,-4009,-3999,-3984,-3968,-3956,-3954,-3957,-3957,-3945,-3919,-3887,-3860,
+-3844,-3840,-3842,-3839,-3830,-3816,-3801,-3788,-3781,-3779,-3786,-3804,-3831,-3860,-3880,-3881,-3860,-3824,-3782,-3743,-3706,
+-3661,-3603,-3528,-3445,-3366,-3298,-3242,-3190,-3134,-3072,-3007,-2947,-2895,-2849,-2801,-2748,-2690,-2631,-2579,-2535,-2494,
+-2451,-2402,-2347,-2291,-2236,-2184,-2130,-2072,-2007,-1939,-1872,-1809,-1750,-1692,-1630,-1564,-1494,-1424,-1358,-1296,-1234,
+-1170,-1101,-1029,-958,-890,-826,-762,-693,-615,-528,-435,-341,-248,-155,-61,32,122,205,274,330,374,
+414,455,500,549,599,647,693,736,777,816,853,887,916,942,965,985,1005,1023,1039,1055,1072,
+1092,1120,1156,1197,1241,1283,1321,1359,1402,1455,1517,1581,1636,1676,1699,1712,1727,1754,1796,1849,1906,
+1957,1996,2021,2034,2036,2031,2022,2011,1999,1985,1969,1953,1941,1936,1941,1957,1980,2006,2034,2062,2090,
+2117,2142,2158,2165,2159,2141,2113,2076,2030,1981,1936,1907,1901,1921,1957,1995,2017,2014,1986,1941,1890,
+1844,1807,1780,1760,1747,1740,1739,1743,1749,1753,1755,1755,1757,1764,1778,1795,1812,1825,1834,1839,1845,
+1855,1870,1888,1905,1918,1928,1937,1948,1964,1985,2010,2037,2065,2095,2128,2163,2199,2232,2256,2268,2269,
+2264,2260,2267,2292,2335,2392,2450,2498,2529,2537,2522,2476,2387,2235,2005,1697,1331,948,598,324,148,
+70,73,135,232,348,468,576,662,715,740,749,756,774,801,826,835,823,796,768,754,755,
+762,757,728,678,623,586,580,602,634,653,643,606,558,518,497,493,493,482,454,413,369,
+332,303,279,253,220,178,131,84,39,-3,-48,-100,-163,-237,-316,-389,-448,-487,-513,-542,-593,
+-675,-783,-895,-986,-1037,-1046,-1026,-993,-955,-906,-836,-741,-638,-558,-529,-563,-640,-723,-768,-757,-699,
+-626,-577,-574,-613,-672,-728,-764,-782,-794,-814,-846,-887,-928,-964,-994,-1022,-1051,-1081,-1104,-1114,-1108,
+-1088,-1059,-1027,-995,-961,-919,-866,-802,-732,-661,-594,-531,-467,-399,-324,-241,-153,-64,26,118,212,
+305,395,477,549,610,664,712,755,792,824,852,877,901,925,949,970,987,999,1008,1015,1021,
+1029,1036,1043,1047,1049,1049,1046,1042,1039,1037,1035,1030,1023,1012,1000,988,978,967,955,938,918,
+896,875,854,835,813,790,766,745,729,718,710,700,686,669,652,635,620,604,585,561,534,
+509,487,469,452,434,413,388,361,335,312,292,276,260,244,225,204,181,158,135,113,90,
+64,36,8,-18,-42,-64,-89,-118,-151,-188,-222,-251,-273,-291,-309,-329,-356,-389,-428,-473,-520,
+-564,-602,-633,-661,-688,-720,-754,-790,-823,-853,-883,-917,-954,-994,-1032,-1064,-1090,-1115,-1144,-1178,-1214,
+-1246,-1272,-1293,-1314,-1339,-1368,-1396,-1418,-1430,-1436,-1441,-1449,-1462,-1477,-1490,-1500,-1509,-1517,-1528,-1541,-1555,
+-1570,-1588,-1608,-1631,-1656,-1681,-1704,-1722,-1733,-1733,-1718,-1687,-1645,-1602,-1567,-1548,-1544,-1548,-1553,-1551,-1544,
+-1534,-1524,-1515,-1506,-1496,-1485,-1475,-1466,-1458,-1445,-1424,-1396,-1368,-1347,-1343,-1357,-1387,-1422,-1455,-1479,-1495,
+-1505,-1511,-1519,-1529,-1543,-1561,-1583,-1606,-1625,-1636,-1639,-1632,-1621,-1608,-1596,-1586,-1579,-1573,-1565,-1549,-1521,
+-1475,-1415,-1354,-1311,-1305,-1346,-1427,-1527,-1619,-1684,-1716,-1727,-1733,-1750,-1781,-1818,-1851,-1871,-1878,-1878,-1878,
+-1879,-1884,-1889,-1896,-1905,-1918,-1934,-1950,-1962,-1968,-1972,-1980,-1996,-2021,-2051,-2077,-2097,-2107,-2110,-2108,-2104,
+-2099,-2093,-2090,-2089,-2091,-2096,-2104,-2115,-2132,-2156,-2188,-2223,-2254,-2277,-2291,-2304,-2323,-2355,-2400,-2454,-2509,
+-2561,-2609,-2656,-2704,-2754,-2802,-2844,-2880,-2910,-2938,-2964,-2991,-3015,-3036,-3054,-3069,-3084,-3098,-3111,-3123,-3133,
+-3144,-3157,-3175,-3199,-3228,-3260,-3293,-3325,-3355,-3383,-3410,-3436,-3461,-3488,-3513,-3539,-3564,-3590,-3618,-3646,-3674,
+-3698,-3719,-3736,-3752,-3774,-3805,-3844,-3889,-3931,-3965,-3986,-3996,-3998,-3997,-3995,-3992,-3992,-3994,-4003,-4020,-4044,
+-4071,-4098,-4121,-4138,-4149,-4157,-4160,-4160,-4154,-4143,-4130,-4118,-4112,-4112,-4121,-4136,-4155,-4176,-4197,-4213,-4222,
+-4221,-4211,-4191,-4165,-4134,-4100,-4067,-4034,-4003,-3971,-3934,-3891,-3840,-3785,-3731,-3682,-3640,-3603,-3568,-3532,-3496,
+-3461,-3429,-3400,-3373,-3349,-3325,-3301,-3276,-3245,-3206,-3155,-3092,-3018,-2936,-2849,-2761,-2675,-2596,-2532,-2483,-2447,
+-2415,-2379,-2333,-2282,-2232,-2192,-2164,-2143,-2120,-2090,-2055,-2018,-1986,-1959,-1933,-1902,-1865,-1827,-1796,-1777,-1767,
+-1758,-1738,-1701,-1653,-1604,-1565,-1539,-1520,-1496,-1455,-1392,-1313,-1229,-1152,-1085,-1027,-970,-907,-835,-758,-682,
+-613,-552,-492,-427,-353,-269,-176,-76,33,160,305,463,622,766,881,966,1028,1080,1133,1191,1252,
+1310,1364,1419,1480,1552,1636,1727,1820,1914,2010,2109,2206,2294,2363,2406,2425,2426,2422,2421,2428,2444,
+2469,2505,2558,2629,2716,2812,2906,2990,3064,3132,3199,3271,3350,3429,3505,3572,3632,3688,3743,3802,3863,
+3923,3980,4031,4079,4127,4178,4236,4298,4363,4425,4484,4541,4597,4655,4715,4777,4837,4895,4950,5003,5054,
+5100,5142,5179,5213,5248,5287,5329,5373,5414,5453,5490,5529,5570,5613,5657,5699,5737,5773,5806,5838,5870,
+5903,5938,5978,6020,6064,6104,6137,6165,6192,6221,6254,6288,6317,6334,6336,6327,6313,6302,6296,6295,6296,
+6295,6293,6290,6287,6286,6286,6288,6290,6291,6292,6292,6293,6296,6300,6304,6306,6305,6304,6304,6307,6309,
+6304,6286,6254,6217,6185,6165,6158,6152,6135,6100,6050,5996,5952,5920,5897,5873,5845,5813,5786,5767,5755,
+5742,5724,5707,5706,5738,5807,5899,5987,6042,6049,6014,5956,5898,5857,5836,5829,5832,5840,5855,5878,5907,
+5935,5955,5961,5952,5931,5903,5872,5841,5810,5778,5742,5702,5659,5613,5570,5532,5502,5480,5465,5456,5451,
+5446,5440,5429,5415,5396,5375,5352,5326,5293,5250,5196,5132,5064,4996,4932,4870,4810,4752,4699,4652,4614,
+4585,4562,4544,4530,4508,4493,4484,4479,4475,4468,4459,4450,4447,4450,4459,4468,4475,4480,4487,4501,4521,
+4545,4567,4584,4596,4608,4623,4642,4662,4680,4694,4707,4725,4752,4786,4822,4850,4863,4858,4839,4816,4795,
+4780,4768,4755,4737,4716,4697,4683,4677,4673,4665,4648,4620,4585,4548,4514,4485,4457,4428,4398,4370,4348,
+4336,4333,4334,4335,4331,4319,4296,4260,4214,4160,4106,4062,4033,4017,4008,3995,3969,3930,3883,3837,3800,
+3771,3747,3718,3682,3639,3593,3552,3516,3482,3441,3384,3309,3221,3133,3060,3015,2999,3005,3020,3032,3036,
+3036,3037,3045,3059,3069,3069,3052,3021,2981,2939,2896,2850,2801,2748,2696,2650,2612,2580,2550,2520,2492,
+2469,2453,2440,2422,2391,2344,2285,2223,2167,2118,2073,2023,1961,1888,1810,1736,1676,1629,1591,1554,1512,
+1465,1416,1372,1335,1303,1272,1239,1204,1171,1146,1132,1126,1122,1111,1092,1066,1038,1013,991,970,944,
+910,868,822,776,734,697,662,630,598,564,528,489,447,402,355,303,243,169,77,-29,-144,
+-256,-357,-443,-514,-575,-629,-679,-726,-772,-819,-871,-926,-982,-1034,-1079,-1114,-1143,-1170,-1198,-1230,-1265,
+-1304,-1345,-1386,-1426,-1460,-1487,-1508,-1530,-1557,-1591,-1630,-1668,-1702,-1730,-1757,-1786,-1820,-1854,-1884,-1906,-1920,
+-1926,-1922,-1901,-1855,-1785,-1700,-1622,-1575,-1572,-1612,-1679,-1752,-1815,-1866,-1912,-1961,-2019,-2083,-2148,-2207,-2259,
+-2305,-2348,-2391,-2434,-2478,-2524,-2571,-2619,-2664,-2702,-2730,-2746,-2751,-2750,-2748,-2750,-2761,-2782,-2811,-2842,-2871,
+-2891,-2903,-2911,-2921,-2939,-2969,-3009,-3054,-3099,-3138,-3170,-3195,-3214,-3231,-3247,-3265,-3286,-3310,-3334,-3357,-3378,
+-3401,-3426,-3455,-3489,-3526,-3565,-3607,-3650,-3693,-3736,-3776,-3815,-3852,-3889,-3926,-3963,-3997,-4030,-4060,-4086,-4109,
+-4127,-4138,-4147,-4157,-4174,-4202,-4238,-4278,-4315,-4346,-4369,-4385,-4393,-4390,-4376,-4351,-4321,-4293,-4270,-4251,-4231,
+-4202,-4163,-4118,-4078,-4049,-4036,-4040,-4056,-4081,-4110,-4138,-4157,-4163,-4151,-4125,-4093,-4065,-4045,-4037,-4037,-4039,
+-4039,-4033,-4023,-4012,-4003,-4003,-4016,-4042,-4080,-4123,-4166,-4205,-4243,-4282,-4322,-4362,-4395,-4415,-4421,-4417,-4408,
+-4397,-4383,-4367,-4349,-4333,-4327,-4330,-4338,-4340,-4329,-4306,-4282,-4270,-4279,-4300,-4315,-4305,-4262,-4197,-4129,-4075,
+-4043,-4025,-4011,-3992,-3974,-3969,-3982,-4010,-4038,-4048,-4032,-3995,-3952,-3919,-3902,-3897,-3898,-3895,-3886,-3872,-3855,
+-3836,-3817,-3804,-3803,-3817,-3843,-3872,-3890,-3888,-3867,-3829,-3781,-3725,-3661,-3588,-3509,-3433,-3367,-3311,-3259,-3204,
+-3138,-3065,-2995,-2935,-2889,-2850,-2809,-2760,-2702,-2642,-2588,-2541,-2498,-2454,-2404,-2349,-2294,-2240,-2188,-2135,-2077,
+-2013,-1945,-1878,-1814,-1753,-1693,-1631,-1565,-1495,-1424,-1356,-1290,-1226,-1164,-1099,-1033,-966,-898,-829,-757,-680,
+-597,-508,-415,-322,-228,-134,-40,52,140,218,283,335,378,418,460,506,555,604,651,696,740,
+785,832,880,926,968,1002,1028,1046,1058,1067,1075,1085,1099,1119,1148,1186,1230,1275,1318,1357,1397,
+1442,1495,1554,1611,1659,1694,1719,1743,1773,1813,1861,1910,1952,1985,2011,2032,2048,2060,2067,2069,2066,
+2060,2050,2035,2017,1997,1982,1976,1982,1999,2024,2054,2088,2124,2160,2190,2209,2214,2202,2178,2143,2100,
+2051,1999,1955,1928,1929,1958,2006,2054,2085,2087,2060,2013,1957,1902,1855,1819,1794,1779,1774,1775,1777,
+1778,1775,1771,1771,1777,1790,1807,1824,1836,1844,1848,1853,1862,1877,1895,1914,1930,1941,1950,1957,1966,
+1980,1998,2022,2048,2078,2109,2142,2176,2208,2234,2250,2254,2248,2239,2240,2259,2305,2373,2452,2524,2570,
+2576,2539,2459,2339,2176,1964,1697,1380,1037,701,416,213,109,98,160,268,394,519,627,709,760,
+784,788,785,786,797,812,823,819,799,767,738,720,715,713,699,664,611,556,519,515,540,
+578,601,592,552,497,450,428,433,450,463,459,439,410,383,360,338,307,264,211,156,108,
+75,56,45,33,14,-17,-59,-109,-160,-208,-255,-307,-372,-456,-556,-663,-764,-847,-911,-959,-999,
+-1031,-1051,-1054,-1037,-1013,-999,-1011,-1054,-1115,-1169,-1193,-1179,-1138,-1092,-1065,-1065,-1083,-1103,-1110,-1098,-1076,
+-1056,-1048,-1053,-1064,-1071,-1070,-1062,-1050,-1040,-1029,-1012,-984,-943,-894,-845,-802,-766,-730,-687,-630,-555,
+-468,-378,-291,-212,-140,-70,0,75,153,230,305,376,442,503,559,609,656,699,739,775,806,
+833,856,877,898,919,940,958,972,982,989,993,995,996,997,998,999,1002,1003,1002,996,987,
+978,970,965,959,952,941,929,919,912,907,900,889,871,850,829,810,791,769,743,716,691,
+674,663,655,645,629,608,586,566,551,536,520,498,473,448,425,406,387,366,342,316,288,
+262,238,216,196,178,162,146,129,110,90,68,46,23,0,-28,-59,-89,-117,-143,-166,-191,
+-219,-251,-284,-314,-338,-359,-378,-398,-423,-453,-489,-529,-571,-613,-651,-684,-715,-747,-781,-818,-855,
+-890,-921,-950,-981,-1017,-1056,-1094,-1126,-1153,-1177,-1203,-1235,-1271,-1307,-1339,-1365,-1386,-1406,-1427,-1449,-1469,
+-1485,-1497,-1507,-1516,-1526,-1536,-1546,-1555,-1564,-1575,-1586,-1597,-1608,-1619,-1631,-1646,-1664,-1685,-1708,-1736,-1767,
+-1798,-1822,-1830,-1814,-1773,-1714,-1650,-1596,-1560,-1545,-1544,-1550,-1555,-1556,-1553,-1550,-1551,-1558,-1572,-1587,-1598,
+-1597,-1582,-1556,-1525,-1498,-1481,-1476,-1481,-1493,-1507,-1522,-1534,-1544,-1549,-1550,-1550,-1555,-1567,-1590,-1619,-1645,
+-1663,-1667,-1662,-1652,-1644,-1637,-1630,-1620,-1605,-1589,-1576,-1566,-1553,-1527,-1479,-1415,-1352,-1313,-1318,-1372,-1460,
+-1555,-1630,-1674,-1690,-1698,-1714,-1746,-1788,-1827,-1853,-1864,-1866,-1869,-1877,-1891,-1904,-1912,-1914,-1913,-1911,-1911,
+-1911,-1912,-1915,-1924,-1941,-1967,-1998,-2030,-2056,-2073,-2081,-2080,-2072,-2062,-2053,-2048,-2049,-2053,-2059,-2065,-2073,
+-2085,-2107,-2140,-2179,-2217,-2247,-2268,-2282,-2300,-2327,-2363,-2405,-2446,-2482,-2514,-2548,-2589,-2638,-2690,-2739,-2781,
+-2816,-2845,-2872,-2901,-2930,-2960,-2988,-3012,-3031,-3046,-3056,-3064,-3072,-3084,-3101,-3124,-3152,-3181,-3210,-3237,-3265,
+-3292,-3320,-3348,-3374,-3398,-3421,-3445,-3470,-3498,-3527,-3555,-3582,-3603,-3620,-3634,-3647,-3665,-3691,-3728,-3775,-3825,
+-3871,-3906,-3929,-3940,-3944,-3946,-3949,-3954,-3960,-3968,-3979,-3997,-4020,-4047,-4073,-4093,-4106,-4112,-4115,-4115,-4113,
+-4106,-4094,-4078,-4063,-4052,-4051,-4058,-4073,-4092,-4114,-4135,-4154,-4168,-4177,-4177,-4167,-4149,-4123,-4094,-4064,-4034,
+-4004,-3972,-3935,-3889,-3835,-3775,-3717,-3665,-3621,-3584,-3551,-3518,-3484,-3449,-3417,-3388,-3364,-3340,-3316,-3288,-3253,
+-3211,-3161,-3104,-3042,-2975,-2902,-2824,-2740,-2655,-2576,-2510,-2462,-2428,-2401,-2370,-2332,-2290,-2254,-2230,-2218,-2208,
+-2190,-2158,-2115,-2070,-2033,-2007,-1988,-1967,-1941,-1912,-1887,-1871,-1862,-1851,-1828,-1789,-1737,-1684,-1641,-1612,-1591,
+-1568,-1531,-1475,-1404,-1324,-1246,-1171,-1099,-1029,-956,-882,-810,-743,-680,-616,-543,-456,-356,-248,-139,-32,
+74,190,319,460,604,736,845,930,997,1059,1124,1192,1259,1319,1371,1421,1478,1549,1635,1732,1832,
+1930,2025,2117,2205,2284,2346,2387,2406,2411,2411,2413,2421,2436,2457,2490,2539,2609,2699,2800,2900,2988,
+3060,3121,3180,3244,3317,3396,3475,3546,3609,3667,3723,3781,3842,3903,3959,4011,4058,4106,4157,4215,4277,
+4341,4401,4458,4513,4570,4630,4693,4757,4819,4876,4931,4983,5034,5081,5123,5158,5188,5220,5256,5296,5339,
+5381,5419,5456,5495,5538,5585,5631,5673,5707,5737,5765,5796,5831,5871,5912,5956,6000,6045,6087,6126,6159,
+6188,6216,6247,6280,6312,6338,6353,6356,6349,6336,6323,6313,6307,6305,6304,6303,6301,6298,6294,6292,6292,
+6291,6290,6288,6286,6287,6292,6299,6305,6307,6305,6301,6299,6300,6299,6289,6267,6235,6202,6180,6172,6171,
+6164,6140,6098,6045,5993,5953,5922,5898,5873,5847,5823,5806,5792,5777,5756,5733,5720,5729,5767,5825,5884,
+5923,5930,5908,5872,5837,5814,5802,5799,5800,5805,5817,5839,5870,5904,5934,5951,5952,5936,5907,5872,5837,
+5805,5774,5743,5707,5664,5616,5569,5527,5496,5477,5466,5460,5455,5446,5434,5417,5397,5377,5360,5343,5322,
+5293,5249,5191,5123,5053,4984,4919,4857,4795,4734,4679,4633,4597,4570,4548,4527,4508,4499,4477,4464,4460,
+4461,4460,4456,4450,4446,4447,4451,4457,4462,4470,4482,4503,4530,4561,4589,4613,4635,4659,4687,4716,4742,
+4759,4767,4771,4777,4790,4810,4831,4845,4849,4843,4833,4823,4816,4809,4797,4779,4755,4731,4714,4709,4713,
+4719,4718,4705,4678,4644,4608,4574,4543,4513,4481,4448,4419,4396,4381,4374,4370,4367,4363,4357,4345,4325,
+4294,4251,4200,4152,4114,4091,4081,4074,4062,4037,4000,3955,3908,3863,3820,3776,3728,3678,3628,3584,3548,
+3516,3480,3431,3363,3279,3191,3114,3063,3043,3048,3066,3085,3097,3103,3108,3115,3124,3126,3116,3093,3060,
+3027,2997,2969,2939,2900,2852,2801,2753,2712,2676,2639,2598,2553,2508,2468,2435,2406,2374,2333,2284,2232,
+2182,2137,2096,2053,1999,1932,1853,1770,1692,1623,1567,1520,1476,1433,1391,1351,1317,1288,1259,1227,1192,
+1157,1129,1113,1109,1111,1111,1102,1083,1059,1034,1011,991,967,936,898,852,805,757,711,668,625,
+584,544,503,461,416,369,318,262,193,107,2,-120,-248,-369,-471,-549,-607,-652,-694,-736,-780,
+-825,-871,-918,-967,-1017,-1066,-1110,-1149,-1184,-1217,-1252,-1292,-1336,-1382,-1429,-1470,-1504,-1525,-1537,-1546,-1559,
+-1583,-1618,-1658,-1697,-1729,-1755,-1782,-1814,-1854,-1895,-1932,-1961,-1983,-1997,-2000,-1979,-1927,-1843,-1742,-1653,-1604,
+-1608,-1658,-1730,-1801,-1856,-1898,-1937,-1988,-2051,-2122,-2190,-2248,-2298,-2342,-2385,-2429,-2472,-2516,-2561,-2610,-2662,
+-2714,-2758,-2789,-2807,-2812,-2811,-2808,-2810,-2819,-2837,-2861,-2891,-2919,-2942,-2957,-2969,-2983,-3005,-3039,-3082,-3128,
+-3170,-3206,-3234,-3255,-3272,-3285,-3297,-3309,-3322,-3336,-3350,-3365,-3381,-3401,-3426,-3459,-3497,-3539,-3581,-3621,-3660,
+-3697,-3735,-3774,-3813,-3852,-3892,-3932,-3970,-4006,-4040,-4074,-4106,-4137,-4164,-4186,-4203,-4219,-4240,-4267,-4299,-4332,
+-4362,-4387,-4406,-4422,-4434,-4439,-4432,-4414,-4388,-4359,-4332,-4304,-4271,-4225,-4168,-4106,-4054,-4023,-4016,-4029,-4053,
+-4079,-4103,-4124,-4143,-4158,-4166,-4162,-4143,-4114,-4079,-4050,-4033,-4030,-4037,-4046,-4050,-4046,-4037,-4031,-4036,-4054,
+-4083,-4118,-4157,-4200,-4254,-4319,-4392,-4459,-4508,-4531,-4530,-4517,-4502,-4492,-4485,-4474,-4457,-4435,-4415,-4401,-4390,
+-4374,-4345,-4306,-4268,-4248,-4254,-4280,-4307,-4312,-4285,-4230,-4168,-4117,-4085,-4065,-4047,-4025,-4003,-3994,-4008,-4041,
+-4079,-4102,-4098,-4070,-4032,-3998,-3976,-3966,-3961,-3954,-3945,-3936,-3928,-3919,-3907,-3894,-3884,-3882,-3889,-3902,-3910,
+-3904,-3879,-3837,-3781,-3715,-3642,-3566,-3491,-3423,-3366,-3316,-3266,-3208,-3138,-3063,-2993,-2935,-2890,-2851,-2809,-2758,
+-2700,-2643,-2591,-2547,-2504,-2458,-2405,-2348,-2290,-2234,-2182,-2130,-2074,-2013,-1949,-1884,-1821,-1761,-1702,-1641,-1575,
+-1502,-1425,-1348,-1274,-1207,-1146,-1089,-1030,-966,-897,-822,-743,-662,-578,-490,-398,-303,-206,-108,-11,80,
+165,239,300,351,394,434,477,523,572,622,671,718,765,812,861,913,963,1010,1049,1077,1094,
+1101,1105,1108,1115,1128,1148,1177,1213,1255,1299,1342,1384,1427,1475,1529,1585,1638,1683,1719,1750,1785,
+1827,1874,1921,1960,1988,2009,2028,2049,2071,2088,2098,2099,2095,2089,2081,2070,2053,2032,2012,2001,2003,
+2019,2045,2079,2117,2157,2194,2225,2242,2243,2230,2204,2169,2127,2078,2028,1985,1961,1964,1995,2043,2091,
+2123,2130,2112,2074,2024,1969,1914,1866,1830,1810,1805,1807,1810,1807,1800,1794,1796,1809,1829,1848,1863,
+1870,1873,1878,1889,1904,1922,1938,1952,1963,1974,1984,1994,2004,2013,2024,2039,2060,2088,2120,2153,2183,
+2206,2222,2228,2227,2221,2218,2228,2259,2315,2390,2468,2526,2543,2503,2405,2255,2063,1836,1579,1298,1003,
+717,467,281,177,157,209,308,430,551,656,736,788,817,828,830,828,827,825,821,809,789,
+762,733,707,687,672,657,633,595,545,492,454,445,467,507,542,551,525,472,414,374,363,
+376,399,415,417,407,393,379,366,345,311,263,206,149,102,72,58,58,63,68,66,54,
+31,1,-34,-74,-120,-175,-242,-322,-410,-500,-588,-670,-747,-819,-887,-950,-1006,-1059,-1109,-1160,-1210,
+-1252,-1279,-1285,-1273,-1251,-1231,-1218,-1214,-1210,-1196,-1166,-1123,-1075,-1032,-1000,-976,-955,-930,-898,-861,-820,
+-779,-735,-684,-626,-562,-499,-445,-404,-374,-347,-313,-264,-198,-119,-38,37,103,158,209,259,312,
+370,429,486,536,579,616,646,675,703,733,763,793,820,844,865,884,903,922,937,948,955,
+959,961,963,963,960,954,949,946,946,948,947,941,930,916,905,896,890,883,873,861,851,
+845,843,841,833,819,800,781,763,746,726,701,672,644,623,610,602,591,575,553,528,505,
+485,468,450,430,409,388,368,348,325,299,270,241,214,191,169,149,129,110,93,78,62,
+43,20,-4,-28,-50,-71,-94,-121,-151,-182,-211,-238,-265,-293,-324,-355,-386,-414,-439,-462,-486,
+-511,-537,-565,-596,-628,-663,-699,-735,-769,-803,-839,-878,-919,-957,-990,-1018,-1046,-1076,-1111,-1148,-1183,
+-1214,-1239,-1264,-1291,-1323,-1358,-1392,-1422,-1446,-1467,-1486,-1503,-1520,-1536,-1551,-1566,-1579,-1591,-1601,-1609,-1616,
+-1623,-1632,-1642,-1652,-1663,-1674,-1685,-1697,-1709,-1720,-1732,-1751,-1780,-1823,-1871,-1914,-1937,-1927,-1882,-1810,-1725,
+-1646,-1584,-1546,-1528,-1522,-1520,-1519,-1522,-1535,-1562,-1602,-1646,-1680,-1692,-1682,-1656,-1625,-1602,-1589,-1583,-1580,
+-1576,-1572,-1572,-1575,-1579,-1580,-1575,-1566,-1563,-1572,-1595,-1625,-1650,-1661,-1657,-1646,-1637,-1637,-1645,-1650,-1644,
+-1625,-1599,-1574,-1559,-1551,-1538,-1508,-1456,-1393,-1340,-1322,-1352,-1421,-1508,-1587,-1640,-1667,-1682,-1700,-1731,-1771,
+-1807,-1830,-1837,-1836,-1836,-1846,-1863,-1882,-1895,-1897,-1890,-1877,-1863,-1850,-1842,-1840,-1848,-1867,-1897,-1935,-1975,
+-2010,-2035,-2049,-2051,-2043,-2030,-2018,-2010,-2011,-2017,-2024,-2028,-2031,-2037,-2054,-2084,-2125,-2169,-2207,-2235,-2255,
+-2275,-2302,-2336,-2373,-2406,-2432,-2453,-2475,-2505,-2546,-2593,-2641,-2684,-2722,-2756,-2790,-2827,-2866,-2904,-2938,-2966,
+-2986,-3000,-3009,-3016,-3025,-3038,-3056,-3080,-3106,-3134,-3160,-3185,-3212,-3241,-3273,-3306,-3338,-3368,-3394,-3420,-3446,
+-3473,-3499,-3521,-3537,-3547,-3554,-3564,-3580,-3606,-3643,-3689,-3740,-3790,-3834,-3867,-3889,-3902,-3910,-3918,-3927,-3938,
+-3950,-3962,-3976,-3992,-4013,-4035,-4055,-4070,-4076,-4078,-4077,-4077,-4075,-4069,-4056,-4036,-4014,-3996,-3986,-3987,-3995,
+-4010,-4028,-4050,-4074,-4097,-4117,-4128,-4128,-4119,-4101,-4080,-4058,-4035,-4011,-3981,-3945,-3899,-3845,-3785,-3726,-3671,
+-3624,-3585,-3551,-3518,-3484,-3451,-3420,-3393,-3368,-3342,-3311,-3274,-3228,-3175,-3117,-3058,-2999,-2938,-2874,-2804,-2727,
+-2649,-2576,-2517,-2476,-2447,-2422,-2392,-2355,-2315,-2284,-2269,-2266,-2266,-2254,-2224,-2182,-2139,-2108,-2093,-2087,-2079,
+-2061,-2033,-2003,-1976,-1955,-1935,-1907,-1867,-1819,-1769,-1726,-1693,-1666,-1636,-1595,-1541,-1475,-1403,-1328,-1251,-1174,
+-1097,-1019,-946,-877,-811,-742,-663,-565,-450,-322,-194,-74,32,131,230,340,461,587,708,815,903,
+979,1051,1122,1193,1259,1315,1362,1408,1465,1540,1637,1748,1864,1975,2076,2166,2243,2304,2347,2370,2376,
+2373,2370,2373,2385,2405,2431,2467,2517,2587,2675,2776,2875,2964,3037,3098,3156,3220,3292,3370,3449,3522,
+3587,3648,3707,3767,3828,3887,3943,3993,4040,4088,4140,4198,4260,4322,4381,4437,4493,4551,4613,4679,4745,
+4808,4865,4919,4971,5022,5070,5113,5148,5178,5207,5242,5281,5323,5363,5398,5433,5470,5514,5563,5612,5655,
+5689,5716,5743,5775,5814,5858,5903,5948,5992,6037,6084,6129,6168,6198,6222,6243,6265,6291,6320,6347,6365,
+6373,6369,6358,6346,6336,6331,6331,6331,6329,6324,6316,6309,6303,6299,6294,6288,6281,6277,6279,6287,6296,
+6301,6300,6293,6286,6284,6286,6284,6273,6250,6221,6196,6182,6178,6174,6158,6126,6079,6028,5983,5948,5920,
+5895,5869,5844,5824,5807,5792,5773,5752,5733,5723,5728,5745,5765,5778,5780,5773,5767,5765,5768,5773,5773,
+5770,5768,5776,5799,5836,5878,5915,5936,5938,5921,5890,5853,5818,5787,5761,5735,5703,5664,5619,5573,5533,
+5503,5482,5468,5457,5445,5430,5411,5388,5364,5342,5323,5307,5289,5262,5222,5169,5107,5041,4977,4913,4850,
+4786,4725,4671,4630,4599,4575,4552,4526,4499,4499,4478,4468,4469,4475,4479,4477,4470,4461,4452,4447,4446,
+4450,4463,4485,4516,4550,4584,4611,4634,4658,4687,4722,4759,4791,4813,4825,4831,4835,4841,4847,4849,4845,
+4835,4826,4822,4824,4828,4827,4815,4790,4759,4732,4719,4720,4732,4744,4746,4735,4711,4682,4652,4625,4599,
+4572,4543,4513,4484,4459,4438,4420,4404,4389,4378,4373,4371,4369,4360,4337,4300,4255,4212,4180,4161,4153,
+4146,4130,4101,4057,4001,3940,3878,3816,3756,3697,3641,3591,3550,3514,3478,3432,3372,3297,3217,3147,3099,
+3081,3089,3110,3134,3151,3161,3169,3177,3184,3184,3172,3150,3122,3096,3075,3056,3032,2996,2949,2896,2844,
+2800,2761,2720,2674,2619,2559,2503,2453,2412,2374,2335,2291,2244,2196,2152,2113,2075,2032,1978,1907,1822,
+1731,1643,1566,1505,1456,1415,1378,1342,1308,1275,1244,1211,1175,1140,1111,1093,1089,1095,1102,1101,1090,
+1069,1045,1021,1000,977,950,916,873,824,772,718,665,615,567,522,478,432,383,331,274,208,
+130,33,-84,-218,-353,-475,-570,-634,-675,-704,-733,-769,-812,-857,-902,-944,-987,-1030,-1074,-1117,-1158,
+-1199,-1240,-1283,-1330,-1378,-1426,-1469,-1505,-1529,-1539,-1540,-1537,-1541,-1557,-1585,-1620,-1654,-1684,-1712,-1747,-1792,
+-1845,-1901,-1950,-1989,-2021,-2046,-2058,-2044,-1990,-1898,-1785,-1685,-1631,-1636,-1690,-1765,-1833,-1881,-1917,-1957,-2014,
+-2089,-2170,-2243,-2301,-2345,-2384,-2424,-2467,-2511,-2556,-2603,-2655,-2712,-2768,-2816,-2849,-2865,-2868,-2865,-2863,-2865,
+-2875,-2892,-2918,-2949,-2980,-3006,-3025,-3038,-3052,-3074,-3106,-3148,-3190,-3228,-3258,-3280,-3297,-3311,-3323,-3335,-3345,
+-3356,-3368,-3381,-3396,-3411,-3430,-3454,-3484,-3519,-3556,-3593,-3628,-3661,-3696,-3733,-3772,-3812,-3852,-3890,-3926,-3960,
+-3992,-4024,-4057,-4093,-4131,-4169,-4206,-4239,-4269,-4299,-4329,-4360,-4388,-4411,-4429,-4444,-4460,-4475,-4488,-4493,-4485,
+-4467,-4441,-4413,-4381,-4339,-4287,-4225,-4164,-4119,-4099,-4103,-4119,-4133,-4133,-4120,-4104,-4096,-4103,-4121,-4138,-4141,
+-4124,-4091,-4056,-4032,-4027,-4038,-4054,-4065,-4068,-4067,-4072,-4089,-4116,-4145,-4170,-4191,-4218,-4265,-4338,-4427,-4514,
+-4576,-4602,-4597,-4578,-4564,-4564,-4574,-4583,-4582,-4568,-4546,-4522,-4497,-4466,-4424,-4372,-4319,-4280,-4266,-4274,-4291,
+-4298,-4284,-4250,-4209,-4176,-4155,-4144,-4131,-4110,-4085,-4064,-4060,-4072,-4092,-4106,-4104,-4089,-4067,-4048,-4034,-4024,
+-4011,-3995,-3979,-3970,-3969,-3974,-3976,-3972,-3961,-3948,-3938,-3930,-3921,-3904,-3874,-3830,-3774,-3709,-3636,-3560,-3486,
+-3419,-3363,-3314,-3265,-3208,-3142,-3071,-3003,-2945,-2896,-2850,-2800,-2744,-2686,-2633,-2587,-2546,-2504,-2456,-2399,-2337,
+-2276,-2220,-2168,-2117,-2064,-2007,-1946,-1884,-1823,-1764,-1706,-1645,-1580,-1506,-1427,-1346,-1269,-1201,-1141,-1085,-1027,
+-961,-886,-805,-723,-640,-557,-471,-380,-283,-182,-82,14,104,186,257,317,368,411,450,491,535,
+585,639,695,749,800,848,895,944,995,1044,1087,1118,1135,1141,1141,1141,1147,1159,1179,1205,1238,
+1276,1319,1364,1410,1457,1507,1559,1612,1661,1705,1744,1781,1823,1869,1916,1957,1988,2009,2027,2048,2071,
+2092,2103,2102,2091,2079,2070,2066,2061,2053,2040,2028,2025,2034,2056,2087,2122,2157,2192,2224,2248,2260,
+2259,2246,2224,2194,2157,2111,2062,2021,1999,2003,2033,2075,2116,2142,2149,2140,2118,2083,2038,1984,1929,
+1884,1857,1847,1848,1849,1843,1833,1827,1831,1848,1870,1889,1900,1904,1907,1917,1935,1956,1973,1985,1991,
+1998,2011,2028,2046,2059,2065,2067,2071,2083,2105,2133,2160,2180,2193,2200,2205,2210,2218,2232,2255,2293,
+2346,2406,2454,2468,2427,2321,2152,1935,1685,1419,1147,882,637,431,284,209,205,262,358,472,583,
+677,749,796,822,834,841,847,852,852,843,822,792,758,727,701,676,651,625,595,563,527,
+483,436,395,374,383,421,471,507,506,463,392,320,274,264,285,316,341,350,345,333,321,
+310,297,274,238,193,143,99,68,54,57,71,87,97,96,86,68,49,29,6,-23,-66,
+-122,-190,-265,-340,-414,-487,-561,-637,-716,-794,-864,-922,-964,-990,-1003,-1008,-1007,-1004,-1001,-996,-986,
+-969,-943,-908,-867,-823,-781,-742,-705,-667,-627,-582,-533,-481,-427,-368,-304,-236,-170,-111,-66,-36,
+-18,-4,17,53,104,165,228,285,330,365,393,421,453,489,530,570,608,640,667,689,709,
+729,751,774,797,818,838,855,870,885,897,905,910,911,912,915,918,920,917,910,900,892,
+888,887,885,877,864,850,837,829,825,819,810,798,786,780,778,777,773,762,747,730,715,
+700,682,659,631,602,579,562,551,540,525,504,479,453,429,407,385,364,343,324,306,286,
+261,232,200,171,147,128,112,95,76,57,38,21,2,-19,-47,-76,-104,-127,-146,-165,-187,
+-214,-246,-279,-311,-341,-371,-401,-431,-460,-488,-517,-546,-575,-605,-632,-656,-679,-704,-734,-768,-803,
+-838,-871,-904,-941,-981,-1021,-1056,-1085,-1109,-1134,-1163,-1198,-1235,-1270,-1300,-1326,-1351,-1377,-1407,-1439,-1470,
+-1497,-1521,-1540,-1557,-1572,-1587,-1603,-1621,-1638,-1654,-1666,-1674,-1679,-1684,-1689,-1696,-1705,-1717,-1730,-1745,-1757,
+-1765,-1767,-1765,-1766,-1779,-1812,-1864,-1928,-1987,-2023,-2020,-1975,-1895,-1796,-1699,-1619,-1563,-1527,-1505,-1490,-1484,
+-1494,-1528,-1582,-1647,-1702,-1734,-1737,-1717,-1690,-1668,-1654,-1644,-1633,-1620,-1610,-1606,-1609,-1614,-1611,-1597,-1578,
+-1564,-1565,-1585,-1612,-1634,-1639,-1629,-1613,-1604,-1610,-1627,-1643,-1646,-1631,-1604,-1577,-1559,-1551,-1545,-1527,-1491,
+-1439,-1389,-1361,-1371,-1418,-1490,-1563,-1620,-1656,-1678,-1697,-1723,-1754,-1781,-1797,-1799,-1793,-1787,-1788,-1798,-1813,
+-1826,-1833,-1831,-1821,-1806,-1789,-1775,-1768,-1773,-1794,-1827,-1869,-1912,-1951,-1982,-2000,-2007,-2003,-1992,-1980,-1973,
+-1974,-1981,-1989,-1993,-1992,-1991,-2000,-2023,-2059,-2103,-2144,-2178,-2206,-2233,-2265,-2303,-2342,-2374,-2396,-2412,-2427,
+-2449,-2480,-2519,-2560,-2601,-2639,-2679,-2723,-2770,-2817,-2860,-2895,-2920,-2939,-2953,-2965,-2977,-2990,-3004,-3022,-3043,
+-3069,-3096,-3126,-3155,-3186,-3219,-3254,-3291,-3328,-3364,-3397,-3427,-3454,-3477,-3496,-3508,-3512,-3513,-3514,-3524,-3547,
+-3583,-3629,-3680,-3730,-3774,-3812,-3843,-3866,-3885,-3899,-3912,-3924,-3936,-3949,-3962,-3976,-3991,-4008,-4024,-4037,-4042,
+-4041,-4035,-4028,-4024,-4020,-4013,-4000,-3979,-3955,-3934,-3921,-3918,-3923,-3934,-3950,-3971,-3998,-4027,-4052,-4069,-4074,
+-4070,-4061,-4050,-4039,-4027,-4010,-3986,-3953,-3911,-3862,-3807,-3750,-3695,-3644,-3599,-3560,-3525,-3493,-3462,-3434,-3407,
+-3381,-3352,-3317,-3273,-3223,-3167,-3109,-3050,-2990,-2929,-2864,-2795,-2723,-2653,-2592,-2544,-2512,-2489,-2466,-2435,-2396,
+-2354,-2322,-2307,-2306,-2309,-2301,-2277,-2242,-2208,-2189,-2187,-2195,-2199,-2185,-2153,-2108,-2060,-2018,-1983,-1949,-1915,
+-1878,-1841,-1807,-1774,-1741,-1701,-1652,-1594,-1528,-1459,-1387,-1312,-1236,-1158,-1083,-1010,-939,-865,-779,-675,-549,
+-408,-262,-124,-3,97,187,274,370,476,589,701,804,895,975,1048,1117,1181,1237,1285,1329,1377,
+1440,1526,1637,1766,1902,2033,2148,2242,2313,2358,2379,2378,2363,2343,2327,2323,2333,2356,2390,2433,2489,
+2559,2642,2734,2826,2911,2986,3054,3121,3191,3268,3347,3424,3496,3562,3625,3687,3750,3812,3870,3924,3974,
+4022,4071,4124,4182,4242,4302,4360,4416,4472,4532,4596,4664,4730,4793,4851,4904,4955,5006,5055,5098,5136,
+5169,5202,5239,5281,5322,5360,5392,5421,5452,5492,5539,5588,5633,5670,5703,5736,5774,5819,5866,5911,5950,
+5988,6030,6076,6126,6172,6209,6232,6247,6259,6276,6300,6331,6360,6383,6395,6394,6385,6374,6364,6359,6357,
+6354,6350,6342,6334,6326,6319,6312,6301,6288,6277,6272,6275,6283,6290,6290,6284,6274,6269,6271,6276,6275,
+6262,6238,6208,6183,6167,6158,6148,6128,6096,6055,6014,5977,5943,5911,5878,5848,5821,5801,5785,5770,5754,
+5735,5716,5699,5685,5673,5663,5657,5660,5674,5697,5722,5738,5742,5738,5735,5746,5776,5820,5867,5904,5921,
+5917,5894,5862,5829,5801,5777,5755,5730,5698,5660,5618,5578,5544,5516,5494,5473,5452,5430,5406,5381,5355,
+5329,5305,5285,5266,5247,5222,5186,5139,5085,5028,4970,4912,4851,4787,4726,4674,4634,4605,4581,4556,4528,
+4499,4503,4489,4486,4494,4504,4511,4511,4502,4489,4474,4461,4454,4456,4472,4500,4535,4571,4601,4625,4646,
+4670,4702,4739,4776,4808,4832,4849,4862,4873,4880,4880,4869,4849,4828,4813,4813,4823,4837,4841,4830,4802,
+4768,4738,4720,4718,4726,4735,4737,4730,4716,4700,4684,4669,4652,4631,4606,4578,4550,4524,4501,4479,4458,
+4437,4421,4412,4410,4412,4412,4402,4379,4344,4304,4267,4239,4222,4211,4196,4170,4127,4069,4000,3928,3855,
+3786,3720,3660,3606,3558,3516,3474,3425,3365,3294,3220,3156,3115,3103,3115,3142,3170,3192,3207,3218,3228,
+3237,3241,3235,3219,3198,3178,3161,3144,3120,3085,3037,2982,2928,2878,2831,2783,2729,2668,2602,2537,2479,
+2431,2390,2352,2313,2269,2221,2174,2130,2090,2052,2007,1947,1870,1780,1685,1599,1529,1477,1436,1398,1360,
+1319,1277,1237,1199,1162,1127,1099,1081,1077,1084,1094,1099,1093,1076,1052,1026,1001,978,952,920,880,
+831,775,716,657,600,548,499,450,399,343,281,212,133,42,-66,-192,-328,-460,-572,-652,-700,
+-724,-740,-760,-791,-831,-875,-919,-961,-1003,-1046,-1090,-1135,-1180,-1224,-1268,-1313,-1356,-1396,-1432,-1462,-1487,
+-1503,-1510,-1510,-1505,-1503,-1510,-1527,-1551,-1578,-1608,-1644,-1692,-1756,-1829,-1901,-1961,-2008,-2044,-2073,-2091,-2083,
+-2035,-1943,-1828,-1723,-1663,-1664,-1715,-1788,-1853,-1899,-1936,-1982,-2050,-2138,-2229,-2305,-2358,-2395,-2428,-2465,-2510,
+-2560,-2610,-2661,-2715,-2772,-2826,-2871,-2901,-2915,-2917,-2915,-2914,-2918,-2928,-2947,-2974,-3008,-3043,-3073,-3092,-3103,
+-3113,-3130,-3160,-3198,-3238,-3272,-3300,-3320,-3337,-3352,-3365,-3376,-3387,-3400,-3416,-3434,-3452,-3469,-3485,-3503,-3525,
+-3552,-3582,-3615,-3647,-3679,-3713,-3748,-3784,-3818,-3849,-3877,-3905,-3934,-3965,-3996,-4030,-4067,-4109,-4155,-4203,-4250,
+-4291,-4328,-4360,-4388,-4412,-4433,-4450,-4468,-4489,-4512,-4532,-4542,-4539,-4522,-4496,-4466,-4433,-4397,-4356,-4314,-4279,
+-4262,-4265,-4282,-4295,-4287,-4250,-4190,-4127,-4082,-4067,-4080,-4103,-4116,-4110,-4086,-4058,-4041,-4041,-4055,-4070,-4078,
+-4080,-4088,-4112,-4155,-4205,-4243,-4256,-4247,-4236,-4247,-4296,-4377,-4468,-4540,-4576,-4578,-4564,-4555,-4563,-4585,-4609,
+-4624,-4624,-4612,-4595,-4575,-4551,-4519,-4476,-4427,-4378,-4339,-4314,-4301,-4292,-4280,-4264,-4247,-4234,-4229,-4228,-4225,
+-4213,-4191,-4166,-4145,-4132,-4124,-4119,-4111,-4102,-4094,-4089,-4086,-4078,-4061,-4038,-4013,-3997,-3993,-3997,-4003,-4003,
+-3995,-3980,-3964,-3947,-3927,-3903,-3871,-3829,-3779,-3718,-3648,-3572,-3495,-3426,-3368,-3319,-3272,-3219,-3156,-3086,-3017,
+-2953,-2896,-2840,-2784,-2726,-2670,-2621,-2578,-2537,-2492,-2438,-2378,-2315,-2254,-2200,-2149,-2100,-2049,-1995,-1939,-1880,
+-1821,-1762,-1704,-1645,-1582,-1513,-1439,-1362,-1288,-1220,-1157,-1095,-1027,-952,-869,-784,-700,-618,-536,-450,-357,
+-259,-160,-62,29,115,195,268,330,382,424,462,501,545,597,655,715,773,825,871,915,961,
+1013,1066,1116,1153,1174,1180,1179,1178,1183,1196,1216,1241,1273,1310,1354,1401,1449,1496,1542,1589,1635,
+1681,1725,1768,1811,1855,1900,1941,1974,1998,2017,2035,2057,2079,2092,2091,2076,2055,2037,2030,2033,2039,
+2042,2043,2046,2058,2082,2114,2148,2180,2209,2234,2255,2271,2278,2276,2266,2249,2223,2186,2138,2087,2045,
+2027,2038,2073,2115,2148,2163,2164,2156,2145,2128,2099,2056,2005,1956,1921,1904,1897,1892,1881,1867,1858,
+1862,1877,1898,1915,1925,1931,1940,1957,1979,2000,2014,2018,2020,2027,2045,2070,2096,2113,2118,2116,2114,
+2120,2132,2147,2158,2162,2164,2172,2190,2221,2259,2300,2340,2380,2416,2441,2437,2385,2266,2080,1837,1560,
+1275,1000,750,535,365,254,210,231,305,411,524,627,712,776,818,842,850,849,847,849,853,
+853,840,812,774,736,706,682,659,628,589,546,506,470,433,390,342,304,293,318,371,425,
+447,416,337,239,158,122,135,180,229,261,267,253,234,221,217,217,210,192,161,124,89,
+65,57,62,74,86,94,95,91,86,81,76,68,53,29,-5,-48,-96,-145,-195,-245,-298,
+-354,-409,-459,-498,-525,-543,-557,-570,-582,-590,-590,-580,-561,-538,-513,-490,-466,-441,-412,-381,-349,
+-315,-279,-242,-200,-156,-106,-53,2,57,107,148,176,191,198,204,217,244,284,333,383,428,
+461,484,499,513,529,549,573,600,628,655,679,701,720,737,754,771,788,803,818,830,840,
+849,856,860,861,861,861,864,869,872,872,865,854,843,833,827,820,809,796,781,770,764,
+761,757,749,736,724,715,712,712,710,702,690,675,660,645,628,607,583,556,533,514,500,
+487,473,454,431,407,382,356,330,305,282,261,241,220,195,167,137,110,89,72,57,40,
+19,-3,-25,-46,-67,-90,-118,-148,-177,-201,-222,-241,-262,-290,-321,-355,-387,-417,-446,-474,-500,
+-526,-552,-581,-614,-651,-687,-718,-744,-767,-791,-821,-857,-893,-927,-956,-983,-1013,-1048,-1087,-1123,-1153,
+-1177,-1199,-1224,-1254,-1289,-1325,-1358,-1387,-1413,-1438,-1465,-1493,-1521,-1547,-1570,-1591,-1609,-1625,-1641,-1657,-1675,
+-1693,-1710,-1724,-1734,-1739,-1743,-1747,-1753,-1761,-1773,-1786,-1800,-1813,-1820,-1820,-1812,-1800,-1794,-1804,-1835,-1890,
+-1958,-2023,-2066,-2070,-2032,-1958,-1866,-1775,-1697,-1635,-1585,-1541,-1505,-1489,-1501,-1546,-1613,-1682,-1735,-1760,-1760,
+-1747,-1731,-1716,-1701,-1683,-1666,-1655,-1654,-1661,-1666,-1657,-1632,-1599,-1572,-1565,-1579,-1604,-1623,-1626,-1612,-1593,
+-1581,-1584,-1600,-1618,-1628,-1623,-1608,-1588,-1572,-1563,-1556,-1543,-1518,-1481,-1441,-1414,-1413,-1441,-1494,-1555,-1609,
+-1648,-1671,-1687,-1702,-1720,-1739,-1753,-1758,-1754,-1745,-1735,-1728,-1727,-1730,-1737,-1743,-1746,-1742,-1732,-1720,-1714,
+-1720,-1741,-1774,-1813,-1851,-1885,-1911,-1929,-1940,-1942,-1938,-1932,-1929,-1933,-1943,-1954,-1960,-1960,-1956,-1959,-1973,
+-2002,-2039,-2078,-2113,-2144,-2177,-2216,-2258,-2299,-2331,-2353,-2366,-2378,-2397,-2424,-2458,-2495,-2533,-2573,-2618,-2667,
+-2720,-2771,-2813,-2845,-2867,-2884,-2901,-2919,-2939,-2960,-2979,-2999,-3022,-3049,-3082,-3117,-3153,-3187,-3219,-3251,-3285,
+-3322,-3360,-3396,-3429,-3455,-3475,-3488,-3495,-3496,-3496,-3500,-3515,-3544,-3585,-3632,-3679,-3721,-3757,-3789,-3818,-3847,
+-3872,-3892,-3907,-3917,-3926,-3935,-3946,-3958,-3971,-3983,-3993,-4000,-4000,-3993,-3982,-3969,-3957,-3947,-3936,-3922,-3905,
+-3887,-3874,-3869,-3871,-3879,-3891,-3906,-3925,-3950,-3977,-4000,-4014,-4018,-4015,-4011,-4009,-4008,-4005,-3995,-3976,-3947,
+-3912,-3871,-3824,-3772,-3718,-3664,-3615,-3573,-3538,-3507,-3480,-3454,-3427,-3400,-3369,-3333,-3291,-3244,-3193,-3138,-3081,
+-3019,-2954,-2884,-2814,-2745,-2682,-2629,-2587,-2555,-2528,-2500,-2465,-2424,-2385,-2356,-2345,-2347,-2353,-2350,-2330,-2298,
+-2268,-2251,-2254,-2267,-2277,-2268,-2235,-2181,-2118,-2058,-2006,-1965,-1932,-1904,-1879,-1854,-1825,-1790,-1746,-1692,-1631,
+-1566,-1497,-1426,-1351,-1275,-1199,-1125,-1054,-979,-893,-788,-658,-508,-347,-191,-52,64,160,245,327,416,
+512,613,714,808,894,969,1035,1094,1147,1195,1241,1290,1349,1425,1524,1645,1786,1935,2080,2208,2309,
+2377,2411,2415,2396,2362,2326,2296,2282,2286,2309,2347,2398,2460,2531,2609,2690,2771,2849,2924,2998,3075,
+3156,3237,3316,3391,3460,3527,3592,3659,3725,3788,3847,3901,3952,4003,4054,4107,4163,4220,4278,4335,4392,
+4450,4511,4574,4640,4705,4767,4823,4876,4927,4977,5026,5072,5113,5152,5191,5233,5277,5320,5357,5385,5409,
+5435,5467,5509,5555,5600,5642,5683,5725,5773,5824,5872,5914,5947,5978,6013,6057,6109,6163,6209,6242,6263,
+6275,6287,6305,6330,6360,6390,6412,6422,6420,6408,6392,6379,6371,6368,6365,6362,6357,6350,6344,6337,6326,
+6312,6296,6284,6279,6282,6288,6290,6286,6276,6268,6267,6274,6280,6277,6258,6227,6193,6165,6148,6138,6128,
+6110,6082,6046,6006,5965,5925,5886,5851,5821,5799,5781,5767,5751,5732,5710,5686,5660,5635,5615,5603,5607,
+5627,5658,5691,5715,5725,5725,5729,5747,5783,5831,5878,5908,5915,5899,5870,5838,5812,5792,5776,5756,5728,
+5691,5650,5609,5573,5543,5517,5491,5464,5435,5407,5382,5358,5337,5315,5294,5274,5255,5233,5205,5167,5121,
+5070,5018,4967,4916,4862,4804,4747,4695,4652,4617,4586,4557,4528,4503,4524,4512,4510,4514,4520,4523,4521,
+4513,4502,4489,4477,4470,4473,4488,4513,4543,4572,4597,4620,4645,4676,4712,4747,4777,4798,4815,4832,4853,
+4875,4891,4893,4878,4851,4823,4806,4807,4823,4843,4855,4849,4825,4789,4753,4725,4709,4702,4700,4700,4701,
+4703,4706,4709,4708,4698,4679,4652,4620,4589,4564,4545,4533,4525,4516,4505,4492,4477,4461,4446,4429,4409,
+4383,4352,4318,4287,4263,4243,4225,4201,4166,4117,4057,3989,3918,3849,3784,3723,3668,3618,3569,3518,3458,
+3387,3307,3228,3161,3120,3109,3125,3157,3193,3224,3247,3263,3277,3288,3295,3295,3287,3272,3255,3237,3216,
+3189,3152,3105,3050,2994,2937,2881,2824,2763,2698,2632,2567,2507,2455,2410,2373,2337,2300,2257,2210,2160,
+2111,2066,2020,1966,1900,1819,1732,1649,1580,1528,1487,1450,1409,1362,1312,1263,1217,1176,1138,1107,1085,
+1075,1077,1087,1095,1095,1082,1060,1031,1002,974,946,915,876,828,771,708,644,581,523,468,413,
+354,288,214,130,37,-68,-185,-312,-441,-558,-651,-712,-744,-756,-763,-777,-801,-836,-878,-923,-970,
+-1021,-1074,-1128,-1180,-1230,-1277,-1322,-1362,-1396,-1421,-1438,-1450,-1462,-1473,-1483,-1487,-1485,-1480,-1478,-1483,-1498,
+-1521,-1554,-1602,-1667,-1750,-1842,-1927,-1995,-2041,-2072,-2094,-2109,-2103,-2061,-1977,-1866,-1761,-1696,-1692,-1739,-1810,
+-1877,-1928,-1971,-2025,-2102,-2197,-2290,-2364,-2412,-2444,-2473,-2514,-2567,-2628,-2687,-2742,-2794,-2843,-2889,-2926,-2951,
+-2963,-2968,-2970,-2972,-2978,-2987,-3003,-3029,-3061,-3096,-3126,-3143,-3151,-3156,-3169,-3194,-3230,-3270,-3307,-3338,-3363,
+-3385,-3404,-3419,-3430,-3440,-3452,-3470,-3492,-3515,-3533,-3545,-3557,-3572,-3595,-3625,-3660,-3695,-3729,-3762,-3791,-3816,
+-3836,-3852,-3867,-3886,-3911,-3941,-3972,-4004,-4037,-4076,-4122,-4174,-4228,-4278,-4319,-4352,-4377,-4398,-4417,-4437,-4461,
+-4489,-4518,-4543,-4556,-4552,-4533,-4503,-4472,-4444,-4421,-4404,-4394,-4394,-4408,-4433,-4457,-4463,-4439,-4379,-4297,-4214,
+-4152,-4121,-4115,-4119,-4114,-4093,-4062,-4037,-4031,-4044,-4067,-4084,-4088,-4088,-4099,-4140,-4208,-4285,-4339,-4350,-4319,
+-4270,-4240,-4252,-4308,-4389,-4465,-4515,-4535,-4535,-4531,-4535,-4547,-4562,-4573,-4576,-4572,-4568,-4565,-4563,-4561,-4551,
+-4528,-4491,-4444,-4394,-4351,-4319,-4301,-4291,-4286,-4283,-4280,-4279,-4279,-4276,-4269,-4256,-4238,-4217,-4198,-4180,-4164,
+-4153,-4146,-4142,-4138,-4128,-4111,-4087,-4061,-4039,-4025,-4018,-4013,-4008,-4000,-3990,-3977,-3960,-3938,-3909,-3874,-3833,
+-3785,-3729,-3662,-3586,-3510,-3440,-3383,-3336,-3291,-3238,-3172,-3097,-3020,-2948,-2883,-2824,-2767,-2713,-2661,-2615,-2571,
+-2526,-2475,-2417,-2354,-2292,-2235,-2182,-2133,-2084,-2035,-1983,-1930,-1876,-1819,-1762,-1704,-1646,-1587,-1525,-1458,-1388,
+-1317,-1246,-1176,-1101,-1021,-936,-849,-763,-682,-601,-518,-427,-332,-234,-139,-48,37,122,203,278,342,
+395,437,474,514,561,615,673,732,787,835,877,920,967,1022,1082,1139,1182,1208,1216,1216,1216,
+1223,1240,1263,1291,1324,1361,1403,1448,1493,1534,1574,1613,1656,1702,1750,1799,1847,1892,1932,1964,1986,
+2002,2014,2029,2047,2063,2069,2061,2042,2022,2010,2011,2022,2036,2047,2057,2074,2100,2137,2176,2212,2240,
+2262,2280,2295,2305,2309,2305,2294,2277,2250,2208,2153,2094,2050,2038,2063,2111,2161,2191,2195,2180,2162,
+2150,2144,2133,2109,2071,2028,1990,1963,1945,1929,1912,1895,1883,1883,1893,1909,1926,1940,1955,1972,1993,
+2014,2029,2037,2039,2043,2055,2076,2103,2127,2143,2149,2149,2150,2153,2156,2154,2144,2131,2127,2145,2190,
+2258,2336,2406,2457,2486,2490,2463,2392,2259,2056,1788,1480,1164,872,626,435,302,228,215,259,351,
+467,585,685,760,811,848,874,887,888,877,863,851,844,837,821,792,754,718,690,670,649,
+617,571,519,470,430,393,350,295,238,199,198,234,287,322,310,244,146,53,0,2,49,
+112,164,188,183,164,144,134,135,138,137,127,108,88,70,61,58,62,68,75,82,88,
+90,90,86,82,78,74,68,56,38,15,-9,-33,-57,-80,-104,-126,-147,-165,-183,-201,-218,
+-232,-235,-225,-203,-175,-149,-129,-115,-103,-89,-70,-49,-29,-12,4,23,46,76,111,149,187,
+223,254,277,292,298,299,302,313,336,372,415,459,498,526,543,554,562,570,581,595,612,
+630,650,671,690,706,720,733,746,760,774,786,795,803,809,815,819,821,821,820,820,821,
+822,821,815,805,793,781,770,759,746,733,719,709,702,698,694,686,674,662,653,648,646,
+644,638,628,613,597,580,562,542,521,500,479,461,445,430,415,396,376,354,331,306,281,
+255,229,204,181,158,135,110,84,60,38,18,-2,-25,-50,-77,-103,-127,-150,-172,-197,-223,
+-249,-273,-296,-318,-343,-371,-402,-433,-462,-489,-515,-540,-564,-588,-613,-641,-676,-714,-754,-789,-819,
+-845,-873,-907,-946,-985,-1019,-1046,-1069,-1094,-1123,-1158,-1193,-1225,-1251,-1274,-1298,-1327,-1358,-1390,-1421,-1450,
+-1477,-1505,-1532,-1558,-1582,-1603,-1623,-1643,-1662,-1681,-1698,-1714,-1730,-1746,-1762,-1775,-1785,-1793,-1800,-1807,-1815,
+-1823,-1832,-1842,-1851,-1860,-1867,-1870,-1867,-1858,-1846,-1838,-1842,-1866,-1913,-1976,-2040,-2086,-2099,-2075,-2023,-1955,
+-1884,-1814,-1745,-1673,-1602,-1546,-1519,-1532,-1578,-1643,-1707,-1756,-1787,-1804,-1811,-1809,-1796,-1774,-1749,-1732,-1728,
+-1732,-1731,-1713,-1674,-1627,-1588,-1572,-1582,-1605,-1624,-1627,-1614,-1594,-1578,-1575,-1584,-1597,-1609,-1612,-1607,-1597,
+-1584,-1572,-1560,-1547,-1530,-1508,-1484,-1465,-1459,-1473,-1505,-1550,-1595,-1629,-1648,-1656,-1659,-1665,-1677,-1693,-1708,
+-1716,-1714,-1701,-1681,-1663,-1652,-1651,-1660,-1671,-1678,-1679,-1676,-1676,-1688,-1711,-1743,-1775,-1802,-1822,-1838,-1852,
+-1864,-1872,-1876,-1877,-1880,-1887,-1901,-1916,-1927,-1931,-1931,-1933,-1945,-1967,-1997,-2030,-2062,-2093,-2129,-2169,-2211,
+-2250,-2278,-2296,-2306,-2317,-2336,-2363,-2398,-2436,-2476,-2518,-2565,-2617,-2670,-2720,-2761,-2791,-2813,-2832,-2852,-2877,
+-2905,-2934,-2963,-2990,-3018,-3050,-3086,-3124,-3159,-3190,-3217,-3243,-3273,-3308,-3347,-3384,-3417,-3442,-3459,-3471,-3480,
+-3488,-3495,-3507,-3525,-3554,-3592,-3634,-3674,-3707,-3735,-3761,-3790,-3820,-3848,-3869,-3882,-3889,-3893,-3900,-3909,-3919,
+-3928,-3935,-3942,-3947,-3948,-3944,-3933,-3917,-3898,-3881,-3866,-3853,-3842,-3835,-3835,-3841,-3853,-3868,-3883,-3897,-3914,
+-3933,-3954,-3971,-3980,-3980,-3976,-3973,-3974,-3977,-3977,-3968,-3950,-3924,-3894,-3861,-3823,-3778,-3727,-3674,-3626,-3586,
+-3555,-3529,-3505,-3480,-3454,-3426,-3396,-3363,-3327,-3286,-3240,-3188,-3129,-3063,-2992,-2919,-2849,-2785,-2729,-2678,-2633,
+-2591,-2550,-2511,-2473,-2438,-2411,-2397,-2398,-2410,-2421,-2418,-2394,-2353,-2308,-2275,-2261,-2266,-2275,-2275,-2255,-2212,
+-2154,-2091,-2032,-1983,-1944,-1912,-1886,-1860,-1830,-1794,-1751,-1702,-1648,-1591,-1528,-1459,-1382,-1302,-1223,-1147,-1074,
+-997,-903,-783,-636,-469,-296,-134,6,120,215,300,382,466,554,642,727,807,879,944,1000,1051,
+1098,1148,1203,1267,1343,1433,1539,1663,1803,1953,2103,2238,2343,2409,2435,2426,2393,2349,2305,2272,2255,
+2258,2281,2323,2379,2445,2517,2590,2663,2735,2806,2880,2958,3041,3126,3209,3286,3358,3425,3491,3559,3628,
+3696,3761,3820,3876,3930,3983,4036,4089,4142,4195,4251,4308,4367,4426,4487,4547,4608,4669,4728,4783,4835,
+4886,4935,4985,5033,5079,5124,5167,5212,5257,5300,5337,5366,5390,5414,5443,5480,5522,5565,5609,5653,5700,
+5751,5804,5853,5894,5927,5957,5991,6034,6087,6144,6199,6246,6281,6305,6321,6335,6351,6373,6399,6425,6442,
+6447,6437,6418,6399,6385,6380,6381,6381,6378,6372,6366,6361,6356,6347,6334,6318,6306,6301,6302,6304,6301,
+6292,6281,6275,6277,6285,6289,6280,6256,6222,6188,6163,6149,6140,6127,6104,6069,6026,5981,5938,5899,5867,
+5840,5817,5797,5777,5755,5732,5707,5683,5660,5637,5616,5602,5601,5616,5646,5681,5713,5734,5747,5759,5781,
+5818,5862,5903,5925,5922,5897,5859,5823,5795,5775,5759,5739,5710,5672,5630,5591,5557,5527,5498,5467,5435,
+5404,5378,5358,5344,5330,5316,5298,5280,5259,5235,5203,5163,5114,5063,5014,4969,4927,4884,4838,4790,4741,
+4696,4654,4614,4578,4547,4524,4577,4557,4543,4532,4522,4512,4503,4495,4488,4481,4475,4474,4480,4495,4515,
+4535,4555,4574,4600,4634,4675,4715,4746,4762,4769,4776,4792,4821,4854,4880,4887,4873,4846,4819,4804,4807,
+4825,4848,4865,4865,4847,4814,4773,4733,4699,4676,4664,4662,4669,4683,4701,4718,4727,4725,4708,4678,4641,
+4605,4579,4568,4572,4586,4598,4600,4582,4546,4500,4454,4415,4387,4366,4346,4323,4298,4273,4251,4233,4216,
+4195,4166,4125,4073,4014,3950,3887,3828,3774,3725,3676,3621,3553,3471,3378,3285,3206,3151,3129,3137,3167,
+3208,3248,3281,3306,3323,3334,3340,3342,3338,3329,3313,3292,3265,3231,3190,3142,3088,3031,2971,2909,2846,
+2783,2721,2658,2596,2533,2474,2421,2379,2346,2319,2290,2252,2205,2150,2094,2040,1985,1924,1855,1780,1707,
+1643,1593,1555,1522,1485,1441,1390,1336,1282,1230,1182,1137,1101,1075,1064,1065,1071,1074,1068,1050,1024,
+993,962,932,901,865,819,764,701,633,564,498,434,370,302,227,143,48,-55,-167,-286,-404,
+-516,-612,-684,-728,-750,-758,-763,-774,-795,-828,-870,-921,-980,-1045,-1112,-1177,-1236,-1290,-1339,-1385,-1425,
+-1455,-1471,-1476,-1476,-1478,-1486,-1496,-1502,-1499,-1490,-1480,-1480,-1492,-1518,-1560,-1618,-1694,-1787,-1888,-1979,-2048,
+-2089,-2109,-2120,-2126,-2119,-2082,-2008,-1904,-1801,-1733,-1723,-1768,-1843,-1918,-1979,-2030,-2088,-2164,-2254,-2342,-2412,
+-2457,-2489,-2524,-2573,-2638,-2708,-2774,-2830,-2876,-2915,-2950,-2979,-3000,-3013,-3022,-3028,-3034,-3041,-3048,-3061,-3081,
+-3109,-3139,-3165,-3179,-3183,-3186,-3197,-3221,-3257,-3297,-3337,-3373,-3405,-3434,-3460,-3479,-3490,-3499,-3510,-3529,-3554,
+-3579,-3599,-3613,-3623,-3638,-3663,-3698,-3738,-3776,-3810,-3836,-3856,-3869,-3875,-3878,-3883,-3894,-3913,-3937,-3960,-3981,
+-4002,-4028,-4067,-4119,-4178,-4236,-4285,-4324,-4353,-4376,-4397,-4419,-4444,-4472,-4501,-4526,-4541,-4540,-4524,-4498,-4472,
+-4454,-4447,-4452,-4468,-4492,-4520,-4546,-4559,-4549,-4512,-4451,-4380,-4316,-4270,-4242,-4221,-4192,-4146,-4086,-4029,-3994,
+-3993,-4023,-4063,-4094,-4106,-4107,-4120,-4164,-4241,-4331,-4400,-4425,-4400,-4349,-4305,-4295,-4327,-4389,-4459,-4517,-4553,
+-4569,-4570,-4561,-4547,-4530,-4515,-4503,-4497,-4498,-4505,-4519,-4539,-4559,-4569,-4559,-4525,-4474,-4420,-4377,-4353,-4344,
+-4339,-4329,-4314,-4298,-4288,-4289,-4295,-4301,-4301,-4292,-4276,-4259,-4241,-4223,-4207,-4190,-4174,-4157,-4140,-4123,-4104,
+-4085,-4066,-4047,-4030,-4016,-4006,-3999,-3991,-3976,-3952,-3918,-3877,-3832,-3783,-3727,-3661,-3587,-3512,-3445,-3392,-3348,
+-3303,-3247,-3175,-3094,-3012,-2938,-2874,-2817,-2764,-2713,-2665,-2618,-2573,-2524,-2469,-2409,-2348,-2288,-2233,-2181,-2130,
+-2079,-2027,-1976,-1925,-1873,-1818,-1761,-1703,-1645,-1587,-1527,-1464,-1396,-1325,-1251,-1173,-1090,-1003,-914,-828,-748,
+-670,-589,-501,-405,-304,-207,-115,-30,53,137,219,293,354,401,440,478,523,575,632,689,742,
+791,836,880,926,978,1037,1099,1158,1204,1233,1246,1250,1255,1269,1291,1320,1352,1384,1419,1455,1491,
+1525,1558,1590,1626,1670,1722,1779,1835,1886,1928,1961,1982,1993,1998,2002,2011,2024,2036,2041,2037,2026,
+2018,2018,2027,2042,2057,2070,2085,2110,2146,2189,2231,2265,2290,2308,2325,2338,2346,2344,2335,2321,2301,
+2272,2226,2164,2100,2056,2051,2088,2150,2208,2236,2227,2194,2158,2137,2133,2136,2131,2111,2080,2044,2010,
+1983,1961,1941,1924,1913,1908,1910,1920,1936,1956,1979,2002,2021,2034,2042,2047,2056,2069,2087,2107,2124,
+2135,2142,2146,2152,2159,2164,2162,2149,2128,2110,2110,2144,2216,2315,2419,2504,2550,2550,2501,2401,2245,
+2025,1743,1414,1073,758,503,325,225,194,217,287,391,516,639,741,810,848,868,883,898,910,
+910,895,871,846,827,812,793,764,727,689,660,640,621,592,548,495,442,398,358,311,250,
+177,113,78,85,123,167,185,161,100,25,-33,-54,-36,9,62,102,121,120,108,93,82,
+75,69,62,55,49,45,44,43,43,44,49,59,71,79,79,71,61,57,61,72,83,
+87,83,73,64,56,51,43,31,16,0,-16,-30,-39,-41,-32,-13,13,41,63,77,87,
+98,113,131,146,154,156,155,157,168,188,214,242,269,294,315,332,343,349,352,356,368,
+391,424,463,501,533,556,569,576,581,588,596,607,618,630,643,656,668,679,688,698,709,
+722,735,747,756,762,766,772,778,782,783,781,777,772,768,764,758,749,737,724,711,699,
+688,676,664,654,646,639,632,623,614,604,595,588,582,577,570,560,546,530,511,491,472,
+454,436,419,403,386,369,351,333,313,292,271,249,228,205,181,156,130,106,82,59,36,
+12,-12,-38,-65,-92,-119,-147,-176,-203,-229,-253,-277,-301,-324,-348,-371,-396,-423,-451,-481,-509,
+-535,-560,-584,-608,-632,-657,-682,-711,-744,-781,-819,-854,-885,-914,-945,-981,-1022,-1062,-1097,-1125,-1148,
+-1172,-1200,-1231,-1264,-1294,-1323,-1350,-1379,-1409,-1439,-1467,-1494,-1519,-1547,-1576,-1604,-1628,-1648,-1665,-1681,-1700,
+-1721,-1742,-1761,-1776,-1789,-1801,-1813,-1824,-1835,-1844,-1854,-1864,-1875,-1885,-1893,-1898,-1900,-1902,-1906,-1912,-1919,
+-1923,-1921,-1914,-1906,-1907,-1925,-1964,-2018,-2073,-2114,-2130,-2118,-2085,-2038,-1980,-1910,-1829,-1740,-1658,-1597,-1571,
+-1580,-1615,-1665,-1720,-1776,-1829,-1875,-1905,-1910,-1892,-1860,-1829,-1810,-1800,-1786,-1756,-1707,-1649,-1602,-1580,-1585,
+-1606,-1625,-1631,-1621,-1604,-1590,-1585,-1589,-1597,-1604,-1607,-1605,-1595,-1581,-1565,-1549,-1538,-1530,-1523,-1515,-1505,
+-1497,-1497,-1509,-1533,-1561,-1585,-1599,-1600,-1596,-1593,-1599,-1614,-1636,-1655,-1666,-1662,-1648,-1629,-1614,-1611,-1617,
+-1628,-1638,-1642,-1645,-1652,-1668,-1693,-1722,-1746,-1762,-1771,-1777,-1785,-1797,-1808,-1818,-1825,-1832,-1844,-1861,-1880,
+-1895,-1903,-1907,-1912,-1922,-1942,-1968,-1998,-2029,-2062,-2098,-2138,-2176,-2207,-2227,-2237,-2242,-2251,-2270,-2300,-2339,
+-2382,-2426,-2471,-2519,-2570,-2621,-2670,-2711,-2744,-2771,-2794,-2818,-2846,-2878,-2914,-2951,-2987,-3022,-3056,-3089,-3121,
+-3151,-3177,-3202,-3228,-3259,-3296,-3336,-3374,-3405,-3428,-3444,-3459,-3475,-3490,-3505,-3520,-3537,-3561,-3592,-3629,-3665,
+-3696,-3721,-3744,-3768,-3793,-3815,-3831,-3838,-3841,-3846,-3855,-3868,-3880,-3887,-3891,-3894,-3899,-3906,-3908,-3901,-3885,
+-3862,-3840,-3824,-3815,-3813,-3817,-3825,-3838,-3854,-3870,-3886,-3901,-3916,-3934,-3952,-3965,-3970,-3967,-3960,-3955,-3954,
+-3955,-3950,-3937,-3915,-3889,-3862,-3835,-3804,-3765,-3720,-3673,-3631,-3598,-3573,-3551,-3527,-3502,-3476,-3451,-3429,-3405,
+-3377,-3342,-3297,-3241,-3175,-3100,-3021,-2942,-2871,-2810,-2757,-2709,-2662,-2615,-2569,-2529,-2497,-2475,-2464,-2465,-2474,
+-2487,-2491,-2476,-2435,-2372,-2299,-2234,-2192,-2176,-2180,-2190,-2193,-2181,-2151,-2109,-2061,-2013,-1969,-1928,-1891,-1854,
+-1815,-1774,-1732,-1691,-1650,-1607,-1556,-1493,-1417,-1332,-1245,-1162,-1083,-999,-899,-770,-614,-437,-259,-95,43,
+156,250,335,417,498,577,651,721,785,845,901,953,1002,1054,1112,1180,1259,1347,1443,1548,1665,
+1799,1948,2101,2241,2350,2414,2430,2407,2362,2312,2271,2244,2237,2248,2276,2321,2380,2448,2520,2591,2660,
+2727,2796,2869,2950,3035,3121,3204,3278,3346,3411,3475,3541,3608,3675,3738,3797,3855,3911,3966,4020,4072,
+4122,4174,4227,4285,4344,4402,4459,4515,4571,4626,4681,4735,4785,4835,4884,4935,4987,5038,5087,5134,5180,
+5224,5265,5302,5334,5363,5392,5424,5461,5500,5540,5580,5621,5666,5714,5764,5813,5856,5896,5934,5975,6020,
+6070,6123,6178,6231,6279,6319,6348,6367,6380,6394,6414,6438,6460,6471,6467,6450,6428,6411,6405,6405,6406,
+6402,6393,6384,6380,6380,6380,6374,6360,6342,6328,6321,6319,6318,6310,6296,6282,6276,6280,6287,6288,6275,
+6248,6216,6187,6167,6152,6135,6110,6074,6032,5989,5950,5918,5890,5867,5845,5821,5796,5767,5738,5710,5686,
+5665,5646,5627,5610,5601,5608,5632,5671,5715,5753,5780,5799,5819,5847,5882,5915,5934,5930,5902,5858,5811,
+5770,5738,5714,5691,5665,5635,5603,5572,5541,5510,5476,5438,5401,5370,5347,5334,5324,5314,5298,5278,5256,
+5233,5208,5179,5143,5102,5058,5016,4977,4942,4909,4874,4838,4800,4761,4720,4679,4639,4604,4577,4649,4619,
+4589,4560,4531,4506,4488,4475,4467,4462,4459,4463,4475,4492,4511,4526,4538,4555,4583,4623,4669,4708,4730,
+4735,4733,4738,4760,4798,4837,4865,4871,4858,4834,4814,4806,4812,4829,4849,4864,4866,4853,4823,4783,4738,
+4697,4666,4646,4639,4643,4656,4675,4695,4712,4720,4714,4693,4661,4627,4601,4593,4605,4630,4653,4658,4632,
+4578,4506,4434,4378,4344,4327,4320,4312,4299,4282,4267,4255,4248,4240,4228,4205,4169,4119,4060,3996,3935,
+3882,3837,3794,3746,3685,3606,3514,3414,3320,3244,3194,3175,3184,3215,3255,3295,3326,3347,3358,3364,3366,
+3366,3360,3348,3325,3294,3254,3208,3158,3105,3049,2990,2928,2866,2806,2748,2690,2628,2561,2490,2423,2370,
+2335,2317,2305,2286,2251,2202,2142,2082,2023,1966,1906,1841,1775,1716,1669,1635,1608,1580,1543,1495,1439,
+1377,1313,1249,1187,1130,1082,1048,1030,1025,1024,1021,1008,986,958,929,902,875,844,805,755,695,
+626,554,481,408,336,260,177,86,-13,-119,-229,-336,-437,-525,-598,-652,-689,-711,-725,-739,-758,
+-786,-826,-878,-942,-1014,-1090,-1163,-1228,-1284,-1333,-1379,-1426,-1470,-1505,-1526,-1534,-1535,-1537,-1543,-1551,-1553,
+-1545,-1531,-1521,-1523,-1544,-1581,-1632,-1694,-1769,-1857,-1950,-2035,-2097,-2129,-2140,-2141,-2142,-2135,-2106,-2041,-1945,
+-1845,-1776,-1764,-1810,-1892,-1978,-2049,-2104,-2157,-2223,-2302,-2383,-2451,-2501,-2539,-2582,-2639,-2709,-2783,-2849,-2902,
+-2942,-2974,-3003,-3027,-3046,-3058,-3067,-3073,-3079,-3086,-3094,-3106,-3125,-3150,-3176,-3197,-3208,-3211,-3215,-3228,-3256,
+-3295,-3338,-3378,-3415,-3450,-3485,-3516,-3540,-3556,-3567,-3581,-3602,-3632,-3663,-3689,-3706,-3721,-3739,-3766,-3801,-3838,
+-3871,-3897,-3915,-3927,-3934,-3936,-3936,-3936,-3940,-3950,-3960,-3968,-3972,-3975,-3988,-4016,-4062,-4121,-4182,-4239,-4289,
+-4331,-4367,-4397,-4423,-4444,-4464,-4485,-4505,-4521,-4528,-4523,-4512,-4499,-4495,-4504,-4526,-4557,-4588,-4612,-4619,-4603,
+-4564,-4508,-4450,-4401,-4371,-4358,-4349,-4326,-4277,-4200,-4110,-4029,-3983,-3981,-4018,-4072,-4120,-4147,-4156,-4166,-4196,
+-4254,-4329,-4398,-4438,-4445,-4428,-4410,-4408,-4430,-4472,-4525,-4578,-4624,-4655,-4664,-4649,-4612,-4567,-4525,-4498,-4486,
+-4485,-4488,-4496,-4512,-4535,-4557,-4567,-4554,-4519,-4476,-4440,-4419,-4411,-4402,-4382,-4350,-4316,-4294,-4290,-4301,-4317,
+-4327,-4328,-4320,-4307,-4291,-4272,-4248,-4220,-4192,-4167,-4149,-4138,-4129,-4118,-4101,-4079,-4056,-4036,-4023,-4016,-4008,
+-3993,-3966,-3928,-3881,-3831,-3775,-3712,-3640,-3563,-3488,-3424,-3374,-3331,-3285,-3228,-3158,-3082,-3009,-2945,-2889,-2837,
+-2784,-2730,-2677,-2627,-2578,-2527,-2473,-2416,-2359,-2304,-2251,-2198,-2143,-2087,-2031,-1977,-1923,-1869,-1812,-1752,-1692,
+-1631,-1571,-1509,-1444,-1376,-1304,-1230,-1151,-1067,-978,-890,-806,-727,-650,-568,-476,-375,-272,-174,-84,0,
+84,168,246,311,359,395,428,468,518,576,635,689,738,785,834,886,940,997,1055,1113,1168,
+1213,1246,1267,1282,1299,1323,1354,1388,1423,1455,1484,1511,1534,1555,1574,1599,1634,1682,1741,1804,1862,
+1910,1944,1967,1979,1982,1982,1982,1988,2000,2014,2026,2033,2035,2039,2048,2061,2076,2090,2105,2126,2159,
+2202,2248,2287,2316,2335,2351,2366,2378,2381,2374,2357,2337,2315,2285,2240,2180,2120,2081,2083,2128,2196,
+2253,2274,2253,2204,2154,2123,2115,2123,2131,2127,2108,2078,2045,2014,1990,1973,1962,1954,1947,1943,1944,
+1955,1975,2000,2021,2033,2036,2038,2047,2065,2089,2111,2123,2123,2118,2114,2117,2126,2136,2142,2141,2133,
+2123,2122,2142,2194,2279,2386,2491,2566,2586,2535,2411,2219,1964,1659,1318,969,647,390,222,148,156,
+220,318,433,554,672,772,844,881,891,888,886,891,898,896,879,851,821,796,777,757,728,
+689,648,612,585,564,538,501,455,406,363,321,273,209,130,50,-8,-28,-6,44,99,133,
+130,91,30,-30,-70,-77,-52,-9,35,68,82,78,64,46,28,13,3,0,2,7,11,
+12,11,14,24,38,49,50,40,26,19,25,42,63,76,79,75,71,69,68,65,56,
+42,29,20,18,22,32,48,67,88,106,118,126,135,148,166,185,198,200,194,187,187,
+197,217,242,268,292,315,336,355,369,379,386,394,408,430,460,493,525,550,566,573,576,
+579,584,592,602,612,621,629,635,641,647,653,662,672,685,697,707,713,715,717,720,725,
+729,729,726,721,714,709,705,699,690,679,665,651,639,629,620,611,602,593,584,575,567,
+559,551,542,532,520,509,498,488,476,461,443,424,405,388,371,355,337,320,302,285,268,
+249,228,207,187,169,151,131,107,80,53,28,6,-16,-40,-68,-98,-127,-153,-178,-203,-231,
+-261,-291,-321,-349,-374,-399,-423,-448,-474,-501,-530,-559,-587,-613,-638,-661,-684,-708,-733,-760,-790,
+-822,-857,-892,-926,-957,-988,-1021,-1056,-1093,-1129,-1162,-1190,-1217,-1244,-1274,-1304,-1333,-1361,-1388,-1419,-1453,
+-1488,-1520,-1548,-1572,-1595,-1620,-1648,-1674,-1697,-1714,-1729,-1744,-1764,-1786,-1808,-1827,-1841,-1851,-1860,-1870,-1879,
+-1888,-1897,-1905,-1916,-1927,-1939,-1948,-1952,-1953,-1950,-1949,-1953,-1963,-1976,-1989,-1997,-1998,-1996,-1998,-2013,-2043,
+-2081,-2119,-2146,-2155,-2146,-2121,-2082,-2029,-1961,-1883,-1803,-1733,-1680,-1648,-1635,-1641,-1669,-1721,-1797,-1881,-1954,
+-1994,-1994,-1963,-1919,-1879,-1848,-1819,-1779,-1723,-1662,-1611,-1586,-1587,-1606,-1624,-1632,-1627,-1616,-1606,-1604,-1607,
+-1612,-1614,-1610,-1601,-1586,-1569,-1551,-1538,-1531,-1530,-1533,-1534,-1529,-1519,-1507,-1500,-1500,-1506,-1516,-1523,-1525,
+-1523,-1520,-1520,-1527,-1541,-1561,-1581,-1595,-1603,-1605,-1607,-1611,-1618,-1625,-1630,-1632,-1634,-1641,-1657,-1678,-1701,
+-1718,-1726,-1729,-1731,-1736,-1745,-1756,-1767,-1778,-1791,-1809,-1831,-1853,-1870,-1879,-1883,-1886,-1894,-1910,-1934,-1964,
+-1998,-2037,-2078,-2118,-2152,-2175,-2185,-2185,-2185,-2193,-2214,-2249,-2293,-2342,-2391,-2439,-2488,-2537,-2586,-2634,-2677,
+-2715,-2747,-2774,-2799,-2825,-2855,-2892,-2933,-2974,-3011,-3043,-3070,-3095,-3122,-3151,-3183,-3217,-3254,-3293,-3330,-3364,
+-3391,-3414,-3433,-3453,-3475,-3496,-3513,-3526,-3539,-3558,-3586,-3622,-3661,-3693,-3717,-3735,-3751,-3766,-3780,-3790,-3794,
+-3797,-3806,-3822,-3842,-3859,-3868,-3869,-3869,-3874,-3882,-3887,-3881,-3862,-3836,-3813,-3802,-3803,-3813,-3825,-3836,-3846,
+-3856,-3868,-3882,-3897,-3914,-3932,-3950,-3962,-3967,-3962,-3952,-3943,-3937,-3931,-3920,-3901,-3876,-3848,-3823,-3798,-3771,
+-3738,-3699,-3659,-3626,-3600,-3578,-3555,-3528,-3499,-3475,-3459,-3449,-3439,-3422,-3393,-3348,-3288,-3214,-3130,-3039,-2950,
+-2868,-2801,-2747,-2704,-2668,-2636,-2609,-2587,-2572,-2563,-2558,-2553,-2546,-2533,-2508,-2463,-2396,-2309,-2214,-2127,-2062,
+-2027,-2022,-2037,-2059,-2078,-2085,-2078,-2058,-2028,-1992,-1952,-1909,-1863,-1815,-1766,-1721,-1681,-1648,-1616,-1576,-1522,
+-1449,-1361,-1267,-1174,-1084,-989,-876,-738,-573,-395,-219,-63,65,169,257,338,417,494,566,632,690,
+745,799,854,910,968,1028,1094,1168,1248,1334,1423,1518,1626,1756,1907,2069,2223,2342,2409,2420,2386,
+2329,2274,2235,2218,2223,2244,2280,2328,2389,2458,2532,2603,2672,2738,2806,2882,2967,3058,3148,3232,3305,
+3369,3427,3484,3543,3604,3665,3725,3784,3842,3899,3955,4008,4059,4109,4159,4212,4268,4323,4375,4425,4474,
+4525,4577,4630,4683,4732,4780,4830,4882,4937,4994,5048,5099,5146,5189,5229,5266,5301,5335,5371,5409,5448,
+5487,5524,5560,5597,5637,5681,5727,5774,5822,5870,5919,5969,6018,6064,6108,6152,6200,6252,6304,6348,6380,
+6401,6415,6432,6454,6477,6494,6496,6483,6462,6443,6433,6431,6431,6426,6414,6401,6394,6395,6400,6399,6388,
+6368,6347,6333,6328,6326,6320,6306,6288,6274,6270,6275,6279,6275,6257,6229,6201,6176,6156,6135,6108,6075,
+6038,6002,5969,5939,5912,5885,5859,5834,5809,5782,5753,5724,5698,5675,5653,5630,5607,5588,5584,5602,5642,
+5695,5746,5784,5806,5819,5834,5857,5885,5907,5911,5892,5850,5796,5742,5695,5660,5632,5609,5588,5566,5544,
+5520,5491,5455,5415,5376,5344,5321,5307,5294,5277,5252,5222,5191,5165,5143,5124,5104,5081,5055,5025,4994,
+4961,4928,4896,4868,4842,4816,4788,4755,4718,4683,4649,4704,4667,4629,4591,4555,4523,4498,4479,4464,4453,
+4448,4454,4471,4494,4516,4531,4542,4557,4584,4624,4667,4699,4714,4714,4715,4729,4761,4803,4839,4857,4854,
+4838,4823,4816,4820,4830,4841,4849,4852,4848,4834,4809,4775,4736,4699,4668,4645,4630,4621,4618,4624,4638,
+4660,4682,4697,4697,4683,4661,4641,4633,4641,4657,4669,4659,4619,4553,4473,4398,4345,4317,4309,4312,4315,
+4315,4311,4306,4303,4301,4299,4292,4277,4247,4202,4143,4077,4012,3957,3915,3881,3846,3803,3745,3670,3582,
+3486,3393,3311,3252,3222,3223,3246,3280,3314,3338,3354,3363,3369,3373,3373,3364,3343,3311,3270,3224,3175,
+3125,3072,3017,2958,2900,2843,2789,2734,2671,2598,2516,2435,2368,2326,2308,2306,2302,2283,2244,2191,2133,
+2076,2024,1970,1913,1854,1798,1753,1722,1700,1678,1646,1600,1540,1472,1401,1330,1260,1191,1125,1069,1027,
+1000,984,971,956,935,908,882,857,835,810,779,737,682,618,546,470,392,313,230,141,44,
+-59,-164,-264,-353,-429,-491,-543,-587,-626,-661,-693,-726,-762,-808,-864,-932,-1009,-1089,-1165,-1231,-1283,
+-1323,-1359,-1397,-1440,-1486,-1528,-1559,-1578,-1590,-1601,-1613,-1621,-1621,-1610,-1597,-1592,-1607,-1642,-1693,-1749,-1807,
+-1870,-1940,-2014,-2081,-2128,-2149,-2151,-2149,-2150,-2150,-2130,-2075,-1987,-1890,-1821,-1810,-1861,-1950,-2046,-2123,-2177,
+-2224,-2280,-2351,-2429,-2500,-2557,-2603,-2650,-2707,-2774,-2844,-2905,-2955,-2993,-3024,-3052,-3075,-3090,-3097,-3097,-3096,
+-3097,-3102,-3114,-3131,-3155,-3182,-3207,-3226,-3236,-3242,-3251,-3272,-3308,-3353,-3399,-3440,-3477,-3511,-3546,-3580,-3610,
+-3632,-3650,-3670,-3697,-3731,-3768,-3799,-3821,-3839,-3857,-3881,-3909,-3936,-3956,-3970,-3981,-3990,-3999,-4006,-4009,-4009,
+-4008,-4007,-4005,-3999,-3991,-3984,-3986,-4003,-4035,-4079,-4127,-4179,-4232,-4288,-4345,-4394,-4432,-4456,-4469,-4479,-4490,
+-4503,-4515,-4522,-4526,-4530,-4543,-4569,-4605,-4646,-4680,-4695,-4682,-4638,-4571,-4497,-4436,-4401,-4395,-4404,-4411,-4394,
+-4346,-4271,-4184,-4106,-4057,-4045,-4069,-4114,-4163,-4199,-4217,-4225,-4234,-4254,-4289,-4331,-4372,-4407,-4437,-4465,-4492,
+-4521,-4551,-4585,-4626,-4674,-4718,-4742,-4736,-4698,-4645,-4597,-4568,-4559,-4558,-4554,-4542,-4531,-4528,-4537,-4547,-4548,
+-4533,-4508,-4484,-4469,-4461,-4449,-4425,-4388,-4350,-4324,-4317,-4324,-4336,-4342,-4339,-4330,-4319,-4309,-4295,-4275,-4248,
+-4216,-4186,-4164,-4150,-4141,-4133,-4121,-4103,-4083,-4065,-4050,-4040,-4028,-4011,-3983,-3943,-3894,-3835,-3766,-3686,-3600,
+-3513,-3437,-3376,-3331,-3292,-3248,-3194,-3133,-3074,-3022,-2977,-2933,-2883,-2823,-2758,-2693,-2633,-2578,-2525,-2473,-2420,
+-2369,-2320,-2271,-2219,-2163,-2103,-2042,-1982,-1923,-1863,-1800,-1735,-1670,-1606,-1542,-1476,-1408,-1339,-1271,-1201,-1127,
+-1046,-957,-865,-775,-692,-611,-527,-435,-336,-234,-137,-46,40,125,205,275,326,361,386,414,455,
+510,569,625,675,721,771,829,892,956,1014,1068,1117,1165,1210,1251,1286,1319,1352,1388,1428,1469,
+1506,1539,1566,1586,1598,1604,1610,1624,1654,1702,1762,1823,1874,1911,1934,1948,1956,1960,1962,1965,1973,
+1987,2006,2026,2042,2054,2066,2078,2093,2109,2127,2150,2184,2228,2278,2325,2359,2379,2390,2400,2410,2417,
+2415,2401,2378,2352,2326,2294,2250,2195,2144,2117,2130,2179,2243,2290,2299,2268,2214,2160,2124,2112,2117,
+2126,2130,2122,2101,2071,2039,2015,2001,1997,1995,1991,1984,1978,1982,1996,2015,2030,2033,2029,2027,2038,
+2060,2085,2100,2099,2088,2077,2075,2082,2092,2098,2100,2102,2111,2133,2168,2219,2285,2369,2464,2550,2597,
+2574,2459,2247,1952,1600,1225,860,540,295,145,97,138,241,372,504,621,719,799,860,900,918,
+917,906,894,886,879,867,845,815,783,755,732,710,681,643,600,559,524,495,468,436,400,
+361,322,282,233,170,94,14,-52,-86,-75,-21,59,139,187,180,116,15,-88,-158,-175,-140,
+-78,-15,27,45,42,28,10,-8,-25,-37,-40,-35,-28,-24,-23,-23,-19,-8,2,7,1,
+-8,-15,-10,5,23,33,33,27,22,22,26,28,24,17,12,14,23,35,49,62,75,
+88,100,109,116,124,137,154,171,182,184,180,178,184,199,221,245,269,291,314,336,356,
+372,384,394,406,423,446,472,499,524,542,554,559,559,560,562,568,576,584,591,596,600,
+604,609,616,625,636,647,657,663,666,666,666,666,667,666,664,660,656,652,651,649,644,
+636,623,608,594,582,573,565,559,552,544,535,526,518,510,502,491,477,460,443,427,414,
+402,389,373,356,338,320,302,283,263,244,227,213,200,185,166,144,123,104,87,69,45,
+18,-9,-35,-57,-78,-102,-130,-160,-188,-213,-235,-258,-284,-315,-347,-380,-410,-438,-466,-494,-521,
+-549,-577,-606,-637,-668,-697,-723,-745,-765,-786,-810,-837,-868,-902,-936,-971,-1005,-1039,-1073,-1107,-1140,
+-1172,-1201,-1228,-1255,-1283,-1315,-1348,-1379,-1406,-1431,-1456,-1485,-1520,-1558,-1593,-1622,-1647,-1670,-1694,-1719,-1743,
+-1762,-1778,-1794,-1811,-1833,-1856,-1876,-1893,-1904,-1913,-1922,-1932,-1941,-1947,-1952,-1955,-1961,-1970,-1982,-1994,-2003,
+-2008,-2007,-2005,-2004,-2008,-2020,-2037,-2055,-2068,-2076,-2079,-2083,-2093,-2110,-2132,-2153,-2167,-2171,-2163,-2141,-2107,
+-2062,-2010,-1956,-1902,-1847,-1789,-1730,-1679,-1653,-1671,-1737,-1838,-1945,-2024,-2056,-2040,-1994,-1939,-1887,-1839,-1788,
+-1730,-1670,-1622,-1598,-1599,-1616,-1635,-1643,-1640,-1631,-1624,-1623,-1626,-1627,-1623,-1612,-1596,-1579,-1563,-1551,-1543,
+-1538,-1536,-1535,-1534,-1531,-1522,-1508,-1490,-1470,-1452,-1442,-1441,-1447,-1454,-1459,-1458,-1455,-1454,-1462,-1482,-1512,
+-1545,-1576,-1599,-1615,-1624,-1628,-1630,-1631,-1634,-1641,-1652,-1666,-1679,-1689,-1694,-1697,-1700,-1704,-1710,-1717,-1726,
+-1738,-1756,-1781,-1808,-1833,-1852,-1861,-1863,-1863,-1865,-1875,-1893,-1920,-1957,-2002,-2051,-2096,-2131,-2149,-2151,-2145,
+-2142,-2152,-2179,-2222,-2274,-2329,-2382,-2432,-2481,-2530,-2578,-2624,-2668,-2707,-2739,-2765,-2786,-2805,-2829,-2861,-2899,
+-2939,-2976,-3005,-3029,-3055,-3087,-3127,-3171,-3214,-3251,-3283,-3311,-3337,-3363,-3389,-3415,-3441,-3467,-3491,-3510,-3525,
+-3539,-3558,-3588,-3625,-3661,-3689,-3704,-3711,-3717,-3728,-3742,-3755,-3765,-3774,-3788,-3808,-3831,-3851,-3860,-3861,-3859,
+-3861,-3867,-3869,-3859,-3835,-3806,-3785,-3781,-3796,-3818,-3838,-3849,-3853,-3854,-3859,-3868,-3881,-3896,-3913,-3929,-3941,
+-3944,-3939,-3927,-3915,-3904,-3893,-3879,-3858,-3832,-3805,-3778,-3754,-3727,-3695,-3661,-3628,-3601,-3579,-3557,-3530,-3498,
+-3467,-3444,-3435,-3435,-3436,-3429,-3406,-3366,-3311,-3241,-3157,-3062,-2961,-2865,-2783,-2724,-2688,-2672,-2669,-2672,-2677,
+-2677,-2669,-2649,-2617,-2571,-2514,-2445,-2365,-2276,-2181,-2087,-2004,-1939,-1899,-1884,-1892,-1916,-1947,-1976,-1997,-2004,
+-1998,-1981,-1954,-1920,-1879,-1831,-1779,-1728,-1683,-1646,-1614,-1579,-1530,-1462,-1376,-1279,-1179,-1076,-963,-833,-681,
+-509,-334,-171,-33,75,161,237,311,386,461,530,591,645,697,752,813,879,948,1017,1085,1153,
+1222,1292,1366,1449,1549,1676,1831,2004,2173,2309,2390,2409,2379,2323,2269,2232,2220,2227,2249,2283,2332,
+2395,2470,2550,2626,2696,2762,2831,2910,3002,3101,3199,3286,3358,3415,3463,3508,3555,3606,3661,3717,3775,
+3832,3888,3942,3994,4044,4095,4148,4201,4252,4300,4343,4383,4425,4472,4523,4577,4630,4680,4730,4781,4836,
+4895,4955,5014,5068,5117,5161,5200,5237,5272,5309,5348,5389,5431,5470,5507,5542,5579,5619,5662,5709,5757,
+5807,5859,5915,5971,6022,6066,6102,6135,6173,6220,6276,6331,6378,6411,6433,6451,6471,6493,6511,6518,6509,
+6489,6467,6453,6448,6447,6443,6432,6418,6406,6402,6403,6402,6393,6375,6353,6337,6330,6329,6325,6314,6296,
+6278,6269,6268,6271,6268,6255,6234,6209,6186,6165,6144,6118,6089,6058,6029,6000,5968,5933,5897,5865,5840,
+5820,5802,5780,5752,5722,5692,5664,5636,5606,5578,5562,5567,5598,5647,5700,5740,5761,5767,5770,5780,5801,
+5825,5839,5834,5807,5763,5713,5667,5627,5595,5567,5542,5519,5498,5477,5452,5422,5388,5352,5321,5297,5280,
+5262,5239,5209,5173,5138,5109,5091,5081,5076,5071,5061,5044,5017,4982,4943,4906,4877,4857,4842,4825,4803,
+4774,4740,4704,4723,4687,4649,4612,4578,4549,4524,4502,4481,4463,4455,4461,4481,4508,4534,4552,4563,4578,
+4604,4641,4678,4705,4716,4720,4730,4756,4794,4833,4856,4858,4845,4832,4830,4841,4857,4867,4865,4852,4834,
+4816,4797,4775,4748,4718,4689,4663,4639,4615,4591,4570,4559,4564,4585,4616,4646,4665,4670,4666,4659,4658,
+4663,4667,4658,4627,4572,4500,4427,4368,4331,4317,4318,4325,4332,4339,4344,4349,4352,4351,4346,4335,4317,
+4288,4246,4189,4123,4058,4001,3958,3927,3902,3874,3837,3789,3725,3646,3554,3457,3367,3298,3260,3252,3267,
+3293,3318,3339,3354,3366,3375,3377,3370,3351,3321,3284,3242,3199,3154,3106,3054,3000,2946,2893,2843,2790,
+2729,2654,2567,2477,2399,2344,2318,2312,2311,2299,2270,2226,2176,2127,2082,2036,1986,1933,1881,1839,1811,
+1791,1769,1736,1686,1622,1552,1484,1421,1360,1296,1229,1161,1099,1049,1010,978,948,915,881,848,820,
+795,771,743,706,658,600,532,458,380,297,208,111,7,-102,-207,-300,-373,-426,-467,-505,-546,
+-595,-650,-706,-762,-820,-883,-954,-1031,-1110,-1185,-1248,-1298,-1332,-1358,-1383,-1414,-1453,-1496,-1538,-1573,-1601,
+-1625,-1647,-1669,-1683,-1687,-1681,-1675,-1682,-1710,-1757,-1813,-1868,-1917,-1964,-2015,-2068,-2116,-2146,-2155,-2151,-2148,
+-2154,-2160,-2148,-2100,-2018,-1927,-1864,-1860,-1916,-2012,-2112,-2191,-2245,-2290,-2344,-2414,-2495,-2571,-2632,-2680,-2725,
+-2776,-2835,-2898,-2956,-3005,-3044,-3078,-3107,-3129,-3140,-3138,-3128,-3115,-3109,-3113,-3127,-3151,-3179,-3209,-3236,-3256,
+-3269,-3278,-3294,-3322,-3364,-3415,-3465,-3510,-3548,-3582,-3618,-3655,-3689,-3717,-3742,-3767,-3797,-3833,-3870,-3901,-3923,
+-3940,-3956,-3975,-3995,-4012,-4024,-4032,-4040,-4051,-4064,-4075,-4081,-4081,-4075,-4068,-4059,-4049,-4038,-4030,-4027,-4034,
+-4047,-4065,-4086,-4116,-4160,-4221,-4293,-4365,-4422,-4458,-4476,-4483,-4488,-4496,-4506,-4518,-4533,-4555,-4587,-4631,-4681,
+-4730,-4765,-4775,-4753,-4701,-4630,-4558,-4504,-4480,-4482,-4493,-4495,-4475,-4431,-4371,-4309,-4252,-4207,-4175,-4161,-4166,
+-4188,-4218,-4246,-4261,-4263,-4256,-4251,-4258,-4283,-4328,-4389,-4455,-4516,-4561,-4592,-4617,-4649,-4694,-4744,-4781,-4788,
+-4762,-4715,-4672,-4650,-4649,-4654,-4646,-4619,-4580,-4548,-4532,-4533,-4538,-4537,-4526,-4508,-4491,-4476,-4459,-4436,-4409,
+-4383,-4367,-4363,-4366,-4367,-4361,-4348,-4334,-4325,-4320,-4316,-4307,-4288,-4260,-4228,-4197,-4172,-4154,-4142,-4133,-4123,
+-4111,-4097,-4082,-4066,-4048,-4027,-4000,-3962,-3910,-3840,-3753,-3652,-3548,-3454,-3381,-3331,-3296,-3263,-3223,-3174,-3123,
+-3080,-3048,-3020,-2984,-2931,-2863,-2786,-2710,-2641,-2579,-2521,-2466,-2415,-2369,-2326,-2282,-2232,-2175,-2113,-2049,-1985,
+-1922,-1856,-1788,-1719,-1650,-1583,-1515,-1446,-1376,-1308,-1243,-1179,-1109,-1029,-935,-835,-736,-644,-560,-477,-389,
+-294,-195,-99,-8,78,160,233,293,336,364,388,419,463,516,570,618,660,705,760,826,898,
+965,1023,1070,1114,1160,1209,1260,1311,1359,1408,1456,1503,1548,1588,1624,1652,1671,1678,1675,1669,1673,
+1696,1738,1793,1845,1883,1905,1916,1924,1934,1945,1955,1965,1976,1991,2011,2033,2054,2071,2086,2102,2120,
+2141,2168,2204,2250,2304,2360,2407,2438,2453,2458,2461,2466,2466,2458,2438,2410,2378,2342,2300,2248,2192,
+2150,2138,2165,2220,2279,2313,2310,2273,2220,2172,2139,2124,2122,2127,2132,2132,2120,2095,2062,2032,2015,
+2012,2016,2020,2017,2011,2010,2017,2028,2035,2033,2026,2022,2029,2042,2052,2051,2040,2030,2031,2045,2064,
+2074,2071,2064,2069,2099,2156,2228,2304,2379,2454,2529,2590,2604,2533,2348,2046,1656,1229,820,478,235,
+103,80,147,277,435,589,716,807,864,898,920,935,944,945,937,922,901,877,850,819,783,
+746,710,678,649,619,587,550,512,474,438,405,375,346,315,282,241,189,127,55,-16,-79,
+-116,-115,-70,13,110,183,197,133,8,-136,-248,-293,-267,-195,-115,-55,-25,-15,-17,-23,-36,
+-54,-74,-86,-86,-76,-65,-61,-62,-64,-61,-53,-45,-43,-46,-48,-43,-31,-20,-17,-24,-35,
+-42,-40,-31,-23,-19,-18,-15,-6,6,19,29,37,48,64,81,98,110,120,129,142,154,
+164,168,170,174,184,201,221,240,258,276,295,315,333,348,360,373,389,411,434,457,477,
+494,508,518,524,526,526,526,528,533,539,544,548,551,555,562,571,582,592,600,607,611,
+613,615,616,617,615,611,604,597,592,592,595,595,592,583,570,556,543,533,523,516,509,
+503,497,490,480,470,459,448,434,418,398,377,357,341,327,313,298,281,264,246,227,206,
+184,163,146,135,126,115,99,77,54,33,13,-6,-29,-57,-85,-109,-129,-148,-168,-194,-222,
+-250,-276,-300,-325,-352,-382,-412,-441,-468,-496,-527,-558,-589,-619,-647,-677,-709,-742,-774,-801,-823,
+-841,-860,-883,-911,-944,-978,-1014,-1049,-1084,-1120,-1156,-1193,-1226,-1255,-1280,-1302,-1326,-1354,-1387,-1422,-1456,
+-1484,-1508,-1532,-1559,-1591,-1625,-1658,-1688,-1714,-1739,-1764,-1787,-1808,-1826,-1842,-1859,-1880,-1902,-1924,-1941,-1954,
+-1963,-1973,-1983,-1994,-2002,-2005,-2005,-2004,-2006,-2012,-2023,-2035,-2048,-2058,-2064,-2065,-2063,-2062,-2065,-2074,-2088,
+-2104,-2117,-2125,-2127,-2129,-2134,-2146,-2164,-2183,-2198,-2203,-2194,-2172,-2142,-2112,-2085,-2058,-2022,-1967,-1889,-1801,
+-1725,-1692,-1719,-1802,-1914,-2018,-2083,-2096,-2064,-2005,-1937,-1869,-1802,-1738,-1682,-1642,-1625,-1630,-1649,-1667,-1674,
+-1669,-1658,-1648,-1643,-1642,-1639,-1630,-1615,-1598,-1585,-1578,-1575,-1572,-1563,-1548,-1532,-1522,-1518,-1519,-1515,-1498,
+-1467,-1428,-1395,-1380,-1384,-1401,-1417,-1422,-1415,-1403,-1401,-1417,-1452,-1498,-1541,-1572,-1589,-1594,-1594,-1598,-1606,
+-1620,-1634,-1647,-1657,-1663,-1668,-1673,-1679,-1685,-1690,-1693,-1696,-1701,-1714,-1734,-1761,-1790,-1816,-1835,-1846,-1849,
+-1848,-1845,-1845,-1853,-1872,-1905,-1953,-2009,-2063,-2104,-2126,-2130,-2124,-2122,-2136,-2171,-2222,-2281,-2339,-2393,-2442,
+-2490,-2539,-2588,-2636,-2678,-2713,-2739,-2757,-2770,-2781,-2798,-2824,-2858,-2895,-2930,-2959,-2986,-3017,-3058,-3108,-3159,
+-3202,-3233,-3253,-3271,-3294,-3322,-3353,-3384,-3412,-3439,-3464,-3490,-3515,-3542,-3572,-3605,-3635,-3658,-3666,-3661,-3654,
+-3654,-3669,-3697,-3728,-3754,-3772,-3786,-3803,-3821,-3836,-3843,-3842,-3839,-3840,-3844,-3843,-3829,-3802,-3772,-3754,-3759,
+-3784,-3816,-3841,-3852,-3852,-3848,-3847,-3852,-3859,-3868,-3877,-3886,-3893,-3896,-3892,-3882,-3870,-3859,-3848,-3834,-3814,
+-3789,-3760,-3730,-3701,-3670,-3636,-3602,-3572,-3549,-3529,-3509,-3482,-3450,-3418,-3395,-3385,-3384,-3384,-3377,-3358,-3329,
+-3289,-3237,-3169,-3083,-2982,-2878,-2787,-2723,-2693,-2693,-2712,-2735,-2750,-2748,-2724,-2679,-2615,-2536,-2446,-2349,-2250,
+-2155,-2070,-1998,-1939,-1894,-1861,-1840,-1834,-1843,-1864,-1890,-1915,-1930,-1934,-1927,-1913,-1894,-1867,-1830,-1784,-1732,
+-1682,-1639,-1604,-1567,-1521,-1457,-1374,-1277,-1170,-1055,-926,-781,-618,-447,-283,-141,-28,56,124,188,258,
+333,409,480,542,596,650,709,777,851,927,998,1061,1117,1172,1229,1294,1371,1466,1587,1736,1906,
+2078,2228,2330,2375,2372,2341,2306,2283,2275,2278,2289,2311,2352,2416,2498,2588,2672,2744,2808,2876,2958,
+3056,3163,3265,3351,3416,3461,3496,3529,3564,3606,3654,3705,3759,3813,3865,3916,3966,4017,4071,4127,4182,
+4230,4271,4305,4338,4376,4420,4471,4526,4581,4635,4691,4748,4809,4870,4931,4989,5043,5093,5138,5179,5215,
+5250,5285,5324,5366,5409,5449,5487,5524,5563,5608,5657,5707,5758,5808,5859,5914,5970,6024,6070,6105,6135,
+6167,6208,6260,6318,6372,6415,6445,6466,6484,6503,6521,6531,6527,6510,6487,6467,6455,6452,6451,6445,6432,
+6416,6403,6394,6388,6378,6364,6347,6333,6326,6324,6322,6314,6300,6286,6276,6272,6272,6269,6258,6242,6224,
+6206,6187,6165,6140,6112,6085,6061,6036,6004,5965,5922,5884,5857,5840,5826,5807,5779,5744,5710,5680,5652,
+5622,5589,5561,5546,5555,5585,5626,5661,5681,5683,5677,5674,5681,5696,5710,5716,5708,5689,5664,5637,5609,
+5579,5544,5507,5472,5444,5422,5403,5383,5357,5327,5298,5275,5258,5242,5224,5199,5168,5137,5111,5093,5083,
+5079,5077,5071,5057,5033,4997,4955,4914,4881,4859,4845,4832,4814,4789,4758,4723,4725,4691,4657,4623,4593,
+4567,4545,4525,4506,4490,4482,4489,4508,4535,4559,4576,4588,4604,4631,4666,4701,4727,4740,4749,4767,4798,
+4835,4866,4878,4871,4858,4855,4868,4892,4910,4909,4886,4848,4808,4775,4750,4727,4704,4679,4655,4631,4608,
+4581,4551,4522,4502,4499,4512,4538,4566,4587,4601,4611,4624,4641,4658,4664,4649,4608,4545,4473,4409,4363,
+4339,4332,4332,4336,4341,4348,4359,4371,4377,4374,4361,4342,4319,4289,4251,4201,4142,4081,4027,3984,3951,
+3925,3899,3872,3843,3807,3758,3691,3607,3513,3425,3356,3314,3299,3304,3319,3338,3357,3373,3383,3383,3372,
+3351,3323,3289,3254,3216,3175,3130,3083,3034,2987,2942,2898,2851,2794,2722,2635,2542,2458,2394,2357,2340,
+2331,2317,2291,2253,2212,2173,2136,2098,2055,2007,1960,1922,1895,1874,1850,1811,1756,1690,1624,1566,1517,
+1473,1425,1367,1301,1233,1170,1113,1061,1010,959,907,859,817,782,749,715,677,632,578,516,446,
+369,285,193,91,-20,-134,-243,-333,-399,-441,-472,-504,-550,-612,-687,-766,-844,-920,-994,-1067,-1138,
+-1202,-1258,-1302,-1334,-1359,-1382,-1408,-1440,-1478,-1518,-1555,-1587,-1616,-1644,-1675,-1705,-1729,-1741,-1745,-1750,-1767,
+-1802,-1850,-1902,-1948,-1985,-2021,-2060,-2101,-2136,-2156,-2157,-2150,-2147,-2154,-2161,-2151,-2106,-2032,-1954,-1906,-1916,
+-1981,-2080,-2178,-2254,-2308,-2356,-2414,-2490,-2573,-2649,-2708,-2752,-2791,-2837,-2893,-2955,-3013,-3062,-3102,-3137,-3166,
+-3187,-3195,-3189,-3172,-3154,-3144,-3146,-3161,-3185,-3215,-3246,-3273,-3295,-3311,-3325,-3343,-3371,-3412,-3463,-3516,-3565,
+-3609,-3650,-3690,-3730,-3768,-3801,-3830,-3858,-3889,-3921,-3951,-3975,-3991,-4003,-4017,-4034,-4055,-4074,-4088,-4098,-4108,
+-4121,-4134,-4145,-4150,-4149,-4143,-4135,-4126,-4116,-4104,-4095,-4090,-4090,-4091,-4091,-4092,-4101,-4129,-4182,-4256,-4336,
+-4407,-4459,-4489,-4505,-4514,-4520,-4529,-4545,-4572,-4615,-4672,-4736,-4797,-4845,-4873,-4877,-4858,-4819,-4771,-4727,-4701,
+-4696,-4703,-4704,-4684,-4639,-4580,-4523,-4475,-4433,-4387,-4329,-4265,-4213,-4188,-4196,-4225,-4255,-4270,-4265,-4251,-4242,
+-4257,-4301,-4372,-4457,-4540,-4606,-4651,-4681,-4709,-4745,-4787,-4821,-4830,-4807,-4763,-4721,-4697,-4696,-4702,-4696,-4666,
+-4618,-4571,-4540,-4532,-4538,-4544,-4539,-4521,-4494,-4466,-4440,-4419,-4404,-4396,-4395,-4397,-4396,-4389,-4374,-4357,-4343,
+-4337,-4338,-4341,-4340,-4329,-4306,-4274,-4238,-4205,-4179,-4162,-4154,-4149,-4142,-4130,-4112,-4089,-4064,-4039,-4010,-3972,
+-3918,-3840,-3740,-3626,-3514,-3422,-3360,-3325,-3301,-3274,-3233,-3183,-3134,-3097,-3071,-3046,-3010,-2954,-2881,-2802,-2726,
+-2656,-2590,-2527,-2467,-2414,-2369,-2328,-2286,-2236,-2176,-2110,-2044,-1979,-1915,-1849,-1780,-1710,-1640,-1571,-1502,-1430,
+-1358,-1289,-1224,-1160,-1090,-1007,-908,-801,-697,-602,-518,-437,-351,-258,-160,-64,25,106,178,240,292,
+333,366,400,439,486,535,580,618,656,701,759,830,903,970,1025,1072,1117,1167,1222,1280,1339,
+1397,1454,1508,1559,1604,1644,1680,1711,1733,1742,1739,1731,1731,1749,1787,1834,1876,1900,1908,1908,1912,
+1925,1944,1964,1979,1991,2005,2023,2046,2069,2090,2110,2130,2153,2181,2216,2258,2308,2365,2421,2468,2500,
+2516,2523,2527,2527,2523,2508,2483,2449,2408,2360,2301,2235,2173,2136,2139,2183,2248,2305,2329,2314,2273,
+2225,2185,2159,2142,2133,2132,2138,2146,2145,2124,2087,2044,2014,2003,2010,2023,2030,2030,2028,2029,2034,
+2037,2034,2028,2022,2021,2020,2014,2001,1989,1990,2011,2043,2070,2078,2067,2057,2069,2117,2196,2284,2366,
+2437,2501,2559,2595,2570,2440,2180,1798,1345,891,507,240,109,100,185,327,492,653,788,885,942,
+965,967,961,959,960,962,957,940,911,876,837,798,758,714,667,622,581,548,521,495,465,
+430,391,353,321,295,271,241,199,145,79,10,-57,-117,-162,-179,-156,-90,2,87,118,67,
+-59,-217,-348,-405,-380,-300,-210,-145,-112,-100,-94,-91,-94,-111,-135,-153,-155,-139,-118,-104,-104,
+-111,-115,-111,-103,-97,-96,-94,-89,-78,-68,-67,-76,-89,-96,-93,-83,-72,-66,-62,-56,-45,
+-31,-19,-11,-3,11,33,60,84,100,108,114,123,134,144,151,156,161,171,185,200,213,
+226,241,258,277,294,307,319,335,355,380,405,424,437,446,455,465,474,479,481,480,481,
+484,488,493,496,499,503,510,519,529,537,543,547,549,552,557,563,567,566,559,548,538,
+532,532,536,538,534,524,513,502,494,486,476,467,458,451,447,441,432,419,403,387,370,
+353,333,312,291,273,257,241,224,205,187,169,151,131,109,86,68,55,47,38,23,2,
+-21,-44,-66,-88,-112,-139,-165,-187,-204,-219,-237,-259,-285,-313,-340,-367,-396,-426,-456,-484,-508,
+-532,-558,-589,-624,-657,-687,-713,-740,-771,-803,-836,-864,-887,-907,-928,-954,-985,-1020,-1055,-1090,-1124,
+-1158,-1194,-1231,-1267,-1300,-1329,-1354,-1377,-1401,-1428,-1459,-1493,-1527,-1558,-1586,-1612,-1639,-1667,-1696,-1724,-1750,
+-1776,-1802,-1827,-1850,-1869,-1886,-1903,-1923,-1944,-1966,-1985,-1999,-2010,-2019,-2030,-2042,-2052,-2057,-2058,-2055,-2053,
+-2054,-2060,-2068,-2078,-2088,-2097,-2105,-2111,-2114,-2113,-2111,-2111,-2115,-2122,-2131,-2138,-2141,-2141,-2144,-2154,-2174,
+-2201,-2228,-2245,-2245,-2230,-2205,-2182,-2168,-2163,-2155,-2127,-2068,-1980,-1884,-1809,-1782,-1815,-1896,-1997,-2084,-2131,
+-2128,-2082,-2007,-1920,-1835,-1761,-1707,-1675,-1668,-1679,-1699,-1716,-1723,-1716,-1702,-1688,-1678,-1670,-1661,-1648,-1631,
+-1616,-1610,-1612,-1618,-1616,-1600,-1570,-1536,-1515,-1512,-1524,-1536,-1528,-1493,-1439,-1384,-1350,-1346,-1365,-1390,-1404,
+-1402,-1391,-1386,-1400,-1433,-1475,-1512,-1532,-1534,-1526,-1521,-1529,-1551,-1582,-1612,-1633,-1645,-1649,-1653,-1659,-1669,
+-1679,-1685,-1688,-1691,-1697,-1709,-1729,-1751,-1774,-1795,-1812,-1825,-1833,-1835,-1830,-1823,-1820,-1828,-1853,-1897,-1955,
+-2017,-2071,-2106,-2121,-2124,-2129,-2148,-2187,-2243,-2303,-2358,-2403,-2444,-2488,-2539,-2596,-2649,-2692,-2721,-2737,-2744,
+-2748,-2755,-2769,-2793,-2824,-2859,-2892,-2921,-2950,-2984,-3028,-3079,-3128,-3168,-3193,-3210,-3228,-3252,-3282,-3311,-3334,
+-3351,-3369,-3396,-3436,-3484,-3534,-3577,-3610,-3627,-3629,-3615,-3594,-3577,-3578,-3604,-3650,-3701,-3743,-3770,-3783,-3791,
+-3798,-3804,-3807,-3805,-3803,-3804,-3808,-3807,-3795,-3771,-3745,-3732,-3741,-3769,-3804,-3830,-3840,-3840,-3836,-3835,-3837,
+-3839,-3839,-3837,-3837,-3840,-3845,-3846,-3843,-3834,-3824,-3812,-3797,-3776,-3748,-3715,-3678,-3641,-3603,-3565,-3530,-3500,
+-3477,-3459,-3442,-3421,-3394,-3366,-3342,-3326,-3314,-3302,-3286,-3265,-3242,-3216,-3182,-3133,-3064,-2976,-2883,-2800,-2744,
+-2722,-2729,-2751,-2768,-2768,-2742,-2694,-2628,-2552,-2469,-2380,-2287,-2195,-2112,-2044,-1995,-1961,-1936,-1912,-1890,-1872,
+-1863,-1864,-1873,-1882,-1883,-1875,-1862,-1848,-1835,-1818,-1793,-1756,-1710,-1662,-1620,-1586,-1554,-1513,-1453,-1372,-1270,
+-1154,-1026,-886,-735,-576,-419,-278,-163,-76,-9,49,111,183,262,343,420,488,549,608,671,742,
+817,889,953,1005,1051,1097,1154,1223,1306,1401,1510,1639,1786,1942,2089,2207,2285,2325,2342,2353,2366,
+2380,2389,2393,2401,2429,2486,2568,2661,2747,2818,2880,2946,3030,3131,3240,3339,3415,3466,3497,3520,3543,
+3571,3605,3644,3686,3731,3777,3823,3870,3918,3971,4029,4089,4146,4195,4236,4269,4302,4339,4383,4432,4486,
+4542,4601,4664,4730,4798,4861,4919,4972,5021,5070,5117,5160,5198,5232,5266,5304,5346,5390,5432,5472,5512,
+5555,5603,5656,5710,5762,5811,5859,5909,5963,6017,6066,6108,6142,6174,6211,6258,6311,6366,6414,6450,6474,
+6492,6509,6526,6539,6541,6530,6508,6483,6464,6455,6453,6451,6441,6423,6402,6382,6366,6353,6341,6328,6317,
+6309,6306,6304,6300,6292,6283,6276,6273,6271,6267,6258,6246,6233,6219,6202,6179,6151,6122,6097,6078,6060,
+6037,6002,5960,5919,5886,5864,5845,5820,5788,5750,5717,5691,5671,5647,5614,5575,5541,5523,5527,5549,5575,
+5592,5594,5583,5568,5556,5551,5551,5554,5555,5557,5559,5559,5553,5537,5510,5474,5439,5412,5394,5383,5369,
+5347,5318,5288,5262,5245,5234,5223,5208,5187,5163,5141,5122,5106,5091,5077,5062,5044,5021,4991,4956,4920,
+4888,4864,4845,4829,4809,4785,4757,4725,4731,4701,4670,4637,4606,4580,4560,4544,4533,4526,4526,4534,4551,
+4570,4587,4599,4610,4627,4655,4690,4724,4748,4762,4775,4795,4825,4860,4886,4897,4894,4891,4897,4916,4936,
+4941,4920,4874,4816,4764,4725,4700,4680,4659,4635,4610,4586,4565,4542,4517,4492,4472,4463,4468,4481,4497,
+4510,4521,4538,4565,4602,4640,4665,4663,4630,4571,4502,4438,4392,4364,4349,4342,4339,4341,4350,4364,4377,
+4382,4374,4353,4326,4297,4266,4231,4189,4140,4089,4042,4003,3970,3939,3908,3879,3856,3838,3820,3790,3741,
+3671,3589,3507,3439,3391,3364,3355,3360,3373,3386,3392,3387,3370,3343,3313,3281,3247,3211,3172,3129,3084,
+3042,3005,2971,2939,2900,2849,2780,2696,2605,2521,2455,2412,2387,2369,2347,2317,2282,2248,2217,2188,2157,
+2118,2075,2031,1995,1967,1944,1915,1873,1816,1752,1690,1639,1599,1564,1526,1477,1419,1356,1294,1233,1173,
+1110,1044,978,916,860,810,763,716,669,620,566,506,437,361,276,183,81,-28,-141,-248,-337,
+-402,-445,-477,-514,-569,-643,-734,-831,-926,-1013,-1090,-1155,-1209,-1251,-1283,-1309,-1332,-1356,-1385,-1419,-1458,
+-1500,-1540,-1575,-1603,-1629,-1657,-1689,-1724,-1754,-1776,-1791,-1805,-1828,-1863,-1905,-1946,-1979,-2007,-2036,-2071,-2109,
+-2140,-2156,-2155,-2147,-2144,-2149,-2152,-2137,-2095,-2033,-1978,-1959,-1991,-2067,-2162,-2250,-2317,-2367,-2418,-2482,-2560,
+-2642,-2712,-2764,-2802,-2840,-2888,-2946,-3010,-3069,-3119,-3158,-3190,-3218,-3238,-3247,-3243,-3228,-3211,-3201,-3203,-3217,
+-3240,-3268,-3297,-3325,-3350,-3370,-3387,-3404,-3428,-3461,-3506,-3557,-3610,-3662,-3711,-3758,-3802,-3843,-3879,-3911,-3940,
+-3969,-3994,-4014,-4026,-4033,-4039,-4053,-4075,-4103,-4132,-4155,-4172,-4186,-4200,-4212,-4221,-4226,-4227,-4226,-4223,-4216,
+-4203,-4187,-4171,-4163,-4162,-4167,-4171,-4172,-4176,-4192,-4230,-4288,-4357,-4424,-4479,-4519,-4546,-4562,-4572,-4583,-4606,
+-4650,-4717,-4801,-4885,-4952,-4993,-5009,-5009,-4999,-4985,-4970,-4962,-4965,-4979,-4992,-4988,-4950,-4882,-4800,-4727,-4674,
+-4634,-4583,-4507,-4406,-4304,-4228,-4196,-4203,-4229,-4252,-4262,-4263,-4268,-4291,-4339,-4412,-4502,-4598,-4684,-4751,-4797,
+-4827,-4850,-4870,-4884,-4880,-4853,-4808,-4760,-4727,-4715,-4716,-4713,-4691,-4649,-4601,-4563,-4545,-4545,-4549,-4544,-4523,
+-4488,-4449,-4416,-4396,-4389,-4392,-4397,-4399,-4393,-4380,-4366,-4355,-4350,-4352,-4358,-4364,-4365,-4358,-4341,-4314,-4283,
+-4251,-4226,-4210,-4201,-4194,-4183,-4165,-4139,-4109,-4078,-4047,-4015,-3975,-3919,-3841,-3742,-3632,-3528,-3447,-3397,-3369,
+-3347,-3315,-3267,-3209,-3156,-3115,-3083,-3051,-3006,-2945,-2876,-2806,-2741,-2679,-2616,-2549,-2484,-2426,-2377,-2334,-2287,
+-2231,-2166,-2096,-2029,-1965,-1903,-1839,-1772,-1703,-1635,-1567,-1497,-1425,-1350,-1277,-1207,-1139,-1063,-975,-874,-768,
+-668,-578,-497,-415,-325,-225,-121,-24,59,128,184,232,276,318,361,405,453,500,545,583,618,
+656,706,768,838,909,972,1027,1078,1130,1186,1244,1302,1360,1418,1478,1537,1589,1633,1669,1701,1732,
+1758,1775,1780,1778,1781,1799,1832,1872,1904,1917,1914,1907,1909,1924,1948,1972,1991,2005,2021,2042,2067,
+2095,2120,2144,2169,2198,2231,2270,2314,2362,2414,2464,2507,2539,2559,2572,2579,2580,2571,2549,2514,2471,
+2421,2364,2297,2225,2163,2133,2149,2207,2280,2338,2355,2332,2286,2239,2204,2180,2161,2147,2142,2149,2165,
+2171,2154,2109,2051,2002,1979,1984,2003,2020,2027,2026,2022,2020,2019,2018,2014,2011,2008,2004,1996,1988,
+1987,2002,2031,2063,2082,2083,2075,2078,2110,2174,2256,2337,2404,2459,2508,2546,2544,2457,2248,1908,1472,
+1009,600,307,163,157,253,405,570,719,839,928,986,1016,1021,1009,989,972,961,955,945,925,
+893,853,811,770,728,681,629,574,526,488,461,438,413,380,341,301,269,244,223,197,158,
+105,42,-25,-94,-163,-226,-273,-283,-242,-154,-54,8,-12,-121,-283,-430,-504,-486,-401,-301,-226,
+-189,-177,-172,-165,-166,-182,-209,-232,-234,-213,-181,-157,-151,-157,-164,-163,-157,-152,-151,-152,-148,
+-137,-125,-119,-124,-134,-139,-136,-126,-116,-112,-110,-105,-93,-77,-63,-53,-42,-26,-2,25,48,
+60,64,68,77,91,104,114,118,122,129,140,153,165,177,192,210,229,246,259,271,287,
+310,337,362,378,387,391,397,406,417,426,431,432,433,435,439,443,446,449,452,457,464,
+472,479,484,487,488,491,495,501,505,505,498,486,474,468,468,473,475,470,461,450,443,
+438,433,424,412,400,393,390,387,379,365,346,326,307,289,270,250,230,212,196,179,159,
+137,115,95,78,61,41,20,0,-15,-28,-41,-56,-76,-99,-122,-144,-167,-192,-217,-241,-262,
+-278,-293,-310,-331,-354,-379,-404,-431,-462,-494,-526,-554,-578,-602,-629,-661,-696,-728,-756,-779,-802,
+-828,-858,-889,-917,-943,-967,-994,-1026,-1060,-1096,-1130,-1164,-1197,-1231,-1265,-1299,-1332,-1363,-1392,-1420,-1447,
+-1474,-1502,-1530,-1561,-1592,-1623,-1655,-1686,-1716,-1743,-1768,-1791,-1814,-1838,-1862,-1885,-1906,-1925,-1942,-1960,-1980,
+-2002,-2022,-2039,-2052,-2063,-2075,-2087,-2099,-2107,-2109,-2107,-2104,-2103,-2107,-2113,-2119,-2123,-2126,-2129,-2133,-2140,
+-2147,-2151,-2151,-2148,-2145,-2145,-2149,-2153,-2156,-2156,-2158,-2165,-2183,-2212,-2245,-2271,-2281,-2272,-2250,-2227,-2215,
+-2218,-2229,-2233,-2212,-2157,-2072,-1978,-1903,-1872,-1897,-1969,-2060,-2139,-2175,-2156,-2088,-1991,-1889,-1803,-1746,-1719,
+-1717,-1732,-1752,-1769,-1776,-1773,-1761,-1746,-1732,-1719,-1704,-1686,-1666,-1649,-1642,-1645,-1652,-1651,-1631,-1594,-1553,
+-1526,-1523,-1541,-1559,-1555,-1517,-1453,-1383,-1336,-1323,-1340,-1370,-1393,-1400,-1397,-1396,-1408,-1434,-1466,-1489,-1494,
+-1482,-1465,-1455,-1465,-1495,-1538,-1579,-1609,-1624,-1629,-1633,-1641,-1653,-1665,-1675,-1681,-1687,-1698,-1712,-1729,-1744,
+-1757,-1770,-1783,-1798,-1810,-1815,-1811,-1802,-1793,-1795,-1813,-1850,-1905,-1970,-2034,-2085,-2119,-2137,-2151,-2175,-2216,
+-2269,-2324,-2369,-2401,-2430,-2467,-2521,-2586,-2650,-2698,-2724,-2730,-2728,-2728,-2735,-2752,-2777,-2807,-2838,-2868,-2895,
+-2921,-2951,-2988,-3033,-3079,-3119,-3149,-3172,-3194,-3215,-3233,-3240,-3237,-3232,-3240,-3275,-3336,-3412,-3484,-3536,-3563,
+-3568,-3557,-3539,-3521,-3512,-3523,-3557,-3609,-3667,-3714,-3744,-3756,-3760,-3763,-3766,-3768,-3767,-3766,-3767,-3769,-3769,
+-3760,-3742,-3723,-3716,-3727,-3754,-3783,-3804,-3812,-3811,-3811,-3815,-3820,-3822,-3816,-3808,-3804,-3808,-3817,-3825,-3826,
+-3820,-3807,-3791,-3770,-3743,-3708,-3666,-3622,-3578,-3537,-3498,-3463,-3432,-3408,-3389,-3373,-3356,-3337,-3316,-3295,-3274,
+-3252,-3226,-3198,-3168,-3139,-3109,-3074,-3028,-2969,-2901,-2835,-2782,-2753,-2749,-2759,-2770,-2766,-2736,-2682,-2613,-2540,
+-2471,-2407,-2344,-2277,-2207,-2142,-2088,-2051,-2028,-2009,-1989,-1966,-1943,-1926,-1917,-1910,-1900,-1881,-1853,-1824,-1799,
+-1781,-1764,-1741,-1708,-1667,-1626,-1593,-1570,-1551,-1522,-1469,-1387,-1277,-1147,-1005,-858,-712,-570,-441,-331,-242,
+-172,-111,-50,17,95,180,267,350,428,500,569,637,707,776,839,891,931,968,1012,1074,1155,
+1249,1347,1446,1550,1665,1792,1921,2039,2136,2213,2281,2349,2419,2481,2524,2543,2552,2571,2613,2681,2760,
+2834,2896,2953,3020,3106,3208,3313,3402,3464,3501,3522,3540,3561,3586,3611,3637,3664,3693,3727,3766,3809,
+3857,3911,3971,4034,4095,4149,4196,4237,4276,4319,4365,4413,4464,4518,4578,4646,4718,4789,4853,4907,4954,
+4999,5046,5094,5140,5181,5216,5250,5287,5330,5375,5421,5466,5509,5555,5604,5657,5709,5760,5807,5853,5900,
+5951,6003,6054,6101,6141,6178,6214,6256,6303,6355,6405,6447,6478,6498,6514,6529,6544,6553,6549,6531,6506,
+6481,6465,6458,6456,6448,6430,6405,6377,6353,6333,6318,6304,6292,6283,6279,6278,6277,6275,6271,6267,6264,
+6260,6254,6245,6233,6221,6208,6192,6170,6142,6113,6090,6075,6065,6049,6022,5985,5944,5907,5876,5848,5818,
+5783,5747,5718,5699,5685,5666,5634,5588,5540,5503,5486,5489,5502,5513,5511,5496,5472,5444,5420,5401,5388,
+5382,5382,5389,5401,5414,5422,5421,5413,5403,5397,5396,5395,5387,5365,5331,5294,5263,5243,5230,5218,5202,
+5181,5159,5139,5121,5102,5080,5054,5027,5002,4980,4958,4936,4913,4889,4868,4848,4828,4807,4784,4758,4731,
+4737,4712,4685,4654,4623,4595,4574,4563,4561,4566,4575,4587,4600,4610,4619,4627,4638,4657,4683,4712,4737,
+4755,4766,4779,4801,4833,4869,4897,4914,4919,4920,4924,4930,4929,4910,4868,4810,4749,4702,4675,4663,4655,
+4642,4621,4595,4571,4552,4535,4518,4500,4483,4473,4474,4482,4494,4505,4515,4531,4559,4599,4644,4681,4695,
+4677,4629,4564,4497,4440,4400,4374,4360,4356,4359,4369,4382,4391,4388,4371,4341,4307,4272,4240,4207,4170,
+4130,4089,4053,4022,3992,3960,3923,3889,3863,3853,3854,3854,3841,3806,3747,3673,3593,3519,3458,3417,3396,
+3390,3392,3390,3379,3357,3327,3295,3262,3229,3193,3151,3107,3064,3026,2995,2971,2948,2918,2874,2811,2732,
+2647,2570,2509,2467,2438,2411,2379,2341,2304,2273,2249,2227,2202,2167,2126,2083,2046,2016,1989,1957,1913,
+1858,1797,1739,1689,1648,1610,1569,1522,1469,1415,1361,1306,1247,1184,1117,1050,985,924,864,804,743,
+683,625,567,505,434,355,268,175,78,-22,-123,-220,-303,-368,-416,-457,-502,-564,-646,-744,-850,
+-954,-1047,-1124,-1182,-1222,-1249,-1270,-1291,-1316,-1346,-1380,-1418,-1460,-1503,-1545,-1581,-1610,-1634,-1660,-1691,-1726,
+-1760,-1788,-1810,-1832,-1859,-1892,-1929,-1962,-1988,-2012,-2038,-2072,-2108,-2136,-2150,-2150,-2145,-2143,-2144,-2139,-2119,
+-2080,-2038,-2016,-2032,-2089,-2173,-2259,-2329,-2380,-2423,-2474,-2540,-2616,-2690,-2751,-2797,-2835,-2878,-2931,-2994,-3058,
+-3116,-3162,-3199,-3231,-3260,-3282,-3295,-3294,-3283,-3269,-3261,-3263,-3278,-3301,-3329,-3358,-3387,-3415,-3440,-3461,-3479,
+-3500,-3528,-3566,-3614,-3669,-3724,-3778,-3829,-3874,-3915,-3952,-3985,-4015,-4040,-4059,-4069,-4070,-4068,-4071,-4085,-4114,
+-4151,-4189,-4220,-4244,-4261,-4276,-4289,-4300,-4309,-4316,-4322,-4326,-4323,-4311,-4290,-4269,-4258,-4261,-4275,-4291,-4304,
+-4313,-4325,-4348,-4384,-4430,-4478,-4521,-4557,-4583,-4598,-4606,-4615,-4640,-4692,-4774,-4873,-4964,-5029,-5062,-5076,-5086,
+-5101,-5118,-5131,-5136,-5140,-5149,-5164,-5168,-5147,-5093,-5018,-4945,-4890,-4850,-4804,-4731,-4625,-4502,-4389,-4308,-4264,
+-4246,-4240,-4241,-4248,-4269,-4305,-4359,-4431,-4521,-4624,-4732,-4828,-4898,-4936,-4947,-4944,-4934,-4920,-4897,-4861,-4819,
+-4782,-4761,-4755,-4755,-4744,-4714,-4669,-4621,-4584,-4563,-4551,-4537,-4513,-4476,-4435,-4401,-4382,-4378,-4383,-4385,-4379,
+-4366,-4350,-4341,-4343,-4354,-4370,-4385,-4395,-4397,-4392,-4379,-4361,-4339,-4318,-4302,-4288,-4276,-4259,-4235,-4204,-4170,
+-4135,-4100,-4064,-4025,-3980,-3924,-3852,-3767,-3676,-3591,-3522,-3474,-3439,-3403,-3356,-3297,-3233,-3177,-3133,-3093,-3049,
+-2992,-2927,-2863,-2805,-2754,-2703,-2643,-2574,-2503,-2438,-2383,-2332,-2277,-2214,-2144,-2074,-2009,-1948,-1888,-1825,-1759,
+-1693,-1628,-1562,-1494,-1420,-1343,-1266,-1190,-1113,-1029,-936,-836,-737,-648,-568,-489,-402,-300,-187,-75,22,
+97,151,191,226,263,305,352,401,450,495,535,572,611,656,712,776,843,909,969,1027,1085,
+1144,1203,1258,1309,1362,1419,1482,1547,1604,1650,1683,1712,1740,1769,1792,1806,1811,1817,1832,1859,1890,
+1913,1921,1916,1909,1912,1928,1953,1977,1997,2015,2038,2067,2102,2135,2164,2190,2218,2251,2292,2338,2388,
+2439,2488,2530,2562,2583,2597,2607,2614,2615,2601,2569,2520,2464,2407,2350,2291,2231,2182,2162,2185,2246,
+2321,2379,2397,2373,2326,2278,2239,2210,2184,2162,2151,2156,2173,2183,2165,2114,2043,1980,1946,1947,1970,
+1995,2008,2007,1999,1991,1986,1985,1986,1988,1992,1997,2005,2017,2034,2054,2073,2083,2082,2076,2083,2117,
+2179,2258,2332,2390,2433,2469,2498,2499,2428,2245,1935,1525,1079,678,387,241,236,338,499,670,816,
+921,987,1026,1047,1057,1055,1040,1014,984,958,938,920,896,863,822,779,736,693,646,594,541,
+491,450,418,389,359,323,285,248,216,191,170,146,113,71,18,-41,-110,-190,-279,-360,-407,
+-391,-304,-174,-62,-30,-107,-268,-442,-556,-571,-499,-393,-303,-252,-232,-223,-216,-216,-232,-263,-293,
+-302,-284,-250,-220,-206,-206,-209,-206,-198,-193,-196,-203,-204,-195,-182,-173,-175,-182,-187,-182,-171,
+-161,-157,-156,-152,-140,-122,-104,-91,-81,-68,-49,-27,-10,-2,0,4,17,36,53,64,68,
+70,78,90,105,118,129,142,159,178,195,207,218,233,255,281,305,320,327,330,335,345,
+359,372,380,384,384,385,386,387,390,394,399,404,409,415,420,426,431,434,434,434,435,
+436,435,429,418,407,402,403,409,413,409,400,389,382,379,375,367,354,341,332,329,327,
+321,308,290,270,251,233,214,193,173,155,140,124,104,79,52,28,9,-6,-21,-39,-59,
+-78,-96,-113,-131,-151,-172,-194,-217,-241,-265,-290,-313,-332,-350,-367,-387,-409,-431,-452,-473,-497,
+-526,-559,-593,-624,-651,-677,-705,-737,-769,-798,-823,-844,-866,-892,-920,-950,-977,-1005,-1033,-1064,-1098,
+-1133,-1167,-1200,-1233,-1268,-1304,-1339,-1371,-1400,-1427,-1454,-1483,-1514,-1546,-1575,-1603,-1630,-1658,-1688,-1720,-1753,
+-1784,-1812,-1836,-1858,-1879,-1900,-1922,-1943,-1962,-1979,-1996,-2015,-2036,-2057,-2077,-2094,-2108,-2121,-2134,-2147,-2157,
+-2163,-2163,-2160,-2157,-2157,-2161,-2166,-2171,-2172,-2171,-2168,-2167,-2169,-2175,-2181,-2184,-2184,-2181,-2180,-2182,-2188,
+-2193,-2195,-2194,-2194,-2202,-2221,-2249,-2277,-2295,-2298,-2286,-2268,-2254,-2254,-2268,-2288,-2297,-2279,-2223,-2133,-2030,
+-1945,-1912,-1943,-2026,-2126,-2199,-2213,-2161,-2061,-1947,-1848,-1785,-1757,-1756,-1771,-1792,-1811,-1823,-1825,-1818,-1804,
+-1786,-1768,-1749,-1727,-1703,-1679,-1663,-1656,-1656,-1652,-1635,-1604,-1568,-1543,-1540,-1553,-1564,-1554,-1509,-1439,-1365,
+-1313,-1298,-1315,-1349,-1380,-1398,-1402,-1404,-1410,-1426,-1447,-1462,-1466,-1456,-1441,-1431,-1439,-1466,-1506,-1547,-1577,
+-1592,-1598,-1601,-1610,-1623,-1638,-1651,-1662,-1673,-1686,-1702,-1715,-1724,-1730,-1737,-1750,-1767,-1781,-1787,-1784,-1776,
+-1772,-1778,-1798,-1832,-1880,-1938,-2002,-2063,-2113,-2147,-2172,-2199,-2238,-2287,-2336,-2373,-2395,-2413,-2443,-2497,-2568,
+-2640,-2693,-2717,-2720,-2715,-2716,-2729,-2750,-2776,-2803,-2828,-2852,-2874,-2896,-2920,-2950,-2990,-3035,-3079,-3116,-3142,
+-3156,-3157,-3144,-3117,-3085,-3064,-3075,-3127,-3214,-3313,-3395,-3443,-3458,-3455,-3449,-3452,-3463,-3480,-3503,-3535,-3576,
+-3621,-3661,-3690,-3707,-3717,-3725,-3734,-3741,-3745,-3745,-3744,-3742,-3738,-3729,-3716,-3704,-3701,-3713,-3734,-3756,-3768,
+-3770,-3768,-3771,-3780,-3791,-3798,-3796,-3791,-3790,-3797,-3809,-3819,-3820,-3811,-3792,-3768,-3739,-3704,-3663,-3616,-3569,
+-3525,-3486,-3453,-3423,-3395,-3368,-3344,-3322,-3304,-3288,-3273,-3258,-3238,-3212,-3179,-3139,-3095,-3046,-2993,-2935,-2873,
+-2813,-2764,-2733,-2723,-2732,-2750,-2766,-2766,-2742,-2691,-2622,-2546,-2476,-2418,-2371,-2328,-2281,-2229,-2178,-2135,-2102,
+-2079,-2059,-2038,-2015,-1995,-1979,-1968,-1955,-1934,-1903,-1863,-1822,-1787,-1760,-1737,-1709,-1674,-1635,-1598,-1574,-1563,
+-1559,-1544,-1501,-1421,-1304,-1163,-1012,-864,-728,-609,-508,-423,-351,-286,-220,-150,-72,12,100,191,280,
+367,449,525,597,667,733,792,839,873,905,946,1009,1095,1194,1294,1387,1476,1567,1667,1772,1874,
+1967,2057,2154,2268,2394,2515,2611,2670,2701,2722,2751,2794,2846,2897,2944,2997,3067,3157,3260,3359,3437,
+3488,3519,3540,3562,3586,3608,3624,3634,3641,3654,3675,3706,3745,3792,3846,3907,3973,4039,4100,4156,4207,
+4257,4307,4358,4408,4458,4509,4567,4632,4703,4772,4834,4886,4931,4976,5023,5072,5120,5163,5200,5235,5272,
+5314,5360,5409,5458,5507,5555,5604,5653,5701,5749,5796,5844,5893,5943,5994,6043,6090,6133,6173,6210,6248,
+6290,6338,6390,6439,6478,6505,6522,6536,6549,6560,6564,6555,6534,6509,6488,6475,6469,6461,6446,6422,6393,
+6365,6339,6316,6296,6278,6265,6259,6259,6262,6264,6263,6260,6256,6250,6241,6228,6213,6198,6184,6169,6150,
+6127,6103,6081,6066,6053,6038,6013,5979,5941,5904,5872,5843,5813,5781,5751,5726,5708,5693,5671,5638,5592,
+5542,5498,5469,5456,5452,5448,5436,5413,5382,5347,5314,5284,5257,5232,5212,5201,5202,5215,5239,5266,5293,
+5318,5342,5362,5375,5375,5357,5327,5292,5261,5240,5223,5203,5177,5146,5117,5094,5079,5065,5046,5019,4988,
+4959,4934,4916,4902,4888,4875,4860,4845,4827,4807,4784,4760,4737,4732,4711,4691,4668,4642,4616,4596,4588,
+4592,4606,4623,4637,4645,4650,4655,4665,4680,4700,4722,4739,4749,4756,4763,4779,4806,4843,4882,4912,4928,
+4929,4919,4905,4886,4860,4823,4774,4719,4673,4647,4645,4659,4676,4682,4672,4649,4624,4605,4591,4580,4566,
+4550,4539,4540,4554,4576,4597,4613,4623,4635,4655,4683,4710,4724,4713,4675,4617,4550,4489,4442,4414,4401,
+4400,4406,4413,4416,4412,4396,4368,4332,4294,4259,4228,4198,4168,4135,4103,4073,4047,4020,3989,3952,3915,
+3887,3874,3876,3887,3895,3889,3861,3809,3737,3652,3566,3492,3437,3403,3385,3372,3355,3333,3306,3277,3247,
+3215,3178,3134,3086,3039,2998,2966,2943,2924,2901,2864,2811,2742,2667,2600,2547,2509,2476,2441,2398,2351,
+2309,2279,2259,2243,2221,2189,2149,2108,2071,2039,2009,1975,1931,1878,1821,1764,1712,1665,1619,1572,1522,
+1470,1419,1368,1316,1260,1200,1138,1079,1023,967,907,840,770,700,636,575,511,439,357,267,174,
+82,-8,-95,-179,-253,-316,-368,-416,-467,-531,-611,-707,-811,-915,-1009,-1086,-1141,-1179,-1208,-1236,-1270,
+-1309,-1350,-1388,-1424,-1459,-1498,-1538,-1575,-1606,-1631,-1655,-1683,-1716,-1751,-1783,-1810,-1835,-1864,-1899,-1936,-1970,
+-1998,-2024,-2052,-2083,-2114,-2137,-2148,-2150,-2148,-2148,-2147,-2137,-2114,-2085,-2066,-2077,-2125,-2202,-2286,-2356,-2405,
+-2441,-2478,-2529,-2594,-2664,-2727,-2779,-2822,-2866,-2916,-2975,-3037,-3096,-3147,-3191,-3229,-3265,-3298,-3325,-3341,-3343,
+-3333,-3320,-3313,-3317,-3334,-3359,-3390,-3421,-3451,-3480,-3507,-3533,-3557,-3582,-3612,-3649,-3693,-3743,-3796,-3847,-3895,
+-3940,-3980,-4017,-4049,-4077,-4100,-4114,-4119,-4115,-4109,-4111,-4127,-4159,-4201,-4243,-4277,-4303,-4323,-4342,-4359,-4374,
+-4386,-4397,-4407,-4417,-4422,-4418,-4404,-4387,-4378,-4381,-4396,-4415,-4431,-4442,-4454,-4473,-4498,-4529,-4558,-4582,-4600,
+-4611,-4612,-4607,-4603,-4614,-4654,-4723,-4805,-4877,-4921,-4944,-4964,-5001,-5056,-5109,-5136,-5127,-5096,-5072,-5076,-5105,
+-5139,-5152,-5137,-5104,-5072,-5048,-5021,-4973,-4893,-4785,-4665,-4551,-4451,-4367,-4301,-4255,-4233,-4238,-4264,-4308,-4368,
+-4451,-4562,-4693,-4822,-4923,-4976,-4984,-4964,-4942,-4929,-4924,-4916,-4896,-4868,-4843,-4831,-4829,-4826,-4808,-4768,-4712,
+-4653,-4603,-4566,-4537,-4507,-4471,-4433,-4402,-4383,-4379,-4380,-4377,-4364,-4345,-4329,-4325,-4337,-4362,-4392,-4418,-4435,
+-4443,-4440,-4429,-4414,-4399,-4387,-4378,-4368,-4351,-4323,-4285,-4245,-4206,-4171,-4136,-4095,-4047,-3991,-3931,-3866,-3798,
+-3729,-3661,-3600,-3546,-3495,-3440,-3378,-3311,-3250,-3198,-3155,-3111,-3056,-2991,-2921,-2859,-2809,-2766,-2718,-2657,-2585,
+-2509,-2438,-2374,-2314,-2251,-2183,-2114,-2050,-1990,-1932,-1871,-1807,-1742,-1678,-1617,-1553,-1484,-1408,-1328,-1248,-1168,
+-1084,-992,-893,-794,-704,-626,-555,-478,-384,-270,-147,-30,64,130,173,203,231,266,307,352,398,
+441,481,520,559,603,655,714,777,842,904,965,1026,1089,1150,1206,1256,1301,1349,1406,1474,1547,
+1612,1664,1701,1731,1760,1789,1814,1830,1836,1839,1848,1865,1888,1908,1919,1922,1925,1934,1950,1969,1988,
+2007,2031,2064,2105,2150,2190,2221,2247,2275,2312,2361,2421,2486,2548,2601,2638,2656,2658,2650,2643,2639,
+2633,2614,2574,2515,2447,2385,2334,2292,2254,2223,2210,2229,2282,2352,2413,2441,2430,2390,2340,2291,2246,
+2205,2170,2148,2147,2159,2165,2146,2093,2020,1953,1917,1918,1945,1976,1994,1996,1987,1977,1972,1972,1976,
+1983,1993,2009,2033,2061,2090,2109,2111,2098,2082,2081,2113,2180,2267,2347,2404,2435,2456,2474,2474,2413,
+2245,1945,1539,1096,704,430,307,320,430,591,761,907,1014,1075,1099,1102,1098,1093,1086,1068,1038,
+1000,963,931,905,878,845,804,757,707,656,605,555,506,462,421,381,343,304,267,232,200,
+171,144,117,90,61,30,-7,-54,-117,-200,-302,-410,-489,-501,-421,-267,-100,0,-22,-165,-365,
+-532,-603,-570,-476,-379,-314,-283,-267,-253,-245,-255,-286,-323,-345,-341,-317,-291,-276,-271,-266,-255,
+-240,-231,-233,-242,-247,-241,-230,-223,-227,-237,-243,-237,-223,-209,-202,-201,-198,-186,-167,-149,-138,
+-131,-123,-108,-90,-73,-63,-57,-48,-32,-10,8,19,23,27,38,54,70,82,89,97,110,
+127,143,157,167,180,198,220,241,253,258,261,267,280,297,314,326,332,331,327,323,320,
+323,331,342,351,357,359,361,366,373,379,380,377,373,370,367,363,355,346,341,342,349,
+355,355,346,334,326,321,319,313,302,289,278,271,267,259,247,230,213,196,179,159,136,
+114,96,82,68,50,25,-3,-31,-54,-70,-84,-100,-118,-138,-158,-178,-198,-219,-240,-263,-287,
+-311,-336,-360,-381,-400,-419,-438,-461,-485,-508,-528,-549,-572,-601,-634,-669,-700,-728,-754,-780,-808,
+-836,-861,-885,-908,-935,-964,-994,-1023,-1050,-1077,-1107,-1139,-1173,-1205,-1236,-1266,-1300,-1337,-1377,-1414,-1446,
+-1473,-1496,-1521,-1550,-1583,-1617,-1649,-1679,-1706,-1732,-1760,-1789,-1819,-1848,-1875,-1899,-1921,-1942,-1963,-1983,-2003,
+-2021,-2038,-2056,-2075,-2097,-2118,-2138,-2156,-2171,-2185,-2198,-2209,-2217,-2222,-2223,-2221,-2219,-2216,-2216,-2217,-2219,
+-2222,-2223,-2221,-2217,-2214,-2214,-2217,-2220,-2222,-2222,-2222,-2226,-2234,-2243,-2248,-2247,-2242,-2239,-2245,-2261,-2284,
+-2305,-2319,-2321,-2314,-2305,-2299,-2303,-2319,-2337,-2342,-2313,-2240,-2132,-2021,-1948,-1944,-2011,-2117,-2209,-2243,-2201,
+-2101,-1979,-1873,-1805,-1776,-1777,-1794,-1817,-1841,-1859,-1867,-1861,-1843,-1819,-1794,-1773,-1751,-1727,-1698,-1670,-1648,
+-1633,-1622,-1608,-1587,-1564,-1547,-1543,-1547,-1547,-1525,-1474,-1403,-1330,-1280,-1265,-1284,-1323,-1363,-1390,-1400,-1398,
+-1392,-1392,-1402,-1417,-1430,-1436,-1434,-1428,-1430,-1446,-1475,-1508,-1535,-1549,-1554,-1558,-1568,-1584,-1604,-1622,-1637,
+-1651,-1664,-1676,-1683,-1685,-1686,-1693,-1709,-1729,-1746,-1753,-1751,-1748,-1754,-1775,-1806,-1844,-1885,-1933,-1989,-2049,
+-2105,-2149,-2181,-2209,-2245,-2291,-2338,-2375,-2397,-2412,-2439,-2488,-2557,-2626,-2677,-2701,-2704,-2703,-2712,-2732,-2758,
+-2782,-2801,-2818,-2837,-2857,-2879,-2902,-2931,-2969,-3014,-3060,-3094,-3107,-3097,-3066,-3021,-2972,-2933,-2923,-2954,-3029,
+-3132,-3233,-3305,-3336,-3338,-3335,-3350,-3388,-3437,-3483,-3515,-3536,-3554,-3578,-3607,-3636,-3661,-3682,-3700,-3717,-3731,
+-3739,-3741,-3737,-3730,-3721,-3710,-3698,-3689,-3689,-3699,-3714,-3726,-3730,-3725,-3720,-3721,-3732,-3747,-3759,-3765,-3767,
+-3772,-3782,-3795,-3803,-3799,-3784,-3760,-3732,-3701,-3665,-3624,-3579,-3535,-3496,-3465,-3441,-3420,-3396,-3368,-3337,-3307,
+-3281,-3262,-3249,-3237,-3219,-3192,-3152,-3102,-3042,-2972,-2893,-2810,-2731,-2670,-2638,-2640,-2667,-2707,-2740,-2756,-2746,
+-2711,-2656,-2589,-2521,-2459,-2407,-2360,-2315,-2267,-2219,-2175,-2140,-2114,-2094,-2075,-2055,-2035,-2019,-2007,-1997,-1982,
+-1957,-1922,-1879,-1836,-1798,-1767,-1739,-1709,-1674,-1637,-1602,-1579,-1570,-1569,-1561,-1527,-1455,-1343,-1204,-1054,-912,
+-789,-687,-603,-529,-459,-387,-311,-229,-143,-54,37,129,222,312,396,473,544,615,686,754,811,
+853,886,921,975,1051,1145,1243,1336,1421,1503,1587,1672,1752,1828,1908,2007,2137,2292,2452,2593,2697,
+2762,2800,2827,2853,2881,2911,2950,3004,3080,3176,3279,3372,3444,3492,3527,3556,3585,3610,3626,3629,3624,
+3617,3618,3630,3654,3689,3733,3786,3848,3917,3988,4057,4120,4179,4236,4293,4350,4405,4457,4508,4562,4620,
+4682,4744,4803,4856,4905,4953,5003,5053,5101,5145,5185,5223,5261,5302,5346,5395,5446,5498,5549,5598,5643,
+5687,5732,5780,5833,5888,5941,5992,6038,6083,6126,6167,6204,6239,6276,6319,6371,6425,6474,6510,6531,6544,
+6555,6567,6576,6577,6566,6546,6524,6507,6496,6487,6476,6458,6435,6409,6381,6351,6321,6292,6269,6256,6253,
+6256,6259,6260,6259,6256,6250,6240,6225,6205,6185,6167,6152,6138,6122,6102,6079,6057,6035,6012,5984,5953,
+5921,5890,5863,5838,5812,5785,5758,5733,5710,5688,5662,5629,5590,5547,5506,5472,5444,5420,5396,5367,5333,
+5296,5260,5228,5199,5168,5134,5096,5063,5043,5043,5063,5097,5135,5171,5204,5232,5253,5265,5264,5251,5235,
+5221,5212,5203,5185,5156,5117,5079,5050,5033,5023,5011,4992,4966,4937,4911,4889,4873,4860,4851,4844,4836,
+4824,4805,4781,4755,4732,4726,4709,4697,4685,4668,4648,4631,4625,4633,4652,4671,4684,4689,4690,4695,4709,
+4732,4754,4770,4774,4770,4767,4775,4799,4836,4878,4913,4934,4935,4919,4889,4854,4818,4781,4742,4700,4661,
+4634,4631,4655,4701,4748,4779,4782,4764,4737,4716,4705,4698,4687,4671,4655,4653,4670,4700,4731,4749,4751,
+4743,4735,4734,4738,4738,4723,4688,4636,4577,4524,4486,4466,4460,4461,4462,4456,4442,4420,4391,4357,4321,
+4287,4257,4231,4209,4187,4163,4137,4110,4084,4056,4027,3996,3964,3935,3915,3905,3905,3913,3920,3919,3898,
+3851,3775,3680,3579,3490,3422,3377,3348,3327,3308,3288,3268,3245,3216,3179,3132,3078,3023,2972,2931,2901,
+2880,2860,2833,2791,2734,2671,2612,2565,2529,2494,2452,2401,2349,2306,2277,2259,2243,2220,2188,2149,2110,
+2076,2047,2017,1983,1939,1887,1830,1771,1715,1662,1612,1562,1511,1459,1407,1353,1296,1236,1174,1114,1061,
+1012,964,909,845,776,707,644,585,526,457,378,289,198,110,25,-55,-133,-205,-269,-324,-375,
+-426,-485,-555,-639,-733,-828,-918,-993,-1051,-1096,-1137,-1185,-1241,-1301,-1356,-1400,-1433,-1463,-1496,-1532,-1569,
+-1599,-1623,-1645,-1671,-1703,-1738,-1771,-1799,-1826,-1856,-1892,-1933,-1973,-2008,-2039,-2068,-2096,-2122,-2140,-2150,-2155,
+-2159,-2163,-2163,-2155,-2137,-2121,-2124,-2161,-2228,-2310,-2384,-2437,-2469,-2496,-2534,-2587,-2651,-2713,-2766,-2810,-2852,
+-2901,-2958,-3017,-3074,-3125,-3169,-3210,-3253,-3295,-3335,-3365,-3383,-3387,-3380,-3371,-3367,-3373,-3392,-3420,-3451,-3482,
+-3511,-3539,-3566,-3595,-3625,-3657,-3692,-3729,-3769,-3809,-3850,-3892,-3935,-3979,-4022,-4061,-4095,-4123,-4145,-4159,-4165,
+-4164,-4161,-4165,-4181,-4212,-4251,-4290,-4323,-4349,-4372,-4395,-4417,-4435,-4448,-4458,-4469,-4483,-4498,-4509,-4512,-4509,
+-4505,-4505,-4511,-4520,-4530,-4542,-4560,-4587,-4619,-4649,-4668,-4676,-4673,-4664,-4650,-4630,-4612,-4605,-4619,-4652,-4690,
+-4714,-4718,-4715,-4732,-4788,-4874,-4952,-4982,-4948,-4872,-4805,-4794,-4852,-4953,-5056,-5129,-5165,-5177,-5180,-5179,-5163,
+-5121,-5050,-4953,-4840,-4719,-4596,-4479,-4379,-4304,-4259,-4239,-4242,-4270,-4335,-4445,-4592,-4749,-4877,-4947,-4958,-4934,
+-4910,-4909,-4929,-4952,-4959,-4942,-4912,-4888,-4877,-4876,-4869,-4842,-4792,-4728,-4665,-4613,-4572,-4535,-4498,-4460,-4427,
+-4406,-4399,-4398,-4393,-4379,-4358,-4340,-4335,-4346,-4371,-4402,-4433,-4456,-4469,-4469,-4458,-4441,-4426,-4416,-4411,-4405,
+-4388,-4357,-4316,-4275,-4240,-4209,-4176,-4130,-4071,-4003,-3935,-3871,-3813,-3756,-3699,-3641,-3582,-3520,-3455,-3388,-3323,
+-3266,-3220,-3179,-3132,-3072,-3001,-2929,-2868,-2818,-2773,-2721,-2656,-2580,-2502,-2427,-2357,-2289,-2219,-2150,-2086,-2027,
+-1971,-1912,-1848,-1782,-1718,-1659,-1602,-1538,-1464,-1383,-1301,-1220,-1140,-1054,-957,-853,-752,-665,-594,-528,-453,
+-356,-239,-115,-2,84,143,182,212,245,283,324,366,404,440,474,511,553,601,655,713,775,
+838,902,966,1030,1093,1152,1203,1247,1289,1336,1393,1463,1538,1609,1669,1716,1753,1785,1813,1835,1847,
+1851,1851,1856,1869,1889,1913,1933,1949,1963,1975,1988,1999,2011,2029,2058,2101,2155,2209,2255,2289,2314,
+2342,2380,2434,2502,2578,2652,2715,2754,2764,2747,2714,2680,2655,2637,2613,2572,2511,2441,2379,2334,2306,
+2285,2266,2254,2262,2301,2364,2431,2476,2485,2457,2405,2342,2277,2217,2166,2133,2122,2127,2131,2114,2069,
+2004,1945,1914,1919,1950,1986,2010,2017,2013,2006,2005,2009,2015,2022,2030,2044,2067,2097,2125,2141,2139,
+2125,2117,2137,2195,2280,2367,2427,2453,2456,2453,2445,2398,2259,1987,1591,1138,728,449,341,383,519,
+685,842,971,1068,1133,1165,1168,1154,1135,1119,1104,1083,1051,1009,966,927,895,865,831,788,736,
+677,616,556,501,454,413,374,332,288,246,211,184,160,133,101,67,35,7,-19,-50,-91,
+-145,-219,-315,-427,-528,-574,-525,-377,-176,-9,40,-54,-250,-455,-584,-604,-542,-456,-390,-355,-334,
+-312,-290,-284,-302,-337,-369,-382,-376,-362,-353,-349,-342,-325,-302,-286,-282,-288,-293,-288,-277,-271,
+-276,-289,-297,-291,-274,-256,-247,-245,-243,-232,-215,-199,-189,-187,-182,-169,-149,-127,-111,-101,-90,
+-74,-54,-35,-23,-17,-9,3,20,36,44,47,51,61,79,98,113,125,136,149,165,178,
+185,186,186,193,208,229,250,266,274,273,265,255,249,253,267,286,302,308,306,301,301,
+307,314,318,316,311,307,306,304,299,291,284,284,290,298,300,295,284,274,269,268,265,
+258,245,232,220,208,196,181,165,149,134,119,100,76,53,33,18,6,-8,-29,-55,-82,
+-106,-125,-142,-159,-177,-197,-218,-239,-261,-284,-308,-332,-357,-381,-406,-429,-449,-468,-486,-507,-530,
+-554,-579,-602,-625,-652,-683,-717,-750,-780,-805,-828,-851,-874,-898,-922,-946,-974,-1006,-1039,-1072,-1100,
+-1127,-1153,-1183,-1217,-1250,-1281,-1310,-1338,-1371,-1408,-1447,-1484,-1516,-1543,-1567,-1593,-1622,-1654,-1686,-1719,-1749,
+-1778,-1806,-1833,-1860,-1886,-1911,-1935,-1958,-1979,-2001,-2023,-2045,-2065,-2084,-2102,-2120,-2140,-2162,-2184,-2206,-2225,
+-2242,-2256,-2266,-2273,-2278,-2282,-2285,-2286,-2285,-2279,-2271,-2265,-2264,-2268,-2274,-2276,-2272,-2265,-2260,-2260,-2263,
+-2266,-2266,-2265,-2267,-2274,-2285,-2294,-2297,-2293,-2288,-2287,-2295,-2310,-2328,-2344,-2356,-2361,-2360,-2353,-2349,-2352,
+-2364,-2374,-2362,-2308,-2211,-2098,-2009,-1983,-2030,-2122,-2206,-2235,-2190,-2087,-1966,-1865,-1806,-1788,-1796,-1819,-1847,
+-1875,-1896,-1903,-1893,-1867,-1834,-1804,-1783,-1766,-1747,-1718,-1683,-1647,-1617,-1595,-1577,-1560,-1544,-1533,-1529,-1528,
+-1521,-1495,-1445,-1377,-1308,-1257,-1239,-1254,-1292,-1335,-1368,-1379,-1369,-1348,-1330,-1327,-1341,-1365,-1386,-1396,-1395,
+-1393,-1400,-1422,-1453,-1481,-1498,-1504,-1508,-1519,-1541,-1568,-1594,-1615,-1631,-1643,-1651,-1652,-1647,-1642,-1645,-1661,
+-1684,-1705,-1716,-1717,-1720,-1736,-1771,-1817,-1865,-1909,-1951,-1999,-2053,-2107,-2151,-2183,-2208,-2238,-2281,-2331,-2376,
+-2407,-2430,-2456,-2498,-2554,-2611,-2653,-2673,-2680,-2688,-2706,-2732,-2758,-2777,-2789,-2802,-2822,-2847,-2874,-2901,-2931,
+-2967,-3009,-3046,-3066,-3059,-3026,-2976,-2926,-2890,-2879,-2900,-2955,-3036,-3126,-3202,-3246,-3258,-3254,-3263,-3304,-3373,
+-3451,-3513,-3546,-3555,-3555,-3564,-3586,-3617,-3647,-3674,-3695,-3714,-3729,-3740,-3743,-3739,-3729,-3717,-3704,-3693,-3685,
+-3684,-3689,-3697,-3702,-3700,-3692,-3684,-3682,-3688,-3699,-3710,-3719,-3726,-3737,-3750,-3762,-3767,-3760,-3742,-3718,-3692,
+-3665,-3637,-3604,-3568,-3532,-3500,-3475,-3456,-3439,-3419,-3391,-3357,-3321,-3288,-3264,-3247,-3232,-3210,-3176,-3129,-3070,
+-3001,-2923,-2837,-2750,-2673,-2622,-2607,-2628,-2672,-2717,-2746,-2748,-2724,-2681,-2628,-2573,-2520,-2469,-2419,-2364,-2305,
+-2245,-2189,-2146,-2117,-2100,-2087,-2073,-2058,-2043,-2032,-2023,-2012,-1993,-1964,-1926,-1885,-1845,-1808,-1777,-1749,-1724,
+-1697,-1666,-1633,-1602,-1579,-1564,-1549,-1519,-1460,-1367,-1246,-1113,-987,-877,-785,-704,-627,-547,-464,-378,-289,
+-199,-108,-13,82,178,267,347,417,484,555,636,720,796,853,892,921,960,1020,1103,1198,1293,
+1383,1465,1542,1613,1678,1739,1807,1895,2014,2160,2320,2473,2600,2695,2760,2803,2831,2854,2882,2925,2991,
+3080,3182,3284,3372,3443,3497,3541,3578,3607,3622,3622,3612,3597,3587,3587,3597,3618,3647,3686,3737,3800,
+3873,3950,4024,4092,4155,4215,4275,4335,4395,4452,4505,4555,4605,4656,4711,4767,4824,4880,4934,4986,5035,
+5083,5131,5177,5221,5263,5303,5343,5387,5435,5486,5538,5586,5629,5670,5714,5764,5821,5881,5939,5991,6037,
+6081,6124,6165,6201,6233,6265,6302,6351,6407,6463,6508,6538,6554,6565,6577,6589,6596,6594,6581,6561,6543,
+6529,6520,6511,6501,6487,6468,6444,6412,6374,6333,6296,6268,6252,6246,6246,6249,6251,6253,6252,6246,6231,
+6208,6184,6161,6144,6131,6117,6098,6073,6044,6014,5985,5957,5930,5905,5881,5857,5833,5807,5779,5751,5723,
+5696,5670,5644,5617,5588,5557,5521,5483,5442,5399,5355,5310,5264,5220,5182,5152,5129,5106,5078,5044,5008,
+4981,4971,4977,4992,5008,5018,5027,5038,5055,5074,5090,5101,5109,5119,5133,5147,5151,5139,5110,5073,5038,
+5012,4996,4985,4973,4957,4935,4911,4885,4861,4843,4832,4829,4827,4821,4805,4779,4750,4726,4735,4722,4718,
+4715,4707,4694,4682,4679,4689,4708,4727,4737,4737,4733,4737,4754,4780,4803,4813,4808,4798,4796,4813,4849,
+4894,4934,4957,4956,4935,4900,4859,4821,4789,4763,4737,4708,4680,4662,4670,4711,4777,4847,4894,4905,4886,
+4856,4837,4834,4838,4834,4816,4792,4776,4781,4802,4826,4837,4829,4808,4785,4768,4756,4742,4716,4677,4628,
+4580,4543,4520,4512,4511,4510,4499,4477,4446,4410,4374,4342,4313,4287,4264,4244,4228,4213,4196,4176,4152,
+4126,4103,4082,4064,4044,4019,3988,3955,3927,3913,3915,3929,3938,3924,3871,3782,3668,3553,3455,3384,3338,
+3310,3293,3281,3269,3252,3227,3189,3139,3080,3018,2958,2907,2870,2844,2825,2802,2767,2717,2660,2605,2560,
+2523,2486,2443,2393,2343,2302,2274,2254,2235,2208,2174,2136,2100,2070,2042,2014,1978,1934,1881,1821,1758,
+1697,1641,1589,1541,1493,1443,1390,1334,1274,1211,1146,1084,1028,978,931,881,824,763,704,649,599,
+548,487,416,337,254,172,90,6,-77,-157,-229,-290,-341,-388,-438,-495,-564,-642,-725,-806,-878,
+-939,-994,-1049,-1114,-1188,-1264,-1331,-1383,-1421,-1453,-1486,-1522,-1557,-1587,-1611,-1632,-1657,-1689,-1723,-1755,-1784,
+-1812,-1844,-1883,-1926,-1969,-2006,-2038,-2065,-2091,-2115,-2133,-2147,-2158,-2169,-2180,-2187,-2186,-2180,-2181,-2204,-2255,
+-2329,-2404,-2464,-2502,-2525,-2551,-2593,-2651,-2713,-2768,-2810,-2847,-2888,-2939,-2997,-3054,-3104,-3146,-3186,-3228,-3275,
+-3322,-3364,-3395,-3415,-3424,-3426,-3427,-3430,-3441,-3460,-3485,-3514,-3544,-3572,-3598,-3624,-3653,-3685,-3721,-3758,-3793,
+-3825,-3852,-3877,-3906,-3942,-3987,-4036,-4083,-4122,-4152,-4176,-4194,-4208,-4216,-4220,-4225,-4238,-4262,-4293,-4326,-4356,
+-4381,-4405,-4430,-4455,-4477,-4494,-4507,-4521,-4542,-4569,-4595,-4614,-4623,-4625,-4623,-4624,-4628,-4637,-4656,-4685,-4725,
+-4765,-4796,-4809,-4804,-4789,-4771,-4754,-4737,-4721,-4709,-4705,-4707,-4703,-4681,-4642,-4604,-4597,-4640,-4720,-4795,-4817,
+-4765,-4667,-4579,-4561,-4634,-4778,-4942,-5080,-5174,-5228,-5260,-5278,-5282,-5264,-5221,-5155,-5071,-4972,-4859,-4737,-4611,
+-4493,-4391,-4309,-4254,-4235,-4265,-4353,-4491,-4646,-4779,-4858,-4877,-4861,-4848,-4863,-4907,-4957,-4985,-4978,-4943,-4902,
+-4873,-4864,-4863,-4853,-4825,-4780,-4728,-4679,-4637,-4598,-4556,-4514,-4476,-4451,-4442,-4441,-4440,-4430,-4410,-4386,-4368,
+-4361,-4366,-4381,-4402,-4423,-4438,-4443,-4435,-4419,-4402,-4392,-4389,-4387,-4375,-4350,-4316,-4282,-4254,-4230,-4199,-4151,
+-4087,-4013,-3940,-3876,-3818,-3763,-3707,-3650,-3592,-3531,-3469,-3404,-3342,-3288,-3242,-3198,-3148,-3086,-3015,-2944,-2881,
+-2826,-2772,-2712,-2641,-2566,-2491,-2418,-2347,-2274,-2200,-2129,-2067,-2009,-1951,-1886,-1815,-1746,-1686,-1633,-1579,-1513,
+-1435,-1350,-1268,-1194,-1121,-1039,-939,-828,-720,-628,-553,-486,-410,-315,-203,-90,7,82,134,174,213,
+255,301,345,384,417,446,476,512,555,604,657,715,776,841,909,977,1042,1101,1155,1201,1244,
+1287,1333,1387,1451,1522,1595,1663,1721,1767,1802,1826,1842,1851,1855,1860,1870,1888,1914,1942,1969,1990,
+2005,2014,2020,2027,2037,2058,2094,2145,2206,2266,2317,2357,2387,2417,2453,2501,2561,2631,2705,2772,2819,
+2834,2814,2767,2710,2661,2625,2594,2556,2504,2444,2389,2352,2332,2321,2309,2299,2300,2328,2383,2451,2505,
+2525,2503,2447,2372,2292,2218,2158,2118,2102,2104,2109,2100,2069,2021,1977,1955,1964,1997,2034,2061,2071,
+2070,2068,2069,2075,2081,2083,2083,2087,2100,2122,2147,2165,2174,2179,2197,2242,2315,2397,2461,2486,2472,
+2438,2396,2335,2217,1992,1645,1218,802,498,372,418,575,763,921,1031,1103,1152,1187,1204,1199,1177,
+1149,1123,1100,1074,1041,999,954,911,871,834,794,749,696,636,571,504,443,392,350,312,271,
+228,188,158,137,117,92,57,21,-9,-35,-62,-100,-148,-202,-263,-337,-432,-541,-626,-634,-529,
+-332,-123,-1,-29,-191,-405,-571,-633,-602,-531,-471,-442,-426,-404,-371,-344,-340,-361,-391,-412,-418,
+-417,-417,-420,-418,-402,-377,-356,-347,-351,-354,-349,-336,-325,-325,-334,-340,-334,-317,-299,-289,-287,
+-285,-275,-257,-240,-232,-231,-229,-218,-198,-175,-157,-146,-137,-124,-106,-87,-72,-62,-51,-38,-23,
+-12,-6,-4,0,13,34,56,72,84,93,102,112,119,120,116,114,121,138,160,183,201,
+211,211,203,192,185,189,207,231,252,260,254,243,236,238,245,251,251,247,243,243,244,
+242,236,228,225,230,238,244,242,234,225,220,220,219,214,202,186,168,151,133,115,97,
+81,67,53,35,14,-7,-28,-44,-57,-70,-86,-105,-127,-149,-171,-192,-213,-235,-257,-278,-301,
+-325,-351,-377,-402,-426,-449,-472,-495,-516,-536,-556,-577,-600,-624,-647,-671,-697,-727,-760,-794,-825,
+-851,-874,-895,-917,-941,-964,-989,-1015,-1044,-1077,-1111,-1142,-1169,-1195,-1223,-1254,-1289,-1323,-1355,-1384,-1413,
+-1443,-1477,-1511,-1543,-1574,-1602,-1632,-1662,-1692,-1722,-1751,-1780,-1810,-1840,-1869,-1897,-1922,-1946,-1969,-1992,-2014,
+-2036,-2058,-2081,-2104,-2126,-2146,-2165,-2184,-2203,-2225,-2248,-2271,-2292,-2311,-2324,-2332,-2336,-2338,-2341,-2346,-2350,
+-2350,-2342,-2328,-2316,-2311,-2314,-2320,-2322,-2316,-2306,-2298,-2298,-2304,-2309,-2310,-2306,-2303,-2307,-2316,-2327,-2334,
+-2335,-2335,-2337,-2343,-2353,-2364,-2377,-2390,-2401,-2408,-2406,-2400,-2396,-2401,-2408,-2400,-2356,-2271,-2163,-2071,-2032,
+-2057,-2120,-2175,-2179,-2121,-2019,-1914,-1839,-1808,-1813,-1838,-1868,-1897,-1922,-1939,-1942,-1927,-1896,-1860,-1830,-1810,
+-1797,-1780,-1753,-1715,-1671,-1631,-1598,-1573,-1551,-1533,-1519,-1512,-1509,-1502,-1481,-1439,-1381,-1319,-1268,-1241,-1243,
+-1269,-1302,-1328,-1332,-1312,-1277,-1244,-1229,-1239,-1266,-1294,-1311,-1314,-1313,-1322,-1350,-1390,-1427,-1450,-1457,-1461,
+-1472,-1496,-1529,-1562,-1589,-1610,-1626,-1637,-1639,-1630,-1617,-1609,-1616,-1636,-1661,-1680,-1689,-1698,-1720,-1760,-1816,
+-1875,-1929,-1976,-2023,-2071,-2119,-2158,-2185,-2206,-2231,-2270,-2321,-2374,-2418,-2451,-2481,-2516,-2557,-2598,-2628,-2646,
+-2658,-2672,-2693,-2717,-2738,-2752,-2764,-2782,-2809,-2843,-2875,-2904,-2930,-2960,-2992,-3017,-3022,-3002,-2963,-2924,-2904,
+-2914,-2950,-3004,-3063,-3119,-3165,-3195,-3208,-3210,-3218,-3249,-3311,-3396,-3481,-3544,-3575,-3579,-3577,-3584,-3604,-3633,
+-3661,-3682,-3698,-3712,-3725,-3736,-3741,-3738,-3730,-3719,-3707,-3697,-3689,-3684,-3684,-3685,-3687,-3686,-3681,-3674,-3669,
+-3667,-3667,-3669,-3674,-3684,-3699,-3715,-3729,-3733,-3725,-3707,-3686,-3664,-3643,-3623,-3600,-3574,-3547,-3521,-3498,-3478,
+-3459,-3439,-3413,-3381,-3345,-3311,-3281,-3257,-3233,-3202,-3160,-3107,-3046,-2983,-2917,-2849,-2782,-2724,-2689,-2682,-2702,
+-2735,-2761,-2767,-2746,-2704,-2652,-2600,-2553,-2512,-2473,-2427,-2372,-2306,-2237,-2175,-2130,-2103,-2089,-2080,-2070,-2058,
+-2048,-2040,-2032,-2016,-1991,-1956,-1918,-1879,-1843,-1808,-1778,-1753,-1734,-1716,-1692,-1656,-1609,-1561,-1522,-1492,-1464,
+-1421,-1354,-1262,-1158,-1055,-961,-876,-794,-707,-616,-523,-431,-341,-252,-161,-64,35,135,225,302,368,
+432,505,591,686,773,838,879,904,933,984,1061,1157,1258,1352,1435,1506,1569,1629,1690,1757,1837,
+1934,2047,2172,2302,2429,2543,2636,2706,2753,2789,2831,2893,2979,3083,3192,3291,3376,3447,3510,3561,3598,
+3614,3609,3589,3567,3553,3552,3562,3578,3597,3622,3656,3705,3769,3844,3923,4000,4071,4136,4197,4257,4318,
+4379,4438,4491,4539,4583,4627,4676,4732,4794,4857,4916,4969,5019,5068,5119,5173,5224,5271,5312,5350,5388,
+5432,5481,5530,5576,5618,5658,5701,5752,5811,5873,5932,5986,6034,6079,6122,6163,6199,6229,6257,6291,6335,
+6391,6449,6502,6540,6564,6578,6590,6601,6608,6608,6599,6583,6567,6554,6545,6538,6531,6522,6509,6491,6464,
+6426,6378,6328,6284,6251,6231,6223,6224,6229,6237,6242,6240,6228,6207,6180,6155,6136,6120,6105,6085,6059,
+6028,5996,5967,5941,5919,5897,5875,5849,5821,5791,5761,5731,5703,5676,5650,5628,5609,5591,5569,5539,5497,
+5446,5389,5330,5272,5214,5160,5114,5080,5059,5046,5035,5021,5005,4993,4988,4986,4980,4963,4934,4904,4885,
+4884,4896,4914,4929,4943,4963,4993,5032,5069,5093,5093,5073,5041,5008,4982,4965,4955,4947,4936,4918,4893,
+4865,4841,4825,4820,4820,4818,4806,4784,4757,4735,4758,4750,4749,4751,4751,4745,4739,4740,4751,4769,4787,
+4794,4790,4782,4782,4796,4819,4838,4844,4836,4828,4836,4867,4915,4963,4992,4993,4969,4931,4892,4863,4846,
+4838,4833,4822,4799,4770,4749,4755,4797,4866,4938,4982,4987,4961,4931,4920,4934,4954,4959,4938,4899,4862,
+4844,4843,4849,4847,4832,4810,4790,4776,4763,4741,4705,4659,4611,4571,4546,4535,4534,4534,4528,4510,4480,
+4442,4404,4371,4346,4324,4303,4281,4260,4242,4228,4216,4201,4184,4168,4158,4156,4157,4152,4131,4088,4026,
+3960,3910,3890,3901,3927,3940,3916,3845,3738,3616,3502,3412,3349,3310,3288,3276,3267,3254,3231,3195,3145,
+3086,3024,2963,2909,2866,2835,2811,2786,2750,2700,2641,2584,2537,2498,2461,2419,2371,2324,2285,2255,2231,
+2207,2177,2142,2107,2075,2044,2013,1979,1939,1892,1839,1779,1714,1650,1592,1542,1496,1451,1404,1355,1304,
+1252,1198,1139,1076,1014,956,902,850,799,748,699,654,611,565,513,452,387,318,246,168,80,
+-12,-105,-188,-255,-308,-351,-392,-437,-491,-553,-623,-695,-765,-832,-896,-963,-1036,-1114,-1193,-1263,-1321,
+-1368,-1409,-1449,-1489,-1526,-1559,-1586,-1611,-1638,-1668,-1701,-1732,-1761,-1793,-1830,-1872,-1917,-1957,-1990,-2016,-2039,
+-2064,-2090,-2115,-2139,-2160,-2180,-2198,-2213,-2224,-2234,-2253,-2290,-2349,-2420,-2486,-2534,-2563,-2585,-2614,-2660,-2718,
+-2777,-2824,-2859,-2891,-2929,-2978,-3032,-3084,-3128,-3166,-3206,-3251,-3300,-3347,-3388,-3418,-3440,-3457,-3472,-3486,-3499,
+-3514,-3530,-3551,-3576,-3604,-3633,-3661,-3687,-3714,-3744,-3779,-3816,-3851,-3877,-3893,-3902,-3915,-3941,-3983,-4036,-4090,
+-4134,-4168,-4193,-4216,-4237,-4254,-4266,-4272,-4279,-4293,-4316,-4344,-4372,-4398,-4422,-4446,-4472,-4498,-4525,-4552,-4583,
+-4620,-4660,-4696,-4722,-4735,-4739,-4741,-4748,-4762,-4782,-4810,-4844,-4882,-4915,-4935,-4938,-4927,-4913,-4904,-4904,-4908,
+-4912,-4913,-4911,-4905,-4888,-4852,-4798,-4741,-4705,-4710,-4750,-4792,-4800,-4754,-4671,-4600,-4589,-4661,-4799,-4963,-5112,
+-5226,-5304,-5355,-5385,-5392,-5372,-5328,-5271,-5209,-5144,-5069,-4977,-4862,-4732,-4597,-4472,-4371,-4308,-4294,-4337,-4426,
+-4539,-4643,-4712,-4741,-4747,-4758,-4796,-4863,-4937,-4991,-5004,-4978,-4930,-4884,-4855,-4843,-4837,-4824,-4800,-4768,-4732,
+-4696,-4658,-4615,-4569,-4528,-4501,-4493,-4497,-4503,-4498,-4479,-4447,-4411,-4378,-4353,-4339,-4338,-4347,-4363,-4375,-4379,
+-4372,-4361,-4353,-4349,-4347,-4338,-4319,-4293,-4267,-4245,-4223,-4194,-4149,-4090,-4022,-3956,-3894,-3835,-3775,-3715,-3657,
+-3601,-3547,-3490,-3428,-3365,-3306,-3256,-3209,-3159,-3100,-3033,-2964,-2897,-2833,-2768,-2698,-2624,-2551,-2483,-2416,-2346,
+-2270,-2193,-2120,-2055,-1993,-1927,-1852,-1774,-1704,-1646,-1597,-1545,-1479,-1400,-1318,-1247,-1187,-1127,-1050,-949,-829,
+-708,-601,-513,-434,-351,-258,-158,-63,14,74,121,164,210,262,315,363,401,431,457,485,520,
+562,611,665,723,786,854,925,993,1055,1110,1158,1203,1248,1293,1339,1389,1446,1512,1586,1660,1727,
+1778,1812,1830,1839,1846,1857,1873,1897,1925,1956,1985,2007,2022,2029,2032,2036,2046,2066,2097,2140,2193,
+2250,2308,2362,2409,2451,2489,2526,2563,2604,2653,2710,2770,2822,2850,2842,2798,2730,2660,2602,2558,2522,
+2484,2442,2403,2376,2365,2365,2366,2367,2374,2397,2440,2491,2531,2541,2512,2453,2376,2296,2223,2164,2124,
+2105,2105,2113,2114,2099,2072,2045,2034,2047,2076,2108,2128,2134,2129,2124,2123,2125,2126,2121,2116,2117,
+2130,2154,2185,2212,2232,2253,2285,2338,2407,2471,2506,2498,2446,2364,2257,2112,1901,1606,1242,871,578,
+434,457,604,799,969,1080,1139,1171,1197,1219,1228,1214,1182,1144,1108,1077,1048,1013,973,929,883,
+835,786,737,689,641,589,529,464,399,342,297,258,219,179,142,114,92,70,40,6,-24,
+-44,-60,-86,-133,-198,-263,-316,-367,-438,-546,-664,-731,-687,-522,-299,-129,-101,-228,-437,-621,-703,
+-679,-604,-538,-511,-506,-495,-464,-426,-402,-404,-423,-440,-447,-450,-456,-467,-472,-462,-440,-417,-407,
+-411,-418,-415,-401,-384,-375,-374,-376,-370,-356,-340,-331,-329,-325,-313,-294,-274,-264,-264,-264,-258,
+-241,-221,-206,-197,-191,-180,-162,-140,-122,-108,-97,-86,-75,-67,-62,-58,-50,-34,-13,7,22,
+31,38,46,54,58,56,51,51,60,78,100,120,135,145,148,144,137,131,134,148,172,
+193,203,199,186,177,176,182,189,189,185,180,178,180,180,176,171,168,172,181,189,190,
+185,178,173,171,170,164,151,132,112,93,73,54,35,17,1,-13,-29,-46,-65,-84,-102,
+-117,-131,-144,-159,-175,-195,-218,-243,-269,-294,-317,-340,-363,-389,-417,-444,-469,-491,-511,-533,-555,
+-579,-603,-627,-651,-675,-698,-720,-742,-767,-795,-827,-859,-888,-913,-936,-959,-983,-1009,-1035,-1060,-1086,
+-1113,-1143,-1173,-1202,-1228,-1254,-1283,-1315,-1349,-1383,-1415,-1446,-1476,-1507,-1537,-1567,-1594,-1622,-1653,-1687,-1722,
+-1755,-1784,-1810,-1837,-1865,-1895,-1924,-1951,-1975,-1998,-2021,-2045,-2069,-2092,-2115,-2139,-2163,-2186,-2207,-2226,-2244,
+-2263,-2283,-2305,-2328,-2349,-2367,-2380,-2388,-2391,-2393,-2396,-2402,-2408,-2409,-2402,-2388,-2375,-2368,-2367,-2369,-2364,
+-2352,-2337,-2327,-2328,-2337,-2345,-2346,-2342,-2337,-2338,-2347,-2358,-2365,-2369,-2371,-2377,-2386,-2397,-2407,-2417,-2429,
+-2442,-2452,-2454,-2450,-2446,-2447,-2451,-2440,-2394,-2307,-2197,-2100,-2050,-2053,-2086,-2108,-2085,-2016,-1926,-1851,-1816,
+-1823,-1857,-1897,-1929,-1952,-1967,-1977,-1977,-1964,-1940,-1910,-1881,-1859,-1839,-1816,-1785,-1746,-1703,-1662,-1627,-1597,
+-1570,-1545,-1524,-1509,-1498,-1488,-1470,-1439,-1396,-1346,-1302,-1271,-1260,-1265,-1276,-1282,-1271,-1240,-1196,-1154,-1131,
+-1134,-1158,-1187,-1208,-1217,-1224,-1245,-1286,-1339,-1388,-1418,-1428,-1430,-1439,-1464,-1499,-1533,-1561,-1583,-1604,-1623,
+-1634,-1631,-1614,-1593,-1583,-1592,-1618,-1647,-1670,-1689,-1713,-1752,-1807,-1872,-1936,-1994,-2044,-2089,-2131,-2164,-2189,
+-2209,-2232,-2268,-2317,-2371,-2422,-2463,-2498,-2530,-2562,-2593,-2618,-2638,-2653,-2668,-2684,-2698,-2709,-2721,-2738,-2765,
+-2801,-2838,-2867,-2888,-2906,-2927,-2949,-2964,-2960,-2937,-2909,-2897,-2921,-2980,-3058,-3129,-3175,-3190,-3183,-3169,-3162,
+-3171,-3200,-3253,-3325,-3407,-3481,-3536,-3567,-3581,-3591,-3605,-3626,-3648,-3664,-3675,-3683,-3694,-3709,-3723,-3733,-3735,
+-3730,-3723,-3715,-3707,-3698,-3690,-3683,-3680,-3681,-3685,-3687,-3685,-3679,-3669,-3659,-3652,-3653,-3664,-3683,-3705,-3720,
+-3724,-3715,-3696,-3673,-3651,-3631,-3612,-3593,-3573,-3552,-3530,-3508,-3486,-3464,-3442,-3419,-3393,-3364,-3332,-3299,-3268,
+-3236,-3199,-3155,-3106,-3056,-3008,-2963,-2919,-2875,-2836,-2807,-2794,-2794,-2799,-2795,-2774,-2736,-2684,-2628,-2576,-2530,
+-2493,-2459,-2422,-2375,-2316,-2252,-2193,-2148,-2121,-2105,-2093,-2079,-2065,-2053,-2043,-2030,-2009,-1978,-1940,-1902,-1868,
+-1836,-1805,-1776,-1751,-1734,-1717,-1690,-1642,-1576,-1504,-1443,-1403,-1379,-1353,-1312,-1250,-1176,-1100,-1026,-952,-872,
+-780,-680,-579,-483,-392,-305,-214,-117,-16,83,176,258,329,399,474,558,647,727,787,824,849,
+881,934,1016,1119,1226,1324,1405,1470,1530,1593,1664,1741,1820,1896,1971,2052,2148,2263,2388,2506,2600,
+2667,2720,2779,2862,2969,3087,3198,3291,3368,3437,3501,3553,3581,3579,3552,3519,3497,3496,3514,3540,3564,
+3585,3609,3642,3691,3755,3828,3905,3981,4053,4120,4183,4243,4302,4360,4417,4469,4516,4557,4598,4645,4702,
+4766,4832,4895,4950,5001,5053,5109,5167,5222,5271,5311,5348,5386,5430,5477,5524,5568,5608,5648,5694,5747,
+5806,5867,5925,5979,6030,6077,6122,6162,6197,6227,6255,6289,6333,6386,6444,6498,6541,6571,6590,6601,6607,
+6609,6606,6598,6587,6576,6568,6560,6552,6541,6529,6516,6500,6479,6448,6404,6353,6300,6255,6222,6204,6199,
+6202,6210,6217,6218,6209,6191,6167,6144,6126,6114,6102,6085,6060,6029,5995,5963,5935,5911,5888,5864,5838,
+5810,5781,5754,5728,5702,5675,5648,5624,5607,5595,5581,5559,5521,5468,5403,5331,5257,5185,5117,5058,5016,
+4992,4983,4983,4986,4991,5000,5009,5014,5003,4971,4921,4869,4829,4809,4804,4803,4799,4794,4798,4823,4872,
+4934,4992,5029,5039,5026,4999,4972,4952,4940,4936,4931,4921,4902,4877,4851,4831,4819,4815,4812,4805,4792,
+4774,4758,4782,4776,4775,4778,4783,4786,4788,4793,4805,4822,4837,4843,4839,4831,4829,4839,4856,4869,4870,
+4861,4859,4876,4918,4971,5013,5026,5007,4969,4933,4913,4914,4929,4947,4954,4943,4914,4877,4850,4852,4889,
+4948,5002,5027,5014,4980,4955,4959,4989,5019,5021,4987,4929,4872,4837,4824,4821,4813,4799,4783,4773,4767,
+4756,4731,4690,4641,4595,4561,4541,4531,4527,4525,4518,4503,4480,4451,4422,4397,4377,4357,4334,4307,4280,
+4256,4239,4226,4215,4207,4204,4210,4226,4245,4251,4232,4178,4093,3997,3913,3865,3859,3882,3907,3905,3860,
+3775,3665,3552,3452,3372,3313,3274,3252,3241,3232,3215,3185,3142,3090,3035,2980,2927,2881,2843,2811,2779,
+2738,2686,2625,2565,2514,2471,2431,2388,2339,2291,2247,2211,2180,2150,2119,2089,2061,2032,1998,1956,1908,
+1857,1806,1754,1699,1639,1580,1526,1478,1435,1390,1343,1297,1255,1218,1181,1138,1085,1022,957,894,837,
+784,736,692,652,612,569,521,468,413,358,298,228,144,49,-48,-136,-207,-261,-303,-341,-381,
+-425,-476,-533,-597,-667,-739,-813,-887,-962,-1035,-1106,-1172,-1232,-1286,-1336,-1384,-1429,-1471,-1509,-1544,-1578,
+-1609,-1639,-1667,-1694,-1724,-1760,-1803,-1850,-1896,-1933,-1961,-1982,-2004,-2031,-2064,-2101,-2138,-2172,-2202,-2229,-2252,
+-2273,-2297,-2328,-2374,-2432,-2496,-2554,-2597,-2627,-2652,-2684,-2730,-2784,-2836,-2878,-2911,-2940,-2975,-3018,-3065,-3109,
+-3150,-3188,-3230,-3279,-3330,-3378,-3418,-3448,-3472,-3496,-3519,-3543,-3564,-3581,-3596,-3612,-3634,-3662,-3693,-3723,-3749,
+-3771,-3797,-3830,-3871,-3913,-3945,-3958,-3956,-3950,-3958,-3988,-4037,-4091,-4138,-4172,-4196,-4219,-4243,-4266,-4283,-4292,
+-4296,-4305,-4324,-4352,-4384,-4412,-4435,-4457,-4481,-4511,-4549,-4595,-4648,-4705,-4759,-4803,-4831,-4845,-4851,-4860,-4877,
+-4903,-4932,-4959,-4981,-4999,-5011,-5016,-5014,-5009,-5009,-5021,-5044,-5074,-5100,-5117,-5125,-5125,-5118,-5097,-5060,-5013,
+-4969,-4943,-4940,-4948,-4948,-4928,-4895,-4872,-4884,-4945,-5045,-5162,-5275,-5372,-5452,-5513,-5548,-5549,-5513,-5449,-5376,
+-5311,-5259,-5211,-5149,-5061,-4944,-4813,-4683,-4573,-4493,-4446,-4433,-4450,-4489,-4536,-4580,-4616,-4647,-4685,-4742,-4823,
+-4916,-5000,-5051,-5059,-5029,-4977,-4924,-4882,-4853,-4831,-4810,-4787,-4762,-4734,-4701,-4661,-4617,-4577,-4552,-4545,-4553,
+-4562,-4561,-4541,-4505,-4458,-4406,-4358,-4318,-4293,-4287,-4299,-4321,-4341,-4351,-4352,-4347,-4340,-4332,-4319,-4300,-4276,
+-4252,-4229,-4204,-4174,-4134,-4085,-4032,-3978,-3924,-3864,-3800,-3735,-3674,-3620,-3567,-3511,-3446,-3378,-3315,-3261,-3216,
+-3172,-3119,-3058,-2989,-2918,-2845,-2769,-2691,-2615,-2545,-2480,-2415,-2345,-2266,-2186,-2110,-2040,-1973,-1899,-1818,-1736,
+-1665,-1608,-1559,-1505,-1438,-1363,-1293,-1239,-1195,-1146,-1073,-968,-840,-708,-587,-481,-385,-292,-198,-110,-34,
+26,75,119,165,217,273,328,377,417,448,473,499,531,572,621,677,739,805,875,944,1009,
+1066,1116,1163,1210,1258,1306,1352,1400,1454,1520,1595,1674,1743,1793,1821,1833,1840,1851,1870,1898,1930,
+1964,1995,2020,2036,2043,2044,2045,2055,2077,2111,2153,2197,2241,2285,2333,2386,2442,2499,2550,2594,2629,
+2658,2688,2725,2768,2813,2844,2846,2810,2742,2658,2581,2523,2484,2457,2434,2414,2402,2404,2418,2439,2460,
+2480,2501,2523,2543,2549,2534,2496,2439,2373,2308,2248,2195,2155,2133,2128,2135,2143,2143,2134,2124,2125,
+2139,2162,2182,2189,2183,2170,2159,2152,2146,2137,2126,2121,2133,2166,2214,2263,2300,2321,2332,2348,2377,
+2417,2450,2456,2417,2329,2191,2003,1764,1476,1155,846,607,491,513,644,824,988,1099,1157,1185,1208,
+1233,1251,1248,1220,1175,1127,1085,1048,1013,977,939,898,852,799,741,683,632,589,547,496,435,
+369,309,261,222,185,146,109,78,51,22,-12,-48,-73,-82,-85,-103,-153,-227,-302,-356,-395,
+-451,-554,-689,-793,-790,-650,-425,-233,-180,-296,-514,-716,-808,-776,-678,-590,-552,-553,-557,-539,-503,
+-472,-462,-470,-479,-482,-480,-485,-497,-508,-505,-486,-464,-452,-456,-467,-470,-459,-438,-421,-413,-410,
+-406,-397,-386,-379,-376,-372,-359,-338,-318,-306,-304,-305,-300,-287,-269,-254,-245,-238,-226,-207,-185,
+-166,-152,-142,-133,-124,-117,-112,-109,-101,-88,-70,-53,-41,-32,-23,-14,-6,-2,-4,-7,-4,
+7,26,46,62,71,78,84,88,87,84,84,91,107,125,137,138,130,123,122,127,133,
+134,129,122,117,117,118,117,115,115,120,129,136,139,137,131,126,123,118,109,94,74,
+53,33,15,-1,-20,-39,-59,-76,-93,-108,-124,-140,-156,-173,-189,-204,-218,-233,-252,-276,-303,
+-331,-357,-380,-402,-426,-452,-480,-506,-530,-551,-571,-591,-614,-639,-665,-693,-721,-747,-771,-793,-813,
+-836,-862,-891,-920,-948,-973,-997,-1022,-1049,-1076,-1102,-1126,-1149,-1174,-1201,-1229,-1256,-1282,-1309,-1339,-1370,
+-1402,-1433,-1463,-1493,-1525,-1557,-1588,-1617,-1643,-1670,-1701,-1736,-1773,-1807,-1836,-1864,-1892,-1923,-1953,-1982,-2006,
+-2028,-2050,-2074,-2099,-2125,-2150,-2173,-2197,-2221,-2245,-2268,-2287,-2304,-2322,-2341,-2361,-2380,-2397,-2411,-2423,-2431,
+-2437,-2441,-2446,-2453,-2459,-2461,-2456,-2447,-2436,-2430,-2427,-2423,-2412,-2393,-2373,-2360,-2358,-2365,-2372,-2373,-2371,
+-2370,-2375,-2386,-2397,-2402,-2401,-2401,-2406,-2417,-2431,-2446,-2460,-2475,-2490,-2500,-2500,-2495,-2491,-2494,-2496,-2478,
+-2420,-2320,-2198,-2092,-2032,-2022,-2034,-2032,-1992,-1922,-1849,-1806,-1808,-1846,-1898,-1942,-1971,-1985,-1993,-1999,-2002,
+-1998,-1985,-1962,-1932,-1898,-1861,-1823,-1785,-1748,-1714,-1682,-1653,-1626,-1599,-1572,-1545,-1519,-1496,-1474,-1449,-1421,
+-1390,-1356,-1325,-1300,-1282,-1271,-1261,-1247,-1222,-1183,-1135,-1090,-1062,-1059,-1078,-1108,-1134,-1153,-1171,-1201,-1250,
+-1311,-1366,-1402,-1416,-1421,-1433,-1460,-1495,-1527,-1549,-1563,-1580,-1601,-1621,-1627,-1613,-1586,-1563,-1559,-1578,-1614,
+-1652,-1686,-1717,-1756,-1808,-1872,-1939,-2000,-2052,-2094,-2130,-2161,-2189,-2215,-2244,-2278,-2321,-2369,-2418,-2463,-2502,
+-2535,-2566,-2595,-2624,-2650,-2671,-2684,-2690,-2691,-2692,-2701,-2723,-2756,-2791,-2819,-2836,-2845,-2855,-2871,-2889,-2897,
+-2887,-2862,-2841,-2849,-2900,-2989,-3088,-3165,-3199,-3189,-3155,-3123,-3114,-3135,-3181,-3241,-3306,-3369,-3424,-3471,-3508,
+-3540,-3568,-3593,-3613,-3625,-3630,-3632,-3638,-3653,-3675,-3698,-3716,-3726,-3730,-3731,-3730,-3727,-3719,-3707,-3695,-3689,
+-3689,-3695,-3702,-3703,-3696,-3682,-3666,-3655,-3657,-3672,-3696,-3721,-3737,-3738,-3725,-3702,-3675,-3650,-3625,-3600,-3576,
+-3554,-3533,-3514,-3494,-3472,-3451,-3431,-3414,-3396,-3373,-3345,-3312,-3277,-3243,-3210,-3176,-3141,-3105,-3069,-3033,-2996,
+-2957,-2918,-2884,-2856,-2833,-2811,-2782,-2746,-2702,-2655,-2605,-2558,-2513,-2475,-2443,-2412,-2377,-2332,-2281,-2232,-2192,
+-2166,-2148,-2130,-2108,-2084,-2063,-2045,-2025,-1998,-1963,-1924,-1889,-1860,-1835,-1809,-1781,-1755,-1732,-1706,-1666,-1602,
+-1519,-1432,-1362,-1322,-1305,-1294,-1272,-1233,-1182,-1130,-1077,-1019,-947,-857,-753,-645,-540,-442,-348,-255,-161,
+-64,31,123,209,291,369,447,524,598,662,711,749,783,828,894,985,1091,1200,1298,1378,1444,
+1506,1575,1656,1742,1821,1882,1930,1980,2053,2161,2293,2425,2532,2607,2667,2737,2834,2953,3075,3178,3255,
+3315,3371,3426,3470,3488,3475,3443,3415,3410,3434,3473,3514,3545,3569,3596,3634,3687,3752,3822,3893,3965,
+4036,4104,4168,4227,4282,4336,4390,4443,4492,4535,4576,4622,4677,4740,4807,4871,4928,4983,5038,5096,5155,
+5209,5255,5293,5330,5372,5420,5470,5516,5557,5596,5638,5688,5745,5805,5864,5921,5975,6027,6077,6122,6162,
+6196,6227,6260,6297,6342,6393,6448,6499,6543,6575,6595,6606,6608,6605,6599,6592,6586,6582,6579,6574,6563,
+6545,6523,6502,6483,6464,6441,6408,6365,6316,6268,6228,6200,6184,6179,6181,6184,6185,6179,6165,6147,6132,
+6123,6122,6121,6114,6094,6060,6017,5972,5932,5901,5878,5858,5839,5819,5798,5777,5754,5727,5694,5656,5622,
+5597,5585,5581,5574,5551,5506,5439,5355,5263,5170,5085,5016,4968,4940,4928,4927,4930,4938,4952,4969,4981,
+4978,4954,4911,4865,4827,4802,4786,4766,4737,4704,4681,4684,4719,4781,4852,4915,4956,4974,4973,4963,4949,
+4938,4930,4923,4914,4902,4885,4865,4844,4827,4815,4808,4803,4798,4790,4782,4801,4795,4792,4797,4808,4821,
+4833,4844,4857,4871,4883,4888,4885,4878,4878,4886,4900,4908,4904,4893,4889,4906,4945,4990,5020,5021,4997,
+4969,4958,4973,5009,5047,5068,5062,5029,4981,4935,4910,4918,4955,5003,5037,5039,5010,4973,4955,4967,4996,
+5012,4991,4930,4853,4789,4758,4757,4766,4771,4767,4758,4752,4747,4734,4707,4668,4625,4588,4560,4539,4523,
+4510,4501,4496,4491,4483,4470,4453,4435,4416,4394,4366,4335,4303,4277,4257,4243,4233,4226,4227,4239,4259,
+4281,4290,4272,4220,4137,4038,3946,3880,3853,3858,3874,3878,3852,3790,3702,3598,3491,3389,3302,3239,3202,
+3188,3186,3180,3162,3131,3090,3045,2996,2946,2895,2847,2804,2765,2723,2672,2613,2553,2498,2451,2407,2362,
+2313,2263,2215,2171,2131,2093,2061,2036,2014,1988,1951,1898,1835,1771,1713,1661,1610,1559,1509,1464,1424,
+1385,1341,1291,1242,1201,1172,1149,1122,1081,1026,962,897,836,781,731,686,646,608,568,523,474,
+423,373,322,262,189,104,14,-69,-139,-195,-241,-284,-327,-371,-418,-468,-524,-589,-661,-738,-814,
+-887,-954,-1018,-1079,-1139,-1197,-1253,-1305,-1353,-1398,-1444,-1490,-1533,-1571,-1600,-1624,-1647,-1675,-1712,-1757,-1806,
+-1853,-1891,-1922,-1948,-1976,-2010,-2053,-2102,-2152,-2200,-2242,-2278,-2310,-2340,-2371,-2408,-2451,-2502,-2555,-2606,-2648,
+-2683,-2715,-2750,-2793,-2840,-2886,-2926,-2958,-2986,-3016,-3050,-3088,-3128,-3168,-3210,-3256,-3307,-3360,-3409,-3451,-3484,
+-3512,-3538,-3565,-3593,-3618,-3639,-3655,-3672,-3692,-3719,-3749,-3776,-3797,-3813,-3833,-3866,-3915,-3972,-4019,-4040,-4034,
+-4013,-4000,-4011,-4047,-4097,-4142,-4175,-4196,-4214,-4237,-4263,-4285,-4299,-4307,-4317,-4336,-4365,-4400,-4432,-4458,-4481,
+-4506,-4538,-4582,-4638,-4703,-4771,-4836,-4888,-4922,-4940,-4950,-4963,-4982,-5006,-5027,-5040,-5045,-5045,-5046,-5051,-5059,
+-5068,-5083,-5106,-5139,-5179,-5217,-5244,-5258,-5260,-5255,-5243,-5225,-5199,-5170,-5142,-5125,-5123,-5135,-5158,-5190,-5229,
+-5277,-5334,-5395,-5459,-5524,-5589,-5653,-5708,-5740,-5738,-5694,-5619,-5531,-5453,-5392,-5343,-5290,-5217,-5123,-5017,-4917,
+-4836,-4773,-4722,-4673,-4627,-4592,-4577,-4588,-4618,-4657,-4699,-4749,-4816,-4904,-5005,-5095,-5150,-5154,-5112,-5043,-4969,
+-4908,-4864,-4834,-4814,-4798,-4781,-4759,-4730,-4695,-4661,-4638,-4629,-4632,-4636,-4629,-4605,-4566,-4516,-4461,-4403,-4350,
+-4309,-4289,-4293,-4317,-4347,-4371,-4382,-4380,-4370,-4355,-4337,-4315,-4289,-4260,-4231,-4199,-4163,-4123,-4081,-4037,-3993,
+-3943,-3886,-3822,-3756,-3696,-3641,-3587,-3526,-3457,-3384,-3320,-3268,-3227,-3187,-3138,-3078,-3008,-2933,-2855,-2775,-2695,
+-2619,-2548,-2481,-2412,-2336,-2253,-2169,-2090,-2017,-1946,-1869,-1788,-1708,-1639,-1581,-1528,-1468,-1397,-1326,-1266,-1222,
+-1187,-1140,-1065,-959,-832,-700,-575,-460,-351,-249,-156,-77,-14,36,82,129,180,233,287,339,387,
+428,462,490,516,545,584,633,691,757,826,895,962,1022,1076,1126,1175,1225,1275,1324,1372,1420,
+1476,1544,1620,1697,1761,1805,1830,1844,1858,1878,1905,1937,1969,2000,2027,2049,2064,2072,2076,2083,2100,
+2131,2172,2213,2250,2281,2313,2354,2408,2472,2540,2603,2658,2702,2738,2765,2788,2808,2828,2840,2833,2799,
+2733,2649,2564,2499,2460,2442,2436,2433,2436,2449,2476,2512,2549,2578,2594,2596,2586,2563,2530,2489,2444,
+2398,2351,2302,2252,2208,2178,2166,2171,2182,2190,2192,2194,2202,2216,2231,2237,2230,2215,2200,2191,2185,
+2176,2159,2141,2138,2165,2225,2303,2375,2419,2427,2409,2383,2362,2348,2327,2280,2191,2048,1849,1598,1308,
+1006,737,550,482,537,682,861,1016,1116,1164,1186,1205,1232,1257,1263,1242,1199,1148,1098,1054,1012,
+970,929,891,855,813,761,699,638,586,545,508,462,403,337,277,228,189,152,113,74,41,
+12,-18,-55,-94,-122,-131,-130,-140,-181,-250,-324,-380,-421,-477,-577,-710,-815,-813,-671,-441,-240,
+-183,-308,-549,-778,-891,-864,-754,-645,-591,-588,-598,-590,-562,-533,-521,-526,-533,-531,-523,-521,-531,
+-544,-548,-535,-514,-499,-499,-509,-513,-505,-484,-463,-450,-446,-446,-442,-437,-432,-430,-426,-415,-398,
+-379,-366,-361,-358,-351,-336,-317,-299,-287,-276,-263,-246,-227,-212,-201,-192,-182,-172,-164,-160,-159,
+-157,-149,-136,-121,-106,-93,-81,-68,-59,-55,-57,-61,-57,-45,-26,-8,3,9,14,21,30,
+36,37,35,36,45,59,71,77,75,69,67,70,75,76,73,67,61,59,59,59,60,
+63,68,75,82,85,85,81,77,73,66,54,37,16,-5,-25,-42,-59,-76,-95,-116,-137,
+-156,-172,-186,-200,-215,-231,-248,-264,-280,-297,-317,-341,-368,-395,-420,-442,-463,-486,-512,-538,-563,
+-587,-609,-631,-654,-677,-702,-726,-753,-780,-808,-834,-858,-880,-903,-930,-958,-987,-1014,-1038,-1062,-1088,
+-1114,-1139,-1163,-1185,-1206,-1229,-1254,-1281,-1308,-1336,-1364,-1395,-1425,-1455,-1483,-1510,-1538,-1570,-1604,-1637,-1667,
+-1694,-1722,-1752,-1786,-1820,-1853,-1883,-1914,-1946,-1980,-2014,-2042,-2065,-2085,-2105,-2130,-2157,-2184,-2209,-2233,-2256,
+-2281,-2306,-2328,-2348,-2365,-2384,-2402,-2420,-2435,-2446,-2454,-2461,-2469,-2477,-2484,-2490,-2496,-2502,-2505,-2503,-2498,
+-2491,-2485,-2481,-2475,-2462,-2443,-2421,-2404,-2396,-2395,-2396,-2395,-2395,-2401,-2413,-2429,-2439,-2441,-2436,-2432,-2434,
+-2443,-2457,-2475,-2495,-2518,-2537,-2546,-2543,-2533,-2527,-2531,-2532,-2508,-2437,-2319,-2182,-2070,-2009,-1998,-2006,-1995,
+-1951,-1884,-1827,-1806,-1826,-1873,-1924,-1962,-1984,-1997,-2007,-2017,-2026,-2028,-2018,-1993,-1952,-1898,-1841,-1790,-1749,
+-1721,-1700,-1680,-1660,-1637,-1613,-1588,-1561,-1530,-1495,-1458,-1421,-1387,-1357,-1332,-1311,-1293,-1276,-1260,-1243,-1223,
+-1197,-1162,-1120,-1077,-1045,-1035,-1050,-1081,-1117,-1146,-1172,-1202,-1245,-1299,-1352,-1391,-1414,-1427,-1445,-1475,-1512,
+-1545,-1563,-1569,-1573,-1584,-1600,-1612,-1607,-1584,-1556,-1541,-1549,-1582,-1628,-1676,-1722,-1768,-1821,-1880,-1943,-2000,
+-2048,-2086,-2119,-2152,-2186,-2221,-2256,-2290,-2327,-2367,-2411,-2455,-2495,-2531,-2562,-2594,-2628,-2662,-2690,-2704,-2704,
+-2695,-2689,-2696,-2716,-2744,-2766,-2778,-2781,-2784,-2796,-2817,-2835,-2837,-2816,-2782,-2759,-2769,-2826,-2920,-3024,-3105,
+-3143,-3140,-3114,-3091,-3090,-3117,-3162,-3213,-3260,-3302,-3341,-3383,-3429,-3477,-3519,-3552,-3570,-3576,-3574,-3574,-3582,
+-3601,-3628,-3658,-3686,-3709,-3728,-3744,-3755,-3758,-3752,-3740,-3726,-3716,-3714,-3718,-3723,-3722,-3713,-3698,-3682,-3673,
+-3676,-3692,-3717,-3740,-3751,-3747,-3729,-3705,-3679,-3655,-3629,-3599,-3566,-3533,-3505,-3482,-3461,-3441,-3423,-3408,-3396,
+-3385,-3369,-3346,-3315,-3283,-3255,-3233,-3214,-3191,-3160,-3120,-3071,-3018,-2965,-2918,-2879,-2846,-2814,-2779,-2738,-2693,
+-2650,-2610,-2574,-2538,-2502,-2469,-2440,-2415,-2389,-2356,-2317,-2276,-2242,-2216,-2195,-2171,-2140,-2105,-2072,-2044,-2019,
+-1991,-1957,-1921,-1889,-1863,-1841,-1819,-1793,-1765,-1736,-1700,-1647,-1572,-1481,-1392,-1325,-1290,-1280,-1275,-1260,-1231,
+-1193,-1154,-1116,-1071,-1009,-925,-823,-712,-599,-488,-383,-282,-188,-98,-12,72,158,244,327,404,474,
+535,590,640,689,744,809,887,977,1075,1175,1269,1352,1426,1498,1577,1663,1752,1827,1881,1917,1957,
+2026,2133,2266,2397,2500,2571,2630,2704,2806,2926,3037,3117,3166,3198,3233,3274,3309,3324,3316,3299,3297,
+3322,3372,3430,3479,3514,3542,3575,3622,3682,3749,3817,3884,3951,4020,4087,4149,4203,4254,4305,4359,4416,
+4470,4518,4561,4606,4658,4719,4783,4846,4906,4963,5022,5083,5142,5194,5236,5272,5310,5356,5409,5462,5508,
+5547,5584,5627,5680,5741,5803,5861,5915,5968,6021,6072,6119,6160,6195,6228,6265,6306,6353,6403,6453,6501,
+6542,6573,6593,6603,6604,6600,6594,6589,6588,6589,6591,6589,6578,6557,6529,6499,6473,6450,6428,6402,6369,
+6329,6286,6245,6209,6180,6161,6151,6149,6148,6144,6135,6123,6116,6119,6131,6146,6151,6134,6095,6039,5979,
+5929,5896,5879,5871,5862,5849,5830,5806,5779,5745,5702,5652,5604,5567,5551,5553,5561,5558,5528,5466,5376,
+5269,5161,5065,4992,4943,4915,4899,4888,4877,4870,4872,4881,4892,4894,4881,4856,4828,4808,4795,4784,4763,
+4729,4684,4642,4619,4625,4660,4716,4779,4839,4888,4922,4942,4949,4944,4931,4915,4900,4887,4877,4867,4852,
+4835,4819,4808,4805,4806,4806,4801,4816,4812,4812,4821,4841,4865,4889,4908,4924,4937,4947,4949,4944,4936,
+4935,4944,4956,4960,4951,4930,4914,4916,4936,4964,4982,4985,4981,4989,5023,5079,5136,5170,5161,5109,5032,
+4954,4899,4882,4903,4951,5000,5029,5025,4996,4962,4943,4943,4944,4921,4861,4774,4688,4635,4628,4656,4695,
+4724,4736,4737,4731,4721,4703,4676,4643,4613,4590,4570,4550,4527,4505,4489,4484,4485,4486,4483,4474,4460,
+4442,4418,4387,4354,4322,4297,4279,4265,4251,4239,4233,4235,4246,4258,4263,4251,4219,4166,4099,4028,3966,
+3924,3902,3893,3881,3853,3804,3729,3631,3515,3392,3278,3191,3143,3131,3140,3148,3142,3120,3087,3050,3007,
+2956,2899,2841,2789,2745,2703,2655,2599,2538,2481,2431,2389,2350,2309,2266,2222,2175,2126,2078,2037,2007,
+1985,1960,1920,1860,1787,1711,1643,1585,1533,1485,1442,1408,1381,1353,1316,1268,1215,1169,1137,1115,1092,
+1058,1012,957,900,844,791,740,694,653,617,580,538,488,436,384,334,281,220,149,73,-1,
+-68,-127,-180,-233,-285,-337,-386,-435,-485,-540,-602,-669,-739,-806,-870,-931,-991,-1053,-1113,-1170,-1222,
+-1270,-1318,-1370,-1425,-1479,-1524,-1557,-1582,-1604,-1631,-1666,-1709,-1755,-1802,-1846,-1888,-1928,-1968,-2012,-2061,-2116,
+-2176,-2234,-2288,-2335,-2376,-2413,-2450,-2486,-2523,-2561,-2602,-2644,-2686,-2726,-2764,-2802,-2841,-2882,-2923,-2959,-2990,
+-3015,-3039,-3066,-3098,-3137,-3181,-3229,-3280,-3331,-3381,-3429,-3473,-3511,-3543,-3572,-3600,-3629,-3658,-3684,-3706,-3726,
+-3746,-3771,-3797,-3819,-3834,-3842,-3855,-3887,-3943,-4014,-4079,-4116,-4116,-4090,-4062,-4055,-4077,-4117,-4158,-4187,-4205,
+-4220,-4241,-4268,-4296,-4317,-4330,-4340,-4355,-4378,-4410,-4446,-4482,-4516,-4551,-4591,-4636,-4689,-4750,-4816,-4880,-4938,
+-4981,-5009,-5025,-5036,-5046,-5055,-5060,-5060,-5058,-5061,-5073,-5092,-5111,-5122,-5127,-5133,-5151,-5185,-5229,-5268,-5288,
+-5283,-5259,-5229,-5202,-5185,-5176,-5173,-5180,-5203,-5251,-5326,-5421,-5520,-5608,-5675,-5723,-5758,-5791,-5827,-5864,-5898,
+-5916,-5910,-5874,-5811,-5730,-5647,-5571,-5504,-5439,-5367,-5288,-5209,-5146,-5106,-5080,-5052,-5003,-4933,-4857,-4801,-4778,
+-4785,-4803,-4815,-4820,-4839,-4891,-4981,-5088,-5175,-5210,-5185,-5115,-5029,-4954,-4903,-4876,-4865,-4864,-4864,-4860,-4847,
+-4826,-4801,-4781,-4770,-4764,-4755,-4735,-4701,-4656,-4606,-4554,-4499,-4442,-4392,-4359,-4351,-4365,-4392,-4416,-4428,-4426,
+-4414,-4399,-4381,-4358,-4331,-4297,-4259,-4218,-4174,-4129,-4085,-4041,-3997,-3948,-3894,-3834,-3775,-3718,-3664,-3608,-3544,
+-3473,-3403,-3340,-3291,-3248,-3203,-3148,-3080,-3005,-2927,-2850,-2774,-2698,-2624,-2551,-2479,-2404,-2321,-2233,-2147,-2065,
+-1989,-1914,-1838,-1760,-1688,-1626,-1570,-1511,-1443,-1365,-1289,-1227,-1180,-1138,-1083,-1005,-904,-790,-673,-557,-443,
+-330,-224,-132,-59,-3,45,94,146,199,250,297,341,386,428,467,500,529,559,596,644,704,
+773,844,914,979,1037,1091,1142,1194,1247,1298,1347,1395,1447,1507,1576,1648,1715,1771,1812,1844,1872,
+1902,1935,1967,1995,2020,2042,2065,2087,2106,2120,2129,2139,2156,2183,2215,2248,2277,2305,2339,2387,2450,
+2521,2592,2659,2720,2778,2827,2862,2878,2873,2853,2826,2793,2748,2687,2614,2540,2484,2454,2449,2458,2472,
+2487,2507,2537,2574,2610,2636,2644,2636,2615,2586,2555,2525,2495,2463,2426,2380,2327,2278,2242,2226,2228,
+2238,2246,2250,2252,2257,2266,2272,2268,2255,2240,2234,2241,2251,2253,2240,2221,2217,2249,2320,2409,2485,
+2521,2506,2452,2377,2296,2206,2098,1958,1779,1563,1317,1056,802,588,452,425,510,678,873,1039,1143,
+1186,1196,1203,1221,1243,1251,1234,1195,1146,1099,1058,1016,970,920,872,832,797,758,708,648,589,
+540,502,465,418,358,293,235,189,151,112,69,27,-7,-32,-55,-86,-124,-160,-181,-189,-197,
+-225,-277,-339,-395,-447,-513,-612,-730,-812,-791,-639,-407,-205,-146,-268,-514,-761,-903,-907,-818,-715,
+-654,-640,-643,-631,-603,-577,-570,-580,-591,-589,-576,-565,-568,-582,-593,-591,-577,-561,-555,-558,-559,
+-549,-528,-504,-488,-482,-483,-485,-485,-484,-483,-481,-473,-459,-442,-428,-419,-411,-400,-384,-364,-345,
+-330,-317,-304,-289,-275,-264,-256,-247,-236,-224,-215,-212,-214,-217,-213,-202,-185,-166,-148,-132,-118,
+-109,-107,-110,-115,-114,-103,-86,-69,-56,-50,-45,-37,-27,-19,-15,-16,-16,-10,1,14,23,
+23,17,10,7,8,10,10,8,5,2,1,2,4,7,12,17,23,27,28,26,23,
+18,10,-1,-18,-39,-61,-82,-101,-118,-136,-154,-175,-197,-218,-237,-253,-268,-282,-297,-312,-327,
+-343,-361,-382,-405,-431,-456,-479,-501,-523,-545,-569,-593,-616,-640,-665,-692,-719,-744,-767,-789,-812,
+-836,-863,-891,-917,-943,-970,-998,-1028,-1056,-1082,-1105,-1128,-1152,-1177,-1202,-1224,-1245,-1265,-1286,-1309,-1335,
+-1361,-1388,-1417,-1448,-1480,-1510,-1538,-1564,-1591,-1621,-1654,-1687,-1719,-1748,-1777,-1807,-1839,-1871,-1902,-1932,-1963,
+-1997,-2033,-2067,-2096,-2120,-2140,-2161,-2187,-2215,-2242,-2267,-2291,-2314,-2339,-2363,-2384,-2403,-2420,-2439,-2459,-2478,
+-2492,-2500,-2504,-2507,-2512,-2519,-2526,-2531,-2536,-2540,-2544,-2544,-2541,-2535,-2528,-2523,-2516,-2506,-2490,-2471,-2453,
+-2439,-2430,-2424,-2421,-2424,-2434,-2449,-2464,-2474,-2475,-2472,-2470,-2472,-2477,-2485,-2498,-2517,-2544,-2568,-2581,-2577,
+-2564,-2556,-2557,-2556,-2523,-2437,-2304,-2160,-2051,-2005,-2009,-2027,-2020,-1978,-1917,-1869,-1856,-1877,-1914,-1949,-1974,
+-1994,-2012,-2032,-2050,-2060,-2057,-2038,-1998,-1938,-1866,-1794,-1736,-1701,-1685,-1677,-1665,-1645,-1620,-1595,-1573,-1550,
+-1521,-1485,-1441,-1397,-1355,-1319,-1291,-1267,-1248,-1233,-1219,-1208,-1198,-1186,-1168,-1139,-1103,-1071,-1055,-1065,-1099,
+-1144,-1184,-1213,-1235,-1262,-1300,-1345,-1387,-1417,-1437,-1455,-1482,-1518,-1555,-1579,-1588,-1586,-1584,-1589,-1597,-1599,
+-1588,-1566,-1546,-1542,-1561,-1603,-1659,-1720,-1780,-1838,-1894,-1948,-1997,-2040,-2077,-2111,-2146,-2184,-2222,-2259,-2293,
+-2326,-2363,-2404,-2448,-2489,-2523,-2551,-2581,-2615,-2654,-2687,-2704,-2704,-2693,-2685,-2688,-2703,-2718,-2726,-2726,-2725,
+-2736,-2760,-2789,-2805,-2796,-2764,-2725,-2703,-2718,-2775,-2861,-2955,-3032,-3079,-3095,-3092,-3088,-3097,-3123,-3160,-3199,
+-3234,-3266,-3300,-3342,-3392,-3444,-3490,-3523,-3540,-3544,-3541,-3540,-3545,-3559,-3581,-3610,-3644,-3681,-3718,-3752,-3777,
+-3788,-3786,-3775,-3763,-3754,-3752,-3754,-3754,-3749,-3738,-3723,-3708,-3698,-3696,-3704,-3717,-3728,-3731,-3723,-3705,-3686,
+-3670,-3656,-3637,-3610,-3572,-3529,-3489,-3456,-3429,-3407,-3388,-3373,-3363,-3354,-3342,-3324,-3300,-3276,-3259,-3248,-3236,
+-3214,-3174,-3114,-3042,-2968,-2903,-2855,-2823,-2801,-2776,-2742,-2696,-2644,-2596,-2558,-2531,-2509,-2488,-2468,-2449,-2433,
+-2416,-2391,-2358,-2320,-2285,-2254,-2226,-2193,-2152,-2106,-2065,-2032,-2008,-1985,-1959,-1929,-1900,-1874,-1850,-1826,-1798,
+-1769,-1737,-1697,-1643,-1570,-1486,-1407,-1348,-1316,-1303,-1293,-1272,-1240,-1203,-1166,-1129,-1087,-1031,-956,-865,-762,
+-650,-535,-420,-312,-214,-127,-47,29,109,191,271,346,413,474,533,595,665,741,820,900,978,
+1057,1139,1225,1315,1404,1493,1582,1673,1760,1833,1888,1929,1976,2048,2152,2275,2390,2476,2537,2593,2670,
+2773,2883,2972,3022,3038,3044,3061,3092,3126,3149,3159,3170,3200,3253,3322,3388,3439,3476,3509,3551,3607,
+3671,3738,3803,3868,3933,4001,4065,4122,4172,4218,4267,4324,4386,4447,4501,4549,4594,4645,4702,4764,4826,
+4885,4943,5004,5068,5131,5185,5228,5265,5303,5350,5404,5458,5505,5543,5579,5621,5675,5736,5798,5854,5906,
+5957,6009,6061,6110,6152,6189,6225,6265,6309,6358,6407,6456,6501,6538,6566,6584,6591,6591,6589,6586,6585,
+6587,6591,6595,6597,6592,6576,6550,6519,6487,6456,6429,6401,6373,6342,6308,6270,6231,6192,6158,6134,6122,
+6117,6113,6106,6096,6091,6098,6118,6141,6152,6137,6093,6031,5967,5920,5897,5894,5896,5891,5871,5838,5799,
+5761,5721,5677,5626,5573,5527,5501,5496,5505,5509,5491,5440,5358,5255,5150,5059,4992,4951,4926,4908,4886,
+4861,4838,4823,4818,4818,4814,4803,4785,4770,4762,4762,4763,4757,4737,4704,4663,4627,4604,4603,4625,4668,
+4726,4789,4850,4900,4933,4946,4938,4917,4892,4872,4860,4852,4842,4828,4813,4804,4804,4810,4816,4816,4816,
+4822,4830,4849,4878,4912,4946,4976,5002,5024,5038,5039,5029,5015,5009,5015,5024,5023,5003,4968,4931,4908,
+4904,4915,4933,4955,4991,5049,5128,5208,5258,5253,5185,5069,4937,4825,4757,4742,4774,4833,4895,4939,4956,
+4949,4927,4903,4874,4831,4763,4671,4575,4503,4476,4498,4554,4617,4667,4697,4709,4709,4697,4676,4649,4623,
+4604,4592,4581,4565,4543,4520,4502,4494,4491,4488,4482,4474,4465,4452,4431,4402,4366,4333,4307,4289,4274,
+4259,4244,4232,4226,4227,4231,4231,4227,4216,4198,4171,4132,4086,4037,3991,3949,3908,3863,3807,3734,3636,
+3513,3376,3246,3149,3100,3097,3118,3137,3136,3117,3087,3055,3018,2971,2912,2848,2788,2737,2692,2642,2584,
+2521,2462,2415,2381,2355,2329,2300,2265,2220,2166,2106,2050,2005,1970,1936,1890,1823,1742,1657,1578,1511,
+1453,1402,1361,1335,1322,1312,1293,1259,1215,1172,1137,1109,1080,1045,1002,956,911,867,823,777,732,
+690,653,614,568,514,455,397,343,290,235,173,106,38,-27,-88,-148,-206,-265,-323,-378,-428,
+-474,-519,-566,-618,-675,-737,-799,-862,-924,-984,-1042,-1096,-1145,-1192,-1243,-1300,-1362,-1423,-1475,-1516,-1549,
+-1579,-1611,-1648,-1688,-1732,-1779,-1831,-1886,-1940,-1990,-2038,-2087,-2141,-2202,-2266,-2326,-2381,-2429,-2473,-2515,-2553,
+-2586,-2616,-2646,-2679,-2718,-2760,-2801,-2840,-2876,-2912,-2946,-2979,-3006,-3027,-3046,-3068,-3100,-3144,-3197,-3252,-3304,
+-3351,-3394,-3436,-3479,-3520,-3557,-3590,-3622,-3653,-3685,-3715,-3740,-3762,-3783,-3807,-3834,-3857,-3870,-3875,-3882,-3907,
+-3960,-4036,-4115,-4170,-4188,-4173,-4146,-4129,-4133,-4157,-4186,-4209,-4224,-4238,-4258,-4287,-4319,-4345,-4360,-4365,-4369,
+-4380,-4403,-4441,-4490,-4545,-4600,-4652,-4701,-4747,-4796,-4850,-4907,-4964,-5014,-5051,-5073,-5083,-5083,-5078,-5071,-5067,
+-5070,-5084,-5105,-5123,-5127,-5108,-5074,-5041,-5032,-5059,-5117,-5180,-5218,-5213,-5167,-5104,-5051,-5028,-5038,-5073,-5126,
+-5200,-5300,-5429,-5577,-5722,-5842,-5927,-5980,-6014,-6040,-6061,-6075,-6078,-6071,-6056,-6029,-5986,-5922,-5841,-5750,-5661,
+-5578,-5500,-5426,-5360,-5313,-5292,-5293,-5293,-5272,-5219,-5146,-5079,-5035,-5013,-4993,-4958,-4912,-4878,-4886,-4947,-5043,
+-5133,-5180,-5168,-5110,-5036,-4974,-4935,-4921,-4922,-4931,-4942,-4950,-4950,-4943,-4932,-4923,-4918,-4914,-4902,-4874,-4833,
+-4784,-4734,-4685,-4635,-4580,-4526,-4483,-4459,-4457,-4468,-4478,-4480,-4472,-4459,-4445,-4430,-4410,-4380,-4340,-4295,-4246,
+-4198,-4149,-4101,-4053,-4005,-3957,-3907,-3855,-3803,-3751,-3697,-3638,-3574,-3507,-3442,-3385,-3335,-3284,-3224,-3153,-3073,
+-2989,-2909,-2834,-2761,-2689,-2617,-2544,-2468,-2388,-2303,-2215,-2128,-2044,-1963,-1883,-1805,-1732,-1670,-1618,-1568,-1509,
+-1435,-1348,-1261,-1185,-1122,-1063,-997,-917,-827,-731,-633,-530,-421,-307,-200,-110,-41,11,59,109,162,
+213,258,297,335,375,419,462,501,536,571,610,660,721,791,864,935,999,1057,1110,1162,1216,
+1269,1320,1370,1420,1477,1541,1610,1676,1735,1785,1832,1879,1928,1975,2016,2046,2066,2080,2095,2113,2134,
+2154,2169,2178,2184,2192,2205,2224,2248,2278,2316,2368,2434,2510,2587,2658,2722,2784,2847,2905,2943,2946,
+2912,2852,2783,2719,2662,2609,2555,2506,2472,2462,2474,2499,2528,2554,2578,2604,2629,2650,2661,2661,2653,
+2641,2626,2611,2593,2571,2544,2508,2463,2412,2363,2327,2310,2308,2312,2313,2308,2301,2297,2297,2296,2291,
+2282,2278,2289,2317,2351,2374,2378,2369,2367,2389,2440,2500,2540,2534,2476,2375,2247,2099,1926,1718,1472,
+1200,929,686,494,368,321,358,477,654,852,1024,1139,1194,1209,1211,1220,1233,1235,1215,1174,1125,
+1082,1048,1016,976,925,869,817,774,736,694,643,586,532,488,452,415,367,308,247,194,152,
+114,73,24,-24,-61,-84,-100,-120,-152,-189,-221,-240,-252,-271,-305,-353,-409,-470,-545,-639,-738,
+-801,-777,-647,-447,-265,-193,-273,-470,-692,-849,-897,-858,-787,-733,-706,-690,-666,-633,-608,-606,-624,
+-644,-648,-634,-614,-605,-612,-627,-637,-634,-624,-616,-613,-609,-597,-575,-549,-527,-517,-517,-521,-527,
+-531,-533,-532,-525,-511,-494,-478,-464,-454,-442,-428,-412,-395,-381,-368,-354,-340,-327,-318,-310,-303,
+-293,-282,-273,-270,-272,-274,-271,-259,-241,-221,-204,-189,-178,-170,-167,-168,-171,-170,-162,-148,-130,
+-115,-104,-97,-91,-85,-80,-77,-75,-71,-64,-52,-39,-30,-28,-34,-43,-51,-54,-54,-52,-51,
+-51,-52,-54,-54,-53,-50,-46,-42,-37,-33,-31,-32,-36,-43,-52,-65,-80,-97,-117,-138,-158,
+-177,-196,-214,-234,-255,-277,-299,-319,-336,-353,-368,-382,-397,-412,-429,-448,-470,-493,-515,-537,-558,
+-581,-604,-626,-648,-669,-692,-719,-749,-780,-807,-831,-852,-873,-897,-924,-951,-978,-1007,-1036,-1067,-1096,
+-1124,-1147,-1168,-1190,-1214,-1239,-1265,-1288,-1308,-1326,-1345,-1366,-1389,-1413,-1439,-1468,-1499,-1530,-1562,-1591,-1618,
+-1645,-1673,-1704,-1736,-1768,-1800,-1831,-1863,-1894,-1926,-1956,-1985,-2014,-2045,-2078,-2109,-2138,-2164,-2187,-2213,-2240,
+-2269,-2296,-2322,-2345,-2369,-2393,-2416,-2435,-2452,-2467,-2485,-2507,-2528,-2544,-2554,-2558,-2561,-2566,-2571,-2575,-2577,
+-2578,-2581,-2584,-2586,-2584,-2577,-2568,-2559,-2552,-2543,-2531,-2515,-2498,-2482,-2469,-2462,-2459,-2463,-2473,-2485,-2495,
+-2499,-2501,-2504,-2511,-2519,-2523,-2522,-2522,-2533,-2557,-2587,-2606,-2606,-2594,-2583,-2579,-2568,-2520,-2417,-2272,-2128,
+-2035,-2014,-2045,-2081,-2083,-2043,-1985,-1943,-1932,-1947,-1968,-1984,-1996,-2013,-2038,-2065,-2082,-2083,-2065,-2029,-1974,
+-1902,-1819,-1741,-1684,-1656,-1649,-1648,-1638,-1615,-1584,-1555,-1532,-1512,-1488,-1457,-1419,-1378,-1337,-1298,-1261,-1228,
+-1201,-1183,-1172,-1167,-1166,-1167,-1164,-1150,-1124,-1094,-1073,-1078,-1112,-1164,-1214,-1249,-1267,-1281,-1305,-1344,-1390,
+-1429,-1452,-1463,-1474,-1496,-1528,-1562,-1585,-1593,-1589,-1584,-1585,-1589,-1591,-1584,-1570,-1559,-1564,-1594,-1648,-1717,
+-1789,-1853,-1906,-1952,-1995,-2036,-2076,-2115,-2150,-2185,-2218,-2251,-2284,-2320,-2361,-2407,-2452,-2491,-2520,-2542,-2564,
+-2593,-2628,-2661,-2681,-2683,-2675,-2668,-2670,-2678,-2686,-2688,-2690,-2701,-2728,-2765,-2796,-2802,-2781,-2745,-2718,-2720,
+-2756,-2819,-2892,-2961,-3015,-3053,-3075,-3089,-3101,-3119,-3147,-3184,-3224,-3264,-3303,-3342,-3386,-3433,-3479,-3517,-3543,
+-3556,-3559,-3556,-3550,-3544,-3543,-3551,-3571,-3606,-3652,-3703,-3749,-3783,-3799,-3800,-3793,-3786,-3784,-3787,-3790,-3789,
+-3782,-3770,-3755,-3738,-3721,-3705,-3692,-3684,-3679,-3673,-3663,-3650,-3640,-3635,-3635,-3631,-3613,-3579,-3534,-3487,-3446,
+-3413,-3384,-3360,-3339,-3323,-3310,-3297,-3282,-3265,-3251,-3242,-3236,-3221,-3187,-3128,-3049,-2962,-2884,-2824,-2787,-2768,
+-2758,-2742,-2712,-2666,-2610,-2557,-2517,-2493,-2480,-2472,-2465,-2460,-2454,-2446,-2429,-2401,-2363,-2321,-2280,-2239,-2194,
+-2144,-2093,-2048,-2016,-1994,-1978,-1960,-1937,-1910,-1882,-1852,-1821,-1787,-1754,-1722,-1686,-1642,-1586,-1522,-1459,-1408,
+-1373,-1349,-1324,-1291,-1250,-1205,-1160,-1115,-1066,-1011,-947,-874,-790,-694,-587,-474,-362,-259,-168,-85,-7,
+69,146,223,298,370,440,510,583,662,745,826,900,964,1026,1093,1175,1271,1375,1478,1577,1670,
+1757,1834,1898,1954,2013,2088,2182,2282,2371,2436,2487,2543,2623,2722,2818,2884,2908,2904,2900,2914,2949,
+2991,3028,3060,3096,3147,3213,3285,3348,3398,3439,3481,3532,3591,3653,3714,3773,3834,3899,3965,4029,4086,
+4135,4182,4232,4291,4356,4421,4481,4534,4583,4634,4690,4752,4812,4871,4928,4987,5051,5116,5175,5223,5262,
+5301,5346,5400,5456,5505,5546,5583,5626,5678,5737,5797,5852,5902,5950,6000,6051,6099,6143,6183,6221,6263,
+6308,6357,6408,6457,6501,6536,6559,6569,6570,6569,6568,6569,6573,6577,6582,6588,6592,6593,6585,6568,6541,
+6508,6473,6438,6406,6378,6354,6331,6305,6270,6228,6184,6146,6121,6107,6097,6085,6072,6063,6066,6081,6100,
+6107,6090,6048,5991,5938,5906,5898,5904,5908,5894,5857,5806,5753,5707,5671,5637,5596,5549,5500,5460,5436,
+5426,5419,5400,5361,5298,5220,5140,5073,5026,4999,4983,4965,4939,4906,4871,4843,4824,4811,4798,4781,4762,
+4745,4734,4730,4731,4733,4731,4719,4697,4667,4635,4611,4605,4621,4658,4713,4776,4842,4899,4937,4950,4939,
+4910,4879,4853,4834,4818,4802,4787,4780,4784,4795,4808,4816,4792,4811,4835,4865,4901,4940,4980,5021,5064,
+5103,5129,5136,5126,5110,5100,5101,5104,5092,5056,5002,4946,4906,4889,4897,4925,4975,5049,5143,5237,5301,
+5304,5230,5091,4916,4746,4614,4535,4513,4536,4590,4658,4724,4778,4811,4820,4802,4756,4684,4593,4498,4421,
+4379,4383,4425,4488,4554,4610,4649,4674,4683,4678,4660,4636,4613,4597,4589,4583,4574,4561,4548,4536,4524,
+4511,4495,4479,4469,4465,4461,4447,4419,4380,4339,4306,4283,4268,4257,4248,4244,4247,4253,4256,4252,4244,
+4233,4222,4206,4181,4143,4092,4034,3971,3908,3844,3776,3696,3597,3476,3340,3213,3122,3084,3093,3125,3148,
+3147,3124,3094,3067,3040,3003,2950,2886,2821,2762,2708,2651,2588,2525,2471,2433,2408,2390,2371,2348,2317,
+2277,2223,2159,2090,2026,1970,1915,1850,1769,1675,1580,1496,1426,1367,1317,1278,1255,1249,1252,1252,1241,
+1219,1192,1166,1141,1111,1073,1029,986,948,914,880,843,803,762,717,668,610,545,476,410,349,
+290,229,166,99,32,-32,-95,-155,-212,-269,-325,-378,-429,-474,-514,-553,-596,-647,-707,-772,-837,
+-898,-952,-1002,-1048,-1093,-1140,-1193,-1253,-1317,-1379,-1436,-1485,-1529,-1571,-1615,-1659,-1703,-1748,-1799,-1857,-1919,
+-1980,-2033,-2078,-2122,-2171,-2228,-2290,-2350,-2405,-2455,-2503,-2550,-2594,-2631,-2662,-2689,-2718,-2751,-2790,-2829,-2865,
+-2898,-2929,-2959,-2987,-3011,-3031,-3049,-3073,-3107,-3156,-3214,-3274,-3327,-3370,-3407,-3443,-3482,-3523,-3565,-3603,-3639,
+-3672,-3703,-3730,-3752,-3772,-3795,-3824,-3858,-3890,-3910,-3916,-3917,-3932,-3972,-4041,-4123,-4196,-4239,-4249,-4236,-4218,
+-4207,-4208,-4217,-4229,-4240,-4254,-4275,-4304,-4337,-4365,-4380,-4383,-4379,-4380,-4397,-4437,-4497,-4567,-4637,-4698,-4747,
+-4789,-4830,-4875,-4925,-4978,-5028,-5069,-5096,-5108,-5107,-5097,-5084,-5073,-5068,-5067,-5061,-5040,-4995,-4929,-4857,-4802,
+-4790,-4834,-4922,-5022,-5094,-5107,-5062,-4987,-4921,-4898,-4925,-4996,-5096,-5219,-5365,-5536,-5718,-5888,-6024,-6118,-6178,
+-6220,-6254,-6276,-6277,-6256,-6222,-6188,-6157,-6120,-6062,-5976,-5872,-5768,-5677,-5600,-5528,-5459,-5399,-5363,-5356,-5368,
+-5375,-5359,-5319,-5267,-5220,-5178,-5132,-5072,-5004,-4951,-4939,-4977,-5047,-5115,-5148,-5137,-5094,-5044,-5003,-4977,-4964,
+-4957,-4953,-4951,-4951,-4951,-4950,-4952,-4961,-4977,-4993,-4997,-4983,-4952,-4911,-4870,-4830,-4786,-4735,-4681,-4631,-4596,
+-4579,-4571,-4562,-4548,-4528,-4508,-4492,-4474,-4451,-4415,-4370,-4319,-4269,-4221,-4174,-4126,-4077,-4029,-3983,-3938,-3893,
+-3846,-3794,-3736,-3672,-3607,-3545,-3488,-3436,-3383,-3323,-3251,-3167,-3077,-2988,-2905,-2828,-2754,-2680,-2606,-2531,-2453,
+-2372,-2288,-2203,-2118,-2032,-1945,-1857,-1774,-1702,-1646,-1603,-1562,-1508,-1434,-1341,-1243,-1151,-1069,-994,-919,-842,
+-762,-680,-592,-495,-387,-274,-169,-82,-16,34,79,125,171,215,255,292,329,369,412,456,499,
+541,583,630,683,746,817,891,961,1024,1080,1132,1184,1238,1292,1344,1395,1449,1511,1579,1647,1708,
+1763,1817,1876,1942,2007,2061,2097,2117,2127,2136,2148,2164,2180,2193,2201,2206,2207,2208,2214,2226,2250,
+2287,2339,2406,2485,2568,2648,2721,2788,2854,2917,2968,2990,2969,2905,2813,2717,2636,2578,2537,2506,2483,
+2474,2484,2512,2551,2591,2626,2654,2674,2686,2687,2682,2675,2672,2674,2676,2673,2659,2636,2608,2577,2542,
+2502,2462,2426,2402,2388,2381,2372,2359,2344,2333,2329,2330,2333,2338,2352,2380,2422,2471,2512,2535,2540,
+2536,2533,2533,2521,2476,2384,2244,2069,1872,1657,1417,1146,851,559,314,153,96,142,269,447,647,
+840,998,1108,1167,1191,1202,1213,1225,1226,1204,1160,1108,1062,1029,1004,974,930,876,820,771,728,
+686,637,580,523,474,434,400,363,317,264,211,165,124,85,40,-12,-66,-110,-140,-157,-172,
+-194,-223,-253,-276,-291,-306,-331,-371,-426,-491,-566,-648,-729,-789,-798,-737,-615,-476,-383,-381,-474,
+-623,-766,-854,-875,-848,-804,-763,-727,-691,-658,-637,-640,-664,-694,-709,-701,-676,-653,-644,-651,-664,
+-671,-671,-666,-661,-654,-642,-620,-593,-568,-553,-550,-556,-566,-575,-580,-579,-571,-556,-537,-520,-505,
+-495,-486,-475,-462,-448,-434,-420,-407,-393,-380,-370,-362,-357,-350,-341,-334,-329,-327,-325,-319,-308,
+-293,-277,-264,-254,-246,-239,-233,-228,-224,-221,-215,-204,-189,-172,-157,-148,-144,-143,-142,-140,-136,
+-129,-120,-110,-100,-92,-88,-89,-94,-100,-105,-107,-106,-104,-103,-104,-106,-108,-109,-109,-106,-103,
+-99,-95,-95,-97,-103,-112,-124,-137,-150,-165,-181,-197,-215,-233,-252,-271,-292,-313,-335,-357,-378,
+-399,-418,-436,-453,-468,-484,-500,-519,-539,-559,-579,-598,-619,-641,-664,-686,-706,-727,-749,-776,-805,
+-834,-862,-886,-910,-935,-961,-988,-1016,-1043,-1072,-1101,-1132,-1161,-1187,-1208,-1228,-1249,-1273,-1300,-1326,-1349,
+-1368,-1385,-1402,-1420,-1441,-1466,-1492,-1521,-1551,-1581,-1610,-1637,-1664,-1690,-1718,-1748,-1780,-1813,-1846,-1879,-1911,
+-1944,-1977,-2008,-2037,-2064,-2090,-2117,-2145,-2174,-2202,-2231,-2259,-2288,-2317,-2345,-2371,-2395,-2420,-2444,-2466,-2484,
+-2499,-2512,-2528,-2548,-2570,-2589,-2602,-2610,-2616,-2622,-2627,-2630,-2630,-2629,-2629,-2631,-2633,-2632,-2625,-2616,-2605,
+-2596,-2585,-2571,-2555,-2538,-2523,-2512,-2506,-2505,-2510,-2518,-2525,-2528,-2527,-2527,-2534,-2549,-2564,-2570,-2563,-2553,
+-2555,-2575,-2607,-2632,-2638,-2628,-2615,-2604,-2579,-2513,-2392,-2235,-2095,-2021,-2028,-2085,-2136,-2141,-2098,-2039,-2000,
+-1991,-2002,-2012,-2012,-2012,-2022,-2044,-2065,-2069,-2051,-2015,-1967,-1910,-1841,-1764,-1690,-1635,-1607,-1601,-1602,-1595,
+-1574,-1544,-1516,-1492,-1471,-1447,-1420,-1392,-1361,-1329,-1292,-1251,-1213,-1182,-1160,-1146,-1135,-1126,-1120,-1116,-1108,
+-1090,-1063,-1039,-1033,-1060,-1114,-1177,-1228,-1256,-1271,-1290,-1326,-1378,-1431,-1466,-1478,-1474,-1473,-1487,-1516,-1547,
+-1568,-1574,-1568,-1563,-1567,-1578,-1588,-1590,-1586,-1586,-1606,-1653,-1721,-1796,-1863,-1916,-1958,-1999,-2043,-2088,-2130,
+-2163,-2189,-2213,-2240,-2275,-2318,-2367,-2416,-2461,-2497,-2520,-2536,-2552,-2575,-2605,-2634,-2653,-2659,-2656,-2651,-2652,
+-2658,-2666,-2674,-2689,-2718,-2759,-2799,-2820,-2813,-2786,-2762,-2766,-2806,-2872,-2942,-2996,-3028,-3044,-3056,-3071,-3093,
+-3120,-3154,-3195,-3242,-3294,-3346,-3396,-3443,-3488,-3530,-3566,-3593,-3610,-3617,-3615,-3606,-3589,-3568,-3550,-3543,-3554,
+-3586,-3634,-3688,-3736,-3771,-3787,-3789,-3786,-3785,-3792,-3802,-3810,-3811,-3804,-3791,-3775,-3754,-3727,-3695,-3663,-3636,
+-3617,-3605,-3596,-3588,-3583,-3585,-3591,-3595,-3587,-3563,-3525,-3483,-3445,-3412,-3382,-3352,-3323,-3296,-3273,-3252,-3234,
+-3220,-3211,-3207,-3199,-3174,-3124,-3050,-2964,-2883,-2819,-2776,-2750,-2734,-2719,-2700,-2671,-2631,-2583,-2537,-2501,-2479,
+-2470,-2467,-2466,-2465,-2464,-2462,-2452,-2431,-2397,-2353,-2303,-2251,-2198,-2144,-2094,-2052,-2022,-2002,-1986,-1967,-1944,
+-1916,-1883,-1848,-1809,-1769,-1731,-1698,-1669,-1640,-1605,-1563,-1518,-1475,-1435,-1397,-1357,-1311,-1260,-1207,-1153,-1099,
+-1044,-991,-939,-883,-818,-739,-643,-536,-426,-319,-220,-129,-44,35,112,191,272,356,439,518,591,
+661,731,801,867,929,990,1060,1146,1249,1359,1468,1567,1658,1744,1826,1902,1972,2040,2113,2190,2266,
+2330,2378,2421,2477,2556,2648,2730,2782,2798,2797,2801,2828,2874,2927,2976,3021,3069,3127,3190,3253,3308,
+3356,3403,3456,3513,3571,3627,3679,3731,3787,3848,3912,3977,4039,4097,4151,4206,4265,4328,4394,4458,4517,
+4571,4624,4679,4739,4800,4860,4917,4974,5033,5094,5151,5201,5244,5285,5333,5388,5447,5501,5549,5591,5635,
+5686,5744,5802,5857,5907,5954,6002,6050,6096,6138,6179,6219,6261,6307,6357,6409,6460,6503,6534,6549,6551,
+6545,6539,6539,6544,6552,6560,6567,6573,6579,6580,6576,6563,6542,6513,6479,6443,6408,6379,6360,6347,6334,
+6311,6275,6230,6185,6148,6121,6100,6080,6060,6044,6038,6042,6048,6045,6025,5989,5947,5914,5898,5898,5902,
+5897,5871,5825,5770,5717,5676,5646,5619,5586,5545,5498,5452,5414,5383,5356,5327,5290,5245,5195,5150,5116,
+5098,5093,5090,5078,5050,5008,4958,4912,4875,4848,4827,4809,4791,4771,4749,4727,4710,4701,4701,4707,4708,
+4698,4679,4657,4641,4638,4650,4675,4717,4774,4840,4903,4945,4955,4935,4898,4857,4823,4795,4772,4753,4743,
+4745,4757,4774,4792,4754,4786,4824,4865,4906,4945,4985,5032,5086,5141,5184,5205,5207,5199,5195,5196,5188,
+5159,5105,5038,4976,4937,4929,4948,4993,5061,5149,5238,5300,5301,5221,5067,4868,4666,4496,4375,4303,4268,
+4263,4283,4327,4395,4476,4554,4610,4628,4603,4543,4467,4398,4355,4346,4370,4415,4467,4517,4560,4598,4627,
+4648,4655,4649,4634,4616,4602,4592,4587,4583,4580,4578,4574,4563,4542,4516,4491,4476,4473,4474,4465,4438,
+4396,4348,4307,4279,4264,4259,4263,4277,4296,4314,4319,4307,4279,4241,4200,4158,4115,4069,4019,3964,3903,
+3838,3769,3695,3614,3520,3411,3293,3186,3115,3094,3116,3154,3179,3174,3147,3115,3090,3071,3046,3004,2947,
+2884,2821,2761,2699,2636,2580,2536,2507,2487,2465,2439,2409,2379,2345,2302,2244,2172,2092,2012,1928,1836,
+1733,1624,1525,1444,1385,1338,1297,1261,1234,1220,1218,1219,1217,1210,1202,1194,1185,1167,1138,1099,1058,
+1021,989,960,931,898,857,805,741,667,587,507,432,360,289,217,144,73,5,-59,-121,-181,
+-236,-287,-334,-381,-427,-472,-516,-558,-605,-660,-725,-795,-861,-919,-967,-1008,-1046,-1087,-1133,-1185,-1242,
+-1301,-1360,-1415,-1467,-1517,-1569,-1622,-1675,-1727,-1779,-1835,-1895,-1957,-2015,-2064,-2105,-2145,-2191,-2245,-2302,-2356,
+-2406,-2452,-2500,-2551,-2602,-2648,-2687,-2719,-2748,-2778,-2810,-2844,-2876,-2905,-2933,-2960,-2987,-3012,-3036,-3060,-3088,
+-3124,-3171,-3227,-3285,-3339,-3385,-3423,-3458,-3494,-3534,-3576,-3617,-3654,-3688,-3715,-3736,-3752,-3769,-3793,-3827,-3869,
+-3909,-3936,-3946,-3945,-3950,-3976,-4030,-4104,-4183,-4247,-4285,-4295,-4285,-4268,-4253,-4246,-4247,-4255,-4270,-4291,-4317,
+-4347,-4375,-4394,-4402,-4403,-4407,-4428,-4470,-4532,-4601,-4666,-4719,-4761,-4799,-4840,-4885,-4932,-4979,-5022,-5060,-5089,
+-5105,-5105,-5090,-5062,-5026,-4983,-4928,-4858,-4772,-4675,-4585,-4521,-4502,-4540,-4635,-4771,-4915,-5029,-5083,-5073,-5023,
+-4973,-4962,-5003,-5091,-5211,-5353,-5514,-5694,-5882,-6054,-6188,-6277,-6335,-6379,-6419,-6446,-6446,-6414,-6362,-6308,-6261,
+-6213,-6145,-6049,-5937,-5833,-5753,-5692,-5633,-5560,-5478,-5407,-5370,-5371,-5392,-5408,-5403,-5377,-5338,-5293,-5244,-5190,
+-5138,-5103,-5097,-5119,-5153,-5177,-5178,-5156,-5126,-5098,-5075,-5051,-5019,-4980,-4940,-4907,-4884,-4869,-4863,-4868,-4889,
+-4923,-4963,-4994,-5007,-5001,-4984,-4962,-4937,-4904,-4860,-4807,-4756,-4715,-4688,-4669,-4649,-4624,-4595,-4566,-4541,-4515,
+-4483,-4440,-4390,-4337,-4288,-4243,-4199,-4154,-4106,-4059,-4015,-3974,-3932,-3885,-3829,-3765,-3695,-3627,-3566,-3513,-3463,
+-3409,-3346,-3271,-3186,-3097,-3010,-2926,-2845,-2766,-2688,-2609,-2531,-2451,-2369,-2286,-2201,-2115,-2026,-1932,-1837,-1746,
+-1670,-1613,-1573,-1537,-1488,-1416,-1324,-1220,-1118,-1026,-942,-865,-791,-715,-635,-546,-448,-343,-237,-141,-61,
+1,50,91,130,168,208,249,292,335,377,417,456,498,543,594,649,708,774,845,919,989,
+1051,1106,1158,1212,1268,1324,1378,1433,1492,1558,1627,1689,1743,1792,1850,1922,2003,2078,2130,2157,2165,
+2171,2183,2200,2215,2223,2225,2224,2225,2228,2233,2242,2258,2286,2329,2385,2453,2528,2609,2693,2776,2857,
+2930,2988,3018,3007,2951,2858,2749,2650,2576,2532,2508,2497,2495,2505,2529,2566,2609,2653,2692,2723,2743,
+2746,2735,2717,2704,2705,2717,2729,2728,2710,2680,2652,2632,2616,2595,2563,2522,2481,2448,2426,2413,2403,
+2394,2386,2385,2393,2410,2435,2469,2509,2555,2600,2636,2655,2653,2627,2576,2497,2382,2222,2015,1770,1503,
+1232,968,710,459,224,31,-84,-96,0,184,413,645,845,995,1090,1141,1163,1175,1188,1202,1207,
+1191,1150,1097,1046,1008,982,954,916,865,812,764,723,684,638,583,524,469,423,384,349,311,
+269,226,182,140,96,52,4,-46,-98,-147,-188,-218,-239,-254,-270,-288,-307,-323,-338,-360,-397,
+-450,-514,-582,-648,-715,-782,-840,-866,-836,-746,-623,-521,-491,-552,-677,-807,-891,-908,-870,-812,-758,
+-717,-690,-676,-679,-702,-737,-767,-774,-754,-720,-691,-680,-686,-698,-705,-704,-698,-689,-675,-656,-631,
+-607,-591,-587,-595,-608,-619,-625,-622,-611,-595,-578,-563,-552,-544,-536,-526,-512,-496,-481,-468,-457,
+-447,-437,-428,-421,-415,-409,-402,-394,-385,-378,-371,-364,-353,-341,-328,-318,-310,-305,-299,-291,-283,
+-275,-269,-263,-256,-245,-230,-216,-206,-202,-202,-202,-198,-191,-182,-174,-169,-165,-161,-156,-151,-148,
+-148,-151,-153,-153,-153,-153,-155,-159,-164,-168,-170,-170,-169,-167,-165,-166,-169,-175,-185,-198,-212,
+-225,-239,-250,-262,-275,-289,-307,-327,-349,-371,-391,-411,-432,-453,-474,-495,-514,-532,-549,-568,-587,
+-607,-627,-645,-663,-682,-704,-726,-748,-770,-791,-813,-838,-864,-889,-914,-938,-964,-992,-1021,-1050,-1078,
+-1105,-1132,-1162,-1192,-1221,-1246,-1268,-1288,-1310,-1334,-1359,-1384,-1405,-1424,-1440,-1456,-1474,-1496,-1522,-1551,-1580,
+-1609,-1635,-1659,-1683,-1707,-1733,-1761,-1792,-1825,-1858,-1891,-1922,-1953,-1985,-2018,-2051,-2080,-2107,-2131,-2156,-2183,
+-2213,-2245,-2275,-2304,-2332,-2360,-2387,-2414,-2439,-2464,-2489,-2512,-2532,-2547,-2559,-2573,-2591,-2611,-2629,-2643,-2653,
+-2662,-2671,-2680,-2686,-2688,-2686,-2684,-2684,-2684,-2683,-2679,-2672,-2664,-2653,-2639,-2620,-2599,-2579,-2564,-2554,-2549,
+-2549,-2553,-2561,-2568,-2570,-2566,-2563,-2567,-2581,-2598,-2606,-2599,-2588,-2587,-2607,-2639,-2667,-2676,-2668,-2653,-2636,
+-2600,-2519,-2384,-2221,-2084,-2024,-2049,-2120,-2175,-2173,-2120,-2055,-2015,-2010,-2020,-2023,-2012,-2000,-1999,-2009,-2013,
+-1996,-1955,-1903,-1853,-1808,-1760,-1703,-1641,-1587,-1555,-1545,-1546,-1545,-1535,-1518,-1497,-1474,-1449,-1422,-1395,-1371,
+-1349,-1322,-1288,-1247,-1209,-1179,-1157,-1135,-1107,-1072,-1041,-1021,-1011,-999,-976,-944,-924,-935,-986,-1064,-1143,
+-1200,-1228,-1244,-1268,-1314,-1377,-1438,-1477,-1489,-1483,-1477,-1483,-1501,-1521,-1532,-1531,-1526,-1528,-1544,-1568,-1590,
+-1604,-1614,-1631,-1669,-1729,-1801,-1869,-1926,-1972,-2015,-2061,-2109,-2150,-2179,-2198,-2215,-2240,-2278,-2325,-2376,-2423,
+-2461,-2489,-2508,-2523,-2539,-2561,-2587,-2615,-2636,-2648,-2651,-2651,-2654,-2661,-2672,-2689,-2715,-2751,-2791,-2822,-2831,
+-2819,-2802,-2805,-2845,-2917,-2999,-3061,-3089,-3087,-3073,-3069,-3085,-3121,-3169,-3223,-3281,-3338,-3395,-3449,-3499,-3545,
+-3589,-3627,-3658,-3679,-3689,-3689,-3678,-3657,-3626,-3591,-3560,-3545,-3551,-3579,-3624,-3673,-3717,-3747,-3762,-3766,-3765,
+-3768,-3778,-3792,-3803,-3805,-3797,-3783,-3765,-3743,-3713,-3676,-3637,-3603,-3580,-3567,-3559,-3552,-3546,-3544,-3546,-3547,
+-3540,-3522,-3495,-3467,-3441,-3417,-3392,-3363,-3328,-3290,-3253,-3217,-3187,-3167,-3159,-3157,-3149,-3118,-3059,-2981,-2901,
+-2838,-2797,-2771,-2746,-2715,-2680,-2645,-2616,-2590,-2565,-2539,-2516,-2499,-2489,-2483,-2478,-2471,-2464,-2459,-2451,-2437,
+-2411,-2372,-2323,-2270,-2217,-2168,-2126,-2093,-2068,-2047,-2025,-1999,-1969,-1935,-1898,-1859,-1816,-1772,-1731,-1698,-1674,
+-1656,-1637,-1613,-1581,-1542,-1499,-1451,-1399,-1344,-1287,-1229,-1171,-1114,-1061,-1012,-967,-917,-856,-778,-683,-578,
+-472,-368,-269,-175,-89,-8,69,151,244,346,445,530,595,646,695,752,818,891,970,1057,1156,
+1264,1374,1475,1565,1647,1729,1813,1895,1970,2036,2099,2160,2217,2267,2309,2350,2405,2478,2561,2636,2687,
+2713,2729,2753,2793,2845,2900,2952,3001,3052,3108,3164,3216,3264,3312,3366,3425,3486,3544,3597,3649,3700,
+3754,3809,3867,3929,3996,4064,4130,4190,4247,4306,4370,4439,4504,4562,4613,4664,4720,4782,4847,4909,4964,
+5016,5066,5116,5164,5212,5261,5315,5374,5436,5493,5545,5592,5639,5691,5748,5806,5862,5914,5962,6009,6054,
+6096,6137,6176,6217,6260,6308,6359,6411,6460,6500,6525,6533,6528,6518,6511,6511,6519,6530,6541,6550,6557,
+6559,6557,6548,6535,6517,6496,6470,6438,6404,6374,6352,6341,6334,6321,6296,6259,6216,6176,6141,6111,6083,
+6057,6035,6020,6011,6004,5991,5971,5945,5922,5907,5902,5902,5898,5884,5856,5820,5781,5743,5709,5674,5636,
+5595,5554,5517,5485,5457,5427,5392,5351,5306,5261,5224,5198,5189,5196,5212,5224,5218,5185,5125,5050,4974,
+4910,4863,4835,4821,4812,4798,4773,4737,4699,4672,4664,4672,4686,4693,4690,4680,4669,4658,4649,4643,4651,
+4683,4741,4813,4878,4912,4911,4882,4843,4808,4779,4754,4732,4716,4709,4714,4730,4754,4724,4762,4809,4858,
+4902,4941,4979,5025,5080,5140,5192,5229,5250,5264,5275,5278,5260,5212,5143,5072,5023,5006,5020,5057,5111,
+5179,5252,5306,5306,5224,5058,4837,4607,4415,4282,4202,4152,4112,4071,4037,4028,4059,4131,4230,4327,4398,
+4425,4412,4377,4344,4331,4343,4374,4413,4451,4482,4509,4536,4564,4591,4615,4631,4636,4633,4625,4616,4609,
+4604,4604,4605,4603,4594,4575,4549,4521,4501,4490,4482,4469,4443,4404,4359,4318,4288,4272,4271,4284,4307,
+4332,4349,4346,4317,4265,4195,4117,4039,3967,3905,3855,3812,3769,3718,3656,3586,3511,3431,3346,3259,3185,
+3141,3139,3171,3212,3235,3227,3195,3157,3126,3106,3085,3055,3011,2960,2903,2844,2783,2723,2673,2637,2611,
+2588,2558,2524,2493,2472,2455,2428,2379,2303,2207,2102,1994,1883,1768,1659,1567,1502,1462,1434,1403,1365,
+1324,1287,1260,1239,1222,1210,1204,1208,1217,1223,1217,1198,1167,1131,1096,1065,1037,1006,964,907,831,
+742,648,557,471,387,302,215,132,57,-9,-72,-136,-201,-262,-314,-356,-395,-435,-479,-528,-581,
+-638,-702,-772,-843,-909,-964,-1010,-1048,-1086,-1125,-1168,-1212,-1260,-1309,-1359,-1410,-1461,-1513,-1567,-1622,-1678,
+-1733,-1790,-1848,-1907,-1964,-2014,-2058,-2098,-2140,-2187,-2240,-2292,-2339,-2382,-2424,-2470,-2522,-2578,-2633,-2682,-2723,
+-2756,-2786,-2814,-2842,-2872,-2900,-2928,-2954,-2981,-3010,-3041,-3074,-3107,-3143,-3183,-3229,-3283,-3338,-3390,-3435,-3474,
+-3509,-3544,-3582,-3622,-3660,-3695,-3721,-3741,-3755,-3770,-3792,-3824,-3863,-3901,-3930,-3947,-3954,-3961,-3981,-4018,-4074,
+-4141,-4206,-4258,-4290,-4301,-4296,-4286,-4279,-4279,-4288,-4301,-4317,-4337,-4361,-4387,-4411,-4429,-4443,-4459,-4489,-4535,
+-4593,-4650,-4697,-4730,-4759,-4794,-4838,-4887,-4933,-4971,-5000,-5026,-5047,-5057,-5047,-5013,-4956,-4879,-4784,-4670,-4539,
+-4402,-4285,-4215,-4212,-4277,-4401,-4566,-4753,-4941,-5104,-5218,-5269,-5270,-5252,-5254,-5296,-5380,-5490,-5615,-5754,-5907,
+-6068,-6220,-6340,-6420,-6469,-6506,-6543,-6569,-6570,-6538,-6479,-6415,-6355,-6294,-6216,-6115,-6006,-5913,-5852,-5815,-5776,
+-5712,-5624,-5535,-5477,-5464,-5485,-5516,-5532,-5524,-5496,-5457,-5417,-5382,-5357,-5345,-5343,-5339,-5321,-5285,-5239,-5199,
+-5178,-5175,-5172,-5151,-5104,-5037,-4968,-4911,-4869,-4840,-4821,-4815,-4827,-4857,-4898,-4936,-4963,-4975,-4979,-4977,-4968,
+-4946,-4909,-4859,-4807,-4766,-4737,-4719,-4701,-4680,-4654,-4625,-4595,-4562,-4521,-4473,-4420,-4368,-4320,-4275,-4231,-4184,
+-4134,-4085,-4039,-3996,-3953,-3904,-3845,-3777,-3702,-3630,-3564,-3507,-3454,-3400,-3340,-3271,-3195,-3115,-3033,-2950,-2868,
+-2786,-2706,-2626,-2546,-2464,-2379,-2292,-2205,-2115,-2022,-1923,-1821,-1723,-1639,-1575,-1527,-1486,-1436,-1367,-1279,-1178,
+-1076,-981,-896,-818,-743,-663,-576,-482,-385,-291,-205,-128,-61,-2,47,89,124,159,198,245,298,
+351,395,431,463,501,548,603,664,728,795,867,941,1012,1075,1132,1188,1247,1309,1371,1430,1489,
+1554,1623,1687,1736,1771,1805,1857,1936,2030,2116,2173,2199,2208,2220,2244,2270,2285,2283,2270,2259,2257,
+2264,2276,2291,2311,2342,2385,2437,2496,2563,2640,2730,2827,2920,2995,3037,3036,2986,2897,2787,2680,2598,
+2548,2527,2524,2530,2542,2564,2596,2634,2674,2714,2753,2786,2808,2810,2793,2767,2751,2754,2774,2792,2791,
+2766,2729,2700,2687,2685,2678,2650,2601,2543,2494,2465,2456,2460,2466,2471,2477,2490,2517,2558,2608,2657,
+2694,2713,2711,2684,2628,2535,2400,2220,1995,1728,1429,1109,787,485,224,17,-129,-211,-222,-158,-18,
+184,419,651,848,993,1084,1132,1154,1163,1171,1178,1179,1166,1133,1086,1035,990,954,921,882,834,
+782,736,700,667,629,581,524,469,422,381,342,302,261,224,190,155,113,63,9,-39,-83,
+-125,-172,-221,-266,-296,-311,-318,-326,-341,-359,-377,-397,-427,-475,-537,-601,-657,-713,-783,-872,-957,
+-987,-920,-759,-568,-441,-445,-578,-769,-924,-984,-952,-875,-805,-763,-743,-730,-723,-732,-762,-803,-829,
+-823,-787,-744,-716,-712,-726,-739,-741,-732,-718,-701,-683,-663,-644,-633,-631,-640,-652,-661,-662,-655,
+-642,-627,-614,-603,-597,-593,-587,-576,-559,-540,-523,-513,-507,-505,-502,-496,-488,-478,-468,-458,-448,
+-437,-427,-417,-408,-398,-387,-373,-361,-352,-347,-345,-342,-337,-330,-322,-315,-310,-302,-293,-281,-272,
+-266,-263,-259,-251,-240,-229,-222,-222,-225,-226,-223,-216,-208,-202,-200,-200,-201,-202,-205,-210,-217,
+-225,-233,-238,-241,-241,-242,-242,-243,-246,-251,-259,-269,-283,-297,-311,-322,-331,-339,-349,-364,-383,
+-405,-427,-447,-464,-482,-502,-523,-545,-565,-584,-603,-623,-645,-668,-689,-708,-727,-746,-767,-789,-811,
+-833,-855,-877,-901,-925,-947,-969,-992,-1018,-1047,-1077,-1106,-1134,-1160,-1188,-1217,-1247,-1275,-1301,-1326,-1349,
+-1373,-1396,-1419,-1440,-1460,-1478,-1496,-1514,-1533,-1556,-1582,-1610,-1639,-1666,-1690,-1711,-1732,-1755,-1781,-1810,-1841,
+-1874,-1906,-1937,-1965,-1993,-2023,-2054,-2087,-2117,-2144,-2170,-2196,-2226,-2259,-2291,-2320,-2346,-2371,-2397,-2424,-2450,
+-2476,-2501,-2525,-2549,-2571,-2588,-2602,-2616,-2632,-2650,-2667,-2680,-2689,-2698,-2710,-2723,-2734,-2741,-2742,-2740,-2737,
+-2733,-2731,-2729,-2727,-2724,-2717,-2701,-2677,-2649,-2624,-2605,-2594,-2588,-2586,-2589,-2597,-2608,-2615,-2614,-2607,-2605,
+-2611,-2623,-2631,-2629,-2621,-2624,-2644,-2678,-2708,-2719,-2710,-2692,-2668,-2625,-2537,-2398,-2236,-2105,-2053,-2084,-2154,
+-2199,-2183,-2117,-2045,-2006,-2004,-2015,-2014,-1993,-1970,-1958,-1955,-1945,-1908,-1848,-1784,-1735,-1706,-1683,-1652,-1608,
+-1562,-1528,-1512,-1511,-1513,-1513,-1507,-1494,-1473,-1444,-1413,-1385,-1363,-1342,-1314,-1275,-1229,-1188,-1158,-1136,-1107,
+-1062,-1003,-950,-917,-906,-901,-883,-847,-811,-805,-852,-948,-1063,-1157,-1204,-1209,-1198,-1205,-1249,-1325,-1408,
+-1472,-1501,-1500,-1488,-1479,-1481,-1487,-1489,-1488,-1491,-1506,-1537,-1575,-1609,-1636,-1660,-1692,-1741,-1804,-1873,-1937,
+-1993,-2042,-2089,-2134,-2170,-2195,-2212,-2229,-2256,-2294,-2340,-2385,-2421,-2448,-2466,-2482,-2498,-2517,-2539,-2566,-2595,
+-2623,-2645,-2660,-2669,-2676,-2685,-2698,-2717,-2741,-2769,-2792,-2806,-2809,-2808,-2820,-2859,-2926,-3007,-3077,-3117,-3123,
+-3108,-3096,-3105,-3139,-3195,-3263,-3333,-3398,-3455,-3502,-3541,-3576,-3611,-3648,-3682,-3711,-3728,-3734,-3729,-3711,-3679,
+-3637,-3590,-3551,-3531,-3536,-3563,-3603,-3646,-3685,-3715,-3733,-3739,-3740,-3742,-3749,-3762,-3774,-3778,-3772,-3759,-3740,
+-3720,-3696,-3667,-3636,-3608,-3587,-3573,-3563,-3554,-3544,-3534,-3525,-3514,-3500,-3482,-3462,-3445,-3433,-3420,-3402,-3374,
+-3336,-3288,-3235,-3180,-3131,-3098,-3085,-3086,-3084,-3060,-3006,-2935,-2868,-2824,-2801,-2784,-2754,-2706,-2651,-2607,-2583,
+-2577,-2575,-2568,-2553,-2537,-2524,-2513,-2501,-2483,-2464,-2446,-2431,-2417,-2398,-2370,-2331,-2286,-2241,-2202,-2173,-2152,
+-2136,-2119,-2095,-2064,-2028,-1989,-1950,-1909,-1866,-1822,-1781,-1749,-1728,-1715,-1703,-1685,-1657,-1619,-1572,-1519,-1462,
+-1402,-1341,-1279,-1220,-1163,-1110,-1061,-1012,-953,-879,-788,-686,-583,-486,-398,-315,-237,-163,-93,-19,68,
+175,297,417,512,576,617,654,706,780,870,971,1077,1187,1297,1400,1490,1567,1640,1717,1800,1880,
+1947,2000,2043,2088,2136,2186,2234,2283,2338,2407,2484,2558,2617,2660,2695,2732,2776,2823,2870,2916,2965,
+3017,3073,3127,3176,3224,3274,3330,3390,3449,3509,3571,3636,3701,3761,3812,3859,3911,3974,4046,4117,4179,
+4232,4288,4352,4426,4498,4558,4604,4646,4696,4760,4832,4902,4959,5004,5042,5083,5131,5186,5247,5310,5372,
+5431,5484,5533,5582,5633,5689,5748,5806,5860,5912,5961,6008,6053,6094,6133,6171,6212,6258,6309,6361,6412,
+6456,6490,6508,6511,6503,6492,6485,6486,6493,6504,6516,6526,6532,6532,6525,6511,6495,6481,6467,6451,6428,
+6398,6365,6337,6318,6306,6293,6273,6244,6211,6177,6145,6115,6083,6052,6023,5999,5980,5962,5943,5923,5907,
+5899,5899,5904,5906,5902,5889,5872,5854,5835,5811,5774,5722,5660,5600,5558,5539,5540,5545,5540,5513,5468,
+5411,5354,5307,5278,5270,5281,5302,5316,5305,5259,5180,5081,4980,4892,4828,4788,4770,4764,4758,4741,4708,
+4668,4635,4618,4617,4624,4627,4624,4618,4612,4605,4590,4568,4551,4558,4599,4667,4740,4792,4812,4807,4792,
+4777,4765,4751,4731,4709,4693,4689,4699,4724,4714,4749,4795,4847,4897,4939,4978,5020,5068,5121,5173,5219,
+5259,5295,5322,5326,5296,5233,5157,5096,5072,5084,5121,5167,5218,5272,5323,5342,5296,5160,4946,4696,4466,
+4301,4210,4172,4150,4113,4050,3972,3904,3875,3898,3972,4073,4169,4237,4266,4267,4260,4263,4283,4319,4360,
+4397,4425,4444,4460,4482,4514,4553,4594,4625,4643,4647,4643,4638,4634,4631,4628,4624,4617,4606,4589,4565,
+4537,4508,4481,4456,4430,4400,4366,4332,4304,4288,4288,4300,4316,4325,4318,4289,4241,4176,4099,4013,3925,
+3840,3769,3717,3681,3650,3612,3560,3497,3431,3369,3312,3263,3227,3212,3225,3260,3297,3315,3302,3263,3214,
+3171,3140,3118,3097,3071,3037,2993,2937,2873,2807,2750,2705,2670,2638,2607,2582,2573,2579,2586,2569,2511,
+2413,2290,2165,2049,1945,1849,1765,1699,1656,1631,1609,1577,1529,1471,1415,1366,1324,1289,1261,1246,1248,
+1267,1292,1312,1317,1304,1276,1240,1202,1166,1127,1079,1011,924,820,713,610,514,420,323,225,134,
+56,-8,-71,-139,-213,-286,-347,-392,-427,-463,-507,-562,-625,-691,-758,-825,-890,-950,-1003,-1052,-1096,
+-1139,-1178,-1214,-1247,-1280,-1316,-1359,-1407,-1460,-1513,-1566,-1617,-1667,-1717,-1770,-1823,-1877,-1928,-1974,-2017,-2061,
+-2108,-2159,-2210,-2258,-2301,-2341,-2381,-2427,-2479,-2537,-2598,-2656,-2706,-2747,-2779,-2806,-2833,-2863,-2894,-2923,-2949,
+-2976,-3007,-3045,-3086,-3125,-3159,-3192,-3231,-3279,-3335,-3392,-3442,-3482,-3514,-3543,-3576,-3613,-3652,-3691,-3724,-3749,
+-3768,-3784,-3799,-3818,-3840,-3865,-3893,-3920,-3948,-3976,-4003,-4032,-4064,-4102,-4146,-4194,-4237,-4270,-4291,-4304,-4314,
+-4326,-4337,-4346,-4354,-4363,-4378,-4400,-4426,-4450,-4472,-4498,-4535,-4586,-4642,-4692,-4727,-4749,-4770,-4802,-4846,-4893,
+-4930,-4951,-4960,-4965,-4967,-4956,-4922,-4859,-4770,-4665,-4546,-4413,-4267,-4126,-4026,-3999,-4062,-4202,-4390,-4598,-4812,
+-5029,-5237,-5413,-5531,-5584,-5594,-5601,-5640,-5718,-5821,-5928,-6033,-6140,-6257,-6377,-6481,-6555,-6600,-6629,-6653,-6673,
+-6674,-6648,-6598,-6539,-6478,-6412,-6331,-6231,-6127,-6040,-5986,-5957,-5930,-5882,-5813,-5740,-5689,-5675,-5692,-5720,-5740,
+-5741,-5724,-5696,-5668,-5647,-5636,-5630,-5614,-5571,-5493,-5391,-5293,-5228,-5212,-5231,-5255,-5255,-5218,-5154,-5085,-5027,
+-4983,-4950,-4921,-4897,-4884,-4886,-4898,-4913,-4924,-4930,-4933,-4936,-4934,-4920,-4890,-4846,-4799,-4760,-4733,-4719,-4712,
+-4706,-4697,-4681,-4657,-4622,-4576,-4523,-4468,-4414,-4364,-4315,-4267,-4216,-4163,-4110,-4059,-4009,-3959,-3906,-3846,-3777,
+-3701,-3624,-3551,-3486,-3429,-3376,-3321,-3260,-3193,-3119,-3039,-2956,-2873,-2792,-2714,-2637,-2559,-2476,-2389,-2299,-2208,
+-2116,-2019,-1917,-1812,-1709,-1617,-1541,-1479,-1424,-1366,-1296,-1212,-1118,-1021,-928,-843,-764,-683,-595,-499,-403,
+-314,-238,-177,-123,-70,-15,37,82,120,154,193,245,304,361,408,444,475,513,562,620,682,
+745,812,885,961,1034,1100,1160,1222,1287,1355,1421,1484,1550,1622,1696,1755,1787,1795,1803,1839,1920,
+2029,2134,2208,2247,2269,2295,2331,2364,2376,2362,2334,2310,2301,2306,2319,2333,2353,2381,2419,2466,2521,
+2587,2668,2765,2868,2957,3015,3028,2992,2915,2813,2708,2621,2567,2546,2548,2561,2577,2598,2627,2663,2703,
+2741,2778,2815,2851,2876,2879,2859,2829,2809,2815,2841,2868,2872,2847,2804,2765,2746,2743,2738,2715,2669,
+2611,2560,2532,2531,2548,2570,2588,2601,2617,2646,2691,2744,2785,2796,2764,2686,2564,2402,2199,1952,1668,
+1359,1037,718,410,126,-116,-296,-392,-396,-312,-159,41,266,492,697,866,990,1071,1120,1147,1163,
+1170,1169,1159,1140,1110,1072,1028,984,940,897,850,798,746,701,666,639,609,568,517,465,421,
+385,351,310,263,218,183,157,128,87,31,-28,-79,-116,-149,-189,-239,-290,-327,-343,-346,-353,
+-372,-396,-416,-430,-449,-487,-547,-615,-673,-725,-788,-877,-974,-1018,-949,-756,-508,-328,-315,-480,-740,
+-965,-1068,-1043,-953,-869,-825,-806,-788,-764,-751,-769,-814,-856,-866,-836,-786,-749,-740,-754,-771,-776,
+-765,-746,-726,-709,-694,-683,-677,-680,-687,-695,-698,-693,-681,-667,-653,-643,-636,-633,-631,-627,-618,
+-602,-584,-569,-560,-559,-562,-563,-559,-549,-534,-519,-505,-493,-482,-471,-461,-452,-442,-430,-417,-404,
+-394,-390,-392,-396,-396,-392,-383,-373,-365,-360,-354,-346,-337,-329,-322,-314,-303,-290,-278,-270,-269,
+-273,-277,-277,-272,-264,-256,-251,-250,-250,-254,-260,-269,-279,-290,-300,-306,-310,-312,-313,-315,-317,
+-319,-323,-328,-336,-347,-361,-375,-387,-396,-403,-411,-423,-440,-461,-481,-500,-516,-532,-550,-571,-592,
+-612,-632,-651,-673,-697,-721,-745,-767,-788,-808,-829,-849,-869,-888,-909,-931,-955,-979,-1002,-1025,-1048,
+-1074,-1102,-1132,-1160,-1188,-1215,-1242,-1271,-1299,-1327,-1353,-1380,-1406,-1432,-1455,-1476,-1494,-1513,-1533,-1555,-1576,
+-1596,-1617,-1639,-1664,-1691,-1716,-1738,-1759,-1780,-1803,-1830,-1860,-1892,-1923,-1952,-1981,-2007,-2034,-2063,-2093,-2124,
+-2154,-2182,-2210,-2239,-2272,-2306,-2337,-2363,-2385,-2406,-2430,-2457,-2483,-2508,-2531,-2554,-2578,-2600,-2618,-2633,-2647,
+-2664,-2682,-2700,-2714,-2723,-2732,-2743,-2758,-2773,-2784,-2789,-2788,-2784,-2778,-2773,-2771,-2773,-2777,-2775,-2763,-2738,
+-2705,-2674,-2652,-2638,-2630,-2624,-2623,-2630,-2643,-2655,-2657,-2651,-2644,-2644,-2651,-2657,-2656,-2651,-2656,-2678,-2716,
+-2749,-2763,-2752,-2726,-2690,-2636,-2544,-2408,-2256,-2136,-2091,-2122,-2183,-2215,-2186,-2112,-2038,-2002,-2004,-2016,-2009,
+-1979,-1945,-1925,-1916,-1899,-1856,-1788,-1717,-1668,-1646,-1639,-1630,-1608,-1577,-1547,-1528,-1518,-1514,-1510,-1502,-1487,
+-1464,-1433,-1401,-1375,-1355,-1334,-1300,-1250,-1193,-1142,-1108,-1083,-1052,-1003,-942,-886,-855,-851,-855,-844,-808,
+-764,-748,-792,-902,-1050,-1182,-1253,-1247,-1186,-1119,-1097,-1145,-1249,-1369,-1464,-1508,-1506,-1483,-1463,-1456,-1458,
+-1462,-1465,-1475,-1502,-1545,-1596,-1643,-1681,-1715,-1756,-1812,-1880,-1952,-2019,-2076,-2122,-2160,-2190,-2213,-2233,-2254,
+-2282,-2318,-2359,-2395,-2423,-2441,-2453,-2464,-2477,-2494,-2514,-2539,-2570,-2605,-2639,-2669,-2691,-2705,-2717,-2730,-2745,
+-2760,-2769,-2771,-2768,-2771,-2793,-2841,-2913,-2993,-3062,-3105,-3119,-3117,-3118,-3137,-3177,-3236,-3306,-3378,-3449,-3511,
+-3560,-3592,-3611,-3626,-3643,-3666,-3691,-3711,-3722,-3723,-3715,-3695,-3660,-3611,-3558,-3514,-3492,-3497,-3524,-3561,-3602,
+-3640,-3672,-3695,-3706,-3707,-3705,-3709,-3721,-3737,-3750,-3751,-3740,-3724,-3707,-3691,-3675,-3658,-3640,-3622,-3606,-3590,
+-3576,-3562,-3547,-3531,-3511,-3488,-3466,-3448,-3438,-3432,-3423,-3404,-3372,-3328,-3273,-3207,-3134,-3066,-3017,-2996,-3000,
+-3009,-2998,-2958,-2900,-2847,-2817,-2804,-2792,-2759,-2707,-2650,-2612,-2602,-2610,-2619,-2613,-2594,-2571,-2553,-2540,-2524,
+-2500,-2467,-2434,-2406,-2386,-2370,-2353,-2328,-2297,-2265,-2236,-2216,-2205,-2199,-2191,-2174,-2148,-2114,-2076,-2037,-1997,
+-1955,-1911,-1871,-1839,-1819,-1807,-1794,-1774,-1743,-1702,-1653,-1598,-1539,-1477,-1412,-1346,-1281,-1216,-1154,-1091,-1024,
+-947,-858,-760,-661,-573,-500,-441,-390,-342,-292,-237,-169,-76,47,190,332,446,523,572,616,676,
+760,862,974,1088,1201,1309,1404,1484,1554,1625,1704,1789,1865,1918,1946,1964,1990,2033,2090,2153,2215,
+2278,2348,2424,2501,2570,2625,2670,2709,2747,2785,2823,2865,2913,2968,3027,3084,3139,3192,3247,3303,3357,
+3412,3473,3546,3632,3719,3792,3844,3881,3919,3972,4038,4107,4168,4220,4274,4342,4420,4496,4556,4598,4633,
+4680,4745,4824,4899,4957,4996,5027,5064,5114,5179,5250,5319,5379,5427,5469,5512,5563,5622,5685,5747,5804,
+5855,5903,5952,6001,6047,6089,6126,6164,6207,6256,6309,6363,6412,6451,6476,6487,6486,6478,6468,6463,6463,
+6468,6475,6484,6493,6498,6496,6487,6471,6454,6441,6431,6422,6405,6381,6352,6325,6302,6283,6261,6234,6205,
+6176,6152,6131,6106,6076,6039,6001,5967,5938,5911,5887,5866,5854,5852,5863,5880,5895,5903,5901,5893,5881,
+5864,5836,5789,5722,5646,5581,5545,5546,5575,5610,5629,5617,5575,5514,5448,5387,5341,5313,5302,5299,5289,
+5255,5191,5103,5007,4917,4841,4779,4729,4691,4664,4646,4629,4607,4581,4555,4535,4521,4508,4492,4478,4473,
+4478,4485,4483,4466,4444,4439,4467,4526,4598,4661,4703,4726,4742,4756,4764,4761,4745,4721,4699,4689,4693,
+4714,4729,4753,4790,4836,4887,4936,4980,5020,5062,5105,5151,5200,5250,5297,5327,5325,5283,5213,5143,5101,
+5102,5135,5179,5220,5258,5301,5343,5358,5311,5179,4973,4739,4531,4385,4310,4284,4273,4247,4191,4107,4013,
+3934,3896,3907,3959,4027,4085,4115,4122,4118,4124,4150,4196,4253,4307,4347,4369,4382,4399,4431,4480,4537,
+4586,4617,4631,4637,4644,4652,4657,4656,4650,4644,4639,4631,4611,4575,4527,4479,4442,4416,4396,4372,4343,
+4316,4302,4303,4313,4316,4297,4252,4189,4121,4059,4004,3949,3886,3817,3749,3694,3654,3620,3582,3531,3470,
+3410,3361,3329,3311,3306,3313,3332,3359,3382,3388,3368,3324,3269,3216,3177,3154,3142,3132,3111,3071,3008,
+2928,2841,2760,2689,2631,2586,2560,2559,2585,2623,2644,2616,2525,2386,2231,2095,1996,1929,1882,1842,1808,
+1780,1753,1719,1670,1608,1545,1492,1454,1426,1403,1383,1371,1375,1395,1425,1452,1467,1465,1444,1411,1369,
+1322,1269,1204,1121,1015,895,771,655,550,450,348,245,147,63,-7,-73,-145,-226,-307,-376,-428,
+-465,-500,-546,-607,-677,-748,-813,-871,-923,-972,-1023,-1075,-1126,-1173,-1211,-1240,-1261,-1281,-1308,-1344,-1392,
+-1447,-1504,-1557,-1605,-1646,-1686,-1727,-1771,-1818,-1865,-1911,-1958,-2008,-2061,-2115,-2167,-2214,-2257,-2298,-2341,-2388,
+-2441,-2500,-2563,-2628,-2686,-2733,-2769,-2798,-2828,-2861,-2896,-2927,-2953,-2978,-3009,-3050,-3097,-3140,-3176,-3207,-3241,
+-3287,-3342,-3398,-3447,-3484,-3511,-3537,-3568,-3605,-3646,-3689,-3728,-3762,-3787,-3803,-3809,-3810,-3809,-3817,-3839,-3878,
+-3930,-3984,-4029,-4058,-4075,-4088,-4107,-4138,-4179,-4224,-4267,-4304,-4335,-4359,-4375,-4382,-4382,-4383,-4390,-4406,-4428,
+-4450,-4474,-4503,-4545,-4600,-4661,-4713,-4749,-4769,-4788,-4814,-4849,-4880,-4898,-4896,-4885,-4871,-4855,-4824,-4767,-4683,
+-4586,-4490,-4401,-4308,-4205,-4103,-4037,-4042,-4132,-4288,-4472,-4658,-4844,-5046,-5265,-5474,-5632,-5713,-5734,-5743,-5790,
+-5890,-6020,-6143,-6240,-6317,-6397,-6488,-6582,-6659,-6709,-6735,-6752,-6767,-6775,-6766,-6736,-6690,-6633,-6565,-6482,-6385,
+-6283,-6194,-6127,-6083,-6046,-6006,-5959,-5916,-5889,-5881,-5888,-5901,-5914,-5922,-5925,-5921,-5912,-5903,-5898,-5890,-5862,
+-5794,-5678,-5530,-5390,-5295,-5267,-5291,-5334,-5358,-5346,-5306,-5255,-5210,-5174,-5141,-5107,-5070,-5035,-5006,-4983,-4962,
+-4941,-4924,-4913,-4908,-4905,-4897,-4877,-4846,-4808,-4772,-4743,-4726,-4722,-4726,-4732,-4732,-4716,-4682,-4632,-4574,-4513,
+-4455,-4400,-4347,-4295,-4244,-4191,-4136,-4079,-4020,-3960,-3901,-3838,-3771,-3696,-3618,-3543,-3476,-3419,-3368,-3318,-3262,
+-3197,-3121,-3037,-2948,-2860,-2778,-2702,-2629,-2554,-2474,-2389,-2301,-2211,-2120,-2023,-1921,-1814,-1708,-1609,-1520,-1443,
+-1372,-1303,-1229,-1148,-1058,-966,-875,-788,-704,-618,-525,-427,-334,-254,-195,-151,-113,-70,-18,36,85,
+125,159,197,245,300,357,407,450,491,538,591,649,707,769,836,911,990,1065,1133,1196,1261,
+1330,1400,1465,1528,1598,1679,1761,1821,1842,1827,1811,1832,1913,2036,2162,2256,2311,2345,2380,2420,2452,
+2458,2433,2394,2361,2345,2346,2353,2364,2379,2402,2433,2474,2526,2594,2681,2780,2874,2942,2967,2948,2892,
+2813,2726,2649,2594,2568,2567,2582,2601,2620,2642,2673,2713,2756,2797,2837,2877,2915,2943,2949,2929,2896,
+2874,2880,2912,2949,2964,2944,2899,2849,2813,2794,2784,2769,2741,2703,2668,2647,2647,2666,2696,2726,2751,
+2774,2800,2832,2860,2861,2810,2690,2501,2255,1965,1644,1302,953,616,315,62,-138,-290,-390,-430,-396,
+-281,-97,128,365,584,767,907,1006,1071,1113,1140,1159,1169,1165,1148,1119,1085,1050,1018,984,945,
+898,844,785,727,678,641,613,588,556,513,465,421,387,359,328,285,232,182,144,119,95,
+57,4,-53,-103,-138,-168,-205,-254,-304,-340,-355,-359,-370,-394,-424,-445,-451,-456,-484,-542,-617,
+-685,-737,-791,-865,-951,-993,-926,-729,-468,-271,-253,-436,-731,-997,-1127,-1110,-1016,-925,-878,-859,-836,
+-799,-770,-778,-822,-874,-896,-875,-829,-788,-774,-783,-797,-801,-792,-774,-757,-743,-733,-726,-725,-729,
+-736,-739,-735,-724,-709,-695,-683,-674,-669,-665,-663,-660,-654,-644,-632,-621,-614,-612,-613,-613,-608,
+-596,-580,-562,-547,-534,-524,-513,-502,-491,-481,-473,-464,-455,-449,-446,-448,-452,-454,-449,-439,-427,
+-418,-413,-409,-404,-395,-384,-374,-364,-354,-342,-331,-322,-317,-317,-318,-318,-316,-312,-306,-300,-297,
+-298,-303,-313,-325,-338,-349,-359,-366,-371,-374,-376,-377,-380,-384,-388,-393,-399,-408,-419,-431,-444,
+-455,-463,-472,-484,-499,-517,-536,-553,-568,-584,-602,-622,-643,-663,-683,-704,-726,-750,-775,-799,-822,
+-844,-866,-886,-904,-921,-937,-955,-976,-1000,-1025,-1051,-1076,-1101,-1127,-1155,-1183,-1212,-1240,-1268,-1296,-1324,
+-1351,-1377,-1403,-1430,-1458,-1485,-1508,-1527,-1545,-1563,-1586,-1611,-1635,-1656,-1675,-1693,-1714,-1738,-1762,-1784,-1804,
+-1825,-1850,-1878,-1908,-1938,-1967,-1994,-2021,-2048,-2075,-2104,-2133,-2164,-2193,-2221,-2251,-2283,-2318,-2352,-2382,-2405,
+-2423,-2441,-2464,-2490,-2516,-2540,-2561,-2582,-2604,-2625,-2643,-2658,-2672,-2689,-2709,-2730,-2748,-2759,-2768,-2778,-2792,
+-2805,-2817,-2823,-2825,-2824,-2819,-2813,-2809,-2811,-2818,-2824,-2819,-2799,-2766,-2732,-2706,-2690,-2681,-2673,-2668,-2669,
+-2677,-2686,-2689,-2685,-2678,-2678,-2684,-2690,-2688,-2681,-2683,-2706,-2747,-2788,-2807,-2793,-2753,-2698,-2626,-2526,-2397,
+-2260,-2157,-2122,-2153,-2206,-2228,-2191,-2116,-2045,-2013,-2017,-2027,-2013,-1973,-1928,-1900,-1888,-1874,-1837,-1776,-1709,
+-1658,-1636,-1634,-1637,-1633,-1619,-1600,-1578,-1557,-1537,-1517,-1497,-1472,-1442,-1407,-1373,-1347,-1328,-1306,-1270,-1216,
+-1153,-1096,-1056,-1029,-1003,-967,-922,-883,-863,-863,-867,-857,-823,-782,-765,-805,-916,-1075,-1235,-1336,-1342,
+-1253,-1119,-1008,-981,-1056,-1201,-1355,-1463,-1502,-1489,-1458,-1438,-1436,-1440,-1440,-1438,-1449,-1484,-1544,-1614,-1679,
+-1731,-1776,-1827,-1892,-1968,-2044,-2108,-2155,-2188,-2215,-2238,-2261,-2285,-2313,-2345,-2380,-2414,-2442,-2461,-2471,-2477,
+-2482,-2490,-2503,-2522,-2551,-2588,-2630,-2671,-2704,-2727,-2745,-2760,-2775,-2783,-2779,-2765,-2751,-2756,-2794,-2865,-2954,
+-3034,-3085,-3103,-3105,-3113,-3144,-3200,-3270,-3341,-3407,-3470,-3531,-3588,-3631,-3654,-3659,-3657,-3657,-3663,-3671,-3676,
+-3675,-3669,-3660,-3642,-3610,-3562,-3506,-3461,-3440,-3449,-3479,-3518,-3558,-3594,-3625,-3648,-3660,-3661,-3659,-3662,-3679,
+-3704,-3728,-3739,-3733,-3717,-3700,-3688,-3682,-3678,-3670,-3655,-3636,-3615,-3597,-3582,-3568,-3551,-3529,-3503,-3480,-3464,
+-3456,-3448,-3432,-3403,-3360,-3308,-3246,-3173,-3092,-3012,-2953,-2927,-2932,-2946,-2944,-2915,-2868,-2826,-2803,-2797,-2788,
+-2760,-2716,-2673,-2652,-2654,-2667,-2669,-2651,-2619,-2587,-2566,-2553,-2536,-2508,-2468,-2423,-2386,-2360,-2346,-2337,-2326,
+-2310,-2290,-2270,-2255,-2248,-2248,-2247,-2241,-2224,-2198,-2166,-2131,-2092,-2048,-2002,-1959,-1926,-1904,-1889,-1873,-1849,
+-1814,-1770,-1719,-1662,-1601,-1535,-1466,-1396,-1323,-1247,-1167,-1084,-997,-909,-820,-736,-662,-604,-564,-538,-518,
+-497,-468,-424,-357,-255,-118,40,197,330,429,503,571,650,746,852,963,1073,1181,1282,1371,1447,
+1517,1594,1684,1777,1850,1888,1892,1882,1888,1925,1990,2066,2142,2213,2287,2365,2446,2520,2580,2626,2664,
+2697,2731,2769,2812,2862,2919,2979,3039,3100,3161,3223,3280,3331,3380,3436,3513,3608,3709,3793,3850,3886,
+3917,3962,4022,4088,4150,4205,4264,4334,4414,4490,4549,4591,4629,4679,4747,4826,4899,4955,4991,5021,5058,
+5112,5181,5256,5323,5375,5413,5446,5486,5542,5610,5682,5749,5804,5851,5896,5945,5996,6043,6084,6120,6157,
+6200,6251,6306,6360,6406,6440,6460,6467,6463,6455,6445,6440,6440,6443,6449,6456,6462,6465,6461,6450,6433,
+6415,6399,6386,6373,6359,6343,6329,6318,6307,6289,6259,6218,6176,6142,6121,6108,6092,6065,6024,5977,5931,
+5892,5860,5832,5809,5793,5790,5805,5832,5864,5887,5892,5876,5845,5804,5757,5704,5644,5584,5537,5517,5528,
+5560,5595,5612,5601,5565,5511,5449,5384,5323,5269,5223,5181,5131,5066,4988,4913,4857,4825,4806,4780,4734,
+4669,4600,4544,4506,4481,4462,4441,4418,4392,4365,4343,4335,4347,4378,4411,4428,4420,4399,4387,4407,4462,
+4536,4610,4671,4717,4755,4784,4799,4795,4775,4747,4725,4714,4716,4729,4774,4786,4808,4842,4887,4936,4983,
+5025,5063,5102,5144,5191,5239,5280,5297,5281,5230,5163,5107,5086,5101,5137,5173,5199,5226,5265,5313,5347,
+5330,5240,5085,4898,4719,4581,4492,4446,4426,4413,4388,4339,4264,4177,4099,4049,4032,4035,4040,4033,4014,
+3996,3995,4020,4074,4144,4215,4269,4301,4316,4331,4361,4411,4468,4517,4548,4566,4585,4614,4650,4680,4693,
+4690,4682,4677,4671,4651,4611,4553,4496,4453,4429,4412,4390,4359,4328,4314,4320,4333,4330,4290,4214,4121,
+4039,3985,3959,3945,3923,3884,3831,3776,3727,3684,3637,3583,3521,3462,3418,3395,3391,3400,3414,3426,3434,
+3435,3424,3397,3355,3303,3253,3217,3199,3194,3189,3166,3113,3029,2922,2808,2699,2599,2515,2454,2426,2440,
+2487,2538,2552,2496,2366,2193,2024,1901,1838,1821,1823,1823,1810,1780,1735,1674,1602,1531,1477,1452,1455,
+1477,1505,1532,1558,1587,1618,1644,1659,1659,1645,1621,1587,1545,1495,1433,1355,1256,1133,992,848,714,
+598,494,393,288,183,86,0,-76,-152,-233,-315,-389,-446,-489,-529,-578,-641,-714,-785,-847,-896,
+-937,-978,-1024,-1075,-1126,-1171,-1205,-1228,-1245,-1261,-1282,-1313,-1356,-1409,-1468,-1525,-1574,-1613,-1644,-1674,-1707,
+-1747,-1792,-1841,-1892,-1947,-2005,-2063,-2118,-2170,-2220,-2268,-2317,-2367,-2420,-2479,-2544,-2611,-2673,-2723,-2761,-2793,
+-2827,-2864,-2901,-2933,-2958,-2983,-3016,-3060,-3110,-3156,-3193,-3224,-3258,-3302,-3354,-3407,-3451,-3485,-3515,-3545,-3580,
+-3620,-3661,-3702,-3741,-3777,-3806,-3824,-3825,-3812,-3794,-3783,-3792,-3826,-3880,-3944,-4000,-4041,-4064,-4078,-4092,-4115,
+-4148,-4190,-4235,-4280,-4321,-4356,-4380,-4394,-4398,-4399,-4401,-4409,-4422,-4439,-4462,-4494,-4539,-4597,-4657,-4707,-4739,
+-4757,-4768,-4783,-4801,-4813,-4811,-4796,-4776,-4761,-4745,-4715,-4660,-4586,-4514,-4465,-4441,-4424,-4391,-4342,-4307,-4321,
+-4401,-4523,-4650,-4760,-4864,-4995,-5166,-5351,-5496,-5567,-5574,-5577,-5637,-5771,-5948,-6113,-6231,-6307,-6374,-6457,-6555,
+-6646,-6711,-6750,-6778,-6808,-6838,-6854,-6842,-6798,-6728,-6644,-6555,-6466,-6381,-6305,-6237,-6175,-6119,-6068,-6028,-6001,
+-5982,-5967,-5953,-5943,-5947,-5968,-6000,-6029,-6047,-6054,-6058,-6061,-6049,-6001,-5902,-5760,-5608,-5488,-5427,-5423,-5449,
+-5472,-5473,-5450,-5413,-5374,-5338,-5302,-5265,-5225,-5183,-5142,-5101,-5059,-5020,-4986,-4962,-4949,-4944,-4940,-4933,-4917,
+-4891,-4855,-4814,-4779,-4757,-4751,-4757,-4761,-4749,-4715,-4662,-4599,-4535,-4473,-4415,-4359,-4305,-4255,-4206,-4154,-4095,
+-4029,-3962,-3895,-3830,-3763,-3692,-3618,-3548,-3487,-3436,-3390,-3342,-3285,-3215,-3132,-3040,-2943,-2849,-2763,-2685,-2613,
+-2541,-2465,-2384,-2301,-2217,-2130,-2036,-1934,-1826,-1716,-1610,-1511,-1421,-1337,-1258,-1179,-1097,-1010,-918,-824,-733,
+-645,-559,-471,-382,-298,-228,-176,-137,-102,-61,-11,42,93,135,171,206,246,294,347,401,456,
+511,569,626,681,736,798,869,950,1033,1110,1178,1243,1311,1383,1452,1513,1571,1639,1725,1815,1882,
+1901,1878,1850,1865,1947,2079,2216,2318,2376,2410,2442,2477,2502,2500,2470,2428,2396,2382,2383,2391,2401,
+2414,2431,2452,2479,2518,2577,2659,2751,2830,2873,2872,2836,2782,2725,2673,2632,2604,2595,2602,2620,2638,
+2654,2672,2700,2740,2787,2835,2879,2922,2962,2992,3002,2988,2961,2943,2950,2984,3025,3050,3041,3002,2948,
+2900,2866,2847,2837,2829,2818,2804,2791,2788,2800,2831,2873,2916,2948,2964,2960,2926,2842,2686,2446,2129,
+1761,1372,985,616,281,-1,-213,-342,-392,-379,-319,-221,-86,85,284,488,677,833,952,1037,1094,
+1131,1155,1169,1174,1167,1146,1110,1069,1029,998,973,946,908,858,798,737,681,635,599,569,539,
+505,467,428,392,361,333,298,253,198,145,101,70,44,12,-28,-75,-118,-155,-189,-228,-275,
+-320,-353,-368,-375,-388,-415,-446,-465,-466,-464,-483,-538,-616,-690,-744,-791,-854,-937,-994,-959,-800,
+-565,-372,-336,-491,-764,-1019,-1150,-1138,-1047,-957,-908,-887,-863,-826,-796,-803,-848,-905,-937,-929,-893,
+-855,-833,-827,-827,-823,-814,-805,-796,-787,-778,-772,-771,-776,-782,-782,-773,-759,-743,-731,-722,-715,
+-709,-703,-698,-692,-688,-684,-680,-676,-671,-666,-661,-656,-649,-639,-625,-608,-593,-580,-568,-556,-543,
+-529,-518,-512,-511,-511,-509,-506,-503,-501,-497,-491,-482,-473,-467,-464,-462,-456,-446,-432,-417,-405,
+-396,-388,-380,-372,-365,-360,-359,-360,-360,-359,-355,-349,-345,-346,-352,-363,-376,-387,-397,-407,-416,
+-424,-430,-434,-436,-438,-442,-448,-455,-461,-467,-474,-484,-495,-507,-519,-531,-544,-560,-578,-595,-611,
+-627,-643,-660,-678,-698,-719,-739,-760,-782,-804,-827,-849,-872,-894,-916,-936,-955,-972,-988,-1005,-1026,
+-1050,-1076,-1102,-1127,-1151,-1176,-1202,-1230,-1259,-1288,-1316,-1344,-1372,-1399,-1426,-1452,-1479,-1507,-1534,-1558,-1578,
+-1596,-1615,-1638,-1664,-1689,-1711,-1730,-1748,-1769,-1792,-1815,-1836,-1855,-1875,-1898,-1926,-1955,-1984,-2011,-2036,-2061,
+-2087,-2113,-2140,-2169,-2198,-2227,-2256,-2288,-2322,-2359,-2394,-2423,-2444,-2461,-2479,-2502,-2527,-2553,-2575,-2594,-2614,
+-2635,-2656,-2673,-2687,-2700,-2717,-2739,-2762,-2782,-2796,-2808,-2818,-2830,-2840,-2848,-2853,-2856,-2859,-2858,-2852,-2846,
+-2844,-2851,-2861,-2865,-2853,-2825,-2792,-2764,-2748,-2739,-2732,-2724,-2718,-2716,-2716,-2714,-2709,-2704,-2707,-2716,-2723,
+-2720,-2709,-2707,-2729,-2774,-2822,-2847,-2831,-2780,-2705,-2615,-2507,-2382,-2261,-2174,-2149,-2179,-2225,-2240,-2200,-2125,
+-2056,-2024,-2023,-2027,-2006,-1958,-1904,-1866,-1850,-1839,-1816,-1773,-1722,-1679,-1655,-1651,-1656,-1663,-1663,-1654,-1634,
+-1604,-1569,-1533,-1500,-1467,-1429,-1385,-1341,-1304,-1278,-1254,-1222,-1176,-1123,-1074,-1039,-1016,-999,-979,-957,-935,
+-919,-908,-896,-873,-841,-807,-792,-821,-907,-1049,-1212,-1346,-1394,-1333,-1184,-1016,-912,-925,-1050,-1229,-1388,
+-1474,-1486,-1457,-1429,-1419,-1419,-1412,-1391,-1375,-1389,-1447,-1539,-1639,-1724,-1788,-1844,-1906,-1982,-2063,-2135,-2188,
+-2226,-2255,-2282,-2308,-2332,-2355,-2379,-2409,-2444,-2476,-2500,-2510,-2511,-2510,-2511,-2519,-2534,-2556,-2587,-2626,-2667,
+-2705,-2736,-2760,-2781,-2801,-2814,-2814,-2800,-2784,-2786,-2822,-2892,-2975,-3044,-3080,-3089,-3093,-3119,-3178,-3259,-3343,
+-3413,-3468,-3519,-3573,-3627,-3669,-3689,-3686,-3672,-3659,-3651,-3646,-3637,-3624,-3612,-3602,-3586,-3557,-3510,-3455,-3411,
+-3396,-3413,-3452,-3497,-3536,-3566,-3588,-3604,-3612,-3614,-3615,-3624,-3647,-3679,-3708,-3722,-3717,-3699,-3680,-3670,-3672,
+-3679,-3682,-3676,-3660,-3639,-3621,-3608,-3597,-3582,-3561,-3536,-3515,-3501,-3492,-3478,-3448,-3403,-3345,-3283,-3217,-3143,
+-3062,-2983,-2926,-2904,-2911,-2925,-2921,-2890,-2845,-2808,-2791,-2788,-2783,-2762,-2730,-2703,-2694,-2699,-2703,-2690,-2658,
+-2619,-2587,-2567,-2553,-2534,-2501,-2457,-2412,-2374,-2349,-2336,-2330,-2327,-2324,-2316,-2305,-2294,-2288,-2287,-2289,-2287,
+-2277,-2257,-2230,-2197,-2158,-2112,-2061,-2013,-1974,-1947,-1930,-1912,-1887,-1849,-1801,-1743,-1677,-1606,-1533,-1461,-1392,
+-1322,-1249,-1167,-1079,-991,-909,-840,-785,-742,-712,-693,-681,-673,-661,-638,-596,-524,-419,-281,-124,33,
+174,294,398,499,606,717,828,935,1038,1137,1230,1314,1389,1465,1552,1652,1751,1823,1849,1834,1806,
+1798,1830,1897,1979,2061,2136,2210,2290,2372,2448,2509,2556,2595,2631,2669,2713,2761,2814,2870,2928,2989,
+3052,3120,3188,3252,3305,3351,3400,3465,3550,3645,3730,3794,3839,3878,3925,3986,4054,4121,4185,4251,4324,
+4400,4470,4529,4577,4625,4683,4753,4828,4896,4948,4986,5021,5064,5119,5185,5252,5311,5356,5390,5421,5464,
+5525,5600,5678,5745,5800,5846,5891,5942,5993,6040,6079,6112,6147,6190,6241,6296,6347,6389,6420,6438,6445,
+6442,6432,6422,6417,6417,6422,6430,6437,6440,6439,6430,6416,6398,6378,6358,6338,6317,6300,6291,6294,6306,
+6315,6308,6276,6224,6166,6120,6094,6084,6074,6050,6007,5952,5898,5853,5822,5798,5778,5761,5755,5767,5798,
+5836,5861,5855,5813,5745,5671,5608,5562,5532,5512,5499,5496,5503,5513,5518,5507,5478,5436,5387,5330,5267,
+5197,5126,5058,4990,4917,4838,4764,4719,4721,4768,4828,4861,4839,4764,4663,4568,4500,4457,4426,4394,4359,
+4324,4301,4298,4322,4372,4436,4488,4508,4490,4451,4422,4429,4479,4557,4641,4716,4775,4821,4850,4859,4846,
+4817,4788,4768,4762,4766,4774,4833,4841,4852,4872,4905,4946,4989,5030,5068,5107,5148,5189,5226,5247,5244,
+5211,5158,5102,5065,5057,5074,5099,5121,5138,5161,5199,5248,5287,5289,5238,5136,5003,4861,4731,4626,4556,
+4524,4523,4534,4533,4503,4442,4366,4293,4234,4187,4141,4092,4041,3999,3980,3989,4027,4087,4153,4211,4249,
+4269,4285,4311,4352,4399,4439,4465,4485,4515,4566,4629,4683,4713,4718,4709,4702,4695,4679,4644,4592,4539,
+4500,4478,4459,4431,4392,4354,4336,4342,4357,4353,4308,4224,4124,4038,3987,3973,3977,3979,3963,3928,3881,
+3832,3784,3735,3682,3625,3570,3527,3502,3495,3499,3503,3499,3484,3461,3434,3401,3362,3319,3279,3252,3240,
+3237,3225,3184,3105,2993,2864,2735,2613,2500,2399,2320,2277,2279,2313,2347,2337,2259,2117,1949,1805,1719,
+1696,1716,1746,1760,1747,1705,1640,1558,1469,1391,1344,1341,1379,1447,1529,1617,1706,1790,1858,1898,1905,
+1883,1845,1804,1765,1726,1680,1621,1544,1442,1311,1154,984,822,682,566,462,359,249,138,34,-57,
+-142,-224,-308,-387,-456,-510,-557,-606,-664,-729,-794,-848,-891,-927,-963,-1006,-1054,-1100,-1139,-1168,-1190,
+-1210,-1230,-1251,-1275,-1306,-1349,-1404,-1466,-1525,-1572,-1605,-1631,-1657,-1690,-1731,-1778,-1829,-1884,-1943,-2004,-2067,
+-2130,-2191,-2250,-2306,-2361,-2416,-2475,-2540,-2605,-2664,-2712,-2750,-2785,-2822,-2862,-2900,-2930,-2955,-2982,-3020,-3071,
+-3125,-3172,-3208,-3238,-3271,-3313,-3362,-3411,-3454,-3492,-3530,-3571,-3614,-3655,-3692,-3725,-3757,-3792,-3824,-3847,-3854,
+-3842,-3816,-3790,-3774,-3778,-3803,-3844,-3894,-3945,-3993,-4037,-4074,-4107,-4137,-4168,-4202,-4240,-4282,-4323,-4361,-4391,
+-4410,-4420,-4421,-4420,-4421,-4429,-4450,-4483,-4527,-4575,-4617,-4647,-4663,-4668,-4673,-4683,-4698,-4708,-4708,-4700,-4691,
+-4690,-4692,-4686,-4660,-4624,-4599,-4605,-4643,-4687,-4706,-4695,-4678,-4692,-4752,-4838,-4911,-4946,-4964,-5004,-5091,-5206,
+-5297,-5324,-5296,-5272,-5314,-5443,-5625,-5800,-5927,-6011,-6087,-6184,-6301,-6418,-6515,-6590,-6658,-6731,-6800,-6840,-6826,
+-6753,-6639,-6515,-6412,-6343,-6305,-6281,-6251,-6205,-6145,-6086,-6039,-6008,-5981,-5948,-5907,-5874,-5868,-5897,-5950,-6001,
+-6032,-6044,-6053,-6075,-6105,-6123,-6100,-6026,-5913,-5794,-5698,-5639,-5612,-5599,-5584,-5560,-5526,-5487,-5446,-5405,-5364,
+-5326,-5290,-5254,-5218,-5179,-5141,-5105,-5076,-5054,-5041,-5035,-5031,-5023,-5003,-4963,-4906,-4843,-4791,-4760,-4748,-4742,
+-4727,-4692,-4642,-4584,-4526,-4470,-4413,-4355,-4299,-4249,-4201,-4153,-4097,-4033,-3965,-3897,-3831,-3766,-3699,-3633,-3572,
+-3519,-3473,-3426,-3372,-3306,-3227,-3139,-3043,-2944,-2847,-2758,-2679,-2607,-2538,-2465,-2388,-2308,-2226,-2142,-2050,-1948,
+-1838,-1723,-1611,-1503,-1402,-1309,-1223,-1141,-1058,-968,-870,-770,-673,-584,-505,-432,-363,-297,-237,-185,-141,
+-100,-57,-10,41,92,139,181,218,256,300,350,408,471,534,595,650,703,759,826,906,994,
+1081,1159,1228,1297,1372,1450,1522,1580,1633,1698,1784,1878,1950,1972,1949,1921,1936,2020,2152,2287,2384,
+2436,2463,2486,2511,2525,2514,2480,2443,2419,2414,2422,2432,2442,2453,2466,2477,2487,2506,2546,2611,2690,
+2755,2785,2777,2744,2707,2678,2657,2639,2626,2622,2631,2650,2669,2684,2697,2720,2756,2804,2855,2901,2943,
+2980,3010,3027,3029,3020,3016,3029,3061,3099,3125,3125,3099,3057,3011,2971,2944,2930,2928,2933,2938,2938,
+2937,2945,2972,3013,3055,3076,3057,2989,2860,2661,2380,2020,1600,1160,741,374,73,-158,-318,-398,-395,
+-314,-177,-10,165,340,509,667,807,922,1010,1077,1127,1163,1187,1197,1195,1182,1158,1123,1080,1035,
+995,963,936,906,865,815,758,703,652,606,563,523,486,455,426,397,365,330,292,250,205,
+156,104,55,13,-18,-45,-73,-105,-142,-180,-219,-259,-300,-339,-371,-390,-401,-415,-437,-463,-481,
+-485,-485,-502,-550,-622,-693,-747,-793,-856,-945,-1029,-1044,-948,-764,-586,-524,-623,-834,-1045,-1158,-1149,
+-1066,-978,-925,-899,-875,-844,-823,-833,-879,-937,-978,-989,-973,-945,-917,-890,-866,-848,-839,-838,-838,
+-834,-823,-814,-813,-818,-823,-821,-810,-793,-778,-767,-761,-757,-754,-748,-741,-731,-723,-720,-722,-726,
+-728,-722,-712,-701,-693,-685,-674,-660,-643,-627,-614,-601,-586,-570,-557,-552,-553,-558,-560,-556,-548,
+-539,-531,-525,-521,-518,-517,-516,-514,-507,-494,-477,-459,-444,-433,-425,-419,-414,-409,-405,-405,-408,
+-412,-414,-412,-407,-402,-401,-407,-416,-426,-434,-440,-448,-460,-474,-486,-494,-498,-501,-505,-511,-517,
+-522,-526,-531,-538,-547,-560,-573,-588,-604,-621,-640,-658,-676,-691,-707,-722,-739,-756,-774,-793,-812,
+-832,-851,-872,-893,-916,-939,-962,-985,-1007,-1027,-1048,-1070,-1093,-1117,-1140,-1162,-1182,-1202,-1223,-1247,-1274,
+-1302,-1330,-1357,-1384,-1413,-1442,-1471,-1499,-1527,-1554,-1582,-1607,-1630,-1651,-1673,-1695,-1720,-1744,-1766,-1786,-1806,
+-1828,-1852,-1875,-1895,-1912,-1930,-1952,-1978,-2007,-2034,-2059,-2081,-2103,-2125,-2148,-2172,-2197,-2224,-2253,-2284,-2318,
+-2354,-2391,-2426,-2456,-2478,-2497,-2517,-2541,-2566,-2591,-2612,-2631,-2649,-2669,-2689,-2706,-2721,-2735,-2753,-2775,-2797,
+-2817,-2832,-2846,-2859,-2871,-2880,-2884,-2885,-2888,-2893,-2895,-2892,-2882,-2875,-2877,-2887,-2897,-2894,-2875,-2847,-2821,
+-2806,-2800,-2795,-2787,-2776,-2767,-2758,-2749,-2739,-2733,-2734,-2743,-2751,-2748,-2738,-2734,-2754,-2798,-2848,-2878,-2866,
+-2814,-2733,-2634,-2522,-2401,-2288,-2208,-2183,-2205,-2241,-2247,-2205,-2131,-2059,-2019,-2008,-2003,-1979,-1930,-1874,-1830,
+-1808,-1797,-1785,-1764,-1734,-1706,-1685,-1676,-1677,-1685,-1694,-1694,-1679,-1647,-1605,-1562,-1522,-1482,-1435,-1379,-1319,
+-1266,-1226,-1196,-1171,-1143,-1114,-1086,-1065,-1051,-1042,-1034,-1024,-1007,-983,-950,-911,-870,-834,-807,-793,-802,
+-849,-948,-1091,-1243,-1346,-1350,-1246,-1083,-943,-903,-988,-1156,-1330,-1443,-1476,-1456,-1428,-1418,-1419,-1407,-1369,
+-1322,-1305,-1346,-1446,-1575,-1695,-1785,-1850,-1912,-1986,-2071,-2154,-2223,-2274,-2315,-2351,-2382,-2405,-2420,-2433,-2453,
+-2483,-2515,-2538,-2547,-2545,-2543,-2547,-2558,-2571,-2585,-2602,-2627,-2661,-2699,-2733,-2760,-2784,-2810,-2834,-2851,-2853,
+-2846,-2845,-2867,-2917,-2979,-3032,-3059,-3069,-3082,-3123,-3196,-3288,-3374,-3441,-3492,-3540,-3594,-3647,-3686,-3699,-3688,
+-3665,-3646,-3634,-3626,-3615,-3599,-3585,-3571,-3553,-3521,-3471,-3414,-3373,-3365,-3393,-3444,-3497,-3537,-3559,-3568,-3570,
+-3572,-3575,-3583,-3601,-3628,-3659,-3683,-3691,-3681,-3662,-3645,-3641,-3652,-3672,-3689,-3695,-3687,-3672,-3658,-3648,-3640,
+-3627,-3606,-3581,-3558,-3543,-3529,-3506,-3464,-3404,-3335,-3263,-3190,-3113,-3032,-2962,-2919,-2911,-2928,-2942,-2930,-2889,
+-2838,-2800,-2787,-2789,-2787,-2772,-2748,-2729,-2722,-2718,-2706,-2677,-2638,-2602,-2580,-2566,-2549,-2521,-2481,-2438,-2401,
+-2374,-2354,-2339,-2329,-2326,-2327,-2329,-2328,-2323,-2319,-2317,-2317,-2315,-2306,-2287,-2259,-2226,-2185,-2137,-2082,-2029,
+-1984,-1953,-1932,-1912,-1884,-1842,-1784,-1712,-1631,-1544,-1461,-1390,-1335,-1290,-1246,-1194,-1132,-1067,-1010,-965,-931,
+-902,-873,-844,-818,-795,-772,-742,-695,-626,-531,-413,-281,-143,-7,125,257,392,529,661,782,891,
+990,1084,1172,1253,1329,1409,1502,1607,1705,1770,1787,1764,1732,1723,1757,1825,1906,1983,2054,2124,2202,
+2284,2361,2425,2475,2518,2559,2604,2652,2703,2758,2815,2874,2935,2998,3067,3139,3210,3273,3324,3370,3421,
+3485,3560,3636,3704,3762,3815,3873,3939,4010,4083,4156,4230,4305,4376,4442,4499,4553,4611,4676,4745,4814,
+4876,4929,4977,5025,5075,5130,5187,5243,5294,5336,5372,5409,5456,5519,5593,5667,5732,5786,5833,5882,5934,
+5986,6031,6067,6100,6137,6182,6233,6283,6327,6364,6392,6411,6420,6418,6408,6398,6391,6393,6401,6411,6419,
+6419,6412,6399,6382,6364,6347,6329,6308,6284,6264,6256,6264,6285,6303,6303,6273,6219,6156,6103,6072,6058,
+6048,6025,5981,5923,5866,5823,5800,5791,5786,5780,5777,5785,5808,5834,5841,5811,5737,5639,5545,5482,5458,
+5464,5482,5497,5505,5503,5489,5459,5412,5353,5290,5228,5164,5095,5019,4944,4876,4815,4756,4698,4653,4645,
+4694,4795,4911,4995,5010,4957,4865,4770,4695,4638,4588,4534,4481,4441,4428,4451,4508,4587,4662,4705,4699,
+4644,4568,4507,4492,4528,4598,4680,4754,4815,4860,4889,4896,4882,4854,4828,4814,4815,4824,4833,4870,4881,
+4890,4901,4920,4947,4980,5017,5057,5098,5139,5175,5197,5199,5177,5137,5091,5053,5032,5029,5038,5050,5064,
+5082,5108,5139,5165,5174,5157,5113,5045,4958,4857,4749,4650,4581,4554,4570,4607,4638,4641,4612,4564,4510,
+4459,4407,4349,4282,4213,4152,4106,4080,4078,4098,4137,4181,4219,4244,4259,4277,4304,4339,4372,4398,4422,
+4457,4511,4576,4635,4670,4681,4680,4682,4687,4687,4670,4637,4599,4569,4547,4526,4494,4450,4406,4378,4371,
+4373,4363,4325,4257,4175,4101,4049,4022,4013,4007,3995,3972,3939,3898,3855,3812,3770,3729,3689,3654,3628,
+3613,3603,3592,3570,3537,3497,3454,3412,3369,3324,3284,3256,3243,3236,3213,3155,3056,2930,2796,2672,2559,
+2451,2344,2250,2183,2153,2151,2150,2118,2039,1922,1801,1710,1669,1676,1706,1735,1743,1725,1680,1612,1525,
+1430,1344,1286,1270,1299,1366,1462,1583,1723,1870,2000,2090,2124,2109,2065,2014,1970,1931,1891,1842,1776,
+1683,1553,1382,1183,979,796,650,533,428,319,202,87,-19,-115,-207,-300,-393,-479,-549,-603,-648,
+-692,-739,-787,-829,-864,-895,-930,-971,-1016,-1058,-1091,-1118,-1144,-1172,-1200,-1225,-1242,-1260,-1289,-1339,-1406,
+-1477,-1540,-1585,-1616,-1642,-1671,-1706,-1745,-1788,-1835,-1889,-1952,-2021,-2092,-2163,-2231,-2296,-2358,-2419,-2482,-2544,
+-2603,-2654,-2697,-2734,-2771,-2813,-2855,-2890,-2916,-2939,-2969,-3016,-3076,-3137,-3186,-3221,-3247,-3277,-3317,-3363,-3412,
+-3458,-3504,-3551,-3600,-3647,-3687,-3718,-3745,-3773,-3806,-3843,-3875,-3894,-3895,-3877,-3846,-3808,-3774,-3752,-3752,-3777,
+-3827,-3896,-3970,-4036,-4086,-4120,-4146,-4172,-4205,-4244,-4289,-4335,-4379,-4414,-4436,-4441,-4432,-4421,-4419,-4432,-4456,
+-4483,-4504,-4512,-4510,-4505,-4506,-4522,-4553,-4596,-4636,-4665,-4678,-4685,-4694,-4710,-4727,-4736,-4741,-4756,-4798,-4862,
+-4925,-4960,-4957,-4942,-4949,-4996,-5067,-5121,-5135,-5119,-5112,-5142,-5198,-5236,-5219,-5151,-5080,-5062,-5119,-5226,-5338,
+-5426,-5497,-5579,-5693,-5834,-5980,-6116,-6244,-6376,-6513,-6630,-6688,-6657,-6538,-6365,-6193,-6072,-6025,-6041,-6085,-6117,
+-6115,-6080,-6034,-5996,-5972,-5950,-5913,-5862,-5814,-5795,-5812,-5853,-5889,-5899,-5887,-5880,-5906,-5974,-6065,-6144,-6177,
+-6152,-6078,-5976,-5872,-5783,-5714,-5664,-5627,-5596,-5564,-5528,-5487,-5446,-5409,-5378,-5353,-5331,-5307,-5277,-5241,-5200,
+-5159,-5124,-5099,-5084,-5072,-5051,-5009,-4944,-4865,-4790,-4734,-4700,-4677,-4654,-4621,-4581,-4539,-4497,-4455,-4405,-4349,
+-4290,-4236,-4188,-4142,-4092,-4035,-3975,-3914,-3854,-3794,-3731,-3670,-3613,-3561,-3509,-3450,-3379,-3299,-3212,-3123,-3031,
+-2936,-2842,-2755,-2678,-2611,-2546,-2476,-2399,-2317,-2233,-2146,-2054,-1953,-1842,-1725,-1607,-1493,-1386,-1287,-1195,-1109,
+-1021,-926,-821,-713,-610,-523,-455,-402,-356,-309,-259,-207,-156,-108,-63,-17,31,83,136,186,232,
+276,322,375,435,498,559,614,665,717,779,853,941,1034,1122,1201,1274,1350,1434,1521,1601,1665,
+1721,1788,1875,1970,2040,2061,2037,2008,2022,2102,2229,2357,2450,2501,2527,2547,2563,2563,2538,2496,2459,
+2443,2445,2453,2457,2457,2460,2469,2480,2488,2500,2527,2577,2640,2695,2720,2713,2689,2666,2652,2644,2635,
+2626,2626,2641,2667,2694,2713,2725,2743,2774,2819,2869,2916,2955,2989,3019,3044,3062,3073,3085,3105,3134,
+3164,3183,3184,3169,3144,3114,3083,3054,3032,3025,3034,3053,3072,3085,3091,3097,3102,3095,3056,2962,2802,
+2569,2264,1890,1463,1012,584,223,-41,-206,-285,-295,-244,-137,18,204,397,576,731,859,963,1043,
+1102,1145,1177,1202,1218,1223,1215,1195,1170,1141,1108,1069,1027,984,944,907,867,822,772,721,672,
+626,578,528,480,439,410,388,365,331,287,238,192,151,111,66,15,-33,-72,-98,-119,-145,
+-180,-221,-261,-295,-325,-356,-387,-414,-433,-446,-459,-476,-493,-505,-514,-531,-570,-630,-696,-753,-803,
+-867,-956,-1051,-1098,-1051,-917,-765,-692,-748,-906,-1076,-1173,-1168,-1093,-1007,-947,-911,-884,-857,-842,-854,
+-894,-947,-993,-1022,-1032,-1024,-997,-956,-911,-878,-866,-870,-876,-873,-861,-851,-850,-857,-863,-859,-845,
+-827,-811,-801,-797,-797,-798,-797,-791,-778,-765,-758,-762,-772,-780,-777,-764,-749,-738,-730,-721,-706,
+-687,-669,-656,-646,-635,-620,-605,-596,-595,-598,-600,-596,-587,-577,-570,-568,-568,-568,-568,-566,-561,
+-553,-541,-525,-508,-492,-478,-467,-460,-456,-454,-454,-457,-462,-469,-474,-474,-470,-465,-464,-468,-475,
+-481,-484,-487,-493,-506,-523,-542,-556,-565,-570,-574,-579,-584,-587,-588,-591,-596,-605,-617,-630,-645,
+-662,-680,-700,-720,-739,-755,-771,-785,-799,-813,-828,-843,-859,-876,-894,-914,-937,-963,-989,-1015,-1040,
+-1065,-1090,-1115,-1141,-1165,-1187,-1206,-1221,-1235,-1250,-1269,-1292,-1318,-1347,-1373,-1398,-1423,-1450,-1480,-1512,-1542,
+-1570,-1597,-1624,-1652,-1680,-1706,-1730,-1754,-1777,-1799,-1820,-1839,-1859,-1880,-1903,-1925,-1945,-1962,-1980,-2002,-2028,
+-2055,-2080,-2101,-2121,-2140,-2161,-2182,-2204,-2227,-2252,-2280,-2311,-2344,-2379,-2414,-2447,-2477,-2502,-2525,-2549,-2575,
+-2603,-2629,-2651,-2668,-2684,-2701,-2718,-2736,-2752,-2769,-2790,-2812,-2833,-2850,-2864,-2879,-2894,-2909,-2919,-2922,-2920,
+-2921,-2925,-2930,-2929,-2919,-2908,-2905,-2911,-2922,-2925,-2913,-2892,-2872,-2860,-2856,-2854,-2847,-2837,-2827,-2817,-2806,
+-2792,-2778,-2771,-2773,-2778,-2779,-2773,-2771,-2786,-2823,-2871,-2904,-2903,-2862,-2788,-2691,-2577,-2455,-2340,-2256,-2220,
+-2226,-2247,-2245,-2202,-2129,-2056,-2007,-1984,-1972,-1949,-1910,-1863,-1822,-1795,-1780,-1772,-1765,-1755,-1740,-1723,-1708,
+-1699,-1702,-1711,-1717,-1708,-1680,-1639,-1594,-1549,-1502,-1446,-1381,-1311,-1249,-1201,-1169,-1149,-1136,-1127,-1122,-1118,
+-1114,-1108,-1101,-1089,-1068,-1033,-983,-926,-873,-834,-808,-790,-782,-797,-859,-976,-1129,-1265,-1325,-1281,-1159,
+-1030,-971,-1020,-1155,-1311,-1422,-1464,-1456,-1441,-1444,-1457,-1451,-1406,-1339,-1293,-1309,-1399,-1534,-1670,-1774,-1846,
+-1905,-1977,-2066,-2161,-2247,-2318,-2376,-2425,-2465,-2491,-2502,-2506,-2514,-2533,-2555,-2572,-2577,-2575,-2576,-2587,-2603,
+-2615,-2620,-2622,-2633,-2659,-2694,-2727,-2751,-2772,-2798,-2832,-2867,-2891,-2899,-2900,-2909,-2937,-2978,-3016,-3040,-3052,
+-3073,-3120,-3197,-3290,-3377,-3447,-3501,-3552,-3604,-3652,-3680,-3682,-3662,-3636,-3619,-3612,-3611,-3605,-3593,-3579,-3562,
+-3539,-3500,-3445,-3385,-3343,-3337,-3370,-3429,-3489,-3532,-3551,-3552,-3544,-3540,-3544,-3560,-3585,-3614,-3639,-3652,-3651,
+-3638,-3623,-3615,-3623,-3645,-3675,-3702,-3717,-3718,-3709,-3700,-3694,-3689,-3677,-3654,-3626,-3599,-3578,-3557,-3525,-3475,
+-3409,-3335,-3257,-3175,-3087,-2999,-2932,-2904,-2918,-2951,-2970,-2951,-2898,-2838,-2799,-2789,-2794,-2796,-2785,-2766,-2749,
+-2737,-2721,-2691,-2650,-2611,-2585,-2575,-2567,-2546,-2508,-2464,-2426,-2402,-2388,-2373,-2353,-2335,-2324,-2326,-2334,-2341,
+-2342,-2340,-2337,-2335,-2330,-2317,-2294,-2262,-2224,-2182,-2133,-2079,-2025,-1978,-1943,-1916,-1890,-1854,-1803,-1734,-1650,
+-1556,-1461,-1378,-1318,-1288,-1282,-1284,-1279,-1260,-1230,-1196,-1163,-1127,-1082,-1026,-963,-903,-852,-809,-768,-720,
+-662,-592,-510,-416,-309,-187,-50,100,260,420,571,707,825,929,1024,1112,1194,1275,1360,1456,1556,
+1645,1700,1713,1693,1671,1674,1714,1782,1858,1926,1986,2049,2121,2200,2277,2343,2398,2446,2491,2537,2584,
+2635,2692,2755,2821,2887,2951,3017,3087,3161,3234,3298,3352,3399,3449,3507,3571,3639,3705,3769,3833,3899,
+3969,4044,4122,4202,4279,4351,4415,4473,4530,4590,4653,4718,4780,4840,4900,4962,5024,5083,5137,5187,5234,
+5280,5324,5365,5408,5458,5518,5586,5654,5715,5767,5816,5867,5920,5971,6015,6054,6092,6135,6184,6234,6278,
+6314,6342,6365,6383,6392,6392,6382,6371,6365,6366,6375,6385,6391,6389,6379,6363,6346,6332,6321,6311,6299,
+6284,6267,6256,6255,6261,6266,6259,6232,6187,6135,6088,6056,6035,6017,5989,5944,5889,5837,5804,5796,5807,
+5824,5835,5839,5842,5848,5849,5829,5772,5680,5574,5486,5441,5439,5466,5498,5521,5529,5524,5501,5457,5389,
+5307,5221,5140,5064,4986,4907,4834,4777,4741,4720,4708,4707,4733,4802,4911,5033,5131,5177,5169,5129,5081,
+5035,4989,4932,4865,4800,4756,4747,4776,4833,4900,4949,4956,4908,4816,4709,4623,4583,4593,4637,4692,4745,
+4791,4832,4866,4886,4887,4874,4855,4844,4845,4857,4870,4880,4894,4902,4906,4909,4919,4940,4971,5011,5055,
+5096,5127,5142,5134,5109,5075,5045,5027,5018,5013,5010,5012,5026,5052,5078,5089,5072,5028,4971,4915,4865,
+4811,4746,4671,4601,4561,4564,4604,4657,4695,4706,4693,4672,4652,4635,4610,4569,4512,4446,4376,4309,4249,
+4201,4173,4171,4191,4220,4243,4255,4262,4274,4295,4324,4354,4382,4412,4447,4486,4520,4544,4561,4579,4605,
+4636,4663,4673,4665,4646,4627,4611,4593,4566,4526,4481,4439,4406,4382,4359,4329,4289,4242,4190,4139,4091,
+4050,4019,3997,3977,3954,3922,3886,3850,3822,3800,3782,3764,3744,3723,3702,3677,3644,3601,3550,3495,3435,
+3370,3303,3242,3199,3178,3167,3143,3086,2993,2877,2762,2657,2562,2464,2359,2256,2169,2109,2070,2036,1990,
+1925,1851,1787,1747,1738,1752,1773,1788,1791,1779,1750,1703,1633,1544,1448,1364,1307,1286,1304,1362,1464,
+1612,1795,1984,2143,2243,2282,2273,2243,2208,2173,2136,2092,2033,1948,1822,1642,1416,1169,938,750,610,
+498,393,278,156,35,-77,-183,-290,-397,-498,-583,-645,-688,-720,-751,-782,-811,-836,-860,-889,-927,
+-969,-1010,-1043,-1071,-1100,-1134,-1170,-1199,-1217,-1230,-1253,-1299,-1367,-1447,-1522,-1582,-1626,-1660,-1691,-1720,-1750,
+-1781,-1818,-1864,-1923,-1990,-2062,-2136,-2209,-2282,-2353,-2423,-2490,-2551,-2603,-2646,-2682,-2718,-2758,-2803,-2845,-2877,
+-2898,-2918,-2951,-3003,-3070,-3137,-3190,-3226,-3252,-3280,-3316,-3360,-3409,-3461,-3513,-3565,-3617,-3662,-3700,-3732,-3761,
+-3791,-3826,-3864,-3901,-3932,-3951,-3953,-3935,-3897,-3848,-3799,-3766,-3762,-3794,-3854,-3925,-3991,-4042,-4078,-4111,-4147,
+-4188,-4231,-4271,-4311,-4351,-4391,-4422,-4437,-4435,-4424,-4416,-4418,-4423,-4420,-4403,-4374,-4345,-4331,-4342,-4384,-4452,
+-4535,-4615,-4674,-4704,-4709,-4707,-4713,-4733,-4761,-4792,-4829,-4877,-4936,-4989,-5017,-5012,-4990,-4983,-5012,-5070,-5128,
+-5164,-5178,-5196,-5233,-5280,-5303,-5272,-5186,-5083,-5002,-4966,-4964,-4972,-4983,-5008,-5068,-5172,-5310,-5462,-5621,-5791,
+-5979,-6172,-6333,-6417,-6394,-6269,-6083,-5900,-5775,-5733,-5765,-5833,-5895,-5924,-5922,-5912,-5914,-5930,-5945,-5938,-5904,
+-5858,-5822,-5806,-5802,-5787,-5748,-5692,-5649,-5652,-5719,-5842,-5989,-6119,-6196,-6204,-6143,-6035,-5909,-5793,-5706,-5654,
+-5627,-5610,-5589,-5558,-5519,-5480,-5452,-5436,-5428,-5416,-5389,-5342,-5277,-5205,-5139,-5089,-5056,-5035,-5013,-4976,-4919,
+-4848,-4773,-4709,-4659,-4619,-4583,-4548,-4514,-4486,-4462,-4434,-4395,-4344,-4287,-4233,-4185,-4141,-4095,-4045,-3994,-3943,
+-3892,-3837,-3776,-3713,-3650,-3589,-3524,-3448,-3361,-3268,-3177,-3091,-3005,-2917,-2827,-2743,-2671,-2611,-2552,-2485,-2406,
+-2319,-2230,-2140,-2048,-1948,-1839,-1723,-1605,-1488,-1377,-1272,-1173,-1080,-985,-884,-773,-661,-557,-474,-416,-377,
+-346,-311,-267,-215,-160,-108,-63,-19,27,79,136,193,246,297,351,409,470,530,585,634,684,
+739,806,886,975,1067,1155,1237,1316,1399,1489,1582,1670,1745,1814,1890,1982,2076,2144,2160,2131,2094,
+2099,2168,2287,2413,2509,2567,2601,2624,2635,2621,2580,2528,2490,2478,2484,2485,2471,2448,2434,2441,2464,
+2491,2518,2547,2586,2632,2668,2682,2671,2647,2626,2616,2612,2610,2609,2619,2645,2683,2721,2746,2760,2773,
+2797,2836,2887,2938,2984,3023,3058,3087,3108,3122,3136,3154,3178,3200,3211,3206,3190,3172,3159,3148,3136,
+3122,3114,3122,3147,3177,3194,3183,3140,3065,2959,2814,2616,2361,2048,1687,1293,889,504,177,-54,-175,
+-190,-127,-13,128,290,463,638,798,930,1033,1108,1163,1203,1230,1246,1254,1254,1246,1228,1202,1173,
+1147,1123,1098,1066,1024,976,928,883,838,790,739,687,638,591,544,495,447,407,377,354,328,
+291,242,189,142,105,71,31,-16,-67,-108,-136,-157,-185,-226,-272,-312,-337,-354,-375,-405,-439,
+-463,-473,-477,-487,-507,-528,-544,-558,-585,-632,-696,-762,-822,-885,-960,-1038,-1080,-1049,-944,-820,-757,
+-803,-941,-1095,-1188,-1189,-1121,-1036,-969,-925,-895,-871,-861,-871,-901,-942,-985,-1025,-1056,-1069,-1053,-1009,
+-953,-909,-892,-896,-904,-902,-892,-886,-889,-899,-903,-896,-880,-863,-850,-843,-839,-839,-842,-846,-844,
+-833,-815,-803,-804,-815,-825,-823,-808,-790,-776,-768,-760,-745,-725,-708,-699,-694,-689,-677,-662,-649,
+-642,-641,-641,-637,-629,-621,-617,-616,-617,-618,-615,-609,-601,-593,-584,-575,-564,-551,-537,-524,-514,
+-510,-509,-511,-514,-519,-525,-530,-532,-530,-526,-525,-528,-534,-540,-543,-544,-548,-559,-575,-595,-613,
+-627,-637,-645,-650,-653,-653,-653,-654,-659,-668,-679,-691,-704,-719,-736,-756,-776,-795,-812,-827,-841,
+-853,-866,-879,-892,-907,-923,-941,-963,-989,-1018,-1047,-1075,-1100,-1124,-1148,-1173,-1198,-1220,-1238,-1251,-1263,
+-1274,-1288,-1306,-1331,-1359,-1389,-1417,-1442,-1465,-1490,-1519,-1550,-1581,-1609,-1634,-1661,-1690,-1720,-1749,-1776,-1801,
+-1825,-1847,-1867,-1884,-1901,-1919,-1939,-1961,-1981,-2001,-2022,-2045,-2069,-2093,-2114,-2132,-2149,-2170,-2193,-2217,-2241,
+-2263,-2287,-2314,-2344,-2374,-2404,-2433,-2462,-2491,-2518,-2545,-2573,-2603,-2634,-2663,-2687,-2705,-2719,-2733,-2747,-2763,
+-2781,-2801,-2823,-2846,-2867,-2883,-2896,-2908,-2923,-2939,-2950,-2954,-2952,-2951,-2954,-2959,-2961,-2956,-2947,-2942,-2944,
+-2950,-2952,-2945,-2930,-2916,-2909,-2906,-2903,-2897,-2889,-2883,-2879,-2873,-2859,-2839,-2821,-2814,-2815,-2818,-2818,-2817,
+-2827,-2855,-2897,-2934,-2946,-2920,-2855,-2757,-2637,-2507,-2386,-2295,-2249,-2241,-2247,-2237,-2195,-2129,-2060,-2007,-1976,
+-1958,-1939,-1913,-1882,-1851,-1824,-1805,-1794,-1789,-1787,-1779,-1763,-1740,-1720,-1712,-1715,-1719,-1714,-1692,-1657,-1612,
+-1564,-1510,-1448,-1382,-1318,-1263,-1222,-1193,-1174,-1165,-1164,-1169,-1175,-1176,-1169,-1155,-1135,-1106,-1066,-1016,-961,
+-912,-873,-841,-813,-792,-798,-852,-965,-1117,-1258,-1336,-1322,-1235,-1132,-1077,-1105,-1203,-1321,-1411,-1452,-1459,
+-1464,-1486,-1514,-1520,-1483,-1416,-1360,-1359,-1428,-1547,-1672,-1770,-1837,-1891,-1958,-2047,-2146,-2242,-2325,-2397,-2460,
+-2514,-2552,-2570,-2574,-2578,-2588,-2603,-2614,-2616,-2612,-2614,-2625,-2639,-2647,-2644,-2640,-2646,-2670,-2704,-2735,-2754,
+-2769,-2791,-2828,-2872,-2907,-2924,-2928,-2933,-2952,-2984,-3015,-3035,-3047,-3069,-3116,-3192,-3285,-3374,-3446,-3502,-3550,
+-3594,-3629,-3645,-3639,-3617,-3596,-3586,-3588,-3593,-3591,-3580,-3564,-3545,-3519,-3480,-3426,-3367,-3324,-3313,-3339,-3392,
+-3451,-3498,-3523,-3527,-3520,-3513,-3517,-3535,-3563,-3592,-3613,-3621,-3617,-3609,-3604,-3609,-3627,-3654,-3686,-3714,-3729,
+-3732,-3727,-3721,-3719,-3715,-3705,-3683,-3654,-3625,-3599,-3572,-3536,-3484,-3421,-3351,-3274,-3187,-3088,-2990,-2921,-2900,
+-2927,-2971,-2990,-2963,-2899,-2833,-2794,-2788,-2797,-2801,-2790,-2772,-2755,-2740,-2716,-2678,-2633,-2598,-2583,-2582,-2577,
+-2552,-2509,-2465,-2434,-2421,-2414,-2399,-2375,-2351,-2339,-2345,-2360,-2371,-2371,-2363,-2352,-2342,-2329,-2310,-2280,-2242,
+-2201,-2158,-2114,-2066,-2018,-1974,-1936,-1904,-1870,-1826,-1768,-1696,-1613,-1526,-1445,-1381,-1345,-1344,-1368,-1404,-1431,
+-1439,-1426,-1397,-1353,-1294,-1217,-1124,-1027,-938,-866,-809,-762,-719,-675,-632,-584,-524,-443,-335,-199,-43,
+123,292,453,601,732,848,952,1048,1140,1231,1324,1421,1516,1595,1645,1661,1654,1648,1664,1708,1772,
+1838,1894,1943,1995,2058,2129,2200,2265,2323,2374,2423,2469,2516,2566,2627,2698,2775,2849,2915,2976,3040,
+3113,3193,3270,3338,3395,3445,3497,3555,3619,3684,3748,3811,3875,3941,4013,4090,4172,4253,4329,4397,4458,
+4515,4570,4626,4681,4739,4801,4869,4942,5013,5077,5131,5177,5221,5266,5311,5356,5402,5453,5511,5576,5640,
+5699,5753,5803,5854,5906,5956,6002,6046,6092,6142,6194,6241,6278,6305,6325,6343,6356,6363,6360,6352,6342,
+6338,6340,6347,6353,6356,6353,6343,6329,6314,6301,6294,6290,6288,6285,6279,6269,6257,6241,6222,6199,6172,
+6142,6110,6078,6046,6014,5981,5944,5903,5859,5824,5807,5813,5837,5865,5885,5890,5884,5870,5846,5803,5733,
+5643,5553,5488,5462,5467,5486,5501,5507,5508,5504,5490,5454,5391,5310,5227,5154,5091,5028,4958,4887,4831,
+4803,4805,4829,4867,4921,4993,5080,5171,5248,5302,5335,5355,5368,5367,5345,5297,5234,5173,5133,5121,5134,
+5159,5183,5187,5157,5088,4988,4881,4793,4739,4721,4724,4735,4748,4768,4798,4837,4874,4897,4899,4887,4871,
+4863,4867,4880,4920,4931,4935,4928,4914,4904,4909,4930,4962,4999,5033,5059,5070,5065,5048,5030,5020,5018,
+5016,5005,4989,4982,4993,5019,5036,5020,4960,4874,4793,4736,4703,4674,4634,4584,4548,4549,4592,4660,4722,
+4758,4763,4753,4745,4748,4754,4753,4733,4694,4641,4580,4513,4439,4364,4300,4258,4243,4249,4261,4268,4267,
+4265,4272,4292,4321,4349,4370,4382,4386,4389,4396,4415,4448,4496,4550,4598,4631,4647,4650,4647,4642,4635,
+4620,4591,4548,4494,4439,4391,4356,4336,4324,4310,4281,4234,4173,4110,4060,4027,4007,3989,3962,3926,3891,
+3865,3852,3847,3839,3822,3797,3766,3732,3692,3644,3587,3517,3434,3338,3237,3148,3086,3058,3050,3039,3003,
+2937,2853,2767,2686,2604,2512,2409,2304,2212,2138,2077,2022,1967,1915,1873,1846,1834,1832,1836,1841,1847,
+1853,1860,1860,1844,1803,1732,1637,1533,1438,1365,1323,1319,1365,1473,1640,1845,2050,2217,2328,2385,2405,
+2404,2389,2361,2319,2263,2183,2065,1892,1665,1405,1152,939,781,661,554,434,299,157,21,-103,-219,
+-332,-442,-540,-619,-677,-718,-749,-776,-799,-817,-834,-856,-885,-922,-960,-994,-1023,-1054,-1090,-1129,-1164,
+-1191,-1213,-1240,-1285,-1350,-1427,-1506,-1576,-1634,-1682,-1722,-1753,-1777,-1801,-1830,-1870,-1922,-1982,-2047,-2116,-2190,
+-2267,-2346,-2422,-2492,-2552,-2600,-2638,-2671,-2705,-2745,-2788,-2827,-2857,-2877,-2898,-2932,-2985,-3052,-3119,-3174,-3214,
+-3243,-3270,-3302,-3342,-3389,-3443,-3500,-3557,-3609,-3655,-3698,-3739,-3780,-3819,-3854,-3888,-3921,-3955,-3990,-4017,-4028,
+-4018,-3988,-3947,-3911,-3890,-3892,-3913,-3942,-3968,-3991,-4018,-4059,-4118,-4181,-4235,-4269,-4289,-4309,-4337,-4371,-4400,
+-4417,-4425,-4430,-4433,-4427,-4402,-4356,-4302,-4259,-4244,-4263,-4313,-4388,-4475,-4559,-4618,-4639,-4626,-4599,-4585,-4598,
+-4635,-4681,-4727,-4773,-4821,-4867,-4899,-4905,-4889,-4872,-4873,-4902,-4950,-5005,-5064,-5131,-5208,-5279,-5315,-5298,-5232,
+-5143,-5058,-4988,-4926,-4863,-4804,-4768,-4774,-4827,-4920,-5040,-5182,-5351,-5547,-5753,-5937,-6064,-6109,-6073,-5983,-5875,
+-5788,-5743,-5742,-5767,-5793,-5809,-5820,-5843,-5891,-5959,-6023,-6059,-6056,-6021,-5971,-5919,-5865,-5799,-5716,-5624,-5545,
+-5505,-5524,-5609,-5747,-5910,-6056,-6146,-6157,-6091,-5972,-5840,-5729,-5660,-5630,-5622,-5614,-5593,-5557,-5518,-5490,-5480,
+-5482,-5476,-5446,-5383,-5295,-5201,-5117,-5055,-5015,-4989,-4966,-4938,-4899,-4849,-4794,-4738,-4683,-4630,-4577,-4528,-4487,
+-4457,-4436,-4414,-4382,-4340,-4292,-4245,-4201,-4157,-4110,-4060,-4012,-3966,-3921,-3868,-3805,-3733,-3659,-3585,-3508,-3423,
+-3330,-3236,-3148,-3066,-2985,-2900,-2811,-2727,-2657,-2600,-2545,-2479,-2399,-2309,-2217,-2126,-2034,-1935,-1828,-1715,-1600,
+-1484,-1369,-1257,-1149,-1045,-943,-837,-727,-617,-517,-439,-385,-350,-322,-290,-247,-194,-140,-89,-45,-2,
+42,94,151,208,264,319,377,438,501,558,610,659,712,773,843,921,1006,1096,1189,1281,1369,
+1455,1543,1635,1726,1810,1890,1973,2064,2153,2217,2232,2202,2162,2158,2217,2326,2447,2544,2605,2641,2662,
+2668,2648,2604,2555,2526,2526,2541,2541,2513,2469,2438,2441,2476,2526,2571,2604,2628,2647,2657,2650,2627,
+2599,2578,2573,2579,2592,2608,2632,2668,2712,2755,2785,2799,2806,2821,2854,2906,2970,3036,3095,3141,3169,
+3177,3169,3159,3159,3176,3199,3212,3201,3171,3140,3127,3135,3155,3171,3177,3181,3189,3196,3181,3122,3005,
+2833,2617,2367,2083,1767,1426,1077,739,437,193,28,-44,-22,79,231,403,576,739,889,1021,1125,
+1199,1245,1273,1290,1303,1309,1307,1297,1279,1253,1221,1188,1157,1133,1112,1086,1050,1002,951,902,858,
+815,767,712,653,597,548,504,462,421,381,346,314,282,245,202,154,110,71,34,-7,-54,
+-101,-141,-169,-195,-228,-274,-324,-363,-384,-394,-408,-436,-470,-493,-499,-498,-506,-529,-558,-577,-585,
+-598,-635,-698,-773,-843,-905,-966,-1021,-1046,-1010,-913,-801,-747,-797,-934,-1090,-1189,-1197,-1137,-1054,-985,
+-938,-907,-887,-881,-891,-916,-948,-985,-1026,-1067,-1095,-1093,-1055,-997,-946,-920,-918,-923,-924,-921,-923,
+-932,-942,-942,-929,-912,-900,-896,-894,-890,-887,-888,-892,-894,-885,-867,-851,-847,-855,-862,-859,-844,
+-826,-813,-806,-799,-787,-771,-759,-754,-753,-750,-739,-722,-707,-698,-692,-687,-679,-668,-658,-653,-652,
+-653,-653,-651,-646,-639,-633,-627,-623,-618,-610,-599,-588,-579,-575,-574,-575,-576,-578,-581,-584,-585,
+-584,-581,-580,-584,-591,-600,-605,-609,-613,-620,-633,-649,-667,-684,-698,-709,-716,-718,-717,-715,-716,
+-721,-729,-739,-750,-761,-775,-791,-810,-829,-847,-863,-877,-890,-902,-915,-928,-942,-957,-974,-993,-1016,
+-1043,-1072,-1101,-1127,-1148,-1168,-1187,-1208,-1228,-1246,-1261,-1274,-1286,-1300,-1317,-1337,-1363,-1393,-1426,-1456,-1483,
+-1506,-1530,-1557,-1587,-1618,-1646,-1672,-1697,-1725,-1754,-1782,-1809,-1834,-1859,-1883,-1905,-1923,-1938,-1955,-1975,-1997,
+-2019,-2041,-2063,-2085,-2108,-2128,-2145,-2160,-2177,-2199,-2227,-2256,-2282,-2306,-2330,-2356,-2384,-2411,-2436,-2460,-2484,
+-2511,-2539,-2567,-2595,-2626,-2658,-2690,-2718,-2740,-2755,-2768,-2782,-2798,-2815,-2835,-2857,-2880,-2901,-2918,-2930,-2939,
+-2950,-2962,-2972,-2978,-2979,-2978,-2979,-2984,-2988,-2989,-2987,-2984,-2984,-2985,-2983,-2975,-2964,-2955,-2950,-2946,-2941,
+-2931,-2923,-2920,-2924,-2924,-2915,-2895,-2872,-2859,-2858,-2862,-2863,-2861,-2864,-2885,-2925,-2968,-2991,-2973,-2906,-2796,
+-2661,-2522,-2403,-2319,-2277,-2264,-2259,-2239,-2197,-2138,-2078,-2029,-1995,-1972,-1952,-1933,-1914,-1894,-1873,-1851,-1833,
+-1823,-1816,-1807,-1788,-1761,-1734,-1714,-1705,-1700,-1691,-1673,-1647,-1612,-1569,-1517,-1458,-1400,-1351,-1314,-1286,-1262,
+-1239,-1222,-1214,-1217,-1223,-1223,-1212,-1189,-1158,-1122,-1083,-1044,-1008,-975,-940,-899,-852,-818,-823,-891,-1022,
+-1183,-1323,-1393,-1379,-1305,-1222,-1178,-1194,-1258,-1338,-1403,-1442,-1466,-1490,-1522,-1551,-1557,-1529,-1482,-1445,-1451,
+-1509,-1603,-1700,-1776,-1828,-1874,-1933,-2013,-2105,-2196,-2277,-2352,-2425,-2492,-2546,-2581,-2600,-2614,-2629,-2647,-2659,
+-2660,-2654,-2647,-2647,-2652,-2654,-2653,-2655,-2668,-2696,-2731,-2761,-2781,-2798,-2822,-2856,-2892,-2917,-2926,-2928,-2939,
+-2967,-3005,-3036,-3050,-3054,-3068,-3110,-3184,-3276,-3364,-3435,-3486,-3526,-3558,-3581,-3589,-3581,-3566,-3556,-3556,-3564,
+-3570,-3565,-3549,-3529,-3508,-3485,-3454,-3413,-3366,-3327,-3310,-3320,-3353,-3399,-3443,-3477,-3494,-3498,-3496,-3500,-3515,
+-3540,-3567,-3587,-3596,-3599,-3600,-3607,-3621,-3641,-3665,-3690,-3710,-3721,-3721,-3714,-3706,-3701,-3697,-3688,-3672,-3649,
+-3625,-3602,-3574,-3534,-3483,-3426,-3367,-3303,-3225,-3130,-3034,-2966,-2948,-2975,-3012,-3017,-2973,-2896,-2824,-2787,-2786,
+-2799,-2802,-2787,-2765,-2745,-2728,-2704,-2670,-2632,-2606,-2600,-2603,-2597,-2572,-2531,-2492,-2468,-2457,-2446,-2426,-2398,
+-2378,-2377,-2395,-2417,-2426,-2415,-2390,-2360,-2334,-2309,-2281,-2245,-2204,-2164,-2127,-2093,-2058,-2020,-1982,-1947,-1915,
+-1881,-1840,-1789,-1729,-1665,-1605,-1555,-1523,-1514,-1529,-1561,-1597,-1621,-1622,-1599,-1552,-1485,-1398,-1291,-1174,-1058,
+-959,-881,-824,-779,-741,-708,-679,-649,-605,-537,-438,-311,-164,-5,156,317,471,615,746,867,981,
+1090,1195,1297,1394,1484,1561,1617,1648,1660,1670,1692,1732,1783,1834,1877,1915,1955,2004,2062,2124,2184,
+2242,2299,2353,2405,2455,2510,2574,2651,2735,2813,2881,2940,3000,3070,3151,3235,3313,3380,3438,3493,3549,
+3609,3670,3732,3795,3859,3926,3996,4070,4148,4229,4310,4384,4448,4503,4551,4598,4649,4707,4772,4844,4918,
+4988,5051,5105,5152,5197,5242,5287,5333,5381,5434,5494,5560,5625,5686,5741,5792,5842,5893,5944,5994,6045,
+6096,6148,6197,6238,6268,6289,6305,6317,6324,6324,6319,6312,6307,6308,6312,6317,6320,6320,6317,6311,6301,
+6287,6272,6259,6251,6250,6254,6260,6260,6248,6222,6187,6150,6120,6100,6084,6062,6027,5982,5933,5889,5857,
+5836,5827,5831,5846,5868,5887,5895,5888,5867,5839,5802,5753,5689,5618,5553,5508,5486,5475,5461,5438,5412,
+5394,5390,5389,5373,5337,5289,5250,5229,5221,5205,5163,5095,5021,4969,4956,4985,5044,5118,5193,5258,5311,
+5354,5396,5444,5498,5546,5571,5563,5527,5479,5438,5414,5402,5395,5387,5373,5349,5309,5250,5174,5093,5021,
+4965,4923,4889,4858,4834,4825,4839,4873,4916,4950,4965,4957,4936,4918,4912,4920,5044,5055,5055,5038,5009,
+4981,4966,4965,4974,4986,4999,5009,5014,5012,5004,4999,5000,5005,5002,4982,4953,4932,4931,4943,4940,4899,
+4820,4729,4660,4629,4620,4608,4579,4545,4538,4575,4650,4734,4797,4824,4824,4817,4817,4826,4837,4838,4826,
+4800,4766,4727,4680,4620,4544,4458,4377,4316,4284,4277,4280,4282,4278,4274,4279,4296,4321,4340,4345,4335,
+4319,4310,4318,4346,4389,4439,4487,4528,4562,4589,4609,4624,4631,4626,4604,4562,4504,4443,4392,4363,4359,
+4367,4371,4357,4318,4261,4201,4151,4118,4098,4080,4053,4016,3975,3941,3919,3904,3887,3863,3828,3788,3745,
+3700,3649,3584,3499,3393,3271,3147,3044,2978,2953,2955,2959,2943,2904,2849,2788,2722,2645,2552,2449,2351,
+2267,2197,2134,2071,2012,1966,1939,1927,1921,1913,1901,1890,1889,1899,1918,1938,1949,1937,1894,1818,1721,
+1617,1520,1441,1388,1373,1414,1519,1681,1871,2055,2206,2316,2389,2434,2455,2451,2424,2378,2312,2219,2086,
+1907,1693,1473,1278,1124,1002,887,755,596,425,260,117,-7,-125,-246,-372,-490,-589,-662,-712,-746,
+-772,-793,-812,-832,-856,-885,-917,-948,-976,-1006,-1039,-1077,-1118,-1158,-1196,-1235,-1282,-1339,-1404,-1476,-1550,
+-1622,-1687,-1741,-1780,-1806,-1829,-1858,-1896,-1943,-1996,-2053,-2115,-2184,-2260,-2339,-2415,-2483,-2541,-2589,-2628,-2661,
+-2692,-2724,-2758,-2791,-2821,-2846,-2875,-2913,-2964,-3024,-3086,-3140,-3184,-3216,-3242,-3267,-3297,-3338,-3391,-3452,-3514,
+-3571,-3624,-3678,-3735,-3791,-3841,-3879,-3908,-3936,-3972,-4016,-4062,-4100,-4123,-4130,-4122,-4106,-4089,-4071,-4052,-4027,
+-3997,-3971,-3969,-4003,-4072,-4154,-4220,-4253,-4257,-4253,-4259,-4281,-4313,-4346,-4379,-4412,-4439,-4448,-4428,-4382,-4327,
+-4285,-4266,-4270,-4287,-4314,-4348,-4385,-4410,-4410,-4384,-4349,-4333,-4351,-4400,-4461,-4517,-4566,-4616,-4673,-4727,-4764,
+-4774,-4763,-4747,-4742,-4757,-4795,-4857,-4940,-5032,-5110,-5154,-5157,-5130,-5098,-5074,-5053,-5017,-4952,-4865,-4779,-4722,
+-4710,-4744,-4818,-4922,-5050,-5197,-5357,-5524,-5689,-5845,-5977,-6072,-6120,-6123,-6096,-6054,-6013,-5978,-5956,-5955,-5985,
+-6047,-6129,-6208,-6260,-6272,-6248,-6197,-6130,-6053,-5968,-5875,-5778,-5680,-5593,-5535,-5528,-5585,-5703,-5853,-5987,-6064,
+-6060,-5984,-5871,-5759,-5678,-5638,-5626,-5622,-5606,-5574,-5535,-5507,-5499,-5502,-5497,-5462,-5391,-5299,-5208,-5136,-5087,
+-5053,-5025,-4995,-4963,-4932,-4900,-4866,-4826,-4777,-4717,-4649,-4580,-4519,-4471,-4435,-4404,-4373,-4339,-4303,-4267,-4230,
+-4186,-4133,-4077,-4024,-3977,-3931,-3875,-3805,-3722,-3636,-3553,-3472,-3389,-3302,-3216,-3135,-3058,-2979,-2894,-2804,-2717,
+-2644,-2583,-2524,-2456,-2375,-2286,-2196,-2106,-2013,-1913,-1804,-1691,-1578,-1463,-1346,-1226,-1108,-996,-889,-784,-677,
+-573,-478,-402,-348,-310,-278,-243,-201,-153,-104,-57,-13,31,79,133,189,243,296,349,405,465,
+524,579,630,684,743,808,877,951,1032,1127,1233,1341,1440,1528,1611,1699,1790,1878,1956,2026,2096,
+2166,2222,2244,2229,2202,2203,2258,2359,2469,2552,2596,2612,2618,2619,2607,2582,2556,2551,2572,2604,2616,
+2594,2549,2512,2511,2547,2598,2641,2661,2662,2652,2636,2614,2587,2563,2551,2558,2581,2612,2642,2672,2707,
+2747,2788,2820,2836,2840,2847,2874,2929,3008,3098,3181,3242,3269,3256,3211,3158,3125,3129,3162,3193,3188,
+3140,3073,3028,3029,3070,3118,3143,3134,3100,3045,2963,2835,2648,2405,2123,1823,1514,1201,893,610,377,
+213,130,128,198,327,494,673,843,991,1116,1218,1297,1350,1377,1383,1377,1369,1360,1350,1335,1314,
+1288,1258,1225,1192,1161,1133,1103,1066,1018,963,910,864,825,786,739,680,616,555,504,463,427,
+390,349,305,264,227,195,163,126,85,40,-5,-52,-99,-143,-181,-212,-241,-276,-321,-368,-405,
+-426,-438,-452,-477,-504,-522,-525,-523,-533,-561,-594,-614,-618,-624,-653,-712,-785,-856,-919,-980,-1038,
+-1065,-1028,-925,-800,-731,-769,-905,-1068,-1179,-1200,-1149,-1072,-1005,-957,-923,-901,-895,-909,-936,-967,-999,
+-1036,-1080,-1119,-1130,-1104,-1051,-994,-956,-942,-942,-944,-949,-960,-973,-980,-973,-955,-938,-933,-937,-942,
+-940,-933,-928,-930,-931,-923,-906,-890,-885,-889,-895,-893,-881,-867,-858,-854,-849,-841,-831,-825,-825,
+-826,-819,-805,-786,-770,-760,-751,-738,-720,-700,-684,-674,-671,-673,-677,-681,-682,-680,-676,-672,-669,
+-665,-661,-653,-645,-639,-637,-637,-638,-638,-638,-639,-639,-638,-636,-633,-632,-637,-646,-657,-666,-672,
+-677,-684,-694,-708,-723,-739,-752,-762,-768,-770,-769,-768,-770,-775,-783,-792,-802,-812,-826,-843,-862,
+-881,-898,-913,-927,-940,-953,-965,-977,-992,-1007,-1025,-1044,-1064,-1086,-1111,-1135,-1157,-1174,-1189,-1204,-1220,
+-1238,-1256,-1273,-1290,-1309,-1329,-1350,-1372,-1397,-1425,-1457,-1490,-1520,-1545,-1570,-1597,-1626,-1657,-1687,-1714,-1740,
+-1766,-1792,-1817,-1841,-1865,-1890,-1916,-1941,-1961,-1980,-1999,-2021,-2045,-2068,-2090,-2109,-2129,-2150,-2169,-2184,-2199,
+-2216,-2239,-2268,-2298,-2324,-2349,-2373,-2400,-2428,-2455,-2478,-2499,-2521,-2546,-2573,-2599,-2624,-2650,-2680,-2712,-2742,
+-2768,-2787,-2804,-2821,-2839,-2858,-2876,-2894,-2913,-2934,-2953,-2967,-2975,-2980,-2986,-2993,-3000,-3004,-3006,-3007,-3009,
+-3012,-3016,-3019,-3021,-3021,-3020,-3016,-3007,-2997,-2989,-2984,-2978,-2969,-2956,-2945,-2942,-2947,-2951,-2946,-2928,-2908,
+-2894,-2893,-2896,-2894,-2885,-2881,-2897,-2938,-2989,-3020,-3002,-2925,-2798,-2648,-2508,-2402,-2339,-2312,-2303,-2289,-2258,
+-2209,-2153,-2102,-2062,-2031,-2004,-1978,-1956,-1939,-1925,-1909,-1889,-1866,-1846,-1829,-1813,-1794,-1769,-1742,-1716,-1693,
+-1671,-1651,-1633,-1619,-1603,-1580,-1544,-1498,-1452,-1416,-1390,-1369,-1343,-1313,-1285,-1268,-1262,-1261,-1255,-1237,-1207,
+-1169,-1128,-1090,-1061,-1042,-1030,-1011,-970,-908,-851,-839,-903,-1041,-1211,-1352,-1418,-1403,-1337,-1270,-1237,-1247,
+-1286,-1335,-1380,-1421,-1461,-1500,-1530,-1543,-1533,-1510,-1490,-1493,-1528,-1592,-1667,-1734,-1782,-1818,-1853,-1903,-1970,
+-2046,-2121,-2192,-2261,-2333,-2406,-2472,-2525,-2565,-2597,-2629,-2659,-2679,-2684,-2673,-2657,-2643,-2638,-2640,-2648,-2663,
+-2688,-2720,-2755,-2788,-2820,-2852,-2886,-2915,-2929,-2924,-2911,-2910,-2938,-2990,-3045,-3079,-3083,-3071,-3070,-3102,-3171,
+-3258,-3340,-3404,-3448,-3481,-3507,-3524,-3530,-3525,-3519,-3519,-3529,-3542,-3547,-3539,-3517,-3492,-3468,-3448,-3429,-3406,
+-3380,-3356,-3339,-3334,-3342,-3362,-3393,-3429,-3461,-3483,-3494,-3502,-3514,-3532,-3554,-3573,-3587,-3597,-3608,-3621,-3636,
+-3652,-3668,-3683,-3695,-3699,-3694,-3679,-3662,-3647,-3636,-3627,-3618,-3608,-3596,-3580,-3552,-3509,-3456,-3403,-3358,-3314,
+-3258,-3186,-3111,-3057,-3045,-3065,-3084,-3065,-2996,-2902,-2824,-2788,-2791,-2806,-2807,-2787,-2758,-2732,-2712,-2693,-2669,
+-2646,-2633,-2632,-2634,-2625,-2601,-2567,-2537,-2517,-2501,-2478,-2448,-2419,-2407,-2420,-2449,-2472,-2471,-2443,-2398,-2351,
+-2311,-2278,-2245,-2210,-2174,-2142,-2117,-2097,-2075,-2049,-2021,-1995,-1974,-1955,-1932,-1902,-1864,-1825,-1791,-1768,-1759,
+-1762,-1774,-1790,-1801,-1797,-1771,-1723,-1654,-1565,-1458,-1338,-1212,-1094,-995,-922,-869,-829,-795,-765,-738,-709,
+-668,-604,-514,-401,-271,-128,22,178,335,488,635,775,909,1035,1150,1252,1343,1428,1508,1579,1635,
+1671,1695,1718,1747,1784,1822,1855,1883,1911,1948,1994,2048,2106,2166,2226,2287,2346,2405,2466,2535,2613,
+2695,2772,2840,2900,2961,3031,3109,3191,3268,3338,3400,3458,3516,3575,3636,3701,3771,3845,3919,3990,4059,
+4131,4209,4290,4367,4432,4484,4527,4571,4623,4684,4751,4820,4888,4952,5012,5067,5117,5164,5209,5254,5302,
+5354,5411,5474,5541,5608,5670,5725,5776,5826,5877,5931,5986,6042,6095,6145,6187,6221,6246,6264,6276,6282,
+6282,6276,6269,6265,6266,6272,6277,6280,6280,6278,6277,6274,6267,6255,6238,6219,6203,6194,6197,6208,6220,
+6220,6199,6160,6115,6078,6057,6044,6024,5986,5929,5870,5825,5807,5811,5829,5849,5865,5872,5868,5853,5828,
+5796,5762,5728,5690,5647,5600,5556,5519,5485,5443,5388,5323,5264,5227,5216,5221,5226,5226,5231,5257,5309,
+5371,5411,5402,5339,5245,5159,5113,5123,5183,5267,5348,5406,5437,5454,5479,5521,5577,5626,5648,5637,5607,
+5578,5563,5558,5552,5535,5510,5483,5459,5435,5401,5355,5298,5238,5181,5126,5072,5020,4975,4947,4942,4960,
+4993,5029,5054,5060,5051,5039,5035,5044,5210,5228,5232,5216,5184,5148,5119,5095,5072,5048,5024,5007,4995,
+4986,4977,4969,4968,4967,4957,4929,4889,4852,4831,4820,4797,4746,4674,4611,4582,4587,4601,4596,4573,4559,
+4585,4655,4747,4823,4859,4863,4854,4853,4864,4877,4884,4881,4870,4855,4841,4826,4807,4773,4712,4618,4503,
+4393,4314,4282,4286,4302,4308,4300,4289,4292,4312,4338,4354,4349,4327,4300,4282,4278,4286,4304,4331,4368,
+4413,4463,4510,4547,4569,4571,4550,4508,4453,4402,4370,4366,4382,4405,4416,4408,4381,4342,4302,4264,4233,
+4206,4180,4151,4115,4073,4030,3991,3956,3921,3883,3839,3794,3749,3702,3646,3571,3472,3349,3215,3090,2995,
+2944,2933,2943,2948,2932,2896,2849,2796,2734,2655,2559,2458,2370,2302,2251,2201,2148,2097,2060,2044,2040,
+2033,2015,1987,1961,1946,1946,1957,1976,1995,2005,1992,1950,1882,1797,1709,1624,1549,1494,1474,1504,1588,
+1711,1848,1977,2086,2177,2250,2304,2332,2331,2307,2269,2221,2159,2070,1953,1815,1677,1553,1443,1329,1191,
+1021,833,651,494,358,225,71,-105,-288,-449,-567,-639,-681,-712,-743,-777,-810,-840,-869,-896,-923,
+-949,-974,-1002,-1036,-1077,-1124,-1174,-1225,-1274,-1324,-1378,-1440,-1513,-1594,-1674,-1743,-1794,-1829,-1859,-1892,-1934,
+-1981,-2031,-2082,-2138,-2201,-2271,-2341,-2407,-2467,-2522,-2571,-2614,-2647,-2672,-2693,-2714,-2739,-2769,-2803,-2843,-2888,
+-2939,-2995,-3051,-3105,-3151,-3186,-3209,-3224,-3242,-3272,-3319,-3379,-3443,-3504,-3564,-3628,-3699,-3770,-3832,-3880,-3917,
+-3953,-3995,-4044,-4096,-4143,-4183,-4216,-4240,-4255,-4256,-4242,-4209,-4155,-4084,-4012,-3961,-3955,-3997,-4068,-4133,-4169,
+-4171,-4154,-4138,-4135,-4146,-4170,-4210,-4265,-4323,-4366,-4377,-4358,-4324,-4295,-4276,-4259,-4231,-4195,-4162,-4142,-4135,
+-4130,-4120,-4110,-4116,-4150,-4206,-4269,-4328,-4381,-4440,-4508,-4579,-4636,-4667,-4672,-4660,-4644,-4634,-4639,-4668,-4723,
+-4793,-4856,-4895,-4909,-4915,-4938,-4985,-5040,-5068,-5044,-4966,-4862,-4770,-4724,-4738,-4804,-4897,-4992,-5075,-5156,-5264,
+-5430,-5663,-5936,-6199,-6395,-6498,-6513,-6473,-6412,-6356,-6318,-6301,-6310,-6340,-6383,-6424,-6452,-6458,-6442,-6407,-6357,
+-6295,-6226,-6152,-6071,-5973,-5857,-5733,-5632,-5590,-5625,-5724,-5847,-5946,-5986,-5959,-5886,-5797,-5721,-5676,-5657,-5651,
+-5640,-5615,-5581,-5551,-5537,-5531,-5517,-5478,-5412,-5336,-5272,-5230,-5204,-5179,-5142,-5092,-5041,-4999,-4970,-4947,-4920,
+-4881,-4824,-4751,-4669,-4588,-4517,-4459,-4414,-4377,-4345,-4317,-4289,-4257,-4213,-4159,-4099,-4041,-3989,-3937,-3874,-3794,
+-3702,-3607,-3520,-3439,-3361,-3282,-3203,-3127,-3054,-2978,-2894,-2804,-2715,-2635,-2564,-2495,-2420,-2337,-2251,-2165,-2078,
+-1983,-1878,-1766,-1651,-1537,-1422,-1302,-1178,-1056,-941,-836,-734,-631,-529,-434,-355,-296,-253,-218,-185,-149,
+-111,-70,-26,20,72,128,185,242,295,345,394,444,495,545,594,645,701,764,832,901,975,
+1061,1168,1291,1414,1522,1610,1693,1783,1881,1971,2036,2073,2100,2134,2175,2209,2222,2224,2244,2305,2399,
+2493,2550,2560,2540,2521,2516,2522,2527,2533,2550,2585,2627,2655,2653,2628,2604,2602,2626,2659,2679,2676,
+2655,2628,2605,2587,2573,2565,2568,2589,2623,2661,2693,2717,2741,2771,2809,2844,2866,2872,2879,2907,2968,
+3059,3162,3257,3322,3345,3314,3234,3133,3054,3033,3073,3131,3148,3089,2974,2863,2810,2829,2881,2913,2889,
+2807,2687,2537,2356,2135,1877,1599,1320,1053,803,577,395,279,244,291,404,561,740,919,1081,1213,
+1312,1383,1433,1466,1481,1479,1463,1440,1418,1397,1375,1350,1322,1294,1265,1234,1200,1165,1127,1085,1035,
+979,921,867,822,782,741,691,634,573,518,471,431,394,354,309,259,212,174,145,120,91,
+52,4,-45,-92,-135,-177,-218,-256,-290,-324,-359,-396,-430,-456,-474,-491,-512,-532,-545,-547,-548,
+-562,-591,-624,-645,-653,-662,-690,-741,-801,-860,-921,-997,-1081,-1136,-1112,-995,-836,-725,-734,-862,-1038,
+-1172,-1215,-1180,-1111,-1045,-993,-949,-916,-903,-916,-947,-980,-1010,-1043,-1085,-1130,-1158,-1151,-1109,-1053,-1006,
+-979,-968,-967,-974,-987,-1002,-1009,-1000,-981,-966,-962,-970,-977,-975,-968,-963,-962,-961,-952,-937,-924,
+-920,-926,-933,-933,-927,-921,-918,-915,-909,-900,-893,-894,-899,-901,-892,-873,-853,-837,-826,-812,-791,
+-763,-735,-713,-700,-696,-698,-704,-712,-718,-721,-719,-715,-710,-707,-703,-699,-694,-690,-689,-689,-690,
+-691,-690,-690,-688,-685,-681,-679,-680,-686,-697,-709,-718,-726,-732,-740,-751,-765,-779,-792,-800,-805,
+-807,-808,-809,-811,-816,-824,-831,-839,-847,-857,-870,-888,-908,-928,-947,-964,-980,-995,-1008,-1019,-1030,
+-1042,-1056,-1071,-1087,-1102,-1117,-1135,-1154,-1172,-1187,-1200,-1213,-1229,-1247,-1268,-1291,-1315,-1341,-1368,-1394,-1417,
+-1439,-1463,-1492,-1524,-1555,-1584,-1611,-1638,-1668,-1699,-1730,-1757,-1783,-1808,-1832,-1855,-1878,-1902,-1927,-1954,-1979,
+-2001,-2022,-2043,-2068,-2094,-2117,-2136,-2153,-2170,-2190,-2211,-2230,-2247,-2265,-2287,-2313,-2340,-2365,-2389,-2414,-2443,
+-2474,-2502,-2524,-2544,-2566,-2591,-2617,-2641,-2662,-2682,-2706,-2735,-2765,-2791,-2813,-2832,-2853,-2875,-2897,-2915,-2930,
+-2945,-2964,-2985,-3002,-3012,-3016,-3017,-3021,-3028,-3036,-3040,-3041,-3039,-3039,-3041,-3043,-3047,-3050,-3051,-3048,-3041,
+-3031,-3022,-3016,-3009,-2998,-2984,-2972,-2966,-2967,-2968,-2962,-2947,-2929,-2917,-2915,-2915,-2907,-2889,-2877,-2887,-2928,
+-2984,-3020,-3004,-2923,-2790,-2638,-2503,-2411,-2364,-2349,-2342,-2321,-2279,-2223,-2167,-2124,-2094,-2069,-2040,-2007,-1975,
+-1953,-1939,-1927,-1910,-1886,-1859,-1832,-1811,-1792,-1774,-1754,-1727,-1693,-1655,-1620,-1598,-1594,-1600,-1602,-1589,-1560,
+-1524,-1491,-1463,-1435,-1402,-1366,-1336,-1317,-1307,-1297,-1278,-1252,-1220,-1186,-1149,-1112,-1081,-1067,-1072,-1079,-1063,
+-1010,-937,-890,-911,-1013,-1161,-1295,-1364,-1359,-1310,-1261,-1240,-1249,-1272,-1296,-1324,-1363,-1415,-1466,-1498,-1500,
+-1480,-1463,-1471,-1513,-1581,-1655,-1718,-1760,-1785,-1806,-1832,-1873,-1927,-1988,-2050,-2111,-2173,-2238,-2305,-2371,-2430,
+-2482,-2530,-2577,-2620,-2651,-2662,-2655,-2637,-2620,-2611,-2616,-2632,-2656,-2686,-2720,-2757,-2799,-2848,-2901,-2943,-2960,
+-2942,-2903,-2872,-2880,-2938,-3025,-3102,-3137,-3126,-3093,-3076,-3099,-3159,-3236,-3307,-3360,-3399,-3430,-3457,-3475,-3482,
+-3479,-3477,-3484,-3502,-3522,-3532,-3524,-3501,-3471,-3442,-3420,-3405,-3396,-3391,-3389,-3386,-3378,-3368,-3362,-3371,-3396,
+-3433,-3471,-3499,-3516,-3529,-3543,-3559,-3575,-3591,-3606,-3621,-3634,-3646,-3655,-3662,-3669,-3675,-3672,-3657,-3631,-3598,
+-3569,-3549,-3539,-3537,-3540,-3541,-3531,-3503,-3457,-3403,-3354,-3319,-3291,-3255,-3207,-3158,-3128,-3130,-3151,-3158,-3118,
+-3030,-2924,-2840,-2803,-2807,-2822,-2822,-2801,-2768,-2738,-2715,-2698,-2683,-2673,-2669,-2669,-2666,-2653,-2629,-2603,-2581,
+-2562,-2539,-2506,-2468,-2441,-2437,-2455,-2480,-2490,-2472,-2429,-2376,-2329,-2293,-2267,-2244,-2219,-2194,-2175,-2162,-2153,
+-2142,-2126,-2108,-2096,-2093,-2098,-2101,-2095,-2075,-2048,-2021,-2002,-1992,-1988,-1984,-1975,-1956,-1923,-1872,-1805,-1721,
+-1624,-1513,-1393,-1269,-1152,-1055,-982,-931,-893,-860,-829,-798,-763,-719,-661,-585,-490,-377,-247,-104,50,
+209,367,523,676,823,957,1068,1155,1228,1301,1384,1473,1555,1615,1653,1679,1706,1741,1779,1810,1834,
+1855,1884,1926,1982,2045,2110,2173,2235,2297,2360,2427,2500,2577,2655,2728,2794,2856,2920,2990,3066,3142,
+3213,3278,3340,3400,3460,3523,3589,3661,3742,3828,3910,3983,4050,4117,4190,4269,4345,4409,4458,4500,4545,
+4600,4663,4729,4791,4851,4909,4968,5026,5078,5127,5173,5222,5276,5335,5397,5461,5524,5587,5648,5704,5757,
+5807,5859,5915,5973,6031,6086,6135,6174,6204,6225,6239,6246,6245,6238,6228,6222,6221,6226,6232,6236,6235,
+6232,6228,6226,6223,6217,6207,6193,6177,6160,6148,6145,6154,6169,6178,6166,6130,6079,6033,6003,5986,5965,
+5926,5868,5809,5768,5760,5780,5810,5834,5839,5828,5803,5771,5736,5703,5674,5651,5631,5610,5586,5556,5517,
+5466,5398,5313,5224,5147,5098,5080,5086,5105,5135,5182,5257,5355,5456,5525,5537,5486,5393,5296,5234,5226,
+5274,5355,5438,5496,5523,5531,5545,5577,5620,5655,5664,5649,5629,5622,5631,5642,5636,5609,5573,5544,5529,
+5520,5503,5468,5418,5361,5304,5249,5195,5142,5094,5055,5030,5023,5036,5066,5104,5139,5162,5176,5191,5210,
+5300,5323,5334,5329,5311,5287,5263,5233,5193,5141,5087,5042,5009,4982,4956,4932,4914,4903,4887,4856,4812,
+4766,4729,4699,4664,4617,4570,4545,4555,4584,4603,4598,4586,4605,4678,4786,4883,4926,4909,4866,4837,4838,
+4861,4882,4891,4888,4884,4883,4885,4889,4890,4880,4840,4756,4628,4486,4370,4312,4311,4336,4354,4348,4331,
+4325,4342,4372,4393,4388,4353,4301,4248,4202,4167,4148,4148,4174,4223,4288,4356,4415,4456,4472,4460,4424,
+4378,4343,4334,4356,4393,4426,4441,4437,4424,4406,4382,4349,4305,4256,4212,4176,4144,4110,4071,4027,3982,
+3939,3898,3858,3819,3781,3738,3680,3598,3487,3354,3218,3102,3026,2994,2993,3001,2992,2957,2903,2844,2785,
+2721,2642,2547,2451,2374,2327,2300,2279,2252,2225,2208,2205,2206,2196,2166,2123,2078,2043,2021,2009,2009,
+2017,2029,2035,2024,1991,1938,1874,1805,1733,1666,1614,1593,1609,1655,1717,1780,1842,1904,1969,2030,2075,
+2093,2090,2080,2075,2080,2082,2063,2013,1938,1852,1763,1667,1551,1404,1237,1068,917,778,626,433,195,
+-59,-287,-451,-546,-594,-629,-673,-729,-788,-840,-880,-913,-941,-965,-985,-1005,-1029,-1060,-1102,-1151,-1204,
+-1254,-1301,-1348,-1404,-1473,-1555,-1641,-1719,-1783,-1832,-1876,-1922,-1973,-2026,-2078,-2129,-2182,-2240,-2300,-2357,-2409,
+-2458,-2508,-2558,-2603,-2636,-2655,-2664,-2673,-2690,-2718,-2758,-2806,-2859,-2916,-2974,-3032,-3087,-3135,-3172,-3193,-3204,
+-3214,-3234,-3271,-3322,-3377,-3433,-3489,-3554,-3628,-3708,-3785,-3852,-3911,-3967,-4022,-4074,-4120,-4159,-4198,-4241,-4285,
+-4322,-4345,-4347,-4326,-4276,-4195,-4093,-3991,-3918,-3894,-3913,-3951,-3982,-3990,-3978,-3954,-3927,-3906,-3900,-3921,-3973,
+-4043,-4108,-4146,-4154,-4147,-4142,-4140,-4129,-4097,-4046,-3994,-3964,-3962,-3982,-4011,-4042,-4072,-4104,-4135,-4165,-4197,
+-4241,-4301,-4367,-4422,-4455,-4466,-4469,-4476,-4487,-4499,-4508,-4525,-4560,-4616,-4677,-4724,-4751,-4771,-4809,-4878,-4964,
+-5029,-5041,-4990,-4900,-4818,-4792,-4843,-4958,-5095,-5204,-5261,-5282,-5321,-5436,-5653,-5945,-6245,-6484,-6626,-6679,-6678,
+-6659,-6640,-6622,-6602,-6580,-6559,-6541,-6527,-6518,-6514,-6513,-6508,-6493,-6465,-6427,-6380,-6322,-6239,-6123,-5980,-5840,
+-5741,-5710,-5744,-5814,-5881,-5917,-5911,-5871,-5813,-5758,-5719,-5699,-5693,-5688,-5672,-5646,-5617,-5595,-5576,-5552,-5511,
+-5458,-5405,-5369,-5351,-5339,-5312,-5261,-5191,-5120,-5063,-5025,-4999,-4975,-4942,-4892,-4824,-4743,-4655,-4570,-4498,-4441,
+-4396,-4361,-4332,-4305,-4274,-4235,-4185,-4128,-4070,-4011,-3949,-3874,-3784,-3686,-3589,-3501,-3421,-3344,-3266,-3187,-3111,
+-3040,-2967,-2888,-2801,-2711,-2624,-2542,-2461,-2377,-2291,-2206,-2123,-2038,-1942,-1836,-1722,-1607,-1494,-1380,-1259,-1134,
+-1013,-903,-803,-706,-605,-500,-400,-316,-252,-206,-171,-141,-112,-83,-48,-3,50,111,173,233,290,
+343,394,441,486,528,569,610,658,715,780,850,923,1004,1101,1220,1354,1483,1592,1681,1769,1870,
+1981,2076,2128,2133,2117,2116,2143,2188,2228,2258,2297,2362,2449,2526,2558,2536,2483,2439,2428,2445,2471,
+2494,2513,2539,2573,2603,2620,2620,2616,2620,2633,2647,2648,2632,2606,2584,2574,2577,2587,2599,2616,2642,
+2675,2708,2733,2749,2764,2789,2825,2862,2888,2903,2921,2963,3039,3138,3236,3316,3364,3372,3326,3219,3071,
+2932,2862,2885,2963,3012,2962,2810,2621,2481,2433,2452,2472,2438,2335,2183,2008,1820,1615,1395,1172,962,
+777,622,502,431,423,485,607,766,939,1107,1255,1375,1461,1514,1543,1556,1559,1553,1536,1511,1481,
+1452,1423,1393,1359,1325,1292,1260,1226,1188,1146,1100,1050,995,937,880,826,778,730,680,627,576,
+529,488,448,407,362,316,268,220,174,134,102,75,46,8,-36,-81,-120,-156,-195,-240,-288,
+-330,-361,-388,-415,-446,-476,-500,-519,-536,-552,-564,-571,-578,-591,-615,-643,-664,-680,-699,-733,-779,
+-826,-869,-925,-1013,-1124,-1207,-1195,-1063,-864,-709,-689,-816,-1014,-1179,-1247,-1226,-1162,-1097,-1041,-989,-944,
+-920,-926,-956,-990,-1016,-1039,-1074,-1120,-1162,-1176,-1156,-1113,-1068,-1033,-1012,-1001,-998,-1005,-1018,-1028,-1027,
+-1016,-1004,-998,-1000,-1003,-1002,-1001,-1002,-1003,-1001,-991,-977,-968,-969,-977,-984,-986,-983,-981,-981,-977,
+-967,-954,-946,-950,-959,-963,-954,-935,-915,-900,-887,-869,-842,-809,-779,-759,-748,-744,-742,-744,-747,
+-752,-755,-754,-752,-748,-746,-745,-743,-740,-738,-735,-733,-732,-730,-729,-727,-723,-719,-714,-714,-719,
+-730,-744,-755,-763,-768,-773,-781,-794,-810,-826,-837,-842,-842,-841,-842,-846,-853,-862,-871,-879,-887,
+-894,-902,-913,-929,-948,-969,-989,-1008,-1026,-1044,-1059,-1071,-1080,-1088,-1099,-1111,-1123,-1134,-1145,-1158,-1174,
+-1192,-1207,-1221,-1234,-1250,-1270,-1294,-1321,-1350,-1381,-1412,-1440,-1464,-1483,-1503,-1528,-1558,-1590,-1621,-1650,-1678,
+-1708,-1738,-1767,-1793,-1816,-1840,-1864,-1889,-1914,-1940,-1966,-1993,-2018,-2039,-2059,-2080,-2105,-2131,-2153,-2171,-2187,
+-2204,-2226,-2250,-2274,-2295,-2314,-2336,-2360,-2384,-2408,-2431,-2457,-2487,-2518,-2546,-2568,-2588,-2609,-2634,-2661,-2685,
+-2703,-2721,-2741,-2767,-2795,-2819,-2838,-2856,-2877,-2902,-2927,-2947,-2962,-2974,-2991,-3011,-3031,-3045,-3051,-3053,-3056,
+-3062,-3071,-3077,-3078,-3076,-3072,-3069,-3069,-3071,-3074,-3078,-3078,-3073,-3064,-3054,-3045,-3039,-3031,-3021,-3009,-3000,
+-2996,-2992,-2983,-2967,-2949,-2937,-2934,-2931,-2918,-2894,-2874,-2876,-2911,-2964,-3004,-2996,-2927,-2807,-2665,-2537,-2445,
+-2394,-2373,-2360,-2336,-2293,-2239,-2187,-2149,-2124,-2102,-2073,-2033,-1992,-1961,-1943,-1933,-1922,-1901,-1873,-1843,-1817,
+-1799,-1785,-1770,-1745,-1707,-1660,-1617,-1591,-1588,-1602,-1617,-1618,-1601,-1571,-1538,-1503,-1465,-1426,-1392,-1371,-1361,
+-1354,-1336,-1306,-1272,-1246,-1228,-1207,-1172,-1131,-1104,-1109,-1142,-1171,-1160,-1102,-1029,-992,-1026,-1120,-1225,-1290,
+-1296,-1263,-1230,-1220,-1230,-1242,-1244,-1246,-1267,-1315,-1376,-1425,-1445,-1444,-1449,-1483,-1550,-1633,-1706,-1755,-1779,
+-1789,-1800,-1820,-1852,-1896,-1949,-2007,-2066,-2124,-2180,-2235,-2287,-2339,-2389,-2440,-2492,-2542,-2582,-2605,-2611,-2604,
+-2593,-2586,-2590,-2605,-2631,-2664,-2704,-2751,-2807,-2869,-2925,-2957,-2947,-2898,-2840,-2814,-2851,-2949,-3069,-3159,-3188,
+-3161,-3115,-3092,-3112,-3166,-3230,-3285,-3325,-3357,-3387,-3415,-3434,-3441,-3440,-3441,-3454,-3478,-3504,-3519,-3514,-3493,
+-3462,-3430,-3403,-3384,-3378,-3385,-3402,-3419,-3424,-3413,-3393,-3381,-3389,-3418,-3459,-3497,-3524,-3541,-3553,-3565,-3578,
+-3593,-3609,-3624,-3635,-3643,-3646,-3648,-3648,-3645,-3633,-3605,-3565,-3519,-3479,-3454,-3444,-3449,-3461,-3470,-3467,-3443,
+-3403,-3355,-3314,-3282,-3254,-3219,-3176,-3140,-3131,-3153,-3187,-3195,-3151,-3059,-2951,-2866,-2828,-2829,-2842,-2845,-2828,
+-2799,-2769,-2744,-2726,-2714,-2709,-2708,-2706,-2697,-2679,-2655,-2632,-2613,-2592,-2563,-2528,-2494,-2474,-2474,-2485,-2491,
+-2478,-2443,-2398,-2357,-2331,-2319,-2314,-2308,-2297,-2285,-2275,-2271,-2268,-2262,-2253,-2244,-2243,-2256,-2279,-2299,-2303,
+-2288,-2256,-2220,-2189,-2165,-2144,-2122,-2094,-2055,-2004,-1939,-1862,-1774,-1678,-1574,-1462,-1346,-1232,-1131,-1052,-995,
+-954,-919,-884,-846,-806,-763,-713,-653,-576,-478,-356,-215,-61,97,256,415,572,720,846,937,996,
+1041,1098,1181,1283,1383,1460,1509,1544,1584,1636,1691,1736,1765,1785,1813,1859,1924,1998,2071,2136,2194,
+2251,2313,2382,2458,2536,2612,2682,2745,2806,2870,2940,3014,3087,3156,3219,3281,3343,3407,3474,3545,3625,
+3712,3802,3887,3962,4029,4096,4170,4249,4324,4387,4435,4477,4523,4580,4641,4701,4756,4809,4865,4925,4986,
+5040,5089,5138,5194,5258,5325,5390,5450,5507,5566,5626,5686,5742,5793,5844,5897,5955,6016,6074,6125,6166,
+6195,6214,6222,6221,6212,6201,6192,6189,6192,6197,6199,6196,6190,6183,6178,6174,6167,6157,6146,6138,6132,
+6124,6115,6109,6110,6118,6124,6114,6080,6029,5978,5942,5921,5902,5870,5821,5770,5736,5730,5748,5771,5780,
+5769,5741,5707,5674,5644,5618,5598,5584,5576,5569,5558,5534,5494,5433,5355,5264,5175,5100,5053,5034,5039,
+5063,5103,5164,5247,5343,5434,5497,5514,5483,5421,5351,5300,5289,5322,5388,5464,5523,5555,5567,5579,5602,
+5634,5658,5665,5660,5661,5681,5711,5728,5713,5666,5610,5568,5549,5540,5523,5487,5438,5386,5340,5298,5258,
+5215,5169,5120,5073,5037,5023,5041,5087,5145,5200,5241,5273,5300,5247,5261,5271,5276,5278,5281,5282,5273,
+5243,5192,5132,5075,5026,4980,4932,4884,4847,4825,4810,4787,4751,4707,4665,4628,4590,4553,4528,4532,4561,
+4594,4603,4591,4593,4652,4777,4924,5021,5024,4948,4852,4794,4792,4822,4850,4863,4866,4873,4886,4899,4909,
+4918,4925,4915,4864,4761,4624,4496,4416,4394,4407,4424,4424,4415,4414,4429,4448,4449,4415,4348,4263,4177,
+4101,4038,3994,3973,3982,4021,4085,4164,4247,4321,4373,4393,4379,4346,4320,4320,4351,4397,4437,4457,4461,
+4458,4450,4429,4385,4318,4241,4173,4127,4097,4072,4043,4009,3974,3942,3915,3890,3867,3843,3810,3757,3673,
+3558,3421,3285,3171,3097,3065,3057,3051,3024,2970,2900,2829,2766,2705,2634,2552,2470,2410,2384,2386,2400,
+2410,2415,2418,2421,2416,2392,2347,2287,2228,2176,2135,2100,2072,2054,2045,2043,2040,2029,2006,1972,1926,
+1872,1816,1765,1731,1715,1714,1717,1720,1726,1743,1777,1822,1863,1887,1893,1892,1904,1937,1981,2013,2010,
+1967,1897,1821,1746,1667,1571,1456,1333,1216,1099,955,753,488,189,-91,-305,-439,-515,-569,-629,-702,
+-781,-854,-915,-963,-1000,-1026,-1042,-1051,-1059,-1073,-1096,-1129,-1170,-1215,-1261,-1309,-1361,-1422,-1494,-1572,-1651,
+-1723,-1789,-1852,-1916,-1982,-2046,-2107,-2164,-2222,-2279,-2333,-2381,-2423,-2464,-2509,-2558,-2603,-2635,-2652,-2657,-2661,
+-2672,-2696,-2732,-2780,-2837,-2900,-2967,-3031,-3090,-3139,-3176,-3201,-3216,-3229,-3249,-3278,-3315,-3354,-3392,-3434,-3488,
+-3558,-3641,-3729,-3815,-3896,-3970,-4035,-4085,-4122,-4154,-4191,-4239,-4292,-4338,-4366,-4375,-4365,-4331,-4261,-4153,-4019,
+-3888,-3789,-3739,-3731,-3744,-3760,-3766,-3757,-3732,-3698,-3669,-3662,-3688,-3738,-3789,-3822,-3833,-3837,-3849,-3874,-3897,
+-3906,-3899,-3889,-3896,-3928,-3983,-4047,-4104,-4138,-4139,-4111,-4072,-4053,-4075,-4131,-4189,-4212,-4188,-4142,-4118,-4145,
+-4217,-4306,-4385,-4452,-4522,-4609,-4705,-4787,-4835,-4854,-4870,-4907,-4966,-5026,-5054,-5035,-4984,-4944,-4960,-5061,-5233,
+-5427,-5581,-5658,-5668,-5664,-5711,-5839,-6031,-6235,-6398,-6502,-6560,-6599,-6635,-6663,-6670,-6648,-6602,-6546,-6491,-6449,
+-6427,-6426,-6443,-6467,-6486,-6489,-6477,-6454,-6418,-6361,-6274,-6163,-6048,-5955,-5903,-5888,-5892,-5894,-5883,-5858,-5825,
+-5787,-5751,-5721,-5702,-5694,-5690,-5682,-5666,-5645,-5624,-5603,-5578,-5544,-5506,-5471,-5448,-5435,-5419,-5384,-5326,-5254,
+-5182,-5122,-5076,-5038,-5002,-4961,-4913,-4853,-4782,-4701,-4619,-4545,-4484,-4434,-4394,-4359,-4325,-4290,-4250,-4204,-4149,
+-4087,-4017,-3939,-3851,-3756,-3658,-3566,-3481,-3401,-3320,-3236,-3154,-3078,-3009,-2940,-2865,-2779,-2688,-2596,-2507,-2419,
+-2329,-2240,-2153,-2068,-1982,-1888,-1785,-1677,-1569,-1460,-1347,-1228,-1105,-989,-886,-793,-701,-602,-498,-400,-317,
+-253,-203,-163,-129,-100,-72,-36,12,74,140,204,262,315,369,421,471,515,553,589,628,675,
+732,799,872,953,1044,1152,1277,1411,1537,1643,1734,1828,1938,2058,2155,2202,2196,2165,2151,2175,2227,
+2282,2326,2369,2429,2502,2563,2578,2537,2466,2406,2383,2395,2421,2438,2444,2448,2461,2482,2503,2519,2529,
+2539,2551,2561,2562,2555,2545,2542,2554,2578,2608,2636,2660,2684,2711,2738,2760,2776,2792,2816,2848,2881,
+2906,2927,2963,3032,3132,3239,3323,3368,3379,3360,3297,3168,2974,2763,2616,2589,2661,2741,2723,2570,2334,
+2116,1989,1952,1946,1908,1811,1672,1520,1368,1217,1064,918,791,697,639,621,649,724,842,985,1131,
+1265,1380,1475,1546,1593,1616,1622,1619,1612,1598,1575,1543,1508,1473,1437,1398,1355,1312,1271,1233,1195,
+1153,1108,1059,1006,950,891,833,780,729,675,619,564,518,483,455,420,376,324,274,230,190,
+148,106,66,32,-1,-37,-77,-115,-146,-175,-211,-259,-312,-357,-388,-410,-434,-465,-498,-524,-541,
+-555,-571,-589,-605,-616,-627,-643,-664,-683,-702,-727,-766,-815,-860,-901,-953,-1040,-1156,-1245,-1235,-1095,
+-877,-700,-669,-802,-1020,-1207,-1289,-1270,-1203,-1136,-1082,-1034,-988,-958,-958,-983,-1014,-1034,-1046,-1067,-1105,
+-1150,-1180,-1182,-1161,-1130,-1100,-1074,-1051,-1032,-1026,-1031,-1044,-1053,-1054,-1048,-1040,-1034,-1032,-1033,-1041,-1051,
+-1059,-1058,-1047,-1034,-1029,-1034,-1044,-1048,-1044,-1037,-1034,-1033,-1028,-1016,-1000,-991,-994,-1002,-1005,-997,-979,
+-962,-948,-934,-913,-884,-853,-829,-815,-809,-803,-797,-791,-787,-787,-788,-788,-786,-785,-784,-784,-785,
+-784,-783,-780,-776,-771,-766,-761,-756,-749,-743,-739,-742,-753,-768,-785,-797,-803,-805,-806,-812,-825,
+-842,-859,-872,-878,-879,-880,-884,-892,-902,-912,-921,-930,-939,-946,-952,-959,-970,-985,-1003,-1021,-1039,
+-1057,-1076,-1094,-1108,-1117,-1125,-1133,-1144,-1157,-1168,-1179,-1191,-1207,-1225,-1241,-1255,-1269,-1285,-1306,-1332,-1360,
+-1389,-1419,-1450,-1478,-1501,-1520,-1538,-1560,-1588,-1619,-1649,-1678,-1707,-1737,-1767,-1794,-1817,-1839,-1862,-1888,-1917,
+-1946,-1974,-2003,-2031,-2056,-2077,-2095,-2115,-2137,-2161,-2184,-2204,-2221,-2240,-2264,-2290,-2316,-2339,-2361,-2383,-2408,
+-2433,-2457,-2481,-2506,-2533,-2560,-2585,-2606,-2625,-2646,-2672,-2699,-2723,-2743,-2761,-2783,-2809,-2835,-2858,-2874,-2887,
+-2904,-2927,-2952,-2975,-2991,-3003,-3016,-3034,-3053,-3070,-3081,-3086,-3091,-3097,-3104,-3109,-3112,-3111,-3108,-3105,-3102,
+-3101,-3102,-3104,-3105,-3100,-3089,-3077,-3068,-3063,-3060,-3053,-3043,-3032,-3025,-3019,-3010,-2995,-2977,-2963,-2957,-2953,
+-2941,-2919,-2897,-2892,-2914,-2957,-2995,-2998,-2951,-2856,-2734,-2609,-2505,-2432,-2390,-2367,-2346,-2315,-2272,-2227,-2189,
+-2160,-2135,-2103,-2059,-2012,-1974,-1951,-1941,-1932,-1917,-1894,-1866,-1841,-1820,-1803,-1783,-1756,-1720,-1678,-1639,-1614,
+-1605,-1609,-1615,-1611,-1595,-1569,-1539,-1505,-1467,-1430,-1404,-1395,-1398,-1397,-1379,-1344,-1309,-1293,-1295,-1295,-1269,
+-1216,-1164,-1150,-1189,-1255,-1298,-1283,-1219,-1151,-1129,-1166,-1234,-1284,-1291,-1264,-1237,-1231,-1244,-1249,-1230,-1197,
+-1179,-1200,-1259,-1332,-1396,-1444,-1490,-1549,-1623,-1699,-1756,-1789,-1800,-1804,-1811,-1825,-1849,-1885,-1935,-1994,-2056,
+-2114,-2163,-2204,-2241,-2279,-2320,-2365,-2413,-2462,-2506,-2541,-2562,-2570,-2569,-2565,-2565,-2576,-2603,-2647,-2706,-2774,
+-2842,-2901,-2934,-2930,-2885,-2819,-2768,-2774,-2854,-2985,-3117,-3199,-3211,-3174,-3130,-3117,-3143,-3194,-3246,-3285,-3311,
+-3334,-3358,-3381,-3396,-3402,-3405,-3412,-3431,-3457,-3482,-3494,-3490,-3474,-3450,-3424,-3398,-3375,-3363,-3367,-3390,-3421,
+-3445,-3450,-3436,-3418,-3412,-3427,-3459,-3495,-3524,-3542,-3552,-3560,-3570,-3583,-3596,-3608,-3616,-3619,-3619,-3616,-3610,
+-3597,-3572,-3533,-3483,-3432,-3390,-3365,-3357,-3365,-3381,-3397,-3403,-3393,-3369,-3337,-3305,-3270,-3227,-3172,-3117,-3084,
+-3090,-3132,-3180,-3196,-3157,-3070,-2971,-2896,-2862,-2861,-2872,-2876,-2865,-2843,-2816,-2790,-2770,-2757,-2751,-2750,-2747,
+-2735,-2715,-2690,-2664,-2639,-2611,-2580,-2549,-2527,-2520,-2522,-2521,-2505,-2474,-2435,-2405,-2391,-2395,-2409,-2421,-2426,
+-2423,-2417,-2412,-2410,-2409,-2407,-2402,-2400,-2406,-2423,-2446,-2464,-2462,-2438,-2398,-2353,-2313,-2280,-2251,-2219,-2180,
+-2130,-2069,-1995,-1911,-1820,-1727,-1632,-1533,-1428,-1319,-1217,-1130,-1064,-1014,-972,-930,-885,-840,-797,-755,-708,
+-645,-559,-446,-310,-161,-8,147,304,458,598,705,769,798,819,866,950,1062,1170,1252,1305,1350,
+1407,1483,1565,1633,1677,1705,1739,1791,1865,1948,2026,2092,2148,2201,2260,2328,2405,2484,2560,2628,2690,
+2748,2810,2878,2951,3026,3098,3167,3233,3297,3364,3433,3507,3588,3675,3763,3847,3923,3994,4067,4145,4227,
+4302,4364,4412,4456,4505,4560,4617,4670,4719,4769,4826,4890,4952,5006,5056,5108,5170,5242,5313,5377,5432,
+5486,5544,5609,5675,5734,5785,5832,5881,5937,5998,6059,6113,6155,6185,6201,6205,6199,6187,6176,6170,6172,
+6177,6180,6177,6166,6155,6146,6141,6134,6122,6106,6091,6083,6082,6082,6078,6070,6062,6059,6056,6043,6011,
+5965,5917,5882,5861,5846,5823,5788,5750,5724,5715,5719,5720,5705,5674,5637,5605,5582,5564,5548,5532,5520,
+5512,5506,5497,5474,5433,5373,5300,5223,5151,5095,5059,5045,5048,5065,5095,5140,5199,5264,5324,5367,5387,
+5385,5365,5337,5312,5303,5322,5372,5440,5505,5549,5572,5585,5602,5624,5645,5658,5669,5693,5735,5779,5797,
+5771,5705,5627,5566,5531,5510,5485,5449,5410,5377,5355,5338,5315,5282,5237,5180,5115,5052,5009,5005,5040,
+5100,5160,5204,5230,5247,5111,5106,5107,5114,5129,5154,5182,5202,5200,5172,5127,5077,5024,4965,4897,4829,
+4777,4748,4737,4727,4706,4674,4639,4604,4570,4540,4526,4537,4568,4594,4593,4577,4590,4676,4832,4998,5092,
+5070,4958,4830,4754,4747,4777,4807,4820,4826,4840,4861,4879,4888,4899,4919,4940,4938,4889,4794,4682,4589,
+4536,4518,4519,4527,4540,4559,4575,4572,4530,4448,4337,4219,4111,4019,3942,3881,3838,3821,3834,3882,3962,
+4071,4192,4302,4375,4399,4384,4359,4351,4373,4414,4453,4475,4482,4480,4470,4444,4392,4314,4228,4151,4096,
+4060,4032,4006,3981,3961,3947,3937,3927,3918,3906,3884,3842,3767,3659,3526,3388,3264,3171,3111,3076,3048,
+3010,2953,2883,2815,2757,2710,2663,2610,2557,2522,2518,2545,2589,2631,2659,2669,2660,2633,2585,2522,2454,
+2389,2335,2287,2238,2186,2132,2085,2049,2029,2018,2011,1999,1976,1943,1905,1871,1846,1828,1813,1794,1771,
+1751,1744,1758,1792,1833,1866,1879,1878,1878,1894,1924,1948,1939,1886,1799,1706,1626,1562,1499,1429,1354,
+1284,1216,1125,976,751,467,166,-101,-308,-455,-561,-647,-728,-809,-889,-966,-1033,-1083,-1112,-1120,-1116,
+-1107,-1101,-1100,-1108,-1127,-1160,-1203,-1253,-1305,-1358,-1414,-1475,-1543,-1615,-1691,-1770,-1851,-1932,-2009,-2081,-2151,
+-2220,-2286,-2345,-2394,-2436,-2476,-2521,-2569,-2614,-2648,-2668,-2678,-2687,-2699,-2718,-2746,-2785,-2839,-2905,-2977,-3044,
+-3101,-3146,-3181,-3212,-3241,-3270,-3301,-3332,-3360,-3382,-3402,-3427,-3468,-3529,-3610,-3700,-3791,-3877,-3954,-4016,-4063,
+-4098,-4134,-4181,-4238,-4294,-4334,-4349,-4346,-4330,-4303,-4249,-4156,-4022,-3870,-3732,-3635,-3589,-3586,-3610,-3643,-3668,
+-3674,-3657,-3627,-3603,-3596,-3603,-3612,-3610,-3597,-3589,-3599,-3632,-3678,-3725,-3767,-3807,-3851,-3905,-3968,-4035,-4090,
+-4112,-4082,-4002,-3907,-3848,-3860,-3931,-4004,-4019,-3959,-3868,-3820,-3870,-4015,-4207,-4392,-4548,-4688,-4830,-4971,-5087,
+-5154,-5168,-5154,-5147,-5167,-5209,-5249,-5267,-5262,-5259,-5296,-5401,-5570,-5766,-5935,-6036,-6064,-6055,-6056,-6094,-6163,
+-6238,-6297,-6341,-6383,-6435,-6490,-6525,-6525,-6487,-6427,-6365,-6315,-6283,-6272,-6283,-6311,-6349,-6382,-6401,-6405,-6399,
+-6386,-6360,-6316,-6255,-6189,-6130,-6084,-6044,-5997,-5939,-5874,-5813,-5766,-5731,-5703,-5678,-5657,-5644,-5636,-5631,-5624,
+-5615,-5606,-5597,-5584,-5564,-5539,-5513,-5490,-5468,-5441,-5401,-5350,-5296,-5244,-5195,-5146,-5092,-5035,-4978,-4924,-4871,
+-4812,-4746,-4676,-4608,-4549,-4498,-4454,-4409,-4362,-4312,-4258,-4199,-4132,-4056,-3971,-3879,-3785,-3691,-3601,-3516,-3434,
+-3351,-3263,-3176,-3093,-3020,-2955,-2888,-2812,-2724,-2631,-2537,-2446,-2357,-2267,-2176,-2085,-1997,-1909,-1818,-1722,-1624,
+-1524,-1422,-1312,-1193,-1073,-961,-865,-780,-697,-609,-519,-436,-366,-307,-250,-195,-143,-100,-63,-22,30,
+94,161,221,272,320,372,427,480,526,564,601,644,695,754,822,899,988,1091,1207,1333,1462,
+1584,1691,1787,1882,1987,2094,2181,2228,2234,2220,2222,2255,2313,2373,2421,2462,2510,2564,2602,2600,2548,
+2468,2396,2357,2352,2362,2366,2361,2356,2358,2372,2391,2408,2421,2433,2449,2467,2485,2499,2511,2527,2553,
+2589,2627,2662,2688,2710,2732,2758,2784,2807,2829,2853,2879,2903,2923,2949,3002,3096,3218,3333,3403,3416,
+3390,3343,3264,3119,2888,2609,2374,2268,2299,2386,2407,2293,2069,1825,1648,1559,1517,1466,1380,1270,1161,
+1066,983,906,840,797,786,810,867,957,1073,1202,1325,1427,1503,1559,1603,1636,1655,1660,1656,1648,
+1638,1622,1595,1558,1517,1475,1431,1383,1331,1280,1234,1193,1153,1111,1066,1017,962,902,838,778,724,
+676,626,570,515,469,438,412,380,334,280,231,193,160,121,76,30,-8,-42,-75,-112,-148,
+-179,-207,-241,-286,-336,-380,-409,-431,-457,-491,-525,-548,-561,-572,-591,-618,-642,-657,-667,-681,-700,
+-718,-733,-752,-787,-840,-897,-949,-1002,-1077,-1174,-1252,-1245,-1116,-910,-739,-710,-845,-1068,-1258,-1336,-1306,
+-1226,-1155,-1108,-1071,-1033,-1004,-999,-1019,-1049,-1068,-1075,-1084,-1107,-1141,-1172,-1188,-1188,-1178,-1163,-1141,-1111,
+-1081,-1060,-1055,-1063,-1075,-1081,-1079,-1072,-1066,-1064,-1070,-1083,-1101,-1114,-1115,-1106,-1096,-1093,-1100,-1106,-1103,
+-1091,-1077,-1067,-1064,-1060,-1051,-1039,-1031,-1030,-1033,-1030,-1018,-1002,-989,-979,-966,-946,-920,-894,-877,-868,
+-863,-855,-845,-835,-830,-830,-831,-830,-828,-825,-822,-820,-820,-822,-824,-824,-820,-813,-805,-797,-788,
+-780,-773,-770,-775,-787,-803,-819,-830,-836,-838,-838,-842,-852,-867,-885,-901,-912,-920,-926,-935,-946,
+-955,-963,-971,-979,-988,-995,-1000,-1004,-1010,-1021,-1034,-1048,-1060,-1074,-1092,-1111,-1129,-1142,-1151,-1161,-1174,
+-1189,-1204,-1217,-1230,-1246,-1263,-1280,-1295,-1309,-1325,-1347,-1372,-1400,-1427,-1455,-1483,-1510,-1531,-1549,-1565,-1585,
+-1611,-1639,-1667,-1695,-1723,-1753,-1783,-1812,-1837,-1861,-1886,-1915,-1947,-1979,-2009,-2039,-2069,-2097,-2121,-2140,-2157,
+-2177,-2199,-2222,-2245,-2266,-2288,-2313,-2339,-2364,-2388,-2411,-2435,-2460,-2486,-2510,-2532,-2553,-2575,-2597,-2619,-2639,
+-2659,-2681,-2706,-2732,-2757,-2778,-2799,-2823,-2850,-2877,-2901,-2917,-2928,-2941,-2959,-2980,-3002,-3019,-3031,-3042,-3055,
+-3071,-3087,-3102,-3113,-3121,-3127,-3132,-3135,-3138,-3139,-3141,-3140,-3138,-3135,-3133,-3132,-3129,-3120,-3106,-3092,-3083,
+-3080,-3080,-3075,-3064,-3051,-3043,-3041,-3038,-3028,-3011,-2995,-2986,-2983,-2978,-2964,-2947,-2939,-2949,-2978,-3007,-3014,
+-2985,-2915,-2813,-2695,-2581,-2488,-2425,-2392,-2374,-2355,-2324,-2282,-2239,-2203,-2171,-2136,-2092,-2044,-2003,-1975,-1960,
+-1950,-1937,-1920,-1900,-1879,-1856,-1828,-1796,-1762,-1729,-1700,-1675,-1655,-1638,-1622,-1604,-1583,-1560,-1538,-1517,-1494,
+-1467,-1439,-1420,-1417,-1426,-1433,-1423,-1396,-1368,-1360,-1374,-1388,-1372,-1317,-1249,-1211,-1233,-1304,-1376,-1401,-1367,
+-1304,-1264,-1273,-1317,-1355,-1357,-1327,-1295,-1287,-1301,-1306,-1277,-1215,-1154,-1134,-1174,-1261,-1368,-1470,-1561,-1642,
+-1714,-1772,-1810,-1828,-1834,-1838,-1842,-1851,-1866,-1895,-1941,-2001,-2065,-2121,-2165,-2198,-2227,-2257,-2290,-2328,-2370,
+-2414,-2457,-2494,-2520,-2535,-2540,-2540,-2543,-2560,-2601,-2668,-2753,-2839,-2907,-2940,-2932,-2887,-2822,-2767,-2754,-2806,
+-2918,-3055,-3166,-3218,-3210,-3172,-3144,-3151,-3187,-3234,-3272,-3296,-3312,-3328,-3343,-3356,-3363,-3367,-3374,-3389,-3410,
+-3432,-3448,-3453,-3449,-3442,-3434,-3425,-3410,-3389,-3369,-3360,-3371,-3401,-3437,-3463,-3470,-3465,-3461,-3468,-3489,-3515,
+-3537,-3550,-3554,-3556,-3558,-3564,-3572,-3578,-3581,-3579,-3574,-3567,-3555,-3533,-3498,-3452,-3400,-3353,-3316,-3294,-3286,
+-3292,-3311,-3334,-3353,-3362,-3356,-3339,-3309,-3264,-3202,-3130,-3069,-3045,-3068,-3125,-3178,-3189,-3145,-3063,-2979,-2922,
+-2904,-2910,-2923,-2927,-2918,-2898,-2872,-2844,-2819,-2803,-2797,-2797,-2796,-2786,-2768,-2741,-2710,-2676,-2639,-2606,-2582,
+-2573,-2572,-2570,-2556,-2528,-2495,-2473,-2473,-2492,-2519,-2542,-2552,-2550,-2543,-2536,-2533,-2534,-2535,-2536,-2536,-2537,
+-2544,-2555,-2565,-2566,-2549,-2515,-2471,-2429,-2392,-2362,-2332,-2296,-2250,-2194,-2126,-2047,-1958,-1865,-1775,-1688,-1600,
+-1507,-1407,-1306,-1214,-1139,-1079,-1028,-977,-925,-874,-827,-785,-742,-688,-613,-515,-396,-262,-121,26,179,
+327,453,540,581,594,610,663,759,879,990,1068,1118,1163,1229,1320,1421,1509,1573,1618,1664,1724,
+1799,1881,1958,2025,2083,2140,2201,2269,2343,2420,2494,2563,2626,2686,2747,2814,2887,2965,3043,3119,3189,
+3257,3323,3392,3465,3545,3630,3717,3801,3880,3957,4036,4117,4198,4272,4333,4384,4431,4481,4534,4588,4637,
+4685,4737,4797,4863,4925,4980,5030,5085,5150,5223,5294,5355,5409,5463,5526,5596,5665,5726,5775,5820,5867,
+5922,5981,6040,6092,6133,6162,6178,6183,6178,6168,6159,6157,6160,6166,6166,6159,6144,6129,6117,6110,6103,
+6090,6070,6050,6035,6029,6028,6025,6017,6005,5994,5981,5963,5935,5897,5859,5829,5809,5794,5777,5753,5728,
+5707,5693,5679,5654,5616,5572,5534,5509,5497,5490,5479,5463,5446,5432,5420,5404,5378,5337,5284,5225,5168,
+5120,5086,5066,5057,5055,5058,5065,5081,5109,5144,5182,5216,5244,5266,5280,5283,5277,5270,5281,5321,5390,
+5467,5531,5568,5585,5597,5612,5631,5649,5669,5700,5744,5787,5804,5777,5708,5625,5555,5507,5473,5441,5408,
+5382,5373,5378,5385,5380,5357,5315,5257,5184,5105,5040,5008,5016,5052,5090,5113,5117,5111,4998,4983,4978,
+4983,5000,5029,5065,5098,5115,5108,5082,5043,4994,4931,4853,4773,4711,4678,4670,4668,4658,4638,4612,4586,
+4560,4535,4522,4530,4554,4576,4575,4564,4581,4667,4817,4975,5061,5035,4923,4797,4722,4712,4738,4762,4771,
+4777,4793,4818,4838,4849,4861,4888,4929,4966,4969,4927,4849,4761,4685,4638,4622,4638,4676,4718,4739,4712,
+4631,4506,4362,4222,4100,3996,3904,3824,3756,3706,3685,3706,3780,3910,4078,4247,4378,4444,4451,4428,4411,
+4420,4448,4476,4490,4487,4475,4457,4431,4390,4334,4271,4211,4157,4108,4062,4022,3993,3978,3971,3966,3959,
+3953,3948,3937,3907,3847,3753,3633,3501,3371,3254,3160,3092,3044,3004,2957,2899,2839,2790,2761,2745,2734,
+2721,2715,2728,2767,2824,2879,2912,2912,2877,2818,2746,2673,2607,2551,2504,2457,2402,2333,2254,2172,2101,
+2051,2023,2011,2002,1988,1966,1943,1923,1907,1893,1876,1855,1835,1819,1819,1840,1888,1953,2017,2060,2069,
+2054,2034,2021,2006,1966,1883,1760,1624,1502,1405,1326,1254,1192,1150,1131,1115,1065,942,735,459,154,
+-137,-386,-575,-706,-797,-872,-950,-1038,-1122,-1184,-1211,-1205,-1181,-1153,-1128,-1107,-1092,-1089,-1107,-1146,-1199,
+-1254,-1303,-1346,-1389,-1439,-1500,-1573,-1655,-1742,-1830,-1915,-1998,-2079,-2161,-2242,-2316,-2379,-2431,-2479,-2527,-2578,
+-2626,-2666,-2695,-2717,-2736,-2755,-2774,-2796,-2827,-2872,-2933,-2999,-3061,-3110,-3146,-3179,-3216,-3260,-3308,-3354,-3392,
+-3418,-3434,-3445,-3461,-3493,-3545,-3617,-3699,-3781,-3857,-3922,-3977,-4022,-4065,-4112,-4169,-4231,-4286,-4317,-4320,-4304,
+-4280,-4251,-4205,-4127,-4012,-3873,-3740,-3642,-3595,-3600,-3645,-3708,-3768,-3804,-3808,-3784,-3746,-3709,-3674,-3638,-3598,
+-3558,-3529,-3520,-3532,-3561,-3602,-3652,-3704,-3751,-3788,-3816,-3844,-3872,-3884,-3856,-3783,-3697,-3654,-3697,-3813,-3937,
+-3994,-3960,-3881,-3848,-3928,-4128,-4391,-4653,-4875,-5061,-5227,-5378,-5497,-5562,-5572,-5548,-5527,-5534,-5574,-5630,-5679,
+-5708,-5723,-5745,-5800,-5897,-6024,-6145,-6228,-6260,-6255,-6239,-6231,-6235,-6244,-6257,-6279,-6315,-6361,-6395,-6397,-6362,
+-6302,-6241,-6199,-6178,-6174,-6180,-6196,-6221,-6251,-6279,-6297,-6306,-6311,-6316,-6315,-6303,-6276,-6237,-6194,-6149,-6095,
+-6026,-5941,-5851,-5771,-5710,-5669,-5643,-5623,-5607,-5595,-5588,-5584,-5583,-5584,-5586,-5589,-5588,-5580,-5564,-5541,-5515,
+-5485,-5450,-5412,-5373,-5339,-5306,-5269,-5219,-5155,-5083,-5014,-4956,-4908,-4861,-4808,-4748,-4686,-4630,-4580,-4532,-4478,
+-4412,-4335,-4250,-4161,-4071,-3978,-3884,-3791,-3701,-3617,-3537,-3455,-3367,-3272,-3176,-3084,-3003,-2934,-2869,-2800,-2719,
+-2628,-2534,-2441,-2353,-2266,-2178,-2088,-1999,-1912,-1827,-1740,-1650,-1558,-1464,-1364,-1255,-1138,-1020,-913,-824,-749,
+-681,-614,-550,-493,-442,-386,-318,-237,-156,-90,-40,3,55,118,182,236,281,324,373,428,479,
+523,560,600,649,707,771,842,924,1023,1137,1262,1391,1519,1643,1757,1859,1949,2030,2103,2166,2210,
+2236,2254,2281,2327,2390,2457,2516,2566,2610,2643,2651,2620,2548,2457,2374,2322,2300,2296,2296,2296,2299,
+2310,2329,2348,2364,2377,2391,2411,2439,2472,2503,2529,2553,2581,2617,2657,2693,2719,2738,2758,2783,2812,
+2839,2862,2883,2905,2927,2951,2985,3046,3147,3273,3389,3453,3455,3415,3356,3272,3125,2879,2558,2249,2052,
+2006,2054,2089,2024,1855,1644,1463,1342,1261,1185,1098,1013,949,913,898,897,910,943,999,1077,1169,
+1272,1379,1480,1561,1615,1646,1666,1683,1696,1699,1689,1673,1656,1640,1619,1588,1549,1505,1459,1410,1356,
+1297,1242,1194,1152,1111,1067,1019,969,914,852,786,722,670,628,585,535,480,430,394,367,336,
+293,243,197,161,127,86,36,-10,-48,-76,-105,-141,-181,-217,-247,-278,-318,-362,-401,-429,-451,
+-479,-514,-547,-566,-574,-584,-608,-641,-669,-685,-697,-717,-744,-768,-777,-781,-802,-854,-925,-991,-1045,
+-1101,-1172,-1238,-1242,-1144,-967,-809,-773,-895,-1108,-1296,-1374,-1340,-1252,-1176,-1131,-1102,-1070,-1039,-1026,-1040,
+-1070,-1097,-1110,-1117,-1128,-1146,-1167,-1183,-1194,-1200,-1201,-1191,-1167,-1136,-1109,-1095,-1092,-1093,-1093,-1090,-1088,
+-1089,-1094,-1104,-1119,-1136,-1150,-1154,-1149,-1142,-1140,-1143,-1144,-1135,-1118,-1099,-1085,-1078,-1075,-1070,-1064,-1061,
+-1059,-1055,-1045,-1031,-1018,-1009,-1003,-994,-977,-957,-938,-925,-917,-907,-895,-883,-876,-875,-879,-881,-880,
+-875,-868,-861,-856,-854,-856,-861,-864,-863,-857,-848,-839,-829,-819,-812,-809,-813,-822,-834,-845,-854,
+-861,-867,-871,-876,-884,-897,-915,-934,-950,-962,-974,-986,-998,-1006,-1010,-1013,-1017,-1024,-1030,-1034,-1035,
+-1039,-1049,-1061,-1072,-1080,-1089,-1104,-1125,-1148,-1166,-1179,-1190,-1205,-1224,-1241,-1256,-1268,-1282,-1298,-1315,-1330,
+-1345,-1362,-1383,-1409,-1436,-1463,-1491,-1518,-1542,-1563,-1579,-1594,-1612,-1636,-1661,-1686,-1709,-1735,-1765,-1798,-1831,
+-1861,-1890,-1920,-1952,-1986,-2018,-2048,-2078,-2109,-2139,-2165,-2186,-2202,-2219,-2239,-2262,-2288,-2314,-2339,-2365,-2390,
+-2414,-2439,-2462,-2486,-2511,-2534,-2555,-2574,-2592,-2610,-2630,-2651,-2673,-2695,-2718,-2742,-2766,-2789,-2812,-2835,-2859,
+-2884,-2910,-2934,-2953,-2968,-2980,-2994,-3010,-3029,-3045,-3058,-3068,-3078,-3089,-3103,-3118,-3132,-3144,-3153,-3157,-3159,
+-3161,-3163,-3167,-3170,-3169,-3166,-3163,-3159,-3152,-3140,-3124,-3109,-3101,-3101,-3102,-3097,-3084,-3069,-3062,-3065,-3069,
+-3066,-3051,-3032,-3018,-3015,-3017,-3014,-3007,-3000,-3004,-3019,-3036,-3039,-3016,-2961,-2878,-2775,-2666,-2565,-2487,-2439,
+-2412,-2391,-2362,-2323,-2280,-2243,-2210,-2177,-2136,-2091,-2050,-2018,-1996,-1979,-1963,-1949,-1937,-1924,-1903,-1869,-1826,
+-1783,-1750,-1730,-1716,-1699,-1674,-1641,-1604,-1568,-1538,-1516,-1504,-1495,-1484,-1470,-1457,-1452,-1458,-1469,-1473,-1465,
+-1451,-1445,-1453,-1463,-1454,-1416,-1359,-1317,-1320,-1368,-1427,-1458,-1439,-1391,-1355,-1359,-1397,-1433,-1435,-1400,-1356,
+-1336,-1344,-1352,-1327,-1259,-1179,-1132,-1153,-1241,-1369,-1505,-1625,-1720,-1790,-1837,-1863,-1876,-1883,-1887,-1889,-1892,
+-1900,-1924,-1968,-2026,-2085,-2134,-2171,-2200,-2229,-2261,-2294,-2331,-2369,-2409,-2445,-2475,-2494,-2505,-2513,-2522,-2539,
+-2575,-2636,-2722,-2820,-2904,-2951,-2950,-2909,-2850,-2801,-2790,-2831,-2921,-3037,-3146,-3213,-3228,-3207,-3181,-3176,-3200,
+-3237,-3270,-3290,-3302,-3314,-3328,-3339,-3344,-3344,-3345,-3353,-3368,-3385,-3398,-3405,-3408,-3410,-3416,-3426,-3434,-3432,
+-3417,-3392,-3369,-3362,-3378,-3412,-3452,-3484,-3504,-3516,-3527,-3542,-3559,-3572,-3577,-3573,-3563,-3554,-3548,-3546,-3545,
+-3541,-3534,-3524,-3513,-3497,-3471,-3432,-3384,-3337,-3297,-3267,-3249,-3240,-3246,-3266,-3297,-3328,-3347,-3347,-3327,-3289,
+-3234,-3166,-3100,-3058,-3058,-3102,-3163,-3201,-3188,-3125,-3042,-2975,-2947,-2953,-2976,-2995,-2998,-2987,-2963,-2932,-2898,
+-2870,-2851,-2845,-2846,-2847,-2841,-2826,-2801,-2768,-2728,-2689,-2657,-2639,-2632,-2627,-2613,-2585,-2555,-2539,-2549,-2584,
+-2629,-2664,-2677,-2668,-2648,-2629,-2618,-2617,-2620,-2625,-2628,-2629,-2631,-2634,-2636,-2632,-2617,-2589,-2550,-2510,-2474,
+-2445,-2417,-2384,-2342,-2291,-2231,-2163,-2086,-2001,-1913,-1828,-1748,-1669,-1584,-1490,-1392,-1299,-1218,-1150,-1089,-1031,
+-973,-915,-862,-814,-767,-716,-652,-572,-475,-364,-239,-103,39,175,286,358,393,411,445,520,635,
+764,873,946,990,1030,1091,1178,1278,1374,1455,1524,1591,1661,1735,1809,1878,1943,2008,2074,2142,2212,
+2282,2352,2423,2493,2561,2628,2695,2764,2837,2916,2996,3074,3147,3216,3283,3351,3423,3502,3587,3675,3761,
+3845,3925,4005,4084,4161,4232,4294,4347,4397,4448,4501,4553,4604,4655,4711,4774,4840,4902,4957,5009,5065,
+5129,5200,5268,5331,5389,5449,5516,5587,5654,5712,5761,5806,5856,5911,5969,6023,6069,6107,6135,6154,6162,
+6161,6155,6147,6142,6143,6145,6146,6138,6124,6105,6087,6075,6065,6054,6038,6018,5997,5983,5975,5970,5964,
+5953,5936,5915,5891,5864,5836,5808,5783,5763,5746,5729,5711,5693,5672,5647,5612,5566,5514,5467,5435,5419,
+5415,5410,5400,5383,5363,5346,5328,5305,5273,5233,5190,5149,5113,5085,5067,5057,5053,5047,5037,5024,5015,
+5019,5037,5065,5097,5129,5159,5186,5203,5208,5207,5217,5257,5332,5425,5508,5562,5587,5598,5612,5631,5650,
+5667,5685,5710,5737,5750,5732,5681,5612,5546,5492,5448,5408,5374,5356,5362,5385,5409,5416,5402,5368,5316,
+5249,5170,5095,5041,5020,5024,5034,5034,5019,4998,4953,4943,4944,4951,4963,4980,5003,5025,5039,5036,5017,
+4986,4942,4882,4806,4726,4662,4626,4616,4615,4606,4588,4568,4552,4537,4521,4509,4509,4526,4546,4555,4554,
+4572,4639,4757,4884,4960,4947,4863,4762,4697,4683,4699,4715,4722,4728,4745,4771,4795,4812,4828,4856,4898,
+4943,4969,4963,4921,4856,4785,4729,4706,4724,4773,4824,4841,4802,4704,4568,4417,4271,4136,4013,3902,3802,
+3713,3638,3586,3579,3640,3778,3974,4182,4352,4452,4482,4475,4464,4468,4484,4495,4488,4465,4435,4409,4390,
+4374,4357,4335,4303,4257,4198,4134,4077,4039,4019,4007,3995,3981,3971,3968,3963,3941,3890,3811,3711,3602,
+3489,3375,3270,3187,3131,3093,3056,3006,2948,2900,2880,2890,2916,2939,2955,2972,3003,3050,3096,3117,3095,
+3032,2945,2858,2786,2734,2693,2651,2601,2540,2467,2385,2301,2221,2154,2102,2065,2035,2010,1989,1975,1964,
+1952,1934,1910,1887,1873,1871,1885,1922,1991,2091,2203,2293,2332,2317,2270,2219,2171,2108,2006,1857,1679,
+1503,1347,1214,1099,1007,951,942,973,1008,998,903,704,416,81,-248,-522,-717,-843,-935,-1029,-1137,
+-1242,-1312,-1331,-1302,-1250,-1198,-1154,-1118,-1087,-1070,-1077,-1111,-1165,-1223,-1273,-1310,-1340,-1372,-1416,-1474,-1547,
+-1630,-1717,-1805,-1892,-1980,-2072,-2166,-2257,-2339,-2407,-2466,-2520,-2575,-2629,-2676,-2716,-2749,-2778,-2805,-2830,-2854,
+-2882,-2919,-2968,-3023,-3073,-3113,-3145,-3179,-3222,-3275,-3331,-3382,-3420,-3447,-3463,-3476,-3494,-3523,-3570,-3631,-3700,
+-3768,-3831,-3888,-3942,-3994,-4046,-4099,-4154,-4208,-4255,-4287,-4301,-4298,-4283,-4253,-4199,-4115,-4004,-3883,-3781,-3722,
+-3719,-3769,-3854,-3946,-4020,-4056,-4049,-4007,-3946,-3880,-3815,-3749,-3687,-3632,-3590,-3562,-3543,-3536,-3544,-3570,-3605,
+-3630,-3627,-3597,-3561,-3544,-3548,-3554,-3547,-3541,-3577,-3690,-3873,-4066,-4199,-4244,-4236,-4257,-4369,-4580,-4845,-5105,
+-5323,-5497,-5641,-5761,-5850,-5899,-5910,-5903,-5901,-5921,-5968,-6029,-6088,-6128,-6144,-6142,-6141,-6155,-6190,-6233,-6262,
+-6266,-6247,-6218,-6194,-6184,-6191,-6214,-6252,-6297,-6331,-6337,-6306,-6248,-6188,-6149,-6141,-6153,-6172,-6187,-6198,-6210,
+-6222,-6232,-6236,-6239,-6245,-6257,-6269,-6271,-6252,-6212,-6158,-6097,-6032,-5962,-5884,-5802,-5725,-5661,-5617,-5593,-5583,
+-5583,-5587,-5591,-5593,-5594,-5595,-5598,-5600,-5599,-5593,-5580,-5560,-5535,-5506,-5473,-5439,-5406,-5376,-5346,-5308,-5257,
+-5192,-5122,-5056,-5002,-4959,-4918,-4870,-4813,-4753,-4696,-4646,-4595,-4530,-4443,-4335,-4217,-4102,-3997,-3903,-3819,-3742,
+-3669,-3597,-3519,-3428,-3323,-3208,-3096,-2996,-2911,-2837,-2764,-2686,-2599,-2508,-2417,-2329,-2243,-2156,-2068,-1982,-1901,
+-1825,-1749,-1670,-1583,-1492,-1397,-1297,-1189,-1074,-959,-858,-779,-719,-671,-626,-586,-549,-508,-451,-367,-261,
+-153,-66,-5,40,89,147,207,258,299,337,383,433,479,516,549,590,645,711,781,856,944,
+1053,1181,1317,1452,1582,1709,1830,1935,2014,2068,2105,2142,2182,2226,2268,2312,2363,2428,2505,2585,2658,
+2709,2727,2702,2634,2535,2428,2337,2279,2252,2247,2254,2266,2285,2310,2338,2365,2386,2404,2423,2448,2481,
+2518,2553,2581,2604,2629,2662,2701,2736,2762,2779,2796,2818,2844,2866,2882,2898,2922,2957,2999,3046,3107,
+3193,3300,3404,3472,3486,3459,3409,3334,3199,2966,2642,2293,2014,1863,1823,1819,1775,1664,1510,1357,1227,
+1119,1021,939,887,876,903,954,1018,1093,1180,1276,1371,1458,1535,1602,1656,1694,1714,1723,1732,1741,
+1747,1739,1716,1684,1653,1626,1596,1562,1522,1479,1435,1386,1328,1266,1209,1161,1117,1071,1017,962,909,
+858,802,741,680,629,589,551,505,450,398,358,330,303,265,220,174,134,95,48,-3,-50,
+-84,-108,-135,-172,-214,-251,-280,-307,-341,-382,-420,-448,-471,-498,-532,-563,-579,-585,-596,-623,-659,
+-687,-702,-714,-741,-781,-813,-821,-814,-823,-871,-947,-1018,-1064,-1099,-1149,-1208,-1227,-1151,-986,-816,-752,
+-848,-1057,-1265,-1374,-1363,-1286,-1209,-1161,-1132,-1101,-1065,-1042,-1046,-1074,-1106,-1131,-1144,-1153,-1162,-1170,-1179,
+-1190,-1204,-1214,-1215,-1203,-1181,-1159,-1143,-1130,-1118,-1106,-1098,-1099,-1108,-1120,-1132,-1143,-1154,-1164,-1172,-1174,
+-1171,-1166,-1162,-1157,-1146,-1131,-1115,-1101,-1091,-1085,-1081,-1079,-1079,-1077,-1071,-1060,-1048,-1039,-1036,-1033,-1025,
+-1012,-996,-984,-975,-965,-951,-934,-921,-915,-918,-922,-924,-921,-916,-910,-904,-898,-895,-896,-899,-903,
+-903,-899,-891,-882,-871,-861,-853,-849,-851,-856,-861,-867,-874,-884,-896,-908,-917,-926,-939,-956,-975,
+-992,-1004,-1015,-1027,-1037,-1044,-1046,-1044,-1044,-1048,-1052,-1053,-1054,-1059,-1070,-1084,-1096,-1102,-1109,-1124,-1148,
+-1175,-1198,-1214,-1226,-1242,-1260,-1278,-1293,-1304,-1316,-1331,-1348,-1364,-1379,-1395,-1415,-1439,-1466,-1494,-1522,-1550,
+-1576,-1596,-1612,-1627,-1644,-1667,-1690,-1713,-1734,-1757,-1787,-1822,-1857,-1891,-1923,-1956,-1990,-2025,-2056,-2085,-2114,
+-2143,-2172,-2198,-2219,-2235,-2251,-2270,-2294,-2321,-2350,-2379,-2406,-2431,-2457,-2482,-2506,-2529,-2550,-2569,-2587,-2604,
+-2622,-2641,-2662,-2685,-2710,-2735,-2758,-2779,-2800,-2823,-2847,-2872,-2894,-2915,-2935,-2956,-2977,-2996,-3012,-3025,-3039,
+-3054,-3069,-3083,-3094,-3103,-3111,-3122,-3136,-3151,-3166,-3177,-3184,-3186,-3187,-3189,-3192,-3195,-3195,-3193,-3190,-3186,
+-3179,-3166,-3150,-3135,-3128,-3129,-3132,-3128,-3115,-3102,-3096,-3101,-3109,-3107,-3091,-3068,-3052,-3048,-3053,-3058,-3057,
+-3055,-3059,-3070,-3080,-3077,-3053,-3005,-2936,-2851,-2753,-2652,-2559,-2484,-2432,-2395,-2363,-2332,-2303,-2278,-2255,-2226,
+-2188,-2144,-2101,-2066,-2038,-2016,-1997,-1983,-1977,-1972,-1958,-1927,-1881,-1834,-1797,-1775,-1758,-1737,-1705,-1665,-1624,
+-1587,-1556,-1534,-1522,-1520,-1523,-1524,-1519,-1513,-1512,-1523,-1540,-1552,-1553,-1543,-1530,-1521,-1511,-1494,-1470,-1448,
+-1445,-1464,-1490,-1497,-1471,-1425,-1391,-1394,-1431,-1470,-1474,-1434,-1374,-1328,-1314,-1315,-1299,-1251,-1187,-1149,-1171,
+-1259,-1392,-1536,-1663,-1762,-1832,-1877,-1904,-1921,-1932,-1938,-1939,-1939,-1946,-1970,-2013,-2067,-2116,-2154,-2181,-2207,
+-2238,-2273,-2311,-2350,-2390,-2429,-2461,-2483,-2493,-2500,-2512,-2535,-2572,-2623,-2692,-2775,-2857,-2916,-2934,-2911,-2867,
+-2834,-2836,-2882,-2965,-3065,-3157,-3220,-3244,-3238,-3220,-3215,-3231,-3260,-3285,-3296,-3297,-3300,-3310,-3327,-3339,-3342,
+-3339,-3338,-3342,-3350,-3357,-3362,-3367,-3376,-3391,-3410,-3429,-3442,-3445,-3434,-3411,-3383,-3363,-3362,-3387,-3431,-3482,
+-3527,-3559,-3579,-3592,-3602,-3607,-3604,-3591,-3570,-3547,-3529,-3517,-3510,-3503,-3493,-3482,-3470,-3452,-3425,-3387,-3342,
+-3300,-3268,-3248,-3237,-3234,-3243,-3267,-3300,-3330,-3341,-3327,-3292,-3244,-3191,-3141,-3106,-3099,-3127,-3178,-3223,-3228,
+-3180,-3098,-3018,-2975,-2977,-3008,-3044,-3066,-3068,-3053,-3025,-2990,-2951,-2918,-2897,-2889,-2890,-2893,-2890,-2879,-2858,
+-2828,-2791,-2755,-2727,-2709,-2697,-2679,-2651,-2619,-2600,-2610,-2653,-2713,-2768,-2796,-2790,-2760,-2724,-2695,-2681,-2679,
+-2683,-2687,-2688,-2687,-2686,-2685,-2681,-2670,-2649,-2617,-2580,-2544,-2511,-2481,-2448,-2407,-2357,-2301,-2242,-2179,-2112,
+-2039,-1963,-1888,-1815,-1740,-1659,-1570,-1476,-1383,-1298,-1224,-1156,-1092,-1028,-966,-906,-849,-796,-744,-687,-622,
+-544,-452,-344,-224,-99,18,114,181,226,269,335,435,562,690,794,863,907,947,999,1070,1153,
+1241,1331,1422,1513,1599,1676,1744,1806,1868,1936,2009,2084,2155,2224,2290,2358,2429,2503,2578,2652,2725,
+2799,2875,2953,3031,3105,3176,3244,3313,3386,3465,3549,3637,3725,3810,3890,3968,4043,4117,4187,4251,4308,
+4361,4411,4463,4515,4569,4624,4684,4747,4812,4873,4930,4984,5041,5103,5172,5241,5310,5376,5444,5513,5580,
+5642,5697,5746,5795,5848,5904,5958,6008,6052,6088,6118,6138,6149,6149,6141,6129,6120,6116,6117,6119,6116,
+6104,6082,6057,6035,6021,6012,6003,5987,5966,5946,5932,5926,5921,5910,5889,5859,5828,5802,5781,5765,5748,
+5731,5712,5694,5676,5654,5623,5579,5524,5463,5408,5368,5346,5338,5335,5329,5316,5300,5284,5268,5249,5223,
+5190,5155,5123,5096,5073,5055,5042,5035,5033,5027,5013,4992,4973,4966,4974,4993,5014,5034,5055,5078,5102,
+5119,5130,5147,5191,5271,5374,5473,5543,5579,5596,5612,5633,5652,5661,5661,5661,5669,5677,5671,5642,5592,
+5535,5478,5426,5378,5341,5328,5342,5374,5406,5419,5409,5379,5335,5278,5208,5134,5071,5030,5012,5003,4991,
+4972,4953,4955,4953,4961,4972,4978,4980,4980,4981,4979,4969,4948,4919,4880,4829,4765,4696,4639,4605,4594,
+4588,4575,4552,4529,4517,4514,4511,4504,4499,4504,4519,4535,4549,4571,4619,4700,4793,4858,4865,4817,4746,
+4689,4663,4663,4670,4676,4684,4700,4724,4750,4774,4798,4825,4855,4883,4902,4907,4894,4862,4820,4779,4759,
+4771,4806,4839,4844,4802,4717,4603,4471,4328,4179,4034,3903,3792,3697,3611,3539,3508,3549,3677,3874,4092,
+4277,4396,4452,4472,4482,4493,4500,4490,4460,4417,4376,4347,4334,4334,4339,4339,4324,4287,4230,4166,4113,
+4077,4056,4036,4012,3987,3971,3965,3960,3936,3886,3817,3742,3672,3602,3525,3444,3372,3320,3287,3255,3207,
+3146,3092,3072,3093,3139,3181,3202,3206,3211,3229,3250,3250,3208,3124,3021,2930,2869,2833,2801,2756,2692,
+2618,2548,2487,2433,2377,2316,2250,2184,2125,2082,2061,2057,2060,2052,2027,1994,1966,1954,1956,1970,2002,
+2069,2180,2319,2445,2513,2509,2452,2382,2320,2255,2159,2014,1827,1626,1432,1254,1092,949,842,790,799,
+849,900,902,811,609,313,-27,-350,-611,-804,-956,-1101,-1250,-1383,-1465,-1476,-1426,-1344,-1260,-1189,-1134,
+-1093,-1070,-1074,-1105,-1156,-1211,-1257,-1290,-1313,-1334,-1362,-1403,-1461,-1538,-1626,-1719,-1810,-1901,-1995,-2095,-2198,
+-2294,-2376,-2444,-2504,-2562,-2619,-2672,-2716,-2752,-2785,-2819,-2853,-2886,-2919,-2954,-2994,-3037,-3079,-3117,-3152,-3192,
+-3240,-3292,-3342,-3382,-3410,-3431,-3451,-3472,-3497,-3530,-3572,-3624,-3681,-3740,-3799,-3858,-3921,-3984,-4044,-4095,-4137,
+-4175,-4214,-4258,-4301,-4334,-4341,-4310,-4235,-4123,-3997,-3888,-3827,-3833,-3905,-4026,-4161,-4274,-4335,-4335,-4281,-4196,
+-4102,-4010,-3922,-3835,-3753,-3684,-3632,-3593,-3559,-3530,-3516,-3525,-3548,-3558,-3525,-3449,-3357,-3292,-3283,-3324,-3398,
+-3497,-3634,-3827,-4069,-4318,-4524,-4659,-4747,-4836,-4968,-5149,-5351,-5539,-5696,-5820,-5922,-6004,-6063,-6099,-6121,-6141,
+-6168,-6205,-6249,-6297,-6342,-6376,-6390,-6380,-6355,-6327,-6307,-6293,-6275,-6243,-6197,-6147,-6107,-6088,-6095,-6125,-6170,
+-6212,-6236,-6231,-6199,-6158,-6132,-6134,-6161,-6197,-6226,-6241,-6244,-6241,-6234,-6225,-6211,-6199,-6196,-6205,-6219,-6224,
+-6206,-6160,-6093,-6019,-5947,-5883,-5822,-5759,-5694,-5634,-5588,-5563,-5562,-5578,-5599,-5617,-5625,-5625,-5619,-5612,-5605,
+-5598,-5589,-5578,-5563,-5544,-5522,-5496,-5467,-5434,-5397,-5356,-5308,-5253,-5193,-5133,-5078,-5030,-4989,-4946,-4896,-4836,
+-4774,-4715,-4663,-4607,-4531,-4426,-4298,-4165,-4047,-3956,-3888,-3832,-3779,-3721,-3653,-3570,-3464,-3338,-3202,-3071,-2955,
+-2855,-2764,-2674,-2582,-2491,-2406,-2325,-2244,-2157,-2066,-1974,-1890,-1818,-1753,-1688,-1615,-1531,-1441,-1347,-1249,-1145,
+-1034,-925,-832,-765,-722,-691,-662,-630,-593,-547,-482,-387,-269,-149,-49,20,71,121,177,234,281,
+318,353,395,442,485,518,549,590,649,721,796,876,969,1086,1223,1365,1501,1627,1750,1869,1971,
+2042,2080,2102,2131,2179,2239,2297,2345,2392,2452,2533,2627,2713,2767,2772,2723,2629,2510,2393,2303,2251,
+2232,2237,2253,2273,2298,2327,2359,2393,2424,2452,2478,2505,2535,2567,2597,2621,2641,2665,2697,2736,2772,
+2800,2820,2838,2860,2882,2897,2904,2915,2944,2995,3058,3119,3173,3234,3312,3401,3477,3517,3516,3483,3421,
+3308,3110,2816,2465,2128,1873,1719,1635,1568,1482,1370,1245,1122,1011,924,877,884,942,1034,1139,1243,
+1346,1448,1543,1623,1681,1718,1743,1760,1770,1774,1776,1779,1784,1781,1763,1729,1687,1646,1609,1572,1532,
+1491,1450,1408,1359,1300,1238,1181,1134,1088,1034,969,903,847,803,760,711,655,602,558,519,474,
+422,371,332,305,280,245,200,153,109,66,18,-31,-76,-110,-137,-169,-209,-251,-282,-303,-325,
+-358,-401,-442,-471,-491,-516,-549,-579,-596,-603,-616,-646,-684,-712,-724,-733,-760,-804,-843,-855,-848,
+-856,-902,-976,-1041,-1075,-1095,-1133,-1187,-1202,-1114,-919,-703,-596,-675,-903,-1161,-1329,-1366,-1313,-1239,-1187,
+-1156,-1126,-1092,-1066,-1062,-1081,-1112,-1140,-1161,-1176,-1184,-1188,-1191,-1196,-1206,-1218,-1224,-1219,-1207,-1194,-1182,
+-1169,-1152,-1132,-1119,-1119,-1130,-1144,-1153,-1156,-1159,-1166,-1178,-1187,-1190,-1185,-1175,-1164,-1154,-1146,-1137,-1128,
+-1118,-1108,-1102,-1098,-1097,-1094,-1088,-1080,-1072,-1070,-1069,-1066,-1057,-1043,-1031,-1024,-1019,-1011,-996,-978,-964,
+-957,-956,-956,-953,-949,-947,-946,-946,-943,-940,-938,-938,-940,-940,-937,-931,-924,-913,-901,-891,-884,
+-883,-886,-890,-894,-902,-917,-934,-951,-963,-973,-986,-1003,-1022,-1036,-1044,-1049,-1056,-1064,-1069,-1070,-1067,
+-1065,-1067,-1071,-1073,-1076,-1083,-1096,-1112,-1123,-1129,-1135,-1150,-1176,-1206,-1232,-1249,-1261,-1275,-1292,-1310,-1324,
+-1336,-1349,-1365,-1383,-1400,-1414,-1429,-1447,-1469,-1495,-1522,-1550,-1579,-1605,-1625,-1642,-1656,-1674,-1696,-1720,-1742,
+-1763,-1787,-1816,-1851,-1886,-1920,-1952,-1985,-2019,-2053,-2084,-2113,-2139,-2166,-2192,-2217,-2238,-2257,-2275,-2296,-2321,
+-2350,-2380,-2409,-2437,-2463,-2489,-2515,-2540,-2561,-2578,-2594,-2611,-2630,-2653,-2677,-2702,-2728,-2755,-2780,-2803,-2821,
+-2840,-2862,-2887,-2912,-2933,-2948,-2962,-2979,-3000,-3022,-3041,-3056,-3069,-3082,-3097,-3111,-3123,-3133,-3142,-3152,-3165,
+-3180,-3194,-3207,-3215,-3219,-3220,-3221,-3222,-3222,-3222,-3219,-3216,-3213,-3207,-3196,-3181,-3166,-3158,-3157,-3160,-3158,
+-3150,-3140,-3136,-3139,-3144,-3139,-3121,-3098,-3081,-3078,-3085,-3092,-3095,-3096,-3104,-3120,-3135,-3136,-3113,-3069,-3007,
+-2932,-2840,-2733,-2619,-2514,-2433,-2381,-2354,-2340,-2332,-2322,-2305,-2276,-2234,-2185,-2139,-2103,-2076,-2056,-2039,-2026,
+-2021,-2019,-2010,-1987,-1948,-1903,-1863,-1832,-1804,-1772,-1735,-1699,-1669,-1643,-1617,-1592,-1573,-1568,-1578,-1593,-1600,
+-1597,-1592,-1597,-1617,-1640,-1649,-1635,-1603,-1568,-1542,-1528,-1520,-1512,-1506,-1507,-1510,-1501,-1472,-1431,-1400,-1404,
+-1442,-1483,-1488,-1441,-1358,-1277,-1226,-1206,-1192,-1168,-1141,-1138,-1185,-1287,-1421,-1558,-1677,-1768,-1834,-1882,-1916,
+-1943,-1962,-1974,-1979,-1983,-1996,-2025,-2069,-2118,-2158,-2183,-2201,-2222,-2251,-2287,-2325,-2365,-2408,-2449,-2484,-2507,
+-2519,-2532,-2554,-2589,-2631,-2679,-2732,-2790,-2843,-2877,-2881,-2864,-2849,-2862,-2915,-2999,-3090,-3167,-3219,-3245,-3250,
+-3246,-3247,-3261,-3286,-3311,-3322,-3316,-3305,-3300,-3309,-3325,-3338,-3342,-3340,-3338,-3337,-3336,-3333,-3333,-3343,-3364,
+-3393,-3419,-3435,-3441,-3440,-3432,-3417,-3394,-3372,-3362,-3377,-3418,-3478,-3538,-3584,-3609,-3617,-3616,-3611,-3599,-3578,
+-3548,-3516,-3490,-3476,-3471,-3469,-3464,-3456,-3445,-3429,-3404,-3368,-3326,-3290,-3266,-3257,-3259,-3268,-3286,-3312,-3338,
+-3352,-3341,-3305,-3257,-3212,-3182,-3167,-3170,-3190,-3224,-3257,-3266,-3233,-3160,-3076,-3015,-3000,-3025,-3067,-3103,-3119,
+-3118,-3103,-3076,-3040,-3000,-2965,-2942,-2934,-2937,-2942,-2944,-2938,-2921,-2894,-2858,-2822,-2792,-2768,-2746,-2721,-2694,
+-2676,-2683,-2721,-2782,-2847,-2891,-2902,-2883,-2844,-2803,-2772,-2753,-2744,-2742,-2740,-2737,-2733,-2728,-2724,-2716,-2703,
+-2682,-2652,-2618,-2582,-2547,-2510,-2469,-2421,-2368,-2311,-2254,-2197,-2138,-2075,-2010,-1944,-1877,-1807,-1730,-1645,-1555,
+-1465,-1379,-1301,-1228,-1158,-1089,-1021,-954,-891,-832,-777,-723,-665,-596,-515,-420,-316,-211,-114,-30,40,
+106,181,276,391,513,626,717,785,839,889,941,997,1059,1131,1218,1319,1426,1526,1613,1684,1747,
+1810,1879,1951,2025,2097,2166,2233,2302,2375,2451,2529,2607,2683,2758,2832,2906,2982,3057,3132,3205,3278,
+3352,3429,3510,3595,3680,3764,3844,3920,3994,4067,4139,4206,4266,4321,4372,4423,4477,4533,4591,4652,4714,
+4777,4839,4898,4955,5012,5075,5143,5216,5292,5366,5438,5507,5571,5630,5685,5737,5787,5839,5891,5942,5992,
+6037,6076,6107,6127,6135,6131,6118,6104,6092,6087,6089,6094,6094,6084,6061,6032,6005,5987,5977,5969,5955,
+5934,5911,5894,5885,5879,5865,5838,5802,5766,5742,5730,5726,5721,5709,5693,5673,5648,5614,5565,5502,5431,
+5367,5319,5292,5281,5276,5270,5258,5243,5230,5220,5211,5196,5172,5143,5112,5086,5064,5043,5022,5003,4991,
+4986,4982,4973,4957,4941,4934,4938,4945,4948,4946,4949,4963,4989,5016,5038,5063,5110,5194,5307,5422,5510,
+5561,5585,5601,5619,5634,5637,5627,5617,5617,5626,5629,5613,5575,5520,5461,5404,5357,5326,5320,5341,5379,
+5411,5423,5408,5376,5335,5287,5228,5161,5097,5048,5019,5001,4986,4968,4955,4982,4974,4978,4986,4985,4974,
+4957,4940,4924,4905,4880,4849,4815,4777,4730,4679,4634,4606,4595,4590,4575,4547,4519,4504,4505,4512,4511,
+4501,4492,4496,4516,4545,4580,4624,4683,4749,4805,4826,4804,4753,4697,4656,4637,4634,4638,4646,4655,4669,
+4688,4715,4745,4775,4797,4808,4813,4817,4822,4823,4816,4802,4792,4792,4801,4806,4793,4756,4700,4625,4525,
+4392,4232,4065,3918,3801,3704,3614,3529,3476,3495,3604,3785,3989,4167,4292,4370,4419,4455,4476,4474,4445,
+4400,4353,4318,4298,4289,4284,4278,4268,4248,4215,4175,4135,4105,4087,4071,4047,4013,3978,3955,3944,3932,
+3901,3848,3786,3737,3707,3688,3661,3618,3567,3524,3494,3467,3429,3378,3331,3315,3336,3382,3420,3430,3412,
+3386,3369,3360,3338,3282,3191,3087,3003,2954,2928,2897,2839,2754,2664,2595,2558,2541,2522,2481,2416,2335,
+2262,2217,2206,2222,2240,2239,2213,2177,2152,2146,2149,2149,2151,2181,2261,2384,2510,2586,2588,2531,2457,
+2394,2337,2262,2145,1988,1809,1624,1440,1256,1074,908,777,700,682,709,746,745,659,469,191,-126,
+-433,-701,-934,-1148,-1346,-1511,-1612,-1631,-1574,-1471,-1354,-1247,-1163,-1107,-1082,-1089,-1121,-1165,-1209,-1246,-1273,
+-1292,-1307,-1324,-1351,-1397,-1468,-1559,-1661,-1762,-1858,-1953,-2053,-2157,-2259,-2348,-2423,-2486,-2545,-2602,-2653,-2695,
+-2729,-2761,-2798,-2840,-2884,-2927,-2967,-3007,-3047,-3087,-3127,-3168,-3212,-3259,-3306,-3343,-3367,-3382,-3397,-3420,-3452,
+-3489,-3526,-3562,-3601,-3646,-3698,-3757,-3822,-3893,-3966,-4032,-4085,-4123,-4156,-4196,-4252,-4319,-4376,-4397,-4362,-4268,
+-4140,-4015,-3936,-3934,-4017,-4168,-4351,-4519,-4628,-4655,-4601,-4492,-4364,-4240,-4126,-4012,-3892,-3771,-3668,-3593,-3545,
+-3513,-3490,-3479,-3488,-3509,-3518,-3484,-3401,-3295,-3214,-3198,-3260,-3385,-3556,-3763,-4007,-4277,-4551,-4799,-5004,-5171,
+-5320,-5464,-5600,-5719,-5818,-5902,-5980,-6055,-6119,-6169,-6205,-6238,-6276,-6320,-6361,-6395,-6424,-6452,-6478,-6494,-6492,
+-6471,-6440,-6408,-6378,-6345,-6300,-6242,-6179,-6122,-6083,-6068,-6074,-6094,-6116,-6128,-6128,-6122,-6122,-6140,-6178,-6224,
+-6265,-6289,-6295,-6286,-6268,-6245,-6218,-6191,-6168,-6155,-6155,-6162,-6166,-6152,-6114,-6057,-5989,-5925,-5868,-5818,-5766,
+-5710,-5653,-5606,-5577,-5572,-5585,-5606,-5624,-5632,-5628,-5614,-5598,-5584,-5575,-5569,-5564,-5555,-5542,-5524,-5504,-5480,
+-5448,-5406,-5354,-5295,-5233,-5174,-5119,-5068,-5020,-4973,-4923,-4867,-4805,-4742,-4683,-4628,-4566,-4481,-4368,-4239,-4119,
+-4029,-3976,-3945,-3917,-3876,-3818,-3744,-3651,-3536,-3400,-3253,-3109,-2977,-2858,-2746,-2636,-2532,-2441,-2366,-2298,-2224,
+-2136,-2035,-1933,-1843,-1769,-1705,-1642,-1570,-1489,-1404,-1319,-1233,-1139,-1036,-933,-848,-792,-763,-745,-720,-680,
+-627,-564,-489,-396,-283,-166,-62,18,80,137,194,248,291,323,358,403,456,506,546,581,625,
+687,762,841,923,1017,1132,1264,1398,1521,1633,1742,1851,1947,2016,2057,2088,2133,2203,2286,2359,2413,
+2456,2506,2574,2652,2720,2757,2746,2688,2591,2476,2367,2288,2248,2243,2259,2281,2302,2323,2347,2377,2412,
+2448,2479,2506,2530,2555,2580,2606,2629,2651,2676,2709,2748,2787,2820,2846,2872,2900,2925,2939,2943,2950,
+2979,3036,3106,3170,3217,3260,3320,3404,3492,3556,3577,3558,3507,3417,3261,3017,2691,2332,2004,1754,1587,
+1473,1374,1265,1144,1027,937,895,916,998,1124,1264,1395,1506,1599,1680,1746,1793,1817,1825,1826,1826,
+1827,1825,1820,1813,1803,1786,1756,1716,1673,1633,1594,1552,1506,1459,1415,1372,1323,1264,1203,1148,1103,
+1059,1004,935,864,806,766,732,691,638,583,533,490,447,400,354,317,288,259,221,173,123,
+79,40,-1,-45,-87,-124,-159,-199,-243,-284,-310,-326,-345,-379,-425,-466,-492,-509,-531,-564,-598,
+-620,-631,-645,-676,-715,-745,-757,-763,-783,-822,-859,-876,-879,-896,-945,-1015,-1073,-1101,-1120,-1157,-1201,
+-1188,-1054,-803,-540,-410,-499,-767,-1079,-1298,-1369,-1328,-1252,-1193,-1160,-1137,-1113,-1094,-1090,-1103,-1125,-1149,
+-1173,-1194,-1210,-1216,-1215,-1214,-1218,-1227,-1233,-1230,-1220,-1211,-1204,-1196,-1183,-1164,-1148,-1144,-1150,-1160,-1164,
+-1162,-1158,-1163,-1176,-1192,-1202,-1201,-1193,-1182,-1174,-1169,-1166,-1161,-1153,-1145,-1137,-1131,-1126,-1119,-1111,-1103,
+-1100,-1100,-1100,-1096,-1084,-1069,-1057,-1052,-1050,-1045,-1034,-1020,-1007,-998,-992,-987,-981,-977,-978,-981,-983,
+-980,-975,-970,-968,-969,-971,-972,-971,-966,-956,-942,-928,-918,-915,-918,-923,-930,-941,-958,-978,-995,
+-1007,-1016,-1028,-1045,-1063,-1076,-1080,-1080,-1081,-1085,-1088,-1087,-1085,-1085,-1089,-1097,-1105,-1113,-1123,-1136,-1150,
+-1158,-1161,-1164,-1177,-1202,-1233,-1259,-1277,-1289,-1301,-1317,-1335,-1350,-1364,-1380,-1399,-1419,-1436,-1450,-1465,-1483,
+-1506,-1531,-1556,-1581,-1605,-1628,-1647,-1663,-1677,-1695,-1717,-1741,-1764,-1787,-1812,-1841,-1874,-1908,-1940,-1971,-2003,
+-2035,-2067,-2098,-2127,-2153,-2178,-2203,-2227,-2251,-2276,-2301,-2327,-2354,-2382,-2411,-2439,-2466,-2491,-2517,-2544,-2569,
+-2590,-2606,-2621,-2638,-2661,-2690,-2720,-2748,-2776,-2804,-2829,-2851,-2868,-2884,-2904,-2928,-2951,-2970,-2983,-2995,-3010,
+-3030,-3052,-3072,-3088,-3102,-3116,-3130,-3144,-3157,-3169,-3181,-3194,-3207,-3220,-3233,-3244,-3251,-3255,-3257,-3256,-3256,
+-3256,-3255,-3252,-3248,-3243,-3237,-3227,-3212,-3197,-3185,-3179,-3178,-3177,-3172,-3166,-3163,-3164,-3163,-3155,-3138,-3118,
+-3107,-3108,-3117,-3125,-3126,-3128,-3141,-3167,-3194,-3206,-3191,-3148,-3087,-3011,-2917,-2801,-2671,-2547,-2455,-2406,-2393,
+-2395,-2394,-2380,-2351,-2310,-2261,-2209,-2163,-2130,-2111,-2100,-2091,-2081,-2072,-2065,-2054,-2033,-2003,-1965,-1928,-1892,
+-1856,-1818,-1780,-1751,-1732,-1718,-1698,-1670,-1642,-1630,-1639,-1662,-1682,-1686,-1680,-1676,-1685,-1703,-1712,-1697,-1658,
+-1605,-1554,-1512,-1475,-1443,-1420,-1412,-1418,-1427,-1424,-1410,-1401,-1418,-1463,-1509,-1514,-1456,-1351,-1239,-1157,-1114,
+-1094,-1082,-1080,-1111,-1190,-1314,-1456,-1587,-1688,-1762,-1818,-1864,-1904,-1938,-1966,-1988,-2005,-2022,-2044,-2079,-2123,
+-2168,-2201,-2221,-2235,-2252,-2278,-2310,-2344,-2381,-2420,-2462,-2501,-2533,-2559,-2588,-2622,-2658,-2688,-2711,-2736,-2770,
+-2812,-2849,-2872,-2884,-2904,-2949,-3020,-3097,-3160,-3199,-3217,-3229,-3241,-3257,-3277,-3299,-3321,-3337,-3341,-3334,-3322,
+-3315,-3318,-3327,-3334,-3337,-3336,-3333,-3327,-3318,-3309,-3309,-3326,-3359,-3396,-3424,-3437,-3437,-3434,-3432,-3428,-3415,
+-3395,-3380,-3385,-3420,-3479,-3545,-3596,-3619,-3617,-3600,-3580,-3558,-3530,-3495,-3459,-3434,-3426,-3433,-3444,-3451,-3450,
+-3444,-3431,-3409,-3376,-3337,-3304,-3287,-3288,-3302,-3324,-3348,-3370,-3384,-3378,-3347,-3301,-3258,-3236,-3238,-3258,-3282,
+-3303,-3316,-3313,-3283,-3224,-3147,-3081,-3049,-3058,-3095,-3133,-3156,-3162,-3158,-3146,-3125,-3093,-3052,-3016,-2995,-2991,
+-3000,-3012,-3019,-3017,-3002,-2971,-2929,-2883,-2840,-2804,-2776,-2756,-2749,-2762,-2802,-2862,-2925,-2973,-2994,-2988,-2964,
+-2931,-2897,-2866,-2840,-2820,-2805,-2796,-2790,-2785,-2779,-2771,-2760,-2743,-2719,-2690,-2655,-2619,-2580,-2539,-2494,-2447,
+-2396,-2343,-2288,-2231,-2172,-2112,-2051,-1990,-1928,-1863,-1791,-1713,-1629,-1543,-1458,-1377,-1300,-1226,-1152,-1078,-1005,
+-935,-871,-813,-758,-699,-632,-555,-468,-377,-289,-206,-126,-46,41,142,252,366,471,562,639,709,
+777,844,904,956,1005,1062,1138,1234,1341,1446,1540,1621,1694,1764,1832,1901,1969,2038,2108,2180,2253,
+2327,2403,2480,2558,2634,2708,2780,2853,2927,3004,3083,3161,3239,3315,3391,3469,3548,3630,3712,3793,3870,
+3944,4017,4087,4153,4215,4272,4327,4381,4438,4497,4556,4615,4677,4740,4805,4869,4929,4989,5052,5122,5198,
+5277,5354,5426,5494,5557,5618,5676,5729,5778,5823,5870,5919,5969,6017,6059,6090,6106,6110,6102,6090,6077,
+6070,6068,6070,6071,6068,6056,6035,6010,5986,5967,5953,5941,5923,5899,5872,5851,5837,5825,5808,5779,5743,
+5709,5689,5684,5687,5689,5682,5665,5640,5605,5556,5493,5419,5349,5293,5259,5243,5238,5232,5220,5204,5189,
+5178,5173,5171,5163,5146,5122,5093,5064,5036,5005,4974,4947,4927,4916,4909,4901,4891,4885,4885,4891,4892,
+4883,4868,4857,4862,4881,4904,4925,4953,5007,5103,5234,5369,5478,5544,5574,5588,5598,5605,5604,5595,5589,
+5593,5607,5616,5606,5572,5520,5462,5409,5368,5345,5345,5367,5400,5425,5427,5407,5375,5340,5303,5257,5200,
+5140,5091,5058,5039,5021,5001,4982,5031,5005,4994,4991,4983,4960,4928,4895,4867,4841,4812,4782,4753,4728,
+4701,4667,4631,4604,4592,4589,4580,4557,4526,4504,4502,4511,4513,4498,4477,4470,4493,4541,4601,4660,4714,
+4764,4805,4824,4809,4763,4702,4647,4613,4601,4602,4603,4602,4600,4606,4626,4657,4690,4715,4727,4732,4740,
+4757,4779,4799,4810,4815,4814,4806,4787,4759,4725,4691,4649,4579,4466,4310,4137,3978,3848,3737,3630,3529,
+3463,3469,3560,3716,3891,4045,4163,4253,4326,4382,4409,4399,4361,4315,4284,4273,4273,4270,4252,4222,4185,
+4149,4119,4096,4083,4079,4076,4064,4038,4000,3961,3934,3917,3897,3862,3811,3761,3732,3730,3743,3745,3724,
+3685,3645,3619,3605,3594,3577,3561,3559,3578,3609,3630,3623,3587,3537,3491,3455,3414,3352,3268,3177,3107,
+3068,3045,3007,2934,2831,2728,2657,2631,2635,2638,2614,2558,2485,2423,2395,2407,2442,2472,2474,2449,2419,
+2407,2416,2425,2413,2381,2360,2385,2462,2557,2621,2622,2569,2497,2434,2381,2319,2234,2121,1989,1846,1690,
+1515,1322,1118,917,739,609,542,535,557,552,466,276,0,-316,-631,-922,-1183,-1412,-1599,-1722,-1766,
+-1728,-1626,-1487,-1344,-1223,-1144,-1112,-1120,-1152,-1191,-1225,-1253,-1276,-1295,-1308,-1317,-1331,-1363,-1422,-1511,-1619,
+-1730,-1836,-1935,-2034,-2134,-2233,-2323,-2401,-2467,-2525,-2580,-2628,-2668,-2701,-2734,-2773,-2820,-2872,-2924,-2973,-3019,
+-3065,-3108,-3148,-3186,-3225,-3267,-3307,-3338,-3357,-3367,-3383,-3414,-3458,-3504,-3541,-3567,-3588,-3615,-3654,-3706,-3767,
+-3834,-3905,-3978,-4047,-4107,-4160,-4215,-4279,-4348,-4404,-4422,-4386,-4301,-4198,-4121,-4109,-4181,-4331,-4527,-4723,-4875,
+-4945,-4921,-4819,-4675,-4523,-4384,-4249,-4101,-3932,-3757,-3604,-3497,-3441,-3419,-3412,-3413,-3424,-3442,-3455,-3443,-3398,
+-3337,-3295,-3304,-3381,-3520,-3706,-3928,-4174,-4437,-4704,-4961,-5201,-5418,-5607,-5758,-5864,-5928,-5966,-6004,-6056,-6121,
+-6184,-6235,-6273,-6309,-6349,-6390,-6427,-6454,-6478,-6506,-6537,-6562,-6570,-6557,-6530,-6501,-6474,-6446,-6412,-6369,-6318,
+-6266,-6222,-6190,-6170,-6161,-6159,-6162,-6168,-6183,-6210,-6249,-6294,-6333,-6358,-6364,-6352,-6326,-6290,-6251,-6213,-6182,
+-6159,-6144,-6134,-6126,-6116,-6102,-6079,-6048,-6009,-5966,-5922,-5876,-5828,-5777,-5727,-5683,-5650,-5631,-5624,-5627,-5632,
+-5633,-5624,-5605,-5582,-5564,-5558,-5561,-5565,-5562,-5548,-5527,-5504,-5481,-5452,-5411,-5355,-5288,-5218,-5151,-5089,-5031,
+-4974,-4918,-4861,-4803,-4742,-4681,-4623,-4566,-4500,-4414,-4307,-4197,-4109,-4058,-4041,-4034,-4011,-3960,-3885,-3797,-3699,
+-3588,-3459,-3317,-3173,-3037,-2908,-2784,-2663,-2554,-2466,-2398,-2338,-2267,-2173,-2061,-1946,-1841,-1753,-1677,-1604,-1528,
+-1451,-1377,-1309,-1240,-1159,-1066,-970,-891,-843,-824,-812,-785,-731,-657,-576,-494,-408,-312,-206,-103,-11,
+65,132,192,242,280,311,349,404,473,542,598,645,695,759,836,917,1001,1092,1195,1307,1416,
+1513,1604,1698,1797,1891,1964,2019,2070,2142,2238,2344,2436,2502,2547,2587,2628,2667,2690,2690,2662,2607,
+2529,2439,2352,2290,2263,2268,2290,2315,2335,2353,2374,2401,2433,2462,2487,2508,2528,2551,2579,2609,2639,
+2667,2696,2729,2766,2803,2837,2867,2898,2931,2962,2983,2993,3003,3028,3074,3133,3187,3230,3273,3336,3428,
+3530,3609,3642,3631,3591,3527,3415,3221,2932,2576,2219,1919,1701,1545,1409,1266,1121,1001,940,957,1049,
+1192,1354,1506,1629,1721,1787,1835,1868,1885,1888,1882,1874,1869,1866,1859,1846,1826,1799,1766,1727,1686,
+1647,1610,1572,1527,1474,1419,1369,1323,1275,1220,1161,1108,1064,1023,972,909,843,787,746,711,670,
+617,561,511,469,430,388,346,307,273,237,192,141,91,50,16,-17,-54,-93,-131,-170,-214,
+-261,-302,-329,-347,-370,-406,-451,-488,-509,-521,-541,-576,-615,-643,-658,-674,-703,-741,-773,-788,-795,
+-811,-842,-874,-894,-907,-933,-985,-1050,-1103,-1137,-1168,-1212,-1243,-1193,-1011,-725,-457,-356,-488,-793,-1123,
+-1342,-1402,-1348,-1261,-1193,-1155,-1132,-1114,-1105,-1106,-1118,-1135,-1155,-1179,-1206,-1228,-1238,-1236,-1230,-1231,-1239,
+-1246,-1244,-1234,-1223,-1216,-1211,-1203,-1188,-1170,-1159,-1159,-1165,-1170,-1169,-1165,-1166,-1175,-1190,-1205,-1213,-1214,
+-1209,-1203,-1197,-1192,-1187,-1182,-1178,-1174,-1168,-1160,-1149,-1137,-1128,-1125,-1125,-1125,-1120,-1110,-1097,-1086,-1079,
+-1075,-1071,-1064,-1054,-1044,-1036,-1029,-1022,-1017,-1015,-1015,-1015,-1012,-1004,-995,-989,-988,-992,-997,-1002,-1005,
+-1002,-995,-981,-966,-954,-949,-951,-957,-965,-978,-994,-1013,-1028,-1038,-1046,-1057,-1074,-1093,-1107,-1112,-1111,
+-1109,-1110,-1110,-1108,-1107,-1109,-1118,-1132,-1146,-1159,-1171,-1184,-1193,-1197,-1195,-1196,-1206,-1228,-1256,-1281,-1299,
+-1313,-1326,-1343,-1360,-1377,-1393,-1413,-1434,-1454,-1471,-1485,-1501,-1523,-1548,-1574,-1597,-1617,-1635,-1652,-1667,-1680,
+-1694,-1712,-1734,-1758,-1782,-1805,-1830,-1858,-1889,-1920,-1951,-1981,-2011,-2042,-2071,-2099,-2127,-2154,-2181,-2207,-2233,
+-2260,-2291,-2322,-2352,-2381,-2408,-2436,-2463,-2489,-2515,-2541,-2569,-2596,-2618,-2635,-2651,-2670,-2696,-2729,-2763,-2793,
+-2821,-2847,-2872,-2893,-2911,-2926,-2942,-2961,-2980,-2996,-3010,-3024,-3041,-3062,-3083,-3102,-3118,-3134,-3150,-3166,-3181,
+-3194,-3208,-3224,-3241,-3257,-3269,-3278,-3285,-3290,-3293,-3294,-3294,-3295,-3297,-3298,-3297,-3292,-3286,-3278,-3268,-3255,
+-3241,-3227,-3217,-3210,-3204,-3199,-3194,-3192,-3191,-3189,-3180,-3166,-3152,-3147,-3154,-3165,-3171,-3170,-3169,-3181,-3210,
+-3245,-3265,-3253,-3209,-3144,-3065,-2971,-2855,-2728,-2612,-2534,-2504,-2506,-2509,-2487,-2439,-2378,-2319,-2268,-2226,-2191,
+-2166,-2153,-2151,-2150,-2143,-2128,-2109,-2088,-2065,-2039,-2010,-1981,-1950,-1917,-1882,-1848,-1821,-1802,-1787,-1766,-1738,
+-1709,-1694,-1700,-1724,-1749,-1760,-1755,-1743,-1734,-1734,-1734,-1722,-1691,-1638,-1568,-1485,-1397,-1318,-1268,-1259,-1288,
+-1334,-1372,-1393,-1412,-1449,-1506,-1555,-1556,-1487,-1368,-1244,-1154,-1107,-1085,-1070,-1070,-1111,-1211,-1357,-1513,-1641,
+-1727,-1780,-1820,-1858,-1896,-1932,-1964,-1996,-2027,-2058,-2090,-2127,-2169,-2209,-2243,-2266,-2284,-2304,-2328,-2357,-2387,
+-2417,-2448,-2482,-2519,-2558,-2600,-2645,-2686,-2712,-2717,-2711,-2717,-2750,-2813,-2884,-2945,-2988,-3026,-3070,-3120,-3161,
+-3184,-3189,-3193,-3210,-3242,-3277,-3305,-3323,-3334,-3344,-3350,-3351,-3346,-3341,-3337,-3336,-3334,-3329,-3323,-3314,-3303,
+-3289,-3280,-3285,-3308,-3347,-3388,-3419,-3435,-3442,-3449,-3458,-3462,-3454,-3434,-3411,-3404,-3427,-3478,-3540,-3589,-3609,
+-3599,-3572,-3540,-3508,-3475,-3438,-3405,-3386,-3391,-3413,-3440,-3459,-3466,-3463,-3452,-3432,-3401,-3363,-3331,-3316,-3321,
+-3342,-3368,-3393,-3410,-3414,-3401,-3372,-3338,-3319,-3324,-3349,-3378,-3396,-3395,-3376,-3343,-3293,-3231,-3168,-3125,-3117,
+-3140,-3176,-3204,-3215,-3215,-3211,-3204,-3188,-3158,-3118,-3083,-3066,-3068,-3084,-3100,-3109,-3105,-3085,-3048,-2997,-2940,
+-2887,-2845,-2819,-2812,-2830,-2873,-2936,-3004,-3056,-3080,-3079,-3063,-3042,-3021,-2997,-2966,-2931,-2899,-2874,-2860,-2852,
+-2847,-2839,-2826,-2808,-2783,-2754,-2722,-2687,-2650,-2610,-2567,-2524,-2479,-2434,-2384,-2330,-2272,-2210,-2149,-2089,-2031,
+-1973,-1913,-1847,-1775,-1696,-1612,-1528,-1447,-1369,-1293,-1217,-1139,-1060,-984,-914,-851,-792,-731,-663,-588,-506,
+-422,-339,-258,-175,-85,15,125,237,341,431,507,578,653,732,811,878,932,979,1032,1100,1186,
+1282,1378,1470,1557,1640,1719,1791,1856,1919,1985,2055,2130,2207,2284,2359,2436,2512,2588,2661,2732,2802,
+2876,2954,3036,3120,3202,3282,3358,3433,3509,3588,3670,3752,3831,3904,3971,4035,4096,4156,4217,4277,4339,
+4401,4461,4520,4578,4640,4706,4776,4845,4910,4973,5039,5110,5188,5267,5343,5413,5480,5545,5608,5668,5719,
+5763,5804,5848,5897,5948,5995,6033,6060,6074,6077,6073,6066,6060,6058,6058,6056,6048,6034,6015,5997,5980,
+5965,5949,5931,5910,5886,5859,5830,5804,5784,5767,5750,5727,5699,5672,5652,5643,5642,5640,5630,5610,5577,
+5531,5473,5405,5336,5277,5236,5212,5202,5197,5190,5180,5166,5152,5142,5138,5138,5136,5127,5108,5079,5042,
+5002,4962,4926,4897,4875,4857,4839,4821,4806,4800,4805,4814,4817,4810,4796,4786,4785,4791,4797,4807,4838,
+4910,5030,5183,5334,5454,5529,5567,5585,5595,5598,5595,5588,5587,5596,5611,5622,5616,5590,5548,5500,5453,
+5412,5382,5369,5372,5383,5391,5385,5367,5348,5334,5319,5294,5251,5198,5153,5124,5109,5092,5064,5031,5091,
+5046,5020,5007,4990,4956,4906,4855,4814,4782,4753,4726,4706,4696,4689,4671,4638,4600,4575,4567,4565,4553,
+4528,4504,4495,4499,4499,4480,4451,4437,4465,4534,4624,4707,4770,4812,4836,4839,4812,4756,4684,4618,4576,
+4559,4556,4553,4544,4531,4525,4532,4555,4585,4616,4641,4661,4682,4708,4739,4770,4799,4821,4832,4823,4791,
+4742,4690,4647,4610,4563,4484,4366,4220,4068,3920,3777,3640,3522,3455,3462,3544,3670,3804,3919,4019,4113,
+4204,4277,4311,4300,4263,4228,4218,4233,4255,4262,4241,4198,4145,4099,4068,4054,4051,4052,4048,4033,4006,
+3974,3944,3922,3904,3882,3847,3805,3768,3751,3756,3771,3775,3755,3717,3679,3659,3665,3689,3717,3739,3755,
+3767,3777,3775,3754,3709,3649,3585,3527,3472,3411,3344,3278,3227,3194,3165,3117,3035,2928,2825,2757,2733,
+2737,2740,2721,2674,2619,2580,2575,2606,2652,2683,2683,2657,2633,2634,2658,2676,2659,2605,2547,2526,2557,
+2618,2663,2662,2616,2548,2481,2418,2354,2281,2200,2111,2011,1893,1749,1577,1377,1153,914,686,508,405,
+374,369,324,189,-43,-344,-664,-964,-1228,-1455,-1644,-1786,-1864,-1864,-1788,-1651,-1488,-1338,-1231,-1180,-1176,
+-1200,-1234,-1265,-1292,-1316,-1336,-1348,-1352,-1355,-1371,-1413,-1487,-1587,-1701,-1815,-1922,-2023,-2119,-2212,-2300,-2378,
+-2446,-2505,-2557,-2604,-2646,-2685,-2725,-2770,-2820,-2873,-2927,-2981,-3036,-3090,-3138,-3175,-3203,-3231,-3264,-3302,-3337,
+-3363,-3382,-3407,-3447,-3501,-3552,-3584,-3594,-3594,-3600,-3622,-3658,-3701,-3748,-3806,-3881,-3972,-4070,-4162,-4243,-4314,
+-4376,-4423,-4441,-4421,-4375,-4331,-4327,-4388,-4514,-4684,-4860,-5004,-5087,-5091,-5020,-4893,-4742,-4593,-4450,-4300,-4121,
+-3911,-3694,-3510,-3388,-3334,-3327,-3338,-3352,-3366,-3384,-3408,-3431,-3452,-3473,-3507,-3567,-3661,-3790,-3951,-4141,-4355,
+-4586,-4827,-5072,-5314,-5544,-5746,-5901,-5998,-6045,-6066,-6087,-6126,-6180,-6236,-6281,-6315,-6345,-6377,-6408,-6437,-6465,
+-6499,-6542,-6590,-6628,-6643,-6634,-6609,-6580,-6555,-6535,-6515,-6493,-6470,-6447,-6425,-6404,-6387,-6372,-6361,-6356,-6359,
+-6373,-6397,-6427,-6455,-6471,-6473,-6460,-6431,-6390,-6341,-6291,-6251,-6225,-6211,-6199,-6179,-6149,-6117,-6089,-6072,-6062,
+-6051,-6032,-6000,-5956,-5906,-5859,-5817,-5780,-5747,-5718,-5695,-5684,-5682,-5682,-5672,-5647,-5613,-5585,-5574,-5579,-5588,
+-5587,-5569,-5540,-5508,-5479,-5448,-5407,-5350,-5279,-5202,-5126,-5054,-4987,-4922,-4859,-4798,-4738,-4677,-4617,-4558,-4500,
+-4436,-4361,-4277,-4199,-4144,-4119,-4112,-4097,-4052,-3974,-3878,-3779,-3683,-3583,-3470,-3343,-3213,-3088,-2968,-2850,-2733,
+-2626,-2538,-2468,-2403,-2325,-2221,-2098,-1969,-1850,-1747,-1658,-1576,-1498,-1427,-1365,-1310,-1252,-1183,-1098,-1010,-937,
+-895,-881,-872,-843,-780,-692,-596,-509,-428,-344,-249,-149,-51,35,110,172,221,258,291,334,399,
+482,570,647,710,770,836,913,997,1083,1171,1261,1347,1426,1496,1569,1655,1753,1849,1930,1995,2062,
+2151,2264,2383,2485,2559,2607,2638,2656,2655,2637,2604,2564,2518,2464,2401,2340,2296,2281,2292,2316,2340,
+2361,2382,2406,2433,2459,2479,2495,2514,2540,2574,2615,2657,2696,2732,2763,2794,2824,2854,2880,2904,2929,
+2959,2992,3022,3046,3065,3087,3119,3158,3199,3241,3296,3376,3482,3594,3679,3719,3717,3696,3660,3587,3434,
+3174,2831,2471,2160,1925,1742,1565,1372,1185,1053,1020,1091,1234,1404,1564,1693,1788,1854,1897,1923,1936,
+1938,1932,1920,1907,1895,1884,1870,1849,1821,1785,1744,1700,1657,1618,1580,1539,1489,1431,1370,1316,1269,
+1225,1176,1121,1067,1018,974,928,876,821,770,727,686,641,588,535,489,450,414,374,333,293,
+255,215,168,116,67,28,-3,-35,-69,-106,-143,-180,-221,-265,-307,-340,-366,-394,-432,-473,-505,
+-522,-532,-552,-587,-629,-662,-682,-701,-727,-762,-791,-809,-820,-838,-866,-895,-916,-934,-965,-1014,-1071,
+-1119,-1160,-1205,-1256,-1274,-1196,-995,-725,-517,-492,-680,-992,-1283,-1442,-1453,-1374,-1280,-1210,-1164,-1129,-1103,
+-1092,-1098,-1114,-1133,-1153,-1178,-1208,-1234,-1246,-1243,-1235,-1235,-1246,-1258,-1262,-1254,-1241,-1231,-1226,-1218,-1203,
+-1183,-1166,-1162,-1170,-1183,-1192,-1193,-1190,-1189,-1194,-1205,-1217,-1227,-1232,-1230,-1223,-1214,-1205,-1201,-1200,-1199,
+-1195,-1187,-1175,-1163,-1155,-1149,-1147,-1144,-1141,-1136,-1128,-1120,-1111,-1103,-1097,-1091,-1084,-1076,-1068,-1060,-1054,
+-1051,-1050,-1048,-1044,-1034,-1021,-1010,-1004,-1005,-1011,-1019,-1025,-1028,-1027,-1021,-1011,-998,-988,-983,-983,-988,
+-996,-1007,-1020,-1036,-1049,-1059,-1068,-1079,-1096,-1115,-1131,-1139,-1142,-1142,-1142,-1141,-1140,-1140,-1145,-1156,-1172,
+-1188,-1202,-1214,-1224,-1231,-1232,-1229,-1229,-1238,-1258,-1283,-1307,-1326,-1342,-1358,-1375,-1392,-1408,-1427,-1448,-1470,
+-1490,-1506,-1519,-1537,-1560,-1587,-1613,-1635,-1652,-1666,-1678,-1689,-1701,-1716,-1738,-1763,-1789,-1813,-1836,-1858,-1883,
+-1910,-1938,-1966,-1994,-2021,-2047,-2071,-2095,-2121,-2150,-2180,-2209,-2237,-2267,-2299,-2333,-2365,-2394,-2421,-2448,-2477,
+-2506,-2534,-2561,-2590,-2618,-2642,-2662,-2680,-2701,-2731,-2765,-2799,-2828,-2853,-2876,-2899,-2921,-2940,-2957,-2972,-2986,
+-3001,-3014,-3028,-3045,-3067,-3090,-3110,-3128,-3145,-3164,-3185,-3205,-3222,-3237,-3253,-3271,-3290,-3307,-3317,-3323,-3327,
+-3331,-3334,-3337,-3340,-3344,-3350,-3355,-3358,-3355,-3350,-3342,-3336,-3329,-3322,-3313,-3302,-3290,-3279,-3271,-3267,-3266,
+-3268,-3267,-3260,-3249,-3238,-3234,-3239,-3249,-3253,-3248,-3240,-3243,-3261,-3287,-3298,-3278,-3228,-3159,-3082,-2997,-2899,
+-2794,-2704,-2653,-2646,-2656,-2642,-2581,-2484,-2384,-2310,-2269,-2248,-2232,-2217,-2207,-2205,-2204,-2196,-2177,-2150,-2122,
+-2096,-2073,-2051,-2029,-2007,-1982,-1954,-1923,-1890,-1861,-1834,-1809,-1784,-1763,-1752,-1758,-1777,-1800,-1813,-1810,-1793,
+-1770,-1751,-1739,-1730,-1713,-1674,-1603,-1503,-1389,-1292,-1240,-1248,-1302,-1371,-1422,-1447,-1466,-1502,-1557,-1601,-1590,
+-1510,-1385,-1269,-1198,-1170,-1154,-1131,-1117,-1151,-1257,-1420,-1590,-1720,-1794,-1830,-1856,-1887,-1920,-1952,-1982,-2015,
+-2055,-2097,-2137,-2174,-2211,-2249,-2286,-2317,-2344,-2369,-2396,-2425,-2454,-2480,-2501,-2523,-2551,-2589,-2638,-2690,-2730,
+-2743,-2729,-2707,-2712,-2764,-2859,-2967,-3056,-3112,-3145,-3168,-3188,-3197,-3194,-3185,-3188,-3213,-3255,-3295,-3322,-3333,
+-3339,-3347,-3357,-3364,-3365,-3360,-3354,-3348,-3340,-3328,-3312,-3292,-3272,-3256,-3251,-3262,-3290,-3330,-3371,-3406,-3433,
+-3455,-3476,-3496,-3506,-3499,-3474,-3443,-3422,-3426,-3458,-3506,-3549,-3569,-3563,-3540,-3509,-3478,-3445,-3410,-3381,-3370,
+-3384,-3417,-3454,-3480,-3489,-3486,-3472,-3450,-3416,-3378,-3345,-3332,-3340,-3363,-3391,-3414,-3430,-3436,-3433,-3425,-3420,
+-3426,-3445,-3468,-3479,-3470,-3441,-3402,-3360,-3315,-3267,-3224,-3199,-3201,-3227,-3259,-3280,-3287,-3285,-3282,-3277,-3263,
+-3233,-3195,-3164,-3152,-3158,-3172,-3183,-3183,-3170,-3144,-3106,-3059,-3009,-2965,-2934,-2919,-2925,-2953,-3004,-3066,-3123,
+-3160,-3169,-3159,-3142,-3127,-3111,-3089,-3056,-3016,-2979,-2950,-2931,-2920,-2910,-2896,-2877,-2851,-2820,-2786,-2753,-2720,
+-2684,-2644,-2600,-2555,-2509,-2463,-2414,-2360,-2303,-2244,-2187,-2130,-2075,-2020,-1962,-1901,-1832,-1756,-1673,-1589,-1509,
+-1432,-1358,-1281,-1201,-1119,-1039,-963,-894,-828,-764,-698,-626,-548,-464,-376,-288,-197,-101,0,105,209,
+304,388,464,540,622,705,784,850,904,955,1013,1084,1166,1252,1336,1419,1502,1586,1667,1742,1809,
+1873,1939,2009,2085,2162,2240,2319,2397,2475,2551,2623,2692,2762,2835,2914,2998,3086,3173,3255,3333,3407,
+3481,3558,3638,3720,3798,3869,3932,3989,4045,4104,4168,4235,4303,4368,4428,4485,4543,4604,4673,4746,4820,
+4890,4957,5025,5099,5179,5260,5337,5408,5475,5540,5602,5657,5704,5745,5788,5836,5887,5936,5976,6004,6024,
+6037,6045,6047,6045,6043,6042,6043,6038,6022,5999,5974,5956,5945,5936,5921,5899,5873,5847,5821,5793,5763,
+5736,5716,5702,5690,5673,5650,5624,5602,5586,5575,5560,5535,5496,5444,5385,5324,5268,5222,5186,5162,5148,
+5144,5145,5147,5144,5134,5119,5108,5104,5103,5099,5083,5053,5012,4968,4928,4897,4873,4851,4825,4790,4753,
+4723,4709,4711,4719,4724,4722,4719,4720,4722,4719,4712,4718,4762,4863,5011,5177,5325,5433,5503,5549,5583,
+5608,5620,5618,5608,5602,5605,5614,5622,5623,5612,5590,5555,5509,5453,5396,5348,5315,5296,5286,5280,5279,
+5287,5303,5318,5316,5289,5248,5211,5192,5185,5171,5138,5091,5132,5077,5042,5024,5001,4955,4889,4822,4773,
+4744,4724,4709,4702,4708,4719,4715,4682,4627,4576,4548,4541,4536,4522,4503,4491,4489,4484,4460,4425,4408,
+4437,4519,4629,4733,4808,4851,4866,4852,4806,4732,4645,4571,4525,4508,4505,4503,4494,4481,4472,4470,4477,
+4496,4525,4560,4597,4632,4663,4691,4723,4759,4796,4821,4816,4770,4686,4585,4491,4424,4382,4350,4304,4230,
+4118,3970,3800,3633,3504,3443,3460,3533,3627,3712,3784,3862,3958,4065,4156,4204,4204,4179,4158,4161,4187,
+4217,4230,4217,4181,4134,4089,4058,4040,4032,4024,4008,3986,3963,3944,3934,3927,3915,3893,3861,3824,3795,
+3780,3779,3782,3778,3758,3726,3696,3687,3708,3754,3807,3849,3868,3866,3851,3829,3800,3757,3699,3629,3557,
+3492,3437,3390,3351,3319,3289,3252,3194,3111,3017,2934,2879,2855,2849,2839,2814,2774,2734,2712,2720,2757,
+2802,2830,2827,2801,2778,2781,2805,2822,2801,2739,2668,2626,2632,2670,2700,2696,2652,2584,2507,2430,2352,
+2276,2205,2139,2070,1989,1889,1765,1610,1412,1168,896,640,444,326,259,184,46,-175,-459,-760,-1038,
+-1277,-1480,-1659,-1810,-1919,-1963,-1927,-1820,-1670,-1514,-1388,-1307,-1273,-1273,-1295,-1325,-1356,-1379,-1393,-1397,-1396,
+-1398,-1410,-1441,-1497,-1580,-1684,-1797,-1909,-2013,-2108,-2196,-2280,-2358,-2428,-2489,-2540,-2586,-2630,-2678,-2728,-2781,
+-2833,-2883,-2932,-2986,-3045,-3106,-3158,-3195,-3218,-3238,-3265,-3304,-3346,-3383,-3414,-3447,-3494,-3550,-3599,-3625,-3625,
+-3611,-3604,-3613,-3635,-3658,-3680,-3716,-3782,-3883,-4004,-4122,-4220,-4298,-4363,-4416,-4452,-4463,-4457,-4460,-4499,-4586,
+-4707,-4832,-4931,-4985,-4987,-4938,-4848,-4732,-4606,-4482,-4354,-4204,-4019,-3803,-3588,-3416,-3313,-3280,-3294,-3328,-3364,
+-3400,-3444,-3500,-3569,-3649,-3736,-3829,-3924,-4022,-4128,-4248,-4392,-4562,-4756,-4967,-5187,-5408,-5620,-5807,-5953,-6051,
+-6105,-6134,-6157,-6186,-6222,-6257,-6288,-6315,-6341,-6368,-6394,-6420,-6450,-6493,-6548,-6607,-6654,-6676,-6675,-6659,-6640,
+-6622,-6606,-6591,-6579,-6573,-6574,-6578,-6581,-6581,-6577,-6568,-6557,-6550,-6550,-6559,-6574,-6586,-6587,-6577,-6554,-6521,
+-6478,-6429,-6381,-6346,-6328,-6320,-6309,-6282,-6238,-6189,-6147,-6122,-6111,-6104,-6085,-6049,-5997,-5939,-5887,-5847,-5816,
+-5787,-5761,-5743,-5741,-5754,-5769,-5766,-5737,-5689,-5642,-5613,-5605,-5606,-5601,-5581,-5548,-5511,-5475,-5437,-5392,-5333,
+-5262,-5185,-5108,-5034,-4962,-4892,-4826,-4762,-4699,-4636,-4572,-4509,-4449,-4392,-4337,-4284,-4238,-4203,-4177,-4148,-4099,
+-4022,-3923,-3817,-3718,-3626,-3533,-3429,-3317,-3206,-3102,-3003,-2903,-2800,-2697,-2605,-2523,-2442,-2345,-2226,-2091,-1954,
+-1831,-1728,-1640,-1562,-1490,-1424,-1365,-1309,-1252,-1185,-1110,-1035,-974,-939,-926,-917,-889,-827,-735,-633,-536,
+-451,-369,-281,-186,-89,0,79,146,200,243,281,325,389,473,568,661,742,815,886,962,1045,
+1131,1217,1298,1369,1428,1483,1548,1634,1736,1836,1921,1990,2063,2157,2271,2386,2482,2548,2588,2610,2614,
+2599,2565,2523,2480,2441,2402,2359,2320,2297,2295,2312,2335,2357,2380,2406,2436,2463,2484,2499,2518,2549,
+2595,2649,2704,2753,2796,2833,2867,2896,2920,2938,2952,2964,2978,2999,3029,3065,3100,3129,3153,3175,3202,
+3236,3283,3350,3443,3556,3671,3759,3806,3820,3821,3816,3773,3645,3400,3062,2700,2387,2148,1950,1741,1505,
+1283,1145,1135,1244,1417,1589,1726,1824,1893,1943,1973,1987,1988,1982,1972,1958,1938,1915,1891,1868,1843,
+1814,1777,1734,1688,1641,1595,1549,1501,1448,1388,1326,1270,1222,1180,1137,1087,1031,975,924,877,831,
+785,740,696,653,607,558,510,467,428,390,349,307,267,230,190,146,97,51,11,-22,-56,
+-93,-131,-166,-199,-234,-273,-314,-351,-384,-416,-452,-489,-519,-538,-552,-573,-606,-644,-680,-707,-733,
+-762,-792,-815,-830,-843,-864,-893,-921,-943,-964,-996,-1039,-1084,-1125,-1165,-1216,-1266,-1272,-1184,-1000,-792,
+-678,-740,-962,-1239,-1445,-1514,-1469,-1379,-1299,-1243,-1196,-1146,-1103,-1082,-1086,-1106,-1128,-1150,-1174,-1204,-1231,
+-1244,-1242,-1235,-1235,-1247,-1263,-1273,-1271,-1263,-1253,-1246,-1236,-1219,-1197,-1179,-1175,-1187,-1209,-1229,-1238,-1235,
+-1225,-1217,-1215,-1220,-1230,-1238,-1242,-1240,-1233,-1225,-1220,-1218,-1216,-1211,-1203,-1194,-1187,-1182,-1176,-1169,-1163,
+-1159,-1157,-1155,-1149,-1139,-1129,-1122,-1118,-1113,-1105,-1094,-1082,-1074,-1071,-1070,-1068,-1062,-1051,-1039,-1029,-1024,
+-1026,-1032,-1039,-1044,-1045,-1043,-1038,-1033,-1027,-1021,-1018,-1019,-1024,-1032,-1040,-1049,-1060,-1070,-1081,-1092,-1104,
+-1120,-1137,-1152,-1163,-1170,-1173,-1175,-1177,-1179,-1182,-1189,-1200,-1213,-1227,-1239,-1249,-1256,-1260,-1260,-1258,-1260,
+-1270,-1289,-1313,-1337,-1357,-1375,-1392,-1408,-1423,-1439,-1458,-1481,-1503,-1522,-1537,-1551,-1568,-1590,-1616,-1641,-1663,
+-1681,-1697,-1710,-1721,-1734,-1753,-1780,-1811,-1841,-1867,-1889,-1911,-1934,-1958,-1982,-2006,-2029,-2051,-2069,-2086,-2105,
+-2130,-2163,-2198,-2232,-2262,-2290,-2321,-2354,-2386,-2415,-2443,-2473,-2505,-2537,-2567,-2596,-2623,-2650,-2674,-2696,-2717,
+-2742,-2774,-2808,-2839,-2863,-2883,-2902,-2923,-2945,-2967,-2987,-3005,-3021,-3035,-3046,-3059,-3078,-3101,-3126,-3148,-3167,
+-3186,-3210,-3236,-3260,-3279,-3295,-3311,-3328,-3346,-3359,-3366,-3370,-3374,-3380,-3389,-3398,-3407,-3415,-3423,-3431,-3436,
+-3438,-3437,-3435,-3434,-3437,-3440,-3441,-3435,-3424,-3410,-3401,-3398,-3402,-3408,-3411,-3406,-3394,-3380,-3370,-3369,-3373,
+-3373,-3364,-3347,-3334,-3331,-3333,-3323,-3287,-3226,-3155,-3085,-3016,-2941,-2860,-2793,-2762,-2767,-2777,-2747,-2656,-2521,
+-2392,-2307,-2276,-2276,-2279,-2273,-2261,-2252,-2245,-2235,-2218,-2194,-2169,-2147,-2126,-2105,-2083,-2061,-2039,-2013,-1980,
+-1942,-1904,-1870,-1844,-1825,-1814,-1809,-1813,-1825,-1841,-1852,-1850,-1832,-1803,-1773,-1753,-1744,-1735,-1709,-1653,-1568,
+-1479,-1415,-1404,-1446,-1516,-1575,-1595,-1581,-1561,-1567,-1600,-1624,-1598,-1507,-1385,-1286,-1242,-1238,-1234,-1205,-1175,
+-1198,-1307,-1482,-1664,-1795,-1860,-1884,-1903,-1933,-1967,-1996,-2021,-2051,-2093,-2142,-2188,-2225,-2259,-2295,-2334,-2371,
+-2402,-2429,-2456,-2487,-2519,-2545,-2563,-2576,-2594,-2626,-2671,-2720,-2755,-2761,-2743,-2726,-2744,-2813,-2924,-3040,-3130,
+-3180,-3201,-3211,-3219,-3223,-3218,-3211,-3213,-3231,-3262,-3293,-3315,-3328,-3338,-3350,-3361,-3366,-3364,-3360,-3357,-3354,
+-3349,-3334,-3310,-3281,-3255,-3238,-3236,-3250,-3279,-3317,-3357,-3394,-3428,-3459,-3488,-3511,-3524,-3519,-3497,-3463,-3432,
+-3417,-3424,-3449,-3478,-3499,-3505,-3500,-3486,-3468,-3443,-3415,-3390,-3384,-3400,-3432,-3467,-3490,-3496,-3488,-3469,-3440,
+-3401,-3359,-3330,-3324,-3344,-3379,-3413,-3438,-3453,-3463,-3473,-3486,-3503,-3522,-3539,-3543,-3527,-3491,-3446,-3404,-3370,
+-3342,-3315,-3290,-3279,-3288,-3314,-3343,-3360,-3363,-3358,-3352,-3345,-3331,-3306,-3276,-3253,-3245,-3249,-3254,-3250,-3237,
+-3216,-3191,-3163,-3135,-3110,-3092,-3083,-3084,-3095,-3115,-3147,-3186,-3221,-3244,-3251,-3244,-3232,-3217,-3198,-3170,-3133,
+-3095,-3060,-3031,-3008,-2987,-2967,-2945,-2919,-2890,-2857,-2823,-2791,-2760,-2727,-2687,-2640,-2590,-2539,-2488,-2436,-2382,
+-2328,-2276,-2225,-2173,-2119,-2064,-2008,-1949,-1884,-1811,-1730,-1647,-1568,-1492,-1416,-1338,-1256,-1174,-1093,-1015,-941,
+-870,-803,-737,-668,-592,-505,-409,-311,-214,-119,-25,69,162,251,336,420,505,592,673,744,801,
+851,907,975,1056,1142,1227,1305,1380,1453,1528,1603,1678,1750,1821,1893,1965,2039,2115,2194,2274,2356,
+2436,2512,2584,2653,2723,2798,2878,2964,3054,3143,3228,3307,3381,3451,3524,3601,3680,3758,3829,3893,3950,
+4007,4068,4134,4204,4274,4339,4398,4454,4510,4571,4640,4714,4790,4864,4935,5007,5084,5167,5252,5334,5409,
+5477,5538,5593,5640,5683,5726,5775,5831,5885,5928,5957,5975,5988,6002,6013,6017,6013,6008,6007,6010,6009,
+5997,5973,5947,5928,5916,5905,5887,5861,5834,5811,5789,5762,5729,5694,5670,5659,5654,5643,5618,5582,5548,
+5523,5507,5492,5466,5424,5372,5317,5268,5226,5186,5147,5113,5093,5094,5113,5135,5145,5135,5111,5087,5072,
+5066,5059,5042,5012,4973,4934,4901,4875,4853,4827,4790,4740,4687,4647,4630,4630,4636,4636,4632,4634,4645,
+4656,4657,4651,4665,4732,4863,5035,5204,5333,5413,5466,5516,5570,5615,5637,5634,5617,5599,5590,5589,5594,
+5601,5606,5602,5578,5528,5455,5370,5291,5230,5194,5180,5183,5202,5233,5272,5305,5319,5307,5279,5253,5241,
+5239,5226,5189,5132,5136,5078,5040,5019,4993,4941,4868,4800,4760,4750,4755,4759,4762,4774,4793,4798,4766,
+4698,4620,4562,4536,4527,4519,4506,4496,4491,4482,4455,4417,4395,4420,4498,4608,4716,4796,4845,4863,4847,
+4792,4703,4605,4524,4479,4465,4464,4462,4457,4451,4448,4444,4441,4445,4462,4494,4536,4574,4603,4626,4653,
+4689,4732,4763,4759,4699,4580,4420,4257,4131,4066,4063,4092,4107,4067,3954,3785,3606,3471,3413,3431,3490,
+3550,3594,3634,3697,3795,3912,4016,4080,4101,4099,4096,4105,4125,4146,4158,4156,4139,4109,4076,4048,4031,
+4020,4008,3987,3961,3943,3938,3946,3953,3948,3924,3888,3850,3819,3801,3794,3794,3793,3786,3772,3757,3753,
+3770,3808,3853,3884,3889,3868,3834,3802,3773,3741,3693,3629,3556,3491,3442,3411,3391,3372,3345,3302,3243,
+3173,3104,3046,3005,2977,2952,2924,2891,2857,2828,2815,2825,2857,2898,2926,2925,2900,2872,2863,2874,2879,
+2854,2793,2724,2681,2680,2703,2718,2698,2642,2563,2476,2389,2303,2224,2155,2099,2052,2005,1954,1889,1792,
+1641,1422,1150,868,624,445,312,179,0,-244,-530,-817,-1072,-1286,-1471,-1642,-1801,-1933,-2011,-2020,-1961,
+-1854,-1724,-1598,-1492,-1419,-1385,-1389,-1417,-1446,-1460,-1453,-1436,-1426,-1432,-1458,-1498,-1550,-1616,-1701,-1801,-1907,
+-2009,-2101,-2184,-2265,-2344,-2419,-2483,-2534,-2578,-2622,-2671,-2726,-2784,-2838,-2886,-2932,-2982,-3040,-3103,-3162,-3205,
+-3234,-3255,-3281,-3318,-3362,-3404,-3440,-3476,-3519,-3570,-3614,-3638,-3638,-3628,-3623,-3633,-3651,-3664,-3672,-3691,-3739,
+-3823,-3927,-4028,-4112,-4183,-4252,-4319,-4373,-4401,-4406,-4411,-4440,-4498,-4568,-4620,-4637,-4618,-4575,-4518,-4452,-4377,
+-4298,-4216,-4123,-4005,-3852,-3674,-3504,-3379,-3320,-3324,-3368,-3432,-3506,-3590,-3686,-3791,-3901,-4008,-4110,-4203,-4285,
+-4358,-4429,-4510,-4612,-4743,-4902,-5082,-5272,-5462,-5641,-5798,-5924,-6019,-6086,-6133,-6167,-6193,-6212,-6229,-6246,-6271,
+-6302,-6336,-6368,-6397,-6429,-6471,-6523,-6577,-6620,-6646,-6657,-6663,-6668,-6669,-6663,-6649,-6635,-6628,-6630,-6638,-6647,
+-6654,-6655,-6651,-6641,-6631,-6627,-6632,-6643,-6652,-6650,-6636,-6611,-6580,-6543,-6502,-6463,-6432,-6413,-6399,-6381,-6351,
+-6311,-6266,-6226,-6190,-6156,-6116,-6066,-6002,-5930,-5858,-5797,-5753,-5723,-5703,-5693,-5697,-5723,-5765,-5805,-5820,-5799,
+-5750,-5692,-5645,-5616,-5597,-5579,-5556,-5527,-5495,-5462,-5423,-5376,-5320,-5256,-5187,-5115,-5041,-4967,-4895,-4826,-4761,
+-4697,-4632,-4565,-4496,-4434,-4382,-4343,-4314,-4287,-4253,-4205,-4136,-4049,-3950,-3849,-3752,-3661,-3569,-3470,-3365,-3259,
+-3163,-3078,-2998,-2913,-2820,-2722,-2625,-2530,-2431,-2315,-2180,-2035,-1897,-1782,-1693,-1623,-1559,-1494,-1425,-1356,-1287,
+-1220,-1156,-1095,-1041,-1000,-976,-964,-953,-926,-871,-787,-685,-581,-485,-397,-310,-220,-128,-37,47,126,
+194,249,293,333,384,455,546,646,743,830,907,981,1056,1136,1217,1295,1363,1420,1474,1541,1629,
+1731,1829,1912,1983,2059,2152,2260,2362,2438,2483,2504,2514,2514,2503,2478,2445,2409,2374,2341,2313,2297,
+2298,2314,2336,2357,2376,2400,2430,2463,2489,2506,2525,2560,2616,2687,2756,2812,2853,2888,2923,2959,2992,
+3015,3028,3033,3035,3042,3058,3085,3120,3156,3187,3211,3235,3264,3303,3357,3427,3517,3625,3736,3829,3889,
+3921,3944,3960,3939,3828,3591,3248,2872,2544,2292,2082,1859,1606,1374,1241,1252,1386,1570,1735,1852,1930,
+1986,2029,2051,2051,2038,2021,2007,1989,1964,1932,1898,1869,1841,1810,1773,1728,1680,1629,1577,1524,1472,
+1418,1361,1301,1241,1188,1141,1098,1052,998,940,885,836,791,748,704,661,619,576,533,488,444,
+401,358,316,274,236,200,162,120,74,29,-10,-46,-81,-119,-158,-194,-227,-259,-294,-332,-369,
+-403,-435,-468,-501,-531,-555,-576,-599,-628,-662,-697,-733,-770,-805,-832,-848,-856,-868,-888,-916,-943,
+-966,-990,-1023,-1063,-1100,-1132,-1169,-1218,-1264,-1265,-1185,-1041,-908,-879,-997,-1212,-1420,-1528,-1517,-1438,-1356,
+-1304,-1269,-1227,-1172,-1121,-1093,-1094,-1112,-1132,-1151,-1173,-1198,-1222,-1237,-1241,-1240,-1241,-1249,-1260,-1268,-1272,
+-1272,-1269,-1265,-1256,-1240,-1220,-1204,-1201,-1212,-1234,-1256,-1271,-1273,-1265,-1252,-1240,-1231,-1228,-1231,-1237,-1244,
+-1247,-1247,-1245,-1241,-1235,-1227,-1218,-1212,-1209,-1207,-1202,-1193,-1182,-1175,-1173,-1172,-1166,-1156,-1145,-1140,-1139,
+-1137,-1129,-1115,-1099,-1089,-1084,-1082,-1079,-1074,-1067,-1059,-1051,-1046,-1045,-1049,-1056,-1062,-1063,-1062,-1059,-1058,
+-1057,-1057,-1057,-1061,-1068,-1078,-1086,-1091,-1095,-1100,-1109,-1120,-1134,-1148,-1162,-1175,-1185,-1193,-1199,-1204,-1208,
+-1214,-1222,-1231,-1241,-1252,-1263,-1274,-1283,-1288,-1288,-1285,-1282,-1285,-1295,-1315,-1339,-1364,-1385,-1403,-1418,-1431,
+-1444,-1460,-1480,-1503,-1525,-1544,-1560,-1575,-1594,-1616,-1640,-1664,-1687,-1711,-1732,-1750,-1764,-1780,-1804,-1836,-1873,
+-1906,-1933,-1956,-1980,-2007,-2034,-2058,-2079,-2098,-2114,-2126,-2137,-2153,-2179,-2215,-2256,-2294,-2325,-2352,-2380,-2412,
+-2444,-2476,-2507,-2539,-2573,-2607,-2637,-2664,-2688,-2712,-2735,-2757,-2783,-2813,-2846,-2879,-2904,-2922,-2937,-2953,-2974,
+-2997,-3022,-3046,-3070,-3091,-3107,-3119,-3131,-3148,-3171,-3196,-3220,-3242,-3265,-3290,-3316,-3338,-3355,-3368,-3382,-3398,
+-3412,-3422,-3428,-3432,-3438,-3450,-3466,-3483,-3499,-3510,-3518,-3523,-3528,-3533,-3537,-3540,-3545,-3554,-3565,-3573,-3574,
+-3565,-3553,-3545,-3547,-3555,-3564,-3568,-3563,-3549,-3532,-3516,-3507,-3503,-3497,-3484,-3460,-3433,-3410,-3391,-3363,-3315,
+-3249,-3176,-3109,-3049,-2984,-2913,-2851,-2822,-2827,-2837,-2807,-2713,-2571,-2430,-2336,-2301,-2304,-2314,-2314,-2303,-2291,
+-2280,-2271,-2261,-2249,-2236,-2220,-2198,-2171,-2140,-2109,-2079,-2047,-2011,-1973,-1938,-1912,-1894,-1883,-1873,-1867,-1864,
+-1868,-1877,-1885,-1883,-1865,-1836,-1805,-1782,-1769,-1755,-1728,-1681,-1625,-1584,-1580,-1622,-1693,-1760,-1788,-1763,-1702,
+-1643,-1615,-1619,-1621,-1582,-1490,-1379,-1297,-1272,-1281,-1279,-1245,-1209,-1230,-1343,-1525,-1710,-1836,-1891,-1907,-1926,
+-1963,-2006,-2040,-2064,-2094,-2139,-2193,-2243,-2281,-2312,-2346,-2383,-2419,-2446,-2467,-2490,-2520,-2554,-2584,-2604,-2617,
+-2632,-2658,-2695,-2733,-2760,-2767,-2764,-2770,-2806,-2881,-2979,-3074,-3144,-3183,-3203,-3221,-3240,-3256,-3261,-3258,-3252,
+-3251,-3259,-3272,-3288,-3307,-3327,-3343,-3351,-3351,-3345,-3343,-3345,-3349,-3347,-3335,-3312,-3285,-3261,-3245,-3242,-3253,
+-3276,-3310,-3348,-3385,-3418,-3445,-3469,-3489,-3503,-3506,-3494,-3469,-3438,-3412,-3397,-3398,-3408,-3423,-3438,-3452,-3463,
+-3465,-3456,-3438,-3421,-3415,-3425,-3445,-3465,-3476,-3474,-3461,-3438,-3402,-3357,-3315,-3295,-3308,-3352,-3407,-3453,-3477,
+-3483,-3484,-3489,-3503,-3521,-3538,-3545,-3536,-3509,-3469,-3426,-3392,-3370,-3357,-3348,-3345,-3352,-3373,-3403,-3429,-3438,
+-3431,-3418,-3407,-3402,-3395,-3383,-3367,-3354,-3347,-3345,-3339,-3326,-3308,-3290,-3277,-3267,-3261,-3257,-3259,-3265,-3273,
+-3279,-3282,-3286,-3294,-3306,-3318,-3326,-3327,-3320,-3303,-3276,-3242,-3205,-3171,-3140,-3110,-3079,-3045,-3013,-2984,-2958,
+-2930,-2897,-2863,-2830,-2799,-2766,-2725,-2678,-2625,-2572,-2518,-2464,-2410,-2358,-2308,-2260,-2210,-2156,-2100,-2045,-1988,
+-1927,-1858,-1782,-1702,-1623,-1546,-1467,-1383,-1298,-1216,-1138,-1064,-989,-916,-845,-777,-709,-632,-543,-443,-341,
+-244,-154,-68,16,101,186,271,358,447,534,613,676,728,777,836,910,997,1090,1179,1261,1335,
+1403,1468,1534,1604,1680,1759,1839,1916,1990,2065,2143,2223,2305,2384,2460,2533,2605,2680,2758,2839,2925,
+3014,3104,3191,3272,3346,3415,3483,3554,3629,3707,3781,3851,3915,3978,4042,4109,4177,4245,4309,4369,4426,
+4483,4544,4612,4686,4764,4840,4915,4990,5069,5154,5242,5328,5404,5470,5524,5571,5614,5657,5706,5761,5819,
+5871,5910,5932,5944,5955,5967,5976,5975,5966,5958,5960,5971,5980,5975,5955,5929,5907,5891,5875,5852,5825,
+5799,5779,5760,5733,5696,5657,5629,5616,5610,5594,5562,5519,5481,5459,5450,5438,5411,5366,5312,5265,5230,
+5202,5169,5127,5087,5065,5076,5111,5149,5164,5147,5110,5073,5047,5032,5016,4992,4961,4928,4897,4868,4841,
+4812,4777,4731,4675,4622,4586,4577,4587,4596,4590,4574,4565,4573,4591,4602,4606,4631,4713,4863,5050,5222,
+5338,5401,5443,5493,5554,5604,5623,5611,5584,5559,5543,5536,5537,5546,5558,5563,5545,5496,5421,5333,5253,
+5194,5162,5156,5169,5196,5229,5263,5292,5307,5305,5289,5272,5262,5256,5238,5197,5136,5109,5053,5013,4989,
+4961,4913,4849,4797,4783,4807,4842,4862,4863,4862,4867,4867,4837,4767,4675,4596,4548,4528,4517,4507,4498,
+4493,4482,4457,4422,4401,4421,4487,4580,4672,4744,4795,4822,4816,4765,4675,4572,4490,4447,4435,4435,4431,
+4424,4421,4424,4426,4421,4415,4418,4437,4469,4501,4525,4543,4564,4597,4636,4667,4666,4612,4492,4311,4100,
+3909,3788,3760,3809,3879,3907,3850,3715,3550,3416,3351,3352,3386,3418,3439,3467,3525,3619,3731,3833,3907,
+3953,3984,4010,4031,4047,4056,4065,4073,4075,4067,4049,4033,4026,4028,4026,4011,3988,3970,3969,3983,3997,
+3993,3966,3923,3877,3842,3823,3819,3829,3845,3858,3860,3850,3837,3831,3838,3851,3854,3838,3806,3769,3740,
+3721,3702,3671,3622,3563,3506,3464,3439,3425,3411,3388,3351,3305,3257,3213,3174,3134,3087,3034,2983,2941,
+2914,2900,2898,2910,2939,2978,3009,3011,2984,2946,2921,2914,2909,2881,2827,2767,2730,2727,2737,2729,2680,
+2596,2497,2401,2316,2240,2170,2109,2059,2025,2006,1996,1976,1919,1796,1596,1337,1065,826,638,482,313,
+95,-178,-480,-769,-1018,-1225,-1409,-1589,-1762,-1912,-2016,-2060,-2048,-1993,-1908,-1803,-1692,-1598,-1543,-1537,-1565,
+-1595,-1595,-1561,-1512,-1481,-1487,-1528,-1585,-1644,-1701,-1766,-1843,-1931,-2019,-2100,-2175,-2250,-2330,-2410,-2483,-2541,
+-2586,-2627,-2670,-2722,-2777,-2832,-2883,-2930,-2979,-3035,-3098,-3160,-3214,-3254,-3282,-3308,-3340,-3377,-3417,-3453,-3487,
+-3522,-3561,-3598,-3625,-3639,-3645,-3654,-3671,-3692,-3709,-3719,-3734,-3764,-3810,-3861,-3904,-3939,-3977,-4030,-4090,-4134,
+-4144,-4125,-4104,-4108,-4138,-4171,-4181,-4157,-4115,-4074,-4043,-4016,-3982,-3943,-3902,-3855,-3791,-3698,-3582,-3473,-3406,
+-3402,-3455,-3546,-3657,-3781,-3916,-4059,-4198,-4320,-4417,-4489,-4540,-4577,-4606,-4638,-4683,-4750,-4843,-4963,-5107,-5264,
+-5423,-5571,-5700,-5807,-5897,-5976,-6043,-6097,-6132,-6150,-6160,-6174,-6200,-6240,-6286,-6330,-6368,-6404,-6441,-6483,-6522,
+-6554,-6578,-6599,-6624,-6651,-6672,-6677,-6668,-6651,-6637,-6630,-6628,-6629,-6633,-6638,-6643,-6645,-6646,-6649,-6656,-6664,
+-6666,-6655,-6630,-6596,-6558,-6518,-6477,-6437,-6402,-6370,-6336,-6299,-6262,-6231,-6207,-6183,-6143,-6079,-5992,-5893,-5795,
+-5705,-5627,-5566,-5522,-5497,-5489,-5497,-5525,-5574,-5637,-5699,-5739,-5748,-5730,-5696,-5655,-5614,-5572,-5532,-5498,-5472,
+-5451,-5429,-5401,-5365,-5322,-5273,-5215,-5147,-5071,-4992,-4916,-4846,-4783,-4723,-4662,-4597,-4528,-4462,-4408,-4370,-4345,
+-4316,-4268,-4189,-4087,-3976,-3875,-3789,-3712,-3630,-3533,-3423,-3310,-3206,-3116,-3038,-2961,-2880,-2790,-2697,-2603,-2506,
+-2396,-2267,-2120,-1970,-1837,-1736,-1664,-1608,-1551,-1482,-1402,-1317,-1236,-1166,-1110,-1069,-1042,-1026,-1015,-1004,-989,
+-963,-917,-846,-752,-645,-538,-438,-347,-259,-169,-75,21,116,202,271,320,356,395,452,535,636,
+742,840,924,995,1063,1132,1206,1281,1351,1414,1476,1546,1629,1721,1808,1886,1957,2038,2134,2237,2327,
+2386,2414,2420,2419,2416,2409,2393,2369,2340,2313,2293,2286,2296,2320,2349,2372,2388,2404,2428,2461,2494,
+2517,2535,2563,2617,2696,2783,2854,2898,2923,2945,2977,3019,3059,3087,3098,3099,3097,3102,3119,3145,3175,
+3204,3228,3251,3283,3327,3382,3442,3504,3576,3667,3773,3876,3953,4003,4036,4062,4056,3962,3737,3390,2994,
+2635,2356,2132,1909,1667,1450,1335,1364,1507,1691,1846,1949,2017,2069,2108,2122,2109,2080,2053,2032,2010,
+1979,1940,1901,1868,1838,1804,1762,1714,1664,1613,1561,1506,1453,1401,1348,1291,1227,1163,1106,1058,1012,
+964,913,862,813,767,722,676,631,590,550,510,466,420,373,329,287,248,210,172,132,89,
+43,0,-40,-75,-109,-145,-183,-221,-255,-287,-318,-351,-385,-417,-448,-477,-507,-535,-563,-590,-617,
+-646,-677,-712,-752,-795,-834,-860,-873,-878,-887,-906,-930,-953,-976,-1003,-1039,-1078,-1111,-1141,-1178,-1230,
+-1278,-1287,-1231,-1136,-1068,-1093,-1221,-1393,-1522,-1553,-1498,-1414,-1348,-1310,-1280,-1238,-1185,-1139,-1116,-1114,-1123,
+-1136,-1151,-1169,-1190,-1210,-1226,-1236,-1244,-1249,-1251,-1252,-1254,-1258,-1265,-1271,-1273,-1269,-1260,-1247,-1236,-1230,
+-1231,-1240,-1252,-1264,-1275,-1281,-1279,-1269,-1252,-1236,-1227,-1229,-1238,-1250,-1258,-1261,-1261,-1256,-1248,-1238,-1230,
+-1227,-1227,-1224,-1216,-1205,-1195,-1190,-1186,-1178,-1166,-1156,-1151,-1152,-1152,-1144,-1131,-1117,-1107,-1103,-1099,-1094,
+-1089,-1084,-1078,-1069,-1061,-1057,-1061,-1072,-1083,-1088,-1088,-1088,-1089,-1092,-1095,-1097,-1101,-1111,-1123,-1132,-1135,
+-1132,-1130,-1135,-1145,-1159,-1173,-1186,-1197,-1208,-1216,-1222,-1227,-1234,-1242,-1251,-1261,-1270,-1282,-1296,-1309,-1320,
+-1323,-1318,-1309,-1302,-1302,-1313,-1334,-1360,-1386,-1408,-1424,-1435,-1445,-1458,-1475,-1497,-1520,-1540,-1557,-1573,-1593,
+-1617,-1643,-1667,-1691,-1716,-1743,-1771,-1794,-1813,-1833,-1860,-1896,-1935,-1968,-1994,-2017,-2045,-2077,-2110,-2138,-2160,
+-2179,-2195,-2208,-2219,-2234,-2259,-2296,-2338,-2377,-2408,-2433,-2459,-2490,-2524,-2560,-2594,-2629,-2662,-2695,-2724,-2751,
+-2775,-2798,-2821,-2847,-2878,-2914,-2950,-2981,-3002,-3015,-3027,-3044,-3067,-3093,-3120,-3146,-3173,-3197,-3215,-3228,-3240,
+-3255,-3277,-3302,-3326,-3349,-3371,-3394,-3413,-3427,-3437,-3445,-3457,-3471,-3486,-3497,-3505,-3512,-3522,-3536,-3556,-3579,
+-3598,-3610,-3614,-3613,-3614,-3620,-3628,-3635,-3640,-3646,-3656,-3666,-3669,-3663,-3653,-3647,-3649,-3658,-3665,-3666,-3659,
+-3647,-3632,-3614,-3599,-3588,-3577,-3560,-3533,-3500,-3469,-3444,-3416,-3372,-3310,-3237,-3165,-3097,-3024,-2946,-2876,-2837,
+-2836,-2850,-2836,-2765,-2642,-2506,-2399,-2342,-2326,-2330,-2334,-2332,-2327,-2321,-2317,-2316,-2315,-2310,-2296,-2267,-2229,
+-2188,-2149,-2109,-2068,-2027,-1993,-1972,-1962,-1957,-1949,-1935,-1918,-1906,-1905,-1912,-1918,-1914,-1897,-1869,-1840,-1818,
+-1798,-1772,-1729,-1677,-1636,-1628,-1663,-1730,-1800,-1843,-1841,-1795,-1727,-1666,-1632,-1621,-1608,-1563,-1480,-1386,-1320,
+-1301,-1307,-1299,-1262,-1227,-1251,-1364,-1543,-1720,-1837,-1883,-1896,-1919,-1966,-2021,-2067,-2101,-2137,-2187,-2244,-2295,
+-2333,-2361,-2391,-2424,-2454,-2474,-2488,-2505,-2531,-2564,-2594,-2617,-2636,-2656,-2680,-2707,-2731,-2749,-2764,-2786,-2823,
+-2879,-2950,-3024,-3089,-3139,-3175,-3207,-3240,-3272,-3297,-3308,-3305,-3291,-3274,-3262,-3259,-3268,-3288,-3310,-3325,-3330,
+-3327,-3323,-3323,-3328,-3331,-3327,-3315,-3301,-3288,-3277,-3267,-3260,-3259,-3272,-3300,-3339,-3376,-3403,-3421,-3433,-3448,
+-3465,-3479,-3482,-3469,-3446,-3421,-3399,-3384,-3375,-3375,-3387,-3411,-3441,-3465,-3475,-3470,-3459,-3453,-3452,-3455,-3454,
+-3447,-3436,-3420,-3394,-3355,-3309,-3273,-3269,-3306,-3374,-3447,-3496,-3509,-3493,-3468,-3450,-3447,-3454,-3463,-3467,-3462,
+-3448,-3427,-3404,-3383,-3371,-3368,-3376,-3394,-3422,-3456,-3487,-3502,-3499,-3483,-3467,-3463,-3471,-3483,-3489,-3486,-3477,
+-3468,-3459,-3449,-3438,-3428,-3426,-3430,-3436,-3438,-3436,-3434,-3435,-3436,-3433,-3422,-3406,-3390,-3381,-3380,-3384,-3388,
+-3386,-3372,-3347,-3314,-3280,-3247,-3214,-3177,-3132,-3085,-3044,-3013,-2989,-2962,-2927,-2888,-2850,-2815,-2780,-2741,-2695,
+-2646,-2595,-2545,-2494,-2441,-2388,-2337,-2289,-2238,-2185,-2130,-2076,-2021,-1962,-1895,-1821,-1744,-1668,-1590,-1508,-1420,
+-1332,-1249,-1175,-1105,-1035,-961,-889,-818,-747,-669,-579,-481,-383,-291,-207,-126,-45,36,117,198,280,
+364,447,524,588,642,696,758,834,922,1015,1107,1196,1277,1349,1412,1473,1538,1611,1693,1776,1857,
+1935,2012,2091,2172,2252,2328,2403,2478,2556,2636,2717,2798,2881,2969,3059,3149,3234,3310,3379,3445,3513,
+3585,3660,3736,3810,3880,3948,4014,4081,4149,4215,4280,4343,4403,4463,4525,4593,4668,4747,4826,4903,4979,
+5058,5145,5234,5318,5389,5446,5493,5537,5583,5633,5686,5741,5794,5840,5875,5899,5914,5924,5932,5935,5930,
+5922,5919,5928,5945,5957,5951,5928,5897,5871,5854,5838,5816,5789,5763,5742,5722,5696,5661,5626,5600,5585,
+5569,5541,5497,5450,5416,5402,5399,5387,5353,5300,5245,5206,5187,5176,5157,5124,5088,5072,5090,5132,5169,
+5175,5147,5099,5056,5025,5002,4975,4943,4911,4885,4863,4839,4808,4775,4740,4703,4659,4617,4591,4593,4614,
+4630,4618,4583,4550,4543,4559,4581,4598,4629,4709,4854,5038,5211,5332,5400,5446,5496,5551,5588,5591,5567,
+5534,5509,5494,5485,5480,5481,5489,5494,5483,5447,5392,5331,5278,5239,5218,5214,5224,5238,5251,5259,5265,
+5272,5275,5271,5260,5245,5229,5205,5164,5109,5065,5015,4973,4944,4920,4885,4842,4815,4827,4876,4930,4955,
+4941,4909,4883,4865,4833,4770,4685,4604,4550,4522,4508,4496,4486,4479,4468,4448,4422,4410,4433,4494,4571,
+4642,4697,4738,4767,4769,4728,4643,4541,4460,4418,4409,4407,4397,4383,4376,4379,4386,4385,4376,4370,4377,
+4397,4420,4439,4455,4472,4496,4525,4552,4566,4549,4477,4335,4128,3895,3695,3581,3568,3618,3668,3659,3577,
+3451,3331,3256,3229,3232,3242,3254,3283,3341,3425,3520,3607,3684,3757,3829,3896,3944,3968,3977,3986,4003,
+4020,4028,4026,4023,4031,4047,4060,4055,4035,4016,4012,4025,4038,4034,4006,3959,3910,3873,3857,3864,3888,
+3919,3940,3942,3923,3891,3861,3838,3821,3800,3770,3736,3707,3691,3684,3679,3664,3635,3595,3553,3516,3488,
+3469,3452,3434,3410,3384,3359,3335,3305,3256,3184,3099,3021,2970,2950,2950,2961,2981,3013,3054,3086,3087,
+3052,3003,2964,2948,2938,2912,2863,2810,2778,2774,2773,2742,2664,2551,2433,2335,2263,2207,2154,2102,2054,
+2023,2015,2023,2022,1976,1854,1653,1403,1154,948,794,660,497,271,-17,-332,-630,-886,-1104,-1305,-1506,
+-1703,-1871,-1988,-2049,-2063,-2044,-1999,-1928,-1839,-1757,-1711,-1716,-1758,-1798,-1798,-1751,-1679,-1623,-1611,-1644,-1702,
+-1762,-1812,-1860,-1915,-1980,-2049,-2114,-2174,-2236,-2309,-2391,-2474,-2545,-2601,-2646,-2687,-2732,-2783,-2836,-2889,-2940,
+-2991,-3045,-3105,-3168,-3227,-3275,-3308,-3331,-3354,-3385,-3423,-3462,-3495,-3522,-3549,-3579,-3612,-3643,-3666,-3686,-3706,
+-3728,-3751,-3772,-3790,-3802,-3806,-3795,-3772,-3750,-3744,-3762,-3788,-3796,-3770,-3725,-3695,-3705,-3750,-3797,-3813,-3793,
+-3758,-3731,-3717,-3701,-3673,-3637,-3609,-3593,-3576,-3539,-3481,-3428,-3415,-3469,-3586,-3748,-3928,-4111,-4288,-4449,-4583,
+-4682,-4744,-4776,-4788,-4789,-4788,-4790,-4803,-4832,-4880,-4953,-5051,-5172,-5302,-5428,-5537,-5632,-5720,-5807,-5893,-5969,
+-6025,-6058,-6075,-6091,-6119,-6162,-6214,-6267,-6312,-6351,-6386,-6420,-6452,-6480,-6504,-6530,-6561,-6592,-6614,-6620,-6611,
+-6598,-6588,-6585,-6587,-6591,-6600,-6614,-6631,-6644,-6649,-6646,-6638,-6622,-6598,-6562,-6517,-6467,-6414,-6361,-6308,-6260,
+-6215,-6168,-6110,-6044,-5983,-5944,-5930,-5922,-5890,-5813,-5699,-5573,-5459,-5370,-5303,-5253,-5218,-5200,-5201,-5219,-5254,
+-5304,-5365,-5431,-5495,-5550,-5593,-5619,-5619,-5591,-5541,-5484,-5436,-5406,-5388,-5373,-5357,-5338,-5318,-5290,-5245,-5180,
+-5100,-5017,-4940,-4873,-4815,-4760,-4704,-4645,-4579,-4510,-4445,-4393,-4351,-4305,-4238,-4140,-4023,-3910,-3819,-3752,-3691,
+-3613,-3512,-3395,-3280,-3179,-3090,-3006,-2921,-2833,-2747,-2665,-2583,-2490,-2377,-2240,-2088,-1939,-1814,-1724,-1660,-1604,
+-1536,-1451,-1357,-1268,-1192,-1134,-1093,-1070,-1063,-1064,-1064,-1055,-1035,-1007,-967,-907,-821,-714,-598,-487,-388,
+-296,-203,-103,1,107,202,280,335,376,417,473,554,654,761,861,949,1025,1094,1160,1228,1297,
+1365,1431,1496,1564,1636,1709,1780,1850,1924,2011,2111,2211,2294,2349,2376,2384,2382,2373,2355,2331,2304,
+2282,2272,2277,2299,2334,2371,2399,2413,2421,2434,2461,2495,2525,2547,2569,2609,2677,2767,2854,2918,2952,
+2968,2986,3019,3064,3108,3137,3145,3140,3134,3139,3158,3186,3214,3235,3254,3281,3327,3392,3463,3523,3569,
+3616,3687,3789,3903,3997,4057,4091,4115,4116,4040,3834,3492,3079,2688,2377,2135,1916,1695,1507,1417,1461,
+1607,1782,1924,2014,2073,2120,2154,2164,2145,2112,2082,2057,2029,1988,1940,1895,1860,1828,1790,1743,1692,
+1642,1594,1544,1490,1435,1384,1334,1279,1215,1145,1079,1022,974,930,886,841,796,750,702,652,605,
+563,524,485,442,395,349,307,268,230,189,146,103,59,15,-27,-67,-104,-138,-173,-210,-246,
+-279,-309,-335,-363,-392,-423,-453,-482,-507,-533,-560,-591,-624,-659,-692,-726,-764,-803,-838,-863,-876,
+-884,-895,-913,-935,-956,-977,-1005,-1040,-1077,-1109,-1142,-1187,-1247,-1305,-1330,-1308,-1262,-1246,-1296,-1404,-1516,
+-1574,-1560,-1499,-1433,-1382,-1341,-1294,-1238,-1187,-1152,-1136,-1130,-1128,-1131,-1144,-1165,-1185,-1199,-1210,-1222,-1236,
+-1247,-1250,-1245,-1241,-1244,-1254,-1266,-1273,-1276,-1275,-1272,-1266,-1257,-1245,-1235,-1230,-1233,-1246,-1265,-1282,-1287,
+-1277,-1258,-1240,-1232,-1234,-1243,-1251,-1259,-1265,-1269,-1268,-1260,-1250,-1243,-1241,-1240,-1236,-1228,-1219,-1211,-1204,
+-1194,-1183,-1172,-1166,-1163,-1159,-1151,-1140,-1131,-1128,-1126,-1123,-1116,-1108,-1101,-1093,-1082,-1071,-1066,-1071,-1086,
+-1102,-1111,-1113,-1113,-1117,-1123,-1128,-1129,-1131,-1138,-1149,-1158,-1159,-1155,-1149,-1150,-1159,-1172,-1187,-1202,-1216,
+-1229,-1240,-1247,-1253,-1259,-1267,-1275,-1282,-1291,-1304,-1322,-1340,-1351,-1352,-1342,-1328,-1318,-1318,-1331,-1354,-1383,
+-1410,-1431,-1445,-1453,-1462,-1476,-1497,-1522,-1544,-1560,-1572,-1587,-1609,-1639,-1671,-1698,-1722,-1746,-1772,-1801,-1827,
+-1851,-1876,-1908,-1947,-1985,-2016,-2039,-2060,-2088,-2122,-2156,-2186,-2210,-2231,-2253,-2273,-2289,-2305,-2326,-2357,-2395,
+-2431,-2459,-2483,-2507,-2537,-2574,-2612,-2649,-2684,-2717,-2749,-2781,-2812,-2842,-2871,-2900,-2932,-2970,-3012,-3052,-3083,
+-3102,-3113,-3126,-3146,-3173,-3201,-3228,-3253,-3278,-3302,-3321,-3335,-3347,-3363,-3384,-3406,-3427,-3446,-3463,-3478,-3490,
+-3496,-3499,-3504,-3516,-3531,-3549,-3564,-3577,-3588,-3599,-3611,-3627,-3648,-3667,-3679,-3680,-3675,-3673,-3679,-3690,-3697,
+-3698,-3696,-3699,-3705,-3707,-3703,-3693,-3686,-3685,-3687,-3686,-3682,-3675,-3669,-3661,-3647,-3630,-3613,-3597,-3580,-3554,
+-3521,-3492,-3473,-3459,-3436,-3388,-3318,-3234,-3145,-3054,-2963,-2886,-2841,-2836,-2853,-2858,-2817,-2726,-2605,-2488,-2400,
+-2351,-2333,-2336,-2348,-2358,-2363,-2367,-2372,-2376,-2371,-2349,-2310,-2264,-2220,-2182,-2143,-2099,-2055,-2021,-2007,-2007,
+-2008,-1998,-1977,-1953,-1938,-1938,-1947,-1956,-1953,-1935,-1908,-1881,-1856,-1829,-1788,-1730,-1669,-1629,-1630,-1671,-1729,
+-1773,-1784,-1764,-1727,-1689,-1661,-1644,-1631,-1608,-1561,-1489,-1412,-1357,-1335,-1332,-1318,-1283,-1253,-1276,-1377,-1537,
+-1696,-1803,-1851,-1872,-1903,-1958,-2024,-2081,-2129,-2177,-2233,-2291,-2339,-2373,-2399,-2427,-2456,-2481,-2497,-2508,-2523,
+-2546,-2574,-2600,-2623,-2646,-2673,-2698,-2717,-2727,-2738,-2762,-2809,-2875,-2949,-3016,-3072,-3116,-3156,-3198,-3240,-3279,
+-3309,-3328,-3336,-3333,-3321,-3302,-3284,-3274,-3275,-3286,-3300,-3308,-3310,-3308,-3309,-3311,-3310,-3301,-3287,-3275,-3273,
+-3280,-3287,-3285,-3272,-3260,-3262,-3286,-3327,-3365,-3388,-3396,-3401,-3416,-3442,-3468,-3480,-3475,-3460,-3443,-3426,-3406,
+-3383,-3365,-3365,-3389,-3429,-3469,-3493,-3499,-3495,-3487,-3479,-3466,-3447,-3425,-3404,-3381,-3352,-3313,-3271,-3249,-3265,
+-3323,-3406,-3479,-3515,-3503,-3459,-3409,-3373,-3359,-3363,-3373,-3385,-3395,-3403,-3407,-3408,-3404,-3403,-3411,-3431,-3462,
+-3498,-3529,-3546,-3547,-3536,-3525,-3527,-3549,-3583,-3616,-3634,-3634,-3621,-3604,-3591,-3583,-3578,-3580,-3590,-3603,-3613,
+-3612,-3599,-3582,-3568,-3559,-3550,-3533,-3508,-3478,-3452,-3434,-3428,-3430,-3433,-3429,-3413,-3385,-3350,-3312,-3271,-3224,
+-3169,-3115,-3068,-3033,-3004,-2972,-2929,-2882,-2837,-2800,-2767,-2732,-2691,-2646,-2601,-2557,-2510,-2461,-2409,-2359,-2310,
+-2262,-2212,-2160,-2107,-2051,-1990,-1921,-1845,-1769,-1695,-1621,-1541,-1455,-1368,-1285,-1212,-1144,-1075,-1003,-930,-857,
+-782,-701,-612,-518,-425,-339,-259,-180,-99,-18,59,134,207,283,360,434,501,562,623,690,765,
+849,938,1031,1125,1215,1296,1365,1426,1487,1555,1630,1710,1791,1872,1956,2041,2124,2203,2278,2352,2429,
+2512,2596,2677,2757,2838,2924,3016,3109,3198,3277,3349,3416,3483,3553,3626,3699,3772,3843,3912,3982,4051,
+4120,4189,4257,4324,4388,4450,4514,4582,4657,4736,4814,4890,4967,5048,5136,5225,5304,5367,5415,5456,5503,
+5557,5616,5671,5719,5760,5799,5834,5863,5882,5892,5895,5894,5892,5894,5904,5920,5934,5935,5916,5881,5845,
+5820,5806,5797,5781,5757,5728,5700,5674,5648,5621,5598,5581,5565,5538,5496,5441,5391,5359,5346,5339,5318,
+5275,5220,5170,5142,5138,5143,5139,5120,5095,5086,5104,5138,5162,5154,5116,5066,5025,4996,4969,4936,4900,
+4873,4860,4852,4836,4812,4791,4780,4775,4761,4734,4709,4705,4722,4736,4718,4664,4605,4580,4599,4642,4685,
+4727,4794,4910,5064,5217,5332,5405,5454,5502,5547,5571,5565,5538,5509,5491,5478,5464,5447,5436,5435,5438,
+5436,5422,5401,5377,5353,5327,5302,5283,5272,5265,5253,5236,5222,5220,5227,5231,5221,5198,5171,5143,5110,
+5065,5021,4973,4926,4897,4883,4871,4855,4845,4862,4908,4956,4970,4939,4881,4825,4786,4750,4700,4634,4571,
+4528,4505,4492,4479,4465,4453,4441,4423,4405,4403,4436,4501,4577,4639,4680,4706,4723,4720,4680,4599,4501,
+4420,4380,4372,4371,4359,4340,4327,4326,4333,4335,4327,4319,4319,4332,4352,4370,4385,4397,4407,4420,4441,
+4472,4502,4501,4430,4264,4018,3750,3529,3405,3373,3391,3402,3371,3301,3216,3143,3093,3064,3051,3057,3088,
+3146,3221,3301,3381,3467,3568,3682,3789,3868,3911,3929,3943,3963,3986,4001,4007,4011,4024,4045,4059,4057,
+4041,4026,4026,4039,4051,4047,4021,3979,3935,3904,3895,3910,3942,3976,3993,3984,3951,3909,3870,3839,3810,
+3776,3739,3704,3683,3675,3675,3674,3668,3653,3631,3603,3570,3536,3508,3487,3472,3460,3449,3439,3429,3407,
+3357,3272,3166,3067,3002,2978,2983,3000,3024,3058,3098,3125,3120,3079,3024,2982,2963,2952,2923,2872,2819,
+2789,2784,2780,2741,2654,2535,2418,2327,2268,2225,2181,2128,2073,2031,2013,2013,2007,1956,1831,1632,1394,
+1173,1007,898,806,675,467,185,-135,-446,-719,-958,-1183,-1409,-1625,-1806,-1927,-1986,-2000,-1991,-1967,-1928,
+-1878,-1834,-1821,-1851,-1912,-1971,-1993,-1964,-1899,-1830,-1789,-1789,-1819,-1861,-1901,-1939,-1980,-2032,-2089,-2143,-2191,
+-2238,-2295,-2368,-2451,-2534,-2605,-2664,-2715,-2763,-2812,-2862,-2913,-2964,-3015,-3067,-3122,-3182,-3240,-3289,-3321,-3340,
+-3358,-3386,-3427,-3472,-3507,-3530,-3549,-3576,-3615,-3658,-3692,-3712,-3727,-3744,-3766,-3787,-3795,-3781,-3743,-3688,-3629,
+-3581,-3556,-3552,-3550,-3530,-3489,-3447,-3440,-3484,-3564,-3637,-3671,-3659,-3625,-3591,-3561,-3521,-3465,-3402,-3356,-3337,
+-3334,-3325,-3304,-3291,-3325,-3433,-3618,-3856,-4115,-4363,-4578,-4743,-4855,-4918,-4947,-4958,-4959,-4956,-4948,-4937,-4925,
+-4916,-4918,-4942,-4994,-5076,-5176,-5280,-5373,-5456,-5538,-5629,-5727,-5823,-5902,-5956,-5987,-6009,-6035,-6074,-6124,-6175,
+-6219,-6255,-6287,-6320,-6354,-6389,-6421,-6452,-6479,-6500,-6508,-6503,-6491,-6485,-6492,-6509,-6532,-6552,-6570,-6583,-6589,
+-6582,-6559,-6522,-6474,-6420,-6362,-6303,-6247,-6196,-6145,-6091,-6036,-5988,-5947,-5901,-5833,-5740,-5642,-5571,-5544,-5542,
+-5526,-5467,-5366,-5251,-5151,-5079,-5027,-4985,-4952,-4933,-4930,-4942,-4963,-4991,-5028,-5079,-5150,-5240,-5339,-5429,-5487,
+-5502,-5477,-5433,-5389,-5354,-5328,-5304,-5285,-5276,-5276,-5273,-5248,-5194,-5119,-5039,-4968,-4907,-4850,-4793,-4734,-4673,
+-4608,-4536,-4460,-4386,-4319,-4255,-4179,-4084,-3975,-3872,-3793,-3734,-3675,-3596,-3493,-3379,-3272,-3179,-3091,-2998,-2901,
+-2810,-2732,-2664,-2594,-2503,-2383,-2238,-2083,-1940,-1827,-1746,-1682,-1614,-1527,-1427,-1332,-1258,-1208,-1173,-1146,-1128,
+-1122,-1125,-1127,-1116,-1090,-1053,-1009,-950,-868,-761,-640,-519,-411,-314,-219,-120,-16,86,178,256,318,
+373,433,509,601,701,801,894,981,1066,1148,1223,1290,1349,1407,1466,1529,1592,1652,1708,1764,1827,
+1904,1997,2097,2192,2270,2327,2366,2390,2397,2383,2348,2304,2267,2251,2263,2299,2347,2394,2426,2441,2443,
+2445,2459,2486,2519,2546,2569,2598,2648,2722,2808,2887,2945,2979,3001,3025,3059,3101,3139,3162,3165,3154,
+3145,3151,3174,3208,3239,3264,3288,3326,3387,3466,3543,3595,3623,3650,3707,3807,3927,4029,4088,4115,4131,
+4129,4063,3872,3543,3129,2722,2388,2128,1904,1695,1531,1467,1529,1682,1853,1984,2061,2107,2144,2172,2179,
+2164,2138,2112,2086,2050,1998,1938,1886,1846,1812,1772,1724,1672,1624,1577,1526,1469,1411,1357,1307,1256,
+1197,1130,1062,1000,946,899,855,811,768,723,674,625,578,536,498,458,415,370,328,289,251,
+210,165,118,74,34,-4,-44,-86,-128,-167,-205,-240,-272,-301,-326,-348,-371,-397,-427,-458,-486,
+-509,-531,-558,-591,-631,-673,-711,-745,-776,-805,-833,-855,-870,-883,-898,-917,-938,-958,-980,-1006,-1036,
+-1067,-1098,-1136,-1190,-1257,-1320,-1357,-1365,-1366,-1390,-1450,-1523,-1568,-1565,-1527,-1483,-1453,-1426,-1383,-1318,-1248,
+-1197,-1172,-1160,-1147,-1131,-1127,-1142,-1168,-1188,-1196,-1197,-1205,-1220,-1236,-1242,-1241,-1238,-1242,-1252,-1263,-1271,
+-1278,-1285,-1290,-1288,-1279,-1262,-1242,-1225,-1217,-1222,-1240,-1263,-1282,-1287,-1278,-1263,-1251,-1245,-1243,-1244,-1248,
+-1259,-1272,-1280,-1279,-1269,-1257,-1252,-1252,-1251,-1246,-1236,-1226,-1218,-1211,-1203,-1195,-1187,-1178,-1168,-1156,-1145,
+-1140,-1141,-1143,-1141,-1133,-1124,-1116,-1107,-1096,-1084,-1079,-1086,-1101,-1117,-1125,-1127,-1129,-1136,-1145,-1152,-1152,
+-1150,-1150,-1156,-1162,-1164,-1161,-1158,-1160,-1168,-1180,-1195,-1212,-1230,-1248,-1262,-1271,-1279,-1286,-1292,-1298,-1303,
+-1310,-1323,-1342,-1360,-1370,-1367,-1354,-1340,-1334,-1340,-1358,-1384,-1413,-1439,-1459,-1470,-1476,-1485,-1502,-1529,-1558,
+-1580,-1592,-1598,-1608,-1629,-1662,-1697,-1727,-1750,-1769,-1791,-1816,-1842,-1869,-1900,-1938,-1979,-2018,-2047,-2067,-2087,
+-2111,-2140,-2168,-2191,-2211,-2233,-2261,-2289,-2312,-2329,-2346,-2369,-2399,-2430,-2458,-2482,-2507,-2537,-2572,-2610,-2646,
+-2680,-2712,-2746,-2783,-2823,-2863,-2902,-2939,-2977,-3020,-3066,-3109,-3142,-3162,-3174,-3189,-3210,-3238,-3265,-3291,-3315,
+-3338,-3361,-3379,-3393,-3407,-3425,-3445,-3463,-3477,-3489,-3499,-3510,-3518,-3522,-3526,-3533,-3547,-3564,-3582,-3598,-3614,
+-3626,-3634,-3640,-3649,-3664,-3683,-3696,-3698,-3693,-3692,-3700,-3713,-3721,-3718,-3709,-3705,-3708,-3710,-3706,-3697,-3688,
+-3681,-3675,-3665,-3655,-3650,-3652,-3654,-3647,-3630,-3610,-3593,-3578,-3556,-3526,-3499,-3486,-3487,-3485,-3458,-3395,-3302,
+-3193,-3083,-2984,-2907,-2864,-2858,-2874,-2887,-2870,-2810,-2713,-2596,-2482,-2394,-2344,-2334,-2350,-2375,-2395,-2408,-2416,
+-2418,-2406,-2373,-2325,-2277,-2239,-2211,-2182,-2144,-2102,-2068,-2051,-2046,-2039,-2023,-1999,-1979,-1970,-1974,-1986,-1995,
+-1995,-1982,-1958,-1928,-1896,-1859,-1809,-1746,-1685,-1649,-1655,-1695,-1742,-1766,-1759,-1733,-1707,-1692,-1685,-1677,-1660,
+-1629,-1583,-1521,-1455,-1401,-1370,-1357,-1342,-1314,-1290,-1304,-1380,-1507,-1645,-1751,-1813,-1854,-1899,-1961,-2030,-2096,
+-2154,-2211,-2270,-2325,-2369,-2401,-2428,-2456,-2484,-2507,-2523,-2537,-2555,-2578,-2600,-2619,-2637,-2662,-2692,-2720,-2735,
+-2740,-2750,-2783,-2846,-2929,-3011,-3075,-3119,-3155,-3193,-3236,-3279,-3311,-3329,-3337,-3340,-3340,-3336,-3326,-3313,-3303,
+-3300,-3302,-3304,-3303,-3300,-3298,-3300,-3299,-3289,-3267,-3243,-3230,-3237,-3260,-3282,-3288,-3275,-3256,-3252,-3274,-3314,
+-3352,-3372,-3376,-3381,-3404,-3442,-3479,-3496,-3492,-3478,-3468,-3460,-3442,-3410,-3377,-3363,-3383,-3427,-3474,-3504,-3514,
+-3511,-3505,-3495,-3477,-3449,-3416,-3384,-3351,-3313,-3272,-3240,-3237,-3275,-3349,-3431,-3488,-3497,-3460,-3398,-3341,-3310,
+-3310,-3331,-3357,-3382,-3404,-3424,-3444,-3459,-3472,-3484,-3502,-3527,-3555,-3576,-3585,-3582,-3575,-3574,-3589,-3626,-3678,
+-3734,-3775,-3790,-3780,-3756,-3733,-3719,-3712,-3710,-3711,-3715,-3723,-3727,-3721,-3704,-3682,-3665,-3655,-3646,-3631,-3604,
+-3566,-3526,-3493,-3475,-3472,-3478,-3479,-3466,-3433,-3388,-3340,-3293,-3248,-3199,-3148,-3099,-3056,-3014,-2966,-2910,-2851,
+-2802,-2768,-2743,-2718,-2684,-2643,-2600,-2558,-2516,-2471,-2423,-2375,-2328,-2283,-2236,-2187,-2135,-2078,-2015,-1943,-1866,
+-1789,-1715,-1645,-1571,-1492,-1409,-1328,-1252,-1181,-1111,-1039,-965,-889,-811,-727,-637,-545,-455,-371,-291,-212,
+-133,-54,20,91,161,231,302,371,438,501,565,633,707,787,872,964,1060,1155,1243,1318,1382,
+1442,1504,1571,1643,1720,1804,1894,1986,2074,2155,2230,2304,2384,2468,2553,2634,2713,2794,2881,2974,3067,
+3155,3234,3306,3375,3445,3516,3588,3659,3729,3798,3869,3941,4015,4090,4166,4240,4310,4377,4440,4505,4574,
+4649,4726,4801,4873,4947,5030,5120,5210,5287,5343,5385,5425,5476,5539,5602,5654,5694,5726,5760,5796,5827,
+5846,5852,5851,5852,5861,5877,5897,5912,5916,5903,5874,5835,5799,5777,5770,5768,5759,5736,5702,5663,5626,
+5595,5573,5560,5550,5532,5498,5446,5387,5336,5302,5281,5260,5229,5187,5143,5112,5100,5105,5113,5112,5096,
+5076,5067,5077,5099,5111,5097,5060,5017,4983,4957,4930,4896,4866,4853,4859,4868,4866,4855,4855,4881,4921,
+4946,4937,4905,4878,4873,4871,4842,4775,4703,4672,4707,4788,4875,4945,5009,5089,5190,5290,5365,5410,5442,
+5478,5517,5544,5547,5533,5517,5504,5490,5466,5438,5417,5411,5417,5425,5431,5436,5438,5429,5400,5357,5314,
+5283,5263,5244,5220,5199,5193,5203,5210,5196,5163,5123,5089,5059,5021,4993,4939,4889,4863,4867,4883,4888,
+4881,4878,4889,4905,4899,4857,4791,4727,4680,4645,4606,4561,4521,4497,4487,4479,4465,4447,4431,4416,4397,
+4378,4376,4410,4480,4563,4631,4669,4683,4681,4663,4617,4539,4447,4372,4335,4330,4335,4330,4316,4302,4299,
+4302,4301,4293,4283,4282,4292,4311,4330,4343,4348,4346,4347,4361,4400,4455,4492,4463,4328,4088,3789,3503,
+3290,3172,3132,3131,3131,3113,3073,3016,2954,2898,2863,2858,2888,2946,3021,3104,3195,3303,3434,3579,3714,
+3817,3878,3909,3928,3947,3965,3977,3981,3985,3995,4008,4014,4010,4002,4000,4010,4025,4032,4022,3997,3966,
+3939,3923,3924,3944,3976,4005,4015,3998,3962,3923,3894,3871,3845,3807,3762,3722,3697,3687,3681,3674,3664,
+3654,3644,3629,3603,3571,3541,3520,3509,3501,3495,3492,3492,3483,3446,3369,3260,3149,3066,3023,3013,3019,
+3034,3058,3086,3102,3090,3049,2999,2964,2947,2929,2890,2830,2773,2744,2744,2746,2719,2651,2558,2468,2396,
+2343,2295,2240,2175,2104,2041,1996,1971,1946,1891,1779,1607,1407,1225,1096,1021,961,860,677,407,84,
+-245,-547,-814,-1062,-1301,-1523,-1703,-1820,-1871,-1878,-1864,-1845,-1826,-1811,-1807,-1827,-1876,-1946,-2018,-2069,-2082,
+-2055,-2000,-1942,-1904,-1894,-1907,-1931,-1960,-1996,-2046,-2107,-2169,-2222,-2265,-2310,-2366,-2436,-2516,-2595,-2669,-2737,
+-2798,-2853,-2901,-2947,-2992,-3040,-3089,-3141,-3196,-3249,-3295,-3326,-3343,-3358,-3386,-3430,-3479,-3517,-3540,-3559,-3588,
+-3632,-3680,-3715,-3733,-3741,-3752,-3766,-3768,-3742,-3685,-3611,-3541,-3491,-3468,-3466,-3472,-3474,-3464,-3445,-3435,-3453,
+-3505,-3576,-3632,-3649,-3624,-3575,-3520,-3465,-3402,-3326,-3245,-3175,-3129,-3104,-3089,-3084,-3102,-3170,-3309,-3522,-3794,
+-4096,-4393,-4650,-4841,-4961,-5022,-5048,-5063,-5077,-5087,-5088,-5076,-5051,-5020,-4992,-4981,-4997,-5043,-5110,-5183,-5252,
+-5316,-5387,-5474,-5577,-5684,-5780,-5850,-5896,-5925,-5951,-5985,-6029,-6074,-6113,-6143,-6169,-6199,-6235,-6274,-6312,-6345,
+-6369,-6384,-6385,-6376,-6368,-6372,-6394,-6427,-6458,-6473,-6467,-6439,-6390,-6323,-6245,-6165,-6088,-6017,-5953,-5899,-5860,
+-5836,-5816,-5792,-5763,-5740,-5727,-5707,-5655,-5556,-5432,-5328,-5276,-5270,-5271,-5243,-5175,-5091,-5015,-4958,-4910,-4863,
+-4818,-4785,-4767,-4760,-4757,-4755,-4758,-4780,-4830,-4913,-5022,-5138,-5238,-5304,-5337,-5344,-5337,-5318,-5284,-5240,-5202,
+-5188,-5199,-5219,-5220,-5189,-5132,-5065,-5003,-4944,-4883,-4814,-4743,-4674,-4605,-4528,-4441,-4350,-4266,-4195,-4127,-4051,
+-3964,-3876,-3799,-3733,-3664,-3579,-3476,-3370,-3275,-3191,-3105,-3009,-2909,-2819,-2750,-2692,-2624,-2524,-2388,-2230,-2074,
+-1942,-1843,-1771,-1708,-1631,-1534,-1434,-1354,-1311,-1296,-1285,-1263,-1234,-1211,-1201,-1195,-1176,-1138,-1086,-1026,-958,
+-874,-766,-643,-520,-409,-311,-221,-129,-36,55,139,214,284,358,447,551,663,769,859,939,1019,
+1108,1201,1286,1351,1400,1443,1494,1554,1617,1673,1722,1770,1829,1907,2002,2100,2187,2257,2313,2362,2402,
+2421,2409,2366,2309,2266,2258,2289,2345,2404,2445,2461,2458,2452,2458,2479,2509,2536,2558,2582,2619,2677,
+2748,2822,2888,2941,2983,3016,3044,3073,3103,3131,3149,3153,3147,3144,3158,3191,3234,3273,3306,3340,3389,
+3459,3537,3605,3646,3666,3691,3749,3847,3961,4054,4104,4121,4125,4113,4040,3855,3541,3147,2753,2416,2141,
+1901,1687,1534,1492,1576,1743,1917,2042,2109,2144,2169,2187,2190,2175,2152,2128,2101,2060,2002,1937,1878,
+1832,1793,1751,1703,1652,1602,1553,1499,1439,1378,1322,1272,1224,1171,1112,1048,986,928,875,826,779,
+734,689,643,597,553,513,474,434,391,348,307,268,228,183,134,87,45,10,-23,-61,-103,
+-148,-192,-232,-266,-295,-320,-342,-362,-384,-408,-436,-464,-490,-513,-536,-564,-600,-644,-689,-729,-762,
+-789,-814,-837,-858,-876,-891,-906,-923,-942,-962,-984,-1008,-1033,-1060,-1092,-1134,-1190,-1254,-1311,-1351,-1379,
+-1414,-1466,-1523,-1551,-1529,-1470,-1416,-1399,-1415,-1428,-1403,-1340,-1271,-1225,-1205,-1192,-1171,-1146,-1137,-1152,-1178,
+-1196,-1197,-1192,-1193,-1206,-1222,-1232,-1235,-1239,-1246,-1255,-1263,-1268,-1277,-1289,-1299,-1301,-1293,-1280,-1264,-1248,
+-1233,-1224,-1225,-1238,-1256,-1270,-1275,-1274,-1271,-1269,-1264,-1258,-1255,-1260,-1273,-1287,-1291,-1284,-1273,-1265,-1264,
+-1264,-1257,-1245,-1232,-1224,-1221,-1220,-1217,-1209,-1197,-1182,-1167,-1155,-1150,-1151,-1153,-1151,-1146,-1139,-1132,-1125,
+-1116,-1105,-1100,-1104,-1116,-1128,-1135,-1138,-1142,-1150,-1162,-1169,-1168,-1162,-1156,-1155,-1158,-1161,-1163,-1166,-1171,
+-1179,-1189,-1203,-1220,-1241,-1262,-1278,-1289,-1296,-1303,-1311,-1318,-1323,-1331,-1344,-1360,-1374,-1377,-1370,-1359,-1352,
+-1357,-1374,-1399,-1427,-1453,-1474,-1488,-1495,-1500,-1510,-1531,-1561,-1593,-1617,-1627,-1630,-1636,-1653,-1684,-1719,-1751,
+-1774,-1791,-1807,-1827,-1852,-1881,-1915,-1954,-1996,-2033,-2062,-2083,-2102,-2123,-2145,-2163,-2175,-2187,-2207,-2236,-2270,
+-2299,-2319,-2334,-2353,-2379,-2409,-2439,-2467,-2496,-2527,-2562,-2595,-2626,-2655,-2685,-2721,-2762,-2809,-2856,-2901,-2941,
+-2981,-3023,-3068,-3111,-3144,-3167,-3182,-3198,-3218,-3242,-3266,-3290,-3315,-3340,-3363,-3381,-3396,-3411,-3430,-3449,-3464,
+-3472,-3478,-3486,-3497,-3507,-3516,-3525,-3538,-3554,-3571,-3585,-3597,-3608,-3618,-3624,-3625,-3629,-3642,-3662,-3679,-3687,
+-3686,-3688,-3698,-3713,-3722,-3719,-3710,-3704,-3706,-3709,-3707,-3698,-3688,-3680,-3669,-3654,-3640,-3638,-3648,-3659,-3658,
+-3643,-3623,-3610,-3600,-3584,-3555,-3523,-3506,-3511,-3524,-3518,-3470,-3378,-3259,-3135,-3027,-2950,-2910,-2903,-2914,-2927,
+-2924,-2892,-2824,-2720,-2593,-2470,-2381,-2344,-2352,-2384,-2416,-2438,-2448,-2446,-2426,-2388,-2337,-2290,-2256,-2233,-2212,
+-2184,-2155,-2132,-2116,-2101,-2080,-2054,-2031,-2018,-2016,-2018,-2023,-2027,-2030,-2026,-2008,-1974,-1930,-1879,-1824,-1768,
+-1720,-1699,-1717,-1769,-1828,-1864,-1864,-1836,-1800,-1769,-1742,-1715,-1687,-1657,-1621,-1572,-1511,-1450,-1406,-1382,-1368,
+-1350,-1330,-1332,-1380,-1476,-1597,-1708,-1793,-1857,-1917,-1984,-2054,-2120,-2181,-2240,-2296,-2347,-2387,-2419,-2450,-2480,
+-2509,-2532,-2551,-2570,-2593,-2615,-2632,-2643,-2655,-2677,-2709,-2739,-2760,-2772,-2791,-2833,-2901,-2983,-3058,-3114,-3151,
+-3183,-3219,-3259,-3293,-3316,-3326,-3331,-3335,-3341,-3343,-3339,-3331,-3324,-3321,-3320,-3316,-3308,-3299,-3292,-3288,-3280,
+-3263,-3236,-3211,-3199,-3209,-3235,-3262,-3274,-3266,-3250,-3245,-3264,-3301,-3337,-3356,-3362,-3372,-3404,-3452,-3495,-3512,
+-3506,-3492,-3486,-3485,-3470,-3435,-3392,-3369,-3383,-3425,-3470,-3497,-3505,-3503,-3501,-3495,-3479,-3449,-3409,-3366,-3319,
+-3270,-3228,-3208,-3227,-3286,-3367,-3439,-3472,-3457,-3405,-3344,-3301,-3295,-3323,-3372,-3421,-3460,-3487,-3508,-3527,-3547,
+-3567,-3589,-3611,-3631,-3643,-3641,-3631,-3623,-3630,-3659,-3709,-3772,-3837,-3888,-3915,-3913,-3887,-3854,-3829,-3816,-3810,
+-3804,-3794,-3782,-3775,-3770,-3765,-3755,-3745,-3738,-3735,-3731,-3716,-3687,-3646,-3601,-3562,-3538,-3529,-3527,-3519,-3488,
+-3435,-3370,-3312,-3272,-3245,-3218,-3181,-3136,-3086,-3032,-2969,-2897,-2825,-2767,-2734,-2719,-2708,-2686,-2651,-2610,-2567,
+-2526,-2484,-2439,-2392,-2347,-2301,-2255,-2205,-2153,-2098,-2038,-1971,-1896,-1819,-1742,-1669,-1598,-1526,-1450,-1371,-1294,
+-1218,-1143,-1069,-993,-914,-831,-745,-655,-564,-475,-389,-307,-229,-153,-79,-6,65,136,205,273,339,
+403,466,528,592,661,735,817,907,1001,1094,1181,1258,1326,1387,1447,1509,1576,1651,1737,1830,1925,
+2016,2099,2177,2256,2337,2421,2503,2583,2663,2746,2834,2925,3013,3095,3170,3242,3313,3386,3462,3537,3609,
+3678,3747,3817,3892,3970,4051,4133,4213,4288,4357,4423,4491,4565,4643,4720,4792,4860,4930,5010,5099,5187,
+5260,5315,5357,5402,5458,5521,5581,5629,5663,5694,5727,5762,5790,5803,5804,5804,5814,5835,5859,5878,5886,
+5881,5866,5841,5811,5781,5759,5750,5747,5739,5719,5682,5635,5587,5546,5520,5504,5491,5469,5430,5379,5324,
+5278,5242,5210,5177,5142,5112,5095,5092,5097,5101,5097,5079,5050,5020,5002,5002,5015,5024,5017,4993,4963,
+4938,4917,4893,4866,4847,4850,4872,4894,4900,4894,4906,4955,5031,5093,5108,5075,5028,4992,4966,4925,4857,
+4787,4764,4816,4927,5053,5157,5232,5294,5352,5397,5416,5415,5414,5433,5471,5508,5528,5531,5525,5516,5498,
+5470,5438,5416,5412,5420,5432,5443,5455,5466,5461,5429,5375,5322,5289,5278,5271,5254,5232,5220,5224,5227,
+5210,5168,5117,5073,5036,4993,4991,4932,4881,4862,4880,4914,4931,4915,4880,4845,4818,4788,4742,4686,4633,
+4594,4565,4536,4505,4481,4471,4468,4463,4447,4427,4411,4397,4379,4356,4344,4365,4425,4507,4579,4619,4626,
+4609,4578,4529,4463,4390,4331,4304,4305,4318,4325,4320,4312,4308,4306,4301,4291,4278,4272,4277,4289,4302,
+4311,4313,4313,4318,4338,4376,4421,4437,4383,4234,3995,3709,3428,3199,3041,2952,2918,2915,2919,2905,2861,
+2793,2721,2673,2665,2697,2759,2837,2929,3038,3173,3330,3495,3647,3766,3847,3896,3926,3945,3954,3956,3955,
+3957,3964,3972,3976,3975,3978,3990,4006,4014,4004,3978,3950,3932,3928,3935,3951,3974,4002,4027,4035,4020,
+3988,3957,3935,3920,3898,3860,3812,3768,3737,3717,3697,3674,3652,3638,3635,3633,3623,3604,3585,3571,3565,
+3560,3556,3557,3564,3570,3551,3489,3384,3264,3162,3095,3061,3045,3037,3036,3039,3035,3012,2972,2931,2903,
+2886,2860,2812,2749,2697,2679,2689,2701,2693,2659,2612,2564,2517,2464,2398,2322,2238,2152,2067,1992,1932,
+1884,1829,1745,1624,1483,1353,1260,1204,1153,1062,890,628,301,-49,-382,-681,-947,-1186,-1397,-1565,-1676,
+-1731,-1743,-1730,-1708,-1691,-1687,-1704,-1743,-1799,-1867,-1939,-2008,-2060,-2079,-2057,-2007,-1954,-1918,-1907,-1911,-1923,
+-1948,-1994,-2065,-2149,-2228,-2292,-2345,-2396,-2454,-2521,-2593,-2671,-2749,-2823,-2885,-2935,-2977,-3019,-3066,-3115,-3164,
+-3214,-3262,-3305,-3336,-3356,-3372,-3398,-3439,-3485,-3525,-3552,-3577,-3611,-3657,-3703,-3734,-3749,-3758,-3770,-3772,-3746,
+-3677,-3578,-3486,-3434,-3432,-3465,-3506,-3540,-3566,-3588,-3610,-3627,-3637,-3637,-3629,-3612,-3581,-3534,-3476,-3413,-3355,
+-3300,-3243,-3177,-3102,-3025,-2960,-2921,-2921,-2966,-3054,-3184,-3359,-3582,-3850,-4145,-4432,-4675,-4854,-4970,-5043,-5093,
+-5132,-5160,-5173,-5170,-5151,-5121,-5089,-5066,-5061,-5077,-5109,-5145,-5181,-5220,-5275,-5354,-5455,-5564,-5665,-5746,-5802,
+-5840,-5870,-5902,-5941,-5982,-6019,-6047,-6070,-6094,-6122,-6151,-6180,-6208,-6234,-6256,-6271,-6278,-6284,-6296,-6314,-6330,
+-6324,-6285,-6206,-6095,-5964,-5830,-5714,-5630,-5578,-5548,-5526,-5510,-5509,-5526,-5554,-5578,-5594,-5610,-5634,-5652,-5635,
+-5562,-5447,-5335,-5267,-5248,-5245,-5222,-5166,-5094,-5027,-4972,-4922,-4868,-4815,-4772,-4742,-4721,-4699,-4674,-4652,-4640,
+-4650,-4686,-4749,-4835,-4931,-5028,-5116,-5189,-5240,-5256,-5232,-5179,-5124,-5099,-5115,-5153,-5182,-5180,-5144,-5090,-5029,
+-4967,-4898,-4822,-4743,-4667,-4592,-4509,-4414,-4313,-4225,-4160,-4112,-4062,-3995,-3913,-3828,-3747,-3666,-3574,-3472,-3370,
+-3281,-3203,-3122,-3030,-2933,-2846,-2779,-2719,-2639,-2522,-2367,-2199,-2045,-1923,-1839,-1778,-1719,-1644,-1553,-1467,-1413,
+-1401,-1413,-1417,-1393,-1347,-1303,-1275,-1256,-1224,-1169,-1096,-1017,-936,-846,-739,-620,-502,-396,-304,-220,-137,
+-52,33,115,194,274,364,473,599,729,843,929,996,1063,1144,1234,1315,1374,1412,1447,1495,1560,
+1632,1695,1746,1793,1851,1928,2020,2114,2194,2254,2302,2349,2396,2428,2429,2394,2341,2300,2298,2337,2397,
+2451,2477,2475,2462,2459,2478,2512,2547,2569,2584,2605,2645,2702,2767,2828,2883,2933,2977,3009,3030,3045,
+3063,3087,3110,3125,3135,3151,3183,3229,3279,3320,3354,3395,3450,3519,3585,3636,3669,3697,3741,3815,3911,
+4007,4077,4111,4120,4117,4090,3998,3804,3505,3146,2790,2472,2190,1928,1697,1547,1523,1628,1807,1980,2099,
+2158,2186,2203,2210,2202,2178,2147,2117,2085,2043,1989,1927,1869,1817,1768,1718,1667,1615,1565,1512,1455,
+1396,1337,1284,1237,1190,1142,1088,1031,972,914,858,805,756,708,661,615,572,532,493,453,411,
+368,325,284,243,199,152,104,58,18,-17,-51,-88,-127,-170,-213,-251,-284,-311,-334,-354,-375,
+-397,-419,-441,-462,-484,-509,-538,-572,-612,-655,-698,-737,-770,-798,-825,-851,-875,-895,-909,-920,-931,
+-945,-963,-983,-1005,-1029,-1056,-1089,-1134,-1188,-1244,-1292,-1329,-1367,-1416,-1470,-1502,-1480,-1403,-1311,-1259,-1277,
+-1341,-1397,-1401,-1355,-1295,-1254,-1235,-1219,-1193,-1166,-1156,-1166,-1185,-1193,-1189,-1183,-1187,-1199,-1212,-1218,-1223,
+-1232,-1244,-1254,-1258,-1263,-1272,-1288,-1300,-1303,-1296,-1288,-1281,-1274,-1261,-1242,-1227,-1222,-1229,-1240,-1252,-1263,
+-1277,-1290,-1296,-1291,-1280,-1273,-1277,-1287,-1295,-1293,-1286,-1279,-1275,-1272,-1265,-1253,-1241,-1235,-1235,-1238,-1236,
+-1228,-1214,-1198,-1183,-1173,-1167,-1166,-1166,-1165,-1162,-1159,-1155,-1149,-1141,-1131,-1123,-1124,-1131,-1140,-1148,-1154,
+-1159,-1167,-1175,-1178,-1175,-1167,-1159,-1155,-1156,-1160,-1166,-1174,-1182,-1190,-1199,-1212,-1230,-1252,-1273,-1288,-1297,
+-1302,-1309,-1318,-1329,-1339,-1351,-1364,-1377,-1384,-1383,-1376,-1370,-1374,-1392,-1419,-1449,-1476,-1496,-1509,-1515,-1518,
+-1521,-1533,-1556,-1589,-1622,-1646,-1656,-1659,-1662,-1677,-1704,-1738,-1771,-1797,-1817,-1833,-1850,-1872,-1898,-1930,-1967,
+-2005,-2040,-2069,-2092,-2112,-2132,-2150,-2162,-2167,-2174,-2190,-2219,-2256,-2289,-2313,-2332,-2352,-2378,-2410,-2445,-2480,
+-2515,-2550,-2583,-2610,-2633,-2654,-2681,-2717,-2761,-2809,-2857,-2899,-2937,-2972,-3008,-3047,-3086,-3119,-3144,-3163,-3181,
+-3200,-3219,-3240,-3263,-3289,-3318,-3343,-3362,-3377,-3393,-3412,-3431,-3444,-3451,-3456,-3465,-3480,-3495,-3508,-3521,-3537,
+-3555,-3570,-3579,-3585,-3592,-3599,-3605,-3607,-3611,-3625,-3647,-3670,-3684,-3688,-3691,-3701,-3716,-3727,-3728,-3724,-3723,
+-3726,-3727,-3723,-3715,-3708,-3703,-3694,-3679,-3665,-3664,-3678,-3693,-3696,-3684,-3668,-3659,-3656,-3644,-3614,-3574,-3547,
+-3547,-3566,-3577,-3551,-3476,-3359,-3224,-3101,-3013,-2966,-2954,-2961,-2972,-2978,-2969,-2931,-2849,-2723,-2577,-2451,-2379,
+-2367,-2394,-2433,-2462,-2474,-2470,-2448,-2412,-2366,-2322,-2286,-2256,-2230,-2209,-2200,-2201,-2201,-2188,-2158,-2121,-2094,
+-2081,-2075,-2066,-2055,-2049,-2055,-2061,-2049,-2010,-1950,-1886,-1829,-1783,-1752,-1747,-1778,-1847,-1931,-1997,-2019,-1994,
+-1935,-1862,-1791,-1735,-1699,-1679,-1662,-1629,-1572,-1503,-1444,-1412,-1399,-1387,-1371,-1366,-1399,-1480,-1596,-1716,-1817,
+-1895,-1963,-2030,-2098,-2162,-2220,-2271,-2317,-2359,-2395,-2429,-2463,-2495,-2524,-2548,-2571,-2596,-2622,-2644,-2655,-2658,
+-2664,-2682,-2712,-2747,-2779,-2808,-2844,-2895,-2958,-3025,-3082,-3126,-3160,-3192,-3225,-3258,-3285,-3303,-3316,-3328,-3340,
+-3350,-3353,-3349,-3341,-3335,-3333,-3331,-3325,-3312,-3296,-3280,-3266,-3251,-3232,-3210,-3192,-3183,-3189,-3206,-3227,-3240,
+-3240,-3232,-3231,-3248,-3282,-3319,-3345,-3360,-3378,-3412,-3457,-3495,-3508,-3501,-3491,-3493,-3499,-3489,-3453,-3406,-3377,
+-3382,-3414,-3450,-3472,-3479,-3482,-3485,-3483,-3466,-3431,-3384,-3332,-3277,-3225,-3188,-3184,-3221,-3292,-3371,-3426,-3440,
+-3412,-3362,-3316,-3296,-3314,-3366,-3435,-3500,-3549,-3581,-3600,-3616,-3632,-3652,-3672,-3691,-3702,-3702,-3695,-3691,-3707,
+-3748,-3811,-3880,-3941,-3984,-4006,-4006,-3983,-3948,-3912,-3888,-3877,-3873,-3864,-3846,-3825,-3808,-3800,-3797,-3797,-3798,
+-3800,-3801,-3795,-3776,-3744,-3704,-3663,-3628,-3602,-3586,-3569,-3538,-3481,-3400,-3315,-3253,-3223,-3216,-3210,-3188,-3149,
+-3103,-3051,-2987,-2906,-2817,-2742,-2699,-2688,-2692,-2688,-2667,-2632,-2591,-2549,-2506,-2461,-2413,-2365,-2317,-2268,-2217,
+-2165,-2113,-2060,-2002,-1935,-1859,-1778,-1699,-1625,-1555,-1484,-1409,-1331,-1251,-1174,-1096,-1017,-934,-847,-760,-673,
+-586,-500,-414,-332,-254,-182,-110,-37,37,111,181,249,316,382,447,509,569,630,697,774,858,
+945,1031,1112,1187,1257,1322,1386,1450,1519,1597,1684,1777,1871,1960,2045,2128,2212,2296,2378,2458,2536,
+2616,2701,2789,2877,2960,3036,3108,3180,3254,3332,3412,3492,3567,3638,3705,3773,3843,3918,4000,4086,4171,
+4251,4324,4392,4464,4544,4631,4717,4793,4860,4926,4998,5078,5156,5225,5281,5331,5383,5441,5500,5551,5592,
+5626,5660,5695,5726,5746,5752,5754,5765,5789,5818,5840,5847,5844,5838,5833,5824,5804,5773,5739,5715,5701,
+5693,5676,5644,5598,5546,5500,5465,5442,5421,5394,5355,5309,5264,5226,5192,5155,5115,5081,5066,5073,5093,
+5110,5108,5084,5042,4993,4947,4917,4908,4916,4928,4932,4922,4906,4891,4879,4864,4847,4838,4849,4877,4901,
+4905,4894,4900,4951,5042,5131,5173,5152,5091,5027,4973,4921,4861,4806,4790,4837,4939,5062,5174,5264,5338,
+5396,5430,5431,5410,5396,5409,5448,5491,5518,5524,5518,5508,5492,5469,5444,5429,5427,5431,5433,5433,5435,
+5440,5438,5413,5371,5332,5319,5330,5341,5331,5299,5266,5249,5240,5220,5181,5131,5084,5041,4991,5003,4948,
+4899,4879,4895,4927,4940,4915,4859,4794,4738,4690,4646,4603,4567,4541,4520,4496,4471,4453,4446,4443,4434,
+4414,4393,4380,4374,4363,4342,4321,4320,4356,4417,4479,4515,4517,4496,4465,4428,4388,4348,4317,4305,4312,
+4329,4341,4343,4338,4332,4328,4322,4313,4299,4286,4277,4271,4270,4273,4281,4295,4321,4357,4394,4408,4365,
+4242,4040,3791,3539,3317,3137,2993,2883,2808,2769,2752,2728,2675,2599,2527,2491,2503,2551,2614,2682,2764,
+2876,3026,3202,3384,3549,3684,3789,3867,3920,3949,3957,3951,3943,3943,3953,3965,3975,3983,3995,4011,4022,
+4013,3979,3933,3899,3892,3911,3942,3971,3995,4017,4038,4048,4040,4014,3982,3956,3937,3916,3886,3848,3811,
+3781,3753,3720,3680,3644,3623,3620,3629,3637,3637,3634,3631,3631,3629,3629,3636,3652,3667,3658,3602,3498,
+3372,3258,3177,3125,3088,3056,3024,2994,2960,2917,2869,2826,2796,2772,2740,2693,2645,2618,2624,2648,2668,
+2671,2665,2658,2650,2624,2568,2485,2391,2297,2204,2106,2008,1920,1852,1797,1740,1669,1587,1508,1445,1395,
+1335,1233,1059,804,480,121,-234,-558,-838,-1074,-1268,-1421,-1532,-1601,-1633,-1630,-1603,-1569,-1552,-1567,-1612,
+-1676,-1744,-1814,-1887,-1957,-2005,-2015,-1990,-1949,-1915,-1894,-1879,-1865,-1861,-1887,-1953,-2050,-2159,-2261,-2348,-2422,
+-2489,-2551,-2615,-2686,-2762,-2836,-2898,-2947,-2990,-3037,-3089,-3142,-3191,-3235,-3277,-3319,-3354,-3379,-3399,-3423,-3458,
+-3500,-3539,-3574,-3607,-3646,-3688,-3723,-3746,-3759,-3773,-3787,-3782,-3736,-3644,-3539,-3469,-3468,-3530,-3615,-3686,-3731,
+-3766,-3811,-3858,-3879,-3845,-3754,-3637,-3531,-3455,-3402,-3351,-3297,-3249,-3219,-3201,-3172,-3108,-3008,-2905,-2842,-2848,
+-2917,-3015,-3114,-3211,-3327,-3495,-3725,-4001,-4285,-4542,-4752,-4913,-5031,-5113,-5167,-5198,-5213,-5215,-5204,-5186,-5166,
+-5152,-5148,-5149,-5152,-5157,-5175,-5216,-5286,-5378,-5478,-5574,-5655,-5719,-5766,-5802,-5834,-5867,-5903,-5937,-5967,-5990,
+-6008,-6021,-6033,-6046,-6067,-6099,-6135,-6168,-6187,-6193,-6191,-6176,-6138,-6060,-5933,-5765,-5575,-5388,-5234,-5140,-5114,
+-5146,-5204,-5259,-5300,-5340,-5394,-5462,-5528,-5581,-5624,-5668,-5710,-5726,-5693,-5616,-5525,-5455,-5413,-5375,-5315,-5227,
+-5131,-5048,-4987,-4938,-4894,-4854,-4820,-4793,-4768,-4740,-4709,-4679,-4650,-4625,-4606,-4603,-4626,-4679,-4761,-4863,-4971,
+-5062,-5116,-5120,-5083,-5036,-5013,-5033,-5086,-5139,-5164,-5146,-5096,-5029,-4958,-4886,-4814,-4741,-4668,-4590,-4501,-4400,
+-4299,-4218,-4167,-4136,-4102,-4042,-3955,-3857,-3763,-3676,-3584,-3483,-3381,-3289,-3213,-3139,-3056,-2965,-2879,-2804,-2730,
+-2635,-2501,-2335,-2163,-2012,-1900,-1825,-1770,-1717,-1650,-1574,-1508,-1476,-1484,-1509,-1516,-1488,-1434,-1379,-1338,-1303,
+-1255,-1182,-1093,-999,-908,-814,-709,-597,-488,-389,-302,-220,-139,-53,36,127,217,305,400,512,641,
+776,894,981,1043,1099,1165,1241,1310,1359,1395,1432,1488,1562,1643,1717,1776,1827,1883,1955,2042,2131,
+2205,2257,2296,2334,2381,2426,2449,2437,2399,2363,2356,2388,2441,2487,2504,2494,2481,2488,2523,2572,2612,
+2631,2638,2650,2682,2732,2789,2847,2901,2952,2989,3006,3005,3003,3017,3047,3083,3113,3139,3174,3226,3286,
+3335,3367,3394,3434,3494,3561,3616,3653,3684,3731,3804,3897,3989,4059,4099,4117,4124,4118,4075,3959,3749,
+3460,3137,2824,2531,2248,1969,1727,1583,1578,1699,1878,2038,2141,2190,2213,2226,2226,2208,2173,2131,2090,
+2050,2008,1960,1907,1852,1794,1734,1674,1616,1562,1510,1455,1398,1342,1291,1245,1202,1158,1112,1062,1010,
+954,898,843,791,741,691,641,593,549,509,470,429,386,343,300,257,213,167,122,78,36,
+-5,-45,-84,-122,-158,-195,-233,-270,-301,-325,-344,-362,-380,-400,-418,-432,-446,-464,-491,-527,-569,
+-613,-657,-698,-736,-770,-803,-834,-864,-891,-912,-927,-936,-942,-950,-961,-976,-996,-1020,-1049,-1084,-1127,
+-1177,-1228,-1275,-1314,-1350,-1382,-1398,-1376,-1305,-1206,-1130,-1124,-1197,-1306,-1389,-1406,-1368,-1313,-1272,-1248,-1226,
+-1201,-1179,-1171,-1176,-1180,-1174,-1164,-1163,-1174,-1191,-1200,-1201,-1203,-1215,-1232,-1245,-1251,-1256,-1267,-1285,-1298,
+-1299,-1291,-1283,-1281,-1280,-1272,-1256,-1239,-1228,-1226,-1228,-1233,-1246,-1269,-1296,-1316,-1317,-1302,-1284,-1275,-1280,
+-1290,-1296,-1293,-1285,-1279,-1274,-1270,-1265,-1261,-1260,-1262,-1261,-1255,-1242,-1226,-1211,-1199,-1192,-1188,-1185,-1184,
+-1183,-1183,-1182,-1180,-1175,-1166,-1155,-1147,-1144,-1147,-1155,-1164,-1173,-1179,-1184,-1184,-1180,-1174,-1166,-1161,-1159,
+-1160,-1165,-1172,-1181,-1190,-1198,-1207,-1220,-1238,-1261,-1281,-1294,-1300,-1304,-1310,-1322,-1337,-1354,-1370,-1383,-1393,
+-1397,-1395,-1392,-1394,-1407,-1432,-1463,-1493,-1516,-1531,-1538,-1538,-1537,-1541,-1554,-1580,-1613,-1646,-1669,-1680,-1682,
+-1685,-1696,-1719,-1752,-1787,-1819,-1843,-1862,-1879,-1896,-1918,-1944,-1976,-2010,-2044,-2073,-2099,-2121,-2143,-2161,-2172,
+-2178,-2184,-2199,-2228,-2265,-2301,-2330,-2352,-2375,-2402,-2434,-2472,-2511,-2552,-2591,-2623,-2645,-2659,-2675,-2700,-2739,
+-2786,-2834,-2877,-2914,-2944,-2973,-3003,-3036,-3070,-3102,-3130,-3154,-3175,-3196,-3215,-3234,-3256,-3283,-3313,-3341,-3361,
+-3376,-3392,-3410,-3429,-3444,-3452,-3461,-3474,-3491,-3508,-3522,-3535,-3550,-3568,-3583,-3591,-3596,-3601,-3610,-3619,-3625,
+-3631,-3645,-3668,-3693,-3710,-3716,-3720,-3728,-3741,-3753,-3761,-3764,-3768,-3770,-3767,-3759,-3751,-3748,-3750,-3747,-3736,
+-3723,-3721,-3732,-3747,-3750,-3740,-3727,-3722,-3720,-3709,-3678,-3634,-3600,-3593,-3610,-3632,-3630,-3581,-3481,-3345,-3204,
+-3092,-3028,-3006,-3010,-3022,-3034,-3040,-3023,-2964,-2849,-2695,-2542,-2435,-2392,-2402,-2437,-2471,-2489,-2489,-2474,-2446,
+-2413,-2377,-2340,-2300,-2264,-2243,-2247,-2270,-2291,-2288,-2257,-2214,-2178,-2155,-2136,-2112,-2087,-2074,-2081,-2092,-2081,
+-2034,-1960,-1884,-1826,-1792,-1778,-1785,-1823,-1895,-1986,-2066,-2101,-2079,-2009,-1915,-1824,-1755,-1718,-1706,-1698,-1672,
+-1615,-1542,-1480,-1447,-1437,-1430,-1417,-1412,-1444,-1528,-1651,-1780,-1887,-1966,-2031,-2095,-2160,-2220,-2268,-2306,-2337,
+-2368,-2400,-2434,-2468,-2498,-2525,-2551,-2579,-2610,-2639,-2658,-2663,-2661,-2662,-2678,-2708,-2747,-2791,-2838,-2890,-2944,
+-2997,-3042,-3081,-3117,-3153,-3189,-3222,-3251,-3273,-3293,-3311,-3330,-3348,-3360,-3363,-3358,-3350,-3343,-3338,-3332,-3319,
+-3300,-3277,-3254,-3232,-3213,-3196,-3182,-3171,-3164,-3161,-3165,-3175,-3188,-3196,-3199,-3203,-3220,-3256,-3301,-3341,-3370,
+-3394,-3422,-3453,-3475,-3480,-3476,-3476,-3491,-3507,-3502,-3468,-3418,-3381,-3375,-3393,-3419,-3438,-3451,-3463,-3469,-3462,
+-3433,-3385,-3329,-3273,-3224,-3185,-3167,-3181,-3231,-3302,-3367,-3403,-3403,-3375,-3338,-3314,-3316,-3349,-3409,-3481,-3550,
+-3604,-3641,-3664,-3680,-3692,-3703,-3715,-3727,-3737,-3746,-3758,-3787,-3839,-3913,-3990,-4050,-4081,-4085,-4073,-4050,-4020,
+-3985,-3952,-3929,-3919,-3915,-3909,-3895,-3879,-3868,-3864,-3863,-3862,-3861,-3860,-3854,-3839,-3813,-3777,-3739,-3704,-3674,
+-3647,-3622,-3591,-3544,-3471,-3378,-3286,-3222,-3193,-3185,-3175,-3148,-3112,-3079,-3047,-3000,-2923,-2820,-2723,-2663,-2651,
+-2668,-2686,-2683,-2658,-2620,-2577,-2532,-2484,-2433,-2383,-2333,-2284,-2234,-2182,-2131,-2081,-2028,-1967,-1895,-1814,-1733,
+-1656,-1586,-1517,-1444,-1365,-1283,-1202,-1122,-1040,-954,-866,-779,-697,-618,-538,-455,-375,-299,-227,-155,-79,
+0,76,147,213,282,354,427,494,555,613,675,744,820,897,973,1047,1120,1193,1264,1334,1404,
+1479,1562,1652,1744,1835,1922,2008,2096,2185,2273,2355,2433,2510,2591,2677,2765,2851,2933,3011,3086,3160,
+3237,3316,3397,3478,3556,3628,3694,3755,3816,3883,3958,4043,4130,4211,4282,4349,4422,4509,4608,4706,4792,
+4863,4926,4990,5056,5124,5188,5247,5307,5367,5424,5475,5515,5550,5584,5621,5655,5679,5691,5697,5710,5738,
+5775,5804,5815,5806,5794,5791,5798,5798,5778,5735,5684,5643,5621,5611,5597,5570,5530,5485,5445,5414,5391,
+5369,5341,5303,5261,5222,5190,5161,5126,5086,5053,5041,5055,5081,5097,5088,5051,4995,4935,4883,4849,4837,
+4842,4852,4855,4848,4839,4836,4838,4838,4832,4827,4835,4856,4875,4876,4863,4864,4909,5001,5102,5161,5146,
+5072,4975,4891,4828,4780,4743,4728,4746,4799,4876,4965,5062,5164,5261,5334,5372,5381,5389,5417,5462,5503,
+5523,5519,5508,5499,5494,5485,5472,5462,5456,5449,5433,5411,5392,5385,5382,5370,5348,5333,5344,5375,5399,
+5387,5336,5271,5221,5193,5174,5150,5118,5084,5048,5003,5003,4956,4906,4873,4867,4876,4876,4848,4794,4730,
+4673,4627,4591,4561,4538,4519,4499,4475,4451,4433,4424,4417,4401,4376,4351,4338,4336,4335,4323,4301,4285,
+4291,4320,4358,4384,4389,4378,4363,4352,4343,4336,4330,4329,4337,4349,4358,4359,4353,4345,4341,4341,4341,
+4334,4317,4291,4263,4244,4241,4256,4285,4323,4361,4383,4360,4263,4080,3835,3579,3365,3213,3103,3003,2895,
+2790,2707,2643,2580,2498,2411,2354,2356,2412,2485,2540,2574,2619,2710,2862,3055,3255,3434,3584,3709,3815,
+3897,3948,3966,3959,3945,3938,3944,3959,3974,3987,4000,4011,4012,3990,3942,3884,3844,3839,3866,3904,3934,
+3951,3964,3980,3995,3999,3982,3951,3918,3893,3877,3863,3846,3825,3800,3769,3731,3685,3642,3612,3603,3612,
+3628,3643,3653,3657,3656,3653,3654,3666,3689,3709,3702,3646,3545,3422,3311,3227,3169,3118,3065,3009,2952,
+2894,2832,2768,2710,2664,2626,2587,2547,2524,2529,2562,2600,2622,2627,2632,2648,2661,2648,2592,2503,2406,
+2313,2222,2122,2015,1919,1846,1796,1755,1711,1662,1613,1567,1514,1438,1322,1150,911,608,259,-103,-445,
+-740,-977,-1160,-1300,-1408,-1489,-1538,-1547,-1514,-1461,-1421,-1422,-1470,-1544,-1623,-1697,-1769,-1838,-1894,-1923,-1923,
+-1908,-1891,-1873,-1846,-1806,-1768,-1760,-1799,-1884,-2000,-2127,-2253,-2369,-2470,-2554,-2630,-2703,-2777,-2843,-2895,-2937,
+-2979,-3032,-3094,-3153,-3201,-3240,-3278,-3320,-3361,-3394,-3421,-3448,-3481,-3521,-3563,-3604,-3644,-3683,-3718,-3742,-3755,
+-3764,-3776,-3786,-3775,-3728,-3655,-3595,-3592,-3661,-3776,-3886,-3955,-3984,-4008,-4053,-4102,-4106,-4020,-3849,-3647,-3480,
+-3380,-3330,-3288,-3235,-3184,-3160,-3162,-3157,-3101,-2989,-2865,-2792,-2807,-2894,-3000,-3076,-3113,-3141,-3209,-3347,-3562,
+-3835,-4136,-4432,-4692,-4898,-5041,-5132,-5189,-5228,-5254,-5267,-5267,-5257,-5244,-5231,-5217,-5201,-5189,-5194,-5227,-5286,
+-5363,-5444,-5523,-5595,-5658,-5712,-5752,-5783,-5808,-5831,-5854,-5874,-5890,-5900,-5904,-5906,-5916,-5939,-5974,-6009,-6026,
+-6015,-5979,-5926,-5858,-5760,-5619,-5432,-5218,-5009,-4837,-4731,-4709,-4770,-4892,-5036,-5162,-5258,-5338,-5425,-5523,-5618,
+-5691,-5740,-5779,-5818,-5845,-5843,-5805,-5745,-5680,-5612,-5526,-5409,-5268,-5129,-5018,-4943,-4898,-4871,-4852,-4837,-4818,
+-4792,-4763,-4738,-4717,-4696,-4664,-4619,-4573,-4542,-4542,-4576,-4642,-4727,-4815,-4884,-4918,-4916,-4898,-4894,-4925,-4990,
+-5064,-5114,-5117,-5073,-4999,-4920,-4850,-4790,-4733,-4668,-4590,-4498,-4399,-4307,-4239,-4200,-4175,-4138,-4070,-3970,-3861,
+-3763,-3679,-3595,-3498,-3393,-3297,-3221,-3155,-3085,-3002,-2915,-2831,-2743,-2633,-2489,-2319,-2147,-2002,-1896,-1825,-1772,
+-1719,-1657,-1591,-1540,-1522,-1537,-1564,-1570,-1541,-1488,-1431,-1383,-1334,-1269,-1183,-1086,-989,-894,-797,-692,-584,
+-481,-387,-300,-214,-127,-36,58,158,258,352,445,544,659,782,895,984,1048,1104,1165,1230,1291,
+1339,1380,1429,1494,1573,1656,1732,1798,1856,1914,1980,2057,2138,2209,2259,2293,2327,2376,2436,2485,2501,
+2479,2440,2417,2429,2469,2512,2534,2533,2530,2548,2594,2651,2694,2710,2706,2704,2721,2761,2817,2884,2952,
+3008,3036,3029,3005,2991,3007,3048,3093,3127,3160,3211,3283,3354,3400,3417,3431,3468,3533,3603,3653,3683,
+3717,3780,3875,3980,4063,4109,4125,4130,4132,4119,4058,3918,3692,3409,3112,2828,2552,2267,1983,1747,1624,
+1644,1775,1944,2082,2163,2200,2219,2229,2224,2200,2161,2116,2071,2025,1976,1928,1880,1829,1768,1699,1627,
+1562,1504,1451,1396,1340,1289,1243,1203,1163,1123,1082,1039,991,938,882,827,775,725,673,620,570,
+525,484,444,401,357,314,271,226,180,134,92,53,16,-24,-68,-110,-148,-182,-216,-254,-291,
+-322,-343,-355,-365,-376,-391,-404,-414,-423,-439,-467,-507,-554,-603,-650,-695,-737,-776,-812,-844,-873,
+-899,-921,-937,-948,-954,-958,-963,-973,-991,-1015,-1043,-1075,-1111,-1155,-1208,-1262,-1305,-1323,-1305,-1243,-1145,
+-1034,-954,-949,-1034,-1182,-1329,-1417,-1426,-1381,-1325,-1281,-1250,-1222,-1196,-1180,-1178,-1180,-1173,-1154,-1138,-1138,
+-1154,-1172,-1178,-1176,-1179,-1194,-1216,-1233,-1242,-1249,-1262,-1280,-1293,-1294,-1285,-1276,-1272,-1269,-1263,-1255,-1248,
+-1246,-1246,-1243,-1238,-1242,-1259,-1288,-1313,-1319,-1304,-1282,-1267,-1269,-1281,-1293,-1293,-1285,-1274,-1268,-1269,-1275,
+-1282,-1287,-1289,-1284,-1273,-1256,-1237,-1221,-1211,-1205,-1202,-1199,-1198,-1198,-1199,-1200,-1198,-1193,-1186,-1178,-1172,
+-1168,-1168,-1172,-1180,-1189,-1195,-1198,-1194,-1187,-1180,-1174,-1172,-1172,-1175,-1179,-1185,-1191,-1197,-1204,-1212,-1225,
+-1243,-1263,-1282,-1295,-1303,-1309,-1318,-1332,-1352,-1371,-1389,-1401,-1409,-1413,-1415,-1419,-1427,-1443,-1466,-1492,-1517,
+-1537,-1549,-1554,-1552,-1551,-1556,-1573,-1602,-1637,-1670,-1692,-1702,-1703,-1704,-1711,-1731,-1761,-1797,-1832,-1861,-1882,
+-1898,-1912,-1928,-1950,-1979,-2013,-2048,-2081,-2109,-2135,-2158,-2179,-2193,-2201,-2208,-2221,-2247,-2283,-2320,-2351,-2374,
+-2396,-2421,-2452,-2488,-2530,-2573,-2614,-2644,-2663,-2673,-2688,-2718,-2762,-2814,-2863,-2903,-2934,-2960,-2985,-3012,-3043,
+-3075,-3108,-3138,-3167,-3193,-3217,-3237,-3257,-3278,-3304,-3333,-3362,-3384,-3402,-3418,-3436,-3456,-3471,-3481,-3492,-3506,
+-3525,-3543,-3556,-3567,-3580,-3597,-3612,-3623,-3630,-3639,-3652,-3665,-3675,-3683,-3695,-3715,-3737,-3754,-3761,-3764,-3770,
+-3781,-3793,-3805,-3814,-3820,-3821,-3814,-3802,-3795,-3797,-3806,-3809,-3803,-3791,-3786,-3793,-3802,-3804,-3795,-3783,-3775,
+-3769,-3754,-3724,-3685,-3653,-3641,-3651,-3674,-3687,-3667,-3594,-3471,-3324,-3192,-3107,-3074,-3074,-3086,-3098,-3105,-3096,
+-3052,-2952,-2804,-2640,-2504,-2424,-2401,-2419,-2451,-2480,-2495,-2494,-2481,-2463,-2441,-2414,-2379,-2342,-2318,-2319,-2342,
+-2366,-2370,-2344,-2301,-2258,-2224,-2194,-2161,-2132,-2119,-2122,-2126,-2106,-2048,-1964,-1882,-1827,-1804,-1808,-1832,-1875,
+-1937,-2006,-2061,-2079,-2056,-2000,-1929,-1861,-1805,-1767,-1741,-1716,-1675,-1615,-1549,-1500,-1481,-1484,-1484,-1473,-1467,
+-1499,-1588,-1720,-1856,-1964,-2039,-2097,-2155,-2217,-2272,-2312,-2337,-2356,-2379,-2411,-2445,-2477,-2504,-2528,-2554,-2585,
+-2619,-2648,-2662,-2663,-2659,-2662,-2681,-2713,-2757,-2807,-2861,-2917,-2966,-3006,-3038,-3068,-3105,-3146,-3187,-3221,-3247,
+-3267,-3286,-3305,-3322,-3337,-3346,-3351,-3350,-3347,-3340,-3329,-3313,-3291,-3263,-3234,-3207,-3184,-3165,-3150,-3140,-3133,
+-3126,-3117,-3112,-3116,-3129,-3146,-3159,-3172,-3192,-3228,-3279,-3331,-3373,-3403,-3425,-3441,-3450,-3452,-3453,-3464,-3487,
+-3507,-3503,-3470,-3420,-3379,-3363,-3369,-3387,-3407,-3426,-3442,-3445,-3425,-3380,-3318,-3258,-3210,-3179,-3166,-3174,-3208,
+-3261,-3321,-3366,-3384,-3375,-3354,-3335,-3332,-3352,-3395,-3456,-3523,-3586,-3639,-3678,-3704,-3719,-3724,-3724,-3729,-3743,
+-3769,-3805,-3853,-3915,-3992,-4073,-4137,-4168,-4162,-4134,-4102,-4075,-4050,-4024,-3996,-3975,-3964,-3959,-3955,-3950,-3946,
+-3947,-3949,-3949,-3943,-3933,-3921,-3905,-3880,-3846,-3806,-3766,-3731,-3697,-3664,-3631,-3595,-3548,-3484,-3403,-3321,-3257,
+-3215,-3182,-3143,-3093,-3050,-3028,-3021,-2998,-2934,-2829,-2720,-2649,-2634,-2661,-2693,-2703,-2686,-2650,-2607,-2559,-2508,
+-2454,-2401,-2352,-2306,-2259,-2208,-2154,-2099,-2043,-1982,-1916,-1843,-1768,-1695,-1627,-1558,-1483,-1400,-1314,-1228,-1146,
+-1063,-977,-890,-805,-727,-653,-578,-501,-422,-348,-276,-201,-122,-39,37,106,170,237,312,391,466,
+533,594,657,723,791,859,927,997,1071,1149,1225,1299,1373,1453,1541,1634,1727,1816,1902,1990,2081,
+2174,2264,2347,2425,2504,2587,2676,2767,2857,2944,3028,3109,3187,3263,3339,3416,3495,3572,3645,3710,3768,
+3823,3881,3949,4027,4109,4184,4249,4310,4381,4471,4576,4682,4775,4849,4911,4970,5031,5093,5156,5221,5287,
+5350,5405,5446,5477,5506,5539,5574,5604,5621,5631,5643,5670,5709,5748,5769,5764,5744,5727,5727,5736,5734,
+5706,5656,5603,5568,5551,5541,5522,5489,5448,5411,5384,5367,5354,5336,5309,5270,5227,5188,5159,5136,5109,
+5075,5042,5023,5025,5038,5043,5025,4983,4928,4876,4838,4820,4817,4820,4818,4805,4785,4771,4773,4790,4808,
+4814,4812,4812,4822,4836,4841,4838,4848,4895,4983,5078,5129,5101,5003,4875,4765,4695,4658,4634,4614,4603,
+4610,4645,4713,4813,4938,5071,5187,5273,5329,5375,5425,5477,5516,5528,5520,5511,5512,5522,5528,5523,5511,
+5495,5472,5438,5394,5355,5330,5318,5307,5294,5290,5310,5351,5383,5374,5315,5229,5153,5109,5091,5084,5074,
+5059,5038,5003,4975,4926,4869,4819,4787,4770,4756,4732,4695,4653,4615,4587,4566,4549,4531,4511,4484,4455,
+4428,4411,4402,4393,4375,4345,4313,4291,4284,4285,4281,4265,4244,4230,4231,4248,4270,4289,4303,4315,4327,
+4339,4346,4347,4345,4345,4350,4355,4355,4348,4341,4340,4349,4362,4366,4350,4313,4268,4238,4235,4256,4283,
+4298,4291,4259,4190,4065,3873,3635,3404,3230,3131,3077,3019,2929,2818,2708,2608,2505,2393,2297,2260,2306,
+2406,2498,2534,2523,2520,2586,2740,2950,3166,3353,3505,3634,3750,3850,3922,3957,3959,3943,3926,3918,3921,
+3928,3935,3941,3946,3944,3924,3882,3826,3778,3759,3768,3789,3802,3800,3796,3804,3828,3852,3859,3845,3821,
+3803,3799,3803,3804,3792,3769,3738,3704,3668,3630,3597,3576,3572,3586,3609,3627,3632,3622,3605,3595,3603,
+3626,3649,3645,3597,3508,3399,3298,3217,3149,3083,3015,2947,2886,2827,2764,2694,2623,2559,2502,2451,2413,
+2400,2420,2462,2500,2519,2523,2533,2559,2583,2577,2528,2448,2361,2278,2191,2094,1993,1909,1853,1817,1783,
+1740,1691,1644,1595,1533,1448,1334,1181,977,709,379,15,-340,-648,-888,-1062,-1188,-1283,-1360,-1412,-1428,
+-1402,-1351,-1307,-1302,-1345,-1420,-1503,-1580,-1651,-1717,-1775,-1813,-1830,-1833,-1827,-1809,-1773,-1720,-1665,-1632,-1638,
+-1690,-1781,-1902,-2044,-2191,-2331,-2458,-2573,-2678,-2770,-2839,-2883,-2914,-2950,-3004,-3068,-3128,-3176,-3213,-3253,-3299,
+-3346,-3389,-3425,-3459,-3498,-3541,-3586,-3629,-3671,-3709,-3739,-3758,-3768,-3773,-3776,-3772,-3754,-3725,-3707,-3727,-3805,
+-3930,-4064,-4163,-4208,-4218,-4233,-4272,-4311,-4292,-4172,-3957,-3713,-3515,-3398,-3338,-3285,-3214,-3141,-3100,-3094,-3085,
+-3027,-2915,-2793,-2728,-2750,-2841,-2945,-3017,-3049,-3062,-3089,-3160,-3294,-3505,-3790,-4123,-4456,-4739,-4944,-5074,-5157,
+-5216,-5264,-5298,-5316,-5321,-5318,-5312,-5301,-5285,-5271,-5273,-5298,-5343,-5399,-5453,-5504,-5553,-5604,-5653,-5695,-5725,
+-5743,-5752,-5756,-5756,-5754,-5751,-5748,-5751,-5766,-5790,-5813,-5811,-5765,-5675,-5559,-5442,-5331,-5212,-5065,-4889,-4707,
+-4555,-4463,-4443,-4495,-4609,-4767,-4940,-5098,-5231,-5349,-5470,-5598,-5717,-5805,-5858,-5889,-5916,-5940,-5949,-5934,-5894,
+-5835,-5754,-5642,-5493,-5321,-5153,-5013,-4915,-4856,-4828,-4815,-4805,-4786,-4756,-4724,-4703,-4694,-4688,-4669,-4631,-4581,
+-4533,-4499,-4486,-4494,-4525,-4573,-4626,-4668,-4692,-4702,-4718,-4759,-4833,-4924,-5002,-5035,-5013,-4948,-4869,-4802,-4751,
+-4705,-4648,-4573,-4485,-4398,-4324,-4269,-4231,-4195,-4142,-4059,-3951,-3840,-3746,-3670,-3593,-3500,-3395,-3299,-3225,-3167,
+-3108,-3036,-2952,-2865,-2769,-2650,-2497,-2323,-2153,-2015,-1918,-1851,-1795,-1735,-1665,-1598,-1551,-1541,-1562,-1590,-1596,
+-1569,-1518,-1462,-1407,-1344,-1265,-1172,-1075,-981,-888,-788,-680,-572,-473,-380,-289,-196,-101,-8,86,185,
+286,383,472,562,659,764,863,946,1015,1078,1146,1214,1276,1330,1383,1444,1514,1589,1661,1732,1801,
+1867,1930,1992,2059,2131,2200,2254,2291,2327,2381,2455,2529,2571,2564,2522,2479,2466,2488,2528,2561,2578,
+2591,2618,2666,2723,2763,2774,2762,2749,2754,2787,2848,2928,3011,3072,3091,3066,3026,3008,3029,3075,3119,
+3152,3192,3262,3358,3443,3486,3488,3486,3517,3581,3651,3698,3726,3765,3838,3942,4046,4120,4154,4158,4151,
+4138,4103,4017,3856,3623,3347,3064,2788,2513,2228,1952,1741,1652,1700,1838,1993,2108,2173,2205,2222,2225,
+2211,2179,2141,2102,2061,2010,1953,1897,1847,1798,1738,1664,1585,1511,1449,1394,1341,1289,1242,1200,1161,
+1122,1085,1050,1014,973,922,865,807,753,702,650,597,547,503,463,422,377,331,286,242,196,
+149,104,64,30,-2,-39,-80,-119,-154,-188,-224,-264,-304,-335,-352,-359,-362,-368,-378,-389,-397,
+-407,-423,-450,-489,-535,-586,-637,-689,-738,-783,-821,-852,-878,-900,-921,-939,-952,-960,-964,-967,-975,
+-993,-1017,-1043,-1068,-1096,-1134,-1189,-1250,-1292,-1282,-1202,-1058,-889,-755,-716,-798,-979,-1194,-1363,-1441,-1432,
+-1379,-1326,-1287,-1257,-1223,-1192,-1175,-1176,-1180,-1170,-1146,-1124,-1119,-1131,-1144,-1148,-1147,-1153,-1172,-1197,-1216,
+-1227,-1236,-1251,-1268,-1281,-1284,-1279,-1272,-1265,-1258,-1249,-1243,-1246,-1255,-1263,-1262,-1255,-1251,-1259,-1278,-1299,
+-1306,-1297,-1277,-1262,-1260,-1271,-1283,-1286,-1279,-1267,-1261,-1265,-1276,-1288,-1296,-1298,-1295,-1286,-1271,-1254,-1237,
+-1224,-1217,-1213,-1210,-1208,-1208,-1209,-1211,-1210,-1207,-1203,-1200,-1198,-1196,-1194,-1194,-1197,-1204,-1211,-1215,-1214,
+-1209,-1204,-1199,-1196,-1197,-1199,-1202,-1206,-1208,-1210,-1212,-1218,-1229,-1245,-1263,-1281,-1296,-1308,-1318,-1331,-1348,
+-1369,-1389,-1405,-1415,-1423,-1430,-1438,-1448,-1459,-1472,-1487,-1505,-1525,-1542,-1554,-1559,-1560,-1560,-1567,-1587,-1618,
+-1657,-1691,-1714,-1722,-1722,-1720,-1726,-1743,-1771,-1806,-1842,-1873,-1896,-1910,-1921,-1933,-1952,-1980,-2016,-2055,-2090,
+-2121,-2149,-2176,-2200,-2218,-2226,-2230,-2238,-2259,-2292,-2328,-2358,-2381,-2400,-2423,-2453,-2491,-2533,-2577,-2617,-2645,
+-2661,-2672,-2690,-2725,-2776,-2833,-2883,-2921,-2949,-2974,-2999,-3026,-3057,-3090,-3124,-3158,-3189,-3218,-3243,-3265,-3285,
+-3304,-3328,-3357,-3387,-3414,-3435,-3453,-3471,-3488,-3503,-3514,-3523,-3537,-3555,-3574,-3589,-3601,-3614,-3628,-3643,-3655,
+-3665,-3677,-3693,-3710,-3723,-3732,-3742,-3758,-3777,-3792,-3801,-3805,-3809,-3817,-3827,-3838,-3848,-3855,-3855,-3848,-3838,
+-3834,-3840,-3853,-3860,-3856,-3847,-3841,-3844,-3848,-3847,-3838,-3827,-3817,-3805,-3786,-3758,-3727,-3703,-3689,-3689,-3700,
+-3715,-3715,-3673,-3577,-3441,-3305,-3206,-3160,-3150,-3155,-3159,-3159,-3150,-3114,-3033,-2904,-2746,-2594,-2479,-2414,-2398,
+-2418,-2454,-2489,-2509,-2512,-2506,-2498,-2488,-2474,-2452,-2429,-2416,-2416,-2423,-2421,-2403,-2370,-2329,-2290,-2254,-2223,
+-2199,-2185,-2176,-2159,-2120,-2053,-1970,-1893,-1844,-1832,-1854,-1899,-1955,-2005,-2037,-2039,-2015,-1979,-1947,-1926,-1906,
+-1874,-1825,-1766,-1703,-1640,-1578,-1527,-1503,-1511,-1536,-1550,-1542,-1527,-1545,-1622,-1750,-1888,-2001,-2077,-2132,-2186,
+-2244,-2296,-2331,-2351,-2369,-2395,-2432,-2471,-2504,-2528,-2548,-2570,-2599,-2629,-2652,-2662,-2662,-2663,-2676,-2703,-2742,
+-2786,-2833,-2881,-2926,-2964,-2995,-3024,-3060,-3103,-3149,-3188,-3216,-3237,-3256,-3274,-3288,-3296,-3300,-3303,-3306,-3310,
+-3310,-3304,-3292,-3271,-3243,-3211,-3179,-3150,-3127,-3109,-3094,-3085,-3079,-3073,-3066,-3060,-3062,-3077,-3100,-3125,-3147,
+-3170,-3202,-3247,-3299,-3345,-3381,-3407,-3425,-3438,-3445,-3453,-3465,-3481,-3490,-3478,-3446,-3403,-3369,-3353,-3355,-3367,
+-3382,-3397,-3404,-3396,-3365,-3314,-3256,-3209,-3180,-3173,-3184,-3212,-3253,-3300,-3341,-3367,-3372,-3363,-3350,-3345,-3357,
+-3392,-3446,-3512,-3576,-3633,-3679,-3715,-3738,-3745,-3739,-3729,-3734,-3764,-3819,-3891,-3969,-4048,-4123,-4184,-4219,-4220,
+-4192,-4154,-4122,-4102,-4087,-4070,-4050,-4034,-4024,-4018,-4013,-4009,-4010,-4015,-4022,-4021,-4012,-3996,-3979,-3958,-3928,
+-3889,-3843,-3797,-3753,-3710,-3665,-3624,-3588,-3553,-3510,-3455,-3392,-3332,-3279,-3223,-3156,-3084,-3030,-3009,-3011,-3003,
+-2953,-2859,-2756,-2686,-2670,-2692,-2721,-2731,-2715,-2681,-2638,-2590,-2537,-2479,-2422,-2370,-2324,-2279,-2231,-2176,-2116,
+-2054,-1992,-1931,-1869,-1805,-1740,-1673,-1603,-1525,-1438,-1345,-1254,-1169,-1086,-1003,-919,-836,-759,-686,-613,-538,
+-462,-388,-316,-241,-161,-78,-1,66,129,195,268,345,421,493,562,631,700,766,829,893,962,
+1040,1121,1201,1278,1354,1435,1524,1619,1713,1803,1891,1980,2073,2167,2256,2340,2421,2504,2593,2686,2781,
+2874,2966,3054,3138,3216,3290,3362,3435,3511,3588,3661,3728,3789,3845,3901,3964,4035,4108,4176,4236,4293,
+4362,4451,4554,4656,4743,4814,4877,4939,5004,5069,5133,5198,5264,5325,5373,5408,5433,5460,5490,5521,5545,
+5560,5574,5595,5628,5666,5691,5694,5676,5652,5638,5640,5644,5633,5602,5564,5540,5537,5544,5539,5507,5454,
+5399,5360,5339,5330,5322,5303,5270,5225,5176,5136,5112,5099,5087,5064,5034,5008,4993,4984,4969,4937,4891,
+4845,4815,4809,4822,4840,4846,4829,4791,4748,4722,4725,4751,4783,4802,4806,4806,4810,4820,4830,4842,4868,
+4921,4997,5065,5083,5027,4910,4774,4663,4595,4559,4531,4501,4479,4483,4527,4610,4723,4851,4982,5102,5203,
+5284,5352,5413,5466,5503,5518,5519,5521,5536,5556,5569,5564,5541,5508,5467,5414,5353,5296,5255,5232,5215,
+5199,5192,5207,5247,5290,5300,5262,5188,5114,5065,5046,5043,5041,5030,5009,4975,4915,4859,4798,4743,4701,
+4674,4654,4632,4607,4580,4557,4542,4533,4524,4507,4480,4444,4408,4380,4364,4357,4350,4334,4304,4267,4235,
+4217,4212,4213,4208,4192,4173,4162,4171,4202,4244,4287,4321,4343,4352,4349,4338,4324,4316,4316,4324,4332,
+4334,4331,4333,4344,4362,4370,4351,4306,4253,4225,4235,4269,4286,4249,4155,4028,3894,3756,3600,3424,3254,
+3129,3068,3044,3014,2947,2848,2740,2631,2513,2387,2287,2262,2330,2448,2539,2552,2506,2476,2534,2697,2920,
+3142,3324,3464,3579,3686,3783,3863,3914,3933,3927,3908,3888,3875,3866,3859,3853,3852,3853,3847,3820,3771,
+3713,3667,3642,3630,3612,3583,3555,3550,3578,3625,3668,3688,3690,3691,3704,3722,3732,3721,3692,3660,3636,
+3618,3597,3568,3539,3525,3537,3567,3593,3596,3570,3527,3492,3484,3500,3523,3527,3493,3423,3332,3237,3147,
+3060,2974,2894,2830,2785,2749,2708,2651,2582,2511,2444,2384,2336,2310,2311,2329,2347,2355,2360,2380,2418,
+2453,2459,2425,2364,2296,2225,2142,2048,1958,1896,1865,1846,1813,1757,1689,1620,1552,1478,1396,1304,1195,
+1039,807,493,127,-233,-540,-770,-930,-1042,-1125,-1190,-1238,-1265,-1266,-1249,-1232,-1236,-1269,-1323,-1386,-1454,
+-1525,-1598,-1665,-1714,-1736,-1735,-1714,-1677,-1626,-1568,-1516,-1482,-1474,-1495,-1549,-1641,-1766,-1915,-2076,-2241,-2409,
+-2572,-2712,-2809,-2862,-2890,-2920,-2966,-3024,-3079,-3125,-3166,-3212,-3265,-3318,-3367,-3412,-3457,-3506,-3554,-3601,-3643,
+-3684,-3720,-3750,-3772,-3786,-3793,-3789,-3772,-3753,-3755,-3801,-3900,-4036,-4175,-4281,-4340,-4362,-4374,-4401,-4444,-4470,
+-4430,-4288,-4060,-3802,-3583,-3436,-3343,-3263,-3173,-3086,-3030,-3005,-2979,-2913,-2808,-2707,-2660,-2686,-2763,-2850,-2924,
+-2985,-3040,-3090,-3138,-3207,-3339,-3568,-3888,-4245,-4568,-4810,-4968,-5070,-5150,-5219,-5277,-5317,-5344,-5362,-5375,-5380,
+-5377,-5369,-5369,-5382,-5408,-5436,-5460,-5478,-5497,-5523,-5556,-5592,-5623,-5643,-5649,-5641,-5622,-5599,-5579,-5564,-5559,
+-5561,-5561,-5539,-5472,-5348,-5180,-5005,-4857,-4749,-4663,-4570,-4464,-4367,-4312,-4316,-4374,-4464,-4573,-4696,-4830,-4969,
+-5106,-5243,-5387,-5536,-5675,-5786,-5864,-5915,-5954,-5984,-5999,-5993,-5964,-5914,-5841,-5739,-5603,-5440,-5269,-5110,-4981,
+-4889,-4836,-4811,-4796,-4774,-4740,-4703,-4675,-4662,-4655,-4640,-4614,-4578,-4540,-4502,-4467,-4439,-4424,-4427,-4443,-4463,
+-4478,-4490,-4508,-4548,-4620,-4718,-4817,-4885,-4899,-4861,-4797,-4737,-4691,-4652,-4601,-4535,-4461,-4394,-4337,-4287,-4238,
+-4180,-4107,-4015,-3912,-3811,-3724,-3649,-3571,-3479,-3379,-3288,-3218,-3165,-3114,-3051,-2978,-2896,-2797,-2668,-2504,-2325,
+-2161,-2038,-1956,-1897,-1837,-1760,-1669,-1585,-1534,-1529,-1561,-1599,-1611,-1586,-1536,-1477,-1414,-1340,-1251,-1153,-1058,
+-969,-876,-772,-661,-554,-458,-368,-273,-171,-68,25,114,205,301,397,489,579,669,759,843,914,
+980,1049,1125,1201,1269,1330,1391,1459,1530,1597,1658,1720,1789,1861,1927,1986,2045,2112,2183,2244,2289,
+2329,2385,2467,2557,2623,2639,2608,2558,2523,2521,2547,2581,2610,2637,2673,2719,2767,2799,2806,2796,2786,
+2794,2829,2890,2970,3051,3106,3116,3085,3044,3030,3055,3100,3141,3177,3236,3335,3458,3556,3593,3578,3559,
+3574,3624,3683,3726,3761,3812,3895,3998,4094,4161,4194,4198,4178,4135,4060,3940,3765,3536,3271,2991,2708,
+2423,2139,1886,1715,1668,1740,1879,2017,2116,2173,2208,2227,2223,2194,2149,2107,2074,2039,1990,1926,1862,
+1808,1761,1703,1629,1544,1464,1396,1340,1290,1245,1205,1168,1130,1089,1050,1016,984,946,897,840,782,
+729,679,629,579,531,488,448,405,358,309,262,216,171,125,84,49,18,-10,-43,-78,-111,
+-142,-175,-213,-255,-293,-321,-336,-343,-349,-358,-370,-380,-389,-400,-417,-443,-477,-520,-568,-621,-676,
+-730,-778,-818,-849,-874,-895,-913,-929,-942,-951,-957,-963,-974,-993,-1018,-1043,-1064,-1086,-1121,-1175,-1236,
+-1273,-1247,-1135,-956,-765,-635,-627,-756,-978,-1211,-1376,-1437,-1416,-1362,-1318,-1291,-1266,-1231,-1193,-1169,-1164,
+-1167,-1160,-1140,-1118,-1108,-1109,-1114,-1115,-1117,-1128,-1149,-1173,-1190,-1202,-1215,-1231,-1248,-1258,-1262,-1262,-1262,
+-1259,-1251,-1239,-1230,-1232,-1242,-1255,-1262,-1262,-1262,-1265,-1276,-1289,-1298,-1298,-1286,-1270,-1258,-1256,-1262,-1269,
+-1269,-1264,-1261,-1265,-1274,-1284,-1290,-1293,-1294,-1293,-1287,-1275,-1258,-1244,-1235,-1231,-1229,-1227,-1225,-1225,-1225,
+-1225,-1223,-1221,-1222,-1223,-1224,-1222,-1220,-1220,-1223,-1229,-1235,-1238,-1237,-1233,-1226,-1219,-1215,-1215,-1217,-1220,
+-1221,-1222,-1224,-1230,-1241,-1255,-1271,-1288,-1306,-1322,-1335,-1349,-1364,-1381,-1399,-1413,-1424,-1432,-1444,-1457,-1471,
+-1482,-1491,-1501,-1514,-1531,-1547,-1559,-1567,-1570,-1575,-1584,-1604,-1635,-1673,-1708,-1730,-1739,-1737,-1736,-1743,-1761,
+-1789,-1824,-1860,-1892,-1916,-1931,-1940,-1950,-1966,-1993,-2027,-2064,-2098,-2127,-2156,-2186,-2216,-2237,-2245,-2243,-2245,
+-2261,-2292,-2328,-2359,-2381,-2402,-2427,-2462,-2504,-2549,-2592,-2628,-2652,-2666,-2677,-2698,-2737,-2789,-2844,-2892,-2928,
+-2958,-2985,-3012,-3040,-3069,-3102,-3137,-3172,-3205,-3234,-3260,-3282,-3301,-3320,-3342,-3372,-3405,-3435,-3459,-3476,-3492,
+-3508,-3523,-3533,-3542,-3552,-3567,-3587,-3606,-3622,-3636,-3649,-3661,-3672,-3682,-3694,-3710,-3727,-3742,-3754,-3767,-3784,
+-3802,-3817,-3827,-3832,-3835,-3840,-3847,-3855,-3863,-3869,-3870,-3867,-3862,-3863,-3871,-3883,-3890,-3888,-3883,-3880,-3881,
+-3881,-3876,-3868,-3861,-3854,-3841,-3819,-3794,-3772,-3756,-3742,-3730,-3724,-3728,-3732,-3713,-3647,-3535,-3408,-3302,-3238,
+-3210,-3200,-3193,-3187,-3178,-3154,-3099,-3003,-2873,-2729,-2593,-2487,-2425,-2410,-2436,-2480,-2520,-2541,-2546,-2544,-2545,
+-2548,-2546,-2531,-2508,-2484,-2468,-2460,-2451,-2432,-2400,-2361,-2326,-2301,-2283,-2263,-2232,-2186,-2127,-2059,-1991,-1932,
+-1895,-1892,-1926,-1988,-2054,-2097,-2095,-2047,-1978,-1923,-1907,-1923,-1939,-1919,-1855,-1765,-1676,-1605,-1552,-1518,-1511,
+-1538,-1584,-1619,-1619,-1594,-1583,-1629,-1737,-1872,-1993,-2076,-2132,-2181,-2233,-2283,-2321,-2349,-2377,-2414,-2461,-2507,
+-2544,-2569,-2587,-2605,-2625,-2645,-2660,-2668,-2673,-2684,-2708,-2745,-2788,-2829,-2866,-2898,-2925,-2951,-2979,-3015,-3062,
+-3112,-3154,-3182,-3199,-3213,-3230,-3249,-3260,-3260,-3253,-3246,-3242,-3240,-3237,-3232,-3225,-3215,-3197,-3169,-3136,-3104,
+-3079,-3059,-3044,-3032,-3026,-3023,-3020,-3017,-3020,-3034,-3060,-3093,-3123,-3148,-3174,-3205,-3244,-3287,-3329,-3369,-3403,
+-3433,-3454,-3465,-3466,-3459,-3442,-3419,-3392,-3369,-3355,-3351,-3354,-3359,-3361,-3358,-3347,-3324,-3291,-3255,-3225,-3208,
+-3206,-3218,-3240,-3270,-3300,-3326,-3342,-3351,-3353,-3351,-3350,-3355,-3376,-3421,-3485,-3557,-3623,-3677,-3721,-3754,-3772,
+-3769,-3749,-3732,-3743,-3797,-3885,-3986,-4079,-4152,-4206,-4238,-4247,-4232,-4202,-4171,-4149,-4136,-4127,-4116,-4104,-4096,
+-4092,-4087,-4079,-4069,-4064,-4066,-4071,-4071,-4061,-4045,-4026,-4004,-3973,-3931,-3881,-3828,-3776,-3723,-3669,-3621,-3583,
+-3554,-3524,-3485,-3438,-3390,-3342,-3287,-3220,-3146,-3087,-3056,-3048,-3037,-2996,-2923,-2840,-2778,-2751,-2750,-2755,-2751,
+-2734,-2706,-2669,-2624,-2570,-2508,-2445,-2385,-2334,-2288,-2243,-2193,-2136,-2074,-2015,-1959,-1904,-1847,-1785,-1717,-1645,
+-1565,-1476,-1381,-1286,-1196,-1112,-1031,-951,-872,-795,-721,-647,-573,-498,-425,-354,-280,-203,-124,-47,23,
+90,158,229,302,375,447,521,596,670,738,802,868,939,1018,1100,1182,1260,1339,1422,1511,1603,
+1697,1788,1880,1972,2066,2158,2246,2331,2416,2505,2599,2695,2789,2879,2966,3050,3130,3206,3280,3354,3429,
+3505,3580,3653,3723,3789,3852,3913,3976,4042,4112,4179,4241,4303,4375,4461,4553,4641,4715,4780,4845,4915,
+4987,5054,5115,5173,5230,5283,5327,5358,5383,5408,5435,5460,5481,5500,5523,5552,5582,5604,5606,5590,5566,
+5549,5547,5553,5552,5535,5508,5493,5507,5545,5582,5587,5548,5478,5408,5358,5331,5315,5295,5261,5212,5154,
+5100,5064,5050,5054,5058,5049,5028,5002,4979,4953,4915,4862,4806,4767,4761,4790,4837,4876,4885,4857,4801,
+4744,4711,4712,4740,4775,4802,4816,4823,4830,4839,4851,4873,4910,4962,5014,5038,5010,4927,4812,4699,4614,
+4556,4507,4455,4408,4393,4434,4531,4659,4788,4900,4999,5093,5187,5273,5346,5403,5447,5477,5497,5509,5521,
+5537,5553,5556,5537,5497,5440,5372,5296,5220,5155,5112,5092,5083,5074,5069,5081,5120,5173,5211,5211,5174,
+5121,5078,5053,5040,5024,4999,4963,4915,4832,4775,4722,4680,4649,4627,4607,4583,4553,4522,4495,4477,4464,
+4451,4430,4397,4359,4322,4295,4280,4273,4267,4254,4232,4201,4169,4146,4139,4144,4150,4147,4136,4129,4145,
+4189,4250,4307,4345,4357,4348,4325,4299,4276,4264,4267,4283,4303,4317,4321,4321,4323,4327,4320,4286,4228,
+4171,4155,4196,4262,4285,4207,4023,3790,3579,3425,3315,3218,3123,3049,3014,3005,2988,2939,2860,2772,2678,
+2570,2450,2351,2321,2377,2478,2546,2540,2485,2460,2531,2703,2925,3136,3303,3428,3530,3623,3708,3781,3840,
+3878,3895,3891,3876,3857,3839,3821,3805,3795,3794,3794,3776,3730,3663,3593,3538,3495,3447,3389,3332,3305,
+3327,3387,3457,3508,3536,3554,3580,3612,3634,3631,3606,3576,3556,3548,3540,3522,3499,3491,3510,3549,3579,
+3572,3522,3451,3391,3367,3377,3401,3412,3390,3333,3250,3153,3048,2943,2843,2760,2706,2681,2669,2651,2613,
+2558,2496,2434,2375,2318,2269,2232,2206,2187,2174,2178,2210,2263,2313,2333,2318,2282,2237,2183,2109,2020,
+1938,1887,1869,1855,1820,1753,1668,1577,1485,1395,1317,1259,1200,1094,893,590,231,-108,-380,-574,-715,
+-828,-924,-1002,-1061,-1103,-1135,-1161,-1184,-1207,-1230,-1258,-1294,-1345,-1416,-1501,-1581,-1637,-1654,-1631,-1575,-1501,
+-1425,-1362,-1320,-1300,-1297,-1309,-1343,-1408,-1506,-1632,-1783,-1962,-2167,-2384,-2580,-2723,-2807,-2852,-2888,-2932,-2982,
+-3028,-3072,-3119,-3174,-3232,-3286,-3335,-3386,-3444,-3503,-3559,-3607,-3650,-3691,-3727,-3757,-3780,-3800,-3813,-3811,-3797,
+-3790,-3824,-3923,-4072,-4227,-4340,-4394,-4408,-4420,-4454,-4507,-4555,-4561,-4493,-4337,-4107,-3848,-3612,-3430,-3299,-3195,
+-3101,-3021,-2967,-2932,-2889,-2815,-2718,-2637,-2609,-2638,-2698,-2764,-2834,-2920,-3017,-3101,-3149,-3179,-3246,-3411,-3683,
+-4014,-4329,-4575,-4746,-4870,-4977,-5078,-5169,-5243,-5301,-5349,-5389,-5418,-5434,-5437,-5433,-5430,-5428,-5427,-5424,-5419,
+-5415,-5420,-5435,-5461,-5491,-5514,-5522,-5508,-5476,-5435,-5394,-5357,-5321,-5278,-5220,-5134,-5012,-4852,-4676,-4517,-4405,
+-4347,-4319,-4291,-4256,-4237,-4261,-4336,-4439,-4536,-4610,-4668,-4733,-4817,-4922,-5040,-5170,-5309,-5452,-5590,-5713,-5818,
+-5902,-5963,-5996,-6002,-5983,-5947,-5895,-5822,-5721,-5592,-5440,-5278,-5126,-5004,-4926,-4890,-4876,-4862,-4835,-4795,-4753,
+-4714,-4678,-4644,-4611,-4584,-4558,-4530,-4497,-4462,-4432,-4408,-4386,-4363,-4341,-4328,-4331,-4358,-4412,-4494,-4590,-4674,
+-4720,-4717,-4680,-4637,-4603,-4575,-4537,-4485,-4428,-4376,-4329,-4277,-4210,-4129,-4042,-3954,-3867,-3781,-3697,-3613,-3525,
+-3433,-3342,-3262,-3200,-3148,-3099,-3046,-2987,-2914,-2813,-2671,-2495,-2315,-2165,-2064,-2002,-1950,-1880,-1780,-1662,-1555,
+-1493,-1493,-1540,-1596,-1621,-1600,-1548,-1484,-1414,-1334,-1239,-1138,-1042,-953,-860,-754,-641,-536,-446,-359,-261,
+-150,-38,62,150,234,324,418,512,605,696,781,853,912,970,1038,1117,1197,1267,1330,1395,1466,
+1539,1603,1659,1718,1785,1855,1918,1971,2025,2091,2166,2236,2289,2332,2386,2465,2561,2648,2698,2699,2664,
+2620,2590,2585,2600,2627,2662,2704,2747,2786,2810,2819,2824,2836,2863,2904,2956,3015,3070,3105,3107,3082,
+3056,3055,3084,3125,3166,3215,3300,3427,3564,3658,3680,3650,3617,3617,3650,3693,3738,3792,3870,3966,4061,
+4139,4196,4232,4239,4205,4121,3995,3838,3653,3433,3173,2883,2579,2280,2007,1793,1676,1676,1772,1909,2029,
+2109,2160,2197,2221,2215,2175,2118,2068,2036,2006,1961,1898,1832,1777,1728,1670,1595,1509,1426,1356,1299,
+1252,1212,1179,1147,1112,1071,1028,988,952,912,865,811,759,711,665,618,569,521,476,433,388,
+339,289,240,194,150,110,76,49,25,0,-28,-58,-88,-117,-150,-188,-227,-261,-284,-300,-315,
+-332,-351,-368,-379,-389,-400,-418,-443,-475,-513,-559,-609,-663,-714,-761,-801,-835,-863,-884,-900,-910,
+-918,-927,-938,-951,-967,-986,-1009,-1032,-1053,-1076,-1111,-1161,-1218,-1254,-1237,-1152,-1013,-865,-768,-768,-874,
+-1055,-1245,-1380,-1428,-1405,-1354,-1311,-1287,-1265,-1232,-1192,-1161,-1147,-1143,-1137,-1123,-1108,-1097,-1092,-1089,-1087,
+-1092,-1107,-1128,-1147,-1160,-1172,-1189,-1209,-1226,-1233,-1234,-1236,-1242,-1247,-1244,-1232,-1220,-1215,-1219,-1230,-1244,
+-1257,-1267,-1273,-1278,-1286,-1299,-1308,-1305,-1285,-1257,-1236,-1233,-1244,-1257,-1265,-1269,-1272,-1277,-1282,-1285,-1288,
+-1294,-1299,-1300,-1292,-1278,-1265,-1259,-1258,-1259,-1257,-1253,-1250,-1248,-1247,-1246,-1245,-1246,-1247,-1248,-1247,-1245,
+-1244,-1244,-1246,-1249,-1250,-1249,-1244,-1234,-1222,-1213,-1210,-1213,-1219,-1225,-1231,-1239,-1250,-1265,-1280,-1298,-1316,
+-1335,-1351,-1363,-1372,-1381,-1393,-1408,-1421,-1432,-1443,-1457,-1472,-1486,-1495,-1502,-1512,-1528,-1546,-1563,-1575,-1583,
+-1591,-1600,-1614,-1633,-1660,-1692,-1723,-1744,-1752,-1752,-1753,-1763,-1784,-1815,-1850,-1885,-1918,-1944,-1961,-1970,-1978,
+-1991,-2013,-2043,-2073,-2100,-2124,-2152,-2184,-2218,-2243,-2251,-2248,-2246,-2260,-2291,-2330,-2365,-2393,-2418,-2450,-2490,
+-2537,-2583,-2622,-2652,-2671,-2682,-2694,-2717,-2754,-2802,-2851,-2893,-2928,-2960,-2993,-3025,-3053,-3080,-3109,-3142,-3177,
+-3209,-3238,-3264,-3288,-3309,-3331,-3354,-3384,-3418,-3449,-3472,-3487,-3500,-3515,-3533,-3547,-3557,-3564,-3576,-3595,-3615,
+-3634,-3649,-3661,-3671,-3680,-3689,-3699,-3711,-3726,-3742,-3760,-3780,-3801,-3822,-3837,-3846,-3850,-3853,-3856,-3860,-3865,
+-3872,-3878,-3883,-3884,-3884,-3887,-3894,-3902,-3907,-3908,-3908,-3909,-3910,-3906,-3897,-3891,-3889,-3887,-3878,-3859,-3836,
+-3819,-3809,-3797,-3778,-3757,-3745,-3742,-3729,-3684,-3596,-3483,-3374,-3291,-3236,-3203,-3186,-3180,-3182,-3178,-3155,-3102,
+-3017,-2906,-2775,-2642,-2527,-2456,-2440,-2470,-2521,-2567,-2591,-2598,-2597,-2599,-2600,-2592,-2570,-2539,-2516,-2507,-2507,
+-2500,-2474,-2436,-2403,-2383,-2369,-2341,-2289,-2218,-2146,-2086,-2042,-2011,-1996,-2004,-2040,-2099,-2157,-2185,-2162,-2091,
+-2002,-1937,-1922,-1946,-1965,-1940,-1865,-1768,-1686,-1635,-1600,-1570,-1553,-1567,-1616,-1667,-1684,-1657,-1623,-1635,-1716,
+-1843,-1969,-2059,-2113,-2155,-2199,-2249,-2296,-2339,-2383,-2434,-2489,-2542,-2583,-2613,-2633,-2649,-2663,-2675,-2685,-2694,
+-2707,-2727,-2758,-2796,-2836,-2869,-2894,-2911,-2926,-2944,-2973,-3015,-3067,-3115,-3148,-3163,-3168,-3176,-3193,-3211,-3222,
+-3219,-3208,-3193,-3177,-3161,-3148,-3142,-3148,-3159,-3162,-3148,-3120,-3088,-3060,-3037,-3017,-3000,-2988,-2983,-2981,-2980,
+-2983,-2994,-3020,-3055,-3090,-3117,-3138,-3160,-3190,-3229,-3273,-3321,-3368,-3412,-3443,-3453,-3437,-3403,-3363,-3333,-3321,
+-3324,-3334,-3343,-3346,-3342,-3332,-3312,-3283,-3252,-3227,-3218,-3223,-3238,-3257,-3279,-3303,-3324,-3334,-3329,-3317,-3309,
+-3313,-3325,-3340,-3358,-3388,-3439,-3508,-3583,-3650,-3706,-3754,-3792,-3809,-3798,-3769,-3750,-3773,-3850,-3962,-4075,-4163,
+-4218,-4246,-4255,-4249,-4231,-4208,-4188,-4176,-4170,-4164,-4157,-4152,-4150,-4150,-4146,-4135,-4121,-4112,-4112,-4114,-4110,
+-4098,-4080,-4059,-4034,-4001,-3957,-3906,-3853,-3799,-3744,-3687,-3635,-3592,-3557,-3523,-3485,-3444,-3406,-3374,-3340,-3294,
+-3236,-3179,-3136,-3110,-3087,-3053,-3002,-2942,-2884,-2835,-2797,-2770,-2751,-2737,-2722,-2695,-2654,-2599,-2535,-2469,-2404,
+-2346,-2297,-2254,-2212,-2164,-2110,-2055,-2001,-1949,-1892,-1827,-1756,-1681,-1603,-1518,-1425,-1327,-1232,-1145,-1065,-988,
+-913,-838,-763,-689,-615,-542,-469,-397,-324,-250,-175,-101,-29,43,116,190,263,334,407,482,559,
+635,707,777,848,923,1001,1080,1159,1241,1325,1413,1503,1593,1684,1777,1871,1966,2061,2153,2241,2327,
+2416,2509,2605,2699,2786,2865,2939,3011,3085,3160,3239,3320,3402,3481,3556,3627,3697,3767,3835,3901,3967,
+4035,4108,4183,4256,4328,4403,4483,4563,4635,4698,4761,4832,4910,4985,5047,5096,5140,5185,5232,5273,5304,
+5326,5346,5364,5382,5402,5427,5459,5492,5516,5520,5504,5479,5461,5461,5475,5489,5489,5469,5444,5439,5470,
+5529,5585,5604,5574,5507,5433,5373,5332,5301,5265,5215,5151,5083,5026,4996,4998,5017,5035,5037,5024,5006,
+4984,4950,4895,4823,4755,4719,4730,4781,4845,4890,4896,4861,4804,4753,4728,4734,4758,4784,4804,4820,4835,
+4853,4871,4895,4929,4975,5020,5040,5014,4939,4836,4733,4652,4592,4536,4468,4393,4341,4351,4438,4582,4736,
+4859,4943,5011,5091,5191,5293,5372,5419,5443,5460,5475,5486,5491,5488,5477,5453,5410,5345,5262,5168,5073,
+4990,4932,4907,4914,4936,4958,4977,5001,5043,5099,5149,5173,5160,5122,5077,5039,5007,4975,4936,4888,4832,
+4743,4696,4657,4631,4613,4597,4575,4545,4510,4473,4438,4408,4383,4359,4334,4307,4277,4249,4224,4204,4189,
+4179,4173,4166,4153,4134,4115,4108,4115,4129,4138,4140,4145,4170,4219,4278,4327,4349,4342,4317,4285,4257,
+4237,4229,4235,4252,4276,4295,4301,4294,4279,4257,4222,4163,4087,4026,4025,4102,4216,4273,4190,3957,3647,
+3371,3194,3109,3065,3023,2983,2962,2957,2947,2910,2851,2786,2718,2635,2531,2432,2382,2401,2456,2489,2469,
+2425,2426,2517,2690,2894,3079,3227,3348,3455,3549,3628,3693,3750,3803,3844,3865,3868,3858,3843,3822,3797,
+3775,3759,3747,3722,3673,3600,3520,3449,3387,3320,3239,3160,3114,3125,3185,3262,3321,3353,3371,3400,3447,
+3499,3533,3537,3518,3494,3475,3462,3451,3447,3458,3489,3524,3536,3500,3422,3331,3266,3246,3264,3294,3308,
+3290,3238,3156,3056,2947,2840,2746,2674,2631,2610,2599,2580,2545,2498,2449,2403,2357,2306,2246,2181,2117,
+2060,2022,2018,2054,2114,2170,2198,2197,2180,2161,2133,2082,2009,1934,1880,1850,1826,1786,1724,1644,1549,
+1440,1331,1248,1208,1186,1117,942,661,338,58,-138,-273,-396,-537,-688,-819,-912,-971,-1016,-1059,-1102,
+-1140,-1167,-1188,-1214,-1258,-1326,-1409,-1487,-1536,-1541,-1499,-1421,-1325,-1235,-1170,-1137,-1131,-1140,-1160,-1195,-1253,
+-1332,-1430,-1551,-1708,-1911,-2144,-2368,-2547,-2670,-2754,-2820,-2880,-2933,-2977,-3020,-3072,-3132,-3189,-3239,-3286,-3342,
+-3409,-3477,-3539,-3593,-3643,-3691,-3729,-3754,-3771,-3789,-3810,-3823,-3825,-3838,-3897,-4021,-4185,-4332,-4413,-4428,-4422,
+-4443,-4502,-4571,-4605,-4576,-4473,-4305,-4085,-3840,-3604,-3404,-3253,-3139,-3050,-2982,-2935,-2898,-2849,-2772,-2680,-2610,
+-2592,-2626,-2685,-2748,-2814,-2898,-2994,-3074,-3108,-3107,-3125,-3224,-3422,-3684,-3947,-4167,-4340,-4486,-4628,-4770,-4905,
+-5025,-5129,-5219,-5297,-5359,-5402,-5423,-5425,-5410,-5387,-5364,-5347,-5337,-5334,-5337,-5348,-5366,-5386,-5396,-5385,-5348,
+-5289,-5222,-5155,-5087,-5010,-4914,-4797,-4668,-4538,-4418,-4320,-4252,-4222,-4220,-4228,-4228,-4223,-4238,-4296,-4400,-4520,
+-4614,-4664,-4681,-4694,-4725,-4777,-4845,-4924,-5023,-5150,-5303,-5470,-5632,-5770,-5872,-5935,-5964,-5966,-5949,-5917,-5868,
+-5798,-5704,-5582,-5439,-5292,-5166,-5083,-5048,-5044,-5044,-5028,-4988,-4928,-4855,-4779,-4712,-4661,-4630,-4607,-4583,-4552,
+-4521,-4493,-4461,-4414,-4354,-4294,-4256,-4246,-4258,-4285,-4327,-4387,-4456,-4512,-4535,-4528,-4509,-4496,-4485,-4464,-4425,
+-4376,-4328,-4281,-4224,-4146,-4054,-3962,-3882,-3812,-3740,-3657,-3561,-3462,-3369,-3291,-3228,-3174,-3124,-3076,-3032,-2986,
+-2922,-2816,-2662,-2480,-2307,-2178,-2099,-2046,-1989,-1903,-1784,-1648,-1528,-1459,-1462,-1522,-1593,-1629,-1612,-1557,-1487,
+-1415,-1334,-1237,-1134,-1035,-943,-848,-741,-628,-524,-434,-348,-248,-132,-13,95,190,276,363,451,540,
+629,718,800,867,921,975,1042,1122,1203,1275,1338,1404,1476,1550,1616,1676,1737,1802,1865,1918,1963,
+2014,2080,2160,2236,2296,2343,2393,2463,2555,2654,2735,2777,2774,2736,2684,2643,2628,2640,2673,2716,2758,
+2792,2815,2835,2863,2904,2953,3000,3037,3066,3087,3099,3098,3087,3084,3100,3133,3172,3214,3275,3375,3506,
+3629,3699,3703,3673,3651,3659,3688,3727,3781,3864,3971,4075,4150,4195,4229,4261,4267,4214,4088,3914,3722,
+3524,3300,3029,2712,2380,2073,1829,1675,1629,1687,1814,1953,2056,2113,2145,2175,2199,2197,2160,2101,2048,
+2012,1983,1942,1886,1825,1768,1714,1650,1573,1491,1415,1350,1294,1244,1201,1166,1137,1105,1065,1019,974,
+930,885,837,789,743,701,659,614,564,513,464,416,369,320,272,225,179,137,101,76,60,
+46,28,5,-21,-49,-80,-116,-157,-196,-227,-251,-272,-296,-324,-351,-373,-387,-398,-411,-430,-454,
+-485,-523,-566,-615,-663,-709,-750,-787,-822,-852,-873,-884,-888,-894,-905,-923,-942,-959,-975,-992,-1011,
+-1033,-1060,-1095,-1141,-1192,-1232,-1245,-1222,-1171,-1108,-1056,-1040,-1075,-1162,-1275,-1373,-1421,-1411,-1365,-1314,-1276,
+-1248,-1220,-1188,-1159,-1138,-1126,-1115,-1105,-1095,-1087,-1081,-1073,-1069,-1074,-1090,-1110,-1125,-1135,-1146,-1166,-1190,
+-1208,-1214,-1213,-1215,-1222,-1230,-1231,-1224,-1213,-1205,-1204,-1211,-1227,-1249,-1267,-1276,-1278,-1282,-1295,-1312,-1315,
+-1293,-1255,-1222,-1213,-1228,-1252,-1270,-1277,-1279,-1282,-1286,-1290,-1294,-1299,-1305,-1305,-1299,-1288,-1279,-1277,-1281,
+-1284,-1283,-1277,-1271,-1268,-1268,-1268,-1269,-1268,-1267,-1265,-1264,-1262,-1261,-1260,-1257,-1253,-1250,-1247,-1242,-1234,
+-1222,-1211,-1206,-1209,-1218,-1231,-1245,-1261,-1279,-1298,-1316,-1334,-1353,-1372,-1388,-1397,-1402,-1406,-1415,-1427,-1439,
+-1450,-1460,-1473,-1486,-1496,-1502,-1508,-1521,-1542,-1565,-1581,-1591,-1598,-1609,-1626,-1644,-1663,-1685,-1710,-1736,-1755,
+-1763,-1764,-1768,-1782,-1806,-1837,-1871,-1905,-1937,-1964,-1982,-1991,-1997,-2008,-2027,-2051,-2076,-2097,-2118,-2144,-2177,
+-2212,-2239,-2250,-2248,-2247,-2261,-2294,-2338,-2379,-2414,-2445,-2481,-2522,-2566,-2606,-2639,-2663,-2678,-2690,-2705,-2730,
+-2768,-2812,-2854,-2891,-2924,-2960,-2999,-3034,-3064,-3088,-3112,-3141,-3174,-3206,-3235,-3262,-3291,-3319,-3346,-3372,-3401,
+-3432,-3459,-3479,-3492,-3504,-3522,-3546,-3567,-3582,-3591,-3601,-3617,-3636,-3653,-3666,-3676,-3685,-3694,-3703,-3711,-3720,
+-3733,-3749,-3770,-3795,-3821,-3843,-3858,-3865,-3867,-3868,-3869,-3873,-3879,-3887,-3896,-3904,-3909,-3911,-3913,-3917,-3923,
+-3927,-3930,-3934,-3938,-3938,-3931,-3919,-3911,-3912,-3915,-3911,-3895,-3874,-3860,-3854,-3846,-3828,-3801,-3777,-3761,-3743,
+-3707,-3639,-3546,-3442,-3345,-3265,-3207,-3176,-3170,-3182,-3197,-3201,-3187,-3149,-3081,-2977,-2839,-2686,-2552,-2472,-2462,
+-2510,-2583,-2644,-2672,-2671,-2657,-2644,-2634,-2618,-2597,-2578,-2572,-2573,-2566,-2542,-2506,-2475,-2459,-2446,-2414,-2350,
+-2269,-2193,-2142,-2117,-2112,-2123,-2149,-2187,-2225,-2250,-2247,-2210,-2147,-2075,-2021,-2004,-2014,-2017,-1982,-1907,-1826,
+-1775,-1756,-1738,-1696,-1639,-1607,-1627,-1678,-1710,-1695,-1656,-1649,-1712,-1828,-1949,-2034,-2082,-2116,-2158,-2215,-2276,
+-2335,-2394,-2453,-2514,-2569,-2615,-2651,-2677,-2695,-2708,-2718,-2729,-2744,-2764,-2789,-2816,-2845,-2872,-2893,-2908,-2918,
+-2930,-2948,-2977,-3016,-3059,-3096,-3119,-3128,-3131,-3138,-3151,-3164,-3170,-3166,-3155,-3139,-3117,-3090,-3066,-3059,-3076,
+-3107,-3132,-3137,-3121,-3096,-3070,-3046,-3019,-2990,-2965,-2950,-2944,-2943,-2947,-2958,-2983,-3017,-3051,-3079,-3102,-3126,
+-3157,-3193,-3231,-3270,-3313,-3357,-3390,-3397,-3369,-3317,-3267,-3242,-3249,-3274,-3297,-3307,-3306,-3299,-3288,-3267,-3236,
+-3206,-3190,-3198,-3223,-3254,-3281,-3308,-3335,-3354,-3350,-3322,-3285,-3263,-3268,-3296,-3330,-3365,-3408,-3468,-3540,-3613,
+-3677,-3736,-3791,-3837,-3856,-3839,-3805,-3792,-3832,-3927,-4048,-4154,-4223,-4255,-4264,-4261,-4249,-4231,-4212,-4200,-4197,
+-4199,-4200,-4198,-4195,-4193,-4190,-4183,-4171,-4160,-4155,-4156,-4156,-4148,-4130,-4105,-4077,-4047,-4011,-3968,-3920,-3871,
+-3822,-3771,-3719,-3667,-3619,-3575,-3531,-3485,-3442,-3408,-3386,-3365,-3336,-3294,-3242,-3193,-3153,-3122,-3094,-3061,-3018,
+-2959,-2890,-2821,-2770,-2746,-2742,-2739,-2718,-2674,-2616,-2553,-2492,-2431,-2373,-2321,-2278,-2240,-2199,-2151,-2099,-2046,
+-1993,-1935,-1868,-1795,-1719,-1643,-1562,-1473,-1376,-1279,-1189,-1109,-1035,-962,-888,-812,-735,-661,-588,-515,-442,
+-367,-292,-219,-150,-81,-10,64,140,217,293,369,446,522,598,673,750,829,908,984,1058,1135,
+1219,1310,1404,1497,1587,1677,1770,1866,1963,2058,2149,2238,2326,2417,2512,2607,2696,2775,2843,2905,2967,
+3036,3113,3198,3286,3373,3454,3529,3599,3668,3739,3809,3877,3946,4020,4101,4186,4268,4346,4420,4492,4561,
+4625,4687,4754,4831,4912,4982,5033,5068,5099,5137,5179,5217,5243,5257,5264,5270,5277,5292,5319,5356,5391,
+5411,5408,5389,5370,5367,5385,5414,5437,5441,5421,5392,5378,5396,5445,5501,5533,5523,5473,5402,5334,5280,
+5239,5201,5154,5092,5023,4967,4945,4958,4989,5013,5017,5007,4994,4978,4946,4885,4805,4732,4697,4712,4763,
+4819,4852,4847,4813,4771,4744,4743,4761,4781,4789,4790,4795,4814,4848,4894,4948,5010,5072,5112,5103,5036,
+4925,4803,4699,4621,4557,4491,4421,4366,4357,4414,4531,4673,4794,4870,4915,4969,5061,5186,5309,5393,5426,
+5428,5425,5428,5429,5415,5381,5332,5272,5202,5119,5024,4926,4837,4770,4736,4739,4776,4833,4895,4951,5000,
+5048,5097,5134,5146,5123,5071,5007,4947,4900,4864,4830,4790,4743,4669,4633,4602,4580,4562,4541,4514,4485,
+4460,4438,4417,4391,4362,4337,4318,4308,4298,4282,4255,4220,4188,4171,4174,4188,4197,4193,4178,4164,4162,
+4170,4180,4189,4201,4226,4264,4304,4328,4327,4308,4281,4257,4240,4229,4224,4224,4232,4245,4257,4258,4244,
+4214,4171,4113,4038,3953,3891,3900,4000,4148,4241,4180,3942,3605,3295,3098,3016,2989,2964,2930,2905,2897,
+2890,2867,2829,2789,2747,2687,2595,2490,2410,2379,2379,2371,2336,2303,2325,2431,2597,2776,2933,3069,3198,
+3326,3441,3531,3598,3658,3719,3776,3815,3833,3833,3823,3804,3773,3735,3696,3658,3614,3552,3473,3387,3304,
+3227,3147,3062,2988,2951,2967,3025,3093,3135,3143,3137,3152,3209,3301,3397,3460,3474,3448,3407,3372,3358,
+3365,3388,3411,3415,3380,3302,3201,3113,3072,3082,3124,3166,3183,3166,3117,3042,2951,2854,2766,2694,2641,
+2602,2568,2533,2492,2445,2396,2352,2317,2285,2248,2196,2128,2047,1968,1910,1893,1920,1973,2023,2047,2048,
+2044,2049,2053,2038,1994,1931,1869,1817,1773,1731,1687,1635,1559,1449,1323,1222,1176,1162,1110,960,719,
+462,273,171,105,0,-178,-399,-603,-748,-831,-876,-911,-951,-996,-1039,-1077,-1113,-1154,-1203,-1257,-1302,
+-1327,-1324,-1291,-1235,-1168,-1106,-1065,-1048,-1052,-1070,-1099,-1144,-1204,-1273,-1345,-1427,-1539,-1696,-1891,-2094,-2276,
+-2429,-2561,-2678,-2777,-2851,-2905,-2954,-3011,-3072,-3126,-3170,-3215,-3273,-3343,-3412,-3474,-3532,-3594,-3655,-3701,-3724,
+-3734,-3751,-3782,-3814,-3838,-3865,-3928,-4045,-4193,-4320,-4387,-4402,-4413,-4459,-4534,-4592,-4589,-4511,-4374,-4201,-4003,
+-3791,-3582,-3398,-3254,-3146,-3059,-2989,-2940,-2906,-2869,-2809,-2730,-2663,-2646,-2689,-2766,-2845,-2910,-2964,-3010,-3035,
+-3023,-2982,-2950,-2974,-3075,-3234,-3414,-3586,-3746,-3903,-4067,-4238,-4413,-4586,-4751,-4900,-5028,-5131,-5210,-5263,-5291,
+-5294,-5278,-5256,-5240,-5237,-5244,-5260,-5278,-5293,-5294,-5270,-5212,-5122,-5014,-4906,-4809,-4719,-4621,-4504,-4373,-4250,
+-4164,-4128,-4138,-4174,-4213,-4239,-4246,-4238,-4231,-4249,-4309,-4410,-4524,-4616,-4666,-4679,-4679,-4683,-4696,-4715,-4745,
+-4802,-4903,-5053,-5234,-5419,-5582,-5709,-5799,-5859,-5893,-5904,-5893,-5863,-5817,-5753,-5670,-5566,-5452,-5349,-5277,-5244,
+-5241,-5242,-5227,-5183,-5109,-5010,-4904,-4811,-4745,-4707,-4680,-4648,-4610,-4575,-4547,-4514,-4459,-4383,-4310,-4267,-4259,
+-4266,-4267,-4264,-4273,-4307,-4354,-4389,-4401,-4401,-4402,-4405,-4393,-4355,-4298,-4240,-4188,-4133,-4061,-3972,-3881,-3806,
+-3745,-3684,-3605,-3506,-3403,-3314,-3248,-3198,-3151,-3102,-3057,-3022,-2987,-2927,-2816,-2655,-2474,-2317,-2207,-2134,-2070,
+-1991,-1889,-1767,-1639,-1527,-1463,-1467,-1528,-1604,-1643,-1623,-1561,-1485,-1411,-1331,-1236,-1132,-1029,-933,-834,-725,
+-609,-500,-406,-317,-219,-106,10,120,220,313,403,487,565,642,719,794,861,920,982,1055,1138,
+1220,1294,1359,1425,1495,1566,1633,1698,1764,1829,1887,1933,1974,2024,2091,2170,2246,2310,2363,2417,2481,
+2562,2656,2750,2821,2848,2825,2767,2702,2661,2655,2679,2719,2760,2793,2822,2855,2901,2961,3024,3075,3104,
+3116,3118,3118,3117,3120,3135,3164,3201,3238,3277,3338,3431,3542,3633,3676,3678,3677,3699,3744,3790,3835,
+3898,3996,4113,4206,4247,4250,4255,4271,4265,4187,4021,3802,3576,3355,3109,2808,2461,2115,1829,1641,1567,
+1602,1722,1884,2030,2120,2153,2158,2166,2181,2182,2155,2105,2055,2015,1982,1941,1890,1833,1775,1713,1642,
+1565,1493,1431,1378,1326,1271,1218,1172,1135,1101,1064,1021,973,925,876,827,781,737,696,654,608,
+559,508,457,407,358,312,267,224,180,137,104,84,76,73,66,51,29,0,-34,-77,-123,
+-167,-205,-236,-264,-295,-327,-357,-382,-402,-419,-437,-457,-480,-508,-544,-587,-634,-679,-719,-755,-789,
+-821,-848,-864,-870,-872,-879,-896,-919,-940,-955,-964,-974,-989,-1010,-1036,-1070,-1111,-1158,-1203,-1242,-1273,
+-1297,-1306,-1290,-1250,-1209,-1201,-1242,-1317,-1382,-1402,-1372,-1316,-1263,-1227,-1203,-1183,-1164,-1146,-1130,-1113,-1098,
+-1086,-1079,-1074,-1066,-1059,-1061,-1074,-1092,-1106,-1115,-1125,-1144,-1167,-1187,-1197,-1201,-1206,-1213,-1218,-1217,-1211,
+-1204,-1199,-1198,-1203,-1216,-1238,-1260,-1271,-1272,-1272,-1283,-1299,-1305,-1287,-1252,-1222,-1218,-1237,-1264,-1282,-1286,
+-1285,-1287,-1292,-1298,-1302,-1305,-1306,-1304,-1298,-1290,-1286,-1287,-1291,-1294,-1291,-1285,-1278,-1275,-1277,-1281,-1285,
+-1286,-1284,-1281,-1277,-1276,-1277,-1277,-1273,-1268,-1264,-1263,-1262,-1259,-1252,-1243,-1237,-1237,-1245,-1259,-1275,-1293,
+-1311,-1329,-1345,-1360,-1376,-1393,-1409,-1419,-1426,-1431,-1441,-1453,-1464,-1473,-1481,-1490,-1499,-1505,-1508,-1513,-1527,
+-1550,-1573,-1587,-1593,-1598,-1611,-1631,-1653,-1673,-1692,-1714,-1737,-1755,-1765,-1769,-1777,-1793,-1817,-1846,-1877,-1909,
+-1941,-1968,-1986,-1995,-2000,-2010,-2027,-2049,-2073,-2094,-2116,-2143,-2176,-2209,-2235,-2246,-2248,-2252,-2269,-2304,-2348,
+-2393,-2432,-2467,-2501,-2537,-2571,-2601,-2625,-2646,-2663,-2680,-2702,-2732,-2773,-2818,-2859,-2894,-2926,-2962,-3002,-3040,
+-3070,-3094,-3116,-3141,-3170,-3199,-3228,-3258,-3292,-3327,-3361,-3390,-3416,-3440,-3462,-3479,-3493,-3510,-3534,-3563,-3592,
+-3612,-3626,-3639,-3654,-3670,-3684,-3693,-3701,-3708,-3717,-3726,-3734,-3743,-3755,-3771,-3794,-3819,-3844,-3865,-3878,-3882,
+-3881,-3879,-3880,-3884,-3893,-3905,-3918,-3930,-3937,-3940,-3940,-3943,-3948,-3953,-3957,-3962,-3965,-3964,-3956,-3944,-3935,
+-3934,-3936,-3934,-3921,-3904,-3892,-3887,-3883,-3870,-3846,-3817,-3792,-3767,-3736,-3689,-3622,-3540,-3447,-3355,-3276,-3223,
+-3202,-3207,-3224,-3240,-3247,-3239,-3207,-3137,-3019,-2859,-2686,-2547,-2482,-2505,-2591,-2690,-2753,-2765,-2743,-2715,-2698,
+-2686,-2671,-2652,-2638,-2630,-2621,-2601,-2573,-2548,-2531,-2510,-2470,-2406,-2329,-2260,-2211,-2188,-2192,-2224,-2272,-2314,
+-2328,-2305,-2261,-2214,-2175,-2142,-2114,-2099,-2097,-2090,-2057,-1999,-1944,-1920,-1924,-1914,-1853,-1752,-1664,-1639,-1668,
+-1703,-1701,-1671,-1664,-1718,-1820,-1925,-1996,-2034,-2067,-2120,-2193,-2270,-2342,-2408,-2473,-2537,-2597,-2648,-2688,-2718,
+-2739,-2753,-2765,-2780,-2801,-2826,-2849,-2868,-2882,-2892,-2899,-2906,-2916,-2932,-2954,-2979,-3004,-3028,-3050,-3067,-3081,
+-3092,-3101,-3108,-3109,-3105,-3099,-3090,-3079,-3060,-3034,-3009,-3001,-3019,-3055,-3090,-3110,-3112,-3103,-3089,-3067,-3034,
+-2992,-2952,-2925,-2912,-2910,-2916,-2932,-2957,-2989,-3020,-3047,-3074,-3104,-3139,-3170,-3194,-3215,-3242,-3279,-3312,-3317,
+-3284,-3226,-3176,-3161,-3184,-3220,-3244,-3247,-3241,-3239,-3241,-3234,-3214,-3190,-3179,-3190,-3216,-3243,-3268,-3298,-3333,
+-3359,-3356,-3319,-3270,-3242,-3252,-3291,-3340,-3391,-3449,-3518,-3593,-3663,-3724,-3783,-3844,-3892,-3905,-3879,-3841,-3839,
+-3900,-4011,-4130,-4219,-4264,-4278,-4278,-4273,-4260,-4241,-4222,-4214,-4218,-4229,-4237,-4239,-4235,-4228,-4219,-4208,-4198,
+-4191,-4191,-4192,-4189,-4175,-4152,-4121,-4088,-4053,-4015,-3974,-3931,-3886,-3841,-3795,-3748,-3700,-3653,-3606,-3558,-3510,
+-3466,-3430,-3403,-3378,-3347,-3308,-3262,-3215,-3173,-3139,-3112,-3087,-3052,-2997,-2923,-2846,-2791,-2769,-2770,-2766,-2738,
+-2684,-2620,-2562,-2512,-2464,-2413,-2362,-2317,-2277,-2237,-2190,-2137,-2083,-2030,-1973,-1909,-1837,-1761,-1684,-1605,-1519,
+-1426,-1332,-1244,-1167,-1095,-1024,-949,-869,-787,-707,-631,-558,-483,-406,-327,-252,-184,-120,-56,12,86,
+165,246,327,408,486,561,637,718,802,885,962,1035,1110,1195,1290,1389,1485,1577,1668,1761,1856,
+1950,2043,2133,2222,2311,2402,2495,2588,2675,2751,2816,2876,2939,3011,3092,3178,3266,3350,3429,3503,3575,
+3647,3718,3788,3857,3928,4006,4094,4184,4269,4344,4413,4478,4543,4607,4673,4745,4823,4898,4959,4999,5025,
+5052,5086,5123,5151,5165,5167,5162,5157,5156,5164,5186,5218,5251,5272,5276,5269,5266,5276,5300,5332,5358,
+5367,5354,5325,5298,5295,5322,5366,5403,5405,5364,5290,5208,5140,5098,5075,5051,5010,4954,4904,4887,4906,
+4943,4966,4964,4946,4930,4917,4890,4837,4763,4696,4663,4671,4704,4736,4746,4733,4708,4689,4693,4720,4755,
+4776,4774,4757,4750,4772,4830,4912,5009,5106,5183,5217,5187,5097,4972,4842,4727,4627,4536,4463,4429,4454,
+4536,4652,4766,4846,4879,4879,4884,4931,5033,5165,5282,5349,5361,5345,5330,5326,5317,5287,5228,5149,5063,
+4978,4896,4820,4756,4709,4684,4681,4702,4748,4815,4893,4971,5039,5092,5127,5139,5120,5067,4987,4897,4818,
+4765,4737,4720,4700,4669,4623,4595,4569,4547,4524,4495,4464,4445,4445,4459,4470,4467,4451,4435,4433,4444,
+4454,4445,4408,4354,4304,4281,4291,4322,4346,4347,4326,4296,4275,4265,4263,4264,4269,4282,4300,4312,4311,
+4297,4277,4260,4247,4237,4227,4217,4207,4201,4199,4198,4192,4172,4136,4087,4027,3956,3881,3828,3839,3936,
+4083,4184,4138,3916,3590,3281,3083,3000,2972,2941,2895,2854,2835,2831,2825,2812,2797,2774,2723,2629,2507,
+2392,2312,2259,2206,2144,2102,2125,2229,2386,2549,2693,2826,2970,3125,3273,3393,3485,3562,3635,3699,3744,
+3764,3766,3757,3737,3701,3649,3585,3518,3446,3364,3268,3159,3047,2941,2850,2784,2755,2771,2825,2891,2938,
+2944,2910,2865,2851,2902,3021,3177,3313,3387,3388,3342,3290,3260,3254,3254,3236,3183,3093,2985,2888,2834,
+2839,2891,2957,3007,3025,3012,2976,2920,2851,2776,2710,2659,2619,2577,2527,2468,2408,2351,2299,2253,2215,
+2184,2155,2116,2057,1977,1890,1821,1790,1804,1843,1881,1897,1898,1903,1925,1957,1975,1962,1917,1855,1789,
+1731,1690,1667,1647,1598,1500,1367,1248,1180,1152,1101,976,786,603,498,473,463,385,205,-42,-291,
+-487,-613,-686,-733,-779,-834,-893,-947,-984,-1003,-1011,-1014,-1015,-1016,-1016,-1018,-1022,-1027,-1035,-1048,-1065,
+-1087,-1112,-1145,-1191,-1247,-1304,-1353,-1398,-1459,-1551,-1674,-1817,-1971,-2135,-2309,-2481,-2627,-2735,-2810,-2874,-2938,
+-3001,-3051,-3092,-3135,-3191,-3254,-3311,-3361,-3417,-3486,-3561,-3621,-3654,-3673,-3702,-3748,-3800,-3838,-3868,-3915,-3998,
+-4105,-4202,-4264,-4303,-4353,-4430,-4509,-4541,-4490,-4363,-4197,-4023,-3851,-3680,-3515,-3374,-3266,-3180,-3101,-3027,-2973,
+-2951,-2946,-2926,-2875,-2817,-2799,-2848,-2945,-3041,-3095,-3098,-3064,-3009,-2935,-2846,-2760,-2703,-2697,-2746,-2837,-2956,
+-3089,-3232,-3384,-3551,-3740,-3953,-4178,-4390,-4570,-4709,-4818,-4908,-4983,-5039,-5072,-5081,-5075,-5066,-5061,-5066,-5077,
+-5082,-5064,-5007,-4907,-4773,-4625,-4489,-4379,-4293,-4214,-4128,-4035,-3959,-3928,-3958,-4032,-4115,-4175,-4198,-4193,-4181,
+-4182,-4208,-4265,-4347,-4439,-4520,-4574,-4602,-4614,-4620,-4624,-4627,-4638,-4674,-4755,-4884,-5042,-5204,-5348,-5468,-5569,
+-5654,-5725,-5773,-5796,-5795,-5777,-5748,-5707,-5651,-5580,-5508,-5450,-5414,-5397,-5384,-5360,-5312,-5233,-5125,-5005,-4896,
+-4817,-4770,-4738,-4701,-4657,-4616,-4584,-4551,-4497,-4423,-4355,-4321,-4322,-4332,-4320,-4287,-4261,-4269,-4304,-4341,-4357,
+-4356,-4355,-4353,-4334,-4283,-4206,-4130,-4073,-4028,-3974,-3899,-3812,-3736,-3679,-3628,-3562,-3475,-3377,-3292,-3229,-3182,
+-3137,-3088,-3045,-3014,-2985,-2924,-2810,-2649,-2480,-2340,-2240,-2158,-2067,-1959,-1846,-1739,-1640,-1555,-1503,-1506,-1559,
+-1627,-1658,-1631,-1560,-1476,-1399,-1319,-1226,-1119,-1011,-908,-803,-688,-565,-449,-347,-255,-162,-62,39,137,
+234,331,428,517,593,660,724,789,855,924,999,1081,1166,1245,1316,1381,1446,1511,1575,1639,1707,
+1779,1850,1908,1954,1998,2053,2122,2195,2264,2329,2391,2455,2521,2589,2665,2750,2827,2872,2866,2814,2745,
+2691,2671,2683,2714,2752,2788,2823,2862,2913,2977,3047,3106,3145,3164,3168,3166,3164,3169,3190,3226,3265,
+3298,3329,3378,3453,3541,3612,3650,3677,3724,3804,3892,3958,4003,4056,4141,4236,4298,4302,4275,4258,4257,
+4227,4112,3902,3641,3378,3124,2845,2516,2161,1841,1617,1517,1532,1637,1800,1978,2122,2200,2215,2198,2185,
+2184,2182,2161,2122,2075,2032,1990,1944,1892,1837,1778,1712,1639,1565,1502,1453,1412,1367,1311,1249,1192,
+1144,1104,1066,1026,981,933,883,833,784,736,690,644,599,554,510,463,413,364,318,277,236,
+195,154,121,102,98,102,105,99,82,53,13,-35,-89,-142,-189,-230,-267,-301,-333,-362,-391,
+-419,-446,-470,-491,-510,-534,-567,-609,-653,-696,-733,-765,-795,-822,-842,-853,-857,-861,-873,-894,-918,
+-936,-945,-950,-958,-972,-989,-1010,-1037,-1074,-1121,-1169,-1216,-1266,-1319,-1361,-1365,-1314,-1229,-1160,-1152,-1210,
+-1293,-1348,-1349,-1309,-1258,-1218,-1193,-1176,-1164,-1154,-1142,-1123,-1101,-1081,-1070,-1067,-1063,-1058,-1055,-1060,-1072,
+-1085,-1095,-1103,-1115,-1133,-1152,-1169,-1185,-1200,-1210,-1211,-1204,-1194,-1189,-1189,-1190,-1192,-1200,-1217,-1239,-1257,
+-1263,-1265,-1269,-1278,-1280,-1267,-1246,-1233,-1240,-1264,-1288,-1300,-1299,-1295,-1296,-1301,-1306,-1308,-1308,-1307,-1303,
+-1298,-1294,-1292,-1292,-1293,-1293,-1291,-1287,-1283,-1282,-1285,-1290,-1297,-1302,-1302,-1300,-1298,-1300,-1305,-1310,-1312,
+-1311,-1311,-1313,-1316,-1319,-1316,-1309,-1300,-1296,-1296,-1302,-1311,-1322,-1334,-1346,-1356,-1366,-1377,-1391,-1406,-1420,
+-1432,-1443,-1455,-1468,-1479,-1485,-1490,-1497,-1505,-1512,-1515,-1520,-1531,-1549,-1567,-1577,-1581,-1585,-1597,-1618,-1640,
+-1659,-1677,-1699,-1723,-1743,-1755,-1763,-1773,-1792,-1816,-1842,-1871,-1902,-1934,-1964,-1984,-1996,-2003,-2012,-2028,-2049,
+-2072,-2096,-2122,-2152,-2184,-2212,-2233,-2244,-2250,-2261,-2282,-2317,-2359,-2401,-2439,-2473,-2504,-2533,-2558,-2579,-2598,
+-2619,-2641,-2665,-2693,-2730,-2775,-2824,-2869,-2906,-2938,-2972,-3008,-3044,-3074,-3098,-3120,-3143,-3169,-3196,-3223,-3253,
+-3290,-3331,-3368,-3398,-3420,-3437,-3453,-3470,-3489,-3514,-3544,-3577,-3607,-3632,-3651,-3668,-3685,-3700,-3711,-3718,-3722,
+-3728,-3736,-3745,-3755,-3768,-3783,-3803,-3825,-3846,-3866,-3881,-3890,-3891,-3889,-3886,-3887,-3893,-3904,-3919,-3936,-3951,
+-3960,-3963,-3964,-3967,-3972,-3978,-3981,-3982,-3983,-3981,-3976,-3967,-3959,-3955,-3954,-3950,-3941,-3928,-3919,-3914,-3910,
+-3900,-3880,-3853,-3825,-3798,-3772,-3745,-3710,-3662,-3594,-3509,-3416,-3335,-3280,-3256,-3256,-3269,-3282,-3288,-3276,-3235,
+-3151,-3017,-2847,-2677,-2560,-2536,-2603,-2712,-2803,-2838,-2828,-2803,-2786,-2773,-2750,-2715,-2681,-2661,-2657,-2657,-2650,
+-2634,-2606,-2564,-2506,-2439,-2375,-2319,-2271,-2236,-2229,-2263,-2325,-2373,-2367,-2304,-2224,-2170,-2154,-2154,-2147,-2133,
+-2127,-2130,-2124,-2098,-2065,-2051,-2055,-2043,-1976,-1857,-1741,-1680,-1682,-1703,-1701,-1680,-1680,-1729,-1814,-1895,-1946,
+-1977,-2021,-2096,-2191,-2283,-2360,-2426,-2493,-2563,-2629,-2685,-2727,-2756,-2776,-2790,-2803,-2821,-2844,-2869,-2890,-2901,
+-2902,-2898,-2893,-2894,-2905,-2925,-2949,-2967,-2977,-2983,-2993,-3011,-3036,-3057,-3067,-3064,-3053,-3040,-3031,-3028,-3024,
+-3016,-3000,-2984,-2978,-2988,-3013,-3042,-3065,-3080,-3088,-3087,-3071,-3039,-2995,-2950,-2917,-2898,-2894,-2900,-2918,-2945,
+-2975,-3002,-3027,-3054,-3087,-3119,-3140,-3148,-3154,-3173,-3209,-3243,-3247,-3210,-3149,-3103,-3099,-3133,-3175,-3198,-3198,
+-3194,-3201,-3216,-3222,-3210,-3192,-3187,-3203,-3228,-3251,-3270,-3297,-3332,-3358,-3352,-3313,-3268,-3250,-3272,-3321,-3377,
+-3434,-3496,-3570,-3645,-3713,-3773,-3836,-3900,-3943,-3942,-3900,-3859,-3869,-3951,-4074,-4188,-4258,-4285,-4290,-4293,-4292,
+-4283,-4265,-4250,-4246,-4254,-4267,-4275,-4275,-4268,-4258,-4247,-4236,-4227,-4222,-4219,-4215,-4206,-4189,-4164,-4133,-4098,
+-4060,-4021,-3981,-3940,-3898,-3854,-3808,-3763,-3720,-3678,-3636,-3594,-3552,-3511,-3473,-3436,-3398,-3358,-3317,-3278,-3240,
+-3201,-3163,-3127,-3095,-3062,-3017,-2959,-2897,-2849,-2824,-2813,-2793,-2750,-2687,-2623,-2572,-2535,-2499,-2456,-2407,-2361,
+-2319,-2277,-2229,-2174,-2118,-2064,-2009,-1948,-1878,-1803,-1724,-1643,-1560,-1475,-1389,-1308,-1233,-1163,-1094,-1021,-939,
+-851,-763,-681,-606,-532,-454,-370,-288,-213,-148,-88,-25,44,120,201,285,369,451,528,605,686,
+770,854,934,1010,1088,1174,1268,1365,1460,1553,1645,1737,1828,1918,2006,2096,2186,2276,2365,2454,2543,
+2630,2708,2779,2846,2919,3001,3087,3172,3251,3327,3401,3476,3552,3628,3702,3772,3842,3915,3995,4083,4172,
+4253,4324,4389,4454,4522,4590,4658,4726,4794,4857,4908,4943,4969,4995,5024,5050,5065,5066,5061,5055,5051,
+5049,5052,5063,5084,5110,5133,5149,5159,5170,5183,5201,5221,5240,5252,5249,5230,5206,5195,5210,5244,5276,
+5277,5232,5146,5046,4964,4919,4910,4911,4895,4856,4815,4800,4820,4855,4873,4860,4829,4801,4784,4762,4720,
+4662,4608,4577,4574,4584,4590,4586,4574,4564,4569,4596,4643,4695,4728,4732,4719,4716,4752,4834,4949,5074,
+5184,5254,5266,5218,5128,5021,4917,4814,4705,4604,4549,4579,4699,4863,5002,5064,5040,4969,4903,4884,4926,
+5013,5111,5184,5216,5212,5193,5180,5173,5157,5118,5050,4962,4871,4791,4731,4697,4690,4702,4724,4745,4766,
+4795,4840,4901,4972,5036,5084,5107,5101,5064,4995,4902,4804,4722,4672,4653,4650,4643,4623,4603,4591,4583,
+4576,4563,4538,4512,4503,4520,4556,4590,4605,4602,4597,4605,4625,4639,4628,4583,4518,4461,4436,4448,4479,
+4500,4495,4464,4424,4391,4368,4352,4338,4327,4320,4314,4304,4288,4272,4259,4248,4233,4213,4191,4170,4155,
+4144,4135,4128,4116,4094,4059,4013,3963,3911,3858,3821,3829,3902,4017,4095,4049,3848,3549,3265,3080,3002,
+2975,2941,2884,2829,2799,2796,2804,2813,2814,2797,2738,2628,2481,2335,2215,2118,2020,1918,1842,1837,1917,
+2056,2211,2358,2504,2668,2853,3038,3200,3331,3440,3532,3606,3652,3669,3667,3655,3632,3592,3528,3446,3353,
+3254,3146,3019,2867,2700,2544,2435,2401,2448,2550,2659,2732,2745,2704,2630,2555,2517,2551,2673,2862,3063,
+3211,3273,3260,3214,3167,3125,3070,2987,2876,2758,2658,2601,2601,2652,2732,2807,2854,2870,2864,2847,2818,
+2775,2720,2666,2622,2582,2535,2476,2411,2352,2302,2256,2208,2158,2115,2079,2041,1985,1905,1814,1735,1694,
+1695,1724,1754,1771,1778,1791,1822,1864,1896,1901,1876,1827,1768,1713,1676,1661,1654,1622,1540,1415,1292,
+1208,1162,1109,1007,863,733,668,670,683,643,517,321,94,-123,-307,-449,-555,-639,-715,-782,-827,
+-840,-819,-783,-749,-730,-729,-748,-787,-845,-915,-990,-1059,-1118,-1165,-1202,-1237,-1276,-1318,-1359,-1391,-1416,
+-1443,-1482,-1538,-1619,-1735,-1893,-2087,-2291,-2470,-2607,-2708,-2791,-2867,-2932,-2979,-3016,-3057,-3105,-3153,-3191,-3224,
+-3270,-3339,-3420,-3493,-3547,-3591,-3644,-3709,-3771,-3815,-3843,-3870,-3911,-3963,-4013,-4056,-4109,-4191,-4295,-4378,-4388,
+-4302,-4141,-3953,-3775,-3616,-3475,-3353,-3264,-3210,-3172,-3124,-3065,-3021,-3015,-3042,-3061,-3043,-3001,-2987,-3039,-3143,
+-3237,-3264,-3209,-3102,-2982,-2863,-2740,-2609,-2483,-2390,-2356,-2387,-2470,-2579,-2693,-2806,-2934,-3099,-3314,-3563,-3809,
+-4014,-4167,-4286,-4397,-4518,-4640,-4742,-4797,-4799,-4757,-4698,-4646,-4615,-4594,-4565,-4507,-4414,-4295,-4170,-4060,-3977,
+-3925,-3892,-3863,-3831,-3806,-3807,-3847,-3915,-3983,-4025,-4037,-4038,-4051,-4083,-4133,-4190,-4251,-4313,-4374,-4424,-4462,
+-4487,-4506,-4521,-4535,-4553,-4588,-4653,-4748,-4860,-4972,-5072,-5162,-5251,-5345,-5439,-5522,-5586,-5626,-5648,-5655,-5649,
+-5628,-5592,-5548,-5505,-5470,-5444,-5424,-5400,-5360,-5293,-5192,-5068,-4943,-4843,-4780,-4743,-4713,-4682,-4652,-4628,-4598,
+-4548,-4477,-4409,-4373,-4373,-4382,-4370,-4334,-4304,-4308,-4343,-4377,-4385,-4368,-4345,-4324,-4288,-4221,-4127,-4034,-3969,
+-3930,-3893,-3833,-3755,-3682,-3629,-3591,-3545,-3473,-3383,-3296,-3228,-3177,-3129,-3079,-3035,-3002,-2969,-2904,-2791,-2641,
+-2491,-2370,-2275,-2177,-2059,-1929,-1812,-1722,-1650,-1590,-1549,-1549,-1593,-1648,-1670,-1634,-1557,-1469,-1387,-1304,-1208,
+-1097,-982,-868,-753,-629,-500,-379,-273,-180,-92,-7,74,154,239,335,440,542,630,700,758,815,
+877,950,1033,1119,1198,1265,1325,1386,1449,1513,1573,1635,1705,1784,1859,1921,1972,2025,2090,2161,2229,
+2290,2351,2421,2497,2566,2624,2681,2749,2821,2872,2878,2837,2773,2715,2684,2684,2706,2740,2778,2814,2852,
+2899,2962,3038,3115,3177,3216,3231,3227,3217,3215,3235,3272,3311,3338,3359,3395,3463,3550,3629,3690,3749,
+3834,3946,4054,4123,4154,4181,4227,4278,4300,4280,4245,4227,4215,4153,3990,3731,3429,3133,2846,2541,2206,
+1879,1627,1500,1499,1592,1739,1907,2067,2186,2246,2252,2232,2213,2204,2194,2172,2137,2093,2047,1996,1942,
+1886,1830,1774,1712,1642,1572,1513,1468,1430,1388,1336,1276,1216,1162,1115,1073,1033,991,944,894,842,
+789,736,683,633,590,552,516,476,430,380,333,292,254,216,179,149,131,128,135,142,142,
+129,99,54,0,-60,-117,-171,-220,-264,-302,-336,-366,-398,-432,-466,-494,-516,-535,-557,-588,-625,
+-665,-703,-736,-766,-792,-815,-831,-841,-849,-859,-876,-897,-916,-927,-932,-938,-948,-962,-974,-984,-1002,
+-1035,-1084,-1135,-1180,-1224,-1275,-1325,-1346,-1309,-1222,-1130,-1091,-1126,-1207,-1280,-1309,-1295,-1261,-1225,-1193,-1168,
+-1151,-1145,-1141,-1129,-1102,-1074,-1057,-1058,-1065,-1066,-1061,-1055,-1056,-1064,-1073,-1079,-1086,-1095,-1110,-1131,-1157,
+-1182,-1198,-1199,-1188,-1176,-1172,-1174,-1176,-1173,-1173,-1185,-1210,-1237,-1256,-1262,-1261,-1257,-1249,-1239,-1231,-1234,
+-1252,-1277,-1298,-1308,-1310,-1309,-1311,-1314,-1315,-1314,-1312,-1309,-1305,-1302,-1299,-1299,-1299,-1299,-1299,-1300,-1302,
+-1304,-1305,-1307,-1310,-1315,-1320,-1323,-1326,-1329,-1337,-1346,-1356,-1364,-1367,-1369,-1370,-1371,-1371,-1369,-1362,-1353,
+-1344,-1337,-1333,-1332,-1334,-1340,-1348,-1357,-1364,-1371,-1382,-1396,-1412,-1427,-1441,-1454,-1466,-1476,-1482,-1487,-1493,
+-1503,-1514,-1521,-1526,-1534,-1545,-1557,-1564,-1568,-1573,-1585,-1603,-1622,-1639,-1657,-1680,-1704,-1725,-1739,-1750,-1764,
+-1784,-1809,-1834,-1862,-1894,-1930,-1963,-1989,-2005,-2017,-2028,-2043,-2060,-2079,-2102,-2130,-2161,-2189,-2211,-2225,-2235,
+-2247,-2266,-2295,-2330,-2368,-2403,-2435,-2465,-2493,-2519,-2541,-2559,-2578,-2600,-2625,-2653,-2686,-2726,-2774,-2826,-2875,
+-2917,-2951,-2983,-3016,-3048,-3077,-3101,-3123,-3146,-3171,-3196,-3223,-3252,-3288,-3328,-3365,-3394,-3411,-3422,-3434,-3453,
+-3480,-3512,-3547,-3579,-3607,-3631,-3653,-3673,-3693,-3708,-3718,-3724,-3728,-3734,-3741,-3752,-3766,-3785,-3808,-3833,-3854,
+-3870,-3882,-3890,-3894,-3894,-3893,-3892,-3894,-3902,-3914,-3930,-3948,-3965,-3976,-3981,-3982,-3985,-3990,-3994,-3995,-3992,
+-3989,-3989,-3989,-3987,-3982,-3977,-3972,-3968,-3963,-3955,-3948,-3941,-3934,-3922,-3903,-3878,-3850,-3822,-3799,-3783,-3772,
+-3757,-3721,-3654,-3558,-3451,-3356,-3293,-3271,-3279,-3301,-3315,-3314,-3291,-3240,-3148,-3007,-2837,-2686,-2610,-2630,-2716,
+-2809,-2865,-2879,-2875,-2870,-2854,-2812,-2748,-2690,-2666,-2681,-2715,-2739,-2731,-2687,-2613,-2528,-2454,-2401,-2361,-2318,
+-2272,-2247,-2269,-2328,-2373,-2353,-2267,-2167,-2110,-2105,-2116,-2109,-2087,-2081,-2105,-2139,-2152,-2138,-2119,-2108,-2088,
+-2028,-1926,-1821,-1757,-1741,-1742,-1728,-1705,-1706,-1750,-1820,-1878,-1911,-1941,-2000,-2098,-2213,-2313,-2388,-2450,-2516,
+-2589,-2660,-2718,-2759,-2787,-2806,-2820,-2833,-2850,-2870,-2891,-2905,-2909,-2902,-2890,-2880,-2878,-2889,-2911,-2933,-2946,
+-2945,-2941,-2947,-2971,-3004,-3030,-3035,-3022,-3002,-2986,-2979,-2981,-2984,-2986,-2984,-2982,-2980,-2982,-2990,-3001,-3016,
+-3032,-3046,-3052,-3044,-3022,-2990,-2958,-2931,-2911,-2900,-2900,-2912,-2936,-2964,-2990,-3015,-3040,-3067,-3089,-3098,-3097,
+-3101,-3124,-3164,-3196,-3192,-3147,-3087,-3050,-3061,-3108,-3159,-3188,-3196,-3200,-3211,-3224,-3224,-3210,-3199,-3211,-3246,
+-3287,-3316,-3332,-3345,-3356,-3355,-3329,-3285,-3253,-3260,-3306,-3369,-3428,-3480,-3536,-3603,-3672,-3737,-3801,-3873,-3943,
+-3981,-3966,-3910,-3868,-3890,-3985,-4113,-4218,-4274,-4293,-4300,-4310,-4316,-4312,-4301,-4293,-4296,-4305,-4310,-4307,-4297,
+-4286,-4277,-4270,-4264,-4257,-4250,-4240,-4228,-4213,-4195,-4173,-4144,-4109,-4069,-4029,-3990,-3950,-3908,-3863,-3816,-3771,
+-3731,-3695,-3661,-3628,-3595,-3560,-3523,-3482,-3437,-3391,-3350,-3317,-3286,-3249,-3203,-3152,-3106,-3070,-3040,-3006,-2966,
+-2923,-2883,-2846,-2803,-2750,-2691,-2638,-2598,-2569,-2539,-2499,-2453,-2406,-2363,-2320,-2273,-2219,-2162,-2103,-2045,-1982,
+-1914,-1840,-1761,-1681,-1603,-1526,-1450,-1373,-1296,-1223,-1155,-1087,-1012,-927,-835,-746,-665,-589,-509,-422,-333,
+-250,-179,-116,-52,15,88,165,247,332,418,502,582,660,739,821,903,986,1069,1156,1246,1337,
+1428,1519,1609,1698,1784,1868,1956,2048,2142,2234,2321,2406,2491,2575,2654,2729,2806,2889,2980,3072,3155,
+3229,3298,3370,3446,3525,3603,3679,3753,3827,3904,3985,4070,4153,4229,4298,4363,4432,4504,4575,4639,4697,
+4751,4800,4842,4876,4903,4926,4947,4961,4965,4962,4961,4965,4973,4977,4977,4977,4984,5000,5022,5045,5067,
+5084,5095,5100,5105,5113,5122,5126,5119,5106,5102,5117,5147,5172,5169,5122,5037,4934,4844,4791,4777,4781,
+4775,4746,4709,4692,4706,4732,4742,4719,4676,4636,4610,4588,4555,4512,4470,4443,4430,4425,4419,4413,4412,
+4419,4440,4480,4538,4602,4652,4678,4687,4708,4766,4867,4994,5115,5201,5232,5206,5140,5065,5004,4959,4907,
+4836,4766,4752,4834,4996,5162,5244,5203,5073,4930,4842,4831,4875,4936,4986,5016,5029,5034,5033,5027,5009,
+4975,4923,4856,4779,4703,4641,4607,4610,4646,4698,4745,4774,4789,4802,4827,4866,4912,4954,4983,4995,4986,
+4954,4896,4818,4737,4670,4630,4616,4615,4612,4603,4609,4624,4647,4671,4681,4674,4657,4648,4659,4685,4709,
+4717,4710,4700,4697,4702,4702,4682,4639,4585,4540,4520,4525,4539,4541,4524,4493,4462,4440,4423,4405,4381,
+4356,4333,4311,4289,4267,4251,4237,4219,4189,4149,4110,4084,4074,4071,4068,4062,4049,4027,3991,3947,3904,
+3865,3832,3808,3811,3857,3934,3986,3940,3765,3502,3245,3071,2994,2969,2940,2889,2834,2801,2797,2811,2827,
+2830,2802,2725,2593,2428,2264,2121,1993,1859,1717,1596,1541,1572,1673,1807,1956,2120,2313,2532,2754,2955,
+3123,3261,3373,3458,3510,3530,3527,3511,3484,3438,3366,3271,3162,3047,2918,2761,2561,2327,2107,1967,1957,
+2075,2256,2408,2470,2437,2349,2257,2189,2162,2193,2305,2497,2730,2940,3073,3117,3099,3047,2970,2865,2733,
+2598,2490,2431,2426,2467,2540,2623,2694,2737,2753,2757,2757,2750,2726,2685,2635,2588,2544,2493,2434,2376,
+2330,2296,2259,2208,2148,2091,2045,1998,1935,1846,1744,1655,1603,1592,1609,1635,1655,1670,1688,1715,1747,
+1773,1782,1774,1752,1722,1690,1663,1647,1633,1600,1527,1419,1307,1223,1171,1121,1042,933,825,752,722,
+713,698,653,564,423,232,15,-193,-365,-494,-589,-654,-682,-667,-621,-573,-550,-559,-592,-637,-694,
+-765,-853,-950,-1046,-1130,-1198,-1248,-1285,-1315,-1344,-1374,-1403,-1429,-1453,-1474,-1499,-1544,-1630,-1770,-1955,-2152,
+-2330,-2476,-2595,-2699,-2788,-2854,-2897,-2930,-2967,-3008,-3042,-3065,-3087,-3124,-3185,-3258,-3330,-3397,-3465,-3536,-3606,
+-3663,-3705,-3735,-3758,-3773,-3773,-3763,-3766,-3811,-3909,-4035,-4132,-4145,-4054,-3883,-3683,-3494,-3333,-3204,-3112,-3070,
+-3076,-3101,-3109,-3088,-3060,-3059,-3091,-3122,-3122,-3096,-3092,-3146,-3245,-3322,-3318,-3225,-3083,-2941,-2815,-2684,-2530,
+-2363,-2222,-2150,-2162,-2238,-2340,-2435,-2511,-2588,-2699,-2866,-3081,-3307,-3501,-3644,-3752,-3861,-3996,-4155,-4302,-4392,
+-4395,-4316,-4192,-4070,-3983,-3934,-3907,-3880,-3845,-3804,-3764,-3730,-3709,-3703,-3713,-3730,-3743,-3749,-3756,-3775,-3806,
+-3838,-3858,-3870,-3891,-3934,-3997,-4062,-4117,-4160,-4200,-4244,-4287,-4324,-4353,-4378,-4405,-4432,-4460,-4493,-4539,-4600,
+-4668,-4734,-4791,-4846,-4908,-4984,-5074,-5170,-5261,-5338,-5395,-5427,-5437,-5429,-5409,-5383,-5359,-5339,-5326,-5321,-5319,
+-5306,-5267,-5187,-5067,-4928,-4803,-4717,-4675,-4663,-4664,-4669,-4669,-4653,-4607,-4532,-4451,-4395,-4377,-4379,-4373,-4354,
+-4341,-4356,-4394,-4425,-4421,-4383,-4334,-4291,-4243,-4170,-4071,-3969,-3892,-3847,-3814,-3767,-3704,-3643,-3603,-3577,-3543,
+-3480,-3391,-3300,-3226,-3172,-3125,-3075,-3027,-2984,-2939,-2871,-2768,-2640,-2516,-2413,-2320,-2212,-2078,-1937,-1817,-1730,
+-1665,-1610,-1573,-1572,-1611,-1658,-1673,-1634,-1557,-1468,-1383,-1294,-1192,-1076,-954,-831,-705,-572,-440,-320,-216,
+-125,-40,39,111,178,251,340,446,557,658,739,802,855,911,982,1064,1147,1216,1269,1316,1372,
+1437,1505,1570,1635,1709,1790,1866,1928,1982,2044,2119,2197,2264,2319,2377,2450,2530,2601,2654,2702,2762,
+2831,2886,2897,2860,2795,2732,2693,2685,2704,2741,2781,2818,2850,2892,2956,3043,3138,3219,3270,3286,3275,
+3255,3249,3268,3308,3346,3366,3377,3410,3486,3595,3704,3792,3868,3956,4060,4155,4213,4232,4236,4242,4243,
+4223,4186,4158,4149,4128,4032,3823,3523,3192,2876,2575,2264,1948,1676,1510,1480,1562,1706,1865,2011,2128,
+2205,2239,2242,2233,2226,2220,2206,2180,2146,2106,2061,2008,1949,1889,1833,1780,1723,1659,1594,1533,1482,
+1436,1390,1341,1288,1232,1176,1126,1081,1041,1000,954,903,849,794,737,680,627,583,549,519,485,
+444,397,351,310,273,237,204,179,164,160,165,171,173,160,129,80,21,-41,-101,-156,-208,
+-257,-302,-340,-375,-408,-442,-474,-502,-526,-549,-576,-606,-640,-672,-704,-733,-760,-785,-806,-822,-837,
+-852,-869,-889,-908,-923,-931,-935,-941,-951,-962,-967,-968,-975,-1003,-1051,-1103,-1147,-1186,-1232,-1288,-1328,
+-1318,-1249,-1159,-1104,-1116,-1179,-1247,-1283,-1283,-1262,-1232,-1195,-1157,-1130,-1122,-1127,-1123,-1100,-1066,-1045,-1049,
+-1068,-1081,-1078,-1064,-1053,-1051,-1056,-1060,-1064,-1068,-1077,-1095,-1121,-1148,-1167,-1173,-1167,-1159,-1157,-1160,-1160,
+-1154,-1148,-1156,-1181,-1214,-1241,-1253,-1249,-1236,-1221,-1210,-1207,-1216,-1235,-1258,-1278,-1293,-1305,-1314,-1320,-1323,
+-1321,-1319,-1316,-1313,-1309,-1305,-1304,-1306,-1310,-1313,-1317,-1323,-1330,-1335,-1338,-1339,-1339,-1340,-1341,-1344,-1350,
+-1360,-1372,-1384,-1393,-1399,-1402,-1400,-1395,-1387,-1379,-1372,-1365,-1358,-1351,-1344,-1337,-1332,-1331,-1337,-1349,-1361,
+-1370,-1377,-1385,-1397,-1413,-1428,-1439,-1449,-1459,-1470,-1478,-1484,-1490,-1500,-1513,-1524,-1531,-1537,-1543,-1551,-1558,
+-1565,-1573,-1584,-1599,-1615,-1631,-1649,-1670,-1693,-1712,-1726,-1738,-1755,-1779,-1805,-1831,-1859,-1892,-1929,-1964,-1993,
+-2013,-2029,-2044,-2058,-2073,-2088,-2108,-2133,-2160,-2183,-2198,-2208,-2218,-2235,-2263,-2299,-2337,-2371,-2398,-2421,-2446,
+-2472,-2500,-2525,-2546,-2565,-2585,-2610,-2639,-2674,-2716,-2765,-2817,-2868,-2913,-2950,-2984,-3016,-3047,-3074,-3098,-3119,
+-3141,-3166,-3194,-3222,-3251,-3283,-3318,-3352,-3378,-3394,-3404,-3416,-3438,-3469,-3506,-3540,-3570,-3593,-3615,-3636,-3658,
+-3678,-3694,-3705,-3713,-3720,-3728,-3738,-3751,-3770,-3796,-3826,-3855,-3876,-3888,-3893,-3894,-3895,-3894,-3894,-3897,-3904,
+-3914,-3928,-3944,-3961,-3977,-3988,-3994,-3996,-3997,-4001,-4003,-4002,-3998,-3996,-3999,-4004,-4007,-4005,-4000,-3995,-3992,
+-3990,-3986,-3981,-3972,-3960,-3943,-3922,-3897,-3867,-3836,-3808,-3791,-3786,-3787,-3774,-3729,-3640,-3520,-3397,-3305,-3266,
+-3276,-3310,-3338,-3346,-3333,-3303,-3242,-3132,-2975,-2811,-2700,-2678,-2733,-2814,-2876,-2909,-2927,-2934,-2915,-2854,-2766,
+-2692,-2671,-2709,-2772,-2818,-2815,-2756,-2659,-2554,-2472,-2425,-2397,-2363,-2316,-2281,-2289,-2335,-2370,-2343,-2250,-2146,
+-2086,-2079,-2082,-2059,-2020,-2009,-2048,-2114,-2159,-2163,-2138,-2110,-2079,-2029,-1957,-1887,-1843,-1825,-1807,-1775,-1742,
+-1742,-1785,-1846,-1892,-1916,-1945,-2014,-2124,-2247,-2350,-2424,-2485,-2549,-2621,-2689,-2743,-2781,-2811,-2834,-2853,-2869,
+-2883,-2896,-2906,-2908,-2900,-2884,-2867,-2856,-2858,-2872,-2896,-2917,-2925,-2920,-2914,-2925,-2955,-2992,-3015,-3012,-2989,
+-2963,-2946,-2942,-2944,-2949,-2956,-2966,-2975,-2979,-2977,-2972,-2969,-2972,-2980,-2989,-2995,-2994,-2987,-2976,-2963,-2948,
+-2931,-2916,-2908,-2911,-2926,-2949,-2975,-3001,-3026,-3046,-3057,-3059,-3059,-3070,-3099,-3134,-3152,-3134,-3087,-3041,-3028,
+-3061,-3120,-3177,-3212,-3228,-3238,-3245,-3243,-3228,-3209,-3211,-3248,-3312,-3375,-3412,-3421,-3408,-3381,-3337,-3281,-3233,
+-3222,-3264,-3342,-3423,-3484,-3530,-3575,-3628,-3685,-3743,-3812,-3894,-3974,-4013,-3993,-3934,-3896,-3927,-4025,-4146,-4239,
+-4287,-4307,-4322,-4337,-4346,-4343,-4337,-4338,-4349,-4357,-4352,-4334,-4312,-4296,-4287,-4284,-4280,-4275,-4266,-4252,-4236,
+-4218,-4200,-4180,-4154,-4120,-4081,-4042,-4004,-3967,-3924,-3877,-3829,-3786,-3749,-3719,-3692,-3666,-3638,-3607,-3573,-3533,
+-3489,-3443,-3401,-3367,-3334,-3295,-3243,-3181,-3124,-3084,-3063,-3047,-3022,-2978,-2921,-2861,-2805,-2756,-2713,-2677,-2647,
+-2619,-2588,-2550,-2504,-2456,-2409,-2364,-2318,-2268,-2210,-2148,-2083,-2016,-1948,-1876,-1800,-1723,-1651,-1584,-1515,-1437,
+-1350,-1263,-1188,-1124,-1062,-988,-901,-808,-718,-635,-551,-462,-372,-291,-221,-158,-94,-24,49,125,205,
+291,383,475,561,640,715,792,875,961,1049,1137,1224,1308,1393,1479,1566,1651,1734,1819,1910,2008,
+2107,2202,2288,2369,2450,2529,2606,2682,2760,2848,2941,3034,3118,3193,3265,3340,3419,3497,3573,3650,3729,
+3812,3895,3978,4059,4137,4210,4277,4342,4410,4481,4549,4609,4658,4701,4741,4776,4806,4829,4847,4860,4868,
+4872,4876,4886,4902,4918,4927,4925,4918,4916,4922,4938,4960,4983,5001,5009,5009,5006,5009,5014,5016,5010,
+5000,4999,5015,5042,5065,5066,5035,4973,4892,4811,4750,4716,4701,4685,4654,4615,4588,4586,4597,4597,4571,
+4526,4482,4448,4421,4389,4353,4320,4298,4286,4279,4276,4279,4291,4313,4345,4391,4453,4524,4586,4631,4665,
+4711,4788,4894,5006,5092,5129,5109,5044,4965,4907,4891,4905,4916,4905,4890,4914,5003,5129,5212,5183,5039,
+4846,4693,4634,4656,4712,4757,4785,4810,4845,4885,4909,4896,4846,4775,4701,4637,4581,4530,4490,4472,4487,
+4530,4582,4623,4650,4672,4701,4741,4784,4817,4835,4843,4846,4843,4826,4791,4739,4682,4634,4606,4596,4596,
+4601,4609,4655,4689,4729,4766,4790,4796,4789,4777,4769,4763,4753,4735,4710,4680,4651,4623,4594,4564,4534,
+4508,4490,4482,4478,4472,4457,4433,4412,4402,4403,4405,4396,4374,4347,4321,4296,4271,4245,4219,4192,4157,
+4108,4054,4012,3993,3994,4004,4009,4006,3995,3973,3938,3892,3845,3806,3777,3757,3754,3781,3835,3878,3849,
+3713,3490,3253,3075,2981,2944,2920,2884,2844,2820,2819,2832,2842,2832,2785,2688,2546,2379,2213,2063,1920,
+1767,1601,1448,1343,1308,1340,1423,1550,1723,1943,2195,2450,2678,2867,3020,3144,3238,3299,3326,3324,3304,
+3268,3212,3130,3026,2909,2789,2657,2488,2257,1972,1693,1513,1503,1654,1874,2039,2074,1994,1876,1795,1774,
+1799,1858,1967,2146,2380,2617,2795,2886,2900,2862,2785,2674,2546,2431,2358,2336,2353,2394,2453,2526,2601,
+2659,2692,2706,2711,2708,2692,2657,2610,2562,2516,2466,2411,2361,2324,2295,2259,2204,2138,2076,2025,1973,
+1900,1800,1689,1593,1530,1502,1499,1508,1518,1528,1539,1551,1564,1576,1585,1594,1605,1616,1622,1620,1610,
+1588,1547,1477,1383,1288,1213,1164,1122,1065,981,880,778,688,624,597,601,604,559,437,249,44,
+-133,-265,-358,-421,-449,-442,-418,-409,-441,-510,-591,-661,-717,-772,-840,-924,-1015,-1102,-1175,-1228,-1262,
+-1285,-1305,-1332,-1369,-1412,-1454,-1487,-1515,-1554,-1625,-1740,-1888,-2044,-2190,-2324,-2452,-2574,-2675,-2745,-2787,-2821,
+-2858,-2897,-2926,-2944,-2962,-2992,-3033,-3079,-3128,-3185,-3252,-3318,-3368,-3403,-3436,-3477,-3516,-3526,-3493,-3436,-3401,
+-3435,-3544,-3691,-3813,-3851,-3783,-3629,-3432,-3238,-3072,-2948,-2878,-2873,-2929,-3013,-3076,-3091,-3070,-3050,-3055,-3071,
+-3073,-3060,-3067,-3123,-3210,-3270,-3250,-3151,-3020,-2903,-2801,-2684,-2526,-2343,-2185,-2104,-2113,-2191,-2294,-2385,-2448,
+-2492,-2544,-2632,-2766,-2930,-3091,-3222,-3322,-3413,-3525,-3662,-3801,-3895,-3906,-3828,-3694,-3556,-3455,-3404,-3392,-3403,
+-3430,-3468,-3513,-3556,-3591,-3618,-3646,-3676,-3704,-3722,-3732,-3742,-3756,-3772,-3787,-3804,-3835,-3886,-3948,-4006,-4049,
+-4083,-4117,-4157,-4196,-4229,-4254,-4279,-4308,-4338,-4365,-4389,-4418,-4456,-4499,-4539,-4570,-4597,-4627,-4669,-4728,-4806,
+-4896,-4985,-5055,-5094,-5102,-5089,-5070,-5052,-5041,-5037,-5045,-5063,-5089,-5109,-5104,-5056,-4958,-4826,-4692,-4592,-4545,
+-4549,-4582,-4626,-4660,-4667,-4634,-4559,-4464,-4383,-4339,-4329,-4331,-4330,-4335,-4358,-4396,-4421,-4409,-4358,-4292,-4235,
+-4184,-4121,-4033,-3932,-3843,-3781,-3740,-3701,-3659,-3621,-3597,-3579,-3546,-3480,-3389,-3295,-3220,-3169,-3126,-3077,-3020,
+-2963,-2905,-2839,-2757,-2662,-2566,-2476,-2379,-2262,-2123,-1981,-1859,-1762,-1683,-1618,-1580,-1584,-1622,-1664,-1671,-1630,
+-1555,-1468,-1380,-1285,-1177,-1060,-939,-813,-679,-540,-407,-291,-194,-105,-19,64,139,206,273,351,443,
+546,647,737,809,867,923,989,1067,1145,1209,1256,1301,1357,1428,1503,1575,1646,1722,1802,1873,1932,
+1988,2056,2139,2222,2291,2346,2404,2478,2558,2626,2677,2726,2790,2865,2922,2932,2891,2818,2747,2704,2698,
+2726,2774,2822,2859,2888,2926,2991,3082,3182,3262,3307,3315,3297,3276,3275,3302,3346,3382,3396,3402,3437,
+3526,3656,3788,3890,3962,4029,4105,4178,4230,4252,4252,4231,4186,4119,4054,4019,4009,3976,3853,3615,3297,
+2961,2646,2349,2054,1778,1572,1486,1527,1659,1824,1980,2102,2181,2219,2227,2223,2222,2226,2225,2210,2182,
+2148,2114,2075,2027,1970,1910,1854,1800,1744,1684,1622,1561,1502,1446,1392,1340,1287,1233,1178,1127,1083,
+1045,1007,962,910,856,799,741,681,625,579,544,516,487,453,415,376,337,298,260,227,204,
+190,185,184,185,183,169,138,90,28,-36,-97,-153,-205,-255,-304,-348,-386,-418,-447,-474,-501,
+-529,-559,-590,-621,-649,-675,-702,-731,-760,-786,-807,-826,-846,-868,-892,-913,-931,-944,-954,-960,-965,
+-968,-971,-970,-966,-969,-989,-1028,-1074,-1117,-1158,-1208,-1268,-1313,-1309,-1244,-1155,-1099,-1112,-1176,-1244,-1277,
+-1272,-1249,-1220,-1186,-1146,-1112,-1100,-1106,-1112,-1096,-1065,-1041,-1043,-1067,-1089,-1092,-1077,-1058,-1047,-1043,-1045,
+-1047,-1052,-1060,-1073,-1090,-1110,-1127,-1138,-1141,-1142,-1144,-1147,-1146,-1139,-1133,-1138,-1158,-1186,-1210,-1222,-1220,
+-1210,-1197,-1186,-1183,-1189,-1203,-1222,-1242,-1264,-1285,-1304,-1315,-1318,-1318,-1318,-1319,-1318,-1314,-1310,-1311,-1317,
+-1326,-1334,-1340,-1346,-1352,-1356,-1359,-1360,-1361,-1359,-1357,-1357,-1363,-1376,-1389,-1398,-1402,-1402,-1401,-1396,-1385,
+-1369,-1352,-1340,-1333,-1331,-1329,-1326,-1324,-1323,-1327,-1338,-1354,-1370,-1381,-1387,-1394,-1407,-1424,-1438,-1446,-1451,
+-1459,-1471,-1483,-1491,-1495,-1502,-1513,-1526,-1535,-1540,-1544,-1551,-1560,-1569,-1578,-1589,-1602,-1617,-1632,-1650,-1671,
+-1690,-1705,-1718,-1731,-1750,-1776,-1804,-1832,-1860,-1892,-1926,-1959,-1986,-2007,-2024,-2041,-2058,-2074,-2090,-2109,-2130,
+-2152,-2169,-2181,-2190,-2202,-2223,-2257,-2297,-2336,-2367,-2388,-2405,-2425,-2451,-2481,-2510,-2533,-2551,-2568,-2590,-2620,
+-2659,-2706,-2756,-2807,-2854,-2897,-2934,-2968,-3001,-3033,-3062,-3085,-3105,-3126,-3151,-3180,-3211,-3241,-3269,-3299,-3328,
+-3354,-3372,-3386,-3403,-3426,-3458,-3493,-3524,-3548,-3569,-3589,-3611,-3633,-3654,-3672,-3686,-3697,-3708,-3720,-3734,-3751,
+-3773,-3803,-3836,-3866,-3887,-3896,-3898,-3896,-3895,-3895,-3898,-3905,-3917,-3932,-3949,-3964,-3978,-3990,-3999,-4004,-4005,
+-4005,-4006,-4008,-4009,-4009,-4011,-4017,-4024,-4029,-4028,-4024,-4021,-4019,-4019,-4018,-4013,-4004,-3989,-3969,-3944,-3915,
+-3883,-3848,-3814,-3788,-3777,-3779,-3778,-3750,-3678,-3565,-3436,-3330,-3278,-3282,-3319,-3356,-3373,-3373,-3357,-3314,-3221,
+-3073,-2909,-2787,-2752,-2793,-2864,-2922,-2958,-2981,-2993,-2971,-2902,-2804,-2726,-2710,-2756,-2825,-2870,-2860,-2797,-2699,
+-2595,-2513,-2463,-2434,-2402,-2359,-2325,-2327,-2363,-2392,-2368,-2284,-2186,-2121,-2100,-2085,-2048,-2000,-1981,-2017,-2088,
+-2146,-2163,-2144,-2110,-2070,-2024,-1975,-1934,-1912,-1894,-1861,-1811,-1771,-1773,-1823,-1889,-1936,-1960,-1989,-2054,-2159,
+-2278,-2381,-2461,-2529,-2597,-2664,-2721,-2765,-2799,-2830,-2861,-2888,-2909,-2923,-2929,-2926,-2911,-2885,-2856,-2833,-2823,
+-2830,-2852,-2881,-2904,-2911,-2907,-2904,-2920,-2956,-2994,-3013,-3003,-2974,-2943,-2923,-2915,-2912,-2913,-2920,-2934,-2949,
+-2955,-2952,-2943,-2935,-2932,-2933,-2936,-2940,-2945,-2949,-2951,-2948,-2941,-2931,-2922,-2916,-2915,-2922,-2937,-2958,-2982,
+-3005,-3019,-3024,-3025,-3031,-3050,-3077,-3097,-3096,-3070,-3039,-3027,-3051,-3103,-3160,-3203,-3227,-3239,-3247,-3249,-3239,
+-3221,-3212,-3234,-3293,-3368,-3431,-3460,-3452,-3416,-3359,-3288,-3221,-3185,-3206,-3282,-3386,-3480,-3545,-3588,-3625,-3665,
+-3708,-3760,-3830,-3920,-4004,-4044,-4025,-3973,-3945,-3983,-4078,-4186,-4266,-4312,-4339,-4364,-4384,-4389,-4382,-4376,-4382,
+-4396,-4402,-4389,-4363,-4334,-4313,-4301,-4293,-4287,-4283,-4277,-4266,-4250,-4231,-4210,-4189,-4163,-4131,-4096,-4061,-4027,
+-3990,-3946,-3897,-3849,-3807,-3774,-3748,-3727,-3706,-3681,-3651,-3618,-3582,-3542,-3498,-3452,-3409,-3367,-3324,-3272,-3211,
+-3151,-3106,-3083,-3070,-3050,-3009,-2948,-2884,-2831,-2794,-2766,-2739,-2709,-2677,-2644,-2609,-2567,-2516,-2461,-2407,-2358,
+-2309,-2254,-2191,-2122,-2054,-1987,-1918,-1845,-1770,-1702,-1641,-1579,-1500,-1401,-1295,-1200,-1128,-1071,-1011,-936,-848,
+-756,-667,-578,-488,-404,-332,-274,-221,-162,-89,-9,73,156,244,339,438,531,615,691,766,847,
+932,1021,1109,1193,1275,1357,1440,1524,1609,1695,1786,1882,1983,2084,2178,2263,2343,2422,2500,2576,2650,
+2727,2811,2901,2989,3072,3152,3232,3315,3396,3471,3543,3619,3704,3794,3884,3967,4046,4122,4193,4259,4319,
+4380,4443,4506,4563,4611,4651,4683,4711,4733,4748,4759,4770,4782,4795,4811,4829,4848,4863,4870,4869,4865,
+4863,4865,4874,4887,4902,4916,4924,4926,4927,4930,4933,4928,4913,4894,4884,4893,4914,4936,4947,4939,4910,
+4863,4802,4741,4692,4657,4626,4588,4541,4499,4475,4466,4458,4437,4402,4364,4327,4293,4258,4224,4199,4185,
+4183,4187,4196,4212,4236,4268,4308,4359,4425,4496,4559,4608,4654,4713,4795,4887,4964,5000,4985,4924,4837,
+4754,4707,4709,4748,4791,4818,4837,4873,4933,4984,4970,4858,4675,4498,4395,4387,4438,4496,4536,4569,4618,
+4689,4758,4785,4747,4654,4542,4450,4392,4361,4339,4320,4311,4322,4350,4380,4403,4427,4470,4541,4627,4701,
+4744,4756,4755,4757,4762,4759,4738,4701,4661,4628,4611,4608,4615,4630,4655,4746,4768,4787,4800,4810,4817,
+4818,4810,4788,4754,4712,4669,4626,4580,4525,4464,4406,4364,4344,4340,4344,4348,4349,4343,4333,4321,4314,
+4317,4329,4338,4336,4321,4302,4285,4267,4243,4208,4165,4116,4061,4003,3953,3922,3918,3932,3946,3952,3948,
+3941,3926,3896,3850,3796,3748,3712,3687,3677,3693,3735,3779,3776,3685,3508,3294,3105,2981,2917,2886,2862,
+2842,2833,2839,2850,2850,2822,2757,2651,2513,2357,2202,2053,1904,1747,1581,1419,1282,1185,1136,1143,1218,
+1370,1595,1864,2139,2386,2590,2755,2887,2989,3056,3087,3084,3055,3004,2928,2828,2708,2582,2462,2337,2177,
+1947,1648,1342,1132,1101,1244,1460,1613,1623,1517,1393,1339,1374,1458,1559,1682,1857,2088,2330,2524,2634,
+2670,2658,2616,2551,2473,2403,2358,2336,2325,2325,2351,2420,2522,2622,2685,2705,2698,2679,2654,2619,2575,
+2530,2487,2444,2397,2352,2313,2277,2230,2167,2097,2036,1986,1933,1857,1757,1648,1553,1482,1433,1399,1375,
+1358,1344,1333,1325,1322,1328,1344,1370,1407,1453,1498,1533,1547,1536,1497,1431,1348,1266,1199,1151,1112,
+1066,1002,912,797,667,549,477,466,490,496,442,330,199,89,8,-60,-127,-186,-227,-260,-311,
+-398,-512,-624,-707,-760,-803,-856,-926,-1008,-1087,-1151,-1193,-1217,-1231,-1248,-1277,-1322,-1379,-1436,-1485,-1526,
+-1570,-1634,-1721,-1825,-1931,-2038,-2156,-2288,-2423,-2537,-2615,-2665,-2709,-2756,-2797,-2825,-2839,-2851,-2864,-2873,-2875,
+-2883,-2911,-2955,-2993,-3008,-3011,-3033,-3087,-3146,-3163,-3119,-3046,-3009,-3055,-3183,-3346,-3484,-3546,-3511,-3389,-3216,
+-3033,-2876,-2767,-2721,-2748,-2839,-2959,-3052,-3079,-3046,-2995,-2967,-2965,-2969,-2969,-2983,-3032,-3103,-3149,-3129,-3048,
+-2951,-2874,-2808,-2713,-2564,-2381,-2219,-2127,-2117,-2171,-2255,-2342,-2409,-2448,-2465,-2482,-2530,-2623,-2750,-2880,-2987,
+-3065,-3132,-3208,-3295,-3371,-3408,-3389,-3327,-3257,-3208,-3194,-3208,-3241,-3290,-3354,-3429,-3501,-3556,-3592,-3617,-3639,
+-3661,-3683,-3703,-3726,-3751,-3777,-3798,-3818,-3842,-3877,-3918,-3956,-3989,-4021,-4058,-4100,-4138,-4165,-4185,-4208,-4237,
+-4265,-4286,-4303,-4323,-4354,-4389,-4420,-4439,-4448,-4454,-4466,-4490,-4535,-4600,-4672,-4732,-4763,-4762,-4742,-4719,-4700,
+-4689,-4685,-4695,-4721,-4759,-4797,-4816,-4799,-4740,-4643,-4533,-4441,-4395,-4401,-4447,-4511,-4570,-4604,-4593,-4531,-4435,
+-4338,-4274,-4251,-4255,-4265,-4278,-4301,-4333,-4356,-4345,-4295,-4225,-4164,-4117,-4070,-4003,-3914,-3819,-3740,-3685,-3649,
+-3626,-3613,-3605,-3592,-3555,-3486,-3394,-3301,-3228,-3178,-3135,-3083,-3018,-2948,-2883,-2825,-2768,-2705,-2632,-2543,-2432,
+-2302,-2162,-2028,-1909,-1805,-1714,-1642,-1607,-1615,-1651,-1678,-1670,-1622,-1547,-1461,-1368,-1267,-1159,-1048,-935,-812,
+-675,-531,-397,-286,-193,-107,-19,70,155,230,297,362,430,506,592,682,767,840,904,970,1045,
+1121,1188,1242,1294,1356,1431,1511,1588,1662,1738,1814,1883,1943,2001,2072,2155,2236,2304,2363,2429,2509,
+2591,2657,2708,2760,2829,2905,2960,2964,2916,2841,2771,2734,2740,2784,2845,2903,2941,2967,3000,3058,3140,
+3226,3291,3323,3326,3314,3306,3318,3353,3399,3432,3441,3445,3478,3564,3690,3817,3915,3982,4040,4106,4174,
+4232,4266,4269,4230,4143,4024,3914,3848,3818,3768,3633,3391,3078,2752,2447,2162,1897,1675,1542,1526,1616,
+1768,1934,2082,2191,2254,2271,2258,2240,2231,2229,2223,2202,2171,2140,2111,2079,2039,1989,1936,1880,1822,
+1760,1698,1638,1581,1522,1461,1399,1341,1284,1227,1170,1119,1077,1043,1008,966,916,862,806,748,686,
+628,580,543,516,491,464,437,406,371,330,287,251,226,210,200,191,181,169,152,124,79,
+22,-41,-103,-158,-207,-254,-300,-344,-383,-416,-443,-470,-499,-532,-566,-598,-624,-647,-670,-699,-734,
+-769,-799,-821,-841,-865,-892,-918,-939,-954,-968,-982,-991,-991,-985,-978,-976,-977,-983,-997,-1021,-1055,
+-1095,-1141,-1193,-1242,-1259,-1216,-1113,-1001,-949,-993,-1105,-1215,-1270,-1264,-1229,-1196,-1167,-1133,-1099,-1079,-1080,
+-1091,-1089,-1068,-1045,-1041,-1058,-1080,-1088,-1079,-1059,-1041,-1028,-1023,-1026,-1035,-1047,-1059,-1069,-1079,-1092,-1105,
+-1117,-1125,-1130,-1131,-1129,-1125,-1122,-1125,-1136,-1150,-1162,-1171,-1177,-1178,-1175,-1168,-1163,-1165,-1178,-1198,-1222,
+-1248,-1272,-1291,-1302,-1307,-1311,-1316,-1320,-1321,-1319,-1317,-1321,-1331,-1342,-1351,-1356,-1358,-1358,-1356,-1356,-1359,
+-1363,-1365,-1361,-1358,-1362,-1373,-1385,-1390,-1388,-1384,-1382,-1378,-1367,-1348,-1328,-1314,-1308,-1308,-1309,-1313,-1317,
+-1324,-1333,-1346,-1361,-1376,-1384,-1388,-1395,-1409,-1428,-1444,-1452,-1454,-1461,-1474,-1489,-1498,-1501,-1506,-1514,-1526,
+-1536,-1543,-1548,-1556,-1566,-1575,-1583,-1593,-1604,-1618,-1634,-1651,-1669,-1685,-1698,-1710,-1724,-1744,-1770,-1799,-1829,
+-1858,-1888,-1919,-1948,-1972,-1991,-2007,-2024,-2044,-2065,-2086,-2107,-2127,-2145,-2160,-2172,-2184,-2199,-2222,-2255,-2293,
+-2330,-2358,-2378,-2394,-2413,-2440,-2472,-2501,-2524,-2541,-2556,-2577,-2609,-2653,-2705,-2758,-2806,-2847,-2881,-2912,-2943,
+-2975,-3007,-3038,-3063,-3084,-3104,-3128,-3158,-3191,-3221,-3247,-3273,-3299,-3324,-3347,-3367,-3389,-3415,-3444,-3473,-3498,
+-3518,-3538,-3559,-3582,-3606,-3629,-3651,-3670,-3686,-3700,-3714,-3729,-3749,-3775,-3806,-3839,-3869,-3889,-3898,-3899,-3897,
+-3898,-3901,-3908,-3919,-3935,-3954,-3972,-3986,-3996,-4003,-4008,-4010,-4010,-4009,-4011,-4014,-4018,-4023,-4029,-4037,-4044,
+-4048,-4047,-4045,-4044,-4045,-4046,-4044,-4040,-4031,-4017,-3995,-3968,-3937,-3903,-3868,-3833,-3803,-3787,-3785,-3789,-3777,
+-3728,-3638,-3522,-3414,-3345,-3325,-3339,-3365,-3389,-3408,-3417,-3394,-3312,-3168,-3003,-2882,-2849,-2891,-2959,-3007,-3029,
+-3043,-3051,-3032,-2970,-2879,-2805,-2787,-2823,-2874,-2897,-2873,-2812,-2730,-2645,-2570,-2513,-2470,-2429,-2384,-2349,-2347,
+-2379,-2413,-2408,-2349,-2264,-2192,-2150,-2120,-2082,-2040,-2019,-2037,-2083,-2127,-2148,-2143,-2119,-2084,-2042,-2004,-1979,
+-1961,-1935,-1886,-1825,-1788,-1803,-1867,-1944,-2000,-2030,-2060,-2115,-2201,-2303,-2401,-2490,-2571,-2646,-2709,-2755,-2785,
+-2808,-2835,-2867,-2898,-2923,-2939,-2944,-2935,-2911,-2874,-2835,-2806,-2793,-2802,-2827,-2858,-2884,-2896,-2898,-2904,-2925,
+-2963,-3001,-3021,-3013,-2986,-2955,-2929,-2912,-2900,-2896,-2903,-2916,-2927,-2928,-2920,-2908,-2901,-2899,-2899,-2900,-2904,
+-2911,-2918,-2918,-2911,-2904,-2903,-2910,-2919,-2923,-2923,-2927,-2938,-2955,-2970,-2978,-2979,-2983,-2998,-3022,-3044,-3051,
+-3040,-3025,-3027,-3058,-3110,-3160,-3189,-3194,-3188,-3185,-3190,-3197,-3201,-3207,-3228,-3272,-3331,-3385,-3415,-3414,-3386,
+-3340,-3282,-3221,-3177,-3177,-3233,-3333,-3445,-3537,-3599,-3641,-3677,-3710,-3746,-3793,-3863,-3951,-4029,-4062,-4041,-4001,
+-3991,-4039,-4131,-4226,-4297,-4345,-4384,-4420,-4444,-4448,-4438,-4430,-4434,-4443,-4443,-4426,-4398,-4369,-4345,-4326,-4311,
+-4303,-4302,-4302,-4297,-4281,-4258,-4232,-4205,-4177,-4148,-4118,-4087,-4053,-4013,-3965,-3915,-3867,-3826,-3795,-3771,-3752,
+-3733,-3710,-3682,-3651,-3618,-3584,-3544,-3496,-3444,-3393,-3347,-3301,-3247,-3189,-3138,-3102,-3081,-3061,-3029,-2984,-2935,
+-2896,-2868,-2841,-2807,-2767,-2727,-2696,-2669,-2636,-2585,-2521,-2454,-2395,-2344,-2292,-2232,-2165,-2098,-2034,-1968,-1894,
+-1817,-1747,-1689,-1636,-1565,-1464,-1342,-1224,-1131,-1065,-1010,-949,-878,-799,-717,-631,-542,-458,-389,-339,-294,
+-238,-162,-70,24,115,205,297,392,487,575,656,735,814,897,983,1069,1153,1236,1318,1402,1489,
+1579,1672,1769,1867,1966,2062,2151,2233,2313,2394,2475,2554,2631,2709,2791,2876,2959,3039,3121,3206,3292,
+3373,3446,3515,3591,3677,3769,3857,3938,4015,4091,4165,4231,4287,4339,4395,4455,4513,4562,4598,4624,4642,
+4654,4663,4672,4685,4704,4727,4750,4769,4783,4793,4799,4805,4813,4820,4825,4827,4827,4831,4838,4845,4850,
+4852,4854,4854,4845,4824,4797,4777,4773,4785,4802,4814,4816,4804,4777,4735,4685,4637,4598,4564,4523,4472,
+4420,4378,4352,4337,4321,4299,4270,4237,4202,4168,4140,4125,4124,4134,4151,4174,4202,4236,4275,4321,4377,
+4443,4510,4568,4616,4665,4727,4800,4863,4893,4877,4821,4738,4649,4576,4537,4540,4573,4610,4635,4653,4674,
+4696,4692,4632,4513,4376,4274,4242,4269,4317,4355,4381,4416,4475,4550,4607,4609,4540,4421,4296,4205,4164,
+4158,4162,4163,4166,4182,4206,4227,4241,4265,4324,4427,4552,4659,4723,4746,4754,4765,4779,4782,4766,4736,
+4706,4688,4683,4690,4703,4723,4746,4847,4835,4811,4783,4767,4768,4777,4776,4751,4701,4639,4581,4530,4478,
+4414,4338,4263,4205,4172,4160,4159,4166,4181,4204,4229,4247,4256,4259,4262,4262,4258,4248,4238,4228,4214,
+4187,4142,4082,4015,3951,3897,3860,3848,3856,3874,3884,3884,3879,3876,3872,3854,3814,3759,3703,3657,3625,
+3607,3609,3636,3674,3689,3640,3515,3338,3157,3015,2924,2875,2849,2837,2837,2847,2856,2847,2808,2733,2630,
+2506,2370,2228,2081,1929,1773,1617,1464,1316,1179,1065,998,1004,1104,1294,1547,1823,2086,2316,2506,2656,
+2766,2835,2865,2860,2821,2751,2647,2515,2366,2220,2092,1973,1830,1627,1359,1075,871,824,936,1119,1249,
+1251,1150,1040,1005,1062,1172,1300,1449,1651,1909,2178,2391,2514,2561,2568,2562,2544,2511,2467,2417,2360,
+2297,2247,2250,2332,2475,2620,2708,2723,2692,2648,2609,2570,2526,2483,2444,2410,2374,2336,2294,2245,2184,
+2110,2036,1974,1924,1870,1795,1701,1604,1518,1443,1374,1308,1249,1200,1158,1122,1095,1085,1096,1122,1160,
+1207,1267,1338,1407,1457,1473,1452,1401,1334,1265,1203,1151,1103,1053,996,923,826,701,564,448,380,
+356,345,315,264,215,184,161,118,41,-55,-150,-233,-319,-420,-533,-639,-719,-774,-822,-881,-955,
+-1036,-1108,-1159,-1186,-1197,-1207,-1227,-1262,-1310,-1366,-1421,-1470,-1513,-1555,-1607,-1671,-1744,-1822,-1911,-2022,-2157,
+-2297,-2414,-2498,-2561,-2619,-2678,-2723,-2747,-2752,-2748,-2733,-2702,-2658,-2626,-2624,-2645,-2657,-2641,-2619,-2632,-2692,
+-2758,-2779,-2739,-2684,-2681,-2764,-2912,-3072,-3197,-3259,-3248,-3168,-3037,-2889,-2760,-2679,-2664,-2720,-2836,-2971,-3067,
+-3084,-3029,-2954,-2910,-2905,-2917,-2922,-2931,-2963,-3014,-3048,-3030,-2963,-2886,-2834,-2795,-2728,-2605,-2439,-2279,-2165,
+-2112,-2111,-2149,-2214,-2285,-2335,-2346,-2329,-2321,-2362,-2461,-2592,-2709,-2781,-2812,-2830,-2864,-2923,-2995,-3058,-3104,
+-3138,-3170,-3208,-3249,-3288,-3327,-3373,-3427,-3485,-3535,-3570,-3590,-3604,-3619,-3639,-3667,-3703,-3742,-3777,-3805,-3825,
+-3843,-3865,-3892,-3919,-3948,-3982,-4021,-4060,-4091,-4112,-4131,-4158,-4190,-4217,-4233,-4245,-4264,-4296,-4330,-4355,-4365,
+-4368,-4369,-4374,-4382,-4401,-4432,-4474,-4509,-4522,-4513,-4493,-4472,-4454,-4436,-4419,-4414,-4428,-4457,-4489,-4510,-4510,
+-4486,-4436,-4370,-4306,-4266,-4266,-4303,-4364,-4429,-4477,-4486,-4444,-4358,-4259,-4183,-4149,-4148,-4161,-4175,-4194,-4223,
+-4249,-4248,-4212,-4152,-4096,-4057,-4027,-3983,-3913,-3823,-3733,-3663,-3621,-3605,-3607,-3614,-3609,-3576,-3512,-3425,-3334,
+-3258,-3200,-3151,-3097,-3031,-2959,-2894,-2843,-2803,-2758,-2690,-2588,-2455,-2308,-2171,-2054,-1955,-1863,-1776,-1709,-1679,
+-1687,-1708,-1712,-1680,-1619,-1540,-1452,-1354,-1248,-1142,-1040,-937,-818,-678,-531,-396,-287,-197,-111,-21,72,
+162,245,314,370,413,458,520,607,707,802,883,954,1026,1100,1171,1236,1298,1368,1445,1526,1604,
+1679,1755,1831,1902,1965,2028,2099,2174,2245,2309,2373,2451,2543,2633,2702,2753,2803,2865,2930,2973,2971,
+2927,2865,2814,2795,2816,2869,2936,2995,3033,3057,3085,3134,3201,3270,3323,3353,3366,3372,3381,3403,3438,
+3478,3504,3510,3510,3529,3587,3674,3767,3851,3930,4014,4105,4189,4252,4285,4279,4221,4101,3941,3786,3681,
+3621,3554,3416,3183,2883,2562,2255,1975,1742,1587,1538,1596,1728,1888,2042,2172,2271,2327,2339,2318,2286,
+2259,2238,2214,2184,2152,2124,2100,2072,2038,1997,1952,1899,1836,1766,1699,1640,1588,1533,1472,1409,1347,
+1288,1229,1169,1115,1072,1037,1003,963,916,866,813,757,696,637,588,552,526,504,482,459,434,
+401,359,315,276,247,228,210,190,165,140,115,86,49,0,-55,-112,-163,-205,-242,-280,-320,
+-358,-394,-427,-461,-498,-535,-569,-597,-619,-640,-666,-702,-745,-788,-822,-844,-862,-885,-913,-940,-958,
+-968,-979,-993,-1002,-1000,-987,-976,-977,-988,-1002,-1014,-1027,-1051,-1090,-1140,-1188,-1213,-1182,-1071,-895,-725,
+-653,-730,-918,-1120,-1245,-1268,-1231,-1186,-1152,-1120,-1084,-1054,-1046,-1057,-1069,-1066,-1051,-1041,-1046,-1060,-1068,
+-1063,-1047,-1026,-1007,-996,-999,-1013,-1031,-1045,-1053,-1058,-1067,-1081,-1095,-1106,-1111,-1111,-1108,-1107,-1107,-1110,
+-1113,-1113,-1114,-1119,-1130,-1141,-1146,-1141,-1136,-1141,-1162,-1193,-1227,-1255,-1276,-1289,-1296,-1301,-1307,-1315,-1320,
+-1322,-1321,-1323,-1331,-1340,-1348,-1352,-1354,-1355,-1353,-1349,-1346,-1348,-1354,-1358,-1356,-1351,-1352,-1361,-1371,-1375,
+-1371,-1367,-1366,-1366,-1358,-1342,-1325,-1312,-1308,-1308,-1309,-1314,-1321,-1331,-1342,-1353,-1364,-1373,-1379,-1381,-1386,
+-1401,-1421,-1438,-1446,-1449,-1454,-1466,-1481,-1491,-1496,-1501,-1511,-1524,-1535,-1543,-1551,-1560,-1572,-1581,-1589,-1596,
+-1605,-1618,-1633,-1648,-1662,-1676,-1689,-1701,-1715,-1733,-1757,-1785,-1815,-1845,-1876,-1905,-1933,-1957,-1977,-1994,-2012,
+-2031,-2055,-2081,-2106,-2127,-2143,-2158,-2173,-2189,-2207,-2229,-2257,-2289,-2321,-2347,-2368,-2388,-2413,-2442,-2473,-2500,
+-2522,-2539,-2555,-2577,-2611,-2657,-2712,-2765,-2809,-2842,-2868,-2891,-2916,-2945,-2976,-3008,-3037,-3061,-3083,-3108,-3136,
+-3168,-3198,-3224,-3249,-3273,-3297,-3321,-3344,-3369,-3397,-3425,-3449,-3470,-3489,-3510,-3534,-3558,-3582,-3607,-3634,-3659,
+-3679,-3695,-3709,-3726,-3748,-3776,-3808,-3840,-3869,-3888,-3897,-3899,-3900,-3903,-3912,-3924,-3940,-3959,-3978,-3996,-4007,
+-4013,-4015,-4015,-4014,-4013,-4014,-4017,-4023,-4029,-4035,-4042,-4050,-4057,-4060,-4061,-4062,-4064,-4067,-4067,-4065,-4060,
+-4052,-4039,-4018,-3990,-3960,-3930,-3901,-3870,-3843,-3826,-3824,-3833,-3834,-3807,-3742,-3647,-3544,-3458,-3403,-3377,-3375,
+-3394,-3430,-3470,-3477,-3415,-3280,-3115,-2991,-2954,-2992,-3051,-3085,-3089,-3088,-3093,-3085,-3041,-2965,-2896,-2870,-2887,
+-2916,-2919,-2885,-2827,-2760,-2693,-2627,-2565,-2509,-2454,-2400,-2356,-2341,-2363,-2404,-2427,-2406,-2344,-2271,-2212,-2172,
+-2144,-2119,-2101,-2094,-2098,-2107,-2117,-2122,-2117,-2100,-2076,-2054,-2035,-2010,-1965,-1901,-1842,-1822,-1858,-1935,-2018,
+-2081,-2120,-2153,-2198,-2260,-2335,-2417,-2504,-2591,-2671,-2732,-2769,-2786,-2797,-2810,-2830,-2856,-2882,-2902,-2912,-2908,
+-2889,-2859,-2827,-2801,-2787,-2788,-2801,-2823,-2846,-2866,-2883,-2904,-2935,-2974,-3013,-3036,-3039,-3025,-3003,-2979,-2956,
+-2938,-2931,-2936,-2945,-2946,-2933,-2911,-2892,-2884,-2882,-2880,-2879,-2883,-2890,-2893,-2885,-2869,-2860,-2869,-2892,-2914,
+-2923,-2919,-2914,-2916,-2923,-2928,-2926,-2924,-2931,-2954,-2983,-3005,-3012,-3012,-3023,-3059,-3114,-3164,-3183,-3166,-3128,
+-3097,-3087,-3100,-3125,-3159,-3203,-3257,-3311,-3349,-3358,-3339,-3306,-3270,-3234,-3198,-3172,-3171,-3212,-3295,-3400,-3499,
+-3576,-3633,-3677,-3716,-3750,-3784,-3830,-3898,-3976,-4036,-4052,-4031,-4008,-4023,-4089,-4182,-4269,-4333,-4383,-4429,-4474,
+-4504,-4512,-4506,-4498,-4496,-4494,-4484,-4462,-4435,-4408,-4383,-4360,-4344,-4338,-4342,-4347,-4344,-4328,-4300,-4269,-4238,
+-4207,-4178,-4148,-4115,-4077,-4031,-3980,-3930,-3885,-3846,-3812,-3784,-3761,-3742,-3720,-3694,-3665,-3637,-3610,-3576,-3531,
+-3477,-3423,-3377,-3335,-3288,-3233,-3176,-3129,-3097,-3075,-3054,-3028,-3000,-2974,-2947,-2913,-2867,-2814,-2769,-2740,-2722,
+-2697,-2650,-2584,-2510,-2444,-2388,-2335,-2276,-2212,-2148,-2087,-2023,-1947,-1864,-1788,-1730,-1684,-1628,-1540,-1420,-1289,
+-1175,-1092,-1032,-982,-931,-874,-810,-735,-648,-557,-476,-411,-355,-289,-203,-100,5,102,187,265,346,
+432,520,609,695,779,861,943,1027,1111,1195,1279,1365,1457,1554,1654,1753,1849,1942,2030,2114,2195,
+2276,2358,2441,2524,2607,2690,2776,2862,2945,3024,3104,3187,3271,3350,3423,3493,3569,3652,3736,3815,3887,
+3961,4038,4115,4184,4240,4291,4345,4405,4463,4508,4536,4553,4564,4574,4584,4595,4610,4630,4653,4675,4692,
+4703,4710,4720,4735,4756,4776,4787,4786,4778,4772,4774,4780,4782,4777,4767,4758,4747,4731,4708,4685,4671,
+4671,4678,4682,4676,4659,4632,4599,4563,4529,4501,4473,4439,4395,4345,4298,4262,4239,4221,4204,4184,4160,
+4135,4114,4102,4101,4111,4129,4154,4185,4222,4264,4309,4359,4417,4482,4545,4601,4652,4706,4766,4821,4848,
+4832,4775,4692,4604,4527,4475,4456,4471,4503,4530,4541,4539,4536,4529,4504,4446,4368,4300,4272,4283,4311,
+4328,4329,4329,4344,4376,4410,4421,4390,4313,4208,4106,4037,4015,4025,4045,4064,4086,4122,4167,4206,4232,
+4260,4319,4424,4553,4670,4746,4783,4804,4824,4843,4847,4833,4812,4800,4801,4811,4824,4836,4845,4847,4915,
+4880,4830,4781,4753,4750,4759,4756,4722,4659,4584,4516,4462,4414,4358,4288,4210,4135,4070,4016,3978,3964,
+3985,4039,4104,4157,4183,4185,4179,4174,4171,4165,4156,4143,4122,4087,4035,3970,3904,3848,3807,3786,3783,
+3793,3806,3810,3805,3799,3801,3806,3799,3769,3718,3660,3608,3569,3542,3529,3535,3556,3573,3556,3486,3365,
+3220,3084,2980,2911,2870,2849,2844,2849,2851,2836,2791,2718,2626,2522,2408,2281,2139,1985,1830,1679,1532,
+1384,1233,1088,973,917,944,1062,1260,1512,1785,2046,2269,2440,2554,2621,2651,2647,2606,2519,2384,2213,
+2029,1859,1717,1597,1469,1304,1096,880,723,683,764,902,1005,1012,938,851,818,858,951,1080,1261,
+1519,1846,2182,2448,2601,2658,2664,2654,2632,2589,2522,2434,2334,2233,2165,2173,2280,2455,2623,2715,2716,
+2665,2608,2567,2530,2486,2438,2397,2366,2339,2306,2262,2204,2133,2053,1975,1910,1854,1793,1716,1627,1540,
+1460,1382,1297,1209,1129,1061,1002,948,907,893,910,946,986,1030,1087,1167,1258,1336,1380,1384,1358,
+1315,1266,1216,1161,1101,1037,974,913,844,753,633,501,381,290,222,167,123,100,97,92,55,
+-28,-142,-257,-355,-436,-514,-594,-671,-737,-792,-846,-910,-988,-1068,-1135,-1175,-1192,-1200,-1217,-1252,-1299,
+-1349,-1397,-1440,-1479,-1512,-1541,-1574,-1619,-1680,-1758,-1855,-1974,-2105,-2230,-2330,-2403,-2464,-2527,-2587,-2631,-2650,
+-2647,-2630,-2594,-2534,-2462,-2410,-2398,-2412,-2414,-2388,-2360,-2370,-2425,-2482,-2495,-2463,-2440,-2484,-2602,-2753,-2885,
+-2973,-3021,-3033,-3004,-2936,-2845,-2763,-2718,-2732,-2810,-2939,-3077,-3166,-3170,-3102,-3019,-2973,-2970,-2976,-2964,-2946,
+-2952,-2987,-3015,-2992,-2917,-2829,-2771,-2745,-2712,-2634,-2506,-2358,-2227,-2130,-2074,-2062,-2093,-2152,-2207,-2229,-2214,
+-2193,-2210,-2284,-2399,-2509,-2578,-2598,-2596,-2609,-2662,-2756,-2870,-2982,-3078,-3159,-3228,-3286,-3331,-3363,-3390,-3421,
+-3460,-3503,-3542,-3570,-3588,-3602,-3619,-3645,-3678,-3715,-3749,-3777,-3802,-3826,-3851,-3878,-3905,-3933,-3965,-3999,-4029,
+-4052,-4071,-4096,-4129,-4164,-4188,-4199,-4206,-4224,-4255,-4285,-4301,-4306,-4310,-4323,-4341,-4354,-4360,-4366,-4376,-4383,
+-4379,-4364,-4348,-4338,-4329,-4313,-4290,-4272,-4271,-4283,-4296,-4301,-4296,-4285,-4266,-4236,-4198,-4167,-4159,-4180,-4226,
+-4280,-4325,-4340,-4308,-4233,-4139,-4061,-4021,-4017,-4029,-4043,-4062,-4089,-4119,-4132,-4116,-4077,-4036,-4009,-3995,-3973,
+-3927,-3850,-3758,-3673,-3616,-3593,-3598,-3613,-3617,-3595,-3543,-3465,-3377,-3296,-3230,-3180,-3135,-3083,-3022,-2960,-2907,
+-2862,-2808,-2725,-2601,-2447,-2293,-2167,-2078,-2010,-1944,-1876,-1819,-1791,-1788,-1785,-1760,-1704,-1629,-1545,-1452,-1348,
+-1238,-1131,-1035,-936,-818,-678,-532,-401,-294,-202,-112,-18,75,166,251,324,375,404,429,476,560,
+672,786,882,958,1026,1095,1167,1239,1310,1385,1465,1547,1629,1708,1786,1862,1931,1996,2061,2128,2195,
+2257,2317,2387,2476,2578,2675,2748,2799,2841,2887,2931,2956,2953,2927,2894,2875,2879,2909,2959,3016,3066,
+3102,3128,3160,3208,3269,3333,3387,3428,3459,3481,3499,3520,3546,3572,3588,3589,3581,3580,3596,3627,3674,
+3742,3842,3971,4103,4205,4260,4271,4242,4169,4042,3871,3699,3564,3471,3378,3231,3001,2701,2370,2046,1766,
+1567,1486,1529,1667,1843,2007,2138,2238,2312,2357,2369,2351,2318,2281,2244,2205,2169,2139,2117,2097,2071,
+2038,2001,1960,1909,1844,1771,1701,1644,1595,1544,1484,1421,1361,1304,1246,1185,1125,1074,1032,994,954,
+911,866,819,767,709,651,604,569,545,523,501,477,449,417,378,337,300,269,242,216,184,
+148,109,73,41,8,-29,-74,-121,-163,-196,-223,-252,-285,-322,-362,-404,-448,-493,-535,-569,-596,
+-620,-647,-681,-723,-770,-814,-848,-868,-881,-900,-927,-952,-967,-972,-976,-985,-994,-991,-978,-967,-972,
+-990,-1009,-1022,-1034,-1060,-1103,-1155,-1198,-1205,-1142,-982,-738,-491,-360,-426,-669,-971,-1197,-1284,-1261,-1199,
+-1147,-1107,-1067,-1031,-1014,-1022,-1041,-1052,-1048,-1040,-1039,-1045,-1048,-1042,-1024,-1002,-982,-972,-976,-993,-1013,
+-1028,-1036,-1041,-1049,-1061,-1074,-1083,-1087,-1086,-1085,-1085,-1086,-1087,-1086,-1081,-1076,-1076,-1083,-1093,-1097,-1095,
+-1096,-1113,-1148,-1194,-1236,-1265,-1280,-1286,-1290,-1296,-1303,-1310,-1313,-1313,-1314,-1319,-1328,-1335,-1336,-1335,-1337,
+-1343,-1349,-1348,-1343,-1341,-1344,-1348,-1346,-1341,-1341,-1348,-1358,-1361,-1358,-1355,-1356,-1357,-1352,-1339,-1327,-1321,
+-1320,-1321,-1320,-1321,-1327,-1336,-1344,-1352,-1359,-1367,-1373,-1376,-1381,-1393,-1411,-1427,-1435,-1438,-1442,-1453,-1465,
+-1475,-1481,-1490,-1503,-1518,-1530,-1539,-1548,-1560,-1574,-1585,-1593,-1600,-1609,-1620,-1632,-1642,-1653,-1666,-1680,-1693,
+-1706,-1722,-1741,-1767,-1796,-1827,-1857,-1885,-1912,-1939,-1964,-1986,-2006,-2025,-2049,-2076,-2103,-2125,-2143,-2159,-2177,
+-2195,-2214,-2234,-2257,-2283,-2310,-2333,-2355,-2380,-2411,-2444,-2473,-2497,-2518,-2537,-2559,-2585,-2618,-2661,-2711,-2759,
+-2798,-2826,-2847,-2868,-2891,-2918,-2948,-2980,-3013,-3042,-3068,-3094,-3121,-3150,-3179,-3206,-3232,-3256,-3278,-3299,-3320,
+-3344,-3373,-3401,-3425,-3447,-3469,-3493,-3518,-3540,-3561,-3586,-3616,-3647,-3672,-3690,-3706,-3726,-3753,-3784,-3815,-3845,
+-3871,-3889,-3898,-3900,-3902,-3910,-3925,-3943,-3962,-3981,-3999,-4013,-4021,-4024,-4022,-4019,-4017,-4017,-4021,-4028,-4036,
+-4043,-4048,-4053,-4059,-4065,-4070,-4074,-4077,-4081,-4084,-4085,-4082,-4078,-4070,-4057,-4037,-4011,-3985,-3963,-3941,-3917,
+-3892,-3875,-3873,-3885,-3895,-3882,-3836,-3757,-3661,-3568,-3489,-3431,-3399,-3397,-3428,-3475,-3501,-3466,-3358,-3211,-3092,
+-3047,-3071,-3115,-3133,-3124,-3112,-3116,-3121,-3097,-3036,-2968,-2929,-2932,-2952,-2954,-2923,-2868,-2804,-2740,-2676,-2615,
+-2558,-2502,-2441,-2382,-2343,-2341,-2375,-2419,-2435,-2409,-2352,-2291,-2250,-2232,-2221,-2204,-2172,-2133,-2102,-2088,-2089,
+-2096,-2103,-2109,-2111,-2102,-2066,-2002,-1930,-1884,-1892,-1950,-2032,-2109,-2169,-2215,-2257,-2298,-2338,-2383,-2439,-2509,
+-2588,-2661,-2718,-2751,-2764,-2765,-2764,-2770,-2785,-2808,-2830,-2843,-2843,-2834,-2822,-2812,-2805,-2799,-2790,-2781,-2779,
+-2791,-2816,-2852,-2895,-2942,-2989,-3030,-3061,-3079,-3085,-3082,-3069,-3048,-3026,-3013,-3011,-3010,-2996,-2964,-2926,-2898,
+-2884,-2877,-2870,-2863,-2862,-2867,-2869,-2860,-2845,-2840,-2855,-2882,-2903,-2907,-2898,-2890,-2890,-2893,-2890,-2882,-2879,
+-2891,-2920,-2954,-2980,-2998,-3017,-3052,-3102,-3150,-3168,-3143,-3088,-3033,-3006,-3013,-3046,-3094,-3153,-3222,-3291,-3336,
+-3342,-3308,-3255,-3210,-3182,-3168,-3162,-3170,-3205,-3274,-3365,-3458,-3535,-3597,-3652,-3704,-3750,-3786,-3820,-3865,-3924,
+-3985,-4021,-4023,-4011,-4018,-4069,-4157,-4252,-4330,-4385,-4431,-4478,-4523,-4555,-4569,-4568,-4561,-4553,-4540,-4521,-4498,
+-4473,-4449,-4425,-4403,-4389,-4386,-4392,-4397,-4391,-4373,-4347,-4317,-4285,-4252,-4217,-4182,-4144,-4101,-4052,-4002,-3955,
+-3913,-3874,-3836,-3802,-3773,-3751,-3728,-3703,-3674,-3647,-3621,-3591,-3551,-3501,-3449,-3402,-3360,-3316,-3265,-3210,-3161,
+-3124,-3100,-3082,-3065,-3047,-3027,-3001,-2965,-2916,-2863,-2816,-2784,-2762,-2736,-2694,-2635,-2567,-2502,-2444,-2387,-2327,
+-2263,-2202,-2142,-2079,-2003,-1916,-1833,-1770,-1725,-1681,-1613,-1511,-1389,-1271,-1178,-1109,-1057,-1009,-960,-906,-840,
+-758,-663,-564,-473,-389,-304,-207,-98,9,103,177,238,301,376,464,559,655,744,828,910,991,
+1074,1158,1243,1331,1426,1525,1624,1720,1811,1899,1986,2072,2156,2238,2320,2403,2486,2570,2657,2748,2840,
+2929,3012,3091,3168,3247,3325,3402,3479,3557,3635,3708,3774,3838,3907,3982,4057,4125,4181,4233,4288,4347,
+4398,4434,4453,4464,4476,4494,4513,4531,4545,4558,4573,4589,4604,4615,4622,4632,4648,4673,4700,4719,4721,
+4714,4708,4713,4722,4722,4704,4676,4650,4635,4626,4612,4591,4569,4557,4553,4549,4534,4508,4476,4446,4421,
+4400,4381,4361,4338,4308,4273,4235,4198,4167,4141,4121,4106,4096,4090,4091,4099,4113,4130,4149,4174,4207,
+4249,4297,4348,4404,4467,4534,4600,4659,4714,4768,4817,4846,4838,4789,4712,4626,4550,4493,4467,4479,4523,
+4579,4618,4626,4612,4592,4570,4537,4484,4424,4383,4374,4385,4390,4376,4348,4324,4308,4295,4275,4244,4203,
+4151,4089,4026,3981,3965,3976,3998,4023,4060,4120,4197,4272,4327,4368,4424,4514,4627,4733,4806,4845,4867,
+4885,4896,4896,4886,4881,4890,4910,4930,4940,4941,4934,4915,4943,4911,4869,4830,4806,4799,4793,4768,4714,
+4636,4553,4481,4426,4383,4339,4284,4213,4126,4026,3923,3833,3777,3774,3821,3893,3956,3993,4005,4012,4023,
+4037,4044,4035,4013,3979,3936,3888,3838,3795,3762,3742,3730,3725,3726,3728,3726,3722,3719,3722,3728,3725,
+3703,3659,3604,3551,3508,3475,3452,3441,3446,3459,3465,3442,3377,3278,3165,3058,2973,2912,2874,2854,2846,
+2838,2816,2773,2708,2632,2550,2458,2349,2220,2073,1920,1766,1614,1464,1313,1168,1039,941,896,925,1041,
+1241,1497,1766,2001,2173,2279,2339,2370,2376,2339,2241,2079,1876,1669,1489,1345,1225,1108,977,835,705,
+620,608,667,759,831,846,805,746,713,726,790,913,1119,1428,1821,2226,2555,2752,2824,2815,2765,
+2689,2588,2465,2334,2209,2110,2065,2107,2245,2436,2602,2681,2669,2614,2568,2542,2518,2475,2418,2364,2323,
+2289,2251,2201,2138,2065,1986,1910,1842,1779,1709,1626,1537,1452,1372,1286,1190,1090,1002,930,863,796,
+741,720,739,780,823,864,921,1006,1107,1196,1252,1272,1269,1254,1232,1200,1153,1091,1020,950,890,
+834,767,671,546,407,274,158,63,-9,-55,-80,-102,-147,-229,-335,-440,-526,-589,-641,-693,-747,
+-799,-846,-891,-944,-1009,-1079,-1137,-1171,-1185,-1199,-1233,-1290,-1355,-1410,-1453,-1492,-1530,-1560,-1577,-1586,-1608,
+-1662,-1753,-1872,-2000,-2116,-2207,-2266,-2306,-2344,-2388,-2434,-2467,-2483,-2485,-2474,-2440,-2379,-2309,-2263,-2260,-2282,
+-2291,-2273,-2251,-2262,-2307,-2346,-2345,-2320,-2323,-2394,-2520,-2650,-2745,-2806,-2856,-2907,-2950,-2966,-2955,-2934,-2930,
+-2965,-3051,-3180,-3313,-3397,-3399,-3335,-3258,-3212,-3193,-3163,-3102,-3039,-3016,-3041,-3067,-3036,-2933,-2805,-2714,-2685,
+-2682,-2655,-2575,-2453,-2320,-2204,-2122,-2081,-2083,-2115,-2154,-2178,-2182,-2182,-2204,-2263,-2350,-2438,-2502,-2532,-2544,
+-2565,-2618,-2707,-2816,-2925,-3019,-3098,-3167,-3229,-3284,-3326,-3357,-3386,-3421,-3464,-3508,-3546,-3574,-3595,-3616,-3639,
+-3665,-3692,-3719,-3748,-3779,-3811,-3843,-3872,-3898,-3923,-3950,-3977,-4001,-4021,-4043,-4073,-4111,-4146,-4165,-4168,-4169,
+-4182,-4208,-4233,-4245,-4248,-4260,-4286,-4317,-4336,-4337,-4329,-4321,-4312,-4297,-4278,-4265,-4264,-4269,-4264,-4247,-4229,
+-4222,-4223,-4221,-4206,-4184,-4166,-4151,-4132,-4104,-4074,-4058,-4066,-4095,-4134,-4164,-4170,-4139,-4073,-3991,-3923,-3890,
+-3888,-3902,-3918,-3933,-3955,-3981,-4000,-4003,-3989,-3971,-3962,-3965,-3965,-3944,-3888,-3802,-3708,-3633,-3595,-3593,-3609,
+-3618,-3604,-3562,-3497,-3419,-3343,-3282,-3241,-3212,-3180,-3132,-3068,-2998,-2926,-2843,-2733,-2590,-2431,-2287,-2186,-2127,
+-2088,-2044,-1989,-1937,-1904,-1884,-1857,-1806,-1732,-1646,-1555,-1456,-1347,-1233,-1126,-1028,-928,-811,-676,-539,-418,
+-313,-215,-117,-18,75,165,250,326,381,413,439,485,569,682,798,897,974,1040,1107,1179,1255,
+1332,1412,1495,1581,1667,1750,1828,1899,1962,2022,2083,2147,2211,2274,2339,2414,2506,2606,2699,2771,2821,
+2858,2889,2915,2929,2932,2928,2929,2940,2963,2994,3030,3069,3107,3142,3178,3222,3278,3343,3410,3469,3517,
+3553,3578,3595,3610,3624,3637,3641,3636,3628,3620,3613,3607,3615,3663,3769,3920,4071,4173,4207,4190,4145,
+4078,3976,3834,3674,3523,3390,3252,3070,2818,2501,2151,1814,1545,1397,1399,1532,1739,1947,2108,2213,2279,
+2322,2349,2358,2349,2326,2293,2252,2208,2170,2144,2128,2111,2084,2047,2006,1961,1908,1842,1772,1707,1657,
+1613,1564,1506,1444,1385,1331,1274,1210,1143,1082,1032,988,947,906,865,823,775,722,668,622,587,
+562,540,516,489,458,426,393,359,324,289,252,216,178,137,93,49,10,-22,-53,-86,-122,
+-156,-182,-204,-227,-256,-292,-334,-382,-433,-485,-530,-568,-600,-634,-672,-714,-757,-800,-839,-869,-885,
+-893,-906,-927,-951,-965,-967,-967,-971,-979,-979,-969,-961,-967,-984,-1002,-1015,-1034,-1069,-1118,-1168,-1203,
+-1209,-1154,-1003,-743,-440,-227,-229,-467,-826,-1137,-1289,-1285,-1207,-1131,-1081,-1046,-1016,-998,-1001,-1016,-1028,
+-1030,-1030,-1034,-1040,-1039,-1024,-999,-974,-958,-954,-962,-977,-994,-1006,-1014,-1021,-1030,-1040,-1047,-1051,-1053,
+-1056,-1058,-1059,-1058,-1056,-1055,-1051,-1044,-1036,-1031,-1029,-1030,-1037,-1056,-1092,-1142,-1193,-1233,-1256,-1265,-1268,
+-1272,-1277,-1285,-1293,-1296,-1296,-1297,-1303,-1313,-1319,-1318,-1314,-1317,-1329,-1343,-1348,-1343,-1337,-1335,-1337,-1335,
+-1331,-1330,-1335,-1343,-1346,-1343,-1340,-1340,-1341,-1337,-1328,-1321,-1321,-1325,-1327,-1324,-1322,-1324,-1329,-1335,-1341,
+-1349,-1360,-1370,-1375,-1380,-1388,-1402,-1417,-1426,-1431,-1437,-1445,-1456,-1464,-1471,-1482,-1497,-1512,-1523,-1532,-1541,
+-1554,-1569,-1582,-1592,-1601,-1611,-1621,-1629,-1636,-1644,-1656,-1671,-1686,-1699,-1713,-1729,-1750,-1778,-1809,-1838,-1863,
+-1887,-1914,-1944,-1972,-1996,-2016,-2037,-2063,-2090,-2116,-2137,-2157,-2177,-2197,-2214,-2232,-2254,-2278,-2301,-2319,-2338,
+-2363,-2397,-2433,-2463,-2486,-2506,-2529,-2557,-2587,-2619,-2656,-2698,-2738,-2771,-2796,-2817,-2840,-2867,-2896,-2927,-2960,
+-2993,-3025,-3055,-3082,-3109,-3137,-3165,-3193,-3220,-3244,-3265,-3281,-3298,-3320,-3348,-3377,-3403,-3428,-3453,-3479,-3503,
+-3523,-3541,-3566,-3598,-3632,-3660,-3682,-3704,-3732,-3765,-3798,-3828,-3853,-3875,-3890,-3898,-3901,-3906,-3917,-3936,-3958,
+-3978,-3996,-4010,-4021,-4025,-4026,-4023,-4021,-4021,-4024,-4031,-4041,-4052,-4061,-4066,-4069,-4074,-4080,-4086,-4090,-4094,
+-4097,-4099,-4099,-4097,-4093,-4086,-4074,-4055,-4032,-4012,-3996,-3981,-3961,-3936,-3916,-3913,-3924,-3936,-3929,-3890,-3820,
+-3732,-3643,-3563,-3497,-3446,-3414,-3404,-3413,-3422,-3403,-3337,-3240,-3154,-3118,-3134,-3166,-3175,-3156,-3135,-3135,-3148,
+-3139,-3092,-3024,-2974,-2966,-2987,-3003,-2987,-2937,-2868,-2794,-2725,-2667,-2619,-2573,-2518,-2451,-2387,-2352,-2360,-2401,
+-2440,-2451,-2426,-2386,-2354,-2339,-2329,-2303,-2252,-2185,-2124,-2084,-2071,-2078,-2103,-2137,-2166,-2165,-2119,-2040,-1966,
+-1941,-1976,-2051,-2129,-2192,-2244,-2295,-2344,-2384,-2410,-2433,-2467,-2519,-2580,-2639,-2689,-2724,-2743,-2748,-2744,-2743,
+-2753,-2772,-2788,-2792,-2780,-2764,-2758,-2767,-2784,-2793,-2784,-2760,-2737,-2733,-2756,-2804,-2868,-2936,-3001,-3057,-3102,
+-3136,-3161,-3173,-3170,-3150,-3120,-3093,-3074,-3054,-3022,-2976,-2928,-2895,-2879,-2869,-2856,-2841,-2834,-2838,-2843,-2843,
+-2839,-2843,-2859,-2877,-2886,-2879,-2867,-2862,-2865,-2867,-2862,-2855,-2859,-2882,-2917,-2951,-2978,-3001,-3032,-3075,-3118,
+-3139,-3120,-3066,-3005,-2969,-2975,-3015,-3070,-3128,-3190,-3255,-3312,-3336,-3314,-3259,-3202,-3167,-3159,-3167,-3181,-3209,
+-3264,-3343,-3429,-3504,-3563,-3618,-3678,-3741,-3794,-3830,-3859,-3896,-3940,-3978,-3995,-3998,-4013,-4064,-4154,-4260,-4350,
+-4412,-4455,-4493,-4535,-4575,-4603,-4615,-4615,-4605,-4591,-4573,-4555,-4538,-4522,-4504,-4482,-4462,-4448,-4443,-4442,-4437,
+-4427,-4411,-4392,-4368,-4338,-4300,-4258,-4217,-4177,-4134,-4088,-4039,-3993,-3951,-3910,-3869,-3831,-3799,-3774,-3750,-3723,
+-3692,-3661,-3630,-3598,-3559,-3513,-3462,-3413,-3367,-3322,-3277,-3233,-3192,-3158,-3130,-3107,-3086,-3068,-3049,-3026,-2998,
+-2962,-2921,-2877,-2835,-2794,-2754,-2712,-2665,-2613,-2559,-2502,-2442,-2380,-2316,-2255,-2195,-2131,-2058,-1973,-1889,-1817,
+-1764,-1719,-1664,-1586,-1487,-1385,-1295,-1220,-1151,-1081,-1009,-938,-869,-793,-706,-607,-504,-403,-306,-207,-105,
+-6,79,145,200,256,328,418,519,620,715,801,883,964,1045,1127,1212,1301,1394,1489,1582,1670,
+1757,1845,1936,2027,2117,2203,2287,2369,2451,2533,2618,2708,2803,2898,2987,3069,3144,3220,3300,3385,3472,
+3554,3629,3695,3754,3813,3876,3943,4008,4064,4113,4162,4214,4266,4307,4333,4346,4357,4378,4407,4437,4461,
+4475,4483,4490,4502,4516,4528,4532,4532,4536,4553,4581,4609,4623,4625,4627,4640,4658,4662,4640,4596,4553,
+4526,4515,4504,4480,4449,4423,4410,4404,4393,4371,4344,4320,4301,4284,4266,4247,4229,4214,4197,4175,4145,
+4111,4082,4061,4053,4056,4068,4086,4107,4130,4151,4172,4196,4228,4270,4320,4378,4445,4522,4603,4678,4739,
+4785,4820,4841,4838,4803,4744,4675,4613,4563,4530,4523,4554,4622,4701,4756,4772,4758,4735,4709,4667,4599,
+4518,4451,4417,4406,4396,4371,4335,4296,4255,4208,4159,4119,4097,4085,4065,4031,3996,3977,3978,3990,4007,
+4042,4108,4205,4309,4396,4466,4539,4632,4739,4833,4893,4921,4933,4939,4940,4934,4928,4935,4958,4985,5000,
+4997,4984,4966,4943,4958,4936,4911,4886,4866,4847,4816,4764,4691,4608,4529,4461,4407,4365,4326,4278,4210,
+4117,3999,3867,3740,3640,3586,3581,3608,3644,3674,3699,3732,3774,3817,3844,3846,3825,3791,3754,3721,3698,
+3686,3684,3683,3677,3666,3653,3644,3639,3636,3636,3637,3639,3635,3618,3584,3537,3487,3444,3410,3386,3373,
+3374,3388,3407,3411,3382,3312,3215,3109,3014,2940,2889,2856,2837,2821,2795,2755,2701,2641,2576,2503,2413,
+2304,2176,2034,1881,1723,1567,1422,1289,1164,1047,948,896,924,1046,1246,1476,1680,1823,1908,1959,1995,
+2011,1977,1867,1686,1469,1264,1099,973,865,758,654,565,510,495,518,567,624,670,691,681,653,
+631,640,697,822,1033,1343,1730,2135,2479,2701,2790,2775,2695,2574,2429,2274,2128,2012,1944,1947,2039,
+2213,2419,2580,2647,2628,2578,2547,2539,2524,2478,2405,2330,2268,2216,2163,2104,2039,1971,1901,1830,1762,
+1692,1613,1525,1434,1349,1267,1175,1070,963,871,793,716,632,559,526,541,588,642,698,772,870,
+976,1060,1106,1124,1131,1138,1138,1124,1093,1047,991,929,866,803,734,647,534,401,262,129,12,
+-83,-152,-199,-238,-290,-365,-458,-551,-628,-686,-734,-780,-828,-874,-911,-941,-975,-1021,-1077,-1128,-1157,
+-1171,-1193,-1242,-1315,-1389,-1444,-1485,-1531,-1586,-1634,-1653,-1646,-1643,-1682,-1776,-1907,-2037,-2134,-2187,-2204,-2205,
+-2211,-2225,-2242,-2256,-2268,-2282,-2291,-2281,-2243,-2196,-2170,-2182,-2212,-2230,-2223,-2213,-2226,-2259,-2282,-2276,-2259,
+-2273,-2342,-2445,-2543,-2616,-2680,-2764,-2875,-2998,-3107,-3188,-3243,-3288,-3342,-3426,-3542,-3665,-3748,-3760,-3713,-3649,
+-3598,-3546,-3462,-3340,-3226,-3173,-3186,-3206,-3158,-3020,-2843,-2706,-2650,-2656,-2662,-2621,-2528,-2409,-2299,-2220,-2176,
+-2157,-2154,-2158,-2170,-2191,-2226,-2277,-2341,-2410,-2477,-2531,-2571,-2601,-2635,-2683,-2749,-2828,-2905,-2974,-3035,-3094,
+-3154,-3213,-3265,-3306,-3340,-3375,-3414,-3455,-3494,-3527,-3558,-3588,-3618,-3646,-3671,-3696,-3726,-3759,-3793,-3823,-3848,
+-3870,-3894,-3920,-3946,-3969,-3988,-4011,-4040,-4077,-4108,-4125,-4127,-4126,-4136,-4158,-4181,-4195,-4204,-4222,-4250,-4279,
+-4293,-4288,-4276,-4267,-4260,-4247,-4229,-4216,-4217,-4225,-4225,-4214,-4199,-4193,-4192,-4184,-4160,-4128,-4100,-4077,-4051,
+-4014,-3973,-3943,-3937,-3953,-3978,-3996,-3994,-3966,-3913,-3853,-3805,-3786,-3792,-3809,-3822,-3829,-3836,-3848,-3865,-3879,
+-3888,-3894,-3905,-3924,-3946,-3951,-3920,-3848,-3753,-3669,-3621,-3613,-3624,-3630,-3617,-3584,-3538,-3484,-3430,-3384,-3350,
+-3322,-3287,-3231,-3151,-3057,-2954,-2841,-2711,-2567,-2424,-2309,-2238,-2201,-2172,-2130,-2073,-2017,-1975,-1941,-1899,-1834,
+-1749,-1654,-1555,-1451,-1339,-1225,-1119,-1019,-917,-802,-678,-555,-444,-339,-235,-129,-28,66,155,242,324,
+390,438,482,542,627,729,831,918,991,1059,1129,1206,1286,1368,1452,1537,1624,1711,1793,1867,1929,
+1982,2034,2090,2154,2223,2295,2369,2448,2532,2618,2697,2764,2814,2851,2879,2900,2916,2930,2945,2967,2994,
+3023,3050,3075,3102,3133,3172,3218,3272,3331,3394,3455,3507,3546,3573,3591,3606,3621,3633,3637,3635,3635,
+3645,3663,3672,3665,3653,3672,3749,3873,3997,4074,4088,4061,4025,3989,3936,3846,3714,3553,3373,3169,2923,
+2623,2273,1904,1570,1341,1268,1362,1575,1827,2046,2196,2283,2330,2357,2369,2370,2360,2342,2313,2274,2231,
+2193,2167,2149,2128,2096,2053,2005,1953,1895,1830,1764,1708,1665,1629,1589,1537,1478,1419,1362,1302,1235,
+1164,1097,1041,993,950,907,864,822,779,733,685,640,602,573,550,526,498,467,437,409,382,
+350,308,262,217,178,142,101,55,11,-24,-52,-79,-108,-136,-161,-181,-204,-234,-271,-315,-364,
+-419,-474,-524,-565,-604,-647,-696,-743,-784,-819,-850,-875,-889,-894,-901,-916,-936,-950,-954,-953,-957,
+-965,-967,-961,-957,-962,-976,-990,-1005,-1031,-1074,-1124,-1163,-1186,-1198,-1185,-1095,-882,-575,-303,-225,-405,
+-756,-1093,-1271,-1271,-1177,-1083,-1031,-1010,-997,-988,-986,-991,-995,-997,-1005,-1020,-1035,-1034,-1011,-977,-949,
+-936,-938,-948,-960,-970,-979,-987,-997,-1007,-1014,-1014,-1011,-1013,-1020,-1028,-1030,-1024,-1018,-1016,-1017,-1011,
+-996,-975,-961,-965,-993,-1041,-1098,-1152,-1192,-1216,-1227,-1234,-1240,-1246,-1252,-1260,-1269,-1277,-1279,-1280,-1285,
+-1294,-1303,-1305,-1303,-1306,-1317,-1331,-1337,-1333,-1325,-1322,-1324,-1324,-1321,-1319,-1320,-1324,-1325,-1321,-1317,-1317,
+-1319,-1317,-1312,-1308,-1310,-1314,-1315,-1312,-1308,-1308,-1312,-1317,-1324,-1335,-1349,-1361,-1367,-1371,-1378,-1392,-1407,
+-1419,-1426,-1433,-1443,-1453,-1462,-1470,-1481,-1495,-1509,-1519,-1527,-1536,-1548,-1562,-1574,-1585,-1596,-1608,-1617,-1623,
+-1627,-1632,-1643,-1659,-1675,-1690,-1704,-1718,-1738,-1764,-1794,-1822,-1846,-1867,-1891,-1920,-1952,-1978,-2000,-2020,-2043,
+-2071,-2099,-2125,-2150,-2173,-2194,-2212,-2230,-2251,-2275,-2295,-2308,-2320,-2342,-2376,-2414,-2446,-2469,-2491,-2518,-2550,
+-2582,-2613,-2646,-2682,-2717,-2744,-2766,-2788,-2815,-2847,-2880,-2913,-2946,-2978,-3010,-3039,-3067,-3095,-3122,-3150,-3178,
+-3206,-3232,-3252,-3267,-3282,-3301,-3327,-3355,-3381,-3404,-3428,-3453,-3476,-3495,-3515,-3541,-3576,-3611,-3640,-3666,-3695,
+-3731,-3770,-3806,-3834,-3855,-3873,-3887,-3896,-3902,-3910,-3926,-3946,-3968,-3986,-4003,-4015,-4024,-4027,-4026,-4025,-4027,
+-4031,-4037,-4046,-4057,-4070,-4080,-4087,-4091,-4095,-4100,-4105,-4108,-4110,-4110,-4111,-4110,-4107,-4104,-4100,-4090,-4074,
+-4054,-4036,-4024,-4014,-3997,-3974,-3953,-3945,-3952,-3963,-3957,-3922,-3858,-3777,-3696,-3626,-3569,-3515,-3457,-3395,-3340,
+-3302,-3277,-3250,-3215,-3181,-3170,-3189,-3216,-3221,-3197,-3164,-3152,-3163,-3168,-3142,-3087,-3036,-3019,-3036,-3058,-3053,
+-3011,-2941,-2862,-2788,-2728,-2683,-2645,-2600,-2539,-2466,-2406,-2380,-2393,-2428,-2459,-2469,-2460,-2445,-2429,-2407,-2368,
+-2308,-2233,-2163,-2111,-2084,-2086,-2118,-2168,-2210,-2211,-2155,-2065,-1993,-1984,-2038,-2120,-2193,-2247,-2295,-2346,-2394,
+-2426,-2442,-2458,-2490,-2537,-2588,-2633,-2675,-2716,-2751,-2773,-2782,-2787,-2800,-2817,-2825,-2808,-2770,-2727,-2701,-2704,
+-2726,-2747,-2750,-2729,-2701,-2685,-2699,-2746,-2820,-2910,-3005,-3090,-3159,-3206,-3235,-3245,-3236,-3206,-3163,-3117,-3075,
+-3034,-2987,-2934,-2887,-2859,-2848,-2843,-2832,-2818,-2809,-2812,-2821,-2829,-2834,-2843,-2856,-2864,-2861,-2851,-2842,-2841,
+-2841,-2836,-2827,-2828,-2852,-2895,-2939,-2971,-2989,-3006,-3036,-3074,-3102,-3101,-3065,-3012,-2973,-2975,-3018,-3084,-3146,
+-3193,-3233,-3272,-3301,-3305,-3274,-3224,-3182,-3168,-3177,-3197,-3222,-3263,-3327,-3408,-3486,-3548,-3598,-3654,-3722,-3790,
+-3840,-3869,-3890,-3914,-3941,-3961,-3974,-3998,-4057,-4157,-4277,-4384,-4455,-4495,-4523,-4555,-4594,-4630,-4653,-4660,-4655,
+-4639,-4620,-4602,-4592,-4588,-4584,-4574,-4557,-4537,-4520,-4505,-4490,-4474,-4458,-4445,-4433,-4415,-4383,-4341,-4297,-4255,
+-4218,-4178,-4133,-4083,-4032,-3984,-3940,-3899,-3862,-3830,-3803,-3777,-3748,-3717,-3683,-3649,-3614,-3574,-3529,-3480,-3427,
+-3375,-3327,-3287,-3253,-3223,-3193,-3161,-3130,-3103,-3081,-3062,-3043,-3025,-3006,-2981,-2943,-2891,-2829,-2771,-2723,-2686,
+-2650,-2607,-2554,-2493,-2430,-2367,-2305,-2243,-2177,-2106,-2028,-1946,-1870,-1806,-1751,-1697,-1632,-1554,-1471,-1392,-1315,
+-1230,-1128,-1016,-909,-822,-751,-683,-605,-515,-421,-329,-241,-153,-65,15,85,148,214,294,389,491,
+592,685,771,853,934,1015,1098,1184,1274,1366,1455,1540,1623,1707,1797,1890,1985,2076,2166,2254,2341,
+2426,2508,2588,2672,2764,2860,2954,3040,3120,3199,3284,3375,3467,3552,3625,3689,3747,3805,3863,3918,3964,
+4004,4041,4082,4125,4167,4198,4218,4231,4247,4273,4307,4342,4370,4387,4397,4405,4418,4436,4450,4453,4442,
+4431,4435,4458,4492,4519,4534,4543,4560,4583,4594,4576,4529,4476,4436,4413,4393,4360,4316,4279,4258,4253,
+4250,4241,4227,4212,4200,4184,4163,4141,4124,4116,4110,4100,4081,4056,4034,4022,4023,4036,4055,4078,4102,
+4128,4154,4180,4209,4240,4277,4322,4382,4462,4559,4660,4745,4800,4825,4826,4810,4778,4732,4682,4641,4614,
+4596,4579,4574,4598,4655,4725,4774,4788,4776,4759,4739,4694,4610,4501,4405,4350,4331,4323,4302,4263,4214,
+4159,4103,4058,4039,4047,4065,4068,4049,4021,4003,3998,3997,3997,4011,4060,4147,4255,4362,4467,4582,4711,
+4836,4929,4976,4989,4991,4994,4996,4994,4993,5004,5025,5043,5043,5023,4998,4976,4958,4969,4943,4913,4883,
+4856,4824,4777,4713,4639,4568,4502,4444,4391,4343,4297,4241,4165,4065,3945,3813,3678,3554,3451,3379,3340,
+3326,3333,3358,3404,3464,3525,3571,3592,3592,3580,3566,3559,3562,3577,3596,3609,3608,3593,3572,3555,3548,
+3547,3548,3547,3545,3539,3526,3502,3467,3425,3386,3356,3338,3332,3338,3356,3378,3386,3363,3301,3210,3108,
+3014,2939,2884,2847,2824,2805,2779,2742,2695,2643,2588,2526,2453,2367,2266,2147,2009,1856,1702,1562,1439,
+1322,1198,1069,962,913,947,1058,1207,1346,1446,1510,1558,1599,1617,1576,1452,1262,1050,866,730,630,
+541,450,369,320,320,359,414,467,510,546,574,587,587,587,613,688,820,1010,1255,1545,1854,
+2133,2334,2431,2431,2366,2264,2145,2020,1907,1825,1800,1855,2002,2221,2451,2617,2675,2645,2588,2552,2539,
+2514,2451,2358,2263,2183,2116,2053,1990,1930,1873,1813,1747,1675,1597,1512,1420,1330,1247,1166,1072,962,
+848,746,657,563,459,368,322,335,390,462,543,643,761,870,938,959,959,963,979,993,991,
+975,955,930,893,837,766,686,598,499,385,258,127,5,-95,-165,-209,-243,-289,-361,-454,-552,
+-639,-708,-764,-814,-863,-907,-940,-965,-991,-1029,-1079,-1125,-1152,-1166,-1192,-1246,-1319,-1384,-1423,-1453,-1502,
+-1581,-1661,-1705,-1703,-1687,-1709,-1792,-1917,-2040,-2123,-2156,-2153,-2138,-2125,-2115,-2104,-2094,-2095,-2112,-2134,-2144,
+-2132,-2111,-2106,-2124,-2153,-2172,-2173,-2175,-2191,-2218,-2235,-2233,-2228,-2246,-2295,-2364,-2435,-2508,-2599,-2724,-2883,
+-3061,-3240,-3403,-3537,-3638,-3720,-3809,-3920,-4040,-4128,-4155,-4127,-4073,-4013,-3931,-3805,-3643,-3493,-3408,-3390,-3382,
+-3310,-3149,-2939,-2756,-2654,-2629,-2633,-2614,-2550,-2458,-2368,-2304,-2262,-2228,-2191,-2159,-2152,-2185,-2253,-2337,-2416,
+-2481,-2534,-2578,-2613,-2642,-2671,-2708,-2759,-2821,-2887,-2951,-3011,-3069,-3126,-3179,-3225,-3264,-3295,-3324,-3355,-3387,
+-3419,-3451,-3484,-3520,-3557,-3592,-3624,-3654,-3685,-3717,-3746,-3771,-3794,-3820,-3851,-3884,-3913,-3933,-3948,-3963,-3984,
+-4013,-4044,-4067,-4079,-4086,-4097,-4116,-4138,-4157,-4173,-4192,-4213,-4228,-4229,-4219,-4209,-4208,-4213,-4213,-4203,-4192,
+-4187,-4186,-4178,-4161,-4144,-4136,-4135,-4127,-4105,-4075,-4047,-4023,-3991,-3942,-3885,-3836,-3812,-3812,-3825,-3838,-3840,
+-3824,-3791,-3753,-3724,-3715,-3726,-3742,-3750,-3747,-3738,-3736,-3746,-3767,-3792,-3814,-3838,-3871,-3912,-3942,-3934,-3878,
+-3791,-3709,-3663,-3654,-3660,-3659,-3643,-3623,-3605,-3588,-3564,-3527,-3477,-3415,-3339,-3246,-3140,-3027,-2911,-2789,-2661,
+-2533,-2423,-2345,-2299,-2269,-2230,-2173,-2103,-2039,-1991,-1952,-1905,-1836,-1747,-1647,-1543,-1436,-1326,-1218,-1115,-1015,
+-911,-800,-685,-573,-465,-358,-249,-143,-45,46,136,229,318,397,465,534,612,700,788,867,938,
+1006,1078,1155,1237,1321,1407,1493,1579,1665,1749,1827,1894,1950,1997,2045,2100,2165,2238,2317,2397,2474,
+2547,2617,2684,2745,2797,2837,2869,2897,2926,2953,2979,3004,3030,3056,3081,3104,3130,3165,3207,3253,3299,
+3344,3389,3432,3469,3494,3512,3530,3554,3580,3596,3599,3602,3624,3677,3742,3789,3794,3769,3753,3777,3840,
+3909,3947,3947,3932,3928,3937,3937,3897,3798,3636,3419,3153,2839,2478,2078,1679,1349,1167,1181,1369,1650,
+1928,2140,2277,2363,2420,2455,2464,2449,2420,2387,2353,2315,2273,2233,2199,2168,2134,2094,2048,1998,1947,
+1890,1829,1766,1710,1668,1636,1605,1564,1513,1455,1395,1331,1262,1190,1121,1062,1012,965,916,867,822,
+782,744,704,661,619,583,554,530,503,473,444,419,397,369,327,277,231,197,168,135,91,
+45,7,-20,-44,-71,-100,-126,-149,-174,-208,-250,-297,-349,-405,-462,-515,-560,-603,-650,-701,-750,
+-789,-819,-844,-867,-882,-888,-893,-903,-918,-931,-936,-939,-944,-952,-954,-951,-949,-957,-971,-983,-998,
+-1028,-1076,-1123,-1151,-1162,-1182,-1212,-1194,-1057,-794,-517,-392,-510,-805,-1102,-1252,-1229,-1117,-1015,-967,-956,
+-955,-953,-954,-957,-958,-959,-971,-996,-1019,-1022,-998,-961,-932,-919,-921,-928,-934,-939,-944,-952,-963,
+-975,-983,-982,-979,-982,-994,-1006,-1007,-994,-978,-974,-979,-982,-967,-939,-918,-929,-979,-1053,-1124,-1170,
+-1187,-1186,-1188,-1199,-1217,-1230,-1237,-1243,-1253,-1265,-1272,-1271,-1271,-1277,-1288,-1297,-1299,-1300,-1305,-1313,-1316,
+-1312,-1306,-1305,-1309,-1312,-1311,-1306,-1304,-1304,-1302,-1296,-1290,-1289,-1292,-1294,-1292,-1288,-1286,-1286,-1285,-1282,
+-1281,-1283,-1287,-1294,-1304,-1318,-1333,-1344,-1349,-1353,-1362,-1378,-1396,-1408,-1416,-1423,-1433,-1444,-1455,-1466,-1479,
+-1494,-1507,-1517,-1524,-1532,-1542,-1553,-1564,-1575,-1587,-1600,-1609,-1613,-1616,-1620,-1629,-1643,-1659,-1676,-1692,-1706,
+-1722,-1745,-1774,-1805,-1831,-1852,-1874,-1902,-1933,-1962,-1984,-2004,-2026,-2052,-2081,-2109,-2137,-2164,-2189,-2209,-2227,
+-2248,-2271,-2289,-2299,-2308,-2326,-2358,-2397,-2431,-2457,-2482,-2510,-2543,-2575,-2605,-2637,-2670,-2702,-2727,-2747,-2768,
+-2797,-2832,-2869,-2903,-2936,-2966,-2993,-3019,-3046,-3074,-3104,-3133,-3160,-3188,-3214,-3235,-3252,-3267,-3286,-3310,-3335,
+-3356,-3374,-3393,-3415,-3438,-3461,-3486,-3517,-3553,-3586,-3614,-3639,-3672,-3714,-3759,-3797,-3825,-3846,-3864,-3879,-3891,
+-3902,-3916,-3935,-3956,-3975,-3991,-4007,-4022,-4031,-4035,-4035,-4037,-4042,-4050,-4058,-4066,-4075,-4086,-4096,-4103,-4108,
+-4113,-4117,-4120,-4121,-4121,-4120,-4119,-4117,-4115,-4113,-4111,-4105,-4093,-4075,-4057,-4046,-4038,-4027,-4009,-3990,-3978,
+-3978,-3983,-3978,-3953,-3902,-3832,-3756,-3690,-3639,-3592,-3530,-3445,-3349,-3272,-3231,-3222,-3223,-3220,-3218,-3229,-3246,
+-3246,-3216,-3172,-3145,-3151,-3173,-3181,-3158,-3122,-3100,-3102,-3111,-3104,-3069,-3011,-2942,-2871,-2806,-2752,-2708,-2668,
+-2619,-2557,-2490,-2436,-2411,-2416,-2440,-2466,-2480,-2478,-2460,-2427,-2380,-2321,-2257,-2195,-2146,-2117,-2117,-2149,-2201,
+-2241,-2233,-2168,-2074,-2007,-2006,-2066,-2150,-2225,-2282,-2331,-2378,-2411,-2423,-2427,-2446,-2491,-2549,-2601,-2641,-2679,
+-2726,-2780,-2825,-2854,-2872,-2891,-2909,-2912,-2884,-2828,-2760,-2704,-2675,-2675,-2688,-2697,-2690,-2672,-2657,-2661,-2696,
+-2768,-2872,-2995,-3114,-3205,-3257,-3272,-3259,-3228,-3183,-3128,-3070,-3015,-2964,-2912,-2860,-2820,-2800,-2798,-2804,-2804,
+-2799,-2796,-2800,-2806,-2811,-2815,-2821,-2829,-2835,-2835,-2833,-2832,-2831,-2818,-2796,-2779,-2791,-2840,-2908,-2966,-2994,
+-3001,-3007,-3027,-3057,-3077,-3073,-3046,-3015,-3005,-3032,-3090,-3155,-3203,-3226,-3235,-3243,-3250,-3248,-3228,-3202,-3184,
+-3186,-3203,-3226,-3258,-3307,-3379,-3459,-3531,-3588,-3639,-3699,-3768,-3831,-3871,-3889,-3900,-3913,-3928,-3944,-3973,-4037,
+-4147,-4287,-4417,-4504,-4545,-4560,-4577,-4608,-4647,-4680,-4701,-4707,-4699,-4681,-4660,-4645,-4641,-4645,-4648,-4644,-4631,
+-4612,-4590,-4565,-4538,-4514,-4496,-4484,-4472,-4451,-4417,-4376,-4335,-4298,-4263,-4222,-4174,-4118,-4062,-4010,-3963,-3924,
+-3889,-3857,-3825,-3793,-3763,-3734,-3705,-3675,-3640,-3602,-3560,-3513,-3460,-3404,-3354,-3314,-3286,-3261,-3232,-3196,-3162,
+-3134,-3112,-3091,-3069,-3050,-3036,-3022,-2994,-2943,-2875,-2808,-2757,-2724,-2696,-2659,-2607,-2545,-2481,-2418,-2355,-2288,
+-2218,-2147,-2074,-2000,-1926,-1855,-1790,-1727,-1660,-1587,-1512,-1440,-1369,-1282,-1168,-1033,-900,-794,-721,-667,-610,
+-539,-459,-380,-304,-227,-146,-61,20,100,182,272,370,469,563,650,733,814,895,978,1064,1154,
+1246,1338,1425,1509,1592,1679,1769,1859,1946,2032,2120,2213,2309,2401,2486,2566,2647,2733,2826,2923,3016,
+3103,3189,3276,3366,3455,3537,3609,3672,3731,3787,3837,3878,3910,3938,3967,4001,4036,4069,4096,4117,4135,
+4155,4179,4207,4237,4265,4287,4302,4316,4335,4361,4386,4398,4392,4375,4365,4376,4404,4436,4458,4470,4483,
+4499,4508,4495,4455,4404,4359,4323,4289,4246,4194,4148,4120,4110,4108,4107,4104,4102,4098,4087,4069,4047,
+4029,4019,4014,4009,4001,3991,3985,3986,3996,4013,4033,4054,4078,4106,4140,4177,4211,4241,4268,4301,4354,
+4437,4545,4657,4743,4786,4787,4762,4727,4687,4647,4613,4595,4591,4591,4580,4563,4559,4578,4610,4630,4627,
+4612,4602,4592,4555,4474,4367,4275,4229,4221,4217,4190,4136,4071,4014,3974,3960,3975,4010,4044,4059,4055,
+4047,4047,4050,4041,4020,4006,4023,4078,4162,4265,4393,4552,4728,4883,4981,5018,5021,5024,5040,5059,5070,
+5075,5083,5094,5097,5082,5051,5018,4992,4969,4959,4911,4858,4811,4774,4740,4698,4645,4587,4531,4475,4417,
+4359,4301,4242,4170,4079,3968,3848,3728,3608,3485,3362,3251,3166,3114,3094,3103,3134,3181,3234,3282,3321,
+3350,3372,3392,3412,3436,3464,3492,3513,3518,3507,3488,3471,3463,3463,3464,3463,3458,3451,3442,3426,3401,
+3368,3335,3310,3297,3296,3306,3321,3334,3331,3301,3239,3158,3071,2993,2927,2873,2835,2811,2794,2772,2737,
+2688,2635,2582,2529,2474,2413,2341,2252,2138,2002,1860,1727,1608,1494,1368,1229,1092,987,939,951,1006,
+1074,1136,1188,1237,1279,1287,1230,1097,911,719,560,446,363,289,219,168,157,196,272,355,423,
+473,514,552,581,598,617,664,759,895,1046,1196,1349,1517,1689,1832,1916,1937,1918,1884,1847,1801,
+1750,1715,1732,1837,2039,2304,2557,2721,2759,2702,2617,2555,2515,2463,2376,2265,2160,2079,2015,1957,1903,
+1853,1806,1752,1684,1605,1518,1426,1331,1240,1158,1078,984,872,751,639,536,429,314,213,161,173,
+232,315,414,534,666,773,823,816,792,787,806,827,833,828,827,830,822,786,723,649,574,
+500,413,304,175,44,-63,-132,-164,-183,-220,-291,-392,-502,-602,-682,-742,-791,-834,-876,-914,-947,
+-982,-1024,-1072,-1114,-1140,-1157,-1185,-1238,-1302,-1347,-1360,-1365,-1403,-1490,-1598,-1678,-1707,-1707,-1727,-1796,-1905,
+-2014,-2091,-2126,-2133,-2127,-2115,-2094,-2063,-2033,-2018,-2023,-2041,-2055,-2058,-2058,-2065,-2083,-2102,-2115,-2124,-2140,
+-2166,-2192,-2207,-2212,-2217,-2234,-2265,-2309,-2370,-2455,-2569,-2708,-2869,-3052,-3255,-3466,-3658,-3810,-3926,-4038,-4167,
+-4306,-4417,-4468,-4456,-4404,-4331,-4231,-4093,-3924,-3761,-3643,-3572,-3515,-3419,-3260,-3054,-2849,-2693,-2606,-2572,-2557,
+-2526,-2475,-2415,-2365,-2321,-2272,-2212,-2160,-2147,-2189,-2274,-2369,-2449,-2507,-2550,-2583,-2605,-2619,-2633,-2661,-2711,
+-2780,-2858,-2935,-3006,-3067,-3117,-3159,-3193,-3222,-3248,-3276,-3305,-3335,-3366,-3394,-3422,-3451,-3484,-3521,-3557,-3593,
+-3627,-3657,-3683,-3709,-3738,-3775,-3817,-3855,-3882,-3897,-3903,-3909,-3922,-3945,-3976,-4009,-4037,-4057,-4072,-4088,-4107,
+-4126,-4143,-4158,-4169,-4172,-4166,-4155,-4150,-4155,-4167,-4175,-4176,-4173,-4168,-4157,-4136,-4108,-4084,-4073,-4068,-4057,
+-4034,-4007,-3987,-3970,-3944,-3897,-3835,-3775,-3733,-3714,-3713,-3721,-3728,-3726,-3711,-3687,-3665,-3659,-3667,-3682,-3687,
+-3678,-3661,-3652,-3660,-3686,-3719,-3747,-3776,-3815,-3868,-3916,-3927,-3885,-3807,-3732,-3693,-3685,-3684,-3673,-3655,-3648,
+-3659,-3675,-3670,-3627,-3544,-3429,-3296,-3160,-3033,-2919,-2812,-2704,-2594,-2495,-2418,-2368,-2335,-2298,-2243,-2169,-2091,
+-2025,-1977,-1936,-1888,-1820,-1733,-1635,-1531,-1426,-1321,-1219,-1120,-1020,-915,-805,-693,-582,-471,-360,-251,-152,
+-63,23,117,216,312,398,479,565,657,747,823,886,947,1015,1092,1174,1258,1343,1431,1519,1607,
+1693,1775,1852,1919,1974,2025,2075,2131,2194,2264,2339,2415,2487,2553,2617,2681,2741,2792,2832,2866,2903,
+2945,2984,3014,3034,3053,3076,3103,3131,3164,3201,3238,3270,3291,3309,3333,3364,3398,3428,3458,3494,3535,
+3568,3581,3582,3600,3660,3761,3865,3922,3913,3860,3809,3792,3808,3828,3835,3833,3842,3875,3922,3958,3957,
+3893,3755,3540,3253,2899,2485,2026,1571,1211,1044,1115,1375,1711,2007,2211,2342,2440,2524,2582,2595,2563,
+2506,2449,2402,2364,2326,2285,2238,2188,2139,2092,2048,2005,1963,1915,1859,1795,1731,1678,1641,1614,1584,
+1542,1488,1427,1364,1296,1226,1157,1095,1041,989,935,879,828,788,757,726,687,640,595,558,528,
+500,469,439,416,398,377,344,302,263,235,214,185,144,100,63,38,14,-15,-50,-81,-107,
+-137,-177,-227,-282,-337,-392,-449,-504,-553,-598,-644,-694,-742,-781,-809,-832,-852,-868,-879,-888,-899,
+-911,-920,-925,-930,-938,-945,-946,-942,-942,-953,-968,-979,-991,-1020,-1068,-1119,-1148,-1161,-1190,-1241,-1265,
+-1183,-976,-738,-620,-707,-941,-1166,-1254,-1193,-1068,-969,-922,-905,-894,-888,-895,-910,-922,-929,-941,-965,
+-989,-995,-977,-948,-924,-912,-908,-906,-904,-904,-906,-910,-919,-933,-950,-963,-972,-981,-995,-1006,-1001,
+-977,-949,-938,-950,-968,-968,-944,-920,-928,-982,-1064,-1138,-1172,-1167,-1148,-1145,-1166,-1200,-1225,-1235,-1237,
+-1245,-1258,-1266,-1264,-1258,-1257,-1267,-1280,-1287,-1289,-1291,-1295,-1297,-1294,-1289,-1289,-1294,-1298,-1297,-1291,-1286,
+-1283,-1278,-1269,-1260,-1255,-1258,-1263,-1264,-1259,-1253,-1249,-1248,-1249,-1253,-1259,-1265,-1273,-1284,-1300,-1316,-1326,
+-1330,-1334,-1345,-1363,-1382,-1394,-1400,-1405,-1414,-1426,-1440,-1455,-1471,-1488,-1501,-1510,-1517,-1524,-1532,-1541,-1550,
+-1561,-1575,-1588,-1598,-1602,-1605,-1610,-1617,-1626,-1640,-1657,-1675,-1690,-1703,-1719,-1745,-1777,-1808,-1835,-1859,-1888,
+-1919,-1948,-1971,-1991,-2013,-2038,-2065,-2091,-2119,-2149,-2177,-2200,-2220,-2239,-2260,-2279,-2292,-2303,-2321,-2351,-2387,
+-2420,-2448,-2475,-2504,-2534,-2564,-2593,-2623,-2655,-2686,-2711,-2732,-2756,-2786,-2822,-2859,-2894,-2926,-2953,-2976,-2997,
+-3021,-3050,-3082,-3112,-3138,-3164,-3189,-3212,-3232,-3249,-3269,-3292,-3315,-3334,-3350,-3367,-3388,-3412,-3439,-3469,-3504,
+-3538,-3566,-3588,-3610,-3644,-3688,-3735,-3775,-3806,-3830,-3851,-3869,-3883,-3898,-3918,-3941,-3962,-3978,-3993,-4010,-4028,
+-4042,-4049,-4050,-4053,-4060,-4070,-4078,-4084,-4090,-4098,-4105,-4112,-4116,-4121,-4124,-4126,-4126,-4126,-4126,-4127,-4125,
+-4123,-4121,-4121,-4120,-4113,-4098,-4081,-4068,-4061,-4056,-4044,-4028,-4011,-3999,-3993,-3988,-3975,-3946,-3897,-3831,-3762,
+-3703,-3659,-3614,-3551,-3471,-3397,-3352,-3337,-3331,-3312,-3282,-3259,-3249,-3236,-3202,-3152,-3115,-3119,-3157,-3198,-3214,
+-3203,-3184,-3170,-3158,-3138,-3106,-3066,-3020,-2967,-2903,-2837,-2779,-2735,-2698,-2655,-2597,-2530,-2471,-2437,-2432,-2445,
+-2458,-2455,-2433,-2396,-2353,-2308,-2262,-2216,-2176,-2153,-2155,-2184,-2228,-2255,-2238,-2171,-2084,-2024,-2025,-2082,-2166,
+-2248,-2316,-2370,-2405,-2414,-2400,-2390,-2411,-2469,-2539,-2595,-2634,-2673,-2728,-2796,-2857,-2899,-2927,-2950,-2970,-2977,
+-2960,-2916,-2852,-2783,-2724,-2685,-2667,-2664,-2663,-2657,-2649,-2648,-2671,-2732,-2837,-2971,-3104,-3201,-3243,-3232,-3190,
+-3138,-3084,-3032,-2981,-2932,-2887,-2841,-2798,-2764,-2748,-2751,-2763,-2775,-2783,-2789,-2793,-2793,-2787,-2782,-2783,-2791,
+-2803,-2816,-2828,-2836,-2830,-2803,-2763,-2739,-2761,-2831,-2918,-2985,-3011,-3009,-3006,-3018,-3043,-3064,-3070,-3063,-3056,
+-3062,-3090,-3132,-3173,-3195,-3194,-3182,-3174,-3176,-3183,-3188,-3190,-3196,-3210,-3228,-3253,-3288,-3341,-3411,-3486,-3552,
+-3610,-3669,-3737,-3807,-3862,-3892,-3902,-3905,-3910,-3921,-3945,-4005,-4116,-4270,-4429,-4548,-4605,-4618,-4618,-4632,-4662,
+-4696,-4725,-4744,-4752,-4749,-4736,-4719,-4706,-4702,-4703,-4704,-4699,-4687,-4669,-4644,-4613,-4582,-4556,-4537,-4521,-4501,
+-4472,-4439,-4405,-4373,-4341,-4302,-4255,-4202,-4145,-4090,-4039,-3994,-3954,-3917,-3879,-3840,-3801,-3769,-3745,-3723,-3697,
+-3664,-3626,-3586,-3544,-3498,-3447,-3399,-3361,-3335,-3310,-3279,-3243,-3210,-3187,-3167,-3142,-3108,-3074,-3051,-3037,-3018,
+-2981,-2925,-2864,-2817,-2785,-2758,-2720,-2666,-2601,-2535,-2471,-2406,-2336,-2262,-2190,-2121,-2052,-1982,-1911,-1841,-1769,
+-1693,-1610,-1529,-1456,-1392,-1320,-1222,-1098,-967,-856,-777,-719,-661,-591,-513,-436,-363,-289,-206,-116,-25,
+65,156,249,345,438,525,607,688,770,852,936,1025,1117,1211,1304,1392,1480,1569,1661,1751,1835,
+1912,1991,2076,2169,2267,2363,2453,2538,2622,2708,2799,2896,2994,3090,3180,3265,3346,3426,3502,3572,3635,
+3691,3740,3780,3811,3836,3862,3892,3925,3958,3988,4015,4041,4066,4090,4110,4129,4151,4174,4195,4211,4226,
+4249,4283,4325,4359,4371,4359,4337,4324,4331,4354,4379,4397,4405,4407,4402,4387,4359,4322,4282,4241,4196,
+4145,4091,4043,4009,3989,3980,3979,3984,3991,3995,3991,3978,3960,3942,3927,3917,3912,3913,3918,3926,3938,
+3953,3973,3997,4023,4052,4086,4128,4171,4207,4233,4251,4272,4313,4384,4479,4577,4651,4684,4680,4657,4632,
+4609,4585,4561,4545,4540,4536,4519,4488,4457,4442,4438,4430,4410,4389,4378,4371,4344,4283,4203,4142,4119,
+4117,4098,4042,3959,3883,3841,3841,3878,3936,3999,4048,4078,4098,4121,4149,4164,4152,4118,4086,4081,4107,
+4157,4237,4364,4543,4744,4913,5007,5032,5031,5042,5074,5107,5124,5126,5126,5128,5122,5100,5065,5030,4996,
+4959,4907,4844,4775,4719,4682,4658,4632,4596,4550,4497,4435,4366,4297,4231,4164,4083,3979,3858,3736,3624,
+3519,3409,3293,3182,3091,3029,2995,2981,2982,2996,3022,3056,3097,3141,3188,3233,3276,3317,3356,3391,3417,
+3429,3428,3419,3408,3401,3399,3399,3396,3389,3380,3370,3358,3340,3315,3288,3266,3254,3251,3253,3257,3254,
+3237,3200,3145,3084,3027,2973,2920,2867,2824,2799,2786,2769,2733,2678,2619,2569,2533,2503,2470,2424,2357,
+2265,2150,2023,1900,1784,1670,1548,1412,1265,1125,1012,940,912,920,949,989,1030,1058,1048,979,850,
+685,521,383,276,195,131,88,75,102,170,266,366,451,517,570,618,657,684,713,772,876,
+1006,1121,1199,1253,1316,1401,1486,1539,1559,1570,1596,1635,1663,1668,1678,1741,1898,2148,2439,2688,2820,
+2818,2725,2612,2526,2464,2389,2284,2165,2066,1999,1955,1913,1869,1824,1777,1719,1646,1561,1469,1374,1275,
+1178,1089,1002,905,788,661,542,434,326,212,113,60,68,122,201,300,424,559,665,703,678,
+635,619,639,668,682,684,690,707,720,709,672,625,581,541,487,400,276,134,6,-77,-116,
+-135,-167,-232,-328,-436,-535,-614,-671,-713,-751,-794,-843,-894,-943,-990,-1034,-1071,-1098,-1121,-1155,-1206,
+-1261,-1293,-1289,-1273,-1289,-1360,-1472,-1579,-1650,-1692,-1734,-1803,-1895,-1987,-2059,-2105,-2131,-2139,-2130,-2101,-2059,
+-2020,-1998,-1996,-2003,-2011,-2019,-2031,-2048,-2064,-2074,-2085,-2108,-2146,-2187,-2213,-2221,-2218,-2218,-2226,-2246,-2284,
+-2353,-2454,-2575,-2698,-2822,-2970,-3161,-3383,-3599,-3775,-3916,-4055,-4221,-4403,-4559,-4648,-4659,-4610,-4525,-4415,-4282,
+-4129,-3968,-3815,-3680,-3563,-3450,-3320,-3155,-2958,-2759,-2601,-2512,-2484,-2484,-2477,-2453,-2418,-2372,-2313,-2246,-2195,
+-2189,-2239,-2321,-2399,-2454,-2494,-2532,-2568,-2591,-2597,-2599,-2622,-2676,-2754,-2840,-2920,-2987,-3041,-3084,-3119,-3149,
+-3178,-3208,-3241,-3278,-3318,-3355,-3384,-3404,-3421,-3444,-3476,-3514,-3552,-3587,-3617,-3645,-3674,-3709,-3751,-3792,-3825,
+-3846,-3856,-3862,-3870,-3882,-3901,-3928,-3963,-3999,-4030,-4051,-4066,-4080,-4094,-4108,-4118,-4123,-4122,-4118,-4112,-4110,
+-4112,-4118,-4125,-4134,-4143,-4148,-4140,-4115,-4082,-4053,-4036,-4022,-4000,-3967,-3935,-3915,-3906,-3892,-3860,-3810,-3757,
+-3711,-3678,-3659,-3652,-3652,-3653,-3644,-3624,-3605,-3600,-3611,-3629,-3637,-3627,-3606,-3592,-3602,-3635,-3673,-3704,-3730,
+-3769,-3827,-3885,-3908,-3876,-3807,-3740,-3701,-3685,-3668,-3639,-3612,-3606,-3625,-3648,-3642,-3588,-3484,-3342,-3184,-3032,
+-2905,-2803,-2715,-2627,-2538,-2458,-2400,-2362,-2328,-2282,-2218,-2143,-2071,-2013,-1966,-1922,-1868,-1801,-1719,-1628,-1530,
+-1429,-1327,-1228,-1130,-1028,-920,-807,-694,-580,-467,-354,-249,-158,-76,10,108,212,310,394,476,565,
+661,749,820,878,940,1015,1098,1183,1266,1350,1439,1529,1618,1705,1790,1870,1942,2005,2065,2125,2185,
+2244,2304,2367,2434,2501,2565,2630,2695,2754,2801,2834,2866,2907,2958,3005,3037,3057,3075,3101,3134,3167,
+3199,3228,3248,3254,3249,3248,3268,3312,3368,3428,3488,3549,3600,3623,3615,3603,3635,3734,3871,3977,3995,
+3926,3824,3753,3734,3745,3755,3754,3760,3793,3852,3919,3971,3994,3973,3889,3726,3473,3129,2692,2178,1648,
+1216,1004,1071,1359,1727,2042,2251,2384,2493,2596,2669,2686,2644,2573,2503,2453,2418,2386,2343,2286,2222,
+2160,2109,2067,2030,1992,1949,1896,1831,1760,1697,1652,1625,1601,1564,1514,1456,1397,1337,1270,1200,1133,
+1074,1020,963,903,848,805,775,747,712,665,613,566,528,496,464,433,410,394,381,360,333,
+305,284,265,238,200,160,129,107,81,44,0,-40,-72,-106,-153,-212,-274,-330,-382,-436,-492,
+-547,-596,-642,-690,-736,-774,-801,-819,-835,-850,-867,-883,-899,-911,-918,-922,-930,-941,-950,-949,-942,
+-941,-951,-964,-971,-977,-1000,-1047,-1104,-1147,-1177,-1215,-1267,-1289,-1218,-1045,-855,-775,-866,-1062,-1224,-1254,
+-1167,-1047,-963,-920,-885,-847,-822,-830,-860,-889,-903,-912,-927,-946,-953,-943,-927,-914,-905,-895,-881,
+-870,-865,-863,-861,-866,-886,-921,-959,-987,-1005,-1018,-1024,-1012,-979,-940,-923,-943,-981,-1003,-990,-957,
+-944,-976,-1046,-1116,-1150,-1143,-1120,-1114,-1139,-1181,-1215,-1228,-1228,-1231,-1241,-1251,-1251,-1243,-1239,-1244,-1255,
+-1264,-1269,-1274,-1281,-1284,-1282,-1276,-1273,-1275,-1278,-1275,-1268,-1261,-1256,-1251,-1240,-1226,-1217,-1217,-1223,-1228,
+-1226,-1221,-1217,-1218,-1226,-1236,-1245,-1252,-1258,-1268,-1282,-1298,-1309,-1314,-1319,-1331,-1347,-1364,-1374,-1380,-1387,
+-1397,-1410,-1424,-1439,-1457,-1475,-1488,-1496,-1501,-1507,-1515,-1522,-1530,-1543,-1558,-1572,-1582,-1588,-1594,-1601,-1607,
+-1612,-1620,-1635,-1654,-1670,-1681,-1693,-1713,-1743,-1777,-1807,-1836,-1865,-1897,-1927,-1951,-1972,-1996,-2021,-2047,-2070,
+-2096,-2126,-2158,-2185,-2207,-2226,-2247,-2269,-2288,-2306,-2326,-2352,-2381,-2409,-2436,-2464,-2493,-2522,-2550,-2576,-2605,
+-2636,-2665,-2691,-2717,-2747,-2780,-2815,-2849,-2881,-2911,-2936,-2956,-2973,-2996,-3025,-3058,-3088,-3112,-3135,-3160,-3184,
+-3206,-3225,-3246,-3270,-3295,-3318,-3338,-3360,-3384,-3412,-3441,-3473,-3506,-3535,-3556,-3572,-3592,-3624,-3666,-3710,-3748,
+-3781,-3811,-3836,-3856,-3872,-3890,-3914,-3940,-3962,-3976,-3989,-4006,-4027,-4045,-4055,-4058,-4061,-4066,-4074,-4082,-4089,
+-4095,-4102,-4108,-4112,-4116,-4120,-4124,-4126,-4126,-4127,-4130,-4134,-4136,-4134,-4132,-4132,-4134,-4132,-4122,-4109,-4098,
+-4093,-4088,-4079,-4061,-4039,-4015,-3995,-3982,-3977,-3971,-3951,-3904,-3835,-3764,-3712,-3682,-3660,-3631,-3597,-3568,-3545,
+-3511,-3454,-3379,-3312,-3267,-3235,-3195,-3145,-3108,-3112,-3155,-3209,-3243,-3250,-3240,-3224,-3202,-3171,-3136,-3105,-3079,
+-3047,-2997,-2934,-2872,-2826,-2796,-2767,-2721,-2655,-2580,-2516,-2477,-2459,-2446,-2424,-2390,-2354,-2324,-2300,-2274,-2241,
+-2209,-2189,-2192,-2218,-2249,-2265,-2245,-2187,-2113,-2059,-2054,-2103,-2185,-2275,-2353,-2405,-2425,-2410,-2377,-2358,-2377,
+-2434,-2504,-2561,-2603,-2648,-2708,-2777,-2838,-2882,-2913,-2938,-2962,-2980,-2986,-2975,-2944,-2892,-2825,-2758,-2707,-2677,
+-2665,-2660,-2656,-2656,-2673,-2723,-2811,-2928,-3043,-3121,-3142,-3112,-3057,-3003,-2960,-2925,-2893,-2862,-2831,-2799,-2765,
+-2736,-2719,-2719,-2731,-2749,-2766,-2778,-2781,-2773,-2759,-2749,-2752,-2769,-2791,-2814,-2834,-2844,-2836,-2804,-2763,-2743,
+-2772,-2848,-2937,-3000,-3020,-3012,-3003,-3011,-3032,-3057,-3076,-3087,-3092,-3098,-3107,-3119,-3129,-3130,-3121,-3108,-3105,
+-3117,-3142,-3169,-3195,-3217,-3238,-3259,-3285,-3321,-3372,-3432,-3494,-3553,-3615,-3687,-3769,-3846,-3901,-3929,-3937,-3936,
+-3934,-3942,-3979,-4069,-4216,-4393,-4549,-4645,-4678,-4679,-4682,-4701,-4729,-4754,-4772,-4785,-4796,-4800,-4797,-4789,-4780,
+-4772,-4763,-4753,-4741,-4727,-4708,-4683,-4651,-4620,-4595,-4574,-4549,-4518,-4484,-4453,-4429,-4405,-4373,-4331,-4280,-4227,
+-4176,-4128,-4079,-4032,-3986,-3942,-3897,-3853,-3813,-3783,-3762,-3742,-3712,-3671,-3626,-3586,-3551,-3518,-3481,-3443,-3411,
+-3386,-3361,-3331,-3299,-3272,-3254,-3236,-3204,-3156,-3101,-3058,-3033,-3018,-2996,-2959,-2915,-2876,-2846,-2817,-2779,-2725,
+-2661,-2593,-2528,-2461,-2391,-2318,-2245,-2175,-2107,-2039,-1970,-1899,-1825,-1743,-1651,-1559,-1478,-1414,-1354,-1281,-1185,
+-1075,-971,-886,-813,-737,-652,-563,-479,-401,-324,-239,-149,-57,32,121,212,304,393,479,562,645,
+729,814,899,987,1078,1171,1261,1349,1439,1533,1630,1721,1803,1879,1958,2044,2135,2228,2319,2410,2503,
+2595,2684,2773,2867,2967,3067,3158,3236,3305,3375,3447,3517,3579,3629,3668,3699,3726,3752,3782,3817,3853,
+3886,3916,3945,3977,4009,4038,4059,4076,4092,4109,4124,4134,4143,4161,4196,4245,4295,4326,4324,4294,4259,
+4240,4251,4281,4311,4323,4314,4292,4271,4253,4235,4209,4170,4119,4061,4007,3960,3924,3898,3883,3881,3888,
+3899,3904,3899,3887,3871,3855,3839,3827,3823,3830,3844,3860,3877,3897,3923,3957,3994,4034,4078,4123,4166,
+4200,4223,4240,4261,4292,4339,4400,4465,4520,4554,4569,4574,4579,4580,4569,4545,4517,4495,4473,4441,4395,
+4346,4312,4294,4280,4259,4236,4218,4204,4179,4135,4086,4054,4041,4024,3970,3876,3773,3707,3703,3761,3858,
+3967,4064,4137,4186,4228,4273,4317,4340,4332,4304,4283,4285,4307,4341,4400,4508,4671,4854,4998,5066,5073,
+5066,5080,5111,5136,5138,5127,5117,5111,5099,5072,5035,4996,4957,4907,4829,4766,4701,4650,4620,4602,4580,
+4547,4499,4439,4366,4287,4211,4143,4078,3998,3894,3772,3650,3538,3436,3335,3234,3142,3069,3017,2980,2951,
+2929,2918,2919,2933,2960,2998,3044,3096,3152,3210,3265,3311,3346,3366,3375,3376,3372,3365,3359,3352,3343,
+3332,3320,3309,3298,3284,3265,3243,3222,3208,3198,3190,3179,3163,3136,3097,3052,3013,2982,2952,2910,2856,
+2807,2780,2773,2763,2728,2669,2609,2571,2558,2557,2547,2513,2453,2371,2273,2168,2063,1957,1851,1738,1613,
+1471,1315,1161,1032,944,901,892,901,913,913,882,810,698,565,432,312,209,128,77,62,85,
+139,219,318,422,516,591,653,707,753,792,832,897,998,1115,1209,1258,1280,1311,1362,1410,1429,
+1422,1426,1468,1535,1593,1630,1678,1792,2000,2279,2561,2763,2837,2788,2671,2553,2471,2410,2334,2227,2113,
+2025,1977,1950,1919,1875,1822,1764,1697,1618,1532,1443,1349,1247,1141,1038,937,828,703,569,446,339,
+237,133,40,-13,-14,25,87,171,285,418,527,569,544,494,470,485,517,539,548,559,582,
+609,624,621,605,590,576,550,492,391,256,118,9,-55,-93,-129,-184,-259,-343,-425,-494,-547,
+-589,-629,-681,-747,-817,-880,-929,-970,-1007,-1041,-1072,-1108,-1153,-1201,-1233,-1235,-1221,-1221,-1264,-1350,-1455,
+-1554,-1639,-1719,-1803,-1890,-1970,-2037,-2088,-2122,-2131,-2111,-2066,-2017,-1984,-1976,-1983,-1989,-1989,-1993,-2009,-2032,
+-2051,-2064,-2086,-2130,-2194,-2249,-2271,-2260,-2232,-2210,-2203,-2216,-2261,-2349,-2469,-2590,-2689,-2776,-2893,-3067,-3284,
+-3498,-3673,-3816,-3969,-4162,-4385,-4590,-4728,-4776,-4746,-4662,-4553,-4430,-4294,-4135,-3950,-3755,-3580,-3449,-3349,-3233,
+-3063,-2845,-2633,-2488,-2433,-2439,-2457,-2458,-2437,-2398,-2343,-2281,-2238,-2243,-2296,-2366,-2418,-2444,-2469,-2515,-2575,
+-2622,-2639,-2640,-2654,-2700,-2770,-2844,-2907,-2955,-2995,-3033,-3071,-3110,-3149,-3188,-3226,-3266,-3310,-3352,-3383,-3403,
+-3417,-3438,-3469,-3507,-3543,-3575,-3603,-3632,-3662,-3695,-3727,-3757,-3779,-3795,-3810,-3828,-3848,-3866,-3879,-3893,-3916,
+-3947,-3980,-4007,-4026,-4042,-4057,-4071,-4080,-4083,-4083,-4082,-4081,-4079,-4075,-4072,-4073,-4084,-4105,-4123,-4127,-4109,
+-4078,-4047,-4024,-4000,-3966,-3922,-3880,-3852,-3837,-3824,-3802,-3772,-3739,-3705,-3670,-3636,-3608,-3590,-3579,-3566,-3549,
+-3538,-3544,-3570,-3601,-3614,-3599,-3566,-3543,-3552,-3592,-3642,-3679,-3706,-3741,-3797,-3860,-3892,-3874,-3816,-3754,-3709,
+-3674,-3631,-3576,-3525,-3499,-3495,-3493,-3468,-3410,-3318,-3200,-3067,-2939,-2829,-2742,-2665,-2587,-2507,-2433,-2376,-2332,
+-2289,-2239,-2180,-2121,-2068,-2021,-1975,-1922,-1860,-1788,-1711,-1627,-1536,-1437,-1334,-1232,-1131,-1028,-918,-802,-687,
+-574,-462,-354,-252,-162,-78,12,113,217,311,392,469,553,642,724,792,855,926,1010,1100,1186,
+1270,1356,1446,1535,1622,1706,1791,1874,1952,2025,2099,2173,2243,2303,2357,2411,2469,2530,2589,2649,2709,
+2764,2806,2835,2866,2910,2966,3017,3053,3079,3106,3142,3179,3211,3231,3239,3232,3211,3190,3192,3234,3311,
+3401,3489,3571,3647,3695,3695,3652,3616,3651,3773,3923,4004,3960,3819,3675,3603,3613,3656,3684,3693,3713,
+3767,3843,3914,3967,4004,4027,4014,3930,3746,3447,3024,2485,1893,1372,1073,1079,1343,1718,2051,2276,2416,
+2525,2622,2690,2705,2669,2607,2549,2508,2479,2447,2400,2336,2266,2200,2147,2101,2054,2003,1949,1891,1828,
+1761,1701,1661,1637,1616,1580,1530,1475,1423,1371,1311,1243,1174,1112,1056,999,937,877,829,794,766,
+733,689,636,584,540,503,471,443,419,404,394,382,366,348,331,313,287,252,218,191,169,
+139,93,36,-14,-53,-91,-142,-207,-272,-328,-375,-425,-483,-544,-600,-647,-690,-730,-765,-789,-804,
+-816,-830,-849,-871,-890,-903,-910,-917,-929,-945,-956,-955,-947,-942,-948,-956,-958,-960,-978,-1021,-1078,
+-1130,-1175,-1220,-1262,-1260,-1171,-1003,-842,-797,-902,-1082,-1211,-1217,-1131,-1035,-978,-947,-903,-841,-795,-791,
+-821,-853,-868,-872,-880,-892,-899,-896,-892,-892,-888,-873,-851,-832,-824,-820,-815,-819,-846,-900,-961,
+-1005,-1026,-1032,-1034,-1024,-994,-955,-938,-963,-1015,-1055,-1049,-1003,-958,-953,-999,-1067,-1119,-1135,-1124,-1116,
+-1130,-1161,-1192,-1206,-1207,-1207,-1213,-1223,-1228,-1227,-1225,-1228,-1235,-1242,-1247,-1255,-1264,-1270,-1267,-1258,-1252,
+-1251,-1250,-1245,-1235,-1227,-1223,-1219,-1210,-1196,-1184,-1182,-1188,-1196,-1199,-1198,-1196,-1200,-1211,-1225,-1237,-1244,
+-1248,-1253,-1263,-1275,-1286,-1294,-1300,-1311,-1324,-1337,-1347,-1357,-1369,-1383,-1396,-1409,-1423,-1440,-1457,-1469,-1475,
+-1480,-1487,-1494,-1502,-1510,-1522,-1537,-1553,-1564,-1572,-1580,-1589,-1596,-1599,-1601,-1611,-1628,-1646,-1659,-1670,-1688,
+-1714,-1745,-1775,-1804,-1833,-1864,-1893,-1917,-1939,-1964,-1992,-2019,-2043,-2069,-2099,-2134,-2166,-2192,-2214,-2237,-2263,
+-2288,-2310,-2331,-2351,-2373,-2397,-2422,-2451,-2481,-2510,-2536,-2563,-2591,-2621,-2649,-2676,-2706,-2740,-2776,-2809,-2838,
+-2864,-2889,-2912,-2931,-2948,-2971,-3002,-3034,-3061,-3083,-3104,-3129,-3155,-3178,-3199,-3221,-3247,-3276,-3303,-3330,-3359,
+-3390,-3421,-3450,-3480,-3508,-3532,-3549,-3563,-3583,-3614,-3652,-3688,-3721,-3752,-3785,-3815,-3838,-3857,-3878,-3905,-3933,
+-3955,-3969,-3979,-3994,-4014,-4033,-4046,-4052,-4055,-4058,-4062,-4069,-4077,-4088,-4097,-4103,-4106,-4110,-4116,-4120,-4122,
+-4122,-4124,-4130,-4138,-4142,-4143,-4142,-4143,-4146,-4147,-4143,-4137,-4130,-4126,-4119,-4106,-4087,-4063,-4036,-4007,-3983,
+-3971,-3973,-3977,-3959,-3905,-3828,-3760,-3725,-3723,-3733,-3739,-3735,-3717,-3674,-3601,-3506,-3415,-3346,-3292,-3238,-3185,
+-3151,-3157,-3197,-3242,-3267,-3271,-3265,-3259,-3244,-3213,-3171,-3135,-3111,-3092,-3062,-3019,-2971,-2934,-2908,-2883,-2844,
+-2785,-2711,-2638,-2579,-2531,-2485,-2432,-2378,-2339,-2322,-2316,-2306,-2281,-2251,-2234,-2236,-2255,-2277,-2286,-2272,-2228,
+-2164,-2106,-2085,-2118,-2198,-2294,-2375,-2419,-2422,-2394,-2358,-2340,-2356,-2402,-2460,-2515,-2565,-2617,-2676,-2733,-2780,
+-2816,-2849,-2883,-2916,-2945,-2967,-2983,-2985,-2962,-2911,-2843,-2776,-2726,-2695,-2679,-2671,-2671,-2686,-2723,-2785,-2864,
+-2939,-2985,-2988,-2958,-2917,-2885,-2866,-2852,-2837,-2819,-2799,-2778,-2754,-2729,-2710,-2704,-2713,-2732,-2753,-2766,-2765,
+-2751,-2733,-2728,-2744,-2774,-2807,-2832,-2847,-2853,-2847,-2826,-2801,-2795,-2829,-2896,-2967,-3012,-3020,-3006,-2995,-3000,
+-3021,-3048,-3075,-3094,-3101,-3095,-3081,-3066,-3056,-3051,-3051,-3057,-3075,-3105,-3143,-3182,-3216,-3245,-3268,-3291,-3318,
+-3355,-3402,-3453,-3504,-3557,-3623,-3707,-3802,-3888,-3949,-3982,-3992,-3988,-3980,-3987,-4036,-4149,-4314,-4489,-4624,-4696,
+-4718,-4728,-4748,-4777,-4803,-4818,-4826,-4835,-4846,-4854,-4858,-4858,-4854,-4844,-4826,-4805,-4784,-4765,-4745,-4719,-4689,
+-4660,-4635,-4609,-4575,-4535,-4498,-4470,-4448,-4424,-4391,-4348,-4303,-4259,-4216,-4167,-4113,-4056,-4001,-3951,-3904,-3862,
+-3828,-3804,-3786,-3762,-3722,-3667,-3611,-3567,-3541,-3523,-3504,-3478,-3452,-3427,-3403,-3377,-3352,-3331,-3317,-3299,-3263,
+-3204,-3134,-3073,-3031,-3009,-2991,-2970,-2941,-2911,-2883,-2855,-2820,-2772,-2714,-2651,-2586,-2520,-2452,-2381,-2308,-2236,
+-2164,-2094,-2024,-1955,-1884,-1805,-1715,-1619,-1531,-1457,-1394,-1327,-1246,-1152,-1058,-971,-888,-800,-704,-608,-518,
+-436,-355,-270,-183,-95,-10,75,164,254,345,433,520,608,697,785,871,958,1046,1134,1219,1303,
+1391,1484,1580,1672,1758,1843,1931,2023,2115,2201,2286,2377,2476,2576,2667,2750,2837,2932,3030,3117,3186,
+3245,3307,3378,3450,3510,3553,3585,3612,3640,3670,3704,3742,3779,3812,3841,3870,3904,3941,3975,4003,4024,
+4041,4055,4064,4067,4070,4079,4102,4141,4186,4222,4231,4211,4174,4149,4156,4194,4235,4252,4235,4201,4173,
+4163,4162,4151,4118,4064,4004,3950,3906,3871,3844,3828,3825,3829,3832,3826,3811,3792,3776,3762,3750,3741,
+3741,3752,3771,3791,3812,3838,3873,3917,3965,4016,4069,4120,4165,4198,4225,4252,4282,4309,4330,4352,4382,
+4424,4474,4521,4559,4585,4596,4586,4559,4522,4486,4446,4391,4322,4254,4210,4194,4192,4185,4168,4147,4124,
+4096,4062,4031,4009,3988,3941,3853,3741,3651,3627,3682,3799,3947,4095,4222,4314,4375,4421,4467,4513,4544,
+4553,4553,4566,4603,4652,4699,4754,4838,4955,5075,5153,5171,5153,5138,5144,5158,5155,5131,5102,5084,5072,
+5052,5014,4967,4922,4879,4829,4750,4694,4638,4594,4563,4534,4498,4451,4397,4336,4268,4194,4123,4059,3994,
+3918,3822,3709,3593,3482,3377,3278,3187,3112,3056,3014,2978,2946,2919,2903,2898,2902,2914,2934,2963,3006,
+3063,3131,3201,3261,3304,3330,3345,3352,3352,3345,3333,3318,3302,3285,3269,3257,3248,3237,3221,3201,3181,
+3163,3147,3131,3112,3090,3061,3024,2984,2952,2933,2914,2879,2828,2778,2753,2752,2749,2721,2667,2617,2596,
+2607,2623,2617,2576,2508,2429,2354,2284,2213,2134,2045,1948,1837,1704,1547,1376,1216,1087,998,939,899,
+867,835,792,725,635,530,424,323,233,164,130,137,178,238,311,397,494,587,666,729,786,
+840,892,947,1018,1112,1214,1293,1337,1364,1403,1455,1489,1482,1447,1430,1459,1517,1572,1620,1701,1861,
+2104,2380,2614,2747,2763,2689,2579,2482,2419,2372,2306,2210,2108,2032,1993,1970,1937,1883,1817,1746,1671,
+1589,1505,1420,1328,1223,1108,992,879,759,624,483,353,244,146,48,-40,-96,-109,-87,-47,13,
+107,229,344,403,396,355,325,329,356,382,401,423,457,503,546,574,582,577,567,553,525,
+465,367,247,131,41,-21,-72,-123,-179,-239,-300,-358,-409,-455,-504,-570,-654,-740,-811,-863,-907,
+-952,-999,-1039,-1070,-1101,-1138,-1175,-1200,-1209,-1212,-1230,-1276,-1350,-1443,-1550,-1662,-1773,-1871,-1953,-2019,-2070,
+-2102,-2102,-2066,-2007,-1955,-1937,-1953,-1978,-1988,-1978,-1969,-1978,-2003,-2031,-2059,-2101,-2170,-2253,-2314,-2325,-2290,
+-2236,-2192,-2172,-2185,-2243,-2349,-2483,-2605,-2693,-2768,-2878,-3052,-3271,-3484,-3655,-3796,-3948,-4141,-4369,-4592,-4761,
+-4848,-4852,-4793,-4700,-4595,-4475,-4321,-4119,-3886,-3669,-3510,-3409,-3313,-3163,-2947,-2715,-2536,-2446,-2423,-2422,-2415,
+-2396,-2368,-2328,-2279,-2244,-2251,-2303,-2370,-2413,-2431,-2456,-2517,-2606,-2684,-2720,-2722,-2725,-2752,-2801,-2853,-2897,
+-2932,-2965,-3002,-3044,-3091,-3139,-3181,-3217,-3248,-3282,-3317,-3347,-3372,-3396,-3426,-3463,-3500,-3531,-3556,-3581,-3610,
+-3639,-3665,-3687,-3707,-3726,-3747,-3774,-3805,-3836,-3856,-3860,-3857,-3858,-3873,-3900,-3930,-3956,-3980,-4004,-4027,-4044,
+-4051,-4052,-4050,-4048,-4046,-4042,-4036,-4035,-4044,-4066,-4091,-4105,-4097,-4073,-4044,-4018,-3990,-3952,-3905,-3857,-3818,
+-3786,-3757,-3729,-3704,-3686,-3668,-3642,-3606,-3567,-3534,-3508,-3487,-3473,-3474,-3501,-3547,-3591,-3605,-3575,-3521,-3479,
+-3484,-3535,-3606,-3662,-3698,-3732,-3784,-3847,-3889,-3886,-3845,-3788,-3735,-3681,-3613,-3535,-3462,-3404,-3360,-3315,-3264,
+-3207,-3146,-3076,-2993,-2901,-2812,-2733,-2658,-2581,-2502,-2428,-2363,-2306,-2252,-2200,-2153,-2113,-2077,-2039,-1990,-1930,
+-1858,-1781,-1703,-1623,-1537,-1439,-1334,-1228,-1125,-1021,-911,-794,-678,-568,-463,-359,-257,-161,-68,25,124,
+223,313,392,468,548,630,704,771,839,919,1009,1102,1191,1279,1369,1461,1547,1625,1700,1778,1858,
+1939,2023,2112,2204,2288,2356,2412,2464,2517,2569,2615,2660,2707,2754,2796,2833,2873,2924,2982,3035,3076,
+3111,3149,3191,3229,3250,3253,3238,3205,3164,3141,3164,3241,3349,3454,3540,3615,3685,3727,3711,3644,3584,
+3605,3721,3861,3918,3839,3671,3522,3471,3512,3581,3623,3643,3678,3750,3838,3911,3962,4011,4071,4117,4101,
+3979,3731,3344,2820,2205,1622,1231,1148,1355,1715,2064,2311,2460,2557,2631,2677,2687,2665,2630,2597,2569,
+2539,2500,2447,2380,2311,2248,2192,2134,2067,1991,1916,1848,1788,1733,1688,1660,1644,1625,1589,1537,1483,
+1436,1393,1343,1281,1215,1153,1095,1036,972,910,858,819,788,757,718,669,615,566,525,495,470,
+448,431,420,411,401,387,373,356,333,303,271,242,213,175,119,54,-3,-48,-88,-138,-203,
+-269,-325,-372,-421,-481,-546,-605,-651,-688,-720,-749,-772,-787,-800,-816,-836,-857,-874,-886,-894,-905,
+-921,-939,-950,-950,-942,-936,-937,-941,-943,-948,-967,-1005,-1053,-1099,-1141,-1184,-1216,-1198,-1097,-929,-779,
+-740,-840,-1008,-1129,-1145,-1083,-1017,-986,-970,-932,-869,-812,-791,-802,-819,-826,-828,-837,-850,-857,-857,
+-860,-867,-868,-852,-824,-801,-793,-793,-792,-799,-831,-893,-961,-1005,-1018,-1016,-1019,-1022,-1012,-989,-976,
+-999,-1051,-1095,-1093,-1040,-973,-936,-955,-1018,-1088,-1136,-1149,-1143,-1138,-1146,-1162,-1175,-1180,-1181,-1184,-1190,
+-1198,-1204,-1209,-1214,-1218,-1221,-1224,-1229,-1236,-1241,-1238,-1232,-1226,-1224,-1221,-1213,-1201,-1192,-1190,-1190,-1185,
+-1175,-1164,-1161,-1167,-1176,-1181,-1182,-1181,-1183,-1192,-1205,-1218,-1228,-1232,-1234,-1238,-1244,-1253,-1262,-1271,-1282,
+-1293,-1305,-1315,-1328,-1344,-1361,-1374,-1386,-1399,-1414,-1430,-1441,-1448,-1455,-1465,-1477,-1486,-1493,-1504,-1520,-1536,
+-1548,-1557,-1565,-1575,-1583,-1584,-1582,-1586,-1599,-1616,-1632,-1646,-1664,-1689,-1717,-1744,-1770,-1797,-1826,-1853,-1876,
+-1897,-1922,-1951,-1980,-2009,-2037,-2070,-2107,-2143,-2174,-2201,-2228,-2256,-2283,-2306,-2326,-2344,-2364,-2387,-2415,-2446,
+-2476,-2502,-2527,-2553,-2583,-2614,-2643,-2670,-2700,-2735,-2770,-2799,-2823,-2844,-2865,-2886,-2904,-2924,-2949,-2980,-3010,
+-3033,-3052,-3074,-3100,-3128,-3152,-3173,-3196,-3224,-3254,-3283,-3313,-3345,-3379,-3411,-3440,-3468,-3493,-3516,-3534,-3551,
+-3574,-3604,-3637,-3665,-3690,-3719,-3752,-3786,-3815,-3839,-3864,-3893,-3921,-3942,-3956,-3966,-3980,-3996,-4012,-4026,-4037,
+-4044,-4048,-4049,-4053,-4062,-4076,-4087,-4094,-4099,-4104,-4111,-4117,-4119,-4119,-4121,-4127,-4135,-4141,-4145,-4147,-4150,
+-4153,-4155,-4155,-4153,-4151,-4148,-4138,-4121,-4100,-4081,-4062,-4037,-4006,-3980,-3974,-3986,-3991,-3962,-3894,-3814,-3758,
+-3741,-3753,-3774,-3787,-3785,-3758,-3703,-3627,-3545,-3467,-3391,-3312,-3242,-3208,-3223,-3269,-3306,-3312,-3297,-3286,-3288,
+-3287,-3262,-3214,-3164,-3129,-3111,-3097,-3077,-3051,-3025,-3002,-2977,-2940,-2888,-2826,-2761,-2700,-2640,-2572,-2495,-2422,
+-2374,-2358,-2358,-2351,-2327,-2299,-2283,-2286,-2299,-2313,-2322,-2317,-2285,-2221,-2145,-2096,-2110,-2187,-2291,-2375,-2411,
+-2403,-2370,-2339,-2326,-2338,-2372,-2420,-2475,-2534,-2592,-2644,-2682,-2710,-2739,-2781,-2833,-2884,-2924,-2950,-2969,-2980,
+-2974,-2945,-2895,-2838,-2785,-2742,-2711,-2691,-2685,-2692,-2713,-2747,-2788,-2825,-2847,-2847,-2835,-2824,-2821,-2824,-2824,
+-2814,-2799,-2783,-2769,-2752,-2732,-2713,-2703,-2707,-2724,-2745,-2758,-2755,-2738,-2722,-2725,-2755,-2799,-2838,-2861,-2868,
+-2870,-2868,-2864,-2861,-2870,-2902,-2950,-2996,-3018,-3013,-2997,-2986,-2992,-3013,-3041,-3068,-3083,-3082,-3062,-3032,-3003,
+-2987,-2988,-3006,-3038,-3080,-3127,-3173,-3212,-3245,-3270,-3291,-3311,-3338,-3377,-3427,-3480,-3529,-3579,-3645,-3730,-3828,
+-3917,-3981,-4015,-4025,-4021,-4015,-4034,-4104,-4234,-4402,-4558,-4664,-4715,-4739,-4766,-4803,-4840,-4863,-4874,-4884,-4897,
+-4909,-4916,-4919,-4921,-4919,-4908,-4885,-4856,-4829,-4805,-4782,-4756,-4728,-4702,-4677,-4645,-4605,-4563,-4525,-4496,-4467,
+-4434,-4397,-4361,-4328,-4293,-4249,-4191,-4125,-4061,-4004,-3954,-3910,-3871,-3840,-3819,-3801,-3775,-3730,-3670,-3610,-3566,
+-3546,-3540,-3531,-3511,-3483,-3455,-3431,-3410,-3393,-3379,-3365,-3345,-3307,-3248,-3176,-3105,-3049,-3012,-2990,-2974,-2956,
+-2934,-2908,-2880,-2847,-2807,-2759,-2703,-2642,-2580,-2514,-2445,-2372,-2296,-2221,-2146,-2073,-2004,-1937,-1864,-1783,-1693,
+-1603,-1519,-1442,-1364,-1280,-1190,-1100,-1015,-932,-845,-755,-663,-574,-489,-404,-318,-230,-144,-59,28,118,
+210,301,391,482,574,667,758,848,935,1022,1107,1189,1270,1353,1441,1532,1623,1713,1804,1901,2000,
+2093,2179,2266,2362,2468,2571,2659,2735,2813,2901,2992,3071,3129,3180,3237,3306,3375,3429,3465,3493,3521,
+3555,3590,3626,3663,3699,3732,3761,3790,3822,3858,3894,3926,3951,3971,3987,3997,4003,4006,4010,4017,4032,
+4057,4087,4112,4120,4112,4105,4120,4156,4191,4199,4171,4126,4093,4086,4096,4097,4073,4027,3972,3923,3884,
+3852,3827,3810,3800,3792,3779,3754,3724,3698,3680,3670,3663,3660,3664,3677,3697,3720,3747,3781,3824,3873,
+3928,3988,4054,4121,4177,4220,4257,4296,4335,4359,4360,4354,4366,4411,4480,4549,4596,4616,4613,4594,4564,
+4529,4489,4435,4359,4265,4178,4127,4120,4137,4150,4147,4130,4105,4076,4045,4017,3990,3950,3878,3778,3685,
+3647,3692,3809,3965,4131,4287,4418,4514,4572,4610,4649,4697,4744,4780,4814,4863,4933,5014,5087,5150,5210,
+5266,5299,5293,5256,5216,5197,5196,5188,5157,5112,5076,5059,5044,5014,4961,4901,4847,4800,4750,4680,4617,
+4557,4508,4463,4415,4360,4302,4251,4206,4160,4108,4049,3986,3916,3836,3743,3640,3536,3432,3329,3232,3148,
+3083,3035,2996,2960,2931,2912,2906,2909,2915,2924,2935,2953,2984,3031,3096,3169,3235,3282,3310,3326,3335,
+3336,3330,3317,3299,3280,3259,3241,3227,3217,3207,3191,3169,3146,3124,3102,3080,3058,3038,3014,2981,2940,
+2902,2878,2860,2833,2790,2747,2726,2730,2734,2715,2676,2644,2643,2667,2684,2664,2603,2526,2462,2425,2408,
+2389,2349,2283,2197,2092,1964,1807,1629,1450,1289,1154,1043,952,883,832,787,730,656,572,489,413,
+346,297,277,290,325,371,426,497,584,674,752,816,873,932,993,1059,1135,1226,1314,1379,1413,
+1439,1481,1532,1559,1542,1500,1478,1498,1542,1587,1642,1751,1940,2184,2418,2581,2653,2645,2588,2510,2437,
+2380,2331,2271,2191,2106,2040,2000,1971,1928,1867,1795,1720,1642,1559,1472,1384,1290,1183,1064,942,822,
+698,560,414,279,163,62,-34,-124,-186,-211,-208,-193,-164,-103,-5,103,180,201,182,156,150,
+165,191,222,262,317,386,458,516,545,543,525,507,493,468,416,333,237,145,66,0,-60,
+-116,-170,-223,-276,-326,-372,-426,-500,-592,-683,-755,-808,-857,-917,-980,-1028,-1055,-1071,-1094,-1132,-1175,
+-1207,-1226,-1235,-1249,-1281,-1343,-1440,-1568,-1705,-1829,-1926,-1998,-2049,-2079,-2078,-2041,-1985,-1942,-1939,-1971,-2005,
+-2010,-1985,-1958,-1957,-1984,-2025,-2073,-2137,-2221,-2307,-2358,-2350,-2297,-2234,-2190,-2179,-2204,-2274,-2387,-2521,-2638,
+-2723,-2800,-2916,-3098,-3327,-3555,-3749,-3911,-4068,-4242,-4433,-4621,-4774,-4870,-4900,-4876,-4817,-4742,-4648,-4516,-4331,
+-4105,-3881,-3699,-3568,-3451,-3299,-3097,-2879,-2698,-2579,-2507,-2448,-2391,-2344,-2314,-2288,-2256,-2228,-2234,-2286,-2360,
+-2418,-2448,-2477,-2539,-2632,-2718,-2764,-2771,-2769,-2783,-2818,-2860,-2899,-2934,-2968,-3003,-3040,-3083,-3129,-3171,-3202,
+-3223,-3240,-3260,-3284,-3313,-3347,-3387,-3429,-3464,-3489,-3511,-3537,-3568,-3598,-3621,-3641,-3662,-3690,-3722,-3756,-3790,
+-3820,-3836,-3834,-3819,-3805,-3805,-3821,-3847,-3873,-3901,-3932,-3965,-3994,-4012,-4017,-4014,-4011,-4010,-4013,-4014,-4015,
+-4019,-4033,-4053,-4069,-4070,-4056,-4034,-4010,-3984,-3950,-3906,-3857,-3807,-3759,-3710,-3666,-3633,-3613,-3601,-3583,-3556,
+-3523,-3490,-3459,-3433,-3417,-3424,-3462,-3519,-3567,-3573,-3527,-3450,-3391,-3391,-3456,-3553,-3639,-3695,-3735,-3785,-3845,
+-3892,-3900,-3870,-3817,-3758,-3695,-3622,-3541,-3462,-3388,-3314,-3238,-3165,-3106,-3062,-3020,-2965,-2894,-2816,-2739,-2665,
+-2592,-2518,-2446,-2377,-2310,-2247,-2193,-2152,-2118,-2083,-2041,-1988,-1924,-1850,-1771,-1690,-1611,-1528,-1435,-1332,-1225,
+-1119,-1015,-905,-788,-671,-563,-461,-360,-257,-154,-56,36,129,222,310,391,471,551,629,701,769,
+841,923,1014,1106,1195,1287,1382,1475,1558,1627,1693,1762,1837,1919,2010,2111,2216,2311,2386,2446,2499,
+2550,2595,2629,2657,2691,2735,2786,2838,2894,2954,3013,3065,3108,3148,3190,3230,3260,3273,3265,3237,3188,
+3136,3118,3164,3269,3390,3481,3533,3574,3624,3666,3659,3594,3521,3513,3593,3704,3752,3691,3562,3456,3436,
+3489,3555,3592,3612,3657,3743,3842,3920,3976,4039,4125,4206,4221,4127,3909,3564,3083,2490,1882,1424,1255,
+1394,1727,2084,2352,2512,2599,2650,2676,2682,2674,2662,2648,2624,2588,2539,2481,2419,2356,2294,2233,2165,
+2084,1996,1913,1844,1785,1734,1692,1665,1650,1630,1593,1540,1487,1445,1409,1368,1316,1258,1198,1137,1072,
+1007,946,895,854,822,792,758,713,659,604,559,528,504,484,465,452,444,438,428,416,401,
+382,356,322,283,240,190,128,61,1,-45,-85,-133,-194,-261,-320,-372,-424,-484,-548,-604,-647,
+-678,-706,-733,-756,-776,-794,-813,-833,-850,-863,-872,-882,-895,-911,-926,-933,-932,-927,-922,-920,-922,
+-928,-941,-967,-1002,-1038,-1068,-1096,-1128,-1154,-1142,-1056,-906,-758,-699,-763,-903,-1028,-1074,-1049,-1007,-984,
+-974,-947,-898,-846,-816,-808,-807,-806,-812,-828,-846,-854,-853,-856,-866,-870,-855,-826,-802,-797,-803,
+-808,-817,-846,-899,-956,-987,-988,-981,-990,-1012,-1027,-1023,-1015,-1027,-1063,-1099,-1104,-1066,-1006,-959,-950,
+-984,-1046,-1107,-1144,-1151,-1139,-1127,-1128,-1139,-1151,-1157,-1159,-1161,-1165,-1171,-1178,-1185,-1190,-1192,-1191,-1192,
+-1195,-1199,-1200,-1200,-1199,-1199,-1195,-1185,-1173,-1165,-1165,-1168,-1167,-1161,-1153,-1149,-1152,-1158,-1162,-1162,-1160,
+-1159,-1160,-1167,-1179,-1191,-1200,-1203,-1204,-1206,-1212,-1221,-1234,-1248,-1262,-1274,-1286,-1299,-1313,-1327,-1340,-1351,
+-1364,-1380,-1395,-1406,-1415,-1426,-1442,-1458,-1471,-1480,-1491,-1507,-1525,-1538,-1545,-1551,-1558,-1564,-1565,-1562,-1563,
+-1570,-1583,-1597,-1611,-1630,-1655,-1684,-1710,-1733,-1758,-1785,-1812,-1835,-1856,-1878,-1905,-1935,-1968,-2002,-2038,-2076,
+-2113,-2147,-2179,-2210,-2240,-2267,-2290,-2311,-2331,-2355,-2383,-2414,-2447,-2475,-2497,-2518,-2542,-2573,-2605,-2636,-2664,
+-2694,-2726,-2758,-2784,-2805,-2824,-2844,-2863,-2881,-2901,-2928,-2958,-2984,-3003,-3021,-3043,-3072,-3100,-3123,-3145,-3170,
+-3200,-3229,-3256,-3284,-3315,-3348,-3379,-3407,-3434,-3461,-3487,-3509,-3531,-3557,-3588,-3617,-3640,-3661,-3686,-3719,-3755,
+-3789,-3818,-3846,-3873,-3896,-3915,-3931,-3947,-3963,-3977,-3989,-4002,-4017,-4032,-4040,-4043,-4046,-4055,-4068,-4080,-4088,
+-4094,-4101,-4110,-4116,-4118,-4119,-4120,-4125,-4130,-4136,-4142,-4148,-4155,-4159,-4160,-4158,-4157,-4156,-4153,-4142,-4122,
+-4101,-4088,-4081,-4068,-4042,-4009,-3989,-3994,-4009,-3999,-3948,-3869,-3796,-3754,-3745,-3755,-3770,-3778,-3773,-3747,-3703,
+-3644,-3570,-3476,-3366,-3271,-3229,-3257,-3324,-3375,-3379,-3350,-3325,-3323,-3326,-3306,-3257,-3199,-3156,-3136,-3128,-3119,
+-3104,-3083,-3059,-3032,-2998,-2953,-2901,-2847,-2796,-2741,-2674,-2594,-2516,-2461,-2436,-2424,-2404,-2370,-2339,-2326,-2330,
+-2340,-2348,-2357,-2361,-2338,-2269,-2168,-2089,-2083,-2159,-2273,-2365,-2401,-2386,-2350,-2318,-2303,-2308,-2333,-2378,-2439,
+-2504,-2564,-2607,-2634,-2654,-2687,-2744,-2819,-2892,-2944,-2970,-2978,-2978,-2971,-2954,-2926,-2888,-2846,-2802,-2760,-2724,
+-2700,-2688,-2688,-2699,-2718,-2739,-2757,-2769,-2776,-2787,-2801,-2812,-2813,-2802,-2786,-2773,-2764,-2755,-2740,-2722,-2708,
+-2706,-2718,-2738,-2753,-2754,-2741,-2731,-2739,-2773,-2822,-2864,-2889,-2897,-2900,-2905,-2912,-2922,-2938,-2962,-2990,-3012,
+-3018,-3008,-2995,-2990,-2999,-3019,-3041,-3056,-3057,-3040,-3008,-2972,-2945,-2935,-2948,-2982,-3033,-3091,-3146,-3194,-3232,
+-3263,-3286,-3303,-3319,-3345,-3389,-3450,-3512,-3564,-3610,-3666,-3744,-3838,-3925,-3985,-4012,-4016,-4012,-4021,-4068,-4168,
+-4318,-4482,-4615,-4694,-4733,-4763,-4804,-4850,-4885,-4905,-4919,-4939,-4962,-4977,-4980,-4977,-4975,-4973,-4960,-4934,-4901,
+-4869,-4842,-4816,-4789,-4764,-4740,-4713,-4678,-4636,-4596,-4562,-4528,-4488,-4444,-4403,-4373,-4348,-4313,-4261,-4196,-4131,
+-4074,-4025,-3979,-3933,-3889,-3852,-3825,-3802,-3776,-3740,-3692,-3641,-3601,-3581,-3574,-3565,-3543,-3510,-3476,-3451,-3436,
+-3425,-3414,-3398,-3374,-3339,-3288,-3225,-3156,-3093,-3044,-3013,-2997,-2986,-2970,-2946,-2914,-2879,-2841,-2798,-2748,-2693,
+-2634,-2572,-2504,-2432,-2355,-2278,-2200,-2125,-2052,-1983,-1912,-1835,-1752,-1666,-1581,-1499,-1414,-1325,-1233,-1144,-1060,
+-980,-900,-817,-733,-646,-557,-465,-374,-283,-194,-104,-13,78,170,259,349,441,536,632,727,820,
+910,998,1084,1167,1249,1331,1416,1503,1592,1680,1771,1865,1962,2057,2149,2246,2351,2463,2567,2653,2725,
+2798,2879,2961,3029,3077,3120,3172,3235,3296,3340,3369,3395,3428,3467,3505,3541,3577,3614,3651,3682,3711,
+3741,3775,3809,3839,3864,3885,3904,3922,3936,3947,3951,3950,3948,3956,3980,4019,4057,4086,4104,4123,4143,
+4152,4135,4089,4036,4001,3995,4008,4017,4008,3980,3944,3908,3877,3851,3827,3804,3782,3754,3720,3681,3643,
+3615,3599,3592,3588,3589,3595,3609,3628,3652,3683,3724,3773,3828,3889,3962,4048,4136,4212,4269,4317,4364,
+4406,4428,4424,4416,4435,4493,4570,4627,4642,4622,4586,4549,4517,4484,4444,4384,4300,4201,4118,4077,4085,
+4120,4150,4159,4149,4127,4100,4068,4033,3992,3932,3848,3760,3714,3750,3870,4036,4203,4348,4473,4581,4664,
+4719,4757,4799,4858,4922,4979,5030,5089,5168,5259,5343,5406,5440,5439,5398,5329,5259,5215,5205,5202,5179,
+5130,5078,5046,5034,5021,4984,4924,4857,4796,4739,4680,4602,4516,4439,4375,4318,4259,4198,4147,4111,4088,
+4065,4032,3983,3919,3841,3751,3653,3554,3458,3363,3270,3184,3111,3055,3012,2973,2938,2912,2901,2903,2912,
+2925,2942,2963,2985,3012,3049,3103,3167,3229,3276,3303,3316,3322,3322,3318,3310,3300,3288,3271,3251,3232,
+3218,3204,3184,3158,3128,3098,3067,3036,3010,2992,2975,2948,2906,2861,2829,2810,2790,2760,2729,2714,2717,
+2722,2711,2688,2678,2696,2730,2743,2712,2644,2576,2545,2559,2600,2632,2628,2578,2491,2376,2236,2070,1880,
+1681,1487,1309,1153,1027,938,881,838,789,727,663,607,563,526,496,479,480,495,521,560,620,
+697,781,856,920,980,1041,1103,1169,1247,1336,1419,1470,1488,1496,1520,1555,1574,1559,1529,1519,1541,
+1577,1617,1682,1811,2005,2216,2382,2474,2511,2522,2514,2477,2411,2335,2266,2204,2140,2076,2020,1978,1940,
+1892,1829,1760,1690,1615,1529,1434,1337,1235,1126,1007,886,767,644,510,367,230,111,6,-94,-188,
+-260,-302,-324,-340,-350,-333,-273,-185,-104,-58,-51,-63,-74,-68,-44,-2,56,133,225,325,415,
+474,491,476,451,430,409,375,322,256,187,120,53,-14,-82,-148,-213,-274,-324,-367,-414,-480,
+-565,-648,-714,-764,-818,-887,-962,-1018,-1048,-1063,-1083,-1117,-1160,-1198,-1226,-1239,-1243,-1247,-1275,-1348,-1472,
+-1627,-1776,-1892,-1970,-2021,-2053,-2063,-2047,-2015,-1993,-2000,-2032,-2058,-2051,-2016,-1986,-1988,-2025,-2079,-2140,-2210,
+-2289,-2358,-2384,-2356,-2297,-2245,-2225,-2241,-2289,-2368,-2475,-2592,-2692,-2767,-2843,-2961,-3144,-3380,-3635,-3874,-4082,
+-4260,-4414,-4550,-4669,-4765,-4828,-4855,-4852,-4830,-4794,-4739,-4650,-4519,-4352,-4172,-4001,-3848,-3702,-3538,-3351,-3158,
+-2991,-2857,-2739,-2611,-2477,-2366,-2301,-2275,-2260,-2245,-2252,-2302,-2383,-2459,-2503,-2526,-2561,-2620,-2685,-2729,-2749,
+-2762,-2788,-2829,-2876,-2922,-2963,-2997,-3022,-3043,-3070,-3108,-3150,-3183,-3200,-3208,-3217,-3236,-3263,-3299,-3339,-3378,
+-3410,-3437,-3463,-3496,-3532,-3563,-3587,-3610,-3640,-3677,-3714,-3746,-3771,-3791,-3802,-3801,-3788,-3774,-3770,-3778,-3794,
+-3811,-3831,-3856,-3887,-3922,-3951,-3967,-3972,-3974,-3978,-3988,-3999,-4005,-4007,-4012,-4022,-4034,-4041,-4037,-4024,-4007,
+-3982,-3946,-3899,-3844,-3788,-3734,-3681,-3631,-3589,-3559,-3537,-3518,-3500,-3481,-3460,-3434,-3406,-3385,-3387,-3419,-3467,
+-3505,-3501,-3445,-3359,-3292,-3290,-3364,-3484,-3600,-3683,-3740,-3792,-3849,-3893,-3901,-3867,-3810,-3747,-3685,-3623,-3558,
+-3493,-3427,-3354,-3274,-3197,-3132,-3079,-3029,-2968,-2896,-2820,-2748,-2679,-2613,-2550,-2486,-2420,-2350,-2282,-2225,-2178,
+-2132,-2079,-2019,-1957,-1895,-1827,-1750,-1668,-1589,-1511,-1426,-1328,-1221,-1114,-1008,-897,-780,-662,-553,-452,-353,
+-251,-149,-53,35,123,212,300,385,468,550,631,708,780,855,936,1023,1111,1200,1292,1388,1481,
+1561,1628,1691,1758,1831,1912,2004,2106,2212,2305,2379,2438,2493,2547,2593,2624,2649,2681,2731,2794,2862,
+2929,2991,3046,3094,3136,3176,3213,3243,3264,3274,3269,3241,3185,3125,3107,3164,3282,3402,3470,3485,3489,
+3521,3566,3578,3532,3460,3422,3451,3517,3561,3547,3497,3461,3475,3526,3572,3595,3613,3662,3753,3858,3944,
+4013,4092,4193,4280,4293,4196,3990,3681,3256,2707,2104,1603,1364,1443,1746,2104,2386,2555,2642,2687,2708,
+2713,2711,2706,2694,2666,2620,2565,2512,2459,2403,2340,2270,2195,2118,2045,1982,1926,1866,1799,1736,1690,
+1662,1638,1600,1550,1499,1458,1425,1390,1347,1297,1241,1179,1112,1048,991,944,904,870,838,806,765,
+712,655,605,571,546,522,499,483,477,475,470,460,449,436,413,376,324,264,200,135,70,
+11,-35,-77,-124,-182,-247,-311,-369,-425,-483,-541,-590,-629,-661,-690,-719,-746,-770,-791,-813,-832,
+-847,-858,-868,-881,-895,-907,-913,-914,-913,-911,-908,-906,-907,-914,-931,-959,-992,-1021,-1040,-1055,-1075,
+-1099,-1102,-1053,-940,-801,-705,-707,-800,-921,-1003,-1023,-1004,-980,-964,-943,-909,-872,-845,-832,-828,-831,
+-843,-865,-884,-891,-888,-888,-897,-903,-891,-865,-844,-841,-850,-857,-861,-877,-911,-948,-966,-962,-955,
+-970,-1003,-1031,-1039,-1031,-1028,-1042,-1066,-1082,-1080,-1058,-1022,-987,-971,-986,-1031,-1081,-1112,-1114,-1101,-1093,
+-1100,-1115,-1128,-1133,-1133,-1132,-1134,-1138,-1144,-1149,-1152,-1152,-1150,-1151,-1155,-1162,-1169,-1173,-1173,-1168,-1158,
+-1149,-1145,-1146,-1149,-1149,-1144,-1139,-1135,-1134,-1134,-1134,-1135,-1133,-1130,-1125,-1123,-1127,-1138,-1149,-1157,-1160,
+-1162,-1168,-1178,-1192,-1210,-1229,-1246,-1260,-1272,-1282,-1292,-1303,-1314,-1328,-1344,-1359,-1370,-1380,-1393,-1412,-1433,
+-1450,-1462,-1475,-1493,-1512,-1526,-1532,-1534,-1536,-1540,-1541,-1540,-1540,-1544,-1552,-1560,-1570,-1586,-1610,-1639,-1667,
+-1690,-1713,-1738,-1766,-1792,-1814,-1836,-1860,-1890,-1926,-1966,-2005,-2043,-2078,-2112,-2146,-2182,-2215,-2244,-2269,-2294,
+-2319,-2346,-2377,-2411,-2443,-2469,-2488,-2505,-2526,-2556,-2590,-2623,-2654,-2683,-2713,-2741,-2765,-2786,-2807,-2826,-2844,
+-2860,-2879,-2905,-2933,-2956,-2973,-2990,-3014,-3043,-3070,-3093,-3116,-3145,-3176,-3206,-3231,-3257,-3285,-3316,-3344,-3369,
+-3396,-3426,-3457,-3485,-3511,-3539,-3569,-3597,-3619,-3639,-3665,-3697,-3733,-3767,-3797,-3824,-3844,-3859,-3872,-3891,-3917,
+-3942,-3957,-3964,-3972,-3989,-4010,-4026,-4036,-4043,-4054,-4066,-4078,-4086,-4094,-4103,-4112,-4116,-4118,-4121,-4124,-4128,
+-4131,-4134,-4140,-4149,-4158,-4164,-4164,-4161,-4156,-4153,-4149,-4139,-4122,-4101,-4088,-4084,-4082,-4068,-4042,-4019,-4014,
+-4023,-4020,-3984,-3917,-3844,-3789,-3760,-3752,-3756,-3764,-3765,-3754,-3728,-3688,-3626,-3528,-3400,-3278,-3219,-3249,-3338,
+-3419,-3444,-3420,-3384,-3366,-3358,-3336,-3291,-3239,-3200,-3181,-3171,-3158,-3137,-3111,-3084,-3058,-3029,-2990,-2943,-2892,
+-2846,-2803,-2752,-2690,-2625,-2575,-2542,-2510,-2465,-2411,-2370,-2357,-2362,-2369,-2372,-2379,-2390,-2376,-2306,-2191,-2089,
+-2065,-2135,-2254,-2354,-2395,-2382,-2342,-2301,-2272,-2264,-2285,-2333,-2399,-2467,-2524,-2568,-2602,-2637,-2685,-2755,-2841,
+-2925,-2987,-3016,-3018,-3009,-2997,-2986,-2970,-2946,-2914,-2872,-2825,-2775,-2727,-2689,-2664,-2658,-2671,-2698,-2727,-2751,
+-2768,-2781,-2791,-2797,-2794,-2783,-2769,-2759,-2755,-2753,-2744,-2729,-2712,-2703,-2708,-2725,-2745,-2757,-2758,-2755,-2764,
+-2791,-2832,-2873,-2905,-2924,-2938,-2951,-2964,-2976,-2988,-3000,-3011,-3016,-3014,-3008,-3005,-3008,-3019,-3031,-3036,-3029,
+-3007,-2974,-2938,-2909,-2897,-2903,-2929,-2972,-3027,-3086,-3142,-3189,-3229,-3265,-3293,-3311,-3326,-3353,-3406,-3477,-3545,
+-3593,-3625,-3667,-3740,-3836,-3926,-3982,-3999,-3992,-3989,-4017,-4094,-4224,-4386,-4540,-4652,-4716,-4753,-4793,-4844,-4892,
+-4923,-4942,-4963,-4994,-5022,-5035,-5032,-5024,-5020,-5015,-4999,-4971,-4939,-4909,-4880,-4850,-4820,-4795,-4771,-4743,-4705,
+-4663,-4626,-4595,-4560,-4513,-4461,-4418,-4388,-4359,-4315,-4257,-4200,-4153,-4112,-4065,-4007,-3946,-3896,-3858,-3829,-3803,
+-3779,-3754,-3724,-3689,-3654,-3628,-3610,-3593,-3566,-3531,-3496,-3473,-3462,-3456,-3445,-3426,-3401,-3369,-3330,-3281,-3223,
+-3161,-3107,-3069,-3049,-3040,-3027,-3003,-2967,-2925,-2881,-2836,-2788,-2736,-2681,-2621,-2558,-2488,-2415,-2338,-2259,-2181,
+-2104,-2028,-1951,-1872,-1791,-1712,-1635,-1560,-1480,-1395,-1307,-1218,-1133,-1049,-967,-885,-801,-713,-618,-520,-424,
+-332,-241,-149,-56,35,124,212,303,397,494,592,690,785,878,968,1055,1141,1225,1310,1397,1484,
+1572,1658,1742,1828,1919,2014,2115,2222,2334,2446,2547,2632,2705,2777,2853,2925,2982,3022,3060,3107,3163,
+3214,3250,3275,3303,3339,3379,3417,3451,3488,3529,3569,3604,3636,3669,3704,3737,3762,3782,3802,3824,3848,
+3868,3884,3893,3895,3895,3900,3921,3960,4008,4049,4076,4087,4084,4064,4026,3974,3925,3893,3884,3891,3903,
+3909,3906,3893,3874,3853,3832,3809,3781,3744,3700,3651,3607,3572,3549,3536,3529,3527,3531,3540,3554,3571,
+3592,3624,3668,3725,3790,3866,3955,4058,4161,4249,4315,4370,4422,4467,4495,4508,4528,4578,4653,4713,4720,
+4668,4585,4508,4454,4415,4379,4335,4278,4209,4139,4091,4083,4114,4159,4194,4206,4200,4184,4159,4124,4080,
+4022,3946,3861,3798,3805,3909,4087,4278,4429,4531,4609,4684,4758,4819,4870,4925,4989,5053,5105,5149,5199,
+5269,5352,5427,5474,5481,5442,5367,5278,5211,5185,5187,5183,5147,5086,5031,5003,4995,4980,4943,4886,4822,
+4757,4685,4602,4502,4392,4299,4225,4165,4111,4065,4032,4013,4001,3984,3954,3909,3847,3768,3672,3569,3466,
+3372,3285,3204,3133,3075,3030,2993,2959,2927,2904,2893,2892,2899,2914,2940,2976,3013,3046,3080,3125,3181,
+3238,3283,3308,3317,3315,3308,3301,3300,3305,3310,3304,3286,3265,3246,3229,3205,3173,3135,3095,3054,3012,
+2977,2956,2941,2919,2879,2831,2795,2776,2765,2748,2728,2715,2715,2717,2708,2696,2702,2736,2781,2806,2790,
+2748,2717,2726,2781,2856,2913,2921,2870,2770,2636,2477,2297,2095,1877,1655,1444,1261,1118,1019,954,902,
+848,792,748,724,716,710,697,681,668,665,675,704,754,819,888,955,1020,1087,1152,1212,1273,
+1348,1437,1517,1560,1562,1548,1548,1565,1577,1569,1555,1554,1572,1596,1630,1705,1847,2032,2197,2292,2328,
+2356,2405,2450,2446,2376,2274,2185,2123,2077,2030,1984,1942,1900,1850,1789,1724,1657,1583,1495,1393,1285,
+1177,1066,949,831,713,594,467,332,200,82,-25,-130,-232,-319,-385,-438,-490,-537,-559,-538,-479,
+-408,-354,-331,-333,-345,-348,-330,-285,-214,-122,-10,116,243,349,410,424,401,361,313,262,213,
+171,137,104,62,7,-60,-138,-223,-303,-364,-401,-432,-477,-543,-614,-675,-728,-787,-861,-937,-996,
+-1034,-1063,-1096,-1132,-1164,-1189,-1211,-1230,-1240,-1240,-1250,-1302,-1413,-1569,-1728,-1853,-1934,-1982,-2017,-2042,-2054,
+-2054,-2055,-2070,-2094,-2107,-2096,-2071,-2061,-2088,-2142,-2202,-2256,-2307,-2359,-2396,-2397,-2358,-2305,-2273,-2281,-2324,
+-2390,-2471,-2563,-2655,-2735,-2802,-2880,-2998,-3176,-3412,-3685,-3962,-4209,-4402,-4537,-4626,-4684,-4721,-4738,-4740,-4738,
+-4740,-4739,-4721,-4679,-4615,-4534,-4435,-4318,-4186,-4042,-3883,-3709,-3530,-3365,-3218,-3068,-2885,-2672,-2474,-2345,-2295,
+-2291,-2294,-2302,-2339,-2410,-2487,-2534,-2545,-2547,-2564,-2601,-2642,-2680,-2721,-2774,-2836,-2898,-2953,-2996,-3026,-3040,
+-3046,-3059,-3088,-3128,-3163,-3183,-3192,-3201,-3218,-3244,-3273,-3304,-3336,-3368,-3401,-3436,-3473,-3509,-3538,-3563,-3591,
+-3628,-3669,-3704,-3727,-3741,-3752,-3760,-3764,-3762,-3759,-3761,-3768,-3778,-3785,-3790,-3798,-3815,-3842,-3875,-3905,-3926,
+-3939,-3949,-3963,-3979,-3993,-4000,-4004,-4011,-4022,-4030,-4031,-4023,-4004,-3973,-3926,-3866,-3801,-3743,-3694,-3654,-3615,
+-3576,-3538,-3503,-3473,-3453,-3440,-3427,-3409,-3385,-3364,-3360,-3377,-3404,-3422,-3408,-3354,-3276,-3214,-3210,-3284,-3414,
+-3553,-3664,-3743,-3806,-3863,-3901,-3898,-3852,-3782,-3711,-3650,-3597,-3547,-3499,-3450,-3398,-3339,-3274,-3207,-3138,-3065,
+-2989,-2912,-2841,-2773,-2708,-2647,-2590,-2535,-2474,-2405,-2337,-2276,-2218,-2153,-2073,-1989,-1915,-1854,-1793,-1721,-1640,
+-1561,-1487,-1408,-1316,-1210,-1101,-993,-882,-766,-648,-538,-437,-340,-242,-147,-58,26,112,201,290,375,
+458,545,634,721,800,874,951,1033,1120,1209,1301,1394,1482,1561,1631,1698,1767,1840,1918,2004,2098,
+2192,2274,2339,2396,2454,2514,2569,2611,2647,2691,2750,2823,2899,2967,3024,3070,3111,3150,3187,3216,3236,
+3250,3263,3267,3241,3176,3100,3069,3123,3244,3366,3432,3439,3434,3453,3490,3505,3471,3407,3353,3340,3364,
+3399,3427,3447,3475,3518,3567,3604,3625,3648,3699,3787,3890,3982,4063,4152,4251,4324,4315,4203,4004,3732,
+3361,2860,2271,1743,1457,1491,1771,2124,2410,2586,2681,2734,2762,2769,2762,2750,2731,2695,2643,2588,2541,
+2498,2447,2379,2298,2218,2153,2110,2081,2045,1981,1891,1795,1723,1682,1655,1620,1572,1521,1479,1444,1409,
+1368,1323,1275,1220,1160,1101,1049,1005,963,924,888,856,818,769,714,665,629,601,571,540,519,
+512,513,511,503,495,485,467,427,367,294,221,153,90,33,-16,-61,-110,-167,-230,-294,-354,
+-412,-468,-518,-562,-599,-634,-668,-702,-731,-756,-778,-799,-817,-832,-846,-861,-879,-894,-901,-900,-897,
+-896,-898,-899,-899,-899,-904,-917,-936,-959,-982,-1000,-1012,-1024,-1041,-1058,-1047,-981,-860,-729,-658,-681,
+-777,-883,-948,-967,-960,-950,-936,-914,-887,-866,-860,-866,-878,-895,-915,-930,-934,-929,-927,-934,-940,
+-934,-915,-900,-897,-904,-905,-900,-902,-918,-942,-955,-955,-953,-967,-994,-1018,-1025,-1018,-1008,-1006,-1016,
+-1040,-1072,-1095,-1087,-1041,-977,-938,-948,-998,-1051,-1078,-1077,-1068,-1067,-1078,-1091,-1099,-1102,-1103,-1103,-1104,
+-1106,-1110,-1114,-1116,-1115,-1116,-1120,-1128,-1136,-1141,-1141,-1136,-1130,-1126,-1125,-1127,-1127,-1124,-1121,-1118,-1116,
+-1112,-1107,-1102,-1101,-1102,-1100,-1092,-1082,-1077,-1080,-1089,-1098,-1105,-1112,-1120,-1132,-1147,-1165,-1187,-1209,-1228,
+-1242,-1252,-1261,-1271,-1282,-1295,-1311,-1326,-1339,-1350,-1363,-1382,-1404,-1423,-1439,-1454,-1472,-1491,-1506,-1512,-1513,
+-1511,-1511,-1512,-1512,-1513,-1517,-1523,-1528,-1534,-1545,-1565,-1593,-1621,-1645,-1666,-1688,-1715,-1744,-1770,-1793,-1817,
+-1847,-1885,-1929,-1973,-2010,-2044,-2076,-2112,-2151,-2188,-2221,-2251,-2280,-2308,-2336,-2365,-2396,-2426,-2453,-2473,-2491,
+-2513,-2542,-2576,-2611,-2642,-2672,-2699,-2723,-2744,-2765,-2785,-2804,-2820,-2834,-2853,-2878,-2905,-2929,-2946,-2965,-2990,
+-3019,-3045,-3069,-3095,-3126,-3159,-3188,-3213,-3237,-3265,-3294,-3318,-3340,-3366,-3398,-3433,-3465,-3493,-3521,-3552,-3580,
+-3605,-3629,-3657,-3689,-3721,-3752,-3780,-3803,-3816,-3821,-3828,-3849,-3884,-3918,-3937,-3941,-3943,-3956,-3978,-4001,-4019,
+-4034,-4049,-4064,-4076,-4086,-4096,-4105,-4109,-4110,-4112,-4118,-4127,-4133,-4135,-4137,-4142,-4151,-4160,-4165,-4166,-4163,
+-4157,-4150,-4144,-4138,-4128,-4111,-4095,-4086,-4085,-4082,-4071,-4055,-4046,-4044,-4036,-4007,-3956,-3895,-3842,-3802,-3779,
+-3770,-3770,-3769,-3759,-3739,-3711,-3667,-3584,-3457,-3318,-3229,-3236,-3322,-3424,-3480,-3478,-3445,-3413,-3388,-3357,-3317,
+-3277,-3247,-3229,-3213,-3189,-3156,-3121,-3092,-3071,-3050,-3018,-2970,-2913,-2862,-2823,-2789,-2751,-2711,-2676,-2644,-2600,
+-2532,-2456,-2402,-2385,-2391,-2395,-2391,-2394,-2407,-2403,-2343,-2231,-2122,-2083,-2137,-2244,-2341,-2390,-2387,-2352,-2302,
+-2256,-2233,-2249,-2302,-2372,-2438,-2493,-2545,-2602,-2664,-2731,-2801,-2877,-2951,-3009,-3042,-3050,-3045,-3040,-3035,-3026,
+-3007,-2977,-2938,-2890,-2832,-2767,-2704,-2657,-2639,-2653,-2688,-2728,-2759,-2774,-2777,-2775,-2771,-2764,-2754,-2744,-2736,
+-2734,-2735,-2733,-2725,-2712,-2703,-2704,-2718,-2741,-2763,-2777,-2784,-2790,-2804,-2831,-2866,-2904,-2938,-2965,-2987,-3002,
+-3011,-3015,-3015,-3010,-3004,-3001,-3003,-3012,-3023,-3030,-3026,-3006,-2972,-2930,-2889,-2862,-2853,-2864,-2891,-2928,-2973,
+-3023,-3075,-3125,-3171,-3215,-3257,-3292,-3315,-3336,-3370,-3431,-3507,-3571,-3604,-3618,-3650,-3726,-3835,-3937,-3995,-4004,
+-3989,-3988,-4030,-4125,-4263,-4418,-4555,-4650,-4709,-4755,-4810,-4871,-4924,-4958,-4983,-5012,-5046,-5071,-5075,-5067,-5058,
+-5055,-5048,-5030,-5003,-4976,-4953,-4926,-4893,-4858,-4828,-4803,-4773,-4731,-4688,-4652,-4623,-4587,-4539,-4487,-4444,-4407,
+-4365,-4311,-4258,-4220,-4190,-4141,-4058,-3956,-3873,-3835,-3831,-3832,-3818,-3795,-3773,-3754,-3731,-3699,-3663,-3632,-3606,
+-3579,-3547,-3517,-3498,-3490,-3486,-3476,-3458,-3435,-3410,-3382,-3346,-3300,-3245,-3190,-3146,-3120,-3105,-3090,-3065,-3026,
+-2979,-2928,-2877,-2826,-2774,-2721,-2664,-2604,-2540,-2470,-2396,-2318,-2239,-2160,-2080,-1999,-1916,-1835,-1760,-1691,-1624,
+-1550,-1470,-1384,-1297,-1208,-1119,-1029,-941,-854,-762,-665,-567,-472,-381,-292,-201,-109,-19,69,160,256,
+355,454,551,647,744,839,929,1016,1102,1189,1277,1367,1457,1546,1631,1713,1796,1885,1984,2092,2203,
+2314,2419,2512,2594,2667,2737,2804,2865,2912,2950,2988,3035,3087,3131,3165,3193,3226,3264,3302,3334,3365,
+3402,3444,3486,3522,3557,3596,3636,3671,3693,3709,3727,3751,3777,3797,3812,3825,3838,3852,3865,3882,3906,
+3935,3961,3975,3972,3953,3926,3895,3866,3840,3817,3798,3786,3785,3795,3809,3816,3810,3795,3775,3753,3721,
+3677,3625,3574,3534,3508,3490,3479,3474,3475,3485,3500,3516,3532,3551,3580,3627,3690,3767,3857,3959,4065,
+4165,4248,4312,4369,4425,4476,4519,4563,4629,4720,4806,4835,4776,4650,4512,4408,4347,4307,4265,4217,4169,
+4130,4105,4104,4133,4180,4226,4252,4258,4254,4246,4231,4199,4147,4077,3995,3919,3888,3940,4087,4288,4474,
+4596,4658,4701,4756,4828,4899,4959,5012,5059,5097,5127,5161,5216,5293,5375,5436,5461,5444,5390,5315,5241,
+5194,5183,5186,5169,5117,5047,4990,4961,4947,4924,4883,4830,4771,4700,4609,4502,4380,4264,4168,4097,4044,
+4004,3978,3964,3953,3935,3906,3867,3822,3767,3695,3602,3496,3390,3294,3213,3144,3085,3039,3003,2973,2945,
+2919,2898,2886,2879,2879,2891,2921,2965,3011,3052,3090,3135,3191,3248,3292,3315,3317,3305,3285,3270,3270,
+3287,3309,3320,3314,3299,3284,3269,3245,3208,3163,3115,3067,3019,2977,2949,2929,2905,2865,2817,2778,2759,
+2752,2744,2730,2719,2714,2710,2701,2693,2706,2749,2808,2858,2883,2892,2908,2948,3011,3076,3115,3106,3042,
+2929,2785,2624,2448,2255,2041,1817,1600,1413,1267,1159,1072,991,912,848,813,810,827,843,848,841,
+828,817,819,841,882,932,984,1040,1107,1185,1261,1325,1384,1454,1537,1609,1640,1626,1595,1579,1585,
+1595,1594,1589,1586,1587,1588,1613,1698,1853,2031,2160,2205,2207,2232,2305,2378,2387,2316,2209,2120,2068,
+2032,1993,1948,1908,1870,1822,1760,1690,1620,1545,1456,1351,1238,1126,1013,898,781,664,547,426,299,
+174,57,-52,-161,-271,-374,-467,-552,-633,-705,-748,-750,-716,-666,-627,-611,-619,-640,-658,-656,-622,
+-553,-452,-323,-168,1,160,278,335,331,280,205,130,72,41,30,27,18,-2,-44,-114,-211,
+-313,-387,-422,-433,-454,-501,-568,-636,-701,-770,-846,-915,-967,-1008,-1053,-1106,-1154,-1182,-1193,-1202,-1219,
+-1235,-1241,-1250,-1293,-1391,-1535,-1686,-1807,-1886,-1938,-1979,-2017,-2049,-2072,-2092,-2115,-2136,-2146,-2142,-2141,-2166,
+-2223,-2292,-2343,-2367,-2379,-2392,-2405,-2399,-2370,-2334,-2319,-2338,-2387,-2453,-2526,-2602,-2675,-2745,-2819,-2914,-3048,
+-3230,-3464,-3738,-4020,-4266,-4442,-4543,-4595,-4623,-4634,-4628,-4613,-4607,-4619,-4637,-4643,-4632,-4616,-4602,-4580,-4534,
+-4460,-4364,-4245,-4094,-3913,-3728,-3557,-3384,-3165,-2889,-2607,-2405,-2322,-2325,-2344,-2348,-2353,-2387,-2444,-2488,-2500,
+-2495,-2500,-2528,-2570,-2619,-2676,-2747,-2826,-2901,-2960,-3001,-3025,-3037,-3044,-3057,-3083,-3116,-3145,-3164,-3177,-3193,
+-3215,-3239,-3261,-3283,-3309,-3342,-3379,-3414,-3445,-3471,-3496,-3527,-3567,-3614,-3658,-3689,-3707,-3715,-3720,-3725,-3729,
+-3733,-3741,-3752,-3764,-3773,-3777,-3775,-3773,-3775,-3789,-3816,-3852,-3885,-3905,-3916,-3926,-3942,-3963,-3982,-3998,-4012,
+-4025,-4033,-4032,-4018,-3991,-3948,-3889,-3821,-3753,-3698,-3658,-3627,-3599,-3566,-3528,-3488,-3451,-3421,-3400,-3383,-3367,
+-3352,-3342,-3341,-3347,-3353,-3350,-3329,-3286,-3226,-3175,-3171,-3239,-3370,-3523,-3658,-3760,-3836,-3897,-3930,-3920,-3863,
+-3781,-3701,-3635,-3578,-3525,-3476,-3435,-3398,-3357,-3306,-3239,-3162,-3080,-3003,-2935,-2871,-2805,-2737,-2673,-2617,-2566,
+-2512,-2449,-2383,-2322,-2258,-2178,-2078,-1975,-1888,-1823,-1763,-1692,-1611,-1531,-1457,-1380,-1289,-1186,-1078,-971,-861,
+-745,-629,-519,-419,-324,-232,-143,-59,23,111,201,288,370,453,547,649,745,827,896,965,1043,
+1131,1222,1314,1404,1488,1566,1637,1706,1777,1849,1924,2002,2083,2163,2233,2294,2352,2414,2480,2545,2602,
+2654,2710,2778,2855,2932,2997,3045,3081,3113,3148,3183,3209,3224,3238,3253,3256,3217,3128,3024,2973,3019,
+3144,3282,3373,3411,3425,3441,3453,3441,3400,3346,3301,3279,3284,3312,3360,3420,3483,3541,3594,3637,3671,
+3705,3757,3837,3934,4029,4114,4197,4276,4319,4284,4159,3970,3732,3408,2948,2375,1835,1521,1531,1799,2149,
+2435,2612,2713,2778,2813,2818,2801,2779,2756,2720,2668,2611,2564,2526,2480,2411,2322,2235,2174,2148,2140,
+2116,2050,1943,1830,1747,1704,1681,1651,1603,1550,1503,1463,1421,1377,1334,1295,1255,1209,1160,1112,1067,
+1022,978,939,904,868,823,774,731,697,666,631,592,564,553,553,551,545,536,526,507,468,
+404,328,250,179,116,60,9,-38,-89,-145,-205,-266,-325,-383,-438,-486,-527,-562,-597,-633,-669,
+-700,-727,-750,-770,-787,-802,-819,-841,-864,-881,-886,-883,-879,-880,-885,-890,-893,-896,-902,-906,-907,
+-911,-924,-942,-958,-965,-975,-996,-1016,-996,-904,-756,-619,-559,-596,-690,-786,-855,-900,-930,-943,-931,
+-903,-881,-879,-893,-911,-927,-940,-950,-952,-947,-944,-947,-953,-952,-942,-931,-927,-928,-924,-914,-908,
+-917,-935,-951,-958,-962,-969,-981,-990,-993,-993,-989,-983,-979,-994,-1034,-1082,-1102,-1069,-996,-931,-916,
+-956,-1015,-1056,-1066,-1059,-1053,-1053,-1056,-1059,-1064,-1071,-1078,-1080,-1080,-1080,-1083,-1086,-1088,-1088,-1090,-1095,
+-1100,-1103,-1104,-1102,-1101,-1102,-1104,-1104,-1101,-1096,-1093,-1094,-1095,-1091,-1081,-1071,-1065,-1066,-1066,-1059,-1047,
+-1035,-1030,-1032,-1037,-1045,-1055,-1067,-1082,-1098,-1116,-1137,-1160,-1182,-1200,-1214,-1226,-1236,-1247,-1259,-1275,-1293,
+-1310,-1326,-1340,-1356,-1376,-1397,-1416,-1432,-1447,-1464,-1478,-1486,-1489,-1487,-1485,-1482,-1481,-1482,-1486,-1492,-1498,
+-1503,-1511,-1528,-1552,-1579,-1603,-1623,-1643,-1668,-1697,-1726,-1752,-1776,-1806,-1845,-1891,-1936,-1976,-2010,-2044,-2081,
+-2121,-2161,-2197,-2231,-2263,-2292,-2319,-2345,-2373,-2403,-2432,-2457,-2480,-2506,-2536,-2570,-2602,-2632,-2659,-2683,-2703,
+-2720,-2737,-2755,-2772,-2787,-2803,-2823,-2850,-2880,-2906,-2929,-2951,-2978,-3007,-3033,-3058,-3086,-3118,-3149,-3175,-3196,
+-3220,-3247,-3274,-3296,-3316,-3342,-3376,-3412,-3444,-3473,-3503,-3534,-3566,-3595,-3623,-3654,-3686,-3714,-3740,-3766,-3788,
+-3801,-3802,-3804,-3823,-3862,-3902,-3926,-3930,-3929,-3937,-3957,-3979,-4000,-4020,-4039,-4057,-4071,-4082,-4091,-4096,-4095,
+-4093,-4097,-4109,-4123,-4133,-4137,-4141,-4149,-4157,-4162,-4162,-4163,-4162,-4158,-4149,-4141,-4138,-4138,-4132,-4119,-4107,
+-4101,-4101,-4098,-4089,-4078,-4068,-4055,-4032,-3995,-3949,-3901,-3855,-3818,-3796,-3790,-3790,-3782,-3766,-3748,-3722,-3663,
+-3552,-3406,-3283,-3243,-3294,-3391,-3470,-3500,-3488,-3456,-3421,-3384,-3347,-3312,-3285,-3262,-3236,-3203,-3165,-3126,-3098,
+-3082,-3069,-3042,-2993,-2928,-2867,-2825,-2797,-2775,-2754,-2735,-2711,-2666,-2591,-2505,-2444,-2424,-2430,-2431,-2421,-2416,
+-2427,-2429,-2385,-2290,-2188,-2139,-2167,-2246,-2330,-2386,-2406,-2391,-2346,-2288,-2249,-2255,-2306,-2378,-2443,-2498,-2557,
+-2630,-2709,-2780,-2837,-2887,-2935,-2979,-3011,-3029,-3039,-3048,-3055,-3051,-3032,-3003,-2969,-2927,-2871,-2801,-2726,-2667,
+-2641,-2652,-2688,-2728,-2757,-2768,-2766,-2757,-2747,-2738,-2729,-2719,-2711,-2706,-2705,-2707,-2709,-2710,-2711,-2716,-2729,
+-2748,-2770,-2788,-2799,-2803,-2809,-2823,-2851,-2889,-2929,-2964,-2988,-3003,-3009,-3008,-2998,-2983,-2970,-2967,-2977,-2995,
+-3008,-3005,-2981,-2939,-2888,-2841,-2809,-2800,-2816,-2849,-2892,-2936,-2979,-3022,-3067,-3112,-3158,-3204,-3249,-3287,-3315,
+-3342,-3385,-3451,-3526,-3581,-3601,-3605,-3637,-3722,-3842,-3951,-4007,-4012,-4000,-4011,-4066,-4164,-4288,-4415,-4525,-4607,
+-4671,-4734,-4805,-4878,-4938,-4982,-5018,-5056,-5088,-5104,-5099,-5087,-5082,-5082,-5074,-5053,-5028,-5008,-4994,-4972,-4937,
+-4898,-4866,-4839,-4807,-4765,-4719,-4682,-4650,-4612,-4566,-4518,-4475,-4432,-4377,-4319,-4276,-4253,-4216,-4118,-3955,-3783,
+-3683,-3688,-3761,-3828,-3846,-3824,-3795,-3775,-3756,-3725,-3685,-3648,-3618,-3592,-3565,-3540,-3524,-3517,-3514,-3508,-3496,
+-3480,-3462,-3441,-3414,-3376,-3329,-3279,-3233,-3198,-3174,-3152,-3123,-3082,-3032,-2977,-2922,-2868,-2814,-2760,-2703,-2645,
+-2583,-2518,-2447,-2371,-2294,-2218,-2142,-2064,-1982,-1902,-1829,-1762,-1692,-1614,-1527,-1439,-1351,-1263,-1171,-1077,-985,
+-896,-806,-711,-615,-523,-435,-349,-259,-168,-78,12,109,211,315,413,507,601,697,793,885,972,
+1057,1145,1236,1327,1417,1506,1594,1680,1769,1865,1972,2083,2193,2294,2387,2470,2546,2613,2673,2727,2776,
+2819,2861,2906,2955,3004,3048,3085,3121,3160,3199,3233,3260,3289,3325,3364,3402,3435,3471,3513,3559,3594,
+3615,3627,3645,3671,3698,3719,3734,3751,3775,3800,3819,3829,3834,3840,3845,3840,3825,3805,3793,3799,3818,
+3831,3818,3777,3727,3694,3690,3707,3724,3725,3711,3691,3667,3633,3588,3538,3494,3462,3443,3429,3421,3420,
+3429,3446,3467,3487,3506,3527,3558,3604,3668,3749,3844,3946,4044,4127,4192,4246,4298,4351,4402,4451,4517,
+4614,4732,4820,4821,4718,4554,4400,4302,4255,4227,4191,4149,4115,4100,4106,4133,4176,4224,4259,4273,4274,
+4277,4286,4290,4269,4216,4140,4061,4008,4015,4105,4270,4460,4615,4705,4744,4775,4825,4890,4953,4999,5028,
+5045,5056,5077,5128,5218,5329,5426,5478,5479,5443,5385,5320,5262,5223,5204,5184,5143,5077,5007,4956,4928,
+4904,4866,4812,4751,4684,4603,4500,4380,4256,4154,4072,4011,3968,3940,3926,3919,3905,3875,3829,3779,3731,
+3681,3617,3529,3424,3316,3222,3147,3088,3037,2996,2963,2937,2915,2895,2879,2867,2860,2861,2874,2902,2944,
+2989,3031,3074,3124,3184,3243,3286,3307,3306,3286,3258,3233,3227,3246,3277,3302,3313,3314,3313,3306,3284,
+3243,3190,3138,3090,3045,3005,2972,2946,2914,2869,2816,2773,2749,2740,2734,2723,2711,2703,2695,2685,2680,
+2697,2742,2809,2881,2945,3000,3050,3097,3134,3153,3145,3103,3025,2915,2785,2649,2509,2356,2183,1994,1806,
+1642,1509,1395,1282,1162,1048,960,911,898,906,922,939,949,948,939,935,950,985,1030,1077,1130,
+1203,1292,1381,1456,1520,1587,1657,1708,1714,1680,1635,1609,1608,1616,1622,1622,1615,1597,1578,1596,1690,
+1856,2032,2142,2164,2148,2164,2228,2291,2294,2229,2141,2075,2036,2001,1955,1908,1873,1843,1799,1734,1655,
+1578,1503,1416,1313,1198,1083,969,855,738,621,505,388,267,147,30,-83,-195,-309,-421,-530,-636,
+-737,-820,-870,-882,-865,-844,-837,-850,-881,-920,-958,-978,-966,-912,-815,-674,-494,-288,-84,82,182,
+206,170,100,27,-26,-56,-68,-70,-64,-54,-57,-97,-183,-291,-375,-409,-411,-420,-462,-530,-606,
+-680,-756,-832,-895,-940,-977,-1027,-1094,-1158,-1196,-1208,-1210,-1216,-1225,-1233,-1248,-1294,-1385,-1510,-1640,-1750,
+-1833,-1899,-1955,-2005,-2047,-2081,-2113,-2147,-2174,-2189,-2197,-2216,-2265,-2338,-2406,-2436,-2425,-2396,-2380,-2385,-2396,
+-2397,-2390,-2386,-2399,-2432,-2480,-2538,-2600,-2666,-2742,-2839,-2965,-3125,-3321,-3556,-3822,-4087,-4299,-4425,-4474,-4488,
+-4501,-4514,-4513,-4500,-4495,-4511,-4536,-4551,-4553,-4558,-4576,-4594,-4596,-4584,-4562,-4515,-4410,-4238,-4032,-3835,-3640,
+-3396,-3077,-2737,-2483,-2381,-2393,-2422,-2408,-2368,-2350,-2372,-2410,-2436,-2451,-2477,-2520,-2568,-2612,-2660,-2724,-2804,
+-2880,-2935,-2965,-2982,-2999,-3020,-3046,-3075,-3102,-3122,-3137,-3153,-3174,-3199,-3223,-3241,-3259,-3284,-3318,-3353,-3380,
+-3398,-3414,-3441,-3487,-3547,-3608,-3657,-3689,-3706,-3714,-3716,-3712,-3707,-3707,-3717,-3733,-3747,-3756,-3761,-3765,-3769,
+-3771,-3778,-3797,-3828,-3858,-3875,-3877,-3878,-3888,-3913,-3943,-3971,-3993,-4010,-4019,-4017,-4000,-3964,-3912,-3850,-3786,
+-3730,-3684,-3646,-3609,-3571,-3535,-3502,-3470,-3437,-3402,-3368,-3339,-3319,-3310,-3312,-3320,-3323,-3315,-3298,-3275,-3244,
+-3203,-3166,-3166,-3233,-3371,-3541,-3696,-3813,-3895,-3955,-3987,-3976,-3919,-3836,-3751,-3677,-3609,-3540,-3475,-3421,-3376,
+-3328,-3266,-3188,-3105,-3031,-2970,-2917,-2861,-2794,-2720,-2651,-2597,-2554,-2511,-2460,-2403,-2346,-2281,-2197,-2092,-1981,
+-1885,-1810,-1743,-1669,-1586,-1502,-1421,-1337,-1245,-1147,-1046,-945,-838,-723,-608,-500,-401,-307,-215,-127,-44,
+39,125,213,296,376,463,565,676,778,857,919,980,1054,1141,1233,1324,1412,1496,1573,1645,1712,
+1779,1850,1924,1998,2071,2142,2209,2272,2335,2400,2469,2537,2602,2663,2726,2797,2874,2949,3009,3049,3074,
+3099,3132,3169,3199,3219,3234,3245,3229,3157,3028,2894,2830,2878,3015,3174,3299,3377,3421,3437,3420,3374,
+3319,3281,3268,3271,3286,3319,3376,3448,3518,3576,3627,3676,3721,3763,3812,3885,3979,4074,4155,4220,4269,
+4279,4220,4085,3901,3684,3395,2970,2419,1881,1555,1554,1818,2170,2455,2630,2733,2802,2841,2841,2817,2792,
+2773,2746,2697,2635,2580,2541,2502,2439,2352,2259,2191,2161,2151,2128,2063,1959,1850,1773,1734,1712,1680,
+1630,1576,1529,1485,1436,1382,1336,1302,1276,1245,1206,1163,1121,1078,1035,994,955,916,873,828,788,
+755,723,685,645,614,600,597,594,587,575,560,534,491,428,354,278,206,141,85,35,-11,
+-62,-116,-173,-229,-285,-343,-399,-450,-491,-524,-555,-588,-624,-658,-688,-715,-736,-753,-768,-787,-812,
+-839,-859,-866,-864,-861,-865,-871,-878,-884,-893,-901,-899,-885,-869,-867,-882,-900,-908,-914,-938,-978,
+-998,-944,-807,-635,-504,-461,-500,-589,-696,-806,-901,-956,-958,-926,-894,-887,-901,-919,-931,-938,-944,
+-947,-944,-937,-935,-939,-941,-936,-928,-921,-917,-912,-905,-902,-910,-926,-944,-957,-964,-966,-963,-958,
+-958,-967,-977,-976,-963,-956,-975,-1019,-1055,-1053,-1011,-962,-943,-962,-999,-1028,-1041,-1044,-1043,-1039,-1030,
+-1021,-1021,-1031,-1044,-1051,-1051,-1048,-1050,-1055,-1059,-1060,-1060,-1060,-1062,-1065,-1068,-1072,-1075,-1078,-1079,-1078,
+-1074,-1069,-1067,-1067,-1069,-1066,-1055,-1042,-1033,-1030,-1029,-1023,-1013,-1001,-994,-990,-988,-988,-994,-1007,-1027,
+-1048,-1069,-1089,-1110,-1129,-1148,-1164,-1178,-1190,-1201,-1213,-1231,-1254,-1279,-1302,-1319,-1335,-1353,-1374,-1394,-1411,
+-1425,-1438,-1450,-1459,-1464,-1465,-1462,-1457,-1453,-1451,-1453,-1459,-1466,-1472,-1480,-1493,-1514,-1539,-1563,-1584,-1606,
+-1631,-1659,-1688,-1714,-1739,-1768,-1805,-1849,-1894,-1936,-1974,-2011,-2049,-2089,-2127,-2164,-2198,-2231,-2263,-2292,-2322,
+-2352,-2384,-2413,-2440,-2465,-2493,-2524,-2557,-2586,-2612,-2635,-2657,-2675,-2691,-2707,-2724,-2742,-2759,-2777,-2801,-2830,
+-2862,-2892,-2919,-2945,-2974,-3002,-3028,-3053,-3081,-3111,-3137,-3156,-3173,-3194,-3220,-3247,-3269,-3292,-3321,-3356,-3392,
+-3422,-3450,-3482,-3516,-3551,-3583,-3614,-3647,-3678,-3704,-3726,-3751,-3777,-3794,-3800,-3803,-3820,-3856,-3898,-3926,-3936,
+-3939,-3947,-3962,-3979,-3995,-4012,-4031,-4048,-4062,-4072,-4078,-4079,-4075,-4072,-4080,-4098,-4118,-4129,-4135,-4143,-4155,
+-4165,-4164,-4158,-4155,-4158,-4158,-4151,-4142,-4141,-4148,-4154,-4151,-4142,-4134,-4130,-4124,-4112,-4097,-4084,-4072,-4058,
+-4037,-4007,-3965,-3914,-3864,-3830,-3819,-3820,-3817,-3806,-3793,-3778,-3739,-3647,-3504,-3356,-3264,-3263,-3332,-3420,-3482,
+-3503,-3491,-3460,-3423,-3387,-3353,-3318,-3284,-3248,-3212,-3175,-3139,-3111,-3094,-3083,-3060,-3013,-2945,-2879,-2832,-2805,
+-2786,-2769,-2753,-2734,-2696,-2630,-2552,-2495,-2475,-2478,-2475,-2459,-2447,-2451,-2454,-2422,-2347,-2262,-2212,-2218,-2267,
+-2334,-2401,-2453,-2472,-2444,-2379,-2318,-2304,-2345,-2416,-2482,-2535,-2588,-2653,-2721,-2776,-2812,-2838,-2865,-2895,-2925,
+-2950,-2974,-2997,-3012,-3012,-2996,-2972,-2948,-2920,-2875,-2810,-2737,-2678,-2651,-2657,-2685,-2716,-2740,-2751,-2750,-2741,
+-2729,-2718,-2709,-2701,-2692,-2684,-2679,-2680,-2687,-2701,-2718,-2735,-2748,-2758,-2768,-2778,-2786,-2791,-2796,-2808,-2831,
+-2865,-2901,-2931,-2952,-2964,-2969,-2965,-2951,-2932,-2917,-2915,-2927,-2943,-2949,-2934,-2898,-2849,-2802,-2768,-2757,-2769,
+-2800,-2845,-2892,-2936,-2975,-3013,-3055,-3102,-3151,-3200,-3244,-3282,-3312,-3344,-3391,-3456,-3527,-3578,-3599,-3611,-3652,
+-3740,-3853,-3944,-3986,-3991,-3998,-4038,-4113,-4209,-4305,-4394,-4473,-4546,-4620,-4703,-4791,-4875,-4943,-4995,-5039,-5081,
+-5112,-5123,-5115,-5105,-5103,-5103,-5092,-5068,-5043,-5029,-5022,-5005,-4972,-4933,-4900,-4873,-4840,-4797,-4752,-4713,-4678,
+-4638,-4592,-4547,-4507,-4460,-4401,-4344,-4310,-4288,-4222,-4060,-3814,-3585,-3484,-3545,-3699,-3832,-3880,-3858,-3817,-3790,
+-3771,-3744,-3706,-3668,-3639,-3614,-3590,-3568,-3554,-3549,-3548,-3546,-3540,-3530,-3516,-3497,-3472,-3441,-3405,-3365,-3323,
+-3284,-3251,-3219,-3182,-3137,-3083,-3026,-2969,-2913,-2859,-2802,-2743,-2683,-2621,-2558,-2490,-2419,-2346,-2275,-2205,-2133,
+-2057,-1980,-1908,-1838,-1761,-1671,-1573,-1478,-1391,-1306,-1216,-1122,-1030,-942,-854,-763,-669,-578,-491,-405,-315,
+-224,-132,-39,59,165,269,366,456,548,645,744,838,926,1013,1104,1197,1288,1377,1463,1551,1643,
+1741,1846,1959,2070,2173,2264,2346,2421,2489,2546,2594,2634,2675,2719,2769,2821,2872,2919,2962,3004,3047,
+3091,3130,3162,3189,3219,3254,3290,3321,3350,3383,3425,3469,3502,3520,3532,3550,3578,3608,3634,3656,3680,
+3708,3734,3749,3752,3750,3751,3748,3734,3709,3690,3701,3751,3821,3868,3858,3788,3691,3615,3587,3598,3620,
+3629,3620,3599,3570,3534,3490,3448,3415,3392,3378,3368,3365,3373,3391,3415,3439,3461,3486,3515,3550,3594,
+3650,3722,3810,3905,3992,4059,4107,4146,4184,4222,4257,4293,4350,4442,4552,4628,4618,4517,4372,4250,4188,
+4171,4164,4146,4121,4105,4105,4119,4147,4185,4224,4249,4257,4258,4272,4302,4329,4324,4276,4199,4130,4107,
+4157,4279,4443,4601,4713,4772,4804,4838,4883,4928,4957,4969,4974,4982,5003,5054,5149,5282,5420,5517,5547,
+5521,5465,5403,5342,5284,5231,5182,5129,5064,4995,4939,4908,4888,4857,4801,4726,4647,4566,4475,4369,4256,
+4160,4079,4015,3965,3926,3899,3885,3875,3856,3818,3765,3707,3652,3597,3529,3442,3338,3234,3146,3079,3026,
+2980,2938,2905,2882,2866,2853,2840,2831,2830,2840,2860,2890,2926,2963,3000,3043,3095,3156,3214,3257,3279,
+3282,3269,3244,3218,3206,3215,3242,3270,3292,3309,3322,3324,3302,3255,3197,3143,3100,3064,3029,2997,2965,
+2927,2877,2819,2770,2740,2727,2719,2709,2696,2684,2673,2666,2669,2691,2736,2801,2875,2951,3024,3083,3117,
+3118,3088,3034,2965,2883,2790,2692,2597,2505,2406,2290,2157,2021,1898,1792,1686,1562,1423,1288,1179,1103,
+1051,1017,1003,1011,1028,1034,1022,1009,1017,1055,1111,1169,1233,1314,1411,1511,1598,1671,1737,1791,1814,
+1793,1740,1685,1650,1638,1639,1646,1652,1647,1622,1597,1614,1712,1877,2041,2136,2149,2129,2131,2164,2189,
+2169,2111,2053,2017,1992,1954,1901,1855,1827,1807,1768,1698,1614,1535,1462,1381,1281,1165,1047,932,819,
+705,589,474,360,246,130,13,-102,-217,-330,-441,-552,-666,-775,-867,-925,-947,-952,-964,-996,-1045,
+-1102,-1157,-1204,-1237,-1244,-1212,-1132,-998,-812,-589,-358,-158,-24,33,30,-4,-40,-68,-92,-121,-149,
+-156,-136,-106,-107,-162,-253,-332,-371,-385,-409,-463,-534,-600,-656,-717,-791,-864,-922,-968,-1018,-1083,
+-1150,-1199,-1223,-1227,-1223,-1217,-1216,-1236,-1291,-1382,-1492,-1600,-1698,-1788,-1872,-1948,-2007,-2051,-2090,-2134,-2180,
+-2217,-2239,-2252,-2277,-2330,-2400,-2455,-2466,-2433,-2386,-2362,-2375,-2411,-2445,-2462,-2466,-2468,-2480,-2508,-2550,-2603,
+-2670,-2759,-2882,-3036,-3215,-3417,-3649,-3910,-4164,-4351,-4434,-4431,-4401,-4391,-4402,-4407,-4399,-4394,-4407,-4432,-4450,
+-4461,-4479,-4508,-4536,-4557,-4585,-4628,-4660,-4626,-4496,-4303,-4099,-3888,-3623,-3278,-2911,-2644,-2542,-2560,-2582,-2536,
+-2445,-2376,-2365,-2390,-2418,-2446,-2490,-2550,-2606,-2643,-2675,-2723,-2792,-2859,-2900,-2912,-2915,-2930,-2963,-3004,-3041,
+-3067,-3085,-3100,-3117,-3137,-3158,-3178,-3196,-3217,-3248,-3286,-3322,-3348,-3364,-3381,-3416,-3476,-3552,-3623,-3675,-3706,
+-3724,-3732,-3729,-3713,-3695,-3686,-3694,-3709,-3720,-3725,-3731,-3745,-3762,-3776,-3786,-3801,-3823,-3843,-3850,-3844,-3837,
+-3843,-3865,-3894,-3921,-3942,-3959,-3974,-3981,-3970,-3936,-3881,-3819,-3762,-3720,-3685,-3644,-3592,-3534,-3486,-3456,-3438,
+-3418,-3389,-3352,-3315,-3286,-3273,-3275,-3282,-3284,-3272,-3252,-3232,-3210,-3183,-3159,-3171,-3256,-3417,-3613,-3788,-3910,
+-3985,-4034,-4059,-4050,-4000,-3924,-3844,-3769,-3693,-3610,-3525,-3446,-3372,-3288,-3188,-3080,-2984,-2914,-2866,-2824,-2770,
+-2699,-2623,-2557,-2513,-2485,-2461,-2431,-2391,-2342,-2279,-2196,-2094,-1987,-1890,-1806,-1729,-1648,-1561,-1469,-1374,-1276,
+-1178,-1085,-998,-907,-806,-695,-585,-482,-386,-290,-195,-103,-17,65,149,233,313,393,483,590,703,
+804,881,942,1003,1075,1158,1244,1330,1416,1503,1584,1655,1719,1783,1853,1927,2001,2071,2140,2209,2279,
+2348,2414,2479,2545,2611,2677,2742,2811,2885,2954,3005,3032,3047,3068,3104,3150,3188,3215,3230,3228,3182,
+3066,2897,2743,2683,2751,2907,3080,3218,3310,3365,3380,3352,3297,3250,3241,3269,3310,3349,3396,3459,3529,
+3590,3635,3676,3720,3765,3803,3846,3914,4008,4105,4179,4227,4253,4243,4168,4020,3827,3613,3347,2958,2440,
+1914,1581,1567,1824,2175,2462,2635,2735,2805,2847,2849,2826,2804,2793,2774,2726,2657,2593,2550,2515,2463,
+2384,2293,2219,2176,2156,2131,2076,1991,1899,1826,1779,1741,1696,1644,1598,1562,1523,1468,1402,1343,1306,
+1284,1261,1230,1195,1160,1127,1090,1048,1005,961,917,873,831,794,760,724,690,664,649,641,635,
+625,610,587,552,502,440,372,301,231,165,107,59,14,-33,-86,-140,-192,-244,-298,-355,-407,
+-449,-482,-511,-542,-576,-611,-644,-673,-697,-715,-733,-754,-783,-813,-836,-846,-847,-848,-852,-860,-867,
+-874,-884,-891,-886,-866,-840,-829,-839,-859,-873,-883,-909,-958,-1000,-984,-884,-726,-567,-461,-430,-474,
+-582,-728,-869,-956,-970,-935,-900,-892,-906,-922,-928,-932,-937,-940,-935,-923,-916,-918,-922,-919,-910,
+-902,-897,-895,-895,-898,-906,-919,-933,-947,-957,-959,-950,-935,-928,-938,-955,-962,-949,-927,-924,-947,
+-984,-1008,-1010,-995,-981,-973,-968,-966,-973,-991,-1011,-1018,-1007,-988,-979,-985,-999,-1008,-1009,-1007,-1009,
+-1016,-1024,-1027,-1026,-1025,-1025,-1029,-1035,-1041,-1045,-1047,-1048,-1048,-1048,-1045,-1040,-1036,-1034,-1031,-1026,-1018,
+-1010,-1005,-1000,-993,-984,-975,-970,-964,-955,-943,-937,-944,-965,-993,-1020,-1043,-1063,-1080,-1096,-1111,-1126,
+-1140,-1153,-1167,-1188,-1215,-1245,-1272,-1293,-1311,-1329,-1350,-1372,-1391,-1405,-1415,-1425,-1433,-1438,-1440,-1439,-1435,
+-1431,-1427,-1426,-1428,-1433,-1440,-1447,-1458,-1475,-1496,-1520,-1545,-1570,-1598,-1626,-1654,-1681,-1706,-1735,-1768,-1807,
+-1850,-1893,-1935,-1975,-2015,-2053,-2088,-2122,-2154,-2187,-2220,-2255,-2293,-2330,-2365,-2393,-2416,-2438,-2464,-2495,-2526,
+-2554,-2579,-2601,-2624,-2646,-2668,-2689,-2710,-2731,-2751,-2772,-2795,-2823,-2852,-2881,-2907,-2934,-2961,-2987,-3011,-3035,
+-3062,-3088,-3110,-3127,-3142,-3163,-3189,-3218,-3246,-3275,-3309,-3345,-3377,-3404,-3431,-3465,-3502,-3538,-3569,-3600,-3632,
+-3661,-3683,-3703,-3727,-3756,-3782,-3797,-3806,-3823,-3856,-3895,-3926,-3945,-3957,-3970,-3982,-3992,-4001,-4012,-4026,-4041,
+-4052,-4061,-4066,-4067,-4064,-4065,-4077,-4099,-4119,-4127,-4131,-4142,-4160,-4172,-4170,-4159,-4152,-4156,-4161,-4158,-4151,
+-4151,-4160,-4172,-4175,-4171,-4164,-4156,-4144,-4124,-4104,-4090,-4084,-4081,-4075,-4059,-4028,-3980,-3926,-3881,-3858,-3850,
+-3845,-3833,-3820,-3809,-3782,-3710,-3582,-3426,-3298,-3245,-3275,-3356,-3443,-3500,-3515,-3499,-3468,-3435,-3400,-3359,-3313,
+-3268,-3231,-3198,-3164,-3131,-3106,-3090,-3067,-3023,-2960,-2895,-2849,-2822,-2801,-2777,-2753,-2728,-2695,-2645,-2587,-2544,
+-2526,-2523,-2513,-2492,-2475,-2472,-2471,-2446,-2389,-2324,-2281,-2276,-2306,-2361,-2438,-2521,-2575,-2565,-2495,-2410,-2366,
+-2387,-2452,-2521,-2570,-2607,-2642,-2677,-2706,-2725,-2741,-2762,-2789,-2817,-2846,-2876,-2904,-2922,-2925,-2916,-2906,-2901,
+-2889,-2854,-2794,-2726,-2674,-2654,-2663,-2686,-2710,-2729,-2741,-2742,-2733,-2717,-2703,-2694,-2691,-2687,-2680,-2669,-2663,
+-2668,-2686,-2713,-2738,-2752,-2754,-2749,-2747,-2749,-2755,-2764,-2778,-2800,-2829,-2859,-2882,-2898,-2909,-2914,-2911,-2899,
+-2881,-2867,-2862,-2865,-2868,-2860,-2838,-2803,-2767,-2741,-2732,-2741,-2764,-2797,-2837,-2878,-2916,-2951,-2989,-3034,-3088,
+-3144,-3197,-3243,-3281,-3313,-3346,-3391,-3451,-3517,-3571,-3606,-3638,-3690,-3770,-3855,-3913,-3934,-3945,-3982,-4060,-4160,
+-4250,-4314,-4362,-4411,-4476,-4560,-4662,-4769,-4868,-4945,-5001,-5046,-5088,-5119,-5132,-5130,-5124,-5123,-5121,-5106,-5081,
+-5058,-5048,-5044,-5030,-4999,-4963,-4931,-4902,-4866,-4820,-4775,-4737,-4702,-4661,-4614,-4571,-4533,-4489,-4432,-4378,-4346,
+-4317,-4231,-4038,-3768,-3533,-3450,-3544,-3726,-3874,-3922,-3893,-3845,-3815,-3795,-3769,-3733,-3697,-3670,-3647,-3625,-3606,
+-3596,-3594,-3596,-3595,-3590,-3580,-3563,-3542,-3517,-3493,-3468,-3440,-3407,-3370,-3332,-3292,-3247,-3195,-3136,-3075,-3015,
+-2959,-2905,-2848,-2787,-2724,-2661,-2599,-2535,-2467,-2397,-2329,-2262,-2192,-2118,-2043,-1971,-1900,-1819,-1724,-1621,-1524,
+-1438,-1355,-1266,-1171,-1078,-989,-903,-813,-719,-629,-542,-456,-365,-273,-180,-87,9,112,214,310,400,
+493,593,694,791,881,971,1064,1159,1250,1337,1423,1512,1607,1711,1819,1930,2036,2131,2214,2289,2358,
+2419,2469,2507,2542,2582,2631,2688,2743,2793,2836,2877,2920,2964,3008,3046,3079,3112,3147,3184,3218,3246,
+3271,3302,3339,3377,3406,3423,3436,3455,3482,3514,3545,3574,3605,3633,3653,3659,3660,3664,3672,3674,3657,
+3627,3611,3639,3717,3813,3870,3847,3747,3614,3508,3462,3470,3500,3521,3522,3504,3472,3434,3395,3363,3341,
+3327,3318,3312,3317,3336,3363,3389,3412,3436,3466,3504,3545,3584,3628,3687,3763,3849,3928,3985,4021,4044,
+4065,4084,4097,4111,4141,4198,4269,4319,4312,4249,4165,4104,4084,4090,4097,4095,4092,4097,4111,4132,4160,
+4193,4226,4247,4250,4250,4268,4309,4354,4368,4333,4266,4212,4216,4297,4435,4585,4703,4773,4810,4840,4878,
+4914,4931,4925,4914,4921,4960,5032,5137,5272,5416,5532,5583,5564,5498,5422,5354,5294,5231,5163,5090,5014,
+4937,4874,4838,4826,4816,4780,4710,4619,4526,4438,4348,4253,4160,4108,4042,3986,3938,3897,3863,3840,3823,
+3801,3766,3715,3654,3586,3515,3435,3344,3244,3147,3067,3008,2961,2917,2876,2843,2824,2815,2806,2796,2789,
+2793,2811,2839,2871,2904,2934,2965,3003,3051,3107,3162,3206,3236,3254,3260,3254,3238,3224,3222,3231,3247,
+3266,3285,3302,3304,3281,3234,3177,3128,3091,3059,3027,2992,2958,2918,2869,2814,2765,2733,2718,2711,2702,
+2687,2671,2657,2653,2665,2695,2741,2796,2856,2920,2981,3027,3044,3023,2969,2897,2819,2744,2672,2602,2536,
+2474,2409,2333,2247,2160,2081,2009,1928,1823,1699,1578,1475,1385,1299,1217,1158,1134,1133,1125,1096,1065,
+1064,1104,1171,1245,1321,1408,1508,1611,1703,1782,1846,1887,1892,1858,1803,1749,1710,1686,1674,1677,1686,
+1685,1665,1644,1666,1758,1900,2030,2099,2107,2094,2091,2095,2079,2032,1977,1941,1928,1915,1883,1837,1800,
+1781,1764,1723,1652,1568,1492,1424,1348,1251,1135,1015,902,794,683,567,453,343,237,129,17,-99,
+-216,-329,-436,-543,-655,-769,-872,-946,-990,-1023,-1067,-1134,-1213,-1288,-1346,-1385,-1409,-1416,-1397,-1343,-1238,
+-1076,-861,-620,-397,-233,-146,-117,-113,-107,-98,-105,-141,-192,-222,-210,-169,-142,-161,-217,-277,-323,
+-365,-429,-511,-580,-613,-622,-648,-717,-821,-924,-1004,-1063,-1114,-1163,-1207,-1237,-1248,-1240,-1221,-1212,-1234,
+-1298,-1391,-1491,-1584,-1673,-1767,-1863,-1946,-2006,-2051,-2094,-2147,-2202,-2244,-2267,-2282,-2308,-2357,-2417,-2460,-2464,
+-2432,-2394,-2381,-2406,-2454,-2499,-2522,-2523,-2516,-2518,-2537,-2573,-2624,-2696,-2800,-2942,-3109,-3284,-3471,-3691,-3952,
+-4218,-4416,-4497,-4474,-4413,-4371,-4357,-4348,-4331,-4315,-4317,-4330,-4346,-4365,-4397,-4440,-4478,-4508,-4553,-4632,-4721,
+-4756,-4697,-4559,-4383,-4173,-3894,-3536,-3171,-2914,-2817,-2819,-2800,-2701,-2562,-2459,-2424,-2429,-2435,-2442,-2472,-2530,
+-2592,-2636,-2670,-2716,-2781,-2841,-2871,-2868,-2858,-2867,-2901,-2944,-2983,-3011,-3034,-3053,-3068,-3080,-3091,-3106,-3128,
+-3159,-3198,-3242,-3288,-3329,-3362,-3394,-3436,-3497,-3568,-3634,-3682,-3711,-3728,-3734,-3725,-3700,-3673,-3659,-3664,-3679,
+-3690,-3695,-3702,-3719,-3742,-3761,-3775,-3788,-3805,-3820,-3826,-3823,-3821,-3828,-3845,-3864,-3876,-3884,-3895,-3913,-3932,
+-3936,-3914,-3862,-3794,-3733,-3690,-3659,-3621,-3565,-3501,-3446,-3413,-3399,-3387,-3368,-3340,-3307,-3274,-3246,-3229,-3222,
+-3219,-3211,-3198,-3182,-3164,-3143,-3134,-3170,-3289,-3487,-3717,-3910,-4031,-4091,-4121,-4134,-4121,-4075,-4007,-3937,-3869,
+-3795,-3704,-3604,-3501,-3393,-3268,-3124,-2979,-2862,-2785,-2735,-2688,-2625,-2548,-2474,-2417,-2384,-2371,-2369,-2366,-2350,
+-2314,-2252,-2168,-2072,-1974,-1881,-1795,-1710,-1623,-1531,-1430,-1317,-1199,-1090,-999,-924,-847,-758,-658,-560,-467,
+-375,-278,-179,-84,2,85,169,252,333,415,507,610,717,815,896,969,1041,1117,1194,1268,1345,
+1428,1517,1601,1673,1735,1797,1866,1940,2013,2082,2150,2223,2299,2372,2438,2500,2564,2631,2699,2766,2833,
+2899,2956,2992,3004,3011,3035,3082,3137,3180,3205,3215,3198,3124,2974,2780,2622,2581,2675,2847,3016,3136,
+3208,3248,3262,3250,3226,3220,3253,3315,3380,3436,3490,3553,3616,3664,3695,3724,3761,3798,3827,3861,3924,
+4017,4114,4185,4226,4247,4236,4158,3997,3786,3564,3314,2966,2488,1979,1634,1593,1829,2174,2460,2631,2728,
+2799,2850,2865,2850,2831,2818,2797,2746,2672,2603,2556,2520,2473,2402,2319,2246,2199,2173,2151,2114,2053,
+1977,1899,1827,1760,1697,1648,1621,1606,1579,1522,1443,1367,1316,1287,1265,1239,1211,1186,1161,1128,1085,
+1038,993,951,910,867,825,787,756,730,710,694,678,663,647,630,604,564,512,452,390,327,
+259,193,133,84,40,-6,-58,-110,-158,-204,-253,-305,-354,-396,-431,-464,-498,-531,-563,-591,-616,
+-641,-664,-689,-719,-752,-785,-810,-823,-828,-832,-840,-850,-859,-864,-867,-868,-860,-842,-821,-811,-820,
+-841,-862,-880,-906,-947,-985,-991,-942,-842,-718,-602,-525,-515,-585,-715,-850,-932,-944,-915,-892,-896,
+-914,-923,-922,-921,-927,-930,-923,-909,-901,-903,-909,-908,-900,-892,-890,-893,-898,-902,-906,-912,-921,
+-934,-947,-952,-942,-921,-903,-903,-916,-926,-921,-905,-895,-904,-931,-964,-991,-1003,-994,-963,-920,-887,
+-885,-916,-957,-983,-980,-961,-946,-946,-954,-961,-962,-963,-968,-977,-986,-990,-990,-989,-990,-993,-998,
+-1002,-1003,-1003,-1005,-1011,-1017,-1018,-1012,-1001,-992,-990,-992,-994,-994,-991,-983,-972,-961,-952,-950,-947,
+-936,-917,-898,-893,-906,-933,-965,-993,-1016,-1035,-1051,-1067,-1082,-1097,-1113,-1132,-1154,-1181,-1211,-1239,-1262,
+-1283,-1304,-1326,-1348,-1368,-1383,-1395,-1403,-1408,-1411,-1412,-1413,-1412,-1411,-1409,-1407,-1405,-1406,-1410,-1417,-1427,
+-1441,-1459,-1480,-1505,-1533,-1564,-1593,-1621,-1648,-1676,-1705,-1737,-1772,-1810,-1852,-1896,-1940,-1980,-2016,-2049,-2081,
+-2110,-2139,-2171,-2209,-2252,-2295,-2333,-2362,-2384,-2405,-2430,-2460,-2492,-2523,-2549,-2575,-2602,-2631,-2660,-2689,-2715,
+-2739,-2761,-2781,-2800,-2821,-2842,-2864,-2886,-2908,-2931,-2953,-2975,-2998,-3023,-3050,-3073,-3093,-3113,-3137,-3166,-3199,
+-3233,-3269,-3307,-3341,-3369,-3393,-3421,-3455,-3493,-3526,-3553,-3579,-3607,-3634,-3655,-3674,-3696,-3726,-3757,-3780,-3798,
+-3819,-3850,-3885,-3916,-3940,-3960,-3979,-3993,-4000,-4004,-4011,-4023,-4035,-4045,-4055,-4064,-4070,-4072,-4078,-4093,-4113,
+-4127,-4131,-4132,-4142,-4162,-4178,-4178,-4167,-4160,-4163,-4170,-4172,-4170,-4172,-4179,-4185,-4185,-4180,-4175,-4168,-4155,
+-4134,-4113,-4099,-4096,-4098,-4099,-4094,-4078,-4044,-3996,-3946,-3905,-3878,-3859,-3842,-3829,-3821,-3805,-3753,-3650,-3504,
+-3359,-3264,-3250,-3310,-3407,-3491,-3533,-3531,-3507,-3478,-3447,-3406,-3355,-3305,-3264,-3230,-3193,-3152,-3115,-3089,-3064,
+-3024,-2966,-2906,-2863,-2837,-2815,-2785,-2748,-2713,-2679,-2643,-2606,-2578,-2564,-2554,-2537,-2512,-2492,-2486,-2482,-2460,
+-2417,-2369,-2336,-2328,-2345,-2391,-2471,-2569,-2644,-2651,-2581,-2478,-2408,-2406,-2459,-2526,-2572,-2592,-2600,-2606,-2615,
+-2628,-2645,-2669,-2696,-2723,-2751,-2779,-2805,-2821,-2829,-2835,-2848,-2866,-2868,-2836,-2772,-2702,-2657,-2651,-2672,-2701,
+-2725,-2742,-2752,-2753,-2742,-2723,-2705,-2696,-2695,-2696,-2689,-2676,-2663,-2660,-2673,-2699,-2724,-2736,-2733,-2722,-2713,
+-2712,-2716,-2724,-2737,-2757,-2784,-2811,-2834,-2853,-2869,-2879,-2879,-2870,-2854,-2839,-2825,-2811,-2795,-2774,-2752,-2732,
+-2720,-2720,-2733,-2752,-2774,-2796,-2820,-2849,-2881,-2917,-2959,-3012,-3073,-3136,-3193,-3240,-3278,-3312,-3348,-3391,-3446,
+-3508,-3566,-3615,-3660,-3716,-3783,-3842,-3874,-3887,-3913,-3982,-4091,-4202,-4277,-4309,-4320,-4342,-4395,-4483,-4597,-4723,
+-4841,-4934,-4999,-5046,-5085,-5119,-5140,-5146,-5145,-5142,-5136,-5120,-5099,-5083,-5076,-5072,-5057,-5029,-4996,-4966,-4934,
+-4891,-4840,-4792,-4755,-4721,-4680,-4633,-4590,-4554,-4514,-4463,-4412,-4375,-4341,-4261,-4097,-3878,-3697,-3641,-3720,-3856,
+-3952,-3967,-3927,-3883,-3856,-3835,-3806,-3769,-3736,-3710,-3688,-3667,-3653,-3649,-3653,-3655,-3652,-3641,-3625,-3604,-3579,
+-3555,-3536,-3519,-3499,-3471,-3437,-3399,-3356,-3307,-3250,-3187,-3123,-3061,-3004,-2950,-2895,-2835,-2771,-2707,-2645,-2583,
+-2517,-2448,-2379,-2309,-2238,-2163,-2087,-2015,-1944,-1864,-1772,-1672,-1578,-1492,-1407,-1315,-1215,-1119,-1029,-943,-853,
+-762,-673,-588,-503,-412,-317,-224,-132,-39,59,158,254,347,443,544,646,743,836,928,1021,1114,
+1204,1293,1382,1477,1577,1681,1786,1890,1986,2073,2150,2219,2283,2339,2384,2422,2460,2505,2560,2617,2671,
+2716,2756,2794,2835,2876,2916,2953,2989,3028,3069,3109,3143,3171,3197,3226,3259,3291,3316,3335,3353,3373,
+3398,3424,3452,3483,3515,3542,3558,3563,3567,3575,3586,3585,3569,3550,3555,3604,3688,3768,3794,3740,3619,
+3479,3372,3328,3339,3376,3406,3415,3400,3370,3335,3305,3284,3273,3266,3262,3264,3277,3303,3335,3363,3388,
+3415,3450,3491,3532,3568,3605,3653,3719,3793,3860,3908,3934,3947,3958,3970,3979,3986,3996,4015,4041,4061,
+4061,4043,4022,4015,4022,4034,4042,4047,4061,4088,4125,4165,4207,4247,4279,4292,4284,4271,4276,4312,4364,
+4399,4393,4355,4324,4344,4430,4557,4679,4762,4804,4829,4860,4899,4929,4935,4924,4923,4958,5040,5162,5304,
+5443,5549,5595,5569,5487,5383,5292,5224,5169,5113,5049,4975,4895,4818,4758,4729,4722,4711,4670,4594,4501,
+4413,4335,4260,4183,4108,4085,4021,3962,3909,3859,3815,3781,3755,3734,3708,3667,3603,3520,3428,3334,3242,
+3151,3066,2995,2941,2899,2860,2821,2792,2779,2777,2772,2763,2754,2758,2778,2807,2838,2868,2895,2922,2953,
+2992,3040,3091,3138,3180,3216,3244,3261,3264,3256,3245,3236,3232,3233,3240,3246,3242,3220,3180,3138,3102,
+3073,3041,3003,2963,2924,2887,2847,2803,2764,2737,2725,2719,2713,2699,2681,2663,2656,2668,2699,2740,2785,
+2828,2870,2907,2934,2939,2916,2866,2800,2730,2665,2607,2550,2492,2432,2371,2309,2248,2193,2148,2108,2059,
+1990,1907,1827,1757,1686,1598,1496,1405,1346,1310,1270,1213,1160,1141,1167,1224,1292,1367,1452,1547,1643,
+1729,1802,1861,1895,1897,1871,1833,1796,1762,1731,1709,1706,1714,1714,1699,1688,1716,1796,1897,1975,2009,
+2016,2023,2035,2029,1988,1923,1864,1835,1831,1828,1811,1782,1756,1738,1714,1669,1600,1523,1451,1385,1310,
+1214,1100,983,874,771,663,549,434,328,231,135,30,-85,-205,-321,-430,-536,-646,-762,-873,-964,
+-1034,-1095,-1165,-1255,-1352,-1436,-1490,-1513,-1513,-1500,-1480,-1448,-1386,-1267,-1079,-838,-594,-404,-293,-247,-223,
+-191,-154,-139,-163,-213,-253,-256,-228,-199,-195,-215,-245,-285,-351,-451,-559,-627,-628,-591,-580,-643,
+-777,-933,-1064,-1147,-1191,-1217,-1240,-1262,-1275,-1269,-1249,-1236,-1258,-1323,-1415,-1509,-1597,-1685,-1780,-1874,-1950,
+-2002,-2044,-2093,-2153,-2208,-2244,-2262,-2278,-2311,-2362,-2417,-2453,-2459,-2444,-2431,-2439,-2470,-2509,-2536,-2540,-2528,
+-2516,-2521,-2546,-2587,-2642,-2723,-2840,-2991,-3153,-3308,-3466,-3667,-3932,-4226,-4465,-4584,-4581,-4517,-4453,-4409,-4374,
+-4336,-4303,-4284,-4276,-4276,-4291,-4330,-4388,-4444,-4490,-4545,-4632,-4736,-4811,-4818,-4753,-4630,-4442,-4164,-3812,-3467,
+-3228,-3120,-3070,-2978,-2810,-2627,-2505,-2460,-2448,-2427,-2400,-2399,-2438,-2498,-2554,-2605,-2664,-2735,-2800,-2836,-2843,
+-2842,-2852,-2878,-2909,-2938,-2965,-2990,-3011,-3021,-3022,-3024,-3038,-3066,-3102,-3141,-3184,-3237,-3297,-3356,-3406,-3448,
+-3493,-3546,-3599,-3644,-3674,-3691,-3695,-3684,-3659,-3632,-3618,-3623,-3641,-3661,-3676,-3690,-3705,-3720,-3729,-3736,-3747,
+-3763,-3781,-3794,-3803,-3814,-3829,-3844,-3853,-3853,-3849,-3850,-3862,-3883,-3899,-3890,-3847,-3775,-3699,-3641,-3605,-3576,
+-3535,-3483,-3430,-3389,-3362,-3342,-3328,-3315,-3297,-3266,-3222,-3180,-3153,-3144,-3141,-3134,-3118,-3099,-3088,-3104,-3179,
+-3337,-3570,-3823,-4025,-4141,-4185,-4197,-4196,-4176,-4130,-4068,-4006,-3948,-3878,-3784,-3671,-3551,-3424,-3279,-3113,-2948,
+-2813,-2720,-2653,-2584,-2503,-2418,-2344,-2292,-2264,-2259,-2272,-2291,-2298,-2273,-2212,-2125,-2030,-1940,-1854,-1767,-1679,
+-1590,-1496,-1388,-1261,-1125,-1004,-911,-841,-774,-698,-615,-533,-453,-366,-269,-167,-73,11,93,178,264,
+350,436,525,622,721,817,908,998,1086,1168,1242,1310,1379,1457,1542,1624,1695,1757,1817,1883,1954,
+2025,2094,2164,2240,2320,2395,2460,2521,2586,2656,2727,2795,2861,2920,2963,2982,2984,2992,3027,3086,3143,
+3178,3190,3187,3158,3069,2905,2707,2561,2541,2650,2822,2973,3062,3101,3123,3144,3167,3197,3245,3317,3396,
+3465,3519,3569,3623,3673,3708,3730,3756,3792,3825,3847,3873,3929,4019,4114,4184,4228,4256,4255,4182,4017,
+3793,3565,3331,3020,2581,2085,1717,1637,1842,2175,2462,2633,2725,2796,2858,2889,2885,2862,2837,2802,2746,
+2675,2609,2561,2521,2471,2403,2328,2262,2213,2181,2158,2133,2093,2032,1950,1858,1768,1696,1655,1647,1651,
+1635,1579,1491,1401,1335,1296,1270,1246,1224,1204,1180,1144,1096,1047,1007,975,941,901,858,820,792,
+772,755,733,705,676,650,629,604,568,519,464,409,351,290,226,167,116,69,19,-32,-82,
+-127,-169,-212,-256,-300,-339,-377,-416,-455,-489,-516,-535,-554,-576,-605,-641,-682,-722,-757,-781,-795,
+-802,-809,-820,-834,-846,-851,-848,-839,-828,-818,-809,-808,-817,-836,-859,-882,-904,-926,-944,-952,-945,
+-918,-864,-788,-710,-668,-689,-766,-851,-896,-894,-875,-875,-893,-906,-899,-882,-876,-886,-898,-898,-889,
+-885,-891,-899,-900,-895,-892,-895,-902,-907,-907,-903,-900,-901,-911,-926,-935,-928,-907,-886,-875,-877,
+-884,-886,-884,-883,-888,-902,-926,-956,-980,-980,-947,-893,-847,-838,-869,-914,-945,-948,-934,-919,-914,
+-916,-917,-918,-922,-930,-939,-946,-949,-950,-951,-952,-952,-952,-952,-952,-953,-956,-965,-976,-982,-977,
+-963,-951,-948,-953,-961,-967,-967,-961,-950,-936,-927,-925,-926,-921,-905,-884,-869,-869,-886,-912,-941,
+-968,-993,-1014,-1031,-1047,-1064,-1083,-1104,-1128,-1152,-1177,-1204,-1230,-1256,-1280,-1302,-1323,-1343,-1360,-1373,-1381,
+-1384,-1385,-1386,-1388,-1390,-1391,-1391,-1389,-1385,-1383,-1385,-1393,-1406,-1421,-1437,-1454,-1476,-1503,-1533,-1562,-1589,
+-1616,-1645,-1676,-1708,-1739,-1774,-1813,-1857,-1901,-1940,-1976,-2010,-2041,-2069,-2094,-2122,-2156,-2199,-2245,-2288,-2323,
+-2353,-2380,-2410,-2443,-2478,-2512,-2542,-2571,-2600,-2630,-2661,-2691,-2718,-2742,-2762,-2778,-2793,-2807,-2822,-2839,-2855,
+-2872,-2890,-2909,-2931,-2956,-2984,-3013,-3042,-3069,-3095,-3122,-3154,-3189,-3226,-3265,-3301,-3333,-3359,-3383,-3411,-3445,
+-3479,-3507,-3528,-3549,-3574,-3602,-3627,-3648,-3670,-3698,-3728,-3756,-3782,-3811,-3843,-3874,-3900,-3923,-3946,-3968,-3985,
+-3994,-4001,-4010,-4023,-4035,-4045,-4057,-4071,-4084,-4094,-4102,-4114,-4128,-4138,-4139,-4140,-4149,-4167,-4183,-4186,-4180,
+-4175,-4177,-4183,-4187,-4190,-4195,-4200,-4198,-4189,-4178,-4171,-4169,-4163,-4151,-4136,-4124,-4118,-4114,-4111,-4109,-4104,
+-4087,-4053,-4004,-3952,-3906,-3872,-3851,-3842,-3839,-3830,-3796,-3719,-3595,-3447,-3322,-3263,-3290,-3381,-3480,-3543,-3555,
+-3538,-3514,-3490,-3456,-3406,-3350,-3301,-3260,-3217,-3169,-3124,-3089,-3059,-3021,-2967,-2910,-2866,-2838,-2815,-2785,-2746,
+-2705,-2668,-2637,-2612,-2596,-2586,-2573,-2551,-2525,-2506,-2498,-2492,-2472,-2439,-2402,-2375,-2363,-2368,-2398,-2464,-2555,
+-2633,-2653,-2600,-2504,-2426,-2406,-2441,-2498,-2540,-2554,-2552,-2547,-2550,-2562,-2580,-2602,-2626,-2649,-2672,-2694,-2714,
+-2732,-2751,-2780,-2820,-2858,-2868,-2832,-2758,-2683,-2643,-2650,-2687,-2728,-2756,-2773,-2783,-2786,-2778,-2762,-2744,-2731,
+-2722,-2714,-2704,-2690,-2678,-2675,-2683,-2700,-2717,-2725,-2720,-2710,-2704,-2703,-2703,-2705,-2711,-2726,-2749,-2778,-2807,
+-2835,-2860,-2877,-2880,-2870,-2852,-2831,-2806,-2778,-2750,-2728,-2716,-2715,-2724,-2740,-2761,-2779,-2791,-2798,-2805,-2822,
+-2850,-2888,-2936,-2994,-3059,-3122,-3176,-3219,-3257,-3294,-3335,-3384,-3440,-3500,-3556,-3603,-3647,-3699,-3760,-3815,-3852,
+-3879,-3927,-4018,-4136,-4239,-4291,-4294,-4281,-4287,-4329,-4407,-4517,-4649,-4784,-4900,-4982,-5038,-5080,-5116,-5144,-5158,
+-5160,-5156,-5148,-5136,-5123,-5113,-5109,-5102,-5085,-5060,-5031,-5004,-4970,-4923,-4868,-4817,-4776,-4740,-4697,-4650,-4607,
+-4573,-4538,-4494,-4444,-4403,-4365,-4306,-4203,-4073,-3967,-3932,-3965,-4015,-4032,-4006,-3964,-3931,-3909,-3885,-3851,-3816,
+-3787,-3763,-3740,-3719,-3707,-3707,-3712,-3712,-3705,-3690,-3670,-3645,-3619,-3596,-3577,-3560,-3539,-3510,-3475,-3438,-3397,
+-3350,-3295,-3234,-3170,-3108,-3051,-2996,-2942,-2882,-2819,-2754,-2691,-2629,-2565,-2496,-2425,-2354,-2282,-2208,-2133,-2059,
+-1985,-1906,-1817,-1722,-1628,-1540,-1450,-1354,-1253,-1155,-1065,-979,-891,-802,-715,-631,-545,-453,-357,-262,-171,
+-79,15,112,209,304,400,499,600,698,793,886,976,1065,1153,1245,1344,1447,1551,1653,1752,1847,
+1935,2015,2086,2150,2206,2255,2299,2341,2386,2438,2494,2548,2597,2640,2678,2714,2752,2789,2825,2862,2901,
+2943,2987,3027,3061,3090,3118,3147,3178,3206,3231,3255,3278,3301,3322,3340,3361,3385,3414,3441,3461,3474,
+3483,3487,3483,3470,3461,3477,3532,3614,3687,3714,3674,3577,3452,3337,3259,3231,3243,3276,3304,3311,3296,
+3270,3243,3223,3211,3205,3204,3206,3217,3238,3268,3301,3334,3365,3399,3436,3474,3510,3544,3581,3627,3681,
+3737,3786,3821,3842,3856,3872,3892,3912,3927,3934,3934,3932,3930,3934,3943,3958,3979,3999,4014,4025,4039,
+4066,4110,4170,4235,4294,4339,4362,4359,4335,4305,4291,4310,4358,4410,4440,4444,4443,4470,4540,4638,4732,
+4798,4837,4864,4895,4932,4968,4995,5016,5048,5106,5198,5317,5443,5544,5590,5567,5479,5358,5239,5146,5083,
+5038,4996,4949,4889,4816,4739,4676,4638,4619,4597,4551,4479,4400,4331,4273,4216,4152,4085,4053,3985,3921,
+3862,3805,3751,3705,3671,3649,3629,3595,3530,3436,3329,3228,3141,3063,2991,2928,2880,2843,2809,2777,2753,
+2745,2747,2747,2738,2730,2731,2747,2771,2797,2824,2850,2874,2898,2926,2963,3008,3059,3109,3157,3200,3234,
+3254,3257,3247,3231,3212,3195,3184,3176,3164,3144,3119,3097,3078,3056,3023,2979,2933,2893,2860,2830,2802,
+2778,2760,2751,2746,2742,2734,2718,2698,2682,2679,2693,2719,2751,2782,2808,2826,2835,2831,2813,2777,2725,
+2664,2605,2553,2501,2443,2378,2312,2254,2207,2172,2148,2131,2110,2075,2030,1988,1956,1921,1861,1776,1685,
+1607,1543,1473,1394,1321,1278,1273,1293,1330,1384,1456,1538,1614,1679,1734,1780,1808,1816,1809,1797,1783,
+1762,1736,1717,1717,1724,1720,1704,1702,1738,1804,1863,1889,1895,1912,1955,1996,1997,1946,1868,1800,1764,
+1753,1751,1745,1729,1707,1679,1645,1599,1540,1472,1403,1333,1255,1161,1050,936,830,732,632,524,413,
+311,221,134,36,-75,-195,-315,-428,-537,-648,-763,-876,-977,-1065,-1146,-1233,-1332,-1435,-1524,-1580,-1597,
+-1579,-1545,-1515,-1496,-1470,-1397,-1243,-1011,-756,-546,-418,-359,-323,-278,-226,-195,-202,-236,-270,-285,-283,
+-278,-277,-276,-275,-291,-348,-452,-565,-635,-631,-583,-555,-604,-736,-911,-1075,-1192,-1257,-1286,-1299,-1310,
+-1317,-1311,-1295,-1284,-1302,-1358,-1439,-1530,-1622,-1719,-1819,-1907,-1969,-2010,-2051,-2105,-2166,-2213,-2234,-2242,-2261,
+-2304,-2363,-2416,-2447,-2457,-2460,-2470,-2494,-2525,-2547,-2547,-2524,-2495,-2480,-2492,-2530,-2582,-2648,-2738,-2863,-3011,
+-3155,-3280,-3410,-3598,-3873,-4198,-4484,-4652,-4692,-4650,-4586,-4527,-4472,-4419,-4371,-4335,-4304,-4279,-4271,-4296,-4352,
+-4421,-4487,-4553,-4632,-4721,-4797,-4838,-4831,-4763,-4610,-4356,-4034,-3724,-3501,-3367,-3250,-3078,-2848,-2625,-2477,-2415,
+-2395,-2374,-2350,-2344,-2367,-2412,-2462,-2517,-2582,-2657,-2729,-2786,-2827,-2857,-2883,-2903,-2918,-2932,-2952,-2977,-2996,
+-3000,-2994,-2995,-3013,-3043,-3072,-3094,-3119,-3164,-3230,-3302,-3359,-3396,-3426,-3464,-3513,-3560,-3597,-3617,-3625,-3620,
+-3607,-3591,-3582,-3586,-3606,-3634,-3664,-3689,-3703,-3706,-3702,-3699,-3704,-3716,-3732,-3747,-3763,-3782,-3802,-3819,-3830,
+-3835,-3835,-3833,-3833,-3840,-3851,-3852,-3825,-3763,-3682,-3611,-3567,-3543,-3519,-3482,-3431,-3377,-3328,-3292,-3274,-3270,
+-3266,-3241,-3192,-3136,-3100,-3090,-3089,-3077,-3055,-3040,-3057,-3122,-3249,-3442,-3684,-3927,-4113,-4213,-4244,-4244,-4234,
+-4211,-4166,-4108,-4051,-3997,-3927,-3829,-3708,-3584,-3460,-3322,-3164,-3000,-2855,-2742,-2649,-2554,-2453,-2357,-2282,-2233,
+-2206,-2201,-2216,-2242,-2257,-2237,-2175,-2085,-1990,-1901,-1816,-1728,-1638,-1551,-1460,-1355,-1225,-1085,-957,-858,-784,
+-718,-648,-576,-506,-433,-348,-250,-149,-58,23,103,188,276,364,451,538,630,725,822,920,1019,
+1115,1203,1281,1352,1422,1494,1569,1645,1716,1780,1839,1899,1964,2034,2106,2182,2261,2339,2411,2476,2538,
+2605,2679,2752,2820,2882,2934,2968,2980,2983,3002,3051,3115,3162,3177,3170,3153,3115,3022,2861,2679,2557,
+2554,2662,2813,2936,3003,3034,3060,3102,3160,3233,3316,3404,3483,3543,3588,3628,3670,3704,3727,3746,3775,
+3813,3847,3868,3891,3944,4030,4123,4193,4237,4268,4274,4213,4057,3837,3611,3390,3103,2687,2193,1798,1674,
+1845,2169,2464,2642,2732,2798,2861,2902,2903,2875,2836,2790,2733,2669,2611,2567,2525,2472,2406,2338,2276,
+2220,2171,2132,2102,2070,2023,1951,1862,1774,1706,1672,1669,1675,1660,1607,1521,1431,1360,1316,1288,1265,
+1244,1221,1189,1145,1094,1049,1017,994,967,931,890,855,829,811,792,764,726,683,645,616,591,
+559,518,469,418,367,314,260,207,155,103,49,-4,-53,-97,-138,-180,-222,-262,-299,-335,-374,
+-413,-448,-473,-491,-507,-528,-561,-604,-652,-696,-730,-753,-766,-775,-784,-796,-811,-825,-830,-824,-813,
+-804,-801,-803,-807,-814,-826,-844,-866,-884,-893,-895,-898,-912,-931,-936,-910,-859,-814,-806,-832,-862,
+-868,-854,-849,-864,-881,-871,-831,-793,-786,-811,-844,-861,-864,-867,-875,-885,-889,-887,-888,-893,-901,
+-905,-899,-886,-871,-864,-872,-889,-902,-901,-888,-874,-865,-863,-861,-861,-863,-869,-872,-875,-884,-907,
+-935,-948,-932,-893,-857,-847,-866,-895,-913,-911,-899,-888,-881,-877,-872,-871,-877,-886,-895,-899,-901,
+-903,-907,-907,-905,-901,-901,-903,-906,-908,-914,-924,-932,-931,-922,-911,-906,-908,-913,-918,-920,-919,
+-916,-908,-900,-896,-898,-899,-895,-883,-869,-861,-864,-879,-902,-930,-957,-981,-1001,-1018,-1034,-1054,-1077,
+-1100,-1123,-1145,-1171,-1200,-1230,-1256,-1277,-1296,-1314,-1332,-1346,-1353,-1357,-1361,-1366,-1370,-1372,-1372,-1370,-1368,
+-1366,-1364,-1365,-1374,-1389,-1408,-1426,-1442,-1461,-1484,-1511,-1538,-1562,-1587,-1614,-1644,-1674,-1703,-1732,-1768,-1810,
+-1852,-1892,-1929,-1964,-1998,-2028,-2053,-2078,-2111,-2152,-2199,-2247,-2291,-2333,-2371,-2407,-2442,-2477,-2511,-2543,-2571,
+-2596,-2621,-2646,-2670,-2691,-2710,-2728,-2744,-2759,-2773,-2789,-2806,-2822,-2837,-2854,-2874,-2899,-2929,-2961,-2993,-3026,
+-3057,-3086,-3113,-3142,-3176,-3212,-3249,-3281,-3309,-3335,-3362,-3392,-3424,-3453,-3476,-3494,-3515,-3542,-3574,-3606,-3634,
+-3658,-3683,-3710,-3739,-3772,-3808,-3843,-3870,-3891,-3910,-3931,-3954,-3974,-3987,-4000,-4014,-4030,-4044,-4054,-4066,-4082,
+-4099,-4112,-4120,-4128,-4137,-4145,-4151,-4157,-4167,-4180,-4190,-4194,-4193,-4193,-4196,-4198,-4200,-4203,-4210,-4214,-4209,
+-4195,-4181,-4174,-4174,-4176,-4174,-4167,-4157,-4144,-4131,-4120,-4115,-4113,-4106,-4085,-4046,-3995,-3943,-3903,-3880,-3871,
+-3868,-3858,-3831,-3774,-3676,-3540,-3396,-3298,-3285,-3354,-3458,-3539,-3569,-3562,-3545,-3528,-3502,-3457,-3399,-3342,-3292,
+-3244,-3193,-3142,-3100,-3064,-3026,-2977,-2922,-2873,-2836,-2810,-2785,-2754,-2717,-2678,-2643,-2616,-2601,-2593,-2582,-2564,
+-2541,-2523,-2512,-2501,-2481,-2452,-2423,-2399,-2382,-2373,-2380,-2415,-2477,-2543,-2577,-2558,-2499,-2437,-2409,-2424,-2463,
+-2498,-2514,-2515,-2512,-2513,-2519,-2530,-2544,-2562,-2580,-2597,-2613,-2631,-2655,-2691,-2743,-2805,-2855,-2868,-2829,-2752,
+-2679,-2646,-2663,-2709,-2755,-2784,-2800,-2812,-2822,-2828,-2824,-2811,-2789,-2763,-2736,-2716,-2705,-2704,-2709,-2719,-2729,
+-2737,-2737,-2732,-2727,-2728,-2732,-2734,-2733,-2733,-2742,-2762,-2789,-2819,-2850,-2879,-2898,-2898,-2882,-2857,-2829,-2800,
+-2771,-2748,-2738,-2742,-2755,-2770,-2786,-2800,-2811,-2814,-2809,-2805,-2813,-2837,-2875,-2922,-2976,-3033,-3087,-3132,-3170,
+-3207,-3250,-3301,-3360,-3423,-3482,-3530,-3565,-3600,-3652,-3724,-3800,-3862,-3914,-3980,-4076,-4186,-4270,-4301,-4289,-4272,
+-4277,-4312,-4372,-4459,-4575,-4712,-4843,-4947,-5018,-5068,-5107,-5138,-5156,-5162,-5161,-5157,-5150,-5143,-5136,-5131,-5122,
+-5106,-5083,-5058,-5033,-5001,-4957,-4904,-4852,-4806,-4763,-4717,-4669,-4626,-4592,-4560,-4522,-4478,-4436,-4396,-4353,-4297,
+-4233,-4181,-4153,-4140,-4121,-4085,-4042,-4007,-3984,-3962,-3931,-3897,-3868,-3846,-3826,-3802,-3779,-3766,-3764,-3766,-3763,
+-3753,-3738,-3719,-3696,-3668,-3641,-3617,-3594,-3565,-3531,-3495,-3460,-3423,-3381,-3331,-3275,-3217,-3158,-3100,-3043,-2986,
+-2927,-2863,-2798,-2734,-2673,-2611,-2543,-2472,-2400,-2331,-2261,-2188,-2113,-2035,-1953,-1863,-1768,-1673,-1580,-1488,-1392,
+-1295,-1201,-1111,-1024,-935,-846,-758,-671,-581,-486,-389,-295,-203,-111,-16,79,175,268,362,456,554,
+653,752,848,938,1023,1111,1207,1313,1421,1525,1621,1713,1801,1883,1958,2023,2079,2128,2172,2215,2262,
+2314,2369,2423,2473,2519,2560,2599,2635,2670,2705,2742,2780,2821,2863,2905,2943,2974,3003,3031,3061,3092,
+3120,3146,3172,3199,3225,3247,3265,3282,3302,3326,3351,3377,3400,3414,3408,3382,3354,3358,3421,3534,3645,
+3695,3654,3544,3417,3313,3246,3210,3196,3202,3218,3232,3230,3212,3187,3168,3155,3146,3139,3139,3150,3172,
+3200,3231,3265,3303,3344,3385,3420,3451,3482,3516,3556,3599,3641,3678,3709,3736,3762,3787,3813,3840,3864,
+3881,3889,3887,3880,3876,3880,3894,3915,3940,3969,4001,4034,4070,4113,4169,4241,4318,4383,4418,4421,4401,
+4371,4340,4320,4321,4351,4399,4446,4479,4503,4536,4594,4675,4763,4843,4904,4944,4973,5004,5051,5115,5186,
+5246,5294,5342,5400,5465,5511,5510,5453,5352,5236,5130,5048,4990,4950,4918,4883,4833,4765,4686,4615,4564,
+4531,4498,4451,4392,4332,4281,4235,4184,4122,4053,3991,3924,3862,3802,3743,3684,3628,3581,3549,3523,3486,
+3422,3327,3221,3126,3049,2983,2921,2865,2822,2790,2762,2735,2716,2711,2715,2716,2709,2701,2703,2716,2737,
+2760,2786,2812,2834,2851,2867,2890,2927,2974,3028,3081,3130,3171,3201,3218,3221,3211,3192,3170,3150,3134,
+3120,3103,3088,3075,3063,3042,3008,2965,2921,2884,2855,2834,2818,2808,2801,2795,2788,2783,2778,2769,2751,
+2725,2700,2685,2685,2700,2724,2744,2752,2746,2731,2711,2680,2634,2575,2518,2469,2425,2376,2318,2261,2214,
+2182,2161,2150,2145,2139,2122,2096,2072,2059,2049,2021,1968,1897,1825,1753,1674,1589,1511,1452,1414,1393,
+1390,1414,1462,1518,1564,1597,1624,1651,1672,1686,1696,1706,1713,1708,1699,1700,1716,1727,1716,1695,1698,
+1741,1795,1819,1807,1801,1843,1926,1997,2004,1944,1856,1777,1725,1695,1678,1666,1648,1618,1579,1542,1507,
+1465,1405,1331,1252,1172,1081,976,863,759,669,583,491,392,298,214,132,40,-63,-175,-288,-401,
+-515,-632,-748,-859,-964,-1062,-1157,-1253,-1352,-1450,-1538,-1601,-1627,-1615,-1577,-1543,-1530,-1528,-1492,-1375,-1171,
+-928,-715,-571,-484,-416,-345,-280,-247,-250,-273,-295,-313,-332,-358,-380,-383,-366,-352,-374,-442,-534,
+-606,-628,-609,-588,-610,-695,-832,-990,-1138,-1255,-1330,-1369,-1381,-1377,-1362,-1344,-1334,-1347,-1390,-1458,-1544,
+-1645,-1757,-1865,-1950,-2002,-2036,-2077,-2133,-2191,-2225,-2230,-2228,-2247,-2297,-2358,-2408,-2435,-2448,-2463,-2488,-2519,
+-2547,-2558,-2544,-2509,-2471,-2451,-2464,-2506,-2569,-2647,-2748,-2873,-3007,-3122,-3213,-3320,-3507,-3801,-4158,-4483,-4695,
+-4776,-4764,-4713,-4653,-4590,-4529,-4475,-4430,-4388,-4347,-4315,-4311,-4344,-4407,-4481,-4556,-4627,-4693,-4751,-4798,-4820,
+-4790,-4674,-4463,-4193,-3932,-3726,-3566,-3399,-3179,-2910,-2644,-2436,-2314,-2268,-2276,-2312,-2354,-2387,-2411,-2434,-2470,
+-2524,-2587,-2654,-2722,-2791,-2854,-2899,-2920,-2925,-2933,-2952,-2978,-2997,-3003,-3004,-3014,-3036,-3060,-3071,-3070,-3073,
+-3102,-3157,-3221,-3270,-3300,-3327,-3365,-3417,-3469,-3509,-3534,-3550,-3561,-3568,-3569,-3567,-3568,-3582,-3608,-3642,-3671,
+-3686,-3687,-3682,-3679,-3679,-3681,-3682,-3685,-3695,-3712,-3731,-3751,-3773,-3799,-3821,-3829,-3820,-3804,-3797,-3797,-3787,
+-3749,-3683,-3615,-3566,-3539,-3517,-3480,-3424,-3359,-3298,-3252,-3227,-3221,-3218,-3197,-3155,-3109,-3082,-3078,-3074,-3054,
+-3029,-3038,-3110,-3247,-3430,-3638,-3852,-4045,-4184,-4252,-4266,-4257,-4245,-4225,-4186,-4131,-4073,-4015,-3942,-3841,-3723,
+-3605,-3495,-3377,-3237,-3078,-2925,-2792,-2675,-2562,-2449,-2350,-2278,-2236,-2216,-2213,-2222,-2237,-2240,-2212,-2149,-2060,
+-1964,-1872,-1782,-1691,-1600,-1516,-1431,-1334,-1214,-1082,-957,-854,-771,-694,-618,-544,-474,-401,-314,-215,-114,
+-23,57,137,219,303,386,468,553,642,736,833,931,1029,1123,1214,1302,1386,1460,1526,1591,1661,
+1736,1806,1865,1919,1977,2048,2126,2207,2284,2356,2422,2484,2549,2622,2699,2773,2837,2891,2934,2964,2980,
+2995,3030,3085,3139,3166,3161,3142,3120,3075,2976,2824,2669,2584,2603,2701,2819,2912,2974,3024,3081,3152,
+3231,3314,3398,3476,3542,3594,3634,3670,3703,3727,3742,3758,3785,3823,3857,3881,3909,3966,4055,4148,4215,
+4251,4273,4276,4228,4098,3901,3687,3469,3188,2782,2286,1863,1695,1829,2144,2455,2653,2750,2810,2865,2901,
+2899,2868,2826,2781,2729,2671,2618,2575,2533,2484,2425,2362,2300,2235,2166,2103,2054,2016,1976,1922,1854,
+1786,1731,1696,1679,1669,1645,1597,1526,1450,1389,1348,1320,1296,1270,1238,1197,1147,1098,1060,1035,1015,
+988,951,914,882,858,837,813,782,741,693,646,605,573,542,505,462,415,370,329,289,245,
+195,139,80,25,-24,-68,-111,-157,-202,-243,-277,-308,-338,-371,-403,-433,-458,-480,-503,-534,-577,
+-626,-671,-703,-724,-739,-752,-765,-777,-788,-796,-799,-795,-788,-785,-787,-794,-798,-800,-802,-811,-828,
+-846,-857,-860,-864,-878,-903,-923,-922,-898,-871,-858,-860,-860,-850,-840,-847,-864,-861,-816,-743,-690,
+-691,-738,-793,-828,-840,-845,-853,-864,-871,-871,-870,-874,-883,-888,-881,-859,-833,-819,-828,-851,-869,
+-871,-863,-858,-860,-861,-855,-846,-842,-844,-844,-841,-841,-856,-881,-900,-897,-875,-855,-851,-863,-875,
+-876,-865,-853,-845,-840,-833,-824,-820,-824,-833,-840,-844,-847,-852,-858,-859,-855,-852,-853,-859,-863,
+-863,-862,-866,-873,-876,-873,-866,-860,-858,-857,-858,-861,-867,-874,-877,-874,-867,-863,-866,-871,-873,
+-869,-861,-856,-862,-880,-904,-931,-954,-974,-991,-1009,-1029,-1051,-1073,-1095,-1117,-1142,-1171,-1199,-1223,-1242,
+-1259,-1278,-1297,-1311,-1320,-1325,-1333,-1345,-1354,-1357,-1355,-1351,-1350,-1350,-1350,-1351,-1358,-1373,-1393,-1412,-1429,
+-1446,-1467,-1493,-1518,-1539,-1558,-1581,-1607,-1634,-1659,-1686,-1719,-1759,-1802,-1843,-1881,-1919,-1955,-1989,-2019,-2049,
+-2085,-2128,-2176,-2225,-2273,-2319,-2360,-2395,-2426,-2456,-2486,-2515,-2538,-2558,-2576,-2595,-2614,-2630,-2648,-2666,-2687,
+-2707,-2727,-2749,-2772,-2794,-2813,-2831,-2854,-2884,-2918,-2951,-2983,-3015,-3046,-3073,-3098,-3124,-3155,-3190,-3222,-3251,
+-3276,-3303,-3332,-3362,-3392,-3418,-3442,-3465,-3491,-3523,-3559,-3595,-3628,-3655,-3678,-3703,-3734,-3771,-3810,-3845,-3871,
+-3889,-3907,-3928,-3952,-3973,-3990,-4005,-4024,-4044,-4059,-4070,-4080,-4094,-4109,-4122,-4130,-4135,-4142,-4153,-4167,-4180,
+-4192,-4199,-4201,-4201,-4204,-4210,-4216,-4217,-4215,-4215,-4218,-4219,-4215,-4206,-4197,-4193,-4194,-4197,-4198,-4194,-4182,
+-4165,-4146,-4133,-4126,-4124,-4120,-4107,-4080,-4039,-3993,-3953,-3927,-3912,-3898,-3878,-3850,-3809,-3739,-3623,-3476,-3345,
+-3288,-3325,-3422,-3517,-3569,-3578,-3569,-3557,-3539,-3504,-3450,-3390,-3334,-3282,-3231,-3179,-3129,-3085,-3044,-3001,-2950,
+-2896,-2849,-2816,-2796,-2777,-2749,-2708,-2661,-2623,-2599,-2589,-2582,-2572,-2557,-2541,-2524,-2505,-2481,-2454,-2429,-2409,
+-2393,-2376,-2360,-2357,-2376,-2417,-2462,-2485,-2476,-2446,-2422,-2421,-2441,-2468,-2486,-2491,-2488,-2480,-2472,-2468,-2473,
+-2488,-2506,-2521,-2532,-2548,-2580,-2632,-2701,-2773,-2827,-2841,-2807,-2743,-2686,-2668,-2692,-2737,-2777,-2799,-2811,-2824,
+-2844,-2864,-2875,-2867,-2838,-2795,-2754,-2728,-2725,-2737,-2752,-2763,-2770,-2772,-2769,-2765,-2764,-2771,-2783,-2794,-2801,
+-2807,-2818,-2833,-2852,-2872,-2894,-2914,-2923,-2915,-2889,-2857,-2827,-2804,-2787,-2783,-2791,-2808,-2825,-2834,-2836,-2839,
+-2841,-2839,-2831,-2826,-2831,-2851,-2882,-2918,-2956,-2995,-3034,-3070,-3106,-3147,-3198,-3259,-3327,-3395,-3453,-3493,-3521,
+-3558,-3623,-3719,-3821,-3904,-3970,-4040,-4132,-4231,-4302,-4324,-4312,-4302,-4315,-4346,-4385,-4439,-4523,-4642,-4776,-4895,
+-4984,-5044,-5087,-5119,-5141,-5153,-5159,-5162,-5162,-5157,-5149,-5142,-5134,-5121,-5103,-5080,-5054,-5023,-4985,-4939,-4890,
+-4841,-4791,-4741,-4693,-4650,-4613,-4579,-4545,-4510,-4474,-4438,-4399,-4358,-4318,-4283,-4250,-4213,-4169,-4124,-4088,-4062,
+-4038,-4006,-3969,-3937,-3917,-3905,-3888,-3864,-3841,-3829,-3826,-3824,-3817,-3806,-3793,-3776,-3752,-3719,-3685,-3653,-3622,
+-3588,-3553,-3518,-3486,-3452,-3411,-3364,-3314,-3262,-3207,-3149,-3088,-3029,-2968,-2905,-2840,-2778,-2719,-2660,-2595,-2524,
+-2451,-2381,-2312,-2240,-2164,-2083,-1998,-1907,-1812,-1715,-1621,-1529,-1439,-1349,-1259,-1168,-1076,-983,-892,-800,-707,
+-611,-513,-420,-329,-239,-145,-47,50,145,236,326,417,511,610,713,814,906,993,1083,1183,1290,
+1396,1491,1579,1663,1746,1823,1891,1949,1999,2044,2087,2133,2183,2238,2293,2343,2390,2436,2479,2518,2553,
+2587,2624,2664,2706,2748,2787,2824,2858,2888,2915,2943,2974,3005,3034,3061,3087,3115,3143,3170,3194,3217,
+3240,3263,3286,3311,3336,3350,3340,3303,3265,3274,3360,3497,3611,3628,3536,3394,3277,3222,3213,3212,3202,
+3192,3190,3191,3181,3158,3134,3117,3106,3093,3081,3081,3099,3132,3166,3197,3231,3273,3321,3364,3397,3424,
+3453,3489,3528,3564,3593,3619,3645,3677,3712,3746,3775,3793,3803,3807,3810,3816,3823,3832,3840,3849,3861,
+3884,3921,3975,4038,4101,4161,4225,4301,4378,4434,4452,4437,4411,4393,4382,4373,4363,4361,4375,4398,4423,
+4452,4495,4564,4662,4779,4897,4993,5051,5075,5096,5149,5242,5344,5411,5424,5405,5390,5391,5391,5364,5302,
+5218,5132,5053,4985,4930,4889,4859,4826,4777,4707,4626,4552,4496,4454,4416,4374,4328,4282,4237,4188,4129,
+4061,3991,3910,3854,3801,3747,3689,3628,3564,3501,3445,3398,3351,3288,3206,3117,3037,2972,2916,2861,2811,
+2771,2741,2715,2692,2678,2675,2679,2678,2669,2661,2664,2679,2702,2729,2758,2787,2808,2818,2822,2833,2859,
+2901,2954,3009,3059,3102,3136,3162,3181,3188,3182,3168,3155,3147,3140,3128,3110,3089,3064,3033,2995,2955,
+2920,2892,2869,2852,2843,2844,2846,2843,2833,2823,2818,2813,2798,2768,2727,2687,2661,2659,2675,2693,2695,
+2678,2650,2619,2582,2533,2475,2419,2378,2346,2313,2274,2236,2207,2188,2174,2164,2162,2160,2149,2128,2105,
+2093,2089,2077,2044,1993,1934,1870,1800,1727,1659,1602,1552,1509,1480,1476,1494,1515,1525,1527,1530,1540,
+1553,1567,1587,1612,1632,1644,1659,1690,1730,1748,1730,1701,1705,1750,1793,1790,1754,1748,1818,1934,2019,
+2019,1947,1850,1765,1698,1644,1601,1568,1535,1493,1450,1421,1404,1378,1320,1235,1145,1063,979,880,770,
+671,593,528,458,378,295,217,140,56,-36,-130,-227,-333,-451,-578,-702,-816,-924,-1032,-1140,-1244,
+-1339,-1425,-1501,-1566,-1606,-1614,-1594,-1570,-1566,-1580,-1571,-1494,-1336,-1134,-942,-787,-656,-529,-407,-321,-290,
+-304,-328,-340,-346,-366,-407,-451,-476,-469,-445,-431,-450,-504,-573,-630,-656,-656,-650,-669,-735,-855,
+-1017,-1190,-1338,-1431,-1462,-1449,-1416,-1388,-1376,-1387,-1419,-1477,-1561,-1671,-1795,-1909,-1991,-2038,-2069,-2108,-2161,
+-2210,-2232,-2227,-2220,-2239,-2287,-2343,-2386,-2410,-2429,-2454,-2487,-2520,-2546,-2558,-2551,-2524,-2486,-2457,-2455,-2487,
+-2550,-2639,-2753,-2881,-2998,-3081,-3137,-3226,-3416,-3734,-4123,-4483,-4728,-4838,-4849,-4810,-4751,-4685,-4618,-4560,-4514,
+-4475,-4437,-4400,-4376,-4381,-4419,-4484,-4558,-4625,-4679,-4724,-4768,-4800,-4792,-4712,-4556,-4352,-4144,-3957,-3784,-3594,
+-3361,-3075,-2753,-2437,-2193,-2080,-2109,-2227,-2349,-2415,-2426,-2424,-2445,-2490,-2540,-2586,-2638,-2707,-2782,-2839,-2867,
+-2877,-2888,-2911,-2939,-2963,-2983,-3005,-3034,-3063,-3078,-3074,-3063,-3063,-3085,-3125,-3165,-3197,-3224,-3257,-3303,-3356,
+-3404,-3438,-3464,-3489,-3516,-3539,-3553,-3555,-3554,-3560,-3577,-3600,-3621,-3633,-3640,-3648,-3656,-3656,-3645,-3627,-3615,
+-3619,-3636,-3658,-3682,-3713,-3755,-3797,-3818,-3808,-3777,-3749,-3738,-3735,-3717,-3673,-3618,-3571,-3539,-3508,-3461,-3398,
+-3332,-3276,-3234,-3206,-3186,-3171,-3151,-3124,-3100,-3092,-3098,-3097,-3082,-3078,-3133,-3276,-3485,-3708,-3902,-4056,-4171,
+-4247,-4277,-4270,-4251,-4236,-4221,-4189,-4135,-4070,-4002,-3924,-3830,-3721,-3614,-3512,-3402,-3265,-3105,-2941,-2793,-2665,
+-2548,-2438,-2345,-2282,-2253,-2251,-2258,-2263,-2258,-2238,-2196,-2131,-2047,-1952,-1855,-1759,-1666,-1577,-1495,-1413,-1321,
+-1211,-1091,-974,-871,-779,-689,-599,-515,-438,-360,-271,-170,-65,32,120,202,279,353,425,497,576,
+660,752,847,944,1038,1131,1226,1325,1418,1494,1553,1611,1682,1766,1845,1903,1949,2003,2076,2160,2240,
+2308,2368,2427,2489,2559,2638,2721,2796,2854,2897,2928,2953,2977,3007,3049,3097,3129,3135,3124,3112,3095,
+3041,2926,2774,2650,2612,2663,2756,2845,2914,2980,3059,3150,3240,3320,3390,3453,3511,3564,3610,3652,3689,
+3720,3742,3757,3770,3792,3821,3853,3883,3922,3988,4081,4174,4237,4261,4266,4263,4231,4134,3969,3768,3548,
+3269,2876,2390,1951,1736,1819,2111,2435,2664,2784,2845,2887,2908,2899,2868,2831,2794,2749,2693,2635,2586,
+2544,2498,2444,2386,2325,2258,2184,2110,2046,1995,1950,1903,1854,1806,1763,1722,1685,1651,1616,1573,1522,
+1470,1425,1392,1363,1333,1297,1253,1203,1151,1108,1078,1059,1036,1003,964,928,900,876,849,819,785,
+746,701,650,600,559,524,489,450,409,372,342,313,277,229,170,109,52,3,-40,-86,-135,
+-184,-227,-260,-285,-305,-327,-355,-388,-422,-452,-477,-505,-544,-591,-635,-668,-689,-707,-727,-748,-763,
+-769,-769,-765,-761,-760,-763,-769,-775,-777,-775,-774,-776,-784,-799,-817,-832,-842,-849,-856,-861,-862,
+-855,-846,-840,-835,-828,-822,-826,-844,-856,-833,-765,-681,-632,-645,-705,-769,-806,-814,-813,-819,-831,
+-841,-841,-836,-837,-850,-866,-868,-846,-812,-793,-806,-836,-857,-855,-840,-834,-841,-848,-843,-830,-821,
+-819,-818,-814,-813,-822,-836,-841,-830,-810,-799,-806,-822,-832,-827,-813,-801,-797,-796,-791,-782,-775,
+-774,-779,-785,-789,-793,-800,-807,-810,-805,-801,-803,-810,-816,-815,-812,-812,-816,-820,-819,-813,-808,
+-806,-806,-805,-808,-818,-832,-843,-844,-835,-825,-824,-833,-844,-849,-844,-837,-839,-855,-880,-906,-927,
+-946,-967,-989,-1011,-1031,-1051,-1071,-1092,-1116,-1140,-1163,-1182,-1199,-1216,-1237,-1258,-1274,-1284,-1291,-1301,-1317,
+-1331,-1338,-1338,-1335,-1336,-1340,-1343,-1345,-1349,-1360,-1376,-1391,-1405,-1420,-1439,-1464,-1489,-1509,-1525,-1544,-1568,
+-1595,-1621,-1648,-1680,-1721,-1766,-1808,-1848,-1886,-1924,-1961,-1995,-2031,-2071,-2117,-2164,-2209,-2251,-2289,-2322,-2348,
+-2370,-2393,-2417,-2441,-2462,-2481,-2501,-2522,-2543,-2562,-2583,-2607,-2634,-2660,-2685,-2713,-2743,-2772,-2795,-2817,-2843,
+-2875,-2909,-2939,-2967,-2995,-3024,-3051,-3075,-3101,-3132,-3167,-3199,-3226,-3250,-3275,-3304,-3333,-3361,-3389,-3420,-3452,
+-3485,-3517,-3552,-3587,-3620,-3648,-3673,-3699,-3731,-3770,-3809,-3842,-3866,-3886,-3906,-3931,-3957,-3979,-3996,-4013,-4033,
+-4055,-4075,-4088,-4098,-4108,-4120,-4130,-4138,-4145,-4153,-4167,-4186,-4203,-4215,-4217,-4214,-4212,-4217,-4226,-4235,-4239,
+-4238,-4235,-4231,-4227,-4223,-4221,-4221,-4223,-4224,-4224,-4222,-4215,-4200,-4179,-4161,-4151,-4148,-4147,-4142,-4133,-4116,
+-4088,-4050,-4010,-3978,-3954,-3930,-3902,-3875,-3849,-3804,-3713,-3569,-3414,-3313,-3308,-3384,-3486,-3560,-3588,-3584,-3572,
+-3557,-3532,-3492,-3438,-3380,-3326,-3274,-3221,-3167,-3117,-3074,-3034,-2988,-2932,-2877,-2838,-2819,-2807,-2784,-2740,-2683,
+-2630,-2595,-2578,-2572,-2569,-2564,-2552,-2533,-2507,-2477,-2448,-2426,-2414,-2405,-2390,-2360,-2321,-2295,-2303,-2346,-2401,
+-2435,-2439,-2425,-2418,-2428,-2450,-2469,-2476,-2468,-2448,-2421,-2401,-2397,-2409,-2428,-2441,-2447,-2462,-2499,-2563,-2642,
+-2718,-2771,-2788,-2768,-2729,-2700,-2701,-2731,-2770,-2798,-2810,-2815,-2827,-2849,-2873,-2888,-2882,-2852,-2809,-2769,-2752,
+-2758,-2777,-2793,-2800,-2802,-2804,-2805,-2803,-2802,-2809,-2826,-2849,-2871,-2891,-2910,-2925,-2935,-2940,-2945,-2948,-2942,
+-2921,-2888,-2854,-2829,-2816,-2816,-2828,-2849,-2872,-2885,-2884,-2875,-2867,-2863,-2860,-2857,-2856,-2866,-2885,-2908,-2929,
+-2946,-2964,-2988,-3017,-3054,-3101,-3159,-3225,-3296,-3363,-3419,-3461,-3499,-3554,-3644,-3760,-3873,-3957,-4016,-4079,-4168,
+-4269,-4344,-4371,-4365,-4359,-4372,-4396,-4416,-4441,-4493,-4586,-4709,-4833,-4934,-5008,-5060,-5096,-5120,-5138,-5153,-5165,
+-5171,-5169,-5162,-5155,-5150,-5143,-5129,-5107,-5077,-5043,-5007,-4968,-4924,-4876,-4824,-4771,-4723,-4678,-4636,-4596,-4561,
+-4533,-4509,-4482,-4448,-4408,-4367,-4328,-4289,-4247,-4207,-4173,-4146,-4121,-4088,-4046,-4007,-3980,-3966,-3955,-3938,-3916,
+-3899,-3893,-3892,-3889,-3878,-3864,-3850,-3832,-3803,-3765,-3725,-3687,-3652,-3618,-3584,-3552,-3522,-3488,-3445,-3397,-3350,
+-3304,-3254,-3197,-3133,-3070,-3008,-2947,-2885,-2826,-2771,-2715,-2652,-2580,-2504,-2429,-2356,-2282,-2204,-2121,-2034,-1945,
+-1852,-1757,-1663,-1573,-1487,-1402,-1313,-1219,-1122,-1027,-935,-843,-745,-644,-547,-457,-373,-285,-187,-84,17,
+113,206,295,384,475,572,674,777,872,962,1056,1158,1263,1361,1447,1526,1606,1684,1755,1813,1863,
+1909,1955,2002,2052,2106,2161,2213,2261,2307,2353,2397,2437,2471,2506,2546,2590,2634,2674,2710,2743,2774,
+2804,2831,2859,2889,2921,2950,2977,3003,3032,3062,3092,3123,3153,3184,3210,3230,3247,3264,3278,3273,3241,
+3202,3199,3265,3378,3464,3454,3350,3223,3154,3162,3202,3221,3205,3181,3169,3167,3155,3129,3103,3086,3072,
+3054,3038,3037,3060,3098,3133,3164,3198,3243,3293,3335,3366,3394,3427,3463,3495,3520,3541,3567,3601,3639,
+3676,3707,3727,3734,3730,3724,3727,3743,3766,3790,3809,3824,3840,3867,3909,3969,4038,4109,4178,4250,4328,
+4401,4447,4456,4438,4422,4424,4434,4434,4413,4377,4338,4308,4293,4307,4363,4464,4600,4755,4907,5031,5105,
+5132,5152,5208,5310,5415,5467,5446,5386,5334,5305,5279,5233,5166,5095,5031,4971,4911,4856,4815,4786,4752,
+4701,4629,4550,4478,4420,4374,4334,4297,4262,4223,4176,4115,4045,3974,3910,3832,3789,3746,3696,3639,3577,
+3506,3426,3344,3271,3211,3154,3093,3027,2966,2912,2863,2814,2768,2729,2700,2676,2657,2646,2645,2648,2644,
+2633,2623,2625,2641,2668,2701,2736,2766,2785,2790,2787,2791,2810,2849,2901,2956,3006,3045,3078,3110,3141,
+3163,3172,3172,3175,3186,3196,3190,3165,3125,3078,3030,2984,2947,2921,2903,2887,2872,2866,2870,2877,2877,
+2865,2850,2839,2833,2820,2792,2747,2697,2657,2641,2648,2661,2658,2632,2590,2545,2500,2450,2397,2350,2318,
+2298,2278,2254,2233,2217,2204,2188,2174,2166,2162,2152,2132,2110,2099,2094,2081,2049,2002,1949,1894,1836,
+1780,1731,1690,1651,1610,1574,1552,1542,1531,1515,1499,1492,1492,1495,1504,1527,1560,1589,1611,1643,1699,
+1760,1785,1760,1722,1724,1769,1805,1785,1737,1736,1822,1948,2026,2009,1925,1830,1750,1680,1608,1539,1481,
+1429,1379,1338,1321,1319,1299,1235,1137,1039,959,882,790,685,594,531,486,435,370,297,227,156,
+80,0,-76,-156,-253,-376,-515,-649,-770,-882,-998,-1118,-1231,-1324,-1398,-1460,-1516,-1563,-1590,-1595,-1592,
+-1603,-1627,-1638,-1598,-1495,-1350,-1195,-1040,-871,-684,-509,-393,-356,-375,-401,-407,-399,-402,-431,-479,-523,
+-543,-534,-507,-488,-503,-556,-629,-688,-709,-697,-679,-691,-766,-914,-1116,-1321,-1470,-1531,-1516,-1468,-1428,
+-1415,-1423,-1449,-1498,-1580,-1696,-1828,-1945,-2025,-2069,-2098,-2134,-2180,-2219,-2232,-2225,-2219,-2237,-2279,-2326,-2360,
+-2384,-2411,-2448,-2490,-2526,-2554,-2573,-2579,-2565,-2532,-2492,-2472,-2489,-2547,-2643,-2768,-2901,-3009,-3069,-3100,-3171,
+-3361,-3692,-4105,-4490,-4757,-4886,-4909,-4877,-4821,-4755,-4685,-4622,-4575,-4543,-4519,-4493,-4466,-4450,-4461,-4505,-4568,
+-4632,-4684,-4728,-4773,-4813,-4823,-4780,-4684,-4552,-4400,-4236,-4056,-3856,-3622,-3323,-2939,-2502,-2118,-1910,-1926,-2094,
+-2273,-2363,-2367,-2358,-2387,-2444,-2491,-2514,-2536,-2584,-2655,-2722,-2764,-2786,-2802,-2820,-2839,-2862,-2898,-2951,-3009,
+-3051,-3064,-3059,-3058,-3073,-3099,-3123,-3137,-3150,-3176,-3220,-3275,-3324,-3360,-3386,-3414,-3446,-3479,-3504,-3516,-3518,
+-3520,-3529,-3544,-3557,-3563,-3565,-3573,-3590,-3608,-3611,-3595,-3572,-3561,-3573,-3603,-3638,-3669,-3700,-3736,-3772,-3791,
+-3781,-3747,-3709,-3687,-3678,-3666,-3636,-3591,-3550,-3518,-3484,-3433,-3369,-3309,-3266,-3235,-3204,-3171,-3142,-3122,-3109,
+-3102,-3105,-3119,-3137,-3158,-3207,-3324,-3525,-3774,-3999,-4151,-4232,-4273,-4295,-4296,-4275,-4245,-4223,-4207,-4178,-4122,
+-4046,-3966,-3887,-3803,-3706,-3601,-3489,-3364,-3217,-3050,-2881,-2731,-2607,-2500,-2402,-2317,-2262,-2245,-2261,-2285,-2294,
+-2276,-2236,-2183,-2118,-2039,-1945,-1844,-1745,-1655,-1571,-1489,-1402,-1306,-1198,-1083,-972,-871,-775,-680,-581,-487,
+-401,-318,-227,-123,-12,95,193,277,350,415,477,540,609,684,767,861,960,1060,1158,1259,1362,
+1457,1530,1583,1639,1718,1812,1894,1950,1990,2043,2119,2202,2274,2329,2380,2436,2502,2578,2662,2748,2825,
+2879,2910,2929,2949,2978,3015,3055,3084,3094,3089,3086,3092,3080,3009,2870,2711,2613,2620,2706,2808,2884,
+2944,3018,3116,3220,3309,3375,3427,3475,3522,3569,3614,3655,3691,3723,3750,3770,3785,3800,3819,3847,3882,
+3930,4000,4092,4183,4244,4262,4257,4250,4232,4164,4023,3826,3601,3333,2978,2532,2096,1833,1846,2090,2414,
+2675,2825,2896,2929,2937,2921,2889,2857,2827,2787,2729,2666,2610,2563,2515,2459,2398,2339,2281,2220,2156,
+2092,2031,1972,1918,1871,1833,1795,1752,1702,1652,1608,1569,1532,1497,1467,1440,1408,1368,1319,1264,1208,
+1156,1116,1091,1074,1051,1015,973,937,911,886,855,818,780,742,699,648,597,552,515,480,443,
+408,379,357,333,299,250,193,133,78,28,-17,-63,-111,-159,-201,-234,-257,-273,-288,-311,-342,
+-378,-409,-435,-462,-500,-546,-591,-624,-646,-667,-694,-723,-745,-752,-746,-735,-728,-729,-737,-745,-749,
+-750,-751,-753,-754,-754,-759,-773,-793,-807,-808,-800,-795,-798,-804,-804,-795,-780,-769,-769,-786,-810,
+-820,-796,-736,-672,-641,-660,-713,-763,-783,-777,-765,-767,-781,-793,-791,-780,-777,-798,-835,-859,-851,
+-821,-802,-816,-848,-865,-852,-825,-811,-815,-824,-822,-813,-806,-805,-805,-802,-801,-806,-808,-795,-766,
+-737,-729,-745,-771,-786,-782,-766,-753,-749,-752,-753,-747,-738,-732,-732,-736,-738,-740,-746,-753,-757,
+-754,-749,-748,-754,-760,-762,-762,-763,-766,-768,-764,-757,-753,-755,-758,-760,-761,-767,-779,-792,-798,
+-793,-784,-783,-794,-810,-818,-810,-798,-797,-815,-845,-872,-894,-914,-938,-965,-989,-1008,-1024,-1042,-1064,
+-1087,-1108,-1126,-1142,-1158,-1177,-1199,-1222,-1241,-1253,-1261,-1271,-1285,-1301,-1311,-1316,-1318,-1321,-1327,-1333,-1338,
+-1343,-1351,-1361,-1370,-1377,-1386,-1402,-1425,-1450,-1471,-1489,-1510,-1537,-1568,-1598,-1629,-1663,-1705,-1750,-1791,-1828,
+-1863,-1899,-1936,-1970,-2004,-2041,-2082,-2123,-2161,-2194,-2222,-2247,-2267,-2285,-2304,-2327,-2350,-2373,-2397,-2424,-2455,
+-2483,-2509,-2536,-2567,-2599,-2628,-2655,-2685,-2718,-2750,-2777,-2801,-2829,-2862,-2895,-2922,-2946,-2970,-2999,-3027,-3052,
+-3079,-3112,-3150,-3186,-3213,-3236,-3260,-3286,-3313,-3342,-3376,-3415,-3454,-3488,-3516,-3544,-3575,-3606,-3635,-3663,-3692,
+-3727,-3764,-3800,-3829,-3853,-3876,-3902,-3931,-3959,-3982,-4001,-4019,-4040,-4063,-4086,-4105,-4117,-4127,-4135,-4143,-4152,
+-4161,-4172,-4187,-4204,-4221,-4231,-4232,-4230,-4229,-4235,-4245,-4255,-4262,-4265,-4264,-4257,-4246,-4238,-4238,-4246,-4254,
+-4256,-4254,-4249,-4239,-4222,-4199,-4183,-4177,-4177,-4176,-4171,-4164,-4154,-4134,-4100,-4059,-4023,-3995,-3970,-3944,-3924,
+-3912,-3888,-3816,-3682,-3513,-3376,-3326,-3370,-3466,-3554,-3599,-3598,-3578,-3557,-3540,-3515,-3472,-3415,-3355,-3301,-3251,
+-3199,-3149,-3105,-3065,-3020,-2963,-2906,-2864,-2846,-2835,-2810,-2761,-2696,-2636,-2591,-2567,-2559,-2561,-2563,-2557,-2539,
+-2510,-2476,-2445,-2423,-2415,-2417,-2410,-2377,-2314,-2250,-2223,-2251,-2315,-2373,-2401,-2401,-2399,-2412,-2436,-2459,-2468,
+-2458,-2430,-2392,-2359,-2343,-2348,-2359,-2364,-2363,-2375,-2417,-2490,-2577,-2658,-2714,-2738,-2735,-2722,-2718,-2737,-2771,
+-2804,-2822,-2826,-2827,-2835,-2849,-2865,-2873,-2867,-2846,-2816,-2794,-2791,-2805,-2822,-2829,-2827,-2825,-2829,-2833,-2832,
+-2827,-2827,-2840,-2866,-2897,-2928,-2956,-2976,-2984,-2982,-2975,-2963,-2944,-2916,-2882,-2853,-2836,-2833,-2842,-2861,-2885,
+-2906,-2915,-2909,-2894,-2882,-2875,-2873,-2874,-2881,-2897,-2920,-2939,-2949,-2952,-2956,-2969,-2992,-3028,-3074,-3131,-3194,
+-3261,-3326,-3386,-3440,-3500,-3579,-3687,-3809,-3914,-3982,-4027,-4084,-4177,-4292,-4388,-4435,-4441,-4435,-4437,-4445,-4449,
+-4455,-4485,-4554,-4656,-4771,-4876,-4963,-5028,-5075,-5105,-5126,-5145,-5164,-5177,-5182,-5180,-5175,-5171,-5167,-5156,-5136,
+-5105,-5068,-5031,-4994,-4956,-4910,-4859,-4805,-4754,-4706,-4659,-4612,-4573,-4547,-4531,-4514,-4490,-4456,-4417,-4376,-4334,
+-4293,-4257,-4227,-4199,-4167,-4128,-4087,-4055,-4034,-4020,-4004,-3983,-3964,-3954,-3954,-3956,-3952,-3939,-3921,-3902,-3879,
+-3847,-3807,-3766,-3728,-3692,-3658,-3623,-3591,-3560,-3524,-3481,-3433,-3388,-3347,-3301,-3245,-3180,-3113,-3050,-2990,-2932,
+-2876,-2822,-2767,-2706,-2634,-2555,-2476,-2400,-2323,-2242,-2157,-2069,-1980,-1890,-1797,-1704,-1614,-1529,-1445,-1357,-1261,
+-1161,-1066,-977,-888,-791,-688,-591,-504,-422,-333,-233,-125,-21,77,172,265,354,443,535,634,735,
+830,921,1015,1117,1220,1312,1393,1469,1546,1621,1685,1733,1774,1818,1867,1920,1974,2029,2084,2135,2182,
+2227,2272,2316,2356,2391,2427,2469,2515,2559,2596,2629,2660,2692,2722,2750,2779,2808,2838,2866,2892,2920,
+2952,2985,3016,3045,3076,3112,3145,3166,3175,3181,3192,3200,3185,3150,3129,3159,3233,3294,3281,3194,3101,
+3073,3118,3182,3207,3187,3159,3148,3147,3136,3109,3081,3063,3049,3031,3013,3013,3035,3068,3099,3128,3166,
+3214,3262,3300,3330,3363,3402,3437,3460,3475,3494,3527,3565,3597,3621,3638,3652,3663,3669,3673,3683,3704,
+3731,3759,3790,3829,3876,3924,3968,4010,4055,4109,4173,4245,4319,4384,4426,4442,4445,4451,4467,4478,4467,
+4426,4360,4280,4200,4144,4141,4208,4336,4497,4665,4821,4952,5042,5094,5136,5204,5302,5388,5415,5378,5317,
+5272,5247,5211,5146,5066,4994,4936,4881,4818,4757,4715,4687,4656,4605,4535,4460,4391,4330,4277,4233,4198,
+4169,4136,4087,4021,3949,3884,3832,3756,3718,3674,3620,3560,3495,3421,3334,3239,3154,3090,3044,3002,2955,
+2906,2860,2816,2773,2732,2696,2669,2650,2637,2630,2630,2630,2625,2614,2605,2605,2619,2645,2679,2713,2740,
+2754,2755,2752,2758,2777,2813,2861,2914,2960,2996,3026,3058,3095,3125,3141,3151,3170,3201,3229,3232,3201,
+3148,3088,3031,2982,2946,2926,2916,2907,2894,2885,2885,2890,2889,2878,2860,2844,2832,2816,2789,2750,2703,
+2661,2637,2634,2637,2627,2592,2540,2485,2435,2390,2349,2316,2294,2277,2261,2246,2234,2227,2216,2198,2179,
+2165,2154,2140,2119,2104,2099,2097,2078,2037,1980,1924,1871,1822,1777,1744,1721,1699,1672,1641,1612,1585,
+1559,1537,1524,1519,1511,1500,1499,1521,1558,1587,1605,1636,1700,1773,1805,1777,1731,1727,1770,1806,1789,
+1747,1754,1840,1952,2006,1969,1881,1798,1737,1675,1597,1513,1437,1372,1315,1275,1261,1261,1237,1168,1066,
+969,893,821,732,633,552,502,468,425,364,296,231,167,97,26,-41,-112,-205,-329,-474,-613,
+-736,-848,-964,-1088,-1205,-1302,-1375,-1430,-1479,-1525,-1562,-1587,-1608,-1635,-1669,-1692,-1680,-1621,-1528,-1412,-1271,
+-1092,-879,-674,-528,-467,-468,-489,-497,-492,-485,-493,-520,-562,-600,-612,-588,-549,-530,-555,-613,-672,
+-707,-714,-707,-711,-754,-867,-1055,-1280,-1470,-1568,-1568,-1518,-1474,-1459,-1462,-1475,-1507,-1580,-1697,-1834,-1956,
+-2039,-2087,-2121,-2159,-2202,-2235,-2245,-2237,-2232,-2249,-2286,-2327,-2360,-2387,-2422,-2470,-2523,-2567,-2598,-2617,-2624,
+-2615,-2588,-2555,-2542,-2565,-2629,-2727,-2849,-2972,-3066,-3110,-3126,-3186,-3370,-3700,-4117,-4507,-4780,-4913,-4941,-4916,
+-4870,-4813,-4748,-4685,-4635,-4605,-4588,-4570,-4543,-4516,-4508,-4531,-4580,-4637,-4689,-4736,-4787,-4835,-4865,-4862,-4827,
+-4765,-4674,-4542,-4369,-4164,-3925,-3619,-3206,-2713,-2256,-1986,-1970,-2127,-2296,-2364,-2343,-2318,-2350,-2415,-2458,-2460,
+-2455,-2485,-2553,-2629,-2687,-2720,-2735,-2738,-2734,-2741,-2782,-2858,-2944,-3003,-3026,-3031,-3044,-3071,-3093,-3096,-3084,
+-3084,-3115,-3172,-3235,-3283,-3316,-3343,-3376,-3414,-3445,-3462,-3465,-3465,-3476,-3500,-3527,-3541,-3536,-3522,-3516,-3526,
+-3543,-3550,-3543,-3534,-3539,-3567,-3613,-3665,-3711,-3743,-3761,-3767,-3762,-3743,-3711,-3675,-3648,-3634,-3620,-3594,-3554,
+-3517,-3491,-3464,-3420,-3359,-3302,-3263,-3236,-3203,-3163,-3132,-3118,-3113,-3103,-3096,-3113,-3169,-3261,-3387,-3559,-3781,
+-4019,-4209,-4309,-4330,-4319,-4311,-4302,-4278,-4241,-4208,-4184,-4152,-4093,-4010,-3924,-3847,-3771,-3677,-3560,-3422,-3273,
+-3114,-2951,-2795,-2658,-2546,-2452,-2365,-2286,-2230,-2215,-2240,-2278,-2296,-2278,-2231,-2174,-2110,-2032,-1936,-1831,-1733,
+-1648,-1567,-1480,-1383,-1278,-1167,-1054,-945,-846,-753,-660,-561,-461,-367,-278,-184,-78,37,151,251,332,
+400,461,522,584,646,710,785,877,981,1088,1192,1294,1396,1489,1560,1615,1677,1762,1860,1942,1994,
+2036,2093,2171,2248,2306,2350,2398,2460,2534,2611,2694,2779,2855,2906,2930,2941,2958,2987,3024,3055,3069,
+3067,3062,3070,3082,3060,2964,2801,2641,2567,2608,2718,2831,2914,2988,3078,3184,3279,3347,3394,3437,3484,
+3535,3584,3627,3664,3696,3727,3758,3787,3807,3818,3830,3852,3888,3936,4001,4084,4171,4235,4258,4254,4249,
+4238,4180,4040,3831,3595,3350,3055,2677,2266,1962,1895,2075,2384,2670,2851,2934,2964,2968,2953,2925,2894,
+2864,2825,2772,2710,2653,2603,2549,2486,2419,2359,2309,2263,2213,2156,2092,2025,1962,1910,1870,1833,1789,
+1737,1682,1634,1593,1559,1530,1505,1477,1440,1391,1336,1281,1225,1173,1129,1101,1083,1062,1028,985,946,
+917,891,860,821,778,736,691,643,596,554,517,481,445,413,389,369,345,309,263,211,157,
+104,53,4,-42,-87,-129,-167,-199,-224,-243,-260,-281,-307,-335,-362,-388,-419,-460,-508,-552,-584,
+-606,-629,-657,-690,-715,-726,-721,-709,-701,-704,-715,-724,-727,-726,-730,-738,-744,-742,-736,-737,-748,
+-756,-755,-749,-752,-769,-785,-782,-755,-721,-700,-703,-726,-752,-765,-755,-727,-697,-686,-700,-730,-751,
+-751,-733,-715,-714,-727,-738,-729,-704,-690,-712,-767,-821,-842,-833,-824,-835,-859,-866,-847,-820,-806,
+-809,-814,-810,-802,-798,-798,-795,-789,-786,-789,-788,-771,-740,-713,-707,-722,-745,-757,-750,-731,-711,
+-701,-702,-706,-703,-693,-684,-680,-679,-679,-678,-682,-690,-697,-698,-694,-691,-694,-700,-706,-709,-711,
+-713,-711,-705,-699,-697,-699,-703,-705,-705,-706,-713,-725,-736,-741,-741,-745,-760,-779,-786,-775,-756,
+-751,-769,-802,-833,-854,-874,-899,-928,-952,-969,-982,-1000,-1024,-1049,-1070,-1089,-1108,-1127,-1146,-1167,-1189,
+-1210,-1227,-1239,-1248,-1258,-1270,-1281,-1289,-1295,-1299,-1304,-1311,-1320,-1330,-1339,-1347,-1352,-1356,-1361,-1373,-1394,
+-1419,-1443,-1464,-1489,-1521,-1556,-1590,-1623,-1657,-1696,-1736,-1770,-1798,-1825,-1857,-1891,-1921,-1947,-1974,-2004,-2037,
+-2069,-2099,-2127,-2154,-2178,-2202,-2227,-2254,-2282,-2309,-2338,-2372,-2409,-2443,-2473,-2503,-2536,-2571,-2602,-2630,-2659,
+-2693,-2726,-2755,-2780,-2809,-2844,-2878,-2906,-2929,-2954,-2983,-3012,-3038,-3065,-3099,-3139,-3176,-3206,-3230,-3252,-3275,
+-3302,-3333,-3373,-3416,-3455,-3485,-3508,-3532,-3562,-3594,-3624,-3654,-3686,-3721,-3756,-3786,-3812,-3837,-3865,-3896,-3927,
+-3956,-3982,-4004,-4026,-4049,-4072,-4096,-4117,-4134,-4146,-4155,-4163,-4171,-4182,-4194,-4207,-4221,-4233,-4242,-4247,-4251,
+-4257,-4265,-4273,-4279,-4284,-4291,-4296,-4291,-4277,-4264,-4262,-4271,-4281,-4285,-4282,-4277,-4267,-4251,-4231,-4215,-4209,
+-4208,-4203,-4196,-4190,-4183,-4167,-4135,-4095,-4059,-4033,-4012,-3993,-3980,-3976,-3963,-3909,-3793,-3630,-3475,-3385,-3387,
+-3461,-3555,-3615,-3622,-3594,-3562,-3544,-3528,-3494,-3436,-3369,-3309,-3260,-3216,-3173,-3132,-3092,-3045,-2988,-2932,-2894,
+-2877,-2862,-2829,-2771,-2700,-2635,-2588,-2560,-2551,-2554,-2560,-2556,-2538,-2510,-2479,-2448,-2423,-2413,-2418,-2420,-2394,
+-2327,-2243,-2188,-2192,-2244,-2304,-2342,-2358,-2370,-2394,-2424,-2449,-2460,-2454,-2428,-2389,-2349,-2323,-2314,-2311,-2305,
+-2298,-2310,-2358,-2441,-2537,-2624,-2685,-2716,-2725,-2729,-2743,-2773,-2808,-2835,-2845,-2845,-2844,-2848,-2854,-2858,-2859,
+-2855,-2846,-2833,-2825,-2830,-2845,-2855,-2852,-2842,-2836,-2839,-2844,-2839,-2827,-2818,-2822,-2839,-2866,-2897,-2929,-2955,
+-2969,-2970,-2961,-2945,-2922,-2895,-2867,-2846,-2836,-2839,-2850,-2869,-2892,-2910,-2916,-2908,-2893,-2881,-2876,-2875,-2880,
+-2891,-2910,-2933,-2951,-2958,-2958,-2959,-2967,-2985,-3012,-3049,-3096,-3153,-3218,-3287,-3356,-3427,-3506,-3600,-3709,-3819,
+-3906,-3961,-3999,-4054,-4152,-4281,-4404,-4486,-4520,-4524,-4519,-4510,-4499,-4495,-4511,-4558,-4632,-4723,-4818,-4909,-4989,
+-5049,-5089,-5115,-5137,-5159,-5179,-5192,-5197,-5194,-5187,-5179,-5168,-5152,-5128,-5096,-5059,-5022,-4985,-4942,-4890,-4834,
+-4780,-4728,-4679,-4632,-4592,-4564,-4546,-4532,-4514,-4491,-4462,-4428,-4388,-4346,-4307,-4270,-4234,-4196,-4160,-4132,-4112,
+-4097,-4079,-4057,-4034,-4017,-4010,-4011,-4011,-4006,-3992,-3972,-3948,-3921,-3889,-3853,-3815,-3779,-3743,-3705,-3667,-3630,
+-3596,-3560,-3517,-3472,-3429,-3390,-3347,-3294,-3229,-3160,-3095,-3035,-2978,-2922,-2868,-2812,-2750,-2680,-2603,-2525,-2449,
+-2372,-2291,-2204,-2112,-2020,-1930,-1840,-1748,-1658,-1571,-1486,-1397,-1301,-1202,-1108,-1021,-935,-841,-740,-641,-552,
+-467,-376,-274,-168,-64,33,130,225,317,405,496,592,691,785,874,965,1064,1163,1253,1332,1407,
+1482,1553,1609,1651,1689,1732,1785,1842,1897,1952,2005,2056,2103,2148,2192,2236,2275,2312,2351,2393,2437,
+2478,2513,2545,2576,2609,2640,2670,2700,2730,2758,2784,2810,2841,2878,2916,2947,2971,2996,3030,3068,3094,
+3102,3101,3110,3126,3128,3105,3082,3102,3174,3249,3260,3192,3102,3061,3089,3142,3166,3154,3135,3129,3128,
+3113,3085,3059,3045,3034,3018,3003,3003,3020,3043,3066,3094,3136,3187,3231,3264,3293,3332,3375,3408,3424,
+3434,3457,3492,3524,3540,3545,3554,3576,3604,3630,3650,3667,3683,3698,3719,3759,3828,3914,3990,4035,4053,
+4067,4099,4153,4215,4271,4314,4351,4389,4433,4476,4501,4494,4450,4380,4293,4195,4097,4027,4021,4098,4236,
+4391,4534,4662,4784,4895,4989,5070,5154,5238,5293,5294,5251,5204,5183,5170,5133,5060,4977,4910,4858,4799,
+4726,4653,4603,4572,4541,4492,4426,4355,4286,4220,4160,4111,4077,4051,4022,3978,3919,3855,3799,3756,3660,
+3613,3558,3494,3426,3359,3289,3210,3126,3052,3001,2969,2939,2901,2856,2813,2774,2736,2700,2670,2650,2640,
+2635,2631,2628,2625,2621,2617,2614,2615,2623,2639,2663,2687,2705,2711,2711,2716,2730,2755,2788,2827,2871,
+2912,2945,2974,3007,3044,3074,3091,3103,3129,3173,3212,3220,3189,3136,3082,3033,2991,2958,2940,2935,2932,
+2922,2909,2898,2893,2887,2876,2861,2845,2828,2806,2777,2741,2700,2662,2634,2620,2611,2592,2551,2494,2434,
+2384,2347,2318,2296,2279,2262,2246,2235,2233,2235,2230,2214,2193,2174,2155,2131,2106,2092,2093,2092,2067,
+2012,1945,1882,1830,1786,1748,1724,1711,1703,1689,1668,1643,1617,1594,1581,1579,1576,1559,1532,1523,1547,
+1586,1607,1603,1610,1663,1743,1791,1772,1720,1698,1725,1761,1766,1757,1784,1864,1947,1968,1914,1831,1765,
+1721,1671,1598,1513,1433,1361,1297,1248,1224,1211,1180,1112,1021,937,869,800,712,618,545,502,471,
+427,365,297,234,171,102,32,-33,-102,-192,-312,-450,-582,-699,-805,-916,-1033,-1148,-1248,-1329,-1393,
+-1445,-1493,-1536,-1577,-1618,-1662,-1705,-1736,-1742,-1714,-1658,-1575,-1457,-1295,-1094,-888,-721,-617,-576,-579,-604,
+-628,-637,-632,-628,-644,-675,-692,-670,-620,-577,-570,-593,-624,-650,-677,-706,-729,-756,-826,-978,-1201,
+-1425,-1567,-1599,-1566,-1529,-1515,-1511,-1501,-1502,-1549,-1654,-1793,-1925,-2020,-2080,-2126,-2173,-2220,-2256,-2267,-2259,
+-2251,-2263,-2301,-2352,-2401,-2444,-2492,-2551,-2615,-2665,-2692,-2694,-2680,-2661,-2648,-2658,-2703,-2780,-2875,-2971,-3059,
+-3133,-3182,-3196,-3202,-3261,-3444,-3767,-4169,-4541,-4799,-4922,-4950,-4934,-4905,-4864,-4812,-4753,-4703,-4669,-4648,-4624,
+-4591,-4556,-4538,-4551,-4590,-4639,-4686,-4733,-4786,-4842,-4889,-4918,-4932,-4931,-4904,-4826,-4687,-4499,-4271,-3990,-3626,
+-3195,-2791,-2539,-2497,-2594,-2687,-2679,-2586,-2499,-2474,-2492,-2496,-2468,-2442,-2459,-2520,-2594,-2656,-2698,-2719,-2717,
+-2697,-2685,-2713,-2788,-2880,-2951,-2985,-3001,-3020,-3039,-3043,-3024,-2999,-2998,-3037,-3103,-3172,-3228,-3269,-3305,-3343,
+-3381,-3411,-3426,-3430,-3435,-3454,-3491,-3529,-3548,-3536,-3506,-3478,-3469,-3475,-3487,-3499,-3512,-3531,-3562,-3609,-3673,
+-3745,-3801,-3821,-3805,-3770,-3732,-3694,-3657,-3626,-3609,-3599,-3578,-3543,-3505,-3481,-3463,-3429,-3372,-3309,-3261,-3225,
+-3187,-3149,-3127,-3125,-3119,-3091,-3060,-3083,-3193,-3373,-3578,-3781,-3982,-4172,-4313,-4372,-4359,-4321,-4298,-4287,-4265,
+-4224,-4181,-4146,-4109,-4053,-3975,-3891,-3815,-3736,-3633,-3495,-3334,-3168,-3013,-2870,-2740,-2624,-2524,-2436,-2355,-2277,
+-2217,-2195,-2217,-2259,-2283,-2269,-2224,-2167,-2104,-2024,-1922,-1813,-1713,-1627,-1541,-1444,-1338,-1230,-1124,-1017,-911,
+-815,-727,-639,-542,-437,-334,-238,-141,-34,82,192,283,355,417,480,547,615,678,741,813,902,
+1006,1111,1211,1309,1407,1501,1580,1646,1715,1802,1896,1975,2031,2081,2146,2224,2290,2334,2371,2423,2497,
+2578,2654,2730,2809,2881,2928,2949,2957,2974,3003,3035,3057,3064,3062,3062,3067,3058,3000,2873,2704,2564,
+2521,2583,2702,2821,2923,3028,3144,3255,3335,3379,3410,3449,3500,3553,3602,3643,3677,3707,3738,3773,3807,
+3831,3841,3850,3868,3899,3940,3994,4066,4150,4220,4254,4257,4253,4240,4177,4020,3783,3530,3304,3075,2774,
+2401,2067,1927,2043,2334,2640,2849,2946,2978,2987,2983,2966,2938,2905,2867,2820,2767,2712,2658,2599,2532,
+2464,2403,2352,2306,2256,2201,2140,2078,2018,1965,1921,1879,1834,1782,1729,1678,1633,1594,1561,1531,1497,
+1454,1405,1359,1318,1276,1224,1169,1125,1098,1078,1048,1005,959,920,890,861,825,784,739,693,648,
+607,569,532,491,451,419,397,378,352,317,275,230,184,133,81,29,-17,-59,-97,-130,-160,
+-186,-212,-237,-260,-282,-302,-324,-352,-391,-437,-484,-524,-553,-577,-601,-628,-655,-675,-685,-685,-679,
+-677,-684,-698,-710,-712,-708,-707,-716,-726,-728,-721,-714,-713,-714,-713,-718,-737,-765,-779,-760,-713,
+-665,-644,-654,-679,-701,-714,-720,-721,-720,-718,-719,-724,-726,-719,-702,-687,-686,-697,-701,-678,-631,
+-591,-595,-650,-726,-784,-811,-822,-833,-845,-845,-832,-821,-820,-824,-820,-806,-794,-790,-789,-780,-765,
+-755,-757,-763,-761,-748,-732,-721,-719,-720,-720,-713,-696,-672,-653,-644,-642,-639,-629,-618,-611,-608,
+-606,-603,-605,-614,-626,-631,-630,-627,-630,-637,-645,-647,-646,-642,-638,-635,-634,-635,-637,-638,-638,
+-638,-641,-648,-662,-678,-690,-695,-700,-714,-733,-746,-739,-721,-713,-729,-762,-794,-815,-832,-854,-881,
+-903,-917,-930,-950,-976,-1003,-1027,-1049,-1072,-1096,-1116,-1135,-1153,-1175,-1197,-1216,-1228,-1236,-1244,-1253,-1263,
+-1270,-1273,-1275,-1281,-1292,-1306,-1320,-1331,-1339,-1345,-1353,-1366,-1386,-1411,-1436,-1460,-1486,-1517,-1550,-1582,-1611,
+-1640,-1672,-1703,-1726,-1742,-1760,-1786,-1818,-1847,-1869,-1888,-1911,-1938,-1969,-2001,-2036,-2073,-2109,-2144,-2178,-2212,
+-2246,-2277,-2308,-2343,-2379,-2413,-2443,-2471,-2504,-2539,-2573,-2604,-2635,-2668,-2702,-2731,-2758,-2789,-2826,-2864,-2895,
+-2921,-2949,-2978,-3007,-3033,-3059,-3091,-3128,-3164,-3195,-3221,-3245,-3269,-3297,-3331,-3372,-3413,-3447,-3471,-3492,-3519,
+-3553,-3588,-3620,-3649,-3680,-3713,-3744,-3772,-3799,-3828,-3861,-3894,-3925,-3954,-3982,-4011,-4037,-4062,-4084,-4105,-4126,
+-4145,-4162,-4175,-4185,-4194,-4205,-4216,-4226,-4236,-4246,-4257,-4266,-4277,-4290,-4302,-4308,-4309,-4310,-4315,-4323,-4323,
+-4311,-4297,-4292,-4299,-4309,-4312,-4307,-4300,-4291,-4278,-4264,-4252,-4244,-4236,-4224,-4212,-4204,-4198,-4184,-4157,-4122,
+-4091,-4068,-4048,-4027,-4013,-4009,-4002,-3965,-3878,-3743,-3591,-3471,-3425,-3461,-3546,-3622,-3648,-3626,-3588,-3563,-3547,
+-3516,-3459,-3386,-3319,-3267,-3225,-3189,-3155,-3119,-3073,-3019,-2967,-2934,-2917,-2896,-2851,-2779,-2696,-2623,-2571,-2543,
+-2537,-2544,-2551,-2543,-2523,-2499,-2476,-2451,-2425,-2407,-2406,-2415,-2403,-2349,-2267,-2200,-2181,-2209,-2255,-2292,-2319,
+-2347,-2381,-2413,-2435,-2443,-2439,-2420,-2387,-2349,-2320,-2305,-2296,-2286,-2281,-2301,-2358,-2448,-2548,-2633,-2689,-2720,
+-2735,-2749,-2773,-2808,-2841,-2859,-2861,-2856,-2854,-2856,-2857,-2857,-2856,-2856,-2854,-2848,-2841,-2840,-2845,-2848,-2842,
+-2831,-2823,-2822,-2821,-2811,-2796,-2783,-2779,-2785,-2800,-2824,-2853,-2881,-2899,-2904,-2898,-2885,-2869,-2851,-2833,-2821,
+-2815,-2817,-2830,-2852,-2877,-2895,-2899,-2888,-2873,-2864,-2864,-2870,-2879,-2891,-2907,-2925,-2938,-2944,-2947,-2953,-2964,
+-2980,-2998,-3022,-3058,-3110,-3177,-3253,-3334,-3417,-3503,-3597,-3695,-3788,-3864,-3916,-3954,-4005,-4093,-4221,-4365,-4491,
+-4572,-4605,-4602,-4582,-4561,-4551,-4560,-4589,-4636,-4695,-4767,-4849,-4933,-5006,-5061,-5098,-5126,-5153,-5178,-5197,-5207,
+-5206,-5196,-5182,-5169,-5157,-5142,-5118,-5085,-5047,-5008,-4965,-4914,-4856,-4798,-4744,-4697,-4655,-4619,-4589,-4566,-4546,
+-4527,-4509,-4489,-4463,-4428,-4387,-4345,-4304,-4264,-4227,-4198,-4180,-4168,-4155,-4135,-4113,-4094,-4081,-4072,-4065,-4060,
+-4053,-4042,-4023,-3998,-3969,-3938,-3904,-3870,-3834,-3796,-3756,-3714,-3673,-3636,-3599,-3559,-3515,-3472,-3431,-3389,-3338,
+-3277,-3209,-3142,-3081,-3023,-2967,-2910,-2851,-2788,-2719,-2646,-2571,-2497,-2422,-2341,-2253,-2158,-2064,-1973,-1886,-1799,
+-1709,-1619,-1531,-1442,-1348,-1250,-1154,-1065,-980,-889,-791,-692,-598,-507,-413,-312,-210,-111,-15,80,176,
+268,357,450,551,653,747,833,919,1012,1107,1194,1268,1337,1404,1468,1520,1562,1603,1651,1707,1764,
+1818,1869,1919,1970,2018,2064,2109,2152,2193,2233,2272,2313,2353,2391,2426,2460,2494,2527,2559,2591,2623,
+2655,2685,2712,2739,2773,2814,2857,2891,2913,2933,2963,3000,3030,3040,3039,3045,3062,3072,3064,3063,3114,
+3229,3351,3396,3328,3199,3094,3062,3081,3106,3112,3110,3108,3101,3081,3055,3037,3029,3021,3006,2994,2996,
+3009,3025,3041,3069,3112,3161,3201,3229,3259,3300,3343,3373,3387,3401,3425,3456,3476,3481,3483,3499,3530,
+3566,3594,3614,3631,3645,3656,3675,3719,3800,3899,3979,4016,4019,4022,4050,4099,4144,4171,4190,4226,4295,
+4388,4471,4506,4477,4397,4296,4195,4101,4017,3966,3981,4069,4201,4330,4434,4531,4643,4771,4892,4991,5067,
+5121,5139,5115,5068,5032,5021,5014,4981,4920,4860,4819,4783,4724,4641,4557,4497,4459,4423,4372,4308,4240,
+4171,4104,4042,3992,3955,3928,3900,3864,3816,3762,3709,3660,3538,3471,3401,3327,3253,3186,3127,3069,3013,
+2967,2939,2923,2902,2866,2822,2781,2746,2713,2680,2656,2646,2648,2651,2647,2638,2629,2628,2633,2640,2644,
+2645,2646,2652,2662,2668,2668,2671,2686,2714,2746,2774,2801,2832,2867,2900,2931,2965,3000,3029,3043,3055,
+3083,3128,3168,3175,3148,3106,3069,3039,3009,2980,2962,2957,2958,2952,2937,2918,2901,2886,2874,2863,2852,
+2835,2809,2774,2734,2694,2656,2624,2601,2583,2557,2516,2461,2404,2357,2323,2299,2282,2267,2251,2237,2231,
+2238,2246,2244,2227,2204,2181,2155,2122,2089,2071,2067,2057,2020,1954,1879,1816,1768,1730,1700,1683,1678,
+1677,1673,1665,1654,1641,1628,1621,1620,1611,1583,1550,1542,1576,1622,1630,1594,1565,1598,1688,1765,1770,
+1713,1652,1633,1652,1686,1732,1801,1884,1938,1929,1864,1787,1733,1696,1650,1586,1512,1439,1366,1293,1228,
+1182,1149,1109,1049,979,916,860,795,711,624,557,517,486,442,382,315,249,180,108,36,-32,
+-102,-189,-298,-418,-534,-641,-743,-849,-957,-1063,-1163,-1253,-1331,-1396,-1452,-1507,-1564,-1624,-1683,-1735,-1775,
+-1796,-1794,-1768,-1713,-1623,-1490,-1320,-1128,-943,-791,-697,-675,-714,-777,-817,-812,-784,-769,-778,-783,-754,
+-697,-645,-619,-607,-593,-586,-604,-647,-684,-702,-740,-863,-1086,-1340,-1527,-1600,-1596,-1581,-1581,-1575,-1543,
+-1505,-1509,-1585,-1715,-1853,-1963,-2040,-2097,-2152,-2205,-2245,-2263,-2257,-2247,-2256,-2303,-2381,-2470,-2552,-2626,-2699,
+-2767,-2814,-2823,-2791,-2739,-2703,-2720,-2807,-2954,-3125,-3270,-3360,-3391,-3379,-3344,-3305,-3293,-3361,-3557,-3880,-4262,
+-4602,-4829,-4933,-4957,-4951,-4935,-4907,-4862,-4808,-4761,-4727,-4699,-4665,-4622,-4582,-4562,-4572,-4606,-4648,-4689,-4732,
+-4783,-4841,-4897,-4943,-4982,-5019,-5046,-5036,-4966,-4835,-4658,-4451,-4209,-3938,-3678,-3499,-3439,-3452,-3441,-3331,-3137,
+-2934,-2785,-2689,-2610,-2535,-2482,-2474,-2506,-2553,-2604,-2657,-2707,-2735,-2732,-2717,-2725,-2775,-2847,-2911,-2950,-2974,
+-2992,-3000,-2987,-2961,-2944,-2956,-3002,-3067,-3134,-3196,-3249,-3291,-3323,-3351,-3380,-3407,-3428,-3443,-3461,-3491,-3524,
+-3540,-3523,-3482,-3438,-3411,-3407,-3420,-3444,-3471,-3492,-3508,-3540,-3614,-3729,-3846,-3914,-3912,-3863,-3800,-3740,-3683,
+-3635,-3607,-3598,-3586,-3555,-3514,-3483,-3466,-3439,-3388,-3322,-3262,-3212,-3165,-3125,-3111,-3119,-3112,-3066,-3018,-3053,
+-3222,-3482,-3743,-3946,-4101,-4236,-4344,-4390,-4369,-4316,-4276,-4257,-4234,-4191,-4139,-4095,-4058,-4011,-3945,-3866,-3782,
+-3687,-3566,-3414,-3246,-3085,-2948,-2834,-2732,-2633,-2538,-2450,-2368,-2292,-2230,-2202,-2214,-2249,-2271,-2256,-2210,-2152,
+-2088,-2006,-1902,-1788,-1684,-1590,-1493,-1383,-1271,-1168,-1075,-981,-884,-791,-706,-621,-523,-414,-304,-203,-104,
+3,115,218,299,362,420,485,557,631,702,772,850,939,1035,1130,1218,1308,1406,1507,1599,1676,
+1749,1831,1918,1996,2059,2121,2192,2265,2320,2356,2393,2454,2536,2621,2696,2767,2839,2901,2941,2957,2968,
+2988,3018,3043,3056,3060,3061,3059,3039,2982,2873,2721,2571,2479,2480,2561,2678,2799,2922,3058,3199,3314,
+3383,3416,3439,3473,3517,3560,3601,3641,3680,3715,3749,3783,3817,3842,3856,3867,3884,3912,3947,3992,4057,
+4138,4209,4247,4254,4249,4233,4162,3988,3725,3453,3241,3066,2836,2504,2151,1945,2000,2270,2597,2836,2949,
+2986,3003,3016,3016,2996,2963,2924,2879,2827,2768,2706,2642,2577,2515,2457,2402,2345,2283,2221,2166,2118,
+2073,2028,1981,1933,1882,1830,1779,1729,1681,1636,1594,1554,1511,1465,1425,1399,1383,1357,1305,1232,1165,
+1123,1099,1075,1035,983,932,892,859,827,792,753,712,672,634,597,554,505,459,425,405,387,
+362,328,292,255,213,164,111,62,19,-19,-55,-86,-114,-140,-170,-201,-230,-252,-270,-292,-325,
+-368,-416,-458,-491,-518,-546,-576,-604,-622,-630,-635,-639,-644,-652,-663,-680,-694,-698,-692,-684,-684,
+-692,-698,-699,-695,-691,-690,-693,-707,-733,-757,-755,-716,-660,-619,-616,-638,-662,-673,-676,-685,-700,
+-711,-711,-704,-698,-698,-697,-691,-685,-688,-697,-697,-663,-595,-524,-493,-525,-604,-688,-750,-785,-803,
+-812,-814,-816,-822,-831,-831,-816,-793,-778,-777,-776,-763,-741,-725,-723,-733,-746,-750,-737,-708,-670,
+-641,-634,-642,-646,-632,-605,-583,-572,-567,-558,-546,-538,-534,-531,-526,-526,-533,-545,-551,-551,-550,
+-556,-566,-575,-576,-569,-560,-553,-553,-559,-566,-569,-569,-570,-575,-584,-597,-614,-632,-645,-646,-640,
+-642,-659,-681,-691,-685,-680,-693,-723,-755,-777,-793,-812,-836,-856,-870,-884,-904,-931,-958,-981,-1003,
+-1029,-1056,-1080,-1099,-1116,-1137,-1161,-1184,-1201,-1211,-1218,-1226,-1236,-1245,-1250,-1252,-1258,-1270,-1287,-1304,-1318,
+-1330,-1343,-1358,-1375,-1395,-1418,-1441,-1462,-1484,-1509,-1536,-1562,-1584,-1605,-1629,-1652,-1667,-1676,-1687,-1710,-1743,
+-1775,-1800,-1822,-1845,-1873,-1904,-1937,-1976,-2020,-2065,-2106,-2146,-2184,-2222,-2257,-2287,-2318,-2351,-2384,-2413,-2441,
+-2472,-2507,-2544,-2580,-2614,-2649,-2683,-2713,-2742,-2774,-2811,-2849,-2883,-2913,-2943,-2974,-3004,-3030,-3056,-3085,-3117,
+-3149,-3179,-3208,-3237,-3266,-3296,-3329,-3367,-3403,-3431,-3453,-3477,-3511,-3552,-3588,-3618,-3644,-3671,-3701,-3730,-3758,
+-3789,-3825,-3863,-3897,-3927,-3956,-3986,-4017,-4046,-4072,-4094,-4114,-4134,-4155,-4175,-4193,-4208,-4219,-4228,-4236,-4242,
+-4250,-4261,-4275,-4289,-4303,-4318,-4333,-4341,-4342,-4339,-4340,-4346,-4347,-4340,-4329,-4324,-4329,-4337,-4337,-4329,-4317,
+-4306,-4297,-4290,-4283,-4274,-4259,-4240,-4222,-4211,-4203,-4190,-4168,-4143,-4122,-4103,-4080,-4054,-4033,-4022,-4015,-3992,
+-3937,-3839,-3707,-3571,-3478,-3461,-3518,-3600,-3651,-3652,-3623,-3596,-3575,-3543,-3488,-3417,-3349,-3291,-3244,-3206,-3177,
+-3149,-3113,-3064,-3015,-2982,-2962,-2935,-2878,-2791,-2691,-2600,-2536,-2506,-2506,-2521,-2528,-2514,-2490,-2472,-2464,-2454,
+-2429,-2401,-2391,-2400,-2405,-2375,-2312,-2247,-2215,-2220,-2243,-2269,-2296,-2330,-2367,-2396,-2411,-2414,-2409,-2394,-2369,
+-2341,-2321,-2314,-2313,-2313,-2321,-2354,-2422,-2513,-2603,-2671,-2713,-2735,-2751,-2772,-2803,-2838,-2864,-2872,-2867,-2857,
+-2853,-2854,-2854,-2851,-2850,-2850,-2845,-2832,-2815,-2802,-2796,-2793,-2788,-2781,-2775,-2769,-2761,-2750,-2739,-2731,-2727,
+-2725,-2729,-2742,-2762,-2784,-2797,-2800,-2797,-2793,-2791,-2788,-2784,-2778,-2772,-2772,-2784,-2810,-2841,-2864,-2868,-2857,
+-2844,-2840,-2849,-2863,-2878,-2891,-2902,-2911,-2917,-2922,-2928,-2942,-2961,-2981,-2996,-3012,-3039,-3086,-3155,-3239,-3325,
+-3410,-3494,-3580,-3666,-3750,-3824,-3880,-3919,-3958,-4024,-4138,-4294,-4458,-4584,-4646,-4649,-4621,-4592,-4582,-4592,-4616,
+-4646,-4682,-4728,-4791,-4867,-4945,-5014,-5069,-5113,-5148,-5175,-5195,-5208,-5213,-5208,-5195,-5180,-5167,-5155,-5136,-5105,
+-5066,-5024,-4979,-4929,-4873,-4816,-4762,-4716,-4679,-4647,-4620,-4595,-4570,-4547,-4527,-4507,-4484,-4454,-4419,-4384,-4348,
+-4313,-4278,-4251,-4233,-4220,-4205,-4187,-4170,-4158,-4148,-4135,-4121,-4110,-4104,-4096,-4079,-4053,-4023,-3992,-3958,-3921,
+-3882,-3843,-3804,-3763,-3722,-3683,-3646,-3606,-3563,-3517,-3471,-3426,-3376,-3319,-3255,-3190,-3128,-3070,-3012,-2953,-2892,
+-2827,-2759,-2686,-2611,-2535,-2458,-2377,-2290,-2197,-2104,-2016,-1934,-1851,-1763,-1670,-1577,-1487,-1394,-1297,-1198,-1105,
+-1018,-931,-839,-741,-643,-547,-450,-351,-252,-155,-60,34,128,218,309,406,513,620,717,803,884,
+971,1058,1137,1202,1259,1314,1370,1422,1470,1518,1572,1629,1685,1735,1782,1828,1877,1926,1973,2019,2064,
+2106,2148,2188,2227,2264,2302,2340,2378,2414,2449,2483,2517,2552,2588,2624,2656,2688,2722,2762,2805,2843,
+2871,2893,2917,2947,2974,2987,2989,2994,3008,3019,3024,3049,3138,3296,3456,3519,3439,3265,3100,3014,3007,
+3035,3059,3070,3070,3059,3038,3019,3011,3009,3002,2988,2977,2981,2994,3008,3023,3050,3091,3134,3167,3195,
+3228,3271,3310,3335,3351,3369,3393,3415,3426,3433,3450,3479,3511,3530,3538,3550,3573,3604,3634,3665,3711,
+3776,3845,3892,3906,3903,3914,3950,3995,4026,4040,4061,4119,4224,4348,4446,4476,4426,4322,4204,4102,4025,
+3976,3965,4012,4113,4235,4340,4420,4501,4607,4729,4833,4896,4922,4923,4904,4868,4826,4799,4791,4784,4760,
+4726,4704,4695,4677,4625,4545,4465,4407,4365,4322,4267,4203,4136,4069,4004,3945,3897,3856,3820,3787,3753,
+3715,3665,3604,3538,3407,3322,3242,3162,3086,3023,2978,2944,2917,2899,2893,2891,2877,2846,2806,2771,2740,
+2709,2677,2656,2654,2665,2675,2671,2657,2644,2643,2654,2669,2675,2670,2658,2649,2645,2644,2645,2654,2680,
+2719,2756,2779,2793,2812,2840,2872,2904,2936,2968,2995,3012,3028,3056,3097,3132,3137,3115,3086,3066,3052,
+3033,3009,2989,2981,2980,2975,2961,2939,2916,2894,2879,2871,2866,2852,2822,2778,2730,2684,2643,2607,2577,
+2552,2525,2488,2443,2395,2352,2317,2292,2276,2265,2257,2250,2251,2257,2260,2247,2219,2186,2157,2128,2094,
+2058,2032,2016,1990,1938,1863,1788,1730,1689,1660,1640,1633,1636,1642,1649,1656,1663,1661,1650,1634,1619,
+1598,1566,1538,1545,1596,1650,1651,1589,1526,1537,1633,1745,1785,1726,1614,1520,1495,1549,1660,1791,1893,
+1930,1898,1830,1764,1714,1670,1618,1559,1499,1438,1367,1286,1205,1139,1088,1039,986,934,887,842,786,
+713,636,574,533,500,461,409,345,274,198,120,46,-23,-96,-180,-276,-377,-476,-574,-677,-782,
+-886,-984,-1079,-1173,-1261,-1338,-1407,-1476,-1551,-1629,-1701,-1761,-1808,-1844,-1867,-1872,-1849,-1790,-1691,-1550,-1375,
+-1179,-990,-851,-795,-828,-904,-960,-962,-928,-900,-892,-882,-843,-783,-733,-703,-671,-617,-561,-541,-564,
+-594,-606,-632,-741,-960,-1228,-1445,-1556,-1591,-1614,-1645,-1654,-1612,-1540,-1497,-1530,-1636,-1772,-1895,-1987,-2052,
+-2104,-2153,-2193,-2217,-2221,-2218,-2234,-2296,-2406,-2540,-2669,-2775,-2860,-2926,-2961,-2946,-2879,-2792,-2749,-2807,-2982,
+-3236,-3496,-3687,-3767,-3740,-3643,-3521,-3422,-3393,-3477,-3696,-4024,-4384,-4688,-4879,-4963,-4983,-4981,-4969,-4941,-4893,
+-4840,-4798,-4770,-4743,-4704,-4657,-4617,-4599,-4606,-4631,-4664,-4701,-4742,-4792,-4848,-4905,-4956,-5000,-5048,-5104,-5152,
+-5161,-5113,-5021,-4916,-4815,-4709,-4590,-4473,-4385,-4318,-4219,-4031,-3749,-3432,-3149,-2930,-2764,-2638,-2548,-2498,-2479,
+-2483,-2514,-2580,-2669,-2743,-2776,-2777,-2778,-2805,-2850,-2897,-2934,-2963,-2985,-2990,-2978,-2965,-2971,-3002,-3048,-3100,
+-3156,-3219,-3279,-3319,-3335,-3345,-3369,-3409,-3445,-3463,-3467,-3475,-3490,-3496,-3477,-3434,-3388,-3356,-3340,-3341,-3357,
+-3382,-3399,-3404,-3425,-3513,-3686,-3892,-4046,-4092,-4045,-3956,-3863,-3772,-3693,-3640,-3618,-3604,-3573,-3523,-3478,-3452,
+-3429,-3390,-3335,-3277,-3218,-3155,-3103,-3085,-3096,-3090,-3040,-2991,-3046,-3258,-3566,-3846,-4025,-4131,-4230,-4333,-4396,
+-4385,-4324,-4264,-4228,-4200,-4156,-4101,-4052,-4015,-3976,-3919,-3836,-3733,-3612,-3475,-3325,-3173,-3035,-2922,-2831,-2748,
+-2660,-2566,-2473,-2387,-2311,-2249,-2216,-2218,-2241,-2253,-2231,-2182,-2122,-2058,-1977,-1875,-1762,-1654,-1552,-1442,-1321,
+-1205,-1109,-1029,-949,-860,-771,-688,-604,-504,-392,-281,-180,-80,26,137,236,315,377,436,500,569,
+642,720,802,889,978,1066,1150,1230,1318,1418,1525,1625,1707,1777,1850,1931,2011,2083,2151,2220,2286,
+2338,2377,2423,2489,2573,2658,2733,2802,2865,2915,2942,2955,2971,2999,3030,3048,3050,3046,3038,3014,2953,
+2841,2691,2539,2432,2403,2452,2553,2671,2796,2933,3086,3234,3348,3416,3452,3479,3506,3531,3555,3585,3627,
+3674,3716,3750,3781,3811,3839,3860,3878,3899,3925,3959,4004,4066,4141,4205,4238,4242,4237,4221,4149,3973,
+3702,3425,3228,3102,2940,2653,2286,2012,1988,2217,2552,2823,2962,3007,3028,3053,3068,3061,3032,2993,2945,
+2884,2814,2740,2671,2607,2549,2494,2437,2374,2305,2240,2188,2151,2121,2085,2040,1988,1934,1883,1834,1786,
+1737,1688,1639,1589,1539,1493,1464,1458,1460,1441,1382,1291,1202,1143,1115,1096,1065,1017,961,907,862,
+827,799,773,744,711,675,631,577,518,466,432,414,398,375,345,315,282,243,195,147,105,
+71,37,2,-30,-59,-87,-117,-152,-184,-211,-235,-263,-300,-343,-384,-418,-443,-468,-501,-539,-570,
+-585,-586,-587,-596,-612,-628,-641,-655,-670,-680,-678,-668,-659,-659,-664,-670,-673,-675,-678,-686,-703,
+-726,-736,-716,-668,-619,-601,-619,-649,-661,-652,-640,-643,-659,-673,-674,-668,-667,-673,-681,-685,-685,
+-691,-702,-704,-675,-606,-521,-464,-467,-528,-611,-680,-723,-747,-762,-776,-790,-802,-809,-804,-787,-769,
+-762,-764,-763,-750,-727,-706,-697,-704,-719,-725,-702,-641,-564,-511,-510,-549,-586,-586,-555,-521,-504,
+-499,-493,-483,-475,-471,-467,-461,-455,-457,-462,-465,-463,-464,-472,-486,-497,-501,-495,-483,-473,-472,
+-479,-490,-497,-501,-506,-516,-531,-546,-564,-583,-596,-593,-576,-564,-575,-604,-630,-639,-639,-648,-674,
+-705,-731,-750,-771,-794,-814,-829,-844,-865,-891,-916,-936,-957,-982,-1010,-1038,-1061,-1080,-1100,-1123,-1145,
+-1164,-1177,-1186,-1194,-1206,-1218,-1228,-1236,-1246,-1261,-1279,-1297,-1312,-1327,-1344,-1362,-1378,-1395,-1412,-1431,-1448,
+-1464,-1483,-1505,-1527,-1547,-1566,-1586,-1606,-1621,-1630,-1642,-1664,-1695,-1729,-1760,-1789,-1820,-1852,-1880,-1910,-1945,
+-1988,-2032,-2073,-2111,-2151,-2191,-2228,-2259,-2288,-2320,-2354,-2387,-2417,-2449,-2486,-2526,-2564,-2600,-2635,-2668,-2700,
+-2730,-2762,-2797,-2831,-2863,-2895,-2927,-2959,-2991,-3020,-3048,-3077,-3105,-3132,-3161,-3194,-3229,-3262,-3292,-3322,-3355,
+-3386,-3412,-3437,-3468,-3508,-3550,-3585,-3610,-3633,-3659,-3686,-3715,-3747,-3784,-3826,-3866,-3900,-3930,-3960,-3990,-4019,
+-4047,-4073,-4098,-4121,-4144,-4168,-4191,-4212,-4229,-4241,-4248,-4252,-4256,-4263,-4277,-4295,-4313,-4327,-4339,-4352,-4364,
+-4369,-4368,-4366,-4366,-4367,-4362,-4354,-4351,-4356,-4362,-4361,-4351,-4336,-4323,-4316,-4312,-4306,-4294,-4275,-4252,-4233,
+-4220,-4208,-4192,-4172,-4156,-4147,-4137,-4120,-4095,-4072,-4054,-4038,-4017,-3982,-3918,-3816,-3682,-3555,-3485,-3494,-3556,
+-3617,-3644,-3640,-3624,-3604,-3570,-3518,-3456,-3395,-3338,-3284,-3238,-3206,-3185,-3158,-3115,-3065,-3026,-2999,-2966,-2905,
+-2810,-2695,-2585,-2502,-2464,-2467,-2487,-2492,-2473,-2446,-2438,-2449,-2457,-2440,-2406,-2384,-2389,-2402,-2391,-2350,-2299,
+-2265,-2254,-2257,-2264,-2277,-2301,-2331,-2357,-2372,-2377,-2377,-2368,-2351,-2334,-2326,-2333,-2346,-2361,-2385,-2433,-2506,
+-2591,-2663,-2710,-2735,-2752,-2772,-2799,-2829,-2855,-2870,-2870,-2860,-2850,-2845,-2843,-2839,-2832,-2823,-2813,-2797,-2774,
+-2750,-2730,-2719,-2714,-2710,-2707,-2703,-2696,-2688,-2680,-2676,-2675,-2671,-2664,-2658,-2660,-2670,-2680,-2685,-2687,-2692,
+-2704,-2721,-2736,-2745,-2744,-2736,-2730,-2736,-2758,-2790,-2816,-2827,-2825,-2821,-2826,-2841,-2860,-2878,-2890,-2899,-2904,
+-2908,-2913,-2924,-2943,-2970,-2995,-3011,-3021,-3039,-3082,-3152,-3238,-3325,-3405,-3482,-3560,-3640,-3720,-3793,-3852,-3891,
+-3922,-3976,-4086,-4255,-4442,-4587,-4653,-4648,-4610,-4578,-4572,-4591,-4621,-4651,-4678,-4708,-4750,-4810,-4882,-4959,-5032,
+-5093,-5140,-5170,-5188,-5201,-5213,-5219,-5216,-5203,-5186,-5169,-5148,-5119,-5080,-5037,-4991,-4944,-4893,-4840,-4789,-4744,
+-4705,-4675,-4650,-4627,-4604,-4580,-4557,-4534,-4510,-4483,-4455,-4429,-4403,-4374,-4342,-4312,-4290,-4273,-4258,-4243,-4231,
+-4223,-4213,-4197,-4180,-4167,-4160,-4151,-4133,-4106,-4075,-4044,-4008,-3968,-3925,-3887,-3852,-3816,-3775,-3733,-3692,-3653,
+-3612,-3567,-3518,-3468,-3416,-3360,-3301,-3239,-3179,-3120,-3061,-2999,-2935,-2868,-2800,-2728,-2651,-2570,-2487,-2404,-2319,
+-2230,-2141,-2057,-1978,-1898,-1811,-1716,-1619,-1526,-1435,-1340,-1241,-1144,-1055,-971,-883,-787,-687,-588,-490,-392,
+-293,-194,-97,-2,88,177,269,370,480,590,688,773,851,931,1008,1077,1131,1178,1226,1278,1332,
+1386,1440,1496,1552,1604,1652,1696,1739,1784,1830,1877,1924,1970,2014,2057,2097,2136,2175,2215,2257,2299,
+2338,2376,2413,2450,2487,2525,2564,2604,2642,2676,2710,2747,2787,2822,2850,2871,2892,2912,2927,2937,2947,
+2961,2972,2982,3017,3111,3263,3410,3462,3378,3204,3037,2946,2935,2964,2994,3010,3013,3004,2989,2980,2979,
+2979,2972,2958,2952,2958,2972,2985,3001,3028,3064,3100,3130,3161,3200,3243,3277,3298,3315,3336,3356,3366,
+3374,3392,3427,3463,3483,3485,3486,3508,3550,3600,3644,3683,3724,3763,3788,3791,3782,3781,3799,3831,3863,
+3890,3930,4003,4116,4248,4361,4420,4409,4336,4229,4122,4041,3995,3984,4013,4084,4187,4296,4387,4460,4538,
+4628,4712,4755,4742,4694,4641,4600,4571,4552,4546,4547,4544,4533,4523,4526,4535,4527,4487,4428,4373,4333,
+4296,4248,4187,4121,4054,3988,3928,3876,3830,3782,3731,3684,3647,3613,3563,3492,3407,3287,3197,3115,3038,
+2966,2910,2876,2859,2850,2849,2855,2862,2856,2832,2801,2774,2748,2718,2686,2665,2665,2681,2693,2691,2677,
+2665,2663,2673,2689,2699,2694,2679,2661,2652,2650,2657,2674,2707,2749,2785,2801,2804,2811,2832,2860,2888,
+2912,2938,2965,2990,3015,3045,3080,3109,3115,3102,3084,3074,3069,3058,3040,3023,3011,3003,2993,2978,2958,
+2933,2907,2888,2879,2875,2862,2828,2776,2719,2666,2621,2582,2549,2519,2489,2457,2422,2385,2346,2309,2281,
+2268,2269,2276,2281,2282,2279,2265,2232,2186,2142,2108,2080,2048,2012,1980,1951,1911,1851,1776,1706,1654,
+1620,1597,1587,1590,1603,1619,1635,1654,1672,1674,1654,1621,1588,1559,1532,1519,1542,1603,1662,1661,1588,
+1503,1487,1572,1701,1774,1725,1573,1407,1330,1394,1572,1774,1907,1935,1889,1824,1771,1724,1667,1600,1536,
+1484,1432,1365,1281,1195,1119,1056,1000,950,906,868,828,779,718,652,593,546,508,471,424,363,
+288,206,127,55,-13,-88,-173,-261,-348,-434,-526,-629,-736,-839,-934,-1026,-1119,-1210,-1294,-1374,-1457,
+-1547,-1640,-1721,-1785,-1835,-1880,-1922,-1956,-1969,-1948,-1882,-1769,-1610,-1416,-1214,-1046,-954,-950,-1000,-1049,-1060,
+-1042,-1025,-1015,-995,-945,-882,-833,-803,-760,-680,-585,-521,-511,-528,-543,-574,-676,-872,-1118,-1332,-1470,
+-1554,-1629,-1702,-1733,-1693,-1601,-1521,-1513,-1589,-1716,-1848,-1955,-2031,-2084,-2125,-2162,-2191,-2211,-2226,-2256,-2327,
+-2448,-2601,-2751,-2871,-2958,-3017,-3041,-3012,-2928,-2832,-2801,-2906,-3153,-3479,-3786,-3989,-4053,-3993,-3851,-3685,-3558,
+-3528,-3631,-3866,-4187,-4516,-4777,-4935,-5003,-5019,-5016,-4999,-4962,-4908,-4855,-4819,-4799,-4776,-4740,-4696,-4661,-4643,
+-4641,-4651,-4675,-4711,-4756,-4806,-4859,-4916,-4969,-5015,-5060,-5119,-5195,-5261,-5290,-5282,-5267,-5268,-5264,-5218,-5118,
+-4995,-4876,-4738,-4525,-4212,-3843,-3495,-3217,-3008,-2846,-2715,-2614,-2547,-2519,-2536,-2598,-2684,-2757,-2793,-2803,-2817,
+-2848,-2888,-2923,-2955,-2987,-3015,-3026,-3022,-3021,-3042,-3080,-3120,-3157,-3203,-3266,-3331,-3371,-3378,-3375,-3390,-3425,
+-3457,-3462,-3448,-3436,-3438,-3438,-3419,-3383,-3345,-3315,-3287,-3260,-3247,-3257,-3275,-3285,-3313,-3423,-3655,-3957,-4207,
+-4309,-4264,-4145,-4019,-3908,-3810,-3731,-3681,-3646,-3602,-3540,-3478,-3435,-3408,-3382,-3348,-3305,-3245,-3166,-3094,-3062,
+-3071,-3070,-3026,-2986,-3053,-3279,-3592,-3855,-3999,-4071,-4158,-4279,-4373,-4386,-4329,-4260,-4214,-4182,-4139,-4082,-4028,
+-3986,-3944,-3881,-3784,-3655,-3512,-3370,-3239,-3121,-3013,-2919,-2839,-2764,-2682,-2588,-2489,-2395,-2314,-2251,-2213,-2204,
+-2215,-2216,-2190,-2139,-2080,-2018,-1942,-1844,-1735,-1628,-1523,-1406,-1278,-1157,-1063,-990,-918,-835,-749,-667,-581,
+-482,-372,-265,-167,-69,39,153,257,341,411,474,535,595,663,743,833,926,1013,1093,1173,1255,
+1345,1446,1552,1650,1732,1802,1871,1948,2029,2103,2169,2232,2294,2351,2405,2463,2533,2614,2695,2769,2834,
+2886,2920,2937,2950,2975,3012,3044,3054,3044,3022,2989,2928,2820,2671,2514,2394,2346,2377,2464,2577,2699,
+2828,2972,3122,3258,3362,3435,3486,3523,3543,3550,3557,3581,3624,3676,3721,3753,3779,3808,3838,3867,3892,
+3916,3942,3976,4023,4086,4155,4208,4232,4234,4231,4218,4152,3985,3727,3464,3294,3224,3139,2913,2544,2193,
+2057,2198,2504,2794,2964,3027,3053,3081,3105,3109,3090,3055,3005,2939,2863,2787,2716,2647,2579,2516,2458,
+2401,2339,2277,2225,2189,2162,2131,2089,2041,1991,1943,1896,1847,1795,1743,1690,1636,1583,1540,1518,1517,
+1518,1491,1420,1318,1219,1152,1120,1104,1083,1046,994,933,875,832,809,796,781,756,717,665,601,
+532,475,439,421,406,386,360,335,310,276,235,193,160,133,104,68,31,-2,-34,-67,-102,
+-137,-171,-205,-242,-280,-317,-349,-373,-394,-416,-448,-487,-522,-542,-547,-551,-566,-588,-608,-620,-629,
+-641,-655,-663,-661,-654,-649,-650,-655,-659,-663,-668,-679,-697,-714,-715,-689,-647,-618,-620,-645,-663,
+-653,-623,-601,-600,-616,-629,-633,-633,-637,-647,-656,-660,-660,-664,-675,-685,-675,-633,-570,-517,-505,
+-537,-587,-623,-640,-649,-665,-687,-707,-721,-732,-744,-755,-760,-759,-751,-738,-721,-700,-680,-666,-666,
+-678,-681,-648,-567,-467,-404,-414,-476,-530,-534,-494,-452,-433,-433,-432,-424,-417,-413,-410,-401,-391,
+-386,-385,-384,-382,-382,-390,-402,-414,-422,-424,-418,-408,-400,-401,-410,-420,-429,-439,-451,-465,-477,
+-492,-512,-530,-534,-521,-507,-514,-543,-574,-586,-583,-586,-607,-640,-671,-695,-718,-742,-764,-782,-798,
+-819,-844,-869,-892,-913,-937,-964,-993,-1019,-1043,-1063,-1083,-1102,-1121,-1136,-1148,-1159,-1172,-1189,-1205,-1218,
+-1232,-1250,-1269,-1286,-1301,-1315,-1330,-1345,-1356,-1366,-1378,-1393,-1407,-1421,-1438,-1461,-1488,-1513,-1536,-1558,-1580,
+-1599,-1614,-1629,-1652,-1680,-1709,-1739,-1772,-1808,-1842,-1868,-1891,-1920,-1958,-1999,-2036,-2070,-2108,-2151,-2191,-2225,
+-2255,-2288,-2325,-2363,-2398,-2433,-2472,-2514,-2553,-2588,-2620,-2652,-2685,-2717,-2749,-2779,-2809,-2839,-2871,-2904,-2938,
+-2971,-3004,-3035,-3064,-3090,-3114,-3143,-3179,-3218,-3252,-3281,-3307,-3337,-3367,-3396,-3426,-3462,-3504,-3543,-3573,-3596,
+-3619,-3646,-3676,-3707,-3742,-3783,-3827,-3866,-3900,-3932,-3965,-3996,-4021,-4044,-4069,-4098,-4129,-4158,-4184,-4209,-4230,
+-4245,-4254,-4260,-4263,-4267,-4276,-4293,-4318,-4339,-4352,-4359,-4367,-4378,-4388,-4391,-4388,-4385,-4383,-4380,-4376,-4375,
+-4378,-4383,-4382,-4373,-4362,-4352,-4345,-4338,-4328,-4310,-4287,-4264,-4248,-4237,-4223,-4200,-4175,-4160,-4159,-4164,-4162,
+-4151,-4133,-4111,-4083,-4051,-4019,-3978,-3908,-3799,-3668,-3562,-3515,-3527,-3566,-3603,-3628,-3640,-3632,-3598,-3544,-3488,
+-3440,-3392,-3340,-3287,-3248,-3222,-3195,-3153,-3102,-3056,-3022,-2986,-2928,-2837,-2720,-2599,-2502,-2451,-2445,-2458,-2457,
+-2431,-2405,-2407,-2437,-2462,-2455,-2420,-2390,-2384,-2391,-2385,-2355,-2318,-2293,-2282,-2273,-2259,-2247,-2249,-2266,-2292,
+-2319,-2342,-2357,-2361,-2353,-2343,-2342,-2354,-2375,-2400,-2435,-2490,-2562,-2636,-2692,-2727,-2749,-2774,-2803,-2832,-2853,
+-2862,-2861,-2854,-2845,-2837,-2830,-2822,-2811,-2794,-2774,-2749,-2722,-2694,-2673,-2659,-2650,-2643,-2637,-2635,-2635,-2632,
+-2626,-2622,-2620,-2619,-2610,-2594,-2579,-2573,-2576,-2583,-2593,-2610,-2639,-2676,-2712,-2738,-2752,-2753,-2743,-2729,-2719,
+-2723,-2741,-2765,-2785,-2800,-2812,-2826,-2840,-2856,-2871,-2883,-2891,-2897,-2905,-2915,-2930,-2952,-2980,-3005,-3019,-3022,
+-3032,-3071,-3143,-3235,-3324,-3400,-3468,-3538,-3612,-3685,-3753,-3810,-3852,-3892,-3962,-4093,-4283,-4478,-4614,-4657,-4631,
+-4585,-4557,-4560,-4584,-4618,-4652,-4682,-4706,-4734,-4777,-4838,-4914,-4993,-5065,-5122,-5159,-5178,-5190,-5204,-5219,-5225,
+-5216,-5197,-5176,-5155,-5129,-5094,-5053,-5007,-4961,-4914,-4867,-4820,-4776,-4737,-4704,-4679,-4659,-4639,-4617,-4593,-4568,
+-4543,-4517,-4493,-4472,-4452,-4427,-4397,-4368,-4346,-4331,-4320,-4309,-4299,-4290,-4278,-4262,-4244,-4230,-4219,-4204,-4180,
+-4151,-4123,-4094,-4060,-4018,-3975,-3938,-3905,-3870,-3827,-3779,-3735,-3696,-3659,-3618,-3570,-3517,-3461,-3404,-3347,-3289,
+-3231,-3173,-3111,-3044,-2975,-2905,-2838,-2769,-2695,-2613,-2527,-2440,-2356,-2271,-2185,-2101,-2021,-1940,-1853,-1757,-1659,
+-1566,-1477,-1385,-1288,-1189,-1097,-1011,-923,-828,-727,-627,-529,-433,-333,-232,-133,-39,50,140,235,339,
+448,553,648,732,808,881,949,1008,1057,1102,1149,1203,1259,1315,1369,1421,1471,1521,1568,1612,1654,
+1695,1737,1781,1826,1873,1918,1963,2005,2046,2087,2131,2176,2221,2263,2303,2344,2385,2423,2459,2497,2539,
+2581,2616,2644,2673,2710,2750,2783,2805,2821,2838,2858,2877,2896,2914,2928,2940,2964,3024,3118,3206,3227,
+3159,3037,2929,2879,2880,2903,2925,2940,2948,2950,2945,2941,2941,2939,2932,2924,2923,2931,2942,2953,2969,
+2997,3031,3062,3091,3127,3170,3212,3240,3259,3279,3301,3315,3318,3325,3353,3395,3428,3444,3460,3500,3562,
+3617,3643,3648,3658,3683,3708,3714,3702,3691,3698,3715,3727,3738,3778,3878,4037,4215,4351,4407,4385,4313,
+4224,4138,4069,4026,4014,4035,4084,4155,4240,4324,4400,4468,4536,4594,4619,4590,4511,4415,4340,4301,4293,
+4303,4320,4337,4344,4342,4342,4351,4360,4353,4327,4298,4277,4260,4231,4179,4113,4045,3978,3914,3860,3817,
+3775,3721,3653,3589,3543,3507,3456,3379,3287,3185,3104,3032,2963,2897,2846,2819,2809,2807,2812,2824,2836,
+2837,2821,2799,2779,2760,2733,2701,2679,2678,2691,2703,2703,2694,2684,2679,2685,2700,2717,2722,2710,2692,
+2682,2687,2704,2730,2763,2798,2823,2829,2822,2820,2832,2854,2873,2888,2907,2935,2968,3001,3032,3061,3084,
+3094,3091,3083,3078,3078,3077,3074,3067,3055,3037,3015,2993,2971,2946,2918,2895,2883,2877,2860,2820,2760,
+2696,2640,2595,2557,2522,2488,2454,2420,2388,2356,2319,2280,2252,2245,2260,2283,2297,2297,2283,2252,2206,
+2150,2101,2066,2037,2004,1963,1922,1883,1838,1781,1716,1656,1610,1577,1556,1550,1560,1580,1602,1624,1648,
+1668,1668,1642,1599,1558,1530,1513,1512,1540,1595,1646,1647,1580,1485,1435,1478,1587,1673,1647,1490,1289,
+1183,1265,1508,1779,1947,1972,1912,1847,1803,1758,1686,1600,1526,1473,1425,1363,1285,1204,1130,1065,1007,
+958,917,878,836,787,732,673,614,558,509,465,416,353,275,192,118,52,-13,-87,-171,-257,
+-338,-419,-507,-605,-709,-810,-905,-998,-1092,-1183,-1271,-1358,-1451,-1553,-1653,-1740,-1807,-1858,-1905,-1956,-2010,
+-2055,-2072,-2041,-1954,-1815,-1636,-1443,-1266,-1140,-1086,-1091,-1123,-1149,-1163,-1170,-1167,-1139,-1080,-1008,-951,-908,
+-854,-763,-652,-565,-532,-544,-577,-629,-724,-875,-1061,-1241,-1392,-1523,-1649,-1753,-1799,-1762,-1665,-1571,-1538,
+-1588,-1699,-1834,-1959,-2060,-2136,-2191,-2234,-2271,-2305,-2339,-2381,-2446,-2543,-2667,-2792,-2894,-2968,-3018,-3041,-3018,
+-2942,-2860,-2856,-3005,-3301,-3659,-3965,-4146,-4188,-4119,-3984,-3832,-3723,-3713,-3832,-4063,-4352,-4629,-4842,-4971,-5029,
+-5042,-5032,-5006,-4961,-4905,-4857,-4829,-4814,-4794,-4761,-4723,-4695,-4677,-4664,-4660,-4676,-4717,-4769,-4819,-4866,-4922,
+-4984,-5041,-5087,-5140,-5216,-5308,-5385,-5436,-5479,-5531,-5568,-5542,-5445,-5315,-5196,-5071,-4880,-4593,-4252,-3935,-3684,
+-3480,-3290,-3107,-2958,-2866,-2834,-2841,-2862,-2869,-2851,-2821,-2810,-2836,-2887,-2934,-2962,-2984,-3015,-3048,-3065,-3060,
+-3054,-3067,-3098,-3132,-3165,-3209,-3271,-3339,-3387,-3403,-3404,-3410,-3426,-3433,-3420,-3396,-3382,-3381,-3376,-3353,-3321,
+-3295,-3276,-3242,-3188,-3139,-3126,-3142,-3161,-3198,-3328,-3614,-4008,-4355,-4510,-4457,-4298,-4148,-4044,-3963,-3879,-3799,
+-3731,-3666,-3593,-3516,-3452,-3409,-3382,-3362,-3333,-3276,-3187,-3099,-3057,-3063,-3066,-3029,-2993,-3057,-3267,-3550,-3775,
+-3885,-3940,-4031,-4174,-4299,-4343,-4309,-4254,-4214,-4183,-4138,-4076,-4012,-3953,-3892,-3810,-3694,-3550,-3400,-3269,-3166,
+-3082,-3001,-2918,-2839,-2765,-2687,-2594,-2490,-2390,-2303,-2235,-2190,-2170,-2169,-2165,-2138,-2091,-2035,-1977,-1904,-1809,
+-1702,-1597,-1491,-1373,-1241,-1119,-1025,-956,-890,-811,-725,-640,-553,-454,-349,-249,-156,-58,52,171,280,
+373,452,521,581,636,700,783,877,968,1046,1119,1197,1284,1377,1474,1573,1669,1756,1831,1904,1980,
+2057,2126,2187,2245,2307,2374,2441,2508,2580,2658,2737,2809,2865,2902,2923,2937,2959,2993,3031,3056,3056,
+3036,2999,2939,2839,2696,2535,2402,2338,2355,2432,2537,2649,2767,2897,3036,3169,3280,3370,3448,3516,3562,
+3577,3573,3573,3596,3640,3689,3730,3762,3790,3821,3854,3886,3915,3938,3959,3990,4038,4102,4165,4211,4233,
+4240,4243,4232,4172,4019,3782,3544,3410,3402,3411,3272,2929,2508,2232,2232,2457,2736,2935,3029,3070,3101,
+3127,3136,3124,3094,3048,2987,2920,2857,2792,2716,2629,2547,2484,2437,2389,2332,2276,2231,2199,2169,2133,
+2090,2047,2004,1957,1904,1847,1791,1738,1685,1634,1591,1564,1552,1536,1492,1412,1313,1225,1164,1129,1106,
+1084,1054,1012,956,896,851,829,823,816,794,753,696,625,550,486,445,425,412,393,371,353,
+337,316,287,255,227,200,168,130,90,50,12,-25,-61,-97,-137,-183,-229,-267,-293,-314,-334,
+-354,-376,-401,-434,-470,-498,-515,-526,-543,-567,-589,-601,-607,-614,-627,-640,-649,-654,-656,-659,-661,
+-661,-661,-662,-670,-685,-699,-700,-682,-657,-644,-653,-668,-664,-634,-597,-578,-582,-596,-603,-603,-602,
+-605,-610,-613,-612,-609,-609,-616,-629,-641,-639,-620,-597,-588,-595,-595,-572,-534,-505,-500,-511,-525,
+-545,-586,-652,-720,-757,-747,-707,-666,-643,-632,-622,-613,-614,-628,-637,-608,-530,-434,-377,-391,-449,
+-490,-477,-426,-381,-366,-369,-368,-357,-348,-346,-346,-338,-327,-317,-313,-311,-310,-311,-315,-321,-327,
+-335,-344,-348,-342,-330,-325,-330,-342,-354,-366,-378,-389,-397,-407,-425,-450,-467,-470,-467,-476,-500,
+-521,-524,-513,-511,-530,-565,-600,-628,-652,-676,-700,-721,-741,-762,-787,-814,-841,-868,-893,-918,-943,
+-968,-994,-1016,-1035,-1054,-1074,-1093,-1109,-1122,-1138,-1158,-1177,-1192,-1205,-1220,-1237,-1254,-1267,-1279,-1291,-1301,
+-1309,-1315,-1325,-1340,-1357,-1374,-1394,-1421,-1455,-1488,-1517,-1542,-1565,-1586,-1606,-1627,-1650,-1674,-1697,-1720,-1748,
+-1783,-1816,-1841,-1862,-1888,-1925,-1964,-1999,-2031,-2068,-2111,-2155,-2192,-2224,-2258,-2297,-2337,-2375,-2413,-2454,-2498,
+-2537,-2570,-2599,-2629,-2662,-2696,-2727,-2756,-2785,-2816,-2850,-2885,-2921,-2954,-2987,-3019,-3048,-3073,-3097,-3127,-3165,
+-3205,-3239,-3264,-3289,-3318,-3351,-3383,-3418,-3457,-3497,-3532,-3557,-3579,-3605,-3637,-3670,-3704,-3741,-3784,-3825,-3861,
+-3894,-3929,-3967,-4002,-4026,-4045,-4069,-4102,-4137,-4170,-4199,-4224,-4243,-4253,-4258,-4263,-4271,-4280,-4293,-4314,-4342,
+-4367,-4380,-4382,-4383,-4391,-4400,-4405,-4403,-4400,-4399,-4399,-4399,-4398,-4400,-4401,-4400,-4397,-4393,-4389,-4382,-4370,
+-4352,-4329,-4304,-4284,-4272,-4265,-4252,-4224,-4191,-4168,-4166,-4179,-4191,-4194,-4183,-4160,-4126,-4088,-4054,-4022,-3976,
+-3897,-3790,-3679,-3595,-3547,-3535,-3554,-3596,-3643,-3662,-3635,-3575,-3513,-3469,-3434,-3393,-3342,-3294,-3253,-3215,-3171,
+-3123,-3079,-3042,-3002,-2943,-2859,-2750,-2634,-2533,-2470,-2448,-2445,-2431,-2400,-2375,-2383,-2423,-2461,-2466,-2437,-2402,
+-2382,-2372,-2354,-2325,-2298,-2287,-2285,-2275,-2247,-2212,-2190,-2195,-2224,-2267,-2312,-2348,-2366,-2368,-2363,-2362,-2372,
+-2393,-2422,-2462,-2517,-2582,-2643,-2691,-2727,-2762,-2802,-2841,-2867,-2872,-2863,-2849,-2837,-2828,-2818,-2804,-2786,-2767,
+-2745,-2719,-2689,-2658,-2633,-2618,-2611,-2603,-2593,-2583,-2580,-2581,-2582,-2577,-2569,-2563,-2554,-2539,-2517,-2499,-2493,
+-2501,-2521,-2557,-2612,-2680,-2746,-2792,-2814,-2819,-2812,-2797,-2772,-2743,-2720,-2714,-2727,-2752,-2780,-2804,-2818,-2828,
+-2838,-2852,-2865,-2874,-2882,-2892,-2908,-2927,-2947,-2969,-2988,-2998,-2996,-3001,-3039,-3118,-3221,-3317,-3392,-3453,-3514,
+-3577,-3640,-3699,-3752,-3802,-3863,-3962,-4125,-4334,-4529,-4643,-4659,-4618,-4576,-4562,-4573,-4594,-4620,-4653,-4684,-4709,
+-4732,-4766,-4820,-4888,-4962,-5034,-5097,-5144,-5172,-5185,-5195,-5207,-5213,-5208,-5193,-5175,-5158,-5137,-5108,-5070,-5026,
+-4979,-4932,-4887,-4845,-4806,-4770,-4738,-4712,-4690,-4669,-4647,-4623,-4599,-4575,-4551,-4528,-4508,-4489,-4468,-4442,-4419,
+-4402,-4394,-4388,-4380,-4370,-4359,-4347,-4333,-4317,-4299,-4280,-4257,-4229,-4200,-4174,-4148,-4116,-4076,-4034,-3997,-3962,
+-3924,-3878,-3827,-3779,-3738,-3702,-3663,-3618,-3565,-3507,-3449,-3392,-3338,-3282,-3223,-3158,-3087,-3012,-2939,-2872,-2808,
+-2740,-2663,-2578,-2491,-2407,-2324,-2238,-2151,-2065,-1981,-1893,-1799,-1703,-1611,-1524,-1435,-1341,-1242,-1147,-1055,-963,
+-866,-764,-665,-569,-473,-374,-273,-176,-85,2,96,198,305,409,506,594,676,751,820,880,932,
+980,1028,1080,1135,1191,1245,1295,1341,1387,1434,1482,1528,1570,1608,1646,1687,1730,1776,1823,1869,1915,
+1958,2002,2047,2095,2141,2183,2224,2266,2310,2350,2384,2417,2456,2499,2536,2564,2590,2624,2665,2702,2727,
+2745,2766,2791,2819,2843,2863,2880,2892,2901,2918,2944,2964,2955,2914,2862,2829,2826,2838,2849,2859,2872,
+2890,2904,2907,2904,2900,2895,2890,2889,2894,2901,2907,2914,2931,2961,2995,3024,3053,3089,3132,3169,3194,
+3213,3238,3262,3273,3276,3289,3324,3363,3390,3421,3491,3608,3723,3766,3722,3645,3604,3616,3645,3650,3633,
+3624,3634,3645,3643,3654,3728,3895,4123,4326,4428,4411,4317,4212,4135,4090,4065,4054,4063,4093,4138,4187,
+4236,4285,4339,4393,4437,4454,4426,4353,4256,4168,4112,4091,4097,4118,4144,4167,4179,4181,4181,4186,4189,
+4184,4175,4170,4173,4167,4137,4082,4017,3951,3887,3828,3781,3749,3715,3659,3579,3500,3442,3400,3347,3272,
+3185,3096,3032,2976,2919,2860,2812,2784,2774,2772,2781,2800,2820,2828,2818,2801,2788,2777,2756,2727,2704,
+2696,2702,2710,2711,2706,2698,2689,2690,2708,2735,2754,2750,2732,2721,2733,2763,2796,2823,2844,2854,2850,
+2837,2828,2833,2848,2860,2868,2881,2907,2945,2982,3012,3035,3052,3063,3068,3067,3067,3072,3085,3101,3111,
+3104,3077,3041,3006,2978,2952,2924,2900,2885,2874,2851,2805,2739,2671,2614,2571,2537,2505,2470,2431,2391,
+2354,2320,2283,2245,2217,2214,2235,2264,2281,2278,2258,2223,2177,2124,2078,2043,2010,1967,1913,1858,1812,
+1770,1725,1674,1625,1583,1550,1526,1519,1529,1551,1575,1598,1621,1639,1640,1616,1577,1540,1517,1508,1512,
+1532,1569,1602,1604,1552,1461,1378,1357,1410,1480,1475,1347,1160,1063,1177,1479,1812,2012,2035,1959,1882,
+1835,1783,1697,1595,1511,1457,1414,1360,1294,1225,1159,1094,1036,989,951,911,863,808,751,693,632,
+569,508,453,396,328,248,168,99,40,-18,-86,-164,-246,-330,-414,-502,-595,-691,-788,-884,-979,
+-1074,-1166,-1256,-1350,-1451,-1557,-1660,-1750,-1823,-1882,-1934,-1991,-2057,-2124,-2170,-2169,-2107,-1988,-1832,-1658,-1486,
+-1342,-1248,-1216,-1236,-1280,-1322,-1347,-1346,-1315,-1256,-1182,-1113,-1053,-988,-901,-797,-706,-660,-669,-723,-804,
+-899,-1003,-1115,-1240,-1382,-1538,-1690,-1803,-1847,-1812,-1727,-1643,-1605,-1634,-1722,-1844,-1980,-2116,-2241,-2343,-2416,
+-2466,-2507,-2548,-2591,-2636,-2691,-2761,-2836,-2902,-2955,-2998,-3026,-3015,-2954,-2889,-2911,-3095,-3423,-3792,-4078,-4222,
+-4238,-4174,-4070,-3964,-3899,-3921,-4046,-4251,-4484,-4697,-4862,-4970,-5023,-5033,-5016,-4980,-4933,-4882,-4841,-4818,-4807,
+-4791,-4763,-4731,-4708,-4690,-4673,-4663,-4681,-4730,-4790,-4838,-4877,-4928,-5000,-5074,-5132,-5185,-5257,-5354,-5454,-5539,
+-5616,-5692,-5747,-5742,-5676,-5591,-5521,-5442,-5295,-5062,-4795,-4565,-4381,-4192,-3958,-3708,-3512,-3415,-3395,-3390,-3341,
+-3229,-3080,-2950,-2885,-2891,-2927,-2948,-2941,-2936,-2958,-2998,-3025,-3023,-3009,-3010,-3035,-3073,-3112,-3155,-3209,-3269,
+-3322,-3356,-3368,-3367,-3358,-3343,-3321,-3303,-3294,-3290,-3275,-3242,-3208,-3194,-3194,-3175,-3117,-3046,-3004,-2999,-3005,
+-3034,-3173,-3507,-3994,-4443,-4657,-4595,-4393,-4221,-4141,-4099,-4030,-3927,-3824,-3744,-3673,-3596,-3516,-3448,-3403,-3376,
+-3346,-3287,-3197,-3110,-3067,-3072,-3076,-3041,-3006,-3059,-3239,-3475,-3654,-3736,-3784,-3883,-4038,-4183,-4255,-4259,-4235,
+-4212,-4182,-4130,-4058,-3977,-3893,-3801,-3695,-3570,-3432,-3297,-3186,-3106,-3043,-2976,-2897,-2817,-2743,-2666,-2576,-2473,
+-2373,-2287,-2219,-2167,-2136,-2123,-2112,-2086,-2043,-1992,-1935,-1863,-1768,-1661,-1553,-1444,-1322,-1190,-1070,-984,-925,
+-868,-793,-704,-613,-521,-424,-325,-231,-141,-44,67,187,299,399,487,564,628,686,753,840,936,
+1021,1087,1150,1225,1314,1407,1498,1591,1689,1786,1873,1951,2024,2095,2159,2217,2275,2339,2409,2480,2549,
+2624,2705,2787,2855,2900,2924,2940,2961,2993,3028,3051,3054,3042,3020,2983,2911,2789,2629,2474,2376,2367,
+2435,2544,2657,2763,2872,2995,3120,3226,3308,3378,3454,3529,3578,3591,3585,3588,3613,3651,3691,3730,3770,
+3810,3846,3879,3911,3940,3959,3974,3999,4045,4107,4166,4210,4236,4254,4266,4258,4202,4065,3854,3643,3540,
+3590,3697,3672,3392,2932,2519,2349,2446,2676,2890,3022,3091,3132,3154,3158,3144,3116,3073,3019,2965,2919,
+2867,2790,2689,2594,2527,2487,2446,2388,2323,2270,2235,2205,2170,2130,2092,2055,2011,1957,1896,1837,1785,
+1735,1683,1633,1592,1560,1522,1463,1383,1300,1235,1190,1154,1118,1082,1049,1015,971,922,880,859,851,
+842,818,777,721,650,572,503,458,436,424,408,389,375,367,359,345,323,296,264,225,183,
+141,99,56,14,-23,-61,-105,-158,-209,-243,-259,-270,-290,-318,-343,-364,-389,-422,-457,-484,-500,
+-514,-535,-559,-580,-591,-597,-602,-610,-622,-639,-656,-669,-675,-672,-666,-662,-664,-673,-684,-688,-679,
+-666,-661,-668,-670,-654,-622,-594,-588,-598,-606,-600,-587,-576,-569,-563,-558,-555,-555,-553,-555,-567,
+-592,-618,-634,-639,-640,-631,-596,-525,-436,-363,-320,-296,-283,-301,-378,-508,-633,-686,-653,-579,-524,
+-513,-526,-537,-540,-552,-580,-601,-586,-526,-452,-411,-421,-452,-460,-425,-369,-331,-320,-320,-310,-291,
+-277,-276,-278,-275,-264,-253,-244,-239,-236,-237,-240,-239,-236,-238,-247,-257,-259,-252,-248,-254,-267,
+-280,-291,-304,-318,-328,-335,-348,-368,-389,-404,-414,-428,-447,-458,-452,-438,-436,-456,-492,-527,-555,
+-578,-603,-630,-656,-679,-702,-725,-751,-780,-811,-840,-864,-885,-907,-932,-957,-979,-1001,-1024,-1047,-1067,
+-1084,-1102,-1123,-1142,-1156,-1164,-1173,-1187,-1201,-1212,-1222,-1233,-1244,-1254,-1263,-1276,-1296,-1318,-1341,-1366,-1396,
+-1432,-1467,-1497,-1522,-1544,-1566,-1587,-1611,-1635,-1658,-1677,-1695,-1717,-1746,-1777,-1803,-1825,-1854,-1892,-1933,-1969,
+-2001,-2037,-2080,-2124,-2163,-2197,-2232,-2270,-2309,-2347,-2386,-2429,-2473,-2511,-2543,-2571,-2602,-2635,-2669,-2700,-2729,
+-2760,-2796,-2834,-2873,-2910,-2943,-2974,-3004,-3032,-3057,-3083,-3116,-3155,-3195,-3226,-3251,-3276,-3307,-3342,-3377,-3412,
+-3451,-3488,-3519,-3542,-3564,-3593,-3629,-3666,-3701,-3739,-3780,-3819,-3851,-3883,-3921,-3965,-4004,-4031,-4051,-4077,-4110,
+-4146,-4178,-4208,-4234,-4252,-4259,-4260,-4266,-4280,-4298,-4317,-4338,-4364,-4387,-4399,-4401,-4399,-4402,-4409,-4413,-4413,
+-4414,-4416,-4419,-4421,-4422,-4423,-4422,-4420,-4420,-4422,-4423,-4416,-4401,-4379,-4356,-4333,-4315,-4304,-4300,-4291,-4266,
+-4229,-4196,-4185,-4193,-4204,-4206,-4196,-4178,-4157,-4133,-4105,-4069,-4018,-3948,-3865,-3779,-3695,-3615,-3551,-3528,-3560,
+-3625,-3673,-3666,-3608,-3536,-3485,-3454,-3425,-3383,-3330,-3275,-3223,-3177,-3138,-3105,-3068,-3017,-2946,-2858,-2758,-2653,
+-2559,-2492,-2456,-2437,-2413,-2379,-2355,-2364,-2406,-2451,-2468,-2448,-2412,-2377,-2347,-2315,-2281,-2259,-2257,-2265,-2260,
+-2229,-2183,-2148,-2146,-2178,-2232,-2289,-2335,-2363,-2375,-2377,-2379,-2390,-2413,-2447,-2491,-2543,-2597,-2647,-2691,-2733,
+-2781,-2831,-2871,-2888,-2882,-2862,-2842,-2827,-2813,-2794,-2769,-2742,-2719,-2701,-2681,-2658,-2633,-2611,-2596,-2586,-2572,
+-2555,-2540,-2535,-2536,-2534,-2524,-2509,-2496,-2484,-2470,-2453,-2443,-2449,-2474,-2521,-2595,-2694,-2802,-2890,-2937,-2941,
+-2922,-2895,-2864,-2826,-2780,-2736,-2710,-2708,-2728,-2755,-2774,-2779,-2780,-2791,-2813,-2835,-2847,-2853,-2863,-2882,-2903,
+-2920,-2936,-2953,-2964,-2965,-2969,-3007,-3092,-3204,-3308,-3384,-3439,-3489,-3542,-3596,-3649,-3702,-3760,-3833,-3947,-4122,
+-4337,-4528,-4628,-4632,-4591,-4564,-4570,-4588,-4602,-4616,-4642,-4676,-4705,-4731,-4766,-4819,-4882,-4945,-5008,-5071,-5129,
+-5170,-5191,-5198,-5200,-5201,-5197,-5188,-5176,-5163,-5144,-5117,-5082,-5042,-4997,-4948,-4901,-4860,-4827,-4799,-4772,-4745,
+-4720,-4696,-4672,-4649,-4627,-4607,-4586,-4564,-4544,-4528,-4512,-4495,-4478,-4466,-4459,-4453,-4445,-4435,-4426,-4419,-4410,
+-4395,-4374,-4349,-4320,-4290,-4262,-4235,-4206,-4173,-4135,-4095,-4058,-4020,-3979,-3932,-3883,-3835,-3788,-3745,-3701,-3656,
+-3605,-3549,-3491,-3436,-3382,-3327,-3266,-3200,-3128,-3052,-2978,-2909,-2846,-2782,-2710,-2629,-2544,-2460,-2377,-2292,-2202,
+-2111,-2022,-1934,-1842,-1749,-1658,-1572,-1485,-1393,-1297,-1201,-1105,-1009,-909,-807,-708,-612,-516,-417,-319,-227,
+-139,-49,50,158,265,363,450,532,611,685,751,805,853,901,953,1007,1060,1112,1162,1210,1255,
+1299,1346,1395,1442,1485,1522,1558,1597,1639,1683,1730,1778,1826,1873,1917,1962,2010,2056,2098,2136,2177,
+2221,2264,2302,2335,2370,2408,2447,2479,2510,2545,2586,2625,2656,2681,2707,2738,2767,2789,2806,2821,2831,
+2833,2825,2812,2795,2774,2755,2749,2760,2779,2792,2795,2799,2815,2840,2860,2867,2863,2857,2852,2849,2852,
+2858,2864,2867,2871,2890,2922,2957,2986,3011,3044,3082,3113,3136,3159,3190,3217,3231,3240,3266,3308,3344,
+3370,3426,3559,3752,3907,3937,3849,3741,3706,3740,3770,3740,3669,3609,3587,3588,3601,3653,3784,3996,4223,
+4376,4402,4324,4212,4132,4103,4101,4098,4091,4093,4112,4140,4162,4176,4192,4222,4258,4278,4263,4208,4131,
+4059,4011,3990,3986,3987,3993,4004,4017,4025,4026,4025,4028,4033,4037,4042,4051,4058,4048,4012,3957,3897,
+3839,3781,3725,3684,3660,3635,3584,3503,3418,3352,3300,3243,3171,3096,3017,2970,2932,2888,2836,2789,2757,
+2740,2737,2750,2779,2812,2828,2824,2812,2805,2801,2788,2761,2734,2720,2718,2721,2723,2720,2710,2697,2695,
+2718,2759,2790,2791,2769,2755,2770,2807,2842,2861,2867,2865,2856,2842,2832,2833,2843,2852,2857,2865,2886,
+2920,2956,2985,3005,3019,3031,3039,3043,3047,3058,3081,3111,3134,3131,3100,3053,3010,2978,2954,2930,2906,
+2888,2872,2844,2793,2725,2655,2596,2554,2524,2498,2466,2425,2380,2336,2298,2261,2225,2199,2193,2207,2228,
+2240,2234,2216,2186,2146,2099,2055,2018,1978,1923,1854,1788,1739,1704,1672,1635,1595,1557,1524,1498,1486,
+1491,1510,1535,1559,1580,1595,1596,1581,1553,1522,1500,1491,1496,1510,1528,1542,1541,1510,1438,1342,1264,
+1246,1274,1274,1184,1040,979,1126,1465,1834,2056,2083,1997,1906,1844,1775,1676,1566,1483,1435,1400,1356,
+1303,1246,1185,1121,1060,1014,979,940,888,827,766,708,646,579,512,448,384,313,233,155,87,
+30,-22,-79,-146,-225,-313,-406,-499,-589,-679,-772,-869,-967,-1060,-1152,-1245,-1344,-1450,-1558,-1660,-1751,
+-1832,-1904,-1972,-2042,-2121,-2203,-2268,-2287,-2245,-2148,-2016,-1867,-1712,-1565,-1453,-1402,-1415,-1464,-1510,-1530,-1521,
+-1493,-1452,-1397,-1335,-1273,-1213,-1147,-1067,-980,-915,-906,-963,-1063,-1163,-1233,-1283,-1348,-1455,-1599,-1741,-1840,
+-1875,-1850,-1792,-1734,-1707,-1725,-1784,-1878,-2005,-2164,-2341,-2503,-2620,-2689,-2730,-2766,-2801,-2830,-2855,-2886,-2926,
+-2967,-3003,-3035,-3058,-3048,-2993,-2937,-2973,-3176,-3524,-3898,-4168,-4283,-4276,-4213,-4138,-4075,-4054,-4101,-4220,-4384,
+-4553,-4704,-4831,-4928,-4982,-4991,-4969,-4931,-4888,-4843,-4806,-4784,-4777,-4769,-4749,-4723,-4700,-4682,-4666,-4662,-4687,
+-4744,-4810,-4859,-4892,-4940,-5017,-5106,-5180,-5243,-5317,-5417,-5526,-5627,-5720,-5811,-5886,-5918,-5912,-5900,-5899,-5871,
+-5765,-5585,-5395,-5249,-5117,-4920,-4630,-4316,-4085,-3988,-3977,-3953,-3849,-3663,-3445,-3261,-3145,-3084,-3029,-2949,-2856,
+-2795,-2793,-2834,-2877,-2897,-2904,-2921,-2957,-3004,-3047,-3080,-3111,-3152,-3202,-3245,-3260,-3243,-3210,-3183,-3170,-3165,
+-3159,-3147,-3122,-3086,-3053,-3048,-3072,-3091,-3067,-3004,-2940,-2896,-2867,-2874,-3010,-3377,-3937,-4477,-4753,-4696,-4461,
+-4265,-4195,-4178,-4114,-3989,-3863,-3783,-3736,-3681,-3602,-3515,-3444,-3395,-3348,-3282,-3196,-3120,-3086,-3090,-3090,-3057,
+-3030,-3080,-3231,-3420,-3554,-3609,-3651,-3751,-3906,-4054,-4146,-4182,-4190,-4181,-4148,-4086,-4002,-3907,-3800,-3682,-3559,
+-3437,-3320,-3211,-3119,-3051,-2994,-2929,-2851,-2769,-2694,-2618,-2532,-2437,-2347,-2273,-2211,-2157,-2115,-2088,-2067,-2039,
+-1998,-1950,-1894,-1822,-1726,-1616,-1503,-1388,-1261,-1128,-1015,-942,-899,-853,-781,-687,-589,-494,-399,-305,-214,
+-126,-30,80,199,314,420,517,603,674,736,806,894,989,1070,1132,1191,1263,1350,1440,1527,1619,
+1719,1821,1915,1995,2067,2135,2199,2259,2320,2384,2450,2518,2589,2670,2759,2843,2905,2939,2957,2976,3008,
+3045,3066,3063,3041,3017,2998,2969,2900,2777,2618,2474,2398,2419,2519,2653,2780,2889,2997,3112,3220,3299,
+3347,3390,3450,3517,3565,3583,3587,3600,3625,3653,3681,3720,3774,3828,3869,3898,3928,3960,3982,3994,4013,
+4054,4112,4167,4208,4238,4267,4287,4285,4237,4122,3940,3754,3672,3765,3962,4060,3876,3417,2895,2557,2504,
+2654,2860,3022,3120,3170,3186,3178,3160,3134,3095,3042,2990,2948,2904,2836,2742,2651,2588,2549,2503,2435,
+2360,2300,2263,2233,2196,2155,2120,2092,2059,2010,1949,1888,1833,1780,1723,1665,1612,1567,1518,1453,1375,
+1303,1253,1222,1189,1145,1096,1055,1023,989,951,914,889,873,856,828,791,742,677,601,531,483,
+461,450,437,419,405,398,395,388,375,350,314,270,224,181,140,96,52,11,-27,-72,-125,
+-173,-201,-210,-217,-240,-276,-309,-331,-351,-380,-416,-447,-465,-477,-494,-520,-549,-573,-585,-586,-586,
+-593,-614,-643,-668,-679,-679,-673,-668,-668,-673,-678,-679,-671,-660,-655,-658,-659,-647,-628,-615,-619,
+-627,-624,-604,-578,-556,-538,-521,-508,-506,-511,-515,-518,-530,-557,-591,-616,-628,-631,-621,-580,-500,
+-400,-309,-234,-164,-100,-85,-161,-310,-447,-492,-443,-370,-342,-367,-407,-429,-443,-476,-529,-570,-569,
+-527,-478,-453,-454,-456,-431,-382,-333,-306,-299,-291,-269,-240,-221,-218,-221,-219,-210,-195,-179,-163,
+-153,-152,-156,-155,-148,-143,-146,-157,-165,-167,-172,-183,-197,-209,-218,-232,-250,-266,-276,-282,-291,
+-304,-319,-334,-353,-373,-384,-381,-372,-373,-394,-425,-457,-482,-506,-531,-559,-588,-616,-641,-663,-685,
+-710,-741,-774,-801,-822,-844,-869,-897,-923,-948,-973,-998,-1019,-1037,-1055,-1076,-1097,-1111,-1118,-1125,-1136,
+-1149,-1159,-1168,-1180,-1196,-1212,-1227,-1245,-1268,-1296,-1325,-1353,-1382,-1413,-1444,-1471,-1494,-1514,-1535,-1556,-1579,
+-1604,-1629,-1650,-1668,-1687,-1713,-1741,-1767,-1793,-1824,-1864,-1906,-1944,-1979,-2015,-2056,-2098,-2136,-2171,-2207,-2245,
+-2283,-2320,-2360,-2403,-2444,-2481,-2512,-2543,-2576,-2612,-2644,-2674,-2705,-2740,-2780,-2821,-2862,-2900,-2934,-2964,-2992,
+-3019,-3046,-3074,-3108,-3148,-3186,-3219,-3245,-3273,-3307,-3342,-3376,-3409,-3445,-3480,-3508,-3529,-3551,-3582,-3621,-3659,
+-3695,-3732,-3771,-3807,-3839,-3872,-3913,-3960,-4002,-4031,-4056,-4085,-4120,-4154,-4183,-4212,-4240,-4260,-4267,-4269,-4277,
+-4295,-4319,-4340,-4359,-4378,-4394,-4403,-4405,-4405,-4408,-4414,-4418,-4422,-4426,-4432,-4437,-4440,-4444,-4446,-4446,-4444,
+-4445,-4448,-4450,-4442,-4425,-4406,-4389,-4371,-4351,-4336,-4331,-4329,-4315,-4285,-4250,-4228,-4222,-4219,-4207,-4191,-4182,
+-4189,-4199,-4187,-4136,-4046,-3943,-3860,-3808,-3765,-3701,-3615,-3544,-3531,-3577,-3637,-3658,-3622,-3557,-3499,-3463,-3437,
+-3403,-3352,-3290,-3230,-3184,-3155,-3132,-3095,-3030,-2940,-2839,-2737,-2642,-2556,-2489,-2445,-2419,-2393,-2364,-2344,-2352,
+-2390,-2436,-2462,-2451,-2414,-2368,-2325,-2285,-2250,-2227,-2225,-2234,-2233,-2206,-2160,-2125,-2123,-2159,-2215,-2270,-2313,
+-2343,-2364,-2379,-2393,-2414,-2445,-2486,-2533,-2581,-2626,-2669,-2712,-2758,-2807,-2852,-2881,-2888,-2876,-2856,-2836,-2815,
+-2792,-2764,-2735,-2710,-2691,-2680,-2671,-2658,-2640,-2618,-2595,-2571,-2547,-2524,-2508,-2500,-2496,-2488,-2471,-2453,-2440,
+-2433,-2431,-2431,-2439,-2463,-2508,-2579,-2680,-2806,-2934,-3032,-3074,-3064,-3023,-2971,-2919,-2864,-2807,-2754,-2717,-2704,
+-2712,-2724,-2724,-2709,-2698,-2711,-2746,-2781,-2799,-2805,-2818,-2842,-2868,-2888,-2906,-2930,-2953,-2962,-2967,-2999,-3079,
+-3191,-3298,-3373,-3422,-3465,-3510,-3559,-3613,-3671,-3731,-3800,-3903,-4065,-4275,-4467,-4573,-4581,-4547,-4533,-4552,-4576,
+-4587,-4595,-4620,-4658,-4695,-4728,-4769,-4826,-4889,-4945,-4995,-5051,-5112,-5164,-5195,-5205,-5205,-5203,-5199,-5192,-5183,
+-5170,-5148,-5119,-5086,-5052,-5013,-4966,-4916,-4873,-4842,-4818,-4794,-4767,-4740,-4717,-4696,-4678,-4661,-4645,-4627,-4607,
+-4588,-4575,-4566,-4558,-4548,-4537,-4527,-4516,-4505,-4496,-4490,-4488,-4483,-4470,-4448,-4420,-4391,-4361,-4331,-4300,-4265,
+-4229,-4192,-4156,-4119,-4078,-4035,-3990,-3947,-3901,-3849,-3795,-3743,-3694,-3644,-3591,-3535,-3480,-3424,-3365,-3302,-3236,
+-3168,-3099,-3028,-2957,-2890,-2824,-2753,-2675,-2592,-2508,-2425,-2340,-2250,-2157,-2065,-1973,-1881,-1789,-1699,-1613,-1527,
+-1440,-1349,-1255,-1159,-1061,-960,-859,-760,-661,-562,-464,-368,-278,-189,-95,9,120,225,316,396,471,
+547,618,678,727,772,821,874,927,977,1025,1074,1122,1169,1214,1260,1308,1355,1398,1436,1473,1513,
+1554,1597,1642,1689,1739,1788,1833,1876,1921,1967,2010,2047,2084,2126,2174,2219,2257,2290,2324,2361,2399,
+2436,2475,2517,2558,2593,2625,2656,2688,2716,2735,2748,2757,2763,2760,2749,2732,2713,2698,2690,2695,2711,
+2730,2741,2744,2751,2769,2793,2810,2816,2814,2811,2809,2808,2809,2813,2817,2820,2826,2846,2879,2913,2938,
+2961,2989,3021,3049,3072,3100,3136,3167,3186,3207,3248,3298,3334,3361,3434,3601,3827,4004,4057,4026,4022,
+4104,4210,4225,4103,3904,3731,3636,3616,3660,3776,3963,4175,4329,4366,4295,4182,4102,4084,4107,4127,4116,
+4086,4065,4068,4084,4092,4087,4082,4094,4116,4125,4102,4049,3991,3950,3935,3934,3929,3914,3896,3885,3883,
+3883,3881,3879,3883,3895,3910,3927,3940,3943,3925,3885,3833,3781,3729,3672,3615,3571,3546,3524,3482,3413,
+3335,3268,3211,3149,3080,3017,2949,2916,2892,2861,2819,2774,2738,2713,2704,2717,2753,2796,2824,2828,2823,
+2822,2824,2814,2788,2758,2738,2733,2738,2743,2739,2725,2707,2704,2731,2782,2823,2830,2807,2788,2797,2829,
+2858,2868,2864,2857,2850,2841,2833,2833,2841,2848,2851,2855,2868,2894,2924,2951,2972,2988,3002,3013,3019,
+3026,3038,3062,3094,3120,3121,3092,3046,3003,2976,2960,2943,2921,2896,2871,2838,2789,2724,2653,2591,2545,
+2514,2492,2465,2426,2379,2333,2292,2257,2224,2197,2183,2185,2191,2194,2187,2173,2148,2110,2061,2013,1970,
+1923,1860,1785,1715,1668,1643,1624,1598,1566,1533,1504,1479,1462,1461,1475,1501,1526,1544,1554,1554,1545,
+1524,1494,1467,1455,1462,1478,1487,1487,1481,1468,1428,1345,1244,1171,1148,1133,1070,972,947,1106,1437,
+1796,2019,2058,1986,1900,1828,1747,1641,1534,1461,1422,1393,1354,1308,1257,1201,1136,1074,1027,993,956,
+906,844,782,722,660,592,522,455,389,318,240,162,90,28,-24,-74,-134,-209,-301,-400,-496,
+-584,-673,-767,-867,-965,-1058,-1148,-1243,-1347,-1456,-1563,-1661,-1750,-1836,-1921,-2008,-2100,-2197,-2292,-2366,-2398,
+-2375,-2305,-2205,-2086,-1953,-1817,-1704,-1643,-1642,-1673,-1694,-1687,-1664,-1643,-1630,-1612,-1580,-1543,-1511,-1483,-1436,
+-1359,-1274,-1231,-1261,-1349,-1439,-1485,-1495,-1512,-1576,-1680,-1788,-1861,-1890,-1883,-1858,-1833,-1823,-1837,-1878,-1945,
+-2048,-2201,-2398,-2597,-2751,-2841,-2888,-2921,-2951,-2975,-2995,-3022,-3060,-3095,-3116,-3125,-3126,-3106,-3055,-3011,-3057,
+-3267,-3615,-3983,-4240,-4337,-4317,-4253,-4193,-4157,-4162,-4220,-4323,-4443,-4556,-4661,-4765,-4857,-4913,-4921,-4899,-4867,
+-4835,-4799,-4762,-4740,-4736,-4739,-4729,-4703,-4675,-4655,-4643,-4647,-4678,-4737,-4804,-4856,-4895,-4948,-5031,-5129,-5217,
+-5293,-5377,-5478,-5586,-5685,-5779,-5877,-5967,-6033,-6077,-6124,-6174,-6185,-6115,-5982,-5852,-5756,-5643,-5432,-5112,-4780,
+-4552,-4462,-4442,-4398,-4282,-4114,-3943,-3795,-3660,-3505,-3306,-3078,-2869,-2728,-2670,-2673,-2706,-2751,-2806,-2867,-2926,
+-2973,-2999,-3007,-3012,-3038,-3086,-3132,-3137,-3097,-3047,-3025,-3032,-3039,-3028,-3009,-2995,-2978,-2953,-2941,-2975,-3045,
+-3099,-3096,-3047,-2986,-2937,-2935,-3065,-3422,-3982,-4540,-4843,-4797,-4550,-4329,-4239,-4208,-4126,-3980,-3847,-3784,-3772,
+-3748,-3682,-3590,-3503,-3431,-3363,-3288,-3209,-3148,-3122,-3120,-3110,-3081,-3067,-3123,-3255,-3403,-3494,-3525,-3557,-3648,
+-3790,-3928,-4025,-4078,-4103,-4098,-4057,-3986,-3899,-3802,-3689,-3562,-3435,-3325,-3230,-3144,-3064,-2996,-2936,-2869,-2790,
+-2708,-2631,-2556,-2475,-2391,-2316,-2255,-2201,-2146,-2097,-2060,-2033,-2002,-1961,-1914,-1859,-1786,-1690,-1578,-1462,-1344,
+-1217,-1088,-983,-919,-884,-841,-766,-668,-567,-474,-384,-292,-199,-107,-8,101,219,335,446,551,645,
+722,784,848,926,1015,1100,1170,1236,1309,1392,1479,1564,1653,1749,1848,1940,2021,2096,2167,2235,2300,
+2362,2426,2491,2563,2643,2733,2823,2899,2949,2975,2994,3022,3059,3089,3094,3071,3034,3001,2977,2942,2873,
+2757,2612,2481,2415,2444,2558,2716,2870,3002,3119,3232,3327,3384,3403,3413,3444,3493,3540,3573,3599,3628,
+3653,3667,3682,3721,3783,3844,3882,3906,3938,3978,4009,4022,4036,4072,4126,4176,4212,4244,4278,4305,4307,
+4271,4180,4031,3866,3796,3918,4191,4405,4327,3897,3300,2817,2616,2672,2846,3017,3130,3183,3192,3182,3173,
+3165,3140,3089,3027,2974,2929,2873,2799,2725,2668,2623,2564,2483,2397,2330,2287,2251,2208,2167,2139,2122,
+2101,2059,1998,1931,1867,1807,1747,1689,1642,1606,1566,1505,1422,1341,1284,1252,1223,1182,1132,1087,1052,
+1020,984,947,915,890,865,837,804,762,706,638,571,523,498,484,469,452,436,424,415,405,
+394,374,342,297,249,204,165,124,81,38,-1,-44,-90,-130,-153,-162,-174,-200,-240,-275,-298,
+-316,-340,-372,-402,-424,-440,-456,-478,-506,-537,-562,-574,-576,-581,-599,-629,-657,-673,-677,-678,-680,
+-684,-686,-685,-680,-670,-656,-648,-650,-656,-657,-651,-645,-645,-643,-629,-602,-574,-549,-525,-500,-480,
+-474,-482,-492,-501,-517,-544,-572,-587,-589,-589,-586,-562,-509,-437,-366,-289,-187,-69,6,-12,-112,
+-210,-234,-198,-171,-199,-254,-284,-281,-289,-351,-447,-523,-542,-518,-489,-477,-470,-446,-398,-344,-303,
+-283,-275,-261,-235,-205,-183,-173,-170,-168,-160,-144,-121,-94,-74,-68,-72,-75,-69,-60,-59,-66,
+-77,-85,-95,-110,-125,-135,-142,-153,-171,-191,-204,-210,-215,-223,-235,-251,-273,-297,-315,-321,-321,
+-326,-341,-363,-387,-410,-433,-458,-483,-510,-540,-570,-596,-617,-640,-669,-703,-734,-760,-784,-812,-842,
+-870,-897,-923,-947,-968,-983,-998,-1018,-1040,-1058,-1071,-1083,-1097,-1112,-1123,-1133,-1146,-1164,-1185,-1204,-1223,
+-1247,-1277,-1309,-1339,-1367,-1394,-1418,-1439,-1459,-1479,-1500,-1521,-1543,-1567,-1592,-1617,-1639,-1662,-1686,-1712,-1739,
+-1767,-1800,-1839,-1881,-1921,-1959,-1997,-2035,-2073,-2109,-2145,-2183,-2222,-2260,-2299,-2338,-2380,-2419,-2452,-2483,-2517,
+-2555,-2593,-2626,-2657,-2691,-2729,-2769,-2810,-2849,-2887,-2922,-2954,-2982,-3009,-3036,-3065,-3099,-3138,-3177,-3212,-3244,
+-3276,-3310,-3344,-3375,-3406,-3438,-3471,-3499,-3520,-3544,-3576,-3615,-3654,-3689,-3724,-3760,-3795,-3829,-3867,-3911,-3959,
+-3999,-4028,-4056,-4089,-4126,-4160,-4188,-4215,-4243,-4266,-4278,-4283,-4294,-4314,-4338,-4358,-4372,-4383,-4392,-4398,-4401,
+-4404,-4410,-4418,-4425,-4432,-4442,-4449,-4453,-4455,-4461,-4467,-4470,-4469,-4468,-4470,-4471,-4462,-4446,-4431,-4421,-4407,
+-4385,-4363,-4354,-4357,-4357,-4340,-4310,-4283,-4265,-4247,-4222,-4197,-4196,-4228,-4272,-4282,-4216,-4079,-3920,-3807,-3772,
+-3784,-3775,-3708,-3606,-3530,-3519,-3558,-3600,-3605,-3574,-3526,-3484,-3451,-3416,-3369,-3308,-3246,-3199,-3173,-3155,-3117,
+-3045,-2943,-2830,-2724,-2628,-2543,-2472,-2422,-2391,-2372,-2354,-2342,-2348,-2379,-2422,-2450,-2445,-2407,-2357,-2310,-2271,
+-2238,-2212,-2201,-2202,-2199,-2176,-2136,-2105,-2108,-2148,-2203,-2253,-2289,-2317,-2345,-2375,-2406,-2441,-2482,-2528,-2573,
+-2616,-2656,-2697,-2741,-2787,-2830,-2861,-2875,-2872,-2859,-2839,-2816,-2788,-2758,-2734,-2717,-2706,-2698,-2690,-2681,-2669,
+-2652,-2625,-2593,-2560,-2532,-2511,-2497,-2488,-2478,-2464,-2446,-2429,-2423,-2429,-2442,-2459,-2485,-2523,-2580,-2659,-2762,
+-2884,-3007,-3102,-3148,-3143,-3100,-3039,-2973,-2906,-2842,-2784,-2740,-2713,-2703,-2694,-2671,-2634,-2607,-2612,-2649,-2692,
+-2718,-2733,-2756,-2793,-2831,-2860,-2888,-2927,-2966,-2984,-2984,-3003,-3071,-3177,-3283,-3357,-3401,-3436,-3475,-3523,-3581,
+-3646,-3707,-3763,-3840,-3981,-4188,-4398,-4527,-4550,-4519,-4504,-4525,-4554,-4566,-4573,-4597,-4640,-4685,-4723,-4769,-4830,
+-4896,-4950,-4994,-5039,-5093,-5145,-5182,-5201,-5208,-5209,-5204,-5196,-5185,-5171,-5147,-5116,-5085,-5058,-5027,-4984,-4934,
+-4887,-4853,-4826,-4800,-4772,-4748,-4730,-4718,-4708,-4696,-4684,-4668,-4650,-4634,-4623,-4618,-4615,-4611,-4604,-4594,-4581,
+-4568,-4558,-4552,-4550,-4546,-4534,-4513,-4487,-4460,-4432,-4401,-4365,-4327,-4289,-4254,-4221,-4183,-4139,-4092,-4049,-4009,
+-3965,-3913,-3855,-3799,-3747,-3697,-3643,-3586,-3527,-3467,-3403,-3336,-3271,-3210,-3149,-3084,-3013,-2941,-2870,-2797,-2719,
+-2637,-2553,-2469,-2384,-2295,-2202,-2107,-2013,-1919,-1828,-1739,-1653,-1569,-1485,-1398,-1305,-1209,-1111,-1012,-914,-814,
+-712,-611,-513,-420,-329,-235,-134,-24,84,184,271,347,419,488,550,602,646,691,741,795,847,
+895,943,992,1042,1089,1134,1177,1222,1267,1310,1350,1391,1433,1476,1518,1559,1603,1653,1704,1751,1792,
+1834,1880,1925,1965,2002,2041,2089,2139,2182,2216,2246,2280,2319,2360,2401,2443,2486,2527,2564,2597,2628,
+2656,2678,2692,2699,2699,2691,2681,2674,2669,2665,2661,2661,2669,2683,2696,2707,2719,2734,2748,2757,2759,
+2760,2764,2766,2764,2762,2763,2766,2771,2780,2799,2828,2857,2880,2902,2930,2961,2987,3012,3044,3083,3118,
+3144,3176,3227,3284,3321,3351,3428,3590,3801,3975,4080,4181,4364,4617,4807,4799,4581,4270,4000,3837,3786,
+3837,3983,4182,4348,4398,4317,4172,4056,4021,4052,4097,4109,4077,4025,3989,3986,4002,4012,4003,3988,3986,
+3998,4008,3997,3965,3928,3902,3890,3882,3865,3838,3808,3785,3774,3769,3763,3760,3762,3776,3797,3819,3835,
+3836,3816,3779,3733,3685,3633,3571,3505,3449,3412,3385,3350,3298,3237,3180,3124,3063,3000,2949,2889,2868,
+2855,2836,2805,2766,2728,2696,2677,2682,2714,2759,2796,2813,2818,2824,2829,2822,2797,2767,2749,2750,2762,
+2771,2767,2748,2724,2716,2742,2796,2846,2864,2851,2832,2831,2847,2862,2863,2855,2847,2841,2835,2830,2830,
+2836,2842,2845,2848,2857,2874,2895,2917,2936,2953,2968,2981,2990,2998,3008,3026,3052,3075,3082,3065,3031,
+3000,2985,2982,2973,2950,2915,2877,2838,2793,2735,2668,2602,2549,2512,2487,2459,2423,2378,2333,2293,2258,
+2224,2194,2173,2162,2157,2154,2149,2137,2113,2070,2015,1958,1907,1854,1787,1711,1645,1604,1588,1579,1563,
+1540,1516,1496,1476,1458,1450,1459,1483,1508,1523,1526,1521,1511,1490,1459,1426,1411,1423,1446,1456,1448,
+1438,1437,1428,1379,1287,1191,1129,1091,1041,980,979,1118,1388,1681,1875,1934,1908,1862,1809,1732,1629,
+1533,1469,1432,1396,1351,1301,1254,1204,1145,1087,1041,1008,973,926,868,807,747,683,614,542,473,
+406,336,261,182,105,35,-23,-77,-137,-212,-303,-399,-491,-577,-667,-766,-870,-971,-1065,-1157,-1255,
+-1360,-1468,-1572,-1668,-1756,-1842,-1935,-2037,-2149,-2263,-2367,-2445,-2486,-2485,-2450,-2388,-2303,-2194,-2072,-1963,-1893,
+-1870,-1868,-1854,-1818,-1779,-1762,-1770,-1783,-1788,-1789,-1798,-1811,-1800,-1746,-1663,-1596,-1583,-1619,-1662,-1678,-1670,
+-1673,-1714,-1783,-1852,-1900,-1925,-1935,-1934,-1928,-1928,-1947,-1987,-2044,-2127,-2254,-2430,-2622,-2787,-2897,-2964,-3010,
+-3046,-3073,-3099,-3137,-3184,-3215,-3213,-3187,-3161,-3139,-3115,-3107,-3177,-3382,-3706,-4044,-4281,-4371,-4351,-4289,-4235,
+-4209,-4223,-4280,-4362,-4446,-4520,-4598,-4689,-4777,-4830,-4836,-4815,-4792,-4774,-4750,-4718,-4699,-4701,-4712,-4707,-4680,
+-4647,-4626,-4621,-4630,-4658,-4706,-4764,-4819,-4873,-4942,-5037,-5144,-5243,-5331,-5422,-5521,-5618,-5704,-5790,-5886,-5983,
+-6063,-6128,-6197,-6270,-6309,-6279,-6196,-6112,-6042,-5938,-5737,-5452,-5177,-5001,-4929,-4892,-4825,-4726,-4634,-4570,-4504,
+-4376,-4145,-3829,-3489,-3194,-2973,-2816,-2711,-2666,-2695,-2783,-2884,-2953,-2972,-2956,-2926,-2910,-2930,-2985,-3037,-3041,
+-2998,-2961,-2972,-3011,-3024,-3000,-2979,-2991,-3004,-2971,-2918,-2932,-3060,-3242,-3373,-3412,-3397,-3387,-3420,-3547,-3836,
+-4281,-4738,-4990,-4939,-4692,-4453,-4322,-4249,-4139,-3988,-3869,-3831,-3840,-3829,-3767,-3675,-3581,-3495,-3411,-3329,-3260,
+-3214,-3191,-3175,-3148,-3115,-3109,-3167,-3283,-3401,-3464,-3477,-3496,-3568,-3685,-3801,-3885,-3936,-3960,-3950,-3902,-3830,
+-3752,-3671,-3575,-3461,-3347,-3250,-3169,-3093,-3018,-2948,-2883,-2813,-2732,-2648,-2571,-2499,-2425,-2350,-2282,-2225,-2172,
+-2118,-2069,-2033,-2005,-1974,-1935,-1888,-1833,-1760,-1662,-1551,-1438,-1325,-1207,-1087,-987,-922,-879,-825,-743,-642,
+-545,-457,-369,-273,-171,-67,37,147,261,372,481,590,693,779,842,893,952,1029,1118,1205,1286,
+1362,1440,1519,1600,1684,1770,1859,1947,2034,2116,2194,2264,2330,2393,2460,2534,2618,2712,2806,2886,2943,
+2976,3000,3028,3063,3096,3113,3108,3085,3051,3010,2959,2889,2798,2687,2566,2461,2408,2442,2567,2749,2933,
+3088,3214,3324,3412,3458,3460,3445,3446,3476,3521,3571,3622,3668,3694,3698,3704,3740,3801,3858,3889,3910,
+3947,3999,4037,4050,4059,4091,4141,4188,4224,4259,4298,4325,4326,4298,4229,4106,3957,3891,4030,4362,4678,
+4697,4304,3656,3057,2731,2701,2838,3003,3118,3169,3180,3184,3204,3230,3229,3183,3108,3036,2983,2936,2880,
+2818,2758,2699,2628,2541,2451,2376,2317,2266,2219,2181,2159,2148,2129,2088,2025,1951,1878,1811,1754,1710,
+1687,1679,1663,1612,1521,1418,1337,1291,1262,1228,1183,1136,1097,1061,1021,978,940,908,880,852,822,
+785,737,678,618,571,539,515,493,474,457,440,420,401,386,373,349,309,259,212,173,137,
+97,55,15,-21,-56,-86,-108,-127,-150,-180,-214,-243,-265,-284,-304,-328,-355,-383,-409,-428,-439,
+-452,-479,-516,-550,-570,-579,-594,-618,-644,-661,-671,-682,-693,-701,-701,-695,-688,-678,-666,-658,-660,
+-671,-679,-678,-667,-655,-640,-620,-596,-573,-553,-530,-503,-477,-465,-468,-477,-488,-505,-528,-546,-550,
+-545,-544,-550,-548,-526,-493,-461,-411,-313,-170,-39,16,-5,-45,-59,-62,-100,-169,-207,-169,-93,
+-75,-165,-318,-445,-497,-496,-487,-483,-468,-426,-365,-309,-269,-246,-231,-217,-199,-174,-147,-125,-114,
+-110,-106,-94,-71,-43,-18,-6,-3,-2,5,13,15,8,-1,-11,-20,-32,-46,-57,-64,-72,
+-85,-101,-115,-128,-141,-154,-166,-181,-202,-228,-251,-265,-270,-273,-281,-295,-313,-333,-357,-379,-400,
+-423,-452,-487,-521,-549,-574,-602,-636,-669,-698,-725,-755,-787,-817,-843,-869,-894,-916,-931,-944,-962,
+-985,-1009,-1028,-1046,-1065,-1083,-1098,-1109,-1122,-1141,-1162,-1181,-1200,-1223,-1252,-1284,-1315,-1343,-1368,-1390,-1409,
+-1426,-1445,-1467,-1490,-1512,-1534,-1558,-1584,-1611,-1638,-1664,-1691,-1719,-1749,-1782,-1819,-1857,-1897,-1936,-1974,-2011,
+-2046,-2081,-2118,-2159,-2200,-2239,-2277,-2318,-2359,-2396,-2427,-2459,-2495,-2537,-2578,-2614,-2648,-2685,-2726,-2765,-2802,
+-2838,-2874,-2910,-2943,-2972,-3000,-3028,-3057,-3089,-3124,-3164,-3202,-3238,-3273,-3307,-3340,-3370,-3400,-3431,-3463,-3491,
+-3516,-3543,-3577,-3617,-3655,-3689,-3721,-3754,-3789,-3826,-3868,-3915,-3961,-3998,-4025,-4052,-4087,-4127,-4163,-4191,-4216,
+-4242,-4266,-4284,-4297,-4312,-4332,-4352,-4367,-4378,-4387,-4394,-4398,-4402,-4408,-4418,-4427,-4436,-4448,-4461,-4470,-4472,
+-4473,-4479,-4488,-4492,-4490,-4486,-4487,-4488,-4480,-4465,-4453,-4445,-4433,-4411,-4385,-4373,-4379,-4385,-4376,-4352,-4325,
+-4305,-4283,-4253,-4225,-4223,-4260,-4320,-4347,-4289,-4133,-3934,-3780,-3729,-3765,-3808,-3786,-3690,-3573,-3500,-3494,-3533,
+-3573,-3586,-3568,-3531,-3488,-3445,-3397,-3340,-3278,-3225,-3191,-3168,-3132,-3067,-2971,-2859,-2749,-2648,-2554,-2472,-2409,
+-2371,-2355,-2350,-2348,-2353,-2373,-2405,-2431,-2428,-2393,-2345,-2300,-2266,-2234,-2204,-2183,-2175,-2168,-2146,-2108,-2079,
+-2085,-2128,-2188,-2240,-2275,-2302,-2331,-2367,-2408,-2454,-2504,-2551,-2593,-2630,-2668,-2710,-2756,-2800,-2835,-2855,-2859,
+-2850,-2831,-2808,-2779,-2749,-2726,-2719,-2728,-2739,-2739,-2725,-2704,-2682,-2657,-2625,-2589,-2558,-2538,-2527,-2519,-2509,
+-2497,-2483,-2468,-2459,-2459,-2472,-2494,-2519,-2551,-2593,-2649,-2719,-2805,-2902,-3002,-3089,-3148,-3168,-3151,-3107,-3048,
+-2983,-2918,-2853,-2789,-2735,-2696,-2665,-2628,-2578,-2534,-2521,-2544,-2584,-2618,-2646,-2684,-2734,-2783,-2822,-2863,-2916,
+-2966,-2988,-2983,-2991,-3051,-3155,-3261,-3333,-3373,-3401,-3436,-3485,-3551,-3627,-3691,-3733,-3783,-3903,-4111,-4347,-4509,
+-4551,-4519,-4496,-4515,-4547,-4562,-4564,-4581,-4621,-4670,-4716,-4766,-4828,-4895,-4951,-4994,-5035,-5081,-5126,-5161,-5186,
+-5201,-5206,-5201,-5189,-5177,-5165,-5147,-5119,-5090,-5063,-5033,-4994,-4945,-4898,-4862,-4833,-4804,-4775,-4753,-4741,-4736,
+-4731,-4723,-4713,-4702,-4690,-4678,-4668,-4662,-4660,-4659,-4658,-4654,-4646,-4634,-4622,-4613,-4607,-4600,-4588,-4570,-4549,
+-4525,-4498,-4467,-4433,-4395,-4359,-4324,-4289,-4250,-4203,-4153,-4107,-4064,-4021,-3972,-3918,-3863,-3811,-3759,-3701,-3640,
+-3578,-3514,-3447,-3379,-3314,-3255,-3197,-3136,-3068,-2993,-2917,-2841,-2763,-2681,-2597,-2511,-2425,-2338,-2246,-2151,-2055,
+-1961,-1872,-1785,-1701,-1617,-1531,-1442,-1348,-1250,-1152,-1058,-963,-864,-761,-659,-565,-476,-383,-281,-170,-59,
+45,139,223,300,369,429,479,522,563,610,663,719,772,821,870,920,968,1013,1054,1093,1135,
+1180,1223,1266,1309,1355,1401,1443,1482,1522,1570,1623,1673,1714,1752,1796,1845,1892,1932,1969,2013,2061,
+2105,2138,2165,2196,2234,2276,2318,2360,2405,2450,2491,2526,2556,2584,2612,2634,2644,2642,2630,2618,2616,
+2620,2625,2624,2622,2629,2646,2667,2685,2698,2707,2711,2711,2710,2712,2718,2722,2720,2717,2716,2720,2724,
+2732,2748,2771,2795,2818,2844,2876,2910,2937,2963,2996,3037,3077,3113,3154,3209,3266,3308,3347,3428,3570,
+3740,3883,4009,4196,4494,4832,5047,5025,4800,4509,4267,4108,4028,4033,4131,4275,4369,4342,4208,4058,3975,
+3974,4016,4047,4040,4000,3952,3921,3921,3939,3953,3947,3930,3918,3920,3929,3932,3921,3900,3875,3848,3820,
+3790,3759,3729,3706,3692,3685,3677,3670,3666,3673,3691,3712,3726,3727,3712,3684,3647,3602,3548,3481,3407,
+3338,3285,3247,3213,3173,3127,3080,3031,2978,2927,2889,2832,2822,2817,2807,2784,2751,2715,2680,2652,2642,
+2659,2698,2741,2773,2792,2806,2816,2814,2798,2777,2768,2778,2798,2810,2804,2780,2751,2736,2752,2798,2852,
+2888,2895,2884,2874,2872,2874,2870,2862,2852,2841,2831,2824,2824,2829,2834,2839,2846,2857,2870,2882,2891,
+2899,2909,2921,2932,2942,2950,2959,2973,2995,3021,3039,3039,3024,3010,3010,3020,3021,2997,2951,2899,2853,
+2808,2756,2692,2626,2568,2524,2488,2453,2414,2372,2332,2295,2257,2219,2182,2154,2136,2126,2121,2117,2106,
+2079,2031,1970,1909,1851,1791,1720,1644,1581,1546,1535,1532,1524,1511,1500,1491,1480,1464,1451,1452,1469,
+1491,1504,1503,1493,1478,1456,1423,1389,1373,1385,1411,1425,1418,1408,1414,1426,1410,1347,1257,1178,1122,
+1078,1045,1058,1156,1332,1522,1664,1743,1786,1809,1800,1743,1653,1566,1504,1456,1402,1339,1280,1235,1195,
+1151,1104,1064,1032,999,955,899,839,776,710,641,570,500,430,360,286,207,128,51,-17,-82,
+-148,-224,-309,-395,-479,-564,-657,-761,-869,-973,-1073,-1172,-1272,-1375,-1478,-1579,-1676,-1770,-1862,-1960,-2070,
+-2192,-2313,-2419,-2498,-2545,-2566,-2565,-2541,-2487,-2401,-2292,-2186,-2109,-2064,-2032,-1993,-1940,-1894,-1873,-1881,-1905,
+-1936,-1971,-2015,-2057,-2079,-2065,-2020,-1965,-1915,-1873,-1833,-1798,-1786,-1810,-1866,-1927,-1972,-1999,-2018,-2036,-2046,
+-2044,-2042,-2058,-2099,-2159,-2235,-2335,-2468,-2622,-2772,-2896,-2992,-3065,-3115,-3143,-3167,-3203,-3243,-3256,-3224,-3168,
+-3130,-3133,-3164,-3217,-3320,-3514,-3791,-4080,-4293,-4386,-4381,-4328,-4273,-4241,-4249,-4296,-4363,-4425,-4479,-4542,-4625,
+-4708,-4756,-4756,-4731,-4709,-4696,-4681,-4665,-4662,-4676,-4693,-4691,-4665,-4637,-4625,-4628,-4637,-4652,-4679,-4723,-4778,
+-4845,-4933,-5042,-5158,-5265,-5359,-5451,-5543,-5628,-5704,-5785,-5882,-5984,-6069,-6136,-6205,-6284,-6347,-6364,-6337,-6295,
+-6247,-6163,-6013,-5819,-5651,-5555,-5507,-5453,-5367,-5282,-5244,-5251,-5235,-5115,-4862,-4521,-4172,-3866,-3591,-3313,-3047,
+-2863,-2819,-2894,-2996,-3041,-3011,-2940,-2867,-2821,-2820,-2866,-2923,-2951,-2955,-2986,-3071,-3159,-3175,-3123,-3084,-3104,
+-3118,-3040,-2907,-2883,-3081,-3434,-3763,-3958,-4053,-4136,-4247,-4384,-4569,-4823,-5088,-5225,-5141,-4895,-4636,-4458,-4339,
+-4219,-4096,-4017,-3998,-3996,-3958,-3876,-3776,-3680,-3585,-3490,-3407,-3350,-3316,-3290,-3254,-3206,-3159,-3146,-3195,-3295,
+-3397,-3454,-3461,-3466,-3509,-3587,-3668,-3726,-3759,-3770,-3752,-3703,-3638,-3577,-3523,-3459,-3378,-3290,-3207,-3131,-3057,
+-2983,-2912,-2844,-2769,-2685,-2599,-2524,-2458,-2392,-2321,-2251,-2186,-2128,-2076,-2034,-2003,-1978,-1949,-1912,-1867,-1813,
+-1738,-1640,-1530,-1423,-1322,-1216,-1107,-1009,-933,-873,-803,-713,-613,-521,-436,-345,-239,-121,-3,110,219,
+321,418,517,627,744,850,923,966,1003,1062,1150,1252,1346,1424,1493,1562,1636,1712,1790,1872,1960,
+2052,2142,2221,2291,2356,2424,2498,2583,2678,2777,2865,2928,2964,2989,3020,3061,3100,3123,3128,3121,3109,
+3082,3024,2927,2806,2683,2577,2489,2424,2400,2451,2590,2789,2990,3149,3266,3359,3436,3481,3483,3462,3449,
+3464,3505,3563,3627,3683,3713,3719,3725,3758,3814,3864,3892,3917,3962,4019,4057,4066,4072,4100,4148,4194,
+4235,4279,4322,4347,4343,4317,4266,4163,4020,3945,4084,4454,4847,4948,4590,3907,3223,2812,2728,2850,3019,
+3137,3192,3213,3239,3288,3338,3349,3298,3207,3120,3059,3017,2969,2905,2833,2759,2686,2609,2529,2448,2370,
+2302,2250,2218,2196,2175,2143,2098,2041,1974,1904,1836,1779,1743,1736,1747,1750,1712,1621,1506,1409,1351,
+1320,1288,1243,1192,1146,1104,1060,1014,970,934,903,874,843,807,764,715,665,621,582,546,514,
+489,469,446,418,390,373,365,350,315,265,215,176,144,111,74,38,8,-15,-37,-62,-94,
+-130,-162,-186,-206,-227,-252,-274,-292,-312,-344,-381,-404,-404,-399,-414,-459,-513,-553,-571,-583,-602,
+-625,-646,-663,-680,-697,-703,-698,-689,-685,-684,-681,-676,-678,-688,-697,-694,-678,-656,-635,-614,-593,
+-574,-558,-539,-516,-493,-477,-472,-472,-474,-481,-493,-502,-501,-497,-501,-515,-523,-517,-507,-505,-492,
+-428,-303,-161,-63,-31,-37,-58,-101,-178,-243,-222,-92,61,110,3,-190,-356,-439,-461,-468,-470,
+-449,-400,-340,-289,-250,-218,-195,-182,-170,-147,-110,-74,-55,-53,-55,-46,-26,-1,19,36,50,
+63,76,84,84,76,66,58,52,45,34,22,10,0,-10,-22,-36,-53,-73,-92,-106,-117,
+-131,-152,-175,-190,-195,-196,-200,-212,-229,-250,-274,-298,-319,-340,-368,-405,-444,-480,-511,-542,-576,
+-609,-637,-664,-695,-728,-758,-785,-811,-838,-863,-883,-900,-920,-946,-972,-994,-1013,-1032,-1051,-1069,-1083,
+-1097,-1114,-1134,-1155,-1176,-1199,-1226,-1255,-1283,-1310,-1337,-1361,-1382,-1400,-1419,-1441,-1466,-1490,-1512,-1535,-1561,
+-1590,-1619,-1648,-1677,-1707,-1740,-1772,-1804,-1837,-1872,-1908,-1945,-1981,-2017,-2054,-2094,-2136,-2177,-2215,-2253,-2293,
+-2335,-2373,-2406,-2440,-2478,-2522,-2564,-2603,-2641,-2683,-2725,-2764,-2798,-2831,-2866,-2902,-2934,-2964,-2993,-3023,-3052,
+-3081,-3113,-3150,-3190,-3228,-3262,-3294,-3327,-3359,-3391,-3422,-3454,-3486,-3517,-3549,-3586,-3626,-3663,-3696,-3727,-3758,
+-3792,-3829,-3871,-3917,-3962,-3997,-4023,-4049,-4084,-4124,-4161,-4190,-4213,-4237,-4260,-4283,-4305,-4327,-4347,-4362,-4373,
+-4383,-4394,-4403,-4410,-4416,-4425,-4436,-4446,-4455,-4468,-4482,-4492,-4495,-4496,-4502,-4511,-4514,-4507,-4499,-4498,-4500,
+-4495,-4482,-4469,-4462,-4452,-4433,-4411,-4398,-4400,-4403,-4393,-4370,-4347,-4329,-4312,-4288,-4261,-4250,-4272,-4323,-4362,
+-4336,-4213,-4020,-3836,-3738,-3741,-3789,-3804,-3748,-3644,-3548,-3501,-3511,-3553,-3594,-3609,-3591,-3550,-3499,-3445,-3386,
+-3322,-3260,-3212,-3178,-3146,-3095,-3016,-2914,-2802,-2691,-2588,-2494,-2418,-2368,-2350,-2352,-2360,-2364,-2371,-2385,-2400,
+-2398,-2372,-2331,-2290,-2255,-2221,-2188,-2165,-2156,-2146,-2120,-2079,-2047,-2053,-2101,-2169,-2230,-2271,-2296,-2318,-2347,
+-2387,-2440,-2498,-2551,-2594,-2630,-2667,-2710,-2755,-2792,-2819,-2831,-2829,-2814,-2791,-2764,-2740,-2724,-2724,-2744,-2776,
+-2802,-2805,-2784,-2750,-2715,-2679,-2642,-2608,-2585,-2576,-2574,-2571,-2563,-2554,-2546,-2539,-2532,-2532,-2540,-2557,-2577,
+-2602,-2636,-2680,-2736,-2798,-2867,-2942,-3019,-3088,-3137,-3156,-3149,-3122,-3082,-3028,-2954,-2862,-2767,-2689,-2635,-2589,
+-2538,-2487,-2458,-2465,-2499,-2539,-2579,-2625,-2677,-2724,-2766,-2813,-2872,-2928,-2953,-2952,-2962,-3023,-3127,-3231,-3300,
+-3334,-3357,-3391,-3450,-3537,-3636,-3711,-3740,-3760,-3849,-4047,-4298,-4485,-4542,-4511,-4482,-4501,-4541,-4559,-4553,-4557,
+-4590,-4645,-4703,-4762,-4824,-4886,-4941,-4987,-5033,-5080,-5121,-5151,-5175,-5193,-5201,-5195,-5182,-5171,-5165,-5154,-5132,
+-5101,-5069,-5034,-4994,-4948,-4906,-4873,-4846,-4819,-4792,-4772,-4762,-4756,-4750,-4741,-4734,-4730,-4727,-4723,-4716,-4709,
+-4705,-4705,-4708,-4710,-4707,-4697,-4686,-4675,-4664,-4653,-4640,-4625,-4609,-4588,-4563,-4533,-4502,-4468,-4431,-4393,-4353,
+-4311,-4265,-4216,-4167,-4120,-4073,-4025,-3975,-3925,-3872,-3816,-3754,-3691,-3628,-3565,-3500,-3434,-3367,-3304,-3243,-3181,
+-3113,-3040,-2962,-2882,-2802,-2720,-2636,-2550,-2463,-2376,-2287,-2194,-2100,-2008,-1921,-1837,-1752,-1666,-1576,-1482,-1384,
+-1285,-1189,-1099,-1008,-910,-806,-706,-617,-531,-436,-326,-208,-97,0,87,169,246,311,361,399,435,
+478,532,590,646,699,750,800,849,895,936,974,1012,1053,1098,1143,1187,1231,1277,1325,1369,1409,
+1447,1492,1546,1598,1641,1676,1716,1765,1817,1862,1899,1937,1979,2020,2052,2079,2109,2148,2192,2234,2276,
+2321,2369,2413,2448,2477,2506,2536,2563,2580,2581,2570,2559,2555,2561,2569,2574,2579,2593,2617,2643,2663,
+2675,2681,2683,2681,2678,2677,2679,2681,2679,2677,2676,2678,2680,2684,2695,2715,2739,2765,2796,2833,2871,
+2902,2929,2962,3004,3049,3093,3141,3197,3253,3301,3356,3448,3580,3711,3805,3889,4038,4281,4541,4690,4670,
+4545,4421,4337,4259,4164,4088,4082,4132,4165,4122,4025,3944,3923,3949,3978,3985,3970,3945,3920,3902,3900,
+3913,3927,3928,3915,3899,3890,3890,3894,3894,3884,3859,3819,3775,3734,3700,3670,3645,3626,3615,3607,3596,
+3587,3585,3592,3602,3607,3604,3594,3579,3554,3519,3470,3408,3335,3259,3193,3143,3103,3065,3023,2978,2933,
+2891,2856,2832,2770,2769,2772,2767,2745,2713,2678,2646,2617,2599,2600,2628,2674,2718,2750,2773,2791,2803,
+2805,2801,2804,2822,2845,2857,2847,2821,2792,2772,2774,2801,2847,2895,2923,2926,2913,2898,2892,2892,2889,
+2875,2853,2831,2819,2819,2824,2830,2837,2848,2864,2876,2877,2868,2859,2857,2861,2868,2874,2881,2892,2909,
+2937,2971,3003,3021,3025,3026,3039,3061,3072,3053,3004,2943,2886,2833,2777,2713,2648,2592,2543,2497,2451,
+2406,2367,2334,2300,2259,2215,2172,2138,2114,2100,2095,2090,2076,2043,1992,1932,1870,1810,1743,1667,1590,
+1529,1497,1488,1487,1484,1478,1477,1479,1476,1464,1447,1438,1445,1462,1476,1478,1468,1448,1421,1388,1356,
+1339,1345,1364,1379,1381,1382,1395,1415,1419,1387,1322,1246,1181,1136,1119,1138,1198,1284,1375,1464,1561,
+1668,1759,1794,1759,1681,1601,1536,1473,1400,1322,1257,1215,1185,1153,1117,1084,1056,1025,983,928,864,
+798,732,668,602,533,461,386,310,233,153,73,-5,-81,-155,-228,-302,-378,-457,-546,-646,-753,
+-862,-968,-1074,-1182,-1288,-1389,-1486,-1583,-1685,-1790,-1895,-2003,-2118,-2242,-2361,-2462,-2535,-2585,-2621,-2645,-2651,
+-2625,-2562,-2471,-2374,-2292,-2230,-2178,-2124,-2067,-2020,-1993,-1991,-2013,-2060,-2125,-2194,-2254,-2296,-2326,-2341,-2325,
+-2254,-2129,-1988,-1888,-1870,-1926,-2015,-2088,-2126,-2141,-2158,-2182,-2202,-2203,-2191,-2190,-2215,-2269,-2342,-2428,-2527,
+-2638,-2759,-2882,-3000,-3096,-3157,-3182,-3191,-3206,-3222,-3212,-3162,-3101,-3080,-3124,-3216,-3326,-3456,-3631,-3858,-4099,
+-4295,-4401,-4419,-4377,-4313,-4265,-4258,-4294,-4352,-4408,-4456,-4512,-4584,-4656,-4699,-4696,-4663,-4625,-4598,-4586,-4591,
+-4617,-4653,-4680,-4683,-4669,-4660,-4665,-4674,-4674,-4670,-4678,-4710,-4765,-4842,-4941,-5059,-5180,-5287,-5379,-5464,-5548,
+-5628,-5707,-5795,-5900,-6010,-6100,-6169,-6236,-6316,-6397,-6453,-6474,-6472,-6453,-6406,-6325,-6232,-6163,-6130,-6101,-6042,
+-5953,-5875,-5842,-5844,-5820,-5705,-5486,-5210,-4939,-4681,-4388,-4015,-3611,-3296,-3164,-3188,-3248,-3246,-3168,-3058,-2948,
+-2853,-2789,-2780,-2818,-2880,-2965,-3104,-3287,-3429,-3440,-3344,-3258,-3247,-3225,-3081,-2869,-2815,-3087,-3608,-4127,-4475,
+-4681,-4862,-5053,-5209,-5306,-5384,-5463,-5481,-5361,-5111,-4829,-4604,-4452,-4347,-4279,-4251,-4241,-4202,-4112,-3996,-3886,
+-3788,-3685,-3580,-3496,-3448,-3422,-3390,-3340,-3274,-3215,-3188,-3218,-3304,-3405,-3470,-3481,-3468,-3470,-3500,-3537,-3561,
+-3568,-3561,-3538,-3496,-3445,-3403,-3374,-3345,-3303,-3244,-3176,-3103,-3029,-2956,-2886,-2813,-2732,-2643,-2560,-2492,-2435,
+-2374,-2303,-2225,-2152,-2089,-2039,-2003,-1975,-1948,-1916,-1879,-1838,-1786,-1713,-1616,-1510,-1408,-1314,-1216,-1113,-1014,
+-929,-854,-774,-681,-585,-495,-408,-311,-194,-65,64,183,288,378,459,547,661,797,930,1023,1065,
+1083,1120,1200,1307,1409,1486,1546,1605,1673,1746,1821,1901,1989,2083,2170,2247,2317,2389,2466,2549,2637,
+2731,2824,2900,2948,2974,3000,3042,3093,3135,3152,3151,3145,3132,3092,3001,2861,2704,2570,2480,2428,2404,
+2414,2489,2642,2845,3039,3182,3274,3342,3404,3449,3463,3454,3445,3455,3487,3537,3599,3657,3697,3715,3731,
+3764,3814,3860,3894,3929,3980,4035,4067,4075,4083,4110,4153,4195,4240,4293,4343,4363,4353,4334,4303,4218,
+4070,3967,4080,4459,4901,5064,4740,4040,3308,2854,2760,2901,3094,3229,3292,3324,3362,3416,3457,3449,3379,
+3274,3180,3119,3079,3033,2966,2883,2805,2742,2688,2626,2543,2449,2367,2316,2287,2258,2214,2163,2118,2084,
+2047,1996,1931,1862,1808,1780,1775,1772,1738,1660,1559,1472,1421,1393,1360,1310,1252,1199,1153,1107,1058,
+1010,967,930,896,861,825,786,746,706,670,632,592,551,515,484,452,417,387,372,367,356,
+325,277,227,187,157,130,103,75,53,34,14,-15,-56,-99,-130,-146,-159,-184,-219,-249,-266,
+-280,-309,-349,-378,-377,-365,-374,-420,-482,-529,-550,-560,-577,-603,-628,-649,-668,-684,-687,-679,-670,
+-671,-680,-687,-686,-684,-689,-695,-693,-677,-654,-633,-613,-592,-571,-555,-541,-526,-510,-496,-484,-473,
+-461,-453,-450,-449,-447,-447,-457,-474,-486,-485,-482,-491,-500,-475,-393,-281,-189,-148,-148,-175,-226,
+-290,-318,-246,-77,93,145,40,-146,-307,-393,-425,-439,-440,-417,-372,-327,-290,-256,-219,-190,-175,
+-163,-131,-80,-35,-16,-20,-22,-6,20,44,62,80,101,121,136,141,140,135,128,123,119,
+115,109,98,83,67,50,35,21,5,-14,-33,-44,-49,-55,-68,-85,-98,-102,-103,-108,-122,
+-141,-164,-189,-217,-244,-271,-300,-334,-371,-408,-443,-479,-515,-548,-577,-604,-635,-669,-701,-728,-752,
+-780,-809,-836,-859,-884,-913,-942,-965,-982,-998,-1016,-1035,-1052,-1067,-1084,-1105,-1129,-1155,-1181,-1207,-1231,
+-1254,-1277,-1304,-1333,-1360,-1381,-1401,-1423,-1450,-1477,-1502,-1527,-1554,-1583,-1612,-1640,-1669,-1701,-1734,-1765,-1793,
+-1819,-1847,-1878,-1912,-1948,-1987,-2027,-2071,-2115,-2155,-2193,-2229,-2268,-2309,-2348,-2386,-2423,-2464,-2508,-2552,-2592,
+-2633,-2675,-2718,-2757,-2791,-2825,-2861,-2896,-2928,-2958,-2988,-3020,-3050,-3078,-3107,-3142,-3180,-3217,-3248,-3279,-3312,
+-3346,-3380,-3412,-3445,-3481,-3519,-3558,-3598,-3636,-3673,-3706,-3738,-3770,-3803,-3836,-3874,-3916,-3959,-3995,-4023,-4050,
+-4083,-4121,-4157,-4185,-4207,-4229,-4254,-4281,-4310,-4337,-4358,-4371,-4380,-4390,-4404,-4417,-4428,-4438,-4451,-4463,-4472,
+-4479,-4490,-4503,-4514,-4518,-4521,-4528,-4537,-4537,-4527,-4514,-4509,-4510,-4507,-4497,-4485,-4477,-4469,-4456,-4441,-4430,
+-4425,-4418,-4402,-4380,-4359,-4344,-4332,-4316,-4294,-4275,-4273,-4300,-4341,-4356,-4296,-4153,-3972,-3824,-3753,-3746,-3758,
+-3747,-3701,-3636,-3578,-3548,-3555,-3588,-3622,-3633,-3611,-3563,-3504,-3440,-3371,-3302,-3242,-3197,-3164,-3123,-3056,-2959,
+-2844,-2728,-2623,-2527,-2443,-2382,-2355,-2359,-2373,-2378,-2373,-2367,-2365,-2360,-2343,-2311,-2271,-2230,-2192,-2163,-2147,
+-2142,-2131,-2098,-2050,-2017,-2025,-2076,-2149,-2217,-2263,-2286,-2296,-2309,-2342,-2399,-2470,-2534,-2583,-2623,-2664,-2708,
+-2747,-2773,-2785,-2785,-2776,-2757,-2733,-2716,-2714,-2732,-2768,-2813,-2857,-2884,-2887,-2867,-2832,-2793,-2750,-2708,-2672,
+-2652,-2646,-2646,-2644,-2640,-2641,-2643,-2641,-2630,-2616,-2608,-2609,-2615,-2624,-2641,-2668,-2705,-2746,-2793,-2848,-2914,
+-2984,-3045,-3090,-3117,-3132,-3133,-3107,-3043,-2937,-2810,-2694,-2611,-2554,-2506,-2461,-2432,-2436,-2469,-2514,-2557,-2597,
+-2635,-2670,-2704,-2748,-2805,-2863,-2898,-2912,-2937,-3002,-3100,-3193,-3251,-3274,-3288,-3322,-3398,-3521,-3661,-3762,-3789,
+-3781,-3834,-4007,-4251,-4443,-4506,-4473,-4441,-4460,-4506,-4529,-4522,-4521,-4553,-4615,-4689,-4759,-4823,-4879,-4927,-4973,
+-5026,-5080,-5124,-5153,-5173,-5189,-5199,-5196,-5186,-5178,-5175,-5167,-5146,-5114,-5076,-5038,-4997,-4954,-4916,-4888,-4865,
+-4844,-4824,-4809,-4798,-4788,-4776,-4765,-4759,-4760,-4764,-4768,-4769,-4766,-4763,-4764,-4767,-4768,-4765,-4757,-4748,-4738,
+-4728,-4713,-4697,-4681,-4666,-4647,-4623,-4594,-4563,-4531,-4493,-4450,-4406,-4364,-4322,-4279,-4231,-4181,-4130,-4080,-4032,
+-3981,-3926,-3865,-3803,-3740,-3679,-3618,-3555,-3489,-3421,-3353,-3286,-3219,-3153,-3082,-3004,-2920,-2836,-2754,-2672,-2587,
+-2500,-2413,-2327,-2238,-2146,-2056,-1969,-1885,-1798,-1708,-1614,-1518,-1420,-1322,-1230,-1142,-1052,-953,-849,-753,-668,
+-584,-485,-368,-247,-139,-49,31,110,183,241,280,309,345,395,458,521,577,628,678,727,775,
+818,858,896,936,978,1023,1069,1114,1157,1200,1247,1294,1336,1376,1418,1468,1521,1566,1602,1639,1684,
+1735,1780,1817,1852,1890,1929,1961,1990,2023,2065,2112,2157,2199,2242,2288,2331,2368,2397,2425,2453,2481,
+2501,2510,2508,2500,2497,2503,2514,2526,2540,2560,2587,2614,2633,2644,2653,2660,2663,2660,2655,2651,2647,
+2644,2640,2638,2636,2635,2636,2646,2666,2693,2723,2759,2801,2844,2881,2912,2946,2987,3033,3081,3133,3191,
+3247,3299,3364,3463,3589,3697,3750,3765,3802,3886,3975,4010,3996,3999,4066,4149,4157,4060,3924,3837,3824,
+3838,3836,3825,3839,3883,3927,3945,3942,3936,3935,3930,3917,3908,3913,3926,3936,3934,3921,3904,3888,3879,
+3878,3876,3859,3820,3769,3719,3675,3635,3596,3566,3548,3538,3528,3516,3508,3504,3499,3489,3477,3470,3467,
+3459,3438,3401,3350,3287,3214,3141,3080,3032,2989,2941,2889,2841,2805,2781,2770,2701,2708,2718,2715,2690,
+2649,2612,2588,2572,2558,2554,2575,2619,2669,2708,2736,2764,2792,2815,2831,2847,2870,2894,2903,2891,2869,
+2848,2831,2821,2823,2849,2893,2933,2948,2936,2916,2909,2915,2918,2903,2873,2841,2825,2825,2830,2835,2838,
+2847,2861,2867,2857,2832,2807,2795,2795,2800,2804,2810,2823,2849,2886,2929,2970,3000,3017,3032,3055,3086,
+3107,3099,3058,2996,2928,2858,2787,2718,2657,2609,2563,2512,2456,2406,2368,2338,2306,2265,2219,2174,2136,
+2105,2085,2073,2063,2043,2005,1952,1893,1835,1774,1704,1626,1552,1496,1468,1460,1461,1460,1457,1458,1463,
+1465,1456,1437,1420,1416,1426,1442,1451,1444,1422,1390,1356,1327,1309,1304,1309,1321,1336,1354,1377,1399,
+1413,1406,1373,1314,1243,1187,1167,1184,1220,1251,1281,1337,1443,1585,1707,1761,1737,1671,1601,1539,1471,
+1391,1310,1248,1210,1185,1158,1127,1097,1072,1045,1006,951,884,815,752,695,637,571,496,415,335,
+257,178,95,8,-75,-152,-219,-282,-349,-429,-525,-632,-743,-851,-957,-1068,-1184,-1298,-1404,-1500,-1597,
+-1702,-1816,-1934,-2053,-2174,-2296,-2409,-2501,-2569,-2618,-2660,-2697,-2723,-2724,-2693,-2632,-2556,-2479,-2407,-2337,-2269,
+-2209,-2162,-2133,-2125,-2148,-2210,-2304,-2401,-2475,-2528,-2582,-2636,-2646,-2558,-2364,-2135,-1973,-1936,-2005,-2110,-2190,
+-2229,-2246,-2270,-2307,-2345,-2362,-2352,-2331,-2328,-2361,-2428,-2512,-2597,-2680,-2770,-2874,-2988,-3090,-3154,-3175,-3171,
+-3164,-3157,-3135,-3095,-3063,-3080,-3163,-3288,-3424,-3561,-3718,-3910,-4120,-4306,-4426,-4463,-4426,-4354,-4289,-4268,-4297,
+-4355,-4413,-4462,-4508,-4560,-4613,-4648,-4648,-4611,-4553,-4501,-4480,-4506,-4565,-4628,-4668,-4682,-4689,-4705,-4724,-4728,
+-4710,-4688,-4688,-4724,-4789,-4875,-4980,-5098,-5214,-5312,-5391,-5464,-5543,-5629,-5720,-5819,-5928,-6038,-6130,-6202,-6269,
+-6347,-6431,-6506,-6556,-6585,-6596,-6590,-6570,-6548,-6535,-6527,-6506,-6459,-6394,-6332,-6287,-6255,-6205,-6108,-5959,-5781,
+-5600,-5399,-5116,-4720,-4273,-3912,-3731,-3696,-3692,-3638,-3536,-3424,-3303,-3157,-3005,-2904,-2890,-2960,-3103,-3317,-3564,
+-3734,-3732,-3592,-3457,-3405,-3354,-3185,-2953,-2903,-3221,-3819,-4419,-4826,-5073,-5293,-5524,-5689,-5733,-5704,-5669,-5620,
+-5488,-5248,-4958,-4704,-4535,-4452,-4435,-4446,-4433,-4354,-4221,-4085,-3977,-3883,-3774,-3658,-3569,-3524,-3500,-3466,-3411,
+-3347,-3289,-3256,-3270,-3339,-3438,-3509,-3519,-3481,-3441,-3424,-3422,-3413,-3393,-3370,-3346,-3318,-3286,-3260,-3248,-3243,
+-3228,-3193,-3137,-3069,-2997,-2927,-2857,-2780,-2693,-2605,-2528,-2471,-2422,-2365,-2291,-2207,-2128,-2065,-2019,-1983,-1950,
+-1914,-1875,-1837,-1797,-1747,-1676,-1584,-1484,-1385,-1289,-1190,-1086,-986,-898,-819,-738,-650,-558,-468,-375,-272,
+-153,-20,112,233,335,417,492,580,702,854,1003,1105,1145,1150,1171,1240,1347,1452,1530,1586,1640,
+1705,1778,1853,1934,2022,2111,2192,2267,2342,2427,2516,2604,2689,2775,2858,2926,2968,2993,3019,3062,3114,
+3156,3177,3182,3173,3138,3058,2927,2763,2608,2495,2433,2409,2411,2450,2545,2704,2897,3071,3192,3265,3317,
+3367,3411,3437,3445,3449,3460,3482,3518,3568,3627,3680,3717,3744,3776,3817,3859,3899,3944,3996,4043,4073,
+4088,4106,4135,4167,4199,4242,4302,4354,4370,4359,4353,4348,4280,4122,3978,4041,4394,4850,5052,4762,4070,
+3328,2869,2794,2970,3194,3345,3413,3445,3479,3514,3522,3483,3399,3301,3219,3165,3127,3079,3012,2932,2861,
+2815,2782,2733,2648,2542,2452,2403,2377,2339,2275,2208,2170,2165,2165,2142,2081,1993,1898,1819,1767,1734,
+1696,1637,1566,1508,1478,1460,1430,1379,1318,1262,1212,1163,1110,1057,1009,966,926,889,852,814,777,
+745,718,690,656,612,564,517,471,430,402,388,382,370,341,298,251,209,177,152,132,115,
+97,76,51,16,-25,-67,-94,-106,-116,-143,-185,-225,-247,-259,-282,-319,-350,-359,-357,-371,-414,
+-469,-508,-524,-534,-555,-584,-610,-628,-644,-656,-662,-658,-655,-661,-675,-684,-681,-675,-674,-676,-673,
+-660,-641,-622,-604,-584,-564,-548,-538,-528,-516,-501,-484,-466,-447,-429,-417,-410,-407,-407,-417,-435,
+-453,-460,-461,-469,-482,-478,-436,-366,-302,-272,-271,-283,-296,-305,-287,-215,-96,6,21,-69,-209,
+-323,-383,-407,-419,-416,-392,-355,-323,-298,-269,-231,-198,-180,-163,-123,-65,-20,-7,-13,-6,27,
+68,97,114,130,152,169,176,174,174,178,182,181,177,173,171,169,159,142,119,97,79,
+64,46,28,15,11,10,3,-9,-22,-28,-28,-33,-47,-65,-85,-108,-137,-171,-205,-236,-265,
+-296,-330,-367,-406,-446,-482,-513,-542,-574,-610,-644,-672,-696,-722,-752,-782,-810,-839,-870,-901,-927,
+-946,-961,-980,-1000,-1020,-1038,-1058,-1082,-1109,-1137,-1164,-1190,-1212,-1230,-1250,-1275,-1307,-1340,-1367,-1389,-1412,
+-1440,-1470,-1499,-1527,-1555,-1583,-1610,-1634,-1660,-1690,-1721,-1750,-1776,-1799,-1824,-1852,-1884,-1920,-1960,-2003,-2048,
+-2092,-2133,-2170,-2206,-2243,-2282,-2322,-2362,-2403,-2446,-2491,-2535,-2577,-2616,-2657,-2698,-2737,-2774,-2812,-2850,-2887,
+-2919,-2948,-2980,-3014,-3047,-3075,-3103,-3136,-3173,-3208,-3238,-3268,-3300,-3335,-3370,-3403,-3438,-3478,-3522,-3565,-3605,
+-3643,-3679,-3714,-3748,-3782,-3814,-3845,-3878,-3915,-3954,-3991,-4024,-4055,-4088,-4123,-4154,-4179,-4202,-4226,-4255,-4286,
+-4318,-4346,-4366,-4379,-4388,-4400,-4415,-4431,-4446,-4461,-4477,-4491,-4499,-4503,-4511,-4522,-4532,-4538,-4543,-4552,-4561,
+-4562,-4552,-4538,-4530,-4527,-4524,-4516,-4506,-4497,-4489,-4480,-4471,-4462,-4451,-4436,-4416,-4397,-4380,-4366,-4352,-4338,
+-4320,-4298,-4278,-4280,-4310,-4348,-4348,-4275,-4136,-3974,-3838,-3752,-3715,-3712,-3720,-3713,-3675,-3617,-3573,-3569,-3601,
+-3636,-3643,-3613,-3558,-3492,-3421,-3350,-3283,-3229,-3188,-3146,-3082,-2986,-2871,-2757,-2657,-2569,-2486,-2414,-2371,-2364,
+-2378,-2386,-2375,-2353,-2335,-2323,-2309,-2283,-2243,-2198,-2159,-2137,-2131,-2129,-2111,-2071,-2024,-1998,-2011,-2059,-2125,
+-2189,-2235,-2255,-2255,-2256,-2282,-2344,-2428,-2505,-2562,-2605,-2649,-2695,-2731,-2744,-2739,-2723,-2704,-2683,-2668,-2673,
+-2706,-2767,-2838,-2901,-2946,-2970,-2976,-2965,-2940,-2903,-2858,-2811,-2773,-2749,-2737,-2732,-2730,-2735,-2747,-2758,-2754,
+-2730,-2697,-2668,-2650,-2638,-2630,-2627,-2634,-2649,-2670,-2697,-2738,-2791,-2850,-2905,-2952,-2997,-3042,-3082,-3097,-3070,
+-2989,-2865,-2730,-2615,-2535,-2485,-2452,-2439,-2451,-2487,-2532,-2569,-2593,-2611,-2630,-2654,-2690,-2739,-2793,-2841,-2878,
+-2920,-2985,-3067,-3142,-3185,-3192,-3185,-3206,-3291,-3450,-3637,-3775,-3818,-3807,-3848,-4007,-4238,-4422,-4479,-4441,-4401,
+-4411,-4451,-4476,-4479,-4488,-4529,-4598,-4677,-4754,-4821,-4874,-4917,-4959,-5012,-5071,-5120,-5150,-5167,-5181,-5194,-5199,
+-5197,-5191,-5185,-5174,-5151,-5120,-5086,-5050,-5012,-4972,-4936,-4907,-4885,-4868,-4856,-4846,-4837,-4826,-4813,-4802,-4796,
+-4796,-4800,-4807,-4815,-4822,-4827,-4831,-4834,-4833,-4827,-4819,-4812,-4807,-4798,-4780,-4757,-4736,-4718,-4699,-4674,-4644,
+-4612,-4579,-4542,-4499,-4455,-4414,-4376,-4336,-4290,-4240,-4188,-4138,-4089,-4037,-3979,-3917,-3855,-3795,-3734,-3670,-3602,
+-3533,-3464,-3394,-3324,-3256,-3190,-3121,-3044,-2958,-2872,-2791,-2711,-2628,-2541,-2455,-2370,-2284,-2194,-2103,-2014,-1928,
+-1839,-1746,-1651,-1556,-1460,-1365,-1274,-1185,-1093,-995,-894,-802,-720,-633,-529,-409,-289,-187,-103,-27,47,
+115,164,194,221,261,320,390,456,511,560,607,655,700,742,781,822,863,904,948,995,1043,
+1086,1126,1168,1214,1261,1304,1344,1389,1439,1486,1526,1563,1605,1650,1693,1728,1761,1798,1836,1871,1903,
+1939,1985,2035,2083,2126,2166,2206,2245,2281,2313,2342,2370,2396,2419,2436,2442,2442,2442,2450,2467,2487,
+2508,2532,2558,2583,2601,2615,2628,2640,2647,2647,2642,2635,2627,2617,2608,2601,2596,2593,2595,2606,2628,
+2657,2692,2732,2779,2828,2872,2910,2946,2985,3028,3075,3129,3189,3247,3299,3356,3439,3542,3630,3664,3645,
+3605,3570,3532,3485,3466,3527,3666,3801,3833,3746,3615,3535,3535,3580,3635,3697,3773,3849,3899,3916,3920,
+3929,3941,3939,3923,3911,3918,3938,3956,3962,3954,3931,3900,3876,3868,3873,3870,3842,3792,3733,3674,3616,
+3559,3512,3483,3469,3460,3450,3440,3433,3420,3400,3381,3373,3377,3379,3367,3339,3299,3247,3181,3108,3041,
+2986,2936,2880,2819,2765,2726,2706,2701,2634,2644,2659,2658,2626,2576,2536,2522,2525,2528,2532,2551,2592,
+2639,2675,2702,2736,2779,2821,2853,2881,2914,2942,2953,2943,2926,2916,2908,2890,2871,2872,2902,2943,2965,
+2957,2937,2928,2935,2941,2929,2898,2866,2848,2846,2849,2848,2843,2840,2840,2834,2812,2776,2743,2730,2735,
+2744,2749,2753,2769,2801,2844,2888,2929,2964,2995,3022,3051,3083,3110,3115,3090,3036,2961,2874,2788,2713,
+2658,2620,2584,2536,2479,2426,2385,2351,2313,2270,2228,2189,2152,2115,2082,2058,2037,2007,1963,1907,1850,
+1795,1737,1670,1596,1529,1481,1458,1454,1458,1459,1455,1452,1452,1452,1445,1427,1406,1393,1394,1406,1416,
+1413,1393,1362,1332,1311,1295,1281,1269,1270,1291,1326,1359,1384,1403,1417,1415,1377,1305,1229,1187,1191,
+1215,1230,1241,1284,1384,1519,1632,1679,1661,1614,1566,1519,1459,1382,1307,1252,1221,1200,1176,1145,1116,
+1093,1070,1036,983,915,845,784,731,678,614,535,450,365,286,206,120,26,-64,-142,-202,-254,
+-315,-396,-497,-611,-725,-836,-944,-1056,-1175,-1297,-1414,-1522,-1624,-1730,-1845,-1968,-2094,-2220,-2339,-2445,-2532,
+-2597,-2646,-2686,-2726,-2764,-2793,-2800,-2781,-2738,-2678,-2606,-2527,-2449,-2382,-2337,-2312,-2306,-2332,-2407,-2525,-2648,
+-2737,-2787,-2829,-2871,-2866,-2748,-2509,-2231,-2031,-1972,-2026,-2117,-2190,-2233,-2263,-2299,-2347,-2399,-2437,-2446,-2429,
+-2413,-2431,-2492,-2580,-2665,-2734,-2797,-2872,-2963,-3053,-3116,-3141,-3135,-3118,-3101,-3087,-3083,-3102,-3162,-3264,-3388,
+-3515,-3645,-3792,-3967,-4160,-4335,-4453,-4491,-4456,-4383,-4319,-4297,-4323,-4381,-4443,-4491,-4523,-4545,-4566,-4587,-4592,
+-4562,-4498,-4430,-4404,-4443,-4527,-4609,-4660,-4687,-4715,-4749,-4770,-4758,-4719,-4687,-4697,-4754,-4840,-4940,-5047,-5157,
+-5259,-5340,-5403,-5465,-5543,-5639,-5743,-5846,-5947,-6043,-6128,-6200,-6268,-6340,-6415,-6487,-6547,-6592,-6626,-6651,-6671,
+-6686,-6694,-6690,-6673,-6649,-6622,-6591,-6551,-6506,-6459,-6402,-6325,-6223,-6096,-5928,-5679,-5336,-4954,-4641,-4462,-4381,
+-4312,-4214,-4112,-4027,-3926,-3761,-3551,-3378,-3306,-3342,-3465,-3659,-3881,-4030,-4014,-3864,-3720,-3673,-3653,-3543,-3376,
+-3359,-3659,-4197,-4722,-5065,-5267,-5462,-5674,-5813,-5811,-5715,-5618,-5541,-5429,-5235,-4983,-4744,-4579,-4507,-4509,-4530,
+-4502,-4396,-4247,-4116,-4026,-3942,-3831,-3709,-3618,-3576,-3554,-3521,-3473,-3426,-3385,-3356,-3356,-3403,-3483,-3542,-3538,
+-3478,-3406,-3359,-3329,-3297,-3256,-3220,-3200,-3189,-3175,-3161,-3155,-3159,-3156,-3130,-3080,-3015,-2948,-2885,-2817,-2739,
+-2651,-2568,-2501,-2453,-2410,-2353,-2277,-2189,-2107,-2045,-2002,-1968,-1930,-1885,-1839,-1797,-1755,-1702,-1630,-1542,-1445,
+-1347,-1246,-1140,-1034,-935,-848,-770,-692,-610,-522,-429,-333,-228,-111,16,146,265,364,445,526,626,
+755,905,1044,1136,1170,1172,1192,1260,1365,1471,1550,1607,1661,1725,1798,1875,1956,2043,2130,2211,2288,
+2371,2463,2555,2642,2726,2810,2892,2956,2995,3015,3037,3071,3115,3158,3193,3210,3193,3123,2995,2829,2666,
+2539,2461,2423,2414,2435,2501,2619,2779,2948,3093,3197,3269,3327,3378,3421,3448,3463,3475,3488,3504,3527,
+3569,3629,3694,3748,3783,3809,3836,3870,3910,3957,4005,4047,4079,4108,4142,4172,4191,4209,4247,4308,4360,
+4373,4363,4371,4388,4336,4167,3982,3987,4289,4724,4941,4686,4032,3319,2883,2831,3025,3257,3404,3465,3491,
+3515,3528,3509,3455,3385,3322,3273,3230,3183,3123,3053,2982,2926,2893,2869,2823,2734,2622,2530,2483,2460,
+2421,2352,2281,2243,2246,2261,2251,2198,2101,1980,1861,1767,1706,1662,1617,1571,1536,1521,1511,1486,1441,
+1385,1330,1275,1219,1162,1107,1060,1017,976,937,898,859,821,790,768,749,722,682,629,570,513,
+468,438,422,411,393,365,329,289,246,206,174,155,143,127,100,65,28,-9,-43,-67,-79,
+-89,-112,-152,-194,-222,-240,-260,-290,-322,-342,-357,-381,-419,-457,-480,-492,-506,-534,-566,-588,-600,
+-608,-620,-633,-641,-646,-654,-664,-669,-664,-655,-649,-648,-643,-630,-612,-595,-581,-567,-555,-545,-538,
+-529,-511,-488,-464,-444,-425,-409,-398,-393,-390,-388,-391,-406,-429,-450,-460,-465,-470,-471,-451,-411,
+-369,-345,-335,-315,-270,-209,-153,-112,-89,-91,-133,-212,-298,-360,-389,-400,-406,-402,-380,-348,-320,
+-296,-264,-223,-189,-169,-152,-117,-68,-31,-17,-10,15,64,111,138,150,167,189,204,203,195,
+198,214,231,236,230,223,222,226,229,220,201,178,157,139,119,93,70,59,58,55,43,
+25,14,11,11,4,-8,-23,-40,-64,-97,-132,-164,-192,-220,-252,-289,-328,-368,-406,-440,-472,
+-504,-540,-577,-609,-636,-663,-694,-725,-756,-784,-814,-846,-875,-899,-920,-942,-965,-988,-1010,-1033,-1061,
+-1089,-1117,-1143,-1167,-1191,-1211,-1231,-1255,-1286,-1321,-1353,-1379,-1404,-1432,-1462,-1493,-1523,-1553,-1582,-1606,-1625,
+-1646,-1671,-1699,-1727,-1752,-1778,-1805,-1834,-1865,-1899,-1938,-1981,-2024,-2065,-2105,-2144,-2181,-2217,-2254,-2293,-2334,
+-2377,-2421,-2466,-2510,-2551,-2590,-2628,-2667,-2707,-2747,-2787,-2827,-2865,-2897,-2928,-2961,-2998,-3034,-3067,-3097,-3129,
+-3165,-3201,-3233,-3263,-3295,-3329,-3363,-3397,-3434,-3477,-3522,-3565,-3605,-3643,-3679,-3715,-3751,-3785,-3818,-3849,-3882,
+-3917,-3954,-3991,-4026,-4060,-4094,-4127,-4155,-4179,-4202,-4231,-4265,-4299,-4328,-4353,-4372,-4386,-4398,-4411,-4427,-4446,
+-4465,-4484,-4503,-4515,-4521,-4523,-4528,-4537,-4548,-4556,-4562,-4571,-4580,-4584,-4578,-4568,-4559,-4552,-4546,-4540,-4532,
+-4523,-4512,-4502,-4495,-4488,-4475,-4455,-4436,-4422,-4410,-4394,-4374,-4356,-4339,-4318,-4292,-4276,-4287,-4320,-4346,-4330,
+-4259,-4141,-3998,-3857,-3752,-3709,-3725,-3755,-3747,-3685,-3605,-3558,-3567,-3607,-3638,-3632,-3592,-3534,-3468,-3399,-3331,
+-3270,-3218,-3168,-3104,-3015,-2909,-2804,-2715,-2634,-2550,-2465,-2398,-2367,-2366,-2373,-2365,-2340,-2310,-2287,-2270,-2249,
+-2216,-2175,-2142,-2125,-2122,-2114,-2086,-2044,-2007,-1996,-2013,-2048,-2091,-2136,-2175,-2195,-2193,-2188,-2212,-2279,-2373,
+-2461,-2524,-2570,-2616,-2663,-2697,-2703,-2682,-2651,-2623,-2606,-2608,-2638,-2705,-2797,-2894,-2970,-3019,-3045,-3057,-3054,
+-3033,-2994,-2945,-2898,-2863,-2840,-2826,-2819,-2821,-2835,-2854,-2863,-2849,-2811,-2763,-2721,-2690,-2665,-2644,-2626,-2614,
+-2606,-2603,-2611,-2638,-2679,-2722,-2759,-2794,-2836,-2889,-2948,-2999,-3024,-3003,-2924,-2797,-2658,-2547,-2484,-2462,-2467,
+-2489,-2524,-2560,-2584,-2593,-2596,-2604,-2622,-2648,-2684,-2729,-2780,-2832,-2886,-2947,-3018,-3086,-3123,-3114,-3077,-3065,
+-3136,-3304,-3514,-3674,-3740,-3761,-3837,-4020,-4255,-4428,-4475,-4435,-4389,-4385,-4408,-4426,-4439,-4468,-4523,-4593,-4665,
+-4737,-4807,-4867,-4913,-4953,-5001,-5056,-5106,-5139,-5157,-5172,-5187,-5199,-5203,-5200,-5190,-5174,-5152,-5125,-5098,-5068,
+-5034,-4996,-4959,-4926,-4900,-4882,-4872,-4866,-4861,-4854,-4847,-4842,-4840,-4837,-4835,-4839,-4850,-4865,-4880,-4890,-4897,
+-4897,-4892,-4884,-4878,-4875,-4866,-4846,-4817,-4788,-4766,-4746,-4721,-4690,-4655,-4620,-4584,-4546,-4506,-4466,-4425,-4382,
+-4336,-4287,-4238,-4191,-4143,-4092,-4034,-3972,-3910,-3849,-3784,-3714,-3639,-3566,-3497,-3429,-3359,-3290,-3225,-3157,-3082,
+-2998,-2913,-2833,-2756,-2675,-2588,-2500,-2416,-2332,-2244,-2152,-2062,-1973,-1883,-1788,-1691,-1595,-1502,-1408,-1316,-1223,
+-1129,-1034,-942,-856,-772,-679,-569,-449,-337,-243,-163,-88,-16,44,86,115,147,195,259,331,395,
+449,497,545,590,632,670,709,750,791,829,870,918,969,1015,1053,1090,1133,1182,1230,1271,1312,
+1357,1404,1448,1489,1530,1572,1609,1641,1671,1706,1746,1784,1820,1859,1905,1955,2005,2048,2087,2122,2156,
+2189,2223,2256,2288,2318,2345,2367,2380,2384,2388,2401,2425,2454,2483,2510,2536,2561,2581,2596,2608,2619,
+2628,2632,2631,2626,2615,2599,2583,2570,2565,2563,2567,2579,2601,2633,2671,2716,2767,2821,2871,2915,2955,
+2995,3036,3080,3133,3197,3260,3311,3351,3396,3455,3510,3534,3520,3479,3426,3363,3300,3266,3293,3371,3439,
+3441,3381,3322,3324,3391,3487,3580,3667,3749,3817,3861,3885,3904,3923,3931,3920,3903,3903,3925,3956,3977,
+3983,3973,3946,3908,3872,3859,3868,3876,3858,3811,3746,3676,3603,3530,3468,3427,3406,3394,3384,3378,3375,
+3367,3350,3332,3323,3325,3325,3309,3279,3244,3202,3146,3078,3010,2950,2895,2834,2768,2709,2665,2640,2634,
+2584,2588,2602,2602,2569,2516,2477,2473,2493,2512,2526,2549,2588,2630,2659,2683,2719,2773,2828,2874,2914,
+2960,3003,3024,3018,3003,2996,2989,2967,2936,2920,2938,2975,3000,2997,2978,2964,2965,2967,2957,2934,2906,
+2885,2875,2870,2862,2849,2832,2816,2796,2764,2723,2689,2679,2692,2708,2714,2716,2730,2762,2804,2843,2879,
+2919,2962,3002,3035,3062,3086,3100,3091,3047,2971,2877,2784,2711,2664,2635,2608,2570,2521,2471,2424,2377,
+2326,2277,2239,2211,2181,2141,2095,2051,2011,1967,1914,1857,1802,1752,1699,1639,1574,1515,1473,1452,1451,
+1458,1462,1457,1447,1439,1434,1428,1414,1395,1376,1364,1362,1364,1362,1350,1332,1317,1309,1300,1281,1255,
+1242,1258,1297,1338,1367,1391,1421,1444,1428,1359,1266,1199,1182,1198,1215,1229,1263,1338,1438,1520,1557,
+1555,1540,1525,1500,1450,1379,1308,1257,1233,1221,1206,1181,1154,1131,1111,1080,1030,964,895,834,780,
+723,656,576,488,402,321,240,151,52,-45,-125,-182,-226,-279,-357,-460,-578,-700,-818,-931,-1042,
+-1157,-1282,-1411,-1535,-1651,-1761,-1874,-1996,-2125,-2252,-2370,-2473,-2558,-2623,-2670,-2708,-2745,-2788,-2836,-2874,-2891,
+-2881,-2848,-2798,-2733,-2661,-2599,-2559,-2542,-2543,-2568,-2640,-2759,-2890,-2978,-3006,-3002,-2988,-2934,-2784,-2529,-2247,
+-2045,-1977,-2011,-2078,-2140,-2190,-2236,-2278,-2319,-2363,-2407,-2441,-2454,-2461,-2488,-2551,-2637,-2720,-2781,-2828,-2880,
+-2946,-3019,-3081,-3114,-3114,-3095,-3080,-3088,-3130,-3204,-3301,-3408,-3515,-3620,-3736,-3876,-4041,-4215,-4367,-4464,-4491,
+-4459,-4402,-4357,-4345,-4369,-4419,-4478,-4525,-4545,-4538,-4524,-4522,-4526,-4510,-4460,-4401,-4383,-4432,-4522,-4608,-4662,
+-4699,-4740,-4780,-4792,-4761,-4712,-4688,-4722,-4807,-4917,-5029,-5134,-5230,-5312,-5375,-5425,-5484,-5564,-5666,-5773,-5871,
+-5958,-6036,-6112,-6184,-6253,-6318,-6382,-6444,-6500,-6550,-6592,-6632,-6673,-6710,-6733,-6738,-6731,-6727,-6730,-6725,-6702,
+-6669,-6644,-6630,-6605,-6544,-6442,-6299,-6106,-5861,-5596,-5371,-5218,-5109,-4993,-4867,-4769,-4708,-4633,-4486,-4282,-4101,
+-4003,-3984,-4019,-4104,-4224,-4313,-4295,-4183,-4087,-4093,-4153,-4157,-4102,-4125,-4352,-4732,-5087,-5306,-5438,-5584,-5745,
+-5822,-5747,-5573,-5406,-5297,-5214,-5100,-4941,-4768,-4628,-4554,-4540,-4540,-4491,-4370,-4222,-4106,-4032,-3958,-3853,-3738,
+-3658,-3624,-3607,-3577,-3539,-3509,-3486,-3463,-3449,-3466,-3511,-3541,-3518,-3445,-3364,-3306,-3264,-3216,-3162,-3121,-3106,
+-3107,-3107,-3099,-3093,-3092,-3086,-3058,-3006,-2942,-2883,-2828,-2768,-2694,-2610,-2532,-2471,-2428,-2387,-2331,-2252,-2160,
+-2074,-2011,-1973,-1947,-1914,-1870,-1819,-1771,-1720,-1659,-1581,-1490,-1394,-1294,-1189,-1082,-979,-884,-796,-714,-636,
+-557,-472,-377,-276,-170,-56,66,190,302,395,477,568,679,807,937,1047,1120,1154,1171,1207,1282,
+1387,1488,1565,1623,1679,1744,1816,1892,1974,2062,2153,2239,2322,2407,2494,2579,2661,2747,2836,2915,2971,
+3001,3018,3040,3073,3115,3162,3206,3227,3197,3096,2934,2754,2604,2504,2448,2421,2424,2475,2583,2736,2897,
+3035,3139,3221,3297,3368,3426,3465,3485,3497,3510,3522,3534,3550,3586,3646,3718,3782,3822,3843,3859,3883,
+3920,3963,4007,4047,4085,4129,4172,4202,4212,4219,4252,4310,4359,4371,4365,4383,4410,4362,4186,3975,3930,
+4170,4558,4769,4557,3976,3334,2946,2910,3094,3300,3421,3467,3492,3514,3516,3481,3425,3378,3353,3334,3293,
+3224,3139,3058,2992,2947,2921,2898,2852,2769,2667,2583,2541,2523,2493,2435,2367,2316,2294,2285,2268,2224,
+2145,2035,1915,1814,1746,1700,1661,1621,1590,1572,1557,1532,1492,1443,1388,1328,1264,1204,1154,1114,1077,
+1038,997,955,913,875,845,823,803,776,737,687,630,574,526,491,468,449,428,403,377,346,
+303,253,207,180,165,147,116,77,41,11,-15,-38,-55,-69,-88,-117,-154,-188,-214,-236,-260,
+-287,-315,-343,-374,-404,-425,-437,-448,-470,-504,-537,-555,-561,-566,-579,-598,-615,-626,-632,-635,-635,
+-630,-624,-620,-618,-612,-599,-583,-567,-556,-549,-546,-544,-540,-527,-502,-469,-439,-418,-405,-395,-388,
+-387,-388,-386,-382,-388,-409,-436,-453,-456,-453,-452,-443,-417,-384,-358,-340,-300,-218,-111,-28,-7,
+-47,-119,-196,-265,-318,-347,-351,-345,-340,-336,-326,-309,-293,-276,-250,-212,-173,-146,-132,-116,-90,
+-60,-31,4,52,103,135,144,149,169,202,225,229,223,229,251,275,286,281,271,265,268,
+276,280,274,258,239,220,197,165,132,112,110,111,99,74,53,46,49,50,41,27,12,
+-5,-30,-60,-91,-120,-150,-183,-217,-251,-286,-322,-359,-392,-425,-459,-497,-535,-568,-600,-634,-669,
+-702,-732,-760,-790,-821,-850,-876,-902,-927,-952,-976,-1003,-1034,-1065,-1092,-1115,-1139,-1166,-1192,-1216,-1241,
+-1271,-1305,-1337,-1366,-1393,-1421,-1451,-1480,-1511,-1543,-1574,-1597,-1614,-1630,-1652,-1678,-1705,-1731,-1761,-1793,-1826,
+-1856,-1887,-1922,-1961,-1999,-2036,-2073,-2111,-2149,-2185,-2221,-2262,-2306,-2350,-2393,-2436,-2478,-2518,-2556,-2593,-2632,
+-2673,-2714,-2754,-2793,-2830,-2865,-2898,-2934,-2974,-3016,-3054,-3087,-3120,-3156,-3193,-3229,-3262,-3295,-3328,-3362,-3397,
+-3436,-3478,-3520,-3561,-3600,-3639,-3676,-3711,-3745,-3778,-3812,-3848,-3885,-3922,-3959,-3995,-4029,-4063,-4099,-4133,-4160,
+-4184,-4209,-4241,-4278,-4311,-4338,-4358,-4375,-4392,-4408,-4424,-4442,-4463,-4486,-4508,-4524,-4533,-4534,-4534,-4538,-4548,
+-4562,-4572,-4581,-4588,-4594,-4597,-4596,-4590,-4582,-4574,-4567,-4563,-4559,-4549,-4535,-4521,-4513,-4507,-4495,-4476,-4458,
+-4447,-4437,-4420,-4396,-4373,-4355,-4335,-4310,-4286,-4278,-4289,-4306,-4314,-4302,-4258,-4166,-4027,-3878,-3774,-3748,-3771,
+-3782,-3738,-3655,-3581,-3554,-3572,-3603,-3617,-3602,-3562,-3509,-3447,-3381,-3315,-3252,-3193,-3131,-3057,-2970,-2880,-2795,
+-2715,-2626,-2528,-2433,-2366,-2337,-2333,-2331,-2313,-2282,-2252,-2231,-2216,-2197,-2173,-2149,-2135,-2123,-2101,-2065,-2026,
+-2003,-2003,-2014,-2025,-2037,-2058,-2087,-2107,-2107,-2103,-2127,-2198,-2300,-2400,-2475,-2528,-2575,-2620,-2649,-2648,-2617,
+-2575,-2542,-2532,-2550,-2601,-2687,-2798,-2910,-3002,-3066,-3105,-3122,-3116,-3080,-3023,-2964,-2920,-2897,-2888,-2884,-2887,
+-2899,-2917,-2931,-2926,-2898,-2854,-2806,-2766,-2734,-2705,-2678,-2653,-2628,-2601,-2576,-2567,-2581,-2609,-2636,-2654,-2672,
+-2702,-2744,-2797,-2859,-2926,-2974,-2960,-2864,-2716,-2578,-2500,-2484,-2503,-2531,-2557,-2580,-2592,-2589,-2581,-2583,-2599,
+-2621,-2645,-2674,-2715,-2764,-2817,-2877,-2953,-3034,-3087,-3077,-3018,-2975,-3018,-3163,-3344,-3478,-3544,-3608,-3755,-3997,
+-4249,-4410,-4446,-4412,-4380,-4376,-4382,-4386,-4403,-4449,-4518,-4588,-4651,-4713,-4783,-4853,-4909,-4953,-4998,-5049,-5098,
+-5136,-5160,-5177,-5192,-5204,-5209,-5207,-5198,-5182,-5161,-5139,-5115,-5086,-5051,-5013,-4977,-4943,-4913,-4891,-4877,-4872,
+-4870,-4868,-4868,-4872,-4876,-4875,-4872,-4874,-4886,-4904,-4921,-4935,-4946,-4952,-4952,-4945,-4937,-4931,-4920,-4899,-4870,
+-4839,-4814,-4792,-4768,-4737,-4701,-4662,-4624,-4587,-4551,-4510,-4466,-4418,-4370,-4324,-4278,-4232,-4185,-4136,-4082,-4020,
+-3955,-3889,-3821,-3748,-3671,-3597,-3528,-3462,-3394,-3325,-3257,-3188,-3114,-3033,-2952,-2876,-2801,-2720,-2633,-2544,-2459,
+-2376,-2289,-2200,-2112,-2024,-1933,-1835,-1734,-1635,-1540,-1447,-1353,-1258,-1164,-1074,-990,-908,-818,-714,-597,-483,
+-384,-301,-225,-150,-82,-28,11,45,87,143,209,276,336,389,438,486,531,570,604,640,680,
+720,757,794,840,894,944,983,1016,1056,1105,1155,1200,1240,1282,1326,1371,1414,1456,1496,1530,1559,
+1586,1619,1658,1700,1741,1783,1826,1872,1918,1962,2002,2038,2070,2102,2135,2171,2208,2244,2278,2305,2322,
+2329,2336,2355,2386,2423,2459,2492,2522,2549,2568,2580,2587,2594,2600,2607,2611,2610,2601,2582,2562,2549,
+2544,2545,2551,2564,2587,2621,2662,2711,2765,2820,2872,2918,2963,3008,3052,3097,3148,3211,3280,3337,3370,
+3387,3400,3414,3419,3409,3389,3363,3327,3278,3226,3191,3177,3167,3150,3140,3170,3258,3384,3508,3607,3681,
+3739,3787,3825,3860,3892,3912,3909,3892,3882,3900,3939,3977,3997,3999,3987,3959,3916,3872,3849,3852,3860,
+3846,3800,3734,3660,3581,3500,3429,3379,3351,3333,3320,3315,3320,3326,3322,3311,3302,3297,3287,3262,3227,
+3193,3158,3113,3052,2983,2918,2858,2796,2733,2675,2630,2599,2584,2559,2550,2555,2554,2527,2484,2455,2459,
+2485,2509,2528,2556,2600,2643,2671,2694,2734,2795,2860,2913,2962,3022,3083,3120,3121,3103,3084,3067,3040,
+3006,2987,3000,3033,3057,3056,3038,3021,3012,3007,2999,2981,2954,2923,2898,2881,2869,2853,2831,2804,2776,
+2741,2700,2666,2656,2670,2689,2694,2690,2696,2723,2759,2792,2825,2870,2928,2981,3016,3035,3051,3067,3066,
+3029,2956,2864,2778,2713,2671,2646,2624,2597,2560,2517,2466,2404,2338,2281,2246,2228,2209,2173,2117,2054,
+1990,1926,1863,1804,1753,1708,1661,1610,1556,1504,1464,1441,1436,1441,1444,1436,1422,1408,1401,1397,1388,
+1372,1351,1329,1310,1299,1296,1298,1301,1306,1311,1309,1290,1257,1231,1234,1268,1309,1343,1374,1414,1452,
+1455,1399,1305,1222,1185,1189,1205,1218,1237,1278,1338,1395,1436,1462,1482,1496,1488,1446,1378,1306,1255,
+1236,1235,1233,1218,1195,1173,1153,1122,1074,1011,945,884,825,761,690,610,525,438,355,272,183,
+83,-18,-103,-159,-198,-244,-318,-421,-543,-673,-801,-919,-1029,-1140,-1261,-1395,-1531,-1660,-1778,-1896,-2021,
+-2153,-2283,-2402,-2506,-2590,-2655,-2702,-2736,-2770,-2812,-2866,-2916,-2949,-2959,-2954,-2941,-2916,-2875,-2833,-2807,-2802,
+-2810,-2831,-2884,-2979,-3086,-3144,-3126,-3058,-2979,-2879,-2715,-2473,-2218,-2041,-1984,-2013,-2069,-2126,-2185,-2244,-2288,
+-2310,-2328,-2360,-2406,-2454,-2499,-2552,-2620,-2696,-2766,-2820,-2861,-2903,-2954,-3014,-3070,-3105,-3109,-3094,-3090,-3124,
+-3208,-3326,-3452,-3566,-3664,-3756,-3855,-3975,-4114,-4257,-4376,-4449,-4467,-4448,-4419,-4402,-4402,-4419,-4452,-4499,-4544,
+-4562,-4541,-4501,-4474,-4469,-4464,-4441,-4411,-4413,-4467,-4551,-4626,-4676,-4718,-4763,-4796,-4793,-4753,-4713,-4716,-4781,
+-4891,-5015,-5131,-5228,-5307,-5367,-5414,-5460,-5520,-5601,-5698,-5797,-5884,-5960,-6030,-6101,-6174,-6244,-6305,-6360,-6413,
+-6463,-6510,-6551,-6592,-6639,-6691,-6735,-6761,-6773,-6783,-6795,-6797,-6782,-6757,-6745,-6747,-6744,-6708,-6636,-6535,-6412,
+-6263,-6099,-5946,-5819,-5703,-5575,-5443,-5340,-5271,-5195,-5071,-4913,-4776,-4687,-4625,-4567,-4529,-4539,-4570,-4566,-4514,
+-4484,-4541,-4658,-4749,-4784,-4836,-4988,-5218,-5426,-5555,-5646,-5759,-5870,-5879,-5726,-5463,-5208,-5048,-4982,-4955,-4907,
+-4816,-4705,-4618,-4575,-4546,-4477,-4348,-4200,-4086,-4014,-3944,-3850,-3756,-3699,-3682,-3672,-3644,-3608,-3584,-3568,-3546,
+-3519,-3505,-3509,-3506,-3467,-3397,-3324,-3268,-3220,-3164,-3105,-3065,-3056,-3066,-3072,-3065,-3052,-3041,-3023,-2987,-2931,
+-2870,-2817,-2774,-2724,-2657,-2576,-2498,-2437,-2393,-2353,-2299,-2220,-2122,-2026,-1959,-1929,-1919,-1901,-1862,-1807,-1748,
+-1689,-1619,-1535,-1438,-1337,-1232,-1128,-1028,-934,-844,-753,-664,-582,-502,-417,-318,-210,-100,11,128,246,
+349,435,516,612,727,847,952,1035,1096,1142,1186,1246,1330,1430,1523,1596,1654,1712,1779,1850,1924,
+2005,2094,2188,2279,2366,2448,2528,2605,2684,2769,2850,2912,2947,2967,2992,3034,3085,3135,3180,3215,3223,
+3174,3056,2888,2716,2581,2493,2443,2425,2454,2552,2716,2906,3066,3170,3229,3280,3343,3412,3466,3495,3506,
+3514,3527,3540,3550,3563,3592,3645,3714,3782,3830,3855,3870,3890,3922,3963,4006,4049,4094,4144,4190,4218,
+4225,4230,4257,4308,4351,4366,4369,4391,4414,4361,4182,3958,3874,4046,4370,4566,4409,3934,3404,3092,3078,
+3241,3407,3496,3530,3559,3589,3586,3533,3458,3401,3376,3354,3303,3213,3109,3017,2949,2904,2874,2847,2810,
+2751,2680,2619,2584,2569,2550,2512,2454,2389,2328,2279,2244,2209,2158,2080,1987,1903,1841,1794,1749,1704,
+1666,1638,1611,1576,1533,1484,1428,1364,1296,1236,1192,1159,1127,1089,1045,1000,960,927,903,882,855,
+817,774,729,684,635,585,542,513,492,475,458,440,416,374,317,257,214,188,167,138,104,
+74,52,32,8,-16,-39,-60,-86,-118,-151,-180,-203,-223,-246,-277,-312,-346,-371,-383,-389,-403,
+-430,-463,-491,-508,-516,-525,-539,-558,-574,-584,-587,-587,-587,-588,-589,-589,-588,-584,-577,-567,-554,
+-544,-538,-536,-536,-533,-520,-493,-459,-428,-410,-400,-392,-386,-385,-389,-391,-386,-382,-391,-411,-426,
+-425,-417,-413,-409,-392,-361,-333,-316,-285,-211,-104,-14,8,-36,-112,-183,-236,-267,-267,-234,-185,
+-148,-137,-146,-165,-194,-225,-239,-218,-167,-118,-96,-98,-99,-78,-32,27,83,120,131,127,131,
+158,199,232,247,251,260,279,300,314,318,314,307,303,308,317,321,314,300,284,265,238,
+206,182,177,179,169,142,114,102,106,108,98,78,58,40,20,-3,-31,-59,-89,-120,-149,
+-176,-205,-239,-278,-316,-350,-383,-420,-459,-497,-532,-568,-607,-647,-682,-714,-743,-774,-804,-833,-861,
+-888,-914,-939,-968,-1001,-1035,-1063,-1087,-1112,-1141,-1171,-1199,-1227,-1257,-1289,-1320,-1349,-1378,-1407,-1436,-1463,
+-1493,-1527,-1560,-1585,-1601,-1618,-1640,-1667,-1694,-1721,-1752,-1788,-1823,-1852,-1879,-1911,-1946,-1981,-2013,-2045,-2080,
+-2116,-2151,-2189,-2233,-2280,-2326,-2367,-2405,-2444,-2483,-2521,-2559,-2601,-2644,-2685,-2722,-2757,-2793,-2829,-2867,-2908,
+-2953,-3000,-3042,-3078,-3112,-3147,-3186,-3224,-3260,-3294,-3329,-3364,-3401,-3439,-3478,-3516,-3554,-3593,-3632,-3670,-3704,
+-3736,-3769,-3806,-3845,-3885,-3925,-3964,-4000,-4034,-4067,-4102,-4136,-4167,-4193,-4219,-4251,-4286,-4318,-4341,-4360,-4379,
+-4399,-4418,-4436,-4456,-4480,-4505,-4526,-4539,-4542,-4540,-4539,-4544,-4556,-4573,-4588,-4598,-4603,-4603,-4601,-4597,-4593,
+-4586,-4580,-4577,-4579,-4579,-4572,-4556,-4539,-4530,-4525,-4515,-4498,-4481,-4467,-4456,-4439,-4416,-4394,-4374,-4354,-4329,
+-4305,-4287,-4276,-4266,-4262,-4272,-4282,-4257,-4165,-4021,-3881,-3798,-3780,-3786,-3770,-3715,-3641,-3581,-3554,-3560,-3579,
+-3590,-3578,-3543,-3491,-3429,-3359,-3286,-3218,-3157,-3097,-3029,-2951,-2866,-2780,-2688,-2582,-2469,-2368,-2303,-2278,-2275,
+-2269,-2247,-2217,-2194,-2185,-2182,-2176,-2165,-2150,-2129,-2098,-2058,-2023,-2004,-1998,-1989,-1973,-1961,-1968,-1992,-2013,
+-2017,-2015,-2036,-2103,-2208,-2323,-2421,-2494,-2546,-2585,-2603,-2592,-2552,-2500,-2461,-2452,-2479,-2543,-2642,-2766,-2897,
+-3012,-3100,-3156,-3176,-3153,-3090,-3006,-2932,-2891,-2881,-2888,-2901,-2919,-2940,-2956,-2956,-2934,-2898,-2860,-2829,-2802,
+-2775,-2747,-2720,-2693,-2660,-2619,-2582,-2563,-2568,-2584,-2594,-2596,-2602,-2621,-2648,-2678,-2727,-2810,-2906,-2954,-2901,
+-2761,-2611,-2523,-2512,-2538,-2564,-2579,-2590,-2594,-2585,-2568,-2562,-2576,-2602,-2625,-2644,-2665,-2696,-2737,-2798,-2889,
+-2996,-3075,-3084,-3033,-2992,-3026,-3133,-3243,-3300,-3331,-3428,-3651,-3955,-4219,-4354,-4370,-4345,-4341,-4355,-4361,-4356,
+-4369,-4424,-4505,-4582,-4644,-4702,-4769,-4839,-4901,-4950,-4997,-5048,-5098,-5141,-5173,-5195,-5210,-5218,-5222,-5222,-5216,
+-5202,-5184,-5162,-5135,-5103,-5065,-5027,-4993,-4962,-4931,-4904,-4888,-4881,-4881,-4882,-4886,-4893,-4901,-4905,-4907,-4913,
+-4927,-4944,-4959,-4972,-4985,-4997,-5001,-4996,-4984,-4969,-4954,-4935,-4910,-4883,-4856,-4833,-4809,-4781,-4744,-4702,-4658,
+-4618,-4581,-4542,-4497,-4449,-4404,-4360,-4314,-4265,-4216,-4168,-4117,-4056,-3987,-3916,-3847,-3778,-3706,-3633,-3564,-3497,
+-3429,-3358,-3287,-3216,-3142,-3064,-2985,-2910,-2837,-2758,-2672,-2583,-2497,-2413,-2328,-2242,-2157,-2072,-1981,-1880,-1775,
+-1673,-1577,-1486,-1393,-1298,-1205,-1119,-1038,-954,-855,-739,-619,-513,-427,-354,-281,-208,-146,-101,-64,-22,
+31,94,159,220,274,324,373,421,466,504,536,570,609,650,689,727,771,822,873,914,949,
+986,1034,1085,1133,1175,1215,1257,1297,1336,1375,1413,1448,1476,1502,1532,1571,1617,1664,1710,1751,1789,
+1828,1870,1913,1954,1989,2022,2055,2092,2132,2174,2214,2245,2265,2276,2288,2311,2346,2387,2427,2466,2501,
+2528,2545,2552,2555,2558,2564,2570,2575,2577,2571,2557,2541,2531,2529,2532,2539,2555,2581,2618,2663,2712,
+2765,2819,2869,2914,2963,3017,3071,3121,3170,3228,3296,3360,3403,3418,3414,3399,3377,3350,3321,3293,3258,
+3210,3150,3091,3050,3034,3045,3091,3177,3298,3432,3547,3630,3685,3726,3766,3811,3855,3890,3905,3898,3884,
+3885,3913,3956,3994,4014,4020,4011,3985,3936,3880,3839,3823,3817,3797,3751,3688,3617,3541,3463,3392,3340,
+3307,3282,3262,3253,3261,3278,3289,3286,3277,3266,3249,3222,3188,3156,3125,3085,3028,2958,2887,2823,2763,
+2709,2662,2621,2585,2559,2551,2528,2523,2523,2510,2487,2474,2484,2505,2523,2540,2576,2631,2686,2721,2750,
+2796,2864,2933,2987,3035,3098,3168,3220,3231,3210,3179,3147,3114,3083,3071,3085,3110,3125,3119,3101,3083,
+3070,3060,3050,3033,3000,2955,2911,2883,2869,2857,2836,2808,2778,2746,2707,2671,2655,2662,2675,2675,2663,
+2661,2680,2711,2740,2773,2824,2893,2956,2993,3008,3020,3032,3029,2990,2917,2833,2759,2705,2665,2634,2608,
+2583,2555,2517,2465,2399,2326,2266,2232,2220,2212,2186,2131,2055,1971,1889,1818,1760,1713,1672,1630,1587,
+1544,1500,1460,1430,1414,1410,1405,1392,1375,1362,1357,1354,1348,1335,1316,1291,1264,1247,1248,1264,1282,
+1295,1302,1302,1287,1259,1230,1223,1244,1279,1314,1348,1393,1440,1460,1426,1345,1258,1204,1190,1195,1199,
+1201,1214,1245,1292,1345,1396,1437,1462,1459,1423,1359,1290,1241,1224,1231,1237,1229,1210,1189,1169,1139,
+1091,1032,971,912,850,781,707,631,550,464,377,293,205,107,5,-81,-138,-173,-215,-286,-390,
+-516,-650,-782,-906,-1019,-1131,-1251,-1383,-1520,-1654,-1783,-1912,-2046,-2183,-2317,-2441,-2548,-2633,-2696,-2741,-2775,
+-2808,-2850,-2901,-2949,-2982,-2998,-3011,-3031,-3046,-3044,-3027,-3019,-3028,-3045,-3065,-3101,-3164,-3228,-3233,-3153,-3024,
+-2901,-2789,-2641,-2432,-2210,-2060,-2022,-2059,-2117,-2172,-2233,-2299,-2348,-2367,-2372,-2390,-2434,-2499,-2570,-2642,-2711,
+-2771,-2822,-2866,-2906,-2945,-2985,-3027,-3069,-3097,-3104,-3101,-3117,-3180,-3291,-3432,-3576,-3707,-3817,-3909,-3990,-4071,
+-4162,-4260,-4349,-4409,-4434,-4438,-4439,-4447,-4456,-4463,-4476,-4506,-4544,-4563,-4543,-4496,-4456,-4441,-4442,-4441,-4443,
+-4468,-4525,-4596,-4656,-4702,-4744,-4781,-4796,-4775,-4738,-4725,-4768,-4865,-4990,-5116,-5227,-5314,-5375,-5417,-5453,-5497,
+-5558,-5633,-5715,-5796,-5872,-5942,-6010,-6080,-6150,-6214,-6268,-6315,-6360,-6405,-6447,-6484,-6521,-6566,-6622,-6680,-6728,
+-6760,-6782,-6796,-6799,-6783,-6756,-6734,-6725,-6721,-6706,-6674,-6627,-6565,-6480,-6373,-6259,-6152,-6053,-5947,-5833,-5721,
+-5616,-5506,-5383,-5263,-5170,-5099,-5019,-4913,-4813,-4762,-4763,-4773,-4766,-4771,-4830,-4934,-5031,-5096,-5166,-5287,-5452,
+-5602,-5704,-5782,-5869,-5937,-5905,-5719,-5417,-5114,-4918,-4861,-4889,-4912,-4868,-4765,-4661,-4596,-4550,-4471,-4339,-4189,
+-4071,-3993,-3923,-3843,-3774,-3740,-3738,-3732,-3703,-3664,-3636,-3619,-3597,-3563,-3526,-3494,-3460,-3411,-3351,-3291,-3240,
+-3188,-3130,-3076,-3044,-3044,-3060,-3070,-3061,-3038,-3010,-2978,-2935,-2879,-2821,-2775,-2739,-2698,-2637,-2557,-2476,-2411,
+-2365,-2327,-2274,-2192,-2084,-1978,-1907,-1885,-1890,-1885,-1847,-1784,-1714,-1648,-1578,-1493,-1392,-1281,-1169,-1065,-976,
+-896,-813,-721,-626,-538,-457,-369,-262,-146,-32,77,188,299,399,483,565,662,773,880,965,1034,
+1098,1162,1229,1302,1387,1480,1566,1637,1698,1761,1829,1899,1970,2047,2135,2228,2319,2406,2490,2572,2651,
+2728,2800,2855,2885,2897,2917,2964,3033,3100,3147,3174,3184,3167,3104,2987,2837,2688,2568,2488,2449,2459,
+2533,2680,2880,3082,3233,3313,3346,3372,3414,3462,3496,3508,3512,3521,3537,3553,3564,3574,3594,3634,3695,
+3763,3820,3856,3875,3893,3922,3962,4010,4059,4108,4157,4200,4228,4241,4249,4271,4308,4344,4365,4381,4406,
+4421,4358,4177,3945,3822,3921,4173,4349,4252,3897,3498,3281,3308,3465,3603,3663,3684,3716,3752,3748,3678,
+3568,3465,3393,3339,3275,3192,3099,3014,2942,2881,2829,2787,2752,2720,2688,2657,2631,2613,2598,2576,2534,
+2468,2389,2319,2272,2241,2203,2144,2072,2002,1944,1888,1830,1776,1732,1699,1664,1620,1568,1513,1454,1389,
+1324,1267,1225,1191,1157,1118,1076,1034,998,973,956,938,905,857,806,763,726,682,630,581,550,
+536,529,519,504,479,440,381,315,258,218,191,167,142,120,103,86,63,33,0,-31,-62,
+-92,-120,-143,-163,-182,-207,-242,-281,-317,-341,-352,-361,-376,-399,-422,-441,-458,-474,-491,-506,-519,
+-530,-538,-542,-543,-546,-552,-558,-561,-561,-561,-562,-560,-551,-540,-529,-523,-521,-517,-508,-487,-459,
+-434,-418,-411,-404,-394,-389,-393,-399,-397,-388,-385,-391,-397,-391,-378,-370,-367,-354,-325,-297,-286,
+-277,-240,-171,-103,-77,-99,-143,-182,-208,-211,-168,-72,50,149,190,171,107,6,-109,-193,-197,
+-123,-30,15,6,-17,-10,30,78,106,114,118,131,158,192,222,241,254,265,277,289,297,
+308,322,337,342,340,341,350,358,354,340,325,315,301,277,252,238,236,229,208,184,171,
+172,172,158,134,110,89,69,45,21,-2,-26,-52,-78,-102,-128,-162,-205,-248,-286,-319,-354,
+-393,-430,-464,-499,-539,-582,-625,-663,-697,-728,-759,-789,-819,-850,-879,-907,-935,-967,-1001,-1032,-1060,
+-1087,-1116,-1147,-1178,-1209,-1241,-1273,-1302,-1329,-1358,-1390,-1419,-1446,-1474,-1506,-1540,-1567,-1585,-1604,-1629,-1659,
+-1687,-1714,-1747,-1784,-1819,-1847,-1872,-1903,-1939,-1973,-2002,-2030,-2059,-2092,-2127,-2165,-2210,-2259,-2304,-2341,-2375,
+-2411,-2450,-2489,-2530,-2574,-2619,-2661,-2696,-2728,-2763,-2802,-2845,-2891,-2939,-2988,-3032,-3069,-3102,-3137,-3176,-3215,
+-3253,-3289,-3325,-3362,-3401,-3438,-3474,-3509,-3546,-3586,-3628,-3666,-3700,-3732,-3767,-3806,-3847,-3888,-3928,-3968,-4007,
+-4042,-4073,-4105,-4138,-4171,-4200,-4228,-4259,-4289,-4316,-4339,-4360,-4383,-4407,-4428,-4448,-4469,-4494,-4519,-4537,-4546,
+-4546,-4545,-4546,-4553,-4567,-4584,-4602,-4613,-4616,-4611,-4601,-4592,-4585,-4581,-4579,-4581,-4588,-4595,-4592,-4579,-4562,
+-4551,-4545,-4537,-4523,-4504,-4487,-4472,-4456,-4438,-4420,-4400,-4376,-4349,-4326,-4307,-4286,-4255,-4225,-4217,-4232,-4244,
+-4211,-4114,-3981,-3861,-3789,-3768,-3769,-3756,-3707,-3632,-3561,-3528,-3536,-3564,-3578,-3564,-3525,-3468,-3399,-3320,-3242,
+-3175,-3119,-3061,-2989,-2904,-2814,-2722,-2619,-2501,-2379,-2281,-2228,-2216,-2219,-2212,-2190,-2166,-2154,-2153,-2156,-2155,
+-2147,-2129,-2101,-2065,-2029,-1996,-1965,-1929,-1896,-1880,-1892,-1921,-1947,-1956,-1957,-1972,-2023,-2116,-2237,-2359,-2458,
+-2524,-2558,-2564,-2543,-2497,-2437,-2387,-2370,-2396,-2469,-2583,-2726,-2881,-3023,-3134,-3203,-3222,-3186,-3101,-2998,-2914,
+-2871,-2863,-2874,-2892,-2914,-2936,-2945,-2933,-2905,-2875,-2855,-2842,-2826,-2803,-2774,-2746,-2716,-2677,-2630,-2589,-2568,
+-2569,-2575,-2571,-2560,-2561,-2577,-2593,-2603,-2628,-2703,-2819,-2910,-2901,-2787,-2640,-2549,-2537,-2563,-2581,-2582,-2583,
+-2583,-2572,-2547,-2531,-2545,-2583,-2621,-2641,-2647,-2655,-2683,-2745,-2847,-2969,-3065,-3097,-3082,-3081,-3134,-3214,-3253,
+-3232,-3230,-3357,-3642,-3986,-4240,-4333,-4314,-4284,-4297,-4331,-4348,-4346,-4361,-4417,-4500,-4583,-4651,-4711,-4772,-4832,
+-4886,-4936,-4988,-5042,-5093,-5137,-5175,-5204,-5222,-5232,-5237,-5240,-5237,-5225,-5205,-5181,-5154,-5121,-5084,-5048,-5018,
+-4988,-4957,-4929,-4911,-4907,-4911,-4914,-4917,-4921,-4925,-4929,-4934,-4944,-4962,-4981,-4996,-5007,-5020,-5033,-5041,-5037,
+-5021,-5000,-4979,-4959,-4937,-4913,-4886,-4859,-4834,-4809,-4776,-4733,-4685,-4641,-4604,-4566,-4523,-4479,-4437,-4396,-4350,
+-4295,-4241,-4192,-4144,-4086,-4017,-3943,-3875,-3811,-3744,-3672,-3600,-3530,-3460,-3388,-3315,-3242,-3168,-3091,-3012,-2937,
+-2864,-2789,-2706,-2619,-2532,-2446,-2362,-2278,-2195,-2112,-2022,-1921,-1816,-1713,-1618,-1529,-1438,-1345,-1254,-1168,-1085,
+-995,-888,-768,-652,-555,-478,-408,-335,-266,-212,-175,-140,-92,-29,37,99,155,207,255,301,346,
+389,428,462,495,534,578,623,665,708,754,801,844,884,924,970,1020,1067,1110,1151,1190,1226,
+1259,1291,1326,1359,1388,1415,1446,1485,1535,1588,1637,1676,1709,1740,1777,1820,1866,1908,1946,1983,2022,
+2066,2111,2152,2186,2209,2226,2244,2270,2304,2342,2381,2421,2457,2483,2497,2504,2509,2516,2521,2524,2525,
+2526,2524,2518,2511,2509,2511,2517,2528,2547,2579,2619,2663,2709,2760,2812,2860,2905,2956,3018,3084,3143,
+3191,3241,3301,3366,3420,3449,3450,3430,3393,3343,3285,3222,3157,3092,3035,3001,3001,3037,3098,3177,3268,
+3371,3475,3564,3628,3673,3716,3768,3825,3871,3896,3902,3898,3900,3914,3941,3972,4001,4024,4038,4036,4008,
+3951,3880,3818,3776,3749,3716,3669,3612,3550,3485,3417,3355,3307,3272,3242,3214,3197,3202,3224,3244,3247,
+3237,3222,3205,3183,3156,3127,3096,3055,2996,2923,2849,2783,2731,2692,2660,2627,2589,2551,2552,2522,2514,
+2518,2520,2518,2521,2535,2550,2559,2576,2620,2691,2762,2812,2850,2903,2976,3046,3094,3131,3180,3244,3299,
+3321,3309,3277,3239,3204,3180,3176,3191,3207,3207,3188,3162,3139,3122,3110,3099,3079,3041,2984,2927,2889,
+2874,2864,2845,2817,2787,2756,2719,2680,2656,2653,2657,2651,2634,2625,2638,2664,2693,2728,2783,2855,2921,
+2960,2977,2989,2999,2988,2940,2865,2788,2728,2682,2639,2596,2557,2523,2488,2447,2397,2337,2275,2221,2187,
+2177,2176,2163,2118,2042,1948,1858,1786,1734,1694,1655,1615,1576,1540,1503,1463,1425,1397,1380,1364,1345,
+1327,1317,1315,1312,1304,1293,1279,1261,1242,1234,1244,1266,1286,1291,1287,1282,1275,1261,1242,1231,1239,
+1261,1288,1320,1363,1415,1450,1439,1379,1297,1229,1192,1180,1173,1164,1163,1181,1222,1277,1331,1370,1389,
+1386,1357,1305,1246,1203,1192,1203,1213,1206,1186,1167,1149,1123,1080,1027,975,922,859,786,710,637,
+561,477,388,303,219,125,25,-62,-118,-152,-191,-262,-368,-495,-626,-757,-883,-1007,-1130,-1257,-1387,
+-1519,-1652,-1789,-1930,-2072,-2212,-2348,-2476,-2588,-2675,-2736,-2779,-2814,-2850,-2893,-2942,-2988,-3020,-3037,-3055,-3086,
+-3121,-3139,-3141,-3145,-3165,-3193,-3219,-3252,-3298,-3325,-3276,-3134,-2956,-2816,-2723,-2615,-2447,-2253,-2121,-2094,-2140,
+-2198,-2246,-2297,-2360,-2419,-2455,-2472,-2492,-2533,-2596,-2675,-2756,-2823,-2870,-2901,-2930,-2964,-2997,-3023,-3045,-3068,
+-3088,-3103,-3123,-3170,-3257,-3378,-3516,-3660,-3804,-3938,-4043,-4108,-4146,-4184,-4238,-4302,-4360,-4402,-4433,-4461,-4486,
+-4499,-4501,-4501,-4515,-4537,-4547,-4529,-4490,-4456,-4444,-4452,-4467,-4491,-4531,-4588,-4648,-4699,-4739,-4772,-4789,-4777,
+-4741,-4717,-4742,-4826,-4949,-5079,-5199,-5300,-5376,-5425,-5455,-5483,-5523,-5577,-5640,-5705,-5772,-5840,-5907,-5972,-6035,
+-6094,-6146,-6190,-6227,-6264,-6302,-6340,-6375,-6410,-6451,-6501,-6558,-6612,-6657,-6691,-6714,-6724,-6716,-6690,-6656,-6629,
+-6616,-6614,-6611,-6598,-6567,-6511,-6431,-6340,-6253,-6178,-6104,-6014,-5898,-5760,-5617,-5485,-5379,-5300,-5230,-5146,-5043,
+-4945,-4886,-4871,-4875,-4876,-4879,-4901,-4944,-4991,-5040,-5118,-5250,-5421,-5577,-5676,-5728,-5764,-5786,-5748,-5599,-5349,
+-5082,-4904,-4859,-4899,-4926,-4874,-4755,-4635,-4558,-4504,-4423,-4298,-4161,-4053,-3979,-3914,-3846,-3793,-3771,-3773,-3767,
+-3738,-3697,-3666,-3648,-3631,-3597,-3545,-3484,-3420,-3361,-3308,-3260,-3212,-3160,-3106,-3063,-3045,-3054,-3080,-3097,-3090,
+-3057,-3011,-2964,-2917,-2864,-2811,-2766,-2731,-2693,-2636,-2559,-2478,-2412,-2366,-2325,-2268,-2179,-2065,-1954,-1882,-1861,
+-1868,-1861,-1817,-1742,-1664,-1598,-1532,-1450,-1344,-1222,-1101,-998,-920,-856,-784,-694,-596,-504,-419,-325,-209,
+-84,32,136,241,351,456,549,636,732,833,922,994,1057,1125,1201,1275,1347,1428,1516,1603,1678,
+1744,1810,1877,1943,2010,2086,2173,2267,2358,2445,2534,2622,2703,2769,2817,2843,2852,2863,2897,2958,3023,
+3066,3079,3074,3062,3035,2976,2879,2758,2638,2539,2482,2480,2542,2665,2834,3022,3196,3326,3403,3446,3481,
+3517,3545,3556,3554,3552,3561,3576,3589,3596,3601,3614,3645,3700,3769,3833,3876,3895,3907,3928,3967,4019,
+4075,4127,4172,4209,4241,4264,4280,4297,4321,4352,4382,4409,4435,4440,4373,4197,3959,3792,3814,3993,4146,
+4095,3836,3547,3422,3504,3678,3802,3833,3825,3838,3872,3877,3816,3697,3559,3439,3352,3294,3249,3203,3147,
+3075,2990,2901,2821,2765,2735,2722,2709,2688,2662,2641,2623,2595,2543,2476,2415,2371,2335,2288,2224,2155,
+2094,2036,1970,1897,1830,1782,1747,1710,1660,1600,1538,1476,1414,1355,1304,1260,1221,1182,1146,1112,1079,
+1047,1022,1004,984,949,898,843,798,762,719,667,618,590,584,584,576,556,526,487,434,371,
+308,258,224,200,181,162,145,127,104,75,38,-3,-41,-70,-88,-101,-118,-144,-177,-215,-255,
+-290,-315,-331,-346,-362,-377,-387,-397,-413,-438,-463,-480,-488,-496,-505,-513,-517,-521,-528,-535,-538,
+-537,-539,-543,-545,-539,-528,-518,-512,-509,-506,-500,-487,-466,-444,-430,-424,-419,-409,-399,-398,-406,
+-409,-401,-390,-386,-385,-375,-356,-339,-332,-321,-299,-272,-260,-261,-255,-229,-197,-183,-191,-205,-215,
+-215,-186,-99,57,249,411,497,495,410,255,71,-59,-66,44,181,252,243,215,216,235,229,
+187,148,156,213,281,321,322,305,296,305,319,318,302,289,298,327,355,369,376,386,396,
+392,374,355,347,343,328,300,275,263,258,249,236,226,223,220,207,186,166,149,129,104,
+80,60,42,20,-6,-31,-57,-89,-132,-178,-220,-255,-290,-328,-366,-400,-432,-470,-513,-558,-600,
+-639,-675,-708,-740,-773,-810,-846,-878,-906,-935,-967,-1000,-1032,-1062,-1093,-1124,-1156,-1189,-1223,-1255,-1282,
+-1307,-1335,-1369,-1401,-1428,-1454,-1484,-1517,-1544,-1564,-1584,-1611,-1643,-1674,-1702,-1735,-1773,-1808,-1837,-1862,-1894,
+-1931,-1967,-1995,-2020,-2049,-2081,-2116,-2153,-2195,-2239,-2279,-2311,-2343,-2378,-2418,-2459,-2502,-2549,-2599,-2643,-2679,
+-2711,-2746,-2787,-2833,-2880,-2927,-2972,-3014,-3051,-3086,-3123,-3163,-3203,-3241,-3278,-3315,-3354,-3393,-3430,-3466,-3503,
+-3543,-3586,-3629,-3667,-3701,-3734,-3772,-3815,-3856,-3894,-3931,-3971,-4013,-4050,-4081,-4109,-4138,-4170,-4202,-4232,-4261,
+-4287,-4310,-4331,-4356,-4385,-4413,-4436,-4457,-4479,-4504,-4527,-4542,-4549,-4551,-4553,-4559,-4569,-4583,-4600,-4617,-4629,
+-4630,-4622,-4609,-4598,-4591,-4590,-4592,-4597,-4604,-4612,-4613,-4605,-4591,-4577,-4567,-4559,-4547,-4530,-4511,-4492,-4477,
+-4463,-4448,-4427,-4399,-4369,-4344,-4326,-4307,-4273,-4228,-4190,-4179,-4189,-4192,-4154,-4060,-3931,-3811,-3746,-3741,-3761,
+-3750,-3683,-3588,-3518,-3504,-3532,-3561,-3566,-3541,-3494,-3429,-3350,-3265,-3190,-3128,-3071,-3004,-2924,-2836,-2746,-2648,
+-2532,-2402,-2281,-2201,-2172,-2176,-2182,-2173,-2149,-2124,-2109,-2104,-2106,-2111,-2111,-2100,-2075,-2034,-1981,-1920,-1863,
+-1826,-1823,-1849,-1885,-1914,-1932,-1943,-1958,-1991,-2057,-2162,-2289,-2407,-2486,-2523,-2524,-2500,-2453,-2391,-2332,-2304,
+-2327,-2406,-2538,-2705,-2882,-3042,-3166,-3240,-3260,-3223,-3139,-3038,-2955,-2908,-2892,-2889,-2891,-2898,-2907,-2906,-2891,
+-2871,-2858,-2855,-2852,-2835,-2805,-2772,-2743,-2711,-2670,-2623,-2584,-2565,-2564,-2563,-2550,-2533,-2531,-2548,-2562,-2560,
+-2565,-2621,-2734,-2847,-2876,-2795,-2665,-2572,-2551,-2567,-2573,-2560,-2548,-2546,-2536,-2509,-2487,-2499,-2549,-2606,-2640,
+-2644,-2642,-2664,-2729,-2835,-2952,-3041,-3080,-3095,-3133,-3210,-3283,-3298,-3265,-3283,-3451,-3767,-4108,-4329,-4382,-4334,
+-4288,-4290,-4319,-4342,-4356,-4385,-4441,-4514,-4588,-4657,-4722,-4779,-4827,-4869,-4918,-4974,-5030,-5078,-5119,-5158,-5194,
+-5221,-5237,-5247,-5253,-5252,-5238,-5216,-5192,-5168,-5141,-5109,-5077,-5048,-5019,-4989,-4961,-4946,-4946,-4954,-4962,-4965,
+-4963,-4959,-4956,-4956,-4966,-4984,-5006,-5025,-5039,-5052,-5065,-5073,-5070,-5056,-5032,-5005,-4980,-4957,-4933,-4904,-4873,
+-4846,-4822,-4794,-4756,-4710,-4668,-4631,-4595,-4551,-4504,-4461,-4421,-4375,-4319,-4262,-4213,-4168,-4115,-4048,-3976,-3909,
+-3847,-3780,-3705,-3628,-3554,-3483,-3411,-3338,-3266,-3193,-3117,-3039,-2962,-2889,-2816,-2738,-2653,-2566,-2480,-2396,-2313,
+-2231,-2147,-2057,-1960,-1859,-1758,-1663,-1573,-1484,-1393,-1303,-1215,-1127,-1032,-925,-811,-707,-619,-544,-471,-396,
+-330,-283,-250,-214,-161,-95,-28,31,86,138,186,228,267,308,349,386,419,456,502,552,601,
+645,686,728,771,816,863,910,956,999,1040,1080,1120,1154,1184,1212,1242,1273,1303,1331,1364,1405,
+1456,1512,1563,1604,1635,1661,1693,1733,1779,1825,1871,1915,1961,2009,2055,2096,2129,2154,2176,2201,2229,
+2259,2290,2322,2358,2391,2415,2430,2443,2458,2472,2477,2474,2469,2467,2467,2469,2471,2478,2488,2499,2515,
+2540,2576,2617,2657,2699,2746,2798,2847,2893,2945,3010,3084,3151,3206,3253,3306,3365,3418,3450,3456,3438,
+3400,3344,3270,3183,3095,3022,2983,2989,3039,3118,3202,3277,3345,3416,3492,3561,3615,3662,3718,3789,3854,
+3892,3898,3894,3902,3927,3955,3976,3991,4007,4026,4039,4031,3995,3931,3853,3776,3715,3667,3622,3573,3520,
+3467,3415,3364,3314,3272,3239,3206,3174,3152,3155,3180,3205,3211,3196,3174,3154,3136,3114,3088,3056,3012,
+2952,2878,2804,2744,2704,2679,2660,2634,2595,2552,2561,2537,2534,2544,2553,2561,2572,2589,2603,2612,2634,
+2688,2774,2861,2927,2978,3036,3110,3179,3220,3241,3267,3311,3359,3388,3391,3372,3344,3314,3295,3295,3311,
+3323,3314,3282,3238,3197,3168,3149,3134,3114,3075,3016,2956,2913,2891,2877,2856,2826,2793,2759,2719,2678,
+2648,2637,2635,2625,2607,2594,2601,2623,2654,2692,2747,2815,2876,2915,2937,2953,2962,2945,2890,2815,2747,
+2697,2656,2609,2553,2496,2442,2388,2334,2284,2239,2197,2157,2126,2114,2116,2113,2080,2010,1916,1826,1760,
+1720,1691,1658,1618,1577,1540,1501,1458,1414,1380,1356,1335,1313,1293,1283,1280,1277,1269,1260,1253,1248,
+1246,1253,1274,1298,1307,1296,1276,1266,1268,1272,1269,1262,1259,1263,1273,1293,1330,1381,1424,1433,1394,
+1321,1245,1189,1157,1141,1131,1127,1136,1162,1200,1237,1264,1277,1277,1257,1217,1168,1136,1135,1155,1171,
+1164,1144,1125,1110,1090,1055,1015,975,930,868,789,709,637,567,487,401,319,239,150,52,-35,
+-95,-129,-169,-241,-347,-472,-601,-728,-858,-992,-1130,-1268,-1400,-1529,-1662,-1805,-1953,-2099,-2236,-2369,-2500,
+-2618,-2710,-2771,-2813,-2848,-2883,-2924,-2971,-3019,-3057,-3080,-3098,-3124,-3154,-3175,-3184,-3197,-3224,-3258,-3291,-3331,
+-3376,-3384,-3295,-3103,-2886,-2738,-2674,-2616,-2496,-2336,-2221,-2201,-2245,-2296,-2331,-2367,-2421,-2482,-2531,-2564,-2592,
+-2633,-2695,-2778,-2867,-2938,-2976,-2990,-3002,-3024,-3047,-3062,-3072,-3087,-3110,-3142,-3189,-3265,-3368,-3482,-3597,-3723,
+-3867,-4014,-4129,-4187,-4200,-4204,-4227,-4271,-4325,-4379,-4432,-4480,-4514,-4531,-4533,-4531,-4531,-4530,-4520,-4496,-4471,
+-4460,-4468,-4492,-4521,-4557,-4603,-4657,-4710,-4755,-4786,-4799,-4787,-4750,-4713,-4714,-4778,-4895,-5030,-5156,-5262,-5347,
+-5410,-5449,-5470,-5490,-5521,-5564,-5615,-5674,-5739,-5808,-5875,-5935,-5988,-6036,-6077,-6113,-6145,-6176,-6207,-6238,-6270,
+-6305,-6343,-6386,-6432,-6481,-6528,-6569,-6601,-6623,-6628,-6613,-6581,-6549,-6531,-6528,-6527,-6514,-6483,-6437,-6380,-6314,
+-6245,-6181,-6117,-6035,-5920,-5776,-5631,-5508,-5414,-5334,-5255,-5171,-5088,-5015,-4957,-4916,-4890,-4873,-4861,-4853,-4845,
+-4841,-4860,-4930,-5069,-5252,-5414,-5499,-5502,-5471,-5446,-5421,-5350,-5210,-5044,-4929,-4903,-4925,-4913,-4823,-4684,-4555,
+-4468,-4399,-4312,-4204,-4102,-4029,-3976,-3921,-3861,-3812,-3790,-3786,-3778,-3750,-3712,-3682,-3666,-3654,-3622,-3559,-3473,
+-3387,-3319,-3270,-3228,-3182,-3133,-3088,-3057,-3049,-3067,-3104,-3136,-3138,-3101,-3043,-2987,-2939,-2891,-2837,-2785,-2742,
+-2701,-2648,-2576,-2500,-2438,-2391,-2343,-2276,-2182,-2071,-1968,-1896,-1864,-1852,-1827,-1769,-1687,-1608,-1542,-1480,-1397,
+-1285,-1155,-1030,-931,-865,-814,-752,-665,-563,-466,-374,-272,-148,-17,101,204,306,419,533,636,728,
+819,905,978,1035,1091,1159,1236,1309,1380,1458,1547,1637,1716,1784,1849,1913,1974,2036,2113,2207,2308,
+2404,2491,2574,2653,2719,2764,2791,2810,2832,2867,2912,2952,2961,2933,2890,2862,2855,2849,2815,2747,2658,
+2569,2505,2492,2549,2670,2825,2980,3117,3234,3336,3426,3503,3569,3618,3646,3652,3649,3647,3649,3648,3641,
+3631,3626,3635,3667,3726,3802,3872,3915,3929,3930,3942,3977,4033,4094,4146,4185,4218,4253,4287,4312,4328,
+4347,4380,4417,4448,4468,4467,4410,4255,4020,3817,3770,3883,4006,3969,3754,3525,3462,3598,3801,3918,3912,
+3852,3822,3838,3860,3840,3759,3636,3509,3416,3379,3382,3390,3367,3302,3205,3091,2977,2881,2818,2786,2768,
+2744,2712,2684,2663,2638,2600,2553,2510,2473,2430,2367,2294,2229,2180,2131,2064,1981,1902,1843,1798,1754,
+1698,1633,1565,1499,1439,1387,1343,1302,1261,1222,1191,1167,1144,1114,1080,1049,1019,981,932,878,832,
+794,756,713,674,650,644,641,627,600,565,527,482,428,369,316,274,245,222,201,178,154,
+128,100,66,27,-10,-34,-44,-53,-74,-109,-151,-188,-219,-246,-272,-295,-317,-335,-346,-350,-356,
+-373,-402,-432,-451,-460,-469,-480,-491,-494,-495,-500,-509,-515,-515,-515,-517,-517,-513,-506,-503,-505,
+-505,-503,-499,-491,-476,-455,-438,-430,-427,-419,-407,-401,-406,-411,-405,-391,-381,-375,-363,-340,-316,
+-302,-295,-284,-263,-246,-239,-238,-233,-227,-226,-230,-231,-225,-209,-166,-66,102,307,492,609,637,
+571,421,243,137,175,326,480,545,537,535,570,591,532,407,303,297,380,479,527,513,476,
+455,460,464,434,369,302,274,295,338,371,387,398,411,416,402,380,367,364,357,334,306,
+288,283,282,276,267,260,253,242,229,219,209,194,170,144,125,108,86,57,29,5,-19,
+-55,-98,-140,-177,-213,-252,-293,-332,-368,-407,-449,-492,-534,-575,-616,-654,-689,-726,-766,-809,-847,
+-878,-906,-936,-969,-1004,-1038,-1072,-1105,-1137,-1170,-1204,-1235,-1260,-1284,-1312,-1346,-1381,-1410,-1436,-1464,-1497,
+-1525,-1546,-1565,-1591,-1623,-1654,-1683,-1716,-1754,-1790,-1819,-1846,-1879,-1916,-1951,-1979,-2005,-2037,-2075,-2113,-2149,
+-2185,-2220,-2253,-2282,-2312,-2348,-2389,-2433,-2479,-2529,-2581,-2628,-2667,-2701,-2737,-2779,-2825,-2869,-2912,-2952,-2991,
+-3027,-3065,-3107,-3150,-3192,-3231,-3269,-3307,-3346,-3384,-3422,-3461,-3501,-3545,-3590,-3633,-3672,-3705,-3740,-3779,-3823,
+-3865,-3902,-3936,-3974,-4014,-4052,-4084,-4110,-4136,-4166,-4198,-4230,-4259,-4282,-4302,-4323,-4350,-4381,-4412,-4438,-4461,
+-4484,-4509,-4530,-4544,-4552,-4557,-4564,-4573,-4585,-4601,-4619,-4635,-4644,-4646,-4640,-4631,-4624,-4622,-4625,-4629,-4631,
+-4632,-4634,-4636,-4631,-4618,-4601,-4586,-4576,-4567,-4554,-4536,-4517,-4501,-4486,-4469,-4446,-4418,-4388,-4361,-4341,-4322,
+-4296,-4258,-4212,-4175,-4163,-4174,-4176,-4126,-4011,-3864,-3752,-3718,-3743,-3760,-3719,-3626,-3535,-3492,-3500,-3530,-3549,
+-3543,-3510,-3453,-3376,-3291,-3210,-3141,-3082,-3021,-2951,-2871,-2782,-2682,-2567,-2437,-2308,-2208,-2155,-2147,-2159,-2161,
+-2142,-2104,-2066,-2043,-2042,-2058,-2076,-2083,-2068,-2029,-1967,-1893,-1827,-1793,-1797,-1823,-1851,-1873,-1898,-1930,-1965,
+-1998,-2043,-2120,-2229,-2343,-2429,-2471,-2476,-2455,-2413,-2354,-2297,-2269,-2294,-2380,-2524,-2705,-2892,-3058,-3182,-3257,
+-3281,-3257,-3192,-3111,-3041,-2995,-2967,-2943,-2919,-2900,-2885,-2871,-2857,-2849,-2851,-2856,-2847,-2818,-2779,-2743,-2716,
+-2689,-2656,-2620,-2592,-2579,-2576,-2570,-2552,-2531,-2522,-2530,-2538,-2532,-2527,-2563,-2659,-2774,-2831,-2786,-2676,-2579,
+-2542,-2544,-2540,-2517,-2495,-2489,-2485,-2466,-2443,-2449,-2497,-2564,-2611,-2625,-2630,-2662,-2738,-2844,-2945,-3009,-3030,
+-3041,-3079,-3155,-3236,-3288,-3326,-3418,-3618,-3905,-4182,-4352,-4396,-4367,-4328,-4310,-4308,-4319,-4351,-4404,-4467,-4525,
+-4581,-4642,-4709,-4770,-4815,-4854,-4903,-4963,-5021,-5066,-5103,-5142,-5183,-5217,-5240,-5254,-5262,-5261,-5247,-5224,-5201,
+-5181,-5159,-5132,-5101,-5073,-5047,-5022,-4998,-4985,-4984,-4994,-5004,-5009,-5008,-5002,-4993,-4987,-4991,-5006,-5028,-5050,
+-5069,-5084,-5094,-5100,-5098,-5087,-5066,-5038,-5007,-4979,-4952,-4922,-4890,-4860,-4834,-4808,-4774,-4735,-4699,-4666,-4629,
+-4581,-4526,-4476,-4434,-4389,-4335,-4279,-4228,-4184,-4134,-4073,-4006,-3941,-3879,-3809,-3731,-3650,-3575,-3504,-3432,-3359,
+-3288,-3218,-3146,-3070,-2993,-2918,-2843,-2765,-2682,-2597,-2514,-2432,-2350,-2265,-2180,-2092,-1999,-1903,-1805,-1708,-1614,
+-1524,-1435,-1346,-1256,-1161,-1061,-957,-857,-768,-689,-614,-539,-466,-407,-364,-328,-284,-225,-159,-95,-36,
+18,72,119,157,193,232,274,313,347,384,428,480,533,579,618,655,696,744,796,846,891,
+929,965,1003,1041,1077,1109,1138,1168,1197,1225,1255,1289,1333,1385,1440,1493,1535,1568,1596,1626,1662,
+1704,1751,1800,1852,1904,1955,2003,2044,2075,2100,2125,2155,2186,2214,2238,2262,2289,2316,2338,2357,2380,
+2405,2423,2426,2418,2408,2405,2407,2412,2422,2438,2458,2479,2501,2531,2568,2607,2644,2683,2728,2780,2830,
+2878,2929,2993,3068,3142,3206,3262,3319,3375,3419,3440,3436,3411,3372,3319,3247,3162,3081,3026,3016,3053,
+3124,3203,3269,3318,3360,3413,3478,3542,3597,3654,3727,3812,3881,3907,3897,3887,3908,3952,3992,4011,4015,
+4019,4025,4019,3991,3942,3878,3804,3727,3656,3594,3538,3484,3431,3383,3341,3302,3264,3229,3197,3167,3139,
+3122,3128,3155,3184,3190,3168,3132,3099,3075,3056,3034,3007,2967,2910,2841,2771,2718,2689,2676,2664,2639,
+2601,2561,2585,2574,2581,2594,2601,2605,2613,2630,2647,2664,2695,2759,2855,2957,3040,3102,3164,3235,3299,
+3336,3349,3358,3381,3415,3445,3460,3459,3445,3422,3404,3402,3420,3441,3440,3404,3341,3272,3216,3181,3160,
+3138,3103,3051,2994,2947,2916,2893,2867,2836,2800,2760,2715,2672,2639,2623,2616,2605,2586,2571,2571,2589,
+2620,2664,2719,2779,2830,2866,2891,2913,2924,2904,2850,2780,2719,2676,2636,2585,2520,2449,2374,2298,2229,
+2178,2147,2124,2098,2071,2056,2057,2058,2032,1968,1877,1790,1730,1700,1683,1660,1624,1579,1531,1483,1433,
+1389,1357,1336,1319,1297,1274,1259,1253,1251,1250,1250,1252,1254,1261,1277,1302,1324,1325,1303,1275,1262,
+1270,1286,1297,1297,1289,1277,1267,1269,1292,1335,1379,1400,1383,1329,1257,1187,1137,1110,1101,1098,1096,
+1096,1104,1120,1143,1164,1173,1160,1124,1080,1056,1066,1099,1126,1127,1108,1088,1072,1055,1030,1002,975,
+939,878,796,711,638,572,501,422,344,269,184,89,0,-64,-105,-149,-223,-329,-453,-580,-709,
+-843,-984,-1127,-1269,-1405,-1539,-1679,-1829,-1982,-2126,-2258,-2387,-2519,-2642,-2738,-2803,-2847,-2881,-2911,-2942,-2980,
+-3028,-3074,-3106,-3127,-3149,-3172,-3190,-3204,-3223,-3254,-3288,-3320,-3363,-3412,-3413,-3297,-3064,-2811,-2656,-2618,-2612,
+-2553,-2444,-2360,-2346,-2382,-2420,-2448,-2483,-2532,-2583,-2618,-2639,-2663,-2703,-2768,-2859,-2957,-3031,-3062,-3063,-3064,
+-3080,-3101,-3117,-3131,-3153,-3189,-3238,-3307,-3400,-3509,-3615,-3711,-3811,-3936,-4071,-4179,-4232,-4240,-4236,-4246,-4274,
+-4317,-4373,-4439,-4498,-4538,-4554,-4557,-4556,-4550,-4530,-4498,-4467,-4455,-4470,-4508,-4553,-4597,-4638,-4681,-4729,-4776,
+-4813,-4829,-4816,-4777,-4733,-4716,-4756,-4853,-4983,-5112,-5220,-5307,-5374,-5420,-5445,-5458,-5470,-5491,-5523,-5570,-5633,
+-5709,-5788,-5857,-5913,-5961,-6003,-6042,-6077,-6109,-6138,-6164,-6185,-6208,-6237,-6273,-6311,-6350,-6392,-6436,-6478,-6511,
+-6535,-6546,-6542,-6522,-6496,-6476,-6465,-6450,-6420,-6379,-6342,-6311,-6272,-6215,-6145,-6067,-5977,-5863,-5732,-5610,-5519,
+-5452,-5385,-5308,-5229,-5161,-5097,-5027,-4952,-4890,-4854,-4836,-4818,-4792,-4763,-4757,-4800,-4908,-5061,-5199,-5260,-5232,
+-5164,-5118,-5112,-5108,-5068,-5000,-4949,-4936,-4928,-4875,-4762,-4620,-4492,-4386,-4288,-4188,-4100,-4043,-4013,-3984,-3940,
+-3884,-3837,-3811,-3800,-3786,-3758,-3721,-3688,-3669,-3654,-3620,-3549,-3451,-3357,-3289,-3245,-3206,-3159,-3111,-3074,-3052,
+-3049,-3071,-3116,-3163,-3180,-3149,-3091,-3035,-2992,-2945,-2883,-2815,-2758,-2712,-2660,-2595,-2525,-2466,-2416,-2360,-2284,
+-2193,-2097,-2010,-1938,-1882,-1834,-1780,-1709,-1628,-1552,-1487,-1420,-1332,-1217,-1088,-969,-880,-823,-778,-719,-630,
+-522,-417,-318,-210,-83,52,176,283,388,503,620,723,812,894,971,1033,1079,1125,1188,1266,1344,
+1419,1497,1585,1673,1750,1818,1882,1944,1999,2056,2130,2228,2337,2438,2520,2588,2645,2687,2714,2739,2776,
+2828,2883,2913,2894,2821,2723,2647,2625,2648,2673,2665,2621,2563,2517,2506,2552,2664,2823,2984,3107,3190,
+3257,3334,3425,3515,3592,3647,3684,3707,3725,3736,3734,3711,3673,3637,3616,3622,3660,3730,3819,3898,3944,
+3955,3951,3959,3993,4050,4113,4164,4199,4228,4265,4306,4336,4354,4375,4414,4459,4487,4495,4494,4463,4350,
+4139,3918,3820,3879,3965,3908,3686,3464,3429,3604,3836,3953,3915,3806,3728,3714,3738,3751,3719,3638,3535,
+3460,3444,3475,3505,3496,3444,3369,3278,3170,3049,2940,2862,2815,2781,2750,2723,2701,2676,2641,2603,2567,
+2531,2481,2415,2348,2299,2265,2226,2163,2080,1995,1923,1862,1803,1741,1672,1600,1530,1468,1418,1381,1348,
+1314,1281,1253,1231,1210,1181,1142,1098,1054,1008,958,907,860,824,796,771,748,729,715,699,678,
+648,613,576,534,488,437,385,337,297,265,239,212,181,149,118,90,60,33,16,7,-5,
+-34,-78,-120,-148,-165,-183,-209,-238,-265,-284,-296,-304,-314,-334,-364,-396,-417,-429,-439,-450,-458,
+-458,-456,-462,-475,-486,-489,-487,-486,-487,-486,-485,-489,-496,-499,-497,-492,-490,-483,-467,-447,-434,
+-429,-422,-408,-396,-396,-400,-394,-377,-358,-347,-336,-314,-287,-269,-265,-264,-253,-234,-217,-209,-205,
+-203,-202,-199,-191,-177,-158,-123,-49,73,227,376,485,529,495,396,298,289,408,588,710,728,
+712,764,885,967,909,737,572,516,569,656,714,734,741,752,760,735,652,513,366,272,262,
+305,350,369,375,390,408,412,396,378,372,372,366,350,335,329,326,319,309,299,290,279,
+268,261,256,246,225,199,177,160,138,110,84,65,47,20,-17,-58,-94,-130,-169,-211,-255,
+-297,-341,-385,-428,-468,-510,-556,-601,-643,-681,-723,-767,-810,-848,-881,-913,-946,-980,-1015,-1052,-1088,
+-1121,-1152,-1182,-1211,-1237,-1262,-1290,-1325,-1361,-1392,-1419,-1448,-1482,-1513,-1536,-1555,-1579,-1607,-1637,-1667,-1698,
+-1734,-1769,-1799,-1827,-1859,-1894,-1926,-1952,-1981,-2019,-2064,-2107,-2143,-2174,-2203,-2232,-2262,-2294,-2330,-2372,-2417,
+-2466,-2517,-2569,-2615,-2655,-2692,-2731,-2775,-2819,-2861,-2900,-2937,-2974,-3012,-3054,-3099,-3146,-3191,-3232,-3272,-3310,
+-3347,-3383,-3420,-3461,-3504,-3547,-3591,-3633,-3674,-3710,-3745,-3782,-3823,-3864,-3902,-3936,-3971,-4009,-4046,-4079,-4107,
+-4133,-4162,-4193,-4224,-4252,-4274,-4294,-4315,-4342,-4374,-4405,-4432,-4457,-4482,-4507,-4528,-4544,-4554,-4563,-4571,-4581,
+-4595,-4614,-4634,-4650,-4658,-4660,-4659,-4658,-4658,-4662,-4669,-4673,-4670,-4662,-4655,-4653,-4650,-4638,-4617,-4597,-4586,
+-4579,-4570,-4555,-4537,-4521,-4503,-4481,-4455,-4431,-4409,-4385,-4356,-4329,-4307,-4286,-4253,-4211,-4179,-4176,-4190,-4174,
+-4088,-3944,-3805,-3732,-3731,-3751,-3735,-3665,-3573,-3503,-3479,-3494,-3524,-3541,-3527,-3479,-3405,-3320,-3237,-3162,-3098,
+-3042,-2984,-2914,-2826,-2722,-2607,-2486,-2362,-2251,-2172,-2138,-2138,-2146,-2136,-2098,-2050,-2013,-2004,-2018,-2037,-2046,
+-2035,-2003,-1950,-1883,-1820,-1781,-1772,-1775,-1774,-1773,-1795,-1848,-1920,-1985,-2041,-2103,-2185,-2280,-2362,-2413,-2428,
+-2411,-2368,-2313,-2267,-2253,-2289,-2383,-2528,-2706,-2891,-3053,-3176,-3254,-3287,-3278,-3235,-3176,-3122,-3081,-3048,-3011,
+-2968,-2925,-2886,-2857,-2838,-2833,-2837,-2835,-2815,-2778,-2737,-2704,-2682,-2665,-2651,-2642,-2638,-2638,-2635,-2623,-2600,
+-2570,-2541,-2524,-2514,-2504,-2495,-2516,-2587,-2692,-2767,-2759,-2672,-2568,-2505,-2488,-2481,-2462,-2441,-2437,-2443,-2438,
+-2418,-2410,-2440,-2499,-2552,-2581,-2604,-2655,-2747,-2857,-2946,-2983,-2975,-2952,-2955,-3006,-3103,-3230,-3377,-3541,-3719,
+-3894,-4047,-4165,-4252,-4311,-4337,-4323,-4290,-4275,-4308,-4381,-4458,-4515,-4560,-4614,-4682,-4747,-4796,-4837,-4888,-4950,
+-5009,-5055,-5095,-5138,-5183,-5220,-5244,-5257,-5265,-5266,-5255,-5236,-5215,-5194,-5171,-5142,-5112,-5087,-5068,-5051,-5035,
+-5021,-5015,-5017,-5025,-5034,-5040,-5040,-5034,-5027,-5028,-5038,-5057,-5079,-5100,-5116,-5125,-5126,-5122,-5113,-5096,-5070,
+-5037,-5004,-4973,-4944,-4914,-4883,-4853,-4824,-4792,-4757,-4726,-4697,-4661,-4612,-4553,-4498,-4451,-4405,-4353,-4296,-4243,
+-4194,-4145,-4090,-4030,-3969,-3905,-3833,-3755,-3677,-3605,-3536,-3465,-3390,-3319,-3252,-3185,-3113,-3035,-2955,-2875,-2792,
+-2708,-2627,-2548,-2469,-2386,-2299,-2211,-2124,-2036,-1944,-1848,-1750,-1654,-1563,-1475,-1388,-1294,-1192,-1084,-980,-890,
+-813,-741,-669,-599,-538,-491,-451,-408,-351,-285,-218,-157,-100,-45,6,51,87,123,161,203,244,
+282,321,366,417,468,513,552,588,628,674,725,775,819,856,890,925,960,996,1030,1064,1096,
+1126,1155,1186,1223,1268,1320,1374,1425,1469,1506,1539,1572,1607,1646,1691,1742,1796,1850,1903,1951,1991,
+2021,2046,2072,2104,2138,2168,2190,2210,2230,2249,2267,2289,2316,2344,2360,2359,2349,2341,2341,2345,2353,
+2368,2394,2425,2455,2483,2514,2551,2589,2626,2665,2709,2758,2807,2855,2906,2967,3039,3114,3186,3256,3324,
+3386,3428,3441,3424,3388,3341,3283,3212,3136,3076,3055,3080,3138,3205,3260,3295,3318,3345,3389,3448,3513,
+3578,3652,3742,3837,3903,3919,3903,3895,3922,3970,4009,4023,4023,4021,4013,3985,3938,3882,3824,3761,3690,
+3615,3545,3482,3421,3363,3312,3272,3240,3209,3177,3150,3129,3113,3105,3115,3142,3170,3174,3144,3092,3042,
+3008,2988,2975,2959,2931,2884,2821,2758,2712,2691,2685,2674,2649,2615,2585,2627,2630,2646,2659,2661,2656,
+2656,2669,2688,2712,2750,2818,2919,3032,3128,3200,3261,3322,3378,3414,3429,3434,3448,3472,3498,3517,3526,
+3522,3505,3482,3474,3492,3528,3548,3524,3452,3358,3275,3221,3188,3162,3128,3083,3033,2982,2938,2903,2874,
+2844,2809,2766,2718,2673,2638,2616,2603,2590,2573,2554,2547,2559,2592,2640,2696,2750,2792,2824,2851,2875,
+2886,2868,2818,2753,2695,2651,2609,2557,2492,2415,2330,2242,2165,2114,2090,2076,2056,2029,2011,2007,2005,
+1980,1920,1834,1750,1691,1663,1654,1642,1613,1567,1513,1457,1405,1364,1338,1323,1310,1291,1268,1249,1239,
+1242,1254,1269,1278,1279,1278,1285,1304,1322,1322,1301,1276,1264,1270,1287,1303,1310,1304,1285,1260,1246,
+1253,1283,1320,1350,1356,1330,1274,1200,1132,1089,1074,1069,1055,1031,1013,1019,1048,1084,1104,1095,1061,
+1023,1004,1017,1052,1084,1092,1079,1058,1039,1021,1002,984,967,937,879,796,711,639,578,513,441,
+367,293,211,117,28,-40,-91,-145,-224,-329,-448,-574,-705,-843,-982,-1121,-1259,-1399,-1544,-1697,-1855,
+-2011,-2153,-2284,-2412,-2541,-2661,-2759,-2831,-2883,-2920,-2945,-2963,-2988,-3030,-3076,-3114,-3143,-3169,-3195,-3214,-3230,
+-3252,-3282,-3309,-3333,-3371,-3416,-3408,-3270,-3004,-2724,-2566,-2558,-2611,-2622,-2577,-2531,-2523,-2543,-2568,-2600,-2652,
+-2713,-2754,-2763,-2757,-2761,-2792,-2854,-2941,-3033,-3100,-3125,-3125,-3131,-3156,-3187,-3211,-3233,-3268,-3320,-3384,-3461,
+-3559,-3672,-3779,-3870,-3954,-4049,-4147,-4223,-4260,-4269,-4273,-4284,-4303,-4335,-4387,-4457,-4522,-4562,-4575,-4576,-4576,
+-4566,-4538,-4497,-4466,-4466,-4502,-4561,-4624,-4676,-4715,-4748,-4784,-4823,-4852,-4850,-4813,-4762,-4734,-4760,-4842,-4957,
+-5074,-5175,-5258,-5327,-5379,-5411,-5425,-5432,-5440,-5456,-5483,-5531,-5602,-5689,-5773,-5842,-5897,-5944,-5988,-6024,-6055,
+-6085,-6113,-6135,-6147,-6156,-6174,-6204,-6240,-6277,-6315,-6357,-6398,-6429,-6447,-6455,-6453,-6441,-6421,-6401,-6384,-6360,
+-6323,-6281,-6252,-6237,-6214,-6164,-6088,-6000,-5904,-5794,-5677,-5579,-5517,-5482,-5444,-5390,-5327,-5266,-5199,-5116,-5026,
+-4955,-4917,-4898,-4876,-4844,-4809,-4786,-4792,-4839,-4925,-5014,-5057,-5037,-4985,-4956,-4968,-4996,-5004,-4988,-4969,-4952,
+-4917,-4842,-4733,-4611,-4488,-4359,-4227,-4116,-4050,-4028,-4022,-4003,-3962,-3912,-3872,-3846,-3829,-3808,-3775,-3730,-3685,
+-3653,-3628,-3587,-3513,-3419,-3334,-3278,-3241,-3199,-3146,-3097,-3066,-3052,-3053,-3075,-3122,-3176,-3203,-3182,-3133,-3085,
+-3047,-2999,-2927,-2842,-2773,-2723,-2673,-2611,-2542,-2482,-2428,-2366,-2290,-2207,-2128,-2054,-1975,-1891,-1807,-1726,-1647,
+-1570,-1498,-1430,-1357,-1265,-1154,-1037,-933,-854,-798,-748,-680,-585,-473,-363,-261,-153,-26,110,238,349,
+457,572,682,776,855,934,1014,1079,1122,1162,1221,1302,1389,1466,1539,1617,1699,1777,1847,1913,1974,
+2025,2072,2134,2221,2323,2420,2498,2560,2609,2647,2681,2721,2776,2834,2868,2850,2770,2650,2536,2474,2480,
+2523,2556,2551,2523,2505,2520,2578,2680,2823,2984,3125,3221,3279,3329,3389,3455,3509,3544,3571,3603,3648,
+3701,3744,3754,3726,3674,3622,3591,3591,3628,3702,3797,3883,3938,3959,3966,3981,4017,4071,4131,4182,4218,
+4249,4288,4331,4361,4375,4397,4441,4491,4516,4518,4525,4530,4469,4296,4076,3946,3960,4003,3906,3647,3400,
+3363,3558,3814,3948,3914,3797,3698,3656,3652,3652,3626,3564,3484,3428,3425,3455,3469,3444,3403,3376,3354,
+3299,3187,3046,2920,2837,2790,2763,2744,2729,2709,2680,2643,2603,2560,2510,2457,2411,2376,2340,2290,2220,
+2140,2062,1989,1921,1855,1789,1721,1649,1577,1511,1460,1425,1400,1378,1351,1320,1288,1259,1233,1202,1159,
+1107,1051,994,941,893,858,837,826,818,804,785,760,733,704,671,633,590,545,498,448,394,
+340,296,265,240,210,174,140,115,97,80,64,49,29,-3,-44,-79,-98,-106,-120,-149,-183,
+-210,-227,-240,-254,-271,-294,-324,-353,-376,-391,-400,-409,-415,-414,-413,-420,-436,-449,-452,-450,-451,
+-458,-465,-470,-474,-478,-478,-472,-468,-472,-478,-472,-455,-436,-425,-416,-402,-387,-379,-379,-373,-352,
+-326,-307,-296,-281,-258,-237,-229,-227,-219,-202,-186,-176,-172,-166,-156,-143,-126,-109,-91,-70,-34,
+24,105,192,261,290,267,220,216,319,513,693,750,696,661,766,980,1152,1155,1003,818,704,
+679,713,784,887,1001,1086,1106,1042,894,681,457,294,240,273,326,349,349,358,387,410,407,
+387,374,378,385,386,378,371,364,356,348,341,335,323,308,295,288,280,263,240,218,201,
+184,163,142,126,110,86,51,13,-22,-55,-91,-130,-171,-214,-260,-308,-354,-397,-442,-494,-549,
+-598,-641,-683,-728,-773,-816,-856,-893,-928,-960,-993,-1030,-1068,-1101,-1129,-1156,-1184,-1213,-1242,-1272,-1306,
+-1341,-1372,-1401,-1432,-1467,-1501,-1529,-1551,-1574,-1600,-1629,-1658,-1688,-1722,-1754,-1784,-1813,-1844,-1875,-1903,-1927,
+-1957,-1999,-2048,-2093,-2129,-2157,-2186,-2219,-2253,-2290,-2328,-2369,-2415,-2464,-2514,-2561,-2602,-2640,-2680,-2724,-2771,
+-2817,-2859,-2898,-2936,-2975,-3015,-3058,-3104,-3151,-3197,-3242,-3283,-3321,-3354,-3385,-3421,-3461,-3502,-3542,-3581,-3624,
+-3668,-3710,-3746,-3778,-3813,-3850,-3889,-3926,-3962,-3998,-4035,-4070,-4102,-4131,-4159,-4188,-4215,-4241,-4264,-4284,-4307,
+-4334,-4365,-4395,-4422,-4448,-4474,-4499,-4522,-4540,-4553,-4565,-4574,-4584,-4599,-4620,-4642,-4658,-4666,-4669,-4672,-4678,
+-4684,-4691,-4698,-4701,-4693,-4677,-4664,-4659,-4657,-4646,-4624,-4602,-4591,-4586,-4578,-4563,-4546,-4532,-4513,-4487,-4460,
+-4442,-4431,-4411,-4373,-4329,-4300,-4289,-4277,-4246,-4203,-4179,-4183,-4184,-4136,-4026,-3891,-3787,-3740,-3735,-3728,-3690,
+-3615,-3530,-3470,-3460,-3494,-3536,-3546,-3508,-3437,-3354,-3270,-3189,-3116,-3057,-3006,-2945,-2861,-2758,-2651,-2545,-2437,
+-2323,-2220,-2150,-2124,-2125,-2122,-2098,-2057,-2020,-2004,-2005,-2008,-2000,-1982,-1956,-1917,-1863,-1801,-1750,-1716,-1689,
+-1656,-1626,-1628,-1685,-1788,-1902,-1997,-2068,-2132,-2204,-2281,-2347,-2380,-2369,-2323,-2266,-2231,-2236,-2291,-2391,-2531,
+-2698,-2873,-3032,-3158,-3243,-3284,-3285,-3254,-3207,-3162,-3126,-3094,-3057,-3009,-2953,-2899,-2854,-2825,-2811,-2803,-2790,
+-2766,-2735,-2704,-2677,-2657,-2649,-2659,-2686,-2716,-2734,-2732,-2713,-2681,-2636,-2581,-2529,-2492,-2474,-2466,-2475,-2521,
+-2610,-2702,-2734,-2674,-2560,-2459,-2411,-2400,-2396,-2391,-2397,-2416,-2425,-2410,-2389,-2394,-2435,-2487,-2530,-2571,-2639,
+-2744,-2860,-2944,-2967,-2937,-2884,-2851,-2879,-2997,-3194,-3418,-3598,-3689,-3710,-3729,-3816,-3982,-4170,-4300,-4330,-4291,
+-4252,-4268,-4337,-4420,-4489,-4543,-4599,-4664,-4725,-4774,-4817,-4865,-4923,-4982,-5033,-5080,-5129,-5176,-5214,-5237,-5250,
+-5258,-5262,-5259,-5246,-5226,-5202,-5175,-5146,-5119,-5098,-5084,-5073,-5061,-5048,-5037,-5032,-5035,-5046,-5059,-5067,-5066,
+-5064,-5067,-5077,-5092,-5110,-5129,-5147,-5158,-5158,-5149,-5136,-5120,-5097,-5065,-5029,-4995,-4965,-4937,-4906,-4875,-4842,
+-4809,-4777,-4747,-4720,-4688,-4645,-4593,-4539,-4488,-4438,-4384,-4326,-4268,-4215,-4164,-4112,-4058,-4001,-3937,-3864,-3786,
+-3713,-3647,-3583,-3514,-3440,-3369,-3303,-3238,-3167,-3087,-3002,-2914,-2826,-2741,-2662,-2588,-2509,-2423,-2332,-2242,-2156,
+-2071,-1981,-1888,-1793,-1700,-1610,-1522,-1433,-1336,-1228,-1115,-1009,-921,-849,-780,-712,-652,-607,-573,-536,-482,
+-414,-344,-278,-219,-162,-109,-62,-22,13,51,91,131,170,213,260,310,358,404,447,488,526,
+565,607,653,699,741,780,815,849,883,916,951,987,1023,1057,1089,1124,1163,1209,1259,1311,1360,
+1404,1443,1481,1518,1556,1598,1644,1696,1751,1804,1854,1900,1939,1969,1993,2018,2049,2084,2116,2142,2163,
+2180,2193,2207,2225,2249,2272,2281,2277,2269,2269,2276,2286,2298,2319,2352,2391,2426,2458,2490,2526,2563,
+2601,2641,2685,2733,2779,2825,2876,2935,3003,3075,3150,3226,3303,3371,3418,3433,3418,3382,3331,3265,3187,
+3114,3073,3084,3139,3211,3269,3302,3317,3327,3347,3382,3433,3500,3582,3677,3781,3872,3925,3933,3919,3917,
+3940,3974,3994,3996,3993,3989,3976,3941,3890,3837,3787,3733,3665,3590,3519,3454,3390,3326,3268,3224,3191,
+3161,3133,3111,3099,3093,3092,3101,3121,3141,3139,3105,3047,2988,2947,2927,2920,2914,2897,2860,2807,2753,
+2716,2703,2700,2691,2669,2642,2627,2679,2695,2717,2732,2733,2726,2723,2730,2745,2768,2805,2871,2972,3088,
+3191,3264,3316,3364,3411,3451,3475,3490,3506,3528,3548,3564,3573,3573,3559,3534,3515,3526,3567,3605,3599,
+3534,3434,3341,3276,3234,3199,3160,3118,3070,3014,2957,2910,2876,2851,2819,2776,2727,2681,2642,2612,2592,
+2577,2561,2543,2530,2536,2569,2621,2677,2725,2763,2793,2820,2841,2847,2825,2776,2713,2653,2604,2562,2515,
+2458,2387,2304,2216,2140,2090,2065,2048,2023,1991,1965,1952,1940,1913,1859,1785,1708,1649,1617,1606,1599,
+1579,1542,1495,1447,1404,1368,1341,1321,1306,1291,1276,1261,1254,1260,1281,1307,1321,1314,1296,1284,1288,
+1300,1303,1292,1275,1264,1264,1272,1284,1292,1289,1268,1238,1216,1214,1233,1265,1299,1326,1331,1297,1226,
+1143,1081,1053,1041,1017,979,950,953,988,1028,1051,1050,1036,1021,1013,1016,1026,1038,1040,1031,1016,
+999,984,969,957,944,916,862,787,709,642,585,521,449,373,297,213,120,30,-43,-105,-174,
+-260,-360,-466,-578,-702,-837,-975,-1109,-1246,-1393,-1553,-1720,-1885,-2040,-2183,-2315,-2442,-2564,-2675,-2769,-2847,
+-2912,-2958,-2983,-2996,-3017,-3053,-3095,-3131,-3162,-3196,-3229,-3249,-3261,-3277,-3299,-3315,-3327,-3352,-3387,-3364,-3205,
+-2917,-2629,-2487,-2523,-2638,-2716,-2726,-2710,-2704,-2709,-2722,-2762,-2836,-2918,-2966,-2968,-2949,-2941,-2958,-2999,-3059,
+-3126,-3177,-3202,-3218,-3247,-3293,-3334,-3359,-3383,-3428,-3497,-3576,-3659,-3754,-3865,-3974,-4063,-4131,-4189,-4241,-4276,
+-4291,-4296,-4304,-4319,-4338,-4367,-4416,-4483,-4547,-4585,-4599,-4601,-4600,-4588,-4558,-4520,-4499,-4511,-4557,-4623,-4689,
+-4739,-4769,-4787,-4809,-4839,-4859,-4846,-4799,-4753,-4758,-4830,-4945,-5057,-5139,-5200,-5257,-5317,-5367,-5396,-5407,-5414,
+-5425,-5444,-5473,-5523,-5595,-5681,-5761,-5825,-5879,-5927,-5968,-5994,-6010,-6027,-6050,-6071,-6079,-6079,-6085,-6107,-6139,
+-6172,-6207,-6247,-6289,-6321,-6338,-6343,-6340,-6328,-6310,-6290,-6272,-6251,-6221,-6186,-6159,-6140,-6116,-6068,-5999,-5921,
+-5838,-5743,-5641,-5555,-5507,-5491,-5479,-5453,-5412,-5361,-5297,-5223,-5156,-5115,-5095,-5077,-5045,-5006,-4974,-4950,-4930,
+-4919,-4928,-4952,-4969,-4963,-4948,-4948,-4974,-5004,-5020,-5017,-4998,-4962,-4903,-4824,-4737,-4641,-4521,-4373,-4225,-4118,
+-4072,-4063,-4053,-4024,-3983,-3944,-3914,-3890,-3867,-3838,-3796,-3739,-3679,-3633,-3597,-3550,-3478,-3394,-3325,-3284,-3252,
+-3205,-3145,-3095,-3072,-3070,-3078,-3101,-3142,-3190,-3214,-3198,-3155,-3113,-3078,-3028,-2950,-2861,-2789,-2739,-2692,-2629,
+-2557,-2493,-2436,-2374,-2300,-2221,-2146,-2070,-1980,-1877,-1773,-1679,-1596,-1519,-1445,-1372,-1294,-1206,-1107,-1008,-919,
+-845,-778,-709,-627,-526,-417,-313,-215,-109,15,149,273,384,491,603,708,794,870,955,1049,1127,
+1174,1209,1267,1353,1440,1507,1562,1633,1724,1816,1890,1945,1992,2035,2079,2129,2196,2277,2361,2442,2518,
+2590,2656,2715,2766,2808,2826,2803,2735,2636,2536,2467,2444,2460,2485,2491,2476,2471,2506,2592,2714,2854,
+2997,3130,3239,3319,3383,3447,3504,3536,3527,3490,3458,3461,3510,3589,3664,3706,3704,3671,3632,3605,3598,
+3622,3679,3760,3841,3903,3943,3973,4004,4042,4089,4143,4196,4240,4280,4324,4368,4394,4401,4416,4459,4512,
+4539,4544,4564,4602,4587,4453,4245,4095,4069,4067,3924,3620,3332,3268,3454,3725,3897,3915,3848,3775,3723,
+3682,3636,3577,3500,3421,3377,3380,3397,3380,3322,3276,3287,3333,3337,3251,3097,2945,2842,2790,2764,2747,
+2734,2723,2707,2679,2639,2591,2548,2516,2492,2459,2399,2314,2223,2144,2082,2026,1967,1906,1844,1780,1713,
+1645,1581,1526,1486,1462,1445,1424,1387,1341,1302,1280,1262,1231,1179,1115,1051,994,946,907,881,868,
+863,857,845,824,795,763,728,690,646,597,548,496,438,373,316,279,258,236,206,174,153,
+140,125,103,78,54,27,-2,-29,-44,-54,-72,-104,-140,-166,-179,-191,-208,-229,-252,-276,-303,
+-326,-341,-350,-357,-365,-370,-374,-382,-395,-403,-402,-399,-405,-423,-440,-448,-447,-445,-440,-434,-432,
+-440,-455,-461,-449,-428,-412,-401,-389,-372,-359,-353,-346,-326,-297,-273,-261,-251,-234,-212,-193,-179,
+-163,-146,-135,-133,-135,-130,-116,-99,-82,-65,-48,-33,-19,-1,31,74,108,109,75,47,97,
+260,481,632,626,517,462,577,822,1040,1107,1027,885,752,660,638,723,917,1150,1316,1352,1262,
+1080,835,568,349,241,249,308,348,354,357,381,410,417,400,381,379,386,390,385,379,375,
+372,368,367,365,356,339,322,312,307,296,277,257,243,232,219,203,186,169,146,115,80,
+47,14,-20,-55,-90,-127,-170,-219,-270,-319,-371,-429,-490,-548,-599,-645,-692,-737,-781,-824,-866,
+-904,-937,-968,-1002,-1039,-1073,-1101,-1128,-1158,-1191,-1223,-1255,-1288,-1321,-1352,-1382,-1413,-1448,-1484,-1516,-1542,
+-1566,-1592,-1621,-1651,-1682,-1714,-1747,-1777,-1807,-1837,-1865,-1890,-1914,-1944,-1986,-2032,-2075,-2108,-2136,-2168,-2207,
+-2249,-2292,-2333,-2374,-2419,-2467,-2513,-2554,-2588,-2624,-2666,-2716,-2767,-2815,-2858,-2899,-2940,-2982,-3024,-3066,-3109,
+-3153,-3198,-3244,-3287,-3323,-3353,-3382,-3415,-3453,-3492,-3528,-3565,-3607,-3656,-3702,-3739,-3768,-3795,-3828,-3866,-3908,
+-3949,-3989,-4027,-4063,-4096,-4125,-4151,-4176,-4201,-4226,-4250,-4274,-4300,-4328,-4358,-4386,-4413,-4438,-4464,-4490,-4513,
+-4532,-4548,-4562,-4573,-4585,-4602,-4625,-4647,-4662,-4668,-4672,-4679,-4688,-4696,-4703,-4709,-4710,-4699,-4680,-4663,-4657,
+-4657,-4649,-4629,-4610,-4600,-4596,-4586,-4568,-4550,-4536,-4519,-4493,-4465,-4450,-4445,-4426,-4381,-4322,-4282,-4273,-4275,
+-4257,-4213,-4171,-4155,-4157,-4142,-4081,-3977,-3861,-3769,-3719,-3703,-3688,-3643,-3559,-3472,-3432,-3457,-3514,-3546,-3526,
+-3464,-3386,-3306,-3222,-3140,-3072,-3018,-2961,-2884,-2789,-2693,-2604,-2509,-2396,-2274,-2174,-2117,-2101,-2099,-2088,-2062,
+-2034,-2013,-1999,-1982,-1957,-1929,-1901,-1868,-1818,-1753,-1689,-1641,-1602,-1558,-1508,-1482,-1515,-1619,-1762,-1895,-1983,
+-2035,-2085,-2159,-2248,-2314,-2324,-2282,-2226,-2198,-2222,-2295,-2404,-2540,-2697,-2862,-3017,-3146,-3235,-3280,-3284,-3256,
+-3213,-3169,-3132,-3099,-3062,-3015,-2958,-2897,-2845,-2807,-2783,-2764,-2747,-2730,-2713,-2696,-2675,-2656,-2654,-2683,-2740,
+-2797,-2824,-2814,-2781,-2739,-2687,-2619,-2546,-2489,-2462,-2452,-2450,-2472,-2543,-2648,-2722,-2700,-2583,-2440,-2347,-2319,
+-2325,-2338,-2358,-2387,-2409,-2401,-2374,-2360,-2384,-2433,-2484,-2538,-2617,-2729,-2850,-2934,-2955,-2919,-2855,-2810,-2834,
+-2965,-3189,-3425,-3565,-3561,-3471,-3420,-3511,-3744,-4023,-4235,-4325,-4319,-4284,-4280,-4321,-4391,-4466,-4535,-4597,-4654,
+-4706,-4752,-4795,-4841,-4893,-4949,-5003,-5056,-5105,-5150,-5186,-5213,-5230,-5243,-5252,-5254,-5246,-5228,-5203,-5177,-5152,
+-5132,-5114,-5099,-5085,-5073,-5062,-5052,-5046,-5049,-5062,-5078,-5087,-5088,-5088,-5094,-5107,-5122,-5136,-5152,-5171,-5187,
+-5189,-5177,-5158,-5139,-5118,-5089,-5052,-5014,-4981,-4953,-4925,-4894,-4860,-4828,-4799,-4770,-4743,-4714,-4680,-4638,-4589,
+-4536,-4480,-4423,-4367,-4311,-4257,-4204,-4153,-4101,-4045,-3979,-3903,-3826,-3756,-3695,-3636,-3571,-3500,-3430,-3363,-3295,
+-3221,-3139,-3051,-2961,-2872,-2788,-2712,-2639,-2559,-2468,-2373,-2281,-2194,-2109,-2020,-1930,-1841,-1753,-1662,-1569,-1474,
+-1377,-1274,-1166,-1064,-977,-903,-833,-765,-709,-671,-643,-604,-543,-470,-402,-343,-287,-230,-178,-136,-101,
+-63,-20,21,57,92,136,190,245,294,336,377,419,462,502,541,580,619,659,698,738,776,
+811,844,878,914,952,991,1029,1069,1111,1157,1204,1251,1297,1339,1379,1420,1462,1505,1552,1603,1658,
+1713,1765,1813,1855,1892,1919,1941,1962,1990,2022,2056,2086,2111,2130,2143,2153,2166,2183,2197,2201,2197,
+2195,2204,2219,2236,2255,2282,2320,2360,2397,2430,2463,2498,2533,2569,2609,2654,2701,2747,2792,2842,2900,
+2963,3032,3104,3181,3256,3322,3368,3390,3388,3366,3324,3260,3183,3115,3090,3124,3198,3274,3322,3340,3344,
+3352,3371,3404,3454,3530,3630,3742,3844,3914,3942,3939,3930,3935,3952,3963,3958,3942,3930,3924,3911,3884,
+3845,3802,3756,3701,3634,3565,3502,3443,3382,3317,3254,3204,3166,3134,3106,3085,3074,3071,3071,3074,3083,
+3089,3080,3046,2994,2940,2899,2877,2868,2862,2849,2820,2779,2739,2715,2712,2716,2710,2694,2680,2679,2734,
+2760,2788,2807,2815,2816,2816,2820,2827,2842,2873,2934,3028,3139,3236,3302,3342,3380,3426,3474,3512,3539,
+3560,3580,3596,3605,3609,3611,3602,3578,3551,3545,3571,3608,3615,3569,3487,3406,3347,3302,3257,3210,3163,
+3112,3049,2980,2921,2882,2856,2826,2783,2734,2687,2644,2607,2579,2563,2550,2535,2521,2525,2556,2606,2658,
+2701,2735,2766,2791,2804,2798,2766,2712,2648,2587,2540,2504,2470,2426,2366,2290,2209,2136,2086,2055,2029,
+1995,1954,1915,1885,1859,1827,1782,1725,1663,1609,1573,1555,1545,1531,1511,1487,1462,1436,1402,1362,1326,
+1301,1293,1295,1297,1296,1300,1316,1339,1352,1341,1312,1286,1276,1281,1285,1282,1272,1263,1257,1255,1257,
+1260,1252,1229,1197,1173,1171,1188,1218,1258,1300,1327,1313,1249,1160,1084,1040,1014,982,940,911,914,
+939,963,976,992,1023,1059,1074,1056,1017,980,959,952,951,948,943,936,927,913,887,840,776,
+709,650,593,527,450,369,286,197,98,3,-78,-152,-233,-325,-417,-499,-582,-687,-816,-957,-1098,
+-1242,-1401,-1575,-1753,-1921,-2075,-2218,-2352,-2477,-2587,-2684,-2771,-2855,-2930,-2986,-3017,-3037,-3066,-3106,-3143,-3170,
+-3195,-3231,-3266,-3284,-3288,-3293,-3304,-3308,-3304,-3312,-3329,-3290,-3115,-2821,-2545,-2438,-2524,-2693,-2817,-2860,-2865,
+-2869,-2879,-2895,-2938,-3018,-3107,-3166,-3183,-3181,-3181,-3188,-3201,-3226,-3263,-3303,-3339,-3381,-3439,-3503,-3546,-3565,
+-3588,-3646,-3739,-3839,-3929,-4017,-4111,-4199,-4260,-4290,-4304,-4316,-4326,-4328,-4327,-4330,-4344,-4367,-4402,-4450,-4509,
+-4564,-4603,-4626,-4639,-4639,-4622,-4588,-4556,-4548,-4573,-4624,-4686,-4743,-4782,-4799,-4805,-4816,-4841,-4859,-4845,-4803,
+-4775,-4810,-4915,-5042,-5137,-5182,-5206,-5244,-5301,-5356,-5390,-5405,-5416,-5434,-5459,-5493,-5541,-5607,-5682,-5752,-5812,
+-5864,-5911,-5944,-5956,-5952,-5952,-5967,-5988,-5998,-5996,-5996,-6012,-6039,-6068,-6096,-6130,-6170,-6204,-6223,-6228,-6225,
+-6214,-6195,-6172,-6151,-6134,-6113,-6085,-6055,-6024,-5987,-5937,-5880,-5822,-5765,-5699,-5624,-5557,-5517,-5505,-5503,-5493,
+-5469,-5430,-5381,-5336,-5315,-5321,-5332,-5321,-5285,-5249,-5234,-5229,-5207,-5160,-5102,-5050,-5010,-4985,-4979,-4994,-5021,
+-5044,-5054,-5046,-5016,-4959,-4883,-4810,-4747,-4669,-4549,-4393,-4250,-4164,-4132,-4115,-4083,-4038,-4001,-3976,-3952,-3923,
+-3892,-3858,-3811,-3747,-3680,-3629,-3590,-3542,-3472,-3393,-3334,-3300,-3268,-3218,-3156,-3110,-3096,-3106,-3125,-3148,-3180,
+-3212,-3225,-3204,-3159,-3113,-3072,-3022,-2952,-2873,-2807,-2761,-2715,-2652,-2578,-2509,-2450,-2390,-2316,-2230,-2140,-2048,
+-1949,-1844,-1742,-1648,-1562,-1478,-1397,-1320,-1242,-1160,-1074,-991,-912,-833,-747,-653,-555,-457,-361,-269,-176,
+-70,52,179,294,396,501,616,725,813,893,989,1098,1187,1235,1268,1328,1417,1495,1539,1579,1665,
+1795,1914,1974,1980,1978,2006,2063,2130,2198,2266,2341,2425,2520,2618,2709,2778,2814,2813,2775,2710,2636,
+2576,2540,2523,2510,2494,2472,2451,2447,2486,2579,2718,2876,3023,3146,3243,3320,3391,3470,3557,3626,3646,
+3600,3513,3428,3389,3412,3483,3568,3635,3670,3681,3679,3670,3661,3662,3686,3735,3794,3854,3911,3966,4016,
+4058,4097,4146,4202,4256,4306,4356,4402,4428,4432,4439,4475,4527,4560,4575,4607,4665,4681,4580,4391,4233,
+4176,4134,3954,3610,3270,3144,3281,3544,3763,3867,3886,3868,3829,3772,3702,3619,3525,3438,3393,3398,3410,
+3372,3286,3221,3233,3297,3321,3245,3093,2946,2857,2821,2800,2772,2742,2722,2710,2694,2662,2620,2589,2576,
+2568,2532,2448,2333,2228,2156,2112,2074,2026,1970,1911,1851,1790,1731,1673,1616,1566,1531,1510,1488,1449,
+1397,1353,1331,1322,1299,1251,1184,1117,1060,1012,972,936,908,893,893,899,892,862,818,777,742,
+705,656,600,544,485,419,354,307,283,269,250,227,209,197,177,143,108,84,69,52,29,
+7,-9,-30,-61,-95,-120,-133,-145,-162,-182,-200,-218,-240,-261,-276,-283,-292,-305,-319,-329,-337,
+-344,-347,-344,-341,-351,-373,-396,-404,-401,-396,-395,-397,-398,-405,-418,-427,-422,-403,-385,-375,-366,
+-351,-334,-323,-315,-300,-274,-248,-231,-221,-207,-185,-160,-135,-110,-90,-81,-85,-93,-91,-79,-67,
+-57,-44,-26,-9,-1,3,21,54,80,72,28,-1,48,200,387,495,463,348,288,370,555,
+728,810,804,746,656,557,515,613,864,1164,1374,1427,1353,1205,1001,744,484,306,260,307,367,
+390,388,393,409,419,412,398,390,387,384,379,378,382,383,378,371,366,360,351,340,334,
+332,327,314,297,284,276,268,255,241,225,208,185,158,128,94,57,20,-14,-47,-87,-136,
+-191,-247,-304,-366,-430,-491,-548,-602,-652,-699,-741,-782,-826,-868,-905,-937,-970,-1006,-1041,-1073,-1102,
+-1134,-1170,-1205,-1238,-1269,-1302,-1335,-1366,-1397,-1430,-1464,-1496,-1525,-1551,-1577,-1606,-1638,-1671,-1704,-1737,-1769,
+-1801,-1831,-1859,-1883,-1907,-1938,-1978,-2021,-2058,-2087,-2116,-2150,-2194,-2243,-2290,-2333,-2375,-2420,-2466,-2509,-2544,
+-2574,-2609,-2654,-2706,-2759,-2806,-2848,-2889,-2932,-2975,-3018,-3060,-3099,-3140,-3183,-3228,-3270,-3307,-3337,-3366,-3400,
+-3438,-3477,-3514,-3552,-3595,-3643,-3688,-3724,-3752,-3777,-3807,-3846,-3891,-3938,-3983,-4023,-4056,-4084,-4108,-4133,-4158,
+-4184,-4210,-4238,-4266,-4294,-4323,-4351,-4379,-4405,-4430,-4456,-4481,-4504,-4522,-4538,-4554,-4570,-4587,-4608,-4632,-4652,
+-4664,-4669,-4674,-4683,-4695,-4704,-4711,-4716,-4715,-4704,-4682,-4663,-4657,-4659,-4655,-4641,-4627,-4620,-4616,-4603,-4581,
+-4559,-4543,-4526,-4502,-4475,-4458,-4448,-4425,-4375,-4313,-4269,-4260,-4267,-4257,-4217,-4167,-4134,-4126,-4125,-4103,-4037,
+-3931,-3810,-3716,-3672,-3663,-3643,-3577,-3481,-3414,-3414,-3465,-3510,-3510,-3468,-3408,-3340,-3263,-3180,-3103,-3040,-2978,
+-2904,-2816,-2730,-2646,-2552,-2434,-2303,-2186,-2110,-2077,-2069,-2063,-2046,-2020,-1992,-1966,-1940,-1911,-1882,-1853,-1818,
+-1766,-1699,-1634,-1586,-1556,-1523,-1475,-1425,-1419,-1489,-1625,-1770,-1868,-1909,-1937,-2003,-2112,-2217,-2265,-2248,-2205,
+-2189,-2229,-2319,-2440,-2580,-2731,-2884,-3028,-3149,-3233,-3274,-3277,-3251,-3210,-3164,-3120,-3078,-3036,-2987,-2930,-2871,
+-2823,-2790,-2769,-2752,-2737,-2728,-2723,-2715,-2700,-2686,-2693,-2735,-2800,-2853,-2861,-2824,-2768,-2720,-2681,-2632,-2569,
+-2511,-2477,-2461,-2448,-2447,-2495,-2602,-2710,-2733,-2635,-2471,-2334,-2274,-2274,-2295,-2321,-2354,-2381,-2382,-2357,-2336,
+-2349,-2392,-2448,-2509,-2593,-2709,-2830,-2915,-2937,-2902,-2841,-2799,-2826,-2951,-3153,-3349,-3440,-3398,-3298,-3267,-3382,
+-3623,-3897,-4120,-4254,-4313,-4327,-4327,-4339,-4379,-4444,-4516,-4578,-4627,-4673,-4723,-4776,-4828,-4879,-4932,-4988,-5040,
+-5084,-5121,-5155,-5188,-5214,-5233,-5243,-5246,-5241,-5227,-5205,-5182,-5165,-5151,-5134,-5114,-5094,-5080,-5072,-5066,-5063,
+-5068,-5083,-5101,-5110,-5110,-5108,-5115,-5131,-5148,-5159,-5170,-5187,-5204,-5211,-5201,-5179,-5156,-5135,-5108,-5072,-5032,
+-4998,-4971,-4944,-4913,-4880,-4849,-4823,-4797,-4769,-4738,-4707,-4673,-4629,-4574,-4514,-4459,-4410,-4362,-4311,-4256,-4201,
+-4146,-4088,-4020,-3944,-3867,-3798,-3737,-3678,-3615,-3549,-3482,-3413,-3341,-3262,-3179,-3094,-3009,-2925,-2845,-2771,-2698,
+-2616,-2524,-2427,-2335,-2248,-2159,-2067,-1977,-1893,-1807,-1711,-1605,-1501,-1406,-1317,-1227,-1136,-1053,-977,-904,-832,
+-771,-728,-694,-651,-589,-520,-461,-412,-362,-306,-253,-213,-179,-139,-91,-47,-13,16,57,112,170,
+220,261,302,346,390,431,468,505,542,580,619,661,703,743,780,815,852,891,932,975,1021,
+1066,1111,1155,1198,1241,1283,1324,1366,1411,1458,1510,1565,1623,1680,1731,1776,1815,1847,1872,1890,1909,
+1933,1963,1994,2025,2054,2078,2093,2103,2112,2124,2134,2137,2137,2142,2157,2177,2199,2224,2258,2296,2334,
+2369,2404,2439,2473,2503,2533,2571,2617,2665,2711,2757,2806,2860,2918,2982,3052,3127,3198,3256,3297,3321,
+3330,3323,3296,3245,3181,3130,3123,3173,3255,3326,3360,3362,3357,3367,3397,3443,3510,3602,3712,3822,3904,
+3943,3945,3933,3929,3939,3950,3946,3924,3895,3872,3856,3841,3820,3793,3758,3712,3653,3590,3532,3482,3434,
+3380,3319,3255,3199,3156,3122,3094,3071,3053,3042,3038,3038,3037,3030,3011,2979,2937,2894,2858,2833,2816,
+2803,2787,2765,2738,2717,2711,2719,2729,2730,2723,2721,2734,2789,2822,2854,2879,2896,2908,2915,2919,2921,
+2929,2953,3007,3090,3187,3269,3321,3352,3390,3446,3510,3563,3594,3612,3627,3638,3644,3646,3648,3643,3622,
+3588,3562,3563,3583,3593,3567,3514,3458,3413,3373,3325,3270,3214,3153,3081,3002,2935,2892,2862,2827,2782,
+2733,2687,2643,2601,2569,2552,2543,2531,2520,2525,2553,2597,2640,2676,2709,2740,2761,2763,2742,2700,2643,
+2581,2527,2490,2468,2447,2413,2359,2288,2210,2138,2083,2045,2013,1974,1926,1874,1825,1782,1743,1704,1661,
+1615,1571,1537,1513,1497,1487,1483,1487,1489,1477,1440,1384,1328,1296,1295,1315,1336,1344,1339,1337,1345,
+1352,1345,1321,1295,1280,1278,1278,1275,1268,1260,1251,1243,1236,1229,1214,1185,1150,1126,1123,1141,1174,
+1219,1270,1307,1306,1256,1175,1097,1039,994,948,906,882,881,885,879,876,911,994,1089,1132,1096,
+1006,919,871,864,879,895,903,902,895,883,860,820,766,709,654,597,527,446,361,275,180,
+72,-34,-125,-206,-293,-388,-470,-530,-585,-670,-797,-949,-1103,-1257,-1425,-1609,-1794,-1965,-2117,-2259,-2392,
+-2512,-2614,-2700,-2783,-2870,-2950,-3008,-3044,-3075,-3119,-3169,-3204,-3220,-3234,-3262,-3294,-3310,-3311,-3313,-3320,-3314,
+-3293,-3280,-3276,-3222,-3044,-2759,-2506,-2430,-2548,-2741,-2884,-2947,-2976,-3013,-3059,-3103,-3155,-3223,-3294,-3346,-3376,
+-3395,-3411,-3418,-3417,-3423,-3449,-3491,-3541,-3603,-3678,-3749,-3795,-3818,-3854,-3935,-4051,-4167,-4257,-4329,-4390,-4434,
+-4439,-4409,-4371,-4354,-4360,-4371,-4371,-4367,-4374,-4399,-4439,-4487,-4535,-4580,-4621,-4658,-4683,-4686,-4661,-4622,-4595,
+-4600,-4638,-4693,-4749,-4793,-4820,-4829,-4829,-4838,-4862,-4885,-4881,-4855,-4846,-4897,-5008,-5129,-5205,-5229,-5235,-5261,
+-5312,-5364,-5398,-5416,-5430,-5451,-5480,-5515,-5560,-5616,-5679,-5741,-5797,-5847,-5890,-5917,-5922,-5910,-5903,-5912,-5932,
+-5944,-5943,-5941,-5953,-5978,-6005,-6029,-6056,-6088,-6115,-6129,-6129,-6123,-6113,-6093,-6064,-6033,-6008,-5987,-5965,-5937,
+-5903,-5861,-5810,-5756,-5710,-5675,-5645,-5613,-5582,-5557,-5544,-5536,-5527,-5511,-5483,-5450,-5430,-5442,-5481,-5515,-5518,
+-5497,-5484,-5497,-5516,-5504,-5441,-5336,-5214,-5106,-5037,-5016,-5030,-5053,-5066,-5065,-5048,-5006,-4934,-4854,-4795,-4752,
+-4685,-4562,-4407,-4282,-4217,-4188,-4150,-4094,-4044,-4019,-4004,-3975,-3934,-3895,-3862,-3817,-3754,-3690,-3646,-3614,-3569,
+-3498,-3417,-3355,-3318,-3285,-3237,-3181,-3141,-3132,-3147,-3169,-3191,-3214,-3233,-3235,-3208,-3155,-3098,-3047,-3000,-2944,
+-2880,-2821,-2773,-2727,-2667,-2593,-2521,-2460,-2400,-2324,-2225,-2113,-2003,-1901,-1808,-1720,-1632,-1540,-1448,-1360,-1281,
+-1206,-1129,-1051,-976,-899,-811,-705,-590,-483,-392,-312,-232,-141,-30,93,214,317,413,521,645,761,
+852,937,1042,1160,1249,1291,1325,1394,1490,1557,1580,1622,1752,1946,2090,2099,2001,1910,1912,2003,2125,
+2232,2318,2397,2479,2568,2656,2730,2774,2778,2744,2692,2643,2619,2621,2631,2619,2570,2501,2449,2441,2487,
+2582,2715,2868,3020,3150,3249,3321,3378,3438,3518,3614,3701,3739,3708,3621,3520,3450,3434,3466,3524,3585,
+3638,3682,3716,3731,3726,3714,3711,3727,3760,3808,3873,3948,4015,4062,4098,4143,4203,4264,4318,4370,4419,
+4452,4462,4467,4495,4542,4580,4604,4643,4707,4740,4671,4510,4356,4278,4209,4010,3644,3254,3038,3082,3303,
+3556,3746,3853,3889,3873,3828,3775,3710,3625,3533,3476,3472,3482,3444,3351,3269,3255,3289,3291,3205,3064,
+2950,2909,2918,2919,2879,2812,2752,2714,2691,2666,2637,2619,2616,2610,2569,2480,2372,2285,2238,2213,2180,
+2126,2058,1990,1928,1872,1822,1771,1714,1656,1607,1574,1543,1501,1448,1403,1379,1367,1348,1307,1247,1179,
+1118,1072,1038,1005,968,938,933,949,955,924,867,817,790,767,722,657,595,543,488,425,368,
+334,320,309,292,275,258,230,188,148,128,122,112,88,57,34,15,-8,-38,-63,-80,-93,
+-110,-128,-143,-157,-174,-191,-202,-207,-217,-236,-257,-270,-275,-279,-286,-290,-291,-297,-314,-333,-340,
+-337,-336,-346,-359,-366,-367,-373,-381,-382,-370,-353,-344,-338,-326,-308,-293,-284,-273,-252,-224,-201,
+-186,-172,-152,-128,-103,-78,-59,-51,-55,-61,-59,-48,-40,-34,-23,-2,18,25,25,38,75,
+113,119,88,59,85,182,302,369,348,279,241,277,359,434,480,511,529,511,459,440,548,
+798,1090,1294,1362,1345,1297,1201,1013,748,506,384,388,440,464,445,417,409,416,422,420,413,
+406,399,396,400,408,408,394,373,361,358,359,357,353,350,346,338,326,316,310,305,298,
+290,282,271,256,235,208,176,139,100,62,25,-16,-66,-123,-183,-246,-310,-373,-433,-490,-548,
+-604,-654,-697,-738,-782,-829,-871,-907,-940,-975,-1012,-1046,-1079,-1113,-1148,-1184,-1217,-1250,-1284,-1320,-1355,
+-1386,-1416,-1446,-1476,-1504,-1531,-1558,-1587,-1619,-1653,-1687,-1720,-1754,-1788,-1821,-1850,-1875,-1901,-1934,-1972,-2011,
+-2045,-2074,-2103,-2139,-2183,-2233,-2281,-2326,-2368,-2412,-2457,-2498,-2531,-2562,-2598,-2643,-2695,-2744,-2787,-2826,-2865,
+-2906,-2950,-2995,-3037,-3077,-3116,-3157,-3199,-3240,-3278,-3312,-3346,-3384,-3425,-3466,-3508,-3550,-3593,-3635,-3673,-3705,
+-3733,-3762,-3795,-3836,-3883,-3932,-3979,-4017,-4045,-4065,-4085,-4110,-4140,-4170,-4201,-4231,-4262,-4291,-4319,-4345,-4370,
+-4397,-4423,-4450,-4474,-4496,-4512,-4527,-4544,-4564,-4587,-4613,-4637,-4657,-4668,-4673,-4677,-4687,-4699,-4711,-4720,-4727,
+-4727,-4715,-4693,-4672,-4664,-4667,-4668,-4661,-4652,-4647,-4643,-4629,-4604,-4578,-4556,-4537,-4514,-4489,-4470,-4452,-4423,
+-4375,-4319,-4281,-4271,-4274,-4262,-4226,-4177,-4137,-4117,-4112,-4105,-4069,-3987,-3864,-3739,-3658,-3631,-3623,-3582,-3500,
+-3418,-3385,-3406,-3444,-3459,-3443,-3409,-3362,-3300,-3225,-3146,-3074,-3003,-2926,-2843,-2759,-2668,-2559,-2428,-2290,-2172,
+-2092,-2052,-2037,-2029,-2012,-1981,-1941,-1904,-1875,-1855,-1836,-1811,-1776,-1727,-1667,-1609,-1568,-1546,-1529,-1493,-1438,
+-1401,-1428,-1531,-1668,-1772,-1813,-1827,-1876,-1984,-2110,-2196,-2217,-2204,-2208,-2262,-2365,-2499,-2646,-2792,-2931,-3056,
+-3158,-3228,-3263,-3264,-3241,-3203,-3155,-3101,-3046,-2993,-2939,-2884,-2835,-2803,-2788,-2783,-2776,-2767,-2760,-2755,-2749,
+-2742,-2744,-2765,-2806,-2847,-2858,-2817,-2737,-2655,-2608,-2599,-2596,-2571,-2528,-2493,-2474,-2457,-2445,-2470,-2560,-2680,
+-2743,-2687,-2537,-2382,-2292,-2272,-2286,-2308,-2335,-2361,-2369,-2353,-2335,-2343,-2381,-2435,-2497,-2580,-2690,-2803,-2882,
+-2901,-2866,-2808,-2769,-2788,-2887,-3044,-3192,-3264,-3252,-3221,-3253,-3379,-3568,-3763,-3938,-4092,-4222,-4308,-4342,-4346,
+-4363,-4411,-4475,-4531,-4576,-4625,-4688,-4757,-4818,-4872,-4926,-4984,-5035,-5074,-5105,-5138,-5174,-5205,-5226,-5236,-5241,
+-5241,-5233,-5215,-5196,-5181,-5169,-5153,-5133,-5112,-5098,-5090,-5084,-5079,-5083,-5099,-5120,-5134,-5136,-5134,-5141,-5158,
+-5177,-5188,-5193,-5201,-5213,-5221,-5215,-5197,-5174,-5152,-5126,-5091,-5053,-5021,-4996,-4970,-4937,-4900,-4868,-4843,-4819,
+-4789,-4755,-4723,-4691,-4649,-4596,-4537,-4486,-4444,-4404,-4354,-4296,-4235,-4176,-4115,-4047,-3973,-3900,-3831,-3768,-3705,
+-3641,-3577,-3513,-3446,-3372,-3292,-3210,-3131,-3054,-2977,-2901,-2827,-2753,-2673,-2585,-2492,-2402,-2313,-2220,-2123,-2029,
+-1944,-1856,-1752,-1633,-1519,-1425,-1348,-1274,-1193,-1114,-1041,-971,-899,-830,-776,-733,-687,-630,-571,-523,-483,
+-439,-385,-331,-289,-254,-213,-163,-116,-80,-50,-12,38,93,142,186,230,275,316,352,389,428,
+468,508,547,589,633,677,718,757,795,835,878,925,975,1024,1069,1112,1154,1197,1240,1283,1327,
+1372,1422,1477,1535,1594,1648,1696,1738,1775,1805,1827,1845,1865,1889,1916,1943,1971,1999,2024,2043,2055,
+2065,2076,2087,2093,2100,2111,2129,2152,2177,2207,2244,2281,2315,2348,2383,2420,2453,2478,2503,2537,2580,
+2626,2671,2717,2766,2817,2868,2925,2991,3064,3135,3192,3231,3258,3272,3273,3255,3216,3169,3141,3156,3218,
+3301,3364,3384,3372,3361,3376,3425,3500,3594,3698,3801,3885,3936,3947,3933,3918,3918,3930,3938,3928,3902,
+3871,3842,3815,3789,3766,3742,3708,3659,3600,3543,3494,3453,3412,3366,3311,3251,3191,3142,3110,3087,3063,
+3035,3013,3004,3003,2997,2978,2948,2915,2881,2848,2816,2786,2763,2744,2729,2715,2703,2699,2710,2729,2746,
+2753,2755,2765,2789,2839,2877,2911,2939,2962,2983,3000,3009,3011,3016,3036,3080,3149,3227,3290,3328,3356,
+3399,3468,3547,3607,3637,3646,3653,3665,3676,3682,3681,3671,3645,3605,3565,3545,3550,3558,3549,3518,3481,
+3447,3412,3367,3310,3246,3173,3091,3008,2941,2896,2860,2819,2770,2723,2682,2641,2601,2569,2552,2544,2535,
+2528,2535,2562,2598,2632,2662,2693,2722,2737,2729,2700,2656,2603,2549,2506,2483,2472,2456,2422,2366,2294,
+2214,2138,2076,2031,1996,1958,1908,1849,1788,1734,1688,1646,1605,1566,1532,1505,1484,1465,1456,1465,1488,
+1509,1503,1462,1398,1337,1303,1305,1331,1360,1369,1358,1340,1331,1331,1330,1319,1302,1288,1280,1273,1265,
+1256,1247,1238,1228,1217,1206,1186,1155,1118,1089,1080,1093,1127,1177,1230,1268,1274,1241,1183,1117,1051,
+985,922,875,854,848,832,799,781,825,938,1065,1127,1087,977,867,807,801,826,852,864,863,
+857,849,833,798,746,689,636,580,509,427,345,264,171,59,-55,-153,-234,-319,-411,-491,-543,
+-589,-671,-806,-973,-1138,-1297,-1464,-1650,-1840,-2015,-2168,-2305,-2433,-2548,-2646,-2731,-2814,-2900,-2977,-3033,-3069,
+-3107,-3161,-3218,-3253,-3262,-3267,-3285,-3310,-3324,-3329,-3339,-3351,-3342,-3308,-3277,-3258,-3200,-3033,-2771,-2538,-2466,
+-2572,-2749,-2887,-2964,-3025,-3109,-3207,-3297,-3374,-3440,-3491,-3523,-3543,-3563,-3585,-3599,-3606,-3623,-3659,-3709,-3766,
+-3832,-3909,-3984,-4042,-4090,-4153,-4251,-4369,-4472,-4543,-4591,-4625,-4630,-4587,-4503,-4420,-4381,-4392,-4419,-4431,-4425,
+-4424,-4445,-4487,-4533,-4573,-4612,-4655,-4698,-4728,-4729,-4702,-4667,-4647,-4662,-4707,-4765,-4817,-4855,-4875,-4882,-4885,
+-4898,-4924,-4952,-4963,-4956,-4962,-5012,-5105,-5205,-5270,-5294,-5302,-5321,-5356,-5391,-5414,-5428,-5442,-5463,-5491,-5525,
+-5564,-5611,-5663,-5717,-5767,-5812,-5849,-5874,-5884,-5882,-5881,-5891,-5908,-5920,-5917,-5910,-5914,-5935,-5963,-5991,-6016,
+-6038,-6052,-6050,-6038,-6023,-6009,-5987,-5951,-5907,-5868,-5841,-5824,-5810,-5791,-5759,-5711,-5655,-5609,-5587,-5590,-5603,
+-5609,-5601,-5583,-5566,-5554,-5543,-5525,-5500,-5487,-5501,-5538,-5572,-5584,-5586,-5600,-5632,-5659,-5646,-5574,-5449,-5294,
+-5150,-5059,-5036,-5056,-5079,-5081,-5064,-5033,-4979,-4902,-4830,-4789,-4763,-4701,-4575,-4425,-4316,-4263,-4225,-4163,-4092,
+-4049,-4039,-4027,-3985,-3930,-3888,-3860,-3820,-3760,-3701,-3667,-3646,-3605,-3533,-3448,-3381,-3337,-3301,-3256,-3209,-3174,
+-3163,-3171,-3188,-3206,-3222,-3236,-3235,-3208,-3153,-3087,-3029,-2984,-2939,-2883,-2821,-2766,-2717,-2660,-2588,-2513,-2447,
+-2386,-2308,-2202,-2077,-1959,-1861,-1780,-1702,-1615,-1519,-1424,-1337,-1260,-1187,-1110,-1034,-960,-882,-786,-667,-541,
+-431,-345,-273,-196,-100,13,135,247,345,444,559,685,796,883,973,1090,1215,1300,1335,1370,1456,
+1564,1625,1637,1697,1885,2141,2288,2212,1981,1782,1751,1876,2057,2217,2337,2432,2510,2571,2616,2644,2654,
+2645,2630,2626,2645,2682,2714,2712,2657,2563,2475,2445,2493,2601,2735,2872,3002,3123,3229,3316,3382,3431,
+3476,3535,3618,3710,3776,3786,3735,3655,3583,3545,3539,3554,3580,3616,3662,3708,3739,3747,3741,3735,3738,
+3754,3790,3853,3937,4016,4070,4106,4150,4210,4273,4326,4375,4425,4467,4488,4499,4522,4561,4598,4624,4662,
+4724,4768,4730,4603,4459,4364,4276,4082,3727,3307,3000,2925,3068,3324,3577,3754,3833,3836,3814,3795,3770,
+3711,3622,3549,3526,3529,3500,3422,3339,3302,3300,3272,3178,3055,2980,2992,3056,3097,3065,2970,2856,2765,
+2710,2680,2664,2654,2643,2617,2560,2479,2404,2363,2357,2353,2318,2244,2153,2068,2001,1951,1906,1857,1799,
+1742,1695,1655,1612,1556,1496,1446,1416,1401,1389,1369,1328,1258,1178,1120,1098,1090,1063,1018,989,993,
+1001,973,910,855,834,820,778,706,639,595,557,503,441,397,379,370,352,327,300,268,228,
+193,177,176,168,141,105,78,61,42,15,-11,-28,-39,-53,-72,-89,-104,-117,-129,-136,-141,
+-153,-176,-199,-208,-207,-211,-226,-242,-248,-247,-252,-263,-271,-272,-275,-289,-307,-316,-315,-318,-330,
+-341,-340,-328,-317,-310,-302,-287,-272,-262,-252,-233,-205,-179,-160,-143,-123,-102,-82,-64,-49,-43,
+-46,-49,-44,-32,-21,-14,0,27,53,60,55,61,93,137,161,155,143,154,198,254,292,
+297,287,285,297,307,307,311,340,387,417,418,437,543,747,973,1130,1203,1250,1313,1353,1286,
+1094,860,695,641,641,621,561,497,465,462,463,451,433,422,419,420,423,425,423,410,392,
+382,384,388,384,371,358,350,345,341,338,336,337,337,337,334,326,309,285,259,234,207,
+175,137,96,51,1,-54,-115,-181,-249,-314,-373,-429,-488,-549,-606,-656,-702,-749,-798,-843,-882,
+-916,-950,-985,-1020,-1055,-1089,-1123,-1158,-1192,-1227,-1265,-1304,-1341,-1374,-1403,-1430,-1456,-1484,-1512,-1540,-1571,
+-1604,-1637,-1670,-1701,-1735,-1772,-1810,-1842,-1871,-1899,-1932,-1969,-2006,-2039,-2068,-2098,-2134,-2177,-2224,-2270,-2312,
+-2353,-2395,-2440,-2481,-2517,-2552,-2591,-2636,-2682,-2727,-2767,-2804,-2841,-2881,-2926,-2972,-3017,-3058,-3096,-3135,-3176,
+-3216,-3255,-3295,-3337,-3380,-3422,-3466,-3511,-3556,-3597,-3631,-3659,-3685,-3715,-3751,-3790,-3834,-3880,-3927,-3971,-4004,
+-4027,-4044,-4065,-4095,-4131,-4166,-4199,-4230,-4260,-4288,-4313,-4337,-4361,-4388,-4416,-4443,-4467,-4488,-4505,-4520,-4538,
+-4560,-4587,-4614,-4639,-4659,-4671,-4678,-4682,-4690,-4702,-4715,-4726,-4734,-4736,-4726,-4706,-4687,-4678,-4680,-4684,-4683,
+-4678,-4673,-4666,-4652,-4627,-4599,-4572,-4547,-4523,-4502,-4484,-4466,-4437,-4396,-4352,-4320,-4304,-4292,-4268,-4231,-4189,
+-4154,-4128,-4113,-4102,-4082,-4027,-3924,-3792,-3677,-3616,-3599,-3582,-3529,-3451,-3389,-3367,-3377,-3393,-3400,-3392,-3368,
+-3321,-3254,-3177,-3099,-3022,-2945,-2866,-2782,-2682,-2556,-2410,-2266,-2150,-2071,-2025,-2004,-1993,-1978,-1946,-1896,-1845,
+-1810,-1792,-1782,-1764,-1735,-1695,-1648,-1599,-1557,-1529,-1514,-1493,-1452,-1406,-1400,-1467,-1592,-1712,-1779,-1801,-1833,
+-1914,-2031,-2134,-2191,-2213,-2240,-2304,-2412,-2552,-2701,-2841,-2964,-3068,-3153,-3212,-3241,-3240,-3218,-3180,-3128,-3065,
+-3000,-2939,-2885,-2841,-2810,-2800,-2806,-2817,-2819,-2812,-2802,-2793,-2786,-2789,-2805,-2830,-2846,-2831,-2774,-2677,-2562,
+-2470,-2437,-2461,-2503,-2516,-2494,-2467,-2460,-2465,-2468,-2484,-2544,-2646,-2726,-2713,-2601,-2457,-2354,-2316,-2318,-2333,
+-2352,-2374,-2386,-2383,-2377,-2388,-2423,-2471,-2526,-2592,-2676,-2764,-2827,-2841,-2809,-2754,-2713,-2718,-2785,-2903,-3027,
+-3116,-3162,-3202,-3274,-3384,-3508,-3629,-3759,-3914,-4080,-4213,-4281,-4303,-4322,-4367,-4427,-4480,-4525,-4579,-4651,-4726,
+-4791,-4845,-4900,-4960,-5015,-5057,-5089,-5122,-5158,-5187,-5206,-5218,-5230,-5241,-5243,-5233,-5216,-5199,-5185,-5171,-5155,
+-5140,-5129,-5119,-5107,-5098,-5097,-5111,-5134,-5154,-5163,-5165,-5171,-5187,-5207,-5220,-5223,-5221,-5222,-5225,-5223,-5211,
+-5193,-5170,-5143,-5110,-5075,-5045,-5022,-4997,-4962,-4921,-4883,-4855,-4830,-4799,-4763,-4730,-4699,-4662,-4612,-4557,-4508,
+-4468,-4428,-4377,-4316,-4252,-4190,-4127,-4059,-3988,-3919,-3853,-3787,-3721,-3656,-3594,-3534,-3471,-3399,-3319,-3239,-3164,
+-3092,-3019,-2943,-2867,-2793,-2718,-2638,-2552,-2466,-2377,-2282,-2181,-2084,-1995,-1905,-1797,-1674,-1554,-1457,-1382,-1308,
+-1228,-1149,-1083,-1025,-963,-893,-828,-776,-731,-682,-632,-588,-550,-508,-458,-405,-362,-325,-286,-239,-191,
+-150,-113,-73,-26,21,68,114,161,206,242,274,309,351,397,440,481,523,567,612,655,695,
+736,778,824,874,928,980,1027,1071,1115,1161,1208,1253,1298,1344,1395,1453,1514,1571,1620,1662,1700,
+1736,1766,1789,1809,1831,1857,1883,1906,1927,1951,1975,1995,2010,2023,2037,2050,2063,2077,2095,2117,2142,
+2169,2202,2238,2274,2304,2334,2368,2404,2434,2457,2482,2514,2551,2588,2626,2672,2725,2776,2822,2867,2923,
+2992,3062,3123,3169,3204,3227,3233,3218,3188,3160,3157,3195,3268,3348,3400,3411,3395,3387,3416,3489,3594,
+3706,3805,3879,3926,3945,3939,3920,3905,3904,3912,3913,3900,3878,3856,3832,3801,3765,3731,3700,3661,3610,
+3552,3498,3453,3412,3373,3335,3291,3234,3169,3116,3090,3079,3061,3029,2996,2980,2974,2962,2932,2892,2856,
+2828,2800,2770,2739,2713,2695,2684,2678,2678,2689,2712,2741,2766,2780,2791,2809,2839,2883,2921,2956,2985,
+3013,3041,3066,3084,3092,3099,3116,3151,3205,3263,3308,3335,3359,3402,3472,3552,3613,3641,3648,3656,3676,
+3700,3711,3703,3674,3632,3582,3538,3514,3513,3521,3518,3496,3461,3424,3389,3348,3296,3231,3155,3072,2994,
+2934,2889,2846,2797,2745,2703,2669,2635,2601,2575,2562,2557,2550,2547,2557,2583,2614,2641,2667,2696,2721,
+2730,2719,2692,2655,2611,2566,2532,2515,2505,2484,2441,2378,2304,2223,2142,2070,2016,1976,1937,1887,1827,
+1764,1707,1658,1611,1564,1524,1496,1478,1464,1448,1440,1453,1485,1513,1509,1471,1414,1366,1339,1335,1347,
+1363,1368,1357,1336,1321,1317,1317,1312,1301,1287,1272,1256,1240,1227,1218,1209,1200,1191,1183,1169,1144,
+1108,1073,1051,1053,1081,1129,1180,1215,1224,1207,1174,1126,1060,979,902,848,826,814,787,744,719,
+756,857,973,1035,1008,920,828,778,776,801,825,831,822,814,809,796,758,697,632,578,527,
+462,384,310,244,167,65,-45,-142,-220,-301,-393,-478,-540,-597,-694,-846,-1025,-1194,-1349,-1512,-1697,
+-1893,-2073,-2226,-2357,-2477,-2587,-2685,-2773,-2856,-2937,-3007,-3058,-3095,-3136,-3191,-3245,-3279,-3288,-3291,-3302,-3317,
+-3325,-3330,-3345,-3360,-3352,-3317,-3283,-3265,-3219,-3081,-2856,-2640,-2544,-2591,-2712,-2824,-2910,-2997,-3107,-3232,-3358,
+-3478,-3580,-3648,-3675,-3678,-3681,-3696,-3720,-3752,-3795,-3848,-3905,-3963,-4029,-4106,-4187,-4262,-4332,-4408,-4495,-4579,
+-4642,-4685,-4721,-4751,-4752,-4698,-4597,-4492,-4434,-4436,-4468,-4492,-4495,-4496,-4513,-4548,-4588,-4626,-4665,-4708,-4746,
+-4768,-4767,-4752,-4734,-4729,-4747,-4790,-4846,-4898,-4936,-4957,-4969,-4981,-4998,-5024,-5053,-5073,-5083,-5097,-5136,-5200,
+-5271,-5326,-5358,-5378,-5396,-5411,-5422,-5427,-5434,-5447,-5468,-5497,-5532,-5570,-5608,-5648,-5689,-5731,-5769,-5801,-5828,
+-5847,-5857,-5862,-5873,-5892,-5907,-5906,-5892,-5881,-5888,-5913,-5943,-5969,-5985,-5986,-5969,-5942,-5916,-5894,-5870,-5832,
+-5783,-5738,-5710,-5700,-5701,-5699,-5681,-5639,-5586,-5544,-5537,-5565,-5605,-5628,-5621,-5594,-5570,-5560,-5559,-5550,-5528,
+-5508,-5505,-5517,-5530,-5537,-5547,-5570,-5598,-5607,-5576,-5497,-5377,-5234,-5107,-5040,-5045,-5087,-5112,-5101,-5067,-5022,
+-4962,-4890,-4831,-4805,-4786,-4720,-4590,-4448,-4353,-4305,-4255,-4174,-4095,-4059,-4056,-4040,-3987,-3925,-3885,-3861,-3821,
+-3759,-3705,-3678,-3662,-3623,-3552,-3471,-3403,-3354,-3311,-3266,-3224,-3191,-3175,-3173,-3180,-3192,-3204,-3215,-3217,-3197,
+-3149,-3083,-3023,-2979,-2937,-2879,-2808,-2743,-2691,-2636,-2565,-2484,-2412,-2349,-2273,-2168,-2044,-1929,-1838,-1762,-1684,
+-1593,-1497,-1406,-1327,-1253,-1177,-1098,-1019,-943,-861,-760,-638,-511,-402,-315,-237,-150,-48,63,172,273,
+370,476,593,705,794,871,975,1118,1261,1345,1371,1410,1509,1628,1688,1701,1785,2020,2308,2429,2262,
+1917,1633,1566,1690,1882,2052,2188,2300,2382,2426,2441,2446,2456,2482,2531,2605,2687,2745,2753,2702,2609,
+2517,2473,2508,2615,2754,2886,2996,3094,3190,3284,3368,3435,3481,3510,3541,3595,3673,3748,3785,3772,3729,
+3686,3661,3648,3635,3623,3625,3646,3680,3714,3736,3750,3761,3771,3785,3813,3871,3954,4036,4095,4133,4174,
+4230,4291,4344,4391,4440,4486,4516,4533,4554,4586,4617,4639,4668,4722,4773,4763,4666,4527,4406,4298,4121,
+3809,3399,3030,2838,2878,3093,3368,3594,3717,3750,3749,3754,3756,3723,3651,3577,3540,3532,3510,3452,3383,
+3341,3324,3289,3204,3098,3038,3066,3157,3237,3240,3151,3008,2868,2773,2733,2725,2717,2684,2619,2536,2457,
+2410,2404,2425,2437,2405,2322,2215,2121,2060,2023,1982,1926,1864,1820,1797,1775,1726,1651,1571,1507,1467,
+1449,1455,1471,1458,1386,1271,1180,1161,1186,1183,1125,1056,1026,1029,1016,964,907,876,858,814,741,
+675,637,608,559,495,447,428,418,395,358,321,289,259,236,225,225,218,193,157,127,103,
+79,50,26,15,11,1,-19,-42,-60,-72,-80,-86,-94,-110,-134,-153,-156,-148,-149,-169,-191,
+-198,-189,-185,-196,-213,-221,-223,-229,-242,-249,-248,-252,-272,-297,-309,-304,-292,-285,-279,-270,-258,
+-249,-238,-221,-197,-174,-157,-139,-116,-92,-71,-54,-41,-34,-35,-38,-33,-19,-5,6,25,57,
+89,104,99,98,116,148,175,190,201,219,241,262,280,301,325,345,354,349,337,331,345,
+375,406,430,469,555,689,826,919,974,1046,1169,1311,1388,1355,1245,1130,1048,976,881,770,688,
+654,638,597,526,460,428,426,426,417,407,411,424,434,437,436,428,410,385,363,351,350,
+353,356,359,363,367,371,371,362,341,312,286,267,252,231,199,160,117,71,21,-36,-102,
+-173,-242,-308,-369,-431,-495,-560,-621,-676,-728,-777,-823,-862,-895,-927,-960,-995,-1029,-1063,-1096,-1129,
+-1165,-1203,-1241,-1281,-1318,-1353,-1383,-1409,-1436,-1465,-1496,-1529,-1562,-1597,-1630,-1662,-1692,-1726,-1766,-1808,-1846,
+-1878,-1908,-1940,-1975,-2010,-2042,-2071,-2100,-2134,-2174,-2217,-2259,-2297,-2334,-2374,-2418,-2462,-2503,-2543,-2585,-2629,
+-2673,-2715,-2757,-2796,-2835,-2874,-2919,-2966,-3012,-3052,-3089,-3127,-3167,-3208,-3250,-3295,-3342,-3389,-3433,-3475,-3519,
+-3561,-3598,-3625,-3646,-3669,-3700,-3739,-3783,-3829,-3874,-3916,-3954,-3985,-4009,-4031,-4058,-4093,-4132,-4168,-4199,-4228,
+-4256,-4282,-4305,-4328,-4353,-4382,-4409,-4435,-4458,-4479,-4499,-4518,-4540,-4565,-4592,-4617,-4639,-4658,-4674,-4683,-4688,
+-4694,-4703,-4714,-4724,-4730,-4731,-4724,-4713,-4701,-4695,-4696,-4699,-4699,-4695,-4689,-4679,-4663,-4641,-4614,-4585,-4556,
+-4530,-4510,-4497,-4484,-4464,-4433,-4398,-4367,-4340,-4309,-4270,-4228,-4193,-4168,-4146,-4123,-4101,-4081,-4048,-3976,-3860,
+-3730,-3633,-3592,-3582,-3558,-3499,-3420,-3355,-3325,-3327,-3346,-3364,-3361,-3326,-3263,-3186,-3107,-3030,-2955,-2882,-2805,
+-2706,-2576,-2426,-2281,-2163,-2075,-2013,-1975,-1958,-1951,-1929,-1883,-1823,-1773,-1746,-1732,-1714,-1688,-1656,-1620,-1577,
+-1528,-1487,-1466,-1458,-1438,-1398,-1368,-1397,-1504,-1646,-1760,-1817,-1847,-1897,-1985,-2087,-2168,-2221,-2266,-2333,-2437,
+-2572,-2715,-2846,-2955,-3047,-3124,-3180,-3207,-3203,-3176,-3131,-3072,-3003,-2936,-2878,-2836,-2810,-2801,-2810,-2829,-2844,
+-2848,-2844,-2834,-2824,-2815,-2815,-2824,-2822,-2783,-2696,-2576,-2447,-2336,-2267,-2259,-2305,-2369,-2404,-2399,-2390,-2413,
+-2461,-2504,-2530,-2567,-2633,-2699,-2707,-2632,-2514,-2418,-2377,-2377,-2391,-2408,-2427,-2446,-2459,-2469,-2488,-2521,-2558,
+-2590,-2621,-2660,-2708,-2751,-2768,-2751,-2710,-2669,-2657,-2697,-2790,-2915,-3035,-3128,-3198,-3263,-3340,-3430,-3534,-3658,
+-3802,-3952,-4078,-4161,-4215,-4265,-4328,-4393,-4447,-4492,-4544,-4610,-4680,-4741,-4796,-4851,-4911,-4968,-5016,-5056,-5094,
+-5127,-5152,-5169,-5185,-5206,-5229,-5243,-5244,-5234,-5219,-5203,-5189,-5177,-5166,-5156,-5144,-5132,-5122,-5123,-5134,-5153,
+-5172,-5184,-5189,-5194,-5207,-5225,-5242,-5249,-5245,-5238,-5234,-5231,-5224,-5209,-5188,-5161,-5129,-5095,-5064,-5038,-5012,
+-4979,-4939,-4900,-4867,-4837,-4804,-4768,-4734,-4705,-4671,-4626,-4574,-4525,-4482,-4437,-4384,-4323,-4261,-4200,-4136,-4067,
+-3995,-3926,-3861,-3797,-3733,-3670,-3612,-3556,-3496,-3427,-3349,-3269,-3194,-3122,-3049,-2972,-2893,-2819,-2748,-2674,-2594,
+-2511,-2424,-2331,-2232,-2134,-2043,-1955,-1855,-1741,-1626,-1527,-1444,-1361,-1271,-1189,-1130,-1089,-1043,-977,-904,-840,
+-790,-747,-700,-653,-609,-566,-520,-471,-428,-391,-354,-312,-268,-223,-178,-133,-88,-45,-4,41,89,
+134,170,199,234,276,323,368,411,455,502,549,592,632,674,720,772,827,883,936,984,1029,
+1076,1126,1177,1226,1274,1321,1375,1435,1496,1552,1597,1634,1669,1705,1736,1760,1780,1803,1829,1854,1873,
+1890,1909,1930,1950,1967,1984,2001,2020,2039,2060,2085,2113,2142,2171,2204,2240,2273,2301,2328,2357,2388,
+2414,2439,2467,2499,2529,2555,2584,2629,2687,2742,2784,2819,2862,2919,2983,3043,3095,3138,3169,3183,3177,
+3164,3163,3194,3259,3340,3410,3445,3446,3436,3448,3502,3601,3722,3832,3908,3945,3956,3953,3938,3915,3895,
+3886,3885,3877,3859,3840,3830,3821,3797,3758,3712,3668,3622,3567,3508,3451,3400,3356,3322,3297,3266,3211,
+3141,3085,3065,3069,3062,3029,2986,2957,2941,2917,2877,2834,2800,2776,2753,2723,2693,2669,2652,2644,2645,
+2656,2677,2709,2746,2780,2805,2825,2849,2883,2916,2953,2989,3022,3056,3090,3122,3145,3160,3172,3191,3222,
+3261,3300,3329,3347,3365,3400,3456,3522,3579,3616,3639,3663,3696,3728,3738,3713,3658,3591,3532,3493,3475,
+3474,3479,3472,3443,3397,3347,3303,3265,3224,3171,3106,3035,2971,2919,2872,2818,2759,2706,2669,2643,2617,
+2592,2578,2577,2580,2578,2579,2591,2615,2640,2661,2685,2713,2735,2740,2728,2707,2681,2647,2607,2575,2556,
+2539,2508,2456,2391,2319,2241,2156,2073,2006,1954,1908,1856,1795,1734,1678,1629,1581,1533,1492,1466,1456,
+1448,1436,1429,1443,1476,1505,1505,1477,1441,1415,1399,1384,1369,1358,1352,1347,1337,1328,1321,1316,1308,
+1293,1273,1250,1225,1203,1187,1177,1168,1160,1156,1155,1150,1132,1102,1065,1035,1024,1042,1083,1128,1159,
+1167,1159,1141,1107,1046,962,878,822,795,778,750,710,687,705,765,838,883,880,839,790,764,
+768,791,810,808,792,778,772,755,703,621,542,487,445,391,322,261,213,159,79,-17,-105,
+-182,-268,-370,-468,-543,-617,-729,-893,-1078,-1245,-1397,-1559,-1750,-1952,-2136,-2288,-2415,-2528,-2634,-2733,-2821,
+-2901,-2972,-3032,-3080,-3120,-3163,-3211,-3256,-3286,-3298,-3304,-3313,-3318,-3315,-3311,-3317,-3324,-3316,-3289,-3267,-3263,
+-3242,-3149,-2977,-2788,-2660,-2626,-2661,-2729,-2810,-2899,-2991,-3093,-3222,-3388,-3564,-3697,-3758,-3761,-3749,-3757,-3793,
+-3849,-3913,-3977,-4040,-4107,-4185,-4272,-4357,-4431,-4494,-4548,-4594,-4629,-4661,-4700,-4749,-4794,-4809,-4771,-4684,-4582,
+-4509,-4486,-4505,-4536,-4559,-4576,-4594,-4618,-4647,-4683,-4726,-4768,-4796,-4807,-4809,-4816,-4826,-4837,-4853,-4886,-4936,
+-4991,-5034,-5062,-5082,-5102,-5124,-5148,-5172,-5195,-5214,-5232,-5257,-5293,-5335,-5376,-5411,-5440,-5458,-5462,-5453,-5444,
+-5443,-5454,-5477,-5512,-5556,-5599,-5633,-5659,-5687,-5722,-5761,-5796,-5823,-5840,-5845,-5843,-5849,-5873,-5904,-5919,-5906,
+-5881,-5869,-5878,-5901,-5920,-5926,-5915,-5886,-5848,-5811,-5782,-5756,-5724,-5686,-5653,-5635,-5633,-5640,-5642,-5628,-5592,
+-5549,-5523,-5536,-5581,-5628,-5645,-5623,-5584,-5557,-5555,-5564,-5562,-5542,-5516,-5498,-5488,-5475,-5463,-5464,-5478,-5487,
+-5468,-5412,-5329,-5227,-5120,-5037,-5014,-5053,-5111,-5136,-5113,-5065,-5016,-4962,-4902,-4855,-4832,-4804,-4723,-4587,-4454,
+-4375,-4336,-4281,-4191,-4106,-4068,-4061,-4036,-3979,-3919,-3885,-3861,-3818,-3756,-3704,-3678,-3660,-3619,-3552,-3481,-3421,
+-3369,-3317,-3264,-3220,-3188,-3168,-3160,-3160,-3165,-3170,-3177,-3179,-3166,-3128,-3071,-3015,-2971,-2927,-2866,-2792,-2724,
+-2671,-2614,-2538,-2451,-2374,-2309,-2234,-2134,-2017,-1911,-1826,-1749,-1664,-1571,-1480,-1400,-1325,-1249,-1166,-1081,-998,
+-916,-828,-724,-606,-488,-381,-286,-191,-86,22,124,214,300,396,504,610,695,759,837,971,1153,
+1316,1397,1415,1453,1560,1682,1743,1768,1880,2142,2426,2500,2264,1861,1541,1442,1518,1646,1761,1872,1987,
+2085,2143,2171,2200,2252,2336,2451,2579,2682,2722,2687,2608,2533,2505,2543,2641,2769,2892,2990,3070,3151,
+3241,3331,3411,3474,3514,3533,3544,3572,3625,3687,3727,3731,3720,3718,3729,3736,3724,3696,3672,3667,3682,
+3708,3737,3765,3791,3810,3829,3858,3913,3992,4072,4133,4172,4208,4257,4315,4371,4421,4469,4512,4544,4565,
+4586,4612,4635,4649,4669,4713,4768,4782,4713,4574,4419,4278,4110,3850,3484,3096,2818,2745,2874,3116,3359,
+3527,3612,3647,3668,3681,3672,3636,3589,3558,3544,3524,3481,3428,3390,3375,3352,3287,3189,3111,3104,3174,
+3265,3307,3256,3125,2970,2855,2810,2808,2797,2742,2650,2557,2488,2449,2433,2432,2430,2402,2330,2231,2146,
+2104,2088,2056,1989,1918,1888,1904,1919,1884,1797,1696,1613,1557,1532,1547,1593,1612,1542,1396,1265,1231,
+1273,1291,1225,1117,1055,1058,1072,1045,985,929,888,841,781,726,690,655,600,535,488,471,460,
+432,386,343,314,296,283,276,275,268,249,218,184,150,116,85,65,61,61,51,28,0,
+-18,-28,-34,-43,-57,-77,-96,-108,-104,-94,-93,-110,-129,-132,-121,-119,-138,-169,-187,-187,-182,
+-184,-187,-186,-189,-208,-239,-262,-265,-258,-252,-251,-248,-242,-235,-227,-213,-195,-182,-171,-155,-129,
+-98,-72,-50,-31,-16,-10,-10,-4,11,30,44,62,92,127,150,155,154,162,177,195,218,
+250,285,310,321,332,352,377,394,402,411,424,438,443,445,452,472,506,556,616,671,706,
+728,773,878,1043,1224,1369,1449,1461,1405,1286,1134,1008,957,963,950,853,692,549,483,476,472,
+446,426,443,486,518,514,483,446,414,389,371,364,364,367,369,369,370,372,374,376,372,
+359,338,315,299,285,267,239,205,168,130,87,36,-25,-93,-167,-241,-313,-382,-451,-520,-589,
+-653,-709,-758,-802,-841,-876,-907,-939,-973,-1008,-1040,-1071,-1103,-1139,-1178,-1217,-1254,-1291,-1326,-1359,-1389,
+-1418,-1452,-1488,-1525,-1561,-1596,-1630,-1662,-1694,-1730,-1773,-1818,-1859,-1893,-1924,-1956,-1990,-2024,-2053,-2080,-2106,
+-2137,-2173,-2212,-2250,-2284,-2318,-2357,-2400,-2446,-2490,-2535,-2580,-2624,-2668,-2711,-2757,-2801,-2842,-2881,-2924,-2971,
+-3015,-3052,-3086,-3123,-3166,-3211,-3257,-3304,-3353,-3402,-3446,-3486,-3524,-3560,-3589,-3611,-3631,-3654,-3685,-3723,-3767,
+-3813,-3858,-3899,-3935,-3969,-3999,-4029,-4061,-4097,-4134,-4166,-4194,-4220,-4247,-4273,-4296,-4320,-4347,-4377,-4403,-4425,
+-4446,-4469,-4493,-4519,-4545,-4573,-4600,-4621,-4639,-4656,-4673,-4686,-4694,-4700,-4706,-4714,-4720,-4721,-4719,-4716,-4714,
+-4713,-4713,-4713,-4712,-4708,-4702,-4695,-4683,-4666,-4645,-4622,-4595,-4566,-4538,-4517,-4506,-4498,-4485,-4463,-4433,-4399,
+-4362,-4319,-4272,-4228,-4196,-4177,-4160,-4135,-4103,-4075,-4051,-4009,-3924,-3803,-3686,-3615,-3592,-3579,-3535,-3453,-3357,
+-3285,-3261,-3283,-3324,-3345,-3324,-3263,-3186,-3110,-3038,-2968,-2899,-2827,-2738,-2622,-2487,-2353,-2235,-2133,-2040,-1967,
+-1930,-1923,-1918,-1887,-1829,-1769,-1727,-1701,-1676,-1645,-1613,-1581,-1542,-1492,-1444,-1419,-1420,-1419,-1385,-1332,-1316,
+-1386,-1532,-1687,-1790,-1836,-1871,-1938,-2037,-2138,-2215,-2274,-2339,-2434,-2557,-2689,-2810,-2912,-3000,-3076,-3133,-3160,
+-3152,-3116,-3060,-2994,-2925,-2864,-2820,-2796,-2788,-2797,-2817,-2838,-2851,-2854,-2853,-2848,-2834,-2811,-2785,-2753,-2694,
+-2588,-2440,-2288,-2171,-2106,-2088,-2112,-2167,-2228,-2268,-2281,-2298,-2351,-2432,-2506,-2547,-2574,-2614,-2660,-2671,-2622,
+-2536,-2463,-2436,-2447,-2471,-2492,-2513,-2538,-2564,-2588,-2610,-2631,-2645,-2645,-2633,-2625,-2636,-2668,-2700,-2711,-2691,
+-2654,-2625,-2635,-2704,-2830,-2979,-3103,-3175,-3208,-3246,-3325,-3447,-3583,-3708,-3815,-3914,-4013,-4115,-4213,-4302,-4373,
+-4427,-4469,-4513,-4566,-4628,-4693,-4755,-4815,-4871,-4923,-4972,-5020,-5063,-5097,-5119,-5137,-5156,-5179,-5203,-5222,-5234,
+-5238,-5234,-5221,-5206,-5192,-5180,-5169,-5157,-5149,-5149,-5157,-5169,-5180,-5190,-5199,-5206,-5211,-5219,-5233,-5251,-5264,
+-5265,-5256,-5247,-5240,-5232,-5218,-5199,-5175,-5147,-5114,-5079,-5046,-5016,-4986,-4953,-4917,-4883,-4849,-4812,-4774,-4738,
+-4706,-4671,-4628,-4579,-4532,-4487,-4441,-4386,-4327,-4269,-4210,-4146,-4074,-4000,-3929,-3863,-3801,-3742,-3686,-3633,-3578,
+-3517,-3448,-3372,-3292,-3215,-3142,-3069,-2993,-2915,-2840,-2770,-2697,-2619,-2535,-2451,-2363,-2270,-2174,-2084,-2002,-1917,
+-1821,-1719,-1624,-1537,-1446,-1349,-1261,-1203,-1171,-1137,-1076,-994,-915,-857,-812,-767,-716,-666,-621,-578,-535,
+-493,-453,-415,-377,-336,-291,-244,-195,-150,-110,-73,-31,14,59,97,131,167,208,250,291,334,
+382,436,487,532,572,617,669,729,789,846,897,943,989,1038,1091,1147,1202,1254,1306,1360,1420,
+1480,1533,1577,1613,1648,1683,1713,1736,1755,1775,1799,1821,1839,1853,1870,1890,1910,1930,1950,1972,1995,
+2019,2047,2078,2111,2142,2172,2205,2239,2271,2298,2322,2347,2372,2395,2419,2450,2483,2509,2527,2551,2594,
+2652,2707,2746,2775,2810,2858,2911,2961,3007,3049,3084,3106,3116,3131,3169,3242,3337,3424,3475,3485,3474,
+3476,3517,3605,3724,3843,3932,3975,3981,3974,3964,3948,3919,3887,3866,3856,3840,3817,3797,3796,3800,3788,
+3747,3691,3636,3583,3525,3461,3397,3340,3296,3271,3259,3238,3186,3112,3055,3041,3055,3054,3019,2966,2922,
+2889,2853,2809,2768,2742,2724,2704,2678,2652,2629,2613,2605,2611,2631,2660,2696,2737,2779,2818,2850,2881,
+2916,2940,2976,3014,3054,3095,3133,3164,3186,3203,3222,3250,3283,3314,3336,3348,3357,3372,3397,3435,3484,
+3543,3604,3659,3706,3742,3762,3753,3706,3628,3546,3485,3453,3443,3439,3432,3410,3368,3309,3245,3191,3153,
+3125,3093,3049,2999,2949,2900,2845,2778,2710,2658,2626,2605,2585,2570,2572,2588,2603,2610,2615,2627,2646,
+2661,2674,2694,2723,2745,2748,2737,2722,2703,2674,2637,2603,2578,2554,2515,2460,2398,2331,2255,2167,2078,
+1999,1935,1879,1822,1760,1696,1637,1586,1542,1502,1467,1444,1435,1431,1424,1419,1431,1463,1493,1500,1485,
+1468,1460,1452,1429,1391,1355,1336,1334,1338,1339,1334,1322,1305,1284,1257,1224,1191,1163,1146,1135,1125,
+1118,1116,1118,1116,1102,1076,1045,1018,1003,1011,1043,1084,1113,1120,1111,1095,1064,1006,926,847,793,
+764,743,717,687,667,665,680,704,730,749,754,747,742,752,777,798,796,776,757,746,718,
+648,545,450,391,356,314,259,211,177,138,74,-6,-86,-165,-265,-386,-498,-581,-658,-772,-935,
+-1114,-1277,-1430,-1601,-1801,-2009,-2194,-2346,-2473,-2586,-2690,-2786,-2872,-2947,-3008,-3058,-3102,-3143,-3185,-3226,-3261,
+-3285,-3299,-3308,-3314,-3314,-3305,-3292,-3283,-3276,-3261,-3243,-3236,-3246,-3246,-3200,-3094,-2952,-2811,-2704,-2650,-2660,
+-2718,-2784,-2826,-2867,-2969,-3167,-3420,-3637,-3755,-3783,-3777,-3788,-3831,-3895,-3964,-4032,-4106,-4197,-4300,-4400,-4480,
+-4533,-4563,-4574,-4573,-4582,-4622,-4697,-4781,-4836,-4842,-4803,-4733,-4649,-4571,-4525,-4522,-4556,-4604,-4647,-4675,-4692,
+-4710,-4741,-4786,-4827,-4847,-4853,-4863,-4892,-4925,-4947,-4958,-4983,-5031,-5092,-5142,-5176,-5202,-5228,-5255,-5280,-5304,
+-5327,-5345,-5358,-5371,-5388,-5410,-5434,-5462,-5491,-5512,-5514,-5500,-5482,-5473,-5478,-5499,-5541,-5597,-5651,-5686,-5705,
+-5727,-5765,-5813,-5855,-5876,-5873,-5852,-5828,-5825,-5857,-5910,-5951,-5955,-5931,-5906,-5899,-5905,-5906,-5893,-5862,-5818,
+-5769,-5723,-5688,-5662,-5640,-5621,-5609,-5609,-5616,-5621,-5619,-5601,-5570,-5539,-5533,-5565,-5620,-5663,-5665,-5628,-5581,
+-5555,-5559,-5572,-5572,-5553,-5528,-5507,-5485,-5455,-5425,-5411,-5413,-5408,-5369,-5297,-5210,-5124,-5049,-5003,-5009,-5062,
+-5120,-5137,-5106,-5057,-5012,-4970,-4922,-4880,-4847,-4796,-4692,-4548,-4425,-4365,-4341,-4293,-4204,-4117,-4071,-4052,-4019,
+-3963,-3910,-3880,-3857,-3814,-3755,-3706,-3677,-3649,-3602,-3542,-3486,-3437,-3386,-3325,-3263,-3211,-3176,-3153,-3140,-3133,
+-3130,-3128,-3127,-3124,-3111,-3078,-3032,-2984,-2943,-2900,-2843,-2777,-2715,-2660,-2596,-2513,-2422,-2342,-2274,-2199,-2101,
+-1993,-1896,-1815,-1735,-1645,-1552,-1469,-1395,-1319,-1233,-1140,-1048,-959,-870,-775,-671,-564,-458,-355,-249,-135,
+-15,97,190,265,341,433,537,627,689,743,841,1013,1225,1391,1458,1466,1505,1612,1729,1794,1846,
+1997,2274,2528,2549,2278,1874,1564,1442,1444,1470,1498,1560,1663,1770,1853,1916,1987,2081,2201,2341,2480,
+2579,2606,2571,2525,2522,2578,2678,2795,2903,2989,3056,3122,3202,3291,3374,3439,3488,3523,3541,3547,3560,
+3594,3638,3667,3676,3681,3706,3746,3776,3780,3761,3737,3723,3725,3741,3767,3793,3813,3827,3846,3882,3942,
+4018,4095,4158,4202,4237,4279,4333,4393,4449,4497,4536,4566,4589,4609,4631,4649,4658,4672,4710,4768,4806,
+4768,4639,4460,4281,4104,3878,3563,3195,2879,2716,2732,2879,3076,3260,3400,3490,3542,3572,3592,3600,3596,
+3586,3576,3561,3532,3491,3458,3447,3438,3393,3299,3192,3130,3145,3213,3268,3254,3156,3020,2914,2874,2874,
+2857,2795,2717,2666,2644,2610,2540,2456,2392,2351,2301,2228,2165,2147,2155,2135,2061,1977,1951,1991,2038,
+2023,1940,1835,1744,1671,1622,1618,1661,1696,1642,1495,1345,1292,1328,1350,1281,1159,1083,1096,1141,1142,
+1079,992,922,873,834,797,761,715,654,591,548,528,512,480,434,390,360,346,338,332,326,
+317,301,275,242,204,168,139,121,114,108,94,70,44,28,21,14,0,-19,-37,-46,-46,
+-41,-37,-40,-51,-62,-63,-59,-67,-97,-134,-156,-155,-146,-143,-145,-141,-136,-144,-168,-193,-207,
+-210,-212,-215,-217,-216,-215,-211,-203,-192,-185,-179,-166,-139,-108,-82,-59,-32,-5,13,23,36,
+58,83,101,114,134,163,187,200,207,216,226,240,264,304,349,379,392,403,422,441,450,
+452,469,502,532,538,527,521,532,550,560,561,561,561,557,559,598,709,899,1134,1349,1474,
+1471,1356,1207,1125,1156,1245,1267,1145,926,735,653,651,649,618,595,619,667,676,617,521,441,
+400,387,384,380,376,372,366,361,356,353,352,355,362,365,360,346,330,312,289,263,234,
+205,173,133,83,27,-35,-106,-184,-265,-343,-415,-486,-557,-624,-683,-733,-777,-818,-856,-890,-922,
+-956,-991,-1023,-1052,-1082,-1117,-1156,-1195,-1231,-1267,-1304,-1340,-1375,-1410,-1448,-1488,-1528,-1564,-1598,-1631,-1666,
+-1701,-1741,-1784,-1829,-1869,-1904,-1936,-1970,-2004,-2036,-2065,-2089,-2113,-2140,-2173,-2210,-2246,-2279,-2311,-2349,-2392,
+-2438,-2483,-2529,-2576,-2621,-2665,-2710,-2758,-2805,-2846,-2884,-2925,-2969,-3011,-3045,-3077,-3116,-3164,-3215,-3264,-3311,
+-3359,-3406,-3449,-3488,-3522,-3550,-3572,-3592,-3614,-3640,-3671,-3705,-3746,-3793,-3840,-3883,-3922,-3961,-3999,-4034,-4067,
+-4099,-4130,-4158,-4183,-4209,-4236,-4262,-4287,-4314,-4344,-4374,-4399,-4418,-4438,-4461,-4489,-4518,-4547,-4577,-4603,-4621,
+-4633,-4647,-4664,-4682,-4696,-4705,-4711,-4717,-4720,-4718,-4715,-4713,-4717,-4724,-4729,-4729,-4723,-4713,-4704,-4696,-4685,
+-4667,-4647,-4625,-4603,-4578,-4553,-4531,-4517,-4507,-4495,-4476,-4447,-4411,-4371,-4329,-4286,-4244,-4210,-4187,-4171,-4145,
+-4108,-4069,-4043,-4018,-3966,-3873,-3759,-3668,-3619,-3595,-3557,-3478,-3365,-3258,-3201,-3214,-3271,-3320,-3318,-3265,-3193,
+-3124,-3060,-2992,-2920,-2846,-2766,-2670,-2560,-2450,-2346,-2235,-2113,-1998,-1924,-1901,-1899,-1879,-1829,-1767,-1718,-1685,
+-1653,-1616,-1578,-1545,-1511,-1468,-1422,-1397,-1400,-1408,-1380,-1311,-1253,-1275,-1397,-1562,-1693,-1761,-1799,-1862,-1966,
+-2085,-2184,-2254,-2319,-2405,-2518,-2642,-2758,-2859,-2947,-3022,-3077,-3101,-3089,-3046,-2981,-2909,-2845,-2799,-2773,-2765,
+-2769,-2785,-2807,-2828,-2841,-2849,-2850,-2837,-2802,-2740,-2663,-2570,-2452,-2300,-2132,-1994,-1921,-1915,-1948,-1997,-2049,
+-2100,-2141,-2176,-2219,-2281,-2354,-2417,-2459,-2492,-2534,-2581,-2604,-2584,-2535,-2495,-2490,-2515,-2548,-2573,-2592,-2616,
+-2646,-2671,-2683,-2681,-2667,-2638,-2597,-2562,-2556,-2589,-2641,-2678,-2678,-2643,-2597,-2572,-2606,-2716,-2879,-3030,-3110,
+-3120,-3121,-3178,-3295,-3426,-3530,-3618,-3726,-3872,-4034,-4175,-4277,-4348,-4402,-4446,-4487,-4531,-4589,-4661,-4736,-4802,
+-4853,-4898,-4946,-4997,-5044,-5080,-5104,-5124,-5143,-5160,-5172,-5184,-5201,-5220,-5231,-5228,-5216,-5202,-5189,-5177,-5165,
+-5160,-5166,-5180,-5193,-5200,-5204,-5210,-5219,-5227,-5234,-5242,-5255,-5269,-5276,-5271,-5259,-5246,-5233,-5217,-5198,-5178,
+-5155,-5126,-5090,-5052,-5018,-4989,-4961,-4929,-4895,-4859,-4821,-4780,-4741,-4703,-4664,-4622,-4577,-4535,-4494,-4447,-4391,
+-4331,-4272,-4213,-4149,-4079,-4006,-3934,-3866,-3803,-3747,-3697,-3645,-3588,-3523,-3454,-3381,-3305,-3229,-3156,-3085,-3013,
+-2940,-2867,-2795,-2720,-2639,-2554,-2471,-2387,-2299,-2206,-2118,-2040,-1966,-1885,-1796,-1708,-1624,-1536,-1438,-1345,-1279,
+-1242,-1209,-1152,-1068,-981,-914,-869,-828,-781,-731,-685,-645,-606,-565,-521,-476,-434,-392,-350,-305,-258,
+-212,-171,-134,-96,-54,-11,29,68,107,147,186,222,264,315,373,430,478,522,570,629,695,
+759,816,865,911,958,1008,1064,1124,1184,1244,1300,1354,1409,1463,1514,1557,1595,1630,1663,1691,1712,
+1729,1746,1766,1786,1802,1817,1834,1854,1876,1898,1922,1948,1975,2005,2036,2070,2104,2134,2163,2194,2228,
+2259,2287,2312,2335,2357,2377,2399,2428,2459,2485,2504,2527,2565,2614,2661,2695,2724,2758,2802,2848,2887,
+2922,2956,2989,3016,3044,3088,3165,3275,3392,3480,3515,3504,3487,3504,3575,3689,3812,3910,3962,3972,3963,
+3959,3963,3956,3926,3886,3856,3839,3820,3790,3766,3763,3769,3757,3712,3652,3595,3545,3488,3420,3349,3288,
+3247,3227,3219,3199,3149,3080,3028,3017,3030,3026,2986,2925,2869,2822,2776,2733,2701,2683,2670,2653,2634,
+2615,2598,2583,2577,2588,2614,2645,2678,2715,2762,2814,2863,2903,2940,2958,2995,3035,3081,3128,3166,3190,
+3202,3216,3241,3279,3319,3346,3354,3352,3353,3366,3388,3415,3456,3523,3614,3702,3762,3781,3765,3724,3658,
+3575,3497,3445,3424,3418,3407,3380,3339,3285,3219,3149,3090,3054,3038,3025,3002,2966,2922,2870,2806,2730,
+2659,2609,2582,2564,2549,2543,2559,2588,2613,2625,2634,2648,2661,2666,2669,2685,2714,2737,2743,2734,2723,
+2709,2683,2646,2610,2581,2550,2508,2454,2394,2327,2247,2156,2065,1984,1914,1852,1792,1730,1663,1597,1540,
+1500,1470,1445,1424,1413,1410,1408,1409,1422,1453,1486,1501,1495,1485,1482,1477,1451,1404,1354,1324,1319,
+1329,1339,1337,1322,1300,1275,1244,1205,1163,1130,1110,1097,1085,1075,1072,1073,1067,1050,1028,1009,995,
+986,990,1018,1059,1092,1100,1084,1058,1021,963,889,817,767,738,717,694,671,652,634,616,607,
+620,653,686,703,709,722,751,777,779,759,736,718,682,603,492,389,324,286,250,208,173,
+144,102,34,-42,-115,-196,-309,-446,-567,-649,-718,-823,-976,-1145,-1303,-1460,-1641,-1848,-2054,-2235,-2388,
+-2522,-2641,-2746,-2837,-2919,-2991,-3048,-3091,-3129,-3167,-3206,-3242,-3272,-3293,-3305,-3311,-3313,-3310,-3303,-3293,-3280,
+-3262,-3241,-3225,-3222,-3233,-3239,-3225,-3182,-3104,-2984,-2837,-2714,-2664,-2686,-2718,-2708,-2689,-2752,-2954,-3247,-3519,
+-3689,-3761,-3787,-3814,-3856,-3909,-3965,-4033,-4123,-4238,-4361,-4466,-4537,-4572,-4579,-4559,-4531,-4535,-4608,-4734,-4849,
+-4893,-4859,-4791,-4726,-4667,-4607,-4556,-4540,-4572,-4637,-4704,-4749,-4771,-4787,-4815,-4858,-4895,-4913,-4917,-4934,-4973,
+-5014,-5039,-5051,-5077,-5131,-5197,-5251,-5285,-5311,-5339,-5371,-5404,-5437,-5463,-5476,-5477,-5476,-5482,-5493,-5504,-5519,
+-5542,-5565,-5577,-5570,-5554,-5539,-5535,-5548,-5588,-5650,-5714,-5756,-5777,-5798,-5840,-5893,-5930,-5931,-5899,-5851,-5809,
+-5801,-5837,-5903,-5962,-5987,-5981,-5966,-5957,-5951,-5934,-5898,-5846,-5783,-5720,-5666,-5626,-5598,-5579,-5570,-5574,-5588,
+-5604,-5613,-5611,-5596,-5572,-5554,-5560,-5599,-5654,-5691,-5685,-5643,-5596,-5572,-5575,-5586,-5583,-5564,-5541,-5522,-5498,
+-5459,-5418,-5395,-5392,-5382,-5337,-5257,-5166,-5087,-5030,-5004,-5020,-5072,-5123,-5135,-5104,-5057,-5016,-4977,-4933,-4886,
+-4835,-4757,-4632,-4485,-4374,-4330,-4320,-4283,-4205,-4124,-4075,-4048,-4010,-3954,-3903,-3874,-3851,-3813,-3761,-3711,-3672,
+-3632,-3582,-3529,-3485,-3446,-3399,-3336,-3267,-3208,-3167,-3139,-3119,-3102,-3090,-3080,-3072,-3062,-3042,-3009,-2969,-2930,
+-2896,-2859,-2811,-2756,-2700,-2640,-2567,-2478,-2387,-2309,-2238,-2159,-2063,-1963,-1874,-1794,-1708,-1614,-1522,-1442,-1369,
+-1288,-1194,-1093,-996,-902,-806,-707,-608,-512,-416,-316,-206,-85,38,151,241,316,392,484,583,664,
+721,788,916,1114,1325,1467,1512,1519,1566,1667,1768,1835,1926,2125,2413,2629,2603,2324,1957,1682,1550,
+1491,1439,1404,1429,1511,1610,1696,1775,1864,1966,2080,2207,2338,2443,2498,2517,2545,2616,2721,2829,2921,
+2995,3059,3120,3186,3262,3341,3406,3452,3488,3519,3541,3550,3558,3581,3614,3640,3651,3662,3690,3732,3768,
+3787,3790,3786,3782,3784,3798,3820,3834,3833,3826,3835,3875,3939,4013,4086,4153,4208,4251,4293,4344,4404,
+4464,4514,4552,4583,4608,4628,4645,4658,4668,4683,4718,4777,4832,4829,4731,4557,4361,4169,3953,3676,3350,
+3049,2845,2761,2771,2848,2974,3126,3264,3362,3427,3480,3529,3563,3577,3581,3583,3574,3550,3523,3514,3514,
+3484,3400,3284,3191,3161,3186,3219,3208,3133,3026,2943,2913,2910,2882,2826,2795,2832,2894,2882,2746,2549,
+2394,2322,2292,2253,2215,2211,2231,2219,2145,2052,2013,2045,2087,2077,2009,1922,1843,1762,1680,1627,1628,
+1651,1621,1513,1388,1330,1346,1357,1293,1181,1110,1128,1189,1209,1152,1051,962,911,885,861,823,772,
+717,668,631,602,574,540,499,457,423,402,392,384,373,357,337,314,285,254,225,202,184,
+165,147,128,108,90,78,72,64,46,23,9,10,19,22,15,6,0,-2,-7,-19,-41,
+-70,-97,-108,-104,-96,-97,-101,-97,-86,-84,-98,-121,-142,-157,-169,-178,-182,-184,-186,-189,-186,
+-179,-173,-170,-159,-137,-111,-90,-71,-44,-8,23,44,64,93,125,147,156,165,182,202,218,
+234,254,274,293,317,352,391,417,430,446,473,502,516,520,533,562,590,599,594,593,602,
+608,592,562,536,526,520,502,487,516,629,822,1036,1188,1219,1144,1051,1045,1164,1331,1405,1313,
+1113,943,886,907,921,903,893,922,947,897,759,594,474,421,405,396,382,369,361,355,349,
+344,339,335,336,343,350,352,345,333,317,299,278,258,236,207,166,113,57,-1,-66,-142,
+-225,-308,-384,-455,-524,-591,-652,-705,-752,-796,-836,-873,-906,-940,-976,-1007,-1035,-1063,-1097,-1137,-1176,
+-1212,-1248,-1288,-1328,-1367,-1407,-1448,-1492,-1532,-1566,-1598,-1630,-1666,-1706,-1749,-1792,-1832,-1869,-1902,-1937,-1973,
+-2008,-2039,-2067,-2092,-2116,-2142,-2174,-2210,-2246,-2280,-2314,-2352,-2395,-2438,-2483,-2529,-2576,-2621,-2663,-2706,-2753,
+-2799,-2839,-2876,-2915,-2957,-2997,-3031,-3065,-3108,-3160,-3215,-3265,-3310,-3353,-3395,-3436,-3474,-3507,-3532,-3550,-3569,
+-3595,-3626,-3659,-3692,-3731,-3779,-3829,-3875,-3917,-3960,-4002,-4039,-4068,-4095,-4121,-4147,-4173,-4198,-4224,-4252,-4280,
+-4310,-4343,-4375,-4401,-4422,-4442,-4467,-4493,-4520,-4547,-4574,-4598,-4613,-4623,-4633,-4651,-4673,-4692,-4705,-4713,-4718,
+-4722,-4723,-4723,-4723,-4726,-4733,-4739,-4739,-4729,-4715,-4703,-4695,-4686,-4670,-4649,-4627,-4608,-4589,-4570,-4552,-4534,
+-4519,-4502,-4481,-4453,-4416,-4377,-4340,-4304,-4266,-4229,-4198,-4175,-4149,-4111,-4066,-4031,-4009,-3979,-3918,-3827,-3733,
+-3665,-3623,-3582,-3509,-3395,-3266,-3177,-3168,-3226,-3290,-3306,-3265,-3202,-3144,-3089,-3023,-2945,-2866,-2787,-2702,-2611,
+-2526,-2444,-2343,-2210,-2066,-1956,-1902,-1883,-1857,-1805,-1744,-1695,-1661,-1630,-1592,-1553,-1519,-1488,-1450,-1407,-1378,
+-1377,-1389,-1374,-1312,-1241,-1230,-1314,-1459,-1590,-1665,-1708,-1772,-1882,-2013,-2125,-2205,-2272,-2354,-2460,-2580,-2698,
+-2803,-2894,-2965,-3013,-3032,-3018,-2971,-2902,-2828,-2770,-2739,-2732,-2737,-2748,-2764,-2784,-2805,-2822,-2831,-2824,-2785,
+-2703,-2585,-2448,-2305,-2155,-2000,-1861,-1771,-1749,-1784,-1842,-1896,-1938,-1978,-2025,-2081,-2139,-2187,-2218,-2240,-2271,
+-2324,-2398,-2470,-2517,-2529,-2515,-2500,-2506,-2531,-2559,-2577,-2587,-2602,-2624,-2641,-2642,-2624,-2595,-2558,-2516,-2483,
+-2481,-2522,-2585,-2632,-2639,-2608,-2554,-2505,-2500,-2575,-2727,-2894,-2997,-3011,-2994,-3020,-3107,-3218,-3318,-3424,-3576,
+-3776,-3976,-4127,-4224,-4294,-4361,-4424,-4473,-4514,-4565,-4634,-4709,-4776,-4827,-4874,-4925,-4980,-5028,-5063,-5089,-5113,
+-5133,-5142,-5143,-5145,-5161,-5186,-5208,-5216,-5213,-5206,-5201,-5193,-5182,-5172,-5171,-5180,-5193,-5204,-5212,-5220,-5232,
+-5244,-5252,-5257,-5264,-5273,-5279,-5277,-5265,-5248,-5230,-5210,-5189,-5168,-5147,-5124,-5094,-5059,-5025,-4995,-4965,-4932,
+-4897,-4861,-4824,-4785,-4744,-4702,-4661,-4619,-4580,-4543,-4505,-4457,-4398,-4334,-4272,-4211,-4149,-4084,-4016,-3947,-3879,
+-3813,-3754,-3703,-3650,-3588,-3520,-3452,-3386,-3316,-3242,-3167,-3099,-3035,-2970,-2900,-2827,-2750,-2668,-2583,-2500,-2417,
+-2330,-2238,-2150,-2072,-1999,-1921,-1836,-1751,-1673,-1593,-1502,-1404,-1322,-1269,-1230,-1179,-1106,-1027,-964,-922,-889,
+-850,-804,-761,-722,-685,-644,-595,-544,-494,-448,-406,-365,-321,-276,-232,-191,-152,-113,-72,-31,10,
+52,95,135,174,216,266,325,383,435,483,537,600,669,735,792,842,890,941,995,1053,1114,
+1177,1240,1299,1352,1401,1448,1493,1537,1576,1611,1641,1667,1687,1704,1720,1736,1752,1767,1782,1799,1820,
+1843,1868,1895,1925,1956,1989,2024,2059,2091,2118,2145,2175,2209,2241,2269,2294,2319,2342,2362,2382,2405,
+2432,2458,2480,2504,2535,2571,2604,2632,2661,2698,2741,2781,2815,2845,2876,2908,2940,2982,3050,3151,3277,
+3401,3487,3517,3508,3501,3537,3627,3742,3843,3901,3913,3899,3890,3905,3934,3949,3932,3895,3863,3841,3817,
+3781,3748,3732,3724,3698,3647,3590,3547,3510,3460,3390,3315,3254,3214,3191,3174,3148,3101,3043,3000,2987,
+2989,2974,2928,2865,2804,2749,2701,2662,2638,2626,2614,2601,2590,2584,2578,2570,2570,2588,2618,2644,2664,
+2691,2738,2802,2866,2918,2958,2974,3012,3054,3102,3150,3186,3201,3203,3211,3238,3281,3324,3348,3349,3338,
+3334,3346,3365,3387,3425,3498,3607,3711,3765,3750,3690,3617,3547,3481,3426,3394,3385,3384,3367,3328,3272,
+3209,3141,3073,3016,2984,2977,2978,2965,2931,2883,2826,2759,2686,2618,2571,2546,2531,2520,2521,2541,2572,
+2594,2604,2618,2640,2659,2662,2659,2668,2693,2717,2727,2727,2724,2715,2690,2651,2612,2578,2543,2499,2446,
+2384,2307,2214,2118,2031,1957,1886,1819,1759,1702,1638,1568,1507,1467,1444,1424,1403,1389,1388,1394,1402,
+1419,1450,1486,1506,1503,1491,1483,1474,1450,1404,1353,1317,1309,1320,1332,1330,1312,1288,1264,1234,1192,
+1143,1102,1076,1060,1044,1031,1025,1024,1015,995,977,971,971,971,979,1012,1064,1107,1115,1088,1047,
+999,940,868,799,749,720,698,677,657,637,610,576,552,558,595,637,662,671,687,717,743,
+744,720,692,669,634,565,468,374,305,255,213,177,150,118,58,-29,-116,-186,-261,-373,-514,
+-636,-713,-776,-877,-1025,-1190,-1346,-1506,-1693,-1897,-2092,-2262,-2413,-2556,-2683,-2788,-2874,-2954,-3028,-3086,-3126,
+-3157,-3189,-3227,-3264,-3296,-3318,-3329,-3329,-3322,-3315,-3311,-3310,-3303,-3286,-3261,-3242,-3235,-3235,-3234,-3234,-3238,
+-3221,-3145,-3000,-2843,-2751,-2736,-2735,-2689,-2629,-2655,-2826,-3101,-3374,-3576,-3704,-3787,-3847,-3886,-3915,-3953,-4017,
+-4117,-4240,-4364,-4466,-4540,-4588,-4602,-4575,-4526,-4514,-4593,-4740,-4865,-4891,-4825,-4738,-4687,-4668,-4645,-4612,-4594,
+-4620,-4684,-4758,-4818,-4856,-4884,-4917,-4956,-4987,-5000,-5004,-5020,-5056,-5094,-5119,-5138,-5173,-5233,-5299,-5350,-5382,
+-5404,-5428,-5460,-5502,-5550,-5587,-5597,-5583,-5567,-5566,-5572,-5577,-5580,-5594,-5620,-5644,-5654,-5650,-5640,-5632,-5635,
+-5665,-5723,-5790,-5838,-5861,-5879,-5911,-5946,-5956,-5928,-5874,-5820,-5787,-5786,-5819,-5873,-5928,-5964,-5981,-5990,-5998,
+-5996,-5974,-5928,-5864,-5791,-5720,-5663,-5619,-5585,-5555,-5537,-5539,-5558,-5584,-5603,-5610,-5607,-5596,-5588,-5598,-5633,
+-5679,-5706,-5696,-5655,-5612,-5591,-5592,-5598,-5591,-5571,-5548,-5529,-5505,-5467,-5423,-5396,-5389,-5378,-5331,-5245,-5148,
+-5070,-5022,-5008,-5030,-5081,-5131,-5147,-5122,-5078,-5032,-4985,-4931,-4869,-4797,-4699,-4569,-4432,-4338,-4305,-4298,-4266,
+-4199,-4131,-4090,-4064,-4023,-3962,-3906,-3871,-3847,-3815,-3766,-3711,-3659,-3610,-3560,-3510,-3465,-3425,-3381,-3326,-3264,
+-3206,-3161,-3129,-3103,-3077,-3054,-3037,-3024,-3008,-2980,-2941,-2903,-2872,-2845,-2814,-2773,-2723,-2666,-2599,-2519,-2431,
+-2347,-2270,-2195,-2110,-2016,-1922,-1836,-1752,-1659,-1560,-1465,-1385,-1311,-1230,-1136,-1035,-934,-835,-736,-638,-546,
+-457,-366,-266,-159,-47,64,171,266,350,437,535,635,719,788,879,1030,1229,1411,1516,1548,1571,
+1635,1725,1796,1857,1980,2220,2509,2685,2626,2364,2055,1829,1703,1618,1539,1491,1505,1569,1645,1713,1783,
+1863,1950,2042,2151,2279,2405,2504,2584,2670,2772,2873,2949,3007,3064,3131,3199,3262,3323,3380,3426,3459,
+3487,3516,3539,3549,3554,3571,3603,3633,3651,3664,3685,3713,3743,3769,3794,3813,3825,3837,3859,3887,3898,
+3878,3845,3836,3869,3929,3995,4061,4129,4198,4258,4307,4357,4414,4473,4524,4567,4604,4634,4651,4660,4669,
+4684,4703,4732,4779,4836,4859,4804,4670,4493,4305,4094,3840,3560,3308,3120,2979,2857,2770,2763,2852,2992,
+3125,3231,3324,3410,3477,3516,3543,3570,3587,3582,3566,3563,3568,3549,3482,3384,3300,3256,3244,3233,3195,
+3123,3036,2973,2950,2936,2894,2840,2850,2963,3101,3116,2942,2666,2443,2348,2336,2330,2313,2309,2319,2298,
+2222,2129,2075,2073,2078,2050,1995,1939,1887,1811,1704,1601,1547,1539,1527,1475,1405,1363,1362,1354,1298,
+1207,1143,1147,1193,1217,1178,1092,1006,954,927,900,858,811,774,747,716,677,636,603,572,534,
+491,459,444,436,419,393,365,341,317,294,274,255,233,204,178,161,151,140,127,119,112,
+96,72,55,57,67,68,56,48,52,54,39,5,-27,-45,-44,-34,-24,-21,-26,-33,-32,
+-27,-29,-43,-65,-87,-108,-127,-141,-145,-145,-147,-153,-154,-148,-143,-143,-139,-124,-103,-85,-69,
+-44,-8,26,51,73,104,137,158,164,168,180,198,218,243,277,311,338,359,383,409,429,
+443,463,499,541,572,588,600,617,634,643,648,656,667,667,647,613,586,578,579,570,544,
+523,545,625,742,840,872,842,812,861,1010,1193,1295,1258,1135,1037,1027,1071,1103,1112,1132,1175,
+1184,1096,919,728,592,514,461,412,374,362,366,369,363,351,341,333,327,322,317,311,304,
+299,297,293,284,272,255,229,191,139,81,22,-39,-110,-190,-273,-351,-424,-493,-560,-622,-679,
+-729,-775,-816,-853,-887,-921,-956,-988,-1017,-1046,-1081,-1121,-1160,-1195,-1231,-1271,-1314,-1357,-1400,-1444,-1489,
+-1530,-1565,-1595,-1628,-1666,-1708,-1752,-1793,-1828,-1860,-1893,-1931,-1970,-2005,-2034,-2060,-2086,-2112,-2139,-2171,-2207,
+-2245,-2281,-2318,-2357,-2399,-2442,-2485,-2531,-2578,-2622,-2662,-2702,-2745,-2789,-2828,-2864,-2901,-2943,-2983,-3020,-3058,
+-3105,-3158,-3211,-3259,-3301,-3339,-3375,-3411,-3448,-3483,-3509,-3529,-3549,-3578,-3614,-3651,-3686,-3727,-3776,-3827,-3874,
+-3916,-3959,-4000,-4035,-4062,-4086,-4111,-4138,-4163,-4187,-4213,-4241,-4273,-4308,-4345,-4380,-4410,-4435,-4459,-4483,-4507,
+-4528,-4549,-4572,-4593,-4607,-4616,-4626,-4644,-4667,-4688,-4702,-4710,-4714,-4719,-4727,-4735,-4739,-4739,-4740,-4741,-4740,
+-4731,-4716,-4703,-4696,-4688,-4674,-4654,-4631,-4611,-4595,-4581,-4567,-4552,-4533,-4511,-4488,-4461,-4427,-4388,-4349,-4314,
+-4280,-4242,-4205,-4174,-4145,-4109,-4064,-4021,-3990,-3964,-3925,-3863,-3788,-3718,-3664,-3618,-3554,-3452,-3322,-3216,-3181,
+-3220,-3277,-3293,-3258,-3203,-3154,-3108,-3046,-2970,-2891,-2812,-2725,-2637,-2563,-2500,-2419,-2296,-2147,-2019,-1939,-1893,
+-1844,-1777,-1709,-1658,-1625,-1595,-1561,-1526,-1495,-1463,-1425,-1381,-1348,-1342,-1357,-1360,-1328,-1278,-1263,-1322,-1437,
+-1547,-1611,-1647,-1706,-1813,-1945,-2060,-2143,-2211,-2291,-2394,-2513,-2633,-2745,-2839,-2907,-2947,-2960,-2944,-2896,-2823,
+-2748,-2696,-2680,-2689,-2707,-2724,-2738,-2752,-2763,-2770,-2766,-2734,-2657,-2528,-2364,-2193,-2032,-1887,-1765,-1679,-1643,
+-1656,-1700,-1752,-1794,-1826,-1857,-1903,-1966,-2025,-2055,-2052,-2050,-2089,-2177,-2286,-2376,-2430,-2448,-2443,-2427,-2416,
+-2419,-2431,-2437,-2434,-2433,-2444,-2462,-2471,-2467,-2456,-2442,-2425,-2412,-2422,-2466,-2526,-2568,-2575,-2551,-2510,-2461,
+-2433,-2465,-2578,-2730,-2846,-2887,-2891,-2924,-3009,-3121,-3236,-3368,-3541,-3738,-3908,-4023,-4101,-4184,-4287,-4387,-4461,
+-4511,-4556,-4611,-4671,-4730,-4784,-4839,-4898,-4955,-5001,-5035,-5061,-5086,-5108,-5118,-5118,-5119,-5130,-5152,-5174,-5189,
+-5196,-5202,-5206,-5207,-5199,-5185,-5172,-5171,-5183,-5203,-5220,-5232,-5241,-5252,-5262,-5268,-5270,-5272,-5275,-5274,-5264,
+-5247,-5227,-5206,-5181,-5155,-5130,-5109,-5087,-5062,-5034,-5003,-4970,-4934,-4897,-4861,-4825,-4788,-4748,-4706,-4666,-4626,
+-4589,-4553,-4513,-4463,-4403,-4339,-4276,-4215,-4154,-4092,-4030,-3968,-3902,-3834,-3771,-3714,-3658,-3595,-3527,-3460,-3398,
+-3332,-3258,-3182,-3113,-3053,-2995,-2930,-2858,-2781,-2702,-2621,-2539,-2454,-2366,-2275,-2187,-2107,-2028,-1945,-1855,-1770,
+-1694,-1620,-1534,-1434,-1340,-1270,-1223,-1180,-1126,-1067,-1017,-982,-953,-918,-876,-834,-796,-759,-717,-668,-614,
+-561,-512,-469,-430,-390,-346,-300,-254,-210,-168,-126,-86,-44,0,46,95,142,189,239,294,351,
+405,460,519,586,655,720,778,831,883,938,997,1057,1117,1178,1239,1296,1348,1394,1435,1477,1518,
+1557,1590,1619,1643,1664,1682,1697,1709,1720,1732,1745,1762,1782,1806,1834,1864,1896,1930,1967,2006,2042,
+2074,2100,2126,2156,2190,2222,2251,2276,2302,2327,2350,2370,2389,2411,2435,2457,2479,2503,2528,2550,2574,
+2602,2638,2674,2707,2736,2767,2801,2834,2872,2927,3011,3125,3254,3373,3456,3497,3511,3531,3585,3672,3763,
+3821,3833,3813,3792,3796,3832,3884,3921,3925,3902,3874,3849,3818,3777,3734,3701,3670,3624,3568,3522,3500,
+3480,3436,3365,3289,3231,3192,3161,3130,3095,3053,3008,2971,2949,2932,2904,2857,2798,2739,2684,2637,2603,
+2584,2574,2563,2553,2551,2557,2563,2568,2582,2610,2641,2658,2664,2681,2727,2796,2869,2929,2974,2986,3029,
+3071,3116,3159,3190,3201,3200,3204,3227,3265,3304,3328,3330,3319,3311,3316,3329,3343,3373,3442,3547,3645,
+3679,3631,3536,3448,3391,3356,3332,3318,3320,3325,3315,3277,3217,3148,3078,3011,2956,2928,2927,2934,2925,
+2889,2835,2777,2717,2653,2593,2547,2522,2509,2502,2506,2522,2538,2544,2548,2568,2608,2646,2659,2655,2657,
+2674,2695,2711,2726,2739,2737,2710,2663,2617,2577,2539,2496,2445,2379,2289,2180,2076,1994,1926,1854,1778,
+1713,1660,1608,1546,1486,1446,1424,1403,1379,1365,1368,1382,1397,1417,1448,1485,1507,1506,1491,1477,1463,
+1438,1396,1350,1319,1312,1322,1330,1321,1297,1270,1248,1221,1178,1122,1074,1044,1025,1007,990,982,979,
+969,952,940,941,949,956,974,1021,1092,1147,1152,1111,1053,996,936,866,794,738,701,674,651,
+633,616,591,555,524,522,552,593,620,634,650,676,696,690,660,627,601,572,524,458,388,
+324,262,205,163,136,98,22,-85,-185,-256,-324,-427,-559,-675,-750,-819,-928,-1084,-1252,-1411,-1576,
+-1763,-1959,-2138,-2292,-2437,-2581,-2711,-2815,-2899,-2978,-3055,-3115,-3154,-3181,-3210,-3247,-3288,-3324,-3350,-3363,-3361,
+-3349,-3334,-3327,-3326,-3323,-3309,-3284,-3263,-3252,-3245,-3238,-3242,-3268,-3293,-3261,-3146,-2995,-2888,-2848,-2822,-2754,
+-2671,-2658,-2771,-2977,-3205,-3415,-3604,-3764,-3871,-3917,-3929,-3953,-4016,-4116,-4230,-4341,-4443,-4538,-4615,-4648,-4611,
+-4525,-4467,-4506,-4631,-4750,-4780,-4729,-4673,-4667,-4699,-4721,-4715,-4703,-4717,-4764,-4827,-4890,-4944,-4989,-5030,-5067,
+-5091,-5098,-5099,-5111,-5140,-5175,-5204,-5231,-5273,-5330,-5389,-5437,-5469,-5492,-5510,-5534,-5577,-5636,-5686,-5700,-5678,
+-5650,-5642,-5648,-5650,-5648,-5657,-5683,-5716,-5742,-5756,-5760,-5757,-5754,-5770,-5815,-5876,-5924,-5944,-5950,-5955,-5952,
+-5925,-5873,-5820,-5791,-5788,-5803,-5826,-5854,-5887,-5921,-5955,-5987,-6011,-6019,-6005,-5967,-5911,-5845,-5779,-5725,-5680,
+-5635,-5587,-5547,-5534,-5550,-5581,-5609,-5628,-5636,-5637,-5638,-5649,-5675,-5704,-5715,-5696,-5657,-5621,-5604,-5604,-5607,
+-5596,-5571,-5544,-5524,-5506,-5476,-5438,-5409,-5395,-5378,-5326,-5237,-5137,-5059,-5015,-5007,-5032,-5084,-5138,-5161,-5144,
+-5101,-5051,-4995,-4927,-4846,-4753,-4645,-4524,-4413,-4342,-4315,-4299,-4259,-4195,-4139,-4111,-4091,-4048,-3980,-3911,-3867,
+-3840,-3810,-3761,-3700,-3640,-3587,-3536,-3478,-3416,-3361,-3317,-3278,-3235,-3189,-3150,-3121,-3097,-3067,-3035,-3010,-2992,
+-2971,-2937,-2894,-2854,-2826,-2802,-2774,-2735,-2685,-2624,-2551,-2471,-2391,-2314,-2235,-2150,-2059,-1966,-1875,-1784,-1690,
+-1590,-1488,-1392,-1309,-1236,-1163,-1078,-980,-875,-771,-672,-581,-493,-405,-310,-211,-113,-19,76,176,276,
+374,472,577,683,777,864,974,1128,1307,1453,1532,1572,1627,1710,1781,1816,1860,1998,2248,2513,2646,
+2575,2359,2127,1961,1860,1781,1712,1677,1694,1745,1802,1856,1916,1988,2066,2151,2256,2384,2516,2630,2725,
+2816,2905,2978,3027,3071,3133,3211,3282,3333,3371,3408,3443,3470,3491,3512,3530,3538,3543,3559,3591,3627,
+3654,3672,3690,3711,3735,3765,3800,3833,3855,3875,3910,3953,3974,3952,3905,3878,3895,3943,3998,4054,4122,
+4200,4273,4332,4382,4433,4485,4536,4585,4632,4666,4680,4682,4689,4707,4726,4741,4764,4805,4839,4824,4743,
+4616,4462,4272,4038,3794,3593,3446,3294,3085,2850,2685,2655,2735,2859,2989,3122,3255,3366,3443,3501,3552,
+3588,3599,3598,3606,3617,3602,3548,3478,3422,3387,3352,3303,3239,3164,3091,3038,3011,2983,2925,2863,2874,
+2996,3146,3171,3003,2729,2509,2422,2427,2444,2440,2428,2405,2352,2264,2177,2121,2091,2057,2008,1963,1936,
+1907,1838,1727,1610,1530,1497,1484,1465,1438,1418,1407,1387,1338,1267,1204,1176,1184,1195,1177,1124,1059,
+1008,976,942,898,854,829,816,790,745,699,672,652,617,567,525,507,500,479,442,407,382,
+362,340,319,298,272,241,216,207,205,193,173,160,158,152,128,102,94,101,104,98,98,
+109,111,82,32,-3,-1,28,54,61,53,42,37,34,26,9,-12,-31,-46,-60,-79,-94,
+-96,-91,-89,-92,-93,-89,-87,-96,-105,-101,-83,-62,-43,-20,9,39,61,82,108,134,149,
+151,155,170,194,223,258,302,346,377,395,411,431,451,469,491,523,563,600,628,648,664,
+677,687,698,708,714,713,704,687,670,658,655,656,648,628,607,605,627,658,676,675,680,
+730,838,965,1048,1050,1001,969,986,1029,1064,1096,1151,1217,1238,1165,1021,868,747,645,542,452,
+412,426,456,458,422,372,331,309,298,289,279,269,262,262,267,271,268,257,240,219,191,
+151,101,43,-18,-85,-159,-238,-318,-393,-464,-532,-596,-655,-707,-754,-796,-834,-868,-902,-936,-969,
+-1001,-1034,-1072,-1111,-1147,-1180,-1213,-1251,-1295,-1340,-1385,-1430,-1476,-1519,-1556,-1590,-1624,-1663,-1706,-1749,-1787,
+-1818,-1847,-1882,-1925,-1967,-2001,-2028,-2052,-2079,-2107,-2136,-2168,-2204,-2243,-2280,-2318,-2358,-2401,-2443,-2486,-2532,
+-2579,-2623,-2663,-2700,-2741,-2783,-2821,-2856,-2892,-2932,-2974,-3015,-3059,-3108,-3160,-3208,-3250,-3288,-3324,-3357,-3389,
+-3424,-3459,-3490,-3513,-3536,-3568,-3608,-3648,-3687,-3730,-3780,-3830,-3875,-3913,-3951,-3989,-4022,-4049,-4075,-4103,-4130,
+-4154,-4175,-4200,-4231,-4267,-4306,-4346,-4385,-4419,-4447,-4472,-4494,-4514,-4533,-4553,-4575,-4595,-4609,-4620,-4631,-4649,
+-4670,-4689,-4702,-4708,-4711,-4717,-4729,-4743,-4752,-4751,-4745,-4741,-4738,-4731,-4719,-4708,-4701,-4694,-4682,-4664,-4642,
+-4619,-4599,-4583,-4573,-4562,-4543,-4518,-4494,-4469,-4438,-4397,-4353,-4313,-4280,-4247,-4210,-4174,-4141,-4105,-4062,-4016,
+-3974,-3938,-3904,-3865,-3815,-3759,-3703,-3652,-3596,-3514,-3407,-3307,-3257,-3265,-3293,-3291,-3250,-3197,-3153,-3111,-3056,
+-2991,-2923,-2849,-2758,-2660,-2581,-2525,-2458,-2350,-2211,-2085,-1996,-1929,-1855,-1768,-1689,-1631,-1592,-1559,-1526,-1497,
+-1468,-1435,-1394,-1352,-1324,-1320,-1335,-1349,-1342,-1321,-1323,-1377,-1471,-1558,-1604,-1628,-1677,-1775,-1899,-2009,-2088,
+-2155,-2235,-2338,-2457,-2578,-2691,-2785,-2850,-2883,-2888,-2867,-2817,-2744,-2672,-2628,-2624,-2647,-2674,-2693,-2700,-2693,
+-2674,-2644,-2603,-2538,-2435,-2290,-2126,-1968,-1828,-1711,-1626,-1582,-1580,-1603,-1635,-1667,-1696,-1721,-1745,-1778,-1827,
+-1876,-1901,-1907,-1931,-2011,-2135,-2252,-2320,-2335,-2320,-2287,-2241,-2195,-2170,-2169,-2171,-2162,-2149,-2157,-2189,-2231,
+-2269,-2300,-2323,-2336,-2345,-2366,-2412,-2468,-2505,-2513,-2503,-2484,-2455,-2422,-2419,-2476,-2581,-2683,-2750,-2808,-2900,
+-3036,-3188,-3329,-3464,-3600,-3719,-3797,-3845,-3906,-4015,-4160,-4302,-4413,-4494,-4560,-4618,-4670,-4720,-4774,-4833,-4892,
+-4942,-4982,-5012,-5037,-5060,-5080,-5094,-5102,-5107,-5115,-5126,-5140,-5156,-5171,-5183,-5192,-5196,-5196,-5189,-5178,-5173,
+-5185,-5210,-5234,-5244,-5245,-5249,-5258,-5265,-5265,-5263,-5262,-5260,-5251,-5236,-5218,-5200,-5176,-5147,-5118,-5095,-5077,
+-5059,-5035,-5007,-4974,-4939,-4902,-4865,-4828,-4789,-4749,-4709,-4671,-4633,-4595,-4556,-4511,-4460,-4402,-4343,-4287,-4229,
+-4168,-4104,-4045,-3989,-3931,-3867,-3802,-3742,-3685,-3623,-3555,-3488,-3424,-3357,-3283,-3206,-3135,-3074,-3016,-2952,-2882,
+-2807,-2732,-2656,-2576,-2491,-2403,-2314,-2228,-2145,-2063,-1976,-1886,-1800,-1723,-1649,-1565,-1467,-1369,-1290,-1235,-1195,
+-1156,-1116,-1080,-1049,-1017,-978,-935,-893,-855,-817,-775,-727,-676,-626,-578,-534,-495,-457,-416,-371,-323,
+-274,-226,-180,-138,-96,-52,-1,53,109,164,218,273,330,389,450,515,584,652,716,775,831,
+886,945,1006,1068,1128,1185,1240,1294,1345,1390,1430,1469,1508,1544,1575,1601,1625,1648,1667,1679,1686,
+1692,1700,1712,1726,1745,1769,1798,1829,1863,1899,1938,1979,2018,2052,2080,2108,2139,2172,2206,2236,2262,
+2288,2314,2338,2361,2381,2401,2421,2440,2457,2474,2491,2509,2530,2558,2587,2614,2635,2658,2687,2720,2752,
+2791,2854,2955,3083,3215,3329,3415,3474,3517,3563,3624,3692,3743,3756,3734,3703,3693,3715,3765,3825,3874,
+3896,3890,3870,3844,3811,3769,3722,3675,3625,3566,3510,3476,3465,3452,3406,3333,3260,3209,3174,3139,3098,
+3058,3021,2983,2944,2907,2872,2834,2788,2737,2685,2635,2591,2561,2543,2532,2523,2516,2518,2529,2542,2562,
+2594,2635,2669,2681,2682,2696,2738,2804,2874,2935,2986,2997,3048,3089,3123,3154,3178,3189,3190,3194,3212,
+3241,3273,3296,3304,3298,3288,3283,3284,3288,3308,3363,3451,3528,3540,3471,3365,3279,3242,3236,3234,3230,
+3236,3249,3252,3227,3171,3100,3025,2955,2899,2867,2865,2876,2873,2840,2787,2734,2684,2631,2576,2530,2503,
+2491,2486,2489,2495,2494,2482,2477,2504,2564,2624,2654,2658,2656,2664,2679,2702,2735,2766,2771,2735,2677,
+2623,2581,2543,2499,2448,2378,2280,2159,2047,1965,1899,1823,1736,1661,1609,1567,1518,1468,1429,1403,1378,
+1355,1345,1354,1371,1388,1409,1441,1478,1500,1500,1487,1473,1457,1427,1387,1348,1327,1326,1333,1331,1311,
+1279,1250,1230,1205,1161,1102,1049,1016,997,981,964,953,946,936,922,916,921,928,937,965,1031,
+1121,1184,1184,1131,1062,1002,944,874,799,735,686,647,615,597,590,576,545,508,493,510,545,
+574,594,612,635,648,638,606,570,542,516,484,445,401,349,282,209,149,110,67,-9,-118,
+-222,-300,-372,-470,-591,-700,-780,-862,-986,-1150,-1324,-1490,-1660,-1848,-2036,-2199,-2338,-2472,-2608,-2734,-2836,
+-2921,-3002,-3079,-3139,-3177,-3203,-3232,-3268,-3307,-3341,-3369,-3387,-3391,-3382,-3365,-3350,-3340,-3333,-3318,-3296,-3276,
+-3267,-3264,-3261,-3268,-3298,-3335,-3328,-3247,-3125,-3029,-2982,-2942,-2863,-2768,-2724,-2769,-2885,-3043,-3241,-3475,-3704,
+-3862,-3928,-3945,-3973,-4039,-4130,-4227,-4329,-4442,-4559,-4649,-4670,-4598,-4467,-4362,-4358,-4454,-4568,-4628,-4635,-4648,
+-4704,-4783,-4838,-4852,-4847,-4852,-4879,-4925,-4978,-5032,-5083,-5129,-5165,-5184,-5186,-5182,-5191,-5219,-5256,-5291,-5324,
+-5364,-5413,-5465,-5513,-5554,-5584,-5601,-5616,-5651,-5711,-5767,-5787,-5765,-5735,-5724,-5731,-5737,-5740,-5751,-5777,-5810,
+-5839,-5861,-5874,-5877,-5870,-5873,-5902,-5949,-5987,-5997,-5985,-5962,-5928,-5878,-5826,-5797,-5805,-5835,-5860,-5871,-5880,
+-5898,-5930,-5969,-6006,-6032,-6041,-6033,-6010,-5974,-5925,-5872,-5825,-5780,-5727,-5662,-5604,-5576,-5585,-5615,-5647,-5669,
+-5683,-5692,-5700,-5713,-5729,-5738,-5727,-5695,-5656,-5628,-5620,-5623,-5621,-5602,-5568,-5536,-5517,-5509,-5494,-5466,-5436,
+-5413,-5384,-5328,-5240,-5145,-5069,-5024,-5011,-5032,-5081,-5134,-5159,-5144,-5103,-5057,-5004,-4931,-4833,-4721,-4608,-4504,
+-4423,-4374,-4347,-4314,-4257,-4188,-4139,-4117,-4099,-4054,-3981,-3904,-3851,-3820,-3790,-3744,-3685,-3627,-3575,-3519,-3444,
+-3356,-3280,-3236,-3214,-3193,-3162,-3130,-3109,-3092,-3066,-3029,-2995,-2971,-2946,-2910,-2865,-2823,-2792,-2767,-2739,-2701,
+-2650,-2586,-2512,-2437,-2364,-2289,-2204,-2110,-2014,-1921,-1828,-1729,-1627,-1525,-1425,-1329,-1242,-1170,-1105,-1030,-935,
+-825,-717,-622,-535,-448,-356,-258,-162,-74,7,93,191,297,403,506,614,726,833,935,1049,1191,
+1341,1460,1534,1596,1682,1775,1828,1835,1867,2000,2224,2435,2521,2459,2315,2176,2081,2021,1968,1920,1895,
+1907,1950,2006,2064,2124,2193,2274,2369,2477,2593,2701,2787,2854,2916,2979,3035,3082,3135,3205,3285,3348,
+3385,3409,3435,3463,3481,3490,3499,3511,3523,3535,3555,3586,3621,3651,3677,3703,3729,3756,3785,3819,3851,
+3873,3896,3935,3987,4023,4013,3969,3936,3942,3982,4033,4089,4156,4233,4307,4367,4416,4460,4503,4549,4602,
+4655,4693,4706,4704,4712,4732,4744,4740,4739,4764,4804,4818,4782,4707,4602,4452,4248,4029,3858,3738,3594,
+3352,3035,2751,2594,2570,2632,2746,2902,3082,3248,3376,3471,3543,3591,3615,3631,3654,3670,3654,3604,3552,
+3518,3490,3444,3379,3313,3252,3193,3141,3100,3057,2992,2918,2895,2958,3048,3054,2923,2725,2574,2522,2532,
+2547,2546,2523,2467,2373,2265,2187,2146,2112,2059,2001,1967,1957,1930,1860,1761,1674,1623,1593,1562,1526,
+1497,1482,1470,1449,1414,1366,1311,1260,1225,1208,1192,1159,1111,1066,1035,1008,972,932,903,884,856,
+811,767,741,724,690,639,597,583,578,553,509,470,448,431,407,377,349,320,291,270,266,
+263,243,211,194,199,204,183,150,135,144,158,161,161,163,151,110,59,40,70,116,136,
+117,85,65,62,62,49,24,1,-7,-6,-7,-19,-32,-31,-20,-12,-12,-12,-9,-10,-26,
+-48,-57,-46,-25,-5,14,37,60,80,100,123,142,149,148,153,174,206,241,283,331,378,
+412,431,447,470,496,519,539,559,584,613,644,673,697,714,729,742,750,749,747,751,757,
+752,734,716,711,717,718,705,686,674,673,679,687,698,720,759,807,844,854,844,838,847,
+865,886,924,993,1071,1107,1075,998,916,834,736,627,559,571,640,690,656,545,411,307,252,
+233,234,240,244,243,239,234,230,222,208,190,172,157,136,100,50,-10,-73,-139,-212,-290,
+-367,-438,-505,-570,-630,-684,-732,-775,-816,-853,-888,-921,-955,-991,-1031,-1071,-1108,-1138,-1164,-1192,-1227,
+-1271,-1318,-1365,-1412,-1457,-1500,-1540,-1578,-1616,-1656,-1698,-1738,-1773,-1801,-1831,-1869,-1916,-1962,-1998,-2023,-2048,
+-2077,-2108,-2139,-2172,-2209,-2247,-2284,-2320,-2360,-2402,-2444,-2486,-2530,-2576,-2620,-2661,-2700,-2741,-2781,-2818,-2852,
+-2887,-2927,-2969,-3014,-3064,-3116,-3166,-3208,-3244,-3280,-3315,-3348,-3379,-3412,-3448,-3480,-3507,-3533,-3566,-3607,-3650,
+-3690,-3733,-3781,-3830,-3872,-3907,-3940,-3973,-4005,-4036,-4066,-4097,-4124,-4145,-4165,-4190,-4223,-4260,-4301,-4342,-4382,
+-4418,-4446,-4467,-4484,-4503,-4525,-4551,-4578,-4600,-4616,-4628,-4643,-4660,-4678,-4693,-4704,-4711,-4715,-4721,-4732,-4748,
+-4759,-4759,-4751,-4743,-4738,-4732,-4726,-4719,-4713,-4704,-4692,-4677,-4660,-4636,-4609,-4585,-4573,-4565,-4549,-4524,-4496,
+-4471,-4442,-4401,-4353,-4310,-4279,-4251,-4219,-4181,-4142,-4103,-4062,-4017,-3967,-3919,-3879,-3847,-3818,-3779,-3726,-3670,
+-3614,-3553,-3479,-3404,-3353,-3335,-3326,-3296,-3244,-3191,-3149,-3108,-3058,-3005,-2952,-2887,-2794,-2686,-2600,-2543,-2483,
+-2384,-2255,-2134,-2044,-1966,-1876,-1776,-1688,-1624,-1576,-1534,-1499,-1471,-1444,-1407,-1365,-1331,-1316,-1320,-1331,-1337,
+-1332,-1328,-1347,-1407,-1493,-1567,-1604,-1620,-1661,-1750,-1866,-1969,-2043,-2109,-2193,-2302,-2423,-2541,-2649,-2736,-2793,
+-2817,-2813,-2784,-2731,-2664,-2604,-2577,-2586,-2612,-2632,-2635,-2617,-2574,-2507,-2426,-2343,-2255,-2153,-2035,-1916,-1809,
+-1716,-1633,-1570,-1540,-1541,-1555,-1568,-1584,-1608,-1634,-1651,-1663,-1686,-1723,-1765,-1815,-1899,-2028,-2165,-2251,-2257,
+-2207,-2142,-2074,-1997,-1923,-1882,-1882,-1896,-1895,-1883,-1894,-1944,-2019,-2094,-2156,-2204,-2236,-2259,-2290,-2342,-2405,
+-2451,-2469,-2469,-2464,-2450,-2425,-2411,-2434,-2494,-2567,-2640,-2738,-2888,-3079,-3273,-3438,-3567,-3653,-3684,-3671,-3663,
+-3715,-3842,-4007,-4167,-4311,-4443,-4562,-4654,-4719,-4773,-4828,-4883,-4928,-4962,-4991,-5017,-5039,-5055,-5068,-5081,-5094,
+-5103,-5106,-5104,-5108,-5121,-5141,-5156,-5162,-5165,-5173,-5182,-5184,-5184,-5193,-5216,-5240,-5250,-5248,-5247,-5253,-5257,
+-5252,-5245,-5241,-5237,-5228,-5211,-5195,-5180,-5162,-5137,-5110,-5088,-5071,-5051,-5027,-5000,-4972,-4942,-4907,-4868,-4827,
+-4785,-4744,-4705,-4668,-4632,-4592,-4550,-4505,-4454,-4399,-4346,-4295,-4243,-4182,-4118,-4059,-4010,-3962,-3907,-3846,-3786,
+-3729,-3669,-3603,-3533,-3464,-3396,-3324,-3251,-3179,-3113,-3048,-2979,-2906,-2832,-2758,-2683,-2604,-2521,-2434,-2348,-2265,
+-2183,-2101,-2017,-1933,-1853,-1775,-1696,-1609,-1514,-1421,-1342,-1280,-1234,-1198,-1168,-1140,-1111,-1074,-1029,-982,-940,
+-902,-865,-823,-777,-731,-685,-639,-595,-553,-515,-476,-434,-387,-336,-284,-235,-188,-145,-99,-49,7,
+67,129,190,251,313,377,444,513,583,651,715,777,836,893,952,1014,1078,1139,1195,1247,1299,
+1349,1395,1435,1471,1507,1542,1571,1597,1620,1643,1661,1671,1675,1678,1684,1694,1706,1722,1743,1769,1799,
+1831,1867,1906,1946,1986,2022,2054,2085,2116,2151,2188,2223,2254,2280,2304,2329,2353,2375,2396,2413,2428,
+2440,2451,2463,2477,2495,2519,2543,2563,2578,2595,2619,2645,2669,2703,2772,2887,3033,3175,3292,3382,3456,
+3520,3577,3631,3674,3691,3675,3639,3615,3622,3658,3709,3764,3812,3844,3852,3841,3819,3790,3754,3709,3659,
+3603,3543,3490,3458,3444,3421,3370,3297,3232,3191,3162,3127,3084,3043,3007,2968,2922,2872,2826,2783,2740,
+2694,2649,2606,2568,2539,2520,2507,2497,2492,2492,2499,2514,2545,2594,2649,2689,2704,2710,2728,2767,2820,
+2878,2938,2997,3011,3069,3105,3125,3139,3153,3162,3167,3175,3192,3217,3243,3264,3273,3269,3255,3241,3232,
+3231,3246,3290,3357,3412,3408,3335,3232,3157,3134,3142,3148,3146,3150,3167,3182,3171,3126,3058,2983,2910,
+2846,2803,2793,2805,2811,2789,2745,2697,2653,2605,2552,2506,2477,2463,2456,2454,2452,2442,2424,2417,2449,
+2517,2588,2632,2648,2655,2664,2679,2707,2752,2793,2798,2755,2693,2644,2609,2567,2509,2441,2362,2258,2133,
+2016,1930,1864,1790,1701,1621,1565,1526,1485,1444,1408,1380,1353,1333,1331,1345,1362,1376,1400,1439,1479,
+1499,1496,1486,1476,1458,1423,1379,1347,1336,1339,1339,1323,1293,1259,1232,1213,1188,1146,1090,1038,1004,
+987,974,960,945,931,916,904,903,909,913,919,951,1027,1124,1189,1188,1135,1069,1012,955,887,
+815,752,695,639,590,565,565,564,538,495,465,470,500,532,555,576,600,616,611,584,549,
+520,493,463,428,391,346,281,199,118,56,5,-60,-150,-246,-334,-420,-523,-639,-744,-832,-928,
+-1062,-1230,-1404,-1573,-1749,-1936,-2116,-2268,-2396,-2519,-2644,-2760,-2859,-2947,-3031,-3106,-3162,-3198,-3228,-3259,-3292,
+-3323,-3351,-3376,-3396,-3408,-3408,-3397,-3381,-3367,-3355,-3340,-3321,-3305,-3301,-3308,-3318,-3330,-3353,-3377,-3370,-3308,
+-3216,-3141,-3100,-3058,-2983,-2894,-2839,-2838,-2879,-2965,-3126,-3368,-3628,-3822,-3918,-3961,-4008,-4073,-4141,-4216,-4320,
+-4455,-4587,-4656,-4626,-4506,-4356,-4256,-4258,-4350,-4469,-4560,-4625,-4701,-4803,-4905,-4971,-4992,-4991,-4996,-5018,-5052,
+-5091,-5130,-5168,-5207,-5242,-5261,-5259,-5250,-5254,-5282,-5323,-5362,-5397,-5436,-5482,-5533,-5585,-5634,-5673,-5695,-5710,
+-5740,-5793,-5845,-5865,-5849,-5823,-5814,-5823,-5836,-5850,-5870,-5899,-5925,-5943,-5955,-5963,-5962,-5949,-5938,-5948,-5974,
+-5994,-5992,-5971,-5940,-5901,-5858,-5828,-5831,-5866,-5906,-5928,-5934,-5943,-5969,-6007,-6043,-6067,-6077,-6076,-6068,-6056,
+-6035,-6000,-5956,-5912,-5868,-5813,-5745,-5679,-5643,-5644,-5668,-5695,-5718,-5738,-5755,-5770,-5782,-5788,-5779,-5749,-5706,
+-5668,-5649,-5648,-5652,-5645,-5618,-5577,-5540,-5522,-5522,-5520,-5501,-5469,-5433,-5391,-5329,-5246,-5161,-5090,-5040,-5017,
+-5030,-5079,-5135,-5158,-5136,-5093,-5053,-5011,-4941,-4832,-4705,-4589,-4499,-4438,-4398,-4363,-4314,-4245,-4174,-4125,-4100,
+-4076,-4027,-3954,-3879,-3824,-3790,-3762,-3725,-3678,-3628,-3576,-3511,-3422,-3320,-3236,-3194,-3184,-3174,-3147,-3111,-3086,
+-3073,-3055,-3023,-2985,-2954,-2927,-2893,-2849,-2804,-2764,-2730,-2697,-2658,-2608,-2544,-2470,-2397,-2326,-2250,-2161,-2066,
+-1974,-1886,-1791,-1687,-1582,-1485,-1391,-1293,-1198,-1120,-1056,-983,-887,-775,-671,-581,-497,-407,-310,-216,-127,
+-45,36,124,225,335,444,549,658,775,894,1004,1114,1235,1358,1459,1536,1618,1720,1814,1854,1854,
+1886,2005,2180,2321,2368,2331,2268,2218,2191,2176,2159,2134,2110,2112,2154,2225,2295,2351,2407,2486,2586,
+2690,2780,2849,2899,2939,2980,3029,3085,3142,3202,3269,3336,3389,3422,3445,3466,3484,3489,3485,3484,3497,
+3517,3540,3566,3594,3624,3651,3680,3715,3751,3782,3809,3837,3864,3885,3904,3935,3981,4019,4025,4000,3975,
+3981,4022,4083,4151,4222,4292,4354,4405,4448,4486,4523,4563,4613,4668,4708,4721,4722,4732,4749,4753,4735,
+4723,4750,4802,4836,4824,4779,4712,4609,4448,4260,4103,3987,3847,3608,3278,2946,2700,2564,2522,2568,2703,
+2901,3107,3280,3412,3512,3582,3627,3662,3698,3718,3700,3653,3610,3584,3554,3502,3439,3389,3353,3309,3251,
+3195,3144,3082,3004,2944,2928,2932,2897,2805,2699,2633,2611,2604,2593,2581,2556,2488,2373,2257,2192,2171,
+2146,2087,2023,1993,1984,1947,1865,1782,1751,1765,1766,1713,1623,1548,1516,1511,1506,1493,1475,1446,1398,
+1337,1281,1237,1194,1146,1102,1080,1073,1059,1026,986,951,917,875,829,793,764,727,682,654,650,
+649,623,576,536,519,508,484,450,416,385,356,334,324,313,285,247,227,234,241,223,191,
+183,206,233,236,217,190,156,113,86,106,165,214,206,147,82,49,48,55,52,39,31,
+37,52,58,50,38,37,50,61,62,60,63,64,50,27,10,9,20,31,43,60,80,
+101,121,143,161,168,167,174,196,227,262,302,350,398,436,461,483,508,533,555,575,593,
+611,633,662,693,721,741,757,773,783,782,779,788,805,814,801,778,765,767,776,779,775,
+767,761,761,766,773,774,772,772,777,780,777,768,758,751,755,782,835,891,916,902,871,
+844,814,769,736,765,872,996,1035,936,735,515,346,247,204,196,207,218,214,194,169,152,
+146,142,132,119,107,97,75,36,-17,-74,-134,-200,-273,-347,-416,-480,-544,-606,-663,-712,-757,
+-801,-841,-877,-910,-945,-986,-1029,-1069,-1101,-1124,-1144,-1167,-1200,-1244,-1293,-1343,-1391,-1436,-1477,-1518,-1559,
+-1601,-1642,-1681,-1718,-1751,-1781,-1813,-1854,-1903,-1951,-1988,-2017,-2045,-2077,-2111,-2146,-2183,-2221,-2259,-2293,-2327,
+-2364,-2405,-2447,-2486,-2526,-2569,-2612,-2655,-2697,-2738,-2778,-2813,-2847,-2884,-2925,-2970,-3018,-3071,-3125,-3174,-3212,
+-3244,-3277,-3312,-3347,-3380,-3414,-3450,-3482,-3509,-3536,-3570,-3610,-3652,-3691,-3731,-3777,-3823,-3864,-3897,-3928,-3959,
+-3992,-4027,-4063,-4095,-4121,-4141,-4161,-4188,-4221,-4258,-4296,-4335,-4374,-4409,-4435,-4451,-4464,-4482,-4509,-4543,-4576,
+-4600,-4617,-4632,-4650,-4668,-4681,-4692,-4702,-4714,-4724,-4731,-4739,-4750,-4760,-4762,-4756,-4748,-4741,-4735,-4732,-4730,
+-4725,-4714,-4700,-4687,-4675,-4655,-4624,-4594,-4576,-4568,-4556,-4530,-4498,-4468,-4438,-4400,-4354,-4313,-4283,-4259,-4229,
+-4190,-4147,-4105,-4064,-4020,-3969,-3914,-3865,-3832,-3810,-3781,-3733,-3672,-3614,-3565,-3515,-3464,-3418,-3381,-3344,-3294,
+-3236,-3186,-3146,-3106,-3058,-3010,-2966,-2906,-2811,-2699,-2611,-2558,-2508,-2418,-2293,-2170,-2073,-1987,-1889,-1784,-1694,
+-1627,-1573,-1523,-1482,-1452,-1422,-1381,-1336,-1306,-1302,-1311,-1315,-1306,-1293,-1293,-1322,-1386,-1470,-1542,-1579,-1596,
+-1632,-1713,-1822,-1920,-1991,-2057,-2148,-2266,-2393,-2509,-2606,-2681,-2728,-2744,-2730,-2695,-2643,-2586,-2547,-2541,-2560,
+-2575,-2561,-2516,-2448,-2362,-2260,-2150,-2050,-1965,-1888,-1814,-1750,-1700,-1655,-1605,-1555,-1522,-1509,-1504,-1500,-1508,
+-1533,-1560,-1568,-1559,-1561,-1597,-1671,-1777,-1912,-2059,-2173,-2202,-2145,-2051,-1967,-1894,-1814,-1732,-1687,-1694,-1725,
+-1739,-1738,-1756,-1815,-1899,-1979,-2042,-2091,-2128,-2157,-2194,-2253,-2328,-2392,-2425,-2431,-2424,-2412,-2400,-2407,-2446,
+-2509,-2574,-2639,-2732,-2877,-3062,-3254,-3429,-3570,-3653,-3659,-3613,-3585,-3633,-3754,-3901,-4046,-4198,-4365,-4524,-4643,
+-4722,-4790,-4861,-4927,-4970,-4996,-5017,-5039,-5055,-5061,-5064,-5073,-5086,-5096,-5095,-5085,-5078,-5085,-5106,-5127,-5137,
+-5141,-5151,-5169,-5183,-5187,-5190,-5204,-5226,-5242,-5248,-5251,-5253,-5250,-5237,-5223,-5216,-5211,-5199,-5179,-5159,-5144,
+-5129,-5111,-5093,-5078,-5062,-5039,-5011,-4984,-4961,-4936,-4903,-4863,-4819,-4775,-4733,-4695,-4659,-4622,-4584,-4544,-4502,
+-4454,-4400,-4345,-4294,-4245,-4190,-4130,-4075,-4030,-3990,-3945,-3890,-3832,-3776,-3719,-3654,-3583,-3511,-3444,-3381,-3317,
+-3249,-3176,-3101,-3024,-2947,-2870,-2792,-2714,-2634,-2551,-2468,-2385,-2302,-2220,-2138,-2057,-1982,-1909,-1832,-1746,-1653,
+-1561,-1475,-1399,-1333,-1280,-1240,-1213,-1190,-1163,-1124,-1076,-1028,-986,-950,-913,-872,-829,-786,-743,-698,-651,
+-605,-563,-523,-481,-434,-385,-334,-284,-236,-189,-141,-91,-37,22,86,153,221,289,356,426,498,
+568,635,701,768,833,894,954,1018,1084,1148,1206,1259,1311,1362,1408,1447,1482,1516,1550,1581,1605,
+1628,1649,1665,1675,1680,1684,1690,1698,1707,1720,1737,1758,1783,1811,1843,1878,1915,1951,1988,2024,2058,
+2091,2127,2167,2209,2246,2276,2300,2323,2345,2367,2386,2402,2415,2424,2432,2439,2446,2457,2474,2494,2514,
+2530,2547,2569,2590,2608,2640,2714,2843,3003,3154,3272,3366,3448,3521,3578,3618,3640,3638,3612,3577,3561,
+3575,3612,3656,3701,3746,3783,3800,3795,3778,3758,3731,3694,3646,3594,3540,3489,3449,3419,3384,3332,3268,
+3214,3181,3154,3120,3076,3035,2998,2956,2906,2853,2806,2763,2720,2677,2637,2601,2568,2539,2516,2501,2491,
+2483,2477,2477,2492,2530,2590,2653,2698,2722,2739,2765,2800,2838,2884,2943,3011,3027,3087,3117,3122,3122,
+3127,3134,3142,3155,3178,3205,3228,3241,3241,3227,3205,3186,3177,3179,3195,3232,3281,3316,3302,3233,3142,
+3076,3054,3060,3065,3062,3063,3080,3101,3102,3071,3015,2950,2882,2813,2758,2734,2742,2754,2743,2706,2659,
+2613,2565,2513,2468,2438,2419,2404,2394,2389,2384,2374,2375,2407,2469,2535,2583,2617,2649,2679,2705,2734,
+2777,2815,2816,2776,2732,2711,2691,2634,2533,2418,2310,2199,2075,1955,1865,1802,1743,1672,1601,1542,1494,
+1451,1413,1382,1356,1332,1319,1324,1341,1355,1368,1400,1453,1503,1523,1516,1503,1492,1469,1425,1376,1346,
+1340,1339,1326,1299,1266,1238,1216,1196,1171,1134,1089,1046,1014,995,982,970,954,933,912,901,903,
+910,910,911,938,1005,1090,1147,1152,1117,1070,1021,962,896,836,788,737,667,595,551,546,548,
+524,475,438,438,469,502,525,549,581,611,617,596,564,536,509,470,416,358,304,243,162,
+67,-19,-85,-142,-209,-293,-387,-489,-598,-710,-813,-909,-1018,-1157,-1321,-1493,-1664,-1841,-2023,-2191,-2332,
+-2454,-2572,-2687,-2792,-2885,-2974,-3059,-3130,-3182,-3219,-3254,-3288,-3317,-3341,-3365,-3388,-3407,-3417,-3421,-3419,-3413,
+-3404,-3397,-3389,-3378,-3368,-3368,-3383,-3403,-3420,-3432,-3433,-3408,-3349,-3274,-3216,-3182,-3145,-3087,-3027,-2993,-2985,
+-2986,-3018,-3131,-3340,-3587,-3789,-3913,-3992,-4054,-4097,-4120,-4164,-4275,-4443,-4588,-4628,-4546,-4401,-4279,-4238,-4290,
+-4401,-4523,-4626,-4720,-4824,-4940,-5041,-5101,-5120,-5122,-5134,-5164,-5203,-5234,-5251,-5263,-5284,-5314,-5334,-5331,-5314,
+-5309,-5329,-5367,-5405,-5443,-5488,-5543,-5600,-5651,-5697,-5737,-5770,-5799,-5836,-5882,-5922,-5937,-5925,-5905,-5898,-5907,
+-5922,-5943,-5973,-6005,-6025,-6030,-6026,-6019,-6007,-5986,-5963,-5953,-5953,-5954,-5947,-5934,-5920,-5900,-5881,-5877,-5902,
+-5945,-5977,-5989,-5997,-6025,-6071,-6115,-6139,-6143,-6135,-6125,-6115,-6106,-6089,-6057,-6013,-5966,-5921,-5871,-5810,-5750,
+-5710,-5700,-5713,-5734,-5760,-5790,-5818,-5840,-5850,-5846,-5824,-5783,-5734,-5697,-5682,-5682,-5683,-5672,-5646,-5608,-5573,
+-5555,-5552,-5550,-5534,-5500,-5453,-5393,-5320,-5240,-5165,-5101,-5048,-5016,-5030,-5093,-5166,-5193,-5159,-5101,-5056,-5016,
+-4945,-4827,-4690,-4573,-4493,-4438,-4392,-4343,-4285,-4219,-4157,-4109,-4074,-4035,-3979,-3912,-3850,-3802,-3768,-3740,-3713,
+-3679,-3635,-3579,-3506,-3419,-3329,-3258,-3222,-3211,-3196,-3155,-3100,-3058,-3041,-3034,-3016,-2984,-2950,-2922,-2891,-2850,
+-2799,-2745,-2694,-2645,-2595,-2539,-2472,-2399,-2325,-2252,-2176,-2095,-2012,-1935,-1856,-1764,-1661,-1561,-1470,-1377,-1273,
+-1166,-1076,-1004,-925,-826,-718,-623,-543,-459,-363,-267,-181,-101,-18,72,167,270,381,492,601,712,
+834,960,1076,1180,1280,1377,1463,1541,1630,1734,1819,1854,1860,1899,2002,2129,2214,2242,2245,2253,2265,
+2277,2292,2310,2310,2292,2290,2343,2434,2512,2549,2577,2638,2732,2824,2887,2930,2971,3012,3054,3101,3155,
+3213,3266,3315,3365,3415,3454,3480,3494,3499,3495,3488,3489,3504,3529,3558,3584,3610,3634,3657,3684,3720,
+3761,3795,3822,3847,3875,3900,3918,3936,3962,3991,4007,4005,3997,4009,4054,4126,4208,4286,4348,4395,4434,
+4473,4510,4544,4580,4627,4679,4717,4731,4735,4746,4761,4758,4735,4727,4764,4830,4876,4871,4833,4785,4720,
+4613,4472,4335,4218,4078,3858,3559,3239,2955,2730,2574,2516,2579,2743,2948,3143,3310,3449,3556,3631,3685,
+3726,3745,3731,3695,3661,3637,3602,3547,3490,3453,3427,3387,3326,3267,3218,3166,3094,3016,2952,2897,2829,
+2753,2697,2675,2662,2629,2586,2556,2532,2474,2374,2277,2233,2228,2203,2130,2045,2001,1986,1945,1862,1792,
+1800,1870,1911,1849,1710,1583,1529,1534,1549,1554,1558,1559,1534,1467,1377,1295,1231,1175,1128,1105,1108,
+1112,1091,1050,1010,976,936,881,823,773,731,700,687,693,699,678,633,593,578,573,557,525,
+489,457,426,399,380,362,333,298,276,275,274,253,227,230,264,295,287,244,191,147,124,
+137,197,274,311,275,187,106,67,67,81,93,103,115,131,144,145,129,108,99,105,113,
+112,107,107,111,109,97,82,71,65,62,67,81,101,118,135,154,173,186,194,205,224,
+249,278,314,359,406,446,479,507,530,545,559,580,609,640,666,691,717,740,755,768,786,
+803,811,812,816,830,845,850,846,840,836,834,834,834,833,827,820,820,827,828,821,811,
+806,804,797,782,764,750,745,753,774,790,783,757,734,736,760,805,890,1037,1218,1350,1345,
+1190,950,717,541,422,340,280,237,200,157,104,55,31,39,62,75,71,59,48,35,8,
+-34,-84,-137,-196,-263,-333,-398,-459,-521,-585,-643,-694,-740,-784,-825,-862,-897,-934,-975,-1018,-1055,
+-1081,-1098,-1115,-1138,-1172,-1216,-1267,-1319,-1368,-1411,-1451,-1493,-1538,-1583,-1625,-1662,-1696,-1729,-1762,-1797,-1839,
+-1888,-1935,-1974,-2006,-2038,-2072,-2109,-2148,-2188,-2229,-2267,-2299,-2330,-2366,-2406,-2446,-2483,-2520,-2560,-2601,-2644,
+-2688,-2732,-2772,-2809,-2844,-2883,-2928,-2976,-3026,-3079,-3132,-3179,-3216,-3246,-3276,-3310,-3346,-3382,-3419,-3456,-3488,
+-3515,-3541,-3573,-3612,-3651,-3688,-3725,-3765,-3809,-3849,-3884,-3916,-3950,-3987,-4027,-4066,-4099,-4124,-4145,-4166,-4194,
+-4227,-4261,-4295,-4331,-4368,-4402,-4428,-4445,-4457,-4476,-4505,-4541,-4574,-4596,-4611,-4628,-4649,-4670,-4682,-4689,-4698,
+-4713,-4728,-4738,-4744,-4749,-4755,-4758,-4757,-4752,-4744,-4738,-4735,-4735,-4731,-4717,-4699,-4686,-4678,-4665,-4637,-4604,
+-4582,-4572,-4562,-4538,-4504,-4469,-4436,-4400,-4360,-4322,-4291,-4263,-4231,-4192,-4150,-4107,-4064,-4019,-3969,-3914,-3862,
+-3822,-3797,-3770,-3727,-3668,-3609,-3561,-3520,-3477,-3432,-3385,-3333,-3276,-3220,-3176,-3143,-3105,-3058,-3011,-2966,-2904,
+-2805,-2689,-2599,-2555,-2523,-2453,-2335,-2205,-2094,-1998,-1897,-1791,-1698,-1629,-1572,-1518,-1472,-1437,-1403,-1356,-1304,
+-1269,-1262,-1270,-1270,-1258,-1247,-1253,-1287,-1347,-1424,-1494,-1536,-1555,-1585,-1655,-1756,-1855,-1929,-1995,-2085,-2206,
+-2338,-2454,-2545,-2610,-2648,-2657,-2640,-2605,-2558,-2515,-2493,-2502,-2523,-2513,-2443,-2324,-2192,-2073,-1970,-1880,-1807,
+-1750,-1704,-1663,-1628,-1607,-1592,-1571,-1540,-1507,-1479,-1455,-1439,-1444,-1469,-1491,-1484,-1455,-1447,-1501,-1617,-1771,
+-1930,-2061,-2128,-2108,-2024,-1934,-1875,-1833,-1773,-1697,-1644,-1642,-1674,-1700,-1714,-1741,-1798,-1869,-1932,-1982,-2027,
+-2067,-2097,-2126,-2174,-2244,-2317,-2364,-2379,-2370,-2356,-2361,-2408,-2502,-2616,-2714,-2786,-2855,-2946,-3066,-3206,-3366,
+-3529,-3648,-3685,-3656,-3635,-3680,-3781,-3896,-4010,-4144,-4296,-4427,-4509,-4565,-4645,-4761,-4879,-4961,-5006,-5035,-5055,
+-5063,-5060,-5057,-5063,-5075,-5085,-5085,-5074,-5058,-5053,-5068,-5098,-5123,-5135,-5144,-5158,-5172,-5177,-5177,-5184,-5201,
+-5221,-5236,-5244,-5245,-5235,-5217,-5199,-5190,-5184,-5171,-5150,-5128,-5109,-5091,-5072,-5058,-5051,-5041,-5021,-4993,-4968,
+-4948,-4925,-4891,-4849,-4804,-4761,-4720,-4681,-4643,-4604,-4567,-4531,-4496,-4452,-4398,-4338,-4284,-4238,-4192,-4143,-4093,
+-4050,-4011,-3970,-3920,-3865,-3810,-3753,-3691,-3622,-3550,-3486,-3431,-3378,-3317,-3244,-3164,-3084,-3006,-2927,-2844,-2759,
+-2675,-2593,-2512,-2430,-2348,-2263,-2178,-2097,-2023,-1951,-1873,-1783,-1687,-1596,-1516,-1446,-1382,-1328,-1287,-1259,-1236,
+-1210,-1173,-1128,-1081,-1039,-1001,-964,-924,-885,-846,-806,-760,-709,-660,-614,-570,-524,-476,-426,-378,-330,
+-281,-231,-181,-130,-78,-20,44,113,184,252,320,391,463,533,601,670,742,815,884,949,1015,
+1083,1150,1210,1266,1321,1374,1422,1461,1496,1531,1567,1600,1626,1647,1664,1679,1689,1696,1701,1708,1714,
+1722,1734,1749,1766,1785,1808,1836,1867,1898,1931,1967,2006,2043,2076,2110,2150,2194,2235,2269,2295,2319,
+2340,2359,2374,2388,2399,2407,2413,2416,2417,2419,2427,2443,2462,2481,2503,2527,2551,2574,2615,2702,2844,
+3011,3159,3269,3359,3446,3527,3584,3612,3618,3607,3583,3555,3541,3550,3574,3604,3641,3686,3726,3746,3742,
+3732,3722,3706,3674,3628,3577,3525,3470,3417,3373,3335,3293,3246,3204,3172,3144,3108,3065,3023,2984,2943,
+2896,2850,2808,2766,2722,2679,2644,2614,2585,2557,2534,2519,2507,2494,2482,2478,2493,2535,2596,2659,2707,
+2738,2765,2796,2828,2858,2896,2955,3027,3043,3096,3118,3116,3111,3113,3120,3131,3150,3180,3212,3233,3233,
+3213,3182,3152,3133,3128,3134,3152,3182,3213,3227,3203,3141,3064,3004,2975,2970,2968,2965,2966,2983,3008,
+3021,3008,2974,2927,2870,2803,2740,2704,2702,2711,2701,2665,2617,2569,2519,2467,2423,2392,2367,2341,2320,
+2313,2317,2324,2337,2369,2418,2468,2515,2572,2643,2712,2757,2785,2813,2835,2832,2813,2810,2834,2831,2742,
+2571,2383,2229,2107,1986,1867,1775,1718,1680,1639,1588,1530,1468,1413,1374,1351,1334,1316,1308,1318,1335,
+1346,1362,1406,1479,1545,1571,1560,1539,1520,1488,1434,1378,1345,1336,1327,1303,1269,1239,1218,1198,1174,
+1147,1121,1094,1065,1035,1010,993,983,970,948,924,910,912,920,920,918,933,976,1030,1069,1081,
+1073,1052,1011,949,885,844,824,790,717,622,552,528,522,495,445,409,414,449,484,506,533,
+579,626,645,625,589,562,540,495,415,320,241,179,110,18,-82,-167,-231,-293,-371,-468,-573,
+-680,-784,-884,-988,-1107,-1251,-1415,-1587,-1762,-1938,-2108,-2258,-2386,-2505,-2622,-2732,-2828,-2914,-3000,-3083,-3150,
+-3197,-3236,-3277,-3315,-3342,-3363,-3389,-3417,-3433,-3435,-3431,-3432,-3436,-3440,-3443,-3446,-3447,-3447,-3453,-3470,-3492,
+-3506,-3504,-3484,-3443,-3380,-3313,-3261,-3228,-3197,-3163,-3145,-3151,-3163,-3160,-3165,-3239,-3404,-3615,-3804,-3945,-4046,
+-4105,-4103,-4063,-4070,-4193,-4400,-4570,-4603,-4508,-4380,-4312,-4338,-4433,-4554,-4672,-4778,-4881,-4989,-5097,-5182,-5229,
+-5241,-5243,-5262,-5307,-5359,-5391,-5390,-5373,-5370,-5388,-5407,-5402,-5379,-5364,-5373,-5399,-5432,-5472,-5528,-5597,-5659,
+-5702,-5734,-5768,-5813,-5863,-5913,-5957,-5987,-5997,-5989,-5976,-5970,-5971,-5978,-5995,-6023,-6055,-6075,-6076,-6066,-6052,
+-6034,-6008,-5979,-5953,-5935,-5924,-5924,-5935,-5949,-5953,-5951,-5960,-5992,-6032,-6056,-6064,-6081,-6125,-6182,-6219,-6226,
+-6213,-6199,-6189,-6179,-6165,-6143,-6106,-6056,-6003,-5956,-5910,-5861,-5812,-5774,-5756,-5756,-5770,-5799,-5839,-5879,-5906,
+-5913,-5902,-5873,-5827,-5776,-5736,-5715,-5708,-5703,-5694,-5680,-5659,-5634,-5614,-5601,-5590,-5572,-5538,-5483,-5406,-5317,
+-5233,-5167,-5111,-5053,-5014,-5034,-5125,-5229,-5270,-5222,-5137,-5069,-5017,-4934,-4803,-4657,-4544,-4473,-4420,-4364,-4303,
+-4246,-4195,-4149,-4106,-4059,-4000,-3934,-3875,-3828,-3790,-3754,-3723,-3700,-3676,-3634,-3570,-3496,-3427,-3369,-3321,-3288,
+-3266,-3235,-3177,-3101,-3039,-3017,-3023,-3023,-3001,-2967,-2937,-2910,-2872,-2817,-2748,-2673,-2596,-2520,-2445,-2373,-2301,
+-2230,-2160,-2090,-2023,-1959,-1897,-1827,-1739,-1640,-1544,-1454,-1359,-1249,-1136,-1038,-953,-862,-756,-654,-574,-503,
+-418,-319,-226,-150,-74,17,119,220,320,429,547,663,777,898,1024,1141,1239,1321,1396,1466,1540,
+1629,1728,1802,1830,1839,1885,1978,2074,2132,2169,2221,2285,2326,2340,2356,2390,2412,2407,2415,2484,2595,
+2676,2693,2693,2740,2828,2908,2953,2988,3039,3098,3147,3187,3232,3281,3321,3353,3392,3441,3485,3508,3511,
+3507,3507,3509,3516,3531,3554,3578,3601,3625,3649,3672,3697,3728,3766,3801,3828,3856,3889,3923,3947,3957,
+3966,3983,4005,4020,4028,4043,4084,4157,4245,4325,4383,4421,4455,4493,4532,4567,4603,4646,4693,4728,4742,
+4747,4759,4773,4771,4752,4747,4783,4846,4893,4892,4859,4820,4779,4718,4630,4530,4426,4293,4100,3850,3574,
+3295,3020,2774,2609,2573,2661,2824,3013,3205,3385,3532,3632,3692,3728,3747,3745,3727,3703,3678,3640,3587,
+3534,3494,3455,3404,3346,3301,3267,3221,3153,3078,3015,2958,2884,2798,2732,2702,2685,2650,2597,2550,2510,
+2457,2384,2324,2306,2312,2281,2187,2072,2001,1982,1962,1902,1839,1842,1918,1983,1941,1799,1652,1586,1593,
+1608,1603,1598,1609,1604,1545,1444,1351,1292,1250,1202,1158,1140,1139,1126,1094,1060,1033,996,934,859,
+798,761,741,732,735,740,728,692,653,635,634,626,600,565,530,498,469,445,425,400,373,
+352,340,325,298,273,275,301,317,296,247,201,181,194,242,315,379,391,340,261,201,179,
+181,192,209,232,254,265,263,248,219,183,155,146,147,145,137,132,134,140,141,134,120,
+103,91,92,107,124,135,142,156,176,197,214,231,249,269,294,329,373,416,453,487,520,
+543,552,557,579,619,661,690,709,728,747,760,771,788,814,836,844,842,842,852,871,891,
+905,904,892,880,876,874,867,858,856,864,870,867,859,852,845,833,818,805,796,787,779,
+774,765,739,701,676,692,761,881,1050,1250,1426,1504,1444,1277,1086,942,856,788,697,570,424,
+285,163,57,-26,-71,-70,-39,-10,-1,-7,-12,-16,-28,-57,-97,-144,-197,-258,-322,-383,-441,
+-501,-564,-622,-673,-719,-763,-804,-842,-878,-916,-956,-994,-1025,-1047,-1064,-1083,-1111,-1149,-1196,-1247,-1297,
+-1343,-1385,-1427,-1471,-1519,-1567,-1609,-1645,-1678,-1712,-1747,-1786,-1830,-1876,-1921,-1960,-1993,-2025,-2059,-2096,-2136,
+-2179,-2222,-2259,-2291,-2322,-2357,-2394,-2432,-2469,-2507,-2548,-2589,-2633,-2678,-2725,-2768,-2806,-2843,-2884,-2931,-2982,
+-3035,-3086,-3133,-3175,-3209,-3239,-3269,-3302,-3338,-3377,-3418,-3458,-3492,-3520,-3546,-3576,-3612,-3648,-3683,-3716,-3753,
+-3792,-3832,-3870,-3907,-3946,-3988,-4032,-4073,-4106,-4131,-4153,-4177,-4206,-4238,-4270,-4301,-4334,-4369,-4403,-4432,-4453,
+-4471,-4491,-4518,-4548,-4574,-4591,-4603,-4622,-4648,-4673,-4688,-4694,-4700,-4713,-4728,-4740,-4744,-4746,-4749,-4753,-4756,
+-4754,-4748,-4740,-4736,-4735,-4730,-4714,-4693,-4677,-4671,-4663,-4642,-4612,-4587,-4572,-4560,-4538,-4506,-4471,-4437,-4402,
+-4365,-4330,-4297,-4262,-4226,-4188,-4149,-4107,-4059,-4009,-3961,-3911,-3861,-3816,-3780,-3748,-3708,-3656,-3601,-3551,-3506,
+-3461,-3412,-3362,-3310,-3255,-3204,-3166,-3137,-3103,-3058,-3011,-2965,-2903,-2802,-2677,-2577,-2532,-2516,-2473,-2372,-2239,
+-2115,-2012,-1913,-1807,-1709,-1632,-1573,-1520,-1471,-1428,-1388,-1338,-1282,-1237,-1217,-1217,-1219,-1218,-1223,-1242,-1274,
+-1320,-1380,-1444,-1490,-1512,-1532,-1587,-1682,-1787,-1870,-1934,-2011,-2121,-2249,-2368,-2459,-2522,-2556,-2563,-2547,-2519,
+-2483,-2449,-2433,-2443,-2457,-2420,-2295,-2104,-1913,-1777,-1704,-1668,-1646,-1626,-1604,-1576,-1546,-1526,-1520,-1519,-1509,
+-1482,-1443,-1404,-1382,-1389,-1414,-1425,-1397,-1349,-1340,-1420,-1583,-1777,-1944,-2049,-2078,-2041,-1972,-1919,-1902,-1895,
+-1856,-1781,-1712,-1686,-1702,-1729,-1757,-1794,-1846,-1903,-1954,-2004,-2060,-2110,-2134,-2135,-2140,-2175,-2232,-2284,-2314,
+-2323,-2328,-2355,-2432,-2566,-2729,-2877,-2987,-3065,-3129,-3190,-3268,-3386,-3541,-3679,-3744,-3740,-3733,-3778,-3866,-3963,
+-4063,-4174,-4275,-4316,-4295,-4284,-4366,-4542,-4740,-4893,-4987,-5043,-5070,-5074,-5065,-5061,-5065,-5070,-5075,-5079,-5076,
+-5057,-5035,-5034,-5064,-5104,-5129,-5136,-5141,-5153,-5167,-5174,-5178,-5187,-5198,-5207,-5211,-5209,-5199,-5183,-5169,-5161,
+-5154,-5142,-5124,-5108,-5091,-5068,-5041,-5022,-5015,-5010,-4996,-4974,-4954,-4936,-4912,-4875,-4830,-4784,-4741,-4698,-4655,
+-4613,-4571,-4532,-4498,-4468,-4433,-4385,-4329,-4276,-4233,-4197,-4157,-4112,-4064,-4020,-3977,-3931,-3879,-3823,-3766,-3704,
+-3638,-3568,-3503,-3449,-3402,-3350,-3284,-3209,-3135,-3063,-2988,-2904,-2815,-2727,-2644,-2564,-2484,-2402,-2316,-2228,-2142,
+-2063,-1986,-1905,-1815,-1722,-1635,-1559,-1493,-1435,-1387,-1349,-1319,-1292,-1261,-1224,-1183,-1139,-1096,-1055,-1014,-974,
+-937,-902,-863,-818,-767,-717,-670,-625,-576,-525,-474,-426,-377,-328,-277,-225,-172,-118,-60,3,70,
+138,204,271,343,417,488,558,628,705,785,862,934,1004,1074,1141,1204,1262,1321,1378,1429,1472,
+1510,1548,1587,1623,1651,1671,1686,1698,1706,1712,1716,1721,1727,1737,1752,1769,1787,1803,1823,1848,1877,
+1906,1937,1972,2011,2047,2078,2109,2144,2184,2222,2256,2286,2313,2337,2354,2367,2377,2385,2390,2393,2394,
+2393,2391,2394,2403,2418,2437,2459,2486,2514,2547,2605,2713,2871,3041,3175,3266,3345,3437,3531,3595,3616,
+3609,3594,3576,3559,3550,3551,3558,3573,3601,3644,3682,3697,3691,3686,3689,3685,3655,3603,3545,3486,3423,
+3359,3310,3279,3254,3222,3185,3152,3122,3087,3046,3005,2967,2930,2891,2853,2815,2774,2729,2689,2660,2637,
+2613,2588,2571,2560,2548,2529,2511,2506,2523,2563,2619,2678,2728,2765,2797,2827,2855,2882,2919,2975,3043,
+3050,3092,3110,3110,3107,3111,3121,3135,3158,3191,3225,3240,3226,3188,3144,3111,3094,3091,3096,3110,3129,
+3143,3135,3099,3043,2982,2930,2894,2873,2861,2857,2862,2881,2911,2938,2947,2936,2908,2864,2803,2740,2695,
+2680,2674,2654,2616,2572,2528,2480,2426,2381,2350,2323,2289,2257,2243,2251,2269,2293,2326,2363,2398,2442,
+2520,2633,2742,2811,2838,2850,2857,2857,2863,2906,2969,2973,2845,2602,2341,2143,2006,1890,1776,1686,1636,
+1615,1598,1566,1511,1439,1371,1330,1317,1310,1299,1295,1306,1324,1335,1352,1406,1495,1578,1613,1603,1576,
+1547,1505,1443,1381,1343,1327,1312,1283,1248,1221,1201,1178,1148,1119,1102,1092,1075,1046,1014,995,988,
+982,963,938,921,919,924,925,924,931,948,968,984,997,1009,1008,974,910,851,828,835,822,
+754,647,555,510,491,460,413,382,393,433,469,491,522,579,644,673,651,606,574,554,510,
+414,290,183,114,58,-17,-115,-212,-294,-369,-455,-554,-656,-755,-851,-950,-1058,-1184,-1332,-1500,-1679,
+-1859,-2033,-2188,-2318,-2433,-2547,-2665,-2772,-2862,-2943,-3027,-3106,-3167,-3209,-3249,-3296,-3337,-3364,-3384,-3414,-3447,
+-3465,-3460,-3449,-3449,-3459,-3470,-3479,-3491,-3504,-3514,-3525,-3539,-3555,-3559,-3542,-3507,-3460,-3404,-3346,-3294,-3253,
+-3224,-3215,-3236,-3280,-3313,-3317,-3322,-3383,-3523,-3704,-3874,-4014,-4116,-4153,-4104,-4015,-4003,-4144,-4383,-4577,-4624,
+-4551,-4464,-4444,-4501,-4601,-4715,-4833,-4952,-5066,-5171,-5259,-5320,-5350,-5353,-5353,-5377,-5433,-5499,-5536,-5525,-5485,
+-5457,-5457,-5467,-5460,-5436,-5418,-5421,-5440,-5466,-5505,-5567,-5640,-5701,-5736,-5759,-5793,-5846,-5908,-5964,-6007,-6034,
+-6047,-6048,-6042,-6035,-6029,-6025,-6029,-6045,-6070,-6090,-6099,-6096,-6086,-6070,-6048,-6019,-5990,-5967,-5961,-5979,-6017,
+-6052,-6066,-6063,-6070,-6100,-6140,-6165,-6177,-6199,-6243,-6288,-6306,-6296,-6279,-6271,-6267,-6255,-6231,-6199,-6157,-6104,
+-6045,-5992,-5946,-5904,-5866,-5836,-5818,-5813,-5822,-5849,-5892,-5936,-5965,-5973,-5959,-5926,-5874,-5815,-5767,-5736,-5721,
+-5713,-5710,-5711,-5709,-5698,-5677,-5654,-5634,-5614,-5584,-5526,-5436,-5331,-5243,-5186,-5138,-5077,-5025,-5043,-5155,-5292,
+-5348,-5288,-5174,-5079,-5009,-4913,-4768,-4613,-4502,-4438,-4389,-4329,-4266,-4216,-4181,-4150,-4110,-4052,-3978,-3903,-3847,
+-3810,-3778,-3736,-3697,-3673,-3655,-3618,-3552,-3482,-3434,-3404,-3374,-3336,-3298,-3257,-3196,-3114,-3044,-3019,-3033,-3044,
+-3027,-2989,-2957,-2935,-2903,-2847,-2767,-2671,-2563,-2453,-2356,-2281,-2219,-2158,-2093,-2030,-1974,-1920,-1861,-1789,-1701,
+-1604,-1507,-1413,-1315,-1210,-1106,-1011,-917,-810,-695,-597,-526,-461,-377,-279,-193,-123,-44,60,175,279,
+375,485,612,737,849,961,1079,1191,1282,1351,1410,1469,1538,1626,1717,1779,1795,1801,1848,1940,2027,
+2082,2143,2244,2355,2412,2408,2400,2424,2455,2462,2480,2561,2687,2774,2787,2781,2827,2915,2986,3020,3052,
+3111,3177,3221,3250,3288,3336,3375,3400,3431,3476,3515,3528,3522,3519,3527,3540,3550,3563,3581,3601,3621,
+3644,3671,3699,3723,3748,3779,3811,3840,3867,3901,3940,3972,3986,3990,4003,4027,4053,4070,4085,4118,4183,
+4267,4345,4402,4440,4474,4513,4553,4589,4625,4666,4708,4740,4755,4761,4773,4788,4794,4785,4777,4792,4831,
+4868,4879,4865,4840,4812,4774,4723,4660,4581,4470,4314,4118,3895,3644,3360,3067,2826,2696,2690,2782,2938,
+3131,3334,3507,3621,3681,3713,3736,3749,3744,3722,3689,3650,3607,3562,3511,3450,3386,3338,3315,3296,3250,
+3179,3116,3088,3072,3020,2920,2811,2745,2731,2732,2704,2638,2552,2467,2402,2369,2370,2380,2353,2262,2137,
+2048,2031,2048,2027,1961,1913,1941,2005,2010,1918,1795,1724,1712,1697,1648,1604,1599,1603,1562,1478,1410,
+1395,1394,1355,1281,1217,1185,1166,1139,1109,1085,1053,996,927,881,863,849,825,801,791,784,761,
+726,705,704,703,680,640,600,571,547,523,499,475,453,434,417,396,367,339,326,324,314,
+288,259,252,279,328,385,431,448,427,382,347,340,350,355,354,363,381,394,388,369,343,
+310,265,220,190,181,180,174,163,156,158,163,162,150,130,115,116,129,142,146,150,162,
+184,208,229,249,271,292,317,353,396,434,464,495,531,561,573,577,595,633,671,690,699,
+715,741,764,778,794,822,853,871,870,860,859,875,903,927,933,924,914,913,916,912,903,
+900,904,907,900,889,878,866,850,837,830,825,811,793,779,769,750,719,699,722,805,942,
+1107,1266,1368,1371,1278,1146,1055,1051,1112,1167,1144,1011,799,571,374,216,83,-26,-98,-124,-120,
+-109,-100,-89,-76,-71,-85,-114,-153,-198,-252,-311,-369,-426,-482,-540,-595,-646,-693,-737,-779,-819,
+-857,-894,-929,-962,-990,-1014,-1035,-1061,-1096,-1140,-1190,-1238,-1284,-1325,-1366,-1407,-1453,-1502,-1550,-1592,-1629,
+-1663,-1698,-1736,-1777,-1821,-1865,-1907,-1945,-1978,-2009,-2041,-2076,-2116,-2160,-2203,-2240,-2274,-2306,-2339,-2373,-2407,
+-2445,-2487,-2532,-2576,-2620,-2667,-2716,-2763,-2804,-2842,-2882,-2928,-2981,-3034,-3083,-3125,-3161,-3193,-3224,-3256,-3289,
+-3326,-3367,-3411,-3454,-3490,-3521,-3549,-3579,-3613,-3647,-3680,-3711,-3743,-3779,-3819,-3861,-3904,-3948,-3994,-4038,-4078,
+-4111,-4138,-4163,-4189,-4219,-4250,-4281,-4311,-4341,-4373,-4405,-4436,-4464,-4488,-4511,-4534,-4556,-4573,-4586,-4599,-4619,
+-4648,-4678,-4698,-4707,-4711,-4719,-4730,-4740,-4746,-4749,-4752,-4755,-4758,-4757,-4751,-4744,-4738,-4736,-4730,-4715,-4692,
+-4674,-4664,-4657,-4642,-4617,-4591,-4570,-4550,-4527,-4499,-4469,-4436,-4401,-4365,-4332,-4298,-4261,-4222,-4184,-4148,-4106,
+-4054,-4000,-3951,-3907,-3861,-3813,-3766,-3724,-3682,-3636,-3586,-3536,-3488,-3439,-3389,-3342,-3295,-3246,-3199,-3159,-3128,
+-3095,-3053,-3010,-2973,-2925,-2837,-2709,-2586,-2518,-2498,-2470,-2386,-2256,-2128,-2026,-1937,-1837,-1730,-1641,-1577,-1526,
+-1475,-1424,-1377,-1327,-1273,-1224,-1193,-1183,-1186,-1197,-1216,-1242,-1266,-1290,-1327,-1382,-1436,-1466,-1481,-1519,-1605,
+-1717,-1810,-1872,-1932,-2021,-2140,-2262,-2361,-2429,-2462,-2467,-2453,-2433,-2411,-2385,-2365,-2366,-2369,-2318,-2164,-1929,
+-1701,-1560,-1519,-1529,-1544,-1547,-1540,-1522,-1496,-1473,-1464,-1468,-1465,-1438,-1390,-1341,-1318,-1332,-1361,-1364,-1318,
+-1257,-1253,-1359,-1559,-1780,-1949,-2038,-2057,-2035,-2002,-1986,-1994,-2000,-1972,-1903,-1828,-1785,-1785,-1811,-1848,-1893,
+-1945,-1995,-2046,-2108,-2181,-2239,-2246,-2205,-2154,-2134,-2152,-2190,-2234,-2280,-2329,-2389,-2474,-2599,-2759,-2929,-3086,
+-3215,-3311,-3371,-3416,-3487,-3599,-3716,-3787,-3806,-3821,-3869,-3945,-4031,-4133,-4245,-4314,-4276,-4155,-4071,-4135,-4340,
+-4587,-4791,-4935,-5033,-5085,-5096,-5089,-5088,-5091,-5085,-5073,-5074,-5081,-5071,-5039,-5018,-5035,-5078,-5109,-5116,-5118,
+-5135,-5162,-5181,-5186,-5183,-5177,-5172,-5165,-5159,-5151,-5143,-5135,-5128,-5120,-5108,-5098,-5092,-5084,-5063,-5031,-5003,
+-4989,-4982,-4971,-4953,-4936,-4918,-4890,-4850,-4802,-4754,-4707,-4658,-4610,-4564,-4523,-4485,-4453,-4427,-4401,-4367,-4324,
+-4279,-4240,-4207,-4170,-4125,-4074,-4022,-3976,-3932,-3883,-3826,-3765,-3703,-3638,-3569,-3500,-3440,-3391,-3344,-3289,-3225,
+-3160,-3097,-3030,-2952,-2865,-2778,-2694,-2614,-2534,-2454,-2370,-2283,-2195,-2109,-2026,-1941,-1853,-1767,-1688,-1616,-1552,
+-1498,-1456,-1422,-1389,-1353,-1315,-1277,-1239,-1199,-1156,-1111,-1065,-1022,-984,-949,-911,-866,-818,-770,-726,-680,
+-632,-582,-532,-482,-431,-379,-327,-274,-221,-165,-105,-42,23,88,154,221,294,370,444,515,588,
+666,749,832,910,984,1056,1124,1189,1251,1314,1375,1431,1479,1523,1565,1606,1643,1674,1695,1710,1717,
+1721,1723,1725,1727,1733,1747,1766,1788,1808,1825,1846,1873,1904,1934,1963,1996,2031,2063,2090,2118,2149,
+2183,2215,2244,2274,2305,2331,2351,2364,2374,2380,2381,2378,2376,2375,2375,2376,2382,2393,2408,2428,2453,
+2482,2521,2592,2720,2893,3062,3180,3248,3313,3410,3519,3595,3616,3601,3584,3576,3577,3580,3580,3576,3575,
+3592,3625,3653,3656,3645,3644,3659,3664,3632,3569,3498,3430,3361,3297,3251,3229,3213,3187,3152,3119,3091,
+3060,3022,2983,2948,2916,2885,2853,2817,2775,2732,2700,2680,2665,2647,2630,2623,2620,2608,2583,2559,2553,
+2569,2603,2651,2709,2765,2808,2836,2858,2880,2907,2945,2996,3050,3048,3082,3102,3108,3109,3114,3124,3140,
+3164,3196,3223,3229,3205,3160,3114,3083,3066,3057,3054,3059,3070,3070,3046,2999,2948,2904,2864,2822,2784,
+2759,2751,2758,2781,2817,2858,2888,2897,2883,2849,2796,2737,2689,2658,2631,2595,2555,2522,2491,2447,2391,
+2342,2313,2292,2260,2220,2195,2194,2213,2243,2277,2308,2333,2375,2464,2602,2741,2830,2867,2879,2886,2892,
+2913,2974,3047,3041,2880,2592,2290,2064,1917,1804,1699,1616,1570,1553,1544,1523,1476,1405,1336,1296,1288,
+1288,1282,1279,1292,1313,1326,1345,1400,1492,1581,1623,1615,1585,1551,1507,1445,1382,1337,1315,1298,1272,
+1241,1212,1187,1159,1126,1098,1083,1075,1059,1030,998,982,980,979,966,944,926,918,916,916,918,
+921,922,918,916,927,947,953,923,863,813,803,823,823,763,656,555,496,468,436,391,361,
+371,411,447,469,501,563,637,676,658,608,569,545,502,406,272,149,68,14,-49,-135,-232,
+-326,-420,-520,-623,-724,-820,-918,-1022,-1135,-1262,-1410,-1580,-1763,-1945,-2112,-2253,-2368,-2471,-2579,-2692,-2795,
+-2882,-2963,-3048,-3127,-3184,-3220,-3259,-3310,-3358,-3386,-3404,-3430,-3464,-3485,-3484,-3475,-3478,-3491,-3505,-3517,-3532,
+-3550,-3563,-3571,-3578,-3583,-3573,-3544,-3503,-3463,-3422,-3375,-3319,-3266,-3238,-3251,-3304,-3369,-3409,-3416,-3431,-3507,
+-3651,-3820,-3970,-4092,-4177,-4193,-4127,-4039,-4048,-4212,-4457,-4641,-4686,-4636,-4587,-4597,-4657,-4745,-4854,-4987,-5128,
+-5254,-5346,-5404,-5435,-5446,-5443,-5443,-5470,-5532,-5606,-5648,-5637,-5590,-5547,-5529,-5523,-5508,-5484,-5471,-5478,-5499,
+-5527,-5566,-5622,-5687,-5740,-5774,-5804,-5847,-5903,-5959,-6005,-6044,-6078,-6103,-6115,-6115,-6110,-6105,-6100,-6097,-6100,
+-6111,-6128,-6142,-6149,-6148,-6137,-6119,-6096,-6075,-6064,-6074,-6110,-6161,-6200,-6208,-6197,-6195,-6222,-6263,-6291,-6305,
+-6321,-6348,-6370,-6368,-6350,-6338,-6340,-6340,-6321,-6285,-6245,-6203,-6153,-6094,-6035,-5983,-5941,-5909,-5888,-5878,-5877,
+-5886,-5911,-5951,-5994,-6024,-6033,-6019,-5978,-5912,-5838,-5778,-5744,-5729,-5724,-5723,-5729,-5737,-5736,-5719,-5691,-5663,
+-5641,-5614,-5558,-5463,-5349,-5261,-5215,-5179,-5115,-5046,-5050,-5164,-5318,-5386,-5320,-5184,-5072,-4994,-4896,-4746,-4585,
+-4470,-4406,-4357,-4297,-4238,-4197,-4173,-4148,-4107,-4043,-3962,-3882,-3825,-3791,-3757,-3707,-3657,-3631,-3622,-3597,-3538,
+-3472,-3434,-3416,-3389,-3341,-3292,-3252,-3206,-3138,-3071,-3042,-3049,-3054,-3027,-2983,-2952,-2933,-2903,-2847,-2764,-2660,
+-2535,-2405,-2297,-2229,-2184,-2135,-2072,-2007,-1948,-1888,-1817,-1733,-1641,-1544,-1444,-1342,-1243,-1153,-1071,-989,-891,
+-773,-651,-553,-485,-421,-339,-246,-166,-99,-14,103,229,339,438,553,686,813,921,1022,1129,1232,
+1315,1377,1431,1485,1550,1632,1716,1768,1772,1771,1819,1913,1998,2053,2129,2270,2432,2518,2504,2463,2461,
+2485,2497,2518,2600,2728,2825,2852,2859,2909,2993,3055,3082,3112,3169,3228,3261,3283,3325,3384,3431,3455,
+3479,3514,3542,3547,3539,3542,3556,3568,3575,3587,3609,3633,3652,3672,3700,3731,3755,3774,3798,3828,3856,
+3879,3906,3941,3976,3999,4010,4025,4050,4079,4100,4118,4150,4209,4286,4362,4419,4460,4495,4532,4569,4605,
+4641,4679,4718,4750,4769,4779,4789,4805,4818,4818,4807,4798,4806,4830,4857,4873,4870,4849,4814,4775,4732,
+4679,4599,4484,4340,4167,3954,3689,3391,3115,2916,2818,2818,2904,3064,3266,3457,3594,3669,3708,3734,3748,
+3740,3708,3667,3630,3600,3565,3509,3438,3374,3341,3334,3319,3268,3196,3151,3160,3188,3166,3058,2912,2817,
+2821,2879,2893,2806,2652,2508,2427,2404,2407,2415,2405,2351,2255,2170,2153,2192,2200,2119,2003,1954,1999,
+2055,2035,1951,1875,1831,1776,1685,1602,1575,1582,1561,1505,1474,1506,1549,1525,1427,1322,1258,1225,1190,
+1152,1122,1095,1055,1014,1000,1008,998,949,886,850,841,828,801,781,780,781,756,708,664,637,
+619,595,565,537,514,494,476,458,434,405,376,350,325,304,302,332,392,457,498,500,465,
+418,392,408,454,491,497,485,480,484,476,449,418,399,381,344,291,244,223,220,216,203,
+188,180,182,182,173,155,139,136,141,146,150,163,188,214,233,247,267,293,318,342,376,
+418,456,482,507,541,575,595,604,621,650,674,680,681,700,738,774,792,804,826,858,884,
+892,885,879,885,903,922,932,932,935,945,954,952,942,935,933,928,916,903,893,881,866,
+854,850,844,826,802,788,786,778,757,740,756,817,908,1002,1073,1096,1059,977,899,885,973,
+1148,1338,1446,1405,1231,1007,809,644,473,272,71,-77,-154,-176,-169,-150,-128,-114,-118,-137,-167,
+-202,-247,-300,-356,-411,-463,-513,-564,-614,-663,-709,-752,-794,-834,-870,-902,-932,-961,-990,-1019,-1051,
+-1091,-1140,-1191,-1238,-1277,-1314,-1351,-1392,-1436,-1482,-1528,-1570,-1610,-1648,-1687,-1726,-1767,-1809,-1850,-1888,-1924,
+-1957,-1989,-2021,-2056,-2097,-2141,-2183,-2222,-2258,-2292,-2323,-2351,-2380,-2417,-2463,-2512,-2560,-2605,-2652,-2703,-2752,
+-2796,-2834,-2872,-2916,-2967,-3022,-3071,-3112,-3145,-3178,-3212,-3247,-3282,-3318,-3359,-3403,-3445,-3483,-3517,-3550,-3582,
+-3615,-3648,-3680,-3710,-3739,-3772,-3812,-3858,-3907,-3954,-3999,-4041,-4079,-4112,-4142,-4170,-4199,-4228,-4258,-4287,-4316,
+-4344,-4373,-4402,-4432,-4462,-4491,-4517,-4539,-4556,-4570,-4583,-4598,-4620,-4648,-4678,-4702,-4717,-4724,-4729,-4736,-4744,
+-4752,-4758,-4762,-4764,-4763,-4759,-4753,-4747,-4743,-4741,-4735,-4722,-4701,-4681,-4666,-4656,-4643,-4625,-4601,-4573,-4544,
+-4515,-4488,-4462,-4431,-4396,-4360,-4327,-4296,-4261,-4222,-4183,-4146,-4104,-4053,-3997,-3947,-3906,-3863,-3814,-3761,-3711,
+-3665,-3618,-3570,-3522,-3475,-3428,-3379,-3333,-3290,-3245,-3198,-3155,-3118,-3081,-3039,-3002,-2982,-2967,-2917,-2806,-2664,
+-2555,-2502,-2463,-2379,-2248,-2118,-2025,-1952,-1862,-1751,-1649,-1578,-1526,-1472,-1413,-1358,-1311,-1263,-1215,-1179,-1161,
+-1159,-1168,-1186,-1208,-1221,-1224,-1241,-1289,-1356,-1404,-1423,-1448,-1518,-1625,-1723,-1785,-1835,-1910,-2022,-2147,-2256,
+-2332,-2371,-2374,-2360,-2344,-2333,-2315,-2293,-2284,-2281,-2233,-2082,-1842,-1603,-1458,-1425,-1448,-1466,-1468,-1466,-1467,
+-1461,-1447,-1435,-1430,-1416,-1378,-1320,-1269,-1252,-1272,-1301,-1297,-1248,-1191,-1203,-1333,-1552,-1779,-1939,-2016,-2039,
+-2041,-2040,-2043,-2052,-2058,-2042,-1997,-1943,-1909,-1910,-1938,-1982,-2034,-2086,-2132,-2179,-2240,-2312,-2361,-2349,-2277,
+-2189,-2126,-2098,-2100,-2135,-2211,-2314,-2416,-2502,-2588,-2698,-2843,-3012,-3186,-3333,-3427,-3477,-3524,-3605,-3713,-3809,
+-3877,-3928,-3974,-4012,-4060,-4155,-4295,-4394,-4358,-4207,-4077,-4094,-4253,-4461,-4653,-4820,-4963,-5055,-5084,-5086,-5099,
+-5117,-5112,-5086,-5075,-5086,-5089,-5064,-5034,-5035,-5066,-5093,-5100,-5106,-5129,-5162,-5183,-5184,-5174,-5161,-5149,-5137,
+-5128,-5119,-5112,-5105,-5098,-5090,-5079,-5072,-5072,-5071,-5056,-5026,-4996,-4976,-4965,-4951,-4932,-4910,-4886,-4853,-4809,
+-4761,-4712,-4660,-4604,-4552,-4510,-4477,-4449,-4424,-4402,-4382,-4359,-4329,-4294,-4257,-4221,-4182,-4137,-4086,-4032,-3983,
+-3939,-3891,-3834,-3769,-3705,-3642,-3576,-3504,-3437,-3382,-3335,-3285,-3228,-3166,-3107,-3047,-2978,-2899,-2816,-2733,-2652,
+-2573,-2495,-2415,-2331,-2245,-2158,-2071,-1981,-1895,-1815,-1742,-1673,-1609,-1555,-1515,-1483,-1449,-1408,-1366,-1327,-1292,
+-1255,-1214,-1169,-1122,-1077,-1036,-997,-957,-912,-865,-818,-773,-728,-682,-636,-589,-540,-487,-432,-379,-327,
+-272,-214,-153,-90,-25,41,109,179,251,326,401,475,551,631,714,798,879,957,1031,1103,1172,
+1240,1307,1371,1431,1485,1535,1580,1622,1660,1692,1716,1730,1736,1737,1735,1734,1735,1740,1754,1776,1800,
+1822,1843,1868,1899,1932,1964,1993,2021,2049,2076,2102,2130,2163,2194,2221,2246,2272,2301,2327,2347,2362,
+2374,2382,2381,2375,2368,2365,2365,2367,2374,2384,2400,2420,2443,2471,2513,2592,2728,2905,3068,3169,3217,
+3270,3367,3488,3576,3603,3590,3578,3583,3600,3615,3616,3604,3592,3596,3616,3630,3621,3602,3602,3622,3628,
+3590,3516,3435,3365,3304,3250,3212,3191,3173,3144,3110,3080,3056,3026,2988,2951,2920,2894,2869,2841,2809,
+2770,2734,2710,2701,2695,2685,2678,2680,2683,2669,2640,2613,2606,2617,2641,2682,2743,2809,2856,2875,2882,
+2895,2924,2963,3005,3048,3037,3071,3099,3113,3116,3117,3125,3141,3165,3191,3208,3204,3176,3133,3091,3060,
+3035,3012,2994,2991,2998,2994,2962,2911,2864,2832,2800,2755,2703,2665,2652,2662,2687,2727,2776,2818,2842,
+2840,2816,2774,2724,2678,2636,2590,2537,2494,2470,2453,2414,2354,2300,2274,2263,2238,2197,2161,2149,2162,
+2191,2227,2256,2277,2314,2403,2544,2691,2796,2856,2894,2921,2935,2949,2990,3037,3006,2829,2533,2226,1994,
+1842,1728,1632,1559,1515,1491,1476,1459,1426,1373,1316,1281,1275,1275,1269,1267,1284,1312,1332,1355,1405,
+1487,1568,1604,1592,1559,1526,1489,1439,1380,1330,1299,1282,1264,1238,1206,1174,1144,1115,1089,1067,1046,
+1021,991,968,960,961,961,954,944,937,930,919,908,902,901,895,882,875,884,902,906,878,
+830,793,789,807,806,752,653,552,489,456,424,380,345,346,379,415,439,466,518,586,633,
+634,601,565,535,486,393,266,143,49,-21,-91,-171,-259,-352,-453,-561,-671,-776,-881,-994,-1111,
+-1230,-1355,-1498,-1663,-1840,-2012,-2165,-2294,-2402,-2499,-2600,-2704,-2801,-2886,-2968,-3056,-3137,-3192,-3225,-3262,-3317,
+-3372,-3407,-3425,-3445,-3473,-3494,-3501,-3502,-3511,-3528,-3543,-3558,-3576,-3593,-3599,-3594,-3590,-3585,-3567,-3532,-3493,
+-3465,-3441,-3399,-3334,-3269,-3242,-3275,-3352,-3426,-3461,-3466,-3497,-3602,-3767,-3934,-4063,-4157,-4220,-4234,-4196,-4163,
+-4225,-4406,-4618,-4746,-4754,-4707,-4685,-4715,-4780,-4869,-4989,-5141,-5294,-5410,-5476,-5503,-5509,-5507,-5501,-5506,-5540,
+-5606,-5681,-5730,-5731,-5700,-5665,-5640,-5616,-5580,-5544,-5529,-5545,-5580,-5622,-5667,-5719,-5770,-5813,-5851,-5895,-5946,
+-5994,-6028,-6055,-6091,-6138,-6180,-6199,-6199,-6197,-6203,-6212,-6216,-6213,-6211,-6217,-6228,-6238,-6241,-6234,-6218,-6202,
+-6192,-6198,-6223,-6266,-6312,-6340,-6339,-6322,-6317,-6340,-6376,-6401,-6408,-6410,-6418,-6422,-6410,-6391,-6384,-6388,-6386,
+-6360,-6318,-6277,-6240,-6197,-6143,-6083,-6027,-5980,-5946,-5927,-5924,-5932,-5951,-5981,-6021,-6060,-6088,-6095,-6074,-6018,
+-5931,-5838,-5771,-5743,-5740,-5739,-5734,-5732,-5736,-5739,-5728,-5698,-5663,-5633,-5606,-5556,-5464,-5351,-5266,-5231,-5210,
+-5151,-5068,-5049,-5150,-5308,-5387,-5322,-5177,-5053,-4975,-4887,-4750,-4595,-4474,-4398,-4335,-4269,-4214,-4184,-4170,-4147,
+-4101,-4034,-3951,-3870,-3809,-3772,-3735,-3681,-3625,-3597,-3593,-3578,-3528,-3465,-3425,-3406,-3375,-3320,-3268,-3236,-3208,
+-3159,-3100,-3064,-3052,-3033,-2990,-2941,-2909,-2887,-2846,-2780,-2698,-2604,-2488,-2361,-2262,-2210,-2183,-2141,-2072,-1995,
+-1922,-1845,-1752,-1653,-1558,-1465,-1363,-1254,-1156,-1080,-1017,-947,-854,-738,-619,-522,-451,-385,-303,-214,-136,
+-66,25,148,281,399,506,625,756,879,984,1083,1184,1278,1353,1415,1473,1529,1589,1662,1739,1786,
+1786,1778,1820,1908,1983,2025,2101,2274,2492,2627,2623,2554,2518,2526,2541,2564,2636,2756,2861,2909,2930,
+2976,3045,3097,3123,3157,3212,3263,3289,3313,3363,3430,3478,3499,3516,3542,3562,3566,3565,3573,3586,3591,
+3593,3611,3645,3674,3690,3702,3725,3755,3778,3794,3815,3843,3871,3890,3909,3936,3969,3997,4016,4036,4060,
+4087,4110,4134,4173,4235,4309,4380,4437,4480,4514,4546,4580,4616,4655,4693,4729,4760,4785,4801,4810,4818,
+4828,4834,4826,4807,4795,4809,4847,4887,4905,4892,4857,4817,4781,4743,4689,4612,4510,4379,4204,3974,3703,
+3428,3190,3012,2907,2894,2987,3172,3392,3579,3693,3741,3749,3737,3709,3672,3637,3615,3595,3558,3495,3424,
+3375,3359,3355,3332,3278,3221,3198,3223,3259,3244,3138,2982,2881,2904,3006,3052,2949,2741,2555,2471,2461,
+2462,2457,2455,2443,2391,2317,2284,2311,2320,2227,2063,1952,1968,2043,2065,2006,1929,1876,1816,1722,1627,
+1587,1590,1578,1536,1522,1570,1630,1617,1518,1400,1325,1284,1239,1188,1150,1129,1108,1091,1099,1123,1119,
+1058,970,909,891,884,866,847,843,840,812,762,717,691,673,648,617,588,563,537,514,495,
+475,448,415,387,370,364,372,402,455,509,534,510,452,399,391,437,505,550,555,542,534,
+526,496,447,409,403,410,396,351,300,267,254,247,234,219,211,210,210,203,188,172,160,
+152,148,157,189,234,267,275,273,287,318,348,369,395,435,477,506,527,551,579,602,618,
+638,666,687,692,695,718,757,791,805,812,828,856,883,897,900,899,902,911,924,934,942,
+953,968,974,965,948,936,930,925,917,910,908,902,891,881,878,873,855,831,816,811,802,
+777,752,749,769,795,810,812,801,775,737,700,702,786,976,1231,1452,1543,1494,1379,1277,1186,
+1036,784,473,193,2,-101,-148,-164,-161,-153,-153,-166,-186,-212,-246,-291,-343,-397,-446,-491,-535,
+-583,-633,-681,-726,-769,-811,-847,-879,-909,-942,-977,-1012,-1046,-1086,-1135,-1186,-1230,-1266,-1299,-1335,-1374,
+-1415,-1458,-1501,-1544,-1588,-1632,-1674,-1716,-1755,-1794,-1830,-1864,-1897,-1930,-1965,-2000,-2038,-2080,-2126,-2170,-2210,
+-2248,-2283,-2313,-2336,-2361,-2396,-2441,-2492,-2540,-2586,-2633,-2683,-2731,-2777,-2818,-2857,-2899,-2948,-3002,-3053,-3097,
+-3135,-3173,-3211,-3248,-3282,-3317,-3357,-3399,-3438,-3474,-3510,-3547,-3583,-3616,-3649,-3681,-3711,-3738,-3769,-3809,-3858,
+-3909,-3957,-4000,-4039,-4075,-4109,-4141,-4171,-4199,-4227,-4255,-4284,-4313,-4341,-4370,-4399,-4427,-4455,-4484,-4513,-4537,
+-4554,-4568,-4584,-4603,-4624,-4647,-4672,-4696,-4715,-4728,-4735,-4742,-4750,-4759,-4767,-4771,-4771,-4767,-4759,-4751,-4747,
+-4747,-4746,-4741,-4730,-4713,-4693,-4674,-4659,-4646,-4632,-4613,-4584,-4549,-4514,-4484,-4457,-4427,-4391,-4353,-4319,-4289,
+-4258,-4221,-4181,-4142,-4101,-4053,-4000,-3949,-3905,-3863,-3815,-3763,-3712,-3663,-3614,-3564,-3516,-3471,-3425,-3376,-3326,
+-3281,-3238,-3194,-3150,-3108,-3065,-3020,-2985,-2982,-3006,-3011,-2944,-2807,-2659,-2551,-2470,-2364,-2220,-2083,-1994,-1939,
+-1867,-1761,-1653,-1574,-1516,-1456,-1388,-1328,-1282,-1239,-1194,-1155,-1132,-1120,-1115,-1119,-1128,-1129,-1117,-1117,-1159,
+-1239,-1311,-1345,-1365,-1417,-1507,-1599,-1662,-1712,-1787,-1898,-2025,-2141,-2229,-2279,-2288,-2272,-2255,-2246,-2234,-2213,
+-2200,-2197,-2162,-2036,-1816,-1583,-1433,-1389,-1397,-1399,-1387,-1385,-1400,-1417,-1419,-1408,-1390,-1359,-1308,-1250,-1208,
+-1199,-1217,-1233,-1219,-1177,-1150,-1198,-1351,-1572,-1780,-1912,-1968,-1986,-1999,-2011,-2018,-2026,-2038,-2045,-2036,-2018,
+-2008,-2020,-2053,-2100,-2154,-2206,-2246,-2277,-2316,-2366,-2400,-2386,-2321,-2242,-2173,-2114,-2065,-2057,-2124,-2254,-2391,
+-2486,-2541,-2597,-2689,-2824,-2982,-3132,-3243,-3312,-3376,-3481,-3633,-3804,-3954,-4058,-4099,-4082,-4066,-4139,-4316,-4494,
+-4537,-4427,-4281,-4223,-4267,-4363,-4488,-4651,-4826,-4943,-4976,-4980,-5022,-5092,-5130,-5117,-5094,-5096,-5107,-5096,-5073,
+-5067,-5085,-5103,-5112,-5124,-5149,-5173,-5180,-5172,-5162,-5155,-5149,-5139,-5127,-5113,-5097,-5085,-5078,-5074,-5067,-5059,
+-5055,-5051,-5037,-5012,-4986,-4967,-4953,-4935,-4911,-4881,-4847,-4806,-4759,-4712,-4663,-4609,-4551,-4500,-4465,-4446,-4435,
+-4423,-4406,-4387,-4365,-4341,-4311,-4276,-4236,-4195,-4152,-4105,-4054,-4003,-3955,-3907,-3850,-3785,-3721,-3661,-3601,-3533,
+-3464,-3405,-3355,-3303,-3241,-3174,-3110,-3051,-2990,-2919,-2841,-2760,-2680,-2603,-2527,-2449,-2367,-2285,-2202,-2114,-2021,
+-1931,-1853,-1784,-1719,-1655,-1600,-1559,-1527,-1492,-1451,-1410,-1374,-1339,-1302,-1263,-1223,-1181,-1139,-1097,-1056,-1012,
+-965,-916,-867,-819,-773,-727,-683,-640,-592,-540,-485,-431,-377,-319,-259,-199,-137,-72,-1,72,143,
+214,284,358,434,512,595,680,765,849,929,1006,1081,1157,1231,1303,1370,1432,1490,1544,1593,1636,
+1675,1707,1732,1747,1753,1754,1753,1751,1750,1753,1765,1784,1807,1830,1855,1885,1920,1955,1986,2013,2038,
+2062,2087,2115,2148,2183,2215,2241,2263,2286,2310,2333,2350,2364,2377,2387,2389,2384,2375,2368,2365,2366,
+2373,2386,2404,2426,2454,2489,2541,2626,2760,2925,3070,3152,3185,3227,3321,3443,3536,3573,3574,3575,3592,
+3614,3626,3618,3596,3576,3575,3589,3597,3582,3560,3556,3572,3570,3523,3442,3362,3301,3256,3217,3184,3156,
+3126,3091,3059,3035,3012,2978,2936,2900,2873,2853,2834,2814,2791,2762,2734,2717,2716,2720,2719,2719,2725,
+2729,2716,2687,2663,2656,2661,2675,2711,2777,2851,2900,2908,2898,2903,2930,2967,3002,3037,3026,3064,3101,
+3122,3128,3127,3133,3149,3171,3192,3201,3190,3160,3120,3080,3042,3001,2957,2922,2909,2915,2912,2881,2830,
+2785,2756,2727,2678,2617,2573,2559,2573,2604,2646,2695,2740,2771,2780,2770,2742,2705,2665,2621,2565,2501,
+2450,2426,2413,2377,2313,2255,2228,2222,2204,2166,2127,2110,2118,2144,2177,2206,2228,2264,2343,2467,2602,
+2713,2802,2883,2945,2966,2958,2959,2965,2910,2731,2449,2159,1933,1777,1660,1568,1503,1458,1424,1398,1381,
+1366,1339,1305,1282,1276,1273,1263,1261,1284,1321,1353,1380,1424,1491,1552,1573,1551,1514,1485,1462,1429,
+1379,1325,1285,1265,1252,1232,1199,1162,1132,1109,1084,1052,1015,980,954,941,939,938,935,936,950,
+968,971,951,918,891,875,863,850,847,856,868,865,840,806,784,783,795,788,736,643,543,
+473,438,408,366,326,314,338,374,400,419,449,494,541,570,579,572,545,485,388,269,152,
+50,-43,-134,-222,-302,-383,-478,-588,-703,-818,-938,-1068,-1202,-1329,-1454,-1591,-1746,-1907,-2059,-2194,-2313,
+-2419,-2517,-2614,-2710,-2801,-2884,-2966,-3054,-3134,-3190,-3223,-3259,-3314,-3375,-3420,-3445,-3465,-3487,-3505,-3515,-3522,
+-3536,-3552,-3570,-3591,-3615,-3629,-3623,-3604,-3586,-3575,-3557,-3526,-3495,-3477,-3459,-3414,-3338,-3265,-3244,-3294,-3386,
+-3465,-3495,-3505,-3557,-3690,-3872,-4036,-4145,-4213,-4266,-4301,-4321,-4362,-4474,-4644,-4793,-4843,-4806,-4757,-4756,-4806,
+-4883,-4983,-5116,-5268,-5405,-5494,-5535,-5548,-5549,-5546,-5543,-5555,-5595,-5663,-5739,-5795,-5819,-5823,-5820,-5806,-5766,
+-5701,-5637,-5609,-5628,-5681,-5746,-5809,-5864,-5908,-5946,-5986,-6033,-6078,-6103,-6111,-6124,-6164,-6224,-6274,-6291,-6287,
+-6287,-6306,-6333,-6349,-6347,-6336,-6329,-6331,-6340,-6345,-6342,-6331,-6319,-6318,-6335,-6365,-6402,-6433,-6448,-6444,-6431,
+-6428,-6445,-6471,-6486,-6482,-6472,-6469,-6467,-6454,-6434,-6422,-6418,-6411,-6387,-6350,-6313,-6278,-6237,-6186,-6130,-6078,
+-6032,-5993,-5968,-5965,-5983,-6019,-6064,-6108,-6141,-6155,-6148,-6112,-6037,-5932,-5828,-5762,-5746,-5756,-5759,-5743,-5724,
+-5717,-5717,-5706,-5675,-5632,-5594,-5566,-5526,-5449,-5345,-5263,-5235,-5227,-5177,-5090,-5049,-5130,-5285,-5380,-5329,-5180,
+-5039,-4952,-4876,-4765,-4632,-4514,-4420,-4332,-4248,-4192,-4176,-4174,-4154,-4103,-4029,-3944,-3861,-3798,-3759,-3726,-3679,
+-3623,-3588,-3577,-3560,-3512,-3450,-3409,-3387,-3356,-3300,-3245,-3213,-3193,-3159,-3110,-3068,-3036,-2993,-2937,-2888,-2856,
+-2817,-2747,-2659,-2580,-2507,-2418,-2313,-2231,-2196,-2179,-2136,-2058,-1970,-1884,-1788,-1673,-1561,-1468,-1383,-1283,-1170,
+-1071,-1000,-944,-881,-797,-696,-590,-497,-420,-348,-267,-176,-89,-7,89,211,344,466,578,691,810,
+924,1032,1139,1244,1331,1398,1462,1531,1595,1652,1716,1792,1846,1849,1831,1853,1920,1974,1999,2073,2274,
+2549,2737,2750,2654,2578,2568,2590,2620,2686,2795,2901,2962,2990,3026,3078,3124,3159,3201,3256,3301,3327,
+3356,3407,3465,3503,3519,3534,3557,3575,3583,3590,3603,3614,3614,3619,3645,3685,3713,3720,3724,3744,3773,
+3795,3809,3828,3857,3885,3905,3922,3944,3972,3998,4022,4046,4070,4093,4114,4146,4196,4264,4336,4400,4453,
+4497,4531,4559,4590,4629,4674,4715,4746,4775,4802,4824,4832,4830,4828,4831,4829,4815,4801,4807,4843,4890,
+4923,4925,4899,4862,4827,4795,4755,4698,4622,4520,4381,4195,3970,3725,3481,3252,3055,2935,2946,3104,3358,
+3606,3763,3805,3771,3712,3667,3647,3650,3661,3649,3590,3495,3410,3370,3368,3361,3327,3278,3246,3242,3254,
+3257,3218,3116,2977,2886,2913,3023,3078,2973,2758,2584,2538,2570,2584,2558,2534,2523,2484,2404,2338,2328,
+2322,2236,2074,1943,1923,1969,1979,1927,1875,1864,1856,1800,1713,1650,1626,1598,1554,1536,1579,1640,1640,
+1558,1453,1381,1337,1288,1234,1199,1188,1178,1161,1158,1176,1177,1127,1041,972,946,939,925,904,889,
+875,846,804,765,738,715,690,667,648,624,590,557,532,509,476,441,425,434,448,448,445,
+459,491,511,494,446,407,412,460,519,553,559,557,556,540,492,426,380,378,401,410,386,
+344,305,280,264,253,247,246,248,248,242,231,217,200,181,169,183,230,291,327,323,305,
+311,346,382,403,422,457,502,536,554,567,585,606,629,657,690,716,731,744,766,794,811,
+818,826,846,870,888,896,900,904,909,918,931,945,958,969,976,972,953,931,918,917,917,
+915,915,917,916,908,900,898,894,880,858,840,828,808,777,746,728,718,702,676,652,642,
+644,643,627,607,630,749,965,1205,1374,1445,1476,1527,1572,1519,1310,983,636,343,122,-36,-137,
+-184,-195,-194,-198,-211,-228,-252,-286,-332,-383,-431,-473,-514,-560,-608,-656,-700,-744,-788,-827,-860,
+-891,-926,-965,-1001,-1035,-1073,-1119,-1166,-1208,-1242,-1274,-1310,-1349,-1390,-1431,-1473,-1518,-1566,-1613,-1660,-1703,
+-1743,-1779,-1811,-1841,-1872,-1905,-1941,-1979,-2020,-2065,-2113,-2158,-2199,-2237,-2273,-2301,-2324,-2348,-2382,-2426,-2473,
+-2519,-2565,-2611,-2659,-2706,-2752,-2798,-2842,-2884,-2929,-2980,-3031,-3080,-3126,-3171,-3214,-3251,-3283,-3317,-3357,-3397,
+-3434,-3468,-3505,-3544,-3581,-3614,-3647,-3680,-3710,-3736,-3764,-3803,-3852,-3904,-3952,-3994,-4031,-4067,-4101,-4133,-4162,
+-4188,-4215,-4244,-4275,-4306,-4339,-4371,-4402,-4429,-4454,-4481,-4511,-4538,-4557,-4572,-4590,-4611,-4631,-4649,-4668,-4688,
+-4708,-4723,-4734,-4744,-4754,-4762,-4767,-4769,-4770,-4765,-4757,-4750,-4748,-4750,-4751,-4745,-4733,-4718,-4700,-4680,-4662,
+-4647,-4635,-4619,-4594,-4560,-4523,-4489,-4458,-4426,-4389,-4348,-4311,-4279,-4248,-4214,-4175,-4135,-4095,-4050,-3999,-3947,
+-3897,-3853,-3807,-3759,-3710,-3662,-3613,-3562,-3512,-3466,-3420,-3368,-3312,-3263,-3223,-3186,-3145,-3102,-3057,-3007,-2966,
+-2965,-3016,-3077,-3072,-2965,-2796,-2631,-2491,-2346,-2179,-2027,-1935,-1891,-1841,-1756,-1656,-1572,-1505,-1437,-1366,-1305,
+-1260,-1219,-1173,-1133,-1105,-1083,-1059,-1041,-1031,-1018,-993,-975,-1004,-1084,-1174,-1233,-1267,-1317,-1395,-1477,-1537,
+-1590,-1668,-1780,-1908,-2028,-2126,-2190,-2210,-2195,-2170,-2155,-2141,-2122,-2106,-2105,-2084,-1986,-1795,-1578,-1423,-1364,
+-1357,-1348,-1327,-1319,-1332,-1353,-1362,-1355,-1333,-1293,-1240,-1191,-1165,-1165,-1171,-1163,-1136,-1112,-1130,-1226,-1401,
+-1609,-1780,-1873,-1899,-1900,-1904,-1912,-1923,-1941,-1971,-2002,-2019,-2023,-2027,-2045,-2076,-2118,-2169,-2219,-2252,-2268,
+-2284,-2316,-2353,-2366,-2350,-2323,-2289,-2227,-2138,-2069,-2085,-2191,-2324,-2417,-2458,-2484,-2527,-2595,-2681,-2771,-2853,
+-2928,-3029,-3191,-3421,-3683,-3924,-4095,-4162,-4133,-4090,-4151,-4358,-4606,-4737,-4692,-4552,-4427,-4358,-4343,-4401,-4546,
+-4717,-4811,-4802,-4784,-4855,-5000,-5117,-5149,-5131,-5119,-5124,-5123,-5112,-5111,-5125,-5142,-5160,-5184,-5211,-5224,-5215,
+-5196,-5184,-5176,-5166,-5152,-5137,-5121,-5101,-5084,-5077,-5078,-5076,-5065,-5051,-5038,-5021,-4998,-4974,-4955,-4939,-4917,
+-4888,-4852,-4811,-4765,-4717,-4670,-4621,-4566,-4509,-4462,-4436,-4431,-4436,-4439,-4430,-4407,-4377,-4347,-4319,-4288,-4249,
+-4208,-4167,-4125,-4077,-4024,-3974,-3925,-3872,-3811,-3747,-3689,-3633,-3573,-3511,-3454,-3401,-3343,-3273,-3198,-3126,-3063,
+-3002,-2935,-2859,-2779,-2703,-2631,-2558,-2480,-2399,-2320,-2241,-2155,-2060,-1966,-1886,-1820,-1758,-1698,-1645,-1603,-1569,
+-1532,-1492,-1453,-1417,-1381,-1342,-1303,-1266,-1231,-1195,-1156,-1116,-1073,-1024,-972,-920,-872,-824,-777,-732,-687,
+-640,-589,-536,-481,-423,-362,-300,-241,-182,-115,-41,35,107,174,241,312,388,470,555,644,733,
+820,902,980,1059,1139,1220,1296,1365,1427,1488,1546,1599,1645,1685,1718,1744,1760,1768,1771,1773,1772,
+1770,1772,1782,1798,1820,1845,1874,1906,1941,1975,2005,2030,2054,2079,2107,2139,2173,2207,2237,2262,2285,
+2308,2332,2353,2369,2380,2390,2399,2405,2404,2398,2388,2381,2380,2387,2399,2415,2438,2473,2523,2591,2686,
+2814,2958,3078,3140,3161,3194,3275,3384,3473,3517,3535,3554,3580,3595,3589,3562,3529,3507,3510,3531,3545,
+3536,3517,3510,3515,3504,3451,3371,3298,3249,3218,3189,3154,3114,3070,3029,3001,2979,2952,2910,2866,2833,
+2812,2795,2780,2770,2762,2748,2728,2716,2719,2730,2738,2743,2749,2750,2739,2717,2701,2697,2698,2707,2742,
+2812,2890,2937,2939,2923,2921,2941,2968,2995,3026,3026,3069,3109,3133,3141,3144,3150,3165,3186,3203,3206,
+3190,3158,3118,3075,3026,2967,2905,2855,2832,2832,2830,2805,2758,2711,2678,2644,2593,2532,2488,2477,2498,
+2538,2586,2634,2675,2705,2722,2725,2712,2686,2654,2616,2562,2494,2433,2397,2377,2339,2277,2216,2184,2173,
+2156,2122,2088,2072,2078,2099,2128,2158,2185,2223,2291,2388,2494,2595,2702,2819,2912,2942,2919,2891,2871,
+2804,2630,2366,2093,1875,1719,1602,1511,1447,1399,1357,1322,1306,1302,1297,1287,1280,1278,1271,1257,1256,
+1284,1330,1370,1402,1439,1487,1527,1534,1507,1471,1447,1437,1420,1381,1327,1278,1250,1238,1221,1189,1151,
+1120,1099,1073,1035,991,955,934,927,923,913,906,919,959,1004,1020,990,934,883,850,829,816,
+815,823,826,814,790,769,762,768,777,769,719,627,520,440,400,377,345,305,283,293,323,
+351,365,373,387,419,470,530,572,566,500,389,265,152,49,-56,-165,-262,-340,-411,-497,-607,
+-730,-858,-990,-1133,-1277,-1412,-1539,-1671,-1814,-1957,-2088,-2206,-2318,-2426,-2528,-2624,-2718,-2808,-2891,-2970,-3049,
+-3124,-3181,-3220,-3257,-3308,-3367,-3419,-3454,-3481,-3502,-3517,-3526,-3534,-3547,-3563,-3582,-3609,-3638,-3653,-3640,-3611,
+-3586,-3571,-3553,-3527,-3502,-3487,-3466,-3415,-3338,-3274,-3269,-3332,-3429,-3506,-3541,-3566,-3639,-3788,-3973,-4127,-4220,
+-4279,-4342,-4416,-4493,-4584,-4704,-4830,-4905,-4900,-4848,-4816,-4837,-4897,-4975,-5074,-5198,-5329,-5434,-5500,-5540,-5566,
+-5581,-5582,-5580,-5594,-5638,-5709,-5785,-5849,-5898,-5942,-5980,-5990,-5948,-5858,-5763,-5714,-5731,-5798,-5883,-5962,-6027,
+-6076,-6115,-6153,-6191,-6214,-6213,-6202,-6213,-6260,-6325,-6369,-6376,-6368,-6373,-6401,-6434,-6452,-6449,-6435,-6423,-6420,
+-6427,-6438,-6443,-6439,-6432,-6437,-6456,-6483,-6507,-6526,-6536,-6538,-6533,-6531,-6542,-6558,-6563,-6551,-6535,-6527,-6524,
+-6512,-6487,-6462,-6448,-6440,-6426,-6401,-6365,-6320,-6268,-6213,-6164,-6125,-6091,-6056,-6030,-6026,-6053,-6106,-6165,-6209,
+-6225,-6216,-6186,-6132,-6045,-5934,-5832,-5776,-5771,-5786,-5785,-5757,-5722,-5699,-5687,-5671,-5635,-5587,-5546,-5522,-5495,
+-5436,-5346,-5269,-5243,-5244,-5206,-5118,-5057,-5110,-5257,-5370,-5346,-5203,-5043,-4932,-4855,-4769,-4665,-4559,-4454,-4343,
+-4240,-4181,-4173,-4183,-4165,-4107,-4024,-3936,-3854,-3790,-3753,-3729,-3696,-3647,-3600,-3568,-3535,-3485,-3428,-3391,-3372,
+-3343,-3286,-3223,-3179,-3154,-3127,-3091,-3053,-3011,-2957,-2899,-2854,-2817,-2754,-2652,-2544,-2469,-2421,-2360,-2276,-2205,
+-2175,-2158,-2110,-2028,-1937,-1845,-1734,-1602,-1480,-1389,-1311,-1216,-1106,-1008,-937,-879,-813,-736,-650,-558,-466,
+-383,-307,-223,-126,-24,74,177,293,419,538,645,747,849,956,1069,1187,1296,1377,1437,1504,1584,
+1659,1718,1783,1866,1934,1943,1913,1907,1944,1979,1995,2075,2301,2618,2847,2869,2745,2628,2598,2627,2675,
+2745,2846,2948,3012,3041,3069,3114,3165,3210,3255,3301,3339,3366,3397,3440,3484,3511,3527,3546,3571,3589,
+3599,3611,3628,3639,3643,3656,3687,3722,3740,3741,3746,3769,3798,3817,3830,3848,3875,3903,3925,3945,3966,
+3988,4010,4034,4063,4090,4110,4130,4167,4228,4302,4371,4427,4475,4518,4552,4576,4604,4646,4697,4741,4767,
+4787,4812,4838,4850,4843,4831,4828,4830,4826,4817,4817,4843,4888,4932,4951,4939,4908,4873,4840,4800,4747,
+4678,4594,4486,4346,4170,3968,3747,3505,3256,3055,2986,3102,3363,3644,3821,3850,3782,3700,3664,3683,3740,
+3795,3796,3711,3565,3434,3375,3373,3369,3329,3282,3261,3259,3245,3203,3136,3044,2935,2854,2859,2938,2982,
+2896,2719,2597,2614,2707,2753,2713,2641,2578,2503,2396,2298,2252,2236,2179,2066,1957,1906,1889,1857,1816,
+1824,1896,1961,1944,1848,1741,1664,1608,1558,1543,1590,1663,1687,1628,1531,1450,1396,1346,1300,1278,1279,
+1273,1241,1205,1193,1191,1162,1100,1038,1007,1000,987,960,928,900,873,846,817,788,758,735,725,
+716,693,654,621,601,574,524,470,454,485,519,512,474,449,461,485,486,461,441,454,495,
+536,556,561,565,568,548,493,422,371,362,381,400,398,375,342,308,283,275,280,290,294,
+292,284,275,264,249,229,213,223,271,335,372,362,335,334,371,416,444,462,490,530,563,
+581,595,614,639,668,698,726,749,768,791,817,836,840,844,862,891,911,912,904,900,902,
+906,912,925,943,958,967,967,957,937,918,911,915,920,918,914,912,910,904,897,893,889,
+877,857,839,823,803,777,753,736,719,696,668,646,635,637,640,628,595,569,601,715,878,
+1029,1149,1280,1454,1628,1706,1624,1399,1090,753,419,126,-87,-200,-234,-233,-230,-236,-248,-263,-287,
+-323,-370,-417,-459,-498,-542,-589,-634,-676,-719,-765,-807,-841,-873,-907,-946,-982,-1016,-1054,-1097,-1141,
+-1179,-1211,-1244,-1280,-1320,-1362,-1405,-1450,-1497,-1545,-1593,-1640,-1684,-1726,-1763,-1796,-1825,-1855,-1889,-1926,-1964,
+-2005,-2051,-2100,-2147,-2188,-2225,-2259,-2287,-2311,-2336,-2372,-2414,-2458,-2500,-2544,-2590,-2636,-2681,-2729,-2779,-2828,
+-2871,-2913,-2958,-3006,-3056,-3108,-3160,-3207,-3246,-3278,-3314,-3355,-3397,-3433,-3468,-3505,-3545,-3579,-3610,-3643,-3678,
+-3709,-3735,-3761,-3797,-3845,-3896,-3944,-3986,-4024,-4060,-4094,-4124,-4150,-4174,-4200,-4232,-4267,-4303,-4339,-4375,-4409,
+-4437,-4459,-4483,-4512,-4539,-4560,-4575,-4594,-4616,-4636,-4652,-4669,-4688,-4706,-4719,-4730,-4742,-4753,-4759,-4759,-4759,
+-4762,-4762,-4758,-4754,-4754,-4757,-4756,-4745,-4730,-4715,-4700,-4682,-4664,-4648,-4634,-4618,-4595,-4565,-4530,-4494,-4460,
+-4425,-4387,-4346,-4305,-4269,-4237,-4205,-4168,-4127,-4085,-4040,-3989,-3934,-3882,-3835,-3789,-3742,-3694,-3648,-3602,-3552,
+-3501,-3454,-3408,-3355,-3297,-3248,-3211,-3180,-3144,-3103,-3058,-3008,-2959,-2943,-2993,-3086,-3140,-3081,-2911,-2701,-2503,
+-2316,-2128,-1962,-1858,-1814,-1784,-1728,-1650,-1573,-1504,-1432,-1361,-1305,-1263,-1222,-1175,-1130,-1094,-1059,-1017,-976,
+-946,-918,-881,-847,-851,-911,-999,-1078,-1145,-1221,-1313,-1394,-1447,-1493,-1567,-1680,-1811,-1936,-2041,-2113,-2138,
+-2121,-2088,-2062,-2041,-2017,-1998,-1995,-1984,-1911,-1754,-1559,-1406,-1336,-1320,-1312,-1294,-1277,-1273,-1278,-1282,-1280,
+-1264,-1228,-1180,-1142,-1128,-1128,-1119,-1092,-1065,-1071,-1139,-1274,-1455,-1634,-1762,-1817,-1818,-1800,-1788,-1788,-1805,
+-1844,-1898,-1944,-1966,-1968,-1971,-1986,-2008,-2035,-2072,-2114,-2145,-2157,-2168,-2201,-2256,-2310,-2352,-2387,-2405,-2373,
+-2280,-2177,-2137,-2183,-2266,-2326,-2349,-2359,-2370,-2377,-2380,-2388,-2412,-2466,-2578,-2775,-3054,-3374,-3683,-3934,-4088,
+-4139,-4148,-4225,-4430,-4690,-4864,-4875,-4768,-4635,-4528,-4475,-4509,-4628,-4750,-4767,-4680,-4618,-4698,-4892,-5069,-5148,
+-5153,-5149,-5155,-5159,-5159,-5169,-5194,-5224,-5259,-5301,-5341,-5359,-5347,-5320,-5289,-5253,-5211,-5177,-5162,-5158,-5147,
+-5129,-5116,-5111,-5102,-5085,-5065,-5047,-5028,-5003,-4974,-4948,-4922,-4892,-4854,-4814,-4773,-4731,-4687,-4641,-4590,-4534,
+-4480,-4442,-4426,-4432,-4448,-4462,-4459,-4433,-4392,-4351,-4319,-4291,-4256,-4214,-4173,-4132,-4088,-4039,-3990,-3946,-3898,
+-3840,-3777,-3715,-3659,-3606,-3553,-3502,-3449,-3387,-3315,-3237,-3163,-3094,-3028,-2957,-2880,-2800,-2726,-2657,-2588,-2512,
+-2433,-2357,-2280,-2196,-2100,-2005,-1926,-1862,-1804,-1747,-1698,-1658,-1622,-1582,-1539,-1499,-1463,-1424,-1382,-1341,-1305,
+-1272,-1238,-1202,-1165,-1124,-1076,-1023,-973,-927,-883,-836,-787,-737,-687,-636,-585,-530,-469,-406,-344,-286,
+-227,-160,-84,-7,62,128,194,264,341,423,511,603,697,787,872,953,1034,1117,1202,1281,1351,
+1415,1477,1538,1594,1643,1685,1720,1748,1766,1777,1785,1791,1793,1793,1796,1805,1822,1845,1873,1904,1938,
+1971,2002,2031,2057,2083,2111,2142,2175,2205,2232,2255,2277,2301,2327,2355,2382,2403,2415,2421,2425,2429,
+2431,2428,2420,2413,2411,2417,2425,2436,2456,2495,2556,2638,2738,2859,2986,3088,3139,3152,3172,3232,3317,
+3391,3435,3465,3497,3526,3534,3512,3472,3433,3416,3429,3461,3487,3490,3478,3470,3468,3450,3399,3326,3259,
+3216,3189,3161,3120,3069,3016,2974,2945,2921,2884,2837,2794,2768,2753,2737,2723,2722,2729,2728,2716,2707,
+2713,2728,2740,2747,2752,2752,2742,2727,2718,2718,2721,2732,2771,2843,2922,2969,2976,2964,2959,2965,2976,
+2994,3026,3050,3098,3131,3146,3151,3157,3164,3176,3193,3206,3203,3179,3140,3097,3051,2996,2930,2861,2805,
+2773,2764,2761,2740,2699,2651,2609,2570,2523,2469,2426,2416,2444,2498,2558,2608,2642,2666,2685,2697,2692,
+2669,2641,2610,2566,2501,2431,2380,2346,2308,2251,2193,2155,2135,2113,2083,2056,2043,2044,2056,2079,2109,
+2144,2188,2246,2314,2382,2456,2555,2680,2786,2825,2806,2779,2761,2698,2531,2277,2014,1807,1661,1550,1461,
+1393,1342,1298,1263,1247,1247,1252,1257,1264,1270,1262,1247,1248,1280,1330,1373,1402,1428,1457,1480,1481,
+1460,1433,1416,1412,1405,1379,1330,1278,1242,1224,1206,1176,1139,1106,1080,1052,1016,978,948,930,919,
+906,889,879,899,951,1009,1027,990,922,861,822,797,781,775,775,768,749,727,719,725,741,
+755,749,703,608,491,397,352,338,322,291,261,251,264,288,305,306,297,304,352,441,528,
+558,504,385,249,129,26,-76,-183,-283,-363,-433,-516,-628,-762,-902,-1043,-1188,-1334,-1471,-1599,-1725,
+-1855,-1984,-2101,-2209,-2316,-2425,-2530,-2629,-2725,-2817,-2902,-2978,-3047,-3113,-3172,-3219,-3261,-3306,-3356,-3404,-3445,
+-3478,-3501,-3516,-3527,-3539,-3556,-3574,-3594,-3620,-3650,-3665,-3653,-3625,-3598,-3578,-3555,-3527,-3501,-3480,-3449,-3396,
+-3337,-3306,-3331,-3405,-3496,-3569,-3615,-3659,-3747,-3894,-4064,-4201,-4285,-4353,-4445,-4565,-4684,-4783,-4864,-4920,-4936,
+-4913,-4886,-4890,-4929,-4984,-5046,-5126,-5226,-5329,-5412,-5477,-5535,-5585,-5610,-5609,-5600,-5613,-5662,-5736,-5815,-5887,
+-5955,-6029,-6102,-6142,-6110,-6011,-5897,-5832,-5845,-5916,-6007,-6092,-6161,-6217,-6264,-6304,-6331,-6335,-6318,-6304,-6323,
+-6375,-6431,-6455,-6448,-6439,-6453,-6486,-6513,-6522,-6515,-6504,-6495,-6493,-6502,-6517,-6531,-6536,-6538,-6547,-6565,-6585,
+-6601,-6614,-6627,-6635,-6635,-6630,-6633,-6641,-6640,-6623,-6601,-6587,-6579,-6561,-6528,-6495,-6479,-6480,-6479,-6460,-6418,
+-6356,-6286,-6225,-6183,-6163,-6150,-6132,-6115,-6116,-6150,-6209,-6268,-6300,-6297,-6268,-6224,-6163,-6075,-5971,-5882,-5838,
+-5837,-5848,-5837,-5800,-5755,-5717,-5686,-5653,-5610,-5562,-5523,-5501,-5480,-5431,-5352,-5281,-5256,-5263,-5236,-5151,-5069,
+-5084,-5205,-5327,-5337,-5219,-5056,-4926,-4839,-4763,-4676,-4579,-4472,-4355,-4248,-4186,-4176,-4182,-4157,-4092,-4007,-3924,
+-3850,-3790,-3754,-3735,-3712,-3669,-3612,-3558,-3510,-3460,-3414,-3384,-3365,-3332,-3270,-3197,-3137,-3101,-3077,-3053,-3024,
+-2983,-2929,-2874,-2833,-2789,-2709,-2590,-2477,-2415,-2388,-2343,-2267,-2195,-2157,-2129,-2074,-1990,-1901,-1807,-1688,-1548,
+-1422,-1332,-1258,-1168,-1065,-976,-907,-842,-767,-686,-604,-516,-421,-331,-252,-169,-67,46,156,261,370,
+485,595,693,784,879,982,1097,1218,1326,1404,1463,1532,1619,1702,1769,1841,1933,2012,2030,1996,1972,
+1988,2011,2027,2112,2349,2683,2933,2964,2825,2677,2628,2663,2730,2811,2909,3002,3060,3086,3113,3161,3220,
+3271,3311,3342,3368,3394,3426,3463,3497,3522,3545,3571,3595,3611,3623,3638,3656,3668,3677,3696,3726,3752,
+3763,3766,3781,3809,3834,3849,3860,3879,3902,3924,3945,3969,3991,4009,4026,4051,4084,4113,4131,4152,4197,
+4270,4350,4415,4462,4505,4547,4580,4599,4620,4660,4715,4761,4783,4793,4812,4841,4861,4859,4846,4839,4843,
+4846,4840,4835,4853,4898,4951,4984,4979,4948,4912,4878,4838,4780,4708,4632,4549,4443,4303,4132,3935,3706,
+3445,3202,3072,3130,3353,3619,3796,3836,3794,3754,3759,3807,3884,3964,3993,3916,3739,3550,3443,3428,3431,
+3392,3327,3280,3255,3221,3165,3103,3038,2955,2868,2826,2848,2869,2811,2691,2620,2678,2809,2889,2855,2743,
+2612,2483,2354,2245,2183,2156,2126,2072,2006,1942,1877,1819,1812,1892,2028,2122,2097,1968,1818,1708,1639,
+1598,1596,1655,1746,1793,1748,1637,1524,1446,1395,1360,1349,1358,1356,1316,1254,1211,1197,1183,1143,1092,
+1061,1053,1044,1012,966,927,904,890,870,838,805,785,777,763,729,692,682,691,674,601,511,
+473,507,555,554,506,464,465,487,492,477,471,496,539,571,581,578,574,564,538,490,435,
+394,376,380,393,403,400,377,343,316,313,327,343,349,343,332,320,309,298,282,265,265,
+297,350,387,384,360,355,387,436,476,502,525,552,577,601,630,666,704,735,755,764,768,
+782,814,853,878,883,888,910,938,946,930,911,908,913,913,907,910,923,937,943,942,936,
+923,911,909,914,919,913,904,898,896,893,888,882,874,861,844,827,814,802,790,779,769,
+756,743,730,713,691,666,649,634,610,574,553,574,632,709,807,954,1162,1390,1569,1651,1618,
+1459,1166,771,360,32,-159,-235,-250,-251,-255,-263,-273,-289,-316,-357,-403,-445,-484,-526,-571,-614,
+-654,-696,-740,-783,-818,-850,-883,-921,-958,-994,-1034,-1078,-1119,-1153,-1183,-1215,-1252,-1291,-1334,-1381,-1430,
+-1478,-1525,-1572,-1617,-1661,-1703,-1743,-1778,-1811,-1844,-1880,-1917,-1954,-1994,-2039,-2089,-2137,-2178,-2214,-2247,-2275,
+-2298,-2325,-2361,-2403,-2444,-2483,-2524,-2570,-2617,-2663,-2713,-2766,-2816,-2859,-2898,-2938,-2982,-3030,-3082,-3136,-3186,
+-3229,-3265,-3306,-3352,-3396,-3433,-3468,-3507,-3546,-3579,-3607,-3640,-3677,-3712,-3738,-3763,-3798,-3843,-3892,-3939,-3981,
+-4020,-4056,-4090,-4120,-4145,-4168,-4195,-4230,-4268,-4305,-4340,-4376,-4411,-4439,-4460,-4482,-4509,-4534,-4554,-4571,-4590,
+-4612,-4632,-4649,-4667,-4688,-4707,-4718,-4727,-4738,-4750,-4754,-4751,-4751,-4756,-4762,-4763,-4762,-4764,-4765,-4760,-4744,
+-4725,-4709,-4694,-4678,-4662,-4647,-4631,-4611,-4586,-4558,-4527,-4494,-4457,-4421,-4385,-4346,-4304,-4264,-4230,-4199,-4163,
+-4121,-4075,-4027,-3975,-3921,-3869,-3822,-3774,-3722,-3670,-3624,-3582,-3536,-3487,-3440,-3396,-3347,-3293,-3245,-3210,-3179,
+-3141,-3100,-3062,-3020,-2967,-2928,-2953,-3046,-3135,-3119,-2964,-2730,-2492,-2277,-2080,-1907,-1789,-1731,-1703,-1666,-1613,
+-1555,-1495,-1430,-1363,-1308,-1268,-1227,-1178,-1125,-1075,-1022,-964,-907,-865,-833,-796,-755,-735,-754,-810,-886,
+-981,-1098,-1219,-1312,-1360,-1396,-1463,-1581,-1727,-1870,-1982,-2049,-2063,-2036,-1996,-1964,-1937,-1906,-1879,-1870,-1864,
+-1815,-1695,-1532,-1392,-1314,-1288,-1279,-1263,-1240,-1219,-1206,-1202,-1203,-1195,-1168,-1128,-1095,-1078,-1066,-1043,-1016,
+-1014,-1065,-1176,-1329,-1492,-1627,-1709,-1734,-1721,-1694,-1672,-1669,-1697,-1758,-1831,-1884,-1899,-1893,-1894,-1909,-1925,
+-1936,-1950,-1978,-2007,-2024,-2041,-2077,-2136,-2203,-2268,-2334,-2391,-2404,-2353,-2271,-2219,-2222,-2248,-2261,-2260,-2262,
+-2265,-2252,-2215,-2171,-2142,-2150,-2230,-2407,-2678,-3004,-3344,-3665,-3930,-4101,-4189,-4271,-4422,-4627,-4795,-4856,-4825,
+-4759,-4703,-4686,-4732,-4825,-4881,-4821,-4682,-4599,-4669,-4848,-5016,-5109,-5159,-5207,-5251,-5273,-5285,-5314,-5363,-5416,
+-5469,-5528,-5584,-5615,-5610,-5575,-5516,-5434,-5346,-5286,-5272,-5283,-5283,-5261,-5229,-5197,-5163,-5127,-5096,-5075,-5054,
+-5024,-4987,-4948,-4905,-4857,-4807,-4762,-4725,-4694,-4661,-4620,-4571,-4516,-4469,-4445,-4445,-4461,-4483,-4500,-4500,-4471,
+-4420,-4367,-4326,-4294,-4258,-4212,-4167,-4127,-4090,-4051,-4012,-3973,-3931,-3877,-3814,-3748,-3688,-3634,-3586,-3538,-3485,
+-3423,-3355,-3284,-3214,-3144,-3072,-2995,-2914,-2834,-2758,-2687,-2617,-2545,-2471,-2398,-2322,-2236,-2141,-2049,-1972,-1910,
+-1852,-1796,-1750,-1715,-1681,-1640,-1594,-1550,-1511,-1471,-1428,-1388,-1352,-1316,-1278,-1240,-1203,-1164,-1118,-1067,-1019,
+-978,-939,-894,-843,-789,-736,-684,-632,-577,-517,-455,-394,-336,-275,-206,-131,-59,8,74,142,214,
+292,375,465,561,656,749,837,921,1004,1089,1175,1256,1328,1395,1459,1521,1577,1626,1670,1709,1741,
+1764,1779,1791,1801,1809,1814,1821,1834,1852,1876,1906,1941,1975,2007,2037,2067,2096,2124,2153,2184,2215,
+2241,2260,2276,2295,2319,2347,2379,2413,2443,2460,2466,2465,2464,2464,2460,2454,2449,2450,2455,2460,2467,
+2484,2521,2582,2661,2757,2869,2987,3086,3140,3155,3165,3200,3259,3315,3355,3386,3418,3445,3451,3430,3394,
+3363,3355,3374,3410,3441,3451,3444,3434,3426,3406,3362,3300,3240,3196,3165,3132,3088,3034,2981,2940,2910,
+2878,2833,2782,2744,2726,2714,2699,2687,2690,2704,2711,2705,2699,2705,2720,2732,2740,2745,2744,2733,2719,
+2710,2710,2716,2736,2783,2855,2930,2981,3003,3007,3002,2992,2989,3008,3050,3097,3149,3166,3159,3154,3158,
+3164,3170,3181,3188,3175,3136,3083,3034,2987,2936,2876,2816,2766,2731,2712,2702,2684,2648,2600,2555,2519,
+2481,2435,2393,2379,2409,2476,2552,2609,2640,2657,2673,2686,2682,2658,2628,2600,2564,2505,2432,2369,2326,
+2288,2240,2188,2147,2119,2094,2066,2040,2022,2013,2014,2031,2061,2100,2145,2194,2239,2273,2312,2382,2485,
+2579,2620,2617,2614,2615,2565,2407,2162,1913,1724,1595,1496,1410,1339,1288,1250,1224,1211,1208,1213,1227,
+1246,1257,1250,1235,1239,1275,1327,1367,1388,1398,1408,1416,1417,1409,1397,1386,1382,1381,1368,1332,1282,
+1237,1207,1184,1158,1126,1093,1060,1028,997,969,945,924,904,885,867,859,875,916,960,969,930,
+870,821,790,767,743,725,714,702,684,672,676,695,718,736,733,687,589,464,361,310,301,
+300,282,249,218,204,216,239,249,236,220,242,319,418,481,464,370,236,105,-5,-102,-198,
+-295,-383,-462,-550,-664,-802,-950,-1094,-1234,-1373,-1506,-1630,-1748,-1868,-1988,-2101,-2207,-2313,-2420,-2525,-2626,
+-2723,-2817,-2904,-2978,-3041,-3101,-3160,-3214,-3261,-3304,-3345,-3385,-3422,-3454,-3479,-3497,-3515,-3539,-3566,-3589,-3610,
+-3632,-3656,-3668,-3661,-3641,-3618,-3593,-3563,-3528,-3494,-3460,-3414,-3362,-3330,-3344,-3406,-3491,-3575,-3646,-3704,-3768,
+-3861,-3992,-4135,-4250,-4330,-4413,-4540,-4702,-4845,-4927,-4950,-4939,-4918,-4905,-4916,-4953,-5001,-5045,-5090,-5152,-5233,
+-5317,-5394,-5468,-5542,-5598,-5616,-5603,-5590,-5608,-5664,-5744,-5829,-5908,-5988,-6080,-6178,-6244,-6234,-6143,-6023,-5948,
+-5951,-6016,-6102,-6182,-6251,-6312,-6367,-6415,-6442,-6442,-6422,-6414,-6444,-6501,-6544,-6546,-6522,-6511,-6533,-6567,-6588,
+-6587,-6580,-6576,-6577,-6580,-6589,-6605,-6622,-6634,-6643,-6657,-6674,-6689,-6699,-6711,-6727,-6738,-6736,-6726,-6719,-6718,
+-6709,-6686,-6658,-6636,-6615,-6583,-6541,-6509,-6503,-6516,-6522,-6502,-6451,-6380,-6305,-6246,-6215,-6213,-6221,-6222,-6218,
+-6224,-6255,-6305,-6349,-6366,-6355,-6328,-6293,-6242,-6165,-6072,-5995,-5957,-5952,-5952,-5935,-5898,-5852,-5802,-5750,-5695,
+-5643,-5597,-5559,-5529,-5495,-5440,-5363,-5294,-5267,-5272,-5254,-5175,-5076,-5046,-5118,-5224,-5262,-5192,-5064,-4945,-4856,
+-4773,-4677,-4571,-4464,-4360,-4269,-4210,-4185,-4168,-4126,-4057,-3981,-3917,-3861,-3809,-3767,-3739,-3714,-3671,-3610,-3545,
+-3493,-3451,-3415,-3384,-3353,-3308,-3243,-3168,-3103,-3058,-3030,-3010,-2986,-2948,-2896,-2843,-2800,-2750,-2665,-2550,-2452,
+-2407,-2391,-2351,-2275,-2197,-2145,-2101,-2033,-1941,-1846,-1750,-1633,-1499,-1382,-1297,-1222,-1134,-1038,-959,-893,-821,
+-733,-641,-552,-458,-356,-262,-181,-98,2,114,220,318,418,522,621,711,802,902,1009,1119,1229,
+1331,1414,1480,1552,1639,1727,1803,1882,1977,2059,2087,2066,2046,2055,2069,2083,2167,2397,2724,2979,3026,
+2897,2745,2684,2718,2795,2885,2979,3060,3108,3132,3160,3210,3272,3325,3361,3385,3406,3431,3461,3494,3525,
+3553,3581,3607,3627,3643,3661,3682,3699,3708,3717,3736,3762,3781,3790,3804,3828,3853,3869,3877,3891,3913,
+3933,3950,3969,3994,4018,4033,4048,4075,4109,4135,4150,4175,4231,4316,4398,4457,4495,4532,4573,4603,4619,
+4636,4672,4727,4774,4795,4801,4815,4844,4871,4877,4866,4859,4864,4870,4864,4856,4868,4915,4976,5015,5010,
+4974,4937,4912,4880,4823,4747,4674,4605,4516,4387,4218,4024,3801,3545,3289,3121,3122,3285,3510,3686,3779,
+3833,3891,3944,3972,3995,4053,4122,4111,3963,3746,3589,3552,3566,3532,3434,3328,3260,3223,3199,3180,3152,
+3086,2978,2877,2832,2825,2791,2716,2668,2714,2834,2928,2917,2804,2645,2494,2376,2288,2221,2166,2123,2091,
+2059,2009,1944,1910,1956,2078,2204,2241,2157,2003,1865,1787,1753,1730,1721,1757,1830,1873,1824,1691,1550,
+1460,1420,1399,1385,1385,1385,1357,1301,1248,1224,1214,1187,1142,1108,1097,1087,1053,1002,961,942,932,
+911,879,851,836,817,775,717,687,713,763,762,673,553,493,521,575,583,542,506,504,515,
+507,488,490,528,581,615,619,603,576,545,511,480,456,437,418,405,405,417,424,410,380,
+358,360,380,400,406,402,390,375,360,347,336,321,309,316,349,386,400,391,385,405,448,
+495,530,551,567,586,619,669,725,772,799,805,794,781,790,832,887,920,923,919,929,943,
+934,909,897,914,937,940,924,910,910,915,915,913,910,904,895,889,890,893,890,884,881,
+884,886,885,879,870,858,844,831,821,814,810,805,795,782,774,772,763,735,693,659,642,
+628,600,564,536,527,540,587,686,839,1031,1255,1499,1714,1791,1632,1240,743,298,-1,-160,-228,
+-252,-262,-270,-278,-291,-313,-348,-391,-433,-472,-512,-555,-597,-635,-673,-715,-757,-793,-825,-860,-898,
+-936,-975,-1016,-1059,-1097,-1129,-1158,-1191,-1227,-1265,-1308,-1356,-1407,-1457,-1504,-1551,-1595,-1638,-1678,-1718,-1756,
+-1792,-1828,-1867,-1906,-1944,-1983,-2028,-2078,-2127,-2167,-2204,-2238,-2266,-2289,-2314,-2348,-2390,-2431,-2468,-2507,-2552,
+-2601,-2651,-2703,-2756,-2806,-2847,-2884,-2922,-2964,-3008,-3056,-3108,-3160,-3206,-3250,-3297,-3347,-3393,-3430,-3465,-3504,
+-3544,-3577,-3605,-3639,-3680,-3717,-3746,-3772,-3806,-3850,-3896,-3940,-3980,-4019,-4056,-4090,-4122,-4148,-4172,-4200,-4235,
+-4272,-4306,-4337,-4368,-4401,-4430,-4453,-4475,-4499,-4522,-4542,-4561,-4583,-4605,-4623,-4639,-4659,-4683,-4704,-4716,-4724,
+-4735,-4746,-4750,-4748,-4748,-4755,-4764,-4767,-4766,-4766,-4766,-4757,-4740,-4720,-4703,-4686,-4669,-4652,-4638,-4623,-4600,
+-4572,-4544,-4517,-4487,-4451,-4414,-4379,-4344,-4305,-4264,-4228,-4195,-4158,-4113,-4065,-4017,-3966,-3915,-3865,-3817,-3768,
+-3711,-3656,-3610,-3571,-3528,-3480,-3434,-3392,-3348,-3298,-3251,-3213,-3175,-3129,-3084,-3054,-3027,-2982,-2928,-2919,-2987,
+-3079,-3089,-2960,-2729,-2479,-2256,-2060,-1888,-1756,-1674,-1625,-1583,-1540,-1501,-1462,-1411,-1347,-1286,-1238,-1197,-1148,
+-1087,-1018,-948,-879,-820,-779,-754,-731,-699,-661,-635,-637,-681,-773,-904,-1041,-1146,-1205,-1248,-1323,-1455,
+-1630,-1803,-1931,-1992,-1987,-1944,-1897,-1862,-1832,-1796,-1761,-1743,-1734,-1701,-1618,-1497,-1380,-1301,-1260,-1238,-1217,
+-1191,-1164,-1143,-1133,-1131,-1124,-1105,-1075,-1045,-1017,-985,-953,-943,-983,-1083,-1225,-1377,-1507,-1595,-1635,-1637,
+-1615,-1586,-1565,-1568,-1610,-1686,-1767,-1818,-1828,-1820,-1826,-1848,-1866,-1869,-1870,-1886,-1913,-1938,-1956,-1979,-2011,
+-2048,-2088,-2142,-2205,-2252,-2261,-2244,-2234,-2244,-2253,-2246,-2240,-2259,-2297,-2322,-2315,-2276,-2222,-2183,-2203,-2323,
+-2546,-2834,-3150,-3475,-3774,-3989,-4088,-4119,-4171,-4287,-4431,-4546,-4613,-4650,-4678,-4721,-4793,-4872,-4900,-4838,-4739,
+-4706,-4782,-4908,-5015,-5105,-5224,-5371,-5489,-5547,-5578,-5632,-5713,-5792,-5857,-5917,-5972,-6003,-5997,-5952,-5872,-5761,
+-5645,-5566,-5541,-5544,-5535,-5496,-5439,-5372,-5299,-5225,-5164,-5120,-5082,-5039,-4991,-4939,-4882,-4818,-4755,-4705,-4673,
+-4653,-4633,-4605,-4566,-4522,-4488,-4480,-4496,-4523,-4544,-4555,-4549,-4519,-4464,-4400,-4345,-4301,-4258,-4208,-4159,-4120,
+-4092,-4066,-4039,-4007,-3969,-3921,-3862,-3797,-3733,-3675,-3624,-3573,-3516,-3452,-3386,-3324,-3263,-3197,-3123,-3045,-2964,
+-2883,-2802,-2724,-2650,-2579,-2510,-2439,-2362,-2274,-2179,-2091,-2019,-1957,-1896,-1839,-1794,-1763,-1734,-1696,-1650,-1604,
+-1561,-1518,-1477,-1439,-1405,-1368,-1325,-1281,-1242,-1203,-1158,-1109,-1063,-1023,-985,-941,-890,-837,-784,-732,-681,
+-627,-569,-509,-449,-388,-322,-251,-180,-113,-48,18,89,164,243,330,424,522,616,708,797,885,
+971,1056,1141,1223,1299,1369,1436,1499,1554,1602,1647,1688,1724,1751,1770,1787,1802,1814,1826,1839,1855,
+1875,1901,1933,1971,2007,2041,2073,2107,2140,2169,2197,2226,2254,2276,2292,2307,2325,2349,2377,2411,2449,
+2483,2505,2512,2511,2507,2502,2495,2487,2484,2487,2491,2495,2500,2515,2548,2597,2660,2737,2834,2946,3053,
+3124,3153,3161,3181,3223,3272,3312,3340,3363,3381,3389,3380,3361,3344,3342,3358,3385,3406,3411,3399,3384,
+3371,3352,3318,3269,3218,3176,3140,3104,3059,3008,2961,2924,2894,2858,2809,2759,2725,2709,2699,2686,2677,
+2681,2692,2696,2692,2691,2697,2707,2716,2725,2733,2733,2720,2698,2683,2678,2688,2716,2768,2837,2904,2957,
+2998,3021,3020,3001,2997,3032,3097,3144,3195,3189,3159,3143,3145,3148,3149,3154,3155,3129,3071,3000,2942,
+2898,2855,2810,2767,2728,2694,2666,2646,2625,2592,2548,2508,2481,2456,2417,2373,2354,2384,2460,2549,2615,
+2649,2664,2676,2684,2676,2650,2618,2591,2559,2505,2433,2366,2319,2283,2242,2196,2154,2122,2093,2062,2030,
+2001,1980,1973,1986,2014,2050,2088,2125,2154,2168,2181,2218,2284,2349,2382,2391,2408,2428,2391,2250,2029,
+1809,1644,1533,1443,1359,1289,1242,1213,1197,1187,1183,1189,1209,1236,1251,1243,1229,1237,1276,1328,1365,
+1378,1374,1365,1358,1356,1358,1357,1352,1348,1352,1351,1330,1284,1230,1187,1157,1134,1109,1078,1041,1005,
+975,954,932,906,880,862,851,846,849,864,879,873,840,800,772,754,729,695,664,647,637,
+632,635,654,681,707,723,715,665,566,441,335,277,264,269,264,238,196,159,151,171,192,
+188,164,154,188,258,333,372,346,253,121,-8,-115,-207,-304,-408,-508,-606,-716,-848,-990,-1129,
+-1261,-1391,-1518,-1636,-1747,-1859,-1977,-2093,-2202,-2306,-2411,-2516,-2616,-2711,-2802,-2887,-2963,-3028,-3088,-3146,-3202,
+-3251,-3293,-3329,-3364,-3396,-3425,-3449,-3472,-3500,-3534,-3567,-3595,-3617,-3637,-3654,-3663,-3660,-3650,-3636,-3614,-3581,
+-3542,-3500,-3449,-3386,-3330,-3318,-3366,-3454,-3548,-3631,-3708,-3785,-3865,-3957,-4066,-4179,-4272,-4344,-4439,-4593,-4784,
+-4939,-5002,-4982,-4932,-4900,-4906,-4943,-4992,-5037,-5077,-5123,-5184,-5257,-5329,-5399,-5473,-5541,-5583,-5586,-5569,-5568,
+-5602,-5667,-5749,-5836,-5923,-6014,-6119,-6234,-6325,-6341,-6267,-6147,-6057,-6041,-6090,-6169,-6251,-6324,-6390,-6451,-6504,
+-6537,-6537,-6516,-6511,-6552,-6621,-6667,-6659,-6618,-6597,-6615,-6650,-6670,-6672,-6672,-6679,-6690,-6698,-6708,-6721,-6734,
+-6745,-6756,-6772,-6786,-6793,-6797,-6807,-6825,-6839,-6838,-6825,-6810,-6792,-6768,-6739,-6713,-6690,-6656,-6603,-6547,-6516,
+-6521,-6540,-6542,-6512,-6460,-6400,-6344,-6304,-6288,-6297,-6314,-6324,-6324,-6330,-6354,-6390,-6418,-6426,-6422,-6417,-6408,
+-6376,-6309,-6224,-6152,-6113,-6099,-6089,-6071,-6044,-6006,-5952,-5881,-5808,-5748,-5703,-5664,-5619,-5563,-5492,-5409,-5334,
+-5293,-5281,-5257,-5185,-5081,-5009,-5018,-5082,-5130,-5118,-5057,-4984,-4909,-4813,-4687,-4554,-4443,-4362,-4302,-4253,-4207,
+-4157,-4094,-4024,-3966,-3925,-3888,-3843,-3790,-3744,-3705,-3658,-3595,-3530,-3481,-3447,-3414,-3371,-3318,-3259,-3198,-3136,
+-3079,-3030,-2994,-2968,-2943,-2909,-2859,-2805,-2755,-2697,-2613,-2512,-2430,-2394,-2380,-2340,-2266,-2186,-2125,-2063,-1975,
+-1867,-1761,-1662,-1556,-1445,-1346,-1267,-1189,-1097,-1005,-931,-865,-787,-690,-589,-491,-390,-285,-187,-102,-15,
+81,180,268,352,442,536,622,708,809,927,1040,1138,1229,1324,1417,1498,1575,1659,1750,1837,1921,
+2010,2087,2128,2131,2126,2131,2136,2152,2242,2464,2769,3012,3072,2971,2835,2771,2797,2871,2958,3042,3111,
+3157,3185,3214,3258,3314,3368,3412,3446,3472,3496,3520,3546,3574,3602,3627,3647,3662,3681,3710,3739,3755,
+3759,3764,3780,3800,3815,3827,3846,3871,3887,3893,3901,3921,3948,3967,3981,4000,4027,4051,4065,4083,4111,
+4141,4160,4171,4203,4271,4360,4437,4484,4514,4545,4583,4614,4633,4652,4689,4741,4786,4807,4814,4828,4858,
+4885,4893,4882,4874,4879,4887,4883,4870,4875,4918,4981,5024,5019,4983,4952,4940,4923,4875,4800,4726,4660,
+4576,4444,4263,4051,3817,3558,3301,3117,3080,3193,3382,3564,3722,3882,4034,4111,4074,3992,3987,4088,4176,
+4118,3925,3746,3692,3718,3694,3570,3410,3304,3278,3299,3327,3326,3264,3136,2991,2892,2854,2830,2782,2731,
+2730,2795,2872,2888,2811,2680,2562,2492,2449,2381,2277,2175,2116,2093,2070,2048,2071,2163,2275,2318,2244,
+2091,1951,1891,1909,1944,1934,1880,1837,1837,1842,1782,1648,1518,1460,1463,1464,1433,1398,1383,1373,1347,
+1314,1300,1298,1280,1237,1193,1163,1136,1093,1041,1005,988,971,942,912,898,888,850,774,696,676,
+728,795,793,701,587,538,570,617,619,582,554,555,559,540,516,521,563,616,650,652,628,
+586,539,502,487,488,486,468,446,436,445,453,442,416,400,406,426,444,454,459,457,443,
+422,406,398,386,365,352,366,401,434,444,440,445,471,512,549,573,587,609,653,717,778,
+818,834,832,819,809,823,872,927,950,931,903,896,901,894,878,885,923,962,969,947,924,
+913,907,897,888,884,880,869,857,852,856,861,863,866,871,875,876,872,866,859,850,840,
+831,825,821,815,802,786,775,774,771,754,724,696,678,659,630,595,562,536,521,525,555,
+613,724,955,1345,1814,2154,2164,1810,1243,674,237,-38,-183,-243,-260,-267,-278,-293,-313,-344,-384,
+-425,-463,-502,-544,-585,-621,-657,-696,-736,-772,-806,-844,-883,-920,-957,-996,-1036,-1072,-1102,-1132,-1167,
+-1205,-1243,-1284,-1332,-1382,-1432,-1481,-1529,-1574,-1615,-1654,-1693,-1731,-1767,-1804,-1845,-1888,-1929,-1969,-2015,-2065,
+-2112,-2153,-2191,-2228,-2259,-2282,-2304,-2336,-2378,-2420,-2456,-2494,-2539,-2589,-2640,-2693,-2747,-2794,-2834,-2870,-2908,
+-2949,-2991,-3036,-3086,-3137,-3186,-3234,-3286,-3342,-3390,-3427,-3461,-3499,-3538,-3572,-3603,-3639,-3681,-3719,-3750,-3780,
+-3817,-3858,-3899,-3938,-3977,-4015,-4052,-4088,-4121,-4149,-4175,-4204,-4237,-4272,-4302,-4328,-4355,-4385,-4415,-4440,-4464,
+-4487,-4509,-4529,-4552,-4577,-4600,-4616,-4629,-4647,-4672,-4695,-4710,-4721,-4733,-4743,-4746,-4746,-4748,-4756,-4763,-4762,
+-4759,-4757,-4755,-4746,-4730,-4713,-4697,-4678,-4655,-4635,-4621,-4607,-4585,-4556,-4528,-4504,-4477,-4443,-4405,-4371,-4337,
+-4301,-4261,-4223,-4187,-4147,-4102,-4055,-4010,-3965,-3915,-3864,-3814,-3764,-3710,-3657,-3611,-3572,-3530,-3482,-3435,-3393,
+-3351,-3302,-3255,-3214,-3170,-3115,-3062,-3032,-3018,-2987,-2935,-2904,-2939,-3012,-3034,-2937,-2737,-2502,-2282,-2085,-1912,
+-1771,-1667,-1590,-1526,-1476,-1449,-1431,-1393,-1326,-1247,-1183,-1137,-1091,-1028,-950,-872,-801,-743,-702,-678,-664,
+-641,-596,-539,-499,-502,-558,-653,-766,-874,-968,-1056,-1165,-1317,-1510,-1710,-1862,-1931,-1920,-1864,-1807,-1766,
+-1732,-1693,-1651,-1620,-1597,-1567,-1510,-1431,-1349,-1281,-1233,-1196,-1165,-1136,-1110,-1089,-1072,-1057,-1042,-1025,-1008,
+-987,-952,-906,-873,-889,-972,-1110,-1265,-1403,-1501,-1553,-1564,-1548,-1519,-1491,-1480,-1499,-1553,-1632,-1705,-1745,
+-1748,-1740,-1747,-1773,-1797,-1805,-1808,-1822,-1854,-1887,-1910,-1920,-1921,-1920,-1924,-1947,-1991,-2043,-2090,-2134,-2183,
+-2231,-2259,-2270,-2292,-2358,-2463,-2570,-2640,-2654,-2613,-2551,-2526,-2589,-2744,-2949,-3169,-3391,-3595,-3728,-3751,-3697,
+-3658,-3704,-3828,-3979,-4113,-4218,-4303,-4386,-4485,-4586,-4655,-4683,-4715,-4800,-4922,-5024,-5100,-5219,-5434,-5691,-5883,
+-5972,-6022,-6106,-6222,-6322,-6385,-6428,-6461,-6469,-6440,-6378,-6291,-6182,-6069,-5978,-5923,-5889,-5849,-5794,-5727,-5643,
+-5535,-5412,-5297,-5202,-5123,-5051,-4984,-4923,-4859,-4789,-4721,-4671,-4641,-4623,-4611,-4598,-4582,-4560,-4544,-4548,-4572,
+-4599,-4613,-4608,-4590,-4556,-4501,-4433,-4365,-4308,-4258,-4209,-4161,-4124,-4098,-4081,-4062,-4035,-4000,-3957,-3908,-3852,
+-3790,-3727,-3670,-3613,-3550,-3481,-3413,-3353,-3298,-3237,-3167,-3092,-3016,-2936,-2852,-2768,-2690,-2619,-2551,-2479,-2398,
+-2307,-2215,-2134,-2066,-2005,-1942,-1883,-1839,-1810,-1784,-1748,-1704,-1657,-1611,-1564,-1520,-1485,-1455,-1419,-1376,-1331,
+-1289,-1248,-1202,-1153,-1107,-1065,-1023,-977,-929,-880,-831,-782,-731,-678,-623,-565,-504,-438,-366,-294,-227,
+-164,-100,-31,42,119,201,293,392,489,580,667,756,846,934,1019,1102,1183,1263,1337,1408,1472,
+1529,1577,1621,1663,1699,1729,1752,1772,1792,1809,1826,1843,1863,1886,1914,1950,1991,2031,2068,2103,2141,
+2179,2211,2238,2263,2288,2310,2327,2343,2362,2387,2418,2455,2494,2528,2548,2555,2555,2552,2545,2535,2525,
+2521,2523,2526,2527,2531,2543,2567,2600,2640,2693,2767,2866,2975,3066,3120,3144,3164,3204,3259,3309,3339,
+3354,3363,3372,3377,3374,3364,3356,3355,3360,3361,3351,3331,3310,3295,3280,3257,3223,3186,3150,3117,3078,
+3031,2981,2938,2907,2881,2847,2802,2758,2727,2708,2695,2684,2679,2681,2681,2676,2671,2674,2681,2686,2690,
+2702,2716,2719,2703,2676,2655,2646,2655,2686,2738,2799,2854,2905,2957,2998,3006,2992,3000,3060,3144,3167,
+3200,3172,3130,3117,3125,3130,3126,3126,3120,3083,3008,2924,2860,2818,2783,2749,2718,2690,2657,2621,2590,
+2563,2531,2495,2466,2450,2432,2396,2351,2333,2368,2451,2546,2623,2668,2688,2694,2688,2669,2640,2611,2586,
+2555,2504,2437,2373,2326,2290,2250,2205,2162,2127,2094,2056,2013,1971,1941,1930,1942,1967,1993,2016,2038,
+2055,2063,2067,2084,2118,2151,2167,2175,2197,2219,2193,2081,1905,1727,1589,1487,1398,1317,1253,1212,1189,
+1175,1165,1162,1173,1200,1231,1245,1237,1226,1239,1280,1329,1362,1371,1361,1339,1316,1306,1309,1315,1317,
+1318,1327,1335,1321,1276,1217,1164,1130,1108,1086,1056,1015,974,943,924,904,878,853,841,838,834,
+823,813,805,789,764,743,730,716,683,637,598,579,577,585,604,632,664,689,700,685,630,
+534,417,315,251,226,226,230,219,183,138,111,112,126,130,115,92,77,90,149,239,307,
+293,184,34,-97,-199,-303,-425,-550,-662,-767,-885,-1016,-1145,-1266,-1387,-1509,-1626,-1734,-1842,-1959,-2078,
+-2190,-2294,-2397,-2502,-2603,-2694,-2777,-2857,-2934,-3007,-3073,-3134,-3187,-3231,-3268,-3303,-3337,-3369,-3397,-3423,-3453,
+-3487,-3523,-3555,-3582,-3607,-3630,-3648,-3656,-3656,-3654,-3652,-3640,-3613,-3573,-3525,-3462,-3386,-3324,-3316,-3373,-3468,
+-3565,-3655,-3750,-3851,-3946,-4032,-4117,-4201,-4272,-4337,-4438,-4608,-4813,-4969,-5019,-4982,-4928,-4909,-4933,-4977,-5022,
+-5064,-5111,-5170,-5238,-5305,-5362,-5417,-5476,-5528,-5554,-5553,-5551,-5575,-5627,-5696,-5772,-5856,-5949,-6049,-6164,-6293,
+-6406,-6452,-6400,-6284,-6174,-6125,-6149,-6223,-6319,-6411,-6485,-6544,-6596,-6629,-6627,-6594,-6578,-6622,-6713,-6786,-6789,
+-6740,-6699,-6701,-6731,-6757,-6770,-6782,-6800,-6818,-6832,-6845,-6857,-6864,-6868,-6874,-6884,-6889,-6887,-6884,-6892,-6912,
+-6932,-6942,-6937,-6917,-6880,-6835,-6801,-6786,-6770,-6726,-6651,-6579,-6546,-6552,-6561,-6544,-6504,-6460,-6428,-6405,-6390,
+-6388,-6399,-6414,-6420,-6419,-6428,-6455,-6490,-6514,-6522,-6526,-6536,-6543,-6522,-6463,-6382,-6311,-6266,-6242,-6225,-6211,
+-6196,-6168,-6112,-6030,-5945,-5881,-5839,-5801,-5752,-5687,-5610,-5525,-5440,-5369,-5318,-5269,-5196,-5094,-4996,-4946,-4957,
+-5000,-5036,-5043,-5022,-4966,-4859,-4705,-4544,-4426,-4365,-4336,-4299,-4239,-4162,-4083,-4015,-3967,-3939,-3913,-3870,-3810,
+-3750,-3697,-3644,-3578,-3511,-3459,-3426,-3390,-3333,-3261,-3193,-3139,-3094,-3048,-2999,-2955,-2923,-2899,-2872,-2830,-2778,
+-2719,-2652,-2565,-2469,-2393,-2354,-2333,-2294,-2226,-2150,-2080,-2003,-1898,-1775,-1660,-1564,-1477,-1390,-1308,-1229,-1142,
+-1045,-953,-878,-810,-730,-633,-531,-428,-324,-219,-121,-29,64,159,242,311,382,466,552,629,713,
+825,958,1075,1158,1230,1321,1426,1523,1606,1693,1790,1887,1974,2052,2123,2174,2198,2200,2195,2198,2240,
+2367,2597,2872,3075,3123,3039,2922,2862,2881,2946,3022,3093,3155,3206,3248,3282,3318,3360,3413,3469,3517,
+3551,3572,3590,3610,3635,3660,3679,3692,3705,3728,3763,3796,3812,3815,3820,3833,3847,3856,3866,3885,3904,
+3914,3918,3931,3958,3985,4001,4014,4036,4064,4085,4100,4122,4153,4178,4190,4202,4244,4319,4402,4464,4499,
+4523,4553,4589,4621,4646,4675,4715,4762,4799,4817,4826,4844,4875,4903,4909,4896,4884,4887,4898,4895,4880,
+4876,4909,4969,5016,5019,4989,4963,4959,4954,4918,4848,4770,4700,4616,4486,4302,4080,3834,3569,3313,3125,
+3067,3144,3301,3479,3666,3876,4068,4144,4051,3884,3817,3927,4093,4131,3998,3831,3772,3804,3796,3678,3509,
+3397,3381,3419,3453,3447,3381,3256,3104,2983,2920,2891,2853,2795,2747,2746,2782,2805,2771,2692,2631,2623,
+2628,2569,2425,2262,2157,2120,2117,2138,2206,2313,2379,2327,2163,1982,1888,1917,2025,2116,2109,2001,1867,
+1783,1744,1684,1579,1498,1508,1581,1614,1560,1469,1412,1400,1404,1408,1425,1447,1444,1400,1337,1275,1214,
+1149,1093,1061,1043,1015,975,950,950,941,883,787,712,712,770,811,778,688,617,620,671,701,
+675,625,600,607,614,597,575,576,606,642,665,668,651,614,568,532,522,527,527,508,484,
+474,482,487,474,452,441,447,460,469,479,494,507,503,484,466,458,450,430,411,415,449,
+492,516,518,511,516,540,572,601,626,661,714,775,821,841,844,843,844,852,878,926,965,
+958,906,855,848,874,899,909,925,955,979,973,946,923,914,904,886,869,862,858,848,836,
+831,836,844,850,851,851,851,851,850,847,841,833,825,819,816,814,812,803,787,773,766,
+764,761,754,743,726,697,663,634,615,597,575,555,533,513,554,780,1271,1927,2461,2594,2260,
+1632,960,413,45,-156,-236,-253,-259,-274,-293,-312,-338,-377,-419,-458,-497,-538,-580,-616,-652,-689,
+-727,-761,-795,-833,-872,-907,-939,-973,-1010,-1044,-1073,-1105,-1143,-1183,-1223,-1265,-1312,-1360,-1408,-1455,-1504,
+-1550,-1591,-1629,-1668,-1706,-1741,-1777,-1819,-1866,-1912,-1955,-2001,-2050,-2095,-2135,-2174,-2214,-2249,-2274,-2297,-2328,
+-2370,-2412,-2449,-2486,-2529,-2578,-2628,-2678,-2730,-2777,-2817,-2853,-2891,-2933,-2975,-3020,-3069,-3119,-3168,-3217,-3272,
+-3332,-3385,-3424,-3458,-3495,-3532,-3566,-3599,-3636,-3677,-3715,-3748,-3783,-3822,-3861,-3896,-3930,-3967,-4007,-4045,-4079,
+-4111,-4140,-4168,-4197,-4232,-4266,-4295,-4319,-4343,-4371,-4400,-4426,-4450,-4473,-4494,-4516,-4542,-4571,-4597,-4613,-4626,
+-4642,-4663,-4684,-4701,-4715,-4728,-4737,-4740,-4741,-4746,-4753,-4755,-4750,-4744,-4741,-4737,-4728,-4715,-4703,-4690,-4670,
+-4644,-4620,-4604,-4591,-4571,-4543,-4515,-4491,-4466,-4433,-4394,-4359,-4326,-4290,-4252,-4213,-4175,-4134,-4088,-4043,-4003,
+-3962,-3913,-3857,-3804,-3757,-3711,-3662,-3615,-3571,-3526,-3478,-3432,-3389,-3344,-3296,-3251,-3214,-3172,-3115,-3053,-3012,
+-2994,-2973,-2932,-2898,-2910,-2960,-2986,-2929,-2782,-2581,-2363,-2151,-1964,-1817,-1708,-1619,-1540,-1483,-1461,-1454,-1424,
+-1347,-1246,-1158,-1099,-1054,-1000,-932,-861,-791,-720,-654,-604,-574,-546,-499,-440,-396,-386,-401,-428,-481,
+-584,-736,-906,-1066,-1222,-1398,-1590,-1756,-1849,-1856,-1805,-1737,-1679,-1634,-1592,-1550,-1508,-1466,-1423,-1378,-1332,
+-1286,-1242,-1200,-1161,-1125,-1094,-1067,-1043,-1016,-985,-954,-935,-927,-914,-879,-832,-811,-857,-974,-1133,-1288,
+-1406,-1477,-1504,-1497,-1469,-1438,-1419,-1426,-1466,-1530,-1599,-1649,-1668,-1663,-1653,-1656,-1676,-1702,-1721,-1730,-1744,
+-1775,-1821,-1865,-1893,-1902,-1902,-1904,-1914,-1938,-1976,-2028,-2096,-2174,-2247,-2298,-2333,-2387,-2492,-2648,-2818,-2954,
+-3022,-3016,-2970,-2939,-2966,-3044,-3134,-3206,-3265,-3313,-3323,-3269,-3176,-3112,-3130,-3227,-3361,-3492,-3600,-3690,-3784,
+-3907,-4058,-4213,-4364,-4534,-4734,-4925,-5067,-5197,-5407,-5726,-6059,-6282,-6380,-6450,-6567,-6712,-6819,-6869,-6889,-6892,
+-6862,-6791,-6696,-6600,-6502,-6401,-6305,-6225,-6163,-6113,-6073,-6030,-5958,-5838,-5677,-5508,-5355,-5224,-5114,-5023,-4948,
+-4875,-4799,-4732,-4684,-4652,-4627,-4609,-4605,-4615,-4625,-4630,-4639,-4656,-4672,-4671,-4649,-4614,-4572,-4518,-4449,-4374,
+-4309,-4258,-4215,-4175,-4138,-4110,-4091,-4074,-4049,-4014,-3976,-3936,-3890,-3834,-3771,-3712,-3654,-3592,-3519,-3446,-3381,
+-3324,-3265,-3199,-3128,-3054,-2976,-2893,-2810,-2734,-2664,-2595,-2517,-2429,-2337,-2251,-2178,-2115,-2054,-1992,-1937,-1898,
+-1869,-1839,-1800,-1755,-1709,-1660,-1610,-1564,-1528,-1498,-1465,-1425,-1381,-1338,-1294,-1246,-1198,-1153,-1109,-1064,-1015,
+-967,-922,-877,-830,-780,-728,-675,-617,-554,-483,-409,-337,-272,-209,-144,-71,5,84,169,264,364,
+459,544,628,716,807,894,977,1059,1141,1222,1298,1370,1438,1498,1549,1595,1634,1669,1698,1725,1751,
+1774,1794,1813,1835,1860,1888,1920,1960,2004,2048,2088,2126,2166,2207,2243,2271,2295,2318,2339,2356,2373,
+2394,2421,2457,2501,2545,2577,2592,2595,2596,2595,2589,2577,2565,2560,2560,2560,2558,2559,2566,2579,2596,
+2619,2649,2694,2764,2860,2966,3051,3104,3142,3190,3256,3321,3361,3376,3383,3397,3413,3417,3402,3375,3347,
+3323,3300,3273,3247,3228,3217,3209,3195,3174,3151,3127,3098,3057,3005,2952,2909,2881,2858,2830,2795,2760,
+2732,2710,2691,2680,2676,2674,2664,2650,2644,2648,2652,2652,2655,2671,2692,2699,2684,2659,2641,2634,2641,
+2670,2718,2768,2810,2853,2909,2960,2982,2983,3008,3082,3167,3156,3158,3113,3078,3083,3106,3114,3105,3098,
+3085,3040,2957,2867,2802,2762,2730,2699,2673,2649,2618,2579,2542,2511,2480,2452,2434,2425,2407,2368,2326,
+2319,2366,2455,2555,2643,2707,2739,2737,2708,2666,2629,2602,2579,2548,2501,2442,2386,2340,2298,2251,2201,
+2156,2119,2083,2039,1986,1934,1897,1884,1894,1915,1932,1939,1944,1949,1955,1961,1973,1990,2002,1999,1995,
+2004,2018,1999,1922,1798,1667,1551,1452,1361,1285,1231,1198,1175,1157,1144,1142,1157,1184,1212,1225,1222,
+1221,1241,1279,1319,1345,1353,1342,1314,1282,1264,1266,1278,1288,1299,1313,1319,1299,1250,1188,1136,1101,
+1077,1053,1019,975,930,898,879,864,844,826,819,819,813,796,774,755,736,717,705,696,678,
+638,586,544,526,528,541,564,594,625,649,659,643,589,500,394,300,233,195,185,189,191,
+172,135,97,71,59,58,60,47,5,-39,-22,90,242,315,248,90,-65,-178,-283,-414,-559,
+-686,-793,-904,-1026,-1148,-1262,-1375,-1494,-1611,-1718,-1822,-1934,-2052,-2165,-2271,-2375,-2482,-2584,-2672,-2748,-2820,
+-2894,-2970,-3046,-3113,-3167,-3204,-3233,-3264,-3298,-3331,-3360,-3389,-3425,-3466,-3505,-3536,-3565,-3594,-3625,-3646,-3654,
+-3656,-3662,-3670,-3668,-3646,-3606,-3553,-3487,-3413,-3354,-3343,-3391,-3476,-3572,-3678,-3799,-3923,-4027,-4101,-4160,-4214,
+-4265,-4329,-4444,-4628,-4833,-4977,-5012,-4975,-4938,-4942,-4979,-5023,-5065,-5110,-5167,-5235,-5303,-5360,-5404,-5446,-5494,
+-5537,-5563,-5574,-5594,-5639,-5699,-5760,-5823,-5901,-5994,-6097,-6213,-6346,-6476,-6552,-6536,-6439,-6319,-6237,-6226,-6286,
+-6392,-6501,-6582,-6638,-6684,-6718,-6712,-6663,-6626,-6663,-6774,-6882,-6911,-6865,-6807,-6790,-6811,-6841,-6864,-6886,-6909,
+-6931,-6952,-6972,-6987,-6992,-6990,-6987,-6985,-6979,-6967,-6958,-6965,-6987,-7016,-7043,-7057,-7042,-6990,-6925,-6882,-6871,
+-6859,-6807,-6720,-6643,-6610,-6605,-6588,-6541,-6491,-6466,-6467,-6475,-6479,-6481,-6489,-6497,-6500,-6507,-6534,-6584,-6636,
+-6665,-6668,-6660,-6658,-6656,-6632,-6579,-6507,-6439,-6389,-6354,-6333,-6322,-6313,-6284,-6222,-6133,-6044,-5979,-5942,-5914,
+-5879,-5829,-5766,-5691,-5601,-5501,-5404,-5316,-5229,-5127,-5015,-4924,-4892,-4922,-4984,-5032,-5037,-4986,-4874,-4714,-4546,
+-4425,-4371,-4356,-4327,-4261,-4171,-4085,-4019,-3974,-3944,-3915,-3872,-3812,-3751,-3696,-3639,-3567,-3487,-3425,-3388,-3354,
+-3299,-3222,-3146,-3090,-3049,-3007,-2960,-2915,-2882,-2862,-2842,-2811,-2764,-2702,-2625,-2532,-2432,-2351,-2303,-2276,-2237,
+-2173,-2096,-2017,-1927,-1815,-1688,-1574,-1486,-1416,-1345,-1266,-1177,-1078,-977,-885,-810,-743,-668,-579,-477,-369,
+-260,-159,-65,29,129,222,295,353,420,503,586,659,741,857,993,1105,1179,1245,1337,1453,1562,
+1656,1750,1855,1958,2040,2106,2169,2224,2254,2252,2241,2265,2364,2552,2795,3023,3159,3170,3085,2982,2928,
+2946,3010,3082,3144,3200,3259,3316,3360,3389,3421,3469,3528,3579,3610,3629,3647,3671,3698,3722,3740,3751,
+3764,3786,3816,3844,3860,3868,3878,3890,3897,3899,3904,3919,3934,3944,3954,3974,4000,4020,4030,4044,4069,
+4095,4112,4127,4153,4186,4208,4217,4238,4292,4368,4438,4483,4512,4540,4573,4607,4637,4668,4704,4746,4785,
+4812,4824,4833,4853,4886,4916,4925,4914,4900,4899,4908,4909,4896,4888,4911,4966,5018,5034,5012,4983,4972,
+4970,4945,4884,4804,4723,4634,4513,4346,4136,3897,3642,3396,3205,3119,3151,3265,3417,3591,3787,3964,4033,
+3944,3773,3688,3780,3959,4045,3968,3833,3774,3799,3804,3722,3595,3512,3500,3514,3508,3469,3400,3300,3180,
+3070,2997,2957,2920,2860,2788,2737,2725,2728,2707,2660,2635,2662,2700,2664,2524,2346,2220,2168,2164,2193,
+2262,2343,2362,2265,2093,1945,1895,1954,2070,2166,2162,2042,1875,1756,1702,1655,1585,1552,1621,1751,1815,
+1743,1598,1485,1447,1459,1495,1547,1599,1612,1569,1489,1397,1303,1214,1150,1121,1102,1067,1023,1004,1008,
+989,915,821,778,811,863,854,771,681,662,720,787,792,734,667,641,653,665,657,641,636,
+643,652,660,666,665,646,610,577,560,556,548,529,511,508,516,517,503,486,480,484,487,
+482,482,499,522,531,522,508,500,493,480,469,478,511,554,583,590,580,571,577,602,640,
+685,734,788,834,855,852,841,842,856,880,918,964,987,958,887,833,844,907,972,1005,1010,
+1002,982,947,913,898,898,892,874,854,845,843,839,833,831,835,839,839,835,828,823,823,
+824,820,808,795,786,784,787,791,796,797,791,779,768,761,760,763,762,747,718,689,676,
+672,657,631,601,563,513,515,719,1227,1929,2508,2657,2311,1659,966,407,36,-160,-230,-241,-249,
+-269,-289,-305,-328,-365,-409,-451,-492,-536,-580,-618,-654,-691,-726,-756,-786,-821,-858,-890,-919,-950,
+-985,-1018,-1049,-1081,-1120,-1162,-1205,-1250,-1297,-1344,-1388,-1432,-1478,-1522,-1562,-1601,-1642,-1682,-1717,-1751,-1793,
+-1845,-1897,-1943,-1988,-2035,-2080,-2119,-2158,-2199,-2238,-2267,-2292,-2324,-2365,-2405,-2441,-2477,-2520,-2565,-2610,-2655,
+-2705,-2754,-2796,-2834,-2874,-2916,-2961,-3008,-3057,-3107,-3153,-3200,-3255,-3316,-3373,-3418,-3454,-3490,-3526,-3559,-3593,
+-3630,-3670,-3707,-3742,-3781,-3822,-3859,-3890,-3921,-3959,-4000,-4037,-4069,-4097,-4125,-4153,-4186,-4223,-4259,-4290,-4314,
+-4336,-4361,-4386,-4410,-4433,-4454,-4474,-4497,-4525,-4558,-4587,-4607,-4622,-4638,-4656,-4672,-4687,-4702,-4716,-4725,-4728,
+-4731,-4738,-4745,-4745,-4738,-4731,-4727,-4722,-4713,-4702,-4692,-4681,-4663,-4639,-4615,-4598,-4583,-4563,-4537,-4510,-4485,
+-4457,-4423,-4384,-4348,-4315,-4281,-4243,-4204,-4166,-4123,-4076,-4030,-3992,-3952,-3902,-3844,-3790,-3747,-3707,-3660,-3606,
+-3552,-3505,-3463,-3422,-3379,-3330,-3280,-3239,-3210,-3180,-3130,-3066,-3009,-2971,-2943,-2909,-2881,-2882,-2913,-2942,-2927,
+-2843,-2688,-2477,-2246,-2038,-1885,-1782,-1700,-1624,-1568,-1546,-1540,-1508,-1425,-1306,-1194,-1115,-1063,-1021,-977,-922,
+-847,-745,-633,-542,-487,-447,-400,-356,-341,-350,-345,-310,-300,-396,-609,-864,-1072,-1210,-1326,-1461,-1606,
+-1715,-1756,-1731,-1665,-1592,-1533,-1491,-1455,-1410,-1354,-1299,-1258,-1233,-1213,-1191,-1163,-1130,-1096,-1063,-1034,-1004,
+-967,-923,-881,-856,-845,-829,-792,-751,-751,-827,-972,-1144,-1294,-1394,-1438,-1439,-1415,-1387,-1369,-1371,-1399,
+-1454,-1517,-1564,-1583,-1581,-1574,-1574,-1583,-1604,-1635,-1660,-1666,-1660,-1673,-1722,-1798,-1873,-1930,-1972,-2003,-2029,
+-2052,-2083,-2131,-2198,-2274,-2344,-2398,-2443,-2503,-2604,-2747,-2905,-3036,-3112,-3132,-3122,-3118,-3133,-3148,-3133,-3086,
+-3032,-2987,-2947,-2895,-2841,-2812,-2824,-2871,-2938,-3011,-3080,-3143,-3224,-3354,-3541,-3760,-3986,-4221,-4466,-4700,-4913,
+-5148,-5470,-5861,-6209,-6421,-6524,-6628,-6785,-6945,-7039,-7065,-7063,-7044,-6979,-6859,-6717,-6590,-6485,-6391,-6307,-6248,
+-6223,-6226,-6246,-6255,-6220,-6118,-5957,-5772,-5591,-5429,-5289,-5173,-5075,-4981,-4890,-4814,-4760,-4718,-4675,-4641,-4634,
+-4660,-4695,-4719,-4727,-4731,-4731,-4717,-4684,-4636,-4583,-4524,-4454,-4378,-4310,-4260,-4226,-4195,-4160,-4127,-4102,-4082,
+-4057,-4021,-3982,-3946,-3906,-3855,-3797,-3742,-3692,-3637,-3568,-3491,-3419,-3355,-3295,-3230,-3159,-3084,-3005,-2924,-2847,
+-2778,-2711,-2637,-2551,-2456,-2366,-2288,-2223,-2163,-2101,-2042,-1995,-1963,-1935,-1899,-1853,-1805,-1760,-1714,-1666,-1619,
+-1580,-1545,-1509,-1469,-1427,-1383,-1337,-1288,-1241,-1199,-1156,-1109,-1059,-1010,-966,-921,-873,-823,-771,-717,-659,
+-594,-523,-449,-378,-312,-247,-178,-102,-23,56,144,239,336,425,507,590,679,770,857,937,1018,
+1100,1180,1255,1325,1393,1457,1513,1560,1599,1631,1661,1692,1723,1751,1774,1795,1820,1852,1887,1924,1966,
+2011,2058,2101,2142,2184,2226,2263,2293,2317,2339,2360,2379,2398,2419,2446,2485,2535,2584,2618,2631,2633,
+2632,2632,2626,2615,2603,2596,2592,2588,2586,2587,2589,2592,2599,2610,2624,2639,2673,2746,2855,2971,3061,
+3123,3184,3258,3331,3378,3398,3411,3436,3464,3472,3447,3398,3342,3290,3245,3206,3177,3163,3160,3158,3150,
+3136,3120,3104,3080,3041,2987,2931,2888,2860,2839,2815,2787,2760,2736,2711,2689,2674,2668,2663,2649,2632,
+2624,2623,2621,2615,2619,2641,2667,2676,2665,2650,2644,2644,2653,2678,2719,2761,2793,2828,2880,2937,2974,
+2994,3032,3099,3156,3124,3093,3043,3026,3055,3090,3097,3080,3063,3042,2991,2907,2819,2754,2713,2679,2647,
+2622,2600,2573,2540,2507,2477,2448,2424,2413,2406,2385,2343,2308,2316,2376,2469,2572,2673,2759,2807,2799,
+2746,2681,2629,2595,2566,2530,2487,2442,2397,2349,2295,2235,2176,2129,2094,2058,2012,1953,1895,1851,1833,
+1838,1855,1867,1868,1859,1851,1850,1858,1871,1883,1881,1865,1845,1837,1836,1821,1772,1693,1600,1504,1410,
+1325,1258,1214,1186,1162,1142,1129,1128,1138,1156,1174,1187,1195,1210,1237,1269,1296,1312,1317,1306,1280,
+1248,1230,1234,1251,1270,1288,1300,1294,1259,1201,1142,1098,1067,1040,1008,968,923,879,848,831,820,
+808,796,792,790,783,765,745,725,705,686,673,662,642,604,556,518,500,498,506,523,545,
+570,595,611,605,561,480,382,294,227,183,161,156,156,147,125,92,48,5,-14,-1,9,
+-30,-110,-138,-36,155,293,271,122,-40,-155,-250,-375,-524,-663,-781,-899,-1026,-1150,-1261,-1369,-1483,
+-1599,-1704,-1800,-1902,-2014,-2129,-2239,-2346,-2454,-2556,-2643,-2715,-2779,-2844,-2916,-2995,-3071,-3130,-3166,-3189,-3215,
+-3247,-3278,-3302,-3328,-3367,-3419,-3474,-3521,-3560,-3595,-3625,-3644,-3651,-3656,-3669,-3684,-3686,-3662,-3616,-3561,-3504,
+-3449,-3409,-3401,-3435,-3505,-3604,-3729,-3874,-4014,-4116,-4173,-4203,-4230,-4273,-4354,-4498,-4698,-4891,-5005,-5019,-4982,
+-4962,-4983,-5024,-5068,-5114,-5170,-5235,-5302,-5362,-5413,-5457,-5503,-5554,-5602,-5639,-5667,-5701,-5750,-5802,-5850,-5900,
+-5969,-6056,-6152,-6257,-6382,-6517,-6622,-6653,-6601,-6500,-6402,-6352,-6376,-6462,-6566,-6645,-6697,-6746,-6790,-6794,-6745,
+-6695,-6721,-6835,-6959,-7006,-6969,-6909,-6884,-6898,-6925,-6950,-6972,-6995,-7018,-7043,-7068,-7089,-7097,-7094,-7088,-7079,
+-7065,-7047,-7036,-7041,-7060,-7091,-7131,-7166,-7166,-7117,-7040,-6980,-6953,-6928,-6870,-6790,-6729,-6702,-6675,-6616,-6539,
+-6490,-6493,-6528,-6556,-6566,-6568,-6575,-6583,-6594,-6620,-6677,-6755,-6822,-6847,-6828,-6789,-6754,-6729,-6699,-6655,-6597,
+-6535,-6479,-6437,-6413,-6404,-6390,-6348,-6272,-6176,-6087,-6025,-5991,-5973,-5958,-5934,-5896,-5840,-5760,-5653,-5529,-5407,
+-5296,-5184,-5057,-4937,-4872,-4890,-4960,-5019,-5021,-4960,-4850,-4708,-4560,-4443,-4381,-4357,-4325,-4256,-4166,-4081,-4018,
+-3973,-3938,-3902,-3857,-3803,-3750,-3701,-3643,-3562,-3467,-3392,-3355,-3338,-3303,-3235,-3153,-3083,-3029,-2985,-2943,-2903,
+-2869,-2843,-2818,-2787,-2742,-2679,-2598,-2501,-2400,-2316,-2263,-2230,-2190,-2124,-2039,-1948,-1851,-1740,-1621,-1514,-1435,
+-1372,-1304,-1216,-1112,-1004,-902,-815,-745,-684,-619,-535,-428,-309,-196,-101,-16,73,172,263,332,390,
+461,547,631,706,789,899,1022,1125,1201,1278,1382,1506,1625,1732,1836,1943,2037,2106,2158,2211,2263,
+2294,2296,2306,2379,2545,2773,2997,3156,3222,3201,3121,3026,2971,2989,3061,3143,3206,3258,3319,3384,3433,
+3463,3491,3536,3587,3625,3648,3668,3698,3732,3762,3786,3804,3820,3834,3849,3867,3886,3901,3915,3930,3940,
+3941,3938,3941,3952,3966,3978,3994,4017,4037,4047,4054,4071,4097,4119,4132,4150,4180,4210,4227,4238,4271,
+4335,4409,4465,4500,4531,4569,4606,4636,4661,4691,4730,4771,4805,4826,4836,4843,4860,4891,4923,4940,4936,
+4923,4917,4920,4922,4916,4911,4930,4980,5037,5065,5050,5014,4991,4985,4972,4925,4845,4752,4653,4537,4385,
+4193,3978,3753,3535,3342,3211,3173,3230,3354,3511,3677,3821,3891,3854,3751,3692,3749,3875,3946,3901,3801,
+3743,3746,3748,3705,3641,3600,3584,3557,3502,3434,3368,3300,3222,3142,3077,3033,2992,2934,2857,2782,2732,
+2702,2666,2617,2586,2604,2642,2627,2528,2389,2281,2228,2210,2217,2249,2283,2270,2190,2083,2006,1981,1998,
+2045,2098,2104,2027,1902,1808,1769,1735,1675,1650,1728,1872,1948,1875,1706,1557,1489,1490,1533,1602,1668,
+1688,1647,1564,1468,1366,1271,1205,1175,1156,1120,1081,1067,1069,1038,957,883,886,955,1000,947,823,
+726,727,798,855,839,769,706,685,695,704,699,688,679,669,658,653,660,668,661,633,600,
+575,562,551,538,531,534,539,535,521,510,512,519,516,500,487,493,513,528,531,526,520,
+513,508,512,531,562,595,620,632,631,621,620,643,692,754,811,855,878,875,854,834,831,
+846,876,920,969,994,968,907,866,890,964,1036,1066,1053,1013,962,914,885,880,885,881,864,
+846,837,834,832,830,830,828,826,821,815,808,802,802,804,798,780,758,746,747,754,761,
+768,775,778,776,768,759,754,753,750,738,720,712,718,721,699,662,633,606,562,547,699,
+1121,1715,2186,2260,1900,1299,703,251,-30,-168,-212,-220,-235,-261,-280,-291,-312,-351,-397,-439,-482,
+-530,-578,-618,-654,-690,-723,-748,-773,-803,-839,-871,-898,-928,-963,-997,-1027,-1060,-1099,-1142,-1186,-1233,
+-1282,-1329,-1371,-1412,-1455,-1497,-1535,-1573,-1617,-1660,-1695,-1729,-1773,-1828,-1883,-1931,-1975,-2020,-2064,-2104,-2144,
+-2187,-2227,-2258,-2286,-2319,-2359,-2396,-2429,-2465,-2507,-2550,-2589,-2629,-2676,-2727,-2773,-2815,-2859,-2906,-2953,-3001,
+-3050,-3099,-3144,-3189,-3240,-3299,-3355,-3403,-3443,-3481,-3517,-3550,-3584,-3622,-3662,-3699,-3737,-3778,-3820,-3856,-3886,
+-3918,-3956,-3996,-4030,-4057,-4083,-4110,-4141,-4176,-4214,-4252,-4283,-4307,-4328,-4350,-4371,-4392,-4411,-4429,-4448,-4471,
+-4502,-4537,-4567,-4590,-4609,-4627,-4642,-4654,-4666,-4681,-4695,-4705,-4711,-4719,-4730,-4738,-4738,-4732,-4726,-4720,-4713,
+-4703,-4693,-4683,-4671,-4656,-4637,-4619,-4601,-4584,-4564,-4540,-4513,-4485,-4454,-4418,-4381,-4346,-4314,-4278,-4239,-4201,
+-4164,-4121,-4071,-4021,-3977,-3937,-3888,-3830,-3778,-3737,-3699,-3647,-3582,-3521,-3476,-3445,-3413,-3370,-3316,-3261,-3219,
+-3195,-3174,-3139,-3084,-3020,-2961,-2911,-2871,-2843,-2836,-2851,-2876,-2891,-2864,-2765,-2586,-2360,-2148,-1992,-1888,-1805,
+-1728,-1667,-1633,-1614,-1576,-1496,-1380,-1258,-1159,-1093,-1058,-1036,-997,-911,-776,-630,-525,-472,-438,-391,-351,
+-353,-381,-372,-303,-257,-348,-599,-907,-1139,-1252,-1297,-1345,-1424,-1513,-1579,-1596,-1560,-1494,-1434,-1394,-1365,
+-1322,-1263,-1209,-1178,-1167,-1161,-1145,-1119,-1089,-1058,-1028,-999,-966,-924,-874,-829,-799,-780,-753,-712,-678,
+-696,-791,-950,-1129,-1279,-1366,-1384,-1355,-1319,-1305,-1318,-1350,-1392,-1441,-1480,-1492,-1475,-1456,-1461,-1488,-1526,
+-1569,-1616,-1650,-1646,-1610,-1589,-1625,-1717,-1829,-1926,-2001,-2058,-2103,-2144,-2192,-2253,-2321,-2385,-2442,-2494,-2545,
+-2600,-2667,-2747,-2830,-2893,-2925,-2938,-2955,-2983,-3005,-2993,-2939,-2866,-2809,-2780,-2774,-2777,-2784,-2790,-2786,-2774,
+-2769,-2788,-2824,-2862,-2914,-3018,-3191,-3412,-3641,-3862,-4082,-4309,-4556,-4858,-5231,-5625,-5942,-6137,-6268,-6428,-6623,
+-6777,-6833,-6821,-6799,-6767,-6683,-6530,-6347,-6186,-6065,-5982,-5946,-5969,-6046,-6146,-6238,-6299,-6313,-6268,-6168,-6030,
+-5873,-5714,-5567,-5436,-5315,-5193,-5073,-4970,-4893,-4830,-4769,-4716,-4695,-4715,-4754,-4782,-4786,-4776,-4763,-4745,-4712,
+-4660,-4597,-4531,-4460,-4385,-4318,-4268,-4238,-4212,-4180,-4143,-4113,-4092,-4068,-4034,-3992,-3952,-3913,-3866,-3814,-3765,
+-3723,-3677,-3615,-3540,-3464,-3395,-3333,-3269,-3199,-3122,-3040,-2959,-2886,-2820,-2753,-2673,-2579,-2481,-2395,-2325,-2267,
+-2208,-2144,-2086,-2045,-2019,-1993,-1954,-1904,-1854,-1811,-1771,-1728,-1685,-1643,-1601,-1558,-1514,-1470,-1426,-1379,-1331,
+-1286,-1246,-1203,-1156,-1105,-1056,-1009,-962,-912,-859,-805,-749,-690,-625,-555,-483,-413,-345,-277,-204,-128,
+-50,31,120,214,306,390,471,557,648,740,824,904,984,1064,1141,1212,1278,1344,1409,1467,1515,
+1554,1586,1618,1654,1691,1724,1750,1774,1804,1841,1881,1921,1963,2009,2058,2107,2153,2197,2239,2275,2305,
+2328,2349,2372,2397,2422,2446,2473,2508,2555,2603,2639,2657,2662,2664,2663,2656,2645,2634,2624,2615,2607,
+2605,2608,2611,2610,2610,2615,2617,2612,2617,2667,2774,2911,3033,3123,3198,3274,3342,3382,3398,3417,3455,
+3499,3515,3488,3425,3351,3280,3217,3168,3139,3131,3134,3136,3128,3111,3094,3078,3057,3023,2975,2925,2886,
+2860,2838,2814,2787,2764,2743,2719,2695,2677,2669,2662,2650,2634,2621,2610,2597,2588,2596,2623,2651,2658,
+2651,2647,2655,2667,2679,2700,2735,2771,2800,2832,2879,2936,2983,3020,3061,3107,3124,3083,3033,2989,2992,
+3034,3068,3067,3042,3017,2988,2933,2850,2765,2698,2651,2613,2582,2560,2542,2522,2499,2477,2453,2424,2400,
+2389,2383,2363,2326,2302,2322,2387,2477,2579,2688,2790,2850,2843,2783,2709,2648,2598,2549,2502,2465,2436,
+2404,2354,2285,2207,2138,2089,2057,2025,1978,1918,1856,1809,1783,1780,1791,1802,1802,1788,1770,1759,1763,
+1775,1783,1773,1747,1716,1692,1677,1660,1626,1575,1510,1437,1361,1291,1236,1197,1168,1146,1131,1124,1122,
+1122,1123,1129,1143,1165,1195,1227,1253,1269,1277,1278,1268,1244,1219,1208,1216,1236,1256,1271,1273,1252,
+1203,1140,1088,1053,1027,995,957,914,871,834,807,792,783,775,767,763,759,749,734,718,703,
+683,660,640,625,606,576,541,511,493,486,488,496,507,521,542,568,580,551,479,383,295,
+227,180,150,128,110,96,87,72,33,-25,-67,-61,-33,-52,-133,-187,-112,77,242,258,135,
+-17,-125,-209,-321,-465,-609,-740,-873,-1014,-1149,-1264,-1368,-1478,-1590,-1690,-1778,-1870,-1975,-2090,-2204,-2314,
+-2421,-2522,-2610,-2684,-2744,-2799,-2859,-2932,-3012,-3077,-3115,-3136,-3159,-3190,-3215,-3228,-3243,-3282,-3349,-3432,-3507,
+-3564,-3600,-3619,-3625,-3631,-3642,-3663,-3681,-3681,-3653,-3603,-3550,-3510,-3485,-3471,-3472,-3499,-3562,-3668,-3811,-3971,
+-4111,-4201,-4239,-4247,-4263,-4320,-4440,-4625,-4835,-4999,-5066,-5050,-5012,-5004,-5027,-5062,-5101,-5155,-5224,-5293,-5352,
+-5407,-5465,-5525,-5585,-5645,-5702,-5753,-5795,-5837,-5882,-5923,-5959,-6000,-6057,-6132,-6213,-6301,-6408,-6535,-6658,-6735,
+-6746,-6695,-6609,-6531,-6505,-6540,-6607,-6670,-6721,-6780,-6845,-6875,-6848,-6810,-6833,-6934,-7044,-7087,-7056,-7008,-6991,
+-7005,-7025,-7041,-7057,-7076,-7095,-7114,-7137,-7159,-7173,-7178,-7177,-7172,-7158,-7139,-7127,-7128,-7140,-7162,-7202,-7250,
+-7272,-7242,-7170,-7096,-7042,-6993,-6934,-6879,-6846,-6818,-6754,-6646,-6547,-6516,-6558,-6623,-6662,-6673,-6679,-6696,-6719,
+-6749,-6797,-6870,-6951,-7004,-7001,-6949,-6879,-6821,-6783,-6754,-6721,-6675,-6615,-6553,-6505,-6481,-6472,-6448,-6386,-6292,
+-6192,-6107,-6047,-6010,-5993,-5988,-5980,-5961,-5925,-5868,-5779,-5659,-5524,-5391,-5255,-5102,-4950,-4855,-4858,-4931,-4993,
+-4985,-4913,-4812,-4701,-4583,-4473,-4396,-4350,-4306,-4237,-4148,-4066,-4008,-3968,-3934,-3896,-3850,-3798,-3749,-3705,-3648,
+-3561,-3456,-3375,-3346,-3351,-3341,-3288,-3204,-3120,-3057,-3015,-2983,-2948,-2903,-2851,-2798,-2746,-2691,-2624,-2544,-2453,
+-2361,-2283,-2228,-2190,-2145,-2073,-1980,-1881,-1783,-1680,-1570,-1468,-1389,-1325,-1253,-1158,-1046,-934,-835,-754,-691,
+-641,-585,-501,-385,-256,-144,-60,12,98,195,284,354,419,496,585,674,757,845,946,1049,1144,
+1235,1337,1457,1586,1712,1830,1939,2035,2110,2163,2206,2251,2299,2340,2379,2452,2595,2803,3016,3170,3249,
+3273,3260,3199,3102,3022,3021,3098,3198,3273,3326,3384,3449,3500,3532,3564,3607,3649,3675,3692,3720,3761,
+3800,3824,3842,3862,3883,3900,3910,3919,3931,3945,3959,3970,3975,3976,3975,3979,3987,3998,4010,4028,4049,
+4065,4074,4084,4104,4128,4146,4160,4182,4213,4237,4247,4262,4305,4374,4441,4487,4519,4556,4599,4635,4659,
+4680,4710,4747,4785,4820,4846,4860,4867,4877,4900,4930,4952,4956,4945,4934,4929,4928,4927,4928,4946,4990,
+5049,5088,5085,5049,5018,5011,5008,4975,4899,4799,4693,4572,4415,4222,4020,3833,3658,3477,3302,3186,3184,
+3297,3470,3637,3760,3827,3839,3813,3791,3810,3859,3882,3847,3778,3724,3701,3686,3662,3639,3622,3595,3540,
+3466,3401,3351,3305,3251,3195,3149,3110,3066,3007,2932,2855,2790,2738,2683,2619,2563,2542,2546,2533,2472,
+2384,2311,2267,2242,2226,2221,2211,2181,2136,2108,2101,2087,2048,2014,2018,2035,2013,1951,1901,1883,1852,
+1781,1727,1768,1882,1953,1898,1753,1612,1534,1516,1540,1593,1645,1658,1621,1554,1480,1401,1322,1262,1232,
+1207,1169,1133,1123,1125,1096,1032,994,1036,1124,1157,1080,936,827,804,837,857,834,787,755,747,
+748,744,734,725,717,703,682,668,666,670,662,637,606,581,566,559,554,552,553,550,540,
+528,526,538,553,554,539,519,510,513,523,531,535,533,529,531,548,575,600,618,635,656,
+673,677,681,708,762,827,877,900,898,879,851,827,817,826,853,899,951,984,978,945,923,
+937,978,1011,1015,993,958,924,902,897,902,900,885,865,850,841,832,823,817,814,807,798,
+793,792,790,786,784,785,779,759,734,721,721,727,732,737,744,751,755,755,752,748,743,
+738,730,727,737,756,758,726,681,654,641,611,582,657,927,1320,1607,1586,1254,787,370,85,
+-78,-155,-181,-194,-219,-248,-265,-275,-299,-340,-385,-424,-467,-518,-568,-608,-642,-677,-710,-734,-756,
+-785,-821,-853,-880,-909,-943,-976,-1007,-1040,-1079,-1120,-1163,-1209,-1260,-1309,-1352,-1393,-1436,-1478,-1515,-1553,
+-1596,-1640,-1677,-1713,-1758,-1814,-1869,-1916,-1958,-2001,-2044,-2085,-2127,-2172,-2213,-2246,-2277,-2311,-2350,-2384,-2415,
+-2450,-2492,-2533,-2569,-2607,-2653,-2703,-2751,-2797,-2846,-2899,-2950,-2997,-3044,-3090,-3136,-3182,-3232,-3285,-3337,-3384,
+-3427,-3467,-3504,-3539,-3575,-3615,-3657,-3696,-3735,-3777,-3817,-3851,-3882,-3916,-3954,-3990,-4018,-4042,-4068,-4098,-4131,
+-4165,-4202,-4237,-4267,-4293,-4314,-4335,-4354,-4372,-4389,-4404,-4420,-4444,-4477,-4513,-4543,-4565,-4585,-4605,-4621,-4632,
+-4643,-4657,-4671,-4682,-4693,-4708,-4724,-4735,-4737,-4734,-4728,-4718,-4707,-4696,-4688,-4677,-4663,-4648,-4635,-4621,-4603,
+-4582,-4560,-4540,-4516,-4488,-4454,-4419,-4384,-4352,-4318,-4279,-4237,-4198,-4162,-4122,-4072,-4016,-3968,-3925,-3877,-3821,
+-3769,-3726,-3683,-3627,-3558,-3496,-3459,-3437,-3411,-3367,-3308,-3247,-3200,-3169,-3146,-3121,-3084,-3031,-2965,-2897,-2838,
+-2799,-2778,-2770,-2776,-2793,-2801,-2758,-2641,-2470,-2295,-2148,-2030,-1919,-1811,-1718,-1648,-1597,-1548,-1486,-1401,-1296,
+-1193,-1117,-1084,-1074,-1043,-948,-799,-659,-587,-579,-571,-520,-456,-432,-443,-424,-351,-303,-395,-646,-955,
+-1189,-1294,-1299,-1267,-1248,-1272,-1334,-1398,-1420,-1395,-1351,-1317,-1287,-1243,-1187,-1144,-1129,-1132,-1129,-1106,-1070,
+-1032,-1002,-979,-958,-927,-882,-830,-786,-759,-739,-711,-674,-652,-678,-769,-916,-1085,-1232,-1315,-1317,-1271,
+-1235,-1250,-1303,-1358,-1395,-1412,-1408,-1375,-1324,-1291,-1306,-1362,-1430,-1497,-1564,-1614,-1617,-1572,-1531,-1550,-1636,
+-1746,-1838,-1904,-1955,-2005,-2066,-2144,-2229,-2301,-2349,-2387,-2434,-2495,-2556,-2606,-2645,-2671,-2676,-2662,-2654,-2674,
+-2717,-2751,-2749,-2720,-2695,-2696,-2718,-2748,-2775,-2798,-2804,-2782,-2742,-2716,-2727,-2762,-2794,-2824,-2888,-3016,-3194,
+-3387,-3570,-3748,-3934,-4151,-4423,-4748,-5078,-5345,-5537,-5710,-5911,-6110,-6224,-6224,-6169,-6127,-6094,-6019,-5876,-5701,
+-5545,-5436,-5390,-5427,-5549,-5721,-5882,-5997,-6078,-6148,-6208,-6234,-6203,-6116,-5995,-5865,-5737,-5605,-5460,-5309,-5169,
+-5055,-4964,-4888,-4824,-4786,-4780,-4795,-4808,-4801,-4779,-4756,-4737,-4710,-4662,-4598,-4529,-4462,-4396,-4332,-4279,-4244,
+-4217,-4185,-4147,-4115,-4096,-4078,-4049,-4009,-3965,-3922,-3877,-3830,-3784,-3743,-3699,-3644,-3575,-3501,-3433,-3370,-3309,
+-3242,-3168,-3088,-3008,-2934,-2863,-2789,-2703,-2608,-2513,-2431,-2366,-2311,-2253,-2191,-2134,-2093,-2067,-2039,-2000,-1951,
+-1903,-1861,-1822,-1783,-1743,-1701,-1656,-1609,-1563,-1517,-1472,-1426,-1380,-1336,-1294,-1249,-1199,-1147,-1097,-1050,-1001,
+-949,-894,-837,-779,-718,-654,-587,-517,-446,-374,-301,-227,-153,-77,5,95,188,276,358,441,530,
+622,712,795,874,952,1029,1103,1171,1236,1300,1362,1418,1467,1507,1542,1578,1618,1658,1695,1726,1755,
+1789,1828,1869,1910,1952,2000,2052,2105,2157,2205,2248,2284,2313,2334,2354,2377,2406,2439,2471,2500,2531,
+2569,2609,2644,2666,2680,2686,2686,2679,2668,2656,2644,2630,2617,2614,2619,2623,2622,2621,2622,2618,2603,
+2595,2631,2730,2872,3015,3133,3228,3307,3358,3375,3374,3389,3437,3496,3527,3509,3449,3369,3286,3211,3154,
+3124,3121,3130,3134,3123,3099,3073,3050,3028,2999,2961,2922,2891,2869,2849,2825,2799,2775,2755,2735,2713,
+2695,2683,2676,2665,2648,2627,2604,2584,2577,2592,2623,2647,2650,2644,2647,2665,2686,2702,2720,2748,2781,
+2815,2853,2899,2950,2996,3037,3075,3098,3083,3035,2984,2953,2967,3005,3026,3014,2985,2956,2921,2865,2789,
+2708,2637,2580,2538,2513,2499,2487,2472,2458,2445,2425,2395,2367,2354,2351,2339,2316,2305,2329,2389,2470,
+2566,2675,2777,2835,2832,2785,2726,2668,2603,2529,2467,2434,2423,2405,2355,2274,2183,2106,2056,2025,1993,
+1945,1883,1823,1777,1748,1734,1733,1737,1736,1723,1703,1687,1685,1691,1691,1675,1643,1605,1570,1543,1520,
+1493,1457,1415,1367,1318,1270,1225,1184,1151,1130,1123,1123,1119,1107,1095,1094,1111,1142,1179,1211,1233,
+1245,1253,1254,1244,1223,1203,1197,1206,1220,1231,1236,1228,1198,1145,1086,1039,1010,986,953,913,870,
+832,802,782,770,760,751,744,738,730,716,700,690,680,664,640,613,588,566,543,521,503,
+488,480,479,482,482,483,496,527,554,542,479,384,290,220,172,135,97,55,25,20,28,
+13,-40,-98,-112,-86,-85,-139,-188,-135,27,188,231,148,23,-74,-157,-266,-408,-555,-695,-838,
+-990,-1135,-1258,-1365,-1473,-1581,-1677,-1760,-1845,-1944,-2057,-2172,-2284,-2390,-2490,-2581,-2658,-2720,-2768,-2818,-2882,
+-2958,-3021,-3057,-3076,-3098,-3128,-3149,-3152,-3157,-3195,-3277,-3385,-3488,-3559,-3591,-3595,-3592,-3598,-3618,-3642,-3658,
+-3655,-3628,-3582,-3536,-3510,-3510,-3521,-3536,-3565,-3634,-3754,-3909,-4067,-4193,-4266,-4289,-4294,-4323,-4418,-4592,-4814,
+-5016,-5130,-5142,-5097,-5061,-5062,-5082,-5103,-5134,-5192,-5268,-5336,-5390,-5444,-5514,-5590,-5660,-5722,-5784,-5849,-5910,
+-5968,-6020,-6063,-6095,-6122,-6162,-6217,-6282,-6356,-6446,-6558,-6679,-6784,-6848,-6858,-6812,-6735,-6669,-6645,-6663,-6700,
+-6750,-6820,-6898,-6951,-6958,-6953,-6991,-7078,-7159,-7177,-7142,-7108,-7108,-7129,-7145,-7153,-7162,-7175,-7183,-7188,-7197,
+-7214,-7231,-7245,-7256,-7261,-7253,-7237,-7224,-7221,-7224,-7236,-7266,-7313,-7351,-7347,-7297,-7227,-7160,-7100,-7051,-7021,
+-7002,-6951,-6837,-6688,-6585,-6585,-6663,-6747,-6789,-6802,-6823,-6865,-6917,-6971,-7031,-7094,-7140,-7142,-7093,-7013,-6935,
+-6880,-6847,-6823,-6794,-6749,-6688,-6621,-6570,-6546,-6532,-6496,-6417,-6311,-6208,-6128,-6068,-6024,-5998,-5988,-5983,-5971,
+-5949,-5917,-5860,-5764,-5634,-5489,-5331,-5148,-4958,-4828,-4810,-4884,-4955,-4951,-4879,-4787,-4699,-4606,-4502,-4409,-4345,
+-4293,-4224,-4137,-4055,-3999,-3967,-3940,-3904,-3855,-3799,-3748,-3702,-3644,-3556,-3452,-3374,-3351,-3365,-3368,-3327,-3249,
+-3170,-3115,-3088,-3070,-3035,-2968,-2876,-2780,-2694,-2615,-2538,-2460,-2383,-2310,-2243,-2189,-2142,-2089,-2014,-1919,-1819,
+-1725,-1630,-1528,-1428,-1345,-1273,-1196,-1100,-989,-879,-783,-706,-652,-613,-564,-480,-360,-234,-134,-62,9,
+100,201,291,367,442,528,622,717,812,909,1004,1094,1189,1300,1425,1553,1680,1807,1928,2032,2111,
+2169,2218,2262,2304,2352,2422,2533,2701,2917,3135,3287,3350,3363,3381,3399,3354,3227,3093,3054,3127,3240,
+3326,3385,3447,3515,3568,3602,3635,3678,3715,3737,3758,3794,3837,3865,3876,3887,3911,3940,3958,3965,3972,
+3983,3993,3999,4001,4002,4007,4014,4021,4027,4033,4044,4062,4081,4096,4109,4126,4146,4163,4178,4196,4225,
+4253,4269,4277,4299,4350,4418,4475,4514,4547,4586,4624,4652,4672,4696,4727,4762,4798,4835,4869,4889,4894,
+4899,4915,4941,4963,4970,4965,4953,4942,4935,4933,4935,4949,4986,5044,5095,5109,5083,5052,5042,5042,5015,
+4945,4851,4749,4626,4451,4231,4018,3854,3724,3569,3372,3196,3146,3259,3470,3667,3790,3848,3877,3892,3892,
+3883,3874,3861,3836,3795,3748,3704,3666,3636,3616,3593,3548,3486,3428,3393,3367,3329,3277,3231,3201,3172,
+3127,3063,2990,2920,2858,2802,2745,2678,2609,2553,2516,2481,2429,2368,2316,2283,2262,2245,2227,2197,2155,
+2125,2132,2160,2157,2100,2033,2011,2026,2027,1996,1970,1963,1936,1859,1779,1771,1838,1894,1869,1777,1681,
+1616,1582,1574,1592,1616,1615,1582,1536,1489,1438,1381,1333,1300,1265,1216,1172,1158,1164,1158,1140,1152,
+1218,1294,1301,1210,1068,949,886,859,842,828,824,829,831,821,803,788,781,773,756,730,705,
+690,680,668,647,624,606,597,593,588,580,570,558,546,540,546,563,585,597,594,580,562,
+547,540,542,550,555,557,567,593,624,642,649,664,698,735,759,772,798,846,896,922,917,
+896,872,848,827,816,821,846,884,922,946,951,948,948,952,949,932,910,894,889,896,914,
+938,950,935,903,875,862,854,837,817,804,795,784,771,766,770,773,769,763,761,756,739,
+718,704,701,704,707,712,722,731,736,738,740,740,740,738,737,742,758,777,776,743,697,
+669,658,630,584,585,701,894,1013,936,683,383,148,2,-81,-127,-152,-173,-202,-231,-247,-261,
+-291,-335,-375,-410,-451,-503,-552,-589,-620,-655,-689,-715,-738,-768,-804,-837,-863,-890,-922,-953,-984,
+-1018,-1057,-1097,-1136,-1179,-1229,-1280,-1326,-1371,-1417,-1462,-1501,-1537,-1578,-1622,-1662,-1701,-1747,-1802,-1855,-1898,
+-1937,-1978,-2020,-2061,-2104,-2151,-2195,-2232,-2265,-2301,-2339,-2372,-2403,-2438,-2478,-2518,-2553,-2591,-2636,-2685,-2731,
+-2779,-2833,-2892,-2945,-2989,-3031,-3076,-3124,-3174,-3224,-3274,-3323,-3368,-3411,-3453,-3490,-3526,-3565,-3609,-3653,-3695,
+-3734,-3773,-3809,-3842,-3874,-3909,-3945,-3974,-3997,-4021,-4050,-4084,-4118,-4150,-4182,-4214,-4244,-4271,-4295,-4316,-4335,
+-4353,-4369,-4382,-4397,-4421,-4455,-4492,-4520,-4540,-4560,-4582,-4601,-4614,-4627,-4640,-4652,-4663,-4679,-4700,-4721,-4733,
+-4737,-4737,-4731,-4717,-4700,-4689,-4684,-4674,-4657,-4640,-4628,-4615,-4594,-4567,-4543,-4526,-4508,-4482,-4451,-4419,-4388,
+-4355,-4317,-4272,-4226,-4186,-4154,-4118,-4072,-4017,-3966,-3921,-3874,-3818,-3761,-3712,-3666,-3610,-3546,-3492,-3459,-3439,
+-3411,-3363,-3304,-3246,-3194,-3150,-3114,-3087,-3064,-3032,-2977,-2902,-2829,-2771,-2729,-2692,-2665,-2657,-2664,-2658,-2613,
+-2531,-2431,-2320,-2192,-2043,-1885,-1738,-1611,-1512,-1444,-1402,-1361,-1296,-1211,-1138,-1104,-1095,-1062,-966,-830,-726,
+-708,-750,-767,-709,-610,-537,-503,-463,-399,-375,-473,-697,-964,-1184,-1306,-1321,-1245,-1134,-1070,-1102,-1201,
+-1288,-1317,-1301,-1272,-1237,-1187,-1133,-1099,-1095,-1104,-1100,-1069,-1021,-972,-938,-924,-915,-891,-843,-786,-742,
+-721,-709,-696,-682,-685,-720,-793,-902,-1038,-1169,-1248,-1251,-1208,-1189,-1232,-1311,-1371,-1384,-1362,-1321,-1259,
+-1189,-1148,-1162,-1218,-1281,-1339,-1403,-1468,-1500,-1484,-1459,-1478,-1548,-1633,-1694,-1730,-1759,-1804,-1876,-1970,-2065,
+-2124,-2138,-2133,-2150,-2198,-2262,-2325,-2384,-2433,-2459,-2456,-2449,-2464,-2503,-2542,-2562,-2573,-2591,-2619,-2644,-2657,
+-2661,-2664,-2665,-2656,-2645,-2651,-2685,-2735,-2781,-2825,-2892,-2996,-3134,-3288,-3444,-3597,-3743,-3890,-4064,-4280,-4520,
+-4743,-4931,-5107,-5282,-5419,-5460,-5403,-5315,-5263,-5246,-5216,-5143,-5042,-4950,-4897,-4908,-5005,-5174,-5354,-5479,-5539,
+-5599,-5725,-5914,-6098,-6204,-6218,-6169,-6092,-5993,-5866,-5710,-5536,-5361,-5206,-5083,-4995,-4932,-4883,-4847,-4825,-4809,
+-4787,-4755,-4723,-4699,-4674,-4633,-4574,-4513,-4459,-4407,-4350,-4293,-4248,-4213,-4177,-4136,-4102,-4084,-4074,-4056,-4021,
+-3976,-3931,-3887,-3843,-3798,-3753,-3706,-3652,-3591,-3525,-3460,-3397,-3336,-3273,-3205,-3133,-3059,-2983,-2903,-2819,-2732,
+-2643,-2557,-2479,-2412,-2354,-2299,-2243,-2191,-2149,-2115,-2080,-2039,-1993,-1948,-1906,-1865,-1825,-1785,-1746,-1705,-1662,
+-1618,-1573,-1526,-1478,-1433,-1389,-1342,-1291,-1238,-1185,-1137,-1089,-1040,-987,-932,-875,-816,-755,-691,-624,-554,
+-480,-405,-328,-253,-180,-104,-20,70,161,246,328,412,501,591,678,760,840,916,990,1061,1129,
+1196,1260,1319,1374,1423,1467,1508,1549,1591,1632,1670,1706,1741,1778,1817,1857,1899,1944,1992,2044,2099,
+2154,2206,2252,2291,2321,2343,2361,2382,2409,2443,2479,2514,2547,2581,2613,2640,2662,2680,2694,2699,2694,
+2684,2672,2657,2640,2625,2619,2621,2624,2625,2625,2625,2619,2603,2594,2624,2711,2843,2993,3135,3254,3336,
+3367,3354,3331,3339,3392,3463,3511,3511,3462,3381,3288,3200,3137,3108,3112,3128,3135,3122,3091,3055,3023,
+2996,2968,2938,2908,2883,2865,2849,2831,2810,2788,2769,2752,2735,2718,2704,2692,2679,2659,2632,2604,2585,
+2586,2608,2637,2653,2652,2646,2651,2670,2692,2710,2726,2750,2785,2829,2879,2926,2964,2994,3026,3057,3065,
+3035,2981,2936,2917,2933,2956,2959,2937,2906,2876,2838,2786,2723,2654,2582,2518,2473,2455,2450,2442,2429,
+2417,2408,2391,2362,2333,2319,2318,2316,2309,2310,2333,2382,2455,2549,2654,2741,2780,2770,2738,2704,2660,
+2588,2497,2423,2393,2395,2388,2343,2262,2169,2092,2042,2011,1976,1925,1862,1805,1764,1735,1710,1689,1676,
+1666,1654,1638,1625,1620,1619,1611,1590,1556,1514,1471,1434,1407,1385,1362,1337,1311,1285,1256,1218,1175,
+1139,1120,1118,1119,1111,1093,1078,1078,1098,1131,1166,1195,1215,1232,1245,1251,1241,1218,1196,1187,1189,
+1194,1193,1186,1172,1142,1096,1045,1003,974,951,922,886,845,809,783,769,760,749,735,724,714,
+699,678,660,652,652,645,624,591,554,522,501,491,485,477,468,463,461,453,443,447,476,
+510,510,456,364,269,197,148,108,60,2,-43,-52,-30,-20,-54,-114,-150,-143,-133,-156,-183,
+-143,-20,116,177,143,63,-15,-100,-219,-370,-524,-666,-808,-959,-1107,-1238,-1353,-1463,-1569,-1662,-1744,
+-1828,-1924,-2032,-2144,-2255,-2361,-2461,-2552,-2631,-2695,-2743,-2787,-2842,-2907,-2961,-2990,-3003,-3022,-3051,-3072,-3076,
+-3083,-3126,-3218,-3338,-3453,-3530,-3561,-3562,-3560,-3571,-3591,-3605,-3611,-3608,-3590,-3555,-3516,-3498,-3512,-3542,-3574,
+-3620,-3708,-3846,-4008,-4153,-4255,-4309,-4328,-4344,-4406,-4554,-4779,-5020,-5192,-5248,-5209,-5148,-5120,-5131,-5150,-5162,
+-5188,-5244,-5317,-5379,-5428,-5484,-5558,-5638,-5705,-5763,-5828,-5906,-5992,-6078,-6157,-6218,-6252,-6267,-6282,-6314,-6366,
+-6430,-6509,-6602,-6707,-6813,-6903,-6962,-6970,-6925,-6852,-6790,-6763,-6776,-6820,-6888,-6962,-7016,-7046,-7080,-7149,-7238,
+-7295,-7285,-7237,-7208,-7220,-7249,-7268,-7277,-7287,-7296,-7292,-7278,-7270,-7277,-7291,-7308,-7325,-7338,-7339,-7326,-7311,
+-7306,-7310,-7319,-7338,-7372,-7408,-7420,-7398,-7353,-7300,-7253,-7219,-7197,-7162,-7071,-6916,-6754,-6670,-6699,-6792,-6872,
+-6908,-6930,-6976,-7052,-7137,-7213,-7274,-7307,-7296,-7235,-7143,-7053,-6991,-6954,-6929,-6900,-6861,-6810,-6748,-6683,-6631,
+-6600,-6574,-6523,-6434,-6322,-6220,-6141,-6078,-6026,-5990,-5973,-5965,-5955,-5944,-5930,-5897,-5824,-5712,-5574,-5412,-5215,
+-4999,-4835,-4791,-4856,-4935,-4942,-4872,-4781,-4699,-4614,-4513,-4415,-4344,-4291,-4227,-4141,-4056,-3999,-3969,-3947,-3912,
+-3859,-3797,-3739,-3688,-3627,-3543,-3449,-3378,-3351,-3354,-3349,-3312,-3253,-3200,-3170,-3160,-3148,-3105,-3019,-2899,-2770,
+-2649,-2540,-2445,-2366,-2305,-2252,-2199,-2144,-2089,-2030,-1955,-1864,-1767,-1675,-1586,-1492,-1398,-1312,-1234,-1150,-1051,
+-942,-836,-744,-675,-630,-600,-557,-476,-363,-252,-166,-94,-8,99,208,299,382,472,572,673,773,
+878,984,1079,1168,1272,1399,1531,1652,1767,1889,2008,2101,2162,2217,2278,2334,2376,2430,2541,2734,2993,
+3263,3472,3566,3561,3538,3559,3584,3516,3335,3149,3087,3163,3283,3370,3431,3504,3585,3644,3676,3706,3746,
+3783,3807,3833,3869,3901,3914,3917,3932,3965,3997,4014,4019,4026,4037,4043,4039,4033,4033,4044,4058,4067,
+4073,4080,4094,4110,4125,4138,4153,4170,4186,4197,4211,4236,4268,4291,4301,4314,4350,4407,4467,4512,4547,
+4583,4620,4649,4669,4691,4720,4752,4783,4815,4855,4890,4908,4908,4911,4930,4958,4978,4985,4985,4979,4967,
+4955,4947,4948,4958,4989,5045,5105,5134,5118,5086,5070,5066,5039,4975,4893,4808,4693,4506,4256,4017,3854,
+3750,3623,3422,3210,3118,3218,3451,3682,3825,3888,3923,3952,3960,3940,3916,3907,3906,3887,3839,3772,3707,
+3656,3616,3572,3514,3454,3416,3402,3390,3353,3299,3256,3232,3209,3164,3098,3029,2966,2909,2857,2805,2749,
+2686,2622,2562,2505,2446,2389,2343,2315,2301,2293,2281,2252,2205,2164,2158,2179,2183,2146,2093,2066,2064,
+2053,2021,2000,2000,1986,1924,1844,1808,1830,1864,1860,1819,1769,1725,1685,1654,1644,1646,1639,1613,1577,
+1539,1496,1449,1407,1372,1327,1266,1207,1179,1182,1204,1241,1305,1383,1428,1396,1294,1168,1058,974,911,
+875,874,897,918,915,894,870,857,849,836,811,777,744,718,700,687,672,658,649,646,646,
+638,619,595,575,566,566,574,588,606,623,634,633,619,596,575,567,571,578,587,605,638,
+673,694,705,728,773,823,855,870,889,917,939,935,908,879,860,848,838,834,842,863,883,
+892,888,887,904,932,947,931,896,871,868,880,899,926,959,976,958,917,884,873,867,847,
+820,800,789,774,758,751,756,762,758,750,746,740,726,706,690,683,681,684,695,711,724,
+728,726,725,725,727,731,736,743,754,765,766,743,706,674,652,617,561,516,525,574,586,
+500,342,182,68,-6,-63,-105,-131,-153,-181,-208,-228,-250,-286,-330,-366,-398,-438,-489,-534,-566,
+-595,-630,-666,-695,-720,-751,-787,-819,-844,-870,-901,-931,-960,-995,-1036,-1075,-1110,-1149,-1197,-1249,-1298,
+-1345,-1395,-1444,-1484,-1520,-1559,-1602,-1645,-1688,-1736,-1789,-1838,-1880,-1918,-1957,-1997,-2037,-2080,-2128,-2176,-2217,
+-2253,-2290,-2328,-2361,-2392,-2427,-2466,-2504,-2539,-2579,-2625,-2671,-2716,-2763,-2819,-2879,-2932,-2974,-3012,-3054,-3102,
+-3153,-3206,-3259,-3307,-3352,-3395,-3436,-3474,-3510,-3551,-3598,-3645,-3689,-3728,-3765,-3798,-3829,-3861,-3895,-3928,-3953,
+-3974,-3999,-4032,-4068,-4102,-4133,-4161,-4190,-4220,-4250,-4277,-4298,-4316,-4335,-4353,-4368,-4383,-4405,-4439,-4474,-4501,
+-4522,-4544,-4569,-4590,-4604,-4618,-4631,-4642,-4653,-4669,-4692,-4713,-4724,-4729,-4731,-4726,-4710,-4690,-4680,-4676,-4666,
+-4646,-4627,-4614,-4601,-4576,-4545,-4519,-4503,-4488,-4465,-4439,-4413,-4386,-4351,-4307,-4257,-4208,-4169,-4138,-4107,-4066,
+-4015,-3967,-3922,-3874,-3816,-3756,-3703,-3656,-3606,-3551,-3504,-3470,-3442,-3405,-3355,-3301,-3253,-3205,-3153,-3101,-3061,
+-3039,-3021,-2983,-2917,-2838,-2766,-2704,-2643,-2584,-2539,-2518,-2512,-2510,-2504,-2484,-2432,-2327,-2175,-1995,-1809,-1630,
+-1480,-1383,-1343,-1329,-1294,-1227,-1154,-1109,-1084,-1043,-958,-853,-789,-800,-852,-868,-805,-700,-608,-543,-480,
+-425,-431,-538,-726,-938,-1133,-1283,-1342,-1273,-1114,-984,-980,-1088,-1212,-1278,-1283,-1259,-1221,-1169,-1117,-1085,
+-1078,-1079,-1066,-1031,-978,-922,-884,-874,-873,-854,-805,-745,-702,-684,-679,-679,-694,-732,-788,-853,-929,
+-1023,-1123,-1191,-1200,-1172,-1169,-1221,-1296,-1339,-1330,-1294,-1251,-1200,-1146,-1115,-1125,-1156,-1173,-1178,-1202,-1258,
+-1315,-1341,-1351,-1382,-1444,-1511,-1558,-1585,-1611,-1653,-1719,-1804,-1880,-1910,-1881,-1821,-1775,-1769,-1803,-1874,-1980,
+-2104,-2209,-2272,-2304,-2331,-2366,-2404,-2439,-2467,-2487,-2492,-2479,-2461,-2452,-2460,-2486,-2526,-2575,-2621,-2658,-2695,
+-2759,-2866,-3005,-3144,-3264,-3376,-3503,-3640,-3759,-3846,-3927,-4049,-4223,-4413,-4572,-4684,-4754,-4780,-4745,-4656,-4561,
+-4514,-4526,-4566,-4595,-4600,-4596,-4607,-4662,-4771,-4910,-5013,-5030,-4993,-5009,-5167,-5450,-5749,-5968,-6093,-6162,-6191,
+-6164,-6063,-5902,-5714,-5519,-5331,-5175,-5069,-5006,-4957,-4903,-4851,-4811,-4779,-4743,-4705,-4674,-4645,-4606,-4554,-4504,
+-4464,-4426,-4376,-4317,-4263,-4217,-4173,-4126,-4087,-4069,-4063,-4053,-4024,-3981,-3934,-3892,-3852,-3810,-3763,-3712,-3659,
+-3604,-3546,-3484,-3420,-3355,-3289,-3223,-3158,-3091,-3018,-2934,-2845,-2760,-2683,-2610,-2534,-2459,-2393,-2338,-2292,-2251,
+-2209,-2166,-2120,-2073,-2030,-1989,-1948,-1905,-1864,-1825,-1789,-1753,-1716,-1677,-1632,-1582,-1531,-1483,-1437,-1388,-1333,
+-1278,-1227,-1180,-1132,-1081,-1028,-973,-917,-860,-800,-734,-664,-591,-516,-439,-360,-283,-207,-130,-45,44,
+132,215,295,378,465,551,635,719,800,876,947,1017,1088,1158,1222,1282,1337,1388,1437,1484,1530,
+1574,1614,1653,1692,1733,1773,1812,1852,1897,1943,1989,2036,2087,2143,2199,2249,2291,2324,2351,2373,2394,
+2417,2443,2474,2509,2547,2583,2610,2629,2644,2662,2681,2695,2698,2691,2677,2659,2642,2630,2624,2622,2621,
+2623,2627,2629,2623,2610,2607,2634,2706,2821,2968,3126,3262,3341,3350,3314,3281,3290,3347,3425,3487,3505,
+3469,3385,3277,3173,3101,3075,3085,3107,3115,3099,3063,3023,2987,2957,2930,2905,2882,2861,2845,2833,2822,
+2808,2792,2775,2761,2748,2735,2720,2705,2688,2666,2639,2614,2604,2613,2636,2657,2665,2662,2658,2661,2673,
+2689,2706,2725,2749,2788,2844,2903,2946,2963,2971,2988,3011,3013,2981,2931,2893,2878,2886,2892,2878,2849,
+2817,2782,2742,2698,2654,2603,2538,2471,2425,2411,2411,2405,2391,2378,2370,2356,2333,2310,2299,2298,2299,
+2300,2307,2327,2369,2441,2543,2650,2720,2731,2700,2667,2645,2612,2543,2449,2373,2343,2346,2343,2307,2239,
+2159,2089,2041,2010,1975,1922,1857,1802,1765,1736,1700,1659,1623,1600,1585,1574,1567,1564,1558,1544,1520,
+1486,1440,1389,1343,1314,1300,1290,1277,1262,1247,1229,1199,1161,1128,1112,1109,1108,1099,1086,1079,1086,
+1109,1139,1169,1194,1216,1237,1256,1263,1250,1220,1189,1171,1165,1161,1151,1138,1121,1096,1058,1012,970,
+940,920,901,874,837,798,771,760,753,740,719,699,682,661,634,612,606,613,616,601,567,
+523,483,462,459,463,460,448,435,423,408,394,395,419,448,446,395,308,219,151,107,70,
+21,-40,-93,-109,-87,-64,-77,-126,-171,-187,-185,-190,-198,-174,-98,-4,59,72,50,7,-69,
+-194,-354,-515,-658,-793,-932,-1073,-1206,-1329,-1444,-1549,-1641,-1723,-1809,-1907,-2013,-2120,-2226,-2329,-2425,-2513,
+-2590,-2652,-2698,-2737,-2780,-2830,-2872,-2894,-2904,-2920,-2948,-2974,-2990,-3013,-3069,-3164,-3282,-3394,-3472,-3510,-3519,
+-3525,-3534,-3540,-3535,-3530,-3534,-3535,-3515,-3482,-3468,-3492,-3540,-3591,-3659,-3771,-3927,-4091,-4221,-4302,-4341,-4358,
+-4389,-4487,-4683,-4947,-5189,-5324,-5331,-5264,-5202,-5186,-5203,-5223,-5237,-5263,-5314,-5377,-5432,-5478,-5533,-5605,-5679,
+-5739,-5794,-5860,-5946,-6049,-6162,-6272,-6360,-6409,-6420,-6419,-6432,-6468,-6522,-6589,-6668,-6754,-6844,-6934,-7017,-7073,
+-7080,-7034,-6963,-6907,-6895,-6924,-6977,-7029,-7067,-7105,-7171,-7275,-7380,-7431,-7405,-7343,-7304,-7311,-7341,-7366,-7386,
+-7406,-7418,-7409,-7383,-7363,-7359,-7367,-7377,-7392,-7408,-7414,-7403,-7387,-7382,-7393,-7409,-7423,-7440,-7459,-7473,-7470,
+-7453,-7428,-7400,-7373,-7335,-7266,-7144,-6986,-6851,-6801,-6842,-6920,-6980,-7013,-7054,-7130,-7234,-7341,-7429,-7481,-7481,
+-7419,-7311,-7196,-7112,-7067,-7042,-7011,-6965,-6910,-6854,-6798,-6739,-6684,-6637,-6590,-6523,-6428,-6318,-6217,-6134,-6067,
+-6011,-5970,-5948,-5939,-5935,-5932,-5928,-5907,-5851,-5763,-5652,-5514,-5330,-5111,-4927,-4854,-4894,-4961,-4963,-4888,-4786,
+-4696,-4611,-4515,-4420,-4350,-4299,-4237,-4151,-4063,-4001,-3968,-3944,-3906,-3852,-3789,-3728,-3669,-3603,-3524,-3443,-3378,
+-3342,-3321,-3297,-3262,-3227,-3205,-3196,-3190,-3169,-3117,-3027,-2906,-2769,-2628,-2490,-2370,-2282,-2228,-2190,-2147,-2094,
+-2040,-1984,-1915,-1827,-1729,-1634,-1546,-1459,-1374,-1291,-1208,-1115,-1008,-897,-797,-717,-661,-627,-600,-556,-478,
+-375,-276,-190,-102,7,130,240,330,419,525,640,747,848,953,1060,1158,1256,1374,1508,1632,1733,
+1836,1956,2074,2154,2207,2268,2346,2411,2452,2515,2666,2919,3229,3519,3717,3785,3757,3717,3717,3702,3575,
+3344,3148,3115,3225,3354,3428,3480,3562,3659,3725,3753,3778,3817,3854,3880,3903,3929,3947,3950,3957,3985,
+4026,4056,4066,4071,4081,4092,4094,4085,4077,4080,4092,4105,4115,4126,4141,4159,4173,4179,4183,4193,4208,
+4220,4230,4248,4278,4307,4323,4333,4359,4408,4466,4513,4546,4579,4618,4653,4677,4696,4722,4753,4781,4806,
+4838,4879,4911,4917,4910,4917,4946,4979,4996,5000,5003,5003,4995,4981,4972,4972,4982,5011,5066,5130,5164,
+5149,5113,5095,5092,5069,5010,4937,4865,4763,4581,4322,4065,3888,3782,3658,3454,3218,3087,3155,3381,3632,
+3807,3901,3960,4002,4016,4006,4007,4041,4078,4068,3995,3887,3786,3709,3653,3604,3554,3502,3456,3422,3394,
+3357,3312,3272,3245,3220,3180,3124,3063,3005,2949,2895,2845,2796,2744,2687,2627,2568,2512,2461,2423,2398,
+2383,2372,2360,2337,2295,2242,2206,2198,2199,2182,2149,2119,2099,2075,2045,2029,2033,2031,1995,1932,1884,
+1872,1876,1870,1848,1820,1791,1757,1726,1712,1712,1711,1693,1657,1609,1555,1504,1464,1428,1381,1319,1255,
+1212,1200,1227,1294,1390,1469,1483,1418,1315,1219,1143,1074,1009,967,962,979,984,965,934,911,901,
+892,873,842,805,772,746,728,714,700,685,679,684,693,690,666,634,609,601,601,602,602,
+606,616,630,639,638,623,603,591,591,598,609,630,665,707,743,773,811,860,902,924,928,
+933,941,937,911,877,852,846,848,852,859,872,888,893,876,848,835,858,902,933,931,915,
+914,929,935,922,914,929,952,951,923,893,881,873,853,824,803,792,777,759,750,754,761,
+761,756,750,741,724,702,683,672,664,663,674,693,710,716,713,708,704,703,708,716,722,
+724,726,728,721,697,664,629,589,536,478,434,404,362,291,204,126,64,8,-45,-84,-104,
+-122,-149,-181,-210,-241,-280,-320,-354,-386,-427,-476,-516,-543,-571,-607,-646,-676,-702,-734,-769,-800,
+-825,-852,-882,-911,-939,-974,-1014,-1053,-1088,-1125,-1172,-1225,-1274,-1322,-1372,-1420,-1462,-1499,-1536,-1578,-1621,
+-1667,-1718,-1771,-1818,-1859,-1898,-1939,-1980,-2017,-2059,-2107,-2158,-2203,-2242,-2280,-2316,-2348,-2379,-2414,-2452,-2490,
+-2527,-2568,-2614,-2660,-2703,-2749,-2804,-2861,-2910,-2950,-2987,-3026,-3070,-3120,-3174,-3231,-3284,-3332,-3375,-3415,-3452,
+-3489,-3532,-3581,-3630,-3674,-3715,-3754,-3788,-3818,-3849,-3881,-3912,-3937,-3960,-3987,-4020,-4056,-4090,-4120,-4148,-4176,
+-4205,-4234,-4261,-4282,-4300,-4320,-4344,-4364,-4381,-4402,-4432,-4463,-4488,-4511,-4537,-4564,-4584,-4596,-4608,-4623,-4636,
+-4647,-4663,-4683,-4699,-4705,-4707,-4710,-4708,-4696,-4678,-4668,-4664,-4651,-4628,-4607,-4595,-4584,-4559,-4528,-4502,-4485,
+-4467,-4445,-4422,-4402,-4377,-4341,-4294,-4244,-4197,-4158,-4126,-4095,-4054,-4007,-3961,-3918,-3870,-3813,-3753,-3700,-3654,
+-3608,-3560,-3515,-3478,-3440,-3395,-3344,-3296,-3256,-3216,-3166,-3108,-3056,-3023,-3005,-2978,-2924,-2849,-2769,-2695,-2622,
+-2549,-2481,-2428,-2395,-2386,-2402,-2428,-2433,-2388,-2289,-2147,-1972,-1779,-1598,-1470,-1409,-1380,-1332,-1246,-1145,-1060,
+-999,-943,-878,-817,-784,-791,-808,-794,-736,-665,-605,-544,-469,-412,-430,-541,-701,-863,-1031,-1203,-1319,
+-1303,-1169,-1033,-1010,-1098,-1209,-1272,-1281,-1262,-1225,-1177,-1131,-1103,-1087,-1068,-1038,-994,-939,-882,-842,-828,
+-825,-803,-754,-702,-670,-657,-648,-646,-674,-740,-828,-910,-978,-1044,-1110,-1154,-1160,-1142,-1143,-1181,-1230,
+-1253,-1242,-1224,-1214,-1205,-1193,-1193,-1213,-1224,-1193,-1134,-1099,-1121,-1173,-1214,-1239,-1271,-1327,-1394,-1455,-1505,
+-1548,-1589,-1632,-1684,-1732,-1745,-1706,-1625,-1536,-1470,-1451,-1500,-1620,-1784,-1946,-2069,-2149,-2203,-2249,-2296,-2346,
+-2388,-2405,-2394,-2374,-2374,-2403,-2453,-2519,-2603,-2690,-2740,-2734,-2718,-2777,-2955,-3197,-3403,-3521,-3586,-3665,-3776,
+-3879,-3942,-3987,-4070,-4217,-4381,-4488,-4504,-4454,-4385,-4314,-4235,-4158,-4122,-4161,-4258,-4365,-4441,-4485,-4521,-4576,
+-4652,-4721,-4732,-4660,-4555,-4530,-4669,-4945,-5248,-5501,-5718,-5938,-6137,-6237,-6193,-6043,-5852,-5653,-5450,-5264,-5129,
+-5051,-4998,-4938,-4875,-4825,-4789,-4755,-4718,-4684,-4652,-4613,-4565,-4521,-4489,-4458,-4413,-4355,-4298,-4246,-4194,-4140,
+-4096,-4072,-4064,-4054,-4029,-3989,-3944,-3904,-3870,-3833,-3786,-3731,-3676,-3624,-3570,-3512,-3448,-3380,-3308,-3236,-3169,
+-3107,-3039,-2957,-2868,-2786,-2718,-2654,-2582,-2501,-2426,-2370,-2331,-2300,-2264,-2216,-2160,-2108,-2065,-2028,-1991,-1951,
+-1911,-1874,-1839,-1804,-1768,-1730,-1684,-1631,-1576,-1526,-1479,-1429,-1375,-1323,-1274,-1226,-1175,-1121,-1066,-1012,-957,
+-901,-840,-771,-695,-618,-543,-468,-391,-313,-236,-157,-72,15,101,181,260,342,425,508,591,676,
+759,835,907,979,1052,1122,1187,1248,1307,1363,1415,1464,1513,1559,1599,1638,1680,1725,1768,1809,1852,
+1898,1944,1984,2025,2073,2129,2188,2241,2286,2322,2352,2380,2408,2434,2456,2475,2500,2533,2568,2594,2606,
+2614,2627,2649,2671,2686,2685,2671,2650,2633,2626,2625,2623,2621,2624,2633,2639,2635,2627,2630,2658,2718,
+2817,2958,3119,3254,3318,3305,3259,3234,3254,3315,3392,3462,3496,3470,3380,3253,3132,3051,3021,3029,3047,
+3051,3030,2993,2956,2927,2903,2883,2867,2853,2840,2825,2813,2804,2797,2785,2771,2758,2749,2739,2728,2714,
+2699,2681,2659,2640,2635,2647,2665,2676,2678,2677,2678,2680,2682,2691,2708,2732,2761,2802,2857,2912,2941,
+2938,2929,2939,2961,2962,2931,2898,2862,2844,2840,2828,2801,2767,2732,2692,2649,2613,2586,2551,2494,2430,
+2388,2375,2375,2368,2354,2343,2335,2324,2310,2299,2294,2290,2285,2283,2290,2308,2347,2423,2535,2649,2712,
+2703,2650,2600,2571,2540,2480,2399,2330,2294,2284,2275,2247,2199,2138,2079,2036,2007,1976,1925,1860,1800,
+1758,1723,1680,1629,1583,1551,1533,1522,1517,1513,1504,1486,1460,1424,1374,1315,1260,1229,1222,1223,1217,
+1205,1194,1183,1165,1138,1113,1098,1093,1093,1094,1097,1106,1122,1143,1168,1195,1219,1241,1261,1278,1280,
+1259,1219,1178,1153,1143,1136,1123,1106,1086,1061,1026,980,935,903,888,881,866,834,795,767,754,
+746,726,697,669,645,620,592,569,563,569,574,563,533,493,455,433,431,438,436,421,398,
+375,356,346,350,368,380,360,298,213,134,80,49,23,-16,-72,-123,-146,-134,-112,-109,-138,
+-180,-212,-227,-232,-234,-226,-200,-157,-111,-71,-44,-43,-91,-201,-354,-515,-659,-788,-915,-1043,-1169,
+-1290,-1408,-1516,-1608,-1692,-1782,-1885,-1994,-2098,-2195,-2289,-2378,-2459,-2530,-2590,-2633,-2660,-2682,-2710,-2739,-2759,
+-2773,-2792,-2822,-2857,-2891,-2935,-3003,-3098,-3206,-3309,-3385,-3428,-3444,-3447,-3446,-3436,-3422,-3426,-3454,-3482,-3479,
+-3454,-3449,-3490,-3556,-3622,-3701,-3824,-3987,-4149,-4269,-4336,-4365,-4377,-4416,-4540,-4775,-5063,-5297,-5399,-5380,-5311,
+-5261,-5253,-5269,-5290,-5312,-5345,-5393,-5446,-5495,-5543,-5599,-5666,-5732,-5791,-5848,-5913,-5994,-6096,-6216,-6347,-6462,
+-6536,-6563,-6566,-6571,-6590,-6624,-6676,-6745,-6821,-6896,-6971,-7055,-7141,-7198,-7198,-7145,-7078,-7040,-7044,-7071,-7096,
+-7117,-7156,-7243,-7372,-7496,-7555,-7529,-7457,-7402,-7390,-7407,-7431,-7459,-7492,-7516,-7514,-7490,-7467,-7459,-7461,-7463,
+-7469,-7482,-7490,-7482,-7466,-7462,-7479,-7503,-7518,-7523,-7527,-7533,-7536,-7531,-7518,-7497,-7458,-7393,-7295,-7173,-7056,
+-6979,-6964,-6996,-7043,-7086,-7135,-7208,-7308,-7421,-7527,-7607,-7643,-7613,-7519,-7391,-7273,-7197,-7158,-7126,-7078,-7014,
+-6950,-6894,-6844,-6790,-6727,-6659,-6589,-6508,-6413,-6308,-6208,-6122,-6051,-5996,-5956,-5931,-5921,-5921,-5927,-5928,-5913,
+-5873,-5815,-5743,-5641,-5484,-5280,-5091,-4991,-4993,-5024,-5002,-4911,-4796,-4698,-4615,-4527,-4440,-4371,-4314,-4247,-4156,
+-4063,-3996,-3958,-3929,-3890,-3840,-3784,-3723,-3657,-3582,-3504,-3432,-3372,-3326,-3285,-3248,-3218,-3202,-3197,-3190,-3170,
+-3131,-3074,-2998,-2901,-2780,-2635,-2475,-2328,-2221,-2158,-2119,-2080,-2035,-1992,-1948,-1889,-1806,-1705,-1604,-1510,-1424,
+-1343,-1262,-1175,-1072,-958,-848,-761,-703,-665,-636,-599,-541,-455,-354,-253,-153,-42,83,207,308,393,
+490,608,729,834,928,1026,1127,1228,1336,1466,1600,1711,1798,1896,2021,2138,2214,2266,2338,2425,2488,
+2524,2601,2781,3058,3369,3645,3835,3906,3877,3819,3776,3702,3523,3275,3114,3147,3310,3452,3511,3551,3636,
+3742,3809,3835,3861,3903,3942,3962,3974,3984,3989,3992,4009,4045,4082,4100,4106,4116,4134,4147,4147,4140,
+4138,4142,4148,4154,4164,4181,4205,4226,4233,4228,4222,4228,4242,4255,4270,4294,4325,4348,4358,4372,4411,
+4469,4521,4552,4575,4605,4644,4679,4704,4729,4757,4784,4804,4826,4865,4911,4937,4931,4918,4931,4969,5004,
+5013,5008,5008,5013,5009,4996,4989,4994,5007,5037,5092,5156,5188,5171,5134,5121,5131,5121,5067,4993,4922,
+4828,4661,4418,4164,3974,3843,3694,3468,3211,3053,3093,3305,3565,3769,3900,3990,4051,4075,4085,4132,4222,
+4293,4270,4149,3990,3853,3761,3707,3683,3667,3627,3548,3454,3383,3346,3321,3287,3246,3211,3180,3146,3101,
+3047,2992,2939,2888,2838,2785,2731,2679,2631,2588,2553,2530,2512,2490,2462,2435,2411,2377,2326,2273,2241,
+2230,2215,2183,2145,2121,2112,2105,2095,2087,2078,2055,2010,1959,1919,1890,1861,1829,1799,1776,1758,1745,
+1741,1747,1753,1744,1709,1654,1592,1538,1497,1460,1418,1371,1322,1276,1242,1242,1297,1388,1457,1452,1377,
+1289,1233,1204,1170,1118,1067,1037,1025,1008,977,944,920,908,896,877,850,823,801,784,769,751,
+727,701,688,697,717,725,707,675,649,638,633,623,608,595,590,595,604,612,611,605,603,
+609,620,633,650,681,725,775,825,875,915,934,930,918,912,908,893,863,836,825,831,843,
+857,872,889,903,904,886,858,841,850,879,899,901,907,939,981,986,942,889,876,905,932,
+930,908,889,875,855,829,809,798,786,770,761,764,771,774,769,760,746,724,701,683,671,
+659,651,652,664,680,689,692,690,684,679,681,689,694,689,681,681,684,673,642,601,560,
+516,465,406,345,286,230,179,132,82,26,-22,-52,-67,-85,-118,-157,-195,-231,-270,-308,-341,
+-374,-416,-461,-496,-522,-551,-590,-629,-661,-689,-722,-757,-788,-814,-842,-872,-898,-924,-956,-995,-1034,
+-1069,-1107,-1154,-1205,-1255,-1301,-1349,-1397,-1438,-1475,-1512,-1552,-1594,-1640,-1692,-1746,-1794,-1836,-1878,-1921,-1962,
+-1999,-2039,-2085,-2135,-2183,-2225,-2265,-2300,-2331,-2362,-2396,-2435,-2474,-2512,-2554,-2599,-2643,-2686,-2731,-2781,-2832,
+-2876,-2916,-2956,-2996,-3036,-3081,-3136,-3197,-3256,-3307,-3352,-3392,-3430,-3470,-3515,-3563,-3611,-3654,-3697,-3739,-3778,
+-3810,-3839,-3870,-3900,-3927,-3954,-3983,-4015,-4048,-4080,-4111,-4140,-4166,-4192,-4219,-4245,-4267,-4287,-4312,-4341,-4368,
+-4389,-4411,-4436,-4461,-4481,-4503,-4531,-4558,-4574,-4581,-4592,-4610,-4629,-4644,-4658,-4674,-4682,-4680,-4676,-4678,-4681,
+-4675,-4665,-4658,-4651,-4634,-4608,-4587,-4577,-4567,-4547,-4520,-4496,-4476,-4452,-4426,-4404,-4386,-4363,-4329,-4286,-4242,
+-4199,-4160,-4123,-4084,-4041,-3994,-3948,-3905,-3858,-3804,-3748,-3697,-3651,-3604,-3556,-3512,-3473,-3433,-3386,-3334,-3287,
+-3246,-3209,-3166,-3113,-3058,-3015,-2989,-2963,-2917,-2846,-2763,-2683,-2610,-2541,-2473,-2406,-2344,-2301,-2291,-2311,-2343,
+-2359,-2341,-2278,-2163,-2003,-1832,-1696,-1607,-1532,-1429,-1283,-1119,-967,-850,-771,-725,-705,-701,-695,-669,-620,
+-569,-542,-531,-493,-410,-333,-340,-441,-579,-709,-853,-1038,-1211,-1283,-1237,-1159,-1141,-1189,-1247,-1273,-1271,
+-1252,-1215,-1165,-1124,-1103,-1088,-1058,-1009,-951,-892,-838,-802,-786,-771,-735,-684,-647,-637,-637,-626,-613,
+-635,-710,-818,-924,-1005,-1061,-1096,-1110,-1103,-1091,-1093,-1117,-1146,-1163,-1169,-1179,-1194,-1208,-1224,-1255,-1296,
+-1312,-1267,-1181,-1111,-1098,-1123,-1147,-1156,-1171,-1213,-1282,-1362,-1438,-1496,-1527,-1540,-1553,-1580,-1607,-1611,-1576,
+-1511,-1438,-1395,-1414,-1504,-1640,-1783,-1906,-2003,-2078,-2142,-2208,-2286,-2365,-2420,-2450,-2484,-2550,-2638,-2721,-2796,
+-2884,-2971,-2998,-2933,-2846,-2871,-3073,-3375,-3626,-3746,-3778,-3817,-3902,-4002,-4074,-4128,-4213,-4348,-4485,-4544,-4493,
+-4385,-4294,-4247,-4209,-4158,-4127,-4168,-4280,-4402,-4478,-4506,-4519,-4540,-4563,-4568,-4531,-4443,-4339,-4294,-4367,-4534,
+-4724,-4914,-5165,-5525,-5918,-6190,-6250,-6143,-5970,-5784,-5584,-5376,-5203,-5089,-5017,-4954,-4891,-4841,-4803,-4769,-4733,
+-4701,-4669,-4631,-4587,-4549,-4521,-4492,-4451,-4399,-4346,-4292,-4235,-4178,-4130,-4100,-4082,-4066,-4043,-4010,-3972,-3937,
+-3904,-3868,-3819,-3759,-3699,-3644,-3592,-3539,-3483,-3419,-3345,-3265,-3190,-3125,-3061,-2983,-2894,-2810,-2741,-2681,-2614,
+-2537,-2461,-2402,-2366,-2341,-2310,-2263,-2206,-2151,-2108,-2073,-2039,-2002,-1965,-1928,-1890,-1849,-1808,-1766,-1719,-1665,
+-1611,-1561,-1514,-1465,-1415,-1366,-1318,-1267,-1213,-1156,-1100,-1045,-988,-929,-865,-793,-714,-635,-561,-489,-415,
+-339,-263,-185,-102,-14,71,152,231,312,392,472,554,638,720,796,871,947,1022,1090,1153,1218,
+1284,1343,1395,1443,1491,1538,1579,1618,1661,1708,1754,1799,1845,1892,1933,1969,2008,2057,2116,2180,2242,
+2297,2337,2362,2382,2409,2442,2469,2483,2495,2515,2543,2566,2578,2585,2596,2615,2638,2658,2668,2659,2638,
+2619,2614,2619,2623,2625,2629,2640,2648,2647,2647,2659,2692,2746,2836,2970,3125,3243,3279,3248,3207,3201,
+3235,3289,3354,3422,3467,3451,3358,3219,3085,2993,2952,2946,2951,2946,2922,2889,2862,2847,2838,2831,2829,
+2832,2831,2820,2803,2791,2783,2775,2761,2747,2738,2735,2730,2724,2715,2702,2686,2671,2667,2674,2683,2686,
+2687,2692,2701,2705,2706,2712,2731,2759,2788,2821,2863,2899,2909,2893,2881,2895,2922,2926,2898,2872,2839,
+2817,2800,2772,2735,2699,2664,2623,2580,2548,2527,2495,2443,2386,2351,2342,2339,2331,2323,2317,2310,2298,
+2289,2289,2291,2283,2267,2257,2261,2279,2316,2389,2500,2613,2677,2666,2607,2545,2502,2467,2419,2358,2299,
+2255,2224,2201,2178,2148,2105,2056,2015,1990,1964,1919,1852,1783,1728,1684,1639,1592,1551,1521,1501,1485,
+1476,1468,1455,1433,1401,1362,1308,1242,1181,1145,1140,1146,1147,1141,1139,1142,1138,1122,1099,1081,1076,
+1083,1103,1131,1159,1181,1198,1216,1238,1259,1276,1287,1294,1288,1259,1212,1166,1139,1129,1122,1106,1085,
+1062,1036,999,951,903,870,859,858,850,826,794,768,753,736,708,672,640,615,589,562,540,
+531,529,525,514,494,466,434,409,397,396,394,381,358,333,314,309,317,328,318,271,191,
+102,34,-2,-14,-24,-49,-93,-139,-167,-168,-153,-141,-150,-182,-224,-258,-272,-272,-272,-279,-282,
+-268,-230,-182,-150,-165,-241,-366,-511,-651,-782,-906,-1022,-1132,-1242,-1359,-1472,-1569,-1655,-1748,-1856,-1969,
+-2071,-2159,-2241,-2318,-2392,-2462,-2523,-2564,-2577,-2574,-2575,-2589,-2610,-2629,-2652,-2686,-2731,-2782,-2842,-2917,-3009,
+-3111,-3210,-3285,-3324,-3328,-3317,-3306,-3301,-3312,-3354,-3420,-3474,-3486,-3474,-3490,-3555,-3636,-3704,-3775,-3887,-4040,
+-4192,-4302,-4361,-4379,-4379,-4416,-4561,-4828,-5137,-5363,-5441,-5410,-5353,-5320,-5314,-5323,-5345,-5380,-5423,-5467,-5514,
+-5565,-5621,-5682,-5744,-5806,-5867,-5927,-5988,-6055,-6141,-6253,-6387,-6519,-6620,-6681,-6708,-6718,-6722,-6732,-6765,-6826,
+-6901,-6970,-7030,-7101,-7194,-7287,-7337,-7321,-7264,-7209,-7183,-7177,-7177,-7186,-7228,-7323,-7461,-7593,-7661,-7646,-7577,
+-7510,-7477,-7473,-7483,-7506,-7542,-7579,-7593,-7583,-7569,-7566,-7570,-7570,-7567,-7571,-7575,-7568,-7555,-7554,-7575,-7603,
+-7620,-7622,-7622,-7623,-7618,-7603,-7580,-7547,-7492,-7405,-7299,-7204,-7146,-7130,-7138,-7155,-7180,-7229,-7310,-7413,-7520,
+-7617,-7699,-7757,-7769,-7716,-7606,-7474,-7362,-7288,-7240,-7192,-7131,-7061,-6997,-6943,-6891,-6832,-6759,-6676,-6588,-6498,
+-6404,-6305,-6208,-6121,-6052,-6002,-5965,-5938,-5923,-5923,-5934,-5940,-5931,-5911,-5885,-5848,-5773,-5633,-5439,-5248,-5128,
+-5091,-5083,-5036,-4933,-4812,-4710,-4629,-4551,-4472,-4401,-4334,-4254,-4152,-4052,-3979,-3936,-3905,-3871,-3831,-3783,-3723,
+-3648,-3564,-3483,-3413,-3354,-3302,-3255,-3217,-3195,-3185,-3176,-3153,-3112,-3059,-3004,-2950,-2883,-2788,-2653,-2486,-2320,
+-2189,-2103,-2049,-2005,-1969,-1940,-1910,-1860,-1784,-1687,-1584,-1484,-1388,-1297,-1209,-1116,-1010,-898,-801,-737,-703,
+-679,-641,-578,-492,-390,-281,-168,-52,69,190,298,389,477,582,703,819,914,1000,1092,1190,1290,
+1405,1539,1672,1776,1861,1962,2089,2205,2282,2347,2433,2520,2571,2605,2697,2893,3162,3445,3703,3897,3979,
+3941,3852,3777,3682,3495,3254,3119,3190,3385,3539,3601,3646,3738,3845,3909,3934,3965,4010,4043,4051,4048,
+4047,4046,4050,4070,4102,4124,4129,4135,4158,4187,4201,4199,4198,4204,4210,4209,4207,4215,4234,4259,4277,
+4281,4272,4265,4271,4284,4299,4317,4344,4373,4390,4399,4420,4469,4527,4570,4590,4606,4635,4670,4702,4731,
+4762,4790,4808,4821,4848,4896,4945,4964,4950,4938,4957,4999,5027,5024,5009,5005,5010,5010,5003,5000,5006,
+5020,5049,5104,5169,5203,5187,5155,5150,5173,5175,5128,5052,4977,4887,4738,4521,4285,4087,3922,3730,3469,
+3193,3029,3070,3287,3555,3768,3910,4014,4088,4129,4166,4248,4368,4437,4376,4206,4020,3886,3808,3773,3778,
+3795,3764,3647,3492,3388,3365,3368,3334,3262,3201,3174,3160,3131,3083,3035,2994,2953,2901,2841,2781,2730,
+2687,2652,2627,2614,2603,2579,2540,2498,2467,2437,2393,2339,2298,2275,2251,2208,2168,2163,2192,2213,2195,
+2151,2114,2091,2062,2014,1956,1901,1850,1801,1762,1742,1738,1738,1736,1736,1741,1737,1710,1661,1608,1563,
+1524,1483,1444,1415,1392,1355,1303,1265,1279,1337,1385,1372,1306,1242,1222,1232,1228,1185,1118,1061,1028,
+1008,986,956,926,904,889,876,863,850,839,830,818,799,767,730,705,706,726,737,725,697,
+674,663,656,641,620,599,584,575,573,575,579,584,598,623,651,672,684,700,731,779,835,
+885,912,908,883,862,854,849,835,814,802,805,817,832,850,871,890,903,911,911,901,885,
+871,862,850,835,842,892,964,999,963,892,855,875,917,936,924,901,881,862,841,822,808,
+798,787,782,784,787,783,772,756,736,713,692,679,671,662,651,644,645,652,660,666,668,
+663,655,654,663,670,662,648,642,646,643,617,574,532,496,456,403,341,283,236,196,154,
+104,51,8,-18,-38,-64,-101,-143,-182,-222,-263,-302,-335,-367,-405,-444,-476,-504,-537,-578,-618,
+-651,-682,-717,-752,-783,-810,-839,-868,-892,-914,-943,-979,-1017,-1052,-1091,-1137,-1186,-1234,-1282,-1329,-1374,
+-1414,-1451,-1488,-1527,-1566,-1610,-1663,-1719,-1769,-1813,-1855,-1898,-1939,-1977,-2016,-2061,-2109,-2156,-2201,-2242,-2279,
+-2309,-2338,-2372,-2410,-2450,-2490,-2532,-2574,-2615,-2656,-2700,-2747,-2792,-2832,-2874,-2920,-2965,-3007,-3053,-3108,-3172,
+-3234,-3287,-3334,-3377,-3418,-3460,-3504,-3550,-3593,-3634,-3676,-3721,-3763,-3798,-3828,-3857,-3886,-3916,-3946,-3977,-4008,
+-4037,-4066,-4098,-4127,-4151,-4173,-4198,-4226,-4252,-4277,-4306,-4339,-4371,-4396,-4419,-4443,-4463,-4478,-4494,-4519,-4544,
+-4558,-4563,-4573,-4595,-4620,-4640,-4654,-4663,-4664,-4655,-4647,-4647,-4652,-4654,-4652,-4650,-4642,-4624,-4597,-4577,-4566,
+-4556,-4537,-4512,-4489,-4465,-4437,-4408,-4385,-4367,-4344,-4313,-4278,-4242,-4205,-4163,-4119,-4073,-4027,-3980,-3934,-3888,
+-3839,-3787,-3736,-3688,-3639,-3588,-3538,-3496,-3459,-3421,-3377,-3327,-3276,-3230,-3190,-3151,-3108,-3059,-3012,-2978,-2947,
+-2902,-2832,-2747,-2664,-2593,-2532,-2475,-2413,-2342,-2273,-2223,-2207,-2225,-2262,-2299,-2309,-2267,-2172,-2052,-1943,-1849,
+-1738,-1580,-1373,-1145,-929,-757,-645,-598,-595,-604,-595,-550,-482,-427,-416,-427,-400,-310,-211,-190,-267,
+-384,-494,-626,-819,-1038,-1198,-1257,-1256,-1252,-1257,-1251,-1236,-1222,-1201,-1154,-1086,-1035,-1020,-1018,-997,-949,
+-887,-829,-784,-759,-746,-720,-669,-612,-586,-595,-610,-605,-591,-606,-672,-777,-890,-981,-1034,-1046,-1031,
+-1015,-1013,-1030,-1058,-1087,-1114,-1135,-1147,-1144,-1131,-1130,-1163,-1219,-1253,-1230,-1164,-1103,-1082,-1090,-1096,-1090,
+-1088,-1113,-1172,-1252,-1334,-1393,-1412,-1402,-1392,-1410,-1461,-1523,-1566,-1573,-1554,-1538,-1557,-1617,-1697,-1778,-1853,
+-1926,-1997,-2065,-2145,-2252,-2380,-2500,-2604,-2711,-2834,-2950,-3028,-3080,-3148,-3224,-3238,-3145,-3015,-2996,-3165,-3449,
+-3697,-3822,-3862,-3903,-3989,-4098,-4191,-4266,-4352,-4462,-4562,-4593,-4537,-4451,-4405,-4412,-4419,-4386,-4352,-4376,-4462,
+-4545,-4572,-4557,-4538,-4524,-4498,-4454,-4404,-4349,-4290,-4249,-4251,-4285,-4321,-4392,-4608,-5039,-5586,-6036,-6238,-6212,
+-6075,-5904,-5709,-5490,-5285,-5130,-5025,-4950,-4893,-4849,-4812,-4773,-4734,-4701,-4669,-4632,-4595,-4566,-4545,-4521,-4485,
+-4440,-4393,-4340,-4280,-4221,-4172,-4135,-4105,-4081,-4061,-4040,-4013,-3982,-3948,-3907,-3853,-3787,-3719,-3659,-3606,-3557,
+-3510,-3456,-3388,-3306,-3225,-3155,-3092,-3020,-2932,-2841,-2762,-2696,-2634,-2567,-2499,-2443,-2404,-2380,-2353,-2311,-2256,
+-2203,-2161,-2126,-2090,-2052,-2014,-1976,-1934,-1886,-1838,-1791,-1743,-1691,-1639,-1591,-1545,-1498,-1450,-1402,-1353,-1300,
+-1243,-1188,-1133,-1075,-1013,-949,-882,-808,-729,-650,-576,-505,-433,-360,-287,-211,-130,-43,44,128,209,
+288,366,443,521,601,678,754,832,912,988,1054,1118,1187,1258,1320,1370,1416,1464,1511,1552,1590,
+1633,1679,1727,1775,1825,1871,1908,1943,1985,2040,2104,2179,2267,2356,2416,2430,2415,2409,2428,2457,2476,
+2486,2500,2522,2544,2561,2574,2586,2597,2607,2623,2639,2645,2632,2613,2606,2613,2624,2630,2636,2644,2652,
+2656,2666,2690,2729,2784,2871,3000,3142,3235,3243,3200,3172,3189,3228,3262,3302,3362,3417,3413,3323,3179,
+3039,2940,2883,2858,2847,2835,2814,2789,2774,2773,2779,2787,2800,2818,2829,2822,2802,2783,2774,2765,2750,
+2735,2727,2729,2732,2732,2728,2721,2709,2696,2688,2687,2689,2690,2694,2705,2721,2733,2740,2751,2773,2799,
+2819,2835,2853,2866,2862,2846,2840,2861,2890,2896,2872,2834,2810,2788,2762,2724,2682,2647,2615,2577,2538,
+2508,2481,2440,2383,2334,2312,2310,2309,2303,2301,2302,2294,2277,2266,2271,2278,2267,2242,2225,2227,2247,
+2282,2343,2433,2529,2588,2589,2543,2487,2440,2404,2366,2320,2269,2217,2170,2136,2114,2095,2065,2023,1985,
+1961,1939,1900,1833,1755,1687,1634,1590,1552,1521,1496,1473,1452,1435,1423,1406,1379,1342,1298,1243,1175,
+1111,1071,1062,1070,1077,1085,1102,1125,1138,1128,1100,1075,1067,1085,1123,1172,1215,1241,1255,1266,1279,
+1290,1293,1292,1288,1275,1242,1194,1148,1123,1113,1103,1083,1059,1038,1016,980,931,883,852,841,837,
+829,810,788,768,748,721,685,648,618,593,567,539,517,503,493,480,465,451,436,412,381,
+352,336,332,331,323,306,289,283,289,290,262,196,106,21,-35,-56,-55,-51,-65,-100,-141,
+-173,-186,-180,-165,-159,-181,-230,-280,-304,-301,-296,-311,-337,-350,-334,-296,-262,-259,-301,-385,-499,
+-630,-768,-899,-1010,-1103,-1197,-1308,-1427,-1531,-1619,-1711,-1819,-1931,-2029,-2110,-2183,-2252,-2319,-2385,-2448,-2492,
+-2500,-2480,-2461,-2465,-2484,-2505,-2528,-2562,-2611,-2671,-2736,-2811,-2902,-3011,-3121,-3205,-3236,-3221,-3192,-3184,-3212,
+-3275,-3365,-3461,-3525,-3541,-3543,-3585,-3676,-3769,-3831,-3884,-3976,-4109,-4243,-4339,-4386,-4388,-4370,-4402,-4565,-4868,
+-5199,-5418,-5476,-5438,-5393,-5373,-5367,-5370,-5395,-5441,-5491,-5534,-5579,-5637,-5705,-5770,-5829,-5889,-5951,-6012,-6067,
+-6122,-6195,-6295,-6419,-6552,-6673,-6768,-6829,-6854,-6853,-6845,-6860,-6911,-6985,-7052,-7103,-7159,-7244,-7352,-7441,-7474,
+-7451,-7401,-7354,-7318,-7293,-7289,-7326,-7416,-7543,-7667,-7741,-7742,-7688,-7624,-7581,-7558,-7547,-7549,-7576,-7618,-7651,
+-7662,-7663,-7673,-7688,-7694,-7686,-7675,-7666,-7657,-7650,-7658,-7684,-7715,-7734,-7741,-7743,-7739,-7718,-7679,-7633,-7587,
+-7525,-7437,-7339,-7273,-7263,-7290,-7317,-7333,-7362,-7430,-7535,-7643,-7728,-7791,-7841,-7873,-7865,-7797,-7682,-7554,-7445,
+-7365,-7303,-7242,-7177,-7112,-7052,-6994,-6932,-6861,-6780,-6690,-6594,-6496,-6401,-6309,-6217,-6134,-6069,-6024,-5991,-5962,
+-5942,-5939,-5948,-5956,-5956,-5955,-5958,-5944,-5876,-5733,-5535,-5339,-5203,-5140,-5107,-5049,-4945,-4822,-4715,-4631,-4556,
+-4482,-4413,-4343,-4254,-4144,-4035,-3953,-3905,-3875,-3847,-3816,-3774,-3714,-3633,-3542,-3457,-3385,-3323,-3270,-3227,-3198,
+-3180,-3164,-3135,-3090,-3033,-2976,-2927,-2885,-2839,-2767,-2652,-2499,-2333,-2187,-2077,-2000,-1949,-1916,-1893,-1863,-1813,
+-1741,-1656,-1563,-1463,-1356,-1248,-1144,-1042,-940,-844,-771,-731,-712,-685,-623,-525,-408,-289,-171,-50,70,
+184,284,372,459,557,670,786,890,980,1067,1163,1262,1363,1477,1609,1739,1846,1937,2041,2161,2269,
+2353,2439,2540,2624,2664,2701,2808,3006,3251,3508,3770,3992,4082,4016,3892,3816,3758,3606,3365,3197,3234,
+3416,3584,3676,3754,3867,3976,4035,4058,4088,4123,4138,4128,4117,4114,4113,4115,4132,4155,4164,4163,4176,
+4210,4242,4249,4242,4246,4262,4273,4271,4267,4272,4286,4302,4314,4319,4320,4320,4327,4337,4348,4365,4390,
+4416,4431,4443,4472,4525,4580,4614,4631,4648,4676,4706,4734,4765,4798,4821,4832,4845,4880,4933,4976,4983,
+4965,4959,4986,5027,5048,5037,5016,5010,5017,5022,5020,5019,5021,5030,5056,5112,5181,5221,5213,5185,5182,
+5203,5208,5168,5100,5032,4951,4820,4627,4406,4197,3995,3756,3460,3170,3016,3083,3325,3604,3807,3932,4029,
+4119,4188,4250,4338,4432,4446,4326,4133,3981,3913,3889,3870,3869,3877,3832,3691,3518,3430,3454,3493,3446,
+3322,3214,3172,3165,3144,3102,3064,3040,3013,2966,2904,2842,2788,2743,2704,2674,2657,2648,2631,2597,2557,
+2523,2491,2448,2396,2351,2321,2286,2238,2208,2234,2299,2333,2290,2201,2134,2112,2102,2065,2003,1939,1883,
+1834,1795,1776,1769,1758,1737,1720,1719,1718,1696,1656,1619,1591,1560,1515,1471,1449,1442,1416,1357,1296,
+1274,1295,1317,1298,1242,1196,1193,1217,1224,1183,1110,1046,1019,1019,1015,989,950,918,902,896,891,
+884,876,868,859,844,818,782,750,735,736,736,720,696,680,675,672,662,645,629,614,598,
+583,572,564,564,584,626,676,711,722,720,726,753,796,838,858,848,824,808,806,805,795,
+784,785,798,812,824,843,868,889,902,914,928,931,914,885,860,839,815,807,846,930,1003,
+1009,951,890,877,905,932,932,914,894,878,861,843,826,814,807,805,805,801,788,766,741,
+717,694,676,666,661,659,654,649,646,644,643,643,639,630,620,618,627,637,633,618,608,
+610,611,592,551,507,473,441,400,348,298,255,216,172,123,75,33,-1,-35,-69,-103,-137,
+-174,-217,-263,-304,-338,-368,-400,-433,-462,-492,-528,-568,-607,-641,-674,-709,-743,-773,-801,-831,-861,
+-885,-907,-932,-965,-1000,-1036,-1076,-1119,-1165,-1213,-1261,-1309,-1351,-1388,-1423,-1461,-1501,-1541,-1584,-1636,-1692,
+-1745,-1790,-1832,-1875,-1915,-1952,-1992,-2037,-2083,-2126,-2169,-2211,-2249,-2279,-2307,-2337,-2373,-2413,-2454,-2497,-2539,
+-2579,-2620,-2665,-2712,-2755,-2794,-2838,-2891,-2944,-2992,-3041,-3097,-3159,-3218,-3271,-3321,-3368,-3411,-3451,-3492,-3534,
+-3574,-3611,-3652,-3696,-3740,-3777,-3808,-3839,-3869,-3900,-3932,-3964,-3995,-4021,-4047,-4076,-4104,-4127,-4148,-4175,-4207,
+-4239,-4268,-4299,-4332,-4363,-4389,-4414,-4439,-4459,-4470,-4481,-4501,-4524,-4540,-4547,-4560,-4584,-4611,-4631,-4642,-4646,
+-4641,-4631,-4623,-4623,-4630,-4636,-4639,-4640,-4635,-4619,-4598,-4579,-4565,-4547,-4521,-4493,-4468,-4443,-4416,-4389,-4369,
+-4349,-4324,-4294,-4264,-4235,-4200,-4155,-4107,-4061,-4016,-3971,-3923,-3873,-3821,-3768,-3720,-3674,-3625,-3572,-3522,-3482,
+-3446,-3408,-3365,-3319,-3271,-3223,-3181,-3143,-3104,-3058,-3012,-2973,-2937,-2888,-2816,-2730,-2646,-2574,-2513,-2458,-2404,
+-2342,-2271,-2201,-2149,-2128,-2143,-2181,-2220,-2229,-2200,-2147,-2091,-2024,-1917,-1750,-1530,-1286,-1050,-849,-704,-623,
+-590,-578,-560,-515,-443,-376,-348,-349,-323,-235,-126,-81,-126,-216,-313,-439,-633,-870,-1073,-1190,-1233,
+-1234,-1205,-1157,-1118,-1104,-1087,-1029,-938,-862,-834,-841,-845,-828,-795,-757,-727,-713,-705,-677,-622,-564,
+-539,-547,-561,-559,-555,-574,-629,-714,-816,-909,-963,-966,-940,-925,-939,-975,-1011,-1044,-1073,-1090,-1076,
+-1024,-958,-918,-929,-978,-1021,-1027,-1000,-972,-968,-984,-1000,-1005,-1006,-1021,-1063,-1128,-1202,-1259,-1282,-1276,
+-1266,-1281,-1335,-1418,-1502,-1565,-1604,-1638,-1687,-1748,-1804,-1844,-1877,-1915,-1960,-2013,-2089,-2207,-2359,-2519,-2667,
+-2810,-2948,-3057,-3117,-3155,-3218,-3295,-3317,-3236,-3113,-3078,-3199,-3421,-3629,-3763,-3845,-3927,-4035,-4154,-4260,-4346,
+-4419,-4489,-4547,-4568,-4546,-4518,-4528,-4575,-4604,-4584,-4551,-4561,-4611,-4643,-4626,-4590,-4568,-4542,-4478,-4389,-4320,
+-4288,-4271,-4247,-4219,-4180,-4119,-4092,-4236,-4655,-5271,-5854,-6199,-6273,-6174,-6001,-5793,-5568,-5349,-5165,-5026,-4934,
+-4883,-4861,-4840,-4806,-4765,-4726,-4690,-4651,-4618,-4599,-4587,-4568,-4535,-4493,-4445,-4388,-4323,-4263,-4214,-4171,-4131,
+-4100,-4083,-4071,-4053,-4023,-3985,-3940,-3883,-3814,-3744,-3679,-3622,-3571,-3524,-3475,-3415,-3338,-3258,-3188,-3126,-3059,
+-2975,-2881,-2792,-2717,-2654,-2595,-2536,-2482,-2441,-2414,-2390,-2353,-2305,-2254,-2212,-2176,-2138,-2097,-2058,-2019,-1975,
+-1924,-1872,-1822,-1773,-1722,-1672,-1623,-1576,-1529,-1482,-1435,-1385,-1330,-1274,-1220,-1167,-1107,-1039,-969,-898,-825,
+-748,-671,-596,-523,-450,-377,-306,-233,-154,-69,16,100,181,259,335,409,485,560,633,707,785,
+867,942,1009,1074,1147,1220,1282,1332,1380,1430,1478,1518,1556,1598,1642,1688,1738,1789,1834,1871,1909,
+1958,2017,2084,2177,2312,2468,2577,2590,2527,2456,2425,2431,2449,2470,2498,2529,2551,2564,2576,2588,2590,
+2584,2585,2603,2625,2630,2619,2610,2616,2630,2640,2645,2651,2659,2671,2692,2726,2769,2825,2913,3039,3166,
+3233,3216,3168,3156,3191,3227,3237,3251,3304,3372,3383,3300,3155,3011,2905,2835,2793,2771,2758,2741,2722,
+2715,2724,2742,2761,2782,2806,2822,2817,2797,2778,2769,2761,2747,2731,2726,2733,2741,2742,2739,2734,2729,
+2719,2707,2698,2694,2697,2705,2721,2740,2760,2777,2796,2818,2834,2839,2835,2832,2831,2823,2812,2811,2829,
+2849,2852,2834,2778,2765,2748,2721,2682,2642,2611,2582,2549,2516,2486,2448,2391,2325,2279,2268,2277,2281,
+2281,2285,2289,2278,2254,2238,2243,2252,2241,2213,2193,2196,2218,2250,2295,2356,2423,2472,2483,2460,2421,
+2382,2348,2314,2273,2224,2170,2119,2081,2060,2045,2023,1989,1953,1927,1906,1871,1810,1732,1658,1599,1553,
+1517,1488,1462,1435,1408,1388,1374,1357,1328,1288,1242,1189,1125,1064,1023,1012,1017,1028,1048,1084,1127,
+1154,1146,1114,1083,1075,1095,1139,1195,1245,1277,1290,1294,1296,1292,1282,1270,1260,1243,1210,1161,1117,
+1091,1080,1066,1043,1022,1010,996,965,918,874,849,838,828,811,790,771,754,730,695,656,622,
+596,572,542,510,484,468,455,437,418,405,396,380,349,310,279,270,280,292,288,272,258,
+253,245,211,146,70,6,-30,-43,-43,-44,-60,-91,-129,-164,-186,-190,-178,-166,-182,-233,-293,
+-327,-325,-314,-322,-348,-368,-370,-356,-342,-341,-361,-409,-488,-602,-742,-882,-995,-1077,-1159,-1265,-1386,
+-1495,-1582,-1670,-1771,-1877,-1969,-2048,-2122,-2188,-2242,-2292,-2346,-2390,-2404,-2388,-2370,-2376,-2400,-2422,-2441,-2470,
+-2516,-2572,-2631,-2700,-2794,-2920,-3059,-3167,-3205,-3180,-3144,-3152,-3218,-3323,-3436,-3528,-3575,-3584,-3597,-3663,-3775,
+-3879,-3942,-3991,-4073,-4190,-4305,-4386,-4419,-4401,-4364,-4391,-4577,-4914,-5265,-5476,-5515,-5468,-5430,-5419,-5414,-5414,
+-5442,-5496,-5550,-5593,-5640,-5707,-5784,-5853,-5911,-5970,-6033,-6092,-6143,-6196,-6266,-6356,-6464,-6584,-6711,-6830,-6921,
+-6968,-6975,-6964,-6968,-7004,-7067,-7131,-7182,-7229,-7300,-7402,-7512,-7589,-7613,-7592,-7546,-7491,-7442,-7417,-7437,-7504,
+-7607,-7714,-7790,-7809,-7777,-7727,-7686,-7656,-7630,-7611,-7619,-7659,-7703,-7731,-7749,-7774,-7807,-7825,-7815,-7789,-7764,
+-7749,-7750,-7771,-7808,-7845,-7869,-7879,-7882,-7868,-7824,-7756,-7690,-7642,-7592,-7520,-7437,-7389,-7403,-7458,-7511,-7550,
+-7599,-7679,-7774,-7850,-7890,-7914,-7939,-7955,-7935,-7862,-7749,-7626,-7516,-7427,-7354,-7287,-7222,-7161,-7102,-7037,-6963,
+-6882,-6796,-6703,-6602,-6498,-6402,-6314,-6231,-6152,-6088,-6045,-6014,-5984,-5960,-5952,-5956,-5963,-5970,-5986,-6008,-6003,
+-5930,-5776,-5570,-5369,-5222,-5142,-5098,-5039,-4938,-4813,-4698,-4604,-4525,-4454,-4389,-4324,-4240,-4132,-4018,-3929,-3875,
+-3842,-3817,-3790,-3750,-3689,-3604,-3510,-3423,-3349,-3286,-3234,-3198,-3179,-3163,-3133,-3081,-3018,-2954,-2897,-2846,-2801,
+-2757,-2701,-2615,-2492,-2345,-2201,-2078,-1984,-1922,-1884,-1852,-1807,-1745,-1672,-1598,-1521,-1431,-1325,-1208,-1090,-978,
+-882,-809,-762,-736,-712,-662,-569,-441,-304,-175,-53,67,184,281,358,431,519,624,737,846,946,
+1042,1142,1247,1350,1450,1559,1684,1811,1923,2024,2128,2236,2335,2428,2533,2641,2716,2751,2801,2925,3115,
+3331,3575,3864,4126,4222,4118,3964,3913,3920,3810,3544,3301,3265,3418,3606,3745,3867,4003,4116,4170,4189,
+4208,4221,4207,4182,4174,4182,4183,4179,4188,4209,4220,4223,4241,4275,4296,4289,4275,4283,4310,4329,4332,
+4332,4336,4339,4340,4345,4357,4369,4375,4380,4385,4395,4413,4439,4462,4475,4490,4524,4576,4625,4655,4673,
+4695,4722,4748,4773,4804,4835,4853,4860,4878,4920,4971,4999,4993,4975,4977,5008,5047,5066,5058,5040,5033,
+5040,5050,5052,5049,5043,5046,5072,5131,5204,5251,5251,5228,5219,5230,5230,5198,5147,5094,5029,4919,4746,
+4531,4301,4059,3779,3456,3159,3014,3103,3371,3661,3855,3961,4054,4164,4266,4344,4407,4431,4357,4177,3996,
+3927,3967,4010,3989,3934,3881,3797,3651,3514,3498,3600,3674,3599,3410,3242,3171,3161,3144,3109,3080,3062,
+3038,2996,2941,2887,2837,2790,2746,2710,2685,2671,2657,2634,2603,2570,2536,2493,2442,2396,2358,2315,2267,
+2251,2300,2382,2413,2345,2226,2144,2129,2134,2109,2053,2000,1961,1929,1900,1875,1846,1803,1757,1735,1743,
+1748,1720,1670,1634,1618,1598,1554,1506,1482,1475,1452,1396,1331,1296,1294,1295,1269,1218,1176,1166,1179,
+1180,1145,1084,1037,1028,1044,1046,1018,975,943,932,930,923,913,902,892,882,873,861,841,812,
+784,763,742,718,694,684,685,687,682,673,666,658,646,628,608,585,569,577,618,675,719,
+731,720,708,713,736,767,788,789,782,781,789,793,786,780,787,804,817,827,847,875,898,
+911,922,935,934,910,883,881,897,900,883,883,939,1025,1071,1036,956,899,894,919,934,929,
+913,899,884,866,847,831,822,819,817,810,792,764,734,708,688,670,655,647,645,647,650,
+649,643,633,620,604,589,576,573,581,592,592,581,570,571,575,564,531,491,457,429,396,
+353,307,263,222,178,133,89,45,0,-45,-82,-110,-136,-172,-220,-269,-311,-344,-372,-400,-429,
+-457,-487,-520,-556,-591,-624,-657,-689,-719,-748,-777,-810,-842,-871,-896,-921,-950,-983,-1020,-1060,-1102,
+-1146,-1192,-1242,-1290,-1330,-1361,-1393,-1432,-1474,-1517,-1563,-1614,-1668,-1719,-1766,-1810,-1851,-1889,-1926,-1968,-2013,
+-2056,-2093,-2130,-2169,-2208,-2240,-2268,-2297,-2331,-2369,-2412,-2458,-2505,-2550,-2595,-2644,-2694,-2738,-2779,-2825,-2879,
+-2935,-2987,-3036,-3089,-3144,-3197,-3247,-3299,-3348,-3390,-3426,-3462,-3502,-3542,-3581,-3622,-3665,-3708,-3747,-3783,-3818,
+-3852,-3884,-3916,-3949,-3980,-4005,-4028,-4053,-4078,-4102,-4127,-4159,-4196,-4231,-4261,-4289,-4318,-4345,-4368,-4392,-4420,
+-4444,-4457,-4466,-4482,-4504,-4522,-4536,-4551,-4573,-4596,-4613,-4619,-4618,-4611,-4603,-4600,-4605,-4614,-4620,-4624,-4625,
+-4621,-4610,-4596,-4582,-4563,-4534,-4497,-4462,-4434,-4412,-4393,-4377,-4362,-4342,-4314,-4283,-4254,-4224,-4186,-4140,-4093,
+-4050,-4010,-3966,-3917,-3864,-3807,-3754,-3708,-3665,-3618,-3567,-3520,-3480,-3441,-3398,-3353,-3310,-3270,-3229,-3189,-3148,
+-3104,-3055,-3009,-2970,-2930,-2875,-2799,-2715,-2634,-2560,-2491,-2428,-2374,-2321,-2262,-2195,-2126,-2071,-2042,-2047,-2074,
+-2101,-2111,-2108,-2098,-2071,-2000,-1875,-1703,-1508,-1309,-1122,-960,-830,-732,-661,-610,-556,-482,-402,-353,-341,
+-321,-250,-150,-90,-103,-162,-238,-352,-533,-751,-936,-1043,-1080,-1071,-1027,-967,-925,-917,-910,-860,-763,
+-663,-605,-596,-621,-657,-685,-692,-680,-664,-648,-620,-576,-531,-505,-495,-484,-473,-476,-506,-557,-628,
+-719,-815,-883,-900,-884,-877,-899,-930,-948,-957,-966,-964,-926,-845,-755,-699,-695,-727,-761,-777,-775,
+-774,-789,-822,-864,-897,-915,-927,-952,-1002,-1071,-1138,-1186,-1211,-1221,-1236,-1271,-1329,-1402,-1472,-1532,-1594,
+-1667,-1748,-1817,-1863,-1890,-1910,-1934,-1970,-2037,-2146,-2285,-2433,-2573,-2708,-2833,-2930,-2992,-3047,-3124,-3202,-3224,
+-3167,-3088,-3082,-3186,-3354,-3518,-3650,-3768,-3886,-4007,-4121,-4226,-4312,-4373,-4412,-4441,-4463,-4477,-4494,-4531,-4581,
+-4612,-4606,-4591,-4604,-4633,-4634,-4603,-4580,-4584,-4569,-4485,-4357,-4259,-4224,-4221,-4212,-4192,-4156,-4089,-4033,-4122,
+-4480,-5079,-5717,-6171,-6344,-6284,-6093,-5855,-5619,-5403,-5208,-5039,-4922,-4877,-4887,-4905,-4897,-4865,-4824,-4782,-4739,
+-4705,-4689,-4679,-4658,-4621,-4573,-4518,-4453,-4383,-4321,-4271,-4224,-4177,-4140,-4120,-4108,-4086,-4051,-4011,-3968,-3914,
+-3848,-3777,-3710,-3647,-3587,-3532,-3479,-3421,-3352,-3278,-3211,-3150,-3087,-3011,-2924,-2834,-2751,-2681,-2619,-2562,-2510,
+-2469,-2442,-2420,-2389,-2344,-2296,-2254,-2217,-2178,-2138,-2099,-2062,-2020,-1971,-1917,-1864,-1813,-1762,-1711,-1660,-1610,
+-1561,-1514,-1467,-1417,-1362,-1306,-1252,-1197,-1135,-1064,-990,-917,-844,-768,-690,-614,-539,-465,-392,-321,-250,
+-175,-96,-17,61,139,215,290,365,441,516,588,660,736,814,887,953,1020,1094,1165,1225,1277,
+1331,1386,1435,1476,1515,1557,1597,1640,1689,1742,1788,1826,1870,1926,1986,2052,2160,2346,2579,2757,2797,
+2710,2583,2488,2443,2440,2473,2533,2588,2606,2590,2573,2570,2570,2558,2550,2565,2598,2622,2625,2620,2625,
+2640,2651,2657,2662,2674,2695,2725,2762,2805,2863,2954,3078,3190,3231,3193,3140,3142,3192,3226,3218,3217,
+3274,3362,3396,3321,3171,3016,2897,2816,2765,2739,2724,2707,2688,2681,2697,2726,2752,2772,2790,2800,2795,
+2781,2771,2768,2763,2751,2740,2741,2752,2760,2757,2751,2750,2753,2751,2738,2722,2712,2716,2730,2749,2769,
+2790,2812,2834,2850,2854,2845,2828,2814,2806,2800,2792,2787,2789,2793,2789,2778,2710,2704,2693,2672,2642,
+2612,2587,2561,2533,2504,2475,2430,2360,2283,2233,2225,2240,2253,2259,2266,2269,2254,2226,2207,2209,2216,
+2207,2183,2165,2168,2188,2216,2249,2290,2335,2371,2387,2380,2358,2329,2298,2262,2218,2166,2113,2068,2034,
+2012,1997,1980,1952,1917,1887,1862,1831,1780,1710,1639,1578,1529,1489,1454,1422,1390,1360,1340,1328,1314,
+1287,1248,1203,1154,1098,1045,1010,1000,1003,1011,1032,1076,1130,1163,1158,1126,1098,1092,1109,1142,1188,
+1237,1275,1294,1294,1286,1273,1256,1239,1225,1205,1169,1119,1072,1045,1032,1015,993,979,978,974,948,
+903,866,850,844,830,802,770,745,723,695,659,622,593,570,545,511,474,445,428,414,393,
+369,352,347,342,323,284,243,225,238,260,265,247,223,208,195,166,118,72,46,37,30,
+14,-10,-42,-77,-113,-148,-176,-191,-188,-178,-189,-235,-296,-338,-349,-347,-354,-368,-378,-380,-381,
+-389,-398,-410,-434,-485,-579,-710,-848,-962,-1045,-1125,-1228,-1345,-1450,-1537,-1622,-1719,-1816,-1900,-1980,-2062,
+-2130,-2169,-2189,-2216,-2252,-2275,-2278,-2280,-2305,-2344,-2377,-2400,-2427,-2466,-2513,-2561,-2619,-2710,-2849,-3015,-3153,
+-3214,-3200,-3173,-3194,-3277,-3386,-3480,-3539,-3560,-3565,-3592,-3674,-3798,-3914,-3990,-4052,-4138,-4249,-4357,-4432,-4458,
+-4426,-4374,-4401,-4608,-4970,-5330,-5528,-5549,-5497,-5467,-5465,-5461,-5460,-5488,-5544,-5601,-5646,-5699,-5772,-5853,-5924,
+-5986,-6049,-6114,-6171,-6221,-6277,-6348,-6431,-6520,-6623,-6747,-6878,-6991,-7060,-7086,-7088,-7088,-7106,-7149,-7208,-7264,
+-7314,-7372,-7458,-7565,-7664,-7726,-7741,-7716,-7662,-7600,-7554,-7545,-7581,-7653,-7743,-7820,-7856,-7843,-7805,-7771,-7746,
+-7720,-7694,-7690,-7720,-7766,-7801,-7829,-7867,-7914,-7944,-7939,-7908,-7876,-7859,-7864,-7892,-7937,-7983,-8015,-8030,-8029,
+-8001,-7934,-7843,-7765,-7720,-7689,-7638,-7573,-7538,-7565,-7642,-7727,-7798,-7865,-7933,-7988,-8011,-8007,-8003,-8012,-8016,
+-7988,-7915,-7809,-7690,-7577,-7480,-7401,-7332,-7267,-7204,-7140,-7071,-6992,-6904,-6813,-6715,-6609,-6503,-6408,-6328,-6252,
+-6177,-6110,-6062,-6027,-5995,-5968,-5953,-5951,-5957,-5972,-6001,-6031,-6022,-5940,-5781,-5577,-5377,-5223,-5130,-5074,-5011,
+-4910,-4786,-4670,-4577,-4495,-4415,-4343,-4279,-4207,-4113,-4006,-3915,-3853,-3815,-3786,-3757,-3718,-3656,-3568,-3472,-3384,
+-3312,-3251,-3202,-3172,-3159,-3144,-3105,-3039,-2965,-2897,-2836,-2774,-2712,-2659,-2610,-2549,-2459,-2341,-2210,-2085,-1981,
+-1904,-1849,-1798,-1736,-1661,-1587,-1519,-1451,-1375,-1284,-1174,-1053,-935,-845,-791,-763,-736,-686,-603,-482,-339,
+-194,-63,58,178,287,372,437,502,585,685,791,900,1012,1124,1232,1335,1435,1535,1642,1759,1882,
+2001,2113,2221,2324,2422,2522,2630,2725,2779,2812,2889,3044,3237,3430,3658,3957,4239,4331,4202,4034,4006,
+4054,3960,3663,3365,3291,3441,3656,3829,3976,4119,4228,4277,4292,4300,4292,4259,4230,4234,4254,4256,4243,
+4246,4270,4290,4300,4315,4338,4346,4329,4315,4328,4359,4382,4392,4397,4400,4393,4384,4385,4399,4412,4416,
+4416,4422,4439,4467,4496,4518,4528,4541,4575,4626,4671,4697,4713,4735,4761,4785,4809,4838,4865,4877,4885,
+4910,4956,5001,5018,5009,4996,5001,5028,5062,5084,5085,5072,5063,5067,5077,5081,5074,5064,5066,5098,5160,
+5232,5279,5286,5269,5260,5266,5267,5245,5207,5165,5116,5030,4882,4669,4412,4129,3818,3485,3190,3048,3138,
+3410,3705,3901,4005,4100,4222,4336,4406,4429,4388,4249,4042,3890,3899,4021,4104,4059,3935,3809,3685,3555,
+3484,3555,3722,3810,3697,3453,3243,3153,3141,3134,3113,3092,3071,3037,2992,2949,2909,2866,2819,2778,2747,
+2722,2699,2675,2649,2616,2581,2547,2511,2470,2429,2386,2337,2288,2276,2328,2411,2439,2367,2245,2160,2143,
+2147,2125,2081,2048,2034,2022,2000,1963,1905,1832,1779,1780,1820,1837,1793,1714,1659,1643,1631,1595,1551,
+1525,1514,1489,1438,1383,1349,1336,1322,1289,1242,1198,1172,1163,1152,1123,1085,1059,1058,1065,1053,1018,
+982,966,965,960,948,937,929,918,903,893,889,884,866,837,806,775,744,717,703,701,700,
+694,688,687,687,683,675,659,634,606,594,614,655,690,702,696,688,689,702,723,744,757,
+764,773,786,794,792,789,797,813,826,836,854,883,909,927,939,946,933,898,876,906,977,
+1025,1010,968,970,1034,1098,1091,1014,929,897,915,943,950,936,917,901,884,866,849,834,824,
+818,810,794,769,740,716,698,680,660,644,636,636,636,634,627,614,595,574,556,545,542,
+545,549,548,538,527,525,531,530,510,479,450,425,396,356,309,264,221,180,139,99,54,
+3,-45,-82,-110,-140,-182,-230,-276,-313,-344,-374,-404,-431,-457,-483,-511,-540,-570,-600,-630,-659,
+-687,-715,-747,-783,-818,-851,-881,-908,-935,-965,-1002,-1043,-1086,-1128,-1174,-1225,-1272,-1308,-1336,-1366,-1405,
+-1450,-1497,-1545,-1595,-1644,-1690,-1736,-1780,-1822,-1858,-1893,-1935,-1980,-2021,-2053,-2085,-2122,-2162,-2198,-2230,-2263,
+-2300,-2339,-2384,-2435,-2488,-2539,-2588,-2639,-2691,-2739,-2781,-2825,-2875,-2927,-2975,-3019,-3064,-3109,-3156,-3205,-3257,
+-3307,-3347,-3379,-3412,-3453,-3498,-3542,-3586,-3631,-3673,-3714,-3755,-3797,-3837,-3872,-3904,-3936,-3967,-3992,-4014,-4036,
+-4060,-4086,-4115,-4151,-4191,-4226,-4253,-4277,-4302,-4324,-4344,-4366,-4393,-4421,-4440,-4452,-4466,-4487,-4508,-4526,-4542,
+-4558,-4574,-4585,-4589,-4587,-4580,-4575,-4578,-4588,-4599,-4605,-4607,-4606,-4601,-4592,-4583,-4572,-4550,-4515,-4471,-4432,
+-4407,-4391,-4382,-4376,-4369,-4350,-4321,-4288,-4256,-4220,-4177,-4129,-4086,-4047,-4008,-3964,-3913,-3859,-3803,-3751,-3706,
+-3663,-3617,-3567,-3522,-3481,-3438,-3390,-3342,-3302,-3267,-3231,-3190,-3144,-3093,-3039,-2994,-2958,-2918,-2856,-2777,-2694,
+-2619,-2548,-2475,-2404,-2344,-2292,-2241,-2182,-2115,-2045,-1986,-1957,-1959,-1977,-1992,-2000,-2005,-1999,-1967,-1900,-1805,
+-1692,-1566,-1429,-1283,-1130,-979,-848,-748,-665,-574,-480,-419,-403,-392,-339,-252,-185,-169,-188,-229,-315,
+-466,-648,-793,-864,-879,-864,-826,-772,-730,-717,-715,-684,-606,-504,-416,-375,-400,-482,-578,-637,-640,
+-608,-570,-535,-502,-475,-451,-420,-383,-359,-369,-412,-470,-538,-627,-731,-818,-856,-858,-856,-863,-858,
+-830,-796,-775,-760,-725,-663,-600,-566,-566,-582,-598,-608,-613,-621,-641,-682,-739,-790,-818,-826,-840,
+-881,-951,-1034,-1113,-1173,-1209,-1228,-1245,-1276,-1326,-1384,-1442,-1501,-1571,-1654,-1737,-1804,-1849,-1874,-1895,-1934,
+-2006,-2106,-2217,-2326,-2435,-2549,-2662,-2757,-2834,-2910,-2990,-3049,-3052,-3007,-2978,-3023,-3143,-3286,-3412,-3525,-3644,
+-3765,-3872,-3966,-4058,-4144,-4207,-4241,-4266,-4298,-4337,-4374,-4410,-4446,-4471,-4482,-4495,-4522,-4547,-4541,-4517,-4519,
+-4552,-4554,-4471,-4335,-4225,-4184,-4180,-4177,-4169,-4158,-4129,-4099,-4167,-4452,-4969,-5583,-6095,-6369,-6381,-6202,-5944,
+-5698,-5488,-5291,-5096,-4944,-4884,-4911,-4964,-4986,-4970,-4935,-4894,-4853,-4820,-4801,-4787,-4762,-4720,-4667,-4606,-4535,
+-4464,-4403,-4353,-4303,-4252,-4210,-4182,-4155,-4117,-4072,-4030,-3992,-3943,-3880,-3809,-3741,-3675,-3608,-3544,-3483,-3423,
+-3361,-3295,-3229,-3165,-3100,-3032,-2956,-2874,-2790,-2711,-2642,-2583,-2534,-2496,-2471,-2451,-2421,-2379,-2331,-2287,-2249,
+-2211,-2173,-2137,-2103,-2063,-2014,-1959,-1905,-1852,-1800,-1748,-1696,-1643,-1592,-1542,-1495,-1444,-1388,-1330,-1273,-1214,
+-1150,-1080,-1007,-933,-859,-781,-702,-624,-550,-478,-409,-340,-271,-200,-130,-60,11,85,161,236,314,
+393,471,544,615,688,761,828,893,961,1033,1099,1155,1210,1269,1329,1380,1423,1466,1510,1549,1588,
+1636,1692,1740,1782,1831,1893,1953,2012,2120,2325,2599,2829,2918,2865,2741,2614,2515,2471,2509,2614,2709,
+2722,2651,2566,2523,2518,2518,2517,2532,2567,2602,2619,2623,2631,2645,2656,2661,2669,2687,2714,2745,2779,
+2819,2880,2977,3101,3200,3217,3161,3106,3119,3180,3216,3202,3198,3268,3384,3445,3381,3221,3044,2906,2816,
+2763,2735,2715,2691,2668,2663,2687,2725,2754,2767,2769,2767,2762,2760,2764,2769,2767,2758,2754,2761,2774,
+2779,2772,2764,2768,2783,2791,2781,2760,2746,2751,2771,2794,2813,2828,2845,2859,2866,2861,2845,2825,2807,
+2795,2785,2774,2760,2745,2731,2719,2710,2639,2629,2620,2607,2590,2573,2557,2539,2520,2499,2473,2424,2347,
+2261,2202,2188,2203,2223,2237,2244,2242,2224,2197,2178,2175,2176,2167,2152,2142,2145,2158,2177,2203,2237,
+2273,2302,2317,2315,2301,2280,2253,2214,2161,2104,2054,2017,1987,1963,1945,1930,1907,1872,1833,1802,1773,
+1733,1676,1613,1555,1506,1462,1423,1387,1354,1325,1306,1296,1285,1261,1225,1181,1135,1087,1046,1023,1018,
+1019,1020,1034,1074,1127,1160,1153,1126,1107,1107,1118,1135,1164,1209,1253,1276,1275,1261,1246,1231,1214,
+1195,1168,1128,1076,1027,998,983,968,949,940,946,947,924,883,851,844,844,829,792,748,711,
+680,650,619,592,569,547,520,485,446,415,392,374,349,321,303,303,311,305,272,225,197,
+202,223,229,208,179,161,149,129,99,83,91,109,107,75,24,-28,-72,-109,-143,-175,-197,
+-204,-202,-212,-248,-300,-345,-374,-395,-413,-420,-415,-407,-411,-425,-438,-444,-457,-497,-576,-689,-812,
+-919,-1006,-1092,-1195,-1303,-1398,-1482,-1573,-1672,-1763,-1838,-1916,-2003,-2076,-2104,-2099,-2100,-2124,-2154,-2176,-2200,
+-2243,-2300,-2352,-2392,-2430,-2473,-2517,-2557,-2604,-2681,-2807,-2971,-3122,-3206,-3215,-3204,-3233,-3308,-3392,-3450,-3479,
+-3495,-3514,-3560,-3652,-3779,-3901,-3994,-4072,-4164,-4275,-4386,-4471,-4504,-4468,-4409,-4440,-4661,-5035,-5388,-5567,-5573,
+-5523,-5503,-5510,-5509,-5507,-5533,-5588,-5647,-5699,-5760,-5837,-5917,-5988,-6055,-6126,-6195,-6252,-6302,-6360,-6432,-6506,
+-6581,-6671,-6788,-6923,-7044,-7131,-7182,-7205,-7211,-7215,-7237,-7286,-7348,-7406,-7461,-7530,-7623,-7720,-7796,-7835,-7835,
+-7800,-7743,-7686,-7652,-7656,-7701,-7776,-7855,-7903,-7900,-7863,-7829,-7813,-7803,-7791,-7790,-7811,-7846,-7877,-7907,-7950,
+-8004,-8044,-8050,-8031,-8011,-8000,-8002,-8022,-8061,-8109,-8150,-8172,-8167,-8126,-8045,-7945,-7862,-7818,-7795,-7761,-7718,
+-7702,-7747,-7842,-7949,-8037,-8101,-8141,-8152,-8134,-8104,-8084,-8079,-8067,-8026,-7952,-7852,-7737,-7623,-7523,-7445,-7378,
+-7311,-7240,-7171,-7102,-7024,-6933,-6833,-6727,-6618,-6514,-6426,-6352,-6281,-6207,-6135,-6079,-6037,-6001,-5969,-5948,-5943,
+-5953,-5980,-6019,-6045,-6019,-5920,-5759,-5568,-5380,-5225,-5120,-5049,-4975,-4872,-4757,-4663,-4590,-4510,-4408,-4306,-4226,
+-4161,-4085,-3994,-3905,-3837,-3790,-3754,-3722,-3684,-3623,-3534,-3434,-3345,-3275,-3219,-3172,-3143,-3132,-3122,-3086,-3022,
+-2946,-2874,-2805,-2730,-2652,-2587,-2537,-2487,-2417,-2321,-2205,-2084,-1969,-1870,-1788,-1715,-1641,-1569,-1502,-1439,-1373,
+-1304,-1230,-1138,-1025,-908,-823,-783,-760,-717,-633,-517,-381,-235,-92,39,162,280,385,465,526,587,
+663,755,861,985,1119,1241,1336,1416,1503,1607,1719,1834,1952,2074,2196,2314,2424,2529,2633,2730,2796,
+2824,2858,2972,3177,3400,3587,3779,4034,4284,4365,4243,4087,4061,4093,3975,3665,3378,3333,3514,3747,3924,
+4064,4199,4299,4341,4350,4354,4343,4312,4290,4303,4328,4328,4311,4313,4339,4361,4367,4372,4385,4390,4380,
+4376,4394,4422,4440,4447,4453,4456,4449,4439,4440,4450,4455,4449,4447,4459,4487,4522,4554,4572,4576,4587,
+4623,4677,4722,4743,4753,4770,4794,4817,4840,4865,4886,4896,4907,4936,4982,5022,5039,5038,5034,5037,5050,
+5073,5097,5107,5099,5087,5086,5096,5101,5092,5081,5088,5126,5189,5254,5298,5307,5298,5295,5308,5319,5307,
+5271,5228,5191,5137,5020,4811,4527,4208,3883,3561,3283,3142,3219,3477,3770,3970,4076,4160,4259,4340,4375,
+4365,4305,4168,3982,3860,3894,4026,4098,4022,3858,3700,3572,3475,3460,3575,3746,3804,3660,3407,3208,3129,
+3117,3110,3100,3092,3073,3031,2986,2956,2931,2890,2838,2800,2779,2759,2727,2688,2647,2605,2563,2529,2502,
+2475,2444,2406,2358,2308,2287,2324,2398,2437,2391,2289,2204,2168,2153,2126,2093,2075,2073,2067,2042,1994,
+1919,1838,1800,1839,1916,1945,1883,1776,1699,1675,1664,1633,1595,1572,1561,1537,1493,1449,1419,1397,1370,
+1332,1289,1250,1218,1194,1172,1146,1120,1102,1093,1078,1046,1009,990,993,999,991,975,969,971,964,
+943,923,915,914,902,879,852,823,791,759,736,722,710,698,691,694,700,703,703,701,689,
+663,639,632,644,658,667,675,689,706,720,732,745,756,762,767,776,786,791,794,801,814,
+826,835,849,873,901,927,948,957,939,897,871,907,997,1071,1068,1005,963,992,1059,1087,1043,
+968,924,931,959,969,956,934,916,902,888,871,850,830,816,806,795,776,751,731,716,700,
+681,662,649,637,623,609,599,588,573,554,540,534,531,527,521,512,499,486,480,484,490,
+483,463,440,418,391,355,312,269,228,188,147,107,63,16,-30,-71,-109,-151,-198,-242,-277,
+-306,-338,-373,-407,-434,-458,-479,-501,-523,-548,-575,-604,-631,-660,-692,-728,-765,-801,-836,-867,-895,
+-920,-947,-983,-1025,-1067,-1109,-1155,-1204,-1250,-1286,-1314,-1346,-1385,-1431,-1479,-1528,-1576,-1620,-1658,-1698,-1741,
+-1781,-1815,-1848,-1889,-1934,-1975,-2007,-2040,-2080,-2124,-2166,-2206,-2248,-2292,-2335,-2380,-2430,-2484,-2535,-2582,-2629,
+-2679,-2726,-2768,-2809,-2852,-2898,-2940,-2979,-3017,-3057,-3102,-3152,-3206,-3257,-3297,-3329,-3364,-3407,-3456,-3505,-3552,
+-3597,-3640,-3682,-3726,-3774,-3819,-3857,-3890,-3921,-3951,-3977,-4001,-4025,-4051,-4078,-4109,-4146,-4186,-4220,-4245,-4265,
+-4286,-4306,-4324,-4343,-4368,-4397,-4422,-4439,-4455,-4474,-4495,-4514,-4528,-4539,-4549,-4558,-4564,-4565,-4561,-4559,-4565,
+-4576,-4586,-4591,-4592,-4589,-4582,-4573,-4563,-4551,-4530,-4495,-4454,-4420,-4400,-4390,-4386,-4385,-4379,-4362,-4335,-4302,
+-4266,-4223,-4173,-4124,-4083,-4046,-4004,-3957,-3907,-3856,-3806,-3757,-3711,-3664,-3612,-3560,-3513,-3471,-3428,-3381,-3335,
+-3295,-3257,-3214,-3167,-3115,-3059,-3007,-2967,-2938,-2898,-2834,-2750,-2668,-2596,-2529,-2459,-2392,-2330,-2275,-2219,-2163,
+-2104,-2038,-1974,-1928,-1909,-1906,-1901,-1889,-1878,-1869,-1854,-1826,-1790,-1747,-1692,-1620,-1523,-1398,-1249,-1100,-969,
+-850,-729,-613,-535,-505,-485,-429,-341,-265,-219,-191,-178,-218,-339,-506,-648,-725,-749,-744,-718,-671,
+-621,-587,-566,-537,-483,-400,-308,-247,-262,-359,-488,-577,-590,-549,-493,-445,-410,-382,-352,-312,-270,
+-253,-283,-347,-419,-489,-571,-666,-746,-786,-790,-779,-757,-712,-646,-588,-560,-554,-544,-522,-504,-502,
+-509,-512,-511,-513,-521,-533,-553,-592,-646,-693,-716,-721,-733,-773,-843,-931,-1025,-1108,-1163,-1190,-1207,
+-1238,-1291,-1354,-1413,-1464,-1513,-1572,-1642,-1714,-1772,-1811,-1846,-1902,-1989,-2089,-2181,-2261,-2350,-2458,-2569,-2662,
+-2737,-2807,-2871,-2904,-2891,-2859,-2866,-2947,-3077,-3204,-3301,-3386,-3481,-3581,-3667,-3739,-3816,-3900,-3973,-4022,-4061,
+-4109,-4165,-4212,-4244,-4269,-4293,-4318,-4351,-4390,-4418,-4418,-4410,-4428,-4472,-4486,-4423,-4310,-4219,-4186,-4185,-4180,
+-4167,-4158,-4149,-4146,-4204,-4406,-4794,-5317,-5849,-6241,-6392,-6298,-6062,-5814,-5606,-5411,-5198,-5009,-4910,-4912,-4956,
+-4976,-4961,-4931,-4901,-4874,-4851,-4836,-4825,-4807,-4775,-4731,-4674,-4608,-4543,-4487,-4437,-4385,-4334,-4290,-4252,-4207,
+-4150,-4095,-4052,-4015,-3967,-3903,-3832,-3765,-3700,-3634,-3567,-3502,-3441,-3381,-3320,-3254,-3183,-3110,-3041,-2974,-2902,
+-2820,-2736,-2663,-2606,-2563,-2533,-2509,-2485,-2452,-2410,-2363,-2319,-2278,-2237,-2199,-2165,-2131,-2092,-2043,-1988,-1933,
+-1881,-1831,-1780,-1728,-1672,-1616,-1563,-1512,-1460,-1403,-1343,-1282,-1221,-1158,-1091,-1022,-949,-873,-794,-714,-637,
+-564,-496,-432,-368,-302,-235,-172,-109,-42,30,106,183,262,343,422,496,566,637,706,770,832,
+900,969,1030,1083,1138,1201,1263,1316,1363,1413,1461,1500,1539,1590,1649,1702,1746,1798,1864,1923,1973,
+2060,2235,2481,2709,2840,2864,2811,2704,2576,2498,2546,2710,2867,2888,2761,2589,2479,2452,2465,2481,2502,
+2535,2570,2596,2610,2624,2638,2648,2653,2662,2682,2710,2739,2766,2803,2869,2975,3098,3183,3183,3118,3068,
+3091,3160,3199,3185,3184,3266,3404,3490,3439,3273,3075,2917,2818,2765,2735,2710,2680,2659,2663,2697,2739,
+2765,2766,2753,2741,2738,2747,2762,2771,2769,2761,2762,2773,2784,2785,2776,2771,2782,2803,2820,2819,2802,
+2788,2793,2816,2841,2857,2864,2869,2872,2870,2860,2846,2829,2811,2794,2776,2757,2736,2710,2682,2657,2639,
+2565,2541,2528,2519,2511,2504,2501,2500,2500,2495,2474,2423,2341,2251,2185,2163,2175,2199,2216,2222,2215,
+2196,2173,2155,2143,2133,2124,2120,2123,2128,2133,2141,2160,2191,2224,2249,2258,2254,2242,2227,2204,2163,
+2105,2043,1994,1961,1931,1902,1880,1867,1850,1816,1772,1733,1704,1671,1626,1574,1524,1479,1437,1400,1367,
+1337,1309,1289,1279,1269,1246,1210,1167,1124,1085,1055,1042,1041,1040,1036,1044,1080,1129,1155,1144,1116,
+1104,1111,1120,1127,1148,1190,1236,1259,1251,1233,1219,1208,1190,1163,1129,1088,1039,993,963,947,932,
+915,906,911,913,894,859,832,825,824,807,766,717,671,633,605,584,568,552,532,504,469,
+431,396,366,339,310,284,271,278,293,290,257,207,172,169,182,182,158,130,117,113,101,
+82,78,101,132,138,106,50,-8,-64,-115,-161,-197,-221,-233,-239,-253,-281,-319,-358,-398,-439,
+-472,-482,-471,-459,-462,-470,-469,-463,-474,-520,-599,-699,-801,-895,-983,-1074,-1173,-1269,-1352,-1434,-1532,
+-1636,-1723,-1787,-1855,-1940,-2016,-2047,-2039,-2034,-2056,-2093,-2127,-2160,-2207,-2267,-2330,-2391,-2449,-2507,-2562,-2610,
+-2657,-2715,-2803,-2928,-3058,-3147,-3178,-3187,-3223,-3289,-3352,-3391,-3420,-3458,-3508,-3572,-3662,-3781,-3903,-4005,-4090,
+-4182,-4293,-4414,-4518,-4564,-4533,-4472,-4509,-4736,-5105,-5438,-5595,-5591,-5546,-5536,-5550,-5553,-5554,-5581,-5636,-5697,
+-5756,-5824,-5903,-5980,-6050,-6121,-6198,-6271,-6329,-6380,-6441,-6512,-6581,-6648,-6729,-6839,-6966,-7085,-7180,-7252,-7299,
+-7319,-7320,-7329,-7368,-7429,-7493,-7550,-7616,-7697,-7782,-7851,-7894,-7911,-7900,-7862,-7811,-7768,-7751,-7770,-7828,-7903,
+-7955,-7953,-7909,-7867,-7858,-7873,-7890,-7904,-7921,-7941,-7959,-7986,-8032,-8090,-8135,-8153,-8157,-8160,-8162,-8158,-8156,
+-8176,-8219,-8263,-8287,-8276,-8226,-8143,-8046,-7965,-7917,-7893,-7871,-7855,-7869,-7933,-8035,-8140,-8218,-8261,-8273,-8259,
+-8226,-8189,-8159,-8134,-8100,-8044,-7968,-7874,-7766,-7654,-7558,-7485,-7423,-7355,-7278,-7203,-7134,-7056,-6961,-6853,-6743,
+-6637,-6540,-6455,-6379,-6305,-6228,-6155,-6093,-6045,-6004,-5970,-5949,-5945,-5964,-6004,-6051,-6065,-6010,-5884,-5715,-5536,
+-5365,-5218,-5109,-5028,-4943,-4839,-4741,-4680,-4638,-4562,-4429,-4283,-4175,-4110,-4051,-3972,-3886,-3813,-3758,-3716,-3682,
+-3647,-3591,-3504,-3401,-3310,-3242,-3189,-3142,-3109,-3097,-3094,-3073,-3022,-2952,-2879,-2805,-2723,-2638,-2565,-2507,-2452,
+-2384,-2298,-2194,-2077,-1951,-1827,-1716,-1620,-1540,-1478,-1428,-1374,-1308,-1240,-1173,-1097,-996,-888,-809,-773,-743,
+-674,-559,-422,-284,-144,-4,129,251,365,465,545,607,669,748,849,977,1129,1278,1387,1444,1488,
+1562,1675,1799,1914,2027,2149,2277,2401,2518,2630,2735,2822,2870,2881,2917,3058,3314,3592,3796,3939,4099,
+4270,4342,4266,4146,4093,4052,3879,3579,3354,3377,3594,3827,3990,4121,4253,4351,4384,4384,4386,4388,4373,
+4359,4368,4387,4388,4379,4387,4412,4425,4417,4412,4421,4433,4439,4450,4473,4494,4501,4499,4500,4504,4503,
+4502,4507,4513,4508,4497,4495,4511,4538,4569,4595,4609,4613,4627,4668,4728,4775,4791,4795,4807,4831,4855,
+4874,4893,4909,4922,4938,4967,5005,5039,5060,5071,5073,5069,5066,5078,5102,5119,5117,5107,5109,5120,5124,
+5115,5107,5118,5155,5213,5272,5313,5325,5319,5320,5340,5362,5356,5316,5273,5252,5230,5138,4924,4610,4268,
+3948,3655,3407,3280,3352,3597,3880,4074,4165,4217,4262,4282,4267,4240,4203,4119,3987,3889,3904,3993,4026,
+3933,3772,3628,3529,3469,3474,3564,3669,3667,3523,3336,3218,3175,3144,3098,3067,3064,3055,3022,2987,2974,
+2962,2921,2862,2818,2798,2776,2738,2692,2652,2617,2579,2540,2504,2471,2441,2414,2381,2335,2298,2311,2379,
+2443,2441,2369,2280,2218,2182,2153,2127,2110,2096,2076,2043,1994,1926,1859,1841,1898,1984,2010,1941,1829,
+1750,1721,1703,1667,1628,1606,1596,1575,1542,1508,1481,1451,1411,1366,1326,1296,1273,1253,1228,1198,1168,
+1144,1126,1100,1064,1034,1027,1038,1043,1031,1018,1019,1027,1020,993,966,952,945,931,909,885,860,
+829,796,766,743,721,703,698,705,715,719,721,727,729,716,693,674,665,662,665,683,716,
+749,765,768,768,768,765,759,759,767,778,786,793,801,809,815,824,842,869,899,926,941,
+931,898,871,889,957,1026,1038,986,928,927,984,1043,1049,1007,963,951,964,973,965,948,935,
+927,917,899,874,846,824,811,801,785,764,746,733,720,704,689,676,656,628,599,580,570,
+558,542,530,526,524,514,497,481,467,454,446,448,453,451,436,416,396,375,346,312,275,
+235,192,148,105,64,22,-21,-66,-113,-163,-211,-247,-273,-299,-334,-374,-409,-436,-457,-475,-492,
+-509,-529,-554,-581,-610,-643,-681,-721,-758,-791,-824,-854,-881,-905,-932,-966,-1005,-1045,-1086,-1132,-1180,
+-1224,-1259,-1291,-1327,-1368,-1411,-1457,-1505,-1551,-1590,-1622,-1655,-1693,-1731,-1765,-1800,-1841,-1886,-1928,-1966,-2006,
+-2054,-2103,-2149,-2194,-2242,-2292,-2337,-2378,-2422,-2469,-2512,-2550,-2589,-2633,-2679,-2721,-2761,-2802,-2845,-2886,-2924,
+-2962,-3004,-3052,-3105,-3162,-3214,-3258,-3297,-3337,-3382,-3431,-3478,-3525,-3568,-3610,-3652,-3697,-3746,-3793,-3833,-3868,
+-3899,-3929,-3957,-3985,-4015,-4045,-4074,-4104,-4138,-4176,-4209,-4233,-4251,-4269,-4288,-4307,-4326,-4349,-4377,-4404,-4426,
+-4444,-4463,-4482,-4501,-4514,-4521,-4528,-4538,-4550,-4558,-4560,-4561,-4565,-4573,-4578,-4581,-4582,-4580,-4572,-4559,-4545,
+-4530,-4510,-4481,-4450,-4426,-4411,-4403,-4397,-4391,-4380,-4361,-4336,-4305,-4266,-4216,-4161,-4112,-4072,-4033,-3989,-3942,
+-3897,-3854,-3810,-3764,-3715,-3662,-3603,-3546,-3497,-3454,-3412,-3370,-3331,-3292,-3245,-3189,-3131,-3076,-3022,-2976,-2944,
+-2920,-2882,-2815,-2730,-2646,-2573,-2506,-2441,-2381,-2325,-2266,-2204,-2145,-2092,-2037,-1980,-1933,-1902,-1877,-1845,-1806,
+-1771,-1747,-1727,-1707,-1691,-1681,-1670,-1650,-1612,-1548,-1454,-1340,-1218,-1088,-946,-806,-700,-633,-574,-490,-387,
+-295,-218,-136,-61,-51,-152,-339,-534,-672,-737,-744,-713,-665,-614,-564,-509,-449,-388,-323,-256,-209,
+-220,-300,-411,-490,-509,-484,-442,-394,-342,-289,-241,-199,-174,-185,-242,-329,-414,-482,-541,-594,-630,
+-638,-621,-592,-548,-488,-425,-386,-384,-399,-408,-409,-414,-424,-430,-423,-414,-417,-433,-454,-480,-517,
+-560,-595,-613,-626,-652,-696,-757,-835,-927,-1018,-1085,-1123,-1153,-1201,-1272,-1349,-1414,-1461,-1494,-1526,-1570,
+-1629,-1692,-1746,-1796,-1862,-1954,-2052,-2135,-2208,-2297,-2409,-2521,-2604,-2658,-2703,-2747,-2777,-2781,-2777,-2804,-2884,
+-2997,-3101,-3178,-3242,-3316,-3398,-3471,-3534,-3599,-3677,-3753,-3815,-3870,-3933,-4002,-4060,-4098,-4124,-4150,-4182,-4220,
+-4260,-4292,-4306,-4315,-4341,-4382,-4399,-4357,-4275,-4208,-4187,-4195,-4195,-4177,-4152,-4133,-4128,-4157,-4261,-4493,-4888,
+-5410,-5928,-6263,-6314,-6143,-5902,-5692,-5504,-5298,-5095,-4956,-4903,-4889,-4865,-4822,-4785,-4766,-4759,-4754,-4752,-4755,
+-4759,-4756,-4738,-4700,-4648,-4593,-4543,-4495,-4443,-4395,-4352,-4308,-4250,-4182,-4124,-4080,-4041,-3989,-3924,-3859,-3797,
+-3737,-3673,-3606,-3537,-3471,-3410,-3352,-3287,-3211,-3130,-3054,-2988,-2919,-2838,-2753,-2680,-2629,-2598,-2574,-2549,-2516,
+-2476,-2433,-2391,-2349,-2305,-2260,-2218,-2181,-2147,-2109,-2063,-2012,-1960,-1910,-1861,-1811,-1757,-1698,-1639,-1582,-1527,
+-1473,-1417,-1357,-1295,-1233,-1172,-1110,-1044,-973,-898,-821,-743,-665,-590,-523,-463,-405,-344,-281,-220,-160,
+-94,-21,55,132,211,291,368,439,508,578,645,708,770,836,903,962,1014,1070,1134,1196,1252,
+1305,1361,1414,1457,1499,1555,1621,1677,1723,1776,1840,1897,1939,1998,2114,2280,2450,2586,2678,2711,2655,
+2534,2457,2542,2779,3009,3059,2901,2659,2477,2406,2410,2437,2466,2498,2532,2560,2582,2602,2619,2629,2634,
+2643,2662,2689,2715,2741,2780,2851,2959,3075,3146,3136,3074,3035,3069,3143,3185,3174,3174,3256,3397,3494,
+3459,3301,3099,2931,2825,2767,2734,2705,2679,2669,2687,2729,2768,2785,2778,2759,2745,2745,2759,2775,2780,
+2771,2761,2763,2773,2780,2778,2773,2773,2785,2805,2825,2834,2828,2819,2822,2842,2865,2880,2882,2879,2874,
+2867,2857,2847,2835,2819,2797,2773,2749,2723,2690,2648,2603,2565,2487,2449,2431,2422,2416,2412,2419,2439,
+2465,2480,2465,2412,2329,2242,2179,2153,2159,2177,2192,2197,2189,2173,2154,2134,2112,2090,2077,2080,2095,
+2106,2109,2110,2123,2148,2174,2191,2195,2189,2179,2167,2147,2106,2045,1982,1933,1899,1865,1829,1802,1791,
+1782,1757,1716,1674,1641,1611,1577,1538,1499,1459,1420,1386,1358,1331,1304,1284,1273,1262,1237,1196,1153,
+1116,1086,1064,1054,1052,1048,1042,1050,1086,1133,1154,1135,1102,1090,1100,1114,1124,1147,1191,1237,1251,
+1232,1205,1190,1179,1155,1119,1082,1048,1012,974,943,921,903,885,874,875,875,860,832,806,791,
+779,755,716,671,627,589,562,548,543,535,517,487,450,410,373,339,308,279,259,255,268,
+278,265,227,180,148,139,139,128,103,80,75,79,75,63,62,82,111,125,116,90,46,
+-21,-107,-190,-246,-269,-276,-284,-303,-330,-358,-387,-425,-471,-511,-528,-526,-524,-528,-521,-494,-466,
+-475,-536,-631,-733,-826,-911,-995,-1082,-1171,-1253,-1327,-1406,-1503,-1607,-1688,-1742,-1796,-1870,-1944,-1985,-1993,
+-2001,-2033,-2081,-2125,-2160,-2197,-2243,-2301,-2370,-2445,-2519,-2592,-2664,-2728,-2779,-2831,-2904,-2995,-3072,-3116,-3146,
+-3196,-3265,-3325,-3369,-3418,-3486,-3560,-3631,-3710,-3814,-3930,-4035,-4124,-4216,-4329,-4460,-4577,-4636,-4614,-4564,-4607,
+-4830,-5176,-5478,-5614,-5608,-5569,-5565,-5581,-5589,-5597,-5631,-5688,-5750,-5814,-5886,-5966,-6042,-6111,-6184,-6262,-6336,
+-6397,-6454,-6518,-6590,-6658,-6723,-6798,-6896,-7007,-7114,-7211,-7295,-7363,-7401,-7413,-7422,-7454,-7507,-7569,-7631,-7702,
+-7781,-7853,-7907,-7943,-7967,-7975,-7963,-7933,-7898,-7870,-7866,-7897,-7956,-8004,-8002,-7953,-7905,-7898,-7931,-7974,-8006,
+-8025,-8033,-8043,-8069,-8120,-8182,-8229,-8256,-8279,-8305,-8321,-8313,-8296,-8298,-8329,-8366,-8380,-8354,-8292,-8210,-8125,
+-8056,-8011,-7986,-7977,-7988,-8030,-8104,-8195,-8276,-8329,-8350,-8347,-8327,-8292,-8250,-8207,-8163,-8111,-8047,-7972,-7884,
+-7785,-7683,-7594,-7526,-7467,-7397,-7316,-7235,-7160,-7079,-6981,-6874,-6769,-6673,-6580,-6488,-6398,-6312,-6231,-6159,-6097,
+-6046,-6004,-5973,-5955,-5956,-5984,-6039,-6093,-6096,-6011,-5851,-5665,-5489,-5331,-5197,-5093,-5010,-4921,-4815,-4727,-4688,
+-4665,-4587,-4430,-4252,-4128,-4066,-4017,-3943,-3854,-3775,-3715,-3669,-3635,-3603,-3555,-3476,-3376,-3285,-3219,-3167,-3119,
+-3080,-3065,-3066,-3058,-3022,-2962,-2893,-2821,-2742,-2659,-2581,-2510,-2440,-2363,-2278,-2184,-2072,-1943,-1806,-1675,-1559,
+-1464,-1398,-1353,-1309,-1251,-1183,-1118,-1049,-960,-863,-792,-751,-702,-605,-468,-327,-196,-66,70,202,320,
+426,522,602,669,742,841,975,1141,1317,1461,1535,1547,1561,1631,1755,1887,2002,2112,2231,2356,2476,
+2591,2703,2810,2902,2957,2971,2998,3131,3409,3744,3988,4095,4148,4228,4301,4294,4211,4099,3948,3711,3437,
+3291,3375,3611,3839,4000,4143,4294,4402,4431,4419,4418,4433,4434,4421,4415,4420,4427,4438,4461,4484,4486,
+4468,4457,4465,4481,4496,4515,4540,4558,4558,4550,4547,4549,4553,4560,4571,4578,4574,4566,4566,4576,4590,
+4606,4626,4643,4653,4673,4719,4780,4823,4834,4834,4847,4873,4897,4912,4925,4941,4959,4979,5005,5034,5060,
+5080,5094,5097,5088,5078,5084,5105,5124,5129,5130,5138,5150,5152,5143,5137,5147,5178,5229,5287,5333,5348,
+5341,5340,5363,5390,5384,5343,5310,5315,5317,5223,4980,4632,4277,3974,3715,3503,3405,3496,3746,4020,4192,
+4254,4268,4269,4244,4194,4155,4138,4101,4020,3945,3945,3998,4009,3919,3775,3653,3577,3534,3524,3547,3558,
+3507,3415,3359,3368,3367,3285,3150,3053,3027,3024,3002,2978,2977,2979,2948,2892,2845,2817,2785,2739,2701,
+2689,2690,2676,2631,2562,2489,2437,2418,2409,2375,2324,2312,2375,2469,2509,2458,2360,2278,2235,2213,2190,
+2161,2123,2083,2047,2012,1968,1920,1904,1940,1995,2003,1941,1852,1792,1764,1737,1692,1647,1621,1605,1587,
+1563,1542,1522,1490,1443,1390,1345,1318,1306,1299,1281,1247,1207,1177,1160,1143,1120,1098,1088,1088,1085,
+1077,1073,1079,1081,1064,1033,1006,992,980,960,933,906,879,850,820,793,768,742,719,713,723,
+735,737,734,740,749,749,737,722,713,706,704,716,747,777,789,782,773,770,767,759,752,
+754,763,772,777,781,784,787,793,810,836,864,884,894,897,892,886,896,932,983,1010,986,
+931,901,931,998,1043,1033,991,958,951,957,959,956,953,952,944,927,900,869,843,826,814,
+800,781,763,749,734,719,706,695,676,642,604,579,567,554,535,519,512,508,494,472,452,
+440,432,427,427,428,421,403,382,364,347,326,297,263,222,176,130,89,51,13,-28,-73,
+-120,-167,-210,-243,-271,-302,-340,-380,-412,-436,-455,-471,-484,-496,-513,-536,-563,-593,-628,-669,-710,
+-746,-777,-807,-836,-862,-888,-917,-951,-987,-1025,-1066,-1111,-1157,-1196,-1230,-1264,-1302,-1344,-1384,-1425,-1470,
+-1515,-1552,-1582,-1612,-1647,-1686,-1723,-1761,-1804,-1850,-1894,-1936,-1982,-2035,-2085,-2128,-2170,-2216,-2264,-2307,-2344,
+-2381,-2419,-2455,-2487,-2521,-2564,-2613,-2659,-2701,-2743,-2788,-2834,-2877,-2919,-2965,-3016,-3072,-3129,-3184,-3234,-3280,
+-3326,-3372,-3418,-3462,-3505,-3547,-3588,-3629,-3673,-3719,-3765,-3807,-3844,-3877,-3907,-3936,-3967,-4003,-4039,-4069,-4097,
+-4128,-4162,-4194,-4218,-4236,-4253,-4271,-4290,-4310,-4333,-4359,-4386,-4410,-4431,-4451,-4471,-4488,-4500,-4505,-4512,-4525,
+-4542,-4556,-4563,-4568,-4573,-4576,-4576,-4575,-4576,-4574,-4565,-4547,-4528,-4511,-4493,-4473,-4452,-4436,-4423,-4412,-4399,
+-4384,-4365,-4343,-4318,-4287,-4245,-4191,-4134,-4085,-4046,-4006,-3961,-3918,-3880,-3844,-3805,-3761,-3712,-3656,-3596,-3539,
+-3490,-3446,-3402,-3362,-3327,-3289,-3236,-3173,-3111,-3056,-3009,-2969,-2940,-2916,-2875,-2808,-2724,-2642,-2567,-2495,-2426,
+-2367,-2313,-2254,-2190,-2131,-2081,-2034,-1984,-1938,-1900,-1860,-1809,-1753,-1706,-1670,-1636,-1603,-1578,-1568,-1567,-1570,
+-1570,-1557,-1523,-1465,-1388,-1288,-1163,-1026,-902,-800,-699,-585,-467,-359,-249,-120,5,52,-38,-252,-505,
+-703,-792,-777,-710,-654,-628,-604,-541,-440,-336,-262,-219,-200,-212,-256,-311,-354,-379,-397,-401,-375,
+-311,-233,-170,-134,-129,-157,-220,-306,-387,-444,-472,-473,-451,-416,-378,-339,-293,-244,-211,-211,-238,
+-266,-278,-279,-286,-298,-305,-302,-299,-309,-332,-362,-397,-435,-470,-496,-520,-557,-607,-658,-705,-763,
+-846,-940,-1015,-1063,-1107,-1170,-1249,-1323,-1382,-1427,-1461,-1487,-1518,-1569,-1636,-1702,-1759,-1821,-1899,-1984,-2062,
+-2137,-2229,-2342,-2449,-2521,-2557,-2582,-2619,-2666,-2709,-2743,-2782,-2839,-2918,-3000,-3069,-3127,-3187,-3256,-3325,-3386,
+-3447,-3515,-3586,-3653,-3715,-3786,-3863,-3933,-3982,-4017,-4047,-4081,-4117,-4154,-4188,-4216,-4241,-4272,-4307,-4321,-4291,
+-4225,-4164,-4145,-4161,-4179,-4175,-4149,-4119,-4100,-4089,-4099,-4190,-4461,-4954,-5559,-6048,-6238,-6139,-5910,-5693,-5516,
+-5340,-5160,-5012,-4915,-4843,-4764,-4684,-4630,-4612,-4617,-4626,-4634,-4650,-4678,-4708,-4721,-4704,-4666,-4622,-4577,-4528,
+-4478,-4432,-4391,-4342,-4279,-4212,-4159,-4118,-4072,-4015,-3956,-3903,-3852,-3795,-3728,-3655,-3577,-3500,-3433,-3376,-3318,
+-3247,-3164,-3083,-3011,-2939,-2857,-2771,-2700,-2655,-2630,-2610,-2581,-2540,-2494,-2452,-2414,-2375,-2331,-2283,-2237,-2197,
+-2162,-2126,-2086,-2041,-1993,-1944,-1895,-1843,-1787,-1727,-1667,-1609,-1553,-1498,-1442,-1384,-1323,-1262,-1203,-1144,-1081,
+-1012,-939,-865,-788,-707,-627,-557,-499,-447,-392,-332,-272,-210,-144,-72,3,80,159,238,311,379,
+445,514,582,645,706,771,836,895,948,1006,1070,1134,1193,1252,1313,1369,1417,1466,1529,1598,1659,
+1708,1759,1818,1871,1909,1952,2019,2106,2200,2303,2412,2486,2471,2390,2366,2518,2818,3090,3159,2999,2733,
+2507,2390,2364,2383,2417,2453,2487,2517,2544,2568,2589,2603,2611,2620,2639,2669,2702,2735,2780,2854,2956,
+3057,3109,3091,3037,3012,3053,3128,3172,3169,3172,3242,3364,3455,3437,3308,3130,2967,2853,2783,2741,2713,
+2697,2702,2731,2771,2802,2813,2808,2797,2790,2791,2801,2808,2802,2783,2769,2768,2776,2779,2777,2776,2779,
+2784,2793,2807,2823,2830,2825,2822,2833,2855,2872,2879,2877,2873,2866,2856,2847,2837,2822,2799,2772,2745,
+2715,2672,2613,2545,2487,2414,2370,2349,2340,2333,2329,2341,2375,2418,2447,2438,2385,2307,2231,2178,2152,
+2146,2150,2158,2163,2161,2151,2136,2113,2081,2048,2027,2030,2050,2068,2075,2078,2087,2104,2119,2127,2129,
+2126,2120,2110,2088,2047,1989,1929,1883,1845,1804,1757,1722,1709,1709,1699,1670,1632,1596,1566,1541,1518,
+1490,1453,1411,1376,1351,1328,1304,1283,1272,1258,1229,1184,1140,1109,1087,1069,1058,1051,1045,1039,1049,
+1086,1130,1146,1121,1082,1065,1075,1095,1116,1149,1199,1240,1244,1214,1180,1160,1142,1109,1065,1029,1008,
+990,963,929,899,875,858,849,847,843,826,797,768,743,718,687,654,621,587,551,522,508,
+508,508,493,460,415,370,333,305,280,252,234,233,244,246,224,184,147,124,111,96,72,
+45,27,26,34,40,41,48,64,86,108,135,160,152,77,-58,-202,-298,-331,-328,-330,-350,
+-380,-407,-431,-461,-500,-537,-561,-576,-591,-598,-572,-511,-454,-454,-525,-639,-757,-861,-952,-1033,-1107,
+-1180,-1252,-1322,-1397,-1484,-1574,-1646,-1695,-1738,-1797,-1861,-1907,-1930,-1951,-1992,-2050,-2108,-2155,-2190,-2223,-2269,
+-2335,-2413,-2493,-2577,-2672,-2763,-2829,-2868,-2909,-2970,-3036,-3087,-3133,-3196,-3272,-3337,-3389,-3452,-3534,-3615,-3681,
+-3749,-3841,-3951,-4057,-4154,-4256,-4375,-4506,-4623,-4695,-4702,-4686,-4743,-4946,-5246,-5505,-5623,-5621,-5593,-5591,-5605,
+-5617,-5637,-5680,-5740,-5802,-5867,-5942,-6023,-6100,-6170,-6244,-6323,-6397,-6462,-6525,-6593,-6666,-6734,-6800,-6871,-6955,
+-7049,-7145,-7237,-7326,-7404,-7460,-7492,-7515,-7545,-7591,-7646,-7709,-7783,-7858,-7919,-7960,-7989,-8016,-8039,-8051,-8049,
+-8031,-8001,-7974,-7973,-8008,-8050,-8056,-8016,-7968,-7957,-7989,-8038,-8079,-8101,-8109,-8118,-8148,-8206,-8272,-8322,-8354,
+-8387,-8428,-8456,-8455,-8438,-8435,-8456,-8477,-8468,-8418,-8343,-8262,-8194,-8143,-8112,-8099,-8106,-8137,-8191,-8257,-8323,
+-8373,-8402,-8411,-8403,-8379,-8339,-8285,-8228,-8174,-8119,-8056,-7982,-7899,-7809,-7717,-7634,-7567,-7505,-7434,-7351,-7263,
+-7179,-7091,-6996,-6899,-6807,-6719,-6623,-6516,-6408,-6309,-6227,-6157,-6096,-6043,-6001,-5974,-5961,-5968,-6005,-6073,-6137,
+-6135,-6028,-5840,-5634,-5451,-5297,-5169,-5071,-4991,-4899,-4788,-4696,-4653,-4626,-4544,-4383,-4209,-4093,-4040,-3992,-3913,
+-3816,-3734,-3675,-3628,-3590,-3556,-3514,-3445,-3357,-3273,-3209,-3159,-3111,-3070,-3051,-3049,-3043,-3011,-2958,-2897,-2833,
+-2762,-2682,-2600,-2517,-2432,-2345,-2257,-2165,-2058,-1934,-1804,-1676,-1549,-1426,-1327,-1263,-1221,-1174,-1115,-1051,-984,
+-904,-820,-753,-702,-631,-513,-366,-230,-111,8,139,263,371,470,564,648,722,812,941,1114,1308,
+1486,1604,1641,1627,1636,1715,1844,1975,2087,2196,2314,2431,2542,2651,2761,2871,2975,3053,3078,3080,3164,
+3424,3800,4103,4205,4178,4183,4262,4314,4242,4047,3784,3501,3271,3197,3323,3565,3796,3972,4137,4306,4427,
+4462,4449,4448,4471,4483,4469,4449,4445,4460,4489,4523,4545,4543,4527,4519,4526,4537,4547,4562,4584,4602,
+4606,4603,4600,4599,4601,4609,4623,4635,4640,4642,4643,4642,4642,4650,4672,4697,4716,4740,4783,4833,4864,
+4869,4868,4885,4913,4935,4945,4956,4975,4998,5020,5043,5065,5086,5103,5112,5111,5102,5096,5102,5116,5130,
+5140,5151,5163,5169,5165,5156,5153,5160,5184,5231,5296,5351,5371,5364,5365,5393,5419,5407,5368,5352,5381,
+5388,5265,4975,4595,4238,3953,3720,3539,3482,3616,3889,4151,4290,4317,4314,4314,4291,4236,4181,4151,4118,
+4058,4008,4022,4084,4106,4030,3888,3756,3671,3621,3584,3545,3488,3427,3417,3504,3630,3657,3511,3273,3091,
+3024,3012,2991,2964,2961,2970,2956,2918,2883,2856,2817,2764,2732,2748,2792,2815,2775,2671,2544,2457,2438,
+2451,2431,2370,2338,2397,2509,2570,2518,2402,2308,2272,2265,2247,2204,2150,2102,2073,2055,2031,1994,1963,
+1955,1959,1945,1902,1850,1814,1786,1750,1702,1659,1628,1605,1584,1569,1559,1548,1524,1482,1427,1372,1334,
+1322,1322,1312,1278,1234,1205,1196,1195,1184,1161,1135,1115,1106,1110,1124,1134,1126,1097,1062,1037,1024,
+1012,989,959,929,900,872,848,827,804,774,744,732,738,748,747,742,745,755,761,760,760,
+764,764,755,749,757,771,773,762,751,754,763,766,760,756,757,761,764,765,765,767,778,
+802,834,858,864,860,867,892,921,942,964,1001,1037,1038,990,933,925,975,1031,1041,1005,963,
+945,946,950,952,957,963,963,950,925,894,865,844,829,814,796,778,762,744,724,708,697,
+680,649,612,586,572,558,536,514,501,492,474,449,428,419,417,416,414,408,394,372,350,
+333,319,298,268,230,187,143,102,68,35,-1,-43,-86,-126,-164,-202,-239,-277,-316,-355,-388,
+-414,-434,-451,-463,-473,-483,-499,-522,-548,-578,-613,-651,-689,-723,-754,-784,-812,-840,-868,-899,-933,
+-968,-1004,-1046,-1091,-1134,-1169,-1199,-1231,-1270,-1311,-1350,-1390,-1433,-1477,-1516,-1548,-1578,-1614,-1654,-1695,-1736,
+-1780,-1824,-1866,-1907,-1952,-2000,-2045,-2083,-2116,-2154,-2194,-2233,-2268,-2304,-2343,-2380,-2415,-2454,-2504,-2559,-2610,
+-2655,-2700,-2748,-2798,-2846,-2892,-2939,-2990,-3045,-3101,-3157,-3212,-3264,-3312,-3357,-3402,-3446,-3490,-3532,-3572,-3614,
+-3657,-3701,-3745,-3788,-3827,-3861,-3891,-3920,-3954,-3992,-4030,-4062,-4088,-4115,-4144,-4173,-4199,-4219,-4236,-4253,-4273,
+-4295,-4318,-4342,-4367,-4392,-4416,-4439,-4459,-4475,-4485,-4491,-4499,-4514,-4532,-4547,-4558,-4566,-4572,-4574,-4571,-4567,
+-4565,-4562,-4550,-4530,-4508,-4491,-4477,-4463,-4450,-4436,-4422,-4406,-4388,-4368,-4343,-4317,-4290,-4258,-4213,-4157,-4102,
+-4056,-4017,-3975,-3932,-3894,-3861,-3828,-3789,-3746,-3699,-3647,-3590,-3538,-3492,-3447,-3400,-3357,-3320,-3281,-3230,-3170,
+-3112,-3063,-3020,-2982,-2951,-2921,-2875,-2806,-2726,-2649,-2575,-2499,-2422,-2355,-2296,-2237,-2176,-2121,-2075,-2029,-1980,
+-1934,-1892,-1844,-1784,-1724,-1675,-1635,-1589,-1539,-1497,-1471,-1459,-1456,-1458,-1459,-1450,-1429,-1399,-1356,-1290,-1199,
+-1097,-994,-886,-770,-653,-536,-406,-256,-118,-62,-140,-342,-592,-785,-841,-760,-628,-555,-578,-630,-614,
+-505,-361,-249,-188,-163,-154,-150,-150,-161,-200,-264,-318,-318,-260,-185,-137,-125,-133,-149,-177,-221,
+-273,-310,-314,-281,-225,-173,-137,-111,-80,-47,-31,-45,-76,-101,-111,-118,-136,-164,-189,-206,-221,
+-239,-263,-291,-325,-361,-389,-412,-448,-511,-586,-642,-676,-715,-788,-882,-961,-1016,-1070,-1141,-1216,-1273,
+-1315,-1361,-1411,-1455,-1492,-1542,-1612,-1687,-1748,-1801,-1861,-1932,-2006,-2083,-2172,-2273,-2366,-2429,-2459,-2478,-2512,
+-2569,-2640,-2704,-2752,-2796,-2852,-2924,-2995,-3050,-3096,-3146,-3205,-3266,-3326,-3391,-3459,-3526,-3593,-3666,-3748,-3824,
+-3884,-3928,-3967,-4004,-4040,-4073,-4108,-4144,-4179,-4213,-4242,-4251,-4222,-4160,-4099,-4076,-4098,-4137,-4159,-4154,-4136,
+-4116,-4083,-4038,-4049,-4240,-4691,-5311,-5863,-6132,-6088,-5875,-5649,-5469,-5312,-5165,-5040,-4944,-4857,-4762,-4669,-4605,
+-4582,-4586,-4596,-4604,-4621,-4656,-4700,-4728,-4724,-4695,-4656,-4612,-4562,-4509,-4463,-4421,-4368,-4305,-4246,-4202,-4161,
+-4107,-4045,-3990,-3950,-3907,-3849,-3776,-3695,-3608,-3521,-3447,-3392,-3342,-3279,-3202,-3123,-3048,-2972,-2890,-2807,-2738,
+-2691,-2663,-2640,-2609,-2568,-2523,-2483,-2447,-2408,-2362,-2312,-2265,-2223,-2185,-2149,-2111,-2070,-2023,-1973,-1923,-1871,
+-1815,-1758,-1701,-1645,-1590,-1534,-1479,-1421,-1359,-1298,-1240,-1185,-1125,-1057,-986,-914,-836,-752,-667,-595,-540,
+-493,-442,-384,-322,-259,-193,-123,-50,25,104,182,254,320,385,452,519,582,643,707,771,830,
+886,946,1010,1076,1138,1199,1262,1321,1375,1431,1498,1570,1634,1688,1741,1794,1840,1880,1924,1974,2019,
+2061,2121,2203,2268,2275,2261,2333,2561,2875,3110,3139,2976,2731,2514,2379,2324,2326,2358,2400,2438,2469,
+2497,2525,2550,2570,2582,2594,2619,2661,2710,2759,2811,2882,2972,3051,3082,3054,3005,2990,3034,3105,3153,
+3164,3175,3229,3322,3395,3395,3312,3178,3033,2909,2820,2766,2741,2738,2755,2785,2816,2836,2846,2852,2857,
+2859,2859,2859,2855,2838,2812,2792,2789,2793,2793,2791,2791,2791,2784,2776,2781,2799,2813,2809,2798,2801,
+2824,2852,2871,2878,2877,2871,2861,2849,2835,2814,2786,2754,2722,2684,2632,2561,2482,2414,2351,2309,2289,
+2282,2280,2282,2295,2327,2369,2399,2393,2346,2279,2217,2176,2149,2129,2115,2114,2123,2133,2133,2121,2095,
+2056,2014,1984,1980,1996,2016,2027,2033,2042,2052,2059,2064,2069,2074,2074,2064,2040,2001,1951,1900,1856,
+1815,1766,1710,1663,1642,1642,1644,1630,1601,1565,1534,1515,1504,1485,1449,1404,1368,1346,1328,1305,1285,
+1271,1255,1222,1174,1130,1101,1082,1065,1052,1045,1042,1040,1049,1078,1113,1122,1094,1052,1031,1039,1064,
+1096,1140,1192,1227,1224,1190,1154,1131,1107,1066,1016,982,972,967,948,913,875,848,836,835,833,
+819,789,751,718,688,657,625,599,578,554,520,486,467,465,469,459,425,371,318,285,269,
+252,223,196,187,193,191,168,136,113,99,79,50,17,-7,-21,-26,-24,-13,6,32,55,
+73,101,157,230,265,199,30,-169,-316,-375,-377,-373,-390,-424,-459,-488,-514,-542,-571,-598,-629,
+-660,-669,-624,-531,-443,-424,-491,-612,-746,-871,-981,-1066,-1131,-1190,-1257,-1330,-1402,-1471,-1539,-1599,-1645,
+-1681,-1721,-1768,-1811,-1842,-1870,-1911,-1972,-2045,-2115,-2168,-2208,-2255,-2318,-2390,-2463,-2546,-2649,-2760,-2844,-2893,
+-2932,-2987,-3052,-3108,-3161,-3226,-3299,-3359,-3410,-3472,-3551,-3628,-3692,-3760,-3850,-3956,-4062,-4170,-4285,-4406,-4522,
+-4630,-4724,-4792,-4841,-4921,-5086,-5316,-5518,-5618,-5629,-5616,-5617,-5629,-5644,-5674,-5725,-5788,-5850,-5917,-5995,-6079,
+-6157,-6230,-6304,-6383,-6458,-6527,-6594,-6663,-6733,-6802,-6870,-6939,-7016,-7099,-7186,-7274,-7360,-7442,-7513,-7567,-7608,
+-7644,-7685,-7733,-7793,-7859,-7923,-7972,-8005,-8033,-8064,-8097,-8128,-8150,-8151,-8122,-8076,-8048,-8065,-8108,-8131,-8112,
+-8073,-8054,-8065,-8095,-8126,-8149,-8164,-8180,-8215,-8274,-8341,-8393,-8432,-8473,-8521,-8558,-8571,-8571,-8579,-8592,-8590,
+-8554,-8486,-8407,-8337,-8287,-8258,-8247,-8253,-8277,-8318,-8365,-8407,-8439,-8461,-8472,-8472,-8457,-8424,-8372,-8309,-8247,
+-8196,-8147,-8086,-8008,-7922,-7836,-7752,-7673,-7600,-7532,-7461,-7379,-7288,-7194,-7103,-7013,-6928,-6845,-6756,-6652,-6533,
+-6414,-6311,-6228,-6160,-6099,-6045,-6002,-5975,-5967,-5981,-6030,-6110,-6179,-6171,-6050,-5847,-5627,-5436,-5278,-5147,-5045,
+-4962,-4869,-4755,-4652,-4591,-4549,-4465,-4324,-4177,-4082,-4032,-3974,-3881,-3778,-3699,-3646,-3603,-3559,-3517,-3473,-3414,
+-3339,-3265,-3204,-3156,-3111,-3074,-3052,-3041,-3021,-2982,-2929,-2875,-2820,-2755,-2678,-2594,-2506,-2413,-2318,-2225,-2127,
+-2016,-1895,-1781,-1674,-1553,-1407,-1263,-1162,-1107,-1068,-1020,-961,-896,-824,-749,-684,-622,-536,-410,-266,-138,
+-27,86,207,319,415,509,606,694,775,877,1026,1214,1406,1561,1651,1674,1672,1707,1802,1930,2050,
+2158,2272,2391,2504,2612,2725,2839,2945,3047,3134,3164,3133,3154,3376,3783,4151,4278,4207,4156,4231,4311,
+4225,3954,3618,3334,3168,3157,3305,3548,3784,3964,4116,4261,4375,4427,4439,4455,4487,4508,4502,4486,4485,
+4505,4538,4569,4587,4589,4586,4587,4594,4598,4598,4603,4616,4631,4642,4650,4655,4655,4654,4657,4669,4686,
+4700,4708,4707,4700,4698,4712,4741,4771,4792,4816,4851,4887,4903,4901,4904,4924,4950,4965,4972,4985,5008,
+5033,5053,5072,5095,5118,5134,5137,5130,5124,5126,5133,5139,5143,5152,5166,5175,5171,5161,5155,5156,5161,
+5180,5229,5300,5361,5384,5384,5399,5436,5458,5434,5393,5390,5426,5414,5250,4925,4535,4187,3911,3687,3533,
+3529,3717,4009,4248,4344,4343,4342,4371,4384,4347,4280,4216,4157,4096,4064,4102,4187,4232,4169,4019,3861,
+3749,3684,3632,3566,3488,3443,3495,3659,3834,3861,3674,3378,3145,3046,3024,3000,2967,2954,2960,2957,2938,
+2923,2912,2881,2826,2783,2794,2853,2905,2888,2780,2626,2510,2483,2506,2497,2434,2392,2445,2558,2612,2542,
+2406,2307,2283,2289,2274,2228,2174,2134,2113,2101,2081,2043,1994,1947,1912,1884,1861,1841,1818,1786,1745,
+1705,1673,1645,1617,1594,1582,1576,1566,1549,1521,1478,1422,1371,1343,1335,1323,1292,1254,1231,1228,1231,
+1221,1191,1151,1117,1107,1125,1156,1176,1167,1133,1095,1066,1049,1036,1018,993,964,935,908,886,866,
+841,808,775,755,752,755,753,749,751,760,766,771,783,800,808,794,767,750,749,750,741,
+730,735,754,772,775,767,760,759,763,764,763,766,782,816,860,891,894,879,879,908,949,
+977,992,1019,1060,1079,1045,983,951,978,1026,1042,1018,988,974,969,958,945,944,957,969,968,
+949,919,885,857,837,820,803,786,770,752,730,709,694,677,650,616,591,579,568,548,524,
+505,489,467,438,414,403,401,401,396,385,366,343,323,309,294,271,236,194,152,113,81,
+53,21,-18,-62,-103,-136,-167,-202,-244,-288,-331,-366,-392,-412,-429,-444,-454,-460,-470,-488,-513,
+-539,-569,-601,-636,-668,-698,-727,-759,-788,-816,-844,-876,-909,-943,-979,-1021,-1065,-1105,-1138,-1166,-1198,
+-1237,-1279,-1322,-1365,-1409,-1453,-1492,-1526,-1558,-1593,-1631,-1669,-1708,-1747,-1785,-1822,-1858,-1895,-1936,-1975,-2009,
+-2039,-2071,-2105,-2141,-2180,-2223,-2269,-2314,-2359,-2408,-2465,-2526,-2580,-2626,-2670,-2719,-2770,-2820,-2868,-2916,-2967,
+-3021,-3074,-3130,-3185,-3238,-3286,-3331,-3376,-3425,-3472,-3518,-3561,-3604,-3646,-3689,-3732,-3774,-3814,-3848,-3878,-3909,
+-3944,-3982,-4018,-4048,-4073,-4097,-4122,-4148,-4174,-4198,-4217,-4235,-4255,-4279,-4303,-4326,-4349,-4375,-4402,-4428,-4448,
+-4461,-4469,-4476,-4487,-4503,-4520,-4532,-4540,-4549,-4557,-4560,-4557,-4551,-4548,-4542,-4529,-4508,-4488,-4473,-4461,-4451,
+-4440,-4425,-4408,-4389,-4369,-4348,-4323,-4294,-4265,-4230,-4186,-4133,-4082,-4040,-3999,-3955,-3913,-3877,-3846,-3810,-3768,
+-3724,-3680,-3631,-3579,-3530,-3486,-3443,-3396,-3349,-3308,-3267,-3219,-3167,-3119,-3076,-3033,-2992,-2957,-2922,-2870,-2799,
+-2722,-2651,-2582,-2506,-2426,-2353,-2287,-2225,-2168,-2118,-2074,-2025,-1972,-1923,-1878,-1826,-1765,-1707,-1661,-1619,-1568,
+-1509,-1456,-1416,-1385,-1361,-1343,-1328,-1309,-1291,-1284,-1287,-1283,-1256,-1207,-1144,-1071,-988,-894,-786,-663,-532,
+-429,-393,-450,-589,-761,-883,-871,-717,-518,-417,-470,-594,-658,-599,-461,-316,-198,-106,-28,35,75,
+72,14,-81,-157,-171,-130,-89,-87,-113,-133,-125,-103,-91,-99,-111,-100,-56,4,47,60,57,
+67,93,117,124,113,95,73,38,-11,-68,-119,-160,-192,-215,-233,-251,-276,-302,-323,-344,-391,
+-471,-559,-618,-643,-673,-738,-827,-902,-956,-1014,-1089,-1161,-1209,-1248,-1305,-1380,-1445,-1490,-1535,-1599,-1675,
+-1742,-1796,-1852,-1919,-1992,-2069,-2150,-2234,-2308,-2358,-2383,-2398,-2425,-2476,-2551,-2630,-2696,-2749,-2807,-2878,-2948,
+-2996,-3025,-3054,-3098,-3155,-3219,-3288,-3359,-3429,-3500,-3575,-3656,-3733,-3797,-3847,-3893,-3936,-3974,-4007,-4041,-4080,
+-4119,-4154,-4178,-4180,-4148,-4091,-4040,-4026,-4054,-4102,-4140,-4159,-4166,-4162,-4131,-4078,-4071,-4233,-4637,-5211,-5746,
+-6043,-6052,-5874,-5641,-5428,-5248,-5103,-5002,-4937,-4885,-4823,-4755,-4701,-4677,-4678,-4686,-4689,-4697,-4721,-4756,-4777,
+-4770,-4741,-4703,-4659,-4605,-4547,-4496,-4449,-4393,-4332,-4282,-4245,-4202,-4136,-4064,-4009,-3970,-3925,-3862,-3788,-3710,
+-3626,-3539,-3463,-3407,-3361,-3304,-3234,-3160,-3087,-3014,-2938,-2863,-2798,-2746,-2707,-2676,-2644,-2609,-2571,-2535,-2497,
+-2452,-2401,-2350,-2304,-2261,-2218,-2177,-2135,-2091,-2041,-1989,-1939,-1890,-1839,-1786,-1733,-1680,-1624,-1568,-1512,-1452,
+-1389,-1325,-1269,-1218,-1163,-1099,-1029,-957,-879,-794,-710,-641,-589,-545,-495,-436,-372,-308,-242,-175,-104,
+-31,44,121,193,259,324,389,455,519,582,646,709,770,828,889,953,1017,1080,1143,1206,1267,
+1326,1389,1458,1528,1595,1656,1714,1765,1807,1849,1898,1949,1986,2015,2057,2115,2164,2195,2262,2438,2714,
+2971,3079,3003,2816,2617,2456,2343,2281,2271,2300,2345,2386,2419,2448,2477,2505,2530,2547,2566,2600,2658,
+2728,2794,2854,2919,2991,3047,3056,3020,2974,2967,3011,3078,3128,3151,3172,3216,3282,3340,3359,3323,3234,
+3109,2974,2864,2801,2784,2796,2820,2845,2863,2874,2885,2901,2916,2922,2917,2908,2897,2878,2851,2828,2820,
+2819,2816,2808,2802,2793,2778,2762,2762,2780,2795,2790,2775,2776,2804,2843,2874,2887,2887,2879,2865,2847,
+2822,2789,2747,2703,2660,2615,2559,2489,2414,2351,2298,2261,2241,2238,2248,2264,2280,2301,2328,2349,2345,
+2309,2253,2202,2165,2135,2104,2080,2076,2092,2113,2122,2113,2085,2043,1995,1957,1945,1955,1971,1980,1985,
+1990,1997,2005,2013,2026,2038,2041,2029,2006,1974,1937,1896,1854,1809,1755,1695,1640,1606,1594,1594,1589,
+1570,1540,1510,1492,1484,1469,1436,1392,1359,1341,1327,1307,1284,1265,1245,1210,1163,1119,1090,1069,1050,
+1038,1036,1040,1043,1049,1065,1084,1082,1052,1013,992,1001,1030,1069,1117,1164,1191,1184,1154,1125,1104,
+1077,1031,980,947,939,939,924,888,846,818,813,819,816,789,743,697,663,636,608,579,557,
+543,524,492,455,429,422,426,419,386,330,276,247,238,224,187,146,125,127,127,111,90,
+77,67,45,13,-18,-39,-55,-70,-80,-73,-47,-14,10,25,53,122,225,298,268,115,-96,
+-276,-373,-401,-408,-428,-467,-513,-553,-582,-602,-622,-649,-689,-732,-744,-689,-575,-462,-419,-467,-578,
+-714,-855,-983,-1080,-1144,-1200,-1270,-1348,-1415,-1464,-1509,-1557,-1598,-1625,-1645,-1675,-1718,-1764,-1805,-1847,-1906,
+-1986,-2075,-2154,-2216,-2274,-2339,-2408,-2475,-2551,-2650,-2759,-2847,-2904,-2953,-3015,-3084,-3143,-3196,-3256,-3320,-3372,
+-3417,-3473,-3546,-3621,-3691,-3771,-3868,-3970,-4072,-4185,-4308,-4421,-4513,-4611,-4742,-4890,-5012,-5109,-5223,-5374,-5520,
+-5609,-5635,-5636,-5642,-5655,-5675,-5713,-5769,-5835,-5900,-5971,-6052,-6137,-6216,-6290,-6366,-6443,-6518,-6589,-6658,-6727,
+-6795,-6864,-6934,-7005,-7078,-7156,-7238,-7320,-7403,-7489,-7573,-7648,-7704,-7745,-7783,-7828,-7880,-7935,-7983,-8022,-8053,
+-8084,-8116,-8153,-8195,-8232,-8246,-8218,-8160,-8118,-8130,-8182,-8226,-8231,-8207,-8180,-8165,-8162,-8172,-8191,-8213,-8236,
+-8269,-8320,-8380,-8435,-8485,-8537,-8589,-8630,-8657,-8679,-8701,-8707,-8679,-8621,-8552,-8494,-8452,-8427,-8416,-8420,-8440,
+-8477,-8519,-8552,-8565,-8563,-8555,-8545,-8527,-8496,-8450,-8393,-8333,-8281,-8240,-8195,-8130,-8042,-7948,-7862,-7782,-7702,
+-7623,-7551,-7482,-7403,-7311,-7212,-7117,-7030,-6949,-6864,-6765,-6652,-6531,-6416,-6317,-6235,-6165,-6105,-6052,-6010,-5982,
+-5976,-6003,-6068,-6154,-6213,-6186,-6049,-5840,-5620,-5429,-5269,-5132,-5023,-4935,-4842,-4732,-4625,-4549,-4491,-4411,-4295,
+-4178,-4093,-4029,-3950,-3844,-3741,-3669,-3626,-3588,-3541,-3491,-3441,-3385,-3320,-3252,-3192,-3140,-3097,-3064,-3041,-3018,
+-2982,-2930,-2873,-2820,-2768,-2706,-2631,-2551,-2466,-2373,-2276,-2177,-2071,-1948,-1821,-1714,-1627,-1523,-1373,-1202,-1067,
+-992,-950,-905,-849,-790,-727,-659,-593,-525,-437,-317,-184,-62,47,159,273,374,463,554,651,740,
+823,928,1074,1246,1407,1531,1608,1652,1694,1771,1886,2009,2118,2224,2342,2462,2573,2688,2817,2940,3032,
+3109,3181,3207,3155,3130,3319,3745,4172,4336,4248,4157,4217,4306,4217,3924,3586,3353,3261,3292,3439,3667,
+3890,4037,4116,4181,4253,4321,4375,4426,4475,4508,4520,4525,4540,4565,4590,4607,4618,4626,4633,4641,4648,
+4653,4655,4654,4654,4658,4669,4686,4702,4709,4710,4713,4724,4741,4756,4762,4758,4751,4757,4781,4814,4838,
+4855,4878,4912,4938,4944,4942,4950,4972,4990,4997,5002,5020,5047,5070,5085,5100,5124,5152,5170,5169,5157,
+5151,5158,5167,5168,5165,5171,5182,5186,5179,5170,5170,5171,5171,5189,5241,5316,5373,5394,5405,5435,5475,
+5486,5452,5414,5415,5433,5379,5179,4850,4480,4146,3864,3638,3518,3576,3810,4100,4297,4352,4337,4348,4401,
+4440,4420,4353,4273,4196,4129,4099,4133,4209,4254,4201,4061,3902,3788,3722,3672,3608,3538,3504,3558,3696,
+3829,3828,3641,3360,3134,3036,3019,3008,2984,2971,2972,2966,2950,2946,2955,2948,2899,2834,2806,2841,2906,
+2928,2857,2717,2589,2542,2553,2546,2492,2454,2500,2598,2634,2552,2412,2318,2300,2309,2291,2246,2203,2176,
+2161,2144,2114,2068,2006,1939,1882,1846,1831,1825,1809,1780,1750,1729,1711,1683,1647,1619,1605,1592,1571,
+1551,1536,1516,1474,1420,1375,1349,1326,1296,1269,1255,1252,1246,1230,1201,1163,1129,1116,1133,1169,1196,
+1196,1172,1136,1101,1075,1059,1046,1028,999,967,939,915,890,862,833,808,790,781,777,774,771,
+771,774,778,785,802,825,836,817,779,749,745,754,752,739,734,750,775,787,781,771,770,
+777,781,780,780,794,831,881,922,938,930,919,924,936,941,942,963,1009,1046,1042,1007,985,
+1001,1032,1041,1032,1028,1034,1027,992,949,930,942,965,977,968,941,904,869,843,825,809,792,
+777,761,741,719,699,680,655,624,599,586,577,560,537,514,493,468,436,407,389,382,377,
+368,354,334,314,296,283,267,243,208,169,131,98,68,39,3,-40,-86,-126,-158,-185,-217,
+-256,-298,-337,-367,-388,-405,-421,-433,-441,-447,-458,-478,-503,-529,-558,-591,-624,-653,-679,-707,-738,
+-768,-795,-821,-850,-881,-914,-951,-992,-1034,-1071,-1104,-1136,-1171,-1211,-1256,-1303,-1351,-1396,-1438,-1476,-1509,
+-1539,-1568,-1599,-1629,-1658,-1687,-1718,-1751,-1783,-1816,-1851,-1891,-1929,-1965,-1998,-2033,-2072,-2117,-2168,-2222,-2274,
+-2325,-2379,-2439,-2498,-2551,-2594,-2637,-2684,-2736,-2787,-2837,-2889,-2944,-2998,-3052,-3105,-3158,-3209,-3255,-3300,-3347,
+-3400,-3452,-3502,-3547,-3590,-3632,-3673,-3715,-3756,-3794,-3827,-3858,-3891,-3929,-3967,-3999,-4025,-4049,-4072,-4096,-4121,
+-4147,-4173,-4195,-4215,-4237,-4262,-4288,-4311,-4335,-4362,-4392,-4420,-4439,-4450,-4456,-4464,-4477,-4494,-4508,-4516,-4521,
+-4528,-4535,-4537,-4534,-4528,-4525,-4521,-4510,-4495,-4479,-4465,-4454,-4443,-4430,-4414,-4393,-4372,-4351,-4330,-4304,-4274,
+-4242,-4209,-4168,-4122,-4078,-4037,-3995,-3949,-3905,-3870,-3837,-3797,-3751,-3705,-3662,-3615,-3562,-3511,-3466,-3424,-3382,
+-3338,-3296,-3252,-3204,-3158,-3117,-3077,-3033,-2988,-2948,-2908,-2853,-2782,-2707,-2638,-2571,-2500,-2426,-2356,-2289,-2225,
+-2166,-2117,-2071,-2018,-1960,-1906,-1858,-1806,-1747,-1693,-1648,-1605,-1552,-1495,-1443,-1397,-1351,-1308,-1271,-1237,-1200,
+-1166,-1152,-1163,-1183,-1190,-1183,-1167,-1144,-1108,-1052,-975,-886,-807,-762,-759,-791,-850,-925,-971,-920,-743,
+-516,-376,-395,-518,-625,-640,-566,-437,-276,-98,75,215,296,299,230,127,52,36,54,52,10,
+-46,-74,-57,-13,28,49,59,82,131,190,227,224,202,195,217,254,280,282,258,211,145,
+67,-8,-73,-124,-163,-188,-201,-211,-226,-243,-257,-280,-334,-423,-516,-575,-601,-630,-691,-770,-834,
+-881,-936,-1008,-1079,-1133,-1190,-1271,-1367,-1442,-1483,-1514,-1563,-1633,-1705,-1771,-1834,-1901,-1973,-2049,-2128,-2203,
+-2260,-2290,-2302,-2311,-2334,-2381,-2454,-2542,-2630,-2709,-2782,-2853,-2913,-2953,-2975,-2996,-3031,-3084,-3149,-3220,-3294,
+-3368,-3442,-3517,-3595,-3667,-3728,-3777,-3821,-3861,-3897,-3932,-3972,-4015,-4059,-4096,-4119,-4114,-4077,-4025,-3991,-3994,
+-4030,-4075,-4115,-4149,-4181,-4195,-4170,-4118,-4111,-4254,-4608,-5114,-5612,-5938,-6025,-5913,-5691,-5434,-5197,-5019,-4917,
+-4880,-4874,-4865,-4842,-4813,-4798,-4802,-4812,-4815,-4815,-4822,-4836,-4840,-4820,-4785,-4745,-4698,-4639,-4575,-4518,-4466,
+-4408,-4352,-4310,-4278,-4229,-4154,-4075,-4014,-3967,-3912,-3842,-3772,-3708,-3638,-3559,-3485,-3427,-3377,-3320,-3254,-3187,
+-3121,-3055,-2989,-2925,-2865,-2807,-2755,-2711,-2676,-2645,-2614,-2583,-2544,-2494,-2438,-2387,-2344,-2303,-2258,-2212,-2165,
+-2115,-2061,-2006,-1956,-1909,-1863,-1813,-1761,-1706,-1649,-1591,-1535,-1475,-1410,-1346,-1291,-1244,-1194,-1135,-1068,-997,
+-922,-842,-766,-703,-653,-606,-552,-490,-426,-362,-298,-232,-163,-92,-21,51,121,190,256,322,388,
+454,520,586,651,713,774,834,895,958,1020,1083,1145,1208,1272,1338,1406,1474,1542,1610,1674,1727,
+1770,1813,1861,1907,1945,1987,2050,2124,2187,2252,2383,2618,2883,3033,2985,2792,2582,2436,2346,2278,2231,
+2221,2249,2293,2334,2369,2401,2432,2462,2490,2514,2540,2585,2658,2747,2830,2896,2954,3006,3037,3028,2987,
+2950,2953,3000,3062,3109,3136,3159,3198,3251,3304,3338,3336,3279,3166,3024,2902,2836,2828,2852,2880,2901,
+2913,2921,2931,2946,2960,2961,2950,2936,2925,2911,2887,2863,2848,2840,2830,2814,2797,2780,2765,2756,2763,
+2784,2798,2791,2777,2780,2812,2856,2890,2902,2895,2878,2853,2823,2785,2737,2681,2624,2572,2522,2468,2409,
+2349,2298,2253,2223,2205,2205,2226,2253,2274,2287,2298,2311,2310,2283,2235,2185,2145,2111,2080,2059,2059,
+2077,2100,2110,2103,2078,2036,1986,1946,1930,1937,1949,1953,1951,1952,1960,1973,1989,2006,2018,2017,2004,
+1984,1964,1941,1907,1863,1813,1760,1703,1648,1603,1573,1559,1553,1541,1519,1492,1471,1458,1442,1414,1378,
+1350,1335,1322,1302,1276,1251,1226,1191,1148,1109,1079,1055,1033,1020,1021,1029,1034,1038,1044,1048,1035,
+1003,969,956,970,1003,1046,1092,1129,1145,1134,1110,1087,1067,1040,999,954,924,912,908,891,854,
+810,780,774,780,772,737,685,640,613,592,567,540,521,509,491,461,424,396,383,380,371,
+343,295,247,221,211,190,144,94,70,73,77,65,46,35,30,18,-1,-22,-41,-64,-91,
+-111,-118,-118,-120,-128,-131,-105,-29,88,197,226,144,-18,-190,-319,-391,-429,-461,-506,-562,-615,
+-651,-668,-679,-702,-746,-800,-824,-775,-656,-528,-461,-485,-576,-701,-839,-971,-1076,-1150,-1214,-1292,-1372,
+-1431,-1464,-1493,-1533,-1569,-1584,-1587,-1609,-1666,-1742,-1814,-1871,-1929,-2004,-2098,-2189,-2263,-2325,-2389,-2457,-2528,
+-2607,-2698,-2788,-2859,-2909,-2962,-3029,-3100,-3159,-3211,-3270,-3331,-3382,-3429,-3487,-3557,-3629,-3704,-3795,-3897,-3997,
+-4095,-4210,-4336,-4439,-4513,-4609,-4775,-4982,-5149,-5238,-5300,-5393,-5510,-5602,-5643,-5654,-5663,-5681,-5710,-5755,-5816,
+-5883,-5954,-6029,-6112,-6195,-6274,-6350,-6426,-6501,-6574,-6646,-6718,-6788,-6856,-6925,-6996,-7068,-7139,-7213,-7289,-7368,
+-7452,-7544,-7642,-7731,-7795,-7838,-7874,-7915,-7961,-8006,-8045,-8082,-8116,-8147,-8177,-8212,-8257,-8303,-8321,-8291,-8229,
+-8186,-8199,-8256,-8311,-8334,-8327,-8305,-8276,-8249,-8238,-8248,-8270,-8293,-8317,-8354,-8404,-8461,-8523,-8585,-8638,-8678,
+-8712,-8752,-8786,-8785,-8736,-8664,-8609,-8588,-8590,-8594,-8597,-8606,-8629,-8668,-8709,-8731,-8722,-8690,-8652,-8612,-8567,
+-8514,-8459,-8409,-8367,-8333,-8300,-8251,-8175,-8077,-7978,-7891,-7810,-7727,-7645,-7572,-7504,-7427,-7333,-7230,-7132,-7044,
+-6957,-6861,-6750,-6631,-6517,-6413,-6322,-6238,-6166,-6109,-6063,-6024,-5996,-5996,-6039,-6118,-6197,-6224,-6162,-6011,-5808,
+-5602,-5420,-5262,-5126,-5015,-4925,-4837,-4737,-4635,-4548,-4477,-4399,-4302,-4198,-4105,-4016,-3916,-3807,-3711,-3647,-3609,
+-3575,-3532,-3479,-3422,-3364,-3301,-3233,-3165,-3103,-3052,-3017,-2991,-2962,-2916,-2855,-2792,-2736,-2682,-2619,-2548,-2475,
+-2396,-2306,-2209,-2112,-2006,-1879,-1741,-1624,-1538,-1447,-1308,-1136,-988,-895,-838,-785,-731,-681,-630,-569,-501,
+-430,-347,-241,-120,-4,106,218,331,431,520,610,702,788,872,975,1106,1244,1366,1467,1554,1637,
+1729,1842,1970,2088,2189,2293,2411,2528,2636,2757,2901,3030,3105,3149,3199,3221,3166,3118,3274,3695,4155,
+4358,4281,4175,4226,4332,4282,4042,3774,3623,3592,3636,3755,3943,4128,4217,4201,4156,4155,4209,4290,4373,
+4445,4497,4531,4561,4596,4628,4646,4653,4660,4670,4677,4681,4686,4698,4711,4715,4706,4698,4702,4719,4738,
+4753,4762,4772,4784,4797,4807,4809,4804,4802,4816,4845,4870,4884,4898,4928,4966,4989,4989,4988,5002,5022,
+5032,5032,5039,5062,5091,5113,5124,5136,5157,5185,5203,5201,5185,5175,5183,5197,5201,5197,5196,5201,5205,
+5204,5206,5207,5201,5194,5213,5272,5344,5393,5412,5430,5464,5492,5487,5458,5443,5449,5427,5311,5077,4766,
+4431,4102,3800,3574,3504,3632,3893,4148,4294,4328,4327,4354,4405,4435,4417,4361,4290,4219,4154,4110,4104,
+4131,4147,4105,4003,3888,3804,3752,3708,3652,3595,3560,3568,3613,3649,3607,3452,3237,3064,2990,2989,2998,
+2993,2988,2988,2975,2952,2944,2963,2977,2943,2865,2799,2801,2868,2931,2917,2813,2681,2597,2571,2555,2516,
+2491,2528,2601,2624,2553,2438,2359,2339,2336,2310,2267,2237,2226,2220,2201,2161,2101,2027,1948,1877,1826,
+1798,1789,1785,1786,1794,1804,1794,1752,1694,1650,1626,1601,1566,1537,1529,1527,1503,1457,1408,1367,1332,
+1301,1284,1279,1273,1258,1238,1222,1202,1174,1152,1152,1175,1201,1211,1201,1173,1136,1103,1084,1072,1051,
+1015,976,945,919,892,867,851,844,836,826,820,818,816,811,805,803,810,827,849,857,839,
+800,769,768,785,791,775,757,762,786,805,804,795,795,806,813,810,804,808,831,869,910,
+941,953,942,916,884,856,845,867,918,970,997,1002,1009,1026,1038,1034,1032,1054,1086,1088,1042,
+979,939,937,954,969,970,953,921,884,856,839,823,807,790,773,753,730,708,688,665,638,
+611,593,580,563,539,516,494,470,439,407,381,364,353,341,326,307,287,269,253,235,213,
+185,153,121,89,57,22,-18,-64,-110,-150,-181,-207,-233,-264,-298,-332,-358,-377,-391,-405,-417,
+-425,-432,-445,-464,-484,-507,-536,-572,-607,-637,-662,-690,-721,-751,-777,-802,-828,-857,-891,-929,-970,
+-1008,-1042,-1075,-1112,-1151,-1192,-1236,-1283,-1329,-1370,-1407,-1441,-1471,-1498,-1521,-1543,-1566,-1588,-1611,-1638,-1670,
+-1704,-1739,-1776,-1820,-1866,-1911,-1951,-1991,-2035,-2086,-2142,-2197,-2250,-2301,-2352,-2407,-2462,-2511,-2555,-2597,-2644,
+-2695,-2746,-2800,-2858,-2918,-2977,-3031,-3083,-3134,-3183,-3229,-3274,-3322,-3374,-3428,-3479,-3525,-3567,-3607,-3646,-3686,
+-3726,-3762,-3794,-3825,-3863,-3905,-3943,-3971,-3993,-4015,-4041,-4068,-4096,-4124,-4150,-4174,-4196,-4221,-4249,-4277,-4302,
+-4326,-4355,-4386,-4414,-4432,-4441,-4447,-4456,-4470,-4486,-4498,-4503,-4506,-4511,-4515,-4514,-4509,-4504,-4503,-4503,-4500,
+-4493,-4482,-4470,-4455,-4440,-4425,-4407,-4386,-4363,-4341,-4316,-4287,-4253,-4220,-4189,-4154,-4116,-4078,-4039,-3996,-3948,
+-3904,-3867,-3832,-3790,-3741,-3694,-3650,-3603,-3549,-3493,-3444,-3402,-3364,-3327,-3287,-3242,-3192,-3147,-3108,-3069,-3023,
+-2974,-2929,-2884,-2829,-2760,-2687,-2617,-2549,-2481,-2416,-2355,-2293,-2227,-2164,-2110,-2061,-2004,-1943,-1885,-1834,-1783,
+-1730,-1681,-1637,-1591,-1538,-1486,-1440,-1395,-1344,-1292,-1246,-1204,-1159,-1114,-1082,-1069,-1066,-1064,-1063,-1068,-1074,
+-1070,-1048,-1010,-967,-939,-938,-954,-965,-972,-992,-1019,-996,-872,-677,-507,-440,-471,-536,-583,-587,-530,
+-396,-191,43,253,391,432,388,305,241,217,205,170,112,62,42,55,84,114,138,159,189,
+242,306,352,358,339,326,340,368,385,374,333,269,193,115,44,-16,-67,-105,-130,-143,-152,
+-164,-175,-187,-215,-277,-371,-466,-528,-561,-596,-655,-722,-776,-817,-864,-924,-984,-1045,-1124,-1232,-1343,
+-1419,-1452,-1470,-1507,-1569,-1643,-1716,-1785,-1849,-1914,-1988,-2072,-2151,-2199,-2208,-2201,-2208,-2242,-2299,-2374,-2465,
+-2568,-2672,-2764,-2837,-2891,-2930,-2960,-2989,-3025,-3073,-3131,-3197,-3267,-3339,-3413,-3487,-3560,-3626,-3682,-3724,-3753,
+-3776,-3804,-3846,-3899,-3953,-4000,-4040,-4065,-4060,-4018,-3964,-3935,-3947,-3988,-4031,-4074,-4124,-4178,-4204,-4175,-4105,
+-4069,-4166,-4456,-4903,-5385,-5764,-5952,-5934,-5752,-5481,-5205,-4993,-4877,-4845,-4860,-4884,-4893,-4888,-4884,-4891,-4902,
+-4905,-4899,-4895,-4892,-4880,-4848,-4806,-4762,-4712,-4649,-4581,-4519,-4463,-4406,-4355,-4319,-4289,-4239,-4166,-4092,-4036,
+-3983,-3916,-3840,-3775,-3721,-3662,-3588,-3514,-3451,-3393,-3332,-3269,-3210,-3152,-3091,-3031,-2975,-2917,-2854,-2789,-2731,
+-2685,-2647,-2616,-2589,-2556,-2509,-2456,-2409,-2373,-2337,-2295,-2250,-2203,-2153,-2097,-2040,-1987,-1938,-1890,-1839,-1785,
+-1729,-1669,-1611,-1556,-1499,-1437,-1375,-1321,-1275,-1227,-1170,-1106,-1040,-972,-901,-833,-775,-724,-670,-610,-546,
+-484,-424,-362,-297,-228,-159,-91,-24,44,115,184,252,320,389,458,527,593,658,720,780,838,
+898,960,1023,1085,1148,1213,1280,1346,1413,1481,1550,1616,1672,1722,1768,1810,1843,1879,1944,2052,2175,
+2273,2360,2498,2708,2903,2947,2798,2554,2357,2262,2228,2200,2174,2173,2203,2244,2284,2321,2357,2391,2424,
+2458,2491,2527,2580,2662,2766,2867,2945,2997,3025,3027,3002,2962,2939,2955,3005,3062,3101,3121,3139,3173,
+3226,3283,3329,3344,3306,3205,3066,2942,2876,2869,2893,2921,2941,2956,2966,2974,2983,2989,2985,2970,2954,
+2943,2932,2913,2888,2866,2852,2837,2815,2790,2771,2763,2768,2786,2808,2819,2813,2803,2809,2840,2882,2913,
+2918,2897,2859,2812,2763,2712,2657,2598,2542,2491,2443,2391,2339,2291,2253,2224,2206,2193,2193,2211,2238,
+2260,2271,2279,2289,2291,2271,2226,2172,2125,2090,2068,2058,2061,2072,2081,2084,2077,2056,2019,1973,1938,
+1929,1938,1948,1946,1939,1940,1954,1974,1995,2010,2015,2007,1990,1977,1969,1955,1925,1878,1825,1773,1722,
+1670,1619,1574,1544,1527,1518,1503,1479,1453,1431,1414,1394,1368,1343,1325,1310,1289,1262,1232,1202,1168,
+1132,1100,1073,1049,1025,1008,1001,1002,1006,1009,1011,1006,984,951,927,926,950,989,1032,1072,1099,
+1104,1087,1062,1037,1015,990,960,931,909,895,881,856,816,767,730,715,710,695,660,619,589,
+571,552,524,497,481,471,453,423,391,365,347,332,315,290,255,220,197,180,148,96,48,
+29,36,42,28,5,-6,-4,0,1,-7,-30,-63,-93,-113,-139,-195,-281,-366,-407,-379,-283,
+-143,0,95,105,29,-101,-243,-357,-433,-483,-533,-593,-655,-699,-719,-727,-746,-791,-854,-896,-868,
+-760,-623,-534,-534,-606,-714,-834,-952,-1054,-1138,-1218,-1306,-1386,-1436,-1461,-1489,-1532,-1571,-1583,-1582,-1607,
+-1684,-1794,-1900,-1980,-2042,-2110,-2194,-2280,-2348,-2396,-2445,-2511,-2595,-2684,-2766,-2831,-2875,-2913,-2966,-3035,-3104,
+-3162,-3217,-3281,-3346,-3403,-3458,-3521,-3588,-3652,-3722,-3811,-3913,-4011,-4110,-4230,-4362,-4467,-4538,-4639,-4819,-5038,
+-5195,-5252,-5279,-5358,-5487,-5602,-5658,-5672,-5681,-5706,-5747,-5800,-5864,-5934,-6008,-6087,-6170,-6251,-6330,-6409,-6487,
+-6561,-6631,-6703,-6778,-6851,-6919,-6987,-7057,-7127,-7195,-7264,-7337,-7414,-7500,-7599,-7706,-7801,-7869,-7914,-7952,-7991,
+-8031,-8070,-8110,-8151,-8188,-8216,-8241,-8274,-8322,-8371,-8391,-8361,-8300,-8256,-8264,-8313,-8365,-8397,-8408,-8402,-8379,
+-8347,-8325,-8325,-8337,-8350,-8362,-8386,-8427,-8485,-8554,-8623,-8676,-8710,-8746,-8798,-8844,-8842,-8783,-8706,-8666,-8679,
+-8718,-8752,-8768,-8776,-8793,-8825,-8861,-8876,-8854,-8801,-8736,-8669,-8601,-8533,-8476,-8440,-8420,-8404,-8373,-8314,-8225,
+-8120,-8018,-7929,-7845,-7758,-7675,-7602,-7533,-7453,-7354,-7247,-7146,-7053,-6958,-6852,-6733,-6614,-6506,-6413,-6327,-6243,
+-6171,-6118,-6079,-6044,-6018,-6026,-6082,-6163,-6217,-6201,-6109,-5960,-5781,-5595,-5417,-5257,-5123,-5017,-4931,-4851,-4761,
+-4663,-4567,-4481,-4398,-4309,-4210,-4103,-3994,-3887,-3787,-3702,-3639,-3597,-3565,-3527,-3476,-3415,-3350,-3283,-3210,-3129,
+-3049,-2982,-2935,-2904,-2871,-2824,-2763,-2699,-2639,-2579,-2514,-2448,-2382,-2308,-2218,-2119,-2027,-1933,-1818,-1680,-1548,
+-1443,-1343,-1211,-1053,-909,-808,-734,-670,-615,-578,-542,-490,-421,-346,-265,-170,-63,44,152,265,382,
+491,587,677,764,849,940,1047,1165,1273,1366,1460,1567,1682,1800,1926,2055,2169,2265,2364,2479,2593,
+2696,2812,2955,3080,3144,3173,3214,3243,3193,3122,3228,3604,4061,4305,4274,4190,4251,4391,4417,4280,4115,
+4042,4049,4085,4160,4294,4434,4480,4405,4278,4188,4175,4228,4316,4411,4489,4546,4596,4646,4687,4708,4715,
+4723,4733,4734,4726,4723,4739,4763,4773,4765,4752,4751,4760,4772,4785,4801,4819,4831,4839,4845,4849,4850,
+4855,4873,4898,4914,4922,4940,4979,5020,5038,5032,5031,5045,5062,5066,5065,5076,5102,5131,5152,5164,5174,
+5190,5212,5230,5229,5213,5201,5208,5227,5236,5229,5217,5213,5218,5229,5239,5237,5219,5209,5236,5302,5370,
+5410,5431,5456,5482,5488,5473,5472,5499,5509,5430,5236,4967,4671,4359,4021,3696,3490,3495,3694,3961,4163,
+4262,4304,4344,4391,4419,4416,4386,4341,4288,4228,4164,4103,4055,4027,4009,3976,3922,3863,3818,3780,3734,
+3678,3629,3593,3556,3512,3460,3392,3290,3164,3060,3019,3025,3031,3016,2998,2988,2973,2945,2928,2941,2962,
+2944,2876,2804,2793,2858,2946,2976,2908,2775,2649,2575,2539,2513,2499,2516,2555,2569,2529,2457,2398,2365,
+2341,2308,2276,2263,2275,2294,2291,2246,2162,2061,1971,1898,1837,1785,1755,1761,1806,1872,1923,1918,1850,
+1756,1684,1643,1611,1572,1541,1533,1533,1517,1479,1435,1393,1354,1322,1309,1309,1302,1281,1264,1261,1258,
+1234,1201,1185,1194,1215,1227,1223,1201,1166,1133,1111,1094,1064,1017,970,936,912,889,873,873,881,
+880,871,865,870,873,862,846,839,846,861,875,880,866,835,807,803,819,829,815,794,792,
+813,835,838,831,831,841,848,843,831,824,827,838,861,895,924,927,895,847,810,808,840,
+890,936,968,993,1019,1040,1039,1023,1021,1054,1100,1116,1083,1026,978,954,947,949,956,954,935,
+904,875,856,841,823,804,784,762,737,712,692,673,649,622,598,577,556,533,512,495,476,
+450,417,386,361,344,328,311,292,269,247,226,206,187,165,140,111,79,45,8,-34,-79,
+-123,-163,-195,-219,-239,-262,-291,-322,-346,-361,-371,-382,-394,-405,-416,-429,-445,-460,-479,-507,-543,
+-581,-613,-642,-673,-705,-736,-764,-790,-816,-844,-877,-916,-956,-992,-1023,-1055,-1091,-1130,-1167,-1205,-1244,
+-1281,-1312,-1341,-1371,-1402,-1427,-1448,-1469,-1492,-1518,-1544,-1575,-1611,-1650,-1688,-1729,-1775,-1824,-1873,-1917,-1962,
+-2011,-2065,-2120,-2173,-2223,-2271,-2318,-2368,-2419,-2469,-2517,-2563,-2610,-2659,-2711,-2766,-2826,-2889,-2950,-3006,-3056,
+-3107,-3157,-3206,-3253,-3300,-3349,-3400,-3450,-3495,-3536,-3573,-3611,-3651,-3691,-3727,-3758,-3789,-3829,-3872,-3911,-3937,
+-3956,-3977,-4005,-4039,-4072,-4104,-4132,-4157,-4182,-4210,-4242,-4272,-4298,-4323,-4351,-4381,-4406,-4422,-4431,-4438,-4447,
+-4459,-4472,-4482,-4488,-4492,-4495,-4497,-4495,-4489,-4484,-4484,-4488,-4491,-4491,-4485,-4473,-4455,-4436,-4419,-4402,-4383,
+-4361,-4337,-4309,-4275,-4238,-4203,-4171,-4140,-4106,-4072,-4036,-3995,-3949,-3904,-3865,-3827,-3783,-3734,-3685,-3642,-3597,
+-3546,-3489,-3434,-3387,-3348,-3314,-3278,-3235,-3185,-3138,-3096,-3056,-3011,-2961,-2912,-2861,-2804,-2739,-2671,-2601,-2530,
+-2462,-2402,-2347,-2289,-2223,-2157,-2100,-2048,-1990,-1926,-1866,-1813,-1765,-1719,-1675,-1630,-1579,-1525,-1476,-1435,-1393,
+-1342,-1288,-1240,-1197,-1152,-1106,-1063,-1026,-990,-958,-941,-939,-943,-941,-934,-923,-912,-908,-914,-924,-923,
+-919,-941,-996,-1042,-1017,-904,-750,-613,-523,-481,-485,-518,-535,-486,-346,-135,94,285,393,413,382,
+343,310,268,212,165,149,160,175,183,192,208,228,258,306,368,420,440,433,424,428,435,
+425,390,337,277,218,160,104,49,0,-38,-62,-77,-91,-105,-116,-128,-158,-226,-324,-419,-485,
+-528,-572,-626,-681,-726,-766,-809,-853,-895,-953,-1049,-1178,-1302,-1383,-1418,-1438,-1471,-1526,-1595,-1668,-1736,
+-1795,-1852,-1924,-2015,-2100,-2142,-2134,-2114,-2124,-2177,-2248,-2318,-2396,-2500,-2622,-2736,-2821,-2879,-2927,-2973,-3015,
+-3053,-3094,-3142,-3198,-3260,-3326,-3396,-3468,-3538,-3603,-3657,-3689,-3699,-3700,-3721,-3774,-3842,-3901,-3944,-3978,-4006,
+-4007,-3970,-3912,-3874,-3880,-3918,-3967,-4024,-4094,-4167,-4205,-4175,-4084,-4001,-4027,-4236,-4625,-5103,-5538,-5819,-5899,
+-5790,-5559,-5296,-5082,-4955,-4910,-4914,-4934,-4949,-4951,-4948,-4947,-4946,-4937,-4923,-4912,-4903,-4884,-4847,-4801,-4754,
+-4701,-4637,-4569,-4506,-4449,-4394,-4346,-4313,-4284,-4239,-4178,-4124,-4084,-4037,-3968,-3889,-3825,-3773,-3712,-3635,-3556,
+-3487,-3422,-3357,-3295,-3239,-3184,-3125,-3066,-3010,-2950,-2880,-2805,-2734,-2671,-2617,-2577,-2550,-2527,-2493,-2450,-2411,
+-2380,-2350,-2314,-2274,-2233,-2188,-2136,-2079,-2024,-1970,-1916,-1862,-1807,-1751,-1692,-1636,-1584,-1531,-1474,-1417,-1365,
+-1317,-1266,-1207,-1146,-1086,-1023,-959,-897,-840,-784,-724,-661,-599,-543,-487,-428,-364,-295,-226,-160,-94,
+-25,45,117,186,256,327,399,469,537,603,667,727,784,842,903,966,1028,1091,1154,1218,1283,
+1349,1417,1483,1545,1602,1659,1712,1753,1779,1814,1899,2044,2204,2324,2399,2483,2602,2699,2678,2523,2322,
+2184,2137,2132,2123,2114,2126,2161,2202,2240,2278,2317,2353,2389,2430,2475,2522,2582,2668,2782,2903,2997,
+3044,3047,3018,2978,2945,2937,2961,3009,3059,3092,3104,3114,3145,3199,3263,3317,3342,3319,3238,3117,3001,
+2930,2913,2925,2945,2965,2986,3002,3009,3010,3011,3008,2996,2977,2961,2949,2932,2908,2884,2868,2854,2834,
+2809,2790,2788,2800,2820,2834,2838,2833,2830,2842,2872,2910,2934,2929,2889,2822,2746,2674,2614,2564,2520,
+2481,2444,2402,2349,2294,2252,2224,2224,2218,2212,2207,2209,2223,2239,2253,2265,2276,2280,2264,2225,2171,
+2120,2085,2071,2071,2072,2066,2054,2044,2035,2018,1988,1952,1931,1931,1944,1951,1947,1942,1949,1968,1992,
+2013,2025,2023,2010,1994,1985,1983,1974,1947,1901,1848,1796,1743,1688,1633,1583,1543,1515,1498,1482,1459,
+1429,1404,1389,1379,1363,1338,1314,1295,1275,1248,1215,1180,1147,1117,1091,1070,1048,1024,1000,982,973,
+973,977,976,962,933,902,890,905,939,979,1019,1054,1075,1073,1050,1018,985,956,934,919,909,
+898,881,858,824,777,723,676,647,629,606,577,555,546,537,512,477,450,440,433,413,383,
+354,334,314,290,262,234,208,185,165,140,99,46,5,-7,1,4,-11,-32,-42,-34,-18,
+-5,-9,-37,-76,-103,-115,-153,-265,-443,-615,-698,-661,-530,-356,-182,-41,40,40,-43,-183,-328,
+-435,-499,-546,-601,-665,-718,-749,-764,-784,-825,-889,-946,-942,-852,-712,-603,-579,-634,-728,-827,-921,
+-1011,-1100,-1196,-1294,-1377,-1428,-1460,-1500,-1558,-1609,-1634,-1646,-1682,-1769,-1893,-2014,-2107,-2174,-2239,-2317,-2393,
+-2445,-2472,-2503,-2566,-2659,-2752,-2819,-2857,-2883,-2921,-2982,-3056,-3124,-3182,-3241,-3308,-3375,-3434,-3492,-3558,-3624,
+-3681,-3740,-3819,-3915,-4011,-4113,-4239,-4377,-4489,-4571,-4679,-4852,-5041,-5153,-5175,-5197,-5300,-5467,-5610,-5677,-5691,
+-5702,-5734,-5785,-5845,-5912,-5983,-6060,-6142,-6225,-6307,-6387,-6470,-6551,-6626,-6694,-6764,-6837,-6909,-6977,-7043,-7111,
+-7179,-7246,-7314,-7386,-7463,-7549,-7648,-7751,-7842,-7913,-7967,-8016,-8059,-8096,-8132,-8173,-8217,-8252,-8275,-8297,-8335,
+-8390,-8443,-8465,-8441,-8386,-8339,-8330,-8356,-8395,-8433,-8463,-8479,-8472,-8446,-8422,-8411,-8408,-8404,-8403,-8416,-8449,
+-8504,-8575,-8647,-8701,-8735,-8772,-8829,-8884,-8893,-8841,-8771,-8740,-8766,-8823,-8875,-8904,-8914,-8922,-8940,-8966,-8974,
+-8944,-8877,-8795,-8715,-8640,-8570,-8518,-8496,-8496,-8493,-8461,-8390,-8285,-8170,-8063,-7969,-7881,-7793,-7711,-7636,-7562,
+-7475,-7372,-7264,-7160,-7061,-6960,-6850,-6731,-6613,-6509,-6421,-6341,-6261,-6190,-6137,-6100,-6067,-6047,-6064,-6123,-6186,
+-6201,-6151,-6058,-5944,-5806,-5633,-5438,-5257,-5116,-5013,-4931,-4854,-4770,-4674,-4571,-4472,-4384,-4299,-4202,-4089,-3974,
+-3872,-3786,-3709,-3642,-3591,-3555,-3521,-3471,-3405,-3334,-3262,-3181,-3087,-2990,-2906,-2845,-2802,-2765,-2720,-2665,-2605,
+-2544,-2481,-2417,-2354,-2291,-2218,-2125,-2021,-1927,-1845,-1751,-1628,-1491,-1362,-1236,-1097,-950,-819,-720,-639,-566,
+-512,-483,-462,-419,-351,-272,-189,-99,-2,94,195,308,431,551,655,747,835,927,1031,1147,1258,
+1350,1432,1530,1652,1776,1893,2011,2134,2245,2338,2434,2548,2663,2763,2865,2987,3101,3168,3204,3253,3287,
+3236,3141,3184,3485,3911,4193,4235,4204,4286,4455,4553,4520,4446,4426,4452,4483,4526,4613,4715,4758,4694,
+4544,4374,4249,4210,4265,4377,4491,4574,4637,4697,4748,4777,4787,4795,4806,4805,4791,4781,4791,4813,4825,
+4821,4815,4815,4816,4813,4817,4834,4854,4864,4865,4869,4882,4895,4907,4922,4939,4951,4962,4987,5030,5067,
+5077,5068,5067,5080,5092,5095,5098,5115,5140,5164,5184,5199,5209,5218,5234,5254,5260,5246,5231,5236,5256,
+5265,5250,5224,5211,5218,5235,5245,5235,5215,5215,5257,5325,5383,5415,5440,5472,5491,5480,5468,5501,5561,
+5556,5409,5142,4839,4548,4238,3883,3557,3404,3503,3770,4032,4182,4247,4308,4389,4446,4447,4410,4372,4336,
+4289,4227,4160,4094,4030,3975,3936,3908,3880,3853,3830,3798,3745,3685,3642,3611,3561,3475,3383,3320,3284,
+3254,3232,3228,3227,3192,3118,3045,3003,2979,2950,2921,2917,2930,2924,2880,2830,2825,2881,2964,3011,2975,
+2860,2719,2608,2550,2523,2506,2494,2493,2497,2489,2459,2411,2360,2316,2285,2272,2281,2320,2374,2400,2351,
+2228,2091,2002,1963,1927,1862,1794,1778,1837,1941,2023,2024,1938,1814,1715,1661,1630,1600,1576,1566,1559,
+1535,1499,1463,1429,1392,1359,1345,1345,1337,1315,1301,1304,1304,1279,1243,1228,1242,1262,1267,1255,1232,
+1200,1167,1140,1116,1080,1028,976,938,912,892,885,896,911,911,898,896,909,918,907,886,876,
+882,892,897,898,891,872,850,839,846,854,848,832,829,845,864,869,861,858,864,868,861,
+850,841,834,826,826,845,877,898,890,866,859,884,929,966,981,986,999,1025,1046,1045,1030,
+1026,1049,1085,1104,1094,1065,1030,992,957,939,942,952,946,920,889,865,848,830,809,789,766,
+740,714,694,675,653,627,600,576,553,532,515,502,488,465,436,405,377,354,333,312,288,
+262,235,211,192,174,154,130,102,72,41,6,-34,-80,-125,-166,-197,-219,-236,-255,-281,-311,
+-332,-343,-348,-358,-372,-386,-399,-413,-428,-444,-462,-488,-520,-555,-588,-621,-657,-692,-724,-754,-781,
+-807,-831,-860,-896,-934,-969,-998,-1028,-1061,-1094,-1125,-1155,-1184,-1210,-1232,-1255,-1285,-1318,-1347,-1372,-1399,
+-1431,-1466,-1503,-1541,-1583,-1625,-1665,-1705,-1748,-1794,-1839,-1882,-1927,-1978,-2032,-2085,-2137,-2186,-2233,-2280,-2329,
+-2380,-2434,-2487,-2537,-2586,-2635,-2686,-2739,-2797,-2857,-2917,-2972,-3024,-3076,-3129,-3182,-3232,-3279,-3325,-3371,-3418,
+-3461,-3501,-3539,-3578,-3618,-3658,-3695,-3726,-3758,-3795,-3836,-3872,-3899,-3918,-3940,-3970,-4007,-4046,-4082,-4114,-4142,
+-4170,-4202,-4234,-4264,-4290,-4316,-4343,-4370,-4391,-4406,-4416,-4424,-4432,-4440,-4451,-4462,-4470,-4474,-4475,-4476,-4476,
+-4473,-4470,-4469,-4472,-4476,-4478,-4473,-4462,-4444,-4424,-4407,-4393,-4377,-4357,-4334,-4305,-4271,-4233,-4195,-4160,-4126,
+-4093,-4060,-4026,-3988,-3946,-3902,-3861,-3820,-3775,-3726,-3679,-3636,-3595,-3548,-3493,-3434,-3380,-3335,-3300,-3267,-3227,
+-3179,-3129,-3082,-3039,-2995,-2949,-2897,-2841,-2781,-2719,-2657,-2590,-2519,-2450,-2390,-2336,-2279,-2214,-2150,-2093,-2039,
+-1980,-1916,-1855,-1802,-1755,-1712,-1668,-1620,-1566,-1512,-1464,-1423,-1381,-1332,-1280,-1231,-1184,-1137,-1093,-1052,-1008,
+-958,-913,-883,-865,-848,-828,-814,-811,-809,-802,-790,-780,-774,-782,-823,-905,-999,-1056,-1043,-961,-834,
+-688,-556,-473,-456,-483,-501,-461,-342,-163,27,176,262,301,315,305,261,204,173,190,231,260,
+268,274,290,310,334,370,416,454,467,461,456,458,455,432,390,342,297,256,214,167,115,
+64,24,-1,-18,-37,-60,-77,-89,-116,-180,-272,-361,-428,-481,-535,-589,-632,-667,-707,-751,-786,
+-815,-869,-976,-1124,-1262,-1354,-1403,-1436,-1474,-1524,-1584,-1652,-1719,-1779,-1837,-1908,-1998,-2078,-2112,-2095,-2070,
+-2087,-2151,-2225,-2281,-2336,-2428,-2562,-2698,-2802,-2872,-2932,-2993,-3046,-3086,-3122,-3162,-3212,-3268,-3330,-3396,-3462,
+-3528,-3591,-3644,-3670,-3664,-3652,-3671,-3733,-3810,-3864,-3888,-3905,-3929,-3944,-3924,-3875,-3830,-3821,-3851,-3907,-3979,
+-4063,-4144,-4196,-4187,-4107,-4000,-3959,-4084,-4408,-4863,-5321,-5662,-5824,-5802,-5645,-5428,-5232,-5102,-5040,-5019,-5015,
+-5013,-5005,-4993,-4976,-4952,-4924,-4898,-4884,-4876,-4860,-4826,-4779,-4729,-4675,-4613,-4550,-4493,-4439,-4386,-4340,-4308,
+-4278,-4239,-4193,-4159,-4136,-4100,-4038,-3966,-3906,-3853,-3787,-3705,-3623,-3550,-3480,-3409,-3342,-3283,-3223,-3160,-3098,
+-3040,-2975,-2899,-2818,-2739,-2662,-2590,-2535,-2505,-2488,-2466,-2435,-2402,-2373,-2343,-2308,-2271,-2235,-2196,-2150,-2099,
+-2047,-1993,-1937,-1880,-1826,-1771,-1716,-1662,-1614,-1565,-1514,-1462,-1413,-1363,-1307,-1246,-1186,-1127,-1067,-1005,-943,
+-884,-824,-761,-700,-644,-592,-540,-482,-420,-353,-285,-219,-153,-84,-14,55,123,193,266,339,410,
+480,549,616,677,734,792,852,914,976,1037,1098,1159,1221,1286,1354,1417,1474,1530,1590,1650,1695,
+1723,1763,1852,1997,2153,2259,2300,2314,2340,2360,2327,2233,2127,2064,2051,2056,2056,2061,2086,2125,2165,
+2201,2239,2276,2313,2351,2399,2457,2516,2579,2664,2781,2913,3020,3066,3048,2997,2952,2932,2937,2960,2997,
+3038,3069,3082,3092,3118,3170,3234,3289,3323,3320,3269,3174,3070,2995,2963,2961,2972,2990,3015,3034,3038,
+3034,3032,3035,3029,3010,2987,2968,2953,2933,2911,2895,2885,2874,2855,2838,2832,2838,2845,2845,2838,2834,
+2841,2863,2896,2930,2946,2927,2866,2774,2675,2589,2528,2488,2464,2447,2428,2395,2342,2285,2242,2224,2255,
+2253,2247,2231,2218,2218,2231,2248,2260,2266,2265,2254,2227,2182,2133,2096,2084,2086,2080,2058,2030,2009,
+1997,1980,1954,1930,1924,1935,1947,1949,1946,1949,1964,1986,2007,2023,2032,2031,2020,2008,2003,2000,1989,
+1962,1922,1875,1821,1758,1693,1636,1590,1550,1512,1480,1453,1426,1396,1373,1366,1368,1360,1337,1308,1285,
+1265,1237,1201,1163,1130,1103,1081,1061,1041,1016,989,965,954,954,956,947,919,883,858,861,889,
+927,964,1000,1033,1053,1049,1022,983,942,910,892,889,890,881,857,825,787,738,681,627,588,
+558,528,503,496,503,501,473,433,407,402,398,376,343,316,300,284,257,222,187,160,140,
+121,92,48,0,-34,-45,-44,-46,-58,-69,-70,-63,-52,-43,-48,-76,-116,-140,-149,-189,-320,
+-536,-751,-857,-812,-654,-457,-273,-121,-12,27,-25,-161,-324,-451,-520,-557,-599,-657,-717,-764,-797,
+-824,-860,-914,-970,-982,-911,-776,-652,-607,-647,-732,-820,-898,-976,-1066,-1171,-1278,-1369,-1433,-1483,-1541,
+-1612,-1677,-1721,-1754,-1804,-1888,-1997,-2107,-2195,-2263,-2330,-2408,-2481,-2525,-2542,-2569,-2635,-2729,-2810,-2853,-2870,
+-2896,-2949,-3026,-3106,-3174,-3233,-3293,-3359,-3421,-3475,-3531,-3597,-3664,-3724,-3782,-3853,-3939,-4029,-4129,-4251,-4385,
+-4500,-4595,-4712,-4869,-5019,-5093,-5104,-5146,-5283,-5473,-5625,-5694,-5711,-5728,-5768,-5824,-5888,-5957,-6031,-6112,-6197,
+-6283,-6365,-6447,-6531,-6614,-6690,-6758,-6824,-6892,-6960,-7025,-7091,-7159,-7229,-7298,-7368,-7440,-7516,-7599,-7689,-7780,
+-7861,-7933,-8002,-8067,-8121,-8161,-8196,-8236,-8275,-8303,-8321,-8348,-8394,-8456,-8511,-8539,-8529,-8487,-8436,-8404,-8403,
+-8432,-8481,-8532,-8565,-8567,-8545,-8517,-8497,-8481,-8462,-8446,-8445,-8467,-8511,-8574,-8644,-8703,-8745,-8787,-8844,-8904,
+-8928,-8902,-8856,-8833,-8854,-8905,-8961,-9001,-9018,-9018,-9020,-9028,-9025,-8988,-8915,-8828,-8748,-8677,-8613,-8570,-8560,
+-8577,-8588,-8559,-8475,-8352,-8218,-8097,-7995,-7906,-7822,-7742,-7664,-7582,-7489,-7386,-7279,-7173,-7069,-6963,-6854,-6739,
+-6624,-6520,-6434,-6360,-6288,-6218,-6161,-6118,-6089,-6080,-6106,-6154,-6180,-6154,-6092,-6034,-5983,-5890,-5716,-5485,-5267,
+-5108,-5001,-4916,-4833,-4748,-4656,-4554,-4451,-4362,-4280,-4186,-4071,-3955,-3858,-3779,-3704,-3632,-3576,-3540,-3505,-3453,
+-3383,-3309,-3234,-3149,-3048,-2943,-2849,-2776,-2718,-2670,-2623,-2573,-2521,-2465,-2403,-2338,-2273,-2209,-2136,-2043,-1935,
+-1833,-1749,-1666,-1561,-1431,-1289,-1142,-993,-851,-734,-643,-560,-483,-425,-397,-381,-347,-286,-210,-127,-40,
+49,141,241,356,484,608,716,811,904,1006,1120,1239,1346,1434,1519,1626,1752,1871,1975,2081,2200,
+2314,2410,2507,2624,2745,2844,2930,3028,3131,3209,3262,3313,3340,3286,3180,3180,3408,3784,4086,4200,4225,
+4318,4491,4632,4673,4658,4663,4701,4745,4786,4842,4916,4978,4972,4858,4642,4398,4238,4230,4346,4492,4604,
+4682,4750,4811,4847,4857,4862,4873,4879,4872,4861,4861,4870,4874,4874,4876,4881,4878,4866,4862,4876,4894,
+4897,4890,4893,4913,4936,4949,4957,4966,4978,4994,5022,5061,5092,5102,5100,5104,5116,5124,5129,5140,5161,
+5183,5200,5217,5232,5239,5243,5257,5279,5290,5277,5258,5260,5277,5281,5258,5227,5213,5222,5237,5239,5226,
+5218,5241,5297,5359,5397,5418,5445,5480,5494,5479,5478,5528,5580,5527,5314,4998,4678,4379,4053,3693,3405,
+3343,3542,3865,4121,4235,4279,4344,4431,4474,4450,4400,4367,4342,4293,4222,4153,4094,4037,3981,3937,3904,
+3876,3852,3833,3805,3753,3691,3651,3628,3582,3490,3395,3358,3388,3450,3508,3544,3531,3442,3295,3157,3075,
+3033,2989,2939,2911,2912,2915,2896,2869,2865,2895,2945,2987,2987,2925,2815,2699,2617,2571,2537,2498,2467,
+2465,2484,2489,2454,2387,2324,2292,2286,2304,2355,2434,2482,2425,2264,2101,2044,2089,2128,2077,1960,1871,
+1878,1959,2037,2041,1957,1835,1734,1680,1655,1636,1618,1606,1590,1560,1523,1493,1466,1432,1396,1379,1378,
+1371,1353,1339,1339,1333,1305,1276,1279,1309,1331,1324,1297,1267,1236,1200,1165,1137,1104,1058,1003,952,
+913,889,887,904,923,925,915,916,932,944,934,915,907,912,916,911,906,905,901,887,873,
+871,877,877,866,858,863,875,878,871,864,865,867,862,856,856,858,850,837,837,858,888,
+908,923,954,1005,1054,1072,1056,1031,1023,1037,1059,1070,1069,1065,1066,1070,1074,1079,1083,1073,1039,
+991,956,948,957,955,933,901,872,850,830,811,791,770,747,724,702,680,656,631,607,585,
+564,544,527,513,497,477,453,426,398,372,347,321,292,261,233,211,193,175,154,127,99,
+72,44,12,-28,-76,-123,-164,-194,-214,-229,-247,-272,-298,-317,-325,-331,-343,-360,-375,-388,-401,
+-419,-440,-461,-484,-509,-537,-567,-602,-640,-676,-708,-736,-763,-786,-806,-827,-855,-889,-922,-953,-984,
+-1013,-1041,-1067,-1093,-1120,-1142,-1162,-1185,-1216,-1253,-1287,-1318,-1351,-1390,-1433,-1477,-1522,-1567,-1610,-1650,-1687,
+-1726,-1766,-1805,-1845,-1888,-1936,-1988,-2040,-2092,-2143,-2194,-2244,-2294,-2348,-2404,-2459,-2512,-2562,-2613,-2665,-2717,
+-2770,-2825,-2881,-2937,-2992,-3046,-3101,-3157,-3209,-3257,-3301,-3345,-3388,-3429,-3468,-3508,-3549,-3590,-3628,-3663,-3697,
+-3731,-3765,-3800,-3833,-3861,-3885,-3910,-3940,-3978,-4019,-4057,-4092,-4124,-4155,-4187,-4217,-4244,-4269,-4296,-4325,-4351,
+-4370,-4384,-4395,-4405,-4411,-4417,-4428,-4442,-4453,-4455,-4451,-4450,-4454,-4458,-4458,-4456,-4455,-4455,-4453,-4447,-4436,
+-4421,-4405,-4391,-4379,-4364,-4346,-4325,-4299,-4268,-4233,-4193,-4154,-4116,-4080,-4044,-4008,-3973,-3935,-3895,-3852,-3810,
+-3766,-3720,-3675,-3633,-3594,-3550,-3495,-3434,-3375,-3326,-3287,-3254,-3219,-3175,-3121,-3065,-3015,-2973,-2932,-2882,-2821,
+-2756,-2695,-2637,-2577,-2512,-2447,-2385,-2327,-2268,-2206,-2146,-2091,-2036,-1975,-1911,-1849,-1795,-1747,-1700,-1652,-1601,
+-1549,-1499,-1454,-1412,-1366,-1318,-1269,-1219,-1166,-1114,-1070,-1033,-994,-949,-906,-873,-846,-812,-774,-748,-739,
+-733,-715,-687,-664,-658,-673,-713,-781,-869,-954,-1013,-1028,-988,-889,-751,-611,-512,-473,-477,-482,-448,
+-357,-231,-109,-8,80,159,210,213,188,181,213,262,298,317,335,358,381,406,438,471,488,
+479,460,454,462,466,455,431,400,363,320,275,232,188,141,98,69,49,23,-10,-39,-55,
+-77,-126,-200,-274,-336,-397,-467,-533,-577,-608,-643,-683,-714,-740,-801,-922,-1082,-1230,-1330,-1390,-1435,
+-1480,-1529,-1586,-1651,-1720,-1786,-1852,-1926,-2008,-2077,-2104,-2089,-2071,-2096,-2162,-2231,-2274,-2314,-2399,-2536,-2683,
+-2797,-2877,-2948,-3022,-3089,-3138,-3176,-3215,-3263,-3316,-3374,-3432,-3486,-3538,-3590,-3635,-3656,-3645,-3631,-3652,-3716,
+-3789,-3830,-3834,-3833,-3850,-3874,-3877,-3846,-3802,-3780,-3801,-3864,-3948,-4032,-4106,-4165,-4188,-4149,-4052,-3973,-4027,
+-4276,-4680,-5122,-5487,-5709,-5766,-5675,-5495,-5307,-5173,-5104,-5070,-5047,-5024,-5003,-4981,-4952,-4915,-4877,-4849,-4837,
+-4834,-4822,-4791,-4747,-4697,-4643,-4586,-4531,-4483,-4437,-4389,-4346,-4314,-4285,-4249,-4210,-4182,-4164,-4133,-4082,-4025,
+-3978,-3931,-3867,-3787,-3709,-3636,-3563,-3485,-3409,-3338,-3267,-3196,-3132,-3072,-3004,-2924,-2840,-2759,-2676,-2593,-2526,
+-2489,-2472,-2456,-2430,-2400,-2369,-2334,-2294,-2255,-2219,-2181,-2139,-2097,-2054,-2007,-1954,-1899,-1844,-1790,-1736,-1685,
+-1639,-1593,-1545,-1497,-1451,-1401,-1344,-1282,-1221,-1162,-1099,-1034,-972,-911,-851,-788,-731,-679,-629,-576,-519,
+-459,-396,-331,-265,-200,-133,-67,-2,62,129,201,274,346,418,492,562,625,684,742,802,862,
+923,985,1046,1104,1163,1225,1292,1355,1411,1466,1526,1585,1632,1666,1708,1783,1893,2004,2075,2091,2075,
+2059,2052,2040,2014,1988,1978,1984,1993,2002,2020,2054,2094,2130,2164,2198,2235,2271,2312,2365,2431,2499,
+2564,2640,2746,2874,2983,3031,3010,2960,2927,2927,2945,2963,2982,3011,3042,3064,3078,3102,3145,3198,3248,
+3286,3302,3278,3208,3117,3043,3008,3003,3010,3026,3050,3068,3070,3059,3055,3062,3065,3048,3019,2995,2980,
+2964,2942,2924,2917,2913,2902,2885,2871,2863,2855,2841,2827,2823,2839,2871,2909,2938,2939,2901,2824,2722,
+2622,2543,2490,2459,2442,2435,2428,2406,2363,2310,2271,2255,2310,2296,2277,2252,2233,2233,2250,2268,2273,
+2264,2251,2243,2230,2200,2155,2115,2098,2095,2082,2052,2017,1994,1979,1957,1928,1910,1916,1933,1943,1943,
+1946,1961,1985,2005,2018,2027,2033,2035,2029,2022,2017,2007,1985,1954,1920,1884,1834,1765,1690,1632,1595,
+1560,1516,1467,1425,1393,1366,1349,1350,1361,1362,1342,1311,1284,1259,1227,1188,1150,1121,1096,1071,1047,
+1024,999,972,952,945,948,943,917,873,833,818,834,868,904,936,969,1003,1024,1020,992,951,
+911,882,870,873,872,851,813,774,737,695,639,582,537,500,465,439,436,451,457,435,397,
+373,368,364,342,307,278,260,245,222,188,149,113,86,64,36,-1,-40,-67,-80,-90,-102,
+-111,-108,-100,-98,-103,-108,-114,-134,-171,-204,-224,-260,-361,-534,-718,-816,-778,-635,-457,-300,-171,
+-66,-9,-40,-168,-342,-484,-555,-580,-606,-653,-714,-773,-824,-865,-900,-938,-979,-992,-939,-821,-700,
+-645,-679,-766,-859,-940,-1018,-1107,-1210,-1316,-1412,-1490,-1558,-1627,-1697,-1761,-1815,-1867,-1926,-1999,-2083,-2169,
+-2245,-2310,-2376,-2452,-2523,-2569,-2595,-2639,-2718,-2809,-2870,-2891,-2902,-2941,-3012,-3098,-3177,-3243,-3300,-3359,-3422,
+-3482,-3536,-3593,-3658,-3728,-3793,-3856,-3925,-4002,-4083,-4173,-4281,-4400,-4513,-4621,-4746,-4894,-5020,-5084,-5115,-5188,
+-5337,-5514,-5644,-5706,-5732,-5762,-5807,-5863,-5929,-6001,-6078,-6161,-6249,-6338,-6423,-6504,-6586,-6668,-6746,-6816,-6881,
+-6944,-7007,-7070,-7138,-7210,-7283,-7353,-7423,-7496,-7571,-7651,-7733,-7812,-7883,-7954,-8032,-8111,-8177,-8223,-8261,-8300,
+-8333,-8353,-8369,-8402,-8455,-8515,-8565,-8598,-8610,-8590,-8543,-8490,-8466,-8490,-8555,-8629,-8677,-8681,-8651,-8613,-8584,
+-8560,-8531,-8500,-8481,-8482,-8506,-8552,-8612,-8673,-8725,-8773,-8829,-8888,-8929,-8940,-8932,-8928,-8943,-8979,-9028,-9073,
+-9093,-9087,-9071,-9061,-9046,-9003,-8929,-8845,-8770,-8705,-8647,-8610,-8609,-8641,-8667,-8645,-8555,-8413,-8257,-8118,-8009,
+-7922,-7843,-7765,-7682,-7593,-7497,-7396,-7291,-7182,-7072,-6962,-6855,-6746,-6635,-6532,-6446,-6375,-6308,-6239,-6175,-6129,
+-6109,-6119,-6149,-6170,-6149,-6089,-6039,-6039,-6055,-5995,-5809,-5542,-5295,-5123,-5009,-4910,-4811,-4718,-4629,-4536,-4439,
+-4349,-4262,-4163,-4046,-3930,-3833,-3750,-3670,-3596,-3543,-3510,-3476,-3421,-3350,-3278,-3205,-3120,-3018,-2915,-2822,-2743,
+-2672,-2608,-2552,-2504,-2458,-2406,-2346,-2275,-2202,-2131,-2058,-1971,-1867,-1761,-1666,-1579,-1481,-1360,-1219,-1068,-920,
+-788,-680,-589,-501,-414,-348,-312,-295,-269,-222,-158,-85,-5,81,176,286,412,544,667,774,873,
+972,1078,1189,1301,1403,1495,1591,1704,1829,1942,2040,2143,2262,2380,2483,2584,2704,2828,2928,3004,3088,
+3189,3280,3341,3378,3383,3330,3244,3234,3403,3712,4003,4167,4242,4338,4493,4647,4731,4752,4767,4814,4884,
+4946,4990,5038,5109,5162,5108,4888,4568,4307,4230,4327,4489,4623,4717,4796,4866,4909,4921,4922,4933,4947,
+4951,4945,4937,4933,4928,4925,4929,4936,4936,4927,4923,4933,4944,4939,4925,4925,4945,4968,4978,4979,4983,
+4996,5014,5040,5073,5104,5125,5138,5149,5158,5164,5172,5189,5211,5229,5243,5256,5268,5270,5272,5286,5310,
+5317,5297,5273,5273,5288,5289,5265,5238,5233,5244,5250,5242,5234,5248,5293,5354,5401,5423,5436,5461,5486,
+5490,5479,5492,5536,5543,5423,5159,4822,4489,4164,3816,3478,3277,3328,3612,3966,4215,4314,4344,4388,4442,
+4454,4416,4373,4355,4338,4289,4219,4156,4107,4058,4004,3957,3918,3883,3852,3833,3812,3769,3711,3669,3644,
+3597,3506,3416,3396,3466,3583,3688,3741,3713,3594,3423,3273,3186,3132,3063,2981,2930,2925,2938,2935,2914,
+2895,2885,2891,2916,2952,2964,2918,2822,2717,2637,2580,2531,2497,2505,2554,2600,2591,2522,2436,2375,2342,
+2334,2368,2444,2498,2438,2263,2107,2108,2256,2391,2372,2209,2028,1934,1937,1971,1968,1907,1817,1743,1706,
+1690,1672,1649,1629,1609,1581,1549,1521,1493,1455,1418,1402,1406,1406,1391,1376,1371,1360,1333,1315,1334,
+1375,1391,1364,1320,1287,1261,1226,1186,1155,1131,1093,1033,965,910,879,875,892,915,927,931,939,
+952,958,948,934,933,939,939,928,919,920,922,916,904,899,903,904,892,876,867,868,871,
+868,864,864,865,862,862,873,890,896,884,869,872,894,926,961,1007,1062,1104,1113,1091,1061,
+1046,1053,1074,1098,1115,1117,1101,1075,1059,1066,1088,1100,1081,1037,994,972,968,964,948,922,894,
+868,845,823,802,780,760,739,717,692,665,640,620,603,585,566,547,528,507,485,463,439,
+414,387,361,333,301,268,239,219,202,183,159,132,106,79,51,17,-23,-70,-115,-153,-181,
+-202,-219,-238,-261,-285,-302,-313,-325,-341,-358,-371,-380,-393,-412,-435,-456,-474,-493,-514,-541,-574,
+-609,-643,-673,-700,-725,-746,-763,-779,-801,-829,-861,-895,-928,-958,-985,-1010,-1038,-1068,-1096,-1121,-1148,
+-1180,-1217,-1252,-1287,-1324,-1364,-1406,-1450,-1495,-1541,-1585,-1626,-1664,-1702,-1740,-1777,-1814,-1854,-1898,-1947,-1998,
+-2050,-2104,-2157,-2211,-2265,-2320,-2375,-2429,-2481,-2534,-2587,-2641,-2693,-2744,-2794,-2848,-2904,-2961,-3017,-3073,-3130,
+-3183,-3232,-3277,-3319,-3360,-3398,-3437,-3480,-3523,-3563,-3597,-3630,-3666,-3702,-3735,-3765,-3795,-3826,-3857,-3888,-3921,
+-3958,-3996,-4033,-4068,-4102,-4134,-4164,-4190,-4213,-4238,-4266,-4296,-4323,-4343,-4359,-4373,-4384,-4389,-4394,-4407,-4426,
+-4440,-4438,-4427,-4422,-4429,-4438,-4442,-4439,-4436,-4433,-4427,-4417,-4406,-4396,-4386,-4374,-4361,-4346,-4328,-4308,-4285,
+-4259,-4227,-4188,-4147,-4107,-4067,-4027,-3987,-3950,-3915,-3878,-3838,-3797,-3756,-3713,-3672,-3633,-3594,-3548,-3492,-3430,
+-3372,-3322,-3281,-3246,-3212,-3171,-3116,-3052,-2994,-2950,-2911,-2861,-2798,-2730,-2668,-2614,-2560,-2503,-2444,-2384,-2322,
+-2260,-2200,-2144,-2089,-2030,-1968,-1904,-1844,-1788,-1735,-1682,-1628,-1576,-1530,-1490,-1450,-1406,-1356,-1307,-1260,-1211,
+-1158,-1105,-1060,-1022,-985,-942,-902,-868,-836,-799,-758,-728,-713,-701,-679,-651,-629,-622,-628,-643,-671,
+-716,-780,-860,-939,-994,-997,-935,-821,-688,-575,-507,-476,-453,-416,-364,-310,-249,-165,-56,45,113,
+150,183,226,267,297,321,347,373,398,429,472,511,522,505,482,478,490,504,509,507,491,
+451,391,333,294,267,234,192,156,128,96,51,9,-14,-32,-66,-120,-175,-225,-286,-373,-464,
+-532,-572,-603,-631,-654,-686,-761,-894,-1055,-1192,-1284,-1345,-1398,-1453,-1511,-1573,-1641,-1712,-1783,-1858,-1937,
+-2014,-2075,-2106,-2111,-2116,-2151,-2217,-2282,-2327,-2370,-2454,-2586,-2727,-2838,-2921,-3001,-3091,-3175,-3238,-3281,-3319,
+-3361,-3410,-3462,-3508,-3543,-3571,-3602,-3632,-3647,-3640,-3633,-3656,-3710,-3765,-3790,-3785,-3777,-3788,-3813,-3825,-3805,
+-3760,-3728,-3746,-3822,-3924,-4013,-4077,-4129,-4166,-4151,-4066,-3971,-3978,-4163,-4502,-4899,-5257,-5513,-5624,-5574,-5404,
+-5212,-5081,-5026,-5005,-4982,-4951,-4923,-4901,-4876,-4846,-4818,-4800,-4794,-4791,-4780,-4752,-4712,-4665,-4614,-4562,-4515,
+-4475,-4438,-4398,-4361,-4332,-4303,-4268,-4230,-4198,-4173,-4141,-4098,-4057,-4023,-3984,-3927,-3855,-3783,-3713,-3639,-3559,
+-3478,-3398,-3316,-3237,-3168,-3105,-3035,-2953,-2870,-2789,-2705,-2619,-2547,-2504,-2484,-2466,-2442,-2413,-2379,-2339,-2294,
+-2252,-2214,-2173,-2131,-2093,-2059,-2022,-1976,-1922,-1866,-1808,-1753,-1703,-1659,-1614,-1565,-1517,-1472,-1424,-1368,-1307,
+-1247,-1188,-1124,-1059,-997,-938,-878,-818,-762,-711,-661,-606,-547,-488,-428,-365,-301,-236,-172,-110,-49,
+10,73,141,212,283,357,432,503,567,627,687,747,804,863,926,990,1049,1105,1165,1230,1293,
+1352,1410,1469,1525,1568,1603,1643,1695,1758,1817,1858,1875,1873,1869,1871,1880,1891,1901,1912,1925,1942,
+1963,1991,2026,2061,2092,2123,2156,2192,2230,2273,2329,2398,2468,2530,2591,2673,2782,2888,2949,2950,2925,
+2919,2944,2974,2989,2995,3008,3033,3056,3074,3096,3129,3169,3207,3242,3264,3252,3196,3116,3054,3030,3034,
+3044,3058,3079,3100,3104,3092,3084,3091,3098,3085,3053,3025,3008,2992,2968,2943,2931,2929,2922,2905,2883,
+2867,2852,2835,2819,2818,2837,2874,2911,2929,2912,2856,2771,2679,2603,2548,2509,2479,2456,2444,2438,2427,
+2400,2363,2330,2310,2375,2342,2305,2272,2259,2270,2294,2310,2302,2275,2249,2239,2236,2217,2176,2133,2110,
+2101,2083,2049,2014,1992,1973,1943,1908,1890,1898,1917,1928,1934,1951,1982,2014,2032,2038,2041,2043,2041,
+2034,2027,2017,1998,1963,1923,1892,1868,1832,1768,1693,1635,1602,1572,1523,1463,1411,1377,1353,1341,1346,
+1362,1368,1350,1318,1285,1254,1217,1178,1145,1120,1095,1065,1035,1009,985,961,944,938,935,916,872,
+819,782,777,799,832,862,891,925,959,978,973,948,914,883,862,858,862,852,812,755,708,
+678,647,597,539,489,450,412,380,373,390,405,395,367,344,337,332,314,283,248,217,194,
+173,145,107,66,32,7,-17,-46,-73,-91,-105,-126,-153,-168,-160,-145,-146,-162,-177,-183,-194,
+-226,-274,-316,-349,-395,-478,-580,-645,-631,-543,-433,-337,-250,-155,-77,-76,-187,-366,-521,-598,-616,
+-629,-665,-720,-779,-839,-893,-934,-963,-986,-989,-948,-859,-764,-727,-771,-873,-985,-1084,-1171,-1259,-1351,
+-1441,-1526,-1605,-1679,-1745,-1801,-1852,-1904,-1964,-2026,-2087,-2151,-2220,-2287,-2347,-2407,-2473,-2536,-2585,-2630,-2698,
+-2793,-2881,-2928,-2943,-2966,-3022,-3101,-3179,-3249,-3311,-3369,-3425,-3485,-3550,-3617,-3683,-3747,-3812,-3875,-3936,-4001,
+-4071,-4144,-4224,-4316,-4422,-4536,-4660,-4799,-4942,-5057,-5131,-5195,-5294,-5434,-5570,-5663,-5715,-5754,-5797,-5845,-5901,
+-5969,-6047,-6128,-6210,-6296,-6386,-6473,-6554,-6633,-6713,-6793,-6867,-6934,-6997,-7057,-7121,-7191,-7266,-7340,-7411,-7480,
+-7551,-7626,-7704,-7786,-7862,-7930,-7996,-8071,-8152,-8225,-8281,-8327,-8368,-8396,-8410,-8426,-8463,-8515,-8564,-8601,-8638,
+-8674,-8685,-8651,-8588,-8544,-8560,-8636,-8733,-8800,-8808,-8768,-8714,-8671,-8639,-8603,-8559,-8520,-8499,-8501,-8523,-8561,
+-8610,-8663,-8718,-8775,-8836,-8895,-8946,-8985,-9011,-9030,-9056,-9095,-9136,-9154,-9140,-9111,-9086,-9060,-9015,-8946,-8867,
+-8795,-8730,-8671,-8634,-8638,-8678,-8715,-8701,-8614,-8467,-8297,-8142,-8024,-7937,-7863,-7785,-7697,-7602,-7503,-7402,-7297,
+-7186,-7071,-6957,-6851,-6748,-6645,-6545,-6457,-6383,-6315,-6245,-6180,-6139,-6135,-6161,-6184,-6166,-6098,-6022,-6005,-6065,
+-6127,-6077,-5872,-5587,-5335,-5167,-5051,-4937,-4817,-4710,-4620,-4534,-4440,-4341,-4239,-4129,-4014,-3907,-3814,-3725,-3634,
+-3554,-3503,-3473,-3439,-3382,-3315,-3249,-3182,-3098,-3001,-2904,-2819,-2739,-2658,-2580,-2515,-2463,-2417,-2366,-2302,-2223,
+-2136,-2052,-1976,-1897,-1807,-1708,-1608,-1512,-1408,-1287,-1152,-1013,-883,-766,-659,-554,-446,-344,-266,-223,-204,
+-186,-152,-104,-47,19,101,205,331,470,606,729,839,945,1049,1150,1248,1348,1450,1553,1658,1773,
+1893,2005,2107,2213,2329,2446,2551,2655,2774,2895,2993,3071,3155,3259,3358,3421,3441,3425,3376,3317,3309,
+3418,3643,3901,4105,4237,4350,4487,4635,4743,4788,4807,4856,4947,5039,5088,5116,5174,5247,5233,5036,4699,
+4390,4259,4322,4479,4629,4740,4828,4904,4957,4979,4987,4997,5011,5018,5014,5004,4995,4988,4981,4980,4984,
+4989,4990,4990,4994,4994,4982,4966,4961,4973,4991,5001,5004,5012,5025,5041,5062,5092,5128,5161,5183,5193,
+5197,5203,5215,5233,5251,5267,5282,5296,5303,5303,5306,5325,5346,5341,5311,5285,5288,5304,5302,5276,5254,
+5253,5261,5256,5243,5245,5278,5334,5388,5423,5445,5465,5483,5486,5472,5469,5501,5536,5494,5316,5015,4657,
+4287,3912,3551,3282,3210,3379,3713,4058,4288,4383,4407,4421,4432,4418,4385,4360,4348,4326,4277,4219,4172,
+4129,4074,4012,3962,3926,3893,3862,3842,3824,3787,3732,3686,3652,3600,3508,3417,3394,3459,3565,3649,3673,
+3623,3510,3381,3293,3258,3222,3140,3034,2968,2966,2988,2989,2961,2922,2883,2853,2857,2910,2981,3002,2935,
+2810,2692,2616,2576,2563,2590,2665,2752,2785,2729,2618,2507,2421,2366,2360,2409,2454,2405,2254,2133,2185,
+2395,2586,2594,2416,2179,2005,1927,1906,1892,1857,1808,1770,1754,1745,1723,1688,1655,1631,1608,1582,1553,
+1517,1472,1434,1423,1436,1443,1430,1410,1400,1389,1369,1362,1387,1422,1420,1370,1312,1281,1268,1242,1204,
+1173,1151,1115,1054,984,930,901,891,894,907,926,945,961,969,967,960,957,965,976,976,965,
+955,952,951,943,930,922,922,921,909,889,873,870,875,878,880,884,887,887,887,900,923,
+939,930,906,892,900,924,953,986,1024,1054,1067,1061,1051,1048,1057,1076,1103,1130,1141,1126,1096,
+1075,1081,1104,1120,1111,1076,1034,1002,984,975,967,953,932,904,877,850,823,796,773,753,733,
+707,678,654,636,621,606,592,575,554,529,502,476,450,423,397,373,348,317,283,254,233,
+215,193,167,143,120,96,65,29,-9,-49,-87,-121,-150,-176,-199,-223,-247,-270,-290,-306,-323,
+-340,-354,-363,-369,-380,-396,-414,-429,-442,-457,-476,-500,-527,-557,-588,-617,-644,-670,-693,-714,-734,
+-755,-781,-811,-845,-880,-912,-941,-969,-1000,-1035,-1069,-1100,-1131,-1161,-1193,-1227,-1263,-1301,-1339,-1377,-1415,
+-1458,-1503,-1549,-1593,-1636,-1678,-1717,-1754,-1790,-1829,-1871,-1917,-1967,-2018,-2071,-2125,-2181,-2239,-2295,-2348,-2399,
+-2451,-2504,-2559,-2613,-2666,-2716,-2765,-2816,-2871,-2927,-2984,-3041,-3097,-3151,-3200,-3246,-3291,-3331,-3369,-3408,-3452,
+-3497,-3535,-3566,-3597,-3633,-3671,-3704,-3732,-3761,-3795,-3832,-3870,-3908,-3946,-3982,-4015,-4047,-4079,-4110,-4138,-4162,
+-4183,-4207,-4235,-4265,-4293,-4315,-4334,-4351,-4363,-4369,-4374,-4388,-4409,-4424,-4419,-4404,-4397,-4403,-4414,-4417,-4415,
+-4415,-4414,-4406,-4393,-4382,-4376,-4369,-4357,-4341,-4324,-4306,-4287,-4265,-4241,-4212,-4176,-4135,-4095,-4054,-4011,-3967,
+-3927,-3891,-3856,-3819,-3781,-3741,-3701,-3662,-3626,-3588,-3540,-3482,-3422,-3370,-3324,-3280,-3238,-3202,-3164,-3111,-3046,
+-2983,-2934,-2892,-2840,-2777,-2711,-2652,-2598,-2545,-2492,-2438,-2380,-2317,-2255,-2196,-2140,-2082,-2020,-1958,-1898,-1838,
+-1780,-1723,-1666,-1610,-1560,-1518,-1483,-1446,-1400,-1348,-1297,-1251,-1204,-1156,-1109,-1065,-1024,-982,-937,-892,-852,
+-817,-785,-755,-730,-711,-693,-672,-652,-636,-626,-617,-605,-597,-601,-630,-687,-769,-859,-933,-965,-938,
+-856,-744,-633,-542,-473,-418,-379,-355,-333,-291,-220,-131,-40,46,127,192,232,257,282,312,339,
+364,400,454,507,534,536,534,543,555,560,561,565,557,516,446,379,344,333,315,276,232,
+196,158,107,57,26,11,-15,-59,-103,-139,-190,-280,-394,-495,-560,-594,-612,-627,-666,-756,-893,
+-1034,-1140,-1208,-1263,-1324,-1393,-1467,-1543,-1620,-1695,-1771,-1854,-1939,-2018,-2081,-2128,-2164,-2201,-2251,-2317,-2382,
+-2434,-2487,-2573,-2697,-2828,-2935,-3019,-3105,-3203,-3296,-3366,-3411,-3443,-3477,-3518,-3561,-3594,-3608,-3613,-3625,-3645,
+-3659,-3662,-3665,-3686,-3720,-3748,-3755,-3746,-3738,-3744,-3760,-3768,-3745,-3695,-3656,-3678,-3774,-3906,-4015,-4084,-4125,
+-4140,-4103,-4004,-3903,-3900,-4053,-4332,-4662,-4980,-5235,-5370,-5341,-5183,-5000,-4891,-4868,-4877,-4871,-4847,-4825,-4809,
+-4796,-4782,-4771,-4765,-4761,-4754,-4740,-4714,-4680,-4639,-4595,-4548,-4504,-4468,-4436,-4406,-4375,-4348,-4320,-4288,-4251,
+-4217,-4186,-4153,-4117,-4084,-4054,-4015,-3958,-3890,-3822,-3755,-3683,-3607,-3530,-3451,-3365,-3280,-3204,-3135,-3061,-2980,
+-2899,-2819,-2734,-2646,-2573,-2528,-2504,-2485,-2462,-2434,-2398,-2354,-2308,-2268,-2231,-2189,-2143,-2102,-2070,-2036,-1995,
+-1944,-1886,-1826,-1768,-1718,-1674,-1629,-1578,-1528,-1481,-1434,-1380,-1323,-1266,-1209,-1149,-1087,-1029,-974,-917,-858,
+-803,-752,-699,-641,-581,-520,-458,-394,-330,-266,-203,-141,-81,-23,37,100,166,234,305,378,446,
+508,567,627,685,739,796,860,926,988,1045,1104,1168,1232,1294,1355,1417,1470,1511,1545,1582,1620,
+1654,1682,1710,1738,1761,1778,1792,1807,1823,1839,1855,1875,1902,1933,1964,1994,2024,2053,2081,2112,2148,
+2188,2235,2290,2355,2419,2470,2513,2571,2661,2770,2858,2901,2916,2938,2979,3019,3038,3039,3040,3049,3062,
+3077,3097,3124,3152,3179,3204,3218,3202,3148,3081,3037,3033,3048,3060,3069,3089,3116,3132,3129,3122,3127,
+3134,3122,3088,3053,3030,3011,2983,2950,2930,2923,2916,2897,2873,2855,2843,2831,2820,2820,2838,2871,2901,
+2907,2876,2809,2728,2659,2614,2586,2559,2526,2494,2474,2466,2461,2449,2428,2402,2375,2437,2393,2344,2307,
+2298,2314,2339,2348,2330,2292,2257,2244,2242,2226,2189,2146,2121,2108,2087,2049,2011,1986,1964,1930,1892,
+1872,1878,1896,1912,1930,1962,2005,2042,2063,2071,2071,2066,2053,2036,2020,2004,1977,1935,1889,1861,1849,
+1829,1779,1710,1651,1614,1580,1528,1465,1413,1380,1359,1348,1351,1365,1370,1350,1315,1280,1247,1212,1175,
+1145,1121,1093,1058,1027,1005,987,965,942,924,904,868,816,765,735,734,753,778,803,832,866,
+898,913,907,888,866,846,834,837,845,831,778,704,648,622,601,558,498,446,406,368,333,
+318,330,349,351,334,316,309,307,298,274,233,184,142,113,91,61,24,-9,-34,-56,-81,
+-100,-112,-127,-158,-200,-227,-226,-211,-206,-219,-236,-245,-252,-278,-328,-383,-415,-423,-429,-451,-476,
+-477,-450,-417,-392,-351,-264,-160,-121,-206,-383,-551,-638,-658,-667,-696,-739,-787,-842,-903,-957,-990,
+-1001,-993,-958,-899,-846,-844,-916,-1038,-1170,-1287,-1386,-1473,-1548,-1611,-1669,-1730,-1796,-1855,-1900,-1938,-1985,
+-2043,-2101,-2154,-2208,-2270,-2336,-2394,-2444,-2495,-2547,-2597,-2657,-2743,-2847,-2931,-2975,-3001,-3044,-3113,-3187,-3253,
+-3317,-3384,-3445,-3496,-3549,-3620,-3703,-3781,-3846,-3901,-3954,-4005,-4059,-4120,-4188,-4262,-4344,-4443,-4565,-4709,-4862,
+-4999,-5104,-5186,-5279,-5398,-5523,-5621,-5682,-5728,-5778,-5831,-5881,-5937,-6011,-6097,-6181,-6260,-6342,-6430,-6518,-6601,
+-6679,-6759,-6838,-6915,-6986,-7051,-7112,-7176,-7249,-7326,-7400,-7470,-7539,-7609,-7683,-7762,-7845,-7925,-7994,-8055,-8121,
+-8196,-8271,-8337,-8392,-8435,-8462,-8473,-8489,-8525,-8571,-8605,-8629,-8664,-8718,-8760,-8753,-8697,-8638,-8634,-8701,-8810,
+-8902,-8931,-8893,-8823,-8758,-8707,-8659,-8601,-8546,-8511,-8500,-8503,-8516,-8541,-8582,-8638,-8703,-8775,-8856,-8942,-9020,
+-9075,-9107,-9132,-9164,-9197,-9209,-9190,-9156,-9122,-9088,-9040,-8975,-8903,-8833,-8764,-8699,-8655,-8654,-8688,-8724,-8718,
+-8646,-8512,-8345,-8182,-8052,-7960,-7886,-7808,-7717,-7617,-7514,-7409,-7301,-7189,-7073,-6958,-6850,-6751,-6657,-6563,-6473,
+-6390,-6316,-6247,-6188,-6158,-6169,-6199,-6201,-6141,-6039,-5969,-5998,-6105,-6183,-6117,-5891,-5600,-5360,-5207,-5096,-4976,
+-4845,-4727,-4632,-4542,-4439,-4323,-4200,-4082,-3982,-3902,-3828,-3739,-3634,-3539,-3475,-3437,-3398,-3343,-3283,-3225,-3161,
+-3080,-2987,-2896,-2815,-2735,-2648,-2562,-2490,-2435,-2386,-2331,-2262,-2176,-2079,-1984,-1898,-1821,-1743,-1658,-1564,-1463,
+-1350,-1222,-1090,-968,-861,-759,-647,-520,-387,-266,-180,-134,-115,-98,-68,-28,15,65,139,246,382,
+527,665,790,909,1024,1131,1225,1313,1408,1516,1629,1739,1848,1960,2073,2183,2290,2397,2503,2608,2715,
+2830,2944,3044,3130,3218,3320,3420,3489,3510,3490,3443,3388,3357,3394,3533,3762,4017,4231,4385,4513,4641,
+4752,4813,4834,4876,4972,5086,5155,5179,5210,5256,5234,5055,4740,4432,4275,4306,4456,4626,4763,4862,4936,
+4993,5034,5057,5069,5075,5075,5068,5060,5055,5053,5046,5036,5033,5038,5046,5048,5043,5034,5021,5006,4997,
+5002,5016,5032,5048,5062,5076,5087,5103,5131,5171,5208,5228,5231,5231,5241,5257,5272,5284,5298,5316,5331,
+5335,5336,5347,5371,5384,5366,5328,5306,5314,5328,5316,5283,5256,5249,5248,5239,5229,5244,5287,5340,5384,
+5417,5450,5481,5489,5464,5435,5446,5500,5533,5457,5235,4894,4485,4049,3627,3298,3156,3244,3515,3857,4154,
+4347,4434,4455,4448,4432,4415,4402,4389,4365,4321,4266,4223,4192,4150,4084,4014,3965,3940,3917,3890,3864,
+3837,3795,3739,3690,3652,3599,3515,3431,3395,3416,3455,3468,3437,3370,3286,3222,3214,3247,3253,3188,3084,
+3018,3017,3039,3033,2997,2954,2911,2868,2851,2896,2989,3053,3015,2884,2743,2661,2640,2643,2667,2733,2833,
+2898,2868,2751,2608,2489,2405,2367,2379,2404,2369,2262,2179,2239,2431,2605,2620,2467,2249,2066,1954,1903,
+1885,1872,1850,1827,1816,1810,1789,1750,1709,1678,1655,1630,1598,1555,1504,1462,1452,1470,1480,1464,1437,
+1420,1410,1399,1400,1426,1452,1432,1363,1295,1268,1269,1259,1228,1195,1167,1128,1075,1029,1005,995,976,
+946,926,930,952,972,979,977,978,990,1008,1022,1025,1019,1011,1003,992,975,955,938,928,924,
+918,908,899,897,901,906,914,925,935,936,931,934,950,960,948,919,899,900,913,926,936,
+952,971,989,1003,1016,1030,1046,1065,1090,1117,1133,1131,1119,1112,1121,1135,1141,1129,1102,1067,1032,
+1006,993,990,984,965,937,907,878,848,817,790,771,753,729,701,675,654,636,623,615,607,
+592,566,534,500,467,434,407,386,365,337,305,277,255,234,208,181,162,146,124,92,57,
+23,-8,-40,-73,-107,-139,-171,-200,-227,-252,-275,-295,-312,-326,-336,-342,-349,-359,-371,-381,-389,
+-399,-414,-434,-455,-478,-502,-530,-560,-588,-616,-644,-673,-702,-728,-754,-781,-812,-845,-878,-910,-942,
+-976,-1012,-1047,-1081,-1112,-1140,-1167,-1198,-1234,-1274,-1312,-1346,-1381,-1421,-1466,-1513,-1561,-1609,-1655,-1697,-1735,
+-1773,-1811,-1852,-1898,-1947,-1996,-2045,-2097,-2155,-2215,-2272,-2323,-2372,-2425,-2479,-2533,-2585,-2637,-2687,-2736,-2787,
+-2839,-2892,-2947,-3003,-3059,-3112,-3162,-3210,-3258,-3302,-3342,-3381,-3425,-3469,-3506,-3536,-3566,-3603,-3640,-3673,-3701,
+-3731,-3766,-3805,-3847,-3891,-3932,-3967,-3996,-4025,-4056,-4086,-4115,-4139,-4163,-4186,-4211,-4237,-4264,-4289,-4311,-4330,
+-4345,-4352,-4357,-4369,-4388,-4401,-4396,-4382,-4376,-4381,-4388,-4387,-4386,-4391,-4395,-4388,-4374,-4363,-4360,-4354,-4339,
+-4318,-4300,-4284,-4266,-4245,-4221,-4192,-4157,-4118,-4079,-4040,-3998,-3954,-3912,-3875,-3838,-3802,-3764,-3724,-3683,-3644,
+-3609,-3572,-3524,-3466,-3411,-3367,-3326,-3278,-3226,-3183,-3147,-3103,-3044,-2981,-2927,-2879,-2825,-2765,-2706,-2653,-2600,
+-2542,-2484,-2427,-2368,-2306,-2246,-2190,-2133,-2072,-2009,-1951,-1894,-1834,-1773,-1714,-1659,-1606,-1556,-1512,-1473,-1432,
+-1385,-1336,-1288,-1240,-1193,-1149,-1108,-1068,-1025,-980,-934,-889,-845,-807,-780,-759,-739,-715,-690,-670,-655,
+-641,-625,-605,-581,-559,-546,-548,-569,-612,-672,-746,-820,-872,-883,-846,-774,-682,-581,-479,-387,-320,
+-282,-269,-264,-246,-193,-102,3,87,135,163,196,238,276,309,351,409,469,516,553,587,616,
+624,609,588,580,575,545,485,420,382,372,360,329,285,243,198,142,88,56,42,18,-26,
+-71,-102,-139,-215,-331,-452,-541,-587,-604,-620,-670,-768,-894,-1002,-1069,-1112,-1164,-1234,-1315,-1401,-1493,
+-1584,-1672,-1761,-1857,-1953,-2035,-2103,-2166,-2231,-2296,-2362,-2430,-2494,-2547,-2602,-2684,-2801,-2928,-3036,-3121,-3204,
+-3294,-3382,-3451,-3497,-3531,-3567,-3608,-3647,-3666,-3665,-3659,-3668,-3688,-3707,-3715,-3725,-3741,-3757,-3758,-3743,-3719,
+-3699,-3693,-3701,-3706,-3682,-3630,-3594,-3628,-3743,-3895,-4027,-4113,-4150,-4130,-4041,-3913,-3826,-3860,-4024,-4261,-4511,
+-4754,-4968,-5096,-5085,-4956,-4810,-4738,-4747,-4780,-4794,-4786,-4774,-4765,-4755,-4748,-4743,-4739,-4729,-4716,-4698,-4676,
+-4648,-4615,-4578,-4537,-4495,-4459,-4431,-4407,-4383,-4357,-4329,-4300,-4269,-4239,-4211,-4182,-4150,-4118,-4083,-4037,-3976,
+-3908,-3841,-3775,-3706,-3635,-3564,-3490,-3407,-3320,-3237,-3161,-3085,-3007,-2929,-2849,-2760,-2670,-2596,-2549,-2521,-2499,
+-2476,-2449,-2414,-2368,-2323,-2287,-2254,-2214,-2165,-2118,-2079,-2041,-2000,-1952,-1898,-1839,-1781,-1730,-1686,-1640,-1588,
+-1537,-1490,-1443,-1393,-1339,-1287,-1234,-1179,-1124,-1071,-1019,-964,-908,-854,-802,-747,-687,-624,-560,-493,-425,
+-359,-296,-232,-168,-105,-44,16,77,139,202,269,337,401,459,515,573,630,683,737,799,865,
+928,988,1050,1114,1176,1237,1300,1362,1417,1460,1496,1533,1570,1601,1626,1653,1685,1713,1732,1743,1752,
+1766,1783,1805,1834,1868,1902,1931,1958,1987,2017,2046,2074,2106,2147,2193,2246,2301,2351,2387,2414,2459,
+2548,2673,2795,2879,2926,2963,3008,3052,3080,3089,3086,3083,3083,3090,3104,3123,3144,3164,3180,3179,3150,
+3095,3042,3021,3033,3056,3066,3071,3089,3122,3152,3162,3162,3166,3172,3160,3123,3080,3048,3024,2993,2956,
+2928,2912,2899,2878,2855,2838,2830,2824,2818,2820,2836,2863,2884,2881,2844,2779,2710,2661,2637,2624,2603,
+2570,2539,2522,2516,2511,2501,2486,2466,2437,2484,2443,2393,2355,2342,2349,2360,2358,2335,2297,2263,2247,
+2242,2228,2192,2151,2124,2109,2086,2047,2005,1974,1951,1923,1892,1875,1879,1895,1916,1943,1980,2022,2059,
+2084,2099,2102,2090,2064,2034,2007,1983,1953,1913,1874,1851,1845,1834,1796,1733,1672,1626,1584,1531,1471,
+1423,1392,1371,1356,1354,1361,1359,1334,1297,1264,1238,1209,1175,1142,1112,1079,1044,1018,1004,992,970,
+936,898,857,811,764,725,703,698,705,719,741,771,804,830,840,837,827,816,804,796,804,
+820,813,759,675,608,578,559,520,462,411,374,339,303,280,283,296,300,292,284,283,287,
+285,267,225,163,105,66,42,18,-9,-36,-57,-79,-105,-126,-141,-160,-196,-243,-278,-289,-281,
+-271,-272,-286,-302,-315,-328,-354,-389,-418,-423,-408,-390,-378,-365,-355,-365,-391,-390,-322,-212,-156,
+-227,-399,-573,-672,-702,-715,-741,-773,-806,-849,-911,-977,-1021,-1034,-1020,-988,-951,-934,-969,-1064,-1198,
+-1336,-1458,-1560,-1645,-1707,-1746,-1774,-1812,-1866,-1922,-1968,-2006,-2051,-2104,-2156,-2202,-2253,-2317,-2386,-2445,-2489,
+-2530,-2573,-2623,-2692,-2785,-2888,-2967,-3015,-3055,-3114,-3188,-3257,-3321,-3393,-3473,-3539,-3585,-3631,-3701,-3789,-3871,
+-3936,-3991,-4040,-4083,-4125,-4175,-4236,-4302,-4375,-4469,-4599,-4759,-4917,-5043,-5134,-5220,-5333,-5468,-5586,-5661,-5706,
+-5750,-5806,-5864,-5916,-5976,-6056,-6148,-6235,-6314,-6394,-6480,-6567,-6651,-6731,-6810,-6887,-6962,-7034,-7102,-7166,-7233,
+-7307,-7386,-7463,-7535,-7604,-7675,-7746,-7821,-7903,-7985,-8057,-8116,-8175,-8244,-8320,-8392,-8453,-8499,-8526,-8537,-8551,
+-8582,-8621,-8647,-8659,-8686,-8744,-8811,-8839,-8809,-8748,-8715,-8751,-8850,-8963,-9025,-9009,-8934,-8844,-8766,-8696,-8624,
+-8559,-8519,-8508,-8508,-8505,-8508,-8532,-8584,-8657,-8745,-8846,-8953,-9049,-9117,-9157,-9187,-9219,-9247,-9256,-9239,-9209,
+-9174,-9133,-9078,-9012,-8944,-8877,-8805,-8733,-8681,-8664,-8679,-8701,-8699,-8649,-8544,-8395,-8233,-8093,-7991,-7913,-7835,
+-7744,-7641,-7533,-7422,-7311,-7198,-7083,-6966,-6854,-6755,-6667,-6579,-6484,-6393,-6314,-6249,-6202,-6187,-6206,-6229,-6201,
+-6103,-5987,-5945,-6021,-6156,-6220,-6119,-5867,-5573,-5342,-5198,-5097,-4989,-4867,-4752,-4651,-4550,-4431,-4293,-4152,-4034,
+-3956,-3912,-3866,-3784,-3667,-3548,-3458,-3399,-3350,-3301,-3250,-3199,-3138,-3058,-2967,-2878,-2795,-2709,-2618,-2528,-2453,
+-2394,-2344,-2288,-2218,-2132,-2035,-1936,-1842,-1758,-1681,-1603,-1517,-1416,-1297,-1165,-1036,-925,-831,-735,-620,-480,
+-330,-198,-105,-57,-35,-10,30,76,115,153,214,316,448,586,717,843,968,1090,1197,1291,1381,
+1480,1593,1708,1816,1917,2023,2138,2254,2360,2457,2556,2662,2774,2886,2996,3100,3196,3284,3373,3465,3547,
+3594,3592,3545,3472,3400,3372,3448,3662,3968,4262,4466,4587,4684,4781,4847,4874,4906,4989,5104,5192,5228,
+5239,5236,5171,4988,4706,4425,4259,4262,4405,4608,4788,4906,4975,5030,5083,5124,5140,5138,5132,5126,5120,
+5117,5117,5112,5098,5084,5084,5091,5093,5085,5074,5064,5054,5043,5041,5055,5079,5104,5122,5132,5139,5150,
+5176,5215,5252,5270,5270,5272,5287,5307,5318,5325,5338,5357,5370,5371,5375,5394,5417,5417,5385,5346,5331,
+5339,5342,5319,5278,5245,5232,5227,5223,5226,5252,5297,5344,5379,5411,5447,5473,5463,5421,5390,5413,5469,
+5477,5357,5086,4691,4222,3739,3334,3119,3153,3396,3733,4047,4279,4424,4493,4505,4484,4459,4451,4453,4440,
+4394,4325,4265,4231,4208,4165,4096,4028,3987,3970,3954,3927,3892,3852,3802,3744,3695,3655,3609,3546,3480,
+3433,3402,3366,3318,3269,3223,3176,3144,3154,3201,3233,3203,3128,3071,3062,3068,3049,3010,2978,2952,2915,
+2883,2903,2988,3070,3057,2941,2807,2739,2736,2736,2718,2721,2779,2845,2843,2755,2635,2537,2468,2421,2398,
+2392,2361,2287,2221,2242,2352,2457,2464,2367,2222,2086,1988,1938,1930,1935,1922,1891,1863,1850,1837,1810,
+1775,1741,1712,1683,1651,1608,1555,1509,1492,1502,1509,1491,1461,1438,1426,1416,1420,1445,1466,1441,1369,
+1299,1274,1284,1285,1260,1222,1183,1141,1106,1096,1114,1127,1098,1033,971,948,959,978,988,992,1003,
+1026,1050,1065,1069,1068,1064,1054,1036,1011,982,954,933,924,925,932,936,937,934,934,944,964,
+981,982,970,961,961,959,940,913,899,905,918,921,916,916,928,948,969,992,1018,1044,1070,
+1093,1112,1125,1131,1135,1145,1158,1164,1158,1142,1121,1095,1064,1036,1020,1015,1007,986,956,926,899,
+871,841,816,798,783,762,735,706,680,657,642,635,633,622,598,564,527,490,454,425,404,
+384,358,327,302,282,259,231,206,191,180,161,131,97,66,37,6,-28,-65,-100,-135,-167,
+-196,-224,-249,-271,-286,-295,-304,-313,-323,-335,-344,-352,-360,-372,-389,-410,-429,-447,-468,-494,-523,
+-551,-579,-609,-643,-677,-707,-731,-755,-783,-814,-846,-879,-915,-952,-989,-1022,-1054,-1085,-1113,-1139,-1169,
+-1206,-1247,-1285,-1320,-1356,-1395,-1439,-1486,-1535,-1586,-1634,-1677,-1718,-1758,-1798,-1839,-1885,-1934,-1982,-2028,-2077,
+-2132,-2191,-2246,-2296,-2345,-2399,-2454,-2507,-2556,-2606,-2657,-2709,-2760,-2811,-2862,-2914,-2967,-3021,-3072,-3122,-3172,
+-3223,-3271,-3315,-3355,-3396,-3436,-3472,-3504,-3538,-3575,-3611,-3642,-3672,-3703,-3738,-3776,-3818,-3863,-3907,-3942,-3970,
+-3997,-4027,-4059,-4090,-4119,-4146,-4170,-4192,-4214,-4239,-4265,-4288,-4309,-4325,-4335,-4341,-4350,-4363,-4372,-4370,-4362,
+-4360,-4364,-4366,-4361,-4359,-4367,-4374,-4368,-4355,-4347,-4346,-4341,-4323,-4298,-4279,-4265,-4249,-4228,-4202,-4173,-4137,
+-4099,-4061,-4025,-3989,-3949,-3908,-3868,-3827,-3788,-3749,-3710,-3667,-3625,-3588,-3551,-3503,-3446,-3394,-3358,-3323,-3273,
+-3213,-3163,-3128,-3092,-3042,-2983,-2927,-2873,-2818,-2762,-2713,-2666,-2610,-2545,-2478,-2414,-2353,-2292,-2235,-2181,-2124,
+-2062,-2001,-1946,-1891,-1830,-1766,-1707,-1655,-1605,-1553,-1503,-1456,-1409,-1364,-1322,-1278,-1230,-1180,-1137,-1099,-1060,
+-1016,-972,-932,-894,-853,-815,-787,-766,-743,-715,-690,-673,-659,-642,-618,-592,-567,-545,-527,-517,-514,
+-518,-529,-558,-609,-677,-744,-789,-802,-775,-707,-601,-470,-343,-255,-226,-251,-285,-279,-213,-116,-36,
+6,31,67,120,177,232,291,357,425,492,558,620,663,672,647,612,588,581,568,531,474,
+424,397,386,368,336,291,234,168,108,75,62,41,-3,-55,-91,-122,-183,-285,-402,-495,-549,
+-575,-604,-665,-762,-865,-937,-974,-1007,-1063,-1139,-1222,-1312,-1413,-1522,-1632,-1743,-1858,-1967,-2055,-2125,-2196,
+-2277,-2359,-2435,-2506,-2569,-2619,-2666,-2735,-2836,-2949,-3046,-3123,-3196,-3277,-3360,-3433,-3494,-3550,-3611,-3673,-3720,
+-3737,-3731,-3728,-3747,-3774,-3791,-3794,-3798,-3811,-3818,-3803,-3762,-3706,-3655,-3630,-3634,-3644,-3626,-3584,-3567,-3622,
+-3747,-3896,-4030,-4130,-4172,-4124,-3990,-3847,-3807,-3921,-4133,-4348,-4522,-4677,-4824,-4922,-4916,-4820,-4717,-4675,-4696,
+-4737,-4764,-4773,-4770,-4756,-4737,-4723,-4715,-4704,-4686,-4667,-4651,-4633,-4609,-4581,-4551,-4518,-4481,-4447,-4424,-4407,
+-4388,-4364,-4336,-4309,-4284,-4260,-4237,-4212,-4183,-4149,-4110,-4060,-4000,-3936,-3874,-3810,-3743,-3670,-3597,-3520,-3438,
+-3353,-3270,-3191,-3114,-3040,-2967,-2886,-2793,-2699,-2623,-2572,-2538,-2510,-2484,-2458,-2423,-2378,-2335,-2302,-2273,-2234,
+-2185,-2134,-2086,-2040,-1995,-1951,-1905,-1851,-1794,-1742,-1697,-1653,-1604,-1555,-1510,-1465,-1417,-1367,-1319,-1269,-1219,
+-1168,-1117,-1066,-1012,-959,-908,-856,-798,-735,-671,-604,-533,-462,-396,-333,-269,-202,-135,-71,-7,55,
+117,177,240,306,368,424,479,536,592,645,699,757,818,880,943,1008,1072,1132,1189,1247,1306,
+1361,1406,1445,1484,1524,1563,1598,1630,1657,1676,1686,1691,1698,1713,1735,1764,1797,1831,1862,1892,1922,
+1955,1988,2017,2042,2071,2108,2153,2200,2244,2278,2298,2317,2367,2473,2623,2771,2876,2932,2968,3006,3050,
+3088,3110,3117,3117,3115,3113,3115,3121,3136,3155,3165,3150,3108,3057,3023,3021,3043,3067,3079,3084,3101,
+3135,3169,3189,3196,3203,3209,3198,3160,3111,3071,3039,3006,2967,2932,2906,2884,2861,2840,2827,2820,2813,
+2808,2811,2828,2850,2864,2856,2820,2764,2706,2669,2653,2642,2621,2595,2577,2574,2575,2565,2546,2526,2508,
+2484,2507,2475,2434,2398,2376,2365,2356,2341,2317,2286,2257,2242,2238,2225,2190,2144,2109,2090,2070,2035,
+1993,1962,1943,1929,1914,1906,1910,1925,1949,1978,2009,2039,2068,2095,2114,2117,2099,2067,2031,1998,1968,
+1937,1905,1878,1860,1851,1837,1800,1743,1683,1633,1587,1535,1481,1437,1406,1381,1361,1351,1350,1339,1309,
+1272,1246,1229,1205,1169,1129,1091,1057,1025,1003,992,980,954,910,857,805,759,725,701,683,669,
+664,672,693,721,748,769,778,779,776,770,762,758,770,793,796,749,662,583,540,514,475,
+421,376,345,316,281,253,244,246,246,243,245,250,254,251,234,197,140,80,35,6,-17,
+-42,-64,-83,-105,-132,-157,-177,-202,-238,-278,-310,-330,-335,-330,-325,-337,-365,-385,-377,-351,-336,
+-347,-369,-379,-362,-323,-273,-237,-243,-285,-313,-281,-208,-178,-258,-424,-592,-696,-740,-764,-791,-817,
+-839,-873,-930,-998,-1051,-1074,-1067,-1045,-1024,-1029,-1081,-1180,-1307,-1432,-1543,-1640,-1722,-1781,-1809,-1822,-1846,
+-1894,-1954,-2009,-2054,-2098,-2147,-2194,-2239,-2294,-2363,-2436,-2496,-2538,-2574,-2614,-2668,-2742,-2837,-2934,-3010,-3061,
+-3112,-3179,-3255,-3327,-3399,-3480,-3564,-3631,-3679,-3731,-3802,-3881,-3953,-4019,-4083,-4142,-4186,-4219,-4258,-4309,-4364,
+-4424,-4513,-4647,-4812,-4965,-5076,-5158,-5251,-5379,-5522,-5635,-5698,-5736,-5779,-5838,-5898,-5955,-6021,-6103,-6196,-6285,
+-6369,-6452,-6535,-6618,-6700,-6783,-6862,-6934,-7004,-7076,-7147,-7216,-7286,-7365,-7449,-7530,-7603,-7673,-7741,-7809,-7880,
+-7957,-8039,-8112,-8172,-8229,-8296,-8373,-8448,-8511,-8559,-8587,-8599,-8610,-8634,-8668,-8692,-8700,-8714,-8762,-8838,-8902,
+-8912,-8869,-8815,-8807,-8872,-8983,-9075,-9093,-9030,-8927,-8822,-8730,-8648,-8581,-8544,-8538,-8544,-8545,-8542,-8555,-8598,
+-8671,-8766,-8876,-8986,-9076,-9136,-9175,-9211,-9251,-9283,-9294,-9284,-9263,-9231,-9184,-9122,-9053,-8985,-8918,-8846,-8773,
+-8712,-8676,-8665,-8665,-8661,-8633,-8560,-8437,-8285,-8142,-8032,-7948,-7867,-7774,-7670,-7559,-7442,-7324,-7209,-7093,-6972,
+-6856,-6754,-6668,-6579,-6481,-6383,-6304,-6247,-6215,-6215,-6243,-6256,-6202,-6078,-5964,-5954,-6065,-6201,-6230,-6086,-5813,
+-5517,-5286,-5143,-5051,-4966,-4870,-4769,-4667,-4555,-4419,-4261,-4106,-3988,-3926,-3904,-3878,-3806,-3686,-3550,-3433,-3350,
+-3293,-3252,-3215,-3172,-3111,-3032,-2943,-2852,-2761,-2668,-2572,-2478,-2397,-2334,-2285,-2235,-2171,-2092,-2001,-1907,-1813,
+-1722,-1635,-1551,-1463,-1362,-1246,-1119,-995,-884,-784,-683,-566,-431,-284,-148,-46,10,40,76,133,193,
+235,266,318,411,531,653,770,890,1014,1134,1242,1343,1444,1551,1659,1767,1870,1972,2079,2196,2314,
+2422,2518,2617,2728,2843,2951,3056,3164,3269,3358,3433,3514,3609,3689,3716,3679,3599,3512,3463,3515,3713,
+4027,4348,4571,4685,4756,4833,4902,4941,4967,5023,5113,5202,5256,5271,5240,5141,4957,4708,4455,4271,4224,
+4336,4560,4792,4947,5023,5073,5131,5182,5202,5200,5197,5197,5193,5184,5178,5172,5158,5139,5129,5131,5134,
+5131,5126,5122,5114,5101,5095,5108,5134,5157,5169,5174,5179,5189,5213,5252,5291,5314,5319,5324,5340,5359,
+5369,5377,5392,5411,5420,5419,5426,5445,5456,5436,5395,5360,5350,5349,5337,5307,5272,5246,5233,5231,5237,
+5253,5284,5327,5368,5398,5421,5439,5441,5415,5374,5353,5363,5363,5283,5076,4743,4313,3836,3399,3123,3094,
+3305,3649,3994,4261,4435,4533,4573,4566,4534,4506,4498,4496,4470,4408,4331,4274,4243,4217,4171,4110,4056,
+4024,4008,3989,3959,3920,3876,3825,3772,3723,3679,3636,3593,3549,3496,3426,3349,3299,3298,3322,3316,3265,
+3211,3199,3215,3210,3170,3125,3103,3087,3054,3015,2992,2980,2950,2909,2909,2975,3052,3054,2963,2860,2824,
+2841,2831,2757,2675,2655,2687,2706,2673,2617,2574,2538,2492,2446,2415,2385,2328,2256,2216,2229,2260,2262,
+2222,2155,2077,2006,1969,1975,1994,1985,1941,1893,1865,1853,1839,1817,1790,1758,1726,1694,1658,1613,1566,
+1539,1535,1535,1518,1494,1473,1456,1437,1430,1446,1465,1447,1385,1323,1301,1310,1312,1289,1249,1204,1162,
+1139,1151,1189,1209,1174,1093,1013,973,976,995,1008,1015,1027,1049,1073,1090,1097,1099,1096,1085,1065,
+1039,1009,978,950,934,938,954,969,969,957,947,955,980,1003,1007,990,972,961,951,931,912,
+909,926,943,945,935,930,939,958,979,1003,1034,1068,1101,1125,1138,1141,1143,1148,1160,1171,1174,
+1166,1153,1138,1119,1094,1068,1048,1038,1028,1008,980,949,921,893,865,843,827,815,796,771,744,
+716,691,670,658,650,637,614,583,551,518,485,456,431,407,379,351,328,310,288,261,238,
+225,217,199,169,136,105,74,40,6,-26,-58,-90,-122,-153,-182,-209,-232,-248,-259,-269,-282,
+-295,-308,-320,-333,-348,-365,-384,-403,-421,-437,-457,-480,-507,-532,-557,-586,-619,-651,-678,-700,-723,
+-750,-780,-811,-846,-884,-924,-961,-994,-1024,-1056,-1087,-1117,-1150,-1187,-1226,-1263,-1299,-1336,-1376,-1419,-1465,
+-1514,-1564,-1613,-1658,-1701,-1744,-1787,-1829,-1875,-1923,-1972,-2018,-2065,-2116,-2170,-2221,-2269,-2317,-2371,-2426,-2478,
+-2527,-2576,-2628,-2681,-2735,-2788,-2839,-2888,-2936,-2986,-3036,-3086,-3137,-3189,-3239,-3285,-3326,-3365,-3401,-3435,-3469,
+-3507,-3546,-3581,-3611,-3643,-3677,-3713,-3749,-3787,-3831,-3875,-3910,-3937,-3964,-3994,-4026,-4058,-4092,-4124,-4150,-4171,
+-4192,-4216,-4243,-4266,-4285,-4302,-4315,-4322,-4329,-4337,-4344,-4344,-4342,-4345,-4350,-4349,-4341,-4337,-4343,-4349,-4343,
+-4331,-4328,-4332,-4329,-4309,-4282,-4262,-4248,-4232,-4210,-4183,-4153,-4118,-4081,-4046,-4013,-3981,-3945,-3907,-3864,-3819,
+-3777,-3738,-3701,-3658,-3614,-3575,-3537,-3488,-3428,-3377,-3344,-3315,-3268,-3206,-3152,-3115,-3082,-3037,-2981,-2925,-2870,
+-2814,-2761,-2715,-2669,-2610,-2540,-2470,-2405,-2342,-2281,-2225,-2172,-2115,-2054,-1995,-1942,-1886,-1823,-1758,-1700,-1650,
+-1599,-1545,-1491,-1440,-1391,-1348,-1310,-1270,-1224,-1174,-1131,-1093,-1052,-1005,-960,-925,-895,-861,-825,-793,-765,
+-738,-713,-696,-687,-675,-651,-620,-589,-563,-540,-519,-503,-490,-476,-460,-449,-454,-484,-536,-602,-666,
+-710,-715,-671,-579,-463,-360,-306,-304,-321,-309,-252,-174,-113,-86,-75,-55,-17,37,107,190,283,
+380,474,561,630,674,691,684,662,637,624,619,600,549,482,435,422,420,400,352,282,205,
+138,97,79,61,21,-30,-73,-112,-171,-259,-355,-430,-478,-515,-562,-632,-716,-792,-839,-867,-905,
+-968,-1045,-1125,-1215,-1325,-1451,-1580,-1711,-1844,-1967,-2067,-2145,-2220,-2302,-2383,-2457,-2524,-2582,-2629,-2667,-2714,
+-2778,-2845,-2902,-2954,-3023,-3115,-3217,-3313,-3401,-3492,-3592,-3692,-3766,-3800,-3810,-3826,-3860,-3893,-3901,-3891,-3889,
+-3901,-3906,-3878,-3811,-3719,-3634,-3588,-3587,-3596,-3576,-3541,-3550,-3638,-3777,-3917,-4037,-4136,-4176,-4106,-3943,-3808,
+-3836,-4045,-4319,-4533,-4657,-4744,-4828,-4879,-4853,-4763,-4677,-4645,-4665,-4706,-4745,-4768,-4765,-4738,-4705,-4684,-4674,
+-4658,-4634,-4613,-4601,-4586,-4562,-4535,-4512,-4489,-4462,-4436,-4420,-4410,-4397,-4376,-4351,-4327,-4304,-4281,-4258,-4233,
+-4202,-4166,-4127,-4084,-4034,-3980,-3925,-3866,-3801,-3725,-3642,-3556,-3472,-3390,-3311,-3233,-3157,-3085,-3013,-2932,-2837,
+-2741,-2662,-2605,-2561,-2525,-2495,-2468,-2434,-2393,-2353,-2321,-2290,-2250,-2202,-2151,-2100,-2048,-2000,-1957,-1916,-1867,
+-1811,-1759,-1715,-1673,-1630,-1586,-1543,-1498,-1451,-1404,-1357,-1309,-1260,-1210,-1159,-1107,-1052,-1001,-952,-901,-841,
+-777,-712,-644,-572,-501,-435,-373,-309,-242,-174,-108,-41,24,87,147,209,274,338,397,453,510,
+567,623,678,733,790,848,910,975,1039,1097,1151,1203,1255,1304,1349,1389,1426,1464,1506,1548,1585,
+1611,1626,1636,1645,1657,1676,1702,1732,1761,1789,1819,1852,1888,1924,1959,1988,2014,2041,2075,2115,2156,
+2191,2213,2223,2243,2311,2443,2616,2774,2874,2920,2946,2978,3020,3059,3089,3110,3128,3137,3132,3117,3108,
+3118,3140,3149,3126,3080,3041,3027,3037,3057,3078,3095,3111,3130,3159,3189,3211,3222,3232,3239,3231,3197,
+3146,3098,3060,3022,2981,2939,2904,2874,2851,2837,2831,2824,2811,2798,2798,2814,2833,2843,2832,2800,2753,
+2706,2673,2656,2642,2622,2603,2599,2609,2615,2602,2573,2545,2527,2507,2509,2483,2451,2422,2395,2370,2344,
+2320,2296,2270,2246,2236,2236,2226,2188,2130,2080,2052,2035,2010,1977,1952,1944,1946,1949,1949,1952,1967,
+1992,2021,2046,2066,2088,2113,2128,2122,2096,2064,2033,2001,1967,1935,1909,1888,1869,1849,1823,1784,1732,
+1679,1633,1590,1542,1493,1452,1420,1391,1365,1348,1339,1322,1291,1257,1235,1221,1197,1157,1111,1071,1039,
+1011,986,965,942,910,865,811,758,717,692,676,659,641,631,640,660,682,701,718,729,731,
+727,721,718,720,736,760,765,723,639,552,492,453,411,365,329,305,279,246,218,204,198,
+194,194,200,205,198,183,164,136,95,48,7,-24,-53,-82,-107,-130,-153,-176,-196,-215,-242,
+-275,-304,-328,-353,-375,-385,-385,-400,-437,-459,-425,-339,-259,-238,-271,-311,-314,-266,-188,-121,-103,
+-134,-173,-181,-174,-205,-312,-468,-613,-708,-763,-800,-832,-855,-874,-904,-951,-1009,-1061,-1096,-1111,-1112,
+-1114,-1133,-1184,-1270,-1374,-1476,-1570,-1656,-1736,-1797,-1830,-1847,-1872,-1919,-1983,-2044,-2094,-2138,-2183,-2231,-2283,
+-2346,-2420,-2493,-2551,-2590,-2623,-2664,-2725,-2808,-2906,-2998,-3070,-3125,-3181,-3254,-3336,-3417,-3491,-3560,-3621,-3676,
+-3740,-3821,-3908,-3979,-4034,-4095,-4170,-4239,-4284,-4314,-4347,-4389,-4431,-4483,-4574,-4717,-4883,-5024,-5120,-5200,-5302,
+-5438,-5575,-5674,-5727,-5763,-5810,-5873,-5939,-6004,-6073,-6153,-6240,-6329,-6419,-6506,-6587,-6662,-6741,-6825,-6906,-6977,
+-7044,-7115,-7190,-7264,-7339,-7422,-7511,-7595,-7668,-7734,-7799,-7866,-7937,-8013,-8093,-8167,-8229,-8286,-8352,-8427,-8502,
+-8567,-8617,-8649,-8663,-8669,-8684,-8712,-8739,-8751,-8759,-8792,-8864,-8949,-9000,-8988,-8932,-8886,-8902,-8982,-9079,-9126,
+-9088,-8986,-8867,-8766,-8690,-8636,-8607,-8602,-8613,-8626,-8635,-8650,-8684,-8745,-8832,-8935,-9030,-9099,-9139,-9175,-9224,
+-9282,-9325,-9341,-9334,-9315,-9284,-9236,-9172,-9100,-9029,-8961,-8889,-8817,-8751,-8699,-8663,-8643,-8633,-8617,-8568,-8470,
+-8335,-8198,-8085,-7993,-7904,-7806,-7699,-7585,-7463,-7337,-7213,-7091,-6969,-6850,-6747,-6658,-6566,-6464,-6365,-6290,-6243,
+-6225,-6243,-6282,-6294,-6223,-6085,-5978,-5991,-6110,-6219,-6198,-6017,-5736,-5449,-5224,-5081,-4997,-4934,-4862,-4776,-4677,
+-4558,-4408,-4234,-4067,-3944,-3880,-3856,-3829,-3765,-3657,-3524,-3395,-3294,-3232,-3199,-3176,-3140,-3082,-3005,-2917,-2824,
+-2727,-2629,-2530,-2430,-2338,-2268,-2221,-2181,-2127,-2053,-1970,-1885,-1797,-1705,-1608,-1511,-1413,-1311,-1202,-1087,-969,
+-848,-726,-606,-488,-365,-229,-91,21,89,124,163,228,298,344,373,421,509,620,728,832,945,
+1064,1177,1285,1395,1510,1617,1714,1811,1919,2032,2147,2263,2380,2492,2595,2696,2802,2909,3006,3102,3210,
+3326,3425,3502,3581,3682,3783,3838,3828,3779,3732,3722,3784,3947,4200,4469,4669,4778,4842,4908,4979,5029,
+5057,5086,5136,5205,5276,5322,5313,5227,5071,4867,4637,4416,4277,4302,4496,4758,4960,5063,5119,5179,5236,
+5261,5262,5267,5278,5276,5256,5237,5229,5220,5203,5186,5181,5185,5189,5189,5186,5176,5161,5154,5165,5187,
+5201,5205,5207,5215,5228,5250,5288,5333,5364,5373,5374,5384,5398,5411,5424,5444,5464,5471,5471,5481,5495,
+5488,5450,5405,5378,5367,5351,5322,5293,5272,5257,5245,5242,5250,5269,5299,5339,5378,5406,5415,5411,5392,
+5362,5329,5299,5245,5119,4892,4578,4211,3820,3445,3176,3110,3277,3598,3950,4244,4456,4589,4651,4652,4619,
+4579,4552,4536,4515,4471,4405,4337,4287,4253,4216,4168,4120,4085,4062,4042,4015,3983,3945,3903,3860,3817,
+3773,3726,3682,3647,3613,3557,3470,3390,3378,3455,3554,3575,3483,3344,3253,3233,3237,3220,3188,3159,3130,
+3089,3046,3018,2998,2960,2914,2904,2950,3004,2996,2922,2854,2854,2893,2885,2790,2662,2581,2571,2594,2609,
+2612,2605,2576,2521,2468,2444,2433,2393,2310,2219,2159,2140,2141,2140,2125,2091,2049,2024,2028,2043,2036,
+1999,1952,1912,1883,1859,1840,1820,1793,1758,1724,1693,1660,1626,1599,1585,1575,1559,1544,1531,1509,1474,
+1445,1441,1450,1437,1393,1347,1329,1333,1329,1305,1268,1228,1191,1169,1172,1192,1196,1158,1089,1024,994,
+1001,1024,1039,1040,1039,1049,1072,1097,1113,1117,1112,1098,1078,1055,1031,1007,982,962,957,970,987,
+989,974,957,959,984,1011,1018,1004,985,971,959,944,934,939,959,977,980,970,964,973,993,
+1017,1042,1069,1102,1134,1159,1170,1169,1164,1161,1163,1166,1169,1169,1164,1153,1135,1112,1087,1068,1057,
+1051,1040,1018,988,954,920,890,866,848,834,816,794,771,748,727,706,687,669,650,628,603,
+579,554,525,495,465,435,407,382,362,342,318,291,270,259,248,229,200,168,137,106,73,
+44,18,-8,-38,-70,-101,-130,-159,-186,-208,-224,-238,-251,-263,-275,-291,-311,-334,-355,-374,-391,
+-408,-426,-446,-469,-493,-515,-539,-565,-595,-622,-644,-665,-689,-718,-749,-780,-814,-853,-893,-931,-963,
+-994,-1027,-1062,-1099,-1136,-1172,-1209,-1244,-1280,-1318,-1358,-1400,-1445,-1492,-1542,-1590,-1637,-1684,-1730,-1774,-1817,
+-1861,-1911,-1962,-2012,-2060,-2108,-2156,-2203,-2247,-2293,-2344,-2397,-2448,-2497,-2547,-2598,-2650,-2705,-2761,-2814,-2862,
+-2907,-2952,-3001,-3053,-3105,-3156,-3206,-3251,-3293,-3332,-3367,-3399,-3434,-3474,-3515,-3551,-3582,-3615,-3652,-3690,-3725,
+-3763,-3805,-3847,-3881,-3907,-3933,-3962,-3992,-4024,-4058,-4092,-4122,-4144,-4166,-4192,-4219,-4241,-4258,-4273,-4286,-4296,
+-4304,-4311,-4317,-4319,-4321,-4327,-4333,-4332,-4324,-4319,-4321,-4321,-4313,-4304,-4305,-4311,-4308,-4288,-4262,-4243,-4228,
+-4211,-4187,-4160,-4130,-4098,-4065,-4034,-4004,-3972,-3937,-3899,-3856,-3810,-3766,-3729,-3693,-3652,-3609,-3570,-3531,-3480,
+-3419,-3364,-3329,-3303,-3262,-3204,-3148,-3106,-3069,-3024,-2970,-2915,-2861,-2806,-2752,-2702,-2651,-2591,-2525,-2461,-2401,
+-2341,-2279,-2220,-2165,-2108,-2048,-1991,-1937,-1880,-1817,-1754,-1698,-1645,-1590,-1534,-1482,-1434,-1387,-1343,-1303,-1263,
+-1218,-1172,-1131,-1094,-1051,-1000,-953,-918,-890,-859,-825,-792,-762,-736,-719,-713,-710,-696,-666,-628,-592,
+-563,-537,-512,-489,-469,-448,-427,-405,-385,-372,-376,-403,-452,-511,-563,-593,-592,-564,-522,-483,-450,
+-413,-358,-285,-210,-155,-126,-118,-119,-118,-96,-41,50,170,304,433,539,608,647,680,712,729,
+722,705,697,680,629,550,489,472,477,459,405,331,255,188,139,108,83,45,-2,-48,-94,
+-156,-235,-308,-357,-391,-435,-499,-574,-643,-697,-737,-774,-823,-888,-963,-1046,-1149,-1275,-1413,-1550,-1689,
+-1835,-1977,-2096,-2188,-2266,-2337,-2395,-2440,-2479,-2518,-2554,-2585,-2614,-2635,-2640,-2638,-2661,-2737,-2861,-3000,-3125,
+-3236,-3348,-3474,-3604,-3712,-3785,-3836,-3890,-3948,-3988,-3997,-3994,-4004,-4026,-4027,-3981,-3888,-3771,-3667,-3607,-3592,
+-3577,-3531,-3487,-3518,-3647,-3820,-3970,-4081,-4164,-4179,-4076,-3891,-3778,-3874,-4160,-4482,-4701,-4807,-4866,-4911,-4914,
+-4843,-4726,-4627,-4590,-4611,-4662,-4717,-4751,-4744,-4704,-4662,-4641,-4634,-4617,-4590,-4568,-4556,-4541,-4515,-4488,-4472,
+-4462,-4448,-4433,-4424,-4418,-4409,-4392,-4373,-4352,-4329,-4304,-4278,-4251,-4218,-4179,-4139,-4102,-4063,-4017,-3965,-3912,
+-3853,-3781,-3696,-3606,-3521,-3444,-3370,-3293,-3215,-3140,-3065,-2982,-2888,-2795,-2714,-2650,-2596,-2551,-2516,-2485,-2451,
+-2411,-2374,-2341,-2306,-2263,-2216,-2169,-2122,-2071,-2021,-1978,-1936,-1888,-1833,-1780,-1736,-1696,-1657,-1617,-1573,-1526,
+-1477,-1431,-1386,-1338,-1288,-1238,-1188,-1134,-1079,-1027,-979,-928,-868,-805,-742,-675,-604,-533,-467,-405,-341,
+-275,-209,-144,-77,-9,54,114,176,241,307,368,426,483,542,601,659,714,768,824,884,947,
+1008,1066,1120,1170,1215,1257,1301,1342,1377,1409,1444,1485,1523,1552,1574,1593,1610,1627,1648,1673,1700,
+1725,1749,1781,1819,1857,1893,1925,1955,1984,2012,2041,2075,2110,2140,2157,2164,2190,2274,2429,2618,2775,
+2862,2893,2912,2943,2979,3007,3029,3059,3096,3123,3119,3092,3074,3087,3118,3128,3101,3062,3046,3056,3070,
+3077,3085,3106,3133,3159,3184,3211,3234,3247,3254,3258,3250,3220,3171,3120,3075,3034,2991,2947,2906,2873,
+2851,2845,2848,2842,2821,2796,2788,2799,2816,2822,2811,2785,2748,2711,2681,2659,2640,2620,2606,2605,2615,
+2620,2606,2578,2550,2529,2509,2498,2472,2448,2426,2401,2371,2339,2310,2285,2259,2239,2234,2240,2232,2188,
+2117,2052,2015,1999,1983,1961,1946,1950,1966,1979,1982,1984,1997,2025,2056,2081,2101,2124,2145,2150,2130,
+2096,2065,2041,2014,1980,1946,1919,1896,1869,1836,1800,1760,1716,1672,1632,1592,1548,1503,1466,1434,1402,
+1371,1348,1334,1317,1290,1261,1238,1218,1189,1148,1103,1065,1032,1000,964,926,891,857,821,777,729,
+687,659,640,622,605,601,615,633,645,654,668,680,679,667,658,662,674,690,703,699,659,
+584,498,429,378,334,295,268,248,223,193,169,158,155,152,152,155,150,130,103,81,61,
+36,3,-28,-58,-89,-121,-153,-185,-214,-236,-246,-256,-278,-308,-333,-353,-381,-416,-440,-450,-471,
+-511,-529,-469,-336,-204,-147,-173,-226,-244,-205,-129,-61,-34,-49,-81,-113,-163,-259,-397,-537,-645,
+-718,-773,-819,-854,-877,-897,-925,-960,-1000,-1042,-1087,-1131,-1169,-1201,-1237,-1287,-1354,-1432,-1513,-1591,-1667,
+-1741,-1806,-1853,-1886,-1920,-1966,-2025,-2084,-2134,-2178,-2225,-2279,-2341,-2412,-2488,-2559,-2612,-2648,-2678,-2723,-2795,
+-2889,-2990,-3078,-3144,-3199,-3261,-3340,-3430,-3516,-3578,-3611,-3629,-3668,-3756,-3879,-3992,-4063,-4110,-4167,-4241,-4306,
+-4347,-4377,-4413,-4449,-4481,-4531,-4638,-4801,-4972,-5100,-5182,-5258,-5366,-5498,-5616,-5692,-5738,-5782,-5842,-5915,-5988,
+-6056,-6126,-6201,-6281,-6369,-6463,-6553,-6630,-6699,-6774,-6860,-6945,-7018,-7085,-7158,-7237,-7314,-7392,-7476,-7567,-7652,
+-7723,-7784,-7848,-7917,-7992,-8072,-8154,-8228,-8289,-8346,-8409,-8482,-8556,-8622,-8674,-8711,-8728,-8730,-8733,-8751,-8782,
+-8807,-8825,-8853,-8914,-9000,-9072,-9092,-9052,-8989,-8956,-8984,-9056,-9112,-9095,-9004,-8885,-8790,-8739,-8715,-8700,-8692,
+-8700,-8724,-8753,-8779,-8807,-8849,-8916,-8999,-9072,-9117,-9144,-9185,-9257,-9341,-9399,-9415,-9400,-9372,-9336,-9288,-9226,
+-9155,-9081,-9008,-8937,-8868,-8800,-8736,-8683,-8647,-8630,-8615,-8577,-8497,-8381,-8256,-8141,-8039,-7938,-7832,-7722,-7606,
+-7479,-7344,-7210,-7082,-6959,-6843,-6740,-6647,-6551,-6447,-6352,-6283,-6245,-6240,-6274,-6328,-6341,-6259,-6114,-6014,-6037,
+-6142,-6203,-6127,-5917,-5644,-5380,-5173,-5038,-4962,-4909,-4849,-4771,-4677,-4556,-4396,-4209,-4032,-3902,-3825,-3780,-3740,
+-3682,-3596,-3481,-3355,-3246,-3176,-3144,-3126,-3095,-3042,-2970,-2886,-2792,-2695,-2598,-2499,-2392,-2288,-2207,-2160,-2127,
+-2080,-2010,-1931,-1854,-1775,-1685,-1582,-1474,-1368,-1265,-1164,-1061,-945,-812,-665,-522,-395,-275,-142,2,125,
+194,220,249,310,380,426,454,501,590,698,802,903,1014,1131,1240,1346,1461,1580,1684,1772,1869,
+1988,2117,2237,2348,2462,2578,2683,2776,2866,2953,3037,3126,3234,3358,3474,3568,3657,3760,3864,3937,3967,
+3981,4014,4078,4166,4284,4437,4609,4761,4869,4939,4999,5062,5116,5150,5166,5185,5231,5314,5403,5449,5419,
+5324,5184,4989,4734,4484,4367,4462,4702,4936,5079,5156,5225,5289,5322,5328,5337,5355,5356,5330,5301,5292,
+5292,5280,5259,5246,5247,5251,5249,5242,5229,5214,5208,5217,5234,5245,5248,5253,5263,5275,5293,5330,5378,
+5412,5418,5411,5412,5426,5442,5460,5483,5503,5511,5516,5527,5535,5516,5472,5432,5411,5393,5358,5314,5281,
+5261,5239,5213,5196,5196,5213,5245,5291,5337,5365,5367,5354,5330,5293,5235,5140,4971,4697,4343,3982,3671,
+3422,3245,3199,3336,3627,3957,4234,4442,4601,4706,4734,4696,4641,4605,4588,4567,4529,4474,4410,4351,4302,
+4258,4211,4163,4127,4108,4093,4070,4038,4003,3963,3922,3883,3852,3820,3780,3738,3702,3667,3607,3521,3457,
+3479,3593,3712,3724,3599,3424,3306,3276,3284,3279,3259,3238,3211,3167,3117,3074,3029,2969,2912,2899,2931,
+2953,2917,2844,2800,2820,2864,2865,2797,2693,2607,2571,2582,2617,2645,2637,2582,2506,2459,2466,2495,2482,
+2400,2280,2181,2133,2127,2139,2153,2162,2162,2153,2135,2112,2091,2077,2062,2029,1973,1914,1874,1854,1832,
+1797,1755,1720,1698,1684,1674,1660,1638,1615,1601,1591,1565,1516,1466,1440,1433,1419,1389,1360,1350,1349,
+1337,1312,1284,1255,1226,1198,1178,1163,1141,1102,1053,1015,1004,1021,1049,1064,1056,1036,1033,1056,1095,
+1124,1134,1127,1109,1087,1065,1048,1036,1020,1000,984,984,997,1005,997,981,977,995,1023,1038,1034,
+1019,1004,993,984,979,983,996,1009,1012,1005,999,1006,1028,1057,1083,1102,1120,1143,1166,1181,1185,
+1182,1174,1165,1160,1164,1172,1174,1163,1142,1119,1099,1082,1071,1067,1064,1051,1025,989,952,920,892,
+868,846,825,803,781,763,749,735,719,700,681,661,640,618,593,564,531,498,467,442,423,
+405,383,354,326,305,292,279,257,229,200,173,144,115,91,69,44,14,-18,-47,-76,-107,
+-140,-169,-191,-206,-217,-226,-236,-253,-278,-305,-328,-346,-362,-380,-400,-422,-445,-470,-493,-517,-543,
+-570,-596,-618,-640,-666,-695,-726,-757,-789,-825,-863,-899,-931,-963,-996,-1034,-1074,-1114,-1153,-1189,-1225,
+-1262,-1299,-1338,-1378,-1421,-1467,-1516,-1566,-1614,-1663,-1711,-1757,-1801,-1845,-1895,-1948,-2003,-2054,-2102,-2147,-2190,
+-2233,-2276,-2322,-2370,-2420,-2470,-2519,-2567,-2615,-2668,-2724,-2780,-2829,-2874,-2918,-2967,-3020,-3073,-3124,-3171,-3216,
+-3259,-3299,-3335,-3368,-3403,-3444,-3486,-3522,-3554,-3589,-3627,-3666,-3703,-3742,-3785,-3827,-3860,-3885,-3910,-3936,-3963,
+-3991,-4023,-4057,-4087,-4111,-4134,-4161,-4187,-4209,-4224,-4238,-4251,-4261,-4270,-4279,-4287,-4292,-4296,-4302,-4309,-4310,
+-4304,-4299,-4296,-4292,-4284,-4278,-4279,-4282,-4275,-4255,-4232,-4215,-4201,-4183,-4161,-4135,-4106,-4076,-4048,-4021,-3993,
+-3959,-3920,-3880,-3840,-3797,-3757,-3720,-3684,-3644,-3601,-3562,-3524,-3475,-3413,-3356,-3316,-3286,-3247,-3194,-3139,-3093,
+-3050,-3001,-2947,-2896,-2846,-2793,-2736,-2679,-2622,-2563,-2505,-2452,-2399,-2342,-2280,-2218,-2160,-2102,-2044,-1989,-1934,
+-1876,-1815,-1757,-1703,-1647,-1587,-1530,-1481,-1438,-1392,-1345,-1299,-1256,-1212,-1169,-1131,-1093,-1049,-1000,-954,-918,
+-886,-854,-823,-796,-772,-752,-741,-737,-729,-706,-671,-631,-594,-561,-533,-507,-480,-449,-418,-394,-376,
+-356,-328,-299,-282,-284,-306,-344,-396,-456,-514,-559,-576,-560,-513,-445,-371,-299,-231,-174,-138,-133,
+-152,-166,-144,-72,43,187,335,459,542,593,647,714,771,791,783,771,749,693,611,546,526,
+523,494,433,365,307,256,209,168,126,73,15,-32,-72,-124,-191,-248,-279,-305,-355,-431,-507,
+-566,-611,-656,-706,-760,-822,-898,-996,-1122,-1267,-1414,-1556,-1702,-1860,-2018,-2153,-2256,-2329,-2374,-2387,-2373,
+-2353,-2346,-2358,-2385,-2416,-2428,-2408,-2376,-2383,-2466,-2611,-2772,-2909,-3020,-3125,-3241,-3366,-3486,-3596,-3702,-3808,
+-3901,-3961,-3992,-4028,-4084,-4135,-4136,-4072,-3963,-3843,-3739,-3668,-3624,-3572,-3496,-3444,-3494,-3662,-3873,-4043,-4149,
+-4201,-4170,-4028,-3840,-3768,-3925,-4256,-4591,-4805,-4907,-4964,-4996,-4965,-4851,-4697,-4574,-4527,-4552,-4620,-4695,-4740,
+-4733,-4688,-4645,-4626,-4619,-4599,-4568,-4543,-4527,-4508,-4480,-4456,-4447,-4446,-4442,-4436,-4432,-4428,-4419,-4405,-4389,
+-4372,-4349,-4323,-4300,-4277,-4244,-4200,-4155,-4117,-4079,-4033,-3980,-3927,-3875,-3814,-3740,-3658,-3580,-3507,-3435,-3358,
+-3276,-3195,-3115,-3031,-2943,-2855,-2775,-2704,-2640,-2587,-2545,-2507,-2465,-2420,-2381,-2347,-2310,-2265,-2219,-2178,-2138,
+-2093,-2047,-2003,-1960,-1910,-1855,-1802,-1755,-1713,-1673,-1632,-1587,-1536,-1485,-1439,-1395,-1347,-1297,-1248,-1200,-1148,
+-1093,-1041,-992,-939,-880,-819,-759,-695,-626,-555,-490,-427,-363,-297,-234,-171,-106,-39,23,84,146,
+211,276,337,395,452,512,572,632,689,744,801,861,921,978,1035,1092,1143,1185,1224,1268,1313,
+1350,1378,1407,1442,1477,1507,1531,1554,1574,1590,1609,1636,1665,1691,1718,1753,1795,1833,1865,1895,1925,
+1954,1980,2004,2031,2062,2090,2107,2115,2142,2230,2394,2591,2751,2832,2858,2877,2909,2936,2946,2952,2980,
+3030,3069,3069,3041,3027,3053,3093,3101,3074,3052,3069,3106,3123,3113,3105,3121,3151,3179,3205,3235,3262,
+3274,3272,3264,3250,3220,3174,3123,3078,3037,2995,2953,2914,2882,2862,2860,2866,2862,2836,2803,2786,2792,
+2805,2808,2797,2778,2755,2727,2697,2668,2642,2621,2608,2603,2603,2598,2585,2565,2544,2522,2498,2479,2453,
+2433,2417,2397,2370,2338,2307,2278,2251,2234,2234,2242,2231,2181,2105,2037,1998,1982,1970,1956,1951,1965,
+1989,2005,2008,2007,2019,2046,2078,2106,2131,2156,2175,2172,2143,2104,2074,2053,2030,1998,1963,1932,1901,
+1866,1828,1790,1752,1712,1673,1634,1595,1554,1515,1481,1450,1416,1379,1350,1332,1318,1299,1275,1248,1218,
+1185,1148,1109,1069,1026,979,930,882,843,816,796,767,723,673,630,600,578,566,571,589,603,
+604,603,613,623,616,597,585,594,610,617,611,594,559,501,429,360,305,262,229,206,186,
+159,131,114,112,115,113,110,105,92,69,43,25,9,-13,-41,-67,-88,-110,-139,-175,-218,
+-263,-295,-305,-305,-317,-343,-371,-394,-423,-457,-483,-501,-529,-570,-579,-502,-347,-193,-116,-126,-172,
+-194,-170,-118,-72,-57,-68,-90,-127,-207,-343,-501,-627,-700,-744,-788,-834,-868,-890,-911,-936,-960,
+-984,-1020,-1076,-1147,-1219,-1280,-1333,-1384,-1437,-1496,-1560,-1626,-1693,-1759,-1826,-1886,-1938,-1980,-2022,-2070,-2121,
+-2172,-2220,-2270,-2330,-2399,-2475,-2553,-2623,-2677,-2712,-2743,-2790,-2869,-2972,-3074,-3156,-3217,-3273,-3339,-3419,-3510,
+-3592,-3639,-3645,-3640,-3677,-3786,-3932,-4055,-4127,-4176,-4237,-4305,-4357,-4390,-4426,-4470,-4503,-4525,-4576,-4702,-4888,
+-5064,-5178,-5243,-5312,-5415,-5532,-5627,-5687,-5736,-5798,-5879,-5963,-6037,-6103,-6170,-6242,-6321,-6409,-6504,-6593,-6669,
+-6736,-6811,-6898,-6984,-7060,-7130,-7206,-7287,-7366,-7442,-7523,-7612,-7698,-7769,-7832,-7896,-7968,-8047,-8129,-8209,-8282,
+-8344,-8401,-8464,-8538,-8612,-8679,-8732,-8771,-8791,-8791,-8782,-8787,-8818,-8862,-8903,-8942,-8994,-9064,-9135,-9173,-9158,
+-9099,-9035,-9011,-9038,-9080,-9074,-8997,-8887,-8806,-8781,-8787,-8787,-8779,-8785,-8819,-8867,-8906,-8930,-8954,-8996,-9053,
+-9103,-9131,-9157,-9216,-9318,-9427,-9497,-9507,-9478,-9436,-9392,-9342,-9281,-9210,-9133,-9057,-8987,-8922,-8855,-8783,-8717,
+-8671,-8646,-8627,-8589,-8518,-8416,-8299,-8182,-8071,-7961,-7850,-7738,-7620,-7490,-7349,-7209,-7077,-6955,-6843,-6741,-6644,
+-6542,-6438,-6349,-6288,-6258,-6263,-6308,-6368,-6376,-6283,-6134,-6045,-6076,-6158,-6167,-6037,-5806,-5547,-5312,-5126,-5004,
+-4935,-4886,-4826,-4751,-4663,-4545,-4380,-4182,-3999,-3864,-3777,-3715,-3661,-3606,-3536,-3440,-3321,-3209,-3130,-3088,-3063,
+-3032,-2985,-2920,-2841,-2750,-2655,-2563,-2465,-2355,-2243,-2152,-2099,-2064,-2018,-1952,-1878,-1808,-1735,-1645,-1538,-1425,
+-1317,-1217,-1120,-1019,-903,-763,-606,-451,-312,-178,-29,126,248,304,312,326,379,445,487,511,557,
+646,755,863,970,1088,1209,1318,1420,1531,1645,1746,1837,1944,2075,2210,2326,2431,2544,2660,2762,2841,
+2913,2991,3077,3172,3279,3400,3519,3625,3723,3826,3928,4016,4088,4167,4275,4403,4518,4603,4676,4765,4873,
+4973,5043,5088,5131,5182,5227,5251,5264,5301,5387,5505,5599,5630,5604,5537,5402,5153,4822,4556,4500,4658,
+4892,5072,5178,5261,5337,5383,5395,5404,5423,5429,5405,5375,5365,5367,5359,5336,5318,5313,5311,5304,5292,
+5280,5267,5259,5264,5280,5294,5302,5309,5315,5319,5332,5368,5419,5453,5455,5443,5445,5463,5481,5496,5515,
+5533,5543,5547,5556,5561,5543,5505,5469,5444,5414,5366,5312,5266,5221,5165,5109,5074,5066,5080,5119,5181,
+5244,5279,5284,5273,5241,5160,5011,4793,4504,4150,3787,3505,3354,3309,3337,3460,3701,4008,4275,4452,4576,
+4689,4766,4763,4698,4639,4618,4613,4592,4548,4492,4433,4372,4316,4264,4214,4170,4142,4129,4116,4091,4056,
+4017,3974,3928,3888,3863,3847,3825,3792,3755,3711,3649,3574,3526,3552,3644,3717,3685,3546,3394,3315,3311,
+3326,3324,3315,3309,3291,3248,3197,3146,3080,2992,2919,2906,2936,2939,2884,2814,2788,2803,2817,2804,2772,
+2734,2688,2646,2637,2671,2711,2702,2629,2535,2485,2502,2548,2556,2490,2374,2263,2196,2172,2173,2199,2252,
+2309,2324,2272,2184,2128,2135,2169,2161,2090,1993,1925,1897,1880,1846,1798,1756,1736,1738,1746,1738,1707,
+1670,1645,1630,1601,1547,1489,1451,1431,1412,1390,1375,1371,1366,1348,1323,1301,1283,1261,1232,1199,1165,
+1127,1087,1049,1022,1015,1031,1059,1073,1057,1027,1016,1043,1092,1132,1147,1140,1123,1101,1079,1065,1061,
+1056,1039,1015,1002,1008,1023,1026,1014,1006,1017,1046,1072,1079,1068,1050,1038,1032,1029,1025,1024,1030,
+1037,1038,1035,1040,1062,1094,1116,1123,1126,1138,1158,1177,1189,1192,1186,1174,1164,1168,1180,1184,1171,
+1149,1130,1117,1102,1085,1072,1066,1056,1036,1009,982,958,932,902,872,847,821,796,774,761,754,
+746,735,722,707,686,658,625,591,557,524,496,477,465,451,428,398,370,349,332,314,290,
+264,238,213,187,161,137,114,88,56,25,-1,-27,-58,-94,-128,-154,-170,-180,-188,-199,-217,
+-242,-269,-292,-311,-330,-348,-367,-389,-415,-444,-471,-496,-521,-547,-574,-600,-624,-650,-677,-706,-736,
+-767,-799,-833,-867,-899,-930,-962,-999,-1040,-1083,-1124,-1165,-1205,-1244,-1280,-1316,-1353,-1394,-1440,-1488,-1538,
+-1589,-1640,-1690,-1739,-1785,-1829,-1876,-1929,-1986,-2041,-2090,-2135,-2177,-2219,-2261,-2303,-2346,-2394,-2443,-2492,-2537,
+-2581,-2630,-2684,-2739,-2790,-2837,-2884,-2933,-2986,-3039,-3091,-3138,-3182,-3224,-3265,-3304,-3339,-3375,-3415,-3456,-3493,
+-3527,-3563,-3601,-3640,-3679,-3720,-3764,-3807,-3840,-3864,-3887,-3912,-3938,-3964,-3992,-4023,-4051,-4075,-4099,-4125,-4150,
+-4170,-4187,-4201,-4213,-4223,-4232,-4244,-4254,-4261,-4265,-4272,-4280,-4283,-4280,-4275,-4271,-4266,-4260,-4257,-4256,-4252,
+-4237,-4215,-4194,-4179,-4167,-4152,-4133,-4109,-4081,-4052,-4025,-4001,-3974,-3937,-3894,-3853,-3818,-3783,-3747,-3710,-3672,
+-3631,-3588,-3547,-3508,-3462,-3406,-3350,-3304,-3266,-3224,-3173,-3122,-3075,-3028,-2977,-2925,-2876,-2830,-2780,-2723,-2662,
+-2602,-2544,-2491,-2441,-2390,-2333,-2273,-2213,-2155,-2097,-2040,-1986,-1932,-1874,-1815,-1759,-1706,-1650,-1589,-1532,-1485,
+-1442,-1395,-1346,-1298,-1253,-1210,-1167,-1127,-1086,-1041,-997,-959,-925,-892,-859,-832,-813,-797,-784,-773,-760,
+-737,-703,-666,-631,-596,-560,-530,-506,-478,-439,-396,-364,-345,-328,-302,-268,-235,-207,-189,-186,-204,
+-249,-318,-396,-461,-495,-498,-483,-456,-415,-352,-274,-204,-168,-170,-184,-175,-128,-45,64,194,328,
+443,533,613,696,769,812,828,827,801,739,657,598,578,563,518,449,388,348,319,291,259,
+208,125,34,-25,-49,-74,-119,-169,-202,-234,-292,-374,-449,-501,-545,-596,-649,-701,-758,-840,-955,
+-1098,-1254,-1410,-1565,-1725,-1894,-2056,-2191,-2287,-2344,-2354,-2311,-2226,-2134,-2069,-2050,-2078,-2137,-2194,-2220,-2219,
+-2235,-2306,-2429,-2568,-2691,-2790,-2872,-2947,-3024,-3113,-3229,-3371,-3523,-3649,-3731,-3791,-3874,-3986,-4082,-4106,-4057,
+-3970,-3878,-3784,-3692,-3606,-3524,-3453,-3432,-3515,-3702,-3918,-4081,-4163,-4171,-4097,-3947,-3807,-3811,-4026,-4369,-4678,
+-4866,-4958,-5017,-5048,-5007,-4878,-4705,-4564,-4503,-4526,-4603,-4690,-4745,-4747,-4711,-4672,-4650,-4633,-4606,-4572,-4545,
+-4525,-4501,-4472,-4449,-4442,-4443,-4442,-4440,-4439,-4436,-4425,-4411,-4397,-4380,-4356,-4332,-4316,-4303,-4277,-4231,-4181,
+-4138,-4097,-4049,-3993,-3936,-3885,-3831,-3768,-3697,-3626,-3556,-3483,-3403,-3319,-3236,-3155,-3073,-2992,-2912,-2834,-2754,
+-2679,-2619,-2572,-2525,-2469,-2413,-2371,-2339,-2304,-2259,-2214,-2176,-2141,-2103,-2062,-2020,-1976,-1928,-1876,-1823,-1772,
+-1722,-1675,-1632,-1585,-1534,-1483,-1436,-1392,-1344,-1294,-1247,-1202,-1153,-1099,-1047,-996,-941,-881,-822,-765,-705,
+-637,-569,-505,-444,-381,-318,-256,-194,-130,-66,-4,57,121,185,246,305,363,422,482,542,603,
+661,717,776,837,896,950,1004,1062,1115,1158,1198,1243,1292,1333,1363,1391,1423,1453,1477,1497,1515,
+1530,1544,1565,1597,1633,1664,1696,1734,1776,1815,1847,1876,1904,1928,1948,1968,1992,2020,2048,2069,2080,
+2102,2178,2332,2531,2699,2790,2821,2841,2870,2890,2888,2885,2911,2964,3008,3013,2993,2994,3031,3070,3070,
+3044,3044,3096,3162,3187,3172,3156,3167,3189,3207,3226,3258,3288,3296,3281,3260,3236,3203,3159,3112,3071,
+3033,2993,2956,2923,2895,2875,2870,2875,2872,2849,2817,2798,2799,2805,2803,2792,2779,2764,2743,2710,2671,
+2637,2616,2608,2602,2590,2573,2556,2542,2527,2506,2479,2451,2427,2410,2398,2382,2360,2331,2298,2264,2237,
+2227,2234,2240,2219,2162,2089,2028,1995,1980,1972,1968,1975,1997,2022,2038,2041,2041,2051,2072,2097,2121,
+2144,2168,2183,2178,2152,2119,2093,2073,2050,2020,1985,1948,1909,1870,1834,1801,1764,1724,1683,1644,1606,
+1569,1534,1503,1469,1430,1388,1352,1328,1313,1299,1280,1250,1214,1181,1152,1118,1071,1010,947,891,845,
+812,793,783,764,723,665,609,567,542,534,542,558,566,559,551,554,558,548,527,516,524,
+531,521,497,474,452,415,359,298,246,207,177,150,121,92,68,61,66,70,65,54,44,
+33,21,12,4,-11,-40,-73,-95,-107,-118,-139,-172,-222,-284,-338,-362,-360,-358,-374,-404,-432,
+-457,-480,-498,-518,-553,-594,-597,-517,-369,-225,-150,-149,-179,-197,-182,-148,-121,-124,-146,-172,-210,
+-295,-441,-605,-722,-774,-795,-823,-860,-889,-908,-928,-950,-968,-988,-1030,-1104,-1198,-1288,-1362,-1422,-1473,
+-1518,-1564,-1616,-1671,-1728,-1787,-1852,-1922,-1987,-2036,-2074,-2113,-2162,-2215,-2267,-2318,-2376,-2447,-2525,-2604,-2680,
+-2742,-2783,-2811,-2853,-2927,-3028,-3128,-3211,-3279,-3345,-3414,-3487,-3563,-3635,-3686,-3711,-3735,-3799,-3915,-4042,-4133,
+-4187,-4238,-4305,-4370,-4413,-4445,-4491,-4542,-4572,-4587,-4644,-4783,-4975,-5139,-5233,-5283,-5344,-5438,-5540,-5620,-5678,
+-5738,-5821,-5917,-6007,-6077,-6137,-6200,-6274,-6358,-6449,-6542,-6630,-6707,-6778,-6854,-6939,-7023,-7101,-7175,-7254,-7337,
+-7416,-7490,-7568,-7652,-7737,-7813,-7881,-7948,-8020,-8097,-8176,-8252,-8324,-8388,-8449,-8517,-8593,-8670,-8736,-8787,-8826,
+-8848,-8848,-8833,-8827,-8854,-8912,-8978,-9034,-9082,-9134,-9190,-9235,-9242,-9201,-9129,-9068,-9052,-9071,-9074,-9021,-8932,
+-8861,-8839,-8845,-8847,-8842,-8857,-8906,-8970,-9017,-9035,-9041,-9057,-9088,-9119,-9141,-9177,-9260,-9387,-9513,-9584,-9588,
+-9550,-9503,-9454,-9399,-9334,-9260,-9180,-9105,-9039,-8980,-8913,-8833,-8757,-8701,-8669,-8643,-8601,-8531,-8434,-8320,-8201,
+-8086,-7973,-7861,-7747,-7626,-7495,-7355,-7215,-7084,-6963,-6852,-6748,-6645,-6537,-6432,-6348,-6296,-6276,-6289,-6338,-6390,
+-6380,-6273,-6129,-6061,-6103,-6165,-6126,-5952,-5707,-5462,-5249,-5081,-4970,-4908,-4859,-4797,-4722,-4639,-4525,-4356,-4151,
+-3964,-3831,-3744,-3678,-3619,-3562,-3493,-3399,-3285,-3175,-3092,-3037,-2999,-2963,-2921,-2863,-2787,-2698,-2607,-2518,-2423,
+-2315,-2202,-2106,-2039,-1989,-1935,-1870,-1806,-1746,-1677,-1586,-1476,-1362,-1257,-1159,-1060,-955,-836,-702,-555,-406,
+-258,-103,66,230,345,384,378,387,438,502,541,561,605,692,803,915,1030,1156,1281,1392,1490,
+1591,1697,1800,1905,2025,2158,2285,2395,2499,2612,2724,2818,2893,2971,3069,3182,3296,3403,3501,3593,3682,
+3774,3873,3978,4086,4198,4326,4475,4631,4757,4831,4872,4923,5001,5082,5134,5157,5186,5237,5299,5345,5375,
+5417,5499,5616,5727,5796,5821,5819,5760,5566,5214,4828,4606,4643,4846,5055,5193,5287,5372,5434,5459,5467,
+5481,5490,5476,5451,5437,5434,5423,5400,5383,5377,5371,5359,5348,5338,5326,5313,5311,5323,5341,5354,5359,
+5355,5350,5360,5399,5454,5491,5494,5487,5496,5518,5531,5537,5548,5565,5572,5569,5571,5580,5574,5541,5493,
+5448,5407,5365,5319,5259,5174,5072,4985,4931,4904,4895,4921,4991,5073,5124,5140,5129,5066,4900,4624,4291,
+3958,3660,3436,3341,3386,3513,3657,3826,4051,4300,4489,4591,4656,4726,4769,4746,4683,4641,4635,4629,4598,
+4552,4506,4454,4389,4325,4274,4233,4198,4171,4152,4131,4098,4057,4016,3976,3933,3893,3870,3863,3857,3837,
+3799,3746,3681,3614,3575,3591,3643,3661,3586,3445,3331,3304,3331,3345,3332,3324,3329,3319,3281,3239,3199,
+3128,3017,2927,2919,2966,2982,2939,2896,2895,2896,2849,2780,2751,2766,2764,2723,2692,2723,2790,2820,2775,
+2683,2602,2569,2577,2586,2554,2475,2380,2305,2255,2227,2237,2303,2395,2428,2350,2210,2120,2137,2204,2223,
+2155,2050,1973,1941,1926,1898,1854,1809,1783,1783,1795,1790,1757,1710,1675,1653,1622,1572,1518,1477,1451,
+1428,1408,1400,1399,1392,1371,1346,1326,1311,1293,1269,1242,1211,1175,1135,1095,1060,1040,1043,1059,1067,
+1051,1023,1015,1043,1092,1132,1147,1144,1132,1114,1095,1082,1080,1081,1072,1049,1030,1028,1039,1046,1039,
+1031,1042,1075,1109,1122,1106,1080,1065,1064,1063,1051,1037,1036,1049,1061,1066,1074,1097,1126,1142,1139,
+1135,1144,1165,1184,1197,1204,1204,1194,1183,1185,1199,1205,1192,1169,1153,1144,1130,1104,1077,1060,1047,
+1032,1015,1003,993,974,944,914,891,868,839,809,787,776,769,762,755,744,724,690,651,613,
+579,548,522,506,498,488,470,445,420,398,377,354,328,301,276,252,226,200,174,148,120,
+90,61,36,11,-18,-53,-88,-115,-135,-149,-159,-172,-189,-212,-238,-263,-286,-308,-325,-342,-362,
+-390,-422,-452,-476,-499,-523,-551,-581,-609,-634,-658,-684,-713,-744,-774,-805,-837,-867,-896,-927,-962,
+-1002,-1045,-1090,-1136,-1181,-1223,-1259,-1293,-1329,-1368,-1412,-1459,-1510,-1562,-1615,-1668,-1720,-1769,-1813,-1856,-1905,
+-1961,-2018,-2069,-2115,-2158,-2201,-2243,-2283,-2324,-2370,-2419,-2467,-2511,-2555,-2600,-2650,-2701,-2751,-2800,-2849,-2900,
+-2952,-3005,-3057,-3105,-3147,-3187,-3227,-3267,-3306,-3345,-3384,-3424,-3462,-3499,-3536,-3575,-3613,-3651,-3692,-3736,-3778,
+-3811,-3835,-3858,-3884,-3911,-3938,-3964,-3990,-4016,-4040,-4064,-4089,-4111,-4131,-4149,-4164,-4176,-4186,-4196,-4208,-4219,
+-4227,-4233,-4240,-4248,-4253,-4252,-4248,-4244,-4240,-4239,-4239,-4237,-4226,-4205,-4181,-4161,-4147,-4134,-4121,-4105,-4085,
+-4056,-4025,-3997,-3974,-3946,-3909,-3865,-3826,-3795,-3766,-3734,-3698,-3659,-3617,-3572,-3527,-3484,-3441,-3394,-3344,-3296,
+-3248,-3200,-3150,-3102,-3057,-3011,-2960,-2909,-2862,-2817,-2769,-2713,-2653,-2594,-2539,-2485,-2430,-2372,-2314,-2258,-2205,
+-2149,-2091,-2034,-1980,-1927,-1871,-1813,-1757,-1704,-1648,-1590,-1536,-1487,-1440,-1391,-1343,-1298,-1256,-1212,-1168,-1125,
+-1079,-1035,-996,-965,-936,-904,-874,-851,-837,-826,-814,-798,-773,-736,-696,-664,-637,-604,-564,-528,-502,
+-475,-436,-392,-356,-330,-304,-273,-240,-209,-179,-149,-121,-101,-95,-112,-153,-210,-272,-329,-381,-420,
+-434,-414,-365,-308,-264,-240,-222,-190,-139,-83,-22,62,186,338,480,592,674,740,799,846,869,
+846,778,696,643,623,599,543,470,407,365,341,336,337,301,200,74,-7,-21,-16,-42,-92,
+-141,-189,-256,-337,-405,-453,-496,-545,-592,-638,-699,-794,-918,-1059,-1209,-1370,-1541,-1714,-1879,-2020,-2132,
+-2214,-2258,-2244,-2157,-2018,-1875,-1773,-1735,-1764,-1855,-1980,-2095,-2170,-2212,-2254,-2318,-2402,-2495,-2583,-2647,-2677,
+-2688,-2716,-2798,-2940,-3106,-3243,-3329,-3394,-3489,-3627,-3759,-3836,-3856,-3848,-3816,-3737,-3609,-3474,-3383,-3363,-3419,
+-3549,-3730,-3907,-4023,-4061,-4030,-3949,-3852,-3814,-3919,-4174,-4488,-4744,-4893,-4971,-5026,-5056,-5023,-4909,-4745,-4599,
+-4523,-4532,-4604,-4694,-4758,-4775,-4755,-4722,-4692,-4664,-4630,-4598,-4573,-4553,-4526,-4493,-4469,-4458,-4454,-4450,-4448,
+-4449,-4446,-4435,-4419,-4403,-4385,-4360,-4336,-4325,-4321,-4303,-4264,-4216,-4174,-4136,-4092,-4036,-3977,-3919,-3860,-3795,
+-3726,-3654,-3581,-3503,-3422,-3341,-3260,-3179,-3099,-3024,-2953,-2876,-2790,-2704,-2637,-2587,-2536,-2471,-2406,-2362,-2335,
+-2305,-2262,-2215,-2174,-2138,-2101,-2061,-2021,-1979,-1935,-1890,-1842,-1788,-1730,-1675,-1628,-1582,-1532,-1481,-1434,-1390,
+-1341,-1290,-1243,-1198,-1150,-1099,-1048,-995,-936,-873,-815,-762,-705,-641,-576,-515,-457,-397,-337,-277,-216,
+-153,-91,-30,32,97,160,219,276,336,398,458,517,578,636,692,749,809,867,920,971,1026,
+1080,1126,1169,1216,1266,1309,1345,1377,1409,1436,1455,1469,1484,1497,1512,1537,1572,1609,1642,1675,1713,
+1755,1793,1829,1861,1886,1902,1916,1937,1964,1993,2022,2048,2065,2082,2140,2275,2468,2646,2751,2788,2807,
+2830,2847,2847,2849,2878,2931,2974,2985,2980,2993,3030,3056,3044,3022,3045,3125,3209,3246,3241,3237,3250,
+3259,3253,3254,3277,3303,3303,3279,3249,3220,3186,3142,3099,3062,3025,2986,2950,2922,2899,2879,2872,2876,
+2878,2864,2841,2825,2821,2818,2806,2789,2775,2763,2741,2703,2657,2620,2605,2607,2606,2588,2558,2532,2515,
+2500,2478,2451,2415,2395,2381,2370,2358,2342,2316,2279,2240,2219,2222,2239,2239,2205,2140,2070,2017,1986,
+1974,1975,1988,2013,2041,2065,2079,2085,2088,2094,2103,2114,2126,2142,2160,2171,2170,2156,2139,2123,2105,
+2081,2050,2012,1968,1923,1884,1852,1820,1781,1738,1698,1663,1630,1595,1561,1526,1486,1440,1394,1354,1322,
+1300,1284,1267,1238,1202,1171,1148,1118,1063,989,918,867,830,799,777,764,745,707,648,588,543,
+518,509,513,521,521,510,498,495,493,481,463,454,454,446,421,391,374,366,343,295,239,
+193,159,125,85,44,11,-4,-1,8,8,-3,-19,-28,-26,-17,-6,-4,-23,-61,-99,-119,
+-124,-131,-148,-176,-223,-290,-360,-401,-402,-389,-392,-417,-446,-467,-478,-487,-507,-545,-585,-586,-519,
+-402,-291,-229,-219,-235,-248,-239,-210,-188,-197,-236,-279,-324,-402,-534,-686,-797,-845,-859,-875,-900,
+-921,-938,-957,-975,-990,-1015,-1073,-1171,-1283,-1380,-1452,-1507,-1554,-1596,-1638,-1682,-1731,-1782,-1835,-1896,-1967,
+-2036,-2090,-2131,-2174,-2230,-2291,-2343,-2389,-2441,-2506,-2580,-2658,-2735,-2802,-2845,-2867,-2893,-2951,-3041,-3143,-3243,
+-3340,-3432,-3510,-3569,-3622,-3686,-3764,-3849,-3943,-4052,-4159,-4232,-4258,-4268,-4301,-4362,-4421,-4466,-4509,-4563,-4612,
+-4640,-4669,-4748,-4895,-5063,-5189,-5254,-5297,-5360,-5450,-5544,-5620,-5684,-5757,-5849,-5949,-6039,-6106,-6163,-6225,-6303,
+-6392,-6485,-6576,-6662,-6742,-6818,-6896,-6977,-7057,-7136,-7215,-7298,-7382,-7462,-7537,-7613,-7693,-7775,-7855,-7929,-7999,
+-8069,-8141,-8215,-8289,-8359,-8427,-8494,-8567,-8646,-8723,-8787,-8836,-8872,-8896,-8900,-8885,-8875,-8898,-8961,-9038,-9102,
+-9149,-9192,-9240,-9286,-9309,-9288,-9225,-9150,-9106,-9108,-9126,-9115,-9062,-8996,-8945,-8912,-8890,-8889,-8924,-8994,-9067,
+-9111,-9116,-9101,-9094,-9103,-9121,-9145,-9197,-9300,-9445,-9579,-9647,-9646,-9610,-9567,-9522,-9462,-9387,-9306,-9227,-9157,
+-9098,-9043,-8974,-8887,-8800,-8735,-8695,-8662,-8613,-8539,-8440,-8325,-8207,-8093,-7983,-7870,-7751,-7626,-7496,-7361,-7225,
+-7094,-6973,-6860,-6752,-6643,-6531,-6425,-6344,-6300,-6292,-6315,-6361,-6395,-6359,-6241,-6113,-6073,-6128,-6168,-6084,-5876,
+-5625,-5398,-5209,-5056,-4952,-4891,-4839,-4771,-4692,-4610,-4496,-4323,-4113,-3925,-3797,-3715,-3654,-3597,-3534,-3453,-3348,
+-3234,-3136,-3061,-3000,-2949,-2906,-2865,-2810,-2734,-2646,-2559,-2474,-2381,-2278,-2172,-2074,-1990,-1915,-1843,-1777,-1723,
+-1672,-1608,-1517,-1407,-1295,-1192,-1095,-993,-881,-761,-638,-510,-375,-228,-61,119,282,386,420,418,437,
+493,557,596,619,666,753,864,976,1093,1218,1343,1454,1551,1647,1751,1863,1982,2108,2234,2351,2462,
+2574,2683,2778,2861,2951,3067,3209,3359,3494,3596,3662,3706,3753,3821,3915,4030,4164,4314,4473,4633,4780,
+4892,4961,5003,5051,5115,5171,5198,5212,5248,5315,5394,5461,5513,5567,5638,5736,5844,5932,5989,6029,6034,
+5913,5586,5121,4742,4640,4797,5034,5208,5313,5397,5471,5514,5527,5534,5541,5537,5520,5503,5490,5473,5453,
+5441,5438,5431,5419,5408,5400,5386,5368,5358,5365,5381,5393,5397,5391,5384,5394,5435,5494,5534,5541,5539,
+5552,5570,5575,5572,5581,5597,5597,5584,5586,5608,5613,5567,5482,5403,5361,5353,5341,5284,5168,5026,4905,
+4814,4725,4637,4596,4637,4725,4800,4836,4830,4740,4513,4172,3826,3579,3458,3447,3543,3723,3915,4057,4171,
+4314,4486,4620,4680,4703,4726,4735,4710,4675,4662,4660,4634,4581,4532,4498,4455,4391,4326,4285,4260,4233,
+4201,4171,4139,4096,4046,4006,3977,3948,3915,3889,3881,3883,3871,3834,3776,3708,3642,3601,3608,3652,3665,
+3588,3448,3341,3323,3350,3349,3314,3292,3298,3292,3262,3236,3217,3155,3032,2931,2934,3011,3061,3054,3057,
+3095,3091,2985,2840,2774,2799,2820,2778,2729,2753,2850,2944,2965,2898,2775,2656,2594,2600,2623,2609,2551,
+2479,2409,2342,2299,2317,2381,2407,2330,2194,2111,2131,2194,2208,2151,2073,2019,1993,1975,1950,1918,1878,
+1842,1823,1822,1816,1785,1740,1702,1676,1645,1603,1557,1519,1488,1462,1442,1435,1434,1424,1403,1379,1359,
+1342,1325,1307,1288,1266,1238,1200,1156,1113,1080,1066,1064,1059,1044,1028,1029,1056,1095,1126,1140,1139,
+1131,1118,1102,1090,1089,1094,1094,1084,1068,1058,1056,1054,1046,1043,1060,1098,1133,1140,1114,1079,1065,
+1071,1076,1061,1035,1024,1037,1059,1076,1093,1119,1145,1154,1148,1145,1159,1183,1202,1216,1228,1234,1229,
+1218,1220,1237,1247,1235,1208,1184,1169,1150,1121,1091,1071,1057,1041,1025,1016,1011,997,973,950,939,
+930,910,875,841,814,794,780,772,766,753,724,685,647,614,583,556,536,524,515,502,483,
+463,442,419,393,366,338,310,284,260,235,208,180,152,122,93,65,39,12,-18,-51,-82,
+-107,-126,-140,-153,-168,-188,-213,-240,-267,-289,-306,-321,-340,-368,-401,-431,-454,-475,-498,-528,-559,
+-589,-615,-639,-664,-693,-722,-751,-779,-808,-836,-863,-891,-925,-965,-1008,-1053,-1101,-1149,-1194,-1232,-1268,
+-1305,-1345,-1387,-1432,-1483,-1536,-1590,-1645,-1699,-1750,-1793,-1833,-1877,-1929,-1986,-2040,-2088,-2135,-2180,-2224,-2265,
+-2306,-2350,-2396,-2444,-2490,-2535,-2580,-2624,-2669,-2715,-2764,-2814,-2865,-2918,-2971,-3022,-3069,-3109,-3146,-3185,-3227,
+-3270,-3312,-3352,-3391,-3430,-3469,-3509,-3547,-3585,-3621,-3660,-3702,-3740,-3772,-3797,-3822,-3849,-3879,-3908,-3934,-3958,
+-3982,-4007,-4033,-4057,-4077,-4095,-4113,-4129,-4142,-4152,-4163,-4175,-4185,-4192,-4200,-4209,-4216,-4220,-4220,-4218,-4216,
+-4215,-4215,-4217,-4214,-4202,-4181,-4159,-4139,-4122,-4106,-4093,-4079,-4059,-4030,-3997,-3968,-3944,-3918,-3883,-3843,-3805,
+-3774,-3746,-3715,-3680,-3642,-3601,-3555,-3506,-3458,-3415,-3376,-3334,-3286,-3233,-3179,-3129,-3084,-3040,-2995,-2946,-2895,
+-2845,-2797,-2748,-2696,-2641,-2588,-2536,-2483,-2422,-2357,-2296,-2245,-2198,-2146,-2087,-2028,-1973,-1921,-1867,-1811,-1755,
+-1700,-1645,-1592,-1541,-1490,-1439,-1388,-1342,-1299,-1256,-1212,-1168,-1126,-1083,-1040,-1004,-976,-948,-919,-893,-874,
+-860,-845,-828,-807,-776,-736,-697,-669,-646,-612,-567,-524,-493,-464,-430,-395,-365,-334,-295,-252,-213,
+-181,-152,-126,-101,-73,-39,-8,5,-6,-45,-102,-168,-230,-281,-316,-337,-345,-345,-334,-304,-244,
+-167,-103,-66,-25,73,240,425,567,651,710,780,855,901,884,811,728,676,650,614,552,477,
+408,347,307,309,343,342,255,119,26,13,31,15,-37,-100,-163,-236,-313,-374,-418,-461,-506,
+-546,-592,-669,-781,-905,-1026,-1157,-1313,-1486,-1648,-1775,-1868,-1942,-2010,-2060,-2054,-1965,-1816,-1668,-1571,-1536,
+-1561,-1655,-1816,-2002,-2150,-2225,-2242,-2245,-2270,-2329,-2403,-2455,-2459,-2427,-2408,-2452,-2570,-2720,-2845,-2914,-2950,
+-3009,-3118,-3256,-3388,-3505,-3604,-3649,-3589,-3430,-3257,-3171,-3212,-3344,-3510,-3669,-3792,-3861,-3871,-3840,-3803,-3801,
+-3879,-4055,-4298,-4544,-4736,-4860,-4939,-4993,-5019,-4994,-4904,-4765,-4626,-4543,-4544,-4612,-4702,-4772,-4800,-4791,-4763,
+-4730,-4697,-4664,-4637,-4616,-4595,-4567,-4535,-4509,-4493,-4482,-4474,-4470,-4470,-4467,-4454,-4437,-4419,-4399,-4373,-4348,
+-4335,-4329,-4315,-4286,-4249,-4216,-4186,-4149,-4101,-4044,-3982,-3914,-3842,-3765,-3686,-3605,-3524,-3444,-3366,-3286,-3203,
+-3119,-3045,-2978,-2904,-2812,-2717,-2644,-2594,-2543,-2476,-2410,-2367,-2346,-2320,-2277,-2224,-2176,-2132,-2088,-2046,-2006,
+-1966,-1926,-1887,-1845,-1795,-1735,-1677,-1627,-1580,-1529,-1477,-1430,-1384,-1335,-1284,-1234,-1186,-1137,-1087,-1038,-985,
+-923,-859,-803,-754,-701,-639,-575,-516,-460,-403,-346,-289,-229,-167,-107,-49,11,76,137,193,250,
+314,378,438,495,554,614,668,721,777,834,887,936,988,1041,1090,1137,1184,1234,1279,1319,1357,
+1392,1420,1439,1456,1475,1492,1509,1532,1561,1591,1618,1648,1684,1722,1759,1797,1833,1857,1867,1881,1907,
+1940,1970,2000,2035,2062,2081,2127,2245,2430,2613,2727,2770,2785,2803,2821,2832,2845,2877,2924,2965,2985,
+2997,3018,3045,3054,3036,3029,3076,3172,3260,3301,3309,3323,3342,3338,3307,3283,3288,3301,3293,3264,3234,
+3207,3174,3133,3092,3057,3018,2975,2937,2911,2891,2876,2873,2882,2893,2889,2875,2860,2848,2833,2810,2785,
+2765,2747,2720,2679,2633,2601,2595,2605,2607,2585,2548,2513,2488,2466,2441,2415,2381,2364,2351,2340,2330,
+2318,2292,2250,2212,2202,2224,2251,2248,2203,2133,2064,2011,1975,1959,1970,2005,2048,2083,2104,2118,2128,
+2134,2134,2130,2126,2129,2139,2152,2160,2162,2160,2159,2154,2141,2117,2084,2041,1991,1941,1902,1871,1835,
+1791,1747,1713,1685,1654,1618,1580,1539,1492,1442,1397,1358,1319,1285,1260,1242,1219,1186,1157,1135,1105,
+1047,972,906,864,832,796,759,731,707,671,618,563,521,497,485,479,475,468,455,443,435,
+427,415,400,390,382,364,335,312,305,302,277,226,170,129,98,59,4,-50,-86,-94,-82,
+-70,-71,-87,-102,-101,-82,-54,-32,-29,-51,-92,-129,-147,-154,-167,-189,-215,-250,-306,-372,-417,
+-423,-408,-404,-422,-444,-457,-462,-471,-494,-532,-566,-568,-523,-446,-370,-318,-295,-298,-315,-325,-311,
+-290,-295,-335,-388,-438,-504,-608,-735,-837,-889,-910,-927,-946,-963,-978,-995,-1009,-1019,-1046,-1116,-1232,
+-1358,-1459,-1527,-1577,-1626,-1675,-1721,-1767,-1815,-1866,-1916,-1970,-2032,-2097,-2153,-2204,-2261,-2331,-2400,-2454,-2496,
+-2544,-2603,-2664,-2721,-2778,-2832,-2870,-2889,-2908,-2957,-3044,-3158,-3289,-3428,-3557,-3651,-3703,-3741,-3805,-3912,-4053,
+-4206,-4344,-4431,-4449,-4414,-4376,-4373,-4404,-4450,-4502,-4560,-4613,-4650,-4684,-4753,-4879,-5029,-5148,-5210,-5245,-5294,
+-5373,-5468,-5558,-5638,-5711,-5789,-5877,-5972,-6061,-6133,-6193,-6256,-6334,-6425,-6519,-6608,-6691,-6773,-6854,-6934,-7011,
+-7089,-7170,-7255,-7341,-7424,-7504,-7583,-7659,-7736,-7813,-7892,-7968,-8040,-8110,-8181,-8255,-8328,-8399,-8468,-8539,-8615,
+-8695,-8770,-8832,-8878,-8912,-8936,-8943,-8933,-8927,-8951,-9011,-9083,-9141,-9187,-9233,-9286,-9335,-9365,-9361,-9316,-9245,
+-9188,-9178,-9212,-9245,-9235,-9173,-9083,-8996,-8945,-8950,-9011,-9097,-9168,-9194,-9177,-9140,-9112,-9106,-9119,-9148,-9211,
+-9328,-9487,-9631,-9705,-9704,-9670,-9633,-9590,-9525,-9441,-9355,-9279,-9214,-9159,-9103,-9031,-8939,-8845,-8772,-8725,-8686,
+-8632,-8552,-8447,-8330,-8212,-8100,-7992,-7877,-7753,-7626,-7497,-7365,-7230,-7097,-6972,-6856,-6746,-6636,-6523,-6419,-6340,
+-6302,-6306,-6340,-6382,-6393,-6332,-6211,-6107,-6098,-6159,-6171,-6042,-5803,-5555,-5356,-5196,-5060,-4957,-4889,-4827,-4748,
+-4660,-4572,-4454,-4279,-4068,-3882,-3756,-3678,-3621,-3566,-3499,-3402,-3283,-3173,-3093,-3033,-2973,-2912,-2862,-2817,-2760,
+-2683,-2599,-2519,-2437,-2345,-2247,-2149,-2053,-1954,-1853,-1763,-1694,-1644,-1597,-1535,-1448,-1342,-1234,-1132,-1034,-929,
+-814,-694,-577,-461,-338,-198,-37,133,285,386,430,451,486,548,611,655,691,749,838,945,1054,
+1165,1284,1402,1513,1614,1715,1824,1944,2069,2194,2312,2432,2559,2682,2777,2842,2911,3027,3194,3379,3550,
+3688,3783,3827,3834,3842,3886,3975,4102,4260,4438,4615,4771,4892,4975,5031,5081,5141,5203,5241,5255,5277,
+5337,5426,5514,5590,5661,5727,5789,5864,5967,6072,6149,6204,6243,6184,5901,5392,4880,4640,4739,5003,5224,
+5344,5424,5503,5564,5588,5590,5592,5591,5580,5562,5543,5525,5509,5502,5499,5490,5475,5462,5453,5439,5421,
+5411,5411,5419,5428,5437,5442,5441,5450,5486,5541,5582,5591,5591,5601,5611,5609,5606,5619,5632,5622,5603,
+5616,5658,5665,5581,5436,5316,5283,5320,5355,5320,5197,5029,4863,4696,4496,4278,4124,4099,4176,4276,4347,
+4369,4304,4115,3847,3633,3570,3650,3805,3994,4191,4345,4422,4456,4522,4635,4732,4763,4745,4721,4701,4682,
+4673,4679,4673,4628,4561,4512,4485,4446,4383,4324,4293,4279,4256,4221,4185,4149,4101,4048,4008,3989,3974,
+3947,3918,3905,3905,3897,3865,3813,3751,3681,3625,3625,3692,3756,3721,3579,3436,3380,3384,3365,3311,3272,
+3271,3267,3242,3226,3221,3171,3054,2956,2970,3068,3140,3160,3199,3273,3281,3145,2944,2830,2838,2864,2827,
+2766,2770,2862,2986,3062,3033,2896,2723,2625,2651,2741,2792,2768,2703,2624,2525,2417,2347,2332,2325,2276,
+2208,2183,2210,2229,2194,2131,2091,2081,2070,2042,2009,1981,1947,1903,1867,1850,1840,1815,1774,1734,1704,
+1674,1639,1601,1565,1532,1503,1483,1474,1468,1455,1435,1414,1396,1380,1363,1346,1325,1300,1270,1236,1198,
+1159,1125,1098,1077,1057,1042,1040,1052,1074,1100,1123,1137,1137,1126,1111,1096,1088,1087,1095,1106,1113,
+1109,1097,1079,1061,1047,1047,1070,1106,1133,1129,1095,1059,1050,1065,1075,1060,1028,1009,1016,1040,1066,
+1094,1122,1142,1146,1140,1143,1162,1187,1209,1231,1254,1269,1268,1259,1264,1288,1308,1299,1262,1219,1186,
+1160,1133,1111,1100,1092,1074,1048,1029,1018,1006,987,971,971,977,970,941,899,857,822,796,783,
+782,779,762,731,694,660,627,596,571,553,540,527,511,493,472,450,427,401,371,341,315,
+295,274,248,219,189,157,124,91,62,36,9,-21,-53,-83,-106,-122,-134,-146,-164,-187,-214,
+-240,-262,-279,-294,-314,-342,-372,-400,-424,-448,-475,-505,-536,-566,-594,-621,-649,-676,-702,-728,-754,
+-781,-807,-831,-857,-891,-931,-974,-1018,-1065,-1113,-1159,-1201,-1241,-1282,-1323,-1364,-1408,-1458,-1511,-1566,-1621,
+-1676,-1727,-1771,-1809,-1850,-1900,-1954,-2008,-2058,-2109,-2159,-2207,-2250,-2290,-2331,-2375,-2420,-2467,-2514,-2559,-2602,
+-2643,-2686,-2731,-2780,-2833,-2887,-2939,-2988,-3030,-3067,-3102,-3141,-3186,-3233,-3277,-3318,-3357,-3397,-3437,-3478,-3516,
+-3552,-3588,-3625,-3663,-3699,-3730,-3755,-3780,-3808,-3839,-3871,-3899,-3924,-3948,-3975,-4003,-4027,-4046,-4061,-4077,-4093,
+-4107,-4120,-4133,-4144,-4153,-4159,-4168,-4177,-4183,-4184,-4185,-4186,-4188,-4188,-4187,-4187,-4183,-4173,-4157,-4139,-4121,
+-4101,-4082,-4066,-4051,-4029,-4000,-3968,-3939,-3916,-3892,-3863,-3828,-3791,-3756,-3723,-3691,-3657,-3621,-3580,-3534,-3483,
+-3431,-3387,-3351,-3314,-3267,-3213,-3158,-3108,-3061,-3016,-2971,-2924,-2872,-2817,-2763,-2713,-2664,-2616,-2570,-2525,-2476,
+-2418,-2352,-2290,-2239,-2194,-2143,-2084,-2024,-1968,-1916,-1865,-1812,-1758,-1702,-1647,-1595,-1546,-1495,-1442,-1392,-1346,
+-1301,-1254,-1207,-1165,-1130,-1094,-1058,-1024,-995,-967,-939,-916,-899,-881,-858,-832,-805,-775,-738,-703,-675,
+-648,-610,-564,-522,-488,-455,-422,-393,-369,-337,-294,-247,-205,-166,-129,-97,-77,-61,-33,4,40,
+62,66,55,32,2,-37,-91,-160,-233,-294,-335,-343,-302,-221,-139,-96,-72,0,158,359,524,
+623,689,768,858,915,905,838,761,704,658,600,526,453,384,310,247,236,277,302,248,138,
+56,41,51,34,-15,-75,-141,-216,-289,-346,-392,-441,-486,-525,-580,-676,-801,-917,-1014,-1120,-1256,
+-1403,-1519,-1585,-1611,-1628,-1666,-1724,-1760,-1726,-1629,-1529,-1474,-1466,-1487,-1557,-1705,-1909,-2093,-2191,-2201,-2170,
+-2152,-2171,-2216,-2252,-2253,-2226,-2212,-2254,-2359,-2492,-2598,-2647,-2651,-2657,-2706,-2813,-2965,-3143,-3315,-3417,-3389,
+-3238,-3066,-2990,-3054,-3205,-3365,-3493,-3587,-3652,-3687,-3706,-3743,-3831,-3978,-4156,-4330,-4487,-4632,-4764,-4868,-4929,
+-4946,-4919,-4844,-4728,-4607,-4535,-4545,-4621,-4716,-4786,-4815,-4809,-4784,-4755,-4726,-4698,-4671,-4647,-4624,-4599,-4572,
+-4548,-4532,-4520,-4512,-4507,-4504,-4497,-4482,-4463,-4443,-4420,-4395,-4370,-4350,-4335,-4317,-4294,-4268,-4243,-4216,-4183,
+-4142,-4094,-4037,-3973,-3901,-3824,-3744,-3661,-3580,-3502,-3426,-3343,-3253,-3161,-3080,-3010,-2934,-2838,-2736,-2657,-2605,
+-2555,-2489,-2422,-2378,-2356,-2329,-2283,-2226,-2170,-2118,-2067,-2021,-1981,-1942,-1901,-1863,-1826,-1782,-1728,-1673,-1623,
+-1575,-1522,-1468,-1418,-1371,-1321,-1269,-1218,-1167,-1115,-1064,-1016,-964,-903,-841,-789,-744,-694,-634,-571,-512,
+-455,-400,-346,-292,-234,-172,-114,-59,-1,60,118,171,228,293,357,413,467,527,589,644,693,
+744,800,854,903,953,1005,1056,1105,1153,1202,1248,1293,1336,1375,1405,1430,1455,1479,1499,1516,1533,
+1553,1571,1591,1618,1650,1680,1711,1748,1787,1813,1826,1844,1876,1911,1939,1971,2013,2052,2076,2117,2227,
+2407,2591,2712,2762,2779,2795,2816,2834,2853,2880,2916,2953,2988,3020,3050,3069,3070,3061,3077,3148,3252,
+3336,3370,3379,3394,3409,3391,3342,3299,3288,3287,3270,3240,3214,3192,3164,3127,3090,3055,3014,2967,2926,
+2898,2879,2871,2877,2897,2917,2921,2909,2890,2868,2841,2811,2782,2757,2730,2696,2654,2614,2591,2590,2599,
+2595,2568,2528,2490,2460,2432,2405,2381,2357,2342,2327,2313,2302,2287,2258,2216,2186,2193,2232,2266,2261,
+2214,2150,2088,2033,1986,1962,1976,2023,2078,2116,2137,2152,2167,2174,2169,2155,2143,2142,2149,2159,2164,
+2164,2166,2171,2174,2164,2140,2104,2058,2006,1957,1918,1885,1845,1798,1758,1729,1702,1666,1625,1583,1541,
+1491,1442,1400,1364,1321,1276,1241,1221,1201,1173,1143,1117,1082,1026,956,899,862,828,784,734,694,
+665,632,587,538,499,474,457,441,425,410,397,387,379,369,354,339,326,312,293,271,256,
+252,241,205,146,89,54,27,-13,-73,-135,-174,-183,-173,-160,-161,-172,-178,-166,-135,-99,-75,
+-73,-94,-130,-162,-182,-197,-220,-251,-279,-306,-343,-390,-426,-436,-429,-429,-439,-447,-443,-441,-455,
+-487,-527,-556,-559,-530,-479,-422,-371,-336,-333,-366,-411,-436,-435,-433,-453,-489,-527,-578,-658,-760,
+-850,-908,-943,-972,-996,-1013,-1027,-1041,-1051,-1055,-1076,-1144,-1261,-1391,-1496,-1567,-1623,-1684,-1748,-1805,-1854,
+-1904,-1955,-2005,-2053,-2105,-2162,-2220,-2279,-2345,-2422,-2494,-2551,-2599,-2654,-2710,-2750,-2769,-2784,-2810,-2842,-2874,
+-2915,-2985,-3092,-3229,-3389,-3562,-3721,-3832,-3890,-3932,-4003,-4122,-4274,-4431,-4557,-4619,-4610,-4558,-4503,-4471,-4468,
+-4494,-4552,-4620,-4663,-4681,-4725,-4844,-5014,-5153,-5207,-5203,-5217,-5285,-5389,-5491,-5579,-5662,-5745,-5826,-5908,-5995,
+-6085,-6165,-6233,-6297,-6372,-6461,-6554,-6642,-6723,-6805,-6889,-6970,-7047,-7125,-7209,-7297,-7383,-7464,-7543,-7623,-7702,
+-7776,-7850,-7926,-8002,-8075,-8147,-8222,-8300,-8374,-8442,-8510,-8583,-8661,-8740,-8812,-8872,-8917,-8950,-8972,-8980,-8976,
+-8978,-9006,-9061,-9119,-9164,-9206,-9262,-9326,-9381,-9414,-9422,-9400,-9345,-9282,-9254,-9281,-9332,-9347,-9293,-9187,-9082,
+-9030,-9054,-9134,-9221,-9275,-9278,-9238,-9181,-9137,-9122,-9132,-9160,-9220,-9338,-9510,-9678,-9773,-9779,-9739,-9695,-9647,
+-9578,-9490,-9403,-9330,-9266,-9207,-9145,-9069,-8976,-8881,-8805,-8754,-8713,-8658,-8574,-8464,-8339,-8217,-8105,-7996,-7879,
+-7755,-7629,-7503,-7370,-7228,-7088,-6959,-6842,-6732,-6623,-6517,-6418,-6342,-6307,-6318,-6360,-6397,-6387,-6308,-6190,-6114,
+-6133,-6198,-6183,-6014,-5747,-5498,-5325,-5196,-5076,-4968,-4884,-4806,-4716,-4621,-4525,-4403,-4228,-4022,-3841,-3715,-3632,
+-3570,-3513,-3442,-3338,-3215,-3112,-3049,-3002,-2941,-2872,-2814,-2765,-2705,-2628,-2550,-2478,-2400,-2307,-2208,-2116,-2022,
+-1915,-1803,-1705,-1633,-1581,-1529,-1465,-1384,-1286,-1181,-1078,-976,-869,-755,-636,-520,-406,-287,-158,-17,128,
+264,369,439,488,540,602,665,719,775,846,937,1036,1138,1245,1356,1468,1577,1684,1793,1907,2026,
+2147,2267,2389,2526,2677,2809,2884,2917,2975,3116,3321,3525,3687,3809,3896,3938,3939,3936,3972,4063,4201,
+4373,4561,4739,4882,4980,5043,5091,5150,5223,5288,5319,5328,5360,5437,5535,5623,5707,5796,5875,5926,5978,
+6074,6196,6286,6339,6389,6382,6160,5649,5040,4667,4688,4961,5228,5377,5459,5541,5616,5653,5656,5651,5648,
+5638,5620,5601,5586,5575,5566,5556,5542,5525,5512,5500,5489,5479,5474,5470,5466,5469,5486,5504,5510,5515,
+5545,5598,5640,5650,5648,5654,5662,5661,5662,5675,5680,5656,5638,5673,5735,5724,5581,5365,5207,5177,5239,
+5303,5292,5186,5011,4795,4539,4230,3908,3668,3589,3650,3765,3869,3940,3954,3898,3814,3800,3915,4114,4315,
+4479,4605,4684,4702,4694,4722,4794,4853,4850,4798,4742,4703,4678,4668,4666,4652,4609,4555,4515,4486,4442,
+4380,4328,4304,4294,4271,4234,4198,4166,4127,4079,4041,4022,4007,3980,3949,3932,3930,3921,3892,3854,3810,
+3744,3670,3655,3744,3867,3883,3739,3547,3443,3429,3413,3356,3306,3298,3295,3268,3244,3239,3208,3121,3045,
+3060,3144,3200,3212,3252,3337,3357,3223,3009,2872,2863,2895,2876,2818,2788,2826,2914,2994,2997,2890,2737,
+2665,2733,2870,2950,2935,2871,2793,2687,2545,2407,2317,2272,2258,2281,2340,2382,2341,2232,2140,2123,2151,
+2155,2116,2071,2038,2004,1959,1917,1897,1886,1862,1819,1772,1732,1699,1669,1640,1608,1574,1544,1524,1511,
+1497,1480,1463,1447,1432,1418,1402,1382,1351,1312,1276,1246,1221,1195,1166,1134,1098,1066,1051,1056,1072,
+1087,1101,1119,1136,1139,1123,1101,1086,1082,1084,1094,1112,1131,1140,1131,1106,1076,1055,1053,1071,1096,
+1109,1098,1070,1045,1041,1055,1064,1052,1027,1013,1020,1046,1078,1108,1131,1139,1134,1129,1135,1152,1174,
+1199,1231,1265,1286,1285,1278,1291,1328,1361,1359,1316,1258,1211,1181,1159,1143,1135,1129,1112,1083,1056,
+1040,1027,1009,992,989,996,993,967,926,884,847,817,799,796,799,792,768,734,698,664,633,
+606,585,568,550,532,513,493,474,456,433,403,371,346,331,314,289,258,226,193,157,122,
+91,64,36,5,-27,-57,-81,-98,-110,-121,-137,-159,-184,-206,-225,-243,-262,-284,-310,-337,-363,
+-389,-418,-450,-481,-511,-541,-570,-600,-629,-655,-679,-702,-727,-754,-779,-803,-830,-863,-902,-945,-988,
+-1033,-1079,-1125,-1168,-1212,-1256,-1299,-1342,-1387,-1436,-1489,-1543,-1597,-1650,-1701,-1746,-1787,-1829,-1877,-1926,-1975,
+-2025,-2077,-2131,-2183,-2229,-2270,-2309,-2349,-2392,-2438,-2485,-2532,-2577,-2621,-2663,-2706,-2754,-2806,-2860,-2911,-2954,
+-2990,-3022,-3057,-3097,-3144,-3193,-3239,-3280,-3319,-3360,-3402,-3442,-3479,-3515,-3551,-3588,-3624,-3657,-3686,-3712,-3736,
+-3763,-3794,-3826,-3856,-3884,-3911,-3939,-3967,-3991,-4010,-4025,-4039,-4054,-4069,-4085,-4101,-4112,-4120,-4127,-4137,-4146,
+-4149,-4148,-4149,-4155,-4161,-4162,-4158,-4152,-4145,-4137,-4125,-4113,-4096,-4077,-4056,-4038,-4021,-3997,-3968,-3938,-3911,
+-3888,-3865,-3840,-3809,-3772,-3733,-3697,-3665,-3632,-3595,-3554,-3508,-3457,-3405,-3359,-3320,-3282,-3236,-3184,-3135,-3088,
+-3040,-2990,-2943,-2898,-2848,-2791,-2732,-2679,-2632,-2587,-2543,-2503,-2461,-2410,-2349,-2287,-2233,-2184,-2134,-2078,-2020,
+-1964,-1913,-1863,-1812,-1760,-1705,-1650,-1598,-1548,-1498,-1447,-1399,-1354,-1307,-1256,-1207,-1169,-1140,-1111,-1080,-1049,
+-1019,-990,-962,-939,-921,-898,-868,-834,-803,-774,-741,-708,-676,-642,-601,-560,-525,-493,-457,-419,-387,
+-360,-327,-287,-249,-214,-175,-128,-84,-56,-39,-20,3,29,55,83,111,133,147,145,117,60,
+-14,-94,-173,-240,-268,-238,-175,-127,-96,-29,118,316,492,607,685,765,850,906,907,862,801,
+743,677,591,498,423,362,294,225,192,206,224,193,123,67,47,36,8,-31,-74,-129,-201,
+-270,-323,-374,-430,-481,-525,-588,-693,-817,-918,-993,-1071,-1170,-1265,-1327,-1337,-1293,-1215,-1161,-1185,-1273,
+-1352,-1373,-1366,-1380,-1417,-1456,-1512,-1632,-1817,-1995,-2093,-2099,-2058,-2017,-1998,-2004,-2022,-2037,-2049,-2082,-2161,
+-2284,-2415,-2513,-2554,-2544,-2520,-2526,-2593,-2724,-2896,-3069,-3186,-3197,-3106,-2986,-2928,-2970,-3075,-3185,-3281,-3375,
+-3475,-3571,-3660,-3763,-3899,-4052,-4181,-4273,-4362,-4491,-4651,-4788,-4855,-4856,-4816,-4747,-4650,-4554,-4507,-4537,-4625,
+-4723,-4790,-4816,-4809,-4789,-4767,-4745,-4718,-4684,-4651,-4625,-4605,-4587,-4569,-4556,-4549,-4544,-4539,-4531,-4521,-4508,
+-4489,-4466,-4441,-4415,-4391,-4366,-4340,-4313,-4289,-4267,-4243,-4214,-4179,-4140,-4099,-4053,-4003,-3947,-3884,-3814,-3740,
+-3665,-3592,-3516,-3432,-3336,-3236,-3145,-3064,-2980,-2878,-2772,-2689,-2635,-2583,-2514,-2440,-2388,-2356,-2323,-2273,-2216,
+-2160,-2105,-2051,-2004,-1966,-1928,-1883,-1838,-1799,-1760,-1714,-1665,-1619,-1571,-1518,-1462,-1410,-1360,-1307,-1252,-1200,
+-1148,-1096,-1045,-996,-945,-886,-827,-778,-737,-689,-631,-572,-515,-459,-403,-350,-299,-243,-182,-124,-69,
+-14,44,101,152,208,271,333,385,436,495,560,617,664,713,767,822,872,921,971,1022,1071,
+1120,1168,1216,1263,1309,1350,1385,1416,1447,1474,1494,1509,1525,1541,1555,1571,1594,1620,1641,1663,1696,
+1736,1766,1786,1810,1846,1880,1907,1941,1987,2027,2048,2086,2194,2372,2558,2687,2750,2777,2797,2818,2837,
+2856,2874,2896,2929,2977,3032,3077,3102,3108,3113,3149,3234,3344,3427,3455,3449,3444,3436,3403,3345,3296,
+3275,3265,3244,3215,3191,3173,3150,3122,3093,3061,3019,2969,2924,2891,2871,2865,2880,2909,2934,2942,2931,
+2909,2880,2845,2811,2782,2754,2720,2679,2636,2602,2584,2582,2583,2571,2540,2500,2464,2434,2406,2379,2357,
+2346,2331,2313,2294,2275,2254,2222,2188,2177,2203,2251,2282,2271,2228,2180,2137,2090,2040,2008,2017,2063,
+2115,2151,2171,2187,2203,2210,2205,2193,2184,2179,2179,2181,2182,2181,2181,2184,2183,2170,2142,2103,2057,
+2008,1963,1927,1893,1855,1813,1778,1750,1715,1669,1622,1585,1549,1504,1454,1411,1372,1326,1274,1232,1207,
+1187,1159,1125,1093,1054,1000,936,882,841,800,749,696,656,628,598,558,511,470,440,419,400,
+379,360,346,338,331,321,306,287,270,254,237,220,206,193,170,126,69,20,-8,-31,-66,
+-119,-174,-216,-239,-246,-244,-244,-248,-247,-231,-199,-164,-140,-133,-143,-165,-192,-219,-245,-277,-313,
+-345,-370,-397,-428,-453,-463,-465,-470,-470,-453,-422,-404,-420,-466,-518,-553,-557,-529,-477,-418,-366,
+-333,-337,-386,-465,-535,-571,-577,-574,-574,-587,-624,-692,-780,-863,-926,-973,-1012,-1043,-1062,-1077,-1091,
+-1100,-1104,-1120,-1178,-1283,-1406,-1510,-1588,-1658,-1736,-1814,-1877,-1923,-1965,-2012,-2059,-2105,-2157,-2219,-2282,-2340,
+-2396,-2458,-2520,-2576,-2634,-2701,-2762,-2788,-2775,-2753,-2756,-2792,-2855,-2941,-3058,-3200,-3359,-3534,-3718,-3888,-4011,
+-4086,-4146,-4227,-4336,-4457,-4569,-4651,-4689,-4685,-4660,-4635,-4610,-4592,-4604,-4658,-4723,-4751,-4755,-4807,-4951,-5127,
+-5226,-5214,-5167,-5184,-5281,-5406,-5511,-5597,-5685,-5776,-5862,-5942,-6027,-6118,-6204,-6276,-6340,-6411,-6497,-6590,-6678,
+-6758,-6839,-6924,-7008,-7087,-7164,-7248,-7338,-7424,-7503,-7580,-7660,-7739,-7814,-7887,-7963,-8040,-8114,-8189,-8269,-8349,
+-8422,-8486,-8550,-8624,-8705,-8784,-8855,-8913,-8957,-8990,-9012,-9021,-9021,-9028,-9059,-9108,-9152,-9184,-9223,-9285,-9358,
+-9415,-9451,-9472,-9475,-9442,-9378,-9324,-9314,-9336,-9341,-9296,-9216,-9154,-9147,-9200,-9281,-9351,-9381,-9368,-9318,-9253,
+-9199,-9175,-9178,-9193,-9234,-9338,-9517,-9713,-9836,-9854,-9805,-9743,-9684,-9613,-9530,-9448,-9375,-9306,-9235,-9163,-9085,
+-8996,-8905,-8829,-8777,-8736,-8684,-8603,-8490,-8357,-8226,-8106,-7994,-7878,-7757,-7637,-7513,-7375,-7223,-7076,-6945,-6828,
+-6715,-6608,-6510,-6421,-6347,-6309,-6319,-6364,-6395,-6369,-6278,-6170,-6121,-6167,-6243,-6219,-6027,-5735,-5472,-5304,-5191,
+-5078,-4961,-4859,-4768,-4675,-4580,-4481,-4355,-4181,-3982,-3807,-3679,-3585,-3509,-3443,-3372,-3273,-3157,-3061,-3005,-2960,
+-2896,-2820,-2758,-2707,-2646,-2570,-2497,-2431,-2354,-2257,-2154,-2061,-1968,-1862,-1750,-1657,-1587,-1530,-1471,-1404,-1327,
+-1237,-1136,-1030,-922,-811,-695,-579,-464,-351,-237,-121,-4,115,237,352,449,527,594,658,722,789,
+862,943,1030,1120,1216,1323,1434,1542,1648,1756,1867,1976,2085,2196,2316,2452,2610,2777,2909,2971,2992,
+3054,3208,3421,3613,3749,3849,3932,3987,4007,4019,4065,4167,4315,4489,4669,4830,4957,5049,5116,5176,5242,
+5316,5376,5401,5406,5432,5502,5594,5688,5791,5906,5995,6031,6058,6140,6267,6362,6411,6472,6522,6386,5921,
+5262,4765,4676,4913,5212,5403,5504,5588,5669,5716,5726,5720,5713,5699,5679,5659,5648,5639,5626,5606,5588,
+5575,5566,5555,5545,5543,5545,5537,5521,5518,5537,5560,5565,5571,5608,5671,5716,5724,5718,5724,5733,5733,
+5735,5744,5735,5700,5690,5750,5821,5775,5562,5286,5102,5068,5122,5176,5176,5099,4936,4691,4385,4049,3736,
+3517,3445,3498,3607,3717,3818,3910,3989,4074,4206,4400,4606,4757,4841,4885,4906,4904,4893,4903,4938,4955,
+4923,4859,4796,4747,4702,4661,4629,4606,4584,4558,4528,4491,4439,4383,4343,4327,4318,4294,4255,4214,4183,
+4156,4125,4095,4071,4047,4016,3986,3970,3965,3948,3915,3887,3865,3814,3732,3694,3777,3925,3972,3832,3615,
+3488,3479,3483,3436,3384,3372,3368,3331,3288,3279,3279,3246,3203,3202,3235,3240,3214,3225,3287,3303,3192,
+3006,2879,2866,2904,2911,2871,2816,2785,2796,2834,2847,2790,2703,2686,2781,2913,2974,2943,2877,2811,2724,
+2596,2451,2332,2263,2264,2349,2475,2538,2463,2300,2176,2157,2193,2203,2167,2121,2086,2051,2007,1972,1956,
+1946,1918,1871,1816,1764,1724,1695,1672,1646,1613,1583,1561,1542,1521,1503,1491,1479,1463,1445,1427,1403,
+1365,1317,1279,1257,1243,1226,1201,1167,1127,1090,1073,1078,1088,1091,1094,1107,1127,1134,1118,1095,1080,
+1078,1083,1093,1109,1130,1146,1144,1123,1093,1070,1062,1067,1073,1074,1067,1057,1049,1045,1044,1042,1037,
+1035,1044,1069,1106,1145,1171,1177,1163,1145,1138,1145,1157,1171,1193,1227,1260,1274,1268,1265,1289,1338,
+1384,1390,1350,1292,1251,1234,1223,1203,1179,1162,1147,1126,1103,1084,1068,1048,1025,1009,1002,989,959,
+924,896,876,855,832,817,809,801,783,755,724,692,663,637,615,594,575,555,534,514,498,
+483,463,434,401,377,363,348,323,291,260,230,198,164,133,102,69,34,2,-25,-49,-68,
+-81,-94,-109,-130,-152,-171,-189,-207,-229,-252,-276,-301,-326,-354,-385,-419,-450,-479,-509,-539,-570,
+-599,-625,-649,-673,-699,-727,-755,-782,-809,-841,-878,-920,-963,-1007,-1052,-1096,-1139,-1182,-1227,-1271,-1317,
+-1365,-1417,-1470,-1523,-1574,-1625,-1673,-1719,-1764,-1811,-1859,-1903,-1945,-1989,-2039,-2093,-2146,-2195,-2239,-2280,-2320,
+-2362,-2406,-2452,-2499,-2548,-2598,-2644,-2688,-2733,-2784,-2837,-2885,-2922,-2952,-2981,-3015,-3055,-3102,-3150,-3194,-3235,
+-3276,-3319,-3362,-3402,-3438,-3475,-3511,-3548,-3583,-3614,-3643,-3668,-3692,-3718,-3747,-3779,-3811,-3841,-3870,-3898,-3925,
+-3948,-3967,-3984,-3999,-4013,-4028,-4046,-4063,-4076,-4085,-4095,-4106,-4115,-4117,-4114,-4115,-4124,-4133,-4134,-4128,-4119,
+-4110,-4101,-4091,-4081,-4066,-4047,-4027,-4008,-3989,-3963,-3934,-3906,-3881,-3857,-3832,-3807,-3778,-3742,-3701,-3665,-3635,
+-3604,-3568,-3525,-3481,-3433,-3384,-3336,-3292,-3248,-3202,-3157,-3117,-3076,-3028,-2974,-2925,-2884,-2839,-2784,-2725,-2671,
+-2622,-2573,-2524,-2479,-2439,-2394,-2339,-2279,-2220,-2167,-2117,-2066,-2014,-1961,-1908,-1857,-1807,-1756,-1704,-1650,-1598,
+-1547,-1498,-1450,-1405,-1363,-1318,-1269,-1225,-1190,-1162,-1133,-1102,-1071,-1042,-1012,-983,-956,-933,-906,-874,-839,
+-806,-774,-742,-708,-674,-637,-597,-560,-531,-501,-463,-423,-386,-353,-315,-277,-247,-222,-188,-142,-95,
+-59,-29,0,22,38,56,86,121,152,177,199,210,202,180,144,81,-10,-104,-158,-161,-138,
+-99,-14,141,339,518,639,714,777,838,886,901,884,848,798,726,626,519,434,377,324,265,
+217,193,174,139,93,56,26,-12,-56,-87,-112,-152,-213,-271,-316,-365,-426,-481,-528,-592,-693,
+-802,-884,-936,-982,-1029,-1068,-1096,-1087,-984,-770,-543,-463,-584,-802,-980,-1089,-1183,-1287,-1382,-1468,-1584,
+-1738,-1875,-1941,-1933,-1892,-1848,-1812,-1798,-1813,-1849,-1898,-1974,-2095,-2247,-2387,-2475,-2503,-2489,-2469,-2477,-2537,
+-2645,-2778,-2907,-3007,-3056,-3047,-3005,-2971,-2975,-3015,-3072,-3146,-3250,-3384,-3528,-3665,-3802,-3945,-4072,-4153,-4198,
+-4265,-4399,-4576,-4717,-4771,-4750,-4697,-4631,-4557,-4492,-4472,-4516,-4606,-4699,-4763,-4791,-4791,-4777,-4762,-4743,-4713,
+-4672,-4633,-4607,-4592,-4580,-4566,-4556,-4553,-4553,-4547,-4538,-4529,-4521,-4508,-4485,-4457,-4429,-4405,-4379,-4347,-4313,
+-4283,-4258,-4230,-4196,-4159,-4120,-4079,-4037,-3997,-3956,-3909,-3854,-3794,-3731,-3665,-3594,-3515,-3424,-3324,-3223,-3129,
+-3032,-2926,-2821,-2739,-2685,-2632,-2559,-2478,-2414,-2369,-2325,-2272,-2216,-2163,-2108,-2054,-2009,-1975,-1937,-1887,-1835,
+-1791,-1753,-1711,-1666,-1623,-1578,-1527,-1473,-1421,-1366,-1307,-1247,-1193,-1142,-1092,-1041,-993,-941,-883,-825,-777,
+-735,-688,-633,-579,-528,-473,-416,-361,-312,-259,-199,-141,-87,-33,24,80,132,186,247,306,358,
+408,466,529,586,634,682,735,788,838,888,937,985,1032,1079,1128,1177,1224,1270,1312,1350,1387,
+1423,1453,1474,1492,1514,1535,1550,1563,1580,1598,1612,1627,1655,1692,1725,1750,1781,1819,1854,1885,1923,
+1968,1996,2004,2037,2146,2325,2511,2649,2730,2775,2800,2817,2834,2852,2866,2879,2908,2963,3033,3096,3138,
+3159,3172,3207,3286,3396,3488,3520,3502,3468,3432,3384,3325,3275,3249,3236,3218,3195,3175,3159,3142,3122,
+3101,3072,3028,2975,2926,2888,2863,2856,2872,2902,2928,2939,2936,2919,2889,2849,2810,2777,2746,2708,2663,
+2620,2587,2570,2565,2561,2546,2515,2478,2444,2415,2388,2364,2346,2341,2324,2303,2277,2251,2225,2199,2185,
+2199,2242,2288,2304,2282,2244,2214,2193,2165,2124,2093,2096,2130,2171,2197,2209,2218,2226,2232,2236,2241,
+2243,2236,2224,2215,2215,2217,2217,2213,2202,2179,2144,2101,2054,2006,1962,1925,1895,1864,1834,1807,1778,
+1735,1681,1635,1606,1581,1539,1483,1428,1379,1329,1275,1231,1200,1171,1135,1095,1058,1019,969,911,856,
+806,755,700,650,612,584,554,515,468,424,390,368,352,335,316,301,291,283,274,261,242,
+222,203,187,170,150,125,94,56,16,-18,-43,-64,-92,-127,-166,-208,-249,-285,-304,-311,-314,
+-316,-308,-287,-258,-231,-210,-198,-201,-225,-261,-299,-335,-368,-399,-427,-457,-488,-508,-514,-512,-509,
+-493,-449,-389,-348,-358,-416,-491,-550,-566,-529,-454,-378,-331,-321,-345,-398,-480,-572,-645,-680,-680,
+-663,-654,-675,-731,-811,-892,-959,-1009,-1048,-1078,-1101,-1121,-1140,-1154,-1165,-1188,-1243,-1335,-1444,-1544,-1627,
+-1710,-1800,-1884,-1943,-1977,-2004,-2036,-2076,-2124,-2190,-2271,-2347,-2398,-2429,-2460,-2497,-2541,-2596,-2668,-2737,-2771,
+-2760,-2737,-2743,-2793,-2882,-3004,-3157,-3325,-3494,-3667,-3847,-4017,-4150,-4242,-4319,-4404,-4494,-4574,-4638,-4681,-4701,
+-4711,-4730,-4759,-4775,-4768,-4766,-4796,-4838,-4854,-4860,-4917,-5049,-5180,-5216,-5161,-5114,-5161,-5287,-5423,-5526,-5611,
+-5703,-5800,-5891,-5974,-6062,-6154,-6241,-6315,-6380,-6451,-6535,-6626,-6713,-6793,-6872,-6957,-7043,-7123,-7200,-7283,-7372,
+-7460,-7541,-7618,-7697,-7775,-7851,-7926,-8005,-8084,-8160,-8238,-8320,-8401,-8471,-8531,-8593,-8667,-8751,-8831,-8900,-8955,
+-8998,-9031,-9057,-9071,-9076,-9085,-9111,-9151,-9186,-9212,-9248,-9310,-9381,-9437,-9475,-9511,-9538,-9528,-9471,-9396,-9340,
+-9306,-9273,-9234,-9211,-9228,-9283,-9351,-9407,-9442,-9456,-9447,-9411,-9352,-9294,-9261,-9250,-9248,-9266,-9349,-9520,-9726,
+-9871,-9901,-9848,-9774,-9707,-9641,-9567,-9490,-9415,-9337,-9255,-9175,-9097,-9014,-8928,-8852,-8796,-8754,-8707,-8635,-8525,
+-8386,-8243,-8113,-7995,-7880,-7762,-7645,-7521,-7377,-7218,-7067,-6936,-6816,-6698,-6590,-6500,-6420,-6348,-6302,-6307,-6348,
+-6373,-6336,-6241,-6145,-6121,-6193,-6291,-6282,-6092,-5782,-5491,-5300,-5179,-5062,-4933,-4818,-4725,-4639,-4548,-4446,-4313,
+-4138,-3945,-3776,-3647,-3542,-3450,-3374,-3305,-3219,-3114,-3022,-2961,-2910,-2842,-2766,-2705,-2654,-2593,-2517,-2445,-2379,
+-2300,-2199,-2093,-1997,-1903,-1799,-1694,-1607,-1540,-1479,-1415,-1347,-1275,-1192,-1095,-987,-874,-754,-633,-518,-411,
+-307,-201,-96,4,106,219,341,461,564,648,720,789,863,944,1028,1109,1193,1288,1399,1513,1621,
+1724,1829,1936,2037,2131,2234,2361,2515,2685,2846,2964,3025,3064,3144,3297,3487,3650,3763,3849,3929,3997,
+4043,4085,4155,4269,4422,4593,4760,4901,5015,5114,5205,5283,5346,5399,5441,5457,5453,5461,5508,5595,5709,
+5848,5988,6081,6103,6111,6183,6306,6400,6452,6533,6645,6604,6215,5547,4942,4713,4868,5171,5412,5550,5641,
+5718,5770,5790,5790,5781,5763,5737,5715,5705,5697,5680,5654,5635,5629,5627,5616,5605,5604,5608,5598,5578,
+5573,5589,5606,5608,5624,5683,5761,5803,5796,5780,5785,5794,5791,5788,5792,5779,5744,5746,5821,5886,5797,
+5528,5223,5048,5028,5068,5092,5086,5031,4886,4640,4349,4087,3900,3801,3789,3843,3924,4003,4089,4199,4331,
+4476,4635,4806,4957,5048,5075,5072,5066,5059,5045,5034,5026,5009,4968,4911,4855,4803,4742,4673,4614,4580,
+4565,4550,4519,4474,4426,4387,4363,4352,4343,4322,4281,4231,4191,4169,4156,4139,4117,4090,4060,4033,4018,
+4006,3979,3938,3911,3903,3870,3789,3730,3783,3916,3970,3850,3648,3533,3538,3557,3516,3460,3445,3437,3389,
+3328,3320,3362,3391,3379,3350,3314,3258,3193,3170,3196,3202,3124,2994,2899,2884,2912,2931,2910,2853,2781,
+2731,2719,2722,2702,2674,2692,2768,2842,2849,2798,2740,2695,2638,2551,2445,2341,2262,2254,2349,2500,2585,
+2522,2363,2234,2196,2208,2207,2182,2156,2132,2097,2055,2026,2013,1997,1965,1920,1869,1814,1765,1732,1711,
+1687,1653,1618,1591,1568,1547,1533,1528,1517,1492,1460,1434,1409,1372,1328,1294,1278,1267,1249,1224,1194,
+1160,1126,1107,1104,1104,1097,1090,1096,1112,1119,1108,1089,1075,1071,1074,1082,1094,1111,1126,1131,1120,
+1100,1081,1070,1062,1053,1044,1047,1060,1068,1059,1038,1021,1024,1047,1086,1136,1191,1238,1261,1247,1210,
+1178,1169,1177,1185,1194,1212,1240,1258,1255,1241,1243,1277,1334,1382,1391,1355,1306,1284,1297,1310,1290,
+1245,1206,1188,1176,1156,1130,1104,1078,1052,1033,1017,993,957,927,918,923,918,892,857,829,811,
+796,777,753,727,698,670,644,621,601,583,564,544,526,510,491,463,433,410,395,377,352,
+322,295,270,243,213,182,146,107,69,38,13,-10,-33,-52,-66,-81,-101,-122,-140,-157,-177,
+-199,-222,-245,-268,-293,-320,-349,-379,-410,-440,-471,-502,-534,-562,-589,-616,-644,-673,-703,-733,-762,
+-791,-821,-856,-896,-940,-984,-1028,-1071,-1112,-1154,-1197,-1242,-1291,-1343,-1398,-1452,-1503,-1551,-1598,-1642,-1685,
+-1733,-1785,-1837,-1881,-1918,-1957,-2001,-2050,-2102,-2153,-2203,-2249,-2292,-2335,-2377,-2420,-2465,-2515,-2569,-2620,-2665,
+-2711,-2760,-2811,-2855,-2889,-2918,-2947,-2980,-3018,-3061,-3106,-3148,-3189,-3231,-3275,-3319,-3359,-3397,-3435,-3473,-3508,
+-3541,-3572,-3600,-3625,-3650,-3676,-3705,-3737,-3768,-3799,-3828,-3856,-3880,-3902,-3922,-3940,-3956,-3970,-3985,-4003,-4020,
+-4035,-4047,-4059,-4072,-4082,-4084,-4082,-4083,-4091,-4100,-4102,-4096,-4087,-4078,-4070,-4061,-4050,-4035,-4016,-3995,-3976,
+-3954,-3929,-3902,-3876,-3851,-3824,-3796,-3768,-3738,-3702,-3662,-3628,-3600,-3572,-3536,-3495,-3454,-3413,-3367,-3319,-3271,
+-3224,-3177,-3136,-3101,-3065,-3018,-2963,-2914,-2876,-2839,-2793,-2741,-2688,-2635,-2578,-2518,-2464,-2419,-2376,-2326,-2269,
+-2210,-2155,-2104,-2057,-2009,-1958,-1905,-1852,-1801,-1752,-1703,-1652,-1602,-1552,-1503,-1456,-1413,-1372,-1331,-1290,-1253,
+-1220,-1190,-1158,-1124,-1090,-1060,-1030,-998,-965,-935,-907,-877,-846,-813,-777,-740,-705,-672,-637,-600,-564,
+-531,-498,-462,-424,-389,-354,-314,-275,-245,-218,-185,-147,-112,-79,-41,0,33,54,75,104,132,
+148,160,180,210,240,268,290,284,225,121,11,-66,-97,-70,30,207,419,603,722,780,810,
+839,875,904,909,887,844,781,692,589,497,432,384,336,283,229,171,112,63,26,-18,-80,
+-139,-170,-183,-208,-250,-287,-319,-364,-425,-481,-527,-589,-678,-766,-826,-860,-876,-872,-865,-886,-898,
+-767,-420,1,221,105,-215,-520,-727,-901,-1093,-1278,-1423,-1546,-1659,-1735,-1749,-1723,-1694,-1670,-1648,-1645,
+-1674,-1727,-1786,-1867,-1996,-2161,-2300,-2362,-2354,-2325,-2325,-2377,-2478,-2606,-2729,-2830,-2915,-2986,-3031,-3038,-3017,
+-2999,-3009,-3055,-3137,-3255,-3404,-3564,-3717,-3857,-3984,-4081,-4139,-4179,-4253,-4386,-4540,-4645,-4663,-4618,-4554,-4496,
+-4447,-4417,-4426,-4479,-4560,-4641,-4704,-4739,-4751,-4746,-4734,-4716,-4686,-4646,-4608,-4583,-4570,-4559,-4546,-4538,-4537,
+-4540,-4538,-4530,-4523,-4520,-4515,-4498,-4471,-4442,-4417,-4390,-4357,-4321,-4286,-4254,-4221,-4187,-4152,-4113,-4068,-4021,
+-3978,-3938,-3894,-3844,-3792,-3739,-3683,-3621,-3554,-3477,-3386,-3285,-3182,-3079,-2973,-2873,-2798,-2748,-2698,-2628,-2546,
+-2475,-2418,-2363,-2302,-2242,-2185,-2126,-2068,-2022,-1988,-1949,-1898,-1844,-1800,-1760,-1717,-1671,-1628,-1585,-1537,-1486,
+-1436,-1381,-1319,-1255,-1198,-1149,-1100,-1050,-1003,-953,-896,-836,-784,-737,-686,-631,-580,-533,-480,-421,-364,
+-313,-262,-206,-150,-99,-47,7,64,116,169,227,286,339,390,446,504,557,606,655,707,758,
+806,855,903,949,993,1040,1090,1138,1183,1226,1269,1311,1352,1392,1427,1455,1481,1510,1536,1550,1558,
+1567,1578,1588,1602,1625,1657,1686,1713,1747,1787,1826,1864,1907,1947,1961,1959,1994,2110,2289,2472,2615,
+2715,2779,2810,2819,2828,2848,2867,2883,2909,2960,3032,3105,3164,3200,3214,3228,3281,3380,3481,3529,3513,
+3465,3412,3356,3296,3245,3215,3203,3193,3182,3170,3157,3143,3129,3111,3082,3036,2981,2929,2887,2856,2844,
+2853,2874,2895,2911,2919,2915,2890,2847,2801,2762,2727,2687,2645,2604,2573,2553,2545,2541,2527,2500,2466,
+2433,2404,2378,2357,2341,2336,2314,2287,2257,2228,2206,2197,2210,2250,2303,2339,2337,2305,2269,2250,2243,
+2230,2204,2182,2183,2207,2234,2246,2243,2235,2231,2234,2251,2277,2295,2291,2272,2258,2262,2272,2274,2262,
+2237,2204,2163,2117,2066,2012,1959,1917,1889,1870,1854,1836,1810,1769,1717,1673,1644,1618,1573,1508,1438,
+1377,1322,1273,1230,1191,1148,1098,1050,1010,974,933,884,831,773,712,651,600,560,525,488,448,
+402,358,322,301,290,279,262,242,225,213,206,198,185,165,144,128,113,89,59,28,3,
+-17,-38,-61,-87,-112,-133,-153,-186,-238,-296,-338,-358,-370,-384,-394,-388,-367,-337,-301,-269,-256,
+-274,-316,-361,-397,-424,-448,-476,-514,-556,-584,-584,-564,-538,-502,-442,-364,-304,-301,-361,-459,-551,
+-590,-551,-454,-361,-327,-354,-402,-446,-497,-571,-660,-735,-772,-774,-760,-758,-786,-848,-927,-998,-1047,
+-1077,-1102,-1130,-1160,-1187,-1207,-1227,-1261,-1321,-1409,-1509,-1606,-1694,-1785,-1879,-1962,-2013,-2036,-2051,-2072,-2101,
+-2148,-2227,-2331,-2421,-2466,-2475,-2479,-2496,-2521,-2557,-2616,-2689,-2747,-2775,-2790,-2824,-2886,-2978,-3101,-3254,-3421,
+-3584,-3749,-3928,-4106,-4253,-4355,-4433,-4508,-4579,-4640,-4687,-4718,-4732,-4748,-4791,-4863,-4922,-4932,-4908,-4890,-4893,
+-4904,-4929,-4995,-5091,-5154,-5136,-5077,-5071,-5161,-5304,-5435,-5533,-5622,-5719,-5816,-5907,-5996,-6090,-6184,-6271,-6348,
+-6420,-6494,-6577,-6664,-6749,-6828,-6905,-6987,-7072,-7153,-7231,-7313,-7403,-7494,-7579,-7658,-7735,-7811,-7887,-7967,-8050,
+-8131,-8209,-8288,-8370,-8451,-8520,-8579,-8642,-8717,-8799,-8878,-8945,-8998,-9040,-9075,-9107,-9130,-9141,-9149,-9167,-9196,
+-9224,-9250,-9287,-9344,-9406,-9455,-9497,-9545,-9589,-9599,-9558,-9484,-9402,-9322,-9252,-9218,-9247,-9329,-9414,-9458,-9462,
+-9460,-9471,-9487,-9481,-9440,-9385,-9343,-9322,-9312,-9321,-9389,-9537,-9726,-9869,-9910,-9867,-9796,-9730,-9668,-9601,-9529,
+-9452,-9367,-9280,-9198,-9121,-9042,-8959,-8880,-8815,-8766,-8722,-8659,-8559,-8421,-8268,-8128,-8006,-7889,-7770,-7650,-7522,
+-7373,-7212,-7060,-6929,-6804,-6679,-6568,-6483,-6411,-6340,-6290,-6289,-6325,-6340,-6293,-6200,-6122,-6121,-6213,-6333,-6353,
+-6184,-5867,-5542,-5312,-5165,-5034,-4896,-4776,-4689,-4612,-4522,-4408,-4263,-4085,-3898,-3737,-3610,-3501,-3401,-3320,-3255,
+-3180,-3083,-2987,-2915,-2856,-2789,-2716,-2657,-2606,-2545,-2469,-2394,-2323,-2241,-2142,-2037,-1940,-1844,-1740,-1638,-1552,
+-1484,-1421,-1357,-1291,-1221,-1140,-1046,-940,-824,-697,-570,-457,-362,-272,-176,-75,22,119,226,351,484,
+608,711,792,863,935,1014,1097,1180,1265,1362,1474,1590,1698,1802,1909,2017,2112,2198,2299,2438,2608,
+2774,2905,2997,3066,3139,3240,3377,3527,3660,3763,3846,3923,3996,4066,4143,4238,4361,4512,4679,4839,4972,
+5083,5190,5293,5371,5415,5441,5467,5483,5473,5458,5481,5571,5721,5895,6046,6129,6148,6168,6248,6367,6454,
+6509,6609,6763,6795,6487,5842,5161,4788,4828,5112,5403,5590,5692,5760,5813,5843,5850,5843,5825,5800,5776,
+5763,5754,5736,5710,5689,5685,5683,5671,5656,5653,5656,5649,5634,5634,5651,5660,5662,5692,5770,5847,5864,
+5828,5800,5807,5817,5807,5803,5815,5812,5785,5793,5869,5917,5791,5491,5201,5085,5126,5193,5210,5190,5131,
+4988,4752,4511,4360,4321,4345,4387,4432,4472,4506,4550,4625,4729,4838,4945,5059,5169,5242,5258,5238,5213,
+5188,5153,5108,5066,5035,5000,4949,4892,4838,4787,4727,4661,4605,4566,4531,4490,4447,4416,4398,4382,4363,
+4348,4333,4302,4252,4204,4179,4172,4164,4147,4126,4104,4080,4059,4039,4011,3973,3947,3941,3915,3840,3768,
+3784,3880,3931,3846,3692,3606,3614,3624,3575,3514,3492,3478,3420,3349,3346,3422,3500,3511,3454,3364,3264,
+3178,3138,3144,3154,3123,3055,2990,2957,2951,2951,2935,2887,2813,2744,2707,2696,2692,2696,2720,2749,2742,
+2688,2623,2582,2560,2528,2480,2421,2351,2279,2257,2328,2460,2547,2519,2413,2317,2267,2237,2206,2187,2184,
+2175,2142,2100,2072,2055,2029,1994,1961,1926,1878,1824,1785,1762,1736,1696,1655,1623,1600,1582,1574,1573,
+1558,1520,1472,1439,1418,1391,1355,1325,1304,1285,1260,1234,1212,1189,1164,1143,1133,1125,1115,1106,1103,
+1106,1106,1099,1084,1068,1056,1052,1058,1068,1080,1093,1103,1104,1093,1080,1071,1060,1042,1027,1035,1062,
+1082,1074,1047,1028,1036,1068,1115,1171,1234,1288,1310,1288,1240,1202,1194,1204,1215,1227,1247,1270,1275,
+1258,1240,1248,1287,1341,1386,1393,1354,1301,1284,1321,1367,1368,1319,1265,1238,1224,1199,1158,1116,1083,
+1062,1051,1043,1022,985,957,958,979,988,964,919,876,847,828,813,795,772,743,711,681,655,
+634,618,601,582,560,540,519,495,470,448,431,411,385,358,334,311,285,256,225,190,150,
+112,83,57,30,2,-20,-36,-51,-69,-89,-108,-127,-148,-171,-192,-214,-237,-261,-286,-311,-338,
+-367,-398,-431,-465,-498,-528,-556,-586,-616,-647,-677,-709,-741,-770,-799,-833,-872,-916,-960,-1002,-1043,
+-1085,-1127,-1170,-1216,-1267,-1324,-1380,-1433,-1482,-1527,-1568,-1606,-1645,-1692,-1748,-1804,-1853,-1894,-1932,-1972,-2016,
+-2064,-2117,-2171,-2223,-2269,-2313,-2355,-2394,-2435,-2481,-2532,-2583,-2630,-2678,-2728,-2776,-2817,-2852,-2885,-2918,-2951,
+-2986,-3025,-3067,-3108,-3149,-3190,-3233,-3275,-3314,-3354,-3395,-3433,-3467,-3499,-3530,-3560,-3586,-3612,-3640,-3670,-3701,
+-3730,-3760,-3789,-3815,-3839,-3860,-3879,-3896,-3913,-3928,-3943,-3959,-3977,-3993,-4006,-4019,-4033,-4044,-4049,-4050,-4052,
+-4057,-4063,-4063,-4058,-4052,-4046,-4040,-4032,-4021,-4006,-3986,-3963,-3941,-3918,-3893,-3869,-3846,-3822,-3794,-3761,-3731,
+-3700,-3666,-3629,-3595,-3566,-3537,-3503,-3465,-3430,-3393,-3350,-3302,-3254,-3207,-3159,-3115,-3077,-3039,-2991,-2935,-2885,
+-2848,-2818,-2784,-2744,-2697,-2644,-2582,-2518,-2459,-2410,-2366,-2321,-2269,-2213,-2157,-2105,-2056,-2009,-1958,-1905,-1852,
+-1803,-1755,-1709,-1663,-1616,-1568,-1519,-1472,-1428,-1385,-1346,-1308,-1274,-1242,-1211,-1179,-1144,-1108,-1074,-1041,-1008,
+-973,-939,-910,-883,-854,-820,-779,-738,-701,-668,-637,-602,-564,-526,-488,-453,-420,-389,-356,-319,-283,
+-250,-217,-179,-144,-117,-93,-59,-18,19,47,77,112,138,146,150,167,198,234,273,319,358,
+360,307,209,98,14,-2,79,258,485,688,818,866,868,869,896,934,951,930,883,823,749,
+661,575,506,454,406,350,278,192,105,37,-14,-72,-146,-211,-241,-248,-256,-272,-287,-309,-355,
+-419,-475,-522,-580,-652,-713,-752,-778,-783,-750,-716,-746,-796,-682,-281,247,565,493,170,-157,-405,
+-650,-940,-1212,-1399,-1505,-1562,-1575,-1549,-1520,-1515,-1522,-1526,-1540,-1584,-1642,-1690,-1746,-1855,-2005,-2122,-2143,
+-2090,-2045,-2073,-2186,-2356,-2538,-2695,-2813,-2903,-2976,-3022,-3026,-2999,-2984,-3017,-3105,-3231,-3381,-3544,-3709,-3862,
+-3991,-4087,-4150,-4189,-4229,-4300,-4405,-4507,-4559,-4542,-4479,-4405,-4346,-4314,-4319,-4360,-4427,-4504,-4574,-4631,-4670,
+-4691,-4696,-4691,-4677,-4651,-4617,-4581,-4554,-4537,-4525,-4517,-4513,-4517,-4524,-4527,-4523,-4517,-4514,-4511,-4500,-4481,
+-4455,-4428,-4400,-4368,-4333,-4298,-4262,-4226,-4192,-4160,-4123,-4075,-4020,-3968,-3920,-3868,-3812,-3759,-3710,-3660,-3606,
+-3549,-3488,-3413,-3321,-3221,-3121,-3023,-2932,-2861,-2810,-2762,-2698,-2621,-2550,-2487,-2420,-2345,-2271,-2200,-2128,-2061,
+-2009,-1968,-1925,-1873,-1823,-1785,-1749,-1703,-1653,-1606,-1563,-1516,-1467,-1421,-1373,-1317,-1255,-1200,-1150,-1101,-1051,
+-1005,-958,-902,-841,-783,-729,-672,-612,-559,-513,-461,-401,-342,-290,-240,-187,-134,-86,-39,13,67,
+118,169,224,282,336,388,441,492,541,591,644,695,743,787,834,882,925,968,1015,1064,1110,
+1151,1192,1234,1277,1320,1364,1407,1444,1478,1509,1532,1544,1547,1550,1557,1566,1578,1598,1624,1648,1674,
+1708,1749,1790,1832,1876,1910,1919,1925,1979,2110,2286,2457,2597,2711,2794,2831,2831,2828,2847,2877,2906,
+2937,2979,3035,3101,3168,3218,3232,3226,3246,3322,3421,3482,3480,3439,3389,3336,3277,3224,3190,3177,3175,
+3173,3170,3162,3151,3138,3120,3089,3044,2990,2939,2893,2857,2836,2833,2839,2851,2867,2884,2888,2868,2826,
+2780,2740,2706,2671,2635,2601,2570,2546,2534,2526,2513,2486,2452,2421,2395,2373,2354,2336,2329,2298,2263,
+2230,2205,2196,2209,2249,2307,2362,2387,2374,2339,2307,2290,2284,2275,2258,2244,2247,2266,2283,2283,2269,
+2253,2246,2252,2275,2307,2332,2332,2316,2308,2318,2334,2333,2310,2275,2235,2193,2144,2087,2021,1956,1907,
+1882,1872,1865,1854,1835,1805,1761,1714,1673,1631,1577,1506,1429,1361,1308,1265,1226,1181,1124,1060,1001,
+956,921,887,848,799,739,673,610,556,509,462,416,372,329,286,251,227,212,199,180,155,
+131,115,113,116,112,95,75,63,56,39,11,-18,-39,-50,-63,-86,-118,-149,-165,-173,-192,
+-239,-302,-354,-385,-411,-442,-469,-477,-463,-434,-395,-356,-335,-346,-383,-425,-459,-483,-500,-522,-562,
+-619,-662,-664,-625,-575,-523,-457,-375,-304,-286,-337,-440,-551,-614,-588,-489,-394,-377,-435,-508,-545,
+-560,-595,-669,-762,-839,-878,-874,-846,-833,-868,-946,-1031,-1087,-1113,-1135,-1170,-1212,-1243,-1261,-1279,-1314,
+-1375,-1460,-1558,-1656,-1752,-1848,-1941,-2017,-2064,-2089,-2110,-2133,-2157,-2199,-2279,-2389,-2481,-2520,-2520,-2523,-2540,
+-2556,-2570,-2607,-2677,-2760,-2834,-2898,-2964,-3033,-3111,-3212,-3343,-3490,-3640,-3802,-3992,-4191,-4354,-4458,-4522,-4576,
+-4632,-4691,-4747,-4789,-4808,-4820,-4861,-4943,-5018,-5034,-4984,-4919,-4885,-4894,-4941,-5012,-5072,-5081,-5043,-5018,-5066,
+-5186,-5323,-5437,-5533,-5630,-5731,-5824,-5912,-6005,-6106,-6205,-6294,-6377,-6458,-6538,-6620,-6705,-6789,-6868,-6943,-7020,
+-7101,-7182,-7262,-7346,-7435,-7527,-7615,-7696,-7773,-7848,-7926,-8009,-8095,-8177,-8255,-8333,-8414,-8492,-8562,-8626,-8692,
+-8765,-8843,-8918,-8985,-9041,-9084,-9123,-9160,-9191,-9209,-9217,-9227,-9246,-9269,-9296,-9334,-9386,-9438,-9482,-9527,-9582,
+-9634,-9654,-9632,-9579,-9505,-9413,-9326,-9294,-9347,-9444,-9508,-9498,-9449,-9423,-9447,-9491,-9511,-9489,-9442,-9397,-9373,
+-9370,-9393,-9458,-9576,-9724,-9845,-9894,-9874,-9818,-9754,-9691,-9628,-9559,-9483,-9398,-9311,-9230,-9155,-9078,-8995,-8910,
+-8834,-8772,-8722,-8667,-8578,-8445,-8289,-8143,-8018,-7899,-7776,-7650,-7518,-7369,-7208,-7055,-6919,-6787,-6655,-6543,-6461,
+-6393,-6324,-6278,-6280,-6309,-6307,-6246,-6159,-6105,-6126,-6228,-6357,-6402,-6261,-5948,-5594,-5323,-5145,-4997,-4850,-4729,
+-4649,-4579,-4483,-4352,-4194,-4017,-3839,-3685,-3562,-3455,-3357,-3279,-3218,-3146,-3047,-2942,-2860,-2797,-2733,-2663,-2601,
+-2548,-2486,-2411,-2334,-2259,-2177,-2082,-1984,-1889,-1792,-1687,-1583,-1495,-1422,-1357,-1294,-1228,-1155,-1072,-979,-877,
+-763,-636,-509,-402,-317,-237,-146,-43,60,160,266,389,529,665,780,866,933,997,1071,1155,1245,
+1338,1437,1546,1658,1767,1877,1994,2112,2214,2300,2402,2550,2724,2875,2972,3038,3116,3219,3336,3449,3559,
+3669,3770,3855,3927,4000,4091,4201,4321,4450,4593,4751,4908,5042,5152,5250,5334,5390,5418,5444,5484,5514,
+5497,5454,5457,5563,5752,5948,6083,6144,6176,6237,6344,6454,6519,6561,6660,6823,6897,6669,6088,5379,4886,
+4803,5047,5377,5613,5731,5795,5850,5890,5902,5896,5883,5867,5845,5827,5814,5799,5773,5749,5736,5730,5718,
+5703,5699,5702,5697,5690,5700,5722,5731,5735,5772,5848,5902,5882,5821,5793,5812,5826,5816,5817,5845,5857,
+5834,5837,5902,5930,5779,5476,5228,5202,5348,5494,5545,5518,5434,5270,5041,4844,4767,4798,4859,4897,4911,
+4913,4911,4920,4958,5017,5074,5131,5211,5316,5400,5420,5387,5339,5290,5228,5154,5097,5069,5040,4980,4907,
+4861,4849,4829,4766,4671,4582,4517,4471,4442,4432,4424,4400,4363,4337,4331,4321,4288,4247,4219,4204,4187,
+4165,4149,4135,4112,4082,4057,4040,4022,4007,3997,3969,3902,3827,3814,3870,3910,3861,3761,3701,3699,3687,
+3628,3563,3533,3507,3441,3367,3365,3452,3552,3581,3520,3406,3286,3195,3154,3166,3202,3219,3194,3134,3065,
+3012,2980,2951,2905,2840,2779,2741,2726,2730,2753,2779,2770,2702,2601,2523,2493,2484,2468,2444,2422,2392,
+2354,2343,2390,2470,2515,2493,2439,2394,2352,2293,2231,2204,2207,2201,2166,2125,2100,2079,2047,2014,1994,
+1974,1932,1877,1836,1815,1788,1744,1698,1666,1645,1627,1617,1610,1586,1536,1482,1452,1444,1432,1404,1367,
+1331,1297,1263,1238,1222,1209,1191,1173,1160,1152,1146,1140,1132,1122,1110,1100,1086,1064,1041,1028,1031,
+1040,1050,1064,1078,1084,1077,1068,1064,1056,1035,1015,1019,1048,1075,1081,1073,1072,1085,1105,1127,1159,
+1208,1260,1286,1270,1230,1198,1194,1208,1224,1243,1271,1295,1297,1278,1266,1278,1314,1361,1406,1422,1385,
+1313,1269,1295,1359,1390,1363,1312,1278,1257,1226,1180,1133,1096,1073,1066,1069,1059,1029,998,992,1012,
+1026,1012,974,930,894,866,846,828,808,783,754,725,698,675,657,641,621,597,572,550,528,
+508,490,472,450,424,398,373,348,319,289,260,230,196,163,134,106,74,42,16,-1,-18,
+-36,-56,-75,-95,-118,-141,-161,-182,-205,-229,-252,-275,-300,-328,-358,-392,-427,-463,-495,-525,-555,
+-586,-617,-650,-684,-717,-748,-777,-810,-849,-892,-933,-973,-1013,-1055,-1098,-1143,-1192,-1246,-1304,-1359,-1410,
+-1456,-1499,-1538,-1571,-1605,-1650,-1706,-1765,-1818,-1865,-1909,-1951,-1992,-2037,-2089,-2145,-2199,-2248,-2293,-2335,-2372,
+-2408,-2447,-2491,-2537,-2586,-2638,-2689,-2735,-2774,-2811,-2849,-2886,-2922,-2956,-2994,-3035,-3075,-3113,-3152,-3192,-3231,
+-3268,-3308,-3350,-3389,-3422,-3454,-3488,-3521,-3549,-3576,-3605,-3636,-3667,-3694,-3722,-3751,-3778,-3801,-3820,-3837,-3855,
+-3871,-3887,-3903,-3918,-3934,-3951,-3966,-3978,-3990,-4002,-4010,-4015,-4019,-4023,-4025,-4023,-4018,-4014,-4011,-4006,-3998,
+-3987,-3973,-3954,-3930,-3906,-3883,-3859,-3837,-3815,-3792,-3763,-3731,-3699,-3670,-3639,-3606,-3572,-3540,-3507,-3472,-3438,
+-3405,-3369,-3326,-3279,-3234,-3190,-3143,-3092,-3043,-2995,-2944,-2889,-2836,-2795,-2765,-2740,-2711,-2673,-2625,-2568,-2510,
+-2457,-2409,-2365,-2322,-2276,-2224,-2168,-2113,-2062,-2011,-1958,-1905,-1855,-1807,-1763,-1720,-1677,-1633,-1586,-1539,-1493,
+-1447,-1403,-1361,-1321,-1284,-1249,-1218,-1189,-1158,-1121,-1084,-1049,-1016,-983,-950,-920,-892,-861,-824,-782,-740,
+-701,-665,-632,-597,-560,-521,-484,-450,-418,-386,-352,-319,-290,-261,-227,-187,-148,-118,-92,-63,-31,
+-2,26,59,95,122,135,147,172,206,237,264,299,346,390,405,370,284,176,105,127,265,
+486,716,882,950,947,934,957,1006,1039,1025,971,894,806,716,639,580,531,477,411,327,226,
+121,33,-36,-103,-175,-231,-253,-249,-244,-243,-248,-272,-326,-395,-454,-503,-555,-600,-620,-630,-656,
+-677,-653,-619,-657,-742,-688,-353,132,457,454,238,0,-229,-531,-900,-1217,-1393,-1453,-1458,-1436,-1397,
+-1373,-1384,-1407,-1418,-1433,-1479,-1538,-1580,-1618,-1699,-1817,-1898,-1886,-1817,-1784,-1851,-2016,-2233,-2456,-2650,-2801,
+-2911,-2980,-3003,-2983,-2954,-2965,-3052,-3205,-3393,-3590,-3784,-3964,-4114,-4218,-4269,-4281,-4279,-4292,-4332,-4392,-4443,
+-4461,-4434,-4369,-4286,-4216,-4187,-4211,-4278,-4364,-4446,-4513,-4563,-4598,-4621,-4637,-4645,-4641,-4623,-4591,-4553,-4518,
+-4496,-4487,-4489,-4495,-4502,-4511,-4520,-4524,-4518,-4508,-4500,-4493,-4482,-4462,-4435,-4405,-4374,-4342,-4310,-4274,-4235,
+-4199,-4166,-4129,-4082,-4028,-3974,-3922,-3864,-3801,-3742,-3690,-3640,-3587,-3536,-3484,-3422,-3344,-3257,-3169,-3081,-2996,
+-2920,-2859,-2803,-2737,-2665,-2595,-2527,-2451,-2363,-2272,-2183,-2096,-2019,-1958,-1908,-1855,-1799,-1755,-1726,-1695,-1649,
+-1595,-1546,-1501,-1453,-1405,-1364,-1325,-1279,-1227,-1175,-1126,-1075,-1023,-977,-932,-879,-818,-758,-702,-642,-578,
+-521,-472,-423,-366,-308,-256,-206,-154,-102,-54,-8,42,93,142,191,242,295,347,398,447,494,
+541,593,648,701,745,788,834,880,922,963,1008,1055,1094,1129,1166,1207,1249,1290,1336,1385,1430,
+1466,1496,1518,1532,1538,1541,1544,1547,1554,1570,1593,1618,1645,1680,1721,1764,1806,1845,1872,1886,1915,
+1999,2144,2310,2458,2585,2705,2803,2851,2849,2838,2853,2895,2943,2985,3020,3053,3099,3162,3222,3244,3228,
+3221,3264,3342,3403,3418,3399,3367,3326,3275,3226,3194,3178,3173,3171,3171,3170,3166,3155,3135,3104,3061,
+3012,2962,2914,2872,2842,2825,2817,2817,2826,2840,2844,2825,2788,2751,2721,2696,2669,2642,2613,2582,2555,
+2535,2519,2496,2464,2431,2405,2388,2373,2354,2329,2324,2280,2236,2204,2190,2198,2231,2287,2352,2402,2420,
+2405,2376,2349,2331,2319,2306,2289,2277,2280,2296,2307,2305,2301,2309,2331,2352,2365,2372,2374,2368,2357,
+2355,2369,2384,2379,2349,2305,2261,2215,2161,2094,2018,1948,1901,1880,1873,1863,1847,1832,1813,1778,1727,
+1668,1611,1551,1482,1409,1346,1298,1260,1221,1170,1105,1033,967,914,873,837,797,747,687,625,568,
+519,469,415,360,310,266,224,186,153,127,103,78,53,30,18,25,41,48,35,16,9,
+12,6,-19,-53,-78,-91,-101,-122,-158,-195,-218,-224,-236,-271,-323,-369,-402,-437,-482,-523,-542,
+-536,-514,-483,-451,-432,-435,-457,-486,-518,-546,-564,-578,-611,-672,-729,-741,-701,-639,-575,-501,-413,
+-336,-307,-341,-426,-528,-598,-591,-516,-440,-438,-514,-605,-654,-661,-667,-702,-767,-843,-900,-909,-871,
+-835,-860,-953,-1063,-1136,-1167,-1191,-1231,-1276,-1305,-1313,-1320,-1344,-1393,-1467,-1559,-1660,-1761,-1859,-1946,-2013,
+-2058,-2096,-2138,-2179,-2213,-2253,-2324,-2419,-2494,-2520,-2522,-2540,-2576,-2600,-2607,-2630,-2698,-2798,-2900,-2992,-3077,
+-3153,-3225,-3313,-3429,-3563,-3706,-3872,-4078,-4298,-4475,-4577,-4624,-4659,-4703,-4760,-4822,-4875,-4904,-4916,-4946,-5011,
+-5075,-5085,-5027,-4945,-4895,-4900,-4949,-5008,-5039,-5027,-5002,-5020,-5103,-5223,-5335,-5430,-5527,-5634,-5736,-5824,-5911,
+-6010,-6116,-6217,-6308,-6398,-6487,-6574,-6659,-6745,-6832,-6914,-6989,-7061,-7135,-7214,-7297,-7383,-7471,-7560,-7647,-7730,
+-7808,-7885,-7966,-8052,-8139,-8221,-8298,-8373,-8449,-8522,-8592,-8662,-8733,-8805,-8877,-8949,-9019,-9081,-9131,-9174,-9215,
+-9250,-9273,-9283,-9289,-9299,-9315,-9340,-9380,-9429,-9477,-9519,-9567,-9626,-9677,-9698,-9689,-9663,-9615,-9536,-9450,-9414,
+-9458,-9530,-9550,-9494,-9421,-9400,-9440,-9497,-9523,-9511,-9475,-9437,-9418,-9428,-9470,-9536,-9622,-9720,-9811,-9869,-9877,
+-9839,-9776,-9707,-9643,-9580,-9509,-9427,-9342,-9264,-9189,-9110,-9024,-8934,-8848,-8773,-8713,-8656,-8574,-8449,-8295,-8148,
+-8022,-7903,-7778,-7648,-7515,-7369,-7211,-7056,-6910,-6769,-6631,-6515,-6431,-6364,-6301,-6267,-6279,-6301,-6277,-6197,-6116,
+-6087,-6128,-6228,-6352,-6410,-6297,-5997,-5627,-5322,-5114,-4949,-4793,-4671,-4598,-4532,-4429,-4284,-4118,-3947,-3779,-3630,
+-3506,-3399,-3306,-3232,-3171,-3096,-2990,-2879,-2793,-2732,-2672,-2600,-2532,-2472,-2411,-2341,-2266,-2189,-2105,-2014,-1922,
+-1833,-1737,-1631,-1525,-1433,-1357,-1290,-1225,-1155,-1076,-989,-898,-801,-691,-569,-451,-353,-274,-197,-105,1,
+110,216,325,451,592,732,845,925,984,1044,1118,1207,1305,1406,1508,1614,1723,1835,1953,2081,2211,
+2323,2414,2514,2655,2820,2954,3032,3090,3179,3303,3424,3519,3602,3697,3795,3877,3942,4017,4124,4259,4403,
+4543,4680,4822,4961,5082,5175,5244,5292,5330,5375,5446,5528,5568,5526,5449,5445,5584,5815,6018,6118,6150,
+6199,6305,6431,6514,6534,6540,6609,6750,6853,6728,6268,5595,5020,4814,4995,5343,5620,5758,5826,5889,5939,
+5952,5941,5935,5930,5912,5888,5871,5859,5836,5806,5785,5776,5768,5759,5756,5757,5751,5749,5765,5791,5805,
+5812,5846,5906,5934,5894,5833,5820,5853,5870,5860,5867,5904,5919,5894,5892,5946,5957,5795,5503,5300,5352,
+5593,5823,5923,5900,5794,5617,5408,5246,5186,5197,5211,5199,5171,5141,5112,5102,5125,5170,5209,5248,5321,
+5426,5507,5517,5470,5413,5358,5286,5204,5146,5121,5087,5011,4932,4916,4956,4969,4887,4735,4596,4516,4484,
+4472,4466,4452,4417,4371,4340,4340,4348,4339,4316,4292,4266,4228,4189,4167,4156,4134,4100,4077,4074,4078,
+4076,4063,4033,3977,3913,3885,3903,3921,3891,3829,3786,3771,3745,3687,3628,3590,3550,3478,3404,3395,3470,
+3571,3620,3581,3475,3349,3250,3212,3240,3304,3347,3325,3238,3129,3047,3002,2966,2912,2845,2788,2754,2741,
+2753,2790,2823,2806,2718,2601,2515,2480,2469,2455,2442,2443,2455,2475,2507,2549,2569,2538,2475,2429,2414,
+2391,2330,2259,2221,2216,2202,2164,2128,2109,2092,2063,2034,2021,2004,1963,1911,1876,1861,1836,1792,1746,
+1716,1694,1669,1646,1625,1592,1539,1488,1468,1475,1477,1453,1408,1356,1309,1272,1248,1233,1219,1205,1193,
+1184,1179,1177,1176,1167,1149,1129,1114,1097,1071,1040,1021,1020,1025,1031,1042,1059,1068,1061,1052,1050,
+1046,1026,1003,998,1018,1046,1071,1098,1130,1151,1149,1134,1130,1156,1199,1229,1229,1207,1188,1189,1201,
+1216,1237,1266,1291,1295,1285,1282,1297,1323,1361,1418,1466,1457,1379,1293,1272,1316,1363,1366,1335,1300,
+1273,1248,1222,1193,1156,1115,1089,1086,1087,1068,1033,1011,1014,1024,1019,996,960,921,884,857,839,
+824,806,787,767,743,718,694,676,656,632,606,582,562,545,528,511,489,463,437,411,383,
+353,323,297,272,245,215,185,154,120,86,59,37,17,-3,-22,-40,-62,-85,-108,-129,-149,
+-172,-196,-218,-242,-267,-294,-321,-352,-387,-425,-459,-490,-519,-550,-584,-620,-657,-693,-725,-756,-789,
+-828,-868,-907,-944,-982,-1023,-1068,-1115,-1167,-1222,-1278,-1330,-1378,-1424,-1468,-1506,-1539,-1574,-1617,-1670,-1725,
+-1777,-1827,-1877,-1925,-1970,-2015,-2065,-2118,-2171,-2221,-2269,-2312,-2350,-2384,-2418,-2455,-2497,-2545,-2598,-2650,-2695,
+-2731,-2768,-2808,-2849,-2886,-2922,-2962,-3003,-3041,-3076,-3114,-3153,-3189,-3224,-3262,-3303,-3341,-3374,-3408,-3445,-3480,
+-3510,-3536,-3565,-3597,-3627,-3655,-3683,-3713,-3740,-3762,-3780,-3796,-3813,-3831,-3849,-3864,-3877,-3893,-3911,-3927,-3939,
+-3949,-3960,-3971,-3979,-3983,-3986,-3987,-3985,-3979,-3975,-3971,-3964,-3955,-3945,-3933,-3917,-3896,-3873,-3852,-3831,-3807,
+-3783,-3759,-3733,-3703,-3672,-3644,-3617,-3588,-3556,-3522,-3486,-3449,-3415,-3382,-3344,-3299,-3251,-3209,-3169,-3124,-3070,
+-3013,-2960,-2909,-2855,-2800,-2750,-2712,-2684,-2660,-2627,-2585,-2538,-2492,-2449,-2405,-2361,-2317,-2273,-2224,-2170,-2116,
+-2063,-2010,-1955,-1902,-1852,-1807,-1764,-1723,-1683,-1640,-1595,-1550,-1506,-1462,-1418,-1374,-1331,-1290,-1252,-1219,-1192,
+-1163,-1126,-1087,-1052,-1021,-991,-961,-932,-900,-863,-822,-782,-744,-706,-666,-627,-590,-555,-521,-488,-457,
+-424,-387,-349,-316,-291,-268,-239,-203,-164,-127,-93,-62,-34,-10,15,45,74,96,113,136,171,
+211,246,271,295,329,378,430,458,430,344,241,194,261,444,685,895,1006,1025,1013,1034,1099,
+1168,1197,1161,1062,925,794,704,654,613,556,476,383,279,175,84,11,-55,-114,-148,-149,-136,
+-132,-142,-163,-203,-268,-343,-409,-464,-506,-513,-478,-446,-467,-517,-532,-523,-572,-682,-706,-513,-178,
+82,151,90,-21,-220,-557,-954,-1251,-1378,-1401,-1399,-1381,-1334,-1286,-1268,-1273,-1278,-1297,-1349,-1420,-1475,
+-1517,-1578,-1655,-1700,-1682,-1643,-1659,-1769,-1951,-2161,-2368,-2560,-2726,-2856,-2936,-2963,-2955,-2959,-3022,-3164,-3366,
+-3597,-3831,-4051,-4240,-4373,-4437,-4434,-4389,-4338,-4308,-4305,-4318,-4336,-4346,-4334,-4289,-4215,-4140,-4104,-4126,-4195,
+-4285,-4372,-4442,-4491,-4522,-4548,-4577,-4603,-4614,-4603,-4572,-4531,-4492,-4467,-4465,-4477,-4489,-4493,-4497,-4508,-4519,
+-4518,-4506,-4493,-4484,-4476,-4460,-4435,-4406,-4375,-4344,-4314,-4281,-4241,-4201,-4162,-4123,-4080,-4032,-3985,-3938,-3883,
+-3821,-3760,-3703,-3648,-3592,-3537,-3486,-3430,-3364,-3289,-3213,-3134,-3049,-2964,-2887,-2813,-2738,-2661,-2589,-2518,-2439,
+-2348,-2249,-2147,-2049,-1966,-1900,-1843,-1780,-1719,-1675,-1651,-1624,-1577,-1521,-1471,-1425,-1377,-1328,-1288,-1254,-1215,
+-1169,-1121,-1074,-1021,-967,-920,-876,-825,-767,-712,-661,-605,-543,-484,-435,-389,-339,-285,-233,-183,-130,
+-77,-26,23,74,123,171,218,266,315,362,409,456,501,547,598,654,706,751,794,842,888,
+929,968,1012,1053,1085,1112,1145,1185,1224,1262,1307,1358,1404,1440,1471,1502,1528,1545,1550,1549,1544,
+1543,1553,1577,1607,1642,1680,1725,1772,1815,1849,1871,1890,1939,2044,2192,2339,2459,2566,2682,2790,2853,
+2866,2861,2878,2926,2989,3042,3072,3086,3111,3166,3232,3265,3250,3222,3225,3265,3310,3338,3347,3341,3319,
+3285,3252,3229,3212,3195,3183,3183,3191,3197,3190,3169,3136,3093,3046,2996,2945,2899,2862,2836,2818,2807,
+2806,2810,2805,2783,2752,2727,2710,2695,2677,2655,2629,2600,2571,2545,2519,2486,2448,2416,2398,2391,2381,
+2359,2324,2326,2269,2220,2194,2196,2222,2267,2327,2388,2430,2443,2431,2408,2384,2365,2347,2328,2308,2294,
+2296,2307,2315,2320,2349,2416,2499,2547,2536,2488,2439,2407,2391,2388,2400,2415,2415,2389,2343,2288,2226,
+2156,2079,2000,1937,1901,1887,1873,1846,1813,1789,1773,1745,1695,1632,1573,1518,1458,1395,1340,1297,1259,
+1214,1157,1091,1022,956,896,843,793,740,681,620,566,522,481,432,373,311,255,206,162,120,
+80,41,9,-14,-31,-43,-45,-30,-5,8,0,-18,-23,-18,-22,-48,-86,-115,-130,-137,-154,
+-188,-230,-262,-279,-295,-327,-366,-396,-420,-455,-508,-562,-593,-598,-588,-568,-547,-532,-528,-532,-545,
+-575,-615,-643,-654,-673,-721,-779,-804,-779,-722,-647,-552,-444,-358,-325,-345,-399,-467,-524,-537,-501,
+-460,-472,-547,-642,-711,-743,-748,-743,-744,-770,-809,-827,-808,-795,-847,-972,-1108,-1193,-1225,-1245,-1280,
+-1318,-1339,-1343,-1346,-1361,-1395,-1451,-1531,-1625,-1724,-1817,-1896,-1954,-1999,-2048,-2112,-2180,-2236,-2286,-2351,-2426,
+-2475,-2482,-2480,-2509,-2562,-2599,-2614,-2644,-2720,-2829,-2937,-3034,-3123,-3207,-3290,-3389,-3513,-3651,-3799,-3975,-4193,
+-4421,-4600,-4697,-4739,-4770,-4809,-4855,-4904,-4952,-4989,-5014,-5041,-5082,-5121,-5123,-5082,-5022,-4980,-4973,-4994,-5022,
+-5032,-5026,-5029,-5075,-5161,-5256,-5340,-5424,-5526,-5637,-5736,-5822,-5912,-6015,-6122,-6222,-6315,-6410,-6506,-6598,-6687,
+-6777,-6868,-6954,-7030,-7100,-7170,-7247,-7331,-7419,-7506,-7592,-7678,-7762,-7842,-7921,-8005,-8093,-8181,-8262,-8337,-8410,
+-8479,-8546,-8615,-8690,-8767,-8839,-8906,-8975,-9048,-9115,-9171,-9220,-9264,-9302,-9327,-9340,-9347,-9352,-9359,-9379,-9419,
+-9469,-9516,-9560,-9613,-9674,-9721,-9739,-9736,-9728,-9702,-9636,-9550,-9501,-9519,-9559,-9552,-9489,-9434,-9439,-9490,-9535,
+-9546,-9532,-9511,-9490,-9481,-9499,-9546,-9603,-9653,-9705,-9771,-9839,-9874,-9854,-9791,-9719,-9658,-9602,-9537,-9458,-9375,
+-9298,-9222,-9139,-9047,-8952,-8859,-8774,-8703,-8640,-8561,-8442,-8292,-8144,-8017,-7898,-7774,-7645,-7514,-7375,-7223,-7066,
+-6910,-6756,-6609,-6487,-6397,-6326,-6269,-6250,-6273,-6291,-6247,-6152,-6076,-6066,-6113,-6201,-6311,-6377,-6291,-6013,-5638,
+-5309,-5076,-4894,-4731,-4610,-4543,-4484,-4377,-4220,-4049,-3884,-3726,-3579,-3449,-3338,-3244,-3169,-3103,-3020,-2911,-2800,
+-2721,-2667,-2610,-2535,-2458,-2393,-2333,-2269,-2198,-2120,-2033,-1942,-1854,-1769,-1678,-1573,-1464,-1367,-1287,-1218,-1150,
+-1074,-991,-905,-819,-727,-621,-506,-399,-310,-231,-148,-53,52,163,276,393,522,663,796,897,964,
+1019,1084,1166,1259,1360,1466,1575,1686,1798,1915,2038,2169,2301,2416,2508,2602,2724,2867,2988,3068,3141,
+3246,3380,3501,3589,3663,3746,3831,3903,3968,4051,4168,4317,4482,4644,4787,4900,4992,5068,5130,5170,5201,
+5250,5345,5477,5588,5605,5517,5413,5429,5620,5896,6102,6172,6181,6238,6361,6479,6522,6492,6453,6468,6565,
+6692,6695,6406,5823,5199,4873,4971,5311,5618,5777,5856,5931,5992,6005,5989,5983,5985,5970,5941,5922,5912,
+5891,5857,5834,5830,5830,5824,5818,5816,5813,5813,5830,5855,5869,5878,5909,5962,5987,5957,5914,5913,5942,
+5951,5933,5934,5961,5970,5950,5958,6012,6011,5845,5575,5414,5506,5776,6030,6147,6132,6033,5885,5727,5607,
+5542,5502,5453,5396,5341,5283,5224,5189,5204,5249,5289,5326,5388,5472,5529,5525,5485,5447,5410,5350,5273,
+5215,5178,5122,5040,4990,5031,5117,5125,4988,4772,4601,4531,4524,4519,4497,4465,4429,4395,4375,4375,4382,
+4383,4376,4363,4333,4282,4229,4195,4178,4159,4131,4115,4119,4131,4132,4118,4090,4050,4006,3975,3965,3955,
+3924,3879,3844,3821,3792,3748,3700,3655,3602,3531,3465,3446,3492,3577,3643,3639,3556,3428,3317,3275,3309,
+3376,3404,3349,3225,3099,3026,3004,2982,2926,2849,2786,2751,2742,2756,2790,2820,2808,2742,2654,2586,2549,
+2523,2490,2461,2459,2494,2562,2644,2702,2693,2609,2496,2417,2386,2363,2314,2254,2219,2208,2191,2158,2129,
+2114,2101,2078,2056,2042,2020,1978,1933,1909,1898,1874,1831,1789,1761,1732,1696,1661,1634,1601,1551,1503,
+1484,1492,1499,1479,1432,1375,1326,1291,1268,1247,1224,1208,1203,1202,1199,1196,1196,1190,1172,1150,1132,
+1114,1087,1055,1036,1030,1025,1020,1025,1042,1052,1046,1037,1036,1033,1016,993,985,995,1017,1050,1103,
+1160,1191,1179,1143,1121,1133,1167,1200,1212,1206,1197,1198,1205,1212,1224,1244,1263,1268,1267,1275,1289,
+1302,1328,1394,1484,1530,1481,1377,1302,1300,1338,1363,1354,1322,1289,1271,1276,1279,1249,1183,1123,1105,
+1114,1108,1075,1039,1024,1025,1024,1008,976,935,898,873,858,844,828,814,802,784,758,730,706,
+686,663,638,615,596,579,564,549,529,504,476,450,423,395,367,342,319,293,263,232,199,
+166,135,108,83,59,36,16,-2,-24,-48,-70,-91,-113,-137,-160,-183,-206,-234,-262,-288,-316,
+-349,-386,-422,-454,-483,-514,-550,-589,-629,-667,-701,-733,-768,-806,-845,-882,-918,-955,-994,-1038,-1087,
+-1140,-1194,-1246,-1293,-1339,-1385,-1431,-1472,-1509,-1547,-1592,-1641,-1689,-1734,-1783,-1836,-1890,-1941,-1989,-2037,-2085,
+-2135,-2185,-2236,-2284,-2324,-2358,-2392,-2428,-2468,-2514,-2565,-2614,-2656,-2692,-2728,-2768,-2808,-2845,-2883,-2926,-2967,
+-3002,-3036,-3074,-3115,-3153,-3185,-3220,-3258,-3294,-3327,-3361,-3399,-3436,-3465,-3491,-3520,-3552,-3582,-3611,-3641,-3672,
+-3698,-3719,-3736,-3753,-3772,-3791,-3809,-3823,-3835,-3849,-3868,-3887,-3900,-3910,-3921,-3932,-3939,-3942,-3943,-3945,-3944,
+-3940,-3934,-3928,-3919,-3908,-3897,-3887,-3875,-3859,-3842,-3826,-3806,-3780,-3752,-3727,-3704,-3677,-3647,-3619,-3593,-3566,
+-3536,-3503,-3467,-3430,-3394,-3358,-3319,-3274,-3226,-3183,-3145,-3104,-3055,-3002,-2952,-2905,-2857,-2802,-2744,-2693,-2656,
+-2626,-2592,-2550,-2508,-2470,-2434,-2391,-2344,-2298,-2254,-2207,-2157,-2106,-2056,-2005,-1950,-1896,-1847,-1802,-1760,-1721,
+-1681,-1639,-1594,-1550,-1508,-1467,-1425,-1383,-1342,-1300,-1259,-1222,-1191,-1161,-1125,-1087,-1053,-1023,-994,-965,-936,
+-901,-860,-818,-782,-749,-712,-669,-626,-587,-553,-520,-491,-463,-431,-393,-355,-322,-295,-268,-240,-209,
+-177,-141,-104,-71,-43,-15,14,42,64,81,100,128,162,201,243,282,314,340,373,424,479,
+502,466,380,300,298,416,628,851,999,1049,1049,1070,1147,1265,1370,1396,1307,1127,938,808,743,
+697,628,535,434,339,259,198,152,111,84,87,116,134,113,61,-3,-75,-161,-253,-340,-411,
+-446,-415,-326,-252,-256,-321,-375,-407,-478,-604,-687,-623,-438,-250,-131,-82,-126,-325,-671,-1029,-1255,
+-1341,-1381,-1422,-1419,-1330,-1200,-1106,-1082,-1108,-1168,-1255,-1348,-1421,-1469,-1511,-1550,-1569,-1569,-1587,-1659,-1788,
+-1944,-2100,-2252,-2407,-2566,-2712,-2826,-2901,-2955,-3031,-3158,-3340,-3557,-3790,-4021,-4233,-4397,-4491,-4509,-4465,-4388,
+-4310,-4251,-4213,-4189,-4178,-4184,-4196,-4188,-4150,-4101,-4073,-4083,-4127,-4191,-4267,-4340,-4396,-4435,-4470,-4513,-4556,
+-4581,-4580,-4558,-4526,-4492,-4471,-4470,-4484,-4494,-4490,-4482,-4485,-4497,-4504,-4499,-4489,-4480,-4469,-4452,-4430,-4405,
+-4376,-4344,-4313,-4280,-4242,-4199,-4156,-4115,-4074,-4031,-3990,-3948,-3902,-3847,-3789,-3732,-3672,-3610,-3550,-3494,-3438,
+-3376,-3307,-3235,-3159,-3075,-2985,-2896,-2809,-2722,-2638,-2561,-2487,-2411,-2325,-2229,-2125,-2023,-1936,-1870,-1810,-1743,
+-1678,-1633,-1607,-1577,-1527,-1468,-1417,-1372,-1322,-1271,-1228,-1190,-1148,-1102,-1056,-1009,-958,-905,-858,-815,-768,
+-714,-665,-622,-575,-520,-463,-415,-371,-324,-272,-221,-169,-117,-64,-12,39,90,138,183,230,278,
+324,368,413,459,504,548,596,649,700,745,792,844,893,934,973,1017,1057,1085,1108,1138,1177,
+1214,1250,1293,1340,1381,1413,1448,1493,1536,1563,1573,1574,1571,1568,1574,1596,1629,1667,1707,1752,1804,
+1851,1885,1903,1926,1982,2087,2222,2348,2449,2542,2648,2756,2836,2875,2894,2922,2973,3037,3092,3118,3120,
+3133,3182,3250,3291,3278,3230,3193,3189,3214,3251,3286,3307,3308,3297,3288,3280,3265,3241,3222,3222,3237,
+3252,3249,3223,3181,3130,3077,3025,2973,2927,2889,2860,2836,2818,2809,2803,2790,2765,2735,2713,2701,2694,
+2682,2664,2640,2613,2585,2558,2527,2489,2450,2422,2410,2407,2399,2372,2326,2339,2273,2222,2207,2227,2268,
+2320,2374,2424,2457,2466,2455,2435,2411,2389,2367,2345,2324,2312,2312,2317,2318,2332,2398,2529,2673,2745,
+2709,2603,2501,2437,2405,2394,2402,2427,2446,2436,2388,2314,2226,2136,2052,1980,1931,1907,1894,1870,1823,
+1768,1729,1707,1682,1637,1584,1536,1491,1440,1385,1338,1299,1258,1203,1139,1076,1016,953,887,822,758,
+692,623,559,509,470,428,373,307,240,179,127,82,42,2,-36,-65,-79,-80,-78,-74,-59,
+-36,-20,-23,-35,-43,-48,-63,-94,-129,-154,-163,-167,-179,-209,-250,-289,-320,-353,-393,-426,-440,
+-447,-474,-529,-590,-636,-659,-665,-655,-638,-622,-611,-602,-606,-636,-688,-731,-746,-750,-775,-816,-844,
+-839,-799,-719,-597,-462,-365,-331,-339,-360,-392,-435,-471,-480,-478,-500,-557,-631,-701,-759,-784,-761,
+-709,-673,-676,-698,-719,-763,-870,-1026,-1164,-1234,-1250,-1256,-1277,-1303,-1321,-1335,-1354,-1379,-1409,-1453,-1517,
+-1597,-1683,-1767,-1842,-1902,-1952,-2009,-2085,-2169,-2244,-2311,-2382,-2447,-2479,-2472,-2462,-2488,-2537,-2576,-2600,-2647,
+-2738,-2854,-2962,-3053,-3140,-3232,-3332,-3451,-3591,-3745,-3909,-4098,-4319,-4539,-4703,-4794,-4841,-4882,-4923,-4954,-4980,
+-5013,-5055,-5098,-5133,-5159,-5171,-5164,-5143,-5116,-5088,-5064,-5047,-5041,-5044,-5057,-5088,-5144,-5214,-5282,-5349,-5433,
+-5537,-5643,-5735,-5820,-5914,-6018,-6121,-6218,-6318,-6420,-6520,-6615,-6707,-6801,-6894,-6980,-7058,-7130,-7201,-7278,-7363,
+-7453,-7542,-7627,-7711,-7795,-7876,-7955,-8039,-8129,-8216,-8296,-8370,-8441,-8509,-8573,-8643,-8722,-8801,-8872,-8936,-9003,
+-9075,-9142,-9200,-9253,-9303,-9344,-9371,-9389,-9401,-9404,-9405,-9419,-9456,-9507,-9555,-9601,-9658,-9722,-9768,-9784,-9785,
+-9785,-9765,-9698,-9601,-9532,-9525,-9548,-9545,-9510,-9492,-9521,-9569,-9589,-9576,-9559,-9556,-9556,-9558,-9576,-9613,-9646,
+-9660,-9674,-9720,-9795,-9853,-9853,-9802,-9735,-9681,-9631,-9568,-9489,-9407,-9333,-9259,-9173,-9072,-8968,-8869,-8778,-8699,
+-8629,-8550,-8438,-8294,-8144,-8009,-7886,-7763,-7637,-7512,-7381,-7236,-7078,-6914,-6748,-6592,-6462,-6363,-6285,-6231,-6220,
+-6251,-6267,-6216,-6119,-6048,-6039,-6075,-6140,-6235,-6310,-6253,-5999,-5630,-5288,-5036,-4841,-4672,-4556,-4498,-4443,-4330,
+-4162,-3984,-3823,-3675,-3531,-3398,-3280,-3179,-3097,-3023,-2933,-2823,-2719,-2647,-2600,-2545,-2470,-2391,-2324,-2265,-2203,
+-2134,-2055,-1966,-1873,-1786,-1705,-1618,-1514,-1401,-1297,-1212,-1141,-1070,-991,-907,-827,-751,-664,-560,-451,-352,
+-266,-181,-88,10,115,227,346,471,601,735,855,942,998,1054,1130,1222,1317,1417,1528,1648,1770,
+1891,2012,2134,2256,2374,2482,2575,2665,2769,2888,2998,3092,3189,3310,3443,3560,3651,3728,3800,3864,3926,
+4002,4105,4232,4384,4565,4754,4902,4976,4997,5014,5051,5097,5151,5240,5380,5535,5622,5583,5450,5346,5402,
+5639,5942,6156,6227,6239,6294,6400,6486,6503,6464,6405,6364,6394,6522,6641,6527,6055,5407,4968,4968,5283,
+5612,5798,5889,5973,6043,6061,6045,6038,6040,6023,5992,5973,5965,5942,5907,5887,5891,5896,5885,5873,5874,
+5883,5893,5906,5920,5927,5937,5973,6034,6075,6065,6032,6020,6029,6024,5997,5981,5986,5990,5996,6034,6088,
+6061,5891,5663,5559,5667,5898,6094,6175,6162,6101,6019,5933,5861,5798,5729,5657,5596,5537,5457,5360,5290,
+5278,5305,5333,5358,5400,5455,5489,5491,5484,5485,5475,5431,5366,5303,5235,5146,5067,5072,5179,5288,5260,
+5060,4798,4620,4576,4599,4604,4565,4507,4462,4436,4424,4419,4419,4421,4425,4421,4395,4345,4288,4242,4212,
+4189,4171,4163,4167,4175,4174,4162,4140,4112,4083,4055,4028,3998,3963,3927,3893,3863,3831,3795,3754,3704,
+3647,3586,3532,3500,3508,3560,3627,3648,3587,3466,3353,3307,3329,3367,3354,3264,3132,3026,2990,3002,3001,
+2954,2877,2812,2781,2781,2797,2812,2815,2797,2769,2746,2735,2721,2681,2608,2527,2478,2490,2561,2661,2741,
+2761,2704,2594,2479,2393,2334,2284,2238,2206,2191,2181,2164,2146,2130,2112,2092,2073,2055,2027,1987,1953,
+1936,1924,1896,1855,1820,1791,1753,1709,1677,1663,1646,1604,1550,1512,1499,1495,1477,1439,1389,1344,1313,
+1290,1262,1229,1208,1207,1213,1212,1207,1205,1202,1189,1169,1149,1128,1100,1071,1053,1044,1030,1014,1011,
+1023,1033,1030,1025,1025,1022,1007,991,988,995,1006,1032,1085,1148,1184,1176,1147,1132,1144,1174,1204,
+1219,1219,1214,1212,1214,1216,1220,1231,1242,1247,1253,1269,1284,1283,1287,1340,1449,1544,1550,1467,1369,
+1326,1343,1378,1390,1362,1315,1289,1306,1332,1312,1237,1162,1139,1157,1164,1135,1093,1072,1071,1071,1053,
+1019,980,953,941,931,907,874,849,835,821,796,765,738,715,691,667,646,629,614,601,587,
+569,545,518,492,467,440,414,390,367,340,309,277,244,213,184,159,134,108,84,63,41,
+18,-5,-27,-49,-74,-101,-125,-146,-171,-200,-231,-259,-287,-317,-352,-387,-419,-450,-482,-518,-557,
+-598,-637,-672,-707,-744,-782,-821,-859,-897,-934,-972,-1015,-1064,-1117,-1168,-1214,-1257,-1301,-1348,-1394,-1438,
+-1479,-1522,-1568,-1613,-1655,-1695,-1739,-1791,-1847,-1903,-1955,-2004,-2049,-2095,-2146,-2200,-2250,-2292,-2328,-2364,-2405,
+-2447,-2492,-2538,-2583,-2622,-2658,-2695,-2733,-2770,-2805,-2843,-2886,-2927,-2961,-2996,-3036,-3081,-3120,-3152,-3183,-3216,
+-3250,-3282,-3316,-3354,-3389,-3418,-3444,-3472,-3504,-3534,-3564,-3596,-3626,-3650,-3670,-3688,-3708,-3729,-3749,-3766,-3779,
+-3790,-3804,-3824,-3844,-3859,-3869,-3881,-3891,-3896,-3895,-3894,-3896,-3897,-3894,-3888,-3882,-3873,-3862,-3851,-3843,-3833,
+-3820,-3807,-3795,-3778,-3751,-3720,-3696,-3676,-3652,-3623,-3593,-3565,-3538,-3509,-3477,-3444,-3407,-3369,-3332,-3294,-3252,
+-3205,-3159,-3118,-3080,-3040,-2997,-2954,-2914,-2871,-2820,-2760,-2703,-2657,-2619,-2578,-2533,-2490,-2453,-2416,-2372,-2323,
+-2275,-2231,-2186,-2139,-2093,-2048,-2000,-1947,-1894,-1846,-1802,-1760,-1719,-1679,-1637,-1593,-1549,-1508,-1467,-1426,-1386,
+-1349,-1310,-1268,-1226,-1189,-1156,-1122,-1088,-1056,-1025,-994,-965,-935,-900,-859,-817,-783,-752,-714,-670,-627,
+-589,-554,-519,-488,-461,-432,-399,-367,-337,-307,-271,-235,-205,-178,-149,-118,-89,-61,-30,4,33,
+54,75,103,136,164,193,231,281,327,359,382,416,463,510,525,492,429,391,435,574,757,
+905,977,992,1011,1088,1239,1418,1531,1503,1342,1137,978,880,803,709,598,490,406,361,355,368,
+382,407,461,526,551,502,401,285,167,37,-105,-242,-345,-380,-324,-206,-109,-95,-151,-220,-289,
+-392,-529,-628,-622,-515,-368,-236,-170,-235,-466,-790,-1068,-1224,-1310,-1404,-1483,-1450,-1274,-1043,-889,-873,
+-967,-1107,-1242,-1344,-1409,-1446,-1469,-1483,-1495,-1524,-1587,-1686,-1798,-1903,-2000,-2104,-2228,-2376,-2535,-2687,-2822,
+-2949,-3096,-3273,-3471,-3674,-3874,-4067,-4234,-4347,-4395,-4384,-4332,-4259,-4186,-4123,-4067,-4015,-3975,-3964,-3985,-4016,
+-4038,-4049,-4060,-4073,-4084,-4106,-4151,-4217,-4283,-4335,-4380,-4433,-4486,-4524,-4539,-4538,-4528,-4511,-4491,-4481,-4485,
+-4491,-4487,-4473,-4463,-4464,-4471,-4476,-4477,-4472,-4458,-4439,-4420,-4400,-4376,-4344,-4309,-4275,-4239,-4197,-4154,-4112,
+-4072,-4030,-3987,-3945,-3902,-3854,-3801,-3745,-3686,-3624,-3561,-3501,-3441,-3377,-3307,-3234,-3159,-3079,-2992,-2901,-2809,
+-2718,-2630,-2548,-2472,-2398,-2321,-2232,-2130,-2027,-1939,-1871,-1811,-1744,-1679,-1633,-1603,-1566,-1510,-1448,-1394,-1347,
+-1295,-1241,-1192,-1147,-1100,-1050,-1002,-956,-906,-856,-812,-772,-727,-678,-633,-595,-555,-505,-453,-405,-359,
+-309,-256,-203,-151,-99,-50,-3,44,92,138,181,227,276,323,367,413,461,505,547,592,642,
+691,736,785,839,890,932,974,1020,1064,1096,1122,1153,1192,1229,1264,1302,1341,1372,1397,1435,1490,
+1543,1575,1594,1613,1633,1644,1649,1661,1687,1718,1747,1780,1822,1867,1902,1926,1955,2012,2103,2215,2324,
+2422,2515,2614,2714,2801,2867,2917,2962,3014,3071,3121,3144,3144,3152,3194,3257,3299,3284,3222,3154,3116,
+3125,3171,3228,3272,3295,3307,3318,3325,3318,3299,3285,3289,3307,3321,3315,3280,3224,3159,3098,3043,2994,
+2951,2915,2886,2859,2836,2820,2809,2795,2770,2737,2710,2695,2690,2684,2671,2650,2625,2599,2571,2539,2502,
+2467,2443,2434,2432,2425,2395,2339,2365,2292,2241,2236,2270,2322,2375,2422,2458,2479,2483,2473,2456,2434,
+2410,2385,2363,2346,2337,2337,2334,2325,2339,2420,2576,2740,2818,2767,2640,2518,2440,2395,2371,2376,2411,
+2450,2453,2401,2309,2204,2109,2031,1972,1932,1910,1895,1866,1813,1750,1701,1670,1639,1596,1548,1506,1466,
+1418,1366,1324,1289,1244,1183,1114,1053,994,929,855,782,713,644,575,512,460,412,354,284,211,
+142,82,32,-6,-38,-67,-96,-115,-115,-104,-94,-91,-85,-71,-55,-46,-49,-61,-83,-116,-153,
+-183,-198,-202,-203,-213,-240,-278,-318,-359,-407,-458,-490,-493,-486,-501,-549,-609,-665,-709,-736,-738,
+-719,-695,-677,-663,-662,-692,-750,-804,-826,-826,-833,-854,-876,-885,-865,-790,-656,-507,-405,-363,-348,
+-335,-344,-394,-462,-514,-542,-568,-597,-627,-666,-721,-762,-751,-688,-627,-610,-637,-693,-792,-942,-1104,
+-1212,-1242,-1230,-1223,-1234,-1254,-1279,-1317,-1365,-1412,-1452,-1493,-1545,-1606,-1676,-1753,-1834,-1909,-1974,-2040,-2117,
+-2201,-2280,-2356,-2434,-2502,-2534,-2529,-2521,-2538,-2573,-2600,-2624,-2679,-2779,-2898,-3006,-3097,-3184,-3280,-3390,-3522,
+-3677,-3850,-4036,-4238,-4452,-4646,-4783,-4864,-4919,-4972,-5015,-5036,-5045,-5066,-5110,-5164,-5209,-5229,-5221,-5196,-5172,
+-5153,-5129,-5096,-5063,-5049,-5059,-5090,-5139,-5197,-5254,-5306,-5367,-5453,-5555,-5651,-5735,-5819,-5915,-6014,-6110,-6210,
+-6321,-6434,-6538,-6631,-6725,-6820,-6911,-6995,-7075,-7153,-7229,-7308,-7395,-7489,-7580,-7665,-7748,-7829,-7906,-7983,-8068,
+-8159,-8247,-8324,-8395,-8467,-8536,-8605,-8679,-8760,-8839,-8906,-8968,-9035,-9104,-9167,-9222,-9278,-9333,-9377,-9407,-9431,
+-9450,-9457,-9455,-9464,-9499,-9547,-9594,-9641,-9701,-9765,-9811,-9830,-9838,-9842,-9818,-9738,-9624,-9537,-9516,-9539,-9555,
+-9552,-9559,-9591,-9623,-9623,-9598,-9584,-9592,-9607,-9617,-9630,-9650,-9658,-9640,-9626,-9655,-9729,-9802,-9828,-9802,-9753,
+-9705,-9655,-9589,-9509,-9430,-9360,-9290,-9203,-9095,-8980,-8875,-8781,-8698,-8622,-8542,-8439,-8304,-8150,-8002,-7869,-7745,
+-7625,-7504,-7378,-7237,-7079,-6907,-6733,-6572,-6439,-6336,-6253,-6194,-6181,-6210,-6226,-6182,-6096,-6028,-6007,-6018,-6059,
+-6144,-6226,-6187,-5956,-5600,-5256,-4993,-4785,-4615,-4505,-4453,-4396,-4271,-4089,-3906,-3751,-3617,-3485,-3355,-3233,-3125,
+-3033,-2951,-2856,-2745,-2641,-2568,-2517,-2462,-2392,-2322,-2260,-2200,-2135,-2065,-1988,-1902,-1809,-1721,-1640,-1554,-1452,
+-1337,-1228,-1137,-1064,-992,-912,-830,-755,-685,-603,-502,-397,-304,-216,-120,-15,90,197,313,437,562,
+685,807,915,992,1043,1101,1184,1284,1383,1485,1603,1735,1866,1991,2112,2228,2334,2433,2528,2624,2721,
+2821,2925,3027,3131,3243,3366,3487,3596,3695,3782,3848,3893,3951,4051,4186,4331,4484,4666,4860,4992,5017,
+4974,4955,5004,5099,5207,5330,5470,5586,5609,5517,5372,5291,5365,5594,5878,6101,6223,6285,6345,6408,6454,
+6483,6500,6479,6408,6361,6448,6625,6638,6264,5611,5079,4979,5252,5601,5821,5931,6016,6088,6115,6108,6102,
+6097,6076,6046,6030,6021,5995,5959,5943,5953,5957,5941,5928,5941,5969,5990,5995,5992,5986,5994,6037,6108,
+6157,6148,6101,6069,6069,6070,6047,6015,5999,6012,6058,6120,6142,6059,5880,5719,5700,5831,5998,6094,6109,
+6092,6076,6061,6036,5999,5947,5885,5829,5787,5736,5644,5523,5423,5373,5358,5353,5359,5386,5424,5453,5476,
+5508,5539,5543,5513,5469,5409,5311,5186,5109,5155,5299,5403,5343,5119,4857,4696,4680,4747,4796,4770,4681,
+4581,4509,4474,4469,4485,4513,4534,4530,4492,4434,4370,4311,4259,4221,4201,4198,4204,4212,4216,4213,4196,
+4170,4144,4117,4087,4052,4021,3992,3958,3914,3869,3829,3787,3735,3681,3635,3591,3541,3505,3513,3559,3585,
+3541,3442,3351,3315,3319,3313,3262,3171,3076,3018,3008,3022,3021,2984,2921,2866,2846,2866,2897,2902,2869,
+2828,2817,2855,2915,2948,2912,2799,2650,2529,2480,2505,2575,2665,2750,2789,2742,2619,2480,2380,2321,2272,
+2222,2185,2173,2174,2169,2151,2127,2105,2085,2062,2029,1993,1966,1950,1932,1902,1870,1841,1808,1762,1718,
+1704,1718,1724,1691,1626,1561,1517,1493,1474,1446,1404,1362,1331,1308,1278,1241,1215,1214,1223,1225,1219,
+1217,1217,1207,1187,1163,1137,1105,1076,1059,1049,1034,1014,1005,1009,1014,1013,1012,1015,1011,998,991,
+1000,1011,1016,1028,1065,1115,1148,1150,1139,1138,1153,1176,1198,1211,1212,1208,1207,1213,1218,1225,1237,
+1251,1260,1271,1292,1309,1300,1279,1296,1380,1483,1529,1489,1408,1352,1352,1391,1421,1404,1346,1299,1300,
+1325,1314,1254,1196,1189,1215,1221,1186,1143,1127,1137,1144,1128,1093,1061,1050,1052,1041,1000,942,896,
+874,859,835,804,775,749,723,698,678,664,650,636,621,603,580,555,529,504,478,453,432,
+410,386,356,322,289,258,230,204,180,155,132,108,84,59,36,15,-7,-35,-65,-91,-113,
+-137,-168,-202,-234,-263,-292,-323,-355,-387,-420,-452,-488,-527,-567,-606,-642,-679,-719,-759,-799,-839,
+-878,-917,-956,-998,-1047,-1099,-1146,-1188,-1229,-1272,-1318,-1363,-1406,-1450,-1496,-1541,-1583,-1621,-1659,-1701,-1751,
+-1806,-1862,-1916,-1965,-2011,-2056,-2107,-2162,-2214,-2257,-2294,-2334,-2379,-2426,-2471,-2514,-2554,-2592,-2629,-2665,-2702,
+-2736,-2768,-2804,-2844,-2884,-2920,-2955,-2998,-3044,-3084,-3116,-3144,-3175,-3206,-3238,-3273,-3311,-3345,-3373,-3400,-3428,
+-3458,-3488,-3518,-3549,-3576,-3599,-3619,-3640,-3663,-3685,-3704,-3722,-3736,-3747,-3761,-3779,-3799,-3813,-3824,-3836,-3846,
+-3849,-3845,-3841,-3842,-3844,-3842,-3838,-3834,-3827,-3817,-3808,-3800,-3790,-3776,-3764,-3754,-3738,-3712,-3684,-3662,-3644,
+-3623,-3594,-3564,-3535,-3507,-3476,-3445,-3414,-3379,-3342,-3304,-3269,-3231,-3186,-3137,-3090,-3051,-3016,-2980,-2942,-2903,
+-2863,-2817,-2765,-2710,-2662,-2618,-2574,-2526,-2480,-2441,-2404,-2359,-2310,-2263,-2219,-2174,-2128,-2085,-2044,-1998,-1946,
+-1896,-1850,-1807,-1764,-1721,-1681,-1639,-1595,-1552,-1511,-1471,-1429,-1390,-1353,-1315,-1271,-1226,-1186,-1151,-1119,-1089,
+-1060,-1030,-999,-968,-936,-901,-859,-819,-785,-752,-711,-666,-627,-594,-559,-522,-488,-459,-432,-402,-374,
+-349,-319,-280,-240,-207,-180,-153,-125,-99,-74,-44,-12,14,37,67,108,149,177,199,228,271,
+320,361,394,421,454,496,539,560,541,503,493,547,652,760,831,857,875,939,1089,1300,1481,
+1542,1471,1333,1201,1089,977,853,726,610,530,509,551,625,698,773,868,961,999,951,840,701,
+539,341,116,-93,-237,-277,-213,-97,-9,8,-31,-98,-193,-324,-459,-538,-525,-436,-310,-197,-172,
+-299,-562,-852,-1064,-1198,-1315,-1429,-1456,-1321,-1058,-802,-683,-741,-920,-1122,-1271,-1347,-1376,-1391,-1405,-1418,
+-1441,-1491,-1573,-1665,-1744,-1810,-1882,-1973,-2089,-2229,-2390,-2560,-2728,-2896,-3073,-3262,-3449,-3621,-3779,-3924,-4040,
+-4111,-4134,-4123,-4089,-4039,-3983,-3927,-3870,-3806,-3746,-3716,-3734,-3790,-3864,-3943,-4014,-4059,-4067,-4058,-4069,-4113,
+-4173,-4227,-4276,-4331,-4390,-4439,-4472,-4497,-4514,-4513,-4488,-4457,-4442,-4450,-4463,-4464,-4451,-4437,-4433,-4440,-4448,
+-4448,-4435,-4415,-4397,-4383,-4363,-4334,-4300,-4267,-4233,-4195,-4153,-4112,-4072,-4030,-3983,-3936,-3890,-3843,-3790,-3735,
+-3679,-3622,-3563,-3503,-3441,-3376,-3305,-3232,-3158,-3082,-3000,-2912,-2821,-2731,-2645,-2561,-2482,-2407,-2332,-2248,-2150,
+-2048,-1960,-1891,-1827,-1758,-1692,-1643,-1607,-1566,-1508,-1445,-1390,-1338,-1283,-1226,-1174,-1125,-1074,-1023,-973,-925,
+-875,-826,-784,-745,-702,-654,-610,-572,-532,-487,-440,-393,-344,-290,-235,-180,-126,-75,-31,8,50,
+95,140,182,226,273,320,366,415,465,510,552,597,648,696,739,785,837,887,929,972,1021,
+1069,1108,1140,1176,1216,1252,1285,1320,1352,1373,1393,1432,1490,1542,1574,1605,1656,1714,1750,1758,1761,
+1777,1796,1805,1806,1817,1843,1879,1917,1963,2022,2094,2175,2267,2369,2474,2571,2656,2734,2811,2882,2946,
+3005,3066,3122,3156,3165,3169,3194,3240,3272,3257,3190,3107,3053,3058,3113,3186,3247,3288,3316,3339,3354,
+3358,3356,3357,3367,3381,3389,3375,3332,3264,3187,3118,3061,3014,2971,2934,2903,2876,2850,2829,2816,2805,
+2784,2750,2714,2693,2689,2690,2683,2666,2642,2615,2582,2547,2512,2482,2461,2454,2456,2454,2426,2365,2397,
+2322,2275,2275,2312,2366,2420,2463,2488,2494,2488,2480,2471,2457,2435,2411,2392,2381,2377,2372,2355,2334,
+2339,2406,2534,2665,2722,2681,2584,2492,2427,2376,2337,2328,2357,2395,2396,2340,2248,2154,2080,2025,1979,
+1938,1909,1893,1875,1837,1784,1734,1695,1656,1603,1544,1490,1441,1389,1339,1299,1267,1222,1157,1085,1017,
+949,870,783,704,638,580,523,466,409,346,271,191,117,54,1,-41,-70,-89,-108,-128,-140,
+-136,-122,-111,-110,-110,-102,-84,-65,-58,-73,-111,-158,-201,-231,-246,-252,-256,-268,-293,-330,-370,
+-412,-462,-512,-542,-543,-534,-542,-575,-621,-675,-736,-789,-809,-792,-761,-733,-714,-710,-735,-787,-841,
+-872,-884,-894,-908,-924,-939,-934,-875,-754,-618,-520,-461,-403,-346,-341,-413,-519,-598,-638,-660,-668,
+-660,-656,-681,-718,-724,-689,-652,-652,-689,-761,-879,-1037,-1178,-1244,-1235,-1206,-1198,-1213,-1237,-1277,-1339,
+-1413,-1478,-1526,-1567,-1607,-1650,-1704,-1779,-1872,-1966,-2050,-2127,-2203,-2275,-2343,-2414,-2493,-2565,-2607,-2619,-2625,
+-2646,-2672,-2689,-2709,-2760,-2853,-2967,-3075,-3169,-3260,-3359,-3477,-3623,-3797,-3991,-4195,-4401,-4594,-4750,-4857,-4927,
+-4987,-5041,-5079,-5095,-5103,-5123,-5162,-5213,-5260,-5282,-5265,-5217,-5164,-5122,-5093,-5071,-5061,-5067,-5089,-5124,-5173,
+-5231,-5285,-5332,-5388,-5468,-5563,-5653,-5735,-5820,-5914,-6005,-6095,-6199,-6323,-6447,-6552,-6644,-6738,-6835,-6925,-7008,
+-7091,-7175,-7256,-7339,-7429,-7526,-7620,-7704,-7783,-7860,-7934,-8010,-8097,-8191,-8278,-8351,-8418,-8488,-8562,-8637,-8717,
+-8800,-8875,-8938,-9000,-9069,-9138,-9196,-9246,-9302,-9360,-9407,-9440,-9470,-9496,-9507,-9504,-9511,-9541,-9585,-9629,-9678,
+-9739,-9802,-9845,-9868,-9884,-9892,-9862,-9772,-9650,-9557,-9531,-9556,-9586,-9600,-9609,-9628,-9644,-9641,-9624,-9616,-9624,
+-9635,-9639,-9643,-9649,-9638,-9603,-9568,-9576,-9638,-9719,-9774,-9785,-9762,-9719,-9662,-9592,-9514,-9438,-9371,-9304,-9217,
+-9106,-8986,-8876,-8780,-8693,-8612,-8533,-8440,-8314,-8157,-7995,-7850,-7725,-7609,-7492,-7364,-7220,-7057,-6881,-6706,-6550,
+-6423,-6320,-6233,-6168,-6144,-6160,-6173,-6141,-6072,-6006,-5968,-5958,-5988,-6069,-6146,-6104,-5880,-5541,-5210,-4943,-4726,
+-4554,-4450,-4401,-4335,-4193,-3999,-3816,-3673,-3556,-3440,-3319,-3195,-3080,-2981,-2893,-2796,-2683,-2571,-2483,-2417,-2355,
+-2294,-2240,-2190,-2131,-2061,-1988,-1915,-1835,-1747,-1658,-1572,-1483,-1383,-1273,-1165,-1073,-996,-924,-844,-759,-682,
+-612,-534,-441,-342,-250,-157,-49,67,181,292,411,535,652,762,873,976,1052,1101,1157,1242,1347,
+1453,1563,1689,1826,1958,2080,2197,2306,2401,2485,2573,2674,2786,2895,2995,3091,3193,3305,3417,3520,3618,
+3722,3821,3889,3931,3996,4125,4298,4468,4622,4782,4935,5018,4997,4933,4929,5026,5181,5330,5453,5548,5594,
+5565,5467,5350,5287,5324,5466,5681,5918,6133,6291,6373,6389,6397,6461,6574,6638,6579,6477,6502,6669,6735,
+6432,5799,5206,5008,5218,5572,5837,5977,6063,6130,6164,6169,6165,6153,6127,6098,6085,6075,6049,6015,6003,
+6014,6019,6007,6004,6030,6067,6087,6082,6063,6046,6052,6097,6165,6201,6167,6095,6056,6077,6111,6104,6061,
+6037,6074,6153,6200,6145,5981,5800,5725,5806,5967,6081,6095,6057,6037,6053,6075,6078,6059,6026,5990,5961,
+5935,5885,5794,5677,5571,5491,5429,5389,5382,5406,5437,5462,5497,5547,5584,5584,5567,5554,5518,5415,5273,
+5190,5238,5363,5439,5381,5202,4990,4850,4849,4973,5116,5150,5028,4821,4638,4548,4556,4631,4725,4780,4759,
+4673,4568,4475,4392,4316,4257,4228,4224,4231,4246,4265,4275,4262,4231,4199,4174,4147,4119,4095,4072,4033,
+3973,3911,3863,3819,3770,3722,3685,3642,3574,3502,3473,3493,3510,3478,3409,3356,3341,3331,3291,3224,3162,
+3127,3111,3093,3064,3033,2998,2956,2912,2899,2936,2994,3012,2964,2891,2863,2911,3006,3083,3074,2958,2773,
+2603,2502,2469,2484,2556,2684,2806,2827,2723,2581,2492,2455,2403,2307,2214,2171,2173,2179,2165,2142,2121,
+2099,2069,2031,1996,1969,1949,1927,1905,1885,1862,1819,1763,1723,1729,1766,1787,1758,1690,1613,1551,1512,
+1488,1464,1428,1383,1349,1326,1301,1268,1242,1236,1242,1244,1241,1240,1239,1228,1205,1176,1143,1108,1076,
+1057,1047,1035,1019,1008,1004,999,995,997,1003,1000,990,990,1009,1028,1033,1038,1059,1093,1118,1125,
+1125,1128,1136,1147,1162,1175,1180,1181,1187,1200,1214,1229,1251,1275,1291,1304,1327,1347,1341,1308,1290,
+1323,1387,1433,1429,1389,1350,1343,1372,1410,1413,1368,1313,1292,1298,1289,1254,1228,1239,1262,1250,1200,
+1155,1147,1169,1185,1176,1148,1126,1125,1133,1119,1068,998,945,918,900,875,845,817,791,763,735,
+715,700,685,667,648,627,605,582,559,535,509,486,468,450,429,400,367,332,298,267,241,
+216,192,168,143,118,94,71,51,28,0,-31,-58,-82,-107,-138,-174,-208,-239,-268,-296,-326,
+-358,-391,-424,-459,-498,-539,-577,-614,-653,-694,-737,-778,-819,-860,-899,-939,-982,-1032,-1082,-1126,-1167,
+-1208,-1251,-1295,-1337,-1379,-1424,-1469,-1512,-1550,-1586,-1625,-1668,-1716,-1767,-1820,-1873,-1923,-1970,-2017,-2068,-2123,
+-2176,-2220,-2260,-2302,-2349,-2398,-2444,-2486,-2525,-2564,-2601,-2637,-2671,-2703,-2734,-2767,-2804,-2842,-2877,-2913,-2954,
+-2998,-3039,-3072,-3102,-3131,-3162,-3194,-3231,-3268,-3303,-3332,-3359,-3388,-3416,-3445,-3474,-3504,-3528,-3548,-3568,-3592,
+-3617,-3639,-3658,-3677,-3694,-3709,-3722,-3737,-3752,-3764,-3775,-3786,-3796,-3798,-3794,-3791,-3791,-3791,-3790,-3787,-3785,
+-3779,-3770,-3762,-3755,-3744,-3729,-3715,-3703,-3688,-3666,-3642,-3624,-3607,-3585,-3557,-3529,-3503,-3474,-3442,-3411,-3381,
+-3351,-3317,-3282,-3248,-3212,-3168,-3118,-3068,-3025,-2989,-2954,-2916,-2875,-2835,-2794,-2750,-2702,-2655,-2610,-2565,-2518,
+-2473,-2433,-2395,-2353,-2307,-2262,-2217,-2170,-2124,-2082,-2041,-1995,-1944,-1895,-1851,-1809,-1766,-1723,-1682,-1641,-1598,
+-1557,-1518,-1479,-1437,-1396,-1356,-1314,-1268,-1222,-1182,-1149,-1119,-1090,-1063,-1035,-1006,-975,-940,-901,-858,-820,
+-787,-751,-708,-665,-629,-600,-567,-530,-496,-468,-439,-406,-375,-348,-321,-288,-253,-223,-193,-161,-129,
+-100,-73,-46,-20,1,26,61,105,147,180,207,234,266,303,347,395,435,464,495,541,588,
+608,592,566,565,599,653,700,727,746,797,924,1118,1314,1440,1478,1461,1412,1330,1215,1086,964,
+854,773,753,806,897,986,1070,1165,1258,1310,1300,1238,1127,948,693,396,126,-49,-99,-43,48,
+104,104,63,-9,-126,-269,-382,-418,-382,-302,-199,-112,-123,-290,-566,-835,-1033,-1186,-1313,-1352,-1223,
+-955,-682,-540,-575,-744,-966,-1157,-1262,-1286,-1278,-1284,-1310,-1342,-1381,-1439,-1514,-1588,-1650,-1713,-1794,-1894,
+-2008,-2133,-2278,-2441,-2611,-2780,-2951,-3120,-3276,-3413,-3534,-3643,-3729,-3785,-3812,-3819,-3808,-3774,-3727,-3679,-3633,
+-3581,-3526,-3494,-3506,-3565,-3658,-3775,-3899,-3997,-4041,-4039,-4032,-4048,-4083,-4121,-4163,-4217,-4281,-4339,-4386,-4428,
+-4462,-4471,-4438,-4381,-4344,-4353,-4393,-4428,-4434,-4420,-4407,-4406,-4412,-4412,-4402,-4383,-4364,-4348,-4332,-4310,-4283,
+-4255,-4226,-4192,-4153,-4112,-4073,-4029,-3981,-3930,-3881,-3829,-3774,-3716,-3662,-3611,-3557,-3500,-3440,-3377,-3310,-3241,
+-3172,-3100,-3020,-2931,-2840,-2753,-2670,-2587,-2505,-2426,-2349,-2266,-2173,-2077,-1993,-1921,-1849,-1771,-1698,-1642,-1602,
+-1558,-1504,-1446,-1391,-1338,-1282,-1224,-1170,-1119,-1069,-1017,-967,-915,-861,-810,-767,-725,-679,-630,-584,-544,
+-503,-461,-420,-377,-328,-273,-218,-165,-110,-59,-16,19,58,104,151,195,235,277,321,368,419,
+471,518,562,611,665,713,753,792,839,887,929,971,1019,1069,1110,1146,1186,1227,1263,1294,1326,
+1355,1375,1396,1438,1495,1542,1570,1610,1685,1773,1830,1845,1850,1871,1893,1889,1858,1828,1826,1856,1910,
+1977,2039,2087,2129,2192,2289,2401,2496,2563,2619,2684,2760,2836,2913,2997,3086,3157,3192,3197,3200,3217,
+3234,3217,3151,3063,3005,3013,3077,3160,3231,3282,3320,3349,3370,3387,3403,3420,3434,3445,3449,3433,3385,
+3308,3222,3146,3086,3034,2986,2944,2913,2888,2864,2842,2828,2819,2799,2763,2722,2697,2694,2700,2699,2687,
+2667,2636,2595,2554,2519,2492,2473,2466,2475,2482,2459,2397,2427,2361,2324,2327,2357,2401,2454,2499,2519,
+2511,2493,2485,2485,2480,2465,2446,2435,2434,2429,2410,2376,2345,2342,2381,2450,2515,2543,2531,2501,2468,
+2429,2373,2312,2276,2276,2287,2275,2225,2158,2100,2063,2033,1994,1946,1910,1902,1907,1897,1857,1805,1758,
+1711,1648,1572,1496,1429,1370,1318,1279,1247,1203,1138,1059,977,891,794,695,611,550,505,463,415,
+357,286,208,134,70,17,-29,-65,-86,-99,-112,-130,-145,-148,-142,-134,-128,-123,-112,-92,-71,
+-63,-84,-129,-181,-224,-258,-285,-305,-317,-331,-358,-397,-437,-473,-511,-549,-575,-583,-585,-595,-613,
+-636,-678,-747,-821,-862,-858,-828,-796,-771,-759,-771,-807,-850,-886,-919,-951,-974,-989,-1006,-1013,-976,
+-884,-779,-698,-621,-512,-404,-377,-460,-583,-664,-695,-711,-720,-709,-687,-683,-697,-703,-699,-712,-756,
+-813,-880,-979,-1111,-1225,-1267,-1250,-1228,-1232,-1254,-1285,-1337,-1417,-1505,-1575,-1621,-1654,-1679,-1705,-1749,-1824,
+-1924,-2026,-2119,-2202,-2278,-2343,-2400,-2464,-2539,-2609,-2656,-2684,-2710,-2744,-2775,-2794,-2815,-2862,-2944,-3047,-3152,
+-3249,-3342,-3446,-3580,-3753,-3957,-4171,-4381,-4573,-4733,-4851,-4933,-4999,-5059,-5105,-5128,-5141,-5159,-5184,-5211,-5244,
+-5285,-5315,-5302,-5238,-5152,-5082,-5051,-5058,-5089,-5123,-5147,-5167,-5202,-5257,-5315,-5358,-5403,-5469,-5558,-5649,-5735,
+-5823,-5913,-5998,-6085,-6192,-6322,-6450,-6555,-6646,-6742,-6843,-6936,-7022,-7108,-7196,-7281,-7366,-7460,-7560,-7654,-7737,
+-7814,-7889,-7963,-8041,-8131,-8227,-8311,-8377,-8439,-8509,-8586,-8666,-8751,-8836,-8909,-8969,-9032,-9104,-9174,-9229,-9277,
+-9332,-9391,-9438,-9472,-9507,-9537,-9549,-9545,-9548,-9574,-9613,-9656,-9708,-9772,-9831,-9869,-9892,-9915,-9926,-9894,-9807,
+-9697,-9614,-9584,-9598,-9624,-9642,-9650,-9658,-9670,-9678,-9680,-9680,-9678,-9669,-9651,-9636,-9626,-9606,-9563,-9514,-9500,
+-9540,-9618,-9698,-9748,-9754,-9719,-9657,-9585,-9512,-9440,-9371,-9300,-9215,-9108,-8990,-8878,-8779,-8689,-8604,-8525,-8438,
+-8319,-8159,-7985,-7831,-7706,-7594,-7478,-7344,-7191,-7021,-6843,-6676,-6533,-6416,-6316,-6225,-6152,-6115,-6114,-6118,-6093,
+-6038,-5975,-5927,-5912,-5950,-6032,-6086,-6011,-5774,-5454,-5148,-4891,-4671,-4499,-4401,-4352,-4270,-4109,-3907,-3732,-3606,
+-3503,-3397,-3279,-3154,-3033,-2929,-2839,-2743,-2627,-2507,-2402,-2317,-2246,-2190,-2152,-2116,-2062,-1989,-1911,-1839,-1768,
+-1686,-1597,-1505,-1411,-1314,-1215,-1115,-1022,-940,-863,-782,-693,-609,-536,-465,-382,-290,-195,-91,26,152,
+271,383,499,615,723,825,931,1035,1113,1164,1219,1306,1416,1530,1645,1771,1904,2031,2148,2261,2367,
+2460,2544,2634,2742,2863,2979,3080,3171,3267,3371,3471,3558,3643,3742,3845,3924,3982,4070,4226,4429,4621,
+4770,4883,4956,4968,4927,4899,4955,5102,5281,5426,5515,5555,5557,5526,5468,5395,5329,5294,5328,5468,5723,
+6035,6295,6409,6392,6368,6459,6648,6787,6766,6653,6627,6741,6801,6550,5971,5363,5072,5191,5526,5834,6018,
+6112,6171,6208,6224,6223,6206,6177,6149,6133,6120,6099,6075,6066,6073,6081,6085,6099,6128,6156,6164,6152,
+6131,6112,6116,6159,6218,6233,6171,6082,6053,6104,6165,6162,6113,6103,6171,6253,6238,6082,5860,5713,5735,
+5892,6062,6137,6111,6058,6042,6066,6090,6094,6084,6077,6074,6068,6045,5993,5914,5825,5735,5640,5547,5483,
+5472,5494,5513,5523,5552,5599,5626,5614,5600,5611,5606,5530,5407,5329,5345,5408,5448,5430,5350,5211,5070,
+5046,5207,5450,5562,5418,5101,4805,4667,4705,4857,5029,5118,5068,4909,4727,4581,4470,4380,4315,4284,4277,
+4282,4297,4323,4340,4325,4288,4255,4235,4216,4191,4169,4144,4097,4028,3960,3911,3870,3825,3780,3743,3694,
+3617,3535,3496,3505,3515,3485,3436,3410,3410,3392,3332,3263,3231,3237,3234,3181,3098,3033,3001,2975,2933,
+2907,2940,3012,3052,3013,2923,2856,2863,2938,3031,3065,2990,2829,2662,2550,2487,2459,2490,2602,2726,2757,
+2679,2597,2599,2638,2598,2452,2286,2192,2176,2182,2176,2161,2143,2117,2081,2041,2005,1975,1949,1930,1919,
+1909,1881,1824,1757,1723,1740,1780,1794,1762,1701,1638,1584,1543,1514,1489,1453,1409,1372,1350,1333,1309,
+1286,1275,1274,1273,1269,1267,1264,1250,1223,1189,1154,1118,1085,1063,1049,1037,1024,1015,1006,993,983,
+985,993,994,989,994,1015,1036,1045,1051,1067,1090,1106,1113,1114,1113,1110,1113,1126,1143,1155,1164,
+1177,1194,1209,1227,1253,1282,1302,1316,1338,1362,1366,1343,1314,1305,1314,1331,1348,1358,1356,1344,1344,
+1365,1383,1374,1343,1318,1306,1289,1265,1257,1273,1284,1256,1201,1160,1155,1172,1182,1173,1152,1136,1136,
+1140,1124,1080,1025,985,963,942,913,882,858,835,808,780,757,740,721,698,673,648,626,607,
+589,568,543,521,504,488,467,439,407,372,337,304,275,249,223,196,170,146,123,101,81,
+59,32,3,-24,-50,-78,-109,-142,-177,-210,-241,-270,-301,-333,-365,-398,-432,-472,-513,-552,-588,
+-626,-669,-713,-755,-797,-838,-878,-919,-963,-1011,-1059,-1103,-1145,-1188,-1232,-1273,-1310,-1350,-1395,-1440,-1480,
+-1515,-1549,-1589,-1634,-1682,-1732,-1782,-1832,-1881,-1929,-1977,-2028,-2081,-2134,-2181,-2224,-2267,-2314,-2362,-2408,-2450,
+-2492,-2533,-2572,-2606,-2638,-2670,-2701,-2734,-2767,-2801,-2834,-2869,-2907,-2948,-2989,-3026,-3059,-3089,-3119,-3151,-3186,
+-3224,-3259,-3290,-3319,-3347,-3374,-3403,-3433,-3461,-3484,-3503,-3522,-3546,-3572,-3593,-3612,-3632,-3653,-3670,-3682,-3694,
+-3705,-3714,-3723,-3734,-3743,-3746,-3744,-3742,-3742,-3742,-3739,-3737,-3735,-3728,-3718,-3710,-3704,-3696,-3682,-3667,-3654,
+-3640,-3621,-3602,-3585,-3568,-3544,-3516,-3491,-3468,-3441,-3408,-3377,-3350,-3324,-3296,-3264,-3229,-3191,-3149,-3103,-3056,
+-3011,-2971,-2935,-2897,-2857,-2817,-2778,-2737,-2693,-2646,-2599,-2554,-2510,-2466,-2426,-2387,-2346,-2304,-2261,-2216,-2168,
+-2122,-2080,-2039,-1992,-1941,-1892,-1848,-1807,-1764,-1722,-1682,-1641,-1599,-1559,-1522,-1484,-1443,-1400,-1356,-1311,-1263,
+-1220,-1183,-1151,-1120,-1090,-1062,-1036,-1009,-979,-943,-899,-855,-817,-786,-751,-710,-670,-637,-608,-574,-539,
+-508,-481,-451,-415,-380,-348,-319,-291,-264,-238,-208,-173,-137,-104,-74,-45,-21,1,29,64,100,
+131,163,200,238,267,292,330,385,440,477,505,542,588,625,637,632,627,631,644,663,681,
+701,749,853,1009,1172,1306,1407,1487,1527,1501,1420,1326,1245,1170,1102,1072,1094,1145,1193,1235,1287,
+1349,1405,1448,1465,1417,1260,998,689,410,221,148,172,227,250,223,160,59,-82,-223,-293,-280,
+-230,-177,-102,-22,-30,-201,-485,-761,-969,-1121,-1188,-1081,-788,-459,-297,-373,-600,-847,-1040,-1154,-1188,
+-1170,-1152,-1170,-1218,-1269,-1316,-1368,-1427,-1489,-1555,-1634,-1730,-1832,-1932,-2036,-2158,-2303,-2460,-2619,-2774,-2918,
+-3044,-3150,-3244,-3332,-3407,-3462,-3499,-3521,-3522,-3497,-3456,-3419,-3392,-3366,-3338,-3322,-3334,-3378,-3454,-3569,-3715,
+-3858,-3954,-3991,-3994,-3995,-4005,-4022,-4051,-4100,-4165,-4228,-4279,-4325,-4368,-4384,-4350,-4278,-4218,-4217,-4272,-4339,
+-4380,-4391,-4389,-4388,-4388,-4385,-4375,-4358,-4335,-4313,-4296,-4281,-4262,-4240,-4216,-4188,-4154,-4115,-4074,-4030,-3981,
+-3929,-3878,-3823,-3762,-3701,-3644,-3594,-3544,-3490,-3435,-3377,-3316,-3253,-3190,-3123,-3045,-2955,-2862,-2777,-2699,-2618,
+-2534,-2452,-2373,-2290,-2202,-2114,-2035,-1959,-1876,-1786,-1703,-1640,-1593,-1549,-1498,-1445,-1393,-1342,-1287,-1232,-1179,
+-1127,-1074,-1022,-969,-915,-859,-806,-759,-712,-660,-608,-561,-519,-477,-436,-398,-359,-313,-260,-209,-158,
+-105,-52,-6,30,69,117,168,213,251,288,327,372,423,477,526,572,622,676,723,760,795,
+839,887,931,974,1021,1067,1107,1143,1183,1226,1262,1291,1322,1353,1378,1406,1451,1507,1550,1574,1612,
+1688,1778,1838,1860,1881,1926,1972,1977,1936,1882,1858,1879,1939,2014,2072,2094,2096,2123,2200,2305,2391,
+2439,2469,2514,2581,2660,2750,2861,2993,3121,3206,3234,3230,3226,3229,3206,3135,3038,2973,2982,3053,3141,
+3214,3268,3311,3346,3376,3406,3437,3462,3479,3493,3502,3490,3440,3355,3259,3175,3108,3050,2997,2953,2926,
+2907,2889,2868,2851,2836,2813,2772,2727,2700,2697,2705,2711,2709,2694,2662,2615,2569,2536,2511,2489,2479,
+2490,2503,2484,2427,2452,2404,2386,2394,2410,2439,2486,2534,2553,2536,2510,2500,2504,2504,2492,2479,2479,
+2486,2479,2444,2396,2363,2361,2378,2390,2390,2395,2420,2457,2477,2453,2386,2302,2234,2195,2174,2153,2124,
+2094,2073,2061,2044,2006,1956,1923,1929,1955,1959,1918,1852,1793,1745,1686,1605,1516,1435,1367,1311,1270,
+1238,1197,1133,1046,948,846,741,639,553,492,452,419,380,325,257,188,130,82,34,-13,-51,
+-74,-87,-101,-119,-138,-151,-158,-158,-149,-135,-117,-98,-84,-89,-118,-164,-206,-239,-272,-310,-345,
+-368,-386,-417,-460,-499,-526,-548,-572,-595,-613,-631,-648,-657,-664,-693,-760,-841,-896,-909,-896,-872,
+-846,-823,-819,-834,-861,-896,-945,-997,-1031,-1049,-1070,-1090,-1074,-1011,-936,-878,-801,-665,-516,-456,-517,
+-619,-676,-687,-700,-730,-748,-746,-735,-722,-708,-716,-774,-865,-939,-986,-1045,-1142,-1240,-1291,-1299,-1303,
+-1320,-1341,-1368,-1425,-1517,-1612,-1680,-1717,-1735,-1746,-1760,-1801,-1879,-1978,-2074,-2159,-2241,-2319,-2387,-2447,-2511,
+-2583,-2646,-2688,-2718,-2755,-2799,-2839,-2868,-2902,-2956,-3036,-3134,-3235,-3330,-3421,-3532,-3689,-3897,-4130,-4355,-4552,
+-4716,-4845,-4938,-5010,-5077,-5134,-5164,-5173,-5185,-5213,-5240,-5251,-5262,-5296,-5336,-5335,-5266,-5163,-5083,-5060,-5093,
+-5151,-5198,-5214,-5214,-5234,-5286,-5345,-5383,-5414,-5468,-5553,-5647,-5736,-5823,-5912,-5998,-6086,-6191,-6316,-6440,-6545,
+-6639,-6740,-6845,-6943,-7032,-7122,-7213,-7301,-7389,-7485,-7587,-7681,-7764,-7842,-7919,-7995,-8076,-8167,-8260,-8338,-8399,
+-8459,-8530,-8610,-8693,-8780,-8866,-8940,-9001,-9064,-9137,-9206,-9259,-9307,-9364,-9423,-9468,-9502,-9538,-9570,-9580,-9573,
+-9574,-9597,-9634,-9678,-9736,-9802,-9856,-9888,-9911,-9938,-9949,-9920,-9851,-9772,-9708,-9667,-9650,-9657,-9677,-9697,-9713,
+-9729,-9747,-9764,-9774,-9769,-9741,-9694,-9648,-9614,-9585,-9540,-9483,-9447,-9461,-9525,-9614,-9692,-9728,-9708,-9649,-9578,
+-9509,-9440,-9366,-9290,-9208,-9111,-8999,-8886,-8784,-8691,-8604,-8524,-8438,-8320,-8158,-7978,-7819,-7695,-7587,-7468,-7327,
+-7164,-6988,-6814,-6659,-6531,-6422,-6319,-6222,-6142,-6093,-6073,-6063,-6041,-5997,-5940,-5892,-5886,-5941,-6025,-6043,-5914,
+-5651,-5347,-5076,-4842,-4629,-4463,-4371,-4315,-4212,-4029,-3824,-3661,-3550,-3454,-3348,-3227,-3099,-2975,-2869,-2780,-2686,
+-2572,-2448,-2336,-2240,-2159,-2101,-2068,-2042,-1994,-1921,-1841,-1768,-1699,-1625,-1541,-1448,-1351,-1256,-1166,-1074,-979,
+-888,-805,-720,-629,-541,-468,-403,-331,-240,-136,-20,106,234,351,457,562,668,771,875,985,1090,
+1170,1226,1290,1384,1501,1618,1727,1840,1960,2083,2202,2313,2417,2513,2608,2711,2826,2944,3056,3154,3244,
+3338,3438,3532,3607,3674,3752,3845,3938,4030,4154,4335,4553,4753,4887,4942,4929,4884,4861,4908,5031,5192,
+5340,5442,5492,5509,5515,5519,5508,5464,5393,5327,5323,5438,5702,6057,6364,6501,6480,6453,6552,6751,6900,
+6895,6793,6737,6781,6799,6594,6112,5540,5178,5188,5477,5819,6051,6161,6214,6253,6278,6279,6262,6237,6211,
+6187,6167,6151,6138,6130,6130,6141,6162,6189,6210,6217,6215,6211,6201,6187,6190,6232,6289,6296,6225,6133,
+6109,6166,6220,6206,6164,6186,6277,6321,6208,5968,5755,5703,5822,6007,6142,6178,6145,6106,6098,6110,6116,
+6105,6097,6108,6130,6142,6124,6082,6030,5975,5907,5811,5705,5632,5615,5626,5629,5627,5654,5702,5721,5693,
+5660,5660,5666,5628,5558,5507,5493,5492,5505,5549,5576,5496,5318,5217,5345,5620,5772,5625,5268,4939,4804,
+4876,5075,5283,5381,5305,5095,4858,4670,4540,4452,4403,4390,4390,4387,4391,4407,4413,4386,4341,4311,4299,
+4287,4262,4234,4201,4150,4082,4020,3979,3945,3900,3852,3807,3753,3680,3614,3592,3610,3615,3578,3526,3499,
+3493,3464,3394,3323,3296,3303,3286,3208,3101,3030,3010,2994,2946,2896,2899,2954,2996,2973,2894,2809,2767,
+2794,2874,2944,2929,2825,2696,2601,2536,2487,2481,2536,2597,2586,2525,2532,2652,2774,2752,2572,2361,2234,
+2197,2196,2194,2185,2167,2136,2097,2061,2028,1995,1965,1950,1947,1936,1895,1821,1750,1722,1742,1770,1762,
+1717,1667,1631,1602,1570,1537,1506,1473,1435,1402,1382,1369,1351,1332,1319,1312,1305,1297,1293,1288,1272,
+1243,1207,1171,1138,1109,1085,1062,1040,1024,1015,1008,994,981,980,989,996,999,1007,1025,1041,1052,
+1062,1077,1093,1102,1105,1106,1104,1101,1106,1125,1146,1163,1175,1190,1201,1208,1219,1241,1267,1285,1300,
+1322,1347,1360,1355,1339,1316,1288,1277,1310,1373,1413,1396,1350,1329,1347,1373,1380,1371,1351,1322,1293,
+1284,1291,1293,1271,1240,1220,1215,1208,1190,1166,1143,1126,1118,1113,1099,1072,1042,1023,1007,982,947,
+916,895,876,852,826,803,783,761,735,707,680,656,639,625,606,583,560,542,523,500,473,
+445,416,382,349,318,291,263,233,204,178,154,132,110,87,63,37,10,-17,-46,-76,-108,
+-142,-177,-212,-245,-278,-310,-341,-372,-406,-446,-487,-525,-560,-597,-640,-683,-727,-770,-813,-855,-897,
+-940,-986,-1032,-1075,-1119,-1165,-1209,-1247,-1280,-1317,-1361,-1406,-1445,-1479,-1512,-1551,-1596,-1645,-1696,-1747,-1796,
+-1843,-1891,-1938,-1987,-2037,-2089,-2140,-2186,-2230,-2275,-2320,-2365,-2409,-2455,-2501,-2541,-2575,-2605,-2637,-2671,-2703,
+-2734,-2764,-2796,-2829,-2863,-2902,-2942,-2981,-3017,-3047,-3076,-3106,-3139,-3173,-3208,-3241,-3272,-3301,-3328,-3356,-3388,
+-3418,-3441,-3459,-3477,-3501,-3526,-3547,-3566,-3587,-3608,-3624,-3636,-3646,-3655,-3664,-3672,-3682,-3690,-3693,-3692,-3692,
+-3693,-3691,-3688,-3686,-3684,-3676,-3665,-3657,-3653,-3649,-3639,-3627,-3614,-3599,-3582,-3565,-3550,-3532,-3507,-3480,-3457,
+-3435,-3409,-3377,-3346,-3320,-3297,-3273,-3243,-3207,-3167,-3126,-3087,-3046,-3004,-2961,-2925,-2891,-2856,-2818,-2779,-2738,
+-2693,-2644,-2596,-2550,-2507,-2464,-2422,-2379,-2337,-2297,-2257,-2215,-2169,-2123,-2080,-2039,-1993,-1943,-1894,-1849,-1807,
+-1766,-1726,-1685,-1644,-1601,-1560,-1522,-1483,-1441,-1396,-1351,-1305,-1260,-1220,-1186,-1155,-1122,-1090,-1060,-1033,-1007,
+-977,-941,-898,-854,-816,-784,-752,-715,-680,-649,-617,-582,-546,-516,-490,-460,-428,-395,-362,-328,-297,
+-270,-244,-214,-180,-149,-119,-87,-57,-29,-1,33,71,99,118,142,184,232,267,291,322,370,
+425,470,505,538,574,609,641,670,695,708,714,717,725,743,791,883,1005,1123,1221,1319,1425,
+1506,1526,1494,1457,1438,1417,1382,1347,1327,1313,1296,1285,1293,1321,1372,1451,1527,1530,1412,1197,953,
+727,543,427,391,398,395,352,266,131,-36,-166,-190,-134,-86,-67,-12,86,110,-54,-360,-651,
+-835,-909,-858,-639,-312,-78,-112,-385,-719,-957,-1071,-1102,-1092,-1071,-1068,-1100,-1154,-1209,-1257,-1299,-1344,
+-1398,-1468,-1555,-1648,-1735,-1819,-1910,-2019,-2150,-2294,-2443,-2588,-2718,-2825,-2912,-2989,-3064,-3130,-3180,-3214,-3237,
+-3247,-3238,-3217,-3199,-3191,-3188,-3184,-3187,-3203,-3232,-3281,-3368,-3501,-3654,-3783,-3861,-3897,-3911,-3917,-3922,-3941,
+-3982,-4040,-4098,-4145,-4190,-4236,-4262,-4240,-4170,-4097,-4077,-4121,-4197,-4267,-4318,-4352,-4372,-4380,-4379,-4371,-4355,
+-4327,-4298,-4277,-4263,-4247,-4225,-4204,-4183,-4158,-4124,-4083,-4037,-3986,-3932,-3877,-3820,-3757,-3693,-3632,-3579,-3528,
+-3476,-3423,-3369,-3312,-3254,-3197,-3136,-3063,-2977,-2889,-2810,-2737,-2659,-2576,-2492,-2411,-2328,-2241,-2157,-2076,-1994,
+-1902,-1806,-1720,-1653,-1600,-1549,-1495,-1439,-1385,-1335,-1286,-1239,-1189,-1134,-1077,-1022,-969,-915,-860,-808,-760,
+-709,-653,-599,-552,-508,-463,-417,-377,-337,-292,-242,-194,-148,-98,-44,4,45,87,136,187,233,
+272,309,346,389,438,491,539,583,630,680,724,758,793,838,887,934,979,1026,1071,1108,1142,
+1182,1226,1261,1289,1320,1355,1388,1423,1468,1519,1558,1581,1613,1673,1744,1791,1815,1852,1921,1992,2020,
+1993,1945,1916,1929,1978,2042,2087,2092,2073,2076,2131,2218,2290,2323,2338,2369,2425,2495,2578,2690,2847,
+3027,3176,3256,3276,3277,3275,3246,3161,3044,2963,2965,3037,3125,3196,3247,3290,3332,3375,3419,3457,3484,
+3502,3522,3540,3531,3477,3385,3282,3192,3120,3059,3008,2972,2952,2940,2924,2902,2878,2855,2824,2778,2730,
+2701,2698,2709,2723,2732,2725,2692,2641,2597,2569,2546,2517,2498,2506,2519,2502,2452,2482,2450,2451,2464,
+2468,2480,2517,2562,2579,2560,2534,2526,2529,2525,2511,2501,2508,2519,2510,2470,2421,2397,2401,2405,2378,
+2339,2331,2377,2448,2487,2463,2386,2289,2201,2137,2100,2084,2081,2077,2070,2059,2039,2006,1965,1942,1955,
+1984,1981,1923,1836,1766,1724,1681,1614,1528,1444,1371,1311,1267,1235,1198,1136,1045,939,833,734,640,
+557,491,447,416,383,333,271,213,167,124,74,17,-31,-63,-83,-99,-112,-124,-140,-161,-178,
+-180,-168,-151,-139,-138,-159,-198,-240,-268,-284,-306,-343,-383,-412,-436,-471,-514,-547,-565,-577,-594,
+-615,-639,-664,-686,-696,-701,-726,-783,-852,-905,-934,-947,-947,-928,-901,-882,-880,-891,-920,-973,-1030,
+-1066,-1084,-1112,-1150,-1155,-1109,-1050,-1011,-957,-834,-676,-583,-597,-653,-674,-665,-678,-728,-780,-808,-806,
+-779,-747,-756,-839,-954,-1026,-1041,-1060,-1132,-1234,-1314,-1360,-1392,-1419,-1432,-1452,-1512,-1613,-1714,-1779,-1807,
+-1816,-1819,-1832,-1878,-1959,-2052,-2132,-2204,-2283,-2368,-2446,-2515,-2587,-2657,-2708,-2736,-2759,-2795,-2839,-2880,-2917,
+-2966,-3037,-3128,-3229,-3330,-3421,-3509,-3626,-3804,-4038,-4286,-4503,-4675,-4813,-4924,-5011,-5083,-5147,-5193,-5210,-5211,
+-5227,-5262,-5287,-5285,-5284,-5318,-5365,-5365,-5294,-5191,-5121,-5111,-5151,-5207,-5249,-5260,-5256,-5272,-5320,-5375,-5409,
+-5433,-5482,-5563,-5655,-5740,-5822,-5912,-6005,-6097,-6197,-6312,-6429,-6534,-6633,-6737,-6843,-6944,-7038,-7132,-7227,-7319,
+-7410,-7508,-7610,-7706,-7791,-7872,-7951,-8028,-8108,-8197,-8285,-8358,-8416,-8477,-8553,-8636,-8720,-8805,-8890,-8966,-9029,
+-9094,-9165,-9231,-9283,-9333,-9392,-9450,-9493,-9526,-9562,-9593,-9602,-9594,-9595,-9617,-9654,-9700,-9763,-9830,-9880,-9908,
+-9932,-9962,-9974,-9952,-9910,-9870,-9825,-9764,-9704,-9682,-9706,-9749,-9783,-9806,-9825,-9848,-9869,-9874,-9844,-9775,-9692,
+-9627,-9584,-9538,-9480,-9431,-9420,-9458,-9534,-9619,-9678,-9683,-9636,-9566,-9498,-9432,-9359,-9283,-9207,-9121,-9017,-8902,
+-8794,-8698,-8611,-8529,-8440,-8319,-8156,-7976,-7818,-7697,-7590,-7468,-7319,-7149,-6970,-6801,-6658,-6541,-6433,-6322,-6215,
+-6128,-6066,-6026,-6000,-5979,-5950,-5905,-5863,-5865,-5934,-6017,-6004,-5829,-5540,-5246,-5004,-4793,-4594,-4439,-4350,-4281,
+-4149,-3946,-3740,-3594,-3496,-3402,-3290,-3163,-3032,-2910,-2808,-2722,-2629,-2514,-2390,-2277,-2179,-2093,-2028,-1989,-1961,
+-1917,-1851,-1774,-1700,-1630,-1560,-1483,-1395,-1298,-1204,-1116,-1028,-931,-832,-742,-656,-566,-478,-405,-345,-275,
+-181,-65,60,187,308,417,513,607,705,811,926,1042,1144,1223,1289,1370,1479,1602,1713,1807,1901,
+2010,2133,2257,2366,2461,2558,2667,2788,2905,3013,3115,3213,3308,3404,3499,3585,3648,3695,3747,3822,3926,
+4058,4227,4432,4653,4844,4958,4966,4897,4833,4856,4975,5132,5261,5347,5404,5445,5478,5515,5550,5553,5515,
+5469,5470,5543,5696,5937,6241,6512,6647,6659,6671,6777,6932,7017,6980,6875,6790,6753,6708,6547,6190,5702,
+5304,5212,5445,5806,6081,6209,6263,6308,6341,6343,6326,6309,6288,6258,6227,6211,6206,6199,6192,6203,6234,
+6262,6269,6263,6265,6274,6273,6258,6260,6304,6364,6374,6306,6218,6192,6232,6267,6255,6248,6312,6394,6353,
+6130,5850,5712,5792,5992,6160,6230,6227,6202,6183,6177,6171,6155,6127,6106,6110,6133,6151,6151,6137,6121,
+6098,6048,5963,5863,5787,5753,5745,5742,5755,5803,5866,5886,5841,5771,5729,5716,5705,5692,5681,5657,5622,
+5631,5726,5826,5771,5544,5341,5365,5564,5682,5547,5242,4983,4903,4997,5183,5362,5435,5350,5148,4925,4744,
+4616,4539,4518,4534,4547,4540,4533,4538,4528,4479,4414,4374,4363,4354,4330,4300,4264,4212,4148,4094,4061,
+4029,3984,3932,3881,3823,3757,3710,3709,3736,3736,3687,3619,3574,3546,3502,3426,3349,3306,3289,3254,3177,
+3089,3039,3032,3019,2969,2907,2882,2896,2910,2894,2847,2784,2728,2717,2769,2847,2876,2824,2734,2653,2585,
+2527,2501,2514,2513,2457,2405,2469,2647,2791,2761,2576,2376,2259,2222,2217,2216,2210,2190,2154,2118,2089,
+2060,2022,1989,1975,1975,1957,1903,1822,1755,1735,1752,1764,1736,1680,1635,1618,1611,1589,1554,1517,1486,
+1458,1434,1415,1399,1383,1368,1356,1346,1334,1323,1317,1311,1296,1269,1233,1198,1169,1144,1119,1086,1049,
+1023,1014,1011,1001,988,983,989,999,1009,1021,1035,1046,1055,1067,1082,1092,1094,1094,1096,1100,1107,
+1125,1151,1174,1189,1201,1211,1214,1210,1214,1231,1252,1267,1283,1306,1328,1338,1342,1344,1329,1293,1273,
+1321,1423,1496,1475,1393,1333,1337,1375,1405,1409,1389,1357,1326,1309,1306,1306,1306,1315,1330,1328,1295,
+1245,1201,1172,1152,1136,1122,1109,1094,1079,1068,1051,1021,983,952,931,912,891,870,851,831,807,
+781,753,724,698,678,663,644,621,597,576,555,531,508,487,465,436,403,373,346,317,284,
+252,223,195,167,141,116,92,67,40,12,-16,-44,-75,-107,-143,-179,-215,-249,-281,-312,-342,
+-377,-416,-456,-493,-529,-567,-609,-652,-695,-740,-786,-830,-873,-916,-960,-1003,-1045,-1089,-1136,-1180,-1217,
+-1249,-1285,-1327,-1370,-1409,-1445,-1480,-1516,-1558,-1605,-1658,-1711,-1761,-1809,-1855,-1902,-1947,-1994,-2043,-2095,-2145,
+-2192,-2236,-2279,-2322,-2367,-2416,-2465,-2508,-2543,-2572,-2604,-2638,-2671,-2700,-2729,-2760,-2792,-2825,-2860,-2897,-2934,
+-2968,-2998,-3027,-3056,-3086,-3117,-3150,-3184,-3217,-3247,-3275,-3304,-3336,-3367,-3392,-3411,-3431,-3454,-3479,-3501,-3521,
+-3540,-3558,-3572,-3583,-3592,-3602,-3612,-3622,-3632,-3638,-3640,-3640,-3640,-3640,-3638,-3635,-3634,-3633,-3627,-3617,-3610,
+-3608,-3605,-3599,-3589,-3578,-3564,-3546,-3528,-3514,-3497,-3476,-3451,-3429,-3407,-3381,-3352,-3322,-3295,-3270,-3245,-3216,
+-3179,-3138,-3098,-3065,-3031,-2991,-2948,-2911,-2882,-2852,-2816,-2777,-2735,-2690,-2641,-2594,-2551,-2509,-2467,-2423,-2377,
+-2333,-2293,-2257,-2220,-2177,-2129,-2084,-2043,-2000,-1952,-1903,-1856,-1813,-1772,-1731,-1689,-1645,-1601,-1559,-1519,-1477,
+-1432,-1387,-1343,-1300,-1258,-1221,-1188,-1156,-1123,-1091,-1061,-1031,-1000,-970,-937,-900,-859,-821,-785,-751,-718,
+-688,-659,-627,-592,-559,-527,-497,-466,-439,-414,-385,-350,-313,-281,-250,-216,-185,-159,-134,-105,-74,
+-46,-16,22,65,95,113,135,173,219,259,290,320,357,401,446,489,526,557,586,625,676,
+728,766,788,799,808,823,864,943,1043,1128,1189,1249,1326,1398,1437,1449,1464,1493,1514,1509,1482,
+1439,1383,1329,1298,1295,1312,1361,1448,1534,1545,1454,1311,1173,1035,871,708,601,557,532,486,397,
+250,71,-50,-45,28,57,36,76,206,272,114,-213,-500,-608,-554,-401,-195,-19,-7,-220,-559,
+-849,-997,-1035,-1032,-1025,-1027,-1043,-1073,-1112,-1157,-1205,-1247,-1285,-1329,-1392,-1467,-1539,-1609,-1688,-1785,-1897,
+-2016,-2143,-2275,-2406,-2524,-2622,-2703,-2775,-2842,-2898,-2937,-2961,-2983,-3007,-3027,-3038,-3043,-3048,-3054,-3063,-3077,
+-3097,-3122,-3158,-3221,-3321,-3444,-3563,-3659,-3727,-3773,-3797,-3809,-3825,-3857,-3903,-3951,-3996,-4040,-4086,-4118,-4109,
+-4055,-3988,-3953,-3973,-4033,-4108,-4188,-4266,-4328,-4365,-4380,-4382,-4368,-4338,-4304,-4281,-4265,-4243,-4215,-4192,-4178,
+-4164,-4138,-4100,-4053,-4000,-3942,-3883,-3824,-3761,-3695,-3632,-3573,-3518,-3464,-3410,-3355,-3299,-3241,-3187,-3133,-3068,
+-2992,-2915,-2848,-2784,-2712,-2630,-2546,-2463,-2378,-2289,-2200,-2113,-2023,-1928,-1835,-1755,-1691,-1631,-1568,-1499,-1429,
+-1366,-1312,-1268,-1227,-1180,-1124,-1066,-1012,-961,-908,-854,-803,-755,-703,-648,-594,-548,-504,-453,-400,-352,
+-309,-264,-217,-173,-132,-86,-34,18,66,113,162,211,258,303,347,388,430,474,521,565,604,
+644,688,728,763,800,844,892,937,982,1029,1073,1109,1143,1182,1224,1259,1287,1319,1359,1401,1440,
+1481,1523,1558,1586,1619,1670,1724,1760,1782,1816,1880,1949,1988,1986,1963,1946,1951,1980,2022,2054,2060,
+2049,2054,2097,2166,2223,2250,2265,2297,2349,2404,2459,2542,2689,2893,3097,3239,3306,3329,3334,3302,3209,
+3077,2977,2964,3027,3113,3183,3233,3274,3319,3371,3423,3463,3486,3504,3529,3549,3536,3478,3389,3293,3204,
+3128,3067,3025,3001,2987,2975,2955,2928,2899,2869,2832,2784,2736,2706,2703,2717,2738,2755,2752,2719,2669,
+2631,2612,2589,2553,2526,2530,2544,2527,2482,2530,2500,2506,2520,2519,2519,2544,2579,2591,2575,2558,2556,
+2557,2546,2528,2518,2522,2530,2522,2492,2459,2446,2452,2442,2396,2339,2323,2364,2425,2452,2419,2345,2256,
+2172,2107,2073,2070,2081,2082,2065,2039,2015,1993,1968,1950,1953,1963,1943,1876,1785,1716,1680,1651,1600,
+1529,1454,1385,1324,1274,1235,1195,1132,1043,942,846,762,681,601,529,478,444,413,368,312,259,
+214,168,108,41,-18,-62,-91,-106,-107,-102,-112,-144,-185,-214,-223,-220,-218,-228,-258,-303,-343,
+-365,-373,-385,-409,-438,-464,-493,-529,-564,-585,-595,-606,-625,-645,-664,-686,-709,-726,-742,-770,-814,
+-860,-898,-934,-974,-1001,-1000,-975,-949,-935,-935,-957,-1007,-1062,-1092,-1105,-1139,-1192,-1214,-1175,-1116,-1086,
+-1060,-977,-844,-738,-708,-716,-707,-687,-698,-750,-811,-851,-857,-832,-803,-822,-913,-1019,-1064,-1044,-1039,
+-1109,-1226,-1331,-1403,-1457,-1498,-1521,-1550,-1618,-1725,-1826,-1887,-1911,-1918,-1925,-1944,-1993,-2070,-2149,-2216,-2281,
+-2363,-2457,-2545,-2623,-2696,-2758,-2795,-2809,-2824,-2857,-2898,-2933,-2972,-3033,-3120,-3222,-3327,-3426,-3516,-3609,-3738,
+-3932,-4177,-4419,-4613,-4759,-4882,-4993,-5085,-5154,-5203,-5231,-5239,-5244,-5269,-5307,-5329,-5328,-5336,-5378,-5419,-5400,
+-5314,-5216,-5166,-5171,-5204,-5239,-5268,-5285,-5296,-5318,-5359,-5406,-5438,-5465,-5513,-5589,-5671,-5747,-5824,-5915,-6015,
+-6112,-6210,-6315,-6424,-6529,-6631,-6734,-6840,-6941,-7039,-7139,-7240,-7336,-7430,-7529,-7631,-7729,-7818,-7902,-7980,-8053,
+-8131,-8218,-8304,-8376,-8435,-8500,-8581,-8666,-8747,-8827,-8909,-8983,-9049,-9116,-9188,-9252,-9303,-9355,-9416,-9473,-9512,
+-9543,-9578,-9609,-9618,-9613,-9617,-9639,-9674,-9722,-9787,-9854,-9900,-9925,-9953,-9986,-9999,-9985,-9968,-9961,-9933,-9856,
+-9759,-9708,-9727,-9784,-9835,-9867,-9888,-9912,-9945,-9970,-9949,-9865,-9748,-9652,-9594,-9546,-9489,-9438,-9414,-9424,-9465,
+-9534,-9608,-9643,-9616,-9549,-9480,-9418,-9355,-9286,-9217,-9140,-9044,-8927,-8810,-8707,-8620,-8537,-8442,-8316,-8153,-7978,
+-7826,-7708,-7600,-7475,-7320,-7144,-6964,-6799,-6663,-6549,-6439,-6319,-6202,-6102,-6024,-5962,-5921,-5903,-5894,-5869,-5835,
+-5839,-5912,-5996,-5975,-5785,-5483,-5186,-4949,-4746,-4558,-4411,-4320,-4229,-4070,-3853,-3656,-3529,-3445,-3352,-3233,-3100,
+-2968,-2851,-2757,-2676,-2583,-2462,-2330,-2213,-2114,-2027,-1955,-1905,-1868,-1827,-1771,-1706,-1637,-1565,-1492,-1417,-1334,
+-1240,-1144,-1055,-966,-870,-770,-677,-591,-502,-413,-337,-272,-199,-99,22,146,263,370,467,555,641,
+738,854,980,1101,1197,1273,1350,1448,1569,1692,1795,1880,1965,2072,2198,2324,2424,2505,2595,2713,2845,
+2963,3063,3162,3270,3377,3469,3546,3609,3656,3691,3733,3802,3916,4081,4288,4515,4732,4907,5001,4989,4909,
+4860,4923,5074,5217,5294,5330,5374,5434,5498,5558,5595,5581,5541,5562,5705,5926,6137,6320,6504,6677,6789,
+6844,6922,7050,7154,7152,7058,6937,6815,6690,6572,6444,6213,5827,5420,5251,5434,5807,6114,6258,6317,6371,
+6412,6411,6390,6379,6368,6335,6294,6276,6278,6276,6271,6283,6312,6332,6328,6320,6328,6338,6329,6310,6320,
+6370,6418,6406,6326,6242,6221,6260,6304,6330,6382,6473,6508,6361,6051,5780,5744,5935,6169,6291,6300,6275,
+6263,6256,6244,6228,6206,6170,6130,6108,6108,6119,6133,6150,6165,6162,6128,6065,5987,5910,5851,5820,5824,
+5867,5943,6017,6038,5986,5895,5818,5780,5777,5794,5808,5791,5755,5773,5885,5998,5947,5702,5437,5341,5399,
+5429,5311,5110,4966,4952,5047,5189,5305,5327,5239,5090,4944,4820,4714,4647,4643,4677,4696,4691,4693,4713,
+4704,4632,4529,4455,4427,4415,4396,4371,4338,4287,4223,4170,4138,4108,4067,4018,3967,3905,3837,3792,3791,
+3809,3798,3742,3670,3613,3568,3509,3431,3353,3296,3257,3214,3156,3102,3073,3063,3041,2995,2945,2913,2893,
+2871,2847,2831,2809,2770,2740,2756,2813,2855,2845,2794,2727,2648,2574,2538,2540,2522,2454,2402,2461,2607,
+2697,2636,2474,2327,2254,2230,2226,2229,2231,2213,2179,2148,2124,2091,2044,2007,1996,1996,1975,1919,1845,
+1785,1763,1769,1770,1737,1681,1638,1624,1622,1606,1571,1532,1501,1479,1462,1444,1425,1406,1392,1381,1368,
+1353,1341,1335,1332,1322,1299,1269,1237,1211,1190,1163,1121,1072,1035,1021,1019,1012,999,990,991,999,
+1012,1026,1039,1047,1057,1071,1085,1090,1086,1084,1087,1096,1114,1142,1172,1194,1208,1221,1228,1224,1215,
+1218,1236,1255,1265,1279,1302,1319,1320,1321,1333,1333,1306,1290,1342,1449,1524,1505,1424,1364,1363,1394,
+1415,1414,1397,1373,1353,1340,1331,1325,1334,1368,1407,1413,1370,1308,1262,1236,1216,1195,1176,1162,1148,
+1133,1117,1094,1061,1024,993,970,950,930,913,898,878,853,828,802,772,742,718,699,679,654,
+629,608,587,564,545,529,512,487,456,428,402,374,342,309,276,242,208,176,147,120,92,
+64,37,11,-15,-44,-75,-108,-142,-176,-210,-243,-275,-307,-342,-381,-421,-459,-497,-538,-580,-621,
+-664,-709,-757,-802,-846,-890,-933,-974,-1014,-1057,-1102,-1145,-1183,-1218,-1255,-1295,-1337,-1378,-1417,-1453,-1487,
+-1523,-1566,-1617,-1671,-1723,-1773,-1820,-1866,-1908,-1949,-1996,-2048,-2102,-2152,-2198,-2241,-2282,-2325,-2373,-2423,-2469,
+-2505,-2536,-2566,-2598,-2629,-2657,-2686,-2717,-2749,-2781,-2813,-2847,-2880,-2910,-2940,-2971,-3003,-3032,-3060,-3091,-3124,
+-3159,-3192,-3221,-3250,-3281,-3311,-3337,-3359,-3381,-3405,-3429,-3453,-3472,-3490,-3504,-3516,-3527,-3538,-3549,-3559,-3570,
+-3581,-3587,-3589,-3588,-3588,-3588,-3587,-3585,-3586,-3587,-3584,-3577,-3571,-3568,-3565,-3559,-3551,-3541,-3527,-3508,-3490,
+-3475,-3461,-3443,-3423,-3402,-3380,-3356,-3329,-3302,-3272,-3242,-3213,-3185,-3150,-3110,-3072,-3040,-3008,-2969,-2926,-2890,
+-2862,-2833,-2798,-2758,-2717,-2674,-2630,-2587,-2547,-2509,-2469,-2426,-2380,-2335,-2295,-2260,-2225,-2183,-2136,-2089,-2047,
+-2005,-1959,-1911,-1863,-1818,-1775,-1731,-1686,-1639,-1595,-1554,-1514,-1471,-1426,-1382,-1340,-1299,-1259,-1222,-1189,-1155,
+-1123,-1093,-1063,-1030,-995,-962,-933,-902,-865,-826,-788,-753,-722,-695,-668,-637,-606,-577,-547,-513,-477,
+-450,-430,-404,-370,-334,-301,-268,-230,-196,-169,-144,-114,-84,-59,-33,0,41,77,106,134,167,
+202,239,277,313,347,381,422,468,510,542,572,612,666,725,777,820,855,880,900,930,987,
+1064,1135,1179,1208,1242,1288,1335,1382,1432,1479,1508,1518,1509,1479,1426,1373,1348,1351,1371,1415,1490,
+1554,1544,1465,1388,1350,1295,1163,983,835,752,704,655,579,447,274,157,164,226,209,124,126,
+274,393,281,-24,-283,-326,-195,-37,37,-22,-224,-509,-765,-911,-957,-963,-971,-990,-1014,-1040,-1061,
+-1080,-1113,-1162,-1212,-1249,-1286,-1338,-1396,-1449,-1505,-1585,-1691,-1803,-1911,-2016,-2123,-2230,-2329,-2419,-2501,-2576,
+-2644,-2699,-2737,-2762,-2792,-2836,-2884,-2921,-2943,-2956,-2968,-2980,-2996,-3020,-3051,-3091,-3144,-3209,-3283,-3361,-3444,
+-3527,-3597,-3643,-3670,-3693,-3723,-3763,-3809,-3859,-3907,-3947,-3968,-3961,-3923,-3875,-3845,-3850,-3885,-3944,-4029,-4136,
+-4240,-4319,-4364,-4381,-4373,-4345,-4312,-4288,-4270,-4244,-4211,-4186,-4176,-4169,-4149,-4117,-4075,-4025,-3967,-3904,-3842,
+-3778,-3712,-3645,-3582,-3521,-3460,-3401,-3344,-3284,-3225,-3170,-3117,-3058,-2992,-2928,-2876,-2826,-2764,-2688,-2605,-2521,
+-2435,-2344,-2251,-2158,-2063,-1970,-1887,-1818,-1756,-1688,-1610,-1523,-1437,-1361,-1299,-1251,-1206,-1155,-1098,-1043,-995,
+-948,-894,-834,-777,-725,-675,-624,-576,-533,-487,-433,-375,-322,-278,-236,-194,-155,-119,-78,-28,26,
+82,136,187,237,288,341,395,443,484,523,560,595,628,664,705,744,781,817,859,900,940,
+979,1023,1066,1103,1136,1173,1211,1244,1273,1309,1357,1409,1453,1490,1523,1556,1593,1640,1697,1752,1790,
+1809,1825,1853,1889,1918,1932,1934,1933,1937,1949,1973,1999,2017,2030,2050,2090,2142,2186,2214,2240,2281,
+2334,2376,2403,2450,2566,2763,2991,3176,3281,3326,3339,3317,3238,3117,3013,2982,3024,3100,3172,3228,3271,
+3315,3365,3415,3450,3470,3490,3516,3529,3508,3451,3379,3305,3225,3144,3080,3044,3028,3017,2999,2972,2940,
+2907,2876,2840,2794,2748,2719,2713,2726,2748,2768,2768,2739,2697,2670,2659,2636,2592,2562,2571,2591,2576,
+2530,2591,2550,2548,2558,2557,2555,2571,2595,2602,2592,2586,2587,2583,2568,2550,2539,2534,2530,2524,2514,
+2502,2495,2488,2462,2409,2352,2326,2342,2368,2367,2330,2272,2208,2148,2103,2083,2087,2094,2083,2049,2013,
+1991,1979,1963,1938,1916,1900,1873,1822,1758,1705,1670,1636,1587,1531,1480,1431,1375,1311,1248,1184,1112,
+1028,941,861,787,713,638,569,515,476,440,397,346,296,247,193,127,56,-7,-58,-93,-106,
+-96,-79,-81,-117,-176,-232,-269,-287,-297,-313,-345,-390,-435,-466,-487,-502,-513,-520,-531,-555,-588,
+-610,-617,-621,-638,-662,-679,-690,-706,-730,-757,-784,-817,-851,-876,-898,-933,-986,-1032,-1047,-1033,-1010,
+-992,-984,-1001,-1051,-1107,-1133,-1139,-1167,-1222,-1251,-1215,-1153,-1121,-1113,-1070,-973,-875,-823,-801,-774,-746,
+-750,-790,-838,-867,-870,-856,-853,-896,-984,-1058,-1061,-1020,-1019,-1107,-1238,-1347,-1421,-1490,-1561,-1622,-1682,
+-1765,-1871,-1964,-2017,-2038,-2050,-2066,-2093,-2135,-2191,-2247,-2301,-2369,-2462,-2567,-2662,-2739,-2805,-2854,-2877,-2885,
+-2903,-2940,-2982,-3016,-3056,-3123,-3217,-3320,-3419,-3512,-3604,-3713,-3865,-4076,-4321,-4544,-4712,-4839,-4957,-5072,-5165,
+-5220,-5246,-5257,-5265,-5282,-5315,-5353,-5379,-5395,-5427,-5475,-5493,-5436,-5323,-5229,-5202,-5224,-5251,-5267,-5287,-5316,
+-5345,-5371,-5400,-5434,-5467,-5501,-5549,-5615,-5689,-5759,-5834,-5924,-6025,-6124,-6222,-6323,-6427,-6528,-6628,-6730,-6835,
+-6938,-7040,-7144,-7250,-7349,-7444,-7541,-7643,-7744,-7839,-7924,-7998,-8069,-8146,-8235,-8324,-8399,-8464,-8534,-8617,-8700,
+-8777,-8851,-8925,-8995,-9062,-9132,-9206,-9272,-9325,-9378,-9438,-9492,-9530,-9559,-9592,-9620,-9630,-9627,-9634,-9657,-9691,
+-9740,-9808,-9874,-9915,-9935,-9963,-9997,-10012,-10004,-10004,-10019,-10004,-9926,-9815,-9744,-9744,-9792,-9851,-9903,-9942,-9976,
+-10017,-10052,-10037,-9940,-9796,-9675,-9602,-9546,-9487,-9439,-9418,-9411,-9416,-9456,-9536,-9604,-9604,-9543,-9472,-9418,-9368,
+-9308,-9242,-9171,-9081,-8964,-8837,-8724,-8632,-8546,-8446,-8316,-8155,-7986,-7838,-7720,-7610,-7481,-7322,-7145,-6966,-6803,
+-6668,-6551,-6433,-6306,-6178,-6065,-5968,-5885,-5830,-5816,-5827,-5828,-5809,-5817,-5888,-5979,-5975,-5800,-5500,-5186,-4925,
+-4709,-4522,-4379,-4278,-4164,-3986,-3769,-3590,-3484,-3410,-3317,-3192,-3055,-2923,-2809,-2719,-2642,-2549,-2420,-2277,-2149,
+-2044,-1954,-1877,-1820,-1777,-1737,-1691,-1641,-1581,-1508,-1427,-1346,-1264,-1173,-1077,-984,-896,-804,-708,-615,-526,
+-436,-344,-259,-183,-102,-2,114,229,330,421,508,592,678,777,900,1035,1157,1250,1324,1406,1510,
+1629,1743,1843,1934,2030,2145,2275,2396,2485,2553,2637,2756,2888,3002,3102,3214,3340,3452,3527,3568,3596,
+3630,3677,3740,3825,3948,4125,4349,4587,4800,4960,5042,5034,4976,4955,5031,5164,5262,5297,5322,5383,5465,
+5539,5597,5619,5592,5569,5676,5961,6307,6550,6659,6723,6798,6868,6941,7064,7219,7301,7253,7135,7014,6865,
+6661,6471,6358,6223,5917,5507,5282,5429,5813,6145,6302,6368,6432,6479,6473,6445,6437,6433,6402,6359,6342,
+6351,6361,6365,6381,6403,6410,6400,6394,6397,6388,6363,6360,6406,6465,6467,6383,6258,6174,6174,6234,6306,
+6380,6473,6558,6532,6319,6002,5797,5848,6078,6282,6348,6325,6303,6301,6292,6272,6261,6253,6228,6187,6151,
+6132,6126,6133,6154,6176,6178,6159,6126,6079,6008,5928,5876,5882,5937,6010,6067,6081,6045,5975,5905,5864,
+5855,5868,5878,5865,5846,5868,5951,6024,5973,5772,5527,5363,5289,5229,5132,5028,4972,4991,5082,5203,5278,
+5248,5134,5021,4953,4897,4821,4759,4754,4785,4795,4792,4826,4895,4915,4828,4677,4554,4495,4471,4451,4429,
+4398,4348,4285,4233,4201,4176,4144,4105,4057,3991,3913,3855,3834,3827,3799,3745,3687,3639,3590,3526,3451,
+3381,3325,3279,3234,3189,3153,3127,3100,3061,3016,2983,2962,2933,2890,2857,2853,2852,2824,2776,2752,2769,
+2807,2842,2858,2834,2756,2658,2603,2602,2592,2532,2472,2489,2561,2587,2516,2399,2311,2267,2243,2231,2237,
+2246,2236,2211,2189,2165,2121,2064,2025,2018,2018,1997,1950,1889,1833,1794,1777,1768,1746,1705,1666,1644,
+1635,1619,1589,1552,1521,1500,1485,1468,1448,1428,1412,1398,1380,1360,1348,1346,1347,1343,1331,1313,1290,
+1268,1245,1214,1165,1107,1062,1040,1032,1023,1010,1000,998,1002,1012,1025,1038,1048,1060,1075,1087,1089,
+1085,1084,1087,1096,1115,1145,1175,1195,1211,1228,1239,1232,1220,1225,1247,1264,1270,1280,1300,1314,1310,
+1308,1323,1334,1321,1310,1347,1421,1468,1453,1412,1398,1417,1432,1424,1403,1387,1379,1379,1380,1370,1349,
+1340,1364,1403,1412,1377,1328,1299,1286,1271,1249,1228,1213,1198,1180,1159,1134,1102,1066,1034,1009,988,
+971,957,944,923,897,872,847,817,785,757,736,715,689,664,642,622,600,580,564,548,525,
+499,473,449,423,393,361,328,291,253,218,185,153,120,91,64,39,13,-14,-44,-73,-102,
+-133,-167,-201,-235,-269,-306,-345,-385,-424,-466,-509,-551,-592,-634,-679,-724,-770,-814,-860,-903,-944,
+-982,-1022,-1064,-1105,-1145,-1183,-1223,-1264,-1307,-1349,-1389,-1427,-1461,-1494,-1532,-1578,-1629,-1682,-1734,-1783,-1828,
+-1866,-1903,-1946,-1997,-2054,-2109,-2158,-2201,-2241,-2281,-2325,-2372,-2418,-2457,-2489,-2520,-2549,-2577,-2604,-2633,-2665,
+-2697,-2729,-2760,-2792,-2822,-2851,-2881,-2915,-2950,-2981,-3008,-3037,-3069,-3105,-3139,-3170,-3199,-3227,-3254,-3279,-3304,
+-3328,-3352,-3376,-3398,-3418,-3434,-3448,-3460,-3471,-3483,-3494,-3504,-3515,-3526,-3534,-3537,-3536,-3538,-3540,-3541,-3542,
+-3544,-3545,-3544,-3539,-3534,-3529,-3524,-3517,-3510,-3502,-3489,-3472,-3453,-3438,-3424,-3409,-3392,-3372,-3350,-3327,-3304,
+-3279,-3249,-3215,-3184,-3157,-3127,-3090,-3052,-3017,-2984,-2945,-2904,-2869,-2840,-2809,-2773,-2734,-2695,-2655,-2614,-2575,
+-2539,-2503,-2465,-2425,-2383,-2339,-2297,-2259,-2222,-2180,-2133,-2087,-2045,-2004,-1959,-1911,-1864,-1818,-1773,-1727,-1678,
+-1630,-1587,-1547,-1508,-1467,-1424,-1384,-1345,-1304,-1263,-1226,-1191,-1156,-1123,-1094,-1066,-1032,-994,-960,-931,-901,
+-866,-829,-793,-760,-731,-704,-677,-647,-619,-595,-570,-536,-498,-467,-441,-412,-380,-349,-323,-293,-255,
+-216,-184,-153,-120,-90,-66,-44,-17,14,50,88,126,158,183,212,252,295,332,366,405,449,
+491,528,566,611,661,713,765,818,871,919,955,985,1024,1078,1137,1178,1190,1191,1210,1263,1341,
+1416,1465,1488,1504,1527,1540,1524,1487,1454,1433,1428,1451,1504,1545,1527,1475,1460,1494,1493,1393,1233,
+1097,1010,946,887,821,706,543,421,414,442,358,179,104,243,437,440,227,1,-63,4,55,
+-22,-237,-514,-745,-861,-880,-877,-898,-930,-958,-988,-1022,-1046,-1060,-1086,-1134,-1185,-1223,-1261,-1313,-1364,
+-1402,-1443,-1510,-1603,-1700,-1791,-1883,-1974,-2061,-2143,-2227,-2314,-2398,-2476,-2545,-2600,-2643,-2690,-2748,-2808,-2852,
+-2880,-2902,-2922,-2937,-2950,-2970,-3004,-3051,-3102,-3145,-3180,-3218,-3274,-3346,-3416,-3467,-3504,-3542,-3585,-3631,-3683,
+-3743,-3797,-3828,-3829,-3810,-3779,-3752,-3740,-3748,-3771,-3811,-3883,-3995,-4127,-4242,-4316,-4348,-4347,-4324,-4296,-4276,
+-4259,-4235,-4204,-4183,-4176,-4169,-4152,-4125,-4091,-4049,-3996,-3935,-3872,-3807,-3738,-3668,-3600,-3531,-3462,-3397,-3336,
+-3276,-3214,-3155,-3098,-3039,-2979,-2926,-2886,-2849,-2798,-2730,-2652,-2570,-2485,-2397,-2309,-2218,-2127,-2041,-1967,-1903,
+-1837,-1761,-1671,-1576,-1483,-1399,-1328,-1266,-1205,-1139,-1075,-1022,-979,-935,-878,-809,-739,-678,-628,-583,-543,
+-503,-457,-402,-343,-291,-248,-211,-174,-138,-103,-64,-18,36,94,152,208,262,316,374,432,484,
+525,557,586,613,643,679,719,761,799,836,873,909,944,980,1020,1060,1097,1132,1166,1200,1230,
+1261,1302,1356,1413,1462,1498,1528,1562,1608,1668,1735,1798,1844,1866,1868,1861,1859,1867,1884,1901,1913,
+1921,1931,1947,1969,1995,2022,2052,2088,2127,2162,2191,2224,2269,2319,2355,2371,2398,2485,2654,2869,3059,
+3180,3237,3263,3266,3231,3155,3072,3026,3035,3087,3156,3221,3273,3314,3352,3387,3414,3436,3463,3490,3494,
+3462,3411,3364,3316,3247,3161,3090,3054,3042,3030,3007,2978,2945,2911,2878,2845,2805,2763,2732,2721,2727,
+2744,2764,2771,2754,2728,2715,2710,2683,2634,2604,2621,2652,2642,2591,2641,2595,2583,2588,2589,2590,2604,
+2620,2624,2618,2614,2610,2597,2579,2566,2555,2539,2521,2515,2521,2525,2515,2489,2449,2399,2351,2319,2306,
+2298,2278,2246,2209,2172,2141,2120,2114,2114,2106,2079,2038,2002,1983,1973,1954,1920,1879,1847,1826,1807,
+1784,1754,1711,1652,1589,1543,1523,1505,1460,1379,1276,1175,1084,1005,931,858,783,710,644,588,539,
+492,444,396,347,299,247,188,121,55,-3,-53,-88,-100,-89,-72,-73,-106,-167,-234,-291,-329,
+-350,-370,-401,-444,-492,-541,-588,-621,-628,-614,-603,-615,-639,-651,-647,-648,-668,-693,-709,-717,-733,
+-762,-795,-827,-859,-889,-907,-922,-951,-1000,-1046,-1069,-1072,-1065,-1053,-1041,-1051,-1099,-1158,-1189,-1192,-1204,
+-1241,-1265,-1237,-1180,-1148,-1143,-1119,-1051,-972,-918,-883,-845,-809,-803,-831,-865,-877,-871,-868,-896,-964,
+-1041,-1075,-1046,-1005,-1031,-1142,-1275,-1371,-1436,-1517,-1625,-1734,-1829,-1923,-2022,-2104,-2151,-2171,-2187,-2212,-2242,
+-2272,-2299,-2328,-2370,-2444,-2548,-2661,-2758,-2832,-2888,-2926,-2944,-2957,-2987,-3036,-3085,-3124,-3170,-3243,-3338,-3434,
+-3519,-3600,-3694,-3823,-4004,-4232,-4472,-4675,-4821,-4936,-5048,-5158,-5238,-5275,-5283,-5288,-5303,-5330,-5366,-5404,-5441,
+-5483,-5534,-5573,-5555,-5456,-5324,-5236,-5229,-5269,-5298,-5307,-5323,-5358,-5396,-5422,-5440,-5466,-5499,-5535,-5579,-5637,
+-5705,-5778,-5853,-5936,-6029,-6128,-6230,-6333,-6433,-6529,-6625,-6727,-6833,-6937,-7040,-7147,-7253,-7353,-7447,-7543,-7645,
+-7750,-7848,-7933,-8007,-8079,-8160,-8252,-8344,-8425,-8497,-8574,-8657,-8738,-8811,-8879,-8947,-9011,-9076,-9147,-9222,-9288,
+-9343,-9397,-9456,-9507,-9543,-9572,-9605,-9632,-9639,-9636,-9642,-9664,-9700,-9754,-9827,-9893,-9928,-9940,-9961,-9993,-10010,
+-10009,-10017,-10039,-10035,-9973,-9876,-9800,-9770,-9789,-9848,-9934,-10013,-10066,-10105,-10133,-10110,-10001,-9840,-9701,-9611,-9534,
+-9458,
+-9411-9404,-9403,-9387,-9403,-9485,-9583,-9613,-9561,-9489,-9443,-9404,-9347,-9279,-9210,-9126,-9009,-8874,-8750,-8651,
+-8559,-8455,-8324,-8168,-8002,-7853,-7730,-7616,-7484,-7325,-7150,-6977,-6818,-6678,-6549,-6418,-6280,-6142,-6018,-5909,-5815,
+-5751,-5736,-5761,-5788,-5797,-5819,-5891,-5987,-6002,-5854,-5560,-5222,-4923,-4685,-4497,-4356,-4241,-4104,-3916,-3711,-3554,
+-3461,-3389,-3292,-3164,-3027,-2895,-2778,-2683,-2603,-2510,-2384,-2238,-2102,-1987,-1889,-1808,-1748,-1703,-1662,-1620,-1578,
+-1526,-1454,-1367,-1278,-1194,-1107,-1015,-923,-835,-746,-652,-558,-466,-374,-278,-182,-93,-6,90,196,300,
+392,475,556,640,729,831,953,1088,1212,1306,1380,1459,1553,1655,1757,1860,1967,2081,2205,2334,2449,
+2533,2602,2689,2808,2933,3041,3147,3273,3407,3507,3549,3553,3560,3603,3688,3799,3915,4040,4203,4417,4653,
+4860,5006,5082,5094,5072,5077,5140,5226,5278,5301,5345,5427,5507,5559,5595,5615,5609,5636,5818,6182,6571,
+6799,6849,6841,6851,6872,6920,7047,7216,7307,7269,7179,7092,6939,6679,6430,6315,6229,5965,5547,5286,5416,
+5813,6168,6337,6409,6480,6533,6528,6499,6492,6491,6462,6421,6407,6423,6442,6455,6471,6483,6480,6469,6466,
+6456,6423,6400,6448,6557,6622,6548,6358,6175,6096,6119,6184,6249,6317,6396,6447,6392,6207,5990,5902,6008,
+6204,6332,6349,6325,6321,6323,6301,6273,6271,6283,6279,6258,6239,6225,6205,6185,6181,6187,6183,6172,6166,
+6153,6101,6018,5956,5951,5982,6010,6022,6026,6023,6004,5974,5949,5932,5918,5903,5889,5884,5898,5924,5936,
+5894,5780,5616,5440,5285,5169,5100,5060,5036,5055,5155,5308,5393,5322,5154,5024,4985,4966,4907,4847,4837,
+4853,4842,4837,4909,5038,5099,5009,4821,4656,4566,4523,4489,4457,4426,4387,4342,4307,4283,4258,4222,4182,
+4133,4066,3984,3913,3869,3836,3793,3743,3703,3673,3634,3574,3505,3445,3398,3353,3306,3260,3222,3188,3147,
+3094,3044,3013,2997,2972,2934,2904,2893,2881,2839,2772,2711,2686,2713,2791,2892,2945,2896,2781,2691,2667,
+2655,2599,2530,2512,2543,2562,2530,2471,2414,2358,2304,2269,2263,2263,2252,2236,2224,2200,2149,2090,2056,
+2051,2045,2019,1978,1929,1872,1812,1770,1753,1745,1726,1696,1666,1644,1625,1602,1573,1546,1523,1507,1491,
+1472,1452,1433,1413,1387,1364,1353,1356,1362,1367,1367,1364,1351,1331,1303,1264,1209,1146,1094,1064,1047,
+1034,1021,1015,1012,1013,1017,1028,1041,1055,1068,1080,1088,1088,1088,1091,1095,1100,1114,1140,1167,1187,
+1206,1229,1243,1236,1221,1223,1245,1264,1270,1277,1295,1310,1310,1312,1327,1341,1338,1333,1351,1379,1387,
+1376,1386,1430,1471,1469,1431,1394,1381,1390,1412,1431,1425,1388,1351,1349,1372,1379,1354,1322,1311,1311,
+1298,1272,1250,1237,1226,1210,1194,1174,1144,1107,1072,1046,1028,1013,1000,985,964,938,914,891,862,
+828,799,777,756,730,705,682,659,635,612,593,575,555,534,513,490,464,435,405,374,338,
+299,262,227,193,159,128,100,74,46,18,-9,-36,-64,-96,-130,-165,-199,-235,-272,-311,-350,
+-391,-433,-477,-520,-561,-603,-646,-689,-733,-779,-826,-872,-912,-951,-990,-1029,-1068,-1106,-1145,-1185,-1228,
+-1271,-1315,-1356,-1395,-1431,-1466,-1503,-1545,-1592,-1644,-1697,-1747,-1790,-1826,-1859,-1897,-1944,-2001,-2059,-2111,-2155,
+-2194,-2231,-2270,-2313,-2357,-2397,-2434,-2466,-2495,-2522,-2549,-2578,-2611,-2644,-2676,-2709,-2743,-2775,-2805,-2834,-2868,
+-2902,-2934,-2962,-2989,-3020,-3054,-3088,-3121,-3150,-3176,-3200,-3224,-3249,-3274,-3297,-3318,-3338,-3356,-3374,-3388,-3401,
+-3413,-3424,-3435,-3446,-3457,-3468,-3477,-3482,-3485,-3488,-3493,-3499,-3502,-3505,-3504,-3500,-3494,-3489,-3484,-3479,-3472,
+-3467,-3462,-3452,-3436,-3420,-3406,-3392,-3377,-3360,-3342,-3319,-3294,-3271,-3247,-3220,-3188,-3158,-3133,-3108,-3075,-3037,
+-2998,-2961,-2923,-2887,-2855,-2824,-2790,-2754,-2716,-2679,-2640,-2602,-2565,-2530,-2493,-2455,-2418,-2379,-2336,-2293,-2252,
+-2212,-2170,-2125,-2081,-2041,-1999,-1954,-1907,-1861,-1816,-1770,-1724,-1677,-1630,-1587,-1547,-1507,-1465,-1426,-1389,-1352,
+-1310,-1269,-1232,-1198,-1163,-1128,-1098,-1068,-1034,-998,-965,-934,-901,-865,-830,-799,-771,-744,-718,-689,-658,
+-629,-607,-585,-556,-520,-486,-454,-420,-387,-360,-338,-310,-274,-237,-203,-171,-138,-108,-83,-57,-29,
+-2,26,64,107,142,165,190,227,270,311,350,392,434,472,512,560,611,660,706,754,804,
+859,919,980,1029,1065,1104,1151,1186,1182,1152,1142,1191,1286,1381,1438,1462,1493,1554,1620,1648,1619,
+1548,1467,1406,1390,1417,1448,1452,1462,1524,1613,1636,1552,1426,1340,1292,1241,1182,1113,995,820,675,
+641,633,488,216,49,162,439,604,531,324,138,16,-96,-256,-464,-666,-788,-811,-794,-811,-861,
+-900,-915,-938,-984,-1025,-1048,-1074,-1118,-1164,-1201,-1243,-1298,-1343,-1365,-1384,-1425,-1485,-1551,-1625,-1713,-1806,
+-1892,-1976,-2069,-2169,-2266,-2358,-2446,-2524,-2588,-2648,-2712,-2768,-2806,-2833,-2864,-2896,-2914,-2918,-2926,-2955,-3000,
+-3048,-3083,-3104,-3124,-3160,-3210,-3257,-3293,-3333,-3386,-3446,-3500,-3554,-3618,-3675,-3703,-3694,-3667,-3642,-3628,-3631,
+-3650,-3677,-3710,-3770,-3876,-4018,-4153,-4242,-4279,-4282,-4268,-4250,-4237,-4223,-4203,-4182,-4168,-4163,-4157,-4141,-4117,
+-4089,-4053,-4007,-3954,-3897,-3834,-3763,-3690,-3617,-3542,-3467,-3397,-3335,-3276,-3213,-3148,-3086,-3025,-2968,-2922,-2888,
+-2855,-2809,-2747,-2673,-2593,-2512,-2432,-2354,-2275,-2193,-2114,-2043,-1976,-1903,-1820,-1731,-1639,-1550,-1467,-1391,-1315,
+-1233,-1149,-1073,-1015,-971,-926,-866,-791,-713,-643,-589,-547,-511,-472,-424,-367,-308,-257,-214,-175,-137,
+-98,-60,-20,24,73,125,180,236,291,345,397,450,498,539,570,596,621,650,688,731,775,
+815,852,888,923,958,996,1036,1076,1114,1151,1187,1218,1247,1278,1320,1370,1423,1468,1505,1539,1579,
+1630,1690,1751,1807,1852,1880,1886,1873,1857,1856,1869,1888,1907,1923,1939,1956,1974,1995,2020,2048,2078,
+2109,2139,2169,2201,2237,2275,2305,2324,2349,2414,2540,2713,2883,3007,3080,3129,3171,3198,3191,3151,3104,
+3078,3092,3140,3202,3256,3294,3320,3340,3359,3385,3421,3449,3444,3403,3356,3327,3299,3241,3158,3088,3055,
+3044,3031,3008,2980,2947,2911,2874,2841,2806,2770,2741,2725,2723,2734,2754,2770,2772,2764,2761,2756,2723,
+2668,2636,2655,2692,2689,2641,2659,2624,2613,2617,2618,2621,2631,2641,2640,2632,2621,2604,2580,2561,2553,
+2543,2518,2489,2480,2493,2502,2486,2449,2405,2364,2326,2292,2265,2244,2226,2206,2185,2165,2151,2147,2147,
+2138,2114,2079,2039,2006,1982,1966,1948,1919,1883,1853,1838,1837,1838,1819,1763,1677,1594,1552,1557,1566,
+1533,1438,1307,1177,1073,994,922,842,756,682,629,592,549,492,425,363,310,260,204,140,78,
+23,-24,-65,-97,-110,-108,-101,-107,-134,-183,-246,-310,-358,-388,-412,-443,-482,-527,-584,-651,-707,
+-723,-702,-679,-680,-694,-698,-688,-687,-704,-724,-735,-745,-767,-799,-830,-858,-888,-919,-944,-962,-985,
+-1016,-1046,-1070,-1091,-1108,-1112,-1102,-1102,-1138,-1195,-1234,-1241,-1241,-1254,-1266,-1247,-1208,-1180,-1172,-1153,-1103,
+-1042,-995,-960,-918,-877,-864,-886,-914,-916,-900,-905,-956,-1035,-1093,-1092,-1047,-1022,-1076,-1197,-1322,-1407,
+-1474,-1570,-1704,-1840,-1951,-2044,-2136,-2216,-2267,-2290,-2305,-2330,-2361,-2384,-2395,-2409,-2447,-2523,-2631,-2742,-2835,
+-2905,-2956,-2990,-3014,-3042,-3087,-3146,-3202,-3250,-3306,-3385,-3481,-3571,-3644,-3712,-3804,-3945,-4144,-4379,-4610,-4798,
+-4935,-5042,-5142,-5231,-5290,-5313,-5317,-5326,-5350,-5382,-5415,-5456,-5508,-5568,-5618,-5626,-5566,-5446,-5320,-5249,-5255,
+-5300,-5333,-5344,-5358,-5393,-5434,-5463,-5482,-5506,-5540,-5574,-5610,-5659,-5726,-5802,-5875,-5947,-6029,-6125,-6233,-6340,
+-6439,-6532,-6628,-6732,-6838,-6941,-7042,-7146,-7251,-7350,-7444,-7540,-7643,-7749,-7847,-7933,-8010,-8089,-8175,-8267,-8357,
+-8440,-8521,-8605,-8691,-8771,-8842,-8910,-8974,-9034,-9094,-9161,-9232,-9296,-9352,-9408,-9465,-9513,-9548,-9581,-9618,-9645,
+-9649,-9641,-9642,-9663,-9702,-9763,-9845,-9915,-9946,-9949,-9959,-9987,-10008,-10015,-10027,-10048,-10051,-10013,-9948,-9882,-9830,
+-9817,-9875,-9994,-10112,-10178,-10204,-10212,-10176,-10058,-9889,-9740,-9628,-9518,-9407,-9350,-9362,-9383,-9372,-9380,-9467,-9588,
+-9641,-9597,-9524,-9480,-9447,-9391,-9316,-9245,-9164,-9049,-8909,-8777,-8670,-8573,-8467,-8340,-8190,-8027,-7873,-7743,-7624,
+-7490,-7333,-7164,-7001,-6846,-6697,-6549,-6399,-6246,-6100,-5971,-5860,-5765,-5697,-5676,-5703,-5754,-5799,-5847,-5922,-6007,
+-6023,-5888,-5602,-5250,-4926,-4676,-4492,-4350,-4217,-4057,-3861,-3669,-3529,-3441,-3361,-3256,-3130,-2999,-2871,-2748,-2638,
+-2544,-2449,-2336,-2206,-2077,-1956,-1846,-1755,-1690,-1643,-1599,-1552,-1506,-1457,-1390,-1304,-1213,-1129,-1049,-965,-877,
+-790,-702,-609,-511,-415,-322,-224,-120,-18,76,168,265,365,458,542,625,713,805,905,1020,1149,
+1272,1370,1443,1511,1587,1672,1767,1873,1989,2109,2232,2357,2469,2559,2642,2744,2868,2987,3089,3195,3319,
+3435,3501,3510,3504,3531,3616,3755,3916,4057,4174,4305,4491,4712,4906,5037,5108,5142,5160,5184,5226,5269,
+5295,5327,5396,5483,5536,5551,5573,5619,5674,5774,6007,6374,6721,6894,6900,6857,6825,6801,6822,6947,7130,
+7236,7221,7172,7123,6973,6677,6386,6253,6177,5923,5507,5248,5390,5808,6182,6366,6445,6520,6577,6580,6559,
+6556,6555,6525,6485,6473,6488,6505,6517,6528,6533,6527,6523,6525,6509,6469,6471,6579,6737,6786,6631,6363,
+6161,6108,6145,6174,6169,6165,6184,6198,6164,6085,6027,6061,6184,6308,6358,6349,6343,6356,6352,6315,6283,
+6285,6299,6299,6295,6306,6313,6289,6246,6217,6205,6194,6186,6194,6203,6176,6114,6061,6043,6034,6007,5976,
+5973,5998,6019,6021,6008,5982,5942,5901,5882,5886,5886,5863,5831,5809,5781,5694,5523,5322,5185,5146,5145,
+5125,5131,5252,5457,5578,5490,5274,5107,5055,5032,4969,4907,4895,4898,4866,4853,4944,5110,5200,5115,4919,
+4743,4640,4576,4517,4469,4444,4440,4445,4450,4437,4389,4316,4246,4188,4126,4051,3977,3918,3867,3814,3766,
+3735,3715,3685,3633,3571,3516,3472,3429,3379,3326,3278,3239,3198,3148,3094,3050,3020,2998,2977,2960,2941,
+2905,2842,2764,2688,2633,2633,2722,2875,2993,2986,2870,2750,2693,2667,2614,2546,2520,2556,2614,2648,2637,
+2582,2496,2409,2350,2319,2290,2259,2241,2236,2216,2168,2118,2093,2084,2063,2023,1980,1934,1875,1808,1759,
+1742,1744,1740,1719,1686,1654,1630,1613,1596,1575,1552,1533,1516,1497,1477,1457,1434,1405,1381,1372,1379,
+1392,1405,1416,1421,1413,1389,1353,1307,1247,1180,1123,1085,1064,1050,1041,1039,1036,1030,1027,1034,1050,
+1067,1080,1088,1089,1086,1088,1095,1100,1101,1110,1132,1159,1179,1197,1219,1235,1230,1214,1213,1235,1258,
+1271,1282,1299,1315,1322,1327,1341,1353,1358,1363,1375,1377,1360,1351,1387,1453,1491,1469,1418,1385,1388,
+1414,1453,1489,1490,1446,1393,1376,1392,1398,1374,1346,1339,1339,1321,1289,1265,1255,1248,1238,1230,1217,
+1190,1150,1111,1085,1069,1055,1040,1021,1000,977,957,935,907,873,842,817,794,769,743,719,695,
+670,646,625,606,587,569,552,531,505,475,445,414,380,342,304,270,236,204,173,144,115,
+85,56,28,1,-29,-63,-98,-134,-168,-203,-241,-279,-318,-358,-401,-444,-486,-528,-570,-612,-652,
+-695,-742,-791,-837,-879,-921,-963,-1003,-1039,-1073,-1108,-1146,-1187,-1231,-1275,-1317,-1356,-1393,-1433,-1474,-1517,
+-1562,-1612,-1664,-1713,-1756,-1792,-1823,-1856,-1898,-1950,-2007,-2058,-2102,-2140,-2177,-2214,-2254,-2295,-2336,-2374,-2409,
+-2440,-2469,-2496,-2527,-2561,-2596,-2630,-2665,-2702,-2736,-2767,-2795,-2824,-2855,-2885,-2914,-2943,-2972,-3003,-3035,-3067,
+-3097,-3123,-3147,-3170,-3195,-3220,-3242,-3261,-3277,-3294,-3312,-3329,-3342,-3352,-3362,-3374,-3387,-3399,-3410,-3420,-3426,
+-3431,-3436,-3444,-3453,-3459,-3461,-3458,-3450,-3441,-3436,-3434,-3432,-3429,-3425,-3421,-3412,-3399,-3386,-3375,-3362,-3347,
+-3331,-3313,-3290,-3263,-3237,-3214,-3190,-3162,-3135,-3111,-3087,-3057,-3019,-2979,-2939,-2902,-2870,-2839,-2806,-2770,-2733,
+-2697,-2661,-2623,-2587,-2554,-2520,-2483,-2444,-2407,-2370,-2329,-2286,-2245,-2205,-2162,-2119,-2078,-2037,-1994,-1948,-1903,
+-1860,-1816,-1771,-1726,-1682,-1638,-1596,-1554,-1511,-1467,-1427,-1391,-1355,-1314,-1273,-1237,-1205,-1171,-1136,-1102,-1071,
+-1037,-1004,-974,-944,-908,-869,-837,-811,-785,-758,-731,-703,-674,-643,-617,-594,-567,-535,-502,-469,-435,
+-401,-373,-346,-315,-281,-249,-221,-191,-162,-137,-112,-80,-44,-14,10,42,83,120,149,177,213,
+251,289,331,379,422,458,500,551,602,647,693,743,789,833,892,970,1044,1091,1125,1165,1192,
+1173,1115,1075,1104,1193,1291,1356,1390,1432,1510,1606,1662,1636,1535,1408,1310,1267,1270,1288,1320,1402,
+1552,1700,1739,1654,1549,1515,1538,1549,1520,1450,1308,1094,903,820,769,586,270,53,145,479,781,
+841,648,320,-17,-282,-452,-559,-638,-687,-703,-722,-775,-839,-869,-870,-888,-938,-987,-1020,-1054,-1101,
+-1147,-1184,-1224,-1265,-1286,-1284,-1287,-1314,-1351,-1388,-1438,-1516,-1611,-1711,-1820,-1944,-2067,-2177,-2277,-2376,-2463,
+-2533,-2597,-2663,-2719,-2751,-2776,-2814,-2854,-2873,-2870,-2869,-2891,-2930,-2973,-3008,-3032,-3054,-3082,-3113,-3136,-3155,
+-3190,-3251,-3317,-3367,-3408,-3460,-3513,-3544,-3546,-3532,-3520,-3513,-3518,-3541,-3576,-3615,-3672,-3775,-3920,-4061,-4152,
+-4186,-4189,-4185,-4180,-4175,-4165,-4151,-4138,-4130,-4128,-4124,-4112,-4092,-4065,-4029,-3987,-3944,-3899,-3843,-3776,-3703,
+-3629,-3554,-3476,-3405,-3343,-3284,-3221,-3153,-3087,-3026,-2972,-2929,-2893,-2853,-2801,-2737,-2664,-2587,-2509,-2435,-2366,
+-2296,-2222,-2147,-2075,-2002,-1923,-1840,-1758,-1678,-1597,-1518,-1440,-1359,-1268,-1173,-1088,-1021,-968,-916,-856,-786,
+-710,-636,-574,-528,-488,-443,-388,-325,-264,-209,-161,-115,-68,-24,19,64,110,154,196,240,289,
+340,387,429,469,511,551,585,614,640,672,712,757,803,845,883,917,952,990,1033,1075,1115,
+1154,1195,1233,1264,1291,1323,1363,1404,1442,1476,1511,1551,1600,1655,1707,1745,1770,1795,1823,1846,1855,
+1856,1858,1869,1884,1902,1924,1947,1965,1977,1990,2009,2033,2060,2088,2117,2146,2172,2194,2215,2237,2261,
+2288,2332,2409,2526,2664,2790,2888,2967,3049,3132,3195,3214,3190,3150,3126,3135,3170,3210,3241,3261,3278,
+3296,3325,3361,3384,3370,3324,3279,3258,3241,3198,3132,3077,3053,3044,3031,3008,2981,2946,2902,2859,2823,
+2795,2769,2748,2735,2729,2736,2755,2779,2792,2794,2793,2782,2745,2687,2648,2656,2687,2691,2659,2645,2632,
+2633,2640,2641,2640,2642,2640,2629,2609,2585,2558,2531,2513,2506,2494,2465,2432,2418,2425,2429,2411,2377,
+2341,2308,2275,2241,2215,2206,2208,2208,2196,2177,2165,2162,2159,2143,2114,2079,2043,2007,1978,1960,1953,
+1949,1937,1916,1894,1880,1872,1847,1784,1686,1594,1549,1555,1568,1535,1441,1313,1189,1089,1008,925,830,
+733,658,617,591,549,478,392,313,250,190,124,56,0,-43,-78,-112,-141,-159,-166,-170,-180,
+-199,-234,-287,-347,-396,-429,-457,-489,-523,-556,-603,-673,-746,-786,-783,-767,-766,-774,-770,-758,-753,
+-760,-767,-769,-778,-801,-829,-851,-872,-902,-938,-972,-998,-1017,-1031,-1042,-1058,-1089,-1129,-1154,-1153,-1144,
+-1158,-1201,-1245,-1267,-1270,-1271,-1271,-1258,-1232,-1209,-1198,-1183,-1147,-1101,-1065,-1038,-1005,-967,-952,-970,-993,
+-989,-970,-981,-1042,-1115,-1145,-1116,-1070,-1066,-1132,-1246,-1362,-1459,-1553,-1670,-1808,-1940,-2043,-2131,-2224,-2317,
+-2382,-2406,-2411,-2426,-2457,-2485,-2501,-2518,-2559,-2634,-2732,-2829,-2913,-2978,-3028,-3067,-3103,-3146,-3201,-3263,-3322,
+-3379,-3446,-3530,-3626,-3715,-3784,-3845,-3929,-4067,-4263,-4491,-4711,-4895,-5035,-5141,-5223,-5283,-5321,-5338,-5348,-5364,
+-5392,-5424,-5460,-5507,-5568,-5625,-5645,-5607,-5519,-5412,-5322,-5278,-5284,-5318,-5349,-5364,-5380,-5412,-5456,-5497,-5528,
+-5558,-5590,-5620,-5650,-5693,-5754,-5826,-5893,-5957,-6031,-6126,-6235,-6343,-6442,-6537,-6637,-6743,-6847,-6945,-7042,-7143,
+-7245,-7345,-7440,-7538,-7642,-7746,-7841,-7928,-8012,-8098,-8187,-8274,-8358,-8442,-8530,-8622,-8711,-8790,-8863,-8932,-8997,
+-9055,-9112,-9174,-9239,-9299,-9354,-9412,-9469,-9514,-9548,-9587,-9631,-9662,-9663,-9648,-9643,-9658,-9696,-9763,-9853,-9932,
+-9966,-9966,-9970,-9993,-10019,-10036,-10052,-10068,-10072,-10056,-10028,-9987,-9936,-9912,-9968,-10100,-10228,-10284,-10286,-10274,-10231,
+-10114,
+-9944,-9786,-9652,-9506,-9358,-9283,-9305,-9351,-9361,-9381,-9479,-9617,-9682,-9639,-9562,-9515,-9483,-9425,-9347,-9272,-9190,
+-9076,-8934,-8799,-8685,-8582,-8474,-8351,-8209,-8050,-7895,-7762,-7642,-7508,-7350,-7184,-7027,-6875,-6717,-6550,-6381,-6216,
+-6063,-5931,-5822,-5730,-5661,-5630,-5652,-5718,-5798,-5874,-5949,-6008,-6001,-5867,-5597,-5258,-4937,-4688,-4506,-4356,-4199,
+-4012,-3806,-3622,-3493,-3406,-3320,-3210,-3085,-2963,-2840,-2711,-2584,-2471,-2370,-2270,-2164,-2053,-1936,-1817,-1713,-1636,
+-1583,-1532,-1476,-1421,-1371,-1312,-1235,-1147,-1065,-991,-916,-834,-749,-664,-575,-479,-381,-285,-184,-73,41,
+146,240,332,431,529,619,708,802,900,998,1101,1218,1337,1436,1507,1564,1627,1707,1804,1913,2025,
+2132,2243,2360,2473,2574,2676,2796,2929,3046,3138,3229,3326,3402,3428,3428,3455,3543,3691,3878,4067,4216,
+4317,4419,4574,4768,4937,5042,5106,5161,5214,5257,5286,5305,5326,5370,5445,5516,5542,5544,5585,5688,5825,
+5999,6248,6554,6802,6892,6855,6781,6712,6667,6710,6887,7109,7219,7192,7137,7084,6921,6603,6288,6126,6015,
+5747,5357,5156,5354,5803,6193,6392,6484,6562,6618,6628,6621,6625,6620,6585,6545,6532,6541,6548,6551,6558,
+6562,6561,6568,6581,6572,6545,6569,6691,6830,6826,6624,6359,6213,6222,6269,6246,6159,6078,6043,6040,6048,
+6072,6131,6225,6321,6373,6376,6368,6382,6399,6384,6342,6313,6311,6308,6288,6280,6303,6324,6306,6263,6234,
+6228,6222,6211,6213,6223,6213,6178,6145,6126,6094,6038,5988,5983,6012,6037,6040,6025,5994,5942,5888,5864,
+5868,5861,5820,5782,5788,5810,5757,5579,5352,5208,5189,5209,5192,5191,5314,5534,5668,5587,5375,5212,5154,
+5114,5032,4960,4946,4941,4896,4867,4947,5104,5193,5122,4954,4804,4711,4636,4557,4501,4499,4550,4624,4677,
+4664,4566,4423,4302,4232,4184,4124,4047,3974,3914,3860,3812,3778,3755,3728,3683,3623,3564,3516,3474,3429,
+3375,3320,3275,3239,3203,3156,3101,3051,3020,3009,3005,2983,2932,2864,2796,2730,2663,2627,2673,2804,2928,
+2943,2844,2724,2658,2632,2593,2538,2516,2558,2642,2714,2730,2678,2584,2494,2433,2383,2323,2266,2238,2232,
+2216,2176,2137,2115,2096,2062,2014,1965,1909,1843,1783,1752,1751,1758,1755,1738,1708,1673,1645,1628,1618,
+1602,1580,1558,1540,1521,1502,1485,1466,1441,1419,1412,1422,1441,1459,1475,1480,1467,1434,1391,1342,1282,
+1214,1151,1109,1087,1079,1078,1077,1069,1053,1041,1045,1062,1081,1095,1100,1096,1090,1089,1094,1097,1096,
+1101,1122,1150,1169,1182,1199,1214,1215,1206,1208,1231,1262,1286,1304,1319,1331,1337,1343,1353,1361,1371,
+1390,1413,1418,1399,1389,1414,1455,1461,1424,1384,1379,1406,1449,1500,1545,1548,1500,1443,1431,1457,1470,
+1445,1412,1398,1391,1365,1328,1302,1293,1285,1274,1266,1258,1236,1197,1158,1131,1114,1097,1076,1055,1035,
+1016,997,977,950,917,883,854,828,801,775,751,727,704,684,665,645,624,604,587,568,543,
+513,482,451,418,382,345,310,277,246,217,187,157,127,98,69,38,4,-31,-67,-102,-136,
+-173,-210,-248,-286,-326,-368,-411,-452,-495,-536,-576,-615,-658,-705,-753,-797,-841,-888,-936,-978,-1013,
+-1045,-1078,-1113,-1150,-1193,-1237,-1278,-1316,-1354,-1397,-1443,-1488,-1534,-1583,-1633,-1680,-1723,-1762,-1796,-1828,-1863,
+-1908,-1959,-2007,-2049,-2087,-2124,-2163,-2202,-2241,-2279,-2315,-2350,-2382,-2413,-2443,-2474,-2509,-2546,-2582,-2617,-2653,
+-2688,-2720,-2748,-2774,-2801,-2830,-2860,-2890,-2920,-2949,-2978,-3007,-3037,-3066,-3092,-3117,-3142,-3167,-3190,-3209,-3224,
+-3240,-3257,-3274,-3287,-3295,-3304,-3317,-3333,-3346,-3357,-3365,-3371,-3377,-3383,-3391,-3401,-3409,-3411,-3406,-3396,-3387,
+-3384,-3386,-3389,-3388,-3385,-3378,-3368,-3357,-3347,-3339,-3329,-3315,-3300,-3284,-3263,-3236,-3210,-3188,-3166,-3141,-3113,
+-3087,-3061,-3032,-2997,-2958,-2918,-2881,-2848,-2815,-2779,-2740,-2703,-2668,-2632,-2596,-2565,-2537,-2507,-2470,-2432,-2396,
+-2360,-2321,-2282,-2244,-2205,-2162,-2118,-2077,-2035,-1989,-1944,-1902,-1861,-1818,-1772,-1728,-1686,-1644,-1603,-1561,-1518,
+-1472,-1429,-1393,-1357,-1317,-1277,-1243,-1212,-1178,-1142,-1108,-1075,-1041,-1009,-983,-955,-920,-882,-851,-826,-800,
+-769,-741,-718,-693,-664,-635,-607,-577,-544,-512,-482,-451,-420,-389,-356,-319,-285,-259,-236,-207,-180,
+-159,-139,-107,-66,-31,-5,23,60,96,128,165,206,242,276,318,370,416,453,495,543,585,
+620,667,725,773,809,861,944,1027,1080,1113,1151,1178,1157,1092,1040,1048,1112,1192,1251,1281,1305,
+1356,1433,1489,1473,1385,1281,1210,1182,1170,1159,1183,1300,1512,1720,1795,1722,1626,1632,1734,1836,1867,
+1808,1645,1393,1143,978,852,643,350,162,260,604,963,1111,955,555,72,-304,-483,-523,-540,-585,
+-640,-692,-748,-799,-826,-835,-855,-892,-928,-964,-1016,-1083,-1139,-1175,-1197,-1201,-1179,-1152,-1162,-1209,-1251,
+-1269,-1287,-1336,-1418,-1529,-1673,-1837,-1985,-2099,-2196,-2291,-2371,-2432,-2494,-2569,-2634,-2668,-2691,-2730,-2776,-2800,
+-2800,-2803,-2826,-2864,-2904,-2940,-2970,-2995,-3019,-3042,-3057,-3069,-3100,-3157,-3216,-3250,-3268,-3297,-3339,-3374,-3394,
+-3406,-3413,-3411,-3410,-3427,-3461,-3503,-3561,-3665,-3813,-3958,-4049,-4080,-4084,-4088,-4095,-4099,-4097,-4090,-4082,-4078,
+-4077,-4077,-4071,-4055,-4028,-3989,-3947,-3910,-3876,-3831,-3772,-3705,-3636,-3565,-3490,-3421,-3359,-3300,-3235,-3165,-3098,
+-3038,-2987,-2942,-2898,-2846,-2782,-2713,-2640,-2565,-2488,-2416,-2349,-2281,-2208,-2134,-2061,-1985,-1904,-1825,-1752,-1681,
+-1604,-1524,-1447,-1367,-1281,-1189,-1104,-1029,-961,-897,-837,-777,-710,-636,-565,-506,-455,-400,-333,-263,-199,
+-142,-89,-35,17,64,109,158,209,256,293,328,367,410,449,482,514,549,588,624,655,685,
+720,762,808,854,898,935,966,996,1034,1079,1122,1159,1194,1233,1271,1300,1324,1356,1397,1435,1465,
+1490,1522,1567,1623,1682,1726,1741,1731,1725,1744,1781,1817,1841,1854,1864,1874,1889,1911,1935,1951,1959,
+1969,1987,2010,2034,2059,2087,2115,2136,2150,2160,2177,2202,2230,2256,2290,2353,2454,2573,2685,2783,2884,
+2997,3109,3188,3216,3198,3162,3136,3130,3142,3161,3184,3208,3233,3260,3286,3297,3277,3235,3196,3179,3169,
+3142,3099,3064,3048,3041,3027,3005,2977,2938,2887,2836,2800,2779,2767,2759,2753,2749,2752,2767,2791,2806,
+2808,2803,2788,2753,2698,2653,2642,2655,2659,2645,2623,2625,2637,2650,2655,2653,2645,2626,2595,2558,2523,
+2493,2470,2455,2446,2431,2402,2369,2345,2334,2324,2306,2283,2259,2232,2199,2168,2156,2171,2200,2219,2213,
+2190,2168,2155,2145,2133,2115,2089,2055,2017,1988,1979,1988,2002,2004,1983,1944,1900,1864,1826,1766,1680,
+1594,1542,1525,1510,1462,1379,1283,1194,1114,1030,933,826,728,658,619,588,535,452,353,262,185,
+113,36,-36,-92,-128,-156,-189,-222,-247,-260,-268,-273,-283,-305,-347,-399,-442,-471,-498,-532,-561,
+-581,-611,-672,-755,-823,-857,-870,-877,-879,-867,-851,-841,-835,-824,-811,-811,-826,-845,-859,-878,-910,
+-950,-989,-1022,-1045,-1055,-1054,-1058,-1084,-1129,-1168,-1180,-1170,-1166,-1188,-1232,-1271,-1290,-1294,-1290,-1276,-1248,
+-1220,-1206,-1199,-1180,-1147,-1119,-1105,-1091,-1067,-1050,-1057,-1072,-1069,-1058,-1079,-1139,-1192,-1187,-1138,-1102,-1121,
+-1192,-1293,-1410,-1538,-1672,-1806,-1933,-2044,-2136,-2225,-2331,-2444,-2524,-2548,-2535,-2532,-2556,-2592,-2621,-2650,-2695,
+-2762,-2840,-2918,-2990,-3054,-3108,-3155,-3203,-3255,-3311,-3368,-3428,-3494,-3569,-3655,-3748,-3836,-3907,-3966,-4045,-4172,
+-4352,-4560,-4768,-4956,-5112,-5221,-5282,-5314,-5335,-5356,-5373,-5392,-5419,-5457,-5505,-5557,-5606,-5631,-5605,-5532,-5444,
+-5376,-5337,-5319,-5316,-5330,-5356,-5380,-5401,-5433,-5479,-5530,-5573,-5607,-5637,-5666,-5697,-5736,-5788,-5847,-5906,-5967,
+-6042,-6135,-6238,-6341,-6440,-6540,-6644,-6749,-6848,-6943,-7037,-7136,-7238,-7338,-7436,-7534,-7637,-7738,-7833,-7922,-8013,
+-8105,-8194,-8276,-8354,-8439,-8534,-8631,-8719,-8797,-8870,-8941,-9006,-9065,-9125,-9188,-9250,-9305,-9358,-9417,-9474,-9518,
+-9553,-9597,-9647,-9680,-9680,-9661,-9648,-9655,-9685,-9750,-9846,-9937,-9983,-9988,-9990,-10011,-10041,-10065,-10083,-10096,-10099,
+-10096,-10097,-10091,-10067,-10056,-10112,-10230,-10332,-10358,-10336,-10313,-10273,-10162,-9992,-9824,-9674,-9509,-9343,-9253,-9272,-9331,
+-9365,
+-9410-9525,-9671,-9736,-9689,-9604,-9551,-9515,-9455,-9374,-9295,-9210,-9096,-8955,-8818,-8698,-8586,-8472,-8351,-8214,
+-8061,-7910,-7781,-7663,-7529,-7367,-7198,-7041,-6888,-6725,-6548,-6369,-6197,-6038,-5900,-5786,-5691,-5616,-5577,-5595,-5670,
+-5773,-5870,-5940,-5968,-5932,-5801,-5570,-5277,-4984,-4737,-4540,-4365,-4180,-3971,-3756,-3576,-3453,-3371,-3286,-3176,-3051,
+-2926,-2802,-2669,-2532,-2404,-2295,-2199,-2106,-2010,-1902,-1785,-1673,-1583,-1516,-1456,-1393,-1333,-1283,-1231,-1161,-1077,
+-995,-925,-856,-779,-697,-619,-541,-454,-358,-257,-151,-32,95,214,314,405,499,597,692,787,889,
+995,1094,1189,1292,1402,1498,1567,1619,1680,1767,1875,1987,2087,2176,2270,2380,2496,2605,2719,2853,2992,
+3103,3177,3237,3295,3331,3343,3369,3458,3618,3817,4025,4214,4354,4443,4529,4663,4828,4961,5033,5083,5152,
+5233,5293,5323,5339,5364,5409,5466,5512,5535,5571,5674,5854,6070,6291,6511,6706,6819,6821,6747,6645,6548,
+6515,6639,6925,7211,7317,7245,7131,7022,6823,6503,6192,5990,5796,5471,5115,5018,5309,5798,6197,6411,6523,
+6609,6662,6672,6671,6678,6670,6634,6595,6579,6579,6577,6575,6582,6590,6598,6615,6640,6650,6640,6655,6719,
+6765,6687,6490,6311,6278,6361,6423,6378,6266,6171,6128,6125,6149,6203,6280,6352,6392,6395,6386,6392,6411,
+6418,6394,6358,6339,6333,6312,6274,6253,6266,6284,6275,6254,6253,6270,6276,6261,6244,6234,6219,6197,6182,
+6170,6140,6085,6038,6025,6037,6042,6032,6014,5984,5934,5880,5852,5850,5842,5812,5791,5814,5845,5796,5624,
+5402,5258,5233,5251,5236,5229,5321,5488,5589,5528,5379,5276,5242,5195,5099,5019,4999,4989,4937,4890,4930,
+5038,5102,5053,4940,4841,4771,4699,4621,4577,4604,4699,4823,4905,4876,4720,4508,4345,4275,4252,4206,4121,
+4032,3966,3918,3873,3829,3793,3762,3721,3662,3594,3538,3500,3468,3425,3365,3307,3266,3238,3204,3152,3091,
+3046,3028,3024,3002,2950,2889,2841,2797,2736,2669,2650,2701,2771,2781,2718,2640,2602,2594,2573,2530,2500,
+2516,2578,2647,2678,2652,2586,2519,2467,2412,2345,2284,2250,2236,2215,2181,2146,2117,2087,2056,2024,1978,
+1901,1811,1753,1750,1774,1786,1775,1754,1729,1697,1666,1646,1634,1618,1595,1574,1558,1542,1526,1514,1502,
+1486,1470,1464,1475,1495,1517,1532,1533,1510,1468,1421,1375,1320,1253,1188,1142,1122,1122,1129,1129,1112,
+1084,1063,1063,1079,1097,1109,1115,1114,1107,1101,1098,1095,1090,1093,1112,1139,1158,1168,1179,1193,1203,
+1207,1216,1241,1275,1306,1327,1339,1344,1346,1349,1355,1361,1373,1401,1436,1457,1453,1440,1437,1433,1411,
+1380,1372,1399,1443,1489,1541,1585,1582,1525,1465,1460,1499,1525,1507,1476,1461,1451,1421,1382,1358,1349,
+1338,1318,1302,1292,1277,1246,1211,1184,1162,1139,1114,1093,1074,1056,1036,1014,989,960,928,897,867,
+838,811,784,759,737,719,702,682,657,633,613,596,575,549,520,489,458,424,387,348,313,
+281,253,225,196,167,139,108,73,36,0,-35,-70,-105,-142,-179,-215,-252,-291,-333,-376,-418,
+-460,-501,-541,-580,-622,-667,-712,-753,-796,-845,-896,-941,-977,-1012,-1048,-1083,-1119,-1160,-1204,-1246,-1282,
+-1319,-1362,-1409,-1455,-1502,-1551,-1599,-1644,-1687,-1730,-1770,-1803,-1836,-1875,-1919,-1962,-1999,-2036,-2074,-2114,-2154,
+-2191,-2225,-2258,-2289,-2321,-2353,-2383,-2415,-2450,-2486,-2520,-2552,-2584,-2618,-2652,-2684,-2712,-2738,-2766,-2797,-2830,
+-2861,-2890,-2918,-2946,-2977,-3008,-3038,-3065,-3090,-3115,-3140,-3162,-3179,-3193,-3209,-3226,-3240,-3248,-3256,-3269,-3286,
+-3300,-3309,-3316,-3322,-3326,-3331,-3337,-3345,-3353,-3356,-3354,-3347,-3340,-3340,-3346,-3352,-3352,-3346,-3337,-3325,-3313,
+-3305,-3299,-3290,-3278,-3264,-3250,-3233,-3211,-3189,-3168,-3148,-3121,-3090,-3059,-3032,-3004,-2973,-2937,-2898,-2860,-2823,
+-2786,-2747,-2708,-2671,-2636,-2600,-2567,-2540,-2516,-2488,-2454,-2419,-2385,-2350,-2313,-2277,-2243,-2205,-2161,-2116,-2074,
+-2032,-1985,-1940,-1900,-1861,-1817,-1770,-1726,-1685,-1644,-1603,-1564,-1523,-1480,-1436,-1398,-1362,-1325,-1286,-1251,-1218,
+-1183,-1147,-1113,-1081,-1048,-1016,-990,-964,-931,-896,-867,-842,-814,-782,-754,-732,-710,-684,-655,-626,-591,
+-554,-520,-491,-462,-433,-403,-368,-330,-298,-275,-254,-224,-192,-171,-154,-127,-90,-55,-26,5,40,
+71,104,147,197,237,271,313,364,410,448,490,535,569,596,641,705,760,797,847,925,1001,
+1045,1072,1109,1141,1133,1089,1055,1062,1104,1157,1196,1203,1184,1175,1200,1235,1234,1196,1167,1175,1194,
+1181,1132,1106,1185,1395,1645,1789,1771,1702,1735,1897,2079,2166,2122,1959,1705,1415,1149,910,663,435,
+344,480,798,1138,1324,1235,854,318,-143,-382,-445,-478,-551,-630,-675,-701,-734,-774,-810,-837,-854,
+-872,-913,-989,-1075,-1137,-1162,-1155,-1111,-1045,-1008,-1046,-1132,-1192,-1196,-1185,-1205,-1272,-1389,-1557,-1748,-1905,
+-2010,-2091,-2172,-2241,-2295,-2361,-2452,-2533,-2571,-2589,-2626,-2679,-2716,-2730,-2744,-2775,-2816,-2858,-2898,-2929,-2948,
+-2963,-2985,-3007,-3024,-3051,-3097,-3144,-3167,-3172,-3185,-3215,-3248,-3276,-3304,-3326,-3329,-3322,-3327,-3351,-3383,-3432,
+-3528,-3675,-3824,-3922,-3961,-3972,-3984,-3999,-4013,-4023,-4029,-4031,-4030,-4029,-4029,-4025,-4012,-3986,-3947,-3907,-3872,
+-3842,-3804,-3753,-3696,-3636,-3572,-3505,-3439,-3377,-3315,-3247,-3177,-3110,-3049,-2995,-2945,-2891,-2828,-2757,-2686,-2617,
+-2546,-2472,-2400,-2333,-2261,-2184,-2108,-2036,-1962,-1883,-1807,-1739,-1672,-1595,-1512,-1432,-1355,-1275,-1192,-1111,-1032,
+-952,-875,-810,-754,-694,-620,-541,-470,-405,-338,-262,-187,-124,-70,-16,40,92,135,176,224,281,
+336,379,412,444,479,513,544,575,610,645,677,705,736,774,819,865,911,953,986,1011,1034,
+1068,1112,1153,1184,1211,1245,1279,1302,1319,1347,1392,1441,1480,1511,1545,1589,1644,1702,1742,1747,1721,
+1696,1703,1743,1792,1828,1848,1859,1867,1880,1898,1914,1924,1931,1944,1963,1983,2001,2019,2043,2068,2089,
+2102,2111,2126,2153,2184,2206,2218,2244,2305,2397,2494,2582,2673,2785,2915,3038,3124,3159,3150,3118,3088,
+3073,3078,3101,3134,3168,3194,3207,3206,3188,3160,3136,3127,3122,3105,3074,3045,3030,3023,3012,2995,2967,
+2925,2871,2818,2783,2769,2768,2770,2768,2764,2764,2775,2794,2808,2808,2800,2786,2760,2719,2676,2648,2637,
+2630,2623,2615,2615,2630,2649,2661,2661,2643,2607,2556,2503,2458,2427,2405,2390,2378,2365,2344,2313,2277,
+2240,2208,2184,2168,2155,2136,2111,2091,2097,2135,2185,2217,2216,2190,2159,2136,2127,2130,2135,2128,2100,
+2067,2049,2051,2058,2054,2034,1997,1945,1883,1825,1776,1724,1660,1591,1533,1484,1429,1360,1288,1227,1175,
+1114,1029,926,822,735,672,626,578,511,421,318,219,132,50,-33,-112,-173,-213,-245,-285,-328,
+-361,-376,-376,-371,-368,-379,-409,-449,-482,-505,-532,-566,-595,-609,-627,-676,-758,-847,-918,-964,-986,
+-982,-961,-942,-930,-913,-882,-851,-839,-845,-856,-867,-889,-924,-965,-1004,-1043,-1079,-1099,-1097,-1090,-1099,
+-1132,-1171,-1194,-1190,-1176,-1182,-1218,-1266,-1301,-1314,-1313,-1297,-1260,-1220,-1199,-1202,-1199,-1176,-1152,-1148,-1152,
+-1139,-1114,-1108,-1121,-1134,-1143,-1174,-1223,-1244,-1208,-1153,-1142,-1193,-1276,-1374,-1497,-1651,-1809,-1945,-2054,-2149,
+-2241,-2341,-2461,-2589,-2681,-2704,-2678,-2655,-2667,-2700,-2735,-2770,-2815,-2870,-2928,-2989,-3057,-3126,-3189,-3245,-3300,
+-3355,-3405,-3455,-3515,-3591,-3676,-3761,-3845,-3925,-3995,-4059,-4144,-4270,-4435,-4618,-4807,-4995,-5162,-5273,-5317,-5326,
+-5340,-5368,-5392,-5407,-5435,-5487,-5550,-5595,-5606,-5579,-5515,-5437,-5377,-5357,-5358,-5352,-5338,-5339,-5368,-5406,-5437,
+-5467,-5509,-5561,-5606,-5640,-5670,-5704,-5743,-5782,-5822,-5867,-5919,-5983,-6060,-6147,-6239,-6333,-6433,-6538,-6643,-6744,
+-6840,-6934,-7030,-7129,-7229,-7330,-7428,-7525,-7624,-7723,-7821,-7917,-8013,-8107,-8195,-8275,-8354,-8443,-8542,-8638,-8722,
+-8797,-8870,-8940,-9004,-9065,-9131,-9203,-9268,-9320,-9369,-9425,-9483,-9530,-9570,-9616,-9665,-9696,-9694,-9675,-9659,-9655,
+-9674,-9733,-9833,-9936,-9995,-10007,-10009,-10029,-10058,-10084,-10105,-10118,-10121,-10124,-10140,-10163,-10174,-10189,-10243,-10332,-10397,
+-10397,
+-10365,-10345,-10310,-10204,-10032,-9855,-9699,-9539,-9382,-9294,-9305,-9363,-9415,-9486,-9614,-9754,-9807,-9753,-9664,-9604,-9559,
+-9492,-9406,-9323,-9233,-9118,-8980,-8842,-8714,-8590,-8468,-8343,-8206,-8056,-7910,-7788,-7675,-7538,-7370,-7195,-7035,-6882,
+-6721,-6546,-6366,-6190,-6023,-5873,-5743,-5635,-5552,-5512,-5533,-5612,-5723,-5827,-5889,-5891,-5833,-5718,-5549,-5330,-5076,
+-4817,-4579,-4366,-4159,-3943,-3728,-3549,-3426,-3345,-3268,-3165,-3038,-2900,-2762,-2622,-2484,-2355,-2242,-2140,-2045,-1950,
+-1850,-1742,-1631,-1531,-1448,-1376,-1308,-1247,-1197,-1148,-1082,-998,-915,-848,-787,-716,-637,-563,-497,-423,-330,
+-225,-112,11,147,280,390,481,569,661,756,857,968,1082,1183,1273,1365,1464,1555,1624,1680,1749,
+1847,1963,2074,2165,2242,2326,2431,2546,2660,2780,2917,3051,3146,3193,3220,3249,3279,3317,3399,3550,3752,
+3961,4155,4322,4448,4535,4624,4756,4905,5006,5042,5070,5141,5236,5310,5348,5375,5410,5447,5477,5507,5560,
+5669,5857,6108,6371,6591,6733,6783,6756,6693,6618,6527,6432,6430,6635,7013,7352,7459,7355,7182,7001,6764,
+6469,6198,5959,5639,5202,4853,4863,5258,5785,6186,6413,6550,6652,6704,6712,6711,6715,6705,6672,6639,6622,
+6612,6602,6598,6608,6622,6636,6660,6696,6722,6722,6705,6675,6606,6475,6330,6268,6334,6456,6524,6497,6429,
+6381,6362,6356,6361,6384,6416,6432,6425,6411,6408,6418,6425,6415,6388,6360,6345,6336,6314,6284,6265,6267,
+6274,6273,6277,6303,6337,6348,6328,6294,6261,6231,6208,6199,6194,6172,6128,6083,6056,6042,6030,6016,6004,
+5982,5941,5895,5865,5854,5844,5826,5817,5831,5844,5802,5677,5510,5379,5322,5303,5279,5264,5304,5385,5427,
+5385,5310,5274,5267,5223,5135,5063,5044,5033,4983,4924,4917,4961,4991,4967,4912,4862,4815,4759,4705,4687,
+4728,4824,4942,5015,4966,4777,4536,4365,4313,4314,4280,4189,4092,4029,3990,3944,3885,3832,3793,3753,3694,
+3620,3557,3523,3507,3477,3420,3349,3291,3256,3230,3188,3130,3075,3041,3024,2999,2953,2901,2862,2831,2784,
+2714,2649,2620,2620,2621,2614,2610,2617,2617,2589,2535,2479,2453,2473,2528,2585,2605,2576,2515,2448,2389,
+2341,2305,2280,2255,2225,2192,2154,2110,2073,2065,2076,2050,1950,1816,1738,1749,1797,1816,1797,1769,1744,
+1715,1681,1654,1636,1616,1593,1574,1564,1554,1543,1534,1529,1522,1514,1513,1524,1543,1563,1574,1569,1540,
+1493,1447,1406,1359,1297,1231,1181,1161,1165,1178,1179,1157,1120,1093,1090,1105,1120,1128,1133,1135,1131,
+1121,1111,1102,1095,1095,1110,1134,1153,1164,1174,1189,1205,1217,1231,1254,1284,1313,1333,1345,1350,1351,
+1354,1357,1361,1371,1396,1434,1468,1480,1468,1444,1416,1393,1393,1421,1463,1495,1523,1563,1600,1594,1532,
+1469,1461,1501,1534,1529,1512,1506,1498,1469,1432,1414,1411,1398,1368,1340,1325,1312,1290,1260,1231,1206,
+1180,1155,1135,1118,1098,1075,1051,1030,1006,979,949,919,889,859,828,796,768,747,730,711,685,
+658,635,618,602,581,556,528,499,466,428,385,345,311,282,256,230,204,176,143,106,67,
+29,-6,-41,-77,-112,-146,-178,-213,-251,-292,-334,-377,-419,-462,-504,-545,-588,-633,-673,-710,-750,
+-797,-846,-890,-928,-968,-1010,-1050,-1088,-1130,-1174,-1217,-1253,-1289,-1330,-1375,-1420,-1466,-1515,-1561,-1604,-1646,
+-1691,-1734,-1771,-1805,-1840,-1879,-1916,-1949,-1983,-2021,-2060,-2098,-2134,-2167,-2198,-2229,-2261,-2293,-2324,-2354,-2386,
+-2419,-2449,-2476,-2505,-2539,-2578,-2615,-2647,-2674,-2702,-2732,-2765,-2798,-2829,-2859,-2889,-2921,-2954,-2985,-3012,-3036,
+-3060,-3087,-3113,-3132,-3147,-3163,-3181,-3197,-3207,-3216,-3229,-3244,-3257,-3267,-3274,-3279,-3282,-3284,-3287,-3292,-3299,
+-3305,-3307,-3305,-3303,-3305,-3313,-3319,-3319,-3312,-3301,-3288,-3276,-3267,-3260,-3251,-3239,-3225,-3213,-3199,-3182,-3163,
+-3145,-3123,-3095,-3062,-3030,-3003,-2976,-2947,-2914,-2878,-2839,-2799,-2758,-2718,-2681,-2647,-2613,-2579,-2547,-2521,-2496,
+-2467,-2433,-2401,-2371,-2338,-2302,-2267,-2234,-2196,-2152,-2108,-2069,-2028,-1982,-1937,-1898,-1859,-1814,-1767,-1725,-1686,
+-1645,-1604,-1566,-1529,-1488,-1445,-1406,-1371,-1334,-1296,-1260,-1225,-1188,-1152,-1121,-1093,-1060,-1027,-998,-971,-940,
+-907,-879,-856,-829,-799,-771,-747,-722,-694,-668,-641,-607,-569,-534,-503,-472,-442,-413,-382,-348,-318,
+-297,-276,-248,-215,-189,-167,-140,-108,-78,-48,-12,24,53,82,127,182,229,265,308,358,400,
+433,474,521,558,587,630,692,748,791,845,918,981,1009,1027,1061,1095,1100,1086,1088,1113,1150,
+1188,1216,1205,1150,1093,1079,1095,1104,1108,1147,1222,1280,1272,1200,1117,1110,1250,1504,1730,1809,1794,
+1848,2040,2262,2368,2325,2181,1967,1678,1329,975,688,535,559,747,1030,1318,1506,1474,1144,596,61,
+-268,-397,-460,-540,-610,-633,-635,-663,-724,-784,-819,-831,-851,-907,-997,-1081,-1126,-1127,-1086,-1003,-911,
+-880,-948,-1058,-1116,-1106,-1091,-1121,-1198,-1320,-1491,-1680,-1826,-1909,-1968,-2037,-2102,-2159,-2235,-2339,-2429,-2469,
+-2486,-2526,-2589,-2639,-2667,-2691,-2726,-2769,-2818,-2868,-2900,-2907,-2909,-2930,-2961,-2985,-3006,-3042,-3086,-3114,-3125,
+-3140,-3167,-3193,-3215,-3239,-3260,-3265,-3257,-3256,-3268,-3283,-3311,-3385,-3512,-3653,-3759,-3818,-3849,-3874,-3898,-3923,
+-3949,-3972,-3987,-3993,-3993,-3989,-3979,-3964,-3941,-3910,-3874,-3840,-3807,-3770,-3725,-3675,-3623,-3568,-3509,-3449,-3389,
+-3324,-3254,-3184,-3115,-3051,-2990,-2931,-2870,-2803,-2733,-2666,-2602,-2534,-2464,-2395,-2329,-2256,-2176,-2099,-2030,-1960,
+-1884,-1808,-1741,-1676,-1601,-1518,-1435,-1355,-1275,-1194,-1115,-1035,-950,-865,-790,-730,-669,-595,-514,-436,-363,
+-287,-206,-131,-70,-19,33,91,143,183,217,260,317,377,427,464,493,522,552,585,621,657,
+689,715,739,770,810,858,905,948,983,1009,1026,1043,1074,1117,1157,1184,1206,1236,1267,1285,1292,
+1312,1357,1418,1477,1526,1568,1607,1649,1693,1729,1738,1721,1701,1709,1747,1795,1830,1850,1860,1869,1878,
+1887,1894,1897,1904,1919,1937,1951,1961,1974,1995,2019,2041,2057,2068,2082,2109,2145,2175,2190,2201,2232,
+2285,2347,2407,2474,2564,2682,2813,2934,3021,3062,3064,3045,3025,3018,3031,3064,3103,3131,3141,3135,3125,
+3115,3109,3107,3104,3087,3054,3018,2996,2989,2987,2977,2952,2910,2856,2805,2773,2763,2767,2771,2770,2765,
+2764,2773,2789,2800,2800,2793,2783,2769,2745,2714,2682,2654,2630,2615,2621,2611,2619,2635,2646,2638,2605,
+2550,2484,2420,2368,2328,2297,2275,2265,2263,2260,2241,2201,2148,2097,2062,2043,2035,2029,2024,2028,2054,
+2106,2164,2200,2200,2175,2144,2124,2124,2145,2173,2183,2170,2154,2154,2157,2134,2077,2007,1949,1899,1843,
+1781,1721,1667,1615,1561,1504,1437,1357,1274,1208,1164,1128,1075,995,902,812,738,677,620,558,483,
+392,290,186,91,5,-80,-166,-240,-295,-340,-389,-441,-480,-491,-481,-463,-450,-451,-468,-496,-523,
+-547,-575,-608,-636,-651,-665,-702,-770,-859,-950,-1023,-1060,-1055,-1031,-1014,-1004,-979,-932,-886,-866,-869,
+-877,-886,-907,-944,-986,-1026,-1069,-1114,-1145,-1150,-1140,-1137,-1155,-1187,-1212,-1215,-1201,-1197,-1221,-1264,-1301,
+-1321,-1327,-1316,-1278,-1229,-1204,-1211,-1218,-1201,-1181,-1185,-1197,-1180,-1142,-1127,-1154,-1195,-1228,-1257,-1280,-1270,
+-1219,-1179,-1207,-1296,-1400,-1501,-1623,-1776,-1929,-2051,-2148,-2242,-2340,-2445,-2567,-2698,-2797,-2827,-2801,-2771,-2771,
+-2796,-2829,-2867,-2913,-2961,-3006,-3058,-3125,-3202,-3274,-3336,-3395,-3447,-3491,-3536,-3601,-3687,-3778,-3858,-3927,-3993,
+-4060,-4137,-4243,-4387,-4550,-4709,-4864,-5031,-5190,-5296,-5328,-5326,-5340,-5375,-5401,-5414,-5446,-5514,-5583,-5603,-5561,
+-5484,-5410,-5360,-5345,-5357,-5370,-5362,-5342,-5344,-5383,-5437,-5479,-5507,-5540,-5584,-5627,-5660,-5693,-5735,-5782,-5823,
+-5857,-5893,-5942,-6007,-6080,-6156,-6235,-6325,-6428,-6536,-6638,-6733,-6829,-6929,-7028,-7125,-7223,-7323,-7422,-7517,-7610,
+-7708,-7809,-7910,-8008,-8101,-8188,-8271,-8356,-8450,-8549,-8641,-8721,-8794,-8867,-8935,-8996,-9058,-9132,-9214,-9285,-9335,
+-9380,-9434,-9496,-9550,-9594,-9639,-9680,-9703,-9702,-9689,-9674,-9663,-9669,-9723,-9828,-9941,-10007,-10020,-10021,-10039,-10068,
+-10093,-10114,-10132,-10141,-10145,-10160,-10192,-10225,-10255,-10303,-10369,-10418,-10423,-10406,-10393,-10359,-10253,-10082,-9904,-9752,-9612,
+-9483,
+-9409,-9413,-9466,-9530,-9619,-9745,-9857,-9884,-9821,-9734,-9670,-9611,-9532,-9441,-9352,-9258,-9141,-9005,-8867,-8733,-8602,
+-8474,-8344,-8202,-8049,-7906,-7787,-7671,-7529,-7358,-7183,-7023,-6873,-6716,-6548,-6369,-6185,-6008,-5845,-5702,-5578,-5488,
+-5452,-5478,-5556,-5662,-5761,-5812,-5792,-5715,-5621,-5524,-5389,-5176,-4894,-4602,-4347,-4130,-3923,-3719,-3539,-3407,-3320,
+-3247,-3155,-3030,-2879,-2722,-2572,-2435,-2312,-2200,-2094,-1990,-1888,-1790,-1691,-1587,-1480,-1380,-1293,-1218,-1153,-1099,
+-1048,-984,-903,-824,-763,-713,-650,-573,-501,-441,-377,-288,-179,-62,62,200,340,461,555,638,724,
+820,927,1045,1163,1267,1354,1437,1525,1612,1686,1755,1837,1939,2051,2153,2236,2308,2389,2489,2603,2722,
+2846,2976,3089,3157,3180,3189,3221,3284,3384,3529,3716,3911,4087,4244,4389,4510,4607,4716,4865,5017,5102,
+5107,5104,5158,5255,5339,5389,5430,5476,5512,5533,5572,5677,5865,6116,6389,6637,6804,6844,6760,6630,6548,
+6525,6495,6435,6450,6666,7042,7373,7494,7417,7244,7021,6759,6512,6311,6057,5608,5034,4653,4729,5199,5754,
+6159,6401,6564,6680,6738,6752,6755,6756,6742,6713,6687,6669,6650,6630,6622,6630,6647,6668,6700,6743,6777,
+6778,6732,6636,6500,6361,6281,6301,6400,6505,6559,6562,6554,6553,6548,6528,6508,6500,6496,6484,6465,6455,
+6457,6457,6444,6422,6398,6376,6354,6336,6324,6321,6322,6323,6322,6325,6343,6374,6400,6402,6377,6337,6297,
+6264,6242,6235,6231,6213,6175,6127,6083,6050,6031,6023,6015,5996,5965,5932,5908,5890,5872,5852,5833,5816,
+5801,5779,5732,5648,5541,5440,5366,5320,5297,5300,5314,5313,5284,5251,5235,5222,5183,5125,5087,5080,5071,
+5029,4971,4935,4930,4932,4924,4906,4881,4845,4811,4798,4811,4841,4887,4946,4978,4918,4743,4524,4376,4340,
+4351,4322,4239,4154,4107,4075,4021,3942,3869,3818,3776,3718,3645,3581,3546,3533,3513,3468,3400,3333,3283,
+3248,3211,3160,3105,3060,3029,3000,2962,2915,2873,2840,2809,2762,2694,2620,2571,2573,2630,2706,2748,2725,
+2649,2556,2476,2424,2419,2473,2565,2636,2627,2539,2425,2348,2324,2325,2312,2277,2238,2207,2166,2107,2063,
+2082,2142,2150,2041,1868,1755,1757,1814,1844,1825,1791,1760,1727,1688,1655,1632,1609,1586,1569,1561,1557,
+1551,1545,1543,1542,1543,1551,1567,1583,1594,1596,1584,1552,1508,1466,1431,1391,1336,1273,1220,1194,1195,
+1208,1211,1188,1147,1117,1116,1133,1147,1152,1153,1155,1152,1141,1127,1117,1111,1112,1122,1140,1158,1172,
+1185,1202,1219,1233,1246,1264,1285,1306,1325,1341,1355,1365,1369,1371,1371,1375,1391,1423,1462,1487,1483,
+1455,1426,1424,1457,1507,1540,1544,1542,1564,1600,1605,1561,1505,1488,1511,1537,1543,1541,1544,1538,1511,
+1478,1465,1466,1454,1420,1383,1360,1345,1324,1296,1268,1243,1219,1197,1179,1162,1141,1117,1093,1073,1052,
+1029,1002,974,946,916,880,841,803,775,755,736,713,687,662,642,626,610,590,564,535,502,
+462,417,374,337,307,282,258,233,207,176,140,101,61,22,-13,-47,-79,-109,-139,-171,-207,
+-247,-287,-328,-371,-416,-461,-507,-553,-598,-638,-673,-710,-752,-798,-840,-879,-923,-969,-1013,-1053,-1097,
+-1143,-1185,-1222,-1259,-1300,-1343,-1385,-1429,-1475,-1521,-1562,-1601,-1645,-1689,-1729,-1764,-1798,-1833,-1865,-1896,-1928,
+-1962,-1998,-2032,-2067,-2101,-2135,-2168,-2203,-2237,-2269,-2298,-2328,-2357,-2384,-2410,-2439,-2475,-2516,-2555,-2588,-2616,
+-2642,-2670,-2701,-2734,-2768,-2802,-2835,-2867,-2899,-2929,-2955,-2977,-3000,-3027,-3055,-3078,-3096,-3113,-3133,-3152,-3167,
+-3179,-3190,-3203,-3215,-3226,-3236,-3243,-3246,-3246,-3247,-3250,-3255,-3262,-3268,-3271,-3271,-3275,-3282,-3287,-3286,-3280,
+-3270,-3257,-3245,-3234,-3225,-3215,-3202,-3189,-3177,-3163,-3146,-3128,-3110,-3088,-3060,-3029,-3001,-2976,-2949,-2920,-2889,
+-2855,-2816,-2773,-2730,-2691,-2659,-2629,-2598,-2565,-2534,-2507,-2479,-2447,-2413,-2383,-2356,-2325,-2289,-2254,-2220,-2182,
+-2138,-2098,-2063,-2026,-1980,-1935,-1895,-1855,-1811,-1765,-1727,-1692,-1652,-1609,-1571,-1535,-1495,-1452,-1414,-1379,-1342,
+-1303,-1267,-1233,-1197,-1162,-1132,-1106,-1075,-1041,-1010,-981,-950,-918,-890,-867,-842,-816,-789,-762,-731,-699,
+-673,-648,-619,-584,-552,-522,-489,-455,-426,-400,-370,-340,-316,-298,-276,-249,-222,-192,-158,-124,-96,
+-68,-29,11,42,70,112,167,214,252,296,346,384,412,448,500,548,586,629,683,732,775,
+831,901,952,973,988,1019,1048,1057,1064,1093,1139,1186,1235,1274,1266,1204,1142,1128,1146,1157,1174,
+1233,1319,1374,1368,1305,1200,1112,1153,1378,1669,1844,1884,1952,2155,2388,2485,2423,2294,2131,1869,1484,
+1071,782,707,826,1053,1308,1539,1689,1649,1320,753,168,-219,-380,-436,-489,-540,-561,-571,-610,-679,
+-746,-791,-822,-868,-941,-1022,-1075,-1086,-1057,-989,-880,-778,-762,-847,-946,-972,-949,-968,-1058,-1179,-1303,
+-1451,-1615,-1743,-1810,-1851,-1905,-1965,-2022,-2097,-2196,-2283,-2329,-2357,-2411,-2484,-2545,-2586,-2621,-2659,-2704,-2761,
+-2823,-2861,-2861,-2853,-2872,-2907,-2930,-2943,-2976,-3030,-3079,-3109,-3135,-3165,-3187,-3196,-3204,-3213,-3216,-3212,-3214,
+-3223,-3228,-3236,-3276,-3363,-3473,-3573,-3648,-3704,-3750,-3792,-3836,-3880,-3918,-3941,-3954,-3959,-3952,-3934,-3912,-3893,
+-3871,-3842,-3809,-3773,-3734,-3691,-3645,-3597,-3549,-3499,-3448,-3393,-3329,-3258,-3185,-3115,-3048,-2980,-2915,-2850,-2783,
+-2716,-2653,-2590,-2522,-2452,-2387,-2325,-2254,-2175,-2101,-2035,-1969,-1894,-1818,-1753,-1692,-1623,-1544,-1460,-1376,-1290,
+-1204,-1124,-1046,-963,-876,-795,-724,-658,-585,-508,-432,-356,-276,-192,-116,-54,-1,55,117,173,215,
+248,285,334,390,441,481,510,534,561,596,636,674,704,728,753,785,827,877,923,959,984,
+1001,1013,1029,1057,1098,1138,1167,1191,1223,1256,1274,1276,1286,1323,1387,1459,1522,1572,1606,1629,1653,
+1679,1697,1701,1705,1726,1766,1809,1839,1854,1860,1863,1863,1863,1862,1863,1871,1886,1901,1911,1920,1936,
+1961,1987,2009,2026,2039,2052,2074,2110,2149,2175,2190,2207,2234,2268,2305,2352,2418,2505,2611,2726,2836,
+2922,2974,2995,2997,2989,2990,3013,3053,3088,3100,3096,3091,3092,3095,3095,3088,3067,3029,2985,2958,2954,
+2961,2956,2929,2884,2831,2786,2760,2755,2760,2763,2761,2759,2763,2773,2783,2786,2783,2776,2771,2766,2757,
+2740,2714,2681,2647,2621,2623,2605,2600,2599,2586,2548,2484,2405,2328,2261,2201,2147,2102,2074,2071,2091,
+2115,2122,2100,2057,2007,1964,1933,1922,1929,1948,1975,2018,2079,2137,2167,2164,2146,2134,2132,2141,2163,
+2192,2211,2218,2228,2246,2240,2174,2057,1942,1872,1836,1799,1741,1670,1601,1542,1490,1437,1372,1295,1218,
+1157,1111,1067,1014,948,875,801,729,661,595,529,457,370,266,156,54,-35,-122,-215,-304,-377,
+-433,-487,-541,-578,-583,-563,-538,-522,-519,-528,-548,-575,-607,-639,-668,-690,-703,-715,-738,-784,-856,
+-950,-1040,-1095,-1101,-1083,-1073,-1068,-1041,-986,-934,-915,-918,-919,-916,-927,-962,-1008,-1053,-1096,-1136,-1162,
+-1169,-1165,-1167,-1184,-1212,-1237,-1245,-1236,-1230,-1245,-1275,-1302,-1320,-1333,-1333,-1305,-1259,-1232,-1236,-1245,-1234,
+-1224,-1238,-1253,-1227,-1175,-1157,-1202,-1269,-1310,-1318,-1308,-1281,-1245,-1241,-1306,-1420,-1535,-1635,-1745,-1877,-2007,
+-2118,-2220,-2324,-2424,-2516,-2618,-2736,-2839,-2884,-2875,-2853,-2853,-2878,-2917,-2967,-3022,-3071,-3109,-3152,-3214,-3289,
+-3363,-3428,-3486,-3535,-3577,-3626,-3697,-3787,-3873,-3942,-3997,-4054,-4124,-4220,-4358,-4531,-4702,-4838,-4950,-5070,-5201,
+-5297,-5330,-5328,-5341,-5375,-5400,-5416,-5457,-5533,-5592,-5576,-5487,-5386,-5329,-5324,-5345,-5366,-5371,-5357,-5342,-5353,
+-5400,-5462,-5511,-5540,-5567,-5603,-5643,-5681,-5719,-5766,-5816,-5860,-5895,-5930,-5977,-6037,-6101,-6163,-6233,-6322,-6429,
+-6535,-6632,-6724,-6823,-6929,-7030,-7124,-7219,-7322,-7424,-7518,-7606,-7700,-7799,-7899,-7994,-8084,-8173,-8261,-8351,-8447,
+-8544,-8634,-8712,-8786,-8859,-8926,-8985,-9048,-9127,-9215,-9290,-9341,-9385,-9441,-9506,-9566,-9614,-9655,-9686,-9703,-9707,
+-9704,-9693,-9673,-9667,-9717,-9829,-9949,-10017,-10027,-10026,-10045,-10076,-10102,-10123,-10147,-10164,-10169,-10176,-10199,-10231,-10260,
+-10299,
+-10358-10422,-10463,-10476,-10469,-10426,-10323,-10167,-10004,-9864,-9743,-9641,-9582,-9583,-9628,-9700,-9793,-9895,-9960,-9948,
+-9877,-9797,-9730,-9659,-9570,-9475,-9382,-9280,-9158,-9022,-8887,-8756,-8627,-8500,-8366,-8216,-8057,-7912,-7789,-7663,-7513,
+-7343,-7176,-7021,-6872,-6717,-6551,-6369,-6176,-5990,-5826,-5681,-5552,-5458,-5423,-5448,-5514,-5602,-5687,-5726,-5680,-5577,
+-5492,-5457,-5404,-5236,-4940,-4603,-4312,-4086,-3889,-3698,-3524,-3386,-3288,-3211,-3125,-3007,-2853,-2683,-2521,-2382,-2261,
+-2151,-2044,-1939,-1834,-1734,-1637,-1535,-1424,-1313,-1212,-1123,-1044,-978,-923,-865,-795,-724,-669,-627,-575,-505,
+-435,-378,-319,-235,-125,-7,115,251,394,521,621,703,789,888,1001,1124,1244,1348,1432,1509,1589,
+1671,1753,1838,1933,2035,2133,2218,2292,2361,2439,2536,2653,2781,2907,3019,3100,3139,3151,3174,3239,3357,
+3522,3714,3901,4054,4175,4297,4436,4573,4695,4829,5000,5166,5245,5225,5187,5217,5311,5407,5470,5520,5575,
+5623,5664,5741,5900,6133,6382,6598,6759,6840,6803,6656,6498,6443,6492,6539,6523,6528,6670,6933,7180,7308,
+7312,7210,7001,6740,6541,6414,6173,5648,4975,4548,4633,5121,5687,6113,6386,6571,6693,6756,6787,6806,6807,
+6784,6755,6735,6719,6694,6667,6651,6654,6672,6704,6748,6793,6823,6819,6765,6658,6522,6411,6374,6411,6482,
+6541,6576,6599,6619,6626,6608,6575,6550,6541,6537,6527,6516,6512,6509,6494,6468,6447,6435,6418,6387,6358,
+6352,6368,6384,6385,6381,6388,6409,6428,6431,6415,6385,6349,6317,6294,6283,6280,6275,6258,6227,6182,6133,
+6092,6069,6057,6041,6017,5992,5975,5960,5938,5911,5881,5843,5797,5761,5757,5770,5747,5656,5523,5407,5344,
+5321,5312,5303,5293,5276,5248,5208,5167,5136,5127,5135,5139,5121,5077,5026,4984,4957,4945,4942,4934,4906,
+4871,4861,4890,4930,4939,4918,4898,4884,4831,4703,4536,4413,4372,4366,4332,4265,4208,4183,4156,4092,3996,
+3907,3845,3797,3741,3677,3618,3576,3549,3527,3497,3450,3390,3327,3272,3225,3181,3136,3092,3054,3021,2988,
+2946,2901,2868,2854,2841,2794,2707,2630,2633,2736,2870,2927,2862,2723,2588,2498,2445,2431,2480,2593,2701,
+2710,2598,2441,2341,2329,2349,2339,2293,2248,2220,2181,2114,2062,2087,2171,2209,2118,1940,1802,1777,1827,
+1865,1857,1823,1785,1743,1699,1661,1635,1612,1588,1568,1558,1557,1557,1556,1555,1556,1564,1581,1600,1613,
+1614,1604,1582,1548,1511,1477,1448,1414,1368,1311,1258,1222,1212,1221,1226,1206,1164,1131,1128,1150,1171,
+1177,1175,1174,1169,1158,1144,1134,1132,1134,1142,1155,1170,1184,1199,1217,1235,1251,1263,1276,1289,1303,
+1318,1340,1365,1385,1395,1396,1394,1393,1401,1426,1466,1500,1504,1479,1455,1465,1510,1561,1582,1571,1557,
+1570,1608,1634,1621,1583,1553,1551,1563,1575,1584,1590,1582,1554,1525,1511,1508,1495,1461,1423,1395,1375,
+1352,1325,1298,1276,1256,1236,1217,1199,1179,1157,1136,1115,1092,1067,1042,1018,994,966,931,890,847,
+811,785,764,743,718,691,667,649,635,619,595,564,529,489,445,402,365,333,306,281,257,
+233,207,176,141,102,61,22,-10,-39,-67,-98,-131,-167,-204,-241,-278,-319,-364,-412,-460,-508,
+-555,-599,-638,-675,-715,-759,-802,-844,-888,-933,-975,-1016,-1060,-1106,-1148,-1185,-1223,-1267,-1310,-1350,-1390,
+-1434,-1479,-1519,-1558,-1599,-1641,-1681,-1716,-1750,-1781,-1811,-1841,-1873,-1905,-1936,-1966,-1997,-2032,-2070,-2109,-2148,
+-2185,-2218,-2249,-2279,-2308,-2334,-2361,-2393,-2430,-2470,-2507,-2538,-2564,-2589,-2616,-2645,-2676,-2710,-2746,-2781,-2813,
+-2842,-2869,-2894,-2915,-2938,-2964,-2993,-3020,-3041,-3061,-3083,-3106,-3126,-3140,-3152,-3162,-3173,-3186,-3200,-3210,-3214,
+-3216,-3216,-3218,-3221,-3228,-3235,-3240,-3243,-3245,-3249,-3252,-3251,-3245,-3236,-3225,-3211,-3199,-3190,-3180,-3169,-3156,
+-3144,-3128,-3108,-3088,-3068,-3048,-3023,-2998,-2974,-2951,-2923,-2892,-2862,-2831,-2794,-2750,-2706,-2668,-2637,-2610,-2581,
+-2549,-2518,-2490,-2461,-2429,-2396,-2367,-2340,-2310,-2275,-2240,-2206,-2168,-2127,-2091,-2059,-2022,-1976,-1929,-1888,-1849,
+-1806,-1763,-1728,-1696,-1658,-1616,-1577,-1540,-1499,-1458,-1421,-1386,-1348,-1308,-1273,-1242,-1208,-1173,-1143,-1117,-1087,
+-1054,-1021,-992,-963,-933,-906,-880,-853,-827,-803,-776,-743,-708,-680,-656,-627,-595,-567,-541,-509,-475,
+-446,-423,-395,-362,-334,-316,-299,-279,-255,-222,-181,-141,-112,-86,-48,-5,30,61,102,151,195,
+231,277,329,370,396,430,480,533,579,625,673,714,750,799,858,900,919,941,975,1003,1013,
+1029,1069,1125,1189,1265,1330,1335,1282,1240,1254,1286,1293,1303,1352,1410,1428,1414,1386,1308,1185,1149,
+1332,1649,1873,1935,2006,2223,2474,2565,2480,2350,2212,1968,1583,1191,973,991,1171,1408,1630,1798,1857,
+1720,1322,731,152,-220,-358,-380,-403,-446,-485,-520,-567,-630,-693,-752,-816,-889,-963,-1014,-1028,-1012,
+-968,-881,-753,-647,-641,-728,-797,-782,-755,-829,-1003,-1173,-1289,-1397,-1534,-1663,-1734,-1763,-1788,-1819,-1852,
+-1900,-1969,-2039,-2096,-2155,-2232,-2315,-2387,-2451,-2516,-2575,-2627,-2688,-2758,-2802,-2803,-2795,-2815,-2850,-2866,-2874,
+-2916,-2993,-3068,-3116,-3150,-3181,-3198,-3195,-3186,-3182,-3182,-3184,-3194,-3210,-3221,-3224,-3238,-3277,-3337,-3405,-3476,
+-3545,-3612,-3680,-3752,-3820,-3868,-3892,-3905,-3911,-3905,-3884,-3860,-3842,-3826,-3803,-3771,-3736,-3698,-3654,-3609,-3564,
+-3520,-3478,-3436,-3389,-3329,-3256,-3180,-3109,-3041,-2973,-2905,-2839,-2774,-2710,-2646,-2579,-2506,-2432,-2367,-2307,-2242,
+-2168,-2096,-2033,-1969,-1895,-1821,-1757,-1700,-1638,-1564,-1482,-1396,-1306,-1218,-1136,-1060,-982,-898,-815,-738,-667,
+-596,-524,-451,-375,-294,-209,-129,-60,0,63,129,191,238,275,310,350,395,440,480,512,536,
+562,598,639,676,706,734,764,800,841,887,929,958,974,986,999,1016,1039,1073,1110,1143,1174,
+1212,1250,1275,1280,1286,1316,1371,1438,1501,1552,1583,1596,1606,1623,1645,1667,1693,1729,1774,1815,1841,
+1852,1851,1841,1828,1818,1815,1819,1831,1846,1861,1871,1884,1908,1938,1966,1988,2007,2024,2039,2059,2089,
+2125,2155,2175,2193,2214,2240,2270,2308,2355,2410,2478,2563,2663,2764,2854,2922,2961,2973,2976,2997,3038,
+3076,3089,3082,3075,3077,3079,3074,3062,3037,2997,2953,2927,2927,2937,2931,2898,2849,2798,2759,2740,2739,
+2746,2749,2749,2754,2765,2773,2771,2760,2750,2746,2747,2747,2743,2732,2712,2683,2651,2623,2591,2569,2548,
+2519,2470,2389,2286,2183,2098,2030,1966,1904,1852,1828,1839,1881,1934,1974,1993,1988,1961,1916,1870,1846,
+1854,1883,1920,1971,2037,2095,2119,2113,2112,2134,2163,2175,2173,2173,2186,2214,2253,2283,2261,2160,2010,
+1879,1807,1780,1754,1701,1624,1541,1467,1407,1354,1299,1241,1184,1130,1072,1011,956,908,858,792,711,
+632,563,502,435,348,239,120,9,-86,-178,-275,-371,-451,-511,-563,-611,-640,-637,-611,-586,-575,
+-577,-585,-602,-632,-670,-706,-728,-738,-743,-750,-762,-788,-841,-931,-1036,-1112,-1138,-1134,-1133,-1135,-1112,
+-1060,-1011,-994,-992,-976,-950,-946,-979,-1034,-1084,-1120,-1140,-1145,-1140,-1141,-1157,-1188,-1222,-1250,-1265,-1267,
+-1268,-1280,-1301,-1319,-1332,-1346,-1353,-1337,-1301,-1273,-1269,-1271,-1265,-1270,-1300,-1322,-1294,-1235,-1216,-1268,-1341,
+-1369,-1347,-1312,-1292,-1295,-1334,-1419,-1529,-1633,-1725,-1822,-1933,-2047,-2162,-2286,-2410,-2507,-2574,-2644,-2740,-2838,
+-2895,-2905,-2901,-2915,-2955,-3015,-3088,-3159,-3209,-3239,-3267,-3313,-3375,-3442,-3505,-3564,-3614,-3661,-3718,-3794,-3879,
+-3950,-4001,-4050,-4115,-4202,-4321,-4482,-4673,-4850,-4970,-5042,-5114,-5208,-5295,-5337,-5343,-5349,-5370,-5394,-5421,-5472,
+-5543,-5579,-5531,-5421,-5325,-5298,-5326,-5360,-5374,-5370,-5363,-5364,-5384,-5429,-5487,-5537,-5569,-5593,-5623,-5662,-5705,
+-5751,-5799,-5848,-5895,-5935,-5975,-6022,-6075,-6128,-6181,-6245,-6332,-6434,-6535,-6625,-6715,-6818,-6928,-7030,-7121,-7217,
+-7323,-7429,-7523,-7609,-7697,-7791,-7883,-7971,-8060,-8151,-8243,-8334,-8428,-8523,-8612,-8694,-8770,-8845,-8913,-8974,-9040,
+-9120,-9206,-9280,-9333,-9382,-9442,-9510,-9571,-9619,-9656,-9682,-9701,-9715,-9723,-9713,-9680,-9660,-9704,-9820,-9946,-10016,
+-10026,-10027,-10051,-10088,-10115,-10137,-10165,-10190,-10198,-10200,-10212,-10233,-10252,-10282,-10345,-10439,-10524,-10565,-10554,-10500,-10409,
+-10290,
+-10162,-10042,-9936,-9850,-9796,-9787,-9822,-9888,-9969,-10033,-10043,-9995,-9918,-9845,-9776,-9696,-9602,-9508,-9411,-9299,-9168,
+-9034,-8907,-8787,-8667,-8542,-8403,-8245,-8082,-7934,-7802,-7661,-7501,-7334,-7178,-7028,-6873,-6714,-6547,-6361,-6162,-5978,
+-5826,-5695,-5572,-5475,-5432,-5442,-5481,-5541,-5610,-5637,-5565,-5425,-5330,-5335,-5354,-5243,-4963,-4609,-4292,-4040,-3827,
+-3639,-3485,-3367,-3273,-3188,-3096,-2977,-2821,-2644,-2477,-2333,-2208,-2093,-1986,-1885,-1785,-1685,-1584,-1478,-1365,-1249,
+-1140,-1037,-938,-852,-789,-742,-690,-626,-568,-523,-479,-422,-361,-309,-256,-179,-73,44,166,299,441,
+573,677,762,849,951,1069,1197,1319,1423,1506,1578,1652,1730,1814,1909,2016,2119,2207,2278,2343,2412,
+2491,2589,2712,2849,2974,3061,3106,3125,3149,3209,3322,3488,3691,3895,4056,4155,4226,4330,4487,4660,4815,
+4968,5145,5309,5381,5344,5284,5302,5404,5518,5591,5638,5692,5759,5839,5960,6151,6375,6556,6652,6687,6689,
+6638,6525,6416,6406,6497,6584,6598,6584,6625,6725,6832,6927,7007,7012,6874,6651,6492,6408,6191,5664,4977,
+4524,4565,5003,5557,6025,6360,6577,6697,6760,6811,6851,6853,6819,6784,6770,6761,6739,6710,6691,6691,6714,
+6760,6817,6859,6872,6855,6809,6730,6632,6552,6520,6530,6555,6584,6617,6650,6666,6651,6616,6586,6574,6575,
+6574,6564,6551,6539,6525,6502,6477,6466,6467,6458,6429,6400,6394,6410,6420,6416,6412,6424,6445,6453,6439,
+6410,6376,6342,6315,6301,6299,6296,6288,6276,6258,6230,6191,6153,6124,6099,6068,6034,6013,6007,5999,5977,
+5946,5911,5866,5811,5770,5766,5783,5764,5672,5535,5417,5355,5334,5325,5316,5313,5308,5279,5220,5166,5159,
+5201,5250,5253,5202,5130,5071,5032,5007,4995,4991,4978,4942,4906,4911,4966,5021,5017,4952,4879,4837,4801,
+4725,4606,4495,4427,4385,4335,4276,4239,4227,4205,4142,4048,3957,3887,3833,3785,3741,3696,3645,3591,3548,
+3519,3491,3444,3375,3301,3240,3199,3168,3133,3090,3048,3010,2973,2935,2914,2924,2942,2917,2826,2726,2712,
+2820,2969,3028,2939,2768,2621,2540,2494,2461,2476,2572,2695,2738,2648,2493,2384,2364,2379,2362,2310,2262,
+2233,2197,2133,2075,2078,2142,2189,2138,1997,1857,1802,1828,1873,1884,1857,1814,1766,1718,1677,1648,1625,
+1600,1574,1558,1559,1570,1577,1575,1573,1581,1598,1617,1625,1620,1603,1575,1541,1511,1488,1466,1437,1397,
+1349,1297,1253,1230,1234,1244,1234,1196,1155,1141,1159,1185,1200,1201,1197,1190,1178,1164,1153,1151,1154,
+1161,1172,1183,1194,1207,1226,1248,1269,1284,1295,1303,1309,1318,1338,1368,1396,1413,1419,1420,1419,1424,
+1443,1480,1515,1525,1504,1481,1483,1514,1551,1575,1583,1586,1600,1633,1667,1675,1647,1603,1576,1581,1604,
+1625,1632,1620,1593,1564,1543,1528,1509,1478,1446,1420,1402,1382,1358,1333,1312,1293,1274,1253,1232,1212,
+1194,1174,1152,1126,1099,1073,1050,1027,1002,971,934,892,852,818,792,768,742,715,690,673,661,
+645,621,589,553,516,477,438,400,366,334,305,280,258,237,212,183,147,107,68,34,4,
+-25,-59,-95,-132,-168,-202,-236,-273,-317,-364,-411,-457,-504,-552,-596,-637,-679,-723,-770,-816,-860,
+-900,-937,-975,-1018,-1063,-1104,-1141,-1182,-1228,-1272,-1312,-1350,-1393,-1436,-1477,-1515,-1555,-1596,-1635,-1670,-1701,
+-1731,-1760,-1790,-1823,-1856,-1885,-1911,-1939,-1973,-2012,-2053,-2095,-2133,-2168,-2201,-2234,-2265,-2293,-2323,-2356,-2393,
+-2429,-2461,-2490,-2517,-2543,-2570,-2598,-2627,-2660,-2695,-2730,-2761,-2787,-2812,-2836,-2861,-2884,-2910,-2939,-2967,-2992,
+-3015,-3038,-3062,-3084,-3102,-3115,-3124,-3133,-3145,-3160,-3172,-3180,-3184,-3187,-3189,-3192,-3198,-3206,-3211,-3214,-3215,
+-3217,-3217,-3214,-3208,-3200,-3189,-3176,-3164,-3157,-3148,-3137,-3124,-3110,-3094,-3071,-3049,-3029,-3011,-2991,-2970,-2949,
+-2926,-2897,-2866,-2838,-2810,-2776,-2735,-2692,-2654,-2622,-2593,-2563,-2532,-2499,-2469,-2441,-2411,-2380,-2350,-2323,-2294,
+-2261,-2227,-2194,-2158,-2119,-2084,-2052,-2014,-1967,-1919,-1878,-1841,-1800,-1760,-1726,-1695,-1659,-1619,-1582,-1545,-1504,
+-1463,-1428,-1395,-1356,-1314,-1280,-1251,-1219,-1185,-1153,-1125,-1095,-1062,-1030,-1002,-975,-949,-923,-895,-864,-834,
+-810,-787,-757,-723,-695,-669,-639,-606,-579,-555,-525,-493,-467,-446,-420,-387,-358,-336,-316,-295,-273,
+-245,-205,-163,-130,-104,-69,-26,13,47,88,134,173,208,253,310,357,390,425,470,519,563,
+611,660,698,725,759,800,831,852,883,926,960,978,1002,1044,1101,1179,1280,1363,1368,1315,1289,
+1327,1367,1367,1371,1417,1454,1435,1410,1420,1394,1280,1209,1357,1664,1880,1925,1993,2237,2521,2621,2530,
+2398,2259,2006,1632,1312,1217,1339,1552,1762,1932,2013,1935,1644,1156,578,79,-214,-309,-313,-327,-371,
+-420,-463,-511,-569,-636,-713,-800,-881,-937,-954,-944,-921,-879,-788,-650,-541,-541,-621,-665,-625,-606,
+-729,-960,-1152,-1243,-1315,-1448,-1606,-1705,-1721,-1697,-1670,-1651,-1648,-1670,-1717,-1789,-1884,-1986,-2077,-2164,-2271,
+-2392,-2490,-2554,-2613,-2680,-2726,-2735,-2737,-2766,-2802,-2813,-2823,-2881,-2989,-3094,-3162,-3199,-3223,-3228,-3211,-3188,
+-3176,-3174,-3178,-3192,-3218,-3244,-3262,-3273,-3281,-3290,-3309,-3346,-3401,-3472,-3561,-3666,-3763,-3825,-3849,-3854,-3853,
+-3843,-3823,-3804,-3791,-3778,-3756,-3729,-3699,-3662,-3617,-3570,-3527,-3486,-3448,-3412,-3371,-3316,-3243,-3165,-3093,-3026,
+-2960,-2894,-2830,-2768,-2705,-2639,-2569,-2492,-2414,-2346,-2285,-2223,-2155,-2087,-2023,-1957,-1885,-1813,-1750,-1693,-1632,
+-1559,-1479,-1395,-1309,-1224,-1143,-1066,-989,-909,-829,-752,-678,-607,-536,-464,-388,-307,-222,-139,-62,7,
+74,139,199,250,293,330,365,401,440,481,516,544,575,613,653,686,716,749,787,823,858,
+895,929,952,964,978,998,1019,1036,1057,1088,1124,1161,1201,1241,1271,1287,1301,1331,1376,1428,1479,
+1523,1554,1570,1580,1596,1620,1649,1683,1725,1771,1809,1835,1844,1838,1817,1793,1777,1776,1785,1800,1815,
+1828,1839,1855,1881,1911,1937,1958,1979,2005,2030,2055,2081,2108,2131,2149,2166,2189,2215,2243,2275,2311,
+2349,2393,2450,2524,2612,2709,2805,2883,2934,2967,3004,3051,3087,3092,3075,3063,3065,3068,3058,3035,3003,
+2964,2924,2901,2900,2908,2900,2866,2817,2770,2736,2718,2716,2719,2722,2725,2737,2751,2754,2737,2715,2707,
+2716,2728,2729,2716,2693,2667,2640,2614,2591,2502,2473,2437,2388,2314,2209,2087,1973,1885,1816,1753,1695,
+1655,1647,1675,1730,1798,1867,1928,1967,1967,1925,1864,1823,1817,1833,1861,1909,1976,2036,2058,2059,2085,
+2150,2211,2221,2184,2144,2143,2184,2243,2274,2233,2116,1965,1840,1769,1733,1700,1650,1579,1498,1419,1353,
+1297,1247,1203,1163,1114,1046,968,907,872,835,771,683,600,538,486,419,323,203,75,-45,-152,
+-251,-348,-437,-511,-567,-614,-653,-671,-662,-637,-619,-619,-628,-636,-648,-674,-714,-751,-768,-766,-761,
+-762,-771,-789,-834,-922,-1033,-1124,-1167,-1179,-1189,-1197,-1181,-1139,-1098,-1079,-1064,-1027,-981,-965,-1000,-1062,
+-1116,-1141,-1140,-1121,-1100,-1096,-1119,-1162,-1207,-1244,-1271,-1287,-1297,-1312,-1330,-1346,-1358,-1369,-1376,-1367,-1340,
+-1314,-1301,-1293,-1289,-1305,-1347,-1378,-1357,-1303,-1281,-1324,-1383,-1395,-1355,-1314,-1312,-1357,-1431,-1520,-1608,-1690,
+-1775,-1868,-1968,-2072,-2196,-2347,-2494,-2595,-2647,-2692,-2764,-2844,-2898,-2917,-2930,-2963,-3024,-3110,-3205,-3286,-3332,
+-3349,-3360,-3388,-3436,-3497,-3563,-3627,-3682,-3735,-3800,-3877,-3950,-4001,-4040,-4098,-4190,-4309,-4444,-4600,-4777,-4942,
+-5054,-5111,-5155,-5223,-5302,-5354,-5365,-5359,-5366,-5393,-5438,-5496,-5548,-5551,-5485,-5385,-5317,-5312,-5345,-5370,-5374,
+-5375,-5389,-5414,-5443,-5479,-5525,-5570,-5602,-5621,-5642,-5678,-5727,-5780,-5830,-5879,-5928,-5974,-6019,-6067,-6117,-6167,
+-6216,-6275,-6353,-6444,-6535,-6619,-6708,-6812,-6921,-7023,-7116,-7214,-7320,-7426,-7519,-7605,-7693,-7781,-7865,-7948,-8036,
+-8129,-8221,-8310,-8400,-8494,-8585,-8670,-8749,-8825,-8898,-8966,-9036,-9114,-9192,-9260,-9317,-9374,-9439,-9506,-9563,-9609,
+-9645,-9675,-9702,-9728,-9744,-9730,-9683,-9647,-9682,-9796,-9927,-10004,-10022,-10028,-10057,-10097,-10127,-10150,-10179,-10208,-10222,
+-10227,
+-10238-10254,-10266,-10289,-10356,-10470,-10583,-10638,-10620,-10561,-10492,-10423,-10344,-10256,-10167,-10088,-10032,-10005,-10015,-10058,
+-10110,
+-10131-10101,-10030,-9953,-9883,-9808,-9718,-9624,-9532,-9432,-9308,-9170,-9042,-8931,-8824,-8710,-8581,-8433,-8269,-8105,
+-7959,-7820,-7666,-7496,-7333,-7183,-7031,-6868,-6700,-6529,-6344,-6149,-5976,-5844,-5730,-5613,-5512,-5457,-5442,-5446,-5474,
+-5527,-5546,-5454,-5278,-5159,-5181,-5256,-5213,-4988,-4657,-4323,-4017,-3745,-3534,-3409,-3341,-3278,-3192,-3083,-2947,-2780,
+-2597,-2431,-2293,-2168,-2046,-1930,-1828,-1732,-1635,-1532,-1424,-1310,-1196,-1083,-969,-849,-740,-668,-631,-596,-537,
+-468,-411,-367,-322,-275,-231,-186,-117,-19,94,215,345,484,616,725,813,902,1004,1125,1257,1383,
+1489,1571,1641,1711,1785,1864,1960,2070,2180,2270,2340,2406,2479,2565,2670,2799,2940,3057,3121,3141,3156,
+3206,3310,3461,3649,3854,4038,4162,4218,4261,4364,4547,4759,4942,5095,5249,5387,5449,5416,5366,5395,5514,
+5643,5719,5754,5802,5884,5994,6139,6320,6491,6577,6554,6488,6452,6445,6426,6402,6426,6508,6588,6616,6605,
+6585,6551,6509,6518,6608,6697,6671,6538,6418,6331,6116,5635,5014,4574,4537,4863,5366,5875,6292,6562,6695,
+6760,6824,6879,6885,6846,6808,6798,6798,6783,6757,6739,6742,6774,6833,6895,6926,6916,6884,6848,6804,6745,
+6683,6636,6611,6609,6634,6678,6713,6714,6685,6653,6636,6634,6630,6615,6590,6562,6538,6517,6498,6482,6476,
+6478,6475,6459,6442,6438,6442,6438,6425,6423,6441,6464,6470,6456,6427,6392,6352,6319,6301,6292,6281,6267,
+6259,6255,6244,6218,6187,6158,6128,6091,6056,6035,6028,6021,6005,5980,5947,5903,5857,5823,5803,5777,5715,
+5613,5502,5417,5372,5351,5335,5322,5320,5319,5297,5250,5215,5241,5324,5399,5393,5302,5183,5096,5054,5041,
+5039,5036,5020,4987,4956,4963,5012,5061,5054,4984,4902,4854,4834,4792,4702,4590,4495,4423,4356,4291,4247,
+4229,4213,4171,4100,4018,3945,3891,3862,3849,3827,3769,3683,3603,3554,3524,3482,3414,3334,3269,3231,3208,
+3178,3130,3071,3017,2974,2947,2948,2981,3016,3001,2910,2795,2751,2822,2944,2996,2919,2771,2652,2596,2555,
+2492,2448,2490,2601,2679,2645,2531,2429,2389,2385,2367,2325,2281,2248,2215,2167,2111,2075,2085,2117,2114,
+2034,1910,1822,1817,1862,1892,1876,1833,1786,1739,1694,1659,1634,1610,1582,1562,1566,1587,1601,1598,1590,
+1592,1602,1612,1615,1612,1599,1573,1543,1521,1506,1490,1463,1427,1385,1336,1288,1256,1256,1275,1283,1257,
+1211,1177,1176,1198,1220,1228,1226,1218,1206,1191,1177,1170,1170,1177,1186,1195,1201,1211,1229,1256,1283,
+1301,1311,1315,1315,1317,1329,1357,1390,1416,1431,1438,1441,1443,1456,1485,1517,1532,1523,1504,1494,1498,
+1518,1554,1595,1626,1642,1656,1677,1685,1654,1595,1554,1562,1603,1639,1649,1638,1616,1588,1559,1532,1507,
+1482,1460,1443,1432,1420,1401,1377,1353,1331,1312,1292,1270,1248,1227,1207,1185,1160,1133,1106,1079,1054,
+1029,1001,968,929,889,850,818,789,763,737,716,701,689,673,647,614,580,548,515,480,443,
+406,370,338,311,287,265,243,219,189,152,113,76,43,10,-24,-62,-101,-138,-173,-206,-241,
+-282,-326,-370,-411,-454,-501,-548,-592,-634,-680,-728,-777,-823,-861,-895,-930,-970,-1015,-1056,-1096,-1138,
+-1185,-1231,-1272,-1311,-1353,-1396,-1435,-1474,-1513,-1554,-1593,-1627,-1658,-1687,-1716,-1748,-1783,-1816,-1846,-1872,-1899,
+-1930,-1967,-2007,-2049,-2086,-2120,-2154,-2190,-2223,-2253,-2284,-2317,-2352,-2383,-2412,-2441,-2471,-2500,-2529,-2557,-2586,
+-2617,-2651,-2686,-2717,-2741,-2764,-2790,-2817,-2844,-2869,-2897,-2925,-2952,-2976,-2999,-3022,-3044,-3064,-3078,-3086,-3092,
+-3101,-3114,-3127,-3137,-3146,-3152,-3156,-3160,-3166,-3174,-3180,-3183,-3184,-3185,-3183,-3178,-3173,-3167,-3157,-3145,-3135,
+-3129,-3121,-3107,-3091,-3076,-3059,-3037,-3014,-2995,-2979,-2962,-2942,-2921,-2898,-2870,-2842,-2817,-2792,-2761,-2723,-2684,
+-2647,-2613,-2580,-2549,-2517,-2483,-2451,-2422,-2394,-2364,-2333,-2304,-2276,-2245,-2212,-2179,-2145,-2109,-2075,-2042,-2004,
+-1958,-1911,-1871,-1835,-1797,-1759,-1726,-1694,-1658,-1621,-1585,-1549,-1509,-1469,-1435,-1403,-1366,-1325,-1290,-1260,-1228,
+-1194,-1162,-1134,-1104,-1070,-1039,-1012,-986,-961,-937,-909,-875,-842,-818,-797,-769,-737,-710,-686,-657,-623,
+-592,-565,-537,-508,-484,-464,-440,-411,-387,-365,-338,-307,-282,-259,-227,-187,-151,-122,-88,-45,-6,
+29,69,113,152,186,231,288,342,385,424,468,509,548,596,647,683,702,720,746,769,793,
+831,881,924,954,986,1028,1081,1161,1268,1347,1339,1279,1265,1316,1353,1340,1348,1411,1454,1422,1393,
+1429,1442,1348,1271,1397,1671,1847,1863,1938,2215,2524,2630,2550,2443,2313,2042,1668,1422,1450,1658,1869,
+2016,2100,2070,1844,1417,888,391,27,-170,-237,-254,-280,-319,-353,-386,-434,-503,-586,-677,-766,-838,
+-874,-872,-851,-827,-791,-711,-592,-501,-507,-579,-611,-570,-563,-700,-931,-1106,-1171,-1231,-1383,-1586,-1717,
+-1720,-1641,-1550,-1477,-1427,-1405,-1429,-1510,-1630,-1747,-1840,-1946,-2100,-2279,-2415,-2489,-2541,-2601,-2648,-2665,-2680,
+-2721,-2763,-2775,-2789,-2863,-2998,-3136,-3230,-3281,-3299,-3287,-3252,-3218,-3201,-3197,-3197,-3206,-3233,-3274,-3316,-3345,
+-3350,-3330,-3305,-3295,-3312,-3361,-3450,-3575,-3700,-3785,-3818,-3817,-3801,-3776,-3752,-3739,-3735,-3726,-3706,-3683,-3659,
+-3624,-3576,-3527,-3486,-3449,-3411,-3375,-3338,-3288,-3219,-3141,-3068,-3000,-2935,-2871,-2811,-2754,-2693,-2628,-2558,-2483,
+-2406,-2335,-2271,-2209,-2145,-2080,-2014,-1945,-1873,-1803,-1739,-1678,-1613,-1541,-1462,-1381,-1299,-1219,-1141,-1062,-982,
+-903,-827,-754,-682,-609,-535,-459,-381,-303,-223,-140,-58,17,86,148,204,255,300,339,374,408,
+446,489,528,562,597,637,676,705,734,770,811,844,869,896,922,939,950,970,1000,1027,1040,
+1051,1075,1113,1153,1190,1227,1259,1286,1313,1348,1390,1430,1466,1500,1530,1554,1574,1598,1626,1656,1689,
+1728,1768,1800,1821,1829,1822,1799,1772,1756,1757,1768,1782,1796,1808,1819,1833,1855,1881,1904,1923,1946,
+1977,2010,2041,2068,2090,2105,2114,2125,2143,2166,2190,2217,2250,2287,2327,2371,2421,2480,2556,2652,2757,
+2851,2928,2997,3058,3091,3085,3059,3047,3057,3066,3051,3014,2972,2932,2897,2874,2869,2873,2866,2841,2801,
+2759,2721,2694,2677,2669,2667,2674,2689,2704,2701,2680,2661,2666,2692,2712,2705,2671,2627,2586,2554,2528,
+2502,2360,2317,2274,2225,2158,2065,1957,1855,1770,1702,1644,1601,1585,1599,1637,1692,1762,1845,1931,1997,
+2012,1971,1901,1844,1817,1810,1819,1854,1916,1973,1999,2015,2069,2163,2243,2253,2198,2138,2122,2160,2215,
+2234,2181,2064,1930,1821,1745,1690,1640,1591,1535,1471,1403,1340,1283,1231,1187,1150,1101,1024,933,862,
+823,787,722,638,567,521,477,402,291,157,20,-108,-225,-329,-419,-496,-560,-613,-654,-682,-691,
+-683,-669,-664,-670,-677,-678,-681,-700,-740,-780,-798,-792,-779,-777,-787,-810,-855,-935,-1037,-1123,-1172,
+-1195,-1213,-1226,-1218,-1187,-1153,-1131,-1105,-1056,-1003,-987,-1024,-1086,-1134,-1152,-1144,-1118,-1089,-1077,-1097,-1141,
+-1192,-1237,-1272,-1296,-1311,-1324,-1339,-1355,-1368,-1378,-1385,-1382,-1368,-1348,-1331,-1319,-1317,-1336,-1378,-1411,-1402,
+-1360,-1335,-1358,-1399,-1409,-1376,-1341,-1350,-1415,-1511,-1602,-1675,-1744,-1829,-1926,-2016,-2104,-2222,-2382,-2548,-2667,
+-2730,-2771,-2823,-2878,-2914,-2931,-2950,-2992,-3065,-3167,-3273,-3355,-3393,-3401,-3405,-3427,-3473,-3538,-3613,-3683,-3743,
+-3798,-3863,-3936,-3997,-4038,-4080,-4161,-4291,-4440,-4578,-4702,-4830,-4961,-5071,-5140,-5187,-5245,-5316,-5369,-5381,-5369,
+-5371,-5406,-5465,-5517,-5536,-5506,-5439,-5371,-5337,-5342,-5360,-5368,-5370,-5386,-5423,-5467,-5502,-5533,-5570,-5609,-5634,
+-5644,-5655,-5688,-5742,-5803,-5858,-5909,-5959,-6009,-6056,-6105,-6157,-6211,-6264,-6318,-6382,-6458,-6538,-6619,-6707,-6806,
+-6912,-7014,-7112,-7213,-7316,-7414,-7504,-7592,-7682,-7770,-7852,-7932,-8019,-8112,-8201,-8287,-8375,-8469,-8563,-8648,-8727,
+-8804,-8881,-8957,-9032,-9106,-9176,-9239,-9300,-9367,-9437,-9500,-9551,-9596,-9636,-9672,-9705,-9739,-9759,-9742,-9686,-9640,
+-9666,-9774,-9905,-9991,-10021,-10033,-10061,-10099,-10132,-10159,-10188,-10217,-10236,-10250,-10268,-10287,-10297,-10314,-10375,-10490,-10610,
+-10671,
+-10654,-10599,-10554,-10527,-10496,-10444,-10379,-10313,-10254,-10208,-10186,-10191,-10203,-10189,-10134,-10059,-9985,-9910,-9822,-9721,-9623,
+-9532,
+-9426,-9295,-9159,-9042,-8946,-8848,-8732,-8594,-8437,-8272,-8115,-7975,-7834,-7672,-7497,-7334,-7185,-7028,-6855,-6680,-6508,
+-6328,-6144,-5986,-5866,-5756,-5636,-5527,-5458,-5421,-5395,-5396,-5440,-5459,-5358,-5157,-5007,-5022,-5130,-5156,-5014,-4743,
+-4407,-4034,-3669,-3403,-3287,-3267,-3243,-3165,-3043,-2891,-2710,-2522,-2364,-2244,-2137,-2018,-1892,-1776,-1673,-1575,-1476,
+-1372,-1262,-1148,-1034,-911,-774,-644,-559,-523,-500,-448,-373,-304,-257,-218,-179,-141,-99,-38,49,155,
+268,392,527,659,774,868,957,1057,1176,1311,1441,1547,1628,1698,1769,1841,1912,1998,2104,2219,2319,
+2399,2475,2559,2655,2767,2896,3031,3138,3193,3211,3238,3313,3442,3609,3793,3975,4128,4224,4267,4308,4418,
+4613,4839,5028,5167,5285,5394,5459,5462,5451,5500,5619,5743,5811,5840,5889,5981,6098,6226,6357,6457,6472,
+6395,6299,6272,6322,6388,6432,6468,6517,6571,6612,6632,6611,6518,6372,6269,6294,6413,6504,6499,6425,6296,
+6046,5622,5115,4724,4607,4787,5188,5692,6166,6500,6676,6763,6836,6896,6910,6880,6850,6843,6844,6831,6806,
+6788,6794,6835,6902,6962,6979,6951,6909,6879,6855,6818,6766,6713,6675,6668,6693,6732,6756,6749,6726,6709,
+6702,6691,6669,6639,6607,6575,6548,6531,6523,6515,6506,6496,6487,6479,6474,6473,6469,6456,6442,6444,6464,
+6488,6496,6489,6467,6433,6391,6351,6323,6299,6274,6254,6246,6245,6234,6209,6184,6165,6146,6119,6090,6065,
+6047,6038,6033,6022,5991,5945,5904,5877,5837,5756,5644,5539,5468,5426,5395,5369,5346,5327,5313,5304,5292,
+5270,5259,5300,5396,5485,5484,5377,5226,5112,5066,5064,5071,5071,5060,5039,5019,5015,5033,5054,5045,4993,
+4926,4885,4871,4843,4764,4650,4546,4469,4401,4325,4256,4219,4207,4190,4145,4073,3998,3951,3950,3974,3975,
+3913,3797,3680,3599,3551,3505,3444,3376,3319,3284,3261,3230,3176,3102,3028,2973,2950,2964,3005,3038,3020,
+2937,2831,2769,2788,2854,2890,2848,2758,2689,2661,2627,2545,2454,2433,2501,2582,2592,2522,2431,2371,2346,
+2339,2326,2297,2260,2230,2205,2159,2088,2037,2049,2090,2071,1962,1841,1801,1841,1883,1875,1833,1790,1750,
+1703,1660,1634,1614,1590,1572,1578,1602,1616,1609,1597,1595,1598,1596,1594,1597,1596,1580,1557,1540,1532,
+1518,1491,1456,1418,1374,1324,1286,1280,1305,1331,1325,1283,1233,1209,1218,1241,1256,1257,1249,1237,1222,
+1206,1193,1188,1189,1197,1205,1210,1216,1232,1259,1289,1309,1316,1317,1314,1312,1320,1343,1379,1413,1437,
+1449,1451,1450,1456,1475,1504,1529,1540,1540,1529,1515,1515,1549,1606,1649,1656,1650,1656,1662,1633,1572,
+1528,1539,1588,1632,1648,1643,1630,1607,1575,1542,1516,1498,1484,1474,1469,1464,1450,1425,1396,1372,1354,
+1338,1316,1290,1263,1238,1216,1194,1169,1140,1109,1079,1052,1025,994,958,920,883,849,819,792,770,
+753,739,724,703,673,639,608,580,552,520,485,449,413,379,349,322,296,272,249,224,191,
+150,110,73,38,2,-34,-72,-111,-147,-182,-217,-257,-300,-340,-376,-411,-452,-497,-540,-581,-624,
+-671,-720,-769,-810,-846,-881,-921,-966,-1011,-1053,-1097,-1144,-1190,-1234,-1275,-1317,-1358,-1396,-1433,-1472,-1512,
+-1551,-1587,-1619,-1648,-1679,-1712,-1746,-1781,-1813,-1842,-1869,-1898,-1931,-1971,-2011,-2046,-2078,-2112,-2148,-2182,-2213,
+-2243,-2276,-2308,-2336,-2363,-2393,-2426,-2458,-2488,-2517,-2547,-2579,-2612,-2647,-2677,-2702,-2725,-2752,-2782,-2810,-2836,
+-2861,-2887,-2913,-2937,-2960,-2982,-3003,-3023,-3039,-3047,-3050,-3055,-3064,-3078,-3092,-3103,-3111,-3117,-3122,-3130,-3140,
+-3147,-3150,-3151,-3152,-3151,-3146,-3142,-3138,-3130,-3120,-3112,-3106,-3096,-3078,-3057,-3041,-3025,-3004,-2982,-2963,-2947,
+-2929,-2909,-2887,-2865,-2841,-2816,-2793,-2768,-2738,-2705,-2670,-2636,-2600,-2566,-2535,-2504,-2470,-2437,-2408,-2380,-2349,
+-2315,-2285,-2258,-2229,-2195,-2162,-2129,-2096,-2063,-2030,-1994,-1953,-1910,-1870,-1833,-1797,-1761,-1730,-1698,-1662,-1625,
+-1590,-1555,-1515,-1474,-1440,-1409,-1374,-1335,-1301,-1269,-1236,-1202,-1171,-1144,-1115,-1083,-1053,-1025,-997,-969,-946,
+-921,-889,-856,-831,-809,-780,-746,-719,-698,-674,-641,-609,-580,-552,-524,-501,-480,-455,-430,-413,-395,
+-366,-328,-298,-276,-247,-208,-170,-138,-103,-60,-20,13,50,92,131,167,212,268,323,371,417,
+464,505,542,586,631,658,669,681,704,730,760,801,853,898,933,970,1011,1055,1119,1207,1266,
+1248,1201,1213,1281,1313,1290,1299,1381,1443,1422,1398,1442,1462,1371,1291,1399,1636,1773,1784,1894,2204,
+2511,2600,2541,2493,2403,2123,1737,1536,1648,1899,2065,2107,2072,1924,1589,1107,622,255,27,-95,-157,
+-196,-231,-258,-274,-300,-358,-446,-543,-632,-708,-769,-800,-795,-763,-722,-681,-632,-573,-537,-562,-625,
+-653,-627,-627,-735,-910,-1038,-1087,-1158,-1334,-1565,-1714,-1712,-1605,-1480,-1383,-1313,-1270,-1278,-1356,-1478,-1592,
+-1683,-1803,-1988,-2196,-2346,-2420,-2471,-2534,-2584,-2604,-2625,-2673,-2721,-2739,-2759,-2840,-2987,-3149,-3275,-3352,-3379,
+-3358,-3310,-3271,-3253,-3243,-3233,-3229,-3249,-3295,-3355,-3406,-3424,-3402,-3358,-3317,-3298,-3312,-3374,-3486,-3619,-3728,
+-3786,-3794,-3763,-3714,-3674,-3662,-3666,-3662,-3645,-3627,-3608,-3574,-3525,-3478,-3443,-3410,-3370,-3329,-3293,-3249,-3187,
+-3115,-3043,-2973,-2904,-2838,-2783,-2732,-2676,-2610,-2541,-2471,-2400,-2329,-2261,-2198,-2136,-2074,-2006,-1934,-1861,-1791,
+-1725,-1661,-1595,-1526,-1450,-1369,-1288,-1213,-1138,-1059,-975,-896,-823,-754,-682,-608,-532,-452,-374,-300,-227,
+-150,-67,13,88,153,211,262,307,345,379,412,453,500,544,580,614,653,689,716,743,780,
+821,850,867,886,907,922,932,954,990,1021,1036,1045,1070,1109,1149,1183,1216,1250,1281,1314,1353,
+1393,1428,1455,1482,1510,1537,1566,1598,1633,1666,1699,1734,1766,1787,1794,1795,1789,1775,1757,1746,1747,
+1755,1765,1778,1791,1804,1817,1836,1860,1883,1902,1924,1952,1984,2014,2041,2063,2075,2079,2082,2092,2111,
+2133,2161,2196,2238,2282,2321,2353,2382,2427,2503,2610,2728,2840,2940,3019,3061,3058,3036,3031,3048,3060,
+3038,2989,2941,2906,2880,2857,2842,2836,2830,2814,2784,2744,2698,2652,2613,2591,2588,2601,2621,2635,2633,
+2618,2610,2625,2652,2662,2636,2581,2522,2474,2436,2400,2360,2194,2141,2103,2074,2035,1975,1898,1819,1744,
+1677,1625,1599,1604,1633,1675,1726,1793,1878,1971,2042,2062,2026,1960,1897,1852,1824,1814,1835,1882,1930,
+1960,1992,2054,2142,2210,2224,2189,2140,2114,2121,2147,2151,2102,2003,1891,1795,1719,1652,1594,1546,1502,
+1453,1401,1352,1300,1243,1189,1143,1090,1009,909,824,767,719,653,580,528,499,461,379,252,103,
+-43,-178,-297,-396,-476,-545,-609,-664,-700,-714,-716,-716,-719,-724,-726,-721,-711,-706,-724,-769,-818,
+-844,-840,-824,-819,-832,-859,-901,-964,-1037,-1100,-1140,-1166,-1189,-1206,-1206,-1187,-1165,-1147,-1118,-1070,-1022,
+-1009,-1041,-1091,-1127,-1143,-1145,-1133,-1113,-1102,-1120,-1165,-1215,-1256,-1285,-1304,-1310,-1309,-1311,-1321,-1332,-1341,
+-1350,-1359,-1362,-1356,-1346,-1341,-1350,-1375,-1413,-1445,-1450,-1423,-1392,-1390,-1416,-1439,-1430,-1402,-1401,-1461,-1567,
+-1672,-1750,-1821,-1910,-2009,-2089,-2152,-2244,-2390,-2563,-2707,-2798,-2854,-2895,-2926,-2943,-2952,-2967,-3001,-3068,-3168,
+-3275,-3355,-3392,-3404,-3419,-3453,-3508,-3581,-3663,-3738,-3797,-3847,-3904,-3968,-4024,-4069,-4131,-4239,-4397,-4564,-4692,
+-4771,-4837,-4924,-5030,-5127,-5200,-5263,-5323,-5369,-5384,-5380,-5391,-5432,-5482,-5505,-5484,-5433,-5383,-5357,-5354,-5360,
+-5363,-5364,-5374,-5402,-5446,-5491,-5530,-5564,-5599,-5631,-5650,-5655,-5665,-5699,-5759,-5825,-5883,-5935,-5987,-6039,-6087,
+-6136,-6192,-6252,-6309,-6359,-6412,-6476,-6550,-6629,-6714,-6806,-6904,-7006,-7111,-7214,-7312,-7401,-7486,-7575,-7668,-7759,
+-7843,-7924,-8009,-8097,-8183,-8268,-8358,-8453,-8546,-8629,-8706,-8782,-8861,-8940,-9017,-9090,-9157,-9222,-9293,-9371,-9444,
+-9502,-9549,-9593,-9637,-9675,-9709,-9742,-9763,-9747,-9692,-9645,-9666,-9765,-9894,-9987,-10027,-10041,-10062,-10095,-10132,-10165,
+-10197,-10226,-10250,-10273,-10297,-10316,-10323,-10334,-10383,-10485,-10601,-10671,-10668,-10627,-10595,-10587,-10582,-10559,-10519,-10471,-10418,
+-10364,
+-10318,-10289,-10264,-10222,-10157,-10082,-10007,-9922,-9818,-9703,-9598,-9502,-9393,-9263,-9134,-9028,-8939,-8842,-8721,-8577,-8419,
+-8261,-8116,-7983,-7843,-7680,-7504,-7339,-7185,-7022,-6845,-6668,-6499,-6327,-6155,-6006,-5884,-5760,-5621,-5497,-5418,-5368,
+-5326,-5315,-5356,-5382,-5286,-5071,-4889,-4872,-4980,-5060,-5010,-4822,-4512,-4091,-3638,-3294,-3140,-3114,-3094,-3020,-2905,
+-2763,-2594,-2414,-2268,-2173,-2096,-1998,-1873,-1741,-1619,-1512,-1415,-1318,-1212,-1098,-980,-852,-706,-561,-459,-412,
+-387,-343,-275,-209,-161,-122,-82,-43,-1,55,135,229,332,446,575,708,829,931,1021,1118,1234,
+1368,1499,1605,1684,1755,1829,1900,1966,2040,2136,2250,2358,2449,2534,2628,2733,2846,2967,3088,3188,3252,
+3293,3342,3429,3558,3715,3880,4036,4167,4262,4327,4396,4514,4691,4892,5063,5186,5289,5394,5485,5539,5568,
+5617,5704,5793,5850,5890,5954,6051,6151,6232,6293,6330,6321,6264,6208,6216,6292,6388,6456,6495,6529,6572,
+6625,6675,6685,6606,6436,6262,6200,6294,6466,6581,6551,6366,6059,5685,5304,4995,4835,4880,5141,5558,6014,
+6388,6630,6766,6850,6906,6933,6932,6920,6913,6905,6886,6858,6838,6847,6897,6968,7021,7027,6992,6947,6914,
+6891,6860,6820,6779,6753,6748,6758,6771,6773,6765,6756,6749,6734,6706,6673,6647,6629,6609,6589,6579,6579,
+6577,6564,6542,6522,6510,6504,6500,6494,6484,6477,6482,6500,6518,6525,6519,6501,6470,6432,6396,6364,6331,
+6299,6278,6272,6262,6234,6198,6175,6170,6166,6153,6128,6097,6068,6056,6063,6064,6032,5976,5932,5903,5843,
+5724,5585,5493,5461,5443,5408,5372,5351,5337,5317,5297,5286,5276,5266,5288,5363,5454,5477,5394,5253,5139,
+5097,5104,5116,5112,5100,5089,5079,5064,5051,5042,5027,4989,4937,4899,4881,4851,4774,4663,4567,4509,4459,
+4386,4303,4247,4231,4221,4180,4103,4023,3988,4013,4064,4076,4007,3876,3739,3639,3575,3525,3473,3423,3381,
+3349,3322,3286,3228,3151,3067,3002,2975,2988,3017,3027,2995,2932,2863,2812,2793,2799,2807,2793,2757,2729,
+2718,2692,2616,2512,2448,2460,2511,2535,2501,2427,2350,2304,2300,2314,2307,2272,2245,2235,2197,2103,2014,
+2018,2096,2121,2018,1865,1793,1824,1869,1860,1819,1783,1751,1706,1660,1635,1623,1605,1589,1595,1615,1622,
+1609,1597,1596,1596,1586,1578,1585,1594,1589,1575,1565,1560,1547,1520,1487,1452,1412,1362,1318,1301,1316,
+1346,1356,1328,1280,1246,1244,1264,1283,1287,1280,1267,1251,1235,1220,1209,1204,1207,1214,1222,1227,1239,
+1261,1289,1309,1315,1315,1312,1310,1315,1337,1373,1413,1441,1453,1453,1449,1451,1465,1492,1526,1559,1583,
+1583,1560,1542,1556,1599,1629,1626,1614,1625,1649,1645,1603,1563,1564,1598,1632,1647,1651,1649,1634,1605,
+1573,1549,1534,1522,1512,1507,1504,1493,1469,1439,1413,1397,1383,1363,1334,1301,1269,1244,1223,1199,1169,
+1135,1103,1076,1050,1020,987,952,920,890,862,837,816,798,781,760,732,698,664,633,606,579,
+550,519,487,453,419,388,358,330,303,280,256,223,180,135,94,58,24,-10,-46,-82,-118,
+-153,-189,-228,-270,-309,-341,-371,-405,-444,-485,-524,-564,-607,-655,-705,-752,-795,-835,-877,-923,-970,
+-1016,-1061,-1107,-1153,-1199,-1242,-1283,-1322,-1358,-1395,-1433,-1472,-1511,-1547,-1581,-1612,-1643,-1675,-1709,-1742,-1776,
+-1808,-1838,-1866,-1898,-1935,-1974,-2007,-2037,-2070,-2107,-2142,-2172,-2202,-2235,-2267,-2294,-2319,-2350,-2383,-2415,-2446,
+-2477,-2510,-2542,-2574,-2607,-2637,-2663,-2687,-2715,-2745,-2775,-2800,-2823,-2846,-2869,-2894,-2918,-2940,-2960,-2978,-2995,
+-3005,-3008,-3011,-3020,-3036,-3053,-3065,-3073,-3078,-3083,-3093,-3104,-3111,-3114,-3116,-3119,-3119,-3116,-3112,-3108,-3102,
+-3092,-3083,-3076,-3065,-3045,-3024,-3008,-2994,-2975,-2952,-2932,-2914,-2895,-2872,-2850,-2829,-2808,-2786,-2763,-2737,-2706,
+-2675,-2645,-2613,-2578,-2543,-2514,-2485,-2453,-2422,-2395,-2369,-2336,-2300,-2270,-2245,-2216,-2181,-2147,-2116,-2085,-2051,
+-2018,-1985,-1949,-1910,-1871,-1833,-1797,-1762,-1731,-1701,-1667,-1630,-1595,-1559,-1520,-1480,-1445,-1413,-1379,-1344,-1310,
+-1278,-1244,-1210,-1182,-1156,-1127,-1097,-1069,-1041,-1010,-980,-955,-932,-904,-874,-849,-825,-793,-756,-726,-706,
+-685,-657,-627,-599,-573,-546,-522,-499,-472,-446,-429,-414,-389,-354,-322,-295,-263,-222,-185,-154,-118,
+-74,-33,0,34,74,111,148,193,248,303,352,403,457,503,542,578,609,622,626,640,672,
+708,742,784,833,877,913,951,990,1021,1058,1112,1151,1145,1136,1188,1279,1317,1289,1294,1374,1441,
+1435,1423,1459,1458,1350,1261,1350,1550,1667,1712,1893,2248,2541,2608,2574,2588,2533,2236,1831,1657,1818,
+2067,2148,2052,1882,1637,1265,825,451,214,77,-13,-78,-121,-152,-172,-188,-222,-295,-395,-490,-564,
+-626,-684,-725,-725,-674,-598,-543,-537,-569,-619,-677,-733,-763,-758,-757,-804,-887,-953,-995,-1081,-1262,
+-1483,-1632,-1644,-1556,-1446,-1362,-1302,-1262,-1262,-1323,-1425,-1522,-1610,-1739,-1932,-2135,-2273,-2344,-2409,-2490,-2549,
+-2566,-2578,-2619,-2670,-2701,-2735,-2819,-2963,-3128,-3275,-3380,-3424,-3409,-3366,-3333,-3318,-3303,-3278,-3261,-3270,-3310,
+-3369,-3427,-3456,-3446,-3410,-3370,-3341,-3329,-3350,-3419,-3526,-3641,-3727,-3757,-3723,-3653,-3593,-3573,-3579,-3579,-3564,
+-3549,-3533,-3503,-3461,-3425,-3400,-3370,-3327,-3282,-3245,-3206,-3154,-3092,-3026,-2954,-2876,-2806,-2754,-2711,-2660,-2593,
+-2521,-2454,-2388,-2320,-2251,-2186,-2124,-2062,-1995,-1922,-1849,-1779,-1710,-1643,-1580,-1518,-1448,-1367,-1284,-1210,-1139,
+-1062,-979,-899,-827,-757,-685,-612,-536,-458,-380,-309,-243,-173,-93,-7,75,151,218,272,316,350,
+379,411,453,505,553,589,618,650,682,708,735,772,812,839,853,869,891,908,918,937,971,
+1004,1024,1041,1070,1109,1145,1177,1212,1249,1281,1310,1342,1378,1411,1438,1463,1489,1514,1542,1576,1615,
+1654,1692,1730,1757,1763,1753,1740,1736,1735,1732,1730,1730,1733,1741,1755,1772,1788,1801,1820,1845,1870,
+1891,1913,1938,1964,1988,2011,2031,2044,2048,2048,2056,2076,2104,2137,2175,2216,2257,2290,2311,2323,2343,
+2393,2480,2592,2711,2828,2931,3001,3028,3026,3027,3039,3039,3006,2952,2910,2892,2879,2854,2821,2796,2780,
+2764,2737,2697,2644,2583,2529,2500,2503,2527,2553,2571,2574,2569,2564,2566,2566,2547,2499,2437,2383,2343,
+2305,2254,2194,2045,1994,1975,1969,1954,1917,1862,1799,1732,1669,1623,1605,1618,1650,1691,1743,1813,1900,
+1991,2060,2089,2072,2024,1965,1909,1867,1846,1852,1878,1911,1945,1982,2025,2065,2095,2119,2132,2120,2078,
+2033,2014,2013,1991,1925,1833,1748,1680,1625,1576,1533,1491,1448,1409,1374,1330,1270,1204,1146,1085,1003,
+902,804,728,663,593,528,485,463,430,348,213,49,-112,-253,-365,-450,-519,-586,-659,-721,-752,
+-754,-750,-757,-772,-777,-764,-743,-728,-732,-761,-816,-873,-907,-909,-894,-887,-896,-919,-950,-988,-1027,
+-1061,-1088,-1112,-1135,-1154,-1162,-1162,-1160,-1155,-1133,-1088,-1043,-1028,-1048,-1081,-1104,-1119,-1134,-1146,-1147,-1151,
+-1179,-1228,-1275,-1302,-1312,-1312,-1300,-1279,-1260,-1252,-1249,-1250,-1259,-1283,-1309,-1322,-1325,-1337,-1367,-1411,-1458,
+-1498,-1518,-1506,-1467,-1439,-1449,-1483,-1495,-1468,-1446,-1489,-1601,-1729,-1824,-1900,-1989,-2088,-2164,-2214,-2282,-2405,
+-2568,-2725,-2842,-2916,-2957,-2976,-2982,-2985,-2989,-3003,-3047,-3132,-3234,-3316,-3363,-3394,-3431,-3482,-3547,-3625,-3708,
+-3782,-3836,-3878,-3923,-3975,-4030,-4093,-4180,-4310,-4476,-4640,-4754,-4801,-4819,-4865,-4961,-5082,-5189,-5266,-5320,-5359,
+-5383,-5400,-5423,-5451,-5463,-5440,-5389,-5342,-5326,-5339,-5356,-5359,-5357,-5364,-5387,-5418,-5449,-5483,-5521,-5562,-5600,
+-5628,-5646,-5660,-5682,-5726,-5787,-5849,-5904,-5955,-6009,-6064,-6115,-6165,-6222,-6285,-6344,-6393,-6440,-6497,-6566,-6643,
+-6723,-6807,-6897,-6996,-7102,-7206,-7302,-7388,-7472,-7562,-7657,-7750,-7835,-7915,-7997,-8080,-8165,-8252,-8345,-8440,-8530,
+-8610,-8684,-8759,-8837,-8914,-8990,-9063,-9136,-9214,-9300,-9388,-9462,-9515,-9557,-9601,-9645,-9681,-9711,-9741,-9759,-9743,
+-9692,-9649,-9668,-9762,-9887,-9985,-10033,-10047,-10062,-10093,-10135,-10176,-10210,-10240,-10271,-10301,-10328,-10342,-10342,-10346,-10382,
+-10468,
+-10579,-10662,-10684,-10659,-10627,-10613,-10610,-10599,-10575,-10543,-10503,-10455,-10406,-10360,-10314,-10256,-10184,-10105,-10020,-9923,-9807,
+-9685,
+-9572,-9469,-9360,-9237,-9115,-9009,-8916,-8815,-8693,-8552,-8402,-8257,-8122,-7993,-7851,-7686,-7510,-7342,-7182,-7016,-6842,
+-6671,-6508,-6345,-6184,-6038,-5903,-5754,-5589,-5447,-5356,-5299,-5252,-5240,-5284,-5321,-5239,-5024,-4812,-4744,-4822,-4927,
+-4953,-4852,-4594,-4177,-3686,-3277,-3042,-2940,-2865,-2771,-2671,-2569,-2443,-2297,-2172,-2094,-2042,-1971,-1860,-1723,-1583,
+-1459,-1355,-1260,-1158,-1045,-927,-798,-653,-504,-386,-317,-275,-230,-175,-123,-80,-38,7,49,92,149,
+225,313,405,508,630,762,886,993,1087,1186,1301,1433,1563,1668,1747,1817,1891,1963,2026,2093,2179,
+2285,2391,2487,2579,2679,2787,2897,3006,3110,3206,3289,3363,3438,3527,3641,3777,3923,4061,4184,4298,4413,
+4530,4656,4794,4940,5076,5196,5314,5442,5564,5649,5688,5710,5745,5796,5851,5915,5997,6086,6152,6182,6187,
+6188,6188,6187,6198,6236,6305,6382,6447,6495,6539,6590,6648,6704,6734,6705,6592,6428,6318,6369,6566,6751,
+6744,6507,6154,5823,5559,5346,5196,5162,5287,5552,5899,6259,6561,6760,6860,6911,6953,6989,7000,6988,6969,
+6947,6919,6898,6913,6973,7048,7093,7090,7054,7010,6971,6935,6898,6865,6843,6834,6829,6819,6802,6788,6784,
+6785,6774,6744,6705,6678,6668,6663,6651,6636,6628,6630,6629,6615,6593,6570,6551,6536,6526,6521,6520,6522,
+6530,6542,6552,6553,6542,6518,6486,6454,6426,6398,6365,6334,6321,6318,6301,6259,6213,6191,6191,6192,6180,
+6158,6127,6095,6081,6089,6093,6058,5996,5947,5909,5830,5692,5555,5492,5488,5470,5412,5359,5345,5345,5329,
+5306,5296,5287,5261,5245,5281,5357,5403,5364,5267,5183,5155,5167,5175,5159,5134,5118,5111,5101,5084,5065,
+5043,5005,4952,4906,4878,4841,4763,4659,4579,4546,4525,4474,4399,4337,4304,4273,4209,4113,4028,4000,4037,
+4090,4096,4022,3894,3765,3670,3605,3553,3506,3465,3432,3405,3375,3334,3276,3203,3124,3060,3029,3031,3036,
+3016,2971,2931,2910,2891,2856,2813,2786,2777,2769,2757,2745,2722,2663,2572,2492,2462,2484,2522,2534,2494,
+2411,2331,2300,2313,2317,2290,2265,2258,2219,2114,2014,2024,2127,2173,2064,1888,1794,1815,1855,1845,1806,
+1779,1756,1716,1672,1651,1643,1627,1610,1613,1629,1630,1612,1599,1599,1597,1583,1573,1578,1589,1593,1590,
+1590,1590,1580,1556,1526,1492,1453,1405,1358,1326,1318,1330,1341,1331,1303,1277,1273,1289,1306,1312,1307,
+1294,1278,1261,1247,1234,1223,1219,1226,1237,1245,1253,1269,1292,1311,1318,1317,1314,1311,1313,1330,1365,
+1407,1437,1450,1449,1446,1449,1462,1488,1526,1569,1605,1614,1592,1563,1557,1575,1588,1579,1573,1601,1653,
+1687,1678,1650,1633,1636,1644,1652,1662,1671,1667,1646,1617,1590,1570,1553,1540,1533,1528,1517,1498,1473,
+1452,1435,1420,1400,1370,1334,1300,1270,1246,1220,1190,1158,1128,1102,1077,1047,1015,985,959,934,910,
+886,863,842,820,794,762,726,691,659,630,602,575,548,521,488,453,419,389,361,335,311,
+286,250,205,158,116,81,48,15,-16,-48,-80,-113,-147,-184,-224,-262,-294,-323,-355,-392,-431,
+-471,-510,-551,-596,-645,-696,-744,-790,-835,-882,-930,-977,-1024,-1071,-1118,-1165,-1208,-1247,-1284,-1321,-1359,
+-1397,-1435,-1472,-1508,-1543,-1575,-1605,-1635,-1667,-1700,-1734,-1768,-1801,-1832,-1863,-1899,-1934,-1965,-1993,-2026,-2063,
+-2098,-2129,-2160,-2195,-2228,-2255,-2280,-2309,-2341,-2373,-2404,-2438,-2473,-2505,-2534,-2563,-2591,-2619,-2646,-2675,-2706,
+-2734,-2759,-2780,-2800,-2823,-2848,-2875,-2897,-2914,-2931,-2948,-2961,-2967,-2973,-2985,-3004,-3023,-3035,-3041,-3043,-3048,
+-3058,-3070,-3076,-3078,-3079,-3083,-3085,-3082,-3077,-3071,-3064,-3054,-3044,-3036,-3025,-3008,-2990,-2977,-2965,-2947,-2924,
+-2902,-2882,-2860,-2836,-2815,-2795,-2774,-2752,-2729,-2701,-2671,-2641,-2615,-2586,-2553,-2520,-2492,-2464,-2434,-2404,-2380,
+-2356,-2324,-2288,-2259,-2235,-2206,-2170,-2135,-2105,-2075,-2041,-2007,-1975,-1942,-1906,-1868,-1830,-1794,-1758,-1727,-1699,
+-1668,-1632,-1597,-1562,-1526,-1488,-1453,-1420,-1386,-1351,-1319,-1287,-1254,-1222,-1194,-1167,-1137,-1107,-1079,-1053,-1024,
+-994,-969,-947,-919,-888,-862,-838,-807,-770,-739,-717,-695,-669,-642,-619,-594,-568,-544,-522,-496,-467,
+-443,-422,-399,-370,-340,-309,-269,-227,-195,-170,-137,-93,-49,-13,23,61,95,128,171,227,282,
+333,387,446,496,532,559,576,580,584,606,648,688,721,761,810,856,894,935,975,998,1012,
+1040,1076,1101,1134,1214,1315,1360,1339,1335,1390,1441,1441,1438,1459,1424,1294,1197,1264,1428,1539,1646,
+1923,2339,2641,2707,2696,2729,2651,2306,1887,1751,1951,2172,2146,1908,1619,1321,983,651,409,266,162,
+68,4,-25,-44,-70,-105,-156,-235,-331,-417,-479,-535,-596,-646,-649,-586,-485,-422,-454,-568,-695,
+-785,-840,-878,-898,-893,-873,-859,-863,-901,-995,-1152,-1333,-1470,-1517,-1486,-1427,-1376,-1338,-1312,-1309,-1346,
+-1412,-1482,-1565,-1701,-1891,-2075,-2196,-2273,-2364,-2472,-2542,-2551,-2544,-2568,-2618,-2670,-2733,-2831,-2965,-3115,-3258,
+-3372,-3431,-3432,-3408,-3395,-3390,-3369,-3332,-3303,-3303,-3329,-3371,-3413,-3440,-3440,-3426,-3411,-3398,-3381,-3369,-3384,
+-3441,-3533,-3626,-3674,-3649,-3572,-3500,-3472,-3475,-3474,-3461,-3449,-3437,-3416,-3390,-3371,-3358,-3331,-3288,-3241,-3202,
+-3164,-3117,-3067,-3012,-2941,-2855,-2777,-2725,-2690,-2646,-2581,-2506,-2437,-2373,-2309,-2242,-2176,-2112,-2049,-1981,-1910,
+-1839,-1770,-1699,-1630,-1569,-1512,-1447,-1367,-1283,-1208,-1139,-1065,-984,-905,-831,-756,-682,-609,-537,-463,-387,
+-318,-256,-193,-118,-31,59,145,219,278,321,353,377,403,443,497,550,587,611,635,662,689,
+718,756,794,819,832,850,877,900,915,932,961,993,1020,1046,1080,1115,1144,1172,1210,1252,1284,
+1305,1327,1355,1385,1415,1443,1468,1488,1509,1539,1577,1619,1663,1704,1731,1729,1705,1684,1680,1690,1702,
+1708,1710,1712,1721,1738,1756,1770,1780,1795,1817,1841,1864,1889,1918,1947,1970,1989,2006,2018,2023,2025,
+2034,2057,2090,2127,2163,2197,2229,2256,2275,2285,2296,2326,2385,2469,2572,2690,2816,2928,3000,3028,3030,
+3024,3003,2961,2912,2886,2883,2874,2837,2780,2731,2701,2679,2652,2613,2561,2497,2438,2411,2423,2456,2486,
+2506,2517,2518,2505,2479,2444,2397,2339,2285,2247,2220,2180,2116,2045,1935,1901,1902,1911,1900,1865,1814,
+1755,1693,1634,1591,1574,1582,1610,1653,1713,1791,1881,1969,2040,2086,2101,2081,2033,1973,1922,1894,1885,
+1889,1906,1938,1969,1976,1956,1948,1991,2060,2082,2015,1909,1848,1853,1869,1838,1762,1683,1631,1600,1573,
+1539,1497,1457,1426,1397,1354,1289,1215,1147,1082,1002,906,806,717,638,562,494,447,422,393,321,
+186,6,-176,-326,-428,-496,-555,-624,-705,-771,-800,-796,-791,-804,-817,-806,-773,-744,-743,-770,-818,
+-877,-932,-967,-974,-964,-956,-957,-968,-985,-1003,-1018,-1032,-1047,-1066,-1086,-1104,-1121,-1142,-1165,-1176,-1160,
+-1114,-1064,-1041,-1051,-1072,-1086,-1099,-1121,-1149,-1170,-1194,-1235,-1289,-1329,-1341,-1332,-1316,-1291,-1253,-1214,-1184,
+-1160,-1142,-1145,-1180,-1230,-1266,-1283,-1307,-1356,-1423,-1491,-1550,-1589,-1588,-1544,-1495,-1486,-1519,-1539,-1511,-1475,
+-1506,-1622,-1763,-1869,-1945,-2033,-2137,-2225,-2284,-2347,-2451,-2594,-2744,-2869,-2955,-3002,-3020,-3025,-3025,-3017,-3010,
+-3030,-3095,-3187,-3272,-3336,-3391,-3448,-3510,-3577,-3653,-3734,-3807,-3860,-3897,-3929,-3969,-4027,-4109,-4220,-4359,-4514,
+-4661,-4762,-4799,-4799,-4820,-4903,-5034,-5165,-5260,-5317,-5356,-5392,-5428,-5452,-5447,-5405,-5342,-5289,-5274,-5299,-5335,
+-5352,-5348,-5346,-5365,-5399,-5427,-5444,-5465,-5503,-5548,-5587,-5616,-5642,-5674,-5715,-5766,-5823,-5878,-5925,-5973,-6028,
+-6088,-6143,-6195,-6252,-6315,-6375,-6425,-6469,-6520,-6584,-6655,-6730,-6806,-6889,-6981,-7080,-7181,-7278,-7368,-7456,-7548,
+-7644,-7738,-7823,-7901,-7978,-8060,-8147,-8238,-8331,-8422,-8507,-8585,-8661,-8738,-8814,-8889,-8963,-9040,-9124,-9217,-9315,
+-9406,-9476,-9524,-9564,-9607,-9650,-9685,-9716,-9745,-9757,-9732,-9676,-9634,-9657,-9751,-9875,-9975,-10027,-10045,-10061,-10097,
+-10148,-10193,-10226,-10256,-10293,-10332,-10359,-10367,-10362,-10359,-10384,-10453,-10556,-10652,-10699,-10688,-10652,-10623,-10610,-10599,-10582,
+-10556,
+-10527,-10493,-10453,-10407,-10354,-10290,-10214,-10127,-10031,-9925,-9807,-9684,-9568,-9462,-9356,-9240,-9116,-8999,-8894,-8791,-8676,
+-8544,-8404,-8268,-8138,-8004,-7854,-7684,-7508,-7337,-7173,-7007,-6841,-6680,-6525,-6372,-6219,-6071,-5920,-5751,-5569,-5414,
+-5310,-5244,-5195,-5183,-5227,-5273,-5213,-5014,-4782,-4658,-4683,-4782,-4852,-4818,-4628,-4269,-3813,-3387,-3075,-2862,-2693,
+-2549,-2445,-2372,-2296,-2201,-2111,-2047,-1998,-1935,-1838,-1707,-1560,-1419,-1302,-1202,-1103,-997,-885,-763,-625,-482,
+-359,-268,-199,-139,-87,-48,-11,34,85,129,172,230,308,394,481,577,691,815,936,1044,1147,
+1254,1375,1506,1632,1735,1814,1885,1957,2027,2090,2155,2235,2331,2431,2527,2623,2725,2833,2939,3038,3130,
+3221,3317,3417,3513,3605,3707,3830,3965,4093,4216,4354,4517,4680,4812,4911,5000,5104,5230,5373,5522,5646,
+5718,5733,5724,5728,5766,5834,5917,5999,6061,6091,6093,6083,6081,6101,6148,6206,6260,6308,6360,6421,6484,
+6546,6607,6664,6708,6737,6750,6720,6626,6528,6554,6744,6945,6936,6664,6291,6000,5819,5684,5576,5537,5582,
+5695,5882,6164,6487,6738,6861,6912,6971,7036,7063,7048,7027,7012,6990,6971,6991,7060,7136,7170,7159,7126,
+7088,7045,6996,6948,6913,6896,6892,6886,6863,6833,6815,6815,6816,6796,6759,6727,6714,6709,6700,6683,6669,
+6662,6658,6649,6636,6620,6603,6585,6567,6555,6554,6560,6569,6577,6586,6591,6585,6565,6533,6497,6467,6443,
+6416,6383,6356,6347,6350,6335,6293,6249,6228,6223,6214,6195,6176,6158,6137,6120,6118,6111,6075,6018,5968,
+5917,5818,5673,5558,5531,5547,5519,5434,5360,5340,5343,5330,5311,5307,5304,5273,5235,5239,5290,5334,5326,
+5276,5231,5219,5226,5223,5194,5151,5119,5113,5122,5129,5120,5091,5039,4973,4918,4881,4839,4765,4673,4606,
+4589,4590,4568,4516,4456,4401,4333,4237,4124,4039,4013,4041,4076,4066,3993,3885,3783,3707,3649,3596,3544,
+3500,3468,3444,3416,3373,3313,3244,3176,3122,3092,3082,3068,3028,2979,2956,2968,2974,2936,2866,2810,2790,
+2783,2770,2749,2721,2672,2596,2518,2475,2493,2558,2626,2633,2553,2432,2350,2332,2333,2315,2294,2282,2238,
+2135,2041,2056,2158,2197,2082,1900,1799,1811,1847,1839,1808,1791,1775,1739,1700,1681,1671,1651,1628,1627,
+1641,1642,1625,1609,1603,1596,1582,1572,1575,1584,1593,1603,1617,1625,1618,1598,1572,1538,1496,1450,1405,
+1366,1336,1321,1320,1321,1314,1305,1304,1312,1323,1331,1331,1322,1305,1285,1270,1258,1245,1237,1242,1255,
+1267,1274,1286,1303,1320,1326,1324,1318,1312,1308,1318,1346,1386,1419,1436,1440,1441,1445,1458,1483,1519,
+1562,1598,1610,1594,1569,1558,1565,1570,1560,1556,1585,1644,1699,1723,1715,1693,1674,1662,1660,1670,1684,
+1691,1682,1658,1626,1594,1569,1555,1547,1538,1526,1511,1495,1479,1462,1443,1420,1393,1361,1328,1297,1268,
+1240,1212,1183,1156,1130,1101,1069,1038,1010,988,968,947,925,902,877,852,825,795,761,725,691,
+659,629,602,577,550,517,479,443,411,384,358,334,306,270,226,184,148,116,85,55,26,
+-1,-31,-63,-97,-132,-170,-207,-241,-273,-307,-345,-385,-427,-468,-509,-551,-595,-644,-694,-744,-791,
+-838,-885,-932,-979,-1028,-1078,-1127,-1170,-1207,-1243,-1282,-1324,-1364,-1401,-1436,-1471,-1505,-1535,-1564,-1593,-1624,
+-1657,-1691,-1728,-1764,-1798,-1831,-1866,-1899,-1926,-1952,-1984,-2021,-2055,-2085,-2118,-2155,-2191,-2219,-2243,-2270,-2300,
+-2331,-2363,-2399,-2435,-2465,-2491,-2516,-2544,-2574,-2604,-2635,-2665,-2693,-2717,-2738,-2758,-2782,-2809,-2837,-2859,-2874,
+-2887,-2904,-2920,-2931,-2942,-2958,-2978,-2996,-3006,-3009,-3012,-3017,-3027,-3037,-3043,-3042,-3041,-3044,-3047,-3044,-3036,
+-3027,-3019,-3009,-3001,-2993,-2983,-2970,-2956,-2945,-2934,-2916,-2893,-2871,-2849,-2826,-2802,-2781,-2762,-2741,-2718,-2695,
+-2669,-2641,-2613,-2589,-2563,-2534,-2505,-2478,-2449,-2417,-2386,-2362,-2339,-2308,-2274,-2246,-2223,-2194,-2157,-2123,-2095,
+-2066,-2032,-1997,-1965,-1933,-1898,-1862,-1828,-1792,-1755,-1723,-1695,-1667,-1634,-1600,-1566,-1533,-1498,-1465,-1431,-1396,
+-1360,-1328,-1299,-1268,-1236,-1206,-1178,-1147,-1115,-1086,-1060,-1034,-1007,-984,-961,-932,-899,-869,-844,-817,-786,
+-759,-737,-713,-686,-661,-640,-616,-587,-562,-543,-522,-493,-460,-429,-401,-375,-348,-314,-271,-229,-201,
+-181,-153,-111,-68,-27,14,55,87,114,153,206,261,313,369,429,476,504,520,531,538,548,
+579,625,663,691,728,782,834,877,923,968,991,997,1022,1077,1138,1195,1270,1354,1399,1390,1380,
+1403,1428,1428,1427,1426,1359,1217,1120,1168,1297,1412,1588,1955,2431,2758,2842,2836,2825,2660,2255,1858,
+1796,2032,2204,2067,1718,1363,1067,804,590,455,365,262,158,99,85,69,27,-26,-85,-159,-246,
+-327,-394,-454,-515,-564,-573,-521,-432,-380,-433,-580,-738,-836,-885,-930,-975,-973,-908,-825,-788,-826,
+-921,-1044,-1177,-1299,-1385,-1421,-1416,-1396,-1380,-1371,-1372,-1387,-1412,-1449,-1521,-1657,-1842,-2010,-2124,-2215,-2331,
+-2459,-2537,-2543,-2523,-2529,-2574,-2648,-2750,-2874,-3004,-3128,-3249,-3353,-3415,-3430,-3429,-3440,-3448,-3427,-3383,-3348,
+-3340,-3350,-3366,-3385,-3399,-3406,-3411,-3422,-3432,-3426,-3402,-3381,-3386,-3432,-3499,-3542,-3522,-3449,-3378,-3350,-3352,
+-3353,-3345,-3336,-3331,-3324,-3318,-3320,-3319,-3296,-3255,-3210,-3168,-3123,-3076,-3035,-2993,-2928,-2837,-2750,-2694,-2662,
+-2626,-2568,-2496,-2424,-2359,-2298,-2236,-2172,-2106,-2039,-1972,-1903,-1836,-1767,-1696,-1625,-1561,-1503,-1439,-1361,-1279,
+-1204,-1133,-1058,-978,-901,-826,-748,-668,-594,-526,-455,-382,-314,-255,-197,-127,-43,50,139,215,274,
+319,353,377,397,430,481,536,574,597,618,645,675,707,743,778,802,816,835,866,897,919,
+939,966,997,1028,1061,1096,1125,1145,1168,1204,1246,1278,1296,1312,1333,1358,1387,1418,1445,1464,1479,
+1503,1536,1575,1617,1658,1686,1687,1665,1644,1642,1656,1672,1681,1686,1693,1708,1727,1742,1749,1753,1763,
+1779,1799,1820,1848,1886,1923,1952,1970,1984,1994,1998,2002,2012,2035,2066,2100,2131,2158,2184,2209,2231,
+2248,2261,2282,2320,2376,2453,2558,2691,2832,2941,2993,2998,2978,2946,2907,2873,2857,2851,2825,2763,2687,
+2629,2598,2577,2552,2518,2472,2412,2356,2332,2344,2372,2393,2409,2426,2434,2417,2375,2324,2274,2227,2185,
+2153,2123,2074,2002,1935,1860,1847,1861,1869,1852,1812,1760,1703,1644,1589,1548,1526,1527,1552,1599,1668,
+1752,1839,1922,1995,2058,2103,2113,2083,2029,1976,1940,1917,1902,1904,1925,1942,1919,1867,1854,1923,2029,
+2058,1959,1804,1713,1721,1760,1751,1687,1616,1577,1565,1553,1526,1488,1453,1425,1392,1340,1268,1191,1122,
+1057,984,899,808,717,630,548,475,419,387,361,300,169,-23,-226,-386,-483,-540,-591,-657,-735,
+-799,-829,-833,-839,-855,-858,-827,-781,-760,-784,-838,-895,-944,-983,-1009,-1019,-1017,-1009,-1002,-1002,-1009,
+-1017,-1022,-1025,-1034,-1049,-1063,-1076,-1098,-1133,-1172,-1193,-1178,-1131,-1078,-1052,-1059,-1076,-1085,-1094,-1117,-1152,
+-1186,-1220,-1261,-1307,-1336,-1339,-1328,-1312,-1285,-1240,-1189,-1146,-1107,-1071,-1063,-1104,-1177,-1239,-1270,-1293,-1342,
+-1420,-1505,-1579,-1628,-1635,-1596,-1546,-1530,-1552,-1565,-1537,-1503,-1532,-1641,-1774,-1876,-1954,-2048,-2165,-2272,-2352,
+-2424,-2518,-2640,-2770,-2887,-2976,-3029,-3050,-3056,-3054,-3040,-3022,-3026,-3073,-3153,-3241,-3321,-3395,-3463,-3525,-3588,
+-3663,-3747,-3822,-3875,-3906,-3931,-3967,-4032,-4133,-4262,-4399,-4533,-4654,-4743,-4786,-4794,-4814,-4887,-5012,-5149,-5257,
+-5325,-5371,-5415,-5454,-5460,-5414,-5331,-5258,-5235,-5265,-5315,-5348,-5349,-5334,-5333,-5360,-5400,-5428,-5442,-5462,-5501,
+-5549,-5589,-5623,-5661,-5708,-5758,-5809,-5859,-5907,-5951,-5996,-6050,-6111,-6170,-6224,-6282,-6344,-6405,-6457,-6501,-6548,
+-6604,-6667,-6735,-6808,-6885,-6968,-7057,-7151,-7247,-7341,-7433,-7526,-7623,-7719,-7805,-7881,-7957,-8040,-8131,-8224,-8313,
+-8397,-8478,-8558,-8639,-8719,-8797,-8873,-8950,-9033,-9125,-9223,-9320,-9404,-9466,-9513,-9556,-9603,-9647,-9687,-9724,-9755,
+-9759,-9717,-9647,-9605,-9635,-9736,-9862,-9961,-10014,-10035,-10060,-10108,-10168,-10216,-10244,-10269,-10308,-10353,-10383,-10390,-10383,
+-10377,
+-10391-10440,-10529,-10629,-10692,-10697,-10662,-10626,-10605,-10594,-10577,-10553,-10527,-10500,-10468,-10424,-10370,-10306,-10230,-10139,
+-10037,
+-9929,-9817,-9702,-9587,-9480,-9376,-9260,-9128,-8995,-8883,-8786,-8683,-8557,-8418,-8283,-8152,-8010,-7848,-7671,-7494,-7325,
+-7160,-6998,-6838,-6684,-6537,-6390,-6239,-6082,-5916,-5741,-5566,-5416,-5307,-5229,-5171,-5150,-5183,-5229,-5194,-5028,-4794,
+-4620,-4582,-4650,-4729,-4731,-4601,-4331,-3965,-3580,-3234,-2939,-2687,-2483,-2336,-2241,-2177,-2128,-2086,-2041,-1981,-1899,
+-1795,-1668,-1525,-1381,-1254,-1147,-1050,-954,-852,-738,-609,-476,-359,-259,-168,-87,-28,7,43,93,148,
+194,237,298,382,471,558,649,754,869,984,1095,1206,1326,1455,1584,1701,1797,1875,1947,2019,2089,
+2156,2225,2303,2390,2484,2580,2679,2780,2884,2987,3083,3170,3254,3350,3458,3566,3668,3776,3903,4038,4163,
+4284,4432,4613,4793,4928,5009,5072,5159,5286,5435,5573,5662,5688,5672,5656,5670,5721,5799,5881,5941,5969,
+5978,5988,6004,6026,6064,6130,6206,6263,6299,6344,6412,6485,6549,6613,6677,6720,6740,6764,6784,6759,6705,
+6738,6922,7119,7100,6812,6442,6181,6039,5937,5869,5876,5924,5949,5989,6151,6437,6706,6851,6917,6991,7071,
+7104,7091,7081,7082,7066,7042,7062,7134,7204,7226,7208,7182,7156,7115,7060,7005,6963,6938,6928,6917,6893,
+6862,6844,6844,6837,6811,6779,6764,6761,6749,6724,6703,6697,6697,6688,6666,6643,6629,6620,6610,6596,6587,
+6588,6599,6612,6622,6628,6628,6616,6591,6556,6520,6489,6463,6434,6399,6371,6361,6364,6355,6324,6289,6266,
+6252,6230,6206,6194,6194,6190,6175,6159,6136,6097,6047,5997,5930,5817,5678,5592,5594,5622,5587,5488,5398,
+5361,5348,5325,5305,5307,5311,5292,5264,5261,5288,5311,5310,5297,5286,5280,5273,5254,5216,5163,5119,5113,
+5141,5174,5175,5133,5060,4983,4926,4890,4850,4787,4709,4653,4638,4644,4639,4607,4552,4479,4384,4268,4154,
+4073,4044,4053,4065,4044,3983,3901,3823,3760,3704,3649,3591,3538,3501,3478,3454,3410,3347,3280,3224,3183,
+3154,3133,3108,3066,3021,3003,3018,3027,2991,2918,2852,2816,2798,2780,2758,2729,2682,2614,2541,2497,2512,
+2591,2693,2735,2667,2524,2402,2353,2347,2335,2318,2305,2265,2175,2090,2093,2166,2185,2074,1909,1816,1820,
+1849,1847,1829,1820,1805,1770,1734,1715,1700,1672,1644,1638,1650,1655,1644,1626,1610,1595,1581,1576,1578,
+1584,1595,1618,1644,1659,1656,1640,1616,1581,1536,1491,1454,1418,1379,1346,1331,1332,1336,1336,1334,1333,
+1336,1344,1353,1351,1333,1309,1292,1280,1268,1258,1259,1274,1290,1300,1310,1322,1332,1334,1328,1322,1315,
+1310,1312,1331,1361,1392,1413,1423,1428,1433,1445,1468,1504,1546,1580,1596,1592,1582,1582,1592,1597,1586,
+1571,1574,1605,1653,1693,1712,1709,1697,1685,1678,1679,1686,1698,1706,1695,1661,1618,1585,1569,1560,1548,
+1532,1517,1505,1493,1475,1453,1429,1404,1379,1353,1324,1293,1263,1235,1209,1183,1153,1119,1085,1054,1029,
+1010,993,976,957,935,909,882,857,831,799,763,726,691,658,627,599,571,538,501,465,432,
+404,377,350,321,287,251,219,193,167,140,110,82,53,20,-15,-51,-87,-123,-160,-195,-230,
+-268,-308,-350,-392,-434,-475,-515,-555,-598,-646,-696,-744,-790,-835,-880,-928,-978,-1030,-1080,-1125,-1164,
+-1201,-1242,-1286,-1328,-1365,-1400,-1435,-1468,-1497,-1524,-1554,-1588,-1622,-1657,-1693,-1731,-1768,-1805,-1841,-1872,-1898,
+-1922,-1951,-1987,-2020,-2049,-2081,-2118,-2154,-2182,-2206,-2232,-2260,-2289,-2320,-2356,-2392,-2423,-2448,-2472,-2501,-2532,
+-2565,-2597,-2626,-2653,-2678,-2702,-2725,-2751,-2780,-2808,-2829,-2841,-2852,-2868,-2885,-2900,-2915,-2932,-2950,-2963,-2969,
+-2974,-2980,-2987,-2996,-3005,-3009,-3007,-3003,-3003,-3005,-3002,-2993,-2983,-2975,-2968,-2961,-2954,-2945,-2932,-2920,-2909,
+-2896,-2879,-2857,-2835,-2814,-2790,-2767,-2748,-2731,-2710,-2687,-2664,-2641,-2615,-2589,-2565,-2543,-2518,-2493,-2467,-2438,
+-2403,-2370,-2344,-2319,-2289,-2255,-2229,-2206,-2177,-2141,-2108,-2082,-2055,-2023,-1989,-1958,-1926,-1892,-1859,-1827,-1793,
+-1757,-1724,-1697,-1670,-1639,-1604,-1572,-1540,-1507,-1474,-1440,-1405,-1370,-1338,-1311,-1281,-1249,-1218,-1189,-1159,-1127,
+-1096,-1069,-1043,-1017,-994,-972,-943,-909,-877,-852,-828,-803,-782,-763,-740,-711,-685,-664,-639,-608,-579,
+-558,-539,-511,-475,-438,-405,-378,-351,-318,-275,-235,-207,-185,-157,-119,-80,-39,6,51,85,111,
+145,193,243,293,348,405,443,458,465,478,493,512,547,594,633,662,702,759,815,860,906,
+953,982,996,1035,1118,1207,1268,1315,1368,1408,1412,1399,1398,1406,1408,1402,1372,1279,1139,1052,1086,
+1192,1325,1564,1992,2486,2810,2892,2856,2759,2502,2090,1787,1827,2074,2161,1922,1520,1173,928,739,603,
+526,461,364,265,215,204,180,124,61,0,-71,-154,-236,-309,-376,-436,-480,-501,-487,-447,-427,
+-484,-617,-753,-825,-850,-887,-943,-956,-888,-787,-741,-787,-885,-984,-1079,-1185,-1295,-1376,-1409,-1412,-1416,
+-1430,-1444,-1448,-1443,-1450,-1505,-1631,-1803,-1959,-2072,-2171,-2295,-2425,-2507,-2521,-2504,-2502,-2538,-2624,-2754,-2901,
+-3029,-3133,-3229,-3320,-3379,-3400,-3414,-3440,-3459,-3443,-3400,-3365,-3352,-3349,-3345,-3343,-3348,-3360,-3379,-3404,-3426,
+-3433,-3420,-3392,-3367,-3364,-3381,-3389,-3355,-3287,-3227,-3206,-3214,-3223,-3225,-3226,-3228,-3234,-3248,-3269,-3280,-3264,
+-3229,-3189,-3143,-3087,-3033,-2998,-2968,-2913,-2825,-2734,-2670,-2633,-2598,-2547,-2481,-2409,-2342,-2283,-2227,-2167,-2100,
+-2031,-1964,-1898,-1832,-1766,-1695,-1622,-1553,-1490,-1423,-1349,-1273,-1199,-1126,-1046,-966,-893,-822,-743,-660,-583,
+-515,-447,-375,-308,-249,-194,-128,-46,44,131,204,262,312,353,382,400,424,467,518,558,583,
+607,639,674,707,741,774,798,815,835,864,897,923,947,974,1004,1034,1066,1098,1123,1141,1161,
+1193,1229,1256,1274,1289,1306,1325,1351,1383,1413,1435,1451,1473,1501,1532,1565,1599,1627,1637,1629,1619,
+1620,1629,1638,1643,1650,1665,1686,1708,1720,1724,1727,1738,1755,1773,1791,1819,1858,1897,1928,1947,1959,
+1966,1970,1975,1988,2009,2036,2065,2093,2120,2144,2166,2186,2204,2220,2242,2273,2313,2366,2442,2552,2684,
+2800,2865,2877,2862,2842,2824,2809,2795,2769,2712,2628,2549,2506,2493,2485,2466,2436,2393,2338,2285,2257,
+2255,2259,2257,2263,2287,2309,2302,2267,2230,2200,2169,2131,2088,2040,1979,1910,1860,1807,1809,1821,1820,
+1797,1761,1716,1663,1607,1557,1518,1494,1492,1516,1566,1635,1713,1791,1864,1934,2005,2069,2107,2105,2070,
+2025,1984,1949,1920,1905,1906,1900,1868,1832,1851,1944,2044,2046,1919,1745,1637,1627,1653,1648,1602,1550,
+1522,1510,1492,1461,1424,1393,1363,1319,1254,1179,1108,1047,989,927,861,786,701,611,525,449,390,
+355,331,277,149,-49,-261,-424,-521,-575,-621,-678,-743,-799,-834,-855,-880,-904,-902,-864,-821,-818,
+-865,-931,-981,-1008,-1024,-1037,-1048,-1050,-1044,-1034,-1029,-1032,-1036,-1035,-1034,-1040,-1052,-1061,-1069,-1088,-1121,
+-1159,-1179,-1167,-1128,-1085,-1065,-1071,-1085,-1089,-1095,-1120,-1162,-1201,-1230,-1256,-1282,-1300,-1306,-1308,-1307,-1285,
+-1237,-1184,-1143,-1105,-1065,-1048,-1089,-1178,-1264,-1308,-1325,-1359,-1427,-1514,-1591,-1638,-1646,-1625,-1602,-1599,-1611,
+-1607,-1576,-1553,-1585,-1676,-1782,-1870,-1955,-2066,-2198,-2316,-2405,-2483,-2574,-2683,-2796,-2900,-2985,-3039,-3061,-3064,
+-3058,-3044,-3027,-3027,-3063,-3134,-3223,-3316,-3403,-3475,-3533,-3592,-3670,-3758,-3833,-3878,-3903,-3928,-3976,-4063,-4187,
+-4327,-4455,-4564,-4655,-4729,-4777,-4808,-4848,-4921,-5029,-5152,-5262,-5341,-5397,-5438,-5460,-5436,-5360,-5268,-5220,-5241,
+-5301,-5347,-5355,-5337,-5319,-5324,-5354,-5395,-5428,-5452,-5480,-5522,-5570,-5615,-5658,-5706,-5756,-5800,-5841,-5886,-5936,
+-5983,-6027,-6076,-6132,-6191,-6248,-6308,-6373,-6434,-6487,-6532,-6579,-6630,-6687,-6749,-6817,-6890,-6967,-7048,-7135,-7226,
+-7316,-7405,-7495,-7592,-7690,-7779,-7857,-7934,-8022,-8116,-8207,-8291,-8369,-8450,-8533,-8618,-8702,-8783,-8864,-8947,-9037,
+-9130,-9222,-9303,-9370,-9427,-9482,-9538,-9592,-9641,-9685,-9730,-9764,-9759,-9701,-9620,-9580,-9622,-9735,-9863,-9956,-10002,
+-10023,-10055,-10114,-10184,-10236,-10261,-10281,-10316,-10361,-10394,-10406,-10404,-10398,-10400,-10428,-10496,-10587,-10658,-10677,-10654,-10620,
+-10599,
+-10587,-10571,-10548,-10523,-10495,-10460,-10412,-10355,-10292,-10220,-10133,-10034,-9932,-9829,-9722,-9610,-9500,-9392,-9271,-9131,-8992,
+-8882,
+-8797-8702,-8573,-8427,-8288,-8155,-8007,-7835,-7652,-7477,-7313,-7153,-6994,-6836,-6684,-6539,-6394,-6236,-6060,-5879,
+-5710,-5564,-5443,-5341,-5252,-5179,-5139,-5148,-5183,-5171,-5047,-4829,-4621,-4520,-4537,-4594,-4601,-4514,-4331,-4071,-3759,
+-3426,-3107,-2825,-2582,-2372,-2200,-2091,-2053,-2056,-2043,-1976,-1865,-1736,-1604,-1470,-1335,-1209,-1096,-997,-906,-812,
+-703,-577,-453,-346,-250,-154,-62,3,44,83,137,196,245,294,362,451,546,635,725,826,936,
+1049,1163,1282,1409,1539,1662,1766,1849,1921,1993,2069,2145,2221,2297,2377,2460,2548,2643,2741,2837,2934,
+3034,3134,3224,3306,3393,3495,3607,3724,3852,3995,4137,4262,4380,4516,4679,4842,4974,5069,5148,5237,5350,
+5474,5573,5613,5598,5571,5575,5616,5676,5739,5795,5831,5843,5858,5901,5961,6014,6063,6128,6201,6255,6291,
+6344,6424,6497,6548,6607,6688,6754,6778,6791,6816,6820,6802,6856,7050,7250,7228,6938,6578,6337,6204,6097,
+6048,6119,6233,6253,6199,6234,6430,6672,6833,6926,7016,7097,7125,7123,7138,7155,7134,7096,7109,7179,7240,
+7247,7228,7216,7204,7166,7107,7048,7002,6972,6956,6944,6920,6889,6869,6861,6847,6818,6795,6791,6789,6768,
+6736,6722,6731,6741,6729,6698,6667,6648,6641,6635,6627,6620,6621,6633,6649,6661,6666,6659,6639,6609,6578,
+6549,6520,6491,6460,6428,6399,6385,6382,6375,6353,6321,6296,6275,6251,6228,6219,6226,6232,6225,6206,6175,
+6129,6075,6017,5940,5827,5710,5649,5662,5683,5641,5545,5457,5408,5373,5334,5308,5304,5305,5295,5289,5302,
+5320,5325,5325,5338,5356,5355,5329,5292,5248,5196,5152,5147,5184,5224,5216,5150,5056,4976,4929,4904,4875,
+4825,4761,4709,4685,4681,4676,4651,4601,4523,4423,4311,4205,4129,4092,4085,4083,4061,4013,3950,3883,3817,
+3757,3700,3644,3590,3547,3519,3494,3450,3387,3324,3279,3246,3216,3184,3151,3114,3077,3051,3043,3036,3007,
+2954,2897,2850,2816,2794,2780,2762,2723,2660,2588,2531,2519,2571,2662,2716,2669,2541,2421,2368,2360,2349,
+2333,2324,2297,2225,2144,2120,2152,2154,2066,1937,1857,1851,1867,1868,1860,1854,1838,1805,1771,1750,1730,
+1699,1669,1657,1661,1668,1666,1653,1631,1608,1593,1591,1592,1593,1604,1634,1668,1687,1684,1672,1653,1620,
+1575,1531,1499,1468,1430,1394,1373,1368,1368,1365,1357,1350,1348,1358,1372,1377,1361,1336,1315,1301,1288,
+1276,1274,1288,1307,1323,1335,1343,1346,1341,1333,1328,1328,1329,1332,1340,1355,1374,1391,1403,1411,1419,
+1431,1455,1493,1537,1574,1597,1607,1615,1628,1643,1647,1634,1606,1580,1573,1592,1629,1669,1698,1715,1722,
+1718,1703,1692,1698,1716,1723,1699,1654,1613,1590,1577,1561,1542,1524,1510,1496,1478,1455,1432,1410,1392,
+1373,1348,1317,1284,1253,1226,1200,1170,1135,1101,1074,1053,1036,1020,1005,988,967,940,913,888,862,
+830,791,752,714,677,641,609,582,554,524,493,462,433,404,376,347,317,289,266,246,224,
+198,169,138,104,65,24,-15,-51,-88,-124,-160,-197,-237,-279,-321,-362,-403,-443,-481,-519,-559,
+-605,-653,-700,-745,-788,-832,-879,-928,-978,-1027,-1074,-1118,-1158,-1198,-1242,-1285,-1326,-1363,-1398,-1430,-1460,
+-1489,-1522,-1558,-1594,-1630,-1665,-1702,-1739,-1776,-1814,-1848,-1875,-1899,-1927,-1961,-1993,-2021,-2050,-2084,-2117,-2145,
+-2170,-2196,-2223,-2249,-2277,-2311,-2348,-2381,-2408,-2434,-2463,-2495,-2527,-2559,-2588,-2616,-2643,-2671,-2698,-2726,-2754,
+-2781,-2801,-2813,-2824,-2839,-2857,-2873,-2889,-2906,-2920,-2926,-2929,-2936,-2947,-2957,-2965,-2972,-2975,-2971,-2964,-2962,
+-2964,-2963,-2956,-2946,-2939,-2934,-2927,-2919,-2907,-2893,-2879,-2866,-2854,-2837,-2817,-2796,-2775,-2754,-2734,-2718,-2702,
+-2683,-2660,-2637,-2614,-2589,-2563,-2539,-2517,-2495,-2472,-2448,-2420,-2387,-2354,-2326,-2300,-2269,-2237,-2211,-2188,-2159,
+-2125,-2093,-2067,-2042,-2012,-1983,-1954,-1922,-1889,-1857,-1828,-1796,-1761,-1729,-1703,-1676,-1643,-1609,-1577,-1546,-1512,
+-1478,-1446,-1413,-1378,-1347,-1320,-1292,-1259,-1227,-1199,-1172,-1142,-1112,-1084,-1057,-1029,-1003,-979,-953,-923,-894,
+-871,-848,-826,-807,-789,-765,-735,-707,-683,-657,-626,-595,-568,-544,-515,-479,-443,-410,-382,-356,-324,
+-285,-245,-214,-186,-155,-119,-86,-53,-12,34,73,107,145,190,232,273,323,373,402,407,411,
+428,449,471,505,554,602,642,688,746,800,839,880,927,964,990,1045,1144,1246,1302,1326,1356,
+1393,1404,1389,1379,1386,1390,1367,1304,1197,1076,1011,1041,1144,1314,1612,2057,2511,2777,2808,2703,2518,
+2224,1896,1751,1887,2089,2055,1738,1356,1087,920,781,667,598,541,463,385,345,329,294,234,165,
+92,9,-74,-147,-213,-280,-341,-389,-426,-455,-474,-499,-562,-665,-754,-779,-762,-770,-820,-856,-823,
+-751,-723,-777,-876,-965,-1039,-1127,-1236,-1333,-1389,-1413,-1437,-1472,-1503,-1513,-1503,-1500,-1543,-1652,-1801,-1939,
+-2044,-2139,-2250,-2364,-2443,-2475,-2477,-2480,-2510,-2592,-2726,-2876,-2998,-3088,-3174,-3260,-3318,-3339,-3352,-3377,-3398,
+-3388,-3355,-3328,-3317,-3308,-3293,-3279,-3280,-3298,-3328,-3361,-3387,-3403,-3407,-3394,-3363,-3326,-3292,-3253,-3194,-3123,
+-3071,-3059,-3074,-3095,-3112,-3125,-3135,-3150,-3180,-3218,-3240,-3234,-3207,-3171,-3122,-3057,-2996,-2961,-2940,-2896,-2821,
+-2737,-2668,-2617,-2572,-2522,-2462,-2391,-2320,-2259,-2206,-2150,-2085,-2016,-1951,-1887,-1823,-1757,-1687,-1615,-1542,-1474,
+-1406,-1336,-1265,-1196,-1122,-1041,-963,-893,-827,-751,-667,-588,-518,-451,-381,-313,-253,-196,-132,-55,30,
+114,185,242,294,344,383,406,428,464,510,548,574,602,640,680,714,746,778,805,826,846,
+871,898,922,946,972,999,1024,1050,1077,1103,1127,1151,1178,1203,1221,1236,1252,1267,1284,1307,1339,
+1372,1399,1420,1444,1470,1493,1515,1540,1566,1584,1593,1596,1598,1600,1599,1600,1608,1628,1655,1679,1693,
+1699,1707,1725,1748,1768,1786,1811,1843,1876,1903,1921,1934,1940,1945,1953,1969,1992,2018,2045,2074,2102,
+2123,2135,2144,2154,2171,2198,2233,2268,2299,2337,2400,2491,2585,2649,2674,2679,2683,2690,2691,2675,2631,
+2556,2469,2407,2390,2400,2404,2388,2359,2320,2270,2219,2182,2155,2126,2098,2096,2129,2166,2175,2157,2138,
+2126,2105,2063,2007,1948,1887,1835,1807,1767,1772,1775,1764,1742,1716,1680,1633,1581,1535,1502,1482,1480,
+1501,1543,1596,1655,1718,1783,1850,1923,1998,2059,2090,2086,2057,2017,1975,1937,1905,1876,1846,1823,1835,
+1900,1993,2048,2005,1871,1715,1601,1548,1530,1518,1502,1484,1464,1435,1395,1347,1303,1268,1229,1174,1104,
+1035,980,931,882,834,787,731,655,564,476,402,348,315,290,237,113,-77,-279,-434,-528,-584,
+-631,-679,-730,-778,-820,-859,-900,-935,-942,-919,-896,-910,-962,-1019,-1051,-1059,-1057,-1059,-1066,-1069,-1065,
+-1057,-1053,-1054,-1054,-1048,-1044,-1050,-1062,-1070,-1073,-1083,-1104,-1127,-1141,-1136,-1117,-1094,-1083,-1084,-1087,-1085,
+-1091,-1124,-1172,-1209,-1226,-1236,-1250,-1267,-1285,-1305,-1316,-1295,-1244,-1192,-1162,-1140,-1109,-1087,-1117,-1206,-1305,
+-1363,-1381,-1401,-1457,-1537,-1608,-1643,-1648,-1649,-1666,-1690,-1698,-1675,-1640,-1631,-1669,-1739,-1813,-1885,-1978,-2105,
+-2242,-2356,-2439,-2516,-2607,-2711,-2814,-2909,-2988,-3041,-3063,-3062,-3049,-3032,-3018,-3021,-3056,-3124,-3214,-3314,-3409,
+-3485,-3543,-3605,-3685,-3769,-3830,-3859,-3878,-3920,-4004,-4130,-4280,-4423,-4539,-4623,-4686,-4737,-4785,-4839,-4906,-4987,
+-5075,-5169,-5266,-5353,-5415,-5443,-5431,-5377,-5292,-5225,-5221,-5278,-5340,-5359,-5338,-5313,-5309,-5327,-5358,-5398,-5437,
+-5473,-5509,-5551,-5600,-5651,-5704,-5757,-5801,-5832,-5861,-5905,-5960,-6013,-6057,-6100,-6150,-6207,-6266,-6329,-6394,-6456,
+-6510,-6559,-6610,-6663,-6716,-6772,-6834,-6904,-6977,-7055,-7137,-7221,-7303,-7381,-7463,-7556,-7653,-7744,-7827,-7909,-8000,
+-8095,-8184,-8266,-8345,-8427,-8513,-8598,-8682,-8766,-8853,-8943,-9037,-9127,-9205,-9267,-9319,-9377,-9447,-9521,-9585,-9635,
+-9680,-9728,-9763,-9755,-9691,-9608,-9574,-9626,-9746,-9875,-9961,-9997,-10012,-10045,-10110,-10186,-10244,-10273,-10292,-10322,-10361,
+-10395,-10415,-10422,-10418,-10410,-10419,-10465,-10539,-10607,-10637,-10629,-10605,-10584,-10569,-10554,-10534,-10510,-10479,-10437,-10385,-10325,
+-10264,
+-10197,-10119,-10028,-9933,-9838,-9734,-9620,-9504,-9390,-9268,-9131,-8999,-8896,-8815,-8716,-8579,-8425,-8284,-8152,-8000,-7822,
+-7637,-7466,-7309,-7154,-6997,-6837,-6683,-6537,-6391,-6223,-6026,-5828,-5669,-5560,-5476,-5387,-5291,-5201,-5139,-5119,-5135,
+-5139,-5057,-4869,-4644,-4488,-4441,-4452,-4442,-4381,-4268,-4099,-3858,-3561,-3263,-3002,-2761,-2504,-2245,-2053,-1981,-1996,
+-2008,-1950,-1827,-1683,-1545,-1415,-1289,-1167,-1051,-945,-851,-759,-653,-531,-409,-306,-217,-128,-42,25,72,
+119,176,236,290,347,423,519,620,715,809,911,1021,1138,1257,1376,1498,1619,1732,1825,1895,1956,
+2025,2105,2191,2276,2360,2442,2524,2609,2701,2794,2884,2975,3074,3178,3275,3360,3444,3539,3652,3786,3939,
+4100,4249,4373,4483,4597,4718,4842,4968,5099,5222,5326,5415,5495,5552,5561,5531,5515,5544,5598,5639,5662,
+5688,5716,5741,5779,5852,5943,6014,6063,6119,6186,6238,6279,6342,6432,6504,6540,6591,6685,6777,6816,6826,
+6847,6856,6848,6911,7113,7324,7308,7016,6657,6423,6291,6178,6138,6259,6451,6519,6434,6369,6458,6644,6812,
+6937,7042,7113,7134,7147,7189,7219,7186,7134,7143,7211,7261,7258,7242,7247,7245,7202,7131,7065,7019,6991,
+6980,6971,6948,6915,6890,6880,6864,6837,6815,6811,6805,6781,6754,6747,6759,6767,6754,6728,6701,6680,6668,
+6663,6658,6653,6654,6666,6684,6699,6701,6687,6659,6626,6598,6575,6548,6516,6485,6459,6436,6417,6406,6398,
+6379,6348,6319,6300,6284,6266,6251,6246,6249,6250,6240,6208,6154,6087,6020,5946,5854,5764,5715,5712,5705,
+5652,5569,5498,5451,5407,5361,5332,5319,5305,5288,5293,5325,5350,5353,5359,5393,5435,5441,5405,5352,5303,
+5256,5223,5225,5261,5287,5257,5166,5057,4976,4940,4930,4915,4877,4820,4764,4727,4708,4694,4669,4622,4552,
+4465,4368,4272,4192,4144,4125,4117,4096,4057,4003,3937,3866,3798,3742,3695,3647,3601,3564,3530,3484,3424,
+3370,3333,3306,3271,3227,3185,3150,3115,3078,3043,3017,2998,2976,2939,2886,2835,2807,2803,2799,2772,2718,
+2644,2565,2512,2520,2585,2642,2619,2523,2430,2390,2385,2371,2351,2343,2329,2272,2189,2136,2135,2133,2081,
+1992,1923,1898,1896,1894,1891,1885,1869,1841,1811,1787,1763,1735,1708,1691,1685,1689,1695,1691,1670,1641,
+1622,1616,1611,1607,1617,1648,1685,1704,1703,1694,1680,1653,1614,1573,1540,1509,1476,1444,1423,1409,1397,
+1383,1370,1362,1363,1374,1391,1398,1387,1364,1341,1324,1308,1293,1288,1298,1317,1336,1351,1361,1363,1356,
+1346,1343,1349,1361,1370,1372,1372,1372,1379,1389,1402,1416,1432,1458,1494,1537,1576,1604,1627,1648,1669,
+1684,1686,1675,1650,1616,1586,1579,1600,1641,1688,1732,1764,1771,1748,1715,1701,1713,1729,1722,1687,1645,
+1612,1590,1572,1554,1534,1516,1497,1477,1455,1433,1414,1399,1386,1367,1338,1303,1269,1241,1216,1188,1157,
+1128,1105,1088,1071,1052,1031,1011,989,962,934,908,880,846,807,766,727,688,650,618,594,575,
+555,531,504,477,449,422,394,365,338,316,296,273,244,213,180,141,98,55,16,-19,-55,
+-91,-127,-164,-206,-250,-292,-330,-369,-409,-448,-487,-527,-572,-620,-666,-709,-751,-796,-842,-887,-932,
+-977,-1025,-1071,-1112,-1151,-1192,-1237,-1281,-1321,-1357,-1391,-1423,-1456,-1491,-1529,-1567,-1603,-1637,-1670,-1703,-1739,
+-1778,-1815,-1845,-1871,-1900,-1932,-1963,-1991,-2019,-2049,-2079,-2106,-2133,-2162,-2190,-2214,-2240,-2272,-2310,-2344,-2373,
+-2400,-2430,-2461,-2492,-2522,-2552,-2582,-2612,-2642,-2670,-2697,-2723,-2748,-2768,-2782,-2796,-2812,-2830,-2846,-2862,-2879,
+-2891,-2895,-2896,-2903,-2916,-2926,-2932,-2937,-2940,-2937,-2928,-2924,-2926,-2928,-2925,-2917,-2909,-2902,-2894,-2882,-2868,
+-2851,-2836,-2823,-2811,-2796,-2777,-2757,-2738,-2720,-2703,-2689,-2675,-2655,-2632,-2609,-2588,-2564,-2537,-2512,-2489,-2465,
+-2441,-2417,-2392,-2364,-2336,-2310,-2284,-2254,-2222,-2194,-2170,-2142,-2110,-2079,-2052,-2027,-1999,-1972,-1945,-1915,-1884,
+-1854,-1827,-1796,-1763,-1733,-1707,-1678,-1644,-1611,-1582,-1551,-1516,-1483,-1452,-1421,-1387,-1355,-1329,-1301,-1269,-1236,
+-1209,-1184,-1157,-1130,-1105,-1079,-1048,-1017,-991,-968,-943,-919,-898,-877,-853,-829,-806,-778,-745,-712,-685,
+-660,-634,-605,-574,-542,-507,-472,-440,-411,-384,-357,-328,-292,-254,-220,-190,-157,-122,-94,-70,-41,
+-2,41,86,136,183,219,251,290,333,357,360,366,387,412,434,466,518,576,626,676,733,
+781,814,850,900,949,988,1046,1142,1238,1290,1307,1330,1364,1376,1363,1357,1367,1361,1308,1219,1121,
+1043,1013,1051,1169,1388,1734,2166,2543,2718,2667,2476,2220,1947,1757,1772,1949,2052,1895,1554,1258,1108,
+1021,906,780,690,628,565,507,472,449,413,358,284,186,78,-9,-62,-106,-165,-233,-289,-336,
+-388,-449,-517,-601,-692,-749,-735,-678,-649,-685,-742,-757,-731,-720,-769,-858,-943,-1008,-1081,-1177,-1275,
+-1348,-1393,-1432,-1476,-1517,-1541,-1549,-1562,-1611,-1707,-1829,-1942,-2031,-2112,-2201,-2292,-2364,-2411,-2438,-2458,-2491,
+-2566,-2688,-2822,-2929,-3012,-3099,-3188,-3247,-3261,-3259,-3268,-3282,-3279,-3262,-3251,-3247,-3238,-3216,-3192,-3186,-3209,
+-3252,-3295,-3327,-3348,-3363,-3364,-3339,-3290,-3229,-3159,-3078,-2999,-2949,-2940,-2958,-2986,-3014,-3038,-3056,-3079,-3120,
+-3170,-3202,-3201,-3179,-3147,-3097,-3030,-2967,-2929,-2907,-2873,-2817,-2751,-2686,-2621,-2561,-2506,-2447,-2375,-2299,-2232,
+-2178,-2124,-2061,-1995,-1932,-1871,-1808,-1743,-1675,-1603,-1529,-1458,-1390,-1323,-1256,-1189,-1118,-1042,-967,-900,-835,
+-762,-681,-603,-532,-464,-394,-325,-261,-201,-140,-70,8,87,155,210,263,321,373,409,438,474,
+515,549,573,602,642,685,720,751,782,811,834,853,874,894,914,935,959,984,1004,1023,1046,
+1074,1106,1136,1161,1177,1187,1197,1211,1226,1243,1267,1299,1332,1360,1386,1412,1438,1458,1475,1495,1518,
+1539,1556,1568,1573,1573,1570,1571,1582,1603,1631,1655,1671,1680,1692,1711,1732,1751,1771,1797,1826,1855,
+1880,1900,1913,1919,1923,1934,1955,1980,2005,2031,2060,2086,2102,2104,2102,2105,2122,2154,2193,2224,2236,
+2238,2256,2303,2370,2429,2465,2486,2502,2517,2522,2506,2462,2394,2326,2288,2290,2307,2312,2297,2272,2239,
+2197,2149,2101,2050,1993,1948,1946,1990,2039,2055,2042,2025,2011,1988,1946,1896,1848,1806,1776,1767,1736,
+1739,1732,1717,1699,1680,1650,1605,1558,1522,1498,1484,1481,1490,1507,1530,1565,1614,1675,1742,1817,1898,
+1977,2035,2058,2047,2014,1973,1930,1882,1826,1778,1772,1828,1922,1989,1983,1907,1800,1690,1581,1480,1410,
+1390,1407,1421,1402,1351,1286,1223,1169,1120,1070,1010,946,892,851,811,765,721,687,647,581,492,
+404,335,287,256,230,176,62,-106,-282,-417,-506,-568,-620,-667,-714,-762,-812,-861,-910,-953,-978,
+-984,-986,-1006,-1044,-1079,-1097,-1097,-1090,-1084,-1083,-1083,-1081,-1076,-1074,-1074,-1069,-1060,-1055,-1062,-1074,-1081,
+-1082,-1086,-1096,-1106,-1113,-1116,-1115,-1108,-1101,-1094,-1083,-1074,-1084,-1125,-1176,-1206,-1212,-1218,-1242,-1276,-1308,
+-1335,-1344,-1319,-1264,-1213,-1193,-1187,-1168,-1144,-1159,-1232,-1329,-1399,-1428,-1447,-1494,-1569,-1635,-1659,-1657,-1672,
+-1721,-1773,-1783,-1750,-1718,-1727,-1777,-1835,-1883,-1939,-2029,-2156,-2286,-2389,-2464,-2538,-2628,-2727,-2822,-2908,-2985,
+-3042,-3068,-3065,-3043,-3018,-3002,-3010,-3049,-3118,-3208,-3308,-3405,-3489,-3559,-3628,-3703,-3769,-3808,-3823,-3851,-3926,
+-4060,-4231,-4402,-4542,-4643,-4709,-4752,-4785,-4823,-4887,-4972,-5056,-5121,-5181,-5257,-5343,-5403,-5409,-5364,-5289,-5221,
+-5197,-5236,-5307,-5350,-5338,-5304,-5291,-5309,-5340,-5372,-5409,-5454,-5497,-5536,-5576,-5623,-5678,-5735,-5788,-5826,-5850,
+-5877,-5920,-5977,-6031,-6076,-6119,-6168,-6223,-6281,-6343,-6407,-6469,-6525,-6581,-6639,-6696,-6749,-6800,-6856,-6921,-6991,
+-7067,-7145,-7223,-7296,-7365,-7439,-7524,-7617,-7708,-7794,-7881,-7971,-8063,-8152,-8238,-8323,-8408,-8493,-8576,-8660,-8749,
+-8841,-8935,-9028,-9112,-9179,-9228,-9276,-9341,-9425,-9511,-9579,-9627,-9670,-9719,-9757,-9754,-9695,-9616,-9581,-9631,-9750,
+-9878,-9963,-9995,-10006,-10035,-10098,-10175,-10238,-10275,-10298,-10325,-10360,-10395,-10422,-10436,-10433,-10418,-10412,-10436,-10489,-10547,
+-10583,
+-10590,-10576,-10555,-10535,-10520,-10504,-10482,-10450,-10408,-10358,-10301,-10241,-10178,-10106,-10022,-9932,-9838,-9733,-9615,-9494,-9380,
+-9269,
+-9150,-9030,-8927,-8833,-8720,-8575,-8422,-8286,-8154,-7998,-7816,-7633,-7467,-7313,-7158,-7000,-6840,-6685,-6541,-6395,-6221,
+-6010,-5799,-5644,-5560,-5503,-5425,-5321,-5217,-5136,-5092,-5088,-5095,-5048,-4898,-4680,-4485,-4370,-4316,-4273,-4222,-4158,
+-4053,-3865,-3609,-3351,-3139,-2936,-2679,-2372,-2108,-1969,-1942,-1939,-1885,-1775,-1642,-1510,-1381,-1254,-1129,-1009,-898,
+-798,-706,-605,-490,-371,-265,-176,-94,-19,46,104,162,223,282,339,404,489,590,695,798,899,
+1003,1117,1239,1361,1475,1581,1688,1794,1884,1949,2002,2064,2142,2229,2319,2406,2492,2576,2660,2747,2836,
+2924,3016,3116,3219,3317,3406,3495,3594,3714,3864,4040,4215,4363,4480,4581,4675,4756,4837,4954,5117,5285,
+5405,5471,5516,5546,5543,5516,5512,5554,5601,5610,5598,5609,5649,5696,5750,5830,5926,5997,6039,6086,6150,
+6207,6254,6323,6418,6495,6531,6575,6663,6757,6808,6837,6876,6896,6885,6934,7127,7341,7327,7023,6639,6388,
+6260,6162,6137,6278,6511,6631,6570,6473,6494,6629,6795,6948,7070,7132,7143,7165,7225,7262,7226,7173,7188,
+7255,7293,7279,7266,7283,7287,7237,7151,7074,7025,7002,6997,6993,6971,6936,6912,6906,6896,6873,6851,6841,
+6831,6810,6790,6781,6778,6769,6756,6744,6730,6710,6693,6686,6687,6687,6691,6704,6723,6738,6739,6721,6689,
+6653,6625,6601,6570,6533,6502,6482,6463,6441,6424,6414,6399,6371,6342,6328,6323,6310,6285,6262,6253,6256,
+6253,6224,6162,6087,6021,5965,5898,5824,5765,5732,5696,5634,5562,5507,5467,5423,5381,5361,5352,5330,5301,
+5302,5341,5378,5390,5400,5439,5489,5505,5472,5416,5364,5325,5307,5319,5347,5352,5300,5197,5083,5000,4964,
+4961,4959,4931,4875,4812,4763,4733,4712,4684,4639,4580,4512,4432,4340,4251,4187,4157,4141,4117,4077,4029,
+3971,3904,3836,3782,3740,3700,3653,3605,3560,3510,3455,3408,3375,3347,3306,3253,3202,3164,3129,3086,3036,
+3001,2991,2990,2969,2916,2856,2823,2820,2819,2798,2752,2681,2591,2518,2513,2582,2651,2638,2546,2456,2421,
+2418,2403,2380,2371,2362,2313,2226,2155,2134,2138,2116,2056,1991,1947,1928,1922,1919,1913,1898,1877,1853,
+1827,1800,1774,1752,1733,1721,1721,1732,1735,1716,1685,1659,1644,1632,1623,1631,1662,1696,1715,1716,1708,
+1694,1672,1642,1610,1579,1546,1514,1488,1467,1445,1419,1394,1377,1372,1378,1390,1404,1411,1404,1388,1367,
+1347,1327,1312,1306,1311,1323,1339,1355,1369,1378,1376,1369,1364,1371,1387,1402,1403,1394,1384,1382,1390,
+1406,1424,1445,1470,1501,1538,1572,1600,1627,1655,1681,1696,1698,1695,1685,1665,1637,1616,1617,1642,1683,
+1734,1782,1809,1797,1755,1715,1702,1711,1716,1700,1666,1629,1600,1581,1565,1547,1525,1501,1478,1455,1434,
+1417,1405,1396,1382,1358,1327,1295,1267,1241,1214,1185,1158,1138,1122,1103,1076,1046,1020,995,969,941,
+915,888,856,819,780,744,709,674,646,626,612,598,577,552,527,502,476,447,414,384,358,
+334,306,274,241,206,166,122,80,43,10,-22,-56,-92,-131,-175,-219,-260,-298,-337,-377,-418,
+-458,-499,-544,-592,-638,-681,-724,-768,-814,-857,-898,-939,-984,-1029,-1068,-1104,-1142,-1187,-1233,-1275,-1311,
+-1346,-1383,-1419,-1455,-1493,-1532,-1570,-1605,-1635,-1665,-1698,-1736,-1773,-1805,-1832,-1862,-1894,-1926,-1954,-1981,-2011,
+-2040,-2068,-2097,-2130,-2160,-2186,-2211,-2243,-2279,-2314,-2343,-2371,-2400,-2430,-2460,-2490,-2521,-2551,-2581,-2610,-2636,
+-2661,-2684,-2707,-2728,-2745,-2762,-2781,-2799,-2815,-2832,-2851,-2865,-2870,-2871,-2876,-2885,-2893,-2897,-2902,-2906,-2904,
+-2897,-2892,-2893,-2896,-2894,-2887,-2879,-2870,-2858,-2844,-2829,-2812,-2796,-2784,-2772,-2758,-2739,-2720,-2704,-2688,-2674,
+-2659,-2644,-2624,-2601,-2581,-2562,-2540,-2514,-2488,-2463,-2436,-2410,-2385,-2363,-2339,-2315,-2292,-2269,-2240,-2208,-2178,
+-2152,-2125,-2094,-2064,-2036,-2010,-1983,-1956,-1929,-1902,-1874,-1848,-1823,-1793,-1762,-1734,-1708,-1678,-1643,-1612,-1586,
+-1557,-1523,-1491,-1462,-1432,-1398,-1365,-1338,-1312,-1282,-1252,-1225,-1200,-1173,-1147,-1126,-1102,-1071,-1039,-1012,-990,
+-966,-943,-922,-901,-874,-843,-810,-778,-742,-706,-675,-649,-626,-603,-574,-538,-499,-465,-436,-409,-382,
+-355,-327,-294,-258,-226,-199,-169,-135,-106,-87,-69,-40,2,55,111,159,192,216,247,284,308,
+316,328,354,383,409,445,498,556,605,653,707,755,786,821,878,943,997,1051,1126,1204,1253,
+1275,1298,1327,1340,1335,1335,1336,1301,1218,1128,1076,1065,1079,1130,1266,1526,1898,2302,2608,2708,2589,
+2323,2017,1777,1702,1805,1950,1938,1708,1414,1240,1203,1176,1075,937,825,747,681,624,584,554,523,
+478,400,280,149,59,23,-3,-56,-129,-188,-232,-284,-361,-462,-575,-678,-731,-708,-639,-592,-614,
+-678,-725,-727,-715,-739,-807,-888,-957,-1028,-1117,-1219,-1306,-1365,-1405,-1442,-1480,-1516,-1550,-1594,-1660,-1751,
+-1851,-1939,-2011,-2079,-2153,-2227,-2292,-2346,-2392,-2431,-2477,-2554,-2665,-2780,-2871,-2949,-3037,-3128,-3184,-3188,-3167,
+-3158,-3163,-3167,-3169,-3173,-3177,-3168,-3140,-3105,-3089,-3111,-3164,-3221,-3261,-3284,-3299,-3300,-3278,-3235,-3179,-3107,
+-3020,-2934,-2881,-2869,-2885,-2912,-2944,-2974,-2999,-3028,-3075,-3131,-3166,-3166,-3142,-3110,-3064,-3002,-2942,-2900,-2871,
+-2838,-2798,-2753,-2697,-2628,-2559,-2500,-2443,-2372,-2290,-2217,-2159,-2103,-2041,-1977,-1917,-1857,-1796,-1732,-1666,-1594,
+-1518,-1447,-1380,-1312,-1243,-1175,-1108,-1039,-969,-902,-834,-763,-686,-611,-540,-470,-400,-329,-263,-201,-142,
+-80,-10,61,125,176,229,294,361,414,454,491,529,558,578,602,639,683,721,752,780,806,
+827,845,863,882,900,921,944,966,985,1002,1023,1053,1087,1119,1141,1153,1160,1169,1182,1197,1215,
+1240,1269,1298,1324,1350,1378,1405,1426,1444,1464,1486,1507,1526,1541,1550,1553,1555,1560,1573,1592,1616,
+1639,1656,1667,1676,1687,1698,1712,1732,1761,1795,1827,1855,1877,1890,1894,1896,1907,1929,1953,1975,1998,
+2026,2052,2068,2071,2069,2074,2092,2122,2154,2173,2169,2152,2146,2172,2227,2283,2322,2340,2347,2347,2341,
+2324,2294,2251,2210,2190,2193,2203,2202,2189,2172,2151,2118,2071,2013,1945,1874,1828,1835,1888,1940,1954,
+1934,1904,1878,1850,1820,1791,1768,1748,1736,1736,1708,1707,1699,1686,1673,1657,1626,1586,1550,1526,1511,
+1500,1490,1480,1466,1458,1471,1511,1568,1632,1706,1789,1872,1938,1975,1981,1961,1925,1879,1821,1752,1700,
+1708,1782,1870,1898,1850,1776,1720,1665,1568,1435,1335,1314,1349,1370,1338,1270,1197,1132,1070,1007,944,
+882,828,787,753,711,659,610,575,539,480,398,316,252,207,177,149,99,2,-135,-278,-393,
+-480,-550,-613,-669,-722,-779,-838,-893,-944,-993,-1036,-1069,-1089,-1105,-1119,-1132,-1141,-1144,-1137,-1125,-1116,
+-1113,-1111,-1107,-1103,-1098,-1092,-1083,-1080,-1085,-1093,-1095,-1096,-1101,-1108,-1111,-1114,-1119,-1123,-1120,-1113,-1100,
+-1080,-1063,-1074,-1120,-1173,-1194,-1193,-1208,-1259,-1320,-1364,-1382,-1378,-1347,-1295,-1250,-1233,-1232,-1220,-1202,-1210,
+-1266,-1353,-1428,-1467,-1489,-1528,-1595,-1656,-1677,-1669,-1685,-1748,-1818,-1840,-1816,-1800,-1830,-1892,-1947,-1983,-2025,
+-2101,-2208,-2321,-2414,-2490,-2564,-2647,-2732,-2812,-2890,-2968,-3035,-3070,-3068,-3040,-3008,-2989,-3002,-3050,-3125,-3211,
+-3304,-3400,-3495,-3581,-3655,-3717,-3760,-3783,-3804,-3861,-3981,-4157,-4353,-4527,-4657,-4744,-4804,-4843,-4867,-4894,-4947,
+-5026,-5099,-5142,-5176,-5234,-5309,-5353,-5334,-5266,-5194,-5160,-5183,-5248,-5311,-5330,-5303,-5275,-5282,-5317,-5353,-5383,
+-5420,-5469,-5518,-5557,-5594,-5637,-5688,-5741,-5789,-5828,-5860,-5893,-5937,-5988,-6038,-6086,-6135,-6188,-6241,-6295,-6352,
+-6415,-6477,-6537,-6599,-6663,-6724,-6778,-6828,-6881,-6941,-7007,-7078,-7152,-7224,-7291,-7358,-7429,-7508,-7592,-7678,-7765,
+-7851,-7938,-8025,-8114,-8206,-8298,-8387,-8470,-8552,-8641,-8736,-8832,-8925,-9012,-9089,-9151,-9200,-9254,-9326,-9416,-9502,
+-9568,-9614,-9658,-9710,-9756,-9763,-9714,-9636,-9589,-9622,-9732,-9861,-9952,-9989,-10002,-10032,-10092,-10167,-10230,-10271,-10299,
+-10326,-10360,-10396,-10427,-10442,-10435,-10412,-10396,-10404,-10436,-10478,-10514,-10533,-10530,-10512,-10492,-10479,-10467,-10446,-10414,-10375,
+-10332,
+-10281,-10222,-10159,-10090,-10011,-9922,-9823,-9715,-9597,-9481,-9378,-9286,-9188,-9076,-8960,-8840,-8707,-8563,-8422,-8295,-8162,
+-8002,-7821,-7644,-7481,-7325,-7166,-7004,-6845,-6693,-6550,-6406,-6233,-6018,-5800,-5643,-5565,-5518,-5443,-5332,-5216,-5124,
+-5063,-5039,-5039,-5012,-4905,-4718,-4512,-4340,-4213,-4118,-4053,-4007,-3931,-3780,-3566,-3361,-3207,-3062,-2851,-2564,-2278,
+-2074,-1960,-1880,-1791,-1688,-1583,-1473,-1348,-1212,-1082,-965,-859,-760,-665,-569,-463,-350,-241,-145,-66,2,
+69,138,211,279,339,401,477,569,671,775,880,985,1091,1206,1331,1455,1562,1653,1746,1847,1943,
+2016,2071,2126,2196,2277,2363,2450,2537,2624,2709,2794,2882,2974,3073,3174,3267,3355,3445,3545,3658,3789,
+3951,4138,4316,4456,4564,4661,4749,4811,4866,4967,5137,5322,5451,5512,5544,5564,5555,5522,5513,5547,5583,
+5578,5557,5574,5630,5688,5738,5806,5892,5958,5996,6037,6102,6168,6222,6290,6385,6471,6522,6567,6637,6712,
+6764,6817,6888,6930,6919,6951,7121,7321,7297,6964,6527,6227,6091,6025,6024,6158,6379,6527,6531,6489,6517,
+6632,6792,6963,7104,7170,7174,7190,7249,7289,7264,7230,7258,7320,7340,7309,7291,7312,7320,7272,7186,7104,
+7048,7021,7015,7012,6990,6957,6937,6934,6927,6907,6888,6879,6869,6851,6834,6821,6802,6780,6768,6767,6758,
+6735,6714,6710,6717,6724,6732,6748,6765,6775,6773,6757,6727,6689,6655,6628,6594,6554,6521,6502,6484,6458,
+6436,6426,6417,6395,6370,6357,6354,6343,6318,6289,6271,6268,6263,6232,6167,6094,6042,6005,5950,5866,5782,
+5726,5683,5627,5563,5510,5465,5419,5383,5378,5389,5379,5348,5337,5369,5414,5436,5443,5465,5499,5515,5497,
+5453,5409,5380,5378,5396,5409,5389,5324,5227,5122,5036,4989,4980,4984,4965,4912,4845,4790,4756,4732,4699,
+4654,4603,4549,4483,4396,4299,4222,4178,4149,4115,4073,4032,3990,3940,3881,3827,3783,3743,3696,3643,3591,
+3538,3488,3445,3411,3377,3331,3272,3215,3171,3136,3095,3048,3010,2999,3003,2988,2943,2890,2857,2845,2832,
+2806,2766,2704,2618,2556,2578,2682,2766,2736,2606,2483,2434,2433,2424,2405,2397,2389,2345,2262,2185,2155,
+2157,2146,2101,2038,1986,1959,1951,1948,1940,1927,1912,1893,1869,1839,1812,1791,1773,1760,1760,1770,1773,
+1756,1726,1698,1677,1659,1647,1651,1675,1702,1719,1721,1711,1694,1671,1649,1629,1606,1578,1549,1525,1502,
+1474,1441,1409,1387,1380,1385,1398,1409,1413,1411,1402,1385,1363,1343,1331,1327,1328,1332,1339,1351,1367,
+1383,1392,1390,1382,1384,1397,1412,1414,1405,1397,1398,1408,1421,1435,1452,1474,1501,1532,1560,1583,1606,
+1634,1663,1683,1691,1695,1700,1696,1678,1656,1645,1653,1677,1715,1766,1811,1824,1795,1743,1701,1688,1693,
+1695,1680,1650,1620,1598,1580,1560,1537,1511,1484,1458,1435,1419,1411,1404,1394,1378,1357,1332,1304,1274,
+1242,1208,1179,1158,1141,1120,1088,1052,1020,995,971,945,920,897,871,842,810,779,750,722,698,
+680,665,648,624,595,568,543,516,484,448,414,385,359,329,295,260,223,184,141,99,63,
+32,3,-28,-63,-103,-147,-191,-231,-269,-309,-351,-392,-432,-472,-516,-563,-611,-656,-699,-743,-788,
+-833,-874,-913,-953,-993,-1030,-1063,-1099,-1142,-1187,-1228,-1264,-1301,-1340,-1378,-1413,-1450,-1489,-1530,-1567,-1599,
+-1629,-1661,-1696,-1730,-1762,-1791,-1822,-1854,-1884,-1912,-1941,-1972,-2003,-2032,-2063,-2098,-2131,-2158,-2184,-2216,-2252,
+-2285,-2314,-2342,-2372,-2401,-2430,-2460,-2491,-2521,-2548,-2573,-2597,-2620,-2642,-2664,-2685,-2705,-2724,-2744,-2764,-2781,
+-2798,-2817,-2833,-2843,-2845,-2847,-2852,-2857,-2863,-2870,-2876,-2876,-2869,-2864,-2863,-2862,-2859,-2853,-2845,-2835,-2822,
+-2808,-2793,-2778,-2762,-2748,-2736,-2721,-2703,-2685,-2670,-2657,-2642,-2626,-2608,-2588,-2567,-2550,-2534,-2514,-2489,-2462,
+-2437,-2411,-2385,-2360,-2338,-2315,-2292,-2271,-2250,-2224,-2193,-2162,-2135,-2109,-2079,-2047,-2018,-1991,-1965,-1939,-1913,
+-1887,-1862,-1839,-1815,-1787,-1758,-1732,-1707,-1677,-1645,-1615,-1590,-1562,-1530,-1500,-1474,-1445,-1410,-1376,-1349,-1325,
+-1299,-1272,-1246,-1219,-1189,-1162,-1142,-1121,-1093,-1063,-1038,-1015,-988,-959,-934,-910,-880,-844,-807,-772,-738,
+-703,-670,-641,-616,-593,-569,-537,-500,-466,-438,-411,-382,-354,-327,-295,-261,-233,-211,-186,-152,-119,
+-98,-82,-56,-17,31,80,120,148,169,197,231,258,273,290,319,354,390,434,486,533,572,
+616,674,727,759,793,856,938,1005,1053,1104,1163,1211,1240,1264,1292,1310,1315,1311,1285,1215,1126,
+1078,1105,1166,1214,1272,1417,1695,2069,2441,2703,2770,2618,2303,1960,1738,1713,1822,1895,1801,1577,1379,
+1314,1338,1333,1245,1114,992,894,810,740,687,648,618,578,499,375,241,152,115,89,36,-30,
+-83,-120,-167,-249,-367,-504,-625,-694,-694,-647,-607,-619,-674,-721,-723,-695,-688,-733,-813,-895,-977,
+-1075,-1185,-1281,-1341,-1373,-1398,-1429,-1471,-1521,-1585,-1664,-1753,-1840,-1912,-1973,-2036,-2105,-2174,-2236,-2294,-2349,
+-2401,-2461,-2544,-2649,-2751,-2831,-2901,-2985,-3071,-3120,-3118,-3091,-3074,-3078,-3092,-3109,-3122,-3128,-3116,-3084,-3044,
+-3022,-3041,-3095,-3156,-3199,-3219,-3225,-3217,-3195,-3166,-3135,-3085,-3007,-2921,-2865,-2850,-2859,-2879,-2907,-2940,-2971,
+-3004,-3050,-3104,-3136,-3132,-3103,-3067,-3024,-2972,-2918,-2872,-2834,-2796,-2762,-2729,-2681,-2616,-2548,-2493,-2442,-2374,
+-2293,-2218,-2157,-2099,-2037,-1974,-1913,-1851,-1790,-1729,-1664,-1591,-1513,-1441,-1374,-1306,-1233,-1162,-1095,-1031,-965,
+-896,-825,-754,-682,-612,-541,-469,-397,-326,-259,-196,-138,-80,-15,51,111,159,211,281,360,425,
+470,506,539,564,581,602,635,677,717,750,775,796,813,829,848,868,888,909,930,950,969,
+988,1011,1040,1070,1097,1116,1129,1140,1151,1165,1179,1198,1220,1244,1266,1290,1317,1346,1372,1392,1412,
+1434,1457,1480,1501,1519,1530,1534,1536,1542,1553,1568,1590,1614,1635,1650,1660,1667,1672,1681,1700,1730,
+1764,1796,1823,1844,1855,1855,1856,1867,1889,1913,1934,1958,1987,2018,2041,2054,2063,2073,2089,2107,2121,
+2124,2108,2084,2076,2103,2157,2211,2243,2247,2233,2213,2193,2175,2157,2136,2115,2102,2100,2100,2096,2088,
+2079,2063,2033,1985,1925,1855,1789,1754,1772,1825,1869,1876,1851,1815,1782,1757,1741,1733,1725,1714,1707,
+1708,1681,1680,1673,1666,1660,1646,1619,1588,1566,1552,1538,1522,1503,1476,1442,1418,1423,1455,1500,1551,
+1614,1689,1762,1818,1857,1878,1876,1846,1796,1733,1668,1628,1640,1700,1751,1743,1688,1646,1640,1621,1535,
+1405,1311,1298,1328,1330,1279,1209,1148,1094,1028,949,870,803,750,710,673,625,565,505,459,415,
+358,286,214,157,114,81,53,11,-63,-171,-288,-391,-479,-560,-636,-706,-772,-841,-910,-973,-1030,
+-1086,-1143,-1194,-1225,-1232,-1222,-1214,-1215,-1217,-1209,-1191,-1177,-1172,-1167,-1158,-1145,-1136,-1129,-1123,-1120,-1121,
+-1119,-1116,-1118,-1126,-1133,-1135,-1135,-1136,-1135,-1130,-1124,-1111,-1082,-1050,-1052,-1102,-1161,-1182,-1178,-1204,-1282,
+-1370,-1419,-1422,-1399,-1365,-1326,-1293,-1276,-1268,-1258,-1252,-1270,-1323,-1399,-1470,-1512,-1530,-1555,-1606,-1661,-1682,
+-1674,-1687,-1753,-1835,-1878,-1878,-1884,-1929,-1995,-2048,-2081,-2117,-2176,-2259,-2350,-2436,-2515,-2590,-2662,-2728,-2791,
+-2861,-2941,-3014,-3054,-3053,-3027,-2996,-2984,-3008,-3068,-3151,-3236,-3321,-3414,-3517,-3611,-3682,-3726,-3754,-3784,-3837,
+-3937,-4092,-4283,-4474,-4629,-4739,-4814,-4874,-4920,-4949,-4967,-4996,-5045,-5094,-5127,-5156,-5203,-5257,-5274,-5233,-5162,
+-5116,-5126,-5183,-5253,-5296,-5296,-5271,-5261,-5283,-5322,-5354,-5383,-5425,-5479,-5531,-5572,-5608,-5647,-5688,-5730,-5772,
+-5818,-5865,-5911,-5955,-5999,-6044,-6095,-6152,-6208,-6259,-6307,-6361,-6422,-6485,-6548,-6613,-6680,-6744,-6801,-6855,-6909,
+-6967,-7030,-7097,-7164,-7228,-7291,-7357,-7431,-7507,-7583,-7661,-7743,-7825,-7905,-7987,-8075,-8172,-8268,-8358,-8442,-8528,
+-8624,-8726,-8825,-8915,-8995,-9065,-9126,-9184,-9249,-9327,-9414,-9492,-9554,-9603,-9651,-9706,-9758,-9777,-9739,-9657,-9591,
+-9604,-9704,-9836,-9934,-9975,-9993,-10031,-10097,-10172,-10231,-10271,-10299,-10328,-10361,-10397,-10426,-10437,-10422,-10393,-10369,-10365,
+-10382,
+-10410,-10443,-10468,-10474,-10462,-10448,-10440,-10433,-10413,-10380,-10342,-10303,-10255,-10195,-10131,-10065,-9988,-9897,-9796,-9689,-9581,
+-9479,
+-9389,-9309,-9218,-9102,-8964,-8820,-8677,-8541,-8417,-8299,-8169,-8012,-7840,-7673,-7512,-7350,-7181,-7016,-6856,-6702,-6554,
+-6407,-6239,-6031,-5813,-5648,-5562,-5514,-5442,-5330,-5209,-5109,-5038,-4995,-4975,-4951,-4881,-4745,-4562,-4363,-4175,-4017,
+-3906,-3826,-3734,-3593,-3423,-3281,-3189,-3105,-2966,-2754,-2511,-2281,-2073,-1877,-1699,-1560,-1464,-1378,-1269,-1137,-1013,
+-915,-830,-740,-640,-539,-439,-334,-226,-125,-43,23,91,171,256,334,403,475,563,662,761,858,
+958,1059,1163,1277,1405,1532,1637,1720,1802,1898,1999,2085,2151,2209,2272,2344,2424,2509,2596,2683,2769,
+2853,2942,3040,3146,3245,3327,3403,3495,3610,3737,3873,4030,4207,4372,4499,4602,4710,4816,4892,4945,5028,
+5174,5341,5466,5538,5583,5607,5586,5531,5496,5509,5533,5528,5515,5540,5601,5658,5701,5760,5840,5907,5946,
+5986,6053,6126,6185,6248,6334,6423,6491,6548,6612,6675,6728,6795,6882,6938,6940,6972,7120,7286,7232,6864,
+6365,5996,5834,5800,5839,5963,6144,6297,6385,6453,6546,6665,6809,6981,7142,7225,7228,7229,7271,7311,7309,
+7303,7341,7390,7387,7339,7311,7326,7335,7299,7228,7153,7092,7054,7041,7035,7016,6988,6970,6962,6948,6927,
+6914,6909,6899,6880,6865,6855,6840,6822,6813,6810,6795,6765,6744,6745,6757,6765,6773,6788,6802,6805,6800,
+6786,6757,6716,6678,6648,6618,6582,6551,6531,6510,6482,6458,6446,6439,6423,6402,6384,6374,6364,6349,6330,
+6312,6299,6285,6250,6186,6118,6079,6056,5998,5888,5777,5715,5692,5658,5598,5533,5477,5425,5390,5394,5425,
+5436,5410,5387,5404,5450,5484,5491,5488,5491,5496,5488,5463,5432,5415,5423,5441,5435,5390,5316,5232,5145,
+5063,5005,4986,4989,4976,4931,4868,4811,4772,4740,4703,4657,4611,4566,4512,4435,4341,4256,4196,4155,4115,
+4074,4039,4010,3974,3926,3872,3824,3780,3733,3681,3626,3572,3527,3488,3453,3412,3360,3300,3240,3192,3156,
+3120,3078,3040,3020,3015,3004,2974,2938,2911,2888,2858,2824,2791,2737,2658,2606,2651,2779,2866,2808,2637,
+2484,2426,2430,2430,2415,2406,2399,2363,2292,2222,2185,2173,2156,2116,2064,2019,1993,1984,1979,1969,1954,
+1940,1926,1907,1880,1853,1830,1811,1800,1798,1802,1800,1787,1765,1742,1718,1695,1678,1676,1686,1701,1713,
+1715,1705,1684,1660,1642,1631,1619,1600,1577,1550,1523,1494,1464,1434,1406,1388,1385,1395,1404,1408,1408,
+1403,1391,1371,1353,1346,1346,1345,1343,1343,1348,1360,1377,1392,1396,1391,1389,1397,1407,1406,1400,1405,
+1423,1440,1448,1448,1452,1466,1490,1520,1547,1564,1578,1598,1627,1653,1670,1681,1690,1692,1682,1665,1656,
+1659,1672,1695,1733,1782,1819,1819,1779,1725,1689,1681,1687,1687,1673,1651,1627,1603,1577,1552,1526,1498,
+1466,1439,1424,1417,1411,1401,1391,1379,1362,1335,1299,1260,1221,1189,1165,1148,1128,1098,1064,1033,1008,
+986,962,939,920,901,879,853,827,802,778,756,736,716,692,662,628,596,567,539,506,468,
+433,404,379,350,315,277,238,198,156,114,77,47,19,-8,-41,-80,-121,-162,-201,-241,-284,
+-328,-370,-409,-446,-486,-532,-581,-629,-672,-714,-759,-806,-851,-890,-926,-963,-998,-1031,-1066,-1105,-1146,
+-1185,-1221,-1260,-1300,-1337,-1370,-1405,-1444,-1485,-1524,-1559,-1592,-1626,-1660,-1693,-1724,-1755,-1787,-1819,-1848,-1874,
+-1904,-1937,-1969,-1999,-2030,-2063,-2096,-2124,-2152,-2184,-2220,-2253,-2282,-2311,-2342,-2371,-2400,-2430,-2461,-2488,-2511,
+-2534,-2557,-2582,-2604,-2625,-2646,-2666,-2685,-2705,-2726,-2744,-2759,-2776,-2793,-2805,-2810,-2811,-2814,-2821,-2830,-2840,
+-2848,-2849,-2845,-2839,-2834,-2828,-2821,-2815,-2810,-2802,-2789,-2774,-2759,-2744,-2728,-2713,-2700,-2684,-2667,-2650,-2637,
+-2624,-2607,-2589,-2571,-2552,-2534,-2518,-2503,-2483,-2456,-2430,-2406,-2384,-2361,-2338,-2316,-2293,-2269,-2247,-2227,-2204,
+-2176,-2146,-2120,-2094,-2063,-2030,-1999,-1972,-1948,-1923,-1899,-1875,-1852,-1828,-1804,-1779,-1753,-1728,-1704,-1677,-1647,
+-1620,-1594,-1566,-1535,-1508,-1483,-1455,-1422,-1389,-1362,-1339,-1313,-1288,-1263,-1236,-1205,-1176,-1154,-1132,-1107,-1081,
+-1059,-1036,-1006,-971,-937,-907,-875,-839,-802,-769,-739,-709,-679,-647,-617,-590,-566,-539,-506,-475,-447,
+-419,-389,-360,-333,-304,-271,-245,-225,-203,-169,-133,-106,-85,-56,-16,23,54,78,98,120,148,
+183,214,237,256,284,322,366,416,465,502,533,579,644,704,737,768,831,922,997,1039,1073,
+1119,1169,1207,1235,1265,1292,1299,1275,1213,1129,1077,1110,1218,1325,1385,1443,1596,1878,2233,2569,2801,
+2854,2684,2341,1982,1775,1768,1850,1864,1754,1593,1491,1479,1497,1475,1397,1285,1163,1046,943,862,801,
+754,714,665,586,473,358,275,227,187,136,83,39,0,-55,-146,-272,-416,-547,-635,-669,-660,
+-642,-649,-684,-716,-707,-663,-636,-666,-746,-841,-939,-1048,-1163,-1256,-1309,-1333,-1355,-1389,-1434,-1487,-1552,
+-1632,-1719,-1800,-1867,-1926,-1989,-2060,-2131,-2197,-2258,-2316,-2372,-2434,-2517,-2616,-2707,-2775,-2837,-2910,-2985,-3030,
+-3034,-3018,-3011,-3024,-3049,-3075,-3092,-3094,-3080,-3053,-3021,-3004,-3019,-3061,-3108,-3139,-3153,-3153,-3137,-3113,-3099,
+-3096,-3076,-3018,-2940,-2886,-2869,-2871,-2878,-2897,-2930,-2968,-3006,-3050,-3096,-3119,-3108,-3073,-3033,-2991,-2941,-2891,
+-2844,-2800,-2758,-2722,-2687,-2642,-2581,-2521,-2472,-2426,-2367,-2296,-2227,-2167,-2108,-2047,-1984,-1920,-1854,-1790,-1730,
+-1667,-1595,-1516,-1442,-1375,-1307,-1232,-1158,-1089,-1025,-959,-890,-818,-748,-680,-613,-544,-471,-399,-330,-263,
+-199,-138,-77,-12,54,112,159,211,283,365,434,479,511,540,565,585,605,635,674,712,744,
+769,787,804,821,841,862,881,900,918,935,953,974,1000,1028,1054,1075,1091,1106,1121,1137,1151,
+1164,1180,1199,1219,1239,1262,1291,1319,1339,1354,1371,1392,1417,1444,1472,1495,1506,1506,1501,1501,1507,
+1522,1547,1577,1605,1627,1642,1654,1663,1674,1691,1714,1739,1763,1785,1802,1811,1812,1816,1830,1855,1883,
+1909,1938,1972,2006,2034,2053,2067,2078,2088,2095,2097,2090,2069,2046,2041,2068,2118,2162,2179,2169,2145,
+2118,2096,2081,2069,2057,2042,2028,2021,2018,2015,2009,2000,1980,1948,1906,1857,1806,1762,1745,1764,1800,
+1824,1822,1801,1773,1746,1726,1718,1715,1706,1692,1682,1681,1661,1661,1657,1656,1655,1645,1626,1608,1595,
+1580,1557,1532,1507,1477,1442,1423,1433,1459,1484,1510,1554,1613,1666,1704,1740,1773,1786,1759,1703,1641,
+1593,1572,1582,1605,1607,1573,1532,1525,1544,1531,1456,1358,1302,1304,1316,1289,1228,1172,1134,1091,1020,
+923,825,744,682,633,589,538,476,410,349,292,232,169,109,58,15,-18,-47,-80,-138,-225,
+-327,-425,-515,-603,-691,-776,-856,-935,-1013,-1086,-1154,-1220,-1289,-1353,-1392,-1392,-1362,-1330,-1315,-1307,-1293,
+-1273,-1257,-1248,-1235,-1214,-1192,-1179,-1173,-1167,-1161,-1155,-1150,-1146,-1150,-1158,-1161,-1160,-1160,-1160,-1156,-1148,
+-1144,-1130,-1087,-1032,-1018,-1072,-1143,-1170,-1165,-1196,-1293,-1404,-1460,-1448,-1406,-1369,-1346,-1332,-1316,-1296,-1281,
+-1288,-1325,-1383,-1447,-1504,-1540,-1555,-1568,-1604,-1650,-1673,-1669,-1683,-1751,-1843,-1908,-1935,-1961,-2010,-2067,-2112,
+-2145,-2184,-2238,-2303,-2376,-2455,-2533,-2606,-2670,-2726,-2780,-2846,-2922,-2990,-3024,-3021,-3001,-2985,-2991,-3030,-3103,
+-3194,-3283,-3368,-3460,-3559,-3646,-3703,-3736,-3770,-3830,-3927,-4064,-4231,-4410,-4573,-4700,-4786,-4845,-4898,-4950,-4991,
+-5007,-5010,-5020,-5046,-5082,-5125,-5169,-5197,-5186,-5135,-5084,-5077,-5123,-5195,-5251,-5270,-5260,-5246,-5254,-5284,-5319,
+-5348,-5381,-5429,-5486,-5538,-5579,-5615,-5651,-5683,-5714,-5752,-5803,-5863,-5921,-5969,-6011,-6054,-6106,-6165,-6221,-6270,
+-6318,-6372,-6432,-6494,-6558,-6624,-6691,-6757,-6820,-6880,-6938,-6996,-7059,-7126,-7191,-7247,-7301,-7364,-7438,-7513,-7583,
+-7653,-7727,-7803,-7877,-7954,-8041,-8137,-8234,-8325,-8413,-8506,-8608,-8713,-8812,-8900,-8975,-9042,-9106,-9174,-9251,-9334,
+-9414,-9486,-9546,-9599,-9650,-9703,-9754,-9782,-9753,-9672,-9594,-9593,-9689,-9825,-9922,-9958,-9976,-10023,-10101,-10181,-10238,
+-10273,-10301,-10329,-10361,-10394,-10420,-10426,-10407,-10374,-10347,-10337,-10343,-10363,-10392,-10417,-10426,-10418,-10408,-10407,-10406,-10390,
+-10357,
+-10318,-10278,-10228,-10167,-10104,-10040,-9968,-9878,-9779,-9682,-9590,-9501,-9414,-9323,-9216,-9083,-8932,-8780,-8638,-8510,-8396,
+-8287,-8167,-8026,-7870,-7710,-7549,-7378,-7202,-7030,-6862,-6697,-6538,-6386,-6225,-6032,-5822,-5650,-5551,-5497,-5431,-5327,
+-5209,-5107,-5029,-4970,-4923,-4883,-4831,-4746,-4612,-4428,-4215,-4008,-3832,-3679,-3521,-3353,-3208,-3119,-3080,-3047,-2978,
+-2861,-2702,-2497,-2236,-1932,-1639,-1421,-1296,-1220,-1134,-1026,-927,-861,-808,-732,-626,-512,-409,-311,-208,-106,
+-20,49,119,202,295,382,463,548,647,751,847,935,1024,1117,1219,1334,1464,1594,1702,1785,1861,
+1947,2043,2138,2220,2290,2354,2422,2498,2582,2666,2750,2834,2921,3011,3110,3215,3314,3395,3475,3577,3708,
+3842,3968,4098,4240,4377,4490,4599,4733,4880,4995,5068,5139,5244,5367,5474,5558,5627,5661,5633,5558,5496,
+5481,5485,5471,5450,5462,5511,5569,5623,5688,5766,5832,5875,5920,5987,6062,6124,6183,6258,6342,6417,6486,
+6563,6642,6712,6783,6859,6918,6949,7005,7130,7234,7127,6732,6201,5779,5586,5583,5684,5835,5999,6155,6311,
+6478,6631,6743,6849,7000,7170,7273,7283,7270,7295,7335,7355,7371,7409,7442,7424,7370,7337,7339,7341,7312,
+7256,7192,7131,7086,7067,7060,7048,7029,7013,6997,6974,6950,6941,6938,6921,6895,6878,6876,6875,6868,6862,
+6853,6829,6800,6786,6793,6802,6802,6805,6817,6829,6831,6824,6810,6779,6733,6691,6663,6639,6611,6583,6562,
+6541,6516,6493,6478,6467,6453,6436,6417,6397,6384,6379,6374,6359,6338,6316,6281,6215,6143,6108,6098,6046,
+5923,5794,5733,5730,5713,5651,5574,5513,5463,5428,5428,5463,5486,5467,5434,5435,5477,5524,5542,5530,5510,
+5497,5486,5469,5444,5432,5443,5458,5440,5378,5297,5221,5152,5082,5027,5001,4997,4986,4948,4892,4833,4780,
+4734,4692,4651,4611,4572,4527,4464,4380,4293,4224,4176,4138,4101,4066,4032,3996,3954,3906,3859,3815,3770,
+3718,3660,3606,3565,3533,3499,3453,3395,3334,3277,3228,3190,3154,3112,3068,3038,3028,3023,3008,2988,2968,
+2938,2898,2861,2834,2786,2702,2635,2662,2772,2847,2785,2622,2484,2441,2452,2452,2431,2413,2398,2366,2311,
+2255,2216,2187,2155,2118,2081,2050,2027,2015,2007,1995,1977,1961,1948,1937,1920,1898,1874,1855,1841,1834,
+1830,1825,1817,1805,1788,1762,1732,1707,1695,1693,1697,1703,1706,1699,1680,1659,1643,1634,1627,1614,1592,
+1562,1529,1503,1486,1465,1432,1400,1385,1389,1397,1400,1400,1399,1391,1375,1362,1360,1362,1361,1356,1353,
+1353,1358,1367,1380,1388,1389,1390,1397,1399,1392,1389,1408,1445,1477,1486,1477,1467,1467,1481,1506,1532,
+1547,1552,1562,1585,1614,1639,1656,1668,1672,1667,1657,1655,1665,1678,1692,1712,1748,1792,1819,1808,1764,
+1715,1685,1677,1678,1676,1667,1650,1625,1596,1570,1545,1515,1479,1448,1430,1423,1415,1403,1393,1385,1371,
+1345,1308,1270,1234,1202,1178,1160,1143,1119,1092,1065,1042,1019,996,974,957,940,920,896,871,847,
+824,800,774,748,721,689,654,620,588,558,526,491,456,426,399,369,333,293,252,212,172,
+132,95,64,37,10,-20,-55,-92,-130,-169,-212,-258,-304,-347,-385,-420,-457,-501,-550,-600,-643,
+-683,-726,-774,-822,-862,-897,-933,-970,-1005,-1040,-1076,-1113,-1149,-1187,-1227,-1266,-1300,-1330,-1363,-1402,-1441,
+-1478,-1512,-1547,-1584,-1620,-1654,-1687,-1721,-1756,-1787,-1815,-1841,-1871,-1904,-1937,-1967,-1994,-2024,-2055,-2084,-2114,
+-2148,-2184,-2217,-2247,-2278,-2310,-2339,-2367,-2396,-2427,-2453,-2474,-2496,-2522,-2548,-2570,-2591,-2611,-2631,-2650,-2669,
+-2689,-2707,-2721,-2732,-2746,-2758,-2765,-2769,-2775,-2785,-2799,-2812,-2820,-2821,-2818,-2812,-2804,-2795,-2787,-2782,-2779,
+-2773,-2759,-2741,-2723,-2707,-2692,-2678,-2664,-2650,-2633,-2618,-2604,-2590,-2572,-2554,-2537,-2520,-2503,-2487,-2470,-2447,
+-2420,-2393,-2373,-2355,-2335,-2314,-2293,-2271,-2247,-2224,-2203,-2182,-2157,-2130,-2105,-2079,-2048,-2013,-1981,-1954,-1930,
+-1908,-1887,-1867,-1843,-1818,-1793,-1770,-1747,-1723,-1699,-1674,-1649,-1624,-1598,-1570,-1540,-1514,-1489,-1462,-1431,-1401,
+-1375,-1350,-1323,-1295,-1270,-1243,-1213,-1185,-1161,-1138,-1113,-1089,-1068,-1045,-1014,-976,-938,-903,-869,-836,-804,
+-773,-744,-716,-690,-661,-629,-599,-573,-546,-515,-484,-457,-432,-403,-373,-346,-318,-289,-262,-242,-220,
+-187,-151,-123,-98,-64,-22,11,29,40,55,77,107,143,180,209,231,257,292,337,387,432,
+467,500,549,617,678,713,744,807,898,975,1014,1039,1082,1137,1183,1216,1247,1272,1265,1212,1130,
+1072,1094,1209,1364,1480,1539,1613,1786,2065,2386,2673,2864,2885,2688,2330,1987,1820,1838,1907,1907,1831,
+1750,1709,1690,1660,1608,1537,1440,1315,1182,1070,991,932,881,829,766,682,582,488,415,357,305,
+257,216,175,123,48,-54,-183,-325,-454,-552,-610,-631,-632,-641,-669,-695,-684,-637,-604,-629,-706,
+-804,-906,-1016,-1124,-1206,-1247,-1268,-1297,-1340,-1391,-1443,-1503,-1578,-1664,-1748,-1821,-1887,-1954,-2026,-2098,-2167,
+-2233,-2293,-2346,-2402,-2475,-2560,-2637,-2694,-2745,-2806,-2870,-2916,-2935,-2941,-2952,-2977,-3012,-3044,-3062,-3063,-3053,
+-3039,-3025,-3018,-3025,-3044,-3063,-3077,-3086,-3085,-3067,-3041,-3036,-3056,-3066,-3033,-2973,-2928,-2912,-2904,-2893,-2897,
+-2929,-2978,-3028,-3076,-3115,-3128,-3107,-3065,-3019,-2972,-2921,-2868,-2820,-2775,-2730,-2688,-2647,-2600,-2542,-2486,-2438,
+-2393,-2342,-2285,-2229,-2173,-2115,-2055,-1994,-1930,-1861,-1794,-1732,-1670,-1600,-1524,-1451,-1382,-1312,-1239,-1164,-1092,
+-1023,-954,-885,-816,-747,-681,-618,-554,-486,-416,-349,-285,-219,-154,-87,-18,51,111,159,211,280,
+359,428,474,506,536,566,592,616,643,674,707,735,757,777,798,821,842,860,877,894,912,
+928,945,967,992,1019,1044,1063,1079,1094,1110,1127,1139,1149,1161,1178,1197,1219,1245,1273,1295,1307,
+1314,1324,1343,1370,1403,1438,1465,1475,1469,1458,1454,1460,1479,1509,1544,1575,1598,1613,1625,1635,1645,
+1658,1675,1693,1713,1733,1753,1767,1776,1786,1805,1834,1866,1899,1933,1965,1994,2014,2029,2040,2049,2057,
+2066,2074,2075,2063,2043,2036,2054,2087,2110,2109,2091,2068,2050,2037,2028,2019,2006,1987,1969,1957,1953,
+1951,1945,1931,1907,1879,1854,1832,1814,1799,1795,1802,1808,1804,1792,1776,1760,1741,1723,1713,1704,1689,
+1671,1662,1661,1654,1656,1656,1659,1661,1655,1641,1629,1615,1590,1557,1526,1504,1481,1459,1454,1471,1489,
+1495,1499,1525,1565,1597,1619,1648,1684,1699,1671,1614,1560,1532,1527,1532,1522,1485,1434,1405,1415,1430,
+1408,1348,1296,1286,1297,1286,1238,1181,1145,1125,1087,1008,898,786,691,616,557,506,454,394,324,
+251,182,121,66,18,-26,-68,-105,-134,-165,-216,-296,-393,-488,-575,-663,-760,-862,-958,-1044,-1124,
+-1201,-1275,-1349,-1428,-1504,-1553,-1551,-1505,-1450,-1412,-1390,-1371,-1353,-1339,-1323,-1296,-1261,-1234,-1221,-1214,-1204,
+-1193,-1187,-1185,-1188,-1194,-1196,-1190,-1184,-1187,-1192,-1187,-1176,-1170,-1151,-1096,-1023,-998,-1051,-1125,-1149,-1135,
+-1168,-1286,-1424,-1493,-1473,-1412,-1367,-1356,-1359,-1348,-1319,-1297,-1312,-1362,-1419,-1464,-1500,-1529,-1549,-1566,-1597,
+-1637,-1657,-1655,-1671,-1740,-1838,-1917,-1962,-2004,-2057,-2108,-2143,-2171,-2213,-2269,-2332,-2400,-2471,-2544,-2615,-2680,
+-2740,-2796,-2858,-2925,-2979,-3001,-2994,-2981,-2984,-3009,-3061,-3143,-3241,-3337,-3426,-3514,-3601,-3671,-3717,-3757,-3822,
+-3923,-4055,-4206,-4364,-4518,-4654,-4760,-4828,-4868,-4903,-4952,-5003,-5023,-5005,-4979,-4985,-5030,-5091,-5133,-5138,-5109,
+-5068,-5050,-5076,-5138,-5203,-5240,-5244,-5234,-5232,-5250,-5281,-5313,-5345,-5386,-5437,-5490,-5535,-5574,-5611,-5645,-5672,
+-5697,-5732,-5784,-5849,-5914,-5969,-6017,-6063,-6115,-6172,-6227,-6278,-6329,-6385,-6444,-6504,-6566,-6632,-6701,-6768,-6834,
+-6897,-6957,-7017,-7083,-7156,-7223,-7276,-7322,-7378,-7447,-7518,-7584,-7650,-7718,-7787,-7856,-7930,-8014,-8106,-8200,-8293,
+-8388,-8488,-8592,-8694,-8791,-8878,-8953,-9021,-9089,-9166,-9252,-9338,-9416,-9485,-9546,-9600,-9647,-9692,-9739,-9772,-9755,
+-9680,-9601,-9597,-9694,-9829,-9918,-9941,-9952,-10002,-10091,-10177,-10234,-10268,-10295,-10325,-10356,-10386,-10409,-10416,-10400,-10370,
+-10342,
+-10327-10328,-10344,-10370,-10393,-10401,-10391,-10381,-10381,-10384,-10372,-10344,-10307,-10266,-10215,-10156,-10097,-10039,-9971,-9887,
+-9794,
+-9710-9632,-9546,-9442,-9321,-9184,-9037,-8887,-8743,-8607,-8480,-8364,-8261,-8157,-8037,-7895,-7736,-7567,-7391,-7211,
+-7030,-6849,-6668,-6498,-6348,-6202,-6033,-5840,-5667,-5555,-5491,-5427,-5331,-5218,-5119,-5042,-4972,-4898,-4826,-4767,-4712,
+-4632,-4497,-4307,-4090,-3870,-3646,-3412,-3192,-3034,-2957,-2935,-2923,-2899,-2858,-2782,-2632,-2370,-2011,-1632,-1330,-1152,
+-1062,-990,-909,-841,-807,-782,-720,-612,-489,-381,-287,-190,-90,1,79,154,239,333,427,517,610,
+713,819,916,1001,1081,1167,1267,1385,1516,1645,1757,1846,1921,1997,2081,2175,2269,2351,2420,2489,2566,
+2649,2728,2806,2893,2987,3081,3175,3274,3374,3468,3566,3685,3824,3953,4057,4151,4252,4358,4464,4590,4760,
+4951,5110,5209,5275,5340,5414,5491,5574,5656,5701,5681,5609,5540,5503,5479,5439,5387,5360,5380,5441,5519,
+5598,5668,5724,5772,5829,5899,5969,6031,6094,6167,6244,6313,6381,6469,6575,6674,6751,6814,6879,6953,7045,
+7135,7146,6970,6572,6062,5631,5421,5450,5636,5868,6071,6247,6436,6636,6786,6856,6906,7020,7181,7294,7316,
+7304,7320,7359,7386,7407,7438,7459,7442,7400,7372,7366,7355,7319,7267,7209,7153,7111,7090,7083,7075,7065,
+7054,7037,7011,6988,6981,6975,6952,6920,6900,6898,6898,6893,6885,6873,6852,6832,6828,6837,6838,6830,6828,
+6839,6852,6857,6854,6840,6807,6759,6715,6686,6663,6637,6609,6586,6565,6547,6530,6512,6493,6477,6468,6456,
+6433,6414,6413,6415,6398,6369,6347,6315,6239,6148,6110,6127,6113,6007,5868,5794,5786,5765,5694,5613,5560,
+5522,5487,5475,5499,5524,5512,5478,5469,5502,5551,5582,5582,5561,5536,5513,5487,5456,5435,5439,5454,5442,
+5384,5300,5224,5161,5106,5061,5036,5025,5009,4975,4923,4856,4783,4718,4673,4643,4614,4580,4539,4486,4414,
+4332,4260,4210,4177,4144,4102,4053,4007,3965,3926,3887,3849,3806,3755,3695,3640,3601,3576,3543,3491,3428,
+3368,3315,3270,3231,3191,3142,3090,3054,3044,3046,3041,3028,3012,2985,2944,2906,2878,2830,2738,2644,2626,
+2691,2751,2718,2613,2530,2512,2523,2513,2479,2443,2409,2366,2320,2282,2250,2210,2163,2123,2097,2077,2056,
+2039,2027,2015,1998,1977,1962,1953,1944,1932,1916,1899,1883,1869,1857,1850,1846,1839,1822,1791,1754,1725,
+1708,1700,1699,1703,1707,1704,1693,1677,1663,1651,1638,1622,1599,1565,1530,1510,1507,1496,1463,1420,1393,
+1388,1392,1392,1393,1395,1391,1382,1375,1377,1381,1378,1371,1367,1364,1361,1362,1370,1380,1386,1391,1397,
+1395,1383,1380,1405,1454,1500,1520,1516,1503,1490,1486,1496,1516,1533,1539,1541,1554,1577,1603,1626,1645,
+1657,1661,1658,1660,1673,1692,1704,1711,1727,1761,1800,1817,1796,1750,1704,1674,1660,1655,1653,1648,1633,
+1610,1585,1560,1530,1493,1458,1436,1423,1412,1398,1388,1380,1367,1344,1314,1286,1260,1234,1209,1188,1170,
+1151,1129,1105,1081,1057,1034,1013,995,977,954,928,902,879,855,828,798,767,739,709,678,646,
+615,587,556,522,486,452,420,388,352,311,270,231,194,158,123,89,59,30,1,-30,-64,
+-99,-140,-185,-233,-279,-322,-360,-394,-430,-470,-518,-568,-612,-651,-693,-740,-788,-829,-865,-902,-943,
+-981,-1016,-1050,-1084,-1121,-1160,-1199,-1235,-1265,-1293,-1326,-1364,-1401,-1433,-1464,-1499,-1537,-1575,-1612,-1648,-1685,
+-1720,-1751,-1779,-1806,-1836,-1870,-1904,-1932,-1957,-1983,-2013,-2045,-2079,-2114,-2149,-2181,-2211,-2243,-2275,-2305,-2332,
+-2361,-2391,-2418,-2440,-2463,-2490,-2517,-2539,-2558,-2578,-2599,-2618,-2635,-2654,-2671,-2683,-2691,-2699,-2710,-2719,-2727,
+-2737,-2751,-2767,-2779,-2786,-2787,-2785,-2780,-2773,-2764,-2757,-2753,-2752,-2746,-2731,-2710,-2690,-2673,-2659,-2646,-2633,
+-2618,-2601,-2585,-2572,-2556,-2538,-2520,-2504,-2489,-2472,-2453,-2433,-2410,-2384,-2361,-2344,-2328,-2310,-2289,-2270,-2251,
+-2228,-2204,-2182,-2161,-2138,-2114,-2089,-2062,-2030,-1995,-1964,-1937,-1912,-1891,-1874,-1857,-1836,-1811,-1787,-1766,-1745,
+-1721,-1695,-1672,-1650,-1628,-1603,-1576,-1548,-1521,-1495,-1466,-1437,-1409,-1384,-1358,-1328,-1298,-1269,-1241,-1213,-1185,
+-1160,-1137,-1113,-1089,-1065,-1039,-1008,-973,-937,-902,-869,-840,-813,-784,-751,-721,-697,-673,-644,-614,-587,
+-559,-526,-493,-468,-447,-421,-390,-360,-334,-308,-283,-262,-238,-207,-174,-149,-126,-94,-53,-20,-4,
+4,18,41,70,107,148,184,211,238,272,313,356,398,437,477,526,586,642,682,720,783,
+870,945,986,1016,1062,1123,1173,1205,1227,1234,1202,1129,1059,1057,1152,1312,1467,1572,1652,1776,1985,
+2251,2518,2739,2868,2836,2605,2252,1956,1847,1893,1963,1973,1947,1930,1914,1867,1795,1728,1668,1579,1447,
+1304,1192,1117,1062,1013,960,891,801,705,622,554,491,431,382,340,292,226,141,33,-94,-232,
+-358,-454,-515,-542,-552,-573,-618,-662,-667,-630,-602,-625,-695,-780,-869,-967,-1064,-1133,-1166,-1185,-1215,
+-1262,-1316,-1372,-1435,-1513,-1603,-1696,-1781,-1859,-1933,-2005,-2074,-2142,-2209,-2271,-2323,-2373,-2434,-2505,-2568,-2614,
+-2656,-2708,-2766,-2814,-2846,-2869,-2896,-2930,-2969,-3004,-3024,-3030,-3030,-3031,-3032,-3029,-3024,-3018,-3011,-3009,-3017,
+-3020,-3003,-2975,-2973,-3007,-3042,-3038,-3001,-2970,-2956,-2936,-2906,-2894,-2922,-2983,-3055,-3118,-3160,-3165,-3132,-3080,
+-3026,-2974,-2919,-2864,-2812,-2764,-2715,-2667,-2619,-2569,-2514,-2457,-2403,-2353,-2306,-2260,-2213,-2161,-2105,-2049,-1994,
+-1934,-1865,-1795,-1729,-1666,-1601,-1532,-1462,-1391,-1318,-1246,-1174,-1099,-1023,-950,-882,-816,-748,-684,-627,-571,
+-511,-446,-381,-317,-251,-183,-112,-40,30,92,144,197,263,337,406,459,500,537,573,605,632,
+654,677,702,725,746,767,791,818,840,857,874,893,915,935,954,974,997,1021,1046,1067,1082,
+1095,1107,1120,1130,1139,1150,1165,1183,1204,1228,1251,1267,1272,1274,1282,1301,1330,1366,1401,1424,1428,
+1420,1412,1413,1425,1448,1480,1513,1539,1555,1561,1560,1557,1558,1568,1586,1611,1637,1665,1693,1717,1736,
+1753,1773,1801,1835,1870,1904,1932,1952,1965,1974,1983,1993,2007,2027,2052,2072,2077,2067,2056,2058,2066,
+2063,2044,2019,2000,1991,1987,1982,1973,1956,1931,1906,1890,1885,1885,1883,1875,1861,1849,1846,1852,1859,
+1862,1860,1850,1829,1802,1780,1766,1752,1733,1713,1698,1684,1668,1654,1650,1654,1659,1665,1669,1675,1678,
+1669,1654,1639,1620,1589,1553,1527,1513,1501,1490,1492,1506,1514,1506,1500,1515,1539,1553,1561,1579,1603,
+1608,1582,1542,1507,1488,1483,1482,1462,1414,1358,1329,1332,1333,1306,1269,1259,1277,1281,1243,1180,1129,
+1105,1088,1048,971,866,755,656,576,510,452,394,326,246,163,90,36,-5,-42,-83,-126,-164,
+-197,-233,-290,-374,-472,-565,-645,-728,-832,-952,-1067,-1160,-1234,-1300,-1366,-1437,-1520,-1606,-1665,-1668,-1616,
+-1546,-1491,-1459,-1440,-1429,-1418,-1396,-1357,-1314,-1288,-1277,-1267,-1250,-1235,-1231,-1235,-1241,-1244,-1239,-1226,-1217,
+-1222,-1229,-1220,-1200,-1183,-1161,-1109,-1041,-1017,-1059,-1110,-1105,-1076,-1117,-1263,-1432,-1519,-1497,-1423,-1370,-1363,
+-1378,-1377,-1351,-1331,-1352,-1405,-1451,-1472,-1485,-1508,-1537,-1566,-1600,-1634,-1645,-1636,-1646,-1710,-1804,-1885,-1943,
+-2004,-2078,-2140,-2171,-2187,-2217,-2272,-2343,-2419,-2493,-2563,-2631,-2702,-2769,-2830,-2887,-2942,-2983,-2997,-2990,-2985,
+-2999,-3036,-3096,-3182,-3284,-3382,-3469,-3550,-3624,-3686,-3739,-3810,-3917,-4054,-4199,-4340,-4477,-4611,-4735,-4835,-4898,
+-4924,-4942,-4981,-5033,-5054,-5018,-4960,-4944,-4990,-5057,-5094,-5085,-5057,-5041,-5054,-5097,-5153,-5201,-5225,-5229,-5226,
+-5233,-5253,-5280,-5312,-5350,-5395,-5443,-5487,-5525,-5561,-5597,-5630,-5656,-5680,-5712,-5760,-5822,-5890,-5955,-6012,-6066,
+-6120,-6177,-6233,-6286,-6340,-6396,-6452,-6511,-6575,-6644,-6713,-6778,-6842,-6904,-6964,-7023,-7092,-7170,-7243,-7300,-7346,
+-7398,-7459,-7525,-7588,-7653,-7720,-7783,-7846,-7916,-7996,-8083,-8171,-8265,-8368,-8474,-8577,-8675,-8768,-8855,-8932,-9003,
+-9077,-9159,-9249,-9336,-9414,-9481,-9542,-9595,-9637,-9675,-9719,-9756,-9752,-9689,-9616,-9611,-9703,-9831,-9910,-9924,-9928,
+-9979,-10069,-10156,-10213,-10248,-10279,-10312,-10344,-10373,-10396,-10407,-10400,-10377,-10349,-10328,-10323,-10337,-10363,-10388,-10395,-10384,
+-10370,
+-10366,-10366,-10358,-10336,-10303,-10264,-10218,-10165,-10113,-10060,-9996,-9916,-9829,-9750,-9675,-9581,-9454,-9303,-9145,-8995,-8858,
+-8728,
+-8596-8462,-8338,-8238,-8148,-8042,-7900,-7731,-7554,-7379,-7202,-7016,-6821,-6629,-6458,-6318,-6190,-6046,-5878,-5718,
+-5599,-5518,-5440,-5339,-5228,-5133,-5060,-4988,-4895,-4788,-4698,-4643,-4597,-4517,-4378,-4193,-3979,-3738,-3473,-3219,-3025,
+-2912,-2857,-2825,-2805,-2795,-2767,-2661,-2429,-2076,-1676,-1332,-1105,-977,-891,-818,-768,-752,-738,-685,-584,-465,
+-357,-264,-172,-77,17,106,193,283,378,474,568,662,763,870,972,1060,1137,1218,1317,1436,1564,
+1689,1801,1898,1980,2051,2124,2210,2304,2392,2467,2539,2620,2703,2778,2854,2947,3054,3156,3246,3336,3438,
+3546,3657,3780,3910,4024,4107,4176,4252,4343,4454,4607,4811,5033,5213,5325,5388,5433,5476,5528,5595,5668,
+5716,5714,5670,5612,5564,5519,5459,5378,5302,5278,5327,5421,5509,5567,5615,5679,5757,5830,5887,5940,6004,
+6079,6149,6203,6257,6339,6456,6575,6664,6731,6821,6949,7071,7113,7021,6780,6407,5961,5562,5354,5413,5685,
+6020,6297,6507,6697,6863,6951,6953,6951,7034,7179,7291,7327,7329,7348,7378,7393,7403,7425,7445,7439,7417,
+7402,7397,7377,7333,7276,7222,7177,7144,7123,7109,7096,7085,7078,7066,7045,7028,7021,7012,6990,6964,6946,
+6938,6926,6911,6900,6890,6877,6865,6862,6865,6863,6856,6857,6867,6878,6884,6885,6873,6841,6797,6758,6728,
+6699,6666,6635,6608,6586,6572,6562,6544,6517,6498,6498,6495,6473,6451,6450,6453,6431,6396,6377,6345,6251,
+6130,6089,6151,6202,6134,5986,5877,5837,5798,5720,5642,5600,5572,5536,5512,5525,5550,5551,5531,5522,5539,
+5572,5600,5615,5609,5586,5554,5519,5477,5440,5428,5442,5446,5408,5333,5252,5185,5137,5103,5080,5062,5038,
+5003,4952,4876,4786,4705,4658,4637,4617,4586,4546,4500,4441,4369,4299,4247,4211,4176,4129,4073,4019,3977,
+3943,3913,3881,3844,3797,3740,3686,3650,3626,3591,3534,3466,3406,3358,3317,3279,3237,3183,3123,3081,3068,
+3069,3064,3054,3045,3029,2993,2948,2907,2853,2763,2661,2612,2642,2694,2697,2649,2605,2593,2594,2579,2544,
+2495,2434,2370,2324,2304,2286,2243,2183,2133,2109,2097,2080,2060,2044,2031,2014,1992,1971,1954,1945,1940,
+1937,1929,1914,1895,1880,1873,1868,1858,1836,1805,1771,1743,1724,1716,1715,1720,1724,1721,1712,1702,1688,
+1670,1648,1626,1600,1568,1537,1524,1527,1523,1492,1446,1412,1398,1391,1385,1385,1391,1392,1387,1387,1396,
+1404,1401,1390,1381,1374,1366,1363,1370,1381,1389,1393,1397,1396,1387,1383,1402,1445,1491,1522,1537,1537,
+1524,1504,1496,1509,1532,1546,1547,1545,1552,1570,1593,1619,1643,1659,1664,1666,1677,1696,1713,1718,1721,
+1741,1779,1810,1811,1783,1746,1710,1678,1651,1635,1631,1629,1617,1594,1567,1538,1505,1471,1442,1420,1403,
+1389,1380,1374,1365,1350,1333,1317,1301,1280,1254,1228,1206,1186,1165,1139,1112,1085,1062,1042,1023,1002,
+976,947,921,899,877,850,819,786,756,727,700,673,647,619,589,555,518,480,445,411,376,
+337,297,258,223,188,151,114,78,45,14,-15,-46,-82,-123,-168,-214,-257,-296,-334,-369,-404,
+-442,-487,-535,-580,-621,-662,-708,-755,-798,-837,-877,-920,-959,-993,-1025,-1059,-1097,-1136,-1173,-1204,-1231,
+-1258,-1290,-1328,-1364,-1395,-1425,-1458,-1494,-1532,-1570,-1608,-1644,-1677,-1707,-1736,-1766,-1799,-1834,-1868,-1897,-1920,
+-1945,-1976,-2012,-2050,-2085,-2117,-2146,-2175,-2207,-2240,-2271,-2298,-2326,-2356,-2383,-2408,-2433,-2461,-2487,-2506,-2524,
+-2545,-2567,-2586,-2601,-2617,-2634,-2646,-2652,-2659,-2668,-2679,-2690,-2703,-2717,-2731,-2741,-2746,-2748,-2746,-2742,-2737,
+-2732,-2727,-2724,-2723,-2717,-2702,-2682,-2661,-2645,-2631,-2619,-2605,-2588,-2569,-2552,-2537,-2522,-2504,-2487,-2471,-2455,
+-2436,-2416,-2396,-2375,-2353,-2334,-2320,-2306,-2287,-2266,-2247,-2230,-2209,-2184,-2160,-2140,-2119,-2096,-2070,-2041,-2009,
+-1977,-1949,-1924,-1899,-1876,-1859,-1846,-1829,-1807,-1785,-1767,-1747,-1723,-1697,-1673,-1653,-1632,-1608,-1582,-1556,-1529,
+-1501,-1471,-1441,-1412,-1386,-1361,-1333,-1303,-1272,-1242,-1213,-1184,-1157,-1132,-1110,-1086,-1058,-1028,-997,-967,-937,
+-905,-874,-849,-828,-801,-767,-733,-707,-684,-657,-630,-604,-576,-542,-508,-483,-464,-439,-406,-375,-350,
+-327,-303,-280,-256,-226,-195,-172,-154,-129,-95,-63,-43,-28,-10,12,39,74,115,154,187,220,
+257,295,332,371,415,461,505,551,600,647,694,755,832,906,959,1002,1057,1120,1168,1192,1196,
+1178,1128,1059,1026,1079,1210,1363,1491,1601,1739,1937,2176,2410,2609,2761,2830,2751,2504,2182,1946,1881,
+1928,1978,1990,1999,2021,2017,1959,1883,1830,1788,1706,1574,1432,1320,1240,1178,1130,1086,1024,936,837,
+752,681,613,547,489,433,371,298,215,113,-11,-147,-267,-351,-396,-411,-419,-457,-534,-615,-647,
+-630,-613,-639,-700,-767,-836,-918,-1004,-1069,-1098,-1109,-1126,-1163,-1219,-1287,-1363,-1450,-1544,-1642,-1738,-1828,
+-1911,-1985,-2051,-2114,-2179,-2243,-2298,-2348,-2403,-2465,-2519,-2560,-2600,-2649,-2704,-2751,-2787,-2819,-2852,-2889,-2928,
+-2962,-2984,-2995,-3004,-3015,-3021,-3015,-2997,-2972,-2949,-2941,-2950,-2958,-2943,-2915,-2912,-2953,-3003,-3021,-3007,-2990,
+-2979,-2952,-2909,-2881,-2900,-2966,-3056,-3143,-3201,-3210,-3171,-3108,-3047,-2992,-2939,-2884,-2829,-2773,-2714,-2656,-2602,
+-2551,-2497,-2440,-2382,-2325,-2275,-2229,-2184,-2133,-2079,-2029,-1979,-1923,-1856,-1785,-1716,-1651,-1591,-1533,-1471,-1401,
+-1326,-1254,-1184,-1109,-1029,-953,-886,-824,-760,-699,-647,-599,-543,-480,-415,-350,-283,-212,-141,-69,0,
+63,120,177,241,311,381,444,495,540,580,615,642,662,679,700,723,745,766,789,815,838,
+857,875,899,924,947,966,983,1003,1024,1046,1068,1083,1093,1100,1109,1120,1132,1144,1157,1169,1183,
+1199,1216,1228,1233,1237,1247,1268,1298,1330,1354,1362,1356,1349,1350,1362,1382,1406,1433,1458,1477,1487,
+1488,1479,1465,1459,1469,1495,1527,1560,1591,1620,1646,1669,1689,1711,1739,1773,1811,1849,1881,1907,1928,
+1946,1962,1975,1990,2009,2037,2065,2082,2080,2067,2054,2040,2016,1983,1954,1937,1931,1927,1921,1911,1892,
+1865,1838,1820,1818,1827,1840,1851,1858,1865,1878,1893,1903,1903,1891,1868,1834,1800,1775,1758,1739,1714,
+1691,1676,1665,1654,1647,1651,1659,1672,1680,1688,1694,1692,1678,1658,1640,1619,1590,1563,1549,1546,1541,
+1533,1532,1534,1527,1512,1508,1517,1525,1523,1522,1529,1534,1529,1524,1526,1519,1490,1454,1436,1427,1400,
+1352,1315,1300,1288,1266,1252,1265,1282,1264,1201,1127,1074,1044,1018,978,917,835,742,652,573,504,
+437,363,277,179,85,17,-21,-44,-73,-114,-162,-206,-247,-297,-366,-458,-559,-649,-725,-805,-913,
+-1046,-1174,-1271,-1334,-1381,-1427,-1485,-1564,-1654,-1722,-1737,-1694,-1625,-1565,-1528,-1512,-1509,-1505,-1484,-1445,-1405,
+-1382,-1370,-1353,-1330,-1313,-1306,-1302,-1295,-1287,-1279,-1267,-1259,-1262,-1263,-1245,-1212,-1182,-1160,-1125,-1083,-1069,
+-1089,-1096,-1053,-1014,-1073,-1245,-1432,-1526,-1504,-1431,-1379,-1376,-1398,-1409,-1400,-1398,-1431,-1483,-1514,-1512,-1505,
+-1517,-1545,-1578,-1614,-1644,-1646,-1621,-1614,-1662,-1747,-1827,-1897,-1984,-2092,-2181,-2219,-2220,-2226,-2268,-2344,-2437,
+-2524,-2597,-2664,-2733,-2802,-2859,-2907,-2952,-2990,-3007,-3006,-3007,-3025,-3067,-3133,-3224,-3325,-3419,-3500,-3575,-3649,
+-3720,-3799,-3906,-4047,-4198,-4336,-4458,-4577,-4700,-4820,-4922,-4989,-5015,-5027,-5055,-5098,-5107,-5050,-4966,-4928,-4964,
+-5026,-5056,-5047,-5033,-5042,-5074,-5115,-5155,-5190,-5213,-5225,-5233,-5243,-5259,-5282,-5314,-5353,-5397,-5438,-5474,-5509,
+-5546,-5582,-5613,-5639,-5664,-5694,-5737,-5793,-5862,-5933,-5999,-6060,-6122,-6185,-6245,-6298,-6347,-6396,-6451,-6513,-6582,
+-6654,-6720,-6781,-6841,-6902,-6962,-7022,-7090,-7167,-7244,-7309,-7365,-7419,-7476,-7535,-7599,-7667,-7733,-7790,-7846,-7912,
+-7989,-8070,-8152,-8243,-8348,-8459,-8564,-8659,-8749,-8834,-8912,-8988,-9067,-9152,-9241,-9327,-9403,-9469,-9526,-9577,-9619,
+-9658,-9701,-9741,-9747,-9700,-9636,-9627,-9705,-9818,-9890,-9904,-9913,-9964,-10050,-10132,-10187,-10223,-10257,-10293,-10327,-10357,
+-10381,-10396,-10398,-10384,-10358,-10332,-10320,-10330,-10357,-10383,-10393,-10385,-10371,-10362,-10356,-10347,-10327,-10296,-10260,-10219,-10176,
+-10130,
+-10080,-10016,-9935,-9848,-9766,-9682,-9577,-9439,-9278,-9120,-8980,-8855,-8732,-8599,-8460,-8334,-8235,-8148,-8037,-7883,-7700,
+-7520,-7356,-7191,-7007,-6807,-6615,-6451,-6320,-6200,-6068,-5922,-5785,-5673,-5577,-5473,-5351,-5230,-5136,-5067,-4996,-4893,
+-4760,-4635,-4553,-4510,-4459,-4364,-4221,-4051,-3857,-3634,-3397,-3185,-3022,-2905,-2819,-2765,-2739,-2709,-2617,-2416,-2106,
+-1744,-1412,-1160,-983,-854,-762,-714,-702,-687,-634,-540,-430,-326,-231,-142,-55,34,131,231,330,426,
+521,616,710,809,916,1024,1118,1197,1275,1373,1489,1611,1728,1838,1942,2034,2109,2177,2253,2341,2429,
+2508,2587,2675,2761,2836,2914,3016,3137,3247,3334,3419,3519,3628,3735,3840,3946,4039,4112,4175,4248,4342,
+4470,4651,4881,5113,5287,5388,5446,5495,5544,5592,5643,5693,5732,5749,5734,5692,5636,5582,5523,5434,5323,
+5249,5267,5358,5449,5510,5574,5668,5768,5832,5859,5886,5933,5992,6045,6090,6137,6208,6312,6429,6528,6619,
+6749,6926,7066,7064,6893,6614,6280,5910,5564,5378,5465,5788,6182,6507,6741,6917,7027,7036,6976,6948,7022,
+7158,7270,7323,7350,7378,7394,7388,7384,7402,7427,7433,7422,7417,7417,7399,7353,7294,7245,7212,7187,7163,
+7138,7117,7103,7095,7086,7072,7058,7047,7033,7016,7002,6995,6984,6964,6944,6934,6929,6919,6906,6895,6890,
+6889,6894,6902,6908,6909,6912,6912,6899,6868,6832,6804,6776,6739,6702,6672,6644,6618,6603,6597,6580,6547,
+6525,6528,6529,6507,6483,6485,6491,6467,6429,6412,6376,6259,6108,6065,6174,6290,6257,6096,5947,5872,5817,
+5740,5669,5633,5607,5567,5538,5547,5575,5589,5587,5586,5590,5594,5604,5623,5633,5621,5592,5557,5516,5470,
+5441,5442,5453,5435,5375,5295,5225,5176,5144,5119,5093,5060,5021,4967,4889,4793,4707,4656,4634,4615,4585,
+4548,4509,4461,4401,4338,4282,4236,4192,4146,4096,4047,4004,3969,3939,3911,3881,3842,3795,3749,3716,3690,
+3651,3590,3521,3460,3412,3371,3335,3296,3243,3178,3123,3096,3084,3074,3067,3071,3070,3038,2979,2915,2852,
+2775,2692,2650,2674,2728,2747,2712,2656,2617,2605,2602,2585,2535,2453,2369,2323,2318,2314,2272,2202,2141,
+2115,2109,2103,2086,2064,2043,2024,2003,1977,1950,1931,1927,1934,1935,1924,1907,1895,1890,1883,1868,1849,
+1829,1807,1782,1758,1742,1739,1743,1745,1738,1727,1716,1701,1679,1650,1623,1596,1569,1545,1536,1539,1536,
+1512,1475,1443,1419,1399,1385,1381,1386,1387,1384,1389,1407,1424,1425,1413,1398,1386,1376,1373,1381,1392,
+1397,1397,1399,1403,1402,1400,1406,1427,1458,1492,1524,1546,1544,1522,1506,1516,1545,1567,1566,1551,1541,
+1544,1560,1585,1613,1638,1651,1658,1668,1687,1707,1716,1720,1735,1767,1798,1814,1816,1814,1802,1764,1705,
+1653,1630,1629,1623,1601,1572,1545,1520,1489,1454,1421,1397,1382,1375,1373,1370,1366,1361,1355,1345,1327,
+1301,1273,1247,1224,1197,1166,1133,1104,1080,1059,1040,1018,992,963,937,916,896,872,842,808,776,
+746,721,697,674,647,617,583,547,509,473,439,406,370,331,292,253,215,174,131,89,51,
+19,-11,-41,-75,-114,-156,-197,-235,-273,-310,-346,-382,-421,-463,-508,-552,-593,-634,-680,-727,-773,
+-816,-859,-901,-939,-971,-1002,-1036,-1074,-1112,-1147,-1176,-1200,-1226,-1258,-1295,-1331,-1363,-1394,-1428,-1462,-1497,
+-1533,-1569,-1603,-1633,-1662,-1693,-1726,-1761,-1796,-1831,-1861,-1885,-1911,-1944,-1984,-2023,-2057,-2085,-2112,-2141,-2173,
+-2208,-2240,-2267,-2294,-2322,-2350,-2377,-2403,-2431,-2456,-2475,-2492,-2513,-2536,-2554,-2567,-2580,-2596,-2609,-2618,-2626,
+-2635,-2646,-2658,-2672,-2685,-2694,-2700,-2704,-2706,-2706,-2703,-2700,-2697,-2695,-2691,-2687,-2681,-2669,-2653,-2635,-2619,
+-2605,-2592,-2576,-2556,-2536,-2518,-2504,-2489,-2472,-2454,-2438,-2421,-2402,-2381,-2361,-2342,-2324,-2307,-2295,-2281,-2262,
+-2241,-2222,-2205,-2185,-2160,-2137,-2118,-2100,-2078,-2051,-2021,-1990,-1962,-1938,-1916,-1891,-1866,-1847,-1834,-1820,-1801,
+-1782,-1765,-1747,-1724,-1699,-1677,-1656,-1634,-1610,-1585,-1561,-1535,-1508,-1479,-1447,-1416,-1388,-1364,-1341,-1314,-1285,
+-1256,-1226,-1194,-1162,-1134,-1111,-1087,-1058,-1026,-996,-971,-947,-919,-892,-868,-849,-825,-793,-761,-732,-705,
+-675,-646,-622,-596,-563,-529,-501,-480,-455,-422,-392,-369,-347,-321,-295,-271,-244,-216,-192,-173,-154,
+-127,-99,-74,-52,-30,-7,19,52,89,125,159,198,241,278,310,347,396,445,485,522,569,
+621,671,722,787,861,929,988,1048,1109,1154,1170,1158,1124,1075,1032,1038,1117,1241,1363,1476,1620,
+1831,2084,2320,2505,2645,2752,2787,2688,2454,2181,1997,1942,1953,1959,1959,1986,2030,2040,1998,1946,1920,
+1895,1826,1710,1584,1474,1380,1300,1245,1203,1147,1062,963,875,798,726,658,592,520,438,355,271,
+173,52,-76,-184,-251,-275,-269,-266,-310,-414,-532,-600,-612,-616,-650,-707,-761,-813,-881,-961,-1026,
+-1054,-1053,-1052,-1077,-1137,-1221,-1313,-1404,-1496,-1593,-1689,-1782,-1871,-1951,-2019,-2080,-2143,-2208,-2269,-2323,-2378,
+-2435,-2485,-2527,-2568,-2619,-2671,-2717,-2753,-2787,-2823,-2860,-2896,-2927,-2948,-2959,-2969,-2979,-2984,-2975,-2952,-2918,
+-2887,-2874,-2884,-2899,-2892,-2870,-2867,-2904,-2954,-2981,-2981,-2976,-2971,-2946,-2901,-2863,-2865,-2916,-3005,-3107,-3190,
+-3221,-3196,-3137,-3074,-3017,-2965,-2913,-2857,-2794,-2725,-2657,-2596,-2542,-2489,-2434,-2376,-2317,-2261,-2206,-2152,-2099,
+-2049,-2003,-1955,-1898,-1832,-1763,-1695,-1630,-1575,-1526,-1474,-1408,-1334,-1264,-1198,-1126,-1046,-971,-906,-847,-789,
+-735,-686,-636,-577,-508,-438,-370,-302,-232,-160,-91,-25,37,98,160,223,289,357,423,482,533,
+577,615,644,660,673,694,724,753,776,798,820,842,863,884,906,927,943,957,973,991,1011,
+1030,1050,1066,1076,1083,1090,1103,1119,1135,1144,1148,1151,1160,1174,1186,1192,1196,1205,1224,1251,1277,
+1288,1281,1269,1268,1281,1303,1326,1346,1363,1377,1389,1402,1412,1413,1409,1410,1427,1455,1483,1505,1524,
+1543,1563,1584,1607,1634,1670,1712,1759,1807,1856,1903,1947,1982,2005,2016,2018,2016,2019,2032,2043,2043,
+2030,2007,1979,1944,1909,1885,1875,1871,1866,1859,1850,1836,1815,1794,1783,1789,1810,1840,1870,1893,1908,
+1918,1923,1918,1902,1877,1847,1814,1785,1763,1744,1721,1693,1672,1663,1659,1655,1654,1661,1672,1689,1696,
+1700,1702,1694,1676,1653,1634,1615,1596,1584,1583,1586,1584,1578,1571,1560,1541,1526,1525,1528,1519,1507,
+1507,1510,1500,1494,1530,1597,1624,1568,1472,1414,1412,1414,1386,1343,1313,1292,1273,1267,1277,1278,1239,
+1165,1087,1028,983,942,904,862,808,738,664,592,519,440,349,243,128,28,-30,-48,-55,-84,
+-137,-197,-253,-308,-375,-457,-553,-651,-739,-815,-898,-1006,-1138,-1265,-1358,-1413,-1445,-1474,-1519,-1589,-1675,
+-1748,-1778,-1755,-1701,-1644,-1604,-1589,-1593,-1601,-1593,-1566,-1537,-1517,-1499,-1473,-1444,-1424,-1406,-1377,-1341,-1318,
+-1311,-1308,-1303,-1299,-1293,-1270,-1229,-1190,-1164,-1142,-1121,-1114,-1115,-1093,-1039,-1014,-1092,-1262,-1428,-1503,-1482,
+-1428,-1395,-1398,-1421,-1443,-1458,-1484,-1530,-1575,-1587,-1564,-1539,-1534,-1547,-1573,-1614,-1653,-1654,-1614,-1583,-1611,
+-1689,-1776,-1862,-1973,-2110,-2226,-2278,-2274,-2261,-2284,-2355,-2456,-2556,-2637,-2703,-2767,-2829,-2878,-2916,-2954,-2992,
+-3018,-3029,-3036,-3057,-3101,-3172,-3268,-3373,-3468,-3549,-3629,-3715,-3807,-3909,-4035,-4182,-4325,-4448,-4556,-4668,-4784,
+-4896,-4992,-5062,-5099,-5115,-5134,-5155,-5139,-5063,-4965,-4918,-4945,-5001,-5032,-5032,-5033,-5054,-5086,-5117,-5147,-5179,
+-5206,-5224,-5234,-5244,-5259,-5282,-5313,-5350,-5387,-5421,-5454,-5491,-5530,-5565,-5594,-5620,-5647,-5679,-5719,-5774,-5842,
+-5915,-5984,-6049,-6119,-6193,-6259,-6309,-6348,-6391,-6445,-6512,-6584,-6654,-6716,-6772,-6830,-6892,-6955,-7018,-7085,-7159,
+-7235,-7308,-7374,-7434,-7489,-7545,-7611,-7685,-7751,-7802,-7851,-7913,-7989,-8066,-8141,-8227,-8329,-8441,-8548,-8645,-8732,
+-8813,-8892,-8974,-9059,-9144,-9230,-9312,-9387,-9449,-9503,-9554,-9602,-9644,-9684,-9721,-9735,-9708,-9660,-9649,-9705,-9795,
+-9858,-9880,-9901,-9957,-10040,-10116,-10168,-10205,-10239,-10275,-10310,-10340,-10365,-10381,-10389,-10385,-10367,-10341,-10325,-10330,-10352,
+-10374,
+-10384,-10382,-10373,-10363,-10354,-10340,-10317,-10284,-10247,-10211,-10174,-10132,-10079,-10009,-9924,-9833,-9745,-9655,-9547,-9414,-9265,
+-9122,
+-8993,-8871,-8744,-8609,-8475,-8356,-8255,-8155,-8025,-7855,-7666,-7492,-7343,-7193,-7020,-6829,-6647,-6492,-6357,-6220,-6076,
+-5941,-5832,-5743,-5646,-5518,-5370,-5233,-5132,-5059,-4985,-4878,-4735,-4584,-4470,-4401,-4344,-4258,-4140,-4013,-3887,-3745,
+-3574,-3387,-3207,-3043,-2898,-2782,-2703,-2637,-2537,-2359,-2102,-1804,-1517,-1264,-1045,-863,-740,-688,-677,-656,-593,
+-498,-393,-287,-185,-95,-16,65,164,273,377,472,565,659,755,855,964,1074,1171,1252,1333,1429,
+1541,1656,1767,1876,1984,2084,2166,2235,2307,2389,2475,2560,2649,2745,2837,2917,2999,3106,3231,3344,3432,
+3516,3613,3716,3807,3890,3974,4054,4125,4192,4270,4372,4514,4713,4956,5182,5332,5408,5462,5535,5620,5690,
+5733,5758,5783,5810,5817,5779,5708,5643,5592,5513,5388,5277,5262,5342,5446,5536,5640,5768,5871,5905,5892,
+5886,5899,5916,5938,5980,6042,6114,6199,6299,6407,6529,6698,6901,7040,7004,6795,6509,6214,5909,5626,5494,
+5618,5947,6316,6609,6826,6988,7062,7022,6930,6899,6980,7119,7235,7309,7362,7401,7411,7393,7383,7402,7432,
+7442,7433,7428,7430,7416,7371,7312,7265,7237,7214,7186,7158,7139,7129,7120,7108,7097,7086,7069,7047,7027,
+7019,7016,7009,6995,6983,6979,6973,6962,6947,6932,6925,6929,6943,6955,6954,6945,6943,6941,6923,6889,6859,
+6838,6812,6773,6738,6716,6694,6664,6644,6638,6622,6588,6562,6562,6561,6534,6510,6518,6530,6506,6469,6455,
+6415,6277,6100,6055,6195,6356,6346,6174,5997,5900,5839,5765,5700,5668,5641,5601,5576,5587,5614,5626,5629,
+5635,5635,5624,5618,5633,5651,5648,5627,5603,5573,5528,5485,5467,5467,5453,5407,5342,5280,5230,5190,5155,
+5119,5078,5030,4972,4899,4812,4732,4676,4642,4615,4585,4553,4518,4476,4425,4371,4316,4261,4209,4164,4125,
+4084,4041,4000,3966,3939,3912,3881,3844,3807,3776,3747,3706,3647,3581,3522,3469,3424,3389,3356,3309,3240,
+3169,3118,3088,3070,3068,3083,3091,3059,2988,2908,2838,2773,2718,2703,2749,2816,2834,2773,2671,2591,2568,
+2584,2588,2543,2454,2369,2331,2334,2331,2286,2212,2150,2122,2121,2121,2108,2081,2051,2026,2007,1984,1952,
+1924,1914,1920,1924,1918,1907,1903,1903,1897,1885,1878,1877,1869,1842,1803,1772,1759,1758,1757,1750,1736,
+1721,1704,1680,1651,1619,1591,1568,1550,1540,1536,1531,1519,1501,1479,1452,1421,1396,1385,1385,1382,1378,
+1385,1410,1434,1441,1432,1417,1406,1397,1393,1398,1404,1404,1399,1401,1410,1419,1420,1418,1422,1435,1463,
+1500,1532,1542,1529,1515,1525,1554,1576,1573,1552,1534,1532,1541,1555,1574,1595,1617,1634,1652,1673,1694,
+1706,1716,1735,1763,1789,1808,1836,1877,1905,1878,1796,1705,1652,1637,1630,1609,1580,1557,1539,1514,1478,
+1440,1410,1391,1381,1378,1380,1385,1388,1386,1378,1364,1342,1315,1288,1259,1227,1191,1155,1123,1097,1074,
+1053,1033,1010,983,956,932,911,889,861,829,795,764,739,717,695,669,638,605,572,537,501,
+467,434,400,363,324,283,240,194,147,102,62,28,-3,-34,-68,-103,-140,-176,-213,-251,-288,
+-325,-364,-404,-446,-488,-528,-568,-610,-655,-703,-751,-797,-841,-882,-916,-947,-977,-1011,-1050,-1088,-1123,
+-1151,-1174,-1198,-1228,-1262,-1297,-1332,-1366,-1401,-1435,-1466,-1499,-1534,-1566,-1595,-1624,-1656,-1691,-1725,-1759,-1793,
+-1824,-1849,-1877,-1912,-1953,-1991,-2023,-2050,-2079,-2110,-2144,-2179,-2211,-2238,-2264,-2291,-2320,-2347,-2374,-2401,-2425,
+-2445,-2464,-2484,-2506,-2522,-2534,-2546,-2561,-2576,-2588,-2597,-2607,-2618,-2630,-2643,-2654,-2660,-2662,-2663,-2665,-2666,
+-2665,-2664,-2663,-2661,-2655,-2649,-2643,-2634,-2621,-2605,-2590,-2575,-2559,-2542,-2525,-2506,-2489,-2475,-2461,-2444,-2425,
+-2409,-2392,-2374,-2352,-2332,-2315,-2297,-2281,-2266,-2252,-2235,-2214,-2195,-2177,-2157,-2134,-2114,-2097,-2080,-2059,-2033,
+-2005,-1976,-1950,-1928,-1907,-1884,-1858,-1838,-1823,-1808,-1791,-1774,-1759,-1741,-1719,-1697,-1678,-1658,-1634,-1608,-1585,
+-1562,-1539,-1515,-1489,-1458,-1425,-1397,-1375,-1355,-1332,-1306,-1280,-1253,-1221,-1186,-1153,-1126,-1100,-1072,-1044,-1017,
+-995,-974,-950,-924,-899,-877,-853,-825,-796,-766,-735,-701,-669,-644,-620,-590,-555,-522,-495,-468,-439,
+-413,-392,-369,-339,-309,-285,-264,-241,-217,-195,-174,-150,-124,-99,-73,-46,-19,9,40,73,103,
+135,175,220,259,288,324,373,423,463,500,548,603,650,693,751,828,904,967,1025,1084,1127,
+1137,1117,1084,1055,1046,1078,1156,1258,1368,1504,1701,1954,2205,2396,2528,2636,2727,2748,2645,2436,2214,
+2065,2001,1969,1941,1938,1980,2039,2063,2043,2017,2008,1992,1939,1852,1754,1653,1548,1453,1382,1324,1254,
+1164,1070,986,909,838,775,713,634,531,422,317,211,97,-14,-102,-154,-163,-136,-110,-143,-257,
+-406,-518,-571,-602,-648,-704,-754,-800,-860,-932,-991,-1015,-1006,-995,-1019,-1091,-1192,-1291,-1377,-1462,-1552,
+-1641,-1727,-1812,-1897,-1973,-2038,-2102,-2170,-2236,-2296,-2351,-2406,-2456,-2500,-2544,-2594,-2645,-2690,-2728,-2765,-2801,
+-2838,-2872,-2900,-2917,-2924,-2928,-2933,-2936,-2928,-2904,-2865,-2824,-2803,-2813,-2839,-2849,-2840,-2838,-2863,-2901,-2926,
+-2935,-2940,-2941,-2923,-2885,-2844,-2823,-2839,-2899,-2996,-3099,-3168,-3182,-3151,-3097,-3039,-2982,-2927,-2871,-2807,-2737,
+-2667,-2604,-2546,-2491,-2436,-2380,-2323,-2261,-2195,-2130,-2073,-2025,-1980,-1928,-1867,-1802,-1739,-1677,-1616,-1561,-1516,
+-1468,-1407,-1336,-1269,-1205,-1137,-1063,-990,-928,-873,-821,-773,-725,-667,-596,-517,-441,-372,-307,-240,-171,
+-104,-42,18,80,143,205,265,326,391,454,512,564,608,638,651,658,676,710,747,777,801,
+822,842,863,884,903,916,920,926,942,966,989,1008,1025,1044,1059,1068,1074,1083,1099,1116,1124,
+1123,1122,1129,1142,1154,1157,1155,1155,1166,1189,1211,1219,1214,1211,1224,1251,1279,1298,1309,1314,1314,
+1316,1328,1347,1366,1380,1397,1418,1439,1452,1460,1469,1484,1504,1528,1558,1595,1641,1692,1744,1797,1854,
+1915,1971,2012,2033,2036,2021,1996,1971,1959,1958,1955,1943,1921,1892,1862,1838,1828,1831,1836,1836,1834,
+1833,1828,1818,1807,1806,1818,1843,1876,1907,1928,1935,1931,1921,1902,1875,1843,1811,1782,1758,1739,1721,
+1700,1678,1665,1664,1667,1668,1671,1679,1689,1705,1705,1703,1698,1686,1667,1645,1627,1612,1601,1600,1607,
+1613,1610,1605,1599,1584,1564,1552,1553,1546,1525,1511,1519,1522,1501,1499,1578,1710,1773,1693,1533,1423,
+1406,1424,1415,1380,1345,1315,1287,1269,1264,1250,1204,1135,1065,1005,948,895,853,818,778,728,670,
+606,529,438,336,221,102,4,-43,-49,-54,-95,-170,-249,-319,-389,-472,-564,-656,-743,-824,-905,
+-994,-1101,-1218,-1327,-1409,-1461,-1493,-1522,-1562,-1622,-1698,-1769,-1809,-1808,-1772,-1721,-1678,-1661,-1672,-1692,-1701,
+-1691,-1674,-1655,-1628,-1593,-1563,-1539,-1504,-1446,-1382,-1345,-1340,-1344,-1340,-1332,-1323,-1303,-1263,-1217,-1181,-1155,
+-1137,-1129,-1131,-1124,-1108,-1120,-1198,-1322,-1424,-1459,-1442,-1418,-1410,-1418,-1437,-1464,-1501,-1549,-1598,-1624,-1607,
+-1558,-1511,-1486,-1486,-1516,-1578,-1640,-1649,-1595,-1540,-1555,-1639,-1746,-1851,-1972,-2115,-2245,-2320,-2337,-2330,-2340,
+-2392,-2481,-2580,-2666,-2736,-2798,-2854,-2896,-2929,-2963,-3002,-3035,-3057,-3074,-3099,-3143,-3214,-3315,-3432,-3542,-3641,
+-3740,-3843,-3945,-4049,-4164,-4292,-4416,-4525,-4630,-4740,-4850,-4946,-5026,-5092,-5138,-5160,-5167,-5159,-5117,-5032,-4943,
+-4906,-4934,-4989,-5024,-5036,-5044,-5061,-5083,-5106,-5136,-5169,-5195,-5209,-5217,-5228,-5247,-5275,-5306,-5338,-5368,-5396,
+-5429,-5466,-5504,-5536,-5563,-5591,-5623,-5661,-5707,-5765,-5834,-5904,-5969,-6035,-6109,-6190,-6262,-6314,-6351,-6391,-6446,
+-6512,-6581,-6643,-6700,-6756,-6815,-6879,-6944,-7010,-7081,-7156,-7231,-7304,-7374,-7436,-7490,-7547,-7617,-7695,-7762,-7810,
+-7855,-7915,-7988,-8061,-8132,-8213,-8312,-8421,-8529,-8627,-8712,-8790,-8870,-8958,-9049,-9134,-9214,-9293,-9368,-9429,-9481,
+-9535,-9589,-9631,-9661,-9687,-9707,-9704,-9680,-9671,-9709,-9775,-9827,-9853,-9885,-9949,-10032,-10105,-10155,-10190,-10222,-10255,
+-10290,-10322,-10346,-10362,-10374,-10381,-10375,-10358,-10342,-10342,-10354,-10366,-10370,-10370,-10367,-10361,-10350,-10332,-10305,-10269,-10232,
+-10197,
+-10162,-10116,-10052,-9971,-9880,-9790,-9707,-9625,-9528,-9410,-9280,-9153,-9029,-8901,-8765,-8631,-8508,-8396,-8286,-8162,-8011,
+-7832,-7648,-7483,-7343,-7202,-7043,-6870,-6705,-6555,-6403,-6235,-6065,-5928,-5843,-5784,-5700,-5564,-5400,-5251,-5139,-5052,
+-4965,-4853,-4710,-4552,-4413,-4310,-4222,-4118,-3998,-3891,-3807,-3725,-3620,-3491,-3347,-3185,-3001,-2814,-2657,-2539,-2427,
+-2276,-2072,-1838,-1600,-1360,-1118,-899,-753,-696,-686,-655,-579,-475,-367,-255,-143,-46,32,110,208,319,
+422,513,602,697,794,896,1004,1112,1209,1294,1382,1480,1588,1697,1805,1914,2023,2125,2215,2292,2366,
+2447,2535,2625,2720,2820,2917,3004,3091,3195,3314,3424,3515,3604,3703,3801,3885,3963,4045,4129,4204,4274,
+4353,4456,4600,4801,5037,5244,5367,5421,5477,5581,5707,5800,5834,5835,5845,5880,5903,5869,5785,5707,5655,
+5582,5453,5324,5291,5367,5493,5628,5779,5928,6013,6009,5972,5956,5947,5919,5901,5939,6022,6101,6168,6254,
+6376,6530,6718,6910,7015,6945,6720,6444,6182,5930,5725,5684,5870,6185,6465,6656,6812,6957,7028,6984,6893,
+6871,6956,7090,7206,7291,7360,7410,7428,7419,7412,7426,7449,7459,7454,7448,7446,7430,7384,7322,7272,7240,
+7212,7181,7157,7150,7149,7140,7125,7116,7112,7099,7073,7046,7029,7020,7014,7011,7012,7010,6999,6986,6979,
+6975,6971,6975,6988,6998,6991,6980,6979,6980,6960,6922,6892,6873,6845,6803,6773,6761,6746,6716,6691,6682,
+6667,6632,6604,6600,6596,6568,6545,6555,6566,6541,6507,6499,6460,6309,6113,6061,6217,6401,6406,6235,6051,
+5946,5878,5800,5736,5709,5690,5658,5638,5650,5665,5657,5644,5649,5660,5658,5655,5668,5686,5684,5667,5650,
+5629,5590,5541,5505,5487,5467,5431,5388,5343,5295,5244,5193,5145,5094,5038,4977,4910,4840,4772,4713,4664,
+4624,4593,4565,4530,4484,4435,4390,4343,4290,4235,4191,4155,4118,4075,4033,3997,3968,3941,3911,3877,3843,
+3811,3778,3737,3684,3625,3567,3512,3465,3430,3402,3361,3290,3204,3131,3084,3063,3066,3083,3088,3054,2983,
+2904,2834,2773,2730,2739,2814,2903,2921,2832,2686,2574,2544,2568,2579,2537,2460,2397,2376,2374,2351,2294,
+2225,2172,2146,2137,2131,2116,2089,2055,2026,2008,1991,1963,1931,1912,1908,1910,1908,1908,1914,1917,1913,
+1907,1914,1927,1924,1892,1843,1800,1775,1766,1761,1754,1741,1724,1705,1684,1657,1626,1596,1574,1557,1540,
+1525,1517,1517,1518,1509,1484,1449,1417,1398,1391,1386,1382,1390,1413,1435,1444,1439,1432,1430,1428,1423,
+1417,1412,1405,1398,1399,1410,1423,1430,1433,1437,1448,1467,1494,1519,1529,1522,1515,1523,1545,1560,1556,
+1541,1533,1539,1546,1549,1551,1562,1583,1611,1639,1665,1683,1694,1707,1732,1760,1778,1789,1822,1885,1940,
+1933,1852,1747,1674,1646,1635,1616,1591,1571,1556,1536,1507,1474,1446,1423,1406,1396,1395,1401,1405,1403,
+1398,1388,1371,1347,1318,1287,1253,1215,1179,1147,1120,1095,1074,1055,1034,1008,979,952,929,905,877,
+845,813,782,755,733,711,685,655,625,594,561,525,490,456,422,387,350,311,269,223,175,
+130,88,51,17,-16,-51,-86,-120,-155,-193,-232,-270,-307,-347,-389,-430,-469,-508,-548,-591,-636,
+-683,-730,-775,-817,-854,-887,-917,-947,-983,-1023,-1063,-1098,-1126,-1150,-1173,-1200,-1231,-1265,-1299,-1335,-1370,
+-1404,-1435,-1468,-1503,-1537,-1567,-1596,-1629,-1662,-1694,-1724,-1754,-1784,-1811,-1841,-1877,-1917,-1953,-1982,-2011,-2044,
+-2079,-2114,-2148,-2180,-2208,-2234,-2262,-2291,-2319,-2345,-2370,-2394,-2416,-2435,-2455,-2475,-2492,-2504,-2516,-2530,-2546,
+-2560,-2571,-2582,-2592,-2602,-2614,-2623,-2627,-2625,-2624,-2626,-2628,-2629,-2630,-2630,-2628,-2621,-2615,-2608,-2600,-2588,
+-2573,-2558,-2542,-2525,-2510,-2496,-2481,-2466,-2452,-2437,-2420,-2401,-2384,-2369,-2350,-2328,-2308,-2291,-2275,-2257,-2240,
+-2223,-2206,-2187,-2168,-2149,-2129,-2110,-2093,-2077,-2059,-2036,-2012,-1989,-1966,-1941,-1917,-1895,-1872,-1850,-1829,-1812,
+-1797,-1782,-1766,-1751,-1733,-1713,-1693,-1676,-1657,-1633,-1607,-1584,-1562,-1542,-1521,-1498,-1470,-1440,-1414,-1394,-1375,
+-1352,-1328,-1306,-1283,-1254,-1220,-1187,-1156,-1127,-1100,-1076,-1055,-1033,-1011,-989,-966,-940,-913,-885,-858,-829,
+-799,-767,-734,-701,-672,-647,-618,-584,-547,-514,-485,-458,-435,-415,-392,-360,-327,-301,-285,-270,-250,
+-225,-199,-173,-148,-123,-96,-66,-34,-3,26,56,85,116,155,198,236,267,302,347,395,436,
+476,525,579,627,675,739,817,889,945,998,1054,1094,1095,1069,1049,1054,1083,1131,1202,1303,1445,
+1641,1888,2139,2334,2454,2534,2615,2682,2674,2557,2370,2194,2077,2012,1967,1941,1958,2021,2091,2123,2115,
+2097,2086,2070,2033,1977,1906,1818,1717,1620,1535,1448,1347,1243,1156,1084,1012,942,889,840,764,643,
+498,360,240,135,47,-20,-62,-63,-19,34,25,-88,-267,-427,-528,-587,-639,-693,-744,-793,-848,
+-906,-952,-969,-959,-952,-986,-1074,-1183,-1278,-1356,-1436,-1522,-1601,-1671,-1744,-1829,-1914,-1988,-2056,-2129,-2203,
+-2267,-2324,-2379,-2431,-2479,-2523,-2569,-2617,-2662,-2703,-2742,-2779,-2814,-2848,-2875,-2890,-2894,-2892,-2892,-2893,-2887,
+-2862,-2814,-2758,-2724,-2734,-2773,-2804,-2809,-2807,-2819,-2845,-2870,-2888,-2901,-2904,-2890,-2859,-2822,-2785,-2764,-2779,
+-2846,-2950,-3050,-3111,-3124,-3097,-3045,-2983,-2921,-2862,-2801,-2739,-2678,-2620,-2562,-2501,-2442,-2384,-2325,-2261,-2191,
+-2122,-2061,-2009,-1959,-1903,-1841,-1781,-1726,-1671,-1613,-1557,-1505,-1451,-1390,-1322,-1256,-1193,-1128,-1059,-992,-931,
+-876,-829,-785,-736,-671,-591,-506,-429,-363,-304,-246,-184,-121,-60,0,62,124,183,237,292,355,
+423,490,549,599,629,637,635,645,674,712,749,778,801,819,837,859,880,892,893,897,916,
+949,979,999,1016,1037,1059,1072,1072,1070,1077,1090,1099,1101,1104,1115,1130,1139,1140,1134,1129,1133,
+1152,1175,1191,1199,1214,1245,1282,1309,1319,1318,1309,1295,1284,1287,1304,1326,1345,1363,1380,1390,1394,
+1404,1428,1463,1499,1534,1571,1615,1664,1710,1748,1781,1820,1866,1909,1936,1947,1947,1935,1912,1885,1867,
+1864,1866,1864,1855,1841,1828,1822,1827,1839,1850,1856,1860,1866,1868,1865,1862,1864,1873,1888,1907,1923,
+1928,1920,1906,1889,1868,1841,1812,1784,1757,1734,1714,1700,1688,1678,1676,1680,1685,1688,1692,1699,1705,
+1710,1704,1697,1689,1677,1660,1641,1624,1610,1604,1610,1621,1625,1619,1613,1610,1601,1588,1583,1583,1568,
+1539,1528,1542,1542,1507,1500,1596,1761,1849,1767,1583,1439,1398,1409,1412,1395,1368,1329,1283,1249,1234,
+1218,1176,1116,1056,1002,945,885,831,786,745,704,661,604,524,424,317,204,93,4,-38,-45,
+-63,-126,-222,-316,-396,-476,-571,-670,-756,-829,-899,-979,-1073,-1176,-1276,-1363,-1433,-1487,-1532,-1574,-1620,
+-1674,-1735,-1793,-1836,-1850,-1830,-1788,-1746,-1729,-1743,-1768,-1785,-1786,-1777,-1756,-1723,-1684,-1653,-1626,-1580,-1505,
+-1429,-1384,-1375,-1376,-1368,-1359,-1350,-1330,-1289,-1238,-1195,-1162,-1138,-1132,-1153,-1194,-1237,-1282,-1334,-1384,-1409,
+-1408,-1400,-1404,-1413,-1419,-1430,-1459,-1509,-1567,-1609,-1612,-1563,-1484,-1407,-1363,-1365,-1424,-1525,-1612,-1619,-1545,
+-1474,-1489,-1594,-1729,-1850,-1965,-2092,-2221,-2324,-2387,-2415,-2431,-2462,-2520,-2599,-2683,-2761,-2828,-2883,-2923,-2956,
+-2992,-3035,-3075,-3108,-3135,-3164,-3203,-3270,-3376,-3510,-3650,-3780,-3900,-4007,-4098,-4179,-4270,-4375,-4482,-4581,-4680,
+-4784,-4883,-4964,-5027,-5084,-5131,-5155,-5151,-5120,-5061,-4984,-4921,-4905,-4938,-4989,-5025,-5042,-5050,-5058,-5070,-5091,
+-5123,-5154,-5172,-5177,-5183,-5201,-5230,-5263,-5293,-5318,-5342,-5368,-5399,-5434,-5465,-5493,-5521,-5555,-5595,-5641,-5695,
+-5758,-5829,-5898,-5960,-6022,-6094,-6176,-6252,-6312,-6358,-6403,-6457,-6517,-6576,-6632,-6688,-6747,-6809,-6871,-6932,-6999,
+-7076,-7157,-7233,-7302,-7366,-7423,-7479,-7540,-7615,-7694,-7760,-7810,-7856,-7912,-7976,-8043,-8114,-8198,-8296,-8402,-8506,
+-8602,-8687,-8764,-8847,-8940,-9033,-9114,-9189,-9268,-9345,-9408,-9462,-9520,-9577,-9614,-9630,-9645,-9670,-9684,-9678,-9675,
+-9704,-9756,-9799,-9826,-9866,-9937,-10022,-10092,-10139,-10172,-10202,-10233,-10266,-10299,-10324,-10341,-10356,-10371,-10376,-10367,-10355,
+-10353,
+-10358,-10359,-10357,-10357,-10358,-10353,-10339,-10317,-10289,-10254,-10216,-10178,-10137,-10079,-9998,-9903,-9807,-9727,-9664,-9605,-9530,
+-9428,
+-9312,-9194,-9073,-8942,-8803,-8672,-8553,-8437,-8308,-8160,-7997,-7823,-7649,-7489,-7345,-7204,-7055,-6900,-6748,-6596,-6428,
+-6237,-6050,-5911,-5839,-5800,-5732,-5603,-5440,-5287,-5164,-5058,-4950,-4827,-4686,-4531,-4382,-4250,-4127,-3999,-3872,-3766,
+-3686,-3613,-3533,-3457,-3382,-3270,-3081,-2832,-2590,-2411,-2288,-2170,-2020,-1839,-1639,-1418,-1175,-947,-789,-723,-702,
+-660,-574,-464,-351,-235,-116,-10,75,158,254,357,451,538,628,726,825,925,1031,1136,1234,1326,
+1422,1524,1628,1734,1842,1951,2056,2157,2253,2343,2427,2512,2601,2692,2784,2880,2978,3072,3164,3264,3374,
+3480,3575,3669,3771,3872,3962,4050,4146,4243,4325,4399,4482,4588,4729,4914,5124,5302,5402,5449,5516,5642,
+5786,5877,5890,5866,5864,5902,5938,5921,5852,5784,5733,5652,5511,5370,5326,5405,5555,5733,5925,6087,6153,
+6130,6101,6112,6114,6064,6015,6040,6119,6182,6225,6308,6460,6645,6823,6959,6991,6867,6623,6359,6128,5932,
+5818,5887,6154,6468,6665,6746,6823,6940,7019,7003,6943,6937,7010,7117,7210,7284,7348,7402,7438,7452,7449,
+7446,7452,7462,7467,7465,7458,7436,7391,7332,7280,7242,7206,7170,7148,7146,7148,7134,7115,7109,7117,7119,
+7103,7079,7057,7039,7030,7033,7040,7035,7015,7003,7009,7020,7019,7014,7019,7024,7017,7008,7012,7019,7005,
+6972,6944,6925,6894,6851,6822,6814,6800,6767,6738,6726,6708,6672,6642,6637,6633,6608,6586,6593,6597,6567,
+6538,6540,6505,6347,6138,6079,6237,6432,6452,6297,6123,6019,5941,5851,5783,5760,5749,5722,5702,5706,5706,
+5675,5640,5640,5667,5689,5702,5716,5727,5722,5706,5692,5673,5634,5583,5542,5513,5484,5453,5425,5395,5350,
+5289,5223,5163,5104,5043,4980,4920,4863,4806,4748,4691,4641,4605,4576,4538,4487,4434,4393,4358,4314,4264,
+4219,4181,4144,4105,4067,4036,4005,3972,3937,3901,3864,3828,3793,3754,3706,3649,3591,3537,3493,3461,3436,
+3395,3324,3230,3143,3085,3063,3071,3089,3089,3053,2992,2925,2860,2794,2747,2763,2852,2955,2975,2874,2711,
+2586,2551,2572,2581,2547,2496,2467,2459,2439,2382,2307,2247,2213,2190,2164,2137,2114,2090,2062,2034,2014,
+1998,1975,1945,1917,1902,1901,1910,1924,1936,1936,1927,1923,1933,1946,1939,1909,1870,1834,1805,1780,1763,
+1753,1743,1726,1706,1689,1668,1641,1614,1593,1576,1551,1524,1509,1511,1519,1518,1500,1471,1440,1417,1404,
+1400,1402,1410,1423,1433,1435,1433,1435,1445,1452,1448,1435,1420,1407,1399,1398,1406,1418,1431,1446,1463,
+1481,1494,1505,1512,1514,1509,1507,1515,1529,1538,1536,1534,1544,1561,1570,1566,1558,1560,1574,1600,1629,
+1656,1673,1681,1695,1722,1752,1764,1763,1779,1830,1885,1893,1836,1749,1680,1647,1632,1619,1600,1581,1563,
+1545,1526,1508,1489,1467,1444,1427,1419,1418,1416,1412,1407,1400,1385,1361,1332,1303,1271,1235,1201,1173,
+1148,1123,1100,1080,1060,1034,1005,980,956,930,898,865,833,802,772,746,722,697,669,640,610,
+578,543,508,474,441,407,372,336,298,255,210,165,121,81,44,6,-33,-71,-107,-142,-180,
+-220,-257,-294,-333,-374,-414,-452,-491,-533,-576,-620,-664,-708,-749,-786,-820,-852,-882,-913,-949,-992,
+-1033,-1069,-1098,-1123,-1146,-1173,-1203,-1236,-1268,-1301,-1336,-1371,-1405,-1439,-1476,-1512,-1544,-1574,-1605,-1636,-1664,
+-1690,-1717,-1746,-1775,-1807,-1842,-1879,-1911,-1939,-1971,-2007,-2044,-2077,-2109,-2141,-2172,-2201,-2230,-2260,-2288,-2312,
+-2335,-2359,-2381,-2401,-2421,-2441,-2458,-2471,-2484,-2499,-2516,-2531,-2544,-2554,-2563,-2571,-2581,-2590,-2593,-2590,-2587,
+-2588,-2592,-2596,-2598,-2598,-2595,-2590,-2585,-2579,-2570,-2557,-2542,-2528,-2513,-2496,-2482,-2471,-2459,-2444,-2429,-2413,
+-2396,-2377,-2360,-2344,-2325,-2302,-2282,-2267,-2253,-2235,-2215,-2197,-2180,-2161,-2140,-2119,-2101,-2087,-2074,-2060,-2039,
+-2013,-1990,-1973,-1955,-1932,-1905,-1880,-1859,-1839,-1821,-1805,-1790,-1775,-1761,-1746,-1729,-1709,-1690,-1673,-1654,-1632,
+-1607,-1584,-1563,-1543,-1523,-1502,-1478,-1453,-1432,-1414,-1394,-1369,-1345,-1325,-1304,-1278,-1249,-1221,-1191,-1160,-1133,
+-1113,-1095,-1072,-1047,-1025,-1006,-983,-955,-926,-897,-866,-833,-802,-772,-739,-705,-675,-646,-614,-579,-543,
+-511,-482,-454,-431,-408,-381,-350,-323,-306,-293,-276,-252,-225,-197,-171,-148,-121,-90,-56,-26,1,
+31,64,98,134,173,211,246,281,319,361,402,444,492,545,601,665,742,820,881,928,978,
+1032,1058,1041,1011,1015,1068,1140,1209,1286,1411,1611,1877,2159,2389,2520,2567,2585,2603,2596,2520,2377,
+2219,2099,2027,1982,1952,1951,1998,2081,2158,2192,2182,2153,2128,2108,2086,2054,2002,1926,1835,1746,1657,
+1549,1424,1311,1232,1170,1098,1024,969,929,857,727,558,395,268,176,107,52,13,15,72,145,
+151,37,-163,-364,-502,-579,-629,-678,-731,-785,-836,-882,-917,-931,-926,-929,-974,-1067,-1173,-1259,-1331,
+-1411,-1498,-1569,-1622,-1682,-1765,-1855,-1933,-2008,-2089,-2170,-2240,-2298,-2355,-2412,-2462,-2505,-2545,-2588,-2632,-2675,
+-2714,-2750,-2784,-2816,-2843,-2860,-2866,-2864,-2860,-2856,-2847,-2819,-2763,-2693,-2648,-2656,-2702,-2744,-2758,-2758,-2767,
+-2792,-2823,-2851,-2869,-2868,-2849,-2822,-2794,-2758,-2717,-2695,-2720,-2794,-2890,-2974,-3027,-3040,-3016,-2968,-2910,-2849,
+-2790,-2735,-2684,-2634,-2577,-2513,-2447,-2382,-2317,-2253,-2189,-2126,-2064,-2004,-1947,-1891,-1835,-1781,-1728,-1674,-1617,
+-1557,-1496,-1433,-1366,-1299,-1234,-1170,-1106,-1042,-980,-919,-861,-812,-770,-720,-653,-574,-495,-425,-366,-314,
+-265,-211,-151,-87,-22,40,103,161,212,266,329,400,470,532,581,610,615,611,614,634,665,
+701,735,761,776,789,812,843,866,874,881,904,943,980,1001,1016,1037,1064,1079,1074,1059,1053,
+1060,1071,1081,1094,1112,1130,1142,1149,1154,1158,1165,1181,1202,1221,1234,1255,1287,1320,1336,1332,1318,
+1301,1283,1272,1276,1293,1312,1325,1335,1343,1346,1355,1382,1432,1490,1541,1580,1618,1660,1702,1730,1738,
+1735,1737,1752,1770,1780,1785,1794,1806,1812,1810,1810,1820,1835,1850,1861,1870,1877,1883,1892,1901,1906,
+1906,1909,1913,1913,1909,1904,1902,1902,1902,1903,1903,1895,1879,1861,1845,1828,1809,1788,1768,1747,1726,
+1709,1700,1698,1700,1704,1708,1709,1707,1707,1710,1710,1704,1697,1690,1685,1674,1657,1639,1624,1613,1610,
+1620,1633,1635,1624,1614,1612,1612,1609,1610,1607,1586,1555,1543,1553,1545,1500,1480,1556,1698,1779,1716,
+1563,1434,1382,1377,1383,1381,1361,1311,1249,1211,1208,1205,1169,1107,1049,1003,955,897,833,770,717,
+676,640,588,506,401,292,185,83,0,-47,-69,-107,-185,-290,-388,-469,-554,-654,-759,-848,-914,
+-973,-1044,-1132,-1227,-1313,-1387,-1452,-1513,-1573,-1632,-1686,-1735,-1778,-1819,-1857,-1881,-1879,-1849,-1815,-1800,-1811,
+-1830,-1843,-1846,-1838,-1817,-1781,-1742,-1711,-1682,-1633,-1561,-1489,-1441,-1419,-1406,-1393,-1382,-1365,-1326,-1268,-1213,
+-1180,-1160,-1143,-1142,-1181,-1257,-1335,-1383,-1393,-1382,-1365,-1358,-1368,-1385,-1393,-1389,-1393,-1422,-1478,-1541,-1584,
+-1581,-1521,-1418,-1310,-1247,-1262,-1360,-1498,-1591,-1576,-1478,-1401,-1433,-1567,-1725,-1851,-1947,-2047,-2165,-2290,-2400,
+-2477,-2518,-2541,-2572,-2629,-2707,-2789,-2862,-2917,-2958,-2997,-3045,-3099,-3148,-3190,-3224,-3256,-3294,-3360,-3472,-3626,
+-3791,-3943,-4067,-4159,-4223,-4278,-4349,-4444,-4544,-4632,-4713,-4797,-4880,-4951,-5007,-5058,-5100,-5123,-5114,-5074,-5015,
+-4955,-4920,-4922,-4953,-4990,-5018,-5034,-5042,-5046,-5055,-5076,-5106,-5127,-5134,-5136,-5147,-5173,-5209,-5243,-5269,-5289,
+-5310,-5336,-5366,-5395,-5421,-5447,-5481,-5525,-5575,-5629,-5686,-5751,-5823,-5895,-5959,-6019,-6084,-6159,-6237,-6305,-6362,
+-6414,-6467,-6523,-6578,-6633,-6691,-6754,-6816,-6872,-6926,-6991,-7071,-7158,-7235,-7298,-7351,-7405,-7465,-7533,-7609,-7684,
+-7750,-7804,-7853,-7903,-7954,-8012,-8087,-8179,-8280,-8380,-8478,-8571,-8657,-8737,-8822,-8916,-9005,-9082,-9154,-9235,-9315,
+-9381,-9437,-9497,-9555,-9589,-9599,-9613,-9638,-9651,-9640,-9634,-9665,-9722,-9769,-9801,-9849,-9929,-10016,-10080,-10119,-10149,
+-10178,-10208,-10241,-10275,-10301,-10320,-10337,-10355,-10364,-10359,-10350,-10348,-10351,-10350,-10346,-10347,-10348,-10340,-10320,-10296,-10268,
+-10234,
+-10194,-10149,-10095,-10019,-9919,-9808,-9710,-9643,-9605,-9576,-9523,-9437,-9329,-9218,-9106,-8982,-8847,-8715,-8588,-8456,-8307,
+-8146,-7985,-7824,-7663,-7502,-7348,-7202,-7059,-6914,-6764,-6605,-6429,-6241,-6063,-5930,-5857,-5813,-5747,-5628,-5476,-5329,
+-5201,-5078,-4947,-4807,-4663,-4514,-4362,-4212,-4064,-3920,-3791,-3687,-3592,-3489,-3391,-3337,-3324,-3280,-3124,-2850,-2543,
+-2299,-2150,-2054,-1953,-1814,-1637,-1428,-1201,-987,-828,-741,-695,-641,-554,-448,-334,-215,-94,17,112,202,
+292,378,455,538,636,742,843,942,1048,1157,1260,1358,1457,1559,1662,1768,1879,1988,2087,2183,2284,
+2385,2479,2568,2658,2748,2833,2921,3019,3121,3222,3322,3426,3528,3624,3719,3822,3925,4021,4117,4221,4325,
+4415,4499,4598,4720,4864,5029,5202,5346,5431,5484,5566,5697,5827,5891,5877,5836,5824,5852,5884,5885,5862,
+5844,5821,5736,5569,5403,5346,5427,5599,5814,6042,6221,6288,6272,6269,6314,6334,6281,6218,6223,6269,6291,
+6309,6408,6600,6805,6946,6995,6929,6734,6462,6208,6019,5894,5874,6043,6384,6723,6896,6920,6933,6999,7068,
+7086,7081,7101,7153,7211,7259,7299,7338,7384,7437,7475,7477,7453,7440,7453,7470,7470,7453,7428,7393,7347,
+7300,7258,7216,7170,7137,7127,7123,7108,7087,7082,7095,7108,7109,7100,7087,7071,7060,7066,7076,7070,7048,
+7037,7049,7063,7059,7047,7046,7051,7045,7034,7035,7044,7040,7021,7003,6988,6959,6919,6890,6877,6857,6821,
+6789,6774,6752,6713,6680,6671,6665,6640,6619,6621,6618,6587,6566,6578,6547,6388,6173,6102,6247,6439,6472,
+6341,6190,6096,6018,5921,5846,5819,5805,5772,5740,5730,5720,5682,5640,5636,5671,5710,5735,5746,5749,5742,
+5733,5727,5710,5671,5621,5579,5545,5510,5475,5449,5421,5377,5312,5240,5172,5106,5041,4981,4926,4875,4824,
+4773,4718,4663,4617,4580,4541,4492,4441,4402,4369,4332,4288,4243,4203,4167,4134,4105,4077,4043,4003,3964,
+3926,3886,3847,3812,3778,3732,3673,3611,3558,3518,3490,3463,3422,3353,3258,3163,3096,3073,3088,3114,3118,
+3087,3033,2974,2910,2837,2781,2786,2862,2953,2969,2876,2724,2604,2563,2576,2587,2572,2551,2543,2534,2489,
+2405,2320,2271,2255,2237,2201,2156,2122,2101,2080,2054,2030,2012,1991,1961,1926,1903,1905,1928,1955,1966,
+1954,1936,1928,1932,1934,1923,1908,1898,1886,1855,1809,1772,1753,1743,1727,1708,1693,1678,1657,1635,1619,
+1602,1574,1539,1514,1508,1510,1509,1499,1483,1462,1439,1424,1423,1429,1435,1436,1433,1428,1424,1429,1442,
+1453,1454,1444,1430,1417,1409,1407,1413,1424,1440,1460,1482,1499,1507,1507,1505,1502,1500,1504,1517,1531,
+1538,1539,1545,1563,1581,1586,1580,1576,1580,1588,1599,1615,1637,1654,1664,1678,1706,1737,1748,1741,1739,
+1762,1796,1808,1783,1733,1683,1647,1628,1617,1605,1587,1562,1541,1529,1523,1515,1499,1478,1459,1447,1438,
+1427,1416,1408,1400,1385,1361,1337,1313,1285,1252,1220,1194,1172,1148,1124,1103,1082,1056,1031,1010,990,
+965,931,896,862,828,793,760,731,705,678,651,622,591,559,527,496,464,428,393,358,321,
+281,238,193,149,106,66,25,-18,-61,-100,-137,-174,-212,-248,-284,-323,-363,-401,-438,-478,-521,
+-564,-605,-646,-686,-723,-755,-785,-816,-845,-877,-914,-957,-999,-1035,-1065,-1092,-1118,-1145,-1176,-1208,-1240,
+-1270,-1303,-1338,-1374,-1411,-1449,-1486,-1519,-1548,-1577,-1607,-1634,-1658,-1683,-1713,-1746,-1778,-1811,-1842,-1871,-1900,
+-1932,-1968,-2002,-2032,-2063,-2097,-2131,-2162,-2193,-2222,-2248,-2270,-2293,-2317,-2340,-2361,-2380,-2400,-2417,-2432,-2447,
+-2464,-2482,-2497,-2510,-2521,-2530,-2537,-2546,-2554,-2557,-2554,-2551,-2554,-2560,-2564,-2565,-2564,-2562,-2559,-2556,-2550,
+-2540,-2526,-2513,-2501,-2487,-2470,-2455,-2444,-2433,-2417,-2400,-2384,-2368,-2351,-2334,-2318,-2299,-2275,-2254,-2240,-2227,
+-2210,-2189,-2170,-2153,-2133,-2111,-2091,-2075,-2064,-2056,-2043,-2021,-1993,-1970,-1955,-1941,-1920,-1892,-1868,-1848,-1832,
+-1815,-1799,-1785,-1771,-1757,-1742,-1725,-1706,-1686,-1668,-1650,-1630,-1607,-1585,-1563,-1543,-1523,-1502,-1479,-1458,-1442,
+-1426,-1404,-1379,-1355,-1336,-1314,-1287,-1263,-1242,-1219,-1190,-1163,-1145,-1129,-1104,-1077,-1056,-1041,-1022,-997,-973,
+-947,-913,-875,-842,-813,-780,-740,-703,-674,-647,-615,-580,-546,-511,-473,-439,-415,-395,-372,-348,-327,
+-308,-289,-266,-240,-214,-189,-166,-141,-112,-80,-52,-26,4,42,80,112,144,182,222,257,289,
+326,369,415,463,515,580,659,742,814,866,913,966,1010,1013,977,955,1003,1116,1237,1332,1426,
+1577,1819,2124,2421,2635,2728,2720,2658,2569,2446,2292,2141,2037,1992,1977,1962,1949,1964,2026,2121,2204,
+2237,2215,2166,2123,2101,2092,2076,2036,1968,1886,1804,1717,1610,1488,1380,1306,1244,1164,1076,1010,962,
+890,760,589,424,299,215,152,98,60,63,119,190,195,82,-121,-333,-485,-568,-614,-658,-711,
+-768,-817,-859,-893,-914,-919,-930,-976,-1062,-1156,-1231,-1301,-1385,-1473,-1538,-1583,-1639,-1720,-1809,-1888,-1965,
+-2053,-2141,-2214,-2272,-2329,-2388,-2441,-2483,-2521,-2561,-2603,-2643,-2680,-2714,-2746,-2776,-2802,-2820,-2829,-2828,-2819,
+-2808,-2794,-2766,-2709,-2636,-2586,-2589,-2630,-2670,-2687,-2697,-2718,-2752,-2791,-2825,-2842,-2833,-2806,-2779,-2760,-2735,
+-2697,-2658,-2645,-2670,-2723,-2788,-2852,-2902,-2926,-2921,-2889,-2839,-2782,-2729,-2683,-2637,-2582,-2518,-2449,-2378,-2308,
+-2246,-2193,-2142,-2083,-2018,-1957,-1907,-1860,-1806,-1744,-1681,-1621,-1563,-1500,-1431,-1362,-1299,-1236,-1171,-1107,-1048,
+-992,-932,-869,-814,-766,-715,-651,-580,-514,-455,-402,-353,-308,-257,-196,-127,-57,8,71,129,184,
+239,302,369,433,489,533,561,574,581,592,610,633,663,696,723,736,746,770,809,844,861,
+869,889,927,965,987,1000,1019,1047,1066,1061,1042,1032,1038,1053,1071,1092,1118,1142,1162,1184,1209,
+1230,1241,1250,1262,1269,1269,1269,1280,1295,1296,1283,1263,1248,1242,1254,1285,1326,1361,1385,1402,1413,
+1419,1432,1464,1514,1565,1602,1627,1656,1692,1725,1738,1724,1697,1677,1676,1684,1691,1700,1722,1757,1791,
+1814,1832,1853,1876,1900,1923,1944,1958,1965,1968,1966,1957,1946,1939,1934,1926,1914,1904,1896,1888,1880,
+1873,1868,1859,1844,1830,1817,1804,1789,1776,1765,1753,1739,1729,1726,1729,1733,1737,1737,1730,1719,1712,
+1708,1704,1699,1694,1690,1686,1674,1654,1636,1626,1621,1620,1630,1643,1646,1634,1620,1617,1623,1628,1630,
+1623,1600,1569,1551,1552,1543,1512,1494,1530,1595,1620,1569,1479,1405,1365,1346,1343,1344,1317,1247,1171,
+1143,1167,1187,1159,1095,1036,997,964,916,850,777,709,656,613,559,478,374,263,156,54,-31,
+-91,-134,-187,-266,-363,-455,-535,-620,-721,-831,-928,-1002,-1058,-1117,-1188,-1266,-1342,-1412,-1479,-1549,-1619,
+-1686,-1745,-1787,-1814,-1838,-1872,-1907,-1924,-1912,-1887,-1873,-1876,-1884,-1888,-1888,-1880,-1859,-1823,-1785,-1753,-1720,
+-1672,-1612,-1552,-1503,-1465,-1436,-1419,-1404,-1364,-1286,-1196,-1140,-1131,-1141,-1139,-1139,-1174,-1247,-1315,-1341,-1325,
+-1302,-1298,-1316,-1342,-1358,-1353,-1339,-1339,-1370,-1429,-1497,-1554,-1572,-1530,-1425,-1296,-1213,-1233,-1353,-1503,-1582,
+-1538,-1426,-1359,-1413,-1564,-1729,-1850,-1929,-2004,-2104,-2231,-2367,-2483,-2557,-2594,-2623,-2670,-2743,-2826,-2901,-2957,
+-3001,-3052,-3116,-3183,-3240,-3285,-3324,-3364,-3415,-3494,-3618,-3780,-3948,-4093,-4199,-4267,-4307,-4345,-4410,-4506,-4605,
+-4680,-4735,-4790,-4854,-4920,-4977,-5024,-5062,-5084,-5077,-5041,-4987,-4943,-4926,-4937,-4961,-4982,-4999,-5011,-5019,-5026,
+-5038,-5059,-5081,-5091,-5092,-5097,-5116,-5146,-5180,-5209,-5232,-5252,-5275,-5302,-5330,-5355,-5380,-5412,-5458,-5514,-5572,
+-5629,-5686,-5749,-5820,-5893,-5961,-6021,-6082,-6150,-6224,-6296,-6357,-6410,-6463,-6521,-6583,-6644,-6705,-6766,-6824,-6877,
+-6929,-6991,-7069,-7154,-7228,-7285,-7333,-7387,-7454,-7529,-7603,-7670,-7733,-7793,-7847,-7891,-7930,-7982,-8062,-8162,-8262,
+-8353,-8443,-8535,-8624,-8707,-8792,-8882,-8967,-9041,-9115,-9199,-9281,-9346,-9402,-9462,-9520,-9556,-9574,-9597,-9619,-9609,
+-9569,-9549,-9591,-9671,-9735,-9779,-9839,-9930,-10019,-10074,-10102,-10126,-10156,-10188,-10221,-10255,-10284,-10304,-10322,-10340,-10349,
+-10344,
+-10335-10333,-10337,-10338,-10336,-10338,-10337,-10325,-10301,-10275,-10247,-10212,-10166,-10111,-10044,-9952,-9833,-9709,-9608,-9551,
+-9532,-9521,-9486,-9411,-9312,-9211,-9109,-8996,-8866,-8730,-8590,-8442,-8284,-8124,-7974,-7828,-7677,-7518,-7360,-7213,-7074,
+-6934,-6782,-6615,-6441,-6273,-6122,-6001,-5912,-5841,-5757,-5641,-5502,-5365,-5237,-5104,-4957,-4803,-4651,-4502,-4350,-4190,
+-4025,-3870,-3744,-3641,-3531,-3393,-3261,-3197,-3214,-3230,-3137,-2896,-2572,-2275,-2077,-1970,-1890,-1773,-1601,-1396,-1193,
+-1010,-860,-749,-671,-603,-525,-429,-316,-193,-70,42,143,237,322,389,448,526,632,748,855,956,
+1067,1185,1295,1393,1490,1588,1691,1802,1919,2027,2120,2210,2312,2418,2515,2606,2699,2791,2875,2959,3059,
+3172,3282,3383,3482,3580,3672,3763,3863,3969,4068,4158,4253,4354,4452,4552,4670,4810,4960,5111,5254,5371,
+5450,5513,5601,5717,5814,5845,5819,5784,5770,5770,5762,5752,5768,5820,5852,5782,5599,5411,5346,5438,5635,
+5879,6129,6321,6400,6397,6405,6447,6453,6386,6314,6303,6317,6306,6321,6452,6681,6882,6962,6920,6768,6515,
+6217,5977,5845,5812,5892,6142,6538,6918,7121,7149,7121,7121,7149,7189,7240,7294,7327,7333,7332,7335,7344,
+7374,7432,7488,7495,7462,7442,7460,7481,7470,7439,7414,7394,7359,7311,7261,7206,7146,7096,7075,7075,7073,
+7064,7061,7069,7079,7085,7090,7092,7085,7079,7087,7102,7105,7092,7084,7091,7100,7093,7083,7086,7095,7089,
+7070,7060,7063,7066,7062,7055,7044,7021,6987,6960,6940,6912,6873,6842,6826,6803,6765,6730,6715,6699,6668,
+6642,6639,6634,6609,6596,6614,6590,6441,6229,6137,6243,6408,6448,6346,6222,6147,6082,5994,5917,5880,5854,
+5809,5763,5739,5724,5691,5655,5649,5680,5721,5749,5759,5754,5746,5746,5754,5751,5722,5676,5632,5589,5542,
+5497,5461,5427,5384,5327,5260,5187,5111,5042,4984,4935,4886,4840,4798,4753,4697,4637,4586,4545,4508,4469,
+4431,4393,4352,4308,4266,4226,4190,4161,4137,4110,4071,4026,3985,3946,3905,3865,3834,3806,3763,3703,3637,
+3585,3547,3517,3486,3444,3381,3292,3194,3118,3090,3111,3150,3168,3144,3089,3024,2953,2876,2814,2799,2841,
+2900,2915,2854,2743,2639,2584,2577,2589,2593,2589,2578,2550,2489,2402,2324,2284,2277,2269,2240,2195,2156,
+2130,2109,2084,2058,2038,2019,1989,1948,1919,1923,1955,1985,1988,1966,1941,1931,1929,1920,1909,1914,1935,
+1944,1911,1847,1790,1763,1752,1737,1718,1704,1692,1674,1654,1639,1624,1596,1559,1528,1513,1505,1498,1495,
+1493,1483,1465,1449,1448,1454,1455,1448,1438,1431,1427,1426,1431,1438,1442,1442,1439,1433,1428,1428,1436,
+1451,1465,1477,1486,1492,1496,1503,1509,1511,1511,1518,1535,1554,1560,1559,1565,1578,1584,1577,1570,1578,
+1593,1599,1595,1596,1611,1629,1643,1659,1685,1715,1729,1726,1720,1724,1736,1745,1744,1727,1695,1657,1629,
+1617,1610,1591,1562,1536,1523,1520,1515,1505,1491,1479,1467,1453,1436,1419,1406,1395,1379,1360,1341,1323,
+1299,1267,1234,1208,1187,1163,1139,1119,1100,1077,1055,1038,1023,1001,970,937,903,865,822,781,748,
+719,693,666,638,608,578,550,521,488,450,412,375,337,298,257,214,169,126,86,45,1,
+-45,-88,-126,-162,-198,-233,-271,-312,-354,-391,-428,-467,-509,-549,-585,-623,-662,-697,-727,-756,-785,
+-813,-844,-881,-923,-963,-997,-1028,-1058,-1087,-1116,-1147,-1180,-1211,-1239,-1270,-1305,-1341,-1378,-1415,-1452,-1486,
+-1515,-1543,-1573,-1601,-1626,-1653,-1684,-1719,-1752,-1781,-1809,-1837,-1867,-1900,-1932,-1962,-1990,-2022,-2057,-2092,-2123,
+-2151,-2178,-2201,-2222,-2245,-2270,-2295,-2315,-2335,-2355,-2373,-2389,-2406,-2425,-2444,-2459,-2471,-2483,-2492,-2500,-2507,
+-2515,-2519,-2519,-2520,-2524,-2530,-2533,-2532,-2531,-2530,-2528,-2524,-2518,-2507,-2494,-2482,-2472,-2458,-2442,-2426,-2414,
+-2400,-2383,-2365,-2350,-2337,-2322,-2307,-2292,-2274,-2251,-2230,-2215,-2201,-2183,-2162,-2143,-2126,-2106,-2084,-2065,-2051,
+-2042,-2034,-2022,-2002,-1976,-1954,-1939,-1925,-1905,-1881,-1860,-1843,-1827,-1810,-1794,-1779,-1765,-1750,-1735,-1718,-1699,
+-1679,-1662,-1645,-1627,-1606,-1584,-1562,-1543,-1524,-1503,-1480,-1459,-1443,-1427,-1405,-1379,-1358,-1341,-1319,-1292,-1269,
+-1253,-1236,-1210,-1185,-1169,-1154,-1131,-1104,-1085,-1071,-1053,-1032,-1014,-993,-961,-921,-886,-856,-819,-774,-734,
+-706,-682,-653,-620,-587,-548,-501,-456,-423,-402,-385,-368,-348,-325,-300,-275,-252,-229,-203,-179,-156,
+-131,-101,-73,-46,-14,24,61,88,116,153,194,227,256,293,345,400,451,504,572,653,730,
+793,845,900,953,977,954,914,929,1039,1211,1374,1493,1603,1764,2004,2295,2572,2765,2835,2782,2641,
+2449,2239,2053,1937,1909,1938,1972,1977,1966,1976,2034,2131,2221,2253,2215,2143,2086,2063,2064,2061,2035,
+1981,1906,1824,1742,1651,1549,1451,1368,1290,1200,1105,1028,968,892,768,610,455,335,249,180,121,
+80,77,115,159,149,45,-130,-318,-459,-542,-589,-632,-685,-740,-789,-834,-877,-909,-923,-936,-978,
+-1053,-1132,-1200,-1270,-1356,-1443,-1506,-1553,-1614,-1697,-1783,-1858,-1936,-2027,-2118,-2189,-2245,-2300,-2359,-2412,-2455,
+-2493,-2534,-2574,-2610,-2643,-2676,-2707,-2734,-2755,-2772,-2781,-2777,-2757,-2734,-2717,-2696,-2651,-2587,-2537,-2530,-2556,
+-2585,-2608,-2638,-2682,-2732,-2773,-2803,-2814,-2801,-2770,-2741,-2725,-2710,-2680,-2641,-2608,-2591,-2589,-2606,-2648,-2709,
+-2773,-2816,-2825,-2800,-2756,-2712,-2674,-2631,-2578,-2515,-2450,-2382,-2314,-2256,-2211,-2167,-2110,-2045,-1988,-1947,-1906,
+-1845,-1768,-1695,-1637,-1586,-1528,-1461,-1395,-1338,-1282,-1219,-1154,-1099,-1050,-995,-932,-870,-814,-759,-697,-635,
+-579,-528,-477,-427,-379,-324,-258,-186,-116,-52,7,66,122,180,239,299,355,405,446,477,504,
+533,565,593,615,639,670,697,712,723,749,791,830,848,852,865,897,934,959,971,989,1015,
+1037,1038,1027,1026,1041,1064,1087,1114,1143,1170,1193,1221,1252,1273,1278,1275,1275,1272,1255,1233,1221,
+1221,1222,1218,1211,1211,1226,1263,1324,1396,1463,1519,1568,1604,1622,1630,1641,1656,1666,1665,1668,1687,
+1720,1750,1760,1747,1723,1712,1721,1742,1758,1773,1798,1835,1872,1898,1916,1931,1947,1963,1978,1989,1993,
+1992,1988,1980,1967,1952,1939,1928,1914,1897,1884,1875,1866,1857,1851,1848,1844,1836,1828,1819,1806,1791,
+1781,1776,1771,1764,1760,1759,1758,1756,1754,1750,1738,1722,1709,1703,1699,1704,1701,1697,1691,1675,1653,
+1637,1632,1632,1632,1637,1648,1655,1647,1633,1629,1637,1644,1644,1634,1612,1583,1561,1557,1569,1587,1601,
+1599,1564,1497,1430,1392,1375,1353,1323,1307,1299,1254,1158,1062,1036,1081,1126,1117,1066,1016,987,965,
+928,870,795,715,643,582,521,445,346,234,120,12,-81,-155,-215,-274,-343,-426,-513,-598,-685,
+-781,-888,-993,-1082,-1149,-1202,-1256,-1314,-1376,-1442,-1514,-1590,-1665,-1733,-1788,-1823,-1839,-1853,-1886,-1932,-1966,
+-1968,-1950,-1935,-1932,-1934,-1934,-1932,-1921,-1897,-1860,-1823,-1789,-1750,-1703,-1653,-1605,-1557,-1507,-1468,-1448,-1424,
+-1356,-1236,-1115,-1053,-1058,-1080,-1080,-1072,-1093,-1143,-1187,-1198,-1193,-1204,-1241,-1285,-1315,-1320,-1306,-1291,-1294,
+-1329,-1389,-1462,-1532,-1577,-1569,-1488,-1361,-1261,-1261,-1366,-1500,-1560,-1509,-1406,-1354,-1412,-1556,-1714,-1835,-1914,
+-1979,-2060,-2172,-2306,-2437,-2538,-2605,-2653,-2707,-2779,-2863,-2941,-3002,-3056,-3118,-3192,-3262,-3314,-3355,-3402,-3466,
+-3548,-3655,-3791,-3943,-4085,-4198,-4278,-4328,-4359,-4393,-4455,-4549,-4646,-4714,-4751,-4784,-4832,-4893,-4950,-4994,-5027,
+-5046,-5041,-5009,-4961,-4925,-4918,-4934,-4954,-4967,-4975,-4983,-4991,-5001,-5017,-5037,-5051,-5056,-5059,-5070,-5091,-5116,
+-5141,-5167,-5194,-5220,-5245,-5269,-5293,-5315,-5344,-5388,-5448,-5513,-5576,-5633,-5690,-5750,-5817,-5888,-5957,-6019,-6079,
+-6145,-6215,-6283,-6340,-6392,-6448,-6513,-6584,-6650,-6708,-6763,-6820,-6877,-6935,-6998,-7070,-7145,-7213,-7267,-7316,-7373,
+-7444,-7521,-7591,-7652,-7713,-7777,-7835,-7877,-7912,-7964,-8047,-8146,-8237,-8317,-8401,-8496,-8590,-8674,-8756,-8842,-8924,
+-9000,-9078,-9164,-9244,-9305,-9358,-9418,-9477,-9519,-9552,-9589,-9607,-9569,-9493,-9460,-9515,-9620,-9705,-9762,-9836,-9939,
+-10030,-10075,-10088,-10105,-10136,-10171,-10207,-10242,-10273,-10295,-10313,-10330,-10339,-10335,-10326,-10325,-10328,-10327,-10325,-10325,-10322,
+-10309,
+-10287,-10263,-10235,-10193,-10138,-10075,-9999,-9896,-9766,-9634,-9533,-9480,-9465,-9458,-9427,-9360,-9270,-9175,-9078,-8969,-8842,
+-8701,-8554,-8401,-8247,-8099,-7960,-7825,-7682,-7531,-7378,-7235,-7102,-6970,-6823,-6658,-6492,-6344,-6217,-6103,-5992,-5883,
+-5770,-5647,-5518,-5390,-5265,-5130,-4979,-4818,-4658,-4504,-4348,-4182,-4009,-3846,-3715,-3606,-3482,-3321,-3164,-3081,-3095,
+-3145,-3124,-2967,-2687,-2368,-2109,-1954,-1857,-1734,-1549,-1341,-1165,-1026,-897,-768,-655,-571,-499,-414,-305,-180,
+-57,53,157,259,348,411,463,536,644,766,878,984,1100,1222,1335,1430,1520,1615,1721,1839,1960,
+2066,2155,2242,2342,2445,2539,2630,2729,2830,2920,3005,3108,3227,3340,3438,3530,3621,3706,3792,3894,4007,
+4107,4188,4270,4369,4480,4595,4720,4862,5010,5152,5281,5387,5467,5533,5610,5693,5749,5757,5741,5733,5729,
+5696,5627,5567,5578,5669,5753,5722,5564,5398,5360,5482,5699,5943,6176,6352,6429,6431,6430,6436,6395,6291,
+6198,6170,6168,6154,6190,6355,6597,6764,6778,6668,6471,6195,5889,5668,5602,5680,5883,6224,6669,7078,7313,
+7360,7310,7253,7234,7275,7364,7445,7466,7439,7412,7397,7388,7399,7446,7500,7507,7472,7452,7472,7488,7464,
+7425,7406,7396,7361,7297,7227,7155,7077,7009,6980,6992,7017,7033,7041,7048,7053,7055,7061,7071,7076,7078,
+7087,7105,7119,7120,7118,7122,7128,7128,7129,7138,7145,7138,7117,7101,7099,7103,7104,7100,7090,7070,7042,
+7016,6991,6958,6920,6893,6877,6856,6822,6791,6771,6746,6705,6669,6657,6651,6632,6623,6642,6630,6510,6314,
+6191,6230,6348,6392,6327,6231,6168,6117,6047,5977,5931,5896,5850,5802,5768,5744,5714,5683,5673,5692,5727,
+5761,5780,5777,5763,5760,5774,5788,5780,5747,5699,5643,5582,5524,5475,5434,5393,5349,5294,5220,5134,5057,
+5000,4954,4908,4865,4833,4800,4745,4671,4601,4555,4526,4500,4466,4423,4376,4332,4292,4252,4213,4180,4154,
+4125,4085,4038,3995,3957,3915,3874,3844,3817,3779,3723,3664,3615,3578,3543,3504,3461,3403,3324,3231,3152,
+3118,3136,3179,3205,3186,3126,3048,2969,2893,2830,2795,2800,2833,2867,2868,2819,2734,2648,2598,2589,2599,
+2595,2567,2517,2456,2391,2333,2297,2284,2281,2271,2243,2207,2174,2146,2121,2098,2081,2065,2036,1993,1960,
+1958,1982,2001,1992,1966,1947,1943,1938,1922,1911,1927,1964,1981,1948,1877,1814,1783,1771,1757,1739,1725,
+1713,1695,1673,1655,1638,1611,1575,1544,1523,1509,1499,1499,1503,1501,1487,1474,1473,1477,1475,1464,1453,
+1445,1439,1432,1426,1425,1430,1438,1446,1449,1447,1450,1463,1480,1490,1489,1481,1478,1493,1522,1549,1556,
+1546,1542,1556,1575,1579,1573,1573,1581,1578,1561,1551,1563,1585,1591,1581,1578,1594,1616,1632,1646,1668,
+1690,1703,1705,1706,1709,1712,1715,1723,1726,1708,1671,1637,1622,1614,1596,1565,1536,1519,1509,1502,1494,
+1487,1480,1471,1459,1443,1425,1408,1394,1378,1362,1347,1332,1309,1278,1245,1218,1195,1170,1148,1133,1119,
+1101,1079,1061,1046,1028,1004,978,947,907,860,814,778,747,718,690,661,630,598,568,538,504,
+466,427,390,353,314,275,235,193,150,111,72,30,-15,-60,-100,-136,-171,-206,-247,-291,-335,
+-374,-411,-450,-491,-527,-561,-597,-636,-671,-702,-730,-757,-785,-816,-853,-893,-930,-961,-993,-1026,-1058,
+-1085,-1114,-1147,-1179,-1208,-1237,-1270,-1305,-1339,-1375,-1413,-1449,-1480,-1509,-1540,-1570,-1596,-1622,-1655,-1690,-1722,
+-1750,-1778,-1809,-1842,-1873,-1903,-1931,-1961,-1994,-2029,-2061,-2088,-2113,-2136,-2157,-2176,-2199,-2225,-2250,-2271,-2291,
+-2311,-2330,-2347,-2366,-2386,-2404,-2416,-2427,-2439,-2451,-2460,-2467,-2475,-2481,-2485,-2489,-2496,-2501,-2502,-2500,-2501,
+-2501,-2498,-2492,-2484,-2474,-2462,-2451,-2440,-2427,-2410,-2395,-2381,-2366,-2347,-2329,-2316,-2303,-2290,-2277,-2264,-2250,
+-2231,-2211,-2194,-2178,-2159,-2138,-2120,-2103,-2082,-2061,-2044,-2032,-2020,-2008,-1995,-1978,-1958,-1939,-1923,-1907,-1888,
+-1868,-1852,-1838,-1821,-1802,-1784,-1770,-1756,-1740,-1724,-1708,-1690,-1672,-1656,-1641,-1624,-1604,-1582,-1561,-1542,-1524,
+-1504,-1481,-1460,-1443,-1425,-1401,-1376,-1357,-1344,-1325,-1300,-1277,-1261,-1245,-1221,-1199,-1184,-1170,-1149,-1126,-1109,
+-1094,-1074,-1053,-1036,-1020,-993,-956,-922,-891,-854,-810,-772,-745,-721,-692,-662,-633,-598,-551,-498,-450,
+-413,-389,-377,-368,-350,-321,-294,-274,-253,-226,-198,-176,-153,-123,-90,-60,-29,6,39,65,91,
+127,166,196,224,267,330,395,451,506,573,647,713,772,834,898,939,933,892,873,944,1113,
+1325,1509,1646,1773,1936,2146,2380,2591,2730,2753,2652,2458,2227,2017,1875,1826,1861,1933,1987,1997,1980,
+1978,2025,2121,2214,2245,2193,2103,2036,2013,2018,2026,2023,1994,1933,1850,1769,1693,1610,1508,1398,1292,
+1197,1112,1041,979,901,785,638,494,375,283,206,141,94,74,78,80,49,-35,-165,-307,-425,
+-505,-558,-605,-657,-708,-758,-808,-858,-895,-912,-927,-967,-1034,-1104,-1167,-1235,-1320,-1405,-1470,-1526,-1597,
+-1682,-1763,-1834,-1913,-2005,-2095,-2164,-2219,-2274,-2332,-2383,-2426,-2466,-2507,-2545,-2578,-2609,-2641,-2671,-2693,-2710,
+-2723,-2730,-2717,-2682,-2644,-2623,-2613,-2587,-2537,-2489,-2471,-2480,-2501,-2533,-2587,-2657,-2719,-2759,-2780,-2786,-2773,
+-2744,-2716,-2697,-2680,-2654,-2620,-2587,-2556,-2523,-2499,-2499,-2534,-2595,-2655,-2691,-2694,-2679,-2666,-2655,-2629,-2579,
+-2516,-2454,-2397,-2341,-2288,-2240,-2189,-2127,-2062,-2013,-1980,-1940,-1875,-1794,-1723,-1674,-1633,-1580,-1514,-1452,-1402,
+-1351,-1291,-1227,-1176,-1136,-1090,-1031,-967,-906,-848,-787,-728,-675,-626,-577,-526,-472,-410,-339,-266,-201,
+-145,-92,-36,20,77,135,190,244,295,340,378,415,460,513,558,588,612,640,670,693,713,
+743,785,823,840,842,851,878,916,945,963,979,1002,1023,1029,1029,1041,1068,1099,1126,1151,1178,
+1199,1213,1225,1238,1239,1226,1214,1214,1217,1207,1188,1178,1187,1208,1232,1257,1281,1311,1352,1411,1480,
+1556,1636,1718,1783,1817,1818,1803,1782,1756,1732,1725,1744,1778,1806,1819,1816,1811,1819,1844,1875,1897,
+1910,1925,1950,1975,1991,1996,1995,1993,1990,1986,1979,1968,1958,1952,1949,1942,1933,1926,1917,1905,1891,
+1881,1876,1870,1862,1857,1855,1852,1847,1842,1836,1825,1811,1801,1795,1789,1783,1779,1775,1767,1756,1748,
+1743,1733,1718,1708,1705,1704,1715,1710,1703,1695,1681,1660,1646,1644,1647,1646,1645,1654,1663,1661,1650,
+1645,1649,1654,1651,1640,1624,1602,1581,1583,1627,1704,1761,1738,1620,1469,1371,1351,1361,1342,1301,1276,
+1264,1212,1098,980,933,968,1023,1042,1023,994,971,949,917,867,799,716,629,554,490,420,328,
+212,89,-25,-121,-202,-269,-328,-389,-463,-555,-654,-749,-839,-934,-1035,-1133,-1215,-1279,-1332,-1380,-1427,
+-1483,-1553,-1633,-1709,-1774,-1823,-1853,-1865,-1876,-1907,-1956,-1997,-2007,-1996,-1984,-1984,-1989,-1991,-1985,-1967,-1934,
+-1893,-1856,-1820,-1776,-1727,-1683,-1646,-1602,-1548,-1501,-1473,-1435,-1343,-1196,-1054,-975,-959,-957,-943,-936,-963,
+-1011,-1050,-1072,-1103,-1158,-1220,-1262,-1276,-1272,-1263,-1259,-1274,-1319,-1387,-1460,-1526,-1580,-1602,-1564,-1464,-1357,
+-1315,-1365,-1457,-1508,-1478,-1399,-1347,-1378,-1492,-1647,-1792,-1900,-1975,-2047,-2141,-2262,-2390,-2504,-2592,-2662,-2729,
+-2804,-2890,-2975,-3049,-3117,-3188,-3257,-3309,-3342,-3379,-3446,-3549,-3675,-3810,-3947,-4074,-4176,-4252,-4312,-4361,-4397,
+-4431,-4484,-4566,-4658,-4727,-4766,-4793,-4832,-4883,-4935,-4977,-5005,-5019,-5009,-4974,-4929,-4900,-4901,-4921,-4942,-4953,
+-4958,-4960,-4963,-4972,-4989,-5009,-5024,-5031,-5039,-5053,-5070,-5086,-5105,-5133,-5167,-5198,-5221,-5238,-5253,-5275,-5314,
+-5372,-5441,-5509,-5571,-5628,-5686,-5747,-5811,-5877,-5941,-6003,-6066,-6134,-6203,-6266,-6320,-6372,-6433,-6504,-6577,-6641,
+-6694,-6745,-6803,-6868,-6935,-7002,-7070,-7138,-7201,-7256,-7306,-7362,-7431,-7503,-7570,-7631,-7692,-7757,-7816,-7860,-7899,
+-7955,-8037,-8125,-8200,-8272,-8358,-8460,-8557,-8640,-8719,-8802,-8883,-8960,-9041,-9126,-9200,-9258,-9311,-9374,-9435,-9483,
+-9529,-9580,-9597,-9543,-9450,-9411,-9477,-9593,-9686,-9751,-9836,-9950,-10040,-10073,-10073,-10084,-10115,-10154,-10192,-10231,-10264,
+-10285,-10300,-10315,-10326,-10326,-10322,-10321,-10322,-10318,-10312,-10308,-10304,-10292,-10276,-10256,-10225,-10175,-10112,-10044,-9963,-9852,
+-9714,
+-9583,-9489,-9443,-9425,-9408,-9370,-9303,-9215,-9120,-9019,-8908,-8781,-8641,-8497,-8351,-8208,-8071,-7941,-7811,-7676,-7534,
+-7388,-7246,-7119,-7000,-6871,-6722,-6566,-6427,-6310,-6194,-6064,-5924,-5786,-5654,-5527,-5404,-5283,-5153,-5005,-4843,-4677,
+-4514,-4351,-4181,-4005,-3842,-3704,-3582,-3440,-3269,-3106,-3010,-3006,-3057,-3089,-3027,-2828,-2525,-2219,-2000,-1858,-1707,
+-1504,-1296,-1150,-1055,-949,-805,-658,-548,-470,-391,-292,-176,-60,48,155,265,371,454,518,590,692,
+813,928,1036,1150,1268,1375,1466,1552,1645,1753,1871,1991,2096,2186,2274,2373,2472,2561,2653,2760,2871,
+2968,3054,3153,3267,3374,3466,3552,3636,3715,3798,3902,4021,4124,4202,4283,4392,4521,4648,4769,4895,5029,
+5166,5293,5402,5483,5542,5593,5634,5653,5648,5647,5664,5673,5628,5520,5409,5375,5444,5542,5561,5478,5393,
+5421,5580,5792,5991,6161,6287,6348,6358,6359,6347,6270,6125,5991,5925,5900,5884,5933,6102,6319,6436,6395,
+6251,6048,5782,5491,5294,5293,5492,5844,6308,6808,7216,7432,7468,7411,7339,7304,7339,7434,7521,7544,7521,
+7502,7497,7485,7477,7496,7519,7500,7447,7418,7433,7447,7426,7400,7398,7397,7356,7279,7195,7114,7023,6937,
+6890,6894,6922,6948,6971,6994,7012,7019,7027,7043,7063,7078,7088,7102,7118,7129,7135,7142,7155,7168,7178,
+7182,7180,7172,7161,7153,7153,7155,7154,7148,7136,7118,7093,7066,7036,7002,6967,6939,6918,6894,6865,6839,
+6819,6790,6744,6699,6672,6656,6634,6622,6638,6645,6570,6405,6253,6217,6284,6345,6328,6257,6187,6131,6075,
+6019,5973,5936,5898,5857,5818,5781,5746,5717,5702,5709,5738,5784,5825,5835,5815,5792,5793,5811,5822,5807,
+5763,5697,5625,5558,5501,5452,5412,5376,5331,5260,5170,5087,5028,4983,4937,4895,4866,4839,4787,4708,4625,
+4566,4532,4508,4477,4436,4391,4352,4317,4277,4232,4191,4161,4132,4093,4046,4002,3962,3921,3879,3844,3814,
+3777,3732,3687,3648,3611,3569,3522,3474,3418,3347,3267,3195,3157,3160,3190,3209,3190,3130,3050,2971,2898,
+2834,2785,2766,2792,2857,2923,2935,2863,2737,2627,2580,2582,2582,2549,2494,2444,2406,2369,2330,2300,2290,
+2291,2281,2252,2217,2187,2165,2147,2133,2119,2093,2054,2019,2006,2010,2007,1985,1963,1956,1958,1950,1929,
+1914,1927,1959,1975,1950,1893,1837,1805,1789,1773,1755,1742,1732,1717,1696,1675,1654,1626,1591,1557,1532,
+1515,1506,1506,1510,1507,1496,1488,1491,1499,1500,1490,1476,1462,1451,1441,1434,1431,1434,1444,1456,1461,
+1460,1462,1472,1485,1489,1481,1470,1476,1513,1571,1616,1619,1589,1564,1565,1579,1579,1569,1568,1579,1580,
+1564,1550,1554,1566,1567,1561,1571,1600,1627,1640,1649,1663,1673,1674,1672,1680,1691,1693,1690,1697,1708,
+1705,1679,1648,1628,1615,1595,1567,1539,1518,1502,1491,1484,1478,1470,1462,1455,1446,1432,1414,1396,1381,
+1366,1350,1333,1311,1284,1255,1228,1202,1175,1155,1145,1138,1124,1100,1076,1056,1040,1023,1003,977,938,
+892,847,810,778,747,717,685,651,614,580,547,512,474,437,403,367,330,293,256,217,176,
+138,101,63,19,-24,-65,-102,-137,-173,-214,-258,-302,-343,-382,-423,-465,-503,-537,-573,-611,-646,
+-675,-703,-731,-760,-793,-832,-871,-903,-930,-961,-997,-1030,-1056,-1082,-1114,-1147,-1176,-1205,-1236,-1270,-1303,
+-1337,-1376,-1414,-1448,-1479,-1510,-1541,-1567,-1593,-1624,-1659,-1691,-1719,-1750,-1784,-1818,-1849,-1878,-1908,-1941,-1976,
+-2008,-2035,-2058,-2081,-2103,-2122,-2141,-2162,-2187,-2210,-2231,-2252,-2273,-2293,-2310,-2329,-2349,-2364,-2373,-2382,-2394,
+-2407,-2417,-2425,-2435,-2443,-2450,-2456,-2464,-2469,-2468,-2467,-2470,-2472,-2467,-2459,-2451,-2443,-2434,-2422,-2409,-2394,
+-2378,-2363,-2348,-2331,-2313,-2296,-2282,-2269,-2255,-2242,-2233,-2222,-2207,-2190,-2173,-2156,-2137,-2117,-2100,-2082,-2061,
+-2042,-2027,-2014,-1998,-1980,-1963,-1949,-1935,-1921,-1906,-1890,-1872,-1855,-1842,-1830,-1811,-1790,-1771,-1758,-1746,-1730,
+-1714,-1699,-1684,-1669,-1654,-1639,-1622,-1601,-1579,-1559,-1540,-1522,-1503,-1482,-1461,-1443,-1424,-1402,-1377,-1358,-1345,
+-1329,-1308,-1286,-1268,-1249,-1226,-1205,-1191,-1176,-1156,-1136,-1120,-1106,-1084,-1061,-1044,-1029,-1006,-976,-947,-919,
+-884,-845,-812,-788,-764,-736,-710,-686,-656,-615,-563,-502,-440,-395,-381,-385,-377,-350,-321,-302,-285,
+-256,-225,-202,-181,-150,-112,-80,-52,-21,11,39,68,103,138,167,199,250,319,388,449,510,
+579,647,709,775,852,917,935,899,852,867,984,1184,1403,1589,1744,1899,2074,2258,2426,2551,2599,
+2541,2383,2174,1979,1843,1780,1790,1853,1930,1982,1993,1976,1969,2007,2095,2183,2209,2151,2055,1983,1957,
+1960,1975,1993,1995,1954,1874,1792,1725,1649,1534,1391,1260,1167,1103,1051,995,919,808,670,532,416,
+324,245,174,118,76,41,4,-45,-113,-202,-303,-397,-471,-529,-581,-632,-683,-733,-786,-836,-870,
+-884,-901,-942,-1006,-1071,-1130,-1196,-1277,-1358,-1427,-1493,-1571,-1656,-1734,-1804,-1884,-1975,-2062,-2132,-2190,-2248,
+-2304,-2353,-2394,-2432,-2471,-2507,-2541,-2575,-2608,-2636,-2653,-2665,-2677,-2680,-2658,-2608,-2557,-2533,-2531,-2520,-2484,
+-2440,-2415,-2414,-2432,-2474,-2543,-2627,-2695,-2734,-2752,-2757,-2746,-2721,-2696,-2678,-2659,-2633,-2605,-2581,-2559,-2529,
+-2491,-2455,-2440,-2455,-2489,-2520,-2537,-2553,-2585,-2622,-2630,-2593,-2528,-2466,-2417,-2375,-2329,-2275,-2206,-2128,-2058,
+-2012,-1982,-1943,-1884,-1817,-1764,-1726,-1687,-1631,-1563,-1501,-1452,-1405,-1347,-1287,-1239,-1206,-1170,-1119,-1057,-996,
+-938,-881,-824,-770,-720,-672,-624,-568,-501,-426,-354,-293,-241,-192,-142,-87,-31,26,82,140,198,
+250,290,328,377,439,496,536,566,597,632,665,696,733,776,814,835,844,857,884,922,957,
+981,999,1018,1034,1038,1040,1054,1084,1116,1140,1160,1179,1192,1192,1186,1176,1160,1140,1131,1143,1166,
+1184,1192,1204,1229,1268,1317,1372,1422,1462,1492,1519,1552,1600,1670,1758,1836,1878,1881,1863,1839,1814,
+1798,1804,1829,1860,1882,1892,1896,1900,1912,1933,1955,1966,1968,1973,1986,2004,2016,2016,2007,1993,1979,
+1965,1950,1934,1923,1919,1919,1917,1916,1917,1917,1912,1906,1904,1904,1901,1893,1885,1878,1869,1859,1852,
+1845,1834,1822,1812,1804,1793,1783,1777,1771,1758,1742,1733,1731,1726,1717,1712,1714,1715,1719,1711,1702,
+1698,1689,1674,1660,1658,1662,1662,1661,1668,1678,1679,1669,1660,1657,1656,1650,1640,1630,1616,1602,1613,
+1677,1782,1857,1822,1669,1485,1375,1356,1360,1327,1274,1249,1246,1208,1103,971,887,881,922,961,973,
+959,930,898,865,826,772,697,615,542,482,416,322,198,68,-44,-132,-206,-274,-334,-393,-468,
+-570,-687,-798,-891,-974,-1058,-1146,-1234,-1320,-1395,-1452,-1495,-1539,-1602,-1680,-1755,-1817,-1861,-1890,-1905,-1916,
+-1939,-1977,-2013,-2030,-2030,-2032,-2042,-2054,-2056,-2043,-2012,-1967,-1922,-1882,-1844,-1797,-1748,-1711,-1683,-1644,-1586,
+-1528,-1486,-1432,-1326,-1169,-1011,-900,-836,-796,-779,-806,-874,-946,-995,-1034,-1093,-1168,-1224,-1238,-1230,-1226,
+-1234,-1250,-1284,-1348,-1430,-1502,-1552,-1595,-1636,-1647,-1594,-1490,-1396,-1369,-1404,-1446,-1441,-1378,-1305,-1291,-1377,
+-1549,-1743,-1897,-1994,-2065,-2150,-2261,-2383,-2496,-2592,-2672,-2746,-2824,-2911,-3004,-3092,-3172,-3242,-3292,-3317,-3331,
+-3375,-3476,-3626,-3790,-3938,-4060,-4153,-4220,-4274,-4327,-4382,-4425,-4458,-4499,-4566,-4651,-4726,-4776,-4810,-4844,-4886,
+-4930,-4969,-4996,-5002,-4982,-4942,-4902,-4884,-4892,-4914,-4932,-4940,-4940,-4937,-4934,-4940,-4958,-4981,-4999,-5012,-5024,
+-5037,-5049,-5061,-5082,-5114,-5151,-5180,-5198,-5206,-5216,-5242,-5293,-5364,-5436,-5500,-5555,-5611,-5671,-5733,-5796,-5857,
+-5917,-5976,-6040,-6112,-6183,-6244,-6299,-6358,-6425,-6497,-6565,-6623,-6675,-6729,-6789,-6857,-6928,-6999,-7069,-7138,-7202,
+-7257,-7306,-7356,-7414,-7480,-7547,-7609,-7673,-7737,-7794,-7840,-7885,-7943,-8016,-8089,-8153,-8225,-8319,-8427,-8525,-8606,
+-8683,-8765,-8844,-8919,-8997,-9078,-9149,-9206,-9265,-9334,-9400,-9452,-9506,-9564,-9587,-9536,-9449,-9417,-9482,-9588,-9671,
+-9737,-9833,-9954,-10041,-10064,-10055,-10061,-10091,-10131,-10171,-10212,-10245,-10262,-10272,-10285,-10299,-10305,-10305,-10307,-10310,-10306,
+-10299,
+-10292,-10286,-10276,-10261,-10240,-10204,-10146,-10078,-10007,-9919,-9799,-9657,-9533,-9457,-9425,-9407,-9377,-9324,-9248,-9154,-9052,
+-8946,-8833,-8710,-8579,-8443,-8307,-8172,-8043,-7919,-7795,-7668,-7531,-7382,-7234,-7104,-6997,-6889,-6759,-6612,-6472,-6351,
+-6232,-6097,-5948,-5800,-5661,-5532,-5412,-5294,-5167,-5022,-4861,-4692,-4522,-4348,-4172,-3998,-3841,-3705,-3572,-3416,-3239,
+-3084,-2990,-2966,-2993,-3036,-3033,-2912,-2653,-2335,-2068,-1876,-1694,-1484,-1291,-1175,-1108,-1010,-851,-675,-531,-427,
+-341,-255,-159,-54,53,160,270,388,498,588,668,763,876,992,1101,1208,1314,1413,1501,1587,1680,
+1782,1891,2002,2107,2203,2297,2397,2495,2585,2678,2790,2909,3011,3096,3186,3287,3384,3469,3552,3634,3711,
+3791,3889,4004,4105,4185,4273,4397,4544,4681,4797,4909,5031,5161,5289,5398,5477,5524,5549,5560,5557,5545,
+5544,5563,5579,5551,5461,5344,5264,5268,5333,5388,5398,5417,5512,5681,5852,5981,6079,6160,6216,6252,6289,
+6306,6241,6079,5895,5765,5683,5626,5636,5753,5911,5979,5909,5754,5559,5320,5064,4907,4964,5262,5753,6346,
+6903,7279,7423,7414,7369,7341,7335,7362,7433,7512,7560,7579,7599,7618,7614,7591,7571,7538,7465,7375,7329,
+7342,7367,7367,7364,7378,7383,7347,7283,7222,7165,7087,6991,6912,6865,6841,6832,6846,6883,6923,6948,6966,
+6995,7037,7072,7091,7100,7114,7131,7147,7162,7182,7205,7217,7213,7202,7195,7197,7199,7199,7199,7198,7194,
+7185,7170,7149,7119,7084,7048,7014,6979,6945,6912,6881,6855,6831,6802,6759,6707,6664,6631,6601,6581,6589,
+6611,6584,6463,6299,6205,6234,6320,6356,6306,6217,6144,6100,6064,6022,5979,5939,5901,5859,5814,5778,5755,
+5745,5747,5772,5823,5878,5902,5884,5847,5827,5832,5845,5842,5807,5743,5668,5598,5536,5481,5433,5395,5353,
+5290,5207,5126,5063,5012,4961,4914,4880,4850,4802,4731,4650,4579,4527,4491,4459,4424,4388,4358,4332,4296,
+4249,4203,4171,4144,4105,4056,4009,3969,3931,3892,3855,3820,3785,3749,3715,3682,3643,3596,3544,3490,3430,
+3364,3296,3237,3197,3181,3185,3188,3167,3118,3052,2981,2911,2843,2784,2754,2775,2848,2937,2976,2918,2778,
+2632,2552,2545,2561,2550,2510,2470,2444,2418,2378,2335,2311,2307,2301,2279,2250,2226,2208,2191,2175,2160,
+2139,2108,2078,2057,2041,2016,1987,1971,1972,1975,1960,1931,1908,1906,1920,1935,1930,1899,1857,1819,1794,
+1775,1759,1747,1739,1729,1713,1693,1673,1646,1610,1570,1536,1517,1511,1513,1515,1509,1499,1493,1498,1511,
+1520,1516,1498,1474,1455,1448,1450,1453,1455,1460,1466,1468,1464,1460,1461,1465,1463,1457,1456,1477,1531,
+1603,1653,1651,1608,1569,1561,1568,1566,1556,1560,1579,1591,1585,1571,1563,1557,1547,1549,1578,1620,1648,
+1654,1657,1667,1670,1658,1646,1652,1667,1671,1662,1662,1676,1688,1680,1657,1633,1613,1591,1565,1541,1519,
+1501,1488,1482,1474,1460,1448,1444,1442,1432,1413,1395,1381,1366,1349,1330,1311,1290,1265,1238,1210,1183,
+1163,1154,1149,1136,1111,1082,1057,1037,1020,1003,979,945,903,863,828,796,764,732,700,664,625,
+589,554,518,480,442,409,376,340,305,271,235,196,159,124,88,48,6,-34,-72,-109,-145,
+-184,-225,-267,-307,-347,-390,-436,-479,-518,-556,-592,-623,-651,-677,-706,-738,-774,-816,-854,-883,-906,
+-934,-970,-1003,-1028,-1053,-1084,-1117,-1146,-1174,-1206,-1240,-1273,-1307,-1345,-1383,-1418,-1449,-1481,-1512,-1540,-1566,
+-1595,-1628,-1660,-1691,-1723,-1758,-1792,-1823,-1853,-1886,-1921,-1954,-1982,-2005,-2027,-2050,-2074,-2095,-2114,-2134,-2156,
+-2178,-2198,-2219,-2241,-2260,-2277,-2295,-2313,-2325,-2332,-2339,-2351,-2363,-2373,-2383,-2395,-2407,-2415,-2422,-2429,-2434,
+-2433,-2433,-2436,-2438,-2432,-2423,-2416,-2413,-2406,-2392,-2376,-2361,-2347,-2331,-2314,-2297,-2279,-2263,-2249,-2234,-2219,
+-2207,-2199,-2190,-2176,-2159,-2144,-2129,-2111,-2092,-2074,-2056,-2037,-2019,-2006,-1993,-1975,-1953,-1935,-1922,-1911,-1900,
+-1889,-1875,-1858,-1843,-1831,-1819,-1800,-1778,-1761,-1748,-1737,-1722,-1706,-1692,-1679,-1666,-1652,-1637,-1618,-1597,-1576,
+-1556,-1536,-1517,-1499,-1480,-1460,-1442,-1424,-1406,-1384,-1363,-1345,-1330,-1312,-1293,-1273,-1252,-1230,-1210,-1195,-1178,
+-1158,-1138,-1123,-1108,-1089,-1069,-1052,-1037,-1018,-994,-969,-943,-911,-877,-849,-826,-806,-786,-765,-736,-696,
+-654,-610,-554,-482,-420,-397,-404,-402,-375,-343,-325,-309,-281,-248,-226,-207,-176,-138,-107,-82,-54,
+-20,13,44,77,111,143,182,239,309,377,442,515,592,662,729,809,899,958,949,892,853,
+895,1030,1224,1428,1612,1786,1969,2162,2341,2472,2529,2487,2344,2137,1938,1805,1747,1742,1775,1836,1908,
+1959,1975,1965,1960,1989,2058,2130,2150,2096,2006,1933,1899,1892,1905,1934,1953,1926,1850,1771,1711,1643,
+1525,1372,1236,1150,1099,1055,1000,924,818,689,561,456,371,293,217,150,89,29,-33,-95,-157,
+-226,-303,-378,-443,-500,-555,-609,-660,-712,-766,-814,-844,-856,-873,-915,-975,-1035,-1090,-1154,-1231,-1309,
+-1379,-1450,-1532,-1618,-1696,-1769,-1847,-1933,-2014,-2084,-2146,-2204,-2256,-2301,-2341,-2380,-2417,-2453,-2492,-2535,-2575,
+-2600,-2610,-2614,-2620,-2619,-2593,-2540,-2489,-2465,-2466,-2462,-2434,-2398,-2376,-2377,-2398,-2444,-2515,-2593,-2654,-2692,
+-2714,-2722,-2711,-2689,-2672,-2663,-2654,-2635,-2611,-2592,-2580,-2563,-2530,-2478,-2421,-2383,-2374,-2381,-2394,-2423,-2485,
+-2564,-2613,-2602,-2544,-2478,-2428,-2393,-2358,-2305,-2226,-2133,-2054,-2003,-1970,-1933,-1886,-1839,-1800,-1764,-1717,-1654,
+-1585,-1524,-1474,-1427,-1374,-1318,-1271,-1239,-1208,-1163,-1105,-1044,-988,-936,-884,-831,-781,-735,-690,-636,-568,
+-493,-420,-358,-304,-254,-205,-155,-100,-43,15,75,135,189,227,260,306,367,429,476,513,550,
+591,631,669,711,754,793,821,841,859,886,924,963,994,1016,1033,1044,1043,1036,1039,1057,1079,
+1095,1106,1120,1131,1132,1127,1122,1118,1115,1121,1143,1178,1215,1245,1269,1289,1313,1354,1415,1484,1540,
+1575,1591,1600,1619,1664,1733,1801,1842,1853,1850,1848,1848,1854,1872,1899,1921,1933,1939,1944,1946,1946,
+1946,1945,1939,1931,1929,1939,1959,1976,1983,1977,1966,1955,1947,1940,1933,1928,1925,1921,1916,1914,1920,
+1926,1927,1928,1933,1937,1934,1923,1911,1898,1882,1866,1851,1839,1825,1813,1804,1796,1783,1770,1764,1759,
+1747,1733,1727,1728,1726,1718,1715,1718,1719,1716,1707,1701,1701,1699,1687,1672,1669,1675,1681,1683,1687,
+1694,1695,1686,1672,1661,1653,1644,1634,1625,1614,1607,1622,1680,1767,1819,1773,1633,1479,1393,1377,1366,
+1317,1256,1229,1234,1219,1141,1015,900,844,853,892,915,899,855,812,783,760,724,670,607,550,
+496,427,324,192,61,-40,-115,-180,-247,-311,-374,-451,-556,-687,-820,-933,-1018,-1081,-1141,-1217,-1316,
+-1422,-1507,-1563,-1605,-1661,-1733,-1805,-1862,-1904,-1936,-1957,-1967,-1977,-1995,-2020,-2044,-2063,-2082,-2100,-2112,-2111,
+-2090,-2051,-1998,-1947,-1902,-1860,-1813,-1768,-1739,-1717,-1680,-1617,-1548,-1490,-1424,-1313,-1152,-977,-828,-722,-669,
+-685,-773,-893,-981,-1022,-1054,-1115,-1186,-1221,-1213,-1198,-1208,-1237,-1272,-1323,-1406,-1504,-1576,-1611,-1641,-1691,
+-1737,-1723,-1629,-1499,-1405,-1383,-1405,-1404,-1342,-1249,-1210,-1296,-1500,-1740,-1925,-2031,-2099,-2181,-2292,-2412,-2521,
+-2615,-2698,-2774,-2853,-2939,-3034,-3127,-3208,-3267,-3298,-3305,-3321,-3391,-3534,-3721,-3900,-4037,-4131,-4193,-4240,-4284,
+-4337,-4392,-4435,-4465,-4501,-4562,-4641,-4717,-4775,-4816,-4850,-4885,-4922,-4959,-4984,-4984,-4954,-4912,-4881,-4877,-4893,
+-4911,-4921,-4921,-4916,-4909,-4903,-4908,-4927,-4952,-4974,-4990,-5003,-5014,-5024,-5040,-5066,-5099,-5132,-5156,-5170,-5178,
+-5191,-5226,-5289,-5366,-5436,-5491,-5539,-5592,-5651,-5711,-5772,-5831,-5888,-5944,-6008,-6081,-6153,-6216,-6274,-6340,-6415,
+-6488,-6552,-6609,-6667,-6728,-6789,-6851,-6918,-6990,-7065,-7140,-7206,-7261,-7306,-7349,-7399,-7459,-7525,-7590,-7654,-7716,
+-7771,-7818,-7863,-7917,-7980,-8042,-8105,-8183,-8285,-8395,-8489,-8568,-8646,-8728,-8804,-8874,-8947,-9026,-9097,-9158,-9222,
+-9298,-9370,-9427,-9483,-9541,-9568,-9530,-9464,-9445,-9500,-9581,-9644,-9710,-9819,-9947,-10031,-10046,-10033,-10037,-10065,-10101,
+-10140,-10181,-10211,-10224,-10231,-10244,-10260,-10270,-10275,-10282,-10289,-10290,-10284,-10277,-10268,-10255,-10236,-10209,-10165,-10104,-10035,
+-9960,
+-9865,-9734,-9591,-9482,-9431,-9417,-9399,-9356,-9286,-9197,-9094,-8986,-8879,-8770,-8657,-8536,-8408,-8277,-8146,-8021,-7903,
+-7789,-7668,-7530,-7373,-7212,-7075,-6967,-6866,-6742,-6594,-6449,-6323,-6208,-6086,-5951,-5809,-5669,-5538,-5418,-5302,-5174,
+-5026,-4862,-4694,-4523,-4344,-4159,-3982,-3832,-3704,-3572,-3408,-3230,-3084,-2999,-2962,-2953,-2967,-2975,-2907,-2708,-2417,
+-2132,-1901,-1698,-1499,-1341,-1251,-1187,-1077,-906,-716,-543,-398,-282,-196,-116,-18,94,198,292,398,520,
+635,729,820,926,1041,1150,1251,1349,1441,1530,1619,1712,1805,1898,1998,2102,2204,2305,2408,2509,2601,
+2694,2806,2929,3041,3132,3216,3303,3390,3471,3553,3638,3718,3796,3884,3984,4079,4165,4262,4390,4536,4671,
+4787,4899,5017,5139,5255,5353,5423,5461,5478,5485,5484,5475,5464,5464,5474,5480,5454,5380,5281,5215,5222,
+5284,5363,5455,5578,5719,5834,5909,5974,6050,6124,6193,6272,6336,6312,6164,5952,5764,5613,5480,5394,5406,
+5481,5509,5429,5270,5079,4871,4677,4581,4684,5030,5593,6264,6855,7195,7267,7222,7215,7266,7309,7322,7350,
+7419,7508,7592,7660,7704,7710,7684,7633,7548,7426,7314,7274,7309,7359,7378,7376,7373,7362,7332,7301,7294,
+7295,7268,7198,7099,6989,6880,6796,6763,6779,6813,6839,6861,6899,6956,7010,7042,7061,7085,7119,7150,7174,
+7198,7222,7238,7237,7230,7230,7234,7234,7229,7228,7231,7230,7224,7212,7190,7155,7114,7075,7038,6997,6954,
+6920,6892,6862,6827,6792,6753,6703,6649,6604,6569,6542,6535,6554,6557,6481,6330,6206,6203,6297,6366,6332,
+6235,6161,6140,6130,6092,6030,5971,5925,5884,5843,5814,5804,5805,5814,5835,5873,5917,5940,5932,5905,5881,
+5871,5868,5860,5832,5779,5710,5640,5575,5514,5459,5410,5364,5309,5241,5169,5103,5041,4980,4925,4882,4845,
+4801,4744,4674,4599,4530,4476,4438,4406,4377,4354,4333,4304,4262,4219,4186,4157,4115,4062,4011,3971,3938,
+3907,3878,3849,3820,3788,3753,3713,3666,3615,3563,3509,3447,3383,3324,3272,3228,3194,3176,3165,3147,3113,
+3065,3006,2937,2862,2797,2760,2760,2794,2845,2877,2850,2754,2630,2540,2516,2534,2547,2531,2497,2465,2438,
+2404,2366,2338,2323,2312,2295,2275,2257,2238,2214,2191,2173,2157,2137,2115,2094,2069,2036,2005,1991,1993,
+1990,1969,1936,1905,1881,1874,1888,1907,1906,1871,1822,1786,1769,1759,1749,1740,1731,1717,1701,1684,1665,
+1633,1589,1547,1524,1521,1527,1531,1528,1518,1509,1505,1511,1521,1523,1508,1482,1462,1460,1469,1476,1475,
+1471,1470,1467,1461,1452,1445,1440,1437,1437,1444,1467,1514,1575,1620,1622,1590,1559,1551,1555,1552,1545,
+1551,1572,1591,1595,1590,1578,1560,1544,1551,1588,1631,1649,1646,1648,1664,1672,1659,1641,1641,1654,1657,
+1645,1638,1651,1671,1676,1662,1639,1615,1591,1569,1548,1526,1506,1493,1485,1473,1454,1436,1430,1430,1420,
+1401,1384,1373,1361,1345,1329,1314,1296,1272,1245,1217,1191,1171,1159,1151,1136,1111,1082,1054,1029,1006,
+983,960,930,895,860,827,795,763,733,703,670,633,598,566,529,488,447,411,378,343,309,
+276,243,208,173,139,105,67,27,-12,-51,-89,-127,-164,-203,-242,-280,-319,-363,-411,-459,-503,
+-542,-576,-605,-631,-657,-686,-718,-756,-798,-836,-863,-883,-909,-943,-975,-1000,-1026,-1057,-1089,-1117,-1143,
+-1175,-1211,-1246,-1280,-1315,-1351,-1385,-1417,-1449,-1481,-1510,-1538,-1567,-1600,-1632,-1664,-1696,-1729,-1761,-1793,-1826,
+-1860,-1893,-1922,-1946,-1968,-1992,-2018,-2045,-2070,-2090,-2110,-2130,-2149,-2168,-2190,-2212,-2230,-2246,-2262,-2278,-2288,
+-2294,-2303,-2314,-2325,-2333,-2344,-2359,-2373,-2381,-2387,-2394,-2399,-2399,-2397,-2399,-2400,-2394,-2385,-2381,-2380,-2373,
+-2358,-2341,-2327,-2314,-2298,-2280,-2262,-2244,-2230,-2216,-2201,-2187,-2176,-2168,-2158,-2142,-2124,-2109,-2096,-2079,-2060,
+-2042,-2025,-2008,-1993,-1980,-1967,-1950,-1932,-1917,-1904,-1893,-1882,-1871,-1859,-1844,-1829,-1819,-1807,-1791,-1771,-1755,
+-1743,-1729,-1713,-1698,-1685,-1672,-1660,-1646,-1630,-1610,-1590,-1572,-1554,-1534,-1514,-1497,-1480,-1460,-1440,-1423,-1409,
+-1391,-1369,-1348,-1329,-1313,-1295,-1277,-1256,-1236,-1218,-1202,-1186,-1167,-1147,-1129,-1114,-1099,-1085,-1073,-1058,-1040,
+-1019,-996,-969,-937,-906,-879,-858,-845,-838,-820,-770,-695,-631,-595,-566,-514,-457,-428,-429,-423,-392,
+-359,-340,-325,-295,-263,-242,-224,-195,-159,-131,-109,-80,-43,-7,23,55,89,126,173,234,302,
+369,442,528,616,691,766,861,956,998,966,904,886,949,1081,1253,1439,1623,1808,2000,2203,2390,
+2520,2548,2453,2252,2015,1827,1731,1707,1716,1746,1804,1881,1941,1963,1959,1955,1973,2018,2068,2086,2048,
+1972,1898,1850,1829,1832,1856,1871,1843,1771,1697,1648,1596,1500,1371,1255,1178,1123,1063,992,910,810,
+696,585,495,417,337,255,180,112,44,-26,-95,-159,-226,-294,-358,-413,-467,-525,-582,-634,-685,
+-741,-791,-822,-836,-852,-889,-942,-996,-1051,-1115,-1189,-1262,-1331,-1405,-1490,-1581,-1666,-1741,-1814,-1887,-1957,
+-2022,-2080,-2130,-2174,-2218,-2263,-2306,-2346,-2386,-2435,-2491,-2540,-2565,-2565,-2555,-2547,-2538,-2515,-2476,-2438,-2421,
+-2421,-2415,-2394,-2368,-2356,-2365,-2396,-2447,-2511,-2569,-2611,-2641,-2666,-2678,-2669,-2649,-2639,-2644,-2652,-2647,-2629,
+-2606,-2586,-2568,-2539,-2487,-2416,-2355,-2323,-2315,-2316,-2334,-2390,-2479,-2555,-2577,-2541,-2476,-2416,-2375,-2348,-2313,
+-2249,-2160,-2076,-2017,-1976,-1937,-1895,-1856,-1818,-1770,-1711,-1648,-1589,-1533,-1483,-1435,-1387,-1335,-1285,-1244,-1208,
+-1164,-1109,-1047,-990,-939,-891,-843,-795,-751,-706,-654,-589,-518,-450,-387,-328,-274,-226,-179,-127,-71,
+-14,42,97,145,182,215,260,320,380,428,468,511,558,602,643,683,723,759,790,813,834,
+860,898,942,981,1009,1028,1038,1034,1019,1006,1006,1012,1018,1023,1035,1050,1065,1080,1103,1132,1159,
+1180,1201,1227,1260,1291,1307,1300,1285,1291,1335,1407,1483,1547,1594,1625,1651,1688,1740,1793,1826,1840,
+1849,1862,1876,1889,1904,1920,1931,1936,1941,1947,1947,1938,1924,1911,1900,1890,1886,1894,1912,1932,1945,
+1948,1945,1943,1944,1949,1954,1956,1953,1944,1933,1929,1933,1940,1942,1944,1950,1953,1946,1931,1916,1901,
+1885,1865,1847,1828,1810,1796,1789,1784,1773,1763,1758,1755,1746,1735,1731,1733,1730,1721,1715,1717,1716,
+1719,1714,1710,1711,1708,1697,1684,1682,1692,1700,1701,1699,1700,1701,1696,1682,1666,1652,1640,1628,1613,
+1601,1597,1610,1644,1684,1693,1641,1543,1451,1406,1398,1381,1331,1269,1229,1217,1205,1154,1051,926,835,
+812,838,855,828,773,729,711,703,684,649,608,567,517,440,328,195,72,-18,-85,-152,-227,
+-300,-364,-432,-528,-660,-815,-960,-1065,-1121,-1153,-1202,-1294,-1414,-1527,-1607,-1664,-1722,-1789,-1855,-1907,-1947,
+-1982,-2007,-2017,-2014,-2013,-2029,-2059,-2093,-2120,-2135,-2141,-2136,-2117,-2080,-2027,-1969,-1916,-1868,-1823,-1785,-1761,
+-1742,-1705,-1638,-1562,-1497,-1428,-1319,-1156,-964,-789,-671,-639,-706,-845,-982,-1052,-1060,-1068,-1117,-1179,-1209,
+-1206,-1208,-1241,-1288,-1335,-1394,-1481,-1577,-1644,-1674,-1696,-1739,-1782,-1778,-1697,-1566,-1449,-1392,-1386,-1374,-1312,
+-1231,-1215,-1332,-1559,-1804,-1980,-2072,-2130,-2210,-2321,-2442,-2552,-2648,-2734,-2812,-2890,-2975,-3066,-3153,-3222,-3266,
+-3288,-3304,-3351,-3462,-3639,-3838,-4003,-4110,-4170,-4208,-4244,-4285,-4334,-4381,-4418,-4449,-4492,-4558,-4636,-4707,-4763,
+-4808,-4846,-4880,-4913,-4944,-4963,-4955,-4920,-4880,-4862,-4870,-4889,-4901,-4901,-4896,-4888,-4879,-4874,-4880,-4898,-4924,
+-4947,-4965,-4978,-4986,-4997,-5017,-5045,-5075,-5102,-5125,-5145,-5162,-5186,-5229,-5297,-5371,-5433,-5480,-5526,-5578,-5631,
+-5683,-5739,-5798,-5855,-5910,-5972,-6044,-6118,-6183,-6244,-6313,-6391,-6468,-6537,-6601,-6667,-6733,-6793,-6848,-6908,-6979,
+-7057,-7134,-7199,-7252,-7297,-7340,-7388,-7444,-7506,-7569,-7631,-7691,-7746,-7793,-7836,-7882,-7937,-7997,-8065,-8149,-8251,
+-8355,-8445,-8524,-8605,-8688,-8762,-8828,-8901,-8982,-9056,-9119,-9183,-9260,-9337,-9400,-9457,-9509,-9530,-9502,-9457,-9452,
+-9498,-9555,-9601,-9671,-9793,-9929,-10009,-10019,-10004,-10009,-10034,-10066,-10101,-10138,-10167,-10178,-10186,-10202,-10222,-10235,-10244,
+-10253,
+-10264,-10268,-10264,-10255,-10241,-10220,-10195,-10163,-10120,-10061,-9994,-9917,-9815,-9682,-9549,-9459,-9427,-9420,-9396,-9338,-9255,
+-9157,
+-9051-8943,-8840,-8739,-8633,-8519,-8395,-8265,-8135,-8013,-7901,-7795,-7678,-7537,-7371,-7203,-7057,-6939,-6823,-6686,
+-6530,-6381,-6257,-6153,-6053,-5944,-5819,-5682,-5548,-5427,-5312,-5181,-5024,-4854,-4689,-4527,-4353,-4163,-3977,-3823,-3700,
+-3573,-3411,-3233,-3090,-3008,-2960,-2916,-2887,-2882,-2850,-2720,-2484,-2206,-1948,-1727,-1551,-1435,-1369,-1295,-1166,-993,
+-808,-616,-419,-251,-141,-63,34,156,259,331,410,524,651,758,851,950,1059,1166,1268,1366,1458,
+1547,1639,1734,1823,1907,1995,2094,2197,2300,2405,2510,2606,2696,2800,2926,3053,3160,3247,3328,3406,3482,
+3560,3645,3733,3817,3902,3995,4093,4195,4304,4421,4539,4650,4761,4877,4994,5102,5194,5268,5321,5356,5384,
+5412,5433,5437,5423,5406,5410,5446,5483,5463,5365,5249,5203,5259,5372,5495,5610,5713,5790,5848,5916,6006,
+6097,6178,6269,6353,6360,6243,6047,5853,5671,5469,5270,5150,5123,5105,5014,4847,4658,4491,4378,4361,4494,
+4824,5360,6020,6611,6944,7010,6988,7045,7172,7249,7238,7221,7281,7409,7542,7640,7697,7719,7705,7647,7541,
+7414,7334,7351,7441,7524,7544,7507,7452,7396,7348,7329,7352,7404,7445,7439,7368,7235,7073,6927,6833,6790,
+6773,6764,6767,6792,6836,6882,6919,6957,7008,7071,7127,7164,7190,7214,7238,7255,7267,7276,7277,7268,7260,
+7262,7267,7261,7246,7226,7197,7153,7105,7066,7033,6996,6962,6948,6942,6917,6872,6829,6795,6755,6702,6654,
+6621,6593,6567,6561,6564,6519,6396,6261,6216,6271,6323,6292,6209,6163,6179,6199,6164,6085,6008,5959,5927,
+5897,5870,5856,5860,5878,5903,5925,5937,5938,5937,5936,5933,5919,5897,5874,5847,5806,5748,5680,5614,5553,
+5495,5438,5384,5331,5275,5214,5147,5074,5002,4943,4896,4854,4809,4759,4698,4624,4547,4483,4438,4404,4374,
+4350,4330,4305,4268,4228,4193,4159,4114,4060,4010,3969,3936,3911,3896,3886,3870,3838,3791,3735,3677,3624,
+3576,3527,3472,3414,3361,3309,3256,3209,3179,3164,3149,3123,3087,3037,2970,2892,2826,2781,2748,2720,2705,
+2719,2746,2746,2694,2611,2545,2521,2523,2518,2490,2453,2421,2396,2373,2352,2338,2329,2319,2305,2284,2253,
+2215,2185,2167,2155,2138,2121,2104,2082,2052,2024,2011,2009,2001,1981,1953,1915,1872,1844,1858,1899,1917,
+1880,1815,1769,1758,1759,1754,1742,1731,1718,1700,1686,1676,1656,1618,1575,1548,1544,1553,1562,1566,1563,
+1549,1529,1514,1512,1514,1507,1491,1479,1479,1486,1486,1477,1469,1467,1467,1463,1455,1444,1435,1434,1438,
+1442,1449,1469,1505,1541,1557,1553,1544,1542,1542,1537,1532,1538,1553,1568,1578,1584,1581,1565,1551,1559,
+1589,1615,1616,1605,1610,1639,1665,1664,1648,1641,1647,1648,1637,1629,1637,1655,1664,1656,1639,1619,1600,
+1581,1562,1540,1517,1500,1489,1475,1452,1430,1418,1412,1400,1382,1369,1362,1353,1340,1328,1316,1297,1270,
+1241,1216,1196,1178,1163,1150,1134,1111,1085,1057,1028,997,968,942,917,888,856,823,790,758,730,
+704,673,639,607,576,541,498,454,416,382,347,311,278,246,213,181,149,116,80,41,4,
+-33,-73,-112,-150,-188,-226,-264,-302,-344,-391,-438,-484,-524,-560,-589,-615,-642,-669,-700,-736,-776,
+-813,-839,-860,-884,-915,-945,-972,-999,-1032,-1064,-1089,-1113,-1144,-1180,-1216,-1250,-1284,-1319,-1352,-1385,-1418,
+-1450,-1479,-1508,-1538,-1571,-1604,-1636,-1668,-1699,-1729,-1762,-1798,-1832,-1860,-1884,-1906,-1930,-1957,-1985,-2014,-2040,
+-2064,-2084,-2103,-2120,-2139,-2161,-2182,-2199,-2214,-2230,-2245,-2255,-2263,-2273,-2285,-2294,-2300,-2311,-2326,-2340,-2347,
+-2352,-2360,-2366,-2366,-2363,-2363,-2362,-2357,-2351,-2348,-2346,-2337,-2321,-2305,-2292,-2280,-2265,-2247,-2229,-2211,-2196,
+-2183,-2171,-2159,-2150,-2141,-2128,-2110,-2091,-2077,-2064,-2049,-2030,-2012,-1996,-1981,-1967,-1953,-1940,-1926,-1913,-1903,
+-1891,-1878,-1864,-1853,-1841,-1826,-1812,-1802,-1792,-1779,-1764,-1751,-1737,-1722,-1705,-1689,-1676,-1664,-1650,-1636,-1620,
+-1602,-1584,-1569,-1553,-1534,-1514,-1498,-1482,-1463,-1440,-1422,-1410,-1395,-1375,-1352,-1332,-1315,-1300,-1283,-1265,-1247,
+-1229,-1214,-1200,-1185,-1167,-1148,-1131,-1118,-1109,-1099,-1084,-1066,-1047,-1023,-994,-962,-932,-906,-885,-880,-886,
+-869,-789,-663,-558,-520,-521,-508,-473,-447,-441,-428,-398,-369,-353,-336,-304,-271,-251,-233,-205,-172,
+-148,-126,-95,-56,-21,9,42,80,121,172,235,301,369,451,549,644,721,801,902,989,1007,
+953,900,919,1012,1147,1302,1474,1653,1832,2018,2225,2432,2578,2600,2474,2240,1982,1790,1696,1672,1677,
+1708,1775,1860,1923,1943,1939,1939,1953,1980,2014,2034,2018,1960,1886,1825,1791,1782,1788,1785,1748,1681,
+1617,1579,1544,1480,1392,1309,1241,1170,1082,987,896,804,707,616,537,461,376,289,212,145,77,
+6,-64,-132,-200,-267,-326,-378,-434,-496,-555,-605,-655,-711,-766,-803,-819,-833,-861,-907,-959,-1015,
+-1080,-1152,-1223,-1291,-1367,-1457,-1556,-1648,-1726,-1789,-1847,-1906,-1962,-2010,-2048,-2084,-2128,-2180,-2232,-2277,-2323,
+-2379,-2446,-2504,-2532,-2526,-2501,-2475,-2456,-2439,-2419,-2402,-2393,-2388,-2377,-2358,-2341,-2339,-2358,-2402,-2464,-2525,
+-2562,-2577,-2591,-2615,-2632,-2630,-2614,-2607,-2616,-2630,-2636,-2626,-2599,-2563,-2527,-2491,-2443,-2382,-2328,-2302,-2298,
+-2295,-2293,-2318,-2380,-2455,-2504,-2502,-2452,-2380,-2320,-2292,-2281,-2252,-2190,-2114,-2049,-1996,-1948,-1902,-1859,-1811,
+-1751,-1689,-1638,-1595,-1549,-1496,-1445,-1400,-1352,-1295,-1239,-1190,-1143,-1089,-1026,-963,-908,-860,-815,-770,-725,
+-680,-629,-571,-510,-451,-395,-339,-285,-237,-190,-140,-86,-33,17,65,111,150,191,241,301,357,
+401,441,487,536,582,623,660,696,727,754,776,795,821,860,911,957,989,1010,1022,1022,1006,
+986,975,973,974,976,983,997,1017,1046,1086,1134,1177,1203,1216,1229,1255,1283,1294,1275,1241,1226,
+1252,1313,1393,1478,1561,1632,1688,1738,1790,1836,1864,1875,1882,1891,1898,1901,1904,1907,1908,1908,1913,
+1921,1925,1922,1915,1910,1907,1905,1904,1908,1916,1927,1938,1945,1948,1949,1953,1959,1965,1969,1968,1960,
+1951,1949,1953,1956,1953,1950,1950,1948,1934,1914,1897,1884,1870,1855,1839,1822,1804,1790,1784,1781,1775,
+1767,1764,1762,1754,1743,1737,1736,1732,1723,1717,1718,1719,1735,1736,1733,1727,1719,1708,1702,1707,1717,
+1720,1712,1701,1697,1701,1701,1690,1670,1653,1640,1626,1608,1593,1591,1598,1605,1599,1575,1530,1477,1436,
+1418,1415,1406,1374,1320,1257,1204,1168,1128,1051,936,831,787,798,812,789,742,707,693,686,668,
+641,611,578,527,447,336,213,104,20,-55,-141,-237,-320,-379,-430,-505,-629,-796,-969,-1103,-1173,
+-1199,-1228,-1295,-1400,-1516,-1618,-1699,-1771,-1839,-1900,-1948,-1986,-2019,-2047,-2058,-2051,-2041,-2050,-2081,-2115,-2135,
+-2138,-2134,-2133,-2127,-2102,-2053,-1989,-1926,-1874,-1832,-1800,-1779,-1759,-1721,-1656,-1578,-1508,-1438,-1334,-1176,-983,
+-806,-698,-691,-780,-917,-1025,-1059,-1048,-1055,-1107,-1172,-1211,-1230,-1260,-1314,-1373,-1427,-1485,-1556,-1627,-1679,
+-1708,-1726,-1738,-1738,-1710,-1645,-1552,-1461,-1404,-1382,-1360,-1316,-1281,-1322,-1471,-1686,-1887,-2020,-2094,-2152,-2232,
+-2341,-2462,-2578,-2679,-2766,-2843,-2921,-3007,-3097,-3174,-3227,-3256,-3282,-3331,-3427,-3581,-3771,-3952,-4082,-4152,-4183,
+-4204,-4231,-4269,-4314,-4355,-4388,-4423,-4480,-4559,-4640,-4704,-4751,-4794,-4839,-4879,-4910,-4931,-4939,-4923,-4887,-4854,
+-4846,-4860,-4877,-4882,-4877,-4871,-4864,-4855,-4851,-4857,-4875,-4900,-4923,-4943,-4956,-4964,-4973,-4992,-5018,-5043,-5067,
+-5095,-5126,-5157,-5191,-5238,-5302,-5367,-5417,-5458,-5506,-5559,-5608,-5650,-5699,-5759,-5819,-5875,-5935,-6006,-6084,-6153,
+-6215,-6279,-6354,-6433,-6511,-6584,-6655,-6723,-6784,-6840,-6899,-6968,-7042,-7113,-7173,-7225,-7275,-7327,-7379,-7432,-7487,
+-7543,-7601,-7661,-7719,-7767,-7806,-7846,-7897,-7960,-8033,-8117,-8211,-8306,-8393,-8476,-8562,-8646,-8719,-8786,-8863,-8949,
+-9026,-9086,-9146,-9220,-9299,-9370,-9428,-9470,-9478,-9448,-9417,-9426,-9471,-9513,-9550,-9627,-9763,-9905,-9981,-9985,-9969,
+-9974,-9999,-10026,-10057,-10092,-10120,-10133,-10143,-10162,-10185,-10202,-10213,-10225,-10236,-10241,-10235,-10221,-10199,-10171,-10142,-10113,
+-10077,
+-10026,-9962,-9884,-9784,-9664,-9551,-9480,-9451,-9431,-9387,-9316,-9228,-9133,-9032,-8930,-8832,-8735,-8631,-8519,-8397,-8270,
+-8141,-8019,-7911,-7809,-7692,-7547,-7378,-7208,-7059,-6925,-6786,-6629,-6466,-6321,-6205,-6113,-6031,-5944,-5834,-5701,-5566,
+-5444,-5328,-5190,-5022,-4845,-4684,-4535,-4374,-4188,-3996,-3833,-3705,-3579,-3422,-3247,-3103,-3013,-2946,-2871,-2807,-2790,
+-2793,-2737,-2569,-2313,-2032,-1788,-1623,-1544,-1504,-1430,-1292,-1123,-944,-733,-481,-250,-103,-21,72,198,307,
+373,437,540,668,781,874,965,1062,1163,1267,1372,1470,1558,1649,1749,1845,1928,2009,2098,2193,2291,
+2396,2506,2606,2691,2784,2906,3046,3171,3266,3344,3418,3487,3557,3638,3735,3835,3930,4028,4142,4272,4397,
+4498,4575,4649,4742,4853,4962,5051,5116,5165,5203,5241,5292,5349,5396,5414,5403,5385,5393,5448,5515,5521,
+5425,5285,5216,5274,5412,5555,5670,5763,5834,5888,5944,6015,6091,6166,6250,6328,6340,6249,6100,5954,5794,
+5564,5278,5035,4894,4807,4685,4510,4337,4225,4195,4247,4387,4650,5079,5649,6208,6578,6725,6795,6931,7105,
+7193,7163,7123,7177,7313,7450,7540,7595,7634,7645,7603,7514,7430,7427,7529,7682,7792,7806,7740,7644,7551,
+7470,7411,7396,7437,7513,7573,7561,7462,7313,7166,7046,6948,6869,6813,6786,6776,6773,6779,6800,6845,6914,
+6997,7074,7131,7170,7200,7229,7258,7285,7302,7305,7299,7300,7309,7309,7288,7256,7224,7186,7137,7091,7064,
+7047,7025,7012,7028,7056,7052,7007,6963,6941,6919,6875,6828,6801,6777,6737,6697,6677,6642,6547,6415,6321,
+6295,6282,6227,6158,6142,6185,6221,6194,6118,6049,6018,6007,5986,5943,5895,5872,5888,5926,5952,5945,5923,
+5917,5936,5956,5950,5919,5883,5856,5826,5780,5718,5653,5594,5538,5480,5419,5361,5307,5253,5188,5111,5034,
+4973,4926,4883,4834,4778,4714,4642,4566,4501,4453,4415,4383,4356,4333,4305,4266,4225,4187,4151,4109,4063,
+4018,3975,3936,3909,3905,3914,3909,3875,3817,3750,3688,3635,3589,3544,3499,3456,3413,3360,3297,3241,3207,
+3190,3173,3147,3115,3072,3012,2940,2875,2822,2764,2690,2630,2633,2712,2809,2841,2776,2656,2552,2503,2491,
+2480,2455,2423,2394,2370,2354,2347,2349,2351,2342,2313,2266,2215,2179,2160,2145,2125,2105,2090,2076,2053,
+2030,2017,2013,2006,1993,1972,1932,1876,1836,1852,1907,1932,1884,1795,1735,1727,1739,1741,1736,1730,1721,
+1704,1689,1683,1674,1648,1612,1583,1573,1576,1584,1596,1604,1594,1567,1536,1516,1510,1506,1499,1494,1490,
+1484,1472,1462,1460,1469,1481,1487,1482,1469,1457,1452,1452,1448,1439,1436,1451,1480,1508,1525,1532,1532,
+1525,1517,1515,1520,1526,1533,1545,1559,1566,1561,1554,1560,1575,1580,1565,1550,1562,1600,1640,1654,1644,
+1631,1626,1624,1620,1617,1621,1629,1635,1634,1628,1618,1604,1588,1572,1552,1529,1508,1492,1477,1454,1430,
+1410,1396,1381,1366,1356,1349,1339,1328,1319,1308,1287,1256,1228,1209,1194,1179,1163,1150,1135,1116,1093,
+1069,1040,1007,975,948,923,896,865,831,797,764,736,709,678,644,611,581,547,505,463,425,
+389,352,314,278,245,212,181,151,120,88,54,20,-16,-55,-96,-135,-173,-211,-249,-287,-327,
+-370,-415,-460,-501,-538,-571,-600,-626,-652,-680,-713,-750,-786,-815,-838,-862,-890,-918,-945,-975,-1010,
+-1042,-1068,-1089,-1116,-1150,-1186,-1221,-1255,-1290,-1327,-1362,-1394,-1423,-1450,-1478,-1509,-1541,-1574,-1606,-1638,-1668,
+-1699,-1733,-1769,-1802,-1826,-1847,-1870,-1896,-1923,-1951,-1978,-2006,-2032,-2054,-2072,-2089,-2107,-2128,-2148,-2165,-2181,
+-2197,-2213,-2224,-2234,-2245,-2258,-2267,-2272,-2281,-2295,-2306,-2311,-2316,-2324,-2330,-2330,-2327,-2327,-2327,-2324,-2320,
+-2317,-2313,-2303,-2288,-2273,-2261,-2249,-2235,-2219,-2201,-2182,-2165,-2153,-2143,-2134,-2124,-2114,-2100,-2081,-2062,-2049,
+-2038,-2025,-2007,-1990,-1975,-1961,-1946,-1930,-1916,-1903,-1894,-1885,-1873,-1859,-1845,-1832,-1820,-1805,-1792,-1782,-1773,
+-1763,-1751,-1740,-1727,-1711,-1695,-1681,-1669,-1655,-1640,-1626,-1612,-1595,-1579,-1565,-1550,-1532,-1513,-1497,-1483,-1465,
+-1443,-1424,-1410,-1397,-1378,-1357,-1338,-1323,-1308,-1293,-1276,-1258,-1241,-1226,-1213,-1201,-1187,-1170,-1154,-1142,-1133,
+-1122,-1105,-1086,-1067,-1044,-1015,-986,-960,-934,-912,-909,-925,-909,-812,-648,-504,-448,-456,-463,-444,-423,
+-415,-403,-383,-367,-359,-343,-310,-277,-258,-240,-213,-183,-162,-139,-106,-68,-35,-1,40,84,129,
+180,244,311,381,467,569,663,738,817,914,983,968,896,864,934,1076,1228,1372,1520,1675,1837,
+2030,2269,2511,2666,2661,2494,2226,1949,1741,1636,1611,1632,1682,1758,1838,1887,1899,1898,1909,1929,1951,
+1977,2002,2002,1961,1893,1829,1785,1760,1743,1721,1681,1625,1574,1540,1511,1468,1413,1359,1299,1217,1112,
+1004,909,822,737,657,583,504,417,330,256,189,120,46,-24,-91,-159,-226,-287,-344,-405,-470,
+-529,-579,-629,-687,-743,-782,-799,-811,-836,-877,-929,-986,-1050,-1121,-1193,-1266,-1345,-1437,-1539,-1635,-1712,
+-1770,-1819,-1871,-1923,-1967,-1998,-2029,-2072,-2125,-2179,-2227,-2276,-2335,-2405,-2468,-2501,-2496,-2464,-2425,-2398,-2385,
+-2379,-2377,-2373,-2364,-2348,-2329,-2315,-2314,-2338,-2392,-2467,-2531,-2557,-2552,-2550,-2569,-2592,-2600,-2593,-2586,-2585,
+-2588,-2592,-2591,-2573,-2532,-2480,-2431,-2384,-2334,-2293,-2278,-2284,-2286,-2277,-2273,-2297,-2347,-2401,-2430,-2409,-2339,
+-2261,-2219,-2218,-2218,-2187,-2125,-2057,-1994,-1936,-1884,-1839,-1788,-1729,-1675,-1639,-1610,-1568,-1510,-1454,-1409,-1362,
+-1301,-1233,-1171,-1118,-1064,-1001,-935,-873,-821,-774,-730,-685,-640,-591,-541,-492,-446,-401,-353,-303,-254,
+-206,-155,-103,-53,-4,43,91,136,184,239,300,355,397,435,478,523,567,606,643,677,705,
+727,745,760,783,821,871,918,950,970,984,990,982,969,963,967,973,973,969,968,975,993,
+1023,1061,1096,1119,1131,1149,1182,1224,1253,1258,1251,1258,1289,1339,1398,1469,1551,1630,1699,1759,1818,
+1867,1896,1903,1901,1897,1894,1890,1888,1887,1885,1883,1885,1892,1903,1913,1923,1932,1940,1947,1952,1955,
+1956,1957,1961,1966,1969,1969,1968,1968,1967,1967,1966,1963,1961,1963,1967,1964,1955,1946,1939,1929,1911,
+1888,1869,1857,1847,1837,1826,1815,1802,1791,1786,1784,1780,1774,1771,1769,1762,1750,1740,1736,1733,1729,
+1727,1731,1735,1760,1763,1759,1746,1731,1724,1727,1737,1744,1738,1722,1706,1700,1704,1706,1694,1672,1654,
+1643,1630,1614,1603,1603,1602,1583,1546,1506,1476,1456,1439,1426,1423,1428,1423,1381,1298,1205,1139,1098,
+1038,936,828,771,778,805,811,793,768,742,710,674,642,613,579,528,454,356,248,151,66,
+-24,-138,-260,-356,-409,-442,-499,-612,-778,-960,-1112,-1210,-1263,-1297,-1341,-1409,-1501,-1607,-1710,-1798,-1871,
+-1932,-1980,-2017,-2047,-2074,-2090,-2090,-2083,-2087,-2107,-2130,-2136,-2127,-2119,-2123,-2130,-2118,-2075,-2010,-1944,-1892,
+-1854,-1826,-1804,-1781,-1744,-1681,-1599,-1515,-1434,-1333,-1191,-1016,-855,-756,-742,-799,-881,-941,-966,-988,-1041,
+-1121,-1194,-1240,-1275,-1325,-1391,-1456,-1515,-1569,-1616,-1654,-1687,-1718,-1730,-1703,-1647,-1591,-1548,-1505,-1457,-1419,
+-1403,-1392,-1376,-1387,-1466,-1614,-1780,-1915,-2012,-2091,-2171,-2261,-2368,-2488,-2606,-2708,-2789,-2862,-2942,-3031,-3120,
+-3190,-3231,-3256,-3299,-3389,-3533,-3712,-3890,-4032,-4121,-4161,-4176,-4189,-4210,-4245,-4290,-4333,-4369,-4411,-4478,-4569,
+-4656,-4713,-4747,-4782,-4828,-4874,-4905,-4918,-4914,-4893,-4863,-4842,-4842,-4856,-4865,-4863,-4855,-4847,-4839,-4831,-4829,
+-4838,-4858,-4881,-4904,-4925,-4937,-4943,-4949,-4964,-4986,-5008,-5032,-5065,-5105,-5144,-5184,-5234,-5295,-5350,-5390,-5427,
+-5475,-5529,-5575,-5614,-5660,-5721,-5785,-5843,-5901,-5971,-6052,-6129,-6193,-6252,-6317,-6392,-6471,-6547,-6619,-6688,-6755,
+-6821,-6886,-6952,-7020,-7084,-7141,-7196,-7253,-7311,-7366,-7415,-7463,-7513,-7568,-7629,-7690,-7740,-7776,-7811,-7861,-7926,
+-8000,-8077,-8161,-8251,-8340,-8428,-8515,-8598,-8673,-8744,-8826,-8915,-8993,-9052,-9109,-9181,-9262,-9338,-9398,-9432,-9426,
+-9390,-9366,-9386,-9433,-9468,-9504,-9590,-9738,-9884,-9954,-9949,-9929,-9935,-9960,-9987,-10015,-10048,-10076,-10092,-10104,-10123,
+-10146,-10164,-10178,-10192,-10207,-10212,-10204,-10184,-10154,-10120,-10091,-10069,-10041,-9994,-9929,-9850,-9760,-9663,-9576,-9515,-9473,
+-9427,
+-9361-9283,-9202,-9118,-9026,-8929,-8833,-8737,-8633,-8520,-8400,-8276,-8149,-8030,-7925,-7825,-7708,-7558,-7387,-7219,
+-7067,-6920,-6762,-6593,-6433,-6299,-6194,-6110,-6036,-5958,-5856,-5726,-5589,-5464,-5343,-5198,-5021,-4838,-4677,-4537,-4390,
+-4216,-4029,-3861,-3724,-3594,-3443,-3277,-3134,-3030,-2936,-2828,-2738,-2715,-2751,-2761,-2661,-2438,-2145,-1869,-1688,-1623,
+-1615,-1567,-1443,-1273,-1080,-834,-531,-247,-68,17,95,209,323,407,483,586,706,814,904,988,1073,
+1165,1270,1382,1484,1571,1661,1766,1871,1959,2034,2112,2195,2285,2388,2502,2607,2689,2772,2886,3027,3157,
+3254,3333,3406,3473,3536,3613,3717,3831,3937,4040,4165,4314,4453,4543,4590,4636,4714,4814,4908,4978,5027,
+5063,5098,5149,5227,5314,5375,5393,5379,5369,5391,5454,5522,5524,5424,5284,5224,5304,5473,5646,5789,5910,
+6000,6040,6039,6042,6083,6166,6269,6346,6345,6260,6148,6054,5937,5715,5393,5074,4841,4674,4509,4337,4202,
+4148,4175,4258,4377,4550,4837,5269,5767,6188,6462,6656,6858,7049,7139,7119,7092,7144,7255,7346,7394,7432,
+7486,7525,7514,7465,7442,7509,7663,7837,7951,7975,7934,7873,7802,7709,7591,7486,7450,7497,7575,7602,7551,
+7459,7369,7281,7178,7073,6998,6955,6914,6859,6812,6799,6824,6873,6937,7012,7089,7155,7200,7229,7251,7274,
+7295,7308,7318,7331,7342,7331,7300,7264,7237,7206,7168,7142,7146,7157,7150,7141,7165,7208,7219,7186,7152,
+7148,7145,7110,7062,7036,7020,6980,6920,6871,6831,6761,6651,6536,6442,6352,6249,6164,6141,6169,6190,6163,
+6106,6064,6060,6075,6066,6010,5923,5856,5846,5888,5932,5941,5921,5911,5931,5958,5961,5932,5895,5867,5843,
+5807,5755,5694,5634,5578,5520,5458,5394,5335,5281,5221,5148,5070,5004,4954,4909,4854,4790,4720,4651,4583,
+4522,4471,4431,4399,4376,4352,4316,4269,4222,4183,4150,4117,4081,4044,4000,3953,3920,3916,3929,3926,3890,
+3831,3769,3715,3665,3614,3564,3524,3494,3464,3417,3352,3290,3252,3230,3207,3176,3145,3110,3063,3001,2937,
+2877,2808,2722,2651,2646,2734,2872,2966,2940,2804,2639,2532,2505,2518,2522,2495,2447,2396,2360,2349,2358,
+2372,2368,2337,2284,2228,2188,2163,2142,2115,2091,2078,2068,2049,2028,2015,2013,2011,2003,1984,1943,1884,
+1844,1864,1924,1947,1883,1773,1696,1682,1698,1707,1711,1718,1723,1716,1703,1695,1688,1669,1639,1612,1595,
+1585,1584,1594,1608,1611,1594,1568,1544,1527,1515,1504,1492,1476,1456,1441,1440,1458,1487,1515,1532,1531,
+1513,1490,1474,1464,1453,1439,1434,1445,1468,1493,1512,1520,1516,1504,1495,1496,1500,1500,1502,1514,1532,
+1543,1545,1545,1551,1554,1545,1528,1518,1531,1566,1604,1626,1622,1605,1591,1589,1592,1595,1596,1596,1597,
+1602,1606,1604,1593,1578,1565,1553,1535,1513,1494,1477,1458,1433,1408,1388,1373,1360,1349,1336,1321,1307,
+1298,1288,1268,1239,1214,1198,1185,1170,1156,1146,1136,1120,1101,1081,1059,1030,999,970,943,914,883,
+849,815,780,749,719,686,650,614,581,547,509,470,433,396,357,315,276,241,208,176,148,
+121,93,64,34,0,-39,-79,-118,-154,-191,-229,-267,-306,-347,-391,-434,-474,-512,-548,-580,-608,
+-633,-659,-689,-724,-760,-792,-819,-845,-872,-899,-927,-957,-992,-1026,-1052,-1073,-1098,-1129,-1164,-1199,-1234,
+-1270,-1308,-1344,-1374,-1398,-1421,-1448,-1480,-1512,-1545,-1577,-1610,-1641,-1672,-1705,-1739,-1769,-1792,-1813,-1837,-1863,
+-1889,-1913,-1939,-1967,-1994,-2018,-2038,-2055,-2073,-2091,-2109,-2126,-2143,-2160,-2177,-2190,-2202,-2215,-2228,-2237,-2243,
+-2250,-2261,-2269,-2273,-2278,-2285,-2290,-2290,-2288,-2289,-2291,-2290,-2287,-2284,-2278,-2268,-2256,-2244,-2233,-2220,-2206,
+-2192,-2174,-2154,-2135,-2124,-2116,-2107,-2095,-2083,-2069,-2052,-2035,-2023,-2013,-2002,-1987,-1972,-1957,-1943,-1927,-1911,
+-1896,-1884,-1873,-1861,-1848,-1834,-1821,-1811,-1800,-1786,-1773,-1763,-1753,-1743,-1731,-1720,-1708,-1694,-1681,-1670,-1659,
+-1646,-1630,-1617,-1604,-1590,-1573,-1558,-1543,-1526,-1508,-1492,-1478,-1462,-1444,-1427,-1413,-1398,-1380,-1362,-1346,-1332,
+-1317,-1301,-1284,-1268,-1252,-1238,-1224,-1212,-1200,-1186,-1173,-1162,-1151,-1137,-1118,-1099,-1081,-1060,-1033,-1008,-986,
+-961,-935,-930,-947,-941,-854,-694,-540,-460,-439,-424,-394,-371,-366,-363,-356,-355,-356,-343,-313,-286,
+-269,-252,-227,-200,-180,-156,-123,-87,-54,-13,38,91,139,194,263,333,401,483,582,672,742,
+814,898,943,902,823,821,950,1148,1323,1447,1547,1654,1801,2028,2332,2618,2756,2684,2450,2151,1869,
+1661,1555,1545,1595,1668,1742,1803,1838,1851,1863,1888,1916,1940,1963,1984,1988,1959,1905,1847,1796,1751,
+1711,1675,1640,1601,1562,1526,1492,1455,1418,1380,1331,1253,1153,1049,955,869,785,705,628,547,461,
+380,309,239,165,89,19,-45,-113,-182,-248,-311,-376,-442,-501,-555,-609,-670,-725,-760,-775,-789,
+-817,-861,-914,-968,-1028,-1099,-1179,-1260,-1340,-1427,-1523,-1616,-1692,-1749,-1800,-1857,-1916,-1964,-1999,-2028,-2061,
+-2102,-2146,-2193,-2245,-2305,-2373,-2434,-2471,-2471,-2438,-2397,-2367,-2355,-2353,-2356,-2357,-2352,-2339,-2321,-2303,-2296,
+-2313,-2366,-2445,-2512,-2535,-2524,-2514,-2529,-2553,-2567,-2569,-2566,-2558,-2544,-2539,-2547,-2549,-2522,-2468,-2411,-2360,
+-2314,-2274,-2253,-2252,-2258,-2256,-2249,-2248,-2263,-2299,-2341,-2353,-2312,-2238,-2184,-2170,-2172,-2150,-2095,-2025,-1957,
+-1895,-1846,-1807,-1766,-1716,-1669,-1635,-1607,-1564,-1504,-1445,-1398,-1352,-1295,-1227,-1160,-1098,-1039,-978,-915,-855,
+-800,-751,-704,-659,-613,-569,-526,-484,-445,-407,-366,-320,-270,-220,-170,-120,-71,-22,28,79,127,
+175,230,291,351,399,437,471,505,539,573,609,642,668,685,697,706,720,745,782,820,848,
+868,884,895,898,899,909,929,947,950,937,921,911,911,921,940,961,983,1008,1043,1094,1154,
+1208,1253,1297,1348,1402,1447,1483,1523,1573,1628,1682,1737,1796,1848,1878,1882,1870,1858,1851,1851,1856,
+1863,1870,1874,1879,1889,1905,1925,1943,1955,1961,1968,1978,1987,1990,1989,1988,1989,1989,1988,1985,1982,
+1976,1969,1964,1961,1961,1963,1962,1956,1944,1932,1921,1909,1890,1869,1853,1841,1830,1820,1811,1802,1794,
+1786,1783,1781,1776,1771,1768,1769,1765,1756,1746,1742,1742,1744,1748,1754,1760,1784,1785,1779,1762,1744,
+1739,1748,1758,1759,1748,1734,1722,1715,1713,1708,1692,1671,1654,1644,1634,1623,1620,1623,1610,1567,1507,
+1462,1444,1439,1428,1414,1415,1432,1441,1406,1318,1211,1131,1084,1027,930,821,757,764,814,864,886,
+872,824,759,701,658,623,581,529,464,382,287,196,110,8,-125,-267,-373,-425,-453,-506,-615,
+-768,-935,-1086,-1210,-1306,-1370,-1408,-1441,-1499,-1593,-1703,-1800,-1876,-1938,-1992,-2032,-2062,-2088,-2111,-2124,-2123,
+-2121,-2128,-2137,-2135,-2123,-2115,-2120,-2130,-2124,-2091,-2036,-1978,-1931,-1898,-1870,-1843,-1816,-1780,-1718,-1625,-1518,
+-1415,-1312,-1188,-1039,-892,-785,-734,-727,-742,-771,-825,-919,-1044,-1161,-1237,-1279,-1319,-1377,-1446,-1512,-1574,
+-1626,-1656,-1671,-1695,-1732,-1742,-1692,-1608,-1549,-1528,-1511,-1479,-1459,-1472,-1493,-1497,-1508,-1568,-1674,-1783,-1876,
+-1971,-2083,-2198,-2302,-2407,-2526,-2644,-2737,-2808,-2877,-2962,-3054,-3136,-3197,-3237,-3279,-3353,-3480,-3648,-3823,-3968,
+-4067,-4122,-4148,-4162,-4175,-4197,-4234,-4283,-4332,-4374,-4420,-4492,-4591,-4684,-4736,-4753,-4767,-4801,-4847,-4881,-4892,
+-4883,-4863,-4842,-4833,-4839,-4850,-4850,-4840,-4827,-4815,-4805,-4798,-4801,-4819,-4844,-4867,-4885,-4900,-4909,-4912,-4917,
+-4930,-4950,-4971,-4995,-5026,-5065,-5106,-5150,-5207,-5270,-5325,-5363,-5397,-5441,-5492,-5538,-5579,-5628,-5691,-5756,-5815,
+-5873,-5940,-6018,-6100,-6173,-6235,-6293,-6357,-6428,-6500,-6569,-6640,-6716,-6792,-6862,-6929,-6994,-7058,-7118,-7175,-7233,
+-7288,-7339,-7384,-7430,-7480,-7535,-7597,-7659,-7709,-7743,-7776,-7824,-7889,-7958,-8028,-8106,-8196,-8289,-8377,-8463,-8545,
+-8623,-8700,-8784,-8872,-8950,-9013,-9075,-9148,-9228,-9304,-9364,-9395,-9383,-9346,-9327,-9352,-9395,-9423,-9458,-9554,-9716,
+-9867,-9929,-9912,-9886,-9893,-9921,-9948,-9974,-10006,-10036,-10055,-10068,-10085,-10106,-10124,-10141,-10161,-10182,-10192,-10185,-10161,
+-10125,
+-10085-10056,-10036,-10009,-9959,-9885,-9803,-9721,-9645,-9577,-9518,-9459,-9392,-9318,-9246,-9179,-9104,-9015,-8917,-8819,
+-8722,-8618,-8504,-8385,-8263,-8143,-8031,-7934,-7837,-7718,-7565,-7394,-7227,-7071,-6914,-6745,-6577,-6430,-6314,-6221,-6140,
+-6064,-5983,-5880,-5750,-5612,-5482,-5353,-5200,-5019,-4834,-4672,-4532,-4390,-4229,-4056,-3893,-3749,-3612,-3465,-3314,-3179,
+-3064,-2943,-2804,-2689,-2656,-2704,-2755,-2714,-2538,-2257,-1954,-1732,-1649,-1664,-1667,-1582,-1413,-1186,-900,-563,-248,
+-38,63,132,223,331,433,534,643,750,842,926,1011,1095,1181,1282,1397,1502,1589,1677,1782,1892,
+1983,2056,2127,2203,2284,2380,2494,2603,2689,2768,2874,3005,3126,3219,3297,3375,3446,3510,3586,3693,3812,
+3916,4010,4125,4269,4405,4488,4528,4572,4649,4744,4824,4881,4926,4970,5019,5092,5198,5308,5374,5377,5351,
+5344,5378,5441,5492,5478,5380,5263,5233,5340,5531,5724,5898,6062,6186,6217,6157,6093,6114,6232,6381,6465,
+6437,6329,6220,6147,6056,5865,5573,5264,5005,4796,4610,4459,4375,4364,4406,4473,4546,4629,4774,5048,5452,
+5891,6264,6548,6779,6957,7049,7066,7080,7137,7207,7238,7236,7253,7309,7370,7394,7394,7423,7514,7651,7780,
+7868,7914,7949,7983,7992,7932,7789,7614,7497,7479,7519,7537,7509,7475,7460,7440,7380,7300,7242,7205,7152,
+7071,6995,6957,6944,6934,6932,6968,7050,7144,7210,7239,7247,7258,7279,7303,7325,7339,7338,7320,7297,7286,
+7287,7282,7271,7285,7333,7376,7371,7338,7327,7344,7347,7318,7296,7306,7315,7284,7231,7202,7197,7173,7114,
+7048,6997,6951,6889,6809,6711,6585,6440,6315,6242,6211,6182,6135,6082,6049,6048,6069,6082,6056,5982,5896,
+5847,5854,5895,5928,5939,5942,5956,5974,5976,5955,5922,5892,5866,5835,5793,5738,5676,5612,5553,5493,5430,
+5366,5307,5249,5182,5103,5028,4968,4915,4857,4791,4727,4671,4617,4559,4500,4452,4425,4410,4389,4346,4289,
+4236,4198,4168,4138,4108,4074,4031,3982,3945,3933,3935,3924,3886,3837,3793,3755,3710,3653,3593,3548,3520,
+3496,3457,3397,3337,3292,3262,3234,3202,3173,3144,3109,3059,2998,2929,2853,2775,2710,2685,2728,2836,2952,
+2990,2907,2750,2619,2579,2607,2636,2614,2542,2453,2384,2351,2351,2363,2363,2340,2297,2247,2205,2174,2148,
+2120,2098,2086,2075,2056,2032,2020,2020,2021,2012,1988,1945,1892,1859,1880,1935,1951,1884,1771,1693,1679,
+1695,1700,1697,1704,1719,1726,1722,1713,1701,1681,1656,1633,1612,1593,1578,1575,1583,1591,1591,1585,1574,
+1557,1536,1512,1485,1455,1428,1417,1431,1467,1511,1550,1574,1574,1551,1518,1489,1468,1452,1444,1448,1464,
+1481,1493,1501,1504,1500,1489,1482,1482,1481,1477,1479,1492,1511,1522,1526,1532,1539,1539,1531,1522,1521,
+1529,1547,1571,1592,1595,1582,1567,1565,1572,1576,1573,1568,1568,1575,1583,1581,1569,1554,1547,1544,1534,
+1514,1492,1474,1456,1434,1410,1391,1377,1364,1348,1327,1305,1287,1276,1266,1250,1227,1206,1190,1174,1157,
+1143,1135,1126,1112,1096,1081,1065,1043,1015,985,955,923,892,861,829,794,760,727,694,656,618,
+582,548,511,474,439,403,363,321,281,244,210,178,150,125,101,74,44,11,-26,-65,-101,
+-135,-170,-207,-245,-284,-327,-369,-409,-446,-483,-521,-557,-588,-615,-641,-670,-703,-739,-773,-803,-832,
+-860,-888,-916,-947,-979,-1011,-1038,-1061,-1086,-1117,-1152,-1186,-1220,-1255,-1291,-1324,-1349,-1369,-1390,-1418,-1452,
+-1486,-1520,-1553,-1586,-1618,-1648,-1678,-1708,-1734,-1757,-1780,-1805,-1829,-1851,-1873,-1898,-1925,-1953,-1978,-2001,-2020,
+-2037,-2052,-2067,-2083,-2100,-2117,-2135,-2150,-2164,-2178,-2192,-2202,-2208,-2215,-2224,-2232,-2237,-2242,-2246,-2248,-2247,
+-2247,-2250,-2253,-2253,-2250,-2246,-2238,-2229,-2220,-2212,-2202,-2188,-2174,-2161,-2145,-2125,-2107,-2096,-2089,-2078,-2064,
+-2051,-2038,-2024,-2009,-1996,-1985,-1974,-1961,-1948,-1935,-1921,-1906,-1892,-1879,-1866,-1853,-1838,-1823,-1810,-1799,-1790,
+-1780,-1769,-1757,-1746,-1736,-1723,-1710,-1698,-1687,-1676,-1665,-1655,-1645,-1633,-1619,-1607,-1596,-1583,-1567,-1550,-1534,
+-1518,-1503,-1487,-1472,-1457,-1443,-1430,-1416,-1399,-1382,-1366,-1353,-1339,-1324,-1308,-1292,-1278,-1266,-1253,-1239,-1224,
+-1210,-1198,-1187,-1176,-1165,-1149,-1130,-1112,-1095,-1076,-1052,-1030,-1010,-985,-954,-940,-953,-959,-908,-794,-669,
+-580,-517,-452,-391,-359,-357,-362,-361,-360,-361,-352,-330,-311,-298,-280,-253,-227,-204,-177,-143,-109,
+-75,-28,30,87,140,203,280,353,417,492,585,674,740,801,865,889,838,774,815,1003,1251,
+1444,1544,1586,1632,1755,2013,2374,2684,2777,2616,2314,2007,1758,1584,1498,1505,1573,1651,1712,1758,1799,
+1835,1867,1895,1921,1945,1965,1977,1971,1945,1905,1859,1803,1739,1679,1636,1607,1581,1547,1510,1474,1441,
+1415,1390,1352,1289,1205,1114,1024,933,840,752,669,587,505,428,358,287,212,138,71,5,-65,
+-138,-206,-271,-338,-406,-469,-528,-590,-654,-706,-737,-753,-770,-804,-854,-907,-958,-1015,-1090,-1180,-1271,
+-1352,-1429,-1512,-1595,-1666,-1726,-1786,-1855,-1925,-1982,-2020,-2044,-2061,-2081,-2115,-2166,-2229,-2294,-2358,-2413,-2445,
+-2441,-2408,-2368,-2341,-2330,-2328,-2333,-2345,-2357,-2357,-2342,-2317,-2298,-2301,-2342,-2410,-2471,-2495,-2488,-2480,-2488,
+-2503,-2512,-2521,-2531,-2532,-2517,-2505,-2518,-2538,-2533,-2491,-2433,-2380,-2335,-2290,-2251,-2226,-2217,-2221,-2225,-2219,
+-2206,-2210,-2243,-2283,-2292,-2257,-2209,-2175,-2149,-2108,-2047,-1979,-1914,-1859,-1818,-1786,-1752,-1705,-1650,-1600,-1559,
+-1514,-1461,-1407,-1358,-1313,-1266,-1213,-1152,-1085,-1018,-959,-908,-860,-810,-760,-712,-666,-621,-580,-541,-502,
+-462,-424,-385,-341,-293,-245,-199,-153,-105,-56,-7,39,83,125,174,235,300,358,399,425,443,
+463,490,522,552,574,585,590,591,593,601,620,646,673,698,720,737,748,761,785,819,849,
+859,852,838,830,832,840,854,875,904,943,992,1049,1110,1171,1235,1307,1383,1450,1496,1527,1554,
+1587,1621,1656,1698,1748,1796,1823,1823,1806,1789,1782,1787,1802,1824,1850,1877,1901,1924,1947,1969,1982,
+1981,1972,1968,1976,1990,2000,2004,2004,2002,1999,1996,1995,1994,1989,1979,1968,1961,1956,1951,1944,1934,
+1923,1913,1903,1891,1876,1862,1849,1837,1825,1812,1800,1790,1782,1776,1773,1771,1766,1761,1759,1761,1763,
+1761,1758,1757,1762,1770,1777,1781,1784,1802,1798,1790,1775,1759,1756,1763,1767,1760,1750,1744,1739,1729,
+1716,1701,1684,1668,1656,1645,1630,1619,1620,1624,1603,1542,1467,1416,1399,1395,1387,1381,1390,1407,1408,
+1368,1287,1195,1120,1063,993,894,790,727,733,795,878,937,940,886,807,741,695,648,592,533,
+474,402,315,228,145,45,-91,-241,-355,-413,-449,-514,-625,-764,-904,-1036,-1169,-1297,-1396,-1447,-1469,
+-1507,-1585,-1687,-1780,-1852,-1916,-1977,-2026,-2060,-2089,-2117,-2136,-2137,-2130,-2129,-2134,-2134,-2127,-2118,-2117,-2120,
+-2117,-2099,-2065,-2022,-1982,-1950,-1920,-1886,-1852,-1814,-1756,-1660,-1537,-1415,-1308,-1195,-1057,-906,-774,-682,-629,
+-609,-635,-727,-880,-1051,-1185,-1261,-1305,-1355,-1422,-1489,-1549,-1607,-1656,-1680,-1689,-1715,-1758,-1771,-1724,-1653,
+-1616,-1605,-1573,-1523,-1518,-1580,-1645,-1645,-1604,-1596,-1646,-1726,-1821,-1945,-2095,-2233,-2340,-2442,-2561,-2676,-2759,
+-2821,-2894,-2986,-3074,-3140,-3190,-3247,-3328,-3445,-3596,-3761,-3905,-4008,-4071,-4107,-4130,-4149,-4170,-4199,-4242,-4294,
+-4347,-4391,-4438,-4512,-4615,-4712,-4761,-4761,-4751,-4766,-4804,-4840,-4854,-4846,-4829,-4815,-4813,-4819,-4824,-4819,-4804,
+-4787,-4771,-4758,-4754,-4767,-4795,-4827,-4849,-4861,-4867,-4869,-4869,-4875,-4889,-4910,-4931,-4953,-4980,-5013,-5052,-5100,
+-5162,-5232,-5293,-5337,-5372,-5411,-5457,-5504,-5552,-5604,-5663,-5725,-5786,-5845,-5907,-5977,-6059,-6143,-6217,-6277,-6334,
+-6395,-6461,-6528,-6600,-6677,-6755,-6827,-6895,-6964,-7033,-7097,-7152,-7203,-7251,-7294,-7338,-7386,-7440,-7499,-7561,-7622,
+-7671,-7706,-7740,-7787,-7849,-7912,-7977,-8053,-8142,-8235,-8321,-8405,-8490,-8572,-8653,-8735,-8820,-8900,-8973,-9045,-9119,
+-9193,-9260,-9315,-9346,-9340,-9312,-9301,-9326,-9358,-9373,-9405,-9513,-9689,-9843,-9896,-9868,-9836,-9845,-9878,-9906,-9930,
+-9962,-9996,-10021,-10038,-10055,-10074,-10094,-10115,-10141,-10168,-10184,-10180,-10154,-10115,-10073,-10040,-10016,-9981,-9920,-9834,-9743,
+-9662,
+-9594,-9534,-9473,-9408,-9340,-9276,-9222,-9167,-9092,-8995,-8888,-8786,-8688,-8583,-8468,-8348,-8230,-8120,-8021,-7931,-7832,
+-7706,-7551,-7386,-7228,-7073,-6909,-6736,-6576,-6448,-6352,-6269,-6188,-6103,-6011,-5900,-5769,-5630,-5496,-5358,-5199,-5018,
+-4836,-4675,-4532,-4390,-4237,-4077,-3920,-3772,-3626,-3480,-3341,-3218,-3100,-2961,-2800,-2664,-2611,-2646,-2705,-2703,-2588,
+-2352,-2044,-1773,-1641,-1653,-1705,-1678,-1530,-1288,-982,-636,-302,-47,106,196,271,356,457,570,682,776,
+852,932,1024,1117,1203,1299,1408,1514,1604,1692,1795,1900,1990,2065,2140,2216,2291,2376,2480,2588,2681,
+2765,2867,2987,3097,3183,3259,3339,3417,3487,3567,3673,3789,3885,3964,4059,4181,4299,4376,4422,4479,4568,
+4661,4728,4775,4825,4887,4962,5058,5182,5302,5364,5355,5320,5315,5352,5402,5426,5394,5312,5235,5246,5372,
+5558,5739,5914,6104,6273,6335,6276,6195,6217,6362,6527,6592,6521,6379,6261,6195,6126,5989,5785,5569,5372,
+5189,5027,4918,4881,4891,4915,4943,4966,4973,4993,5112,5393,5790,6178,6472,6672,6807,6896,6954,7012,7079,
+7125,7124,7098,7100,7146,7208,7258,7303,7365,7445,7521,7576,7619,7676,7767,7874,7950,7940,7827,7662,7527,
+7469,7460,7447,7424,7428,7473,7515,7511,7474,7442,7418,7374,7306,7247,7213,7171,7091,7004,6972,7023,7117,
+7195,7229,7235,7244,7268,7299,7323,7330,7323,7314,7320,7345,7375,7390,7406,7459,7547,7614,7606,7541,7480,
+7449,7422,7386,7366,7377,7384,7353,7301,7274,7278,7271,7225,7156,7097,7065,7056,7046,7004,6903,6757,6607,
+6484,6387,6300,6216,6140,6074,6027,6015,6044,6088,6100,6055,5977,5917,5905,5933,5971,6000,6013,6017,6012,
+5996,5971,5937,5901,5868,5834,5787,5722,5649,5583,5528,5473,5408,5340,5276,5209,5130,5046,4973,4911,4853,
+4795,4749,4715,4678,4619,4548,4491,4465,4457,4437,4390,4328,4272,4231,4197,4162,4127,4092,4052,4008,3971,
+3949,3936,3913,3879,3843,3815,3787,3748,3694,3634,3582,3544,3513,3474,3422,3365,3317,3280,3251,3225,3198,
+3171,3142,3105,3050,2973,2888,2816,2759,2710,2684,2718,2817,2915,2923,2831,2720,2673,2695,2721,2693,2609,
+2502,2413,2360,2341,2339,2336,2323,2296,2259,2220,2188,2162,2140,2122,2110,2096,2072,2046,2031,2032,2031,
+2017,1987,1947,1903,1875,1887,1926,1938,1888,1807,1759,1766,1785,1775,1741,1716,1716,1726,1733,1730,1718,
+1698,1674,1654,1634,1612,1589,1572,1564,1565,1571,1579,1584,1578,1559,1533,1504,1471,1442,1433,1449,1483,
+1522,1556,1579,1583,1563,1531,1499,1475,1458,1453,1461,1477,1487,1488,1489,1492,1493,1488,1481,1476,1467,
+1458,1458,1473,1492,1505,1513,1524,1534,1537,1536,1540,1546,1546,1543,1550,1566,1576,1572,1564,1561,1563,
+1562,1556,1553,1555,1561,1563,1557,1545,1533,1531,1534,1529,1512,1489,1468,1450,1431,1412,1399,1387,1372,
+1350,1324,1299,1277,1262,1251,1239,1222,1204,1187,1169,1149,1132,1121,1110,1094,1078,1064,1051,1032,1007,
+979,949,916,886,858,830,797,763,730,697,660,622,586,552,517,482,450,418,382,340,300,
+262,227,193,164,138,112,82,51,16,-19,-54,-88,-120,-154,-191,-229,-270,-313,-354,-390,-422,
+-455,-495,-535,-571,-602,-630,-659,-689,-720,-752,-784,-815,-846,-877,-907,-936,-965,-993,-1020,-1046,-1075,
+-1108,-1144,-1178,-1210,-1242,-1273,-1299,-1319,-1336,-1358,-1389,-1426,-1463,-1499,-1533,-1566,-1597,-1626,-1654,-1679,-1702,
+-1725,-1750,-1774,-1796,-1816,-1837,-1861,-1887,-1912,-1938,-1963,-1985,-2001,-2014,-2027,-2042,-2058,-2075,-2093,-2110,-2125,
+-2139,-2152,-2162,-2169,-2178,-2187,-2197,-2205,-2211,-2213,-2212,-2210,-2211,-2215,-2217,-2216,-2212,-2207,-2198,-2188,-2180,
+-2174,-2166,-2153,-2140,-2127,-2113,-2095,-2079,-2069,-2061,-2048,-2033,-2020,-2009,-1998,-1984,-1970,-1957,-1944,-1931,-1919,
+-1906,-1893,-1880,-1869,-1859,-1848,-1834,-1819,-1804,-1791,-1779,-1770,-1760,-1750,-1739,-1729,-1718,-1706,-1692,-1680,-1670,
+-1661,-1651,-1641,-1629,-1617,-1606,-1596,-1587,-1576,-1561,-1543,-1527,-1513,-1501,-1487,-1471,-1454,-1441,-1429,-1416,-1400,
+-1385,-1373,-1361,-1347,-1333,-1318,-1303,-1291,-1281,-1271,-1257,-1240,-1226,-1214,-1202,-1190,-1176,-1162,-1145,-1128,-1112,
+-1094,-1072,-1050,-1030,-1005,-972,-949,-950,-961,-947,-895,-826,-754,-668,-567,-480,-441,-443,-447,-435,-419,
+-408,-397,-381,-365,-351,-327,-295,-262,-233,-200,-163,-128,-92,-43,16,73,128,198,281,354,413,
+481,571,659,723,773,819,830,787,757,848,1087,1377,1595,1692,1701,1694,1772,2012,2376,2678,2725,
+2496,2148,1848,1652,1535,1481,1495,1557,1621,1668,1716,1781,1850,1896,1914,1927,1948,1969,1971,1950,1921,
+1892,1857,1800,1725,1657,1613,1585,1558,1523,1487,1457,1437,1424,1411,1384,1335,1264,1182,1093,995,894,
+798,710,626,544,468,399,334,267,200,133,61,-17,-92,-160,-227,-298,-370,-438,-502,-567,-632,
+-686,-718,-736,-756,-794,-846,-900,-951,-1010,-1090,-1188,-1285,-1367,-1439,-1510,-1580,-1642,-1700,-1768,-1847,-1924,
+-1981,-2012,-2022,-2022,-2034,-2075,-2145,-2227,-2301,-2360,-2403,-2420,-2403,-2361,-2322,-2303,-2298,-2298,-2308,-2335,-2369,
+-2385,-2372,-2341,-2313,-2307,-2332,-2381,-2430,-2453,-2452,-2448,-2448,-2445,-2438,-2447,-2476,-2501,-2500,-2489,-2500,-2531,
+-2544,-2516,-2464,-2418,-2384,-2347,-2298,-2243,-2203,-2187,-2189,-2185,-2160,-2133,-2140,-2187,-2239,-2258,-2237,-2194,-2139,
+-2072,-2001,-1936,-1884,-1842,-1807,-1777,-1740,-1685,-1614,-1541,-1479,-1429,-1387,-1343,-1296,-1250,-1213,-1181,-1138,-1077,
+-1011,-959,-924,-892,-852,-807,-761,-715,-671,-631,-592,-554,-515,-478,-441,-401,-360,-319,-279,-235,-186,
+-138,-96,-59,-26,8,49,103,168,227,269,291,301,314,337,367,397,417,426,428,429,429,
+432,444,467,500,537,569,591,607,624,651,688,722,743,753,762,777,796,818,842,871,909,
+954,1003,1053,1100,1151,1210,1277,1343,1397,1439,1477,1517,1557,1590,1618,1648,1685,1721,1744,1746,1735,
+1722,1717,1725,1746,1781,1829,1884,1935,1974,2003,2020,2024,2011,1989,1975,1976,1986,1996,2004,2007,2005,
+1998,1991,1989,1991,1989,1980,1968,1957,1948,1939,1928,1917,1907,1897,1887,1875,1864,1854,1842,1830,1817,
+1806,1795,1784,1775,1770,1767,1764,1759,1754,1752,1753,1758,1766,1773,1779,1788,1800,1807,1807,1802,1814,
+1804,1797,1789,1782,1782,1784,1777,1763,1752,1748,1743,1726,1703,1684,1672,1666,1658,1642,1616,1593,1589,
+1590,1566,1503,1428,1375,1351,1339,1333,1338,1350,1350,1322,1269,1208,1149,1086,1011,918,815,726,675,
+677,728,811,888,916,886,829,780,739,682,608,536,477,413,334,252,176,83,-46,-195,-314,
+-383,-434,-514,-630,-757,-872,-982,-1105,-1239,-1354,-1425,-1463,-1507,-1581,-1672,-1754,-1818,-1879,-1942,-1999,-2044,
+-2080,-2108,-2123,-2121,-2112,-2112,-2120,-2126,-2122,-2112,-2104,-2100,-2100,-2096,-2081,-2052,-2017,-1984,-1950,-1909,-1867,
+-1827,-1779,-1697,-1582,-1463,-1355,-1241,-1092,-915,-754,-644,-588,-576,-616,-721,-880,-1045,-1171,-1251,-1316,-1393,
+-1474,-1538,-1586,-1632,-1676,-1700,-1712,-1739,-1782,-1798,-1766,-1723,-1706,-1686,-1621,-1551,-1573,-1694,-1793,-1765,-1650,
+-1572,-1591,-1679,-1802,-1958,-2127,-2267,-2365,-2461,-2580,-2693,-2770,-2830,-2909,-3005,-3080,-3125,-3175,-3265,-3400,-3560,
+-3721,-3860,-3962,-4028,-4069,-4097,-4118,-4137,-4164,-4206,-4259,-4317,-4368,-4411,-4458,-4528,-4626,-4720,-4768,-4762,-4738,
+-4738,-4768,-4801,-4815,-4810,-4799,-4789,-4785,-4782,-4778,-4770,-4758,-4742,-4725,-4710,-4709,-4729,-4765,-4801,-4824,-4833,
+-4834,-4833,-4833,-4838,-4851,-4871,-4892,-4915,-4941,-4972,-5009,-5057,-5118,-5188,-5252,-5304,-5345,-5383,-5425,-5473,-5527,
+-5579,-5629,-5682,-5743,-5808,-5869,-5931,-6008,-6098,-6186,-6257,-6316,-6375,-6438,-6504,-6572,-6643,-6714,-6784,-6854,-6929,
+-7001,-7062,-7112,-7156,-7198,-7239,-7283,-7335,-7394,-7457,-7519,-7577,-7626,-7664,-7702,-7752,-7810,-7868,-7929,-8003,-8089,
+-8178,-8262,-8348,-8439,-8527,-8607,-8685,-8768,-8852,-8933,-9010,-9082,-9145,-9198,-9246,-9279,-9284,-9272,-9273,-9296,-9316,
+-9320,-9353,-9471,-9656,-9806,-9850,-9813,-9780,-9793,-9830,-9861,-9887,-9922,-9960,-9991,-10012,-10032,-10053,-10073,-10096,-10127,
+-10158,-10176,-10172,-10146,-10107,-10067,-10031,-9996,-9948,-9874,-9778,-9678,-9590,-9520,-9460,-9404,-9346,-9292,-9246,-9205,-9154,
+-9075,-8968,-8854,-8749,-8650,-8544,-8426,-8304,-8192,-8094,-8006,-7913,-7797,-7653,-7497,-7349,-7215,-7073,-6911,-6740,-6593,
+-6486,-6405,-6327,-6237,-6139,-6033,-5913,-5780,-5642,-5506,-5363,-5201,-5022,-4846,-4688,-4546,-4406,-4259,-4105,-3950,-3797,
+-3643,-3493,-3358,-3239,-3121,-2977,-2810,-2666,-2595,-2601,-2639,-2653,-2595,-2426,-2150,-1849,-1653,-1624,-1692,-1719,-1621,
+-1410,-1125,-792,-440,-117,124,270,346,400,473,578,690,780,852,933,1032,1135,1227,1317,1416,1517,
+1610,1702,1801,1899,1986,2066,2149,2231,2304,2380,2470,2571,2666,2756,2857,2970,3075,3159,3234,3310,3386,
+3460,3545,3649,3758,3850,3928,4015,4120,4221,4291,4343,4410,4503,4591,4648,4687,4740,4819,4912,5019,5141,
+5252,5308,5301,5279,5290,5329,5354,5338,5285,5223,5198,5256,5399,5571,5723,5872,6065,6273,6401,6399,6344,
+6361,6473,6584,6586,6467,6316,6221,6189,6163,6095,5996,5897,5800,5691,5588,5533,5534,5555,5564,5568,5562,
+5519,5449,5444,5599,5894,6200,6410,6522,6599,6681,6769,6859,6941,6996,7013,7008,7012,7037,7078,7130,7196,
+7270,7329,7358,7363,7374,7416,7494,7586,7654,7665,7613,7529,7457,7415,7390,7362,7347,7374,7445,7519,7553,
+7550,7536,7521,7498,7473,7464,7461,7413,7295,7144,7040,7027,7079,7140,7175,7188,7202,7229,7262,7290,7309,
+7327,7356,7402,7452,7483,7495,7517,7585,7688,7763,7759,7692,7614,7555,7504,7459,7434,7436,7434,7407,7368,
+7351,7355,7351,7314,7250,7185,7149,7156,7188,7202,7157,7055,6928,6800,6673,6551,6439,6337,6226,6107,6024,
+6030,6125,6235,6268,6197,6078,5992,5980,6018,6059,6076,6070,6057,6043,6024,5992,5950,5909,5875,5835,5772,
+5691,5616,5562,5513,5451,5376,5301,5227,5148,5064,4986,4920,4863,4816,4789,4776,4750,4690,4609,4544,4516,
+4508,4486,4436,4373,4316,4270,4226,4181,4140,4105,4069,4031,3994,3966,3942,3915,3885,3858,3832,3804,3770,
+3729,3683,3633,3583,3534,3487,3438,3387,3337,3297,3270,3250,3228,3200,3173,3146,3099,3019,2925,2852,2804,
+2746,2672,2636,2689,2797,2867,2849,2786,2747,2744,2736,2687,2601,2507,2428,2377,2350,2337,2327,2314,2295,
+2267,2234,2205,2185,2168,2149,2130,2110,2084,2056,2036,2030,2024,2007,1980,1948,1914,1889,1885,1902,1911,
+1889,1857,1859,1899,1928,1901,1829,1759,1724,1723,1734,1742,1737,1719,1695,1673,1651,1628,1603,1583,1569,
+1563,1564,1571,1580,1583,1578,1570,1558,1537,1511,1492,1488,1499,1516,1535,1552,1559,1550,1531,1511,1493,
+1479,1470,1473,1481,1485,1484,1486,1494,1499,1496,1487,1477,1463,1449,1444,1455,1472,1487,1501,1519,1534,
+1541,1546,1558,1568,1563,1548,1542,1553,1565,1567,1563,1558,1551,1541,1536,1541,1548,1549,1542,1533,1525,
+1519,1519,1522,1520,1506,1484,1462,1443,1425,1412,1404,1395,1377,1352,1326,1301,1278,1258,1244,1234,1221,
+1205,1188,1170,1150,1131,1113,1094,1075,1057,1042,1026,1006,984,960,932,901,871,844,819,791,760,
+729,696,660,623,590,559,528,497,469,443,411,371,329,289,251,215,182,152,122,89,53,
+18,-15,-47,-79,-111,-147,-185,-225,-266,-309,-348,-380,-407,-438,-478,-520,-560,-595,-626,-654,-678,
+-702,-728,-757,-788,-822,-857,-891,-921,-948,-973,-1000,-1030,-1062,-1098,-1134,-1167,-1199,-1229,-1257,-1278,-1293,
+-1311,-1335,-1368,-1405,-1443,-1478,-1512,-1544,-1573,-1602,-1630,-1654,-1676,-1698,-1723,-1747,-1769,-1789,-1810,-1833,-1855,
+-1877,-1901,-1926,-1948,-1966,-1980,-1993,-2008,-2024,-2041,-2058,-2074,-2089,-2102,-2113,-2121,-2130,-2139,-2151,-2163,-2174,
+-2182,-2184,-2182,-2180,-2182,-2185,-2185,-2181,-2177,-2172,-2163,-2151,-2142,-2136,-2129,-2118,-2105,-2093,-2080,-2064,-2051,
+-2040,-2030,-2016,-2001,-1989,-1981,-1971,-1959,-1944,-1930,-1916,-1902,-1889,-1877,-1864,-1853,-1843,-1835,-1824,-1813,-1800,
+-1788,-1775,-1761,-1749,-1739,-1729,-1718,-1708,-1698,-1688,-1677,-1666,-1657,-1649,-1641,-1629,-1616,-1604,-1594,-1586,-1576,
+-1565,-1553,-1538,-1522,-1509,-1499,-1487,-1471,-1454,-1440,-1428,-1414,-1400,-1389,-1380,-1368,-1354,-1341,-1329,-1317,-1304,
+-1294,-1284,-1271,-1256,-1243,-1232,-1219,-1203,-1188,-1175,-1161,-1145,-1129,-1112,-1091,-1068,-1047,-1023,-992,-963,-951,
+-954,-956,-947,-928,-892,-819,-718,-631,-594,-595,-589,-559,-523,-496,-477,-459,-438,-415,-382,-341,-300,
+-263,-224,-183,-145,-104,-54,2,55,110,179,260,329,385,449,535,618,678,723,757,761,732,
+738,874,1153,1476,1728,1855,1873,1840,1861,2038,2360,2653,2703,2461,2081,1760,1577,1497,1471,1488,1536,
+1587,1630,1688,1774,1862,1912,1921,1923,1941,1962,1957,1927,1896,1875,1848,1793,1721,1658,1616,1584,1548,
+1510,1479,1460,1451,1447,1442,1422,1378,1313,1234,1145,1045,941,844,754,668,585,509,446,391,336,
+274,201,115,27,-51,-119,-188,-265,-345,-415,-478,-542,-609,-667,-706,-729,-752,-789,-840,-895,-949,
+-1011,-1092,-1190,-1288,-1374,-1447,-1512,-1568,-1615,-1665,-1733,-1815,-1890,-1935,-1945,-1934,-1928,-1951,-2020,-2122,-2226,
+-2306,-2358,-2385,-2384,-2349,-2299,-2264,-2258,-2263,-2267,-2280,-2316,-2362,-2387,-2376,-2345,-2321,-2316,-2333,-2367,-2403,
+-2425,-2429,-2427,-2421,-2404,-2383,-2388,-2428,-2474,-2487,-2476,-2482,-2514,-2539,-2527,-2489,-2461,-2453,-2442,-2403,-2333,
+-2254,-2196,-2168,-2154,-2125,-2082,-2056,-2075,-2129,-2174,-2182,-2149,-2087,-2012,-1938,-1878,-1837,-1807,-1779,-1749,-1711,
+-1659,-1589,-1505,-1423,-1358,-1315,-1281,-1241,-1198,-1167,-1149,-1128,-1086,-1035,-996,-973,-950,-917,-876,-836,-795,
+-752,-710,-671,-636,-604,-575,-546,-513,-478,-445,-410,-366,-314,-265,-229,-203,-178,-150,-116,-75,-25,
+25,64,88,104,122,150,185,221,249,266,276,288,304,322,345,378,421,467,507,533,549,
+564,585,614,645,674,704,737,773,806,835,864,896,934,977,1021,1062,1101,1144,1197,1252,1297,
+1329,1358,1397,1446,1492,1528,1553,1574,1597,1621,1643,1659,1668,1675,1684,1700,1724,1763,1820,1888,1951,
+1997,2023,2035,2034,2023,2007,1995,1991,1990,1993,1998,2004,2003,1993,1982,1977,1976,1974,1965,1955,1946,
+1939,1932,1921,1910,1899,1887,1873,1859,1848,1838,1825,1810,1799,1792,1787,1780,1773,1769,1765,1761,1757,
+1755,1753,1753,1760,1774,1790,1802,1813,1824,1830,1825,1814,1818,1806,1804,1807,1812,1815,1812,1796,1774,
+1756,1746,1732,1709,1684,1667,1660,1656,1648,1626,1590,1553,1533,1525,1503,1455,1395,1348,1315,1292,1282,
+1288,1288,1257,1197,1142,1112,1092,1043,949,829,721,649,613,606,630,687,759,811,823,810,793,
+764,703,617,536,478,423,355,280,207,120,-2,-145,-266,-348,-418,-511,-628,-744,-844,-939,-1045,
+-1163,-1271,-1356,-1422,-1490,-1571,-1657,-1732,-1790,-1842,-1898,-1957,-2012,-2058,-2088,-2097,-2090,-2085,-2092,-2104,-2108,
+-2101,-2090,-2082,-2078,-2079,-2081,-2075,-2053,-2019,-1985,-1950,-1905,-1855,-1814,-1778,-1721,-1633,-1533,-1434,-1315,-1143,
+-934,-750,-643,-612,-630,-684,-779,-904,-1030,-1136,-1228,-1326,-1435,-1531,-1591,-1626,-1660,-1698,-1725,-1740,-1764,
+-1800,-1816,-1795,-1763,-1743,-1703,-1623,-1568,-1634,-1795,-1896,-1826,-1654,-1542,-1565,-1677,-1823,-1989,-2158,-2291,-2382,
+-2474,-2591,-2705,-2784,-2845,-2922,-3004,-3058,-3095,-3165,-3303,-3489,-3674,-3827,-3934,-4000,-4041,-4073,-4097,-4110,-4122,
+-4152,-4209,-4278,-4344,-4396,-4437,-4479,-4537,-4617,-4696,-4741,-4740,-4721,-4719,-4740,-4765,-4776,-4775,-4772,-4769,-4760,
+-4746,-4731,-4721,-4713,-4701,-4684,-4669,-4670,-4693,-4730,-4767,-4792,-4805,-4810,-4813,-4814,-4817,-4822,-4834,-4856,-4884,
+-4916,-4948,-4984,-5029,-5085,-5147,-5207,-5262,-5309,-5349,-5390,-5440,-5497,-5547,-5588,-5630,-5688,-5760,-5828,-5890,-5962,
+-6050,-6143,-6224,-6291,-6354,-6419,-6484,-6547,-6609,-6674,-6742,-6815,-6890,-6957,-7011,-7055,-7099,-7144,-7188,-7233,-7284,
+-7344,-7408,-7470,-7526,-7576,-7619,-7665,-7717,-7773,-7827,-7884,-7954,-8036,-8120,-8205,-8297,-8394,-8485,-8562,-8637,-8719,
+-8805,-8888,-8963,-9028,-9081,-9129,-9174,-9208,-9222,-9221,-9232,-9256,-9270,-9272,-9312,-9439,-9622,-9761,-9793,-9754,-9726,
+-9744,-9786,-9823,-9856,-9897,-9938,-9968,-9989,-10009,-10029,-10048,-10071,-10101,-10132,-10150,-10144,-10118,-10083,-10046,-10006,-9957,
+-9893,
+-9809-9709,-9607,-9514,-9439,-9379,-9330,-9286,-9244,-9206,-9167,-9115,-9035,-8931,-8823,-8723,-8625,-8517,-8397,-8277,
+-8171,-8079,-7989,-7879,-7735,-7568,-7411,-7288,-7186,-7068,-6916,-6755,-6626,-6537,-6463,-6376,-6270,-6155,-6037,-5912,-5780,
+-5647,-5512,-5368,-5207,-5032,-4859,-4703,-4565,-4433,-4294,-4145,-3989,-3831,-3673,-3518,-3378,-3255,-3133,-2991,-2831,-2694,
+-2616,-2593,-2597,-2599,-2572,-2470,-2257,-1971,-1732,-1639,-1671,-1716,-1675,-1527,-1294,-987,-614,-223,108,323,419,
+452,491,570,677,776,859,944,1044,1152,1252,1343,1431,1520,1609,1702,1800,1895,1981,2064,2152,2238,
+2316,2390,2472,2563,2654,2744,2842,2949,3053,3142,3215,3283,3352,3426,3511,3609,3710,3805,3893,3986,4086,
+4178,4246,4299,4362,4445,4526,4582,4621,4674,4755,4850,4951,5056,5152,5207,5220,5232,5274,5322,5325,5268,
+5191,5141,5157,5257,5427,5614,5767,5905,6082,6296,6463,6511,6476,6457,6487,6504,6433,6290,6165,6125,6153,
+6182,6173,6141,6112,6084,6043,6004,6001,6036,6075,6098,6111,6108,6051,5943,5870,5921,6077,6224,6282,6284,
+6314,6404,6523,6639,6740,6828,6897,6944,6969,6978,6988,7017,7073,7136,7181,7200,7206,7214,7229,7245,7256,
+7258,7255,7259,7276,7299,7310,7298,7275,7269,7300,7363,7432,7481,7501,7500,7494,7495,7518,7558,7588,7560,
+7452,7293,7150,7072,7062,7087,7111,7123,7131,7148,7177,7218,7272,7343,7428,7510,7566,7584,7580,7594,7653,
+7738,7800,7809,7777,7733,7687,7639,7596,7576,7574,7569,7550,7530,7522,7516,7495,7453,7396,7332,7276,7251,
+7260,7276,7268,7226,7159,7069,6952,6825,6715,6621,6503,6340,6182,6116,6182,6312,6389,6346,6221,6106,6060,
+6076,6107,6121,6113,6097,6082,6069,6046,6007,5959,5916,5874,5814,5733,5651,5589,5540,5481,5405,5324,5246,
+5168,5088,5014,4951,4898,4860,4843,4837,4812,4748,4665,4600,4570,4555,4526,4475,4415,4360,4307,4253,4204,
+4166,4136,4103,4064,4026,3996,3970,3944,3916,3887,3855,3820,3788,3761,3732,3689,3633,3573,3517,3467,3419,
+3370,3327,3297,3280,3263,3239,3214,3191,3150,3071,2973,2898,2857,2810,2729,2655,2651,2715,2785,2810,2802,
+2788,2766,2715,2638,2556,2485,2432,2398,2382,2373,2358,2336,2311,2282,2253,2229,2213,2195,2168,2139,2113,
+2087,2057,2030,2013,2001,1985,1966,1947,1927,1904,1887,1884,1887,1882,1882,1913,1969,2001,1968,1882,1792,
+1739,1725,1734,1746,1748,1732,1706,1678,1651,1623,1597,1581,1578,1581,1584,1586,1587,1589,1594,1605,1617,
+1614,1590,1556,1527,1513,1511,1517,1527,1534,1535,1528,1520,1512,1502,1492,1487,1488,1489,1491,1497,1505,
+1508,1502,1493,1483,1470,1452,1440,1440,1451,1466,1485,1507,1525,1535,1545,1559,1569,1563,1549,1542,1547,
+1554,1555,1551,1541,1525,1510,1510,1524,1535,1530,1515,1506,1505,1506,1505,1505,1502,1494,1479,1460,1439,
+1421,1410,1404,1396,1377,1353,1329,1306,1281,1257,1241,1231,1220,1204,1187,1172,1155,1133,1109,1084,1062,
+1042,1023,1003,982,961,940,915,885,855,829,805,780,752,723,691,655,621,592,566,538,510,
+486,463,434,395,352,309,269,230,194,163,130,95,57,21,-11,-43,-75,-110,-148,-190,-232,
+-274,-314,-351,-381,-406,-436,-473,-513,-551,-587,-620,-648,-670,-687,-706,-729,-758,-792,-829,-866,-899,
+-926,-953,-981,-1012,-1046,-1081,-1116,-1148,-1179,-1211,-1239,-1260,-1277,-1297,-1325,-1357,-1391,-1425,-1458,-1489,-1517,
+-1544,-1573,-1602,-1628,-1651,-1674,-1700,-1725,-1747,-1768,-1789,-1810,-1829,-1847,-1868,-1890,-1911,-1931,-1948,-1964,-1980,
+-1997,-2014,-2031,-2044,-2056,-2066,-2076,-2084,-2092,-2102,-2114,-2127,-2140,-2150,-2154,-2153,-2152,-2154,-2155,-2152,-2147,
+-2142,-2138,-2130,-2119,-2110,-2103,-2095,-2085,-2072,-2060,-2046,-2032,-2019,-2008,-1996,-1982,-1969,-1958,-1949,-1939,-1928,
+-1916,-1904,-1891,-1877,-1864,-1850,-1837,-1825,-1816,-1806,-1796,-1786,-1777,-1767,-1755,-1741,-1728,-1718,-1708,-1697,-1686,
+-1676,-1669,-1660,-1650,-1641,-1635,-1629,-1618,-1604,-1592,-1584,-1575,-1564,-1552,-1542,-1530,-1516,-1502,-1491,-1481,-1468,
+-1453,-1439,-1428,-1414,-1402,-1393,-1386,-1374,-1359,-1347,-1338,-1328,-1316,-1304,-1292,-1279,-1266,-1256,-1247,-1233,-1215,
+-1200,-1190,-1178,-1162,-1145,-1128,-1108,-1084,-1062,-1040,-1014,-985,-964,-953,-948,-948,-950,-943,-903,-832,-765,
+-734,-726,-707,-664,-616,-580,-554,-526,-496,-461,-422,-376,-331,-288,-247,-205,-162,-116,-64,-9,41,
+94,157,229,293,350,413,487,557,614,660,691,688,664,693,856,1151,1485,1755,1915,1965,1941,
+1933,2058,2350,2672,2791,2591,2182,1783,1540,1447,1434,1457,1501,1555,1611,1678,1765,1852,1904,1918,1923,
+1939,1951,1938,1907,1883,1870,1845,1794,1731,1678,1638,1599,1557,1523,1501,1489,1480,1474,1469,1450,1408,
+1343,1266,1179,1082,983,888,801,716,634,564,509,465,414,347,261,161,63,-20,-92,-164,-242,
+-321,-390,-451,-517,-589,-654,-701,-732,-761,-802,-853,-909,-963,-1023,-1100,-1190,-1285,-1374,-1451,-1513,-1556,
+-1586,-1623,-1684,-1761,-1824,-1848,-1834,-1806,-1801,-1847,-1949,-2079,-2196,-2276,-2319,-2335,-2321,-2279,-2231,-2207,-2212,
+-2225,-2230,-2240,-2273,-2318,-2344,-2339,-2320,-2311,-2317,-2334,-2359,-2387,-2409,-2418,-2421,-2420,-2407,-2388,-2391,-2429,
+-2474,-2488,-2472,-2468,-2494,-2523,-2524,-2509,-2514,-2544,-2568,-2551,-2483,-2381,-2277,-2203,-2163,-2133,-2088,-2034,-2002,
+-2007,-2030,-2040,-2023,-1980,-1918,-1848,-1786,-1743,-1717,-1698,-1678,-1657,-1633,-1597,-1531,-1439,-1348,-1288,-1259,-1237,
+-1207,-1178,-1162,-1151,-1130,-1098,-1069,-1044,-1014,-975,-935,-900,-866,-827,-785,-748,-716,-691,-671,-651,-624,
+-591,-560,-528,-487,-434,-385,-352,-332,-311,-285,-257,-228,-195,-158,-123,-91,-61,-30,5,47,92,
+132,163,189,217,253,294,335,378,424,471,511,539,554,565,579,599,625,658,699,745,786,
+815,837,860,887,920,958,998,1038,1078,1125,1182,1238,1277,1298,1316,1347,1387,1425,1453,1475,1493,
+1510,1530,1558,1591,1625,1657,1686,1714,1741,1776,1824,1882,1936,1974,1995,2003,2006,2007,2009,2010,2007,
+1999,1992,1991,1994,1994,1986,1976,1968,1963,1957,1948,1939,1933,1929,1924,1916,1905,1893,1878,1860,1843,
+1832,1821,1807,1789,1778,1776,1775,1771,1767,1765,1761,1756,1754,1757,1760,1761,1769,1788,1810,1823,1830,
+1837,1841,1834,1818,1819,1809,1812,1825,1836,1838,1828,1807,1781,1757,1738,1716,1690,1668,1653,1641,1628,
+1614,1592,1555,1510,1472,1449,1427,1396,1358,1318,1279,1245,1228,1222,1198,1137,1060,1019,1029,1048,1016,
+913,773,652,579,546,534,535,562,617,681,730,758,769,753,698,614,537,484,440,383,314,
+241,153,38,-94,-215,-312,-403,-509,-624,-730,-822,-911,-1005,-1101,-1192,-1280,-1367,-1455,-1545,-1633,-1709,
+-1766,-1805,-1842,-1890,-1952,-2012,-2050,-2061,-2058,-2060,-2075,-2087,-2083,-2069,-2059,-2058,-2058,-2055,-2053,-2047,-2028,
+-1997,-1964,-1929,-1883,-1830,-1787,-1757,-1717,-1651,-1570,-1486,-1370,-1184,-953,-758,-661,-654,-694,-755,-835,-930,
+-1023,-1113,-1216,-1341,-1472,-1573,-1629,-1656,-1686,-1723,-1753,-1770,-1791,-1822,-1840,-1823,-1783,-1741,-1691,-1632,-1625,
+-1728,-1887,-1950,-1837,-1646,-1543,-1585,-1707,-1848,-2002,-2166,-2305,-2403,-2495,-2608,-2723,-2811,-2878,-2940,-2989,-3019,
+-3064,-3178,-3367,-3580,-3764,-3895,-3977,-4023,-4051,-4076,-4094,-4100,-4107,-4141,-4210,-4295,-4370,-4425,-4465,-4500,-4538,
+-4589,-4644,-4682,-4692,-4686,-4688,-4702,-4717,-4723,-4727,-4735,-4742,-4735,-4715,-4693,-4681,-4674,-4663,-4645,-4631,-4634,
+-4658,-4695,-4730,-4756,-4774,-4788,-4798,-4802,-4798,-4792,-4796,-4817,-4851,-4887,-4919,-4953,-4998,-5054,-5112,-5167,-5220,
+-5268,-5311,-5351,-5399,-5456,-5508,-5547,-5583,-5637,-5711,-5789,-5859,-5930,-6011,-6097,-6179,-6252,-6321,-6389,-6453,-6514,
+-6575,-6639,-6707,-6779,-6850,-6910,-6958,-7002,-7051,-7103,-7150,-7192,-7238,-7294,-7356,-7418,-7475,-7527,-7576,-7627,-7681,
+-7733,-7782,-7837,-7905,-7984,-8066,-8153,-8250,-8349,-8437,-8513,-8589,-8673,-8759,-8835,-8900,-8957,-9011,-9065,-9117,-9156,
+-9171,-9173,-9185,-9207,-9220,-9230,-9286,-9421,-9593,-9711,-9733,-9699,-9683,-9708,-9753,-9797,-9840,-9885,-9924,-9949,-9964,
+-9979,-9995,-10009,-10027,-10054,-10084,-10100,-10093,-10068,-10037,-10000,-9953,-9888,-9809,-9719,-9625,-9530,-9439,-9360,-9299,-9254,
+-9215,-9176,-9133,-9088,-9035,-8967,-8885,-8797,-8710,-8616,-8508,-8386,-8268,-8162,-8066,-7963,-7832,-7668,-7489,-7336,-7232,
+-7155,-7057,-6918,-6770,-6656,-6577,-6498,-6394,-6268,-6142,-6020,-5898,-5773,-5645,-5514,-5373,-5215,-5044,-4872,-4716,-4582,
+-4460,-4332,-4187,-4030,-3871,-3712,-3557,-3411,-3281,-3154,-3013,-2864,-2738,-2660,-2617,-2584,-2551,-2520,-2463,-2331,-2115,
+-1885,-1736,-1694,-1702,-1683,-1593,-1418,-1143,-767,-340,52,330,471,514,531,577,663,767,864,954,1052,
+1164,1277,1375,1456,1526,1601,1688,1786,1884,1973,2056,2140,2229,2317,2401,2483,2565,2649,2736,2828,2928,
+3028,3120,3196,3259,3321,3392,3474,3561,3652,3746,3842,3937,4031,4117,4187,4242,4296,4366,4446,4514,4565,
+4616,4681,4759,4847,4946,5043,5112,5152,5198,5270,5335,5334,5261,5168,5117,5138,5249,5446,5686,5901,6066,
+6217,6379,6510,6550,6508,6449,6412,6363,6259,6122,6027,6023,6085,6145,6161,6143,6125,6118,6115,6123,6159,
+6222,6288,6341,6380,6393,6349,6254,6171,6152,6164,6125,6021,5934,5953,6077,6236,6376,6493,6607,6719,6812,
+6866,6878,6874,6886,6927,6979,7021,7055,7088,7112,7106,7068,7011,6959,6937,6971,7058,7154,7210,7212,7189,
+7175,7183,7210,7255,7309,7350,7364,7366,7383,7428,7487,7532,7536,7480,7370,7241,7145,7109,7121,7140,7140,
+7124,7113,7124,7166,7242,7347,7465,7566,7628,7648,7650,7666,7707,7756,7791,7809,7822,7830,7819,7790,7765,
+7763,7775,7778,7768,7759,7751,7726,7678,7622,7571,7516,7448,7380,7333,7309,7301,7298,7284,7232,7130,7009,
+6918,6862,6788,6644,6457,6316,6282,6326,6358,6321,6237,6164,6134,6136,6145,6150,6147,6136,6121,6108,6093,
+6062,6013,5958,5906,5848,5773,5688,5616,5559,5502,5433,5356,5279,5202,5126,5056,4997,4952,4921,4906,4894,
+4860,4791,4708,4645,4613,4591,4554,4503,4450,4399,4344,4288,4242,4213,4187,4150,4103,4063,4037,4017,3992,
+3959,3923,3886,3850,3820,3797,3773,3735,3682,3622,3565,3514,3466,3416,3366,3326,3303,3291,3277,3257,3231,
+3189,3116,3025,2953,2913,2874,2807,2727,2681,2685,2715,2750,2784,2803,2779,2708,2622,2551,2497,2451,2423,
+2418,2421,2409,2377,2340,2306,2278,2256,2240,2220,2188,2150,2118,2092,2061,2026,1999,1982,1970,1958,1949,
+1941,1926,1906,1890,1880,1871,1870,1893,1932,1948,1914,1844,1780,1745,1737,1742,1750,1749,1730,1701,1674,
+1651,1623,1592,1573,1577,1595,1611,1616,1614,1611,1612,1623,1641,1648,1629,1588,1549,1528,1523,1526,1529,
+1532,1532,1528,1522,1518,1514,1508,1503,1500,1501,1504,1509,1512,1511,1504,1495,1489,1478,1460,1441,1431,
+1435,1448,1468,1489,1506,1517,1526,1537,1545,1543,1538,1537,1540,1541,1538,1532,1521,1501,1484,1485,1502,
+1512,1504,1488,1482,1486,1490,1487,1483,1481,1477,1470,1457,1440,1422,1409,1402,1394,1376,1353,1329,1306,
+1280,1256,1240,1229,1217,1199,1182,1168,1151,1129,1102,1076,1052,1029,1007,986,965,945,924,899,869,
+839,813,790,766,739,711,680,648,617,591,566,539,512,486,463,434,397,357,316,275,236,
+200,169,138,103,65,27,-8,-42,-77,-114,-156,-201,-244,-284,-322,-356,-385,-412,-441,-474,-508,
+-540,-573,-608,-639,-662,-678,-692,-708,-731,-762,-800,-838,-872,-903,-932,-962,-993,-1025,-1058,-1089,-1118,
+-1149,-1181,-1212,-1237,-1259,-1285,-1317,-1349,-1379,-1407,-1436,-1463,-1486,-1510,-1539,-1571,-1600,-1625,-1651,-1678,-1705,
+-1727,-1747,-1765,-1783,-1800,-1817,-1835,-1854,-1874,-1895,-1916,-1935,-1952,-1969,-1987,-2002,-2013,-2021,-2030,-2040,-2050,
+-2059,-2068,-2078,-2090,-2102,-2112,-2119,-2121,-2121,-2121,-2120,-2116,-2108,-2103,-2099,-2094,-2087,-2079,-2071,-2062,-2051,
+-2038,-2024,-2010,-1997,-1984,-1973,-1961,-1949,-1938,-1926,-1915,-1903,-1893,-1884,-1874,-1863,-1851,-1839,-1826,-1812,-1799,
+-1789,-1779,-1768,-1757,-1748,-1740,-1730,-1718,-1706,-1697,-1688,-1678,-1666,-1656,-1650,-1643,-1632,-1622,-1616,-1612,-1604,
+-1592,-1580,-1573,-1563,-1550,-1538,-1529,-1521,-1509,-1495,-1482,-1472,-1460,-1448,-1439,-1430,-1418,-1406,-1398,-1391,-1380,
+-1364,-1352,-1344,-1337,-1326,-1314,-1301,-1288,-1274,-1265,-1256,-1244,-1228,-1216,-1208,-1197,-1180,-1162,-1146,-1126,-1102,
+-1079,-1058,-1036,-1011,-987,-967,-949,-933,-926,-924,-909,-871,-827,-797,-777,-747,-702,-657,-622,-591,-556,
+-516,-478,-439,-396,-351,-307,-267,-224,-178,-127,-74,-21,29,83,140,202,264,327,388,446,499,
+555,609,639,626,598,635,805,1086,1389,1629,1778,1849,1870,1901,2041,2343,2710,2912,2773,2341,1850,
+1517,1386,1375,1403,1450,1518,1598,1675,1752,1826,1887,1925,1946,1956,1952,1930,1904,1891,1882,1855,1804,
+1748,1702,1660,1616,1576,1552,1541,1529,1513,1499,1489,1468,1425,1360,1284,1199,1107,1013,924,842,763,
+688,628,583,542,486,406,305,195,89,-1,-78,-148,-217,-285,-350,-416,-492,-572,-643,-697,-739,
+-783,-835,-892,-946,-996,-1052,-1120,-1202,-1292,-1382,-1459,-1514,-1545,-1563,-1590,-1638,-1697,-1740,-1747,-1719,-1686,
+-1688,-1751,-1868,-2002,-2116,-2192,-2234,-2247,-2232,-2198,-2164,-2151,-2159,-2167,-2168,-2175,-2203,-2244,-2271,-2276,-2276,
+-2287,-2305,-2322,-2342,-2368,-2394,-2411,-2425,-2442,-2453,-2456,-2464,-2491,-2520,-2520,-2494,-2476,-2487,-2506,-2513,-2525,
+-2570,-2640,-2692,-2692,-2635,-2533,-2409,-2298,-2229,-2197,-2162,-2101,-2026,-1968,-1935,-1918,-1903,-1880,-1836,-1768,-1689,
+-1627,-1594,-1582,-1575,-1577,-1593,-1608,-1585,-1504,-1396,-1316,-1290,-1293,-1287,-1262,-1236,-1216,-1197,-1170,-1136,-1094,
+-1046,-995,-953,-920,-890,-855,-819,-785,-754,-727,-708,-690,-664,-631,-598,-569,-535,-491,-448,-418,-399,
+-379,-352,-325,-300,-275,-245,-210,-170,-128,-89,-52,-13,31,78,119,155,191,235,285,333,378,
+418,456,489,515,531,542,554,572,598,632,675,720,755,777,792,811,836,866,900,941,983,
+1025,1071,1128,1187,1233,1259,1279,1305,1336,1364,1391,1420,1448,1473,1500,1534,1576,1620,1661,1700,1735,
+1763,1790,1823,1864,1903,1935,1956,1967,1974,1984,1998,2010,2010,1999,1987,1982,1980,1977,1972,1967,1962,
+1956,1948,1939,1930,1922,1916,1911,1903,1893,1881,1867,1850,1834,1822,1813,1801,1784,1772,1768,1766,1762,
+1759,1759,1757,1752,1751,1758,1767,1773,1783,1805,1827,1838,1839,1839,1841,1834,1819,1819,1813,1822,1836,
+1842,1834,1816,1794,1772,1750,1727,1701,1675,1654,1632,1607,1579,1559,1541,1512,1466,1416,1376,1350,1328,
+1301,1264,1221,1183,1161,1142,1095,1014,939,921,964,1013,1003,911,767,625,525,476,462,462,476,
+515,575,639,689,715,708,666,601,538,493,456,407,342,267,182,79,-39,-158,-272,-387,-509,
+-625,-722,-807,-894,-985,-1069,-1146,-1227,-1319,-1412,-1502,-1589,-1669,-1727,-1753,-1765,-1793,-1851,-1923,-1980,-2009,
+-2019,-2030,-2049,-2060,-2051,-2032,-2024,-2028,-2030,-2023,-2016,-2012,-2000,-1975,-1942,-1906,-1861,-1808,-1762,-1729,-1689,
+-1626,-1557,-1488,-1383,-1199,-964,-772,-688,-692,-732,-785,-859,-946,-1030,-1113,-1219,-1353,-1489,-1589,-1643,-1672,
+-1704,-1744,-1777,-1796,-1814,-1844,-1866,-1853,-1805,-1748,-1703,-1684,-1723,-1833,-1952,-1965,-1832,-1655,-1572,-1620,-1730,
+-1850,-1989,-2154,-2310,-2426,-2519,-2623,-2740,-2845,-2924,-2968,-2979,-2986,-3051,-3214,-3439,-3653,-3813,-3920,-3990,-4031,
+-4052,-4067,-4078,-4083,-4094,-4135,-4212,-4302,-4379,-4436,-4478,-4507,-4529,-4555,-4590,-4619,-4633,-4636,-4642,-4654,-4663,
+-4666,-4672,-4686,-4698,-4695,-4676,-4656,-4644,-4636,-4622,-4603,-4591,-4598,-4625,-4661,-4693,-4718,-4738,-4757,-4772,-4775,
+-4765,-4750,-4749,-4771,-4807,-4842,-4868,-4899,-4948,-5012,-5076,-5130,-5179,-5227,-5271,-5311,-5355,-5409,-5464,-5510,-5549,
+-5599,-5668,-5749,-5828,-5902,-5976,-6053,-6132,-6207,-6279,-6346,-6411,-6475,-6540,-6606,-6673,-6741,-6808,-6867,-6916,-6963,
+-7014,-7068,-7115,-7155,-7196,-7247,-7306,-7368,-7428,-7485,-7539,-7591,-7641,-7687,-7734,-7790,-7859,-7936,-8016,-8102,-8198,
+-8295,-8381,-8460,-8542,-8629,-8711,-8776,-8829,-8881,-8941,-9008,-9072,-9116,-9132,-9134,-9142,-9156,-9166,-9189,-9264,-9405,
+-9562,-9658,-9673,-9652,-9652,-9684,-9729,-9774,-9821,-9867,-9900,-9918,-9928,-9939,-9949,-9956,-9967,-9988,-10015,-10031,-10026,
+-10004,-9974,-9936,-9881,-9805,-9716,-9627,-9545,-9463,-9376,-9290,-9216,-9162,-9120,-9078,-9033,-8989,-8947,-8900,-8844,-8779,
+-8706,-8617,-8506,-8382,-8261,-8148,-8039,-7921,-7784,-7623,-7455,-7312,-7214,-7141,-7047,-6915,-6776,-6667,-6584,-6491,-6370,
+-6236,-6111,-5996,-5881,-5763,-5642,-5514,-5374,-5220,-5056,-4889,-4734,-4602,-4486,-4365,-4223,-4065,-3905,-3749,-3595,-3450,
+-3317,-3187,-3045,-2899,-2778,-2700,-2644,-2578,-2501,-2438,-2397,-2342,-2231,-2069,-1906,-1786,-1714,-1663,-1593,-1465,-1238,
+-898,-484,-69,266,482,580,605,619,667,754,854,951,1052,1168,1292,1400,1476,1530,1586,1662,1758,
+1861,1955,2038,2118,2209,2309,2406,2490,2567,2647,2734,2823,2912,3003,3093,3172,3236,3296,3364,3438,3515,
+3596,3687,3781,3868,3948,4027,4102,4163,4214,4277,4361,4448,4514,4557,4596,4648,4729,4843,4969,5067,5128,
+5186,5270,5348,5366,5313,5232,5171,5158,5231,5430,5732,6040,6257,6372,6433,6467,6459,6410,6355,6316,6267,
+6175,6050,5951,5923,5956,6000,6013,5996,5979,5984,6008,6044,6098,6173,6254,6324,6370,6383,6356,6298,6238,
+6180,6078,5899,5693,5576,5618,5780,5966,6116,6231,6337,6447,6548,6616,6644,6654,6682,6742,6813,6875,6934,
+6994,7031,7020,6963,6890,6830,6807,6848,6953,7072,7141,7140,7102,7065,7039,7031,7061,7128,7196,7228,7235,
+7252,7289,7333,7372,7405,7413,7372,7293,7233,7235,7284,7324,7319,7280,7239,7221,7232,7280,7359,7457,7550,
+7622,7672,7709,7744,7774,7793,7801,7818,7853,7889,7901,7888,7883,7906,7940,7955,7950,7940,7925,7884,7816,
+7747,7698,7656,7599,7525,7452,7400,7377,7380,7380,7337,7233,7109,7025,6996,6970,6883,6732,6573,6452,6364,
+6278,6196,6147,6149,6175,6188,6179,6172,6178,6182,6171,6149,6128,6102,6058,5998,5937,5879,5813,5735,5657,
+5591,5531,5469,5403,5334,5260,5182,5110,5052,5012,4986,4969,4946,4899,4824,4741,4679,4644,4616,4576,4526,
+4477,4430,4378,4326,4288,4264,4235,4187,4130,4089,4071,4057,4029,3988,3948,3916,3890,3866,3841,3810,3770,
+3724,3675,3623,3571,3521,3468,3410,3353,3316,3304,3299,3284,3253,3208,3148,3078,3017,2971,2926,2863,2788,
+2725,2688,2680,2704,2752,2786,2771,2714,2655,2612,2565,2501,2449,2437,2448,2442,2408,2366,2332,2305,2282,
+2264,2246,2216,2177,2141,2109,2073,2034,2003,1986,1976,1967,1962,1959,1951,1933,1912,1890,1870,1856,1857,
+1863,1849,1807,1761,1740,1743,1752,1758,1759,1750,1726,1698,1687,1688,1676,1640,1600,1584,1595,1616,1633,
+1642,1642,1635,1629,1633,1637,1624,1592,1560,1548,1551,1554,1550,1542,1535,1527,1519,1515,1514,1513,1511,
+1510,1509,1509,1509,1510,1509,1506,1500,1493,1482,1464,1443,1430,1430,1443,1461,1475,1485,1491,1497,1502,
+1506,1508,1512,1519,1524,1525,1523,1520,1511,1491,1471,1467,1478,1485,1479,1468,1466,1470,1472,1468,1465,
+1462,1459,1454,1448,1439,1426,1414,1406,1397,1379,1354,1328,1302,1277,1255,1239,1227,1212,1192,1174,1158,
+1140,1117,1092,1067,1042,1016,992,971,952,932,908,879,850,822,797,774,750,722,693,664,636,
+608,581,555,526,497,470,444,416,383,348,313,275,237,201,171,141,108,70,32,-5,-41,
+-79,-119,-162,-206,-249,-287,-321,-352,-381,-410,-441,-472,-500,-527,-557,-592,-626,-655,-675,-689,-701,
+-717,-742,-776,-813,-847,-879,-910,-941,-970,-1000,-1032,-1062,-1089,-1116,-1146,-1177,-1206,-1233,-1264,-1298,-1331,
+-1360,-1387,-1413,-1436,-1458,-1481,-1510,-1542,-1572,-1599,-1626,-1655,-1682,-1705,-1722,-1737,-1751,-1767,-1784,-1801,-1818,
+-1837,-1859,-1882,-1901,-1916,-1932,-1951,-1966,-1975,-1982,-1992,-2005,-2017,-2027,-2036,-2044,-2053,-2061,-2070,-2078,-2082,
+-2083,-2083,-2081,-2076,-2069,-2061,-2056,-2053,-2050,-2045,-2038,-2028,-2015,-2001,-1986,-1972,-1960,-1949,-1939,-1928,-1918,
+-1907,-1894,-1880,-1868,-1858,-1849,-1840,-1830,-1821,-1812,-1800,-1787,-1775,-1764,-1753,-1741,-1729,-1719,-1711,-1702,-1692,
+-1681,-1673,-1666,-1658,-1648,-1639,-1632,-1625,-1614,-1602,-1596,-1593,-1588,-1578,-1567,-1560,-1552,-1540,-1526,-1518,-1512,
+-1503,-1490,-1477,-1466,-1455,-1445,-1438,-1432,-1422,-1410,-1402,-1396,-1386,-1372,-1360,-1352,-1345,-1335,-1326,-1316,-1304,
+-1290,-1278,-1268,-1257,-1244,-1234,-1227,-1216,-1199,-1181,-1165,-1147,-1123,-1100,-1080,-1059,-1037,-1015,-994,-968,-935,
+-906,-891,-881,-860,-829,-797,-767,-733,-694,-658,-628,-597,-558,-518,-483,-450,-412,-368,-324,-284,-240,
+-190,-137,-86,-36,17,74,128,182,243,310,369,414,457,518,581,606,577,543,586,749,991,
+1225,1387,1482,1557,1654,1797,2016,2333,2688,2900,2790,2363,1837,1463,1320,1316,1344,1387,1465,1569,1662,
+1733,1799,1870,1936,1976,1985,1968,1941,1922,1916,1906,1873,1822,1772,1729,1685,1638,1603,1587,1580,1565,
+1544,1527,1513,1489,1441,1372,1292,1206,1115,1025,943,869,801,740,690,650,604,536,444,334,220,
+111,14,-67,-133,-189,-243,-305,-380,-467,-555,-629,-688,-742,-804,-872,-935,-986,-1032,-1084,-1147,-1223,
+-1310,-1397,-1470,-1517,-1541,-1557,-1578,-1607,-1635,-1652,-1649,-1627,-1610,-1626,-1692,-1795,-1904,-1997,-2067,-2113,-2133,
+-2128,-2110,-2093,-2086,-2085,-2082,-2082,-2096,-2132,-2175,-2205,-2219,-2231,-2254,-2277,-2295,-2313,-2340,-2373,-2402,-2430,
+-2467,-2508,-2540,-2561,-2580,-2591,-2576,-2541,-2512,-2503,-2499,-2499,-2528,-2607,-2706,-2768,-2768,-2718,-2634,-2520,-2401,
+-2315,-2280,-2262,-2219,-2142,-2053,-1976,-1922,-1888,-1863,-1819,-1738,-1633,-1544,-1496,-1480,-1474,-1478,-1507,-1555,-1578,
+-1535,-1440,-1357,-1333,-1354,-1370,-1353,-1315,-1277,-1242,-1201,-1149,-1090,-1031,-977,-935,-901,-870,-839,-810,-781,
+-746,-710,-680,-658,-634,-602,-568,-541,-517,-488,-457,-432,-414,-393,-365,-335,-306,-278,-246,-209,-169,
+-126,-88,-57,-28,5,47,89,127,161,198,240,283,319,347,372,398,421,440,453,468,491,
+521,556,595,634,665,687,708,736,768,800,835,877,922,960,996,1040,1092,1138,1172,1202,1236,
+1271,1306,1345,1392,1441,1484,1522,1561,1598,1632,1663,1696,1729,1757,1782,1808,1839,1873,1909,1940,1960,
+1968,1975,1989,2001,2000,1988,1976,1970,1965,1959,1955,1954,1952,1947,1940,1934,1925,1914,1903,1896,1887,
+1878,1868,1860,1847,1832,1821,1814,1805,1792,1779,1772,1765,1758,1755,1756,1757,1754,1754,1762,1773,1781,
+1793,1813,1833,1841,1837,1835,1836,1831,1819,1819,1818,1829,1840,1834,1813,1788,1769,1755,1737,1712,1681,
+1651,1623,1592,1555,1519,1497,1484,1462,1418,1362,1313,1280,1256,1229,1190,1145,1110,1088,1060,998,912,
+847,845,900,962,975,915,789,632,495,419,403,417,433,455,498,557,610,639,640,616,576,
+533,497,462,415,351,280,204,117,12,-107,-237,-374,-511,-631,-724,-803,-888,-978,-1061,-1133,-1206,
+-1289,-1373,-1453,-1533,-1611,-1668,-1684,-1674,-1676,-1719,-1795,-1874,-1932,-1964,-1985,-2007,-2021,-2016,-1998,-1986,-1986,
+-1986,-1980,-1978,-1985,-1985,-1963,-1926,-1886,-1843,-1793,-1747,-1706,-1658,-1593,-1530,-1473,-1377,-1197,-971,-801,-742,
+-753,-773,-801,-866,-960,-1050,-1129,-1227,-1356,-1487,-1585,-1643,-1680,-1717,-1757,-1791,-1811,-1826,-1849,-1870,-1862,
+-1817,-1762,-1731,-1739,-1790,-1875,-1950,-1943,-1828,-1678,-1600,-1629,-1719,-1829,-1964,-2134,-2304,-2436,-2532,-2627,-2742,
+-2864,-2961,-3001,-2987,-2980,-3061,-3254,-3491,-3688,-3819,-3909,-3979,-4022,-4038,-4042,-4049,-4061,-4083,-4131,-4207,-4290,
+-4362,-4420,-4465,-4496,-4513,-4531,-4555,-4576,-4586,-4590,-4601,-4618,-4629,-4633,-4637,-4645,-4650,-4643,-4627,-4612,-4604,
+-4596,-4581,-4563,-4553,-4562,-4589,-4623,-4653,-4676,-4696,-4715,-4729,-4730,-4716,-4700,-4699,-4723,-4759,-4789,-4812,-4843,
+-4897,-4967,-5034,-5088,-5133,-5179,-5226,-5270,-5312,-5360,-5416,-5470,-5518,-5567,-5628,-5703,-5782,-5857,-5930,-6006,-6086,
+-6164,-6235,-6300,-6364,-6431,-6500,-6565,-6628,-6692,-6759,-6822,-6876,-6925,-6974,-7025,-7074,-7118,-7161,-7207,-7262,-7323,
+-7387,-7448,-7504,-7553,-7597,-7638,-7685,-7745,-7815,-7889,-7964,-8046,-8138,-8232,-8321,-8407,-8496,-8582,-8656,-8712,-8761,
+-8814,-8878,-8951,-9020,-9067,-9087,-9093,-9101,-9107,-9113,-9146,-9239,-9387,-9527,-9601,-9612,-9608,-9625,-9661,-9701,-9740,
+-9782,-9821,-9848,-9863,-9873,-9882,-9887,-9889,-9894,-9909,-9932,-9949,-9948,-9932,-9904,-9866,-9810,-9733,-9645,-9562,-9490,
+-9419,-9332,-9229,-9130,-9053,-9003,-8968,-8938,-8913,-8892,-8866,-8827,-8773,-8705,-8615,-8501,-8372,-8243,-8121,-8001,-7876,
+-7747,-7611,-7470,-7339,-7234,-7147,-7044,-6911,-6772,-6657,-6560,-6453,-6328,-6204,-6094,-5988,-5876,-5760,-5642,-5517,-5376,
+-5222,-5062,-4904,-4756,-4627,-4513,-4392,-4249,-4088,-3926,-3772,-3624,-3483,-3352,-3220,-3074,-2925,-2801,-2719,-2653,-2564,
+-2447,-2344,-2296,-2294,-2286,-2221,-2091,-1926,-1769,-1647,-1555,-1456,-1294,-1032,-674,-268,119,426,612,681,687,
+698,755,847,951,1058,1175,1298,1404,1477,1524,1571,1639,1731,1837,1936,2020,2100,2193,2302,2405,2489,
+2560,2638,2728,2816,2896,2976,3061,3142,3211,3272,3334,3400,3470,3548,3639,3732,3812,3882,3956,4035,4104,
+4159,4221,4306,4399,4468,4503,4521,4556,4640,4778,4936,5058,5126,5176,5250,5334,5382,5374,5331,5268,5206,
+5211,5377,5714,6093,6348,6417,6369,6299,6254,6236,6242,6259,6249,6179,6055,5924,5836,5804,5804,5804,5798,
+5809,5851,5909,5962,6013,6074,6144,6199,6222,6216,6197,6172,6134,6056,5903,5685,5484,5405,5479,5646,5816,
+5943,6030,6097,6162,6227,6282,6314,6338,6393,6497,6619,6729,6825,6911,6966,6962,6911,6852,6811,6800,6834,
+6920,7018,7069,7050,6995,6942,6905,6898,6946,7050,7158,7222,7244,7260,7279,7291,7310,7353,7396,7395,7354,
+7340,7407,7518,7593,7593,7549,7501,7463,7434,7420,7432,7473,7534,7607,7684,7752,7801,7827,7835,7836,7848,
+7876,7908,7920,7915,7922,7959,8005,8028,8023,8009,7988,7947,7881,7811,7759,7725,7691,7647,7598,7553,7524,
+7515,7505,7455,7349,7221,7127,7084,7058,7003,6912,6800,6666,6493,6295,6135,6077,6123,6201,6236,6221,6201,
+6208,6226,6222,6191,6154,6122,6085,6033,5972,5912,5851,5784,5712,5641,5575,5514,5456,5397,5329,5251,5173,
+5111,5069,5043,5020,4987,4932,4855,4775,4713,4677,4647,4605,4551,4496,4447,4400,4357,4325,4300,4263,4205,
+4145,4108,4096,4081,4045,3997,3959,3938,3926,3910,3883,3847,3807,3768,3730,3685,3632,3577,3522,3457,3387,
+3334,3311,3306,3292,3259,3217,3174,3133,3091,3044,2986,2913,2837,2768,2716,2686,2689,2717,2738,2725,2697,
+2687,2686,2647,2560,2475,2445,2454,2454,2426,2391,2363,2337,2309,2289,2275,2253,2217,2176,2135,2092,2049,
+2018,2003,1995,1987,1980,1976,1970,1954,1930,1903,1879,1866,1863,1853,1816,1761,1722,1723,1747,1767,1774,
+1773,1762,1735,1712,1723,1759,1777,1744,1678,1622,1596,1598,1617,1644,1662,1657,1637,1623,1621,1616,1598,
+1580,1577,1582,1579,1564,1547,1536,1528,1522,1519,1518,1518,1516,1514,1513,1510,1506,1505,1509,1512,1509,
+1499,1485,1468,1451,1440,1441,1452,1463,1469,1469,1469,1469,1469,1471,1475,1484,1495,1503,1508,1511,1511,
+1504,1486,1465,1454,1455,1459,1460,1459,1457,1454,1451,1449,1450,1446,1437,1429,1428,1429,1426,1419,1412,
+1402,1384,1357,1325,1297,1274,1255,1240,1224,1205,1185,1167,1149,1128,1105,1082,1060,1033,1003,976,956,
+939,918,890,860,832,806,783,760,734,705,674,645,617,589,560,531,502,474,448,422,394,
+364,335,305,271,234,198,166,135,102,65,29,-6,-40,-76,-115,-157,-200,-240,-276,-307,-336,
+-364,-395,-428,-460,-489,-516,-545,-579,-615,-649,-677,-695,-705,-715,-734,-764,-797,-829,-860,-892,-923,
+-951,-980,-1011,-1042,-1070,-1094,-1120,-1148,-1176,-1204,-1235,-1269,-1303,-1334,-1362,-1389,-1413,-1435,-1459,-1488,-1520,
+-1548,-1575,-1602,-1630,-1656,-1679,-1697,-1710,-1721,-1734,-1751,-1768,-1784,-1801,-1822,-1844,-1861,-1873,-1888,-1906,-1922,
+-1932,-1940,-1952,-1968,-1982,-1993,-2003,-2012,-2018,-2022,-2026,-2033,-2038,-2040,-2040,-2039,-2037,-2031,-2022,-2015,-2012,
+-2012,-2010,-2003,-1993,-1979,-1965,-1950,-1936,-1926,-1917,-1907,-1896,-1885,-1873,-1860,-1847,-1835,-1826,-1816,-1805,-1794,
+-1787,-1780,-1771,-1761,-1750,-1739,-1726,-1713,-1701,-1691,-1683,-1676,-1667,-1656,-1646,-1639,-1635,-1629,-1622,-1614,-1606,
+-1596,-1585,-1578,-1576,-1572,-1563,-1553,-1547,-1541,-1531,-1518,-1509,-1504,-1496,-1485,-1475,-1465,-1454,-1444,-1437,-1432,
+-1424,-1414,-1406,-1401,-1393,-1383,-1373,-1364,-1355,-1345,-1337,-1331,-1322,-1309,-1296,-1285,-1274,-1263,-1254,-1245,-1233,
+-1216,-1200,-1185,-1168,-1146,-1125,-1106,-1087,-1064,-1042,-1023,-997,-958,-917,-886,-867,-848,-821,-788,-755,-723,
+-692,-664,-636,-604,-567,-531,-500,-469,-433,-389,-345,-303,-258,-205,-150,-101,-54,1,61,114,162,
+218,284,340,381,427,497,560,566,518,481,529,676,868,1030,1120,1167,1254,1445,1727,2036,2329,
+2574,2690,2559,2167,1684,1343,1229,1249,1284,1320,1399,1519,1630,1707,1773,1851,1931,1986,2002,1990,1969,
+1956,1947,1928,1891,1846,1807,1773,1733,1688,1651,1630,1615,1596,1577,1563,1549,1518,1461,1382,1291,1197,
+1106,1021,946,882,828,782,741,699,643,565,467,357,244,135,34,-51,-117,-168,-218,-279,-359,
+-451,-539,-614,-677,-740,-811,-885,-949,-999,-1047,-1100,-1162,-1233,-1314,-1398,-1469,-1515,-1543,-1564,-1580,-1583,
+-1574,-1562,-1558,-1562,-1580,-1621,-1686,-1758,-1822,-1878,-1933,-1980,-2008,-2015,-2014,-2014,-2010,-2000,-1993,-2006,-2046,
+-2100,-2149,-2177,-2187,-2197,-2217,-2241,-2260,-2282,-2315,-2358,-2396,-2431,-2476,-2533,-2585,-2620,-2639,-2640,-2621,-2588,
+-2558,-2539,-2518,-2504,-2532,-2619,-2722,-2777,-2764,-2714,-2649,-2562,-2456,-2367,-2326,-2319,-2305,-2259,-2189,-2109,-2032,
+-1969,-1916,-1850,-1747,-1620,-1511,-1449,-1421,-1396,-1369,-1368,-1407,-1456,-1463,-1413,-1349,-1322,-1339,-1360,-1351,-1314,
+-1266,-1218,-1166,-1108,-1049,-996,-952,-916,-883,-850,-819,-794,-768,-731,-684,-644,-617,-596,-569,-536,-508,
+-488,-470,-451,-433,-415,-392,-364,-332,-299,-265,-233,-201,-168,-133,-100,-74,-52,-27,5,44,80,
+111,140,171,204,232,251,266,285,307,328,345,365,393,426,460,494,528,558,586,619,660,
+702,739,776,822,871,909,937,968,1006,1044,1079,1116,1161,1209,1256,1307,1365,1425,1478,1525,1566,
+1599,1621,1640,1666,1698,1728,1757,1787,1817,1852,1894,1936,1964,1974,1977,1985,1991,1986,1971,1960,1957,
+1952,1944,1939,1938,1935,1928,1923,1922,1917,1905,1894,1887,1879,1870,1862,1858,1850,1836,1823,1816,1809,
+1798,1785,1776,1768,1760,1755,1758,1761,1761,1762,1769,1779,1785,1794,1809,1825,1831,1828,1828,1831,1828,
+1819,1819,1820,1834,1842,1827,1797,1770,1754,1742,1719,1684,1644,1607,1571,1534,1495,1461,1439,1425,1401,
+1359,1305,1256,1219,1190,1158,1116,1074,1043,1022,987,919,834,776,774,819,874,907,891,807,663,
+509,410,388,406,419,419,432,469,511,540,550,548,538,518,489,453,404,343,278,214,142,
+43,-83,-226,-374,-516,-640,-735,-812,-893,-983,-1068,-1138,-1203,-1273,-1344,-1411,-1478,-1546,-1595,-1606,-1586,
+-1569,-1591,-1658,-1752,-1839,-1897,-1931,-1958,-1980,-1985,-1969,-1948,-1938,-1936,-1936,-1946,-1964,-1971,-1948,-1907,-1865,
+-1825,-1780,-1734,-1692,-1643,-1584,-1531,-1480,-1380,-1195,-980,-848,-832,-856,-848,-834,-881,-983,-1084,-1159,-1243,
+-1357,-1479,-1575,-1640,-1688,-1730,-1769,-1803,-1824,-1834,-1842,-1851,-1844,-1810,-1769,-1748,-1755,-1783,-1831,-1887,-1901,
+-1830,-1701,-1604,-1604,-1688,-1810,-1950,-2109,-2274,-2416,-2525,-2621,-2733,-2864,-2978,-3030,-3017,-3009,-3094,-3285,-3509,
+-3684,-3798,-3884,-3956,-4000,-4013,-4014,-4022,-4042,-4074,-4126,-4194,-4266,-4333,-4394,-4446,-4480,-4501,-4519,-4539,-4552,
+-4553,-4555,-4573,-4600,-4619,-4625,-4625,-4623,-4615,-4600,-4582,-4572,-4567,-4560,-4545,-4529,-4520,-4525,-4545,-4573,-4602,
+-4628,-4650,-4669,-4681,-4679,-4664,-4649,-4654,-4681,-4716,-4745,-4771,-4809,-4866,-4932,-4993,-5040,-5081,-5125,-5175,-5224,
+-5269,-5313,-5363,-5419,-5475,-5528,-5584,-5648,-5718,-5789,-5864,-5947,-6035,-6117,-6187,-6250,-6314,-6382,-6449,-6510,-6569,
+-6632,-6701,-6768,-6827,-6876,-6922,-6974,-7030,-7084,-7132,-7176,-7224,-7282,-7345,-7406,-7462,-7507,-7545,-7584,-7636,-7701,
+-7770,-7836,-7903,-7981,-8071,-8167,-8261,-8354,-8444,-8524,-8590,-8648,-8705,-8764,-8827,-8892,-8952,-8995,-9021,-9041,-9057,
+-9062,-9065,-9106,-9216,-9367,-9489,-9542,-9550,-9562,-9593,-9631,-9662,-9691,-9722,-9751,-9774,-9791,-9804,-9810,-9810,-9808,
+-9810,-9822,-9841,-9859,-9867,-9858,-9835,-9800,-9752,-9686,-9607,-9530,-9463,-9394,-9301,-9178,-9048,-8946,-8892,-8877,-8879,
+-8884,-8883,-8866,-8828,-8770,-8697,-8603,-8485,-8349,-8215,-8090,-7967,-7845,-7730,-7620,-7505,-7383,-7267,-7160,-7044,-6906,
+-6763,-6638,-6528,-6416,-6302,-6198,-6105,-6004,-5886,-5766,-5651,-5528,-5384,-5224,-5064,-4912,-4773,-4649,-4533,-4408,-4259,
+-4095,-3935,-3789,-3651,-3520,-3390,-3253,-3097,-2940,-2812,-2728,-2654,-2548,-2403,-2268,-2201,-2218,-2273,-2291,-2222,-2062,
+-1854,-1657,-1513,-1415,-1313,-1142,-866,-498,-90,285,560,704,745,752,787,867,973,1085,1195,1299,1388,
+1454,1507,1561,1631,1723,1828,1928,2012,2092,2186,2294,2394,2473,2539,2615,2704,2788,2862,2936,3020,3106,
+3180,3242,3300,3360,3428,3508,3603,3698,3781,3854,3929,4009,4081,4141,4205,4283,4361,4418,4448,4470,4515,
+4610,4758,4921,5044,5108,5150,5213,5294,5362,5398,5399,5350,5256,5205,5328,5660,6058,6315,6341,6215,6081,
+6029,6070,6162,6249,6275,6216,6089,5943,5822,5747,5706,5684,5683,5721,5800,5887,5946,5981,6016,6057,6082,
+6079,6063,6054,6046,6011,5923,5781,5624,5519,5517,5607,5732,5838,5911,5957,5980,5995,6019,6045,6051,6048,
+6086,6199,6356,6510,6650,6782,6883,6916,6885,6838,6813,6816,6846,6904,6963,6978,6937,6876,6831,6818,6850,
+6950,7111,7276,7394,7461,7498,7507,7486,7470,7491,7522,7508,7458,7456,7553,7693,7778,7780,7747,7719,7692,
+7650,7602,7572,7568,7592,7644,7712,7775,7814,7833,7846,7860,7875,7890,7903,7910,7911,7923,7955,7995,8017,
+8015,8002,7987,7963,7919,7865,7816,7779,7755,7738,7719,7692,7663,7642,7625,7582,7498,7390,7291,7212,7138,
+7059,6989,6926,6830,6656,6418,6204,6106,6141,6234,6294,6288,6255,6243,6257,6261,6231,6181,6137,6104,6067,
+6012,5948,5884,5824,5763,5696,5627,5562,5505,5452,5392,5318,5240,5173,5127,5095,5063,5022,4967,4898,4826,
+4768,4730,4700,4654,4587,4515,4457,4413,4380,4352,4324,4283,4227,4174,4143,4127,4102,4056,4007,3976,3963,
+3952,3936,3912,3881,3847,3815,3782,3741,3688,3630,3570,3504,3430,3367,3331,3315,3296,3264,3228,3199,3178,
+3155,3119,3062,2982,2895,2818,2758,2717,2699,2695,2686,2661,2648,2671,2702,2679,2591,2499,2462,2470,2474,
+2455,2430,2409,2381,2345,2317,2302,2285,2252,2208,2161,2112,2065,2030,2015,2009,2002,1994,1988,1981,1965,
+1940,1912,1890,1885,1892,1888,1853,1797,1757,1752,1767,1779,1784,1788,1781,1755,1734,1753,1810,1852,1834,
+1764,1681,1618,1587,1591,1623,1659,1667,1648,1628,1625,1628,1621,1609,1604,1604,1594,1572,1550,1539,1539,
+1541,1542,1539,1532,1525,1523,1523,1519,1510,1506,1511,1518,1516,1506,1493,1481,1470,1461,1459,1462,1464,
+1461,1457,1452,1448,1447,1448,1454,1463,1473,1483,1491,1496,1495,1488,1475,1458,1443,1437,1440,1450,1455,
+1448,1434,1424,1424,1429,1425,1410,1395,1394,1403,1411,1411,1407,1399,1382,1354,1322,1294,1273,1257,1241,
+1222,1201,1182,1165,1144,1120,1096,1075,1054,1025,992,963,942,925,902,874,844,817,792,769,746,
+721,692,660,627,595,564,533,503,476,452,428,403,375,346,319,292,262,227,191,156,123,
+90,56,22,-8,-38,-70,-106,-144,-184,-223,-258,-289,-317,-344,-375,-411,-446,-479,-509,-539,-571,
+-607,-645,-681,-705,-717,-724,-739,-764,-795,-823,-852,-883,-914,-942,-968,-999,-1033,-1063,-1087,-1109,-1133,
+-1158,-1183,-1209,-1239,-1271,-1303,-1335,-1365,-1391,-1415,-1442,-1472,-1503,-1529,-1553,-1577,-1602,-1626,-1650,-1672,-1687,
+-1698,-1707,-1720,-1736,-1751,-1768,-1787,-1806,-1820,-1830,-1842,-1859,-1875,-1886,-1897,-1911,-1927,-1940,-1952,-1965,-1976,
+-1983,-1984,-1985,-1989,-1994,-1997,-1997,-1997,-1997,-1994,-1988,-1980,-1977,-1976,-1974,-1968,-1957,-1946,-1932,-1918,-1905,
+-1894,-1886,-1875,-1863,-1851,-1839,-1826,-1814,-1804,-1796,-1785,-1771,-1760,-1753,-1746,-1738,-1730,-1723,-1711,-1696,-1682,
+-1673,-1665,-1658,-1652,-1644,-1633,-1620,-1612,-1610,-1608,-1600,-1591,-1583,-1576,-1568,-1561,-1557,-1554,-1546,-1536,-1530,
+-1526,-1519,-1509,-1501,-1495,-1488,-1477,-1469,-1462,-1454,-1444,-1436,-1430,-1425,-1417,-1410,-1404,-1398,-1392,-1385,-1377,
+-1366,-1354,-1346,-1341,-1334,-1325,-1314,-1304,-1293,-1282,-1273,-1262,-1249,-1233,-1219,-1205,-1186,-1166,-1148,-1132,-1114,
+-1091,-1068,-1047,-1023,-989,-950,-914,-885,-861,-834,-804,-773,-745,-719,-692,-662,-629,-596,-562,-530,-495,
+-455,-411,-367,-324,-279,-225,-170,-121,-75,-19,40,92,135,185,246,302,346,402,475,523,499,
+427,388,436,555,695,814,888,945,1071,1343,1725,2083,2309,2401,2380,2209,1865,1453,1163,1085,1139,
+1205,1258,1342,1466,1586,1675,1748,1828,1910,1972,2004,2012,2007,1996,1978,1948,1910,1878,1857,1840,1811,
+1772,1731,1695,1663,1636,1620,1610,1592,1552,1486,1397,1294,1190,1097,1017,949,892,848,814,778,730,
+665,583,487,381,273,165,61,-31,-106,-165,-221,-283,-358,-442,-527,-603,-669,-733,-799,-865,-923,
+-976,-1032,-1093,-1155,-1218,-1291,-1372,-1445,-1499,-1536,-1563,-1570,-1546,-1501,-1470,-1476,-1516,-1578,-1653,-1725,-1773,
+-1791,-1800,-1824,-1860,-1887,-1901,-1913,-1927,-1932,-1929,-1939,-1984,-2056,-2129,-2177,-2192,-2186,-2181,-2191,-2214,-2241,
+-2271,-2312,-2360,-2402,-2434,-2470,-2520,-2574,-2615,-2638,-2641,-2627,-2608,-2596,-2590,-2573,-2553,-2565,-2631,-2713,-2750,
+-2725,-2671,-2616,-2548,-2459,-2370,-2316,-2300,-2298,-2287,-2258,-2204,-2128,-2043,-1959,-1864,-1745,-1611,-1499,-1431,-1390,
+-1341,-1274,-1221,-1217,-1258,-1298,-1299,-1264,-1232,-1225,-1235,-1233,-1210,-1174,-1135,-1094,-1052,-1010,-972,-938,-908,
+-882,-855,-827,-799,-770,-732,-686,-643,-613,-593,-571,-543,-513,-490,-472,-457,-442,-424,-398,-368,-337,
+-305,-275,-249,-227,-206,-180,-149,-120,-96,-72,-43,-8,28,60,87,113,141,166,182,194,211,
+234,258,280,304,335,369,400,430,460,491,521,558,604,650,689,728,777,831,875,907,936,
+969,1003,1036,1077,1127,1180,1230,1279,1329,1379,1427,1475,1520,1556,1580,1602,1632,1668,1704,1739,1772,
+1800,1829,1868,1913,1949,1964,1971,1980,1985,1974,1954,1942,1941,1939,1932,1927,1924,1918,1909,1905,1906,
+1905,1896,1888,1885,1880,1870,1861,1857,1852,1839,1824,1815,1808,1796,1784,1775,1769,1762,1757,1758,1762,
+1765,1768,1775,1782,1787,1792,1803,1814,1819,1821,1826,1831,1827,1819,1821,1822,1835,1840,1823,1791,1764,
+1746,1723,1686,1637,1589,1548,1512,1475,1439,1408,1383,1358,1327,1288,1244,1202,1165,1132,1097,1058,1020,
+991,966,926,856,774,715,699,718,756,800,827,801,704,570,466,428,429,422,394,371,376,
+399,424,447,473,495,497,475,435,383,323,266,214,149,46,-92,-243,-388,-524,-648,-750,-830,
+-907,-992,-1073,-1139,-1194,-1252,-1313,-1371,-1425,-1477,-1516,-1528,-1512,-1492,-1496,-1547,-1641,-1748,-1830,-1879,-1912,
+-1942,-1955,-1940,-1912,-1894,-1893,-1901,-1917,-1937,-1939,-1914,-1873,-1838,-1805,-1763,-1717,-1679,-1641,-1598,-1556,-1505,
+-1395,-1199,-997,-908,-940,-976,-932,-871,-898,-1014,-1133,-1208,-1276,-1373,-1482,-1574,-1643,-1701,-1750,-1791,-1827,
+-1854,-1862,-1857,-1851,-1841,-1820,-1794,-1775,-1764,-1759,-1779,-1833,-1879,-1845,-1725,-1607,-1591,-1684,-1821,-1950,-2075,
+-2215,-2364,-2498,-2612,-2728,-2861,-2986,-3059,-3068,-3071,-3146,-3309,-3503,-3663,-3776,-3863,-3932,-3973,-3988,-3995,-4011,
+-4036,-4074,-4125,-4189,-4255,-4322,-4387,-4440,-4473,-4492,-4509,-4524,-4526,-4518,-4520,-4546,-4580,-4600,-4604,-4601,-4596,
+-4584,-4566,-4550,-4542,-4537,-4527,-4512,-4496,-4486,-4485,-4495,-4518,-4548,-4577,-4602,-4622,-4632,-4628,-4612,-4601,-4611,
+-4638,-4667,-4694,-4726,-4774,-4834,-4893,-4943,-4987,-5029,-5072,-5119,-5170,-5219,-5264,-5310,-5361,-5419,-5478,-5535,-5591,
+-5648,-5711,-5787,-5878,-5972,-6056,-6127,-6192,-6258,-6325,-6387,-6445,-6506,-6572,-6641,-6707,-6766,-6817,-6868,-6926,-6991,
+-7053,-7103,-7144,-7187,-7238,-7295,-7352,-7405,-7450,-7488,-7531,-7586,-7651,-7713,-7770,-7832,-7911,-8003,-8101,-8199,-8294,
+-8379,-8452,-8518,-8588,-8660,-8727,-8784,-8836,-8881,-8916,-8947,-8981,-9008,-9015,-9019,-9071,-9195,-9346,-9449,-9483,-9488,
+-9511,-9551,-9587,-9611,-9632,-9656,-9679,-9700,-9720,-9733,-9734,-9726,-9721,-9726,-9739,-9758,-9779,-9793,-9790,-9770,-9739,
+-9701,-9651,-9585,-9513,-9446,-9376,-9277,-9140,-8990,-8874,-8824,-8832,-8862,-8887,-8892,-8868,-8817,-8748,-8668,-8573,-8454,
+-8317,-8184,-8063,-7947,-7832,-7725,-7628,-7527,-7411,-7289,-7168,-7039,-6895,-6747,-6617,-6504,-6398,-6299,-6213,-6130,-6027,
+-5903,-5780,-5669,-5551,-5404,-5235,-5068,-4916,-4780,-4657,-4540,-4411,-4260,-4097,-3946,-3816,-3697,-3578,-3449,-3299,-3130,
+-2963,-2834,-2748,-2667,-2546,-2382,-2228,-2144,-2152,-2217,-2274,-2261,-2146,-1943,-1707,-1503,-1367,-1278,-1169,-976,-678,
+-305,82,416,644,760,803,836,901,999,1108,1208,1289,1356,1418,1480,1548,1627,1723,1828,1927,2010,
+2088,2177,2276,2367,2440,2506,2580,2662,2740,2811,2886,2972,3061,3139,3204,3264,3325,3396,3478,3571,3665,
+3754,3837,3917,3992,4060,4126,4195,4261,4313,4349,4383,4434,4511,4623,4764,4905,5010,5070,5117,5181,5255,
+5323,5375,5402,5370,5276,5208,5304,5604,5974,6209,6218,6071,5920,5876,5961,6122,6265,6314,6256,6136,6012,
+5916,5846,5786,5728,5693,5712,5787,5877,5937,5961,5976,5992,5999,5997,6004,6023,6021,5971,5878,5782,5725,
+5731,5793,5875,5934,5961,5971,5975,5972,5973,5990,6005,5974,5902,5858,5904,6027,6177,6345,6540,6729,6841,
+6854,6820,6805,6826,6867,6911,6935,6918,6866,6817,6803,6832,6912,7060,7270,7490,7670,7797,7868,7869,7807,
+7737,7709,7697,7642,7556,7529,7607,7723,7783,7774,7754,7757,7763,7748,7725,7710,7704,7702,7717,7750,7783,
+7797,7802,7818,7847,7872,7881,7884,7891,7903,7919,7940,7964,7982,7987,7986,7987,7984,7971,7944,7908,7870,
+7838,7816,7797,7770,7736,7709,7692,7668,7620,7550,7470,7376,7255,7122,7013,6941,6865,6730,6528,6324,6197,
+6189,6265,6348,6374,6341,6299,6288,6292,6274,6224,6170,6134,6104,6057,5988,5918,5857,5803,5745,5681,5615,
+5556,5502,5445,5377,5304,5239,5192,5156,5117,5071,5020,4965,4906,4852,4810,4770,4712,4629,4541,4476,4440,
+4415,4388,4354,4313,4267,4227,4201,4176,4136,4084,4041,4018,4002,3977,3948,3925,3904,3879,3849,3818,3782,
+3732,3670,3603,3534,3466,3407,3364,3335,3307,3276,3245,3218,3196,3179,3160,3121,3048,2955,2867,2802,2757,
+2726,2702,2671,2632,2609,2624,2654,2645,2586,2522,2500,2511,2514,2499,2481,2462,2431,2386,2348,2325,2302,
+2269,2228,2184,2135,2083,2041,2021,2016,2011,2003,1997,1989,1974,1951,1922,1895,1883,1887,1891,1878,1846,
+1817,1804,1800,1794,1794,1802,1799,1773,1745,1753,1801,1846,1848,1803,1735,1666,1611,1588,1605,1640,1658,
+1649,1636,1637,1645,1643,1629,1618,1611,1602,1584,1567,1561,1567,1578,1582,1574,1560,1549,1547,1547,1539,
+1524,1512,1512,1517,1517,1512,1506,1500,1493,1485,1476,1466,1456,1448,1444,1441,1437,1434,1435,1441,1447,
+1453,1463,1472,1475,1471,1466,1464,1458,1444,1432,1432,1444,1450,1438,1414,1397,1396,1401,1395,1377,1360,
+1356,1366,1378,1385,1386,1381,1367,1344,1316,1292,1273,1257,1240,1220,1201,1183,1164,1142,1116,1092,1070,
+1047,1018,985,955,931,910,885,858,831,804,777,752,731,709,683,650,614,577,543,510,481,
+456,433,410,385,357,329,303,278,251,220,186,151,118,86,54,23,-6,-35,-65,-98,-134,
+-171,-209,-245,-277,-305,-333,-364,-400,-438,-473,-505,-535,-565,-599,-639,-680,-712,-730,-740,-753,-775,
+-802,-828,-855,-885,-915,-940,-964,-992,-1026,-1058,-1083,-1104,-1124,-1145,-1166,-1187,-1211,-1239,-1273,-1309,-1342,
+-1369,-1394,-1421,-1451,-1481,-1508,-1531,-1552,-1573,-1594,-1619,-1644,-1664,-1676,-1683,-1693,-1706,-1721,-1736,-1753,-1769,
+-1781,-1790,-1801,-1815,-1830,-1843,-1855,-1869,-1884,-1896,-1908,-1922,-1936,-1944,-1945,-1944,-1947,-1953,-1957,-1957,-1957,
+-1956,-1955,-1951,-1945,-1942,-1940,-1937,-1930,-1921,-1911,-1900,-1887,-1874,-1863,-1853,-1841,-1828,-1816,-1805,-1794,-1783,
+-1775,-1766,-1754,-1741,-1730,-1720,-1711,-1702,-1698,-1693,-1682,-1667,-1654,-1647,-1641,-1634,-1628,-1622,-1613,-1599,-1589,
+-1586,-1584,-1576,-1566,-1559,-1555,-1549,-1542,-1536,-1532,-1526,-1517,-1512,-1509,-1504,-1497,-1491,-1486,-1478,-1468,-1459,
+-1455,-1450,-1442,-1434,-1428,-1424,-1419,-1414,-1407,-1400,-1395,-1390,-1385,-1376,-1365,-1357,-1350,-1344,-1337,-1328,-1320,
+-1310,-1301,-1291,-1279,-1265,-1251,-1238,-1223,-1203,-1182,-1165,-1152,-1136,-1115,-1092,-1068,-1044,-1017,-986,-953,-921,
+-892,-865,-837,-808,-782,-758,-731,-697,-663,-631,-598,-559,-517,-474,-431,-387,-344,-300,-250,-196,-145,
+-98,-46,10,61,103,153,214,271,320,377,440,460,405,315,274,314,398,496,604,719,840,
+1018,1322,1723,2066,2223,2206,2103,1923,1623,1255,979,908,992,1111,1206,1301,1417,1534,1633,1721,1807,
+1888,1953,2001,2034,2049,2042,2016,1979,1944,1925,1921,1918,1902,1870,1826,1778,1733,1700,1681,1664,1635,
+1589,1522,1431,1319,1208,1114,1037,967,906,863,835,801,748,679,600,512,414,308,200,93,-8,
+-97,-172,-239,-302,-368,-442,-522,-600,-668,-722,-771,-820,-873,-932,-1000,-1071,-1133,-1188,-1252,-1328,-1404,
+-1465,-1507,-1530,-1521,-1473,-1412,-1383,-1411,-1488,-1589,-1697,-1786,-1827,-1816,-1786,-1774,-1787,-1803,-1815,-1832,-1854,
+-1871,-1888,-1931,-2011,-2110,-2189,-2227,-2227,-2206,-2188,-2191,-2217,-2252,-2289,-2331,-2380,-2422,-2448,-2467,-2495,-2534,
+-2572,-2597,-2606,-2603,-2604,-2619,-2643,-2651,-2639,-2633,-2662,-2709,-2730,-2705,-2655,-2599,-2533,-2446,-2352,-2276,-2231,
+-2215,-2215,-2213,-2187,-2124,-2036,-1938,-1829,-1706,-1581,-1481,-1416,-1369,-1308,-1221,-1130,-1075,-1078,-1116,-1144,-1135,
+-1102,-1077,-1074,-1081,-1079,-1063,-1041,-1022,-1004,-980,-945,-907,-881,-872,-866,-844,-806,-765,-727,-693,-659,
+-628,-603,-583,-563,-540,-516,-494,-475,-458,-436,-406,-373,-342,-316,-294,-278,-266,-252,-231,-200,-167,
+-135,-108,-80,-49,-15,17,45,71,97,121,140,156,176,203,233,261,290,322,354,383,411,
+443,475,505,540,582,626,665,702,748,800,846,884,921,961,1000,1038,1081,1131,1183,1228,1268,
+1305,1341,1379,1423,1470,1512,1544,1577,1615,1655,1694,1729,1760,1782,1801,1832,1876,1917,1941,1955,1970,
+1978,1965,1940,1923,1922,1922,1918,1915,1914,1909,1900,1896,1898,1896,1887,1881,1880,1877,1867,1856,1851,
+1846,1834,1821,1813,1806,1794,1781,1773,1770,1765,1760,1759,1761,1764,1767,1774,1782,1788,1795,1805,1815,
+1821,1827,1835,1839,1832,1821,1825,1820,1827,1826,1806,1774,1745,1718,1682,1630,1574,1528,1495,1463,1428,
+1390,1355,1321,1286,1249,1215,1182,1149,1114,1079,1045,1011,977,948,919,877,812,736,670,630,618,
+632,674,728,757,727,644,555,497,467,432,379,328,303,303,320,355,407,457,477,458,413,
+356,298,247,203,141,34,-113,-267,-401,-525,-645,-752,-836,-908,-984,-1058,-1114,-1156,-1201,-1256,-1312,
+-1361,-1402,-1433,-1450,-1450,-1443,-1445,-1480,-1561,-1669,-1763,-1824,-1862,-1894,-1910,-1898,-1872,-1857,-1861,-1873,-1886,
+-1895,-1889,-1863,-1832,-1809,-1784,-1742,-1695,-1662,-1638,-1609,-1574,-1523,-1409,-1215,-1031,-975,-1037,-1071,-990,-888,
+-906,-1047,-1192,-1273,-1329,-1409,-1506,-1587,-1655,-1720,-1780,-1829,-1871,-1907,-1922,-1916,-1904,-1896,-1885,-1867,-1846,
+-1822,-1799,-1803,-1848,-1895,-1870,-1758,-1648,-1641,-1743,-1871,-1963,-2038,-2144,-2295,-2456,-2600,-2733,-2872,-3005,-3097,
+-3132,-3147,-3204,-3328,-3489,-3640,-3762,-3853,-3916,-3950,-3970,-3990,-4015,-4046,-4086,-4140,-4202,-4265,-4330,-4392,-4440,
+-4464,-4475,-4487,-4496,-4490,-4478,-4484,-4515,-4545,-4554,-4548,-4544,-4544,-4538,-4527,-4519,-4517,-4510,-4493,-4474,-4459,
+-4450,-4447,-4455,-4476,-4504,-4531,-4552,-4568,-4577,-4572,-4558,-4552,-4565,-4585,-4596,-4603,-4628,-4679,-4743,-4801,-4855,
+-4914,-4973,-5024,-5065,-5108,-5158,-5210,-5258,-5306,-5362,-5425,-5486,-5540,-5589,-5645,-5719,-5810,-5902,-5983,-6056,-6128,
+-6200,-6264,-6320,-6379,-6448,-6519,-6586,-6645,-6703,-6761,-6822,-6887,-6954,-7013,-7059,-7098,-7140,-7185,-7234,-7285,-7338,
+-7388,-7434,-7481,-7536,-7594,-7647,-7697,-7759,-7842,-7937,-8035,-8131,-8223,-8304,-8376,-8450,-8534,-8618,-8685,-8737,-8780,
+-8817,-8847,-8879,-8919,-8952,-8959,-8966,-9030,-9167,-9316,-9401,-9418,-9422,-9453,-9497,-9529,-9548,-9568,-9591,-9611,-9632,
+-9654,-9668,-9664,-9652,-9648,-9660,-9679,-9699,-9719,-9730,-9724,-9701,-9673,-9646,-9612,-9559,-9493,-9426,-9353,-9255,-9118,
+-8966,-8852,-8811,-8831,-8871,-8892,-8881,-8839,-8774,-8697,-8616,-8525,-8411,-8278,-8149,-8034,-7926,-7815,-7710,-7617,-7523,
+-7416,-7294,-7166,-7027,-6873,-6720,-6589,-6482,-6386,-6298,-6219,-6141,-6042,-5923,-5805,-5697,-5580,-5431,-5259,-5088,-4932,
+-4792,-4666,-4547,-4417,-4268,-4112,-3973,-3862,-3763,-3656,-3526,-3365,-3183,-3009,-2878,-2788,-2696,-2559,-2383,-2222,-2128,
+-2115,-2153,-2199,-2212,-2157,-2012,-1794,-1554,-1355,-1221,-1118,-983,-771,-477,-126,229,527,724,819,862,911,
+993,1094,1186,1258,1318,1380,1446,1517,1600,1700,1811,1914,2000,2079,2163,2250,2328,2396,2466,2543,2620,
+2693,2765,2844,2929,3013,3089,3158,3224,3293,3370,3453,3538,3624,3714,3807,3890,3957,4017,4088,4166,4227,
+4257,4275,4316,4396,4506,4630,4757,4873,4963,5029,5092,5161,5225,5275,5314,5334,5305,5223,5171,5261,5521,
+5838,6052,6084,5977,5846,5800,5894,6089,6275,6348,6295,6183,6092,6043,6009,5949,5854,5760,5719,5754,5829,
+5892,5923,5932,5935,5938,5960,6011,6062,6062,5996,5911,5865,5881,5942,6018,6074,6085,6053,6008,5974,5961,
+5979,6028,6064,6022,5894,5756,5695,5723,5810,5966,6212,6501,6722,6809,6808,6808,6847,6903,6944,6952,6930,
+6900,6894,6929,6997,7101,7260,7478,7718,7934,8094,8175,8151,8038,7909,7830,7781,7702,7597,7542,7579,7650,
+7677,7661,7655,7682,7714,7733,7752,7777,7790,7777,7761,7766,7780,7778,7766,7771,7800,7829,7840,7841,7851,
+7873,7895,7914,7932,7950,7968,7985,8002,8015,8022,8019,8003,7973,7933,7893,7858,7822,7784,7752,7731,7709,
+7674,7629,7577,7501,7375,7208,7041,6909,6802,6686,6547,6398,6277,6226,6264,6358,6429,6426,6372,6331,6326,
+6322,6284,6226,6180,6147,6103,6039,5967,5904,5849,5794,5736,5677,5617,5558,5498,5433,5365,5306,5263,5230,
+5190,5141,5092,5047,5000,4948,4894,4835,4758,4663,4575,4521,4497,4479,4446,4401,4355,4315,4284,4257,4223,
+4176,4126,4093,4075,4051,4009,3965,3936,3919,3897,3866,3835,3804,3760,3696,3619,3545,3483,3435,3396,3360,
+3325,3295,3265,3231,3194,3170,3160,3140,3083,2996,2910,2846,2801,2768,2743,2714,2671,2625,2600,2599,2597,
+2575,2551,2549,2557,2553,2535,2517,2500,2468,2421,2377,2344,2312,2274,2236,2201,2158,2105,2058,2033,2027,
+2022,2013,2003,1993,1981,1962,1934,1897,1862,1841,1841,1851,1859,1857,1848,1834,1820,1818,1823,1814,1783,
+1747,1738,1759,1789,1803,1798,1773,1725,1663,1616,1607,1625,1642,1641,1636,1640,1649,1647,1632,1615,1607,
+1605,1601,1596,1596,1607,1621,1626,1617,1600,1589,1588,1585,1571,1548,1527,1517,1517,1519,1521,1520,1516,
+1509,1499,1485,1466,1446,1435,1433,1434,1431,1427,1426,1427,1426,1428,1436,1446,1449,1446,1448,1459,1465,
+1453,1434,1427,1433,1438,1426,1403,1384,1376,1372,1362,1346,1331,1325,1329,1339,1350,1357,1355,1344,1325,
+1305,1286,1269,1252,1235,1218,1201,1183,1163,1139,1115,1091,1067,1041,1011,980,950,923,896,870,843,
+816,788,761,737,718,699,675,644,607,569,532,499,470,443,417,391,365,339,314,290,268,
+245,216,183,149,118,89,61,30,-1,-33,-66,-99,-133,-169,-205,-242,-275,-305,-333,-364,-400,
+-437,-471,-501,-529,-557,-589,-627,-668,-706,-733,-751,-766,-786,-811,-837,-864,-891,-917,-939,-959,-983,
+-1014,-1046,-1072,-1092,-1111,-1131,-1150,-1168,-1187,-1212,-1245,-1282,-1316,-1344,-1368,-1392,-1420,-1450,-1478,-1504,-1525,
+-1544,-1562,-1584,-1609,-1631,-1646,-1654,-1663,-1675,-1690,-1705,-1721,-1735,-1747,-1756,-1767,-1780,-1793,-1805,-1817,-1830,
+-1843,-1855,-1867,-1880,-1893,-1902,-1905,-1905,-1907,-1913,-1919,-1921,-1919,-1916,-1914,-1912,-1908,-1904,-1901,-1896,-1888,
+-1880,-1873,-1866,-1855,-1843,-1831,-1819,-1805,-1793,-1782,-1774,-1764,-1755,-1746,-1736,-1725,-1714,-1703,-1692,-1679,-1669,
+-1666,-1664,-1656,-1642,-1631,-1625,-1618,-1608,-1600,-1597,-1591,-1578,-1566,-1560,-1557,-1550,-1542,-1537,-1535,-1530,-1521,
+-1515,-1511,-1505,-1499,-1495,-1492,-1488,-1483,-1480,-1479,-1473,-1462,-1453,-1448,-1445,-1439,-1431,-1425,-1422,-1420,-1416,
+-1410,-1403,-1397,-1393,-1390,-1385,-1378,-1371,-1364,-1357,-1350,-1342,-1334,-1325,-1316,-1306,-1294,-1281,-1268,-1255,-1239,
+-1219,-1199,-1182,-1167,-1152,-1135,-1115,-1091,-1065,-1041,-1017,-988,-955,-925,-899,-870,-840,-813,-790,-763,-728,
+-693,-662,-628,-585,-538,-494,-452,-405,-360,-317,-273,-222,-171,-124,-76,-23,27,76,132,197,255,
+298,341,382,378,304,210,176,216,285,364,483,652,842,1055,1338,1679,1957,2058,2010,1908,1761,
+1503,1153,868,784,882,1039,1166,1265,1361,1464,1571,1679,1779,1862,1930,1993,2048,2085,2091,2068,2029,
+1996,1983,1987,1990,1979,1952,1912,1864,1817,1781,1751,1716,1672,1623,1565,1482,1371,1257,1164,1085,1006,
+931,879,849,817,763,695,624,546,454,349,238,125,15,-86,-176,-253,-321,-385,-455,-533,-609,
+-667,-702,-730,-767,-820,-886,-959,-1031,-1095,-1149,-1208,-1276,-1346,-1403,-1440,-1450,-1424,-1367,-1314,-1312,-1377,
+-1487,-1612,-1737,-1841,-1892,-1879,-1833,-1799,-1789,-1791,-1794,-1804,-1822,-1844,-1879,-1947,-2049,-2156,-2228,-2256,-2249,
+-2226,-2207,-2211,-2241,-2281,-2318,-2355,-2402,-2447,-2473,-2481,-2489,-2510,-2536,-2556,-2566,-2573,-2590,-2626,-2675,-2711,
+-2715,-2704,-2704,-2723,-2734,-2718,-2676,-2617,-2541,-2445,-2340,-2241,-2166,-2124,-2114,-2117,-2101,-2052,-1974,-1879,-1772,
+-1655,-1546,-1464,-1408,-1360,-1298,-1213,-1113,-1024,-977,-980,-1004,-1011,-991,-969,-970,-988,-1001,-993,-974,-960,
+-948,-923,-878,-830,-812,-830,-852,-837,-782,-719,-679,-662,-647,-618,-586,-565,-560,-558,-545,-522,-495,
+-470,-443,-409,-372,-340,-317,-302,-294,-288,-277,-257,-228,-194,-161,-130,-104,-79,-53,-24,2,26,
+49,73,97,120,146,180,216,250,284,316,346,375,407,445,482,514,545,584,626,662,696,
+734,777,818,858,902,951,998,1042,1088,1138,1186,1230,1269,1306,1339,1374,1415,1461,1503,1538,1574,
+1613,1650,1684,1715,1744,1763,1779,1808,1854,1898,1924,1940,1955,1963,1951,1926,1908,1904,1904,1902,1903,
+1906,1905,1900,1897,1897,1890,1877,1868,1865,1862,1853,1844,1839,1833,1823,1812,1807,1802,1793,1783,1778,
+1777,1774,1770,1767,1765,1763,1764,1770,1781,1791,1803,1816,1829,1836,1842,1850,1852,1841,1825,1821,1808,
+1801,1789,1764,1730,1697,1663,1620,1567,1517,1481,1454,1424,1384,1340,1297,1259,1220,1183,1152,1124,1094,
+1060,1027,998,968,937,907,878,844,794,728,655,590,544,529,552,609,671,702,681,621,554,
+496,440,375,311,268,251,262,302,366,428,453,431,380,322,267,222,182,122,17,-126,-270,
+-390,-499,-613,-720,-804,-872,-940,-1005,-1052,-1083,-1120,-1174,-1233,-1285,-1325,-1356,-1380,-1399,-1415,-1428,-1454,
+-1512,-1600,-1687,-1748,-1788,-1820,-1841,-1840,-1828,-1825,-1834,-1844,-1850,-1852,-1843,-1820,-1799,-1788,-1768,-1725,-1677,
+-1649,-1634,-1608,-1574,-1528,-1428,-1254,-1088,-1048,-1117,-1141,-1036,-912,-931,-1092,-1256,-1341,-1387,-1456,-1540,-1610,
+-1671,-1739,-1809,-1868,-1918,-1961,-1987,-1989,-1985,-1985,-1981,-1962,-1933,-1905,-1885,-1884,-1905,-1920,-1881,-1790,-1721,
+-1745,-1845,-1940,-1988,-2023,-2103,-2244,-2414,-2584,-2745,-2902,-3042,-3142,-3191,-3211,-3249,-3335,-3467,-3614,-3748,-3847,
+-3906,-3937,-3962,-3993,-4025,-4061,-4107,-4165,-4224,-4278,-4332,-4384,-4421,-4436,-4441,-4452,-4461,-4455,-4447,-4460,-4490,
+-4509,-4502,-4485,-4479,-4482,-4483,-4481,-4484,-4488,-4480,-4458,-4437,-4424,-4420,-4421,-4432,-4453,-4476,-4490,-4499,-4508,
+-4517,-4516,-4507,-4504,-4513,-4517,-4498,-4468,-4465,-4504,-4568,-4635,-4708,-4799,-4896,-4969,-5011,-5043,-5089,-5148,-5206,
+-5258,-5314,-5378,-5441,-5496,-5543,-5598,-5669,-5753,-5835,-5910,-5986,-6067,-6143,-6204,-6256,-6319,-6397,-6472,-6534,-6587,
+-6645,-6712,-6780,-6844,-6903,-6952,-6995,-7036,-7081,-7125,-7168,-7216,-7273,-7334,-7389,-7439,-7489,-7538,-7583,-7630,-7694,
+-7780,-7874,-7968,-8060,-8150,-8233,-8309,-8392,-8482,-8563,-8623,-8670,-8715,-8755,-8783,-8811,-8849,-8880,-8887,-8901,-8979,
+-9127,-9272,-9341,-9346,-9351,-9386,-9431,-9458,-9476,-9499,-9523,-9540,-9558,-9582,-9599,-9598,-9589,-9591,-9611,-9635,-9655,
+-9665,-9662,-9642,-9613,-9590,-9578,-9561,-9523,-9464,-9396,-9322,-9225,-9096,-8955,-8852,-8818,-8839,-8869,-8870,-8836,-8777,
+-8705,-8629,-8554,-8470,-8364,-8236,-8109,-7996,-7890,-7782,-7678,-7589,-7504,-7406,-7288,-7156,-7007,-6843,-6683,-6551,-6451,
+-6366,-6285,-6211,-6139,-6053,-5949,-5839,-5729,-5607,-5459,-5294,-5129,-4974,-4828,-4694,-4570,-4443,-4301,-4154,-4024,-3921,
+-3830,-3726,-3594,-3428,-3242,-3069,-2936,-2835,-2726,-2573,-2392,-2233,-2138,-2104,-2101,-2104,-2106,-2095,-2034,-1889,-1666,
+-1419,-1212,-1068,-955,-816,-602,-299,56,394,644,784,849,897,967,1056,1142,1217,1286,1354,1417,1477,
+1550,1651,1770,1883,1979,2067,2154,2233,2298,2359,2432,2514,2594,2667,2742,2820,2897,2966,3034,3103,3174,
+3248,3329,3414,3495,3574,3664,3762,3849,3913,3970,4046,4132,4196,4221,4234,4276,4361,4474,4594,4713,4822,
+4912,4988,5060,5126,5175,5203,5216,5206,5157,5085,5059,5154,5374,5635,5837,5924,5895,5803,5745,5817,6021,
+6244,6353,6313,6202,6118,6094,6087,6039,5928,5792,5703,5703,5770,5847,5892,5901,5893,5895,5935,6010,6070,
+6064,6000,5946,5947,5987,6033,6076,6110,6110,6059,5976,5906,5881,5913,5989,6054,6035,5910,5743,5613,5548,
+5549,5657,5913,6269,6585,6755,6805,6824,6866,6916,6948,6958,6966,6999,7072,7172,7273,7373,7503,7687,7908,
+8117,8271,8331,8274,8127,7972,7874,7818,7742,7638,7565,7563,7594,7607,7604,7621,7662,7698,7719,7744,7780,
+7796,7777,7749,7747,7762,7759,7734,7716,7726,7749,7762,7767,7778,7804,7835,7862,7887,7915,7946,7980,8012,
+8036,8050,8056,8054,8037,8003,7964,7930,7900,7869,7834,7799,7756,7703,7652,7611,7557,7455,7293,7102,6918,
+6755,6618,6508,6416,6326,6251,6236,6305,6404,6450,6424,6381,6366,6365,6341,6291,6240,6199,6154,6098,6036,
+5975,5913,5852,5797,5745,5688,5624,5558,5491,5426,5369,5330,5301,5262,5208,5155,5113,5075,5025,4957,4876,
+4784,4692,4623,4591,4581,4560,4514,4455,4400,4356,4322,4291,4256,4215,4175,4147,4127,4096,4046,3995,3962,
+3941,3916,3883,3853,3825,3784,3717,3634,3554,3494,3455,3424,3389,3352,3320,3290,3250,3203,3169,3155,3139,
+3092,3018,2947,2894,2852,2819,2802,2793,2763,2701,2634,2595,2587,2589,2591,2595,2592,2575,2550,2532,2517,
+2491,2450,2407,2368,2326,2280,2241,2208,2171,2122,2078,2053,2044,2035,2019,2002,1987,1974,1961,1939,1901,
+1849,1806,1796,1821,1858,1877,1871,1855,1847,1851,1851,1829,1790,1755,1740,1739,1747,1763,1785,1795,1767,
+1706,1646,1618,1621,1633,1637,1636,1640,1647,1647,1632,1612,1601,1604,1611,1617,1624,1639,1657,1664,1657,
+1646,1640,1639,1631,1610,1583,1558,1540,1532,1533,1537,1535,1524,1512,1502,1489,1468,1441,1424,1422,1427,
+1427,1425,1423,1419,1410,1402,1406,1416,1421,1423,1433,1453,1465,1454,1429,1412,1411,1414,1410,1399,1386,
+1370,1350,1333,1320,1311,1303,1299,1304,1318,1330,1331,1319,1302,1285,1270,1255,1240,1225,1211,1198,1179,
+1157,1135,1115,1093,1067,1037,1007,978,948,917,888,861,834,805,775,749,729,712,693,668,637,
+603,567,531,497,466,437,407,377,349,324,302,281,261,238,209,176,142,113,87,60,30,
+-3,-38,-73,-107,-140,-174,-209,-245,-279,-310,-338,-369,-403,-439,-471,-498,-523,-548,-577,-609,-645,
+-684,-719,-746,-767,-788,-814,-842,-869,-894,-915,-933,-951,-973,-1000,-1031,-1058,-1079,-1098,-1118,-1138,-1155,
+-1172,-1194,-1223,-1258,-1290,-1316,-1337,-1358,-1383,-1413,-1443,-1471,-1494,-1514,-1530,-1548,-1569,-1590,-1607,-1619,-1629,
+-1641,-1656,-1672,-1688,-1702,-1715,-1727,-1741,-1754,-1766,-1775,-1785,-1796,-1809,-1822,-1834,-1844,-1853,-1860,-1864,-1866,
+-1868,-1874,-1881,-1884,-1883,-1879,-1876,-1873,-1870,-1866,-1862,-1855,-1847,-1839,-1834,-1829,-1821,-1810,-1797,-1785,-1771,
+-1759,-1750,-1743,-1734,-1725,-1716,-1708,-1698,-1687,-1676,-1664,-1650,-1639,-1636,-1635,-1629,-1617,-1608,-1603,-1594,-1580,
+-1569,-1565,-1562,-1553,-1540,-1532,-1528,-1523,-1517,-1514,-1513,-1509,-1501,-1495,-1491,-1487,-1483,-1481,-1479,-1476,-1472,
+-1470,-1471,-1468,-1461,-1453,-1447,-1442,-1437,-1429,-1423,-1420,-1418,-1416,-1413,-1407,-1402,-1398,-1395,-1391,-1388,-1383,
+-1377,-1370,-1363,-1356,-1348,-1338,-1328,-1318,-1306,-1293,-1281,-1268,-1253,-1235,-1218,-1202,-1185,-1167,-1152,-1136,-1115,
+-1090,-1066,-1043,-1015,-982,-953,-928,-899,-864,-835,-814,-789,-755,-719,-688,-655,-611,-563,-521,-478,-427,
+-376,-334,-294,-246,-195,-149,-105,-53,2,56,115,181,236,265,286,305,290,216,129,112,183,
+286,391,533,734,957,1175,1408,1654,1838,1890,1842,1770,1664,1448,1135,870,790,880,1025,1139,1217,
+1292,1383,1493,1614,1726,1817,1894,1970,2045,2102,2128,2118,2086,2053,2038,2041,2044,2032,2008,1975,1936,
+1894,1855,1812,1759,1703,1655,1607,1534,1429,1318,1227,1147,1058,969,907,873,839,787,724,659,588,
+498,392,276,157,37,-74,-173,-261,-340,-414,-488,-562,-624,-658,-667,-677,-712,-769,-833,-894,-954,
+-1015,-1076,-1136,-1193,-1247,-1292,-1322,-1327,-1299,-1254,-1233,-1277,-1384,-1519,-1652,-1774,-1878,-1942,-1948,-1915,-1880,
+-1860,-1850,-1843,-1842,-1850,-1866,-1901,-1971,-2070,-2165,-2225,-2246,-2243,-2229,-2218,-2228,-2261,-2301,-2333,-2365,-2412,
+-2466,-2503,-2512,-2510,-2514,-2524,-2531,-2535,-2545,-2571,-2616,-2674,-2723,-2745,-2743,-2737,-2739,-2743,-2732,-2695,-2634,
+-2550,-2448,-2336,-2227,-2136,-2080,-2061,-2058,-2039,-1992,-1922,-1835,-1730,-1618,-1522,-1460,-1419,-1371,-1307,-1227,-1133,
+-1032,-947,-907,-909,-922,-921,-918,-934,-965,-985,-971,-934,-897,-866,-829,-780,-739,-741,-787,-827,-810,
+-731,-643,-597,-597,-604,-584,-549,-531,-543,-567,-573,-551,-515,-479,-445,-409,-372,-339,-317,-306,-302,
+-301,-292,-274,-248,-219,-187,-156,-129,-108,-89,-65,-39,-16,4,27,53,83,114,151,190,228,
+263,295,326,358,396,440,482,516,547,583,623,658,690,723,762,802,843,892,945,996,1042,
+1086,1132,1177,1221,1266,1310,1350,1388,1428,1471,1510,1543,1575,1609,1639,1666,1696,1726,1751,1773,1806,
+1852,1894,1917,1926,1936,1942,1933,1914,1900,1896,1894,1891,1892,1897,1898,1896,1894,1890,1880,1864,1851,
+1844,1839,1833,1829,1828,1823,1812,1802,1798,1796,1792,1786,1785,1785,1784,1781,1777,1771,1764,1762,1769,
+1781,1795,1811,1828,1841,1847,1851,1855,1853,1840,1821,1800,1780,1760,1737,1706,1671,1637,1603,1564,1521,
+1481,1447,1416,1378,1331,1281,1238,1204,1172,1139,1106,1073,1039,1007,980,956,928,897,867,844,824,
+794,744,672,588,512,466,460,496,562,627,656,634,578,513,448,379,311,264,248,260,297,
+349,397,411,384,335,282,234,191,147,87,-7,-128,-245,-341,-435,-541,-647,-731,-797,-863,-926,
+-970,-1000,-1037,-1095,-1162,-1222,-1268,-1303,-1334,-1367,-1403,-1432,-1454,-1486,-1539,-1600,-1650,-1688,-1725,-1759,-1780,
+-1789,-1796,-1803,-1809,-1816,-1822,-1818,-1800,-1783,-1776,-1759,-1718,-1673,-1651,-1637,-1608,-1570,-1534,-1460,-1314,-1160,
+-1118,-1184,-1217,-1125,-1008,-1022,-1173,-1326,-1398,-1433,-1492,-1566,-1625,-1678,-1747,-1823,-1886,-1939,-1986,-2019,-2032,
+-2039,-2048,-2044,-2012,-1966,-1933,-1925,-1932,-1934,-1913,-1859,-1798,-1782,-1838,-1929,-1995,-2025,-2054,-2123,-2243,-2399,
+-2577,-2763,-2938,-3082,-3179,-3227,-3245,-3267,-3329,-3440,-3585,-3727,-3833,-3896,-3933,-3965,-4000,-4034,-4071,-4122,-4182,
+-4234,-4274,-4314,-4356,-4386,-4396,-4400,-4414,-4429,-4432,-4432,-4447,-4471,-4478,-4464,-4448,-4443,-4444,-4442,-4443,-4452,
+-4459,-4450,-4428,-4410,-4402,-4399,-4402,-4415,-4435,-4449,-4449,-4445,-4449,-4460,-4465,-4460,-4453,-4449,-4431,-4381,-4318,
+-4287,-4311,-4371,-4442,-4529,-4648,-4785,-4895,-4954,-4984,-5022,-5081,-5148,-5211,-5272,-5336,-5398,-5454,-5504,-5560,-5628,
+-5703,-5775,-5846,-5925,-6011,-6087,-6144,-6194,-6261,-6344,-6420,-6478,-6529,-6590,-6660,-6727,-6784,-6834,-6879,-6922,-6969,
+-7018,-7064,-7106,-7155,-7219,-7289,-7350,-7399,-7444,-7488,-7529,-7576,-7640,-7722,-7811,-7900,-7992,-8085,-8171,-8252,-8337,
+-8423,-8492,-8543,-8592,-8646,-8689,-8709,-8726,-8757,-8789,-8803,-8830,-8926,-9083,-9222,-9278,-9275,-9280,-9318,-9359,-9382,
+-9399,-9426,-9450,-9464,-9476,-9497,-9519,-9526,-9523,-9531,-9555,-9582,-9596,-9592,-9568,-9532,-9501,-9493,-9501,-9503,-9477,
+-9421,-9348,-9266,-9167,-9045,-8919,-8827,-8797,-8813,-8830,-8815,-8769,-8707,-8641,-8574,-8506,-8426,-8323,-8198,-8068,-7952,
+-7845,-7742,-7645,-7563,-7486,-7393,-7275,-7138,-6982,-6813,-6648,-6516,-6420,-6345,-6274,-6207,-6145,-6074,-5982,-5875,-5757,
+-5629,-5485,-5334,-5185,-5036,-4884,-4737,-4605,-4482,-4353,-4217,-4088,-3977,-3875,-3763,-3624,-3459,-3285,-3124,-2991,-2875,
+-2745,-2581,-2401,-2249,-2154,-2104,-2061,-2012,-1976,-1975,-1987,-1943,-1791,-1547,-1288,-1091,-970,-869,-708,-443,-101,
+242,516,696,808,892,972,1048,1119,1191,1269,1348,1409,1456,1515,1610,1732,1851,1955,2054,2151,2232,
+2288,2338,2407,2493,2578,2654,2728,2801,2866,2922,2981,3047,3116,3186,3264,3351,3434,3515,3604,3705,3797,
+3866,3928,4007,4100,4173,4212,4235,4275,4340,4427,4530,4646,4762,4860,4938,5002,5055,5089,5101,5088,5044,
+4972,4907,4911,5018,5205,5415,5606,5742,5785,5732,5664,5704,5897,6142,6287,6271,6165,6075,6049,6050,6010,
+5899,5754,5654,5654,5733,5825,5878,5884,5867,5863,5898,5960,5998,5978,5935,5932,5974,6010,6011,6011,6040,
+6063,6024,5930,5837,5797,5816,5872,5925,5927,5856,5737,5615,5510,5449,5501,5728,6090,6444,6673,6770,6805,
+6830,6849,6860,6883,6942,7054,7208,7368,7493,7578,7666,7804,7993,8185,8325,8371,8313,8188,8068,7999,7958,
+7890,7785,7689,7641,7631,7635,7653,7699,7755,7785,7784,7777,7780,7777,7751,7718,7704,7708,7700,7668,7632,
+7620,7630,7646,7660,7682,7715,7755,7794,7831,7868,7909,7953,7997,8032,8054,8063,8065,8057,8038,8016,8001,
+7989,7968,7933,7888,7831,7763,7699,7649,7595,7504,7361,7185,6993,6790,6598,6463,6398,6358,6296,6235,6238,
+6312,6396,6431,6424,6411,6404,6388,6356,6316,6270,6218,6163,6110,6053,5986,5918,5861,5814,5759,5693,5622,
+5554,5489,5431,5390,5359,5316,5255,5192,5148,5116,5073,5003,4912,4818,4741,4695,4681,4670,4635,4572,4501,
+4441,4393,4352,4318,4290,4262,4232,4201,4171,4133,4086,4039,4002,3975,3948,3919,3890,3860,3815,3750,3668,
+3588,3526,3487,3461,3432,3395,3357,3320,3278,3231,3194,3171,3143,3093,3031,2979,2939,2898,2863,2857,2872,
+2864,2801,2710,2642,2620,2624,2632,2633,2623,2596,2564,2543,2532,2513,2479,2439,2398,2352,2298,2249,2209,
+2171,2129,2092,2070,2056,2039,2015,1992,1973,1958,1945,1930,1903,1858,1813,1803,1834,1878,1893,1872,1848,
+1850,1867,1866,1834,1795,1775,1769,1758,1745,1753,1781,1797,1770,1707,1647,1621,1624,1637,1645,1647,1650,
+1656,1658,1647,1625,1608,1605,1614,1623,1634,1654,1677,1690,1689,1685,1686,1685,1672,1650,1625,1600,1576,
+1558,1553,1556,1552,1533,1511,1498,1488,1467,1437,1413,1405,1409,1416,1425,1432,1429,1411,1392,1384,1388,
+1395,1400,1411,1430,1441,1432,1410,1390,1382,1382,1387,1391,1386,1364,1333,1309,1300,1297,1287,1274,1273,
+1287,1303,1307,1296,1278,1260,1246,1235,1223,1211,1200,1187,1168,1145,1125,1108,1089,1063,1032,1003,976,
+948,917,889,862,833,798,765,741,725,709,687,660,630,600,566,530,495,463,434,404,372,
+342,316,294,273,252,227,198,163,130,100,73,46,16,-15,-49,-83,-116,-149,-181,-215,-251,
+-285,-315,-343,-372,-406,-441,-473,-499,-520,-543,-566,-592,-620,-654,-692,-728,-755,-779,-806,-839,-869,
+-891,-908,-924,-942,-964,-991,-1020,-1048,-1072,-1095,-1117,-1138,-1156,-1171,-1190,-1214,-1242,-1269,-1290,-1308,-1327,
+-1351,-1379,-1409,-1436,-1460,-1481,-1499,-1515,-1531,-1549,-1567,-1581,-1592,-1604,-1620,-1636,-1652,-1666,-1681,-1697,-1714,
+-1730,-1743,-1751,-1757,-1766,-1779,-1795,-1807,-1814,-1818,-1823,-1827,-1829,-1830,-1834,-1841,-1846,-1846,-1843,-1840,-1837,
+-1833,-1828,-1823,-1817,-1810,-1802,-1797,-1792,-1785,-1776,-1765,-1754,-1740,-1728,-1718,-1710,-1700,-1691,-1683,-1677,-1669,
+-1657,-1646,-1634,-1622,-1611,-1605,-1602,-1595,-1586,-1579,-1574,-1564,-1549,-1537,-1533,-1530,-1522,-1512,-1504,-1499,-1494,
+-1489,-1488,-1487,-1483,-1478,-1474,-1472,-1469,-1466,-1465,-1464,-1463,-1460,-1459,-1460,-1459,-1456,-1451,-1447,-1443,-1437,
+-1431,-1424,-1420,-1417,-1415,-1413,-1411,-1409,-1406,-1401,-1395,-1391,-1388,-1383,-1377,-1372,-1368,-1360,-1349,-1338,-1327,
+-1316,-1304,-1293,-1281,-1265,-1249,-1236,-1225,-1207,-1186,-1167,-1152,-1134,-1112,-1089,-1066,-1038,-1005,-977,-954,-925,
+-888,-857,-838,-815,-779,-742,-711,-679,-636,-589,-548,-504,-450,-395,-355,-318,-270,-217,-172,-128,-72,
+-12,40,91,149,196,216,222,232,218,147,65,70,200,391,574,752,956,1174,1373,1551,1704,
+1793,1786,1721,1653,1562,1385,1139,944,894,959,1048,1111,1161,1227,1317,1425,1543,1657,1756,1846,1937,
+2024,2096,2138,2145,2123,2092,2074,2074,2075,2064,2044,2020,1989,1949,1903,1850,1791,1734,1690,1647,1578,
+1478,1372,1286,1207,1115,1023,956,917,879,827,768,708,637,546,436,315,187,57,-63,-170,-269,
+-363,-451,-529,-594,-633,-637,-619,-616,-651,-711,-763,-795,-825,-876,-943,-1007,-1056,-1093,-1130,-1168,-1192,
+-1192,-1184,-1208,-1294,-1432,-1579,-1706,-1812,-1903,-1973,-2003,-1998,-1975,-1951,-1931,-1919,-1916,-1922,-1934,-1960,-2012,
+-2086,-2156,-2201,-2219,-2222,-2219,-2217,-2230,-2262,-2299,-2329,-2361,-2414,-2481,-2530,-2544,-2536,-2527,-2521,-2512,-2505,
+-2513,-2545,-2595,-2652,-2703,-2737,-2751,-2751,-2746,-2738,-2720,-2682,-2622,-2540,-2443,-2337,-2231,-2142,-2089,-2070,-2062,
+-2035,-1981,-1909,-1819,-1708,-1593,-1507,-1465,-1440,-1393,-1318,-1232,-1142,-1045,-948,-882,-863,-871,-879,-886,-911,
+-952,-979,-963,-909,-845,-792,-750,-718,-709,-740,-798,-832,-796,-696,-592,-542,-551,-574,-569,-540,-525,
+-546,-585,-602,-580,-535,-488,-449,-413,-379,-350,-330,-319,-319,-322,-318,-302,-280,-256,-226,-192,-161,
+-139,-120,-97,-69,-43,-21,2,30,59,89,123,162,201,236,268,302,340,384,430,471,504,
+532,565,602,637,670,708,752,800,850,903,959,1009,1051,1090,1128,1167,1208,1252,1298,1341,1381,
+1421,1463,1501,1533,1565,1596,1624,1650,1680,1713,1743,1770,1805,1848,1886,1904,1911,1917,1923,1920,1909,
+1900,1897,1893,1887,1884,1885,1885,1881,1877,1871,1862,1848,1835,1827,1822,1820,1822,1824,1819,1808,1798,
+1793,1790,1787,1786,1786,1785,1783,1781,1778,1770,1762,1762,1773,1788,1800,1813,1827,1838,1840,1837,1835,
+1832,1819,1800,1766,1745,1720,1690,1656,1622,1590,1559,1528,1494,1455,1411,1365,1317,1266,1219,1184,1160,
+1137,1108,1070,1028,990,961,940,919,892,861,834,817,807,793,762,701,615,525,455,419,422,
+463,528,583,598,575,529,468,391,315,271,271,296,324,347,362,356,327,286,246,207,161,
+106,39,-41,-129,-204,-267,-341,-442,-550,-641,-715,-786,-850,-896,-932,-980,-1048,-1121,-1185,-1237,-1279,
+-1313,-1351,-1396,-1436,-1458,-1469,-1488,-1518,-1550,-1585,-1632,-1687,-1733,-1758,-1766,-1766,-1770,-1786,-1806,-1809,-1790,
+-1770,-1763,-1752,-1718,-1681,-1663,-1649,-1614,-1574,-1548,-1499,-1373,-1220,-1163,-1234,-1308,-1274,-1190,-1188,-1289,-1395,
+-1441,-1462,-1508,-1569,-1620,-1672,-1743,-1818,-1877,-1925,-1974,-2012,-2031,-2043,-2055,-2046,-1994,-1923,-1878,-1882,-1907,
+-1914,-1880,-1822,-1782,-1797,-1868,-1955,-2023,-2072,-2122,-2190,-2285,-2420,-2597,-2793,-2970,-3104,-3192,-3240,-3260,-3278,
+-3328,-3429,-3567,-3706,-3814,-3885,-3935,-3976,-4012,-4041,-4075,-4126,-4183,-4228,-4258,-4290,-4328,-4354,-4360,-4362,-4377,
+-4398,-4411,-4418,-4428,-4437,-4435,-4427,-4426,-4430,-4429,-4422,-4422,-4431,-4432,-4419,-4401,-4391,-4385,-4378,-4376,-4388,
+-4404,-4410,-4401,-4389,-4391,-4404,-4413,-4408,-4389,-4361,-4316,-4251,-4186,-4157,-4180,-4236,-4300,-4380,-4500,-4656,-4799,
+-4890,-4934,-4968,-5019,-5086,-5156,-5225,-5291,-5354,-5411,-5465,-5521,-5584,-5650,-5717,-5788,-5869,-5953,-6024,-6079,-6131,
+-6201,-6283,-6356,-6413,-6468,-6533,-6601,-6660,-6712,-6762,-6813,-6860,-6908,-6958,-7006,-7054,-7107,-7173,-7243,-7304,-7352,
+-7396,-7439,-7481,-7527,-7588,-7662,-7745,-7834,-7929,-8026,-8113,-8194,-8275,-8353,-8417,-8471,-8531,-8590,-8623,-8621,-8617,
+-8640,-8679,-8713,-8764,-8879,-9042,-9174,-9220,-9212,-9217,-9254,-9291,-9310,-9328,-9356,-9379,-9388,-9394,-9411,-9433,-9443,
+-9445,-9455,-9479,-9506,-9516,-9499,-9459,-9416,-9394,-9405,-9432,-9443,-9416,-9352,-9268,-9176,-9074,-8960,-8846,-8764,-8737,
+-8750,-8764,-8748,-8706,-8655,-8604,-8548,-8483,-8400,-8292,-8162,-8031,-7914,-7812,-7717,-7631,-7556,-7479,-7383,-7259,-7117,
+-6961,-6795,-6633,-6502,-6411,-6346,-6287,-6230,-6172,-6103,-6012,-5900,-5777,-5648,-5514,-5378,-5240,-5094,-4934,-4772,-4630,
+-4511,-4399,-4278,-4150,-4025,-3906,-3778,-3629,-3467,-3310,-3170,-3045,-2915,-2766,-2596,-2423,-2277,-2175,-2104,-2030,-1939,
+-1862,-1845,-1892,-1932,-1873,-1681,-1416,-1183,-1037,-944,-816,-590,-283,38,318,546,736,893,1009,1082,1130,
+1184,1262,1348,1418,1464,1517,1603,1718,1833,1934,2033,2136,2223,2279,2325,2388,2471,2553,2626,2696,2765,
+2826,2879,2936,3001,3064,3126,3196,3279,3363,3444,3531,3629,3722,3798,3869,3954,4051,4136,4198,4244,4286,
+4331,4389,4476,4593,4714,4811,4879,4928,4967,4992,4990,4955,4887,4808,4766,4808,4932,5100,5274,5446,5595,
+5668,5637,5565,5578,5739,5970,6130,6151,6080,6008,5983,5978,5932,5815,5668,5579,5599,5697,5795,5843,5845,
+5831,5830,5854,5887,5892,5861,5842,5880,5947,5969,5935,5913,5952,6005,5993,5914,5832,5793,5784,5776,5761,
+5741,5712,5664,5593,5502,5427,5447,5627,5939,6271,6515,6644,6690,6693,6681,6686,6736,6844,7002,7188,7365,
+7491,7559,7615,7719,7887,8077,8226,8292,8280,8233,8196,8184,8165,8102,7993,7877,7786,7730,7707,7728,7794,
+7873,7917,7906,7864,7826,7800,7766,7713,7654,7606,7570,7534,7499,7475,7469,7484,7518,7568,7625,7678,7726,
+7771,7815,7858,7902,7950,7998,8034,8056,8066,8067,8061,8053,8047,8037,8015,7980,7942,7898,7844,7786,7730,
+7663,7559,7417,7255,7072,6840,6578,6374,6305,6332,6346,6293,6230,6239,6322,6416,6465,6468,6450,6434,6426,
+6411,6371,6306,6236,6176,6119,6051,5982,5928,5884,5832,5764,5691,5622,5557,5497,5450,5413,5365,5295,5223,
+5174,5145,5111,5049,4966,4884,4825,4795,4780,4751,4693,4613,4539,4482,4438,4397,4362,4338,4319,4295,4260,
+4216,4171,4126,4083,4045,4013,3989,3968,3943,3906,3856,3795,3724,3649,3582,3537,3513,3490,3454,3406,3355,
+3306,3262,3225,3192,3150,3094,3039,3000,2967,2925,2890,2893,2927,2935,2879,2784,2705,2668,2660,2663,2668,
+2663,2636,2597,2567,2554,2538,2507,2466,2425,2380,2324,2265,2214,2170,2132,2101,2078,2058,2034,2007,1986,
+1969,1952,1936,1922,1903,1871,1838,1835,1871,1910,1906,1858,1815,1817,1844,1849,1822,1799,1803,1812,1794,
+1762,1753,1772,1777,1737,1673,1626,1616,1630,1647,1658,1664,1667,1672,1676,1670,1650,1629,1620,1623,1628,
+1636,1656,1684,1703,1706,1705,1710,1711,1699,1678,1657,1632,1600,1570,1560,1565,1562,1541,1513,1493,1478,
+1456,1425,1397,1382,1382,1395,1418,1441,1447,1428,1396,1373,1368,1371,1375,1382,1392,1399,1397,1386,1371,
+1358,1352,1356,1368,1370,1349,1315,1291,1285,1284,1272,1252,1242,1249,1265,1275,1271,1255,1236,1222,1213,
+1204,1193,1180,1164,1144,1121,1101,1085,1067,1044,1017,993,972,947,919,892,865,832,791,754,729,
+713,697,674,646,619,591,558,523,488,459,433,405,374,342,314,290,268,246,220,190,157,
+124,92,61,30,1,-27,-57,-89,-121,-153,-185,-219,-254,-288,-318,-346,-375,-407,-443,-476,-503,
+-523,-543,-563,-583,-603,-631,-668,-706,-738,-764,-793,-828,-861,-884,-901,-917,-936,-959,-984,-1013,-1043,
+-1071,-1098,-1124,-1147,-1164,-1179,-1195,-1215,-1236,-1254,-1269,-1285,-1304,-1327,-1354,-1380,-1403,-1425,-1447,-1468,-1485,
+-1499,-1514,-1531,-1546,-1558,-1570,-1585,-1601,-1615,-1628,-1642,-1661,-1681,-1701,-1715,-1724,-1729,-1737,-1751,-1769,-1782,
+-1787,-1788,-1790,-1795,-1797,-1797,-1799,-1803,-1807,-1808,-1805,-1803,-1800,-1796,-1790,-1786,-1781,-1776,-1769,-1763,-1757,
+-1750,-1742,-1733,-1723,-1711,-1698,-1688,-1678,-1666,-1656,-1648,-1643,-1635,-1623,-1610,-1599,-1589,-1578,-1569,-1562,-1554,
+-1547,-1541,-1537,-1529,-1518,-1508,-1503,-1498,-1491,-1483,-1478,-1472,-1466,-1461,-1458,-1456,-1453,-1451,-1451,-1451,-1449,
+-1446,-1445,-1445,-1445,-1444,-1444,-1444,-1443,-1443,-1443,-1444,-1443,-1440,-1436,-1430,-1425,-1421,-1416,-1413,-1411,-1413,
+-1413,-1407,-1398,-1392,-1388,-1383,-1378,-1376,-1375,-1369,-1358,-1346,-1336,-1327,-1316,-1307,-1295,-1279,-1261,-1249,-1242,
+-1227,-1205,-1182,-1165,-1148,-1128,-1107,-1086,-1058,-1026,-1000,-978,-949,-912,-881,-861,-838,-801,-762,-731,-698,
+-654,-606,-566,-523,-469,-418,-380,-343,-293,-237,-192,-148,-88,-26,18,53,100,146,168,174,185,
+172,97,7,31,232,533,813,1032,1226,1417,1585,1711,1784,1787,1717,1618,1529,1432,1287,1116,1001,
+983,1019,1049,1070,1116,1195,1289,1387,1489,1595,1701,1805,1906,1996,2068,2116,2138,2131,2108,2089,2085,
+2084,2079,2069,2055,2027,1980,1924,1869,1820,1777,1741,1697,1626,1527,1426,1341,1263,1177,1091,1026,980,
+934,879,823,766,695,601,488,360,222,79,-53,-170,-278,-381,-474,-549,-602,-622,-605,-569,-555,
+-589,-646,-682,-681,-678,-711,-781,-853,-899,-929,-971,-1033,-1099,-1150,-1193,-1258,-1367,-1509,-1648,-1761,-1847,
+-1923,-1991,-2040,-2058,-2044,-2014,-1985,-1972,-1980,-2001,-2023,-2045,-2076,-2119,-2161,-2189,-2202,-2209,-2211,-2214,-2227,
+-2253,-2285,-2315,-2355,-2418,-2495,-2549,-2560,-2542,-2521,-2504,-2483,-2468,-2477,-2519,-2580,-2641,-2692,-2728,-2747,-2748,
+-2734,-2713,-2685,-2646,-2590,-2519,-2434,-2342,-2250,-2172,-2125,-2105,-2090,-2054,-1992,-1911,-1812,-1692,-1572,-1493,-1466,
+-1454,-1407,-1317,-1216,-1127,-1042,-954,-883,-851,-847,-847,-848,-867,-909,-945,-942,-894,-827,-771,-740,-737,
+-764,-817,-866,-872,-813,-708,-608,-560,-568,-595,-601,-583,-569,-583,-615,-628,-604,-553,-500,-456,-422,
+-394,-372,-355,-346,-346,-350,-348,-335,-314,-292,-264,-228,-193,-165,-144,-118,-87,-57,-31,-7,18,
+43,67,97,135,174,210,244,282,326,374,419,456,484,510,540,575,611,649,694,747,803,
+859,916,971,1020,1059,1094,1129,1164,1200,1240,1282,1323,1362,1403,1445,1484,1519,1551,1584,1614,1642,
+1671,1702,1730,1757,1790,1829,1862,1883,1895,1906,1914,1912,1905,1898,1894,1888,1879,1873,1870,1867,1862,
+1855,1849,1841,1834,1827,1821,1817,1816,1820,1822,1817,1807,1799,1792,1785,1780,1780,1780,1777,1773,1772,
+1770,1763,1759,1766,1782,1796,1801,1804,1811,1816,1813,1805,1798,1792,1782,1766,1733,1716,1691,1659,1624,
+1591,1557,1525,1495,1462,1417,1361,1303,1251,1205,1166,1138,1118,1099,1071,1032,989,951,925,907,888,
+861,832,809,794,786,779,763,724,656,571,495,439,410,412,445,493,533,553,547,502,416,
+324,278,296,338,361,355,338,315,285,253,225,193,143,77,3,-67,-123,-158,-187,-243,-340,
+-457,-564,-654,-731,-794,-838,-881,-944,-1022,-1096,-1155,-1206,-1252,-1291,-1328,-1373,-1416,-1440,-1445,-1448,-1458,
+-1476,-1507,-1562,-1635,-1698,-1728,-1728,-1720,-1726,-1753,-1785,-1793,-1771,-1747,-1742,-1738,-1713,-1683,-1668,-1655,-1617,
+-1574,-1555,-1524,-1413,-1255,-1181,-1256,-1383,-1427,-1386,-1360,-1395,-1446,-1468,-1481,-1512,-1554,-1598,-1661,-1744,-1817,
+-1863,-1900,-1948,-1992,-2015,-2024,-2029,-2009,-1943,-1858,-1808,-1820,-1864,-1885,-1860,-1807,-1768,-1781,-1848,-1944,-2043,
+-2128,-2193,-2252,-2333,-2467,-2648,-2834,-2985,-3098,-3185,-3248,-3284,-3308,-3355,-3448,-3575,-3701,-3801,-3876,-3937,-3988,
+-4025,-4049,-4076,-4119,-4170,-4210,-4240,-4272,-4307,-4326,-4325,-4321,-4335,-4361,-4384,-4396,-4397,-4389,-4378,-4380,-4398,
+-4412,-4409,-4402,-4405,-4411,-4403,-4383,-4370,-4367,-4359,-4343,-4336,-4346,-4361,-4361,-4346,-4332,-4328,-4335,-4344,-4343,
+-4316,-4261,-4190,-4124,-4086,-4088,-4126,-4179,-4228,-4286,-4383,-4528,-4687,-4810,-4880,-4922,-4967,-5028,-5099,-5171,-5240,
+-5305,-5366,-5424,-5479,-5535,-5594,-5659,-5732,-5812,-5889,-5955,-6010,-6068,-6139,-6215,-6282,-6342,-6405,-6474,-6538,-6593,
+-6646,-6705,-6763,-6812,-6855,-6902,-6955,-7009,-7066,-7128,-7191,-7247,-7296,-7342,-7385,-7425,-7469,-7525,-7595,-7675,-7766,
+-7867,-7966,-8052,-8128,-8204,-8281,-8350,-8417,-8487,-8542,-8552,-8521,-8498,-8518,-8569,-8625,-8704,-8837,-9001,-9123,-9161,
+-9153,-9160,-9195,-9227,-9246,-9264,-9290,-9311,-9318,-9321,-9334,-9350,-9358,-9361,-9372,-9397,-9425,-9436,-9417,-9375,-9336,
+-9327,-9351,-9381,-9383,-9340,-9260,-9164,-9068,-8971,-8869,-8769,-8698,-8675,-8692,-8710,-8702,-8669,-8629,-8588,-8539,-8471,
+-8378,-8259,-8124,-7994,-7884,-7793,-7712,-7636,-7564,-7482,-7376,-7247,-7104,-6953,-6797,-6646,-6522,-6438,-6381,-6330,-6274,
+-6208,-6127,-6025,-5908,-5787,-5669,-5549,-5422,-5285,-5134,-4965,-4791,-4639,-4523,-4428,-4325,-4203,-4073,-3946,-3808,-3650,
+-3485,-3340,-3222,-3109,-2971,-2807,-2635,-2473,-2331,-2212,-2112,-2013,-1903,-1803,-1765,-1811,-1890,-1904,-1782,-1550,-1303,
+-1128,-1024,-922,-750,-504,-226,50,321,585,819,989,1085,1132,1176,1246,1337,1419,1479,1532,1609,1712,
+1817,1908,1997,2094,2185,2252,2306,2370,2447,2519,2582,2645,2715,2782,2839,2896,2957,3018,3079,3145,3220,
+3297,3373,3454,3541,3628,3708,3788,3880,3980,4074,4155,4221,4271,4311,4362,4449,4568,4682,4761,4811,4852,
+4891,4912,4895,4838,4759,4698,4696,4776,4918,5083,5244,5398,5525,5583,5553,5490,5490,5602,5779,5924,5982,
+5972,5949,5944,5936,5873,5736,5580,5497,5532,5637,5729,5768,5775,5780,5796,5820,5837,5829,5802,5794,5834,
+5889,5896,5854,5832,5874,5933,5938,5890,5849,5838,5814,5739,5630,5538,5491,5473,5450,5406,5364,5387,5527,
+5770,6045,6275,6417,6469,6460,6446,6484,6590,6737,6890,7035,7166,7261,7311,7348,7428,7578,7763,7920,8011,
+8052,8083,8127,8170,8178,8136,8060,7971,7882,7802,7751,7759,7835,7946,8028,8037,7985,7921,7878,7833,7747,
+7618,7492,7412,7376,7352,7318,7286,7284,7331,7415,7506,7577,7631,7683,7738,7789,7834,7880,7934,7987,8029,
+8058,8076,8084,8082,8071,8050,8018,7985,7959,7934,7898,7854,7811,7750,7638,7473,7284,7072,6797,6459,6174,
+6081,6183,6327,6365,6301,6251,6298,6412,6506,6532,6512,6493,6501,6512,6485,6411,6320,6241,6174,6106,6042,
+5995,5957,5909,5841,5766,5696,5630,5569,5519,5476,5425,5354,5279,5222,5187,5152,5098,5030,4967,4923,4897,
+4869,4819,4741,4653,4578,4526,4488,4452,4416,4388,4367,4343,4308,4262,4213,4167,4123,4082,4047,4026,4013,
+3991,3951,3899,3842,3782,3713,3643,3592,3565,3546,3511,3455,3390,3332,3283,3243,3203,3155,3102,3056,3022,
+2988,2946,2914,2920,2950,2956,2908,2828,2761,2719,2695,2688,2699,2707,2685,2635,2591,2570,2556,2526,2481,
+2438,2397,2347,2287,2229,2181,2143,2113,2088,2064,2037,2014,1999,1988,1972,1951,1931,1909,1878,1849,1851,
+1890,1927,1911,1844,1781,1771,1795,1808,1801,1808,1841,1861,1833,1780,1752,1756,1746,1698,1639,1612,1619,
+1638,1652,1662,1670,1675,1678,1682,1681,1668,1654,1648,1647,1643,1642,1658,1687,1707,1709,1707,1713,1718,
+1708,1689,1667,1640,1603,1568,1553,1556,1557,1541,1514,1488,1465,1441,1414,1389,1370,1362,1371,1400,1433,
+1448,1431,1395,1364,1350,1349,1351,1352,1352,1356,1361,1363,1356,1340,1325,1324,1334,1339,1325,1298,1279,
+1275,1275,1262,1237,1215,1207,1215,1229,1235,1229,1214,1199,1188,1178,1164,1146,1127,1106,1084,1063,1045,
+1027,1008,988,971,955,936,913,889,860,821,776,734,705,686,669,648,624,600,572,542,509,
+478,451,427,403,375,346,318,293,270,247,221,192,160,127,93,59,27,-1,-28,-55,-85,
+-118,-150,-183,-218,-252,-285,-316,-345,-374,-407,-442,-478,-507,-528,-546,-565,-584,-601,-624,-655,-692,
+-725,-751,-780,-814,-848,-874,-894,-912,-932,-953,-977,-1005,-1035,-1066,-1096,-1124,-1146,-1162,-1177,-1195,-1214,
+-1231,-1243,-1253,-1266,-1286,-1310,-1336,-1358,-1376,-1394,-1416,-1439,-1459,-1474,-1488,-1502,-1516,-1529,-1542,-1556,-1569,
+-1580,-1590,-1602,-1620,-1641,-1663,-1680,-1690,-1698,-1707,-1722,-1740,-1753,-1758,-1759,-1761,-1766,-1768,-1768,-1768,-1770,
+-1771,-1770,-1767,-1764,-1761,-1757,-1752,-1749,-1746,-1742,-1737,-1731,-1724,-1716,-1708,-1700,-1691,-1679,-1666,-1657,-1649,
+-1638,-1626,-1616,-1608,-1598,-1584,-1571,-1560,-1551,-1541,-1530,-1520,-1512,-1506,-1500,-1495,-1490,-1485,-1481,-1474,-1467,
+-1459,-1454,-1451,-1446,-1440,-1434,-1431,-1427,-1425,-1425,-1428,-1431,-1431,-1430,-1428,-1427,-1427,-1429,-1430,-1428,-1425,
+-1425,-1429,-1434,-1439,-1441,-1441,-1438,-1433,-1428,-1421,-1413,-1409,-1410,-1413,-1409,-1400,-1394,-1391,-1387,-1381,-1379,
+-1379,-1374,-1363,-1353,-1346,-1339,-1330,-1321,-1310,-1294,-1273,-1259,-1252,-1241,-1221,-1198,-1180,-1162,-1141,-1122,-1102,
+-1077,-1047,-1020,-998,-970,-935,-905,-883,-857,-820,-780,-748,-713,-666,-618,-578,-538,-488,-441,-404,-365,
+-310,-253,-211,-170,-111,-50,-14,11,53,106,139,152,162,140,50,-47,0,267,657,1005,1246,
+1426,1592,1731,1813,1823,1757,1635,1499,1388,1291,1179,1067,1001,994,1005,1009,1030,1097,1193,1284,1365,
+1450,1549,1659,1771,1877,1963,2028,2076,2110,2123,2112,2094,2082,2079,2080,2085,2082,2057,2001,1935,1882,
+1849,1829,1806,1765,1692,1593,1491,1403,1323,1243,1168,1106,1052,995,935,882,829,762,669,555,422,
+270,111,-36,-163,-275,-376,-462,-528,-572,-589,-570,-531,-512,-539,-590,-615,-597,-574,-598,-671,-753,
+-807,-841,-892,-978,-1084,-1183,-1269,-1359,-1465,-1585,-1699,-1793,-1867,-1932,-1998,-2057,-2087,-2077,-2038,-2001,-1991,
+-2014,-2055,-2094,-2120,-2139,-2159,-2179,-2192,-2199,-2205,-2211,-2218,-2228,-2246,-2270,-2302,-2350,-2425,-2506,-2556,-2555,
+-2523,-2491,-2470,-2451,-2437,-2452,-2506,-2583,-2654,-2704,-2732,-2739,-2726,-2700,-2671,-2645,-2612,-2563,-2498,-2423,-2348,
+-2275,-2211,-2164,-2134,-2105,-2061,-1994,-1909,-1804,-1683,-1566,-1491,-1467,-1453,-1400,-1300,-1191,-1104,-1031,-956,-889,
+-849,-834,-823,-810,-814,-847,-887,-901,-877,-833,-794,-775,-789,-833,-889,-921,-905,-840,-754,-681,-643,
+-642,-659,-667,-654,-637,-635,-646,-647,-619,-569,-517,-472,-438,-413,-396,-384,-376,-372,-372,-367,-353,
+-334,-313,-288,-254,-218,-188,-164,-137,-107,-78,-52,-27,-3,16,35,62,100,141,178,215,258,
+306,354,396,429,458,487,520,557,596,639,688,742,797,850,903,956,1002,1042,1079,1116,1155,
+1195,1235,1277,1320,1362,1405,1446,1482,1514,1543,1573,1603,1631,1659,1684,1708,1735,1769,1807,1839,1864,
+1884,1899,1906,1900,1890,1881,1876,1870,1863,1858,1855,1853,1850,1844,1835,1827,1823,1822,1820,1816,1813,
+1813,1811,1804,1797,1792,1784,1774,1768,1768,1768,1763,1760,1761,1763,1759,1758,1769,1786,1793,1789,1783,
+1785,1786,1780,1770,1760,1751,1743,1733,1708,1696,1671,1637,1600,1564,1524,1484,1448,1410,1361,1301,1244,
+1198,1161,1126,1097,1073,1050,1023,990,955,923,898,879,860,835,810,791,778,767,758,753,737,
+696,634,570,514,466,429,413,426,465,518,556,540,457,351,296,317,368,391,373,342,312,
+282,251,225,196,149,83,9,-53,-92,-106,-118,-163,-258,-382,-503,-604,-684,-740,-779,-826,-899,
+-984,-1051,-1097,-1140,-1188,-1233,-1274,-1317,-1360,-1391,-1405,-1413,-1423,-1436,-1463,-1518,-1594,-1657,-1683,-1678,-1669,
+-1680,-1713,-1748,-1757,-1738,-1717,-1714,-1713,-1693,-1668,-1659,-1647,-1609,-1563,-1546,-1528,-1437,-1286,-1198,-1264,-1417,
+-1514,-1507,-1460,-1443,-1458,-1477,-1494,-1510,-1529,-1571,-1655,-1759,-1835,-1868,-1892,-1935,-1984,-2010,-2014,-2003,-1968,
+-1901,-1829,-1797,-1819,-1862,-1884,-1865,-1817,-1772,-1767,-1826,-1942,-2078,-2185,-2241,-2281,-2365,-2524,-2715,-2872,-2976,
+-3064,-3167,-3266,-3329,-3361,-3406,-3492,-3605,-3713,-3800,-3871,-3935,-3991,-4030,-4053,-4074,-4107,-4149,-4188,-4220,-4250,
+-4274,-4282,-4274,-4271,-4288,-4320,-4351,-4369,-4367,-4348,-4335,-4346,-4373,-4387,-4378,-4371,-4379,-4384,-4368,-4344,-4335,
+-4335,-4320,-4296,-4289,-4303,-4315,-4307,-4292,-4279,-4265,-4256,-4263,-4279,-4267,-4204,-4115,-4050,-4035,-4061,-4105,-4149,
+-4185,-4222,-4288,-4405,-4557,-4700,-4803,-4867,-4920,-4979,-5047,-5117,-5185,-5250,-5316,-5379,-5436,-5488,-5542,-5605,-5678,
+-5753,-5823,-5884,-5944,-6008,-6077,-6145,-6207,-6271,-6342,-6415,-6479,-6535,-6595,-6660,-6720,-6764,-6801,-6848,-6906,-6966,
+-7023,-7078,-7133,-7187,-7238,-7284,-7322,-7356,-7398,-7455,-7526,-7606,-7697,-7798,-7898,-7985,-8060,-8136,-8214,-8288,-8360,
+-8424,-8461,-8450,-8409,-8388,-8415,-8475,-8549,-8649,-8793,-8950,-9057,-9092,-9091,-9104,-9138,-9169,-9187,-9205,-9227,-9243,
+-9250,-9254,-9264,-9275,-9280,-9286,-9303,-9334,-9368,-9383,-9369,-9335,-9309,-9310,-9333,-9349,-9329,-9265,-9171,-9071,-8980,
+-8896,-8810,-8724,-8664,-8651,-8675,-8699,-8692,-8657,-8613,-8570,-8519,-8445,-8342,-8214,-8077,-7953,-7854,-7777,-7709,-7641,
+-7567,-7479,-7370,-7241,-7102,-6960,-6815,-6678,-6567,-6491,-6437,-6384,-6318,-6236,-6139,-6026,-5907,-5793,-5688,-5579,-5456,
+-5315,-5160,-4988,-4810,-4653,-4537,-4453,-4365,-4255,-4132,-4009,-3872,-3707,-3532,-3389,-3287,-3185,-3043,-2869,-2698,-2548,
+-2409,-2271,-2140,-2019,-1907,-1811,-1765,-1792,-1866,-1912,-1853,-1674,-1437,-1232,-1101,-1009,-891,-715,-491,-240,31,
+318,591,815,973,1074,1147,1221,1309,1399,1470,1525,1591,1683,1785,1873,1952,2037,2128,2209,2279,2349,
+2422,2486,2542,2603,2677,2749,2806,2853,2904,2967,3036,3107,3177,3244,3313,3389,3470,3550,3628,3713,3809,
+3911,4006,4092,4166,4224,4272,4335,4432,4547,4641,4694,4727,4770,4820,4844,4814,4743,4671,4644,4682,4780,
+4923,5092,5265,5416,5510,5529,5493,5451,5455,5522,5630,5740,5821,5867,5891,5909,5902,5832,5688,5530,5452,
+5488,5582,5656,5687,5706,5736,5771,5800,5820,5826,5817,5806,5815,5832,5827,5797,5782,5804,5832,5827,5801,
+5800,5824,5809,5701,5515,5325,5197,5151,5157,5178,5206,5267,5391,5584,5816,6029,6167,6204,6179,6187,6297,
+6490,6679,6800,6864,6913,6963,7002,7034,7094,7208,7353,7479,7553,7598,7656,7736,7809,7848,7859,7866,7867,
+7845,7795,7750,7762,7854,8001,8132,8179,8134,8055,7993,7934,7822,7644,7464,7352,7312,7287,7231,7155,7109,
+7130,7211,7308,7386,7445,7509,7589,7671,7739,7798,7859,7920,7973,8019,8057,8085,8096,8090,8071,8047,8023,
+8000,7965,7916,7872,7853,7827,7728,7526,7258,6964,6624,6234,5895,5775,5924,6196,6379,6393,6333,6327,6410,
+6516,6572,6571,6558,6568,6587,6571,6501,6403,6309,6230,6158,6097,6055,6025,5984,5923,5848,5775,5708,5646,
+5593,5546,5494,5428,5357,5293,5241,5192,5137,5079,5029,4993,4963,4924,4865,4788,4704,4629,4572,4531,4496,
+4459,4419,4385,4358,4330,4294,4250,4203,4157,4114,4080,4059,4045,4024,3985,3936,3885,3829,3761,3691,3637,
+3607,3584,3545,3486,3420,3360,3311,3268,3226,3183,3141,3104,3072,3035,2993,2960,2951,2953,2936,2894,2849,
+2816,2784,2746,2721,2725,2737,2715,2655,2597,2571,2560,2533,2487,2442,2404,2363,2311,2254,2204,2164,2133,
+2107,2085,2061,2041,2027,2017,2003,1982,1957,1927,1887,1852,1850,1888,1926,1912,1845,1775,1750,1762,1777,
+1790,1826,1880,1903,1866,1799,1758,1747,1726,1677,1630,1620,1635,1648,1653,1659,1668,1673,1673,1676,1679,
+1677,1674,1676,1674,1663,1653,1663,1689,1707,1705,1700,1707,1717,1711,1688,1661,1636,1609,1580,1559,1549,
+1542,1528,1508,1483,1457,1434,1417,1403,1385,1368,1364,1381,1407,1420,1407,1376,1345,1329,1327,1329,1326,
+1320,1320,1327,1333,1329,1314,1298,1293,1298,1302,1294,1278,1266,1263,1262,1253,1231,1200,1175,1165,1173,
+1186,1192,1184,1170,1156,1142,1124,1102,1081,1062,1041,1020,1001,982,964,947,933,919,905,888,868,
+839,799,753,709,676,652,634,617,598,575,548,519,491,464,439,416,394,371,348,323,299,
+275,250,222,191,158,126,93,60,29,3,-19,-44,-74,-107,-140,-174,-209,-242,-274,-305,-337,
+-370,-403,-440,-476,-507,-530,-549,-570,-591,-609,-628,-655,-687,-718,-743,-769,-799,-832,-861,-885,-907,
+-927,-946,-968,-994,-1023,-1052,-1081,-1107,-1127,-1142,-1157,-1178,-1202,-1220,-1230,-1239,-1251,-1271,-1296,-1320,-1341,
+-1357,-1372,-1391,-1415,-1436,-1453,-1465,-1477,-1490,-1505,-1520,-1533,-1543,-1549,-1556,-1567,-1583,-1602,-1622,-1639,-1653,
+-1664,-1676,-1691,-1708,-1721,-1728,-1730,-1733,-1736,-1739,-1739,-1738,-1737,-1736,-1733,-1730,-1728,-1726,-1723,-1719,-1716,
+-1713,-1709,-1704,-1699,-1692,-1684,-1675,-1667,-1657,-1644,-1632,-1625,-1621,-1614,-1602,-1587,-1573,-1559,-1544,-1530,-1519,
+-1510,-1501,-1490,-1480,-1472,-1467,-1462,-1456,-1452,-1451,-1450,-1444,-1434,-1425,-1421,-1419,-1416,-1412,-1410,-1408,-1405,
+-1403,-1404,-1409,-1414,-1417,-1418,-1417,-1415,-1414,-1417,-1420,-1418,-1413,-1412,-1415,-1422,-1430,-1438,-1442,-1440,-1436,
+-1431,-1424,-1414,-1406,-1406,-1409,-1406,-1399,-1396,-1398,-1395,-1388,-1383,-1382,-1378,-1367,-1359,-1355,-1350,-1340,-1330,
+-1321,-1307,-1287,-1270,-1261,-1252,-1234,-1214,-1197,-1179,-1158,-1137,-1118,-1095,-1066,-1038,-1015,-988,-956,-926,-902,
+-875,-838,-800,-767,-729,-682,-636,-599,-559,-509,-461,-423,-380,-322,-266,-228,-193,-139,-83,-49,-23,
+24,85,124,138,138,98,-8,-99,-13,313,751,1112,1337,1495,1650,1785,1858,1848,1750,1582,1399,
+1260,1173,1106,1041,995,975,968,974,1015,1098,1191,1264,1328,1407,1508,1619,1731,1837,1923,1986,2035,
+2079,2108,2111,2094,2077,2072,2080,2096,2105,2085,2027,1955,1901,1878,1875,1868,1835,1765,1666,1562,1468,
+1386,1312,1245,1186,1124,1056,991,938,890,828,742,632,495,332,159,0,-133,-245,-339,-414,-470,
+-513,-537,-532,-506,-492,-514,-559,-583,-569,-552,-580,-662,-756,-822,-865,-922,-1014,-1131,-1246,-1349,-1442,
+-1531,-1619,-1705,-1784,-1852,-1915,-1980,-2044,-2081,-2076,-2039,-2003,-1998,-2028,-2078,-2124,-2154,-2169,-2179,-2188,-2194,
+-2196,-2200,-2209,-2220,-2231,-2241,-2258,-2288,-2342,-2421,-2503,-2548,-2536,-2492,-2456,-2440,-2432,-2429,-2450,-2509,-2592,
+-2668,-2715,-2732,-2720,-2688,-2651,-2624,-2608,-2587,-2542,-2475,-2403,-2341,-2289,-2241,-2193,-2148,-2105,-2056,-1991,-1906,
+-1803,-1688,-1582,-1510,-1474,-1443,-1377,-1273,-1167,-1086,-1022,-953,-885,-841,-822,-807,-789,-781,-796,-823,-837,
+-831,-813,-792,-776,-781,-818,-871,-904,-894,-852,-805,-768,-742,-730,-729,-729,-717,-695,-677,-670,-659,
+-631,-588,-543,-501,-465,-438,-423,-415,-409,-401,-392,-382,-366,-348,-328,-306,-278,-246,-215,-188,-159,
+-132,-108,-86,-63,-40,-20,-2,24,62,102,139,178,223,272,316,353,387,422,459,499,541,
+585,630,678,728,778,826,873,921,967,1010,1049,1091,1136,1182,1227,1274,1323,1370,1414,1452,1483,
+1509,1531,1555,1581,1609,1635,1658,1683,1716,1756,1795,1826,1849,1869,1884,1886,1876,1863,1855,1853,1850,
+1847,1845,1845,1846,1846,1840,1829,1817,1812,1812,1811,1806,1802,1797,1790,1780,1774,1770,1762,1752,1747,
+1748,1747,1742,1741,1747,1753,1751,1750,1757,1767,1766,1757,1752,1755,1758,1754,1745,1734,1723,1714,1708,
+1692,1678,1651,1613,1575,1537,1492,1441,1393,1349,1301,1247,1199,1161,1127,1091,1057,1030,1005,977,951,
+926,901,878,858,839,816,794,777,765,754,744,742,740,724,691,651,612,566,509,453,422,
+434,489,553,572,513,412,344,348,389,410,398,372,345,312,275,244,216,180,129,71,16,
+-22,-43,-61,-107,-197,-314,-432,-532,-610,-664,-704,-757,-834,-915,-971,-1002,-1036,-1086,-1138,-1185,-1230,
+-1276,-1316,-1347,-1374,-1398,-1415,-1439,-1486,-1551,-1604,-1625,-1623,-1623,-1638,-1667,-1696,-1708,-1701,-1689,-1685,-1679,
+-1660,-1642,-1641,-1637,-1602,-1552,-1530,-1520,-1456,-1331,-1242,-1285,-1423,-1530,-1537,-1481,-1437,-1436,-1465,-1492,-1498,
+-1499,-1538,-1640,-1769,-1857,-1888,-1903,-1939,-1987,-2016,-2016,-1990,-1940,-1880,-1843,-1850,-1881,-1899,-1890,-1861,-1822,
+-1782,-1769,-1826,-1962,-2125,-2237,-2275,-2303,-2407,-2596,-2786,-2898,-2949,-3021,-3151,-3290,-3375,-3413,-3456,-3536,-3639,
+-3733,-3807,-3869,-3927,-3980,-4022,-4048,-4067,-4091,-4124,-4160,-4191,-4213,-4224,-4222,-4218,-4226,-4251,-4284,-4316,-4336,
+-4338,-4325,-4320,-4339,-4367,-4370,-4350,-4338,-4348,-4352,-4332,-4309,-4304,-4301,-4277,-4249,-4247,-4263,-4264,-4248,-4240,
+-4240,-4220,-4187,-4187,-4233,-4268,-4233,-4147,-4077,-4058,-4071,-4091,-4112,-4136,-4162,-4205,-4288,-4419,-4566,-4694,-4789,
+-4863,-4931,-4998,-5064,-5128,-5191,-5257,-5325,-5389,-5444,-5497,-5556,-5623,-5692,-5757,-5820,-5884,-5951,-6015,-6075,-6136,
+-6206,-6283,-6358,-6424,-6484,-6547,-6612,-6667,-6708,-6746,-6796,-6858,-6919,-6973,-7023,-7076,-7131,-7181,-7222,-7251,-7280,
+-7325,-7388,-7463,-7542,-7629,-7725,-7824,-7914,-7995,-8074,-8151,-8218,-8272,-8309,-8318,-8302,-8284,-8295,-8342,-8408,-8489,
+-8603,-8750,-8892,-8980,-9012,-9025,-9050,-9085,-9115,-9137,-9155,-9171,-9180,-9184,-9190,-9198,-9206,-9214,-9228,-9255,-9295,
+-9332,-9351,-9343,-9320,-9306,-9311,-9324,-9320,-9282,-9208,-9112,-9017,-8934,-8860,-8783,-8707,-8659,-8659,-8693,-8718,-8702,
+-8651,-8589,-8532,-8472,-8393,-8288,-8159,-8027,-7911,-7822,-7754,-7693,-7627,-7551,-7461,-7355,-7235,-7105,-6971,-6835,-6710,
+-6611,-6541,-6485,-6423,-6345,-6252,-6146,-6030,-5909,-5796,-5694,-5590,-5469,-5328,-5176,-5014,-4847,-4695,-4579,-4496,-4416,
+-4315,-4201,-4084,-3947,-3772,-3587,-3444,-3350,-3254,-3108,-2926,-2758,-2622,-2491,-2343,-2189,-2052,-1942,-1860,-1815,-1818,
+-1863,-1908,-1897,-1784,-1581,-1359,-1186,-1074,-976,-846,-677,-483,-272,-38,218,485,738,946,1093,1193,1278,
+1364,1440,1495,1551,1634,1738,1835,1915,1993,2081,2170,2250,2323,2393,2456,2515,2581,2658,2730,2779,2811,
+2851,2914,2994,3073,3139,3199,3264,3341,3423,3501,3577,3660,3754,3851,3942,4025,4100,4165,4227,4303,4400,
+4500,4570,4603,4630,4678,4738,4769,4744,4685,4642,4650,4705,4790,4908,5072,5264,5423,5492,5476,5430,5409,
+5424,5464,5527,5615,5709,5782,5822,5841,5837,5782,5665,5538,5477,5506,5571,5613,5632,5662,5709,5750,5776,
+5801,5829,5843,5830,5809,5798,5794,5783,5766,5750,5729,5698,5673,5679,5711,5710,5607,5383,5096,4852,4736,
+4754,4853,4971,5092,5240,5437,5673,5887,5997,5979,5913,5940,6134,6426,6664,6763,6759,6741,6761,6805,6851,
+6903,6974,7058,7117,7135,7139,7171,7241,7317,7378,7442,7530,7628,7693,7711,7717,7767,7892,8074,8245,8329,
+8300,8214,8136,8069,7960,7791,7616,7501,7446,7395,7305,7180,7064,7001,7002,7043,7093,7146,7221,7331,7461,
+7584,7691,7780,7850,7904,7952,8003,8047,8076,8091,8103,8114,8112,8083,8022,7945,7893,7891,7893,7793,7531,
+7152,6752,6366,5986,5664,5537,5689,6026,6333,6459,6425,6363,6374,6459,6552,6601,6613,6615,6618,6599,6540,
+6451,6359,6277,6204,6143,6102,6077,6048,5999,5932,5859,5791,5729,5671,5614,5559,5500,5435,5367,5299,5233,
+5170,5113,5066,5028,4990,4945,4889,4827,4759,4687,4621,4570,4531,4490,4439,4390,4356,4334,4309,4273,4228,
+4185,4147,4117,4092,4069,4042,4007,3967,3920,3863,3795,3728,3675,3637,3601,3554,3497,3442,3397,3358,3321,
+3284,3249,3217,3187,3154,3115,3074,3035,2999,2959,2915,2881,2872,2876,2857,2808,2760,2745,2746,2721,2658,
+2595,2565,2557,2538,2498,2452,2414,2379,2336,2287,2238,2194,2159,2135,2117,2098,2077,2056,2039,2021,2001,
+1978,1947,1906,1869,1859,1884,1914,1906,1855,1796,1766,1764,1773,1793,1837,1891,1910,1871,1809,1768,1748,
+1720,1675,1643,1643,1656,1658,1654,1658,1669,1673,1671,1672,1680,1686,1689,1693,1691,1677,1663,1667,1688,
+1701,1695,1690,1702,1718,1713,1685,1654,1639,1634,1621,1594,1558,1527,1509,1497,1479,1455,1436,1429,1426,
+1414,1394,1380,1378,1383,1382,1369,1347,1324,1309,1306,1307,1304,1297,1291,1292,1293,1289,1279,1269,1264,
+1263,1260,1255,1245,1237,1232,1233,1233,1222,1194,1158,1129,1120,1128,1139,1141,1132,1117,1099,1080,1059,
+1041,1023,1006,986,965,943,921,899,880,864,852,841,828,805,770,728,687,652,625,606,591,
+575,552,525,498,473,448,422,398,378,360,343,321,296,269,242,212,180,148,116,86,57,
+30,7,-14,-37,-65,-96,-129,-162,-197,-229,-260,-292,-326,-361,-397,-433,-469,-502,-528,-551,-574,
+-598,-618,-637,-659,-687,-714,-738,-761,-788,-817,-848,-876,-900,-919,-937,-957,-982,-1009,-1034,-1059,-1081,
+-1099,-1112,-1128,-1153,-1181,-1204,-1217,-1227,-1240,-1259,-1283,-1307,-1328,-1344,-1357,-1374,-1395,-1417,-1435,-1447,-1456,
+-1467,-1481,-1497,-1509,-1516,-1521,-1528,-1539,-1554,-1570,-1587,-1603,-1617,-1630,-1644,-1660,-1676,-1689,-1697,-1702,-1705,
+-1706,-1707,-1707,-1705,-1702,-1698,-1697,-1698,-1698,-1697,-1695,-1692,-1689,-1683,-1677,-1671,-1666,-1660,-1653,-1645,-1636,
+-1624,-1611,-1599,-1593,-1592,-1587,-1575,-1558,-1539,-1523,-1506,-1490,-1478,-1469,-1461,-1453,-1443,-1436,-1432,-1427,-1420,
+-1416,-1415,-1415,-1410,-1400,-1391,-1386,-1384,-1383,-1383,-1386,-1387,-1385,-1384,-1387,-1393,-1397,-1401,-1404,-1406,-1405,
+-1405,-1409,-1412,-1412,-1408,-1406,-1407,-1411,-1418,-1429,-1436,-1436,-1430,-1426,-1422,-1412,-1403,-1402,-1404,-1401,-1394,
+-1394,-1401,-1401,-1393,-1386,-1384,-1380,-1371,-1364,-1362,-1358,-1346,-1334,-1327,-1317,-1301,-1284,-1273,-1262,-1245,-1227,
+-1212,-1196,-1175,-1152,-1133,-1112,-1085,-1056,-1031,-1005,-975,-946,-920,-893,-858,-822,-787,-747,-702,-660,-625,
+-584,-530,-477,-436,-393,-337,-283,-246,-213,-164,-112,-75,-39,14,73,106,113,101,41,-76,-149,
+-13,363,815,1145,1321,1446,1598,1761,1888,1936,1861,1656,1394,1193,1108,1095,1083,1048,1007,979,982,
+1028,1101,1169,1220,1279,1368,1475,1580,1683,1789,1883,1952,2001,2047,2085,2100,2092,2079,2079,2093,2115,
+2130,2116,2068,1998,1938,1910,1909,1913,1891,1826,1727,1621,1528,1449,1380,1318,1258,1192,1119,1050,993,
+943,884,803,698,561,397,224,64,-71,-184,-277,-346,-398,-440,-471,-484,-480,-483,-510,-552,-583,
+-587,-591,-631,-717,-816,-892,-945,-1004,-1088,-1189,-1287,-1375,-1454,-1525,-1593,-1660,-1729,-1795,-1859,-1926,-1994,
+-2041,-2051,-2030,-2011,-2015,-2044,-2085,-2124,-2150,-2163,-2172,-2181,-2187,-2188,-2190,-2200,-2214,-2226,-2235,-2248,-2275,
+-2327,-2402,-2479,-2522,-2510,-2469,-2439,-2435,-2443,-2448,-2468,-2518,-2590,-2659,-2702,-2714,-2695,-2653,-2610,-2586,-2578,
+-2562,-2515,-2444,-2372,-2319,-2285,-2251,-2206,-2155,-2107,-2060,-1999,-1914,-1810,-1701,-1605,-1534,-1484,-1431,-1351,-1248,
+-1152,-1080,-1020,-951,-880,-832,-812,-801,-783,-767,-763,-763,-758,-749,-741,-727,-701,-684,-707,-767,-826,
+-852,-847,-836,-827,-812,-792,-778,-770,-755,-729,-705,-690,-674,-647,-610,-574,-539,-504,-473,-455,-448,
+-445,-436,-424,-410,-394,-376,-356,-335,-310,-281,-250,-217,-184,-156,-136,-119,-98,-74,-51,-30,-3,
+31,67,103,143,190,236,274,306,341,382,426,471,515,560,605,652,701,751,799,847,895,
+943,988,1030,1073,1118,1165,1212,1259,1308,1356,1398,1432,1460,1484,1506,1527,1552,1580,1608,1634,1663,
+1700,1743,1780,1805,1823,1840,1855,1858,1851,1843,1839,1840,1841,1840,1839,1839,1840,1840,1833,1820,1806,
+1798,1796,1792,1787,1781,1776,1767,1755,1746,1739,1730,1722,1719,1720,1716,1707,1706,1714,1720,1718,1714,
+1715,1718,1716,1714,1721,1733,1740,1739,1735,1726,1713,1700,1692,1683,1661,1625,1586,1554,1521,1472,1409,
+1349,1301,1255,1209,1168,1131,1091,1050,1019,998,977,950,924,904,886,864,844,825,803,780,762,
+753,745,737,734,736,734,724,712,698,672,621,553,493,470,500,562,606,587,513,441,413,
+421,428,423,409,387,351,309,276,253,231,202,164,121,73,29,-11,-65,-142,-236,-331,-417,
+-494,-560,-618,-684,-761,-831,-871,-892,-922,-973,-1029,-1080,-1129,-1179,-1228,-1274,-1318,-1355,-1380,-1405,-1446,
+-1500,-1544,-1566,-1577,-1589,-1604,-1618,-1633,-1650,-1660,-1661,-1655,-1642,-1624,-1616,-1626,-1632,-1604,-1554,-1522,-1509,
+-1465,-1375,-1304,-1328,-1432,-1523,-1532,-1478,-1422,-1409,-1435,-1466,-1470,-1462,-1498,-1607,-1750,-1855,-1899,-1916,-1943,
+-1981,-2010,-2015,-1985,-1927,-1877,-1877,-1922,-1956,-1936,-1880,-1833,-1807,-1786,-1781,-1840,-1984,-2158,-2275,-2315,-2358,
+-2489,-2690,-2854,-2913,-2924,-2993,-3145,-3305,-3400,-3442,-3491,-3574,-3671,-3753,-3815,-3866,-3914,-3960,-4001,-4031,-4051,
+-4071,-4098,-4131,-4159,-4175,-4178,-4177,-4183,-4203,-4230,-4254,-4273,-4289,-4296,-4295,-4302,-4328,-4353,-4349,-4323,-4309,
+-4315,-4314,-4293,-4276,-4276,-4269,-4237,-4208,-4208,-4215,-4197,-4177,-4195,-4224,-4202,-4136,-4116,-4189,-4287,-4312,-4259,
+-4191,-4149,-4122,-4102,-4099,-4114,-4130,-4148,-4198,-4301,-4440,-4578,-4694,-4789,-4870,-4942,-5008,-5069,-5128,-5190,-5259,
+-5330,-5394,-5449,-5502,-5561,-5627,-5694,-5762,-5829,-5892,-5950,-6006,-6070,-6144,-6223,-6297,-6364,-6428,-6493,-6554,-6605,
+-6648,-6694,-6748,-6807,-6863,-6915,-6966,-7019,-7073,-7119,-7152,-7176,-7206,-7257,-7328,-7405,-7480,-7561,-7652,-7750,-7845,
+-7932,-8014,-8084,-8134,-8158,-8156,-8138,-8129,-8152,-8212,-8285,-8358,-8446,-8571,-8718,-8838,-8903,-8933,-8962,-9001,-9038,
+-9066,-9091,-9112,-9124,-9126,-9127,-9132,-9139,-9146,-9159,-9183,-9218,-9260,-9296,-9312,-9306,-9292,-9287,-9292,-9295,-9278,
+-9236,-9168,-9081,-8992,-8914,-8842,-8766,-8695,-8657,-8670,-8710,-8731,-8702,-8633,-8553,-8479,-8410,-8329,-8224,-8102,-7979,
+-7873,-7790,-7724,-7663,-7597,-7521,-7431,-7330,-7220,-7100,-6972,-6842,-6723,-6628,-6558,-6499,-6433,-6353,-6260,-6158,-6045,
+-5922,-5799,-5688,-5581,-5461,-5325,-5182,-5041,-4901,-4766,-4652,-4564,-4481,-4384,-4273,-4150,-3999,-3812,-3623,-3486,-3401,
+-3306,-3153,-2965,-2803,-2680,-2561,-2415,-2254,-2109,-1997,-1917,-1865,-1841,-1846,-1875,-1895,-1850,-1706,-1493,-1286,-1130,
+-1009,-889,-763,-647,-537,-399,-194,93,435,762,1005,1150,1239,1322,1403,1467,1521,1595,1695,1799,1887,
+1967,2053,2141,2219,2287,2353,2420,2489,2561,2637,2705,2752,2784,2823,2887,2968,3046,3108,3162,3223,3298,
+3380,3458,3532,3610,3695,3782,3867,3950,4032,4112,4187,4265,4347,4422,4475,4507,4538,4589,4650,4691,4695,
+4679,4679,4711,4757,4805,4883,5027,5219,5377,5432,5397,5342,5320,5330,5360,5419,5519,5632,5711,5739,5741,
+5735,5707,5645,5579,5557,5579,5602,5600,5598,5629,5680,5716,5730,5750,5788,5818,5815,5794,5786,5794,5795,
+5766,5715,5661,5616,5578,5556,5558,5559,5481,5250,4885,4520,4315,4326,4486,4689,4885,5100,5363,5652,5873,
+5929,5824,5700,5741,6008,6377,6656,6752,6722,6680,6692,6751,6823,6889,6945,6988,6999,6972,6932,6925,6964,
+7023,7084,7160,7272,7400,7506,7578,7645,7749,7909,8111,8304,8421,8427,8362,8293,8237,8163,8050,7927,7829,
+7753,7669,7554,7403,7223,7040,6894,6815,6799,6827,6895,7011,7171,7351,7523,7662,7758,7823,7883,7947,8003,
+8037,8066,8110,8159,8182,8158,8095,8025,7981,7970,7933,7762,7400,6914,6443,6069,5779,5559,5475,5614,5951,
+6318,6526,6520,6398,6318,6357,6478,6591,6641,6639,6615,6578,6519,6442,6361,6287,6223,6169,6133,6114,6096,
+6061,6003,5936,5871,5811,5748,5681,5619,5563,5506,5439,5364,5290,5222,5161,5107,5059,5011,4957,4903,4854,
+4804,4743,4675,4617,4573,4529,4475,4417,4374,4347,4321,4288,4248,4211,4181,4155,4125,4090,4055,4022,3988,
+3945,3888,3822,3762,3711,3665,3613,3557,3504,3464,3436,3413,3387,3357,3328,3300,3270,3233,3194,3155,3114,
+3061,2999,2944,2916,2918,2925,2902,2844,2786,2756,2746,2718,2661,2601,2567,2559,2550,2521,2478,2435,2398,
+2363,2324,2278,2231,2191,2165,2148,2128,2103,2076,2049,2025,2002,1981,1957,1926,1894,1878,1882,1891,1884,
+1857,1825,1803,1790,1784,1794,1824,1858,1864,1835,1793,1765,1745,1716,1682,1666,1670,1675,1667,1660,1668,
+1680,1681,1674,1677,1690,1700,1702,1703,1700,1689,1676,1673,1681,1684,1676,1676,1696,1718,1713,1679,1646,
+1639,1655,1659,1628,1572,1520,1494,1486,1475,1454,1436,1434,1436,1431,1415,1400,1388,1375,1358,1340,1323,
+1305,1291,1286,1287,1285,1278,1268,1260,1254,1252,1252,1251,1244,1230,1216,1207,1199,1191,1185,1187,1196,
+1199,1183,1149,1110,1082,1076,1084,1093,1090,1077,1059,1043,1027,1011,993,974,953,930,903,875,847,
+823,804,791,784,778,764,738,704,668,636,609,589,575,558,536,509,482,456,429,401,377,
+358,343,327,306,280,251,224,197,170,142,113,86,59,33,9,-13,-38,-65,-94,-123,-154,
+-188,-221,-252,-284,-319,-354,-388,-422,-457,-492,-523,-550,-576,-601,-623,-642,-664,-688,-712,-735,-757,
+-781,-808,-837,-865,-890,-909,-925,-944,-968,-992,-1015,-1036,-1057,-1073,-1086,-1104,-1131,-1162,-1188,-1205,-1217,
+-1232,-1250,-1273,-1298,-1319,-1334,-1346,-1361,-1380,-1402,-1421,-1434,-1441,-1448,-1458,-1472,-1483,-1489,-1494,-1503,-1516,
+-1530,-1544,-1558,-1572,-1585,-1598,-1612,-1628,-1643,-1656,-1667,-1674,-1675,-1675,-1676,-1676,-1673,-1666,-1661,-1662,-1666,
+-1669,-1668,-1667,-1665,-1662,-1656,-1647,-1638,-1632,-1627,-1621,-1614,-1606,-1595,-1582,-1569,-1561,-1558,-1553,-1541,-1523,
+-1504,-1487,-1470,-1454,-1440,-1429,-1423,-1417,-1409,-1402,-1398,-1394,-1390,-1384,-1381,-1380,-1376,-1369,-1361,-1355,-1352,
+-1353,-1356,-1361,-1364,-1363,-1364,-1369,-1374,-1377,-1378,-1381,-1385,-1389,-1393,-1399,-1405,-1408,-1409,-1409,-1407,-1404,
+-1407,-1418,-1427,-1427,-1421,-1417,-1414,-1408,-1401,-1400,-1402,-1397,-1390,-1390,-1399,-1402,-1394,-1385,-1384,-1382,-1374,
+-1368,-1367,-1362,-1350,-1337,-1331,-1324,-1311,-1297,-1285,-1273,-1255,-1235,-1221,-1207,-1187,-1165,-1146,-1126,-1101,-1072,
+-1046,-1020,-990,-961,-935,-908,-875,-839,-803,-763,-719,-679,-644,-600,-544,-490,-449,-409,-358,-305,-264,
+-227,-178,-128,-86,-43,11,59,79,80,66,-2,-129,-195,-29,376,827,1123,1248,1328,1462,1660,
+1882,2052,2056,1832,1477,1194,1102,1143,1185,1162,1097,1040,1020,1045,1094,1141,1186,1254,1353,1461,1555,
+1648,1754,1855,1927,1970,2008,2050,2081,2094,2099,2110,2128,2147,2158,2153,2120,2062,2000,1960,1952,1957,
+1939,1873,1773,1671,1586,1514,1448,1383,1320,1253,1180,1110,1048,991,925,842,737,606,455,298,150,
+15,-103,-200,-273,-325,-364,-395,-418,-436,-463,-503,-552,-592,-617,-640,-685,-763,-853,-931,-994,-1061,
+-1140,-1220,-1286,-1343,-1400,-1459,-1518,-1577,-1640,-1705,-1773,-1846,-1922,-1981,-2009,-2016,-2021,-2038,-2064,-2093,-2119,
+-2138,-2149,-2158,-2170,-2180,-2184,-2185,-2192,-2205,-2218,-2229,-2244,-2270,-2312,-2373,-2439,-2481,-2480,-2456,-2446,-2459,
+-2477,-2484,-2493,-2523,-2575,-2630,-2670,-2688,-2677,-2640,-2598,-2570,-2555,-2531,-2480,-2410,-2345,-2300,-2271,-2241,-2201,
+-2156,-2116,-2076,-2017,-1927,-1816,-1705,-1613,-1541,-1482,-1416,-1330,-1233,-1148,-1086,-1032,-964,-892,-840,-816,-801,
+-779,-755,-736,-716,-690,-665,-651,-631,-594,-561,-576,-652,-748,-812,-837,-843,-843,-834,-816,-800,-789,
+-774,-749,-724,-708,-691,-665,-632,-603,-577,-548,-516,-493,-485,-483,-478,-467,-453,-437,-418,-395,-371,
+-347,-321,-290,-252,-213,-180,-159,-143,-122,-97,-71,-46,-20,10,43,79,121,168,212,246,276,
+312,354,399,443,486,528,571,616,666,721,775,827,878,929,978,1023,1067,1112,1156,1199,1240,
+1282,1323,1360,1391,1420,1449,1476,1501,1527,1556,1586,1614,1643,1678,1715,1746,1766,1782,1802,1823,1838,
+1842,1842,1841,1840,1838,1836,1833,1831,1829,1826,1818,1806,1794,1784,1778,1770,1762,1757,1752,1743,1730,
+1717,1706,1696,1690,1687,1683,1672,1657,1653,1658,1662,1659,1655,1657,1660,1666,1680,1703,1724,1734,1737,
+1739,1734,1718,1700,1683,1679,1643,1599,1562,1543,1518,1463,1385,1315,1265,1225,1185,1146,1105,1057,1011,
+985,977,964,937,907,887,873,853,832,814,793,767,747,739,737,733,727,726,729,733,739,
+747,745,719,668,609,566,564,607,663,686,654,588,529,491,469,455,442,419,384,346,319,
+304,292,278,259,225,171,106,42,-17,-79,-144,-208,-276,-356,-444,-532,-614,-688,-742,-770,-789,
+-823,-875,-929,-976,-1024,-1077,-1131,-1183,-1233,-1276,-1305,-1334,-1379,-1436,-1485,-1518,-1544,-1566,-1574,-1569,-1569,
+-1586,-1609,-1621,-1618,-1605,-1593,-1593,-1608,-1619,-1603,-1562,-1523,-1493,-1450,-1387,-1344,-1367,-1445,-1517,-1531,-1487,
+-1426,-1391,-1398,-1422,-1431,-1431,-1468,-1572,-1713,-1829,-1892,-1919,-1937,-1957,-1980,-1994,-1977,-1930,-1895,-1919,-1983,
+-2009,-1955,-1866,-1810,-1797,-1793,-1796,-1855,-1995,-2168,-2294,-2362,-2443,-2596,-2783,-2905,-2927,-2928,-3006,-3161,-3311,
+-3399,-3451,-3519,-3613,-3703,-3770,-3819,-3860,-3898,-3937,-3975,-4006,-4026,-4044,-4069,-4101,-4130,-4148,-4155,-4160,-4173,
+-4194,-4212,-4221,-4226,-4235,-4246,-4250,-4256,-4275,-4296,-4297,-4283,-4276,-4277,-4266,-4243,-4232,-4238,-4229,-4195,-4169,
+-4169,-4160,-4123,-4110,-4162,-4223,-4192,-4083,-4028,-4109,-4257,-4347,-4345,-4299,-4247,-4194,-4155,-4149,-4163,-4161,-4145,
+-4162,-4241,-4363,-4488,-4600,-4700,-4790,-4870,-4941,-5006,-5065,-5121,-5185,-5260,-5333,-5391,-5439,-5494,-5561,-5635,-5707,
+-5773,-5831,-5883,-5939,-6007,-6084,-6160,-6229,-6295,-6362,-6428,-6489,-6542,-6593,-6646,-6698,-6750,-6801,-6852,-6905,-6956,
+-7003,-7043,-7073,-7101,-7138,-7194,-7265,-7339,-7413,-7493,-7584,-7683,-7779,-7867,-7946,-8008,-8043,-8042,-8010,-7972,-7970,
+-8026,-8122,-8218,-8303,-8407,-8549,-8694,-8790,-8831,-8859,-8904,-8954,-8988,-9012,-9039,-9064,-9076,-9075,-9076,-9081,-9087,
+-9094,-9111,-9140,-9176,-9212,-9240,-9251,-9244,-9234,-9233,-9238,-9234,-9215,-9178,-9123,-9048,-8965,-8888,-8818,-8746,-8682,
+-8653,-8671,-8707,-8716,-8676,-8600,-8515,-8435,-8358,-8271,-8164,-8044,-7929,-7832,-7755,-7690,-7628,-7563,-7489,-7401,-7303,
+-7197,-7083,-6959,-6831,-6710,-6611,-6535,-6474,-6414,-6344,-6263,-6170,-6063,-5939,-5808,-5685,-5571,-5449,-5313,-5177,-5059,
+-4953,-4847,-4740,-4641,-4549,-4451,-4339,-4202,-4030,-3829,-3646,-3524,-3448,-3349,-3187,-2999,-2847,-2738,-2627,-2487,-2330,
+-2187,-2068,-1974,-1898,-1840,-1806,-1809,-1839,-1847,-1770,-1602,-1395,-1204,-1042,-903,-801,-753,-738,-693,-550,-274,
+110,520,852,1054,1162,1247,1341,1430,1502,1576,1668,1768,1859,1942,2027,2112,2186,2248,2311,2381,2456,
+2529,2599,2664,2721,2770,2823,2887,2957,3025,3083,3136,3191,3255,3327,3401,3475,3549,3623,3699,3779,3865,
+3959,4054,4141,4215,4276,4328,4376,4423,4470,4519,4569,4617,4658,4696,4737,4776,4801,4816,4861,4970,5129,
+5265,5321,5298,5244,5197,5174,5191,5272,5409,5545,5622,5635,5620,5608,5599,5588,5594,5626,5656,5648,5605,
+5577,5596,5639,5665,5666,5673,5701,5733,5747,5751,5762,5779,5774,5731,5667,5616,5580,5533,5471,5430,5421,
+5367,5145,4729,4266,3973,3951,4135,4395,4671,4982,5340,5684,5888,5869,5686,5539,5619,5946,6352,6637,6733,
+6712,6680,6697,6762,6851,6940,7012,7057,7065,7032,6980,6947,6953,6986,7029,7085,7166,7260,7349,7434,7537,
+7671,7837,8028,8219,8365,8430,8427,8405,8386,8356,8304,8239,8167,8083,7985,7881,7750,7547,7264,6972,6761,
+6664,6649,6683,6766,6908,7098,7298,7469,7598,7704,7813,7921,7995,8026,8049,8102,8172,8212,8204,8172,8142,
+8110,8037,7867,7548,7074,6536,6074,5774,5613,5531,5531,5681,6003,6388,6645,6661,6495,6325,6295,6402,6541,
+6619,6622,6583,6530,6463,6385,6310,6249,6201,6165,6144,6137,6128,6099,6047,5985,5929,5876,5814,5743,5676,
+5621,5568,5505,5434,5363,5297,5231,5167,5109,5053,4991,4929,4877,4833,4786,4730,4674,4626,4580,4527,4472,
+4422,4382,4347,4311,4277,4245,4217,4189,4155,4114,4072,4037,4004,3961,3906,3848,3796,3747,3695,3637,3581,
+3535,3502,3480,3462,3442,3415,3386,3355,3320,3279,3240,3207,3171,3125,3075,3036,3011,2990,2955,2904,2848,
+2802,2773,2752,2720,2671,2616,2578,2566,2567,2554,2517,2465,2418,2385,2355,2318,2272,2229,2198,2173,2147,
+2119,2090,2062,2031,2002,1979,1959,1936,1911,1889,1873,1862,1856,1857,1857,1846,1820,1793,1784,1794,1806,
+1803,1787,1770,1755,1737,1713,1696,1697,1703,1696,1679,1672,1682,1692,1687,1677,1681,1698,1711,1712,1712,
+1714,1710,1698,1685,1673,1660,1650,1657,1684,1710,1704,1666,1628,1619,1634,1643,1617,1565,1517,1494,1487,
+1473,1451,1434,1430,1431,1424,1412,1401,1387,1366,1340,1317,1299,1282,1268,1262,1263,1264,1259,1248,1236,
+1230,1236,1247,1250,1234,1205,1180,1167,1159,1149,1141,1142,1153,1162,1158,1138,1104,1068,1047,1046,1055,
+1056,1042,1024,1011,1000,983,959,933,909,884,854,824,798,778,759,742,731,726,718,702,676,
+646,618,594,575,560,544,523,497,470,441,411,382,358,340,324,307,286,262,236,211,190,
+168,145,121,96,71,44,16,-10,-38,-69,-99,-127,-154,-185,-218,-253,-287,-319,-350,-379,-409,
+-443,-480,-516,-548,-576,-601,-624,-646,-667,-690,-711,-733,-755,-778,-802,-829,-856,-881,-899,-914,-932,
+-952,-973,-994,-1015,-1036,-1053,-1069,-1089,-1116,-1147,-1173,-1193,-1208,-1223,-1242,-1265,-1289,-1310,-1325,-1337,-1351,
+-1369,-1391,-1412,-1426,-1433,-1436,-1441,-1450,-1459,-1465,-1471,-1481,-1494,-1507,-1520,-1533,-1545,-1556,-1568,-1582,-1596,
+-1610,-1623,-1635,-1643,-1644,-1645,-1648,-1651,-1648,-1638,-1630,-1630,-1635,-1637,-1636,-1634,-1634,-1632,-1626,-1617,-1607,
+-1599,-1593,-1587,-1581,-1574,-1566,-1555,-1543,-1533,-1524,-1514,-1500,-1483,-1465,-1450,-1436,-1422,-1407,-1395,-1388,-1383,
+-1377,-1371,-1367,-1366,-1363,-1356,-1350,-1347,-1344,-1339,-1333,-1329,-1327,-1328,-1332,-1337,-1339,-1340,-1342,-1348,-1354,
+-1355,-1353,-1355,-1360,-1367,-1376,-1386,-1396,-1403,-1410,-1414,-1411,-1403,-1399,-1407,-1418,-1419,-1412,-1407,-1406,-1403,
+-1399,-1399,-1400,-1396,-1388,-1389,-1397,-1401,-1393,-1386,-1385,-1385,-1378,-1370,-1367,-1363,-1353,-1343,-1336,-1329,-1316,
+-1303,-1293,-1282,-1263,-1243,-1227,-1213,-1194,-1173,-1156,-1138,-1114,-1085,-1058,-1031,-1001,-972,-946,-920,-887,-851,
+-815,-776,-733,-691,-652,-607,-553,-503,-465,-427,-379,-326,-281,-237,-187,-138,-96,-50,2,38,48,
+52,49,-15,-153,-234,-80,321,771,1060,1162,1196,1281,1474,1767,2058,2157,1947,1547,1226,1149,1239,
+1317,1292,1200,1111,1064,1063,1096,1142,1194,1266,1362,1460,1546,1635,1739,1838,1900,1930,1962,2013,2070,
+2111,2136,2156,2171,2181,2188,2189,2174,2135,2080,2038,2024,2024,1998,1925,1824,1729,1654,1586,1512,1438,
+1369,1302,1234,1167,1104,1038,959,865,755,633,504,372,239,107,-17,-122,-199,-252,-289,-315,-338,
+-370,-417,-475,-535,-587,-630,-665,-706,-763,-834,-908,-981,-1062,-1147,-1218,-1262,-1291,-1327,-1376,-1431,-1486,
+-1542,-1607,-1682,-1768,-1854,-1924,-1968,-1996,-2023,-2053,-2079,-2101,-2120,-2136,-2147,-2154,-2165,-2177,-2184,-2186,-2190,
+-2199,-2211,-2225,-2243,-2269,-2302,-2347,-2398,-2436,-2448,-2448,-2461,-2491,-2513,-2515,-2512,-2527,-2562,-2604,-2642,-2666,
+-2667,-2641,-2602,-2567,-2537,-2497,-2440,-2381,-2331,-2294,-2261,-2225,-2186,-2151,-2122,-2087,-2028,-1934,-1817,-1702,-1604,
+-1527,-1462,-1395,-1313,-1226,-1152,-1102,-1056,-994,-921,-862,-826,-799,-767,-736,-712,-687,-652,-618,-594,-568,
+-526,-489,-505,-590,-704,-789,-825,-831,-827,-819,-808,-800,-796,-785,-764,-741,-726,-710,-685,-655,-630,
+-613,-592,-564,-539,-526,-524,-520,-510,-496,-479,-458,-432,-407,-383,-360,-332,-294,-252,-216,-190,-168,
+-145,-117,-89,-62,-35,-5,27,65,108,154,195,229,263,300,341,382,423,465,507,547,588,
+636,692,749,802,854,906,959,1010,1059,1108,1154,1196,1233,1269,1303,1334,1362,1391,1422,1453,1480,
+1504,1531,1561,1591,1618,1647,1676,1702,1722,1743,1771,1803,1830,1846,1851,1848,1839,1828,1820,1817,1815,
+1812,1807,1801,1792,1783,1772,1759,1746,1734,1727,1719,1707,1692,1678,1666,1658,1653,1648,1638,1621,1605,
+1599,1602,1604,1604,1609,1619,1631,1648,1674,1705,1727,1737,1744,1752,1749,1730,1705,1679,1669,1624,1573,
+1543,1537,1517,1449,1351,1273,1229,1199,1166,1130,1089,1037,986,960,958,951,924,891,872,861,842,
+818,797,778,755,735,728,730,729,723,720,724,731,743,760,774,773,752,716,679,664,692,
+753,809,816,766,686,608,550,514,488,459,423,392,376,368,361,353,342,314,259,184,110,
+48,-2,-45,-87,-141,-223,-329,-436,-528,-597,-641,-669,-698,-743,-796,-843,-881,-920,-967,-1020,-1074,
+-1125,-1166,-1197,-1233,-1291,-1364,-1429,-1476,-1514,-1542,-1547,-1531,-1518,-1529,-1555,-1574,-1576,-1571,-1567,-1569,-1579,
+-1590,-1588,-1566,-1529,-1480,-1420,-1364,-1341,-1368,-1429,-1485,-1505,-1481,-1425,-1374,-1359,-1378,-1402,-1423,-1468,-1562,
+-1687,-1800,-1875,-1912,-1922,-1921,-1928,-1946,-1951,-1933,-1927,-1968,-2029,-2038,-1971,-1880,-1828,-1815,-1809,-1813,-1872,
+-2005,-2166,-2296,-2395,-2512,-2673,-2833,-2923,-2943,-2969,-3064,-3204,-3320,-3388,-3451,-3544,-3649,-3729,-3777,-3810,-3843,
+-3878,-3914,-3949,-3975,-3991,-4008,-4035,-4068,-4098,-4118,-4131,-4141,-4154,-4169,-4181,-4186,-4191,-4205,-4218,-4218,-4207,
+-4204,-4216,-4229,-4236,-4237,-4229,-4206,-4181,-4177,-4186,-4176,-4146,-4129,-4130,-4110,-4068,-4068,-4145,-4212,-4157,-4011,
+-3929,-4004,-4167,-4291,-4332,-4320,-4284,-4242,-4226,-4249,-4270,-4242,-4188,-4181,-4249,-4351,-4441,-4521,-4607,-4697,-4781,
+-4860,-4937,-5003,-5056,-5114,-5188,-5265,-5327,-5375,-5430,-5502,-5581,-5653,-5714,-5767,-5818,-5875,-5946,-6021,-6092,-6156,
+-6220,-6290,-6359,-6422,-6481,-6538,-6592,-6640,-6686,-6734,-6788,-6840,-6884,-6921,-6957,-6993,-7030,-7073,-7128,-7191,-7260,
+-7336,-7425,-7524,-7622,-7715,-7799,-7872,-7924,-7946,-7931,-7886,-7839,-7836,-7901,-8010,-8120,-8225,-8357,-8520,-8661,-8732,
+-8753,-8783,-8842,-8899,-8927,-8944,-8970,-8996,-9007,-9008,-9012,-9021,-9028,-9036,-9056,-9086,-9118,-9144,-9164,-9171,-9163,
+-9154,-9156,-9161,-9154,-9132,-9099,-9053,-8988,-8912,-8843,-8785,-8727,-8675,-8653,-8665,-8683,-8673,-8625,-8556,-8480,-8403,
+-8321,-8224,-8108,-7983,-7870,-7781,-7712,-7651,-7591,-7531,-7462,-7378,-7281,-7176,-7062,-6936,-6804,-6678,-6571,-6487,-6427,
+-6379,-6327,-6259,-6175,-6074,-5956,-5826,-5699,-5579,-5450,-5306,-5168,-5066,-4994,-4919,-4820,-4707,-4600,-4500,-4391,-4250,
+-4068,-3864,-3689,-3579,-3505,-3395,-3224,-3042,-2907,-2812,-2705,-2563,-2410,-2273,-2152,-2037,-1930,-1837,-1768,-1741,-1758,
+-1784,-1761,-1661,-1501,-1316,-1128,-962,-859,-842,-878,-892,-810,-585,-219,219,616,881,1021,1115,1224,1346,
+1455,1548,1642,1740,1830,1910,1991,2073,2148,2214,2280,2352,2426,2495,2557,2619,2684,2752,2817,2876,2931,
+2987,3047,3106,3160,3213,3274,3344,3419,3490,3558,3629,3706,3793,3886,3984,4075,4146,4195,4237,4287,4351,
+4412,4458,4494,4540,4606,4680,4743,4778,4787,4791,4820,4891,4992,5094,5168,5196,5168,5095,5025,5025,5125,
+5285,5422,5488,5495,5481,5466,5456,5472,5533,5623,5685,5676,5620,5577,5578,5600,5608,5596,5587,5596,5618,
+5642,5667,5691,5700,5679,5627,5573,5542,5523,5478,5397,5331,5311,5264,5046,4606,4091,3737,3675,3851,4145,
+4492,4890,5310,5652,5797,5710,5513,5422,5586,5961,6356,6608,6696,6699,6696,6719,6773,6858,6955,7041,7100,
+7126,7114,7071,7024,7002,7010,7039,7082,7136,7193,7252,7328,7432,7555,7686,7830,7992,8150,8270,8346,8392,
+8420,8424,8408,8384,8344,8279,8206,8146,8069,7894,7587,7227,6939,6778,6710,6690,6716,6806,6951,7109,7247,
+7370,7513,7692,7870,7985,8026,8051,8116,8205,8260,8260,8240,8214,8139,7944,7600,7134,6615,6132,5770,5569,
+5499,5498,5554,5723,6047,6456,6775,6852,6697,6476,6357,6382,6469,6529,6537,6508,6458,6388,6306,6234,6181,
+6146,6126,6123,6132,6133,6107,6056,5999,5951,5907,5852,5784,5718,5662,5609,5549,5486,5427,5369,5304,5234,
+5170,5112,5050,4980,4915,4863,4820,4777,4730,4680,4629,4577,4527,4478,4429,4384,4350,4323,4295,4261,4223,
+4186,4146,4104,4064,4024,3978,3926,3875,3829,3781,3729,3677,3633,3596,3564,3536,3513,3486,3453,3417,3382,
+3345,3304,3265,3233,3204,3174,3153,3145,3130,3077,2991,2911,2866,2846,2822,2782,2734,2685,2636,2598,2585,
+2595,2599,2567,2502,2438,2397,2372,2345,2306,2266,2232,2198,2164,2133,2107,2081,2049,2015,1987,1966,1945,
+1922,1895,1868,1847,1848,1874,1899,1890,1845,1796,1774,1778,1787,1787,1784,1779,1766,1741,1720,1718,1731,
+1736,1719,1693,1683,1690,1696,1688,1677,1680,1696,1709,1715,1721,1732,1738,1727,1700,1667,1638,1625,1636,
+1666,1689,1684,1648,1606,1581,1576,1575,1562,1540,1520,1508,1497,1476,1451,1436,1432,1426,1409,1390,1374,
+1358,1336,1309,1285,1264,1246,1232,1227,1230,1235,1233,1225,1215,1216,1232,1251,1253,1225,1185,1157,1148,
+1142,1130,1119,1117,1121,1124,1124,1119,1101,1071,1041,1031,1034,1031,1013,990,975,964,944,913,879,
+852,827,801,776,760,748,732,710,689,676,669,659,641,617,593,572,555,541,526,507,484,
+456,426,395,369,348,328,309,291,274,254,230,205,182,161,139,117,96,75,51,25,-2,
+-32,-67,-102,-132,-157,-184,-217,-255,-291,-322,-348,-373,-400,-432,-470,-508,-545,-576,-603,-626,-649,
+-672,-693,-713,-733,-754,-776,-799,-824,-850,-875,-894,-910,-925,-942,-959,-977,-998,-1019,-1039,-1057,-1079,
+-1105,-1133,-1157,-1176,-1193,-1211,-1232,-1256,-1279,-1299,-1313,-1327,-1344,-1362,-1383,-1404,-1420,-1428,-1430,-1432,-1438,
+-1447,-1453,-1458,-1466,-1476,-1486,-1498,-1509,-1520,-1530,-1542,-1555,-1567,-1577,-1588,-1600,-1608,-1610,-1613,-1620,-1629,
+-1628,-1617,-1606,-1603,-1605,-1604,-1601,-1598,-1599,-1598,-1594,-1586,-1577,-1568,-1560,-1553,-1548,-1542,-1536,-1528,-1518,
+-1506,-1493,-1478,-1461,-1442,-1424,-1411,-1401,-1392,-1379,-1366,-1357,-1353,-1348,-1343,-1340,-1339,-1337,-1331,-1323,-1316,
+-1313,-1309,-1305,-1303,-1303,-1305,-1309,-1314,-1318,-1319,-1323,-1329,-1335,-1337,-1337,-1339,-1344,-1351,-1361,-1373,-1385,
+-1396,-1405,-1412,-1411,-1401,-1394,-1398,-1406,-1408,-1402,-1397,-1397,-1397,-1394,-1395,-1397,-1394,-1387,-1388,-1396,-1399,
+-1393,-1387,-1387,-1387,-1380,-1371,-1365,-1361,-1354,-1347,-1341,-1333,-1318,-1304,-1296,-1287,-1270,-1250,-1234,-1219,-1201,
+-1182,-1164,-1147,-1123,-1095,-1067,-1040,-1009,-981,-956,-929,-895,-858,-824,-788,-746,-701,-658,-614,-566,-521,
+-482,-442,-392,-341,-296,-250,-200,-154,-113,-68,-18,13,21,32,41,-13,-156,-264,-151,218,666,
+979,1096,1099,1115,1250,1543,1887,2052,1894,1539,1278,1267,1400,1478,1427,1306,1196,1129,1111,1135,1181,
+1232,1291,1365,1450,1538,1631,1731,1816,1862,1883,1919,1989,2072,2137,2175,2194,2204,2209,2215,2222,2221,
+2200,2163,2131,2119,2110,2072,1991,1891,1805,1735,1659,1571,1483,1408,1345,1283,1221,1159,1087,997,890,
+775,661,550,437,314,183,58,-42,-114,-166,-204,-230,-254,-293,-353,-425,-495,-558,-613,-656,-691,
+-730,-785,-853,-932,-1021,-1114,-1187,-1226,-1244,-1269,-1313,-1364,-1412,-1463,-1528,-1614,-1713,-1810,-1885,-1936,-1975,
+-2014,-2051,-2079,-2099,-2119,-2137,-2148,-2153,-2160,-2170,-2177,-2181,-2186,-2195,-2204,-2217,-2237,-2261,-2290,-2326,-2367,
+-2401,-2418,-2432,-2461,-2499,-2522,-2521,-2516,-2529,-2559,-2593,-2623,-2646,-2649,-2628,-2592,-2555,-2514,-2460,-2399,-2351,
+-2319,-2293,-2257,-2214,-2175,-2146,-2120,-2084,-2021,-1929,-1816,-1701,-1595,-1507,-1433,-1365,-1292,-1215,-1155,-1117,-1082,
+-1024,-947,-875,-824,-785,-747,-715,-692,-671,-639,-604,-575,-548,-512,-482,-497,-574,-684,-773,-814,-818,
+-808,-797,-791,-792,-796,-794,-780,-761,-746,-732,-711,-685,-664,-650,-634,-612,-589,-574,-568,-563,-552,
+-535,-514,-490,-464,-440,-419,-398,-371,-337,-299,-264,-232,-203,-173,-141,-110,-81,-54,-23,12,51,
+92,133,172,212,251,290,328,366,406,450,493,532,570,614,666,723,776,827,878,931,986,
+1040,1094,1146,1192,1230,1264,1294,1323,1349,1375,1402,1431,1455,1476,1499,1528,1560,1590,1617,1644,1671,
+1696,1721,1753,1789,1823,1846,1852,1844,1827,1808,1796,1792,1793,1792,1788,1782,1775,1764,1748,1729,1710,
+1695,1684,1671,1655,1640,1629,1622,1618,1613,1606,1592,1576,1566,1567,1573,1578,1587,1604,1625,1644,1665,
+1692,1718,1732,1738,1748,1757,1751,1728,1700,1669,1652,1606,1552,1528,1533,1510,1421,1302,1221,1192,1176,
+1149,1115,1079,1032,979,947,940,933,905,874,858,850,829,800,776,760,743,726,719,722,724,
+722,721,725,730,738,753,773,787,790,780,767,766,797,864,937,969,935,851,753,672,615,
+574,535,495,464,447,439,434,431,425,399,345,270,196,134,87,51,19,-27,-106,-209,-315,
+-403,-469,-519,-562,-610,-667,-722,-764,-793,-821,-858,-903,-956,-1010,-1057,-1095,-1141,-1214,-1303,-1381,-1435,
+-1476,-1508,-1520,-1509,-1493,-1497,-1517,-1535,-1541,-1542,-1543,-1545,-1551,-1561,-1570,-1568,-1542,-1485,-1408,-1341,-1312,
+-1324,-1358,-1393,-1419,-1419,-1387,-1343,-1327,-1352,-1394,-1433,-1484,-1566,-1673,-1774,-1848,-1888,-1895,-1881,-1872,-1882,
+-1901,-1921,-1955,-2012,-2061,-2054,-1992,-1923,-1881,-1853,-1826,-1828,-1898,-2030,-2173,-2294,-2406,-2542,-2697,-2829,-2908,
+-2956,-3026,-3139,-3256,-3333,-3382,-3451,-3556,-3664,-3734,-3768,-3790,-3817,-3852,-3890,-3922,-3942,-3952,-3969,-3996,-4026,
+-4048,-4065,-4080,-4096,-4110,-4126,-4143,-4159,-4176,-4199,-4219,-4214,-4186,-4161,-4163,-4186,-4206,-4206,-4182,-4146,-4122,
+-4124,-4133,-4122,-4096,-4086,-4089,-4070,-4037,-4052,-4126,-4167,-4086,-3938,-3870,-3945,-4084,-4190,-4240,-4257,-4251,-4242,
+-4271,-4337,-4369,-4316,-4236,-4227,-4302,-4385,-4427,-4457,-4517,-4601,-4686,-4771,-4860,-4937,-4993,-5047,-5119,-5199,-5263,
+-5314,-5373,-5450,-5529,-5595,-5650,-5700,-5753,-5814,-5883,-5956,-6022,-6081,-6144,-6215,-6287,-6352,-6413,-6471,-6525,-6571,
+-6617,-6668,-6721,-6768,-6803,-6837,-6876,-6920,-6964,-7007,-7054,-7106,-7172,-7258,-7359,-7464,-7560,-7649,-7732,-7799,-7836,
+-7838,-7810,-7761,-7715,-7709,-7768,-7877,-8001,-8132,-8292,-8467,-8599,-8651,-8662,-8699,-8770,-8829,-8852,-8863,-8887,-8911,
+-8918,-8918,-8928,-8942,-8950,-8958,-8981,-9013,-9040,-9060,-9076,-9082,-9075,-9067,-9070,-9075,-9065,-9038,-9004,-8962,-8904,
+-8838,-8781,-8738,-8698,-8661,-8642,-8640,-8634,-8604,-8554,-8497,-8436,-8365,-8279,-8173,-8048,-7918,-7806,-7727,-7668,-7613,
+-7556,-7498,-7435,-7357,-7265,-7161,-7041,-6906,-6766,-6635,-6525,-6439,-6382,-6346,-6310,-6255,-6178,-6083,-5973,-5852,-5730,
+-5608,-5473,-5319,-5173,-5074,-5019,-4964,-4871,-4746,-4626,-4526,-4428,-4302,-4131,-3937,-3769,-3657,-3568,-3442,-3263,-3090,
+-2975,-2896,-2790,-2640,-2482,-2348,-2229,-2100,-1964,-1840,-1748,-1697,-1689,-1704,-1709,-1676,-1591,-1453,-1272,-1088,-964,
+-933,-969,-1005,-977,-829,-528,-107,323,646,829,943,1067,1216,1361,1486,1602,1714,1809,1882,1947,2020,
+2100,2177,2249,2319,2390,2457,2517,2575,2639,2707,2771,2824,2868,2918,2980,3049,3112,3168,3229,3300,3375,
+3446,3513,3586,3666,3746,3826,3909,3993,4066,4120,4163,4216,4283,4348,4394,4424,4465,4534,4618,4683,4711,
+4716,4728,4758,4793,4832,4897,4998,5094,5112,5035,4940,4931,5033,5177,5277,5318,5333,5343,5334,5311,5321,
+5401,5527,5623,5643,5609,5575,5564,5560,5546,5521,5501,5493,5501,5523,5552,5570,5563,5529,5482,5441,5419,
+5406,5372,5310,5252,5220,5147,4907,4459,3943,3583,3508,3680,3996,4387,4816,5217,5488,5554,5452,5332,5370,
+5636,6030,6377,6574,6649,6680,6709,6741,6783,6851,6936,7012,7064,7095,7101,7074,7024,6981,6973,7001,7054,
+7114,7169,7221,7287,7371,7456,7530,7612,7726,7865,8004,8124,8224,8293,8321,8324,8326,8325,8306,8278,8264,
+8240,8127,7881,7563,7280,7082,6949,6861,6837,6889,6984,7062,7104,7149,7263,7458,7672,7823,7897,7962,8077,
+8215,8296,8288,8219,8112,7923,7595,7138,6644,6212,5895,5692,5574,5507,5468,5479,5608,5916,6361,6782,6996,
+6950,6753,6563,6458,6422,6413,6408,6394,6356,6290,6215,6152,6105,6070,6052,6060,6087,6103,6086,6043,5995,
+5956,5920,5870,5805,5739,5679,5623,5565,5512,5469,5425,5368,5299,5233,5174,5115,5047,4974,4909,4859,4819,
+4780,4732,4675,4621,4574,4527,4475,4428,4398,4380,4353,4310,4262,4223,4187,4147,4102,4055,4004,3952,3906,
+3864,3819,3770,3728,3696,3667,3634,3601,3570,3534,3488,3441,3404,3371,3333,3296,3263,3231,3200,3192,3209,
+3213,3159,3056,2971,2945,2945,2914,2844,2769,2714,2672,2638,2625,2641,2655,2626,2551,2468,2414,2386,2361,
+2327,2292,2259,2225,2187,2154,2129,2101,2068,2034,2009,1989,1966,1940,1913,1884,1862,1866,1902,1937,1926,
+1865,1800,1776,1790,1813,1825,1830,1826,1803,1765,1737,1737,1752,1754,1733,1705,1690,1689,1689,1684,1678,
+1680,1690,1701,1713,1729,1747,1757,1746,1712,1667,1627,1610,1618,1641,1657,1654,1630,1593,1555,1524,1509,
+1509,1517,1523,1519,1500,1473,1451,1442,1438,1424,1396,1362,1333,1310,1288,1267,1246,1225,1205,1192,1189,
+1195,1201,1203,1199,1193,1196,1215,1234,1231,1198,1158,1139,1139,1137,1123,1111,1106,1101,1092,1086,1091,
+1091,1072,1042,1022,1017,1010,986,957,937,923,901,865,828,800,778,757,740,729,723,708,680,
+650,628,618,610,598,580,560,542,527,515,502,486,465,440,412,386,365,346,325,304,286,
+269,250,223,193,164,138,115,94,77,62,46,28,7,-20,-57,-96,-131,-157,-182,-213,-251,
+-290,-322,-348,-372,-398,-429,-466,-505,-543,-576,-605,-629,-653,-676,-698,-718,-737,-756,-776,-797,-821,
+-847,-873,-894,-911,-926,-940,-954,-969,-989,-1011,-1031,-1050,-1071,-1095,-1118,-1139,-1158,-1175,-1195,-1218,-1243,
+-1266,-1284,-1299,-1316,-1337,-1358,-1377,-1395,-1411,-1421,-1424,-1427,-1435,-1444,-1451,-1454,-1458,-1465,-1474,-1483,-1492,
+-1501,-1510,-1521,-1534,-1542,-1548,-1554,-1564,-1572,-1574,-1577,-1588,-1601,-1604,-1595,-1583,-1578,-1577,-1574,-1570,-1567,
+-1567,-1565,-1561,-1555,-1548,-1539,-1529,-1522,-1516,-1511,-1506,-1499,-1490,-1478,-1464,-1446,-1426,-1404,-1385,-1372,-1364,
+-1358,-1349,-1337,-1328,-1324,-1320,-1316,-1313,-1312,-1310,-1305,-1297,-1290,-1284,-1279,-1276,-1276,-1279,-1282,-1286,-1292,
+-1299,-1304,-1307,-1312,-1317,-1323,-1327,-1332,-1337,-1342,-1351,-1362,-1374,-1384,-1393,-1399,-1400,-1394,-1387,-1388,-1393,
+-1394,-1389,-1386,-1387,-1388,-1388,-1389,-1390,-1388,-1384,-1385,-1391,-1394,-1391,-1387,-1387,-1386,-1379,-1370,-1363,-1357,
+-1351,-1347,-1343,-1335,-1319,-1304,-1296,-1288,-1273,-1256,-1241,-1226,-1209,-1190,-1173,-1154,-1129,-1101,-1075,-1048,-1019,
+-991,-966,-937,-901,-864,-831,-799,-759,-714,-670,-627,-583,-540,-498,-451,-399,-350,-308,-265,-217,-173,
+-136,-93,-42,-6,3,13,24,-22,-159,-282,-211,114,556,905,1059,1055,1014,1076,1316,1643,1833,
+1752,1521,1396,1478,1632,1677,1581,1434,1313,1234,1196,1200,1231,1267,1303,1358,1437,1532,1630,1721,1787,
+1821,1844,1891,1977,2075,2151,2193,2212,2223,2233,2247,2261,2266,2254,2231,2213,2207,2193,2145,2061,1968,
+1888,1814,1725,1620,1523,1448,1389,1330,1270,1208,1132,1036,924,811,706,604,495,372,245,131,47,
+-9,-55,-97,-133,-169,-221,-294,-374,-446,-509,-565,-611,-646,-682,-732,-797,-872,-957,-1049,-1127,-1174,
+-1198,-1226,-1272,-1325,-1374,-1423,-1490,-1581,-1686,-1784,-1857,-1909,-1952,-1996,-2036,-2064,-2084,-2104,-2125,-2138,-2144,
+-2149,-2155,-2161,-2167,-2175,-2185,-2194,-2205,-2222,-2245,-2273,-2307,-2346,-2376,-2391,-2403,-2429,-2463,-2486,-2491,-2498,
+-2522,-2554,-2581,-2602,-2615,-2612,-2588,-2554,-2521,-2479,-2420,-2356,-2312,-2294,-2280,-2251,-2211,-2174,-2145,-2114,-2068,
+-2000,-1914,-1813,-1703,-1592,-1489,-1405,-1333,-1264,-1198,-1151,-1127,-1102,-1045,-956,-867,-803,-763,-732,-706,-683,
+-659,-625,-588,-558,-535,-512,-493,-504,-564,-660,-752,-809,-824,-814,-797,-786,-787,-796,-802,-797,-785,
+-771,-759,-744,-724,-705,-689,-674,-656,-637,-623,-615,-608,-595,-575,-551,-525,-499,-477,-457,-434,-406,
+-374,-341,-310,-278,-243,-207,-170,-135,-102,-73,-42,-7,30,67,103,142,187,233,272,306,342,
+384,429,472,510,547,591,645,706,764,817,866,916,969,1022,1075,1126,1172,1210,1241,1269,1298,
+1325,1351,1376,1401,1424,1444,1465,1494,1531,1567,1598,1628,1658,1686,1711,1738,1772,1806,1829,1835,1825,
+1807,1787,1772,1766,1767,1766,1760,1751,1739,1724,1703,1680,1660,1646,1634,1620,1605,1596,1593,1593,1592,
+1587,1577,1563,1552,1552,1563,1575,1586,1603,1629,1655,1676,1693,1711,1723,1726,1728,1738,1743,1727,1699,
+1677,1652,1641,1597,1540,1519,1529,1500,1392,1257,1178,1164,1158,1127,1088,1058,1022,976,941,927,918,
+893,864,851,843,820,786,760,745,733,718,711,714,718,720,723,726,727,730,743,765,785,
+798,807,820,848,898,972,1047,1086,1065,992,897,811,747,699,654,606,559,524,508,508,517,
+518,493,438,366,297,237,187,148,114,70,2,-85,-171,-247,-316,-386,-456,-523,-586,-642,-686,
+-716,-738,-762,-796,-846,-910,-974,-1031,-1094,-1176,-1267,-1340,-1387,-1422,-1458,-1485,-1492,-1488,-1489,-1499,-1507,
+-1509,-1509,-1514,-1527,-1543,-1560,-1574,-1580,-1564,-1512,-1429,-1344,-1285,-1256,-1249,-1260,-1289,-1317,-1320,-1307,-1311,
+-1349,-1398,-1436,-1477,-1547,-1640,-1730,-1797,-1836,-1847,-1836,-1821,-1822,-1846,-1892,-1961,-2034,-2074,-2059,-2013,-1973,
+-1939,-1891,-1846,-1855,-1944,-2075,-2198,-2303,-2421,-2560,-2698,-2804,-2881,-2959,-3063,-3184,-3283,-3340,-3381,-3449,-3550,
+-3651,-3717,-3749,-3769,-3793,-3826,-3863,-3894,-3909,-3918,-3933,-3959,-3979,-3989,-3999,-4018,-4044,-4070,-4096,-4122,-4144,
+-4164,-4188,-4211,-4212,-4183,-4152,-4148,-4171,-4188,-4176,-4136,-4095,-4077,-4083,-4088,-4072,-4046,-4036,-4036,-4023,-4010,
+-4036,-4088,-4088,-4000,-3903,-3900,-3985,-4073,-4117,-4145,-4177,-4196,-4213,-4276,-4371,-4409,-4342,-4259,-4273,-4368,-4435,
+-4426,-4406,-4438,-4514,-4596,-4683,-4780,-4868,-4930,-4982,-5053,-5134,-5199,-5252,-5316,-5395,-5471,-5529,-5579,-5631,-5688,
+-5750,-5818,-5888,-5952,-6012,-6073,-6142,-6212,-6276,-6336,-6394,-6448,-6497,-6545,-6597,-6647,-6688,-6722,-6761,-6807,-6855,
+-6897,-6934,-6972,-7020,-7088,-7182,-7292,-7397,-7488,-7575,-7662,-7729,-7748,-7722,-7674,-7625,-7589,-7588,-7646,-7756,-7893,
+-8045,-8217,-8389,-8508,-8551,-8565,-8612,-8691,-8749,-8769,-8780,-8805,-8826,-8828,-8827,-8840,-8857,-8863,-8869,-8892,-8925,
+-8950,-8965,-8979,-8986,-8982,-8975,-8979,-8985,-8972,-8939,-8902,-8863,-8812,-8752,-8700,-8664,-8633,-8605,-8586,-8575,-8553,
+-8514,-8466,-8419,-8367,-8299,-8212,-8107,-7986,-7859,-7754,-7684,-7635,-7585,-7527,-7466,-7403,-7330,-7246,-7145,-7018,-6869,
+-6717,-6585,-6481,-6403,-6352,-6325,-6303,-6260,-6188,-6095,-5991,-5880,-5765,-5649,-5516,-5359,-5205,-5094,-5033,-4979,-4887,
+-4761,-4638,-4542,-4459,-4355,-4208,-4028,-3859,-3732,-3625,-3484,-3302,-3134,-3031,-2965,-2864,-2707,-2538,-2401,-2284,-2147,
+-1988,-1840,-1734,-1673,-1647,-1643,-1654,-1666,-1652,-1577,-1431,-1249,-1099,-1026,-1022,-1048,-1055,-980,-762,-399,17,
+367,599,761,919,1091,1254,1402,1549,1689,1798,1862,1904,1958,2034,2115,2188,2253,2320,2389,2455,2513,
+2569,2629,2690,2745,2791,2839,2898,2968,3040,3110,3181,3255,3327,3395,3467,3547,3632,3709,3775,3841,3915,
+3993,4060,4115,4167,4225,4284,4333,4370,4412,4476,4553,4612,4637,4647,4673,4709,4721,4711,4737,4844,4979,
+5036,4980,4899,4901,4992,5086,5126,5142,5184,5237,5246,5207,5185,5239,5354,5459,5508,5515,5512,5507,5491,
+5463,5435,5416,5406,5406,5419,5436,5438,5418,5385,5349,5313,5283,5265,5254,5235,5203,5146,5010,4720,4274,
+3803,3494,3451,3642,3970,4356,4739,5048,5219,5250,5218,5247,5429,5754,6116,6392,6541,6613,6667,6719,6760,
+6802,6863,6931,6981,7010,7032,7050,7044,7006,6961,6943,6970,7033,7106,7171,7227,7285,7346,7392,7420,7457,
+7528,7629,7738,7851,7967,8064,8118,8140,8166,8204,8231,8238,8243,8241,8189,8051,7853,7638,7423,7209,7038,
+6973,7024,7112,7136,7071,6987,6982,7087,7248,7389,7495,7622,7810,8013,8132,8112,7971,7750,7453,7072,6651,
+6284,6048,5942,5893,5825,5704,5545,5411,5403,5616,6052,6572,6972,7122,7043,6849,6644,6483,6384,6338,6306,
+6250,6172,6102,6056,6019,5978,5952,5963,6004,6039,6043,6021,5994,5970,5940,5894,5832,5764,5698,5637,5582,
+5537,5504,5472,5428,5367,5299,5233,5173,5113,5048,4978,4915,4869,4832,4788,4731,4675,4629,4585,4533,4483,
+4453,4434,4405,4357,4306,4265,4229,4188,4141,4092,4040,3988,3943,3905,3864,3820,3781,3751,3720,3684,3652,
+3623,3583,3527,3473,3435,3407,3376,3343,3311,3269,3218,3190,3207,3233,3208,3130,3064,3051,3055,3014,2921,
+2829,2770,2733,2699,2680,2688,2701,2676,2603,2516,2452,2414,2381,2342,2305,2274,2245,2214,2183,2152,2117,
+2080,2050,2033,2017,1994,1968,1944,1917,1889,1880,1905,1939,1932,1873,1809,1789,1814,1847,1867,1874,1867,
+1837,1791,1755,1745,1749,1747,1732,1712,1694,1682,1677,1678,1681,1684,1687,1695,1711,1732,1750,1756,1744,
+1714,1670,1628,1605,1603,1610,1616,1617,1611,1591,1553,1510,1485,1487,1505,1514,1502,1475,1450,1437,1433,
+1427,1409,1377,1338,1302,1273,1253,1237,1221,1201,1181,1167,1163,1166,1171,1176,1177,1171,1169,1177,1187,
+1178,1147,1117,1110,1119,1119,1106,1093,1089,1080,1062,1049,1055,1067,1059,1031,1004,992,983,962,932,
+907,888,866,832,795,765,744,726,710,697,685,667,639,606,580,566,558,550,538,521,504,
+492,483,473,459,441,420,399,380,363,345,326,305,285,264,238,205,172,142,118,97,77,
+62,52,43,32,15,-9,-44,-84,-120,-150,-176,-207,-244,-283,-317,-346,-372,-401,-433,-469,-505,
+-541,-575,-605,-631,-656,-680,-704,-727,-747,-765,-781,-799,-821,-847,-872,-893,-910,-926,-940,-953,-969,
+-987,-1008,-1028,-1047,-1067,-1088,-1108,-1126,-1143,-1160,-1180,-1204,-1230,-1252,-1268,-1282,-1303,-1330,-1353,-1370,-1383,
+-1397,-1407,-1413,-1420,-1430,-1441,-1447,-1450,-1453,-1460,-1468,-1477,-1483,-1488,-1495,-1507,-1518,-1523,-1524,-1527,-1535,
+-1540,-1541,-1543,-1553,-1566,-1570,-1564,-1555,-1551,-1550,-1548,-1545,-1543,-1541,-1536,-1530,-1524,-1517,-1508,-1498,-1490,
+-1485,-1481,-1477,-1469,-1459,-1447,-1432,-1414,-1393,-1372,-1351,-1336,-1328,-1322,-1315,-1306,-1298,-1293,-1291,-1287,-1283,
+-1282,-1280,-1277,-1271,-1264,-1258,-1252,-1249,-1251,-1256,-1261,-1265,-1271,-1281,-1288,-1291,-1293,-1298,-1306,-1314,-1321,
+-1327,-1333,-1341,-1353,-1364,-1372,-1376,-1379,-1381,-1381,-1379,-1379,-1382,-1382,-1378,-1375,-1375,-1378,-1379,-1381,-1382,
+-1382,-1379,-1379,-1382,-1386,-1385,-1384,-1383,-1381,-1375,-1368,-1363,-1357,-1350,-1345,-1342,-1334,-1320,-1306,-1296,-1285,
+-1272,-1257,-1245,-1231,-1214,-1196,-1180,-1160,-1133,-1105,-1080,-1055,-1028,-1000,-974,-944,-906,-869,-837,-805,-766,
+-723,-681,-640,-596,-551,-507,-459,-407,-360,-322,-281,-233,-188,-152,-113,-62,-21,-7,-2,0,-43,
+-164,-285,-244,40,466,841,1033,1043,977,989,1173,1461,1663,1672,1588,1600,1746,1881,1870,1727,1558,
+1426,1330,1268,1247,1260,1284,1316,1372,1456,1555,1648,1724,1776,1806,1835,1887,1970,2062,2138,2189,2220,
+2244,2268,2292,2311,2314,2299,2277,2265,2263,2252,2206,2127,2039,1959,1876,1775,1663,1567,1495,1437,1376,
+1312,1245,1165,1067,962,861,767,666,553,430,312,216,153,114,79,37,-13,-76,-158,-255,-343,
+-406,-451,-493,-535,-575,-617,-670,-733,-801,-875,-959,-1039,-1100,-1142,-1185,-1243,-1307,-1366,-1423,-1491,-1579,
+-1675,-1763,-1830,-1881,-1928,-1975,-2015,-2044,-2064,-2084,-2104,-2119,-2129,-2137,-2143,-2146,-2151,-2161,-2173,-2183,-2193,
+-2208,-2229,-2255,-2287,-2325,-2353,-2361,-2360,-2369,-2391,-2413,-2433,-2461,-2499,-2532,-2551,-2564,-2572,-2565,-2538,-2503,
+-2472,-2436,-2381,-2319,-2277,-2264,-2262,-2245,-2214,-2181,-2150,-2111,-2053,-1979,-1895,-1802,-1698,-1584,-1474,-1381,-1307,
+-1242,-1184,-1148,-1135,-1119,-1061,-963,-860,-789,-754,-737,-718,-690,-651,-602,-553,-518,-501,-492,-487,-496,
+-539,-623,-726,-809,-846,-841,-819,-803,-798,-803,-810,-814,-810,-800,-789,-778,-765,-748,-729,-711,-694,
+-678,-665,-657,-649,-636,-617,-593,-565,-538,-514,-492,-467,-435,-403,-373,-346,-317,-284,-247,-208,-167,
+-129,-96,-65,-32,3,36,70,112,161,209,248,280,316,359,403,442,477,516,564,625,694,
+761,819,868,915,963,1012,1058,1101,1140,1172,1197,1223,1253,1287,1317,1344,1371,1398,1421,1444,1475,
+1515,1555,1588,1617,1645,1671,1692,1715,1746,1778,1798,1802,1793,1780,1765,1750,1739,1733,1727,1717,1701,
+1685,1668,1647,1626,1611,1604,1596,1586,1579,1580,1587,1592,1590,1583,1572,1559,1552,1558,1573,1590,1605,
+1626,1652,1675,1689,1701,1711,1712,1706,1706,1715,1712,1688,1661,1652,1641,1644,1598,1532,1505,1514,1483,
+1368,1231,1157,1149,1140,1096,1045,1017,997,966,936,922,914,892,867,851,840,817,783,756,740,
+727,713,706,708,713,717,721,722,720,721,734,759,781,797,816,851,906,978,1058,1129,1165,
+1153,1096,1017,939,877,831,787,730,662,601,570,576,603,616,592,536,467,403,345,291,244,
+206,163,105,36,-28,-94,-171,-264,-357,-435,-497,-551,-600,-642,-670,-687,-708,-751,-824,-913,-1000,
+-1082,-1166,-1243,-1297,-1326,-1351,-1386,-1424,-1452,-1463,-1467,-1469,-1467,-1461,-1460,-1476,-1513,-1557,-1589,-1600,-1599,
+-1585,-1544,-1465,-1361,-1262,-1186,-1142,-1137,-1174,-1228,-1265,-1283,-1310,-1356,-1399,-1419,-1438,-1490,-1574,-1660,-1724,
+-1760,-1774,-1774,-1771,-1778,-1806,-1863,-1945,-2025,-2065,-2056,-2031,-2014,-1987,-1935,-1893,-1921,-2021,-2140,-2237,-2333,
+-2458,-2597,-2711,-2788,-2858,-2949,-3061,-3174,-3262,-3323,-3375,-3444,-3535,-3626,-3693,-3733,-3756,-3775,-3800,-3831,-3860,
+-3877,-3888,-3905,-3927,-3940,-3943,-3953,-3982,-4021,-4059,-4093,-4122,-4140,-4151,-4169,-4195,-4207,-4189,-4157,-4142,-4147,
+-4145,-4117,-4074,-4043,-4036,-4043,-4040,-4019,-3993,-3976,-3965,-3956,-3963,-4001,-4032,-4004,-3935,-3918,-3992,-4083,-4105,
+-4078,-4081,-4125,-4158,-4181,-4250,-4353,-4391,-4323,-4256,-4302,-4418,-4473,-4428,-4372,-4383,-4446,-4518,-4600,-4701,-4797,
+-4863,-4917,-4987,-5067,-5131,-5185,-5251,-5331,-5403,-5456,-5503,-5559,-5620,-5682,-5748,-5818,-5885,-5946,-6006,-6071,-6136,
+-6197,-6257,-6316,-6373,-6423,-6472,-6520,-6565,-6606,-6647,-6694,-6743,-6784,-6817,-6849,-6888,-6940,-7012,-7110,-7221,-7320,
+-7404,-7491,-7584,-7653,-7659,-7608,-7546,-7505,-7490,-7506,-7568,-7681,-7824,-7979,-8141,-8296,-8404,-8449,-8473,-8528,-8607,
+-8664,-8685,-8701,-8730,-8752,-8753,-8752,-8767,-8784,-8787,-8788,-8807,-8837,-8857,-8868,-8880,-8890,-8888,-8880,-8881,-8883,
+-8866,-8830,-8794,-8760,-8714,-8654,-8596,-8554,-8522,-8496,-8479,-8467,-8447,-8411,-8370,-8329,-8279,-8209,-8124,-8030,-7925,
+-7815,-7722,-7661,-7616,-7566,-7503,-7435,-7366,-7295,-7216,-7119,-6989,-6827,-6664,-6534,-6443,-6378,-6336,-6316,-6306,-6274,
+-6205,-6110,-6006,-5901,-5796,-5689,-5565,-5414,-5254,-5125,-5041,-4972,-4881,-4767,-4657,-4569,-4492,-4399,-4267,-4098,-3927,
+-3790,-3676,-3538,-3358,-3186,-3077,-3014,-2921,-2763,-2585,-2442,-2325,-2185,-2008,-1838,-1722,-1662,-1633,-1619,-1624,-1652,
+-1675,-1648,-1547,-1393,-1237,-1121,-1059,-1047,-1054,-1020,-880,-617,-286,31,303,547,780,989,1162,1322,1494,
+1666,1794,1855,1880,1913,1973,2043,2105,2159,2217,2284,2353,2413,2468,2528,2597,2669,2729,2778,2827,2887,
+2961,3042,3121,3193,3261,3329,3405,3490,3575,3649,3714,3779,3851,3930,4009,4078,4133,4179,4226,4276,4327,
+4377,4435,4502,4558,4589,4611,4651,4696,4702,4664,4653,4729,4854,4923,4902,4864,4891,4960,4994,4979,4988,
+5066,5163,5193,5143,5087,5093,5159,5237,5296,5337,5370,5386,5378,5357,5341,5336,5337,5339,5344,5344,5329,
+5302,5275,5248,5214,5178,5162,5178,5199,5177,5076,4866,4533,4113,3720,3497,3513,3726,4041,4370,4653,4851,
+4963,5037,5144,5333,5604,5913,6195,6401,6528,6610,6675,6727,6768,6817,6883,6946,6979,6990,7008,7038,7055,
+7040,7006,6986,7001,7050,7113,7173,7226,7276,7320,7345,7355,7379,7432,7498,7562,7635,7736,7845,7925,7971,
+8016,8075,8123,8141,8136,8127,8110,8075,8011,7892,7683,7397,7135,7020,7071,7175,7184,7047,6838,6677,6628,
+6674,6762,6876,7042,7269,7502,7645,7632,7471,7214,6914,6615,6361,6203,6164,6207,6249,6209,6053,5799,5516,
+5322,5355,5680,6211,6748,7102,7206,7105,6899,6683,6523,6421,6330,6210,6082,5994,5955,5926,5885,5854,5865,
+5908,5949,5968,5975,5980,5979,5965,5930,5877,5812,5745,5684,5631,5585,5545,5509,5472,5423,5358,5286,5221,
+5171,5123,5060,4989,4930,4889,4849,4797,4743,4701,4662,4613,4559,4516,4484,4447,4399,4351,4310,4269,4221,
+4174,4130,4081,4029,3982,3946,3910,3870,3830,3792,3752,3711,3679,3655,3619,3566,3515,3480,3454,3424,3395,
+3368,3322,3249,3187,3178,3206,3209,3162,3113,3102,3103,3063,2976,2890,2835,2797,2756,2722,2712,2713,2693,
+2637,2565,2504,2458,2413,2362,2316,2283,2261,2240,2213,2178,2135,2094,2066,2053,2039,2017,1994,1976,1951,
+1909,1874,1877,1906,1914,1876,1824,1807,1830,1862,1879,1882,1873,1849,1812,1778,1757,1745,1736,1728,1718,
+1700,1677,1665,1670,1681,1686,1685,1692,1710,1729,1738,1738,1729,1708,1674,1637,1609,1593,1583,1576,1580,
+1588,1584,1554,1512,1485,1483,1488,1479,1452,1425,1411,1408,1403,1390,1370,1345,1316,1287,1262,1244,1231,
+1215,1194,1173,1158,1149,1145,1146,1152,1157,1152,1141,1133,1130,1118,1093,1072,1071,1081,1082,1070,1061,
+1058,1050,1030,1014,1018,1034,1033,1006,973,954,947,936,913,885,862,839,809,773,739,713,694,
+676,656,634,612,588,561,535,516,506,500,491,476,460,449,444,438,427,411,396,382,369,
+354,337,321,303,281,252,218,183,153,132,114,96,78,62,53,48,39,21,-5,-37,-71,
+-105,-137,-167,-199,-235,-273,-309,-341,-370,-401,-436,-472,-505,-536,-568,-599,-628,-655,-682,-709,-736,
+-760,-779,-794,-808,-827,-849,-871,-889,-906,-922,-937,-951,-967,-987,-1009,-1029,-1047,-1066,-1086,-1105,-1121,
+-1137,-1152,-1170,-1194,-1219,-1240,-1252,-1264,-1287,-1317,-1344,-1360,-1370,-1379,-1388,-1395,-1404,-1416,-1427,-1433,-1437,
+-1442,-1452,-1463,-1472,-1476,-1479,-1484,-1494,-1504,-1508,-1508,-1511,-1516,-1519,-1516,-1514,-1521,-1530,-1532,-1526,-1521,
+-1520,-1521,-1521,-1520,-1518,-1515,-1508,-1500,-1492,-1485,-1476,-1466,-1457,-1452,-1450,-1448,-1440,-1427,-1411,-1394,-1376,
+-1357,-1339,-1322,-1307,-1296,-1287,-1281,-1273,-1267,-1262,-1259,-1255,-1251,-1249,-1248,-1247,-1243,-1237,-1230,-1225,-1224,
+-1229,-1236,-1242,-1245,-1251,-1261,-1269,-1271,-1272,-1277,-1285,-1293,-1300,-1307,-1317,-1329,-1343,-1356,-1362,-1361,-1359,
+-1362,-1367,-1370,-1371,-1372,-1373,-1371,-1367,-1366,-1367,-1369,-1372,-1374,-1375,-1375,-1374,-1375,-1378,-1381,-1382,-1381,
+-1376,-1371,-1366,-1363,-1358,-1351,-1344,-1339,-1330,-1319,-1306,-1295,-1283,-1269,-1258,-1247,-1234,-1216,-1199,-1183,-1163,
+-1135,-1107,-1083,-1061,-1035,-1007,-979,-947,-911,-875,-843,-807,-766,-725,-688,-647,-600,-554,-514,-472,-422,
+-375,-336,-296,-247,-198,-162,-127,-79,-35,-15,-11,-14,-53,-160,-276,-261,-22,377,763,988,1024,
+960,950,1095,1357,1588,1694,1734,1823,1964,2043,1975,1799,1608,1454,1339,1267,1245,1264,1302,1354,1430,
+1524,1617,1696,1758,1804,1837,1868,1912,1973,2045,2117,2184,2238,2280,2312,2341,2360,2359,2334,2302,2283,
+2284,2284,2254,2185,2097,2006,1914,1811,1705,1616,1546,1483,1416,1347,1274,1190,1095,1001,916,831,729,
+614,499,399,320,267,236,212,176,116,23,-99,-228,-326,-374,-392,-413,-448,-492,-539,-593,-654,
+-719,-788,-866,-949,-1022,-1083,-1143,-1214,-1291,-1364,-1432,-1503,-1582,-1663,-1738,-1801,-1854,-1905,-1952,-1993,-2025,
+-2049,-2070,-2087,-2102,-2115,-2128,-2136,-2138,-2142,-2150,-2162,-2172,-2184,-2202,-2221,-2240,-2265,-2297,-2323,-2326,-2313,
+-2304,-2313,-2338,-2377,-2425,-2470,-2496,-2506,-2515,-2527,-2526,-2498,-2457,-2424,-2394,-2352,-2302,-2266,-2256,-2256,-2245,
+-2219,-2187,-2153,-2109,-2047,-1967,-1879,-1785,-1681,-1567,-1455,-1361,-1288,-1227,-1177,-1149,-1143,-1130,-1076,-979,-876,
+-805,-776,-765,-748,-710,-651,-582,-517,-473,-457,-461,-469,-478,-507,-583,-697,-804,-862,-866,-847,-832,
+-826,-823,-824,-830,-834,-829,-819,-810,-802,-789,-770,-750,-731,-714,-699,-688,-678,-668,-653,-632,-604,
+-573,-545,-520,-492,-461,-429,-402,-378,-352,-324,-292,-255,-212,-169,-132,-99,-66,-30,4,39,81,
+132,180,219,253,293,339,381,416,448,488,541,605,677,748,809,858,905,955,1003,1044,1079,
+1110,1138,1161,1186,1220,1259,1294,1324,1353,1383,1410,1437,1470,1511,1550,1578,1599,1619,1639,1659,1682,
+1713,1743,1757,1753,1743,1736,1730,1717,1703,1692,1682,1670,1653,1638,1624,1610,1596,1589,1585,1581,1574,
+1573,1581,1592,1596,1591,1583,1573,1563,1559,1566,1582,1600,1617,1637,1655,1668,1675,1684,1691,1688,1680,
+1682,1691,1685,1659,1640,1646,1644,1642,1582,1500,1461,1465,1437,1334,1210,1145,1135,1116,1059,1000,974,
+966,950,929,918,912,896,873,854,839,815,785,761,744,729,715,709,712,716,717,718,717,
+715,717,731,755,777,795,821,871,945,1030,1113,1180,1217,1214,1173,1108,1038,980,939,900,843,
+762,682,638,647,687,710,688,630,563,503,444,385,333,292,251,200,143,89,29,-53,-159,
+-262,-340,-397,-448,-505,-563,-604,-624,-636,-670,-745,-850,-960,-1056,-1133,-1191,-1227,-1246,-1263,-1291,-1327,
+-1360,-1383,-1393,-1394,-1388,-1385,-1395,-1432,-1499,-1571,-1616,-1623,-1610,-1594,-1561,-1486,-1367,-1237,-1127,-1061,-1054,
+-1103,-1178,-1239,-1275,-1309,-1352,-1387,-1396,-1401,-1435,-1506,-1588,-1650,-1681,-1689,-1693,-1708,-1738,-1778,-1833,-1909,
+-1989,-2041,-2053,-2050,-2046,-2027,-1990,-1977,-2029,-2127,-2215,-2282,-2373,-2506,-2637,-2721,-2771,-2835,-2928,-3031,-3124,
+-3206,-3283,-3358,-3435,-3519,-3604,-3673,-3718,-3742,-3755,-3770,-3793,-3820,-3842,-3860,-3880,-3900,-3912,-3919,-3938,-3974,
+-4017,-4056,-4090,-4121,-4145,-4164,-4191,-4228,-4251,-4236,-4190,-4141,-4101,-4061,-4019,-3988,-3978,-3983,-3986,-3976,-3959,
+-3940,-3917,-3889,-3873,-3898,-3953,-3981,-3946,-3906,-3947,-4063,-4137,-4103,-4034,-4036,-4097,-4136,-4147,-4203,-4301,-4340,
+-4281,-4232,-4296,-4421,-4472,-4421,-4361,-4361,-4403,-4452,-4522,-4623,-4724,-4793,-4849,-4921,-5000,-5061,-5113,-5180,-5260,
+-5329,-5380,-5429,-5488,-5551,-5610,-5675,-5746,-5816,-5878,-5937,-5999,-6062,-6123,-6184,-6246,-6303,-6351,-6394,-6437,-6482,
+-6529,-6578,-6629,-6672,-6701,-6726,-6760,-6807,-6866,-6942,-7040,-7149,-7244,-7323,-7405,-7498,-7563,-7560,-7501,-7444,-7427,
+-7442,-7477,-7543,-7653,-7788,-7927,-8066,-8201,-8304,-8358,-8390,-8444,-8518,-8575,-8601,-8623,-8655,-8681,-8685,-8688,-8705,
+-8722,-8722,-8718,-8733,-8757,-8771,-8777,-8788,-8800,-8797,-8783,-8775,-8768,-8747,-8711,-8677,-8648,-8604,-8540,-8474,-8424,
+-8389,-8363,-8348,-8342,-8330,-8305,-8273,-8236,-8184,-8113,-8034,-7955,-7871,-7781,-7702,-7646,-7601,-7546,-7477,-7403,-7330,
+-7255,-7178,-7085,-6957,-6793,-6626,-6499,-6421,-6370,-6335,-6320,-6316,-6291,-6222,-6121,-6015,-5917,-5823,-5724,-5605,-5459,
+-5300,-5159,-5053,-4966,-4878,-4783,-4694,-4613,-4529,-4427,-4292,-4128,-3966,-3838,-3739,-3617,-3443,-3259,-3131,-3059,-2970,
+-2816,-2633,-2485,-2369,-2229,-2043,-1858,-1735,-1680,-1657,-1639,-1634,-1648,-1666,-1652,-1590,-1485,-1355,-1221,-1111,-1045,
+-1017,-984,-902,-762,-581,-360,-85,240,566,833,1038,1229,1443,1654,1807,1881,1908,1933,1973,2017,2057,
+2096,2142,2195,2253,2309,2368,2434,2513,2595,2664,2714,2757,2814,2889,2973,3050,3118,3186,3263,3345,3424,
+3496,3564,3636,3713,3789,3865,3944,4024,4088,4130,4161,4204,4258,4313,4366,4423,4481,4528,4570,4624,4680,
+4693,4649,4610,4644,4736,4810,4833,4851,4899,4937,4914,4865,4876,4973,5081,5113,5064,5001,4980,5004,5050,
+5103,5160,5211,5241,5248,5244,5244,5252,5264,5272,5273,5260,5232,5198,5174,5158,5138,5116,5115,5144,5164,
+5116,4967,4721,4402,4056,3769,3635,3696,3905,4170,4412,4594,4723,4845,5016,5262,5553,5834,6070,6261,6418,
+6546,6643,6704,6738,6768,6819,6890,6953,6983,6994,7013,7046,7072,7070,7050,7032,7035,7062,7104,7150,7199,
+7248,7288,7308,7320,7351,7404,7456,7489,7527,7602,7704,7793,7851,7900,7956,8000,8013,7995,7970,7961,7982,
+8016,7995,7837,7539,7221,7044,7053,7134,7119,6931,6633,6354,6185,6139,6187,6301,6470,6679,6881,7015,7032,
+6930,6753,6570,6437,6378,6388,6449,6526,6576,6553,6423,6175,5838,5511,5350,5477,5882,6414,6882,7159,7218,
+7110,6931,6766,6631,6484,6296,6106,5978,5920,5884,5842,5810,5809,5826,5839,5849,5873,5908,5937,5949,5941,
+5914,5867,5809,5753,5702,5648,5587,5528,5480,5439,5387,5321,5259,5218,5186,5138,5068,4999,4948,4905,4857,
+4808,4771,4740,4699,4644,4589,4539,4490,4442,4400,4360,4312,4257,4209,4170,4125,4070,4020,3982,3949,3910,
+3870,3829,3783,3736,3700,3677,3649,3609,3570,3543,3517,3482,3449,3426,3385,3305,3218,3176,3179,3178,3143,
+3100,3084,3081,3051,2989,2925,2880,2843,2798,2754,2724,2706,2682,2642,2591,2542,2497,2449,2395,2342,2305,
+2285,2270,2246,2209,2162,2118,2090,2073,2056,2032,2014,2004,1981,1931,1877,1861,1888,1912,1893,1851,1830,
+1845,1871,1884,1882,1873,1860,1841,1819,1795,1769,1748,1736,1727,1705,1675,1656,1662,1677,1682,1680,1687,
+1703,1716,1717,1714,1711,1702,1679,1649,1622,1598,1575,1558,1556,1563,1558,1530,1494,1473,1468,1457,1429,
+1396,1379,1381,1382,1370,1347,1327,1313,1299,1282,1264,1247,1229,1208,1184,1163,1147,1133,1120,1114,1120,
+1131,1131,1118,1102,1091,1079,1061,1043,1037,1041,1041,1034,1027,1024,1018,1000,984,985,999,1002,977,
+936,906,897,895,883,858,830,805,778,743,705,674,653,635,612,585,561,541,520,495,472,
+458,452,444,428,412,402,400,398,388,375,365,357,347,332,317,305,292,269,236,199,165,
+139,119,100,81,61,45,39,39,35,17,-11,-41,-67,-92,-122,-155,-190,-225,-263,-300,-333,
+-364,-396,-433,-469,-500,-527,-557,-589,-620,-650,-678,-708,-740,-769,-792,-809,-822,-838,-856,-874,-890,
+-904,-919,-934,-949,-968,-990,-1012,-1031,-1048,-1066,-1086,-1105,-1123,-1137,-1150,-1165,-1187,-1211,-1229,-1238,-1247,
+-1268,-1300,-1330,-1348,-1357,-1362,-1367,-1374,-1383,-1394,-1404,-1411,-1417,-1425,-1437,-1450,-1460,-1465,-1467,-1472,-1481,
+-1490,-1495,-1498,-1503,-1507,-1505,-1498,-1495,-1498,-1502,-1499,-1493,-1489,-1489,-1490,-1490,-1489,-1488,-1485,-1478,-1470,
+-1461,-1453,-1444,-1435,-1426,-1420,-1419,-1418,-1410,-1394,-1372,-1352,-1333,-1317,-1304,-1292,-1281,-1268,-1257,-1249,-1242,
+-1237,-1232,-1228,-1223,-1218,-1216,-1217,-1216,-1212,-1205,-1200,-1197,-1200,-1206,-1215,-1221,-1224,-1230,-1239,-1245,-1248,
+-1251,-1258,-1266,-1271,-1275,-1284,-1299,-1315,-1331,-1344,-1349,-1347,-1343,-1345,-1353,-1358,-1359,-1361,-1363,-1364,-1361,
+-1358,-1358,-1360,-1362,-1364,-1366,-1367,-1367,-1367,-1370,-1375,-1379,-1378,-1372,-1366,-1361,-1359,-1356,-1351,-1344,-1335,
+-1324,-1313,-1302,-1293,-1282,-1271,-1261,-1251,-1236,-1217,-1200,-1184,-1163,-1136,-1109,-1086,-1065,-1040,-1012,-982,-950,
+-916,-883,-850,-811,-767,-727,-693,-653,-603,-557,-521,-487,-440,-390,-348,-309,-262,-212,-173,-140,-97,
+-54,-27,-16,-15,-45,-139,-259,-282,-102,254,642,904,980,935,913,1027,1274,1544,1740,1862,1966,
+2053,2066,1964,1776,1562,1372,1239,1186,1205,1262,1331,1410,1503,1602,1689,1762,1823,1872,1908,1936,1968,
+2008,2060,2125,2201,2271,2318,2346,2367,2383,2380,2350,2306,2276,2277,2292,2282,2225,2133,2032,1935,1840,
+1747,1664,1592,1523,1453,1382,1307,1221,1128,1042,966,884,783,675,580,502,431,371,332,311,285,
+225,115,-34,-185,-288,-327,-329,-338,-372,-419,-467,-518,-577,-644,-716,-795,-878,-959,-1033,-1103,-1179,
+-1259,-1339,-1416,-1491,-1566,-1639,-1708,-1772,-1831,-1884,-1929,-1968,-2003,-2034,-2058,-2075,-2086,-2099,-2113,-2123,-2128,
+-2132,-2140,-2148,-2158,-2172,-2193,-2212,-2226,-2243,-2269,-2293,-2297,-2279,-2261,-2265,-2296,-2349,-2408,-2451,-2466,-2464,
+-2472,-2491,-2497,-2471,-2426,-2387,-2362,-2339,-2311,-2289,-2278,-2271,-2252,-2222,-2187,-2151,-2109,-2047,-1964,-1868,-1767,
+-1661,-1547,-1435,-1339,-1266,-1209,-1168,-1146,-1141,-1127,-1079,-997,-910,-847,-817,-800,-774,-724,-653,-572,-496,
+-443,-424,-436,-455,-465,-485,-551,-670,-793,-865,-878,-869,-866,-867,-862,-854,-856,-863,-864,-856,-846,
+-840,-831,-814,-793,-770,-749,-730,-714,-701,-690,-679,-664,-639,-606,-572,-542,-515,-487,-459,-433,-409,
+-384,-358,-332,-301,-262,-219,-179,-143,-106,-66,-29,6,47,95,142,182,222,269,320,364,399,
+434,478,530,591,658,725,783,832,882,936,988,1029,1060,1088,1117,1145,1175,1212,1253,1289,1316,
+1340,1367,1395,1422,1456,1497,1534,1557,1570,1583,1599,1619,1642,1671,1695,1701,1690,1679,1679,1682,1676,
+1664,1655,1650,1643,1631,1621,1614,1606,1599,1593,1588,1579,1569,1565,1570,1577,1577,1570,1564,1561,1557,
+1557,1565,1582,1602,1620,1637,1646,1648,1649,1655,1663,1662,1656,1661,1672,1667,1646,1636,1648,1642,1602,
+1524,1430,1381,1376,1352,1272,1177,1125,1110,1082,1023,970,951,950,939,920,909,904,893,873,854,
+834,811,786,767,754,740,729,727,730,731,726,721,721,722,726,737,755,774,795,830,889,
+969,1057,1140,1208,1250,1258,1229,1173,1108,1053,1017,986,940,866,784,736,741,779,802,780,721,
+653,590,527,462,406,364,327,283,233,183,125,45,-55,-154,-231,-288,-341,-403,-471,-526,-556,
+-571,-600,-667,-770,-880,-973,-1040,-1086,-1119,-1142,-1159,-1174,-1192,-1217,-1244,-1265,-1276,-1284,-1302,-1339,-1402,
+-1487,-1568,-1614,-1617,-1601,-1586,-1557,-1482,-1358,-1215,-1091,-1012,-998,-1051,-1145,-1229,-1277,-1301,-1328,-1358,-1381,
+-1397,-1423,-1471,-1534,-1590,-1618,-1617,-1613,-1637,-1687,-1739,-1788,-1852,-1935,-2012,-2054,-2065,-2061,-2046,-2034,-2060,
+-2135,-2223,-2281,-2327,-2413,-2539,-2644,-2695,-2731,-2803,-2905,-2998,-3071,-3148,-3239,-3333,-3420,-3503,-3583,-3649,-3691,
+-3713,-3726,-3739,-3757,-3780,-3805,-3829,-3854,-3875,-3892,-3907,-3931,-3964,-3997,-4027,-4062,-4110,-4163,-4215,-4268,-4320,
+-4348,-4329,-4262,-4169,-4069,-3977,-3915,-3897,-3910,-3925,-3920,-3907,-3899,-3892,-3865,-3818,-3791,-3824,-3899,-3941,-3917,
+-3893,-3948,-4055,-4098,-4037,-3971,-3997,-4076,-4110,-4102,-4139,-4230,-4274,-4227,-4185,-4243,-4356,-4413,-4392,-4363,-4368,
+-4383,-4398,-4447,-4541,-4640,-4713,-4776,-4854,-4934,-4992,-5041,-5106,-5185,-5251,-5303,-5355,-5417,-5477,-5535,-5599,-5672,
+-5741,-5802,-5862,-5925,-5989,-6051,-6114,-6176,-6230,-6274,-6313,-6358,-6407,-6459,-6509,-6553,-6587,-6611,-6637,-6678,-6734,
+-6799,-6876,-6974,-7083,-7179,-7255,-7329,-7408,-7458,-7445,-7391,-7356,-7371,-7417,-7467,-7532,-7631,-7752,-7872,-7990,-8111,
+-8214,-8276,-8310,-8356,-8425,-8485,-8518,-8543,-8575,-8603,-8613,-8619,-8636,-8652,-8653,-8651,-8663,-8683,-8693,-8697,-8709,
+-8723,-8717,-8694,-8672,-8655,-8628,-8591,-8557,-8528,-8484,-8418,-8353,-8307,-8276,-8252,-8233,-8224,-8217,-8201,-8178,-8146,
+-8096,-8027,-7955,-7888,-7821,-7749,-7681,-7627,-7578,-7518,-7447,-7372,-7298,-7220,-7142,-7054,-6937,-6782,-6621,-6499,-6428,
+-6386,-6357,-6343,-6338,-6310,-6233,-6125,-6021,-5934,-5850,-5749,-5623,-5477,-5325,-5188,-5076,-4981,-4893,-4811,-4736,-4656,
+-4560,-4439,-4295,-4141,-4001,-3898,-3816,-3704,-3529,-3335,-3193,-3111,-3019,-2864,-2676,-2525,-2413,-2282,-2101,-1917,-1794,
+-1743,-1721,-1698,-1676,-1661,-1642,-1609,-1567,-1514,-1434,-1318,-1190,-1087,-1015,-954,-898,-860,-830,-740,-518,-174,
+198,515,783,1059,1363,1645,1844,1954,2010,2045,2066,2075,2086,2110,2145,2182,2221,2269,2329,2396,2461,
+2520,2569,2612,2661,2729,2811,2893,2964,3030,3108,3198,3286,3354,3406,3464,3543,3635,3718,3785,3854,3935,
+4010,4056,4078,4106,4151,4200,4244,4293,4355,4420,4483,4546,4601,4614,4572,4524,4537,4619,4717,4797,4868,
+4929,4940,4884,4820,4825,4898,4963,4966,4926,4893,4889,4907,4942,4993,5050,5097,5123,5133,5138,5143,5149,
+5157,5165,5164,5146,5111,5075,5056,5057,5064,5070,5079,5087,5063,4971,4806,4593,4361,4134,3958,3890,3961,
+4132,4327,4489,4614,4738,4912,5169,5485,5794,6033,6196,6327,6460,6590,6687,6735,6750,6769,6815,6882,6941,
+6975,6992,7010,7029,7038,7031,7018,7010,7017,7037,7071,7116,7171,7227,7269,7291,7307,7342,7398,7448,7475,
+7500,7552,7628,7698,7747,7787,7827,7861,7872,7858,7827,7805,7828,7902,7965,7909,7690,7401,7193,7134,7134,
+7041,6783,6419,6081,5866,5799,5850,5978,6145,6319,6473,6584,6636,6626,6577,6538,6550,6611,6690,6752,6787,
+6795,6770,6691,6521,6243,5904,5629,5557,5744,6125,6565,6931,7132,7154,7059,6938,6826,6688,6497,6290,6132,
+6039,5977,5921,5877,5843,5799,5744,5709,5722,5772,5825,5867,5897,5910,5896,5858,5814,5768,5710,5632,5548,
+5481,5435,5393,5342,5289,5252,5227,5193,5135,5069,5013,4965,4915,4867,4831,4803,4768,4718,4660,4600,4542,
+4491,4450,4411,4360,4302,4253,4213,4166,4110,4057,4018,3982,3942,3903,3866,3824,3776,3736,3711,3689,3661,
+3636,3619,3594,3555,3516,3488,3451,3379,3288,3221,3189,3164,3126,3091,3075,3063,3032,2983,2939,2910,2886,
+2855,2817,2773,2728,2685,2643,2602,2561,2521,2482,2438,2392,2353,2329,2311,2284,2244,2196,2154,2124,2102,
+2079,2056,2042,2037,2020,1974,1921,1904,1931,1957,1940,1891,1857,1865,1893,1911,1910,1900,1890,1881,1871,
+1851,1819,1782,1755,1732,1704,1672,1654,1659,1672,1677,1677,1682,1691,1694,1691,1691,1697,1696,1682,1663,
+1644,1622,1593,1567,1554,1546,1524,1487,1456,1447,1447,1430,1395,1368,1366,1377,1374,1351,1324,1306,1297,
+1287,1272,1255,1236,1213,1187,1162,1143,1127,1109,1089,1076,1079,1092,1102,1098,1085,1074,1066,1053,1034,
+1018,1011,1010,1008,1002,997,989,975,959,955,965,970,949,902,856,834,835,833,815,786,757,
+730,697,660,627,606,591,572,548,525,506,486,460,435,419,411,402,385,367,357,356,354,
+345,335,328,324,315,302,291,283,272,250,218,182,148,115,83,53,28,8,-4,-5,2,
+8,-1,-26,-53,-72,-88,-112,-146,-183,-220,-257,-295,-327,-356,-388,-425,-461,-493,-520,-549,-581,
+-613,-643,-671,-702,-735,-768,-797,-819,-835,-850,-867,-885,-900,-913,-926,-940,-957,-977,-999,-1020,-1037,
+-1051,-1066,-1085,-1105,-1124,-1138,-1150,-1163,-1182,-1203,-1218,-1224,-1230,-1249,-1281,-1313,-1334,-1343,-1345,-1348,-1354,
+-1363,-1373,-1382,-1389,-1396,-1407,-1419,-1432,-1443,-1449,-1453,-1456,-1463,-1472,-1478,-1485,-1492,-1495,-1490,-1482,-1479,
+-1481,-1481,-1475,-1467,-1462,-1460,-1459,-1456,-1453,-1451,-1448,-1444,-1438,-1430,-1421,-1412,-1404,-1396,-1391,-1389,-1387,
+-1378,-1358,-1334,-1312,-1293,-1278,-1267,-1259,-1251,-1240,-1229,-1220,-1213,-1207,-1201,-1197,-1193,-1188,-1185,-1185,-1185,
+-1180,-1174,-1170,-1171,-1175,-1182,-1190,-1195,-1199,-1206,-1214,-1220,-1224,-1229,-1240,-1249,-1254,-1257,-1266,-1283,-1301,
+-1315,-1325,-1330,-1328,-1325,-1327,-1335,-1342,-1344,-1345,-1349,-1352,-1351,-1348,-1348,-1350,-1350,-1349,-1349,-1351,-1352,
+-1353,-1357,-1364,-1370,-1371,-1366,-1359,-1354,-1351,-1349,-1346,-1340,-1330,-1318,-1306,-1298,-1290,-1282,-1272,-1264,-1253,
+-1237,-1216,-1198,-1181,-1161,-1136,-1112,-1091,-1069,-1044,-1014,-983,-951,-919,-889,-857,-816,-771,-732,-700,-661,
+-611,-565,-531,-499,-453,-400,-356,-321,-280,-233,-191,-154,-113,-71,-41,-24,-14,-30,-108,-232,-299,
+-195,98,474,776,911,905,882,967,1195,1490,1746,1913,2000,2029,2002,1902,1722,1481,1241,1086,1064,
+1144,1254,1351,1441,1539,1639,1731,1817,1895,1956,1992,2016,2044,2079,2121,2176,2242,2303,2339,2353,2362,
+2374,2373,2345,2299,2264,2261,2280,2281,2234,2145,2042,1949,1864,1781,1702,1631,1564,1498,1430,1352,1261,
+1165,1079,1003,920,824,734,665,606,536,458,401,374,353,298,189,40,-105,-204,-243,-251,-270,
+-313,-365,-412,-458,-517,-588,-665,-744,-826,-910,-989,-1063,-1135,-1209,-1287,-1368,-1449,-1528,-1603,-1674,-1743,
+-1807,-1861,-1904,-1939,-1974,-2008,-2036,-2055,-2066,-2077,-2089,-2099,-2106,-2114,-2123,-2130,-2138,-2152,-2174,-2195,-2209,
+-2226,-2252,-2278,-2285,-2271,-2256,-2261,-2295,-2351,-2408,-2444,-2450,-2444,-2450,-2469,-2478,-2456,-2412,-2373,-2355,-2349,
+-2345,-2335,-2318,-2293,-2258,-2218,-2180,-2145,-2105,-2045,-1959,-1858,-1755,-1649,-1535,-1418,-1313,-1234,-1182,-1151,-1135,
+-1126,-1107,-1065,-1003,-939,-888,-851,-817,-773,-713,-639,-561,-486,-430,-407,-418,-441,-451,-466,-530,-656,
+-794,-878,-897,-893,-901,-914,-913,-902,-898,-903,-905,-899,-889,-882,-872,-856,-833,-808,-783,-761,-741,
+-724,-710,-702,-692,-673,-640,-602,-568,-541,-516,-492,-467,-441,-413,-385,-360,-334,-303,-266,-228,-190,
+-147,-103,-62,-26,12,56,102,145,190,243,298,346,388,430,478,530,585,646,708,764,813,
+863,918,970,1008,1035,1061,1092,1127,1164,1205,1245,1277,1298,1314,1334,1357,1384,1419,1459,1496,1518,
+1531,1544,1561,1579,1599,1621,1639,1642,1632,1625,1633,1645,1648,1642,1639,1641,1641,1636,1629,1623,1616,
+1607,1598,1588,1574,1557,1546,1544,1543,1539,1533,1533,1537,1542,1548,1560,1578,1597,1615,1628,1633,1630,
+1627,1631,1637,1637,1635,1641,1650,1645,1629,1622,1625,1602,1522,1439,1351,1299,1282,1255,1196,1133,1098,
+1080,1046,996,959,949,946,932,911,896,890,883,869,851,830,807,787,775,767,758,752,752,
+754,751,741,734,734,738,744,752,764,780,804,846,909,986,1068,1145,1214,1262,1279,1259,1212,
+1156,1109,1080,1059,1028,976,912,868,865,888,901,874,812,739,668,598,528,467,423,390,353,
+311,264,210,140,55,-33,-110,-176,-236,-301,-370,-432,-476,-504,-536,-594,-678,-767,-842,-898,-944,
+-987,-1023,-1043,-1043,-1038,-1049,-1080,-1118,-1154,-1193,-1247,-1318,-1400,-1483,-1550,-1585,-1586,-1574,-1561,-1532,-1461,
+-1348,-1218,-1094,-995,-950,-989,-1102,-1225,-1296,-1305,-1294,-1309,-1357,-1410,-1445,-1466,-1495,-1538,-1570,-1572,-1564,
+-1584,-1633,-1682,-1720,-1777,-1873,-1977,-2040,-2052,-2038,-2026,-2039,-2094,-2185,-2271,-2324,-2371,-2453,-2552,-2616,-2637,
+-2675,-2769,-2886,-2974,-3036,-3110,-3210,-3312,-3403,-3485,-3561,-3616,-3649,-3671,-3693,-3713,-3730,-3746,-3768,-3795,-3823,
+-3849,-3871,-3890,-3911,-3936,-3961,-3990,-4034,-4101,-4178,-4248,-4305,-4350,-4376,-4367,-4313,-4211,-4076,-3940,-3850,-3829,
+-3853,-3872,-3864,-3850,-3850,-3850,-3818,-3756,-3715,-3746,-3832,-3893,-3890,-3871,-3909,-3981,-4001,-3952,-3921,-3973,-4054,
+-4072,-4049,-4073,-4155,-4201,-4164,-4121,-4156,-4243,-4307,-4334,-4357,-4380,-4375,-4358,-4379,-4456,-4545,-4619,-4693,-4782,
+-4864,-4919,-4965,-5029,-5103,-5168,-5221,-5277,-5339,-5397,-5455,-5522,-5596,-5663,-5721,-5781,-5847,-5913,-5975,-6037,-6097,
+-6148,-6190,-6232,-6283,-6337,-6387,-6428,-6464,-6495,-6524,-6558,-6605,-6664,-6732,-6813,-6913,-7023,-7119,-7194,-7261,-7322,
+-7350,-7324,-7274,-7259,-7301,-7369,-7428,-7491,-7583,-7696,-7807,-7915,-8030,-8135,-8200,-8230,-8269,-8334,-8398,-8436,-8460,
+-8490,-8519,-8532,-8537,-8551,-8568,-8574,-8577,-8590,-8609,-8619,-8626,-8642,-8658,-8652,-8623,-8591,-8566,-8534,-8492,-8452,
+-8416,-8370,-8310,-8258,-8228,-8207,-8180,-8148,-8127,-8116,-8106,-8091,-8066,-8022,-7959,-7892,-7833,-7776,-7714,-7653,-7601,
+-7549,-7486,-7413,-7342,-7270,-7193,-7114,-7033,-6931,-6795,-6647,-6531,-6466,-6429,-6403,-6386,-6373,-6332,-6243,-6128,-6028,
+-5953,-5873,-5762,-5622,-5474,-5335,-5213,-5109,-5015,-4927,-4845,-4767,-4682,-4575,-4445,-4302,-4168,-4058,-3974,-3888,-3757,
+-3569,-3375,-3240,-3161,-3064,-2899,-2705,-2552,-2448,-2332,-2169,-2000,-1888,-1838,-1809,-1772,-1731,-1684,-1622,-1554,-1509,
+-1493,-1468,-1395,-1288,-1183,-1091,-1002,-935,-935,-989,-1002,-872,-601,-279,34,366,761,1193,1573,1842,2012,
+2124,2187,2196,2168,2146,2158,2192,2225,2260,2310,2377,2437,2469,2475,2477,2498,2552,2631,2716,2791,2855,
+2926,3013,3108,3191,3252,3298,3354,3437,3536,3623,3684,3739,3809,3888,3947,3977,4001,4039,4081,4115,4155,
+4214,4286,4351,4402,4431,4420,4370,4323,4342,4440,4576,4708,4820,4896,4909,4864,4815,4811,4831,4823,4782,
+4751,4761,4793,4825,4861,4912,4966,5002,5019,5029,5039,5041,5033,5025,5024,5022,5005,4973,4941,4932,4951,
+4980,4996,4988,4952,4884,4781,4656,4531,4414,4302,4211,4179,4235,4356,4490,4607,4724,4881,5105,5390,5695,
+5962,6156,6290,6405,6525,6637,6712,6743,6752,6770,6811,6869,6923,6961,6984,6994,6992,6979,6963,6957,6965,
+6984,7012,7051,7102,7162,7221,7262,7282,7298,7331,7383,7433,7467,7495,7531,7573,7609,7637,7665,7695,7723,
+7742,7746,7723,7682,7671,7736,7848,7904,7826,7651,7491,7406,7331,7143,6794,6360,5979,5746,5676,5733,5870,
+6047,6223,6371,6483,6562,6612,6644,6683,6753,6845,6928,6973,6976,6948,6902,6838,6733,6555,6302,6035,5854,
+5838,6006,6307,6645,6902,7006,6985,6929,6888,6835,6724,6569,6420,6303,6212,6137,6071,5991,5872,5732,5631,
+5605,5638,5695,5756,5819,5872,5896,5890,5867,5833,5781,5707,5619,5536,5470,5418,5368,5316,5271,5240,5213,
+5179,5137,5095,5052,5004,4951,4905,4864,4822,4772,4717,4659,4598,4541,4496,4456,4410,4355,4303,4255,4202,
+4144,4094,4056,4018,3974,3934,3901,3865,3822,3783,3759,3741,3719,3698,3684,3667,3634,3594,3559,3519,3458,
+3379,3305,3245,3197,3163,3152,3147,3120,3062,3002,2969,2964,2967,2961,2934,2878,2803,2729,2672,2627,2585,
+2547,2518,2489,2455,2417,2386,2359,2326,2282,2237,2198,2169,2144,2120,2098,2087,2082,2068,2033,1995,1987,
+2012,2030,1999,1933,1884,1883,1915,1944,1952,1944,1930,1920,1912,1896,1864,1819,1774,1735,1700,1671,1658,
+1662,1672,1677,1681,1685,1685,1675,1667,1671,1684,1689,1684,1677,1670,1654,1623,1591,1568,1543,1501,1455,
+1431,1435,1440,1420,1385,1369,1378,1387,1371,1338,1313,1303,1293,1274,1249,1226,1205,1182,1159,1140,1125,
+1108,1087,1064,1048,1045,1057,1074,1082,1077,1066,1056,1045,1026,1004,990,988,988,982,972,964,953,
+939,928,930,937,924,877,818,778,769,772,764,738,707,679,650,618,589,567,551,537,519,
+499,477,454,428,404,388,377,364,346,328,318,315,312,305,297,292,288,281,271,263,257,
+245,222,192,159,125,87,48,17,-2,-17,-30,-38,-36,-28,-30,-47,-69,-84,-95,-113,-144,
+-182,-221,-260,-296,-327,-355,-385,-420,-457,-490,-520,-552,-584,-613,-640,-667,-696,-727,-760,-792,-819,
+-840,-857,-876,-896,-914,-929,-942,-955,-972,-993,-1015,-1034,-1048,-1059,-1071,-1087,-1105,-1123,-1138,-1151,-1163,
+-1178,-1194,-1206,-1211,-1217,-1236,-1266,-1297,-1319,-1327,-1329,-1331,-1337,-1346,-1356,-1363,-1370,-1380,-1391,-1402,-1414,
+-1425,-1432,-1435,-1437,-1441,-1447,-1453,-1461,-1469,-1473,-1468,-1461,-1460,-1463,-1462,-1455,-1446,-1440,-1435,-1428,-1422,
+-1417,-1413,-1409,-1405,-1401,-1394,-1385,-1376,-1370,-1365,-1362,-1359,-1354,-1342,-1320,-1297,-1277,-1260,-1244,-1231,-1223,
+-1216,-1207,-1197,-1188,-1181,-1174,-1169,-1167,-1165,-1159,-1155,-1154,-1154,-1151,-1146,-1144,-1147,-1152,-1157,-1162,-1167,
+-1172,-1179,-1188,-1196,-1201,-1207,-1218,-1229,-1236,-1242,-1253,-1270,-1286,-1297,-1304,-1308,-1308,-1306,-1310,-1319,-1326,
+-1330,-1332,-1335,-1338,-1337,-1337,-1338,-1340,-1337,-1332,-1330,-1331,-1334,-1337,-1343,-1351,-1357,-1359,-1356,-1351,-1346,
+-1342,-1339,-1336,-1332,-1324,-1313,-1303,-1294,-1287,-1278,-1268,-1259,-1247,-1230,-1211,-1193,-1175,-1156,-1135,-1113,-1093,
+-1069,-1042,-1012,-982,-951,-920,-890,-858,-820,-776,-738,-706,-669,-622,-577,-541,-508,-462,-409,-365,-332,
+-297,-254,-210,-167,-122,-79,-50,-33,-20,-22,-76,-188,-287,-262,-55,281,610,811,867,871,948,
+1154,1444,1718,1901,1978,1982,1948,1870,1705,1436,1138,944,934,1060,1213,1329,1422,1518,1622,1729,1841,
+1947,2024,2061,2082,2114,2159,2204,2247,2290,2326,2344,2348,2352,2360,2361,2340,2303,2270,2257,2262,2256,
+2214,2137,2048,1964,1884,1802,1726,1664,1612,1559,1492,1406,1303,1196,1102,1022,943,862,794,748,703,
+633,544,473,434,404,347,248,122,2,-84,-132,-164,-204,-258,-312,-358,-404,-463,-538,-617,-696,
+-776,-860,-943,-1019,-1088,-1156,-1230,-1312,-1400,-1486,-1565,-1639,-1709,-1773,-1829,-1873,-1909,-1942,-1974,-2003,-2025,
+-2041,-2054,-2064,-2072,-2080,-2091,-2103,-2112,-2118,-2129,-2147,-2168,-2188,-2212,-2243,-2272,-2285,-2281,-2275,-2284,-2315,
+-2360,-2405,-2434,-2442,-2442,-2449,-2466,-2473,-2456,-2420,-2387,-2374,-2382,-2393,-2388,-2359,-2311,-2256,-2207,-2167,-2132,
+-2091,-2029,-1942,-1843,-1744,-1644,-1531,-1405,-1289,-1204,-1156,-1133,-1122,-1110,-1086,-1047,-1000,-955,-911,-863,-806,
+-742,-675,-608,-543,-481,-428,-399,-401,-417,-425,-442,-515,-659,-821,-923,-944,-932,-934,-952,-962,-956,
+-949,-948,-947,-941,-932,-921,-907,-888,-865,-840,-815,-791,-768,-748,-732,-724,-718,-704,-674,-635,-599,
+-571,-547,-524,-500,-472,-441,-408,-381,-357,-333,-304,-271,-232,-187,-139,-94,-53,-12,32,78,123,
+171,224,278,329,376,425,476,528,582,640,701,757,807,854,903,947,979,1000,1020,1049,1085,
+1125,1169,1211,1243,1261,1272,1285,1305,1333,1368,1409,1446,1471,1489,1509,1531,1549,1563,1577,1591,1599,
+1600,1604,1619,1635,1642,1640,1639,1643,1644,1638,1629,1619,1607,1594,1581,1570,1557,1542,1529,1522,1518,
+1514,1511,1516,1526,1537,1548,1561,1576,1589,1600,1609,1614,1613,1609,1609,1612,1613,1614,1617,1619,1610,
+1593,1581,1566,1522,1440,1369,1308,1268,1236,1191,1139,1101,1080,1059,1022,981,956,950,943,925,903,
+889,882,876,866,851,830,809,793,787,784,780,776,776,775,770,760,753,753,757,763,771,
+782,798,825,868,929,1000,1070,1138,1200,1247,1267,1256,1225,1189,1161,1144,1130,1111,1081,1043,1011,
+1000,1004,1002,969,904,824,743,665,592,529,481,446,413,377,337,290,232,163,87,7,-68,
+-138,-204,-269,-333,-388,-432,-474,-526,-587,-650,-705,-754,-806,-860,-904,-924,-914,-894,-894,-929,-989,
+-1059,-1137,-1227,-1322,-1410,-1480,-1527,-1547,-1543,-1527,-1508,-1476,-1419,-1340,-1245,-1133,-1008,-915,-926,-1058,-1237,
+-1349,-1344,-1277,-1245,-1297,-1394,-1463,-1478,-1475,-1494,-1529,-1549,-1554,-1569,-1601,-1626,-1645,-1697,-1801,-1914,-1976,
+-1979,-1965,-1973,-2015,-2088,-2182,-2273,-2347,-2417,-2496,-2562,-2587,-2593,-2643,-2751,-2867,-2946,-3005,-3089,-3199,-3306,
+-3394,-3473,-3542,-3587,-3611,-3636,-3669,-3698,-3711,-3718,-3732,-3758,-3789,-3819,-3842,-3861,-3882,-3908,-3942,-3986,-4042,
+-4106,-4158,-4184,-4189,-4193,-4213,-4243,-4252,-4205,-4090,-3942,-3827,-3786,-3801,-3819,-3813,-3798,-3798,-3799,-3769,-3704,
+-3655,-3673,-3753,-3827,-3845,-3834,-3848,-3889,-3909,-3894,-3900,-3958,-4020,-4024,-4000,-4022,-4090,-4128,-4101,-4064,-4081,
+-4141,-4201,-4260,-4325,-4370,-4362,-4328,-4329,-4380,-4449,-4518,-4600,-4696,-4779,-4834,-4881,-4944,-5015,-5077,-5134,-5195,
+-5256,-5310,-5368,-5442,-5520,-5586,-5641,-5700,-5767,-5832,-5891,-5950,-6008,-6059,-6104,-6152,-6208,-6262,-6302,-6334,-6367,
+-6405,-6444,-6484,-6530,-6587,-6659,-6750,-6855,-6961,-7051,-7123,-7186,-7237,-7250,-7214,-7165,-7159,-7212,-7289,-7355,-7422,
+-7517,-7632,-7744,-7848,-7958,-8060,-8124,-8153,-8187,-8249,-8313,-8351,-8373,-8401,-8430,-8445,-8449,-8461,-8479,-8492,-8501,
+-8517,-8537,-8551,-8563,-8584,-8604,-8601,-8573,-8540,-8511,-8475,-8425,-8374,-8329,-8284,-8236,-8203,-8189,-8175,-8141,-8093,
+-8057,-8041,-8035,-8028,-8009,-7970,-7910,-7845,-7788,-7736,-7679,-7622,-7570,-7518,-7454,-7383,-7313,-7245,-7170,-7093,-7018,
+-6929,-6810,-6676,-6569,-6510,-6479,-6454,-6433,-6409,-6354,-6252,-6129,-6032,-5964,-5885,-5766,-5620,-5477,-5351,-5241,-5145,
+-5056,-4970,-4881,-4788,-4690,-4579,-4453,-4327,-4219,-4135,-4054,-3939,-3765,-3557,-3375,-3267,-3203,-3103,-2928,-2728,-2578,
+-2483,-2382,-2239,-2092,-1994,-1943,-1899,-1843,-1781,-1712,-1619,-1518,-1458,-1454,-1465,-1439,-1375,-1303,-1225,-1128,-1038,
+-1014,-1064,-1108,-1060,-912,-713,-468,-121,349,871,1327,1663,1905,2089,2203,2225,2183,2145,2153,2197,2246,
+2297,2368,2454,2518,2528,2490,2449,2445,2490,2561,2630,2689,2753,2833,2920,2997,3060,3120,3184,3254,3332,
+3418,3500,3559,3599,3647,3716,3790,3849,3895,3940,3981,4010,4039,4084,4139,4181,4194,4178,4134,4070,4025,
+4050,4157,4306,4451,4574,4668,4718,4729,4732,4743,4737,4685,4619,4596,4630,4681,4714,4742,4785,4834,4867,
+4889,4914,4942,4951,4936,4915,4902,4897,4883,4857,4830,4826,4846,4868,4860,4813,4745,4681,4632,4596,4565,
+4528,4477,4425,4409,4451,4538,4640,4746,4882,5072,5317,5582,5832,6043,6214,6358,6483,6588,6665,6709,6729,
+6741,6760,6796,6847,6902,6945,6968,6971,6959,6944,6936,6942,6960,6985,7016,7054,7102,7156,7205,7238,7256,
+7274,7307,7355,7404,7445,7481,7511,7528,7534,7542,7562,7587,7612,7638,7659,7647,7594,7548,7581,7699,7823,
+7868,7835,7793,7774,7708,7486,7076,6577,6137,5853,5731,5737,5842,6020,6226,6414,6556,6653,6716,6757,6794,
+6847,6922,7003,7068,7096,7076,7014,6928,6834,6723,6575,6395,6218,6102,6100,6235,6460,6673,6782,6797,6798,
+6840,6888,6881,6803,6690,6575,6473,6389,6313,6209,6049,5860,5702,5619,5602,5628,5683,5754,5825,5880,5915,
+5928,5913,5870,5809,5734,5648,5559,5478,5410,5346,5285,5238,5214,5205,5199,5187,5163,5124,5071,5011,4948,
+4884,4821,4764,4710,4653,4593,4542,4501,4460,4410,4355,4296,4235,4176,4130,4095,4058,4012,3969,3934,3899,
+3860,3828,3809,3793,3769,3743,3728,3718,3700,3669,3631,3587,3534,3473,3404,3330,3267,3243,3260,3272,3228,
+3136,3060,3040,3063,3088,3089,3057,2986,2887,2793,2726,2679,2634,2592,2563,2542,2514,2476,2439,2406,2370,
+2327,2286,2253,2227,2203,2179,2159,2144,2132,2113,2084,2057,2054,2072,2077,2038,1967,1911,1899,1922,1952,
+1970,1974,1964,1948,1932,1914,1887,1845,1795,1748,1710,1685,1674,1672,1675,1680,1691,1698,1692,1671,1655,
+1657,1671,1680,1684,1690,1693,1679,1646,1612,1585,1550,1498,1449,1434,1447,1449,1416,1378,1371,1390,1393,
+1359,1314,1292,1292,1284,1257,1221,1193,1171,1153,1138,1127,1114,1093,1069,1048,1034,1030,1038,1055,1068,
+1064,1047,1033,1022,1007,986,971,967,967,959,948,940,934,922,906,900,906,901,866,807,753,
+726,721,718,700,671,640,613,588,562,538,518,504,490,472,448,421,395,374,358,343,326,
+307,291,283,279,276,272,266,262,256,249,242,235,227,210,185,155,128,104,85,73,69,
+69,59,29,-10,-41,-54,-60,-70,-86,-99,-110,-126,-153,-189,-229,-268,-303,-332,-360,-390,-425,
+-461,-495,-530,-565,-596,-622,-645,-670,-698,-725,-753,-782,-811,-835,-855,-876,-899,-922,-940,-954,-968,
+-985,-1005,-1026,-1044,-1057,-1068,-1080,-1093,-1108,-1124,-1139,-1153,-1165,-1176,-1186,-1194,-1200,-1210,-1229,-1257,-1284,
+-1302,-1310,-1313,-1315,-1322,-1331,-1339,-1345,-1353,-1364,-1375,-1387,-1398,-1408,-1414,-1414,-1414,-1415,-1419,-1423,-1428,
+-1436,-1440,-1438,-1434,-1435,-1438,-1437,-1432,-1425,-1420,-1412,-1402,-1393,-1387,-1380,-1373,-1367,-1363,-1357,-1345,-1335,
+-1330,-1328,-1326,-1323,-1315,-1301,-1279,-1259,-1243,-1229,-1213,-1197,-1186,-1178,-1169,-1160,-1154,-1147,-1140,-1136,-1136,
+-1136,-1130,-1123,-1121,-1123,-1122,-1120,-1120,-1123,-1127,-1130,-1134,-1140,-1145,-1152,-1162,-1173,-1180,-1186,-1194,-1205,
+-1215,-1224,-1237,-1255,-1272,-1284,-1292,-1297,-1298,-1298,-1302,-1311,-1319,-1324,-1327,-1328,-1328,-1326,-1326,-1329,-1330,
+-1327,-1321,-1318,-1319,-1322,-1326,-1334,-1342,-1347,-1347,-1344,-1341,-1338,-1335,-1332,-1327,-1321,-1315,-1308,-1300,-1291,
+-1281,-1270,-1258,-1247,-1234,-1218,-1201,-1184,-1167,-1148,-1128,-1108,-1087,-1061,-1032,-1003,-976,-949,-919,-888,-856,
+-820,-781,-742,-709,-674,-633,-590,-551,-514,-471,-424,-382,-346,-309,-268,-223,-177,-127,-81,-50,-36,
+-25,-20,-46,-129,-239,-282,-171,97,422,674,802,864,963,1154,1414,1672,1863,1960,1977,1952,1886,
+1729,1445,1102,861,829,964,1140,1272,1370,1466,1573,1691,1824,1957,2055,2103,2126,2162,2216,2269,2306,
+2328,2341,2350,2359,2369,2376,2372,2354,2329,2303,2280,2258,2231,2187,2127,2058,1985,1904,1818,1744,1696,
+1665,1626,1558,1459,1339,1218,1114,1032,965,906,862,832,795,730,645,571,519,470,399,303,201,
+109,33,-27,-81,-137,-194,-247,-294,-343,-406,-480,-560,-640,-723,-811,-897,-975,-1045,-1112,-1185,-1267,
+-1356,-1445,-1527,-1602,-1670,-1732,-1789,-1839,-1880,-1913,-1942,-1967,-1991,-2013,-2032,-2044,-2051,-2058,-2068,-2082,-2094,
+-2102,-2110,-2121,-2139,-2162,-2194,-2230,-2262,-2279,-2287,-2294,-2308,-2329,-2356,-2384,-2409,-2426,-2439,-2454,-2469,-2476,
+-2465,-2438,-2411,-2402,-2415,-2433,-2427,-2384,-2315,-2245,-2187,-2143,-2103,-2057,-1992,-1908,-1815,-1723,-1628,-1515,-1388,
+-1270,-1189,-1145,-1126,-1114,-1098,-1072,-1037,-1000,-961,-914,-851,-776,-699,-632,-578,-533,-489,-443,-408,-396,
+-397,-399,-420,-505,-670,-857,-979,-1004,-978,-962,-974,-992,-998,-992,-986,-981,-976,-967,-951,-930,-907,
+-887,-868,-844,-818,-791,-769,-753,-745,-740,-727,-699,-663,-629,-602,-579,-556,-532,-505,-473,-440,-409,
+-383,-360,-337,-308,-270,-224,-174,-125,-76,-27,22,71,117,164,214,265,315,365,414,465,515,
+568,625,685,741,789,833,874,911,939,958,975,999,1032,1072,1115,1159,1194,1216,1228,1241,1263,
+1297,1337,1378,1413,1439,1463,1490,1515,1533,1542,1551,1566,1583,1596,1607,1622,1635,1640,1637,1632,1630,
+1626,1616,1602,1587,1572,1557,1545,1540,1536,1530,1523,1517,1512,1510,1510,1516,1528,1543,1556,1567,1573,
+1575,1576,1580,1586,1590,1588,1585,1585,1588,1592,1592,1585,1570,1552,1531,1497,1440,1384,1337,1314,1294,
+1247,1176,1114,1085,1073,1050,1010,975,957,947,934,915,899,890,883,876,867,854,837,819,809,
+806,804,801,797,796,794,790,784,780,778,779,783,792,805,823,848,888,942,1004,1064,1119,
+1167,1204,1223,1225,1218,1213,1213,1213,1205,1189,1169,1147,1126,1111,1102,1088,1051,986,900,810,728,
+657,598,549,506,469,435,401,362,314,256,188,111,30,-45,-113,-177,-241,-302,-356,-407,-456,
+-504,-549,-594,-645,-701,-756,-799,-819,-811,-790,-785,-818,-892,-992,-1103,-1215,-1315,-1396,-1457,-1495,-1504,
+-1484,-1448,-1412,-1379,-1346,-1313,-1266,-1177,-1039,-911,-896,-1042,-1271,-1429,-1421,-1293,-1186,-1204,-1329,-1457,-1509,
+-1500,-1489,-1505,-1534,-1561,-1586,-1603,-1599,-1590,-1621,-1706,-1795,-1835,-1838,-1858,-1921,-2007,-2092,-2176,-2266,-2360,
+-2452,-2530,-2573,-2580,-2590,-2649,-2750,-2842,-2903,-2967,-3070,-3196,-3308,-3394,-3469,-3532,-3570,-3590,-3615,-3653,-3683,
+-3691,-3689,-3697,-3720,-3749,-3778,-3803,-3824,-3850,-3889,-3945,-4008,-4065,-4096,-4081,-4019,-3942,-3900,-3926,-4010,-4100,
+-4131,-4071,-3943,-3816,-3748,-3740,-3750,-3747,-3736,-3733,-3738,-3724,-3680,-3633,-3630,-3686,-3760,-3798,-3795,-3789,-3807,
+-3835,-3856,-3883,-3926,-3960,-3962,-3956,-3983,-4032,-4054,-4039,-4027,-4050,-4092,-4135,-4192,-4268,-4326,-4333,-4309,-4303,
+-4328,-4368,-4421,-4500,-4596,-4678,-4735,-4789,-4855,-4923,-4986,-5049,-5115,-5171,-5219,-5277,-5357,-5442,-5508,-5561,-5620,
+-5686,-5749,-5806,-5863,-5921,-5974,-6022,-6074,-6128,-6175,-6209,-6238,-6275,-6319,-6362,-6400,-6442,-6500,-6583,-6685,-6793,
+-6890,-6969,-7035,-7096,-7143,-7155,-7123,-7081,-7079,-7132,-7210,-7284,-7360,-7462,-7580,-7691,-7790,-7890,-7984,-8046,-8077,
+-8112,-8168,-8225,-8258,-8278,-8307,-8338,-8353,-8358,-8372,-8396,-8415,-8428,-8446,-8469,-8488,-8504,-8528,-8553,-8556,-8533,
+-8503,-8474,-8435,-8377,-8316,-8267,-8227,-8195,-8177,-8172,-8158,-8116,-8059,-8017,-8000,-7997,-7994,-7977,-7937,-7875,-7807,
+-7750,-7700,-7645,-7587,-7535,-7484,-7424,-7354,-7285,-7218,-7147,-7073,-7002,-6918,-6807,-6684,-6587,-6537,-6512,-6489,-6463,
+-6431,-6365,-6251,-6122,-6025,-5962,-5887,-5771,-5633,-5503,-5386,-5276,-5178,-5095,-5016,-4922,-4810,-4692,-4577,-4464,-4360,
+-4276,-4209,-4123,-3976,-3767,-3545,-3382,-3299,-3246,-3141,-2962,-2766,-2625,-2539,-2449,-2322,-2192,-2104,-2049,-1989,-1913,
+-1833,-1748,-1640,-1521,-1443,-1431,-1450,-1448,-1420,-1386,-1341,-1264,-1169,-1111,-1113,-1132,-1117,-1064,-981,-828,-534,
+-92,407,854,1210,1506,1763,1951,2034,2036,2028,2060,2126,2198,2272,2366,2474,2555,2574,2536,2488,2476,
+2506,2551,2591,2637,2712,2811,2894,2939,2971,3032,3124,3207,3264,3314,3376,3431,3457,3472,3513,3590,3677,
+3752,3810,3853,3881,3903,3930,3957,3965,3943,3901,3846,3788,3749,3768,3851,3965,4072,4167,4259,4346,4422,
+4491,4553,4581,4554,4504,4489,4526,4575,4600,4612,4637,4674,4708,4742,4790,4844,4877,4874,4850,4829,4817,
+4800,4770,4737,4718,4716,4706,4659,4582,4521,4514,4559,4615,4642,4628,4587,4548,4543,4586,4667,4764,4879,
+5034,5242,5483,5715,5911,6078,6236,6388,6518,6609,6663,6693,6714,6728,6741,6767,6813,6870,6915,6934,6932,
+6925,6926,6937,6953,6971,6992,7018,7049,7086,7127,7164,7190,7210,7237,7277,7326,7374,7419,7462,7493,7501,
+7493,7489,7500,7516,7532,7556,7582,7577,7524,7466,7475,7572,7700,7795,7860,7947,8058,8096,7934,7541,7019,
+6529,6173,5965,5882,5916,6058,6269,6484,6654,6765,6823,6839,6834,6837,6870,6941,7034,7112,7140,7100,7014,
+6916,6826,6741,6648,6540,6431,6360,6370,6464,6577,6643,6663,6700,6791,6892,6937,6904,6818,6713,6613,6532,
+6465,6383,6255,6091,5927,5794,5709,5677,5693,5730,5771,5824,5897,5965,5985,5949,5888,5821,5740,5641,5542,
+5459,5387,5317,5261,5234,5235,5246,5251,5243,5216,5170,5107,5035,4958,4882,4816,4763,4711,4656,4604,4560,
+4519,4470,4410,4345,4279,4219,4169,4130,4092,4051,4012,3975,3936,3897,3870,3856,3841,3815,3786,3767,3759,
+3748,3727,3692,3647,3600,3553,3497,3420,3344,3317,3345,3366,3316,3213,3139,3139,3178,3197,3175,3119,3034,
+2933,2840,2778,2737,2693,2646,2611,2589,2562,2525,2486,2453,2420,2383,2346,2317,2294,2271,2248,2224,2202,
+2178,2151,2121,2095,2084,2086,2080,2049,2000,1959,1940,1942,1953,1972,1991,1996,1980,1954,1927,1899,1865,
+1822,1780,1746,1723,1707,1694,1685,1687,1701,1713,1708,1683,1659,1652,1659,1669,1680,1696,1704,1689,1655,
+1621,1594,1558,1505,1461,1454,1467,1454,1402,1357,1360,1393,1397,1349,1288,1260,1264,1265,1242,1207,1175,
+1150,1131,1118,1108,1091,1063,1036,1022,1018,1018,1023,1036,1044,1034,1012,995,988,981,966,952,945,
+943,935,925,921,919,911,896,883,882,882,865,823,767,718,691,681,670,646,615,587,566,
+542,515,490,473,460,442,417,389,364,344,326,306,286,267,254,249,246,245,243,241,237,
+228,218,210,202,189,167,139,112,94,98,125,167,204,216,191,129,48,-25,-71,-90,-96,
+-105,-116,-128,-142,-165,-198,-237,-277,-311,-340,-369,-402,-437,-471,-506,-543,-581,-611,-632,-652,-677,
+-705,-731,-754,-777,-802,-825,-846,-869,-894,-920,-940,-957,-972,-989,-1008,-1026,-1044,-1059,-1072,-1085,-1099,
+-1112,-1126,-1141,-1155,-1166,-1173,-1179,-1185,-1194,-1208,-1228,-1250,-1270,-1284,-1292,-1297,-1301,-1308,-1315,-1321,-1326,
+-1333,-1345,-1357,-1369,-1380,-1390,-1394,-1393,-1391,-1391,-1392,-1393,-1395,-1400,-1405,-1406,-1404,-1405,-1407,-1406,-1403,
+-1401,-1399,-1391,-1379,-1369,-1362,-1353,-1343,-1335,-1330,-1323,-1310,-1296,-1288,-1286,-1283,-1278,-1269,-1254,-1234,-1217,
+-1204,-1191,-1177,-1162,-1151,-1141,-1132,-1123,-1118,-1114,-1107,-1103,-1104,-1105,-1099,-1091,-1088,-1090,-1092,-1091,-1092,
+-1094,-1097,-1100,-1105,-1113,-1120,-1126,-1136,-1149,-1160,-1167,-1173,-1182,-1192,-1203,-1218,-1240,-1263,-1281,-1293,-1299,
+-1302,-1304,-1308,-1315,-1321,-1325,-1327,-1327,-1324,-1321,-1321,-1323,-1323,-1319,-1314,-1312,-1314,-1317,-1321,-1329,-1335,
+-1338,-1335,-1332,-1329,-1329,-1328,-1324,-1318,-1311,-1305,-1301,-1294,-1283,-1271,-1260,-1248,-1236,-1221,-1206,-1191,-1175,
+-1157,-1138,-1118,-1097,-1074,-1047,-1019,-991,-968,-945,-918,-887,-854,-822,-787,-749,-713,-679,-644,-603,-561,
+-521,-484,-445,-403,-359,-315,-272,-230,-185,-137,-88,-51,-31,-22,-14,-22,-76,-180,-270,-241,-46,
+251,530,717,843,979,1159,1374,1602,1813,1961,2016,1992,1912,1756,1484,1142,873,803,917,1091,1230,
+1328,1417,1516,1632,1771,1925,2054,2128,2161,2192,2241,2295,2332,2348,2353,2365,2391,2419,2428,2413,2387,
+2368,2350,2323,2281,2231,2181,2130,2075,2011,1931,1843,1772,1734,1715,1684,1615,1508,1377,1245,1132,1051,
+998,961,934,911,879,826,757,689,627,556,467,367,275,196,125,55,-11,-72,-127,-178,-229,
+-286,-350,-422,-501,-587,-677,-767,-852,-931,-1003,-1073,-1145,-1222,-1306,-1393,-1478,-1556,-1626,-1687,-1743,-1795,
+-1842,-1879,-1908,-1932,-1957,-1981,-2002,-2016,-2025,-2030,-2038,-2051,-2066,-2079,-2087,-2094,-2107,-2134,-2174,-2215,-2247,
+-2268,-2286,-2303,-2318,-2328,-2336,-2350,-2371,-2395,-2417,-2437,-2454,-2463,-2457,-2435,-2409,-2399,-2412,-2430,-2422,-2372,
+-2295,-2218,-2156,-2103,-2052,-1997,-1933,-1856,-1770,-1680,-1583,-1471,-1353,-1252,-1185,-1148,-1124,-1103,-1082,-1058,-1029,
+-995,-954,-898,-824,-742,-667,-610,-573,-547,-518,-480,-442,-418,-408,-405,-425,-509,-674,-868,-1005,-1043,
+-1016,-987,-989,-1009,-1022,-1021,-1014,-1010,-1008,-1001,-980,-951,-925,-908,-894,-872,-842,-809,-785,-771,-764,
+-758,-742,-715,-683,-655,-632,-611,-588,-564,-538,-508,-476,-444,-416,-391,-368,-341,-306,-262,-213,-161,
+-106,-50,5,56,103,149,195,242,292,343,393,441,490,541,594,648,701,749,791,830,866,
+897,921,941,966,997,1034,1074,1115,1152,1179,1197,1216,1249,1295,1345,1387,1418,1442,1466,1492,1515,
+1529,1535,1541,1556,1575,1590,1600,1608,1614,1615,1608,1599,1591,1583,1572,1558,1544,1531,1518,1511,1511,
+1515,1518,1515,1510,1505,1503,1504,1510,1523,1540,1554,1560,1559,1554,1550,1552,1558,1564,1565,1561,1559,
+1563,1569,1567,1554,1537,1520,1493,1445,1384,1346,1319,1329,1327,1271,1177,1101,1071,1063,1040,1004,975,
+960,947,928,909,899,892,884,877,869,860,848,835,828,826,823,819,816,815,815,813,812,
+811,809,809,812,821,833,849,870,903,947,997,1047,1089,1121,1145,1164,1182,1204,1234,1266,1288,
+1289,1269,1242,1218,1198,1182,1166,1146,1110,1047,959,862,775,711,664,620,573,528,492,462,430,
+387,333,269,197,119,43,-27,-94,-160,-222,-277,-329,-378,-423,-465,-512,-567,-623,-671,-709,-735,
+-744,-735,-727,-752,-826,-940,-1068,-1182,-1273,-1346,-1406,-1445,-1444,-1397,-1331,-1278,-1254,-1250,-1254,-1245,-1188,
+-1070,-946,-926,-1070,-1314,-1500,-1502,-1341,-1162,-1119,-1242,-1432,-1560,-1582,-1544,-1515,-1524,-1563,-1609,-1629,-1608,
+-1569,-1559,-1592,-1630,-1648,-1676,-1760,-1898,-2032,-2125,-2191,-2267,-2360,-2454,-2526,-2563,-2579,-2607,-2671,-2752,-2816,
+-2864,-2935,-3052,-3188,-3303,-3390,-3462,-3518,-3551,-3570,-3596,-3630,-3655,-3661,-3660,-3667,-3683,-3704,-3726,-3750,-3778,
+-3814,-3865,-3930,-3998,-4044,-4036,-3957,-3824,-3703,-3662,-3726,-3857,-3986,-4049,-4020,-3916,-3793,-3706,-3672,-3671,-3673,
+-3668,-3670,-3686,-3701,-3690,-3652,-3626,-3651,-3718,-3771,-3772,-3741,-3730,-3758,-3805,-3845,-3869,-3880,-3886,-3904,-3936,
+-3965,-3970,-3969,-3993,-4041,-4083,-4105,-4137,-4196,-4258,-4290,-4295,-4295,-4299,-4307,-4336,-4401,-4486,-4564,-4629,-4695,
+-4766,-4832,-4895,-4964,-5034,-5086,-5126,-5183,-5268,-5357,-5425,-5478,-5538,-5604,-5667,-5725,-5784,-5844,-5898,-5947,-5995,
+-6043,-6084,-6117,-6153,-6194,-6236,-6272,-6306,-6351,-6419,-6513,-6622,-6726,-6812,-6880,-6938,-6992,-7035,-7050,-7035,-7015,
+-7024,-7076,-7154,-7234,-7322,-7426,-7541,-7645,-7734,-7822,-7904,-7964,-7999,-8034,-8082,-8127,-8156,-8179,-8211,-8243,-8259,
+-8267,-8288,-8319,-8342,-8356,-8376,-8403,-8424,-8441,-8465,-8492,-8499,-8480,-8450,-8420,-8379,-8320,-8258,-8213,-8184,-8163,
+-8152,-8146,-8128,-8085,-8031,-7993,-7978,-7974,-7969,-7950,-7907,-7841,-7770,-7712,-7664,-7610,-7551,-7497,-7448,-7392,-7325,
+-7257,-7192,-7124,-7054,-6982,-6896,-6784,-6665,-6579,-6541,-6524,-6501,-6472,-6433,-6359,-6237,-6104,-6010,-5956,-5891,-5785,
+-5660,-5543,-5431,-5316,-5210,-5131,-5061,-4962,-4830,-4692,-4572,-4472,-4386,-4317,-4258,-4172,-4018,-3804,-3589,-3436,-3356,
+-3292,-3177,-3003,-2823,-2697,-2620,-2538,-2423,-2305,-2220,-2159,-2088,-1996,-1900,-1803,-1688,-1563,-1471,-1437,-1437,-1429,
+-1407,-1388,-1368,-1322,-1254,-1196,-1172,-1162,-1145,-1122,-1087,-993,-782,-457,-87,256,562,860,1158,1419,1601,
+1711,1793,1887,1993,2093,2186,2288,2402,2498,2545,2543,2528,2532,2557,2581,2600,2644,2743,2869,2957,2978,
+2987,3051,3162,3246,3268,3272,3310,3363,3378,3357,3356,3410,3497,3574,3632,3675,3709,3733,3753,3767,3761,
+3738,3710,3688,3664,3644,3653,3700,3760,3804,3840,3895,3977,4074,4182,4299,4397,4438,4426,4415,4444,4496,
+4533,4547,4558,4578,4601,4633,4684,4750,4804,4821,4803,4773,4744,4709,4658,4597,4548,4515,4480,4421,4353,
+4328,4385,4500,4606,4654,4645,4614,4596,4612,4666,4753,4862,4993,5163,5376,5607,5814,5976,6107,6236,6369,
+6486,6570,6627,6673,6709,6724,6725,6737,6777,6833,6874,6884,6877,6878,6893,6913,6931,6947,6968,6995,7026,
+7058,7091,7121,7146,7170,7203,7248,7300,7349,7397,7444,7481,7493,7485,7476,7474,7473,7476,7492,7513,7508,
+7462,7412,7419,7493,7587,7666,7762,7934,8170,8343,8302,7995,7516,7026,6640,6384,6250,6230,6319,6482,6667,
+6831,6951,7014,7013,6964,6900,6859,6868,6926,7012,7083,7106,7075,7009,6933,6867,6819,6781,6733,6674,6631,
+6627,6645,6657,6668,6717,6811,6904,6942,6910,6828,6719,6602,6503,6440,6404,6369,6308,6204,6062,5923,5834,
+5795,5760,5712,5701,5777,5902,5982,5973,5911,5842,5770,5683,5595,5525,5465,5402,5342,5303,5285,5273,5259,
+5241,5215,5175,5126,5073,5013,4945,4880,4827,4782,4735,4686,4640,4595,4541,4476,4408,4343,4281,4221,4168,
+4125,4090,4059,4026,3989,3952,3924,3906,3888,3865,3842,3824,3808,3790,3766,3733,3690,3644,3608,3568,3501,
+3419,3373,3385,3403,3361,3275,3221,3235,3267,3255,3195,3119,3040,2953,2873,2818,2781,2741,2694,2655,2631,
+2608,2576,2543,2514,2485,2450,2413,2382,2358,2335,2310,2281,2250,2217,2185,2155,2127,2104,2085,2069,2054,
+2045,2042,2034,2014,1994,1994,2013,2030,2022,1992,1955,1921,1889,1855,1822,1794,1772,1752,1731,1711,1703,
+1710,1721,1719,1698,1673,1657,1653,1658,1672,1690,1698,1682,1648,1617,1590,1554,1505,1472,1471,1479,1451,
+1386,1338,1352,1401,1414,1360,1281,1237,1238,1248,1238,1211,1178,1144,1111,1086,1066,1041,1011,985,976,
+980,987,994,1001,1001,987,966,954,956,957,947,932,922,917,912,907,905,905,902,892,877,
+865,860,859,844,800,734,678,650,641,626,598,569,546,523,494,465,444,428,409,384,358,
+335,314,293,271,248,229,217,213,212,212,213,213,209,198,186,174,162,143,119,93,70,
+66,101,177,263,313,304,242,154,57,-31,-94,-122,-127,-127,-134,-146,-160,-178,-206,-244,-284,
+-318,-348,-380,-416,-452,-485,-518,-555,-592,-620,-639,-657,-683,-715,-742,-763,-780,-800,-821,-841,-864,
+-889,-914,-936,-955,-972,-989,-1006,-1022,-1037,-1052,-1067,-1082,-1096,-1110,-1124,-1140,-1156,-1167,-1173,-1176,-1181,
+-1192,-1208,-1226,-1241,-1253,-1264,-1274,-1281,-1288,-1293,-1299,-1303,-1307,-1313,-1324,-1336,-1348,-1359,-1369,-1373,-1372,
+-1369,-1369,-1369,-1366,-1365,-1369,-1374,-1375,-1373,-1372,-1372,-1372,-1371,-1372,-1373,-1367,-1355,-1344,-1337,-1329,-1318,
+-1310,-1306,-1298,-1283,-1266,-1254,-1247,-1239,-1229,-1218,-1204,-1188,-1173,-1161,-1150,-1137,-1127,-1119,-1111,-1100,-1090,
+-1085,-1082,-1077,-1072,-1072,-1073,-1067,-1059,-1055,-1057,-1059,-1059,-1061,-1065,-1068,-1070,-1077,-1087,-1096,-1101,-1108,
+-1122,-1136,-1147,-1154,-1162,-1171,-1182,-1199,-1225,-1254,-1279,-1294,-1302,-1307,-1312,-1317,-1320,-1321,-1321,-1322,-1323,
+-1320,-1317,-1317,-1319,-1317,-1312,-1307,-1307,-1309,-1311,-1313,-1318,-1322,-1323,-1321,-1318,-1316,-1315,-1316,-1314,-1308,
+-1299,-1294,-1290,-1283,-1271,-1258,-1250,-1241,-1229,-1214,-1198,-1183,-1167,-1150,-1131,-1109,-1085,-1060,-1035,-1009,-983,
+-960,-940,-917,-887,-854,-824,-794,-758,-720,-685,-653,-616,-572,-530,-495,-461,-421,-372,-322,-276,-233,
+-192,-150,-105,-60,-27,-9,-2,-4,-42,-138,-251,-277,-137,134,425,655,832,996,1157,1323,1520,
+1756,1965,2058,2016,1901,1747,1526,1238,984,889,968,1117,1239,1319,1389,1472,1575,1713,1883,2048,2159,
+2209,2229,2254,2292,2327,2347,2357,2380,2428,2478,2496,2471,2431,2405,2391,2368,2322,2263,2203,2148,2095,
+2038,1968,1890,1823,1781,1757,1724,1656,1551,1419,1282,1166,1086,1042,1017,996,975,949,911,859,798,
+729,648,550,447,353,274,200,127,56,-7,-63,-119,-179,-242,-306,-375,-454,-543,-636,-724,-805,
+-882,-955,-1027,-1096,-1167,-1243,-1326,-1413,-1498,-1574,-1637,-1691,-1740,-1787,-1829,-1863,-1891,-1917,-1940,-1957,-1970,
+-1980,-1987,-1994,-2005,-2022,-2040,-2051,-2058,-2073,-2110,-2165,-2218,-2255,-2278,-2296,-2313,-2321,-2319,-2314,-2319,-2333,
+-2351,-2369,-2386,-2401,-2410,-2406,-2386,-2360,-2347,-2354,-2367,-2358,-2312,-2243,-2176,-2116,-2054,-1987,-1919,-1854,-1784,
+-1703,-1610,-1507,-1399,-1301,-1226,-1180,-1147,-1115,-1085,-1060,-1037,-1010,-974,-926,-867,-797,-724,-662,-620,-595,
+-579,-557,-524,-489,-465,-456,-454,-468,-533,-669,-843,-986,-1049,-1044,-1022,-1017,-1029,-1040,-1042,-1040,-1042,
+-1046,-1041,-1016,-979,-947,-927,-914,-891,-857,-821,-797,-786,-781,-772,-753,-728,-703,-681,-663,-644,-622,
+-596,-568,-538,-508,-477,-448,-422,-400,-374,-341,-300,-254,-204,-149,-92,-36,15,63,109,153,199,
+251,305,358,408,457,508,559,609,660,709,755,795,834,871,903,931,959,993,1027,1059,1091,
+1124,1154,1179,1209,1256,1316,1375,1418,1447,1469,1488,1505,1519,1526,1528,1531,1540,1554,1564,1567,1567,
+1566,1564,1556,1546,1539,1533,1526,1516,1507,1498,1490,1486,1488,1495,1500,1497,1490,1484,1481,1483,1489,
+1503,1520,1533,1536,1531,1527,1526,1529,1533,1539,1544,1543,1540,1541,1544,1538,1521,1503,1488,1461,1406,
+1346,1305,1287,1307,1312,1254,1156,1079,1051,1042,1022,993,973,964,951,930,911,900,892,884,878,
+876,871,862,853,848,844,839,835,836,839,841,841,841,843,844,847,852,860,870,882,900,
+924,954,990,1028,1058,1078,1093,1113,1148,1197,1258,1321,1369,1382,1359,1315,1271,1241,1222,1204,1182,
+1148,1089,1001,896,802,742,711,683,642,593,552,525,497,457,403,341,273,200,126,53,-17,
+-85,-145,-197,-247,-296,-342,-389,-441,-497,-547,-587,-624,-664,-696,-705,-700,-715,-781,-895,-1022,-1129,
+-1209,-1277,-1341,-1379,-1358,-1280,-1191,-1139,-1136,-1158,-1181,-1190,-1167,-1100,-1025,-1018,-1139,-1350,-1528,-1552,-1403,
+-1192,-1085,-1169,-1385,-1585,-1660,-1618,-1545,-1519,-1556,-1619,-1657,-1638,-1579,-1522,-1493,-1486,-1503,-1575,-1720,-1903,
+-2055,-2144,-2197,-2255,-2332,-2412,-2477,-2523,-2562,-2610,-2675,-2744,-2801,-2857,-2937,-3052,-3176,-3283,-3368,-3437,-3486,
+-3514,-3534,-3562,-3595,-3618,-3627,-3632,-3640,-3647,-3654,-3667,-3692,-3726,-3767,-3816,-3872,-3929,-3963,-3936,-3823,-3663,
+-3551,-3567,-3703,-3874,-3989,-4012,-3960,-3862,-3752,-3663,-3616,-3609,-3619,-3627,-3637,-3661,-3692,-3699,-3664,-3619,-3626,
+-3695,-3765,-3768,-3709,-3661,-3677,-3738,-3789,-3806,-3803,-3811,-3839,-3872,-3885,-3878,-3885,-3934,-4007,-4059,-4074,-4085,
+-4124,-4185,-4240,-4273,-4282,-4272,-4257,-4265,-4309,-4375,-4445,-4518,-4598,-4676,-4740,-4800,-4870,-4940,-4991,-5031,-5091,
+-5179,-5269,-5336,-5391,-5452,-5520,-5587,-5649,-5713,-5774,-5826,-5871,-5915,-5955,-5993,-6032,-6077,-6120,-6152,-6179,-6217,
+-6278,-6361,-6458,-6557,-6648,-6727,-6792,-6844,-6884,-6912,-6928,-6936,-6945,-6972,-7026,-7101,-7188,-7281,-7385,-7491,-7588,
+-7671,-7750,-7823,-7877,-7913,-7945,-7984,-8023,-8052,-8082,-8119,-8151,-8168,-8182,-8211,-8245,-8267,-8282,-8305,-8334,-8354,
+-8366,-8385,-8408,-8415,-8393,-8359,-8327,-8289,-8237,-8185,-8150,-8129,-8113,-8099,-8087,-8067,-8031,-7990,-7961,-7946,-7936,
+-7923,-7901,-7857,-7791,-7721,-7665,-7619,-7569,-7511,-7458,-7411,-7357,-7294,-7229,-7166,-7101,-7034,-6960,-6869,-6752,-6634,
+-6559,-6533,-6524,-6503,-6471,-6428,-6346,-6216,-6081,-5997,-5959,-5906,-5806,-5685,-5575,-5470,-5355,-5246,-5166,-5092,-4984,
+-4836,-4686,-4569,-4480,-4402,-4336,-4279,-4201,-4067,-3879,-3684,-3531,-3426,-3330,-3203,-3041,-2885,-2775,-2704,-2628,-2526,
+-2418,-2333,-2266,-2187,-2087,-1980,-1872,-1753,-1628,-1526,-1467,-1431,-1392,-1350,-1321,-1303,-1278,-1242,-1215,-1206,-1203,
+-1192,-1168,-1125,-1037,-884,-680,-463,-256,-47,190,463,749,1012,1236,1427,1602,1764,1905,2023,2133,2246,
+2352,2428,2472,2500,2534,2567,2587,2602,2654,2773,2922,3021,3044,3053,3124,3242,3320,3318,3301,3336,3399,
+3415,3371,3331,3346,3400,3452,3497,3547,3597,3635,3661,3679,3690,3694,3705,3727,3744,3748,3758,3789,3819,
+3818,3796,3793,3829,3896,3993,4126,4266,4351,4356,4331,4347,4414,4485,4525,4540,4551,4565,4582,4615,4671,
+4731,4761,4747,4700,4637,4558,4460,4352,4265,4217,4194,4171,4152,4172,4255,4378,4488,4550,4575,4593,4622,
+4667,4733,4828,4952,5104,5284,5492,5709,5899,6038,6136,6224,6317,6410,6494,6571,6644,6699,6719,6715,6720,
+6754,6802,6832,6835,6829,6834,6851,6868,6884,6906,6940,6981,7019,7049,7074,7099,7122,7145,7175,7217,7268,
+7320,7372,7423,7465,7486,7487,7477,7464,7449,7442,7453,7469,7460,7418,7379,7390,7447,7503,7544,7629,7833,
+8143,8422,8501,8307,7917,7484,7129,6899,6787,6770,6824,6921,7041,7172,7295,7369,7364,7281,7152,7019,6917,
+6873,6893,6957,7025,7062,7054,7012,6964,6942,6950,6959,6938,6892,6843,6804,6776,6770,6806,6874,6934,6951,
+6917,6836,6708,6547,6391,6292,6277,6334,6402,6399,6294,6145,6035,5966,5862,5695,5560,5572,5718,5869,5926,
+5904,5855,5801,5741,5685,5643,5600,5541,5472,5410,5353,5292,5233,5186,5145,5105,5072,5052,5033,4997,4949,
+4902,4862,4818,4769,4723,4676,4619,4550,4480,4417,4357,4293,4229,4175,4137,4109,4082,4052,4021,3992,3965,
+3940,3919,3906,3891,3864,3830,3798,3767,3724,3676,3640,3616,3572,3498,3435,3420,3425,3396,3335,3299,3308,
+3316,3274,3198,3130,3073,3005,2925,2860,2820,2785,2743,2706,2683,2666,2642,2614,2589,2561,2524,2480,2442,
+2412,2387,2358,2325,2287,2250,2219,2194,2171,2144,2111,2084,2079,2105,2144,2159,2131,2078,2041,2038,2051,
+2050,2027,1992,1956,1921,1888,1858,1834,1812,1792,1770,1748,1728,1719,1718,1716,1705,1686,1667,1654,1651,
+1657,1669,1673,1658,1629,1597,1567,1530,1493,1475,1483,1488,1456,1391,1347,1364,1416,1433,1381,1296,1239,
+1229,1241,1240,1219,1184,1139,1089,1044,1012,992,974,958,947,942,944,951,957,952,935,920,919,
+929,933,923,905,891,885,886,887,886,882,881,880,869,845,827,832,843,822,756,677,629,
+615,606,584,556,532,507,478,447,421,399,376,352,331,310,288,265,241,217,194,178,172,
+172,173,174,176,172,162,150,136,119,97,73,51,34,38,89,188,284,315,263,170,83,
+12,-54,-113,-148,-156,-152,-155,-167,-180,-195,-219,-254,-292,-327,-360,-394,-430,-466,-497,-528,-561,
+-596,-624,-643,-662,-690,-724,-754,-776,-793,-810,-828,-848,-868,-889,-911,-932,-952,-971,-988,-1005,-1019,
+-1032,-1044,-1056,-1070,-1084,-1099,-1114,-1133,-1152,-1167,-1176,-1179,-1183,-1192,-1207,-1220,-1228,-1234,-1242,-1254,-1265,
+-1272,-1276,-1279,-1283,-1286,-1292,-1300,-1311,-1323,-1335,-1346,-1351,-1351,-1349,-1349,-1347,-1343,-1341,-1343,-1347,-1347,
+-1343,-1340,-1339,-1338,-1337,-1339,-1341,-1337,-1327,-1316,-1308,-1301,-1293,-1287,-1283,-1275,-1259,-1241,-1226,-1214,-1199,
+-1184,-1170,-1157,-1144,-1132,-1121,-1111,-1101,-1094,-1090,-1084,-1072,-1061,-1055,-1052,-1047,-1042,-1040,-1040,-1036,-1029,
+-1025,-1025,-1026,-1028,-1033,-1040,-1044,-1046,-1051,-1062,-1072,-1077,-1082,-1093,-1108,-1122,-1133,-1142,-1151,-1162,-1180,
+-1209,-1241,-1268,-1283,-1291,-1297,-1305,-1313,-1315,-1312,-1309,-1310,-1312,-1311,-1310,-1311,-1312,-1310,-1303,-1299,-1298,
+-1299,-1300,-1299,-1300,-1301,-1302,-1303,-1304,-1302,-1300,-1300,-1299,-1294,-1287,-1281,-1277,-1269,-1256,-1246,-1240,-1234,
+-1221,-1205,-1189,-1174,-1159,-1144,-1127,-1105,-1078,-1052,-1030,-1007,-981,-955,-935,-915,-887,-854,-825,-797,-763,
+-723,-687,-658,-625,-581,-537,-501,-469,-430,-383,-335,-288,-239,-195,-157,-119,-73,-26,3,12,10,
+-20,-107,-229,-288,-185,67,370,637,854,1034,1175,1295,1460,1705,1945,2046,1977,1830,1691,1540,1336,
+1129,1031,1078,1192,1282,1335,1387,1460,1558,1691,1867,2056,2203,2273,2283,2278,2289,2313,2336,2356,2392,
+2458,2529,2561,2536,2482,2442,2424,2407,2369,2310,2242,2174,2114,2063,2012,1953,1889,1835,1794,1751,1684,
+1583,1454,1320,1207,1133,1093,1067,1043,1020,1001,978,940,882,811,731,640,540,442,354,277,204,
+131,61,-3,-67,-133,-201,-268,-336,-413,-499,-588,-670,-748,-826,-902,-975,-1044,-1113,-1187,-1266,-1351,
+-1436,-1515,-1581,-1634,-1680,-1723,-1765,-1804,-1840,-1871,-1893,-1906,-1915,-1925,-1935,-1943,-1955,-1973,-1994,-2008,-2016,
+-2040,-2096,-2176,-2253,-2301,-2321,-2327,-2328,-2320,-2306,-2295,-2294,-2299,-2303,-2305,-2310,-2318,-2322,-2317,-2299,-2278,
+-2263,-2262,-2264,-2252,-2218,-2173,-2128,-2076,-2006,-1919,-1832,-1759,-1693,-1617,-1525,-1424,-1329,-1253,-1203,-1171,-1141,
+-1107,-1074,-1049,-1025,-991,-946,-895,-844,-793,-741,-694,-656,-631,-612,-589,-560,-531,-514,-511,-515,-527,
+-571,-671,-814,-954,-1043,-1075,-1074,-1068,-1066,-1065,-1062,-1063,-1072,-1081,-1077,-1051,-1010,-971,-943,-922,-896,
+-862,-828,-805,-796,-792,-782,-765,-746,-728,-712,-694,-673,-650,-623,-591,-559,-529,-501,-474,-449,-429,
+-405,-372,-331,-287,-243,-195,-143,-90,-37,13,62,107,153,205,263,320,375,430,485,538,589,
+642,696,747,790,831,871,908,939,970,1005,1037,1062,1085,1112,1143,1173,1211,1265,1331,1391,1433,
+1461,1483,1499,1507,1509,1508,1509,1510,1513,1519,1523,1522,1517,1512,1508,1501,1494,1490,1490,1488,1482,
+1476,1471,1468,1467,1470,1477,1481,1478,1469,1463,1462,1465,1472,1485,1501,1509,1507,1500,1499,1504,1508,
+1511,1516,1525,1528,1525,1520,1516,1503,1480,1459,1444,1417,1363,1305,1262,1238,1247,1243,1189,1106,1047,
+1028,1021,1000,975,963,960,950,931,914,902,893,887,888,891,890,881,874,869,866,860,857,
+861,867,869,870,870,873,878,886,897,906,916,928,945,962,978,997,1022,1047,1063,1075,1096,
+1141,1210,1294,1379,1445,1471,1446,1386,1323,1280,1258,1240,1216,1180,1124,1038,928,825,762,743,734,
+705,659,617,589,564,527,473,411,345,275,203,130,58,-8,-67,-119,-168,-217,-266,-316,-368,
+-420,-465,-502,-542,-594,-642,-667,-672,-690,-752,-858,-976,-1072,-1146,-1213,-1274,-1298,-1252,-1149,-1054,-1021,
+-1048,-1090,-1121,-1140,-1152,-1149,-1138,-1153,-1234,-1376,-1513,-1553,-1452,-1260,-1110,-1124,-1305,-1525,-1645,-1627,-1548,
+-1507,-1537,-1605,-1654,-1648,-1589,-1509,-1446,-1429,-1478,-1594,-1757,-1920,-2039,-2110,-2162,-2219,-2285,-2350,-2414,-2475,
+-2533,-2589,-2652,-2724,-2803,-2889,-2982,-3079,-3173,-3260,-3337,-3400,-3440,-3462,-3485,-3518,-3552,-3577,-3591,-3602,-3607,
+-3606,-3603,-3612,-3636,-3672,-3711,-3752,-3797,-3849,-3885,-3854,-3721,-3539,-3439,-3517,-3734,-3947,-4036,-3994,-3888,-3779,
+-3688,-3619,-3580,-3577,-3598,-3621,-3636,-3650,-3662,-3653,-3607,-3558,-3569,-3657,-3752,-3767,-3695,-3620,-3617,-3677,-3735,
+-3750,-3741,-3744,-3771,-3802,-3810,-3800,-3806,-3854,-3931,-3992,-4015,-4025,-4058,-4119,-4187,-4233,-4246,-4231,-4209,-4206,
+-4230,-4271,-4325,-4400,-4494,-4582,-4647,-4702,-4766,-4833,-4887,-4935,-5004,-5095,-5181,-5247,-5303,-5366,-5436,-5505,-5573,
+-5639,-5698,-5746,-5789,-5829,-5866,-5902,-5946,-5998,-6043,-6072,-6100,-6150,-6229,-6319,-6404,-6482,-6557,-6631,-6699,-6748,
+-6773,-6783,-6797,-6825,-6863,-6905,-6959,-7031,-7118,-7214,-7313,-7414,-7509,-7596,-7673,-7740,-7788,-7819,-7847,-7881,-7918,
+-7953,-7990,-8030,-8063,-8084,-8106,-8138,-8171,-8191,-8206,-8230,-8259,-8274,-8278,-8288,-8304,-8304,-8276,-8238,-8205,-8174,
+-8135,-8097,-8070,-8051,-8029,-8007,-7990,-7974,-7953,-7928,-7908,-7891,-7871,-7849,-7822,-7780,-7719,-7655,-7603,-7562,-7518,
+-7466,-7417,-7370,-7317,-7255,-7193,-7133,-7073,-7009,-6936,-6840,-6718,-6602,-6536,-6523,-6524,-6507,-6473,-6424,-6333,-6195,
+-6061,-5990,-5968,-5924,-5822,-5695,-5587,-5494,-5392,-5287,-5195,-5104,-4980,-4828,-4686,-4581,-4498,-4416,-4340,-4280,-4216,
+-4113,-3961,-3786,-3625,-3486,-3357,-3219,-3074,-2942,-2845,-2776,-2706,-2615,-2515,-2428,-2353,-2269,-2168,-2055,-1938,-1815,
+-1692,-1588,-1508,-1437,-1361,-1291,-1243,-1213,-1185,-1159,-1151,-1167,-1196,-1217,-1209,-1158,-1056,-919,-777,-652,-540,
+-421,-273,-83,153,419,683,926,1150,1360,1550,1711,1849,1981,2110,2221,2306,2371,2427,2471,2498,2522,
+2584,2707,2857,2963,3003,3032,3116,3237,3316,3325,3327,3387,3475,3508,3469,3418,3407,3427,3456,3505,3580,
+3657,3703,3722,3740,3768,3798,3831,3870,3904,3927,3953,3995,4028,4017,3965,3918,3908,3933,3989,4084,4197,
+4261,4240,4183,4180,4256,4357,4426,4461,4492,4525,4550,4575,4618,4674,4708,4689,4614,4499,4354,4186,4020,
+3899,3853,3872,3922,3975,4035,4114,4210,4307,4400,4492,4586,4673,4747,4824,4927,5066,5230,5409,5598,5790,
+5958,6078,6153,6209,6271,6345,6426,6514,6601,6668,6698,6702,6711,6739,6772,6791,6795,6798,6808,6821,6835,
+6857,6895,6948,7001,7040,7061,7073,7085,7100,7119,7144,7180,7228,7283,7340,7395,7441,7470,7480,7475,7458,
+7438,7429,7440,7456,7450,7413,7377,7377,7407,7427,7434,7499,7704,8038,8372,8539,8454,8171,7820,7522,7339,
+7271,7287,7338,7397,7471,7574,7690,7765,7752,7654,7499,7317,7134,6991,6919,6920,6958,6995,7013,7015,7018,
+7038,7075,7105,7102,7064,7010,6956,6910,6884,6888,6917,6950,6966,6952,6889,6755,6554,6336,6173,6130,6218,
+6363,6443,6389,6262,6174,6130,6020,5779,5516,5406,5499,5682,5828,5897,5913,5898,5866,5837,5811,5766,5688,
+5596,5508,5420,5325,5238,5172,5120,5072,5040,5037,5049,5047,5022,4985,4942,4889,4831,4784,4747,4700,4633,
+4558,4492,4435,4377,4314,4254,4204,4165,4134,4110,4086,4060,4026,3992,3969,3958,3943,3911,3869,3836,3812,
+3774,3719,3675,3656,3634,3580,3514,3478,3469,3446,3400,3366,3359,3345,3295,3232,3192,3161,3099,3004,2920,
+2872,2843,2809,2772,2746,2729,2709,2684,2660,2632,2593,2546,2501,2464,2433,2400,2362,2323,2285,2256,2237,
+2224,2205,2173,2139,2132,2169,2229,2263,2235,2162,2091,2056,2050,2051,2042,2023,1995,1961,1925,1894,1866,
+1840,1817,1797,1776,1751,1727,1710,1703,1697,1688,1674,1658,1646,1640,1638,1635,1622,1597,1563,1525,1492,
+1474,1478,1496,1502,1474,1421,1380,1383,1413,1423,1381,1309,1253,1235,1238,1233,1209,1171,1121,1061,1006,
+978,985,1006,1009,983,943,919,918,924,915,894,882,888,900,901,888,869,855,849,853,860,
+857,847,843,850,847,819,787,788,816,821,768,686,624,599,588,570,546,523,497,466,434,
+405,377,349,325,307,288,265,239,215,189,161,139,130,128,129,131,133,130,121,110,97,
+80,56,34,16,1,2,47,139,227,245,181,94,36,2,-42,-106,-158,-178,-178,-179,-189,
+-201,-216,-238,-268,-304,-339,-373,-408,-443,-476,-506,-534,-564,-596,-625,-649,-672,-701,-736,-767,-791,
+-808,-825,-842,-861,-878,-895,-911,-929,-948,-968,-986,-1003,-1017,-1028,-1037,-1046,-1057,-1069,-1082,-1098,-1119,
+-1143,-1165,-1177,-1183,-1186,-1191,-1201,-1209,-1212,-1214,-1219,-1231,-1242,-1248,-1250,-1252,-1256,-1261,-1265,-1273,-1283,
+-1294,-1306,-1318,-1326,-1328,-1328,-1328,-1326,-1323,-1321,-1322,-1324,-1321,-1315,-1311,-1310,-1307,-1303,-1303,-1305,-1303,
+-1295,-1285,-1276,-1269,-1263,-1259,-1255,-1245,-1228,-1210,-1195,-1181,-1164,-1145,-1128,-1115,-1104,-1094,-1086,-1078,-1069,
+-1063,-1060,-1055,-1044,-1032,-1024,-1021,-1017,-1011,-1009,-1009,-1007,-1002,-998,-997,-997,-1000,-1008,-1017,-1023,-1025,
+-1030,-1040,-1051,-1057,-1062,-1070,-1082,-1097,-1110,-1120,-1129,-1142,-1162,-1191,-1222,-1248,-1261,-1267,-1273,-1282,-1290,
+-1294,-1293,-1293,-1296,-1299,-1299,-1297,-1299,-1302,-1301,-1296,-1291,-1290,-1291,-1291,-1289,-1286,-1283,-1283,-1287,-1291,
+-1290,-1285,-1282,-1281,-1277,-1271,-1266,-1262,-1255,-1243,-1234,-1229,-1222,-1208,-1191,-1176,-1162,-1148,-1135,-1123,-1103,
+-1075,-1047,-1027,-1008,-982,-954,-931,-911,-885,-852,-821,-794,-761,-721,-684,-655,-625,-585,-542,-506,-472,
+-434,-392,-352,-306,-250,-196,-156,-123,-79,-27,9,22,22,3,-68,-189,-273,-213,9,315,616,
+875,1078,1213,1307,1440,1655,1871,1953,1869,1724,1616,1526,1391,1236,1152,1179,1260,1324,1367,1422,1501,
+1594,1711,1874,2067,2237,2331,2346,2325,2311,2320,2341,2368,2413,2486,2567,2612,2597,2543,2493,2466,2447,
+2413,2356,2282,2204,2138,2093,2059,2014,1954,1889,1833,1781,1712,1610,1483,1354,1252,1188,1149,1117,1082,
+1056,1044,1035,1006,950,880,808,729,636,533,437,356,283,208,130,56,-10,-77,-147,-219,-293,
+-371,-453,-533,-609,-686,-769,-850,-927,-999,-1074,-1153,-1230,-1304,-1378,-1451,-1517,-1573,-1621,-1664,-1703,-1742,
+-1782,-1818,-1844,-1859,-1867,-1876,-1887,-1896,-1909,-1929,-1952,-1968,-1979,-2010,-2083,-2190,-2292,-2353,-2367,-2353,-2329,
+-2304,-2281,-2268,-2264,-2260,-2251,-2240,-2234,-2233,-2230,-2221,-2207,-2192,-2178,-2168,-2159,-2146,-2126,-2104,-2077,-2031,
+-1951,-1844,-1737,-1652,-1588,-1524,-1449,-1367,-1294,-1239,-1203,-1175,-1146,-1115,-1086,-1062,-1034,-992,-940,-890,-853,
+-824,-792,-751,-706,-667,-638,-615,-591,-568,-553,-548,-553,-570,-613,-698,-822,-953,-1056,-1111,-1127,-1122,
+-1108,-1092,-1080,-1078,-1085,-1093,-1089,-1067,-1032,-991,-955,-924,-894,-864,-836,-815,-805,-798,-788,-775,-763,
+-753,-739,-717,-692,-667,-639,-606,-572,-543,-518,-492,-468,-447,-424,-390,-347,-303,-264,-225,-182,-132,
+-76,-17,38,87,135,187,243,301,358,418,479,535,588,644,701,753,796,838,879,918,950,
+982,1016,1047,1069,1088,1113,1144,1177,1215,1266,1325,1376,1413,1443,1468,1485,1487,1480,1477,1479,1481,
+1481,1483,1484,1481,1474,1467,1463,1459,1457,1457,1458,1457,1452,1447,1446,1447,1451,1456,1464,1469,1466,
+1458,1454,1455,1460,1468,1479,1493,1497,1490,1478,1476,1481,1485,1485,1491,1502,1510,1506,1497,1484,1464,
+1435,1408,1389,1364,1316,1262,1224,1189,1175,1155,1106,1049,1017,1013,1008,985,960,949,946,937,923,
+911,904,899,898,904,913,912,903,896,893,891,887,886,891,897,900,902,904,907,913,924,
+939,953,966,981,999,1013,1018,1023,1040,1067,1089,1103,1125,1174,1254,1348,1438,1506,1534,1510,1447,
+1380,1336,1314,1296,1266,1225,1170,1089,981,875,808,789,786,765,722,680,652,627,590,539,479,
+414,344,271,200,133,69,10,-42,-93,-144,-194,-244,-294,-343,-389,-433,-480,-533,-583,-615,-638,
+-672,-739,-835,-938,-1024,-1091,-1149,-1192,-1193,-1129,-1022,-939,-929,-980,-1041,-1086,-1125,-1173,-1221,-1256,-1285,
+-1328,-1397,-1473,-1511,-1460,-1315,-1158,-1105,-1207,-1384,-1509,-1524,-1481,-1460,-1492,-1548,-1589,-1591,-1550,-1484,-1438,
+-1458,-1559,-1706,-1843,-1936,-1994,-2048,-2115,-2188,-2253,-2313,-2377,-2445,-2507,-2558,-2614,-2696,-2809,-2935,-3046,-3130,
+-3193,-3254,-3318,-3371,-3400,-3415,-3437,-3473,-3509,-3533,-3548,-3556,-3559,-3555,-3555,-3564,-3584,-3613,-3647,-3687,-3738,
+-3802,-3854,-3825,-3670,-3450,-3326,-3420,-3681,-3930,-4017,-3936,-3788,-3669,-3602,-3568,-3552,-3554,-3578,-3609,-3627,-3618,
+-3588,-3540,-3482,-3447,-3481,-3589,-3706,-3744,-3688,-3613,-3595,-3634,-3678,-3690,-3681,-3683,-3707,-3739,-3754,-3751,-3751,
+-3784,-3845,-3905,-3940,-3961,-3999,-4061,-4129,-4175,-4188,-4178,-4165,-4162,-4168,-4179,-4209,-4279,-4384,-4488,-4563,-4617,
+-4671,-4729,-4785,-4845,-4922,-5012,-5095,-5160,-5220,-5286,-5355,-5423,-5491,-5557,-5613,-5656,-5696,-5737,-5774,-5809,-5853,
+-5909,-5960,-5998,-6038,-6100,-6183,-6264,-6330,-6389,-6454,-6527,-6595,-6639,-6654,-6656,-6673,-6716,-6772,-6824,-6877,-6944,
+-7028,-7120,-7215,-7313,-7413,-7508,-7590,-7653,-7695,-7722,-7748,-7780,-7817,-7856,-7897,-7938,-7972,-8000,-8029,-8064,-8093,
+-8110,-8126,-8151,-8176,-8183,-8180,-8183,-8193,-8185,-8152,-8113,-8084,-8060,-8032,-8003,-7978,-7953,-7921,-7891,-7876,-7870,
+-7864,-7853,-7838,-7818,-7792,-7762,-7729,-7687,-7633,-7576,-7531,-7494,-7455,-7410,-7365,-7318,-7262,-7201,-7142,-7088,-7031,
+-6972,-6902,-6806,-6683,-6570,-6512,-6511,-6522,-6510,-6477,-6421,-6321,-6175,-6042,-5980,-5967,-5926,-5820,-5691,-5589,-5511,
+-5425,-5322,-5213,-5098,-4965,-4828,-4712,-4620,-4527,-4423,-4330,-4270,-4223,-4148,-4023,-3861,-3691,-3531,-3384,-3245,-3114,
+-3000,-2914,-2848,-2782,-2697,-2601,-2507,-2421,-2331,-2227,-2111,-1988,-1862,-1744,-1644,-1556,-1461,-1358,-1269,-1209,-1167,
+-1123,-1080,-1057,-1069,-1113,-1166,-1195,-1168,-1077,-947,-819,-715,-630,-553,-474,-370,-221,-29,177,377,579,
+794,1012,1210,1386,1557,1729,1886,2010,2098,2164,2213,2253,2299,2377,2497,2633,2737,2796,2851,2947,3067,
+3153,3191,3234,3328,3438,3494,3485,3461,3459,3476,3513,3593,3711,3808,3834,3813,3801,3822,3856,3886,3919,
+3959,3999,4047,4107,4151,4143,4085,4027,4003,4005,4017,4042,4075,4074,4012,3932,3918,3992,4101,4187,4254,
+4331,4418,4486,4529,4571,4619,4646,4612,4508,4344,4136,3907,3696,3555,3521,3586,3704,3830,3934,4020,4103,
+4205,4335,4487,4638,4764,4863,4958,5075,5221,5379,5532,5684,5837,5977,6081,6147,6194,6247,6310,6382,6464,
+6549,6620,6663,6684,6700,6719,6734,6741,6749,6763,6779,6794,6813,6849,6902,6961,7011,7044,7058,7060,7061,
+7070,7089,7115,7149,7194,7248,7307,7366,7416,7451,7468,7468,7455,7437,7428,7439,7461,7468,7446,7408,7381,
+7365,7341,7319,7364,7550,7873,8221,8446,8462,8293,8033,7782,7611,7548,7568,7622,7677,7742,7836,7936,7986,
+7955,7863,7742,7598,7433,7275,7158,7086,7032,6986,6967,6994,7061,7134,7184,7195,7171,7130,7089,7050,7006,
+6963,6934,6924,6932,6949,6957,6923,6813,6626,6398,6199,6104,6149,6283,6376,6341,6233,6177,6193,6153,5943,
+5630,5402,5373,5507,5698,5865,5970,6005,5995,5976,5950,5888,5782,5664,5565,5479,5394,5318,5265,5220,5167,
+5120,5105,5115,5122,5108,5075,5024,4952,4877,4828,4807,4783,4729,4650,4572,4510,4458,4406,4348,4286,4229,
+4186,4158,4137,4113,4081,4044,4015,3997,3981,3952,3917,3891,3875,3844,3788,3733,3705,3688,3647,3586,3540,
+3518,3493,3451,3413,3394,3372,3330,3289,3271,3254,3194,3090,2995,2943,2918,2885,2842,2806,2782,2761,2737,
+2713,2687,2652,2608,2564,2524,2487,2447,2406,2368,2334,2307,2291,2284,2277,2254,2221,2205,2229,2281,2314,
+2289,2217,2139,2088,2066,2059,2056,2049,2031,2003,1969,1936,1903,1867,1834,1807,1785,1759,1730,1705,1691,
+1685,1681,1671,1656,1639,1622,1608,1596,1583,1561,1524,1483,1458,1462,1487,1511,1514,1490,1449,1410,1385,
+1378,1370,1345,1302,1262,1241,1231,1211,1176,1132,1084,1027,980,974,1027,1101,1129,1079,988,920,903,
+906,894,867,852,859,869,864,849,834,823,818,821,828,823,806,798,809,816,793,757,749,
+778,797,765,694,628,591,569,550,531,513,488,457,425,397,366,333,308,289,267,239,211,
+187,161,131,106,94,90,88,89,91,88,78,66,56,42,22,2,-12,-29,-41,-19,53,
+142,187,170,131,104,76,13,-80,-161,-200,-207,-206,-212,-222,-235,-256,-284,-317,-351,-386,-420,
+-452,-483,-512,-539,-567,-597,-627,-657,-685,-716,-748,-779,-802,-820,-836,-853,-871,-887,-900,-912,-926,
+-944,-963,-982,-999,-1013,-1024,-1033,-1040,-1049,-1058,-1067,-1080,-1101,-1128,-1154,-1171,-1179,-1181,-1183,-1187,-1192,
+-1193,-1193,-1196,-1204,-1213,-1215,-1215,-1216,-1221,-1227,-1232,-1239,-1249,-1261,-1272,-1284,-1293,-1299,-1302,-1305,-1306,
+-1306,-1304,-1303,-1302,-1298,-1292,-1289,-1286,-1280,-1272,-1268,-1268,-1267,-1262,-1253,-1244,-1236,-1229,-1223,-1217,-1205,
+-1188,-1170,-1156,-1143,-1127,-1109,-1092,-1077,-1065,-1055,-1050,-1044,-1036,-1028,-1024,-1020,-1012,-1001,-992,-988,-984,
+-980,-978,-979,-978,-975,-972,-971,-972,-975,-981,-990,-997,-1002,-1008,-1018,-1030,-1039,-1046,-1053,-1064,-1076,
+-1089,-1099,-1110,-1125,-1147,-1175,-1203,-1226,-1239,-1245,-1249,-1254,-1260,-1266,-1270,-1277,-1285,-1289,-1287,-1283,-1283,
+-1287,-1289,-1288,-1286,-1286,-1287,-1287,-1286,-1281,-1274,-1271,-1274,-1278,-1276,-1269,-1263,-1261,-1258,-1253,-1248,-1245,
+-1240,-1231,-1225,-1219,-1209,-1191,-1174,-1162,-1150,-1135,-1123,-1113,-1097,-1071,-1042,-1021,-1004,-981,-951,-926,-906,
+-880,-848,-816,-788,-756,-718,-682,-652,-622,-585,-547,-512,-477,-436,-396,-361,-320,-263,-202,-156,-122,
+-79,-28,9,22,27,24,-22,-129,-234,-232,-69,213,535,836,1075,1231,1327,1435,1595,1753,1814,
+1761,1672,1610,1552,1455,1340,1277,1289,1337,1383,1435,1511,1596,1670,1751,1880,2060,2242,2365,2407,2392,
+2367,2360,2376,2406,2450,2513,2586,2636,2638,2601,2557,2525,2498,2457,2396,2320,2243,2181,2141,2112,2070,
+2009,1941,1882,1830,1760,1655,1528,1406,1316,1260,1218,1173,1126,1096,1091,1092,1071,1018,950,883,813,
+724,617,514,428,354,275,193,118,53,-10,-83,-165,-249,-331,-410,-484,-554,-632,-717,-802,-878,
+-950,-1026,-1106,-1183,-1253,-1319,-1384,-1447,-1504,-1555,-1602,-1642,-1679,-1716,-1753,-1782,-1799,-1809,-1819,-1829,-1839,
+-1852,-1874,-1901,-1922,-1939,-1976,-2057,-2177,-2293,-2361,-2369,-2338,-2296,-2261,-2237,-2225,-2218,-2209,-2194,-2179,-2170,
+-2165,-2155,-2139,-2123,-2109,-2097,-2083,-2069,-2058,-2045,-2029,-2003,-1953,-1866,-1749,-1632,-1545,-1491,-1452,-1406,-1355,
+-1306,-1266,-1233,-1204,-1174,-1144,-1114,-1085,-1054,-1015,-968,-924,-894,-876,-852,-810,-753,-699,-662,-642,-629,
+-612,-590,-572,-573,-601,-665,-763,-882,-998,-1086,-1136,-1152,-1147,-1130,-1110,-1092,-1083,-1082,-1081,-1075,-1060,
+-1037,-1006,-969,-933,-903,-877,-852,-831,-816,-805,-794,-783,-775,-769,-753,-726,-696,-669,-642,-611,-579,
+-553,-529,-503,-475,-450,-423,-387,-342,-299,-263,-230,-192,-145,-88,-24,40,98,150,201,253,306,
+362,423,486,542,593,644,698,747,788,829,873,914,948,980,1013,1044,1069,1090,1118,1150,1182,
+1215,1256,1302,1344,1377,1410,1442,1459,1457,1448,1445,1450,1452,1451,1449,1448,1444,1435,1427,1426,1430,
+1434,1436,1436,1431,1425,1422,1426,1433,1441,1449,1456,1460,1456,1448,1442,1443,1448,1455,1467,1481,1486,
+1477,1462,1455,1457,1459,1459,1462,1472,1479,1476,1466,1450,1426,1392,1361,1341,1319,1277,1224,1191,1148,
+1118,1085,1041,1003,993,1002,1000,979,956,944,936,925,913,908,908,908,911,920,930,929,921,
+916,917,918,916,916,921,927,932,937,944,949,954,964,982,1001,1018,1034,1051,1062,1062,1063,
+1082,1117,1150,1170,1193,1243,1326,1419,1499,1551,1568,1547,1499,1449,1417,1402,1384,1349,1301,1242,1166,
+1068,968,899,870,855,827,783,741,710,681,643,595,539,476,406,333,265,202,143,86,32,
+-20,-71,-122,-172,-223,-279,-339,-400,-458,-509,-550,-585,-623,-674,-743,-826,-912,-985,-1034,-1063,-1074,
+-1058,-999,-914,-851,-852,-911,-991,-1064,-1136,-1213,-1282,-1332,-1362,-1383,-1404,-1426,-1438,-1408,-1313,-1184,-1106,
+-1137,-1243,-1332,-1356,-1351,-1367,-1409,-1449,-1465,-1459,-1434,-1406,-1413,-1499,-1657,-1818,-1914,-1941,-1957,-2012,-2105,
+-2197,-2265,-2318,-2374,-2433,-2482,-2521,-2571,-2661,-2800,-2960,-3098,-3184,-3233,-3274,-3321,-3358,-3372,-3376,-3394,-3427,
+-3460,-3482,-3493,-3498,-3500,-3502,-3511,-3522,-3533,-3546,-3575,-3623,-3686,-3761,-3819,-3797,-3646,-3421,-3279,-3347,-3590,
+-3834,-3921,-3834,-3675,-3556,-3514,-3518,-3522,-3516,-3522,-3550,-3572,-3552,-3487,-3410,-3357,-3351,-3405,-3511,-3623,-3679,
+-3662,-3616,-3591,-3598,-3611,-3612,-3611,-3623,-3652,-3685,-3708,-3714,-3716,-3736,-3783,-3836,-3874,-3903,-3944,-4006,-4069,
+-4111,-4126,-4128,-4132,-4133,-4122,-4103,-4107,-4168,-4282,-4404,-4495,-4553,-4599,-4648,-4703,-4767,-4844,-4929,-5006,-5074,
+-5142,-5210,-5275,-5339,-5406,-5471,-5522,-5560,-5600,-5643,-5682,-5716,-5758,-5815,-5875,-5928,-5980,-6043,-6113,-6176,-6229,
+-6284,-6350,-6421,-6483,-6520,-6532,-6539,-6565,-6618,-6681,-6738,-6793,-6858,-6937,-7022,-7109,-7206,-7311,-7413,-7498,-7558,
+-7598,-7625,-7651,-7684,-7721,-7760,-7800,-7840,-7877,-7911,-7944,-7977,-8004,-8022,-8041,-8065,-8082,-8084,-8079,-8081,-8086,
+-8073,-8041,-8006,-7983,-7965,-7942,-7915,-7887,-7854,-7815,-7784,-7774,-7780,-7783,-7778,-7764,-7741,-7712,-7677,-7640,-7595,
+-7544,-7496,-7458,-7424,-7386,-7343,-7298,-7250,-7192,-7133,-7080,-7031,-6980,-6924,-6858,-6766,-6646,-6538,-6489,-6498,-6517,
+-6508,-6473,-6411,-6304,-6157,-6026,-5965,-5950,-5907,-5807,-5689,-5599,-5531,-5449,-5340,-5217,-5089,-4964,-4855,-4766,-4675,
+-4554,-4416,-4307,-4255,-4231,-4177,-4062,-3900,-3726,-3566,-3422,-3290,-3168,-3066,-2991,-2932,-2867,-2781,-2680,-2579,-2481,
+-2381,-2272,-2154,-2026,-1898,-1785,-1696,-1611,-1509,-1393,-1295,-1231,-1183,-1127,-1059,-1002,-979,-997,-1046,-1095,-1107,
+-1059,-967,-862,-763,-673,-594,-528,-461,-372,-262,-151,-44,85,257,455,646,826,1015,1221,1414,1562,
+1655,1712,1761,1822,1907,2019,2151,2281,2387,2466,2544,2644,2752,2835,2889,2956,3064,3182,3260,3294,3318,
+3353,3394,3457,3573,3720,3815,3800,3720,3664,3670,3706,3743,3789,3855,3931,4001,4059,4091,4072,4010,3950,
+3922,3911,3883,3836,3785,3726,3651,3589,3596,3681,3799,3907,4012,4136,4267,4369,4428,4464,4490,4490,4436,
+4317,4143,3926,3693,3487,3361,3347,3441,3603,3783,3938,4057,4161,4281,4431,4598,4757,4892,5010,5129,5261,
+5397,5523,5633,5742,5860,5975,6067,6129,6177,6226,6282,6342,6414,6498,6578,6636,6668,6685,6692,6690,6688,
+6695,6713,6732,6751,6781,6828,6881,6928,6964,6996,7022,7036,7042,7051,7071,7101,7137,7178,7227,7283,7344,
+7401,7442,7462,7463,7452,7437,7428,7437,7464,7489,7486,7446,7384,7315,7248,7200,7222,7373,7654,7984,8244,
+8355,8312,8159,7959,7783,7683,7667,7699,7745,7807,7892,7970,7987,7933,7856,7793,7736,7661,7572,7488,7395,
+7268,7126,7040,7060,7156,7248,7277,7241,7178,7129,7104,7087,7056,7010,6961,6922,6900,6895,6897,6877,6811,
+6687,6521,6346,6220,6196,6260,6315,6271,6163,6109,6154,6192,6088,5835,5562,5407,5422,5574,5781,5948,6021,
+6022,6005,5983,5919,5804,5685,5601,5546,5498,5458,5434,5406,5355,5295,5255,5241,5231,5210,5176,5120,5034,
+4941,4881,4866,4863,4831,4760,4675,4599,4541,4490,4434,4367,4300,4248,4212,4183,4157,4129,4098,4066,4042,
+4026,4008,3982,3955,3934,3907,3860,3805,3765,3737,3696,3638,3586,3554,3524,3482,3443,3421,3401,3367,3333,
+3318,3307,3260,3173,3085,3027,2990,2946,2894,2851,2826,2807,2786,2762,2736,2703,2664,2625,2588,2549,2504,
+2460,2425,2398,2377,2363,2358,2356,2343,2314,2289,2290,2313,2328,2307,2257,2206,2170,2144,2120,2098,2079,
+2059,2034,2006,1977,1943,1901,1856,1816,1785,1759,1732,1709,1691,1681,1673,1662,1646,1627,1606,1586,1569,
+1554,1533,1499,1463,1449,1470,1507,1526,1515,1488,1457,1420,1373,1330,1306,1293,1277,1255,1236,1218,1186,
+1138,1087,1041,994,960,979,1070,1187,1234,1165,1030,924,890,889,873,841,825,833,841,834,819,
+809,802,795,794,798,793,773,759,768,782,772,741,726,742,759,741,688,630,582,547,522,
+509,498,475,443,414,389,360,326,295,271,243,210,180,157,133,106,83,71,62,54,51,
+53,50,37,22,15,6,-8,-25,-39,-58,-84,-91,-42,53,151,210,230,217,161,56,-68,
+-167,-217,-233,-235,-237,-241,-253,-273,-299,-328,-360,-395,-429,-460,-489,-519,-547,-572,-599,-629,-661,
+-694,-726,-757,-785,-807,-824,-839,-854,-872,-888,-902,-913,-926,-942,-959,-976,-992,-1006,-1018,-1028,-1037,
+-1044,-1049,-1053,-1062,-1081,-1107,-1133,-1151,-1160,-1163,-1163,-1165,-1169,-1171,-1170,-1171,-1175,-1179,-1179,-1177,-1178,
+-1183,-1188,-1193,-1201,-1213,-1225,-1235,-1246,-1256,-1264,-1271,-1277,-1283,-1286,-1285,-1282,-1279,-1276,-1272,-1269,-1264,
+-1256,-1245,-1236,-1232,-1230,-1226,-1218,-1210,-1201,-1192,-1183,-1173,-1160,-1143,-1125,-1112,-1101,-1087,-1071,-1056,-1042,
+-1027,-1016,-1010,-1006,-997,-987,-981,-980,-976,-967,-958,-953,-950,-948,-947,-948,-948,-947,-945,-947,-950,
+-953,-955,-959,-966,-974,-983,-994,-1006,-1018,-1028,-1038,-1049,-1060,-1072,-1083,-1097,-1116,-1140,-1166,-1191,-1210,
+-1224,-1230,-1231,-1231,-1235,-1242,-1251,-1262,-1273,-1277,-1273,-1268,-1267,-1271,-1275,-1277,-1278,-1280,-1281,-1281,-1280,
+-1275,-1267,-1261,-1261,-1261,-1257,-1248,-1242,-1240,-1238,-1233,-1228,-1225,-1221,-1216,-1212,-1207,-1196,-1178,-1161,-1150,
+-1138,-1121,-1106,-1097,-1085,-1061,-1032,-1010,-994,-973,-944,-917,-895,-871,-841,-810,-783,-752,-717,-682,-652,
+-620,-584,-549,-517,-482,-438,-395,-358,-320,-269,-212,-164,-125,-80,-29,6,19,26,33,11,-71,
+-184,-239,-157,72,393,726,1005,1196,1317,1416,1528,1641,1720,1758,1770,1759,1711,1631,1557,1519,1505,
+1499,1512,1571,1664,1740,1772,1801,1887,2047,2236,2386,2459,2462,2435,2417,2425,2453,2489,2533,2585,2629,
+2648,2638,2614,2590,2558,2509,2441,2367,2302,2251,2214,2179,2132,2069,2003,1949,1900,1835,1735,1614,1501,
+1416,1356,1298,1234,1175,1143,1144,1154,1140,1091,1025,960,891,803,694,586,497,420,340,256,180,
+115,48,-30,-119,-208,-295,-374,-445,-511,-584,-668,-751,-819,-872,-927,-996,-1077,-1164,-1247,-1319,-1374,
+-1418,-1462,-1510,-1558,-1597,-1631,-1661,-1685,-1699,-1708,-1719,-1733,-1746,-1760,-1782,-1815,-1848,-1880,-1925,-2008,-2125,
+-2240,-2308,-2313,-2279,-2238,-2207,-2186,-2172,-2161,-2150,-2135,-2122,-2114,-2107,-2092,-2066,-2038,-2018,-2003,-1991,-1981,
+-1970,-1951,-1920,-1879,-1823,-1744,-1641,-1538,-1466,-1434,-1423,-1409,-1383,-1351,-1317,-1282,-1249,-1218,-1181,-1137,-1095,
+-1066,-1047,-1023,-986,-946,-917,-890,-850,-789,-726,-684,-671,-671,-663,-639,-613,-612,-656,-745,-860,-974,
+-1062,-1115,-1137,-1139,-1133,-1123,-1111,-1097,-1086,-1077,-1067,-1055,-1044,-1033,-1014,-984,-950,-922,-899,-874,-849,
+-830,-817,-803,-790,-779,-770,-753,-723,-690,-662,-637,-610,-581,-558,-535,-506,-473,-441,-409,-372,-328,
+-285,-250,-218,-182,-138,-84,-20,48,114,173,224,271,318,371,432,494,546,591,637,685,729,
+767,805,849,894,932,964,996,1026,1052,1078,1109,1142,1172,1202,1237,1276,1313,1348,1387,1423,1441,
+1436,1423,1420,1423,1424,1420,1416,1413,1407,1396,1388,1392,1405,1416,1421,1418,1411,1406,1408,1417,1429,
+1438,1443,1444,1442,1436,1427,1420,1417,1418,1424,1435,1449,1456,1451,1439,1432,1432,1435,1435,1434,1436,
+1439,1436,1426,1409,1383,1350,1322,1304,1283,1243,1191,1160,1121,1093,1057,1012,979,975,987,990,977,
+962,951,940,924,912,911,915,917,921,929,938,940,936,935,938,940,939,941,948,955,962,
+971,984,994,1000,1009,1028,1052,1071,1084,1096,1106,1112,1119,1144,1186,1227,1253,1278,1329,1412,1502,
+1566,1596,1598,1582,1555,1528,1513,1507,1495,1462,1411,1346,1268,1177,1089,1022,978,940,892,840,798,
+764,729,687,641,591,532,464,392,326,267,211,158,106,55,3,-48,-100,-158,-229,-313,-400,
+-473,-525,-562,-598,-644,-697,-755,-820,-889,-945,-965,-952,-931,-913,-887,-838,-790,-785,-839,-931,-1033,
+-1133,-1222,-1290,-1332,-1359,-1380,-1390,-1381,-1357,-1316,-1250,-1168,-1115,-1125,-1177,-1212,-1213,-1218,-1262,-1326,-1365,
+-1359,-1325,-1289,-1281,-1342,-1494,-1697,-1863,-1930,-1929,-1944,-2021,-2135,-2234,-2298,-2341,-2380,-2417,-2446,-2475,-2524,
+-2617,-2767,-2948,-3112,-3219,-3272,-3305,-3334,-3349,-3341,-3329,-3338,-3370,-3403,-3425,-3438,-3444,-3448,-3456,-3470,-3480,
+-3478,-3479,-3504,-3556,-3615,-3668,-3701,-3687,-3596,-3454,-3361,-3405,-3572,-3745,-3806,-3727,-3581,-3474,-3456,-3491,-3504,
+-3472,-3438,-3449,-3481,-3469,-3397,-3316,-3286,-3315,-3377,-3450,-3519,-3571,-3592,-3588,-3574,-3558,-3542,-3535,-3546,-3573,
+-3606,-3634,-3655,-3666,-3676,-3699,-3742,-3790,-3825,-3853,-3893,-3952,-4013,-4055,-4078,-4093,-4108,-4109,-4083,-4042,-4030,
+-4085,-4200,-4330,-4428,-4488,-4532,-4579,-4635,-4698,-4769,-4843,-4916,-4989,-5064,-5134,-5196,-5256,-5320,-5383,-5432,-5468,
+-5506,-5551,-5594,-5631,-5672,-5727,-5790,-5849,-5904,-5959,-6012,-6063,-6118,-6184,-6257,-6325,-6376,-6405,-6421,-6439,-6474,
+-6529,-6592,-6650,-6709,-6778,-6852,-6927,-7008,-7103,-7212,-7317,-7400,-7459,-7498,-7527,-7556,-7591,-7630,-7668,-7706,-7744,
+-7782,-7818,-7851,-7881,-7907,-7928,-7949,-7970,-7982,-7982,-7980,-7985,-7989,-7975,-7948,-7922,-7906,-7891,-7868,-7839,-7809,
+-7772,-7733,-7707,-7704,-7713,-7718,-7709,-7690,-7665,-7636,-7602,-7562,-7513,-7463,-7421,-7391,-7361,-7322,-7277,-7229,-7176,
+-7119,-7065,-7021,-6980,-6933,-6881,-6818,-6728,-6613,-6513,-6473,-6487,-6508,-6500,-6462,-6396,-6288,-6145,-6020,-5956,-5932,
+-5887,-5800,-5703,-5622,-5548,-5454,-5337,-5212,-5092,-4987,-4905,-4830,-4725,-4571,-4405,-4289,-4251,-4246,-4202,-4084,-3913,
+-3739,-3593,-3469,-3350,-3233,-3136,-3070,-3018,-2951,-2857,-2750,-2642,-2535,-2423,-2308,-2190,-2064,-1938,-1832,-1754,-1680,
+-1579,-1459,-1355,-1286,-1233,-1168,-1085,-1002,-938,-905,-909,-939,-968,-969,-941,-895,-834,-756,-669,-585,-505,
+-420,-338,-277,-229,-159,-41,102,238,370,528,722,910,1044,1110,1140,1181,1267,1398,1553,1708,1847,
+1968,2076,2178,2276,2358,2415,2460,2525,2629,2748,2847,2923,2996,3068,3134,3212,3334,3475,3547,3502,3393,
+3327,3347,3416,3499,3599,3724,3848,3933,3971,3967,3919,3835,3748,3684,3633,3562,3463,3363,3283,3232,3227,
+3288,3418,3578,3733,3874,4008,4123,4198,4230,4233,4218,4178,4106,4007,3884,3741,3589,3459,3392,3413,3524,
+3701,3905,4095,4248,4377,4506,4646,4789,4921,5046,5174,5307,5435,5543,5627,5699,5780,5881,5984,6066,6119,
+6158,6196,6238,6288,6358,6451,6548,6620,6656,6666,6661,6650,6642,6647,6663,6683,6710,6749,6796,6837,6863,
+6888,6929,6982,7025,7047,7058,7074,7101,7136,7174,7216,7267,7328,7391,7438,7460,7461,7451,7441,7433,7438,
+7462,7492,7492,7440,7345,7240,7149,7088,7089,7194,7415,7701,7973,8163,8246,8218,8101,7948,7827,7772,7759,
+7762,7785,7841,7899,7902,7839,7765,7726,7719,7716,7711,7702,7654,7530,7360,7240,7229,7294,7343,7320,7242,
+7164,7121,7109,7100,7074,7032,6984,6936,6890,6851,6822,6793,6754,6695,6607,6491,6373,6306,6315,6346,6321,
+6230,6154,6151,6184,6153,6005,5775,5556,5449,5508,5689,5872,5960,5961,5944,5933,5892,5803,5709,5654,5632,
+5614,5595,5584,5567,5524,5465,5415,5381,5350,5317,5281,5232,5150,5048,4966,4930,4925,4913,4870,4798,4716,
+4642,4577,4512,4442,4375,4322,4280,4240,4204,4178,4154,4125,4098,4085,4077,4054,4013,3973,3943,3910,3868,
+3825,3787,3743,3687,3633,3592,3555,3513,3474,3450,3430,3397,3355,3332,3328,3312,3262,3189,3116,3051,2990,
+2936,2901,2883,2871,2853,2827,2795,2756,2715,2679,2648,2612,2566,2518,2482,2462,2452,2446,2444,2443,2433,
+2409,2378,2358,2351,2342,2323,2303,2292,2286,2265,2220,2164,2114,2079,2051,2026,2000,1970,1932,1885,1837,
+1795,1764,1742,1723,1705,1690,1675,1657,1635,1614,1594,1575,1557,1539,1520,1495,1471,1469,1498,1533,1539,
+1512,1478,1453,1422,1368,1307,1269,1255,1246,1230,1215,1202,1172,1119,1061,1012,973,948,970,1065,1186,
+1238,1166,1022,908,868,864,843,808,795,809,822,814,797,786,780,771,766,769,766,749,731,
+733,749,750,729,710,709,712,699,666,623,576,530,499,488,481,460,427,397,374,348,314,
+281,252,221,186,154,130,108,85,67,55,41,25,16,17,14,0,-16,-22,-26,-39,-55,
+-66,-83,-118,-149,-132,-47,77,187,245,235,160,45,-68,-151,-202,-236,-257,-265,-267,-275,-293,
+-316,-342,-372,-406,-439,-468,-497,-528,-555,-579,-602,-629,-661,-695,-727,-757,-782,-803,-819,-834,-849,
+-866,-884,-899,-912,-925,-938,-953,-968,-982,-995,-1009,-1021,-1031,-1038,-1040,-1040,-1045,-1061,-1083,-1105,-1122,
+-1132,-1135,-1134,-1135,-1139,-1144,-1145,-1144,-1145,-1146,-1145,-1143,-1144,-1148,-1152,-1156,-1164,-1176,-1189,-1199,-1208,
+-1218,-1227,-1235,-1243,-1251,-1257,-1256,-1253,-1251,-1251,-1250,-1247,-1241,-1232,-1221,-1210,-1201,-1194,-1186,-1179,-1173,
+-1164,-1153,-1140,-1129,-1115,-1099,-1082,-1068,-1056,-1043,-1029,-1017,-1005,-992,-980,-972,-967,-958,-947,-940,-938,
+-937,-932,-923,-918,-916,-915,-915,-916,-917,-917,-918,-923,-930,-935,-936,-936,-940,-949,-960,-969,-979,
+-991,-1005,-1018,-1030,-1043,-1055,-1070,-1088,-1112,-1139,-1164,-1183,-1198,-1210,-1215,-1216,-1215,-1219,-1228,-1238,-1248,
+-1256,-1259,-1257,-1254,-1254,-1257,-1259,-1261,-1263,-1265,-1265,-1263,-1260,-1257,-1250,-1244,-1241,-1239,-1233,-1224,-1219,
+-1219,-1219,-1214,-1208,-1204,-1200,-1196,-1194,-1190,-1180,-1164,-1148,-1138,-1126,-1108,-1090,-1079,-1067,-1047,-1020,-997,
+-980,-960,-932,-903,-879,-856,-829,-801,-773,-743,-711,-681,-652,-618,-581,-546,-516,-482,-439,-391,-349,
+-310,-266,-218,-174,-131,-82,-30,7,23,29,34,24,-31,-133,-225,-220,-60,234,581,890,1117,
+1268,1375,1471,1584,1730,1892,2011,2036,1985,1927,1909,1901,1850,1766,1725,1774,1869,1921,1905,1880,1927,
+2067,2252,2411,2500,2513,2485,2459,2464,2491,2523,2551,2582,2617,2643,2653,2651,2640,2615,2566,2501,2435,
+2382,2340,2302,2260,2211,2151,2088,2033,1983,1923,1836,1730,1626,1540,1462,1377,1290,1221,1193,1203,1218,
+1208,1162,1098,1035,969,881,772,662,570,491,410,325,245,172,94,8,-81,-167,-252,-334,-405,
+-467,-535,-618,-699,-751,-769,-782,-825,-917,-1044,-1171,-1263,-1306,-1318,-1337,-1379,-1436,-1488,-1525,-1547,-1557,
+-1559,-1561,-1575,-1598,-1621,-1638,-1660,-1696,-1744,-1796,-1857,-1942,-2053,-2159,-2222,-2230,-2207,-2183,-2166,-2148,-2127,
+-2110,-2096,-2083,-2068,-2057,-2046,-2025,-1988,-1946,-1914,-1897,-1890,-1884,-1865,-1826,-1771,-1718,-1674,-1627,-1564,-1495,
+-1450,-1440,-1449,-1451,-1437,-1410,-1375,-1335,-1298,-1261,-1213,-1150,-1095,-1076,-1089,-1095,-1060,-995,-938,-903,-872,
+-821,-758,-709,-694,-702,-707,-697,-683,-696,-757,-858,-970,-1061,-1114,-1130,-1124,-1111,-1105,-1104,-1104,-1100,
+-1092,-1082,-1067,-1049,-1036,-1028,-1015,-991,-961,-936,-914,-889,-862,-841,-827,-813,-794,-776,-761,-743,-716,
+-685,-659,-637,-612,-587,-564,-542,-512,-475,-438,-403,-365,-323,-281,-243,-207,-169,-126,-78,-21,44,
+114,178,231,276,320,372,433,492,541,582,625,672,716,751,785,825,869,909,943,973,999,
+1023,1049,1079,1111,1143,1176,1213,1251,1287,1325,1369,1408,1427,1421,1408,1400,1399,1395,1389,1385,1382,
+1375,1364,1357,1363,1379,1395,1402,1401,1396,1395,1402,1413,1425,1431,1430,1424,1417,1411,1406,1400,1395,
+1393,1395,1401,1408,1412,1411,1407,1405,1409,1413,1413,1408,1401,1396,1391,1381,1362,1333,1304,1285,1273,
+1251,1209,1160,1147,1125,1109,1074,1021,976,963,972,979,977,971,964,952,935,923,922,927,929,
+932,938,946,950,951,954,958,959,959,964,973,982,989,1000,1017,1032,1043,1055,1076,1103,1123,
+1133,1143,1157,1174,1193,1222,1265,1306,1334,1361,1412,1493,1577,1631,1648,1644,1631,1615,1598,1589,1591,
+1593,1579,1538,1470,1381,1287,1205,1142,1086,1025,958,899,856,818,776,729,685,639,586,521,454,
+390,332,278,228,179,129,75,22,-32,-97,-186,-294,-403,-490,-547,-588,-630,-675,-716,-750,-792,
+-845,-884,-877,-832,-796,-800,-815,-797,-750,-728,-771,-868,-981,-1086,-1174,-1237,-1278,-1310,-1342,-1361,-1345,
+-1294,-1229,-1169,-1127,-1120,-1147,-1178,-1177,-1147,-1142,-1201,-1301,-1372,-1369,-1300,-1217,-1188,-1269,-1462,-1692,-1853,
+-1905,-1906,-1942,-2041,-2161,-2253,-2311,-2348,-2373,-2388,-2402,-2428,-2477,-2567,-2710,-2895,-3075,-3202,-3271,-3311,-3334,
+-3328,-3292,-3258,-3260,-3298,-3341,-3373,-3392,-3404,-3410,-3415,-3424,-3430,-3424,-3422,-3448,-3496,-3531,-3531,-3510,-3494,
+-3490,-3491,-3500,-3535,-3600,-3665,-3683,-3624,-3515,-3433,-3436,-3490,-3506,-3443,-3367,-3354,-3390,-3390,-3321,-3249,-3247,
+-3310,-3375,-3406,-3420,-3446,-3485,-3518,-3526,-3510,-3486,-3481,-3501,-3536,-3567,-3586,-3598,-3608,-3623,-3653,-3699,-3746,
+-3779,-3804,-3844,-3904,-3967,-4013,-4043,-4065,-4080,-4074,-4038,-3991,-3977,-4027,-4132,-4247,-4331,-4384,-4430,-4489,-4557,
+-4625,-4691,-4758,-4830,-4907,-4985,-5056,-5118,-5175,-5236,-5295,-5342,-5379,-5417,-5464,-5511,-5553,-5595,-5644,-5698,-5751,
+-5802,-5851,-5900,-5952,-6016,-6093,-6170,-6233,-6278,-6307,-6331,-6358,-6398,-6449,-6505,-6562,-6625,-6695,-6766,-6833,-6909,
+-7005,-7116,-7221,-7302,-7359,-7398,-7429,-7460,-7497,-7539,-7579,-7617,-7655,-7692,-7727,-7757,-7784,-7810,-7834,-7855,-7871,
+-7880,-7883,-7887,-7895,-7898,-7886,-7866,-7850,-7840,-7826,-7803,-7774,-7742,-7708,-7676,-7659,-7660,-7666,-7662,-7645,-7621,
+-7595,-7568,-7538,-7500,-7449,-7396,-7355,-7329,-7304,-7266,-7219,-7168,-7112,-7057,-7011,-6978,-6946,-6907,-6859,-6797,-6707,
+-6595,-6502,-6467,-6481,-6497,-6487,-6452,-6388,-6282,-6145,-6027,-5962,-5929,-5882,-5808,-5725,-5642,-5549,-5438,-5323,-5214,
+-5116,-5030,-4959,-4882,-4762,-4591,-4416,-4302,-4269,-4267,-4220,-4093,-3913,-3741,-3614,-3518,-3418,-3306,-3209,-3145,-3094,
+-3020,-2917,-2802,-2690,-2574,-2452,-2334,-2222,-2109,-1996,-1902,-1835,-1768,-1669,-1547,-1436,-1357,-1291,-1213,-1121,-1025,
+-933,-853,-802,-787,-798,-817,-840,-864,-872,-842,-776,-692,-601,-498,-396,-314,-256,-192,-102,-5,71,
+139,238,381,524,611,629,624,656,758,915,1087,1244,1388,1532,1676,1803,1892,1941,1961,1982,2036,
+2136,2261,2381,2489,2591,2684,2760,2832,2928,3033,3086,3048,2973,2954,3031,3167,3320,3489,3674,3839,3936,
+3957,3923,3847,3729,3584,3443,3320,3201,3077,2965,2893,2879,2932,3056,3247,3472,3685,3846,3941,3975,3967,
+3940,3903,3855,3791,3727,3681,3658,3644,3628,3616,3633,3697,3818,3989,4184,4369,4522,4648,4764,4880,4990,
+5095,5206,5329,5452,5557,5631,5684,5737,5814,5914,6014,6087,6125,6146,6167,6193,6232,6302,6406,6518,6600,
+6634,6632,6619,6606,6601,6606,6623,6651,6688,6733,6776,6804,6818,6841,6891,6962,7025,7059,7068,7074,7092,
+7126,7167,7209,7254,7310,7375,7429,7456,7458,7452,7447,7444,7447,7459,7469,7442,7361,7243,7129,7043,6986,
+6972,7033,7192,7428,7690,7929,8109,8195,8175,8084,7993,7935,7888,7826,7775,7779,7824,7843,7796,7714,7650,
+7622,7625,7656,7704,7718,7652,7528,7423,7386,7387,7363,7293,7214,7162,7143,7131,7107,7069,7030,6997,6959,
+6908,6849,6792,6744,6700,6656,6604,6531,6440,6373,6374,6434,6486,6474,6400,6311,6239,6176,6084,5923,5709,
+5533,5507,5642,5822,5920,5922,5900,5897,5882,5830,5770,5738,5726,5708,5683,5664,5645,5610,5566,5527,5493,
+5454,5411,5377,5344,5285,5190,5086,5008,4970,4961,4949,4912,4848,4769,4690,4609,4528,4458,4405,4359,4311,
+4266,4237,4216,4187,4156,4140,4133,4109,4057,4003,3970,3948,3916,3875,3836,3798,3750,3695,3647,3605,3560,
+3517,3487,3464,3428,3380,3347,3347,3360,3345,3285,3197,3111,3044,3002,2979,2965,2950,2930,2900,2861,2815,
+2770,2734,2706,2675,2631,2580,2538,2517,2515,2521,2529,2531,2525,2504,2473,2440,2410,2380,2357,2349,2362,
+2375,2358,2300,2219,2147,2099,2069,2043,2014,1984,1953,1915,1868,1821,1784,1759,1741,1723,1707,1690,1666,
+1637,1609,1590,1576,1558,1537,1519,1504,1494,1502,1531,1559,1554,1516,1477,1457,1436,1386,1319,1269,1243,
+1222,1199,1186,1185,1169,1120,1057,1006,972,947,951,1008,1094,1134,1078,965,877,847,840,814,778,
+766,785,802,794,772,755,744,736,732,736,738,725,708,705,715,720,708,689,675,665,653,
+637,613,575,527,489,473,465,444,410,377,351,324,292,261,234,206,173,141,113,87,63,
+48,36,19,-2,-16,-18,-22,-35,-50,-54,-56,-69,-87,-97,-109,-141,-185,-200,-152,-50,57,
+124,125,75,11,-38,-76,-127,-195,-255,-287,-296,-304,-320,-340,-362,-388,-420,-451,-479,-508,-537,
+-564,-585,-605,-629,-659,-691,-723,-751,-774,-792,-810,-827,-843,-860,-878,-895,-908,-918,-928,-941,-954,
+-967,-980,-994,-1008,-1019,-1026,-1027,-1027,-1031,-1043,-1060,-1077,-1091,-1100,-1104,-1102,-1102,-1107,-1114,-1118,-1118,
+-1118,-1120,-1120,-1118,-1117,-1118,-1120,-1123,-1130,-1142,-1155,-1164,-1173,-1183,-1192,-1198,-1203,-1210,-1216,-1216,-1215,
+-1216,-1219,-1222,-1220,-1215,-1208,-1199,-1187,-1174,-1161,-1148,-1139,-1133,-1125,-1113,-1099,-1085,-1071,-1054,-1038,-1023,
+-1011,-997,-983,-974,-966,-958,-947,-938,-932,-924,-913,-904,-901,-900,-895,-887,-882,-882,-882,-882,-883,
+-886,-889,-892,-898,-907,-916,-920,-921,-924,-931,-941,-948,-956,-966,-980,-994,-1008,-1022,-1038,-1056,-1079,
+-1107,-1136,-1160,-1176,-1186,-1193,-1197,-1199,-1203,-1211,-1222,-1230,-1234,-1237,-1239,-1239,-1241,-1243,-1244,-1243,-1241,
+-1242,-1243,-1242,-1238,-1234,-1230,-1225,-1220,-1217,-1214,-1208,-1200,-1196,-1197,-1197,-1194,-1188,-1183,-1179,-1175,-1171,
+-1167,-1159,-1145,-1131,-1122,-1111,-1095,-1077,-1063,-1049,-1030,-1006,-984,-965,-944,-917,-888,-862,-838,-814,-788,
+-759,-728,-698,-671,-644,-613,-577,-541,-509,-476,-437,-393,-348,-305,-263,-221,-178,-134,-86,-36,7,
+35,44,41,30,-3,-80,-185,-242,-158,88,425,750,1002,1182,1310,1421,1571,1802,2071,2260,2294,
+2234,2207,2252,2281,2204,2062,1979,2013,2095,2116,2058,1995,2010,2123,2287,2437,2525,2540,2510,2485,2493,
+2529,2565,2588,2608,2632,2654,2667,2670,2667,2651,2616,2566,2516,2471,2429,2384,2339,2296,2248,2190,2127,
+2067,2005,1930,1840,1747,1657,1563,1456,1349,1274,1252,1269,1285,1271,1224,1165,1110,1049,965,855,744,
+650,568,486,399,314,231,143,51,-35,-116,-200,-286,-360,-420,-486,-570,-650,-686,-665,-633,-654,
+-763,-936,-1109,-1219,-1248,-1227,-1215,-1244,-1305,-1370,-1416,-1436,-1434,-1421,-1415,-1431,-1466,-1500,-1523,-1542,-1577,
+-1634,-1705,-1783,-1876,-1984,-2083,-2141,-2154,-2147,-2144,-2141,-2123,-2093,-2068,-2054,-2041,-2021,-2000,-1982,-1955,-1909,
+-1855,-1817,-1802,-1801,-1791,-1755,-1692,-1623,-1578,-1568,-1571,-1557,-1525,-1502,-1503,-1514,-1514,-1497,-1469,-1431,-1385,
+-1338,-1291,-1234,-1162,-1105,-1102,-1145,-1175,-1136,-1043,-956,-912,-892,-858,-800,-745,-720,-728,-746,-758,-774,
+-813,-886,-978,-1062,-1116,-1138,-1136,-1121,-1104,-1096,-1097,-1101,-1101,-1097,-1089,-1074,-1055,-1037,-1024,-1010,-987,
+-960,-936,-916,-893,-868,-848,-834,-819,-796,-771,-751,-733,-712,-688,-667,-648,-628,-605,-582,-558,-529,
+-492,-454,-417,-378,-335,-293,-251,-209,-165,-121,-76,-27,32,99,165,222,270,316,367,423,477,
+522,562,607,658,705,742,773,808,849,889,924,951,973,993,1014,1041,1072,1106,1144,1184,1222,
+1256,1294,1338,1380,1404,1404,1392,1382,1374,1367,1362,1360,1360,1354,1343,1336,1338,1351,1367,1378,1382,
+1385,1388,1395,1403,1410,1411,1406,1397,1391,1393,1397,1398,1393,1388,1387,1384,1379,1373,1372,1377,1383,
+1388,1390,1389,1381,1370,1358,1349,1337,1315,1288,1268,1262,1255,1230,1187,1147,1161,1159,1152,1111,1043,
+985,962,967,977,980,979,974,963,948,938,939,943,946,947,953,961,965,968,973,979,981,
+982,989,1001,1012,1019,1029,1046,1067,1083,1097,1119,1147,1170,1182,1195,1218,1247,1276,1306,1343,1379,
+1406,1431,1477,1550,1629,1682,1702,1700,1687,1663,1635,1620,1628,1653,1668,1649,1585,1487,1383,1299,1236,
+1176,1104,1027,964,917,873,823,774,731,690,640,579,516,456,398,344,296,248,195,138,82,
+28,-40,-139,-262,-382,-474,-534,-580,-627,-671,-697,-706,-723,-757,-782,-764,-718,-701,-739,-786,-777,
+-716,-678,-715,-810,-911,-1000,-1084,-1164,-1226,-1271,-1307,-1331,-1318,-1260,-1182,-1121,-1098,-1116,-1157,-1187,-1180,
+-1143,-1132,-1199,-1335,-1464,-1502,-1425,-1292,-1211,-1271,-1467,-1695,-1842,-1882,-1887,-1939,-2044,-2156,-2238,-2295,-2334,
+-2355,-2360,-2368,-2393,-2439,-2513,-2635,-2803,-2977,-3109,-3195,-3259,-3298,-3287,-3225,-3166,-3165,-3216,-3276,-3317,-3344,
+-3362,-3370,-3368,-3368,-3372,-3372,-3377,-3403,-3444,-3460,-3422,-3353,-3322,-3369,-3470,-3552,-3571,-3544,-3522,-3524,-3513,
+-3463,-3413,-3424,-3482,-3499,-3425,-3324,-3288,-3310,-3304,-3233,-3168,-3189,-3280,-3354,-3365,-3343,-3344,-3380,-3426,-3453,
+-3453,-3442,-3443,-3464,-3497,-3526,-3543,-3552,-3558,-3571,-3598,-3642,-3689,-3725,-3756,-3800,-3862,-3927,-3976,-4009,-4030,
+-4039,-4025,-3986,-3942,-3930,-3972,-4055,-4138,-4192,-4228,-4278,-4354,-4446,-4531,-4606,-4677,-4749,-4825,-4902,-4976,-5041,
+-5098,-5152,-5203,-5248,-5289,-5332,-5380,-5429,-5473,-5514,-5553,-5593,-5637,-5685,-5739,-5796,-5858,-5928,-6002,-6072,-6132,
+-6181,-6220,-6253,-6288,-6329,-6377,-6426,-6478,-6540,-6609,-6675,-6737,-6811,-6909,-7021,-7125,-7205,-7260,-7300,-7332,-7365,
+-7405,-7448,-7490,-7528,-7565,-7600,-7633,-7662,-7690,-7718,-7741,-7759,-7773,-7783,-7790,-7797,-7806,-7808,-7801,-7787,-7776,
+-7769,-7757,-7735,-7706,-7676,-7648,-7628,-7622,-7623,-7621,-7609,-7588,-7563,-7538,-7514,-7489,-7453,-7400,-7341,-7294,-7265,
+-7240,-7207,-7164,-7115,-7063,-7012,-6975,-6952,-6932,-6903,-6861,-6800,-6708,-6597,-6508,-6472,-6477,-6484,-6474,-6448,-6392,
+-6287,-6151,-6036,-5973,-5937,-5889,-5818,-5735,-5639,-5528,-5414,-5317,-5239,-5163,-5084,-5006,-4917,-4791,-4626,-4462,-4351,
+-4306,-4286,-4227,-4097,-3918,-3754,-3647,-3577,-3496,-3388,-3287,-3218,-3162,-3079,-2966,-2845,-2726,-2602,-2473,-2355,-2256,
+-2164,-2075,-2000,-1942,-1875,-1772,-1646,-1530,-1440,-1356,-1260,-1154,-1045,-933,-825,-737,-681,-653,-648,-680,-748,
+-822,-856,-839,-794,-731,-640,-520,-397,-296,-209,-122,-42,8,43,98,192,287,332,322,306,343,
+452,601,743,867,997,1158,1335,1478,1551,1560,1543,1542,1587,1680,1803,1929,2044,2152,2249,2327,2388,
+2454,2526,2575,2579,2574,2631,2778,2979,3188,3400,3619,3812,3935,3973,3947,3865,3720,3518,3299,3109,2955,
+2822,2711,2649,2661,2752,2919,3150,3414,3652,3800,3832,3777,3695,3632,3592,3556,3518,3499,3527,3607,3712,
+3814,3902,3985,4081,4203,4352,4512,4655,4770,4866,4959,5056,5150,5243,5342,5448,5546,5623,5675,5718,5772,
+5850,5948,6042,6105,6132,6142,6152,6169,6199,6260,6361,6478,6565,6595,6583,6560,6546,6543,6553,6578,6616,
+6663,6710,6749,6776,6796,6825,6875,6942,7005,7040,7047,7044,7058,7099,7153,7201,7240,7287,7347,7405,7441,
+7453,7452,7451,7448,7445,7441,7418,7351,7238,7113,7016,6954,6907,6877,6899,7007,7197,7436,7688,7913,8063,
+8111,8086,8055,8042,8005,7909,7794,7742,7769,7808,7785,7701,7602,7531,7504,7524,7576,7612,7593,7527,7463,
+7423,7381,7314,7237,7190,7180,7177,7151,7099,7046,7012,6992,6966,6917,6853,6788,6728,6665,6599,6535,6469,
+6399,6346,6355,6449,6589,6689,6679,6552,6372,6218,6110,5986,5796,5596,5516,5617,5805,5935,5957,5935,5924,
+5917,5888,5849,5822,5801,5768,5730,5701,5680,5653,5624,5602,5580,5541,5493,5458,5438,5407,5335,5225,5111,
+5030,4998,4995,4988,4954,4895,4821,4735,4641,4558,4497,4447,4393,4342,4308,4285,4254,4215,4185,4167,4139,
+4093,4050,4024,4001,3961,3913,3878,3851,3811,3755,3702,3660,3617,3570,3531,3505,3474,3425,3381,3371,3390,
+3396,3351,3267,3184,3131,3104,3084,3057,3026,2994,2960,2922,2879,2838,2803,2774,2744,2704,2654,2607,2579,
+2577,2593,2609,2616,2612,2597,2571,2533,2488,2442,2405,2389,2393,2400,2381,2322,2242,2171,2128,2105,2079,
+2044,2007,1975,1942,1900,1851,1810,1782,1760,1740,1723,1708,1684,1649,1613,1592,1580,1563,1539,1520,1512,
+1514,1526,1551,1574,1567,1528,1490,1474,1459,1415,1349,1292,1254,1219,1185,1168,1173,1166,1122,1059,1010,
+983,958,936,940,971,989,958,895,849,835,827,798,759,743,757,772,765,742,719,705,698,
+697,700,702,694,683,680,686,688,678,660,641,625,613,607,600,574,529,483,456,442,423,
+392,358,326,295,264,239,219,197,168,135,101,67,39,22,12,-3,-26,-45,-53,-61,-73,
+-84,-86,-88,-101,-120,-131,-139,-163,-204,-238,-231,-179,-106,-50,-27,-21,-3,28,38,-13,-116,
+-221,-284,-310,-326,-345,-364,-382,-405,-434,-463,-492,-520,-549,-574,-593,-610,-632,-658,-688,-718,-743,
+-763,-780,-800,-820,-837,-853,-871,-889,-901,-908,-914,-924,-936,-948,-961,-975,-990,-1001,-1009,-1013,-1015,
+-1020,-1028,-1040,-1052,-1063,-1071,-1073,-1072,-1071,-1076,-1085,-1090,-1092,-1094,-1098,-1101,-1100,-1097,-1095,-1095,-1096,
+-1102,-1113,-1124,-1132,-1140,-1149,-1157,-1161,-1163,-1168,-1172,-1174,-1174,-1176,-1181,-1185,-1185,-1184,-1180,-1174,-1163,
+-1149,-1133,-1117,-1105,-1096,-1089,-1077,-1062,-1045,-1029,-1011,-993,-979,-966,-952,-937,-928,-925,-920,-913,-904,
+-899,-893,-883,-873,-868,-865,-860,-852,-847,-848,-850,-851,-853,-858,-863,-867,-871,-879,-890,-899,-904,
+-909,-916,-923,-930,-937,-946,-959,-974,-988,-1004,-1023,-1044,-1069,-1098,-1127,-1150,-1163,-1170,-1174,-1177,-1182,
+-1191,-1203,-1215,-1221,-1222,-1222,-1223,-1225,-1228,-1231,-1231,-1227,-1221,-1220,-1222,-1221,-1216,-1211,-1208,-1203,-1198,
+-1195,-1192,-1186,-1178,-1173,-1172,-1172,-1169,-1165,-1161,-1159,-1154,-1148,-1141,-1133,-1123,-1112,-1103,-1095,-1083,-1066,
+-1049,-1032,-1012,-990,-968,-947,-926,-901,-874,-847,-824,-800,-774,-745,-713,-683,-657,-632,-604,-572,-538,
+-503,-468,-434,-398,-358,-313,-268,-225,-180,-135,-90,-47,-1,40,61,56,42,25,-22,-122,-224,
+-219,-44,253,571,840,1049,1209,1355,1552,1844,2168,2379,2404,2342,2346,2441,2506,2446,2317,2247,2276,
+2322,2295,2200,2114,2104,2182,2314,2449,2537,2558,2536,2518,2536,2579,2621,2645,2659,2675,2690,2696,2691,
+2679,2663,2640,2612,2581,2544,2498,2445,2399,2365,2332,2284,2219,2149,2082,2011,1930,1847,1764,1669,1554,
+1438,1358,1336,1353,1364,1340,1289,1234,1188,1135,1051,940,826,730,646,560,469,381,295,204,110,
+21,-62,-152,-245,-324,-384,-448,-531,-605,-622,-572,-514,-531,-658,-858,-1048,-1163,-1185,-1156,-1134,-1153,
+-1210,-1275,-1324,-1347,-1345,-1328,-1318,-1333,-1372,-1411,-1434,-1450,-1485,-1549,-1632,-1723,-1823,-1931,-2024,-2077,-2089,
+-2090,-2100,-2105,-2086,-2050,-2022,-2010,-1998,-1973,-1946,-1923,-1891,-1838,-1778,-1739,-1731,-1732,-1712,-1660,-1586,-1525,
+-1509,-1541,-1588,-1609,-1600,-1587,-1587,-1586,-1570,-1542,-1511,-1473,-1419,-1357,-1296,-1234,-1169,-1126,-1140,-1201,-1242,
+-1202,-1093,-985,-929,-913,-893,-847,-796,-769,-773,-797,-829,-871,-932,-1007,-1076,-1120,-1138,-1142,-1141,-1135,
+-1123,-1113,-1108,-1106,-1102,-1095,-1086,-1073,-1054,-1035,-1019,-1003,-980,-954,-932,-914,-896,-874,-855,-841,-824,
+-800,-772,-749,-732,-716,-698,-682,-668,-653,-633,-609,-583,-555,-521,-484,-444,-402,-358,-313,-269,-223,
+-175,-129,-85,-38,16,79,145,207,263,313,363,412,457,495,534,580,632,681,721,755,789,
+826,864,898,925,946,965,986,1011,1039,1073,1112,1153,1189,1221,1255,1298,1342,1372,1380,1373,1361,
+1350,1342,1339,1340,1339,1334,1326,1318,1316,1322,1336,1350,1362,1370,1376,1381,1383,1382,1379,1372,1366,
+1365,1376,1389,1394,1392,1389,1387,1380,1363,1346,1344,1355,1367,1369,1365,1359,1351,1339,1325,1313,1300,
+1282,1265,1260,1263,1256,1226,1185,1161,1174,1185,1178,1127,1050,990,969,977,988,990,988,982,973,
+963,956,957,961,963,966,972,977,981,984,990,1000,1007,1011,1019,1033,1046,1055,1065,1082,1104,
+1123,1138,1157,1183,1209,1228,1250,1280,1316,1349,1379,1412,1444,1466,1486,1523,1586,1657,1715,1748,1756,
+1738,1694,1645,1621,1638,1682,1721,1722,1670,1574,1465,1375,1310,1249,1177,1101,1037,985,930,872,821,
+783,744,695,636,576,519,461,407,358,311,255,193,135,82,14,-87,-215,-337,-425,-479,-521,
+-569,-613,-632,-625,-616,-626,-638,-629,-616,-642,-716,-774,-754,-677,-633,-671,-757,-835,-904,-994,-1108,
+-1206,-1262,-1289,-1301,-1290,-1241,-1172,-1120,-1103,-1117,-1144,-1171,-1180,-1166,-1158,-1212,-1353,-1533,-1647,-1620,-1484,
+-1362,-1374,-1529,-1723,-1843,-1871,-1879,-1936,-2039,-2142,-2222,-2282,-2324,-2342,-2344,-2353,-2376,-2407,-2456,-2548,-2686,
+-2829,-2942,-3036,-3136,-3220,-3228,-3155,-3076,-3068,-3128,-3197,-3242,-3272,-3299,-3313,-3309,-3304,-3311,-3321,-3327,-3344,
+-3378,-3402,-3377,-3311,-3267,-3305,-3406,-3482,-3466,-3387,-3336,-3363,-3415,-3422,-3390,-3386,-3428,-3447,-3388,-3289,-3234,
+-3225,-3195,-3120,-3068,-3109,-3217,-3302,-3317,-3293,-3284,-3308,-3345,-3373,-3387,-3392,-3400,-3418,-3445,-3474,-3500,-3517,
+-3524,-3529,-3544,-3578,-3624,-3668,-3709,-3759,-3821,-3884,-3933,-3966,-3985,-3991,-3975,-3937,-3893,-3874,-3898,-3954,-4006,
+-4034,-4055,-4103,-4191,-4302,-4411,-4508,-4593,-4669,-4740,-4813,-4890,-4962,-5021,-5065,-5104,-5148,-5197,-5247,-5295,-5340,
+-5379,-5412,-5444,-5478,-5522,-5576,-5639,-5706,-5774,-5841,-5903,-5963,-6022,-6080,-6132,-6174,-6213,-6257,-6304,-6349,-6397,
+-6454,-6520,-6584,-6646,-6721,-6818,-6929,-7029,-7107,-7164,-7206,-7240,-7276,-7316,-7359,-7399,-7435,-7469,-7502,-7533,-7563,
+-7595,-7625,-7646,-7661,-7675,-7688,-7698,-7705,-7712,-7716,-7713,-7704,-7694,-7686,-7676,-7656,-7628,-7599,-7579,-7572,-7576,
+-7576,-7567,-7549,-7531,-7513,-7493,-7471,-7447,-7410,-7353,-7286,-7230,-7192,-7164,-7133,-7099,-7063,-7023,-6984,-6954,-6938,
+-6925,-6905,-6872,-6814,-6722,-6612,-6524,-6483,-6474,-6469,-6462,-6449,-6401,-6291,-6147,-6031,-5974,-5943,-5896,-5819,-5724,
+-5614,-5498,-5399,-5333,-5286,-5224,-5141,-5046,-4942,-4814,-4664,-4519,-4408,-4339,-4292,-4224,-4105,-3945,-3797,-3705,-3651,
+-3581,-3474,-3365,-3289,-3226,-3138,-3018,-2889,-2763,-2632,-2501,-2389,-2304,-2233,-2168,-2113,-2061,-1986,-1873,-1742,-1624,
+-1525,-1428,-1319,-1200,-1073,-938,-809,-705,-625,-555,-504,-510,-591,-706,-790,-821,-823,-813,-768,-669,-542,
+-426,-335,-253,-177,-122,-89,-51,13,87,134,147,164,230,346,469,565,642,751,919,1111,1253,
+1300,1272,1227,1213,1244,1314,1405,1502,1595,1689,1782,1862,1923,1976,2034,2091,2135,2187,2295,2480,2709,
+2936,3154,3380,3605,3786,3888,3907,3844,3695,3474,3232,3023,2861,2722,2602,2537,2563,2681,2867,3093,3332,
+3532,3636,3622,3535,3448,3411,3418,3444,3475,3529,3628,3771,3936,4091,4220,4326,4428,4539,4659,4773,4865,
+4933,4997,5073,5162,5253,5340,5426,5512,5589,5653,5705,5753,5809,5880,5966,6047,6102,6125,6133,6145,6162,
+6186,6233,6319,6430,6519,6551,6532,6498,6476,6472,6484,6514,6557,6604,6646,6683,6718,6757,6799,6846,6900,
+6952,6985,6990,6986,7004,7059,7129,7184,7219,7255,7307,7368,7416,7443,7451,7446,7432,7416,7394,7348,7257,
+7136,7029,6965,6927,6881,6827,6811,6875,7020,7222,7450,7669,7827,7896,7909,7936,7995,8026,7968,7848,7760,
+7751,7774,7757,7679,7577,7494,7448,7443,7460,7469,7449,7411,7383,7362,7324,7265,7212,7193,7192,7175,7125,
+7062,7015,6993,6976,6940,6879,6810,6753,6703,6640,6559,6478,6407,6343,6287,6270,6331,6474,6633,6708,6636,
+6456,6272,6148,6039,5868,5655,5531,5593,5784,5954,6018,6007,5984,5965,5935,5899,5867,5838,5803,5772,5754,
+5742,5721,5697,5680,5663,5628,5576,5530,5508,5491,5448,5361,5247,5141,5072,5040,5026,5009,4979,4933,4862,
+4772,4682,4612,4554,4492,4431,4386,4358,4329,4287,4241,4200,4163,4131,4111,4097,4065,4004,3942,3906,3886,
+3849,3791,3739,3704,3669,3623,3579,3552,3528,3484,3433,3410,3424,3438,3410,3342,3277,3240,3218,3186,3139,
+3091,3049,3010,2973,2940,2911,2880,2847,2814,2781,2741,2697,2663,2657,2671,2686,2690,2684,2674,2654,2620,
+2571,2517,2467,2432,2412,2396,2366,2311,2242,2185,2154,2142,2125,2090,2046,2005,1966,1922,1874,1834,1806,
+1782,1757,1737,1721,1697,1657,1616,1590,1576,1557,1531,1513,1513,1522,1535,1555,1574,1570,1539,1506,1493,
+1481,1440,1377,1322,1286,1251,1208,1177,1167,1153,1110,1051,1009,990,968,930,894,880,877,865,842,
+825,822,815,789,754,731,730,736,733,716,697,683,676,671,667,661,655,653,658,663,659,
+644,625,607,591,580,576,574,558,518,467,428,407,392,369,337,301,265,236,216,202,183,
+156,122,86,49,17,-2,-14,-27,-47,-69,-86,-100,-114,-122,-124,-126,-136,-151,-163,-173,-192,
+-222,-254,-270,-259,-225,-187,-152,-106,-30,60,109,70,-41,-164,-249,-297,-330,-359,-381,-397,-418,
+-444,-474,-504,-536,-565,-587,-605,-621,-641,-663,-689,-715,-737,-753,-769,-789,-810,-828,-843,-861,-880,
+-893,-898,-904,-914,-925,-935,-944,-956,-969,-981,-991,-1000,-1007,-1011,-1015,-1020,-1029,-1037,-1044,-1047,-1046,
+-1047,-1052,-1059,-1064,-1067,-1072,-1080,-1086,-1085,-1081,-1077,-1076,-1077,-1082,-1090,-1098,-1102,-1106,-1113,-1119,-1123,
+-1126,-1130,-1135,-1137,-1138,-1138,-1140,-1142,-1144,-1145,-1144,-1139,-1130,-1119,-1105,-1091,-1077,-1066,-1057,-1044,-1028,
+-1010,-991,-972,-953,-938,-926,-913,-898,-889,-885,-882,-876,-869,-864,-860,-852,-843,-836,-832,-826,-818,
+-814,-815,-819,-822,-825,-831,-837,-841,-843,-847,-856,-868,-877,-886,-893,-902,-910,-919,-930,-942,-956,
+-972,-990,-1010,-1032,-1057,-1085,-1113,-1134,-1146,-1152,-1155,-1160,-1168,-1179,-1190,-1199,-1204,-1206,-1209,-1211,-1213,
+-1214,-1216,-1215,-1211,-1204,-1202,-1202,-1202,-1198,-1194,-1192,-1189,-1183,-1176,-1171,-1164,-1155,-1147,-1145,-1146,-1144,
+-1140,-1137,-1137,-1134,-1126,-1117,-1109,-1102,-1094,-1086,-1079,-1069,-1055,-1037,-1016,-994,-973,-951,-929,-908,-886,
+-861,-835,-811,-787,-761,-733,-704,-676,-649,-621,-593,-567,-537,-499,-460,-428,-399,-366,-323,-278,-234,
+-186,-137,-94,-59,-17,31,66,68,57,56,38,-43,-168,-234,-151,70,350,624,867,1074,1264,
+1495,1807,2136,2345,2381,2345,2379,2495,2588,2592,2559,2562,2589,2565,2461,2327,2228,2197,2235,2333,2456,
+2553,2590,2581,2569,2586,2625,2660,2681,2695,2715,2736,2743,2728,2697,2665,2642,2628,2614,2588,2543,2488,
+2439,2409,2386,2349,2293,2227,2162,2095,2023,1953,1884,1801,1691,1572,1485,1455,1463,1465,1432,1377,1325,
+1282,1228,1139,1024,911,816,730,636,537,445,361,271,172,75,-19,-118,-218,-301,-363,-424,-498,
+-555,-549,-479,-418,-448,-589,-786,-959,-1062,-1095,-1092,-1093,-1117,-1160,-1208,-1250,-1278,-1287,-1280,-1272,-1284,
+-1314,-1344,-1359,-1375,-1419,-1498,-1595,-1695,-1796,-1898,-1983,-2025,-2027,-2020,-2025,-2027,-2010,-1979,-1958,-1952,-1941,
+-1917,-1892,-1871,-1836,-1777,-1712,-1675,-1670,-1668,-1639,-1582,-1520,-1486,-1502,-1562,-1628,-1662,-1662,-1652,-1648,-1635,
+-1598,-1551,-1511,-1473,-1419,-1347,-1275,-1212,-1162,-1137,-1163,-1230,-1279,-1249,-1142,-1022,-946,-920,-908,-885,-854,
+-838,-844,-870,-911,-967,-1034,-1098,-1139,-1150,-1144,-1141,-1145,-1148,-1142,-1130,-1119,-1110,-1100,-1088,-1075,-1061,
+-1044,-1026,-1011,-996,-976,-953,-933,-918,-904,-885,-866,-850,-833,-810,-783,-760,-743,-728,-713,-699,-687,
+-674,-655,-631,-605,-578,-547,-511,-468,-423,-378,-334,-289,-243,-196,-150,-104,-56,-4,55,120,186,
+250,307,358,402,438,472,509,551,598,643,684,722,758,793,826,855,882,905,930,957,986,
+1014,1044,1080,1120,1156,1189,1223,1265,1309,1341,1354,1350,1336,1322,1315,1314,1314,1312,1307,1301,1295,
+1291,1294,1306,1322,1335,1345,1351,1353,1351,1346,1340,1335,1332,1336,1349,1363,1370,1369,1371,1376,1371,
+1351,1328,1325,1339,1352,1349,1334,1321,1314,1306,1295,1284,1276,1269,1266,1271,1272,1254,1216,1182,1174,
+1147,1163,1152,1100,1032,988,980,993,1003,1004,1000,995,989,981,977,976,977,979,982,987,992,
+994,998,1007,1021,1034,1042,1052,1067,1084,1097,1110,1127,1147,1164,1177,1193,1216,1243,1270,1298,1331,
+1365,1398,1432,1467,1498,1517,1532,1562,1615,1680,1742,1789,1807,1783,1723,1661,1640,1669,1720,1758,1762,
+1722,1640,1537,1444,1373,1311,1244,1174,1113,1056,992,927,874,837,799,748,690,633,577,520,464,
+416,369,313,250,191,138,70,-30,-159,-280,-363,-407,-438,-478,-520,-538,-523,-495,-481,-485,-497,
+-528,-599,-693,-748,-718,-640,-600,-638,-710,-768,-827,-932,-1077,-1200,-1257,-1265,-1260,-1247,-1213,-1168,-1139,
+-1134,-1135,-1138,-1156,-1187,-1203,-1189,-1191,-1282,-1474,-1674,-1759,-1694,-1574,-1531,-1611,-1741,-1829,-1854,-1873,-1938,
+-2044,-2152,-2239,-2303,-2338,-2345,-2340,-2347,-2364,-2379,-2403,-2468,-2571,-2671,-2744,-2829,-2963,-3105,-3158,-3095,-3002,
+-2979,-3034,-3103,-3146,-3180,-3217,-3243,-3245,-3240,-3251,-3266,-3266,-3263,-3287,-3332,-3358,-3338,-3304,-3310,-3358,-3388,
+-3346,-3262,-3225,-3278,-3363,-3391,-3353,-3319,-3333,-3355,-3325,-3247,-3177,-3130,-3079,-3019,-3000,-3060,-3165,-3243,-3262,
+-3251,-3249,-3265,-3286,-3305,-3321,-3336,-3350,-3365,-3388,-3418,-3451,-3477,-3488,-3489,-3494,-3521,-3565,-3614,-3660,-3710,
+-3768,-3828,-3878,-3913,-3935,-3947,-3940,-3906,-3853,-3809,-3803,-3833,-3872,-3897,-3916,-3958,-4040,-4154,-4279,-4400,-4503,
+-4584,-4649,-4717,-4797,-4876,-4935,-4973,-5006,-5051,-5106,-5161,-5204,-5237,-5263,-5287,-5317,-5360,-5417,-5484,-5553,-5622,
+-5686,-5746,-5800,-5855,-5918,-5985,-6042,-6086,-6125,-6170,-6217,-6261,-6306,-6362,-6430,-6498,-6564,-6642,-6738,-6843,-6939,
+-7014,-7070,-7114,-7152,-7191,-7231,-7271,-7306,-7339,-7371,-7402,-7431,-7463,-7498,-7528,-7548,-7562,-7577,-7593,-7603,-7607,
+-7612,-7619,-7620,-7613,-7602,-7594,-7585,-7568,-7541,-7515,-7501,-7504,-7512,-7511,-7497,-7479,-7467,-7459,-7446,-7426,-7398,
+-7354,-7291,-7220,-7160,-7118,-7084,-7053,-7030,-7013,-6992,-6967,-6944,-6929,-6916,-6899,-6871,-6816,-6726,-6620,-6535,-6491,
+-6471,-6457,-6454,-6451,-6404,-6283,-6127,-6012,-5967,-5946,-5899,-5813,-5705,-5589,-5481,-5405,-5367,-5338,-5280,-5187,-5076,
+-4956,-4824,-4686,-4556,-4447,-4360,-4289,-4218,-4118,-3985,-3859,-3779,-3729,-3657,-3543,-3428,-3349,-3286,-3196,-3071,-2933,
+-2799,-2669,-2547,-2447,-2373,-2315,-2265,-2221,-2168,-2080,-1955,-1820,-1701,-1598,-1496,-1386,-1266,-1126,-967,-817,-700,
+-604,-501,-408,-385,-467,-604,-711,-757,-777,-798,-799,-748,-658,-571,-505,-443,-374,-316,-284,-262,-217,
+-143,-63,8,85,188,308,413,480,534,628,788,970,1095,1118,1071,1021,1009,1029,1063,1100,1147,
+1208,1285,1371,1452,1515,1569,1627,1691,1752,1819,1930,2105,2317,2523,2717,2936,3196,3452,3636,3708,3670,
+3542,3358,3169,3008,2868,2723,2583,2509,2550,2692,2875,3053,3208,3326,3382,3371,3328,3309,3342,3416,3510,
+3613,3734,3876,4038,4202,4352,4475,4575,4666,4758,4850,4925,4978,5018,5067,5138,5222,5307,5383,5454,5526,
+5596,5663,5723,5778,5832,5892,5963,6034,6084,6104,6110,6122,6144,6169,6206,6276,6377,6470,6511,6493,6449,
+6417,6408,6420,6448,6487,6526,6560,6594,6638,6694,6751,6802,6850,6894,6920,6919,6912,6935,7002,7083,7142,
+7175,7207,7259,7324,7384,7429,7449,7438,7404,7366,7330,7278,7193,7092,7020,6991,6971,6920,6845,6798,6817,
+6907,7048,7222,7399,7532,7595,7624,7690,7817,7939,7977,7923,7844,7795,7771,7732,7664,7584,7515,7466,7434,
+7411,7381,7340,7306,7295,7298,7288,7259,7227,7202,7172,7121,7060,7013,6992,6979,6946,6880,6799,6736,6708,
+6693,6659,6592,6512,6440,6374,6299,6224,6186,6221,6323,6423,6445,6372,6272,6211,6164,6045,5842,5669,5655,
+5796,5967,6058,6061,6026,5982,5932,5882,5845,5823,5813,5816,5829,5833,5814,5781,5757,5741,5712,5659,5602,
+5564,5544,5521,5472,5394,5298,5201,5120,5062,5029,5013,4995,4956,4892,4821,4757,4695,4621,4540,4474,4434,
+4408,4374,4322,4260,4204,4171,4160,4149,4107,4035,3968,3932,3910,3872,3818,3773,3746,3716,3669,3621,3593,
+3574,3543,3507,3497,3522,3543,3521,3457,3393,3350,3314,3266,3211,3164,3121,3075,3028,2994,2972,2945,2908,
+2874,2851,2827,2792,2757,2742,2747,2752,2743,2729,2718,2707,2681,2638,2587,2537,2492,2451,2412,2366,2308,
+2243,2188,2160,2152,2145,2120,2079,2033,1987,1939,1891,1854,1830,1807,1779,1750,1724,1695,1653,1612,1584,
+1565,1539,1508,1493,1503,1521,1536,1550,1564,1563,1540,1516,1506,1495,1456,1398,1353,1331,1305,1257,1203,
+1164,1131,1086,1036,1003,987,967,925,877,842,826,818,810,802,798,793,780,756,730,712,706,
+705,701,691,681,671,657,639,621,613,620,633,639,629,605,582,566,555,546,540,536,524,
+491,441,396,368,355,339,311,274,237,208,190,176,157,129,96,63,31,0,-24,-41,-55,
+-72,-94,-117,-137,-152,-162,-166,-169,-173,-179,-191,-207,-228,-249,-271,-289,-298,-292,-277,-254,-208,
+-122,-10,70,68,-12,-118,-206,-270,-321,-363,-390,-409,-428,-452,-481,-515,-550,-581,-604,-621,-639,
+-657,-675,-695,-717,-735,-749,-762,-780,-800,-816,-829,-847,-868,-883,-892,-901,-913,-924,-929,-934,-943,
+-953,-963,-975,-989,-999,-1002,-1000,-1002,-1008,-1016,-1023,-1026,-1029,-1031,-1035,-1038,-1040,-1043,-1050,-1061,-1070,
+-1071,-1066,-1062,-1061,-1061,-1065,-1071,-1076,-1076,-1075,-1076,-1080,-1085,-1090,-1096,-1102,-1105,-1105,-1103,-1101,-1099,
+-1100,-1101,-1101,-1096,-1088,-1079,-1071,-1060,-1047,-1036,-1026,-1012,-995,-976,-958,-939,-921,-906,-894,-882,-868,
+-857,-852,-847,-841,-834,-830,-826,-820,-811,-805,-800,-794,-787,-783,-785,-790,-794,-798,-803,-809,-814,
+-816,-818,-824,-834,-844,-854,-864,-876,-887,-899,-910,-922,-936,-954,-975,-996,-1019,-1044,-1071,-1097,-1116,
+-1126,-1130,-1135,-1144,-1154,-1164,-1171,-1176,-1179,-1184,-1190,-1196,-1198,-1197,-1197,-1196,-1193,-1188,-1186,-1185,-1182,
+-1179,-1176,-1176,-1174,-1168,-1159,-1150,-1141,-1131,-1123,-1121,-1122,-1121,-1115,-1111,-1111,-1109,-1103,-1093,-1086,-1082,
+-1078,-1070,-1061,-1052,-1041,-1024,-1002,-979,-958,-936,-914,-892,-870,-846,-821,-797,-773,-748,-721,-696,-674,
+-647,-614,-581,-556,-530,-496,-455,-422,-395,-364,-323,-281,-242,-196,-143,-95,-62,-27,21,63,75,
+72,82,89,38,-79,-189,-197,-78,130,386,659,919,1157,1409,1710,2017,2232,2318,2350,2422,2537,
+2644,2731,2833,2933,2950,2838,2651,2486,2385,2333,2326,2378,2483,2585,2634,2632,2615,2615,2631,2649,2665,
+2688,2726,2772,2799,2787,2740,2686,2651,2637,2627,2608,2574,2527,2479,2442,2415,2385,2344,2293,2242,2192,
+2139,2085,2029,1954,1849,1728,1634,1593,1591,1585,1551,1497,1445,1397,1330,1230,1112,1005,917,828,723,
+611,512,425,332,226,120,19,-81,-183,-270,-338,-400,-464,-501,-473,-394,-342,-389,-533,-707,-847,
+-933,-984,-1023,-1062,-1097,-1126,-1152,-1182,-1213,-1235,-1242,-1240,-1247,-1262,-1275,-1281,-1303,-1368,-1475,-1595,-1703,
+-1798,-1886,-1954,-1982,-1968,-1940,-1922,-1913,-1899,-1886,-1883,-1883,-1872,-1851,-1834,-1820,-1786,-1721,-1651,-1614,-1607,
+-1600,-1569,-1523,-1487,-1481,-1515,-1579,-1644,-1677,-1679,-1673,-1671,-1652,-1597,-1523,-1463,-1423,-1379,-1315,-1245,-1187,
+-1149,-1138,-1167,-1234,-1293,-1283,-1189,-1058,-955,-910,-904,-906,-901,-897,-907,-937,-985,-1046,-1108,-1155,-1173,
+-1166,-1150,-1143,-1144,-1144,-1135,-1121,-1110,-1102,-1093,-1079,-1064,-1050,-1034,-1018,-1002,-988,-972,-954,-938,-924,
+-910,-893,-873,-855,-839,-821,-799,-777,-759,-745,-730,-714,-699,-684,-665,-642,-618,-593,-565,-528,-484,
+-440,-397,-353,-308,-263,-219,-174,-127,-78,-26,29,90,156,223,286,341,387,423,457,492,530,
+568,606,645,686,723,753,778,802,825,852,885,922,958,988,1015,1047,1084,1123,1161,1199,1240,
+1280,1311,1325,1321,1306,1290,1283,1283,1283,1280,1275,1272,1269,1265,1265,1273,1284,1293,1298,1304,1310,
+1310,1306,1301,1300,1302,1308,1319,1329,1334,1335,1343,1355,1356,1338,1316,1311,1326,1336,1326,1301,1282,
+1274,1271,1268,1264,1262,1264,1267,1266,1251,1215,1170,1143,1147,1089,1102,1091,1054,1014,995,999,1010,
+1016,1015,1014,1012,1008,1003,997,994,992,993,996,1001,1006,1011,1019,1030,1046,1061,1073,1085,1102,
+1121,1139,1155,1171,1188,1203,1215,1229,1250,1277,1307,1337,1366,1396,1427,1466,1509,1544,1563,1577,1605,
+1653,1712,1773,1828,1852,1825,1757,1700,1699,1743,1788,1803,1791,1758,1697,1609,1514,1433,1366,1301,1236,
+1178,1120,1055,988,933,893,853,802,744,689,634,576,519,470,424,371,311,252,196,128,28,
+-96,-217,-301,-341,-361,-386,-417,-430,-411,-375,-352,-360,-396,-458,-548,-643,-694,-672,-614,-587,-619,
+-675,-725,-791,-908,-1057,-1173,-1216,-1211,-1201,-1191,-1171,-1148,-1147,-1163,-1168,-1162,-1178,-1228,-1263,-1225,-1148,
+-1149,-1311,-1577,-1788,-1835,-1753,-1667,-1663,-1723,-1785,-1822,-1865,-1946,-2060,-2179,-2280,-2348,-2375,-2365,-2348,-2347,
+-2355,-2357,-2367,-2414,-2489,-2544,-2569,-2629,-2781,-2975,-3081,-3043,-2942,-2898,-2940,-3008,-3056,-3095,-3139,-3172,-3176,
+-3171,-3181,-3200,-3200,-3188,-3200,-3251,-3309,-3333,-3324,-3317,-3330,-3335,-3304,-3252,-3234,-3276,-3336,-3347,-3296,-3243,
+-3237,-3261,-3260,-3209,-3132,-3058,-3002,-2979,-3006,-3077,-3153,-3194,-3199,-3197,-3209,-3228,-3243,-3256,-3272,-3291,-3309,
+-3326,-3345,-3369,-3397,-3422,-3437,-3442,-3450,-3474,-3516,-3563,-3606,-3648,-3700,-3759,-3813,-3854,-3885,-3909,-3919,-3895,
+-3832,-3758,-3714,-3719,-3759,-3800,-3830,-3865,-3928,-4028,-4158,-4295,-4413,-4497,-4558,-4622,-4700,-4779,-4838,-4877,-4914,
+-4963,-5019,-5068,-5100,-5119,-5133,-5151,-5187,-5246,-5322,-5400,-5469,-5530,-5587,-5644,-5701,-5763,-5831,-5898,-5953,-5992,
+-6027,-6068,-6112,-6153,-6200,-6263,-6339,-6415,-6488,-6569,-6665,-6767,-6857,-6928,-6981,-7023,-7062,-7101,-7141,-7177,-7209,
+-7243,-7276,-7307,-7334,-7365,-7401,-7432,-7451,-7465,-7481,-7497,-7505,-7505,-7509,-7518,-7521,-7514,-7503,-7497,-7490,-7476,
+-7451,-7428,-7419,-7426,-7435,-7432,-7417,-7402,-7396,-7395,-7388,-7368,-7333,-7278,-7210,-7143,-7092,-7054,-7018,-6988,-6974,
+-6973,-6971,-6956,-6935,-6914,-6895,-6876,-6848,-6792,-6702,-6599,-6520,-6480,-6460,-6448,-6450,-6450,-6396,-6263,-6102,-5996,
+-5966,-5953,-5902,-5808,-5695,-5583,-5488,-5429,-5403,-5374,-5310,-5208,-5088,-4959,-4823,-4692,-4579,-4480,-4385,-4296,-4214,
+-4122,-4013,-3911,-3843,-3791,-3708,-3586,-3470,-3394,-3336,-3246,-3114,-2966,-2828,-2707,-2603,-2520,-2455,-2400,-2354,-2311,
+-2249,-2145,-2010,-1876,-1761,-1657,-1555,-1454,-1343,-1199,-1023,-853,-723,-613,-490,-375,-343,-430,-575,-679,-709,
+-707,-720,-736,-722,-677,-628,-586,-537,-476,-425,-408,-409,-386,-313,-205,-87,26,139,249,341,405,
+459,540,666,807,902,915,880,855,870,901,918,922,939,988,1064,1148,1223,1282,1334,1394,1461,
+1522,1580,1665,1800,1965,2119,2264,2456,2726,3027,3261,3365,3348,3261,3158,3072,3001,2910,2774,2626,2552,
+2607,2755,2906,3006,3062,3107,3150,3191,3239,3313,3415,3535,3666,3807,3958,4111,4260,4400,4526,4632,4720,
+4799,4873,4938,4987,5021,5054,5103,5174,5255,5330,5393,5451,5514,5583,5654,5718,5774,5826,5883,5952,6020,
+6066,6078,6072,6075,6097,6128,6164,6222,6313,6409,6462,6452,6407,6370,6361,6376,6402,6434,6467,6498,6533,
+6580,6642,6706,6763,6812,6850,6863,6846,6829,6852,6923,7007,7066,7104,7145,7205,7275,7345,7406,7440,7430,
+7379,7320,7273,7226,7161,7091,7050,7043,7034,6987,6915,6857,6841,6868,6931,7031,7148,7244,7296,7333,7416,
+7570,7750,7879,7921,7897,7847,7793,7741,7689,7635,7575,7509,7446,7394,7349,7307,7275,7264,7269,7272,7259,
+7231,7188,7130,7067,7019,6996,6984,6950,6879,6789,6721,6706,6740,6778,6774,6720,6638,6559,6486,6405,6300,
+6180,6079,6041,6069,6120,6151,6177,6242,6326,6335,6206,6010,5889,5909,6005,6071,6067,6014,5938,5853,5777,
+5736,5736,5768,5818,5865,5885,5866,5825,5795,5785,5772,5734,5677,5626,5594,5575,5554,5519,5454,5357,5241,
+5138,5072,5043,5030,5010,4977,4942,4905,4854,4777,4680,4589,4525,4487,4455,4407,4341,4272,4223,4196,4170,
+4123,4059,4002,3967,3940,3904,3863,3830,3801,3760,3706,3655,3622,3604,3592,3600,3642,3703,3733,3696,3611,
+3524,3457,3398,3335,3280,3244,3209,3155,3091,3046,3024,3000,2963,2930,2914,2901,2871,2831,2806,2800,2792,
+2771,2749,2738,2731,2714,2681,2642,2602,2558,2509,2456,2396,2328,2256,2192,2153,2140,2136,2123,2092,2050,
+2003,1955,1910,1875,1851,1828,1797,1759,1721,1682,1642,1610,1589,1564,1523,1480,1466,1487,1517,1534,1542,
+1550,1551,1536,1519,1513,1504,1469,1416,1378,1364,1344,1292,1219,1155,1107,1067,1030,1003,983,957,917,
+872,837,816,805,796,785,774,769,767,758,733,703,684,680,684,684,678,666,644,613,585,
+576,585,600,603,586,556,530,519,517,514,506,497,483,457,416,372,342,324,308,282,246,
+211,182,163,148,128,100,67,37,10,-16,-44,-69,-88,-104,-124,-147,-167,-182,-193,-204,-212,
+-213,-211,-219,-239,-263,-280,-293,-308,-322,-331,-335,-337,-319,-256,-150,-50,-13,-48,-121,-197,-263,
+-322,-369,-401,-422,-440,-462,-488,-522,-559,-591,-615,-636,-657,-677,-693,-708,-725,-741,-752,-763,-779,
+-796,-808,-819,-836,-856,-873,-884,-898,-912,-923,-926,-928,-935,-943,-951,-961,-976,-987,-989,-985,-985,
+-992,-1001,-1009,-1014,-1018,-1022,-1024,-1022,-1020,-1021,-1029,-1041,-1051,-1053,-1050,-1045,-1042,-1042,-1044,-1049,-1053,
+-1052,-1047,-1044,-1043,-1047,-1054,-1063,-1070,-1072,-1071,-1069,-1066,-1062,-1059,-1058,-1056,-1051,-1043,-1036,-1029,-1020,
+-1009,-1000,-990,-976,-958,-940,-923,-907,-891,-877,-865,-853,-841,-830,-822,-817,-810,-804,-799,-795,-788,
+-780,-774,-770,-764,-758,-755,-757,-762,-768,-772,-776,-781,-787,-791,-795,-799,-805,-814,-824,-835,-849,
+-863,-876,-887,-898,-914,-934,-956,-979,-1002,-1027,-1056,-1081,-1099,-1105,-1107,-1112,-1123,-1136,-1145,-1149,-1149,
+-1150,-1155,-1162,-1170,-1174,-1175,-1174,-1173,-1172,-1170,-1169,-1167,-1163,-1158,-1155,-1155,-1155,-1150,-1140,-1129,-1119,
+-1109,-1102,-1101,-1103,-1102,-1094,-1085,-1082,-1081,-1077,-1069,-1064,-1062,-1058,-1050,-1039,-1031,-1022,-1007,-986,-965,
+-944,-923,-901,-878,-855,-831,-805,-782,-759,-734,-707,-684,-666,-643,-608,-570,-541,-518,-488,-453,-420,
+-392,-358,-316,-276,-243,-204,-149,-94,-55,-21,22,66,88,92,106,126,106,21,-93,-166,-151,
+-37,171,452,752,1031,1298,1581,1866,2099,2261,2387,2511,2624,2731,2879,3085,3255,3263,3093,2868,2708,
+2619,2545,2480,2473,2539,2626,2671,2663,2633,2610,2600,2604,2622,2660,2722,2795,2847,2846,2797,2736,2693,
+2669,2648,2624,2599,2571,2533,2489,2449,2416,2383,2348,2314,2287,2259,2224,2172,2093,1984,1864,1770,1725,
+1716,1708,1677,1629,1575,1513,1428,1318,1202,1105,1024,932,817,693,586,492,392,281,172,74,-21,
+-122,-218,-297,-368,-432,-461,-427,-352,-315,-373,-512,-663,-773,-843,-900,-962,-1020,-1062,-1084,-1098,-1120,
+-1152,-1181,-1195,-1198,-1201,-1207,-1211,-1217,-1252,-1341,-1477,-1618,-1732,-1814,-1879,-1927,-1942,-1916,-1867,-1822,-1793,
+-1784,-1793,-1811,-1821,-1809,-1788,-1778,-1772,-1738,-1672,-1604,-1569,-1563,-1555,-1532,-1506,-1494,-1501,-1529,-1580,-1634,
+-1664,-1666,-1663,-1668,-1654,-1590,-1488,-1398,-1348,-1320,-1282,-1229,-1181,-1151,-1146,-1177,-1246,-1317,-1327,-1239,-1090,
+-959,-899,-902,-922,-926,-920,-927,-963,-1024,-1093,-1148,-1178,-1181,-1168,-1154,-1145,-1137,-1125,-1109,-1095,-1087,
+-1083,-1077,-1067,-1055,-1044,-1030,-1014,-995,-978,-962,-948,-935,-922,-907,-889,-869,-850,-835,-822,-807,-789,
+-774,-761,-747,-728,-707,-687,-667,-646,-625,-603,-576,-540,-497,-456,-416,-374,-327,-280,-236,-193,-146,
+-94,-42,9,65,125,188,250,309,361,404,441,478,514,547,579,615,654,690,717,737,757,
+779,807,843,886,927,960,987,1016,1050,1089,1129,1168,1208,1246,1275,1291,1290,1275,1259,1250,1250,
+1251,1250,1248,1246,1241,1234,1230,1232,1234,1234,1235,1244,1258,1266,1267,1267,1273,1282,1291,1300,1307,
+1311,1314,1323,1335,1338,1324,1307,1304,1316,1321,1305,1274,1249,1239,1240,1244,1247,1248,1246,1240,1224,
+1193,1147,1103,1082,1089,1054,1055,1047,1031,1020,1020,1026,1028,1026,1026,1027,1027,1025,1020,1015,1010,
+1009,1011,1015,1019,1026,1035,1047,1060,1074,1088,1102,1117,1135,1156,1177,1195,1210,1224,1237,1250,1266,
+1287,1314,1343,1371,1395,1418,1447,1490,1540,1581,1603,1620,1651,1697,1748,1803,1857,1883,1854,1787,1745,
+1770,1832,1868,1857,1827,1802,1764,1691,1593,1500,1422,1352,1286,1227,1173,1112,1048,991,946,904,854,
+799,746,691,631,573,522,475,424,367,310,252,184,91,-25,-142,-229,-274,-289,-300,-313,-312,
+-289,-259,-250,-277,-332,-402,-483,-562,-612,-616,-592,-581,-606,-654,-715,-798,-914,-1036,-1116,-1139,-1134,
+-1132,-1134,-1127,-1122,-1140,-1174,-1195,-1203,-1234,-1300,-1341,-1280,-1140,-1061,-1175,-1459,-1748,-1881,-1839,-1730,-1667,
+-1681,-1736,-1798,-1870,-1964,-2081,-2201,-2308,-2382,-2410,-2399,-2376,-2366,-2364,-2356,-2357,-2392,-2445,-2467,-2451,-2480,
+-2631,-2855,-3005,-2990,-2883,-2820,-2854,-2933,-2994,-3033,-3068,-3093,-3094,-3085,-3092,-3116,-3133,-3138,-3150,-3186,-3231,
+-3261,-3268,-3267,-3273,-3282,-3282,-3271,-3264,-3269,-3276,-3260,-3217,-3174,-3165,-3188,-3206,-3181,-3111,-3033,-2992,-3008,
+-3065,-3126,-3156,-3149,-3134,-3136,-3158,-3187,-3210,-3227,-3244,-3263,-3282,-3300,-3315,-3328,-3342,-3359,-3378,-3394,-3411,
+-3437,-3473,-3511,-3546,-3581,-3627,-3685,-3744,-3791,-3829,-3865,-3894,-3892,-3837,-3747,-3669,-3644,-3676,-3731,-3778,-3810,
+-3853,-3934,-4060,-4205,-4329,-4413,-4471,-4532,-4606,-4679,-4736,-4782,-4830,-4883,-4930,-4962,-4980,-4991,-5003,-5026,-5071,
+-5143,-5229,-5310,-5375,-5427,-5481,-5542,-5608,-5679,-5750,-5813,-5861,-5894,-5926,-5961,-5998,-6038,-6091,-6165,-6251,-6334,
+-6412,-6496,-6592,-6691,-6777,-6843,-6891,-6928,-6964,-7001,-7039,-7072,-7105,-7142,-7180,-7213,-7240,-7270,-7306,-7337,-7356,
+-7371,-7388,-7401,-7404,-7403,-7407,-7416,-7418,-7411,-7402,-7399,-7394,-7379,-7357,-7341,-7337,-7344,-7351,-7349,-7339,-7329,
+-7327,-7327,-7321,-7299,-7255,-7190,-7120,-7065,-7033,-7009,-6980,-6953,-6945,-6954,-6957,-6941,-6913,-6886,-6865,-6844,-6812,
+-6749,-6649,-6541,-6466,-6436,-6431,-6437,-6450,-6450,-6387,-6245,-6087,-5993,-5971,-5956,-5896,-5798,-5693,-5595,-5513,-5457,
+-5424,-5382,-5306,-5200,-5080,-4954,-4825,-4708,-4615,-4529,-4431,-4321,-4213,-4111,-4012,-3934,-3884,-3834,-3743,-3614,-3501,
+-3434,-3378,-3284,-3143,-2988,-2852,-2742,-2656,-2588,-2530,-2478,-2433,-2384,-2307,-2188,-2049,-1923,-1820,-1720,-1620,-1525,
+-1420,-1273,-1087,-906,-769,-655,-531,-422,-399,-488,-622,-704,-705,-671,-653,-654,-648,-624,-590,-547,-489,
+-423,-376,-367,-377,-364,-297,-186,-64,40,126,203,280,350,406,458,521,593,647,661,653,669,
+724,790,827,841,868,935,1029,1120,1189,1240,1288,1347,1414,1475,1526,1589,1684,1794,1885,1968,2104,
+2338,2624,2858,2970,2979,2950,2938,2956,2973,2941,2840,2718,2662,2718,2836,2925,2947,2941,2966,3043,3155,
+3286,3424,3562,3696,3831,3974,4120,4261,4390,4508,4615,4707,4786,4855,4913,4956,4986,5013,5050,5106,5180,
+5262,5336,5395,5444,5499,5565,5634,5695,5749,5803,5866,5937,6002,6042,6042,6020,6009,6028,6065,6104,6154,
+6232,6324,6386,6389,6351,6319,6317,6337,6365,6394,6428,6465,6507,6557,6614,6672,6726,6773,6803,6800,6767,
+6741,6763,6834,6915,6975,7021,7077,7148,7223,7295,7365,7412,7410,7355,7284,7228,7184,7136,7090,7066,7064,
+7058,7029,6985,6944,6913,6890,6885,6912,6967,7022,7061,7099,7173,7301,7465,7621,7731,7780,7778,7754,7733,
+7721,7696,7634,7541,7448,7384,7350,7326,7298,7270,7248,7233,7217,7191,7150,7102,7061,7035,7009,6957,6867,
+6758,6681,6679,6759,6873,6950,6945,6868,6759,6658,6579,6518,6449,6338,6179,6020,5924,5905,5936,6010,6160,
+6375,6545,6544,6373,6161,6036,6009,6011,5984,5917,5818,5701,5600,5552,5570,5635,5716,5791,5833,5831,5799,
+5778,5787,5802,5793,5753,5706,5667,5640,5622,5607,5574,5501,5389,5271,5180,5125,5087,5053,5026,5012,5003,
+4980,4926,4841,4740,4645,4571,4520,4476,4425,4366,4309,4261,4215,4168,4119,4070,4021,3978,3947,3929,3908,
+3865,3805,3746,3703,3672,3647,3646,3696,3794,3890,3918,3858,3750,3651,3575,3500,3417,3346,3304,3271,3218,
+3153,3109,3091,3072,3035,2998,2979,2965,2932,2885,2849,2831,2814,2788,2766,2756,2750,2735,2709,2680,2649,
+2612,2563,2505,2439,2365,2287,2217,2167,2143,2134,2122,2097,2060,2018,1976,1934,1895,1862,1832,1799,1759,
+1712,1667,1634,1622,1618,1591,1531,1468,1446,1472,1511,1529,1531,1534,1537,1530,1521,1518,1511,1481,1433,
+1393,1371,1342,1285,1208,1139,1092,1062,1038,1013,983,945,904,867,838,818,806,797,785,769,758,
+757,752,729,692,662,651,653,657,658,648,624,588,557,545,550,557,554,535,507,484,477,
+483,488,482,466,447,423,392,358,330,308,286,257,225,193,165,143,127,108,81,47,15,
+-9,-34,-63,-94,-118,-135,-152,-172,-190,-203,-216,-234,-250,-256,-253,-256,-272,-292,-305,-312,-323,
+-338,-350,-361,-377,-385,-352,-272,-180,-129,-139,-187,-243,-297,-345,-387,-417,-439,-458,-476,-499,-530,
+-566,-597,-621,-645,-672,-695,-712,-725,-740,-753,-762,-771,-785,-800,-811,-820,-833,-850,-864,-876,-889,
+-904,-914,-917,-921,-929,-937,-942,-949,-961,-971,-973,-969,-971,-980,-991,-998,-1004,-1009,-1012,-1011,-1007,
+-1003,-1003,-1010,-1019,-1027,-1030,-1027,-1022,-1017,-1014,-1014,-1019,-1025,-1026,-1024,-1018,-1014,-1015,-1022,-1032,-1038,
+-1038,-1037,-1036,-1036,-1032,-1025,-1019,-1016,-1011,-1005,-997,-987,-976,-966,-958,-950,-936,-918,-900,-885,-872,
+-857,-843,-830,-820,-809,-800,-791,-785,-780,-775,-770,-764,-757,-751,-745,-740,-734,-730,-729,-731,-736,
+-742,-747,-752,-756,-760,-766,-771,-775,-781,-788,-797,-809,-822,-837,-852,-864,-876,-892,-914,-937,-960,
+-982,-1007,-1035,-1061,-1077,-1082,-1083,-1087,-1098,-1112,-1121,-1123,-1121,-1119,-1121,-1126,-1135,-1142,-1147,-1147,-1147,
+-1146,-1147,-1147,-1147,-1144,-1139,-1136,-1135,-1135,-1130,-1120,-1109,-1100,-1092,-1087,-1085,-1086,-1082,-1072,-1060,-1054,
+-1053,-1051,-1047,-1043,-1040,-1035,-1025,-1014,-1006,-998,-986,-967,-947,-928,-909,-888,-865,-840,-815,-789,-768,
+-747,-722,-693,-668,-652,-633,-602,-562,-529,-505,-479,-449,-420,-393,-358,-313,-271,-239,-204,-153,-95,
+-49,-13,29,77,110,124,136,154,153,106,16,-84,-149,-130,6,258,567,873,1158,1437,1711,
+1963,2192,2407,2590,2717,2820,2981,3211,3394,3398,3233,3044,2933,2869,2773,2654,2589,2611,2668,2695,2677,
+2637,2601,2579,2578,2601,2649,2720,2802,2863,2874,2838,2791,2756,2724,2684,2645,2626,2619,2598,2555,2508,
+2472,2442,2411,2384,2367,2353,2323,2264,2174,2064,1954,1873,1833,1821,1810,1780,1734,1678,1605,1509,1395,
+1285,1198,1121,1027,905,778,668,571,467,354,246,152,56,-50,-157,-251,-334,-405,-445,-428,-377,
+-360,-427,-562,-700,-796,-851,-892,-939,-988,-1025,-1044,-1057,-1077,-1106,-1133,-1148,-1152,-1157,-1168,-1180,-1200,
+-1252,-1356,-1502,-1647,-1756,-1823,-1866,-1895,-1901,-1870,-1810,-1743,-1696,-1687,-1712,-1748,-1765,-1756,-1739,-1732,-1726,
+-1695,-1637,-1583,-1563,-1568,-1571,-1564,-1557,-1556,-1554,-1560,-1589,-1632,-1657,-1652,-1643,-1652,-1650,-1590,-1471,-1354,
+-1292,-1276,-1261,-1229,-1192,-1170,-1171,-1206,-1282,-1366,-1386,-1293,-1121,-968,-906,-922,-947,-940,-914,-914,-958,
+-1034,-1109,-1157,-1171,-1164,-1153,-1147,-1141,-1127,-1107,-1088,-1075,-1067,-1061,-1055,-1048,-1040,-1032,-1023,-1009,-989,
+-967,-949,-936,-925,-912,-897,-880,-860,-840,-825,-815,-805,-793,-781,-772,-760,-740,-716,-692,-670,-649,
+-629,-608,-581,-546,-506,-469,-434,-393,-344,-295,-251,-208,-159,-107,-54,-4,46,99,153,210,269,
+327,376,417,454,491,525,556,589,625,659,687,710,733,757,786,820,861,903,938,967,994,
+1025,1057,1091,1127,1166,1205,1237,1258,1261,1249,1231,1219,1217,1218,1219,1218,1214,1206,1195,1187,1184,
+1181,1177,1179,1193,1215,1231,1238,1245,1256,1271,1284,1292,1297,1299,1300,1304,1310,1311,1303,1296,1298,
+1308,1309,1290,1258,1230,1216,1216,1222,1226,1221,1207,1187,1166,1141,1108,1076,1057,1054,1071,1053,1043,
+1042,1048,1053,1051,1044,1040,1040,1041,1039,1036,1033,1030,1028,1028,1033,1039,1043,1048,1060,1075,1090,
+1102,1115,1131,1148,1166,1187,1208,1229,1245,1259,1273,1288,1307,1330,1355,1382,1406,1426,1443,1467,1507,
+1558,1602,1629,1653,1687,1729,1772,1819,1871,1900,1873,1810,1781,1826,1901,1935,1911,1878,1866,1850,1792,
+1694,1589,1497,1415,1338,1273,1218,1161,1100,1042,994,950,902,851,797,740,680,622,570,520,469,
+414,359,303,239,156,53,-54,-140,-189,-207,-211,-207,-192,-167,-154,-175,-227,-290,-349,-405,-464,
+-515,-544,-551,-558,-586,-645,-729,-829,-929,-1007,-1048,-1057,-1057,-1067,-1082,-1094,-1107,-1132,-1168,-1198,-1229,
+-1286,-1368,-1412,-1348,-1194,-1086,-1160,-1417,-1707,-1860,-1834,-1718,-1637,-1642,-1710,-1800,-1897,-2001,-2110,-2215,-2309,
+-2383,-2426,-2434,-2424,-2414,-2403,-2385,-2373,-2390,-2423,-2425,-2389,-2397,-2535,-2763,-2930,-2928,-2817,-2744,-2784,-2881,
+-2950,-2970,-2976,-2987,-2995,-2994,-2999,-3024,-3061,-3095,-3121,-3141,-3158,-3173,-3183,-3184,-3177,-3173,-3185,-3206,-3215,
+-3201,-3174,-3150,-3130,-3111,-3102,-3114,-3135,-3132,-3090,-3036,-3019,-3054,-3111,-3141,-3129,-3097,-3080,-3089,-3118,-3152,
+-3183,-3207,-3224,-3237,-3249,-3263,-3275,-3282,-3288,-3301,-3325,-3352,-3377,-3401,-3428,-3459,-3490,-3522,-3564,-3619,-3678,
+-3727,-3765,-3805,-3850,-3878,-3855,-3777,-3681,-3622,-3625,-3672,-3724,-3757,-3790,-3860,-3981,-4125,-4248,-4329,-4385,-4445,
+-4515,-4580,-4636,-4690,-4746,-4797,-4829,-4843,-4852,-4865,-4887,-4924,-4979,-5053,-5134,-5208,-5267,-5319,-5375,-5440,-5514,
+-5589,-5659,-5716,-5758,-5790,-5820,-5853,-5887,-5930,-5992,-6075,-6167,-6252,-6332,-6418,-6512,-6606,-6687,-6749,-6793,-6826,
+-6857,-6892,-6928,-6962,-6996,-7037,-7079,-7114,-7144,-7175,-7211,-7242,-7262,-7277,-7293,-7303,-7303,-7301,-7306,-7314,-7315,
+-7308,-7302,-7300,-7292,-7275,-7257,-7249,-7253,-7263,-7270,-7272,-7269,-7265,-7262,-7258,-7247,-7219,-7168,-7099,-7035,-6999,
+-6989,-6984,-6967,-6948,-6945,-6952,-6945,-6913,-6873,-6844,-6829,-6815,-6780,-6704,-6584,-6459,-6380,-6362,-6385,-6420,-6453,
+-6456,-6384,-6237,-6081,-5988,-5959,-5929,-5860,-5769,-5685,-5611,-5538,-5477,-5428,-5370,-5284,-5175,-5063,-4951,-4840,-4742,
+-4664,-4587,-4483,-4352,-4213,-4089,-3992,-3934,-3906,-3865,-3771,-3643,-3536,-3473,-3414,-3311,-3165,-3014,-2887,-2787,-2710,
+-2647,-2591,-2541,-2496,-2443,-2354,-2225,-2087,-1975,-1886,-1798,-1702,-1605,-1491,-1332,-1139,-962,-833,-732,-629,-550,
+-546,-624,-720,-763,-739,-687,-643,-615,-591,-563,-523,-464,-387,-309,-253,-229,-218,-190,-123,-26,71,
+146,197,245,308,379,431,448,442,440,448,453,461,496,573,666,736,781,834,922,1033,1135,
+1209,1260,1308,1366,1432,1494,1547,1604,1677,1749,1795,1824,1900,2070,2302,2510,2631,2683,2719,2778,2857,
+2922,2936,2887,2819,2796,2844,2913,2939,2917,2908,2968,3099,3261,3420,3567,3702,3831,3961,4092,4222,4344,
+4457,4561,4651,4726,4792,4851,4896,4924,4942,4966,5007,5069,5150,5243,5328,5391,5436,5485,5547,5614,5674,
+5727,5783,5845,5909,5962,5991,5984,5955,5936,5951,5991,6034,6080,6145,6228,6293,6307,6281,6258,6266,6294,
+6323,6349,6384,6430,6481,6532,6579,6624,6666,6704,6727,6721,6688,6664,6685,6750,6825,6886,6941,7009,7088,
+7165,7236,7305,7357,7362,7314,7241,7175,7127,7089,7061,7049,7048,7044,7033,7021,7006,6974,6927,6884,6868,
+6877,6894,6913,6940,6988,7060,7156,7272,7389,7482,7540,7578,7622,7667,7681,7634,7538,7442,7385,7370,7366,
+7341,7290,7231,7186,7160,7142,7121,7097,7074,7041,6972,6856,6717,6609,6590,6681,6848,7009,7079,7031,6907,
+6769,6651,6572,6540,6542,6517,6404,6214,6026,5902,5844,5854,5972,6210,6461,6558,6433,6186,5969,5853,5809,
+5780,5732,5648,5533,5425,5368,5375,5425,5496,5584,5670,5723,5737,5744,5775,5819,5839,5823,5792,5760,5728,
+5697,5676,5660,5622,5543,5441,5346,5268,5193,5119,5061,5034,5032,5035,5023,4981,4900,4789,4677,4594,4546,
+4516,4485,4442,4389,4338,4296,4255,4196,4112,4037,4004,4004,3989,3932,3864,3827,3820,3802,3760,3739,3787,
+3894,3988,3999,3926,3827,3754,3704,3635,3531,3424,3349,3301,3255,3211,3188,3184,3168,3125,3075,3041,3018,
+2983,2935,2893,2861,2832,2804,2787,2782,2775,2755,2729,2705,2680,2647,2602,2549,2488,2416,2339,2268,2213,
+2179,2159,2142,2114,2074,2032,1993,1954,1909,1862,1820,1785,1746,1698,1652,1628,1637,1653,1633,1562,1480,
+1444,1465,1502,1515,1509,1508,1515,1518,1515,1514,1512,1493,1451,1403,1359,1311,1250,1184,1128,1092,1068,
+1048,1021,981,934,891,859,834,814,803,801,796,781,762,750,737,711,673,639,620,615,618,
+622,619,598,566,536,521,516,511,503,493,478,461,452,456,463,459,440,413,385,359,336,
+315,293,267,237,209,182,153,128,109,93,69,34,0,-28,-52,-79,-110,-137,-157,-175,-195,
+-213,-225,-239,-260,-283,-297,-299,-300,-309,-319,-324,-327,-336,-348,-356,-362,-376,-392,-384,-340,-283,
+-250,-258,-291,-325,-354,-383,-412,-439,-462,-482,-500,-521,-549,-581,-610,-633,-657,-685,-710,-728,-743,
+-757,-768,-775,-782,-794,-808,-819,-828,-839,-852,-862,-870,-881,-894,-903,-908,-914,-924,-932,-936,-940,
+-948,-956,-958,-956,-960,-970,-979,-986,-990,-994,-995,-993,-989,-988,-990,-994,-998,-1002,-1003,-1001,-996,
+-988,-983,-981,-985,-992,-998,-1000,-997,-992,-991,-997,-1006,-1010,-1009,-1006,-1008,-1010,-1006,-996,-986,-980,
+-976,-971,-962,-949,-936,-924,-916,-908,-896,-880,-862,-847,-833,-818,-804,-792,-782,-774,-765,-757,-750,
+-746,-743,-738,-732,-725,-721,-717,-711,-705,-702,-704,-706,-708,-712,-720,-728,-732,-735,-738,-744,-750,
+-756,-764,-774,-785,-797,-811,-827,-842,-856,-873,-895,-919,-942,-963,-985,-1008,-1031,-1047,-1054,-1057,-1063,
+-1074,-1085,-1091,-1091,-1090,-1089,-1088,-1091,-1098,-1108,-1116,-1118,-1117,-1117,-1118,-1120,-1122,-1122,-1121,-1118,-1116,
+-1113,-1107,-1097,-1088,-1081,-1077,-1074,-1070,-1066,-1060,-1049,-1037,-1030,-1029,-1029,-1028,-1024,-1019,-1012,-1002,-991,
+-982,-973,-960,-942,-924,-908,-891,-870,-847,-822,-797,-773,-751,-732,-709,-680,-653,-634,-618,-593,-558,
+-524,-497,-471,-442,-414,-388,-356,-314,-270,-233,-198,-153,-99,-51,-12,30,81,129,159,175,186,
+190,168,109,11,-94,-150,-94,94,377,691,1001,1299,1581,1848,2117,2390,2632,2796,2902,3030,3204,
+3339,3337,3222,3111,3066,3027,2923,2784,2696,2693,2723,2727,2696,2653,2617,2593,2591,2613,2656,2717,2785,
+2839,2858,2846,2826,2809,2779,2726,2676,2660,2667,2661,2628,2587,2558,2537,2508,2472,2440,2408,2360,2286,
+2191,2090,2000,1937,1907,1896,1880,1847,1798,1741,1669,1576,1469,1370,1290,1214,1117,994,870,763,668,
+564,450,341,240,135,18,-98,-200,-289,-369,-427,-442,-430,-444,-526,-664,-804,-897,-937,-950,-965,
+-990,-1017,-1033,-1042,-1054,-1074,-1097,-1111,-1119,-1133,-1156,-1186,-1229,-1298,-1404,-1537,-1666,-1762,-1820,-1851,-1866,
+-1862,-1827,-1761,-1684,-1627,-1613,-1639,-1678,-1702,-1702,-1694,-1690,-1684,-1659,-1620,-1594,-1597,-1618,-1639,-1652,-1660,
+-1655,-1633,-1611,-1618,-1647,-1660,-1640,-1616,-1622,-1631,-1583,-1465,-1340,-1271,-1259,-1253,-1227,-1194,-1179,-1191,-1237,
+-1323,-1419,-1442,-1337,-1145,-982,-930,-960,-985,-960,-919,-918,-972,-1054,-1123,-1157,-1157,-1141,-1130,-1130,-1130,
+-1118,-1099,-1082,-1070,-1059,-1047,-1036,-1028,-1020,-1013,-1007,-998,-982,-961,-940,-926,-914,-902,-889,-875,-857,
+-837,-819,-808,-801,-793,-785,-777,-766,-749,-725,-700,-675,-651,-628,-605,-578,-544,-508,-474,-443,-405,
+-358,-311,-267,-224,-175,-122,-70,-20,28,77,124,173,229,288,341,384,422,461,498,531,563,
+597,630,662,691,722,752,781,813,849,889,925,957,984,1010,1034,1059,1090,1129,1170,1205,1227,
+1232,1220,1201,1186,1180,1180,1180,1178,1170,1160,1150,1146,1145,1144,1143,1149,1167,1190,1210,1222,1231,
+1244,1260,1272,1281,1284,1283,1279,1276,1276,1277,1277,1279,1287,1295,1293,1275,1248,1222,1207,1202,1203,
+1199,1185,1162,1142,1138,1143,1142,1125,1097,1071,1109,1075,1063,1066,1073,1073,1066,1058,1056,1057,1055,
+1050,1047,1048,1049,1048,1049,1055,1062,1066,1070,1081,1098,1115,1129,1143,1160,1177,1194,1213,1235,1259,
+1280,1297,1312,1330,1351,1376,1402,1426,1448,1464,1476,1492,1523,1565,1605,1636,1666,1702,1740,1776,1822,
+1881,1921,1904,1849,1827,1876,1953,1986,1963,1939,1944,1948,1906,1815,1705,1599,1499,1405,1327,1264,1205,
+1144,1086,1036,992,946,894,837,778,720,666,615,563,511,458,407,353,294,220,131,36,-42,
+-90,-112,-116,-108,-87,-69,-79,-128,-196,-254,-295,-331,-374,-421,-457,-481,-507,-557,-642,-750,-851,
+-923,-963,-984,-996,-1004,-1017,-1040,-1072,-1104,-1128,-1145,-1171,-1222,-1307,-1404,-1452,-1400,-1271,-1180,-1239,-1454,
+-1700,-1828,-1795,-1682,-1605,-1619,-1703,-1816,-1935,-2052,-2157,-2242,-2308,-2367,-2419,-2456,-2474,-2476,-2460,-2428,-2396,
+-2391,-2406,-2401,-2367,-2371,-2493,-2703,-2860,-2858,-2747,-2680,-2732,-2837,-2888,-2866,-2835,-2848,-2890,-2922,-2935,-2950,
+-2984,-3030,-3068,-3089,-3103,-3122,-3141,-3134,-3092,-3043,-3035,-3073,-3115,-3119,-3092,-3067,-3057,-3045,-3024,-3011,-3021,
+-3034,-3030,-3018,-3029,-3068,-3101,-3098,-3067,-3041,-3044,-3068,-3097,-3126,-3155,-3180,-3194,-3196,-3196,-3203,-3213,-3223,
+-3231,-3248,-3277,-3312,-3340,-3359,-3379,-3408,-3442,-3477,-3516,-3565,-3620,-3666,-3698,-3733,-3785,-3841,-3861,-3819,-3729,
+-3642,-3603,-3618,-3654,-3685,-3717,-3786,-3906,-4049,-4167,-4243,-4298,-4359,-4426,-4488,-4543,-4598,-4653,-4693,-4712,-4719,
+-4729,-4753,-4791,-4843,-4905,-4973,-5038,-5098,-5155,-5212,-5273,-5341,-5414,-5488,-5555,-5607,-5646,-5677,-5709,-5744,-5783,
+-5833,-5904,-5992,-6083,-6168,-6250,-6336,-6425,-6509,-6582,-6640,-6684,-6716,-6746,-6781,-6820,-6856,-6893,-6933,-6976,-7015,
+-7048,-7083,-7119,-7148,-7166,-7181,-7195,-7203,-7202,-7201,-7207,-7215,-7214,-7208,-7203,-7199,-7186,-7167,-7155,-7158,-7172,
+-7186,-7196,-7203,-7204,-7199,-7191,-7180,-7161,-7124,-7070,-7009,-6964,-6951,-6962,-6972,-6968,-6962,-6963,-6960,-6931,-6877,
+-6825,-6800,-6798,-6793,-6758,-6667,-6525,-6378,-6290,-6285,-6337,-6404,-6454,-6457,-6379,-6226,-6065,-5962,-5914,-5868,-5800,
+-5731,-5678,-5627,-5560,-5489,-5427,-5358,-5266,-5159,-5055,-4959,-4866,-4778,-4701,-4619,-4510,-4368,-4213,-4071,-3971,-3927,
+-3916,-3883,-3792,-3669,-3571,-3510,-3444,-3335,-3194,-3061,-2952,-2862,-2784,-2714,-2650,-2593,-2542,-2483,-2392,-2265,-2134,
+-2031,-1952,-1872,-1783,-1682,-1552,-1378,-1183,-1021,-914,-836,-766,-725,-742,-798,-840,-834,-789,-732,-674,-619,
+-570,-527,-478,-411,-328,-244,-175,-121,-72,-16,54,133,208,269,316,363,426,497,547,549,509,
+460,427,410,407,431,495,582,662,721,782,868,975,1080,1165,1230,1284,1339,1398,1457,1513,1573,
+1643,1708,1745,1759,1801,1919,2100,2282,2421,2521,2611,2707,2798,2868,2901,2898,2889,2906,2955,2996,2998,
+2983,3012,3120,3280,3440,3570,3679,3787,3904,4031,4155,4272,4381,4484,4574,4644,4697,4746,4796,4837,4858,
+4871,4894,4938,5003,5092,5199,5300,5370,5413,5456,5518,5589,5651,5704,5756,5809,5857,5894,5913,5908,5884,
+5866,5879,5921,5968,6015,6075,6149,6210,6227,6212,6204,6224,6257,6284,6304,6335,6382,6436,6484,6523,6552,
+6577,6603,6626,6632,6619,6606,6622,6672,6738,6800,6862,6936,7020,7100,7172,7235,7280,7288,7249,7180,7107,
+7048,7014,7006,7016,7024,7023,7021,7023,7017,6984,6929,6880,6854,6845,6837,6835,6847,6872,6900,6934,6990,
+7070,7154,7229,7301,7386,7473,7526,7517,7459,7395,7364,7370,7384,7371,7318,7247,7188,7157,7137,7108,7067,
+7013,6933,6813,6666,6543,6499,6562,6716,6902,7034,7047,6947,6799,6666,6563,6490,6470,6518,6579,6558,6420,
+6224,6045,5905,5810,5809,5937,6124,6214,6117,5893,5682,5565,5535,5546,5553,5524,5450,5361,5291,5244,5208,
+5206,5282,5433,5590,5690,5740,5788,5845,5881,5880,5863,5847,5820,5780,5748,5738,5729,5685,5606,5516,5429,
+5333,5223,5123,5061,5042,5052,5068,5063,5013,4916,4804,4716,4669,4647,4627,4595,4552,4515,4491,4460,4384,
+4263,4151,4102,4098,4075,4010,3961,3979,4030,4034,3967,3894,3888,3946,3998,3987,3924,3863,3837,3826,3779,
+3677,3550,3442,3367,3312,3275,3262,3263,3246,3194,3129,3081,3050,3019,2979,2935,2889,2843,2808,2796,2798,
+2790,2766,2740,2720,2700,2670,2632,2592,2544,2479,2403,2328,2266,2222,2193,2170,2139,2092,2040,1994,1953,
+1907,1854,1805,1766,1728,1683,1638,1618,1635,1664,1655,1590,1505,1460,1467,1490,1491,1476,1472,1484,1496,
+1498,1499,1504,1498,1468,1416,1353,1287,1225,1172,1132,1102,1076,1049,1016,972,923,881,851,825,802,
+791,793,797,788,765,741,719,690,655,623,601,588,584,586,586,572,545,519,501,486,471,
+464,468,471,458,438,425,425,425,410,380,347,319,298,282,262,236,210,188,166,139,110,
+88,72,50,17,-20,-49,-72,-96,-125,-153,-177,-199,-222,-242,-255,-267,-284,-305,-323,-332,-337,
+-342,-346,-348,-351,-359,-371,-377,-378,-383,-395,-402,-390,-370,-361,-371,-388,-400,-408,-420,-441,-467,
+-492,-514,-534,-557,-584,-613,-639,-659,-680,-703,-725,-743,-758,-772,-782,-788,-793,-803,-815,-826,-836,
+-846,-856,-863,-868,-877,-889,-899,-905,-912,-920,-927,-930,-932,-938,-944,-947,-948,-952,-959,-965,-969,
+-972,-973,-973,-971,-971,-975,-979,-981,-981,-980,-979,-976,-971,-964,-958,-955,-956,-962,-969,-974,-975,
+-972,-971,-977,-985,-988,-985,-981,-983,-985,-981,-969,-956,-948,-943,-937,-928,-915,-900,-887,-876,-868,
+-857,-844,-829,-812,-796,-780,-766,-755,-748,-741,-733,-724,-715,-711,-708,-704,-697,-692,-690,-689,-682,
+-675,-673,-676,-679,-678,-680,-689,-700,-707,-710,-713,-718,-726,-733,-742,-752,-761,-772,-786,-803,-819,
+-835,-852,-874,-900,-925,-945,-961,-977,-994,-1009,-1021,-1029,-1038,-1048,-1055,-1056,-1055,-1056,-1060,-1062,-1064,
+-1070,-1079,-1088,-1090,-1089,-1089,-1090,-1091,-1092,-1095,-1097,-1095,-1091,-1086,-1080,-1072,-1064,-1060,-1061,-1061,-1057,
+-1047,-1035,-1024,-1015,-1009,-1008,-1009,-1008,-1004,-998,-990,-981,-971,-961,-949,-934,-917,-901,-887,-871,-850,
+-825,-801,-777,-754,-731,-710,-689,-665,-640,-619,-602,-581,-552,-521,-493,-466,-434,-401,-373,-346,-312,
+-270,-228,-190,-149,-103,-57,-15,26,77,132,180,209,223,227,219,184,107,-5,-105,-120,-7,
+224,527,858,1188,1497,1782,2069,2375,2667,2884,3006,3086,3167,3224,3209,3142,3095,3090,3069,2983,2869,
+2803,2800,2808,2783,2732,2684,2648,2623,2613,2625,2657,2702,2754,2800,2828,2839,2845,2844,2819,2769,2721,
+2706,2716,2715,2690,2663,2653,2651,2632,2586,2521,2443,2355,2262,2172,2089,2018,1968,1947,1939,1922,1885,
+1837,1787,1730,1653,1562,1475,1400,1324,1225,1105,984,880,783,677,560,444,336,228,114,4,-96,
+-190,-282,-361,-410,-441,-492,-597,-747,-897,-995,-1026,-1017,-1009,-1022,-1043,-1051,-1042,-1033,-1040,-1059,-1078,
+-1098,-1123,-1158,-1202,-1261,-1342,-1445,-1559,-1667,-1755,-1816,-1850,-1857,-1836,-1785,-1711,-1633,-1578,-1560,-1573,-1600,
+-1625,-1641,-1649,-1651,-1644,-1631,-1620,-1624,-1645,-1677,-1709,-1737,-1752,-1740,-1701,-1660,-1647,-1654,-1647,-1610,-1574,
+-1573,-1581,-1540,-1434,-1323,-1266,-1259,-1249,-1213,-1175,-1164,-1186,-1243,-1341,-1444,-1470,-1357,-1156,-998,-962,-1006,
+-1031,-1002,-965,-978,-1040,-1112,-1160,-1174,-1161,-1137,-1121,-1118,-1118,-1109,-1092,-1077,-1064,-1048,-1032,-1021,-1015,
+-1007,-996,-986,-981,-972,-955,-935,-918,-905,-893,-883,-874,-861,-841,-820,-806,-799,-793,-785,-777,-767,
+-753,-732,-707,-680,-652,-624,-599,-572,-539,-504,-473,-445,-411,-369,-327,-287,-246,-197,-144,-93,-44,
+5,54,97,139,190,249,303,349,390,432,472,508,540,573,608,642,675,710,743,774,806,
+841,878,915,948,975,998,1017,1037,1066,1103,1142,1172,1187,1187,1174,1158,1144,1138,1137,1136,1132,
+1124,1116,1113,1116,1122,1129,1135,1145,1160,1179,1196,1209,1219,1229,1239,1252,1264,1271,1269,1262,1258,
+1262,1268,1271,1271,1271,1272,1269,1257,1240,1223,1210,1200,1190,1177,1157,1138,1134,1156,1193,1215,1202,
+1158,1109,1121,1088,1078,1081,1084,1080,1073,1069,1071,1072,1068,1062,1062,1069,1072,1070,1069,1074,1083,
+1088,1092,1103,1120,1139,1155,1172,1189,1206,1220,1238,1261,1286,1311,1332,1351,1371,1395,1422,1449,1473,
+1494,1510,1521,1530,1546,1573,1604,1633,1664,1699,1735,1774,1830,1904,1963,1964,1923,1904,1945,2010,2036,
+2017,2000,2014,2031,2007,1932,1827,1711,1592,1482,1390,1315,1248,1184,1127,1079,1034,985,931,872,812,
+756,706,657,607,554,504,455,404,347,278,197,112,43,1,-19,-27,-24,-13,-13,-49,-115,
+-181,-223,-247,-275,-311,-346,-373,-402,-451,-534,-645,-758,-841,-881,-901,-927,-958,-977,-985,-1008,-1055,
+-1099,-1112,-1104,-1121,-1194,-1309,-1417,-1462,-1416,-1314,-1250,-1316,-1512,-1730,-1839,-1798,-1681,-1600,-1612,-1699,-1823,
+-1958,-2094,-2210,-2285,-2326,-2360,-2406,-2460,-2502,-2517,-2499,-2454,-2406,-2383,-2388,-2390,-2373,-2387,-2492,-2668,-2797,
+-2788,-2690,-2641,-2701,-2789,-2796,-2719,-2658,-2686,-2778,-2861,-2895,-2902,-2918,-2951,-2989,-3021,-3053,-3094,-3128,-3119,
+-3051,-2966,-2930,-2969,-3037,-3070,-3054,-3019,-2989,-2960,-2921,-2890,-2886,-2906,-2933,-2961,-2999,-3036,-3049,-3027,-2997,
+-2992,-3016,-3050,-3076,-3096,-3117,-3138,-3146,-3141,-3133,-3133,-3143,-3158,-3172,-3193,-3224,-3260,-3290,-3308,-3326,-3355,
+-3395,-3436,-3474,-3518,-3567,-3609,-3636,-3662,-3710,-3778,-3833,-3834,-3771,-3677,-3601,-3571,-3578,-3599,-3636,-3712,-3835,
+-3975,-4088,-4161,-4216,-4275,-4340,-4400,-4453,-4503,-4545,-4573,-4589,-4603,-4624,-4658,-4705,-4765,-4831,-4890,-4940,-4990,
+-5048,-5112,-5178,-5243,-5312,-5383,-5446,-5495,-5531,-5563,-5597,-5636,-5684,-5744,-5819,-5905,-5993,-6079,-6166,-6252,-6333,
+-6404,-6467,-6522,-6567,-6602,-6634,-6673,-6716,-6757,-6795,-6836,-6878,-6919,-6957,-6994,-7029,-7054,-7070,-7084,-7099,-7106,
+-7105,-7104,-7110,-7117,-7118,-7113,-7108,-7099,-7082,-7066,-7063,-7076,-7097,-7116,-7129,-7134,-7131,-7120,-7107,-7090,-7062,
+-7019,-6967,-6926,-6909,-6921,-6947,-6966,-6974,-6979,-6982,-6965,-6912,-6839,-6784,-6767,-6774,-6774,-6734,-6632,-6474,-6313,
+-6221,-6229,-6304,-6389,-6443,-6438,-6351,-6195,-6028,-5913,-5852,-5805,-5755,-5716,-5693,-5656,-5587,-5505,-5432,-5360,-5269,
+-5164,-5066,-4981,-4895,-4802,-4708,-4613,-4504,-4371,-4217,-4067,-3958,-3914,-3911,-3886,-3801,-3687,-3599,-3544,-3478,-3372,
+-3247,-3139,-3054,-2974,-2890,-2805,-2721,-2642,-2571,-2502,-2416,-2304,-2186,-2086,-2003,-1924,-1840,-1739,-1602,-1425,-1243,
+-1103,-1017,-957,-910,-899,-930,-964,-957,-903,-836,-774,-711,-640,-572,-517,-464,-399,-320,-239,-160,-83,
+-6,68,136,200,265,334,407,478,548,616,670,688,662,608,553,516,499,507,544,605,670,
+724,775,839,924,1020,1111,1187,1246,1296,1347,1400,1456,1521,1599,1679,1735,1767,1808,1900,2044,2202,
+2342,2463,2575,2678,2762,2822,2863,2895,2933,2992,3063,3116,3139,3160,3225,3347,3487,3603,3682,3746,3826,
+3930,4049,4166,4272,4371,4464,4540,4591,4624,4662,4713,4758,4783,4796,4816,4856,4920,5016,5136,5251,5327,
+5368,5407,5466,5536,5597,5646,5694,5742,5783,5814,5835,5838,5823,5810,5822,5863,5918,5974,6037,6105,6154,
+6167,6159,6164,6196,6233,6256,6272,6300,6344,6391,6429,6455,6471,6482,6496,6519,6543,6555,6554,6558,6587,
+6642,6709,6779,6856,6943,7030,7106,7162,7195,7201,7173,7111,7031,6960,6926,6937,6970,6995,7001,6997,6996,
+6983,6943,6886,6841,6822,6813,6799,6784,6784,6796,6809,6822,6846,6884,6926,6967,7018,7093,7178,7244,7270,
+7261,7244,7243,7270,7312,7336,7321,7275,7227,7191,7146,7070,6962,6838,6706,6573,6466,6429,6485,6615,6771,
+6898,6947,6895,6772,6646,6558,6491,6421,6383,6428,6532,6593,6540,6398,6236,6080,5931,5822,5797,5833,5835,
+5738,5578,5446,5394,5414,5470,5527,5546,5517,5454,5368,5238,5064,4930,4957,5171,5453,5663,5767,5828,5886,
+5924,5925,5913,5909,5898,5862,5825,5816,5821,5798,5732,5649,5568,5477,5363,5247,5162,5121,5114,5116,5104,
+5062,4997,4934,4891,4862,4826,4776,4723,4685,4672,4681,4673,4603,4472,4342,4270,4238,4187,4116,4098,4176,
+4281,4303,4210,4082,4005,3992,3997,3983,3953,3931,3926,3924,3898,3831,3736,3632,3530,3431,3350,3304,3288,
+3267,3218,3154,3102,3067,3037,3001,2956,2900,2841,2800,2790,2795,2788,2764,2740,2726,2710,2683,2651,2623,
+2589,2532,2455,2375,2305,2250,2213,2186,2154,2104,2039,1978,1930,1888,1842,1796,1754,1717,1675,1632,1607,
+1614,1636,1636,1591,1526,1483,1477,1481,1468,1445,1439,1452,1468,1474,1478,1488,1493,1477,1430,1363,1290,
+1226,1179,1142,1109,1075,1042,1006,962,915,875,846,818,790,772,771,778,774,756,732,706,678,
+648,621,597,577,562,557,554,543,524,504,484,461,439,434,451,465,451,415,383,374,377,
+374,352,317,280,252,231,211,190,170,155,139,116,88,65,46,22,-11,-47,-78,-102,-125,
+-152,-181,-208,-234,-256,-274,-286,-293,-302,-316,-333,-347,-358,-367,-376,-383,-390,-400,-414,-426,-430,
+-431,-436,-443,-446,-444,-442,-445,-447,-446,-447,-457,-478,-504,-528,-552,-576,-601,-627,-653,-676,-696,
+-713,-729,-745,-759,-773,-786,-796,-802,-806,-814,-823,-831,-839,-848,-856,-861,-866,-875,-888,-900,-908,
+-913,-918,-923,-925,-928,-932,-937,-941,-944,-948,-951,-953,-956,-957,-958,-956,-954,-956,-962,-968,-970,
+-967,-963,-960,-957,-953,-949,-944,-940,-938,-939,-944,-949,-950,-949,-949,-955,-963,-966,-962,-958,-958,
+-958,-954,-943,-930,-920,-912,-903,-892,-880,-867,-853,-839,-828,-818,-808,-796,-780,-762,-746,-734,-726,
+-720,-715,-707,-696,-686,-680,-677,-673,-666,-660,-660,-660,-654,-645,-643,-648,-652,-650,-650,-657,-670,
+-679,-685,-691,-699,-706,-713,-721,-730,-738,-747,-761,-778,-795,-811,-829,-852,-879,-905,-925,-939,-949,
+-960,-974,-987,-999,-1010,-1019,-1023,-1021,-1021,-1027,-1037,-1044,-1047,-1050,-1057,-1064,-1066,-1065,-1065,-1066,-1064,
+-1064,-1066,-1068,-1067,-1062,-1056,-1052,-1046,-1039,-1037,-1042,-1047,-1043,-1030,-1014,-1002,-995,-991,-990,-989,-986,
+-982,-975,-968,-960,-951,-939,-926,-911,-894,-880,-867,-852,-830,-803,-778,-757,-735,-710,-685,-665,-647,
+-628,-607,-587,-565,-540,-514,-489,-462,-429,-391,-357,-329,-301,-265,-223,-184,-147,-106,-59,-12,31,
+76,129,183,228,254,265,267,251,200,104,-7,-72,-29,139,410,742,1095,1434,1744,2045,2368,
+2697,2961,3109,3160,3172,3175,3157,3120,3094,3090,3074,3020,2957,2929,2930,2913,2854,2782,2726,2689,2654,
+2627,2626,2653,2693,2734,2774,2811,2842,2864,2870,2852,2814,2778,2763,2763,2757,2739,2725,2732,2747,2745,
+2702,2611,2484,2351,2241,2160,2094,2030,1981,1960,1958,1947,1913,1872,1838,1805,1754,1680,1603,1531,1454,
+1356,1238,1120,1013,909,793,669,552,453,371,294,212,117,7,-110,-216,-298,-365,-449,-577,-744,
+-910,-1022,-1056,-1039,-1026,-1043,-1069,-1068,-1036,-1003,-996,-1014,-1042,-1074,-1110,-1149,-1195,-1256,-1342,-1446,-1553,
+-1653,-1743,-1816,-1857,-1856,-1813,-1739,-1653,-1582,-1541,-1528,-1530,-1540,-1562,-1594,-1619,-1624,-1616,-1613,-1626,-1650,
+-1676,-1703,-1736,-1768,-1784,-1769,-1727,-1682,-1653,-1637,-1608,-1560,-1521,-1510,-1503,-1455,-1362,-1277,-1247,-1254,-1243,
+-1197,-1150,-1136,-1161,-1223,-1324,-1428,-1453,-1342,-1150,-1011,-999,-1058,-1089,-1068,-1051,-1080,-1141,-1189,-1208,-1205,
+-1186,-1158,-1132,-1118,-1109,-1096,-1077,-1057,-1038,-1018,-1003,-1001,-1007,-1004,-989,-973,-965,-959,-947,-930,-914,
+-900,-887,-877,-872,-862,-844,-821,-805,-797,-791,-782,-773,-764,-752,-735,-711,-683,-653,-624,-598,-571,
+-539,-505,-474,-446,-414,-377,-340,-305,-266,-219,-167,-117,-68,-18,29,71,111,158,213,269,317,
+362,407,449,487,522,557,593,627,660,693,725,757,790,826,863,899,930,956,977,995,1015,
+1043,1076,1105,1123,1126,1120,1112,1103,1098,1096,1098,1099,1097,1091,1088,1090,1098,1109,1121,1132,1144,
+1156,1167,1180,1193,1202,1208,1215,1232,1254,1269,1270,1266,1271,1287,1301,1297,1279,1260,1250,1247,1244,
+1239,1233,1222,1206,1187,1168,1152,1144,1155,1189,1231,1251,1229,1176,1121,1106,1089,1089,1091,1090,1085,
+1081,1081,1083,1083,1079,1076,1081,1090,1093,1090,1088,1094,1104,1112,1119,1131,1147,1164,1181,1199,1217,
+1232,1247,1265,1288,1313,1337,1361,1383,1405,1431,1460,1488,1513,1536,1557,1572,1579,1584,1596,1616,1640,
+1667,1697,1733,1781,1852,1943,2016,2035,2009,1993,2022,2070,2089,2070,2053,2061,2080,2072,2020,1927,1806,
+1675,1555,1454,1368,1290,1223,1169,1123,1075,1022,966,909,850,794,742,692,641,590,542,495,445,
+387,319,241,162,100,66,51,42,35,27,0,-56,-127,-179,-200,-213,-241,-276,-298,-314,-348,
+-420,-528,-647,-747,-801,-818,-834,-876,-929,-957,-964,-986,-1036,-1077,-1075,-1055,-1081,-1183,-1323,-1432,-1459,
+-1400,-1302,-1255,-1339,-1553,-1788,-1910,-1870,-1738,-1634,-1625,-1702,-1826,-1968,-2113,-2237,-2316,-2349,-2367,-2399,-2450,
+-2498,-2517,-2496,-2445,-2390,-2362,-2369,-2385,-2393,-2421,-2512,-2648,-2740,-2726,-2654,-2633,-2694,-2751,-2708,-2586,-2499,
+-2527,-2640,-2754,-2818,-2843,-2861,-2889,-2925,-2963,-3002,-3038,-3064,-3060,-3013,-2943,-2896,-2909,-2961,-2998,-2986,-2936,
+-2879,-2832,-2795,-2772,-2772,-2796,-2837,-2888,-2941,-2981,-2988,-2967,-2947,-2952,-2982,-3015,-3038,-3053,-3068,-3082,-3088,
+-3085,-3078,-3076,-3084,-3098,-3114,-3133,-3162,-3199,-3231,-3253,-3271,-3300,-3343,-3388,-3428,-3469,-3515,-3554,-3578,-3598,
+-3636,-3700,-3769,-3802,-3774,-3694,-3601,-3535,-3510,-3522,-3569,-3657,-3780,-3912,-4018,-4089,-4143,-4198,-4256,-4311,-4359,
+-4399,-4429,-4451,-4473,-4502,-4536,-4571,-4615,-4674,-4739,-4795,-4839,-4887,-4949,-5019,-5086,-5149,-5213,-5279,-5338,-5385,
+-5422,-5456,-5494,-5539,-5592,-5658,-5734,-5816,-5900,-5987,-6078,-6166,-6240,-6300,-6353,-6406,-6452,-6489,-6524,-6566,-6613,
+-6657,-6697,-6738,-6781,-6824,-6866,-6904,-6937,-6959,-6975,-6991,-7006,-7014,-7012,-7010,-7015,-7023,-7026,-7023,-7015,-7002,
+-6987,-6978,-6986,-7005,-7027,-7045,-7057,-7059,-7047,-7029,-7013,-6996,-6964,-6917,-6875,-6858,-6872,-6903,-6935,-6957,-6972,
+-6983,-6981,-6948,-6878,-6800,-6752,-6746,-6756,-6748,-6698,-6588,-6425,-6263,-6176,-6197,-6285,-6372,-6412,-6388,-6293,-6141,
+-5981,-5868,-5810,-5780,-5757,-5746,-5736,-5699,-5620,-5527,-5448,-5376,-5289,-5188,-5093,-5011,-4922,-4814,-4699,-4591,-4490,
+-4375,-4230,-4072,-3947,-3897,-3898,-3884,-3809,-3705,-3630,-3587,-3532,-3437,-3330,-3245,-3180,-3109,-3020,-2917,-2807,-2697,
+-2597,-2512,-2430,-2337,-2237,-2139,-2049,-1964,-1880,-1784,-1656,-1495,-1338,-1223,-1148,-1090,-1046,-1042,-1074,-1092,-1052,
+-966,-878,-807,-741,-667,-595,-533,-474,-407,-330,-248,-162,-73,13,89,151,204,265,348,448,541,
+608,656,705,751,765,734,678,637,629,648,682,726,777,828,874,924,989,1071,1157,1230,1286,
+1331,1378,1431,1488,1556,1643,1738,1817,1871,1922,2002,2114,2232,2337,2432,2529,2625,2711,2782,2844,2907,
+2986,3085,3191,3276,3331,3378,3445,3535,3625,3692,3740,3789,3858,3949,4052,4152,4243,4328,4408,4471,4508,
+4534,4571,4627,4680,4711,4725,4739,4769,4828,4928,5061,5189,5273,5314,5347,5394,5449,5498,5543,5596,5654,
+5706,5747,5776,5786,5777,5767,5779,5821,5883,5953,6026,6089,6123,6123,6115,6129,6166,6202,6223,6240,6272,
+6314,6350,6371,6382,6389,6393,6398,6416,6448,6477,6485,6482,6496,6547,6621,6701,6780,6866,6958,7036,7085,
+7108,7111,7090,7034,6949,6869,6836,6857,6905,6940,6950,6945,6937,6917,6874,6821,6782,6766,6760,6746,6726,
+6714,6714,6723,6739,6758,6775,6780,6780,6793,6831,6884,6932,6964,6980,6987,7001,7041,7109,7179,7216,7212,
+7187,7149,7078,6951,6785,6620,6487,6401,6378,6438,6566,6712,6821,6866,6842,6762,6660,6581,6538,6490,6408,
+6334,6350,6465,6587,6617,6545,6426,6295,6155,6013,5901,5822,5747,5653,5565,5522,5532,5577,5637,5687,5703,
+5678,5626,5530,5334,5031,4751,4694,4927,5303,5614,5779,5862,5929,5973,5973,5958,5959,5962,5939,5902,5888,
+5892,5876,5818,5744,5679,5612,5524,5426,5348,5303,5272,5229,5165,5094,5048,5046,5070,5068,5007,4905,4811,
+4765,4774,4812,4833,4792,4689,4572,4485,4416,4329,4248,4249,4354,4475,4494,4386,4229,4108,4047,4033,4045,
+4065,4067,4042,4003,3972,3953,3924,3859,3742,3584,3429,3325,3280,3263,3235,3194,3151,3111,3066,3016,2965,
+2913,2863,2826,2812,2807,2792,2763,2740,2730,2716,2687,2654,2628,2599,2549,2478,2403,2335,2276,2229,2193,
+2158,2107,2036,1962,1904,1865,1832,1793,1752,1713,1678,1642,1611,1593,1590,1585,1564,1529,1501,1489,1479,
+1458,1433,1423,1431,1444,1452,1460,1473,1483,1474,1437,1378,1310,1246,1191,1145,1103,1066,1033,1000,959,
+915,877,846,816,784,759,751,752,749,738,721,700,675,649,624,601,574,550,533,524,515,
+504,490,471,443,415,407,422,434,416,373,334,322,331,339,328,296,252,211,180,158,142,
+129,119,106,89,69,49,26,-3,-41,-80,-113,-140,-164,-188,-215,-244,-270,-289,-302,-309,-314,
+-319,-328,-343,-361,-378,-394,-409,-422,-432,-440,-455,-473,-485,-486,-481,-479,-481,-480,-477,-473,-471,
+-473,-481,-499,-523,-547,-568,-590,-615,-640,-664,-686,-707,-727,-743,-755,-767,-780,-792,-803,-811,-818,
+-823,-829,-834,-839,-844,-850,-855,-858,-862,-871,-885,-899,-908,-913,-917,-921,-925,-927,-929,-932,-937,
+-943,-946,-947,-947,-948,-951,-951,-949,-946,-947,-951,-955,-957,-954,-949,-945,-943,-942,-941,-938,-933,
+-928,-925,-925,-926,-926,-924,-925,-930,-936,-938,-934,-931,-929,-927,-921,-913,-905,-896,-885,-873,-860,
+-848,-835,-820,-804,-789,-778,-770,-760,-746,-729,-715,-706,-699,-694,-688,-681,-671,-659,-652,-650,-646,
+-638,-631,-630,-631,-626,-617,-615,-621,-627,-627,-626,-630,-640,-650,-659,-669,-679,-686,-690,-696,-705,
+-714,-724,-736,-753,-770,-787,-807,-831,-858,-884,-904,-917,-927,-938,-949,-959,-969,-979,-988,-992,-991,
+-992,-1002,-1017,-1026,-1029,-1030,-1035,-1041,-1043,-1042,-1043,-1043,-1042,-1041,-1042,-1044,-1041,-1034,-1027,-1024,-1021,
+-1015,-1013,-1019,-1027,-1026,-1012,-995,-982,-976,-973,-970,-967,-963,-958,-951,-944,-937,-927,-916,-904,-890,
+-875,-861,-848,-834,-812,-784,-758,-738,-719,-695,-667,-646,-631,-616,-597,-573,-550,-527,-502,-479,-455,
+-427,-389,-350,-317,-289,-258,-221,-186,-152,-113,-62,-8,40,84,129,180,231,271,296,308,308,
+282,214,112,23,12,118,336,636,982,1336,1672,1993,2325,2666,2957,3127,3179,3182,3192,3202,3187,
+3152,3122,3100,3074,3050,3045,3045,3010,2935,2857,2809,2774,2726,2673,2653,2675,2711,2739,2761,2796,2839,
+2873,2885,2877,2857,2835,2817,2805,2798,2792,2791,2800,2816,2825,2795,2698,2544,2381,2260,2188,2131,2064,
+2004,1977,1976,1968,1938,1905,1890,1880,1849,1791,1723,1654,1577,1479,1365,1252,1144,1030,902,769,659,
+593,570,559,522,430,291,136,-1,-111,-206,-313,-456,-638,-825,-959,-1005,-992,-985,-1016,-1054,-1054,
+-1013,-972,-961,-977,-1003,-1038,-1080,-1120,-1159,-1211,-1294,-1403,-1517,-1624,-1720,-1797,-1836,-1823,-1762,-1672,-1583,
+-1525,-1508,-1515,-1519,-1523,-1545,-1588,-1623,-1624,-1606,-1602,-1624,-1652,-1670,-1686,-1712,-1741,-1755,-1742,-1711,-1674,
+-1641,-1607,-1564,-1515,-1475,-1450,-1421,-1360,-1277,-1217,-1213,-1235,-1231,-1186,-1135,-1114,-1131,-1187,-1280,-1376,-1395,
+-1290,-1124,-1022,-1041,-1117,-1156,-1145,-1141,-1176,-1223,-1244,-1239,-1228,-1212,-1185,-1149,-1120,-1099,-1079,-1054,-1027,
+-998,-971,-956,-963,-982,-992,-982,-965,-953,-946,-936,-924,-912,-899,-886,-875,-868,-859,-842,-820,-804,
+-794,-787,-778,-769,-762,-752,-736,-713,-686,-656,-629,-604,-579,-548,-512,-480,-451,-419,-384,-348,-316,
+-281,-237,-186,-136,-88,-39,8,51,91,136,187,239,288,334,379,421,460,498,537,576,612,
+643,672,701,732,765,802,839,872,900,924,945,965,986,1011,1037,1055,1061,1057,1053,1053,1056,
+1060,1063,1068,1073,1076,1074,1073,1076,1083,1094,1106,1121,1135,1146,1154,1165,1178,1187,1191,1199,1222,
+1252,1270,1270,1267,1283,1316,1338,1328,1291,1256,1240,1242,1248,1249,1245,1233,1211,1186,1168,1162,1166,
+1177,1196,1214,1214,1186,1142,1106,1097,1098,1101,1101,1098,1097,1096,1095,1095,1094,1093,1095,1101,1107,
+1110,1109,1111,1119,1129,1137,1147,1160,1173,1187,1201,1219,1237,1253,1271,1293,1317,1339,1360,1384,1408,
+1431,1457,1485,1514,1540,1565,1593,1617,1628,1629,1634,1648,1668,1687,1711,1747,1805,1888,1984,2059,2084,
+2067,2054,2075,2114,2132,2118,2097,2094,2106,2108,2076,1995,1875,1740,1617,1513,1418,1331,1261,1210,1164,
+1111,1053,999,946,890,831,770,711,653,601,556,512,461,404,338,263,187,129,99,89,80,
+64,36,-10,-79,-147,-181,-185,-192,-222,-257,-275,-288,-333,-421,-534,-639,-715,-750,-762,-784,-834,
+-892,-925,-938,-966,-1014,-1045,-1037,-1032,-1092,-1225,-1368,-1452,-1446,-1366,-1265,-1230,-1337,-1584,-1855,-2003,-1968,
+-1820,-1689,-1658,-1726,-1848,-1984,-2114,-2226,-2306,-2349,-2371,-2395,-2432,-2469,-2482,-2458,-2406,-2355,-2335,-2348,-2375,
+-2404,-2449,-2531,-2630,-2688,-2675,-2636,-2646,-2709,-2745,-2678,-2537,-2421,-2402,-2471,-2569,-2657,-2724,-2776,-2823,-2874,
+-2922,-2945,-2932,-2909,-2907,-2922,-2915,-2870,-2817,-2796,-2803,-2797,-2753,-2689,-2643,-2633,-2651,-2680,-2717,-2764,-2822,
+-2879,-2919,-2930,-2920,-2910,-2914,-2934,-2960,-2985,-3004,-3017,-3026,-3033,-3038,-3039,-3037,-3038,-3045,-3059,-3077,-3104,
+-3139,-3173,-3197,-3216,-3244,-3285,-3331,-3373,-3414,-3455,-3492,-3518,-3538,-3569,-3622,-3686,-3733,-3733,-3676,-3582,-3496,
+-3454,-3470,-3535,-3635,-3752,-3864,-3953,-4019,-4072,-4121,-4168,-4212,-4253,-4287,-4314,-4339,-4372,-4413,-4450,-4480,-4515,
+-4568,-4630,-4686,-4734,-4788,-4856,-4929,-4996,-5056,-5116,-5175,-5228,-5274,-5317,-5360,-5405,-5453,-5509,-5577,-5653,-5732,
+-5814,-5900,-5990,-6075,-6143,-6197,-6246,-6296,-6342,-6381,-6419,-6461,-6508,-6552,-6592,-6634,-6679,-6725,-6768,-6806,-6838,
+-6863,-6882,-6899,-6914,-6920,-6919,-6918,-6923,-6931,-6936,-6933,-6923,-6909,-6897,-6898,-6914,-6933,-6949,-6963,-6973,-6972,
+-6954,-6933,-6920,-6905,-6874,-6830,-6801,-6808,-6844,-6886,-6918,-6940,-6956,-6964,-6951,-6901,-6822,-6752,-6724,-6733,-6742,
+-6720,-6653,-6536,-6376,-6222,-6145,-6176,-6271,-6351,-6370,-6325,-6227,-6090,-5953,-5857,-5815,-5804,-5801,-5799,-5786,-5739,
+-5652,-5552,-5470,-5397,-5311,-5213,-5119,-5032,-4935,-4815,-4687,-4575,-4483,-4383,-4246,-4081,-3945,-3890,-3901,-3900,-3836,
+-3739,-3672,-3643,-3604,-3523,-3427,-3354,-3302,-3239,-3145,-3027,-2894,-2759,-2635,-2534,-2449,-2369,-2284,-2197,-2109,-2022,
+-1937,-1845,-1731,-1597,-1469,-1371,-1298,-1232,-1180,-1166,-1183,-1185,-1131,-1033,-932,-851,-783,-716,-649,-580,-506,
+-427,-344,-257,-165,-73,10,83,146,200,261,348,461,560,610,624,653,712,762,755,707,677,
+699,754,808,853,903,965,1026,1082,1143,1214,1289,1349,1392,1431,1479,1536,1596,1665,1754,1853,1941,
+2005,2063,2136,2221,2295,2347,2393,2457,2544,2643,2741,2835,2935,3051,3186,3320,3425,3492,3537,3581,3628,
+3673,3715,3763,3824,3897,3976,4057,4134,4207,4278,4344,4397,4430,4455,4493,4549,4603,4640,4656,4665,4682,
+4734,4838,4983,5124,5217,5262,5288,5318,5351,5386,5432,5497,5573,5642,5695,5729,5740,5732,5725,5739,5783,
+5849,5931,6016,6080,6102,6088,6073,6085,6116,6144,6160,6182,6221,6264,6288,6291,6291,6297,6302,6305,6315,
+6344,6380,6399,6401,6415,6467,6550,6635,6714,6797,6887,6963,7006,7020,7018,6993,6931,6842,6767,6744,6774,
+6822,6855,6866,6865,6856,6837,6803,6765,6735,6718,6706,6689,6664,6639,6621,6616,6625,6641,6650,6645,6634,
+6632,6647,6671,6693,6712,6725,6731,6737,6766,6833,6915,6973,6990,6980,6951,6882,6758,6604,6475,6408,6403,
+6455,6557,6686,6795,6845,6836,6791,6729,6668,6624,6592,6534,6428,6322,6307,6418,6581,6680,6667,6576,6460,
+6345,6233,6128,6031,5941,5870,5833,5835,5858,5883,5904,5907,5875,5818,5758,5670,5464,5101,4717,4555,4737,
+5134,5506,5733,5861,5957,6021,6032,6015,6014,6025,6012,5976,5950,5946,5931,5886,5828,5780,5735,5675,5608,
+5556,5524,5483,5405,5291,5180,5122,5139,5190,5199,5123,4993,4883,4840,4858,4901,4926,4907,4842,4758,4677,
+4588,4482,4396,4392,4476,4564,4561,4453,4302,4172,4095,4082,4132,4204,4228,4176,4085,4022,4015,4027,3998,
+3886,3705,3517,3386,3334,3323,3314,3292,3262,3217,3147,3070,3013,2983,2962,2938,2909,2874,2828,2779,2745,
+2730,2717,2688,2650,2615,2581,2533,2474,2417,2367,2316,2261,2208,2161,2109,2040,1963,1898,1857,1828,1795,
+1753,1713,1685,1663,1633,1593,1555,1532,1521,1512,1501,1492,1481,1462,1439,1422,1418,1423,1434,1449,1465,
+1472,1462,1431,1384,1327,1263,1196,1135,1085,1050,1025,999,963,922,884,852,821,788,762,747,740,
+733,722,709,693,671,647,625,602,573,542,518,502,493,486,478,460,430,398,381,380,377,
+354,318,290,284,295,305,299,273,231,184,146,122,111,103,92,77,62,50,37,14,-21,
+-64,-107,-145,-173,-193,-211,-234,-266,-296,-315,-325,-333,-341,-349,-358,-375,-397,-417,-432,-446,-457,
+-461,-461,-468,-485,-500,-501,-490,-481,-480,-481,-480,-482,-490,-504,-523,-546,-570,-589,-605,-624,-648,
+-671,-691,-708,-728,-747,-762,-774,-787,-802,-815,-823,-829,-835,-841,-845,-848,-851,-855,-858,-860,-861,
+-864,-871,-882,-894,-903,-909,-914,-922,-928,-931,-929,-929,-934,-941,-944,-944,-943,-945,-948,-949,-947,
+-944,-941,-940,-942,-943,-941,-936,-932,-933,-935,-937,-934,-928,-921,-915,-911,-907,-905,-903,-904,-907,
+-908,-906,-902,-899,-896,-891,-884,-878,-875,-869,-859,-846,-832,-818,-804,-788,-771,-755,-741,-731,-722,
+-709,-695,-683,-675,-669,-664,-657,-651,-642,-631,-623,-621,-618,-611,-603,-600,-600,-597,-590,-589,-595,
+-603,-607,-607,-609,-615,-622,-630,-640,-651,-657,-661,-667,-677,-688,-699,-711,-727,-745,-764,-785,-811,
+-837,-860,-879,-894,-908,-922,-933,-940,-945,-951,-959,-964,-966,-969,-980,-994,-1002,-1003,-1003,-1009,-1016,
+-1018,-1017,-1017,-1018,-1019,-1020,-1022,-1023,-1019,-1011,-1002,-999,-997,-992,-989,-992,-999,-1000,-989,-973,-961,
+-957,-954,-950,-945,-940,-935,-928,-920,-911,-902,-892,-881,-869,-856,-841,-828,-814,-796,-769,-742,-721,
+-705,-685,-659,-636,-620,-605,-585,-562,-539,-516,-490,-463,-440,-418,-388,-350,-314,-284,-254,-223,-191,
+-160,-122,-72,-14,39,87,131,179,231,281,319,341,351,345,307,229,138,91,138,288,527,
+836,1186,1542,1881,2216,2553,2848,3037,3117,3159,3220,3276,3276,3221,3161,3128,3111,3100,3102,3108,3086,
+3031,2980,2961,2942,2880,2792,2736,2736,2751,2746,2734,2753,2802,2848,2870,2877,2881,2877,2861,2847,2852,
+2871,2885,2886,2886,2890,2869,2780,2619,2446,2323,2259,2207,2136,2065,2026,2016,2001,1966,1934,1923,1920,
+1898,1854,1801,1744,1669,1569,1458,1355,1254,1139,999,857,756,728,769,828,835,747,585,403,245,
+116,0,-123,-272,-459,-661,-817,-882,-880,-884,-932,-991,-1008,-982,-956,-953,-961,-970,-991,-1031,-1076,
+-1112,-1155,-1230,-1340,-1463,-1579,-1674,-1738,-1757,-1729,-1662,-1576,-1497,-1457,-1468,-1503,-1529,-1543,-1572,-1622,-1657,
+-1646,-1609,-1589,-1601,-1620,-1627,-1633,-1654,-1679,-1689,-1681,-1666,-1649,-1626,-1591,-1549,-1501,-1453,-1407,-1356,-1294,
+-1229,-1187,-1188,-1211,-1216,-1184,-1137,-1106,-1107,-1147,-1225,-1303,-1311,-1218,-1089,-1031,-1082,-1170,-1211,-1202,-1199,
+-1226,-1255,-1256,-1240,-1229,-1219,-1192,-1151,-1111,-1082,-1057,-1030,-998,-962,-927,-905,-908,-930,-951,-955,-949,
+-940,-933,-924,-917,-911,-903,-890,-877,-867,-857,-841,-820,-804,-794,-786,-777,-770,-763,-753,-737,-715,
+-688,-660,-635,-612,-588,-557,-521,-487,-457,-425,-389,-353,-322,-291,-251,-204,-155,-107,-59,-11,33,
+77,122,169,216,261,304,346,386,424,464,506,547,584,616,645,673,703,735,771,806,838,
+865,890,913,936,958,980,998,1008,1009,1008,1011,1021,1032,1038,1040,1044,1051,1057,1059,1059,1061,
+1066,1074,1086,1102,1120,1134,1145,1158,1172,1182,1187,1197,1219,1243,1251,1239,1231,1252,1297,1330,1323,
+1286,1254,1247,1256,1262,1258,1248,1232,1209,1183,1169,1171,1179,1180,1173,1161,1146,1126,1107,1097,1114,
+1118,1116,1110,1108,1109,1111,1110,1109,1110,1113,1117,1121,1124,1127,1131,1138,1147,1153,1160,1169,1182,
+1193,1203,1214,1232,1251,1270,1291,1316,1341,1361,1380,1403,1428,1451,1474,1501,1529,1554,1580,1612,1642,
+1658,1662,1669,1687,1708,1723,1742,1781,1849,1939,2028,2089,2104,2088,2078,2098,2138,2165,2163,2145,2133,
+2137,2142,2119,2045,1925,1789,1668,1563,1462,1369,1296,1245,1197,1140,1080,1029,982,927,863,791,718,
+648,591,548,508,459,403,342,275,204,147,115,102,88,62,23,-30,-96,-153,-174,-170,-176,
+-208,-245,-267,-290,-346,-437,-534,-613,-668,-700,-722,-751,-795,-839,-868,-894,-938,-992,-1024,-1034,-1072,
+-1179,-1323,-1433,-1462,-1417,-1328,-1242,-1228,-1356,-1618,-1899,-2055,-2026,-1881,-1744,-1703,-1766,-1887,-2013,-2116,-2196,
+-2263,-2317,-2355,-2381,-2406,-2429,-2434,-2409,-2363,-2322,-2307,-2317,-2343,-2384,-2448,-2533,-2612,-2650,-2645,-2637,-2672,
+-2739,-2775,-2723,-2593,-2445,-2345,-2323,-2372,-2465,-2559,-2629,-2689,-2765,-2844,-2867,-2805,-2724,-2718,-2797,-2857,-2800,
+-2652,-2526,-2491,-2504,-2492,-2441,-2405,-2425,-2491,-2565,-2631,-2694,-2759,-2816,-2852,-2867,-2869,-2868,-2870,-2879,-2901,
+-2930,-2956,-2971,-2979,-2988,-3000,-3007,-3002,-2994,-2994,-3007,-3027,-3052,-3082,-3112,-3137,-3158,-3184,-3222,-3266,-3307,
+-3345,-3381,-3416,-3447,-3476,-3510,-3554,-3607,-3654,-3665,-3621,-3531,-3442,-3405,-3441,-3531,-3640,-3740,-3819,-3882,-3937,
+-3989,-4035,-4072,-4105,-4140,-4175,-4208,-4241,-4279,-4320,-4351,-4375,-4406,-4455,-4515,-4573,-4628,-4691,-4763,-4837,-4903,
+-4962,-5019,-5071,-5117,-5163,-5214,-5269,-5321,-5371,-5427,-5495,-5574,-5655,-5735,-5817,-5901,-5979,-6043,-6095,-6142,-6190,
+-6236,-6277,-6317,-6361,-6405,-6447,-6486,-6529,-6576,-6623,-6666,-6703,-6737,-6766,-6790,-6808,-6819,-6824,-6824,-6825,-6830,
+-6837,-6841,-6839,-6828,-6814,-6806,-6814,-6832,-6848,-6858,-6869,-6878,-6876,-6858,-6839,-6828,-6815,-6786,-6750,-6740,-6767,
+-6815,-6859,-6890,-6910,-6924,-6923,-6893,-6831,-6753,-6699,-6694,-6720,-6729,-6693,-6610,-6486,-6330,-6185,-6116,-6156,-6255,
+-6329,-6332,-6273,-6178,-6065,-5957,-5884,-5857,-5854,-5850,-5838,-5813,-5759,-5673,-5577,-5493,-5416,-5329,-5229,-5128,-5029,
+-4919,-4793,-4666,-4559,-4475,-4385,-4258,-4100,-3967,-3916,-3935,-3944,-3885,-3787,-3720,-3699,-3672,-3600,-3507,-3438,-3397,
+-3343,-3248,-3116,-2970,-2825,-2695,-2585,-2490,-2406,-2330,-2260,-2188,-2109,-2021,-1929,-1829,-1721,-1616,-1526,-1449,-1379,
+-1324,-1298,-1292,-1273,-1213,-1118,-1017,-930,-858,-796,-730,-651,-561,-469,-381,-291,-197,-110,-34,37,110,
+177,242,329,442,541,577,565,572,634,703,713,672,652,698,782,853,903,958,1034,1115,1186,
+1252,1321,1387,1433,1462,1493,1538,1593,1652,1719,1803,1899,1987,2057,2126,2206,2285,2338,2361,2378,2420,
+2498,2600,2712,2826,2950,3094,3251,3394,3498,3557,3591,3621,3651,3681,3718,3774,3843,3912,3975,4033,4093,
+4156,4219,4279,4328,4363,4391,4426,4472,4522,4563,4587,4595,4605,4651,4758,4911,5057,5155,5204,5229,5249,
+5270,5301,5354,5430,5512,5585,5642,5678,5688,5681,5676,5692,5734,5800,5887,5981,6051,6070,6047,6024,6027,
+6049,6066,6076,6099,6139,6178,6193,6188,6185,6196,6211,6217,6222,6243,6279,6309,6324,6346,6402,6486,6573,
+6653,6735,6820,6892,6932,6943,6929,6884,6800,6705,6648,6652,6694,6738,6764,6780,6787,6782,6762,6739,6720,
+6708,6695,6677,6653,6623,6589,6556,6533,6524,6524,6526,6524,6524,6530,6543,6555,6565,6575,6583,6582,6572,
+6572,6600,6644,6675,6681,6675,6667,6637,6570,6493,6455,6480,6549,6631,6714,6789,6838,6844,6819,6786,6756,
+6726,6691,6646,6575,6462,6343,6295,6372,6535,6679,6718,6649,6532,6426,6353,6298,6238,6173,6122,6099,6096,
+6093,6084,6073,6043,5976,5886,5814,5745,5578,5235,4814,4554,4626,4962,5348,5635,5824,5964,6058,6088,6077,
+6073,6084,6079,6046,6013,5997,5983,5953,5912,5874,5837,5790,5742,5710,5690,5655,5580,5463,5339,5252,5229,
+5242,5232,5161,5057,4980,4959,4975,4989,4984,4956,4912,4859,4799,4723,4631,4554,4533,4566,4593,4559,4462,
+4340,4225,4142,4122,4182,4281,4334,4291,4183,4085,4039,4029,4002,3917,3778,3634,3538,3499,3482,3457,3427,
+3398,3352,3270,3175,3117,3113,3126,3110,3054,2971,2879,2795,2739,2715,2706,2686,2649,2608,2564,2514,2462,
+2419,2388,2354,2301,2235,2170,2111,2049,1980,1916,1868,1835,1799,1754,1712,1689,1680,1658,1607,1541,1492,
+1474,1475,1478,1477,1474,1464,1443,1418,1399,1397,1413,1438,1458,1461,1443,1412,1374,1326,1264,1190,1118,
+1063,1031,1012,993,964,929,894,863,831,801,777,760,747,731,714,699,683,665,644,623,601,
+573,541,512,490,477,471,464,447,419,387,363,343,319,290,266,257,260,266,268,261,241,
+209,169,132,108,97,88,71,47,28,19,12,-7,-42,-85,-127,-163,-191,-205,-215,-235,-272,
+-312,-339,-354,-368,-384,-397,-408,-425,-448,-466,-474,-476,-477,-472,-463,-461,-473,-486,-487,-478,-473,
+-476,-484,-492,-505,-523,-544,-565,-588,-610,-628,-641,-658,-679,-701,-717,-732,-749,-765,-777,-787,-802,
+-821,-836,-843,-846,-850,-855,-858,-860,-865,-871,-874,-874,-873,-874,-878,-885,-893,-900,-905,-913,-923,
+-932,-933,-929,-927,-931,-937,-941,-940,-940,-941,-944,-946,-946,-943,-937,-933,-931,-930,-928,-923,-921,
+-925,-929,-930,-926,-919,-911,-905,-898,-891,-886,-885,-886,-887,-884,-877,-871,-866,-862,-855,-847,-842,
+-839,-835,-826,-815,-803,-788,-770,-753,-738,-724,-709,-696,-686,-674,-661,-649,-641,-636,-630,-623,-617,
+-610,-601,-593,-590,-588,-582,-575,-570,-570,-568,-565,-565,-570,-578,-583,-585,-589,-592,-596,-601,-608,
+-616,-623,-629,-639,-652,-664,-674,-685,-701,-719,-738,-761,-786,-811,-833,-850,-867,-886,-903,-916,-922,
+-925,-930,-936,-942,-945,-948,-957,-967,-973,-973,-973,-979,-988,-992,-990,-988,-989,-993,-996,-999,-1000,
+-997,-989,-981,-976,-974,-971,-966,-964,-967,-968,-961,-949,-940,-936,-934,-929,-923,-918,-914,-906,-896,
+-886,-876,-866,-856,-847,-835,-821,-807,-795,-780,-756,-727,-703,-688,-673,-651,-628,-609,-592,-571,-548,
+-526,-505,-478,-447,-420,-400,-378,-347,-314,-283,-256,-227,-196,-164,-126,-81,-30,22,76,128,180,
+235,292,341,370,385,392,382,336,259,196,193,272,437,692,1023,1386,1736,2071,2402,2706,2927,
+3058,3157,3265,3343,3334,3254,3177,3140,3119,3098,3099,3128,3150,3144,3137,3156,3161,3095,2970,2864,2816,
+2786,2736,2690,2694,2747,2800,2828,2851,2881,2904,2904,2904,2932,2979,3007,3001,2982,2974,2950,2860,2699,
+2525,2405,2344,2297,2228,2155,2108,2083,2052,2006,1964,1940,1922,1895,1863,1837,1803,1737,1635,1524,1429,
+1341,1229,1084,934,835,830,914,1018,1054,975,812,635,480,342,202,60,-89,-264,-460,-626,-708,
+-726,-752,-828,-914,-956,-955,-953,-963,-962,-943,-938,-971,-1024,-1068,-1109,-1174,-1277,-1399,-1516,-1603,-1644,
+-1634,-1589,-1527,-1462,-1404,-1381,-1413,-1479,-1539,-1576,-1615,-1664,-1692,-1667,-1609,-1567,-1558,-1562,-1559,-1560,-1577,
+-1596,-1602,-1600,-1602,-1608,-1606,-1593,-1569,-1525,-1458,-1379,-1313,-1268,-1234,-1207,-1197,-1206,-1212,-1195,-1157,-1117,
+-1100,-1122,-1178,-1232,-1229,-1153,-1065,-1048,-1116,-1199,-1232,-1219,-1214,-1234,-1251,-1244,-1226,-1217,-1208,-1182,-1137,
+-1092,-1059,-1032,-1006,-975,-939,-899,-866,-855,-866,-888,-907,-918,-921,-916,-910,-907,-906,-901,-889,-876,
+-866,-856,-841,-822,-806,-796,-788,-780,-773,-766,-757,-741,-720,-694,-665,-639,-616,-592,-562,-527,-494,
+-463,-430,-393,-357,-326,-296,-261,-218,-173,-128,-84,-37,11,59,107,152,194,236,277,315,351,
+387,426,467,508,545,578,611,642,672,705,738,772,805,836,868,897,924,946,963,974,980,
+982,986,996,1011,1023,1026,1023,1022,1027,1034,1038,1040,1044,1051,1059,1069,1085,1105,1125,1142,1157,
+1172,1185,1195,1204,1218,1228,1220,1198,1186,1207,1255,1293,1296,1274,1259,1263,1272,1268,1253,1239,1228,
+1213,1193,1179,1179,1182,1171,1148,1124,1109,1106,1108,1114,1141,1137,1128,1120,1118,1122,1124,1125,1126,
+1130,1135,1138,1140,1142,1147,1155,1165,1172,1175,1178,1186,1199,1209,1217,1228,1246,1266,1286,1307,1331,
+1355,1375,1395,1419,1443,1464,1486,1512,1539,1561,1585,1616,1646,1664,1672,1687,1716,1744,1762,1784,1833,
+1915,2008,2083,2119,2117,2095,2088,2112,2157,2195,2207,2196,2183,2181,2182,2157,2079,1955,1820,1701,1597,
+1496,1403,1331,1278,1226,1167,1109,1060,1014,959,892,815,729,645,579,538,503,458,403,347,288,
+226,171,134,111,84,48,7,-38,-88,-130,-147,-147,-158,-193,-234,-266,-304,-367,-449,-523,-576,
+-613,-645,-676,-708,-740,-767,-791,-832,-899,-972,-1025,-1077,-1172,-1315,-1441,-1485,-1447,-1373,-1300,-1252,-1269,
+-1403,-1646,-1898,-2039,-2026,-1911,-1791,-1742,-1789,-1905,-2030,-2120,-2175,-2222,-2275,-2323,-2353,-2370,-2383,-2385,-2365,
+-2330,-2298,-2281,-2275,-2287,-2334,-2420,-2522,-2599,-2634,-2643,-2660,-2706,-2771,-2817,-2801,-2702,-2537,-2371,-2278,-2290,
+-2370,-2436,-2453,-2468,-2550,-2683,-2759,-2711,-2610,-2600,-2709,-2796,-2711,-2476,-2262,-2193,-2228,-2246,-2206,-2168,-2199,
+-2294,-2405,-2505,-2596,-2680,-2743,-2778,-2794,-2804,-2813,-2818,-2825,-2845,-2876,-2906,-2925,-2937,-2951,-2965,-2969,-2959,
+-2943,-2939,-2951,-2972,-2994,-3015,-3037,-3061,-3087,-3118,-3153,-3192,-3228,-3261,-3292,-3327,-3367,-3408,-3451,-3496,-3546,
+-3587,-3593,-3543,-3453,-3375,-3361,-3425,-3533,-3638,-3714,-3761,-3799,-3843,-3894,-3940,-3973,-4001,-4034,-4073,-4112,-4149,
+-4184,-4214,-4237,-4259,-4292,-4342,-4402,-4463,-4526,-4596,-4669,-4739,-4802,-4862,-4917,-4965,-5008,-5056,-5116,-5178,-5234,
+-5283,-5338,-5406,-5488,-5572,-5653,-5731,-5807,-5879,-5941,-5992,-6038,-6084,-6130,-6174,-6217,-6262,-6306,-6347,-6387,-6431,
+-6479,-6526,-6567,-6604,-6639,-6672,-6698,-6714,-6722,-6724,-6726,-6729,-6733,-6736,-6738,-6736,-6728,-6715,-6710,-6719,-6738,
+-6752,-6761,-6772,-6783,-6781,-6765,-6747,-6734,-6718,-6692,-6671,-6683,-6726,-6779,-6821,-6850,-6869,-6876,-6861,-6818,-6752,
+-6684,-6648,-6662,-6699,-6710,-6666,-6573,-6443,-6289,-6150,-6087,-6132,-6235,-6309,-6305,-6239,-6148,-6055,-5975,-5926,-5908,
+-5898,-5877,-5844,-5805,-5753,-5681,-5597,-5513,-5431,-5340,-5237,-5124,-5004,-4876,-4746,-4629,-4533,-4456,-4375,-4268,-4137,
+-4024,-3979,-3994,-3999,-3937,-3835,-3764,-3744,-3721,-3651,-3556,-3492,-3464,-3426,-3333,-3192,-3037,-2896,-2773,-2661,-2553,
+-2455,-2377,-2320,-2267,-2197,-2108,-2014,-1926,-1843,-1759,-1673,-1592,-1524,-1476,-1445,-1417,-1374,-1307,-1220,-1125,-1035,
+-957,-889,-817,-729,-630,-537,-450,-358,-265,-187,-126,-64,12,91,164,249,361,463,502,488,492,
+558,637,659,625,610,660,747,818,867,924,1008,1099,1179,1250,1319,1381,1421,1444,1467,1504,1549,
+1599,1663,1746,1839,1927,2007,2095,2196,2291,2356,2389,2415,2459,2527,2614,2709,2815,2940,3088,3246,3384,
+3476,3526,3563,3606,3651,3690,3727,3771,3822,3869,3910,3952,4003,4064,4128,4191,4246,4290,4326,4358,4395,
+4439,4486,4521,4534,4540,4583,4689,4840,4981,5075,5128,5162,5190,5217,5254,5311,5383,5455,5520,5578,5621,
+5637,5632,5626,5640,5675,5732,5814,5911,5986,6007,5983,5956,5954,5972,5988,5999,6018,6050,6079,6090,6088,
+6089,6105,6127,6139,6145,6161,6192,6224,6248,6277,6333,6415,6503,6587,6671,6758,6831,6874,6884,6858,6783,
+6669,6567,6531,6566,6624,6664,6688,6713,6735,6732,6705,6677,6668,6672,6672,6659,6635,6604,6569,6537,6511,
+6492,6477,6468,6467,6474,6484,6493,6500,6508,6521,6534,6535,6519,6495,6479,6471,6460,6444,6440,6455,6473,
+6478,6484,6526,6613,6714,6791,6833,6854,6857,6842,6815,6791,6773,6748,6707,6657,6599,6517,6410,6323,6323,
+6432,6584,6674,6650,6547,6446,6392,6368,6335,6283,6232,6197,6170,6142,6119,6108,6087,6027,5932,5850,5788,
+5665,5382,4978,4648,4589,4824,5196,5537,5785,5959,6072,6121,6123,6119,6126,6127,6107,6077,6056,6040,6018,
+5988,5952,5911,5865,5823,5794,5775,5748,5698,5621,5521,5417,5334,5280,5239,5189,5138,5113,5114,5116,5091,
+5043,4992,4949,4912,4874,4827,4768,4711,4674,4654,4625,4569,4490,4404,4312,4221,4166,4185,4264,4338,4344,
+4276,4173,4077,4009,3959,3907,3840,3773,3729,3700,3655,3587,3525,3488,3450,3373,3276,3221,3232,3260,3242,
+3157,3033,2904,2791,2716,2685,2681,2672,2645,2605,2562,2516,2466,2424,2397,2373,2332,2267,2191,2122,2061,
+2002,1943,1893,1851,1810,1760,1714,1689,1685,1671,1618,1538,1467,1433,1429,1437,1445,1450,1446,1427,1395,
+1369,1366,1387,1419,1441,1441,1419,1386,1349,1306,1248,1175,1103,1046,1013,994,978,957,931,902,873,
+843,815,794,776,758,736,713,694,678,662,644,624,602,575,544,511,483,465,456,448,432,
+409,384,358,327,287,252,234,234,239,238,229,219,206,186,158,125,97,80,66,44,13,
+-12,-24,-29,-43,-73,-109,-144,-176,-202,-215,-223,-244,-287,-336,-372,-393,-412,-431,-443,-451,-463,
+-482,-494,-493,-485,-477,-470,-463,-461,-470,-484,-490,-491,-495,-505,-517,-529,-544,-563,-582,-600,-621,
+-645,-666,-681,-696,-716,-735,-750,-764,-779,-791,-797,-803,-818,-839,-855,-860,-861,-863,-865,-866,-869,
+-876,-885,-890,-890,-889,-890,-893,-896,-900,-902,-905,-911,-921,-930,-931,-927,-925,-929,-934,-937,-937,
+-938,-940,-941,-943,-943,-941,-934,-927,-923,-921,-917,-911,-910,-915,-919,-917,-911,-904,-898,-890,-882,
+-873,-869,-868,-869,-869,-864,-855,-846,-839,-834,-826,-817,-811,-805,-798,-788,-779,-770,-755,-736,-718,
+-705,-693,-679,-665,-654,-643,-631,-617,-608,-603,-597,-591,-585,-580,-573,-565,-560,-557,-554,-549,-545,
+-543,-542,-540,-540,-544,-550,-554,-559,-564,-570,-573,-575,-579,-585,-594,-604,-617,-631,-641,-650,-660,
+-674,-692,-711,-732,-756,-781,-803,-821,-839,-857,-876,-890,-899,-905,-911,-919,-924,-926,-928,-935,-943,
+-948,-948,-947,-952,-959,-964,-963,-961,-962,-965,-969,-970,-970,-969,-965,-961,-958,-956,-952,-945,-939,
+-936,-936,-933,-926,-919,-915,-912,-906,-898,-894,-890,-883,-872,-860,-850,-840,-829,-821,-812,-801,-788,
+-776,-762,-740,-711,-685,-668,-654,-635,-614,-594,-575,-553,-528,-507,-488,-463,-433,-406,-385,-366,-341,
+-313,-286,-261,-234,-201,-163,-122,-82,-42,3,58,120,180,241,303,360,396,416,433,446,434,
+385,322,285,301,394,590,888,1241,1587,1916,2252,2587,2871,3080,3242,3372,3432,3387,3287,3217,3193,
+3164,3115,3097,3143,3211,3251,3281,3332,3368,3316,3176,3024,2915,2826,2733,2667,2672,2729,2779,2802,2828,
+2878,2927,2953,2977,3026,3088,3122,3113,3090,3074,3037,2937,2771,2600,2481,2419,2373,2312,2246,2195,2158,
+2115,2062,2011,1966,1920,1875,1851,1852,1848,1797,1697,1585,1493,1409,1302,1157,1004,902,902,999,1121,
+1169,1101,956,804,668,521,350,179,28,-121,-288,-440,-532,-576,-637,-745,-856,-915,-930,-946,-966,
+-957,-916,-888,-910,-967,-1022,-1068,-1127,-1215,-1325,-1434,-1513,-1538,-1506,-1449,-1397,-1355,-1319,-1309,-1356,-1450,
+-1545,-1609,-1654,-1696,-1712,-1674,-1601,-1540,-1512,-1501,-1490,-1484,-1491,-1501,-1505,-1512,-1531,-1556,-1578,-1596,-1603,
+-1571,-1482,-1366,-1283,-1257,-1260,-1254,-1236,-1225,-1226,-1219,-1190,-1149,-1120,-1123,-1154,-1182,-1172,-1120,-1072,-1079,
+-1141,-1202,-1220,-1209,-1210,-1229,-1243,-1234,-1216,-1205,-1195,-1168,-1123,-1075,-1037,-1009,-984,-956,-923,-885,-847,
+-822,-817,-832,-857,-881,-894,-893,-888,-887,-889,-887,-877,-867,-860,-852,-839,-822,-807,-796,-786,-778,
+-772,-767,-759,-747,-729,-704,-673,-643,-618,-593,-565,-533,-499,-468,-434,-398,-363,-331,-300,-266,-227,
+-187,-148,-108,-63,-14,36,84,128,169,211,251,289,324,359,397,436,473,509,543,579,614,
+648,681,715,748,783,821,862,899,928,947,958,964,967,970,977,989,1003,1013,1014,1008,1004,
+1005,1011,1017,1023,1030,1041,1051,1059,1072,1092,1116,1137,1155,1171,1187,1202,1212,1219,1220,1213,1204,
+1207,1232,1270,1296,1297,1284,1279,1284,1282,1263,1240,1234,1243,1246,1231,1210,1196,1186,1170,1147,1128,
+1123,1130,1138,1141,1162,1154,1145,1138,1137,1138,1139,1140,1145,1150,1152,1153,1155,1161,1168,1176,1183,
+1190,1193,1196,1205,1216,1227,1235,1247,1266,1285,1303,1321,1342,1364,1384,1404,1428,1451,1472,1495,1522,
+1547,1566,1586,1612,1639,1655,1667,1691,1730,1767,1793,1829,1899,1997,2089,2142,2149,2125,2099,2097,2127,
+2178,2222,2240,2234,2221,2215,2207,2168,2080,1953,1820,1705,1607,1515,1430,1363,1310,1255,1197,1143,1095,
+1044,987,922,846,752,653,577,535,507,467,414,360,307,254,204,165,133,95,51,15,-13,
+-42,-72,-93,-106,-128,-171,-221,-266,-315,-378,-450,-507,-542,-562,-580,-604,-632,-661,-685,-713,-767,
+-853,-947,-1032,-1133,-1275,-1430,-1517,-1493,-1405,-1328,-1289,-1280,-1318,-1442,-1647,-1855,-1982,-1996,-1927,-1829,-1760,
+-1769,-1866,-2000,-2105,-2161,-2199,-2244,-2288,-2314,-2323,-2329,-2329,-2316,-2292,-2268,-2244,-2223,-2224,-2279,-2389,-2510,
+-2593,-2635,-2662,-2697,-2739,-2787,-2833,-2847,-2785,-2635,-2461,-2364,-2382,-2442,-2432,-2330,-2245,-2301,-2487,-2655,-2683,
+-2614,-2600,-2691,-2760,-2649,-2378,-2127,-2036,-2067,-2087,-2041,-1992,-2014,-2110,-2230,-2350,-2469,-2580,-2661,-2703,-2720,
+-2733,-2747,-2759,-2770,-2789,-2816,-2846,-2872,-2893,-2911,-2921,-2917,-2900,-2882,-2876,-2885,-2901,-2915,-2927,-2945,-2974,
+-3008,-3044,-3078,-3112,-3142,-3170,-3198,-3236,-3283,-3333,-3383,-3438,-3496,-3535,-3523,-3453,-3359,-3304,-3324,-3408,-3512,
+-3597,-3648,-3678,-3708,-3749,-3798,-3844,-3879,-3910,-3944,-3985,-4024,-4056,-4080,-4098,-4116,-4140,-4178,-4231,-4293,-4359,
+-4429,-4501,-4570,-4633,-4692,-4751,-4806,-4854,-4900,-4954,-5019,-5084,-5141,-5190,-5245,-5313,-5393,-5478,-5560,-5636,-5708,
+-5776,-5836,-5887,-5933,-5979,-6026,-6071,-6116,-6161,-6206,-6249,-6291,-6336,-6383,-6430,-6471,-6508,-6544,-6576,-6601,-6616,
+-6622,-6623,-6624,-6627,-6629,-6628,-6627,-6626,-6621,-6613,-6610,-6620,-6638,-6656,-6670,-6684,-6695,-6694,-6678,-6659,-6641,
+-6620,-6599,-6598,-6631,-6686,-6736,-6772,-6798,-6814,-6810,-6780,-6732,-6675,-6625,-6605,-6626,-6665,-6674,-6627,-6529,-6397,
+-6246,-6111,-6054,-6103,-6211,-6286,-6278,-6205,-6113,-6033,-5976,-5949,-5939,-5920,-5876,-5819,-5768,-5725,-5674,-5606,-5524,
+-5436,-5345,-5245,-5126,-4987,-4838,-4703,-4595,-4509,-4431,-4354,-4273,-4185,-4105,-4064,-4062,-4049,-3982,-3880,-3808,-3786,
+-3762,-3691,-3596,-3539,-3527,-3505,-3418,-3271,-3111,-2972,-2854,-2741,-2624,-2513,-2429,-2373,-2327,-2263,-2175,-2085,-2013,
+-1957,-1895,-1817,-1733,-1664,-1619,-1586,-1542,-1478,-1399,-1314,-1224,-1134,-1050,-974,-894,-803,-707,-619,-532,-436,
+-340,-272,-233,-192,-128,-51,20,102,208,312,364,370,392,466,550,579,557,549,596,674,737,
+785,846,932,1025,1107,1179,1247,1305,1345,1371,1398,1430,1467,1511,1575,1660,1753,1842,1932,2038,2157,
+2269,2354,2416,2470,2528,2590,2654,2725,2811,2920,3053,3195,3317,3398,3449,3500,3567,3638,3691,3722,3743,
+3762,3782,3804,3836,3883,3941,4006,4072,4139,4200,4251,4291,4327,4371,4424,4467,4481,4481,4516,4616,4760,
+4890,4978,5035,5087,5136,5178,5220,5272,5329,5384,5442,5508,5567,5595,5592,5584,5591,5615,5657,5725,5814,
+5887,5910,5889,5864,5865,5888,5914,5932,5949,5969,5989,6003,6009,6015,6029,6049,6067,6081,6096,6120,6146,
+6170,6203,6261,6343,6431,6515,6602,6691,6769,6821,6837,6804,6709,6574,6467,6445,6498,6561,6597,6620,6657,
+6693,6695,6658,6617,6600,6607,6619,6621,6607,6581,6551,6530,6517,6504,6487,6473,6468,6469,6468,6466,6466,
+6474,6489,6503,6508,6497,6470,6439,6411,6386,6368,6370,6400,6446,6494,6545,6619,6716,6809,6867,6883,6879,
+6867,6846,6814,6783,6756,6722,6675,6631,6605,6577,6506,6391,6306,6329,6454,6583,6621,6564,6483,6434,6409,
+6372,6314,6254,6210,6174,6140,6117,6114,6115,6084,6010,5922,5844,5735,5507,5145,4779,4613,4751,5108,5496,
+5785,5961,6067,6127,6150,6153,6153,6157,6154,6138,6117,6095,6072,6045,6010,5968,5923,5883,5853,5825,5795,
+5763,5724,5661,5565,5456,5366,5312,5282,5264,5257,5253,5233,5184,5120,5061,5016,4980,4947,4917,4883,4842,
+4793,4739,4678,4613,4553,4498,4428,4330,4226,4168,4185,4255,4319,4327,4263,4155,4051,3984,3947,3914,3874,
+3835,3793,3728,3640,3563,3522,3490,3422,3329,3271,3278,3303,3276,3177,3038,2901,2787,2712,2679,2674,2663,
+2631,2589,2555,2527,2492,2451,2417,2392,2361,2307,2231,2151,2083,2026,1974,1923,1875,1826,1773,1722,1691,
+1681,1667,1619,1539,1458,1408,1393,1398,1408,1415,1411,1392,1365,1347,1349,1369,1394,1410,1408,1388,1357,
+1319,1276,1222,1156,1088,1033,995,973,958,942,923,900,874,848,824,802,782,761,739,717,698,
+682,667,648,625,600,572,542,507,474,452,441,433,420,402,385,364,330,286,247,226,219,
+215,205,193,181,169,154,133,105,74,50,34,13,-17,-48,-63,-68,-81,-107,-139,-168,-195,
+-222,-242,-255,-278,-321,-370,-405,-425,-440,-454,-460,-460,-464,-477,-486,-483,-473,-468,-468,-471,-477,
+-492,-509,-522,-531,-541,-553,-562,-570,-582,-598,-614,-630,-653,-680,-703,-720,-736,-755,-772,-786,-800,
+-813,-823,-826,-830,-843,-861,-874,-877,-876,-876,-876,-875,-877,-886,-896,-902,-903,-903,-904,-906,-907,
+-909,-909,-909,-911,-918,-924,-926,-926,-927,-930,-933,-934,-936,-939,-941,-941,-942,-942,-938,-930,-922,
+-918,-915,-908,-900,-898,-901,-901,-896,-889,-885,-880,-872,-862,-854,-850,-849,-849,-848,-843,-835,-826,
+-818,-811,-804,-797,-791,-781,-767,-753,-744,-737,-724,-704,-686,-673,-663,-649,-635,-625,-616,-603,-589,
+-579,-574,-569,-563,-557,-553,-548,-542,-535,-532,-529,-526,-522,-519,-517,-515,-516,-518,-522,-525,-530,
+-538,-545,-549,-551,-555,-562,-572,-583,-596,-609,-620,-628,-637,-651,-667,-684,-703,-725,-750,-774,-794,
+-812,-828,-844,-858,-870,-881,-891,-900,-905,-906,-908,-914,-924,-930,-931,-929,-928,-932,-937,-938,-936,
+-936,-939,-941,-939,-936,-936,-939,-941,-942,-941,-936,-926,-915,-909,-909,-909,-904,-898,-894,-891,-883,
+-873,-867,-863,-855,-844,-833,-824,-814,-802,-792,-786,-780,-768,-754,-739,-720,-695,-669,-649,-632,-614,
+-594,-575,-557,-535,-509,-485,-465,-446,-424,-404,-385,-364,-340,-315,-292,-268,-241,-207,-167,-123,-82,
+-46,-5,50,116,182,243,306,367,412,440,467,499,517,498,452,401,374,403,536,786,1106,
+1430,1743,2082,2455,2817,3120,3357,3514,3553,3477,3373,3331,3334,3298,3206,3146,3181,3269,3342,3403,3485,
+3558,3544,3424,3255,3093,2940,2801,2719,2727,2786,2827,2836,2854,2900,2951,2988,3031,3096,3161,3189,3178,
+3161,3145,3101,2992,2831,2671,2558,2492,2443,2389,2331,2277,2227,2175,2121,2066,2006,1937,1875,1851,1865,
+1877,1839,1750,1643,1551,1465,1359,1219,1072,970,966,1060,1181,1232,1171,1043,915,791,630,422,215,
+53,-73,-200,-323,-411,-476,-566,-695,-814,-876,-898,-922,-948,-939,-890,-849,-858,-908,-964,-1015,-1074,
+-1151,-1243,-1338,-1412,-1433,-1396,-1335,-1291,-1268,-1252,-1257,-1318,-1435,-1559,-1646,-1697,-1727,-1728,-1678,-1593,-1517,
+-1474,-1452,-1433,-1417,-1409,-1410,-1419,-1442,-1476,-1511,-1544,-1587,-1625,-1611,-1513,-1369,-1262,-1237,-1261,-1276,-1264,
+-1245,-1236,-1228,-1208,-1178,-1153,-1144,-1148,-1151,-1138,-1111,-1096,-1116,-1159,-1194,-1205,-1206,-1219,-1239,-1245,-1231,
+-1210,-1195,-1183,-1157,-1114,-1066,-1026,-995,-969,-940,-907,-873,-841,-814,-799,-804,-826,-852,-866,-865,-861,
+-863,-868,-868,-862,-855,-851,-846,-835,-819,-803,-789,-778,-769,-764,-761,-756,-748,-734,-712,-682,-651,
+-623,-597,-570,-539,-505,-472,-438,-405,-374,-343,-311,-274,-235,-198,-163,-126,-85,-38,10,57,100,
+141,184,226,266,303,341,380,418,454,488,523,560,597,634,670,703,736,774,819,867,907,
+934,948,953,954,954,958,966,977,988,996,998,995,991,992,999,1007,1015,1024,1036,1046,1054,
+1063,1081,1106,1131,1149,1164,1182,1201,1215,1222,1229,1245,1273,1309,1342,1360,1356,1336,1315,1306,1303,
+1290,1263,1244,1253,1282,1301,1288,1255,1222,1200,1183,1168,1160,1159,1163,1165,1162,1176,1173,1168,1164,
+1161,1157,1155,1158,1163,1167,1165,1164,1169,1179,1186,1189,1194,1201,1209,1216,1224,1235,1245,1255,1268,
+1285,1302,1318,1334,1353,1373,1391,1412,1435,1457,1477,1501,1529,1553,1569,1585,1608,1632,1648,1663,1693,
+1737,1778,1815,1873,1968,2079,2160,2181,2155,2115,2090,2096,2135,2189,2233,2250,2243,2226,2208,2183,2128,
+2033,1910,1789,1686,1600,1521,1451,1393,1339,1283,1228,1177,1128,1073,1014,953,878,776,662,575,534,
+513,481,431,378,328,281,238,203,170,129,85,57,46,33,9,-19,-47,-83,-137,-200,-257,
+-311,-371,-436,-491,-520,-525,-519,-522,-543,-577,-611,-649,-712,-806,-914,-1025,-1159,-1324,-1467,-1510,-1443,
+-1341,-1285,-1278,-1290,-1328,-1434,-1609,-1793,-1918,-1960,-1927,-1841,-1747,-1715,-1786,-1924,-2052,-2129,-2174,-2216,-2252,
+-2266,-2261,-2254,-2250,-2241,-2227,-2210,-2188,-2166,-2175,-2250,-2379,-2503,-2581,-2623,-2664,-2712,-2748,-2772,-2804,-2832,
+-2804,-2696,-2570,-2521,-2569,-2609,-2523,-2317,-2144,-2160,-2367,-2602,-2708,-2685,-2659,-2702,-2733,-2625,-2379,-2139,-2024,
+-2014,-2002,-1944,-1891,-1903,-1977,-2079,-2197,-2333,-2470,-2574,-2628,-2650,-2663,-2677,-2693,-2710,-2730,-2754,-2781,-2812,
+-2843,-2862,-2861,-2846,-2826,-2811,-2806,-2809,-2816,-2822,-2832,-2854,-2890,-2932,-2969,-3002,-3034,-3062,-3087,-3114,-3153,
+-3201,-3251,-3305,-3371,-3442,-3480,-3445,-3347,-3251,-3226,-3282,-3377,-3459,-3510,-3544,-3577,-3618,-3663,-3709,-3751,-3789,
+-3825,-3863,-3900,-3932,-3954,-3969,-3982,-4002,-4031,-4073,-4126,-4188,-4258,-4333,-4403,-4464,-4518,-4572,-4630,-4686,-4737,
+-4790,-4852,-4920,-4986,-5044,-5098,-5155,-5221,-5297,-5378,-5459,-5535,-5605,-5670,-5729,-5781,-5829,-5876,-5924,-5970,-6014,
+-6059,-6105,-6150,-6193,-6236,-6282,-6327,-6370,-6410,-6445,-6474,-6497,-6511,-6517,-6517,-6517,-6518,-6518,-6516,-6514,-6514,
+-6513,-6511,-6513,-6525,-6546,-6568,-6588,-6604,-6615,-6612,-6598,-6578,-6555,-6532,-6521,-6539,-6589,-6646,-6687,-6714,-6735,
+-6745,-6730,-6690,-6643,-6603,-6575,-6567,-6586,-6615,-6618,-6568,-6472,-6341,-6192,-6064,-6014,-6070,-6181,-6255,-6240,-6157,
+-6059,-5986,-5949,-5943,-5943,-5916,-5851,-5771,-5711,-5677,-5648,-5595,-5515,-5424,-5340,-5258,-5153,-5009,-4845,-4702,-4596,
+-4506,-4413,-4327,-4266,-4223,-4182,-4147,-4123,-4093,-4024,-3930,-3861,-3836,-3810,-3741,-3651,-3600,-3599,-3587,-3507,-3361,
+-3197,-3052,-2928,-2809,-2689,-2577,-2487,-2424,-2373,-2313,-2237,-2161,-2106,-2072,-2034,-1968,-1881,-1799,-1741,-1698,-1646,
+-1570,-1480,-1387,-1296,-1208,-1124,-1045,-963,-873,-783,-697,-606,-502,-405,-347,-330,-315,-273,-211,-149,-78,
+14,113,180,216,262,341,418,448,443,455,509,581,641,692,758,844,936,1019,1093,1158,1209,
+1248,1283,1321,1361,1399,1447,1516,1604,1696,1785,1880,1997,2125,2243,2336,2412,2484,2552,2611,2665,2728,
+2809,2910,3025,3142,3242,3315,3371,3433,3513,3597,3657,3684,3688,3689,3697,3715,3744,3783,3829,3884,3947,
+4020,4097,4167,4222,4267,4317,4377,4425,4436,4424,4443,4533,4668,4792,4875,4938,5006,5076,5132,5176,5216,
+5258,5304,5364,5443,5516,5553,5551,5539,5540,5556,5584,5636,5710,5774,5796,5781,5764,5771,5801,5835,5860,
+5877,5891,5907,5925,5938,5945,5950,5965,5989,6014,6036,6056,6076,6101,6141,6206,6288,6370,6445,6525,6612,
+6694,6755,6781,6754,6660,6526,6419,6396,6443,6499,6530,6554,6595,6637,6645,6611,6564,6533,6527,6538,6552,
+6554,6539,6516,6503,6502,6500,6490,6476,6468,6463,6455,6445,6443,6449,6457,6462,6461,6453,6438,6420,6408,
+6402,6402,6412,6442,6492,6552,6614,6683,6760,6828,6867,6875,6868,6858,6837,6801,6759,6720,6679,6628,6587,
+6581,6596,6568,6461,6332,6288,6373,6511,6591,6580,6527,6484,6452,6405,6344,6290,6254,6225,6195,6167,6153,
+6153,6147,6108,6032,5936,5817,5623,5304,4928,4687,4751,5098,5525,5834,5987,6062,6126,6176,6192,6186,6185,
+6192,6191,6173,6145,6117,6090,6059,6022,5982,5947,5916,5883,5846,5813,5783,5738,5665,5576,5502,5460,5436,
+5410,5378,5344,5305,5257,5206,5160,5119,5076,5034,4999,4967,4927,4872,4807,4739,4675,4625,4584,4526,4424,
+4283,4158,4111,4162,4262,4335,4328,4251,4158,4091,4043,3978,3887,3797,3733,3687,3639,3593,3558,3518,3447,
+3358,3298,3294,3305,3268,3165,3031,2911,2826,2778,2758,2746,2713,2651,2583,2540,2525,2516,2494,2461,2430,
+2398,2351,2279,2194,2117,2057,2008,1958,1905,1847,1789,1735,1696,1676,1656,1613,1542,1463,1405,1379,1375,
+1379,1378,1370,1356,1347,1349,1360,1369,1371,1370,1365,1353,1329,1292,1247,1195,1135,1072,1016,976,950,
+935,922,906,885,862,840,819,796,772,751,734,718,702,687,670,649,621,590,562,533,500,
+466,441,430,422,410,397,385,367,337,299,263,236,212,188,171,160,146,125,103,84,64,
+40,19,6,-8,-36,-69,-90,-97,-110,-139,-172,-200,-224,-251,-276,-295,-316,-350,-390,-417,-428,
+-433,-440,-444,-443,-446,-458,-468,-470,-468,-471,-480,-491,-504,-522,-543,-560,-570,-578,-584,-590,-597,
+-610,-627,-644,-663,-687,-713,-735,-752,-770,-789,-807,-819,-830,-843,-853,-858,-863,-874,-888,-895,-895,
+-893,-892,-890,-887,-888,-895,-904,-910,-913,-914,-914,-913,-914,-916,-916,-915,-915,-917,-921,-924,-927,
+-930,-933,-933,-932,-935,-939,-941,-941,-941,-940,-935,-925,-916,-912,-908,-900,-890,-886,-885,-880,-872,
+-867,-865,-861,-851,-840,-833,-831,-829,-825,-821,-818,-814,-807,-799,-791,-784,-781,-776,-764,-746,-727,
+-716,-710,-697,-677,-657,-643,-632,-619,-605,-595,-587,-576,-563,-553,-548,-544,-537,-531,-528,-525,-520,
+-514,-509,-507,-504,-501,-497,-494,-492,-492,-494,-497,-500,-505,-511,-519,-524,-528,-533,-542,-551,-560,
+-571,-583,-597,-608,-619,-632,-647,-661,-677,-696,-720,-746,-769,-786,-800,-813,-827,-841,-856,-868,-877,
+-881,-882,-886,-893,-903,-911,-914,-911,-907,-907,-910,-911,-909,-908,-910,-912,-909,-904,-904,-910,-917,
+-921,-922,-916,-904,-890,-883,-884,-886,-882,-876,-872,-869,-861,-849,-841,-835,-827,-815,-805,-798,-788,
+-774,-763,-758,-754,-743,-726,-709,-693,-674,-652,-631,-613,-595,-575,-558,-541,-520,-495,-469,-448,-432,
+-420,-409,-394,-372,-346,-322,-298,-272,-243,-212,-177,-135,-91,-50,-5,52,121,186,243,301,362,
+415,455,494,538,575,584,563,520,471,453,522,709,976,1262,1551,1878,2261,2665,3043,3363,3581,
+3648,3581,3490,3474,3500,3461,3338,3237,3248,3347,3458,3562,3682,3792,3826,3753,3605,3420,3212,3016,2895,
+2875,2911,2935,2936,2940,2953,2961,2973,3020,3103,3177,3200,3183,3163,3146,3102,3008,2880,2757,2662,2595,
+2543,2493,2438,2374,2300,2228,2165,2108,2043,1964,1896,1866,1873,1878,1846,1773,1685,1600,1511,1406,1277,
+1143,1047,1034,1114,1222,1268,1210,1094,979,859,685,446,204,22,-98,-199,-293,-369,-437,-529,-652,
+-760,-821,-852,-887,-919,-913,-867,-824,-821,-851,-895,-948,-1015,-1090,-1166,-1243,-1307,-1330,-1300,-1245,-1209,
+-1202,-1206,-1230,-1304,-1436,-1579,-1684,-1744,-1770,-1759,-1695,-1593,-1499,-1440,-1409,-1383,-1357,-1339,-1337,-1359,-1402,
+-1449,-1483,-1513,-1560,-1615,-1621,-1535,-1386,-1256,-1206,-1221,-1247,-1250,-1231,-1206,-1185,-1172,-1166,-1161,-1153,-1140,
+-1124,-1110,-1104,-1113,-1137,-1167,-1192,-1210,-1229,-1249,-1261,-1252,-1228,-1203,-1186,-1171,-1146,-1106,-1060,-1022,-992,
+-964,-928,-890,-859,-837,-819,-804,-802,-815,-833,-841,-838,-835,-842,-852,-855,-852,-849,-846,-841,-830,
+-815,-798,-781,-766,-757,-752,-748,-744,-737,-727,-710,-685,-657,-630,-604,-576,-545,-513,-479,-446,-415,
+-389,-362,-330,-292,-251,-213,-177,-141,-101,-56,-9,36,77,118,160,204,247,287,328,370,410,
+446,480,515,552,590,627,662,695,730,772,822,871,909,931,941,942,941,941,946,954,963,
+971,978,983,984,984,988,997,1008,1017,1025,1035,1045,1053,1061,1077,1101,1126,1144,1159,1177,1199,
+1215,1225,1242,1283,1346,1410,1446,1441,1405,1361,1328,1317,1315,1306,1287,1277,1292,1322,1340,1325,1284,
+1243,1215,1201,1195,1191,1188,1184,1180,1176,1194,1194,1192,1186,1179,1174,1172,1175,1182,1185,1181,1178,
+1184,1194,1199,1200,1202,1212,1224,1233,1239,1248,1259,1271,1284,1298,1313,1329,1347,1366,1384,1401,1420,
+1441,1462,1482,1506,1532,1554,1570,1586,1609,1632,1648,1666,1700,1745,1786,1832,1910,2026,2140,2198,2184,
+2131,2085,2070,2090,2136,2189,2230,2244,2232,2202,2163,2112,2043,1951,1847,1748,1664,1592,1527,1469,1417,
+1363,1307,1253,1205,1155,1100,1042,983,902,786,658,564,525,513,490,446,397,351,308,271,243,
+215,175,136,117,117,113,89,54,16,-30,-95,-168,-233,-286,-341,-405,-464,-498,-499,-479,-467,
+-482,-519,-561,-608,-679,-780,-895,-1017,-1158,-1315,-1427,-1433,-1346,-1256,-1227,-1239,-1250,-1274,-1366,-1537,-1724,
+-1859,-1912,-1888,-1805,-1706,-1663,-1719,-1845,-1972,-2060,-2120,-2170,-2203,-2204,-2181,-2157,-2145,-2140,-2136,-2131,-2121,
+-2119,-2159,-2260,-2395,-2498,-2544,-2567,-2610,-2670,-2709,-2725,-2745,-2775,-2775,-2720,-2656,-2655,-2714,-2732,-2616,-2393,
+-2210,-2206,-2383,-2606,-2732,-2730,-2689,-2685,-2689,-2609,-2422,-2209,-2062,-1988,-1934,-1873,-1831,-1835,-1879,-1950,-2056,
+-2201,-2358,-2481,-2550,-2578,-2591,-2602,-2620,-2644,-2671,-2695,-2720,-2751,-2783,-2798,-2787,-2763,-2745,-2738,-2737,-2737,
+-2736,-2739,-2753,-2782,-2822,-2862,-2896,-2928,-2961,-2992,-3016,-3041,-3076,-3121,-3167,-3221,-3297,-3378,-3408,-3343,-3216,
+-3121,-3128,-3219,-3319,-3378,-3403,-3430,-3475,-3530,-3579,-3620,-3657,-3695,-3736,-3774,-3806,-3830,-3845,-3858,-3877,-3904,
+-3940,-3982,-4031,-4091,-4162,-4234,-4298,-4350,-4399,-4453,-4512,-4569,-4624,-4684,-4752,-4821,-4886,-4947,-5007,-5069,-5133,
+-5204,-5281,-5360,-5435,-5503,-5566,-5623,-5675,-5725,-5775,-5824,-5871,-5915,-5960,-6005,-6049,-6091,-6132,-6174,-6219,-6264,
+-6306,-6340,-6367,-6386,-6399,-6406,-6407,-6405,-6405,-6405,-6404,-6403,-6405,-6409,-6414,-6422,-6440,-6465,-6490,-6512,-6528,
+-6535,-6532,-6519,-6499,-6477,-6458,-6458,-6491,-6549,-6603,-6636,-6655,-6670,-6675,-6652,-6609,-6569,-6545,-6533,-6531,-6542,
+-6556,-6546,-6496,-6403,-6276,-6131,-6011,-5973,-6038,-6150,-6217,-6192,-6101,-6001,-5934,-5913,-5924,-5932,-5897,-5812,-5712,
+-5644,-5619,-5607,-5568,-5490,-5397,-5325,-5275,-5204,-5076,-4908,-4755,-4638,-4530,-4408,-4301,-4248,-4242,-4237,-4210,-4174,
+-4132,-4068,-3985,-3920,-3891,-3864,-3802,-3721,-3672,-3669,-3657,-3583,-3446,-3287,-3136,-2998,-2868,-2751,-2647,-2557,-2484,
+-2427,-2379,-2329,-2275,-2230,-2202,-2176,-2122,-2033,-1930,-1845,-1786,-1731,-1657,-1561,-1459,-1363,-1279,-1202,-1127,-1044,
+-952,-857,-761,-661,-559,-475,-437,-436,-437,-412,-366,-316,-258,-178,-86,-5,61,131,208,267,295,
+312,353,422,492,546,595,659,741,829,915,992,1053,1097,1132,1174,1225,1275,1322,1376,1451,1540,
+1629,1717,1819,1947,2086,2208,2302,2378,2447,2511,2565,2621,2696,2794,2902,3007,3101,3179,3243,3300,3367,
+3450,3534,3594,3620,3623,3624,3637,3663,3694,3724,3754,3791,3842,3911,3993,4074,4140,4196,4258,4332,4391,
+4401,4375,4373,4445,4572,4693,4775,4839,4914,4997,5066,5114,5151,5188,5234,5299,5383,5458,5493,5491,5480,
+5481,5492,5512,5551,5612,5669,5693,5687,5680,5694,5725,5758,5784,5801,5813,5828,5844,5855,5857,5858,5872,
+5904,5940,5971,5993,6015,6047,6098,6171,6250,6319,6378,6441,6520,6603,6673,6712,6703,6631,6513,6407,6365,
+6389,6433,6467,6496,6533,6567,6577,6559,6527,6493,6468,6460,6472,6486,6484,6470,6461,6464,6467,6460,6449,
+6443,6440,6434,6429,6433,6440,6441,6433,6422,6412,6404,6401,6409,6424,6439,6451,6474,6516,6575,6636,6695,
+6752,6801,6831,6838,6833,6823,6802,6765,6718,6673,6629,6578,6536,6531,6559,6563,6490,6373,6313,6363,6475,
+6551,6556,6523,6492,6464,6425,6380,6343,6317,6294,6265,6229,6195,6182,6193,6199,6158,6067,5946,5775,5490,
+5105,4798,4790,5118,5570,5897,6031,6079,6143,6215,6245,6234,6223,6232,6238,6223,6193,6163,6138,6112,6079,
+6044,6009,5978,5946,5910,5870,5828,5780,5725,5673,5636,5611,5578,5524,5458,5401,5359,5324,5289,5254,5215,
+5168,5117,5070,5029,4984,4930,4870,4809,4750,4698,4651,4590,4484,4330,4183,4115,4155,4261,4353,4376,4334,
+4269,4211,4140,4020,3858,3712,3642,3645,3668,3665,3628,3566,3490,3415,3370,3362,3356,3302,3188,3055,2956,
+2914,2916,2930,2922,2870,2773,2658,2568,2524,2517,2518,2503,2470,2428,2376,2307,2225,2146,2084,2038,1992,
+1934,1868,1803,1747,1704,1673,1646,1606,1545,1476,1418,1383,1369,1361,1350,1336,1331,1345,1371,1387,1377,
+1350,1328,1321,1317,1300,1265,1220,1169,1112,1052,995,952,926,910,898,881,859,837,819,800,777,
+751,731,719,709,696,682,667,646,615,581,551,525,496,464,439,424,412,400,388,378,361,
+335,308,284,254,211,168,145,137,120,84,47,27,20,10,0,-5,-17,-48,-91,-120,-129,
+-140,-170,-207,-234,-252,-273,-296,-313,-327,-349,-378,-398,-402,-403,-410,-422,-434,-447,-463,-478,-487,
+-494,-502,-513,-522,-534,-552,-573,-589,-595,-596,-598,-604,-616,-635,-657,-678,-698,-720,-741,-758,-774,
+-794,-816,-834,-845,-855,-867,-878,-887,-896,-906,-915,-917,-915,-912,-910,-906,-902,-901,-905,-911,-917,
+-921,-924,-923,-919,-919,-921,-923,-923,-922,-923,-925,-927,-930,-934,-934,-931,-928,-931,-934,-936,-935,
+-936,-937,-931,-920,-910,-906,-902,-893,-883,-877,-872,-864,-855,-851,-850,-845,-832,-819,-814,-812,-806,
+-797,-791,-789,-788,-784,-775,-766,-759,-757,-754,-745,-727,-708,-695,-686,-673,-652,-631,-615,-603,-590,
+-576,-566,-558,-548,-536,-528,-523,-518,-512,-506,-503,-502,-498,-493,-488,-484,-480,-477,-474,-472,-471,
+-471,-473,-476,-479,-482,-488,-494,-499,-504,-511,-521,-529,-534,-541,-556,-575,-591,-603,-613,-626,-640,
+-653,-669,-690,-716,-739,-757,-771,-785,-800,-817,-833,-845,-852,-854,-855,-860,-868,-878,-886,-890,-889,
+-885,-883,-885,-884,-879,-875,-877,-880,-879,-874,-872,-877,-886,-892,-894,-890,-880,-866,-859,-861,-864,
+-860,-853,-849,-846,-839,-827,-817,-811,-802,-789,-777,-771,-763,-749,-735,-728,-724,-713,-695,-677,-663,
+-649,-631,-612,-595,-579,-561,-542,-524,-506,-486,-465,-444,-428,-419,-413,-401,-378,-352,-327,-303,-272,
+-238,-209,-181,-146,-102,-55,-3,57,125,189,242,295,355,415,468,518,570,615,642,646,625,
+579,535,549,664,868,1113,1380,1684,2036,2417,2811,3196,3510,3666,3652,3576,3550,3569,3538,3433,3342,
+3360,3480,3639,3799,3957,4087,4148,4128,4038,3882,3663,3423,3238,3142,3104,3083,3068,3054,3017,2952,2908,
+2946,3054,3153,3181,3152,3112,3080,3041,2984,2919,2854,2792,2733,2683,2639,2583,2498,2389,2283,2198,2130,
+2060,1982,1916,1880,1869,1855,1820,1766,1704,1633,1550,1451,1339,1223,1131,1103,1151,1229,1258,1204,1106,
+1009,897,720,469,206,2,-134,-233,-314,-375,-428,-498,-590,-679,-746,-801,-857,-894,-888,-846,-808,
+-797,-807,-834,-887,-966,-1047,-1112,-1166,-1214,-1236,-1215,-1171,-1144,-1150,-1174,-1216,-1302,-1437,-1585,-1703,-1777,
+-1810,-1795,-1718,-1597,-1480,-1403,-1362,-1333,-1303,-1281,-1283,-1317,-1373,-1426,-1458,-1479,-1516,-1567,-1585,-1527,-1403,
+-1270,-1188,-1170,-1187,-1199,-1180,-1135,-1094,-1085,-1105,-1128,-1130,-1112,-1092,-1085,-1092,-1110,-1135,-1165,-1197,-1231,
+-1263,-1281,-1277,-1252,-1222,-1197,-1180,-1160,-1130,-1091,-1050,-1018,-993,-963,-921,-877,-847,-835,-826,-815,-808,
+-813,-821,-822,-815,-814,-824,-836,-842,-842,-841,-839,-833,-822,-809,-792,-773,-756,-747,-741,-734,-725,
+-716,-707,-695,-678,-659,-637,-611,-582,-552,-523,-491,-458,-428,-404,-381,-351,-313,-273,-232,-193,-153,
+-111,-67,-20,24,65,105,147,191,235,277,320,363,403,439,473,509,545,581,616,649,683,
+722,768,820,866,899,918,927,931,931,932,937,945,953,961,969,975,979,982,989,1002,1016,
+1025,1031,1039,1050,1059,1067,1079,1100,1125,1146,1163,1183,1204,1221,1230,1248,1293,1361,1426,1453,1433,
+1385,1337,1310,1308,1320,1328,1326,1321,1323,1332,1333,1314,1279,1246,1226,1218,1215,1211,1204,1197,1193,
+1194,1214,1212,1205,1197,1191,1189,1189,1194,1200,1203,1200,1197,1200,1208,1212,1212,1216,1227,1238,1245,
+1249,1256,1269,1283,1296,1309,1323,1340,1359,1379,1396,1411,1427,1446,1465,1485,1507,1531,1552,1570,1589,
+1613,1635,1652,1676,1713,1755,1793,1845,1937,2063,2168,2200,2158,2094,2059,2066,2103,2149,2193,2226,2237,
+2221,2176,2110,2033,1953,1872,1795,1724,1659,1598,1541,1488,1436,1383,1328,1275,1227,1177,1124,1073,1013,
+922,790,650,553,518,511,496,463,424,385,346,313,288,260,220,183,169,173,171,146,108,
+67,16,-52,-128,-192,-242,-293,-354,-416,-458,-468,-458,-451,-464,-495,-537,-596,-687,-806,-928,-1044,
+-1166,-1289,-1360,-1334,-1241,-1165,-1152,-1167,-1168,-1178,-1265,-1443,-1649,-1796,-1844,-1806,-1725,-1654,-1643,-1704,-1804,
+-1897,-1971,-2039,-2105,-2143,-2136,-2096,-2056,-2039,-2043,-2055,-2064,-2071,-2097,-2172,-2295,-2419,-2485,-2485,-2474,-2504,
+-2569,-2625,-2655,-2678,-2710,-2728,-2716,-2698,-2714,-2752,-2747,-2653,-2501,-2384,-2379,-2486,-2625,-2706,-2700,-2654,-2629,
+-2623,-2573,-2433,-2237,-2055,-1927,-1844,-1791,-1765,-1762,-1777,-1822,-1919,-2073,-2245,-2382,-2461,-2497,-2513,-2525,-2544,
+-2575,-2610,-2638,-2660,-2686,-2712,-2723,-2709,-2686,-2674,-2675,-2679,-2679,-2678,-2683,-2698,-2726,-2761,-2792,-2819,-2849,
+-2886,-2919,-2943,-2965,-2998,-3041,-3086,-3145,-3228,-3307,-3315,-3215,-3063,-2973,-3007,-3123,-3231,-3284,-3304,-3334,-3388,
+-3447,-3493,-3529,-3563,-3602,-3641,-3675,-3702,-3721,-3738,-3757,-3784,-3819,-3859,-3900,-3945,-4001,-4066,-4132,-4187,-4234,
+-4284,-4344,-4406,-4465,-4524,-4589,-4659,-4726,-4787,-4849,-4913,-4978,-5043,-5112,-5188,-5267,-5341,-5406,-5465,-5521,-5573,
+-5624,-5674,-5724,-5771,-5818,-5864,-5908,-5950,-5989,-6028,-6068,-6111,-6157,-6200,-6234,-6256,-6271,-6283,-6290,-6293,-6292,
+-6292,-6294,-6296,-6299,-6305,-6315,-6326,-6341,-6363,-6391,-6418,-6438,-6449,-6453,-6449,-6437,-6420,-6402,-6390,-6400,-6441,
+-6502,-6556,-6587,-6603,-6614,-6614,-6591,-6554,-6522,-6505,-6497,-6491,-6489,-6485,-6464,-6414,-6328,-6207,-6069,-5961,-5941,
+-6016,-6123,-6178,-6144,-6051,-5957,-5900,-5892,-5914,-5922,-5876,-5774,-5661,-5589,-5571,-5571,-5540,-5460,-5365,-5306,-5289,
+-5260,-5161,-4999,-4835,-4702,-4574,-4430,-4305,-4252,-4263,-4274,-4250,-4206,-4161,-4106,-4036,-3975,-3944,-3919,-3865,-3792,
+-3740,-3722,-3701,-3632,-3515,-3372,-3221,-3070,-2931,-2818,-2727,-2641,-2561,-2504,-2477,-2461,-2429,-2381,-2340,-2309,-2265,
+-2179,-2061,-1951,-1876,-1821,-1754,-1660,-1554,-1459,-1381,-1314,-1244,-1160,-1057,-941,-822,-711,-623,-573,-563,-573,
+-574,-551,-512,-469,-418,-346,-256,-161,-69,19,93,140,170,211,279,356,415,454,493,550,623,
+704,787,865,927,969,1003,1047,1102,1157,1209,1267,1341,1426,1513,1605,1720,1863,2018,2153,2254,2327,
+2385,2433,2479,2539,2631,2752,2875,2977,3053,3112,3166,3226,3298,3382,3463,3522,3550,3559,3568,3590,3625,
+3659,3686,3707,3731,3771,3830,3903,3977,4040,4100,4177,4274,4356,4377,4340,4315,4364,4480,4598,4676,4731,
+4802,4893,4978,5039,5083,5123,5173,5240,5320,5386,5416,5414,5407,5410,5418,5432,5464,5519,5574,5603,5609,
+5616,5637,5668,5695,5716,5732,5745,5754,5760,5761,5758,5762,5784,5823,5865,5900,5927,5957,5998,6057,6131,
+6206,6265,6310,6361,6431,6512,6589,6645,6663,6624,6530,6423,6354,6343,6373,6415,6454,6483,6500,6508,6512,
+6510,6488,6449,6416,6409,6420,6425,6420,6416,6420,6423,6416,6408,6406,6407,6408,6412,6420,6430,6431,6423,
+6412,6402,6392,6389,6398,6415,6430,6439,6454,6490,6544,6603,6656,6706,6750,6782,6794,6790,6777,6753,6712,
+6659,6606,6561,6521,6491,6490,6515,6525,6481,6403,6361,6393,6462,6502,6497,6474,6458,6444,6425,6403,6380,
+6352,6319,6289,6258,6225,6209,6233,6278,6281,6217,6113,5968,5707,5303,4916,4812,5087,5550,5913,6072,6127,
+6196,6272,6301,6283,6268,6276,6284,6271,6244,6218,6195,6167,6135,6100,6064,6029,5999,5968,5930,5880,5825,
+5778,5746,5726,5700,5652,5582,5511,5461,5429,5399,5361,5319,5277,5232,5184,5136,5090,5043,4994,4947,4897,
+4842,4785,4727,4656,4546,4404,4280,4233,4278,4364,4426,4433,4397,4348,4294,4214,4078,3899,3744,3683,3715,
+3767,3763,3693,3599,3529,3494,3483,3479,3451,3370,3235,3092,3007,3009,3069,3129,3146,3105,3007,2863,2704,
+2580,2522,2517,2521,2500,2451,2389,2319,2239,2159,2096,2052,2009,1952,1881,1812,1755,1710,1674,1640,1600,
+1549,1490,1437,1399,1375,1357,1335,1316,1316,1344,1381,1394,1368,1321,1287,1278,1277,1260,1225,1184,1139,
+1087,1030,975,932,904,888,874,856,833,811,793,775,752,728,711,701,691,678,667,659,645,
+616,580,548,524,499,472,446,424,404,388,377,369,352,329,311,299,271,216,161,137,138,
+124,78,28,5,3,0,-9,-16,-30,-69,-124,-163,-174,-178,-202,-236,-259,-270,-282,-297,-308,
+-314,-328,-352,-370,-376,-379,-394,-423,-454,-480,-500,-516,-528,-537,-546,-551,-556,-564,-581,-603,-618,
+-621,-617,-616,-624,-641,-663,-685,-705,-726,-746,-764,-778,-794,-814,-836,-853,-865,-876,-888,-899,-910,
+-921,-931,-936,-936,-934,-933,-930,-924,-919,-917,-918,-919,-923,-929,-933,-931,-926,-924,-927,-930,-931,
+-931,-931,-931,-930,-932,-935,-935,-930,-926,-926,-928,-927,-925,-927,-929,-924,-913,-903,-899,-896,-888,
+-880,-873,-866,-856,-846,-841,-839,-831,-817,-804,-797,-794,-785,-773,-764,-761,-760,-755,-746,-736,-728,
+-724,-722,-714,-701,-684,-671,-661,-646,-626,-605,-589,-576,-564,-551,-539,-528,-518,-509,-501,-496,-490,
+-485,-481,-480,-478,-474,-470,-465,-461,-457,-454,-453,-453,-453,-454,-455,-458,-460,-463,-468,-474,-479,
+-483,-490,-500,-507,-511,-516,-531,-552,-571,-581,-590,-602,-617,-630,-643,-661,-684,-706,-723,-738,-756,
+-776,-796,-814,-826,-830,-829,-828,-833,-842,-851,-858,-863,-864,-862,-861,-860,-857,-849,-843,-843,-848,
+-849,-844,-842,-846,-853,-857,-861,-861,-857,-847,-840,-841,-843,-840,-831,-826,-824,-817,-806,-797,-791,
+-782,-767,-753,-745,-738,-725,-710,-700,-693,-681,-665,-650,-638,-625,-608,-590,-576,-563,-547,-528,-508,
+-491,-479,-466,-450,-433,-422,-415,-402,-379,-353,-331,-307,-274,-235,-201,-174,-142,-99,-49,3,61,
+125,186,238,291,352,418,481,542,599,649,686,709,712,686,639,615,663,798,1003,1257,1548,
+1858,2178,2533,2944,3349,3622,3691,3623,3548,3523,3508,3473,3457,3516,3658,3847,4047,4223,4344,4404,4426,
+4422,4359,4207,3985,3754,3554,3389,3267,3198,3151,3067,2940,2849,2877,3001,3120,3155,3113,3048,2994,2959,
+2944,2944,2938,2908,2861,2817,2780,2721,2617,2478,2342,2235,2151,2072,1991,1926,1886,1861,1831,1793,1752,
+1710,1654,1580,1493,1401,1305,1217,1167,1170,1195,1194,1148,1083,1018,924,752,505,240,22,-134,-246,
+-327,-380,-418,-463,-525,-597,-675,-757,-832,-870,-859,-822,-795,-787,-789,-807,-861,-947,-1029,-1082,-1113,
+-1140,-1156,-1144,-1112,-1094,-1108,-1144,-1200,-1291,-1421,-1565,-1688,-1774,-1818,-1806,-1725,-1593,-1461,-1370,-1321,-1290,
+-1262,-1240,-1242,-1276,-1330,-1381,-1414,-1435,-1461,-1492,-1508,-1481,-1405,-1299,-1202,-1149,-1144,-1154,-1133,-1073,-1016,
+-1007,-1040,-1075,-1080,-1067,-1060,-1069,-1085,-1102,-1126,-1161,-1205,-1251,-1285,-1294,-1277,-1246,-1219,-1199,-1180,-1153,
+-1116,-1076,-1041,-1014,-991,-958,-913,-869,-844,-837,-833,-821,-810,-807,-808,-804,-798,-797,-805,-812,-814,
+-815,-817,-817,-810,-801,-791,-778,-761,-746,-738,-731,-720,-706,-693,-684,-676,-667,-655,-638,-613,-584,
+-557,-532,-503,-471,-440,-414,-389,-360,-324,-285,-244,-201,-159,-116,-72,-25,20,61,100,141,185,
+229,271,313,354,393,427,461,496,532,567,599,631,667,710,759,809,850,878,897,911,921,
+924,926,930,937,945,953,963,973,980,986,995,1010,1024,1033,1038,1047,1059,1069,1076,1084,1102,
+1127,1153,1176,1198,1220,1235,1242,1253,1282,1329,1370,1382,1360,1324,1298,1291,1304,1326,1347,1355,1348,
+1331,1312,1294,1277,1259,1246,1237,1234,1232,1227,1219,1213,1212,1214,1232,1225,1215,1208,1208,1211,1212,
+1213,1216,1219,1219,1217,1217,1221,1226,1231,1237,1245,1252,1255,1259,1267,1280,1295,1309,1323,1337,1354,
+1373,1392,1408,1421,1434,1450,1467,1485,1505,1524,1544,1564,1587,1612,1634,1657,1688,1729,1768,1804,1859,
+1957,2080,2169,2178,2123,2065,2054,2090,2143,2185,2211,2228,2235,2218,2164,2079,1982,1898,1830,1775,1722,
+1669,1614,1559,1506,1454,1402,1349,1298,1248,1197,1149,1105,1047,949,809,665,569,531,522,509,487,
+463,434,401,369,341,306,260,220,206,209,203,174,135,96,49,-13,-81,-138,-184,-234,-294,
+-352,-396,-423,-439,-453,-468,-490,-531,-613,-740,-887,-1014,-1111,-1194,-1269,-1298,-1254,-1166,-1104,-1096,-1107,
+-1098,-1096,-1167,-1337,-1550,-1709,-1758,-1712,-1640,-1611,-1651,-1729,-1801,-1850,-1897,-1964,-2041,-2088,-2081,-2033,-1985,
+-1969,-1989,-2019,-2040,-2059,-2104,-2198,-2322,-2424,-2458,-2429,-2391,-2396,-2449,-2516,-2570,-2608,-2641,-2666,-2680,-2691,
+-2708,-2718,-2701,-2654,-2598,-2561,-2558,-2584,-2620,-2638,-2621,-2585,-2562,-2553,-2507,-2379,-2182,-1980,-1828,-1739,-1698,
+-1683,-1677,-1675,-1702,-1794,-1953,-2133,-2278,-2365,-2411,-2437,-2455,-2476,-2507,-2543,-2572,-2591,-2609,-2630,-2643,-2638,
+-2624,-2617,-2622,-2631,-2636,-2639,-2644,-2654,-2671,-2692,-2713,-2733,-2761,-2797,-2831,-2857,-2882,-2917,-2963,-3015,-3084,
+-3171,-3233,-3203,-3066,-2902,-2825,-2881,-3010,-3124,-3186,-3221,-3262,-3315,-3365,-3404,-3439,-3476,-3515,-3550,-3577,-3599,
+-3620,-3643,-3670,-3702,-3738,-3776,-3815,-3856,-3906,-3965,-4025,-4077,-4125,-4181,-4245,-4311,-4374,-4437,-4505,-4572,-4633,
+-4689,-4747,-4811,-4878,-4945,-5018,-5096,-5175,-5248,-5312,-5370,-5424,-5475,-5524,-5573,-5621,-5668,-5718,-5766,-5809,-5848,
+-5887,-5926,-5967,-6007,-6049,-6090,-6122,-6142,-6155,-6165,-6173,-6178,-6180,-6183,-6188,-6193,-6201,-6213,-6230,-6246,-6263,
+-6286,-6315,-6341,-6358,-6366,-6369,-6366,-6355,-6340,-6327,-6325,-6344,-6388,-6448,-6504,-6542,-6560,-6566,-6559,-6538,-6509,
+-6485,-6467,-6449,-6429,-6409,-6390,-6363,-6318,-6242,-6131,-6005,-5919,-5922,-6006,-6103,-6140,-6097,-6010,-5926,-5881,-5884,
+-5913,-5920,-5864,-5752,-5636,-5567,-5552,-5553,-5520,-5437,-5339,-5287,-5293,-5297,-5226,-5076,-4908,-4766,-4634,-4492,-4370,
+-4316,-4316,-4310,-4266,-4208,-4166,-4129,-4078,-4029,-4000,-3979,-3931,-3859,-3797,-3762,-3728,-3665,-3569,-3449,-3306,-3148,
+-3004,-2896,-2815,-2737,-2657,-2605,-2597,-2605,-2585,-2529,-2468,-2428,-2389,-2314,-2197,-2077,-1991,-1932,-1865,-1773,-1670,
+-1582,-1513,-1453,-1387,-1304,-1193,-1052,-902,-777,-707,-693,-711,-725,-715,-682,-642,-600,-549,-479,-391,-292,
+-188,-89,-10,42,85,145,223,292,330,352,384,439,508,582,657,732,796,844,883,928,981,
+1036,1090,1150,1220,1301,1388,1487,1609,1760,1923,2070,2181,2255,2303,2337,2376,2441,2549,2687,2820,2920,
+2983,3029,3077,3140,3218,3307,3389,3448,3479,3494,3511,3540,3577,3615,3646,3670,3696,3732,3784,3844,3900,
+3946,3997,4079,4197,4306,4345,4307,4263,4290,4393,4507,4578,4621,4681,4775,4875,4953,5005,5049,5100,5166,
+5240,5300,5330,5332,5329,5331,5335,5345,5374,5425,5479,5513,5531,5552,5586,5619,5642,5656,5669,5679,5681,
+5675,5666,5664,5678,5710,5753,5793,5826,5857,5894,5940,6000,6071,6144,6204,6252,6300,6361,6436,6514,6587,
+6635,6635,6574,6476,6385,6341,6347,6385,6426,6449,6452,6456,6477,6502,6500,6461,6411,6378,6368,6364,6358,
+6357,6362,6364,6360,6356,6359,6366,6371,6376,6384,6392,6397,6399,6399,6396,6388,6380,6381,6389,6395,6400,
+6414,6446,6493,6542,6588,6634,6684,6726,6749,6748,6730,6699,6651,6587,6525,6481,6464,6469,6487,6505,6501,
+6464,6418,6403,6430,6463,6468,6453,6440,6436,6431,6425,6421,6408,6370,6321,6290,6278,6262,6249,6272,6324,
+6349,6312,6240,6135,5905,5483,5013,4791,4981,5433,5852,6087,6199,6283,6345,6350,6319,6306,6320,6327,6314,
+6293,6276,6253,6219,6184,6154,6121,6082,6046,6017,5984,5939,5886,5840,5807,5777,5737,5679,5615,5563,5531,
+5508,5472,5421,5366,5320,5282,5243,5199,5153,5108,5066,5028,4987,4937,4881,4824,4753,4653,4536,4449,4434,
+4477,4524,4533,4503,4457,4409,4356,4287,4186,4058,3943,3890,3900,3908,3844,3711,3584,3529,3538,3560,3554,
+3503,3398,3249,3104,3036,3074,3177,3270,3314,3309,3256,3132,2938,2733,2598,2560,2572,2569,2527,2458,2377,
+2282,2183,2102,2049,2007,1953,1884,1814,1757,1713,1675,1637,1597,1553,1505,1458,1421,1393,1367,1337,1309,
+1303,1327,1360,1366,1332,1283,1251,1243,1234,1207,1169,1134,1102,1061,1011,961,922,894,873,856,837,
+814,791,772,754,734,715,701,689,674,657,648,649,645,622,586,553,528,506,482,458,432,
+405,383,373,368,352,329,315,310,284,225,168,153,172,172,131,79,50,36,12,-20,-42,
+-60,-98,-155,-199,-209,-208,-221,-248,-267,-275,-284,-296,-304,-307,-317,-339,-360,-370,-380,-406,-447,
+-490,-521,-540,-552,-561,-567,-571,-573,-576,-587,-607,-631,-649,-654,-650,-648,-655,-671,-690,-706,-722,
+-742,-765,-786,-803,-818,-835,-852,-866,-879,-892,-904,-914,-924,-936,-947,-951,-951,-951,-951,-948,-942,
+-936,-935,-934,-932,-932,-936,-940,-938,-933,-931,-934,-936,-938,-938,-938,-935,-931,-931,-934,-934,-931,
+-927,-927,-926,-922,-918,-918,-919,-914,-904,-895,-890,-886,-882,-877,-872,-864,-852,-841,-834,-828,-819,
+-806,-794,-786,-779,-769,-757,-748,-742,-736,-729,-719,-708,-698,-690,-684,-676,-666,-653,-641,-629,-615,
+-598,-580,-564,-551,-539,-527,-514,-501,-491,-482,-475,-468,-462,-457,-456,-455,-453,-448,-444,-441,-437,
+-434,-432,-433,-435,-437,-438,-440,-442,-443,-446,-451,-458,-462,-465,-471,-481,-490,-494,-498,-510,-528,
+-544,-554,-562,-576,-592,-607,-620,-637,-658,-676,-692,-707,-728,-753,-776,-795,-806,-809,-805,-803,-807,
+-816,-824,-830,-834,-837,-836,-834,-832,-828,-822,-816,-816,-819,-820,-817,-816,-820,-825,-827,-829,-834,
+-836,-830,-823,-821,-822,-819,-812,-806,-802,-795,-785,-778,-774,-766,-750,-733,-722,-714,-703,-690,-677,
+-665,-652,-638,-627,-618,-606,-589,-571,-557,-547,-534,-516,-496,-480,-471,-465,-454,-439,-426,-416,-402,
+-379,-353,-332,-312,-280,-238,-198,-164,-129,-83,-33,16,67,122,178,231,286,349,419,488,556,
+621,677,721,754,776,776,746,709,703,766,918,1156,1447,1741,2018,2326,2726,3184,3558,3720,3680,
+3561,3479,3470,3512,3582,3679,3812,3987,4185,4356,4458,4505,4558,4639,4701,4677,4548,4334,4058,3758,3497,
+3326,3221,3107,2967,2872,2892,3000,3096,3115,3067,2996,2936,2907,2917,2954,2979,2967,2927,2887,2852,2790,
+2678,2529,2385,2272,2182,2093,2004,1933,1890,1861,1829,1791,1756,1718,1666,1596,1521,1449,1374,1295,1228,
+1185,1153,1116,1078,1052,1021,938,765,522,270,57,-104,-224,-309,-363,-401,-439,-486,-547,-626,-720,
+-801,-836,-823,-796,-785,-791,-802,-824,-877,-956,-1024,-1057,-1066,-1076,-1087,-1083,-1064,-1055,-1071,-1111,-1173,
+-1266,-1392,-1529,-1649,-1736,-1784,-1779,-1707,-1585,-1455,-1359,-1305,-1273,-1246,-1226,-1223,-1245,-1283,-1325,-1361,-1388,
+-1406,-1414,-1416,-1412,-1388,-1330,-1245,-1174,-1148,-1148,-1125,-1063,-1003,-990,-1013,-1028,-1019,-1011,-1030,-1064,-1090,
+-1106,-1129,-1170,-1220,-1265,-1291,-1292,-1272,-1244,-1222,-1205,-1182,-1149,-1110,-1073,-1041,-1013,-984,-947,-904,-868,
+-848,-842,-835,-820,-805,-796,-791,-785,-780,-781,-783,-780,-775,-774,-779,-779,-773,-767,-762,-754,-743,
+-732,-727,-720,-707,-691,-678,-671,-664,-655,-646,-631,-609,-581,-555,-532,-506,-476,-444,-415,-386,-355,
+-319,-282,-243,-200,-157,-116,-74,-29,15,56,95,135,178,222,262,302,341,379,413,446,480,
+515,550,583,615,653,697,745,790,824,851,874,894,908,914,917,921,927,935,944,956,970,
+983,992,1003,1017,1028,1034,1040,1052,1067,1078,1085,1092,1108,1134,1163,1190,1215,1236,1251,1258,1263,
+1277,1300,1317,1317,1303,1291,1292,1302,1317,1332,1348,1355,1346,1320,1289,1267,1257,1257,1258,1257,1254,
+1249,1244,1239,1235,1234,1232,1249,1241,1233,1231,1235,1239,1238,1233,1231,1233,1235,1234,1234,1237,1244,
+1252,1259,1263,1266,1269,1275,1284,1294,1306,1320,1336,1352,1369,1387,1405,1422,1434,1445,1458,1472,1487,
+1500,1513,1528,1548,1573,1601,1629,1662,1704,1748,1783,1817,1876,1975,2087,2156,2151,2096,2053,2065,2123,
+2189,2227,2236,2233,2230,2214,2161,2071,1970,1887,1828,1781,1733,1682,1630,1577,1524,1471,1420,1372,1322,
+1270,1218,1173,1134,1080,986,853,717,622,574,552,535,521,509,492,463,429,394,350,298,257,
+241,238,222,184,142,107,70,23,-27,-73,-121,-177,-238,-290,-332,-372,-416,-454,-475,-494,-543,
+-653,-813,-977,-1095,-1160,-1200,-1230,-1234,-1197,-1138,-1101,-1101,-1107,-1088,-1063,-1091,-1213,-1403,-1576,-1655,-1632,
+-1579,-1580,-1651,-1742,-1799,-1823,-1853,-1917,-1997,-2051,-2051,-2008,-1961,-1951,-1982,-2027,-2057,-2079,-2126,-2213,-2314,
+-2390,-2417,-2400,-2363,-2340,-2354,-2405,-2472,-2527,-2561,-2584,-2610,-2643,-2669,-2675,-2664,-2654,-2656,-2660,-2649,-2623,
+-2596,-2574,-2552,-2528,-2510,-2488,-2422,-2283,-2086,-1888,-1738,-1650,-1614,-1611,-1615,-1614,-1627,-1698,-1844,-2024,-2175,
+-2271,-2328,-2367,-2397,-2420,-2445,-2474,-2500,-2515,-2529,-2548,-2566,-2572,-2569,-2565,-2569,-2578,-2588,-2595,-2599,-2601,
+-2605,-2614,-2627,-2645,-2670,-2701,-2734,-2766,-2803,-2846,-2895,-2954,-3034,-3118,-3148,-3068,-2899,-2741,-2695,-2774,-2906,
+-3017,-3090,-3142,-3192,-3239,-3279,-3315,-3355,-3397,-3435,-3465,-3486,-3505,-3529,-3559,-3590,-3619,-3648,-3680,-3715,-3753,
+-3799,-3854,-3914,-3971,-4027,-4086,-4149,-4214,-4278,-4345,-4415,-4480,-4536,-4587,-4644,-4706,-4774,-4845,-4921,-5001,-5078,
+-5150,-5216,-5275,-5328,-5376,-5423,-5469,-5514,-5561,-5611,-5660,-5702,-5740,-5779,-5821,-5863,-5900,-5936,-5972,-6002,-6022,
+-6034,-6046,-6057,-6065,-6071,-6079,-6087,-6096,-6108,-6128,-6150,-6169,-6183,-6203,-6231,-6256,-6271,-6278,-6283,-6284,-6276,
+-6265,-6259,-6267,-6292,-6335,-6392,-6451,-6495,-6515,-6512,-6492,-6466,-6442,-6421,-6395,-6361,-6321,-6285,-6258,-6237,-6205,
+-6143,-6044,-5937,-5879,-5909,-6002,-6085,-6104,-6055,-5974,-5899,-5861,-5871,-5908,-5918,-5861,-5749,-5639,-5575,-5558,-5547,
+-5503,-5416,-5320,-5271,-5284,-5302,-5249,-5111,-4948,-4811,-4697,-4585,-4489,-4434,-4401,-4344,-4259,-4185,-4152,-4138,-4113,
+-4084,-4067,-4047,-3997,-3920,-3848,-3798,-3755,-3697,-3619,-3518,-3386,-3230,-3084,-2979,-2906,-2837,-2765,-2718,-2714,-2725,
+-2707,-2648,-2582,-2540,-2506,-2441,-2335,-2219,-2127,-2053,-1971,-1874,-1779,-1702,-1639,-1577,-1512,-1437,-1333,-1184,-1013,
+-875,-813,-822,-855,-866,-841,-797,-753,-711,-659,-589,-506,-414,-314,-212,-121,-47,16,84,152,198,
+218,233,271,335,409,479,545,611,674,730,778,826,877,934,993,1056,1126,1205,1295,1398,1520,
+1661,1814,1957,2071,2146,2190,2221,2264,2342,2466,2616,2753,2847,2902,2943,2992,3058,3139,3227,3309,3368,
+3404,3428,3453,3487,3526,3567,3606,3641,3676,3718,3769,3824,3866,3892,3922,3992,4110,4230,4284,4254,4206,
+4221,4314,4423,4489,4521,4569,4658,4763,4847,4903,4947,5000,5066,5139,5201,5235,5244,5243,5244,5248,5258,
+5286,5333,5383,5419,5447,5482,5527,5564,5582,5586,5589,5594,5593,5584,5575,5578,5601,5639,5682,5721,5755,
+5789,5829,5876,5933,6002,6078,6148,6206,6258,6312,6373,6444,6525,6599,6639,6623,6556,6471,6407,6381,6390,
+6411,6421,6418,6423,6451,6490,6504,6478,6428,6381,6346,6319,6297,6287,6285,6283,6282,6284,6292,6302,6310,
+6318,6325,6330,6336,6345,6356,6361,6360,6359,6361,6364,6364,6368,6383,6411,6445,6480,6517,6562,6614,6662,
+6690,6689,6664,6623,6571,6508,6448,6416,6427,6469,6507,6513,6484,6442,6419,6431,6459,6471,6459,6446,6445,
+6443,6428,6416,6421,6421,6386,6330,6297,6294,6287,6263,6256,6280,6299,6282,6255,6208,6028,5619,5100,4781,
+4875,5289,5748,6072,6263,6377,6418,6390,6345,6339,6360,6366,6348,6333,6326,6306,6266,6229,6208,6186,6148,
+6102,6063,6029,5991,5946,5903,5863,5821,5770,5714,5663,5623,5595,5567,5525,5470,5416,5373,5338,5300,5255,
+5207,5163,5127,5094,5057,5012,4964,4919,4865,4787,4698,4636,4627,4647,4648,4613,4564,4520,4477,4426,4372,
+4319,4259,4193,4142,4108,4049,3916,3728,3572,3518,3541,3568,3548,3478,3368,3227,3097,3045,3099,3211,3305,
+3352,3376,3381,3320,3158,2942,2776,2716,2728,2739,2709,2639,2535,2400,2254,2132,2053,2001,1946,1877,1808,
+1752,1709,1672,1635,1598,1560,1519,1479,1443,1413,1384,1347,1310,1290,1298,1318,1318,1288,1251,1230,1220,
+1197,1154,1112,1085,1066,1036,994,953,919,892,867,846,825,802,778,759,744,730,716,703,688,
+667,645,637,641,641,622,590,560,537,515,494,473,450,420,394,383,379,363,338,325,320,
+293,235,183,184,223,242,215,171,141,108,48,-22,-70,-90,-113,-155,-193,-207,-208,-218,-239,
+-256,-268,-283,-300,-308,-311,-320,-341,-365,-383,-403,-434,-476,-513,-537,-551,-561,-567,-569,-569,-571,
+-580,-598,-623,-650,-671,-682,-682,-681,-687,-699,-712,-723,-737,-758,-785,-810,-830,-844,-857,-869,-880,
+-893,-906,-916,-923,-933,-946,-957,-961,-960,-961,-963,-960,-955,-951,-951,-950,-946,-943,-944,-945,-942,
+-939,-939,-942,-943,-942,-942,-941,-936,-930,-928,-931,-934,-932,-931,-931,-929,-923,-917,-912,-909,-902,
+-893,-885,-879,-875,-873,-871,-868,-860,-848,-835,-826,-817,-808,-798,-788,-779,-770,-761,-753,-744,-734,
+-722,-712,-702,-690,-677,-664,-651,-641,-631,-620,-608,-594,-582,-569,-555,-540,-526,-513,-502,-490,-477,
+-466,-458,-451,-443,-435,-431,-430,-430,-427,-422,-418,-415,-414,-412,-412,-414,-417,-419,-421,-423,-425,
+-427,-430,-436,-443,-446,-447,-452,-462,-473,-480,-483,-490,-503,-516,-526,-537,-552,-569,-585,-600,-618,
+-639,-656,-668,-683,-705,-730,-753,-770,-780,-782,-779,-777,-782,-790,-796,-800,-803,-806,-806,-802,-798,
+-795,-792,-791,-792,-795,-794,-791,-793,-799,-803,-802,-802,-808,-813,-810,-801,-797,-798,-798,-792,-785,
+-781,-775,-768,-762,-758,-750,-735,-718,-704,-694,-684,-671,-658,-643,-628,-616,-608,-601,-591,-575,-558,
+-544,-532,-522,-510,-494,-478,-467,-460,-452,-439,-426,-415,-401,-379,-352,-330,-311,-282,-242,-200,-161,
+-120,-71,-19,29,74,122,173,226,283,347,416,486,558,629,694,746,785,819,841,840,812,
+776,772,851,1042,1322,1626,1910,2204,2576,3029,3453,3709,3752,3657,3552,3528,3593,3698,3797,3891,4020,
+4193,4354,4449,4493,4560,4687,4833,4923,4909,4770,4497,4131,3768,3496,3321,3187,3070,3004,3011,3053,3068,
+3039,2991,2948,2916,2902,2917,2952,2973,2960,2921,2883,2843,2776,2664,2523,2389,2286,2202,2115,2023,1946,
+1899,1870,1842,1810,1776,1736,1677,1605,1536,1475,1414,1347,1277,1208,1136,1071,1036,1033,1016,920,729,
+488,260,73,-73,-186,-270,-332,-383,-431,-476,-525,-593,-679,-755,-790,-787,-775,-780,-802,-828,-863,
+-913,-971,-1009,-1015,-1005,-1004,-1014,-1020,-1018,-1019,-1038,-1078,-1143,-1240,-1364,-1494,-1603,-1680,-1723,-1726,-1677,
+-1582,-1470,-1375,-1315,-1280,-1256,-1240,-1236,-1247,-1269,-1297,-1328,-1355,-1364,-1353,-1339,-1345,-1362,-1352,-1297,-1228,
+-1187,-1173,-1145,-1088,-1034,-1015,-1012,-990,-957,-956,-1004,-1068,-1107,-1127,-1154,-1198,-1244,-1276,-1291,-1288,-1272,
+-1247,-1223,-1201,-1174,-1140,-1105,-1075,-1046,-1012,-973,-932,-893,-864,-847,-837,-825,-808,-792,-779,-769,-761,
+-759,-762,-762,-753,-743,-742,-745,-744,-738,-733,-733,-731,-724,-717,-714,-708,-696,-681,-671,-665,-656,
+-644,-632,-618,-597,-571,-546,-523,-498,-470,-440,-411,-380,-346,-311,-275,-238,-196,-155,-116,-77,-35,
+7,47,85,126,169,211,249,286,325,365,401,434,467,501,536,569,602,641,684,729,767,
+798,825,853,877,893,901,907,916,924,930,937,949,965,981,995,1008,1018,1025,1029,1038,1053,
+1072,1087,1097,1108,1124,1147,1173,1199,1223,1243,1257,1266,1273,1284,1297,1304,1301,1297,1302,1315,1327,
+1330,1328,1329,1331,1325,1307,1284,1271,1270,1278,1283,1281,1273,1267,1263,1261,1258,1255,1249,1268,1262,
+1259,1259,1263,1265,1261,1253,1248,1248,1251,1253,1253,1257,1265,1273,1278,1279,1281,1286,1293,1299,1305,
+1313,1326,1344,1363,1382,1400,1419,1437,1450,1459,1469,1481,1490,1496,1499,1508,1527,1555,1588,1626,1672,
+1723,1767,1798,1833,1897,1993,2088,2140,2132,2092,2068,2091,2155,2225,2263,2261,2241,2225,2205,2156,2072,
+1976,1898,1843,1795,1744,1692,1643,1594,1542,1488,1438,1391,1344,1293,1241,1195,1156,1107,1026,912,793,
+701,642,602,575,561,556,542,513,476,436,390,341,303,285,271,239,188,141,110,87,61,
+29,-8,-60,-126,-190,-239,-281,-334,-400,-458,-491,-518,-582,-707,-872,-1018,-1104,-1134,-1141,-1147,-1151,
+-1147,-1140,-1144,-1156,-1156,-1124,-1069,-1034,-1074,-1211,-1392,-1523,-1555,-1535,-1545,-1617,-1706,-1764,-1793,-1828,-1890,
+-1964,-2019,-2033,-2005,-1966,-1959,-1996,-2047,-2080,-2103,-2143,-2205,-2268,-2320,-2366,-2400,-2396,-2347,-2299,-2305,-2367,
+-2437,-2479,-2500,-2530,-2575,-2617,-2638,-2645,-2650,-2658,-2657,-2638,-2606,-2574,-2548,-2523,-2497,-2470,-2426,-2338,-2193,
+-2014,-1840,-1697,-1599,-1556,-1568,-1602,-1613,-1603,-1631,-1745,-1919,-2083,-2190,-2253,-2303,-2345,-2374,-2392,-2411,-2430,
+-2446,-2459,-2476,-2496,-2508,-2509,-2503,-2503,-2511,-2522,-2530,-2532,-2529,-2528,-2533,-2546,-2565,-2589,-2615,-2646,-2689,
+-2741,-2792,-2841,-2903,-2988,-3061,-3047,-2911,-2715,-2580,-2582,-2691,-2824,-2926,-2998,-3057,-3106,-3147,-3185,-3228,-3274,
+-3316,-3350,-3377,-3396,-3415,-3439,-3471,-3501,-3525,-3546,-3571,-3602,-3638,-3682,-3738,-3803,-3870,-3933,-3992,-4048,-4106,
+-4169,-4239,-4310,-4374,-4429,-4482,-4540,-4603,-4672,-4745,-4823,-4901,-4975,-5047,-5116,-5178,-5230,-5275,-5320,-5365,-5408,
+-5452,-5500,-5548,-5589,-5625,-5665,-5710,-5752,-5786,-5817,-5849,-5878,-5898,-5913,-5928,-5942,-5953,-5964,-5977,-5991,-6003,
+-6020,-6044,-6071,-6090,-6101,-6117,-6141,-6164,-6177,-6185,-6195,-6203,-6202,-6197,-6200,-6218,-6247,-6286,-6335,-6391,-6438,
+-6456,-6441,-6405,-6366,-6336,-6308,-6272,-6221,-6165,-6120,-6098,-6093,-6083,-6037,-5950,-5862,-5835,-5894,-5995,-6069,-6075,
+-6026,-5949,-5876,-5835,-5846,-5890,-5907,-5854,-5747,-5645,-5588,-5565,-5539,-5481,-5391,-5302,-5256,-5266,-5281,-5233,-5106,
+-4951,-4826,-4737,-4667,-4607,-4554,-4481,-4369,-4244,-4161,-4141,-4148,-4146,-4137,-4129,-4107,-4049,-3965,-3889,-3835,-3789,
+-3733,-3663,-3576,-3457,-3311,-3169,-3065,-2997,-2937,-2876,-2831,-2817,-2814,-2793,-2745,-2694,-2658,-2624,-2561,-2464,-2358,
+-2260,-2166,-2061,-1955,-1869,-1804,-1738,-1663,-1591,-1527,-1442,-1306,-1137,-998,-941,-956,-989,-992,-958,-908,-862,
+-820,-768,-699,-619,-533,-442,-340,-233,-134,-50,15,62,88,101,120,165,236,313,383,442,499,
+557,614,668,719,771,830,897,966,1038,1117,1210,1316,1433,1560,1694,1825,1936,2015,2065,2106,2164,
+2264,2406,2563,2695,2779,2831,2878,2935,3002,3078,3159,3235,3295,3335,3367,3401,3439,3481,3526,3574,3619,
+3661,3707,3766,3828,3872,3886,3892,3931,4022,4128,4187,4176,4143,4161,4248,4349,4409,4434,4471,4546,4640,
+4718,4773,4821,4878,4948,5021,5083,5122,5137,5141,5147,5159,5177,5205,5246,5291,5330,5367,5413,5464,5501,
+5511,5502,5492,5490,5491,5489,5489,5498,5523,5560,5603,5646,5687,5725,5765,5811,5870,5942,6020,6093,6158,
+6214,6265,6314,6373,6450,6536,6607,6636,6619,6571,6514,6465,6432,6413,6400,6391,6396,6423,6461,6484,6477,
+6447,6406,6362,6317,6278,6249,6230,6218,6212,6214,6221,6228,6237,6249,6260,6268,6275,6285,6296,6305,6314,
+6326,6338,6342,6339,6341,6355,6375,6397,6422,6457,6503,6553,6593,6610,6598,6561,6515,6471,6429,6395,6388,
+6423,6479,6513,6497,6447,6406,6409,6443,6472,6469,6451,6445,6449,6432,6388,6355,6362,6381,6362,6307,6267,
+6259,6244,6200,6156,6142,6145,6149,6171,6188,6073,5717,5216,4864,4888,5237,5675,6031,6275,6420,6460,6416,
+6367,6371,6402,6404,6378,6363,6366,6352,6312,6274,6258,6245,6209,6157,6108,6068,6029,5988,5948,5910,5868,
+5821,5775,5730,5686,5643,5602,5561,5518,5476,5438,5399,5354,5301,5251,5210,5178,5149,5114,5070,5025,4989,
+4951,4897,4828,4772,4745,4730,4697,4646,4605,4579,4547,4497,4447,4417,4394,4358,4309,4256,4174,4026,3826,
+3653,3574,3571,3576,3540,3464,3360,3230,3103,3037,3065,3147,3218,3256,3289,3326,3322,3234,3094,2981,2942,
+2954,2962,2936,2863,2734,2553,2355,2191,2085,2014,1947,1871,1800,1743,1701,1665,1631,1598,1564,1527,1489,
+1453,1421,1389,1351,1310,1280,1274,1282,1279,1258,1234,1221,1207,1171,1117,1072,1051,1039,1015,977,941,
+913,888,863,839,816,791,768,751,742,734,722,708,692,670,647,636,636,631,614,590,570,
+552,530,508,491,474,447,419,404,397,379,351,333,324,296,240,197,208,255,282,265,235,
+215,181,104,6,-62,-82,-88,-109,-143,-170,-186,-201,-217,-233,-250,-272,-291,-300,-303,-313,-337,
+-366,-394,-425,-459,-492,-513,-525,-536,-549,-560,-561,-559,-563,-579,-604,-632,-658,-682,-699,-707,-710,
+-714,-724,-738,-751,-765,-786,-810,-833,-851,-866,-880,-891,-902,-913,-923,-929,-933,-942,-955,-966,-969,
+-966,-966,-966,-965,-961,-961,-962,-960,-955,-952,-951,-949,-946,-945,-947,-950,-948,-944,-943,-942,-937,
+-930,-927,-929,-932,-931,-931,-930,-928,-923,-915,-908,-901,-893,-885,-878,-871,-866,-863,-863,-860,-852,
+-840,-828,-818,-808,-798,-791,-782,-771,-762,-755,-751,-744,-731,-716,-704,-694,-683,-668,-650,-632,-617,
+-604,-592,-578,-563,-551,-541,-530,-515,-498,-484,-475,-466,-454,-444,-436,-429,-421,-413,-409,-407,-406,
+-403,-399,-395,-392,-391,-392,-394,-396,-398,-399,-401,-403,-406,-408,-412,-418,-424,-427,-428,-432,-442,
+-454,-462,-466,-472,-483,-496,-508,-519,-533,-548,-563,-580,-602,-624,-640,-650,-663,-683,-706,-726,-739,
+-747,-750,-751,-753,-760,-767,-769,-769,-771,-774,-774,-769,-763,-760,-760,-761,-765,-768,-767,-766,-769,
+-776,-780,-778,-776,-780,-786,-783,-775,-771,-772,-774,-770,-764,-760,-757,-752,-747,-742,-734,-721,-706,
+-692,-680,-668,-655,-642,-628,-613,-600,-593,-586,-577,-565,-550,-534,-521,-512,-505,-495,-480,-465,-454,
+-444,-432,-418,-406,-393,-374,-348,-323,-299,-270,-233,-195,-158,-117,-68,-15,33,79,127,177,229,
+286,350,417,486,557,631,703,762,809,850,888,915,913,876,831,832,938,1166,1469,1787,2101,
+2446,2842,3251,3584,3765,3788,3725,3680,3710,3790,3866,3932,4030,4181,4337,4434,4480,4539,4651,4792,4912,
+4966,4914,4724,4415,4068,3767,3539,3372,3260,3204,3173,3113,3014,2920,2877,2883,2899,2910,2921,2935,2936,
+2914,2877,2837,2790,2717,2610,2480,2357,2260,2185,2113,2034,1962,1912,1880,1854,1828,1802,1764,1703,1628,
+1554,1490,1429,1366,1301,1228,1142,1064,1023,1016,981,855,642,409,215,67,-53,-153,-233,-300,-363,
+-419,-462,-500,-553,-626,-698,-742,-756,-759,-771,-797,-834,-879,-926,-960,-968,-953,-933,-927,-938,-956,
+-971,-989,-1017,-1063,-1133,-1229,-1344,-1460,-1554,-1619,-1659,-1675,-1655,-1594,-1501,-1405,-1333,-1293,-1274,-1268,-1271,
+-1282,-1296,-1312,-1328,-1341,-1337,-1313,-1291,-1300,-1336,-1356,-1330,-1275,-1228,-1195,-1151,-1093,-1047,-1026,-1002,-953,
+-908,-922,-999,-1087,-1140,-1165,-1196,-1238,-1273,-1288,-1291,-1286,-1272,-1247,-1216,-1186,-1155,-1123,-1096,-1071,-1042,
+-1002,-955,-913,-879,-853,-832,-814,-799,-786,-773,-759,-744,-734,-736,-744,-747,-741,-732,-730,-729,-724,
+-715,-712,-715,-717,-713,-708,-705,-699,-687,-674,-666,-660,-648,-632,-616,-602,-584,-561,-537,-513,-487,
+-460,-433,-406,-377,-343,-308,-274,-237,-197,-156,-119,-83,-44,-3,37,76,117,160,201,237,273,
+312,353,391,425,457,490,523,555,588,626,669,711,746,776,807,840,866,883,894,907,922,
+933,936,937,944,959,976,993,1008,1018,1023,1028,1040,1059,1081,1100,1116,1132,1147,1162,1179,1200,
+1222,1240,1251,1259,1271,1287,1303,1311,1311,1311,1318,1328,1331,1321,1309,1303,1303,1303,1297,1289,1287,
+1293,1300,1303,1298,1290,1284,1282,1282,1280,1274,1268,1287,1284,1284,1283,1282,1281,1279,1275,1271,1270,
+1272,1274,1276,1280,1286,1292,1295,1296,1298,1302,1307,1311,1313,1320,1334,1353,1374,1394,1414,1434,1450,
+1462,1470,1478,1488,1493,1491,1488,1496,1518,1551,1589,1633,1688,1742,1783,1812,1851,1921,2011,2087,2125,
+2130,2123,2126,2153,2205,2265,2300,2294,2262,2229,2199,2149,2069,1980,1907,1854,1804,1752,1700,1655,1610,
+1562,1509,1458,1410,1363,1316,1266,1219,1178,1131,1063,970,870,785,719,667,629,609,600,583,550,
+508,466,426,387,357,335,307,258,196,146,119,108,98,80,48,-6,-75,-140,-190,-238,-305,
+-390,-467,-520,-567,-645,-767,-901,-1000,-1041,-1044,-1040,-1046,-1066,-1100,-1144,-1183,-1202,-1193,-1152,-1078,-991,
+-952,-1023,-1194,-1371,-1467,-1487,-1502,-1557,-1632,-1694,-1743,-1796,-1858,-1922,-1975,-2000,-1989,-1960,-1955,-1992,-2044,
+-2078,-2103,-2139,-2178,-2203,-2235,-2311,-2411,-2451,-2385,-2274,-2225,-2273,-2359,-2418,-2445,-2471,-2512,-2556,-2591,-2613,
+-2622,-2615,-2595,-2575,-2564,-2555,-2536,-2503,-2462,-2416,-2355,-2261,-2135,-1994,-1849,-1705,-1581,-1520,-1544,-1609,-1634,
+-1599,-1577,-1654,-1826,-2006,-2124,-2187,-2238,-2291,-2329,-2346,-2357,-2372,-2388,-2400,-2413,-2429,-2442,-2441,-2432,-2427,
+-2431,-2439,-2444,-2445,-2445,-2446,-2453,-2468,-2492,-2518,-2543,-2575,-2626,-2689,-2745,-2791,-2855,-2943,-3000,-2940,-2750,
+-2534,-2430,-2482,-2621,-2755,-2850,-2917,-2972,-3013,-3048,-3091,-3144,-3193,-3227,-3254,-3279,-3301,-3320,-3342,-3371,-3399,
+-3419,-3435,-3457,-3488,-3524,-3567,-3624,-3694,-3767,-3833,-3890,-3942,-3994,-4055,-4124,-4195,-4259,-4317,-4376,-4439,-4504,
+-4572,-4646,-4723,-4796,-4868,-4941,-5016,-5082,-5134,-5178,-5222,-5267,-5306,-5345,-5389,-5435,-5476,-5512,-5551,-5596,-5637,
+-5669,-5698,-5728,-5756,-5777,-5796,-5815,-5832,-5844,-5858,-5877,-5898,-5915,-5933,-5959,-5987,-6006,-6016,-6031,-6053,-6074,
+-6085,-6093,-6107,-6122,-6130,-6134,-6146,-6171,-6202,-6235,-6275,-6324,-6367,-6382,-6361,-6313,-6259,-6212,-6168,-6117,-6055,
+-5991,-5946,-5936,-5954,-5966,-5934,-5857,-5786,-5787,-5872,-5985,-6057,-6060,-6011,-5937,-5858,-5808,-5815,-5861,-5882,-5830,
+-5727,-5634,-5584,-5558,-5519,-5451,-5364,-5285,-5245,-5250,-5256,-5204,-5080,-4928,-4807,-4738,-4704,-4678,-4629,-4530,-4385,
+-4245,-4168,-4159,-4174,-4179,-4177,-4170,-4141,-4074,-3988,-3919,-3872,-3826,-3767,-3699,-3621,-3520,-3392,-3263,-3161,-3092,
+-3036,-2983,-2939,-2911,-2893,-2870,-2839,-2810,-2782,-2740,-2668,-2573,-2472,-2371,-2260,-2139,-2032,-1960,-1904,-1831,-1737,
+-1650,-1589,-1522,-1408,-1259,-1134,-1084,-1097,-1121,-1117,-1079,-1029,-983,-942,-892,-822,-736,-644,-551,-448,-331,
+-212,-114,-51,-17,1,16,39,77,134,203,273,335,390,442,495,549,601,653,712,782,856,
+929,1006,1096,1201,1319,1444,1573,1698,1809,1899,1968,2032,2113,2230,2381,2536,2656,2729,2781,2838,2907,
+2977,3044,3115,3186,3245,3287,3318,3352,3392,3438,3492,3550,3600,3642,3687,3751,3827,3884,3900,3887,3889,
+3935,4009,4065,4077,4075,4108,4187,4273,4324,4345,4374,4433,4507,4574,4629,4687,4753,4824,4894,4952,4992,
+5012,5024,5042,5068,5096,5126,5161,5203,5249,5297,5351,5404,5438,5442,5424,5404,5397,5399,5404,5410,5422,
+5441,5473,5517,5569,5617,5657,5693,5741,5808,5887,5961,6024,6083,6144,6203,6254,6306,6374,6458,6538,6595,
+6620,6619,6594,6548,6491,6435,6391,6366,6365,6385,6417,6443,6453,6449,6432,6401,6360,6318,6278,6243,6215,
+6199,6193,6189,6183,6181,6189,6203,6215,6225,6237,6249,6259,6273,6293,6311,6316,6310,6309,6319,6331,6341,
+6362,6403,6455,6499,6521,6519,6491,6448,6406,6378,6365,6367,6391,6441,6492,6504,6461,6398,6371,6397,6445,
+6466,6448,6423,6416,6411,6370,6296,6244,6251,6282,6275,6225,6183,6173,6162,6117,6056,6018,6009,6025,6073,
+6121,6052,5766,5350,5056,5071,5347,5694,5987,6214,6376,6441,6419,6386,6403,6444,6447,6416,6396,6399,6392,
+6357,6319,6298,6282,6246,6196,6147,6104,6061,6017,5979,5945,5911,5874,5835,5791,5740,5685,5639,5603,5570,
+5535,5495,5451,5401,5349,5302,5265,5235,5207,5171,5126,5078,5036,5000,4957,4901,4843,4799,4761,4718,4673,
+4644,4629,4601,4550,4497,4466,4447,4417,4374,4334,4281,4177,4012,3841,3731,3690,3672,3634,3562,3453,3304,
+3138,3006,2953,2970,3015,3063,3113,3157,3170,3143,3104,3089,3099,3106,3090,3051,2975,2837,2636,2419,2245,
+2132,2049,1964,1875,1798,1740,1696,1659,1625,1593,1559,1522,1483,1444,1407,1373,1340,1306,1278,1266,1265,
+1259,1241,1222,1210,1191,1148,1092,1049,1032,1021,994,957,924,900,878,855,832,810,784,760,746,
+741,735,723,709,694,676,656,642,634,623,606,592,584,572,549,524,507,494,472,444,426,
+415,393,361,336,321,291,240,203,213,249,263,242,223,227,219,161,71,3,-16,-15,-30,
+-69,-116,-156,-181,-194,-205,-222,-244,-261,-268,-273,-289,-318,-353,-390,-429,-465,-489,-497,-502,-516,
+-538,-554,-558,-556,-563,-585,-613,-639,-663,-688,-713,-730,-737,-742,-754,-773,-791,-807,-823,-840,-856,
+-870,-886,-904,-919,-931,-940,-946,-949,-952,-958,-968,-975,-975,-971,-969,-968,-966,-965,-967,-968,-965,
+-959,-954,-953,-951,-949,-951,-955,-957,-952,-946,-944,-943,-940,-934,-930,-929,-929,-927,-926,-923,-919,
+-915,-909,-903,-895,-888,-882,-876,-869,-861,-857,-855,-850,-840,-830,-821,-811,-800,-790,-781,-771,-759,
+-748,-744,-742,-736,-723,-708,-698,-690,-678,-662,-644,-624,-606,-589,-574,-557,-539,-524,-514,-504,-489,
+-472,-458,-450,-443,-433,-423,-415,-408,-402,-396,-392,-389,-386,-384,-381,-377,-373,-372,-373,-377,-379,
+-379,-379,-380,-381,-383,-385,-389,-394,-400,-404,-409,-414,-422,-432,-442,-449,-458,-471,-485,-497,-508,
+-519,-531,-545,-564,-587,-609,-624,-631,-641,-659,-680,-696,-707,-714,-719,-726,-734,-744,-750,-748,-742,
+-741,-744,-745,-741,-735,-731,-728,-729,-734,-740,-742,-741,-742,-748,-752,-751,-750,-752,-755,-754,-750,
+-748,-750,-752,-749,-744,-741,-739,-737,-733,-726,-718,-707,-695,-683,-670,-656,-643,-630,-617,-604,-592,
+-582,-573,-563,-552,-541,-527,-512,-502,-498,-492,-479,-461,-447,-438,-426,-410,-393,-378,-361,-339,-312,
+-283,-248,-212,-177,-144,-107,-62,-12,36,83,133,186,241,298,362,430,499,569,641,713,779,
+836,886,933,975,998,986,938,889,903,1035,1290,1619,1961,2284,2606,2959,3333,3658,3847,3882,3841,
+3822,3862,3931,4009,4114,4256,4395,4481,4518,4552,4612,4689,4763,4817,4822,4747,4586,4373,4138,3896,3673,
+3509,3404,3301,3139,2941,2795,2755,2794,2847,2880,2895,2896,2883,2856,2823,2783,2729,2656,2558,2441,2321,
+2221,2150,2094,2037,1979,1929,1889,1859,1838,1824,1800,1747,1672,1591,1516,1442,1371,1304,1235,1151,1066,
+1009,975,905,751,533,326,172,59,-39,-130,-205,-269,-331,-384,-421,-452,-500,-570,-642,-693,-719,
+-726,-731,-749,-789,-841,-887,-908,-902,-883,-865,-863,-878,-906,-938,-972,-1015,-1075,-1151,-1240,-1333,-1422,
+-1500,-1562,-1607,-1638,-1644,-1608,-1529,-1429,-1345,-1297,-1282,-1286,-1298,-1315,-1332,-1342,-1344,-1338,-1319,-1290,-1268,
+-1273,-1303,-1328,-1319,-1282,-1236,-1184,-1120,-1057,-1021,-1009,-983,-928,-888,-919,-1019,-1125,-1188,-1218,-1248,-1283,
+-1303,-1302,-1292,-1281,-1264,-1235,-1201,-1169,-1138,-1108,-1081,-1056,-1024,-981,-933,-894,-864,-836,-808,-785,-772,
+-765,-757,-742,-724,-713,-715,-727,-735,-736,-733,-730,-726,-716,-706,-705,-710,-713,-710,-705,-701,-694,
+-682,-670,-662,-654,-640,-622,-605,-591,-575,-556,-534,-510,-483,-455,-428,-403,-375,-342,-309,-275,-239,
+-199,-159,-123,-88,-51,-12,28,68,109,151,192,229,264,302,341,378,414,448,481,512,541,
+572,610,653,695,730,762,796,832,861,880,896,916,936,947,945,942,945,957,974,993,1011,
+1024,1030,1038,1053,1074,1097,1118,1138,1155,1164,1169,1176,1193,1214,1230,1238,1245,1259,1280,1299,1311,
+1314,1315,1319,1320,1313,1302,1293,1293,1296,1296,1293,1293,1298,1305,1310,1312,1309,1304,1300,1300,1301,
+1298,1292,1287,1305,1304,1304,1302,1299,1298,1299,1299,1297,1293,1293,1295,1298,1303,1307,1311,1314,1316,
+1318,1320,1321,1322,1326,1336,1350,1368,1388,1408,1429,1446,1458,1466,1472,1480,1488,1492,1488,1486,1499,
+1529,1568,1607,1650,1703,1757,1797,1830,1879,1955,2036,2090,2118,2147,2188,2229,2261,2289,2322,2341,2327,
+2285,2238,2195,2139,2060,1975,1904,1852,1804,1755,1708,1666,1625,1581,1531,1480,1430,1383,1339,1294,1249,
+1204,1157,1096,1017,931,856,795,742,696,665,644,619,579,534,494,462,435,411,384,345,289,
+227,178,151,140,134,121,92,41,-21,-80,-130,-187,-267,-363,-454,-530,-606,-701,-814,-911,-963,
+-970,-960,-960,-975,-1008,-1061,-1126,-1177,-1191,-1176,-1141,-1078,-980,-897,-912,-1051,-1239,-1375,-1432,-1458,-1498,
+-1552,-1607,-1667,-1735,-1802,-1860,-1909,-1940,-1939,-1920,-1919,-1957,-2008,-2043,-2072,-2109,-2136,-2138,-2157,-2257,-2407,
+-2485,-2413,-2260,-2172,-2207,-2305,-2380,-2415,-2437,-2464,-2495,-2530,-2567,-2589,-2581,-2555,-2536,-2533,-2528,-2499,-2447,
+-2386,-2324,-2255,-2174,-2085,-1989,-1873,-1725,-1573,-1486,-1508,-1589,-1627,-1579,-1527,-1580,-1751,-1944,-2069,-2127,-2174,
+-2232,-2280,-2302,-2309,-2321,-2335,-2343,-2350,-2363,-2375,-2373,-2360,-2350,-2351,-2355,-2356,-2355,-2359,-2365,-2374,-2391,
+-2420,-2453,-2481,-2512,-2562,-2627,-2687,-2739,-2808,-2897,-2934,-2834,-2607,-2387,-2311,-2396,-2548,-2680,-2773,-2844,-2897,
+-2930,-2960,-3008,-3068,-3112,-3135,-3153,-3179,-3204,-3222,-3241,-3267,-3293,-3311,-3327,-3350,-3382,-3418,-3461,-3517,-3586,
+-3657,-3724,-3782,-3836,-3890,-3950,-4015,-4082,-4145,-4208,-4274,-4342,-4408,-4473,-4544,-4619,-4691,-4762,-4838,-4919,-4990,
+-5045,-5091,-5136,-5178,-5213,-5247,-5287,-5330,-5369,-5403,-5441,-5483,-5522,-5553,-5582,-5612,-5638,-5661,-5683,-5706,-5725,
+-5738,-5753,-5778,-5804,-5824,-5843,-5868,-5896,-5916,-5929,-5946,-5970,-5989,-5997,-6004,-6020,-6042,-6059,-6073,-6094,-6122,
+-6151,-6179,-6212,-6252,-6288,-6302,-6283,-6237,-6174,-6109,-6044,-5978,-5908,-5841,-5800,-5800,-5835,-5864,-5842,-5774,-5718,
+-5741,-5849,-5975,-6048,-6047,-5995,-5916,-5833,-5779,-5783,-5826,-5843,-5790,-5689,-5604,-5562,-5538,-5495,-5423,-5339,-5270,
+-5240,-5246,-5245,-5185,-5054,-4897,-4777,-4722,-4714,-4711,-4666,-4556,-4406,-4279,-4219,-4215,-4222,-4218,-4211,-4199,-4159,
+-4084,-4004,-3950,-3914,-3868,-3801,-3730,-3660,-3578,-3475,-3364,-3269,-3196,-3137,-3086,-3042,-3008,-2982,-2960,-2943,-2925,
+-2896,-2842,-2761,-2665,-2566,-2464,-2348,-2227,-2129,-2068,-2019,-1942,-1836,-1739,-1671,-1607,-1508,-1381,-1279,-1235,-1238,
+-1248,-1236,-1200,-1151,-1105,-1065,-1018,-947,-849,-740,-638,-537,-422,-299,-194,-125,-87,-62,-39,-19,0,
+28,81,151,223,283,334,384,439,492,542,598,665,742,817,888,967,1066,1188,1325,1463,1593,
+1710,1815,1914,2009,2112,2237,2384,2525,2629,2693,2745,2813,2890,2959,3019,3082,3151,3211,3249,3273,3300,
+3339,3393,3460,3529,3584,3622,3662,3724,3805,3870,3890,3871,3848,3852,3887,3930,3965,3996,4045,4115,4180,
+4219,4239,4267,4317,4377,4433,4490,4555,4627,4697,4761,4817,4860,4888,4908,4935,4971,5007,5038,5071,5115,
+5169,5227,5286,5340,5376,5382,5366,5345,5334,5333,5336,5341,5349,5363,5389,5432,5487,5539,5576,5608,5660,
+5740,5825,5891,5935,5984,6052,6129,6194,6248,6310,6386,6462,6520,6559,6587,6600,6584,6535,6464,6393,6342,
+6324,6337,6368,6399,6422,6436,6440,6432,6413,6386,6350,6308,6270,6245,6232,6215,6191,6168,6157,6157,6162,
+6172,6190,6210,6225,6240,6260,6277,6280,6274,6275,6285,6292,6293,6309,6351,6405,6443,6451,6435,6404,6369,
+6341,6330,6335,6355,6396,6454,6500,6494,6436,6371,6354,6391,6435,6444,6417,6385,6366,6341,6279,6197,6147,
+6157,6188,6184,6144,6119,6134,6154,6134,6079,6025,5992,5984,6006,6027,5955,5729,5435,5271,5351,5586,5814,
+5975,6121,6274,6382,6409,6404,6429,6475,6490,6464,6438,6431,6422,6394,6360,6334,6307,6268,6223,6183,6143,
+6097,6049,6011,5981,5950,5915,5876,5834,5786,5737,5696,5661,5624,5580,5535,5491,5448,5405,5365,5329,5294,
+5258,5219,5174,5123,5074,5032,4990,4940,4884,4834,4796,4763,4729,4699,4672,4635,4585,4535,4502,4478,4445,
+4404,4375,4356,4307,4198,4054,3935,3876,3857,3831,3761,3631,3442,3215,2993,2822,2736,2741,2815,2914,2980,
+2992,2982,3002,3054,3093,3079,3026,2966,2892,2768,2586,2397,2256,2164,2082,1987,1889,1809,1749,1701,1659,
+1622,1586,1549,1511,1471,1427,1384,1349,1325,1304,1284,1269,1259,1246,1224,1200,1182,1158,1116,1066,1030,
+1015,1002,975,939,910,888,867,847,829,809,783,757,743,737,729,715,703,694,681,661,644,
+632,619,604,596,594,586,563,536,520,509,488,461,441,428,405,369,339,317,287,241,205,
+204,218,208,174,158,179,203,188,139,98,86,87,66,15,-54,-116,-155,-169,-177,-192,-214,
+-229,-237,-248,-272,-304,-337,-373,-413,-449,-471,-480,-488,-508,-533,-549,-553,-554,-566,-590,-619,-642,
+-664,-693,-725,-750,-761,-768,-784,-810,-834,-851,-862,-872,-882,-895,-912,-932,-948,-957,-961,-967,-972,
+-976,-979,-982,-983,-982,-979,-977,-974,-972,-972,-975,-975,-970,-961,-956,-954,-952,-951,-954,-960,-962,
+-956,-948,-945,-945,-945,-941,-936,-932,-927,-924,-921,-916,-909,-903,-900,-897,-891,-883,-878,-874,-867,
+-859,-852,-847,-839,-828,-819,-812,-804,-792,-780,-770,-758,-743,-730,-726,-724,-717,-705,-693,-686,-678,
+-666,-652,-637,-620,-601,-582,-565,-545,-523,-505,-492,-482,-468,-452,-440,-432,-425,-415,-405,-396,-389,
+-384,-381,-378,-374,-370,-367,-366,-363,-358,-356,-357,-360,-361,-360,-360,-361,-361,-361,-363,-367,-370,
+-375,-382,-390,-397,-404,-413,-422,-432,-443,-456,-471,-485,-497,-509,-522,-537,-555,-576,-596,-607,-612,
+-619,-633,-652,-668,-679,-687,-694,-704,-717,-730,-735,-730,-720,-715,-717,-720,-719,-716,-711,-706,-703,
+-707,-715,-721,-721,-719,-720,-723,-724,-724,-725,-727,-728,-728,-731,-734,-733,-730,-726,-724,-723,-720,
+-717,-712,-705,-696,-687,-677,-664,-649,-634,-621,-609,-596,-585,-574,-562,-550,-539,-530,-519,-506,-495,
+-488,-481,-468,-452,-440,-433,-423,-405,-383,-363,-345,-326,-301,-270,-232,-193,-157,-123,-86,-43,1,
+45,90,141,197,255,314,378,448,521,592,661,730,800,868,928,979,1022,1057,1075,1056,1002,
+952,980,1139,1423,1762,2077,2356,2662,3045,3461,3783,3923,3920,3892,3921,4010,4127,4259,4392,4497,4550,
+4567,4577,4596,4618,4641,4668,4690,4692,4673,4622,4504,4289,4016,3765,3570,3380,3144,2897,2730,2683,2714,
+2760,2797,2823,2832,2820,2793,2762,2723,2672,2607,2529,2432,2321,2220,2148,2098,2051,2000,1950,1907,1872,
+1853,1848,1837,1796,1723,1640,1556,1470,1384,1308,1236,1153,1059,978,907,806,642,446,277,161,70,
+-20,-107,-177,-232,-282,-325,-359,-396,-452,-522,-587,-633,-655,-657,-652,-660,-698,-755,-804,-827,-826,
+-819,-816,-824,-849,-887,-930,-974,-1029,-1103,-1188,-1266,-1330,-1390,-1454,-1519,-1572,-1609,-1622,-1599,-1531,-1434,
+-1345,-1293,-1280,-1289,-1303,-1320,-1339,-1353,-1355,-1340,-1312,-1280,-1254,-1245,-1251,-1259,-1253,-1232,-1194,-1137,-1068,
+-1013,-997,-1003,-985,-930,-889,-924,-1034,-1154,-1232,-1271,-1299,-1324,-1333,-1322,-1301,-1278,-1250,-1218,-1187,-1161,
+-1133,-1100,-1066,-1035,-1002,-961,-919,-884,-854,-823,-792,-769,-760,-758,-749,-732,-713,-702,-704,-713,-722,
+-728,-731,-729,-722,-713,-707,-708,-713,-715,-713,-709,-705,-697,-686,-674,-665,-655,-640,-623,-606,-590,
+-573,-554,-535,-514,-488,-458,-429,-402,-374,-343,-310,-276,-240,-201,-162,-127,-93,-58,-19,19,59,
+98,139,179,218,255,291,327,363,400,438,474,505,533,562,599,641,683,718,750,784,821,
+855,880,902,926,946,953,950,945,949,963,981,1001,1020,1034,1044,1054,1070,1091,1112,1132,1151,
+1165,1170,1169,1173,1188,1207,1220,1226,1234,1249,1271,1289,1301,1307,1312,1314,1311,1303,1297,1300,1309,
+1314,1308,1300,1299,1306,1315,1319,1321,1320,1318,1316,1314,1315,1313,1309,1305,1323,1323,1324,1322,1319,
+1320,1323,1324,1321,1315,1313,1315,1319,1323,1328,1332,1335,1338,1341,1341,1339,1340,1346,1358,1370,1384,
+1401,1421,1439,1451,1458,1461,1467,1476,1485,1490,1490,1495,1517,1556,1597,1630,1666,1715,1771,1819,1864,
+1928,2013,2085,2118,2136,2182,2265,2343,2381,2383,2376,2365,2334,2283,2230,2180,2122,2046,1966,1898,1846,
+1802,1758,1715,1674,1634,1594,1550,1503,1452,1405,1363,1322,1278,1233,1186,1127,1054,976,912,861,814,
+765,723,689,655,610,562,523,498,478,456,427,390,344,296,250,214,188,172,155,127,83,
+31,-18,-67,-127,-205,-298,-394,-492,-597,-712,-826,-909,-943,-936,-920,-919,-938,-972,-1022,-1080,-1122,
+-1132,-1125,-1117,-1089,-1016,-928,-908,-1003,-1162,-1296,-1368,-1406,-1439,-1471,-1507,-1563,-1639,-1718,-1781,-1830,-1861,
+-1865,-1852,-1858,-1900,-1951,-1988,-2020,-2060,-2083,-2074,-2090,-2202,-2378,-2477,-2407,-2244,-2142,-2168,-2261,-2339,-2381,
+-2406,-2426,-2446,-2479,-2531,-2578,-2594,-2580,-2556,-2529,-2485,-2417,-2338,-2261,-2190,-2122,-2060,-2006,-1949,-1860,-1719,
+-1556,-1447,-1448,-1523,-1571,-1540,-1491,-1533,-1692,-1884,-2012,-2071,-2114,-2173,-2227,-2253,-2262,-2272,-2281,-2283,-2284,
+-2297,-2313,-2312,-2293,-2276,-2273,-2277,-2277,-2276,-2283,-2292,-2301,-2317,-2352,-2395,-2428,-2454,-2494,-2555,-2622,-2686,
+-2764,-2844,-2855,-2725,-2488,-2284,-2233,-2327,-2467,-2585,-2681,-2767,-2829,-2860,-2885,-2933,-2990,-3027,-3042,-3058,-3086,
+-3113,-3130,-3148,-3174,-3200,-3216,-3230,-3253,-3286,-3321,-3361,-3413,-3477,-3543,-3608,-3672,-3735,-3796,-3855,-3915,-3975,
+-4037,-4103,-4175,-4247,-4312,-4374,-4442,-4515,-4588,-4661,-4740,-4824,-4901,-4961,-5011,-5055,-5095,-5126,-5158,-5196,-5237,
+-5271,-5300,-5334,-5373,-5408,-5438,-5466,-5494,-5521,-5544,-5569,-5596,-5617,-5632,-5651,-5678,-5707,-5728,-5746,-5771,-5799,
+-5821,-5838,-5860,-5886,-5906,-5914,-5920,-5937,-5963,-5989,-6014,-6041,-6068,-6094,-6119,-6150,-6183,-6209,-6219,-6208,-6175,
+-6118,-6044,-5965,-5887,-5813,-5746,-5704,-5705,-5741,-5774,-5760,-5703,-5662,-5703,-5826,-5962,-6033,-6019,-5948,-5861,-5782,
+-5739,-5748,-5787,-5797,-5742,-5648,-5571,-5534,-5513,-5473,-5403,-5322,-5261,-5242,-5254,-5251,-5179,-5035,-4873,-4763,-4729,
+-4744,-4750,-4697,-4580,-4439,-4337,-4298,-4294,-4287,-4270,-4256,-4236,-4186,-4107,-4035,-3995,-3966,-3915,-3840,-3765,-3701,
+-3634,-3552,-3462,-3377,-3304,-3241,-3188,-3145,-3111,-3085,-3065,-3047,-3024,-2986,-2925,-2843,-2751,-2656,-2557,-2448,-2337,
+-2248,-2190,-2139,-2062,-1960,-1864,-1790,-1719,-1623,-1515,-1429,-1386,-1370,-1359,-1340,-1307,-1261,-1209,-1166,-1124,-1055,
+-949,-826,-718,-628,-534,-428,-326,-249,-197,-155,-119,-97,-90,-77,-36,34,114,180,232,283,340,
+398,448,499,566,647,728,795,859,946,1070,1219,1369,1503,1624,1747,1875,2004,2128,2255,2389,2511,
+2601,2660,2714,2784,2861,2925,2978,3035,3101,3159,3196,3217,3243,3285,3349,3428,3507,3568,3607,3642,3695,
+3763,3819,3839,3824,3793,3772,3772,3797,3841,3896,3958,4019,4066,4096,4121,4157,4209,4264,4314,4365,4426,
+4493,4558,4620,4682,4735,4772,4799,4830,4870,4908,4940,4975,5025,5086,5151,5212,5269,5310,5326,5318,5301,
+5288,5279,5274,5273,5279,5293,5316,5353,5403,5453,5488,5522,5578,5664,5752,5810,5843,5888,5965,6057,6134,
+6191,6252,6327,6399,6448,6480,6511,6547,6566,6546,6481,6392,6315,6277,6285,6323,6365,6397,6417,6431,6439,
+6442,6434,6411,6372,6333,6307,6293,6276,6245,6208,6174,6146,6127,6124,6140,6166,6187,6202,6217,6230,6235,
+6235,6244,6260,6268,6264,6271,6304,6353,6385,6388,6371,6349,6331,6322,6322,6329,6346,6383,6438,6481,6473,
+6416,6357,6343,6373,6406,6410,6385,6349,6311,6260,6192,6128,6103,6123,6151,6150,6134,6147,6203,6259,6263,
+6212,6136,6061,5997,5951,5901,5794,5608,5436,5426,5615,5862,6005,6036,6077,6200,6343,6421,6437,6453,6490,
+6517,6509,6484,6462,6443,6420,6396,6372,6341,6299,6257,6221,6183,6136,6087,6051,6023,5992,5952,5909,5867,
+5828,5791,5757,5719,5670,5618,5571,5533,5497,5460,5421,5381,5335,5286,5240,5199,5156,5110,5066,5024,4978,
+4924,4875,4843,4821,4794,4754,4709,4664,4620,4581,4552,4528,4495,4449,4411,4392,4372,4314,4213,4113,4058,
+4048,4034,3962,3817,3614,3372,3100,2821,2597,2503,2563,2712,2835,2875,2870,2892,2947,2973,2927,2839,2763,
+2697,2598,2457,2320,2227,2166,2093,1997,1900,1825,1766,1715,1667,1625,1585,1543,1503,1464,1419,1373,1336,
+1318,1307,1292,1271,1250,1228,1200,1170,1144,1116,1078,1037,1009,997,984,960,932,909,888,866,846,
+831,815,789,761,742,732,721,709,702,698,683,658,636,625,618,607,599,596,589,569,548,
+537,528,505,473,448,433,410,375,343,321,293,252,217,203,195,166,123,102,119,150,164,
+161,164,177,182,157,99,21,-55,-110,-139,-156,-177,-202,-220,-233,-253,-283,-312,-335,-359,-392,
+-427,-455,-474,-493,-514,-530,-537,-538,-542,-559,-586,-613,-634,-656,-687,-726,-759,-775,-786,-807,-839,
+-869,-887,-897,-904,-915,-928,-946,-964,-975,-976,-975,-980,-989,-997,-999,-996,-994,-994,-994,-991,-987,
+-983,-983,-986,-986,-978,-969,-961,-957,-953,-951,-955,-961,-963,-958,-951,-947,-947,-948,-947,-941,-934,
+-927,-924,-921,-914,-903,-895,-893,-891,-884,-876,-871,-867,-861,-852,-845,-838,-828,-816,-807,-801,-793,
+-782,-770,-759,-746,-730,-716,-709,-705,-696,-684,-674,-666,-657,-644,-632,-621,-608,-591,-573,-555,-536,
+-513,-493,-478,-467,-455,-441,-430,-421,-412,-401,-392,-383,-374,-368,-366,-364,-359,-353,-349,-348,-347,
+-344,-342,-344,-345,-343,-342,-343,-346,-346,-345,-347,-349,-352,-354,-361,-370,-379,-386,-394,-403,-413,
+-421,-433,-448,-466,-484,-500,-515,-530,-545,-561,-577,-589,-596,-601,-611,-626,-642,-656,-665,-673,-682,
+-696,-709,-714,-708,-697,-689,-689,-692,-695,-696,-694,-689,-685,-688,-697,-705,-705,-700,-697,-697,-699,
+-700,-700,-701,-703,-708,-715,-718,-716,-713,-711,-711,-708,-703,-700,-699,-696,-689,-680,-671,-659,-644,
+-628,-614,-600,-587,-574,-563,-552,-539,-528,-519,-510,-499,-487,-477,-467,-455,-440,-430,-424,-416,-398,
+-374,-349,-329,-310,-287,-258,-223,-184,-146,-107,-65,-21,22,61,102,151,209,270,330,393,462,
+538,612,681,747,818,894,966,1020,1059,1093,1128,1145,1120,1057,1009,1054,1235,1518,1824,2114,2426,
+2813,3249,3618,3824,3882,3897,3955,4071,4216,4362,4483,4557,4582,4584,4588,4597,4607,4621,4639,4651,4663,
+4696,4739,4720,4565,4292,3993,3725,3463,3182,2925,2763,2701,2687,2681,2691,2721,2747,2743,2718,2689,2660,
+2624,2582,2532,2463,2375,2285,2213,2153,2090,2028,1979,1943,1914,1894,1886,1873,1834,1765,1683,1599,1510,
+1415,1328,1245,1152,1045,940,840,722,569,407,279,187,104,12,-71,-132,-176,-217,-259,-301,-353,
+-418,-481,-529,-557,-570,-568,-558,-562,-600,-661,-715,-744,-756,-766,-779,-802,-843,-898,-952,-997,-1052,
+-1130,-1220,-1289,-1332,-1371,-1428,-1494,-1545,-1568,-1567,-1544,-1491,-1411,-1331,-1282,-1272,-1282,-1292,-1301,-1318,-1341,
+-1356,-1348,-1319,-1278,-1239,-1206,-1180,-1159,-1145,-1132,-1110,-1069,-1022,-999,-1015,-1039,-1019,-947,-881,-896,-1003,
+-1141,-1248,-1307,-1340,-1360,-1364,-1349,-1320,-1283,-1242,-1204,-1176,-1154,-1127,-1089,-1050,-1016,-985,-951,-915,-882,
+-853,-822,-793,-774,-767,-762,-748,-728,-710,-701,-699,-701,-708,-717,-724,-724,-718,-713,-713,-717,-720,
+-720,-719,-718,-716,-709,-699,-690,-682,-672,-657,-640,-621,-601,-578,-557,-538,-520,-497,-468,-438,-408,
+-379,-348,-315,-281,-246,-209,-172,-137,-103,-68,-31,7,45,83,121,160,201,242,278,312,348,
+387,429,468,502,531,562,596,636,674,707,736,768,805,843,877,906,931,949,953,949,947,
+955,971,989,1008,1027,1041,1053,1064,1080,1099,1117,1134,1149,1162,1168,1171,1179,1192,1204,1212,1218,
+1230,1248,1265,1277,1287,1297,1306,1312,1311,1306,1307,1318,1334,1339,1330,1317,1315,1324,1334,1337,1336,
+1335,1332,1329,1326,1326,1327,1325,1323,1342,1341,1342,1342,1340,1341,1344,1345,1341,1336,1334,1336,1339,
+1343,1348,1352,1357,1360,1363,1363,1361,1361,1367,1377,1386,1394,1408,1425,1440,1447,1450,1455,1463,1473,
+1482,1490,1498,1513,1541,1582,1619,1645,1675,1726,1793,1860,1926,2005,2097,2165,2187,2194,2239,2333,2424,
+2461,2441,2397,2351,2300,2245,2194,2149,2097,2030,1959,1897,1847,1803,1762,1722,1681,1641,1603,1565,1522,
+1474,1427,1386,1346,1303,1259,1213,1157,1087,1014,957,916,875,826,776,733,692,644,594,555,532,
+515,494,469,445,420,387,341,288,241,208,182,151,111,68,27,-14,-66,-131,-212,-309,-424,
+-551,-679,-798,-889,-933,-931,-905,-890,-898,-927,-967,-1010,-1043,-1063,-1087,-1118,-1128,-1083,-1007,-973,-1026,
+-1132,-1224,-1277,-1313,-1346,-1371,-1392,-1439,-1521,-1614,-1693,-1750,-1783,-1788,-1778,-1788,-1832,-1888,-1931,-1967,-2002,
+-2015,-2001,-2023,-2147,-2331,-2433,-2371,-2220,-2124,-2139,-2213,-2280,-2329,-2371,-2401,-2418,-2445,-2499,-2562,-2604,-2608,
+-2577,-2511,-2413,-2301,-2197,-2112,-2040,-1979,-1935,-1907,-1873,-1804,-1682,-1529,-1406,-1372,-1425,-1490,-1500,-1476,-1506,
+-1635,-1809,-1942,-2013,-2061,-2117,-2168,-2196,-2210,-2223,-2231,-2228,-2225,-2239,-2257,-2253,-2224,-2198,-2196,-2205,-2210,
+-2211,-2219,-2232,-2243,-2259,-2297,-2348,-2385,-2405,-2433,-2490,-2564,-2640,-2715,-2773,-2751,-2603,-2378,-2207,-2178,-2263,
+-2375,-2474,-2575,-2680,-2755,-2788,-2810,-2851,-2902,-2933,-2948,-2970,-3003,-3029,-3044,-3064,-3094,-3120,-3133,-3144,-3167,
+-3198,-3229,-3263,-3311,-3370,-3432,-3496,-3566,-3638,-3703,-3760,-3813,-3869,-3931,-4000,-4075,-4149,-4214,-4275,-4340,-4415,
+-4491,-4566,-4645,-4729,-4808,-4873,-4925,-4969,-5005,-5037,-5071,-5111,-5149,-5177,-5201,-5231,-5268,-5300,-5326,-5350,-5378,
+-5404,-5429,-5455,-5484,-5509,-5528,-5551,-5580,-5607,-5627,-5647,-5674,-5704,-5727,-5747,-5771,-5799,-5820,-5830,-5839,-5860,
+-5891,-5926,-5960,-5991,-6015,-6036,-6060,-6090,-6116,-6129,-6132,-6129,-6115,-6074,-6005,-5925,-5847,-5775,-5709,-5661,-5649,
+-5671,-5696,-5687,-5643,-5617,-5669,-5801,-5940,-6002,-5965,-5871,-5777,-5715,-5697,-5716,-5748,-5751,-5700,-5617,-5546,-5510,
+-5491,-5456,-5393,-5317,-5262,-5249,-5265,-5253,-5166,-5011,-4858,-4777,-4778,-4812,-4809,-4733,-4601,-4473,-4398,-4378,-4373,
+-4354,-4328,-4310,-4284,-4227,-4147,-4083,-4048,-4016,-3959,-3882,-3810,-3752,-3692,-3621,-3546,-3474,-3407,-3344,-3291,-3249,
+-3219,-3193,-3169,-3140,-3101,-3052,-2991,-2919,-2836,-2748,-2657,-2561,-2464,-2377,-2307,-2243,-2167,-2077,-1991,-1916,-1837,
+-1744,-1649,-1576,-1527,-1488,-1457,-1433,-1406,-1361,-1302,-1250,-1206,-1143,-1036,-908,-802,-731,-672,-601,-519,-444,
+-379,-319,-264,-223,-198,-175,-131,-62,14,80,130,181,240,301,353,403,470,558,644,711,769,
+851,977,1132,1285,1419,1543,1680,1834,1990,2132,2260,2379,2484,2563,2619,2674,2742,2813,2872,2918,2967,
+3023,3075,3115,3146,3184,3237,3309,3393,3476,3541,3584,3620,3661,3706,3739,3753,3747,3726,3698,3678,3683,
+3722,3785,3853,3908,3946,3973,4004,4050,4110,4167,4213,4254,4300,4352,4409,4475,4548,4614,4662,4695,4730,
+4771,4810,4844,4883,4939,5006,5073,5136,5196,5244,5267,5264,5249,5234,5221,5211,5208,5217,5234,5256,5286,
+5328,5373,5412,5449,5506,5589,5672,5728,5764,5816,5901,5997,6071,6125,6187,6270,6350,6399,6420,6442,6482,
+6521,6526,6474,6379,6283,6227,6231,6278,6334,6375,6398,6414,6429,6443,6449,6436,6407,6374,6354,6349,6342,
+6322,6288,6245,6196,6149,6120,6121,6139,6154,6161,6167,6177,6185,6193,6208,6229,6241,6239,6241,6265,6306,
+6337,6341,6326,6309,6303,6307,6316,6321,6327,6350,6391,6424,6417,6369,6321,6307,6327,6352,6361,6348,6311,
+6251,6176,6110,6077,6083,6111,6137,6150,6170,6223,6302,6362,6361,6301,6209,6107,6002,5902,5798,5666,5512,
+5430,5532,5812,6097,6214,6168,6124,6201,6356,6467,6492,6483,6496,6526,6538,6523,6493,6464,6442,6427,6411,
+6382,6341,6298,6259,6217,6169,6123,6089,6063,6031,5991,5947,5905,5867,5834,5801,5760,5710,5660,5619,5583,
+5544,5500,5456,5412,5361,5305,5254,5217,5185,5147,5105,5063,5018,4964,4912,4877,4855,4828,4784,4737,4699,
+4668,4635,4604,4579,4551,4505,4451,4413,4396,4371,4313,4239,4191,4180,4162,4089,3957,3797,3619,3380,3047,
+2679,2414,2366,2505,2692,2804,2834,2848,2869,2859,2786,2683,2600,2538,2458,2350,2252,2191,2146,2079,1989,
+1902,1834,1777,1722,1673,1631,1589,1543,1501,1463,1421,1374,1337,1318,1308,1289,1260,1232,1208,1182,1150,
+1118,1085,1050,1018,998,988,976,957,936,919,900,875,854,839,823,796,766,745,730,717,708,
+708,708,689,655,630,623,623,616,606,600,594,582,572,570,563,533,489,451,427,402,370,
+344,328,309,276,241,220,200,166,124,97,91,96,104,128,169,208,221,200,154,90,17,
+-50,-103,-142,-177,-206,-228,-248,-276,-310,-338,-354,-370,-395,-426,-457,-485,-509,-524,-526,-521,-519,
+-528,-548,-573,-597,-617,-639,-672,-715,-753,-778,-795,-822,-858,-892,-912,-921,-930,-942,-959,-977,-993,
+-999,-993,-987,-990,-1001,-1011,-1014,-1012,-1010,-1011,-1011,-1009,-1002,-996,-995,-996,-995,-988,-977,-969,-962,
+-956,-953,-955,-961,-963,-959,-953,-949,-948,-949,-948,-942,-934,-927,-925,-924,-916,-904,-894,-890,-887,
+-878,-867,-860,-856,-850,-840,-832,-826,-817,-805,-796,-789,-781,-769,-758,-749,-737,-722,-708,-699,-692,
+-681,-667,-656,-646,-634,-619,-607,-597,-585,-570,-555,-540,-523,-501,-482,-468,-457,-446,-434,-423,-412,
+-399,-388,-380,-372,-362,-354,-351,-350,-345,-335,-330,-329,-330,-328,-329,-332,-333,-329,-326,-328,-332,
+-333,-333,-335,-338,-338,-338,-342,-349,-357,-365,-375,-386,-394,-400,-409,-427,-450,-471,-487,-498,-506,
+-514,-526,-543,-563,-578,-586,-593,-604,-618,-632,-642,-649,-656,-665,-675,-679,-674,-665,-660,-659,-661,
+-666,-670,-673,-672,-670,-672,-680,-688,-689,-683,-678,-675,-676,-676,-677,-677,-680,-688,-697,-700,-698,
+-696,-697,-699,-695,-688,-685,-686,-686,-681,-673,-663,-652,-637,-621,-606,-591,-576,-562,-551,-541,-530,
+-518,-508,-497,-485,-473,-463,-454,-443,-430,-418,-408,-397,-380,-358,-334,-311,-289,-266,-239,-208,-172,
+-135,-96,-52,-7,35,75,116,165,224,288,350,410,476,549,625,695,760,829,907,985,1046,
+1088,1123,1165,1205,1216,1177,1103,1056,1106,1278,1545,1862,2220,2622,3037,3387,3618,3749,3845,3955,4084,
+4224,4363,4479,4549,4574,4582,4592,4605,4623,4653,4681,4681,4657,4658,4705,4734,4654,4452,4189,3912,3610,
+3293,3028,2872,2797,2729,2653,2611,2624,2650,2649,2625,2608,2604,2602,2595,2574,2531,2465,2392,2320,2240,
+2148,2064,2015,1998,1985,1964,1939,1911,1866,1798,1720,1640,1552,1457,1360,1263,1153,1030,910,797,678,
+545,416,317,238,154,62,-15,-66,-103,-145,-195,-254,-321,-387,-435,-462,-478,-494,-500,-494,-498,
+-534,-593,-646,-679,-701,-723,-747,-782,-843,-923,-993,-1040,-1084,-1152,-1233,-1292,-1323,-1354,-1408,-1470,-1505,
+-1503,-1480,-1454,-1418,-1364,-1303,-1263,-1259,-1275,-1285,-1285,-1294,-1323,-1354,-1360,-1330,-1278,-1221,-1165,-1111,-1064,
+-1032,-1017,-1008,-995,-989,-1010,-1057,-1089,-1056,-956,-857,-842,-938,-1095,-1236,-1325,-1369,-1388,-1389,-1371,-1336,
+-1289,-1239,-1194,-1161,-1134,-1102,-1063,-1024,-994,-969,-941,-910,-881,-853,-827,-803,-788,-778,-766,-747,-727,
+-713,-705,-698,-692,-695,-705,-715,-717,-714,-714,-720,-725,-726,-725,-727,-731,-732,-727,-720,-714,-709,
+-700,-686,-669,-648,-622,-594,-569,-549,-531,-509,-482,-452,-422,-392,-360,-327,-293,-259,-225,-190,-155,
+-119,-83,-46,-7,32,70,106,144,187,230,269,304,341,381,423,462,498,532,565,598,632,
+667,698,726,755,790,830,870,904,931,948,953,951,951,958,972,989,1006,1024,1040,1053,1066,
+1081,1097,1112,1126,1138,1150,1163,1177,1191,1200,1203,1207,1220,1239,1254,1261,1266,1275,1289,1301,1305,
+1304,1304,1310,1326,1343,1349,1341,1329,1329,1340,1351,1354,1351,1347,1344,1340,1338,1340,1343,1344,1342,
+1360,1358,1357,1357,1356,1357,1360,1362,1361,1359,1359,1358,1359,1362,1367,1373,1376,1378,1381,1383,1383,
+1383,1386,1392,1397,1403,1413,1426,1436,1439,1444,1453,1464,1472,1479,1491,1507,1529,1557,1592,1623,1649,
+1682,1744,1831,1921,2006,2095,2188,2258,2281,2281,2310,2383,2457,2481,2447,2382,2312,2248,2194,2153,2118,
+2074,2016,1954,1900,1853,1809,1769,1731,1692,1652,1615,1579,1539,1493,1450,1411,1372,1329,1284,1239,1187,
+1121,1052,997,959,921,874,822,775,730,680,631,595,573,555,537,520,508,496,466,412,344,
+282,237,202,163,121,84,55,27,-11,-65,-144,-254,-387,-521,-641,-751,-851,-918,-930,-898,-861,
+-852,-871,-902,-933,-965,-1010,-1074,-1142,-1175,-1146,-1083,-1049,-1073,-1120,-1143,-1144,-1161,-1202,-1242,-1273,-1323,
+-1409,-1515,-1609,-1677,-1716,-1723,-1713,-1721,-1765,-1827,-1880,-1917,-1935,-1927,-1909,-1948,-2091,-2280,-2378,-2320,-2187,
+-2103,-2111,-2165,-2221,-2281,-2345,-2389,-2400,-2400,-2423,-2467,-2510,-2525,-2496,-2414,-2290,-2160,-2054,-1975,-1912,-1865,
+-1839,-1821,-1790,-1727,-1623,-1488,-1358,-1293,-1326,-1412,-1469,-1472,-1483,-1572,-1724,-1866,-1955,-2010,-2059,-2103,-2132,
+-2152,-2171,-2183,-2180,-2175,-2186,-2201,-2191,-2152,-2119,-2118,-2136,-2148,-2152,-2164,-2183,-2199,-2217,-2253,-2303,-2341,
+-2358,-2381,-2435,-2510,-2582,-2638,-2660,-2609,-2461,-2269,-2135,-2119,-2187,-2274,-2365,-2477,-2596,-2678,-2709,-2727,-2764,
+-2809,-2839,-2861,-2891,-2924,-2944,-2955,-2976,-3010,-3037,-3048,-3059,-3083,-3114,-3140,-3168,-3212,-3269,-3330,-3394,-3466,
+-3541,-3606,-3658,-3708,-3763,-3826,-3897,-3973,-4048,-4115,-4175,-4241,-4317,-4396,-4473,-4550,-4630,-4707,-4772,-4824,-4866,
+-4902,-4937,-4976,-5020,-5056,-5080,-5100,-5130,-5167,-5200,-5223,-5245,-5271,-5296,-5321,-5347,-5375,-5402,-5427,-5454,-5484,
+-5508,-5526,-5549,-5581,-5613,-5638,-5658,-5684,-5712,-5733,-5745,-5760,-5789,-5828,-5871,-5912,-5944,-5964,-5980,-6002,-6031,
+-6050,-6052,-6048,-6052,-6053,-6029,-5974,-5904,-5837,-5775,-5713,-5660,-5630,-5629,-5637,-5626,-5591,-5575,-5632,-5765,-5903,
+-5957,-5900,-5790,-5702,-5667,-5674,-5697,-5715,-5709,-5665,-5595,-5528,-5488,-5467,-5441,-5390,-5323,-5271,-5257,-5262,-5233,
+-5128,-4973,-4849,-4813,-4851,-4890,-4862,-4753,-4610,-4499,-4452,-4448,-4442,-4414,-4381,-4355,-4323,-4265,-4192,-4133,-4093,
+-4049,-3986,-3919,-3864,-3815,-3757,-3687,-3620,-3559,-3500,-3442,-3391,-3352,-3322,-3294,-3261,-3218,-3164,-3105,-3046,-2984,
+-2910,-2829,-2749,-2670,-2587,-2498,-2413,-2333,-2255,-2173,-2094,-2016,-1934,-1846,-1766,-1704,-1651,-1599,-1556,-1530,-1508,
+-1463,-1396,-1333,-1283,-1219,-1116,-990,-887,-831,-803,-772,-723,-662,-595,-522,-447,-377,-319,-268,-213,-148,
+-78,-17,32,80,135,194,248,301,369,454,538,605,671,766,903,1062,1211,1343,1476,1630,1802,
+1973,2123,2248,2353,2439,2507,2561,2614,2677,2745,2804,2851,2893,2936,2979,3022,3070,3126,3191,3268,3351,
+3431,3495,3541,3578,3611,3636,3648,3653,3657,3653,3633,3606,3598,3627,3684,3747,3799,3835,3864,3897,3945,
+4007,4069,4117,4153,4185,4223,4274,4341,4420,4495,4551,4595,4640,4687,4727,4761,4802,4861,4929,4995,5059,
+5122,5175,5199,5195,5179,5168,5160,5155,5155,5167,5188,5210,5236,5271,5315,5356,5395,5446,5516,5589,5646,
+5694,5760,5851,5943,6008,6056,6120,6213,6306,6362,6382,6396,6429,6469,6483,6442,6351,6246,6177,6173,6223,
+6289,6340,6370,6390,6410,6428,6438,6433,6417,6399,6393,6397,6400,6394,6374,6339,6289,6229,6183,6164,6161,
+6155,6138,6125,6127,6137,6149,6163,6181,6195,6199,6205,6230,6269,6301,6308,6291,6270,6261,6270,6287,6299,
+6305,6315,6334,6346,6332,6295,6262,6254,6269,6289,6304,6300,6262,6186,6100,6044,6034,6054,6079,6101,6131,
+6180,6245,6301,6321,6294,6235,6165,6091,6005,5910,5808,5692,5573,5530,5658,5952,6251,6375,6309,6214,6243,
+6384,6512,6547,6523,6511,6531,6554,6551,6525,6494,6471,6457,6442,6415,6377,6333,6289,6244,6198,6157,6122,
+6092,6060,6025,5987,5947,5905,5865,5829,5793,5751,5710,5674,5634,5584,5528,5480,5441,5397,5342,5291,5254,
+5225,5187,5141,5094,5048,4997,4945,4902,4871,4838,4796,4759,4736,4717,4682,4638,4606,4584,4550,4496,4447,
+4426,4417,4386,4328,4277,4250,4221,4153,4053,3963,3882,3728,3409,2944,2500,2272,2318,2523,2717,2818,2848,
+2848,2816,2737,2634,2547,2480,2405,2312,2229,2173,2124,2056,1972,1896,1833,1773,1716,1670,1635,1595,1546,
+1497,1458,1419,1376,1339,1316,1299,1272,1238,1211,1194,1176,1146,1109,1073,1041,1016,1003,995,983,963,
+944,928,911,888,867,850,830,801,771,748,730,714,706,711,714,695,661,638,636,639,631,
+620,616,615,610,607,610,603,566,508,455,417,387,358,339,332,321,297,268,246,224,195,
+162,135,106,72,52,72,123,165,173,158,141,120,78,13,-57,-119,-167,-200,-223,-247,-283,
+-327,-365,-392,-412,-434,-458,-483,-507,-526,-530,-520,-510,-511,-522,-538,-557,-577,-598,-621,-654,-699,
+-744,-777,-801,-830,-867,-901,-921,-931,-941,-955,-973,-993,-1010,-1018,-1013,-1006,-1006,-1014,-1022,-1027,-1029,
+-1030,-1030,-1028,-1023,-1016,-1010,-1007,-1005,-1001,-993,-983,-974,-967,-961,-957,-957,-960,-962,-959,-954,-950,
+-948,-947,-945,-941,-933,-927,-925,-924,-917,-906,-896,-891,-886,-876,-864,-855,-849,-840,-828,-819,-813,
+-805,-795,-785,-777,-767,-755,-744,-735,-726,-714,-702,-693,-684,-671,-657,-644,-631,-616,-600,-585,-573,
+-559,-544,-532,-520,-504,-485,-468,-455,-445,-433,-422,-412,-399,-384,-373,-366,-359,-349,-340,-337,-337,
+-331,-321,-314,-313,-314,-314,-315,-319,-321,-318,-314,-315,-318,-321,-322,-324,-328,-328,-327,-327,-331,
+-337,-345,-358,-371,-380,-385,-396,-417,-439,-455,-460,-462,-463,-468,-479,-500,-528,-554,-569,-577,-585,
+-595,-607,-616,-622,-628,-633,-638,-639,-636,-632,-630,-632,-635,-638,-642,-646,-648,-648,-652,-658,-664,
+-667,-665,-660,-657,-656,-657,-659,-660,-663,-670,-679,-683,-682,-681,-684,-686,-683,-675,-671,-673,-674,
+-670,-662,-652,-640,-625,-610,-596,-583,-569,-554,-541,-531,-520,-507,-494,-480,-466,-454,-445,-439,-430,
+-418,-401,-384,-368,-351,-333,-313,-291,-267,-242,-215,-185,-151,-116,-80,-42,-1,41,85,131,184,
+244,309,372,432,493,559,630,700,766,834,907,983,1051,1107,1156,1205,1255,1291,1290,1235,1147,
+1086,1124,1295,1589,1966,2376,2763,3090,3350,3571,3768,3935,4065,4179,4299,4416,4502,4548,4575,4596,4609,
+4625,4658,4694,4689,4635,4589,4600,4636,4623,4528,4368,4143,3832,3472,3172,3004,2920,2823,2692,2591,2559,
+2562,2550,2528,2527,2556,2592,2618,2622,2597,2545,2482,2411,2320,2207,2107,2060,2060,2063,2041,2000,1954,
+1902,1836,1760,1677,1589,1494,1393,1281,1154,1021,896,785,674,557,450,368,294,209,119,48,4,
+-31,-78,-139,-210,-283,-342,-376,-392,-415,-449,-473,-476,-479,-507,-556,-599,-629,-656,-686,-718,-761,
+-837,-939,-1031,-1087,-1122,-1168,-1224,-1268,-1292,-1320,-1369,-1421,-1442,-1425,-1394,-1371,-1352,-1320,-1278,-1250,-1254,
+-1277,-1289,-1285,-1285,-1311,-1349,-1361,-1331,-1271,-1203,-1138,-1071,-1008,-959,-932,-926,-936,-966,-1017,-1075,-1103,
+-1061,-955,-846,-813,-893,-1048,-1206,-1318,-1379,-1403,-1400,-1373,-1330,-1280,-1230,-1182,-1139,-1097,-1057,-1019,-988,
+-964,-944,-920,-895,-871,-849,-828,-810,-795,-782,-765,-744,-729,-720,-712,-699,-687,-686,-696,-706,-709,
+-708,-713,-721,-727,-726,-726,-732,-740,-744,-741,-737,-734,-731,-724,-712,-696,-674,-646,-616,-590,-568,
+-547,-523,-497,-467,-435,-402,-369,-335,-302,-270,-240,-208,-172,-134,-97,-59,-19,24,65,102,140,
+182,227,269,306,344,383,421,457,494,532,569,601,631,663,696,725,752,782,820,861,898,
+927,946,955,956,954,956,964,979,996,1015,1033,1050,1065,1079,1093,1105,1116,1125,1135,1152,1175,
+1193,1199,1198,1208,1234,1260,1269,1263,1265,1285,1307,1312,1302,1290,1289,1300,1316,1330,1336,1333,1328,
+1330,1341,1353,1358,1356,1354,1352,1350,1351,1355,1360,1362,1360,1376,1375,1375,1373,1370,1371,1375,1380,
+1382,1383,1382,1380,1377,1380,1386,1392,1394,1394,1398,1402,1404,1403,1405,1410,1414,1419,1427,1435,1438,
+1439,1445,1457,1467,1470,1474,1488,1511,1535,1559,1587,1617,1649,1695,1773,1879,1989,2085,2172,2256,2322,
+2352,2357,2372,2412,2454,2462,2425,2358,2283,2214,2165,2134,2106,2064,2008,1952,1903,1859,1816,1776,1741,
+1706,1669,1633,1597,1557,1515,1475,1440,1403,1359,1312,1266,1216,1154,1089,1035,994,955,908,859,812,
+767,720,677,646,626,608,591,580,573,555,514,449,376,314,266,223,174,128,99,87,75,
+44,-16,-116,-253,-401,-527,-620,-705,-805,-898,-940,-917,-869,-842,-845,-860,-875,-904,-969,-1066,-1160,
+-1204,-1183,-1133,-1110,-1121,-1119,-1068,-1005,-993,-1044,-1117,-1179,-1243,-1333,-1442,-1543,-1618,-1661,-1670,-1660,-1662,
+-1699,-1761,-1819,-1849,-1844,-1811,-1795,-1864,-2039,-2236,-2326,-2267,-2145,-2073,-2080,-2125,-2181,-2252,-2326,-2366,-2350,
+-2303,-2267,-2262,-2279,-2295,-2282,-2219,-2116,-2009,-1927,-1869,-1825,-1795,-1780,-1758,-1707,-1628,-1528,-1409,-1285,-1212,
+-1242,-1351,-1444,-1463,-1457,-1515,-1655,-1806,-1905,-1957,-1998,-2037,-2067,-2088,-2111,-2127,-2126,-2120,-2126,-2136,-2122,
+-2081,-2047,-2049,-2072,-2087,-2093,-2108,-2136,-2159,-2176,-2203,-2243,-2278,-2298,-2323,-2373,-2435,-2480,-2495,-2479,-2418,
+-2300,-2160,-2066,-2056,-2107,-2184,-2283,-2410,-2533,-2606,-2627,-2641,-2680,-2726,-2759,-2785,-2817,-2846,-2856,-2858,-2877,
+-2911,-2938,-2950,-2967,-2999,-3033,-3056,-3079,-3120,-3177,-3237,-3300,-3371,-3443,-3503,-3551,-3599,-3659,-3727,-3799,-3874,
+-3948,-4015,-4076,-4142,-4220,-4301,-4377,-4451,-4526,-4597,-4660,-4711,-4753,-4790,-4827,-4869,-4912,-4947,-4971,-4994,-5027,
+-5068,-5105,-5131,-5153,-5176,-5199,-5221,-5244,-5271,-5299,-5329,-5360,-5389,-5410,-5427,-5452,-5488,-5523,-5549,-5572,-5600,
+-5629,-5647,-5660,-5682,-5721,-5771,-5822,-5867,-5898,-5914,-5926,-5946,-5973,-5989,-5986,-5982,-5991,-5999,-5984,-5940,-5887,
+-5837,-5791,-5740,-5685,-5639,-5612,-5596,-5574,-5541,-5529,-5586,-5718,-5855,-5905,-5843,-5734,-5665,-5658,-5679,-5690,-5685,
+-5668,-5630,-5569,-5504,-5457,-5436,-5417,-5380,-5325,-5278,-5256,-5239,-5184,-5070,-4935,-4856,-4866,-4925,-4950,-4885,-4750,
+-4609,-4525,-4505,-4512,-4500,-4462,-4419,-4384,-4345,-4291,-4231,-4177,-4126,-4065,-4001,-3954,-3925,-3889,-3831,-3760,-3695,
+-3639,-3584,-3528,-3480,-3444,-3412,-3378,-3337,-3285,-3222,-3157,-3097,-3037,-2967,-2891,-2821,-2756,-2685,-2598,-2506,-2421,
+-2343,-2264,-2182,-2099,-2014,-1932,-1863,-1809,-1758,-1705,-1658,-1629,-1605,-1559,-1489,-1417,-1357,-1288,-1188,-1068,-967,
+-913,-897,-888,-864,-820,-760,-688,-610,-527,-447,-376,-314,-253,-187,-121,-66,-18,30,86,144,205,
+273,348,418,484,568,693,851,1012,1154,1287,1435,1606,1788,1959,2104,2219,2308,2376,2431,2481,2532,
+2590,2656,2722,2779,2822,2856,2891,2937,2997,3065,3139,3221,3306,3384,3443,3484,3518,3546,3561,3563,3566,
+3576,3582,3569,3545,3534,3553,3596,3647,3696,3737,3769,3801,3842,3898,3961,4017,4060,4093,4127,4171,4233,
+4307,4379,4442,4499,4559,4616,4659,4691,4731,4787,4851,4912,4972,5036,5090,5115,5112,5099,5097,5102,5108,
+5113,5127,5149,5174,5202,5238,5280,5319,5353,5394,5450,5513,5571,5629,5703,5796,5885,5949,5997,6063,6160,
+6258,6320,6342,6352,6376,6410,6426,6396,6316,6213,6134,6115,6157,6226,6285,6325,6354,6379,6397,6406,6406,
+6406,6411,6422,6432,6437,6433,6423,6403,6368,6319,6274,6246,6226,6194,6147,6106,6090,6098,6112,6125,6138,
+6149,6156,6167,6194,6234,6267,6273,6256,6232,6224,6236,6260,6282,6291,6292,6288,6278,6257,6233,6220,6222,
+6231,6239,6247,6243,6208,6136,6058,6015,6014,6029,6042,6062,6101,6149,6180,6174,6137,6093,6066,6061,6061,
+6041,5998,5940,5867,5782,5736,5815,6039,6298,6426,6377,6272,6267,6384,6518,6573,6558,6539,6552,6573,6574,
+6555,6531,6510,6489,6465,6436,6400,6360,6316,6273,6234,6198,6160,6120,6083,6052,6023,5986,5942,5899,5864,
+5832,5796,5758,5718,5673,5617,5560,5514,5480,5442,5392,5343,5305,5270,5223,5166,5114,5074,5035,4992,4948,
+4908,4864,4817,4780,4764,4750,4715,4664,4623,4603,4581,4538,4492,4470,4463,4441,4390,4335,4298,4264,4207,
+4133,4080,4050,3961,3695,3222,2678,2289,2199,2362,2601,2770,2840,2849,2822,2756,2660,2565,2484,2405,2319,
+2238,2173,2114,2044,1965,1892,1827,1762,1704,1665,1640,1605,1551,1494,1448,1410,1371,1335,1309,1285,1253,
+1217,1194,1185,1174,1146,1108,1071,1043,1025,1017,1011,997,973,950,932,915,897,878,860,835,804,
+774,751,729,707,696,700,705,694,671,659,660,657,641,630,634,641,638,631,628,616,579,
+519,463,421,389,362,348,343,333,311,285,265,244,220,197,175,138,81,35,34,63,76,
+57,40,59,100,115,78,7,-66,-123,-160,-185,-214,-260,-320,-380,-429,-464,-486,-499,-509,-520,
+-527,-523,-512,-508,-516,-526,-532,-540,-558,-582,-608,-640,-685,-735,-776,-804,-831,-862,-892,-912,-925,
+-938,-954,-972,-993,-1013,-1027,-1030,-1028,-1027,-1030,-1034,-1040,-1045,-1048,-1046,-1039,-1033,-1029,-1025,-1021,-1015,
+-1009,-999,-988,-977,-971,-966,-962,-960,-961,-961,-958,-955,-952,-949,-947,-944,-940,-934,-928,-925,-921,
+-914,-905,-897,-892,-886,-876,-865,-857,-848,-835,-821,-810,-803,-795,-786,-776,-766,-754,-740,-728,-718,
+-709,-699,-691,-683,-674,-661,-646,-633,-620,-605,-589,-572,-555,-537,-523,-512,-501,-484,-465,-449,-438,
+-428,-416,-406,-397,-385,-369,-356,-349,-343,-333,-324,-323,-324,-319,-309,-302,-301,-301,-300,-300,-304,
+-308,-307,-303,-302,-304,-307,-309,-312,-317,-319,-319,-320,-322,-325,-331,-343,-357,-367,-375,-390,-409,
+-424,-426,-422,-421,-428,-440,-455,-476,-502,-527,-544,-555,-563,-572,-581,-589,-595,-601,-605,-607,-606,
+-604,-604,-608,-613,-616,-617,-619,-620,-622,-625,-629,-635,-640,-644,-646,-645,-643,-643,-646,-651,-654,
+-655,-657,-664,-669,-670,-669,-670,-673,-671,-665,-660,-660,-661,-658,-650,-639,-626,-610,-594,-582,-573,
+-563,-548,-533,-518,-504,-490,-476,-460,-446,-436,-428,-422,-412,-398,-378,-357,-339,-323,-309,-292,-273,
+-250,-225,-197,-164,-128,-93,-60,-28,6,48,96,149,204,263,326,389,449,507,566,628,695,
+763,833,903,973,1042,1112,1183,1246,1300,1346,1375,1361,1288,1181,1111,1154,1343,1653,2020,2383,2717,
+3039,3363,3662,3885,4019,4111,4215,4331,4424,4483,4529,4569,4590,4599,4618,4647,4646,4597,4542,4533,4560,
+4579,4569,4519,4377,4086,3687,3330,3128,3037,2935,2778,2628,2542,2503,2471,2447,2453,2490,2534,2571,2592,
+2588,2556,2507,2448,2368,2264,2166,2118,2120,2129,2108,2057,1999,1941,1875,1795,1705,1611,1517,1416,1298,
+1162,1025,904,798,691,581,485,413,343,258,168,99,57,21,-27,-92,-166,-236,-286,-310,-330,
+-371,-429,-471,-481,-482,-500,-531,-557,-578,-611,-654,-695,-741,-818,-927,-1035,-1103,-1137,-1164,-1196,-1226,
+-1248,-1276,-1316,-1354,-1370,-1361,-1345,-1335,-1329,-1313,-1288,-1271,-1278,-1299,-1307,-1296,-1287,-1304,-1334,-1343,-1310,
+-1251,-1190,-1131,-1070,-1003,-943,-903,-891,-909,-951,-1004,-1049,-1064,-1031,-955,-872,-835,-880,-995,-1133,-1254,
+-1342,-1392,-1399,-1366,-1311,-1258,-1215,-1170,-1115,-1058,-1009,-974,-949,-929,-910,-891,-874,-858,-843,-827,-811,
+-797,-780,-761,-744,-734,-729,-721,-705,-690,-685,-690,-697,-698,-699,-705,-713,-718,-719,-722,-729,-738,
+-742,-742,-741,-740,-737,-732,-724,-710,-688,-661,-632,-606,-582,-558,-532,-504,-472,-436,-400,-365,-333,
+-301,-272,-243,-212,-176,-137,-99,-62,-21,23,67,105,143,185,231,275,314,352,390,426,460,
+496,536,574,605,634,666,701,732,756,781,814,853,890,918,938,952,956,954,951,955,969,
+990,1011,1031,1049,1065,1078,1090,1102,1112,1118,1124,1139,1163,1182,1186,1190,1213,1254,1284,1283,1271,
+1283,1326,1362,1357,1320,1286,1279,1291,1305,1314,1319,1320,1320,1323,1331,1343,1353,1357,1359,1359,1361,
+1364,1370,1375,1376,1376,1391,1394,1396,1395,1391,1391,1395,1400,1402,1403,1401,1397,1395,1397,1404,1410,
+1411,1411,1415,1420,1422,1423,1426,1433,1439,1443,1448,1452,1452,1451,1456,1467,1474,1473,1474,1489,1513,
+1536,1555,1580,1614,1657,1717,1807,1926,2048,2147,2219,2280,2332,2366,2382,2396,2418,2438,2436,2406,2349,
+2278,2210,2161,2134,2109,2067,2010,1954,1909,1867,1826,1786,1752,1720,1687,1654,1619,1579,1537,1498,1464,
+1429,1386,1339,1290,1239,1180,1119,1066,1023,982,937,890,845,801,760,727,704,684,664,649,641,
+629,598,542,474,410,359,316,268,214,166,142,139,131,91,6,-120,-272,-415,-517,-578,-641,
+-744,-867,-949,-958,-919,-878,-858,-847,-844,-867,-939,-1050,-1156,-1208,-1197,-1166,-1159,-1168,-1135,-1036,-926,
+-888,-943,-1040,-1127,-1203,-1294,-1400,-1499,-1570,-1608,-1616,-1607,-1605,-1630,-1679,-1723,-1737,-1713,-1673,-1677,-1787,
+-1995,-2198,-2277,-2211,-2094,-2030,-2041,-2090,-2150,-2219,-2277,-2286,-2231,-2140,-2057,-2009,-1998,-2011,-2018,-1992,-1933,
+-1871,-1827,-1794,-1765,-1741,-1719,-1675,-1590,-1482,-1375,-1271,-1171,-1121,-1174,-1305,-1415,-1439,-1428,-1483,-1623,-1773,
+-1863,-1903,-1939,-1980,-2011,-2025,-2039,-2053,-2055,-2050,-2052,-2062,-2053,-2020,-1990,-1991,-2011,-2025,-2032,-2051,-2085,
+-2113,-2125,-2138,-2167,-2199,-2225,-2254,-2296,-2329,-2323,-2279,-2224,-2173,-2114,-2050,-2008,-2011,-2055,-2131,-2241,-2374,
+-2487,-2538,-2543,-2556,-2600,-2653,-2687,-2710,-2738,-2759,-2761,-2757,-2772,-2804,-2831,-2848,-2873,-2913,-2950,-2973,-2995,
+-3035,-3090,-3148,-3208,-3275,-3343,-3397,-3440,-3492,-3558,-3633,-3708,-3782,-3854,-3920,-3980,-4046,-4122,-4201,-4275,-4344,
+-4413,-4480,-4540,-4593,-4639,-4678,-4715,-4753,-4793,-4827,-4855,-4884,-4923,-4969,-5011,-5043,-5066,-5086,-5103,-5119,-5140,
+-5167,-5198,-5230,-5264,-5291,-5310,-5327,-5355,-5393,-5429,-5457,-5484,-5517,-5547,-5564,-5576,-5604,-5654,-5716,-5775,-5821,
+-5850,-5863,-5873,-5893,-5918,-5933,-5934,-5937,-5950,-5957,-5939,-5901,-5863,-5835,-5808,-5769,-5717,-5660,-5608,-5565,-5524,
+-5485,-5473,-5532,-5665,-5804,-5853,-5793,-5698,-5652,-5664,-5684,-5675,-5648,-5621,-5587,-5530,-5462,-5411,-5389,-5374,-5346,
+-5304,-5266,-5238,-5199,-5123,-5015,-4921,-4895,-4939,-4993,-4984,-4884,-4738,-4618,-4566,-4565,-4569,-4546,-4498,-4449,-4405,
+-4361,-4315,-4269,-4222,-4159,-4083,-4020,-3994,-3990,-3967,-3908,-3835,-3772,-3717,-3660,-3602,-3554,-3518,-3484,-3444,-3397,
+-3341,-3276,-3209,-3147,-3086,-3017,-2944,-2879,-2822,-2756,-2674,-2588,-2509,-2437,-2359,-2273,-2186,-2102,-2023,-1956,-1902,
+-1855,-1805,-1757,-1720,-1685,-1635,-1567,-1492,-1422,-1346,-1251,-1143,-1048,-984,-952,-934,-910,-872,-823,-772,-720,
+-657,-582,-509,-447,-390,-325,-252,-186,-134,-86,-30,35,108,181,248,309,379,488,645,823,985,
+1119,1253,1412,1592,1771,1929,2060,2163,2238,2292,2339,2388,2441,2497,2561,2632,2698,2747,2779,2812,2860,
+2924,2996,3077,3168,3264,3346,3399,3430,3454,3477,3493,3500,3505,3513,3514,3499,3477,3467,3478,3507,3547,
+3596,3646,3688,3720,3751,3796,3857,3921,3977,4022,4059,4097,4146,4206,4269,4331,4397,4470,4537,4586,4622,
+4662,4716,4772,4823,4873,4930,4982,5011,5015,5013,5023,5043,5061,5074,5089,5112,5143,5180,5221,5260,5291,
+5318,5352,5401,5459,5515,5573,5645,5734,5821,5889,5943,6012,6104,6198,6261,6286,6295,6312,6342,6363,6351,
+6291,6198,6111,6075,6099,6160,6222,6270,6307,6336,6353,6356,6358,6372,6398,6426,6441,6440,6431,6422,6414,
+6396,6368,6337,6314,6288,6240,6169,6103,6070,6074,6094,6114,6126,6132,6132,6138,6159,6192,6218,6221,6208,
+6200,6209,6234,6262,6281,6285,6274,6253,6230,6211,6204,6210,6217,6212,6198,6187,6180,6158,6110,6054,6020,
+6013,6020,6035,6065,6104,6120,6084,6006,5930,5897,5921,5985,6052,6091,6094,6074,6037,5979,5920,5928,6050,
+6234,6356,6348,6280,6279,6383,6511,6577,6577,6569,6581,6598,6596,6581,6565,6548,6522,6488,6456,6424,6387,
+6345,6306,6275,6245,6207,6159,6116,6082,6054,6020,5980,5941,5909,5876,5836,5790,5745,5701,5653,5603,5558,
+5517,5473,5423,5377,5342,5305,5254,5196,5151,5123,5100,5067,5024,4978,4923,4861,4807,4777,4761,4737,4697,
+4658,4631,4605,4568,4528,4504,4493,4472,4431,4385,4351,4323,4279,4217,4154,4101,4014,3795,3381,2841,2375,
+2172,2261,2496,2702,2809,2844,2840,2793,2701,2592,2497,2416,2336,2256,2184,2119,2050,1973,1896,1824,1755,
+1699,1667,1649,1618,1562,1496,1442,1402,1365,1332,1304,1276,1241,1206,1185,1177,1166,1141,1106,1074,1051,
+1037,1031,1025,1010,985,958,935,917,900,883,864,837,805,776,752,728,700,682,681,684,679,
+672,673,674,658,631,621,637,653,646,625,607,590,558,513,474,447,426,409,401,397,378,
+341,302,273,249,225,206,191,157,99,45,25,22,-6,-62,-87,-40,54,123,125,73,4,
+-55,-97,-130,-166,-219,-291,-367,-432,-477,-498,-504,-505,-509,-511,-506,-502,-510,-524,-530,-526,-527,
+-546,-575,-601,-630,-672,-724,-769,-800,-824,-850,-875,-894,-912,-932,-952,-971,-991,-1011,-1029,-1039,-1043,
+-1045,-1046,-1048,-1053,-1059,-1062,-1056,-1047,-1042,-1042,-1041,-1036,-1029,-1022,-1012,-998,-986,-978,-975,-970,-966,
+-963,-961,-958,-956,-954,-953,-951,-947,-942,-937,-932,-926,-919,-911,-904,-898,-892,-885,-876,-866,-857,
+-846,-833,-819,-807,-798,-789,-779,-768,-757,-743,-729,-715,-703,-691,-681,-674,-668,-659,-645,-631,-618,
+-606,-593,-579,-563,-544,-525,-509,-499,-486,-468,-448,-433,-423,-411,-398,-389,-383,-372,-356,-342,-334,
+-327,-317,-309,-308,-310,-305,-295,-289,-288,-288,-284,-283,-287,-292,-292,-289,-289,-291,-294,-297,-303,
+-308,-312,-315,-317,-320,-321,-325,-332,-341,-350,-361,-376,-389,-393,-387,-387,-402,-430,-456,-474,-486,
+-496,-505,-515,-526,-538,-549,-557,-562,-567,-573,-578,-580,-581,-582,-585,-592,-599,-603,-605,-605,-606,
+-607,-610,-614,-619,-624,-629,-633,-635,-635,-636,-642,-650,-654,-651,-648,-651,-657,-659,-658,-657,-658,
+-658,-654,-650,-648,-648,-644,-636,-624,-610,-594,-578,-567,-558,-550,-538,-521,-502,-485,-470,-456,-442,
+-430,-420,-412,-402,-388,-369,-349,-331,-316,-302,-288,-272,-254,-233,-209,-181,-148,-112,-77,-45,-13,
+20,62,113,168,223,277,334,394,454,510,563,619,681,751,827,901,968,1034,1110,1196,1275,
+1336,1382,1421,1442,1415,1330,1222,1158,1199,1362,1621,1934,2281,2665,3073,3449,3722,3880,3982,4088,4201,
+4288,4348,4410,4481,4533,4552,4563,4582,4589,4567,4538,4533,4546,4560,4583,4610,4554,4312,3905,3504,3259,
+3150,3048,2883,2699,2563,2480,2424,2388,2376,2376,2374,2382,2414,2454,2473,2463,2435,2389,2320,2243,2191,
+2181,2185,2165,2113,2047,1978,1902,1810,1709,1611,1522,1428,1314,1181,1049,934,827,715,603,514,451,
+388,303,211,140,95,58,9,-53,-124,-190,-234,-256,-281,-334,-406,-459,-477,-482,-493,-508,-515,
+-528,-567,-625,-677,-722,-785,-881,-985,-1060,-1100,-1125,-1154,-1188,-1221,-1252,-1279,-1302,-1318,-1330,-1337,-1343,
+-1346,-1345,-1342,-1340,-1344,-1347,-1335,-1310,-1292,-1296,-1311,-1307,-1272,-1223,-1179,-1139,-1092,-1034,-975,-929,-908,
+-917,-950,-983,-1000,-1000,-985,-954,-907,-863,-852,-893,-983,-1105,-1239,-1349,-1398,-1374,-1309,-1247,-1202,-1156,
+-1093,-1024,-971,-938,-915,-894,-876,-864,-858,-849,-838,-824,-810,-795,-778,-760,-745,-736,-732,-726,-713,
+-699,-690,-687,-688,-688,-691,-696,-703,-708,-712,-717,-724,-729,-733,-736,-739,-739,-736,-732,-726,-713,
+-692,-664,-635,-609,-583,-556,-531,-503,-469,-429,-389,-354,-323,-294,-265,-236,-204,-167,-127,-89,-54,
+-15,27,70,109,147,189,236,282,322,362,402,440,473,507,545,582,612,639,671,707,736,
+756,776,807,846,881,905,922,937,948,949,947,952,970,994,1016,1035,1052,1067,1078,1089,1102,
+1114,1120,1122,1133,1153,1171,1177,1185,1216,1263,1290,1282,1272,1305,1376,1426,1412,1351,1298,1286,1298,
+1308,1310,1312,1317,1321,1323,1328,1339,1351,1360,1365,1367,1370,1375,1381,1386,1389,1391,1406,1411,1416,
+1416,1413,1411,1414,1418,1419,1418,1416,1415,1415,1417,1422,1427,1429,1430,1433,1436,1439,1441,1448,1457,
+1463,1466,1469,1472,1474,1473,1476,1483,1487,1487,1490,1504,1525,1544,1561,1587,1627,1678,1746,1842,1967,
+2092,2187,2242,2275,2305,2335,2361,2385,2407,2420,2418,2397,2353,2288,2218,2163,2131,2106,2068,2016,1965,
+1922,1882,1842,1803,1768,1737,1705,1674,1641,1602,1558,1514,1476,1441,1402,1359,1311,1257,1198,1140,1091,
+1049,1009,967,923,878,833,797,773,753,730,706,691,684,668,628,569,511,465,431,396,354,
+304,256,223,200,166,97,-10,-140,-265,-362,-421,-459,-520,-633,-777,-894,-939,-923,-882,-846,-822,
+-815,-844,-922,-1035,-1140,-1196,-1198,-1183,-1185,-1193,-1155,-1053,-941,-896,-941,-1028,-1106,-1177,-1264,-1368,-1461,
+-1521,-1547,-1549,-1543,-1540,-1552,-1573,-1588,-1584,-1560,-1545,-1589,-1736,-1959,-2155,-2218,-2145,-2030,-1969,-1984,-2037,
+-2095,-2143,-2160,-2126,-2043,-1941,-1853,-1796,-1776,-1788,-1808,-1809,-1789,-1766,-1752,-1735,-1705,-1665,-1615,-1538,-1422,
+-1292,-1178,-1089,-1028,-1028,-1120,-1268,-1379,-1404,-1404,-1475,-1621,-1758,-1826,-1851,-1886,-1935,-1965,-1967,-1964,-1972,
+-1977,-1975,-1979,-1991,-1992,-1969,-1943,-1938,-1951,-1961,-1970,-1994,-2030,-2055,-2062,-2070,-2095,-2129,-2158,-2189,-2218,
+-2218,-2155,-2046,-1948,-1906,-1911,-1934,-1961,-1998,-2051,-2125,-2228,-2346,-2433,-2459,-2450,-2462,-2513,-2570,-2601,-2617,
+-2637,-2656,-2661,-2660,-2675,-2705,-2731,-2752,-2782,-2824,-2861,-2883,-2907,-2948,-3003,-3058,-3116,-3179,-3240,-3289,-3332,
+-3387,-3460,-3542,-3620,-3694,-3764,-3828,-3887,-3950,-4023,-4098,-4167,-4231,-4294,-4358,-4418,-4474,-4524,-4568,-4604,-4638,
+-4675,-4711,-4745,-4781,-4824,-4872,-4917,-4952,-4975,-4988,-4997,-5008,-5030,-5061,-5095,-5129,-5161,-5188,-5208,-5229,-5260,
+-5301,-5338,-5367,-5397,-5433,-5464,-5481,-5496,-5531,-5592,-5662,-5725,-5770,-5796,-5809,-5820,-5840,-5863,-5878,-5886,-5899,
+-5915,-5916,-5892,-5857,-5833,-5822,-5810,-5782,-5734,-5670,-5598,-5529,-5468,-5418,-5405,-5468,-5608,-5749,-5798,-5740,-5655,
+-5626,-5648,-5660,-5635,-5598,-5572,-5539,-5479,-5407,-5354,-5330,-5313,-5288,-5260,-5238,-5209,-5152,-5066,-4981,-4940,-4964,
+-5023,-5053,-5002,-4877,-4737,-4646,-4620,-4625,-4614,-4576,-4524,-4475,-4429,-4381,-4340,-4307,-4266,-4196,-4109,-4049,-4040,
+-4052,-4035,-3976,-3903,-3843,-3789,-3729,-3668,-3619,-3581,-3542,-3495,-3444,-3387,-3322,-3256,-3195,-3137,-3074,-3006,-2943,
+-2884,-2818,-2740,-2661,-2592,-2524,-2447,-2361,-2277,-2199,-2123,-2051,-1992,-1943,-1897,-1848,-1799,-1751,-1697,-1633,-1559,
+-1480,-1396,-1308,-1220,-1137,-1063,-999,-943,-892,-844,-808,-792,-783,-756,-697,-625,-565,-517,-464,-397,-330,
+-274,-225,-167,-96,-16,63,139,213,304,438,618,807,968,1099,1232,1390,1563,1726,1866,1984,2079,
+2147,2196,2244,2300,2361,2419,2482,2553,2621,2671,2703,2733,2779,2842,2917,3005,3108,3216,3304,3354,3377,
+3394,3415,3437,3453,3462,3461,3446,3418,3391,3381,3389,3411,3447,3503,3567,3621,3655,3680,3715,3770,3838,
+3904,3960,4001,4034,4069,4111,4160,4215,4281,4357,4432,4492,4540,4590,4646,4698,4739,4777,4821,4866,4897,
+4912,4925,4946,4977,5009,5035,5058,5085,5122,5167,5212,5245,5267,5287,5320,5370,5426,5478,5530,5593,5673,
+5757,5826,5884,5948,6030,6118,6183,6214,6228,6246,6277,6309,6318,6283,6205,6116,6061,6062,6104,6158,6208,
+6253,6288,6304,6304,6306,6327,6365,6402,6420,6417,6406,6399,6396,6390,6375,6356,6338,6312,6261,6184,6109,
+6068,6070,6096,6125,6141,6141,6129,6121,6129,6148,6160,6155,6150,6166,6205,6248,6275,6281,6271,6248,6218,
+6190,6175,6179,6193,6198,6180,6144,6117,6110,6110,6093,6056,6016,5995,6003,6043,6102,6139,6109,6007,5883,
+5802,5799,5861,5953,6041,6095,6107,6094,6069,6030,5975,5942,5985,6100,6215,6266,6278,6330,6442,6551,6595,
+6587,6582,6602,6619,6615,6599,6589,6577,6550,6514,6483,6455,6419,6375,6335,6307,6282,6248,6204,6160,6122,
+6087,6050,6013,5980,5946,5907,5861,5812,5769,5731,5692,5647,5597,5543,5487,5435,5396,5370,5343,5304,5263,
+5236,5222,5201,5158,5102,5045,4986,4916,4843,4789,4763,4751,4734,4705,4669,4628,4586,4551,4527,4511,4493,
+4469,4441,4414,4389,4357,4305,4225,4124,3995,3787,3431,2941,2464,2200,2227,2437,2652,2782,2842,2863,2832,
+2738,2615,2510,2430,2355,2274,2200,2136,2068,1988,1903,1823,1754,1703,1674,1657,1628,1572,1503,1443,1400,
+1365,1332,1303,1273,1239,1205,1182,1171,1158,1136,1110,1086,1067,1052,1042,1033,1019,995,968,942,918,
+897,880,862,836,806,778,754,728,700,679,671,668,663,661,667,664,639,607,603,629,650,
+638,605,575,552,525,497,483,483,487,494,508,516,491,428,354,294,251,218,197,183,156,
+107,57,31,8,-47,-126,-165,-116,-9,80,107,81,35,-10,-52,-89,-128,-177,-242,-314,-377,
+-420,-443,-453,-463,-477,-486,-490,-496,-513,-532,-537,-531,-534,-557,-587,-609,-630,-664,-712,-757,-791,
+-817,-842,-865,-886,-907,-933,-958,-979,-999,-1020,-1037,-1048,-1055,-1059,-1061,-1062,-1065,-1070,-1071,-1065,-1057,
+-1054,-1056,-1055,-1049,-1044,-1040,-1032,-1017,-1002,-994,-989,-983,-974,-967,-963,-961,-959,-959,-959,-958,-952,
+-946,-942,-936,-928,-919,-911,-905,-900,-892,-882,-871,-861,-851,-841,-829,-818,-808,-798,-786,-775,-763,
+-751,-737,-722,-708,-694,-680,-667,-659,-651,-641,-627,-612,-599,-588,-577,-565,-550,-533,-515,-500,-488,
+-473,-454,-436,-423,-411,-398,-384,-375,-369,-359,-344,-331,-323,-316,-306,-298,-296,-296,-290,-280,-274,
+-273,-273,-270,-268,-272,-276,-277,-276,-277,-280,-284,-289,-296,-301,-306,-309,-313,-318,-320,-321,-323,
+-327,-332,-342,-352,-358,-357,-357,-375,-413,-458,-490,-504,-504,-497,-490,-489,-498,-514,-528,-536,-538,
+-540,-544,-549,-554,-560,-566,-573,-581,-588,-594,-598,-602,-604,-606,-607,-610,-614,-618,-623,-626,-628,
+-629,-631,-638,-646,-649,-645,-640,-639,-644,-646,-645,-643,-643,-642,-639,-635,-632,-631,-627,-618,-605,
+-592,-578,-564,-550,-540,-531,-520,-505,-485,-466,-449,-435,-422,-409,-399,-391,-379,-362,-340,-320,-305,
+-294,-282,-268,-250,-229,-207,-183,-156,-127,-97,-67,-35,0,38,82,132,185,238,290,342,396,
+452,506,558,611,670,739,820,901,975,1041,1116,1205,1295,1365,1411,1445,1475,1485,1452,1371,1267,
+1192,1197,1307,1524,1831,2214,2640,3043,3355,3561,3709,3848,3977,4072,4147,4236,4345,4436,4482,4505,4527,
+4546,4548,4545,4549,4546,4538,4560,4625,4639,4468,4100,3693,3418,3282,3167,2993,2788,2614,2488,2396,2331,
+2279,2216,2137,2092,2129,2230,2329,2381,2394,2389,2364,2315,2265,2241,2239,2226,2180,2107,2020,1924,1816,
+1703,1600,1515,1430,1326,1204,1084,975,863,740,624,541,491,437,356,263,189,139,97,45,-18,
+-88,-153,-197,-220,-247,-300,-371,-428,-458,-473,-487,-493,-489,-499,-542,-607,-662,-701,-749,-824,-909,
+-978,-1024,-1062,-1111,-1169,-1225,-1262,-1278,-1285,-1298,-1322,-1345,-1358,-1369,-1388,-1413,-1430,-1428,-1405,-1366,-1324,
+-1295,-1286,-1281,-1260,-1226,-1195,-1175,-1154,-1123,-1080,-1032,-986,-954,-945,-955,-964,-958,-947,-943,-937,-907,
+-847,-787,-765,-811,-933,-1111,-1290,-1396,-1397,-1327,-1248,-1187,-1131,-1062,-992,-942,-913,-890,-865,-847,-842,
+-843,-839,-826,-812,-801,-789,-774,-757,-741,-730,-723,-719,-714,-706,-695,-685,-681,-682,-687,-693,-698,
+-703,-710,-718,-724,-727,-731,-738,-744,-746,-744,-740,-734,-721,-697,-666,-636,-606,-578,-551,-526,-499,
+-464,-422,-380,-344,-314,-285,-256,-227,-195,-156,-114,-76,-41,-6,33,75,113,151,194,242,289,
+331,373,416,456,490,522,555,589,618,644,674,706,731,747,765,797,838,871,889,900,915,
+933,943,947,957,979,1006,1028,1045,1059,1072,1081,1089,1101,1116,1126,1130,1139,1158,1176,1184,1191,
+1216,1253,1271,1261,1258,1305,1389,1444,1426,1359,1305,1295,1309,1317,1314,1314,1322,1330,1332,1335,1344,
+1356,1366,1371,1375,1380,1387,1394,1399,1402,1406,1420,1423,1427,1428,1425,1425,1428,1432,1433,1433,1434,
+1437,1439,1440,1442,1445,1448,1450,1451,1452,1454,1459,1469,1478,1483,1485,1488,1494,1498,1500,1501,1505,
+1511,1516,1523,1536,1553,1569,1589,1618,1660,1712,1782,1881,2005,2126,2209,2248,2263,2277,2302,2333,2365,
+2392,2407,2407,2391,2356,2298,2224,2159,2117,2090,2061,2022,1980,1941,1903,1863,1826,1791,1759,1726,1695,
+1662,1624,1578,1529,1485,1448,1414,1378,1333,1276,1212,1154,1109,1074,1041,1005,964,918,871,835,812,
+791,762,732,715,706,686,643,594,557,534,515,494,469,434,381,313,236,148,43,-70,-165,
+-221,-239,-245,-270,-337,-451,-587,-703,-768,-780,-761,-739,-732,-754,-814,-910,-1022,-1120,-1175,-1183,-1170,
+-1165,-1168,-1146,-1086,-1018,-990,-1014,-1057,-1096,-1144,-1223,-1326,-1415,-1463,-1476,-1473,-1469,-1468,-1465,-1456,-1443,
+-1434,-1438,-1470,-1556,-1717,-1925,-2096,-2146,-2072,-1957,-1892,-1902,-1952,-1999,-2014,-1987,-1920,-1834,-1754,-1693,-1652,
+-1634,-1642,-1663,-1677,-1678,-1678,-1682,-1670,-1626,-1555,-1468,-1363,-1237,-1105,-994,-920,-899,-951,-1082,-1237,-1338,
+-1364,-1385,-1479,-1627,-1746,-1792,-1806,-1841,-1893,-1918,-1910,-1898,-1903,-1912,-1915,-1922,-1936,-1942,-1924,-1896,-1883,
+-1888,-1897,-1909,-1934,-1967,-1988,-1995,-2009,-2043,-2082,-2110,-2133,-2151,-2131,-2034,-1880,-1745,-1696,-1737,-1823,-1917,
+-2002,-2076,-2143,-2218,-2297,-2352,-2362,-2349,-2362,-2414,-2470,-2497,-2505,-2519,-2543,-2562,-2574,-2594,-2621,-2645,-2665,
+-2692,-2729,-2762,-2786,-2814,-2858,-2913,-2968,-3023,-3081,-3137,-3184,-3229,-3289,-3368,-3453,-3532,-3605,-3672,-3733,-3790,
+-3852,-3921,-3991,-4056,-4116,-4177,-4238,-4297,-4354,-4408,-4455,-4494,-4529,-4567,-4608,-4648,-4689,-4733,-4780,-4822,-4855,
+-4874,-4881,-4884,-4895,-4920,-4956,-4991,-5025,-5056,-5085,-5110,-5137,-5174,-5216,-5254,-5285,-5315,-5350,-5380,-5401,-5423,
+-5467,-5535,-5608,-5669,-5710,-5733,-5747,-5761,-5782,-5802,-5817,-5831,-5852,-5870,-5867,-5839,-5809,-5795,-5795,-5789,-5764,
+-5718,-5649,-5566,-5479,-5401,-5341,-5326,-5394,-5542,-5687,-5735,-5676,-5596,-5574,-5597,-5605,-5577,-5545,-5526,-5494,-5429,
+-5354,-5303,-5278,-5255,-5230,-5217,-5212,-5182,-5108,-5018,-4964,-4976,-5038,-5095,-5092,-5008,-4872,-4746,-4681,-4672,-4673,
+-4645,-4594,-4542,-4499,-4453,-4402,-4361,-4335,-4302,-4232,-4143,-4085,-4082,-4101,-4088,-4033,-3965,-3908,-3856,-3797,-3737,
+-3688,-3645,-3597,-3543,-3486,-3427,-3361,-3295,-3238,-3188,-3135,-3075,-3013,-2953,-2886,-2811,-2736,-2668,-2598,-2519,-2434,
+-2357,-2287,-2216,-2142,-2076,-2024,-1979,-1929,-1874,-1817,-1762,-1702,-1629,-1542,-1451,-1369,-1300,-1233,-1153,-1060,-963,
+-875,-810,-783,-795,-818,-808,-744,-657,-592,-561,-540,-503,-452,-399,-348,-293,-233,-165,-85,10,122,
+252,413,599,787,950,1086,1220,1367,1517,1655,1777,1889,1984,2055,2108,2163,2228,2298,2365,2431,2502,
+2567,2610,2633,2655,2693,2752,2829,2925,3035,3145,3230,3281,3307,3328,3354,3381,3404,3416,3407,3375,3332,
+3298,3288,3298,3323,3367,3434,3509,3568,3601,3622,3652,3703,3769,3838,3897,3940,3969,3994,4022,4056,4099,
+4158,4234,4313,4385,4448,4511,4575,4628,4666,4697,4727,4760,4789,4815,4842,4875,4915,4960,5003,5042,5077,
+5116,5160,5200,5226,5241,5260,5294,5341,5392,5440,5489,5548,5622,5701,5769,5822,5874,5941,6021,6091,6136,
+6162,6187,6225,6268,6295,6282,6223,6139,6069,6041,6054,6092,6140,6191,6234,6257,6259,6262,6286,6326,6364,
+6384,6385,6379,6375,6376,6373,6364,6348,6330,6303,6255,6186,6121,6084,6084,6108,6135,6152,6148,6128,6109,
+6108,6119,6121,6108,6103,6131,6183,6231,6252,6250,6236,6212,6180,6147,6128,6129,6141,6144,6123,6082,6047,
+6042,6058,6063,6033,5980,5943,5961,6036,6124,6157,6093,5958,5830,5776,5800,5867,5941,6005,6044,6045,6019,
+5990,5966,5935,5904,5909,5974,6074,6173,6274,6403,6545,6635,6639,6597,6581,6604,6628,6627,6613,6605,6597,
+6572,6538,6509,6484,6448,6401,6357,6327,6302,6272,6237,6202,6164,6121,6077,6039,6005,5966,5921,5878,5842,
+5808,5770,5725,5677,5626,5571,5514,5465,5434,5419,5406,5387,5369,5359,5347,5309,5236,5149,5076,5021,4962,
+4890,4821,4778,4765,4762,4744,4702,4652,4609,4580,4560,4544,4531,4521,4505,4477,4444,4418,4385,4316,4198,
+4034,3806,3460,2987,2511,2225,2224,2418,2633,2773,2851,2891,2872,2778,2647,2536,2456,2380,2296,2220,2156,
+2087,1999,1903,1820,1756,1709,1679,1657,1625,1571,1505,1447,1404,1369,1333,1299,1268,1236,1205,1182,1168,
+1157,1143,1126,1108,1089,1069,1051,1036,1019,999,974,947,918,892,872,855,835,809,783,757,730,
+705,687,679,671,658,652,653,645,618,592,597,629,649,633,599,570,545,515,490,487,506,
+534,573,626,669,656,573,454,346,270,220,191,173,146,102,59,36,13,-45,-130,-186,-169,
+-101,-38,-11,-9,-17,-32,-57,-87,-117,-149,-190,-239,-285,-322,-351,-377,-408,-440,-466,-483,-500,
+-523,-544,-554,-556,-569,-596,-621,-634,-645,-670,-709,-748,-781,-812,-843,-869,-891,-913,-940,-966,-991,
+-1015,-1038,-1056,-1064,-1068,-1072,-1076,-1077,-1077,-1080,-1080,-1075,-1069,-1067,-1068,-1064,-1058,-1056,-1057,-1053,-1038,
+-1022,-1014,-1008,-999,-986,-976,-972,-969,-965,-965,-966,-964,-958,-951,-945,-940,-932,-921,-913,-908,-902,
+-892,-879,-867,-856,-845,-834,-826,-818,-808,-797,-784,-773,-762,-749,-735,-721,-707,-693,-676,-660,-648,
+-638,-626,-611,-595,-581,-570,-558,-547,-534,-520,-505,-490,-476,-460,-442,-427,-415,-402,-386,-371,-361,
+-354,-344,-331,-320,-313,-307,-298,-289,-285,-282,-275,-266,-261,-260,-260,-258,-258,-261,-264,-264,-265,
+-268,-272,-276,-281,-288,-293,-296,-299,-303,-309,-314,-316,-317,-317,-320,-327,-334,-338,-340,-355,-389,
+-432,-467,-484,-488,-488,-484,-477,-473,-480,-495,-510,-518,-518,-517,-519,-525,-535,-546,-558,-567,-576,
+-583,-590,-596,-603,-609,-612,-612,-612,-614,-618,-620,-621,-622,-622,-624,-627,-632,-635,-634,-630,-628,
+-629,-631,-631,-629,-627,-624,-619,-612,-608,-607,-602,-593,-580,-568,-558,-548,-534,-521,-510,-500,-488,
+-470,-450,-432,-415,-398,-382,-370,-362,-352,-336,-316,-296,-281,-269,-258,-243,-224,-202,-177,-150,-123,
+-97,-74,-50,-20,16,58,103,151,200,252,303,355,406,456,507,561,617,676,741,817,902,
+984,1058,1133,1217,1308,1387,1440,1470,1492,1511,1514,1482,1401,1288,1192,1172,1258,1452,1740,2093,2462,
+2790,3052,3265,3460,3634,3777,3901,4038,4184,4303,4376,4424,4471,4509,4528,4533,4536,4522,4499,4514,4590,
+4646,4541,4242,3881,3613,3459,3325,3142,2928,2728,2551,2395,2272,2173,2063,1930,1842,1877,2027,2197,2304,
+2348,2368,2373,2352,2311,2284,2284,2283,2249,2176,2079,1970,1847,1721,1609,1519,1434,1335,1223,1115,1013,
+899,768,650,575,536,492,419,330,254,197,144,84,16,-56,-122,-168,-195,-223,-271,-336,-395,
+-435,-463,-482,-489,-490,-507,-552,-608,-650,-682,-727,-795,-867,-924,-969,-1021,-1090,-1171,-1241,-1282,-1290,
+-1286,-1293,-1317,-1343,-1360,-1380,-1418,-1465,-1494,-1488,-1449,-1393,-1338,-1298,-1271,-1244,-1212,-1186,-1180,-1186,-1182,
+-1161,-1129,-1093,-1051,-1005,-971,-956,-949,-935,-921,-915,-906,-871,-808,-747,-723,-760,-870,-1045,-1236,-1367,
+-1387,-1319,-1228,-1153,-1088,-1021,-959,-920,-898,-875,-848,-829,-825,-826,-819,-804,-791,-783,-775,-763,-747,
+-731,-716,-707,-704,-705,-702,-692,-681,-676,-680,-688,-694,-697,-703,-713,-723,-729,-734,-741,-752,-760,
+-763,-762,-759,-752,-736,-710,-679,-647,-615,-584,-555,-528,-499,-463,-419,-376,-337,-304,-273,-244,-215,
+-184,-146,-104,-66,-31,3,42,83,122,160,203,251,299,343,385,428,468,501,530,561,594,
+621,645,670,698,722,738,757,790,831,862,874,880,895,920,941,953,967,992,1020,1042,1057,
+1070,1082,1087,1089,1096,1112,1128,1139,1151,1171,1193,1203,1206,1217,1237,1246,1238,1240,1284,1355,1399,
+1382,1330,1294,1296,1313,1319,1314,1314,1324,1333,1336,1339,1349,1362,1373,1379,1385,1394,1403,1412,1417,
+1418,1420,1434,1433,1435,1436,1436,1437,1441,1447,1451,1453,1456,1460,1464,1464,1463,1466,1469,1471,1470,
+1469,1472,1480,1492,1502,1507,1510,1514,1521,1526,1529,1530,1534,1542,1551,1561,1573,1589,1608,1633,1664,
+1704,1753,1824,1927,2049,2155,2218,2240,2247,2263,2289,2321,2354,2383,2398,2396,2379,2349,2299,2231,2161,
+2109,2078,2056,2028,1994,1957,1919,1881,1847,1815,1784,1751,1717,1682,1644,1600,1553,1509,1471,1439,1407,
+1363,1302,1230,1166,1121,1094,1072,1045,1009,964,917,879,852,826,793,761,740,722,690,645,608,
+593,594,594,593,589,563,490,369,225,84,-40,-137,-181,-162,-107,-68,-80,-142,-229,-319,-399,
+-462,-503,-526,-546,-584,-655,-759,-880,-997,-1090,-1142,-1150,-1129,-1107,-1098,-1099,-1097,-1094,-1098,-1102,-1098,
+-1092,-1115,-1182,-1275,-1354,-1394,-1404,-1404,-1404,-1402,-1386,-1356,-1332,-1338,-1382,-1460,-1567,-1711,-1881,-2022,-2068,
+-2004,-1890,-1810,-1801,-1840,-1872,-1860,-1803,-1724,-1657,-1611,-1576,-1540,-1513,-1509,-1525,-1544,-1558,-1574,-1590,-1580,
+-1522,-1423,-1309,-1196,-1084,-973,-875,-816,-823,-912,-1063,-1212,-1297,-1328,-1373,-1486,-1631,-1733,-1766,-1774,-1804,
+-1845,-1862,-1851,-1841,-1850,-1863,-1871,-1879,-1893,-1896,-1876,-1845,-1828,-1829,-1837,-1848,-1870,-1897,-1916,-1929,-1958,
+-2006,-2047,-2064,-2070,-2078,-2058,-1964,-1806,-1661,-1603,-1646,-1752,-1876,-1995,-2086,-2143,-2182,-2219,-2250,-2258,-2254,
+-2272,-2321,-2372,-2396,-2401,-2415,-2446,-2479,-2504,-2524,-2545,-2563,-2578,-2599,-2629,-2659,-2686,-2720,-2767,-2823,-2877,
+-2928,-2981,-3032,-3081,-3133,-3202,-3284,-3367,-3442,-3509,-3572,-3630,-3685,-3745,-3812,-3881,-3946,-4007,-4067,-4126,-4182,
+-4236,-4288,-4337,-4381,-4424,-4468,-4514,-4558,-4600,-4644,-4686,-4721,-4746,-4760,-4767,-4773,-4789,-4819,-4856,-4891,-4922,
+-4955,-4989,-5022,-5055,-5094,-5137,-5176,-5207,-5238,-5270,-5299,-5324,-5356,-5408,-5478,-5548,-5602,-5637,-5657,-5673,-5692,
+-5713,-5732,-5747,-5766,-5793,-5814,-5810,-5783,-5756,-5746,-5746,-5737,-5711,-5664,-5595,-5507,-5412,-5325,-5258,-5241,-5313,
+-5467,-5617,-5667,-5610,-5534,-5515,-5537,-5543,-5518,-5496,-5486,-5455,-5388,-5315,-5271,-5248,-5224,-5202,-5200,-5199,-5155,
+-5061,-4970,-4949,-5007,-5091,-5136,-5105,-5003,-4869,-4761,-4714,-4714,-4710,-4671,-4611,-4559,-4520,-4474,-4419,-4376,-4357,
+-4333,-4271,-4184,-4124,-4118,-4137,-4132,-4087,-4028,-3974,-3923,-3866,-3809,-3760,-3711,-3654,-3591,-3530,-3467,-3399,-3332,
+-3278,-3235,-3190,-3135,-3076,-3017,-2955,-2886,-2813,-2742,-2666,-2583,-2500,-2426,-2361,-2294,-2222,-2156,-2101,-2053,-2002,
+-1945,-1887,-1831,-1771,-1698,-1607,-1513,-1433,-1373,-1316,-1239,-1134,-1013,-900,-819,-790,-810,-836,-811,-718,-602,
+-530,-522,-542,-544,-515,-465,-410,-361,-322,-282,-218,-108,44,220,403,586,763,927,1075,1211,1341,
+1462,1574,1683,1792,1892,1971,2035,2097,2165,2237,2311,2387,2463,2526,2561,2573,2581,2607,2660,2740,2840,
+2948,3046,3122,3175,3216,3253,3286,3318,3347,3364,3353,3311,3255,3216,3207,3225,3262,3319,3394,3469,3522,
+3548,3566,3595,3644,3708,3775,3834,3878,3907,3926,3942,3963,3998,4054,4131,4215,4293,4364,4433,4500,4557,
+4599,4629,4651,4670,4695,4729,4771,4816,4863,4918,4978,5033,5077,5115,5151,5182,5202,5215,5235,5267,5306,
+5346,5388,5439,5502,5577,5655,5723,5773,5812,5860,5926,5997,6055,6098,6136,6182,6231,6266,6270,6231,6159,
+6081,6025,6005,6020,6063,6121,6173,6202,6209,6217,6243,6283,6320,6342,6350,6350,6348,6347,6346,6343,6334,
+6318,6290,6244,6187,6137,6109,6106,6118,6135,6146,6140,6119,6101,6105,6122,6126,6109,6094,6107,6141,6169,
+6179,6179,6178,6167,6137,6099,6070,6061,6068,6076,6066,6035,5999,5986,6001,6013,5987,5929,5892,5924,6018,
+6111,6128,6049,5926,5838,5825,5861,5905,5939,5972,5997,5993,5960,5927,5916,5912,5899,5889,5907,5964,6058,
+6197,6384,6571,6677,6672,6613,6584,6604,6632,6634,6625,6621,6614,6590,6556,6528,6503,6468,6424,6384,6353,
+6322,6288,6258,6231,6197,6150,6101,6062,6027,5983,5937,5904,5883,5854,5802,5741,5691,5656,5621,5575,5526,
+5492,5480,5477,5471,5462,5450,5424,5363,5265,5156,5075,5030,4996,4944,4875,4817,4789,4781,4766,4730,4684,
+4649,4631,4616,4598,4586,4581,4568,4534,4490,4462,4447,4406,4308,4143,3892,3512,3011,2518,2229,2232,2427,
+2638,2774,2856,2909,2903,2817,2688,2576,2493,2412,2323,2244,2178,2102,2002,1899,1817,1760,1716,1680,1650,
+1614,1563,1503,1452,1414,1378,1336,1294,1259,1228,1201,1179,1167,1161,1155,1145,1130,1108,1082,1056,1033,
+1012,992,972,949,919,888,864,848,832,812,787,760,731,707,694,689,681,667,654,647,634,
+611,595,608,636,646,628,604,589,570,535,497,485,503,539,598,686,770,788,707,561,413,
+304,237,202,180,149,102,58,35,17,-28,-106,-178,-209,-206,-195,-184,-162,-132,-109,-109,-125,
+-143,-159,-176,-196,-221,-251,-286,-326,-370,-415,-455,-487,-515,-541,-564,-580,-596,-620,-648,-664,-667,
+-671,-691,-720,-747,-774,-807,-844,-875,-898,-920,-946,-971,-997,-1025,-1054,-1074,-1082,-1082,-1085,-1089,-1090,
+-1090,-1090,-1090,-1086,-1082,-1080,-1078,-1072,-1066,-1068,-1074,-1071,-1057,-1041,-1033,-1028,-1017,-1002,-992,-988,-983,
+-977,-973,-973,-971,-964,-956,-950,-945,-936,-925,-917,-910,-903,-891,-879,-868,-857,-844,-833,-824,-815,
+-805,-792,-780,-769,-759,-746,-732,-719,-707,-693,-675,-657,-642,-630,-618,-602,-585,-569,-556,-544,-532,
+-520,-508,-495,-481,-465,-448,-432,-419,-406,-392,-376,-361,-350,-340,-328,-316,-307,-302,-297,-289,-281,
+-274,-268,-261,-255,-251,-250,-250,-250,-251,-253,-253,-254,-256,-261,-264,-266,-269,-275,-280,-283,-285,
+-289,-295,-301,-306,-309,-311,-316,-323,-330,-336,-348,-374,-408,-431,-432,-420,-418,-433,-454,-464,-466,
+-470,-482,-493,-500,-500,-501,-505,-515,-530,-546,-559,-568,-576,-584,-590,-597,-604,-611,-614,-613,-611,
+-613,-616,-617,-616,-615,-615,-614,-613,-613,-615,-618,-619,-617,-614,-613,-613,-613,-610,-605,-596,-588,
+-582,-579,-575,-566,-554,-543,-534,-526,-516,-503,-492,-482,-470,-453,-433,-414,-395,-374,-354,-339,-331,
+-324,-313,-297,-278,-261,-246,-232,-217,-199,-177,-152,-125,-97,-72,-50,-26,3,40,82,126,170,
+216,265,318,372,423,470,518,573,635,697,758,824,902,989,1073,1151,1230,1312,1392,1456,1495,
+1515,1526,1537,1536,1498,1413,1301,1211,1182,1232,1364,1579,1858,2160,2446,2708,2954,3184,3395,3596,3795,
+3981,4124,4222,4304,4390,4462,4501,4512,4510,4493,4468,4478,4547,4609,4546,4327,4053,3842,3706,3571,3392,
+3188,2977,2743,2494,2280,2131,2008,1872,1769,1788,1940,2130,2256,2307,2330,2346,2341,2312,2289,2290,2297,
+2277,2221,2141,2041,1918,1782,1658,1556,1460,1352,1238,1135,1042,935,810,697,625,587,546,478,396,
+320,252,185,114,43,-25,-88,-136,-170,-203,-252,-313,-371,-415,-447,-469,-484,-504,-541,-589,-624,
+-642,-668,-728,-814,-893,-946,-986,-1037,-1107,-1183,-1247,-1280,-1284,-1279,-1285,-1308,-1335,-1360,-1392,-1439,-1487,
+-1513,-1506,-1469,-1415,-1356,-1303,-1255,-1210,-1174,-1165,-1188,-1217,-1222,-1199,-1168,-1140,-1102,-1045,-987,-949,-932,
+-924,-917,-908,-883,-839,-799,-797,-839,-903,-978,-1075,-1190,-1279,-1296,-1243,-1166,-1100,-1044,-988,-940,-911,
+-894,-873,-846,-827,-819,-812,-799,-783,-771,-765,-757,-745,-733,-720,-706,-694,-688,-689,-688,-682,-673,
+-670,-676,-686,-692,-697,-704,-714,-725,-734,-743,-755,-766,-773,-776,-776,-775,-767,-749,-724,-696,-667,
+-636,-603,-570,-537,-502,-462,-418,-373,-330,-290,-254,-224,-197,-168,-132,-94,-57,-24,11,51,94,
+135,174,217,264,311,355,396,435,471,501,531,563,596,622,642,664,692,720,743,765,797,
+834,862,871,874,890,920,949,967,983,1006,1033,1053,1066,1079,1091,1095,1091,1092,1105,1125,1142,
+1157,1178,1202,1218,1222,1225,1233,1239,1237,1241,1267,1308,1332,1322,1296,1285,1296,1311,1314,1309,1310,
+1318,1326,1330,1338,1352,1367,1380,1390,1400,1410,1421,1429,1434,1435,1434,1451,1448,1449,1453,1456,1459,
+1465,1471,1475,1476,1478,1482,1486,1486,1486,1488,1491,1491,1489,1488,1493,1505,1518,1530,1539,1545,1550,
+1554,1557,1559,1562,1568,1576,1585,1595,1609,1627,1650,1678,1709,1742,1787,1862,1973,2094,2182,2215,2215,
+2220,2246,2282,2316,2347,2374,2389,2383,2361,2333,2296,2244,2183,2130,2094,2069,2043,2009,1970,1930,1893,
+1861,1832,1803,1771,1735,1698,1661,1624,1586,1549,1514,1482,1449,1401,1331,1250,1178,1132,1109,1095,1076,
+1046,1006,961,924,894,866,834,803,775,743,696,645,616,622,646,669,686,689,651,541,366,
+176,19,-92,-156,-162,-106,-19,42,46,9,-31,-62,-97,-151,-217,-284,-352,-436,-549,-685,-825,
+-950,-1045,-1101,-1114,-1090,-1053,-1033,-1046,-1087,-1135,-1164,-1160,-1129,-1103,-1112,-1161,-1225,-1278,-1311,-1331,-1348,
+-1358,-1354,-1330,-1296,-1278,-1306,-1382,-1480,-1580,-1687,-1814,-1937,-1994,-1949,-1835,-1732,-1698,-1720,-1740,-1712,-1641,
+-1569,-1528,-1509,-1481,-1431,-1379,-1355,-1365,-1390,-1415,-1444,-1470,-1462,-1396,-1280,-1155,-1052,-973,-897,-824,-780,
+-804,-909,-1057,-1186,-1257,-1298,-1370,-1495,-1631,-1720,-1748,-1755,-1772,-1794,-1800,-1791,-1790,-1803,-1816,-1823,-1833,
+-1844,-1842,-1820,-1792,-1779,-1780,-1785,-1791,-1806,-1829,-1849,-1873,-1914,-1968,-2005,-2005,-1992,-1988,-1972,-1897,-1765,
+-1642,-1598,-1641,-1735,-1848,-1961,-2051,-2097,-2110,-2122,-2144,-2163,-2174,-2195,-2239,-2287,-2313,-2322,-2339,-2374,-2414,
+-2440,-2456,-2467,-2477,-2487,-2504,-2531,-2563,-2594,-2630,-2677,-2731,-2783,-2830,-2876,-2925,-2978,-3042,-3118,-3201,-3277,
+-3345,-3407,-3467,-3522,-3576,-3635,-3701,-3769,-3836,-3899,-3959,-4017,-4070,-4121,-4172,-4222,-4270,-4320,-4370,-4418,-4463,
+-4506,-4548,-4584,-4609,-4625,-4638,-4652,-4670,-4694,-4726,-4761,-4793,-4825,-4861,-4903,-4943,-4979,-5015,-5053,-5090,-5124,
+-5157,-5190,-5220,-5249,-5288,-5344,-5412,-5474,-5519,-5548,-5567,-5586,-5609,-5634,-5655,-5673,-5697,-5728,-5750,-5744,-5717,
+-5691,-5680,-5674,-5660,-5632,-5588,-5520,-5430,-5332,-5243,-5176,-5160,-5235,-5393,-5548,-5603,-5555,-5487,-5472,-5491,-5490,
+-5465,-5449,-5446,-5419,-5355,-5290,-5256,-5241,-5220,-5202,-5199,-5185,-5114,-4999,-4919,-4935,-5028,-5118,-5145,-5096,-4993,
+-4874,-4782,-4747,-4749,-4742,-4697,-4631,-4578,-4540,-4495,-4439,-4398,-4384,-4369,-4316,-4233,-4167,-4151,-4166,-4169,-4140,
+-4093,-4041,-3986,-3928,-3874,-3824,-3770,-3705,-3637,-3573,-3510,-3441,-3374,-3319,-3278,-3234,-3180,-3122,-3067,-3012,-2950,
+-2881,-2807,-2730,-2650,-2570,-2498,-2432,-2366,-2299,-2234,-2176,-2122,-2067,-2010,-1952,-1892,-1828,-1754,-1668,-1578,-1497,
+-1434,-1378,-1308,-1209,-1085,-960,-865,-826,-836,-847,-800,-685,-558,-490,-501,-546,-569,-547,-492,-426,-373,
+-346,-333,-293,-186,-9,200,400,577,742,903,1056,1189,1298,1392,1485,1585,1691,1793,1883,1960,2029,
+2092,2156,2229,2312,2395,2460,2497,2509,2513,2531,2577,2655,2754,2853,2935,3000,3059,3118,3172,3216,3257,
+3297,3324,3314,3262,3194,3149,3144,3174,3225,3292,3367,3434,3475,3493,3507,3537,3587,3649,3714,3771,3817,
+3847,3863,3870,3881,3913,3977,4064,4154,4233,4303,4369,4432,4487,4531,4562,4580,4591,4612,4654,4709,4762,
+4813,4871,4941,5008,5061,5102,5136,5161,5177,5190,5212,5240,5268,5295,5331,5383,5449,5524,5604,5679,5734,
+5770,5803,5853,5916,5980,6035,6088,6143,6194,6230,6239,6217,6163,6087,6012,5962,5955,5991,6052,6107,6137,
+6146,6155,6182,6222,6263,6294,6311,6316,6310,6302,6302,6311,6319,6315,6290,6246,6194,6152,6129,6122,6124,
+6129,6134,6128,6110,6099,6115,6149,6167,6152,6122,6103,6098,6093,6089,6097,6112,6112,6085,6043,6011,5998,
+6003,6016,6022,6006,5970,5941,5937,5942,5922,5882,5868,5918,6009,6073,6059,5981,5901,5875,5902,5938,5952,
+5953,5967,5992,5996,5971,5943,5941,5953,5951,5925,5891,5872,5895,5998,6195,6433,6607,6659,6631,6607,6619,
+6639,6641,6634,6634,6628,6605,6572,6545,6521,6488,6450,6419,6391,6354,6311,6277,6253,6222,6173,6123,6087,
+6056,6015,5971,5941,5922,5885,5816,5745,5708,5704,5694,5650,5584,5529,5506,5504,5499,5478,5441,5390,5319,
+5228,5133,5065,5035,5022,4992,4933,4867,4822,4801,4786,4760,4728,4704,4691,4676,4656,4640,4631,4618,4585,
+4542,4514,4500,4472,4398,4252,3995,3580,3036,2523,2246,2272,2475,2671,2783,2848,2899,2906,2837,2724,2619,
+2534,2448,2355,2272,2200,2114,2005,1899,1820,1768,1725,1684,1647,1609,1560,1508,1466,1433,1394,1344,1292,
+1249,1217,1191,1173,1164,1162,1161,1155,1142,1120,1092,1059,1027,1001,982,969,952,925,890,860,839,
+823,806,784,758,728,702,688,684,681,673,662,649,631,607,596,607,623,618,596,583,588,
+582,546,499,473,478,503,557,648,749,793,736,602,451,334,265,236,222,193,138,76,37,
+16,-17,-81,-157,-221,-266,-295,-302,-277,-231,-190,-176,-186,-206,-222,-228,-230,-237,-257,-288,-325,
+-365,-408,-455,-499,-537,-566,-589,-610,-636,-667,-692,-700,-696,-700,-717,-738,-753,-769,-797,-836,-870,
+-897,-921,-948,-972,-995,-1023,-1054,-1077,-1086,-1089,-1093,-1099,-1102,-1100,-1099,-1098,-1095,-1091,-1089,-1086,-1081,
+-1078,-1083,-1090,-1087,-1073,-1059,-1053,-1049,-1037,-1023,-1014,-1010,-1005,-994,-986,-983,-981,-974,-966,-960,-954,
+-944,-932,-922,-913,-903,-892,-882,-873,-863,-849,-834,-822,-811,-797,-783,-772,-763,-753,-740,-726,-713,
+-702,-689,-672,-654,-638,-626,-614,-599,-581,-564,-550,-537,-525,-512,-499,-487,-473,-456,-438,-423,-410,
+-397,-383,-367,-354,-343,-331,-317,-305,-295,-289,-282,-276,-269,-261,-254,-247,-243,-242,-240,-239,-239,
+-241,-241,-240,-242,-247,-252,-254,-253,-255,-260,-265,-269,-272,-275,-279,-284,-291,-297,-305,-314,-323,
+-331,-339,-356,-383,-407,-405,-377,-348,-349,-384,-426,-452,-459,-461,-466,-474,-480,-486,-493,-502,-517,
+-534,-551,-562,-568,-574,-581,-587,-592,-598,-604,-607,-607,-606,-608,-610,-609,-606,-604,-605,-605,-600,
+-595,-595,-599,-603,-601,-596,-592,-591,-591,-588,-582,-575,-567,-560,-554,-550,-544,-534,-521,-510,-500,
+-492,-483,-473,-462,-448,-430,-411,-392,-374,-354,-335,-319,-308,-300,-290,-277,-261,-244,-227,-211,-194,
+-175,-154,-131,-108,-84,-58,-30,0,32,69,109,150,193,235,281,332,385,438,486,532,586,
+651,719,781,841,911,994,1082,1165,1238,1307,1375,1441,1497,1531,1545,1551,1557,1552,1515,1441,1349,
+1263,1203,1192,1254,1403,1621,1873,2135,2402,2671,2937,3201,3460,3696,3882,4021,4144,4269,4382,4456,4492,
+4502,4488,4463,4464,4512,4560,4523,4382,4217,4102,4021,3912,3759,3589,3392,3121,2783,2470,2265,2140,2022,
+1912,1887,1981,2129,2234,2274,2290,2305,2305,2282,2258,2252,2254,2241,2212,2169,2101,1995,1860,1729,1618,
+1511,1388,1261,1154,1070,981,876,773,697,645,593,524,446,366,286,206,130,63,3,-52,-101,
+-144,-189,-242,-300,-352,-392,-421,-443,-467,-509,-570,-623,-641,-638,-664,-747,-863,-963,-1024,-1062,-1103,
+-1152,-1202,-1240,-1259,-1261,-1260,-1271,-1297,-1333,-1373,-1417,-1459,-1487,-1497,-1492,-1472,-1433,-1374,-1307,-1244,-1192,
+-1162,-1170,-1212,-1250,-1250,-1214,-1177,-1155,-1128,-1074,-1002,-944,-916,-914,-923,-918,-882,-832,-821,-892,-1018,
+-1120,-1149,-1133,-1127,-1140,-1143,-1119,-1082,-1049,-1017,-979,-942,-915,-898,-878,-856,-838,-826,-811,-792,-775,
+-764,-755,-742,-727,-717,-711,-701,-688,-678,-673,-670,-666,-662,-663,-670,-679,-688,-696,-705,-714,-722,
+-731,-744,-759,-768,-770,-770,-772,-773,-767,-751,-729,-707,-683,-655,-623,-587,-548,-505,-460,-415,-370,
+-323,-277,-238,-207,-181,-152,-119,-84,-52,-20,15,56,101,146,187,230,276,322,365,403,438,
+470,499,530,564,598,623,640,659,691,729,763,790,819,852,877,886,888,903,934,965,985,
+1001,1021,1042,1057,1066,1078,1092,1098,1094,1092,1103,1126,1147,1162,1180,1202,1223,1234,1239,1245,1252,
+1256,1259,1267,1281,1291,1291,1288,1293,1302,1308,1306,1305,1308,1315,1320,1327,1341,1360,1377,1391,1403,
+1415,1427,1435,1442,1449,1452,1451,1471,1469,1471,1477,1484,1489,1493,1497,1499,1499,1499,1503,1507,1508,
+1507,1508,1509,1508,1505,1507,1516,1531,1546,1560,1573,1584,1590,1589,1588,1590,1596,1603,1609,1616,1628,
+1645,1664,1687,1713,1738,1764,1806,1885,2005,2128,2201,2207,2184,2184,2220,2268,2306,2338,2368,2388,2382,
+2355,2326,2301,2271,2228,2179,2138,2103,2068,2029,1987,1947,1909,1874,1842,1813,1783,1750,1714,1681,1650,
+1621,1592,1561,1529,1491,1436,1361,1273,1196,1148,1125,1113,1096,1070,1035,998,965,935,906,874,840,
+806,764,710,660,639,659,702,742,762,748,672,518,315,125,-4,-73,-104,-100,-52,23,85,
+108,104,103,109,99,52,-26,-118,-218,-329,-461,-608,-756,-890,-996,-1064,-1087,-1070,-1034,-1011,-1025,
+-1077,-1140,-1178,-1174,-1145,-1125,-1133,-1156,-1174,-1184,-1203,-1241,-1287,-1319,-1324,-1304,-1277,-1271,-1312,-1395,-1488,
+-1564,-1635,-1731,-1845,-1918,-1894,-1783,-1663,-1607,-1614,-1626,-1589,-1512,-1446,-1424,-1422,-1395,-1328,-1254,-1214,-1218,
+-1245,-1277,-1312,-1339,-1328,-1252,-1127,-1003,-921,-878,-842,-797,-772,-809,-914,-1045,-1150,-1215,-1277,-1375,-1507,
+-1629,-1701,-1726,-1733,-1741,-1747,-1745,-1739,-1742,-1751,-1759,-1764,-1774,-1782,-1777,-1757,-1739,-1736,-1742,-1742,-1739,
+-1750,-1774,-1802,-1832,-1876,-1928,-1958,-1951,-1928,-1913,-1885,-1807,-1687,-1593,-1585,-1652,-1743,-1829,-1907,-1971,-2004,
+-2009,-2017,-2043,-2075,-2097,-2119,-2157,-2202,-2233,-2250,-2271,-2306,-2341,-2363,-2373,-2380,-2389,-2400,-2416,-2443,-2475,
+-2508,-2544,-2587,-2637,-2685,-2727,-2769,-2817,-2877,-2951,-3031,-3110,-3180,-3243,-3304,-3363,-3418,-3471,-3528,-3591,-3658,
+-3724,-3787,-3847,-3903,-3958,-4011,-4063,-4115,-4165,-4218,-4270,-4318,-4362,-4405,-4445,-4474,-4489,-4498,-4515,-4542,-4574,
+-4606,-4637,-4668,-4698,-4731,-4774,-4823,-4868,-4902,-4930,-4959,-4993,-5031,-5071,-5109,-5143,-5175,-5215,-5270,-5332,-5386,
+-5424,-5448,-5468,-5492,-5520,-5549,-5574,-5599,-5628,-5659,-5674,-5662,-5630,-5604,-5593,-5587,-5575,-5551,-5509,-5442,-5350,
+-5250,-5161,-5099,-5091,-5173,-5333,-5488,-5548,-5510,-5456,-5445,-5457,-5445,-5413,-5400,-5404,-5386,-5331,-5274,-5248,-5240,
+-5225,-5206,-5188,-5145,-5049,-4933,-4882,-4939,-5052,-5133,-5137,-5077,-4985,-4888,-4813,-4781,-4781,-4768,-4717,-4648,-4595,
+-4560,-4520,-4469,-4430,-4418,-4407,-4361,-4282,-4213,-4185,-4191,-4197,-4182,-4148,-4100,-4041,-3980,-3924,-3871,-3813,-3745,
+-3677,-3613,-3551,-3484,-3418,-3363,-3319,-3273,-3218,-3161,-3108,-3056,-2996,-2928,-2856,-2783,-2712,-2641,-2572,-2504,-2437,
+-2372,-2310,-2249,-2189,-2130,-2071,-2009,-1941,-1871,-1800,-1726,-1646,-1565,-1493,-1433,-1370,-1282,-1162,-1031,-923,-870,
+-867,-868,-822,-722,-618,-570,-588,-627,-638,-603,-534,-454,-387,-352,-344,-320,-227,-49,173,385,562,
+718,871,1018,1137,1224,1298,1380,1476,1576,1674,1770,1860,1935,1993,2045,2110,2193,2278,2349,2399,2429,
+2448,2469,2509,2578,2664,2747,2814,2875,2944,3019,3087,3144,3201,3261,3300,3287,3219,3135,3084,3088,3134,
+3200,3271,3340,3396,3427,3440,3452,3480,3527,3586,3647,3702,3749,3782,3797,3798,3802,3836,3913,4014,4111,
+4191,4258,4321,4377,4423,4462,4492,4510,4520,4540,4584,4644,4702,4753,4810,4882,4955,5019,5069,5110,5137,
+5150,5162,5183,5210,5231,5250,5281,5330,5392,5460,5537,5617,5682,5724,5755,5796,5853,5917,5980,6046,6111,
+6163,6192,6197,6183,6146,6082,6002,5933,5906,5931,5990,6047,6077,6084,6091,6114,6153,6200,6244,6275,6284,
+6271,6256,6257,6277,6302,6312,6295,6253,6201,6157,6131,6120,6119,6122,6125,6116,6098,6092,6120,6169,6200,
+6188,6147,6105,6069,6040,6027,6038,6055,6048,6014,5979,5961,5956,5954,5958,5969,5968,5941,5901,5874,5861,
+5844,5830,5851,5922,6000,6023,5974,5903,5871,5898,5952,5984,5982,5971,5981,6006,6019,6009,5995,5999,6013,
+6007,5965,5887,5787,5711,5734,5911,6199,6470,6620,6652,6643,6644,6650,6646,6640,6641,6637,6615,6587,6565,
+6544,6510,6473,6446,6422,6385,6338,6300,6277,6246,6195,6142,6109,6088,6056,6012,5974,5942,5892,5819,5758,
+5746,5768,5769,5712,5615,5531,5491,5484,5470,5424,5351,5272,5203,5143,5093,5060,5048,5043,5022,4971,4906,
+4853,4824,4810,4795,4775,4756,4741,4725,4706,4687,4671,4655,4634,4611,4590,4566,4527,4461,4335,4081,3639,
+3062,2545,2297,2359,2573,2743,2811,2836,2866,2876,2829,2742,2654,2573,2484,2386,2299,2220,2127,2017,1912,
+1837,1784,1738,1694,1654,1615,1569,1524,1487,1455,1411,1351,1290,1241,1208,1185,1171,1167,1167,1165,1158,
+1148,1132,1104,1066,1026,995,979,972,961,935,895,856,826,805,788,769,748,722,695,675,668,
+668,667,661,646,621,592,575,575,574,556,531,524,539,542,512,467,439,436,446,475,536,
+615,662,636,547,436,348,303,302,316,302,235,139,60,17,-11,-56,-120,-188,-246,-287,-306,
+-298,-270,-242,-233,-249,-282,-314,-330,-327,-321,-327,-344,-366,-389,-423,-469,-518,-559,-591,-616,-640,
+-670,-700,-723,-729,-727,-731,-746,-759,-765,-772,-793,-826,-859,-887,-916,-946,-971,-992,-1015,-1042,-1064,
+-1077,-1084,-1094,-1104,-1108,-1106,-1104,-1103,-1101,-1099,-1097,-1095,-1092,-1091,-1096,-1102,-1099,-1086,-1075,-1071,-1068,
+-1058,-1045,-1038,-1035,-1028,-1016,-1005,-1000,-997,-991,-982,-974,-966,-956,-943,-931,-919,-906,-896,-889,-882,
+-870,-853,-837,-822,-807,-792,-778,-768,-759,-748,-733,-718,-706,-695,-681,-666,-649,-634,-621,-610,-597,
+-580,-562,-547,-534,-520,-506,-492,-480,-466,-449,-431,-415,-401,-389,-375,-362,-351,-338,-324,-311,-299,
+-288,-278,-268,-262,-257,-249,-241,-234,-231,-230,-228,-226,-226,-227,-226,-225,-228,-234,-240,-241,-240,
+-243,-248,-253,-258,-262,-265,-267,-269,-275,-285,-298,-310,-320,-326,-331,-344,-364,-380,-372,-345,-325,
+-336,-376,-417,-438,-442,-443,-447,-454,-462,-474,-488,-502,-517,-534,-549,-556,-558,-561,-568,-575,-581,
+-585,-591,-595,-598,-598,-599,-599,-596,-591,-590,-593,-595,-591,-583,-578,-580,-582,-580,-574,-569,-566,
+-565,-561,-557,-553,-549,-543,-535,-529,-525,-518,-505,-488,-475,-466,-459,-450,-438,-422,-404,-385,-368,
+-352,-336,-321,-307,-294,-281,-268,-254,-240,-225,-208,-190,-171,-150,-128,-108,-91,-71,-45,-12,24,
+61,97,135,175,217,259,301,346,396,450,501,548,599,661,732,801,865,931,1008,1093,1176,
+1247,1302,1352,1407,1469,1523,1553,1563,1569,1577,1577,1550,1492,1412,1318,1228,1173,1183,1271,1428,1642,
+1898,2178,2464,2752,3043,3327,3575,3772,3935,4088,4234,4359,4450,4499,4500,4470,4455,4483,4521,4507,4438,
+4373,4354,4340,4272,4153,4025,3869,3612,3247,2882,2631,2488,2363,2218,2114,2108,2170,2227,2250,2260,2271,
+2271,2252,2227,2210,2195,2177,2164,2155,2121,2036,1909,1784,1678,1571,1439,1298,1184,1107,1041,962,873,
+788,712,638,561,481,397,307,217,141,82,31,-20,-73,-128,-185,-241,-290,-331,-366,-394,-418,
+-448,-503,-577,-636,-651,-645,-677,-776,-911,-1028,-1101,-1145,-1178,-1207,-1230,-1244,-1249,-1246,-1245,-1256,-1285,
+-1331,-1385,-1434,-1462,-1466,-1460,-1460,-1458,-1433,-1374,-1301,-1236,-1191,-1171,-1184,-1222,-1250,-1232,-1181,-1139,-1128,
+-1124,-1089,-1022,-952,-909,-905,-926,-933,-896,-836,-827,-926,-1089,-1205,-1201,-1113,-1030,-1002,-1010,-1018,-1016,
+-1006,-990,-965,-938,-916,-898,-880,-863,-849,-836,-816,-793,-775,-762,-748,-729,-710,-702,-700,-694,-681,
+-667,-657,-652,-648,-647,-651,-659,-668,-680,-693,-704,-711,-716,-723,-738,-752,-758,-755,-751,-754,-759,
+-756,-745,-729,-712,-691,-665,-634,-600,-559,-512,-465,-419,-373,-323,-274,-234,-203,-177,-147,-115,-84,
+-55,-24,11,54,101,149,195,239,284,329,370,407,440,471,501,534,569,601,625,640,659,
+694,741,784,815,841,870,895,907,911,924,949,978,999,1013,1028,1043,1053,1059,1068,1084,1096,
+1099,1101,1114,1138,1161,1177,1190,1207,1228,1244,1254,1261,1268,1273,1275,1274,1276,1281,1289,1298,1304,
+1305,1301,1298,1301,1309,1316,1322,1333,1352,1374,1392,1404,1417,1432,1444,1450,1456,1463,1470,1471,1491,
+1489,1490,1497,1506,1512,1516,1518,1519,1519,1520,1524,1528,1528,1525,1522,1522,1521,1521,1527,1541,1558,
+1574,1589,1605,1620,1626,1625,1623,1627,1634,1639,1641,1648,1662,1681,1698,1714,1732,1753,1776,1814,1891,
+2012,2136,2204,2198,2162,2158,2202,2261,2307,2343,2380,2409,2409,2382,2351,2332,2314,2283,2238,2189,2142,
+2097,2051,2009,1971,1933,1893,1856,1824,1797,1770,1742,1713,1684,1655,1627,1598,1567,1528,1470,1393,1305,
+1228,1177,1152,1136,1116,1089,1058,1028,1000,972,938,898,854,812,772,732,699,688,709,750,786,
+790,741,623,448,257,109,29,0,-13,-18,0,46,101,141,165,183,195,189,151,82,-8,
+-116,-239,-375,-522,-676,-825,-950,-1030,-1061,-1053,-1029,-1015,-1028,-1072,-1124,-1154,-1152,-1137,-1136,-1147,-1143,
+-1110,-1073,-1072,-1124,-1203,-1269,-1300,-1299,-1286,-1289,-1327,-1397,-1472,-1528,-1575,-1648,-1750,-1830,-1822,-1723,-1600,
+-1533,-1534,-1543,-1501,-1416,-1344,-1322,-1328,-1308,-1243,-1167,-1121,-1117,-1137,-1163,-1190,-1206,-1181,-1093,-963,-848,
+-791,-783,-779,-758,-750,-793,-893,-1008,-1101,-1176,-1267,-1391,-1522,-1621,-1671,-1689,-1698,-1706,-1708,-1703,-1697,
+-1695,-1697,-1699,-1704,-1714,-1720,-1712,-1697,-1689,-1696,-1705,-1702,-1695,-1705,-1734,-1769,-1802,-1840,-1883,-1912,-1916,
+-1906,-1891,-1844,-1735,-1591,-1498,-1519,-1624,-1734,-1804,-1843,-1870,-1888,-1897,-1914,-1948,-1986,-2013,-2034,-2065,-2105,
+-2137,-2158,-2180,-2212,-2242,-2259,-2268,-2281,-2299,-2317,-2335,-2360,-2390,-2421,-2454,-2493,-2539,-2584,-2624,-2664,-2714,
+-2781,-2858,-2937,-3010,-3077,-3141,-3204,-3264,-3320,-3372,-3426,-3485,-3548,-3610,-3669,-3727,-3785,-3844,-3903,-3959,-4012,
+-4064,-4116,-4168,-4215,-4258,-4300,-4336,-4359,-4368,-4378,-4403,-4442,-4484,-4519,-4548,-4575,-4603,-4638,-4686,-4741,-4788,
+-4819,-4839,-4861,-4894,-4937,-4984,-5029,-5067,-5101,-5140,-5190,-5244,-5291,-5323,-5347,-5371,-5399,-5431,-5464,-5494,-5524,
+-5554,-5579,-5582,-5558,-5522,-5500,-5499,-5504,-5501,-5483,-5444,-5375,-5278,-5173,-5083,-5027,-5033,-5126,-5288,-5439,-5498,
+-5469,-5426,-5419,-5421,-5395,-5357,-5349,-5366,-5362,-5315,-5263,-5240,-5236,-5223,-5193,-5151,-5081,-4979,-4892,-4888,-4978,
+-5091,-5144,-5120,-5055,-4980,-4906,-4844,-4813,-4804,-4781,-4724,-4655,-4607,-4581,-4550,-4505,-4465,-4448,-4434,-4392,-4321,
+-4254,-4218,-4212,-4213,-4206,-4184,-4144,-4088,-4024,-3963,-3906,-3847,-3780,-3713,-3650,-3588,-3522,-3459,-3404,-3358,-3310,
+-3257,-3202,-3150,-3096,-3034,-2964,-2892,-2824,-2760,-2699,-2635,-2567,-2500,-2437,-2376,-2314,-2251,-2190,-2130,-2065,-1991,
+-1915,-1848,-1787,-1719,-1640,-1563,-1500,-1440,-1360,-1243,-1106,-989,-925,-912,-913,-887,-825,-763,-735,-743,-751,
+-730,-675,-599,-515,-438,-386,-362,-334,-250,-83,138,355,535,685,827,957,1055,1123,1185,1265,1358,
+1451,1540,1633,1728,1808,1866,1914,1976,2056,2139,2214,2280,2337,2381,2414,2450,2502,2565,2625,2679,2741,
+2822,2909,2989,3062,3141,3221,3264,3238,3150,3055,3009,3031,3100,3180,3253,3313,3356,3381,3391,3400,3421,
+3461,3513,3570,3623,3671,3709,3728,3728,3730,3767,3850,3958,4058,4137,4205,4268,4319,4355,4386,4417,4444,
+4461,4482,4522,4578,4635,4687,4746,4817,4892,4960,5022,5073,5105,5116,5121,5138,5162,5183,5200,5229,5276,
+5332,5392,5460,5535,5604,5653,5692,5740,5802,5868,5935,6008,6082,6136,6157,6150,6134,6109,6064,5992,5914,
+5868,5876,5927,5986,6026,6041,6048,6064,6098,6148,6203,6245,6258,6245,6228,6229,6249,6273,6284,6273,6239,
+6190,6143,6111,6095,6094,6100,6102,6090,6068,6062,6096,6152,6187,6176,6134,6088,6048,6016,6003,6008,6007,
+5978,5934,5915,5929,5940,5923,5897,5895,5910,5908,5878,5838,5803,5775,5769,5811,5897,5969,5970,5908,5848,
+5845,5895,5952,5982,5984,5981,5991,6009,6022,6024,6026,6034,6038,6024,5977,5879,5730,5578,5535,5692,6021,
+6372,6597,6669,6666,6658,6658,6654,6649,6648,6641,6620,6597,6582,6565,6531,6488,6456,6433,6401,6359,6325,
+6304,6273,6219,6161,6127,6110,6084,6040,5992,5945,5891,5828,5788,5794,5823,5821,5754,5643,5543,5488,5466,
+5437,5369,5269,5166,5093,5057,5047,5050,5058,5057,5034,4986,4925,4875,4847,4835,4827,4814,4796,4780,4768,
+4757,4739,4716,4693,4682,4682,4675,4645,4595,4531,4413,4148,3671,3063,2552,2348,2457,2686,2838,2864,2842,
+2835,2831,2798,2738,2674,2602,2512,2410,2318,2236,2144,2039,1939,1862,1803,1751,1704,1664,1626,1583,1541,
+1506,1469,1417,1351,1287,1239,1209,1195,1194,1198,1195,1182,1168,1158,1147,1121,1078,1031,998,983,978,
+966,937,894,850,815,789,769,752,736,717,693,671,659,657,656,650,633,605,570,543,528,
+516,494,471,464,471,469,441,406,386,383,384,390,413,452,483,481,445,393,352,350,394,
+454,467,391,251,118,40,5,-26,-76,-134,-184,-220,-245,-264,-274,-276,-279,-298,-339,-388,-420,
+-425,-419,-416,-420,-426,-438,-463,-500,-540,-575,-608,-641,-673,-699,-724,-745,-759,-766,-772,-780,-784,
+-784,-787,-802,-827,-853,-879,-908,-940,-966,-986,-1005,-1027,-1047,-1062,-1074,-1089,-1102,-1107,-1106,-1104,-1106,
+-1108,-1108,-1108,-1107,-1103,-1102,-1105,-1109,-1105,-1095,-1086,-1085,-1083,-1075,-1064,-1058,-1054,-1047,-1036,-1027,-1022,
+-1019,-1013,-1003,-992,-980,-969,-958,-946,-932,-918,-908,-902,-894,-879,-861,-843,-828,-812,-796,-783,-773,
+-762,-746,-729,-714,-701,-688,-675,-661,-646,-629,-614,-603,-592,-577,-560,-543,-528,-514,-498,-484,-471,
+-458,-442,-423,-407,-393,-381,-368,-357,-346,-332,-317,-305,-295,-285,-271,-259,-252,-248,-241,-231,-224,
+-221,-219,-216,-214,-215,-216,-214,-213,-216,-223,-227,-229,-231,-236,-242,-246,-250,-255,-259,-260,-261,
+-266,-278,-292,-305,-314,-317,-316,-319,-331,-344,-349,-347,-350,-369,-395,-412,-417,-417,-421,-429,-438,
+-449,-466,-483,-497,-510,-523,-535,-540,-540,-541,-548,-558,-567,-574,-579,-583,-586,-588,-587,-585,-579,
+-574,-573,-578,-583,-583,-576,-568,-563,-561,-558,-553,-547,-544,-540,-535,-531,-530,-529,-524,-515,-507,
+-504,-499,-487,-468,-451,-441,-434,-425,-411,-396,-381,-365,-348,-331,-316,-304,-293,-280,-264,-247,-231,
+-217,-201,-185,-167,-148,-126,-104,-85,-68,-49,-22,12,50,88,123,158,196,239,283,325,366,
+410,462,516,567,616,673,742,815,887,957,1028,1105,1181,1249,1300,1339,1380,1434,1493,1539,1562,
+1576,1592,1607,1609,1589,1547,1481,1387,1277,1183,1139,1177,1309,1527,1793,2068,2341,2629,2935,3231,3476,
+3664,3825,3994,4177,4349,4467,4501,4472,4442,4456,4495,4508,4488,4485,4524,4557,4522,4429,4329,4218,4024,
+3723,3395,3144,2974,2807,2602,2411,2298,2260,2249,2238,2232,2237,2239,2231,2220,2207,2182,2151,2134,2135,
+2117,2045,1929,1813,1718,1618,1488,1346,1230,1158,1106,1047,970,879,783,688,601,518,430,333,239,
+163,107,58,4,-57,-126,-192,-247,-285,-315,-349,-387,-420,-454,-507,-578,-639,-664,-672,-713,-810,
+-939,-1056,-1140,-1196,-1235,-1259,-1271,-1275,-1269,-1253,-1237,-1239,-1266,-1316,-1371,-1412,-1425,-1414,-1404,-1411,-1418,
+-1395,-1336,-1268,-1217,-1187,-1172,-1176,-1193,-1199,-1166,-1107,-1068,-1072,-1092,-1086,-1038,-969,-915,-901,-922,-938,
+-907,-838,-804,-866,-994,-1084,-1069,-986,-923,-926,-964,-987,-976,-944,-912,-894,-890,-893,-890,-878,-863,
+-849,-833,-810,-784,-764,-750,-733,-712,-695,-688,-686,-679,-667,-653,-641,-633,-629,-629,-635,-644,-655,
+-667,-682,-696,-704,-708,-715,-729,-743,-746,-741,-737,-740,-746,-746,-739,-728,-714,-693,-667,-639,-610,
+-573,-528,-479,-432,-383,-330,-280,-240,-211,-184,-154,-123,-95,-68,-36,2,46,95,146,196,243,
+288,331,372,408,441,473,505,538,571,602,627,644,665,700,747,791,823,846,871,895,912,
+921,932,952,977,997,1010,1023,1037,1046,1053,1063,1080,1098,1111,1121,1136,1159,1182,1200,1212,1225,
+1242,1257,1267,1272,1275,1276,1277,1276,1276,1281,1289,1297,1300,1297,1291,1291,1298,1308,1317,1326,1341,
+1364,1388,1405,1417,1433,1451,1465,1471,1474,1481,1489,1491,1509,1507,1506,1511,1519,1526,1530,1533,1535,
+1536,1539,1544,1547,1545,1538,1534,1533,1536,1541,1551,1567,1586,1604,1621,1639,1655,1664,1667,1668,1672,
+1676,1675,1674,1679,1693,1710,1721,1730,1745,1768,1792,1825,1889,1996,2114,2187,2187,2158,2160,2215,2286,
+2340,2377,2416,2452,2462,2442,2412,2391,2371,2335,2282,2223,2166,2112,2064,2023,1989,1956,1918,1881,1849,
+1826,1806,1786,1762,1731,1696,1663,1635,1607,1567,1508,1430,1344,1268,1215,1186,1166,1142,1112,1082,1056,
+1033,1005,966,914,856,808,780,767,760,754,756,767,771,742,661,528,373,237,149,111,96,
+77,54,49,76,126,177,214,235,243,239,222,181,110,6,-118,-252,-397,-561,-733,-882,-974,
+-1005,-1002,-994,-999,-1021,-1056,-1090,-1108,-1108,-1106,-1117,-1126,-1103,-1038,-971,-955,-1012,-1115,-1213,-1277,-1304,
+-1309,-1315,-1344,-1397,-1455,-1498,-1532,-1582,-1660,-1729,-1731,-1650,-1539,-1472,-1472,-1486,-1448,-1356,-1267,-1229,-1229,
+-1218,-1170,-1107,-1061,-1044,-1043,-1050,-1059,-1058,-1015,-918,-793,-699,-669,-685,-701,-696,-695,-740,-834,-947,
+-1052,-1156,-1280,-1418,-1535,-1604,-1629,-1639,-1651,-1665,-1671,-1665,-1656,-1650,-1648,-1651,-1659,-1667,-1669,-1660,-1647,
+-1645,-1655,-1664,-1660,-1655,-1667,-1700,-1738,-1767,-1794,-1827,-1857,-1878,-1893,-1896,-1852,-1726,-1557,-1443,-1461,-1580,
+-1705,-1768,-1779,-1776,-1780,-1796,-1823,-1861,-1899,-1926,-1947,-1975,-2007,-2034,-2052,-2074,-2103,-2128,-2142,-2154,-2175,
+-2202,-2228,-2248,-2270,-2296,-2325,-2357,-2396,-2440,-2483,-2522,-2563,-2618,-2688,-2764,-2837,-2906,-2973,-3040,-3106,-3167,
+-3220,-3271,-3324,-3381,-3439,-3496,-3552,-3610,-3670,-3732,-3794,-3853,-3908,-3962,-4016,-4068,-4114,-4154,-4191,-4222,-4241,
+-4252,-4269,-4303,-4349,-4393,-4429,-4457,-4482,-4509,-4545,-4595,-4653,-4700,-4729,-4745,-4767,-4803,-4850,-4901,-4949,-4989,
+-5024,-5062,-5107,-5155,-5196,-5228,-5255,-5283,-5315,-5349,-5384,-5417,-5449,-5476,-5489,-5476,-5441,-5407,-5399,-5417,-5441,
+-5448,-5433,-5391,-5318,-5215,-5103,-5007,-4955,-4975,-5082,-5248,-5393,-5448,-5424,-5390,-5381,-5373,-5337,-5299,-5302,-5335,
+-5344,-5304,-5252,-5229,-5226,-5209,-5162,-5094,-5013,-4935,-4900,-4943,-5045,-5130,-5143,-5095,-5031,-4975,-4920,-4869,-4836,
+-4818,-4786,-4726,-4661,-4623,-4606,-4582,-4539,-4496,-4471,-4452,-4413,-4352,-4291,-4250,-4232,-4224,-4219,-4207,-4179,-4130,
+-4068,-4003,-3941,-3881,-3817,-3752,-3687,-3622,-3557,-3496,-3441,-3392,-3344,-3294,-3243,-3191,-3135,-3071,-3002,-2933,-2866,
+-2803,-2744,-2683,-2620,-2556,-2496,-2437,-2375,-2310,-2247,-2185,-2119,-2043,-1967,-1902,-1848,-1787,-1713,-1637,-1576,-1522,
+-1447,-1334,-1198,-1081,-1012,-991,-986,-969,-935,-898,-874,-857,-829,-779,-713,-642,-570,-499,-438,-392,-342,
+-248,-86,125,335,509,649,773,882,960,1014,1071,1151,1246,1334,1413,1495,1584,1664,1725,1782,1853,
+1936,2016,2089,2162,2235,2299,2344,2380,2418,2457,2494,2538,2603,2693,2788,2877,2964,3061,3147,3181,3136,
+3038,2950,2927,2977,3069,3163,3237,3286,3317,3334,3341,3344,3356,3386,3432,3485,3537,3587,3632,3660,3667,
+3675,3713,3793,3893,3984,4057,4124,4186,4233,4263,4294,4337,4381,4414,4437,4470,4518,4574,4632,4695,4765,
+4834,4900,4966,5025,5061,5068,5065,5075,5098,5117,5134,5163,5212,5271,5330,5392,5456,5515,5564,5614,5679,
+5755,5828,5897,5970,6046,6101,6115,6097,6074,6059,6034,5979,5901,5835,5816,5851,5913,5968,5999,6013,6026,
+6055,6102,6159,6201,6215,6205,6194,6197,6207,6213,6211,6201,6179,6145,6104,6069,6050,6046,6052,6056,6045,
+6023,6018,6051,6104,6135,6122,6085,6049,6021,5999,5988,5982,5958,5904,5857,5867,5923,5954,5916,5849,5825,
+5853,5886,5883,5847,5797,5749,5727,5763,5848,5926,5940,5900,5865,5873,5910,5943,5961,5974,5989,5999,6002,
+6006,6017,6032,6040,6033,6012,5970,5879,5718,5532,5454,5602,5953,6337,6583,6658,6650,6648,6662,6669,6664,
+6657,6645,6623,6600,6588,6575,6544,6499,6462,6438,6411,6375,6343,6323,6295,6244,6185,6145,6122,6094,6049,
+5997,5948,5899,5848,5815,5814,5831,5827,5777,5689,5597,5526,5477,5426,5349,5244,5133,5049,5008,5006,5027,
+5051,5061,5042,4996,4940,4894,4869,4859,4853,4844,4830,4818,4813,4811,4797,4768,4739,4730,4739,4738,4707,
+4659,4601,4477,4174,3640,3000,2509,2357,2513,2761,2909,2919,2870,2829,2799,2763,2722,2680,2621,2532,2428,
+2334,2252,2166,2068,1971,1887,1818,1759,1711,1670,1630,1589,1550,1513,1470,1413,1351,1296,1256,1234,1235,
+1253,1267,1255,1219,1185,1169,1160,1135,1090,1041,1007,989,977,956,922,879,839,809,786,766,747,
+731,715,697,679,667,661,654,641,620,591,557,522,496,479,466,457,449,438,415,382,351,
+337,333,330,326,328,341,356,368,370,361,355,383,467,572,616,539,367,191,80,33,0,
+-50,-110,-156,-184,-210,-248,-288,-315,-325,-336,-368,-417,-459,-480,-485,-487,-489,-492,-503,-525,-548,
+-563,-581,-617,-666,-707,-726,-734,-751,-779,-802,-814,-815,-812,-810,-811,-821,-837,-857,-879,-904,-932,
+-956,-976,-995,-1015,-1034,-1048,-1063,-1079,-1093,-1099,-1100,-1103,-1108,-1114,-1118,-1119,-1117,-1114,-1111,-1113,-1114,
+-1109,-1099,-1091,-1090,-1089,-1083,-1075,-1069,-1066,-1060,-1052,-1045,-1043,-1041,-1035,-1024,-1010,-995,-984,-975,-966,
+-952,-937,-927,-922,-912,-895,-875,-858,-843,-826,-808,-796,-785,-770,-750,-730,-714,-700,-685,-671,-658,
+-645,-628,-610,-596,-586,-574,-556,-538,-521,-506,-491,-476,-463,-450,-434,-416,-400,-386,-372,-359,-348,
+-336,-322,-308,-298,-290,-281,-267,-254,-247,-242,-235,-225,-218,-215,-212,-210,-209,-210,-210,-208,-207,
+-211,-216,-219,-221,-226,-234,-240,-242,-245,-251,-258,-260,-260,-266,-277,-290,-301,-308,-310,-308,-306,
+-311,-324,-341,-358,-377,-393,-401,-398,-393,-396,-407,-419,-430,-442,-459,-476,-488,-497,-508,-518,-524,
+-524,-525,-532,-544,-557,-564,-567,-569,-571,-573,-572,-568,-563,-559,-560,-564,-569,-572,-567,-558,-549,
+-543,-539,-535,-530,-526,-521,-515,-509,-505,-504,-499,-490,-481,-476,-472,-461,-444,-428,-417,-409,-398,
+-385,-373,-362,-350,-333,-313,-295,-282,-271,-259,-244,-228,-213,-196,-179,-161,-144,-127,-108,-88,-69,
+-49,-24,5,39,75,111,146,180,215,256,302,347,388,428,476,530,585,638,693,757,828,
+902,974,1042,1106,1169,1231,1285,1328,1367,1411,1462,1510,1545,1572,1598,1621,1634,1637,1632,1614,1562,
+1465,1335,1212,1149,1185,1328,1544,1784,2028,2292,2590,2895,3153,3343,3502,3688,3929,4189,4391,4480,4469,
+4433,4436,4476,4503,4501,4511,4560,4611,4599,4520,4422,4331,4209,4024,3807,3609,3429,3222,2973,2732,2551,
+2428,2330,2251,2202,2188,2192,2205,2224,2235,2219,2181,2153,2145,2127,2062,1955,1843,1747,1647,1526,1398,
+1294,1225,1173,1117,1045,956,852,746,652,566,475,374,276,197,137,82,21,-48,-126,-200,-254,
+-286,-312,-353,-408,-457,-497,-543,-604,-661,-695,-716,-760,-841,-946,-1050,-1142,-1219,-1275,-1307,-1322,-1322,
+-1303,-1266,-1227,-1215,-1237,-1280,-1323,-1346,-1347,-1337,-1335,-1346,-1350,-1321,-1264,-1210,-1178,-1160,-1144,-1134,-1134,
+-1125,-1089,-1036,-1003,-1013,-1044,-1058,-1036,-985,-932,-905,-912,-925,-903,-839,-783,-785,-834,-867,-850,-822,
+-843,-922,-999,-1012,-948,-851,-779,-765,-803,-855,-884,-881,-861,-839,-818,-792,-765,-743,-727,-710,-693,
+-681,-676,-671,-661,-648,-635,-625,-616,-609,-608,-615,-627,-639,-651,-665,-679,-690,-699,-708,-721,-733,
+-738,-736,-733,-736,-739,-738,-733,-725,-711,-690,-663,-638,-615,-585,-544,-497,-447,-394,-338,-287,-247,
+-218,-191,-162,-135,-110,-83,-49,-8,37,86,138,189,238,283,327,368,404,437,470,504,536,
+568,598,627,650,673,703,743,783,812,831,850,873,895,912,928,947,969,987,1001,1014,1029,
+1045,1058,1071,1088,1108,1128,1145,1161,1179,1200,1221,1237,1250,1260,1270,1277,1278,1275,1273,1273,1274,
+1276,1278,1281,1284,1285,1284,1285,1288,1296,1305,1314,1326,1344,1370,1396,1416,1432,1451,1471,1486,1492,
+1494,1499,1506,1509,1527,1529,1529,1531,1536,1540,1544,1546,1549,1551,1555,1559,1561,1558,1552,1549,1551,
+1559,1568,1580,1597,1617,1638,1657,1676,1691,1703,1710,1716,1719,1718,1713,1709,1710,1717,1726,1733,1743,
+1763,1791,1817,1840,1883,1967,2075,2155,2176,2167,2186,2253,2335,2393,2427,2460,2497,2516,2508,2483,2455,
+2420,2367,2300,2231,2168,2111,2062,2023,1994,1968,1940,1913,1889,1870,1854,1839,1820,1790,1751,1715,1687,
+1660,1618,1553,1470,1382,1305,1250,1219,1199,1176,1143,1110,1083,1061,1036,998,943,881,833,817,828,
+839,828,796,757,713,648,552,438,338,273,240,219,192,156,122,111,131,174,224,261,281,
+292,303,311,299,248,155,42,-76,-211,-382,-582,-762,-871,-905,-905,-915,-945,-983,-1016,-1039,-1052,
+-1056,-1061,-1070,-1072,-1041,-975,-909,-895,-955,-1064,-1178,-1262,-1309,-1329,-1341,-1364,-1403,-1447,-1481,-1502,-1529,
+-1576,-1626,-1633,-1572,-1474,-1409,-1408,-1432,-1412,-1327,-1226,-1164,-1148,-1138,-1105,-1054,-1005,-966,-933,-910,-897,
+-879,-827,-732,-627,-560,-554,-585,-610,-615,-622,-667,-759,-883,-1019,-1162,-1311,-1445,-1535,-1574,-1581,-1587,
+-1604,-1622,-1630,-1624,-1612,-1605,-1606,-1614,-1624,-1630,-1627,-1618,-1606,-1603,-1609,-1615,-1616,-1617,-1634,-1667,-1701,
+-1724,-1741,-1761,-1782,-1801,-1822,-1843,-1829,-1743,-1601,-1489,-1484,-1574,-1678,-1726,-1719,-1700,-1700,-1720,-1751,-1785,
+-1814,-1837,-1861,-1890,-1920,-1941,-1957,-1978,-2007,-2030,-2040,-2048,-2066,-2092,-2119,-2143,-2166,-2192,-2221,-2255,-2296,
+-2340,-2382,-2421,-2466,-2524,-2593,-2664,-2733,-2800,-2870,-2940,-3006,-3063,-3113,-3163,-3218,-3275,-3332,-3387,-3442,-3501,
+-3563,-3625,-3685,-3743,-3801,-3859,-3917,-3969,-4012,-4047,-4077,-4102,-4121,-4141,-4169,-4210,-4255,-4297,-4333,-4364,-4391,
+-4418,-4453,-4505,-4564,-4611,-4636,-4653,-4679,-4720,-4771,-4820,-4865,-4905,-4942,-4981,-5023,-5067,-5106,-5140,-5173,-5207,
+-5242,-5276,-5309,-5343,-5373,-5392,-5391,-5366,-5330,-5308,-5320,-5360,-5399,-5412,-5391,-5341,-5261,-5153,-5033,-4931,-4880,
+-4913,-5035,-5206,-5345,-5397,-5377,-5347,-5335,-5318,-5277,-5244,-5259,-5305,-5323,-5287,-5237,-5213,-5208,-5180,-5114,-5031,
+-4962,-4928,-4947,-5018,-5103,-5146,-5121,-5062,-5009,-4970,-4929,-4884,-4852,-4829,-4793,-4734,-4676,-4645,-4633,-4612,-4571,
+-4527,-4497,-4475,-4441,-4389,-4332,-4286,-4256,-4241,-4234,-4227,-4206,-4166,-4108,-4042,-3978,-3915,-3853,-3790,-3725,-3658,
+-3594,-3534,-3479,-3427,-3375,-3325,-3275,-3223,-3167,-3107,-3046,-2983,-2919,-2853,-2790,-2730,-2672,-2615,-2560,-2503,-2440,
+-2370,-2299,-2231,-2163,-2088,-2015,-1951,-1897,-1840,-1771,-1702,-1646,-1598,-1532,-1430,-1307,-1200,-1132,-1098,-1075,-1048,
+-1015,-979,-943,-899,-845,-781,-715,-654,-597,-542,-481,-413,-327,-206,-39,156,344,495,613,714,802,
+868,916,971,1052,1147,1234,1306,1378,1454,1527,1594,1665,1750,1839,1915,1980,2045,2116,2180,2231,2273,
+2313,2347,2377,2419,2487,2577,2669,2757,2851,2952,3029,3043,2986,2899,2843,2854,2928,3033,3133,3206,3249,
+3270,3279,3282,3281,3285,3305,3344,3395,3448,3501,3551,3588,3611,3631,3672,3744,3827,3900,3961,4020,4077,
+4119,4151,4192,4254,4321,4369,4398,4428,4472,4528,4590,4654,4717,4776,4836,4902,4966,5006,5015,5010,5016,
+5034,5049,5060,5087,5139,5208,5277,5338,5392,5440,5486,5543,5622,5711,5792,5860,5928,6000,6052,6063,6040,
+6014,6005,6000,5967,5897,5817,5770,5779,5832,5891,5932,5951,5965,5991,6035,6084,6118,6126,6120,6117,6123,
+6124,6113,6097,6087,6079,6062,6036,6008,5987,5981,5987,5997,5998,5990,5993,6022,6061,6078,6062,6032,6007,
+5988,5967,5951,5934,5892,5826,5787,5831,5928,5978,5924,5824,5780,5816,5875,5897,5873,5824,5767,5725,5735,
+5804,5889,5940,5956,5967,5985,5989,5973,5961,5974,6000,6010,5999,5991,6006,6032,6040,6024,5999,5967,5892,
+5734,5533,5430,5559,5900,6278,6517,6590,6597,6625,6669,6688,6677,6661,6648,6628,6603,6585,6573,6550,6513,
+6478,6454,6429,6392,6356,6329,6304,6264,6213,6167,6131,6094,6049,6003,5961,5917,5865,5816,5788,5783,5784,
+5767,5721,5646,5558,5474,5399,5323,5234,5137,5052,4997,4981,4998,5032,5058,5054,5017,4965,4922,4897,4886,
+4880,4875,4867,4861,4859,4858,4845,4816,4789,4780,4783,4771,4732,4685,4626,4473,4111,3525,2883,2442,2352,
+2535,2780,2924,2948,2910,2857,2801,2748,2711,2685,2639,2556,2453,2359,2278,2194,2098,1997,1904,1826,1763,
+1712,1667,1624,1583,1546,1510,1465,1416,1371,1333,1302,1284,1293,1325,1344,1318,1256,1198,1170,1159,1137,
+1097,1054,1020,994,968,935,897,858,826,804,789,774,756,739,723,708,694,683,673,658,635,
+609,583,553,517,482,463,465,474,472,447,404,363,337,323,312,301,292,289,292,301,318,
+335,340,338,366,456,579,644,581,413,230,110,53,7,-59,-134,-188,-212,-230,-266,-316,-354,
+-369,-373,-390,-425,-464,-495,-518,-532,-540,-550,-570,-594,-604,-592,-588,-625,-691,-741,-746,-731,-737,
+-775,-817,-838,-841,-838,-838,-839,-842,-851,-867,-888,-910,-931,-950,-967,-985,-1004,-1022,-1037,-1052,-1067,
+-1081,-1090,-1096,-1102,-1111,-1118,-1123,-1124,-1123,-1120,-1119,-1120,-1119,-1111,-1100,-1092,-1089,-1088,-1083,-1076,-1072,
+-1069,-1065,-1060,-1057,-1056,-1055,-1051,-1041,-1026,-1009,-998,-992,-985,-972,-956,-946,-941,-932,-914,-895,-878,
+-861,-840,-821,-807,-796,-780,-757,-736,-719,-704,-686,-670,-659,-647,-631,-611,-595,-584,-571,-554,-534,
+-517,-502,-486,-471,-457,-443,-428,-411,-396,-381,-365,-351,-338,-326,-313,-300,-291,-284,-274,-262,-251,
+-244,-238,-230,-220,-213,-211,-208,-206,-206,-207,-206,-204,-204,-208,-212,-214,-216,-223,-232,-237,-237,
+-240,-249,-257,-261,-264,-270,-279,-287,-294,-300,-306,-310,-312,-316,-325,-340,-357,-374,-383,-383,-378,
+-379,-390,-406,-418,-427,-437,-452,-467,-478,-487,-497,-508,-516,-517,-518,-524,-535,-547,-552,-551,-548,
+-550,-554,-556,-555,-552,-551,-550,-551,-553,-554,-551,-542,-531,-524,-520,-516,-510,-506,-504,-499,-490,
+-481,-475,-470,-463,-455,-448,-441,-431,-416,-402,-392,-382,-371,-359,-349,-340,-330,-314,-295,-276,-260,
+-247,-234,-223,-211,-197,-180,-160,-142,-125,-109,-92,-74,-55,-32,-3,29,62,94,130,166,200,
+233,269,314,362,405,444,486,538,596,654,712,773,838,907,977,1041,1095,1142,1191,1246,1303,
+1354,1400,1444,1486,1524,1561,1597,1627,1646,1659,1675,1691,1689,1645,1552,1427,1310,1249,1280,1399,1577,
+1788,2032,2312,2599,2842,3021,3178,3384,3672,4002,4283,4438,4465,4434,4424,4452,4476,4471,4465,4496,4549,
+4560,4496,4389,4285,4196,4104,3996,3866,3698,3483,3243,3020,2830,2650,2462,2291,2176,2130,2131,2160,2204,
+2242,2246,2217,2186,2173,2158,2105,2009,1895,1783,1671,1556,1452,1372,1309,1247,1180,1106,1020,920,813,
+715,625,531,427,326,239,168,102,35,-37,-118,-197,-256,-290,-321,-372,-442,-507,-558,-606,-661,
+-712,-744,-764,-797,-854,-932,-1025,-1129,-1230,-1307,-1351,-1367,-1361,-1325,-1263,-1205,-1181,-1198,-1230,-1251,-1255,
+-1252,-1253,-1264,-1277,-1273,-1241,-1194,-1154,-1130,-1112,-1092,-1079,-1079,-1076,-1050,-1009,-982,-985,-1005,-1022,-1020,
+-997,-959,-923,-903,-896,-876,-831,-777,-741,-720,-695,-673,-697,-800,-946,-1053,-1049,-934,-778,-668,-659,
+-735,-831,-887,-887,-858,-826,-801,-775,-749,-727,-709,-691,-676,-666,-662,-655,-642,-627,-616,-608,-599,
+-589,-586,-593,-607,-622,-633,-645,-658,-674,-687,-699,-711,-723,-731,-735,-736,-737,-736,-731,-724,-715,
+-702,-681,-656,-633,-612,-586,-551,-508,-459,-405,-347,-293,-250,-219,-191,-164,-140,-118,-91,-56,-15,
+29,76,126,177,224,269,313,356,394,427,460,494,527,558,590,622,651,675,700,732,768,
+796,814,829,850,878,906,931,953,973,989,1002,1015,1032,1052,1072,1089,1104,1123,1146,1168,1184,
+1197,1213,1234,1254,1266,1273,1276,1279,1278,1274,1270,1270,1272,1275,1275,1274,1274,1276,1281,1288,1294,
+1299,1305,1314,1329,1349,1375,1403,1428,1449,1469,1487,1499,1503,1505,1510,1519,1527,1550,1559,1562,1562,
+1563,1563,1563,1563,1565,1567,1570,1573,1575,1574,1572,1572,1577,1586,1598,1611,1627,1646,1669,1691,1710,
+1724,1735,1746,1755,1758,1756,1752,1748,1744,1741,1742,1748,1765,1791,1819,1838,1850,1876,1944,2046,2137,
+2181,2193,2224,2295,2377,2433,2461,2490,2527,2556,2557,2535,2498,2446,2376,2297,2224,2161,2105,2057,2020,
+1995,1976,1960,1947,1933,1917,1900,1887,1872,1849,1816,1784,1758,1727,1675,1599,1509,1418,1338,1280,1249,
+1235,1217,1184,1144,1110,1086,1066,1038,996,946,906,897,914,927,903,840,758,673,583,487,405,
+360,350,347,325,283,237,206,200,216,247,281,309,329,351,378,403,402,359,283,197,111,
+1,-167,-388,-597,-730,-778,-792,-821,-875,-926,-959,-978,-993,-1006,-1014,-1014,-1002,-971,-925,-890,-898,
+-964,-1067,-1173,-1254,-1305,-1334,-1357,-1382,-1410,-1438,-1457,-1466,-1475,-1498,-1530,-1537,-1489,-1401,-1331,-1325,-1359,
+-1365,-1306,-1211,-1136,-1102,-1084,-1055,-1009,-951,-883,-811,-752,-715,-685,-633,-554,-476,-435,-440,-472,-504,
+-528,-555,-609,-703,-838,-1003,-1179,-1338,-1452,-1510,-1527,-1530,-1540,-1559,-1576,-1582,-1576,-1566,-1561,-1565,-1574,
+-1581,-1582,-1578,-1570,-1562,-1556,-1557,-1563,-1571,-1584,-1608,-1641,-1669,-1683,-1688,-1694,-1696,-1687,-1676,-1682,-1697,
+-1685,-1631,-1570,-1555,-1596,-1649,-1670,-1659,-1644,-1648,-1670,-1696,-1716,-1729,-1742,-1764,-1798,-1831,-1855,-1874,-1898,
+-1928,-1951,-1958,-1955,-1957,-1970,-1993,-2021,-2053,-2085,-2117,-2153,-2195,-2239,-2281,-2322,-2370,-2428,-2492,-2557,-2622,
+-2690,-2762,-2833,-2897,-2951,-3002,-3054,-3112,-3173,-3232,-3286,-3341,-3400,-3460,-3519,-3574,-3631,-3694,-3759,-3820,-3869,
+-3907,-3936,-3961,-3983,-4007,-4036,-4074,-4117,-4159,-4198,-4236,-4273,-4304,-4333,-4369,-4422,-4482,-4525,-4547,-4563,-4594,
+-4642,-4693,-4739,-4778,-4816,-4854,-4894,-4937,-4980,-5020,-5058,-5097,-5137,-5173,-5204,-5236,-5267,-5292,-5300,-5289,-5262,
+-5237,-5235,-5268,-5323,-5368,-5378,-5347,-5285,-5195,-5082,-4959,-4855,-4811,-4858,-4993,-5166,-5299,-5346,-5329,-5301,-5285,
+-5263,-5222,-5196,-5220,-5272,-5293,-5261,-5213,-5189,-5176,-5133,-5052,-4970,-4929,-4942,-4999,-5072,-5123,-5124,-5079,-5025,
+-4989,-4965,-4933,-4893,-4861,-4836,-4800,-4745,-4693,-4666,-4657,-4640,-4604,-4562,-4531,-4509,-4480,-4435,-4379,-4326,-4288,
+-4266,-4256,-4246,-4224,-4185,-4133,-4073,-4008,-3944,-3882,-3821,-3758,-3694,-3632,-3575,-3520,-3465,-3408,-3354,-3301,-3248,
+-3192,-3137,-3084,-3031,-2972,-2907,-2843,-2784,-2730,-2680,-2629,-2574,-2510,-2433,-2352,-2274,-2200,-2126,-2054,-1991,-1938,
+-1885,-1824,-1762,-1710,-1665,-1606,-1518,-1412,-1317,-1250,-1204,-1165,-1125,-1087,-1049,-1001,-941,-874,-805,-737,-675,
+-620,-567,-502,-411,-289,-140,29,202,355,475,569,651,729,794,846,903,980,1070,1153,1222,1285,
+1350,1417,1487,1568,1660,1748,1817,1870,1923,1978,2031,2079,2130,2183,2233,2280,2335,2407,2487,2561,2636,
+2726,2821,2884,2881,2826,2770,2758,2801,2881,2978,3072,3145,3187,3204,3208,3210,3209,3209,3219,3249,3296,
+3351,3406,3458,3503,3541,3578,3627,3690,3756,3813,3863,3916,3967,4008,4047,4102,4179,4257,4313,4350,4385,
+4433,4489,4545,4598,4650,4701,4761,4831,4901,4949,4964,4966,4974,4987,4992,4994,5015,5069,5145,5220,5284,
+5337,5383,5431,5494,5578,5673,5758,5828,5891,5953,5999,6010,5991,5966,5959,5965,5955,5905,5827,5763,5745,
+5773,5816,5846,5860,5873,5900,5940,5980,6002,6004,5998,5999,6005,6003,5990,5977,5972,5973,5966,5950,5932,
+5917,5911,5918,5938,5961,5979,5997,6021,6042,6042,6019,5994,5973,5949,5918,5891,5864,5815,5747,5721,5792,
+5916,5976,5912,5794,5741,5781,5848,5878,5866,5832,5786,5740,5727,5773,5856,5942,6017,6085,6125,6107,6038,
+5978,5972,6001,6015,5998,5983,5998,6028,6039,6021,5994,5970,5905,5747,5528,5386,5466,5766,6124,6370,6475,
+6530,6606,6679,6699,6674,6649,6643,6636,6613,6587,6570,6551,6524,6495,6472,6447,6408,6363,6326,6300,6272,
+6232,6186,6139,6092,6048,6012,5979,5934,5871,5800,5745,5720,5720,5722,5700,5634,5533,5424,5330,5253,5182,
+5112,5049,5002,4979,4985,5018,5056,5071,5049,5004,4961,4932,4917,4911,4910,4909,4907,4902,4894,4878,4856,
+4839,4836,4829,4797,4739,4677,4586,4373,3946,3344,2766,2434,2416,2592,2784,2899,2942,2943,2905,2833,2760,
+2720,2703,2668,2591,2491,2395,2310,2220,2116,2007,1908,1828,1765,1712,1659,1610,1568,1534,1499,1458,1423,
+1401,1383,1355,1329,1332,1363,1379,1341,1262,1193,1160,1149,1132,1101,1068,1037,1003,965,926,889,852,
+818,795,784,778,769,757,742,725,708,694,679,657,626,595,570,546,511,469,445,454,479,
+486,455,405,367,351,344,329,305,285,274,267,268,280,297,298,282,285,347,448,512,473,
+344,198,98,42,-14,-94,-180,-240,-262,-270,-292,-334,-376,-403,-416,-428,-448,-474,-504,-534,-557,
+-570,-586,-618,-653,-660,-631,-609,-642,-715,-767,-761,-726,-721,-760,-812,-843,-853,-860,-868,-871,-867,
+-869,-883,-905,-925,-941,-953,-965,-979,-995,-1012,-1029,-1046,-1061,-1074,-1085,-1095,-1104,-1113,-1119,-1122,-1123,
+-1122,-1122,-1123,-1124,-1121,-1112,-1101,-1093,-1090,-1087,-1082,-1075,-1070,-1067,-1065,-1062,-1060,-1058,-1057,-1056,-1050,
+-1036,-1020,-1009,-1003,-996,-982,-966,-955,-950,-943,-928,-910,-893,-873,-848,-826,-813,-803,-787,-764,-743,
+-726,-709,-690,-672,-660,-650,-635,-616,-599,-586,-571,-552,-533,-517,-502,-487,-471,-456,-441,-425,-411,
+-396,-381,-364,-347,-334,-323,-310,-298,-287,-278,-267,-255,-246,-241,-235,-225,-216,-209,-206,-204,-202,
+-204,-204,-202,-198,-199,-205,-209,-210,-212,-220,-228,-231,-231,-235,-245,-255,-261,-266,-273,-281,-285,
+-287,-292,-302,-312,-321,-328,-334,-341,-347,-354,-360,-364,-371,-382,-397,-409,-417,-423,-432,-444,-456,
+-467,-478,-491,-503,-510,-513,-514,-517,-525,-533,-535,-529,-525,-528,-536,-542,-544,-543,-542,-540,-535,
+-532,-530,-526,-515,-504,-498,-497,-493,-485,-480,-481,-480,-472,-458,-447,-442,-438,-432,-424,-415,-403,
+-389,-374,-363,-353,-342,-331,-322,-312,-300,-286,-272,-258,-242,-226,-212,-202,-192,-179,-162,-143,-126,
+-109,-90,-69,-49,-28,-5,23,54,83,112,146,184,220,251,283,323,370,415,454,495,544,
+600,660,721,781,842,904,969,1030,1080,1117,1155,1205,1268,1332,1389,1435,1474,1510,1548,1588,1625,
+1653,1674,1697,1726,1753,1764,1739,1669,1555,1430,1344,1337,1421,1582,1807,2076,2348,2575,2748,2912,3139,
+3458,3829,4163,4377,4453,4440,4416,4422,4437,4431,4413,4424,4471,4504,4469,4366,4241,4142,4074,4010,3909,
+3752,3556,3364,3200,3040,2835,2580,2331,2161,2088,2084,2114,2160,2203,2220,2206,2185,2178,2174,2142,2066,
+1955,1829,1701,1589,1507,1450,1395,1327,1248,1169,1086,992,889,788,693,595,488,383,288,202,122,
+46,-29,-110,-191,-256,-299,-338,-397,-473,-548,-610,-669,-728,-773,-794,-799,-812,-846,-905,-994,-1110,
+-1232,-1325,-1375,-1387,-1368,-1317,-1240,-1170,-1140,-1147,-1164,-1165,-1158,-1160,-1178,-1201,-1215,-1210,-1186,-1155,-1125,
+-1096,-1066,-1042,-1038,-1054,-1067,-1058,-1034,-1013,-1004,-1003,-1007,-1013,-1013,-992,-950,-902,-862,-830,-796,-756,
+-711,-659,-607,-590,-649,-792,-963,-1077,-1070,-949,-783,-667,-659,-741,-839,-888,-878,-840,-808,-785,-763,
+-740,-718,-698,-676,-657,-644,-637,-629,-617,-603,-593,-586,-578,-571,-568,-573,-586,-602,-615,-627,-641,
+-658,-675,-689,-701,-714,-726,-735,-740,-740,-737,-729,-720,-709,-696,-678,-656,-632,-609,-584,-551,-511,
+-467,-417,-362,-307,-261,-224,-193,-166,-142,-119,-92,-57,-18,22,65,112,161,206,250,296,341,
+380,414,447,483,519,550,581,613,643,667,690,719,753,785,806,823,846,880,919,952,977,
+996,1011,1024,1035,1048,1066,1088,1106,1120,1137,1159,1184,1202,1214,1226,1243,1261,1271,1272,1271,1271,
+1271,1269,1266,1265,1266,1269,1272,1273,1273,1276,1283,1292,1300,1305,1312,1324,1340,1361,1386,1415,1444,
+1467,1484,1496,1505,1509,1513,1521,1535,1550,1577,1589,1593,1593,1589,1586,1582,1582,1583,1585,1588,1591,
+1593,1596,1598,1600,1605,1613,1625,1640,1655,1673,1695,1719,1739,1753,1764,1776,1786,1790,1791,1792,1792,
+1786,1776,1772,1782,1802,1823,1837,1843,1848,1875,1946,2055,2162,2227,2251,2275,2328,2394,2441,2470,2502,
+2547,2584,2591,2566,2519,2453,2374,2293,2222,2162,2110,2066,2034,2014,2001,1991,1984,1977,1963,1946,1931,
+1920,1905,1882,1858,1834,1796,1732,1647,1554,1463,1380,1317,1285,1276,1267,1236,1189,1145,1117,1100,1084,
+1063,1034,1007,995,1001,1002,969,895,798,698,601,514,454,433,436,433,405,362,326,308,308,
+318,333,349,364,383,411,444,464,455,410,348,292,241,157,0,-223,-445,-594,-660,-693,-742,
+-810,-865,-895,-913,-935,-957,-966,-953,-925,-893,-872,-877,-921,-1000,-1094,-1178,-1241,-1285,-1322,-1357,-1386,
+-1405,-1414,-1419,-1419,-1418,-1422,-1435,-1437,-1398,-1317,-1243,-1227,-1264,-1293,-1268,-1198,-1129,-1084,-1054,-1022,-977,
+-910,-816,-705,-608,-547,-510,-467,-408,-354,-326,-327,-352,-394,-452,-518,-589,-682,-817,-995,-1185,-1338,
+-1426,-1458,-1466,-1476,-1495,-1513,-1523,-1526,-1524,-1521,-1518,-1518,-1521,-1521,-1519,-1515,-1512,-1507,-1503,-1503,-1511,
+-1529,-1556,-1591,-1623,-1639,-1636,-1623,-1612,-1595,-1557,-1504,-1470,-1479,-1517,-1549,-1560,-1562,-1572,-1584,-1591,-1591,
+-1597,-1613,-1633,-1648,-1651,-1648,-1648,-1665,-1698,-1736,-1766,-1788,-1811,-1840,-1863,-1870,-1861,-1849,-1848,-1866,-1900,
+-1943,-1982,-2017,-2053,-2095,-2139,-2182,-2227,-2277,-2332,-2388,-2445,-2509,-2579,-2651,-2720,-2782,-2839,-2893,-2950,-3013,
+-3078,-3138,-3191,-3242,-3297,-3353,-3407,-3461,-3521,-3590,-3660,-3720,-3763,-3796,-3823,-3849,-3875,-3905,-3942,-3985,-4028,
+-4066,-4103,-4145,-4189,-4226,-4258,-4297,-4350,-4406,-4444,-4461,-4477,-4512,-4563,-4615,-4657,-4692,-4727,-4765,-4807,-4853,
+-4897,-4940,-4981,-5023,-5064,-5099,-5129,-5157,-5183,-5198,-5197,-5182,-5166,-5163,-5185,-5232,-5289,-5330,-5332,-5291,-5217,
+-5119,-5001,-4880,-4786,-4761,-4826,-4968,-5133,-5252,-5291,-5274,-5249,-5234,-5213,-5179,-5161,-5187,-5237,-5257,-5229,-5184,
+-5155,-5129,-5072,-4987,-4921,-4913,-4962,-5032,-5086,-5101,-5075,-5027,-4987,-4968,-4955,-4929,-4892,-4860,-4834,-4799,-4748,
+-4701,-4677,-4674,-4666,-4638,-4597,-4562,-4539,-4516,-4480,-4426,-4368,-4322,-4296,-4282,-4263,-4231,-4190,-4144,-4092,-4032,
+-3968,-3905,-3846,-3787,-3725,-3665,-3610,-3557,-3501,-3442,-3384,-3330,-3276,-3221,-3167,-3117,-3068,-3013,-2953,-2892,-2836,
+-2785,-2737,-2688,-2635,-2571,-2493,-2407,-2322,-2242,-2166,-2094,-2033,-1986,-1945,-1896,-1838,-1783,-1734,-1676,-1593,-1493,
+-1400,-1332,-1284,-1244,-1209,-1181,-1151,-1105,-1038,-959,-877,-796,-717,-644,-575,-494,-384,-244,-88,66,208,
+329,429,511,591,673,750,816,878,948,1025,1097,1158,1214,1272,1334,1404,1485,1572,1649,1707,1755,
+1802,1851,1894,1934,1983,2045,2113,2184,2261,2340,2406,2457,2512,2592,2679,2730,2722,2684,2667,2697,2759,
+2831,2908,2988,3060,3105,3121,3123,3125,3126,3124,3123,3140,3182,3240,3299,3354,3404,3455,3509,3567,3626,
+3680,3728,3774,3824,3873,3918,3966,4028,4103,4175,4231,4277,4327,4385,4437,4478,4514,4556,4609,4678,4758,
+4834,4886,4911,4923,4936,4946,4943,4937,4953,5004,5079,5155,5221,5280,5337,5397,5465,5547,5639,5728,5805,
+5868,5920,5956,5969,5956,5933,5921,5928,5933,5909,5853,5790,5756,5757,5773,5784,5787,5796,5819,5853,5882,
+5896,5894,5887,5885,5887,5886,5884,5888,5898,5901,5890,5871,5857,5849,5846,5852,5876,5916,5958,5993,6018,
+6025,6011,5984,5959,5938,5906,5865,5830,5800,5749,5683,5666,5750,5883,5938,5859,5733,5682,5729,5799,5826,
+5816,5797,5772,5738,5721,5748,5817,5905,6006,6117,6194,6182,6086,5985,5951,5980,6010,6006,5991,5999,6025,
+6036,6017,5990,5967,5906,5750,5513,5324,5338,5583,5925,6203,6368,6483,6597,6681,6693,6655,6626,6631,6640,
+6625,6596,6572,6553,6526,6496,6471,6448,6414,6369,6328,6297,6271,6236,6191,6140,6090,6049,6021,5991,5944,
+5875,5797,5734,5696,5681,5669,5640,5575,5478,5366,5262,5174,5103,5053,5025,5011,5001,5000,5021,5059,5088,
+5083,5045,4998,4962,4944,4941,4945,4949,4949,4943,4931,4913,4895,4888,4889,4879,4836,4765,4672,4516,4210,
+3717,3142,2692,2516,2578,2720,2821,2872,2918,2955,2942,2870,2788,2747,2735,2704,2627,2525,2425,2330,2228,
+2113,1999,1901,1826,1767,1712,1654,1597,1552,1517,1479,1440,1416,1411,1404,1374,1334,1321,1338,1343,1303,
+1231,1173,1149,1141,1125,1102,1080,1054,1018,978,948,921,884,836,795,776,774,777,774,764,744,
+719,695,672,644,609,573,548,528,498,454,423,425,451,460,431,383,353,354,363,355,328,
+296,267,240,221,219,227,224,199,180,201,258,300,279,200,109,42,-6,-62,-136,-214,-270,
+-295,-302,-313,-342,-382,-423,-455,-479,-493,-505,-523,-548,-568,-580,-598,-640,-690,-707,-680,-650,-670,
+-732,-780,-775,-742,-737,-772,-818,-846,-862,-881,-900,-906,-900,-899,-910,-930,-946,-956,-964,-971,-979,
+-990,-1006,-1026,-1047,-1063,-1075,-1084,-1093,-1102,-1110,-1115,-1118,-1121,-1122,-1123,-1124,-1124,-1120,-1112,-1104,-1099,
+-1096,-1092,-1085,-1077,-1070,-1066,-1063,-1060,-1056,-1053,-1050,-1050,-1048,-1040,-1027,-1014,-1006,-997,-982,-965,-953,
+-948,-941,-930,-915,-897,-876,-850,-828,-815,-805,-790,-768,-748,-732,-715,-694,-675,-661,-650,-635,-618,
+-601,-586,-569,-550,-533,-519,-506,-491,-474,-457,-441,-426,-412,-399,-383,-366,-350,-337,-325,-312,-299,
+-286,-274,-261,-250,-243,-239,-234,-224,-214,-208,-203,-200,-199,-202,-202,-198,-194,-195,-201,-205,-206,
+-209,-215,-221,-223,-225,-230,-240,-249,-255,-262,-272,-280,-283,-285,-289,-298,-308,-319,-329,-336,-339,
+-340,-343,-351,-362,-376,-390,-400,-405,-410,-419,-430,-439,-446,-456,-470,-484,-495,-500,-503,-504,-506,
+-510,-515,-515,-510,-507,-512,-523,-531,-532,-530,-527,-522,-515,-509,-506,-500,-486,-473,-469,-471,-468,
+-459,-451,-452,-454,-448,-435,-424,-419,-416,-411,-403,-393,-380,-364,-348,-335,-323,-314,-305,-296,-284,
+-270,-255,-244,-234,-222,-208,-194,-184,-173,-158,-141,-123,-107,-89,-67,-41,-15,6,28,54,81,
+108,134,165,201,237,269,301,337,379,422,464,509,558,609,662,720,780,841,900,958,1015,
+1066,1106,1142,1188,1247,1312,1372,1422,1464,1499,1534,1571,1613,1653,1687,1715,1743,1775,1811,1841,1838,
+1773,1647,1499,1386,1356,1429,1604,1851,2117,2347,2531,2716,2968,3307,3695,4053,4308,4428,4438,4406,4392,
+4403,4410,4400,4399,4430,4474,4473,4399,4277,4158,4067,3983,3867,3705,3526,3373,3251,3111,2897,2612,2335,
+2149,2076,2075,2100,2130,2156,2167,2159,2146,2145,2149,2135,2082,1990,1869,1740,1631,1560,1515,1468,1400,
+1319,1237,1155,1063,963,862,763,659,550,444,344,245,145,51,-35,-119,-200,-269,-321,-368,-428,
+-501,-573,-640,-707,-774,-818,-828,-817,-812,-831,-881,-967,-1087,-1215,-1314,-1361,-1365,-1336,-1278,-1199,-1127,
+-1089,-1082,-1081,-1071,-1065,-1079,-1113,-1147,-1165,-1166,-1158,-1143,-1117,-1078,-1036,-1013,-1022,-1052,-1079,-1086,-1080,
+-1071,-1058,-1039,-1023,-1022,-1027,-1014,-969,-902,-837,-784,-741,-699,-652,-603,-572,-594,-688,-837,-986,-1074,
+-1069,-980,-857,-767,-755,-806,-862,-875,-847,-809,-783,-767,-748,-725,-702,-680,-655,-632,-615,-605,-598,
+-588,-577,-567,-559,-555,-554,-554,-557,-567,-581,-597,-612,-627,-644,-662,-677,-690,-706,-723,-736,-742,
+-743,-742,-737,-728,-718,-706,-691,-670,-645,-618,-589,-555,-516,-476,-432,-383,-331,-281,-240,-205,-176,
+-148,-120,-89,-54,-18,17,57,102,149,194,238,285,331,371,406,442,481,518,550,578,606,
+633,657,680,707,742,776,804,827,854,894,938,977,1004,1023,1040,1055,1064,1071,1083,1102,1122,
+1138,1153,1173,1196,1215,1227,1238,1250,1261,1265,1263,1261,1261,1262,1261,1258,1256,1256,1259,1265,1271,
+1275,1278,1282,1291,1300,1309,1320,1336,1355,1376,1400,1428,1458,1482,1498,1508,1517,1526,1534,1546,1561,
+1577,1604,1611,1613,1611,1606,1601,1598,1598,1601,1605,1609,1612,1615,1619,1624,1628,1630,1637,1650,1668,
+1684,1700,1720,1745,1770,1788,1803,1815,1825,1828,1829,1834,1838,1834,1821,1816,1827,1843,1850,1846,1843,
+1856,1899,1985,2107,2230,2310,2337,2341,2359,2394,2429,2461,2505,2560,2603,2611,2583,2531,2463,2386,2309,
+2242,2185,2136,2097,2074,2062,2052,2041,2033,2027,2018,2004,1990,1979,1965,1946,1925,1901,1858,1788,1701,
+1613,1525,1438,1364,1325,1320,1318,1291,1241,1193,1163,1148,1138,1127,1113,1095,1077,1065,1049,1013,948,
+863,772,685,611,561,535,518,494,459,427,410,406,408,413,418,424,431,446,470,494,497,
+468,413,351,303,262,191,51,-152,-357,-501,-573,-619,-679,-748,-799,-823,-843,-871,-898,-902,-876,
+-836,-806,-806,-847,-925,-1018,-1104,-1167,-1211,-1250,-1295,-1340,-1372,-1383,-1381,-1378,-1375,-1364,-1348,-1339,-1332,
+-1301,-1234,-1163,-1136,-1164,-1205,-1209,-1170,-1114,-1063,-1022,-986,-947,-881,-768,-625,-498,-419,-380,-346,-303,
+-262,-234,-225,-242,-302,-400,-506,-597,-687,-814,-991,-1179,-1318,-1384,-1399,-1407,-1426,-1448,-1461,-1465,-1467,
+-1472,-1473,-1469,-1462,-1457,-1456,-1454,-1451,-1450,-1450,-1450,-1453,-1465,-1492,-1531,-1573,-1599,-1594,-1559,-1510,-1468,
+-1435,-1396,-1345,-1302,-1294,-1328,-1385,-1433,-1459,-1469,-1476,-1492,-1519,-1548,-1571,-1583,-1587,-1587,-1585,-1586,-1599,
+-1625,-1658,-1684,-1699,-1711,-1728,-1746,-1758,-1755,-1744,-1738,-1754,-1794,-1844,-1888,-1923,-1959,-1999,-2042,-2087,-2135,
+-2186,-2237,-2286,-2338,-2401,-2472,-2542,-2608,-2669,-2730,-2791,-2853,-2918,-2985,-3045,-3096,-3142,-3189,-3240,-3292,-3348,
+-3413,-3486,-3555,-3608,-3645,-3677,-3710,-3745,-3779,-3814,-3854,-3898,-3941,-3980,-4019,-4064,-4111,-4152,-4189,-4230,-4281,
+-4328,-4359,-4375,-4395,-4434,-4486,-4535,-4575,-4609,-4642,-4680,-4724,-4773,-4823,-4868,-4908,-4948,-4987,-5021,-5048,-5071,
+-5088,-5093,-5086,-5077,-5080,-5103,-5146,-5199,-5249,-5276,-5267,-5218,-5137,-5032,-4914,-4803,-4732,-4733,-4816,-4957,-5102,
+-5198,-5224,-5207,-5187,-5179,-5166,-5142,-5132,-5158,-5201,-5218,-5190,-5145,-5107,-5069,-5007,-4933,-4893,-4913,-4977,-5039,
+-5067,-5057,-5022,-4981,-4952,-4942,-4935,-4915,-4883,-4851,-4822,-4787,-4742,-4702,-4685,-4690,-4693,-4672,-4629,-4586,-4558,
+-4541,-4516,-4468,-4407,-4356,-4326,-4307,-4280,-4239,-4194,-4152,-4109,-4054,-3991,-3929,-3872,-3815,-3754,-3693,-3636,-3582,
+-3526,-3468,-3410,-3357,-3307,-3257,-3205,-3152,-3098,-3044,-2989,-2934,-2881,-2830,-2780,-2730,-2676,-2615,-2543,-2460,-2375,
+-2292,-2212,-2141,-2087,-2054,-2030,-1995,-1940,-1877,-1816,-1749,-1661,-1555,-1456,-1386,-1343,-1315,-1295,-1283,-1269,-1230,
+-1155,-1053,-943,-835,-731,-635,-545,-450,-336,-204,-70,52,163,266,362,453,544,639,733,816,887,
+951,1011,1065,1114,1160,1210,1267,1333,1407,1482,1545,1596,1645,1702,1759,1805,1839,1876,1926,1992,2072,
+2163,2248,2308,2345,2388,2459,2537,2580,2575,2560,2581,2642,2715,2778,2839,2910,2979,3022,3033,3030,3031,
+3034,3029,3020,3028,3066,3128,3194,3252,3307,3368,3436,3503,3560,3607,3649,3693,3740,3788,3836,3887,3946,
+4007,4063,4115,4175,4246,4315,4362,4388,4412,4452,4517,4600,4687,4762,4814,4845,4868,4888,4896,4888,4878,
+4892,4941,5013,5087,5157,5227,5302,5377,5449,5524,5608,5700,5785,5852,5896,5922,5934,5929,5907,5886,5883,
+5895,5895,5866,5819,5781,5768,5769,5769,5767,5771,5786,5808,5825,5831,5829,5823,5817,5814,5814,5825,5850,
+5874,5876,5852,5820,5800,5794,5791,5790,5805,5840,5889,5935,5965,5970,5953,5927,5906,5887,5855,5817,5789,
+5762,5710,5642,5631,5724,5858,5899,5802,5666,5622,5684,5761,5784,5769,5753,5741,5722,5714,5737,5780,5833,
+5911,6030,6145,6175,6093,5976,5923,5953,6008,6032,6027,6025,6035,6034,6011,5982,5957,5901,5754,5517,5299,
+5256,5450,5783,6098,6317,6468,6587,6663,6671,6635,6611,6621,6635,6625,6600,6577,6557,6527,6491,6462,6440,
+6415,6380,6341,6306,6272,6233,6188,6138,6090,6051,6022,5992,5945,5881,5815,5759,5716,5678,5639,5594,5535,
+5456,5358,5249,5141,5054,5009,5009,5028,5035,5028,5030,5059,5097,5108,5077,5025,4982,4965,4968,4979,4986,
+4987,4984,4977,4962,4944,4931,4926,4915,4881,4814,4690,4450,4033,3473,2939,2634,2618,2758,2869,2882,2866,
+2895,2946,2948,2886,2818,2789,2780,2738,2647,2534,2428,2327,2217,2097,1983,1890,1823,1771,1719,1658,1597,
+1547,1505,1459,1413,1386,1382,1376,1344,1297,1271,1271,1266,1230,1181,1151,1142,1134,1115,1095,1081,1061,
+1030,1002,993,986,953,892,831,796,786,784,780,770,749,719,685,654,625,589,552,525,510,
+488,450,413,400,411,414,385,339,313,320,341,347,330,300,265,225,188,167,162,156,134,
+109,103,117,127,109,66,17,-28,-73,-123,-178,-231,-278,-312,-332,-345,-363,-393,-437,-484,-522,
+-541,-546,-551,-564,-577,-585,-601,-643,-701,-736,-728,-703,-705,-744,-781,-788,-781,-790,-821,-850,-866,
+-879,-901,-922,-932,-931,-934,-946,-958,-965,-968,-973,-979,-983,-989,-1003,-1025,-1048,-1064,-1073,-1078,-1084,
+-1092,-1101,-1108,-1115,-1121,-1125,-1128,-1128,-1126,-1121,-1114,-1110,-1108,-1106,-1101,-1093,-1086,-1079,-1071,-1064,-1058,
+-1053,-1047,-1042,-1040,-1041,-1038,-1030,-1017,-1005,-992,-977,-961,-948,-939,-931,-921,-909,-893,-873,-850,-832,
+-818,-806,-789,-767,-748,-733,-717,-697,-678,-660,-645,-629,-613,-598,-582,-564,-547,-533,-520,-508,-493,
+-477,-461,-444,-428,-414,-400,-385,-368,-353,-341,-327,-313,-299,-287,-275,-261,-249,-243,-240,-235,-226,
+-217,-210,-203,-199,-198,-201,-202,-198,-193,-194,-199,-202,-203,-206,-212,-217,-219,-222,-229,-237,-243,
+-249,-256,-266,-274,-280,-285,-292,-297,-301,-307,-316,-326,-333,-338,-345,-354,-366,-379,-389,-393,-396,
+-403,-416,-430,-435,-437,-444,-458,-472,-479,-482,-484,-487,-489,-491,-496,-498,-497,-497,-504,-513,-518,
+-516,-511,-506,-500,-492,-488,-487,-480,-464,-448,-444,-449,-449,-438,-427,-424,-425,-420,-410,-402,-398,
+-393,-387,-379,-370,-358,-343,-326,-310,-298,-288,-281,-275,-264,-249,-232,-218,-207,-197,-187,-179,-169,
+-157,-140,-120,-101,-83,-64,-42,-16,8,31,52,76,103,131,158,186,218,253,288,322,357,
+394,434,478,529,581,627,670,718,777,841,900,952,1000,1049,1096,1143,1193,1247,1300,1351,1399,
+1444,1483,1518,1554,1598,1647,1693,1730,1759,1787,1823,1869,1909,1909,1844,1717,1562,1430,1378,1448,1636,
+1888,2133,2348,2570,2855,3216,3610,3972,4245,4395,4427,4392,4362,4370,4395,4404,4400,4413,4450,4473,4440,
+4350,4234,4118,4002,3864,3700,3529,3376,3239,3075,2845,2563,2302,2139,2087,2104,2134,2153,2158,2149,2130,
+2112,2103,2099,2084,2044,1976,1882,1777,1682,1614,1569,1522,1459,1382,1301,1216,1124,1027,929,826,714,
+601,497,397,290,172,54,-50,-143,-228,-301,-359,-410,-467,-531,-592,-652,-718,-787,-833,-842,-826,
+-813,-824,-865,-941,-1051,-1171,-1263,-1305,-1303,-1270,-1217,-1148,-1081,-1034,-1010,-994,-982,-985,-1013,-1059,-1101,
+-1124,-1131,-1130,-1122,-1098,-1059,-1021,-1007,-1027,-1064,-1095,-1111,-1118,-1117,-1100,-1066,-1033,-1018,-1013,-997,-953,
+-888,-820,-758,-701,-643,-586,-552,-571,-662,-805,-948,-1041,-1071,-1048,-992,-924,-873,-859,-871,-877,-855,
+-816,-785,-767,-750,-726,-698,-673,-650,-627,-605,-589,-579,-572,-565,-557,-547,-539,-537,-541,-546,-548,
+-552,-563,-580,-597,-614,-631,-649,-665,-681,-699,-718,-732,-739,-742,-744,-745,-740,-732,-722,-709,-689,
+-663,-634,-602,-565,-525,-484,-444,-401,-354,-306,-263,-226,-193,-160,-125,-89,-52,-17,18,56,98,
+144,190,236,283,328,370,407,445,486,526,558,583,606,630,654,678,704,735,767,797,825,
+857,898,943,984,1014,1038,1060,1079,1089,1093,1100,1116,1138,1158,1174,1189,1206,1222,1234,1244,1252,
+1256,1255,1252,1252,1254,1255,1254,1252,1251,1251,1253,1260,1269,1275,1276,1278,1287,1300,1312,1326,1343,
+1364,1387,1412,1440,1470,1496,1515,1530,1544,1559,1572,1584,1595,1604,1625,1626,1625,1621,1616,1612,1610,
+1611,1616,1622,1627,1631,1634,1639,1646,1651,1655,1661,1677,1699,1719,1735,1754,1780,1810,1835,1853,1867,
+1876,1876,1875,1878,1883,1879,1867,1860,1867,1876,1874,1867,1874,1906,1966,2055,2176,2302,2391,2418,2405,
+2391,2396,2417,2448,2494,2550,2594,2605,2583,2540,2484,2419,2353,2293,2239,2191,2157,2140,2134,2127,2115,
+2104,2100,2095,2085,2070,2052,2029,2004,1980,1953,1910,1843,1764,1684,1597,1499,1410,1361,1357,1361,1338,
+1291,1245,1218,1204,1192,1180,1167,1149,1125,1099,1072,1037,987,920,847,779,722,679,640,597,549,
+509,490,487,488,488,490,497,504,510,519,533,541,525,476,401,318,248,192,123,6,-158,
+-326,-446,-510,-557,-615,-675,-715,-736,-760,-793,-814,-803,-766,-728,-716,-746,-820,-922,-1023,-1098,-1141,
+-1170,-1207,-1257,-1306,-1336,-1344,-1342,-1342,-1338,-1315,-1279,-1251,-1238,-1219,-1171,-1105,-1065,-1075,-1112,-1136,-1123,
+-1078,-1020,-968,-934,-908,-850,-730,-567,-421,-334,-296,-267,-227,-184,-150,-134,-156,-236,-364,-497,-601,
+-694,-824,-1001,-1180,-1300,-1345,-1350,-1358,-1379,-1400,-1407,-1406,-1410,-1418,-1420,-1411,-1400,-1396,-1398,-1398,-1395,
+-1393,-1399,-1406,-1413,-1426,-1456,-1501,-1543,-1558,-1530,-1456,-1353,-1249,-1179,-1157,-1175,-1205,-1229,-1247,-1268,-1296,
+-1323,-1345,-1368,-1404,-1450,-1488,-1502,-1498,-1498,-1513,-1538,-1563,-1581,-1597,-1612,-1620,-1619,-1612,-1610,-1619,-1636,
+-1646,-1646,-1645,-1662,-1702,-1752,-1796,-1833,-1869,-1909,-1952,-1995,-2043,-2094,-2143,-2188,-2239,-2302,-2372,-2439,-2499,
+-2560,-2624,-2690,-2754,-2820,-2886,-2947,-2995,-3037,-3080,-3128,-3180,-3238,-3306,-3378,-3441,-3485,-3519,-3557,-3602,-3648,
+-3689,-3726,-3765,-3809,-3853,-3896,-3939,-3985,-4031,-4074,-4116,-4160,-4205,-4243,-4268,-4288,-4316,-4359,-4408,-4454,-4493,
+-4528,-4562,-4598,-4644,-4698,-4755,-4803,-4840,-4873,-4907,-4939,-4964,-4979,-4986,-4984,-4979,-4982,-5007,-5053,-5108,-5159,
+-5194,-5204,-5182,-5127,-5044,-4939,-4828,-4735,-4691,-4718,-4811,-4941,-5061,-5132,-5147,-5131,-5118,-5118,-5115,-5103,-5099,
+-5122,-5155,-5163,-5131,-5081,-5038,-4998,-4947,-4898,-4886,-4924,-4984,-5026,-5032,-5010,-4977,-4944,-4921,-4911,-4908,-4897,
+-4871,-4837,-4806,-4773,-4737,-4707,-4698,-4710,-4721,-4706,-4661,-4609,-4576,-4564,-4547,-4506,-4444,-4388,-4354,-4332,-4301,
+-4256,-4208,-4167,-4125,-4072,-4011,-3951,-3896,-3841,-3781,-3717,-3657,-3600,-3543,-3485,-3428,-3377,-3333,-3289,-3241,-3188,
+-3132,-3077,-3025,-2974,-2923,-2871,-2817,-2763,-2707,-2647,-2579,-2503,-2420,-2337,-2258,-2193,-2151,-2135,-2126,-2101,-2046,
+-1973,-1898,-1819,-1723,-1610,-1506,-1437,-1402,-1384,-1373,-1371,-1365,-1326,-1233,-1095,-944,-804,-683,-576,-479,-386,
+-287,-183,-82,11,104,203,305,406,507,612,717,813,893,957,1007,1049,1084,1119,1158,1204,1261,
+1326,1390,1443,1489,1542,1611,1686,1747,1787,1814,1843,1887,1952,2035,2119,2182,2225,2270,2335,2400,2435,
+2438,2448,2498,2582,2664,2727,2783,2848,2909,2942,2943,2933,2931,2936,2932,2923,2929,2968,3033,3102,3163,
+3222,3291,3369,3442,3499,3541,3578,3615,3654,3696,3741,3791,3842,3887,3930,3985,4062,4152,4228,4270,4288,
+4311,4361,4443,4538,4625,4692,4740,4777,4810,4835,4841,4828,4817,4830,4877,4946,5022,5100,5186,5278,5365,
+5439,5506,5581,5670,5759,5827,5864,5882,5894,5896,5880,5855,5843,5852,5865,5856,5825,5792,5778,5780,5784,
+5786,5787,5793,5801,5807,5807,5804,5800,5798,5798,5804,5821,5853,5883,5883,5847,5797,5763,5751,5747,5739,
+5736,5751,5785,5826,5857,5866,5854,5839,5830,5821,5802,5778,5763,5742,5686,5617,5614,5723,5866,5903,5792,
+5649,5610,5682,5763,5780,5754,5730,5718,5709,5714,5739,5760,5761,5784,5881,6024,6112,6079,5975,5909,5932,
+6003,6058,6073,6069,6059,6038,6003,5969,5942,5894,5767,5548,5324,5243,5391,5707,6044,6297,6456,6559,6620,
+6636,6623,6614,6619,6621,6608,6589,6576,6561,6534,6499,6467,6444,6420,6390,6356,6320,6280,6236,6192,6147,
+6100,6055,6018,5982,5937,5882,5827,5779,5731,5680,5629,5586,5540,5474,5378,5260,5141,5049,5008,5018,5047,
+5056,5039,5026,5048,5092,5117,5096,5043,4998,4986,5000,5017,5022,5020,5020,5023,5018,4997,4968,4946,4933,
+4914,4857,4704,4381,3858,3237,2736,2539,2639,2840,2944,2921,2875,2886,2925,2926,2884,2850,2845,2831,2761,
+2641,2514,2406,2308,2203,2088,1978,1889,1825,1778,1731,1674,1613,1559,1510,1454,1396,1355,1339,1327,1296,
+1254,1228,1219,1205,1175,1146,1137,1136,1122,1097,1079,1071,1057,1030,1015,1026,1040,1021,965,901,857,
+831,808,782,759,735,703,666,633,606,575,540,512,498,486,458,420,393,386,379,351,307,
+273,267,280,289,286,276,260,235,201,170,148,129,107,85,70,60,45,21,-8,-42,-83,
+-132,-178,-215,-247,-285,-330,-368,-390,-403,-422,-457,-504,-549,-576,-584,-585,-589,-596,-601,-612,-644,
+-696,-743,-761,-754,-750,-761,-781,-798,-818,-845,-873,-889,-894,-902,-917,-929,-935,-942,-958,-977,-986,
+-984,-981,-985,-991,-994,-997,-1006,-1024,-1044,-1057,-1064,-1067,-1072,-1079,-1089,-1100,-1112,-1122,-1130,-1135,-1135,
+-1132,-1128,-1122,-1119,-1116,-1113,-1109,-1105,-1102,-1096,-1086,-1074,-1064,-1056,-1049,-1042,-1037,-1038,-1039,-1034,-1022,
+-1007,-993,-979,-964,-947,-932,-921,-910,-898,-884,-867,-849,-834,-820,-804,-783,-763,-746,-732,-716,-697,
+-678,-659,-641,-624,-608,-592,-576,-559,-543,-530,-517,-504,-490,-477,-462,-445,-429,-414,-399,-383,-366,
+-353,-340,-326,-310,-298,-289,-280,-266,-254,-246,-243,-238,-230,-222,-215,-207,-201,-199,-201,-202,-198,
+-195,-196,-199,-202,-202,-206,-213,-218,-222,-226,-233,-239,-243,-247,-254,-261,-266,-272,-282,-292,-297,
+-297,-298,-304,-314,-325,-335,-345,-353,-362,-371,-380,-386,-390,-399,-413,-425,-427,-426,-430,-443,-455,
+-460,-462,-464,-468,-469,-471,-477,-484,-488,-491,-495,-500,-500,-494,-488,-483,-478,-473,-473,-475,-468,
+-450,-431,-425,-430,-431,-422,-410,-401,-396,-389,-382,-377,-375,-370,-361,-353,-345,-334,-320,-305,-290,
+-276,-264,-257,-252,-247,-234,-216,-196,-180,-170,-165,-162,-155,-142,-124,-102,-79,-56,-35,-17,0,
+19,39,60,84,113,145,176,204,235,269,306,344,381,417,454,498,549,602,646,681,720,
+776,842,904,951,989,1030,1079,1136,1193,1245,1288,1327,1368,1413,1459,1500,1542,1588,1640,1690,1735,
+1771,1803,1835,1874,1921,1966,1980,1930,1800,1613,1439,1371,1457,1667,1926,2183,2458,2787,3173,3569,3921,
+4191,4352,4399,4367,4327,4327,4361,4387,4389,4393,4421,4454,4453,4398,4300,4183,4060,3930,3787,3627,3449,
+3252,3028,2772,2507,2282,2148,2117,2153,2201,2225,2217,2187,2150,2115,2088,2059,2020,1969,1912,1850,1786,
+1723,1669,1621,1572,1512,1440,1359,1271,1180,1089,994,885,760,637,533,438,331,201,66,-55,-159,
+-252,-334,-400,-455,-508,-561,-609,-656,-713,-777,-826,-843,-833,-821,-824,-851,-907,-994,-1096,-1180,-1222,
+-1223,-1196,-1153,-1098,-1039,-988,-950,-926,-915,-926,-963,-1016,-1064,-1089,-1092,-1084,-1069,-1048,-1022,-1005,-1013,
+-1048,-1092,-1123,-1137,-1137,-1121,-1085,-1034,-988,-963,-950,-930,-891,-841,-792,-746,-696,-630,-561,-530,-589,
+-744,-936,-1076,-1116,-1079,-1022,-977,-944,-919,-904,-892,-871,-839,-807,-785,-766,-739,-705,-671,-644,-622,
+-601,-584,-573,-563,-555,-549,-546,-540,-532,-529,-535,-543,-545,-546,-554,-569,-586,-603,-620,-639,-657,
+-673,-689,-707,-720,-728,-731,-735,-738,-737,-731,-722,-709,-689,-665,-639,-609,-572,-530,-489,-451,-413,
+-370,-326,-285,-248,-212,-174,-134,-93,-53,-14,23,59,98,142,188,236,283,327,369,409,449,
+491,530,562,587,608,631,657,683,709,734,761,789,817,850,890,934,977,1013,1045,1074,1097,
+1110,1113,1117,1131,1153,1176,1193,1205,1215,1225,1235,1244,1249,1248,1244,1243,1246,1249,1250,1249,1250,
+1253,1255,1258,1263,1271,1275,1277,1281,1292,1308,1321,1333,1349,1372,1399,1426,1454,1483,1511,1535,1555,
+1572,1590,1605,1616,1622,1625,1637,1637,1635,1631,1627,1623,1621,1623,1627,1634,1642,1648,1651,1656,1665,
+1674,1682,1691,1709,1735,1760,1780,1800,1826,1856,1882,1900,1915,1924,1926,1922,1923,1925,1921,1909,1901,
+1903,1910,1915,1927,1960,2012,2070,2138,2229,2339,2428,2461,2446,2419,2409,2417,2436,2469,2511,2548,2566,
+2562,2543,2511,2466,2415,2365,2320,2278,2245,2229,2224,2220,2212,2206,2202,2196,2181,2156,2124,2087,2052,
+2022,1993,1953,1896,1827,1752,1661,1552,1452,1397,1394,1402,1381,1334,1289,1265,1251,1234,1214,1195,1175,
+1149,1118,1088,1055,1013,958,899,847,808,774,732,675,616,576,565,569,571,568,570,581,592,
+595,595,595,588,558,493,393,277,175,104,46,-36,-161,-296,-394,-447,-487,-537,-585,-615,-636,
+-666,-697,-703,-672,-630,-615,-647,-724,-834,-954,-1051,-1105,-1123,-1134,-1163,-1208,-1250,-1276,-1287,-1293,-1298,
+-1291,-1259,-1214,-1181,-1173,-1169,-1134,-1067,-1007,-993,-1023,-1061,-1065,-1023,-955,-897,-873,-866,-822,-701,-528,
+-374,-287,-248,-213,-160,-101,-58,-47,-88,-191,-332,-468,-576,-686,-838,-1026,-1193,-1287,-1310,-1305,-1311,
+-1331,-1348,-1353,-1352,-1357,-1363,-1361,-1350,-1340,-1341,-1345,-1342,-1334,-1333,-1347,-1364,-1373,-1384,-1412,-1458,-1498,
+-1508,-1474,-1385,-1232,-1039,-883,-852,-963,-1138,-1268,-1301,-1275,-1250,-1253,-1275,-1306,-1345,-1387,-1413,-1408,-1386,
+-1383,-1417,-1476,-1531,-1559,-1562,-1552,-1540,-1528,-1516,-1507,-1510,-1528,-1548,-1559,-1565,-1580,-1614,-1659,-1702,-1741,
+-1781,-1824,-1864,-1905,-1950,-2000,-2048,-2094,-2145,-2208,-2275,-2337,-2392,-2451,-2518,-2586,-2651,-2716,-2782,-2842,-2889,
+-2930,-2972,-3020,-3072,-3132,-3199,-3265,-3320,-3361,-3398,-3446,-3502,-3556,-3599,-3636,-3674,-3716,-3763,-3810,-3856,-3901,
+-3943,-3986,-4032,-4078,-4119,-4151,-4176,-4204,-4241,-4285,-4330,-4372,-4410,-4447,-4481,-4517,-4563,-4624,-4687,-4738,-4771,
+-4798,-4827,-4857,-4878,-4885,-4883,-4881,-4885,-4907,-4949,-5005,-5061,-5102,-5121,-5114,-5080,-5021,-4940,-4843,-4745,-4671,
+-4650,-4693,-4788,-4903,-5002,-5058,-5069,-5058,-5050,-5054,-5059,-5054,-5053,-5069,-5090,-5085,-5044,-4989,-4948,-4921,-4895,
+-4877,-4888,-4931,-4979,-5000,-4990,-4967,-4941,-4915,-4894,-4884,-4885,-4880,-4858,-4825,-4792,-4765,-4740,-4720,-4716,-4730,
+-4743,-4733,-4691,-4640,-4605,-4591,-4577,-4538,-4477,-4418,-4379,-4353,-4321,-4277,-4229,-4183,-4136,-4081,-4021,-3964,-3910,
+-3856,-3796,-3734,-3674,-3617,-3560,-3502,-3446,-3394,-3349,-3309,-3267,-3219,-3166,-3115,-3066,-3016,-2964,-2909,-2854,-2799,
+-2739,-2675,-2606,-2531,-2450,-2369,-2297,-2246,-2221,-2217,-2214,-2189,-2129,-2046,-1958,-1868,-1768,-1658,-1559,-1495,-1466,
+-1453,-1445,-1443,-1434,-1383,-1261,-1081,-891,-730,-610,-515,-432,-354,-278,-200,-117,-30,62,162,263,364,
+465,569,675,775,862,934,989,1029,1059,1083,1109,1142,1186,1241,1297,1343,1382,1430,1500,1586,1667,
+1725,1759,1781,1804,1842,1899,1970,2038,2096,2154,2214,2265,2295,2313,2350,2424,2519,2606,2672,2729,2787,
+2833,2852,2844,2831,2829,2836,2839,2838,2850,2890,2953,3019,3078,3139,3212,3294,3371,3429,3471,3505,3536,
+3567,3601,3643,3692,3737,3774,3814,3875,3965,4065,4140,4178,4195,4225,4291,4388,4492,4577,4638,4685,4728,
+4769,4794,4794,4775,4759,4769,4810,4874,4952,5041,5140,5244,5339,5419,5485,5554,5636,5721,5785,5817,5831,
+5844,5855,5852,5833,5819,5823,5835,5833,5811,5786,5776,5783,5796,5803,5804,5804,5806,5808,5804,5797,5794,
+5803,5821,5839,5858,5881,5901,5896,5853,5788,5736,5713,5707,5698,5685,5680,5692,5716,5738,5744,5740,5739,
+5750,5758,5751,5738,5730,5713,5658,5593,5605,5737,5902,5950,5841,5695,5652,5716,5783,5784,5744,5712,5698,
+5693,5705,5733,5741,5709,5685,5750,5900,6034,6056,5982,5910,5909,5969,6037,6079,6092,6079,6044,5995,5952,
+5924,5884,5780,5588,5368,5250,5333,5600,5934,6213,6393,6496,6555,6588,6605,6615,6616,6604,6585,6571,6565,
+6556,6537,6511,6486,6457,6423,6388,6356,6326,6289,6247,6205,6163,6113,6060,6012,5971,5926,5872,5815,5760,
+5708,5659,5619,5590,5549,5470,5352,5222,5114,5048,5026,5035,5051,5048,5025,5009,5030,5079,5116,5106,5060,
+5020,5015,5038,5060,5062,5052,5050,5061,5066,5047,5008,4971,4952,4938,4876,4682,4280,3678,3023,2550,2416,
+2569,2797,2917,2914,2883,2888,2907,2898,2877,2878,2890,2860,2755,2608,2474,2375,2291,2199,2097,1993,1903,
+1834,1786,1743,1692,1635,1582,1531,1473,1409,1354,1321,1299,1272,1242,1224,1213,1193,1163,1140,1133,1126,
+1104,1076,1062,1059,1046,1019,1005,1020,1044,1040,1004,961,929,898,853,801,758,724,688,649,616,
+592,569,538,508,491,482,463,429,395,374,360,337,298,258,232,219,213,211,219,235,244,
+235,207,169,130,97,73,55,36,10,-18,-44,-73,-114,-167,-213,-243,-267,-301,-348,-393,-424,
+-442,-460,-488,-525,-565,-597,-614,-619,-622,-629,-635,-642,-657,-691,-736,-777,-798,-800,-796,-798,-811,
+-837,-866,-888,-900,-910,-922,-931,-929,-924,-934,-962,-992,-1006,-1005,-1003,-1007,-1014,-1017,-1018,-1022,-1032,
+-1043,-1052,-1058,-1063,-1069,-1075,-1084,-1096,-1108,-1121,-1131,-1138,-1140,-1139,-1136,-1133,-1129,-1124,-1120,-1118,-1118,
+-1120,-1117,-1106,-1091,-1077,-1067,-1059,-1051,-1043,-1041,-1043,-1041,-1031,-1016,-1002,-989,-974,-955,-935,-917,-904,
+-890,-875,-859,-845,-834,-819,-800,-779,-761,-748,-734,-717,-697,-678,-660,-642,-625,-609,-591,-572,-554,
+-539,-524,-509,-494,-482,-471,-458,-441,-425,-411,-396,-379,-362,-349,-337,-323,-308,-297,-292,-285,-272,
+-260,-252,-248,-242,-234,-226,-220,-213,-205,-201,-201,-200,-198,-196,-199,-203,-205,-206,-211,-218,-224,
+-228,-233,-240,-245,-248,-252,-258,-262,-262,-265,-275,-288,-295,-296,-297,-301,-309,-319,-330,-339,-345,
+-350,-358,-372,-384,-391,-396,-404,-412,-414,-413,-418,-428,-438,-443,-444,-447,-450,-451,-454,-462,-471,
+-477,-479,-481,-481,-478,-471,-466,-462,-459,-457,-460,-462,-455,-435,-415,-406,-409,-410,-402,-391,-379,
+-368,-357,-350,-349,-349,-344,-337,-330,-322,-311,-297,-283,-271,-257,-243,-232,-228,-224,-215,-198,-176,
+-158,-148,-144,-141,-132,-119,-102,-83,-58,-31,-7,7,18,32,51,71,94,122,154,188,220,
+252,288,325,364,403,443,481,521,566,614,658,693,730,780,843,905,953,988,1021,1064,1118,
+1176,1227,1266,1300,1337,1384,1434,1484,1533,1584,1633,1679,1721,1765,1809,1849,1882,1920,1974,2034,2058,
+1992,1813,1573,1386,1351,1487,1737,2038,2373,2749,3153,3543,3875,4129,4290,4351,4332,4293,4286,4316,4350,
+4364,4376,4405,4442,4452,4412,4329,4223,4118,4019,3914,3772,3568,3308,3025,2751,2509,2316,2198,2169,2210,
+2271,2305,2293,2248,2195,2150,2108,2052,1975,1889,1817,1772,1749,1733,1710,1677,1631,1573,1503,1422,1334,
+1248,1164,1070,949,806,667,557,465,362,231,89,-39,-150,-253,-350,-432,-494,-543,-584,-620,-656,
+-703,-761,-813,-841,-842,-831,-825,-832,-861,-919,-998,-1077,-1130,-1148,-1137,-1108,-1065,-1013,-959,-913,-882,
+-869,-881,-921,-977,-1029,-1053,-1045,-1019,-993,-975,-968,-976,-1011,-1069,-1131,-1169,-1171,-1140,-1084,-1012,-942,
+-890,-863,-851,-834,-803,-765,-738,-725,-709,-661,-584,-535,-590,-767,-989,-1137,-1158,-1092,-1019,-976,-954,
+-932,-907,-882,-856,-830,-808,-789,-762,-724,-685,-654,-630,-604,-580,-565,-557,-548,-537,-532,-536,-540,
+-537,-532,-535,-542,-546,-548,-555,-569,-584,-600,-617,-638,-657,-669,-680,-692,-705,-713,-715,-717,-718,
+-717,-711,-702,-687,-667,-645,-624,-600,-569,-530,-491,-454,-419,-380,-340,-302,-266,-228,-187,-144,-102,
+-60,-16,24,60,96,136,182,229,275,318,360,402,444,483,520,553,580,603,626,654,684,
+712,737,761,787,815,848,885,928,974,1018,1056,1090,1115,1130,1134,1137,1145,1163,1184,1202,1214,
+1221,1227,1234,1242,1245,1242,1238,1237,1242,1245,1244,1244,1249,1257,1264,1268,1272,1277,1280,1283,1291,
+1305,1322,1335,1346,1361,1386,1416,1445,1471,1497,1524,1549,1568,1583,1597,1612,1625,1633,1637,1637,1640,
+1642,1641,1637,1633,1632,1633,1637,1646,1657,1668,1674,1679,1688,1702,1715,1728,1748,1777,1809,1834,1855,
+1877,1900,1919,1933,1946,1959,1964,1964,1964,1967,1966,1958,1953,1957,1972,1995,2032,2088,2145,2184,2212,
+2260,2340,2421,2464,2463,2446,2437,2436,2437,2447,2470,2499,2523,2536,2540,2531,2508,2475,2442,2411,2382,
+2354,2336,2329,2329,2330,2330,2324,2304,2269,2224,2177,2132,2092,2059,2030,1995,1945,1882,1807,1712,1600,
+1502,1453,1452,1458,1432,1379,1330,1303,1285,1262,1234,1208,1186,1163,1138,1111,1080,1038,986,935,895,
+868,843,806,752,696,664,661,672,677,674,673,678,680,672,656,640,621,583,507,388,245,
+125,63,39,-4,-104,-229,-323,-370,-403,-448,-492,-520,-542,-572,-596,-583,-537,-504,-530,-622,-756,
+-901,-1031,-1116,-1142,-1128,-1112,-1119,-1148,-1179,-1203,-1221,-1233,-1235,-1219,-1186,-1149,-1131,-1137,-1142,-1109,-1032,
+-951,-916,-942,-990,-1004,-960,-881,-821,-813,-828,-800,-685,-513,-360,-269,-222,-170,-95,-15,36,35,
+-33,-158,-301,-425,-533,-667,-852,-1053,-1202,-1264,-1264,-1252,-1258,-1275,-1289,-1296,-1300,-1304,-1305,-1300,-1290,
+-1286,-1289,-1287,-1272,-1255,-1257,-1283,-1311,-1322,-1328,-1352,-1397,-1437,-1458,-1455,-1396,-1228,-946,-671,-581,-751,
+-1067,-1325,-1406,-1352,-1279,-1251,-1259,-1276,-1296,-1320,-1330,-1313,-1280,-1269,-1304,-1373,-1438,-1465,-1451,-1421,-1400,
+-1400,-1408,-1415,-1424,-1441,-1464,-1480,-1487,-1499,-1526,-1564,-1605,-1647,-1692,-1737,-1778,-1816,-1860,-1909,-1957,-2003,
+-2054,-2115,-2178,-2234,-2286,-2344,-2410,-2479,-2545,-2612,-2678,-2735,-2782,-2823,-2868,-2918,-2971,-3028,-3091,-3152,-3202,
+-3244,-3290,-3349,-3411,-3465,-3506,-3543,-3582,-3625,-3672,-3721,-3769,-3812,-3850,-3891,-3938,-3986,-4027,-4059,-4088,-4124,
+-4167,-4210,-4251,-4289,-4328,-4365,-4400,-4435,-4483,-4548,-4615,-4667,-4698,-4721,-4747,-4774,-4790,-4792,-4788,-4792,-4811,
+-4848,-4897,-4948,-4992,-5019,-5024,-5005,-4963,-4904,-4830,-4744,-4661,-4603,-4597,-4647,-4737,-4840,-4928,-4983,-4999,-4993,
+-4987,-4992,-4999,-4999,-4997,-5004,-5011,-4993,-4945,-4891,-4860,-4853,-4855,-4863,-4887,-4927,-4961,-4968,-4951,-4929,-4909,
+-4890,-4872,-4864,-4866,-4863,-4842,-4809,-4779,-4759,-4744,-4733,-4731,-4742,-4753,-4746,-4714,-4671,-4636,-4616,-4597,-4561,
+-4507,-4449,-4403,-4367,-4332,-4290,-4244,-4196,-4142,-4084,-4024,-3967,-3911,-3854,-3795,-3737,-3682,-3629,-3575,-3521,-3467,
+-3415,-3367,-3325,-3285,-3243,-3196,-3150,-3104,-3054,-2998,-2940,-2884,-2829,-2768,-2699,-2627,-2551,-2473,-2398,-2337,-2302,
+-2290,-2289,-2281,-2249,-2183,-2092,-1993,-1894,-1795,-1695,-1608,-1552,-1527,-1519,-1517,-1513,-1490,-1411,-1251,-1036,-825,
+-670,-573,-509,-450,-390,-327,-256,-169,-72,28,124,216,309,406,506,606,702,794,879,950,1001,
+1031,1049,1062,1082,1114,1158,1204,1241,1270,1305,1364,1447,1537,1615,1673,1707,1727,1744,1775,1825,1890,
+1961,2028,2086,2130,2165,2207,2272,2361,2457,2539,2604,2659,2706,2738,2746,2737,2728,2727,2733,2740,2748,
+2769,2809,2866,2926,2985,3047,3121,3203,3281,3342,3388,3425,3458,3488,3523,3566,3616,3661,3697,3739,3805,
+3897,3992,4061,4094,4113,4152,4233,4344,4457,4545,4606,4654,4702,4742,4759,4747,4719,4699,4704,4735,4790,
+4866,4961,5067,5175,5278,5368,5446,5518,5594,5669,5727,5760,5775,5791,5811,5822,5817,5805,5802,5806,5804,
+5789,5771,5763,5771,5786,5798,5800,5799,5803,5809,5806,5794,5789,5808,5846,5880,5896,5902,5905,5894,5849,
+5777,5710,5673,5662,5656,5644,5633,5633,5643,5652,5650,5647,5660,5689,5709,5703,5682,5671,5659,5619,5574,
+5606,5756,5936,5998,5898,5753,5698,5738,5777,5756,5706,5678,5671,5668,5674,5695,5703,5669,5634,5672,5801,
+5943,6005,5977,5918,5891,5909,5958,6018,6067,6084,6057,6001,5945,5905,5865,5781,5621,5411,5245,5226,5392,
+5682,5991,6235,6390,6475,6524,6561,6589,6598,6586,6568,6557,6551,6539,6521,6506,6491,6462,6419,6375,6346,
+6324,6294,6253,6211,6168,6118,6062,6012,5970,5923,5861,5791,5725,5671,5629,5601,5573,5515,5404,5257,5126,
+5052,5031,5033,5035,5030,5019,5004,5000,5025,5074,5114,5114,5080,5047,5045,5071,5096,5100,5089,5085,5096,
+5105,5091,5055,5017,4994,4969,4873,4616,4141,3495,2852,2427,2334,2495,2715,2849,2884,2889,2898,2897,2875,
+2861,2875,2881,2823,2694,2544,2425,2344,2277,2202,2116,2022,1928,1849,1793,1750,1703,1649,1598,1553,1504,
+1445,1385,1339,1307,1280,1258,1246,1237,1217,1184,1154,1136,1118,1091,1066,1055,1053,1036,1004,981,985,
+999,999,982,968,961,947,908,853,800,753,703,652,610,585,566,541,511,488,475,458,429,
+393,363,343,324,296,261,226,194,166,149,155,182,212,224,206,164,114,71,40,19,-2,
+-29,-55,-76,-99,-135,-184,-231,-264,-290,-322,-361,-401,-436,-468,-498,-525,-547,-571,-600,-627,-645,
+-656,-666,-677,-684,-689,-703,-736,-783,-824,-842,-840,-833,-835,-848,-861,-868,-879,-903,-932,-947,-940,
+-928,-934,-962,-993,-1013,-1021,-1026,-1034,-1040,-1044,-1047,-1051,-1055,-1059,-1065,-1071,-1078,-1083,-1086,-1092,-1100,
+-1111,-1122,-1132,-1138,-1141,-1141,-1140,-1139,-1136,-1133,-1130,-1129,-1133,-1136,-1135,-1125,-1109,-1093,-1080,-1071,-1062,
+-1053,-1049,-1048,-1048,-1041,-1028,-1015,-1003,-988,-968,-946,-926,-910,-893,-873,-854,-841,-832,-819,-800,-781,
+-768,-757,-743,-722,-699,-679,-662,-647,-632,-614,-594,-572,-553,-536,-520,-502,-486,-474,-464,-451,-433,
+-418,-406,-393,-377,-361,-349,-338,-324,-309,-300,-295,-288,-276,-265,-258,-254,-248,-238,-231,-225,-218,
+-211,-206,-203,-202,-200,-201,-205,-210,-212,-213,-217,-223,-228,-233,-239,-246,-250,-252,-258,-265,-268,
+-266,-266,-274,-285,-292,-296,-300,-305,-311,-318,-326,-334,-339,-342,-352,-369,-384,-388,-388,-390,-397,
+-402,-405,-409,-417,-424,-428,-430,-433,-436,-438,-442,-449,-457,-460,-461,-461,-460,-454,-448,-444,-443,
+-443,-443,-445,-445,-436,-416,-396,-387,-386,-384,-377,-367,-355,-342,-328,-321,-320,-321,-318,-314,-309,
+-301,-288,-273,-261,-251,-238,-223,-210,-203,-198,-188,-173,-155,-139,-128,-121,-113,-100,-84,-71,-56,
+-36,-10,14,30,42,57,78,98,117,140,168,201,234,270,307,343,380,421,467,511,549,
+584,624,669,710,748,790,842,899,949,989,1024,1061,1104,1150,1195,1235,1272,1312,1360,1414,1469,
+1523,1575,1623,1662,1696,1737,1789,1842,1885,1919,1962,2026,2086,2084,1966,1738,1486,1336,1369,1579,1909,
+2300,2719,3132,3506,3816,4055,4216,4293,4298,4276,4272,4295,4325,4346,4369,4406,4442,4449,4411,4337,4248,
+4167,4098,4018,3883,3657,3356,3040,2766,2551,2386,2273,2232,2262,2323,2359,2343,2290,2233,2190,2146,2073,
+1962,1835,1732,1683,1685,1711,1731,1725,1692,1637,1567,1489,1408,1330,1250,1151,1016,855,701,581,486,
+382,252,112,-14,-127,-240,-355,-455,-526,-570,-600,-626,-655,-695,-748,-802,-838,-848,-840,-827,-818,
+-821,-845,-899,-971,-1039,-1082,-1095,-1082,-1048,-999,-942,-888,-847,-828,-838,-878,-937,-988,-1005,-984,-945,
+-914,-900,-901,-921,-974,-1061,-1153,-1205,-1190,-1117,-1015,-916,-838,-788,-764,-755,-745,-722,-692,-678,-696,
+-725,-712,-633,-547,-557,-709,-932,-1096,-1137,-1094,-1043,-1014,-991,-956,-916,-881,-853,-828,-805,-780,-744,
+-701,-666,-643,-622,-592,-561,-543,-538,-531,-520,-517,-528,-542,-545,-541,-540,-545,-551,-557,-566,-580,
+-594,-606,-623,-644,-663,-672,-676,-683,-695,-703,-705,-702,-699,-695,-689,-677,-661,-640,-620,-603,-584,
+-560,-528,-493,-459,-423,-385,-347,-312,-277,-238,-195,-153,-113,-72,-27,15,52,85,124,168,215,
+258,299,341,384,426,463,499,532,561,587,612,641,674,707,736,763,791,821,854,891,934,
+981,1028,1071,1107,1133,1149,1155,1156,1160,1170,1185,1202,1216,1225,1230,1234,1239,1242,1241,1238,1238,
+1241,1243,1243,1244,1250,1260,1270,1276,1281,1285,1288,1294,1304,1320,1336,1349,1362,1381,1407,1437,1464,
+1486,1507,1531,1553,1569,1579,1589,1603,1618,1630,1637,1631,1636,1641,1646,1646,1644,1643,1646,1652,1663,
+1678,1693,1703,1709,1718,1735,1753,1770,1792,1823,1859,1889,1910,1928,1943,1954,1963,1974,1989,1998,2002,
+2004,2012,2020,2026,2033,2048,2073,2107,2154,2210,2255,2271,2269,2284,2337,2407,2456,2475,2478,2477,2469,
+2454,2447,2461,2488,2513,2530,2542,2546,2538,2522,2504,2490,2476,2461,2448,2443,2445,2451,2452,2435,2395,
+2337,2275,2221,2179,2142,2110,2078,2041,1992,1929,1852,1757,1655,1573,1534,1532,1529,1493,1435,1383,1350,
+1325,1294,1258,1225,1200,1180,1162,1141,1110,1067,1018,974,944,924,904,874,831,791,772,779,797,
+806,801,788,772,749,718,681,647,616,575,500,374,222,108,75,96,84,-8,-140,-238,-280,
+-308,-357,-414,-451,-472,-494,-505,-482,-439,-432,-507,-653,-826,-986,-1111,-1180,-1184,-1142,-1096,-1075,-1083,
+-1107,-1137,-1162,-1172,-1161,-1135,-1105,-1087,-1087,-1103,-1109,-1073,-989,-894,-849,-875,-932,-950,-896,-804,-742,
+-746,-781,-771,-673,-516,-366,-265,-199,-129,-39,52,108,96,4,-139,-281,-391,-499,-654,-863,-1066,
+-1189,-1221,-1206,-1196,-1204,-1218,-1229,-1238,-1245,-1247,-1244,-1237,-1233,-1234,-1234,-1222,-1193,-1168,-1174,-1211,-1246,
+-1257,-1258,-1279,-1319,-1361,-1404,-1451,-1453,-1306,-974,-602,-442,-622,-1013,-1346,-1456,-1389,-1290,-1242,-1234,-1229,
+-1225,-1234,-1246,-1238,-1211,-1193,-1209,-1255,-1300,-1311,-1282,-1241,-1225,-1249,-1292,-1326,-1344,-1361,-1382,-1400,-1409,
+-1419,-1441,-1475,-1513,-1554,-1599,-1646,-1689,-1730,-1775,-1825,-1873,-1918,-1967,-2023,-2082,-2135,-2187,-2244,-2308,-2374,
+-2442,-2511,-2577,-2633,-2678,-2721,-2769,-2821,-2873,-2927,-2985,-3041,-3090,-3136,-3192,-3258,-3320,-3369,-3409,-3448,-3491,
+-3535,-3582,-3631,-3680,-3723,-3759,-3796,-3841,-3890,-3933,-3969,-4005,-4046,-4089,-4130,-4168,-4207,-4246,-4285,-4319,-4354,
+-4403,-4468,-4535,-4587,-4617,-4638,-4661,-4686,-4702,-4705,-4705,-4719,-4751,-4795,-4839,-4875,-4900,-4910,-4904,-4879,-4839,
+-4786,-4721,-4646,-4574,-4530,-4534,-4585,-4669,-4764,-4851,-4912,-4937,-4935,-4928,-4932,-4942,-4944,-4940,-4937,-4932,-4908,
+-4863,-4819,-4802,-4811,-4831,-4852,-4880,-4914,-4937,-4936,-4917,-4897,-4881,-4868,-4856,-4850,-4849,-4841,-4818,-4788,-4766,
+-4754,-4746,-4740,-4740,-4749,-4757,-4753,-4729,-4692,-4656,-4630,-4608,-4579,-4536,-4483,-4427,-4375,-4330,-4290,-4251,-4206,
+-4151,-4091,-4030,-3972,-3911,-3847,-3785,-3727,-3675,-3624,-3575,-3529,-3483,-3436,-3389,-3346,-3307,-3266,-3223,-3180,-3136,
+-3084,-3023,-2959,-2901,-2846,-2785,-2716,-2645,-2575,-2505,-2439,-2388,-2359,-2348,-2340,-2322,-2285,-2222,-2131,-2025,-1918,
+-1821,-1734,-1659,-1608,-1585,-1583,-1585,-1571,-1518,-1396,-1200,-968,-768,-645,-590,-560,-522,-470,-407,-329,-231,
+-123,-23,63,145,236,338,438,529,617,710,809,900,967,1003,1016,1021,1030,1050,1081,1115,1143,
+1163,1189,1234,1303,1388,1474,1549,1603,1634,1651,1669,1705,1761,1831,1900,1958,2007,2057,2124,2209,2302,
+2387,2457,2517,2570,2610,2633,2639,2636,2630,2626,2624,2626,2638,2662,2702,2755,2816,2881,2950,3028,3110,
+3188,3253,3304,3347,3385,3422,3462,3508,3557,3602,3643,3690,3756,3840,3922,3982,4014,4039,4089,4181,4302,
+4423,4516,4580,4631,4677,4709,4712,4684,4648,4627,4629,4653,4699,4770,4863,4965,5069,5173,5274,5369,5454,
+5531,5601,5658,5695,5716,5735,5759,5781,5790,5784,5774,5768,5765,5757,5745,5736,5739,5755,5772,5781,5784,
+5791,5801,5800,5784,5774,5794,5840,5882,5895,5887,5877,5862,5823,5755,5683,5634,5611,5598,5585,5578,5583,
+5596,5601,5593,5588,5609,5648,5669,5650,5611,5592,5592,5583,5569,5618,5768,5942,6003,5906,5760,5693,5714,
+5738,5710,5666,5652,5659,5656,5644,5644,5651,5639,5619,5638,5719,5827,5911,5946,5941,5914,5884,5880,5927,
+6008,6072,6082,6037,5968,5904,5846,5771,5649,5465,5259,5119,5134,5333,5656,5992,6246,6388,6455,6498,6536,
+6559,6562,6554,6548,6540,6520,6496,6482,6474,6453,6413,6372,6346,6327,6294,6246,6197,6154,6110,6062,6019,
+5979,5928,5858,5780,5713,5662,5619,5576,5521,5433,5301,5155,5049,5015,5025,5033,5018,4999,4994,5002,5017,
+5045,5085,5119,5126,5102,5074,5068,5089,5117,5132,5132,5131,5137,5142,5131,5105,5078,5057,5010,4861,4524,
+3979,3318,2727,2385,2343,2501,2694,2818,2874,2901,2912,2894,2857,2833,2827,2799,2712,2583,2460,2374,2313,
+2257,2195,2128,2047,1953,1864,1798,1752,1705,1649,1599,1562,1527,1478,1421,1370,1332,1302,1279,1267,1259,
+1241,1209,1173,1144,1119,1093,1071,1059,1050,1029,995,966,953,950,940,927,927,941,955,951,925,
+882,826,757,683,622,585,563,543,517,492,472,454,428,393,356,326,302,281,259,233,200,
+162,128,114,122,139,147,135,104,65,28,-1,-26,-51,-77,-99,-116,-135,-165,-206,-249,-285,
+-315,-345,-376,-408,-445,-490,-533,-558,-562,-564,-584,-621,-659,-683,-698,-711,-723,-730,-737,-755,-789,
+-828,-855,-864,-864,-866,-868,-863,-854,-859,-887,-927,-955,-961,-958,-962,-977,-994,-1008,-1021,-1035,-1046,
+-1052,-1057,-1067,-1079,-1086,-1089,-1093,-1100,-1105,-1106,-1105,-1107,-1113,-1122,-1131,-1138,-1143,-1143,-1140,-1139,-1140,
+-1141,-1142,-1143,-1145,-1147,-1147,-1144,-1136,-1123,-1107,-1091,-1080,-1071,-1063,-1056,-1053,-1051,-1047,-1037,-1024,-1012,
+-999,-982,-962,-945,-929,-910,-885,-860,-844,-835,-824,-808,-792,-780,-769,-752,-729,-704,-682,-664,-650,
+-636,-619,-598,-575,-554,-538,-522,-503,-485,-472,-461,-446,-428,-413,-403,-392,-378,-363,-352,-342,-329,
+-314,-304,-299,-291,-279,-269,-264,-261,-254,-245,-237,-231,-225,-218,-213,-210,-208,-207,-209,-214,-218,
+-220,-220,-222,-226,-230,-234,-241,-248,-252,-255,-261,-269,-274,-274,-276,-282,-289,-293,-296,-302,-309,
+-313,-317,-324,-332,-337,-342,-351,-365,-375,-376,-374,-378,-389,-399,-404,-406,-409,-413,-415,-417,-420,
+-424,-427,-432,-438,-441,-440,-438,-438,-438,-433,-426,-423,-424,-427,-428,-429,-425,-413,-394,-377,-368,
+-364,-359,-351,-342,-332,-319,-305,-298,-296,-296,-293,-291,-288,-280,-266,-251,-240,-229,-217,-203,-192,
+-183,-173,-159,-146,-133,-120,-107,-95,-82,-66,-50,-37,-26,-12,8,29,46,62,82,105,125,
+142,162,188,218,250,285,322,358,393,435,486,537,576,606,641,686,732,770,804,843,887,
+934,980,1021,1058,1093,1128,1165,1203,1244,1289,1341,1397,1452,1504,1557,1605,1644,1674,1707,1754,1813,
+1871,1917,1956,2003,2063,2105,2066,1899,1634,1391,1306,1448,1782,2221,2676,3095,3455,3751,3983,4149,4245,
+4280,4285,4290,4306,4323,4336,4358,4393,4424,4426,4395,4343,4286,4231,4175,4090,3935,3682,3356,3029,2766,
+2576,2433,2327,2277,2295,2347,2378,2358,2304,2253,2219,2180,2103,1978,1831,1707,1644,1648,1693,1738,1754,
+1731,1678,1610,1538,1466,1394,1315,1208,1063,893,732,605,501,391,260,123,0,-113,-232,-360,-474,
+-551,-591,-611,-628,-653,-691,-740,-792,-830,-847,-846,-835,-819,-804,-801,-825,-882,-955,-1018,-1052,-1052,
+-1026,-980,-921,-860,-811,-788,-799,-841,-897,-937,-939,-905,-864,-838,-827,-820,-832,-892,-1005,-1127,-1189,
+-1153,-1043,-917,-822,-761,-721,-692,-677,-673,-665,-650,-650,-694,-762,-784,-708,-585,-540,-644,-842,-1009,
+-1075,-1069,-1049,-1035,-1008,-966,-927,-900,-876,-844,-809,-774,-735,-692,-658,-636,-615,-581,-547,-529,-528,
+-526,-518,-517,-531,-548,-555,-552,-552,-559,-565,-571,-581,-596,-610,-621,-633,-652,-670,-678,-679,-683,
+-692,-699,-699,-693,-688,-683,-676,-663,-645,-624,-605,-588,-571,-550,-524,-494,-461,-424,-385,-348,-314,
+-280,-242,-200,-160,-123,-85,-44,-2,35,70,110,154,198,238,277,318,361,403,440,475,509,
+542,571,597,626,660,696,730,762,792,825,861,899,940,985,1032,1077,1116,1144,1161,1170,1174,
+1176,1180,1189,1202,1216,1227,1231,1232,1234,1239,1242,1243,1244,1246,1249,1253,1256,1262,1270,1278,1286,
+1291,1296,1301,1309,1321,1336,1350,1364,1381,1403,1428,1453,1476,1494,1513,1533,1553,1569,1579,1588,1600,
+1615,1626,1631,1628,1631,1641,1653,1659,1659,1660,1665,1673,1684,1701,1718,1732,1741,1753,1773,1795,1815,
+1836,1867,1903,1935,1958,1976,1991,2002,2011,2019,2030,2037,2040,2045,2060,2085,2111,2137,2163,2190,2217,
+2248,2284,2312,2318,2311,2316,2353,2410,2460,2493,2511,2514,2498,2471,2460,2477,2509,2533,2544,2550,2558,
+2563,2560,2554,2551,2551,2551,2551,2551,2552,2552,2543,2513,2460,2393,2330,2283,2248,2215,2180,2141,2097,
+2043,1975,1895,1805,1717,1650,1616,1603,1583,1543,1493,1452,1422,1392,1352,1307,1265,1232,1211,1197,1179,
+1146,1101,1057,1025,1006,991,975,954,930,909,902,913,929,934,917,882,836,785,728,671,619,
+576,533,464,346,203,104,99,152,160,71,-63,-155,-184,-209,-273,-356,-411,-431,-437,-434,-414,
+-397,-433,-552,-725,-898,-1038,-1138,-1189,-1181,-1128,-1064,-1022,-1016,-1040,-1079,-1112,-1115,-1089,-1054,-1032,-1026,
+-1032,-1043,-1046,-1015,-937,-844,-797,-825,-887,-905,-838,-730,-658,-663,-707,-717,-647,-515,-372,-254,-161,
+-77,9,91,139,118,16,-131,-268,-373,-486,-656,-872,-1060,-1156,-1168,-1153,-1152,-1162,-1170,-1174,-1180,
+-1187,-1188,-1181,-1174,-1173,-1178,-1177,-1161,-1129,-1103,-1109,-1144,-1175,-1181,-1177,-1193,-1230,-1274,-1333,-1414,-1457,
+-1336,-1003,-611,-434,-613,-1006,-1330,-1421,-1337,-1233,-1184,-1166,-1144,-1125,-1132,-1158,-1174,-1168,-1154,-1152,-1168,
+-1187,-1184,-1151,-1111,-1103,-1141,-1201,-1246,-1266,-1278,-1298,-1320,-1334,-1346,-1365,-1396,-1432,-1469,-1509,-1555,-1601,
+-1646,-1692,-1741,-1787,-1831,-1878,-1932,-1987,-2041,-2094,-2151,-2212,-2275,-2343,-2414,-2481,-2536,-2580,-2625,-2676,-2728,
+-2778,-2828,-2882,-2935,-2985,-3036,-3097,-3164,-3223,-3266,-3304,-3347,-3395,-3443,-3490,-3540,-3591,-3634,-3669,-3704,-3746,
+-3793,-3837,-3879,-3920,-3963,-4005,-4044,-4082,-4122,-4164,-4201,-4235,-4272,-4321,-4382,-4446,-4495,-4526,-4546,-4568,-4592,
+-4611,-4622,-4632,-4654,-4691,-4732,-4764,-4782,-4788,-4785,-4771,-4747,-4714,-4674,-4620,-4555,-4494,-4462,-4474,-4527,-4604,
+-4692,-4779,-4847,-4880,-4879,-4870,-4873,-4886,-4891,-4883,-4872,-4861,-4842,-4810,-4782,-4777,-4795,-4820,-4844,-4869,-4896,
+-4911,-4905,-4886,-4868,-4858,-4850,-4843,-4838,-4830,-4813,-4789,-4767,-4757,-4754,-4752,-4749,-4752,-4760,-4767,-4762,-4741,
+-4707,-4668,-4636,-4614,-4595,-4566,-4517,-4451,-4382,-4326,-4285,-4253,-4215,-4164,-4104,-4044,-3984,-3919,-3849,-3779,-3718,
+-3662,-3610,-3562,-3520,-3482,-3443,-3404,-3368,-3333,-3295,-3251,-3206,-3161,-3110,-3046,-2978,-2916,-2860,-2800,-2734,-2670,
+-2612,-2556,-2500,-2451,-2416,-2391,-2366,-2338,-2304,-2254,-2175,-2070,-1962,-1868,-1792,-1728,-1679,-1653,-1647,-1637,-1593,
+-1494,-1329,-1117,-900,-738,-659,-641,-634,-605,-552,-483,-398,-297,-192,-102,-26,53,154,268,372,456,
+531,621,729,837,921,968,984,986,987,995,1011,1031,1052,1073,1100,1139,1195,1264,1340,1414,1478,
+1524,1556,1583,1618,1666,1727,1792,1852,1910,1975,2054,2143,2228,2298,2358,2416,2469,2508,2531,2541,2545,
+2542,2530,2515,2507,2514,2537,2575,2628,2696,2773,2853,2937,3023,3106,3178,3235,3281,3323,3364,3404,3443,
+3484,3528,3577,3634,3700,3774,3843,3896,3934,3970,4032,4131,4256,4379,4475,4543,4596,4640,4664,4654,4616,
+4575,4554,4556,4576,4616,4681,4766,4856,4946,5040,5143,5252,5353,5439,5513,5574,5618,5646,5667,5691,5719,
+5737,5739,5727,5717,5714,5715,5708,5694,5690,5706,5736,5759,5769,5773,5779,5777,5761,5747,5759,5796,5830,
+5839,5828,5817,5806,5777,5722,5658,5604,5562,5528,5503,5498,5516,5542,5553,5546,5541,5562,5601,5618,5589,
+5542,5524,5542,5560,5568,5618,5748,5899,5947,5849,5701,5629,5654,5695,5694,5675,5679,5695,5685,5648,5616,
+5610,5616,5617,5620,5643,5697,5787,5897,5984,6002,5946,5878,5872,5944,6040,6097,6088,6028,5942,5853,5770,
+5677,5535,5321,5083,4943,5014,5310,5718,6079,6299,6394,6439,6481,6515,6528,6528,6529,6528,6511,6483,6464,
+6456,6442,6413,6381,6358,6333,6288,6229,6175,6137,6104,6066,6027,5985,5928,5855,5782,5726,5679,5617,5534,
+5435,5325,5208,5105,5047,5041,5050,5037,5001,4977,4987,5017,5047,5073,5103,5131,5139,5122,5096,5084,5099,
+5129,5157,5173,5178,5178,5176,5166,5151,5139,5122,5052,4841,4419,3808,3147,2631,2392,2420,2586,2749,2847,
+2895,2921,2924,2894,2845,2801,2758,2689,2585,2475,2392,2337,2287,2230,2176,2125,2057,1965,1869,1797,1749,
+1701,1642,1591,1558,1533,1495,1445,1395,1356,1323,1295,1278,1269,1254,1224,1186,1153,1129,1108,1086,1065,
+1046,1023,996,969,948,929,909,890,886,903,935,965,975,955,900,818,727,648,593,561,541,
+522,501,479,457,432,399,359,318,283,257,240,226,204,172,135,104,85,72,59,43,27,
+11,-7,-31,-58,-86,-112,-135,-157,-181,-212,-250,-286,-317,-344,-372,-399,-429,-469,-518,-563,-582,
+-570,-555,-567,-614,-670,-708,-724,-732,-744,-760,-774,-786,-801,-821,-842,-859,-874,-887,-894,-887,-873,
+-866,-881,-911,-944,-969,-988,-1002,-1006,-1002,-1002,-1012,-1030,-1042,-1046,-1052,-1069,-1089,-1103,-1111,-1118,-1126,
+-1129,-1126,-1123,-1123,-1128,-1135,-1143,-1150,-1154,-1152,-1146,-1142,-1143,-1146,-1151,-1156,-1159,-1157,-1151,-1145,-1140,
+-1132,-1117,-1100,-1087,-1080,-1074,-1066,-1058,-1054,-1050,-1042,-1029,-1016,-1003,-991,-978,-965,-952,-933,-905,-877,
+-856,-844,-834,-821,-807,-792,-776,-756,-733,-709,-688,-668,-652,-637,-621,-601,-579,-560,-545,-530,-511,
+-493,-478,-464,-447,-429,-414,-404,-393,-379,-366,-357,-347,-333,-319,-309,-304,-297,-286,-277,-273,-269,
+-262,-252,-245,-239,-232,-225,-221,-219,-217,-215,-216,-220,-224,-224,-223,-225,-227,-230,-234,-241,-250,
+-256,-259,-264,-270,-276,-279,-284,-290,-295,-296,-298,-303,-309,-313,-316,-321,-329,-336,-341,-347,-355,
+-360,-360,-363,-373,-387,-398,-401,-401,-402,-403,-404,-405,-407,-411,-416,-421,-425,-423,-418,-416,-418,
+-418,-413,-406,-404,-406,-408,-409,-409,-404,-391,-373,-358,-350,-345,-338,-329,-320,-310,-298,-286,-280,
+-278,-275,-271,-269,-267,-260,-247,-233,-221,-208,-193,-180,-171,-163,-150,-134,-123,-113,-100,-83,-66,
+-53,-41,-26,-11,1,14,29,44,59,75,96,119,137,156,180,210,239,266,297,333,371,
+408,451,503,556,596,628,663,707,750,786,816,847,881,917,957,1000,1041,1076,1108,1141,1179,
+1220,1267,1321,1379,1433,1482,1530,1580,1626,1663,1693,1730,1783,1848,1912,1960,1996,2039,2096,2117,2021,
+1778,1475,1285,1345,1663,2130,2618,3049,3403,3690,3920,4095,4213,4279,4308,4318,4322,4321,4321,4333,4355,
+4374,4375,4362,4350,4340,4316,4259,4146,3953,3668,3325,2995,2740,2564,2434,2334,2284,2298,2347,2375,2352,
+2299,2255,2229,2198,2130,2017,1884,1766,1697,1685,1714,1750,1762,1736,1680,1611,1542,1478,1412,1331,1220,
+1072,905,747,617,505,389,257,123,1,-111,-232,-362,-479,-559,-598,-615,-630,-654,-690,-735,-781,
+-816,-835,-839,-835,-825,-807,-789,-791,-826,-888,-951,-989,-994,-973,-933,-881,-825,-780,-762,-778,-821,
+-864,-878,-853,-807,-771,-756,-745,-726,-726,-788,-919,-1056,-1110,-1045,-909,-784,-718,-692,-667,-630,-605,
+-610,-630,-646,-673,-743,-841,-890,-824,-685,-600,-654,-805,-942,-999,-998,-982,-958,-921,-889,-886,-901,
+-899,-865,-820,-784,-753,-715,-672,-637,-609,-579,-551,-536,-535,-537,-535,-538,-549,-560,-563,-563,-570,
+-581,-585,-581,-584,-600,-620,-634,-645,-660,-675,-683,-683,-684,-689,-692,-690,-684,-679,-674,-665,-651,
+-633,-614,-595,-577,-558,-538,-515,-488,-457,-421,-383,-346,-313,-280,-244,-204,-166,-130,-94,-57,-18,
+19,58,100,143,185,224,261,301,343,385,424,461,496,531,563,592,621,653,688,724,758,
+791,824,862,901,941,983,1027,1075,1118,1149,1168,1179,1186,1191,1194,1197,1205,1217,1226,1230,1229,
+1231,1237,1244,1250,1252,1255,1261,1270,1278,1284,1288,1293,1300,1306,1312,1319,1330,1343,1356,1368,1382,
+1401,1422,1443,1463,1482,1500,1518,1536,1557,1576,1590,1601,1612,1622,1627,1628,1633,1636,1650,1667,1678,
+1680,1682,1688,1698,1708,1722,1739,1757,1773,1790,1813,1837,1857,1878,1907,1942,1975,2001,2024,2047,2066,
+2074,2077,2079,2080,2083,2093,2119,2161,2206,2244,2269,2282,2287,2292,2306,2325,2337,2342,2351,2378,2420,
+2467,2508,2534,2535,2508,2472,2459,2483,2521,2545,2550,2553,2567,2587,2600,2605,2610,2620,2633,2643,2644,
+2637,2621,2595,2558,2509,2457,2411,2377,2345,2307,2260,2210,2157,2096,2023,1939,1852,1773,1713,1672,1639,
+1603,1567,1541,1528,1513,1484,1437,1382,1331,1290,1265,1250,1232,1197,1152,1113,1092,1083,1074,1062,1051,
+1044,1039,1038,1041,1043,1031,996,939,869,797,725,652,582,522,473,410,308,183,99,106,169,
+190,116,0,-74,-91,-118,-202,-311,-384,-403,-395,-385,-380,-402,-485,-632,-798,-934,-1024,-1082,-1113,
+-1104,-1057,-994,-948,-938,-967,-1016,-1051,-1048,-1013,-978,-963,-961,-956,-954,-956,-940,-882,-799,-754,-783,
+-848,-865,-790,-670,-585,-578,-619,-641,-599,-496,-359,-220,-101,-9,61,115,141,110,13,-120,-245,
+-351,-479,-664,-876,-1042,-1115,-1120,-1113,-1119,-1127,-1125,-1121,-1126,-1133,-1130,-1120,-1112,-1111,-1117,-1121,-1113,
+-1092,-1070,-1066,-1081,-1090,-1076,-1059,-1069,-1111,-1168,-1240,-1323,-1360,-1242,-942,-613,-496,-687,-1036,-1289,-1327,
+-1231,-1138,-1098,-1077,-1045,-1021,-1029,-1062,-1095,-1111,-1113,-1114,-1121,-1132,-1133,-1113,-1083,-1076,-1106,-1153,-1183,
+-1190,-1197,-1218,-1247,-1266,-1279,-1298,-1328,-1361,-1394,-1428,-1469,-1514,-1559,-1603,-1648,-1691,-1734,-1782,-1836,-1891,
+-1946,-2001,-2059,-2119,-2180,-2246,-2317,-2385,-2440,-2485,-2532,-2584,-2635,-2682,-2728,-2779,-2833,-2886,-2942,-3004,-3068,
+-3120,-3160,-3197,-3244,-3296,-3347,-3397,-3449,-3499,-3543,-3578,-3614,-3654,-3698,-3742,-3786,-3832,-3877,-3917,-3955,-3994,
+-4036,-4078,-4115,-4149,-4187,-4234,-4291,-4350,-4398,-4430,-4451,-4472,-4497,-4520,-4539,-4558,-4584,-4617,-4647,-4667,-4673,
+-4669,-4659,-4643,-4623,-4603,-4576,-4536,-4481,-4430,-4410,-4431,-4485,-4555,-4635,-4720,-4791,-4826,-4824,-4812,-4815,-4830,
+-4836,-4824,-4807,-4796,-4788,-4775,-4765,-4768,-4787,-4812,-4836,-4859,-4877,-4882,-4871,-4853,-4840,-4835,-4833,-4830,-4823,
+-4808,-4784,-4761,-4750,-4753,-4760,-4762,-4761,-4765,-4774,-4781,-4775,-4755,-4721,-4680,-4644,-4621,-4607,-4584,-4539,-4471,
+-4396,-4330,-4285,-4253,-4218,-4170,-4111,-4051,-3992,-3929,-3858,-3785,-3718,-3659,-3604,-3554,-3511,-3475,-3441,-3410,-3383,
+-3358,-3324,-3278,-3229,-3183,-3133,-3072,-3005,-2942,-2887,-2829,-2766,-2708,-2663,-2622,-2577,-2527,-2479,-2434,-2388,-2348,
+-2316,-2280,-2219,-2126,-2025,-1939,-1873,-1816,-1767,-1734,-1709,-1663,-1568,-1422,-1240,-1051,-885,-771,-721,-712,-706,
+-675,-621,-553,-470,-376,-282,-202,-132,-48,65,190,297,374,440,524,634,750,848,911,940,947,
+945,943,945,953,969,996,1030,1071,1117,1169,1229,1293,1355,1411,1462,1509,1553,1598,1649,1708,1772,
+1835,1903,1978,2056,2128,2189,2244,2299,2351,2392,2419,2438,2452,2454,2442,2423,2410,2411,2428,2459,2510,
+2582,2666,2751,2836,2926,3019,3104,3172,3224,3269,3308,3338,3361,3388,3431,3494,3565,3636,3701,3759,3810,
+3856,3908,3981,4083,4203,4320,4418,4493,4553,4599,4619,4604,4566,4526,4503,4500,4514,4548,4604,4678,4754,
+4826,4903,4998,5107,5218,5318,5402,5472,5524,5558,5581,5603,5632,5660,5672,5668,5660,5662,5669,5667,5650,
+5638,5654,5694,5734,5752,5752,5747,5740,5727,5715,5716,5734,5752,5757,5754,5751,5746,5726,5686,5636,5581,
+5522,5464,5424,5417,5440,5472,5488,5483,5479,5496,5529,5546,5527,5497,5496,5526,5547,5546,5572,5672,5803,
+5851,5762,5618,5546,5585,5666,5717,5736,5754,5768,5747,5686,5621,5588,5591,5599,5591,5571,5579,5663,5829,
+6009,6104,6070,5966,5894,5909,5986,6066,6108,6093,6022,5916,5810,5719,5606,5409,5131,4882,4827,5050,5471,
+5903,6197,6336,6396,6442,6479,6492,6489,6492,6504,6503,6482,6458,6443,6430,6409,6382,6356,6321,6270,6211,
+6165,6138,6111,6072,6024,5971,5910,5842,5782,5734,5679,5589,5464,5334,5226,5151,5108,5093,5092,5079,5039,
+4992,4974,4996,5035,5066,5090,5118,5145,5154,5139,5115,5104,5117,5148,5182,5204,5211,5208,5203,5197,5195,
+5196,5181,5084,4810,4305,3636,2984,2547,2411,2510,2690,2829,2897,2924,2935,2926,2891,2839,2782,2714,2620,
+2513,2423,2367,2323,2268,2204,2152,2109,2047,1954,1855,1784,1737,1691,1632,1581,1550,1530,1499,1454,1410,
+1374,1343,1313,1290,1277,1260,1230,1192,1162,1143,1126,1102,1071,1044,1022,1003,980,956,932,909,888,
+875,880,907,945,970,962,917,846,763,682,613,563,535,521,506,484,458,431,402,366,323,
+279,243,218,202,186,164,138,109,79,47,18,-1,-10,-16,-30,-56,-86,-114,-139,-164,-195,
+-230,-269,-305,-335,-356,-374,-395,-423,-457,-499,-546,-585,-598,-584,-566,-577,-626,-691,-735,-746,-738,
+-740,-761,-791,-812,-821,-825,-833,-847,-866,-888,-906,-914,-911,-903,-897,-901,-917,-948,-985,-1014,-1020,
+-1009,-1000,-1008,-1028,-1043,-1047,-1053,-1069,-1089,-1105,-1116,-1127,-1138,-1143,-1140,-1137,-1138,-1141,-1144,-1149,-1157,
+-1163,-1164,-1158,-1153,-1152,-1155,-1158,-1162,-1165,-1161,-1152,-1144,-1140,-1137,-1126,-1110,-1096,-1090,-1086,-1078,-1067,
+-1059,-1054,-1046,-1031,-1015,-1003,-994,-986,-977,-966,-950,-925,-897,-873,-857,-845,-832,-817,-799,-778,-756,
+-734,-715,-696,-676,-656,-639,-623,-605,-585,-567,-552,-538,-520,-501,-485,-470,-452,-434,-420,-408,-395,
+-381,-369,-360,-350,-336,-322,-314,-310,-305,-296,-287,-282,-277,-270,-261,-254,-248,-240,-233,-228,-226,
+-223,-220,-219,-222,-224,-224,-224,-227,-231,-233,-236,-243,-252,-260,-265,-270,-274,-277,-280,-284,-290,
+-295,-297,-299,-304,-310,-313,-315,-319,-325,-331,-336,-342,-347,-350,-352,-359,-372,-384,-389,-390,-390,
+-392,-393,-392,-391,-393,-396,-400,-405,-406,-403,-398,-397,-400,-401,-396,-389,-386,-386,-386,-384,-383,
+-380,-369,-352,-338,-329,-322,-314,-306,-297,-287,-275,-264,-259,-258,-255,-252,-250,-247,-239,-227,-215,
+-203,-187,-169,-154,-146,-138,-124,-110,-101,-94,-79,-58,-40,-30,-23,-10,8,25,39,51,63,
+76,91,111,130,148,169,200,234,262,283,309,345,387,430,474,523,570,611,648,687,726,
+759,786,816,851,883,910,937,972,1013,1053,1089,1126,1165,1205,1250,1303,1362,1417,1463,1506,1553,
+1603,1649,1687,1723,1767,1828,1899,1960,1994,2019,2065,2114,2077,1878,1560,1303,1291,1576,2053,2566,3009,
+3357,3627,3845,4028,4178,4281,4331,4336,4320,4304,4299,4306,4316,4322,4324,4333,4359,4388,4385,4320,4176,
+3949,3644,3299,2975,2724,2548,2417,2316,2264,2279,2330,2357,2330,2273,2229,2211,2194,2148,2067,1970,1881,
+1815,1780,1770,1768,1754,1713,1649,1576,1509,1449,1389,1311,1200,1056,897,746,616,500,382,256,128,
+7,-108,-228,-352,-462,-540,-582,-605,-626,-655,-693,-734,-773,-802,-817,-819,-817,-811,-801,-788,-785,
+-805,-846,-889,-912,-908,-886,-856,-822,-787,-760,-755,-777,-812,-830,-809,-753,-695,-663,-656,-648,-628,
+-630,-702,-839,-967,-995,-900,-747,-631,-593,-599,-593,-562,-541,-561,-612,-667,-729,-825,-944,-1012,-964,
+-829,-721,-723,-807,-885,-908,-890,-853,-799,-739,-718,-762,-833,-863,-831,-780,-757,-752,-730,-683,-635,
+-605,-588,-571,-554,-541,-536,-539,-551,-565,-571,-568,-572,-588,-602,-594,-571,-558,-575,-609,-638,-656,
+-668,-678,-683,-681,-679,-678,-678,-674,-669,-665,-660,-651,-636,-619,-602,-584,-564,-543,-521,-499,-475,
+-447,-416,-383,-348,-315,-281,-247,-210,-173,-135,-98,-62,-26,12,54,97,138,178,218,257,297,
+338,379,420,459,494,529,562,594,624,655,688,724,759,791,824,862,903,943,982,1025,1075,
+1122,1156,1176,1187,1196,1203,1206,1206,1209,1217,1227,1232,1234,1237,1243,1252,1258,1262,1264,1272,1283,
+1295,1301,1303,1307,1314,1321,1326,1334,1347,1363,1375,1384,1398,1417,1436,1453,1468,1487,1507,1525,1541,
+1560,1582,1600,1613,1623,1631,1635,1633,1648,1653,1667,1686,1697,1699,1701,1710,1723,1735,1746,1762,1784,
+1806,1829,1853,1877,1898,1921,1953,1990,2025,2053,2080,2108,2129,2134,2127,2121,2123,2134,2155,2193,2245,
+2296,2329,2337,2325,2305,2293,2299,2319,2342,2357,2369,2387,2418,2462,2508,2541,2542,2510,2467,2448,2467,
+2504,2530,2541,2551,2576,2609,2640,2661,2679,2698,2716,2725,2719,2697,2665,2630,2598,2570,2545,2523,2495,
+2454,2399,2337,2276,2216,2150,2073,1987,1901,1824,1761,1707,1657,1612,1586,1587,1601,1602,1575,1524,1465,
+1409,1363,1335,1320,1301,1267,1223,1192,1179,1174,1163,1150,1145,1148,1152,1147,1136,1117,1085,1034,965,
+887,808,730,646,558,477,413,352,272,175,108,115,174,204,156,69,11,-9,-50,-149,-270,
+-349,-368,-359,-354,-373,-432,-544,-693,-827,-908,-941,-956,-965,-958,-926,-880,-848,-848,-884,-935,-967,
+-957,-921,-894,-887,-881,-864,-852,-860,-863,-823,-750,-704,-732,-796,-813,-741,-622,-534,-515,-541,-561,
+-534,-448,-316,-165,-30,67,124,149,143,95,7,-98,-201,-311,-462,-664,-870,-1013,-1070,-1076,-1077,
+-1084,-1083,-1073,-1068,-1075,-1081,-1076,-1063,-1053,-1051,-1056,-1065,-1071,-1065,-1045,-1021,-997,-957,-897,-845,-845,
+-909,-1010,-1118,-1203,-1213,-1089,-845,-623,-593,-790,-1062,-1220,-1208,-1116,-1048,-1020,-996,-960,-936,-941,-966,
+-993,-1017,-1039,-1057,-1073,-1093,-1109,-1109,-1093,-1082,-1092,-1112,-1122,-1119,-1124,-1149,-1181,-1201,-1213,-1232,-1262,
+-1296,-1327,-1357,-1391,-1430,-1470,-1509,-1548,-1588,-1632,-1682,-1737,-1793,-1848,-1905,-1965,-2025,-2086,-2151,-2221,-2288,
+-2344,-2391,-2439,-2491,-2539,-2581,-2624,-2675,-2733,-2793,-2852,-2913,-2970,-3017,-3056,-3097,-3147,-3202,-3255,-3307,-3359,
+-3408,-3449,-3485,-3523,-3566,-3609,-3651,-3696,-3745,-3792,-3833,-3870,-3909,-3951,-3992,-4028,-4063,-4101,-4146,-4199,-4254,
+-4303,-4338,-4361,-4381,-4404,-4428,-4451,-4474,-4498,-4524,-4544,-4554,-4556,-4552,-4543,-4530,-4518,-4508,-4495,-4466,-4421,
+-4382,-4372,-4400,-4453,-4517,-4591,-4674,-4745,-4779,-4774,-4759,-4760,-4775,-4780,-4766,-4747,-4740,-4744,-4748,-4750,-4757,
+-4775,-4800,-4826,-4848,-4858,-4852,-4835,-4819,-4812,-4811,-4810,-4807,-4799,-4782,-4757,-4736,-4733,-4747,-4762,-4769,-4769,
+-4773,-4781,-4786,-4782,-4764,-4732,-4690,-4650,-4621,-4602,-4579,-4541,-4484,-4416,-4350,-4296,-4254,-4213,-4163,-4103,-4043,
+-3987,-3930,-3863,-3791,-3724,-3665,-3612,-3564,-3521,-3485,-3451,-3421,-3398,-3378,-3348,-3302,-3250,-3200,-3152,-3097,-3036,
+-2979,-2928,-2873,-2812,-2757,-2717,-2688,-2654,-2611,-2559,-2501,-2437,-2378,-2336,-2302,-2254,-2180,-2096,-2021,-1961,-1907,
+-1856,-1812,-1757,-1662,-1514,-1339,-1178,-1048,-947,-869,-817,-787,-763,-729,-682,-624,-553,-469,-385,-311,-242,
+-154,-38,89,198,276,343,423,524,636,740,818,866,887,891,887,881,880,893,921,960,1000,
+1038,1079,1130,1187,1245,1304,1366,1428,1481,1525,1571,1628,1693,1757,1816,1878,1944,2009,2065,2115,2162,
+2208,2248,2283,2315,2346,2366,2369,2362,2354,2354,2362,2384,2427,2493,2571,2648,2725,2812,2912,3011,3096,
+3161,3213,3251,3271,3278,3294,3340,3414,3498,3572,3631,3680,3729,3783,3848,3931,4031,4141,4250,4351,4441,
+4514,4562,4579,4565,4533,4500,4475,4462,4464,4486,4531,4591,4653,4714,4779,4859,4958,5067,5174,5270,5350,
+5412,5454,5481,5505,5534,5568,5593,5601,5601,5607,5621,5628,5617,5603,5612,5652,5699,5726,5726,5713,5700,
+5689,5680,5677,5679,5683,5688,5697,5706,5706,5688,5656,5613,5556,5486,5415,5370,5363,5382,5405,5415,5414,
+5414,5427,5450,5467,5471,5476,5500,5532,5533,5499,5488,5562,5690,5762,5704,5571,5489,5522,5628,5727,5787,
+5818,5828,5799,5728,5643,5582,5561,5559,5545,5511,5494,5558,5730,5954,6125,6168,6100,6002,5944,5948,5998,
+6066,6113,6103,6025,5911,5799,5680,5498,5222,4928,4780,4906,5278,5727,6074,6263,6352,6410,6453,6466,6457,
+6455,6470,6481,6469,6444,6423,6406,6385,6357,6326,6289,6244,6200,6170,6148,6116,6064,6003,5945,5889,5831,
+5774,5715,5637,5524,5387,5264,5183,5146,5134,5128,5113,5078,5028,4990,4987,5014,5047,5072,5098,5134,5167,
+5174,5156,5134,5130,5149,5180,5209,5226,5230,5226,5223,5226,5237,5250,5231,5098,4756,4176,3468,2844,2488,
+2442,2590,2772,2887,2930,2938,2934,2915,2877,2829,2774,2702,2607,2506,2425,2369,2317,2252,2183,2130,2086,
+2020,1924,1826,1757,1714,1671,1618,1571,1543,1524,1495,1454,1416,1387,1361,1335,1311,1290,1267,1233,1196,
+1171,1157,1142,1115,1081,1052,1033,1016,992,965,941,922,903,884,874,881,898,908,896,865,824,
+775,713,640,573,531,513,500,477,446,416,391,365,329,286,242,206,178,156,138,122,106,
+84,55,28,8,-3,-21,-53,-94,-130,-154,-171,-195,-229,-270,-311,-347,-373,-390,-402,-418,-445,
+-482,-522,-562,-594,-612,-612,-607,-618,-657,-714,-755,-760,-738,-724,-741,-783,-823,-844,-849,-850,-855,
+-865,-879,-899,-923,-943,-947,-934,-914,-903,-917,-951,-986,-1002,-1000,-999,-1014,-1041,-1063,-1074,-1080,-1091,
+-1102,-1110,-1118,-1129,-1141,-1148,-1148,-1148,-1150,-1150,-1147,-1148,-1156,-1167,-1172,-1170,-1167,-1166,-1165,-1164,-1164,
+-1165,-1163,-1155,-1146,-1143,-1141,-1134,-1121,-1108,-1102,-1098,-1090,-1078,-1067,-1060,-1050,-1033,-1015,-1002,-995,-988,
+-980,-969,-956,-938,-915,-891,-869,-852,-837,-821,-802,-780,-756,-735,-720,-704,-685,-663,-643,-625,-608,
+-589,-572,-556,-542,-525,-507,-490,-473,-456,-440,-426,-413,-400,-385,-373,-363,-352,-338,-326,-319,-316,
+-311,-304,-297,-292,-286,-279,-271,-265,-257,-248,-241,-237,-234,-229,-224,-222,-224,-225,-226,-227,-233,
+-239,-242,-243,-247,-254,-263,-270,-276,-279,-281,-283,-285,-289,-293,-297,-302,-307,-311,-314,-316,-319,
+-322,-325,-331,-339,-345,-348,-352,-360,-371,-376,-374,-373,-376,-380,-380,-377,-377,-379,-382,-383,-384,
+-385,-382,-380,-381,-385,-385,-379,-372,-367,-363,-358,-355,-354,-354,-346,-332,-318,-307,-297,-289,-281,
+-273,-262,-248,-236,-232,-232,-231,-230,-229,-226,-216,-204,-193,-182,-166,-147,-132,-123,-112,-96,-82,
+-76,-70,-56,-34,-17,-9,-3,10,29,46,58,69,83,97,115,135,155,174,195,225,257,
+283,303,328,364,409,455,500,544,586,628,672,715,748,764,777,805,847,885,910,930,958,
+996,1036,1076,1118,1161,1200,1241,1291,1349,1404,1450,1489,1530,1574,1622,1671,1718,1762,1812,1877,1941,
+1978,1991,2018,2070,2076,1934,1645,1364,1300,1543,2013,2539,2989,3317,3546,3732,3919,4113,4272,4349,4345,
+4306,4281,4283,4294,4298,4296,4300,4325,4368,4405,4398,4316,4152,3911,3612,3285,2979,2735,2556,2416,2304,
+2245,2258,2310,2333,2292,2218,2170,2166,2175,2159,2112,2049,1987,1928,1872,1823,1780,1736,1682,1613,1538,
+1470,1413,1359,1288,1182,1043,888,742,613,496,381,264,144,24,-96,-217,-332,-429,-500,-547,-580,
+-612,-649,-690,-731,-765,-789,-799,-794,-783,-774,-771,-772,-780,-797,-822,-841,-840,-818,-788,-765,-752,
+-745,-743,-751,-770,-786,-776,-725,-650,-585,-554,-550,-546,-539,-561,-645,-773,-873,-873,-767,-619,-513,
+-484,-503,-518,-512,-513,-551,-622,-703,-791,-902,-1028,-1107,-1077,-953,-825,-766,-773,-796,-803,-794,-758,
+-681,-589,-553,-609,-701,-735,-690,-632,-627,-661,-676,-647,-608,-593,-597,-590,-559,-519,-496,-502,-532,
+-561,-573,-572,-579,-600,-611,-587,-538,-508,-525,-578,-631,-662,-674,-678,-678,-672,-666,-662,-660,-657,
+-653,-650,-645,-636,-622,-606,-590,-573,-552,-529,-507,-484,-461,-435,-409,-382,-351,-316,-280,-247,-213,
+-177,-137,-98,-61,-25,14,57,100,139,178,220,262,303,342,382,424,462,496,528,561,595,
+627,657,690,727,763,795,827,866,909,949,986,1028,1080,1130,1166,1185,1197,1207,1215,1215,1212,
+1212,1220,1231,1241,1247,1252,1257,1263,1267,1270,1272,1277,1288,1299,1305,1309,1313,1321,1329,1334,1342,
+1355,1370,1382,1391,1405,1424,1443,1457,1470,1489,1511,1528,1542,1560,1581,1599,1611,1621,1634,1643,1648,
+1663,1671,1682,1698,1708,1711,1717,1732,1751,1766,1778,1795,1819,1846,1871,1896,1920,1946,1977,2017,2060,
+2094,2119,2140,2164,2180,2179,2166,2160,2171,2197,2230,2271,2317,2357,2372,2357,2321,2287,2273,2282,2307,
+2334,2351,2361,2373,2400,2443,2495,2537,2549,2526,2486,2458,2460,2483,2510,2532,2556,2589,2629,2671,2711,
+2747,2777,2793,2791,2771,2740,2705,2677,2661,2659,2661,2654,2623,2564,2487,2410,2342,2277,2205,2124,2037,
+1953,1877,1809,1746,1687,1644,1629,1645,1670,1673,1643,1591,1534,1479,1434,1403,1386,1368,1338,1303,1282,
+1276,1269,1249,1226,1215,1217,1218,1206,1181,1145,1100,1042,975,901,825,743,651,550,451,372,314,
+261,202,161,167,212,241,215,150,91,48,-14,-114,-222,-292,-316,-321,-339,-384,-463,-576,-699,
+-787,-818,-810,-796,-789,-780,-762,-743,-740,-760,-803,-850,-873,-858,-826,-805,-801,-792,-770,-758,-774,
+-787,-756,-686,-641,-661,-716,-729,-667,-566,-490,-467,-477,-481,-447,-365,-242,-102,28,128,185,196,
+158,82,-3,-79,-152,-261,-434,-651,-847,-968,-1014,-1027,-1036,-1040,-1030,-1017,-1016,-1026,-1029,-1018,-1004,
+-998,-997,-999,-1007,-1018,-1017,-994,-946,-871,-761,-624,-510,-489,-587,-767,-952,-1077,-1094,-994,-827,-708,
+-734,-890,-1054,-1117,-1076,-1009,-971,-950,-920,-887,-872,-876,-884,-892,-911,-943,-973,-997,-1021,-1046,-1058,
+-1051,-1037,-1035,-1042,-1046,-1046,-1058,-1086,-1116,-1135,-1146,-1166,-1198,-1232,-1261,-1288,-1317,-1350,-1384,-1419,-1455,
+-1494,-1538,-1589,-1645,-1700,-1753,-1809,-1869,-1932,-1993,-2057,-2124,-2190,-2247,-2297,-2347,-2396,-2441,-2479,-2520,-2572,
+-2636,-2701,-2764,-2820,-2870,-2913,-2955,-3004,-3059,-3115,-3168,-3221,-3273,-3319,-3357,-3393,-3434,-3479,-3523,-3564,-3610,
+-3661,-3711,-3753,-3789,-3827,-3868,-3909,-3946,-3980,-4017,-4060,-4110,-4164,-4215,-4253,-4278,-4297,-4316,-4337,-4358,-4379,
+-4401,-4420,-4433,-4438,-4440,-4440,-4438,-4433,-4429,-4428,-4424,-4403,-4368,-4338,-4335,-4365,-4416,-4479,-4553,-4635,-4703,
+-4732,-4724,-4709,-4711,-4724,-4727,-4713,-4698,-4699,-4714,-4727,-4734,-4740,-4756,-4783,-4814,-4837,-4841,-4825,-4804,-4790,
+-4787,-4786,-4780,-4772,-4763,-4748,-4727,-4711,-4712,-4732,-4753,-4765,-4770,-4774,-4780,-4782,-4777,-4762,-4734,-4693,-4648,
+-4611,-4582,-4556,-4526,-4487,-4437,-4376,-4313,-4257,-4207,-4153,-4091,-4029,-3975,-3920,-3857,-3787,-3721,-3666,-3620,-3579,
+-3544,-3515,-3485,-3452,-3423,-3398,-3368,-3323,-3267,-3213,-3165,-3117,-3066,-3019,-2974,-2922,-2863,-2807,-2768,-2743,-2719,
+-2687,-2646,-2591,-2520,-2444,-2380,-2332,-2287,-2232,-2168,-2105,-2045,-1985,-1928,-1870,-1786,-1647,-1461,-1281,-1156,-1087,
+-1033,-964,-889,-830,-792,-762,-728,-685,-629,-558,-482,-412,-345,-261,-150,-25,87,177,253,329,416,
+512,609,695,760,798,816,821,818,814,822,846,881,915,944,979,1028,1084,1141,1199,1261,1326,
+1383,1428,1473,1531,1596,1655,1704,1755,1816,1880,1934,1974,2009,2048,2092,2140,2191,2242,2286,2314,2328,
+2334,2338,2344,2360,2395,2452,2517,2580,2642,2717,2810,2912,3006,3088,3153,3197,3213,3214,3227,3273,3350,
+3434,3503,3556,3601,3648,3707,3781,3871,3968,4069,4174,4285,4393,4477,4522,4529,4514,4492,4470,4446,4426,
+4418,4428,4458,4501,4553,4609,4671,4740,4822,4918,5022,5122,5209,5279,5333,5373,5404,5436,5472,5506,5525,
+5532,5541,5562,5585,5592,5585,5585,5609,5649,5682,5691,5679,5661,5647,5639,5635,5632,5633,5642,5661,5680,
+5683,5667,5637,5592,5526,5445,5373,5337,5335,5345,5349,5352,5363,5380,5395,5402,5409,5423,5452,5493,5520,
+5503,5447,5417,5479,5617,5724,5706,5586,5476,5469,5558,5676,5768,5820,5837,5815,5755,5674,5600,5551,5524,
+5501,5468,5444,5475,5599,5802,6015,6161,6204,6160,6073,5993,5961,5992,6063,6117,6109,6034,5921,5786,5604,
+5344,5044,4833,4853,5133,5551,5929,6169,6294,6369,6423,6447,6443,6436,6442,6448,6436,6411,6389,6371,6349,
+6320,6288,6256,6222,6191,6165,6138,6094,6035,5975,5930,5890,5838,5764,5670,5562,5446,5340,5263,5219,5193,
+5167,5135,5095,5050,5009,4991,5005,5035,5061,5082,5117,5165,5201,5201,5175,5154,5159,5185,5215,5237,5246,
+5247,5244,5243,5251,5270,5287,5252,5071,4654,4012,3298,2735,2477,2504,2674,2833,2917,2941,2940,2927,2898,
+2854,2807,2757,2694,2610,2517,2433,2366,2302,2233,2166,2112,2059,1987,1892,1800,1733,1689,1647,1601,1562,
+1537,1517,1486,1446,1411,1388,1371,1352,1330,1303,1271,1233,1201,1181,1171,1156,1128,1097,1072,1054,1034,
+1009,983,964,948,926,897,870,853,841,823,797,775,766,756,722,658,584,530,504,488,464,
+430,396,372,350,322,284,241,199,163,134,116,105,94,78,57,37,24,9,-24,-79,-139,
+-179,-196,-204,-223,-255,-292,-327,-360,-390,-414,-431,-447,-471,-504,-539,-571,-599,-624,-643,-654,-663,
+-685,-723,-758,-766,-744,-721,-728,-770,-823,-859,-875,-881,-883,-883,-883,-893,-920,-954,-978,-977,-953,
+-927,-917,-929,-953,-973,-984,-996,-1019,-1052,-1081,-1101,-1114,-1123,-1128,-1128,-1129,-1134,-1143,-1149,-1151,-1152,
+-1155,-1154,-1149,-1149,-1158,-1170,-1177,-1177,-1176,-1176,-1175,-1171,-1168,-1168,-1169,-1165,-1156,-1151,-1149,-1145,-1134,
+-1122,-1113,-1108,-1100,-1089,-1078,-1069,-1056,-1038,-1020,-1006,-999,-991,-981,-969,-958,-945,-929,-907,-882,-857,
+-837,-821,-804,-782,-758,-737,-721,-707,-689,-667,-645,-625,-607,-590,-573,-558,-543,-528,-511,-493,-477,
+-461,-446,-433,-421,-407,-393,-381,-369,-357,-344,-335,-328,-323,-317,-310,-305,-301,-296,-289,-282,-275,
+-267,-259,-253,-249,-246,-240,-235,-233,-233,-234,-234,-237,-243,-249,-252,-252,-254,-258,-264,-270,-277,
+-283,-287,-291,-293,-293,-295,-299,-304,-309,-311,-312,-315,-319,-320,-321,-326,-336,-344,-347,-351,-358,
+-365,-366,-361,-360,-364,-366,-363,-359,-360,-365,-367,-366,-365,-365,-364,-364,-365,-367,-366,-359,-351,
+-345,-339,-332,-327,-328,-330,-324,-312,-298,-286,-275,-264,-256,-248,-236,-221,-208,-203,-203,-204,-203,
+-203,-199,-189,-176,-164,-153,-140,-126,-114,-104,-90,-70,-54,-46,-41,-28,-11,2,11,22,39,
+55,63,69,80,97,116,136,160,184,205,224,247,273,299,324,353,390,432,477,522,566,
+609,654,703,748,774,777,777,798,838,877,904,928,959,996,1032,1069,1111,1156,1197,1236,1282,
+1336,1388,1436,1478,1516,1551,1592,1647,1709,1760,1802,1853,1913,1955,1964,1976,2022,2056,1969,1723,1443,
+1344,1550,2005,2536,2981,3274,3444,3581,3769,4014,4237,4351,4347,4295,4269,4278,4290,4285,4278,4290,4325,
+4366,4384,4352,4251,4079,3847,3568,3267,2982,2747,2566,2418,2297,2233,2247,2298,2311,2248,2152,2101,2117,
+2157,2168,2138,2089,2040,1986,1920,1845,1774,1713,1656,1594,1526,1459,1402,1351,1285,1183,1044,890,746,
+620,504,391,278,163,42,-83,-206,-313,-397,-460,-509,-550,-590,-632,-675,-715,-747,-770,-779,-771,
+-752,-735,-730,-740,-758,-780,-799,-805,-788,-750,-710,-685,-683,-693,-705,-717,-728,-727,-699,-638,-562,
+-500,-469,-461,-461,-470,-512,-595,-696,-760,-751,-672,-566,-483,-451,-463,-491,-514,-538,-582,-655,-744,
+-844,-957,-1076,-1152,-1134,-1022,-874,-761,-706,-701,-732,-776,-782,-711,-593,-516,-533,-588,-586,-509,-434,
+-439,-507,-562,-569,-559,-573,-600,-599,-550,-481,-439,-448,-495,-546,-574,-580,-589,-608,-613,-576,-511,
+-469,-487,-553,-622,-663,-675,-675,-669,-660,-651,-646,-645,-645,-642,-639,-634,-625,-613,-598,-582,-563,
+-541,-517,-494,-471,-447,-421,-397,-373,-344,-308,-270,-237,-207,-173,-134,-93,-56,-20,20,64,106,
+143,182,225,270,310,346,385,425,463,495,524,557,592,625,657,692,731,767,798,831,871,
+915,954,988,1029,1080,1132,1169,1191,1206,1219,1226,1225,1220,1220,1227,1239,1249,1259,1266,1270,1272,
+1274,1277,1280,1284,1291,1300,1306,1309,1315,1323,1332,1338,1344,1355,1368,1379,1388,1404,1425,1444,1456,
+1468,1487,1510,1528,1541,1557,1577,1593,1603,1614,1632,1651,1663,1673,1682,1692,1706,1718,1726,1737,1758,
+1782,1801,1815,1834,1860,1889,1917,1945,1974,2007,2048,2095,2139,2167,2179,2188,2204,2218,2218,2208,2209,
+2232,2266,2296,2320,2344,2363,2364,2336,2293,2259,2248,2261,2285,2307,2323,2335,2351,2378,2419,2473,2526,
+2559,2560,2535,2503,2485,2490,2512,2544,2578,2614,2654,2700,2752,2802,2839,2851,2838,2809,2778,2756,2746,
+2751,2767,2785,2782,2743,2666,2574,2487,2413,2341,2262,2175,2088,2006,1929,1856,1789,1732,1696,1690,1708,
+1726,1720,1685,1635,1584,1534,1489,1455,1433,1415,1391,1368,1359,1360,1352,1323,1287,1263,1255,1245,1223,
+1188,1143,1092,1036,976,911,838,756,662,560,459,378,329,304,287,273,274,293,304,279,218,
+146,77,2,-82,-162,-216,-249,-281,-328,-394,-475,-566,-644,-686,-686,-663,-641,-625,-612,-606,-617,
+-647,-689,-735,-773,-787,-772,-745,-727,-720,-706,-686,-680,-699,-710,-677,-612,-567,-575,-607,-605,-552,
+-478,-426,-409,-408,-392,-342,-256,-149,-41,59,153,224,237,174,65,-28,-77,-120,-223,-410,-631,
+-808,-904,-945,-970,-990,-994,-980,-967,-970,-976,-969,-951,-939,-941,-947,-948,-947,-947,-940,-910,-844,
+-728,-547,-320,-128,-72,-201,-463,-743,-940,-1012,-977,-901,-857,-885,-957,-1005,-992,-946,-909,-890,-868,
+-836,-815,-817,-825,-822,-816,-829,-860,-891,-911,-928,-947,-958,-952,-941,-940,-952,-966,-979,-997,-1023,
+-1049,-1066,-1080,-1103,-1134,-1165,-1190,-1214,-1241,-1271,-1304,-1339,-1376,-1414,-1456,-1506,-1561,-1614,-1665,-1720,-1780,
+-1842,-1903,-1964,-2027,-2091,-2150,-2203,-2253,-2300,-2341,-2378,-2420,-2475,-2542,-2610,-2672,-2724,-2768,-2809,-2857,-2914,
+-2974,-3030,-3082,-3135,-3187,-3232,-3267,-3303,-3346,-3393,-3438,-3480,-3528,-3580,-3630,-3671,-3706,-3743,-3784,-3826,-3864,
+-3899,-3935,-3975,-4023,-4076,-4128,-4168,-4196,-4215,-4232,-4249,-4266,-4284,-4304,-4320,-4329,-4330,-4332,-4336,-4342,-4347,
+-4351,-4357,-4356,-4341,-4313,-4291,-4291,-4318,-4367,-4432,-4511,-4594,-4655,-4677,-4669,-4658,-4664,-4678,-4680,-4668,-4660,
+-4671,-4693,-4712,-4719,-4722,-4735,-4762,-4795,-4818,-4818,-4799,-4777,-4766,-4763,-4757,-4744,-4729,-4718,-4708,-4693,-4683,
+-4688,-4709,-4734,-4753,-4766,-4775,-4779,-4778,-4771,-4756,-4729,-4689,-4643,-4600,-4563,-4532,-4505,-4480,-4444,-4392,-4328,
+-4265,-4210,-4151,-4085,-4020,-3962,-3907,-3842,-3769,-3703,-3649,-3607,-3573,-3552,-3542,-3526,-3496,-3457,-3421,-3385,-3340,
+-3282,-3224,-3175,-3135,-3097,-3058,-3017,-2968,-2912,-2859,-2820,-2792,-2768,-2743,-2716,-2677,-2614,-2532,-2448,-2382,-2332,
+-2287,-2241,-2187,-2124,-2053,-1982,-1907,-1799,-1633,-1430,-1255,-1155,-1111,-1063,-983,-894,-830,-800,-780,-754,-719,
+-675,-620,-559,-498,-436,-357,-251,-127,-7,94,177,250,321,397,481,565,637,690,728,751,760,
+757,758,773,800,826,848,877,923,978,1033,1087,1146,1209,1266,1315,1365,1425,1488,1540,1582,1631,
+1693,1758,1805,1834,1862,1904,1963,2028,2094,2160,2219,2264,2295,2315,2332,2349,2373,2409,2460,2517,2572,
+2624,2683,2755,2838,2927,3014,3090,3142,3162,3166,3181,3227,3295,3365,3422,3469,3513,3562,3625,3704,3798,
+3895,3992,4097,4217,4339,4428,4464,4458,4441,4430,4421,4403,4383,4373,4379,4396,4421,4460,4515,4580,4643,
+4708,4783,4874,4969,5056,5133,5201,5259,5305,5342,5380,5418,5446,5458,5468,5491,5527,5557,5565,5561,5565,
+5588,5619,5638,5635,5616,5597,5585,5581,5581,5587,5602,5627,5649,5658,5650,5625,5576,5497,5404,5334,5307,
+5307,5303,5288,5291,5326,5374,5401,5395,5379,5379,5403,5440,5464,5453,5414,5396,5458,5595,5720,5737,5633,
+5496,5428,5466,5571,5681,5758,5792,5789,5758,5707,5646,5583,5527,5481,5443,5414,5411,5466,5601,5804,6026,
+6199,6273,6237,6130,6018,5959,5974,6034,6087,6090,6031,5918,5751,5514,5218,4953,4861,5023,5380,5772,6063,
+6226,6315,6375,6413,6426,6426,6425,6419,6401,6376,6354,6336,6315,6287,6260,6233,6204,6171,6135,6095,6047,
+5997,5960,5937,5908,5844,5737,5603,5476,5382,5332,5313,5296,5257,5196,5130,5072,5027,4997,4994,5017,5050,
+5078,5105,5149,5202,5234,5225,5192,5171,5182,5212,5241,5259,5268,5270,5268,5264,5266,5279,5284,5215,4968,
+4475,3793,3112,2651,2505,2597,2764,2885,2936,2948,2945,2926,2886,2833,2780,2730,2672,2599,2514,2429,2353,
+2286,2222,2160,2100,2038,1964,1880,1798,1730,1677,1629,1588,1556,1533,1508,1471,1429,1396,1378,1368,1358,
+1339,1309,1270,1231,1204,1191,1183,1166,1140,1115,1094,1076,1055,1037,1028,1024,1009,971,918,867,829,
+795,755,715,693,697,707,694,645,580,527,498,479,455,420,384,354,328,298,262,223,184,
+149,122,107,97,84,61,33,14,6,-4,-39,-101,-166,-207,-221,-227,-244,-275,-306,-333,-361,
+-396,-433,-462,-483,-503,-530,-558,-584,-607,-633,-661,-681,-689,-695,-717,-749,-771,-766,-747,-746,-776,
+-821,-859,-881,-895,-907,-911,-909,-908,-923,-953,-985,-1002,-998,-980,-961,-952,-958,-971,-985,-1000,-1019,
+-1044,-1070,-1092,-1112,-1127,-1137,-1139,-1137,-1139,-1144,-1147,-1149,-1149,-1151,-1152,-1151,-1154,-1164,-1176,-1181,-1180,
+-1179,-1180,-1181,-1178,-1174,-1173,-1176,-1175,-1168,-1161,-1158,-1156,-1149,-1137,-1126,-1118,-1112,-1103,-1093,-1082,-1067,
+-1049,-1031,-1017,-1008,-999,-987,-974,-961,-950,-937,-918,-892,-863,-837,-818,-802,-784,-761,-737,-719,-703,
+-687,-666,-642,-621,-604,-589,-574,-560,-547,-532,-516,-500,-483,-468,-455,-441,-428,-415,-402,-390,-377,
+-364,-354,-347,-340,-332,-323,-316,-312,-309,-304,-297,-290,-283,-276,-270,-267,-264,-260,-255,-250,-249,
+-249,-248,-247,-249,-254,-258,-261,-262,-263,-265,-267,-270,-275,-281,-289,-297,-301,-302,-301,-303,-307,
+-308,-307,-307,-311,-316,-317,-316,-321,-331,-338,-341,-343,-349,-355,-356,-353,-352,-353,-351,-344,-341,
+-344,-351,-353,-351,-349,-349,-348,-346,-345,-345,-342,-337,-330,-324,-318,-310,-307,-308,-309,-302,-289,
+-277,-266,-254,-242,-232,-223,-211,-197,-185,-181,-180,-178,-175,-173,-169,-161,-147,-135,-123,-112,-102,
+-95,-88,-73,-51,-31,-19,-12,-2,9,20,31,48,67,77,78,80,92,112,132,152,175,
+202,224,241,259,283,313,346,382,418,455,495,541,592,642,689,734,771,790,790,790,806,
+834,862,888,920,961,999,1030,1061,1102,1146,1185,1224,1270,1321,1368,1414,1462,1508,1543,1578,1633,
+1703,1762,1798,1834,1889,1939,1956,1962,2002,2047,1992,1776,1501,1381,1561,2003,2532,2966,3221,3335,3428,
+3612,3895,4171,4322,4332,4286,4268,4280,4280,4259,4247,4270,4312,4340,4332,4277,4170,4006,3790,3529,3243,
+2965,2729,2544,2394,2276,2219,2239,2293,2297,2216,2105,2055,2092,2155,2178,2146,2095,2048,1998,1927,1839,
+1752,1685,1636,1592,1539,1478,1420,1365,1297,1192,1052,900,761,640,525,408,290,173,50,-77,-198,
+-296,-370,-428,-477,-522,-565,-607,-648,-683,-711,-734,-750,-751,-736,-715,-702,-707,-725,-748,-767,-773,
+-755,-715,-668,-635,-623,-626,-633,-640,-644,-640,-615,-566,-504,-453,-421,-406,-403,-419,-464,-530,-594,
+-631,-635,-614,-575,-530,-498,-497,-524,-557,-585,-620,-683,-777,-886,-995,-1095,-1159,-1150,-1058,-915,-781,
+-701,-696,-761,-857,-910,-864,-741,-631,-594,-593,-547,-442,-353,-350,-420,-488,-517,-534,-570,-610,-610,
+-554,-476,-426,-435,-488,-548,-584,-595,-602,-615,-616,-581,-521,-482,-499,-561,-626,-662,-670,-667,-660,
+-650,-639,-634,-634,-635,-632,-627,-621,-614,-603,-587,-569,-547,-523,-499,-477,-455,-431,-404,-378,-354,
+-325,-289,-252,-219,-190,-158,-120,-80,-45,-10,28,71,113,151,189,231,274,313,347,383,422,
+459,490,520,555,591,627,661,698,736,770,800,834,876,919,955,986,1025,1076,1128,1166,1191,
+1210,1227,1235,1233,1230,1232,1239,1246,1252,1260,1270,1274,1275,1276,1281,1288,1293,1299,1305,1310,1313,
+1316,1324,1334,1342,1348,1356,1367,1377,1389,1406,1428,1446,1457,1468,1487,1511,1531,1547,1563,1582,1595,
+1601,1611,1632,1657,1673,1680,1691,1703,1720,1737,1751,1767,1789,1813,1833,1850,1872,1902,1935,1967,2000,
+2036,2074,2116,2160,2197,2213,2212,2212,2228,2252,2265,2265,2272,2296,2323,2332,2322,2313,2313,2312,2295,
+2265,2239,2232,2240,2254,2268,2286,2308,2334,2363,2400,2451,2511,2563,2591,2586,2559,2531,2521,2537,2573,
+2615,2657,2699,2746,2799,2850,2885,2893,2876,2849,2828,2821,2827,2843,2864,2882,2878,2834,2751,2653,2564,
+2485,2405,2315,2221,2133,2050,1970,1890,1819,1766,1739,1738,1754,1763,1748,1710,1665,1622,1579,1534,1493,
+1465,1443,1423,1409,1410,1418,1410,1377,1334,1301,1279,1257,1223,1180,1132,1080,1029,977,922,856,779,
+696,612,532,465,427,420,427,425,409,388,361,317,252,174,97,27,-34,-86,-130,-176,-233,
+-302,-377,-450,-510,-547,-556,-545,-528,-512,-496,-483,-489,-523,-574,-621,-657,-682,-695,-692,-678,-663,
+-649,-632,-615,-614,-628,-629,-595,-538,-496,-485,-483,-460,-413,-365,-337,-330,-327,-303,-240,-146,-55,
+12,72,153,236,258,178,41,-60,-88,-105,-203,-396,-609,-758,-829,-867,-908,-941,-947,-931,-919,
+-920,-918,-900,-877,-871,-884,-896,-895,-882,-866,-847,-814,-748,-618,-396,-108,146,237,100,-204,-542,
+-796,-927,-964,-961,-956,-958,-949,-918,-873,-838,-821,-806,-777,-749,-744,-760,-772,-767,-759,-773,-802,
+-828,-841,-851,-863,-870,-864,-858,-865,-884,-906,-923,-939,-959,-979,-998,-1019,-1045,-1071,-1094,-1115,-1138,
+-1165,-1196,-1230,-1267,-1305,-1341,-1379,-1426,-1479,-1533,-1584,-1637,-1696,-1757,-1815,-1872,-1930,-1992,-2053,-2108,-2157,
+-2200,-2239,-2278,-2326,-2384,-2451,-2518,-2577,-2627,-2669,-2711,-2763,-2824,-2886,-2941,-2993,-3046,-3099,-3144,-3180,-3216,
+-3260,-3308,-3354,-3400,-3449,-3501,-3546,-3582,-3614,-3652,-3695,-3738,-3778,-3815,-3850,-3889,-3934,-3985,-4036,-4077,-4107,
+-4129,-4148,-4164,-4180,-4197,-4214,-4228,-4233,-4233,-4235,-4242,-4254,-4267,-4281,-4291,-4291,-4279,-4258,-4242,-4242,-4263,
+-4307,-4374,-4458,-4541,-4595,-4611,-4605,-4604,-4618,-4633,-4632,-4622,-4622,-4643,-4674,-4696,-4703,-4704,-4713,-4736,-4766,
+-4787,-4787,-4769,-4748,-4738,-4734,-4724,-4705,-4686,-4675,-4667,-4659,-4657,-4667,-4689,-4716,-4740,-4760,-4776,-4782,-4777,
+-4766,-4749,-4723,-4685,-4642,-4599,-4559,-4521,-4489,-4461,-4431,-4387,-4331,-4273,-4216,-4152,-4081,-4010,-3947,-3886,-3813,
+-3734,-3664,-3611,-3570,-3541,-3534,-3545,-3552,-3531,-3487,-3440,-3400,-3355,-3296,-3234,-3185,-3152,-3125,-3094,-3054,-3008,
+-2960,-2918,-2883,-2850,-2815,-2783,-2759,-2735,-2690,-2617,-2530,-2452,-2394,-2351,-2311,-2260,-2191,-2106,-2015,-1920,-1795,
+-1621,-1421,-1254,-1154,-1095,-1025,-933,-855,-821,-817,-806,-774,-732,-695,-658,-617,-569,-513,-435,-329,-203,
+-79,25,109,176,236,299,371,447,519,583,640,686,708,707,699,703,721,743,761,785,822,
+871,921,971,1026,1088,1148,1204,1262,1327,1387,1434,1475,1526,1593,1655,1695,1718,1748,1803,1878,1954,
+2023,2085,2142,2189,2226,2259,2297,2340,2385,2430,2479,2533,2589,2643,2693,2742,2797,2865,2944,3022,3079,
+3106,3118,3141,3185,3242,3295,3340,3382,3428,3480,3544,3627,3724,3824,3919,4022,4144,4268,4358,4389,4380,
+4367,4365,4364,4353,4337,4333,4340,4348,4356,4382,4435,4502,4562,4612,4668,4742,4826,4908,4985,5063,5140,
+5205,5254,5296,5337,5373,5393,5405,5425,5463,5504,5527,5527,5522,5529,5551,5572,5577,5563,5542,5526,5520,
+5524,5536,5556,5580,5603,5618,5621,5606,5558,5472,5374,5304,5276,5265,5239,5208,5214,5273,5350,5392,5386,
+5358,5342,5346,5363,5382,5395,5397,5406,5458,5566,5681,5724,5655,5520,5410,5392,5464,5571,5661,5709,5723,
+5721,5712,5685,5631,5557,5483,5427,5388,5364,5364,5423,5569,5793,6037,6222,6297,6259,6147,6019,5930,5914,
+5962,6023,6047,6008,5901,5714,5441,5135,4930,4957,5225,5608,5943,6151,6256,6313,6352,6377,6392,6399,6394,
+6375,6347,6319,6295,6271,6246,6223,6202,6174,6136,6094,6051,6011,5979,5958,5940,5898,5807,5668,5516,5396,
+5337,5334,5349,5336,5277,5193,5116,5061,5023,4998,4994,5017,5056,5093,5130,5177,5226,5249,5233,5199,5184,
+5199,5231,5259,5276,5286,5291,5288,5278,5267,5258,5225,5092,4762,4202,3515,2914,2584,2553,2693,2843,2925,
+2952,2961,2959,2934,2883,2822,2764,2710,2652,2586,2510,2431,2358,2293,2233,2168,2099,2029,1961,1894,1823,
+1750,1680,1623,1582,1554,1529,1495,1453,1410,1379,1363,1357,1351,1337,1308,1267,1228,1204,1194,1186,1171,
+1149,1130,1112,1090,1071,1067,1085,1103,1090,1033,950,874,818,774,728,681,650,641,641,630,598,
+555,516,491,471,449,419,383,345,307,269,230,192,157,126,105,95,90,76,42,0,-29,
+-38,-41,-65,-116,-175,-215,-233,-245,-268,-300,-330,-353,-377,-411,-452,-489,-514,-532,-552,-576,-599,
+-619,-640,-665,-688,-698,-702,-715,-746,-780,-795,-790,-786,-800,-827,-851,-869,-888,-914,-936,-943,-937,
+-934,-944,-968,-997,-1019,-1025,-1017,-1004,-998,-1003,-1013,-1021,-1025,-1027,-1033,-1044,-1062,-1085,-1106,-1119,-1124,
+-1128,-1136,-1143,-1147,-1146,-1146,-1147,-1150,-1156,-1166,-1177,-1181,-1178,-1174,-1175,-1177,-1176,-1173,-1172,-1174,-1174,
+-1170,-1165,-1163,-1164,-1161,-1151,-1139,-1130,-1126,-1120,-1111,-1099,-1084,-1067,-1050,-1034,-1021,-1010,-998,-983,-967,
+-953,-941,-925,-901,-871,-842,-819,-801,-784,-762,-738,-718,-701,-684,-664,-642,-621,-604,-591,-579,-566,
+-553,-539,-523,-506,-491,-477,-463,-447,-432,-418,-407,-395,-382,-371,-363,-358,-351,-341,-331,-324,-320,
+-315,-308,-300,-293,-287,-282,-280,-279,-278,-273,-268,-265,-264,-263,-261,-261,-262,-264,-266,-268,-271,
+-274,-277,-277,-277,-278,-281,-288,-296,-303,-305,-304,-305,-307,-307,-304,-302,-306,-311,-312,-311,-315,
+-323,-330,-331,-331,-335,-342,-346,-344,-343,-341,-336,-329,-327,-333,-339,-340,-338,-336,-336,-333,-328,
+-324,-322,-320,-317,-313,-309,-302,-295,-291,-291,-288,-277,-262,-250,-241,-231,-218,-207,-198,-188,-176,
+-166,-163,-161,-157,-151,-146,-143,-137,-126,-113,-99,-86,-77,-73,-68,-55,-35,-14,0,10,20,
+29,39,52,71,88,94,93,98,116,138,156,171,192,216,236,253,274,301,335,371,408,
+445,480,520,570,628,685,728,755,768,773,780,798,824,844,855,871,907,954,992,1019,1048,
+1090,1132,1167,1205,1255,1308,1349,1387,1437,1493,1539,1577,1632,1705,1765,1795,1820,1871,1929,1957,1966,
+2002,2049,2004,1797,1521,1388,1555,1988,2509,2929,3161,3247,3316,3493,3788,4088,4264,4298,4277,4277,4291,
+4276,4239,4222,4247,4283,4291,4263,4205,4111,3966,3763,3509,3224,2938,2690,2495,2347,2240,2195,2224,2280,
+2281,2195,2086,2046,2096,2167,2186,2145,2090,2045,1998,1922,1821,1721,1650,1612,1588,1557,1509,1450,1386,
+1307,1198,1059,914,783,667,549,424,297,174,51,-72,-185,-274,-341,-397,-449,-497,-539,-579,-616,
+-645,-667,-688,-711,-728,-728,-712,-694,-688,-695,-712,-731,-743,-736,-706,-661,-617,-582,-557,-539,-532,
+-536,-543,-538,-511,-469,-428,-397,-377,-369,-380,-413,-457,-495,-521,-547,-575,-590,-579,-556,-551,-573,
+-598,-609,-625,-684,-792,-916,-1020,-1096,-1142,-1145,-1091,-990,-885,-822,-825,-890,-981,-1038,-1011,-912,-810,
+-754,-726,-668,-567,-479,-457,-492,-532,-551,-568,-603,-638,-637,-590,-527,-487,-491,-528,-573,-600,-607,
+-608,-616,-621,-605,-569,-545,-558,-602,-643,-661,-661,-657,-652,-643,-633,-626,-626,-626,-621,-614,-607,
+-599,-586,-568,-546,-523,-499,-475,-454,-434,-412,-386,-359,-333,-303,-269,-233,-200,-169,-137,-99,-61,
+-28,3,39,80,122,160,198,238,277,312,345,380,417,453,487,521,559,598,634,671,708,
+745,776,804,839,882,923,956,985,1026,1080,1132,1168,1191,1212,1230,1238,1236,1235,1241,1247,1248,
+1247,1253,1264,1272,1273,1274,1281,1291,1298,1303,1308,1313,1315,1316,1322,1332,1342,1350,1359,1371,1384,
+1399,1417,1437,1454,1465,1477,1496,1522,1545,1562,1577,1594,1605,1611,1619,1638,1662,1680,1691,1705,1721,
+1740,1761,1780,1799,1819,1840,1860,1881,1909,1943,1980,2017,2055,2091,2123,2155,2187,2215,2226,2224,2227,
+2253,2291,2317,2325,2331,2347,2359,2344,2302,2262,2248,2254,2258,2249,2236,2229,2228,2231,2241,2262,2295,
+2328,2356,2387,2433,2495,2559,2603,2615,2599,2576,2566,2579,2614,2662,2715,2769,2820,2866,2901,2923,2928,
+2918,2904,2895,2896,2903,2910,2918,2923,2913,2871,2796,2707,2624,2544,2457,2358,2258,2166,2081,1994,1908,
+1835,1785,1764,1767,1781,1787,1770,1735,1696,1659,1620,1575,1530,1496,1471,1451,1441,1444,1452,1444,1411,
+1367,1330,1298,1263,1218,1171,1124,1078,1034,992,947,894,834,777,726,679,634,602,592,592,575,
+529,462,393,327,261,195,136,87,44,2,-43,-101,-169,-245,-317,-377,-415,-430,-426,-419,-416,
+-413,-404,-398,-415,-458,-505,-532,-539,-547,-565,-585,-595,-592,-578,-561,-548,-548,-555,-550,-520,-475,
+-432,-397,-363,-324,-286,-259,-246,-247,-252,-232,-164,-60,28,70,97,160,245,268,173,19,-81,
+-90,-93,-192,-389,-588,-706,-755,-792,-844,-884,-889,-871,-859,-857,-849,-827,-807,-809,-826,-838,-831,
+-810,-783,-756,-726,-676,-564,-355,-68,196,302,185,-101,-427,-680,-827,-895,-922,-924,-902,-859,-812,
+-778,-762,-749,-724,-692,-674,-682,-702,-711,-705,-705,-723,-752,-773,-786,-798,-811,-818,-816,-816,-827,
+-846,-863,-873,-882,-895,-913,-935,-961,-985,-1004,-1021,-1040,-1065,-1094,-1127,-1162,-1199,-1235,-1267,-1300,-1343,
+-1395,-1450,-1503,-1556,-1614,-1674,-1730,-1784,-1839,-1898,-1958,-2013,-2060,-2100,-2137,-2180,-2234,-2297,-2362,-2425,-2482,
+-2532,-2578,-2623,-2676,-2736,-2796,-2850,-2902,-2957,-3011,-3057,-3094,-3131,-3176,-3226,-3275,-3325,-3374,-3420,-3457,-3487,
+-3518,-3557,-3603,-3648,-3690,-3729,-3766,-3803,-3844,-3891,-3939,-3982,-4015,-4042,-4064,-4083,-4100,-4115,-4129,-4137,-4140,
+-4140,-4146,-4158,-4175,-4195,-4214,-4228,-4229,-4218,-4202,-4191,-4189,-4201,-4237,-4303,-4392,-4476,-4527,-4541,-4541,-4552,
+-4574,-4589,-4586,-4577,-4584,-4613,-4649,-4675,-4683,-4684,-4691,-4709,-4734,-4751,-4751,-4734,-4716,-4705,-4699,-4687,-4668,
+-4650,-4638,-4632,-4629,-4634,-4651,-4675,-4701,-4726,-4750,-4770,-4777,-4770,-4756,-4737,-4712,-4678,-4639,-4602,-4563,-4520,
+-4476,-4438,-4404,-4367,-4322,-4271,-4214,-4145,-4067,-3993,-3926,-3855,-3768,-3676,-3601,-3550,-3516,-3497,-3503,-3533,-3558,
+-3550,-3508,-3458,-3416,-3371,-3309,-3240,-3187,-3158,-3140,-3116,-3079,-3038,-3003,-2978,-2955,-2921,-2875,-2828,-2797,-2775,
+-2743,-2686,-2609,-2533,-2469,-2417,-2370,-2313,-2234,-2132,-2016,-1895,-1756,-1589,-1412,-1263,-1156,-1068,-971,-878,-828,
+-834,-856,-844,-795,-740,-705,-686,-664,-630,-578,-501,-395,-270,-149,-47,32,97,154,212,276,344,
+414,487,562,626,660,658,641,634,645,664,680,700,730,770,814,860,912,969,1028,1090,1159,
+1233,1297,1345,1389,1445,1513,1574,1610,1633,1671,1735,1812,1882,1936,1981,2022,2060,2096,2141,2203,2277,
+2346,2401,2448,2500,2563,2628,2683,2722,2757,2804,2870,2942,3000,3035,3061,3096,3145,3198,3241,3277,3316,
+3362,3414,3478,3560,3659,3760,3854,3952,4065,4183,4271,4308,4310,4307,4312,4313,4302,4290,4290,4298,4300,
+4299,4317,4367,4432,4488,4529,4573,4634,4706,4778,4851,4934,5026,5109,5171,5218,5263,5307,5340,5358,5374,
+5401,5436,5466,5480,5482,5485,5495,5509,5516,5510,5494,5477,5467,5470,5484,5505,5529,5550,5567,5576,5567,
+5524,5445,5356,5290,5252,5217,5166,5122,5128,5194,5276,5326,5334,5326,5322,5317,5312,5320,5347,5377,5393,
+5411,5466,5557,5632,5625,5531,5417,5361,5393,5479,5559,5603,5620,5636,5659,5669,5643,5574,5488,5414,5365,
+5333,5310,5315,5384,5536,5750,5974,6154,6250,6243,6140,5993,5878,5848,5892,5957,5992,5973,5876,5667,5363,
+5075,4962,5104,5428,5779,6036,6177,6244,6278,6301,6322,6340,6347,6335,6305,6269,6235,6206,6183,6165,6148,
+6125,6097,6067,6037,6006,5973,5938,5892,5817,5702,5560,5427,5341,5314,5325,5331,5297,5225,5146,5088,5054,
+5027,5001,4994,5016,5059,5103,5145,5189,5228,5243,5226,5200,5193,5214,5248,5275,5291,5297,5296,5289,5275,
+5253,5208,5103,4869,4446,3846,3208,2732,2546,2613,2777,2900,2951,2968,2979,2974,2939,2880,2819,2763,2708,
+2649,2587,2522,2452,2382,2317,2254,2183,2106,2034,1974,1919,1854,1773,1690,1624,1581,1551,1519,1479,1434,
+1394,1365,1347,1339,1334,1323,1299,1262,1223,1197,1185,1178,1167,1153,1140,1123,1099,1077,1081,1113,1146,
+1137,1073,976,886,822,778,737,693,650,613,583,558,538,518,497,478,460,442,420,387,345,
+298,250,208,169,132,99,75,67,66,57,25,-22,-61,-79,-83,-98,-136,-185,-226,-252,-272,
+-298,-330,-363,-389,-412,-439,-473,-508,-534,-550,-564,-585,-609,-630,-647,-667,-690,-707,-716,-727,-752,
+-787,-814,-822,-822,-827,-840,-851,-861,-882,-917,-951,-963,-952,-933,-926,-941,-974,-1011,-1035,-1039,-1029,
+-1024,-1031,-1044,-1048,-1040,-1023,-1008,-1001,-1009,-1029,-1055,-1075,-1087,-1098,-1115,-1133,-1144,-1145,-1143,-1143,-1147,
+-1152,-1159,-1167,-1171,-1169,-1164,-1161,-1162,-1162,-1160,-1158,-1158,-1159,-1159,-1157,-1158,-1161,-1162,-1155,-1145,-1138,
+-1136,-1133,-1125,-1114,-1101,-1087,-1070,-1052,-1035,-1021,-1009,-994,-977,-960,-946,-931,-911,-884,-854,-828,-808,
+-789,-769,-746,-725,-707,-690,-671,-649,-629,-613,-600,-587,-573,-559,-545,-528,-511,-496,-483,-469,-451,
+-433,-418,-407,-397,-386,-376,-369,-364,-356,-346,-337,-331,-327,-319,-309,-301,-294,-290,-288,-289,-290,
+-288,-283,-278,-276,-276,-274,-271,-271,-274,-275,-275,-276,-279,-284,-286,-287,-288,-289,-290,-291,-296,
+-301,-303,-303,-304,-307,-308,-305,-304,-306,-310,-309,-307,-310,-318,-324,-324,-322,-325,-330,-333,-333,
+-332,-330,-326,-322,-322,-326,-329,-328,-326,-325,-324,-318,-311,-307,-305,-304,-302,-299,-296,-288,-278,
+-271,-269,-264,-251,-235,-223,-215,-205,-193,-182,-174,-166,-155,-147,-143,-141,-136,-130,-125,-122,-118,
+-109,-97,-82,-68,-56,-50,-45,-34,-16,1,14,25,37,48,61,76,94,106,110,113,126,
+148,170,186,202,223,244,260,277,303,335,367,396,429,470,513,557,608,669,728,762,763,
+742,728,744,789,837,859,858,864,897,943,976,999,1033,1080,1121,1149,1184,1240,1299,1337,1363,
+1406,1468,1526,1574,1630,1702,1759,1782,1800,1848,1912,1949,1966,2005,2051,2006,1798,1518,1380,1539,1963,
+2474,2889,3121,3210,3277,3443,3726,4022,4210,4272,4282,4303,4319,4297,4253,4234,4247,4256,4235,4196,4151,
+4081,3949,3746,3490,3203,2914,2657,2457,2313,2218,2180,2203,2248,2244,2166,2074,2051,2108,2176,2186,2143,
+2091,2053,2003,1916,1801,1690,1614,1579,1571,1562,1532,1476,1401,1308,1194,1062,929,808,692,567,431,
+297,171,51,-64,-166,-245,-308,-366,-424,-474,-514,-550,-585,-613,-631,-649,-675,-701,-714,-706,-689,
+-677,-677,-688,-704,-717,-719,-702,-667,-621,-566,-508,-457,-429,-431,-452,-467,-459,-433,-401,-375,-356,
+-346,-349,-370,-402,-435,-467,-504,-543,-568,-569,-562,-571,-596,-611,-601,-604,-666,-792,-928,-1024,-1076,
+-1106,-1123,-1112,-1072,-1025,-1000,-1006,-1033,-1065,-1080,-1059,-1004,-945,-909,-888,-849,-781,-711,-672,-661,-655,
+-644,-643,-659,-674,-668,-637,-602,-580,-575,-585,-601,-610,-608,-604,-610,-622,-628,-620,-613,-621,-642,
+-658,-658,-652,-650,-648,-641,-630,-624,-624,-623,-616,-606,-597,-586,-570,-548,-526,-503,-480,-456,-433,
+-414,-394,-371,-344,-316,-285,-252,-217,-184,-151,-116,-78,-41,-8,21,54,92,132,171,208,244,
+280,314,347,381,417,453,490,528,569,608,645,682,720,755,785,813,849,892,931,962,995,
+1042,1099,1149,1179,1197,1214,1230,1236,1233,1232,1239,1246,1244,1239,1243,1256,1267,1269,1270,1277,1285,
+1290,1293,1298,1306,1310,1312,1318,1328,1340,1350,1361,1377,1395,1413,1429,1447,1465,1478,1492,1511,1536,
+1559,1577,1591,1606,1619,1627,1636,1651,1672,1691,1707,1723,1739,1759,1780,1801,1822,1843,1865,1887,1914,
+1947,1983,2021,2059,2095,2125,2145,2160,2182,2211,2234,2249,2266,2300,2341,2368,2373,2374,2384,2390,2364,
+2306,2247,2221,2228,2244,2248,2242,2235,2232,2231,2239,2261,2295,2329,2355,2383,2427,2491,2559,2609,2629,
+2627,2622,2625,2642,2672,2718,2780,2846,2901,2934,2946,2951,2956,2961,2964,2965,2965,2959,2944,2924,2904,
+2882,2846,2790,2723,2653,2579,2491,2388,2284,2189,2100,2010,1924,1855,1813,1797,1801,1814,1819,1803,1770,
+1732,1697,1659,1615,1571,1535,1510,1490,1478,1477,1478,1464,1430,1386,1347,1309,1264,1213,1165,1124,1088,
+1053,1020,988,952,916,888,870,853,826,794,765,735,685,603,501,404,327,271,231,201,174,
+141,98,43,-19,-87,-156,-220,-270,-300,-310,-312,-316,-326,-333,-334,-342,-369,-407,-429,-417,-388,
+-378,-402,-444,-479,-493,-489,-479,-470,-469,-472,-470,-454,-421,-373,-314,-256,-214,-189,-176,-167,-171,
+-186,-177,-106,12,112,150,159,204,275,282,172,12,-79,-76,-79,-189,-388,-569,-662,-696,-731,
+-783,-818,-816,-797,-787,-785,-777,-760,-750,-756,-767,-767,-753,-730,-702,-674,-648,-615,-542,-391,-170,
+43,137,53,-167,-422,-620,-736,-789,-806,-797,-769,-735,-714,-708,-702,-680,-644,-616,-614,-632,-648,
+-649,-646,-654,-676,-698,-715,-728,-744,-759,-769,-774,-782,-794,-806,-812,-816,-821,-833,-851,-875,-899,
+-919,-933,-948,-971,-1001,-1032,-1063,-1098,-1133,-1165,-1193,-1223,-1263,-1314,-1368,-1420,-1474,-1532,-1591,-1647,-1701,
+-1754,-1811,-1868,-1921,-1966,-2003,-2040,-2087,-2147,-2213,-2276,-2333,-2387,-2440,-2491,-2541,-2593,-2649,-2705,-2760,-2815,
+-2872,-2926,-2970,-3007,-3047,-3094,-3147,-3200,-3251,-3298,-3337,-3366,-3392,-3425,-3467,-3513,-3559,-3602,-3644,-3683,-3719,
+-3756,-3799,-3845,-3889,-3926,-3956,-3980,-4000,-4017,-4031,-4041,-4044,-4045,-4051,-4064,-4082,-4103,-4126,-4150,-4165,-4165,
+-4154,-4140,-4132,-4127,-4129,-4155,-4221,-4316,-4406,-4460,-4478,-4485,-4505,-4533,-4550,-4547,-4541,-4552,-4585,-4624,-4651,
+-4661,-4663,-4668,-4683,-4704,-4719,-4718,-4704,-4686,-4674,-4666,-4655,-4638,-4621,-4609,-4603,-4604,-4616,-4638,-4664,-4688,
+-4710,-4734,-4754,-4760,-4751,-4736,-4718,-4695,-4664,-4627,-4593,-4556,-4513,-4465,-4420,-4382,-4346,-4307,-4260,-4202,-4131,
+-4054,-3982,-3913,-3829,-3723,-3611,-3525,-3475,-3452,-3448,-3470,-3516,-3557,-3561,-3527,-3479,-3436,-3388,-3319,-3240,-3178,
+-3146,-3133,-3117,-3089,-3059,-3038,-3029,-3019,-2993,-2946,-2893,-2851,-2820,-2786,-2737,-2674,-2608,-2544,-2480,-2415,-2341,
+-2246,-2123,-1978,-1827,-1676,-1527,-1387,-1267,-1164,-1060,-948,-859,-831,-857,-884,-864,-801,-740,-710,-704,-697,
+-676,-634,-566,-469,-353,-238,-137,-53,16,76,130,185,245,315,398,487,565,607,607,585,569,
+572,585,599,617,644,680,720,762,806,853,903,964,1042,1129,1206,1264,1313,1371,1439,1498,1537,
+1567,1609,1668,1729,1775,1805,1828,1851,1877,1911,1965,2045,2139,2223,2285,2331,2384,2456,2538,2609,2658,
+2692,2732,2787,2851,2909,2953,2993,3042,3102,3158,3199,3232,3266,3309,3359,3420,3499,3595,3695,3789,3882,
+3984,4090,4176,4225,4243,4250,4256,4255,4245,4235,4234,4237,4235,4235,4255,4305,4366,4417,4453,4491,4544,
+4607,4672,4741,4825,4923,5017,5089,5142,5189,5238,5281,5309,5325,5339,5360,5390,5419,5441,5452,5455,5457,
+5460,5460,5451,5435,5421,5417,5429,5452,5477,5499,5513,5518,5506,5467,5406,5340,5284,5236,5178,5111,5066,
+5072,5125,5186,5224,5249,5280,5310,5316,5298,5289,5309,5336,5330,5301,5306,5385,5501,5566,5528,5427,5350,
+5350,5408,5468,5498,5508,5525,5558,5589,5590,5551,5482,5410,5355,5319,5292,5275,5284,5342,5462,5640,5852,
+6060,6200,6222,6125,5979,5868,5832,5853,5897,5937,5935,5829,5591,5285,5061,5042,5235,5535,5821,6027,6147,
+6204,6227,6242,6258,6270,6263,6235,6198,6165,6142,6125,6108,6089,6070,6056,6047,6029,5990,5928,5851,5767,
+5671,5562,5453,5368,5324,5311,5304,5275,5215,5143,5087,5057,5040,5020,4998,4996,5023,5068,5113,5153,5193,
+5226,5237,5222,5202,5201,5226,5261,5291,5304,5300,5287,5273,5260,5226,5128,4917,4554,4040,3445,2917,2607,
+2563,2697,2855,2944,2971,2985,2997,2984,2935,2871,2816,2767,2712,2652,2591,2532,2467,2397,2326,2258,2187,
+2113,2045,1990,1938,1870,1785,1698,1629,1582,1545,1505,1460,1416,1380,1352,1330,1314,1305,1297,1282,1254,
+1218,1188,1170,1161,1155,1149,1143,1128,1103,1078,1072,1093,1117,1109,1054,970,888,830,793,764,728,
+678,614,552,509,491,484,475,458,442,430,416,391,350,301,251,206,165,125,85,53,35,
+31,25,4,-31,-69,-97,-115,-137,-168,-207,-244,-275,-299,-322,-350,-384,-418,-446,-468,-493,-524,
+-551,-566,-575,-588,-611,-634,-652,-670,-692,-713,-727,-735,-753,-784,-815,-833,-839,-845,-853,-861,-871,
+-893,-927,-958,-963,-942,-916,-907,-925,-961,-998,-1018,-1015,-1002,-1000,-1018,-1044,-1058,-1053,-1035,-1016,-1003,
+-1001,-1010,-1026,-1040,-1049,-1062,-1084,-1111,-1130,-1136,-1135,-1138,-1144,-1148,-1150,-1152,-1155,-1156,-1151,-1146,-1144,
+-1143,-1142,-1138,-1137,-1139,-1141,-1141,-1142,-1146,-1147,-1144,-1138,-1134,-1133,-1133,-1127,-1118,-1108,-1098,-1083,-1065,
+-1046,-1030,-1017,-1003,-987,-971,-955,-941,-923,-900,-874,-847,-824,-804,-783,-762,-741,-722,-704,-685,-665,
+-646,-630,-614,-598,-581,-566,-551,-534,-516,-501,-488,-475,-457,-437,-421,-411,-402,-392,-382,-375,-368,
+-359,-349,-342,-337,-331,-322,-312,-305,-301,-298,-297,-299,-301,-300,-295,-290,-289,-288,-284,-281,-282,
+-286,-287,-287,-287,-289,-290,-290,-292,-297,-302,-304,-303,-302,-304,-306,-306,-306,-309,-311,-310,-309,
+-310,-310,-308,-306,-309,-315,-320,-320,-318,-320,-323,-324,-323,-323,-323,-322,-321,-321,-322,-320,-317,
+-314,-312,-309,-302,-296,-294,-294,-292,-288,-285,-281,-271,-258,-248,-245,-241,-230,-216,-203,-194,-185,
+-173,-164,-157,-149,-138,-127,-121,-117,-113,-108,-105,-102,-97,-89,-78,-64,-50,-38,-30,-23,-12,
+3,19,30,40,52,67,84,102,117,126,129,137,154,174,192,209,233,260,279,289,305,
+335,370,395,414,446,497,552,598,640,692,747,777,762,716,686,708,775,841,866,860,861,
+892,933,959,978,1015,1069,1111,1133,1164,1223,1289,1329,1349,1384,1446,1510,1564,1622,1690,1742,1760,
+1774,1822,1888,1933,1957,2002,2050,2003,1790,1506,1364,1519,1940,2455,2885,3141,3247,3313,3458,3712,3992,
+4188,4274,4311,4344,4362,4338,4297,4275,4268,4243,4195,4156,4134,4077,3935,3708,3438,3159,2886,2639,2447,
+2315,2232,2192,2192,2207,2188,2120,2050,2046,2106,2166,2171,2133,2092,2058,2003,1905,1782,1668,1590,1554,
+1551,1557,1545,1495,1409,1300,1179,1056,940,828,710,575,429,290,165,49,-59,-151,-221,-279,-340,
+-402,-452,-486,-516,-550,-582,-605,-624,-649,-675,-689,-685,-671,-663,-665,-676,-688,-695,-695,-686,-665,
+-629,-571,-494,-418,-368,-358,-377,-397,-399,-380,-356,-341,-335,-333,-335,-347,-375,-417,-460,-494,-512,
+-515,-514,-528,-564,-602,-610,-588,-583,-651,-785,-922,-1007,-1042,-1064,-1090,-1106,-1104,-1098,-1103,-1108,-1096,
+-1067,-1040,-1024,-1011,-995,-980,-967,-948,-913,-869,-827,-790,-755,-726,-710,-705,-699,-683,-664,-651,-641,
+-630,-617,-610,-608,-605,-601,-605,-620,-636,-643,-645,-649,-656,-657,-651,-646,-647,-648,-641,-630,-625,
+-625,-624,-615,-602,-589,-576,-557,-535,-515,-497,-476,-451,-425,-402,-380,-357,-329,-299,-267,-234,-200,
+-166,-133,-97,-60,-22,10,41,73,109,146,183,218,252,286,318,352,387,423,459,499,540,
+582,619,654,690,728,764,796,827,864,905,943,975,1012,1063,1120,1163,1184,1196,1211,1228,1233,
+1227,1223,1229,1237,1237,1233,1237,1250,1261,1264,1264,1268,1273,1275,1276,1283,1295,1305,1311,1318,1330,
+1341,1351,1363,1382,1403,1421,1435,1451,1470,1489,1505,1521,1542,1563,1582,1598,1616,1634,1648,1659,1672,
+1689,1707,1722,1738,1755,1772,1793,1817,1842,1866,1890,1918,1951,1986,2021,2054,2087,2118,2140,2150,2156,
+2177,2218,2266,2306,2338,2369,2397,2412,2411,2409,2419,2426,2403,2344,2278,2240,2238,2248,2251,2244,2238,
+2239,2243,2253,2272,2301,2331,2356,2385,2432,2499,2571,2623,2649,2660,2673,2694,2718,2744,2781,2836,2902,
+2954,2974,2970,2964,2973,2994,3013,3021,3017,2996,2955,2901,2850,2811,2780,2746,2704,2654,2589,2503,2401,
+2298,2203,2112,2025,1948,1895,1866,1856,1858,1867,1870,1855,1819,1776,1735,1695,1653,1613,1581,1557,1537,
+1522,1514,1508,1487,1449,1404,1362,1322,1274,1220,1172,1136,1107,1077,1048,1023,1003,989,983,983,979,
+961,928,884,823,738,628,510,408,336,296,278,271,259,232,188,133,73,11,-52,-110,-155,
+-183,-199,-213,-230,-249,-263,-275,-297,-330,-358,-353,-308,-256,-235,-259,-306,-348,-372,-382,-384,-381,
+-377,-379,-388,-391,-370,-314,-235,-162,-120,-105,-95,-83,-86,-108,-105,-29,103,215,253,254,282,
+327,308,183,28,-52,-51,-72,-199,-395,-553,-625,-650,-683,-727,-749,-739,-723,-719,-721,-714,-704,
+-702,-707,-703,-686,-665,-646,-627,-601,-574,-549,-511,-431,-305,-176,-115,-165,-304,-468,-595,-665,-689,
+-687,-670,-650,-640,-644,-651,-640,-605,-565,-548,-562,-587,-601,-604,-608,-621,-639,-651,-657,-665,-677,
+-688,-698,-710,-724,-737,-743,-745,-749,-759,-773,-792,-814,-835,-852,-866,-885,-913,-944,-972,-1001,-1033,
+-1068,-1098,-1124,-1152,-1191,-1239,-1290,-1340,-1394,-1450,-1508,-1565,-1619,-1673,-1727,-1780,-1831,-1876,-1914,-1953,-2002,
+-2065,-2132,-2192,-2245,-2296,-2349,-2402,-2453,-2506,-2560,-2616,-2673,-2731,-2789,-2840,-2882,-2920,-2963,-3015,-3070,-3124,
+-3173,-3216,-3249,-3274,-3301,-3338,-3383,-3429,-3473,-3516,-3560,-3600,-3635,-3670,-3711,-3757,-3803,-3841,-3871,-3894,-3912,
+-3928,-3942,-3950,-3953,-3958,-3971,-3992,-4015,-4037,-4060,-4084,-4099,-4096,-4082,-4069,-4060,-4051,-4046,-4067,-4136,-4241,
+-4342,-4403,-4424,-4436,-4461,-4495,-4517,-4520,-4519,-4531,-4562,-4599,-4625,-4636,-4638,-4643,-4656,-4674,-4688,-4688,-4675,
+-4659,-4648,-4641,-4629,-4612,-4595,-4584,-4582,-4588,-4604,-4628,-4652,-4674,-4695,-4718,-4736,-4739,-4728,-4712,-4696,-4675,
+-4643,-4605,-4569,-4535,-4496,-4452,-4409,-4369,-4331,-4289,-4241,-4186,-4125,-4060,-3995,-3925,-3831,-3709,-3579,-3476,-3416,
+-3392,-3397,-3434,-3494,-3552,-3572,-3550,-3505,-3455,-3395,-3316,-3230,-3162,-3128,-3116,-3108,-3094,-3078,-3068,-3066,-3065,
+-3049,-3015,-2968,-2922,-2879,-2832,-2779,-2724,-2669,-2607,-2532,-2445,-2349,-2235,-2090,-1917,-1740,-1583,-1454,-1352,-1264,
+-1175,-1070,-957,-872,-842,-858,-869,-839,-778,-725,-705,-708,-710,-699,-672,-623,-546,-448,-341,-237,-143,
+-62,0,48,91,144,216,308,409,497,547,554,535,515,508,511,520,537,562,595,632,670,
+707,741,778,832,913,1013,1108,1181,1236,1291,1352,1409,1453,1490,1531,1576,1613,1633,1641,1647,1658,
+1678,1713,1773,1858,1953,2036,2099,2150,2212,2296,2394,2485,2555,2606,2651,2702,2759,2814,2864,2916,2978,
+3046,3106,3149,3180,3211,3251,3300,3358,3431,3521,3619,3715,3807,3901,3996,4079,4137,4168,4181,4183,4181,
+4175,4170,4165,4159,4152,4158,4189,4241,4297,4341,4375,4413,4464,4523,4584,4652,4735,4831,4926,5004,5064,
+5114,5163,5210,5245,5263,5271,5282,5307,5347,5389,5414,5418,5411,5406,5405,5400,5386,5367,5357,5366,5390,
+5419,5443,5457,5454,5432,5395,5352,5312,5272,5218,5147,5079,5048,5066,5107,5135,5146,5169,5222,5278,5295,
+5272,5249,5255,5264,5232,5171,5157,5246,5402,5513,5504,5404,5312,5295,5341,5392,5416,5421,5432,5457,5484,
+5498,5492,5461,5411,5356,5312,5285,5267,5254,5253,5287,5379,5544,5768,5997,6157,6196,6126,6010,5905,5839,
+5821,5849,5892,5884,5756,5510,5237,5065,5069,5236,5494,5761,5971,6098,6154,6172,6180,6184,6175,6152,6125,
+6105,6095,6082,6058,6023,5991,5973,5965,5942,5883,5790,5687,5595,5517,5449,5390,5350,5328,5310,5275,5218,
+5149,5092,5058,5041,5024,5002,4988,5000,5037,5081,5119,5157,5199,5235,5246,5230,5209,5206,5228,5264,5298,
+5312,5301,5274,5254,5240,5185,5014,4674,4176,3597,3060,2691,2560,2635,2799,2928,2982,2994,3007,3014,2988,
+2928,2863,2812,2765,2707,2640,2579,2522,2458,2384,2308,2240,2176,2114,2054,1999,1940,1869,1787,1707,1641,
+1588,1540,1494,1447,1405,1369,1339,1313,1290,1274,1265,1258,1243,1215,1183,1158,1145,1139,1134,1129,1119,
+1101,1077,1058,1051,1048,1031,991,934,875,830,802,783,756,705,628,546,490,467,462,452,433,
+415,407,401,384,351,306,257,211,169,132,96,61,30,8,-6,-18,-35,-58,-90,-129,-168,
+-202,-230,-256,-284,-310,-332,-355,-389,-430,-467,-491,-514,-543,-574,-591,-594,-596,-611,-634,-653,-670,
+-689,-709,-722,-729,-744,-775,-810,-834,-846,-853,-862,-870,-882,-905,-936,-958,-953,-927,-904,-907,-937,
+-977,-1005,-1006,-983,-958,-955,-982,-1021,-1049,-1056,-1052,-1048,-1045,-1041,-1038,-1037,-1039,-1041,-1048,-1065,-1087,
+-1106,-1113,-1118,-1128,-1141,-1149,-1148,-1145,-1144,-1145,-1142,-1136,-1133,-1132,-1131,-1128,-1126,-1126,-1128,-1127,-1125,
+-1125,-1126,-1125,-1122,-1119,-1119,-1120,-1117,-1110,-1102,-1093,-1081,-1066,-1049,-1034,-1019,-1006,-992,-978,-965,-950,
+-933,-913,-891,-867,-844,-822,-801,-779,-758,-738,-718,-699,-681,-664,-647,-630,-610,-591,-575,-559,-543,
+-525,-509,-497,-484,-467,-448,-432,-422,-412,-402,-392,-383,-375,-365,-356,-349,-345,-338,-329,-320,-315,
+-313,-311,-309,-311,-314,-313,-310,-306,-305,-303,-299,-295,-295,-297,-299,-299,-299,-300,-298,-293,-293,
+-300,-310,-315,-314,-313,-314,-316,-314,-313,-313,-314,-313,-312,-311,-310,-307,-306,-309,-313,-315,-315,
+-315,-318,-320,-319,-316,-316,-318,-318,-317,-316,-315,-311,-306,-302,-298,-292,-285,-282,-284,-284,-279,
+-271,-267,-263,-254,-241,-230,-225,-223,-215,-202,-191,-181,-171,-160,-150,-143,-133,-121,-110,-101,-94,
+-88,-84,-82,-80,-74,-64,-54,-42,-29,-17,-9,-2,8,23,38,50,59,70,86,105,124,
+137,145,150,161,178,193,205,223,252,284,301,307,321,354,389,411,429,470,533,593,625,
+644,679,731,766,754,705,673,699,773,841,863,852,853,885,925,945,959,995,1051,1095,1116,
+1145,1205,1274,1319,1343,1380,1443,1508,1561,1616,1678,1723,1738,1752,1801,1871,1920,1950,1996,2041,1986,
+1767,1478,1335,1492,1925,2468,2937,3225,3340,3385,3492,3710,3972,4173,4281,4339,4383,4401,4377,4337,4311,
+4287,4239,4183,4162,4162,4100,3916,3637,3342,3075,2833,2616,2447,2339,2276,2235,2207,2185,2144,2080,2027,
+2030,2083,2130,2131,2100,2070,2040,1983,1886,1772,1669,1595,1553,1544,1554,1553,1508,1412,1284,1153,1037,
+938,839,721,578,426,286,162,46,-59,-144,-205,-256,-317,-380,-428,-455,-477,-507,-544,-576,-601,
+-625,-646,-656,-651,-642,-641,-652,-667,-677,-677,-668,-658,-646,-624,-579,-505,-420,-353,-322,-323,-335,
+-335,-322,-307,-306,-321,-339,-348,-355,-376,-419,-465,-491,-490,-479,-485,-522,-578,-617,-612,-578,-572,
+-641,-773,-903,-982,-1015,-1039,-1066,-1081,-1077,-1072,-1079,-1083,-1061,-1016,-981,-975,-984,-984,-969,-949,-932,
+-915,-891,-860,-826,-792,-764,-746,-730,-709,-684,-667,-660,-653,-637,-617,-605,-605,-607,-607,-609,-620,
+-634,-642,-643,-645,-647,-647,-644,-644,-647,-648,-640,-629,-624,-624,-621,-609,-594,-578,-563,-543,-523,
+-505,-491,-474,-450,-422,-393,-366,-338,-309,-277,-244,-210,-175,-142,-110,-76,-40,-4,30,63,96,
+130,164,198,231,263,295,327,361,396,432,470,511,554,594,630,663,699,739,777,813,847,
+885,925,962,994,1031,1077,1123,1154,1168,1178,1196,1217,1226,1221,1215,1219,1229,1234,1234,1238,1248,
+1257,1260,1260,1262,1265,1266,1268,1277,1292,1307,1317,1326,1337,1348,1357,1369,1388,1409,1425,1437,1452,
+1474,1497,1514,1526,1540,1559,1581,1603,1626,1650,1669,1683,1694,1706,1722,1733,1751,1769,1789,1813,1840,
+1867,1893,1920,1951,1986,2021,2051,2079,2108,2135,2155,2164,2172,2199,2253,2320,2378,2415,2435,2447,2453,
+2452,2451,2455,2453,2427,2373,2309,2265,2251,2251,2246,2237,2232,2238,2250,2262,2278,2301,2328,2355,2386,
+2434,2505,2583,2644,2677,2695,2716,2749,2783,2809,2835,2875,2928,2972,2990,2984,2982,2998,3029,3054,3065,
+3056,3023,2961,2879,2799,2741,2709,2691,2670,2635,2577,2494,2398,2301,2211,2125,2046,1983,1946,1929,1922,
+1920,1924,1925,1910,1872,1821,1773,1730,1691,1657,1631,1609,1588,1568,1555,1544,1522,1482,1436,1393,1353,
+1308,1255,1205,1165,1131,1096,1064,1043,1036,1039,1043,1043,1034,1016,985,937,862,755,630,510,418,
+361,334,327,328,323,302,267,225,176,118,53,-6,-50,-78,-99,-123,-151,-176,-196,-218,-250,
+-285,-303,-283,-231,-180,-162,-180,-212,-238,-257,-274,-288,-289,-282,-282,-302,-326,-319,-260,-167,-82,
+-32,-10,8,26,22,0,8,92,227,334,365,355,362,378,333,205,64,-7,-25,-80,-224,
+-404,-531,-581,-602,-635,-669,-678,-666,-659,-666,-670,-662,-653,-653,-651,-633,-602,-578,-567,-557,-536,
+-506,-480,-459,-431,-384,-333,-306,-331,-402,-489,-557,-591,-598,-592,-585,-581,-585,-594,-595,-574,-534,
+-500,-495,-517,-545,-564,-574,-586,-600,-609,-609,-607,-608,-610,-611,-619,-636,-656,-668,-672,-676,-686,
+-701,-716,-734,-754,-775,-792,-809,-833,-862,-888,-910,-934,-966,-1002,-1032,-1056,-1084,-1122,-1167,-1214,-1263,
+-1316,-1371,-1426,-1480,-1536,-1591,-1642,-1692,-1741,-1789,-1831,-1872,-1922,-1985,-2052,-2112,-2162,-2209,-2258,-2309,-2361,
+-2415,-2472,-2530,-2587,-2644,-2700,-2749,-2791,-2832,-2881,-2937,-2994,-3046,-3091,-3128,-3157,-3184,-3215,-3257,-3304,-3349,
+-3390,-3431,-3474,-3513,-3549,-3585,-3627,-3673,-3718,-3756,-3784,-3805,-3820,-3836,-3851,-3865,-3875,-3888,-3908,-3933,-3955,
+-3975,-3997,-4019,-4031,-4025,-4008,-3994,-3983,-3969,-3961,-3984,-4063,-4180,-4288,-4351,-4372,-4385,-4414,-4455,-4486,-4498,
+-4500,-4511,-4537,-4568,-4593,-4604,-4606,-4609,-4620,-4638,-4651,-4652,-4641,-4628,-4621,-4616,-4605,-4588,-4571,-4564,-4567,
+-4579,-4597,-4617,-4638,-4659,-4681,-4704,-4719,-4719,-4705,-4688,-4673,-4652,-4621,-4581,-4542,-4507,-4471,-4432,-4394,-4356,
+-4314,-4267,-4219,-4174,-4129,-4079,-4022,-3953,-3861,-3741,-3610,-3494,-3412,-3368,-3364,-3400,-3468,-3540,-3580,-3573,-3531,
+-3466,-3386,-3297,-3213,-3152,-3121,-3111,-3109,-3107,-3103,-3099,-3098,-3097,-3090,-3068,-3034,-2991,-2941,-2885,-2826,-2772,
+-2720,-2655,-2564,-2455,-2339,-2210,-2053,-1866,-1676,-1520,-1410,-1334,-1266,-1187,-1090,-986,-902,-857,-843,-830,-795,
+-747,-712,-701,-705,-708,-701,-684,-651,-596,-520,-428,-330,-232,-145,-79,-34,2,50,123,219,326,
+420,479,497,488,471,456,449,450,462,484,511,542,577,611,641,669,714,792,898,1009,1096,
+1157,1205,1252,1300,1344,1384,1422,1455,1475,1481,1479,1479,1488,1513,1558,1624,1705,1785,1852,1909,1966,
+2040,2134,2242,2347,2438,2511,2571,2624,2675,2725,2776,2833,2900,2972,3033,3077,3107,3140,3183,3235,3292,
+3357,3437,3532,3631,3726,3814,3898,3978,4044,4085,4101,4101,4098,4099,4100,4091,4075,4065,4077,4115,4165,
+4212,4251,4287,4332,4386,4446,4509,4579,4659,4746,4833,4912,4980,5040,5093,5140,5177,5198,5206,5211,5230,
+5271,5322,5360,5372,5363,5350,5343,5337,5323,5304,5292,5298,5319,5349,5375,5388,5381,5354,5318,5288,5268,
+5242,5190,5116,5055,5041,5075,5114,5122,5106,5107,5147,5196,5212,5189,5166,5167,5167,5127,5066,5063,5174,
+5350,5466,5444,5325,5221,5207,5265,5328,5360,5370,5378,5387,5395,5405,5418,5420,5394,5344,5294,5266,5254,
+5244,5232,5231,5261,5346,5499,5710,5932,6099,6165,6131,6032,5918,5829,5794,5815,5847,5819,5679,5439,5177,
+4999,4981,5136,5402,5681,5896,6020,6076,6096,6098,6085,6061,6038,6021,6007,5983,5941,5884,5828,5789,5763,
+5728,5664,5578,5498,5446,5419,5399,5375,5349,5322,5287,5236,5176,5121,5085,5064,5042,5012,4985,4980,5006,
+5047,5085,5118,5158,5209,5250,5260,5240,5215,5207,5223,5256,5291,5310,5298,5267,5241,5215,5118,4855,4386,
+3780,3186,2753,2558,2583,2733,2893,2986,3014,3020,3029,3026,2988,2923,2861,2810,2758,2690,2618,2556,2502,
+2440,2365,2288,2222,2165,2111,2054,1995,1930,1860,1789,1721,1658,1599,1544,1494,1448,1404,1364,1331,1303,
+1278,1255,1240,1236,1232,1216,1188,1159,1139,1126,1113,1101,1092,1084,1072,1050,1023,995,966,933,895,
+856,821,796,779,756,706,629,545,486,458,447,429,404,381,371,367,356,333,298,253,205,
+165,139,122,99,61,15,-23,-40,-38,-38,-64,-118,-181,-225,-246,-261,-287,-320,-348,-371,-401,
+-444,-485,-514,-537,-565,-597,-616,-616,-611,-619,-638,-657,-674,-690,-706,-716,-723,-741,-774,-813,-841,
+-853,-858,-863,-869,-879,-900,-930,-953,-952,-935,-924,-939,-976,-1014,-1031,-1018,-984,-951,-946,-974,-1016,
+-1046,-1058,-1065,-1078,-1090,-1091,-1081,-1072,-1071,-1074,-1078,-1085,-1093,-1099,-1101,-1103,-1115,-1134,-1149,-1151,-1145,
+-1140,-1139,-1139,-1136,-1134,-1132,-1132,-1130,-1128,-1127,-1125,-1121,-1115,-1111,-1111,-1110,-1108,-1105,-1104,-1103,-1101,
+-1095,-1086,-1075,-1065,-1054,-1043,-1030,-1014,-999,-985,-974,-963,-949,-932,-914,-897,-878,-857,-835,-813,-791,
+-769,-747,-727,-708,-691,-675,-659,-642,-622,-602,-584,-568,-552,-535,-520,-507,-494,-479,-462,-448,-436,
+-425,-414,-403,-395,-387,-377,-368,-362,-357,-350,-340,-332,-327,-326,-324,-322,-323,-326,-327,-325,-322,
+-321,-319,-315,-312,-310,-309,-308,-308,-311,-313,-310,-303,-301,-307,-315,-320,-320,-321,-324,-326,-324,
+-320,-318,-318,-316,-314,-311,-308,-306,-307,-310,-312,-312,-310,-312,-317,-319,-316,-312,-310,-310,-310,
+-309,-308,-308,-304,-299,-292,-285,-277,-270,-269,-272,-271,-264,-255,-250,-247,-240,-229,-219,-214,-209,
+-200,-188,-176,-166,-156,-145,-135,-125,-113,-101,-92,-85,-77,-68,-61,-59,-57,-51,-43,-34,-23,
+-9,3,12,18,27,41,56,69,79,90,105,122,139,152,160,169,183,201,215,224,240,
+268,296,311,316,333,367,403,426,452,505,574,622,630,625,646,698,742,740,703,682,713,
+783,841,854,840,842,876,916,936,947,979,1031,1075,1100,1132,1192,1260,1308,1342,1389,1456,1520,
+1569,1619,1673,1711,1723,1740,1793,1866,1918,1949,1989,2020,1950,1722,1432,1291,1459,1920,2506,3020,3330,
+3432,3440,3501,3683,3922,4119,4241,4325,4394,4423,4400,4357,4326,4295,4243,4200,4203,4217,4133,3888,3542,
+3212,2954,2749,2570,2434,2358,2322,2290,2247,2198,2141,2076,2027,2021,2051,2076,2067,2040,2018,1996,1948,
+1867,1774,1691,1623,1575,1554,1559,1559,1515,1410,1267,1124,1011,925,840,729,586,433,292,167,50,
+-56,-136,-187,-229,-284,-347,-396,-422,-439,-466,-503,-539,-569,-594,-614,-622,-619,-615,-619,-633,-650,
+-661,-660,-646,-629,-617,-603,-572,-511,-430,-353,-302,-283,-283,-285,-279,-273,-285,-320,-362,-388,-395,
+-403,-428,-463,-484,-486,-491,-522,-576,-626,-637,-604,-559,-559,-635,-765,-889,-969,-1010,-1039,-1062,-1061,
+-1032,-1002,-993,-997,-989,-964,-945,-947,-957,-952,-927,-900,-881,-870,-857,-840,-819,-798,-779,-761,-741,
+-716,-688,-667,-654,-642,-624,-607,-600,-606,-614,-617,-619,-625,-632,-635,-634,-635,-639,-641,-641,-641,
+-644,-644,-636,-626,-620,-617,-609,-595,-578,-561,-544,-524,-503,-486,-472,-457,-437,-411,-381,-348,-316,
+-284,-252,-219,-183,-149,-117,-85,-52,-17,17,51,85,118,151,183,216,248,280,311,343,376,
+411,447,484,525,567,607,642,677,715,756,798,836,873,910,948,983,1014,1045,1078,1108,1129,
+1141,1155,1178,1203,1217,1216,1212,1217,1229,1238,1242,1245,1252,1260,1262,1261,1263,1266,1270,1274,1284,
+1299,1312,1322,1330,1340,1352,1364,1377,1396,1417,1433,1444,1460,1485,1511,1528,1536,1546,1565,1590,1616,
+1641,1666,1687,1700,1709,1718,1733,1745,1766,1790,1816,1844,1873,1900,1925,1952,1984,2018,2050,2078,2103,
+2130,2157,2182,2200,2219,2252,2308,2378,2438,2471,2481,2484,2493,2500,2495,2475,2444,2404,2355,2303,2263,
+2243,2237,2233,2227,2224,2232,2246,2260,2274,2294,2321,2349,2379,2425,2497,2585,2662,2706,2725,2744,2777,
+2817,2847,2869,2898,2940,2983,3010,3020,3032,3057,3088,3110,3112,3095,3052,2978,2879,2779,2705,2666,2650,
+2635,2605,2549,2472,2385,2302,2224,2149,2079,2026,1998,1984,1974,1967,1965,1965,1952,1914,1861,1809,1766,
+1732,1706,1687,1667,1642,1615,1596,1584,1564,1527,1481,1438,1400,1361,1313,1261,1212,1166,1123,1088,1073,
+1079,1093,1099,1087,1062,1035,1008,967,891,774,641,524,445,402,383,376,375,371,359,341,317,
+282,226,155,89,43,16,-6,-36,-70,-102,-129,-159,-193,-224,-233,-213,-174,-145,-141,-154,-162,
+-161,-165,-184,-205,-209,-197,-195,-222,-262,-271,-220,-125,-28,42,91,130,153,145,124,143,234,
+360,448,463,438,422,403,338,222,110,46,0,-95,-251,-403,-489,-517,-536,-571,-598,-601,-594,
+-602,-618,-623,-611,-599,-595,-586,-558,-522,-498,-493,-491,-475,-447,-420,-404,-397,-393,-387,-385,-395,
+-423,-459,-488,-500,-503,-508,-520,-533,-541,-543,-535,-513,-483,-460,-461,-483,-509,-530,-545,-557,-565,
+-564,-560,-557,-554,-548,-543,-552,-573,-596,-606,-608,-615,-630,-646,-659,-675,-697,-721,-742,-762,-787,
+-812,-831,-846,-868,-901,-937,-964,-986,-1014,-1050,-1092,-1137,-1186,-1240,-1294,-1345,-1396,-1451,-1507,-1558,-1605,
+-1652,-1700,-1746,-1790,-1842,-1904,-1971,-2031,-2081,-2126,-2171,-2218,-2269,-2327,-2388,-2447,-2502,-2554,-2606,-2654,-2699,
+-2746,-2801,-2861,-2918,-2967,-3006,-3039,-3067,-3096,-3133,-3178,-3226,-3268,-3308,-3349,-3389,-3427,-3463,-3502,-3545,-3590,
+-3630,-3665,-3694,-3715,-3730,-3746,-3766,-3790,-3813,-3835,-3858,-3881,-3900,-3917,-3936,-3956,-3965,-3958,-3942,-3927,-3913,
+-3896,-3887,-3919,-4009,-4133,-4240,-4295,-4311,-4325,-4361,-4411,-4451,-4468,-4472,-4479,-4500,-4528,-4552,-4563,-4566,-4568,
+-4578,-4595,-4608,-4609,-4600,-4590,-4586,-4585,-4578,-4563,-4549,-4545,-4554,-4569,-4586,-4604,-4623,-4643,-4666,-4686,-4697,
+-4694,-4679,-4661,-4645,-4625,-4595,-4558,-4519,-4480,-4440,-4402,-4367,-4333,-4293,-4246,-4201,-4165,-4131,-4089,-4033,-3965,
+-3886,-3793,-3686,-3577,-3481,-3412,-3384,-3404,-3464,-3537,-3588,-3595,-3553,-3474,-3375,-3276,-3200,-3154,-3133,-3126,-3125,
+-3127,-3129,-3129,-3129,-3130,-3126,-3111,-3082,-3043,-2996,-2942,-2885,-2830,-2769,-2686,-2573,-2442,-2311,-2179,-2025,-1843,
+-1658,-1509,-1412,-1346,-1283,-1206,-1118,-1029,-949,-888,-845,-811,-777,-746,-725,-717,-714,-706,-689,-666,-635,
+-593,-541,-478,-403,-319,-235,-164,-111,-69,-21,45,135,238,333,401,434,439,427,409,394,389,
+397,412,431,454,484,521,555,582,620,688,792,910,1010,1077,1119,1150,1182,1216,1252,1285,1314,
+1333,1344,1349,1356,1376,1416,1477,1552,1626,1688,1736,1782,1840,1917,2013,2118,2226,2328,2418,2493,2552,
+2601,2645,2692,2750,2818,2888,2948,2990,3023,3062,3114,3172,3229,3286,3356,3446,3546,3639,3718,3791,3868,
+3943,3998,4022,4022,4018,4022,4025,4016,3995,3982,3994,4029,4070,4107,4142,4186,4242,4304,4370,4439,4512,
+4589,4666,4742,4819,4896,4968,5032,5084,5122,5145,5152,5153,5163,5196,5245,5290,5312,5309,5296,5284,5274,
+5261,5244,5234,5238,5255,5278,5299,5310,5303,5277,5243,5220,5211,5197,5156,5088,5027,5012,5044,5082,5087,
+5059,5037,5048,5075,5085,5071,5058,5063,5061,5027,4984,5004,5128,5299,5396,5351,5217,5112,5112,5188,5269,
+5314,5332,5341,5341,5335,5335,5349,5361,5345,5302,5257,5233,5227,5222,5216,5218,5234,5266,5333,5460,5652,
+5867,6035,6107,6082,5995,5891,5807,5770,5778,5794,5753,5601,5342,5062,4882,4885,5062,5326,5578,5764,5879,
+5939,5958,5945,5913,5872,5827,5780,5728,5672,5613,5557,5512,5481,5453,5420,5387,5370,5376,5393,5397,5376,
+5337,5291,5242,5192,5147,5114,5093,5074,5045,5010,4985,4988,5015,5050,5078,5109,5157,5216,5257,5261,5237,
+5212,5207,5220,5247,5276,5295,5288,5261,5229,5171,5004,4636,4061,3404,2857,2559,2520,2651,2827,2959,3021,
+3039,3046,3048,3031,2983,2919,2860,2807,2745,2671,2598,2540,2490,2431,2360,2286,2219,2159,2102,2043,1980,
+1915,1850,1789,1731,1671,1609,1552,1504,1460,1413,1367,1330,1305,1281,1252,1228,1219,1220,1215,1195,1168,
+1144,1122,1097,1072,1057,1055,1053,1040,1011,974,937,903,871,837,804,776,752,724,676,608,537,
+485,457,438,412,379,350,332,321,312,297,273,234,187,151,138,142,138,102,36,-27,-56,
+-43,-19,-28,-88,-173,-238,-266,-280,-307,-349,-386,-410,-433,-468,-508,-539,-560,-582,-608,-625,-630,
+-630,-639,-658,-678,-696,-713,-728,-737,-743,-759,-790,-825,-849,-858,-860,-861,-861,-864,-879,-910,-942,
+-959,-963,-969,-988,-1017,-1044,-1056,-1046,-1020,-994,-992,-1017,-1051,-1071,-1074,-1078,-1095,-1115,-1121,-1113,-1109,
+-1118,-1134,-1142,-1141,-1136,-1130,-1123,-1116,-1118,-1129,-1143,-1148,-1144,-1137,-1136,-1138,-1140,-1140,-1139,-1139,-1140,
+-1138,-1135,-1129,-1121,-1113,-1108,-1107,-1106,-1103,-1098,-1093,-1090,-1086,-1079,-1068,-1056,-1046,-1039,-1033,-1023,-1006,
+-988,-972,-961,-951,-938,-922,-906,-891,-876,-859,-839,-818,-796,-774,-752,-732,-715,-698,-681,-665,-649,
+-631,-611,-592,-574,-558,-543,-528,-515,-502,-488,-474,-461,-449,-437,-425,-414,-406,-399,-390,-382,-375,
+-370,-362,-351,-342,-336,-335,-334,-334,-336,-338,-339,-338,-335,-332,-331,-330,-328,-326,-323,-319,-318,
+-321,-323,-322,-319,-318,-322,-325,-326,-325,-328,-332,-333,-331,-327,-326,-325,-324,-320,-314,-310,-308,
+-310,-314,-316,-313,-310,-313,-317,-318,-312,-306,-302,-301,-300,-301,-303,-305,-301,-293,-283,-275,-266,
+-260,-258,-258,-257,-251,-243,-238,-234,-228,-219,-211,-204,-195,-183,-170,-158,-148,-137,-127,-117,-105,
+-90,-78,-72,-69,-62,-51,-41,-36,-34,-32,-28,-22,-13,2,19,31,37,44,56,70,84,
+96,109,123,138,152,164,175,185,202,222,240,253,268,289,309,322,334,357,391,423,447,
+480,537,598,627,616,603,627,682,725,726,700,693,729,790,834,841,829,835,867,905,928,
+944,974,1019,1059,1089,1130,1193,1259,1308,1348,1402,1470,1532,1578,1624,1672,1706,1718,1740,1798,1875,
+1928,1956,1986,1998,1910,1674,1387,1257,1442,1930,2552,3091,3400,3476,3452,3486,3641,3849,4021,4144,4259,
+4371,4430,4416,4370,4338,4311,4266,4231,4245,4259,4148,3845,3435,3067,2817,2647,2510,2408,2361,2349,2331,
+2288,2232,2171,2108,2055,2029,2027,2023,2001,1974,1960,1950,1918,1857,1783,1714,1652,1600,1569,1561,1553,
+1505,1400,1253,1106,993,914,840,739,602,451,309,181,60,-45,-121,-162,-194,-241,-301,-352,-383,
+-406,-435,-471,-507,-537,-563,-583,-594,-598,-597,-599,-606,-620,-635,-641,-631,-610,-591,-575,-549,-496,
+-418,-335,-273,-243,-243,-255,-261,-263,-278,-322,-383,-430,-448,-448,-455,-472,-488,-506,-539,-593,-647,
+-665,-634,-577,-539,-562,-653,-783,-902,-980,-1023,-1050,-1063,-1047,-1003,-957,-936,-939,-944,-940,-933,-932,
+-929,-915,-893,-874,-863,-854,-843,-831,-819,-804,-786,-767,-747,-725,-700,-676,-655,-635,-618,-606,-605,
+-612,-618,-621,-624,-629,-634,-634,-634,-635,-639,-639,-637,-635,-636,-636,-631,-622,-614,-606,-594,-578,
+-562,-545,-526,-504,-482,-462,-444,-427,-408,-386,-359,-325,-291,-258,-227,-194,-159,-125,-95,-63,-28,
+7,42,74,106,139,171,203,236,270,304,337,368,401,436,470,506,543,582,621,658,694,
+734,778,820,859,894,927,962,996,1027,1052,1074,1094,1114,1133,1153,1177,1199,1214,1218,1218,1224,
+1236,1248,1254,1256,1261,1267,1269,1268,1268,1273,1280,1287,1296,1305,1313,1319,1325,1336,1350,1366,1383,
+1405,1428,1446,1461,1479,1506,1534,1552,1562,1572,1591,1616,1640,1662,1682,1700,1712,1719,1729,1745,1766,
+1790,1817,1846,1876,1906,1932,1957,1985,2018,2050,2080,2107,2132,2158,2186,2216,2248,2280,2318,2368,2427,
+2480,2509,2515,2519,2534,2544,2522,2465,2399,2350,2320,2290,2255,2226,2215,2217,2222,2225,2230,2242,2255,
+2268,2288,2314,2342,2370,2411,2482,2580,2674,2734,2758,2773,2801,2840,2872,2893,2917,2957,3007,3049,3079,
+3108,3142,3171,3182,3170,3139,3087,3008,2905,2797,2711,2659,2633,2612,2579,2525,2456,2383,2315,2252,2189,
+2130,2084,2055,2036,2019,2004,1997,1995,1981,1946,1896,1846,1805,1777,1758,1745,1728,1701,1668,1642,1624,
+1604,1569,1524,1479,1444,1413,1376,1330,1280,1231,1189,1162,1157,1170,1185,1182,1153,1110,1073,1048,1013,
+940,820,682,566,494,457,439,428,424,423,421,416,406,379,327,254,183,131,99,73,43,
+7,-28,-62,-94,-124,-143,-144,-127,-107,-103,-116,-131,-127,-108,-99,-113,-136,-141,-127,-124,-155,
+-205,-231,-200,-118,-13,88,177,240,264,249,231,260,352,464,534,539,505,460,401,317,222,
+150,100,26,-106,-266,-384,-429,-437,-457,-494,-521,-526,-530,-548,-568,-568,-553,-539,-532,-515,-482,
+-445,-425,-421,-420,-409,-389,-368,-353,-350,-359,-373,-382,-387,-394,-404,-410,-409,-410,-426,-453,-477,
+-488,-487,-480,-468,-451,-437,-438,-454,-476,-493,-503,-507,-505,-501,-498,-499,-495,-485,-480,-491,-515,
+-536,-542,-543,-554,-572,-588,-600,-617,-644,-672,-694,-714,-737,-759,-774,-787,-809,-842,-876,-899,-917,
+-944,-979,-1018,-1060,-1108,-1162,-1216,-1265,-1314,-1369,-1425,-1475,-1519,-1563,-1611,-1658,-1706,-1761,-1826,-1891,-1949,
+-1996,-2039,-2083,-2129,-2181,-2242,-2305,-2364,-2415,-2461,-2510,-2559,-2609,-2662,-2721,-2784,-2840,-2884,-2919,-2948,-2977,
+-3011,-3052,-3099,-3145,-3186,-3227,-3269,-3310,-3347,-3383,-3423,-3465,-3505,-3539,-3571,-3602,-3628,-3646,-3663,-3688,-3721,
+-3757,-3787,-3810,-3828,-3842,-3857,-3874,-3892,-3901,-3897,-3885,-3873,-3857,-3836,-3830,-3870,-3967,-4090,-4186,-4229,-4240,
+-4259,-4305,-4363,-4408,-4426,-4429,-4436,-4456,-4483,-4506,-4519,-4522,-4526,-4537,-4554,-4566,-4568,-4560,-4552,-4549,-4550,
+-4548,-4538,-4529,-4527,-4536,-4551,-4567,-4585,-4605,-4627,-4647,-4662,-4667,-4660,-4646,-4630,-4613,-4592,-4566,-4534,-4498,
+-4455,-4409,-4366,-4333,-4307,-4276,-4235,-4192,-4155,-4120,-4075,-4014,-3947,-3883,-3821,-3752,-3672,-3587,-3516,-3477,-3478,
+-3513,-3564,-3605,-3613,-3574,-3491,-3383,-3280,-3210,-3174,-3159,-3150,-3143,-3140,-3141,-3146,-3154,-3164,-3166,-3151,-3119,
+-3079,-3039,-2997,-2948,-2888,-2810,-2701,-2563,-2414,-2278,-2152,-2012,-1846,-1676,-1540,-1448,-1380,-1310,-1231,-1152,-1079,
+-1008,-938,-875,-828,-798,-780,-768,-756,-737,-707,-668,-625,-586,-553,-525,-497,-458,-401,-327,-249,-177,
+-120,-70,-15,57,145,234,307,352,370,367,352,337,331,337,351,365,381,407,442,478,507,
+540,599,694,811,918,991,1029,1049,1065,1086,1112,1143,1177,1209,1238,1263,1290,1326,1380,1450,1527,
+1597,1652,1695,1738,1795,1868,1954,2047,2144,2242,2336,2419,2484,2533,2573,2616,2671,2739,2807,2863,2902,
+2936,2983,3045,3111,3167,3217,3279,3361,3456,3541,3610,3672,3745,3828,3900,3937,3943,3936,3936,3939,3932,
+3915,3903,3909,3932,3960,3987,4023,4075,4140,4211,4283,4358,4437,4516,4590,4662,4737,4816,4895,4969,5031,
+5075,5100,5105,5101,5103,5125,5166,5211,5241,5251,5244,5234,5223,5209,5193,5183,5187,5201,5217,5227,5229,
+5222,5201,5172,5149,5143,5144,5124,5070,5003,4961,4964,4989,4998,4978,4951,4943,4958,4974,4978,4977,4979,
+4970,4940,4912,4942,5059,5211,5296,5256,5136,5046,5050,5128,5212,5265,5288,5299,5299,5292,5291,5301,5305,
+5284,5244,5212,5204,5206,5199,5190,5198,5224,5251,5274,5328,5451,5634,5821,5951,6001,5986,5929,5851,5777,
+5738,5742,5749,5683,5495,5219,4963,4833,4867,5021,5219,5406,5554,5652,5694,5686,5644,5580,5500,5416,5345,
+5300,5279,5268,5257,5250,5255,5273,5303,5341,5379,5402,5396,5359,5305,5250,5201,5161,5131,5108,5090,5068,
+5041,5015,5003,5011,5032,5051,5071,5104,5160,5221,5255,5248,5219,5200,5204,5223,5242,5259,5269,5266,5248,
+5205,5092,4824,4342,3696,3058,2621,2474,2561,2743,2906,3003,3047,3065,3073,3064,3030,2975,2915,2857,2798,
+2729,2653,2585,2530,2482,2426,2360,2290,2220,2151,2085,2022,1962,1901,1841,1785,1732,1674,1614,1559,1516,
+1475,1427,1378,1339,1315,1292,1258,1224,1206,1206,1207,1196,1176,1153,1127,1094,1058,1032,1023,1022,1015,
+993,960,923,886,851,816,781,747,714,676,630,575,523,484,458,435,404,367,333,305,285,
+272,262,245,214,172,139,131,145,151,119,46,-33,-73,-57,-16,-6,-60,-157,-245,-293,-314,
+-340,-380,-417,-439,-457,-485,-523,-556,-578,-596,-613,-628,-639,-652,-671,-694,-714,-732,-750,-767,-776,
+-780,-789,-810,-835,-851,-857,-860,-862,-860,-858,-866,-892,-928,-961,-985,-1004,-1022,-1039,-1053,-1063,-1067,
+-1061,-1053,-1056,-1077,-1102,-1109,-1098,-1089,-1099,-1119,-1131,-1132,-1139,-1161,-1184,-1191,-1181,-1170,-1167,-1165,-1157,
+-1145,-1139,-1142,-1145,-1142,-1136,-1134,-1137,-1141,-1142,-1142,-1144,-1146,-1146,-1141,-1132,-1123,-1116,-1112,-1109,-1106,
+-1101,-1095,-1088,-1082,-1076,-1066,-1055,-1043,-1034,-1029,-1026,-1018,-1003,-984,-967,-953,-942,-929,-915,-900,-885,
+-871,-855,-837,-819,-798,-778,-759,-742,-725,-707,-687,-669,-653,-637,-619,-599,-580,-564,-550,-536,-522,
+-508,-494,-482,-470,-460,-448,-436,-426,-417,-410,-402,-393,-386,-380,-372,-361,-349,-343,-343,-345,-348,
+-350,-352,-353,-351,-346,-341,-339,-342,-344,-344,-339,-334,-332,-332,-333,-332,-333,-336,-340,-341,-338,
+-336,-339,-342,-340,-337,-334,-334,-336,-334,-330,-323,-316,-312,-314,-319,-321,-317,-314,-315,-317,-315,
+-308,-301,-297,-295,-294,-296,-301,-302,-296,-284,-272,-264,-257,-250,-245,-242,-241,-239,-234,-228,-221,
+-212,-204,-197,-191,-180,-167,-154,-143,-132,-119,-109,-102,-90,-74,-58,-51,-50,-46,-36,-24,-16,
+-12,-10,-10,-9,-2,12,31,44,51,59,70,83,96,109,124,139,153,166,180,192,202,
+216,235,256,274,289,304,321,339,360,389,419,442,464,498,548,591,604,595,600,641,696,
+725,717,698,704,742,788,818,824,823,833,860,892,919,946,981,1020,1054,1088,1138,1207,1274,
+1324,1365,1417,1480,1536,1581,1625,1672,1705,1723,1755,1821,1898,1949,1974,1995,1991,1886,1642,1362,1246,
+1452,1962,2598,3131,3416,3470,3441,3483,3628,3798,3924,4031,4173,4330,4424,4423,4385,4366,4353,4311,4267,
+4269,4270,4137,3795,3335,2935,2689,2555,2462,2390,2358,2355,2344,2307,2257,2205,2151,2097,2052,2023,1996,
+1964,1938,1929,1926,1905,1855,1788,1723,1664,1614,1578,1554,1528,1473,1374,1241,1103,991,911,840,747,
+617,468,324,192,70,-34,-107,-144,-169,-205,-254,-301,-336,-368,-406,-448,-485,-516,-541,-561,-574,
+-580,-579,-573,-569,-576,-595,-612,-611,-593,-571,-552,-523,-469,-388,-302,-237,-209,-219,-245,-265,-271,
+-280,-318,-382,-445,-482,-494,-498,-503,-514,-536,-580,-636,-670,-655,-601,-554,-554,-617,-727,-850,-953,
+-1017,-1047,-1056,-1052,-1030,-991,-952,-933,-935,-942,-941,-929,-914,-897,-881,-870,-866,-862,-852,-836,-823,
+-813,-799,-780,-760,-744,-730,-711,-686,-660,-638,-624,-617,-617,-620,-621,-621,-624,-630,-635,-636,-636,
+-637,-638,-634,-628,-623,-624,-625,-622,-615,-606,-593,-579,-563,-548,-530,-509,-486,-463,-442,-418,-394,
+-373,-352,-327,-295,-262,-231,-202,-169,-134,-101,-73,-43,-6,32,67,98,128,160,192,225,260,
+297,335,368,400,432,466,499,532,566,602,638,674,710,750,793,835,871,901,929,961,998,
+1032,1057,1075,1097,1126,1158,1183,1201,1215,1225,1230,1232,1237,1247,1258,1263,1265,1267,1271,1272,1271,
+1272,1279,1289,1296,1301,1306,1312,1318,1324,1335,1351,1370,1391,1414,1438,1460,1479,1500,1526,1555,1578,
+1592,1607,1626,1649,1669,1686,1702,1717,1729,1737,1748,1766,1793,1817,1843,1870,1899,1929,1957,1986,2018,
+2053,2085,2113,2140,2165,2190,2216,2250,2293,2338,2381,2423,2471,2516,2544,2550,2555,2567,2565,2517,2427,
+2345,2316,2325,2325,2285,2230,2198,2202,2220,2231,2236,2244,2256,2270,2289,2315,2345,2374,2413,2481,2581,
+2686,2762,2800,2822,2849,2882,2905,2919,2939,2980,3034,3084,3125,3165,3208,3239,3244,3219,3175,3119,3043,
+2945,2838,2743,2677,2636,2605,2569,2522,2465,2405,2349,2296,2245,2197,2157,2127,2102,2078,2057,2044,2034,
+2015,1981,1935,1888,1850,1823,1806,1796,1784,1760,1726,1693,1665,1638,1602,1556,1512,1480,1458,1437,1411,
+1376,1341,1314,1303,1304,1310,1304,1276,1226,1169,1126,1102,1074,1006,887,747,631,559,521,498,483,
+480,487,494,497,490,468,422,353,277,212,167,136,108,77,42,6,-24,-44,-49,-41,-27,
+-19,-31,-57,-81,-82,-64,-50,-56,-73,-78,-68,-68,-99,-153,-194,-190,-132,-28,101,225,309,
+332,312,299,337,425,523,586,598,565,493,392,287,217,186,151,56,-100,-256,-343,-359,-359,
+-385,-429,-460,-473,-485,-505,-517,-508,-489,-476,-467,-445,-407,-372,-354,-350,-346,-337,-325,-312,-302,
+-301,-312,-330,-340,-342,-340,-341,-340,-336,-338,-358,-390,-418,-432,-435,-435,-431,-420,-408,-408,-422,
+-440,-449,-449,-443,-438,-436,-439,-441,-435,-423,-417,-428,-449,-463,-466,-469,-485,-508,-527,-542,-563,
+-593,-620,-640,-658,-682,-706,-721,-734,-756,-787,-816,-834,-852,-879,-914,-950,-987,-1031,-1084,-1137,-1186,
+-1236,-1291,-1345,-1391,-1432,-1476,-1524,-1574,-1628,-1688,-1753,-1814,-1862,-1902,-1942,-1987,-2037,-2093,-2154,-2218,-2274,
+-2321,-2366,-2414,-2466,-2520,-2578,-2640,-2701,-2754,-2795,-2826,-2854,-2886,-2924,-2971,-3019,-3063,-3103,-3144,-3190,-3233,
+-3270,-3304,-3342,-3382,-3416,-3446,-3477,-3513,-3545,-3567,-3586,-3614,-3654,-3697,-3732,-3754,-3767,-3778,-3791,-3808,-3825,
+-3835,-3837,-3833,-3825,-3808,-3786,-3783,-3830,-3929,-4043,-4124,-4156,-4167,-4193,-4248,-4311,-4356,-4374,-4379,-4388,-4410,
+-4437,-4459,-4472,-4478,-4487,-4501,-4517,-4528,-4530,-4524,-4516,-4513,-4515,-4517,-4514,-4509,-4506,-4511,-4523,-4540,-4560,
+-4584,-4608,-4626,-4634,-4633,-4625,-4614,-4600,-4582,-4560,-4534,-4506,-4472,-4429,-4379,-4333,-4304,-4287,-4267,-4232,-4187,
+-4141,-4098,-4049,-3989,-3925,-3867,-3819,-3775,-3727,-3676,-3632,-3605,-3599,-3607,-3620,-3629,-3623,-3588,-3517,-3418,-3320,
+-3249,-3209,-3188,-3170,-3153,-3141,-3139,-3148,-3168,-3192,-3203,-3189,-3152,-3110,-3075,-3042,-2994,-2923,-2823,-2693,-2541,
+-2388,-2255,-2137,-2011,-1864,-1712,-1586,-1496,-1422,-1344,-1262,-1191,-1129,-1065,-990,-916,-862,-836,-827,-820,-802,
+-766,-710,-644,-583,-539,-517,-512,-511,-501,-469,-406,-320,-231,-159,-109,-68,-18,47,123,191,240,
+266,273,268,259,259,272,293,314,331,352,379,407,432,462,516,604,714,817,889,926,940,
+949,963,986,1019,1062,1112,1162,1210,1256,1303,1355,1412,1473,1536,1599,1661,1724,1792,1866,1945,2025,
+2105,2185,2267,2344,2409,2459,2499,2540,2595,2663,2729,2779,2813,2846,2897,2965,3035,3091,3137,3192,3267,
+3353,3431,3494,3552,3622,3707,3786,3836,3851,3845,3838,3838,3835,3826,3818,3818,3828,3845,3868,3904,3959,
+4028,4103,4180,4259,4341,4427,4512,4595,4672,4745,4818,4893,4964,5019,5047,5051,5043,5040,5053,5083,5123,
+5159,5181,5190,5190,5182,5165,5142,5129,5134,5152,5164,5161,5149,5138,5123,5101,5076,5069,5082,5091,5059,
+4987,4911,4874,4880,4898,4896,4878,4867,4881,4910,4930,4933,4921,4899,4868,4848,4875,4969,5097,5186,5184,
+5110,5040,5033,5086,5156,5209,5238,5251,5253,5252,5261,5275,5273,5241,5196,5173,5183,5199,5195,5179,5182,
+5214,5251,5273,5300,5370,5494,5641,5764,5844,5885,5894,5866,5806,5743,5713,5713,5689,5582,5381,5147,4959,
+4870,4877,4953,5066,5186,5279,5325,5323,5288,5232,5159,5080,5027,5022,5061,5113,5153,5181,5215,5266,5325,
+5374,5400,5396,5367,5320,5268,5219,5179,5148,5122,5099,5074,5050,5031,5022,5024,5034,5044,5052,5067,5105,
+5165,5223,5249,5233,5201,5187,5201,5226,5239,5238,5234,5235,5226,5164,4971,4575,3979,3304,2749,2469,2477,
+2652,2847,2978,3045,3079,3099,3101,3077,3030,2973,2915,2856,2789,2713,2637,2572,2517,2464,2407,2346,2281,
+2210,2135,2064,2002,1947,1889,1830,1775,1723,1670,1615,1565,1524,1486,1442,1395,1356,1328,1300,1262,1223,
+1199,1193,1193,1188,1174,1157,1132,1096,1056,1023,1002,991,979,960,932,897,858,821,786,752,716,
+676,632,588,545,508,478,453,427,395,361,327,297,272,254,242,229,203,168,136,123,128,
+129,98,31,-46,-95,-88,-45,-19,-55,-145,-242,-304,-329,-343,-367,-398,-425,-451,-482,-519,-554,
+-584,-608,-627,-642,-656,-674,-699,-723,-741,-754,-770,-785,-794,-798,-804,-818,-836,-849,-856,-863,-870,
+-872,-871,-876,-894,-922,-952,-982,-1008,-1027,-1038,-1046,-1058,-1073,-1083,-1086,-1093,-1110,-1129,-1130,-1111,-1093,
+-1095,-1114,-1134,-1148,-1164,-1185,-1195,-1182,-1154,-1140,-1154,-1180,-1193,-1185,-1170,-1161,-1157,-1152,-1145,-1139,-1139,
+-1140,-1139,-1139,-1142,-1146,-1146,-1140,-1130,-1122,-1117,-1113,-1108,-1103,-1098,-1092,-1086,-1078,-1068,-1058,-1047,-1037,
+-1031,-1027,-1023,-1017,-1006,-991,-975,-960,-947,-934,-919,-904,-887,-869,-852,-835,-819,-802,-785,-770,-757,
+-742,-721,-698,-677,-660,-646,-629,-610,-592,-577,-563,-549,-534,-518,-504,-492,-481,-471,-461,-450,-439,
+-430,-422,-414,-405,-397,-390,-382,-372,-361,-356,-358,-363,-367,-368,-368,-368,-366,-360,-353,-350,-354,
+-359,-360,-356,-351,-350,-349,-345,-342,-343,-349,-355,-354,-351,-350,-353,-353,-349,-344,-342,-343,-345,
+-343,-339,-331,-323,-318,-318,-321,-322,-319,-315,-314,-314,-312,-306,-300,-296,-292,-289,-291,-294,-293,
+-284,-269,-256,-249,-243,-236,-228,-224,-224,-224,-223,-216,-205,-193,-185,-181,-174,-164,-152,-142,-133,
+-119,-104,-95,-92,-84,-68,-48,-36,-31,-27,-19,-9,0,7,12,13,11,15,27,43,54,
+62,73,86,98,109,121,136,152,166,179,194,209,219,227,240,259,277,292,306,325,350,
+377,404,427,447,470,502,540,569,580,589,622,674,716,722,706,701,726,764,792,804,809,
+820,838,860,884,914,953,995,1032,1060,1094,1150,1225,1297,1349,1389,1435,1488,1538,1583,1628,1674,
+1711,1740,1785,1856,1929,1974,1995,2010,1992,1869,1617,1342,1247,1478,2006,2640,3144,3391,3429,3421,3495,
+3645,3778,3855,3939,4097,4285,4400,4412,4391,4399,4409,4369,4307,4285,4270,4124,3758,3265,2840,2596,2494,
+2440,2392,2362,2352,2337,2305,2265,2229,2191,2143,2093,2050,2012,1975,1947,1932,1923,1899,1850,1785,1722,
+1668,1623,1583,1542,1492,1426,1337,1226,1106,997,912,837,746,622,475,329,196,75,-26,-97,-137,
+-161,-189,-222,-254,-283,-318,-364,-413,-457,-493,-521,-540,-550,-552,-547,-535,-524,-526,-546,-569,-576,
+-563,-546,-528,-499,-441,-358,-275,-217,-199,-218,-254,-282,-290,-292,-313,-363,-426,-479,-513,-533,-541,
+-544,-556,-587,-623,-632,-604,-567,-570,-633,-740,-855,-955,-1028,-1068,-1077,-1063,-1040,-1012,-985,-963,-954,
+-955,-956,-947,-926,-900,-875,-858,-851,-848,-841,-824,-805,-792,-784,-774,-760,-746,-738,-730,-715,-690,
+-664,-644,-634,-631,-631,-630,-627,-626,-628,-632,-635,-634,-632,-631,-629,-622,-615,-610,-609,-608,-605,
+-600,-591,-578,-562,-545,-528,-508,-484,-460,-440,-420,-394,-364,-336,-312,-287,-257,-227,-200,-172,-140,
+-105,-74,-48,-19,17,56,92,122,154,187,221,254,289,328,365,397,426,458,491,524,555,
+588,622,656,688,721,758,801,842,877,904,930,963,1004,1043,1072,1092,1117,1154,1192,1219,1230,
+1235,1241,1246,1247,1248,1254,1263,1268,1267,1265,1267,1268,1268,1271,1280,1292,1299,1303,1308,1318,1329,
+1338,1349,1365,1384,1404,1425,1448,1472,1493,1514,1539,1568,1594,1614,1632,1652,1673,1691,1706,1721,1738,
+1751,1762,1775,1793,1814,1837,1861,1886,1914,1945,1976,2009,2046,2082,2114,2142,2169,2197,2222,2248,2283,
+2334,2388,2433,2469,2509,2550,2578,2585,2583,2581,2558,2485,2379,2308,2318,2378,2404,2352,2258,2195,2191,
+2217,2236,2242,2248,2262,2278,2299,2328,2364,2400,2439,2500,2591,2694,2780,2836,2874,2908,2934,2945,2947,
+2962,3001,3053,3098,3135,3178,3229,3268,3272,3240,3189,3133,3066,2979,2875,2776,2700,2650,2614,2579,2540,
+2496,2448,2399,2351,2308,2271,2240,2211,2182,2153,2129,2111,2092,2066,2029,1986,1943,1903,1868,1845,1833,
+1825,1810,1783,1747,1709,1671,1631,1589,1550,1522,1510,1508,1506,1497,1484,1478,1478,1476,1454,1407,1337,
+1260,1193,1152,1137,1119,1063,954,820,706,633,590,559,539,539,556,574,581,573,554,516,453,
+370,288,225,188,166,142,111,76,51,42,48,60,70,68,50,17,-15,-28,-20,-7,-5,
+-14,-19,-17,-22,-50,-100,-150,-172,-142,-48,94,240,333,354,337,338,388,471,555,616,644,
+621,533,401,285,235,235,210,101,-66,-213,-281,-288,-296,-334,-385,-421,-441,-457,-469,-464,-441,
+-419,-409,-401,-377,-340,-308,-292,-286,-278,-267,-256,-248,-243,-247,-262,-278,-283,-275,-266,-266,-270,
+-274,-282,-303,-334,-363,-380,-389,-392,-388,-374,-363,-367,-384,-397,-396,-385,-376,-376,-382,-388,-388,
+-380,-368,-363,-371,-385,-392,-393,-400,-420,-446,-467,-485,-510,-539,-563,-581,-601,-628,-653,-668,-680,
+-700,-728,-752,-769,-787,-816,-850,-883,-916,-956,-1006,-1058,-1108,-1160,-1215,-1264,-1305,-1344,-1389,-1443,-1499,
+-1558,-1621,-1683,-1734,-1770,-1800,-1837,-1887,-1944,-2003,-2065,-2125,-2178,-2224,-2269,-2319,-2375,-2433,-2494,-2556,-2615,
+-2662,-2698,-2727,-2758,-2794,-2840,-2890,-2940,-2982,-3019,-3060,-3108,-3153,-3190,-3221,-3255,-3291,-3323,-3352,-3385,-3424,
+-3461,-3489,-3511,-3542,-3585,-3630,-3665,-3686,-3699,-3711,-3725,-3741,-3757,-3769,-3776,-3779,-3773,-3757,-3738,-3743,-3796,
+-3892,-3993,-4058,-4083,-4097,-4131,-4190,-4253,-4298,-4319,-4328,-4341,-4363,-4389,-4410,-4423,-4434,-4447,-4464,-4478,-4485,
+-4485,-4482,-4477,-4476,-4479,-4483,-4486,-4485,-4483,-4486,-4496,-4513,-4536,-4561,-4583,-4598,-4604,-4601,-4595,-4587,-4575,
+-4557,-4532,-4504,-4475,-4442,-4400,-4352,-4310,-4284,-4272,-4257,-4226,-4178,-4125,-4077,-4034,-3986,-3931,-3873,-3820,-3777,
+-3743,-3719,-3705,-3700,-3699,-3692,-3676,-3653,-3628,-3594,-3540,-3464,-3378,-3303,-3249,-3211,-3182,-3157,-3140,-3136,-3148,
+-3176,-3210,-3231,-3222,-3188,-3147,-3113,-3074,-3013,-2919,-2797,-2657,-2510,-2367,-2242,-2131,-2016,-1885,-1751,-1638,-1551,
+-1474,-1391,-1309,-1238,-1179,-1115,-1037,-959,-903,-878,-873,-869,-848,-799,-724,-640,-571,-532,-522,-528,-536,
+-534,-512,-457,-373,-279,-202,-153,-124,-93,-48,4,55,95,122,138,144,148,160,186,222,260,
+289,310,326,339,356,385,438,521,618,707,769,802,817,830,847,874,912,963,1022,1082,1140,
+1191,1234,1265,1290,1322,1374,1453,1549,1648,1742,1832,1915,1989,2054,2113,2174,2237,2299,2352,2398,2446,
+2508,2581,2648,2694,2722,2752,2801,2867,2936,2992,3038,3090,3156,3234,3312,3382,3447,3515,3592,3667,3722,
+3746,3744,3734,3728,3727,3724,3717,3713,3717,3730,3754,3790,3842,3910,3987,4068,4147,4229,4319,4421,4522,
+4609,4676,4736,4805,4882,4946,4980,4984,4975,4972,4981,5002,5033,5068,5102,5130,5146,5146,5125,5093,5072,
+5079,5101,5111,5093,5064,5045,5038,5024,4999,4988,5008,5038,5029,4958,4862,4800,4799,4833,4853,4845,4833,
+4843,4873,4895,4892,4867,4837,4813,4804,4824,4888,4988,5081,5121,5098,5050,5025,5045,5096,5151,5190,5205,
+5203,5202,5219,5245,5251,5220,5170,5142,5154,5182,5194,5188,5188,5210,5243,5271,5297,5346,5429,5529,5620,
+5691,5749,5796,5819,5806,5762,5714,5682,5655,5596,5484,5327,5160,5016,4916,4871,4879,4923,4970,4995,4998,
+4994,4988,4973,4951,4947,4987,5067,5152,5213,5252,5288,5334,5378,5400,5391,5358,5317,5277,5238,5201,5166,
+5136,5110,5084,5057,5033,5020,5021,5029,5037,5042,5048,5066,5106,5164,5219,5243,5227,5195,5180,5197,5223,
+5231,5214,5197,5200,5197,5102,4810,4276,3584,2926,2505,2404,2547,2775,2955,3051,3095,3121,3134,3123,3086,
+3033,2978,2923,2860,2785,2704,2627,2561,2501,2441,2381,2324,2264,2196,2121,2050,1989,1936,1879,1818,1761,
+1712,1666,1617,1569,1528,1492,1454,1414,1374,1338,1301,1261,1225,1199,1186,1179,1173,1166,1153,1130,1095,
+1055,1020,994,973,951,927,896,861,822,785,753,721,686,645,602,562,525,491,462,435,407,
+378,348,318,292,268,250,236,221,198,167,136,112,98,83,54,2,-63,-115,-126,-99,-69,
+-80,-144,-227,-287,-305,-302,-308,-338,-387,-439,-481,-513,-540,-572,-609,-643,-664,-675,-687,-704,-722,
+-734,-742,-751,-762,-773,-782,-795,-814,-834,-851,-864,-875,-884,-891,-896,-903,-915,-930,-947,-968,-993,
+-1015,-1028,-1038,-1052,-1070,-1085,-1093,-1100,-1115,-1131,-1132,-1112,-1091,-1089,-1110,-1139,-1164,-1182,-1189,-1173,-1130,
+-1082,-1064,-1095,-1152,-1199,-1214,-1207,-1195,-1186,-1178,-1167,-1156,-1149,-1142,-1136,-1134,-1136,-1140,-1139,-1131,-1122,
+-1116,-1112,-1107,-1099,-1092,-1089,-1089,-1086,-1078,-1067,-1054,-1043,-1035,-1031,-1027,-1021,-1014,-1006,-997,-986,-972,
+-958,-944,-930,-913,-893,-872,-852,-836,-821,-806,-793,-782,-771,-757,-737,-714,-692,-675,-659,-643,-625,
+-610,-596,-582,-567,-551,-535,-520,-506,-495,-484,-475,-465,-455,-446,-438,-429,-419,-409,-400,-394,-387,
+-381,-379,-382,-388,-389,-387,-384,-384,-382,-376,-367,-363,-367,-373,-373,-368,-364,-366,-367,-362,-356,
+-355,-360,-365,-364,-361,-361,-364,-363,-357,-351,-350,-350,-350,-346,-342,-336,-328,-321,-319,-320,-320,
+-316,-312,-311,-310,-308,-305,-300,-294,-287,-281,-280,-282,-280,-269,-254,-242,-236,-231,-223,-214,-209,
+-208,-209,-207,-201,-189,-178,-171,-166,-158,-146,-134,-126,-117,-103,-87,-79,-79,-76,-62,-41,-24,
+-15,-10,-4,2,10,21,30,33,31,33,43,56,66,74,86,102,115,124,134,149,165,
+176,187,203,221,233,241,252,267,283,296,311,333,359,382,400,419,444,476,510,540,562,
+584,617,662,702,712,696,686,710,759,799,808,801,803,823,849,871,892,923,967,1014,1050,
+1077,1111,1168,1244,1317,1370,1410,1449,1495,1541,1587,1635,1682,1723,1762,1815,1884,1947,1982,1998,2008,
+1979,1841,1580,1313,1242,1503,2049,2670,3129,3328,3349,3364,3473,3631,3737,3782,3857,4027,4232,4357,4378,
+4376,4413,4447,4415,4343,4302,4268,4106,3725,3217,2785,2549,2472,2444,2409,2375,2354,2334,2307,2278,2257,
+2236,2201,2155,2107,2063,2019,1979,1947,1920,1887,1839,1781,1725,1677,1635,1590,1533,1463,1385,1301,1208,
+1103,999,909,828,737,617,475,331,200,87,-6,-74,-119,-151,-179,-202,-218,-236,-265,-307,-353,
+-399,-441,-476,-497,-504,-500,-492,-482,-475,-480,-500,-522,-529,-519,-504,-487,-455,-398,-324,-258,-221,
+-217,-240,-276,-305,-318,-318,-327,-357,-405,-458,-508,-545,-563,-564,-563,-572,-585,-581,-564,-570,-635,
+-756,-888,-992,-1059,-1100,-1119,-1111,-1080,-1040,-1005,-983,-971,-968,-967,-962,-947,-924,-895,-869,-850,-837,
+-825,-808,-788,-771,-762,-758,-753,-745,-740,-738,-733,-717,-692,-668,-652,-644,-641,-640,-638,-635,-633,
+-633,-634,-632,-628,-624,-621,-616,-608,-602,-597,-593,-587,-581,-576,-570,-558,-540,-520,-499,-476,-449,
+-426,-409,-392,-366,-333,-301,-274,-248,-220,-191,-167,-142,-112,-77,-47,-21,6,42,80,114,146,
+181,219,254,286,320,356,389,417,444,473,507,540,571,604,639,673,702,731,767,810,854,
+892,922,952,989,1033,1074,1103,1122,1143,1174,1206,1228,1235,1239,1246,1252,1252,1251,1255,1264,1269,
+1267,1262,1261,1263,1266,1271,1282,1294,1302,1307,1317,1333,1349,1360,1369,1383,1401,1420,1438,1458,1480,
+1501,1521,1545,1573,1600,1621,1638,1656,1676,1695,1712,1730,1749,1766,1780,1795,1814,1823,1848,1874,1901,
+1930,1962,1994,2028,2064,2101,2133,2161,2191,2224,2255,2285,2323,2375,2432,2477,2509,2542,2580,2607,2609,
+2597,2579,2537,2452,2345,2288,2327,2416,2456,2396,2283,2203,2193,2220,2240,2244,2251,2268,2289,2314,2349,
+2394,2439,2480,2531,2605,2695,2778,2841,2891,2932,2959,2966,2966,2981,3020,3065,3099,3129,3171,3227,3271,
+3273,3233,3176,3122,3065,2988,2889,2790,2713,2664,2629,2597,2565,2532,2497,2456,2413,2376,2349,2325,2296,
+2260,2226,2202,2182,2159,2127,2090,2051,2009,1963,1917,1882,1864,1858,1851,1831,1796,1750,1702,1659,1623,
+1596,1579,1577,1591,1609,1620,1623,1626,1628,1613,1559,1465,1349,1242,1166,1132,1132,1136,1104,1016,896,
+788,714,666,628,601,601,625,652,664,658,642,612,552,462,363,287,247,231,214,184,149,
+129,131,143,153,151,138,114,81,48,30,30,39,42,36,29,24,15,-6,-45,-96,-136,
+-130,-49,95,245,335,354,349,378,447,526,590,641,678,669,583,447,334,299,309,279,161,
+-5,-140,-201,-219,-245,-295,-348,-384,-405,-419,-418,-396,-364,-342,-338,-334,-315,-283,-256,-243,-235,
+-224,-210,-197,-187,-184,-193,-212,-224,-218,-197,-180,-180,-193,-209,-225,-247,-277,-305,-325,-337,-341,
+-333,-319,-313,-324,-343,-349,-335,-316,-309,-316,-326,-331,-330,-325,-321,-322,-328,-336,-340,-343,-351,
+-369,-390,-408,-427,-450,-477,-499,-519,-543,-572,-595,-607,-618,-637,-663,-686,-704,-723,-751,-782,-810,
+-841,-881,-928,-979,-1030,-1084,-1137,-1182,-1218,-1256,-1305,-1366,-1428,-1489,-1549,-1603,-1643,-1670,-1696,-1736,-1792,
+-1856,-1919,-1978,-2033,-2082,-2127,-2175,-2228,-2286,-2347,-2411,-2473,-2526,-2568,-2600,-2631,-2667,-2710,-2759,-2813,-2862,
+-2903,-2938,-2978,-3025,-3070,-3106,-3134,-3164,-3197,-3229,-3259,-3293,-3334,-3374,-3407,-3436,-3471,-3514,-3558,-3592,-3614,
+-3631,-3648,-3665,-3681,-3696,-3708,-3717,-3719,-3713,-3699,-3690,-3707,-3768,-3858,-3943,-3994,-4014,-4032,-4071,-4131,-4193,
+-4241,-4269,-4283,-4296,-4316,-4340,-4361,-4377,-4391,-4407,-4423,-4433,-4435,-4434,-4433,-4434,-4436,-4441,-4447,-4454,-4457,
+-4460,-4465,-4477,-4494,-4513,-4532,-4549,-4562,-4569,-4569,-4565,-4558,-4546,-4528,-4503,-4474,-4443,-4410,-4372,-4330,-4293,
+-4267,-4251,-4234,-4204,-4158,-4107,-4063,-4031,-4001,-3962,-3909,-3850,-3799,-3761,-3737,-3725,-3722,-3725,-3722,-3706,-3675,
+-3640,-3604,-3562,-3502,-3426,-3347,-3279,-3227,-3187,-3159,-3143,-3143,-3159,-3190,-3226,-3251,-3249,-3222,-3187,-3149,-3097,
+-3010,-2888,-2747,-2604,-2469,-2342,-2226,-2120,-2015,-1902,-1791,-1695,-1616,-1541,-1459,-1376,-1301,-1235,-1166,-1088,-1012,
+-956,-928,-921,-917,-898,-848,-768,-679,-611,-578,-569,-568,-562,-548,-524,-477,-406,-325,-256,-211,-186,
+-164,-138,-109,-83,-61,-42,-25,-8,9,35,73,124,181,230,261,272,272,279,306,360,436,
+519,590,638,666,685,704,727,757,795,840,890,940,988,1030,1059,1070,1068,1076,1121,1209,1327,
+1451,1569,1677,1772,1850,1908,1955,2002,2059,2122,2187,2251,2319,2398,2481,2553,2601,2630,2659,2703,2762,
+2825,2880,2929,2980,3039,3111,3193,3278,3357,3426,3489,3551,3604,3636,3640,3626,3611,3604,3601,3596,3591,
+3596,3613,3640,3677,3726,3792,3875,3961,4040,4116,4204,4313,4430,4528,4596,4652,4719,4799,4868,4904,4910,
+4905,4906,4914,4928,4949,4982,5025,5068,5101,5110,5090,5051,5024,5029,5051,5055,5021,4975,4949,4946,4939,
+4914,4895,4911,4946,4947,4882,4785,4724,4734,4788,4829,4832,4817,4816,4832,4843,4830,4801,4776,4768,4774,
+4791,4828,4893,4972,5031,5043,5017,4989,4991,5033,5094,5144,5162,5153,5141,5152,5184,5207,5194,5153,5116,
+5111,5133,5159,5175,5185,5200,5219,5239,5265,5306,5368,5444,5517,5579,5632,5683,5730,5757,5751,5713,5663,
+5618,5579,5528,5449,5335,5200,5065,4959,4896,4872,4867,4866,4874,4903,4952,5003,5043,5084,5143,5218,5287,
+5330,5351,5366,5385,5396,5386,5354,5313,5277,5248,5219,5183,5146,5113,5088,5066,5042,5020,5008,5008,5014,
+5021,5029,5042,5065,5104,5155,5205,5233,5225,5196,5179,5192,5217,5220,5191,5162,5163,5152,5007,4607,3953,
+3210,2624,2366,2433,2672,2910,3056,3120,3149,3165,3164,3137,3090,3038,2986,2931,2863,2783,2700,2624,2555,
+2490,2427,2367,2310,2253,2187,2114,2043,1981,1924,1864,1803,1748,1702,1660,1617,1571,1528,1493,1460,1426,
+1385,1340,1296,1257,1226,1201,1180,1165,1157,1154,1146,1123,1086,1048,1015,989,964,936,905,869,830,
+791,755,724,693,659,623,587,550,512,475,441,412,385,357,327,300,276,257,242,228,212,
+191,164,134,100,67,38,9,-26,-75,-125,-155,-152,-130,-124,-157,-216,-264,-276,-262,-260,-299,
+-376,-458,-507,-518,-515,-532,-578,-632,-668,-679,-679,-683,-695,-706,-713,-719,-727,-741,-759,-783,-810,
+-836,-858,-876,-889,-898,-906,-915,-927,-940,-948,-955,-966,-985,-1006,-1022,-1034,-1048,-1066,-1081,-1091,-1101,
+-1117,-1132,-1134,-1118,-1099,-1097,-1117,-1148,-1174,-1189,-1184,-1155,-1102,-1049,-1029,-1060,-1125,-1188,-1222,-1228,-1221,
+-1212,-1203,-1193,-1181,-1168,-1154,-1142,-1135,-1134,-1134,-1129,-1120,-1112,-1108,-1103,-1095,-1085,-1079,-1081,-1086,-1087,
+-1082,-1069,-1054,-1041,-1034,-1030,-1026,-1018,-1009,-1002,-995,-987,-976,-963,-950,-935,-918,-898,-877,-858,-841,
+-826,-811,-799,-789,-778,-764,-745,-726,-708,-691,-674,-658,-641,-627,-614,-599,-583,-567,-552,-538,-523,
+-509,-497,-487,-478,-469,-460,-453,-444,-432,-420,-411,-407,-405,-405,-406,-409,-412,-410,-402,-396,-395,
+-394,-389,-380,-376,-380,-386,-384,-377,-373,-376,-380,-378,-373,-370,-373,-375,-371,-367,-367,-369,-368,
+-362,-358,-357,-356,-352,-346,-341,-335,-329,-322,-319,-318,-316,-312,-308,-306,-306,-304,-302,-297,-289,
+-278,-269,-268,-271,-269,-259,-246,-236,-230,-223,-214,-206,-202,-199,-196,-192,-186,-177,-167,-159,-153,
+-143,-128,-111,-100,-91,-79,-67,-60,-59,-56,-44,-26,-11,-2,4,9,13,20,30,40,42,
+40,42,54,69,79,87,99,116,130,138,149,165,180,190,197,210,226,241,255,272,292,
+308,319,335,359,382,394,399,414,448,491,527,551,576,613,662,701,710,687,661,669,721,
+786,823,821,804,806,832,867,894,917,947,987,1031,1069,1102,1140,1195,1264,1330,1381,1417,1452,
+1491,1537,1586,1640,1693,1738,1780,1831,1890,1938,1963,1975,1981,1945,1799,1539,1287,1242,1530,2085,2680,
+3085,3227,3222,3249,3378,3540,3637,3678,3765,3955,4175,4310,4342,4353,4401,4445,4424,4358,4303,4234,4033,
+3638,3147,2749,2545,2488,2467,2431,2392,2367,2350,2329,2310,2299,2290,2268,2227,2176,2121,2064,2006,1954,
+1910,1870,1829,1784,1738,1693,1648,1597,1530,1449,1364,1280,1193,1096,994,900,816,724,610,476,341,
+221,120,41,-18,-66,-108,-144,-170,-187,-203,-227,-253,-280,-309,-347,-388,-418,-427,-423,-417,-416,
+-419,-431,-452,-472,-479,-468,-448,-419,-378,-325,-273,-242,-236,-249,-271,-300,-330,-351,-362,-370,-387,
+-416,-458,-506,-550,-577,-581,-576,-576,-578,-576,-579,-624,-732,-878,-1009,-1091,-1130,-1149,-1156,-1139,-1097,
+-1046,-1005,-982,-973,-969,-964,-955,-940,-918,-894,-871,-850,-832,-814,-796,-779,-768,-762,-757,-751,-745,
+-744,-743,-735,-717,-694,-674,-659,-650,-644,-640,-638,-636,-633,-630,-627,-622,-618,-614,-610,-604,-596,
+-590,-584,-576,-563,-553,-549,-546,-536,-515,-493,-471,-448,-422,-398,-380,-363,-338,-305,-273,-247,-221,
+-192,-164,-139,-116,-87,-55,-24,2,32,67,103,135,168,206,247,283,314,345,379,410,434,
+459,489,523,557,589,623,658,691,720,750,786,830,876,919,958,997,1038,1079,1116,1140,1153,
+1163,1178,1196,1210,1219,1228,1240,1248,1250,1249,1255,1266,1272,1269,1263,1263,1266,1271,1277,1288,1299,
+1308,1317,1330,1348,1364,1373,1380,1394,1413,1432,1449,1469,1491,1511,1529,1551,1577,1601,1618,1629,1643,
+1662,1683,1701,1720,1741,1762,1781,1800,1823,1831,1860,1890,1921,1953,1985,2015,2045,2078,2113,2146,2176,
+2209,2247,2286,2322,2362,2414,2469,2513,2545,2577,2612,2636,2633,2610,2579,2530,2444,2340,2281,2310,2388,
+2426,2377,2283,2221,2217,2241,2252,2251,2258,2277,2301,2328,2369,2422,2473,2513,2555,2616,2693,2767,2824,
+2870,2909,2940,2958,2971,2997,3038,3080,3110,3137,3182,3241,3282,3273,3218,3150,3092,3040,2971,2880,2787,
+2719,2677,2645,2614,2584,2563,2543,2515,2480,2449,2426,2403,2368,2323,2283,2258,2240,2217,2186,2154,2121,
+2081,2031,1977,1934,1909,1896,1885,1864,1828,1777,1720,1674,1647,1635,1635,1648,1676,1707,1727,1730,1726,
+1719,1690,1613,1485,1336,1205,1121,1093,1110,1141,1142,1085,983,879,803,751,708,676,670,693,725,
+742,742,731,704,643,547,441,364,328,317,297,261,223,208,217,232,235,219,192,161,131,
+107,95,93,93,88,78,66,56,47,33,7,-37,-86,-96,-24,118,268,354,374,387,445,
+533,606,645,675,708,709,641,523,426,393,389,340,215,60,-59,-122,-157,-198,-250,-296,-326,
+-344,-352,-343,-315,-283,-267,-268,-267,-254,-232,-214,-202,-192,-179,-164,-150,-141,-139,-148,-164,-169,
+-152,-122,-102,-104,-123,-145,-165,-188,-216,-243,-264,-278,-281,-274,-266,-268,-284,-299,-294,-271,-250,
+-245,-254,-261,-260,-258,-261,-268,-276,-285,-294,-302,-309,-317,-326,-337,-349,-364,-384,-408,-431,-455,
+-481,-507,-525,-536,-550,-573,-601,-625,-644,-665,-689,-712,-736,-766,-806,-854,-902,-952,-1006,-1059,-1102,
+-1135,-1173,-1226,-1292,-1356,-1413,-1462,-1505,-1539,-1566,-1598,-1647,-1710,-1776,-1839,-1895,-1944,-1989,-2035,-2085,-2141,
+-2202,-2265,-2328,-2388,-2437,-2475,-2508,-2545,-2587,-2633,-2681,-2732,-2782,-2825,-2862,-2901,-2945,-2988,-3022,-3049,-3077,
+-3110,-3142,-3173,-3206,-3245,-3286,-3324,-3360,-3400,-3444,-3485,-3519,-3545,-3568,-3591,-3611,-3628,-3641,-3651,-3656,-3654,
+-3646,-3635,-3637,-3669,-3737,-3822,-3892,-3931,-3948,-3971,-4015,-4076,-4141,-4194,-4228,-4244,-4253,-4268,-4292,-4317,-4337,
+-4352,-4367,-4382,-4390,-4390,-4387,-4387,-4392,-4398,-4406,-4415,-4424,-4432,-4440,-4451,-4466,-4481,-4493,-4502,-4510,-4521,
+-4530,-4534,-4531,-4521,-4507,-4489,-4467,-4442,-4413,-4381,-4347,-4312,-4278,-4249,-4223,-4200,-4171,-4134,-4092,-4054,-4028,
+-4008,-3982,-3943,-3895,-3847,-3804,-3763,-3725,-3699,-3693,-3703,-3709,-3699,-3672,-3637,-3593,-3531,-3453,-3370,-3296,-3238,
+-3193,-3163,-3152,-3159,-3182,-3215,-3249,-3271,-3271,-3249,-3215,-3171,-3102,-2995,-2853,-2698,-2554,-2425,-2308,-2200,-2102,
+-2011,-1923,-1836,-1757,-1688,-1618,-1541,-1457,-1374,-1296,-1221,-1146,-1078,-1024,-990,-974,-968,-954,-914,-844,-762,
+-697,-659,-636,-609,-575,-542,-511,-474,-424,-366,-315,-278,-253,-234,-218,-208,-202,-198,-191,-179,-160,
+-132,-97,-52,4,73,141,189,206,202,201,224,275,345,414,471,510,536,556,576,596,619,
+644,671,697,721,746,773,795,804,803,814,860,946,1056,1174,1289,1401,1502,1585,1646,1695,1747,
+1811,1888,1973,2064,2161,2264,2361,2440,2495,2533,2568,2611,2662,2715,2769,2822,2874,2927,2991,3073,3168,
+3259,3330,3384,3435,3485,3519,3524,3505,3482,3467,3461,3459,3460,3472,3495,3525,3561,3609,3678,3767,3860,
+3942,4015,4096,4201,4318,4422,4498,4563,4636,4720,4790,4827,4838,4841,4849,4857,4865,4880,4911,4957,5010,
+5052,5071,5056,5019,4989,4988,5004,4999,4957,4902,4872,4868,4858,4822,4785,4783,4806,4806,4750,4669,4624,
+4650,4717,4772,4788,4781,4777,4782,4782,4764,4736,4718,4720,4735,4753,4774,4809,4860,4909,4936,4934,4924,
+4934,4975,5038,5094,5120,5112,5089,5082,5100,5131,5147,5132,5098,5070,5066,5083,5111,5138,5159,5176,5193,
+5213,5242,5289,5354,5429,5498,5550,5593,5636,5679,5701,5685,5639,5592,5563,5543,5508,5438,5336,5222,5122,
+5050,5005,4979,4967,4977,5017,5082,5153,5212,5261,5308,5352,5383,5395,5393,5391,5388,5377,5352,5317,5284,
+5258,5233,5203,5164,5125,5092,5069,5050,5029,5008,4993,4989,4995,5006,5022,5042,5069,5102,5144,5190,5220,
+5219,5194,5176,5187,5212,5210,5172,5131,5119,5076,4860,4360,3631,2903,2437,2348,2543,2823,3033,3138,3178,
+3198,3205,3189,3149,3098,3046,2994,2932,2858,2778,2697,2622,2551,2485,2422,2363,2306,2246,2180,2110,2039,
+1972,1908,1847,1789,1736,1690,1648,1606,1565,1526,1491,1460,1426,1384,1335,1287,1249,1222,1196,1169,1147,
+1139,1141,1137,1115,1078,1039,1008,983,957,926,889,849,808,769,733,701,669,637,609,580,547,
+506,464,430,404,381,352,317,283,257,240,228,217,202,184,161,132,94,51,11,-18,-44,
+-77,-120,-160,-178,-173,-168,-186,-230,-273,-287,-275,-272,-314,-402,-492,-534,-515,-474,-464,-507,-579,
+-636,-658,-657,-657,-668,-686,-701,-710,-719,-735,-759,-788,-816,-839,-860,-880,-896,-906,-913,-923,-938,
+-953,-963,-969,-978,-992,-1008,-1022,-1033,-1046,-1063,-1080,-1095,-1109,-1126,-1140,-1144,-1137,-1126,-1127,-1142,-1164,
+-1182,-1189,-1184,-1167,-1138,-1107,-1093,-1108,-1148,-1192,-1221,-1230,-1226,-1220,-1216,-1213,-1207,-1193,-1176,-1160,-1149,
+-1145,-1140,-1130,-1119,-1112,-1106,-1099,-1088,-1076,-1072,-1076,-1082,-1085,-1081,-1069,-1055,-1041,-1033,-1029,-1026,-1018,
+-1007,-997,-990,-982,-972,-960,-948,-934,-918,-900,-882,-866,-850,-833,-817,-804,-793,-780,-763,-746,-731,
+-717,-703,-686,-669,-653,-639,-625,-609,-593,-577,-564,-551,-537,-522,-508,-498,-489,-481,-472,-463,-453,
+-441,-429,-422,-420,-422,-424,-426,-428,-428,-423,-413,-404,-402,-402,-398,-390,-387,-393,-399,-397,-388,
+-382,-384,-390,-390,-387,-385,-385,-384,-379,-374,-373,-374,-372,-368,-365,-363,-361,-355,-347,-340,-333,
+-327,-321,-318,-317,-314,-309,-306,-303,-301,-298,-296,-291,-281,-269,-261,-262,-265,-262,-251,-239,-230,
+-223,-214,-204,-197,-192,-187,-181,-177,-171,-163,-152,-143,-137,-128,-111,-91,-75,-65,-56,-49,-44,
+-40,-31,-17,-4,4,10,16,22,27,32,42,51,53,49,50,63,81,94,103,115,130,
+143,152,163,180,197,208,214,223,234,247,265,290,317,333,343,359,387,413,418,410,417,
+452,499,531,551,579,628,683,710,696,662,648,677,739,795,818,812,803,815,846,885,918,
+945,972,1004,1043,1085,1128,1173,1225,1284,1341,1385,1417,1445,1479,1522,1577,1641,1704,1756,1796,1835,
+1877,1913,1932,1943,1946,1906,1763,1516,1285,1264,1571,2128,2693,3041,3126,3090,3113,3252,3422,3528,3586,
+3697,3903,4133,4279,4325,4339,4375,4410,4400,4348,4272,4137,3868,3461,3030,2720,2578,2535,2499,2446,2402,
+2384,2376,2362,2347,2341,2338,2324,2287,2232,2166,2095,2025,1963,1911,1870,1834,1798,1755,1707,1655,1597,
+1529,1449,1362,1273,1183,1085,985,891,804,713,607,487,367,261,175,111,61,16,-28,-73,-111,
+-143,-175,-203,-215,-211,-209,-227,-267,-303,-319,-319,-319,-326,-338,-354,-376,-402,-419,-418,-392,-347,
+-292,-245,-224,-233,-257,-279,-297,-321,-354,-388,-414,-430,-446,-467,-498,-538,-581,-612,-624,-626,-628,
+-633,-641,-663,-725,-838,-972,-1081,-1141,-1165,-1176,-1175,-1149,-1097,-1039,-997,-978,-972,-967,-958,-946,-930,
+-910,-889,-869,-850,-833,-818,-804,-793,-784,-775,-764,-752,-744,-741,-736,-726,-709,-691,-676,-662,-649,
+-639,-634,-633,-630,-626,-620,-613,-608,-604,-602,-599,-593,-583,-575,-567,-557,-542,-530,-525,-523,-512,
+-491,-468,-449,-430,-407,-381,-359,-338,-312,-281,-251,-227,-202,-171,-139,-112,-87,-59,-29,0,28,
+60,95,129,158,190,228,270,306,337,368,402,433,459,484,516,552,587,619,652,688,721,
+751,782,819,860,903,948,996,1043,1085,1118,1144,1162,1172,1175,1178,1184,1194,1206,1221,1237,1247,
+1251,1253,1260,1271,1277,1274,1271,1273,1279,1284,1290,1299,1310,1321,1331,1345,1359,1370,1376,1383,1399,
+1421,1441,1460,1483,1507,1527,1543,1560,1582,1600,1610,1616,1627,1646,1666,1685,1704,1728,1754,1779,1804,
+1831,1855,1887,1919,1950,1982,2013,2041,2067,2097,2131,2164,2193,2224,2263,2305,2345,2386,2435,2491,2540,
+2580,2617,2653,2675,2666,2634,2595,2545,2469,2371,2296,2285,2322,2346,2322,2275,2251,2261,2276,2275,2268,
+2274,2293,2313,2337,2378,2434,2487,2525,2563,2621,2697,2770,2819,2852,2881,2913,2944,2975,3012,3055,3095,
+3128,3164,3217,3275,3306,3282,3209,3125,3059,3006,2943,2862,2782,2726,2693,2665,2632,2603,2591,2587,2573,
+2546,2516,2492,2465,2422,2369,2324,2298,2282,2261,2235,2211,2187,2153,2105,2053,2010,1978,1950,1920,1887,
+1844,1788,1726,1675,1653,1659,1681,1717,1763,1804,1822,1812,1790,1766,1725,1636,1494,1331,1191,1103,1076,
+1103,1156,1190,1165,1081,977,893,836,791,757,745,762,791,812,818,811,785,722,623,520,450,
+423,410,381,333,292,282,297,312,307,281,243,208,181,167,164,162,151,133,115,101,91,
+84,77,60,20,-32,-50,16,163,318,412,443,472,545,637,696,711,718,737,742,694,603,
+521,478,442,366,238,101,-1,-64,-109,-152,-194,-227,-252,-269,-274,-262,-238,-217,-208,-206,-202,
+-192,-180,-170,-160,-146,-131,-119,-111,-107,-106,-111,-117,-111,-88,-60,-46,-52,-72,-93,-113,-137,
+-165,-191,-209,-219,-222,-219,-218,-224,-236,-241,-231,-210,-195,-193,-197,-194,-187,-185,-193,-206,-217,
+-228,-243,-260,-271,-276,-278,-283,-291,-304,-321,-341,-364,-388,-412,-431,-446,-461,-485,-516,-546,-569,
+-589,-611,-633,-651,-668,-696,-737,-784,-828,-874,-926,-980,-1024,-1058,-1097,-1151,-1216,-1277,-1326,-1365,-1400,
+-1432,-1468,-1514,-1572,-1637,-1700,-1757,-1808,-1854,-1897,-1944,-1998,-2058,-2121,-2183,-2244,-2299,-2345,-2382,-2420,-2464,
+-2511,-2556,-2598,-2645,-2695,-2744,-2787,-2826,-2868,-2907,-2940,-2967,-2996,-3029,-3062,-3092,-3124,-3161,-3202,-3243,-3284,
+-3328,-3372,-3414,-3449,-3480,-3509,-3535,-3557,-3574,-3586,-3592,-3593,-3587,-3576,-3567,-3576,-3620,-3694,-3776,-3836,-3868,
+-3887,-3917,-3967,-4032,-4098,-4154,-4190,-4203,-4206,-4217,-4244,-4276,-4301,-4314,-4326,-4339,-4349,-4352,-4350,-4350,-4356,
+-4366,-4377,-4390,-4402,-4413,-4424,-4437,-4452,-4465,-4471,-4472,-4474,-4482,-4492,-4498,-4495,-4483,-4466,-4449,-4431,-4410,
+-4385,-4355,-4324,-4294,-4264,-4232,-4198,-4167,-4139,-4112,-4081,-4049,-4020,-3996,-3974,-3948,-3919,-3889,-3851,-3800,-3740,
+-3690,-3669,-3679,-3700,-3713,-3708,-3684,-3637,-3564,-3471,-3379,-3306,-3250,-3207,-3176,-3166,-3179,-3209,-3245,-3278,-3296,
+-3292,-3265,-3221,-3162,-3081,-2966,-2819,-2663,-2518,-2391,-2276,-2173,-2087,-2018,-1956,-1891,-1823,-1757,-1692,-1621,-1539,
+-1450,-1361,-1279,-1210,-1152,-1104,-1066,-1042,-1030,-1020,-991,-935,-864,-799,-747,-698,-641,-581,-531,-496,-467,
+-436,-403,-373,-347,-322,-302,-291,-289,-294,-299,-302,-298,-282,-251,-212,-169,-115,-43,37,101,129,
+126,119,135,182,245,308,359,397,422,440,453,464,474,484,490,491,490,495,511,535,558,
+581,616,673,750,833,919,1009,1106,1202,1285,1352,1414,1481,1560,1650,1753,1869,1994,2118,2227,2313,
+2377,2428,2475,2521,2566,2612,2664,2720,2774,2823,2877,2952,3046,3138,3210,3264,3311,3358,3388,3388,3365,
+3339,3323,3319,3323,3334,3356,3384,3415,3450,3498,3569,3660,3757,3845,3922,4002,4097,4204,4306,4392,4470,
+4554,4639,4708,4749,4770,4786,4800,4808,4811,4821,4851,4898,4950,4995,5019,5013,4982,4952,4945,4952,4945,
+4907,4862,4838,4830,4803,4739,4669,4632,4632,4627,4590,4540,4519,4550,4612,4666,4697,4711,4720,4728,4725,
+4707,4683,4665,4664,4678,4698,4719,4740,4768,4798,4823,4841,4857,4884,4926,4982,5038,5077,5086,5067,5040,
+5030,5048,5079,5096,5082,5046,5011,5000,5016,5049,5087,5123,5152,5173,5189,5215,5268,5347,5428,5490,5529,
+5563,5601,5630,5628,5598,5563,5545,5538,5517,5466,5393,5318,5258,5218,5193,5176,5168,5177,5205,5246,5289,
+5324,5351,5375,5392,5398,5393,5384,5376,5365,5346,5320,5292,5267,5243,5214,5180,5145,5112,5084,5060,5038,
+5015,4992,4977,4974,4986,5005,5026,5048,5072,5102,5141,5183,5211,5208,5183,5167,5182,5206,5198,5148,5093,
+5056,4961,4666,4090,3344,2694,2376,2428,2692,2962,3126,3195,3225,3243,3240,3211,3163,3112,3061,3002,2930,
+2851,2772,2695,2621,2548,2478,2415,2356,2297,2234,2170,2104,2035,1965,1896,1833,1778,1728,1678,1630,1589,
+1555,1524,1492,1458,1421,1378,1328,1280,1241,1211,1181,1151,1128,1122,1128,1127,1107,1072,1035,1004,976,
+947,913,875,833,791,752,717,682,648,619,596,574,541,499,459,434,420,402,370,325,281,
+248,227,215,205,193,178,158,132,96,52,8,-25,-50,-75,-108,-146,-177,-193,-203,-225,-266,
+-311,-335,-333,-328,-355,-420,-490,-515,-479,-418,-390,-425,-504,-580,-622,-634,-639,-656,-684,-712,-729,
+-740,-755,-780,-807,-828,-842,-855,-874,-893,-907,-915,-925,-938,-953,-966,-977,-990,-1005,-1018,-1028,-1039,
+-1052,-1068,-1085,-1101,-1118,-1133,-1146,-1153,-1155,-1157,-1164,-1176,-1187,-1194,-1194,-1193,-1198,-1205,-1209,-1207,-1205,
+-1209,-1219,-1228,-1228,-1223,-1219,-1221,-1227,-1227,-1218,-1201,-1185,-1174,-1167,-1159,-1147,-1135,-1127,-1120,-1110,-1096,
+-1083,-1078,-1077,-1078,-1076,-1071,-1063,-1052,-1041,-1032,-1029,-1027,-1021,-1011,-1000,-991,-983,-973,-961,-948,-934,
+-918,-901,-886,-873,-858,-840,-823,-809,-796,-780,-762,-745,-732,-720,-707,-690,-674,-660,-647,-632,-616,
+-599,-584,-571,-560,-547,-533,-520,-509,-500,-491,-482,-471,-459,-449,-441,-437,-437,-438,-438,-438,-437,
+-436,-431,-422,-415,-412,-411,-407,-400,-398,-404,-411,-411,-402,-395,-395,-399,-401,-398,-395,-394,-391,
+-386,-382,-381,-382,-380,-376,-373,-370,-366,-359,-350,-341,-332,-324,-319,-317,-315,-312,-307,-303,-299,
+-294,-290,-287,-283,-273,-260,-253,-254,-255,-248,-234,-221,-213,-206,-196,-185,-176,-170,-165,-160,-157,
+-154,-144,-130,-119,-115,-112,-99,-79,-60,-47,-42,-39,-36,-29,-15,2,16,21,24,30,37,
+43,49,59,71,76,74,73,83,100,115,125,136,150,162,170,180,194,210,223,234,244,
+252,259,273,298,323,335,339,356,394,430,437,422,419,447,490,519,534,560,609,658,676,
+662,649,668,718,768,792,792,789,801,829,864,900,934,963,988,1013,1048,1095,1147,1196,1244,
+1295,1347,1388,1417,1439,1468,1511,1571,1645,1719,1777,1812,1836,1863,1890,1910,1919,1917,1874,1738,1509,
+1299,1301,1630,2198,2753,3066,3105,3034,3043,3184,3369,3501,3590,3714,3910,4122,4266,4321,4332,4348,4369,
+4371,4332,4222,3997,3648,3244,2908,2719,2646,2599,2525,2444,2398,2391,2394,2386,2374,2369,2368,2356,2322,
+2266,2195,2120,2049,1988,1938,1897,1859,1819,1772,1717,1659,1599,1533,1455,1366,1271,1172,1072,974,882,
+796,708,612,510,409,316,240,183,139,98,55,10,-32,-78,-128,-168,-177,-150,-115,-107,-131,
+-163,-179,-182,-187,-201,-217,-234,-259,-298,-341,-365,-353,-305,-247,-213,-222,-259,-295,-310,-315,-335,
+-376,-423,-462,-489,-512,-539,-571,-609,-651,-686,-708,-719,-729,-743,-761,-792,-851,-942,-1040,-1114,-1154,
+-1172,-1181,-1173,-1137,-1077,-1019,-983,-971,-970,-965,-954,-940,-924,-907,-887,-868,-851,-837,-824,-811,-799,
+-786,-773,-758,-743,-732,-724,-715,-703,-690,-678,-668,-655,-641,-631,-628,-628,-624,-617,-610,-603,-596,
+-591,-589,-585,-577,-565,-554,-546,-535,-521,-507,-500,-494,-481,-458,-436,-419,-404,-381,-353,-326,-300,
+-273,-243,-215,-191,-166,-135,-101,-71,-44,-16,12,41,69,99,133,164,192,221,258,298,333,
+364,397,433,468,496,525,558,594,629,660,693,727,760,792,825,860,894,928,970,1023,1075,
+1114,1137,1152,1168,1181,1187,1187,1190,1199,1213,1230,1245,1255,1260,1264,1271,1278,1282,1281,1282,1287,
+1295,1301,1306,1315,1326,1338,1348,1359,1370,1377,1383,1394,1413,1434,1454,1474,1498,1525,1545,1558,1571,
+1587,1601,1607,1611,1623,1644,1666,1684,1705,1734,1767,1798,1826,1855,1895,1927,1958,1986,2014,2043,2069,
+2094,2121,2152,2182,2208,2235,2270,2311,2351,2391,2438,2495,2554,2605,2649,2690,2714,2707,2670,2622,2571,
+2505,2417,2334,2289,2285,2294,2291,2284,2290,2305,2310,2300,2291,2298,2313,2324,2338,2374,2430,2483,2520,
+2557,2620,2708,2792,2847,2875,2894,2920,2954,2991,3029,3066,3103,3142,3191,3251,3306,3327,3290,3207,3113,
+3037,2980,2922,2852,2785,2738,2711,2686,2655,2629,2623,2628,2623,2598,2566,2537,2506,2460,2404,2356,2329,
+2312,2292,2271,2256,2243,2219,2179,2135,2098,2062,2017,1965,1914,1864,1806,1740,1687,1669,1689,1736,1796,
+1858,1905,1915,1887,1843,1803,1752,1660,1519,1359,1224,1138,1107,1129,1188,1243,1245,1176,1069,971,906,
+863,833,819,828,851,872,883,880,853,787,688,592,533,511,491,447,390,352,350,369,380,
+367,335,296,261,237,228,229,225,207,180,158,147,141,135,130,115,76,18,-8,52,202,
+374,493,548,589,654,726,764,763,757,765,764,724,654,585,528,461,359,233,114,27,-32,
+-74,-106,-130,-154,-181,-203,-209,-198,-181,-169,-161,-150,-136,-124,-121,-120,-113,-99,-85,-76,-75,
+-76,-77,-76,-70,-55,-33,-13,-7,-16,-33,-51,-73,-99,-128,-151,-163,-167,-168,-168,-168,-170,
+-171,-169,-162,-154,-151,-151,-148,-139,-130,-131,-138,-146,-154,-167,-187,-208,-221,-224,-225,-232,-244,
+-257,-269,-283,-301,-322,-340,-355,-371,-395,-427,-460,-485,-504,-525,-553,-579,-596,-609,-632,-670,-714,
+-756,-798,-846,-898,-944,-982,-1023,-1075,-1135,-1191,-1235,-1268,-1300,-1336,-1383,-1440,-1504,-1565,-1621,-1670,-1717,
+-1762,-1806,-1855,-1913,-1977,-2041,-2101,-2157,-2208,-2251,-2291,-2334,-2382,-2431,-2472,-2511,-2556,-2610,-2664,-2710,-2748,
+-2785,-2821,-2855,-2885,-2916,-2949,-2983,-3015,-3047,-3084,-3124,-3165,-3208,-3252,-3298,-3342,-3381,-3416,-3448,-3476,-3499,
+-3515,-3526,-3531,-3530,-3522,-3508,-3498,-3509,-3557,-3635,-3716,-3775,-3807,-3833,-3872,-3930,-3996,-4059,-4112,-4144,-4153,
+-4152,-4161,-4192,-4230,-4258,-4270,-4279,-4294,-4309,-4316,-4315,-4315,-4321,-4334,-4351,-4368,-4384,-4397,-4406,-4416,-4427,
+-4438,-4443,-4443,-4444,-4449,-4457,-4462,-4459,-4449,-4434,-4417,-4399,-4378,-4354,-4325,-4296,-4270,-4244,-4215,-4180,-4144,
+-4114,-4091,-4071,-4045,-4015,-3983,-3955,-3931,-3911,-3891,-3865,-3826,-3776,-3728,-3696,-3684,-3686,-3696,-3709,-3712,-3681,
+-3603,-3496,-3394,-3322,-3275,-3237,-3206,-3192,-3204,-3236,-3274,-3306,-3322,-3313,-3274,-3212,-3134,-3040,-2923,-2785,-2638,
+-2498,-2371,-2257,-2160,-2090,-2044,-2005,-1954,-1889,-1820,-1756,-1692,-1617,-1527,-1433,-1349,-1284,-1238,-1202,-1168,-1140,
+-1121,-1105,-1077,-1027,-961,-892,-824,-752,-673,-597,-539,-500,-475,-458,-444,-432,-413,-388,-366,-356,-359,
+-367,-375,-382,-385,-372,-342,-305,-267,-219,-149,-61,14,49,44,28,36,76,135,197,250,291,
+319,336,347,355,363,369,366,355,340,334,345,370,406,450,508,577,647,708,763,827,904,
+988,1066,1138,1211,1290,1374,1466,1573,1700,1840,1977,2094,2184,2255,2318,2377,2428,2471,2513,2563,2620,
+2675,2723,2772,2838,2922,3008,3080,3136,3185,3226,3245,3238,3215,3195,3187,3190,3201,3222,3251,3282,3313,
+3348,3399,3471,3559,3653,3744,3829,3913,4002,4098,4195,4288,4378,4467,4550,4618,4669,4707,4738,4757,4762,
+4760,4768,4795,4838,4884,4925,4952,4955,4934,4906,4892,4892,4887,4866,4844,4836,4830,4785,4689,4574,4491,
+4456,4448,4442,4437,4446,4473,4509,4546,4582,4617,4647,4662,4662,4649,4629,4611,4604,4614,4637,4666,4694,
+4717,4738,4757,4778,4804,4838,4877,4922,4974,5026,5061,5060,5026,4989,4980,5004,5037,5046,5019,4973,4937,
+4931,4957,5007,5065,5114,5141,5149,5160,5199,5273,5358,5427,5470,5501,5533,5558,5560,5540,5517,5505,5500,
+5482,5442,5389,5345,5321,5315,5316,5315,5314,5318,5329,5344,5355,5360,5365,5373,5379,5378,5371,5362,5353,
+5337,5314,5288,5266,5244,5215,5181,5149,5124,5103,5080,5052,5023,4996,4973,4960,4962,4982,5008,5030,5045,
+5064,5096,5143,5187,5207,5194,5167,5157,5176,5194,5171,5106,5037,4971,4821,4455,3838,3129,2597,2421,2567,
+2844,3071,3190,3240,3271,3286,3271,3228,3177,3129,3077,3011,2932,2849,2772,2699,2623,2546,2472,2405,2343,
+2281,2218,2157,2098,2035,1964,1892,1826,1772,1721,1668,1615,1574,1547,1524,1496,1459,1418,1374,1327,1279,
+1235,1197,1162,1132,1113,1109,1113,1110,1091,1062,1031,1001,971,938,904,866,824,781,741,704,667,
+632,603,582,560,527,486,454,442,439,426,390,338,288,249,223,206,193,180,166,148,124,
+93,56,17,-19,-48,-73,-100,-131,-166,-199,-229,-259,-297,-338,-370,-380,-375,-378,-404,-439,-452,
+-425,-380,-356,-382,-452,-531,-586,-611,-621,-640,-674,-713,-740,-757,-772,-795,-821,-839,-846,-853,-867,
+-885,-902,-914,-926,-939,-952,-965,-979,-997,-1014,-1028,-1040,-1053,-1069,-1084,-1098,-1111,-1124,-1135,-1144,-1152,
+-1161,-1174,-1187,-1199,-1207,-1209,-1206,-1208,-1222,-1248,-1271,-1279,-1270,-1256,-1247,-1243,-1238,-1232,-1228,-1232,-1239,
+-1242,-1235,-1221,-1207,-1197,-1190,-1181,-1170,-1158,-1150,-1143,-1133,-1119,-1106,-1095,-1086,-1077,-1067,-1061,-1057,-1051,
+-1042,-1034,-1031,-1029,-1024,-1016,-1007,-999,-990,-978,-965,-951,-937,-920,-903,-888,-876,-862,-846,-829,-815,
+-802,-785,-767,-749,-735,-722,-707,-692,-678,-665,-653,-638,-623,-607,-593,-579,-568,-557,-545,-532,-520,
+-510,-501,-492,-481,-471,-464,-461,-460,-459,-458,-453,-449,-446,-444,-442,-436,-430,-426,-423,-418,-411,
+-409,-414,-421,-422,-416,-410,-410,-413,-414,-411,-406,-402,-398,-394,-391,-390,-390,-389,-385,-381,-376,
+-370,-361,-352,-341,-331,-322,-317,-314,-311,-307,-302,-297,-292,-286,-281,-278,-274,-263,-250,-241,-239,
+-237,-225,-208,-195,-189,-185,-175,-162,-151,-143,-137,-135,-137,-136,-125,-109,-96,-94,-95,-87,-69,
+-50,-35,-28,-25,-24,-20,-6,13,29,37,40,46,54,59,63,73,89,101,104,103,109,
+122,135,146,158,172,183,192,199,207,217,229,246,264,277,282,290,307,324,327,323,339,
+386,435,451,435,424,447,491,523,537,555,588,618,626,623,642,698,761,794,787,771,777,
+809,850,884,914,945,974,995,1017,1053,1104,1157,1202,1243,1291,1345,1389,1417,1437,1465,1510,1575,
+1655,1735,1795,1824,1836,1852,1875,1894,1899,1888,1841,1713,1499,1308,1332,1695,2305,2889,3202,3214,3106,
+3085,3216,3417,3587,3708,3827,3976,4129,4242,4298,4317,4328,4345,4356,4319,4166,3860,3453,3076,2847,2765,
+2733,2655,2530,2423,2381,2389,2403,2403,2396,2394,2391,2376,2342,2288,2220,2148,2081,2027,1981,1938,1891,
+1842,1789,1733,1674,1613,1546,1467,1372,1267,1160,1058,964,877,794,712,630,546,461,378,304,245,
+199,158,119,82,46,3,-51,-99,-112,-80,-30,0,0,-10,-13,-13,-25,-52,-79,-102,-132,
+-185,-255,-314,-331,-304,-261,-246,-274,-320,-345,-337,-324,-339,-388,-448,-499,-538,-575,-616,-659,-705,
+-752,-794,-823,-841,-856,-875,-899,-931,-976,-1033,-1090,-1128,-1148,-1158,-1162,-1150,-1112,-1054,-1002,-974,-966,
+-965,-959,-947,-933,-919,-906,-889,-872,-856,-842,-827,-809,-791,-775,-762,-749,-735,-720,-706,-691,-678,
+-666,-658,-650,-639,-628,-622,-623,-623,-618,-609,-602,-597,-590,-582,-575,-568,-557,-541,-528,-518,-508,
+-493,-477,-465,-454,-438,-414,-390,-371,-352,-326,-294,-263,-235,-207,-177,-149,-125,-100,-70,-39,-12,
+13,41,70,98,124,152,183,213,239,267,301,338,373,404,438,475,510,540,570,602,636,
+668,700,733,767,799,831,865,898,926,953,990,1042,1096,1132,1147,1158,1175,1195,1206,1207,1208,
+1217,1231,1246,1257,1266,1273,1278,1282,1286,1289,1291,1296,1303,1311,1317,1324,1333,1344,1354,1364,1373,
+1383,1390,1399,1413,1434,1453,1469,1487,1513,1541,1561,1571,1582,1597,1611,1620,1629,1646,1671,1694,1714,
+1739,1772,1809,1840,1867,1895,1935,1966,1993,2016,2039,2065,2092,2115,2140,2167,2194,2217,2241,2273,2313,
+2352,2388,2432,2490,2554,2610,2659,2705,2739,2742,2709,2654,2594,2529,2453,2375,2320,2299,2300,2307,2314,
+2325,2334,2331,2320,2314,2321,2329,2331,2337,2366,2419,2473,2512,2552,2617,2713,2815,2889,2928,2946,2964,
+2988,3018,3049,3079,3113,3155,3209,3270,3318,3332,3293,3212,3116,3035,2974,2919,2857,2797,2753,2726,2704,
+2679,2659,2656,2663,2658,2633,2600,2571,2539,2493,2435,2386,2355,2335,2315,2298,2293,2291,2275,2243,2207,
+2178,2144,2092,2028,1967,1915,1858,1792,1739,1726,1758,1819,1889,1953,1992,1987,1941,1883,1839,1795,1714,
+1586,1440,1316,1232,1187,1186,1230,1290,1312,1259,1150,1039,964,925,903,891,893,908,926,939,939,
+911,842,745,657,605,583,552,496,434,405,414,435,437,413,377,342,312,291,281,280,274,
+254,227,209,203,199,193,184,168,128,66,27,70,212,396,549,641,695,740,776,790,788,
+787,788,771,726,667,612,554,469,352,228,125,48,-5,-39,-54,-63,-83,-116,-146,-154,-143,
+-130,-121,-111,-91,-69,-58,-61,-69,-68,-59,-47,-41,-41,-43,-42,-35,-23,-6,9,20,23,
+19,9,-7,-31,-61,-89,-108,-115,-116,-116,-116,-113,-107,-100,-96,-98,-102,-105,-102,-94,-87,
+-86,-91,-97,-99,-103,-117,-138,-157,-166,-168,-174,-188,-203,-213,-219,-227,-241,-259,-275,-291,-311,
+-339,-370,-396,-413,-428,-453,-487,-519,-538,-550,-570,-602,-643,-683,-723,-768,-817,-864,-906,-949,-997,
+-1050,-1100,-1141,-1176,-1211,-1254,-1308,-1370,-1433,-1489,-1537,-1583,-1628,-1673,-1720,-1772,-1832,-1897,-1960,-2017,-2069,
+-2118,-2162,-2204,-2249,-2298,-2345,-2386,-2428,-2479,-2536,-2589,-2630,-2662,-2694,-2730,-2766,-2800,-2835,-2869,-2904,-2939,
+-2975,-3013,-3052,-3091,-3131,-3175,-3221,-3267,-3311,-3350,-3385,-3414,-3436,-3452,-3464,-3471,-3471,-3462,-3445,-3430,-3437,
+-3482,-3562,-3647,-3711,-3750,-3785,-3833,-3894,-3957,-4013,-4058,-4086,-4093,-4092,-4103,-4135,-4177,-4207,-4222,-4233,-4249,
+-4267,-4276,-4276,-4277,-4286,-4302,-4322,-4342,-4361,-4373,-4380,-4384,-4392,-4401,-4409,-4412,-4414,-4416,-4420,-4422,-4420,
+-4414,-4402,-4385,-4365,-4342,-4316,-4289,-4262,-4239,-4219,-4196,-4165,-4127,-4092,-4068,-4054,-4038,-4015,-3983,-3949,-3916,
+-3887,-3862,-3839,-3819,-3804,-3788,-3762,-3722,-3677,-3656,-3672,-3706,-3709,-3647,-3538,-3431,-3360,-3320,-3287,-3254,-3235,
+-3240,-3265,-3297,-3325,-3341,-3332,-3286,-3209,-3112,-3005,-2886,-2755,-2618,-2486,-2363,-2252,-2162,-2106,-2080,-2059,-2018,
+-1952,-1878,-1813,-1755,-1689,-1607,-1517,-1436,-1378,-1343,-1322,-1300,-1274,-1247,-1219,-1182,-1129,-1061,-985,-904,-816,
+-726,-644,-581,-539,-513,-501,-499,-496,-480,-451,-426,-418,-427,-441,-452,-461,-465,-452,-423,-386,-351,
+-307,-235,-142,-62,-29,-43,-70,-75,-46,7,68,127,177,215,242,264,287,309,326,329,317,
+300,290,295,315,349,397,461,534,601,653,697,747,812,884,956,1029,1105,1185,1264,1346,1443,
+1566,1708,1848,1968,2062,2139,2209,2274,2329,2372,2412,2459,2515,2572,2624,2676,2739,2815,2892,2960,3015,
+3061,3091,3098,3085,3069,3062,3067,3076,3092,3116,3148,3181,3214,3254,3313,3389,3474,3562,3651,3738,3821,
+3904,3991,4087,4187,4284,4372,4450,4521,4585,4643,4688,4713,4716,4712,4718,4742,4776,4813,4848,4877,4889,
+4879,4855,4838,4832,4828,4819,4816,4827,4832,4790,4680,4531,4399,4322,4306,4331,4374,4409,4425,4427,4435,
+4467,4514,4555,4577,4580,4575,4566,4557,4553,4559,4580,4612,4653,4696,4730,4749,4757,4767,4789,4821,4860,
+4908,4964,5013,5030,5006,4963,4934,4939,4963,4978,4966,4931,4892,4874,4888,4937,5003,5060,5091,5099,5106,
+5140,5206,5284,5352,5399,5434,5467,5491,5497,5483,5461,5447,5438,5426,5401,5367,5339,5327,5333,5345,5352,
+5352,5350,5354,5363,5369,5367,5363,5362,5363,5359,5350,5338,5324,5303,5275,5250,5231,5210,5180,5145,5117,
+5101,5086,5061,5028,4997,4973,4955,4944,4949,4974,5005,5024,5031,5045,5083,5141,5189,5202,5180,5152,5150,
+5170,5174,5129,5048,4969,4881,4685,4267,3642,3001,2591,2529,2723,2978,3156,3244,3290,3322,3328,3297,3244,
+3191,3142,3087,3016,2934,2852,2776,2703,2627,2548,2470,2397,2331,2269,2207,2147,2090,2032,1966,1893,1825,
+1767,1714,1659,1605,1565,1541,1523,1497,1459,1416,1374,1329,1281,1230,1183,1143,1115,1100,1097,1096,1086,
+1068,1045,1021,993,961,930,900,866,825,780,737,698,658,620,589,567,542,506,466,439,434,
+437,424,387,336,288,250,221,197,178,162,145,124,101,77,50,20,-13,-47,-77,-102,-129,
+-163,-205,-244,-275,-300,-327,-355,-377,-383,-380,-380,-388,-398,-398,-388,-383,-401,-449,-509,-559,-584,
+-589,-600,-632,-680,-722,-749,-768,-791,-819,-840,-849,-855,-865,-881,-896,-912,-929,-946,-961,-972,-985,
+-1002,-1021,-1037,-1053,-1071,-1090,-1106,-1116,-1125,-1133,-1141,-1146,-1151,-1160,-1174,-1190,-1203,-1214,-1220,-1222,-1224,
+-1233,-1252,-1271,-1280,-1275,-1265,-1260,-1259,-1258,-1254,-1250,-1250,-1252,-1251,-1245,-1234,-1223,-1213,-1205,-1195,-1184,
+-1173,-1166,-1161,-1154,-1144,-1131,-1117,-1102,-1085,-1071,-1064,-1061,-1057,-1049,-1041,-1035,-1031,-1026,-1018,-1012,-1006,
+-995,-980,-963,-950,-938,-923,-905,-889,-877,-866,-852,-837,-823,-809,-793,-775,-759,-743,-728,-711,-695,
+-683,-671,-658,-644,-631,-618,-605,-591,-578,-568,-558,-545,-530,-519,-511,-504,-495,-488,-485,-485,-485,
+-483,-478,-472,-466,-462,-460,-458,-455,-450,-444,-437,-429,-422,-421,-425,-430,-431,-425,-421,-422,-427,
+-429,-426,-421,-415,-409,-405,-401,-399,-397,-394,-391,-386,-380,-372,-362,-352,-342,-331,-321,-315,-310,
+-305,-298,-292,-288,-283,-277,-273,-270,-265,-252,-236,-226,-223,-219,-207,-190,-179,-176,-173,-165,-153,
+-141,-130,-123,-121,-123,-122,-113,-97,-86,-82,-79,-69,-53,-37,-23,-11,-2,0,-1,4,21,
+39,50,55,62,70,75,75,79,92,107,115,118,122,132,145,158,171,184,196,208,217,
+222,225,231,248,273,294,305,312,326,338,337,330,344,391,446,468,455,444,468,519,560,
+577,584,597,608,607,609,642,709,774,799,785,771,786,827,870,901,927,956,983,1003,1026,
+1064,1116,1162,1197,1230,1279,1337,1384,1412,1433,1466,1519,1588,1668,1747,1804,1828,1832,1841,1860,1874,
+1871,1852,1804,1685,1485,1308,1356,1760,2428,3066,3405,3408,3268,3210,3319,3525,3724,3868,3969,4050,4121,
+4186,4243,4288,4317,4336,4340,4281,4085,3732,3316,2994,2853,2834,2801,2681,2518,2404,2376,2399,2422,2431,
+2435,2436,2427,2402,2363,2312,2248,2178,2112,2059,2015,1969,1916,1862,1810,1758,1702,1638,1566,1481,1381,
+1269,1155,1050,960,880,803,727,654,582,509,433,361,300,250,206,166,135,111,83,41,-1,
+-18,3,49,89,115,137,159,165,141,90,37,-5,-47,-106,-188,-269,-316,-316,-295,-291,-321,
+-360,-369,-344,-318,-330,-386,-459,-526,-585,-643,-702,-759,-814,-868,-915,-947,-964,-977,-994,-1017,-1043,
+-1072,-1103,-1129,-1141,-1141,-1136,-1130,-1116,-1085,-1042,-1001,-975,-962,-954,-943,-930,-917,-906,-896,-883,-867,
+-852,-837,-821,-801,-783,-771,-764,-755,-739,-717,-694,-674,-657,-646,-638,-632,-624,-617,-615,-616,-613,
+-604,-593,-587,-584,-578,-568,-556,-545,-532,-514,-497,-485,-472,-456,-436,-420,-407,-390,-366,-339,-314,
+-289,-257,-222,-188,-159,-130,-100,-70,-45,-21,4,29,52,73,99,128,157,182,209,238,267,
+294,321,352,386,419,450,482,517,550,580,609,639,669,699,730,763,797,828,858,892,926,
+954,979,1013,1063,1114,1148,1163,1175,1195,1217,1227,1226,1225,1232,1245,1257,1266,1274,1282,1288,1291,
+1294,1299,1306,1313,1320,1327,1333,1341,1351,1360,1369,1377,1387,1398,1407,1418,1432,1451,1468,1482,1500,
+1525,1552,1572,1584,1598,1617,1638,1655,1671,1694,1721,1745,1767,1793,1827,1862,1888,1910,1935,1961,1989,
+2013,2031,2050,2076,2103,2127,2150,2175,2200,2224,2249,2282,2321,2356,2388,2428,2484,2546,2601,2649,2701,
+2751,2774,2751,2691,2617,2542,2467,2397,2347,2330,2335,2343,2347,2348,2349,2346,2341,2338,2340,2342,2338,
+2340,2364,2413,2469,2515,2558,2619,2709,2816,2910,2971,2999,3010,3022,3044,3071,3101,3134,3175,3227,3281,
+3322,3331,3297,3223,3132,3047,2981,2927,2872,2815,2768,2737,2717,2700,2688,2687,2689,2681,2658,2632,2608,
+2580,2533,2472,2418,2381,2357,2338,2328,2332,2337,2325,2295,2264,2241,2216,2173,2115,2057,2005,1949,1886,
+1840,1835,1871,1925,1979,2021,2037,2010,1951,1895,1870,1859,1814,1715,1587,1468,1374,1300,1260,1274,1329,
+1367,1332,1228,1108,1026,989,975,965,961,967,979,991,990,960,891,799,718,673,647,606,539,
+477,454,472,494,485,449,408,376,352,332,319,314,306,289,269,257,254,251,241,229,213,
+177,117,65,81,193,371,551,684,760,790,793,789,796,813,814,779,719,665,627,578,489,
+367,247,154,87,38,10,4,3,-14,-50,-82,-89,-78,-65,-58,-48,-28,-9,-4,-12,-23,
+-27,-24,-19,-14,-10,-6,0,10,22,32,39,44,50,54,52,37,12,-14,-38,-52,-59,
+-61,-61,-61,-56,-47,-39,-38,-43,-50,-49,-40,-31,-32,-41,-53,-57,-57,-63,-78,-98,-110,
+-113,-115,-126,-142,-155,-159,-159,-165,-179,-198,-217,-236,-258,-283,-308,-328,-344,-363,-390,-424,-455,
+-476,-490,-507,-534,-569,-609,-650,-694,-741,-787,-832,-875,-919,-964,-1009,-1051,-1092,-1133,-1180,-1236,-1297,
+-1356,-1408,-1453,-1497,-1544,-1591,-1640,-1694,-1754,-1816,-1875,-1931,-1984,-2034,-2080,-2124,-2167,-2213,-2259,-2306,-2357,
+-2415,-2471,-2515,-2545,-2570,-2600,-2638,-2679,-2719,-2756,-2793,-2829,-2867,-2906,-2945,-2981,-3017,-3055,-3096,-3141,-3188,
+-3234,-3279,-3319,-3349,-3371,-3388,-3402,-3411,-3411,-3401,-3379,-3356,-3357,-3399,-3480,-3573,-3646,-3695,-3736,-3788,-3847,
+-3905,-3955,-3996,-4025,-4036,-4039,-4050,-4081,-4122,-4156,-4176,-4192,-4211,-4228,-4237,-4239,-4244,-4256,-4274,-4292,-4311,
+-4328,-4341,-4346,-4348,-4353,-4362,-4372,-4378,-4381,-4381,-4381,-4379,-4377,-4372,-4363,-4346,-4325,-4302,-4279,-4255,-4231,
+-4209,-4191,-4173,-4147,-4111,-4073,-4045,-4030,-4022,-4009,-3984,-3951,-3913,-3873,-3833,-3799,-3785,-3798,-3820,-3818,-3768,
+-3688,-3633,-3640,-3692,-3725,-3691,-3599,-3500,-3433,-3392,-3356,-3317,-3290,-3285,-3297,-3317,-3337,-3352,-3345,-3300,-3218,
+-3112,-2996,-2872,-2739,-2606,-2480,-2364,-2258,-2176,-2130,-2117,-2108,-2075,-2011,-1935,-1868,-1811,-1752,-1680,-1599,-1525,
+-1475,-1451,-1444,-1438,-1421,-1393,-1356,-1312,-1256,-1186,-1104,-1014,-919,-824,-738,-669,-618,-585,-572,-572,-569,
+-550,-516,-487,-481,-496,-517,-536,-549,-552,-538,-507,-469,-431,-383,-307,-212,-134,-107,-129,-167,-186,
+-173,-132,-75,-10,54,110,157,200,244,288,321,335,330,315,304,304,318,344,384,439,503,
+565,615,659,708,766,829,894,962,1038,1115,1189,1263,1352,1465,1596,1727,1841,1936,2018,2093,2160,
+2216,2259,2298,2343,2398,2458,2517,2578,2648,2721,2790,2846,2891,2925,2943,2942,2932,2929,2940,2958,2974,
+2990,3012,3042,3074,3111,3162,3233,3318,3404,3487,3568,3648,3723,3796,3879,3977,4083,4183,4268,4343,4418,
+4494,4567,4623,4655,4664,4666,4674,4693,4717,4742,4771,4801,4821,4822,4808,4792,4783,4774,4762,4762,4781,
+4802,4784,4694,4542,4378,4261,4225,4265,4336,4383,4381,4347,4329,4352,4404,4452,4480,4491,4498,4504,4510,
+4514,4517,4522,4543,4594,4673,4747,4781,4769,4741,4735,4761,4804,4850,4898,4941,4964,4959,4933,4907,4897,
+4899,4901,4894,4875,4851,4832,4837,4876,4937,4992,5022,5032,5045,5081,5141,5210,5273,5323,5364,5399,5428,
+5443,5438,5418,5395,5381,5377,5373,5357,5331,5311,5310,5324,5336,5335,5327,5329,5343,5358,5362,5356,5347,
+5340,5330,5317,5302,5285,5262,5234,5211,5194,5177,5152,5120,5095,5078,5059,5028,4994,4968,4954,4942,4932,
+4936,4962,4994,5012,5013,5024,5067,5132,5181,5189,5163,5141,5147,5164,5150,5085,4995,4914,4811,4576,4122,
+3505,2935,2629,2644,2855,3081,3225,3299,3345,3372,3364,3321,3265,3212,3158,3093,3016,2933,2850,2771,2697,
+2625,2551,2471,2393,2323,2260,2197,2134,2074,2019,1960,1894,1825,1761,1705,1652,1601,1561,1535,1516,1490,
+1453,1410,1368,1326,1277,1223,1169,1125,1097,1084,1079,1073,1060,1043,1025,1004,977,945,916,892,864,
+826,781,737,697,656,614,580,554,527,489,448,419,410,407,391,357,315,277,245,217,190,
+167,146,125,100,75,54,34,13,-15,-50,-83,-111,-136,-169,-210,-250,-275,-284,-290,-309,-339,
+-368,-382,-383,-380,-386,-402,-422,-439,-455,-480,-514,-545,-557,-548,-544,-570,-625,-684,-725,-751,-775,
+-803,-828,-843,-853,-864,-877,-892,-909,-930,-954,-973,-985,-995,-1009,-1026,-1043,-1060,-1082,-1104,-1122,-1131,
+-1138,-1145,-1152,-1156,-1159,-1164,-1174,-1185,-1197,-1209,-1222,-1231,-1237,-1242,-1248,-1255,-1258,-1258,-1258,-1262,-1268,
+-1271,-1271,-1268,-1266,-1263,-1259,-1253,-1246,-1236,-1225,-1214,-1201,-1187,-1175,-1166,-1162,-1159,-1153,-1143,-1131,-1116,
+-1100,-1088,-1080,-1075,-1070,-1062,-1052,-1045,-1037,-1029,-1022,-1017,-1010,-996,-976,-957,-944,-936,-925,-909,-894,
+-882,-873,-862,-848,-833,-816,-800,-783,-769,-754,-738,-721,-706,-694,-681,-667,-652,-641,-631,-619,-604,
+-591,-581,-571,-557,-541,-528,-521,-517,-512,-508,-505,-504,-502,-498,-493,-491,-488,-485,-481,-477,-474,
+-468,-460,-449,-438,-432,-432,-438,-443,-442,-436,-431,-432,-437,-441,-439,-433,-427,-422,-418,-413,-408,
+-402,-397,-392,-388,-380,-370,-360,-351,-341,-330,-319,-310,-304,-297,-289,-282,-277,-273,-269,-266,-263,
+-255,-241,-225,-216,-215,-213,-203,-189,-179,-176,-172,-165,-155,-144,-134,-124,-118,-114,-111,-102,-92,
+-85,-80,-68,-51,-37,-28,-19,-3,14,21,18,18,31,48,58,62,69,81,91,90,87,
+90,100,109,113,119,130,145,160,172,182,194,210,227,239,242,242,250,271,294,309,321,
+336,353,360,361,374,413,459,478,468,462,489,541,582,598,603,617,634,641,643,662,706,
+757,785,788,790,811,845,878,904,931,962,990,1012,1038,1080,1129,1167,1190,1218,1267,1328,1376,
+1403,1429,1471,1534,1607,1683,1755,1807,1829,1830,1835,1849,1857,1847,1823,1777,1668,1480,1317,1382,1812,
+2515,3189,3555,3573,3434,3363,3450,3640,3836,3981,4061,4088,4096,4124,4190,4268,4318,4326,4292,4185,3953,
+3596,3219,2961,2873,2868,2816,2675,2513,2419,2410,2440,2464,2477,2487,2489,2469,2430,2383,2332,2272,2201,
+2132,2076,2030,1984,1931,1880,1834,1787,1731,1662,1583,1496,1396,1282,1164,1057,970,895,823,748,675,
+606,539,470,406,352,306,262,219,184,162,146,124,98,85,96,126,164,208,256,298,310,
+275,201,117,44,-15,-78,-154,-232,-288,-303,-291,-284,-302,-332,-343,-326,-308,-324,-382,-466,-556,
+-644,-729,-805,-871,-929,-984,-1029,-1056,-1066,-1070,-1079,-1093,-1110,-1128,-1147,-1161,-1162,-1147,-1124,-1103,-1086,
+-1066,-1039,-1008,-977,-953,-935,-921,-909,-896,-884,-871,-858,-843,-828,-813,-799,-785,-775,-771,-769,-760,
+-740,-711,-683,-660,-643,-631,-623,-617,-611,-607,-605,-604,-596,-582,-567,-559,-557,-553,-543,-531,-518,
+-503,-484,-466,-450,-435,-416,-395,-378,-365,-350,-325,-296,-267,-238,-205,-169,-134,-104,-73,-41,-11,
+13,36,60,83,103,123,147,176,205,231,257,286,315,341,367,395,426,457,487,517,548,
+579,608,638,667,696,724,755,789,822,851,879,911,947,978,1007,1042,1086,1130,1161,1178,1194,
+1216,1234,1240,1235,1235,1243,1256,1266,1273,1281,1290,1297,1300,1305,1313,1322,1330,1335,1339,1345,1354,
+1364,1373,1380,1389,1402,1415,1426,1435,1446,1463,1482,1499,1517,1542,1567,1587,1603,1622,1648,1676,1700,
+1722,1747,1775,1799,1820,1845,1876,1903,1922,1938,1961,1973,1998,2020,2035,2054,2081,2111,2138,2161,2186,
+2212,2236,2262,2295,2331,2363,2390,2426,2476,2534,2586,2638,2700,2767,2807,2794,2729,2642,2555,2475,2405,
+2359,2348,2360,2372,2372,2366,2365,2368,2369,2365,2358,2353,2351,2355,2374,2415,2471,2528,2578,2629,2699,
+2794,2898,2980,3022,3033,3039,3060,3094,3130,3164,3201,3248,3298,3336,3345,3314,3244,3152,3060,2988,2934,
+2885,2834,2785,2749,2730,2721,2719,2719,2717,2705,2686,2668,2651,2626,2578,2515,2456,2415,2391,2378,2375,
+2384,2389,2376,2344,2315,2301,2291,2267,2224,2173,2120,2060,2002,1969,1975,2007,2038,2056,2062,2049,2005,
+1940,1895,1905,1947,1957,1897,1782,1653,1530,1415,1333,1319,1370,1425,1411,1315,1192,1102,1062,1049,1038,
+1028,1027,1034,1041,1033,998,931,848,778,740,715,669,595,527,503,521,538,523,480,435,403,
+381,360,342,332,325,313,299,291,290,286,275,264,252,227,177,122,109,177,326,512,679,
+783,813,798,786,809,848,855,807,735,681,652,607,513,388,274,195,141,97,70,63,63,
+48,17,-8,-13,-3,5,9,17,28,36,34,26,19,14,10,8,11,21,33,45,58,
+67,69,67,68,76,86,87,73,52,32,17,5,-4,-10,-11,-9,-4,1,5,5,3,
+3,9,19,22,13,-1,-11,-13,-13,-21,-37,-53,-60,-61,-64,-75,-88,-93,-92,-93,-102,
+-118,-138,-159,-181,-203,-224,-244,-266,-293,-321,-347,-370,-391,-411,-429,-447,-469,-498,-536,-580,-625,
+-670,-716,-762,-805,-845,-883,-923,-967,-1014,-1061,-1111,-1165,-1221,-1275,-1323,-1367,-1412,-1459,-1509,-1562,-1618,
+-1676,-1733,-1788,-1844,-1900,-1953,-2001,-2043,-2086,-2131,-2179,-2233,-2293,-2353,-2403,-2435,-2455,-2477,-2510,-2553,-2599,
+-2642,-2682,-2721,-2761,-2800,-2838,-2874,-2908,-2942,-2978,-3018,-3060,-3105,-3155,-3206,-3250,-3283,-3304,-3320,-3336,-3347,
+-3347,-3332,-3303,-3274,-3270,-3311,-3395,-3494,-3578,-3637,-3684,-3735,-3789,-3843,-3892,-3936,-3970,-3988,-3994,-4004,-4032,
+-4071,-4106,-4131,-4152,-4173,-4190,-4201,-4209,-4220,-4236,-4251,-4265,-4278,-4293,-4306,-4313,-4316,-4321,-4330,-4339,-4346,
+-4349,-4349,-4347,-4343,-4338,-4330,-4319,-4303,-4286,-4269,-4251,-4231,-4206,-4180,-4160,-4143,-4123,-4093,-4057,-4026,-4009,
+-4000,-3989,-3969,-3940,-3908,-3872,-3827,-3780,-3751,-3761,-3799,-3823,-3796,-3725,-3662,-3656,-3701,-3740,-3727,-3664,-3590,
+-3533,-3489,-3441,-3391,-3356,-3341,-3340,-3345,-3354,-3361,-3351,-3304,-3223,-3119,-3003,-2876,-2741,-2606,-2482,-2372,-2274,
+-2199,-2160,-2153,-2151,-2124,-2065,-1991,-1921,-1859,-1798,-1731,-1659,-1594,-1549,-1533,-1538,-1548,-1545,-1524,-1492,-1452,
+-1401,-1335,-1254,-1162,-1066,-970,-880,-801,-736,-692,-669,-660,-649,-623,-586,-556,-550,-565,-589,-613,-631,
+-638,-625,-593,-553,-510,-456,-379,-289,-217,-191,-208,-242,-265,-267,-246,-199,-132,-54,18,81,137,
+194,251,298,327,333,324,314,313,325,347,379,420,467,515,560,605,654,707,761,817,881,
+955,1037,1119,1201,1291,1393,1502,1608,1705,1793,1877,1956,2027,2085,2129,2167,2210,2263,2324,2390,2459,
+2535,2610,2672,2715,2744,2765,2778,2782,2785,2799,2827,2857,2879,2894,2912,2937,2968,3011,3073,3155,3246,
+3330,3408,3481,3553,3620,3689,3770,3871,3979,4077,4159,4234,4313,4396,4474,4536,4577,4601,4614,4627,4640,
+4655,4672,4696,4725,4749,4760,4757,4750,4743,4731,4712,4699,4709,4736,4747,4699,4576,4409,4264,4203,4235,
+4310,4351,4323,4260,4221,4239,4294,4349,4387,4414,4435,4453,4468,4476,4472,4456,4458,4517,4639,4767,4825,
+4793,4721,4682,4702,4753,4803,4838,4866,4887,4898,4898,4890,4877,4859,4843,4832,4824,4810,4793,4789,4816,
+4870,4924,4956,4970,4985,5019,5073,5138,5203,5259,5302,5335,5364,5390,5402,5390,5362,5341,5343,5356,5354,
+5325,5288,5275,5293,5317,5323,5313,5306,5316,5331,5336,5325,5310,5296,5284,5271,5258,5244,5225,5202,5179,
+5163,5148,5127,5101,5076,5056,5031,4998,4967,4949,4942,4935,4925,4927,4952,4984,4999,4997,5007,5050,5115,
+5162,5166,5143,5129,5140,5153,5128,5056,4970,4892,4771,4498,4015,3411,2903,2673,2736,2948,3150,3276,3346,
+3391,3408,3388,3345,3296,3246,3183,3103,3017,2932,2847,2761,2683,2616,2549,2471,2388,2313,2249,2185,2117,
+2051,1996,1948,1893,1826,1758,1698,1645,1597,1557,1528,1506,1479,1441,1397,1353,1311,1265,1212,1157,1110,
+1078,1062,1054,1046,1033,1018,1004,985,957,924,895,873,848,814,773,735,698,657,613,573,545,
+518,482,439,403,381,366,346,318,289,262,238,212,187,164,143,119,91,63,40,22,5,
+-18,-50,-85,-116,-143,-172,-208,-243,-264,-266,-262,-271,-304,-351,-390,-403,-394,-385,-395,-427,-465,
+-494,-511,-527,-541,-541,-522,-505,-523,-579,-648,-701,-732,-755,-781,-806,-824,-838,-854,-872,-889,-906,
+-928,-955,-977,-992,-1002,-1015,-1030,-1045,-1062,-1083,-1107,-1126,-1137,-1143,-1150,-1158,-1164,-1168,-1174,-1182,-1190,
+-1198,-1207,-1218,-1230,-1241,-1249,-1255,-1258,-1259,-1259,-1260,-1263,-1266,-1269,-1272,-1274,-1274,-1271,-1268,-1265,-1261,
+-1253,-1241,-1226,-1210,-1193,-1175,-1160,-1151,-1147,-1143,-1136,-1128,-1120,-1112,-1104,-1096,-1088,-1081,-1072,-1064,-1056,
+-1048,-1039,-1032,-1027,-1019,-1003,-981,-959,-947,-940,-932,-918,-904,-893,-885,-876,-861,-843,-823,-805,-789,
+-776,-764,-751,-736,-723,-710,-697,-681,-665,-654,-645,-634,-620,-606,-596,-585,-570,-553,-540,-534,-532,
+-528,-524,-521,-516,-511,-505,-504,-506,-508,-505,-498,-492,-488,-482,-472,-459,-447,-442,-444,-451,-456,
+-455,-449,-444,-444,-448,-449,-446,-441,-435,-431,-427,-422,-414,-405,-397,-391,-384,-375,-364,-354,-347,
+-339,-328,-315,-304,-297,-291,-285,-278,-271,-266,-263,-261,-258,-248,-233,-220,-215,-216,-213,-203,-190,
+-180,-173,-164,-154,-146,-141,-135,-125,-114,-104,-95,-87,-83,-82,-78,-63,-43,-32,-33,-32,-16,
+7,21,22,23,35,51,58,58,65,84,104,110,106,102,105,111,116,122,134,151,166,
+175,180,187,204,229,253,264,261,259,266,280,293,303,319,342,364,381,398,425,452,463,
+457,456,479,515,541,551,567,609,666,705,712,706,713,742,777,802,819,834,851,869,892,
+924,960,991,1016,1048,1093,1139,1170,1186,1211,1260,1321,1369,1401,1437,1492,1562,1633,1700,1762,1810,
+1831,1833,1838,1853,1862,1851,1823,1772,1661,1480,1329,1405,1835,2526,3188,3566,3625,3541,3507,3590,3745,
+3900,4017,4083,4098,4093,4117,4191,4279,4323,4294,4201,4040,3792,3467,3149,2939,2863,2843,2782,2661,2542,
+2484,2485,2505,2516,2524,2530,2524,2492,2442,2388,2337,2280,2212,2145,2089,2042,1994,1943,1896,1855,1812,
+1753,1678,1596,1510,1415,1304,1187,1081,997,925,851,769,686,611,545,484,433,393,361,324,279,
+235,204,189,183,180,181,189,204,232,275,329,376,390,357,281,185,87,3,-67,-132,-193,
+-237,-251,-236,-220,-229,-262,-297,-313,-321,-346,-405,-496,-607,-724,-831,-918,-983,-1036,-1083,-1118,-1133,
+-1129,-1122,-1121,-1126,-1135,-1149,-1169,-1187,-1188,-1165,-1127,-1092,-1070,-1057,-1041,-1014,-978,-944,-920,-906,-894,
+-880,-863,-846,-829,-811,-793,-777,-764,-756,-751,-752,-750,-739,-716,-688,-663,-644,-628,-616,-607,-602,
+-597,-593,-590,-587,-578,-561,-542,-529,-523,-518,-510,-500,-488,-474,-455,-436,-419,-403,-383,-362,-345,
+-332,-316,-291,-260,-230,-202,-172,-138,-105,-72,-40,-8,20,44,67,92,117,140,161,186,215,
+244,270,295,322,350,375,400,426,454,484,512,541,571,601,631,662,693,723,752,782,816,
+848,877,903,933,967,1002,1036,1070,1107,1142,1168,1187,1206,1226,1239,1241,1239,1244,1257,1270,1279,
+1285,1293,1302,1309,1313,1319,1327,1336,1342,1346,1349,1355,1363,1373,1382,1392,1404,1419,1435,1447,1455,
+1466,1484,1506,1527,1548,1570,1593,1613,1632,1654,1682,1711,1736,1759,1783,1809,1833,1854,1878,1904,1925,
+1939,1953,1973,1984,2006,2025,2041,2063,2093,2126,2156,2182,2207,2230,2251,2272,2302,2335,2366,2392,2424,
+2470,2523,2575,2633,2707,2786,2832,2814,2740,2646,2560,2485,2419,2373,2361,2377,2395,2397,2391,2391,2398,
+2401,2391,2376,2369,2372,2380,2394,2424,2477,2542,2600,2643,2690,2765,2867,2963,3021,3038,3045,3072,3117,
+3161,3195,3228,3273,3327,3371,3382,3350,3276,3173,3068,2984,2929,2890,2848,2802,2764,2745,2745,2754,2760,
+2755,2739,2719,2702,2687,2661,2614,2554,2500,2465,2447,2440,2441,2448,2449,2430,2399,2375,2372,2378,2372,
+2343,2296,2238,2175,2125,2109,2126,2149,2151,2133,2111,2085,2038,1976,1944,1982,2068,2126,2096,1982,1828,
+1664,1511,1400,1372,1429,1501,1506,1418,1290,1189,1138,1116,1100,1087,1084,1089,1089,1071,1028,963,890,
+834,806,787,743,668,591,553,556,567,551,510,466,432,405,379,356,342,334,324,315,311,
+314,314,308,300,293,278,245,198,169,197,304,473,652,778,819,803,793,828,886,903,856,
+779,721,685,626,520,392,289,229,191,155,126,114,111,99,76,58,53,57,60,63,68,
+73,73,67,62,62,58,49,42,45,59,76,92,104,111,110,104,102,110,118,117,104,
+88,76,66,53,38,29,30,37,42,44,45,46,49,52,55,54,48,37,27,24,28,
+30,24,13,2,-3,-7,-14,-22,-28,-29,-30,-36,-50,-66,-82,-102,-125,-148,-166,-185,-212,
+-247,-279,-298,-306,-318,-340,-366,-388,-407,-431,-466,-510,-556,-600,-645,-691,-734,-771,-806,-845,-891,
+-941,-992,-1042,-1093,-1144,-1193,-1238,-1281,-1324,-1371,-1424,-1482,-1541,-1599,-1652,-1704,-1760,-1817,-1871,-1917,-1960,
+-2005,-2054,-2108,-2166,-2226,-2280,-2320,-2344,-2363,-2390,-2430,-2477,-2524,-2568,-2610,-2652,-2694,-2732,-2768,-2799,-2830,
+-2864,-2901,-2940,-2980,-3024,-3077,-3133,-3182,-3214,-3232,-3247,-3265,-3277,-3276,-3254,-3219,-3187,-3184,-3227,-3313,-3417,
+-3509,-3578,-3631,-3679,-3728,-3777,-3829,-3879,-3920,-3941,-3948,-3958,-3983,-4020,-4054,-4079,-4101,-4123,-4143,-4160,-4175,
+-4192,-4210,-4223,-4234,-4246,-4262,-4277,-4288,-4293,-4299,-4306,-4314,-4320,-4323,-4324,-4322,-4316,-4306,-4294,-4281,-4268,
+-4256,-4243,-4226,-4201,-4168,-4135,-4111,-4098,-4087,-4069,-4042,-4014,-3994,-3980,-3965,-3940,-3913,-3890,-3870,-3839,-3790,
+-3740,-3721,-3744,-3783,-3793,-3763,-3721,-3707,-3726,-3747,-3742,-3711,-3674,-3639,-3594,-3535,-3475,-3432,-3410,-3398,-3390,
+-3385,-3380,-3356,-3299,-3214,-3114,-3008,-2888,-2754,-2617,-2493,-2386,-2298,-2233,-2199,-2192,-2189,-2165,-2113,-2043,-1970,
+-1898,-1828,-1761,-1695,-1637,-1596,-1582,-1595,-1617,-1628,-1619,-1597,-1567,-1526,-1468,-1392,-1306,-1217,-1129,-1040,-954,
+-879,-822,-785,-759,-733,-700,-665,-640,-632,-640,-658,-679,-699,-709,-700,-671,-631,-586,-530,-461,-386,
+-326,-294,-286,-289,-295,-299,-290,-256,-193,-114,-39,21,72,125,185,244,291,315,317,310,305,
+312,327,349,374,403,436,473,517,567,617,666,717,780,859,952,1051,1150,1247,1338,1420,1494,
+1564,1639,1720,1803,1880,1944,1992,2031,2072,2123,2182,2246,2315,2391,2465,2524,2560,2580,2596,2616,2636,
+2658,2687,2723,2759,2787,2805,2821,2842,2875,2926,2997,3081,3163,3236,3303,3373,3445,3519,3595,3683,3783,
+3884,3975,4054,4133,4215,4296,4369,4431,4482,4520,4545,4560,4569,4579,4595,4617,4646,4672,4689,4697,4700,
+4701,4694,4676,4654,4644,4658,4681,4672,4593,4445,4289,4202,4216,4281,4312,4267,4185,4134,4146,4197,4254,
+4302,4344,4376,4397,4411,4419,4411,4386,4380,4449,4604,4771,4846,4797,4690,4626,4641,4700,4754,4786,4806,
+4827,4847,4860,4864,4854,4831,4805,4792,4789,4779,4758,4742,4757,4805,4862,4902,4920,4934,4959,5004,5068,
+5141,5205,5247,5272,5296,5329,5358,5358,5331,5304,5305,5327,5334,5304,5258,5237,5258,5296,5316,5310,5295,
+5292,5296,5294,5280,5264,5252,5242,5231,5220,5209,5196,5176,5153,5134,5116,5096,5074,5051,5031,5007,4979,
+4953,4939,4932,4923,4915,4921,4946,4972,4981,4976,4985,5029,5091,5134,5137,5118,5110,5122,5131,5104,5041,
+4968,4888,4740,4429,3927,3348,2899,2728,2817,3020,3200,3311,3378,3419,3428,3403,3365,3327,3281,3209,3118,
+3026,2940,2852,2759,2675,2608,2546,2470,2383,2303,2238,2177,2106,2036,1982,1941,1896,1832,1761,1695,1641,
+1594,1553,1521,1497,1469,1429,1380,1332,1289,1247,1201,1149,1100,1063,1041,1028,1016,1003,991,981,965,
+939,904,873,847,822,790,756,725,696,658,612,568,536,510,478,436,393,358,332,310,287,
+267,247,227,206,186,167,147,123,95,67,42,21,4,-14,-41,-74,-109,-140,-167,-195,-221,
+-242,-249,-250,-258,-288,-338,-388,-409,-392,-361,-353,-387,-445,-493,-516,-525,-532,-532,-518,-502,-512,
+-559,-624,-678,-711,-733,-757,-780,-798,-815,-837,-863,-885,-904,-924,-947,-969,-986,-1001,-1016,-1033,-1049,
+-1064,-1084,-1108,-1127,-1137,-1142,-1147,-1155,-1164,-1173,-1183,-1195,-1205,-1212,-1215,-1219,-1226,-1237,-1250,-1263,-1271,
+-1273,-1271,-1267,-1263,-1260,-1260,-1265,-1273,-1276,-1276,-1275,-1275,-1275,-1269,-1258,-1245,-1229,-1210,-1186,-1164,-1148,
+-1137,-1128,-1120,-1115,-1114,-1113,-1108,-1099,-1090,-1082,-1077,-1071,-1065,-1058,-1051,-1045,-1040,-1033,-1018,-998,-977,
+-964,-956,-946,-932,-918,-908,-899,-888,-873,-853,-832,-813,-796,-784,-773,-762,-749,-737,-725,-713,-698,
+-683,-671,-661,-650,-636,-623,-611,-599,-585,-569,-556,-550,-546,-542,-539,-535,-529,-521,-515,-515,-519,
+-521,-518,-510,-503,-499,-493,-484,-472,-461,-455,-456,-461,-465,-465,-462,-459,-459,-460,-458,-452,-445,
+-439,-435,-430,-424,-415,-404,-395,-387,-378,-368,-357,-348,-343,-338,-328,-314,-301,-295,-294,-292,-285,
+-274,-266,-262,-261,-256,-246,-232,-224,-221,-217,-207,-192,-179,-169,-158,-143,-128,-121,-121,-121,-115,
+-105,-93,-81,-71,-67,-71,-72,-62,-46,-38,-42,-45,-32,-9,5,9,15,31,50,55,52,
+57,79,106,122,125,126,131,138,143,148,157,169,182,189,192,194,204,227,254,273,275,
+268,266,274,282,287,294,313,344,377,402,421,433,437,437,444,459,475,479,482,512,587,
+685,758,774,751,732,746,786,824,842,843,840,848,873,910,950,986,1017,1055,1102,1146,1173,
+1187,1209,1254,1312,1366,1411,1462,1527,1596,1656,1709,1759,1798,1818,1824,1837,1864,1886,1884,1851,1780,
+1647,1459,1322,1412,1831,2477,3091,3460,3575,3584,3626,3728,3842,3934,4010,4074,4118,4146,4186,4250,4306,
+4304,4223,4082,3896,3663,3388,3122,2930,2834,2788,2736,2665,2602,2572,2567,2565,2558,2553,2548,2529,2487,
+2432,2377,2325,2270,2211,2154,2105,2058,2007,1954,1908,1869,1827,1768,1693,1611,1528,1436,1330,1218,1117,
+1036,964,883,789,692,608,540,486,444,417,397,371,330,280,240,221,226,245,266,280,288,
+301,328,366,398,411,394,346,264,157,47,-42,-103,-142,-166,-175,-165,-156,-172,-222,-285,-336,
+-370,-406,-468,-566,-692,-823,-936,-1018,-1072,-1111,-1142,-1161,-1161,-1147,-1133,-1127,-1129,-1136,-1152,-1177,-1200,
+-1202,-1175,-1130,-1090,-1069,-1062,-1052,-1026,-988,-949,-923,-908,-895,-878,-859,-840,-820,-797,-771,-749,-732,
+-722,-717,-715,-709,-697,-677,-655,-637,-621,-606,-592,-582,-578,-574,-569,-565,-563,-557,-543,-523,-505,
+-493,-485,-478,-469,-459,-445,-427,-408,-391,-373,-353,-330,-311,-296,-277,-250,-219,-189,-162,-134,-102,
+-71,-40,-9,20,47,70,93,118,146,172,197,223,251,279,303,326,351,377,402,427,454,
+482,510,538,567,597,627,657,687,720,751,781,810,842,875,905,933,960,991,1025,1060,1094,
+1126,1154,1177,1198,1217,1233,1241,1242,1245,1257,1272,1284,1291,1298,1307,1316,1324,1330,1336,1343,1349,
+1353,1357,1362,1367,1373,1382,1394,1407,1421,1438,1455,1469,1481,1496,1517,1541,1563,1583,1604,1625,1645,
+1664,1684,1708,1734,1756,1775,1797,1820,1843,1864,1885,1909,1930,1947,1964,1984,1995,2016,2034,2054,2079,
+2111,2144,2175,2203,2227,2245,2259,2275,2302,2338,2372,2401,2433,2474,2521,2572,2635,2717,2799,2838,2802,
+2709,2608,2534,2484,2440,2402,2389,2402,2422,2429,2423,2420,2425,2425,2413,2396,2390,2398,2409,2418,2439,
+2486,2553,2614,2652,2685,2745,2843,2947,3015,3039,3052,3087,3143,3195,3228,3257,3303,3364,3417,3432,3397,
+3313,3196,3074,2977,2918,2885,2853,2813,2775,2758,2767,2789,2804,2800,2779,2753,2731,2710,2682,2637,2586,
+2545,2523,2515,2512,2511,2510,2502,2482,2456,2443,2452,2469,2473,2452,2408,2350,2291,2253,2252,2275,2288,
+2269,2231,2203,2185,2153,2104,2081,2130,2230,2302,2275,2147,1964,1771,1597,1477,1451,1514,1598,1614,1531,
+1397,1280,1210,1173,1149,1136,1137,1142,1134,1105,1055,991,927,883,865,856,824,754,670,609,588,
+584,571,539,501,466,431,396,368,350,341,333,327,329,338,348,350,345,337,326,306,275,
+248,254,322,457,622,753,808,804,804,848,913,938,898,823,759,706,627,509,386,299,257,
+232,203,175,159,152,141,123,107,99,96,95,98,104,109,107,102,100,101,96,84,78,
+86,104,122,135,144,150,151,148,146,151,155,151,139,128,120,111,94,76,68,73,82,
+86,85,84,88,93,93,84,71,59,52,52,56,61,66,69,67,62,54,45,37,31,
+27,23,15,2,-10,-21,-32,-50,-76,-100,-117,-130,-150,-176,-199,-209,-213,-227,-260,-297,-324,
+-343,-364,-398,-441,-485,-527,-571,-616,-658,-694,-729,-770,-819,-870,-921,-970,-1019,-1067,-1112,-1155,-1196,
+-1240,-1287,-1343,-1406,-1470,-1528,-1578,-1627,-1680,-1736,-1787,-1832,-1877,-1927,-1984,-2043,-2101,-2154,-2197,-2228,-2250,
+-2276,-2312,-2359,-2407,-2452,-2495,-2538,-2582,-2622,-2659,-2691,-2720,-2751,-2785,-2824,-2863,-2903,-2950,-3006,-3065,-3113,
+-3141,-3157,-3174,-3194,-3207,-3201,-3173,-3135,-3108,-3112,-3159,-3245,-3348,-3444,-3521,-3580,-3627,-3670,-3715,-3767,-3822,
+-3866,-3889,-3897,-3907,-3933,-3969,-4000,-4024,-4043,-4066,-4089,-4111,-4131,-4150,-4168,-4182,-4195,-4212,-4233,-4252,-4266,
+-4274,-4279,-4285,-4291,-4296,-4298,-4299,-4295,-4287,-4274,-4260,-4248,-4239,-4230,-4214,-4185,-4141,-4094,-4055,-4037,-4036,
+-4042,-4041,-4026,-4004,-3984,-3968,-3949,-3920,-3889,-3867,-3858,-3846,-3809,-3754,-3709,-3703,-3731,-3761,-3769,-3756,-3743,
+-3738,-3736,-3731,-3728,-3728,-3718,-3684,-3625,-3565,-3520,-3491,-3467,-3444,-3427,-3408,-3369,-3299,-3206,-3110,-3014,-2905,
+-2776,-2639,-2512,-2407,-2327,-2272,-2242,-2230,-2220,-2196,-2151,-2090,-2014,-1932,-1854,-1785,-1726,-1673,-1631,-1614,-1625,
+-1652,-1670,-1669,-1653,-1629,-1593,-1538,-1466,-1390,-1316,-1242,-1162,-1082,-1009,-952,-906,-864,-823,-785,-756,-741,
+-736,-737,-743,-753,-764,-769,-759,-734,-697,-653,-603,-549,-498,-454,-415,-374,-333,-301,-283,-268,-235,
+-177,-108,-48,-7,24,66,127,200,267,309,319,308,291,278,272,273,279,294,318,353,399,
+451,506,559,616,687,777,881,993,1101,1198,1278,1338,1387,1437,1499,1574,1658,1740,1811,1864,1906,
+1947,1996,2052,2110,2170,2238,2309,2368,2405,2426,2448,2482,2522,2561,2594,2628,2661,2691,2714,2734,2759,
+2800,2861,2936,3012,3077,3130,3184,3251,3333,3424,3518,3615,3711,3799,3880,3959,4043,4127,4201,4263,4318,
+4371,4416,4445,4459,4466,4478,4500,4530,4563,4594,4619,4635,4643,4648,4650,4645,4625,4601,4591,4606,4619,
+4578,4455,4292,4178,4168,4224,4257,4217,4136,4083,4087,4126,4172,4218,4264,4300,4319,4328,4337,4337,4322,
+4322,4396,4558,4730,4803,4744,4629,4562,4579,4640,4695,4729,4756,4783,4804,4816,4819,4811,4791,4769,4759,
+4761,4755,4731,4705,4706,4744,4799,4845,4869,4883,4903,4944,5009,5086,5152,5189,5203,5221,5258,5298,5310,
+5287,5256,5253,5275,5289,5268,5224,5200,5218,5260,5291,5293,5280,5269,5265,5259,5248,5236,5227,5218,5205,
+5191,5177,5164,5147,5125,5103,5083,5062,5040,5020,5001,4982,4962,4942,4926,4912,4901,4898,4912,4938,4957,
+4955,4945,4957,5005,5065,5103,5106,5091,5085,5094,5098,5075,5023,4956,4861,4677,4334,3833,3301,2923,2811,
+2919,3104,3252,3339,3395,3433,3440,3415,3377,3342,3296,3222,3128,3037,2954,2867,2769,2678,2607,2545,2471,
+2383,2302,2238,2178,2110,2041,1987,1946,1902,1839,1766,1698,1641,1591,1549,1517,1491,1462,1418,1364,1312,
+1269,1232,1191,1144,1096,1057,1029,1009,990,972,959,951,942,920,888,853,824,796,766,736,711,
+687,654,609,562,525,497,467,429,385,345,312,287,266,247,227,208,191,176,162,144,122,
+96,70,45,23,5,-9,-28,-57,-93,-130,-157,-176,-190,-205,-221,-237,-255,-283,-326,-372,-395,
+-378,-337,-316,-348,-414,-472,-493,-492,-495,-509,-519,-519,-526,-558,-607,-653,-684,-708,-733,-759,-778,
+-795,-818,-848,-876,-897,-916,-936,-957,-977,-995,-1015,-1035,-1053,-1069,-1088,-1110,-1129,-1139,-1142,-1145,-1153,
+-1165,-1177,-1190,-1204,-1218,-1227,-1231,-1230,-1231,-1237,-1249,-1263,-1273,-1275,-1272,-1266,-1260,-1257,-1258,-1265,-1274,
+-1278,-1278,-1277,-1278,-1280,-1278,-1272,-1264,-1252,-1234,-1210,-1185,-1166,-1149,-1133,-1118,-1111,-1111,-1111,-1105,-1094,
+-1084,-1080,-1077,-1074,-1069,-1064,-1059,-1054,-1050,-1043,-1031,-1016,-1000,-986,-975,-961,-946,-932,-920,-910,-897,
+-882,-864,-845,-825,-808,-794,-783,-771,-758,-745,-734,-725,-714,-701,-688,-676,-665,-653,-641,-628,-614,
+-600,-585,-573,-564,-557,-553,-552,-551,-546,-538,-531,-530,-532,-531,-526,-518,-513,-510,-505,-497,-486,
+-477,-471,-468,-467,-468,-470,-470,-471,-472,-471,-467,-459,-452,-446,-440,-434,-425,-415,-403,-393,-384,
+-376,-367,-357,-350,-346,-341,-332,-318,-305,-300,-303,-304,-297,-284,-273,-268,-265,-258,-245,-234,-229,
+-225,-214,-192,-171,-160,-157,-149,-131,-111,-102,-105,-109,-108,-101,-93,-80,-66,-58,-60,-64,-60,
+-48,-39,-38,-36,-25,-10,-2,-1,6,27,48,56,53,55,72,96,115,126,137,152,165,
+172,176,179,185,194,203,210,211,212,222,241,261,270,270,273,288,303,308,305,312,339,
+377,411,429,437,443,455,472,487,493,488,490,524,602,699,770,785,760,740,755,797,834,
+844,834,823,830,856,894,937,979,1019,1062,1108,1150,1179,1196,1217,1254,1307,1365,1425,1490,1556,
+1613,1655,1691,1726,1757,1776,1789,1814,1858,1901,1914,1882,1787,1620,1417,1297,1417,1839,2441,2995,3339,
+3494,3586,3704,3832,3920,3964,4007,4078,4162,4232,4281,4307,4297,4229,4106,3952,3780,3586,3362,3134,2944,
+2818,2749,2710,2682,2657,2634,2611,2591,2576,2566,2549,2516,2468,2414,2360,2306,2252,2202,2160,2120,2074,
+2018,1960,1911,1870,1829,1776,1709,1633,1552,1460,1356,1250,1155,1077,1002,914,810,705,615,543,488,
+448,424,409,390,355,309,269,252,267,303,343,367,374,373,377,386,394,401,406,395,340,
+231,97,-13,-72,-89,-93,-101,-115,-138,-182,-251,-328,-391,-437,-485,-558,-667,-799,-927,-1027,-1088,
+-1121,-1140,-1153,-1156,-1144,-1126,-1113,-1110,-1116,-1128,-1149,-1177,-1199,-1196,-1165,-1122,-1090,-1079,-1080,-1076,-1054,
+-1016,-976,-946,-925,-907,-888,-868,-850,-829,-801,-768,-737,-714,-699,-688,-679,-670,-657,-641,-623,-606,
+-590,-573,-557,-547,-542,-539,-535,-531,-530,-528,-519,-502,-483,-468,-458,-450,-441,-430,-417,-399,-379,
+-359,-338,-315,-290,-268,-248,-227,-201,-170,-139,-110,-80,-48,-18,8,34,61,87,111,132,155,
+180,206,232,259,287,313,336,357,379,404,430,458,487,516,543,570,600,631,661,688,716,
+746,778,808,835,864,897,930,960,987,1014,1045,1079,1114,1144,1170,1194,1217,1236,1247,1249,1251,
+1258,1273,1286,1294,1298,1306,1318,1330,1339,1346,1352,1358,1361,1365,1372,1379,1384,1389,1398,1411,1427,
+1442,1457,1473,1491,1509,1527,1549,1572,1592,1610,1629,1651,1672,1689,1705,1726,1748,1767,1783,1800,1821,
+1842,1861,1880,1902,1926,1950,1973,1995,2002,2023,2044,2068,2095,2124,2153,2183,2212,2236,2252,2263,2279,
+2311,2353,2394,2428,2462,2501,2543,2588,2647,2729,2810,2840,2784,2666,2550,2483,2460,2449,2434,2424,2434,
+2452,2459,2452,2442,2440,2439,2430,2417,2413,2422,2433,2441,2458,2500,2563,2622,2657,2686,2742,2839,2945,
+3016,3043,3060,3102,3167,3227,3262,3288,3331,3393,3448,3467,3432,3345,3220,3088,2981,2917,2884,2856,2818,
+2781,2767,2785,2818,2840,2838,2815,2787,2762,2736,2702,2657,2614,2586,2578,2579,2577,2568,2554,2537,2517,
+2502,2502,2520,2540,2548,2533,2499,2454,2410,2384,2388,2408,2411,2383,2345,2327,2328,2321,2296,2288,2335,
+2421,2469,2417,2267,2069,1872,1704,1592,1568,1626,1705,1722,1643,1506,1374,1281,1226,1195,1184,1188,1190,
+1175,1136,1081,1020,962,923,913,918,904,846,757,674,622,600,586,565,536,499,458,415,382,
+363,355,350,349,356,372,389,398,396,384,369,353,337,324,328,371,465,594,712,779,801,
+820,867,924,942,903,833,766,703,619,508,402,332,299,276,249,222,207,198,184,163,146,
+135,129,125,127,135,142,142,138,136,133,124,113,114,130,152,167,174,178,184,189,190,
+190,191,193,189,181,174,168,157,140,124,119,125,130,128,122,120,125,130,124,108,90,
+82,84,90,91,91,97,111,123,124,114,103,95,89,80,66,51,39,32,26,14,-6,
+-33,-54,-64,-64,-66,-73,-83,-92,-108,-140,-185,-227,-255,-273,-296,-331,-373,-413,-453,-495,-539,
+-580,-616,-654,-698,-747,-797,-845,-893,-941,-987,-1030,-1072,-1116,-1163,-1214,-1273,-1338,-1404,-1463,-1511,-1557,
+-1606,-1657,-1705,-1751,-1800,-1857,-1920,-1980,-2034,-2077,-2110,-2136,-2161,-2196,-2241,-2291,-2338,-2382,-2425,-2469,-2511,
+-2547,-2579,-2610,-2641,-2674,-2710,-2748,-2788,-2831,-2882,-2941,-2998,-3041,-3066,-3084,-3105,-3128,-3137,-3123,-3090,-3056,
+-3040,-3058,-3111,-3195,-3292,-3386,-3467,-3531,-3578,-3616,-3656,-3705,-3761,-3808,-3835,-3847,-3861,-3888,-3923,-3953,-3975,
+-3993,-4016,-4041,-4064,-4084,-4102,-4119,-4136,-4154,-4176,-4201,-4223,-4240,-4250,-4257,-4261,-4265,-4269,-4271,-4268,-4261,
+-4248,-4233,-4220,-4212,-4208,-4198,-4171,-4120,-4054,-3992,-3957,-3955,-3977,-4003,-4017,-4011,-3994,-3976,-3961,-3945,-3917,
+-3882,-3853,-3840,-3835,-3817,-3777,-3730,-3702,-3704,-3722,-3738,-3742,-3736,-3725,-3714,-3711,-3725,-3748,-3759,-3740,-3697,
+-3649,-3609,-3573,-3534,-3496,-3467,-3441,-3395,-3319,-3223,-3129,-3040,-2940,-2815,-2676,-2544,-2439,-2363,-2314,-2283,-2263,
+-2244,-2220,-2184,-2130,-2054,-1965,-1881,-1815,-1765,-1716,-1670,-1642,-1642,-1661,-1676,-1676,-1664,-1642,-1606,-1550,-1478,
+-1406,-1341,-1279,-1213,-1148,-1093,-1050,-1011,-967,-920,-881,-860,-855,-856,-857,-854,-850,-843,-829,-806,-778,
+-745,-706,-665,-627,-598,-575,-539,-479,-402,-329,-274,-229,-178,-115,-56,-15,4,21,57,125,211,
+289,337,344,320,281,238,199,169,157,165,189,226,275,332,396,465,540,628,729,837,943,
+1039,1121,1187,1240,1285,1333,1391,1459,1536,1614,1686,1745,1793,1838,1891,1948,2004,2056,2113,2176,2233,
+2273,2300,2330,2376,2430,2476,2507,2531,2557,2588,2620,2651,2688,2739,2805,2877,2942,2992,3033,3081,3148,
+3237,3340,3446,3547,3636,3715,3791,3875,3964,4045,4107,4152,4194,4241,4285,4312,4323,4332,4353,4388,4431,
+4476,4519,4556,4579,4587,4588,4594,4602,4595,4566,4538,4540,4563,4549,4442,4266,4118,4075,4123,4170,4153,
+4092,4048,4049,4075,4103,4135,4175,4211,4229,4236,4247,4258,4257,4266,4332,4468,4611,4671,4624,4538,4499,
+4527,4584,4631,4666,4701,4734,4754,4759,4759,4755,4743,4728,4721,4725,4725,4707,4679,4668,4690,4733,4776,
+4806,4827,4856,4903,4972,5046,5102,5127,5133,5150,5190,5235,5253,5236,5208,5201,5219,5237,5229,5199,5176,
+5184,5216,5248,5259,5253,5244,5240,5236,5229,5219,5209,5198,5181,5160,5141,5126,5112,5096,5077,5057,5036,
+5013,4991,4971,4952,4936,4920,4903,4885,4871,4874,4898,4928,4941,4931,4919,4936,4988,5046,5078,5076,5060,
+5055,5061,5062,5039,4988,4909,4782,4555,4187,3707,3242,2951,2906,3039,3206,3314,3364,3400,3436,3448,3424,
+3380,3337,3289,3219,3131,3044,2962,2876,2779,2685,2609,2544,2473,2390,2310,2243,2182,2117,2052,1999,1955,
+1906,1842,1771,1704,1646,1594,1548,1514,1487,1455,1409,1353,1301,1259,1223,1185,1140,1094,1054,1023,996,
+969,945,928,921,915,899,871,837,807,779,749,719,694,671,642,601,555,513,480,448,413,
+373,335,302,275,250,226,203,183,169,158,146,129,108,86,63,40,17,-1,-13,-25,-47,
+-81,-120,-150,-162,-163,-166,-183,-213,-244,-274,-309,-349,-378,-375,-345,-327,-355,-416,-460,-458,-432,
+-426,-457,-499,-525,-538,-557,-592,-629,-658,-682,-711,-740,-763,-781,-800,-826,-855,-880,-902,-925,-947,
+-968,-989,-1012,-1034,-1053,-1071,-1089,-1110,-1128,-1140,-1145,-1150,-1159,-1172,-1186,-1198,-1209,-1221,-1232,-1241,-1246,
+-1249,-1252,-1259,-1268,-1273,-1273,-1268,-1263,-1261,-1262,-1267,-1273,-1278,-1279,-1278,-1276,-1277,-1279,-1279,-1278,-1274,
+-1266,-1252,-1234,-1216,-1201,-1184,-1163,-1142,-1128,-1123,-1119,-1109,-1095,-1086,-1083,-1082,-1078,-1072,-1067,-1064,-1060,
+-1053,-1044,-1033,-1022,-1011,-999,-986,-971,-956,-941,-929,-917,-904,-890,-876,-860,-843,-825,-809,-795,-782,
+-766,-751,-740,-734,-727,-717,-704,-692,-682,-672,-661,-647,-631,-615,-601,-588,-576,-567,-563,-565,-568,
+-566,-558,-550,-546,-545,-541,-534,-528,-526,-524,-518,-509,-500,-494,-487,-481,-476,-474,-475,-476,-476,
+-476,-474,-470,-464,-459,-455,-450,-443,-433,-421,-409,-397,-388,-380,-374,-366,-359,-354,-348,-339,-326,
+-313,-308,-310,-311,-304,-291,-280,-274,-268,-256,-239,-229,-228,-226,-209,-179,-156,-152,-160,-160,-145,
+-125,-115,-116,-119,-117,-111,-106,-96,-80,-65,-58,-59,-57,-47,-33,-20,-9,1,8,6,1,
+6,25,48,60,60,61,70,83,96,109,125,145,162,172,177,178,179,184,197,211,218,
+216,214,222,238,252,262,280,312,346,362,357,351,365,398,434,456,469,484,507,534,556,
+568,574,583,608,653,705,738,740,725,723,750,794,826,835,827,823,832,853,885,927,977,
+1026,1071,1111,1149,1184,1213,1240,1271,1314,1371,1436,1503,1559,1598,1624,1648,1676,1703,1725,1747,1782,
+1833,1886,1915,1892,1789,1599,1384,1286,1447,1889,2469,2971,3279,3441,3574,3736,3887,3975,4007,4039,4111,
+4210,4295,4332,4309,4228,4107,3968,3829,3687,3527,3339,3140,2960,2825,2744,2708,2692,2674,2641,2605,2583,
+2577,2569,2543,2500,2450,2400,2348,2292,2238,2195,2163,2128,2081,2023,1962,1908,1860,1816,1769,1715,1652,
+1576,1485,1382,1279,1187,1107,1028,937,834,730,638,561,499,455,429,412,394,366,331,302,294,
+317,362,410,440,445,433,417,401,388,389,406,417,376,264,113,-9,-59,-52,-37,-50,-97,
+-164,-243,-324,-398,-455,-503,-564,-656,-778,-907,-1016,-1087,-1120,-1129,-1129,-1127,-1119,-1104,-1088,-1080,-1083,
+-1094,-1112,-1139,-1168,-1184,-1176,-1145,-1111,-1093,-1094,-1103,-1104,-1086,-1050,-1010,-974,-946,-921,-897,-876,-857,
+-834,-802,-763,-727,-700,-680,-664,-650,-637,-624,-608,-589,-569,-550,-532,-516,-506,-502,-500,-497,-494,
+-493,-491,-483,-469,-454,-442,-432,-421,-410,-398,-383,-365,-343,-319,-294,-268,-242,-217,-197,-176,-152,
+-123,-92,-59,-26,6,34,57,80,105,132,156,177,197,218,242,267,293,321,346,369,389,
+411,434,461,491,522,553,580,606,635,666,696,721,746,774,805,835,861,887,917,952,984,
+1010,1034,1062,1096,1131,1162,1188,1213,1238,1257,1265,1265,1266,1275,1289,1299,1303,1308,1318,1331,1343,
+1351,1357,1364,1369,1373,1378,1386,1396,1403,1408,1419,1435,1451,1464,1476,1492,1512,1531,1550,1569,1588,
+1605,1623,1643,1666,1687,1703,1718,1738,1762,1781,1795,1809,1826,1846,1864,1879,1897,1921,1950,1978,2002,
+2004,2027,2051,2078,2104,2128,2152,2179,2209,2237,2257,2275,2300,2338,2384,2427,2463,2502,2547,2592,2633,
+2682,2753,2829,2857,2796,2660,2520,2441,2429,2445,2453,2452,2458,2471,2478,2469,2454,2446,2446,2445,2441,
+2437,2441,2449,2460,2479,2518,2574,2626,2663,2697,2759,2857,2959,3025,3048,3063,3106,3177,3243,3281,3304,
+3337,3391,3444,3468,3440,3360,3240,3110,3002,2936,2901,2870,2831,2796,2788,2812,2848,2870,2865,2844,2820,
+2800,2775,2735,2684,2640,2620,2623,2631,2627,2607,2580,2555,2539,2535,2546,2567,2585,2591,2584,2568,2545,
+2521,2503,2502,2510,2508,2486,2460,2452,2464,2477,2483,2501,2552,2610,2616,2526,2358,2166,1989,1845,1745,
+1714,1750,1808,1818,1744,1610,1468,1357,1285,1249,1240,1242,1236,1210,1166,1112,1053,997,961,958,976,
+979,932,838,733,655,613,596,582,560,526,481,436,402,385,381,382,387,398,416,435,447,
+447,434,413,395,388,393,407,435,490,573,667,745,799,844,890,923,918,870,803,744,689,
+620,536,455,399,363,332,301,276,262,249,229,204,186,175,168,162,160,165,170,172,169,
+165,159,150,146,154,175,196,207,209,212,219,226,229,228,227,227,226,223,220,212,201,
+187,179,179,181,178,168,157,153,157,159,151,135,123,125,135,141,135,127,135,160,183,
+189,180,168,162,153,134,110,94,90,90,83,65,43,24,15,16,23,29,28,18,-3,
+-39,-86,-133,-169,-188,-204,-229,-266,-307,-344,-381,-422,-465,-504,-541,-582,-628,-677,-723,-768,-814,
+-862,-907,-949,-991,-1039,-1092,-1149,-1209,-1273,-1336,-1393,-1441,-1485,-1531,-1579,-1627,-1675,-1729,-1790,-1853,-1911,
+-1957,-1993,-2021,-2047,-2078,-2120,-2170,-2221,-2269,-2315,-2361,-2403,-2440,-2470,-2499,-2531,-2567,-2604,-2640,-2677,-2718,
+-2766,-2821,-2879,-2929,-2964,-2989,-3013,-3042,-3064,-3066,-3043,-3009,-2985,-2985,-3017,-3078,-3158,-3247,-3334,-3413,-3477,
+-3526,-3561,-3597,-3644,-3701,-3753,-3788,-3807,-3824,-3850,-3883,-3911,-3933,-3953,-3976,-4001,-4024,-4044,-4061,-4078,-4096,
+-4117,-4139,-4163,-4186,-4207,-4222,-4230,-4231,-4232,-4235,-4239,-4236,-4224,-4207,-4190,-4180,-4176,-4173,-4160,-4123,-4058,
+-3979,-3914,-3889,-3906,-3947,-3985,-4004,-4002,-3986,-3968,-3954,-3940,-3919,-3886,-3851,-3826,-3816,-3809,-3791,-3763,-3733,
+-3713,-3704,-3703,-3706,-3709,-3706,-3700,-3701,-3719,-3747,-3767,-3765,-3743,-3717,-3688,-3649,-3596,-3544,-3506,-3476,-3431,
+-3357,-3265,-3175,-3090,-2993,-2871,-2731,-2596,-2490,-2415,-2365,-2328,-2296,-2269,-2245,-2215,-2165,-2088,-1994,-1912,-1855,
+-1813,-1767,-1713,-1669,-1652,-1656,-1664,-1663,-1657,-1645,-1617,-1563,-1489,-1412,-1342,-1279,-1219,-1167,-1131,-1109,-1087,
+-1055,-1017,-985,-969,-968,-973,-976,-972,-959,-931,-890,-847,-810,-780,-749,-714,-685,-671,-663,-642,-588,
+-504,-408,-317,-230,-146,-69,-10,20,34,52,98,176,269,347,386,380,342,285,220,154,104,
+81,89,117,155,201,260,333,418,513,615,719,817,898,964,1020,1073,1126,1183,1243,1306,1368,
+1431,1497,1563,1625,1680,1733,1794,1861,1923,1976,2023,2074,2123,2161,2192,2227,2277,2334,2381,2410,2428,
+2451,2486,2531,2579,2630,2685,2746,2806,2861,2908,2955,3009,3080,3168,3268,3370,3466,3550,3627,3709,3799,
+3888,3958,4002,4028,4056,4093,4132,4158,4171,4187,4218,4266,4323,4383,4442,4495,4528,4536,4531,4534,4549,
+4555,4532,4498,4492,4520,4520,4420,4228,4044,3969,4003,4061,4068,4029,4001,4009,4032,4047,4063,4093,4129,
+4151,4157,4165,4175,4180,4190,4236,4331,4433,4482,4467,4437,4444,4488,4536,4570,4600,4639,4674,4693,4697,
+4702,4707,4704,4690,4678,4678,4680,4670,4647,4633,4642,4673,4710,4741,4771,4812,4874,4951,5021,5064,5074,
+5075,5093,5134,5178,5198,5190,5172,5165,5176,5191,5193,5179,5162,5161,5181,5208,5224,5224,5216,5211,5209,
+5203,5192,5179,5165,5148,5127,5106,5090,5080,5071,5056,5037,5015,4993,4969,4943,4919,4902,4890,4877,4859,
+4845,4852,4881,4916,4930,4919,4909,4930,4984,5038,5061,5049,5028,5022,5028,5026,4998,4934,4828,4660,4391,
+4001,3542,3140,2933,2963,3135,3301,3377,3386,3395,3426,3446,3424,3371,3318,3271,3213,3134,3045,2958,2871,
+2779,2688,2609,2540,2471,2394,2315,2242,2173,2108,2051,2003,1959,1907,1843,1777,1715,1658,1602,1553,1515,
+1484,1449,1403,1351,1302,1261,1223,1182,1137,1092,1051,1016,985,955,927,907,898,891,876,851,822,
+795,769,739,706,675,650,624,589,546,502,463,428,393,357,323,293,265,236,206,180,160,
+149,140,127,109,88,68,48,26,3,-16,-29,-38,-54,-81,-117,-147,-160,-154,-146,-157,-190,
+-228,-259,-285,-319,-355,-374,-370,-367,-394,-439,-459,-426,-369,-347,-384,-452,-503,-526,-542,-569,-604,
+-633,-657,-683,-714,-742,-761,-778,-798,-825,-854,-883,-910,-935,-959,-981,-1004,-1027,-1047,-1065,-1082,-1102,
+-1121,-1135,-1145,-1153,-1165,-1180,-1194,-1204,-1212,-1219,-1229,-1243,-1257,-1268,-1275,-1281,-1287,-1288,-1284,-1278,-1273,
+-1272,-1275,-1279,-1281,-1282,-1281,-1280,-1279,-1279,-1280,-1280,-1279,-1277,-1271,-1260,-1249,-1241,-1235,-1223,-1202,-1178,
+-1160,-1150,-1139,-1124,-1109,-1099,-1096,-1093,-1087,-1079,-1075,-1072,-1066,-1056,-1043,-1030,-1020,-1011,-1001,-990,-978,
+-964,-950,-937,-923,-910,-899,-889,-877,-862,-844,-827,-813,-799,-782,-766,-754,-748,-743,-735,-723,-711,
+-702,-694,-683,-667,-648,-632,-619,-606,-591,-580,-576,-581,-586,-583,-573,-563,-559,-557,-552,-545,-541,
+-541,-538,-531,-520,-512,-506,-500,-493,-488,-486,-485,-484,-480,-477,-475,-471,-468,-464,-462,-459,-454,
+-446,-435,-423,-409,-398,-389,-383,-377,-370,-361,-353,-344,-332,-321,-314,-310,-305,-296,-284,-277,-273,
+-263,-244,-224,-216,-220,-222,-206,-177,-156,-159,-175,-184,-174,-156,-147,-147,-145,-137,-127,-121,-114,
+-100,-81,-67,-62,-58,-49,-32,-13,1,12,15,10,4,7,22,42,57,64,68,73,79,
+86,96,110,124,136,146,154,159,159,161,172,191,205,208,205,211,226,241,256,280,322,
+369,399,400,389,391,412,442,465,483,504,532,559,583,604,627,651,669,680,683,680,677,
+681,701,739,781,815,837,853,867,874,878,890,925,981,1038,1080,1110,1142,1185,1233,1273,1305,
+1340,1388,1446,1500,1540,1566,1588,1614,1645,1679,1710,1741,1774,1812,1853,1886,1878,1783,1588,1371,1293,
+1494,1965,2535,2999,3273,3424,3566,3744,3913,4022,4071,4107,4166,4247,4316,4332,4273,4151,4005,3871,3751,
+3621,3461,3281,3106,2957,2842,2762,2714,2684,2653,2612,2577,2564,2569,2565,2534,2483,2433,2389,2341,2288,
+2237,2199,2167,2129,2080,2024,1966,1907,1847,1791,1744,1703,1656,1590,1505,1406,1305,1211,1125,1042,955,
+861,764,670,587,521,475,448,430,412,388,365,350,353,379,423,467,493,492,470,439,408,
+386,383,401,411,365,243,87,-28,-60,-32,-6,-31,-107,-208,-309,-395,-461,-514,-569,-648,-756,
+-880,-993,-1073,-1111,-1117,-1107,-1097,-1089,-1080,-1066,-1054,-1048,-1053,-1065,-1087,-1117,-1145,-1158,-1149,-1124,-1101,
+-1094,-1101,-1113,-1116,-1100,-1068,-1027,-988,-956,-927,-900,-874,-849,-821,-786,-746,-708,-678,-654,-634,-616,
+-601,-588,-571,-551,-530,-512,-496,-482,-471,-464,-461,-460,-459,-457,-450,-439,-426,-417,-409,-400,-387,
+-372,-358,-343,-323,-299,-273,-247,-223,-198,-175,-154,-134,-112,-85,-54,-22,11,43,70,93,114,
+139,166,191,212,232,253,276,301,328,354,379,402,424,446,470,495,524,555,586,613,639,
+667,697,727,752,775,802,834,865,891,915,943,975,1006,1032,1056,1083,1117,1152,1181,1206,1230,
+1254,1273,1280,1280,1281,1291,1305,1315,1319,1325,1336,1348,1356,1360,1365,1372,1377,1381,1387,1396,1407,
+1417,1427,1440,1457,1473,1486,1498,1514,1533,1551,1566,1582,1599,1616,1634,1654,1677,1697,1712,1729,1751,
+1777,1798,1811,1823,1840,1860,1877,1889,1903,1925,1953,1980,2004,2009,2034,2062,2090,2114,2134,2155,2180,
+2210,2241,2269,2298,2333,2377,2421,2457,2490,2534,2592,2648,2689,2722,2771,2832,2862,2811,2679,2529,2434,
+2417,2443,2466,2472,2475,2482,2486,2477,2460,2450,2452,2459,2461,2458,2457,2462,2475,2497,2534,2584,2633,
+2674,2718,2786,2884,2981,3042,3060,3069,3104,3168,3232,3272,3292,3317,3362,3415,3448,3433,3362,3249,3126,
+3027,2967,2933,2901,2863,2835,2836,2864,2894,2904,2891,2869,2853,2840,2817,2772,2715,2667,2648,2658,2673,
+2667,2637,2598,2570,2561,2571,2591,2611,2623,2626,2625,2625,2624,2615,2599,2588,2587,2589,2582,2570,2563,
+2570,2590,2622,2671,2729,2764,2729,2610,2439,2267,2120,2000,1908,1861,1869,1900,1901,1833,1705,1558,1433,
+1351,1314,1305,1301,1283,1247,1200,1150,1094,1038,1003,1007,1037,1047,998,891,768,672,619,599,588,
+571,541,500,457,427,413,415,424,436,452,468,483,495,500,491,469,448,443,458,483,503,
+525,565,632,716,799,864,905,913,884,827,767,721,685,642,586,527,475,432,392,359,335,
+317,298,273,248,231,221,212,202,194,193,195,196,194,191,187,185,188,201,219,233,240,
+244,251,261,270,273,271,268,266,266,265,262,253,241,232,229,231,229,219,204,193,189,
+189,188,180,169,164,173,187,192,184,178,191,223,251,258,248,239,233,220,193,164,152,
+157,159,147,127,114,118,127,131,125,111,92,65,28,-17,-63,-98,-118,-128,-142,-169,-206,
+-244,-279,-314,-354,-395,-433,-469,-512,-560,-608,-651,-693,-739,-788,-832,-871,-913,-964,-1023,-1083,-1141,
+-1200,-1258,-1312,-1361,-1407,-1454,-1502,-1551,-1603,-1660,-1720,-1778,-1829,-1869,-1901,-1930,-1960,-1998,-2045,-2098,-2151,
+-2200,-2249,-2295,-2336,-2367,-2394,-2424,-2460,-2501,-2540,-2576,-2613,-2655,-2706,-2762,-2815,-2857,-2886,-2913,-2945,-2978,
+-2997,-2990,-2963,-2936,-2925,-2940,-2981,-3045,-3125,-3209,-3289,-3359,-3419,-3466,-3503,-3539,-3586,-3645,-3703,-3745,-3769,
+-3788,-3811,-3840,-3868,-3890,-3910,-3932,-3957,-3982,-4004,-4024,-4043,-4062,-4081,-4100,-4121,-4145,-4171,-4192,-4201,-4198,
+-4193,-4195,-4202,-4203,-4192,-4174,-4157,-4148,-4144,-4140,-4124,-4086,-4025,-3954,-3902,-3890,-3914,-3953,-3984,-3997,-3994,
+-3979,-3961,-3944,-3929,-3911,-3885,-3853,-3822,-3802,-3795,-3792,-3784,-3767,-3743,-3718,-3701,-3696,-3699,-3702,-3700,-3701,
+-3714,-3738,-3759,-3768,-3768,-3764,-3750,-3715,-3660,-3602,-3558,-3522,-3476,-3405,-3318,-3231,-3146,-3052,-2934,-2799,-2668,
+-2563,-2487,-2432,-2383,-2338,-2302,-2275,-2245,-2193,-2113,-2022,-1947,-1899,-1861,-1811,-1749,-1695,-1667,-1660,-1661,-1662,
+-1667,-1673,-1663,-1622,-1550,-1466,-1384,-1311,-1246,-1195,-1163,-1147,-1135,-1118,-1097,-1078,-1066,-1061,-1059,-1061,-1061,
+-1048,-1010,-952,-891,-846,-818,-793,-763,-736,-724,-725,-719,-686,-619,-524,-414,-297,-186,-95,-34,0,
+22,58,123,214,312,386,416,402,360,304,238,171,120,102,116,149,183,222,275,349,438,
+535,633,723,798,851,888,921,963,1017,1083,1155,1224,1284,1335,1388,1447,1509,1569,1629,1696,1773,
+1846,1904,1947,1984,2021,2056,2090,2129,2178,2233,2279,2309,2330,2356,2398,2454,2518,2579,2633,2680,2724,
+2772,2828,2891,2961,3036,3117,3203,3290,3374,3455,3540,3632,3726,3807,3860,3885,3897,3915,3944,3978,4005,
+4026,4051,4091,4147,4215,4286,4359,4424,4467,4481,4477,4481,4500,4515,4501,4468,4458,4481,4482,4383,4182,
+3980,3886,3911,3972,3988,3959,3940,3957,3984,3994,3998,4019,4057,4085,4093,4090,4089,4094,4107,4142,4204,
+4270,4311,4328,4349,4392,4445,4484,4509,4538,4577,4610,4627,4635,4650,4667,4670,4654,4635,4626,4624,4613,
+4595,4583,4594,4625,4662,4691,4718,4759,4828,4915,4990,5028,5032,5031,5049,5087,5123,5141,5143,5140,5140,
+5143,5149,5152,5148,5138,5136,5151,5177,5195,5195,5183,5175,5172,5168,5155,5140,5127,5116,5100,5080,5063,
+5054,5046,5030,5007,4985,4966,4944,4917,4887,4866,4858,4852,4839,4825,4829,4860,4899,4920,4913,4905,4928,
+4983,5036,5051,5029,5000,4990,4997,4993,4953,4869,4736,4534,4231,3820,3364,3000,2856,2954,3179,3367,3431,
+3408,3388,3407,3429,3409,3353,3295,3253,3209,3139,3045,2947,2856,2772,2690,2611,2537,2466,2393,2314,2233,
+2154,2087,2036,1997,1957,1907,1846,1785,1727,1671,1615,1563,1519,1481,1443,1400,1355,1313,1272,1230,1184,
+1138,1093,1049,1010,975,945,919,899,884,870,853,830,807,785,761,730,693,658,630,604,573,
+534,490,449,411,375,341,309,281,253,223,191,163,144,133,124,110,90,69,49,30,10,
+-10,-30,-47,-60,-73,-92,-118,-146,-163,-161,-153,-158,-187,-223,-247,-260,-281,-317,-351,-369,-381,
+-409,-449,-459,-410,-331,-289,-320,-395,-461,-491,-506,-531,-568,-602,-625,-647,-676,-707,-732,-750,-768,
+-792,-823,-856,-887,-915,-941,-966,-991,-1015,-1036,-1054,-1072,-1092,-1112,-1128,-1141,-1151,-1162,-1176,-1191,-1205,
+-1214,-1221,-1229,-1242,-1259,-1276,-1289,-1299,-1307,-1310,-1308,-1301,-1294,-1290,-1290,-1289,-1288,-1288,-1288,-1290,-1290,
+-1288,-1285,-1283,-1281,-1278,-1272,-1262,-1255,-1252,-1250,-1242,-1225,-1205,-1189,-1177,-1163,-1146,-1129,-1119,-1113,-1108,
+-1100,-1092,-1088,-1084,-1077,-1064,-1049,-1036,-1025,-1015,-1006,-998,-989,-976,-961,-946,-930,-917,-908,-901,-894,
+-881,-865,-848,-833,-821,-806,-791,-778,-770,-764,-756,-744,-732,-724,-717,-705,-687,-668,-653,-642,-630,
+-615,-601,-598,-602,-605,-599,-584,-573,-569,-569,-566,-560,-556,-554,-551,-542,-532,-523,-517,-510,-503,
+-498,-497,-496,-492,-487,-484,-482,-480,-476,-470,-467,-465,-461,-455,-448,-438,-425,-410,-397,-388,-380,
+-372,-362,-352,-343,-335,-326,-318,-308,-294,-280,-271,-269,-267,-256,-234,-211,-204,-213,-219,-209,-185,
+-168,-173,-189,-197,-190,-177,-171,-170,-164,-149,-134,-126,-123,-114,-97,-81,-71,-67,-60,-48,-34,
+-22,-12,-6,-3,-2,2,13,30,46,60,69,77,85,94,104,111,113,115,122,135,145,
+149,149,155,171,188,198,204,216,233,249,260,276,308,350,382,392,386,385,396,413,430,
+447,470,494,512,527,546,578,615,640,645,636,632,643,669,704,740,775,816,864,913,946,
+949,928,914,935,991,1053,1092,1111,1137,1186,1248,1302,1339,1369,1408,1453,1493,1522,1546,1577,1617,
+1660,1702,1743,1780,1805,1817,1828,1848,1847,1760,1563,1346,1288,1525,2021,2584,3021,3274,3425,3578,3763,
+3940,4066,4138,4182,4226,4281,4329,4334,4265,4133,3987,3865,3755,3612,3419,3214,3048,2934,2850,2774,2708,
+2657,2617,2580,2554,2548,2555,2549,2515,2464,2417,2377,2335,2290,2246,2210,2171,2124,2072,2022,1973,1911,
+1836,1765,1714,1681,1647,1594,1520,1429,1332,1234,1142,1057,975,890,798,703,617,552,510,487,470,
+451,431,417,414,424,449,484,519,535,524,491,450,413,389,385,395,390,328,201,56,-37,
+-48,-10,7,-35,-131,-246,-351,-437,-508,-575,-650,-743,-851,-958,-1044,-1093,-1105,-1092,-1073,-1060,-1055,
+-1052,-1043,-1031,-1023,-1024,-1034,-1054,-1081,-1106,-1119,-1115,-1100,-1088,-1084,-1089,-1097,-1098,-1085,-1056,-1018,-981,
+-951,-924,-895,-864,-834,-803,-768,-728,-688,-654,-626,-601,-581,-564,-550,-534,-516,-498,-482,-468,-453,
+-436,-424,-419,-420,-422,-419,-409,-395,-382,-374,-368,-360,-345,-327,-311,-294,-274,-250,-226,-205,-186,
+-166,-144,-122,-100,-76,-49,-20,10,41,70,97,121,145,170,195,218,240,263,287,312,338,
+364,389,414,437,461,484,507,531,557,586,615,644,670,697,725,754,780,805,832,863,894,
+921,944,969,998,1027,1054,1079,1108,1143,1178,1207,1229,1249,1271,1288,1295,1294,1294,1303,1317,1329,
+1336,1342,1352,1361,1366,1368,1372,1379,1386,1391,1397,1406,1418,1430,1443,1457,1473,1489,1502,1517,1534,
+1552,1567,1581,1597,1616,1633,1650,1669,1690,1709,1725,1743,1766,1792,1811,1823,1835,1854,1877,1895,1907,
+1919,1937,1961,1986,2009,2022,2050,2080,2107,2130,2150,2170,2195,2221,2250,2281,2319,2364,2411,2453,2484,
+2512,2555,2617,2678,2715,2730,2745,2775,2796,2762,2660,2532,2446,2430,2459,2488,2497,2495,2495,2495,2484,
+2467,2457,2461,2471,2477,2476,2475,2479,2491,2512,2547,2595,2644,2690,2739,2810,2907,3004,3067,3086,3088,
+3107,3153,3206,3244,3267,3293,3340,3400,3443,3434,3362,3246,3126,3039,2994,2970,2945,2917,2903,2914,2939,
+2955,2948,2924,2901,2886,2874,2849,2802,2742,2695,2679,2693,2710,2703,2665,2620,2595,2601,2627,2657,2677,
+2683,2682,2683,2691,2698,2696,2680,2664,2662,2673,2684,2681,2668,2660,2674,2716,2779,2839,2855,2800,2677,
+2522,2375,2249,2140,2046,1987,1974,1986,1979,1914,1790,1639,1504,1417,1380,1372,1361,1332,1289,1244,1199,
+1145,1090,1058,1069,1102,1106,1038,911,773,672,620,600,589,574,549,516,482,457,448,455,472,
+493,512,526,537,548,557,555,537,514,505,520,544,556,555,566,614,699,794,868,902,896,
+860,809,762,730,709,684,645,594,538,488,449,419,396,373,346,318,295,280,268,255,242,
+232,228,226,224,221,218,219,224,235,247,257,264,271,283,297,311,320,324,325,324,321,
+318,316,311,299,285,274,271,269,262,250,239,231,228,226,223,219,214,211,218,231,241,
+243,249,269,301,324,327,318,312,307,293,264,237,230,236,233,216,201,211,240,260,249,
+210,159,113,73,37,2,-27,-48,-60,-70,-88,-116,-151,-184,-217,-251,-290,-327,-361,-397,-439,
+-488,-535,-577,-620,-667,-716,-761,-799,-840,-892,-952,-1013,-1067,-1119,-1172,-1226,-1278,-1328,-1377,-1427,-1478,
+-1532,-1589,-1645,-1696,-1739,-1775,-1806,-1839,-1876,-1923,-1976,-2032,-2085,-2133,-2179,-2222,-2260,-2291,-2321,-2357,-2398,
+-2440,-2479,-2516,-2553,-2597,-2647,-2700,-2748,-2783,-2811,-2841,-2877,-2910,-2924,-2916,-2896,-2881,-2881,-2898,-2937,-3001,
+-3084,-3172,-3249,-3310,-3360,-3404,-3443,-3483,-3533,-3594,-3653,-3697,-3724,-3742,-3765,-3794,-3822,-3845,-3862,-3881,-3905,
+-3933,-3960,-3982,-4002,-4022,-4042,-4060,-4079,-4102,-4131,-4156,-4166,-4160,-4150,-4149,-4156,-4162,-4156,-4141,-4127,-4118,
+-4112,-4103,-4087,-4059,-4018,-3974,-3944,-3940,-3955,-3972,-3980,-3979,-3976,-3970,-3957,-3937,-3914,-3894,-3873,-3851,-3825,
+-3802,-3788,-3785,-3786,-3783,-3770,-3750,-3732,-3722,-3718,-3713,-3706,-3701,-3709,-3726,-3746,-3763,-3777,-3789,-3790,-3769,
+-3726,-3675,-3630,-3587,-3533,-3460,-3374,-3288,-3204,-3112,-3001,-2876,-2753,-2651,-2572,-2506,-2444,-2386,-2340,-2306,-2269,
+-2209,-2128,-2045,-1983,-1941,-1897,-1836,-1768,-1716,-1692,-1686,-1684,-1686,-1699,-1719,-1727,-1704,-1645,-1564,-1480,-1401,
+-1330,-1271,-1225,-1195,-1175,-1163,-1156,-1150,-1139,-1123,-1110,-1106,-1112,-1107,-1075,-1015,-950,-901,-872,-851,-825,
+-799,-784,-784,-786,-770,-726,-648,-542,-421,-307,-220,-164,-127,-87,-28,55,158,262,341,379,376,
+348,309,263,217,187,185,211,245,275,303,344,405,479,555,626,691,743,781,808,837,875,
+926,988,1061,1135,1198,1250,1298,1353,1414,1476,1536,1602,1680,1758,1821,1862,1890,1919,1956,1998,2045,
+2095,2146,2190,2223,2249,2280,2327,2389,2459,2525,2575,2612,2648,2696,2762,2840,2920,2996,3069,3142,3213,
+3284,3361,3452,3552,3646,3713,3749,3764,3773,3790,3816,3846,3874,3901,3932,3976,4036,4109,4189,4268,4339,
+4391,4416,4424,4437,4462,4483,4474,4442,4423,4432,4418,4312,4113,3915,3824,3853,3917,3933,3902,3882,3900,
+3928,3933,3925,3937,3976,4015,4027,4016,4006,4017,4051,4101,4153,4193,4218,4241,4279,4333,4381,4414,4441,
+4477,4518,4548,4562,4574,4595,4617,4622,4607,4588,4575,4564,4546,4524,4516,4535,4579,4625,4654,4668,4692,
+4752,4843,4930,4978,4986,4985,5002,5035,5063,5078,5088,5097,5104,5105,5103,5103,5103,5099,5099,5113,5140,
+5160,5159,5144,5135,5137,5138,5128,5111,5100,5091,5077,5057,5038,5026,5015,4995,4968,4944,4929,4914,4889,
+4858,4836,4829,4828,4819,4803,4802,4830,4873,4901,4898,4890,4911,4970,5027,5043,5015,4977,4964,4970,4960,
+4907,4805,4655,4437,4114,3680,3214,2861,2755,2905,3180,3399,3469,3430,3385,3385,3402,3385,3330,3271,3233,
+3200,3138,3043,2937,2844,2768,2695,2617,2538,2463,2389,2311,2226,2142,2074,2025,1990,1953,1905,1848,1791,
+1736,1682,1627,1573,1523,1477,1434,1395,1359,1323,1283,1237,1190,1144,1099,1052,1008,970,941,917,895,
+873,850,828,808,790,773,750,719,681,644,613,586,554,516,476,437,400,364,327,294,267,
+241,212,180,150,128,115,103,88,69,49,31,13,-5,-22,-40,-58,-76,-91,-104,-118,-139,
+-160,-170,-171,-178,-202,-232,-249,-250,-256,-281,-314,-337,-355,-388,-434,-455,-414,-330,-270,-283,-351,
+-418,-450,-461,-482,-519,-557,-585,-608,-637,-671,-701,-722,-738,-759,-788,-822,-854,-885,-914,-944,-973,
+-1000,-1022,-1041,-1061,-1081,-1102,-1119,-1133,-1143,-1153,-1165,-1181,-1200,-1216,-1226,-1235,-1245,-1260,-1276,-1290,-1302,
+-1313,-1323,-1326,-1321,-1314,-1308,-1305,-1303,-1301,-1301,-1303,-1304,-1303,-1298,-1292,-1287,-1285,-1282,-1275,-1266,-1258,
+-1252,-1247,-1238,-1226,-1213,-1203,-1193,-1181,-1164,-1148,-1138,-1131,-1124,-1116,-1109,-1105,-1099,-1089,-1076,-1064,-1053,
+-1042,-1031,-1022,-1014,-1005,-992,-976,-957,-939,-925,-916,-911,-906,-897,-883,-867,-853,-841,-830,-817,-804,
+-793,-785,-775,-763,-752,-745,-738,-726,-709,-691,-679,-671,-661,-646,-632,-626,-628,-628,-617,-600,-587,
+-583,-584,-582,-576,-571,-567,-563,-555,-546,-538,-530,-522,-512,-505,-502,-500,-496,-494,-496,-499,-499,
+-491,-482,-475,-471,-465,-458,-452,-446,-436,-421,-403,-387,-376,-369,-361,-351,-343,-337,-332,-325,-312,
+-294,-278,-269,-270,-271,-262,-240,-219,-212,-220,-228,-221,-203,-188,-188,-196,-199,-192,-181,-176,-175,
+-168,-152,-136,-128,-126,-121,-109,-94,-84,-79,-75,-69,-62,-54,-45,-33,-21,-11,-3,6,21,
+41,58,72,81,92,104,116,120,116,112,117,132,148,157,158,161,171,185,198,212,230,
+251,266,273,278,292,315,337,351,358,363,371,377,385,398,418,439,450,453,464,493,535,
+572,594,606,623,655,694,727,751,776,819,885,959,1008,1010,975,943,952,1004,1065,1104,1121,
+1144,1192,1258,1315,1352,1380,1412,1451,1486,1515,1549,1596,1651,1701,1744,1789,1829,1848,1840,1827,1830,
+1817,1717,1506,1288,1258,1537,2057,2611,3022,3269,3441,3619,3809,3974,4093,4172,4226,4269,4312,4351,4355,
+4289,4161,4027,3926,3828,3669,3432,3183,3000,2899,2833,2757,2675,2612,2576,2555,2538,2529,2527,2518,2489,
+2446,2404,2367,2329,2290,2252,2213,2165,2109,2056,2014,1972,1910,1829,1751,1697,1666,1638,1594,1530,1451,
+1360,1264,1170,1083,1002,916,823,728,646,589,555,533,514,493,476,469,475,490,514,544,571,
+578,559,518,472,431,404,393,388,362,286,162,39,-23,-13,23,22,-43,-152,-266,-364,-452,
+-541,-636,-732,-826,-915,-992,-1051,-1082,-1085,-1067,-1045,-1033,-1033,-1035,-1028,-1014,-1001,-998,-1006,-1023,-1043,
+-1062,-1075,-1080,-1079,-1074,-1068,-1062,-1059,-1057,-1047,-1023,-990,-959,-935,-912,-884,-851,-820,-792,-761,-722,
+-680,-641,-610,-584,-562,-543,-524,-506,-486,-469,-453,-436,-416,-396,-380,-374,-376,-378,-374,-364,-350,
+-338,-330,-322,-312,-296,-278,-260,-242,-221,-200,-182,-167,-153,-135,-113,-89,-62,-35,-7,20,48,
+75,102,130,157,184,208,231,252,274,298,324,350,375,399,424,448,472,496,521,545,568,
+591,616,644,673,700,726,753,782,808,834,859,887,915,942,966,990,1017,1045,1071,1098,1130,
+1167,1204,1234,1256,1275,1294,1310,1315,1311,1307,1312,1325,1338,1346,1352,1359,1366,1373,1377,1384,1392,
+1400,1407,1413,1421,1433,1446,1459,1472,1486,1499,1513,1529,1547,1563,1578,1594,1613,1634,1651,1665,1681,
+1702,1723,1742,1760,1780,1801,1817,1829,1843,1864,1888,1907,1920,1933,1951,1974,1998,2022,2038,2069,2098,
+2124,2146,2168,2191,2213,2233,2256,2286,2329,2381,2437,2486,2521,2547,2577,2620,2664,2687,2681,2663,2656,
+2655,2634,2574,2499,2452,2454,2487,2515,2523,2518,2512,2506,2494,2478,2469,2474,2485,2492,2494,2496,2501,
+2510,2528,2562,2610,2662,2708,2755,2822,2916,3017,3090,3118,3117,3119,3143,3184,3222,3253,3289,3345,3413,
+3461,3448,3362,3232,3110,3036,3011,3007,3000,2990,2991,3004,3016,3010,2986,2957,2935,2919,2900,2870,2824,
+2772,2731,2719,2733,2749,2738,2698,2655,2640,2663,2705,2742,2760,2763,2761,2762,2768,2774,2770,2757,2744,
+2747,2766,2784,2785,2766,2746,2749,2783,2836,2882,2887,2836,2736,2613,2488,2367,2252,2152,2087,2068,2072,
+2058,1990,1864,1709,1571,1481,1444,1433,1417,1382,1338,1297,1258,1207,1154,1127,1143,1173,1159,1065,916,
+771,676,632,612,596,578,559,537,514,497,493,504,527,552,574,588,597,606,617,620,606,
+582,565,567,577,577,566,571,618,705,799,867,895,892,870,839,806,780,764,746,713,660,
+598,544,508,485,462,434,402,374,353,335,317,300,288,282,278,273,265,257,252,254,263,
+277,288,295,300,311,331,351,365,372,379,386,389,386,382,378,371,357,338,322,311,302,
+291,280,274,271,268,265,266,271,274,271,272,282,301,321,340,361,385,400,402,397,395,
+393,381,359,341,336,334,319,297,292,318,354,362,322,249,177,126,97,81,67,51,31,
+9,-15,-41,-69,-99,-128,-158,-192,-227,-260,-291,-324,-365,-412,-458,-500,-543,-592,-642,-688,-728,
+-772,-824,-882,-939,-990,-1039,-1090,-1144,-1199,-1252,-1304,-1355,-1407,-1460,-1513,-1564,-1609,-1648,-1683,-1717,-1755,
+-1802,-1857,-1917,-1974,-2023,-2065,-2104,-2141,-2176,-2212,-2252,-2296,-2340,-2381,-2419,-2456,-2495,-2537,-2584,-2632,-2675,
+-2710,-2739,-2771,-2806,-2836,-2850,-2850,-2845,-2843,-2842,-2847,-2873,-2935,-3030,-3131,-3213,-3268,-3308,-3345,-3384,-3428,
+-3483,-3545,-3604,-3647,-3671,-3690,-3716,-3751,-3783,-3804,-3817,-3832,-3856,-3886,-3916,-3939,-3957,-3977,-3999,-4020,-4038,
+-4057,-4082,-4106,-4118,-4114,-4103,-4099,-4103,-4108,-4106,-4099,-4090,-4082,-4073,-4061,-4046,-4030,-4013,-3998,-3989,-3988,
+-3985,-3975,-3958,-3947,-3947,-3953,-3950,-3931,-3903,-3876,-3856,-3841,-3826,-3808,-3792,-3781,-3779,-3782,-3782,-3777,-3770,
+-3761,-3750,-3734,-3717,-3708,-3711,-3724,-3740,-3756,-3774,-3793,-3806,-3801,-3779,-3745,-3706,-3660,-3601,-3526,-3441,-3357,
+-3272,-3181,-3075,-2957,-2841,-2740,-2655,-2577,-2500,-2431,-2376,-2333,-2282,-2212,-2130,-2060,-2012,-1972,-1915,-1840,-1770,
+-1729,-1719,-1720,-1719,-1719,-1731,-1753,-1767,-1757,-1718,-1657,-1588,-1517,-1448,-1382,-1322,-1271,-1234,-1214,-1208,-1206,
+-1194,-1170,-1147,-1140,-1148,-1154,-1135,-1085,-1023,-973,-942,-920,-898,-876,-862,-859,-859,-851,-822,-766,-680,
+-577,-483,-416,-376,-341,-291,-220,-129,-26,79,172,235,261,262,251,236,223,220,237,270,303,
+324,339,361,397,443,491,539,588,634,677,718,760,803,848,899,964,1040,1115,1178,1231,1285,
+1345,1404,1460,1520,1591,1667,1730,1769,1794,1823,1867,1921,1978,2033,2082,2125,2160,2190,2224,2270,2331,
+2401,2465,2515,2553,2592,2647,2719,2800,2878,2951,3021,3087,3146,3205,3275,3366,3466,3552,3606,3631,3646,
+3665,3689,3715,3740,3765,3793,3827,3871,3930,4005,4087,4169,4243,4302,4342,4368,4395,4426,4447,4438,4405,
+4380,4372,4338,4218,4018,3829,3751,3791,3863,3883,3851,3825,3837,3861,3861,3843,3847,3886,3935,3956,3944,
+3934,3961,4031,4114,4174,4193,4187,4189,4217,4261,4302,4335,4370,4416,4460,4486,4498,4512,4534,4553,4556,
+4546,4534,4524,4508,4480,4450,4439,4464,4520,4581,4618,4624,4627,4667,4754,4850,4911,4926,4926,4942,4974,
+5002,5018,5031,5046,5057,5060,5058,5061,5065,5064,5063,5073,5096,5114,5112,5100,5097,5107,5114,5107,5090,
+5075,5065,5050,5028,5008,4996,4983,4962,4933,4908,4894,4882,4861,4833,4811,4804,4802,4792,4774,4768,4793,
+4838,4869,4868,4858,4880,4943,5010,5031,5000,4959,4944,4949,4932,4862,4746,4591,4371,4038,3585,3103,2755,
+2673,2853,3155,3395,3477,3437,3377,3359,3368,3356,3308,3251,3211,3177,3122,3034,2933,2843,2769,2700,2622,
+2540,2460,2384,2307,2225,2144,2076,2024,1983,1943,1896,1845,1792,1741,1689,1636,1581,1524,1469,1421,1385,
+1356,1326,1286,1240,1193,1149,1106,1058,1010,971,941,917,891,860,829,803,785,771,757,735,703,
+667,632,600,570,536,499,462,427,392,353,314,278,251,228,203,171,137,108,89,75,61,
+46,30,13,-4,-21,-36,-49,-64,-84,-101,-110,-114,-125,-144,-164,-178,-191,-215,-244,-262,-263,
+-263,-278,-301,-317,-330,-362,-416,-455,-433,-356,-284,-276,-330,-393,-424,-428,-437,-466,-506,-541,-572,
+-605,-643,-674,-693,-706,-723,-750,-782,-815,-847,-882,-918,-953,-981,-1003,-1023,-1043,-1065,-1086,-1105,-1121,
+-1134,-1145,-1157,-1174,-1194,-1214,-1229,-1240,-1251,-1264,-1278,-1290,-1300,-1312,-1323,-1331,-1331,-1327,-1324,-1322,-1321,
+-1319,-1318,-1318,-1317,-1313,-1306,-1299,-1295,-1292,-1290,-1284,-1276,-1267,-1255,-1242,-1230,-1220,-1213,-1208,-1202,-1191,
+-1177,-1164,-1155,-1147,-1140,-1133,-1128,-1122,-1113,-1100,-1089,-1080,-1073,-1064,-1052,-1040,-1030,-1020,-1007,-990,-970,
+-952,-936,-925,-919,-915,-908,-896,-881,-867,-856,-846,-835,-823,-812,-801,-791,-779,-769,-762,-756,-747,
+-733,-719,-709,-703,-695,-681,-666,-658,-656,-653,-641,-623,-608,-602,-602,-600,-594,-587,-582,-577,-570,
+-562,-555,-547,-536,-524,-513,-505,-500,-497,-500,-507,-514,-513,-504,-494,-488,-482,-473,-460,-450,-447,
+-443,-431,-410,-389,-375,-369,-365,-357,-348,-341,-338,-336,-327,-310,-294,-286,-288,-290,-283,-266,-249,
+-242,-245,-248,-241,-226,-213,-207,-206,-203,-196,-187,-181,-177,-171,-159,-146,-138,-134,-129,-119,-107,
+-97,-91,-86,-79,-72,-64,-52,-37,-21,-9,-1,7,24,46,66,79,85,92,102,111,114,
+112,111,119,135,153,167,174,180,187,196,207,222,240,261,277,288,293,297,303,313,327,
+343,359,370,373,376,387,407,429,443,449,457,479,514,554,588,617,648,684,719,743,756,
+771,806,869,944,999,1012,989,963,969,1013,1070,1113,1137,1165,1210,1267,1316,1345,1368,1398,1438,
+1477,1515,1561,1621,1682,1730,1767,1806,1847,1869,1862,1846,1837,1802,1669,1433,1222,1236,1569,2114,2650,
+3029,3269,3468,3675,3865,4003,4096,4172,4237,4282,4311,4329,4319,4252,4135,4026,3961,3894,3737,3467,3169,
+2950,2839,2776,2702,2617,2556,2534,2526,2512,2495,2483,2476,2459,2429,2393,2356,2319,2282,2242,2197,2143,
+2086,2038,2001,1962,1902,1826,1754,1703,1670,1637,1592,1534,1466,1385,1295,1203,1115,1027,932,833,741,
+671,625,594,567,539,514,500,501,514,536,565,597,620,622,598,558,513,470,433,402,373,
+326,240,124,25,-10,17,55,41,-40,-156,-266,-360,-455,-564,-679,-782,-859,-917,-967,-1016,-1053,
+-1067,-1056,-1037,-1025,-1025,-1025,-1016,-998,-984,-982,-992,-1008,-1023,-1037,-1052,-1069,-1081,-1080,-1065,-1041,-1021,
+-1009,-999,-982,-957,-933,-916,-897,-869,-835,-805,-780,-754,-718,-675,-635,-604,-581,-557,-531,-505,-479,
+-454,-432,-412,-392,-372,-355,-343,-339,-337,-335,-328,-318,-307,-296,-285,-273,-261,-246,-230,-211,-191,
+-171,-154,-141,-130,-116,-95,-69,-41,-13,14,40,66,91,116,143,171,199,226,251,272,292,
+314,337,362,385,408,430,455,480,505,529,554,579,603,625,648,673,701,728,754,780,806,
+833,859,882,905,930,956,981,1006,1033,1060,1087,1114,1145,1182,1221,1254,1279,1299,1317,1331,1336,
+1330,1322,1323,1333,1346,1355,1360,1365,1373,1382,1391,1400,1408,1417,1425,1432,1442,1453,1464,1476,1487,
+1498,1510,1522,1537,1552,1566,1582,1600,1622,1642,1657,1669,1687,1710,1734,1755,1771,1788,1805,1820,1834,
+1851,1872,1894,1912,1926,1942,1963,1986,2011,2038,2050,2081,2110,2133,2155,2179,2203,2223,2239,2258,2290,
+2337,2396,2460,2521,2568,2592,2600,2606,2615,2617,2601,2570,2540,2520,2503,2480,2458,2455,2478,2511,2532,
+2536,2532,2527,2519,2506,2493,2490,2497,2505,2509,2510,2514,2521,2528,2544,2577,2628,2682,2726,2765,2823,
+2912,3015,3097,3134,3134,3127,3138,3170,3211,3251,3296,3355,3422,3465,3446,3350,3214,3096,3040,3039,3060,
+3075,3084,3091,3094,3076,3038,2996,2968,2955,2943,2921,2889,2850,2810,2780,2772,2784,2797,2786,2750,2715,
+2712,2746,2793,2825,2835,2834,2833,2836,2839,2839,2833,2825,2821,2829,2848,2864,2865,2849,2831,2827,2842,
+2868,2890,2888,2854,2789,2699,2591,2467,2341,2235,2173,2156,2158,2135,2057,1924,1768,1630,1542,1503,1489,
+1469,1433,1393,1359,1324,1278,1228,1206,1222,1243,1210,1096,935,793,708,670,645,618,593,577,566,
+556,548,549,564,589,615,637,651,660,669,678,681,670,646,621,603,589,572,564,587,656,
+753,842,897,920,927,927,914,888,860,841,828,802,751,683,625,588,565,540,507,471,443,
+420,397,373,355,348,347,341,329,315,304,298,298,306,319,332,341,351,368,392,413,423,
+429,437,449,455,452,445,440,434,419,396,374,356,341,327,317,314,314,312,310,319,336,
+349,348,342,350,376,409,437,455,469,481,489,493,494,491,482,473,469,467,454,424,394,
+389,410,426,401,332,251,192,168,166,169,165,147,114,74,34,1,-24,-49,-76,-105,-136,
+-168,-198,-227,-259,-296,-338,-382,-423,-466,-513,-562,-610,-656,-704,-756,-811,-863,-913,-962,-1015,-1070,
+-1125,-1178,-1231,-1284,-1337,-1387,-1435,-1480,-1522,-1562,-1600,-1640,-1685,-1739,-1801,-1862,-1916,-1958,-1992,-2024,-2057,
+-2093,-2136,-2186,-2236,-2281,-2319,-2354,-2392,-2433,-2474,-2515,-2558,-2600,-2636,-2668,-2699,-2730,-2757,-2778,-2793,-2804,
+-2807,-2796,-2780,-2792,-2855,-2964,-3081,-3172,-3228,-3262,-3292,-3327,-3372,-3430,-3498,-3560,-3601,-3622,-3640,-3669,-3709,
+-3744,-3764,-3774,-3787,-3813,-3846,-3876,-3897,-3913,-3933,-3957,-3980,-3995,-4006,-4020,-4039,-4054,-4060,-4055,-4049,-4048,
+-4049,-4049,-4048,-4045,-4040,-4031,-4020,-4008,-4001,-3998,-3999,-4000,-3996,-3980,-3954,-3929,-3915,-3919,-3928,-3930,-3916,
+-3890,-3862,-3840,-3827,-3818,-3809,-3797,-3786,-3780,-3780,-3784,-3788,-3791,-3788,-3778,-3761,-3744,-3734,-3735,-3742,-3750,
+-3759,-3773,-3790,-3805,-3811,-3806,-3789,-3762,-3722,-3667,-3599,-3523,-3442,-3356,-3262,-3156,-3041,-2927,-2823,-2729,-2639,
+-2550,-2471,-2410,-2357,-2291,-2206,-2122,-2062,-2027,-1987,-1921,-1837,-1770,-1742,-1743,-1747,-1744,-1741,-1749,-1766,-1778,
+-1775,-1753,-1717,-1669,-1613,-1553,-1491,-1430,-1372,-1323,-1291,-1275,-1264,-1247,-1221,-1196,-1187,-1195,-1205,-1193,-1153,
+-1098,-1049,-1014,-991,-972,-956,-946,-944,-943,-938,-920,-881,-818,-739,-667,-622,-596,-569,-523,-458,-383,
+-301,-207,-107,-18,43,78,101,120,139,161,187,215,237,244,240,238,250,279,324,381,445,
+508,569,628,685,735,775,815,872,952,1039,1116,1176,1228,1281,1335,1387,1442,1507,1579,1640,1681,
+1708,1739,1787,1848,1912,1971,2024,2070,2109,2144,2180,2227,2286,2351,2413,2463,2507,2554,2615,2687,2763,
+2836,2907,2979,3044,3098,3148,3209,3292,3383,3455,3495,3514,3534,3567,3603,3630,3650,3672,3700,3735,3778,
+3831,3899,3978,4061,4140,4210,4266,4310,4347,4378,4393,4380,4349,4328,4317,4272,4139,3930,3739,3661,3705,
+3786,3816,3789,3759,3762,3782,3783,3767,3768,3808,3862,3891,3884,3876,3913,4007,4117,4187,4192,4157,4133,
+4147,4186,4228,4266,4308,4356,4396,4418,4430,4449,4473,4490,4491,4484,4478,4469,4447,4412,4378,4364,4385,
+4443,4516,4569,4585,4582,4608,4684,4781,4846,4862,4859,4874,4911,4948,4969,4983,4997,5009,5015,5019,5030,
+5041,5045,5041,5042,5054,5063,5061,5053,5056,5070,5080,5074,5058,5043,5032,5018,4998,4980,4968,4956,4937,
+4912,4889,4872,4856,4834,4810,4791,4782,4776,4762,4743,4737,4759,4800,4829,4831,4825,4852,4922,4993,5012,
+4977,4934,4924,4931,4905,4820,4693,4539,4321,3975,3501,3010,2674,2615,2809,3110,3349,3443,3418,3360,3328,
+3326,3318,3285,3236,3188,3145,3092,3019,2935,2853,2779,2705,2626,2542,2458,2379,2301,2224,2150,2082,2023,
+1972,1926,1882,1837,1791,1744,1695,1644,1586,1521,1457,1405,1371,1347,1321,1283,1239,1194,1152,1109,1063,
+1016,976,944,916,885,849,812,782,763,751,738,717,688,653,619,587,556,522,488,453,418,
+380,338,295,259,233,215,194,164,125,90,65,49,37,26,13,0,-18,-38,-53,-64,-74,
+-89,-105,-110,-107,-108,-123,-146,-167,-186,-210,-242,-268,-282,-290,-305,-323,-331,-335,-357,-408,-455,
+-451,-388,-316,-296,-336,-391,-416,-411,-406,-424,-459,-498,-535,-574,-614,-644,-660,-670,-685,-711,-743,
+-775,-807,-845,-887,-927,-957,-979,-998,-1020,-1043,-1064,-1083,-1101,-1120,-1139,-1156,-1173,-1191,-1209,-1225,-1238,
+-1251,-1267,-1282,-1294,-1303,-1313,-1323,-1330,-1334,-1335,-1335,-1335,-1334,-1331,-1329,-1327,-1324,-1320,-1315,-1312,-1309,
+-1305,-1301,-1296,-1290,-1282,-1270,-1253,-1237,-1226,-1221,-1217,-1209,-1198,-1187,-1177,-1170,-1162,-1154,-1148,-1144,-1138,
+-1127,-1114,-1103,-1095,-1088,-1079,-1066,-1053,-1040,-1029,-1016,-1001,-985,-968,-951,-937,-929,-923,-917,-907,-892,
+-878,-867,-857,-848,-839,-829,-819,-809,-798,-788,-781,-776,-770,-760,-749,-740,-734,-728,-716,-702,-691,
+-685,-680,-670,-653,-637,-628,-623,-618,-611,-604,-599,-594,-587,-579,-570,-562,-552,-541,-529,-518,-509,
+-505,-508,-515,-517,-512,-503,-498,-499,-498,-486,-466,-450,-446,-448,-441,-422,-399,-384,-380,-378,-371,
+-359,-349,-346,-346,-341,-330,-317,-311,-311,-312,-307,-295,-283,-276,-273,-268,-259,-247,-236,-227,-221,
+-216,-211,-204,-198,-192,-184,-175,-165,-156,-149,-141,-133,-122,-113,-103,-92,-79,-65,-52,-38,-24,
+-10,-2,2,10,27,51,73,84,86,86,89,92,94,96,103,115,132,149,165,179,190,
+197,203,212,225,241,259,278,297,312,320,321,323,333,352,372,387,394,400,412,432,457,
+482,501,517,536,561,590,620,646,670,694,718,738,753,765,787,826,879,931,963,972,971,
+984,1021,1071,1118,1155,1191,1236,1282,1318,1337,1353,1381,1424,1471,1518,1570,1630,1688,1731,1761,1794,
+1833,1861,1867,1863,1853,1795,1629,1374,1184,1253,1640,2198,2702,3039,3265,3482,3713,3902,4021,4100,4181,
+4249,4270,4241,4192,4136,4061,3971,3908,3895,3868,3727,3443,3112,2864,2743,2689,2629,2556,2506,2492,2489,
+2474,2450,2437,2435,2429,2406,2372,2335,2298,2259,2215,2165,2113,2065,2026,1992,1951,1894,1829,1770,1724,
+1684,1639,1588,1531,1469,1395,1311,1223,1133,1037,933,831,748,692,655,621,582,542,514,504,512,
+534,565,601,634,650,644,620,589,556,515,463,406,349,284,195,88,3,-18,19,62,48,
+-33,-150,-261,-361,-466,-584,-700,-785,-831,-859,-895,-952,-1012,-1051,-1058,-1045,-1032,-1027,-1022,-1009,-992,
+-981,-985,-1001,-1019,-1035,-1051,-1073,-1099,-1119,-1115,-1084,-1037,-994,-969,-958,-947,-933,-917,-903,-883,-852,
+-814,-781,-756,-731,-697,-656,-619,-590,-566,-538,-505,-472,-441,-414,-390,-370,-352,-337,-327,-320,-315,
+-308,-298,-286,-276,-268,-257,-243,-227,-214,-202,-188,-169,-149,-131,-118,-107,-94,-74,-47,-16,13,
+40,66,89,113,136,161,186,212,238,263,287,309,330,352,375,397,418,439,461,486,511,
+535,558,583,609,634,657,678,701,726,753,778,802,827,853,878,901,923,946,972,999,1027,
+1054,1082,1108,1133,1160,1193,1229,1264,1292,1314,1331,1344,1349,1345,1338,1338,1348,1361,1372,1378,1382,
+1390,1399,1409,1417,1424,1431,1439,1448,1458,1468,1478,1488,1499,1511,1523,1534,1544,1555,1567,1583,1602,
+1623,1640,1654,1669,1690,1716,1740,1759,1774,1789,1806,1824,1841,1860,1880,1900,1916,1933,1953,1975,1997,
+2021,2050,2056,2087,2116,2139,2161,2185,2209,2227,2242,2265,2305,2359,2420,2484,2546,2593,2611,2598,2571,
+2551,2542,2533,2514,2490,2468,2455,2450,2457,2476,2503,2525,2533,2533,2533,2534,2529,2518,2511,2514,2524,
+2528,2525,2521,2524,2532,2539,2554,2588,2642,2696,2737,2771,2821,2901,2997,3077,3118,3124,3120,3129,3160,
+3202,3245,3286,3335,3390,3426,3409,3324,3204,3108,3074,3094,3134,3166,3185,3190,3169,3113,3038,2977,2951,
+2951,2951,2937,2913,2887,2862,2843,2839,2854,2870,2866,2838,2812,2814,2844,2876,2887,2880,2873,2877,2885,
+2887,2881,2874,2873,2881,2894,2908,2919,2925,2925,2923,2918,2914,2912,2911,2903,2880,2834,2761,2661,2540,
+2414,2310,2253,2240,2238,2203,2109,1966,1809,1678,1595,1558,1541,1521,1489,1455,1427,1396,1353,1307,1285,
+1296,1306,1260,1139,981,849,772,734,700,659,626,609,607,606,605,612,630,656,681,701,716,
+727,737,743,743,733,712,681,644,604,573,575,629,730,843,927,969,986,1002,1017,1014,986,
+950,929,925,912,869,803,741,697,667,633,591,550,518,491,461,435,421,420,419,407,388,
+371,362,359,358,362,374,389,403,418,438,463,482,490,494,503,515,519,512,503,497,490,
+474,450,426,407,391,376,367,368,372,373,374,386,409,429,432,424,429,456,495,526,543,
+555,570,587,597,593,581,571,574,586,589,567,523,484,469,469,453,398,322,261,239,247,
+261,262,245,213,168,120,78,47,24,0,-27,-56,-86,-115,-145,-174,-203,-236,-273,-313,-354,
+-395,-438,-484,-532,-582,-634,-686,-737,-787,-837,-890,-945,-999,-1052,-1104,-1158,-1212,-1265,-1313,-1356,-1396,
+-1438,-1482,-1526,-1573,-1624,-1682,-1744,-1800,-1845,-1879,-1909,-1939,-1975,-2017,-2066,-2122,-2175,-2218,-2252,-2286,-2325,
+-2367,-2406,-2444,-2483,-2525,-2564,-2597,-2625,-2652,-2679,-2708,-2737,-2760,-2762,-2738,-2708,-2712,-2779,-2897,-3023,-3120,
+-3179,-3215,-3244,-3274,-3313,-3372,-3447,-3517,-3561,-3578,-3590,-3616,-3654,-3688,-3706,-3716,-3732,-3762,-3799,-3831,-3852,
+-3870,-3890,-3915,-3936,-3948,-3952,-3957,-3970,-3988,-4003,-4007,-4002,-3995,-3993,-3996,-3999,-3999,-3996,-3990,-3986,-3984,
+-3983,-3982,-3981,-3978,-3969,-3950,-3927,-3907,-3899,-3900,-3901,-3897,-3884,-3866,-3845,-3825,-3812,-3805,-3802,-3798,-3793,
+-3789,-3786,-3786,-3790,-3796,-3801,-3800,-3793,-3784,-3779,-3779,-3780,-3781,-3783,-3788,-3797,-3805,-3811,-3813,-3809,-3794,
+-3765,-3722,-3668,-3604,-3529,-3442,-3345,-3237,-3123,-3009,-2902,-2800,-2698,-2598,-2513,-2445,-2381,-2300,-2201,-2110,-2056,
+-2030,-1997,-1933,-1853,-1795,-1774,-1775,-1772,-1762,-1758,-1769,-1786,-1797,-1796,-1785,-1761,-1725,-1677,-1625,-1575,-1526,
+-1476,-1427,-1386,-1355,-1331,-1307,-1280,-1257,-1245,-1248,-1252,-1242,-1209,-1162,-1117,-1083,-1060,-1041,-1028,-1023,-1027,
+-1032,-1034,-1026,-1000,-951,-886,-824,-785,-766,-747,-715,-674,-633,-588,-522,-430,-330,-244,-179,-126,-76,
+-32,1,22,36,40,31,11,-3,5,51,133,237,342,431,503,566,625,674,712,747,800,
+880,973,1056,1118,1165,1210,1257,1304,1356,1419,1489,1552,1598,1632,1666,1712,1769,1830,1892,1953,2008,
+2057,2099,2142,2192,2252,2316,2376,2427,2473,2522,2581,2648,2720,2793,2868,2944,3012,3065,3112,3168,3241,
+3316,3370,3394,3406,3432,3475,3521,3552,3570,3590,3621,3660,3701,3746,3800,3868,3949,4037,4121,4192,4247,
+4289,4317,4321,4300,4272,4263,4267,4228,4095,3881,3682,3594,3631,3714,3755,3734,3694,3680,3692,3703,3704,
+3715,3753,3805,3838,3836,3826,3856,3944,4056,4128,4128,4082,4050,4064,4111,4163,4208,4251,4294,4325,4342,
+4357,4382,4411,4430,4432,4426,4417,4400,4370,4333,4302,4288,4302,4352,4428,4500,4538,4547,4570,4638,4729,
+4793,4807,4798,4810,4850,4894,4922,4936,4948,4961,4970,4980,4996,5015,5024,5022,5017,5016,5015,5010,5006,
+5012,5025,5033,5028,5018,5009,5003,4992,4976,4959,4944,4929,4911,4893,4875,4856,4834,4810,4789,4775,4765,
+4752,4736,4721,4718,4736,4767,4792,4799,4806,4845,4918,4982,4989,4944,4902,4899,4908,4872,4772,4639,4489,
+4269,3904,3404,2907,2595,2565,2766,3052,3283,3396,3405,3361,3312,3283,3269,3252,3220,3171,3115,3059,3001,
+2939,2870,2795,2715,2632,2547,2462,2378,2297,2222,2151,2084,2019,1960,1910,1868,1830,1790,1747,1701,1650,
+1588,1517,1448,1394,1360,1337,1312,1279,1240,1200,1158,1114,1067,1022,981,945,913,880,844,805,771,
+746,732,720,703,676,642,607,573,541,512,482,449,410,364,317,272,236,212,197,182,156,
+118,80,52,34,22,11,0,-12,-29,-51,-70,-82,-89,-98,-108,-110,-102,-96,-105,-127,-151,
+-171,-193,-224,-256,-282,-303,-326,-347,-354,-351,-361,-398,-442,-451,-410,-355,-335,-362,-401,-415,-401,
+-388,-395,-419,-450,-483,-521,-563,-596,-616,-629,-649,-678,-710,-740,-770,-808,-853,-896,-929,-953,-973,
+-996,-1021,-1042,-1061,-1081,-1105,-1129,-1152,-1171,-1189,-1204,-1218,-1231,-1246,-1262,-1279,-1294,-1305,-1314,-1322,-1328,
+-1332,-1335,-1337,-1337,-1335,-1332,-1329,-1329,-1329,-1328,-1327,-1327,-1325,-1319,-1312,-1305,-1302,-1298,-1288,-1272,-1256,
+-1244,-1236,-1229,-1219,-1207,-1196,-1188,-1180,-1172,-1163,-1157,-1153,-1148,-1140,-1128,-1117,-1107,-1098,-1087,-1075,-1061,
+-1048,-1036,-1024,-1012,-999,-985,-969,-955,-945,-937,-930,-919,-906,-893,-882,-873,-865,-857,-850,-843,-835,
+-824,-814,-806,-801,-796,-789,-780,-770,-763,-757,-748,-737,-725,-717,-710,-701,-687,-672,-659,-649,-639,
+-628,-619,-613,-609,-603,-594,-584,-576,-569,-562,-552,-541,-532,-526,-525,-524,-517,-505,-496,-497,-507,
+-511,-500,-477,-457,-452,-455,-452,-437,-417,-403,-398,-396,-388,-373,-360,-355,-353,-350,-342,-332,-327,
+-326,-324,-318,-311,-305,-299,-291,-281,-270,-261,-253,-245,-237,-232,-229,-226,-220,-212,-204,-195,-185,
+-174,-164,-156,-149,-141,-131,-118,-102,-84,-66,-50,-36,-24,-13,-6,-3,4,20,42,63,75,
+78,78,78,79,80,85,97,112,126,140,155,171,185,193,199,208,221,237,254,274,298,
+320,335,339,340,346,359,375,391,405,419,434,451,472,500,531,557,577,594,613,633,652,
+665,680,700,727,753,770,781,794,822,864,911,949,975,999,1031,1076,1125,1171,1214,1258,1297,
+1325,1338,1349,1376,1421,1473,1522,1570,1620,1668,1707,1738,1772,1809,1837,1849,1854,1843,1770,1586,1335,
+1183,1304,1722,2266,2724,3018,3230,3459,3704,3900,4025,4124,4227,4288,4245,4104,3941,3818,3739,3692,3687,
+3720,3721,3592,3311,2981,2740,2636,2608,2575,2519,2473,2458,2452,2436,2415,2407,2409,2403,2376,2337,2300,
+2267,2229,2181,2130,2085,2051,2023,1990,1946,1891,1837,1788,1744,1694,1638,1580,1522,1461,1389,1307,1221,
+1131,1031,925,828,759,716,683,642,592,547,520,517,531,557,591,626,650,651,631,606,589,
+574,542,481,404,330,260,177,77,-6,-33,-2,39,33,-38,-151,-267,-378,-492,-608,-705,-758,
+-772,-779,-813,-884,-968,-1030,-1055,-1052,-1040,-1031,-1022,-1012,-1002,-1002,-1014,-1035,-1057,-1079,-1101,-1126,-1152,
+-1165,-1152,-1106,-1040,-980,-946,-936,-934,-928,-915,-897,-871,-834,-791,-752,-721,-695,-663,-626,-591,-559,
+-528,-494,-458,-426,-400,-379,-361,-345,-332,-319,-308,-296,-284,-271,-257,-244,-235,-227,-216,-200,-185,
+-173,-164,-153,-136,-116,-99,-87,-76,-59,-34,-2,29,59,85,110,133,157,181,206,229,251,
+272,295,318,341,364,386,408,431,454,475,496,519,542,565,588,611,637,662,685,706,729,
+753,777,801,823,846,871,895,919,942,968,996,1025,1054,1083,1111,1137,1160,1181,1207,1239,1273,
+1303,1325,1342,1353,1359,1358,1356,1357,1367,1381,1394,1401,1406,1411,1418,1425,1431,1437,1443,1450,1458,
+1467,1475,1484,1493,1505,1518,1530,1541,1550,1560,1572,1587,1604,1622,1638,1655,1674,1698,1722,1743,1758,
+1773,1791,1810,1830,1849,1868,1888,1907,1926,1946,1968,1989,2008,2029,2056,2060,2093,2124,2150,2174,2198,
+2219,2234,2251,2281,2330,2389,2446,2498,2542,2571,2574,2549,2512,2487,2483,2491,2497,2495,2489,2483,2483,
+2491,2507,2522,2527,2523,2521,2527,2536,2536,2528,2525,2533,2544,2544,2534,2525,2527,2536,2544,2559,2594,
+2646,2700,2741,2776,2822,2891,2969,3037,3079,3097,3107,3122,3151,3190,3227,3259,3291,3329,3359,3353,3297,
+3213,3148,3134,3165,3209,3244,3263,3258,3216,3131,3029,2953,2927,2936,2951,2954,2948,2937,2925,2916,2923,
+2948,2976,2981,2960,2936,2932,2943,2947,2929,2902,2890,2899,2914,2917,2908,2901,2908,2925,2941,2953,2966,
+2986,3012,3031,3031,3012,2989,2972,2956,2924,2866,2786,2690,2585,2475,2380,2326,2312,2306,2260,2150,1992,
+1832,1711,1642,1611,1596,1577,1551,1524,1500,1470,1428,1382,1356,1357,1354,1302,1185,1040,920,849,808,
+766,717,676,659,658,662,665,674,695,721,746,767,784,799,809,811,807,798,780,748,698,
+640,602,616,697,823,945,1022,1051,1063,1082,1105,1106,1077,1037,1015,1016,1014,985,931,873,825,
+784,736,681,631,592,560,529,505,496,497,492,473,449,435,434,436,434,433,442,459,476,
+493,512,534,552,560,566,574,583,583,572,560,553,545,527,502,480,466,453,439,431,437,
+450,459,460,465,482,502,511,509,515,541,579,611,630,643,661,680,684,667,640,623,632,
+654,661,635,584,538,515,500,466,406,347,320,328,346,346,322,282,239,197,158,126,101,
+78,51,19,-11,-40,-68,-97,-126,-154,-182,-215,-252,-292,-331,-371,-413,-459,-510,-563,-615,-665,
+-714,-765,-821,-877,-929,-979,-1029,-1084,-1140,-1193,-1239,-1279,-1318,-1361,-1409,-1460,-1513,-1568,-1626,-1681,-1727,
+-1762,-1790,-1819,-1856,-1899,-1949,-2003,-2059,-2111,-2151,-2183,-2216,-2255,-2297,-2337,-2374,-2413,-2454,-2493,-2525,-2552,
+-2577,-2605,-2640,-2677,-2705,-2708,-2683,-2654,-2663,-2731,-2844,-2960,-3053,-3118,-3165,-3200,-3225,-3254,-3309,-3389,-3469,
+-3517,-3531,-3535,-3552,-3584,-3615,-3632,-3644,-3664,-3697,-3735,-3769,-3796,-3819,-3843,-3866,-3885,-3896,-3902,-3907,-3916,
+-3933,-3949,-3957,-3953,-3946,-3943,-3947,-3950,-3944,-3935,-3932,-3944,-3961,-3973,-3972,-3962,-3949,-3935,-3920,-3906,-3899,
+-3896,-3891,-3878,-3861,-3846,-3835,-3824,-3812,-3801,-3794,-3793,-3794,-3796,-3798,-3799,-3797,-3797,-3802,-3812,-3822,-3825,
+-3822,-3820,-3821,-3824,-3826,-3828,-3828,-3825,-3821,-3819,-3821,-3822,-3813,-3792,-3761,-3722,-3670,-3601,-3516,-3419,-3315,
+-3205,-3093,-2983,-2875,-2764,-2655,-2559,-2482,-2407,-2312,-2198,-2101,-2051,-2036,-2016,-1964,-1896,-1848,-1831,-1825,-1811,
+-1792,-1789,-1806,-1830,-1844,-1846,-1836,-1813,-1774,-1725,-1677,-1637,-1601,-1562,-1516,-1470,-1431,-1399,-1371,-1344,-1318,
+-1299,-1290,-1287,-1278,-1253,-1216,-1179,-1152,-1132,-1114,-1100,-1097,-1107,-1123,-1134,-1133,-1113,-1070,-1010,-948,-906,
+-885,-874,-859,-845,-836,-825,-789,-717,-625,-536,-459,-388,-320,-263,-231,-221,-224,-229,-239,-250,-249,
+-210,-117,23,182,322,424,489,538,584,627,664,702,755,831,918,996,1054,1098,1137,1176,1216,
+1264,1324,1395,1463,1518,1561,1600,1641,1688,1742,1804,1873,1940,1999,2048,2096,2150,2213,2279,2340,2394,
+2441,2487,2540,2602,2674,2752,2832,2909,2975,3030,3080,3136,3200,3257,3289,3300,3310,3340,3390,3443,3478,
+3499,3520,3552,3595,3637,3676,3717,3773,3851,3945,4039,4117,4177,4221,4246,4242,4213,4184,4184,4203,4183,
+4068,3869,3675,3580,3607,3690,3741,3722,3663,3615,3603,3619,3643,3670,3706,3752,3787,3794,3784,3793,3851,
+3939,4005,4011,3978,3956,3978,4035,4094,4144,4187,4226,4252,4267,4283,4309,4340,4361,4367,4363,4349,4322,
+4282,4245,4221,4211,4220,4259,4331,4412,4466,4489,4516,4583,4673,4739,4753,4743,4751,4789,4832,4859,4872,
+4886,4904,4920,4933,4948,4968,4982,4986,4982,4974,4965,4959,4959,4968,4980,4988,4989,4988,4987,4982,4971,
+4955,4937,4916,4894,4874,4862,4853,4837,4813,4790,4775,4765,4752,4736,4720,4713,4716,4728,4747,4764,4777,
+4801,4853,4926,4976,4965,4911,4870,4873,4878,4825,4708,4571,4428,4204,3816,3290,2792,2513,2521,2734,3008,
+3238,3385,3442,3418,3344,3266,3223,3211,3197,3156,3092,3030,2981,2936,2881,2809,2725,2639,2555,2471,2385,
+2302,2226,2157,2089,2020,1955,1902,1859,1822,1783,1742,1700,1651,1588,1515,1444,1389,1354,1329,1304,1276,
+1245,1211,1169,1122,1074,1028,985,943,906,875,843,807,769,738,718,707,692,667,633,594,556,
+525,500,476,443,399,346,296,253,218,193,177,164,144,113,78,49,30,14,-1,-16,-27,
+-40,-59,-81,-97,-105,-110,-113,-111,-101,-90,-93,-112,-137,-158,-176,-201,-230,-259,-287,-316,-342,
+-355,-354,-355,-378,-412,-431,-419,-392,-382,-397,-414,-412,-395,-383,-385,-396,-405,-419,-446,-486,-526,
+-557,-584,-615,-650,-684,-712,-741,-777,-822,-866,-902,-928,-951,-977,-1005,-1030,-1051,-1071,-1093,-1117,-1141,
+-1163,-1182,-1199,-1214,-1227,-1239,-1253,-1268,-1283,-1297,-1309,-1317,-1322,-1326,-1329,-1331,-1332,-1330,-1329,-1329,-1332,
+-1335,-1337,-1338,-1338,-1336,-1329,-1319,-1311,-1307,-1305,-1298,-1286,-1271,-1258,-1248,-1239,-1227,-1215,-1204,-1195,-1186,
+-1177,-1167,-1160,-1156,-1152,-1146,-1137,-1126,-1115,-1103,-1092,-1081,-1070,-1058,-1045,-1034,-1023,-1013,-1000,-987,-975,
+-965,-957,-947,-936,-926,-916,-906,-896,-887,-881,-876,-872,-865,-856,-846,-837,-831,-826,-819,-810,-798,
+-788,-782,-775,-767,-757,-747,-740,-733,-722,-708,-693,-678,-663,-647,-634,-625,-621,-617,-610,-601,-594,
+-589,-585,-579,-570,-560,-553,-548,-540,-528,-513,-505,-508,-518,-522,-512,-491,-473,-467,-469,-467,-455,
+-439,-426,-419,-413,-403,-389,-378,-371,-367,-361,-352,-343,-337,-334,-330,-325,-322,-320,-316,-305,-291,
+-280,-273,-268,-262,-254,-248,-246,-243,-239,-231,-224,-214,-202,-188,-178,-172,-168,-160,-148,-133,-115,
+-98,-82,-68,-57,-46,-35,-26,-19,-10,2,21,38,51,60,67,73,78,81,89,101,114,
+125,135,147,162,175,184,191,202,218,237,255,273,294,312,325,332,337,345,353,362,375,
+394,417,434,445,458,479,508,535,555,570,587,609,629,646,663,688,721,754,776,785,789,
+804,839,888,936,974,1003,1037,1080,1129,1177,1221,1262,1299,1324,1338,1350,1377,1422,1475,1521,1558,
+1591,1626,1664,1704,1747,1783,1803,1810,1811,1795,1713,1532,1309,1207,1371,1794,2301,2707,2969,3177,3413,
+3661,3858,4000,4134,4265,4312,4194,3938,3667,3484,3406,3394,3425,3474,3479,3361,3108,2822,2627,2564,2566,
+2553,2504,2455,2432,2424,2412,2400,2399,2401,2387,2350,2304,2267,2236,2200,2152,2102,2064,2039,2016,1983,
+1938,1888,1841,1797,1750,1693,1631,1571,1512,1448,1374,1292,1209,1119,1021,921,836,780,746,714,669,
+619,580,561,563,579,602,628,648,651,631,598,574,569,569,547,491,415,343,279,204,109,
+20,-23,-13,14,9,-53,-158,-277,-399,-519,-627,-699,-723,-716,-717,-757,-837,-931,-1005,-1042,-1049,
+-1040,-1029,-1021,-1019,-1024,-1037,-1057,-1080,-1106,-1132,-1155,-1173,-1183,-1181,-1158,-1109,-1043,-983,-950,-945,-948,
+-942,-921,-891,-856,-815,-770,-727,-692,-662,-632,-598,-561,-522,-482,-443,-410,-388,-373,-360,-347,-333,
+-319,-300,-276,-249,-227,-211,-201,-194,-187,-179,-167,-153,-141,-133,-127,-117,-100,-80,-63,-50,-36,
+-17,7,36,65,91,116,141,166,193,220,246,268,287,306,327,351,376,398,419,442,467,
+492,515,535,554,574,595,618,641,665,689,712,734,757,782,806,828,849,871,894,917,941,
+966,993,1023,1053,1082,1110,1138,1163,1184,1203,1224,1251,1285,1317,1343,1361,1371,1376,1377,1377,1379,
+1386,1396,1407,1415,1420,1423,1427,1432,1438,1445,1452,1458,1464,1471,1478,1486,1494,1504,1516,1528,1540,
+1551,1564,1579,1595,1611,1626,1643,1661,1683,1705,1724,1741,1757,1776,1797,1818,1836,1853,1872,1893,1915,
+1937,1961,1983,2002,2016,2034,2060,2066,2100,2134,2164,2191,2216,2236,2251,2269,2303,2353,2412,2463,2499,
+2517,2517,2499,2470,2445,2437,2446,2463,2481,2496,2508,2514,2513,2512,2515,2518,2516,2509,2508,2519,2532,
+2536,2532,2531,2540,2550,2549,2537,2528,2531,2540,2550,2566,2599,2647,2700,2744,2784,2829,2882,2939,2992,
+3038,3076,3105,3127,3150,3180,3212,3238,3259,3282,3303,3306,3275,3223,3185,3186,3218,3255,3280,3287,3272,
+3221,3132,3030,2954,2927,2941,2967,2987,2999,3001,2996,2995,3015,3057,3099,3110,3088,3056,3037,3026,3004,
+2963,2924,2912,2926,2945,2948,2938,2933,2944,2965,2983,2995,3014,3053,3106,3146,3148,3118,3081,3053,3024,
+2969,2882,2784,2696,2614,2526,2438,2378,2361,2357,2309,2186,2013,1847,1736,1683,1665,1654,1637,1615,1593,
+1570,1540,1497,1451,1418,1404,1386,1328,1219,1089,982,918,878,834,782,739,719,718,721,724,734,
+755,783,811,834,854,870,878,877,870,860,844,811,755,691,654,680,777,910,1027,1092,1110,
+1117,1137,1163,1169,1146,1109,1087,1085,1085,1069,1036,996,955,907,844,774,713,667,632,604,584,
+576,575,566,545,523,514,516,518,512,509,518,537,556,572,586,604,620,630,638,645,650,
+646,633,622,614,603,583,559,542,536,528,514,505,516,540,558,557,548,549,565,585,599,
+615,641,675,705,722,730,739,746,739,713,677,656,662,681,684,653,603,562,543,530,502,
+460,429,424,435,433,402,351,300,262,233,209,186,162,134,100,66,34,6,-20,-49,-77,
+-103,-129,-160,-195,-233,-270,-307,-346,-391,-441,-494,-546,-595,-646,-699,-754,-808,-857,-905,-956,-1012,
+-1069,-1120,-1164,-1204,-1244,-1289,-1341,-1397,-1454,-1511,-1565,-1612,-1648,-1675,-1700,-1734,-1779,-1832,-1887,-1943,-1998,
+-2045,-2083,-2114,-2145,-2183,-2225,-2267,-2307,-2346,-2386,-2423,-2455,-2482,-2509,-2538,-2573,-2612,-2643,-2654,-2643,-2632,
+-2652,-2717,-2808,-2899,-2977,-3047,-3111,-3156,-3178,-3195,-3241,-3324,-3412,-3466,-3479,-3477,-3489,-3519,-3548,-3566,-3580,
+-3601,-3632,-3666,-3701,-3734,-3765,-3792,-3812,-3828,-3844,-3858,-3869,-3876,-3886,-3897,-3906,-3905,-3900,-3899,-3899,-3891,
+-3867,-3841,-3838,-3868,-3915,-3952,-3962,-3952,-3934,-3917,-3905,-3899,-3899,-3899,-3888,-3865,-3840,-3821,-3811,-3804,-3797,
+-3791,-3789,-3789,-3790,-3794,-3803,-3812,-3815,-3815,-3819,-3832,-3846,-3853,-3850,-3846,-3848,-3859,-3873,-3883,-3882,-3869,
+-3854,-3844,-3842,-3842,-3832,-3812,-3786,-3756,-3714,-3655,-3578,-3490,-3396,-3293,-3183,-3071,-2957,-2840,-2722,-2616,-2526,
+-2436,-2327,-2203,-2103,-2057,-2055,-2049,-2010,-1953,-1911,-1896,-1886,-1865,-1840,-1834,-1851,-1877,-1895,-1900,-1891,-1864,
+-1821,-1769,-1725,-1694,-1665,-1628,-1580,-1531,-1490,-1462,-1438,-1413,-1381,-1350,-1328,-1318,-1312,-1297,-1270,-1242,-1223,
+-1210,-1196,-1183,-1179,-1191,-1212,-1225,-1223,-1202,-1163,-1110,-1055,-1014,-995,-990,-989,-990,-996,-997,-977,-927,
+-855,-781,-710,-639,-570,-516,-491,-490,-493,-485,-466,-437,-387,-296,-152,27,207,349,438,486,518,
+551,589,631,678,734,801,871,934,987,1032,1073,1107,1140,1180,1236,1305,1377,1441,1494,1538,1578,
+1619,1667,1728,1800,1873,1935,1987,2037,2092,2155,2223,2290,2350,2402,2449,2500,2561,2635,2717,2795,2864,
+2921,2974,3028,3085,3139,3177,3195,3202,3218,3255,3311,3368,3408,3432,3453,3483,3525,3571,3611,3650,3702,
+3777,3870,3963,4040,4099,4146,4173,4169,4135,4101,4100,4124,4119,4030,3862,3688,3594,3611,3694,3760,3754,
+3679,3586,3531,3532,3569,3613,3652,3691,3729,3752,3750,3742,3763,3817,3872,3892,3881,3876,3906,3962,4020,
+4069,4114,4155,4185,4200,4213,4234,4261,4282,4292,4292,4278,4248,4205,4168,4147,4139,4146,4178,4242,4318,
+4372,4399,4431,4501,4595,4667,4689,4684,4693,4727,4765,4786,4796,4812,4838,4863,4881,4895,4909,4924,4932,
+4931,4923,4912,4907,4912,4926,4942,4954,4963,4968,4968,4958,4940,4921,4903,4882,4856,4835,4827,4824,4814,
+4794,4776,4765,4757,4743,4724,4714,4716,4725,4733,4739,4748,4765,4800,4861,4930,4966,4943,4886,4850,4853,
+4844,4766,4626,4483,4342,4115,3708,3165,2678,2441,2494,2727,2997,3231,3411,3517,3518,3422,3293,3204,3177,
+3169,3137,3074,3007,2958,2920,2872,2804,2721,2637,2555,2474,2393,2314,2240,2171,2101,2029,1961,1902,1854,
+1811,1770,1731,1693,1648,1587,1515,1445,1391,1354,1325,1298,1273,1250,1221,1181,1132,1082,1034,987,940,
+900,870,844,811,772,736,712,697,682,657,622,580,540,507,485,464,432,385,331,283,245,
+211,181,159,145,130,106,75,49,29,11,-9,-30,-43,-50,-63,-83,-103,-115,-120,-122,-118,
+-105,-90,-87,-102,-127,-149,-166,-185,-210,-237,-265,-295,-324,-343,-348,-350,-363,-388,-411,-419,-418,
+-421,-428,-429,-418,-405,-404,-410,-408,-392,-378,-384,-414,-457,-498,-538,-579,-620,-657,-688,-720,-757,
+-801,-842,-875,-902,-928,-958,-990,-1020,-1046,-1068,-1088,-1108,-1128,-1149,-1170,-1191,-1209,-1223,-1234,-1244,-1256,
+-1270,-1286,-1299,-1309,-1315,-1319,-1324,-1329,-1331,-1333,-1335,-1338,-1342,-1345,-1345,-1344,-1344,-1341,-1335,-1326,-1317,
+-1310,-1305,-1299,-1289,-1276,-1265,-1255,-1245,-1235,-1224,-1212,-1201,-1191,-1181,-1172,-1164,-1158,-1152,-1146,-1139,-1129,
+-1117,-1106,-1096,-1089,-1080,-1070,-1058,-1047,-1037,-1026,-1015,-1003,-994,-985,-976,-966,-956,-948,-942,-934,-923,
+-913,-905,-901,-898,-893,-886,-877,-869,-863,-857,-850,-840,-827,-815,-806,-799,-791,-782,-774,-767,-760,
+-751,-739,-725,-709,-691,-672,-654,-641,-634,-631,-629,-624,-619,-614,-610,-604,-596,-586,-577,-569,-562,
+-552,-542,-536,-536,-539,-536,-525,-509,-496,-491,-490,-485,-476,-463,-451,-441,-430,-418,-407,-400,-396,
+-392,-384,-373,-364,-357,-351,-346,-343,-344,-345,-341,-327,-310,-297,-292,-289,-284,-276,-269,-264,-260,
+-255,-250,-244,-235,-222,-207,-196,-191,-186,-175,-159,-142,-127,-114,-102,-91,-81,-70,-58,-46,-35,
+-25,-13,1,15,28,40,54,68,80,88,98,109,119,127,134,143,156,170,180,189,202,
+219,240,260,277,289,296,301,309,321,335,344,351,363,385,410,429,437,443,455,474,493,
+507,522,545,574,604,631,655,681,709,736,755,769,782,804,837,879,920,955,988,1026,1070,
+1118,1164,1204,1242,1277,1304,1323,1340,1369,1413,1464,1508,1537,1556,1579,1614,1663,1713,1749,1763,1761,
+1756,1731,1642,1473,1295,1256,1466,1884,2346,2704,2947,3160,3398,3629,3802,3935,4077,4216,4248,4089,3779,
+3461,3251,3162,3146,3167,3203,3207,3118,2928,2717,2584,2554,2565,2548,2492,2437,2410,2404,2400,2397,2400,
+2399,2379,2336,2286,2247,2214,2176,2129,2083,2048,2023,1996,1960,1917,1875,1834,1792,1741,1682,1622,1563,
+1503,1434,1359,1280,1200,1112,1016,924,852,807,778,747,708,670,646,637,643,655,669,677,673,
+652,618,585,567,567,569,554,514,458,399,337,258,160,69,16,9,18,4,-53,-148,-265,
+-392,-518,-621,-679,-691,-681,-689,-739,-823,-916,-990,-1032,-1045,-1039,-1026,-1019,-1025,-1044,-1068,-1091,-1113,
+-1137,-1162,-1179,-1182,-1172,-1156,-1134,-1099,-1051,-1005,-979,-975,-974,-958,-922,-877,-833,-792,-751,-710,-672,
+-639,-607,-574,-535,-491,-445,-406,-381,-368,-358,-344,-326,-306,-286,-259,-223,-186,-158,-145,-142,-141,
+-134,-124,-112,-103,-96,-90,-82,-69,-51,-31,-12,3,17,33,53,76,98,120,141,164,190,
+218,247,274,296,315,335,359,385,410,432,452,475,501,528,551,569,585,603,625,649,673,
+694,714,736,760,785,811,835,857,879,901,923,946,969,994,1020,1049,1077,1103,1128,1153,1177,
+1198,1216,1235,1260,1293,1329,1360,1382,1393,1398,1399,1399,1399,1401,1404,1409,1415,1421,1424,1427,1432,
+1440,1449,1456,1461,1466,1472,1480,1487,1495,1503,1512,1523,1535,1550,1567,1586,1603,1618,1634,1651,1669,
+1687,1703,1718,1735,1755,1779,1801,1820,1836,1853,1874,1897,1922,1946,1969,1991,2007,2021,2039,2066,2074,
+2107,2141,2174,2204,2231,2254,2274,2295,2327,2372,2424,2470,2496,2496,2471,2433,2403,2393,2403,2421,2435,
+2447,2465,2488,2504,2506,2499,2493,2492,2492,2490,2493,2505,2519,2527,2527,2529,2539,2549,2549,2540,2535,
+2539,2549,2561,2578,2609,2654,2705,2753,2798,2839,2876,2912,2956,3013,3074,3119,3142,3154,3174,3204,3234,
+3252,3263,3270,3265,3240,3205,3185,3195,3228,3259,3272,3264,3239,3191,3119,3040,2982,2962,2975,3005,3038,
+3062,3069,3063,3065,3096,3155,3207,3220,3189,3144,3108,3079,3040,2991,2953,2947,2967,2988,2991,2981,2978,
+2989,3007,3019,3027,3051,3109,3185,3240,3243,3201,3147,3104,3057,2978,2869,2765,2692,2635,2561,2469,2398,
+2379,2384,2344,2217,2032,1862,1759,1723,1718,1710,1693,1671,1650,1627,1596,1554,1509,1472,1444,1407,1338,
+1232,1115,1023,969,936,897,848,805,783,779,782,785,794,815,845,875,901,920,934,940,936,
+928,917,899,863,806,746,720,758,859,987,1090,1142,1154,1159,1175,1198,1206,1191,1165,1144,1136,
+1134,1130,1121,1106,1079,1028,954,871,800,748,713,686,666,655,650,641,626,611,604,602,597,
+590,589,602,625,645,657,668,680,692,700,705,710,711,705,692,680,671,658,639,619,611,
+612,609,595,585,598,630,655,652,629,615,628,663,701,733,760,785,804,809,802,792,784,
+774,756,732,715,710,711,697,663,624,598,591,588,572,547,529,524,517,486,433,375,333,
+309,293,274,248,218,183,148,114,85,58,30,2,-24,-50,-78,-109,-143,-177,-211,-245,-283,
+-327,-375,-425,-476,-528,-580,-634,-687,-737,-784,-832,-885,-941,-995,-1043,-1085,-1126,-1171,-1220,-1275,-1333,
+-1391,-1447,-1497,-1537,-1567,-1591,-1619,-1659,-1712,-1771,-1829,-1884,-1933,-1976,-2011,-2041,-2073,-2110,-2152,-2196,-2239,
+-2279,-2317,-2352,-2385,-2418,-2448,-2478,-2509,-2544,-2578,-2603,-2616,-2630,-2663,-2720,-2785,-2846,-2906,-2977,-3052,-3107,
+-3126,-3134,-3171,-3254,-3348,-3410,-3427,-3426,-3440,-3472,-3503,-3522,-3534,-3552,-3578,-3608,-3639,-3674,-3709,-3737,-3754,
+-3769,-3788,-3810,-3825,-3830,-3834,-3843,-3856,-3863,-3864,-3862,-3854,-3826,-3776,-3728,-3718,-3764,-3842,-3911,-3946,-3948,
+-3934,-3918,-3906,-3901,-3900,-3899,-3886,-3863,-3837,-3816,-3801,-3788,-3780,-3781,-3787,-3792,-3792,-3796,-3809,-3826,-3836,
+-3836,-3840,-3854,-3872,-3880,-3873,-3864,-3866,-3885,-3909,-3926,-3926,-3910,-3891,-3879,-3875,-3869,-3852,-3826,-3800,-3775,
+-3744,-3696,-3634,-3562,-3481,-3386,-3277,-3161,-3044,-2924,-2801,-2686,-2582,-2478,-2357,-2225,-2123,-2083,-2091,-2097,-2066,
+-2011,-1969,-1954,-1948,-1929,-1904,-1890,-1897,-1912,-1926,-1932,-1927,-1903,-1861,-1814,-1779,-1756,-1732,-1691,-1637,-1584,
+-1547,-1527,-1513,-1492,-1457,-1415,-1381,-1364,-1358,-1347,-1326,-1303,-1291,-1289,-1284,-1275,-1271,-1280,-1293,-1297,-1283,
+-1256,-1223,-1186,-1151,-1124,-1113,-1115,-1121,-1125,-1126,-1122,-1103,-1066,-1015,-960,-903,-842,-782,-738,-718,-711,
+-694,-650,-582,-495,-387,-250,-83,91,243,352,417,454,481,513,553,603,660,721,777,826,870,
+916,965,1012,1050,1081,1117,1170,1238,1310,1375,1431,1479,1520,1561,1608,1668,1739,1809,1871,1924,1975,
+2031,2093,2160,2228,2293,2352,2405,2460,2523,2599,2678,2749,2805,2851,2897,2948,3001,3044,3071,3086,3101,
+3131,3179,3237,3292,3334,3361,3379,3404,3442,3491,3540,3588,3642,3715,3803,3890,3961,4020,4070,4105,4106,
+4074,4038,4030,4049,4049,3980,3838,3678,3576,3574,3654,3748,3778,3713,3589,3483,3452,3490,3547,3592,3627,
+3668,3705,3715,3701,3695,3721,3767,3799,3808,3816,3847,3897,3949,3996,4043,4088,4120,4135,4145,4162,4186,
+4207,4218,4219,4209,4184,4147,4112,4088,4077,4082,4112,4170,4235,4281,4306,4341,4415,4512,4588,4617,4621,
+4637,4673,4708,4725,4731,4743,4772,4806,4833,4849,4860,4869,4877,4880,4875,4864,4858,4865,4884,4905,4921,
+4933,4939,4935,4918,4894,4876,4865,4852,4831,4810,4799,4796,4791,4777,4764,4757,4748,4733,4717,4713,4722,
+4734,4737,4735,4738,4755,4794,4855,4919,4946,4918,4864,4836,4838,4812,4705,4538,4378,4228,3990,3571,3031,
+2576,2392,2495,2746,3003,3221,3408,3545,3579,3492,3343,3221,3164,3143,3111,3055,2992,2939,2894,2842,2775,
+2697,2617,2540,2464,2390,2318,2250,2183,2113,2041,1971,1909,1854,1804,1759,1720,1686,1645,1587,1516,1448,
+1397,1360,1328,1298,1272,1250,1224,1185,1136,1086,1038,989,940,899,869,845,815,777,740,712,691,
+669,641,607,567,527,493,470,449,418,372,321,278,246,214,179,148,129,116,96,70,45,
+28,12,-9,-32,-47,-53,-62,-80,-103,-120,-129,-132,-129,-115,-98,-89,-97,-118,-141,-160,-180,
+-205,-233,-261,-290,-317,-338,-350,-358,-369,-387,-405,-417,-427,-440,-449,-449,-442,-442,-455,-469,-461,
+-429,-393,-378,-393,-426,-465,-506,-548,-588,-626,-663,-702,-746,-788,-823,-850,-875,-902,-935,-970,-1006,
+-1038,-1064,-1085,-1101,-1118,-1137,-1157,-1178,-1197,-1213,-1226,-1236,-1248,-1263,-1279,-1293,-1304,-1311,-1318,-1324,-1331,
+-1337,-1343,-1348,-1352,-1354,-1353,-1351,-1349,-1348,-1347,-1343,-1336,-1326,-1315,-1306,-1298,-1290,-1281,-1271,-1261,-1252,
+-1243,-1234,-1222,-1210,-1199,-1189,-1181,-1173,-1165,-1157,-1149,-1140,-1131,-1120,-1111,-1103,-1097,-1090,-1081,-1071,-1061,
+-1052,-1041,-1030,-1019,-1010,-1001,-991,-980,-971,-967,-965,-959,-949,-937,-927,-922,-918,-914,-909,-904,-899,
+-893,-887,-879,-869,-857,-844,-832,-822,-813,-804,-795,-788,-782,-774,-762,-748,-734,-720,-703,-684,-666,
+-654,-650,-650,-650,-648,-643,-637,-630,-620,-608,-596,-588,-582,-578,-575,-572,-569,-564,-555,-542,-531,
+-524,-521,-516,-508,-498,-488,-478,-465,-451,-437,-429,-427,-427,-424,-417,-408,-398,-388,-379,-373,-373,
+-377,-379,-372,-355,-336,-322,-316,-315,-311,-303,-294,-286,-279,-273,-270,-266,-259,-245,-229,-216,-208,
+-199,-185,-166,-148,-135,-125,-115,-103,-92,-80,-69,-58,-46,-35,-22,-8,3,15,27,42,59,
+75,89,101,113,123,131,137,144,156,170,185,198,210,224,242,262,279,286,285,284,290,
+307,325,339,349,363,385,408,424,433,441,451,460,467,475,491,517,550,583,613,640,663,
+681,694,708,727,755,790,826,861,892,924,961,1002,1045,1088,1127,1164,1201,1238,1269,1294,1317,
+1346,1388,1438,1483,1514,1531,1549,1581,1630,1683,1717,1728,1727,1719,1682,1580,1421,1294,1333,1602,2024,
+2445,2760,2987,3206,3440,3640,3767,3853,3955,4059,4071,3916,3635,3347,3143,3026,2964,2942,2960,2984,2954,
+2848,2715,2626,2597,2583,2541,2473,2417,2395,2394,2394,2393,2395,2392,2371,2330,2281,2236,2196,2155,2110,
+2069,2036,2004,1967,1926,1887,1851,1815,1772,1721,1666,1612,1555,1490,1418,1343,1271,1194,1108,1015,931,
+871,834,807,779,753,734,726,724,727,732,736,728,703,666,634,613,604,598,589,576,558,
+528,477,396,292,184,102,64,60,61,38,-18,-105,-217,-348,-482,-590,-650,-665,-668,-693,-754,
+-839,-925,-994,-1036,-1053,-1048,-1032,-1022,-1030,-1052,-1078,-1098,-1114,-1132,-1151,-1158,-1148,-1129,-1114,-1106,-1093,
+-1065,-1030,-1004,-993,-983,-957,-911,-856,-807,-767,-728,-689,-650,-615,-582,-548,-509,-466,-422,-386,-363,
+-349,-333,-309,-280,-251,-226,-199,-167,-136,-115,-106,-102,-95,-81,-68,-60,-58,-54,-45,-30,-11,
+8,27,45,61,73,84,97,114,135,155,173,190,211,237,265,290,312,333,356,383,412,
+438,460,481,503,528,554,578,597,614,633,656,681,704,723,740,760,784,812,839,863,884,
+906,929,952,975,998,1020,1045,1071,1096,1120,1142,1163,1185,1206,1225,1244,1266,1296,1331,1365,1391,
+1405,1410,1413,1415,1416,1414,1411,1411,1415,1420,1424,1426,1430,1438,1446,1453,1458,1463,1471,1480,1489,
+1497,1506,1514,1524,1536,1552,1571,1590,1607,1622,1639,1656,1672,1684,1695,1709,1729,1753,1776,1795,1811,
+1829,1850,1876,1903,1929,1952,1973,1992,2010,2026,2047,2074,2085,2114,2145,2177,2208,2239,2268,2296,2324,
+2356,2393,2436,2475,2497,2489,2451,2402,2368,2364,2382,2401,2407,2411,2426,2453,2477,2482,2473,2464,2463,
+2468,2472,2477,2488,2501,2512,2519,2527,2539,2551,2554,2550,2548,2551,2561,2573,2592,2623,2665,2714,2766,
+2813,2849,2872,2895,2937,3008,3086,3141,3157,3154,3162,3192,3227,3248,3251,3240,3219,3187,3156,3146,3167,
+3206,3238,3243,3225,3191,3148,3099,3052,3018,3007,3018,3048,3087,3117,3124,3112,3112,3150,3219,3278,3288,
+3249,3192,3143,3102,3056,3009,2981,2985,3010,3031,3034,3028,3027,3036,3045,3044,3043,3069,3140,3236,3308,
+3313,3256,3175,3100,3024,2926,2815,2725,2676,2638,2568,2469,2391,2375,2392,2362,2235,2045,1874,1780,1757,
+1760,1755,1737,1714,1692,1665,1632,1594,1556,1521,1482,1426,1341,1232,1125,1049,1009,984,952,909,869,
+846,841,842,846,856,878,908,939,964,981,991,994,992,985,973,951,911,855,806,796,847,
+950,1066,1154,1198,1210,1213,1222,1232,1233,1224,1209,1198,1192,1193,1199,1207,1209,1190,1140,1062,973,
+894,838,799,769,744,727,718,713,708,701,693,686,678,676,684,702,724,741,750,757,765,
+771,773,774,773,770,760,745,730,717,705,690,679,679,687,688,678,669,681,715,745,747,
+722,700,711,754,809,852,877,887,886,873,850,827,816,818,824,825,815,795,768,735,701,
+678,672,676,672,653,626,603,583,556,511,458,415,390,376,359,332,299,263,229,197,168,
+143,117,89,59,30,0,-30,-63,-96,-126,-156,-189,-226,-268,-312,-359,-408,-459,-512,-565,-616,
+-664,-711,-759,-812,-866,-916,-959,-1001,-1046,-1096,-1149,-1205,-1263,-1321,-1374,-1420,-1455,-1484,-1513,-1548,-1595,
+-1653,-1714,-1771,-1820,-1861,-1898,-1932,-1964,-1999,-2038,-2082,-2127,-2171,-2210,-2245,-2280,-2317,-2355,-2391,-2421,-2448,
+-2478,-2514,-2551,-2585,-2620,-2664,-2715,-2762,-2800,-2846,-2912,-2990,-3047,-3065,-3066,-3098,-3180,-3280,-3350,-3375,-3380,
+-3398,-3432,-3463,-3479,-3489,-3504,-3528,-3553,-3580,-3611,-3645,-3671,-3686,-3699,-3719,-3743,-3760,-3765,-3769,-3785,-3810,
+-3829,-3837,-3834,-3815,-3770,-3700,-3634,-3617,-3669,-3768,-3864,-3924,-3944,-3938,-3924,-3910,-3901,-3899,-3896,-3884,-3865,
+-3843,-3822,-3799,-3777,-3765,-3771,-3789,-3802,-3805,-3809,-3823,-3843,-3854,-3853,-3853,-3868,-3890,-3902,-3896,-3884,-3885,
+-3902,-3927,-3943,-3945,-3934,-3922,-3915,-3912,-3899,-3873,-3839,-3810,-3788,-3763,-3727,-3680,-3625,-3559,-3473,-3366,-3251,
+-3134,-3014,-2890,-2768,-2655,-2541,-2411,-2274,-2170,-2132,-2145,-2158,-2131,-2078,-2035,-2021,-2020,-2008,-1985,-1965,-1955,
+-1952,-1952,-1954,-1952,-1935,-1902,-1864,-1838,-1825,-1806,-1768,-1713,-1659,-1621,-1601,-1590,-1574,-1542,-1496,-1453,-1425,
+-1412,-1400,-1380,-1361,-1356,-1364,-1372,-1371,-1366,-1366,-1365,-1352,-1324,-1291,-1266,-1250,-1238,-1228,-1226,-1232,-1240,
+-1242,-1236,-1222,-1198,-1164,-1122,-1076,-1025,-972,-921,-883,-859,-832,-781,-694,-579,-447,-303,-149,4,138,
+238,305,353,394,433,471,514,568,633,699,751,786,815,852,902,953,996,1032,1074,1130,1196,
+1262,1321,1371,1416,1459,1503,1553,1614,1682,1751,1813,1871,1929,1989,2051,2113,2174,2234,2292,2349,2408,
+2474,2548,2622,2686,2735,2774,2813,2856,2900,2935,2960,2983,3014,3060,3114,3168,3216,3255,3283,3302,3323,
+3358,3409,3466,3521,3577,3644,3724,3806,3878,3940,3998,4040,4049,4024,3992,3982,3994,3990,3925,3791,3627,
+3499,3464,3536,3662,3749,3722,3594,3454,3390,3419,3485,3536,3569,3606,3645,3663,3650,3634,3649,3690,3728,
+3747,3761,3792,3838,3888,3933,3978,4021,4050,4063,4072,4091,4121,4144,4153,4148,4136,4117,4091,4062,4037,
+4024,4028,4059,4113,4170,4210,4237,4278,4354,4450,4525,4559,4571,4591,4628,4665,4684,4687,4693,4715,4749,
+4785,4809,4820,4824,4828,4835,4836,4827,4818,4822,4841,4863,4879,4887,4889,4883,4867,4846,4834,4832,4830,
+4816,4796,4780,4773,4767,4758,4749,4742,4734,4721,4711,4712,4723,4731,4729,4721,4722,4739,4779,4839,4896,
+4916,4885,4836,4815,4818,4780,4649,4455,4267,4090,3828,3402,2885,2484,2367,2518,2776,3003,3172,3324,3461,
+3530,3493,3381,3260,3175,3122,3077,3030,2979,2927,2870,2805,2735,2663,2590,2516,2444,2374,2308,2244,2181,
+2115,2048,1981,1919,1861,1808,1759,1719,1684,1643,1586,1516,1451,1404,1371,1339,1305,1273,1247,1218,1180,
+1133,1085,1038,991,944,903,873,848,817,779,743,714,687,659,626,592,556,518,482,456,435,
+405,360,312,274,247,218,180,144,120,106,89,62,38,23,13,-2,-22,-39,-47,-57,-77,
+-103,-125,-137,-141,-139,-128,-111,-98,-101,-117,-138,-158,-180,-207,-239,-270,-299,-324,-344,-359,-372,
+-388,-403,-412,-416,-425,-442,-460,-470,-474,-485,-508,-529,-527,-499,-461,-438,-437,-454,-479,-509,-540,
+-570,-601,-639,-685,-735,-776,-805,-826,-848,-877,-912,-949,-987,-1022,-1052,-1075,-1093,-1111,-1129,-1147,-1164,
+-1181,-1198,-1213,-1227,-1241,-1258,-1275,-1289,-1300,-1309,-1317,-1325,-1332,-1340,-1348,-1354,-1358,-1358,-1356,-1354,-1354,
+-1355,-1354,-1351,-1344,-1333,-1320,-1309,-1302,-1297,-1291,-1282,-1271,-1262,-1254,-1246,-1236,-1224,-1213,-1202,-1194,-1185,
+-1176,-1167,-1157,-1148,-1138,-1129,-1120,-1113,-1107,-1100,-1092,-1083,-1074,-1066,-1056,-1045,-1034,-1023,-1012,-1000,-989,
+-982,-981,-982,-978,-969,-957,-947,-940,-935,-931,-928,-925,-922,-917,-910,-903,-894,-883,-871,-859,-848,
+-837,-826,-816,-808,-802,-793,-779,-765,-753,-745,-736,-720,-700,-682,-673,-673,-676,-676,-671,-663,-654,
+-644,-631,-618,-607,-602,-599,-598,-595,-591,-584,-574,-564,-556,-552,-548,-541,-531,-521,-513,-505,-493,
+-479,-467,-460,-458,-457,-453,-448,-442,-433,-421,-408,-400,-400,-405,-406,-397,-378,-358,-345,-340,-337,
+-333,-325,-316,-306,-297,-290,-287,-284,-277,-263,-246,-230,-219,-207,-193,-176,-161,-150,-140,-128,-113,
+-99,-87,-77,-67,-56,-43,-29,-14,-1,9,20,34,50,68,85,101,116,129,138,145,151,
+161,175,192,208,219,229,242,258,274,281,281,279,285,299,314,327,342,361,381,396,406,
+417,431,444,449,448,452,469,498,530,558,583,609,631,645,654,665,689,724,765,803,835,
+866,901,942,983,1020,1053,1086,1123,1163,1202,1236,1265,1293,1323,1362,1409,1458,1499,1526,1547,1579,
+1626,1674,1705,1716,1717,1707,1652,1526,1368,1294,1421,1761,2197,2578,2845,3051,3273,3509,3689,3773,3798,
+3826,3858,3833,3703,3497,3286,3111,2967,2851,2792,2809,2871,2906,2870,2788,2710,2655,2602,2531,2456,2407,
+2392,2392,2391,2387,2385,2380,2360,2322,2273,2224,2177,2133,2092,2057,2023,1984,1939,1894,1857,1824,1787,
+1743,1694,1648,1600,1544,1473,1396,1323,1256,1184,1100,1013,941,892,860,832,807,793,793,796,793,
+786,784,782,767,733,694,670,663,657,639,615,603,603,589,528,413,274,161,107,107,124,
+123,91,31,-50,-159,-294,-438,-558,-629,-658,-678,-717,-785,-866,-942,-1003,-1044,-1065,-1063,-1048,-1033,
+-1032,-1046,-1064,-1077,-1085,-1094,-1103,-1103,-1091,-1076,-1071,-1076,-1075,-1053,-1017,-986,-969,-958,-936,-895,-843,
+-790,-740,-695,-653,-615,-583,-553,-521,-486,-448,-408,-371,-341,-316,-291,-259,-222,-188,-161,-140,-123,
+-109,-98,-88,-71,-45,-18,-3,-5,-14,-16,-2,20,44,62,77,92,105,114,120,129,147,
+171,193,210,222,237,259,284,308,330,353,379,407,435,460,483,505,528,551,575,599,623,
+645,666,689,712,735,753,770,789,812,839,866,888,908,928,950,973,996,1018,1039,1062,1087,
+1112,1136,1157,1178,1199,1221,1243,1262,1282,1304,1333,1363,1388,1404,1413,1418,1423,1426,1424,1420,1417,
+1419,1423,1427,1429,1431,1436,1443,1449,1455,1462,1471,1481,1492,1502,1513,1523,1532,1542,1556,1572,1589,
+1604,1620,1638,1656,1670,1680,1690,1707,1729,1751,1768,1782,1798,1822,1851,1881,1909,1935,1958,1980,1999,
+2017,2037,2059,2085,2096,2122,2150,2180,2211,2243,2275,2311,2348,2385,2419,2451,2478,2489,2475,2434,2384,
+2351,2347,2364,2380,2386,2390,2407,2435,2459,2466,2458,2450,2449,2454,2460,2465,2474,2487,2501,2515,2529,
+2545,2558,2564,2564,2563,2565,2572,2584,2605,2634,2673,2721,2774,2823,2857,2873,2889,2934,3014,3103,3159,
+3166,3147,3142,3165,3201,3225,3227,3211,3182,3146,3117,3112,3138,3180,3212,3215,3192,3154,3114,3081,3057,
+3042,3034,3040,3067,3108,3145,3154,3141,3138,3176,3247,3306,3312,3268,3204,3148,3101,3057,3019,3003,3016,
+3042,3061,3065,3064,3068,3075,3075,3061,3051,3077,3159,3274,3367,3383,3315,3199,3075,2957,2841,2738,2673,
+2646,2621,2557,2462,2392,2382,2399,2363,2232,2043,1879,1795,1778,1786,1784,1769,1749,1724,1693,1658,1626,
+1599,1570,1524,1449,1346,1232,1135,1074,1046,1029,1003,967,934,913,906,904,907,918,940,971,1000,
+1022,1035,1043,1048,1049,1045,1031,1004,961,911,879,889,952,1053,1155,1227,1264,1277,1282,1283,1279,
+1268,1259,1257,1261,1268,1275,1285,1296,1298,1280,1232,1158,1072,991,927,880,844,815,794,784,783,
+786,784,777,770,770,780,798,817,831,839,843,848,852,853,851,845,840,831,816,796,776,
+761,752,744,740,744,755,762,760,758,769,800,834,848,835,815,817,852,903,945,963,958,
+939,915,889,869,867,885,912,928,918,883,833,788,761,756,763,765,748,713,672,637,607,
+573,533,496,471,456,439,413,378,341,308,278,250,226,202,177,149,117,84,50,14,-19,
+-50,-79,-108,-140,-176,-213,-253,-296,-341,-389,-439,-491,-543,-593,-640,-688,-738,-788,-833,-875,-918,
+-967,-1022,-1079,-1135,-1190,-1245,-1294,-1335,-1369,-1401,-1438,-1483,-1538,-1599,-1658,-1709,-1749,-1782,-1814,-1849,-1887,
+-1928,-1971,-2016,-2062,-2104,-2141,-2174,-2208,-2247,-2290,-2329,-2361,-2387,-2415,-2451,-2492,-2535,-2581,-2632,-2684,-2724,
+-2754,-2790,-2849,-2923,-2980,-2998,-2997,-3024,-3102,-3204,-3283,-3320,-3333,-3352,-3384,-3411,-3425,-3434,-3449,-3471,-3493,
+-3513,-3536,-3563,-3586,-3600,-3612,-3632,-3658,-3677,-3689,-3703,-3730,-3766,-3795,-3807,-3801,-3777,-3726,-3651,-3581,-3561,
+-3613,-3715,-3820,-3893,-3926,-3928,-3915,-3900,-3892,-3891,-3891,-3882,-3865,-3846,-3825,-3800,-3772,-3758,-3769,-3794,-3814,
+-3820,-3825,-3841,-3861,-3870,-3863,-3858,-3870,-3894,-3911,-3910,-3901,-3900,-3911,-3927,-3939,-3943,-3943,-3944,-3947,-3945,
+-3930,-3898,-3860,-3827,-3803,-3778,-3747,-3711,-3671,-3619,-3546,-3449,-3340,-3228,-3111,-2986,-2859,-2740,-2623,-2493,-2357,
+-2251,-2210,-2220,-2232,-2209,-2160,-2121,-2110,-2111,-2103,-2082,-2057,-2036,-2014,-1995,-1985,-1981,-1972,-1948,-1917,-1897,
+-1890,-1881,-1855,-1810,-1759,-1714,-1682,-1661,-1643,-1616,-1575,-1528,-1489,-1466,-1449,-1433,-1422,-1425,-1441,-1457,-1461,
+-1455,-1446,-1432,-1408,-1374,-1344,-1329,-1328,-1329,-1326,-1325,-1329,-1336,-1337,-1328,-1309,-1280,-1242,-1196,-1144,-1088,
+-1035,-988,-950,-912,-856,-768,-649,-510,-364,-217,-76,44,133,190,234,282,338,391,434,473,523,
+588,658,715,752,781,815,860,907,950,992,1041,1100,1164,1222,1270,1312,1353,1397,1444,1499,1562,
+1631,1700,1768,1834,1901,1968,2029,2084,2132,2179,2229,2285,2346,2411,2478,2546,2608,2660,2700,2734,2769,
+2805,2839,2870,2905,2950,3005,3062,3110,3149,3182,3208,3230,3252,3288,3340,3399,3454,3503,3558,3627,3704,
+3782,3856,3922,3971,3987,3970,3944,3935,3941,3927,3856,3718,3541,3387,3322,3382,3530,3662,3680,3570,3421,
+3339,3357,3424,3479,3509,3536,3569,3586,3580,3572,3593,3637,3676,3692,3703,3731,3779,3831,3875,3916,3952,
+3976,3987,3996,4021,4056,4083,4088,4074,4054,4037,4021,4003,3985,3975,3983,4014,4065,4117,4157,4189,4237,
+4315,4408,4487,4531,4550,4566,4592,4622,4643,4652,4656,4669,4697,4734,4765,4778,4778,4781,4791,4800,4795,
+4782,4782,4800,4823,4836,4836,4831,4826,4817,4806,4800,4802,4804,4797,4779,4761,4749,4743,4736,4729,4723,
+4716,4707,4703,4707,4715,4716,4708,4698,4698,4718,4760,4820,4872,4883,4845,4798,4784,4789,4744,4596,4376,
+4155,3937,3642,3212,2735,2406,2361,2555,2813,2999,3104,3194,3302,3395,3426,3385,3297,3194,3102,3035,2993,
+2961,2916,2851,2774,2700,2633,2566,2494,2422,2354,2290,2229,2169,2109,2049,1988,1928,1871,1817,1767,1723,
+1682,1637,1579,1511,1450,1407,1379,1351,1314,1274,1238,1205,1168,1125,1079,1035,991,947,909,878,849,
+815,777,743,714,685,651,615,581,547,509,472,443,420,391,348,302,267,244,219,182,144,
+118,103,85,59,32,17,9,0,-14,-29,-41,-55,-78,-107,-130,-143,-147,-146,-138,-124,-113,
+-113,-124,-141,-159,-181,-208,-241,-274,-304,-329,-347,-363,-380,-399,-415,-421,-419,-423,-440,-464,-483,
+-494,-507,-529,-553,-563,-555,-538,-523,-517,-521,-534,-551,-569,-584,-600,-628,-672,-721,-761,-785,-801,
+-823,-853,-890,-930,-969,-1005,-1036,-1060,-1080,-1101,-1121,-1139,-1154,-1170,-1186,-1202,-1218,-1233,-1250,-1267,-1282,
+-1294,-1305,-1314,-1322,-1328,-1334,-1342,-1350,-1355,-1355,-1355,-1356,-1358,-1359,-1358,-1353,-1345,-1334,-1321,-1311,-1306,
+-1304,-1300,-1292,-1281,-1271,-1264,-1258,-1251,-1242,-1231,-1219,-1207,-1197,-1188,-1180,-1171,-1161,-1151,-1141,-1132,-1124,
+-1117,-1110,-1102,-1094,-1085,-1075,-1066,-1056,-1045,-1033,-1021,-1008,-997,-991,-990,-992,-989,-982,-971,-962,-955,
+-949,-945,-942,-940,-937,-933,-927,-919,-911,-902,-892,-882,-872,-861,-849,-837,-829,-822,-814,-800,-783,
+-771,-767,-765,-756,-737,-716,-702,-700,-703,-703,-697,-687,-678,-668,-656,-642,-631,-624,-619,-614,-608,
+-604,-600,-594,-587,-580,-575,-570,-563,-552,-543,-536,-530,-522,-513,-503,-497,-491,-485,-478,-472,-467,
+-460,-447,-432,-422,-421,-424,-422,-411,-393,-376,-365,-360,-356,-349,-341,-331,-321,-312,-304,-300,-296,
+-288,-275,-258,-242,-229,-217,-205,-193,-182,-173,-162,-148,-133,-117,-104,-92,-81,-68,-53,-38,-23,
+-10,2,15,30,47,65,84,103,120,135,147,155,161,167,178,193,209,221,229,237,248,
+260,269,274,279,285,291,295,303,320,345,365,373,375,385,404,420,423,419,424,447,479,
+508,531,552,576,601,620,635,652,678,712,748,782,815,851,894,939,979,1011,1037,1068,1106,
+1147,1184,1216,1247,1279,1311,1347,1391,1443,1493,1531,1560,1594,1640,1684,1711,1720,1721,1700,1617,1463,
+1308,1291,1508,1918,2363,2702,2917,3100,3323,3565,3742,3804,3785,3740,3688,3609,3493,3362,3236,3106,2958,
+2816,2742,2766,2851,2916,2911,2849,2769,2692,2610,2524,2451,2409,2396,2392,2387,2381,2378,2370,2347,2306,
+2256,2205,2156,2111,2072,2039,2004,1961,1913,1868,1830,1796,1755,1709,1665,1627,1587,1531,1458,1377,1304,
+1237,1167,1089,1014,958,921,890,856,830,824,836,844,834,815,803,800,788,757,720,699,695,
+686,658,627,618,624,603,515,365,211,120,111,152,185,175,126,56,-26,-133,-269,-417,-543,
+-626,-670,-703,-750,-813,-881,-942,-992,-1030,-1056,-1062,-1051,-1033,-1022,-1023,-1030,-1038,-1042,-1045,-1046,-1042,
+-1032,-1024,-1022,-1023,-1013,-984,-946,-917,-907,-910,-907,-884,-841,-783,-717,-655,-606,-573,-550,-528,-501,
+-471,-437,-399,-357,-314,-276,-244,-211,-175,-137,-104,-83,-75,-74,-70,-52,-15,32,71,82,66,
+41,31,43,68,90,102,109,119,130,139,144,152,171,197,223,240,253,267,288,313,337,
+359,383,410,437,462,485,508,532,554,576,598,624,651,677,700,720,741,763,784,802,820,
+842,867,892,913,932,949,969,990,1011,1032,1053,1076,1101,1127,1153,1176,1198,1221,1246,1270,1293,
+1311,1327,1346,1369,1391,1408,1418,1424,1427,1428,1426,1423,1420,1421,1425,1429,1433,1436,1440,1446,1453,
+1461,1469,1478,1487,1497,1508,1520,1530,1537,1544,1554,1568,1583,1597,1612,1630,1649,1665,1678,1693,1713,
+1735,1752,1764,1776,1797,1826,1857,1885,1912,1939,1968,1994,2014,2032,2051,2073,2096,2106,2129,2156,2186,
+2217,2248,2281,2320,2364,2408,2442,2463,2469,2459,2431,2393,2357,2336,2336,2349,2363,2374,2386,2406,2429,
+2448,2453,2450,2445,2445,2449,2454,2460,2469,2482,2498,2516,2535,2553,2566,2573,2574,2575,2577,2584,2599,
+2619,2645,2678,2721,2774,2826,2861,2875,2890,2937,3021,3114,3171,3174,3145,3124,3133,3162,3190,3202,3198,
+3180,3154,3131,3126,3144,3174,3196,3195,3173,3139,3106,3082,3067,3054,3041,3036,3055,3098,3144,3166,3161,
+3159,3192,3252,3299,3297,3248,3183,3128,3087,3053,3030,3026,3042,3064,3078,3082,3086,3097,3105,3100,3078,
+3064,3091,3183,3318,3436,3474,3408,3267,3097,2935,2797,2699,2649,2633,2613,2559,2485,2433,2423,2418,2355,
+2211,2030,1882,1807,1791,1797,1799,1793,1778,1754,1721,1688,1664,1648,1624,1571,1479,1361,1244,1156,1108,
+1087,1073,1052,1026,1004,988,977,968,967,977,1000,1028,1054,1073,1085,1094,1100,1103,1099,1084,1053,
+1012,976,966,998,1072,1165,1247,1300,1325,1337,1345,1346,1336,1319,1310,1317,1335,1352,1362,1367,1367,
+1360,1338,1296,1234,1158,1080,1010,955,916,887,866,856,856,860,861,859,860,872,895,918,931,
+935,934,934,936,937,934,927,918,908,893,875,852,831,817,812,811,813,816,824,835,844,
+852,864,889,923,951,956,940,926,935,967,1000,1013,1001,976,953,939,935,944,964,988,997,
+977,931,875,832,814,816,823,816,785,739,693,658,631,603,575,551,534,518,492,457,421,
+390,363,335,307,280,257,232,203,170,134,98,62,29,0,-31,-62,-95,-127,-160,-195,-234,
+-276,-319,-364,-415,-470,-523,-571,-616,-662,-708,-752,-795,-842,-896,-954,-1011,-1065,-1116,-1165,-1209,-1247,
+-1282,-1321,-1368,-1424,-1484,-1544,-1598,-1640,-1672,-1700,-1732,-1771,-1816,-1863,-1910,-1956,-2000,-2039,-2073,-2104,-2137,
+-2174,-2216,-2257,-2292,-2322,-2353,-2387,-2424,-2464,-2510,-2563,-2617,-2661,-2692,-2726,-2781,-2852,-2912,-2937,-2939,-2959,
+-3024,-3121,-3207,-3256,-3279,-3300,-3330,-3358,-3375,-3386,-3401,-3418,-3431,-3441,-3454,-3475,-3495,-3509,-3522,-3542,-3571,
+-3598,-3621,-3646,-3681,-3721,-3752,-3765,-3759,-3735,-3687,-3619,-3558,-3542,-3590,-3682,-3779,-3849,-3886,-3894,-3887,-3876,
+-3873,-3878,-3882,-3876,-3860,-3844,-3827,-3806,-3781,-3768,-3779,-3804,-3823,-3828,-3834,-3852,-3874,-3883,-3874,-3864,-3871,
+-3891,-3906,-3909,-3905,-3905,-3913,-3921,-3929,-3936,-3945,-3956,-3964,-3965,-3953,-3927,-3892,-3858,-3827,-3796,-3762,-3729,
+-3699,-3662,-3605,-3526,-3434,-3334,-3222,-3095,-2962,-2838,-2720,-2596,-2469,-2369,-2324,-2324,-2323,-2292,-2244,-2211,-2204,
+-2205,-2193,-2167,-2142,-2118,-2087,-2050,-2023,-2012,-2007,-1992,-1968,-1948,-1943,-1943,-1933,-1905,-1862,-1813,-1766,-1726,
+-1698,-1671,-1638,-1595,-1554,-1525,-1508,-1498,-1496,-1505,-1522,-1536,-1538,-1528,-1514,-1498,-1478,-1454,-1436,-1432,-1436,
+-1439,-1434,-1426,-1423,-1424,-1422,-1411,-1388,-1353,-1306,-1248,-1184,-1122,-1068,-1023,-978,-920,-833,-717,-580,-440,
+-305,-179,-67,23,85,128,173,233,301,361,402,434,474,533,601,665,716,759,799,838,877,
+915,959,1013,1072,1129,1178,1219,1258,1300,1347,1399,1458,1523,1592,1664,1736,1808,1879,1945,2002,2049,
+2088,2128,2176,2232,2293,2352,2409,2466,2527,2584,2630,2663,2693,2726,2764,2803,2845,2895,2955,3015,3064,
+3098,3123,3144,3165,3190,3228,3280,3339,3391,3432,3474,3529,3601,3680,3761,3836,3891,3912,3901,3879,3868,
+3865,3840,3761,3619,3440,3280,3206,3256,3402,3545,3585,3500,3367,3287,3297,3354,3404,3432,3457,3486,3505,
+3510,3522,3560,3612,3644,3648,3647,3671,3720,3773,3815,3851,3885,3911,3924,3935,3957,3990,4014,4016,3998,
+3974,3956,3945,3936,3929,3929,3942,3974,4020,4069,4110,4148,4196,4271,4366,4461,4532,4566,4570,4565,4569,
+4585,4606,4621,4633,4654,4688,4721,4735,4733,4735,4749,4762,4758,4742,4740,4761,4791,4803,4794,4778,4771,
+4770,4766,4760,4758,4761,4760,4750,4737,4727,4721,4717,4711,4703,4695,4690,4689,4694,4697,4694,4683,4673,
+4675,4698,4746,4808,4853,4852,4806,4761,4753,4759,4701,4535,4292,4038,3779,3449,3021,2595,2347,2375,2603,
+2857,3010,3066,3101,3169,3263,3339,3359,3309,3201,3078,2987,2947,2929,2895,2828,2748,2676,2612,2545,2470,
+2397,2332,2272,2213,2156,2102,2047,1990,1930,1874,1821,1770,1722,1676,1628,1570,1505,1446,1405,1381,1355,
+1317,1269,1226,1189,1153,1113,1071,1030,988,948,911,879,847,810,771,736,707,678,644,607,571,
+536,497,459,428,403,375,335,293,261,241,219,185,147,119,103,86,61,33,12,2,-5,
+-17,-30,-43,-60,-84,-112,-134,-147,-152,-150,-144,-135,-128,-129,-137,-149,-164,-182,-205,-234,-266,
+-298,-327,-348,-365,-382,-402,-421,-429,-428,-431,-447,-471,-489,-497,-503,-516,-538,-559,-574,-581,-583,
+-584,-586,-595,-609,-622,-626,-627,-640,-671,-712,-746,-766,-778,-796,-825,-863,-907,-951,-990,-1020,-1043,
+-1064,-1087,-1109,-1128,-1145,-1163,-1181,-1198,-1213,-1226,-1242,-1259,-1275,-1289,-1301,-1311,-1319,-1324,-1329,-1335,-1344,
+-1350,-1352,-1353,-1356,-1359,-1359,-1356,-1350,-1343,-1334,-1323,-1314,-1309,-1307,-1304,-1297,-1287,-1279,-1273,-1269,-1264,
+-1257,-1247,-1234,-1220,-1207,-1197,-1190,-1182,-1172,-1161,-1150,-1140,-1131,-1122,-1115,-1109,-1100,-1090,-1079,-1068,-1060,
+-1051,-1041,-1030,-1018,-1008,-1001,-997,-996,-994,-989,-980,-972,-966,-961,-957,-953,-950,-947,-943,-938,-932,
+-924,-915,-905,-897,-890,-881,-869,-857,-848,-843,-837,-824,-807,-794,-790,-790,-785,-769,-748,-734,-731,
+-733,-731,-722,-710,-700,-691,-679,-667,-656,-650,-643,-634,-625,-619,-617,-615,-610,-602,-594,-588,-582,
+-573,-565,-558,-554,-549,-544,-538,-532,-524,-513,-501,-493,-487,-481,-471,-457,-447,-444,-443,-437,-424,
+-409,-396,-388,-382,-375,-367,-358,-349,-339,-329,-320,-313,-307,-299,-288,-274,-260,-247,-235,-225,-216,
+-207,-196,-184,-171,-157,-144,-130,-115,-99,-81,-64,-48,-34,-22,-9,6,24,43,62,82,103,
+121,136,147,155,161,166,172,182,196,210,219,226,231,239,247,259,271,279,278,273,276,
+296,325,346,350,348,357,377,395,399,398,408,436,471,500,521,542,565,589,611,632,657,
+685,713,742,771,804,844,890,938,981,1015,1046,1080,1118,1155,1184,1209,1238,1273,1310,1346,1388,
+1439,1491,1531,1564,1601,1649,1692,1715,1721,1714,1676,1567,1394,1257,1304,1605,2070,2516,2817,2995,3161,
+3381,3615,3776,3821,3775,3682,3563,3432,3317,3242,3190,3112,2981,2836,2751,2761,2827,2877,2874,2827,2761,
+2685,2599,2513,2448,2414,2399,2389,2380,2375,2372,2360,2329,2282,2230,2180,2132,2086,2045,2009,1972,1930,
+1885,1844,1807,1769,1725,1678,1638,1606,1572,1521,1450,1370,1296,1227,1157,1086,1026,984,955,920,878,
+848,846,864,874,857,827,808,805,798,771,732,703,689,675,652,631,625,616,563,438,275,
+144,103,145,209,231,193,116,31,-55,-157,-284,-423,-545,-631,-686,-729,-775,-826,-874,-916,-951,
+-984,-1011,-1026,-1023,-1007,-989,-980,-983,-992,-1000,-1003,-1000,-995,-988,-980,-968,-947,-915,-877,-846,-833,
+-841,-861,-877,-874,-841,-780,-700,-623,-568,-539,-525,-509,-485,-458,-427,-389,-342,-289,-242,-206,-176,
+-141,-97,-54,-23,-12,-13,-9,16,67,128,171,178,151,114,94,99,117,130,132,131,136,
+148,160,169,177,193,216,240,259,275,294,318,345,370,393,418,445,470,492,513,536,561,
+584,606,627,653,681,707,729,747,766,789,811,831,848,868,891,915,937,955,972,991,1011,
+1033,1053,1074,1096,1121,1146,1172,1196,1220,1244,1270,1296,1320,1338,1352,1366,1383,1404,1422,1432,1434,
+1431,1427,1425,1423,1421,1422,1427,1434,1441,1447,1453,1459,1466,1474,1482,1489,1495,1502,1511,1522,1530,
+1535,1539,1548,1562,1577,1591,1605,1622,1640,1658,1676,1696,1720,1741,1757,1769,1787,1813,1842,1867,1887,
+1910,1942,1978,2009,2031,2048,2065,2085,2106,2115,2136,2161,2191,2224,2257,2293,2335,2383,2428,2458,2465,
+2446,2408,2366,2335,2323,2327,2337,2347,2357,2372,2390,2409,2422,2429,2433,2436,2439,2442,2445,2451,2461,
+2473,2487,2503,2522,2542,2559,2570,2575,2577,2581,2587,2599,2616,2635,2656,2681,2718,2770,2822,2859,2874,
+2888,2933,3016,3109,3171,3180,3151,3120,3111,3128,3156,3183,3201,3206,3199,3188,3183,3189,3198,3201,3194,
+3177,3155,3133,3115,3098,3077,3050,3029,3035,3076,3133,3173,3184,3187,3208,3246,3271,3254,3201,3140,3096,
+3072,3060,3055,3061,3075,3088,3094,3095,3102,3116,3127,3121,3099,3086,3120,3221,3371,3511,3575,3531,3392,
+3204,3014,2858,2753,2700,2675,2647,2601,2548,2512,2489,2444,2342,2186,2021,1896,1829,1807,1805,1810,1812,
+1806,1787,1759,1735,1723,1714,1688,1624,1517,1388,1272,1193,1154,1136,1120,1101,1085,1074,1063,1047,1032,
+1027,1037,1057,1080,1101,1118,1131,1140,1146,1149,1144,1128,1098,1066,1049,1063,1116,1197,1280,1342,1373,
+1383,1390,1401,1409,1404,1390,1383,1392,1411,1426,1430,1424,1413,1398,1375,1340,1291,1227,1154,1085,1030,
+993,968,948,936,933,937,941,945,955,977,1006,1027,1035,1033,1031,1030,1029,1023,1015,1005,992,
+977,958,939,919,901,888,885,891,897,898,901,913,933,953,966,981,1009,1043,1059,1045,1012,
+994,1006,1035,1051,1042,1020,1006,1007,1017,1026,1031,1029,1015,984,939,894,863,849,846,840,821,
+787,749,717,694,674,653,631,611,593,571,539,503,473,449,425,395,361,329,304,280,251,
+216,179,145,113,84,53,20,-13,-45,-74,-103,-136,-173,-212,-250,-291,-340,-395,-450,-498,-540,
+-583,-627,-673,-720,-772,-829,-889,-944,-994,-1040,-1083,-1123,-1160,-1201,-1249,-1306,-1367,-1427,-1482,-1528,-1564,
+-1592,-1620,-1656,-1701,-1752,-1802,-1849,-1894,-1935,-1972,-2004,-2034,-2065,-2100,-2138,-2177,-2217,-2255,-2290,-2322,-2351,
+-2380,-2417,-2464,-2518,-2568,-2607,-2647,-2703,-2779,-2849,-2887,-2895,-2905,-2952,-3034,-3121,-3180,-3214,-3240,-3275,-3311,
+-3339,-3356,-3365,-3369,-3369,-3370,-3381,-3401,-3422,-3437,-3448,-3468,-3500,-3536,-3568,-3599,-3634,-3672,-3703,-3720,-3721,
+-3701,-3657,-3597,-3547,-3540,-3585,-3663,-3742,-3800,-3836,-3852,-3856,-3855,-3858,-3866,-3872,-3866,-3853,-3841,-3833,-3820,
+-3802,-3792,-3799,-3817,-3828,-3829,-3834,-3854,-3879,-3892,-3887,-3878,-3881,-3891,-3898,-3898,-3899,-3905,-3914,-3921,-3926,
+-3936,-3948,-3960,-3967,-3969,-3964,-3950,-3925,-3895,-3861,-3824,-3786,-3751,-3723,-3694,-3653,-3595,-3526,-3446,-3347,-3224,
+-3086,-2952,-2828,-2707,-2595,-2512,-2474,-2463,-2439,-2382,-2318,-2282,-2278,-2277,-2256,-2222,-2194,-2172,-2142,-2098,-2058,
+-2039,-2036,-2030,-2013,-1995,-1989,-1992,-1992,-1979,-1950,-1908,-1856,-1803,-1759,-1727,-1698,-1666,-1632,-1604,-1589,-1584,
+-1586,-1591,-1597,-1598,-1591,-1577,-1564,-1557,-1552,-1548,-1547,-1551,-1557,-1558,-1550,-1537,-1527,-1520,-1509,-1491,-1460,
+-1416,-1359,-1292,-1222,-1158,-1106,-1059,-1002,-921,-808,-673,-535,-407,-293,-193,-105,-34,21,72,131,202,
+274,333,373,403,438,484,540,601,663,721,772,811,846,884,933,990,1047,1096,1138,1177,1219,
+1265,1317,1375,1437,1502,1570,1641,1716,1789,1857,1913,1959,1998,2037,2083,2138,2201,2263,2314,2356,2400,
+2455,2514,2564,2600,2630,2666,2708,2749,2789,2836,2898,2965,3021,3055,3074,3087,3103,3127,3164,3217,3278,
+3334,3376,3414,3460,3521,3594,3672,3748,3805,3830,3822,3800,3784,3775,3743,3659,3516,3342,3195,3130,3176,
+3298,3417,3454,3394,3297,3238,3241,3278,3315,3346,3381,3419,3447,3465,3496,3550,3604,3626,3612,3599,3618,
+3667,3718,3755,3786,3822,3858,3883,3896,3909,3927,3943,3944,3929,3908,3889,3875,3867,3867,3876,3896,3929,
+3972,4021,4067,4106,4148,4211,4308,4429,4539,4599,4595,4551,4515,4516,4546,4579,4600,4619,4649,4681,4697,
+4696,4698,4712,4725,4717,4697,4694,4722,4760,4776,4760,4735,4721,4718,4715,4706,4702,4705,4712,4713,4707,
+4702,4699,4696,4689,4680,4672,4668,4668,4671,4672,4668,4661,4656,4663,4691,4744,4803,4836,4820,4770,4733,
+4732,4727,4643,4449,4186,3911,3620,3264,2845,2478,2315,2409,2660,2901,3034,3071,3081,3117,3186,3263,3307,
+3279,3177,3044,2943,2902,2889,2859,2796,2721,2655,2592,2520,2439,2366,2307,2255,2202,2147,2095,2042,1985,
+1924,1867,1815,1765,1715,1667,1620,1566,1504,1445,1403,1379,1355,1316,1264,1214,1175,1140,1103,1063,1023,
+984,946,909,874,841,804,764,726,695,665,631,594,558,522,485,448,416,388,358,322,285,
+258,240,219,187,150,121,105,91,69,40,16,0,-11,-24,-38,-53,-71,-93,-116,-136,-150,
+-156,-156,-151,-145,-141,-143,-149,-156,-165,-179,-199,-222,-251,-285,-321,-351,-373,-390,-409,-428,-440,
+-445,-450,-463,-482,-496,-501,-501,-507,-523,-545,-569,-589,-604,-612,-618,-630,-649,-666,-671,-668,-671,
+-689,-716,-740,-753,-761,-774,-797,-834,-881,-930,-974,-1005,-1027,-1047,-1069,-1091,-1110,-1129,-1151,-1175,-1196,
+-1210,-1223,-1239,-1257,-1274,-1287,-1300,-1312,-1321,-1326,-1329,-1335,-1342,-1348,-1351,-1352,-1354,-1355,-1355,-1352,-1349,
+-1346,-1339,-1330,-1320,-1313,-1309,-1306,-1300,-1293,-1286,-1280,-1273,-1267,-1262,-1255,-1243,-1227,-1212,-1202,-1196,-1189,
+-1179,-1166,-1154,-1143,-1132,-1122,-1114,-1108,-1100,-1090,-1078,-1068,-1061,-1054,-1047,-1038,-1029,-1020,-1011,-1004,-1000,
+-997,-994,-988,-982,-977,-973,-970,-965,-959,-954,-950,-946,-941,-934,-925,-915,-907,-901,-893,-884,-873,
+-865,-861,-857,-848,-834,-820,-814,-813,-808,-794,-775,-762,-759,-760,-756,-745,-733,-722,-713,-701,-688,
+-678,-674,-669,-661,-650,-642,-639,-638,-632,-622,-613,-606,-601,-594,-586,-580,-575,-571,-567,-562,-557,
+-550,-539,-527,-516,-510,-505,-497,-487,-478,-473,-467,-458,-444,-430,-419,-412,-404,-395,-386,-378,-370,
+-360,-349,-338,-330,-322,-315,-307,-297,-286,-272,-259,-248,-239,-228,-215,-200,-188,-177,-166,-152,-136,
+-117,-97,-76,-58,-45,-33,-20,-3,15,34,53,74,95,113,126,135,142,149,153,156,163,
+175,189,199,204,207,211,220,235,251,261,260,254,260,282,312,331,334,333,343,365,383,
+391,398,417,449,483,510,532,553,574,592,608,629,656,687,715,741,770,803,841,883,929,
+977,1023,1065,1104,1140,1168,1188,1206,1233,1271,1312,1352,1395,1444,1492,1529,1558,1595,1643,1685,1706,
+1706,1689,1633,1506,1335,1236,1352,1721,2222,2664,2948,3120,3288,3493,3683,3790,3795,3726,3608,3454,3296,
+3188,3158,3164,3127,3007,2850,2734,2698,2717,2740,2743,2729,2697,2641,2563,2488,2439,2420,2410,2395,2378,
+2366,2357,2338,2300,2250,2199,2151,2103,2054,2007,1967,1930,1895,1859,1823,1787,1748,1703,1657,1619,1587,
+1553,1508,1446,1374,1302,1232,1163,1099,1048,1014,985,946,900,868,867,887,897,877,841,817,811,
+803,773,725,681,655,644,640,640,634,595,494,341,191,114,134,209,265,251,171,64,-36,
+-126,-222,-331,-447,-552,-633,-694,-742,-783,-820,-850,-874,-897,-921,-946,-964,-968,-957,-939,-928,-933,
+-949,-964,-970,-969,-965,-961,-951,-926,-883,-835,-795,-776,-779,-797,-820,-840,-846,-824,-770,-692,-613,
+-555,-523,-505,-485,-458,-430,-401,-365,-318,-264,-214,-176,-144,-107,-60,-10,26,41,44,51,80,
+134,195,238,245,220,185,163,161,170,174,169,161,163,174,188,200,208,220,237,256,274,
+293,316,343,372,399,423,447,472,496,519,541,565,591,616,638,660,684,710,734,754,772,
+792,815,838,856,872,890,913,938,961,981,999,1020,1043,1066,1088,1109,1131,1153,1175,1197,1219,
+1241,1263,1286,1309,1332,1350,1364,1377,1394,1415,1435,1446,1445,1438,1432,1430,1431,1432,1434,1439,1448,
+1457,1464,1469,1472,1477,1483,1489,1493,1497,1502,1510,1519,1526,1530,1536,1547,1563,1579,1593,1605,1619,
+1635,1654,1676,1699,1724,1746,1764,1782,1804,1831,1854,1871,1886,1909,1944,1983,2016,2038,2056,2075,2095,
+2115,2124,2144,2167,2195,2228,2267,2312,2361,2409,2448,2467,2458,2418,2361,2310,2290,2303,2332,2353,2361,
+2365,2378,2397,2411,2414,2411,2414,2424,2435,2442,2446,2453,2466,2481,2496,2512,2531,2552,2567,2574,2576,
+2578,2584,2595,2610,2629,2648,2664,2683,2714,2761,2813,2849,2865,2878,2917,2994,3088,3159,3182,3162,3126,
+3103,3103,3124,3157,3191,3216,3231,3238,3244,3249,3248,3242,3232,3222,3211,3199,3183,3160,3127,3084,3046,
+3038,3071,3129,3182,3208,3217,3227,3241,3242,3211,3157,3106,3081,3079,3088,3096,3105,3114,3121,3123,3122,
+3126,3138,3146,3141,3124,3122,3168,3279,3434,3580,3661,3647,3539,3367,3176,3008,2888,2816,2770,2723,2673,
+2629,2594,2548,2461,2327,2170,2029,1929,1869,1838,1828,1832,1839,1837,1825,1811,1804,1803,1795,1759,1680,
+1562,1430,1316,1243,1209,1191,1172,1152,1140,1134,1125,1108,1093,1089,1099,1116,1131,1146,1162,1176,1184,
+1188,1191,1190,1178,1156,1134,1134,1169,1237,1321,1396,1443,1458,1456,1458,1471,1485,1488,1480,1473,1476,
+1485,1488,1481,1468,1454,1439,1416,1382,1337,1281,1219,1159,1113,1081,1057,1035,1018,1011,1014,1023,1034,
+1050,1075,1103,1122,1130,1133,1135,1135,1127,1113,1099,1088,1074,1055,1034,1017,1001,984,969,963,971,
+982,986,986,998,1026,1057,1073,1081,1097,1127,1145,1127,1080,1045,1048,1082,1108,1105,1084,1071,1076,
+1086,1085,1067,1038,1005,971,940,914,894,879,862,841,816,791,771,756,744,728,707,683,662,
+641,616,585,554,528,507,482,448,410,377,351,327,297,260,224,193,165,137,105,71,37,
+7,-20,-47,-79,-115,-150,-184,-221,-267,-320,-373,-419,-461,-503,-549,-598,-648,-703,-761,-820,-874,
+-921,-963,-1002,-1040,-1081,-1129,-1186,-1249,-1309,-1363,-1409,-1448,-1481,-1511,-1544,-1588,-1639,-1692,-1741,-1786,-1827,
+-1866,-1900,-1931,-1961,-1993,-2027,-2064,-2104,-2148,-2192,-2230,-2259,-2279,-2296,-2318,-2353,-2401,-2453,-2502,-2553,-2617,
+-2698,-2779,-2832,-2848,-2852,-2880,-2945,-3025,-3090,-3131,-3164,-3206,-3254,-3294,-3314,-3314,-3303,-3293,-3295,-3315,-3345,
+-3373,-3389,-3399,-3417,-3449,-3487,-3522,-3551,-3583,-3620,-3656,-3684,-3696,-3683,-3643,-3589,-3549,-3551,-3597,-3663,-3724,
+-3769,-3801,-3826,-3842,-3852,-3857,-3862,-3863,-3856,-3847,-3843,-3843,-3838,-3827,-3820,-3824,-3835,-3839,-3835,-3837,-3855,
+-3879,-3893,-3894,-3893,-3896,-3900,-3897,-3893,-3896,-3908,-3920,-3925,-3930,-3940,-3953,-3961,-3963,-3964,-3966,-3963,-3949,
+-3925,-3895,-3859,-3820,-3781,-3748,-3719,-3686,-3645,-3598,-3543,-3467,-3361,-3226,-3081,-2939,-2809,-2707,-2648,-2634,-2628,
+-2584,-2493,-2397,-2343,-2335,-2332,-2304,-2259,-2223,-2204,-2181,-2142,-2101,-2077,-2073,-2072,-2061,-2048,-2043,-2045,-2045,
+-2037,-2022,-1999,-1960,-1906,-1849,-1804,-1774,-1752,-1728,-1705,-1690,-1684,-1682,-1677,-1664,-1644,-1620,-1601,-1594,-1600,
+-1613,-1626,-1634,-1640,-1643,-1643,-1640,-1633,-1624,-1611,-1592,-1563,-1523,-1472,-1409,-1340,-1271,-1210,-1157,-1101,-1024,
+-919,-790,-652,-523,-411,-315,-232,-161,-99,-40,23,96,172,240,295,341,382,421,457,494,538,
+595,657,713,757,796,844,905,971,1029,1075,1114,1153,1196,1243,1298,1359,1426,1493,1560,1628,1703,
+1777,1840,1885,1917,1948,1991,2047,2113,2181,2239,2282,2313,2347,2395,2451,2503,2544,2581,2622,2667,2706,
+2738,2779,2839,2912,2973,3008,3022,3030,3042,3063,3097,3149,3215,3282,3337,3381,3426,3479,3542,3612,3680,
+3733,3755,3745,3721,3705,3698,3669,3582,3433,3260,3124,3074,3115,3208,3291,3316,3284,3232,3201,3198,3212,
+3236,3275,3329,3383,3418,3443,3484,3543,3591,3596,3568,3548,3569,3621,3670,3701,3726,3762,3808,3844,3862,
+3868,3873,3877,3877,3868,3851,3829,3808,3795,3795,3809,3834,3869,3915,3971,4026,4068,4100,4147,4237,4375,
+4520,4610,4608,4541,4473,4455,4487,4531,4559,4579,4606,4637,4657,4662,4668,4683,4694,4682,4658,4652,4681,
+4723,4741,4724,4694,4674,4666,4660,4651,4647,4654,4666,4672,4670,4667,4665,4663,4657,4650,4645,4644,4645,
+4644,4643,4641,4641,4644,4660,4697,4751,4800,4813,4781,4733,4709,4711,4680,4552,4323,4046,3764,3458,3086,
+2685,2384,2309,2463,2721,2937,3049,3084,3096,3113,3147,3194,3227,3209,3122,3000,2905,2864,2849,2816,2755,
+2688,2630,2569,2491,2405,2333,2282,2239,2189,2136,2085,2034,1977,1916,1860,1809,1759,1708,1661,1617,1568,
+1509,1449,1406,1382,1359,1321,1267,1214,1172,1136,1098,1057,1019,982,943,902,864,830,796,758,718,
+682,650,617,580,543,509,477,446,413,379,345,311,281,258,240,218,187,153,127,111,98,
+78,51,25,6,-9,-25,-43,-63,-83,-101,-119,-135,-150,-160,-164,-161,-156,-155,-157,-159,-159,
+-161,-170,-187,-207,-233,-267,-308,-349,-380,-403,-421,-440,-454,-464,-471,-483,-497,-509,-516,-519,-525,
+-537,-552,-571,-589,-605,-616,-624,-638,-659,-682,-697,-703,-707,-717,-732,-746,-754,-759,-768,-786,-819,
+-865,-914,-956,-986,-1007,-1028,-1051,-1071,-1087,-1105,-1130,-1159,-1185,-1203,-1217,-1235,-1254,-1270,-1283,-1295,-1307,
+-1319,-1326,-1329,-1333,-1339,-1344,-1347,-1348,-1349,-1350,-1350,-1350,-1351,-1350,-1346,-1338,-1327,-1320,-1315,-1310,-1305,
+-1299,-1291,-1281,-1270,-1260,-1254,-1248,-1239,-1225,-1210,-1201,-1197,-1191,-1183,-1172,-1160,-1148,-1135,-1122,-1112,-1106,
+-1098,-1088,-1077,-1069,-1065,-1060,-1055,-1048,-1041,-1033,-1024,-1015,-1008,-1005,-1003,-999,-995,-991,-989,-985,-979,
+-971,-964,-958,-953,-947,-940,-932,-924,-917,-910,-905,-897,-889,-880,-875,-871,-865,-855,-844,-837,-834,
+-828,-816,-799,-787,-783,-781,-775,-764,-752,-744,-735,-724,-710,-699,-694,-692,-687,-678,-669,-664,-660,
+-653,-643,-634,-627,-621,-614,-606,-599,-594,-589,-582,-576,-572,-568,-562,-552,-542,-534,-528,-521,-513,
+-505,-498,-490,-477,-463,-449,-439,-431,-421,-411,-402,-396,-388,-378,-366,-355,-347,-339,-331,-324,-318,
+-308,-295,-280,-268,-258,-247,-233,-218,-204,-194,-183,-170,-154,-136,-115,-94,-73,-56,-43,-29,-11,
+6,24,41,61,83,100,111,118,123,130,136,141,146,156,166,173,176,176,181,193,209,
+223,231,234,237,251,275,298,310,312,316,332,355,374,388,405,433,467,496,519,541,564,
+584,597,607,625,653,686,718,750,784,818,850,884,925,976,1029,1076,1115,1145,1167,1183,1202,
+1231,1272,1316,1360,1405,1454,1499,1531,1557,1591,1635,1673,1688,1680,1651,1579,1444,1287,1233,1410,1825,
+2341,2782,3076,3276,3461,3639,3757,3781,3732,3642,3515,3351,3189,3101,3114,3162,3140,3005,2809,2644,2560,
+2544,2563,2594,2621,2623,2582,2512,2454,2434,2442,2445,2426,2391,2359,2331,2301,2261,2216,2169,2121,2069,
+2014,1964,1925,1893,1865,1836,1804,1770,1732,1691,1648,1607,1569,1530,1487,1436,1377,1313,1248,1183,1125,
+1078,1042,1008,968,924,894,892,907,912,893,860,833,817,797,756,697,641,608,604,621,639,
+630,562,430,273,159,139,199,275,297,239,126,0,-112,-209,-300,-390,-478,-559,-631,-693,-743,
+-778,-801,-818,-834,-850,-868,-888,-905,-913,-908,-896,-890,-900,-921,-941,-948,-946,-946,-947,-940,-912,
+-863,-812,-776,-763,-766,-773,-781,-790,-794,-783,-747,-687,-617,-556,-511,-475,-444,-413,-383,-354,-319,
+-275,-225,-180,-143,-110,-73,-28,14,44,58,63,74,105,153,206,246,259,249,229,217,217,
+222,223,217,209,207,214,225,234,241,250,264,282,300,318,340,366,394,422,447,470,494,
+518,542,568,595,622,647,670,693,717,741,763,783,803,824,847,867,884,899,918,942,968,
+991,1012,1031,1053,1078,1103,1126,1148,1169,1189,1207,1224,1242,1260,1279,1299,1318,1337,1354,1368,1381,
+1399,1421,1442,1454,1453,1447,1445,1448,1453,1456,1457,1461,1469,1476,1480,1479,1478,1480,1484,1487,1490,
+1493,1499,1506,1514,1521,1529,1539,1553,1569,1584,1597,1608,1621,1637,1656,1678,1703,1729,1753,1774,1796,
+1818,1839,1856,1870,1887,1913,1945,1979,2007,2032,2055,2080,2104,2124,2132,2155,2179,2203,2232,2271,2322,
+2378,2426,2456,2464,2446,2400,2338,2286,2272,2299,2341,2369,2375,2374,2383,2401,2412,2410,2405,2410,2426,
+2442,2450,2454,2463,2477,2493,2508,2524,2544,2564,2577,2580,2579,2581,2588,2600,2615,2632,2649,2664,2680,
+2706,2748,2797,2835,2854,2866,2900,2970,3062,3143,3182,3175,3140,3105,3087,3093,3118,3152,3187,3219,3249,
+3276,3299,3312,3315,3311,3304,3297,3285,3266,3237,3196,3146,3102,3082,3099,3144,3194,3227,3241,3246,3247,
+3235,3200,3152,3114,3105,3117,3133,3142,3145,3154,3167,3178,3181,3179,3178,3175,3167,3160,3178,3245,3364,
+3509,3636,3711,3714,3643,3507,3331,3158,3022,2931,2864,2803,2744,2696,2651,2582,2467,2319,2173,2058,1979,
+1923,1888,1873,1877,1884,1881,1873,1872,1882,1888,1873,1823,1733,1612,1482,1371,1300,1266,1247,1227,1205,
+1191,1183,1173,1159,1150,1153,1165,1176,1184,1194,1210,1224,1231,1235,1242,1252,1253,1240,1226,1235,1280,
+1357,1443,1514,1554,1564,1558,1557,1568,1584,1589,1580,1567,1561,1557,1549,1535,1522,1511,1496,1469,1427,
+1379,1330,1282,1239,1205,1177,1150,1122,1098,1088,1093,1106,1120,1139,1163,1190,1212,1225,1234,1241,1239,
+1225,1205,1190,1181,1169,1149,1126,1109,1097,1079,1057,1046,1054,1070,1078,1078,1088,1122,1163,1187,1194,
+1202,1223,1234,1210,1157,1116,1122,1161,1191,1186,1158,1135,1130,1128,1112,1078,1036,999,972,954,943,
+932,915,888,860,837,824,816,808,795,776,752,728,705,684,660,631,603,578,555,527,493,
+458,428,403,377,345,309,275,245,217,187,155,121,90,60,31,1,-29,-61,-91,-122,-158,
+-200,-247,-295,-339,-383,-428,-477,-527,-579,-633,-689,-745,-797,-844,-886,-926,-967,-1012,-1067,-1129,-1191,
+-1245,-1289,-1326,-1361,-1396,-1432,-1474,-1525,-1580,-1633,-1679,-1719,-1758,-1794,-1826,-1856,-1887,-1922,-1960,-2001,-2044,
+-2090,-2135,-2173,-2199,-2213,-2220,-2227,-2245,-2281,-2332,-2390,-2450,-2519,-2601,-2686,-2749,-2778,-2785,-2804,-2853,-2923,
+-2987,-3034,-3074,-3121,-3176,-3221,-3240,-3233,-3215,-3205,-3217,-3252,-3295,-3329,-3347,-3358,-3377,-3409,-3444,-3474,-3500,
+-3529,-3567,-3610,-3648,-3671,-3669,-3638,-3594,-3565,-3575,-3622,-3682,-3730,-3763,-3790,-3818,-3844,-3859,-3865,-3863,-3857,
+-3849,-3844,-3846,-3850,-3850,-3846,-3844,-3851,-3858,-3857,-3851,-3851,-3863,-3878,-3886,-3889,-3896,-3906,-3909,-3902,-3895,
+-3900,-3915,-3927,-3930,-3933,-3943,-3957,-3965,-3965,-3965,-3970,-3971,-3961,-3941,-3918,-3891,-3856,-3814,-3773,-3736,-3703,
+-3668,-3636,-3603,-3557,-3478,-3360,-3210,-3046,-2896,-2787,-2744,-2758,-2777,-2739,-2631,-2504,-2422,-2397,-2390,-2358,-2304,
+-2259,-2240,-2227,-2202,-2166,-2140,-2128,-2122,-2113,-2106,-2106,-2108,-2104,-2094,-2087,-2084,-2067,-2023,-1961,-1904,-1868,
+-1848,-1830,-1810,-1794,-1787,-1783,-1767,-1732,-1684,-1640,-1615,-1615,-1634,-1659,-1677,-1684,-1681,-1676,-1675,-1679,-1686,
+-1688,-1680,-1658,-1623,-1577,-1522,-1460,-1394,-1330,-1271,-1212,-1138,-1040,-917,-783,-654,-542,-444,-358,-281,-217,
+-160,-100,-28,51,126,187,238,291,349,402,440,464,491,533,587,640,688,737,798,871,946,
+1009,1059,1102,1143,1184,1225,1275,1339,1412,1485,1552,1618,1692,1769,1831,1869,1890,1915,1959,2021,2089,
+2152,2201,2238,2267,2299,2343,2394,2444,2490,2535,2585,2633,2669,2697,2733,2791,2861,2919,2951,2963,2972,
+2988,3009,3041,3091,3162,3239,3306,3358,3405,3458,3520,3585,3644,3683,3693,3675,3649,3638,3639,3615,3525,
+3366,3188,3059,3020,3059,3128,3180,3196,3188,3175,3166,3160,3161,3184,3237,3308,3367,3399,3421,3461,3515,
+3551,3542,3505,3487,3515,3574,3625,3652,3671,3703,3747,3787,3810,3818,3819,3817,3812,3802,3784,3760,3735,
+3719,3720,3736,3763,3799,3850,3916,3982,4030,4056,4087,4163,4299,4456,4563,4575,4510,4437,4412,4439,4481,
+4510,4527,4550,4580,4605,4619,4634,4653,4666,4656,4634,4626,4648,4681,4696,4681,4653,4632,4621,4613,4607,
+4607,4616,4626,4629,4625,4621,4621,4622,4619,4616,4617,4621,4624,4622,4617,4615,4618,4631,4659,4706,4761,
+4794,4784,4738,4696,4685,4678,4604,4420,4154,3870,3592,3281,2905,2534,2308,2323,2532,2787,2966,3049,3082,
+3100,3109,3113,3126,3142,3127,3055,2951,2868,2830,2812,2773,2711,2648,2596,2538,2461,2377,2310,2264,2222,
+2173,2120,2072,2026,1973,1915,1860,1809,1757,1702,1653,1611,1567,1513,1455,1412,1390,1370,1333,1278,1224,
+1180,1142,1101,1058,1019,981,940,893,851,817,788,753,713,674,639,606,568,531,499,474,449,
+416,378,339,306,280,259,239,215,186,158,136,120,105,84,58,34,14,-2,-20,-43,-67,
+-90,-106,-117,-129,-144,-158,-166,-167,-166,-167,-170,-167,-159,-152,-156,-170,-190,-212,-243,-285,-332,
+-374,-405,-428,-448,-465,-478,-487,-498,-512,-525,-537,-548,-559,-570,-580,-591,-604,-617,-626,-633,-641,
+-657,-680,-703,-721,-734,-744,-753,-759,-765,-773,-784,-803,-833,-871,-910,-941,-963,-982,-1005,-1031,-1052,
+-1066,-1082,-1107,-1138,-1165,-1185,-1201,-1219,-1239,-1254,-1264,-1275,-1289,-1303,-1312,-1316,-1321,-1327,-1334,-1339,-1341,
+-1343,-1345,-1346,-1347,-1349,-1349,-1346,-1338,-1330,-1324,-1320,-1314,-1307,-1299,-1290,-1277,-1261,-1248,-1240,-1235,-1228,
+-1215,-1202,-1195,-1193,-1191,-1185,-1177,-1168,-1157,-1144,-1130,-1118,-1111,-1103,-1093,-1083,-1077,-1074,-1071,-1066,-1060,
+-1054,-1047,-1039,-1031,-1024,-1020,-1017,-1014,-1011,-1009,-1006,-1002,-994,-985,-976,-968,-959,-950,-943,-938,-934,
+-929,-924,-919,-914,-907,-898,-889,-883,-876,-869,-861,-855,-851,-846,-836,-822,-810,-802,-797,-789,-779,
+-769,-762,-756,-746,-733,-721,-714,-711,-707,-700,-692,-685,-679,-673,-666,-659,-652,-643,-634,-625,-618,
+-613,-606,-597,-589,-585,-583,-581,-574,-564,-554,-546,-537,-527,-520,-513,-504,-491,-475,-462,-453,-444,
+-434,-424,-415,-408,-399,-388,-377,-368,-361,-354,-345,-336,-329,-320,-308,-295,-284,-276,-267,-254,-240,
+-227,-216,-204,-190,-173,-155,-136,-115,-93,-73,-56,-38,-18,1,19,34,51,70,86,96,102,
+107,115,123,130,137,144,150,151,149,148,156,169,182,191,197,204,219,242,265,279,281,
+282,292,314,338,357,374,399,434,469,495,514,534,559,582,596,609,629,660,695,730,768,
+808,843,871,897,932,981,1031,1071,1100,1122,1143,1167,1195,1231,1275,1320,1365,1412,1460,1503,1535,
+1562,1594,1632,1660,1666,1649,1609,1522,1379,1237,1221,1439,1878,2395,2839,3160,3401,3604,3749,3795,3749,
+3662,3565,3438,3267,3105,3039,3087,3159,3132,2962,2720,2517,2412,2398,2437,2498,2549,2560,2521,2462,2430,
+2445,2482,2496,2468,2412,2353,2305,2265,2228,2192,2150,2099,2038,1979,1930,1894,1868,1842,1814,1784,1753,
+1720,1684,1644,1599,1551,1506,1463,1420,1372,1319,1263,1208,1156,1109,1069,1030,990,951,924,914,916,
+913,896,868,839,810,771,715,647,587,552,550,573,595,581,505,378,251,185,203,269,316,
+297,210,86,-43,-165,-274,-366,-441,-503,-564,-630,-692,-739,-764,-775,-784,-798,-815,-834,-852,-868,
+-878,-879,-874,-875,-891,-916,-936,-942,-937,-936,-940,-937,-916,-876,-832,-799,-780,-767,-753,-740,-732,
+-731,-726,-706,-665,-607,-540,-476,-422,-382,-354,-330,-299,-257,-209,-166,-134,-108,-81,-49,-13,17,
+36,46,54,72,104,147,190,223,241,247,248,252,260,268,271,269,264,263,266,270,274,
+279,287,302,321,339,354,369,389,415,443,471,495,519,543,572,601,631,657,682,705,728,
+752,775,797,818,840,861,882,900,916,933,954,979,1004,1027,1046,1065,1085,1108,1131,1153,1174,
+1195,1214,1231,1245,1260,1276,1295,1315,1334,1354,1371,1385,1398,1414,1434,1453,1463,1463,1461,1464,1472,
+1477,1477,1475,1476,1482,1486,1484,1479,1477,1480,1484,1487,1488,1492,1498,1505,1512,1521,1532,1546,1560,
+1572,1583,1595,1608,1623,1640,1660,1682,1707,1733,1760,1784,1806,1824,1839,1854,1873,1896,1921,1945,1968,
+1992,2020,2052,2082,2108,2132,2133,2170,2204,2226,2242,2268,2311,2361,2404,2431,2443,2437,2405,2350,2295,
+2273,2293,2335,2365,2372,2370,2377,2392,2402,2402,2400,2410,2430,2448,2457,2463,2473,2489,2505,2519,2536,
+2556,2575,2586,2587,2586,2588,2595,2603,2612,2625,2640,2654,2670,2694,2731,2778,2820,2846,2863,2895,2958,
+3047,3133,3185,3189,3158,3115,3083,3072,3082,3109,3145,3186,3230,3278,3325,3366,3392,3401,3396,3381,3360,
+3335,3303,3266,3224,3185,3160,3159,3180,3212,3239,3257,3266,3267,3255,3226,3188,3161,3158,3170,3178,3174,
+3170,3185,3222,3260,3276,3266,3245,3223,3210,3213,3252,3339,3461,3581,3666,3706,3704,3656,3551,3395,3223,
+3079,2982,2915,2855,2795,2740,2681,2593,2466,2319,2189,2096,2033,1985,1953,1944,1949,1950,1939,1929,1935,
+1951,1956,1930,1869,1779,1665,1541,1431,1357,1320,1302,1284,1261,1243,1230,1219,1210,1209,1219,1231,1237,
+1240,1249,1266,1281,1287,1292,1309,1334,1348,1342,1331,1343,1394,1474,1561,1629,1669,1681,1678,1677,1685,
+1696,1694,1677,1656,1640,1628,1614,1597,1583,1571,1551,1515,1465,1416,1377,1347,1322,1297,1271,1242,1209,
+1182,1170,1175,1187,1201,1219,1245,1275,1301,1318,1328,1334,1330,1315,1296,1285,1281,1271,1249,1224,1208,
+1199,1183,1159,1144,1151,1170,1180,1178,1187,1223,1272,1306,1318,1323,1335,1337,1306,1252,1214,1221,1258,
+1280,1264,1224,1189,1169,1152,1122,1081,1042,1012,992,980,974,967,952,928,904,889,882,875,861,
+842,820,798,777,754,730,705,678,651,624,598,570,538,508,481,456,427,395,361,331,302,
+272,238,204,174,145,113,79,45,16,-9,-34,-64,-99,-139,-179,-220,-263,-310,-360,-409,-457,
+-507,-560,-614,-666,-716,-764,-811,-856,-902,-952,-1010,-1071,-1127,-1172,-1206,-1238,-1273,-1312,-1356,-1406,-1462,
+-1520,-1571,-1615,-1653,-1688,-1722,-1752,-1782,-1815,-1855,-1900,-1945,-1990,-2034,-2075,-2110,-2135,-2149,-2152,-2151,-2155,
+-2178,-2223,-2283,-2346,-2412,-2486,-2566,-2636,-2679,-2700,-2721,-2763,-2826,-2890,-2945,-2993,-3045,-3100,-3142,-3159,-3153,
+-3140,-3139,-3162,-3203,-3246,-3276,-3293,-3308,-3332,-3365,-3398,-3424,-3447,-3477,-3517,-3560,-3600,-3626,-3634,-3620,-3595,
+-3580,-3597,-3642,-3696,-3737,-3763,-3786,-3812,-3839,-3857,-3862,-3858,-3851,-3845,-3842,-3844,-3847,-3850,-3854,-3864,-3877,
+-3883,-3877,-3869,-3870,-3879,-3884,-3880,-3880,-3892,-3911,-3918,-3908,-3899,-3905,-3923,-3935,-3936,-3937,-3949,-3966,-3975,
+-3975,-3975,-3979,-3978,-3966,-3946,-3928,-3909,-3880,-3839,-3793,-3751,-3714,-3678,-3647,-3625,-3602,-3555,-3465,-3327,-3156,
+-2984,-2853,-2799,-2823,-2870,-2865,-2774,-2636,-2524,-2470,-2448,-2413,-2358,-2311,-2290,-2286,-2273,-2245,-2213,-2189,-2170,
+-2157,-2155,-2163,-2171,-2167,-2154,-2149,-2155,-2154,-2125,-2067,-2006,-1964,-1940,-1920,-1900,-1889,-1891,-1891,-1867,-1808,
+-1731,-1669,-1641,-1650,-1678,-1705,-1719,-1714,-1698,-1682,-1677,-1687,-1707,-1725,-1728,-1711,-1675,-1626,-1569,-1509,-1449,
+-1391,-1332,-1265,-1177,-1063,-931,-800,-684,-587,-498,-413,-336,-273,-220,-162,-89,-9,60,110,153,206,
+276,346,398,427,450,484,532,585,638,693,757,830,903,969,1031,1090,1142,1182,1214,1253,1312,
+1389,1468,1538,1604,1676,1752,1814,1850,1867,1889,1933,1996,2059,2111,2151,2185,2220,2257,2298,2340,2383,
+2429,2480,2537,2589,2627,2657,2695,2751,2814,2862,2887,2899,2913,2934,2960,2995,3048,3124,3208,3278,3331,
+3378,3435,3504,3571,3623,3648,3642,3614,3586,3577,3575,3542,3440,3276,3106,2997,2975,3013,3062,3089,3096,
+3099,3104,3106,3103,3112,3153,3226,3303,3350,3363,3373,3408,3457,3485,3470,3434,3424,3460,3522,3575,3605,
+3624,3651,3685,3718,3741,3754,3759,3757,3746,3728,3707,3683,3664,3655,3660,3679,3704,3738,3789,3857,3929,
+3980,4007,4033,4098,4218,4360,4462,4484,4442,4390,4377,4402,4438,4460,4475,4494,4522,4548,4569,4591,4616,
+4633,4633,4619,4613,4626,4644,4649,4634,4611,4592,4580,4573,4570,4576,4585,4590,4586,4580,4578,4582,4585,
+4584,4584,4589,4599,4606,4605,4599,4594,4597,4615,4655,4713,4766,4783,4753,4700,4666,4660,4630,4504,4263,
+3963,3672,3395,3080,2713,2388,2248,2352,2607,2852,2994,3049,3075,3094,3096,3082,3080,3091,3079,3013,2911,
+2827,2790,2772,2735,2671,2605,2551,2497,2429,2356,2295,2249,2203,2151,2101,2058,2016,1967,1912,1859,1807,
+1750,1689,1637,1597,1560,1511,1456,1415,1396,1378,1342,1287,1232,1187,1149,1107,1061,1020,982,938,888,
+842,807,780,748,709,669,634,600,562,522,491,469,448,418,378,337,305,281,261,238,213,
+189,166,147,129,109,86,61,38,19,3,-15,-39,-65,-88,-102,-110,-118,-133,-150,-162,-167,
+-169,-174,-177,-172,-158,-144,-143,-156,-175,-196,-223,-261,-308,-354,-392,-422,-446,-466,-482,-496,-509,
+-524,-538,-553,-567,-582,-597,-608,-619,-631,-643,-653,-659,-662,-670,-684,-706,-729,-748,-762,-769,-775,
+-783,-795,-813,-834,-860,-888,-914,-931,-942,-958,-983,-1011,-1034,-1049,-1066,-1090,-1119,-1144,-1161,-1176,-1192,
+-1210,-1224,-1234,-1246,-1261,-1276,-1287,-1294,-1302,-1312,-1321,-1329,-1334,-1338,-1340,-1341,-1341,-1342,-1342,-1339,-1333,
+-1328,-1324,-1320,-1312,-1303,-1293,-1284,-1272,-1256,-1242,-1232,-1226,-1219,-1208,-1197,-1191,-1190,-1189,-1185,-1180,-1173,
+-1164,-1153,-1140,-1131,-1123,-1115,-1104,-1092,-1085,-1083,-1081,-1078,-1073,-1067,-1061,-1056,-1049,-1043,-1038,-1033,-1029,
+-1026,-1024,-1020,-1012,-1004,-997,-990,-981,-969,-957,-948,-946,-945,-943,-940,-936,-931,-925,-915,-905,-895,
+-888,-881,-874,-868,-864,-860,-854,-844,-833,-822,-813,-803,-793,-784,-778,-773,-767,-757,-747,-737,-730,
+-724,-719,-712,-705,-699,-693,-689,-684,-677,-668,-657,-648,-641,-635,-627,-616,-607,-602,-599,-596,-589,
+-580,-569,-558,-546,-536,-528,-523,-516,-503,-488,-474,-466,-460,-451,-441,-430,-421,-410,-398,-387,-380,
+-376,-370,-360,-348,-338,-330,-320,-309,-299,-292,-285,-275,-262,-251,-241,-229,-213,-193,-173,-154,-134,
+-113,-93,-74,-53,-28,-3,17,33,46,59,71,80,86,94,103,114,122,130,135,138,135,
+130,129,137,150,160,165,169,182,204,231,250,256,254,257,274,300,324,341,358,386,423,
+459,485,503,523,546,569,589,609,635,669,704,741,781,821,854,879,902,937,981,1023,1050,
+1067,1083,1107,1141,1182,1227,1274,1321,1366,1411,1455,1494,1525,1554,1588,1621,1639,1636,1613,1564,1465,
+1315,1183,1197,1445,1894,2406,2854,3198,3469,3676,3786,3781,3701,3610,3520,3385,3192,3016,2958,3029,3114,
+3076,2882,2621,2416,2326,2333,2389,2452,2494,2495,2461,2429,2434,2479,2524,2529,2484,2412,2340,2282,2240,
+2209,2179,2140,2084,2017,1955,1910,1878,1851,1822,1791,1763,1736,1710,1680,1640,1591,1538,1489,1448,1410,
+1369,1324,1277,1232,1188,1145,1102,1059,1018,980,948,925,911,900,885,863,831,788,730,662,594,
+537,500,489,497,505,487,424,332,257,236,269,315,323,276,186,73,-50,-180,-302,-399,-464,
+-511,-563,-629,-693,-735,-749,-748,-751,-766,-789,-812,-832,-848,-859,-863,-865,-873,-895,-925,-948,-955,
+-948,-940,-937,-932,-916,-887,-852,-819,-789,-758,-727,-702,-686,-677,-668,-649,-613,-557,-483,-404,-340,
+-304,-289,-274,-238,-183,-127,-89,-75,-70,-60,-37,-9,16,33,45,60,84,119,156,190,214,
+231,245,261,279,296,308,313,315,315,317,320,323,326,329,338,353,370,385,395,404,417,
+438,467,498,525,551,578,608,640,670,695,718,740,763,787,810,831,852,873,894,913,930,
+948,968,990,1014,1038,1059,1077,1095,1112,1131,1150,1169,1190,1210,1229,1246,1260,1275,1294,1315,1337,
+1360,1383,1404,1420,1434,1448,1463,1476,1481,1479,1478,1483,1490,1492,1487,1481,1480,1484,1485,1480,1475,
+1476,1483,1490,1492,1492,1496,1503,1510,1515,1523,1536,1550,1562,1570,1578,1591,1607,1625,1642,1661,1682,
+1707,1734,1762,1789,1811,1828,1841,1858,1881,1906,1927,1943,1959,1985,2018,2052,2078,2102,2133,2131,2189,
+2238,2262,2266,2271,2289,2317,2348,2381,2420,2451,2448,2400,2328,2276,2273,2306,2341,2356,2358,2361,2371,
+2379,2381,2385,2399,2421,2440,2452,2462,2477,2494,2510,2525,2542,2563,2580,2588,2589,2589,2593,2599,2602,
+2605,2612,2626,2643,2660,2682,2716,2762,2808,2842,2866,2898,2955,3038,3123,3180,3194,3169,3128,3090,3068,
+3068,3088,3122,3163,3208,3261,3324,3391,3446,3472,3468,3443,3410,3379,3350,3324,3297,3272,3250,3235,3231,
+3239,3255,3272,3285,3292,3286,3265,3235,3213,3210,3215,3211,3192,3182,3209,3273,3342,3376,3363,3323,3283,
+3262,3272,3323,3418,3530,3617,3652,3646,3620,3577,3493,3356,3194,3059,2975,2925,2879,2822,2758,2682,2580,
+2448,2309,2198,2126,2080,2047,2028,2028,2033,2025,2001,1984,1989,2004,2003,1968,1907,1825,1724,1607,1493,
+1411,1370,1353,1339,1319,1299,1285,1275,1271,1274,1285,1296,1299,1300,1310,1327,1341,1348,1360,1389,1425,
+1445,1440,1431,1449,1508,1594,1680,1746,1784,1798,1799,1799,1805,1808,1796,1767,1736,1712,1696,1678,1656,
+1633,1611,1582,1539,1491,1450,1425,1411,1397,1378,1355,1327,1296,1270,1258,1260,1269,1280,1297,1324,1357,
+1383,1399,1406,1411,1409,1399,1387,1381,1380,1369,1345,1318,1303,1299,1290,1272,1259,1264,1281,1288,1286,
+1297,1335,1388,1425,1437,1438,1439,1430,1394,1341,1306,1311,1336,1343,1314,1268,1230,1204,1174,1134,1093,
+1062,1042,1026,1012,1004,999,990,976,961,952,945,933,912,888,869,853,835,810,782,753,726,
+700,672,644,616,587,558,531,503,473,441,411,386,359,327,290,256,228,201,169,130,93,
+66,45,23,-6,-42,-78,-112,-149,-193,-242,-292,-339,-384,-432,-484,-537,-587,-635,-684,-736,-788,
+-839,-892,-948,-1004,-1054,-1091,-1121,-1151,-1188,-1233,-1283,-1337,-1396,-1454,-1506,-1548,-1584,-1618,-1648,-1678,-1709,
+-1747,-1792,-1841,-1886,-1927,-1965,-2001,-2033,-2061,-2080,-2089,-2088,-2087,-2102,-2140,-2194,-2251,-2306,-2367,-2438,-2512,
+-2570,-2608,-2638,-2681,-2741,-2811,-2878,-2940,-2996,-3045,-3080,-3095,-3098,-3100,-3113,-3140,-3173,-3201,-3219,-3230,-3246,
+-3275,-3310,-3343,-3369,-3396,-3433,-3475,-3515,-3545,-3566,-3579,-3583,-3579,-3580,-3598,-3637,-3683,-3720,-3746,-3768,-3793,
+-3818,-3836,-3843,-3843,-3840,-3837,-3835,-3833,-3831,-3837,-3855,-3881,-3900,-3901,-3887,-3878,-3887,-3902,-3904,-3891,-3884,
+-3898,-3922,-3931,-3918,-3904,-3910,-3931,-3947,-3950,-3953,-3966,-3983,-3990,-3987,-3985,-3989,-3987,-3971,-3948,-3930,-3915,
+-3891,-3853,-3809,-3769,-3732,-3693,-3656,-3632,-3619,-3596,-3538,-3432,-3282,-3107,-2947,-2852,-2848,-2904,-2941,-2896,-2773,
+-2637,-2542,-2491,-2451,-2404,-2362,-2343,-2342,-2336,-2312,-2275,-2238,-2207,-2188,-2187,-2202,-2220,-2223,-2212,-2203,-2205,
+-2208,-2188,-2144,-2092,-2050,-2021,-1997,-1980,-1980,-1997,-2002,-1966,-1882,-1782,-1712,-1692,-1712,-1743,-1763,-1763,-1748,
+-1725,-1702,-1692,-1703,-1731,-1762,-1777,-1766,-1729,-1676,-1615,-1556,-1500,-1446,-1389,-1319,-1225,-1105,-972,-845,-736,
+-644,-559,-474,-396,-334,-283,-228,-158,-82,-21,16,45,91,162,243,311,358,394,436,490,550,
+611,669,727,785,846,914,993,1078,1151,1198,1221,1243,1287,1356,1436,1509,1575,1645,1717,1776,1811,
+1829,1854,1900,1962,2022,2067,2102,2138,2177,2218,2255,2289,2323,2365,2416,2474,2528,2571,2609,2652,2707,
+2763,2804,2825,2834,2848,2869,2899,2942,3008,3096,3187,3258,3307,3351,3409,3482,3551,3597,3609,3593,3563,
+3537,3520,3492,3423,3297,3138,3002,2937,2941,2975,2999,3002,3000,3006,3015,3018,3022,3052,3123,3216,3286,
+3307,3295,3292,3324,3374,3404,3395,3374,3375,3413,3469,3519,3554,3581,3608,3634,3655,3672,3687,3697,3695,
+3681,3659,3636,3619,3609,3610,3621,3640,3664,3694,3739,3801,3866,3915,3946,3981,4049,4155,4269,4344,4361,
+4340,4321,4331,4363,4395,4416,4430,4450,4475,4500,4523,4547,4572,4591,4597,4596,4599,4609,4616,4609,4589,
+4565,4545,4531,4525,4528,4540,4552,4555,4549,4544,4546,4553,4557,4555,4555,4561,4572,4581,4584,4580,4576,
+4579,4603,4652,4716,4764,4766,4723,4671,4646,4635,4574,4399,4113,3784,3476,3181,2857,2513,2259,2216,2397,
+2678,2907,3021,3060,3083,3097,3087,3065,3066,3089,3085,3012,2890,2786,2738,2724,2694,2634,2564,2504,2449,
+2391,2331,2278,2230,2179,2125,2077,2039,2000,1950,1895,1844,1793,1733,1668,1614,1579,1548,1504,1449,1407,
+1387,1373,1340,1286,1230,1185,1148,1107,1061,1019,981,939,890,844,807,778,744,704,665,631,599,
+560,517,482,458,438,411,375,337,307,282,258,234,211,191,173,154,132,109,87,65,44,
+25,7,-11,-33,-56,-77,-90,-97,-105,-121,-141,-157,-166,-170,-174,-176,-170,-155,-141,-138,-150,
+-169,-190,-215,-249,-292,-337,-377,-409,-436,-459,-479,-498,-517,-535,-551,-564,-576,-592,-610,-628,-644,
+-660,-674,-687,-695,-699,-702,-708,-720,-738,-756,-771,-782,-791,-802,-818,-836,-856,-876,-896,-912,-922,
+-931,-945,-968,-994,-1017,-1035,-1054,-1079,-1104,-1124,-1137,-1148,-1163,-1179,-1193,-1206,-1221,-1237,-1252,-1264,-1274,
+-1287,-1300,-1313,-1321,-1327,-1332,-1335,-1335,-1334,-1335,-1336,-1335,-1333,-1329,-1324,-1317,-1307,-1296,-1288,-1281,-1272,
+-1258,-1243,-1232,-1225,-1217,-1207,-1198,-1192,-1189,-1186,-1181,-1175,-1170,-1162,-1153,-1143,-1137,-1131,-1124,-1112,-1098,
+-1089,-1085,-1085,-1084,-1079,-1074,-1069,-1066,-1062,-1057,-1051,-1044,-1039,-1037,-1034,-1028,-1018,-1010,-1005,-1002,-996,
+-984,-971,-962,-959,-960,-959,-955,-950,-944,-937,-928,-918,-910,-903,-897,-890,-882,-876,-872,-868,-862,
+-852,-840,-829,-819,-811,-802,-794,-788,-784,-779,-772,-762,-752,-745,-739,-733,-727,-719,-713,-709,-706,
+-700,-692,-683,-675,-668,-660,-649,-638,-628,-621,-616,-610,-602,-593,-584,-573,-560,-548,-542,-539,-534,
+-522,-504,-490,-483,-479,-473,-462,-450,-438,-426,-413,-402,-396,-394,-389,-379,-366,-354,-346,-338,-327,
+-316,-307,-299,-289,-278,-268,-260,-249,-233,-211,-187,-166,-148,-130,-113,-95,-72,-44,-13,11,29,
+40,48,56,63,70,80,91,101,110,116,120,121,120,117,118,125,135,144,150,159,175,
+199,221,233,236,236,245,267,295,319,336,353,380,415,450,478,497,515,534,554,575,600,
+630,665,701,739,777,813,840,861,887,924,967,1003,1023,1034,1049,1078,1118,1165,1215,1266,1315,
+1360,1402,1439,1470,1498,1529,1565,1595,1607,1598,1574,1519,1412,1259,1143,1188,1465,1925,2432,2877,3229,
+3507,3699,3773,3733,3644,3563,3474,3314,3082,2879,2818,2899,2993,2958,2773,2539,2372,2316,2336,2379,2412,
+2424,2419,2413,2429,2474,2527,2548,2518,2450,2372,2305,2254,2216,2189,2162,2123,2065,1997,1938,1896,1864,
+1833,1800,1769,1746,1728,1708,1679,1638,1586,1532,1485,1448,1415,1379,1338,1298,1261,1227,1189,1148,1104,
+1060,1017,975,939,913,896,883,863,828,775,708,637,574,523,483,453,434,418,391,346,294,
+264,273,306,328,310,255,176,82,-33,-168,-299,-398,-459,-503,-557,-628,-696,-735,-740,-731,-728,
+-742,-767,-794,-816,-833,-843,-846,-849,-862,-890,-927,-959,-972,-968,-953,-938,-923,-904,-880,-851,-818,
+-780,-738,-701,-673,-654,-637,-615,-584,-541,-479,-397,-311,-245,-217,-214,-206,-166,-100,-36,-2,-4,
+-22,-31,-22,0,28,51,70,91,118,153,188,216,234,246,261,284,311,336,351,357,357,
+356,359,366,376,385,392,400,411,422,431,438,444,454,473,500,531,561,589,617,647,679,
+707,731,752,772,795,817,839,859,879,899,919,937,956,976,996,1018,1040,1061,1082,1102,1121,
+1138,1155,1172,1190,1210,1230,1248,1265,1282,1300,1320,1342,1365,1390,1416,1440,1458,1473,1486,1499,1507,
+1505,1499,1494,1497,1501,1500,1492,1485,1484,1487,1486,1480,1477,1482,1491,1498,1498,1498,1502,1511,1518,
+1522,1528,1540,1553,1563,1569,1577,1591,1610,1628,1644,1661,1681,1705,1730,1757,1785,1809,1829,1844,1862,
+1884,1906,1923,1939,1961,1994,2029,2054,2068,2089,2131,2140,2213,2272,2299,2299,2290,2283,2281,2294,2338,
+2416,2496,2524,2474,2370,2279,2247,2273,2316,2342,2347,2345,2346,2351,2356,2364,2381,2402,2422,2438,2454,
+2472,2491,2507,2522,2541,2562,2580,2588,2589,2590,2594,2597,2596,2594,2598,2612,2632,2653,2675,2707,2751,
+2799,2837,2864,2894,2943,3014,3092,3149,3171,3160,3131,3098,3075,3070,3087,3118,3153,3188,3232,3299,3384,
+3465,3511,3512,3482,3443,3411,3387,3369,3354,3341,3324,3303,3286,3279,3283,3295,3307,3313,3309,3292,3268,
+3251,3248,3252,3242,3216,3200,3228,3306,3393,3440,3429,3382,3334,3310,3320,3371,3458,3551,3605,3600,3555,
+3505,3457,3386,3271,3134,3021,2957,2923,2882,2819,2737,2641,2524,2390,2267,2181,2138,2119,2107,2103,2106,
+2106,2086,2054,2034,2039,2053,2048,2013,1956,1885,1792,1675,1555,1464,1418,1402,1391,1375,1358,1347,1342,
+1340,1343,1351,1359,1363,1367,1376,1390,1400,1411,1433,1472,1511,1529,1524,1524,1559,1633,1724,1806,1865,
+1899,1913,1915,1915,1917,1914,1892,1853,1813,1785,1767,1745,1713,1676,1639,1600,1559,1520,1493,1480,1472,
+1460,1443,1425,1404,1380,1358,1346,1346,1353,1362,1376,1401,1430,1452,1463,1470,1478,1486,1487,1481,1476,
+1472,1460,1436,1410,1397,1397,1395,1384,1373,1374,1385,1392,1397,1416,1458,1507,1535,1536,1524,1512,1492,
+1450,1398,1366,1366,1378,1368,1332,1290,1261,1237,1202,1156,1116,1094,1083,1070,1055,1045,1043,1039,1030,
+1017,1009,1001,987,963,940,923,910,891,863,830,800,775,749,722,693,665,636,607,578,548,
+517,486,459,435,410,378,341,308,281,255,223,184,148,122,103,80,49,15,-16,-46,-81,
+-126,-176,-223,-265,-306,-354,-407,-460,-509,-556,-606,-662,-718,-773,-825,-878,-929,-974,-1010,-1040,-1072,
+-1112,-1160,-1213,-1269,-1327,-1382,-1432,-1475,-1512,-1543,-1572,-1602,-1639,-1683,-1732,-1779,-1818,-1852,-1883,-1915,-1949,
+-1981,-2008,-2024,-2030,-2035,-2051,-2084,-2129,-2174,-2216,-2265,-2328,-2401,-2468,-2519,-2560,-2605,-2665,-2738,-2817,-2888,
+-2943,-2979,-3000,-3014,-3030,-3052,-3078,-3105,-3129,-3146,-3157,-3166,-3182,-3211,-3247,-3281,-3313,-3349,-3394,-3443,-3481,
+-3505,-3520,-3533,-3546,-3556,-3566,-3584,-3614,-3650,-3682,-3710,-3737,-3766,-3793,-3810,-3817,-3818,-3819,-3822,-3820,-3814,
+-3809,-3820,-3853,-3894,-3918,-3910,-3888,-3883,-3907,-3937,-3942,-3922,-3906,-3919,-3946,-3955,-3936,-3915,-3919,-3944,-3967,
+-3974,-3979,-3992,-4006,-4007,-3997,-3992,-3995,-3995,-3980,-3955,-3933,-3917,-3895,-3861,-3824,-3790,-3758,-3718,-3676,-3646,
+-3632,-3620,-3589,-3525,-3419,-3268,-3092,-2942,-2880,-2916,-2986,-2995,-2903,-2749,-2608,-2521,-2474,-2439,-2408,-2390,-2386,
+-2381,-2360,-2324,-2283,-2248,-2225,-2222,-2237,-2259,-2269,-2262,-2248,-2239,-2232,-2218,-2190,-2156,-2124,-2095,-2071,-2062,
+-2075,-2099,-2097,-2038,-1932,-1825,-1767,-1767,-1798,-1822,-1823,-1807,-1785,-1764,-1744,-1733,-1743,-1775,-1813,-1836,-1828,
+-1787,-1728,-1663,-1603,-1549,-1497,-1440,-1369,-1276,-1159,-1028,-901,-791,-697,-613,-531,-458,-400,-351,-299,-234,
+-166,-114,-85,-63,-23,42,125,204,267,320,376,441,513,584,647,698,744,797,871,970,1081,
+1175,1227,1240,1240,1259,1311,1384,1460,1531,1600,1668,1725,1762,1786,1814,1860,1918,1972,2015,2050,2086,
+2125,2164,2200,2233,2268,2309,2357,2410,2464,2513,2557,2603,2655,2707,2746,2766,2771,2776,2790,2821,2876,
+2961,3066,3169,3246,3296,3338,3392,3459,3519,3553,3554,3535,3513,3494,3464,3395,3272,3113,2968,2886,2877,
+2906,2925,2919,2908,2916,2940,2956,2954,2954,2994,3081,3179,3236,3234,3202,3193,3226,3279,3317,3326,3327,
+3344,3382,3425,3462,3495,3529,3562,3586,3599,3610,3624,3634,3633,3619,3599,3582,3571,3566,3568,3580,3598,
+3620,3650,3692,3746,3800,3842,3876,3927,4010,4114,4203,4246,4244,4230,4236,4267,4309,4343,4365,4384,4406,
+4430,4453,4477,4501,4523,4535,4542,4553,4572,4591,4595,4578,4549,4519,4494,4477,4470,4478,4495,4511,4516,
+4513,4512,4516,4523,4526,4525,4525,4530,4538,4547,4553,4555,4555,4563,4593,4650,4714,4752,4741,4692,4645,
+4625,4603,4510,4299,3985,3633,3292,2960,2623,2324,2167,2227,2465,2745,2943,3035,3073,3099,3105,3080,3052,
+3064,3106,3113,3029,2881,2747,2680,2662,2642,2593,2526,2461,2404,2351,2300,2253,2204,2150,2096,2052,2016,
+1974,1919,1862,1814,1768,1710,1645,1591,1559,1534,1490,1430,1380,1359,1352,1329,1281,1224,1177,1139,1101,
+1057,1016,978,940,898,855,816,780,741,700,661,629,597,559,515,475,446,423,399,369,338,
+308,278,249,224,204,188,172,151,128,106,87,71,54,35,14,-5,-25,-45,-62,-75,-84,
+-95,-112,-134,-154,-167,-173,-173,-170,-163,-151,-143,-144,-155,-173,-193,-217,-248,-287,-328,-365,-397,
+-424,-449,-473,-497,-522,-546,-565,-578,-590,-606,-627,-650,-670,-686,-700,-714,-726,-735,-741,-744,-748,
+-756,-767,-780,-793,-807,-821,-836,-851,-865,-877,-891,-904,-917,-930,-946,-966,-986,-1003,-1022,-1043,-1066,
+-1087,-1102,-1113,-1125,-1140,-1157,-1172,-1189,-1206,-1223,-1237,-1248,-1261,-1277,-1293,-1305,-1313,-1319,-1325,-1328,-1328,
+-1328,-1330,-1334,-1337,-1337,-1332,-1325,-1316,-1305,-1295,-1289,-1284,-1275,-1260,-1244,-1230,-1222,-1215,-1208,-1199,-1192,
+-1185,-1178,-1171,-1165,-1160,-1153,-1144,-1136,-1130,-1126,-1121,-1110,-1096,-1086,-1081,-1081,-1081,-1078,-1073,-1069,-1067,
+-1065,-1061,-1055,-1050,-1046,-1045,-1042,-1035,-1024,-1015,-1011,-1010,-1006,-997,-986,-979,-976,-974,-971,-966,-960,
+-953,-945,-937,-930,-925,-920,-915,-908,-900,-892,-885,-880,-875,-866,-855,-843,-835,-830,-824,-815,-806,
+-800,-797,-793,-785,-775,-767,-761,-756,-749,-741,-734,-729,-724,-719,-712,-706,-700,-693,-683,-671,-659,
+-649,-641,-634,-626,-618,-610,-602,-592,-579,-568,-561,-558,-553,-540,-523,-508,-500,-498,-492,-481,-467,
+-455,-444,-433,-421,-415,-412,-409,-400,-388,-376,-368,-360,-349,-335,-322,-312,-302,-291,-281,-272,-263,
+-247,-225,-201,-180,-163,-147,-131,-112,-90,-63,-34,-6,14,27,36,43,49,56,64,75,85,
+92,95,95,97,99,103,108,115,124,134,146,161,178,195,207,213,217,224,238,261,287,
+311,332,352,377,407,438,465,487,505,522,539,560,586,617,653,692,733,770,799,818,836,
+863,902,946,980,1001,1017,1037,1067,1107,1152,1201,1252,1299,1344,1382,1414,1439,1466,1500,1539,1567,
+1574,1564,1539,1483,1370,1220,1125,1206,1516,1987,2486,2916,3259,3525,3692,3732,3667,3569,3484,3375,3178,
+2908,2682,2618,2703,2803,2788,2648,2480,2377,2357,2373,2380,2367,2351,2356,2394,2464,2540,2581,2559,2482,
+2388,2309,2255,2214,2180,2151,2122,2082,2027,1966,1912,1873,1841,1809,1778,1755,1740,1730,1713,1683,1639,
+1585,1532,1489,1457,1429,1399,1365,1332,1303,1275,1244,1207,1166,1122,1074,1026,984,953,933,917,896,
+857,800,732,667,612,565,519,470,424,383,345,307,277,269,289,316,322,293,238,168,81,
+-31,-166,-295,-390,-449,-497,-559,-636,-703,-739,-743,-731,-725,-733,-752,-776,-798,-815,-823,-824,-826,
+-839,-869,-911,-950,-972,-973,-958,-936,-912,-890,-868,-844,-811,-768,-720,-678,-649,-628,-604,-571,-528,
+-474,-405,-319,-230,-162,-133,-129,-120,-80,-14,48,79,73,48,24,17,28,50,75,98,120,
+147,180,216,245,263,275,290,315,348,381,403,411,405,395,391,397,414,433,449,459,464,
+468,474,481,491,504,523,547,576,605,633,660,687,714,740,763,783,802,823,844,865,885,
+904,924,944,963,983,1004,1024,1044,1063,1083,1104,1127,1148,1167,1185,1203,1223,1244,1263,1280,1297,
+1316,1337,1358,1377,1396,1418,1442,1466,1486,1502,1515,1527,1531,1525,1514,1506,1505,1508,1508,1502,1498,
+1498,1499,1496,1489,1486,1490,1498,1502,1500,1501,1508,1518,1525,1528,1533,1542,1554,1562,1569,1579,1595,
+1613,1631,1647,1665,1685,1706,1727,1749,1775,1801,1823,1839,1855,1871,1890,1911,1936,1970,2009,2039,2052,
+2060,2085,2140,2164,2231,2280,2305,2312,2306,2287,2263,2261,2317,2430,2548,2596,2534,2401,2280,2232,2255,
+2303,2333,2336,2328,2324,2328,2337,2350,2367,2388,2408,2427,2446,2466,2484,2499,2514,2534,2558,2578,2589,
+2591,2590,2590,2589,2586,2582,2586,2602,2625,2649,2675,2706,2746,2790,2828,2855,2879,2915,2968,3029,3081,
+3114,3126,3121,3104,3084,3075,3084,3110,3139,3165,3199,3261,3353,3448,3510,3521,3497,3464,3439,3421,3405,
+3392,3381,3370,3356,3342,3334,3334,3338,3340,3337,3329,3313,3294,3283,3287,3296,3289,3261,3236,3252,3319,
+3404,3455,3452,3413,3373,3355,3367,3411,3481,3549,3578,3547,3479,3410,3354,3292,3203,3099,3013,2958,2915,
+2855,2768,2664,2550,2425,2300,2199,2146,2138,2150,2160,2163,2163,2153,2126,2095,2081,2092,2110,2109,2077,
+2025,1954,1857,1735,1610,1517,1470,1453,1441,1425,1413,1409,1410,1411,1411,1415,1422,1429,1436,1443,1449,
+1458,1475,1508,1552,1587,1601,1604,1627,1689,1780,1870,1938,1982,2007,2018,2019,2018,2017,2009,1982,1938,
+1895,1867,1850,1826,1785,1733,1682,1638,1599,1571,1554,1545,1535,1519,1503,1491,1479,1461,1440,1427,1428,
+1436,1445,1455,1470,1489,1505,1515,1526,1544,1563,1573,1570,1564,1558,1550,1533,1514,1502,1500,1496,1484,
+1472,1471,1481,1494,1511,1541,1583,1618,1626,1609,1584,1563,1534,1486,1434,1403,1400,1400,1379,1339,1305,
+1288,1271,1235,1187,1149,1135,1133,1126,1113,1105,1104,1101,1088,1071,1059,1051,1038,1016,993,974,958,
+935,905,874,847,823,798,770,741,713,685,656,627,598,568,537,508,481,455,424,389,355,
+327,302,273,239,206,179,157,132,102,71,44,16,-18,-64,-112,-154,-192,-232,-279,-333,-385,
+-433,-481,-533,-590,-648,-703,-754,-803,-851,-895,-933,-968,-1005,-1048,-1097,-1150,-1204,-1255,-1304,-1352,-1396,
+-1434,-1466,-1495,-1527,-1569,-1620,-1671,-1713,-1745,-1772,-1802,-1837,-1876,-1912,-1940,-1958,-1968,-1979,-2002,-2037,-2077,
+-2114,-2149,-2191,-2248,-2315,-2382,-2438,-2485,-2532,-2588,-2659,-2735,-2802,-2845,-2862,-2866,-2877,-2904,-2941,-2976,-3004,
+-3028,-3051,-3072,-3092,-3115,-3146,-3186,-3228,-3268,-3311,-3361,-3413,-3454,-3479,-3493,-3505,-3518,-3532,-3547,-3566,-3590,
+-3616,-3642,-3670,-3704,-3743,-3776,-3792,-3794,-3791,-3794,-3802,-3807,-3803,-3799,-3813,-3854,-3904,-3929,-3916,-3889,-3891,
+-3932,-3977,-3984,-3954,-3928,-3938,-3970,-3984,-3965,-3939,-3939,-3964,-3988,-3997,-4001,-4013,-4025,-4022,-4007,-3997,-4000,
+-4003,-3990,-3965,-3942,-3926,-3904,-3873,-3840,-3811,-3784,-3747,-3706,-3675,-3658,-3645,-3625,-3592,-3534,-3425,-3254,-3065,
+-2943,-2944,-3028,-3083,-3022,-2858,-2678,-2557,-2503,-2479,-2456,-2434,-2422,-2415,-2400,-2373,-2340,-2310,-2290,-2283,-2290,
+-2304,-2312,-2306,-2286,-2265,-2248,-2233,-2218,-2201,-2182,-2163,-2149,-2152,-2171,-2184,-2156,-2068,-1949,-1855,-1828,-1856,
+-1893,-1901,-1876,-1844,-1821,-1807,-1794,-1785,-1795,-1828,-1871,-1897,-1888,-1844,-1780,-1714,-1654,-1600,-1546,-1486,-1414,
+-1323,-1212,-1086,-958,-843,-745,-661,-588,-524,-472,-426,-378,-323,-267,-222,-192,-162,-117,-49,32,113,
+185,250,314,385,463,540,609,664,712,771,858,976,1102,1200,1245,1239,1217,1214,1251,1320,1400,
+1478,1550,1617,1675,1719,1751,1782,1818,1861,1902,1939,1973,2005,2037,2072,2112,2159,2208,2257,2304,2355,
+2411,2467,2516,2560,2603,2648,2687,2708,2713,2711,2720,2754,2820,2916,3029,3137,3222,3281,3328,3379,3434,
+3477,3492,3479,3456,3441,3429,3388,3283,3114,2931,2807,2778,2816,2853,2849,2821,2820,2871,2942,2979,2964,
+2937,2952,3023,3108,3151,3138,3104,3097,3133,3189,3234,3262,3287,3321,3359,3389,3410,3433,3463,3495,3520,
+3535,3547,3561,3570,3568,3556,3543,3533,3524,3515,3510,3516,3533,3558,3590,3634,3686,3734,3769,3802,3861,
+3957,4067,4146,4168,4150,4134,4151,4196,4243,4277,4301,4323,4346,4368,4391,4417,4443,4461,4468,4474,4496,
+4534,4569,4578,4556,4518,4480,4451,4432,4425,4432,4449,4464,4471,4471,4471,4474,4478,4482,4486,4492,4498,
+4504,4509,4517,4523,4529,4544,4583,4646,4706,4730,4705,4654,4615,4596,4556,4432,4193,3863,3489,3107,2731,
+2391,2160,2118,2280,2555,2810,2966,3038,3080,3110,3106,3062,3023,3038,3091,3107,3026,2871,2722,2633,2598,
+2575,2534,2480,2423,2368,2316,2270,2226,2178,2123,2069,2026,1989,1943,1884,1827,1783,1742,1689,1623,1569,
+1539,1513,1465,1396,1337,1315,1318,1312,1276,1221,1170,1131,1095,1055,1014,975,939,902,862,821,779,
+736,694,658,627,596,559,516,475,440,412,388,364,339,308,273,237,208,189,177,163,144,
+122,103,89,76,61,43,22,1,-18,-35,-51,-65,-77,-90,-106,-127,-149,-166,-174,-171,-163,
+-154,-148,-148,-155,-167,-183,-200,-221,-250,-284,-320,-354,-384,-413,-441,-468,-496,-525,-554,-578,-597,
+-614,-633,-655,-677,-696,-710,-722,-734,-749,-763,-774,-779,-780,-781,-784,-792,-805,-820,-836,-852,-864,
+-873,-880,-888,-900,-917,-935,-954,-971,-984,-997,-1014,-1034,-1054,-1071,-1083,-1096,-1111,-1128,-1146,-1162,-1180,
+-1198,-1214,-1226,-1237,-1252,-1268,-1283,-1293,-1300,-1307,-1315,-1319,-1319,-1319,-1322,-1329,-1334,-1335,-1330,-1322,-1313,
+-1304,-1297,-1291,-1284,-1272,-1255,-1237,-1224,-1215,-1209,-1203,-1194,-1184,-1173,-1163,-1156,-1152,-1149,-1144,-1136,-1127,
+-1120,-1115,-1110,-1101,-1090,-1081,-1075,-1074,-1074,-1073,-1070,-1067,-1064,-1062,-1059,-1055,-1052,-1051,-1052,-1050,-1043,
+-1032,-1024,-1019,-1016,-1012,-1004,-998,-993,-989,-985,-980,-975,-970,-963,-955,-949,-944,-939,-934,-929,-924,
+-918,-910,-901,-893,-886,-878,-867,-856,-849,-846,-843,-836,-826,-818,-814,-810,-804,-795,-787,-781,-776,
+-768,-760,-753,-747,-741,-733,-726,-721,-716,-709,-700,-690,-678,-668,-660,-653,-645,-638,-631,-623,-613,
+-601,-588,-579,-572,-566,-554,-538,-525,-518,-515,-508,-496,-483,-473,-465,-456,-444,-436,-432,-428,-419,
+-407,-396,-390,-383,-371,-355,-341,-330,-322,-311,-299,-288,-277,-262,-242,-219,-199,-182,-165,-146,-126,
+-105,-84,-61,-36,-14,4,18,28,36,41,47,55,64,71,72,70,70,75,85,96,104,
+112,124,140,158,173,182,187,191,200,213,229,246,267,291,317,342,366,390,416,443,468,
+488,507,526,550,578,610,649,692,737,772,794,806,821,849,887,928,961,988,1013,1040,1071,
+1107,1147,1191,1234,1276,1314,1351,1382,1411,1443,1484,1526,1554,1558,1546,1520,1460,1342,1194,1120,1237,
+1576,2051,2528,2929,3249,3496,3643,3660,3575,3460,3354,3216,2989,2701,2475,2415,2498,2598,2608,2530,2445,
+2414,2426,2430,2398,2349,2319,2340,2415,2521,2610,2632,2570,2456,2340,2257,2206,2168,2132,2098,2065,2025,
+1975,1920,1872,1835,1804,1778,1757,1744,1738,1731,1715,1686,1643,1590,1537,1494,1463,1440,1419,1397,1375,
+1354,1330,1303,1272,1237,1198,1155,1110,1070,1039,1015,992,963,921,864,801,741,689,641,588,526,
+464,407,359,318,290,284,298,315,308,268,204,126,33,-80,-207,-322,-406,-462,-513,-578,-652,
+-713,-747,-755,-749,-742,-741,-748,-763,-780,-796,-804,-805,-806,-817,-844,-883,-922,-949,-956,-946,-926,
+-903,-883,-864,-842,-810,-763,-709,-660,-624,-599,-573,-537,-490,-431,-359,-272,-182,-110,-68,-50,-33,
+2,55,108,141,150,138,115,92,79,80,94,112,134,159,192,228,260,283,299,316,342,
+379,421,455,469,461,439,421,419,436,462,484,498,502,505,511,523,541,560,580,603,628,
+656,682,706,728,750,773,796,815,834,853,875,897,918,938,958,978,998,1018,1038,1058,1078,
+1097,1115,1136,1159,1181,1201,1221,1241,1262,1282,1300,1316,1333,1353,1376,1395,1411,1425,1441,1462,1485,
+1505,1522,1536,1545,1547,1540,1526,1515,1512,1514,1516,1515,1514,1513,1512,1507,1500,1497,1500,1503,1504,
+1503,1506,1514,1522,1527,1529,1534,1542,1551,1557,1563,1574,1591,1611,1630,1648,1670,1692,1713,1729,1747,
+1768,1792,1813,1828,1839,1853,1873,1901,1936,1975,2010,2033,2046,2063,2102,2164,2180,2217,2238,2254,2271,
+2279,2264,2234,2233,2301,2433,2562,2605,2533,2393,2274,2232,2259,2303,2324,2318,2305,2301,2310,2324,2341,
+2361,2382,2402,2420,2438,2456,2474,2488,2503,2524,2550,2575,2590,2594,2591,2585,2581,2576,2574,2579,2595,
+2620,2649,2679,2710,2746,2785,2820,2846,2865,2884,2912,2949,2991,3035,3076,3104,3110,3095,3077,3076,3094,
+3121,3144,3172,3224,3306,3395,3456,3476,3467,3456,3451,3447,3436,3420,3407,3401,3400,3401,3405,3407,3404,
+3394,3379,3365,3349,3334,3328,3337,3350,3348,3320,3288,3286,3330,3398,3448,3457,3438,3418,3414,3432,3471,
+3524,3569,3574,3524,3439,3356,3292,3237,3174,3101,3030,2964,2887,2789,2674,2557,2443,2328,2221,2145,2122,
+2143,2177,2199,2203,2196,2180,2155,2133,2130,2148,2170,2172,2145,2091,2012,1904,1775,1652,1567,1524,1506,
+1490,1473,1464,1466,1473,1476,1475,1477,1485,1496,1503,1506,1507,1516,1541,1583,1627,1656,1670,1693,1750,
+1843,1943,2019,2062,2084,2099,2106,2105,2101,2098,2087,2060,2019,1980,1959,1945,1920,1872,1809,1749,1700,
+1663,1638,1624,1614,1600,1584,1570,1564,1557,1541,1520,1507,1510,1519,1525,1525,1528,1538,1551,1564,1583,
+1609,1635,1648,1648,1643,1643,1645,1639,1628,1617,1608,1595,1578,1567,1571,1589,1612,1637,1666,1695,1707,
+1693,1664,1639,1621,1592,1539,1480,1445,1437,1431,1403,1360,1329,1318,1306,1272,1225,1193,1187,1191,1188,
+1177,1170,1169,1163,1145,1121,1105,1097,1087,1067,1043,1020,998,973,946,920,897,874,846,816,788,
+763,736,707,678,652,624,592,558,526,498,469,436,401,372,347,322,293,262,232,205,178,
+150,125,102,74,38,-5,-48,-87,-124,-165,-213,-263,-312,-360,-410,-465,-524,-581,-635,-685,-732,
+-777,-821,-863,-905,-946,-991,-1041,-1092,-1141,-1185,-1227,-1270,-1316,-1358,-1392,-1421,-1455,-1501,-1555,-1606,-1645,
+-1672,-1699,-1734,-1778,-1823,-1860,-1882,-1889,-1892,-1903,-1929,-1968,-2012,-2055,-2096,-2142,-2196,-2256,-2315,-2371,-2421,
+-2470,-2522,-2581,-2645,-2698,-2726,-2726,-2721,-2732,-2767,-2809,-2843,-2866,-2891,-2926,-2966,-3004,-3039,-3081,-3135,-3194,
+-3248,-3295,-3338,-3380,-3418,-3447,-3466,-3477,-3486,-3499,-3519,-3545,-3571,-3591,-3608,-3633,-3673,-3722,-3761,-3777,-3772,
+-3763,-3768,-3788,-3808,-3814,-3812,-3823,-3862,-3912,-3937,-3923,-3897,-3905,-3954,-4004,-4007,-3965,-3929,-3939,-3980,-4005,
+-3994,-3970,-3968,-3990,-4009,-4011,-4009,-4019,-4032,-4031,-4016,-4005,-4007,-4009,-3998,-3975,-3955,-3940,-3921,-3892,-3859,
+-3832,-3807,-3775,-3740,-3712,-3695,-3676,-3650,-3625,-3594,-3524,-3378,-3181,-3024,-2996,-3080,-3158,-3116,-2946,-2741,-2599,
+-2543,-2527,-2505,-2473,-2450,-2444,-2439,-2426,-2404,-2385,-2372,-2364,-2360,-2358,-2353,-2340,-2318,-2293,-2270,-2253,-2242,
+-2233,-2227,-2225,-2230,-2244,-2259,-2247,-2184,-2072,-1954,-1886,-1891,-1938,-1973,-1964,-1925,-1886,-1864,-1853,-1840,-1831,
+-1841,-1878,-1924,-1951,-1939,-1892,-1826,-1761,-1703,-1650,-1594,-1532,-1460,-1374,-1270,-1151,-1025,-906,-804,-721,-655,
+-600,-555,-514,-472,-429,-386,-347,-306,-257,-192,-114,-30,51,128,200,268,336,408,484,557,622,
+682,757,862,992,1118,1200,1219,1191,1155,1149,1188,1262,1348,1431,1504,1570,1629,1680,1721,1751,1772,
+1789,1808,1834,1864,1891,1915,1944,1991,2056,2127,2188,2240,2294,2360,2428,2486,2525,2556,2589,2624,2650,
+2660,2664,2680,2723,2793,2883,2982,3078,3162,3230,3288,3344,3395,3427,3427,3396,3358,3337,3324,3276,3154,
+2966,2782,2683,2692,2754,2787,2761,2726,2756,2866,2992,3051,3019,2949,2917,2950,3011,3046,3038,3015,3018,
+3059,3118,3169,3209,3247,3290,3329,3353,3364,3374,3391,3415,3437,3458,3480,3499,3508,3504,3493,3484,3478,
+3468,3452,3440,3442,3460,3487,3520,3565,3619,3669,3703,3731,3782,3876,3988,4071,4094,4075,4061,4082,4130,
+4179,4211,4234,4254,4274,4292,4312,4340,4371,4391,4397,4407,4440,4495,4544,4557,4530,4485,4444,4416,4400,
+4394,4398,4408,4417,4421,4422,4422,4424,4427,4434,4446,4459,4469,4474,4479,4487,4495,4503,4523,4571,4638,
+4692,4700,4662,4613,4585,4565,4498,4335,4064,3711,3313,2894,2492,2176,2033,2110,2357,2649,2870,2987,3043,
+3086,3115,3098,3037,2984,2984,3025,3040,2980,2857,2727,2629,2563,2512,2465,2422,2380,2334,2285,2240,2201,
+2157,2102,2046,1999,1959,1912,1854,1798,1757,1719,1668,1603,1547,1514,1485,1433,1356,1289,1265,1278,1288,
+1267,1217,1165,1125,1093,1057,1014,971,932,896,857,815,770,727,689,657,627,596,560,522,482,
+443,407,379,358,337,309,271,231,198,177,163,151,138,122,107,91,76,61,44,25,5,
+-14,-30,-45,-61,-76,-89,-102,-118,-137,-157,-168,-167,-157,-147,-145,-152,-166,-182,-197,-212,-230,
+-253,-281,-310,-341,-372,-404,-437,-469,-499,-529,-559,-587,-613,-637,-659,-681,-700,-717,-730,-741,-754,
+-769,-784,-796,-804,-807,-807,-807,-809,-816,-828,-844,-860,-875,-886,-893,-898,-906,-920,-939,-958,-974,
+-986,-998,-1015,-1034,-1051,-1064,-1076,-1090,-1108,-1127,-1144,-1161,-1177,-1194,-1207,-1218,-1229,-1243,-1258,-1269,-1277,
+-1284,-1294,-1304,-1309,-1308,-1307,-1309,-1315,-1320,-1320,-1316,-1310,-1304,-1298,-1291,-1283,-1273,-1259,-1243,-1228,-1217,
+-1209,-1202,-1194,-1184,-1172,-1160,-1149,-1142,-1140,-1140,-1138,-1132,-1124,-1117,-1110,-1104,-1096,-1087,-1079,-1074,-1071,
+-1071,-1072,-1071,-1069,-1066,-1062,-1059,-1055,-1053,-1055,-1057,-1056,-1051,-1043,-1036,-1031,-1026,-1018,-1012,-1008,-1005,
+-1000,-994,-988,-984,-981,-976,-969,-964,-960,-955,-946,-938,-934,-931,-926,-916,-906,-898,-891,-881,-870,
+-862,-859,-857,-852,-843,-834,-828,-824,-818,-810,-803,-797,-791,-784,-777,-771,-765,-757,-747,-737,-730,
+-724,-719,-712,-704,-695,-686,-677,-671,-665,-658,-649,-639,-629,-618,-606,-594,-584,-575,-565,-554,-544,
+-538,-534,-527,-515,-503,-494,-488,-481,-470,-460,-453,-447,-437,-424,-414,-409,-405,-395,-379,-363,-353,
+-346,-336,-323,-309,-296,-281,-261,-239,-219,-201,-182,-160,-138,-119,-104,-88,-68,-47,-25,-7,8,
+18,22,24,28,36,46,50,49,49,55,67,81,91,99,110,124,140,152,158,163,172,
+186,203,218,231,247,271,300,328,351,371,395,421,448,471,492,515,543,574,610,651,698,
+741,771,785,792,808,837,874,910,943,975,1009,1042,1073,1107,1144,1184,1219,1250,1281,1316,1352,
+1388,1430,1480,1528,1556,1560,1548,1522,1456,1329,1179,1121,1265,1624,2093,2539,2902,3194,3425,3561,3565,
+3465,3332,3205,3049,2817,2541,2336,2285,2360,2452,2480,2456,2442,2467,2500,2493,2439,2373,2345,2380,2472,
+2585,2665,2666,2583,2452,2326,2235,2175,2130,2088,2049,2012,1971,1924,1874,1830,1793,1765,1745,1734,1731,
+1729,1721,1706,1683,1648,1602,1551,1505,1470,1448,1434,1425,1415,1402,1381,1355,1327,1300,1271,1239,1204,
+1171,1141,1113,1082,1044,998,942,880,818,762,708,649,583,515,455,404,362,330,315,313,308,
+277,213,126,28,-74,-184,-294,-386,-451,-498,-544,-601,-663,-715,-749,-768,-774,-771,-764,-758,-761,
+-772,-786,-795,-796,-796,-802,-822,-855,-892,-920,-931,-926,-911,-892,-875,-859,-840,-809,-762,-704,-647,
+-603,-573,-548,-516,-471,-412,-339,-255,-169,-93,-37,0,30,62,98,137,176,209,225,218,190,
+156,133,128,136,153,175,204,236,266,291,310,329,356,395,442,486,511,507,481,453,442,
+454,478,502,517,525,532,542,559,581,605,628,651,676,703,729,750,769,787,809,831,851,
+869,889,912,937,960,981,1001,1020,1039,1058,1077,1097,1118,1138,1157,1175,1196,1217,1238,1257,1277,
+1296,1314,1330,1345,1361,1381,1402,1420,1434,1445,1460,1480,1503,1524,1542,1555,1563,1563,1555,1541,1528,
+1521,1521,1523,1524,1523,1520,1517,1513,1510,1508,1508,1508,1507,1508,1512,1517,1521,1522,1524,1531,1540,
+1546,1549,1554,1566,1584,1604,1625,1647,1672,1697,1718,1735,1751,1771,1792,1809,1820,1829,1844,1868,1900,
+1935,1967,1993,2015,2041,2079,2130,2180,2159,2157,2152,2163,2187,2204,2196,2180,2199,2284,2413,2518,2535,
+2456,2339,2258,2245,2277,2308,2311,2294,2280,2281,2294,2311,2330,2353,2376,2395,2409,2422,2440,2460,2477,
+2493,2511,2535,2562,2583,2591,2587,2579,2572,2569,2569,2577,2594,2621,2653,2685,2715,2745,2779,2813,2841,
+2858,2865,2869,2880,2907,2957,3022,3082,3112,3107,3083,3068,3078,3105,3134,3161,3199,3253,3311,3353,3373,
+3386,3408,3439,3464,3468,3456,3441,3436,3444,3460,3476,3484,3479,3462,3440,3420,3403,3389,3384,3391,3404,
+3403,3379,3346,3332,3357,3407,3453,3475,3476,3475,3486,3512,3549,3587,3606,3583,3510,3409,3315,3249,3205,
+3164,3112,3042,2949,2831,2699,2573,2466,2374,2283,2198,2142,2133,2164,2202,2225,2227,2217,2204,2188,2177,
+2180,2197,2215,2216,2190,2134,2047,1930,1801,1688,1615,1579,1559,1539,1520,1513,1520,1530,1535,1536,1539,
+1547,1558,1564,1565,1568,1582,1614,1657,1696,1721,1744,1794,1886,2000,2097,2149,2164,2169,2175,2180,2176,
+2169,2163,2153,2130,2095,2063,2045,2031,2001,1947,1880,1817,1767,1730,1705,1689,1679,1666,1652,1644,1641,
+1637,1623,1603,1592,1595,1600,1596,1585,1579,1587,1604,1625,1647,1674,1698,1713,1718,1721,1729,1736,1738,
+1732,1723,1709,1691,1673,1671,1690,1722,1751,1771,1783,1787,1775,1746,1717,1705,1703,1680,1621,1547,1498,
+1481,1472,1443,1400,1367,1356,1345,1314,1273,1247,1245,1253,1249,1236,1225,1222,1213,1193,1167,1150,1141,
+1132,1112,1087,1063,1041,1017,994,971,950,924,893,862,837,814,788,757,727,702,676,645,607,
+572,543,515,484,450,419,395,372,346,316,284,254,227,202,180,157,129,94,54,16,-20,
+-60,-104,-150,-195,-240,-288,-342,-401,-458,-514,-567,-618,-664,-707,-751,-797,-844,-891,-936,-984,-1033,
+-1078,-1116,-1152,-1194,-1241,-1285,-1321,-1350,-1385,-1434,-1489,-1539,-1574,-1601,-1632,-1676,-1729,-1779,-1814,-1826,-1818,
+-1806,-1806,-1829,-1872,-1927,-1986,-2047,-2108,-2166,-2219,-2271,-2325,-2380,-2433,-2482,-2533,-2587,-2634,-2658,-2661,-2663,
+-2684,-2724,-2763,-2781,-2786,-2797,-2829,-2875,-2920,-2963,-3015,-3085,-3165,-3236,-3287,-3320,-3347,-3376,-3405,-3429,-3443,
+-3450,-3461,-3486,-3520,-3551,-3571,-3583,-3604,-3647,-3701,-3744,-3758,-3746,-3734,-3745,-3779,-3819,-3839,-3841,-3846,-3875,
+-3918,-3943,-3934,-3912,-3920,-3966,-4010,-4005,-3956,-3916,-3929,-3980,-4018,-4016,-3998,-3997,-4015,-4027,-4021,-4011,-4015,
+-4028,-4031,-4021,-4010,-4011,-4011,-4000,-3980,-3964,-3954,-3939,-3912,-3880,-3854,-3832,-3804,-3773,-3751,-3735,-3711,-3673,
+-3636,-3607,-3557,-3439,-3261,-3104,-3062,-3136,-3214,-3174,-2998,-2782,-2634,-2582,-2573,-2550,-2509,-2478,-2471,-2475,-2470,
+-2455,-2443,-2437,-2433,-2423,-2405,-2385,-2365,-2345,-2325,-2305,-2287,-2272,-2264,-2268,-2285,-2309,-2331,-2332,-2292,-2203,
+-2085,-1983,-1938,-1957,-2002,-2025,-2009,-1971,-1939,-1920,-1902,-1878,-1863,-1876,-1919,-1969,-1994,-1978,-1925,-1858,-1793,
+-1737,-1686,-1636,-1579,-1514,-1436,-1341,-1229,-1105,-984,-879,-798,-738,-692,-652,-614,-578,-543,-509,-471,-418,
+-346,-260,-171,-85,-1,82,163,234,297,359,428,501,570,639,725,844,983,1102,1161,1151,1104,
+1068,1078,1135,1221,1312,1394,1463,1523,1579,1631,1676,1703,1710,1704,1701,1715,1742,1768,1788,1814,1863,
+1939,2023,2096,2157,2222,2302,2387,2454,2491,2511,2532,2561,2591,2614,2635,2669,2722,2790,2862,2934,3006,
+3078,3148,3216,3284,3344,3380,3375,3330,3272,3232,3205,3151,3025,2841,2670,2594,2626,2695,2719,2681,2648,
+2701,2845,2997,3061,3015,2919,2860,2869,2915,2947,2947,2938,2956,3008,3075,3132,3172,3206,3243,3280,3306,
+3319,3323,3329,3339,3357,3383,3414,3441,3451,3444,3432,3424,3420,3409,3391,3378,3381,3401,3425,3449,3486,
+3543,3605,3650,3676,3710,3784,3888,3979,4018,4013,4006,4028,4075,4121,4153,4174,4191,4206,4218,4235,4265,
+4300,4325,4335,4350,4391,4455,4507,4517,4485,4436,4398,4378,4370,4368,4369,4372,4375,4375,4375,4376,4379,
+4385,4395,4410,4426,4437,4446,4456,4467,4476,4483,4506,4559,4627,4671,4662,4615,4575,4560,4537,4439,4224,
+3901,3510,3082,2647,2259,2005,1965,2141,2439,2725,2912,3003,3053,3095,3116,3089,3020,2954,2926,2930,2929,
+2899,2841,2769,2683,2585,2486,2409,2362,2331,2295,2250,2209,2175,2137,2084,2023,1969,1925,1880,1826,1773,
+1731,1693,1644,1583,1528,1492,1460,1405,1326,1255,1227,1240,1258,1247,1205,1155,1117,1089,1057,1012,963,
+919,881,845,804,759,719,687,660,631,599,565,530,493,451,409,374,350,332,308,275,236,
+201,174,154,141,133,126,113,95,74,57,42,26,7,-11,-27,-41,-57,-75,-92,-103,-113,
+-127,-146,-160,-162,-154,-146,-147,-158,-176,-195,-213,-230,-249,-268,-289,-310,-335,-365,-399,-437,-474,
+-507,-536,-564,-592,-621,-648,-673,-693,-711,-727,-742,-758,-774,-788,-799,-808,-817,-825,-830,-831,-830,
+-831,-837,-848,-864,-882,-898,-909,-915,-919,-927,-941,-958,-973,-987,-1003,-1022,-1042,-1058,-1069,-1080,-1096,
+-1114,-1132,-1148,-1164,-1179,-1193,-1203,-1211,-1222,-1235,-1246,-1254,-1261,-1270,-1283,-1294,-1299,-1297,-1295,-1295,-1298,
+-1299,-1298,-1294,-1291,-1288,-1282,-1275,-1266,-1255,-1244,-1232,-1221,-1212,-1203,-1194,-1185,-1176,-1167,-1155,-1144,-1136,
+-1132,-1131,-1131,-1129,-1127,-1123,-1116,-1108,-1098,-1089,-1082,-1077,-1074,-1074,-1075,-1076,-1074,-1071,-1067,-1062,-1058,
+-1057,-1058,-1061,-1061,-1057,-1052,-1049,-1046,-1041,-1033,-1027,-1024,-1021,-1015,-1006,-999,-996,-993,-988,-983,-980,
+-977,-971,-959,-946,-940,-939,-936,-927,-916,-909,-905,-898,-887,-876,-870,-867,-862,-855,-847,-841,-836,
+-830,-823,-817,-811,-805,-798,-791,-787,-781,-773,-761,-750,-741,-734,-727,-720,-714,-706,-697,-688,-682,
+-678,-672,-662,-649,-639,-630,-621,-609,-597,-588,-581,-573,-565,-559,-554,-548,-537,-526,-517,-511,-503,
+-493,-482,-475,-469,-458,-444,-433,-430,-429,-420,-404,-386,-374,-366,-356,-344,-330,-317,-301,-280,-257,
+-236,-217,-198,-175,-153,-135,-123,-110,-93,-73,-53,-35,-18,-6,-2,-4,-3,3,17,28,33,
+34,40,51,65,76,85,92,102,112,122,131,142,157,175,192,206,220,239,264,292,318,
+339,360,385,412,438,460,480,504,534,567,605,648,694,731,751,758,764,785,819,857,892,
+925,962,1000,1033,1063,1096,1137,1178,1210,1235,1262,1298,1339,1381,1429,1484,1535,1565,1571,1563,1538,
+1466,1327,1172,1123,1288,1660,2122,2542,2875,3147,3368,3497,3490,3373,3224,3086,2932,2720,2478,2302,2261,
+2327,2408,2444,2449,2473,2522,2557,2540,2479,2419,2408,2461,2557,2654,2706,2681,2585,2455,2331,2235,2165,
+2110,2062,2019,1977,1933,1887,1842,1801,1766,1738,1721,1716,1717,1714,1705,1692,1677,1655,1621,1577,1531,
+1494,1469,1456,1451,1448,1439,1421,1394,1368,1345,1325,1302,1276,1250,1223,1193,1157,1115,1066,1008,941,
+871,806,746,684,618,552,497,453,418,385,354,321,275,204,108,0,-107,-208,-304,-390,-456,
+-500,-530,-563,-604,-651,-696,-736,-770,-792,-798,-791,-780,-776,-782,-792,-797,-794,-787,-787,-800,-831,
+-869,-901,-915,-910,-893,-873,-855,-840,-823,-797,-756,-703,-645,-597,-563,-537,-507,-466,-411,-342,-265,
+-184,-107,-40,16,60,92,117,145,185,234,277,292,277,244,212,194,189,194,207,225,246,
+267,287,308,331,359,397,446,495,528,531,508,480,468,476,495,514,528,540,553,568,587,
+610,636,662,687,712,738,764,787,805,825,846,869,889,908,929,954,981,1005,1025,1044,1062,
+1080,1097,1114,1135,1157,1178,1195,1212,1231,1252,1274,1293,1309,1325,1341,1356,1370,1385,1403,1421,1437,
+1451,1463,1479,1498,1521,1543,1561,1574,1581,1581,1573,1561,1546,1534,1528,1528,1529,1528,1523,1519,1516,
+1517,1517,1515,1510,1508,1510,1514,1516,1515,1515,1520,1530,1539,1544,1546,1553,1568,1586,1605,1623,1645,
+1669,1694,1716,1736,1757,1778,1798,1813,1823,1834,1850,1874,1900,1926,1949,1974,2007,2051,2101,2141,2159,
+2094,2070,2067,2089,2118,2129,2124,2134,2191,2295,2402,2453,2423,2341,2265,2240,2264,2299,2311,2297,2275,
+2266,2272,2284,2298,2316,2340,2366,2383,2390,2399,2418,2446,2472,2487,2498,2515,2540,2564,2577,2576,2568,
+2561,2560,2564,2575,2595,2625,2660,2691,2717,2741,2769,2800,2830,2850,2855,2849,2843,2856,2902,2976,3054,
+3104,3111,3088,3064,3064,3088,3124,3159,3189,3214,3233,3245,3259,3291,3349,3421,3482,3513,3513,3498,3486,
+3490,3506,3526,3539,3539,3526,3504,3482,3461,3445,3438,3443,3452,3452,3433,3404,3386,3395,3429,3469,3498,
+3514,3523,3538,3562,3592,3614,3605,3551,3456,3348,3258,3203,3174,3149,3104,3025,2906,2762,2619,2505,2425,
+2363,2297,2230,2182,2173,2195,2226,2244,2247,2242,2237,2232,2228,2228,2234,2241,2238,2215,2163,2075,1959,
+1835,1732,1668,1633,1610,1587,1569,1564,1572,1584,1592,1597,1601,1607,1615,1621,1626,1636,1657,1692,1732,
+1765,1791,1829,1905,2019,2138,2218,2247,2245,2243,2250,2254,2248,2236,2228,2219,2198,2166,2135,2112,2090,
+2052,1996,1933,1877,1832,1796,1769,1753,1743,1732,1722,1715,1714,1712,1702,1689,1682,1681,1675,1659,1640,
+1635,1649,1675,1701,1722,1741,1760,1776,1789,1801,1810,1814,1812,1809,1806,1797,1780,1766,1774,1809,1852,
+1879,1883,1874,1861,1837,1804,1780,1781,1792,1775,1707,1614,1543,1515,1506,1484,1444,1411,1396,1385,1360,
+1326,1305,1306,1311,1305,1287,1272,1265,1256,1237,1214,1197,1186,1174,1153,1130,1108,1089,1068,1043,1019,
+995,968,938,910,888,866,837,803,771,745,722,692,656,620,590,563,533,501,471,447,425,
+398,368,337,309,284,260,237,212,183,150,116,81,44,1,-44,-88,-128,-169,-219,-277,-336,
+-391,-444,-498,-551,-598,-640,-682,-731,-783,-832,-877,-921,-966,-1009,-1047,-1082,-1123,-1169,-1213,-1248,-1279,
+-1317,-1369,-1425,-1471,-1504,-1532,-1569,-1619,-1675,-1726,-1757,-1763,-1746,-1723,-1713,-1730,-1774,-1839,-1917,-2000,-2078,
+-2144,-2195,-2243,-2297,-2357,-2415,-2467,-2517,-2572,-2625,-2664,-2687,-2709,-2746,-2791,-2823,-2824,-2806,-2795,-2810,-2841,
+-2876,-2910,-2955,-3023,-3106,-3186,-3245,-3283,-3309,-3338,-3372,-3404,-3423,-3430,-3437,-3459,-3496,-3532,-3556,-3571,-3594,
+-3637,-3690,-3729,-3738,-3721,-3706,-3719,-3763,-3818,-3856,-3867,-3871,-3890,-3927,-3954,-3951,-3932,-3934,-3970,-4006,-4001,
+-3956,-3921,-3936,-3988,-4029,-4032,-4016,-4015,-4032,-4044,-4035,-4020,-4018,-4026,-4028,-4018,-4009,-4009,-4008,-3997,-3978,
+-3965,-3959,-3949,-3925,-3898,-3878,-3861,-3835,-3804,-3782,-3770,-3748,-3703,-3650,-3606,-3556,-3462,-3315,-3181,-3142,-3203,
+-3264,-3212,-3029,-2810,-2665,-2620,-2618,-2598,-2554,-2518,-2510,-2513,-2506,-2487,-2473,-2471,-2471,-2459,-2434,-2405,-2384,
+-2372,-2363,-2351,-2334,-2316,-2310,-2323,-2354,-2387,-2402,-2383,-2324,-2233,-2134,-2057,-2023,-2029,-2048,-2053,-2038,-2015,
+-1995,-1972,-1939,-1900,-1881,-1900,-1951,-2003,-2023,-2001,-1944,-1875,-1810,-1754,-1708,-1667,-1623,-1571,-1503,-1413,-1301,
+-1177,-1055,-953,-881,-834,-800,-768,-730,-689,-651,-613,-568,-504,-417,-319,-223,-136,-51,36,124,199,
+259,315,378,447,512,577,662,786,932,1051,1097,1069,1014,989,1021,1098,1191,1280,1357,1422,1477,
+1524,1567,1607,1631,1632,1613,1596,1602,1629,1661,1685,1711,1759,1835,1924,2006,2079,2156,2247,2340,2411,
+2448,2464,2478,2503,2535,2570,2611,2663,2724,2787,2846,2901,2957,3017,3082,3153,3230,3303,3349,3346,3295,
+3224,3167,3125,3059,2929,2750,2592,2528,2565,2633,2654,2615,2583,2628,2752,2879,2927,2884,2808,2769,2791,
+2839,2868,2869,2870,2905,2978,3062,3125,3155,3169,3186,3214,3245,3265,3274,3275,3279,3292,3318,3352,3381,
+3393,3386,3373,3365,3362,3353,3337,3326,3333,3353,3368,3378,3402,3462,3545,3614,3649,3669,3715,3800,3892,
+3948,3959,3956,3972,4013,4058,4091,4112,4129,4141,4152,4171,4203,4242,4269,4283,4303,4347,4409,4455,4457,
+4419,4371,4340,4329,4329,4332,4336,4341,4343,4341,4337,4337,4342,4351,4364,4378,4390,4400,4413,4431,4449,
+4459,4466,4490,4544,4609,4640,4617,4566,4536,4535,4505,4370,4094,3708,3266,2815,2394,2065,1909,1973,2215,
+2522,2775,2928,3007,3058,3097,3107,3073,3009,2941,2885,2842,2812,2804,2814,2813,2759,2640,2495,2378,2313,
+2282,2251,2210,2173,2145,2113,2062,1998,1939,1892,1849,1800,1748,1702,1663,1620,1568,1518,1479,1443,1388,
+1312,1241,1207,1213,1229,1223,1187,1142,1106,1079,1047,1001,948,903,869,838,800,758,720,690,666,
+638,606,572,539,504,460,414,373,345,324,304,277,246,212,179,149,130,124,123,116,97,
+74,55,42,29,11,-6,-19,-30,-47,-71,-94,-110,-119,-129,-145,-160,-166,-163,-159,-161,-173,
+-189,-208,-228,-249,-271,-291,-307,-323,-341,-367,-401,-441,-480,-514,-543,-569,-596,-624,-651,-676,-697,
+-715,-732,-751,-772,-791,-804,-812,-818,-827,-838,-848,-854,-855,-854,-856,-862,-873,-888,-906,-920,-929,
+-934,-939,-949,-961,-975,-989,-1007,-1028,-1049,-1065,-1076,-1087,-1101,-1117,-1132,-1147,-1163,-1178,-1189,-1195,-1202,
+-1211,-1223,-1232,-1238,-1245,-1257,-1271,-1282,-1285,-1283,-1281,-1282,-1282,-1280,-1276,-1273,-1270,-1266,-1260,-1254,-1247,
+-1240,-1232,-1223,-1213,-1203,-1192,-1183,-1176,-1172,-1167,-1160,-1150,-1139,-1131,-1126,-1123,-1124,-1126,-1128,-1124,-1115,
+-1104,-1094,-1088,-1083,-1080,-1080,-1080,-1080,-1078,-1075,-1072,-1069,-1064,-1062,-1062,-1065,-1065,-1063,-1060,-1059,-1059,
+-1057,-1051,-1047,-1044,-1040,-1032,-1021,-1014,-1010,-1006,-1000,-994,-992,-991,-986,-973,-958,-950,-947,-944,-935,
+-924,-918,-916,-910,-900,-887,-879,-874,-869,-863,-857,-852,-849,-843,-837,-832,-827,-822,-815,-808,-802,
+-796,-787,-776,-766,-759,-750,-740,-730,-721,-712,-702,-693,-687,-685,-681,-671,-658,-648,-641,-635,-624,
+-612,-604,-598,-592,-583,-574,-568,-563,-555,-544,-533,-524,-516,-507,-499,-493,-488,-479,-465,-454,-451,
+-450,-443,-426,-407,-392,-382,-373,-361,-348,-336,-320,-298,-273,-250,-232,-214,-193,-173,-156,-142,-127,
+-109,-89,-71,-56,-41,-29,-25,-28,-31,-26,-11,5,17,22,27,36,48,59,69,76,82,
+89,98,111,127,144,159,173,189,210,235,262,287,309,329,352,379,407,431,451,470,493,
+522,555,594,637,680,712,725,729,739,767,807,847,883,918,956,993,1022,1049,1085,1131,1177,
+1212,1239,1270,1310,1354,1397,1443,1496,1546,1577,1587,1583,1560,1481,1330,1167,1122,1298,1679,2137,2546,
+2871,3143,3366,3488,3464,3324,3156,3015,2876,2696,2491,2343,2311,2371,2447,2485,2500,2528,2570,2592,2563,
+2503,2462,2480,2557,2657,2730,2739,2676,2566,2444,2336,2246,2171,2106,2051,2004,1959,1912,1867,1828,1793,
+1760,1731,1713,1708,1708,1704,1693,1681,1672,1661,1641,1610,1574,1541,1515,1496,1485,1479,1470,1453,1428,
+1403,1382,1363,1342,1320,1297,1272,1243,1208,1165,1113,1049,974,896,824,760,699,635,575,529,500,
+475,439,382,304,206,92,-25,-135,-230,-312,-386,-448,-493,-518,-532,-549,-576,-613,-657,-705,-752,
+-789,-808,-810,-805,-802,-805,-809,-806,-794,-778,-769,-778,-809,-852,-889,-904,-895,-870,-841,-818,-804,
+-793,-777,-748,-705,-654,-606,-569,-540,-512,-477,-431,-373,-304,-227,-148,-70,0,58,98,122,143,
+175,222,271,304,313,304,286,267,250,239,237,243,254,265,280,301,327,359,399,447,498,
+533,538,519,496,488,497,512,525,537,552,571,591,611,634,663,692,719,743,767,793,817,
+840,862,886,910,932,951,973,998,1024,1047,1065,1082,1100,1118,1135,1153,1173,1194,1214,1230,1245,
+1264,1286,1307,1325,1339,1353,1369,1384,1399,1413,1428,1443,1459,1473,1487,1502,1520,1540,1561,1580,1592,
+1598,1596,1590,1578,1562,1546,1535,1534,1537,1537,1532,1525,1522,1523,1523,1517,1509,1505,1508,1513,1513,
+1512,1515,1525,1536,1543,1547,1552,1565,1582,1599,1612,1624,1642,1663,1685,1706,1730,1756,1782,1804,1820,
+1832,1845,1861,1878,1896,1914,1937,1973,2020,2071,2107,2113,2094,2011,2001,2032,2079,2105,2099,2094,2136,
+2237,2354,2421,2403,2324,2243,2212,2236,2282,2312,2309,2287,2268,2266,2274,2281,2289,2304,2330,2357,2371,
+2373,2379,2403,2442,2476,2491,2492,2496,2514,2539,2556,2560,2554,2548,2548,2555,2571,2597,2631,2665,2693,
+2713,2731,2751,2778,2806,2831,2845,2846,2841,2846,2880,2944,3023,3084,3107,3092,3062,3047,3061,3101,3150,
+3188,3204,3200,3190,3196,3238,3317,3416,3508,3566,3584,3572,3551,3537,3540,3553,3569,3577,3575,3559,3535,
+3508,3489,3483,3489,3498,3497,3482,3457,3433,3424,3436,3464,3496,3520,3530,3535,3543,3555,3556,3523,3449,
+3349,3253,3188,3156,3142,3120,3068,2974,2842,2694,2564,2475,2422,2381,2331,2274,2231,2217,2229,2249,2264,
+2271,2275,2279,2282,2282,2278,2274,2271,2267,2251,2208,2126,2014,1895,1796,1729,1688,1659,1636,1620,1617,
+1624,1636,1648,1657,1663,1667,1672,1682,1696,1716,1743,1777,1811,1842,1875,1930,2022,2141,2248,2308,2321,
+2316,2319,2331,2336,2327,2313,2303,2293,2271,2236,2198,2165,2131,2089,2039,1990,1949,1914,1880,1851,1832,
+1820,1808,1796,1787,1784,1783,1779,1773,1769,1763,1748,1723,1703,1704,1727,1759,1785,1801,1812,1824,1841,
+1861,1878,1883,1878,1870,1872,1881,1882,1866,1849,1859,1897,1940,1956,1946,1932,1924,1911,1884,1856,1850,
+1859,1842,1768,1660,1571,1534,1530,1519,1489,1456,1439,1427,1407,1378,1360,1360,1364,1356,1338,1322,1312,
+1302,1284,1262,1246,1233,1217,1195,1173,1155,1138,1116,1088,1059,1034,1010,984,959,937,913,883,847,
+814,789,766,738,703,669,640,612,583,552,524,500,475,446,416,390,368,345,320,293,265,
+236,205,174,141,103,60,15,-25,-63,-104,-156,-214,-271,-322,-373,-427,-483,-531,-572,-614,-664,
+-719,-770,-813,-852,-893,-935,-975,-1014,-1055,-1100,-1139,-1172,-1204,-1249,-1307,-1364,-1408,-1437,-1467,-1509,-1561,
+-1614,-1658,-1685,-1690,-1677,-1656,-1646,-1661,-1706,-1776,-1864,-1957,-2044,-2113,-2165,-2212,-2268,-2331,-2392,-2446,-2499,
+-2559,-2623,-2679,-2721,-2759,-2805,-2851,-2879,-2876,-2854,-2839,-2845,-2865,-2885,-2900,-2919,-2955,-3009,-3077,-3143,-3202,
+-3251,-3297,-3345,-3388,-3415,-3423,-3426,-3440,-3472,-3512,-3544,-3567,-3594,-3635,-3683,-3716,-3720,-3701,-3681,-3686,-3726,
+-3788,-3844,-3877,-3894,-3915,-3948,-3974,-3975,-3958,-3953,-3979,-4013,-4018,-3989,-3962,-3973,-4015,-4046,-4044,-4026,-4022,
+-4038,-4052,-4050,-4039,-4035,-4036,-4030,-4016,-4005,-4004,-4002,-3988,-3969,-3957,-3953,-3945,-3926,-3907,-3897,-3888,-3865,
+-3831,-3804,-3792,-3777,-3736,-3675,-3615,-3558,-3479,-3367,-3266,-3239,-3288,-3327,-3259,-3071,-2853,-2709,-2665,-2666,-2652,
+-2613,-2579,-2565,-2559,-2540,-2512,-2490,-2485,-2484,-2472,-2449,-2426,-2413,-2410,-2410,-2402,-2386,-2373,-2377,-2401,-2435,
+-2455,-2444,-2400,-2338,-2272,-2213,-2166,-2132,-2109,-2092,-2076,-2062,-2050,-2032,-1999,-1950,-1904,-1888,-1915,-1970,-2019,
+-2034,-2008,-1954,-1889,-1826,-1771,-1727,-1694,-1663,-1622,-1560,-1469,-1352,-1223,-1104,-1014,-962,-940,-927,-904,-863,
+-810,-753,-698,-638,-561,-465,-360,-260,-170,-85,3,89,162,219,272,332,397,454,506,581,704,
+856,982,1029,999,948,937,986,1069,1156,1235,1309,1379,1435,1473,1500,1525,1544,1544,1522,1500,1499,
+1527,1567,1604,1639,1690,1766,1857,1948,2033,2117,2206,2290,2354,2393,2414,2431,2452,2484,2526,2580,2643,
+2708,2770,2829,2889,2948,3005,3062,3128,3205,3281,3326,3318,3263,3193,3137,3089,3010,2868,2684,2528,2464,
+2496,2559,2583,2553,2520,2536,2605,2677,2702,2680,2656,2673,2727,2780,2801,2796,2805,2863,2964,3069,3134,
+3148,3135,3129,3146,3177,3204,3217,3220,3224,3234,3256,3285,3311,3324,3321,3311,3304,3300,3293,3279,3272,
+3282,3300,3308,3305,3319,3383,3490,3592,3647,3661,3682,3742,3824,3886,3904,3899,3905,3935,3977,4014,4039,
+4056,4071,4087,4113,4150,4190,4218,4233,4257,4303,4361,4399,4394,4356,4313,4288,4280,4282,4287,4297,4309,
+4316,4313,4306,4303,4307,4318,4333,4345,4355,4365,4381,4404,4425,4435,4442,4468,4522,4580,4599,4566,4516,
+4494,4496,4448,4270,3935,3489,3005,2548,2170,1933,1893,2050,2327,2607,2808,2925,2996,3051,3084,3081,3043,
+2990,2932,2863,2783,2719,2709,2755,2802,2779,2661,2494,2351,2270,2234,2206,2170,2135,2109,2081,2036,1975,
+1915,1868,1826,1778,1725,1675,1635,1597,1557,1514,1472,1429,1372,1302,1237,1200,1197,1206,1200,1170,1129,
+1092,1063,1028,982,932,891,863,839,808,767,728,696,671,645,613,581,548,512,468,421,378,
+345,319,297,275,252,224,188,149,121,112,114,111,95,74,57,46,33,17,1,-7,-15,
+-32,-62,-93,-116,-130,-141,-157,-173,-182,-185,-186,-191,-200,-211,-224,-241,-264,-287,-308,-324,-337,
+-353,-376,-408,-446,-485,-519,-548,-573,-599,-627,-654,-680,-704,-724,-743,-763,-784,-802,-816,-824,-831,
+-840,-853,-866,-875,-880,-883,-885,-889,-894,-903,-916,-931,-942,-951,-958,-966,-975,-984,-995,-1010,-1030,
+-1050,-1066,-1077,-1087,-1097,-1108,-1121,-1136,-1152,-1167,-1175,-1180,-1185,-1196,-1207,-1215,-1220,-1228,-1242,-1257,-1265,
+-1266,-1264,-1264,-1267,-1266,-1262,-1258,-1254,-1250,-1244,-1238,-1234,-1232,-1230,-1223,-1211,-1198,-1185,-1174,-1167,-1165,
+-1166,-1165,-1161,-1153,-1144,-1135,-1127,-1120,-1119,-1122,-1125,-1124,-1116,-1105,-1096,-1091,-1088,-1087,-1085,-1084,-1081,
+-1078,-1076,-1076,-1075,-1072,-1069,-1068,-1069,-1071,-1069,-1067,-1066,-1066,-1066,-1063,-1060,-1057,-1053,-1045,-1036,-1029,
+-1025,-1020,-1012,-1004,-1001,-1001,-997,-987,-973,-964,-959,-954,-945,-935,-929,-925,-917,-905,-893,-885,-881,
+-876,-871,-866,-864,-861,-857,-852,-848,-846,-841,-834,-826,-818,-810,-800,-790,-784,-778,-770,-758,-744,
+-732,-721,-710,-700,-694,-694,-692,-683,-670,-660,-653,-646,-635,-624,-617,-613,-607,-596,-584,-576,-573,
+-567,-556,-543,-532,-525,-517,-511,-508,-505,-498,-487,-476,-470,-466,-459,-444,-428,-414,-404,-394,-381,
+-368,-356,-339,-317,-291,-269,-251,-234,-215,-195,-177,-162,-143,-121,-99,-82,-69,-56,-45,-40,-44,
+-50,-47,-34,-16,-1,6,11,18,28,39,51,61,68,74,83,97,114,127,137,148,168,
+196,227,254,275,293,314,340,367,393,416,437,460,487,517,550,587,629,669,698,712,721,
+739,772,814,854,890,926,962,995,1021,1049,1089,1140,1190,1228,1259,1295,1341,1385,1425,1466,1514,
+1561,1591,1602,1601,1575,1488,1324,1152,1103,1280,1659,2112,2522,2858,3148,3384,3505,3464,3301,3116,2973,
+2850,2696,2517,2383,2355,2415,2493,2537,2555,2577,2607,2614,2578,2521,2495,2537,2637,2742,2790,2754,2652,
+2528,2421,2336,2261,2184,2109,2047,1998,1952,1905,1862,1828,1799,1768,1736,1713,1705,1704,1699,1688,1676,
+1669,1664,1654,1638,1619,1598,1573,1549,1529,1515,1502,1485,1462,1440,1419,1397,1372,1345,1319,1295,1268,
+1233,1188,1132,1062,983,902,828,762,699,636,584,554,541,524,476,385,259,117,-20,-136,-226,
+-293,-350,-403,-450,-481,-494,-498,-507,-528,-562,-606,-657,-711,-758,-790,-807,-814,-819,-822,-821,-811,
+-792,-770,-755,-761,-791,-834,-871,-885,-869,-836,-801,-776,-766,-764,-761,-745,-712,-668,-624,-587,-556,
+-529,-502,-469,-423,-361,-283,-198,-113,-36,28,78,110,131,153,182,218,253,282,302,310,302,
+282,262,251,254,262,270,282,300,327,362,404,455,506,541,546,527,506,501,512,525,536,
+547,567,591,616,639,666,699,732,759,779,799,823,850,876,902,928,954,977,997,1017,1040,
+1064,1086,1103,1119,1136,1155,1174,1194,1214,1235,1252,1267,1282,1301,1322,1341,1355,1367,1381,1397,1414,
+1430,1443,1457,1473,1490,1506,1521,1534,1547,1563,1583,1601,1612,1614,1609,1601,1590,1574,1555,1541,1539,
+1545,1548,1543,1534,1528,1527,1526,1519,1511,1508,1513,1518,1520,1522,1527,1536,1542,1544,1547,1558,1577,
+1594,1605,1611,1620,1635,1655,1674,1694,1720,1751,1781,1807,1826,1841,1855,1870,1883,1898,1917,1948,1991,
+2040,2075,2078,2049,2011,1955,1982,2048,2108,2119,2094,2094,2169,2301,2413,2432,2356,2250,2187,2195,2247,
+2296,2313,2299,2278,2266,2268,2275,2279,2283,2298,2323,2349,2361,2361,2368,2397,2444,2483,2495,2486,2480,
+2491,2514,2534,2541,2539,2535,2537,2547,2568,2599,2635,2667,2688,2703,2716,2733,2752,2774,2800,2826,2846,
+2855,2863,2884,2929,2995,3059,3099,3100,3071,3038,3033,3067,3129,3189,3220,3218,3203,3204,3242,3317,3416,
+3517,3596,3639,3643,3622,3595,3579,3578,3590,3603,3609,3597,3567,3532,3508,3504,3514,3525,3525,3511,3487,
+3455,3426,3414,3426,3458,3486,3494,3482,3465,3450,3428,3380,3306,3224,3162,3132,3122,3109,3074,3003,2895,
+2763,2631,2527,2462,2423,2389,2345,2298,2264,2251,2257,2272,2286,2298,2309,2321,2333,2340,2341,2335,2330,
+2326,2315,2279,2203,2093,1973,1870,1796,1746,1711,1687,1675,1673,1679,1690,1705,1718,1725,1729,1736,1752,
+1779,1809,1839,1869,1899,1930,1971,2036,2132,2244,2336,2385,2395,2395,2405,2418,2421,2410,2395,2385,2372,
+2345,2304,2260,2220,2182,2144,2108,2078,2052,2023,1990,1957,1933,1916,1900,1884,1872,1865,1862,1858,1854,
+1850,1840,1820,1795,1779,1786,1812,1843,1865,1875,1881,1890,1907,1929,1947,1950,1940,1935,1950,1974,1980,
+1957,1926,1924,1956,1991,1995,1977,1969,1985,1996,1973,1927,1895,1887,1867,1798,1689,1595,1556,1560,1562,
+1539,1507,1485,1472,1454,1430,1412,1408,1411,1405,1391,1376,1364,1351,1332,1311,1294,1281,1264,1241,1219,
+1202,1184,1159,1129,1100,1077,1056,1034,1009,983,956,925,892,862,836,811,782,749,718,691,664,
+635,605,577,550,520,488,460,438,422,401,374,344,314,286,257,225,192,156,116,75,36,
+-2,-46,-97,-153,-206,-254,-304,-359,-415,-463,-504,-546,-597,-654,-704,-745,-781,-819,-860,-902,-944,
+-989,-1032,-1067,-1097,-1131,-1182,-1244,-1303,-1344,-1374,-1407,-1453,-1505,-1552,-1586,-1606,-1613,-1608,-1599,-1598,-1620,
+-1669,-1741,-1827,-1917,-1998,-2064,-2116,-2164,-2221,-2284,-2345,-2398,-2450,-2510,-2575,-2633,-2680,-2720,-2761,-2801,-2829,
+-2839,-2841,-2849,-2871,-2899,-2921,-2928,-2921,-2913,-2919,-2953,-3014,-3087,-3159,-3223,-3283,-3335,-3372,-3386,-3387,-3397,
+-3428,-3471,-3511,-3540,-3567,-3603,-3646,-3679,-3690,-3677,-3653,-3644,-3669,-3730,-3806,-3872,-3916,-3949,-3981,-4004,-4006,
+-3989,-3980,-4000,-4036,-4056,-4044,-4023,-4022,-4044,-4061,-4055,-4036,-4028,-4039,-4053,-4057,-4055,-4055,-4053,-4041,-4021,
+-4005,-3999,-3992,-3976,-3955,-3943,-3939,-3933,-3919,-3908,-3908,-3909,-3890,-3852,-3819,-3806,-3797,-3765,-3704,-3635,-3572,
+-3502,-3420,-3352,-3340,-3379,-3398,-3315,-3124,-2907,-2759,-2708,-2706,-2697,-2668,-2637,-2618,-2601,-2573,-2538,-2511,-2499,
+-2492,-2481,-2467,-2459,-2462,-2467,-2465,-2453,-2440,-2440,-2460,-2491,-2511,-2496,-2444,-2378,-2328,-2305,-2295,-2277,-2237,
+-2185,-2137,-2104,-2087,-2073,-2047,-2002,-1946,-1903,-1896,-1928,-1979,-2019,-2028,-2007,-1965,-1913,-1858,-1805,-1762,-1730,
+-1703,-1667,-1606,-1513,-1391,-1258,-1143,-1071,-1047,-1054,-1063,-1049,-1006,-940,-865,-789,-709,-617,-510,-396,-285,
+-186,-95,-9,69,133,183,233,291,351,400,443,511,630,783,912,964,944,907,912,969,1046,
+1117,1183,1258,1337,1398,1427,1434,1440,1450,1450,1431,1406,1401,1429,1477,1529,1581,1644,1726,1824,1923,
+2015,2096,2168,2230,2282,2325,2360,2388,2411,2439,2482,2542,2610,2675,2736,2803,2876,2945,3002,3050,3107,
+3178,3244,3272,3248,3189,3132,3093,3050,2959,2800,2607,2451,2387,2412,2470,2500,2487,2459,2454,2475,2501,
+2509,2512,2537,2599,2676,2726,2733,2720,2738,2818,2944,3062,3123,3121,3090,3073,3086,3116,3142,3155,3161,
+3168,3180,3195,3215,3236,3251,3253,3247,3240,3235,3227,3215,3211,3224,3244,3251,3243,3253,3321,3446,3576,
+3652,3665,3663,3695,3761,3820,3840,3832,3828,3850,3892,3934,3965,3986,4004,4026,4058,4098,4134,4159,4177,
+4207,4258,4315,4349,4343,4310,4275,4254,4244,4238,4239,4250,4268,4281,4281,4274,4271,4277,4290,4304,4317,
+4328,4339,4356,4376,4393,4402,4413,4442,4494,4542,4550,4514,4470,4451,4439,4357,4130,3743,3255,2752,2310,
+1993,1858,1927,2157,2444,2683,2831,2915,2980,3037,3064,3047,3004,2960,2916,2850,2755,2665,2629,2660,2709,
+2701,2604,2450,2309,2222,2183,2160,2131,2099,2071,2043,2005,1954,1901,1853,1810,1763,1709,1656,1612,1578,
+1544,1506,1462,1410,1350,1285,1228,1194,1185,1188,1180,1154,1115,1077,1044,1008,966,921,885,862,843,
+816,777,736,700,671,644,616,586,553,516,472,426,385,350,319,292,272,255,234,199,155,
+120,105,106,105,93,73,58,48,37,22,10,4,-2,-20,-52,-88,-116,-135,-151,-170,-188,
+-201,-209,-216,-225,-233,-240,-246,-258,-276,-297,-315,-330,-342,-357,-381,-415,-454,-492,-524,-551,-577,
+-604,-632,-659,-686,-713,-738,-761,-780,-797,-814,-827,-838,-848,-858,-871,-884,-894,-902,-908,-914,-918,
+-922,-926,-935,-946,-957,-967,-976,-985,-992,-997,-1003,-1013,-1029,-1047,-1062,-1073,-1081,-1087,-1095,-1105,-1119,
+-1136,-1149,-1156,-1161,-1169,-1182,-1194,-1201,-1206,-1215,-1230,-1244,-1249,-1247,-1246,-1248,-1251,-1250,-1247,-1244,-1242,
+-1237,-1228,-1220,-1218,-1220,-1219,-1211,-1196,-1182,-1171,-1164,-1160,-1158,-1157,-1155,-1150,-1145,-1141,-1136,-1130,-1122,
+-1117,-1115,-1116,-1114,-1106,-1098,-1091,-1089,-1089,-1089,-1089,-1087,-1083,-1078,-1077,-1080,-1083,-1081,-1077,-1074,-1075,
+-1077,-1076,-1073,-1070,-1069,-1069,-1066,-1062,-1060,-1057,-1052,-1046,-1041,-1037,-1033,-1025,-1017,-1012,-1009,-1005,-997,
+-988,-980,-974,-966,-957,-948,-942,-936,-925,-911,-899,-893,-889,-884,-879,-876,-875,-873,-869,-864,-862,
+-862,-859,-852,-843,-834,-824,-813,-804,-798,-794,-787,-775,-761,-750,-740,-729,-717,-710,-708,-706,-699,
+-686,-674,-666,-657,-646,-635,-628,-626,-620,-609,-596,-589,-586,-581,-570,-556,-545,-539,-534,-528,-525,
+-523,-519,-510,-499,-489,-481,-472,-460,-448,-438,-430,-419,-406,-391,-377,-360,-337,-312,-291,-274,-257,
+-237,-215,-196,-179,-160,-136,-112,-94,-81,-70,-60,-56,-59,-64,-62,-50,-34,-22,-14,-8,-1,
+7,17,29,41,51,60,70,83,97,107,115,128,153,185,216,239,257,277,301,328,353,
+375,397,424,455,487,519,552,587,624,659,687,706,724,750,786,827,865,900,934,968,1000,
+1029,1065,1113,1167,1214,1249,1280,1318,1364,1407,1444,1482,1527,1570,1597,1607,1606,1578,1482,1308,1125,
+1068,1233,1595,2035,2445,2798,3110,3364,3490,3444,3275,3088,2946,2827,2679,2503,2367,2331,2387,2468,2522,
+2551,2579,2613,2625,2594,2538,2512,2557,2664,2769,2802,2738,2612,2486,2397,2337,2274,2193,2108,2040,1993,
+1953,1910,1867,1832,1803,1772,1738,1712,1700,1697,1693,1685,1676,1670,1668,1664,1659,1652,1641,1622,1597,
+1574,1554,1536,1515,1492,1471,1451,1427,1394,1358,1326,1299,1272,1235,1185,1122,1049,972,896,823,753,
+684,621,580,568,571,554,487,363,203,42,-91,-186,-247,-290,-330,-373,-413,-437,-446,-450,-460,
+-484,-517,-557,-604,-655,-705,-747,-778,-798,-811,-817,-816,-804,-785,-763,-749,-752,-776,-813,-844,-853,
+-836,-803,-768,-746,-742,-750,-755,-745,-719,-682,-645,-612,-582,-555,-530,-503,-463,-402,-322,-234,-153,
+-83,-24,27,69,98,117,132,149,173,206,242,270,280,272,258,254,263,278,289,299,314,
+336,368,410,461,514,550,557,539,519,514,525,539,552,567,590,619,647,674,706,743,778,
+802,817,832,856,886,915,943,969,997,1022,1042,1059,1078,1100,1122,1141,1157,1174,1192,1212,1233,
+1255,1275,1292,1307,1323,1341,1360,1374,1385,1396,1410,1427,1444,1459,1473,1488,1505,1524,1543,1558,1568,
+1578,1591,1608,1624,1631,1627,1617,1608,1599,1584,1565,1550,1546,1551,1555,1550,1540,1532,1531,1531,1527,
+1522,1522,1527,1533,1535,1537,1541,1544,1542,1538,1542,1557,1577,1591,1596,1599,1611,1632,1653,1671,1690,
+1719,1755,1791,1820,1838,1849,1859,1872,1892,1918,1948,1978,2009,2033,2039,2017,1977,1955,1954,2004,2073,
+2113,2097,2061,2077,2180,2320,2404,2377,2274,2181,2160,2205,2266,2301,2302,2286,2271,2264,2265,2269,2273,
+2279,2292,2316,2339,2351,2353,2361,2391,2436,2472,2480,2468,2458,2467,2489,2510,2520,2522,2523,2528,2541,
+2567,2603,2638,2663,2677,2689,2703,2719,2732,2745,2766,2799,2834,2860,2873,2886,2914,2964,3029,3085,3111,
+3094,3053,3025,3042,3104,3180,3233,3249,3245,3248,3273,3323,3394,3481,3571,3644,3684,3686,3663,3633,3614,
+3609,3615,3617,3600,3561,3516,3485,3480,3491,3500,3499,3489,3471,3442,3404,3375,3374,3402,3433,3440,3415,
+3376,3336,3294,3241,3179,3128,3104,3102,3099,3071,3009,2917,2803,2683,2576,2496,2445,2410,2375,2337,2304,
+2283,2277,2280,2291,2307,2325,2343,2364,2387,2410,2424,2426,2420,2412,2397,2357,2279,2167,2046,1940,1860,
+1804,1766,1744,1735,1734,1739,1750,1765,1779,1787,1791,1804,1831,1869,1906,1938,1965,1994,2024,2064,2125,
+2215,2321,2413,2470,2492,2500,2508,2513,2508,2493,2479,2468,2451,2419,2375,2330,2290,2257,2228,2205,2187,
+2167,2138,2102,2068,2042,2023,2004,1986,1973,1964,1956,1946,1937,1929,1917,1898,1875,1863,1870,1893,1918,
+1936,1946,1952,1960,1976,1998,2017,2021,2015,2019,2048,2084,2089,2051,2002,1990,2020,2052,2047,2020,2014,
+2044,2069,2043,1972,1907,1880,1863,1809,1714,1628,1594,1604,1614,1596,1562,1535,1520,1505,1483,1465,1459,
+1459,1454,1441,1425,1412,1397,1377,1356,1341,1329,1313,1291,1267,1246,1227,1202,1174,1149,1129,1110,1086,
+1057,1027,997,968,939,910,883,855,823,792,765,741,716,688,658,628,599,565,530,502,484,
+470,450,421,389,361,336,307,274,240,207,173,136,96,54,9,-40,-92,-142,-190,-239,-293,
+-346,-393,-435,-480,-531,-586,-635,-675,-711,-748,-787,-829,-874,-921,-966,-1002,-1031,-1065,-1117,-1180,-1238,
+-1280,-1312,-1350,-1399,-1451,-1491,-1516,-1530,-1535,-1536,-1538,-1550,-1584,-1642,-1716,-1797,-1875,-1946,-2004,-2055,-2106,
+-2164,-2226,-2283,-2334,-2383,-2436,-2491,-2541,-2582,-2615,-2647,-2679,-2708,-2737,-2769,-2809,-2855,-2901,-2939,-2958,-2951,
+-2922,-2895,-2895,-2932,-2995,-3059,-3115,-3168,-3222,-3267,-3291,-3301,-3317,-3353,-3402,-3443,-3468,-3487,-3516,-3559,-3604,
+-3633,-3637,-3618,-3599,-3608,-3665,-3758,-3855,-3930,-3978,-4012,-4035,-4039,-4024,-4011,-4024,-4060,-4089,-4089,-4067,-4050,
+-4052,-4061,-4060,-4051,-4044,-4047,-4053,-4058,-4061,-4066,-4066,-4052,-4029,-4009,-3996,-3982,-3961,-3939,-3928,-3926,-3922,
+-3911,-3904,-3910,-3918,-3905,-3871,-3836,-3819,-3811,-3785,-3729,-3659,-3591,-3527,-3463,-3418,-3418,-3448,-3446,-3348,-3154,
+-2939,-2788,-2727,-2718,-2712,-2691,-2666,-2645,-2624,-2596,-2566,-2544,-2529,-2515,-2501,-2498,-2509,-2527,-2536,-2526,-2507,
+-2498,-2513,-2546,-2573,-2562,-2501,-2411,-2335,-2310,-2332,-2363,-2361,-2312,-2237,-2170,-2127,-2104,-2082,-2046,-1996,-1945,
+-1913,-1913,-1942,-1982,-2011,-2018,-2006,-1981,-1946,-1903,-1855,-1810,-1773,-1742,-1706,-1649,-1558,-1435,-1301,-1192,-1137,
+-1137,-1166,-1188,-1178,-1133,-1065,-985,-897,-801,-692,-572,-444,-318,-204,-103,-17,54,110,155,200,253,
+307,352,394,463,579,726,849,904,897,882,905,966,1035,1091,1146,1219,1300,1358,1373,1360,1348,
+1348,1348,1331,1308,1304,1334,1390,1455,1524,1602,1694,1797,1900,1990,2062,2113,2153,2194,2246,2302,2347,
+2376,2401,2443,2505,2574,2635,2692,2758,2834,2902,2950,2987,3035,3100,3152,3159,3117,3060,3024,3006,2966,
+2858,2683,2490,2349,2298,2325,2380,2415,2415,2399,2392,2398,2409,2415,2430,2473,2545,2621,2664,2662,2645,
+2666,2752,2879,2992,3044,3037,3010,3005,3030,3063,3084,3093,3101,3114,3129,3140,3153,3170,3188,3195,3191,
+3180,3171,3162,3154,3155,3173,3199,3211,3205,3213,3281,3413,3557,3645,3657,3636,3641,3690,3746,3770,3762,
+3754,3772,3816,3866,3905,3931,3952,3977,4009,4044,4073,4093,4114,4152,4209,4267,4298,4293,4267,4241,4224,
+4211,4199,4194,4202,4219,4233,4239,4241,4248,4260,4273,4284,4295,4306,4319,4333,4347,4358,4370,4389,4423,
+4468,4500,4498,4466,4432,4413,4376,4247,3967,3537,3026,2524,2115,1868,1823,1975,2248,2529,2730,2840,2905,
+2966,3022,3044,3019,2970,2927,2890,2835,2745,2644,2575,2560,2576,2571,2507,2393,2271,2182,2135,2114,2094,
+2065,2032,2000,1968,1931,1887,1840,1793,1744,1693,1641,1595,1558,1526,1490,1445,1388,1325,1265,1216,1186,
+1175,1171,1161,1136,1099,1060,1027,995,959,919,884,859,839,814,780,739,699,664,635,610,586,
+557,520,476,432,392,357,323,293,272,259,242,209,164,125,107,106,105,93,75,60,49,
+38,26,17,12,4,-15,-48,-83,-111,-132,-153,-176,-197,-212,-223,-236,-249,-260,-267,-273,-282,
+-295,-310,-322,-331,-340,-355,-380,-417,-459,-498,-530,-556,-582,-610,-637,-663,-688,-717,-746,-773,-795,
+-812,-827,-841,-854,-865,-877,-890,-902,-912,-920,-927,-934,-939,-944,-948,-955,-962,-970,-977,-986,-996,
+-1004,-1009,-1012,-1019,-1031,-1046,-1058,-1068,-1074,-1080,-1087,-1097,-1111,-1126,-1139,-1147,-1154,-1165,-1180,-1192,-1199,
+-1204,-1213,-1227,-1238,-1240,-1237,-1236,-1239,-1242,-1241,-1238,-1237,-1237,-1232,-1221,-1210,-1207,-1209,-1206,-1196,-1183,
+-1176,-1174,-1173,-1169,-1161,-1152,-1143,-1135,-1131,-1130,-1130,-1127,-1119,-1111,-1105,-1102,-1097,-1090,-1083,-1080,-1080,
+-1082,-1085,-1088,-1088,-1085,-1080,-1078,-1082,-1087,-1089,-1085,-1080,-1080,-1082,-1081,-1077,-1074,-1072,-1070,-1067,-1062,
+-1059,-1058,-1057,-1054,-1049,-1045,-1042,-1037,-1030,-1023,-1017,-1011,-1005,-1000,-995,-987,-977,-967,-960,-956,-949,
+-936,-921,-910,-904,-899,-893,-887,-885,-885,-884,-880,-874,-872,-872,-868,-861,-852,-845,-837,-826,-816,
+-808,-802,-795,-786,-776,-769,-763,-754,-741,-730,-725,-721,-713,-701,-689,-681,-673,-662,-651,-644,-641,
+-635,-624,-613,-607,-605,-600,-588,-575,-565,-560,-556,-549,-544,-542,-539,-533,-522,-510,-498,-488,-477,
+-467,-459,-451,-440,-426,-411,-397,-380,-358,-334,-313,-296,-278,-256,-233,-214,-196,-177,-154,-131,-113,
+-100,-89,-81,-78,-80,-81,-76,-64,-51,-42,-36,-29,-20,-11,-3,6,17,29,40,51,64,
+76,87,98,117,145,178,205,224,242,266,296,324,345,364,389,420,455,489,521,553,585,
+616,644,669,693,719,750,788,827,865,900,934,968,1002,1039,1085,1138,1191,1233,1263,1291,1327,
+1368,1407,1441,1479,1522,1560,1584,1594,1594,1563,1462,1281,1094,1030,1178,1518,1941,2348,2709,3031,3290,
+3423,3393,3247,3076,2936,2803,2634,2438,2284,2232,2274,2350,2412,2456,2507,2568,2608,2595,2542,2504,2534,
+2630,2731,2762,2697,2574,2459,2385,2337,2274,2186,2095,2028,1989,1957,1916,1870,1830,1797,1766,1733,1705,
+1690,1686,1686,1685,1684,1685,1686,1685,1681,1673,1662,1645,1626,1607,1589,1566,1537,1508,1486,1467,1441,
+1403,1358,1319,1289,1260,1219,1163,1095,1025,955,888,817,740,661,599,572,578,590,565,474,324,
+153,0,-110,-178,-220,-254,-292,-334,-369,-390,-401,-411,-431,-460,-492,-524,-560,-604,-653,-700,-739,
+-767,-785,-794,-795,-787,-772,-754,-741,-742,-760,-788,-812,-822,-811,-786,-759,-741,-739,-748,-753,-744,
+-720,-690,-664,-640,-613,-581,-548,-514,-470,-405,-324,-242,-175,-127,-86,-44,0,39,66,81,90,
+102,125,160,197,224,236,240,250,268,288,304,317,331,352,378,413,458,508,546,560,550,
+535,533,544,561,579,600,627,656,684,712,745,783,817,838,849,864,889,921,952,980,1007,
+1037,1064,1084,1098,1114,1135,1158,1180,1197,1212,1228,1247,1269,1291,1311,1328,1344,1361,1381,1398,1410,
+1420,1431,1445,1462,1477,1489,1503,1519,1539,1559,1577,1590,1598,1604,1614,1627,1639,1641,1632,1620,1613,
+1610,1602,1585,1569,1560,1561,1562,1556,1546,1540,1541,1542,1541,1538,1538,1541,1543,1542,1541,1542,1540,
+1534,1529,1536,1553,1572,1581,1585,1594,1617,1644,1665,1681,1702,1738,1784,1825,1851,1859,1854,1849,1859,
+1890,1938,1981,2004,2004,1992,1976,1957,1943,1954,2004,2042,2072,2068,2030,2005,2050,2169,2292,2330,2265,
+2163,2113,2146,2220,2277,2293,2285,2275,2268,2262,2257,2258,2266,2276,2289,2306,2326,2340,2346,2354,2376,
+2408,2434,2440,2432,2430,2443,2466,2485,2496,2503,2509,2519,2537,2565,2601,2634,2653,2662,2673,2692,2710,
+2720,2724,2738,2767,2804,2836,2853,2863,2880,2917,2978,3050,3104,3116,3085,3044,3038,3083,3156,3220,3256,
+3271,3285,3301,3320,3349,3404,3492,3595,3679,3719,3711,3674,3631,3600,3585,3575,3550,3504,3452,3416,3406,
+3410,3410,3404,3399,3398,3389,3363,3334,3325,3344,3373,3379,3353,3306,3254,3203,3149,3101,3076,3077,3086,
+3073,3020,2933,2828,2718,2616,2531,2469,2426,2391,2357,2328,2311,2303,2302,2304,2312,2330,2356,2384,2416,
+2454,2494,2524,2533,2523,2504,2473,2420,2332,2217,2097,1995,1917,1861,1824,1803,1796,1798,1803,1814,1828,
+1840,1846,1854,1875,1912,1956,1995,2026,2055,2085,2112,2140,2186,2265,2375,2487,2571,2616,2632,2633,2623,
+2606,2587,2571,2555,2532,2496,2452,2410,2373,2343,2319,2301,2284,2262,2230,2194,2165,2144,2127,2108,2091,
+2079,2070,2058,2040,2023,2011,1999,1981,1960,1949,1954,1971,1991,2008,2021,2031,2041,2056,2078,2098,2105,
+2102,2112,2147,2187,2187,2137,2078,2067,2108,2148,2139,2095,2071,2090,2110,2076,1987,1903,1866,1854,1817,
+1742,1669,1641,1655,1666,1647,1611,1583,1570,1558,1541,1524,1517,1514,1505,1488,1469,1454,1439,1421,1402,
+1388,1377,1363,1340,1314,1291,1271,1249,1225,1202,1182,1160,1133,1102,1070,1042,1014,985,955,926,895,
+864,835,812,791,767,738,707,676,645,610,575,548,530,516,494,465,435,410,386,358,324,
+291,262,232,197,154,109,64,19,-27,-77,-128,-178,-229,-277,-323,-368,-415,-466,-517,-563,-603,
+-641,-678,-716,-756,-802,-853,-903,-943,-972,-1005,-1053,-1114,-1172,-1218,-1255,-1297,-1344,-1391,-1425,-1445,-1455,
+-1460,-1463,-1470,-1492,-1537,-1605,-1683,-1762,-1833,-1895,-1950,-2001,-2054,-2113,-2173,-2228,-2277,-2324,-2370,-2417,-2460,
+-2498,-2532,-2563,-2591,-2621,-2659,-2707,-2761,-2813,-2863,-2913,-2954,-2972,-2963,-2940,-2930,-2947,-2980,-3010,-3033,-3065,
+-3112,-3163,-3201,-3223,-3249,-3291,-3340,-3375,-3388,-3394,-3417,-3462,-3519,-3566,-3588,-3582,-3565,-3570,-3622,-3719,-3829,
+-3919,-3979,-4019,-4050,-4065,-4058,-4043,-4045,-4071,-4100,-4104,-4079,-4047,-4032,-4038,-4051,-4060,-4062,-4062,-4061,-4060,
+-4062,-4067,-4065,-4052,-4030,-4010,-3995,-3977,-3953,-3930,-3919,-3920,-3918,-3909,-3902,-3907,-3916,-3911,-3885,-3855,-3838,
+-3828,-3802,-3751,-3682,-3610,-3541,-3481,-3447,-3452,-3474,-3454,-3339,-3141,-2931,-2784,-2721,-2708,-2702,-2686,-2667,-2651,
+-2634,-2616,-2601,-2590,-2578,-2560,-2543,-2545,-2568,-2595,-2603,-2588,-2568,-2568,-2593,-2626,-2633,-2585,-2488,-2380,-2314,
+-2316,-2369,-2417,-2412,-2349,-2259,-2182,-2135,-2107,-2080,-2043,-1998,-1957,-1933,-1933,-1953,-1982,-2004,-2013,-2010,-1996,
+-1975,-1943,-1902,-1856,-1811,-1772,-1734,-1682,-1600,-1482,-1351,-1249,-1207,-1224,-1264,-1286,-1271,-1226,-1165,-1092,-1003,
+-895,-770,-636,-500,-368,-245,-138,-49,22,78,125,171,218,265,308,358,434,550,686,799,855,
+864,869,906,968,1030,1077,1126,1191,1260,1299,1295,1265,1243,1239,1236,1223,1207,1213,1252,1315,1387,
+1465,1551,1650,1753,1853,1939,2002,2041,2068,2104,2165,2240,2304,2343,2370,2412,2475,2542,2598,2648,2705,
+2769,2822,2853,2876,2915,2970,3009,3002,2957,2916,2904,2898,2845,2712,2523,2343,2232,2210,2251,2307,2339,
+2341,2330,2329,2346,2368,2384,2397,2426,2482,2549,2594,2599,2582,2590,2652,2751,2839,2882,2888,2891,2919,
+2966,3006,3025,3031,3043,3062,3080,3091,3101,3120,3141,3150,3143,3127,3113,3104,3101,3108,3132,3164,3182,
+3180,3186,3249,3380,3529,3624,3634,3598,3583,3616,3670,3701,3697,3685,3697,3739,3795,3843,3876,3900,3925,
+3955,3984,4007,4025,4050,4094,4153,4206,4231,4227,4207,4190,4179,4169,4159,4156,4163,4176,4187,4197,4212,
+4234,4254,4265,4267,4270,4279,4291,4302,4312,4325,4347,4381,4419,4450,4461,4446,4420,4400,4381,4317,4139,
+3807,3341,2818,2332,1970,1794,1826,2029,2314,2573,2744,2835,2894,2953,3004,3020,2993,2943,2896,2856,2806,
+2730,2634,2544,2488,2471,2469,2446,2378,2274,2171,2103,2074,2060,2035,1996,1957,1928,1903,1869,1821,1767,
+1717,1671,1625,1578,1537,1503,1469,1426,1369,1306,1249,1207,1180,1165,1156,1142,1117,1081,1045,1014,988,
+958,922,884,851,826,803,775,738,696,656,623,599,582,562,531,488,442,400,362,327,295,
+273,260,244,214,170,131,111,108,107,97,80,64,51,40,29,20,14,3,-18,-49,-81,
+-108,-131,-154,-178,-197,-212,-225,-240,-258,-274,-287,-298,-309,-322,-331,-337,-340,-343,-353,-376,-413,
+-457,-498,-531,-558,-584,-612,-639,-663,-686,-713,-745,-776,-801,-822,-839,-855,-868,-880,-890,-903,-916,
+-928,-937,-943,-948,-952,-956,-962,-969,-975,-979,-983,-990,-1001,-1012,-1019,-1024,-1029,-1037,-1047,-1056,-1064,
+-1072,-1081,-1090,-1101,-1115,-1129,-1142,-1151,-1160,-1173,-1188,-1199,-1204,-1209,-1218,-1230,-1237,-1236,-1232,-1232,-1236,
+-1239,-1236,-1233,-1232,-1232,-1226,-1215,-1204,-1200,-1199,-1193,-1183,-1176,-1179,-1187,-1189,-1180,-1163,-1146,-1134,-1127,
+-1123,-1120,-1118,-1112,-1104,-1096,-1091,-1087,-1083,-1076,-1071,-1069,-1070,-1073,-1076,-1081,-1085,-1084,-1078,-1075,-1078,
+-1085,-1089,-1088,-1084,-1083,-1084,-1084,-1080,-1077,-1076,-1074,-1071,-1065,-1062,-1062,-1063,-1062,-1057,-1051,-1048,-1045,
+-1041,-1034,-1026,-1018,-1014,-1012,-1009,-1000,-988,-976,-970,-966,-961,-949,-934,-923,-916,-910,-902,-896,-895,
+-896,-895,-889,-882,-878,-876,-872,-864,-857,-851,-845,-835,-823,-813,-805,-798,-790,-784,-782,-779,-772,
+-759,-746,-737,-730,-722,-711,-701,-695,-690,-682,-671,-662,-655,-647,-636,-626,-621,-619,-615,-604,-592,
+-583,-577,-572,-565,-559,-556,-555,-550,-541,-529,-518,-506,-494,-483,-473,-462,-449,-435,-424,-413,-398,
+-377,-352,-330,-311,-293,-274,-253,-233,-214,-193,-170,-150,-135,-124,-114,-106,-102,-102,-101,-92,-79,
+-67,-60,-55,-46,-35,-25,-20,-14,-5,6,19,33,46,58,69,83,106,136,167,193,212,
+234,263,296,323,344,364,391,424,456,486,516,548,580,608,631,653,678,709,744,781,820,
+859,897,933,968,1003,1043,1090,1140,1187,1227,1259,1290,1324,1358,1389,1420,1457,1497,1531,1553,1566,
+1569,1536,1428,1244,1060,996,1136,1462,1873,2276,2634,2944,3189,3324,3326,3228,3090,2945,2776,2562,2333,
+2162,2097,2126,2191,2249,2304,2382,2480,2558,2573,2529,2482,2492,2571,2667,2708,2660,2555,2452,2380,2324,
+2253,2160,2072,2014,1982,1953,1912,1862,1818,1786,1757,1727,1700,1683,1679,1684,1693,1703,1713,1718,1717,
+1707,1691,1671,1651,1637,1626,1611,1584,1546,1510,1485,1468,1445,1405,1355,1310,1277,1245,1203,1144,1076,
+1010,949,889,819,736,653,596,583,601,612,569,452,286,118,-14,-99,-149,-185,-223,-266,-309,
+-342,-363,-379,-400,-430,-463,-492,-516,-543,-578,-623,-668,-707,-735,-755,-769,-774,-771,-758,-741,-727,
+-725,-738,-761,-785,-800,-801,-790,-771,-754,-748,-749,-748,-736,-713,-690,-674,-660,-637,-600,-556,-509,
+-455,-387,-308,-235,-184,-157,-138,-112,-76,-35,1,29,45,56,68,92,127,164,192,211,228,
+248,270,291,312,335,361,388,418,454,496,534,555,558,554,557,571,591,614,639,668,695,
+720,745,777,812,844,864,877,895,923,955,986,1014,1044,1076,1105,1126,1139,1153,1173,1197,1221,
+1239,1254,1269,1287,1308,1329,1349,1365,1381,1399,1418,1436,1449,1460,1472,1487,1501,1512,1523,1537,1554,
+1573,1591,1605,1616,1621,1623,1627,1635,1642,1642,1633,1624,1622,1626,1624,1613,1596,1583,1578,1574,1566,
+1557,1553,1554,1555,1551,1545,1542,1541,1539,1535,1533,1533,1533,1530,1530,1540,1557,1572,1580,1590,1611,
+1642,1671,1687,1699,1726,1773,1827,1869,1886,1877,1852,1826,1825,1861,1923,1977,1991,1969,1941,1932,1946,
+1972,2004,2072,2066,2043,2006,1972,1981,2061,2187,2278,2268,2173,2081,2071,2141,2225,2268,2270,2264,2266,
+2267,2257,2244,2245,2259,2275,2285,2297,2314,2333,2342,2346,2354,2370,2386,2393,2395,2404,2424,2446,2463,
+2473,2483,2496,2510,2529,2555,2589,2618,2635,2644,2658,2680,2700,2708,2708,2715,2737,2767,2793,2809,2819,
+2830,2855,2905,2981,3062,3111,3108,3072,3048,3067,3122,3184,3232,3269,3301,3321,3320,3312,3330,3401,3515,
+3629,3699,3703,3657,3590,3532,3498,3478,3451,3407,3356,3318,3301,3292,3277,3259,3254,3270,3289,3290,3274,
+3263,3272,3292,3298,3279,3242,3197,3148,3099,3062,3051,3061,3065,3033,2958,2856,2750,2652,2567,2498,2448,
+2412,2382,2356,2338,2333,2335,2336,2337,2346,2370,2405,2443,2486,2536,2589,2628,2639,2622,2587,2537,2466,
+2367,2249,2134,2040,1969,1918,1883,1864,1857,1860,1867,1878,1890,1899,1906,1918,1946,1988,2031,2065,2095,
+2129,2163,2186,2199,2226,2297,2419,2562,2682,2752,2776,2769,2747,2722,2698,2676,2652,2619,2577,2533,2492,
+2455,2423,2396,2376,2357,2331,2300,2271,2250,2237,2221,2201,2183,2174,2166,2151,2129,2109,2096,2084,2066,
+2046,2034,2037,2053,2072,2090,2106,2118,2129,2146,2171,2193,2199,2191,2195,2228,2267,2267,2214,2153,2145,
+2196,2245,2234,2171,2119,2114,2121,2085,1998,1911,1869,1858,1831,1771,1711,1689,1701,1708,1688,1654,1631,
+1623,1617,1602,1587,1580,1574,1560,1535,1512,1497,1486,1471,1453,1438,1425,1409,1386,1359,1335,1316,1296,
+1273,1250,1226,1200,1172,1143,1116,1089,1061,1029,997,967,939,911,885,861,839,814,783,750,718,
+687,655,623,597,577,561,539,511,483,459,436,407,374,343,316,288,252,209,164,123,82,
+36,-15,-68,-119,-165,-209,-254,-303,-353,-403,-449,-491,-532,-573,-613,-650,-687,-732,-785,-839,-883,
+-915,-946,-989,-1047,-1109,-1163,-1208,-1249,-1288,-1323,-1349,-1367,-1380,-1389,-1395,-1407,-1436,-1489,-1562,-1644,-1722,
+-1792,-1851,-1905,-1957,-2013,-2070,-2128,-2182,-2231,-2277,-2323,-2366,-2409,-2452,-2494,-2532,-2564,-2596,-2636,-2685,-2733,
+-2773,-2810,-2854,-2907,-2954,-2981,-2992,-3003,-3022,-3039,-3042,-3041,-3057,-3102,-3159,-3204,-3233,-3262,-3302,-3342,-3363,
+-3363,-3362,-3383,-3428,-3483,-3530,-3558,-3567,-3568,-3583,-3632,-3716,-3813,-3894,-3950,-3995,-4038,-4069,-4076,-4063,-4056,
+-4070,-4094,-4099,-4071,-4030,-4004,-4006,-4028,-4052,-4067,-4072,-4070,-4068,-4068,-4066,-4058,-4042,-4022,-4007,-3996,-3978,
+-3952,-3926,-3912,-3911,-3911,-3907,-3902,-3904,-3911,-3908,-3891,-3870,-3855,-3841,-3814,-3764,-3696,-3618,-3536,-3467,-3432,
+-3443,-3465,-3435,-3308,-3105,-2902,-2766,-2711,-2700,-2693,-2678,-2664,-2654,-2648,-2645,-2646,-2649,-2643,-2624,-2606,-2607,
+-2629,-2655,-2662,-2650,-2640,-2650,-2677,-2695,-2672,-2597,-2488,-2391,-2347,-2369,-2425,-2461,-2439,-2362,-2266,-2188,-2140,
+-2110,-2083,-2051,-2014,-1980,-1957,-1950,-1960,-1982,-2003,-2014,-2012,-2003,-1988,-1967,-1935,-1890,-1840,-1792,-1750,-1702,
+-1627,-1515,-1389,-1295,-1269,-1302,-1350,-1368,-1343,-1292,-1235,-1169,-1080,-960,-822,-683,-552,-428,-312,-205,-112,
+-34,31,89,141,186,228,270,325,409,525,654,762,822,845,862,899,953,1004,1047,1093,1148,
+1195,1210,1189,1155,1135,1130,1126,1116,1112,1135,1189,1258,1331,1408,1495,1593,1692,1786,1867,1930,1968,
+1992,2027,2091,2176,2255,2307,2342,2387,2450,2516,2569,2614,2663,2717,2758,2775,2785,2809,2844,2862,2846,
+2813,2798,2807,2798,2716,2552,2354,2196,2123,2135,2193,2251,2277,2269,2250,2253,2290,2341,2372,2374,2371,
+2399,2460,2521,2546,2533,2518,2537,2589,2647,2689,2720,2764,2830,2898,2942,2958,2964,2980,3005,3025,3038,
+3052,3075,3099,3108,3096,3076,3060,3052,3053,3064,3092,3128,3149,3146,3149,3204,3330,3482,3586,3602,3561,
+3532,3551,3602,3637,3635,3616,3615,3648,3703,3756,3794,3821,3847,3879,3911,3939,3962,3992,4036,4089,4134,
+4155,4153,4140,4129,4123,4119,4118,4125,4138,4150,4157,4167,4188,4217,4241,4247,4241,4238,4244,4255,4265,
+4275,4297,4335,4382,4420,4433,4420,4395,4375,4368,4346,4253,4030,3653,3158,2632,2174,1872,1773,1870,2103,
+2373,2597,2741,2824,2884,2938,2975,2982,2958,2916,2867,2817,2761,2694,2610,2520,2445,2412,2423,2438,2407,
+2309,2182,2083,2039,2029,2010,1968,1923,1893,1875,1847,1797,1738,1686,1646,1607,1563,1519,1481,1447,1405,
+1350,1290,1237,1199,1174,1157,1143,1125,1099,1065,1031,1002,980,955,921,879,841,811,788,765,735,
+695,651,612,588,577,567,544,506,459,412,369,329,295,271,256,239,211,171,134,112,106,
+104,97,84,70,55,40,26,15,6,-6,-26,-53,-81,-107,-132,-157,-179,-195,-207,-221,-239,
+-260,-280,-299,-316,-332,-344,-352,-354,-355,-355,-360,-376,-407,-448,-489,-522,-550,-577,-607,-635,-659,
+-681,-708,-740,-772,-800,-824,-845,-864,-879,-889,-898,-909,-923,-938,-949,-956,-960,-961,-964,-969,-977,
+-984,-988,-990,-995,-1006,-1019,-1030,-1037,-1042,-1047,-1052,-1058,-1065,-1075,-1087,-1099,-1111,-1123,-1137,-1149,-1160,
+-1170,-1182,-1194,-1203,-1208,-1213,-1221,-1230,-1233,-1229,-1225,-1227,-1232,-1234,-1230,-1223,-1218,-1215,-1210,-1201,-1195,
+-1193,-1191,-1183,-1174,-1172,-1181,-1190,-1188,-1171,-1150,-1135,-1129,-1127,-1123,-1116,-1106,-1095,-1086,-1082,-1082,-1083,
+-1080,-1075,-1071,-1071,-1072,-1073,-1073,-1077,-1080,-1081,-1076,-1072,-1073,-1080,-1086,-1087,-1084,-1083,-1084,-1084,-1082,
+-1080,-1080,-1079,-1076,-1071,-1067,-1068,-1070,-1069,-1065,-1058,-1053,-1051,-1048,-1043,-1035,-1028,-1024,-1023,-1020,-1012,
+-999,-987,-979,-975,-969,-958,-945,-934,-927,-921,-913,-908,-908,-909,-907,-898,-889,-883,-880,-876,-869,
+-863,-857,-850,-840,-828,-817,-808,-801,-793,-787,-785,-783,-777,-765,-753,-743,-736,-728,-718,-710,-706,
+-703,-697,-686,-674,-663,-652,-640,-631,-626,-624,-621,-613,-602,-592,-584,-577,-570,-565,-564,-563,-559,
+-551,-541,-530,-518,-506,-494,-482,-469,-455,-442,-432,-425,-413,-393,-367,-341,-320,-304,-289,-272,-254,
+-233,-209,-185,-169,-158,-150,-140,-130,-124,-122,-119,-109,-95,-83,-76,-70,-59,-46,-37,-32,-29,
+-22,-10,4,19,33,46,57,71,93,122,153,181,204,231,263,294,320,342,366,396,428,
+454,479,509,545,580,606,625,646,674,709,745,780,816,854,893,928,961,995,1031,1069,1108,
+1148,1190,1232,1272,1306,1334,1360,1389,1424,1461,1493,1519,1540,1547,1507,1387,1198,1019,964,1107,1430,
+1839,2239,2582,2862,3078,3214,3258,3221,3119,2959,2735,2466,2211,2041,1985,2013,2064,2110,2168,2266,2395,
+2506,2549,2521,2476,2475,2538,2623,2666,2634,2546,2448,2366,2293,2212,2125,2049,2001,1971,1939,1895,1847,
+1807,1778,1752,1723,1698,1683,1683,1694,1710,1726,1740,1747,1744,1730,1708,1681,1658,1644,1637,1623,1592,
+1549,1510,1487,1475,1455,1416,1363,1313,1275,1242,1199,1142,1075,1011,953,895,826,745,669,624,623,
+645,643,577,439,265,105,-9,-80,-127,-168,-212,-258,-300,-334,-360,-384,-414,-448,-481,-507,-527,
+-549,-579,-617,-655,-688,-714,-734,-750,-762,-764,-754,-736,-718,-712,-721,-742,-767,-787,-799,-799,-787,
+-770,-756,-748,-741,-725,-703,-685,-675,-667,-648,-612,-565,-512,-454,-384,-308,-240,-196,-177,-168,-156,
+-133,-101,-62,-23,8,27,40,56,85,120,150,170,185,203,228,256,286,319,354,387,419,
+454,492,529,557,572,578,587,602,622,646,673,701,726,747,769,796,828,859,882,902,926,
+956,989,1019,1049,1082,1117,1148,1170,1184,1198,1218,1241,1264,1284,1301,1317,1335,1355,1375,1394,1410,
+1425,1441,1458,1474,1488,1501,1514,1526,1537,1546,1556,1570,1586,1601,1614,1625,1635,1641,1642,1642,1645,
+1650,1651,1646,1640,1640,1644,1643,1633,1617,1602,1593,1584,1573,1564,1561,1561,1557,1549,1540,1536,1535,
+1532,1529,1528,1532,1537,1540,1544,1555,1569,1582,1592,1609,1637,1669,1689,1697,1709,1744,1798,1850,1880,
+1886,1872,1844,1813,1800,1822,1873,1920,1932,1917,1912,1944,2002,2051,2072,2109,2056,2001,1966,1963,2014,
+2121,2245,2309,2268,2157,2069,2070,2140,2211,2238,2236,2240,2254,2258,2242,2224,2226,2246,2266,2276,2285,
+2304,2327,2338,2336,2333,2338,2349,2360,2371,2388,2412,2433,2446,2455,2467,2485,2501,2517,2537,2564,2591,
+2610,2625,2643,2667,2686,2692,2691,2697,2714,2735,2753,2766,2777,2786,2798,2830,2897,2991,3074,3108,3091,
+3062,3061,3095,3144,3194,3244,3295,3332,3334,3311,3301,3344,3442,3554,3625,3628,3571,3489,3418,3378,3359,
+3339,3303,3255,3215,3190,3166,3132,3097,3082,3100,3135,3159,3163,3159,3164,3176,3182,3175,3156,3128,3094,
+3057,3034,3032,3043,3034,2982,2891,2785,2685,2600,2528,2472,2433,2409,2391,2378,2371,2375,2383,2387,2391,
+2405,2435,2477,2522,2570,2626,2684,2726,2735,2710,2661,2595,2509,2400,2280,2169,2081,2017,1971,1940,1923,
+1918,1920,1928,1939,1950,1957,1965,1983,2016,2058,2093,2118,2144,2182,2222,2244,2247,2263,2334,2471,2642,
+2790,2879,2908,2897,2871,2843,2815,2787,2752,2708,2660,2613,2569,2529,2490,2459,2436,2417,2394,2369,2347,
+2334,2322,2304,2280,2261,2252,2245,2231,2211,2193,2181,2170,2151,2129,2119,2125,2142,2163,2180,2195,2205,
+2215,2234,2263,2289,2293,2277,2271,2300,2343,2352,2303,2236,2215,2254,2297,2280,2207,2137,2117,2121,2095,
+2024,1945,1898,1880,1852,1802,1756,1740,1747,1747,1725,1698,1685,1685,1681,1666,1650,1641,1634,1616,1587,
+1562,1549,1541,1528,1508,1488,1470,1452,1428,1403,1381,1362,1342,1317,1290,1263,1237,1211,1186,1163,1139,
+1109,1073,1039,1012,988,964,938,910,884,856,824,790,758,728,699,670,644,622,604,583,557,
+531,506,481,452,421,391,365,337,303,262,221,183,144,97,43,-10,-59,-101,-142,-189,-241,
+-294,-341,-383,-423,-464,-509,-552,-590,-627,-669,-720,-774,-821,-855,-887,-927,-983,-1048,-1111,-1162,-1201,
+-1228,-1249,-1267,-1286,-1305,-1322,-1338,-1359,-1395,-1452,-1525,-1604,-1680,-1747,-1807,-1861,-1914,-1968,-2024,-2079,-2131,
+-2181,-2229,-2276,-2319,-2362,-2408,-2456,-2500,-2538,-2573,-2616,-2665,-2709,-2740,-2763,-2796,-2845,-2900,-2949,-2990,-3032,
+-3074,-3103,-3114,-3119,-3143,-3194,-3253,-3296,-3321,-3345,-3375,-3401,-3409,-3403,-3405,-3431,-3471,-3509,-3536,-3561,-3588,
+-3620,-3657,-3705,-3766,-3830,-3883,-3922,-3960,-4005,-4045,-4063,-4058,-4051,-4061,-4082,-4089,-4066,-4024,-3992,-3988,-4007,
+-4032,-4050,-4060,-4067,-4073,-4076,-4071,-4055,-4033,-4014,-4003,-3994,-3975,-3942,-3907,-3884,-3879,-3885,-3894,-3900,-3906,
+-3907,-3900,-3886,-3872,-3860,-3843,-3812,-3762,-3695,-3609,-3511,-3425,-3385,-3404,-3437,-3411,-3280,-3074,-2876,-2753,-2709,
+-2701,-2691,-2675,-2663,-2664,-2671,-2680,-2692,-2704,-2705,-2692,-2677,-2676,-2692,-2710,-2716,-2713,-2717,-2736,-2756,-2750,
+-2701,-2616,-2522,-2454,-2434,-2455,-2488,-2495,-2454,-2374,-2286,-2215,-2168,-2137,-2111,-2084,-2054,-2022,-1993,-1978,-1982,
+-1999,-2016,-2022,-2016,-2005,-1994,-1983,-1960,-1921,-1868,-1814,-1768,-1720,-1648,-1540,-1418,-1332,-1320,-1369,-1428,-1447,
+-1414,-1355,-1294,-1225,-1129,-1000,-856,-722,-605,-499,-393,-289,-191,-104,-24,47,109,157,196,235,290,
+375,491,617,726,794,826,842,865,898,935,974,1017,1062,1091,1090,1066,1041,1032,1034,1031,1025,
+1035,1077,1145,1218,1287,1358,1440,1531,1623,1708,1787,1853,1898,1927,1960,2020,2108,2195,2261,2308,2359,
+2423,2490,2545,2592,2644,2698,2738,2754,2754,2755,2757,2745,2719,2700,2708,2723,2692,2574,2387,2197,2070,
+2032,2068,2136,2195,2216,2198,2173,2187,2255,2344,2393,2377,2330,2316,2363,2440,2489,2486,2458,2443,2460,
+2496,2540,2596,2672,2761,2835,2875,2886,2894,2914,2941,2963,2978,2997,3027,3054,3062,3049,3027,3012,3006,
+3009,3024,3055,3093,3114,3106,3097,3137,3251,3403,3520,3554,3523,3489,3495,3535,3570,3571,3549,3538,3560,
+3610,3663,3701,3726,3753,3791,3836,3877,3909,3940,3978,4023,4064,4088,4095,4093,4087,4079,4074,4076,4090,
+4111,4127,4135,4142,4160,4186,4206,4210,4205,4205,4213,4224,4233,4247,4278,4328,4379,4408,4403,4375,4346,
+4334,4329,4293,4164,3895,3479,2967,2452,2040,1812,1795,1952,2198,2440,2620,2737,2816,2879,2922,2939,2933,
+2913,2885,2842,2782,2713,2644,2571,2486,2407,2367,2385,2425,2419,2327,2182,2058,2002,1995,1986,1948,1899,
+1866,1849,1823,1774,1713,1661,1624,1590,1549,1504,1464,1425,1381,1327,1270,1223,1189,1166,1146,1128,1107,
+1081,1048,1014,985,963,940,909,869,828,796,773,753,728,692,649,609,582,571,565,550,517,
+471,422,376,332,294,265,246,229,206,174,141,116,103,96,90,82,70,55,36,16,0,
+-10,-19,-33,-53,-78,-105,-133,-158,-178,-191,-202,-218,-238,-261,-284,-306,-327,-345,-356,-361,-364,
+-368,-371,-374,-382,-403,-436,-472,-505,-534,-563,-594,-625,-653,-679,-707,-738,-769,-796,-821,-844,-866,
+-884,-894,-902,-912,-925,-939,-953,-963,-968,-969,-969,-973,-981,-991,-998,-1001,-1005,-1014,-1026,-1038,-1047,
+-1054,-1058,-1060,-1063,-1070,-1081,-1095,-1108,-1118,-1128,-1139,-1150,-1161,-1172,-1184,-1194,-1202,-1207,-1213,-1220,-1226,
+-1225,-1220,-1216,-1218,-1224,-1225,-1217,-1206,-1196,-1190,-1185,-1181,-1180,-1182,-1182,-1175,-1167,-1167,-1174,-1177,-1167,
+-1146,-1126,-1119,-1122,-1126,-1123,-1113,-1101,-1091,-1084,-1084,-1090,-1095,-1095,-1091,-1088,-1088,-1089,-1087,-1083,-1081,
+-1083,-1084,-1081,-1077,-1077,-1082,-1088,-1089,-1087,-1085,-1086,-1087,-1087,-1086,-1085,-1084,-1081,-1076,-1073,-1072,-1074,
+-1074,-1072,-1067,-1061,-1056,-1053,-1050,-1045,-1039,-1034,-1031,-1028,-1021,-1011,-1000,-992,-986,-978,-966,-953,-943,
+-936,-932,-928,-924,-924,-923,-918,-909,-898,-892,-888,-886,-881,-875,-867,-857,-845,-832,-823,-816,-809,
+-800,-792,-786,-781,-774,-763,-752,-745,-740,-733,-723,-714,-709,-706,-700,-690,-678,-666,-654,-643,-633,
+-628,-626,-624,-618,-610,-600,-590,-580,-574,-570,-570,-568,-562,-553,-543,-532,-520,-509,-499,-490,-479,
+-465,-452,-442,-436,-425,-406,-379,-351,-328,-312,-299,-287,-272,-252,-227,-204,-189,-182,-176,-165,-152,
+-144,-141,-138,-127,-112,-99,-91,-83,-72,-59,-49,-44,-41,-33,-21,-6,9,24,38,50,65,
+85,114,146,177,204,233,263,291,316,339,366,398,426,449,473,505,543,577,598,613,633,
+665,702,737,767,796,828,861,892,924,960,997,1030,1061,1096,1141,1192,1237,1269,1292,1317,1350,
+1389,1426,1461,1496,1529,1537,1484,1345,1147,974,934,1089,1416,1826,2218,2535,2776,2959,3100,3194,3218,
+3147,2962,2682,2366,2105,1961,1936,1973,2014,2047,2102,2211,2359,2489,2549,2536,2498,2493,2538,2600,2628,
+2596,2518,2425,2336,2251,2167,2090,2030,1989,1957,1920,1877,1836,1804,1776,1748,1718,1695,1687,1694,1710,
+1727,1742,1751,1755,1753,1742,1723,1698,1675,1660,1648,1630,1597,1554,1520,1503,1495,1477,1437,1382,1329,
+1287,1251,1208,1151,1085,1017,954,891,824,753,694,666,673,690,672,587,440,269,119,11,-60,
+-115,-165,-213,-259,-300,-337,-371,-402,-434,-466,-495,-519,-540,-562,-589,-621,-653,-680,-701,-720,-738,
+-754,-763,-761,-747,-730,-721,-726,-741,-762,-781,-794,-798,-791,-775,-759,-747,-736,-720,-700,-683,-673,
+-665,-649,-619,-579,-532,-476,-409,-335,-268,-223,-200,-189,-178,-163,-140,-106,-63,-21,10,31,49,
+73,100,121,134,147,170,203,240,272,303,334,369,407,448,492,536,572,596,610,620,632,
+649,670,695,721,745,764,784,807,834,864,891,919,950,984,1017,1048,1081,1117,1153,1185,1208,
+1225,1242,1261,1281,1302,1322,1342,1361,1380,1399,1419,1439,1456,1471,1484,1497,1509,1522,1535,1547,1557,
+1566,1574,1584,1596,1607,1616,1625,1637,1651,1663,1668,1670,1672,1678,1681,1677,1669,1662,1658,1650,1637,
+1621,1608,1597,1585,1571,1561,1557,1556,1552,1543,1535,1534,1537,1538,1538,1541,1548,1556,1560,1564,1573,
+1585,1597,1609,1627,1652,1673,1684,1691,1710,1751,1797,1825,1829,1827,1834,1844,1842,1830,1823,1832,1845,
+1852,1864,1909,1994,2082,2126,2109,2082,2004,1954,1946,1978,2051,2162,2278,2336,2296,2190,2102,2088,2132,
+2178,2194,2198,2213,2234,2236,2215,2194,2199,2223,2246,2256,2267,2289,2313,2324,2319,2312,2317,2331,2345,
+2359,2378,2402,2421,2432,2440,2455,2475,2491,2502,2515,2535,2561,2584,2606,2631,2655,2671,2674,2673,2679,
+2694,2709,2720,2732,2747,2757,2761,2774,2825,2920,3025,3091,3101,3083,3074,3090,3120,3155,3200,3262,3321,
+3348,3338,3320,3336,3398,3478,3527,3518,3456,3374,3309,3276,3266,3253,3220,3170,3121,3083,3045,2997,2943,
+2910,2912,2941,2973,2993,3005,3019,3036,3048,3052,3048,3037,3021,3005,2999,3009,3017,2994,2926,2825,2721,
+2631,2557,2497,2453,2430,2423,2422,2421,2423,2431,2442,2451,2461,2481,2516,2560,2606,2656,2714,2774,2814,
+2818,2785,2726,2649,2552,2438,2317,2208,2123,2063,2022,1996,1983,1979,1982,1988,1998,2008,2015,2024,2045,
+2082,2121,2148,2163,2184,2222,2266,2288,2289,2305,2385,2539,2726,2887,2983,3015,3007,2983,2956,2926,2891,
+2847,2795,2740,2689,2642,2597,2554,2519,2495,2478,2461,2441,2424,2411,2398,2378,2353,2334,2326,2320,2307,
+2289,2275,2265,2253,2233,2212,2204,2215,2236,2257,2273,2282,2287,2293,2311,2346,2379,2388,2370,2359,2386,
+2437,2459,2416,2337,2286,2289,2305,2279,2206,2138,2118,2128,2118,2063,1991,1938,1907,1877,1839,1807,1797,
+1799,1790,1767,1747,1745,1751,1747,1728,1709,1699,1690,1671,1643,1619,1606,1598,1583,1559,1534,1513,1493,
+1471,1447,1427,1408,1386,1360,1331,1304,1280,1256,1233,1211,1186,1154,1118,1085,1060,1039,1015,985,952,
+923,895,866,833,801,772,744,716,688,664,644,625,603,578,552,525,497,467,438,411,383,
+351,315,278,241,200,153,100,49,4,-36,-78,-126,-179,-231,-277,-317,-356,-400,-448,-496,-537,
+-574,-613,-660,-713,-762,-802,-836,-874,-924,-986,-1049,-1103,-1139,-1159,-1172,-1187,-1209,-1235,-1261,-1288,-1322,
+-1368,-1428,-1497,-1567,-1635,-1699,-1757,-1811,-1862,-1914,-1968,-2021,-2072,-2123,-2173,-2221,-2264,-2304,-2346,-2392,-2437,
+-2477,-2516,-2562,-2614,-2664,-2702,-2728,-2757,-2796,-2841,-2886,-2934,-2989,-3050,-3104,-3141,-3173,-3217,-3274,-3328,-3363,
+-3383,-3401,-3425,-3441,-3442,-3439,-3452,-3486,-3521,-3541,-3551,-3576,-3629,-3697,-3760,-3807,-3844,-3874,-3898,-3917,-3940,
+-3972,-4006,-4026,-4030,-4032,-4048,-4072,-4085,-4070,-4036,-4008,-4001,-4009,-4019,-4025,-4032,-4044,-4062,-4076,-4075,-4058,
+-4034,-4013,-3997,-3980,-3949,-3903,-3853,-3819,-3811,-3827,-3857,-3885,-3901,-3900,-3886,-3871,-3861,-3853,-3834,-3798,-3747,
+-3680,-3590,-3480,-3378,-3330,-3353,-3400,-3386,-3259,-3054,-2860,-2744,-2708,-2703,-2692,-2673,-2665,-2675,-2693,-2711,-2727,
+-2741,-2749,-2748,-2744,-2748,-2761,-2772,-2774,-2776,-2788,-2809,-2817,-2792,-2731,-2654,-2590,-2554,-2545,-2549,-2546,-2522,
+-2471,-2402,-2331,-2269,-2223,-2190,-2166,-2143,-2117,-2086,-2056,-2039,-2039,-2048,-2054,-2050,-2037,-2025,-2017,-2010,-1991,
+-1955,-1905,-1853,-1807,-1758,-1687,-1580,-1461,-1377,-1368,-1422,-1487,-1510,-1478,-1416,-1349,-1274,-1174,-1044,-905,-782,
+-680,-584,-482,-373,-268,-172,-82,2,74,126,161,193,243,326,441,569,683,757,789,795,798,
+810,834,867,905,941,960,956,940,932,938,949,953,957,982,1039,1114,1186,1249,1312,1386,1469,
+1549,1625,1698,1767,1820,1855,1891,1951,2038,2129,2204,2261,2318,2386,2456,2517,2571,2628,2687,2731,2748,
+2740,2719,2689,2652,2618,2606,2616,2612,2544,2396,2209,2050,1966,1958,2002,2067,2123,2143,2127,2112,2152,
+2264,2395,2459,2418,2318,2253,2272,2348,2413,2427,2407,2388,2393,2419,2463,2530,2620,2713,2781,2811,2819,
+2829,2851,2878,2898,2915,2941,2976,3007,3016,3004,2986,2974,2969,2972,2988,3024,3066,3088,3074,3047,3059,
+3147,3289,3420,3483,3475,3444,3436,3463,3495,3504,3492,3486,3510,3559,3611,3645,3662,3683,3722,3776,3827,
+3863,3888,3916,3954,3997,4033,4056,4067,4065,4053,4038,4031,4040,4062,4083,4097,4108,4123,4141,4157,4165,
+4170,4179,4191,4200,4208,4226,4264,4317,4361,4376,4358,4327,4303,4295,4280,4210,4030,3709,3259,2745,2266,
+1923,1781,1844,2048,2294,2501,2641,2733,2809,2873,2907,2905,2885,2868,2853,2818,2753,2672,2599,2530,2451,
+2364,2309,2315,2360,2373,2300,2160,2030,1965,1956,1954,1925,1879,1844,1823,1796,1749,1691,1642,1606,1574,
+1535,1492,1448,1405,1357,1303,1252,1211,1181,1156,1132,1108,1085,1058,1025,990,960,937,915,887,852,
+815,782,756,736,714,685,649,611,582,565,555,539,509,468,424,381,338,297,262,236,219,
+203,181,154,128,106,90,80,72,63,48,26,2,-16,-27,-34,-41,-54,-74,-101,-130,-156,
+-175,-188,-200,-216,-236,-258,-282,-306,-330,-348,-356,-360,-364,-373,-381,-386,-391,-403,-426,-458,-490,
+-520,-550,-583,-616,-647,-677,-708,-740,-768,-792,-814,-837,-860,-880,-894,-904,-913,-924,-936,-949,-961,
+-968,-970,-969,-972,-981,-994,-1005,-1012,-1015,-1020,-1029,-1040,-1050,-1059,-1066,-1069,-1073,-1079,-1089,-1102,-1113,
+-1122,-1128,-1136,-1146,-1158,-1169,-1182,-1193,-1201,-1206,-1211,-1216,-1219,-1217,-1211,-1208,-1211,-1215,-1214,-1205,-1191,
+-1180,-1172,-1167,-1165,-1167,-1170,-1171,-1166,-1161,-1161,-1164,-1160,-1145,-1126,-1113,-1112,-1116,-1117,-1114,-1109,-1106,
+-1103,-1101,-1103,-1108,-1113,-1115,-1113,-1110,-1112,-1113,-1110,-1103,-1096,-1094,-1096,-1095,-1093,-1093,-1096,-1101,-1102,
+-1099,-1096,-1096,-1098,-1098,-1097,-1094,-1092,-1089,-1085,-1082,-1079,-1078,-1078,-1078,-1075,-1069,-1063,-1059,-1056,-1053,
+-1049,-1043,-1037,-1031,-1026,-1019,-1011,-1004,-997,-988,-975,-962,-952,-948,-947,-945,-942,-938,-934,-929,-921,
+-912,-905,-900,-897,-894,-889,-880,-867,-852,-840,-831,-826,-820,-810,-800,-790,-782,-772,-761,-751,-746,
+-742,-737,-727,-717,-709,-703,-698,-689,-679,-668,-657,-647,-638,-632,-629,-627,-623,-616,-608,-597,-588,
+-581,-578,-577,-574,-567,-555,-543,-530,-517,-506,-499,-495,-488,-476,-463,-451,-443,-433,-415,-390,-362,
+-337,-319,-305,-295,-284,-268,-247,-226,-212,-204,-198,-186,-173,-164,-160,-155,-144,-129,-115,-106,-97,
+-86,-74,-64,-57,-51,-41,-28,-15,-1,14,30,46,64,87,116,149,179,207,233,261,288,
+313,338,365,394,420,442,468,501,536,561,573,582,600,633,669,700,725,750,776,801,826,
+859,904,954,999,1034,1068,1110,1154,1191,1215,1237,1270,1314,1360,1401,1440,1485,1526,1531,1459,1300,
+1094,933,915,1091,1430,1839,2213,2495,2689,2845,2996,3136,3211,3157,2950,2631,2298,2054,1949,1955,2001,
+2033,2055,2110,2226,2380,2510,2567,2555,2521,2513,2539,2569,2569,2528,2460,2382,2301,2215,2131,2059,2008,
+1972,1939,1902,1864,1831,1802,1771,1735,1703,1687,1691,1707,1727,1742,1749,1752,1751,1750,1745,1735,1719,
+1699,1681,1664,1639,1605,1567,1539,1524,1514,1492,1450,1396,1344,1302,1265,1222,1165,1094,1015,938,868,
+804,750,712,700,709,715,683,590,447,290,150,42,-40,-109,-168,-218,-262,-303,-344,-381,-413,
+-440,-466,-491,-517,-541,-566,-592,-621,-649,-674,-694,-709,-724,-741,-757,-766,-765,-756,-747,-747,-754,
+-766,-777,-786,-788,-783,-772,-758,-745,-734,-721,-705,-689,-677,-665,-648,-623,-590,-551,-502,-440,-372,
+-310,-266,-238,-218,-198,-177,-154,-124,-85,-41,-2,28,55,82,106,120,129,145,178,225,268,
+297,314,331,357,395,441,491,540,583,614,633,645,654,667,685,708,733,757,778,798,818,
+840,864,892,925,962,999,1034,1067,1102,1138,1172,1201,1225,1246,1268,1288,1305,1322,1341,1362,1384,
+1403,1422,1443,1464,1484,1500,1513,1525,1536,1549,1562,1575,1585,1594,1602,1611,1621,1627,1630,1636,1651,
+1673,1693,1704,1708,1711,1715,1715,1707,1692,1676,1660,1645,1630,1616,1606,1597,1585,1570,1559,1555,1555,
+1552,1544,1540,1543,1549,1553,1554,1558,1566,1574,1577,1579,1586,1599,1613,1625,1637,1652,1665,1676,1693,
+1723,1761,1781,1769,1742,1740,1785,1857,1909,1915,1883,1840,1806,1795,1828,1915,2033,2123,2139,2082,2002,
+1932,1910,1933,1976,2035,2122,2226,2296,2285,2207,2125,2093,2109,2136,2150,2161,2183,2204,2203,2181,2164,
+2172,2198,2220,2231,2244,2267,2290,2297,2292,2290,2302,2321,2336,2348,2366,2389,2409,2420,2429,2443,2463,
+2478,2486,2494,2511,2535,2561,2588,2616,2642,2657,2659,2656,2660,2671,2681,2688,2699,2717,2732,2734,2738,
+2777,2865,2979,3068,3107,3109,3106,3111,3118,3124,3148,3205,3283,3344,3365,3357,3355,3379,3417,3436,3416,
+3361,3295,3245,3225,3221,3208,3169,3110,3050,2999,2951,2894,2830,2778,2756,2762,2782,2806,2833,2867,2901,
+2927,2941,2947,2947,2945,2946,2956,2972,2974,2938,2860,2760,2666,2591,2533,2486,2456,2446,2455,2467,2476,
+2483,2492,2505,2518,2535,2561,2598,2640,2684,2733,2792,2849,2885,2883,2843,2777,2693,2591,2475,2355,2248,
+2165,2108,2071,2052,2044,2044,2046,2051,2059,2067,2072,2080,2101,2138,2176,2199,2210,2228,2265,2305,2326,
+2329,2355,2447,2611,2803,2963,3059,3096,3097,3082,3057,3026,2987,2938,2882,2823,2767,2715,2667,2622,2584,
+2559,2542,2526,2508,2492,2480,2467,2449,2430,2415,2407,2400,2387,2372,2359,2350,2336,2315,2297,2294,2308,
+2330,2349,2363,2370,2370,2371,2388,2427,2472,2491,2479,2465,2487,2538,2566,2527,2438,2357,2322,2311,2277,
+2212,2153,2136,2146,2141,2095,2027,1970,1933,1905,1879,1861,1855,1851,1835,1810,1797,1802,1811,1807,1788,
+1768,1757,1747,1727,1700,1678,1665,1652,1631,1603,1577,1557,1539,1517,1494,1473,1453,1430,1402,1374,1350,
+1327,1304,1279,1253,1227,1197,1164,1133,1107,1085,1057,1023,987,958,934,909,879,848,819,791,762,
+732,705,684,666,647,624,597,571,544,516,488,459,431,401,369,333,294,251,205,158,112,
+71,29,-14,-63,-114,-163,-207,-248,-290,-337,-389,-442,-488,-526,-563,-605,-657,-713,-762,-801,-835,
+-873,-922,-976,-1025,-1059,-1080,-1094,-1114,-1141,-1172,-1205,-1241,-1286,-1341,-1404,-1467,-1528,-1588,-1648,-1704,-1756,
+-1805,-1855,-1908,-1961,-2014,-2065,-2116,-2165,-2208,-2246,-2285,-2328,-2372,-2414,-2453,-2498,-2551,-2605,-2653,-2692,-2728,
+-2764,-2798,-2832,-2868,-2917,-2976,-3036,-3089,-3138,-3192,-3247,-3291,-3319,-3339,-3364,-3390,-3406,-3407,-3408,-3430,-3469,
+-3503,-3518,-3531,-3573,-3654,-3750,-3825,-3864,-3879,-3889,-3902,-3918,-3936,-3958,-3981,-3998,-4009,-4021,-4043,-4069,-4084,
+-4079,-4060,-4044,-4039,-4037,-4028,-4013,-4004,-4011,-4032,-4054,-4062,-4055,-4036,-4015,-3989,-3954,-3902,-3837,-3775,-3732,
+-3722,-3747,-3795,-3844,-3873,-3873,-3855,-3840,-3838,-3838,-3822,-3784,-3731,-3666,-3578,-3464,-3351,-3291,-3309,-3360,-3355,
+-3239,-3041,-2852,-2743,-2712,-2711,-2700,-2681,-2676,-2691,-2716,-2737,-2753,-2767,-2781,-2794,-2807,-2822,-2837,-2842,-2837,
+-2833,-2842,-2857,-2857,-2824,-2767,-2710,-2674,-2659,-2650,-2632,-2600,-2556,-2504,-2447,-2387,-2330,-2282,-2248,-2227,-2210,
+-2191,-2166,-2144,-2131,-2129,-2129,-2124,-2113,-2101,-2092,-2083,-2066,-2037,-1998,-1954,-1913,-1875,-1830,-1759,-1655,-1536,
+-1446,-1420,-1455,-1507,-1528,-1502,-1447,-1383,-1311,-1218,-1101,-978,-869,-773,-675,-565,-449,-338,-236,-138,-45,
+32,86,115,138,182,262,380,515,633,708,734,728,717,718,734,761,791,816,829,830,827,
+834,851,871,886,906,946,1010,1084,1150,1204,1260,1328,1401,1472,1538,1606,1673,1731,1776,1821,1886,
+1974,2064,2139,2199,2262,2336,2414,2482,2541,2598,2652,2689,2697,2679,2644,2602,2560,2531,2519,2508,2461,
+2347,2181,2019,1914,1882,1900,1942,1994,2039,2059,2052,2055,2126,2276,2436,2505,2440,2302,2197,2190,2254,
+2323,2353,2352,2348,2357,2378,2415,2481,2572,2662,2723,2745,2751,2764,2789,2814,2832,2851,2883,2924,2958,
+2970,2963,2951,2942,2935,2935,2950,2989,3038,3065,3050,3008,2989,3040,3160,3298,3392,3416,3396,3377,3385,
+3413,3436,3446,3459,3494,3552,3608,3639,3646,3655,3687,3739,3788,3818,3831,3847,3880,3925,3970,4005,4026,
+4033,4025,4006,3988,3983,3994,4016,4039,4060,4078,4095,4111,4127,4143,4159,4168,4171,4178,4203,4249,4299,
+4330,4330,4306,4279,4263,4250,4208,4087,3846,3470,2995,2499,2081,1826,1775,1904,2134,2369,2542,2649,2724,
+2796,2859,2888,2876,2848,2831,2820,2788,2721,2637,2564,2503,2427,2331,2252,2233,2270,2301,2261,2148,2022,
+1942,1918,1912,1892,1855,1820,1791,1759,1716,1667,1625,1590,1557,1519,1477,1435,1389,1338,1286,1241,1206,
+1177,1147,1116,1086,1061,1033,999,963,931,907,885,861,830,797,766,739,717,697,676,649,617,
+586,561,541,518,488,452,415,379,343,303,264,232,211,199,185,166,141,114,90,73,62,
+52,38,17,-6,-26,-39,-47,-53,-63,-80,-103,-131,-157,-177,-191,-204,-218,-234,-251,-272,-298,
+-324,-343,-351,-353,-358,-370,-382,-390,-395,-404,-424,-452,-483,-514,-546,-580,-614,-645,-675,-707,-738,
+-766,-788,-808,-828,-850,-871,-889,-903,-914,-924,-934,-945,-956,-965,-969,-969,-970,-979,-993,-1008,-1017,
+-1022,-1026,-1033,-1042,-1052,-1062,-1070,-1075,-1079,-1084,-1092,-1103,-1113,-1121,-1128,-1136,-1145,-1157,-1169,-1182,-1194,
+-1201,-1205,-1206,-1207,-1207,-1205,-1202,-1201,-1203,-1207,-1204,-1195,-1184,-1175,-1169,-1165,-1162,-1160,-1159,-1158,-1155,
+-1153,-1153,-1153,-1147,-1135,-1124,-1118,-1117,-1113,-1105,-1100,-1103,-1114,-1121,-1120,-1115,-1115,-1119,-1125,-1127,-1127,
+-1129,-1132,-1130,-1122,-1114,-1110,-1111,-1113,-1112,-1111,-1112,-1116,-1119,-1118,-1115,-1113,-1113,-1113,-1110,-1107,-1104,
+-1101,-1099,-1097,-1093,-1089,-1086,-1085,-1084,-1080,-1073,-1067,-1064,-1063,-1061,-1054,-1045,-1037,-1032,-1026,-1019,-1011,
+-1003,-994,-984,-973,-966,-964,-965,-964,-959,-951,-943,-938,-933,-927,-919,-912,-906,-903,-898,-890,-877,
+-863,-850,-840,-834,-827,-819,-809,-798,-788,-776,-764,-754,-749,-745,-740,-732,-721,-712,-704,-698,-691,
+-682,-672,-660,-649,-640,-634,-630,-626,-622,-616,-610,-602,-594,-588,-584,-582,-578,-570,-559,-547,-533,
+-519,-507,-499,-496,-490,-481,-468,-457,-447,-437,-420,-398,-373,-348,-326,-309,-298,-289,-279,-264,-247,
+-232,-221,-210,-199,-187,-180,-175,-169,-157,-142,-131,-124,-116,-105,-92,-81,-72,-63,-50,-35,-22,
+-9,4,21,40,61,87,118,149,176,200,223,250,280,308,335,361,386,410,434,463,495,
+525,544,552,562,582,610,638,664,693,728,761,784,801,828,877,939,998,1042,1075,1105,1131,
+1150,1166,1193,1241,1301,1354,1394,1432,1479,1518,1510,1416,1238,1033,895,915,1127,1490,1899,2245,2477,
+2620,2747,2908,3079,3181,3131,2911,2588,2275,2071,2002,2023,2064,2085,2102,2161,2280,2426,2536,2572,2547,
+2511,2502,2513,2516,2490,2441,2387,2335,2272,2192,2104,2030,1980,1947,1917,1884,1852,1822,1790,1751,1710,
+1684,1680,1696,1720,1739,1750,1753,1752,1750,1749,1748,1743,1732,1716,1697,1676,1650,1618,1585,1558,1539,
+1519,1487,1444,1396,1354,1319,1285,1242,1181,1100,1006,913,837,782,749,732,728,729,718,671,577,
+447,305,175,64,-29,-108,-172,-223,-265,-305,-345,-381,-409,-430,-452,-476,-503,-531,-557,-583,-610,
+-638,-664,-685,-699,-709,-722,-741,-761,-773,-773,-767,-763,-764,-769,-774,-777,-776,-773,-765,-755,-744,
+-733,-722,-710,-696,-682,-666,-644,-618,-589,-556,-514,-461,-403,-353,-315,-288,-260,-228,-194,-162,-130,
+-95,-57,-18,19,58,97,129,149,160,179,215,266,313,343,359,373,395,427,465,505,545,
+583,614,636,649,660,673,692,715,740,767,793,818,840,857,874,896,927,965,1004,1041,1075,
+1109,1141,1171,1197,1221,1246,1272,1294,1311,1326,1344,1365,1387,1408,1428,1449,1471,1492,1511,1527,1543,
+1558,1574,1590,1604,1616,1626,1635,1644,1651,1655,1657,1664,1681,1706,1728,1739,1741,1740,1738,1731,1716,
+1694,1671,1653,1639,1627,1618,1612,1605,1594,1580,1570,1569,1569,1566,1557,1551,1552,1556,1558,1558,1562,
+1571,1579,1581,1582,1590,1607,1624,1635,1641,1651,1667,1692,1724,1761,1786,1778,1735,1689,1690,1760,1868,
+1956,1982,1947,1881,1820,1793,1824,1915,2026,2093,2077,2002,1914,1878,1893,1932,1961,1982,2030,2114,2195,
+2219,2176,2111,2075,2079,2099,2115,2130,2149,2165,2164,2148,2140,2153,2178,2197,2207,2221,2243,2262,2268,
+2265,2271,2290,2311,2325,2335,2353,2379,2402,2413,2420,2432,2449,2463,2469,2477,2494,2518,2543,2568,2596,
+2623,2640,2644,2640,2640,2646,2650,2652,2661,2680,2699,2706,2712,2745,2825,2934,3033,3094,3123,3136,3141,
+3130,3110,3108,3153,3238,3323,3371,3377,3367,3363,3369,3369,3348,3308,3264,3232,3218,3212,3193,3151,3089,
+3025,2969,2917,2857,2789,2727,2685,2664,2658,2668,2696,2743,2798,2843,2871,2885,2890,2894,2900,2911,2919,
+2907,2861,2784,2698,2626,2574,2535,2503,2483,2483,2497,2515,2528,2538,2548,2562,2579,2604,2638,2678,2718,
+2755,2798,2849,2901,2930,2923,2879,2810,2723,2621,2506,2390,2288,2209,2154,2122,2109,2107,2109,2111,2114,
+2120,2126,2128,2133,2151,2186,2224,2249,2263,2283,2318,2353,2369,2374,2408,2509,2673,2856,3005,3099,3147,
+3164,3163,3145,3115,3076,3029,2972,2909,2848,2793,2744,2698,2658,2627,2606,2588,2572,2557,2546,2537,2527,
+2516,2505,2496,2486,2472,2458,2447,2436,2421,2401,2388,2389,2403,2421,2438,2451,2460,2461,2461,2477,2521,
+2575,2607,2599,2576,2577,2609,2628,2590,2501,2410,2359,2335,2303,2248,2195,2171,2169,2155,2111,2049,1996,
+1963,1940,1922,1909,1903,1895,1875,1853,1843,1849,1859,1856,1842,1827,1818,1806,1785,1759,1737,1722,1703,
+1676,1646,1622,1607,1590,1567,1541,1518,1497,1473,1445,1417,1394,1373,1348,1319,1291,1267,1242,1213,1182,
+1153,1125,1094,1059,1025,997,976,954,927,897,868,840,809,777,747,724,706,689,666,641,616,
+591,566,538,508,479,450,418,382,341,299,257,217,178,137,93,46,-1,-48,-92,-135,-179,
+-225,-275,-331,-386,-435,-475,-510,-551,-605,-668,-727,-772,-803,-828,-861,-901,-942,-976,-1001,-1024,-1051,
+-1083,-1117,-1152,-1193,-1245,-1307,-1372,-1432,-1487,-1542,-1598,-1652,-1702,-1750,-1800,-1852,-1906,-1959,-2010,-2061,-2111,
+-2155,-2195,-2236,-2281,-2328,-2372,-2411,-2451,-2497,-2547,-2597,-2643,-2686,-2728,-2765,-2797,-2828,-2864,-2906,-2952,-2997,
+-3045,-3095,-3142,-3177,-3204,-3232,-3269,-3305,-3325,-3327,-3329,-3351,-3389,-3423,-3446,-3477,-3542,-3643,-3745,-3812,-3831,
+-3827,-3829,-3850,-3885,-3923,-3957,-3985,-4004,-4018,-4032,-4052,-4072,-4085,-4086,-4081,-4078,-4079,-4072,-4051,-4020,-3993,
+-3985,-3995,-4013,-4027,-4033,-4028,-4011,-3977,-3922,-3851,-3774,-3709,-3665,-3654,-3676,-3725,-3779,-3814,-3818,-3802,-3793,
+-3804,-3819,-3812,-3776,-3721,-3658,-3575,-3464,-3347,-3275,-3278,-3321,-3320,-3217,-3035,-2860,-2758,-2732,-2734,-2724,-2705,
+-2699,-2716,-2744,-2769,-2787,-2805,-2826,-2850,-2875,-2897,-2910,-2907,-2891,-2875,-2874,-2883,-2881,-2856,-2814,-2777,-2757,
+-2748,-2733,-2700,-2653,-2603,-2552,-2497,-2438,-2378,-2328,-2298,-2284,-2277,-2268,-2255,-2245,-2242,-2242,-2239,-2232,-2227,
+-2228,-2227,-2210,-2170,-2116,-2065,-2027,-2001,-1973,-1932,-1863,-1764,-1648,-1548,-1492,-1485,-1501,-1504,-1479,-1433,-1381,
+-1321,-1244,-1150,-1048,-949,-851,-744,-626,-507,-396,-294,-193,-95,-13,37,60,75,113,195,317,457,
+577,649,667,653,637,637,652,673,691,705,715,724,735,750,773,800,829,866,917,980,1046,
+1101,1149,1200,1263,1331,1398,1462,1526,1590,1648,1700,1757,1832,1920,2002,2068,2125,2192,2275,2361,2438,
+2503,2558,2599,2616,2602,2566,2525,2491,2468,2450,2429,2381,2280,2126,1960,1840,1797,1815,1854,1891,1927,
+1960,1977,1973,1984,2064,2217,2373,2434,2363,2225,2124,2116,2174,2237,2271,2283,2291,2301,2315,2345,2408,
+2501,2592,2649,2668,2674,2690,2716,2741,2759,2781,2819,2865,2902,2918,2917,2910,2903,2894,2887,2896,2930,
+2981,3018,3014,2974,2939,2957,3047,3180,3297,3353,3349,3323,3315,3335,3367,3394,3422,3468,3534,3597,3633,
+3638,3639,3662,3708,3753,3777,3783,3792,3819,3858,3896,3926,3949,3967,3977,3973,3959,3946,3944,3959,3985,
+4013,4038,4059,4080,4103,4123,4133,4131,4127,4137,4173,4226,4270,4287,4275,4251,4229,4212,4180,4097,3920,
+3619,3200,2715,2256,1917,1760,1793,1968,2202,2415,2562,2649,2712,2776,2834,2860,2849,2821,2801,2785,2748,
+2678,2598,2534,2484,2416,2317,2220,2179,2206,2253,2247,2165,2042,1938,1882,1862,1848,1825,1794,1758,1719,
+1678,1641,1609,1577,1541,1502,1462,1421,1375,1323,1273,1233,1202,1172,1136,1098,1065,1038,1011,977,939,
+906,880,858,833,805,775,747,722,700,683,666,646,620,589,558,530,501,468,433,400,371,
+341,305,266,230,205,190,180,166,145,120,94,72,57,44,30,11,-9,-29,-46,-60,-71,
+-83,-99,-119,-143,-167,-187,-203,-216,-227,-237,-248,-265,-289,-315,-335,-344,-347,-353,-365,-379,-390,
+-398,-410,-430,-455,-484,-515,-549,-585,-619,-649,-677,-706,-735,-762,-784,-803,-821,-842,-862,-882,-899,
+-915,-927,-937,-946,-956,-966,-971,-972,-974,-980,-993,-1007,-1018,-1027,-1035,-1043,-1051,-1058,-1064,-1070,-1076,
+-1079,-1083,-1089,-1098,-1108,-1118,-1128,-1139,-1150,-1161,-1173,-1185,-1195,-1201,-1201,-1198,-1195,-1193,-1190,-1188,-1188,
+-1191,-1192,-1189,-1182,-1175,-1170,-1168,-1165,-1160,-1154,-1149,-1144,-1140,-1139,-1140,-1139,-1134,-1129,-1126,-1126,-1123,
+-1111,-1095,-1090,-1101,-1119,-1129,-1121,-1107,-1100,-1108,-1122,-1132,-1137,-1142,-1146,-1146,-1140,-1132,-1128,-1128,-1130,
+-1129,-1125,-1123,-1125,-1128,-1131,-1130,-1128,-1125,-1123,-1121,-1118,-1115,-1114,-1113,-1112,-1109,-1105,-1101,-1099,-1098,
+-1095,-1089,-1083,-1079,-1078,-1075,-1068,-1059,-1052,-1046,-1039,-1028,-1015,-1005,-998,-992,-985,-980,-980,-982,-981,
+-974,-962,-951,-946,-943,-939,-930,-919,-910,-905,-901,-895,-886,-873,-860,-848,-838,-830,-823,-816,-808,
+-797,-785,-773,-764,-757,-752,-746,-739,-730,-720,-711,-703,-695,-686,-675,-661,-648,-638,-632,-627,-622,
+-616,-610,-605,-599,-593,-588,-584,-581,-576,-569,-560,-551,-541,-528,-515,-505,-497,-490,-481,-471,-461,
+-452,-440,-423,-402,-379,-356,-335,-316,-303,-294,-287,-276,-261,-245,-230,-216,-204,-194,-188,-184,-177,
+-165,-154,-148,-144,-137,-125,-110,-98,-88,-76,-60,-41,-25,-12,0,15,32,53,78,108,138,
+162,182,204,232,266,298,326,350,375,402,431,463,495,526,552,576,602,627,647,662,685,
+728,790,848,879,884,888,916,967,1024,1067,1094,1111,1120,1128,1145,1185,1249,1319,1372,1406,1436,
+1473,1496,1463,1343,1153,959,858,930,1195,1592,2001,2309,2479,2566,2668,2832,3015,3116,3053,2833,2539,
+2282,2130,2086,2103,2127,2136,2154,2215,2328,2455,2537,2545,2503,2463,2453,2459,2448,2407,2357,2318,2289,
+2245,2171,2081,2003,1952,1922,1895,1866,1834,1802,1765,1723,1688,1673,1681,1704,1727,1741,1748,1751,1751,
+1750,1748,1745,1740,1730,1715,1698,1679,1655,1627,1597,1569,1542,1512,1474,1433,1395,1365,1338,1307,1261,
+1192,1099,990,889,816,779,769,766,759,740,703,640,545,425,295,172,62,-33,-113,-177,-226,
+-268,-307,-344,-376,-400,-420,-442,-468,-495,-521,-545,-567,-591,-617,-644,-668,-684,-695,-706,-724,-747,
+-766,-772,-769,-763,-762,-766,-770,-770,-767,-763,-759,-752,-744,-733,-720,-708,-695,-679,-658,-632,-604,
+-577,-550,-518,-477,-431,-390,-358,-331,-300,-261,-218,-177,-141,-107,-75,-41,-1,47,102,153,188,
+207,221,244,280,323,366,406,446,484,517,541,558,574,592,611,628,641,655,674,697,722,
+748,777,810,843,870,888,900,915,941,975,1013,1048,1080,1110,1139,1165,1189,1214,1241,1269,1293,
+1313,1330,1349,1370,1392,1416,1439,1461,1483,1502,1521,1542,1564,1586,1604,1621,1636,1649,1660,1668,1676,
+1683,1689,1695,1705,1722,1743,1759,1763,1758,1750,1742,1729,1709,1684,1663,1650,1642,1635,1629,1625,1619,
+1610,1598,1591,1591,1591,1584,1572,1561,1557,1556,1554,1552,1556,1567,1577,1580,1581,1589,1607,1624,1634,
+1640,1654,1684,1723,1762,1791,1800,1784,1747,1717,1724,1780,1860,1925,1952,1940,1905,1866,1842,1856,1912,
+1979,2008,1976,1914,1855,1865,1912,1957,1966,1951,1961,2019,2094,2132,2114,2071,2047,2055,2076,2091,2102,
+2113,2124,2124,2119,2120,2137,2159,2174,2184,2198,2219,2237,2244,2247,2259,2281,2301,2314,2326,2348,2377,
+2401,2411,2416,2425,2440,2451,2458,2467,2487,2512,2534,2553,2574,2599,2619,2626,2624,2623,2625,2626,2625,
+2629,2643,2663,2677,2690,2721,2787,2879,2972,3046,3100,3138,3156,3143,3112,3096,3128,3206,3293,3350,3363,
+3351,3337,3329,3323,3310,3288,3263,3242,3226,3210,3186,3148,3098,3047,2998,2947,2888,2822,2759,2708,2668,
+2635,2619,2631,2676,2741,2804,2849,2872,2879,2878,2874,2868,2855,2824,2772,2707,2647,2604,2577,2555,2534,
+2521,2523,2536,2553,2568,2581,2596,2615,2640,2677,2723,2768,2804,2827,2851,2884,2920,2940,2930,2889,2824,
+2741,2641,2531,2421,2326,2253,2203,2175,2166,2169,2174,2176,2178,2181,2184,2183,2186,2201,2234,2271,2298,
+2318,2343,2377,2407,2419,2424,2463,2564,2717,2878,3008,3097,3158,3200,3220,3215,3191,3157,3114,3059,2994,
+2930,2875,2828,2783,2739,2701,2674,2656,2641,2628,2619,2614,2610,2604,2594,2582,2570,2558,2547,2536,2522,
+2506,2490,2483,2488,2499,2510,2522,2536,2551,2559,2563,2580,2625,2684,2718,2706,2666,2638,2639,2639,2599,
+2518,2435,2387,2368,2345,2300,2247,2210,2189,2163,2120,2069,2029,2004,1985,1968,1954,1945,1935,1918,1900,
+1891,1895,1901,1900,1894,1887,1881,1867,1843,1816,1795,1777,1755,1724,1694,1673,1660,1642,1615,1586,1561,
+1541,1518,1489,1460,1436,1414,1389,1359,1332,1310,1289,1263,1230,1196,1164,1134,1102,1070,1043,1021,999,
+974,945,916,888,856,822,789,764,745,726,705,681,658,635,610,582,552,523,494,463,428,
+388,350,314,279,242,199,152,105,60,18,-24,-68,-115,-165,-218,-273,-327,-377,-417,-453,-494,
+-550,-617,-682,-731,-760,-780,-804,-836,-872,-906,-936,-965,-998,-1032,-1065,-1101,-1144,-1199,-1265,-1330,-1390,
+-1443,-1495,-1547,-1599,-1648,-1696,-1745,-1798,-1852,-1903,-1954,-2005,-2054,-2099,-2140,-2183,-2231,-2282,-2330,-2371,-2407,
+-2446,-2489,-2535,-2581,-2628,-2675,-2722,-2766,-2804,-2838,-2868,-2897,-2929,-2968,-3013,-3054,-3087,-3117,-3153,-3198,-3239,
+-3261,-3265,-3268,-3284,-3314,-3346,-3377,-3423,-3502,-3604,-3695,-3743,-3744,-3727,-3725,-3755,-3811,-3878,-3942,-3992,-4024,
+-4042,-4053,-4065,-4076,-4084,-4088,-4090,-4094,-4098,-4092,-4070,-4036,-4003,-3980,-3972,-3975,-3985,-3998,-4006,-3998,-3962,
+-3897,-3817,-3740,-3681,-3644,-3630,-3640,-3673,-3716,-3748,-3754,-3747,-3749,-3773,-3802,-3806,-3774,-3717,-3652,-3571,-3465,
+-3349,-3270,-3258,-3289,-3287,-3198,-3037,-2879,-2786,-2761,-2760,-2748,-2727,-2719,-2737,-2770,-2803,-2833,-2862,-2892,-2921,
+-2946,-2962,-2966,-2952,-2925,-2901,-2893,-2900,-2906,-2895,-2871,-2847,-2831,-2816,-2790,-2748,-2698,-2647,-2597,-2541,-2480,
+-2421,-2379,-2361,-2362,-2369,-2372,-2372,-2374,-2379,-2383,-2381,-2382,-2393,-2413,-2421,-2393,-2327,-2246,-2179,-2142,-2122,
+-2099,-2056,-1988,-1898,-1793,-1689,-1604,-1548,-1514,-1483,-1444,-1398,-1351,-1301,-1241,-1167,-1082,-990,-888,-776,-657,
+-543,-441,-343,-243,-145,-64,-17,2,17,56,135,253,385,498,565,583,570,556,557,570,584,
+592,600,614,634,656,680,708,742,784,834,889,947,1001,1049,1093,1142,1201,1269,1338,1406,1470,
+1529,1582,1636,1702,1782,1866,1938,1993,2046,2115,2203,2296,2382,2456,2516,2552,2550,2510,2454,2409,2387,
+2379,2363,2317,2223,2078,1908,1765,1696,1706,1759,1808,1840,1865,1891,1905,1899,1903,1961,2079,2198,2241,
+2185,2090,2035,2052,2110,2159,2183,2195,2205,2212,2218,2244,2312,2413,2509,2565,2581,2586,2603,2631,2656,
+2676,2705,2748,2798,2837,2854,2857,2855,2850,2840,2828,2828,2850,2893,2936,2953,2936,2906,2905,2966,3081,
+3206,3287,3302,3278,3260,3270,3300,3329,3356,3398,3461,3529,3574,3589,3596,3622,3671,3723,3756,3771,3785,
+3807,3832,3847,3853,3862,3884,3915,3938,3946,3940,3934,3940,3958,3983,4009,4034,4060,4086,4102,4100,4086,
+4077,4095,4140,4193,4225,4227,4208,4187,4167,4134,4065,3931,3702,3361,2922,2452,2047,1794,1731,1833,2032,
+2254,2441,2569,2648,2705,2758,2804,2827,2819,2796,2772,2747,2702,2633,2559,2503,2461,2402,2308,2209,2157,
+2174,2224,2239,2177,2057,1932,1846,1809,1800,1791,1767,1726,1681,1643,1617,1597,1569,1531,1487,1445,1404,
+1358,1307,1259,1222,1193,1161,1120,1078,1044,1019,993,959,921,886,858,834,807,779,751,727,706,
+687,671,657,640,616,585,553,522,490,456,420,386,357,329,298,264,229,202,182,169,156,
+139,118,96,74,56,41,26,8,-12,-33,-54,-74,-92,-110,-126,-144,-164,-184,-203,-220,-233,
+-242,-249,-257,-269,-289,-313,-331,-342,-348,-356,-368,-382,-396,-409,-426,-446,-468,-492,-519,-554,-592,
+-629,-659,-685,-710,-736,-761,-782,-801,-820,-840,-861,-880,-898,-914,-928,-939,-949,-959,-968,-975,-979,
+-981,-986,-994,-1005,-1017,-1030,-1044,-1056,-1063,-1065,-1065,-1067,-1071,-1075,-1079,-1085,-1093,-1104,-1117,-1130,-1144,
+-1156,-1167,-1177,-1186,-1194,-1197,-1197,-1193,-1188,-1185,-1182,-1180,-1179,-1178,-1176,-1170,-1163,-1158,-1155,-1154,-1151,
+-1146,-1141,-1136,-1131,-1126,-1123,-1122,-1120,-1118,-1117,-1118,-1121,-1117,-1104,-1089,-1088,-1102,-1121,-1124,-1108,-1088,
+-1083,-1098,-1121,-1140,-1149,-1154,-1159,-1162,-1159,-1153,-1149,-1151,-1155,-1155,-1147,-1137,-1131,-1130,-1133,-1134,-1134,
+-1132,-1130,-1129,-1128,-1125,-1122,-1120,-1120,-1121,-1120,-1119,-1118,-1118,-1116,-1111,-1104,-1099,-1095,-1090,-1083,-1075,
+-1069,-1064,-1056,-1042,-1025,-1011,-1003,-999,-996,-994,-994,-996,-995,-986,-973,-961,-953,-949,-943,-932,-920,
+-910,-904,-901,-896,-890,-880,-868,-854,-841,-832,-828,-824,-818,-808,-796,-786,-778,-769,-761,-753,-746,
+-739,-730,-719,-708,-699,-690,-679,-664,-650,-639,-633,-628,-621,-614,-607,-601,-596,-590,-585,-581,-578,
+-573,-565,-557,-551,-545,-537,-526,-513,-501,-491,-483,-475,-468,-457,-443,-423,-401,-380,-361,-343,-327,
+-313,-302,-293,-283,-270,-255,-240,-224,-210,-201,-196,-193,-186,-177,-169,-165,-163,-155,-141,-125,-113,
+-103,-91,-72,-50,-29,-13,0,12,25,42,65,93,122,147,167,191,221,255,287,313,338,
+367,401,437,472,505,543,587,638,688,723,733,733,751,813,908,998,1040,1031,1000,986,1004,
+1039,1072,1094,1107,1115,1129,1159,1213,1285,1353,1398,1423,1442,1462,1457,1391,1248,1056,887,834,966,
+1285,1712,2111,2371,2478,2521,2614,2790,2975,3053,2962,2741,2492,2302,2201,2169,2167,2168,2168,2186,2243,
+2339,2440,2498,2489,2438,2392,2379,2382,2367,2325,2279,2251,2236,2205,2139,2054,1980,1933,1906,1880,1849,
+1814,1779,1743,1707,1682,1678,1691,1710,1723,1730,1733,1735,1736,1734,1730,1726,1720,1710,1696,1682,1667,
+1649,1626,1597,1568,1538,1505,1468,1433,1403,1378,1351,1315,1259,1179,1075,963,867,811,798,805,805,
+780,731,665,585,488,374,254,138,35,-51,-123,-181,-230,-275,-316,-352,-382,-406,-429,-454,-479,
+-502,-522,-540,-556,-574,-594,-618,-645,-668,-684,-697,-713,-733,-753,-763,-762,-757,-756,-760,-763,-762,
+-757,-753,-752,-751,-747,-736,-722,-704,-686,-665,-640,-612,-585,-563,-546,-525,-496,-458,-418,-383,-353,
+-321,-284,-243,-200,-159,-123,-90,-58,-20,30,94,162,216,245,252,251,260,287,337,405,480,
+547,595,618,622,620,620,625,633,645,662,686,713,741,767,796,830,867,900,923,937,951,
+972,1001,1033,1062,1089,1116,1144,1172,1197,1222,1248,1275,1301,1326,1348,1369,1390,1414,1440,1468,1494,
+1515,1531,1549,1572,1599,1623,1641,1654,1667,1679,1689,1695,1701,1709,1717,1726,1738,1753,1769,1778,1776,
+1765,1754,1746,1734,1715,1693,1674,1664,1658,1652,1644,1637,1630,1622,1613,1607,1606,1604,1595,1581,1569,
+1563,1561,1558,1556,1561,1574,1584,1586,1585,1591,1605,1619,1627,1634,1656,1693,1734,1759,1765,1763,1766,
+1779,1798,1817,1827,1826,1821,1827,1852,1887,1910,1912,1906,1910,1919,1912,1882,1855,1834,1882,1947,1990,
+1986,1954,1942,1973,2025,2053,2045,2024,2021,2040,2063,2074,2077,2081,2088,2092,2092,2099,2115,2135,2149,
+2158,2171,2192,2211,2223,2234,2250,2271,2291,2306,2323,2349,2378,2398,2406,2411,2423,2439,2450,2456,2467,
+2489,2516,2536,2548,2561,2580,2598,2607,2607,2605,2608,2611,2609,2608,2614,2630,2650,2670,2698,2745,2811,
+2885,2961,3034,3099,3139,3141,3117,3100,3123,3185,3257,3305,3320,3312,3301,3293,3289,3284,3275,3261,3242,
+3217,3189,3159,3128,3097,3068,3035,2992,2937,2877,2823,2776,2731,2685,2649,2641,2675,2740,2810,2864,2891,
+2893,2879,2855,2824,2787,2743,2694,2648,2614,2593,2581,2569,2557,2551,2554,2565,2580,2597,2618,2643,2672,
+2710,2761,2819,2870,2898,2901,2897,2902,2916,2924,2912,2876,2819,2743,2650,2546,2444,2358,2293,2250,2227,
+2223,2230,2239,2242,2242,2242,2240,2238,2241,2258,2289,2323,2350,2371,2398,2432,2458,2466,2474,2517,2616,
+2753,2887,2992,3072,3144,3209,3252,3265,3252,3224,3187,3136,3073,3010,2958,2915,2870,2822,2778,2748,2730,
+2717,2705,2695,2690,2689,2685,2677,2666,2656,2648,2639,2626,2608,2590,2579,2579,2588,2595,2599,2607,2624,
+2647,2664,2671,2687,2726,2776,2803,2783,2728,2680,2659,2645,2603,2528,2452,2408,2394,2380,2343,2292,2245,
+2209,2176,2137,2099,2071,2051,2034,2015,1998,1988,1980,1969,1955,1947,1946,1947,1948,1947,1946,1941,1925,
+1899,1871,1851,1833,1809,1778,1749,1729,1714,1693,1663,1632,1607,1588,1565,1535,1505,1479,1457,1432,1404,
+1378,1358,1338,1309,1273,1237,1206,1178,1150,1119,1091,1066,1043,1019,992,963,933,900,864,831,803,
+782,764,744,722,700,677,650,621,591,564,538,510,478,443,409,375,341,301,256,208,164,
+123,83,40,-7,-59,-111,-162,-213,-264,-311,-353,-393,-438,-494,-558,-619,-666,-697,-720,-746,-779,
+-817,-853,-886,-918,-951,-983,-1015,-1050,-1095,-1152,-1218,-1284,-1344,-1397,-1447,-1497,-1546,-1594,-1641,-1691,-1743,
+-1794,-1845,-1896,-1946,-1993,-2037,-2077,-2119,-2166,-2217,-2266,-2309,-2346,-2383,-2426,-2472,-2520,-2567,-2615,-2666,-2719,
+-2770,-2811,-2843,-2869,-2898,-2936,-2980,-3022,-3057,-3090,-3128,-3171,-3209,-3231,-3239,-3246,-3261,-3284,-3310,-3340,-3388,
+-3462,-3551,-3628,-3669,-3673,-3661,-3659,-3684,-3738,-3812,-3892,-3961,-4010,-4038,-4053,-4064,-4075,-4083,-4088,-4091,-4095,
+-4097,-4091,-4076,-4052,-4025,-4000,-3978,-3964,-3962,-3972,-3985,-3983,-3951,-3886,-3805,-3732,-3681,-3650,-3635,-3633,-3647,
+-3675,-3701,-3713,-3716,-3729,-3761,-3797,-3807,-3777,-3718,-3647,-3563,-3459,-3348,-3268,-3248,-3267,-3263,-3185,-3043,-2901,
+-2814,-2784,-2777,-2760,-2738,-2730,-2751,-2792,-2839,-2884,-2926,-2964,-2991,-3005,-3007,-2997,-2976,-2948,-2926,-2921,-2931,
+-2942,-2942,-2929,-2910,-2890,-2864,-2826,-2777,-2726,-2679,-2634,-2587,-2537,-2495,-2475,-2478,-2497,-2518,-2532,-2542,-2551,
+-2559,-2563,-2562,-2566,-2587,-2616,-2628,-2595,-2515,-2418,-2340,-2293,-2265,-2233,-2184,-2120,-2044,-1958,-1860,-1760,-1667,
+-1586,-1513,-1445,-1381,-1324,-1273,-1219,-1156,-1082,-996,-896,-785,-672,-567,-472,-382,-290,-201,-130,-83,-54,
+-25,21,92,185,287,379,441,468,470,465,466,474,480,485,495,518,550,585,620,657,702,
+754,810,864,915,962,1006,1050,1097,1154,1220,1292,1362,1425,1477,1523,1575,1643,1725,1805,1869,1919,
+1972,2042,2127,2218,2306,2391,2465,2508,2500,2446,2378,2328,2305,2288,2245,2156,2020,1859,1709,1613,1596,
+1642,1707,1753,1777,1798,1823,1840,1837,1832,1860,1930,2002,2028,2000,1962,1960,1999,2047,2076,2087,2096,
+2106,2109,2111,2139,2215,2324,2422,2475,2489,2494,2513,2543,2570,2595,2630,2680,2733,2770,2786,2788,2788,
+2787,2782,2773,2766,2773,2798,2837,2872,2886,2878,2873,2907,2995,3111,3204,3240,3231,3216,3224,3248,3269,
+3281,3303,3350,3414,3467,3497,3520,3562,3628,3701,3760,3800,3831,3856,3868,3858,3835,3819,3828,3861,3900,
+3927,3937,3938,3941,3949,3964,3984,4009,4037,4061,4070,4060,4041,4037,4062,4108,4148,4162,4150,4131,4114,
+4085,4020,3898,3708,3439,3081,2655,2224,1887,1719,1736,1887,2095,2296,2457,2572,2649,2703,2745,2776,2791,
+2785,2765,2739,2707,2660,2595,2528,2474,2430,2373,2288,2195,2137,2136,2170,2183,2134,2028,1906,1811,1765,
+1755,1753,1734,1695,1648,1614,1598,1587,1564,1523,1473,1426,1383,1338,1289,1245,1212,1185,1152,1109,1063,
+1026,1000,975,943,905,869,839,813,786,757,731,709,690,673,658,645,628,605,575,541,509,
+477,445,411,377,345,315,285,255,226,201,179,162,146,130,113,95,76,59,43,26,7,
+-15,-39,-64,-88,-112,-134,-154,-172,-189,-205,-221,-237,-250,-261,-268,-275,-285,-301,-320,-338,-351,
+-362,-373,-386,-400,-415,-432,-451,-471,-489,-505,-528,-560,-599,-638,-670,-696,-719,-742,-763,-782,-800,
+-820,-842,-864,-883,-899,-913,-926,-937,-948,-958,-968,-977,-983,-987,-991,-995,-1002,-1014,-1030,-1048,-1062,
+-1067,-1066,-1062,-1061,-1065,-1071,-1078,-1086,-1096,-1107,-1120,-1134,-1146,-1158,-1167,-1175,-1183,-1189,-1193,-1195,-1193,
+-1190,-1187,-1185,-1183,-1181,-1175,-1166,-1155,-1146,-1140,-1136,-1132,-1127,-1123,-1122,-1123,-1121,-1116,-1111,-1108,-1107,
+-1106,-1106,-1106,-1106,-1102,-1095,-1088,-1092,-1106,-1119,-1117,-1100,-1084,-1085,-1106,-1133,-1151,-1158,-1161,-1167,-1173,
+-1175,-1172,-1171,-1178,-1188,-1194,-1187,-1170,-1152,-1139,-1135,-1136,-1137,-1138,-1140,-1141,-1141,-1137,-1129,-1123,-1121,
+-1124,-1128,-1131,-1133,-1132,-1131,-1127,-1122,-1117,-1111,-1103,-1094,-1087,-1082,-1080,-1073,-1059,-1040,-1022,-1012,-1008,
+-1006,-1006,-1007,-1008,-1006,-998,-985,-971,-959,-950,-939,-928,-917,-910,-905,-901,-896,-891,-884,-874,-861,
+-848,-839,-836,-832,-826,-815,-804,-795,-787,-776,-764,-754,-749,-744,-736,-722,-708,-698,-691,-683,-671,
+-657,-645,-638,-633,-626,-618,-610,-602,-595,-588,-584,-582,-580,-574,-564,-553,-547,-544,-539,-530,-516,
+-501,-491,-483,-477,-469,-457,-441,-420,-400,-381,-365,-350,-337,-324,-313,-302,-290,-278,-265,-252,-238,
+-224,-214,-209,-207,-203,-195,-187,-181,-175,-165,-151,-136,-124,-116,-104,-86,-63,-40,-21,-5,6,
+18,32,54,82,112,139,163,190,222,254,282,306,331,366,407,448,483,515,555,611,680,
+746,784,787,774,787,855,968,1074,1124,1106,1053,1010,1000,1018,1046,1072,1096,1120,1152,1197,1258,
+1325,1379,1411,1428,1439,1439,1403,1305,1147,970,843,847,1034,1391,1825,2193,2399,2460,2495,2617,2831,
+3025,3071,2938,2706,2489,2350,2280,2239,2207,2183,2176,2192,2234,2302,2376,2421,2412,2363,2313,2290,2286,
+2273,2241,2205,2185,2175,2150,2094,2023,1961,1922,1895,1867,1833,1798,1766,1737,1711,1695,1694,1703,1711,
+1714,1713,1713,1711,1706,1698,1691,1689,1687,1681,1669,1657,1645,1631,1610,1582,1554,1527,1500,1469,1437,
+1405,1373,1334,1283,1215,1126,1023,921,846,815,822,835,821,766,683,591,499,404,299,189,85,
+-4,-78,-139,-194,-247,-297,-343,-381,-411,-437,-463,-489,-510,-526,-538,-551,-564,-575,-588,-607,-633,
+-661,-683,-696,-708,-724,-743,-756,-759,-756,-753,-754,-755,-751,-744,-741,-743,-748,-750,-743,-727,-705,
+-680,-654,-626,-597,-572,-554,-542,-529,-508,-473,-431,-390,-355,-325,-295,-260,-219,-175,-131,-91,-57,
+-23,21,81,153,219,261,272,261,248,254,289,352,431,511,575,616,635,640,641,645,653,
+666,688,716,749,780,807,833,860,892,924,952,975,995,1017,1041,1065,1088,1111,1138,1168,1199,
+1227,1252,1275,1299,1325,1353,1381,1404,1425,1447,1475,1506,1535,1555,1569,1586,1611,1640,1663,1678,1687,
+1697,1708,1716,1721,1724,1730,1737,1746,1756,1769,1783,1791,1787,1777,1768,1764,1758,1744,1724,1705,1692,
+1682,1671,1658,1648,1640,1632,1624,1617,1613,1608,1599,1588,1580,1579,1581,1580,1579,1584,1593,1600,1600,
+1597,1600,1612,1623,1628,1635,1655,1688,1713,1712,1693,1686,1719,1790,1862,1890,1854,1776,1704,1690,1747,
+1844,1926,1957,1939,1900,1864,1837,1822,1834,1837,1900,1963,1995,1983,1951,1933,1948,1976,1992,1989,1988,
+2004,2032,2052,2057,2055,2059,2066,2071,2072,2077,2092,2111,2125,2133,2145,2163,2184,2202,2217,2235,2256,
+2277,2297,2320,2347,2372,2386,2393,2403,2422,2443,2457,2463,2475,2498,2526,2545,2554,2561,2573,2587,2592,
+2589,2587,2591,2596,2594,2588,2587,2598,2619,2644,2671,2701,2741,2793,2862,2947,3032,3095,3118,3110,3101,
+3117,3162,3214,3253,3269,3270,3265,3260,3254,3251,3246,3234,3210,3174,3134,3097,3069,3052,3041,3026,2998,
+2957,2909,2864,2825,2785,2741,2703,2692,2720,2779,2846,2894,2911,2899,2867,2823,2775,2726,2680,2641,2613,
+2596,2586,2578,2571,2567,2570,2579,2591,2605,2626,2656,2693,2736,2785,2846,2910,2961,2979,2966,2940,2921,
+2914,2908,2890,2855,2803,2733,2646,2550,2459,2385,2332,2297,2280,2280,2291,2302,2307,2305,2300,2296,2294,
+2301,2321,2352,2382,2404,2423,2448,2478,2499,2505,2518,2569,2671,2800,2914,2997,3065,3137,3214,3274,3301,
+3298,3279,3247,3201,3142,3085,3037,2996,2951,2900,2853,2821,2805,2793,2779,2767,2761,2761,2762,2759,2753,
+2748,2744,2736,2718,2694,2674,2668,2675,2687,2693,2694,2702,2724,2753,2773,2778,2783,2805,2838,2853,2828,
+2776,2729,2708,2692,2649,2573,2492,2439,2418,2405,2374,2327,2278,2237,2200,2164,2132,2108,2091,2074,2057,
+2042,2034,2029,2020,2009,2001,1998,1999,2001,2003,2003,1996,1978,1951,1925,1905,1888,1866,1836,1807,1786,
+1768,1745,1714,1683,1658,1637,1613,1582,1550,1523,1500,1476,1450,1426,1404,1381,1350,1313,1278,1249,1224,
+1196,1164,1133,1106,1084,1061,1036,1006,973,939,904,872,845,823,804,786,768,746,721,691,661,
+633,609,587,562,534,504,472,439,401,358,312,266,225,187,147,102,50,-4,-58,-107,-151,
+-196,-242,-289,-338,-390,-445,-499,-548,-588,-621,-651,-686,-725,-766,-806,-842,-875,-906,-936,-967,-1005,
+-1051,-1108,-1172,-1236,-1296,-1350,-1401,-1449,-1496,-1543,-1591,-1640,-1689,-1738,-1787,-1838,-1888,-1935,-1977,-2017,-2059,
+-2105,-2154,-2201,-2242,-2280,-2319,-2364,-2414,-2466,-2514,-2560,-2608,-2661,-2715,-2766,-2807,-2840,-2875,-2916,-2961,-3003,
+-3039,-3072,-3108,-3145,-3178,-3199,-3213,-3228,-3248,-3271,-3295,-3321,-3360,-3417,-3487,-3555,-3609,-3644,-3662,-3671,-3683,
+-3711,-3759,-3824,-3891,-3947,-3989,-4022,-4050,-4073,-4089,-4096,-4098,-4097,-4094,-4087,-4077,-4064,-4049,-4029,-4006,-3985,
+-3972,-3973,-3980,-3979,-3951,-3892,-3814,-3739,-3685,-3652,-3634,-3627,-3634,-3654,-3679,-3698,-3712,-3733,-3767,-3802,-3813,
+-3786,-3729,-3653,-3563,-3458,-3350,-3274,-3251,-3263,-3256,-3185,-3061,-2936,-2856,-2825,-2812,-2793,-2772,-2768,-2792,-2838,
+-2890,-2942,-2988,-3024,-3044,-3047,-3038,-3022,-3004,-2987,-2979,-2981,-2992,-2999,-2995,-2981,-2962,-2939,-2906,-2861,-2808,
+-2759,-2720,-2691,-2666,-2645,-2632,-2635,-2656,-2686,-2715,-2737,-2752,-2763,-2769,-2767,-2759,-2755,-2767,-2788,-2795,-2764,
+-2691,-2597,-2510,-2445,-2394,-2343,-2288,-2231,-2175,-2110,-2029,-1929,-1819,-1708,-1600,-1498,-1406,-1327,-1261,-1201,-1139,
+-1071,-992,-902,-801,-695,-593,-500,-416,-339,-271,-215,-165,-114,-56,4,61,113,168,227,287,333,
+359,369,371,372,375,383,402,435,477,522,567,615,670,728,784,836,883,928,973,1018,1064,
+1115,1176,1244,1312,1370,1416,1457,1507,1576,1657,1736,1801,1855,1913,1980,2055,2132,2214,2302,2386,2438,
+2435,2384,2318,2267,2230,2178,2083,1944,1784,1640,1542,1508,1535,1598,1658,1693,1708,1724,1750,1772,1779,
+1778,1792,1830,1872,1892,1890,1892,1916,1952,1977,1985,1989,2001,2014,2014,2012,2041,2121,2233,2330,2381,
+2397,2408,2432,2463,2490,2518,2560,2616,2671,2705,2717,2717,2717,2721,2725,2725,2719,2715,2720,2744,2782,
+2819,2836,2838,2854,2912,3007,3100,3155,3170,3174,3192,3220,3235,3232,3231,3254,3299,3349,3388,3428,3487,
+3572,3667,3754,3825,3880,3919,3931,3913,3875,3840,3826,3837,3862,3887,3906,3917,3924,3929,3937,3951,3974,
+3999,4018,4022,4011,3999,4005,4034,4071,4092,4088,4071,4056,4037,3986,3872,3689,3446,3149,2798,2409,2040,
+1778,1689,1769,1952,2158,2334,2470,2572,2647,2700,2733,2752,2757,2747,2725,2697,2662,2618,2563,2502,2446,
+2393,2332,2255,2171,2107,2078,2077,2072,2036,1963,1873,1793,1742,1722,1714,1697,1663,1622,1591,1579,1572,
+1552,1510,1457,1406,1361,1318,1275,1238,1211,1188,1156,1110,1058,1015,984,957,927,891,855,824,797,
+770,743,717,694,673,654,639,626,611,591,562,528,493,460,429,400,370,338,305,272,243,
+218,197,177,157,138,122,106,90,73,58,43,26,5,-20,-47,-74,-101,-128,-155,-179,-199,
+-215,-229,-242,-256,-269,-279,-287,-293,-301,-315,-333,-353,-371,-388,-403,-418,-430,-443,-459,-479,-497,
+-513,-526,-544,-572,-607,-645,-677,-704,-728,-749,-767,-783,-799,-819,-843,-867,-886,-899,-910,-921,-932,
+-944,-955,-965,-974,-981,-987,-992,-995,-1001,-1011,-1026,-1043,-1055,-1060,-1058,-1055,-1056,-1061,-1069,-1080,-1091,
+-1104,-1116,-1127,-1136,-1144,-1152,-1159,-1166,-1173,-1180,-1186,-1189,-1188,-1185,-1182,-1183,-1185,-1183,-1174,-1159,-1143,
+-1134,-1130,-1127,-1119,-1109,-1104,-1106,-1113,-1116,-1112,-1106,-1103,-1105,-1106,-1104,-1099,-1094,-1092,-1091,-1092,-1098,
+-1108,-1116,-1114,-1105,-1100,-1108,-1128,-1146,-1155,-1155,-1155,-1163,-1174,-1181,-1183,-1184,-1193,-1208,-1223,-1224,-1210,
+-1186,-1163,-1150,-1147,-1149,-1152,-1155,-1157,-1157,-1151,-1140,-1129,-1124,-1126,-1131,-1135,-1136,-1134,-1132,-1130,-1128,
+-1124,-1119,-1112,-1103,-1095,-1091,-1089,-1085,-1074,-1056,-1037,-1022,-1015,-1014,-1015,-1018,-1019,-1016,-1008,-995,-980,
+-965,-951,-936,-924,-917,-913,-909,-903,-896,-891,-887,-881,-870,-858,-849,-843,-837,-827,-815,-804,-796,
+-787,-774,-759,-748,-745,-744,-738,-723,-706,-694,-689,-684,-673,-659,-647,-638,-632,-625,-618,-610,-603,
+-594,-585,-580,-580,-580,-576,-565,-553,-544,-540,-535,-524,-509,-494,-483,-476,-469,-459,-446,-431,-416,
+-400,-384,-368,-354,-343,-333,-324,-312,-298,-285,-273,-262,-249,-236,-226,-223,-223,-222,-216,-205,-194,
+-182,-170,-158,-146,-136,-127,-115,-98,-79,-59,-39,-21,-6,7,24,47,77,107,135,162,192,
+225,256,281,302,329,367,412,455,487,513,545,594,659,722,759,760,744,751,808,908,1005,
+1052,1040,995,959,955,978,1015,1056,1097,1141,1189,1242,1297,1347,1381,1402,1414,1418,1398,1331,1209,
+1053,911,844,909,1139,1507,1915,2233,2389,2432,2500,2691,2967,3179,3195,3017,2763,2559,2442,2372,2303,
+2232,2183,2169,2178,2200,2235,2284,2322,2323,2282,2229,2194,2184,2180,2166,2147,2133,2120,2093,2045,1988,
+1940,1905,1877,1846,1814,1787,1765,1745,1726,1713,1710,1711,1710,1706,1701,1698,1690,1675,1658,1649,1651,
+1655,1652,1642,1630,1620,1607,1584,1556,1530,1509,1489,1462,1426,1382,1334,1278,1213,1136,1049,960,883,
+838,830,843,841,796,705,592,485,392,305,214,118,28,-48,-112,-170,-227,-285,-341,-391,-430,
+-459,-485,-510,-533,-550,-560,-568,-578,-589,-598,-607,-622,-645,-672,-693,-703,-709,-719,-737,-753,-761,
+-760,-754,-749,-744,-737,-730,-728,-733,-742,-749,-745,-731,-709,-682,-653,-624,-595,-570,-550,-536,-523,
+-503,-471,-430,-388,-352,-324,-298,-267,-227,-180,-130,-83,-45,-12,23,71,132,198,251,282,289,
+285,282,291,316,357,412,474,532,576,605,623,639,659,684,713,747,784,821,855,882,904,
+925,949,978,1009,1040,1067,1090,1109,1129,1153,1182,1214,1247,1277,1302,1323,1344,1367,1395,1423,1447,
+1466,1484,1509,1539,1568,1587,1600,1616,1641,1670,1693,1707,1717,1728,1741,1749,1752,1753,1757,1763,1768,
+1775,1786,1802,1812,1811,1801,1791,1787,1784,1773,1754,1733,1716,1703,1689,1676,1665,1658,1651,1642,1632,
+1624,1617,1610,1602,1598,1601,1606,1608,1607,1608,1612,1615,1613,1610,1616,1629,1640,1643,1645,1659,1682,
+1693,1677,1647,1642,1691,1784,1867,1887,1826,1720,1633,1620,1690,1805,1905,1947,1928,1877,1826,1797,1800,
+1837,1846,1903,1947,1960,1941,1914,1905,1917,1938,1951,1959,1973,1999,2025,2038,2037,2037,2045,2055,2059,
+2057,2061,2075,2095,2110,2117,2125,2141,2161,2181,2198,2216,2238,2262,2288,2314,2339,2359,2370,2379,2396,
+2421,2447,2464,2473,2486,2508,2534,2553,2562,2568,2576,2583,2583,2577,2572,2573,2575,2573,2565,2560,2567,
+2588,2615,2641,2664,2689,2726,2785,2869,2962,3038,3079,3090,3092,3107,3140,3180,3212,3232,3239,3236,3225,
+3211,3199,3189,3173,3144,3104,3059,3020,2994,2982,2980,2981,2974,2953,2917,2874,2830,2786,2747,2724,2728,
+2764,2821,2875,2905,2903,2873,2828,2776,2726,2682,2644,2617,2600,2589,2580,2572,2569,2576,2591,2609,2623,
+2636,2658,2695,2743,2796,2851,2912,2971,3013,3025,3006,2975,2949,2931,2913,2884,2841,2786,2718,2636,2550,
+2472,2412,2371,2346,2335,2337,2349,2361,2367,2364,2357,2352,2352,2363,2387,2417,2442,2459,2473,2495,2520,
+2536,2541,2560,2624,2738,2869,2977,3047,3100,3162,3233,3293,3325,3329,3317,3293,3253,3202,3150,3106,3065,
+3019,2967,2921,2892,2878,2867,2853,2840,2836,2840,2846,2848,2847,2845,2842,2831,2809,2782,2762,2758,2769,
+2782,2789,2794,2806,2833,2862,2876,2870,2858,2860,2876,2884,2864,2825,2792,2779,2766,2723,2642,2550,2481,
+2446,2427,2401,2361,2315,2271,2232,2195,2161,2136,2118,2105,2094,2086,2081,2075,2065,2053,2047,2047,2052,
+2056,2057,2055,2046,2028,2003,1979,1960,1944,1923,1896,1868,1845,1824,1800,1770,1739,1712,1686,1657,1624,
+1592,1565,1542,1518,1493,1468,1445,1419,1387,1353,1322,1296,1271,1241,1206,1171,1143,1122,1100,1074,1043,
+1009,975,944,916,890,868,849,832,814,792,764,734,704,680,659,639,616,590,562,531,497,
+458,414,370,327,287,248,207,160,107,50,-3,-50,-91,-131,-178,-232,-293,-352,-404,-448,-485,
+-518,-552,-589,-630,-673,-715,-756,-793,-828,-859,-891,-926,-967,-1017,-1072,-1131,-1191,-1250,-1306,-1357,-1405,
+-1452,-1499,-1547,-1593,-1638,-1683,-1730,-1781,-1830,-1877,-1920,-1964,-2010,-2059,-2109,-2155,-2195,-2231,-2267,-2309,-2359,
+-2412,-2463,-2509,-2554,-2602,-2655,-2709,-2757,-2798,-2836,-2877,-2919,-2958,-2993,-3027,-3062,-3097,-3127,-3148,-3166,-3188,
+-3214,-3243,-3271,-3298,-3329,-3367,-3414,-3473,-3541,-3611,-3671,-3708,-3723,-3730,-3746,-3778,-3822,-3873,-3926,-3981,-4034,
+-4076,-4102,-4112,-4114,-4111,-4105,-4097,-4086,-4076,-4065,-4052,-4035,-4016,-4000,-3990,-3988,-3984,-3964,-3917,-3844,-3763,
+-3693,-3647,-3623,-3617,-3625,-3644,-3669,-3693,-3716,-3744,-3780,-3814,-3827,-3807,-3755,-3679,-3585,-3477,-3372,-3298,-3272,
+-3278,-3269,-3210,-3108,-3007,-2943,-2919,-2909,-2892,-2874,-2870,-2891,-2929,-2974,-3016,-3052,-3078,-3091,-3091,-3082,-3074,
+-3070,-3070,-3076,-3083,-3087,-3079,-3060,-3035,-3012,-2990,-2961,-2921,-2875,-2836,-2813,-2806,-2808,-2814,-2823,-2838,-2861,
+-2888,-2915,-2936,-2951,-2960,-2960,-2951,-2933,-2916,-2908,-2909,-2906,-2883,-2828,-2749,-2660,-2574,-2493,-2419,-2357,-2309,
+-2268,-2222,-2156,-2068,-1963,-1846,-1723,-1599,-1482,-1379,-1292,-1215,-1145,-1075,-1004,-926,-836,-735,-632,-536,-456,
+-395,-349,-306,-251,-176,-91,-17,25,40,52,84,142,209,260,285,289,286,289,304,333,374,
+421,470,521,575,633,691,744,793,841,889,936,981,1024,1070,1124,1186,1247,1301,1345,1387,1438,
+1504,1582,1660,1732,1798,1863,1928,1990,2052,2121,2204,2284,2335,2335,2296,2244,2196,2138,2039,1888,1710,
+1554,1455,1422,1444,1497,1558,1606,1632,1644,1656,1677,1699,1713,1724,1743,1774,1807,1830,1845,1862,1884,
+1901,1904,1901,1907,1926,1938,1931,1922,1948,2026,2135,2229,2283,2308,2328,2357,2385,2410,2440,2487,2548,
+2603,2635,2645,2645,2648,2656,2667,2676,2678,2671,2661,2666,2695,2738,2772,2787,2799,2836,2907,2989,3051,
+3087,3116,3154,3195,3219,3216,3202,3202,3221,3252,3286,3329,3394,3484,3587,3690,3783,3862,3922,3951,3948,
+3923,3892,3867,3851,3845,3847,3857,3869,3879,3886,3893,3905,3923,3941,3953,3955,3953,3956,3973,3999,4022,
+4028,4018,4005,3992,3957,3867,3697,3458,3176,2868,2539,2200,1902,1718,1698,1823,2022,2217,2369,2481,2568,
+2638,2689,2718,2728,2724,2708,2680,2647,2611,2570,2521,2466,2408,2350,2290,2221,2148,2078,2023,1985,1959,
+1935,1904,1858,1802,1746,1704,1677,1658,1634,1604,1577,1562,1550,1530,1491,1440,1389,1343,1303,1265,1234,
+1211,1192,1163,1118,1063,1013,975,945,916,882,848,815,786,759,732,705,679,655,632,614,599,
+587,571,549,518,481,445,413,387,362,333,299,262,230,206,187,168,148,128,110,94,79,
+64,49,35,19,-1,-28,-56,-84,-113,-142,-172,-200,-223,-239,-251,-263,-276,-289,-299,-304,-308,
+-314,-327,-346,-369,-393,-415,-435,-451,-463,-473,-485,-501,-519,-536,-552,-569,-593,-622,-652,-681,-708,
+-732,-753,-771,-785,-800,-818,-840,-862,-880,-893,-903,-914,-926,-940,-952,-962,-970,-978,-984,-989,-994,
+-999,-1008,-1020,-1033,-1042,-1046,-1047,-1048,-1052,-1059,-1068,-1079,-1093,-1107,-1120,-1128,-1132,-1135,-1139,-1143,-1150,
+-1158,-1167,-1173,-1173,-1166,-1156,-1149,-1152,-1159,-1162,-1155,-1138,-1122,-1117,-1120,-1122,-1116,-1103,-1094,-1096,-1106,
+-1112,-1110,-1104,-1104,-1108,-1111,-1106,-1097,-1090,-1091,-1095,-1100,-1103,-1106,-1109,-1111,-1113,-1118,-1127,-1139,-1145,
+-1143,-1138,-1138,-1149,-1167,-1182,-1188,-1187,-1188,-1197,-1213,-1225,-1224,-1209,-1188,-1172,-1166,-1167,-1169,-1168,-1166,
+-1164,-1160,-1152,-1144,-1138,-1137,-1138,-1137,-1133,-1128,-1125,-1124,-1124,-1122,-1119,-1114,-1107,-1101,-1097,-1096,-1094,
+-1085,-1069,-1050,-1032,-1022,-1019,-1022,-1025,-1027,-1023,-1014,-1001,-987,-972,-957,-942,-930,-923,-921,-918,-911,
+-902,-897,-894,-890,-882,-870,-859,-849,-838,-825,-811,-801,-794,-785,-771,-754,-743,-741,-742,-737,-722,
+-705,-692,-685,-677,-666,-651,-638,-629,-623,-617,-611,-605,-598,-589,-579,-573,-572,-574,-572,-563,-552,
+-543,-537,-528,-514,-496,-481,-470,-463,-454,-442,-428,-417,-409,-400,-387,-370,-353,-341,-335,-330,-321,
+-307,-291,-277,-265,-252,-240,-231,-228,-231,-233,-230,-220,-206,-192,-180,-170,-161,-151,-139,-124,-109,
+-93,-76,-57,-38,-20,-3,15,41,71,101,128,155,186,221,254,279,301,329,368,413,455,
+484,504,525,557,603,652,686,696,691,696,733,799,866,904,907,895,895,919,963,1015,1067,
+1119,1172,1224,1274,1316,1346,1365,1377,1384,1378,1336,1243,1110,973,883,884,1009,1267,1622,1979,2235,
+2348,2398,2521,2787,3120,3342,3331,3119,2853,2657,2549,2465,2360,2250,2178,2158,2163,2168,2176,2200,2229,
+2234,2200,2148,2110,2101,2109,2115,2110,2096,2074,2040,1995,1948,1909,1877,1848,1818,1795,1780,1769,1754,
+1737,1725,1720,1718,1712,1702,1694,1687,1674,1653,1631,1622,1625,1631,1628,1618,1607,1598,1582,1555,1522,
+1496,1479,1463,1435,1389,1331,1268,1202,1131,1055,980,916,871,854,856,856,823,740,618,488,378,
+290,213,134,52,-26,-96,-159,-220,-282,-344,-400,-447,-484,-510,-532,-553,-571,-585,-594,-600,-608,
+-617,-625,-634,-648,-670,-693,-709,-713,-713,-719,-735,-752,-763,-762,-754,-744,-734,-726,-720,-720,-726,
+-734,-739,-737,-727,-709,-686,-660,-633,-605,-578,-553,-531,-511,-489,-461,-426,-389,-355,-325,-297,-264,
+-224,-178,-129,-82,-41,-5,27,64,109,162,218,271,317,351,371,375,368,363,377,415,467,
+515,550,575,603,640,681,721,758,796,841,888,927,953,968,983,1008,1044,1084,1118,1143,1165,
+1188,1216,1249,1281,1311,1339,1364,1387,1406,1427,1450,1475,1496,1511,1525,1544,1570,1596,1614,1625,1640,
+1662,1689,1712,1729,1744,1760,1774,1782,1784,1786,1792,1799,1804,1808,1818,1834,1846,1843,1828,1811,1800,
+1792,1780,1761,1742,1728,1718,1708,1697,1689,1684,1677,1666,1653,1643,1637,1632,1625,1622,1623,1628,1630,
+1628,1625,1624,1623,1621,1621,1629,1643,1653,1654,1654,1665,1688,1705,1701,1685,1686,1726,1789,1833,1822,
+1756,1674,1623,1630,1691,1776,1849,1884,1879,1846,1810,1791,1803,1846,1845,1888,1913,1909,1886,1868,1870,
+1891,1917,1937,1954,1976,1999,2015,2018,2016,2020,2033,2045,2047,2045,2049,2065,2086,2101,2107,2114,2128,
+2148,2167,2184,2201,2224,2251,2280,2306,2329,2346,2360,2375,2395,2421,2446,2466,2481,2498,2518,2538,2553,
+2562,2569,2578,2583,2581,2573,2565,2560,2557,2552,2545,2543,2551,2570,2595,2623,2649,2674,2705,2753,2823,
+2906,2982,3035,3064,3082,3103,3131,3162,3189,3208,3214,3207,3187,3162,3139,3120,3099,3070,3036,3002,2973,
+2952,2941,2940,2949,2958,2952,2921,2864,2795,2734,2695,2690,2719,2772,2828,2868,2878,2859,2820,2775,2731,
+2694,2662,2635,2614,2599,2589,2580,2575,2578,2594,2619,2642,2656,2667,2689,2729,2783,2841,2896,2946,2990,
+3020,3028,3015,2995,2975,2957,2930,2891,2840,2779,2710,2634,2556,2489,2441,2412,2396,2390,2394,2404,2415,
+2419,2416,2410,2408,2412,2427,2450,2476,2496,2509,2522,2542,2565,2579,2587,2612,2686,2809,2946,3055,3120,
+3161,3204,3256,3304,3331,3339,3334,3319,3289,3246,3201,3160,3121,3077,3030,2990,2966,2954,2944,2933,2925,
+2925,2932,2939,2940,2938,2935,2931,2919,2897,2873,2855,2851,2860,2872,2881,2891,2908,2933,2953,2955,2935,
+2911,2902,2911,2920,2910,2882,2854,2838,2819,2773,2690,2594,2515,2471,2449,2427,2394,2352,2307,2264,2224,
+2189,2162,2145,2136,2131,2129,2126,2118,2106,2095,2092,2097,2105,2110,2108,2101,2091,2077,2058,2037,2017,
+1999,1979,1955,1929,1903,1880,1855,1826,1795,1764,1731,1698,1665,1635,1608,1584,1559,1533,1508,1482,1455,
+1425,1396,1370,1346,1319,1286,1249,1213,1184,1161,1137,1109,1077,1044,1014,987,962,938,915,894,875,
+855,832,803,774,749,729,711,691,667,640,613,583,550,512,471,430,389,347,304,259,213,
+162,107,53,6,-35,-77,-127,-188,-254,-315,-364,-400,-429,-461,-498,-540,-585,-627,-667,-705,-742,
+-776,-810,-846,-888,-937,-990,-1043,-1095,-1149,-1204,-1260,-1313,-1362,-1409,-1456,-1502,-1545,-1585,-1627,-1673,-1723,
+-1771,-1816,-1860,-1907,-1959,-2013,-2066,-2114,-2156,-2191,-2223,-2259,-2302,-2352,-2405,-2454,-2501,-2549,-2602,-2657,-2706,
+-2748,-2787,-2825,-2864,-2901,-2936,-2972,-3010,-3046,-3075,-3097,-3115,-3138,-3167,-3201,-3235,-3268,-3298,-3324,-3350,-3388,
+-3449,-3532,-3620,-3690,-3732,-3750,-3760,-3772,-3794,-3829,-3879,-3942,-4009,-4064,-4100,-4117,-4123,-4124,-4121,-4112,-4099,
+-4085,-4072,-4059,-4047,-4033,-4018,-4003,-3994,-3990,-3981,-3953,-3894,-3812,-3728,-3666,-3635,-3630,-3641,-3659,-3680,-3702,
+-3728,-3762,-3803,-3841,-3860,-3849,-3804,-3732,-3636,-3526,-3420,-3343,-3310,-3307,-3297,-3252,-3179,-3108,-3067,-3054,-3049,
+-3036,-3017,-3008,-3019,-3044,-3075,-3105,-3131,-3151,-3164,-3170,-3173,-3178,-3186,-3196,-3206,-3211,-3204,-3181,-3145,-3110,
+-3083,-3064,-3046,-3021,-2993,-2973,-2969,-2980,-2998,-3014,-3026,-3036,-3046,-3061,-3077,-3091,-3101,-3103,-3097,-3084,-3063,
+-3038,-3015,-2998,-2985,-2967,-2933,-2874,-2790,-2691,-2587,-2495,-2423,-2374,-2336,-2294,-2237,-2163,-2075,-1973,-1858,-1733,
+-1607,-1490,-1384,-1289,-1202,-1121,-1047,-972,-887,-789,-684,-586,-509,-457,-420,-380,-319,-233,-140,-67,-34,
+-35,-40,-16,43,121,185,219,225,222,226,248,285,331,379,428,479,533,588,641,690,740,
+791,843,892,935,974,1015,1064,1120,1177,1231,1280,1326,1376,1433,1501,1576,1654,1733,1807,1872,1928,
+1982,2047,2122,2190,2227,2223,2191,2152,2103,2019,1874,1681,1492,1364,1321,1345,1400,1456,1503,1540,1566,
+1583,1596,1610,1625,1640,1659,1686,1720,1753,1780,1800,1818,1833,1839,1837,1838,1851,1869,1872,1855,1840,
+1864,1939,2042,2131,2187,2220,2248,2277,2301,2322,2354,2407,2471,2525,2557,2569,2575,2583,2594,2607,2622,
+2634,2635,2623,2614,2626,2661,2700,2728,2746,2774,2825,2888,2943,2986,3028,3082,3141,3185,3202,3198,3191,
+3189,3193,3206,3235,3288,3365,3458,3557,3657,3752,3831,3886,3916,3927,3925,3913,3890,3862,3839,3830,3831,
+3835,3838,3843,3852,3863,3872,3876,3881,3893,3913,3935,3952,3959,3957,3952,3946,3924,3857,3718,3500,3228,
+2933,2632,2329,2040,1809,1697,1732,1885,2085,2264,2395,2487,2561,2622,2668,2693,2698,2689,2668,2637,2600,
+2559,2515,2467,2413,2357,2302,2246,2189,2127,2060,1991,1931,1891,1876,1876,1868,1830,1766,1697,1649,1626,
+1614,1597,1572,1547,1526,1502,1468,1423,1375,1330,1289,1252,1222,1199,1181,1155,1115,1064,1014,973,942,
+913,880,845,812,781,751,722,692,664,638,613,591,572,557,546,533,511,478,438,401,372,
+349,324,290,252,219,194,175,156,134,112,93,77,62,47,32,17,0,-20,-45,-72,-99,
+-127,-156,-187,-216,-238,-253,-266,-278,-293,-307,-317,-321,-322,-327,-340,-360,-384,-410,-435,-459,-478,
+-492,-501,-509,-521,-538,-558,-578,-597,-617,-640,-664,-688,-712,-736,-757,-775,-790,-803,-818,-835,-853,
+-868,-880,-891,-903,-918,-933,-947,-958,-966,-973,-979,-984,-988,-994,-1002,-1012,-1020,-1027,-1031,-1035,-1041,
+-1048,-1055,-1063,-1073,-1087,-1102,-1114,-1121,-1123,-1123,-1124,-1127,-1134,-1143,-1151,-1156,-1151,-1135,-1114,-1100,-1100,
+-1111,-1120,-1118,-1105,-1093,-1093,-1104,-1115,-1113,-1102,-1092,-1093,-1102,-1109,-1109,-1106,-1106,-1110,-1111,-1104,-1095,
+-1091,-1096,-1105,-1108,-1104,-1099,-1098,-1103,-1112,-1120,-1126,-1130,-1130,-1127,-1125,-1129,-1143,-1166,-1188,-1198,-1194,
+-1180,-1171,-1176,-1190,-1202,-1204,-1196,-1186,-1181,-1181,-1178,-1170,-1161,-1157,-1160,-1163,-1164,-1162,-1157,-1151,-1144,
+-1137,-1130,-1127,-1125,-1124,-1120,-1115,-1110,-1106,-1103,-1102,-1102,-1100,-1094,-1081,-1063,-1045,-1032,-1027,-1027,-1030,
+-1031,-1026,-1016,-1003,-991,-979,-967,-955,-944,-938,-935,-932,-925,-917,-911,-908,-905,-898,-886,-872,-857,
+-843,-828,-815,-806,-799,-789,-774,-757,-743,-738,-736,-731,-719,-704,-691,-680,-669,-654,-638,-626,-620,
+-616,-612,-608,-604,-598,-589,-579,-571,-567,-567,-564,-558,-549,-541,-532,-520,-503,-485,-471,-461,-453,
+-441,-426,-412,-403,-399,-394,-383,-365,-345,-332,-327,-326,-322,-311,-295,-280,-266,-254,-243,-234,-229,
+-230,-234,-235,-230,-220,-207,-196,-188,-180,-169,-153,-136,-118,-102,-85,-65,-45,-26,-9,9,34,
+65,94,121,148,179,216,250,279,304,333,371,413,451,481,501,518,539,569,606,642,667,
+681,691,712,747,785,815,833,853,885,933,989,1044,1097,1148,1198,1244,1282,1310,1328,1339,1346,
+1346,1323,1258,1147,1016,913,884,954,1132,1405,1727,2022,2213,2295,2357,2523,2832,3177,3382,3345,3122,
+2870,2702,2613,2526,2399,2262,2173,2146,2150,2150,2144,2149,2162,2160,2129,2081,2049,2047,2064,2077,2074,
+2054,2021,1979,1936,1899,1871,1846,1820,1797,1782,1777,1770,1756,1739,1730,1729,1727,1716,1699,1683,1672,
+1658,1638,1619,1610,1611,1612,1605,1594,1585,1576,1555,1518,1477,1448,1433,1418,1386,1332,1266,1198,1132,
+1064,997,938,899,883,883,882,855,786,673,536,406,301,219,146,70,-6,-79,-148,-214,-282,
+-347,-405,-454,-494,-525,-548,-565,-578,-592,-604,-614,-621,-625,-630,-636,-647,-664,-685,-706,-718,-721,
+-721,-726,-738,-753,-763,-763,-755,-743,-732,-722,-718,-719,-724,-728,-729,-725,-718,-706,-689,-668,-644,
+-618,-590,-562,-533,-507,-482,-457,-427,-394,-360,-327,-292,-255,-216,-176,-136,-95,-53,-12,26,59,
+91,128,174,236,312,391,455,488,488,473,466,479,506,528,538,548,575,623,678,725,758,
+791,838,899,957,995,1013,1024,1045,1080,1123,1162,1193,1220,1252,1287,1322,1351,1376,1400,1427,1454,
+1476,1494,1512,1530,1548,1560,1572,1587,1608,1631,1648,1660,1672,1689,1711,1731,1750,1769,1787,1801,1805,
+1804,1807,1818,1831,1840,1845,1853,1865,1873,1867,1847,1824,1805,1792,1777,1760,1746,1738,1734,1728,1720,
+1713,1708,1701,1688,1673,1662,1658,1655,1650,1646,1645,1647,1648,1644,1639,1636,1634,1633,1633,1638,1646,
+1651,1650,1651,1667,1700,1737,1759,1768,1776,1794,1807,1794,1748,1691,1655,1656,1684,1720,1752,1780,1806,
+1822,1821,1807,1797,1809,1845,1820,1854,1872,1865,1848,1841,1854,1882,1912,1936,1955,1973,1988,1995,1995,
+1996,2005,2020,2031,2032,2032,2039,2056,2076,2089,2096,2105,2122,2143,2163,2179,2196,2219,2248,2276,2300,
+2320,2338,2358,2380,2402,2423,2445,2467,2488,2509,2526,2539,2548,2556,2565,2574,2580,2580,2575,2567,2557,
+2546,2539,2537,2543,2555,2571,2593,2623,2659,2695,2730,2767,2815,2874,2937,2993,3037,3071,3100,3126,3149,
+3168,3182,3186,3176,3153,3124,3095,3070,3046,3022,3000,2983,2969,2954,2937,2927,2930,2939,2936,2899,2825,
+2734,2658,2623,2638,2688,2751,2802,2826,2823,2799,2766,2734,2708,2687,2667,2646,2626,2609,2598,2593,2593,
+2601,2620,2646,2669,2683,2695,2716,2756,2811,2867,2916,2954,2983,3001,3006,3001,2991,2981,2965,2938,2896,
+2843,2782,2714,2641,2569,2510,2471,2451,2444,2444,2449,2457,2464,2466,2464,2462,2464,2472,2487,2508,2527,
+2542,2551,2565,2587,2613,2631,2644,2675,2750,2869,3003,3110,3174,3207,3236,3269,3301,3322,3329,3329,3321,
+3302,3272,3236,3201,3167,3131,3095,3065,3045,3033,3024,3017,3016,3021,3028,3030,3024,3017,3011,3006,2998,
+2983,2967,2953,2947,2949,2957,2968,2982,2998,3012,3017,3006,2981,2956,2949,2961,2976,2971,2941,2899,2862,
+2825,2774,2698,2610,2536,2490,2468,2451,2423,2383,2338,2293,2252,2219,2196,2182,2176,2174,2172,2169,2163,
+2154,2147,2147,2153,2160,2161,2154,2144,2136,2127,2114,2097,2076,2055,2034,2012,1986,1959,1932,1905,1877,
+1846,1811,1775,1741,1710,1683,1657,1630,1602,1575,1548,1521,1493,1465,1439,1416,1393,1365,1330,1294,1259,
+1229,1202,1174,1144,1114,1084,1057,1032,1009,985,962,939,916,893,868,841,816,795,779,761,740,
+714,688,662,635,603,567,530,491,450,404,357,309,264,216,166,113,62,15,-33,-89,-151,
+-214,-268,-310,-342,-373,-408,-451,-497,-544,-586,-623,-658,-690,-722,-757,-799,-850,-906,-961,-1011,-1057,
+-1105,-1157,-1211,-1263,-1312,-1358,-1405,-1451,-1492,-1530,-1571,-1617,-1666,-1712,-1754,-1796,-1843,-1896,-1951,-2004,-2054,
+-2099,-2139,-2174,-2207,-2245,-2291,-2343,-2395,-2447,-2499,-2554,-2608,-2657,-2698,-2735,-2775,-2816,-2856,-2893,-2930,-2969,
+-3006,-3037,-3059,-3077,-3098,-3126,-3160,-3197,-3235,-3269,-3292,-3305,-3322,-3360,-3426,-3513,-3602,-3675,-3727,-3760,-3779,
+-3794,-3812,-3844,-3894,-3953,-4010,-4055,-4084,-4102,-4109,-4109,-4103,-4093,-4081,-4068,-4055,-4043,-4031,-4017,-4002,-3991,
+-3989,-3993,-3985,-3948,-3879,-3798,-3733,-3700,-3697,-3709,-3723,-3735,-3749,-3772,-3809,-3855,-3899,-3924,-3918,-3878,-3808,
+-3714,-3606,-3501,-3419,-3374,-3356,-3338,-3301,-3247,-3198,-3172,-3165,-3161,-3146,-3126,-3113,-3117,-3138,-3169,-3203,-3234,
+-3260,-3280,-3296,-3311,-3323,-3332,-3338,-3339,-3336,-3323,-3296,-3259,-3220,-3192,-3175,-3164,-3153,-3143,-3140,-3149,-3165,
+-3181,-3192,-3196,-3195,-3195,-3197,-3203,-3208,-3208,-3201,-3189,-3172,-3152,-3127,-3099,-3073,-3052,-3036,-3015,-2975,-2908,
+-2815,-2709,-2607,-2524,-2461,-2409,-2355,-2295,-2229,-2158,-2078,-1985,-1876,-1759,-1644,-1533,-1427,-1323,-1226,-1135,-1048,
+-955,-854,-749,-653,-579,-525,-479,-426,-358,-278,-201,-146,-119,-112,-102,-69,-8,64,124,159,169,
+170,178,204,245,294,344,392,441,490,540,590,639,691,747,801,850,890,927,965,1010,1060,
+1114,1170,1226,1277,1323,1368,1421,1489,1572,1660,1742,1810,1867,1925,1993,2064,2119,2140,2126,2092,2051,
+1987,1872,1693,1484,1310,1224,1232,1291,1354,1397,1427,1457,1489,1517,1536,1548,1558,1572,1595,1624,1658,
+1688,1711,1729,1745,1758,1768,1774,1784,1799,1810,1804,1783,1772,1799,1870,1960,2039,2093,2130,2161,2188,
+2208,2229,2267,2325,2392,2444,2475,2492,2507,2523,2537,2551,2569,2592,2609,2610,2599,2596,2611,2640,2670,
+2695,2723,2762,2807,2847,2881,2919,2973,3041,3108,3159,3188,3197,3191,3177,3165,3170,3198,3249,3316,3396,
+3489,3588,3681,3759,3820,3868,3904,3921,3914,3889,3861,3839,3826,3815,3806,3802,3803,3804,3801,3799,3809,
+3835,3868,3890,3894,3884,3876,3876,3868,3823,3715,3532,3292,3020,2738,2454,2173,1923,1750,1698,1776,1943,
+2132,2291,2404,2484,2548,2600,2636,2655,2657,2645,2624,2594,2556,2511,2460,2406,2351,2299,2249,2200,2151,
+2099,2042,1978,1913,1867,1855,1871,1884,1860,1790,1701,1633,1602,1596,1588,1565,1533,1501,1473,1443,1405,
+1360,1315,1272,1234,1202,1176,1155,1131,1097,1054,1010,972,941,910,876,841,807,776,745,711,677,
+647,623,602,578,553,531,518,511,499,474,436,394,358,330,303,272,238,207,185,168,148,
+124,98,75,57,41,26,10,-7,-26,-48,-71,-95,-118,-143,-169,-197,-223,-244,-259,-273,-287,
+-302,-315,-325,-332,-337,-345,-359,-378,-400,-422,-447,-474,-499,-518,-530,-537,-547,-562,-582,-602,-621,
+-638,-657,-678,-701,-724,-746,-766,-783,-797,-809,-820,-833,-846,-858,-869,-881,-893,-907,-921,-935,-947,
+-957,-965,-970,-974,-977,-983,-991,-999,-1006,-1012,-1017,-1024,-1032,-1041,-1048,-1056,-1065,-1078,-1092,-1103,-1110,
+-1112,-1112,-1114,-1116,-1121,-1129,-1138,-1143,-1138,-1120,-1095,-1074,-1069,-1079,-1092,-1095,-1088,-1079,-1081,-1094,-1107,
+-1110,-1103,-1096,-1096,-1104,-1111,-1113,-1111,-1112,-1114,-1111,-1103,-1095,-1097,-1106,-1114,-1112,-1100,-1089,-1086,-1094,
+-1105,-1112,-1114,-1115,-1118,-1122,-1128,-1135,-1148,-1170,-1196,-1214,-1213,-1194,-1169,-1155,-1159,-1173,-1184,-1186,-1185,
+-1186,-1186,-1179,-1165,-1151,-1147,-1157,-1173,-1183,-1183,-1175,-1165,-1157,-1151,-1147,-1145,-1142,-1136,-1127,-1116,-1107,
+-1103,-1102,-1103,-1104,-1103,-1098,-1089,-1076,-1061,-1049,-1040,-1035,-1033,-1031,-1025,-1015,-1003,-992,-984,-976,-968,
+-959,-953,-949,-947,-943,-936,-930,-925,-922,-916,-906,-893,-878,-863,-848,-834,-823,-813,-801,-785,-766,
+-749,-736,-728,-720,-710,-700,-690,-678,-663,-646,-631,-622,-619,-618,-616,-612,-609,-605,-598,-589,-580,
+-572,-567,-562,-556,-548,-538,-526,-510,-494,-478,-466,-457,-448,-434,-417,-402,-391,-385,-378,-367,-351,
+-332,-318,-312,-312,-312,-307,-296,-283,-272,-263,-254,-243,-233,-228,-229,-234,-235,-230,-220,-210,-202,
+-194,-182,-166,-147,-128,-109,-89,-66,-44,-26,-10,7,32,62,92,119,147,180,217,252,283,
+312,344,379,415,448,477,503,527,549,575,607,645,682,710,730,748,770,796,823,850,884,
+928,979,1030,1077,1121,1166,1209,1245,1271,1289,1301,1310,1313,1300,1255,1168,1048,935,878,914,1050,
+1270,1544,1824,2052,2187,2246,2319,2502,2805,3113,3269,3204,2992,2780,2661,2610,2545,2424,2280,2176,2136,
+2133,2131,2123,2119,2119,2105,2072,2031,2006,2007,2022,2029,2018,1990,1951,1910,1874,1851,1837,1824,1806,
+1789,1778,1773,1765,1750,1736,1732,1738,1738,1723,1699,1677,1662,1650,1634,1617,1605,1599,1591,1578,1566,
+1557,1545,1515,1467,1417,1385,1371,1356,1321,1264,1198,1137,1078,1017,958,913,894,895,900,884,828,
+731,604,472,354,258,177,99,20,-57,-129,-197,-267,-337,-400,-451,-489,-521,-548,-568,-580,-587,
+-594,-605,-616,-624,-627,-628,-632,-645,-664,-686,-704,-715,-721,-725,-733,-743,-754,-762,-764,-760,-750,
+-738,-726,-720,-720,-723,-724,-721,-717,-712,-704,-692,-673,-651,-627,-601,-572,-541,-511,-485,-460,-432,
+-400,-365,-329,-292,-254,-216,-181,-148,-111,-70,-24,19,56,83,108,141,194,273,371,467,537,
+573,584,590,601,609,603,583,572,592,642,703,749,774,798,840,906,977,1029,1056,1068,1085,
+1117,1157,1196,1230,1263,1300,1341,1377,1403,1422,1444,1473,1505,1532,1551,1566,1580,1595,1607,1618,1631,
+1650,1672,1691,1706,1719,1732,1746,1760,1774,1792,1809,1819,1818,1813,1815,1828,1846,1859,1865,1869,1875,
+1878,1871,1854,1834,1818,1804,1789,1773,1763,1758,1755,1748,1739,1731,1726,1719,1705,1688,1677,1673,1672,
+1669,1666,1665,1667,1666,1660,1653,1650,1652,1653,1652,1650,1648,1646,1643,1648,1671,1712,1759,1793,1810,
+1816,1814,1796,1755,1702,1666,1669,1703,1736,1743,1731,1727,1748,1782,1803,1800,1789,1793,1820,1776,1807,
+1827,1829,1825,1831,1851,1879,1905,1925,1940,1952,1961,1967,1971,1979,1992,2005,2013,2016,2020,2031,2049,
+2065,2077,2087,2101,2122,2146,2166,2181,2198,2221,2249,2277,2298,2315,2335,2359,2384,2407,2426,2445,2468,
+2495,2518,2533,2540,2545,2553,2563,2572,2577,2578,2576,2569,2556,2541,2531,2535,2550,2567,2582,2600,2632,
+2678,2729,2772,2804,2832,2867,2911,2960,3007,3047,3080,3104,3121,3135,3147,3153,3150,3133,3109,3081,3055,
+3032,3013,2999,2988,2973,2947,2912,2882,2868,2866,2856,2817,2745,2661,2601,2589,2624,2685,2741,2775,2781,
+2770,2751,2732,2718,2709,2701,2689,2671,2650,2633,2624,2621,2624,2632,2647,2668,2689,2705,2720,2743,2781,
+2829,2877,2916,2945,2965,2979,2983,2981,2974,2965,2952,2928,2891,2844,2787,2722,2652,2585,2532,2501,2488,
+2487,2492,2501,2509,2515,2515,2513,2514,2520,2530,2544,2560,2573,2583,2591,2606,2631,2662,2688,2710,2743,
+2809,2912,3029,3127,3191,3226,3251,3277,3299,3313,3317,3316,3312,3303,3287,3264,3239,3212,3187,3163,3144,
+3127,3111,3099,3095,3101,3111,3116,3111,3100,3089,3083,3079,3074,3069,3063,3056,3048,3043,3046,3059,3074,
+3084,3083,3072,3054,3032,3016,3013,3024,3035,3025,2985,2924,2863,2810,2757,2694,2622,2557,2513,2491,2473,
+2446,2405,2359,2315,2279,2253,2236,2226,2221,2217,2213,2209,2206,2205,2205,2208,2212,2213,2209,2199,2189,
+2183,2179,2172,2156,2133,2108,2086,2064,2040,2011,1980,1950,1922,1891,1857,1821,1788,1760,1735,1708,1678,
+1648,1619,1590,1561,1531,1504,1480,1458,1433,1403,1369,1336,1304,1274,1243,1212,1182,1154,1127,1100,1075,
+1051,1028,1004,981,957,933,908,884,864,848,832,814,789,763,738,715,690,660,625,588,550,
+509,462,412,363,317,273,227,176,122,65,6,-54,-113,-164,-206,-240,-273,-311,-353,-400,-449,
+-497,-541,-578,-610,-638,-669,-706,-754,-810,-869,-924,-970,-1011,-1055,-1104,-1157,-1208,-1255,-1301,-1348,-1394,
+-1436,-1475,-1517,-1564,-1613,-1659,-1698,-1737,-1782,-1833,-1885,-1934,-1982,-2030,-2075,-2116,-2153,-2192,-2238,-2289,-2341,
+-2393,-2446,-2502,-2555,-2602,-2642,-2681,-2725,-2772,-2817,-2856,-2891,-2926,-2962,-2994,-3019,-3040,-3063,-3089,-3120,-3154,
+-3191,-3228,-3257,-3275,-3286,-3304,-3344,-3409,-3490,-3575,-3651,-3711,-3753,-3777,-3789,-3803,-3829,-3869,-3921,-3974,-4017,
+-4043,-4052,-4049,-4045,-4046,-4050,-4049,-4042,-4031,-4020,-4009,-3999,-3990,-3990,-3998,-4003,-3988,-3946,-3889,-3839,-3813,
+-3812,-3822,-3832,-3839,-3847,-3864,-3896,-3940,-3982,-4007,-4002,-3963,-3896,-3811,-3715,-3621,-3539,-3480,-3440,-3404,-3360,
+-3310,-3266,-3239,-3227,-3217,-3203,-3185,-3178,-3189,-3222,-3269,-3320,-3366,-3402,-3428,-3448,-3464,-3475,-3475,-3467,-3454,
+-3443,-3431,-3414,-3388,-3359,-3334,-3316,-3303,-3294,-3289,-3290,-3299,-3310,-3317,-3319,-3317,-3314,-3311,-3308,-3305,-3301,
+-3292,-3276,-3255,-3231,-3206,-3181,-3153,-3124,-3098,-3078,-3061,-3037,-2993,-2926,-2838,-2744,-2655,-2577,-2504,-2431,-2357,
+-2286,-2220,-2155,-2082,-1997,-1902,-1803,-1703,-1601,-1495,-1385,-1275,-1165,-1052,-939,-831,-739,-666,-603,-537,-462,
+-383,-314,-264,-231,-206,-179,-143,-96,-43,11,58,92,113,125,142,171,213,264,315,362,407,
+453,500,550,603,659,716,769,815,853,890,928,968,1011,1059,1115,1175,1231,1276,1313,1355,1418,
+1502,1596,1685,1758,1820,1883,1952,2017,2061,2068,2042,1997,1937,1845,1701,1507,1308,1169,1127,1168,1241,
+1298,1328,1348,1376,1412,1445,1468,1484,1499,1520,1545,1574,1603,1627,1644,1657,1669,1683,1696,1708,1718,
+1728,1732,1726,1717,1719,1749,1808,1878,1941,1991,2032,2068,2096,2117,2140,2182,2243,2309,2359,2390,2412,
+2436,2460,2479,2495,2517,2552,2589,2612,2612,2601,2594,2600,2617,2642,2673,2710,2748,2777,2798,2821,2861,
+2922,2998,3077,3145,3187,3198,3182,3156,3139,3144,3167,3207,3263,3338,3430,3526,3616,3696,3767,3827,3869,
+3886,3883,3870,3855,3837,3814,3792,3775,3765,3755,3741,3732,3743,3776,3812,3830,3821,3798,3783,3775,3750,
+3673,3528,3325,3091,2844,2586,2316,2049,1828,1705,1707,1820,1991,2163,2300,2400,2472,2528,2571,2597,2608,
+2605,2593,2572,2544,2506,2459,2402,2343,2289,2241,2196,2149,2102,2057,2013,1963,1906,1858,1842,1861,1887,
+1878,1816,1719,1632,1584,1570,1564,1543,1510,1475,1446,1417,1382,1338,1291,1248,1211,1181,1157,1134,1108,
+1074,1035,997,964,933,900,863,827,797,770,739,703,664,632,610,593,572,542,513,493,485,
+479,461,427,384,343,308,278,249,220,196,179,164,145,119,88,60,37,19,3,-12,-31,
+-52,-75,-98,-119,-139,-159,-181,-204,-227,-247,-265,-281,-294,-306,-316,-325,-335,-347,-362,-380,-399,
+-417,-436,-458,-486,-516,-542,-558,-568,-576,-589,-606,-623,-638,-652,-669,-691,-715,-740,-761,-779,-794,
+-806,-815,-824,-834,-845,-856,-867,-878,-889,-899,-909,-921,-932,-944,-952,-958,-961,-964,-970,-978,-987,
+-995,-1002,-1009,-1016,-1025,-1034,-1043,-1052,-1063,-1075,-1086,-1096,-1103,-1107,-1109,-1111,-1112,-1113,-1118,-1127,-1136,
+-1139,-1130,-1112,-1093,-1084,-1089,-1100,-1106,-1103,-1096,-1094,-1101,-1109,-1112,-1109,-1105,-1108,-1114,-1119,-1122,-1123,
+-1124,-1123,-1118,-1110,-1107,-1110,-1118,-1120,-1110,-1093,-1080,-1080,-1090,-1102,-1109,-1110,-1111,-1117,-1128,-1137,-1144,
+-1151,-1165,-1190,-1216,-1229,-1222,-1200,-1179,-1169,-1171,-1175,-1178,-1181,-1186,-1190,-1185,-1168,-1151,-1148,-1161,-1181,
+-1193,-1190,-1179,-1169,-1166,-1167,-1168,-1166,-1161,-1153,-1142,-1129,-1116,-1108,-1104,-1103,-1103,-1100,-1095,-1089,-1082,
+-1074,-1065,-1054,-1044,-1036,-1030,-1023,-1014,-1003,-993,-986,-980,-975,-968,-961,-958,-957,-955,-950,-943,-937,
+-934,-931,-926,-917,-905,-892,-878,-863,-846,-830,-815,-799,-781,-761,-742,-726,-714,-705,-698,-690,-679,
+-663,-645,-630,-621,-618,-616,-614,-611,-608,-605,-602,-596,-587,-578,-570,-564,-558,-550,-537,-521,-502,
+-486,-473,-463,-454,-442,-426,-410,-394,-381,-369,-359,-347,-334,-319,-306,-298,-296,-298,-298,-293,-286,
+-279,-274,-266,-254,-239,-228,-225,-229,-234,-233,-226,-216,-206,-198,-188,-172,-153,-134,-114,-93,-68,
+-46,-28,-12,6,32,62,92,120,150,183,220,256,288,321,354,388,418,444,471,502,535,
+566,596,629,666,703,734,758,780,805,835,865,895,930,970,1013,1053,1091,1130,1172,1210,1239,
+1255,1265,1275,1284,1281,1249,1177,1069,952,872,873,978,1173,1422,1680,1908,2070,2158,2208,2296,2483,
+2753,2998,3094,3005,2814,2650,2584,2580,2553,2460,2325,2208,2139,2110,2097,2090,2086,2079,2057,2021,1985,
+1965,1963,1966,1962,1945,1918,1885,1851,1826,1815,1815,1814,1804,1789,1775,1765,1754,1740,1732,1734,1744,
+1746,1732,1709,1690,1680,1670,1653,1631,1610,1592,1572,1550,1532,1519,1499,1460,1404,1350,1319,1306,1290,
+1253,1195,1135,1082,1032,979,926,891,882,890,887,849,768,657,533,417,316,229,145,60,-24,
+-102,-171,-237,-305,-373,-431,-473,-503,-530,-555,-574,-583,-584,-585,-593,-606,-616,-620,-622,-628,-642,
+-662,-681,-695,-704,-712,-720,-730,-741,-749,-756,-761,-763,-758,-747,-733,-723,-719,-719,-716,-712,-708,
+-706,-702,-693,-677,-656,-633,-608,-579,-547,-516,-488,-462,-434,-404,-372,-339,-306,-270,-233,-196,-158,
+-119,-77,-33,10,48,78,104,131,172,235,319,411,492,552,594,628,657,672,665,642,629,
+647,697,754,794,812,827,863,925,997,1055,1089,1107,1126,1155,1190,1225,1256,1289,1326,1367,1402,
+1427,1446,1467,1497,1532,1562,1584,1600,1616,1631,1645,1656,1669,1686,1708,1731,1751,1768,1781,1789,1795,
+1802,1815,1829,1838,1835,1826,1822,1831,1848,1861,1867,1868,1868,1868,1864,1857,1848,1839,1828,1813,1798,
+1788,1782,1776,1765,1753,1746,1743,1737,1723,1706,1693,1688,1686,1683,1681,1682,1685,1682,1673,1662,1661,
+1667,1673,1672,1665,1658,1655,1657,1666,1690,1726,1762,1782,1782,1771,1757,1738,1711,1684,1676,1699,1737,
+1758,1745,1715,1702,1722,1758,1780,1773,1756,1754,1776,1736,1762,1782,1792,1803,1820,1843,1866,1885,1899,
+1910,1919,1928,1937,1948,1962,1975,1985,1993,2001,2013,2028,2045,2060,2073,2088,2107,2131,2155,2174,2190,
+2206,2228,2255,2282,2303,2320,2337,2360,2386,2409,2428,2448,2472,2499,2521,2534,2539,2545,2556,2568,2574,
+2574,2571,2570,2565,2554,2537,2528,2535,2555,2576,2590,2606,2637,2687,2745,2794,2828,2851,2874,2903,2936,
+2971,3003,3034,3060,3082,3101,3117,3129,3132,3124,3105,3082,3061,3045,3030,3013,2986,2944,2889,2829,2780,
+2752,2740,2728,2700,2656,2614,2599,2622,2672,2726,2760,2768,2757,2741,2731,2726,2725,2725,2722,2716,2703,
+2687,2673,2666,2664,2666,2669,2676,2690,2708,2728,2748,2774,2807,2845,2881,2910,2933,2953,2968,2975,2974,
+2965,2953,2938,2917,2886,2843,2790,2728,2663,2603,2559,2535,2527,2530,2538,2549,2559,2566,2567,2566,2568,
+2575,2586,2598,2609,2619,2627,2636,2653,2680,2714,2748,2778,2813,2868,2949,3044,3131,3196,3238,3268,3293,
+3313,3323,3322,3316,3312,3310,3307,3298,3281,3260,3243,3231,3221,3206,3187,3172,3170,3182,3194,3196,3188,
+3177,3169,3163,3157,3152,3153,3160,3162,3154,3143,3140,3152,3169,3175,3165,3145,3126,3110,3096,3085,3078,
+3072,3051,3004,2934,2862,2803,2754,2704,2645,2587,2544,2517,2494,2462,2417,2370,2330,2302,2284,2273,2267,
+2263,2258,2251,2246,2246,2251,2256,2260,2261,2259,2254,2246,2238,2233,2230,2224,2208,2183,2156,2133,2112,
+2089,2061,2028,1996,1966,1936,1903,1868,1836,1809,1782,1753,1721,1689,1660,1630,1600,1569,1542,1519,1496,
+1468,1435,1402,1372,1344,1315,1284,1252,1224,1197,1171,1142,1113,1087,1064,1042,1020,998,976,955,936,
+919,904,888,867,841,814,790,770,747,718,682,645,608,568,522,471,421,375,332,289,239,
+181,115,48,-15,-67,-105,-134,-165,-204,-249,-298,-346,-394,-442,-486,-524,-555,-584,-618,-661,-714,
+-772,-829,-878,-919,-957,-1000,-1049,-1102,-1152,-1198,-1243,-1289,-1336,-1380,-1420,-1462,-1510,-1560,-1606,-1646,-1685,
+-1728,-1778,-1829,-1877,-1923,-1969,-2015,-2058,-2099,-2143,-2191,-2243,-2293,-2342,-2392,-2445,-2497,-2543,-2582,-2621,-2668,
+-2719,-2766,-2804,-2836,-2868,-2902,-2936,-2965,-2991,-3018,-3047,-3075,-3103,-3134,-3170,-3208,-3240,-3262,-3281,-3307,-3348,
+-3405,-3473,-3545,-3615,-3674,-3718,-3742,-3754,-3767,-3794,-3840,-3896,-3945,-3971,-3970,-3957,-3954,-3969,-3994,-4015,-4019,
+-4014,-4008,-4006,-4006,-4004,-4002,-4005,-4011,-4012,-4000,-3977,-3952,-3935,-3929,-3932,-3940,-3948,-3958,-3973,-3996,-4027,
+-4058,-4074,-4065,-4028,-3971,-3905,-3835,-3764,-3694,-3629,-3572,-3517,-3460,-3403,-3354,-3319,-3299,-3287,-3277,-3272,-3279,
+-3305,-3352,-3412,-3474,-3525,-3559,-3578,-3590,-3599,-3603,-3597,-3580,-3559,-3542,-3532,-3524,-3512,-3496,-3477,-3458,-3440,
+-3423,-3411,-3406,-3406,-3407,-3406,-3403,-3402,-3400,-3397,-3389,-3377,-3363,-3347,-3324,-3295,-3260,-3224,-3192,-3162,-3132,
+-3104,-3078,-3058,-3041,-3018,-2980,-2922,-2850,-2770,-2689,-2608,-2524,-2437,-2353,-2280,-2217,-2157,-2091,-2018,-1939,-1858,
+-1774,-1681,-1577,-1460,-1332,-1197,-1063,-941,-841,-760,-685,-602,-509,-423,-359,-324,-302,-274,-231,-178,-129,
+-90,-57,-20,19,56,86,113,147,192,244,295,339,380,422,468,520,575,631,685,733,775,
+815,854,893,930,966,1007,1059,1121,1182,1231,1269,1309,1368,1452,1552,1651,1737,1807,1869,1926,1973,
+1998,1992,1953,1889,1799,1674,1510,1324,1160,1066,1060,1116,1186,1236,1263,1284,1312,1345,1374,1396,1418,
+1445,1476,1505,1531,1554,1573,1588,1600,1610,1621,1632,1638,1640,1641,1643,1648,1656,1670,1694,1732,1778,
+1829,1882,1934,1980,2013,2035,2057,2096,2152,2213,2262,2296,2325,2356,2388,2412,2432,2459,2503,2557,2602,
+2620,2612,2592,2575,2572,2587,2620,2662,2703,2734,2751,2764,2786,2828,2893,2975,3060,3128,3161,3158,3135,
+3114,3108,3118,3140,3175,3231,3307,3397,3489,3574,3650,3715,3767,3802,3825,3840,3845,3835,3811,3781,3757,
+3740,3722,3699,3681,3682,3705,3735,3746,3731,3701,3674,3645,3589,3481,3319,3123,2916,2698,2456,2191,1933,
+1743,1670,1724,1866,2036,2187,2303,2389,2456,2505,2538,2554,2558,2552,2538,2515,2483,2443,2392,2333,2274,
+2224,2182,2141,2096,2049,2008,1974,1936,1887,1838,1814,1829,1864,1876,1832,1741,1641,1570,1536,1522,1505,
+1479,1450,1423,1394,1358,1313,1264,1219,1184,1161,1144,1125,1095,1056,1013,976,948,920,886,845,807,
+779,757,731,695,653,618,595,580,562,534,501,476,461,453,438,409,370,329,291,258,228,
+203,185,171,158,140,113,80,47,19,-2,-19,-34,-50,-70,-92,-115,-136,-155,-173,-193,-213,
+-234,-256,-276,-294,-307,-314,-318,-325,-336,-352,-372,-394,-415,-433,-452,-473,-500,-531,-559,-580,-592,
+-602,-613,-627,-640,-651,-662,-678,-699,-724,-750,-772,-789,-803,-814,-823,-832,-842,-852,-864,-875,-886,
+-895,-902,-908,-916,-925,-934,-942,-948,-952,-956,-963,-973,-983,-993,-1001,-1009,-1017,-1025,-1034,-1044,-1056,
+-1068,-1079,-1088,-1095,-1102,-1109,-1113,-1115,-1113,-1112,-1112,-1118,-1129,-1139,-1143,-1138,-1128,-1120,-1119,-1125,-1129,
+-1128,-1122,-1117,-1116,-1118,-1118,-1117,-1118,-1121,-1125,-1129,-1131,-1133,-1135,-1135,-1130,-1125,-1124,-1126,-1126,-1119,
+-1104,-1088,-1079,-1082,-1093,-1105,-1114,-1119,-1122,-1126,-1133,-1140,-1143,-1144,-1149,-1166,-1193,-1221,-1236,-1234,-1220,
+-1206,-1195,-1187,-1182,-1185,-1194,-1203,-1201,-1186,-1168,-1163,-1173,-1188,-1192,-1182,-1168,-1163,-1170,-1180,-1183,-1177,
+-1168,-1159,-1153,-1145,-1135,-1123,-1114,-1107,-1101,-1094,-1088,-1082,-1079,-1077,-1072,-1062,-1050,-1038,-1029,-1022,-1014,
+-1004,-994,-987,-982,-977,-971,-964,-961,-961,-960,-955,-947,-940,-937,-936,-934,-930,-922,-913,-901,-885,
+-865,-844,-827,-814,-801,-784,-763,-742,-726,-714,-706,-697,-684,-667,-649,-633,-620,-611,-606,-601,-597,
+-594,-592,-589,-585,-578,-569,-561,-556,-554,-548,-537,-519,-499,-482,-470,-461,-450,-435,-419,-405,-391,
+-377,-361,-347,-334,-324,-314,-302,-293,-289,-290,-292,-291,-287,-282,-278,-272,-261,-245,-230,-225,-228,
+-233,-234,-227,-217,-208,-200,-189,-173,-153,-135,-117,-98,-77,-57,-38,-19,2,30,61,89,117,
+147,182,219,253,286,321,358,392,420,442,466,498,537,575,610,644,678,709,735,758,783,
+814,848,881,911,943,980,1018,1054,1089,1128,1170,1207,1231,1240,1246,1256,1263,1249,1193,1093,972,
+871,839,909,1083,1326,1585,1811,1975,2072,2123,2176,2287,2481,2719,2905,2953,2853,2688,2567,2539,2570,
+2580,2521,2404,2272,2165,2095,2059,2046,2042,2033,2008,1971,1937,1918,1910,1903,1893,1880,1865,1845,1820,
+1800,1794,1801,1808,1804,1788,1770,1754,1742,1731,1726,1731,1740,1743,1736,1727,1724,1724,1717,1697,1667,
+1636,1606,1574,1540,1508,1480,1448,1401,1344,1296,1271,1261,1242,1199,1140,1082,1035,991,942,895,865,
+859,861,840,780,683,571,462,366,280,195,107,18,-65,-139,-203,-264,-328,-389,-440,-475,-501,
+-524,-548,-567,-576,-576,-576,-582,-594,-605,-611,-616,-626,-642,-662,-678,-688,-693,-699,-707,-718,-728,
+-736,-744,-752,-758,-758,-750,-738,-726,-717,-711,-705,-699,-695,-695,-695,-690,-678,-660,-638,-613,-584,
+-551,-519,-489,-461,-435,-409,-383,-357,-330,-298,-260,-216,-169,-122,-78,-36,1,37,71,105,139,
+178,227,287,353,416,470,519,569,618,656,674,677,682,708,754,802,835,851,866,898,951,
+1014,1069,1109,1136,1162,1192,1225,1255,1282,1309,1340,1377,1412,1440,1462,1484,1512,1544,1574,1599,1620,
+1640,1660,1677,1691,1704,1720,1739,1762,1785,1806,1821,1828,1830,1831,1839,1853,1863,1862,1851,1842,1842,
+1852,1864,1870,1871,1869,1868,1868,1868,1866,1860,1848,1832,1818,1808,1802,1793,1779,1767,1761,1760,1756,
+1744,1729,1718,1711,1706,1699,1695,1697,1701,1698,1684,1671,1668,1676,1683,1681,1673,1670,1674,1685,1699,
+1718,1741,1758,1757,1736,1706,1685,1678,1680,1686,1699,1722,1744,1748,1730,1704,1697,1715,1741,1751,1738,
+1719,1717,1736,1716,1732,1746,1760,1780,1805,1828,1847,1861,1873,1885,1895,1903,1913,1926,1940,1952,1962,
+1973,1988,2008,2028,2046,2062,2080,2100,2123,2146,2168,2188,2205,2222,2242,2268,2295,2318,2335,2349,2366,
+2388,2411,2433,2454,2476,2500,2519,2531,2537,2545,2558,2569,2573,2568,2561,2558,2557,2551,2542,2537,2545,
+2564,2585,2600,2616,2643,2685,2735,2780,2816,2845,2872,2896,2914,2929,2947,2975,3012,3049,3081,3104,3117,
+3119,3112,3096,3080,3070,3065,3054,3025,2969,2890,2804,2730,2683,2660,2652,2644,2631,2621,2625,2652,2698,
+2745,2778,2785,2772,2753,2740,2738,2741,2745,2746,2747,2746,2743,2735,2725,2717,2712,2709,2706,2707,2715,
+2731,2752,2777,2806,2838,2869,2895,2915,2934,2953,2972,2984,2986,2979,2967,2951,2928,2895,2850,2794,2734,
+2675,2626,2594,2577,2572,2574,2581,2592,2605,2614,2619,2621,2625,2633,2645,2655,2664,2671,2679,2690,2708,
+2736,2771,2810,2847,2885,2933,2998,3076,3154,3218,3264,3297,3323,3343,3352,3349,3340,3335,3340,3348,3347,
+3333,3312,3298,3295,3295,3285,3266,3252,3253,3266,3277,3275,3266,3260,3259,3255,3243,3233,3238,3256,3269,
+3261,3239,3224,3231,3249,3258,3249,3231,3215,3200,3176,3140,3103,3074,3046,3002,2939,2868,2808,2762,2719,
+2669,2615,2570,2537,2506,2467,2420,2375,2342,2322,2310,2304,2301,2301,2298,2292,2285,2284,2289,2295,2299,
+2299,2298,2296,2294,2288,2281,2274,2265,2249,2225,2198,2174,2155,2134,2107,2075,2043,2012,1982,1950,1915,
+1881,1851,1822,1791,1759,1727,1698,1669,1638,1608,1581,1559,1534,1503,1468,1434,1407,1382,1354,1323,1293,
+1266,1240,1213,1181,1149,1122,1099,1078,1057,1038,1020,1004,989,973,957,938,916,891,865,843,823,
+802,774,741,705,669,629,583,532,481,435,392,348,295,231,160,89,29,-13,-41,-65,-98,
+-144,-195,-245,-291,-336,-382,-426,-463,-495,-529,-571,-623,-680,-736,-785,-827,-864,-901,-944,-995,-1048,
+-1098,-1142,-1184,-1229,-1276,-1320,-1361,-1402,-1448,-1498,-1546,-1589,-1629,-1673,-1723,-1776,-1828,-1875,-1919,-1960,-2000,
+-2041,-2088,-2140,-2194,-2245,-2292,-2340,-2390,-2441,-2486,-2524,-2563,-2609,-2659,-2706,-2744,-2776,-2808,-2844,-2879,-2910,
+-2938,-2967,-2999,-3029,-3055,-3081,-3113,-3153,-3195,-3233,-3262,-3289,-3319,-3354,-3394,-3443,-3500,-3565,-3626,-3674,-3702,
+-3721,-3746,-3789,-3844,-3889,-3907,-3897,-3878,-3876,-3901,-3940,-3972,-3986,-3988,-3991,-4002,-4016,-4022,-4019,-4014,-4015,
+-4023,-4034,-4040,-4036,-4022,-4006,-3996,-3999,-4013,-4032,-4049,-4064,-4079,-4093,-4098,-4085,-4054,-4013,-3972,-3933,-3891,
+-3842,-3787,-3729,-3669,-3610,-3553,-3503,-3468,-3447,-3437,-3436,-3443,-3461,-3495,-3542,-3596,-3646,-3681,-3698,-3701,-3700,
+-3702,-3704,-3701,-3687,-3666,-3646,-3632,-3621,-3610,-3599,-3585,-3569,-3549,-3526,-3506,-3492,-3483,-3476,-3470,-3464,-3461,
+-3456,-3445,-3426,-3401,-3377,-3355,-3331,-3299,-3258,-3213,-3173,-3140,-3112,-3084,-3056,-3030,-3010,-2994,-2974,-2942,-2894,
+-2835,-2771,-2702,-2624,-2536,-2446,-2365,-2300,-2246,-2193,-2133,-2066,-1997,-1929,-1857,-1773,-1670,-1544,-1398,-1240,-1088,
+-956,-850,-758,-668,-575,-490,-427,-391,-367,-333,-283,-230,-189,-164,-140,-104,-53,0,44,81,121,
+172,228,279,320,356,394,439,490,542,593,641,684,725,765,807,849,887,920,956,1002,1061,
+1125,1183,1228,1270,1326,1408,1514,1632,1741,1826,1883,1916,1932,1932,1911,1858,1769,1643,1485,1312,1152,
+1037,990,1010,1067,1126,1168,1197,1226,1256,1285,1307,1328,1356,1393,1428,1455,1474,1491,1509,1525,1538,
+1549,1560,1569,1572,1568,1563,1567,1582,1600,1614,1625,1640,1671,1720,1784,1850,1906,1942,1961,1977,2005,
+2049,2102,2151,2192,2229,2268,2304,2335,2361,2394,2443,2505,2563,2598,2604,2586,2559,2541,2545,2572,2616,
+2663,2701,2725,2741,2757,2782,2823,2882,2952,3018,3062,3076,3070,3060,3060,3072,3091,3117,3157,3215,3291,
+3375,3457,3529,3590,3644,3692,3738,3778,3805,3808,3791,3764,3741,3724,3703,3674,3641,3622,3624,3637,3641,
+3625,3590,3544,3483,3394,3268,3113,2945,2768,2568,2329,2065,1825,1677,1660,1759,1919,2079,2207,2303,2379,
+2438,2480,2502,2510,2509,2502,2485,2457,2418,2371,2317,2258,2202,2156,2120,2086,2045,2001,1963,1932,1898,
+1852,1800,1767,1772,1805,1831,1812,1741,1645,1559,1505,1479,1464,1449,1430,1407,1378,1341,1294,1242,1193,
+1156,1136,1127,1114,1084,1038,988,950,926,905,873,831,789,758,738,716,684,644,607,581,564,
+546,521,491,463,442,426,410,387,356,319,281,245,215,192,175,162,148,128,103,72,38,
+5,-21,-41,-56,-69,-84,-102,-122,-144,-165,-187,-207,-226,-246,-267,-289,-307,-319,-324,-327,-332,
+-342,-357,-378,-400,-424,-447,-469,-491,-516,-545,-572,-594,-610,-621,-632,-643,-654,-664,-674,-687,-706,
+-728,-751,-773,-793,-809,-823,-835,-846,-857,-868,-878,-889,-899,-908,-914,-919,-923,-928,-935,-940,-945,
+-950,-958,-967,-978,-988,-996,-1005,-1013,-1022,-1030,-1040,-1052,-1065,-1078,-1086,-1093,-1099,-1106,-1115,-1121,-1124,
+-1123,-1120,-1118,-1118,-1123,-1132,-1140,-1144,-1143,-1138,-1134,-1134,-1134,-1132,-1128,-1124,-1122,-1122,-1123,-1125,-1127,
+-1130,-1133,-1135,-1138,-1140,-1142,-1141,-1139,-1136,-1135,-1133,-1128,-1117,-1104,-1094,-1088,-1087,-1092,-1102,-1117,-1132,
+-1140,-1140,-1138,-1138,-1141,-1142,-1142,-1147,-1164,-1191,-1219,-1236,-1238,-1229,-1215,-1202,-1195,-1197,-1209,-1220,-1219,
+-1205,-1187,-1180,-1185,-1192,-1188,-1172,-1159,-1162,-1179,-1194,-1195,-1179,-1161,-1151,-1150,-1150,-1145,-1133,-1119,-1107,
+-1098,-1091,-1085,-1079,-1075,-1073,-1070,-1063,-1052,-1040,-1030,-1022,-1014,-1005,-996,-989,-984,-979,-972,-966,-963,
+-962,-961,-956,-947,-938,-933,-931,-928,-924,-919,-914,-906,-891,-870,-850,-836,-829,-823,-811,-792,-770,
+-752,-737,-725,-712,-698,-682,-664,-646,-629,-614,-603,-597,-591,-585,-579,-573,-567,-559,-550,-542,-538,
+-538,-538,-531,-517,-499,-483,-472,-462,-450,-435,-421,-409,-399,-385,-368,-350,-336,-325,-316,-306,-297,
+-293,-294,-295,-294,-289,-283,-279,-274,-266,-252,-240,-234,-236,-239,-238,-231,-222,-213,-204,-191,-172,
+-151,-133,-118,-105,-90,-72,-53,-30,-4,25,54,81,109,141,177,214,248,279,314,353,391,
+421,445,471,503,541,579,615,649,682,711,733,753,778,810,844,875,905,937,975,1015,1050,
+1084,1121,1162,1197,1217,1224,1230,1240,1243,1212,1133,1013,894,828,859,1003,1237,1508,1755,1931,2026,
+2062,2086,2149,2283,2484,2695,2839,2861,2770,2640,2555,2549,2591,2618,2580,2477,2337,2201,2095,2033,2009,
+2003,1992,1963,1925,1892,1872,1860,1848,1839,1835,1833,1824,1806,1786,1780,1789,1800,1800,1785,1764,1746,
+1732,1723,1718,1719,1723,1725,1727,1735,1748,1761,1759,1740,1711,1680,1649,1611,1563,1513,1465,1417,1364,
+1311,1271,1252,1243,1219,1171,1108,1048,1001,957,910,865,836,824,808,765,687,587,487,399,320,
+240,154,63,-23,-100,-167,-225,-282,-338,-390,-433,-464,-487,-508,-530,-550,-562,-567,-570,-576,-585,
+-593,-600,-608,-619,-636,-654,-669,-678,-682,-686,-693,-703,-714,-724,-732,-739,-746,-749,-746,-739,-728,
+-717,-706,-695,-686,-682,-682,-685,-683,-674,-659,-640,-617,-589,-558,-525,-494,-465,-438,-414,-392,-370,
+-346,-315,-276,-229,-179,-127,-78,-36,0,33,68,106,148,193,239,288,336,378,416,456,504,
+560,615,659,690,717,751,792,831,860,879,900,931,975,1026,1074,1116,1153,1188,1223,1256,1285,
+1309,1332,1357,1388,1423,1456,1483,1508,1532,1559,1588,1615,1640,1665,1689,1710,1729,1744,1757,1772,1789,
+1809,1831,1849,1859,1861,1862,1870,1885,1897,1898,1887,1873,1867,1872,1881,1888,1891,1891,1891,1891,1891,
+1886,1876,1860,1843,1832,1826,1822,1812,1798,1785,1779,1776,1770,1760,1750,1745,1742,1735,1723,1716,1718,
+1723,1721,1707,1692,1687,1692,1694,1685,1673,1672,1684,1703,1717,1728,1740,1751,1748,1726,1694,1673,1674,
+1690,1710,1725,1732,1732,1724,1709,1697,1700,1716,1729,1727,1713,1700,1702,1716,1709,1716,1724,1740,1765,
+1794,1815,1830,1842,1855,1869,1879,1884,1891,1903,1917,1930,1943,1960,1983,2007,2029,2047,2066,2089,2114,
+2138,2159,2181,2204,2227,2246,2264,2284,2309,2334,2352,2364,2376,2393,2415,2438,2458,2477,2497,2514,2526,
+2532,2540,2550,2561,2565,2560,2551,2547,2550,2553,2554,2556,2564,2579,2596,2613,2631,2655,2683,2713,2742,
+2772,2808,2845,2872,2882,2883,2891,2921,2971,3025,3069,3095,3105,3106,3100,3091,3084,3084,3086,3075,3033,
+2954,2853,2759,2698,2675,2676,2678,2671,2661,2664,2686,2725,2765,2792,2800,2791,2775,2762,2758,2763,2769,
+2773,2775,2778,2783,2786,2784,2776,2765,2754,2747,2742,2741,2744,2756,2776,2805,2840,2876,2906,2929,2943,
+2956,2972,2989,3003,3011,3011,3004,2989,2961,2919,2864,2803,2743,2692,2654,2630,2620,2618,2619,2625,2635,
+2649,2662,2670,2675,2683,2695,2709,2721,2729,2734,2740,2752,2769,2795,2829,2869,2912,2955,3003,3061,3130,
+3201,3261,3304,3334,3357,3378,3392,3393,3387,3385,3394,3406,3407,3390,3365,3351,3355,3364,3362,3348,3337,
+3342,3355,3362,3355,3346,3347,3354,3352,3334,3318,3325,3353,3374,3361,3321,3285,3278,3295,3310,3309,3297,
+3284,3265,3227,3168,3107,3063,3035,3000,2945,2876,2813,2765,2724,2678,2629,2585,2548,2511,2467,2419,2379,
+2355,2344,2337,2332,2330,2333,2336,2332,2325,2320,2322,2328,2331,2331,2332,2335,2336,2331,2321,2308,2295,
+2280,2260,2236,2213,2194,2174,2149,2118,2086,2056,2027,1995,1959,1923,1889,1858,1827,1796,1766,1738,1709,
+1678,1648,1621,1597,1570,1537,1502,1469,1443,1419,1392,1362,1333,1307,1282,1252,1219,1187,1160,1138,1116,
+1096,1078,1065,1053,1038,1019,1000,981,962,940,917,896,877,857,833,803,770,733,691,642,591,
+542,498,455,405,344,271,195,127,75,42,19,-6,-45,-95,-148,-195,-237,-279,-323,-365,-402,
+-435,-475,-527,-586,-644,-693,-733,-770,-806,-846,-891,-942,-995,-1044,-1086,-1126,-1167,-1212,-1256,-1297,-1338,
+-1383,-1433,-1484,-1529,-1570,-1612,-1660,-1714,-1769,-1819,-1863,-1902,-1939,-1980,-2028,-2083,-2139,-2192,-2240,-2288,-2338,
+-2388,-2433,-2471,-2510,-2554,-2603,-2650,-2691,-2727,-2763,-2801,-2836,-2865,-2891,-2920,-2954,-2987,-3016,-3041,-3071,-3108,
+-3152,-3195,-3232,-3264,-3293,-3318,-3342,-3368,-3406,-3462,-3528,-3590,-3636,-3669,-3701,-3742,-3790,-3830,-3848,-3844,-3837,
+-3844,-3871,-3905,-3931,-3942,-3947,-3960,-3983,-4008,-4023,-4022,-4012,-4004,-4010,-4030,-4052,-4062,-4052,-4027,-4005,-4003,
+-4022,-4050,-4073,-4084,-4089,-4090,-4086,-4073,-4051,-4026,-4004,-3987,-3968,-3939,-3903,-3860,-3815,-3769,-3723,-3684,-3656,
+-3641,-3635,-3637,-3646,-3664,-3690,-3722,-3755,-3781,-3794,-3795,-3788,-3782,-3782,-3787,-3789,-3783,-3767,-3744,-3720,-3696,
+-3675,-3658,-3646,-3633,-3616,-3593,-3570,-3551,-3536,-3524,-3513,-3502,-3490,-3476,-3453,-3421,-3385,-3354,-3331,-3310,-3283,
+-3245,-3199,-3156,-3122,-3096,-3072,-3044,-3015,-2989,-2969,-2952,-2929,-2897,-2858,-2816,-2771,-2714,-2642,-2560,-2483,-2422,
+-2376,-2330,-2274,-2207,-2137,-2072,-2013,-1952,-1875,-1770,-1631,-1460,-1273,-1094,-944,-826,-733,-650,-577,-518,-475,
+-441,-403,-357,-312,-278,-253,-223,-176,-115,-55,-6,34,80,138,201,255,297,331,367,409,455,
+501,546,590,633,675,716,757,798,838,874,909,950,1002,1064,1125,1178,1225,1278,1357,1469,1607,
+1742,1845,1897,1905,1889,1865,1830,1763,1648,1486,1301,1127,997,931,927,964,1015,1060,1094,1124,1157,
+1190,1218,1240,1266,1301,1340,1371,1389,1400,1414,1432,1450,1462,1472,1484,1500,1510,1511,1508,1512,1525,
+1541,1548,1548,1554,1582,1637,1709,1781,1837,1871,1888,1898,1916,1949,1994,2042,2088,2132,2174,2215,2253,
+2290,2331,2382,2443,2502,2547,2567,2563,2543,2523,2518,2535,2571,2614,2654,2688,2717,2743,2767,2792,2821,
+2859,2904,2943,2968,2978,2982,2992,3011,3036,3063,3094,3138,3196,3265,3336,3403,3463,3521,3583,3646,3703,
+3742,3755,3747,3731,3717,3705,3685,3648,3602,3561,3538,3531,3525,3504,3457,3384,3287,3171,3045,2918,2787,
+2636,2441,2201,1948,1748,1659,1695,1823,1980,2118,2223,2302,2368,2420,2452,2464,2464,2460,2451,2432,2399,
+2354,2302,2246,2189,2136,2093,2060,2030,1996,1957,1919,1884,1848,1802,1750,1709,1695,1711,1734,1735,1697,
+1628,1550,1486,1447,1430,1422,1412,1391,1362,1326,1282,1230,1177,1133,1109,1102,1094,1067,1017,963,923,
+903,889,863,821,775,738,714,695,669,636,602,574,553,532,508,481,453,427,405,387,369,
+346,314,275,235,203,182,168,154,137,115,89,61,30,-3,-35,-60,-78,-89,-98,-110,-127,
+-148,-173,-199,-223,-243,-261,-279,-299,-316,-328,-335,-341,-348,-359,-372,-389,-410,-434,-460,-485,-508,
+-532,-558,-585,-609,-627,-640,-649,-658,-667,-678,-689,-702,-717,-734,-754,-775,-796,-816,-834,-850,-864,
+-877,-887,-896,-904,-913,-922,-929,-934,-936,-939,-942,-945,-950,-956,-966,-977,-986,-993,-998,-1004,-1012,
+-1021,-1031,-1043,-1056,-1070,-1082,-1090,-1095,-1101,-1111,-1122,-1132,-1137,-1140,-1139,-1137,-1132,-1127,-1124,-1126,-1130,
+-1133,-1133,-1130,-1126,-1123,-1120,-1118,-1118,-1121,-1124,-1128,-1131,-1134,-1137,-1139,-1141,-1144,-1146,-1147,-1145,-1142,
+-1140,-1137,-1133,-1126,-1120,-1117,-1115,-1108,-1094,-1083,-1086,-1109,-1139,-1158,-1158,-1148,-1142,-1146,-1154,-1155,-1151,
+-1153,-1167,-1190,-1211,-1222,-1222,-1217,-1210,-1207,-1210,-1220,-1228,-1226,-1213,-1197,-1189,-1193,-1197,-1190,-1175,-1166,
+-1174,-1196,-1213,-1208,-1184,-1156,-1139,-1137,-1139,-1135,-1122,-1107,-1096,-1090,-1089,-1087,-1083,-1078,-1072,-1067,-1061,
+-1052,-1043,-1033,-1023,-1014,-1005,-997,-991,-986,-981,-975,-970,-967,-967,-966,-960,-951,-941,-932,-925,-917,
+-911,-906,-903,-898,-885,-867,-848,-837,-833,-831,-822,-806,-787,-771,-757,-745,-732,-719,-706,-693,-677,
+-658,-640,-627,-619,-612,-602,-589,-578,-568,-558,-547,-535,-527,-524,-524,-520,-511,-498,-485,-475,-466,
+-455,-443,-431,-421,-412,-399,-382,-363,-345,-331,-320,-311,-304,-302,-302,-302,-299,-293,-288,-284,-281,
+-275,-266,-257,-252,-250,-249,-244,-235,-226,-218,-207,-192,-171,-150,-134,-122,-112,-100,-84,-64,-40,
+-13,16,45,72,102,137,175,212,244,274,307,346,385,420,451,481,514,548,580,611,644,
+678,710,734,756,781,811,843,873,902,937,976,1015,1048,1078,1111,1149,1182,1200,1207,1213,1222,
+1215,1167,1070,948,853,841,943,1152,1424,1698,1912,2033,2067,2059,2069,2141,2287,2480,2662,2774,2788,
+2724,2638,2587,2588,2618,2629,2587,2486,2348,2205,2090,2020,1991,1980,1963,1930,1890,1859,1840,1828,1815,
+1805,1802,1804,1802,1789,1774,1769,1777,1789,1792,1780,1761,1742,1728,1716,1707,1702,1700,1700,1705,1719,
+1739,1757,1761,1751,1734,1717,1695,1661,1609,1549,1487,1426,1366,1310,1269,1248,1234,1206,1156,1091,1030,
+979,932,884,837,802,773,735,671,585,493,413,346,277,198,108,18,-60,-126,-185,-240,-292,
+-340,-382,-417,-445,-468,-490,-509,-528,-543,-555,-565,-571,-577,-582,-588,-596,-607,-620,-636,-651,-663,
+-670,-675,-681,-692,-705,-717,-724,-729,-732,-736,-739,-737,-729,-717,-703,-690,-681,-676,-676,-677,-676,
+-669,-656,-638,-617,-594,-567,-537,-505,-473,-443,-416,-392,-367,-339,-306,-269,-227,-182,-131,-79,-30,
+10,45,77,112,152,197,246,295,341,380,413,448,491,544,600,651,694,733,773,814,852,
+883,909,935,967,1004,1043,1083,1124,1165,1205,1243,1279,1310,1336,1358,1380,1408,1441,1476,1507,1534,
+1557,1582,1610,1638,1665,1691,1717,1741,1764,1781,1794,1804,1816,1832,1853,1872,1886,1893,1900,1912,1927,
+1939,1939,1928,1913,1905,1906,1913,1919,1922,1924,1925,1924,1920,1911,1896,1879,1865,1858,1855,1851,1841,
+1826,1814,1804,1796,1784,1773,1769,1772,1776,1770,1757,1747,1750,1757,1756,1744,1731,1727,1730,1724,1705,
+1684,1677,1688,1705,1714,1717,1722,1737,1749,1747,1732,1719,1719,1732,1744,1746,1734,1717,1699,1689,1690,
+1701,1714,1720,1713,1702,1696,1700,1709,1696,1702,1712,1731,1759,1785,1803,1813,1823,1837,1850,1858,1862,
+1868,1882,1901,1919,1938,1960,1986,2012,2032,2049,2070,2096,2124,2147,2167,2191,2221,2252,2274,2288,2301,
+2320,2343,2360,2371,2380,2395,2417,2439,2457,2471,2488,2507,2521,2528,2531,2537,2546,2554,2554,2548,2545,
+2548,2558,2568,2575,2581,2589,2602,2619,2641,2663,2681,2692,2702,2722,2756,2797,2828,2840,2839,2845,2874,
+2927,2987,3035,3066,3085,3098,3108,3113,3113,3110,3103,3081,3031,2950,2856,2781,2750,2758,2778,2784,2767,
+2745,2738,2752,2778,2799,2806,2803,2796,2792,2792,2795,2800,2804,2807,2809,2814,2821,2826,2825,2816,2801,
+2789,2782,2779,2779,2781,2788,2806,2837,2878,2919,2952,2972,2984,2993,3003,3015,3028,3038,3045,3044,3029,
+2995,2943,2881,2817,2760,2714,2682,2663,2657,2658,2664,2672,2685,2699,2713,2722,2730,2742,2759,2780,2796,
+2803,2806,2810,2818,2833,2855,2885,2923,2968,3016,3065,3122,3187,3254,3312,3352,3377,3398,3421,3442,3452,
+3451,3450,3458,3468,3466,3445,3418,3406,3414,3429,3432,3423,3419,3429,3445,3449,3438,3429,3436,3452,3453,
+3433,3412,3420,3454,3477,3455,3396,3338,3315,3325,3338,3335,3322,3308,3287,3244,3178,3111,3065,3040,3010,
+2957,2885,2817,2766,2726,2684,2639,2596,2557,2518,2471,2425,2391,2376,2372,2368,2360,2356,2359,2364,2363,
+2356,2350,2352,2357,2360,2359,2360,2363,2366,2362,2349,2335,2323,2311,2295,2274,2251,2229,2208,2182,2152,
+2122,2093,2065,2034,1998,1961,1927,1896,1866,1835,1806,1778,1749,1718,1687,1658,1631,1601,1569,1536,1507,
+1482,1457,1430,1401,1373,1348,1321,1290,1256,1226,1201,1180,1159,1139,1123,1112,1100,1083,1060,1038,1021,
+1007,992,974,953,934,915,894,869,837,798,752,700,649,604,563,518,460,387,305,227,166,
+125,98,73,41,-3,-54,-102,-143,-181,-222,-266,-308,-344,-380,-426,-484,-544,-596,-636,-670,-706,
+-747,-792,-840,-890,-941,-990,-1031,-1068,-1106,-1149,-1193,-1237,-1279,-1324,-1375,-1427,-1475,-1517,-1556,-1600,-1651,
+-1703,-1752,-1797,-1838,-1878,-1923,-1972,-2027,-2083,-2135,-2185,-2233,-2283,-2331,-2375,-2415,-2455,-2499,-2549,-2597,-2640,
+-2680,-2719,-2758,-2793,-2821,-2847,-2875,-2908,-2943,-2975,-3004,-3035,-3073,-3115,-3155,-3192,-3226,-3257,-3285,-3306,-3325,
+-3349,-3389,-3443,-3501,-3550,-3589,-3624,-3663,-3706,-3745,-3774,-3795,-3814,-3837,-3860,-3875,-3880,-3880,-3886,-3906,-3937,
+-3969,-3991,-3995,-3985,-3969,-3962,-3972,-3997,-4018,-4021,-4005,-3986,-3983,-4002,-4034,-4060,-4072,-4073,-4068,-4061,-4050,
+-4036,-4023,-4012,-4003,-3989,-3971,-3949,-3927,-3903,-3875,-3845,-3819,-3801,-3792,-3789,-3788,-3789,-3795,-3807,-3822,-3835,
+-3844,-3848,-3849,-3849,-3849,-3850,-3853,-3853,-3846,-3830,-3805,-3773,-3739,-3708,-3684,-3669,-3657,-3642,-3622,-3598,-3577,
+-3558,-3542,-3526,-3508,-3487,-3463,-3432,-3395,-3357,-3326,-3305,-3289,-3270,-3240,-3200,-3158,-3123,-3095,-3072,-3046,-3017,
+-2989,-2965,-2944,-2921,-2892,-2861,-2832,-2805,-2770,-2720,-2658,-2598,-2551,-2516,-2478,-2425,-2353,-2273,-2200,-2140,-2090,
+-2037,-1962,-1849,-1686,-1483,-1267,-1074,-924,-819,-741,-675,-616,-566,-523,-484,-444,-407,-373,-338,-291,-230,
+-163,-105,-59,-19,30,94,161,219,264,303,342,382,422,460,500,545,594,639,678,713,750,
+790,831,869,907,950,1003,1065,1126,1181,1238,1314,1426,1570,1717,1825,1869,1858,1822,1785,1742,1664,
+1526,1337,1133,966,867,841,866,913,959,994,1022,1050,1081,1113,1143,1173,1209,1248,1282,1304,1316,
+1330,1353,1380,1397,1399,1395,1402,1422,1445,1458,1459,1459,1464,1471,1474,1474,1484,1517,1574,1643,1707,
+1754,1785,1805,1820,1840,1869,1908,1952,1996,2038,2078,2120,2166,2215,2269,2325,2382,2435,2478,2506,2517,
+2513,2502,2496,2504,2527,2557,2590,2625,2664,2705,2742,2769,2787,2806,2832,2864,2892,2908,2916,2924,2942,
+2968,2997,3027,3061,3104,3156,3213,3273,3334,3402,3476,3551,3614,3656,3674,3678,3677,3675,3667,3644,3600,
+3543,3487,3445,3419,3397,3358,3287,3182,3056,2932,2827,2740,2645,2509,2315,2082,1864,1725,1700,1778,1911,
+2046,2155,2236,2303,2361,2405,2427,2430,2421,2410,2394,2370,2333,2287,2236,2182,2128,2077,2035,2003,1976,
+1947,1911,1870,1828,1787,1746,1703,1660,1625,1609,1612,1623,1623,1595,1538,1471,1418,1393,1388,1384,1366,
+1335,1299,1261,1218,1168,1120,1088,1077,1070,1046,996,939,898,880,871,850,811,763,722,694,673,
+652,627,601,576,552,530,506,479,448,417,390,371,358,342,314,273,228,192,171,160,147,
+128,103,76,49,20,-11,-44,-73,-94,-107,-114,-121,-134,-155,-182,-211,-237,-258,-275,-293,-311,
+-328,-341,-352,-362,-373,-385,-397,-411,-429,-452,-477,-502,-525,-547,-573,-601,-627,-648,-660,-667,-674,
+-682,-694,-708,-722,-736,-750,-767,-786,-806,-826,-845,-863,-880,-895,-906,-913,-919,-927,-936,-943,-946,
+-947,-948,-950,-953,-957,-964,-974,-985,-993,-996,-997,-999,-1005,-1015,-1025,-1037,-1050,-1064,-1077,-1086,-1092,
+-1101,-1114,-1128,-1140,-1149,-1155,-1159,-1159,-1153,-1142,-1130,-1123,-1123,-1127,-1130,-1131,-1128,-1124,-1121,-1121,-1124,
+-1129,-1136,-1140,-1142,-1143,-1144,-1147,-1150,-1154,-1155,-1155,-1152,-1148,-1144,-1139,-1132,-1127,-1129,-1137,-1143,-1133,
+-1105,-1077,-1072,-1099,-1142,-1173,-1176,-1160,-1148,-1152,-1162,-1167,-1162,-1156,-1160,-1175,-1190,-1201,-1207,-1212,-1215,
+-1217,-1219,-1222,-1224,-1221,-1210,-1197,-1192,-1196,-1202,-1200,-1190,-1185,-1193,-1212,-1225,-1219,-1193,-1161,-1139,-1128,
+-1123,-1115,-1102,-1088,-1080,-1079,-1083,-1087,-1086,-1081,-1073,-1065,-1058,-1051,-1043,-1033,-1023,-1013,-1005,-998,-993,
+-988,-983,-978,-975,-973,-973,-971,-967,-959,-949,-939,-927,-916,-906,-901,-898,-894,-882,-863,-844,-831,
+-825,-820,-810,-796,-781,-771,-764,-756,-747,-738,-730,-721,-708,-691,-675,-663,-656,-647,-634,-618,-603,
+-592,-582,-570,-555,-540,-527,-518,-511,-502,-493,-483,-474,-465,-455,-445,-434,-423,-412,-398,-382,-364,
+-347,-331,-319,-310,-306,-304,-302,-300,-297,-294,-292,-291,-289,-284,-277,-271,-266,-261,-255,-246,-234,
+-223,-213,-201,-186,-168,-151,-137,-126,-116,-103,-87,-66,-43,-17,10,38,67,99,136,175,211,
+242,271,302,338,377,414,450,485,519,549,574,600,629,663,696,725,750,778,810,843,875,
+906,941,979,1014,1043,1070,1102,1138,1169,1187,1194,1199,1201,1180,1115,1010,903,852,904,1070,1321,
+1603,1853,2023,2095,2094,2071,2083,2164,2308,2478,2625,2711,2727,2695,2652,2627,2622,2619,2591,2521,2413,
+2284,2159,2060,2001,1976,1964,1944,1909,1869,1840,1826,1816,1803,1788,1776,1772,1771,1767,1762,1761,1767,
+1774,1775,1767,1753,1739,1724,1711,1699,1690,1684,1682,1683,1691,1705,1717,1722,1720,1715,1712,1703,1680,
+1639,1586,1528,1466,1399,1331,1274,1235,1207,1176,1130,1074,1018,967,917,864,811,762,714,654,577,
+491,413,351,296,231,149,59,-23,-90,-145,-198,-250,-298,-339,-370,-398,-425,-452,-475,-494,-509,
+-526,-542,-554,-562,-566,-570,-577,-588,-598,-608,-619,-633,-648,-659,-666,-672,-683,-698,-712,-720,-722,
+-723,-727,-731,-732,-725,-712,-698,-688,-681,-678,-676,-674,-671,-664,-650,-633,-614,-594,-572,-546,-514,
+-479,-444,-413,-385,-354,-320,-284,-247,-212,-173,-128,-76,-22,25,65,97,126,159,197,241,288,
+335,378,418,459,505,555,605,651,692,735,781,829,874,911,944,975,1007,1039,1071,1105,1141,
+1180,1220,1258,1294,1328,1357,1382,1405,1431,1462,1495,1526,1554,1579,1605,1633,1662,1688,1712,1735,1760,
+1783,1802,1816,1827,1839,1855,1876,1896,1913,1927,1943,1961,1978,1986,1983,1971,1958,1951,1950,1951,1953,
+1953,1954,1955,1954,1949,1940,1928,1914,1904,1897,1892,1884,1873,1860,1849,1841,1829,1814,1801,1797,1804,
+1810,1806,1794,1785,1787,1794,1792,1780,1770,1772,1779,1775,1752,1721,1703,1705,1714,1716,1712,1713,1728,
+1749,1762,1762,1755,1753,1754,1752,1739,1716,1691,1670,1662,1667,1683,1699,1706,1700,1690,1686,1690,1696,
+1680,1692,1706,1725,1750,1771,1784,1791,1799,1811,1822,1828,1833,1845,1867,1893,1918,1941,1965,1993,2019,
+2038,2055,2076,2104,2133,2157,2179,2206,2242,2276,2299,2309,2314,2326,2343,2357,2366,2375,2391,2414,2436,
+2450,2460,2475,2494,2512,2520,2521,2524,2534,2547,2554,2553,2550,2553,2564,2577,2587,2590,2592,2598,2612,
+2632,2653,2668,2674,2677,2687,2712,2747,2778,2796,2802,2808,2829,2868,2917,2966,3012,3057,3102,3139,3155,
+3147,3121,3087,3051,3005,2946,2883,2839,2831,2850,2871,2868,2840,2807,2790,2795,2811,2823,2827,2830,2836,
+2844,2848,2847,2843,2841,2841,2843,2847,2852,2855,2853,2844,2831,2823,2821,2824,2827,2828,2834,2851,2883,
+2922,2959,2987,3003,3013,3022,3032,3041,3051,3061,3070,3070,3052,3013,2956,2893,2834,2784,2743,2712,2694,
+2689,2696,2710,2725,2741,2756,2768,2778,2788,2803,2826,2852,2872,2881,2883,2884,2890,2901,2917,2941,2976,
+3020,3069,3119,3173,3235,3303,3364,3408,3435,3458,3484,3509,3522,3522,3516,3517,3521,3516,3497,3476,3469,
+3481,3496,3499,3493,3496,3516,3540,3547,3536,3526,3537,3558,3561,3539,3515,3521,3553,3573,3545,3477,3410,
+3379,3379,3377,3355,3324,3300,3281,3247,3191,3130,3085,3056,3022,2966,2895,2829,2782,2746,2706,2659,2612,
+2571,2530,2486,2443,2415,2406,2406,2402,2391,2382,2380,2382,2380,2373,2369,2373,2380,2384,2381,2378,2380,
+2383,2382,2373,2362,2353,2345,2331,2310,2285,2261,2236,2209,2179,2150,2123,2097,2068,2033,1998,1964,1934,
+1905,1874,1844,1815,1787,1758,1727,1696,1665,1633,1602,1571,1544,1520,1494,1466,1438,1412,1387,1359,1326,
+1293,1265,1243,1224,1203,1184,1170,1159,1146,1126,1100,1078,1064,1056,1046,1030,1011,991,973,954,930,
+898,857,809,757,708,665,624,574,506,422,337,264,213,180,154,123,81,33,-14,-55,-90,
+-126,-167,-211,-252,-290,-331,-381,-438,-493,-536,-568,-600,-641,-689,-739,-788,-836,-886,-934,-976,-1012,
+-1050,-1092,-1139,-1185,-1229,-1274,-1323,-1376,-1426,-1469,-1509,-1551,-1597,-1645,-1690,-1733,-1777,-1823,-1872,-1923,-1975,
+-2026,-2076,-2125,-2174,-2222,-2269,-2312,-2353,-2394,-2439,-2488,-2537,-2582,-2622,-2660,-2698,-2733,-2765,-2795,-2825,-2858,
+-2892,-2923,-2954,-2989,-3031,-3075,-3116,-3150,-3182,-3215,-3247,-3276,-3298,-3320,-3348,-3385,-3426,-3464,-3499,-3531,-3566,
+-3603,-3641,-3681,-3723,-3765,-3799,-3815,-3814,-3803,-3798,-3808,-3834,-3869,-3904,-3932,-3945,-3937,-3913,-3887,-3879,-3897,
+-3929,-3957,-3967,-3964,-3965,-3979,-4005,-4029,-4043,-4045,-4040,-4032,-4022,-4014,-4008,-4002,-3992,-3974,-3954,-3938,-3928,
+-3920,-3906,-3888,-3872,-3864,-3864,-3863,-3859,-3851,-3846,-3846,-3850,-3854,-3859,-3867,-3878,-3890,-3897,-3896,-3888,-3875,
+-3858,-3836,-3809,-3778,-3745,-3715,-3690,-3672,-3657,-3639,-3618,-3594,-3570,-3549,-3530,-3510,-3488,-3464,-3436,-3402,-3366,
+-3333,-3306,-3289,-3276,-3260,-3235,-3200,-3159,-3121,-3089,-3063,-3037,-3011,-2985,-2961,-2938,-2912,-2881,-2848,-2820,-2798,
+-2775,-2743,-2702,-2661,-2628,-2604,-2575,-2527,-2456,-2373,-2291,-2223,-2171,-2128,-2079,-2001,-1872,-1689,-1475,-1266,-1094,
+-967,-872,-792,-717,-650,-595,-551,-515,-483,-449,-405,-346,-276,-207,-150,-107,-65,-12,52,119,178,
+228,273,317,359,394,426,463,510,563,611,647,676,707,747,793,836,872,909,957,1020,1094,
+1167,1235,1310,1409,1533,1661,1753,1785,1765,1723,1683,1635,1545,1390,1185,981,833,765,768,808,857,
+898,931,958,985,1012,1041,1072,1109,1151,1190,1216,1231,1247,1280,1330,1376,1394,1377,1347,1333,1346,
+1374,1395,1399,1393,1390,1392,1397,1404,1421,1456,1507,1563,1613,1652,1683,1712,1741,1772,1806,1843,1880,
+1916,1949,1982,2021,2070,2130,2195,2260,2317,2365,2401,2429,2448,2458,2462,2465,2473,2490,2511,2534,2560,
+2594,2637,2684,2723,2751,2772,2798,2830,2859,2874,2875,2871,2875,2893,2920,2949,2979,3012,3053,3099,3152,
+3213,3286,3367,3446,3509,3550,3575,3592,3606,3613,3604,3572,3521,3460,3398,3343,3294,3241,3169,3066,2936,
+2803,2696,2630,2584,2517,2389,2199,1990,1826,1758,1791,1891,2010,2113,2193,2256,2313,2361,2394,2407,2402,
+2386,2364,2336,2301,2260,2214,2166,2116,2065,2017,1975,1944,1919,1893,1858,1813,1765,1724,1694,1668,1633,
+1585,1539,1518,1530,1558,1563,1522,1447,1376,1341,1341,1347,1332,1297,1257,1225,1195,1157,1113,1079,1062,
+1051,1025,976,917,874,856,848,831,794,748,708,678,657,637,616,595,574,554,534,511,484,
+452,415,382,360,350,341,318,277,229,188,164,151,138,118,92,64,36,9,-19,-50,-79,
+-102,-117,-126,-133,-145,-166,-194,-224,-249,-269,-287,-307,-330,-351,-368,-381,-393,-405,-418,-429,-442,
+-458,-478,-500,-521,-541,-562,-587,-615,-642,-663,-676,-684,-690,-699,-712,-727,-743,-756,-770,-786,-804,
+-822,-839,-855,-872,-890,-907,-919,-927,-933,-941,-950,-955,-956,-955,-956,-959,-963,-967,-972,-981,-992,
+-1000,-1003,-1001,-1001,-1006,-1013,-1022,-1030,-1040,-1052,-1065,-1076,-1087,-1099,-1115,-1131,-1145,-1155,-1163,-1169,-1172,
+-1170,-1161,-1150,-1141,-1138,-1140,-1144,-1147,-1148,-1147,-1145,-1144,-1147,-1151,-1154,-1155,-1154,-1153,-1154,-1157,-1161,
+-1164,-1166,-1165,-1162,-1158,-1153,-1146,-1137,-1132,-1137,-1152,-1163,-1154,-1124,-1091,-1081,-1107,-1150,-1182,-1184,-1166,
+-1149,-1145,-1151,-1155,-1154,-1154,-1163,-1177,-1189,-1197,-1203,-1213,-1223,-1227,-1225,-1221,-1218,-1215,-1208,-1199,-1194,
+-1197,-1206,-1209,-1206,-1201,-1203,-1213,-1221,-1217,-1198,-1174,-1152,-1136,-1123,-1110,-1097,-1085,-1078,-1076,-1077,-1079,
+-1079,-1075,-1068,-1060,-1052,-1045,-1037,-1028,-1019,-1011,-1005,-1000,-994,-989,-984,-980,-978,-977,-977,-975,-972,
+-968,-961,-951,-939,-926,-914,-908,-905,-899,-886,-866,-846,-830,-819,-808,-795,-781,-771,-767,-765,-762,
+-754,-745,-737,-728,-716,-702,-689,-678,-671,-662,-650,-635,-622,-613,-606,-597,-582,-563,-541,-520,-504,
+-492,-483,-475,-465,-454,-442,-431,-419,-404,-388,-372,-357,-344,-332,-319,-310,-304,-301,-298,-293,-288,
+-286,-287,-290,-291,-288,-283,-277,-272,-268,-262,-253,-241,-227,-215,-203,-192,-178,-163,-148,-134,-122,
+-108,-93,-76,-56,-33,-9,15,41,69,101,136,173,208,239,269,300,334,368,404,441,477,
+512,540,563,586,614,645,676,704,732,763,799,836,870,903,938,972,1002,1030,1060,1096,1135,
+1164,1179,1184,1186,1178,1141,1063,960,881,881,990,1200,1467,1732,1942,2066,2106,2093,2081,2114,2207,
+2345,2489,2603,2670,2690,2680,2660,2641,2618,2578,2510,2413,2299,2185,2085,2010,1966,1947,1937,1919,1888,
+1853,1829,1819,1814,1802,1781,1759,1746,1745,1749,1753,1754,1752,1748,1743,1738,1733,1727,1718,1706,1695,
+1687,1683,1681,1678,1676,1676,1676,1672,1666,1662,1659,1655,1643,1620,1590,1552,1502,1433,1351,1270,1205,
+1158,1122,1086,1046,1004,959,908,850,787,722,654,581,501,422,355,299,243,175,93,9,-61,
+-117,-163,-211,-260,-303,-336,-359,-382,-410,-440,-465,-483,-497,-510,-526,-539,-546,-550,-557,-569,-584,
+-595,-602,-609,-622,-638,-651,-659,-664,-674,-689,-705,-714,-717,-717,-721,-724,-723,-715,-702,-691,-685,
+-682,-678,-675,-671,-667,-660,-647,-630,-611,-592,-572,-546,-514,-477,-441,-409,-378,-345,-306,-265,-227,
+-192,-157,-117,-69,-18,30,74,111,144,177,210,244,281,320,361,406,455,508,560,606,645,
+683,727,779,835,885,928,964,998,1032,1065,1097,1128,1162,1198,1235,1272,1308,1343,1375,1403,1428,
+1454,1482,1512,1542,1569,1595,1623,1650,1676,1699,1719,1739,1762,1784,1804,1820,1836,1855,1877,1900,1921,
+1939,1958,1981,2005,2023,2029,2022,2010,2000,1995,1992,1988,1983,1980,1979,1980,1979,1976,1971,1963,1954,
+1943,1933,1923,1912,1901,1892,1886,1882,1873,1860,1848,1842,1843,1845,1839,1830,1823,1824,1824,1815,1801,
+1793,1801,1818,1822,1803,1771,1745,1736,1738,1739,1737,1736,1743,1754,1759,1756,1748,1740,1730,1714,1693,
+1669,1646,1629,1621,1625,1642,1664,1677,1678,1670,1666,1670,1680,1675,1692,1706,1718,1733,1749,1761,1770,
+1778,1787,1794,1801,1810,1828,1857,1889,1918,1942,1968,1996,2024,2046,2064,2085,2113,2144,2171,2197,2227,
+2262,2295,2315,2322,2323,2330,2342,2352,2357,2364,2381,2406,2429,2442,2449,2461,2480,2499,2509,2512,2515,
+2526,2542,2555,2559,2559,2564,2574,2588,2597,2600,2600,2601,2607,2617,2630,2644,2657,2667,2676,2691,2713,
+2739,2762,2775,2780,2784,2800,2832,2882,2947,3023,3095,3145,3156,3125,3070,3016,2980,2960,2942,2917,2894,
+2883,2886,2889,2876,2850,2824,2817,2830,2852,2870,2884,2897,2911,2920,2917,2904,2888,2877,2873,2873,2874,
+2876,2878,2876,2871,2864,2861,2864,2870,2875,2879,2888,2907,2937,2968,2991,3003,3009,3018,3033,3048,3061,
+3069,3077,3083,3079,3057,3014,2959,2903,2855,2815,2779,2749,2730,2727,2740,2759,2779,2796,2811,2824,2836,
+2850,2869,2894,2922,2944,2954,2957,2959,2965,2975,2987,3006,3037,3079,3125,3173,3223,3284,3353,3421,3474,
+3510,3536,3561,3583,3592,3586,3573,3565,3565,3562,3552,3541,3543,3557,3570,3571,3568,3581,3615,3649,3661,
+3650,3640,3649,3668,3670,3646,3618,3616,3639,3651,3620,3557,3499,3475,3469,3447,3395,3335,3295,3276,3254,
+3212,3157,3106,3067,3026,2970,2907,2854,2817,2783,2738,2681,2626,2581,2544,2507,2471,2448,2442,2442,2436,
+2422,2408,2400,2397,2392,2385,2383,2389,2398,2402,2397,2392,2391,2395,2398,2395,2389,2383,2375,2361,2338,
+2312,2286,2261,2233,2203,2174,2150,2126,2100,2068,2034,2003,1974,1945,1913,1881,1851,1824,1797,1768,1736,
+1703,1671,1640,1610,1583,1556,1529,1501,1475,1451,1426,1396,1363,1330,1305,1285,1267,1248,1229,1214,1201,
+1186,1164,1140,1122,1112,1106,1096,1080,1061,1043,1026,1007,982,950,911,865,816,768,721,672,610,
+533,448,369,310,271,242,210,170,122,73,30,-6,-39,-74,-115,-158,-199,-239,-283,-334,-387,
+-434,-469,-498,-532,-578,-631,-684,-733,-780,-829,-876,-918,-956,-994,-1039,-1089,-1137,-1181,-1224,-1271,-1322,
+-1371,-1416,-1458,-1503,-1549,-1595,-1637,-1677,-1721,-1769,-1820,-1871,-1919,-1966,-2014,-2063,-2112,-2160,-2207,-2250,-2292,
+-2334,-2379,-2427,-2476,-2520,-2559,-2596,-2632,-2668,-2705,-2740,-2776,-2809,-2840,-2869,-2899,-2936,-2981,-3029,-3071,-3106,
+-3136,-3168,-3202,-3236,-3267,-3293,-3320,-3349,-3378,-3407,-3436,-3464,-3493,-3521,-3552,-3587,-3630,-3673,-3706,-3717,-3711,
+-3703,-3706,-3727,-3760,-3795,-3830,-3863,-3883,-3882,-3855,-3817,-3796,-3809,-3852,-3901,-3934,-3946,-3947,-3953,-3967,-3986,
+-4002,-4008,-4004,-3994,-3983,-3976,-3976,-3974,-3965,-3944,-3921,-3904,-3897,-3895,-3889,-3879,-3874,-3878,-3888,-3895,-3891,
+-3880,-3869,-3863,-3861,-3862,-3866,-3876,-3891,-3905,-3909,-3900,-3880,-3854,-3826,-3800,-3774,-3748,-3724,-3702,-3682,-3662,
+-3641,-3618,-3593,-3568,-3545,-3522,-3502,-3482,-3461,-3437,-3407,-3373,-3337,-3306,-3284,-3269,-3256,-3239,-3213,-3177,-3136,
+-3097,-3063,-3035,-3010,-2984,-2959,-2935,-2913,-2887,-2855,-2820,-2788,-2764,-2743,-2720,-2690,-2659,-2633,-2613,-2587,-2547,
+-2486,-2411,-2332,-2259,-2200,-2156,-2120,-2073,-1990,-1858,-1687,-1502,-1331,-1186,-1062,-948,-840,-743,-664,-606,-566,
+-535,-504,-463,-405,-335,-264,-205,-156,-107,-50,15,82,141,194,244,294,338,372,401,435,481,
+534,581,616,642,670,709,757,803,844,882,933,1006,1097,1190,1271,1342,1414,1499,1585,1647,1666,
+1647,1612,1574,1518,1412,1241,1033,844,724,687,709,753,794,828,862,896,929,956,981,1010,1048,
+1091,1126,1145,1157,1183,1239,1316,1383,1403,1372,1317,1278,1275,1298,1321,1327,1320,1314,1316,1324,1337,
+1355,1383,1422,1467,1510,1547,1582,1618,1657,1698,1740,1780,1815,1844,1870,1897,1932,1980,2040,2109,2177,
+2238,2285,2318,2344,2366,2387,2405,2422,2441,2465,2489,2509,2523,2539,2566,2605,2649,2689,2724,2758,2795,
+2827,2843,2841,2829,2821,2826,2843,2866,2893,2924,2962,3005,3053,3110,3181,3261,3340,3403,3448,3481,3509,
+3531,3539,3522,3481,3425,3363,3299,3230,3149,3052,2934,2796,2656,2541,2474,2455,2446,2395,2274,2099,1932,
+1835,1834,1909,2013,2108,2180,2236,2285,2328,2361,2380,2384,2375,2355,2323,2282,2235,2188,2142,2096,2048,
+1999,1953,1913,1881,1855,1829,1796,1751,1702,1663,1644,1637,1616,1569,1509,1472,1481,1521,1541,1502,1413,
+1323,1280,1286,1304,1296,1258,1214,1184,1165,1141,1106,1072,1049,1031,1000,947,888,846,828,822,805,
+771,728,690,663,642,622,601,581,562,546,530,513,491,459,420,382,355,344,337,320,286,
+240,197,166,145,128,107,82,54,27,1,-24,-50,-77,-101,-120,-133,-143,-157,-180,-209,-237,
+-260,-277,-295,-319,-348,-377,-399,-416,-429,-441,-452,-463,-476,-491,-509,-527,-543,-559,-577,-599,-623,
+-646,-666,-680,-692,-704,-717,-731,-745,-758,-771,-784,-801,-820,-838,-852,-866,-881,-899,-916,-929,-937,
+-944,-953,-963,-968,-968,-966,-967,-970,-974,-977,-981,-989,-1001,-1011,-1016,-1016,-1017,-1021,-1026,-1031,-1034,
+-1038,-1046,-1057,-1071,-1084,-1100,-1117,-1133,-1147,-1157,-1164,-1170,-1175,-1178,-1177,-1174,-1169,-1165,-1163,-1163,-1165,
+-1168,-1169,-1170,-1169,-1169,-1169,-1168,-1165,-1163,-1161,-1163,-1166,-1171,-1174,-1175,-1173,-1171,-1167,-1162,-1153,-1143,
+-1135,-1138,-1151,-1165,-1165,-1147,-1125,-1118,-1134,-1163,-1182,-1180,-1165,-1149,-1142,-1140,-1138,-1138,-1149,-1170,-1191,
+-1203,-1205,-1208,-1216,-1228,-1233,-1230,-1224,-1222,-1222,-1218,-1209,-1200,-1199,-1206,-1214,-1215,-1210,-1205,-1205,-1207,
+-1205,-1197,-1184,-1169,-1154,-1139,-1126,-1116,-1108,-1099,-1088,-1078,-1070,-1066,-1064,-1060,-1053,-1046,-1037,-1029,-1020,
+-1013,-1008,-1004,-1001,-996,-989,-984,-981,-980,-980,-979,-977,-976,-974,-971,-963,-952,-938,-926,-918,-912,
+-905,-893,-875,-857,-841,-828,-815,-801,-789,-782,-780,-778,-771,-759,-744,-729,-715,-702,-689,-676,-666,
+-657,-648,-638,-628,-618,-610,-604,-597,-586,-569,-545,-518,-494,-478,-469,-462,-452,-438,-423,-409,-394,
+-377,-357,-339,-326,-317,-309,-301,-296,-294,-293,-290,-283,-276,-274,-278,-282,-282,-277,-270,-266,-264,
+-262,-256,-247,-235,-223,-211,-199,-188,-175,-160,-143,-124,-106,-90,-74,-57,-37,-14,9,33,57,
+81,108,139,171,204,236,269,301,332,363,396,430,466,499,528,554,580,608,637,664,690,
+718,752,790,826,859,891,923,954,983,1014,1051,1093,1132,1157,1168,1170,1168,1153,1104,1019,926,
+878,924,1078,1314,1578,1813,1980,2064,2081,2071,2081,2140,2249,2382,2505,2597,2649,2665,2656,2633,2601,
+2557,2494,2409,2308,2203,2105,2024,1962,1921,1901,1891,1879,1858,1830,1810,1802,1801,1793,1773,1746,1728,
+1726,1734,1741,1738,1725,1709,1698,1696,1701,1705,1704,1699,1693,1690,1690,1690,1687,1680,1670,1657,1641,
+1622,1605,1591,1581,1572,1563,1554,1538,1504,1443,1356,1259,1172,1108,1066,1038,1014,986,949,899,834,
+757,674,593,516,444,377,315,253,188,114,37,-34,-93,-140,-183,-227,-271,-307,-333,-352,-372,
+-400,-430,-456,-473,-485,-496,-511,-523,-532,-537,-545,-560,-577,-589,-595,-602,-614,-630,-646,-654,-660,
+-668,-683,-699,-710,-714,-716,-718,-719,-716,-706,-695,-687,-684,-681,-676,-670,-664,-660,-655,-644,-629,
+-610,-591,-570,-542,-509,-474,-439,-408,-376,-340,-299,-255,-214,-176,-139,-102,-62,-20,22,65,109,
+154,197,234,266,293,322,357,400,451,507,560,605,642,679,722,774,828,877,917,953,990,
+1029,1068,1105,1140,1174,1210,1247,1284,1319,1353,1386,1416,1444,1473,1502,1531,1559,1586,1611,1635,1658,
+1678,1696,1714,1735,1758,1781,1801,1820,1842,1869,1898,1923,1942,1959,1979,2005,2033,2053,2057,2051,2041,
+2033,2029,2024,2017,2011,2007,2007,2008,2007,2005,2001,1995,1985,1971,1959,1950,1945,1940,1932,1925,1918,
+1911,1903,1895,1889,1884,1879,1872,1864,1860,1859,1853,1838,1820,1813,1822,1840,1847,1834,1806,1779,1767,
+1767,1773,1779,1782,1779,1770,1756,1742,1729,1715,1693,1665,1639,1621,1612,1604,1594,1589,1598,1620,1642,
+1651,1649,1649,1658,1675,1678,1697,1705,1709,1716,1729,1745,1757,1766,1773,1778,1785,1797,1820,1851,1885,
+1915,1940,1966,1996,2026,2052,2073,2095,2122,2152,2183,2212,2242,2274,2301,2317,2322,2325,2332,2342,2347,
+2348,2352,2367,2393,2417,2433,2441,2451,2466,2483,2495,2501,2507,2519,2535,2551,2562,2571,2582,2594,2604,
+2610,2613,2616,2618,2617,2614,2615,2625,2645,2666,2681,2689,2698,2716,2738,2755,2756,2747,2743,2762,2812,
+2887,2969,3039,3073,3063,3013,2952,2909,2905,2929,2954,2955,2931,2896,2867,2850,2838,2830,2832,2849,2879,
+2912,2939,2958,2973,2984,2986,2975,2954,2932,2917,2909,2905,2904,2905,2908,2910,2909,2905,2901,2901,2904,
+2909,2916,2931,2957,2986,3008,3014,3010,3007,3015,3033,3055,3071,3081,3087,3090,3082,3056,3013,2963,2917,
+2881,2850,2819,2791,2774,2774,2789,2810,2830,2845,2860,2877,2894,2914,2937,2965,2992,3013,3024,3028,3033,
+3042,3053,3066,3083,3110,3148,3191,3236,3283,3341,3411,3483,3542,3582,3608,3629,3645,3649,3638,3623,3613,
+3613,3614,3612,3613,3622,3639,3651,3654,3659,3683,3726,3765,3777,3763,3749,3755,3770,3769,3741,3709,3698,
+3706,3704,3666,3608,3566,3557,3554,3521,3447,3363,3307,3285,3270,3235,3180,3121,3072,3027,2977,2927,2886,
+2853,2815,2758,2690,2628,2585,2555,2528,2502,2483,2476,2475,2467,2452,2434,2422,2415,2408,2401,2399,2405,
+2414,2417,2412,2406,2404,2408,2412,2413,2410,2404,2394,2377,2354,2329,2306,2282,2256,2227,2199,2177,2157,
+2134,2106,2075,2046,2019,1989,1957,1924,1893,1866,1838,1809,1777,1744,1713,1682,1652,1622,1592,1564,1538,
+1514,1491,1465,1435,1402,1372,1348,1329,1311,1291,1270,1253,1237,1220,1199,1180,1168,1161,1154,1140,1121,
+1104,1090,1078,1059,1033,1002,966,925,878,825,766,701,626,545,468,406,364,334,304,265,217,
+168,123,85,50,14,-23,-63,-104,-145,-188,-234,-282,-329,-369,-401,-432,-470,-518,-572,-625,-674,
+-721,-769,-816,-857,-896,-937,-984,-1035,-1083,-1127,-1170,-1216,-1264,-1311,-1354,-1396,-1442,-1492,-1540,-1583,-1623,
+-1664,-1711,-1760,-1808,-1855,-1902,-1951,-2001,-2051,-2100,-2147,-2193,-2238,-2282,-2326,-2373,-2420,-2466,-2507,-2544,-2579,
+-2615,-2652,-2691,-2728,-2764,-2796,-2825,-2855,-2891,-2934,-2980,-3022,-3057,-3087,-3118,-3151,-3186,-3221,-3254,-3286,-3317,
+-3347,-3375,-3402,-3427,-3451,-3472,-3491,-3512,-3538,-3566,-3588,-3599,-3603,-3611,-3631,-3662,-3696,-3726,-3756,-3787,-3812,
+-3819,-3801,-3771,-3755,-3772,-3819,-3872,-3908,-3917,-3912,-3909,-3915,-3932,-3949,-3960,-3960,-3949,-3936,-3929,-3930,-3933,
+-3929,-3912,-3890,-3872,-3865,-3862,-3859,-3857,-3861,-3877,-3897,-3911,-3910,-3899,-3885,-3876,-3871,-3870,-3870,-3874,-3879,
+-3880,-3872,-3853,-3827,-3799,-3773,-3748,-3725,-3705,-3689,-3674,-3658,-3637,-3612,-3584,-3558,-3534,-3512,-3491,-3470,-3450,
+-3431,-3409,-3380,-3345,-3308,-3277,-3256,-3242,-3228,-3207,-3176,-3137,-3097,-3061,-3032,-3008,-2983,-2955,-2926,-2899,-2876,
+-2852,-2824,-2791,-2759,-2732,-2709,-2687,-2659,-2628,-2599,-2573,-2545,-2509,-2461,-2402,-2336,-2269,-2207,-2158,-2122,-2090,
+-2042,-1961,-1846,-1708,-1565,-1424,-1285,-1145,-1007,-880,-774,-695,-640,-602,-572,-534,-482,-414,-343,-277,-219,
+-162,-99,-28,42,107,166,222,275,321,356,386,419,461,511,558,594,621,648,683,726,774,
+822,873,936,1021,1124,1227,1310,1366,1406,1446,1490,1526,1539,1530,1507,1472,1408,1287,1106,900,727,
+634,621,655,696,725,750,783,826,868,899,922,948,984,1026,1060,1078,1090,1118,1180,1265,1337,
+1359,1325,1263,1214,1204,1223,1246,1255,1251,1246,1250,1260,1272,1286,1305,1336,1374,1416,1455,1490,1525,
+1564,1610,1659,1704,1742,1770,1796,1827,1866,1913,1968,2029,2092,2151,2199,2233,2259,2284,2311,2341,2372,
+2405,2442,2478,2502,2512,2514,2521,2543,2578,2617,2654,2689,2725,2759,2782,2790,2787,2781,2780,2784,2795,
+2815,2846,2886,2930,2975,3025,3089,3166,3245,3313,3364,3401,3432,3453,3454,3430,3385,3330,3272,3204,3116,
+2997,2849,2682,2515,2376,2290,2269,2292,2310,2271,2162,2019,1907,1877,1932,2032,2129,2197,2242,2279,2311,
+2337,2349,2351,2348,2341,2321,2283,2231,2176,2125,2078,2032,1984,1936,1893,1854,1820,1788,1759,1727,1687,
+1641,1604,1589,1589,1581,1543,1485,1444,1451,1493,1519,1481,1384,1283,1230,1232,1251,1247,1213,1173,1151,
+1141,1125,1094,1058,1028,1002,965,910,851,810,795,792,777,743,700,663,639,623,606,586,564,
+544,527,515,504,489,465,429,389,357,338,328,315,291,254,213,175,145,121,99,76,52,
+25,0,-23,-47,-73,-98,-121,-138,-151,-169,-194,-224,-252,-271,-285,-301,-325,-356,-388,-416,-437,
+-455,-470,-484,-497,-510,-524,-540,-554,-567,-580,-595,-612,-629,-646,-661,-678,-695,-714,-732,-748,-761,
+-771,-780,-793,-810,-831,-851,-867,-880,-894,-911,-928,-941,-948,-955,-964,-975,-982,-984,-982,-983,-986,
+-989,-991,-994,-1001,-1013,-1025,-1032,-1035,-1038,-1043,-1049,-1053,-1052,-1050,-1053,-1062,-1074,-1089,-1104,-1120,-1135,
+-1149,-1158,-1165,-1171,-1177,-1183,-1188,-1192,-1192,-1189,-1183,-1176,-1173,-1173,-1175,-1177,-1177,-1176,-1175,-1173,-1170,
+-1169,-1169,-1172,-1176,-1180,-1183,-1183,-1181,-1177,-1172,-1166,-1158,-1148,-1139,-1136,-1143,-1156,-1165,-1166,-1162,-1160,
+-1165,-1172,-1174,-1170,-1166,-1167,-1168,-1163,-1154,-1151,-1164,-1190,-1214,-1222,-1217,-1212,-1215,-1226,-1234,-1235,-1235,
+-1238,-1241,-1236,-1223,-1210,-1204,-1210,-1219,-1223,-1219,-1211,-1205,-1201,-1197,-1194,-1189,-1181,-1169,-1156,-1145,-1139,
+-1134,-1124,-1107,-1088,-1071,-1063,-1060,-1058,-1053,-1044,-1034,-1024,-1014,-1008,-1004,-1002,-999,-994,-988,-983,-982,
+-982,-982,-981,-980,-980,-980,-978,-971,-960,-947,-934,-924,-916,-907,-897,-885,-873,-861,-850,-839,-827,
+-818,-811,-806,-798,-785,-765,-744,-723,-706,-692,-679,-667,-655,-642,-631,-622,-614,-604,-593,-581,-572,
+-564,-552,-532,-505,-479,-461,-453,-449,-440,-426,-410,-395,-381,-364,-345,-327,-313,-303,-295,-289,-287,
+-289,-290,-286,-279,-271,-270,-273,-275,-272,-264,-257,-254,-254,-253,-247,-239,-230,-221,-211,-201,-191,
+-178,-162,-141,-115,-91,-73,-59,-43,-23,1,27,51,73,94,118,144,172,203,236,269,301,
+331,360,392,425,458,489,517,547,578,608,636,660,685,716,751,786,817,846,874,905,936,
+966,1000,1041,1084,1119,1138,1143,1145,1143,1123,1067,981,902,886,972,1162,1415,1674,1884,2015,2064,
+2060,2050,2078,2162,2284,2413,2520,2591,2626,2629,2604,2560,2507,2450,2386,2311,2227,2140,2057,1983,1920,
+1872,1843,1832,1827,1815,1793,1773,1764,1765,1763,1749,1726,1709,1707,1715,1718,1709,1687,1666,1653,1654,
+1663,1673,1679,1682,1684,1686,1691,1695,1695,1689,1676,1657,1633,1605,1578,1553,1533,1518,1509,1503,1493,
+1468,1416,1338,1243,1152,1079,1031,1002,982,959,925,872,796,704,605,516,443,386,334,277,210,
+136,61,-6,-66,-116,-161,-202,-242,-279,-308,-330,-349,-369,-394,-422,-445,-461,-472,-485,-500,-515,
+-525,-531,-539,-551,-566,-578,-586,-593,-606,-624,-641,-652,-659,-669,-683,-699,-710,-715,-717,-717,-716,
+-711,-703,-694,-689,-686,-682,-675,-666,-659,-653,-647,-637,-624,-608,-590,-567,-538,-506,-473,-442,-411,
+-377,-336,-292,-247,-205,-165,-127,-90,-54,-21,13,53,100,152,204,249,286,316,346,380,423,
+473,525,573,615,651,686,727,772,818,859,895,931,971,1016,1061,1103,1140,1177,1214,1251,1288,
+1322,1354,1386,1418,1451,1484,1517,1547,1574,1599,1621,1641,1658,1673,1690,1710,1736,1764,1790,1811,1832,
+1857,1888,1919,1943,1959,1973,1993,2020,2048,2068,2074,2070,2064,2058,2054,2047,2040,2036,2037,2039,2041,
+2040,2038,2033,2024,2009,1995,1989,1995,2006,2010,1998,1973,1948,1932,1927,1927,1925,1920,1913,1906,1902,
+1900,1897,1889,1875,1862,1857,1861,1868,1865,1850,1828,1808,1798,1798,1806,1815,1819,1810,1790,1768,1753,
+1743,1727,1697,1659,1632,1627,1637,1638,1621,1595,1583,1593,1614,1630,1636,1642,1656,1678,1673,1691,1698,
+1699,1705,1720,1739,1753,1760,1764,1770,1779,1794,1817,1848,1882,1915,1943,1970,2000,2030,2058,2081,2103,
+2127,2155,2184,2213,2241,2267,2288,2303,2311,2318,2327,2334,2337,2336,2337,2349,2373,2399,2419,2432,2442,
+2455,2469,2482,2491,2500,2512,2528,2547,2568,2589,2607,2619,2621,2618,2618,2623,2630,2631,2624,2618,2624,
+2646,2673,2692,2697,2698,2708,2726,2741,2740,2725,2714,2726,2769,2830,2889,2925,2929,2903,2863,2831,2833,
+2875,2937,2985,2989,2948,2886,2834,2808,2809,2827,2856,2894,2936,2973,2999,3014,3022,3027,3025,3014,2997,
+2979,2963,2952,2946,2944,2948,2956,2962,2961,2953,2942,2933,2928,2928,2937,2958,2988,3018,3035,3034,3022,
+3015,3022,3039,3060,3077,3089,3098,3101,3092,3065,3024,2980,2942,2912,2885,2857,2832,2820,2823,2839,2859,
+2877,2892,2909,2929,2952,2977,3005,3034,3062,3083,3094,3100,3107,3119,3134,3149,3166,3190,3224,3264,3306,
+3352,3408,3474,3542,3598,3636,3660,3676,3688,3692,3685,3676,3670,3672,3676,3678,3684,3699,3719,3735,3745,
+3760,3791,3834,3866,3869,3850,3834,3838,3852,3848,3820,3787,3770,3765,3744,3690,3624,3584,3583,3590,3561,
+3485,3395,3330,3302,3286,3252,3197,3136,3085,3043,3001,2958,2918,2878,2829,2764,2693,2633,2595,2573,2554,
+2533,2516,2508,2502,2492,2475,2457,2444,2436,2429,2422,2419,2423,2430,2432,2427,2421,2419,2421,2424,2424,
+2421,2415,2403,2384,2363,2343,2325,2306,2281,2253,2226,2206,2190,2171,2147,2120,2093,2067,2039,2007,1974,
+1942,1912,1882,1850,1816,1785,1755,1725,1693,1661,1629,1600,1575,1552,1529,1502,1473,1442,1415,1392,1372,
+1351,1330,1308,1289,1271,1253,1235,1223,1215,1209,1197,1178,1160,1150,1145,1139,1122,1095,1063,1029,989,
+938,874,800,719,637,560,497,453,424,398,362,315,264,220,184,151,115,75,33,-7,-48,
+-91,-136,-181,-224,-264,-300,-334,-371,-413,-460,-511,-563,-613,-663,-711,-755,-796,-836,-880,-928,-978,
+-1024,-1067,-1111,-1160,-1210,-1255,-1294,-1331,-1374,-1424,-1476,-1523,-1566,-1606,-1650,-1695,-1742,-1789,-1839,-1890,-1942,
+-1991,-2038,-2086,-2135,-2184,-2230,-2274,-2319,-2367,-2415,-2460,-2499,-2535,-2570,-2605,-2640,-2677,-2714,-2750,-2785,-2819,
+-2854,-2892,-2931,-2970,-3005,-3037,-3069,-3102,-3135,-3169,-3203,-3237,-3273,-3307,-3337,-3363,-3387,-3410,-3429,-3445,-3458,
+-3470,-3483,-3496,-3510,-3527,-3552,-3583,-3615,-3642,-3662,-3681,-3704,-3726,-3739,-3737,-3731,-3737,-3765,-3808,-3846,-3863,
+-3860,-3848,-3843,-3851,-3867,-3887,-3901,-3906,-3900,-3890,-3882,-3883,-3887,-3888,-3880,-3865,-3850,-3839,-3833,-3828,-3828,
+-3837,-3857,-3880,-3894,-3893,-3881,-3865,-3854,-3847,-3845,-3843,-3839,-3831,-3815,-3793,-3767,-3744,-3727,-3711,-3695,-3677,
+-3659,-3644,-3632,-3618,-3598,-3572,-3544,-3519,-3498,-3479,-3459,-3437,-3416,-3397,-3376,-3351,-3319,-3285,-3256,-3235,-3221,
+-3205,-3180,-3145,-3104,-3066,-3036,-3014,-2995,-2972,-2942,-2908,-2877,-2851,-2828,-2803,-2774,-2744,-2717,-2693,-2668,-2638,
+-2603,-2568,-2535,-2501,-2465,-2425,-2379,-2329,-2274,-2217,-2165,-2123,-2088,-2049,-1994,-1917,-1823,-1718,-1605,-1481,-1347,
+-1208,-1075,-956,-858,-781,-724,-679,-633,-576,-505,-429,-358,-295,-234,-165,-87,-6,71,142,207,264,
+311,348,378,411,452,500,549,590,619,643,668,703,751,810,878,958,1050,1148,1239,1303,1335,
+1344,1351,1368,1391,1407,1410,1399,1370,1305,1182,1002,802,640,558,555,593,631,655,674,706,753,
+800,834,855,877,911,955,994,1017,1029,1050,1097,1163,1221,1241,1216,1169,1134,1130,1152,1176,1187,
+1185,1181,1185,1195,1209,1222,1238,1262,1295,1333,1369,1400,1431,1468,1515,1568,1617,1655,1684,1716,1759,
+1813,1871,1925,1975,2025,2074,2117,2150,2176,2201,2233,2270,2312,2357,2405,2451,2486,2502,2505,2508,2521,
+2544,2570,2592,2612,2635,2664,2694,2719,2736,2744,2745,2743,2743,2754,2780,2819,2861,2901,2944,3001,3076,
+3158,3231,3285,3321,3346,3359,3356,3331,3290,3241,3185,3113,3008,2861,2676,2474,2286,2148,2085,2094,2142,
+2174,2148,2063,1964,1912,1940,2032,2140,2222,2268,2291,2310,2325,2330,2323,2312,2305,2298,2279,2237,2180,
+2120,2068,2021,1974,1927,1882,1842,1804,1764,1723,1688,1657,1624,1584,1546,1525,1521,1517,1488,1437,1396,
+1399,1443,1480,1462,1381,1279,1207,1181,1178,1167,1142,1121,1118,1122,1111,1076,1033,996,966,928,874,
+816,776,761,759,746,713,670,632,609,597,587,571,550,528,509,497,489,481,465,437,402,
+367,340,321,306,287,260,225,186,150,120,97,76,54,29,3,-20,-44,-71,-99,-125,-145,
+-160,-178,-204,-235,-264,-284,-296,-310,-330,-357,-386,-413,-439,-464,-488,-508,-524,-539,-555,-569,-582,
+-593,-604,-616,-629,-640,-650,-662,-678,-698,-720,-742,-760,-775,-785,-794,-806,-823,-844,-865,-883,-897,
+-911,-927,-944,-957,-964,-969,-977,-988,-998,-1002,-1003,-1004,-1006,-1008,-1009,-1012,-1018,-1030,-1041,-1048,-1052,
+-1055,-1062,-1070,-1075,-1075,-1072,-1072,-1077,-1087,-1098,-1111,-1124,-1137,-1149,-1160,-1168,-1174,-1179,-1185,-1191,-1199,
+-1203,-1202,-1194,-1184,-1176,-1172,-1172,-1174,-1175,-1175,-1176,-1177,-1178,-1179,-1180,-1182,-1186,-1190,-1193,-1194,-1191,
+-1184,-1176,-1169,-1163,-1157,-1150,-1145,-1146,-1155,-1167,-1179,-1185,-1186,-1180,-1170,-1162,-1162,-1175,-1196,-1212,-1212,
+-1200,-1193,-1202,-1223,-1241,-1242,-1230,-1217,-1215,-1223,-1233,-1242,-1251,-1259,-1262,-1254,-1238,-1222,-1216,-1221,-1230,
+-1233,-1231,-1225,-1218,-1211,-1204,-1197,-1192,-1186,-1176,-1164,-1152,-1145,-1141,-1134,-1120,-1101,-1084,-1074,-1070,-1067,
+-1060,-1050,-1037,-1024,-1013,-1005,-1000,-997,-995,-991,-986,-983,-982,-983,-983,-984,-985,-986,-986,-983,-976,
+-965,-953,-941,-930,-920,-910,-901,-893,-885,-877,-869,-860,-851,-843,-835,-825,-812,-795,-775,-753,-733,
+-717,-705,-696,-685,-671,-654,-639,-627,-618,-605,-587,-567,-551,-542,-533,-518,-494,-468,-450,-442,-438,
+-432,-420,-405,-393,-382,-370,-354,-338,-322,-308,-296,-288,-285,-287,-288,-285,-278,-271,-269,-270,-269,
+-263,-254,-248,-246,-245,-241,-233,-225,-220,-214,-206,-197,-188,-179,-165,-143,-116,-90,-71,-57,-43,
+-22,3,30,54,75,97,121,148,176,205,236,268,298,326,355,387,421,452,480,508,538,
+571,602,628,651,677,709,745,777,802,827,854,887,920,952,987,1027,1067,1096,1110,1113,1116,
+1115,1092,1032,947,883,896,1019,1241,1512,1770,1963,2064,2081,2055,2041,2084,2187,2320,2442,2529,2577,
+2592,2577,2534,2472,2406,2347,2292,2233,2163,2087,2011,1939,1874,1821,1788,1775,1772,1763,1743,1721,1710,
+1713,1717,1711,1697,1685,1684,1691,1692,1679,1656,1634,1622,1620,1625,1633,1642,1651,1659,1667,1674,1682,
+1687,1686,1676,1658,1635,1609,1583,1556,1530,1504,1481,1460,1438,1407,1361,1297,1221,1144,1076,1023,982,
+948,912,867,805,721,618,510,418,353,313,278,231,166,92,22,-36,-86,-133,-178,-220,-254,
+-282,-306,-328,-349,-370,-392,-413,-432,-448,-462,-477,-494,-510,-523,-531,-538,-548,-561,-572,-582,-591,
+-604,-621,-638,-651,-661,-673,-687,-701,-712,-717,-718,-716,-713,-708,-701,-695,-690,-687,-681,-674,-666,
+-657,-648,-636,-624,-611,-599,-583,-560,-531,-500,-473,-448,-419,-382,-337,-290,-244,-202,-163,-123,-85,
+-49,-17,14,51,95,145,196,245,288,327,367,410,458,507,554,595,629,662,696,734,776,
+817,855,892,932,975,1022,1067,1109,1146,1182,1217,1252,1285,1317,1347,1378,1413,1450,1486,1520,1550,
+1576,1599,1620,1639,1657,1674,1695,1721,1753,1786,1814,1838,1859,1883,1910,1937,1958,1974,1988,2009,2036,
+2063,2082,2091,2091,2089,2084,2078,2071,2065,2064,2067,2071,2073,2073,2072,2066,2054,2036,2024,2031,2058,
+2090,2102,2079,2031,1980,1950,1944,1952,1959,1957,1951,1946,1945,1943,1939,1931,1924,1923,1925,1925,1916,
+1898,1878,1862,1853,1849,1846,1844,1842,1836,1821,1800,1784,1780,1782,1771,1739,1698,1677,1690,1717,1725,
+1694,1640,1597,1586,1600,1618,1627,1635,1650,1673,1656,1675,1686,1692,1703,1721,1739,1749,1752,1755,1766,
+1781,1800,1822,1851,1886,1923,1955,1982,2007,2034,2062,2087,2110,2131,2153,2177,2200,2222,2243,2263,2281,
+2294,2305,2313,2317,2319,2318,2320,2330,2350,2375,2398,2416,2430,2444,2459,2473,2486,2498,2512,2530,2553,
+2580,2608,2629,2638,2633,2621,2612,2614,2622,2628,2629,2629,2638,2659,2684,2701,2707,2708,2715,2728,2738,
+2734,2719,2708,2716,2743,2777,2800,2804,2793,2779,2774,2790,2834,2900,2967,3005,2993,2938,2867,2813,2796,
+2811,2846,2890,2935,2978,3012,3034,3043,3046,3047,3048,3045,3038,3026,3012,2999,2992,2993,3001,3013,3019,
+3016,3004,2987,2971,2959,2954,2960,2980,3009,3036,3051,3051,3043,3038,3042,3054,3069,3087,3105,3121,3128,
+3118,3091,3052,3013,2979,2948,2919,2891,2870,2862,2869,2887,2907,2927,2945,2965,2988,3012,3037,3066,3099,
+3130,3154,3169,3178,3187,3201,3218,3235,3254,3276,3305,3341,3381,3427,3480,3540,3598,3646,3679,3700,3715,
+3727,3734,3735,3734,3735,3738,3741,3746,3758,3778,3803,3823,3839,3858,3889,3924,3943,3934,3910,3897,3904,
+3918,3913,3885,3855,3840,3829,3793,3719,3632,3576,3568,3579,3564,3503,3421,3356,3321,3298,3264,3212,3158,
+3113,3076,3037,2992,2944,2894,2839,2775,2711,2659,2626,2605,2586,2566,2548,2537,2527,2513,2493,2475,2462,
+2455,2449,2443,2439,2440,2443,2444,2440,2435,2431,2430,2431,2431,2429,2423,2411,2393,2375,2359,2347,2332,
+2309,2282,2257,2239,2225,2209,2188,2163,2137,2112,2086,2056,2025,1993,1961,1927,1891,1856,1825,1796,1767,
+1734,1700,1668,1639,1614,1591,1565,1538,1509,1481,1454,1430,1407,1384,1363,1343,1324,1307,1290,1276,1267,
+1261,1251,1235,1216,1205,1207,1213,1212,1195,1165,1131,1094,1049,988,911,824,738,660,595,546,513,
+487,457,414,362,314,278,250,221,183,138,94,51,9,-35,-82,-125,-162,-196,-231,-270,-312,
+-357,-403,-451,-502,-554,-605,-653,-696,-737,-780,-826,-875,-921,-963,-1004,-1050,-1103,-1155,-1201,-1238,-1271,
+-1309,-1357,-1411,-1463,-1509,-1551,-1592,-1634,-1679,-1728,-1780,-1833,-1884,-1930,-1975,-2023,-2073,-2123,-2170,-2214,-2258,
+-2305,-2353,-2399,-2441,-2480,-2515,-2549,-2583,-2617,-2655,-2694,-2735,-2773,-2810,-2845,-2881,-2917,-2953,-2987,-3022,-3057,
+-3090,-3122,-3152,-3184,-3218,-3252,-3281,-3306,-3328,-3352,-3377,-3400,-3418,-3429,-3437,-3447,-3463,-3486,-3514,-3543,-3567,
+-3584,-3595,-3605,-3617,-3631,-3643,-3655,-3672,-3700,-3735,-3767,-3782,-3780,-3769,-3762,-3767,-3780,-3797,-3812,-3824,-3833,
+-3836,-3834,-3831,-3830,-3833,-3837,-3837,-3832,-3823,-3810,-3797,-3786,-3782,-3789,-3806,-3824,-3834,-3831,-3817,-3799,-3785,
+-3778,-3776,-3776,-3772,-3759,-3734,-3704,-3676,-3659,-3652,-3649,-3641,-3626,-3609,-3594,-3582,-3570,-3554,-3531,-3506,-3483,
+-3465,-3449,-3431,-3410,-3386,-3363,-3341,-3319,-3295,-3270,-3246,-3226,-3209,-3190,-3163,-3127,-3088,-3051,-3024,-3005,-2987,
+-2965,-2935,-2901,-2870,-2842,-2818,-2792,-2764,-2735,-2709,-2684,-2657,-2625,-2591,-2554,-2518,-2481,-2443,-2404,-2365,-2324,
+-2278,-2227,-2175,-2128,-2085,-2039,-1984,-1919,-1848,-1774,-1697,-1609,-1508,-1399,-1288,-1180,-1078,-984,-900,-825,-754,
+-678,-596,-512,-436,-369,-305,-234,-153,-64,26,111,188,251,300,336,364,396,437,487,538,582,
+612,630,647,676,727,800,886,975,1060,1134,1191,1221,1224,1213,1207,1216,1236,1256,1265,1262,1242,
+1189,1081,917,728,570,487,481,519,562,590,611,643,688,733,765,784,803,835,878,922,951,
+966,980,1007,1046,1083,1098,1088,1066,1054,1063,1088,1111,1120,1116,1109,1110,1123,1142,1163,1182,1202,
+1225,1252,1280,1307,1338,1378,1428,1480,1525,1555,1580,1616,1675,1752,1830,1894,1942,1980,2015,2046,2071,
+2090,2111,2142,2184,2234,2290,2347,2402,2446,2477,2495,2510,2527,2546,2558,2561,2559,2563,2577,2603,2633,
+2662,2683,2695,2698,2697,2704,2725,2756,2790,2822,2859,2912,2985,3068,3141,3194,3226,3244,3254,3252,3233,
+3197,3149,3089,3012,2904,2754,2565,2357,2166,2029,1971,1986,2036,2069,2053,1997,1945,1944,2009,2115,2215,
+2279,2307,2318,2324,2326,2316,2297,2278,2266,2257,2235,2190,2130,2069,2014,1965,1915,1867,1825,1790,1753,
+1709,1661,1620,1591,1565,1531,1492,1462,1451,1444,1417,1367,1321,1316,1360,1419,1439,1394,1305,1214,1147,
+1104,1072,1053,1054,1073,1090,1080,1041,991,951,923,892,845,791,750,732,727,717,687,646,607,
+583,571,563,551,533,513,495,483,477,470,459,439,412,381,350,323,301,280,257,228,193,
+156,124,99,78,55,29,3,-21,-45,-73,-103,-132,-154,-170,-187,-212,-243,-272,-293,-308,-321,
+-339,-360,-383,-407,-434,-464,-495,-522,-544,-562,-580,-597,-610,-621,-630,-640,-649,-658,-665,-674,-687,
+-704,-724,-745,-766,-786,-803,-816,-830,-846,-867,-886,-902,-914,-926,-942,-960,-974,-981,-986,-994,-1006,
+-1018,-1025,-1027,-1027,-1027,-1029,-1030,-1033,-1039,-1048,-1057,-1062,-1065,-1069,-1076,-1085,-1091,-1093,-1092,-1091,-1095,
+-1102,-1110,-1120,-1129,-1140,-1150,-1160,-1168,-1174,-1177,-1180,-1185,-1192,-1200,-1202,-1199,-1191,-1183,-1178,-1176,-1175,
+-1174,-1175,-1178,-1183,-1188,-1190,-1191,-1191,-1192,-1196,-1201,-1203,-1201,-1194,-1185,-1178,-1175,-1173,-1171,-1168,-1168,
+-1172,-1181,-1189,-1194,-1191,-1180,-1165,-1155,-1160,-1181,-1211,-1234,-1239,-1231,-1223,-1228,-1244,-1257,-1257,-1244,-1230,
+-1224,-1227,-1236,-1249,-1263,-1274,-1276,-1266,-1250,-1237,-1233,-1237,-1242,-1242,-1239,-1236,-1232,-1225,-1215,-1204,-1197,
+-1191,-1182,-1168,-1153,-1142,-1136,-1132,-1124,-1111,-1098,-1089,-1083,-1077,-1067,-1055,-1041,-1027,-1014,-1003,-996,-993,
+-990,-988,-986,-983,-982,-982,-983,-986,-988,-990,-989,-985,-978,-969,-960,-952,-943,-932,-921,-911,-902,
+-894,-885,-877,-869,-861,-852,-842,-830,-815,-800,-785,-770,-756,-744,-735,-727,-719,-705,-688,-670,-655,
+-642,-625,-601,-574,-552,-539,-531,-518,-497,-472,-452,-441,-434,-426,-414,-401,-390,-382,-373,-361,-346,
+-330,-314,-299,-288,-283,-283,-283,-279,-271,-264,-262,-262,-259,-252,-244,-239,-236,-231,-222,-211,-205,
+-202,-199,-192,-183,-175,-169,-162,-146,-123,-100,-81,-66,-50,-28,-2,21,43,65,90,119,149,
+177,204,234,263,292,318,347,379,412,443,470,497,528,561,590,614,635,660,693,727,756,
+778,802,834,871,907,939,972,1010,1047,1073,1086,1091,1097,1096,1069,1002,917,866,906,1062,1312,
+1599,1855,2031,2103,2090,2044,2031,2088,2210,2350,2463,2530,2556,2554,2528,2478,2412,2346,2289,2238,2179,
+2106,2025,1948,1883,1828,1782,1751,1736,1727,1713,1690,1667,1657,1663,1672,1672,1663,1656,1659,1668,1670,
+1658,1638,1619,1605,1596,1592,1593,1600,1611,1620,1629,1637,1649,1660,1664,1658,1644,1629,1614,1598,1575,
+1545,1509,1470,1430,1387,1341,1292,1242,1190,1138,1083,1025,963,900,835,770,699,613,512,408,320,
+265,237,216,180,123,55,-6,-57,-103,-149,-195,-234,-261,-282,-303,-328,-352,-372,-388,-403,-420,
+-437,-454,-471,-487,-504,-518,-530,-539,-549,-562,-576,-589,-600,-611,-624,-638,-652,-664,-675,-688,-700,
+-709,-714,-716,-714,-709,-703,-696,-691,-686,-680,-675,-670,-665,-657,-643,-625,-608,-595,-585,-571,-548,
+-517,-489,-467,-450,-427,-393,-350,-303,-257,-213,-170,-127,-86,-48,-13,21,58,98,141,187,234,
+280,326,374,425,479,531,575,611,640,669,703,742,785,829,871,914,958,1002,1046,1087,1125,
+1160,1194,1226,1256,1285,1313,1343,1375,1411,1449,1486,1518,1545,1569,1592,1616,1641,1667,1693,1720,1752,
+1786,1819,1848,1871,1891,1911,1932,1953,1972,1989,2008,2031,2058,2084,2103,2114,2119,2119,2116,2109,2101,
+2096,2096,2098,2101,2102,2103,2104,2100,2086,2067,2057,2072,2111,2154,2169,2139,2077,2015,1979,1976,1990,
+2002,2003,1997,1992,1990,1987,1979,1970,1968,1976,1986,1986,1970,1945,1923,1914,1915,1916,1907,1891,1871,
+1850,1826,1805,1793,1796,1803,1794,1763,1726,1716,1742,1780,1788,1745,1671,1609,1586,1595,1612,1620,1623,
+1635,1656,1644,1666,1681,1692,1706,1723,1736,1742,1744,1752,1770,1793,1815,1835,1861,1896,1935,1968,1991,
+2011,2032,2059,2087,2111,2131,2149,2166,2182,2198,2216,2237,2260,2280,2292,2297,2297,2297,2300,2307,2319,
+2335,2354,2376,2397,2417,2435,2453,2470,2486,2502,2519,2538,2561,2586,2610,2629,2639,2640,2634,2626,2619,
+2616,2619,2626,2638,2655,2674,2691,2704,2713,2722,2733,2742,2743,2733,2718,2708,2710,2723,2735,2741,2742,
+2747,2764,2795,2838,2888,2938,2975,2983,2956,2903,2848,2814,2813,2837,2875,2918,2960,3000,3033,3055,3064,
+3068,3070,3075,3078,3075,3067,3055,3045,3040,3043,3050,3058,3061,3057,3048,3037,3025,3013,3005,3005,3015,
+3033,3052,3063,3067,3066,3064,3066,3072,3086,3108,3137,3161,3170,3157,3126,3088,3052,3019,2986,2954,2925,
+2908,2904,2914,2932,2955,2979,3003,3026,3048,3069,3093,3122,3157,3192,3222,3245,3260,3273,3289,3307,3327,
+3347,3369,3394,3426,3464,3508,3558,3610,3658,3697,3727,3748,3763,3774,3781,3786,3790,3795,3799,3806,3819,
+3842,3873,3902,3921,3932,3946,3970,3994,4002,3988,3966,3958,3968,3978,3965,3935,3908,3900,3894,3855,3768,
+3661,3583,3559,3567,3560,3515,3444,3379,3337,3308,3273,3229,3183,3145,3110,3069,3020,2966,2911,2857,2801,
+2748,2703,2669,2643,2620,2598,2580,2566,2552,2533,2512,2494,2483,2477,2471,2463,2456,2454,2455,2455,2451,
+2446,2441,2439,2439,2439,2438,2434,2423,2407,2392,2380,2371,2358,2339,2314,2293,2277,2263,2247,2225,2200,
+2175,2152,2126,2098,2069,2039,2008,1974,1936,1901,1869,1841,1811,1777,1742,1709,1680,1654,1628,1601,1572,
+1544,1517,1490,1463,1436,1413,1392,1375,1359,1343,1329,1319,1311,1303,1289,1270,1257,1257,1271,1286,1285,
+1265,1231,1193,1151,1097,1024,935,845,765,700,649,609,577,546,509,461,411,368,338,314,285,
+245,198,153,110,66,20,-25,-65,-97,-128,-164,-208,-255,-302,-347,-394,-445,-497,-547,-592,-634,
+-677,-724,-773,-820,-863,-902,-942,-987,-1039,-1092,-1138,-1176,-1210,-1249,-1296,-1349,-1403,-1453,-1496,-1535,-1574,
+-1617,-1666,-1720,-1774,-1824,-1870,-1914,-1961,-2010,-2059,-2106,-2149,-2192,-2237,-2282,-2327,-2370,-2411,-2450,-2488,-2524,
+-2559,-2596,-2635,-2676,-2716,-2753,-2790,-2827,-2864,-2900,-2935,-2972,-3009,-3044,-3077,-3107,-3136,-3167,-3198,-3225,-3247,
+-3268,-3293,-3323,-3355,-3381,-3398,-3408,-3418,-3433,-3453,-3474,-3491,-3505,-3516,-3525,-3533,-3539,-3545,-3553,-3568,-3594,
+-3628,-3660,-3678,-3679,-3671,-3667,-3676,-3695,-3714,-3725,-3729,-3733,-3741,-3753,-3761,-3765,-3764,-3765,-3769,-3776,-3781,
+-3778,-3766,-3748,-3731,-3723,-3727,-3740,-3755,-3762,-3759,-3745,-3725,-3707,-3697,-3696,-3701,-3702,-3690,-3665,-3633,-3608,
+-3595,-3594,-3596,-3590,-3577,-3559,-3543,-3532,-3523,-3511,-3494,-3473,-3451,-3434,-3421,-3409,-3392,-3369,-3340,-3313,-3290,
+-3271,-3254,-3235,-3214,-3192,-3168,-3141,-3110,-3075,-3041,-3012,-2989,-2969,-2947,-2920,-2891,-2862,-2835,-2808,-2780,-2750,
+-2721,-2695,-2669,-2642,-2611,-2579,-2547,-2513,-2477,-2437,-2397,-2358,-2317,-2271,-2221,-2171,-2125,-2082,-2033,-1975,-1910,
+-1846,-1789,-1735,-1676,-1609,-1536,-1460,-1380,-1292,-1194,-1091,-987,-888,-792,-697,-604,-518,-440,-369,-296,-217,
+-130,-38,55,141,214,265,299,324,352,392,442,493,535,561,576,592,625,685,771,866,951,
+1014,1050,1063,1058,1042,1027,1025,1039,1063,1082,1093,1095,1086,1049,961,817,644,494,411,403,443,
+492,529,558,590,631,670,698,715,733,762,802,844,875,894,907,925,950,974,989,991,989,
+993,1008,1030,1047,1052,1045,1034,1032,1045,1071,1102,1127,1145,1159,1173,1193,1221,1258,1302,1352,1397,
+1430,1448,1467,1506,1577,1672,1770,1849,1903,1938,1964,1984,1997,2005,2018,2043,2085,2142,2207,2275,2338,
+2393,2438,2473,2504,2532,2552,2558,2552,2538,2526,2523,2530,2545,2567,2591,2612,2628,2639,2651,2669,2692,
+2716,2742,2778,2831,2903,2982,3050,3098,3127,3146,3159,3161,3145,3106,3048,2978,2897,2799,2672,2512,2330,
+2156,2027,1967,1969,2002,2023,2013,1983,1969,2001,2078,2174,2254,2299,2317,2322,2324,2320,2304,2277,2252,
+2234,2218,2191,2147,2089,2028,1968,1910,1852,1800,1758,1726,1691,1646,1596,1554,1527,1505,1477,1440,1409,
+1394,1385,1359,1305,1248,1227,1264,1334,1388,1385,1325,1237,1151,1082,1032,1004,1002,1019,1033,1021,981,
+932,894,871,850,817,772,731,708,699,689,666,630,593,565,547,535,521,505,488,476,470,
+467,461,450,433,413,390,363,334,305,278,252,225,194,160,128,101,77,51,24,-2,-25,
+-48,-75,-106,-136,-159,-177,-196,-221,-251,-277,-297,-312,-328,-348,-369,-388,-409,-434,-466,-500,-531,
+-556,-578,-600,-620,-637,-649,-658,-666,-673,-680,-686,-693,-703,-716,-730,-748,-770,-795,-820,-841,-859,
+-877,-896,-913,-925,-933,-941,-955,-972,-988,-998,-1005,-1014,-1027,-1039,-1047,-1048,-1047,-1047,-1049,-1051,-1053,
+-1057,-1062,-1069,-1075,-1079,-1083,-1089,-1095,-1100,-1103,-1104,-1105,-1109,-1115,-1122,-1130,-1139,-1147,-1155,-1162,-1167,
+-1171,-1172,-1172,-1175,-1181,-1190,-1196,-1196,-1193,-1188,-1185,-1183,-1181,-1177,-1175,-1176,-1182,-1189,-1193,-1193,-1192,
+-1193,-1197,-1203,-1208,-1208,-1204,-1198,-1193,-1192,-1192,-1193,-1195,-1198,-1201,-1204,-1204,-1200,-1192,-1181,-1169,-1163,
+-1167,-1182,-1202,-1218,-1222,-1219,-1217,-1224,-1240,-1254,-1259,-1255,-1247,-1240,-1238,-1243,-1254,-1268,-1281,-1283,-1274,
+-1261,-1251,-1249,-1250,-1248,-1242,-1237,-1236,-1235,-1230,-1220,-1208,-1201,-1197,-1191,-1178,-1161,-1146,-1138,-1133,-1126,
+-1117,-1106,-1097,-1088,-1079,-1067,-1054,-1042,-1029,-1016,-1004,-995,-990,-989,-989,-988,-986,-983,-981,-982,-985,
+-988,-990,-988,-983,-977,-971,-966,-961,-955,-947,-936,-925,-913,-902,-892,-882,-874,-865,-856,-845,-832,
+-818,-806,-796,-786,-776,-765,-756,-749,-742,-731,-717,-700,-684,-668,-649,-622,-592,-567,-550,-540,-528,
+-510,-487,-465,-449,-436,-423,-408,-393,-380,-370,-361,-349,-336,-321,-306,-292,-282,-277,-275,-271,-265,
+-256,-251,-249,-249,-245,-238,-232,-228,-224,-215,-203,-191,-185,-185,-183,-176,-166,-158,-154,-151,-141,
+-124,-104,-87,-70,-52,-29,-6,14,34,57,87,119,149,176,202,230,260,287,313,338,368,
+400,432,460,489,521,554,582,604,625,649,680,711,736,757,784,821,862,898,929,960,996,
+1032,1058,1072,1081,1091,1089,1056,982,897,858,921,1102,1371,1663,1908,2058,2100,2063,2011,2007,2083,
+2219,2361,2462,2511,2523,2516,2492,2447,2385,2322,2267,2212,2143,2056,1966,1891,1839,1802,1772,1745,1723,
+1702,1677,1647,1623,1616,1624,1634,1633,1624,1618,1625,1639,1647,1643,1628,1610,1593,1578,1566,1560,1561,
+1566,1570,1573,1581,1596,1613,1621,1618,1610,1604,1603,1598,1579,1544,1501,1454,1404,1348,1287,1230,1185,
+1153,1124,1083,1021,935,837,740,655,578,500,414,326,252,206,185,168,137,86,25,-30,-76,
+-120,-165,-209,-243,-265,-283,-304,-331,-356,-372,-382,-393,-409,-430,-449,-464,-478,-493,-508,-521,-533,
+-545,-561,-579,-595,-608,-618,-630,-642,-655,-667,-677,-686,-695,-703,-710,-713,-711,-705,-698,-690,-684,
+-678,-672,-667,-664,-662,-655,-640,-619,-600,-587,-577,-562,-537,-505,-476,-458,-445,-430,-404,-368,-326,
+-280,-232,-182,-133,-89,-50,-13,23,61,100,141,185,232,280,327,375,426,483,539,587,623,
+651,679,714,756,802,848,894,939,982,1024,1063,1099,1136,1172,1206,1237,1266,1293,1322,1353,1386,
+1421,1457,1492,1522,1547,1570,1596,1626,1659,1694,1727,1759,1791,1823,1851,1877,1898,1916,1934,1951,1969,
+1987,2007,2031,2057,2084,2108,2126,2140,2148,2151,2148,2142,2134,2130,2129,2130,2130,2130,2131,2133,2131,
+2118,2099,2088,2100,2134,2169,2179,2152,2098,2048,2023,2026,2041,2051,2049,2041,2036,2034,2030,2020,2008,
+2001,2005,2014,2016,2004,1983,1966,1961,1964,1962,1949,1926,1900,1873,1845,1818,1799,1792,1788,1771,1737,
+1704,1697,1724,1760,1764,1720,1650,1596,1581,1597,1615,1620,1619,1626,1644,1649,1669,1683,1692,1704,1718,
+1730,1737,1745,1761,1787,1815,1836,1853,1874,1906,1942,1972,1991,2006,2025,2051,2078,2102,2120,2136,2151,
+2165,2177,2193,2215,2242,2267,2281,2283,2279,2280,2289,2302,2316,2330,2346,2364,2386,2408,2431,2454,2476,
+2496,2512,2528,2543,2559,2574,2586,2600,2620,2646,2670,2678,2668,2646,2629,2630,2646,2668,2685,2694,2702,
+2715,2732,2746,2749,2739,2722,2706,2698,2700,2709,2721,2737,2761,2796,2837,2878,2910,2932,2944,2944,2931,
+2904,2871,2845,2836,2847,2872,2903,2938,2976,3015,3051,3077,3092,3100,3105,3109,3110,3107,3101,3094,3090,
+3089,3088,3087,3083,3080,3081,3084,3088,3088,3082,3072,3063,3062,3066,3074,3081,3087,3091,3092,3092,3095,
+3110,3141,3178,3205,3209,3188,3153,3117,3085,3054,3021,2988,2964,2953,2954,2963,2978,3000,3026,3054,3079,
+3100,3120,3144,3175,3211,3249,3284,3314,3338,3359,3378,3397,3419,3441,3464,3488,3517,3553,3595,3640,3684,
+3722,3756,3784,3806,3821,3828,3831,3836,3842,3849,3857,3871,3899,3941,3986,4016,4025,4020,4019,4032,4049,
+4054,4042,4027,4024,4031,4028,4001,3961,3935,3935,3938,3905,3819,3707,3617,3579,3577,3570,3531,3466,3401,
+3353,3319,3286,3248,3207,3170,3132,3090,3040,2987,2935,2884,2833,2785,2741,2705,2675,2651,2631,2615,2599,
+2581,2558,2536,2520,2511,2505,2496,2484,2474,2470,2469,2468,2464,2459,2454,2451,2450,2451,2451,2447,2437,
+2424,2411,2402,2395,2384,2368,2348,2331,2316,2302,2282,2258,2234,2211,2189,2165,2137,2109,2081,2052,2020,
+1985,1951,1919,1889,1856,1820,1783,1750,1721,1694,1666,1638,1609,1581,1553,1524,1494,1467,1444,1426,1410,
+1394,1379,1368,1361,1355,1345,1326,1307,1299,1310,1333,1350,1345,1318,1280,1240,1194,1133,1050,956,869,
+802,753,713,675,636,596,554,509,465,428,400,375,342,300,253,207,164,121,76,33,-3,
+-33,-64,-103,-149,-198,-245,-291,-338,-389,-439,-485,-527,-569,-615,-664,-712,-757,-798,-838,-879,-925,
+-973,-1021,-1065,-1105,-1144,-1186,-1234,-1287,-1342,-1392,-1436,-1475,-1512,-1553,-1601,-1655,-1710,-1763,-1811,-1857,-1903,
+-1950,-1998,-2043,-2087,-2130,-2174,-2217,-2259,-2301,-2344,-2388,-2431,-2471,-2508,-2544,-2581,-2620,-2657,-2695,-2733,-2772,
+-2810,-2845,-2879,-2914,-2952,-2990,-3026,-3059,-3089,-3119,-3150,-3178,-3201,-3223,-3248,-3280,-3313,-3341,-3360,-3372,-3384,
+-3398,-3414,-3426,-3434,-3441,-3449,-3460,-3470,-3477,-3480,-3484,-3496,-3518,-3544,-3564,-3574,-3574,-3575,-3587,-3611,-3638,
+-3657,-3661,-3656,-3653,-3659,-3672,-3686,-3694,-3695,-3694,-3699,-3709,-3718,-3719,-3708,-3691,-3675,-3669,-3675,-3690,-3705,
+-3715,-3714,-3701,-3680,-3658,-3643,-3641,-3648,-3652,-3643,-3620,-3591,-3570,-3561,-3561,-3561,-3553,-3537,-3518,-3502,-3490,
+-3482,-3473,-3460,-3441,-3419,-3401,-3390,-3384,-3376,-3357,-3327,-3293,-3263,-3243,-3228,-3212,-3190,-3164,-3138,-3113,-3088,
+-3060,-3028,-2996,-2969,-2946,-2925,-2902,-2877,-2850,-2822,-2793,-2762,-2732,-2705,-2679,-2653,-2625,-2595,-2566,-2537,-2507,
+-2472,-2433,-2391,-2349,-2304,-2255,-2202,-2154,-2114,-2079,-2040,-1990,-1932,-1874,-1822,-1774,-1724,-1671,-1617,-1568,-1516,
+-1450,-1362,-1255,-1141,-1032,-929,-831,-732,-632,-535,-445,-363,-286,-210,-127,-37,52,130,187,223,249,
+278,318,363,405,436,456,472,497,543,614,703,792,859,891,890,868,840,821,817,830,853,
+877,895,907,917,918,891,814,683,527,396,328,331,376,430,471,502,535,572,607,632,650,
+670,699,735,770,797,816,833,852,876,898,916,926,932,939,951,966,979,985,979,969,963,
+973,1000,1035,1066,1085,1095,1106,1124,1155,1194,1238,1279,1313,1334,1348,1368,1411,1486,1585,1688,1774,
+1835,1876,1903,1920,1928,1930,1936,1954,1992,2049,2120,2197,2270,2336,2391,2437,2477,2510,2534,2544,2542,
+2531,2516,2500,2484,2475,2476,2489,2512,2537,2560,2581,2600,2620,2642,2671,2711,2767,2836,2907,2968,3013,
+3046,3070,3086,3088,3066,3016,2944,2862,2778,2692,2593,2472,2333,2196,2090,2034,2022,2030,2032,2020,2010,
+2023,2070,2143,2216,2268,2296,2308,2314,2317,2310,2289,2256,2221,2192,2167,2140,2102,2053,1994,1930,1860,
+1791,1731,1687,1653,1619,1576,1529,1489,1462,1442,1417,1386,1360,1349,1343,1319,1265,1200,1161,1176,1231,
+1289,1311,1291,1246,1195,1145,1094,1043,1002,977,961,942,910,872,840,819,803,780,747,714,689,
+674,663,643,613,578,547,523,504,486,468,453,447,450,454,451,438,421,404,388,370,344,
+312,279,249,220,191,160,130,100,72,44,17,-7,-28,-49,-75,-105,-134,-158,-179,-202,-230,
+-259,-282,-297,-311,-329,-353,-377,-399,-419,-444,-474,-508,-538,-565,-590,-615,-640,-661,-676,-686,-694,
+-701,-707,-712,-718,-725,-734,-745,-758,-778,-804,-833,-859,-882,-903,-922,-938,-947,-952,-957,-968,-983,
+-999,-1011,-1022,-1033,-1047,-1058,-1064,-1064,-1062,-1063,-1067,-1070,-1071,-1071,-1073,-1078,-1085,-1092,-1098,-1103,-1107,
+-1109,-1109,-1111,-1114,-1119,-1126,-1134,-1143,-1153,-1161,-1166,-1170,-1173,-1176,-1177,-1177,-1178,-1181,-1186,-1190,-1191,
+-1189,-1187,-1188,-1189,-1186,-1180,-1174,-1171,-1174,-1182,-1188,-1191,-1192,-1194,-1199,-1206,-1212,-1215,-1215,-1214,-1212,
+-1211,-1209,-1210,-1213,-1219,-1224,-1224,-1218,-1207,-1197,-1191,-1187,-1186,-1185,-1187,-1191,-1195,-1197,-1198,-1203,-1214,
+-1229,-1244,-1255,-1260,-1260,-1257,-1252,-1252,-1258,-1270,-1282,-1286,-1281,-1271,-1263,-1260,-1257,-1250,-1241,-1236,-1235,
+-1235,-1230,-1219,-1208,-1203,-1201,-1197,-1187,-1173,-1160,-1150,-1142,-1132,-1119,-1106,-1096,-1086,-1076,-1064,-1053,-1043,
+-1032,-1020,-1007,-996,-992,-992,-994,-993,-990,-985,-982,-982,-984,-987,-988,-985,-981,-976,-971,-967,-963,
+-958,-952,-944,-935,-924,-912,-901,-890,-881,-872,-863,-853,-841,-828,-816,-806,-797,-786,-774,-762,-753,
+-745,-736,-726,-713,-699,-683,-663,-638,-609,-582,-562,-549,-537,-521,-500,-479,-459,-441,-424,-406,-389,
+-374,-360,-348,-334,-320,-306,-293,-283,-275,-269,-265,-258,-249,-241,-238,-238,-238,-234,-227,-220,-217,
+-214,-206,-194,-182,-175,-173,-171,-163,-152,-143,-138,-134,-124,-109,-93,-78,-63,-44,-22,-1,17,
+37,62,92,124,152,176,200,228,258,286,309,332,359,390,422,453,483,516,548,577,600,
+622,648,678,706,728,750,781,821,863,898,925,954,990,1026,1053,1069,1081,1092,1088,1049,971,
+887,860,940,1139,1413,1696,1918,2038,2056,2010,1967,1984,2080,2222,2355,2440,2476,2485,2482,2464,2422,
+2361,2296,2237,2179,2105,2016,1930,1867,1830,1809,1786,1758,1727,1694,1658,1621,1593,1584,1590,1597,1592,
+1578,1569,1576,1595,1613,1618,1610,1595,1578,1559,1543,1531,1524,1518,1509,1503,1507,1525,1545,1557,1556,
+1553,1558,1570,1575,1559,1523,1479,1435,1387,1327,1256,1190,1144,1121,1104,1070,1001,897,774,656,557,
+478,410,343,276,220,184,163,143,108,56,0,-51,-94,-134,-177,-216,-246,-267,-286,-309,-335,
+-357,-369,-375,-385,-404,-425,-445,-459,-471,-484,-499,-513,-525,-538,-555,-574,-593,-608,-621,-634,-648,
+-661,-672,-680,-686,-692,-700,-707,-712,-710,-703,-694,-685,-679,-674,-668,-663,-660,-659,-653,-641,-623,
+-605,-592,-580,-562,-535,-502,-473,-452,-438,-423,-403,-375,-341,-298,-246,-190,-136,-90,-51,-16,20,
+59,98,140,186,236,285,330,374,423,480,541,595,636,667,698,735,779,824,867,908,948,
+987,1025,1060,1097,1135,1174,1212,1246,1279,1310,1343,1376,1408,1441,1474,1506,1535,1562,1588,1617,1652,
+1689,1727,1762,1793,1821,1848,1872,1895,1916,1935,1953,1971,1988,2006,2028,2053,2080,2106,2129,2147,2162,
+2172,2177,2176,2170,2164,2161,2161,2162,2161,2160,2160,2162,2160,2151,2137,2125,2127,2141,2157,2159,2140,
+2109,2082,2072,2077,2087,2090,2085,2076,2072,2071,2070,2062,2047,2032,2022,2020,2020,2015,2005,1995,1987,
+1980,1970,1955,1938,1921,1902,1876,1843,1810,1783,1761,1733,1698,1664,1651,1663,1682,1680,1648,1604,1578,
+1584,1609,1627,1630,1627,1632,1649,1659,1674,1682,1686,1694,1709,1726,1740,1756,1778,1808,1835,1855,1868,
+1885,1912,1942,1967,1983,1998,2017,2041,2065,2083,2098,2114,2132,2150,2163,2177,2197,2224,2250,2265,2268,
+2266,2270,2283,2301,2317,2332,2347,2366,2387,2411,2436,2464,2491,2514,2528,2536,2544,2552,2558,2561,2571,
+2601,2652,2709,2742,2735,2698,2659,2645,2658,2681,2697,2701,2704,2715,2731,2740,2733,2713,2693,2683,2686,
+2698,2717,2743,2780,2827,2876,2915,2937,2940,2931,2920,2908,2896,2883,2870,2864,2867,2881,2901,2925,2955,
+2991,3032,3071,3103,3125,3138,3144,3145,3142,3138,3135,3135,3137,3136,3128,3114,3100,3095,3101,3118,3134,
+3143,3139,3128,3116,3107,3103,3104,3110,3118,3124,3125,3122,3123,3141,3174,3210,3230,3222,3194,3161,3133,
+3110,3083,3053,3025,3009,3006,3010,3016,3025,3041,3065,3092,3116,3138,3162,3192,3227,3265,3301,3338,3375,
+3410,3440,3462,3482,3503,3527,3552,3578,3606,3641,3680,3720,3754,3785,3813,3841,3864,3877,3882,3883,3887,
+3895,3903,3914,3936,3978,4037,4091,4118,4111,4087,4072,4076,4091,4098,4091,4081,4076,4073,4055,4014,3968,
+3942,3946,3952,3922,3841,3734,3647,3606,3598,3586,3546,3483,3419,3372,3339,3308,3273,3233,3191,3150,3108,
+3061,3013,2963,2912,2860,2811,2768,2733,2707,2687,2671,2656,2638,2614,2588,2566,2552,2544,2536,2523,2508,
+2496,2489,2488,2486,2482,2477,2472,2468,2466,2464,2463,2460,2452,2442,2433,2426,2420,2411,2398,2382,2368,
+2355,2339,2317,2293,2269,2249,2229,2205,2177,2148,2120,2093,2065,2033,2001,1969,1936,1900,1861,1823,1789,
+1761,1733,1705,1675,1647,1619,1589,1558,1528,1501,1482,1466,1450,1432,1416,1407,1404,1402,1390,1369,1349,
+1344,1360,1386,1401,1390,1356,1314,1271,1223,1156,1069,977,900,847,812,778,736,689,641,598,559,
+523,491,462,432,396,352,306,261,218,175,132,92,58,28,-5,-46,-93,-140,-187,-233,-282,
+-332,-378,-420,-461,-505,-554,-603,-647,-687,-726,-770,-817,-866,-912,-955,-996,-1037,-1079,-1123,-1171,-1223,
+-1277,-1328,-1373,-1411,-1449,-1490,-1537,-1591,-1646,-1699,-1749,-1797,-1844,-1890,-1936,-1981,-2026,-2071,-2115,-2158,-2200,
+-2242,-2286,-2331,-2375,-2416,-2454,-2491,-2528,-2566,-2603,-2640,-2679,-2718,-2756,-2791,-2823,-2857,-2893,-2932,-2970,-3003,
+-3034,-3064,-3096,-3127,-3155,-3181,-3208,-3237,-3267,-3291,-3308,-3322,-3337,-3355,-3372,-3384,-3390,-3394,-3401,-3412,-3422,
+-3429,-3432,-3436,-3445,-3459,-3475,-3488,-3498,-3507,-3522,-3545,-3572,-3597,-3611,-3615,-3611,-3609,-3614,-3625,-3637,-3644,
+-3646,-3647,-3652,-3660,-3666,-3665,-3654,-3639,-3629,-3629,-3642,-3660,-3677,-3688,-3689,-3678,-3657,-3633,-3618,-3615,-3622,
+-3624,-3613,-3590,-3565,-3549,-3545,-3544,-3539,-3526,-3508,-3488,-3472,-3458,-3448,-3438,-3426,-3408,-3385,-3364,-3352,-3349,
+-3348,-3336,-3309,-3272,-3237,-3213,-3199,-3184,-3163,-3137,-3113,-3092,-3072,-3047,-3016,-2983,-2954,-2932,-2913,-2892,-2866,
+-2837,-2808,-2779,-2751,-2724,-2699,-2674,-2647,-2617,-2585,-2555,-2527,-2497,-2462,-2423,-2381,-2339,-2295,-2245,-2192,-2145,
+-2109,-2083,-2056,-2020,-1975,-1927,-1880,-1831,-1778,-1722,-1671,-1630,-1593,-1544,-1471,-1375,-1271,-1172,-1083,-996,-901,
+-792,-676,-563,-463,-380,-307,-235,-155,-71,7,68,113,150,188,230,268,296,312,325,347,386,
+444,518,598,667,710,716,690,652,621,612,624,648,671,685,694,707,726,737,715,640,516,
+382,283,249,274,327,378,414,442,474,509,542,567,588,613,645,679,708,728,743,759,779,
+802,826,846,859,867,871,877,888,903,915,919,914,909,914,935,966,997,1020,1035,1049,1071,
+1101,1137,1172,1202,1226,1245,1265,1294,1343,1413,1499,1589,1670,1735,1785,1821,1844,1856,1861,1866,1882,
+1914,1966,2037,2118,2200,2274,2336,2386,2427,2461,2488,2507,2518,2519,2509,2489,2460,2432,2415,2413,2426,
+2447,2469,2491,2513,2539,2570,2609,2656,2711,2771,2830,2884,2932,2973,3003,3019,3012,2978,2920,2843,2758,
+2671,2587,2499,2403,2303,2212,2145,2107,2090,2076,2058,2043,2047,2080,2137,2198,2246,2274,2287,2294,2300,
+2300,2287,2259,2219,2174,2132,2099,2072,2043,2006,1954,1887,1809,1733,1668,1619,1581,1544,1503,1459,1421,
+1394,1372,1351,1328,1312,1306,1302,1282,1234,1171,1122,1107,1124,1151,1173,1188,1208,1234,1244,1215,1139,
+1039,949,891,863,848,831,807,783,762,741,718,693,670,651,635,614,585,551,518,493,473,
+455,435,420,415,422,432,434,423,405,389,377,364,343,312,276,242,213,185,157,128,98,
+69,40,15,-6,-25,-46,-71,-100,-128,-153,-176,-202,-233,-262,-283,-296,-309,-329,-356,-385,-410,
+-432,-457,-486,-518,-548,-574,-599,-626,-654,-678,-698,-713,-724,-731,-736,-740,-745,-752,-760,-767,-777,
+-792,-814,-840,-868,-894,-918,-939,-954,-963,-968,-972,-981,-994,-1008,-1022,-1035,-1049,-1063,-1072,-1075,-1073,
+-1072,-1076,-1083,-1088,-1089,-1087,-1087,-1090,-1097,-1106,-1114,-1119,-1121,-1121,-1120,-1122,-1126,-1131,-1139,-1148,-1158,
+-1169,-1177,-1182,-1185,-1189,-1194,-1198,-1200,-1199,-1198,-1198,-1196,-1192,-1188,-1187,-1190,-1193,-1194,-1188,-1179,-1174,
+-1175,-1182,-1190,-1196,-1200,-1204,-1210,-1216,-1221,-1225,-1229,-1231,-1232,-1229,-1224,-1220,-1221,-1225,-1229,-1227,-1219,
+-1208,-1203,-1204,-1208,-1211,-1209,-1204,-1201,-1201,-1205,-1211,-1219,-1228,-1238,-1248,-1258,-1265,-1270,-1271,-1267,-1264,
+-1266,-1272,-1281,-1285,-1283,-1276,-1270,-1265,-1260,-1254,-1248,-1245,-1245,-1242,-1233,-1221,-1211,-1205,-1202,-1197,-1188,
+-1177,-1168,-1160,-1150,-1136,-1119,-1105,-1094,-1086,-1076,-1066,-1055,-1046,-1038,-1027,-1014,-1003,-998,-998,-1000,-999,
+-995,-989,-985,-985,-987,-988,-987,-985,-981,-978,-973,-967,-961,-955,-950,-945,-938,-930,-919,-907,-897,
+-887,-878,-869,-860,-849,-838,-826,-813,-801,-790,-777,-764,-751,-739,-730,-721,-712,-702,-689,-672,-649,
+-622,-596,-574,-557,-542,-526,-507,-487,-467,-449,-432,-414,-397,-381,-365,-350,-335,-319,-305,-292,-282,
+-275,-268,-260,-250,-239,-232,-230,-231,-231,-225,-216,-209,-206,-205,-201,-191,-180,-171,-164,-158,-149,
+-138,-129,-121,-111,-98,-84,-70,-59,-47,-30,-10,10,29,48,71,99,127,153,175,200,228,
+257,282,304,326,353,385,418,450,480,510,540,566,591,617,646,678,705,729,754,788,830,
+871,903,928,957,992,1028,1055,1071,1083,1094,1086,1042,962,883,868,962,1165,1432,1693,1886,1982,
+1989,1952,1932,1977,2089,2231,2350,2419,2447,2457,2458,2440,2392,2320,2244,2180,2122,2056,1981,1913,1867,
+1843,1825,1799,1764,1727,1689,1649,1605,1569,1552,1551,1554,1546,1529,1516,1521,1542,1564,1577,1577,1567,
+1552,1533,1513,1496,1479,1459,1437,1421,1422,1440,1461,1473,1474,1478,1494,1519,1533,1522,1491,1454,1419,
+1379,1322,1248,1176,1126,1102,1085,1046,970,858,731,610,508,426,358,298,246,206,178,155,126,
+83,28,-25,-71,-109,-145,-183,-219,-248,-269,-290,-314,-338,-356,-367,-376,-389,-408,-428,-444,-456,
+-468,-483,-500,-514,-525,-537,-553,-573,-592,-610,-625,-640,-654,-667,-676,-682,-687,-693,-701,-708,-712,
+-709,-701,-690,-680,-675,-671,-666,-662,-659,-657,-654,-647,-634,-619,-604,-588,-567,-540,-509,-480,-455,
+-432,-411,-389,-366,-338,-301,-250,-193,-137,-90,-50,-13,23,61,100,141,187,236,284,327,368,
+416,474,538,596,641,676,712,753,799,842,879,913,946,982,1018,1055,1093,1133,1174,1215,1253,
+1291,1329,1367,1402,1433,1462,1492,1523,1554,1583,1611,1642,1677,1715,1751,1782,1809,1834,1859,1883,1906,
+1929,1951,1972,1992,2009,2025,2045,2069,2095,2121,2143,2162,2178,2190,2197,2199,2196,2191,2189,2190,2191,
+2191,2190,2189,2189,2189,2186,2180,2172,2167,2164,2161,2156,2147,2135,2125,2120,2118,2117,2115,2111,2105,
+2101,2100,2100,2097,2085,2065,2044,2029,2024,2025,2025,2018,2004,1986,1967,1952,1943,1938,1929,1907,1870,
+1826,1787,1757,1731,1701,1670,1646,1635,1631,1622,1605,1588,1588,1605,1627,1638,1637,1635,1643,1659,1662,
+1671,1674,1677,1689,1710,1733,1753,1772,1795,1821,1846,1864,1879,1895,1917,1939,1957,1971,1987,2009,2033,
+2052,2063,2073,2090,2113,2136,2153,2166,2183,2206,2230,2247,2254,2258,2267,2282,2300,2316,2334,2355,2379,
+2402,2424,2449,2480,2512,2536,2545,2545,2549,2561,2577,2588,2597,2619,2665,2724,2766,2766,2728,2683,2662,
+2673,2698,2714,2716,2714,2717,2722,2718,2701,2678,2665,2673,2696,2726,2758,2795,2840,2887,2924,2942,2939,
+2924,2911,2907,2908,2909,2905,2898,2893,2894,2902,2917,2940,2972,3011,3054,3096,3132,3160,3178,3186,3185,
+3179,3175,3175,3179,3181,3174,3158,3138,3124,3124,3137,3157,3173,3177,3172,3160,3150,3142,3138,3138,3144,
+3153,3160,3158,3151,3151,3167,3196,3221,3227,3209,3181,3158,3146,3134,3114,3086,3064,3057,3062,3069,3071,
+3073,3083,3103,3126,3147,3168,3196,3234,3277,3316,3353,3391,3435,3479,3515,3540,3558,3577,3602,3630,3657,
+3686,3719,3756,3790,3818,3841,3864,3890,3914,3927,3932,3936,3943,3953,3961,3969,3992,4039,4104,4160,4180,
+4162,4128,4107,4110,4125,4131,4123,4109,4099,4085,4056,4010,3967,3947,3952,3952,3913,3830,3731,3655,3621,
+3612,3596,3556,3497,3440,3398,3367,3338,3302,3260,3215,3172,3130,3086,3040,2990,2937,2885,2837,2799,2770,
+2749,2733,2717,2699,2676,2648,2621,2600,2586,2577,2566,2549,2532,2520,2513,2510,2507,2503,2498,2493,2488,
+2484,2480,2478,2476,2472,2466,2461,2456,2450,2442,2430,2416,2403,2390,2374,2353,2330,2308,2289,2270,2246,
+2218,2188,2159,2132,2105,2077,2047,2015,1980,1941,1900,1862,1829,1801,1773,1744,1713,1684,1655,1624,1591,
+1562,1539,1523,1509,1492,1472,1455,1448,1450,1451,1439,1415,1393,1387,1404,1429,1441,1426,1388,1341,1292,
+1237,1167,1084,1002,939,900,873,840,794,740,690,648,614,583,553,521,487,448,405,360,317,
+274,232,191,153,119,86,50,8,-37,-83,-128,-175,-224,-272,-316,-356,-398,-447,-498,-546,-584,
+-618,-655,-702,-755,-808,-855,-897,-937,-978,-1020,-1063,-1109,-1160,-1213,-1264,-1310,-1350,-1388,-1431,-1480,-1532,
+-1585,-1635,-1684,-1731,-1778,-1824,-1870,-1915,-1961,-2006,-2051,-2095,-2139,-2182,-2227,-2271,-2314,-2353,-2391,-2429,-2468,
+-2507,-2546,-2584,-2622,-2661,-2700,-2737,-2772,-2808,-2844,-2881,-2915,-2945,-2972,-3001,-3032,-3065,-3097,-3127,-3156,-3186,
+-3213,-3235,-3252,-3268,-3286,-3309,-3332,-3350,-3360,-3367,-3373,-3379,-3386,-3391,-3396,-3401,-3409,-3420,-3432,-3445,-3460,
+-3480,-3503,-3526,-3545,-3560,-3572,-3581,-3590,-3597,-3603,-3608,-3613,-3618,-3622,-3627,-3632,-3636,-3635,-3627,-3612,-3599,
+-3594,-3600,-3615,-3632,-3647,-3655,-3656,-3648,-3631,-3613,-3601,-3600,-3604,-3603,-3587,-3563,-3540,-3528,-3526,-3525,-3516,
+-3499,-3480,-3463,-3447,-3432,-3418,-3405,-3393,-3376,-3354,-3331,-3314,-3309,-3308,-3301,-3279,-3245,-3213,-3190,-3176,-3164,
+-3146,-3124,-3102,-3085,-3066,-3041,-3008,-2974,-2946,-2926,-2909,-2887,-2858,-2827,-2797,-2772,-2750,-2729,-2706,-2680,-2651,
+-2618,-2585,-2552,-2520,-2487,-2450,-2410,-2371,-2335,-2298,-2255,-2208,-2162,-2126,-2098,-2074,-2044,-2009,-1970,-1929,-1883,
+-1829,-1770,-1715,-1671,-1633,-1588,-1527,-1449,-1367,-1292,-1225,-1157,-1075,-972,-852,-726,-608,-508,-424,-349,-275,
+-200,-129,-65,-10,43,95,140,171,184,190,203,235,286,350,417,478,524,546,538,507,471,
+450,456,480,503,509,497,482,483,503,520,504,438,334,232,177,182,230,288,332,359,384,
+416,451,483,506,529,558,594,628,653,667,676,685,700,720,742,763,779,788,792,797,808,
+825,844,857,860,859,862,877,901,927,951,971,990,1014,1042,1073,1101,1125,1146,1168,1197,1236,
+1287,1347,1413,1482,1552,1619,1680,1727,1758,1774,1784,1794,1812,1844,1893,1961,2044,2131,2211,2276,2325,
+2364,2397,2427,2453,2472,2482,2479,2462,2435,2405,2382,2368,2365,2368,2378,2397,2425,2463,2509,2557,2605,
+2649,2689,2730,2776,2828,2880,2917,2930,2915,2875,2818,2747,2665,2573,2475,2380,2294,2227,2183,2160,2147,
+2130,2100,2067,2052,2072,2124,2187,2238,2265,2274,2275,2275,2273,2264,2242,2209,2165,2115,2065,2023,1992,
+1967,1937,1890,1825,1748,1672,1607,1554,1510,1469,1427,1386,1350,1322,1300,1283,1271,1263,1260,1253,1232,
+1191,1139,1090,1055,1032,1019,1018,1046,1114,1206,1278,1283,1202,1063,923,829,794,794,797,785,759,
+731,709,691,671,649,627,606,581,550,514,480,457,443,430,414,396,386,389,399,405,398,
+384,369,359,349,329,299,263,229,201,177,152,126,97,69,42,20,1,-15,-36,-63,-93,
+-121,-145,-168,-194,-225,-254,-278,-294,-312,-335,-365,-395,-420,-444,-469,-499,-531,-559,-584,-609,-635,
+-663,-690,-714,-733,-748,-758,-764,-768,-772,-779,-787,-793,-799,-809,-824,-846,-872,-899,-924,-945,-961,
+-972,-978,-983,-991,-1002,-1015,-1030,-1045,-1061,-1074,-1080,-1080,-1078,-1080,-1088,-1099,-1106,-1109,-1107,-1107,-1110,
+-1117,-1124,-1131,-1136,-1138,-1139,-1139,-1141,-1145,-1150,-1157,-1166,-1175,-1184,-1191,-1195,-1200,-1208,-1217,-1224,-1227,
+-1226,-1222,-1218,-1213,-1207,-1202,-1199,-1201,-1205,-1206,-1202,-1195,-1191,-1192,-1198,-1206,-1212,-1216,-1220,-1226,-1231,
+-1235,-1239,-1242,-1245,-1246,-1243,-1235,-1228,-1225,-1224,-1223,-1217,-1208,-1201,-1202,-1209,-1218,-1223,-1223,-1222,-1223,
+-1229,-1238,-1247,-1254,-1259,-1262,-1264,-1268,-1273,-1279,-1283,-1283,-1280,-1277,-1276,-1277,-1278,-1277,-1275,-1271,-1268,
+-1264,-1261,-1260,-1260,-1258,-1250,-1238,-1226,-1216,-1209,-1202,-1193,-1182,-1173,-1168,-1163,-1153,-1137,-1121,-1108,-1100,
+-1093,-1083,-1071,-1060,-1051,-1044,-1035,-1024,-1013,-1007,-1007,-1007,-1006,-1001,-995,-991,-991,-992,-992,-990,-986,
+-984,-982,-977,-970,-961,-953,-948,-945,-940,-932,-921,-909,-898,-887,-876,-866,-856,-848,-838,-826,-814,
+-802,-791,-781,-768,-753,-738,-726,-717,-710,-703,-693,-679,-660,-638,-614,-591,-571,-553,-534,-514,-493,
+-474,-458,-444,-428,-412,-396,-379,-364,-349,-332,-316,-302,-290,-281,-272,-261,-249,-237,-229,-225,-225,
+-222,-214,-204,-195,-192,-192,-190,-185,-175,-164,-153,-142,-132,-122,-112,-102,-89,-75,-61,-50,-41,
+-30,-14,6,26,42,57,75,97,122,147,172,199,227,253,276,297,321,351,386,420,451,
+479,507,533,557,582,609,641,674,704,730,759,797,841,881,910,935,963,997,1032,1057,1072,
+1084,1091,1078,1029,951,883,881,982,1179,1424,1653,1818,1898,1909,1894,1905,1975,2100,2240,2350,2413,
+2440,2451,2451,2424,2361,2274,2188,2119,2061,2003,1943,1893,1862,1844,1822,1789,1749,1712,1679,1640,1592,
+1545,1515,1506,1507,1502,1488,1475,1476,1491,1511,1526,1530,1525,1514,1497,1476,1453,1427,1397,1367,1345,
+1340,1353,1370,1380,1384,1395,1421,1453,1474,1471,1449,1424,1402,1371,1320,1249,1177,1125,1094,1066,1017,
+936,830,715,606,505,415,335,269,221,189,166,141,103,53,-2,-51,-91,-123,-155,-190,-224,
+-252,-274,-295,-317,-339,-356,-371,-386,-404,-423,-438,-448,-458,-472,-489,-507,-521,-532,-545,-562,-583,
+-603,-620,-636,-650,-663,-673,-679,-684,-690,-697,-705,-710,-712,-709,-700,-688,-677,-669,-664,-660,-656,
+-654,-653,-654,-652,-645,-632,-614,-594,-570,-544,-517,-488,-459,-430,-401,-375,-352,-327,-294,-250,-197,
+-143,-94,-51,-9,32,72,109,148,190,235,280,321,361,409,467,530,587,633,672,712,759,
+806,848,882,912,944,981,1021,1060,1100,1139,1178,1216,1256,1297,1340,1381,1418,1449,1477,1506,1538,
+1569,1598,1627,1658,1692,1728,1761,1789,1815,1840,1867,1893,1918,1942,1966,1989,2009,2025,2039,2055,2076,
+2102,2128,2150,2169,2185,2200,2212,2220,2222,2221,2219,2219,2220,2221,2219,2216,2214,2215,2218,2219,2217,
+2210,2200,2190,2184,2182,2181,2174,2161,2147,2139,2138,2140,2138,2131,2123,2118,2116,2110,2095,2074,2055,
+2047,2049,2051,2044,2026,2001,1979,1965,1959,1957,1948,1925,1888,1846,1810,1787,1773,1755,1729,1697,1666,
+1643,1628,1618,1616,1622,1632,1639,1638,1634,1636,1647,1662,1662,1668,1672,1680,1699,1725,1751,1771,1788,
+1807,1830,1852,1871,1888,1905,1923,1938,1949,1959,1975,1999,2023,2040,2048,2056,2073,2098,2123,2142,2156,
+2172,2193,2216,2234,2246,2257,2271,2288,2304,2320,2341,2370,2401,2425,2443,2464,2496,2533,2558,2561,2553,
+2559,2594,2645,2685,2698,2694,2696,2714,2736,2740,2720,2693,2682,2696,2719,2734,2733,2724,2717,2710,2697,
+2678,2665,2672,2702,2745,2788,2825,2858,2890,2917,2931,2929,2918,2909,2913,2928,2943,2949,2943,2931,2919,
+2913,2917,2931,2958,2995,3039,3085,3130,3171,3204,3226,3235,3233,3226,3220,3219,3219,3214,3199,3180,3164,
+3161,3172,3188,3201,3203,3195,3183,3173,3167,3164,3163,3166,3173,3182,3185,3180,3171,3170,3184,3206,3220,
+3213,3191,3169,3163,3166,3164,3146,3121,3105,3106,3118,3125,3125,3124,3132,3149,3168,3183,3200,3229,3272,
+3320,3364,3403,3446,3497,3547,3587,3612,3629,3649,3676,3704,3730,3756,3788,3823,3856,3879,3896,3915,3939,
+3961,3975,3982,3988,3999,4010,4014,4017,4035,4080,4142,4193,4208,4185,4153,4137,4144,4155,4153,4136,4115,
+4096,4076,4043,4001,3970,3962,3967,3957,3904,3815,3721,3657,3631,3624,3606,3568,3517,3469,3431,3401,3368,
+3328,3283,3236,3192,3150,3107,3062,3013,2962,2915,2875,2845,2821,2801,2781,2759,2735,2709,2682,2657,2638,
+2623,2610,2595,2576,2560,2548,2541,2536,2531,2525,2521,2516,2510,2504,2500,2499,2500,2500,2497,2493,2488,
+2482,2474,2461,2446,2432,2420,2406,2389,2369,2348,2328,2307,2283,2255,2226,2198,2170,2143,2115,2087,2056,
+2021,1981,1940,1902,1870,1842,1814,1784,1752,1721,1690,1658,1625,1597,1576,1562,1549,1532,1513,1498,1494,
+1497,1497,1483,1457,1432,1426,1442,1466,1477,1462,1422,1368,1310,1246,1175,1100,1035,988,959,933,898,
+849,794,746,707,675,644,611,575,537,498,456,415,374,333,293,253,215,180,145,106,63,
+18,-25,-70,-116,-165,-211,-253,-293,-338,-390,-443,-488,-523,-554,-590,-636,-690,-743,-791,-835,-876,
+-918,-960,-1002,-1047,-1098,-1151,-1202,-1247,-1287,-1328,-1374,-1424,-1475,-1525,-1571,-1616,-1662,-1709,-1757,-1803,-1849,
+-1894,-1938,-1982,-2026,-2072,-2118,-2164,-2209,-2250,-2289,-2327,-2365,-2405,-2445,-2485,-2524,-2563,-2602,-2642,-2682,-2723,
+-2763,-2802,-2836,-2865,-2890,-2914,-2940,-2970,-3003,-3036,-3068,-3100,-3130,-3159,-3183,-3202,-3219,-3238,-3261,-3286,-3310,
+-3328,-3340,-3348,-3354,-3358,-3363,-3369,-3376,-3385,-3395,-3406,-3420,-3441,-3466,-3489,-3506,-3516,-3523,-3534,-3551,-3569,
+-3583,-3590,-3590,-3590,-3593,-3599,-3608,-3616,-3618,-3611,-3597,-3581,-3569,-3566,-3574,-3586,-3598,-3607,-3612,-3614,-3610,
+-3600,-3588,-3580,-3579,-3579,-3572,-3554,-3529,-3510,-3502,-3501,-3497,-3485,-3467,-3449,-3436,-3425,-3411,-3395,-3378,-3363,
+-3348,-3330,-3309,-3290,-3279,-3273,-3265,-3247,-3220,-3194,-3175,-3162,-3150,-3132,-3111,-3092,-3076,-3058,-3032,-2998,-2963,
+-2937,-2919,-2902,-2879,-2848,-2816,-2790,-2771,-2756,-2738,-2715,-2688,-2657,-2624,-2589,-2554,-2518,-2480,-2440,-2402,-2367,
+-2338,-2310,-2279,-2241,-2199,-2160,-2125,-2092,-2059,-2022,-1985,-1948,-1907,-1859,-1804,-1748,-1697,-1649,-1601,-1546,-1486,
+-1428,-1376,-1328,-1277,-1212,-1129,-1026,-908,-786,-670,-566,-476,-397,-325,-258,-192,-127,-62,-2,42,67,
+74,81,103,147,208,271,325,368,396,406,396,370,344,337,355,385,402,387,343,292,263,
+263,274,267,224,158,103,91,126,187,243,281,305,330,363,397,426,447,470,501,537,571,
+593,603,608,613,623,639,659,681,701,716,725,732,743,759,776,789,795,800,808,822,841,
+861,880,899,920,943,970,999,1028,1054,1077,1101,1132,1174,1225,1278,1329,1383,1443,1513,1583,1639,
+1674,1690,1698,1709,1732,1768,1821,1891,1977,2066,2147,2211,2259,2296,2329,2359,2386,2404,2412,2409,2398,
+2381,2362,2345,2328,2313,2302,2302,2321,2358,2410,2465,2516,2553,2576,2590,2609,2643,2696,2757,2804,2823,
+2809,2770,2715,2645,2557,2451,2338,2238,2170,2139,2141,2154,2157,2134,2091,2052,2046,2083,2150,2216,2257,
+2269,2263,2254,2245,2230,2207,2176,2142,2103,2056,2004,1953,1912,1881,1850,1807,1748,1678,1608,1544,1488,
+1437,1391,1350,1313,1279,1252,1231,1220,1216,1215,1210,1193,1164,1125,1083,1044,1007,968,929,904,918,
+986,1093,1194,1233,1179,1050,901,790,739,734,741,736,717,694,677,663,645,621,597,575,552,
+522,485,449,425,413,407,395,377,362,357,361,365,362,352,341,334,325,308,280,246,214,
+188,167,146,123,98,72,49,30,14,-1,-22,-50,-82,-112,-137,-159,-182,-209,-237,-264,-288,
+-313,-343,-374,-404,-430,-454,-482,-513,-545,-573,-596,-619,-643,-671,-698,-724,-746,-764,-776,-784,-789,
+-795,-802,-810,-816,-821,-827,-838,-855,-877,-901,-924,-945,-961,-974,-984,-992,-1001,-1010,-1022,-1036,-1052,
+-1067,-1078,-1082,-1081,-1081,-1088,-1099,-1112,-1121,-1125,-1126,-1129,-1134,-1139,-1144,-1148,-1153,-1156,-1159,-1162,-1165,
+-1169,-1174,-1180,-1187,-1193,-1199,-1203,-1206,-1211,-1220,-1230,-1239,-1242,-1241,-1237,-1235,-1234,-1232,-1228,-1224,-1221,
+-1221,-1220,-1218,-1214,-1213,-1215,-1220,-1225,-1228,-1230,-1233,-1237,-1241,-1244,-1246,-1248,-1250,-1249,-1245,-1239,-1233,
+-1229,-1225,-1219,-1209,-1200,-1196,-1200,-1209,-1217,-1221,-1222,-1226,-1234,-1246,-1256,-1264,-1268,-1270,-1272,-1272,-1274,
+-1277,-1284,-1292,-1296,-1295,-1288,-1280,-1274,-1271,-1272,-1273,-1273,-1271,-1269,-1267,-1267,-1266,-1261,-1251,-1239,-1228,
+-1220,-1214,-1206,-1194,-1182,-1174,-1170,-1166,-1156,-1141,-1127,-1116,-1110,-1102,-1090,-1076,-1063,-1055,-1049,-1042,-1033,
+-1024,-1019,-1017,-1017,-1014,-1008,-1002,-998,-998,-998,-997,-994,-990,-987,-985,-980,-973,-965,-957,-952,-948,
+-942,-933,-922,-910,-898,-885,-871,-858,-846,-836,-827,-817,-807,-797,-790,-782,-771,-757,-742,-729,-720,
+-714,-707,-697,-684,-668,-649,-629,-608,-588,-567,-545,-521,-499,-480,-466,-453,-438,-422,-405,-389,-375,
+-360,-343,-326,-310,-296,-285,-275,-263,-250,-238,-229,-222,-216,-209,-200,-190,-183,-178,-175,-174,-170,
+-163,-153,-141,-129,-117,-106,-96,-85,-72,-59,-49,-39,-29,-15,4,25,42,53,61,72,89,
+112,139,169,199,227,251,273,296,324,358,394,426,456,485,513,539,562,586,612,643,675,
+705,734,767,807,850,888,916,940,968,1000,1031,1054,1069,1079,1081,1062,1011,941,890,904,1007,
+1184,1393,1583,1721,1796,1823,1834,1872,1959,2090,2231,2344,2413,2446,2458,2448,2408,2334,2241,2153,2082,
+2023,1966,1911,1868,1843,1826,1801,1764,1723,1691,1664,1629,1578,1523,1482,1465,1464,1464,1455,1445,1441,
+1448,1460,1469,1474,1475,1471,1460,1442,1418,1389,1356,1323,1296,1283,1282,1287,1292,1299,1318,1349,1383,
+1404,1405,1395,1384,1373,1352,1306,1242,1177,1126,1089,1048,987,905,810,713,617,518,416,322,246,
+197,167,145,115,72,19,-32,-75,-107,-136,-167,-200,-233,-260,-282,-302,-321,-341,-359,-379,-401,
+-423,-440,-450,-456,-465,-479,-498,-514,-527,-539,-555,-575,-597,-616,-632,-647,-661,-672,-679,-683,-689,
+-698,-706,-712,-715,-714,-711,-705,-695,-681,-668,-659,-652,-648,-646,-646,-649,-650,-646,-634,-614,-590,
+-566,-541,-515,-487,-456,-425,-395,-368,-344,-319,-288,-248,-201,-153,-104,-57,-10,35,78,117,155,
+196,240,283,322,363,410,466,525,580,626,667,711,759,806,847,880,911,947,987,1029,1070,
+1108,1145,1180,1216,1254,1295,1339,1381,1418,1451,1482,1515,1549,1581,1610,1638,1668,1703,1737,1769,1797,
+1824,1851,1879,1905,1928,1950,1974,1997,2018,2033,2045,2059,2080,2105,2131,2152,2169,2185,2203,2223,2240,
+2250,2254,2254,2254,2255,2254,2251,2245,2240,2239,2242,2246,2245,2238,2228,2220,2219,2222,2222,2211,2192,
+2172,2163,2168,2177,2178,2167,2149,2135,2129,2127,2122,2110,2098,2090,2085,2078,2061,2037,2011,1991,1979,
+1970,1962,1948,1927,1898,1868,1845,1831,1824,1813,1789,1754,1716,1684,1665,1657,1655,1655,1651,1644,1637,
+1634,1639,1651,1662,1670,1673,1680,1696,1719,1745,1767,1782,1798,1817,1840,1863,1882,1898,1914,1929,1940,
+1947,1953,1965,1986,2009,2026,2036,2046,2062,2084,2106,2125,2142,2162,2186,2209,2227,2242,2259,2280,2301,
+2317,2334,2359,2394,2429,2452,2464,2481,2512,2551,2575,2571,2556,2566,2626,2719,2797,2821,2789,2734,2696,
+2687,2695,2703,2706,2713,2727,2742,2747,2739,2725,2713,2705,2698,2694,2701,2727,2771,2820,2861,2888,2905,
+2917,2922,2921,2916,2914,2923,2942,2963,2976,2976,2966,2952,2941,2936,2940,2956,2987,3030,3080,3132,3180,
+3223,3259,3283,3292,3289,3279,3271,3265,3257,3242,3221,3203,3197,3206,3223,3236,3236,3223,3204,3188,3179,
+3175,3175,3176,3181,3191,3200,3201,3193,3183,3183,3199,3219,3226,3214,3191,3178,3182,3193,3193,3175,3153,
+3144,3153,3170,3178,3177,3176,3185,3203,3218,3229,3242,3270,3314,3364,3410,3453,3501,3556,3609,3648,3674,
+3694,3720,3751,3778,3799,3821,3850,3886,3919,3940,3954,3969,3990,4012,4025,4030,4036,4048,4059,4062,4063,
+4078,4120,4177,4221,4230,4207,4179,4169,4176,4180,4165,4136,4107,4085,4062,4031,3996,3976,3977,3984,3966,
+3905,3814,3729,3676,3656,3647,3627,3590,3546,3505,3469,3433,3391,3344,3297,3251,3207,3165,3122,3078,3034,
+2991,2953,2922,2898,2875,2850,2821,2791,2764,2739,2717,2698,2681,2664,2645,2626,2607,2592,2581,2573,2566,
+2557,2550,2545,2541,2534,2528,2526,2528,2533,2534,2531,2524,2517,2511,2502,2489,2472,2457,2446,2436,2423,
+2407,2386,2364,2341,2316,2291,2264,2237,2208,2179,2150,2121,2091,2057,2019,1978,1941,1910,1883,1855,1824,
+1791,1759,1727,1696,1665,1637,1616,1601,1588,1572,1556,1545,1542,1543,1538,1519,1490,1466,1461,1477,1501,
+1513,1499,1458,1398,1330,1260,1192,1131,1083,1048,1021,990,949,899,849,806,769,736,702,665,626,
+587,547,507,469,432,395,357,318,279,243,206,167,124,80,35,-10,-57,-104,-149,-191,-232,
+-278,-329,-379,-422,-458,-491,-529,-574,-624,-672,-718,-761,-805,-848,-891,-934,-981,-1033,-1086,-1135,-1178,
+-1218,-1261,-1310,-1363,-1415,-1462,-1507,-1551,-1597,-1645,-1694,-1742,-1787,-1830,-1872,-1915,-1959,-2007,-2056,-2104,-2149,
+-2191,-2232,-2272,-2311,-2350,-2389,-2428,-2467,-2506,-2544,-2584,-2627,-2671,-2714,-2753,-2786,-2814,-2837,-2861,-2888,-2919,
+-2952,-2985,-3017,-3048,-3079,-3109,-3136,-3158,-3176,-3192,-3211,-3235,-3261,-3285,-3304,-3316,-3324,-3331,-3339,-3349,-3360,
+-3369,-3377,-3386,-3400,-3419,-3441,-3461,-3475,-3482,-3489,-3501,-3519,-3539,-3553,-3558,-3557,-3555,-3557,-3565,-3575,-3582,
+-3584,-3577,-3565,-3553,-3545,-3544,-3550,-3557,-3563,-3567,-3570,-3574,-3574,-3569,-3561,-3552,-3546,-3541,-3530,-3513,-3493,
+-3479,-3474,-3473,-3468,-3454,-3436,-3421,-3413,-3406,-3394,-3376,-3355,-3337,-3323,-3310,-3295,-3278,-3264,-3252,-3240,-3222,
+-3201,-3179,-3162,-3148,-3131,-3110,-3087,-3069,-3055,-3039,-3015,-2984,-2952,-2927,-2910,-2893,-2869,-2839,-2808,-2786,-2772,
+-2761,-2744,-2721,-2692,-2662,-2630,-2595,-2557,-2516,-2475,-2435,-2399,-2368,-2344,-2323,-2299,-2270,-2233,-2193,-2153,-2113,
+-2072,-2029,-1987,-1946,-1905,-1862,-1814,-1762,-1707,-1652,-1599,-1550,-1506,-1468,-1431,-1393,-1349,-1298,-1237,-1163,-1072,
+-966,-850,-736,-632,-541,-461,-386,-310,-235,-163,-103,-63,-41,-27,-8,27,81,142,198,241,272,
+290,295,286,266,248,250,275,311,331,313,257,181,115,77,63,53,36,14,5,25,72,
+130,180,216,245,275,307,337,361,382,408,442,477,506,522,530,535,543,555,571,591,614,
+637,656,671,683,695,706,714,719,722,731,746,764,781,794,807,823,843,867,894,926,959,
+989,1014,1035,1062,1104,1158,1213,1262,1308,1362,1431,1507,1571,1608,1619,1617,1621,1641,1681,1741,1818,
+1908,1998,2078,2140,2186,2224,2259,2290,2313,2323,2322,2314,2304,2296,2290,2282,2270,2254,2243,2247,2271,
+2316,2371,2424,2464,2483,2485,2477,2477,2498,2548,2614,2674,2707,2704,2668,2604,2515,2402,2277,2163,2086,
+2060,2081,2122,2153,2151,2113,2060,2025,2034,2088,2163,2225,2254,2254,2241,2225,2207,2179,2141,2103,2071,
+2040,1999,1946,1887,1834,1795,1762,1723,1672,1612,1548,1484,1423,1366,1318,1279,1247,1217,1190,1169,1160,
+1160,1160,1149,1122,1082,1039,1001,972,946,917,880,845,832,862,937,1032,1100,1102,1028,909,793,
+713,674,661,654,646,640,635,627,609,583,558,539,524,502,469,432,403,387,379,369,354,
+338,328,325,323,318,310,303,300,295,283,259,229,200,175,154,134,115,94,74,55,38,
+24,9,-10,-37,-69,-102,-129,-151,-172,-195,-221,-249,-278,-309,-343,-376,-405,-432,-459,-491,-526,
+-559,-586,-609,-631,-654,-681,-707,-732,-753,-771,-784,-794,-803,-811,-820,-830,-838,-844,-850,-858,-870,
+-886,-904,-923,-943,-961,-977,-992,-1004,-1014,-1023,-1032,-1043,-1057,-1070,-1080,-1083,-1084,-1087,-1096,-1110,-1122,
+-1129,-1133,-1137,-1144,-1152,-1157,-1160,-1162,-1165,-1170,-1176,-1181,-1185,-1190,-1196,-1202,-1207,-1211,-1214,-1215,-1216,
+-1219,-1224,-1232,-1239,-1242,-1242,-1243,-1246,-1251,-1254,-1253,-1249,-1244,-1239,-1235,-1232,-1230,-1230,-1232,-1234,-1235,
+-1233,-1232,-1234,-1237,-1241,-1243,-1244,-1245,-1244,-1242,-1238,-1234,-1232,-1231,-1229,-1223,-1213,-1204,-1202,-1206,-1212,
+-1215,-1215,-1216,-1220,-1230,-1240,-1247,-1250,-1253,-1257,-1262,-1267,-1271,-1277,-1285,-1294,-1301,-1302,-1295,-1285,-1276,
+-1273,-1275,-1279,-1280,-1278,-1274,-1270,-1266,-1262,-1255,-1245,-1234,-1226,-1221,-1216,-1207,-1197,-1187,-1181,-1177,-1171,
+-1161,-1147,-1135,-1126,-1119,-1109,-1095,-1080,-1068,-1060,-1055,-1048,-1039,-1032,-1027,-1026,-1025,-1022,-1016,-1009,-1005,
+-1004,-1004,-1004,-1001,-996,-990,-985,-979,-973,-966,-960,-956,-951,-943,-933,-921,-909,-898,-885,-870,-853,
+-837,-823,-812,-803,-795,-787,-782,-776,-768,-757,-746,-737,-729,-721,-710,-697,-682,-666,-651,-635,-618,
+-601,-580,-556,-529,-504,-484,-468,-454,-438,-421,-404,-389,-376,-362,-345,-327,-311,-296,-284,-272,-261,
+-250,-240,-230,-219,-207,-197,-188,-182,-177,-171,-164,-158,-153,-147,-140,-131,-120,-108,-96,-84,-71,
+-60,-51,-44,-34,-21,-1,20,39,52,58,61,68,82,105,134,167,199,227,252,276,304,
+336,371,404,433,462,492,524,554,579,603,627,656,686,715,744,778,818,858,893,921,945,
+972,1002,1028,1047,1061,1069,1068,1045,996,939,909,939,1037,1185,1348,1497,1615,1696,1747,1787,1843,
+1935,2063,2203,2323,2405,2446,2455,2434,2381,2303,2216,2138,2075,2018,1959,1901,1856,1830,1813,1788,1750,
+1711,1680,1655,1622,1572,1515,1469,1445,1438,1435,1427,1417,1411,1411,1413,1416,1420,1425,1431,1431,1422,
+1403,1378,1349,1318,1289,1264,1246,1234,1231,1239,1261,1293,1323,1339,1342,1340,1340,1338,1322,1283,1227,
+1171,1123,1081,1029,961,878,791,703,610,506,397,297,222,175,148,123,89,43,-6,-52,-88,
+-118,-147,-179,-212,-242,-267,-289,-308,-327,-346,-366,-389,-412,-434,-449,-458,-465,-475,-491,-508,-521,
+-531,-543,-561,-583,-603,-619,-634,-650,-666,-679,-686,-691,-699,-710,-719,-723,-720,-717,-716,-715,-708,
+-695,-678,-664,-653,-646,-642,-640,-640,-641,-636,-623,-603,-580,-555,-530,-503,-473,-442,-413,-388,-365,
+-340,-313,-281,-244,-204,-161,-116,-68,-20,26,70,112,154,200,247,291,330,370,416,469,527,
+581,631,677,722,768,810,848,881,915,953,995,1037,1076,1113,1148,1183,1218,1254,1294,1335,1375,
+1413,1448,1484,1521,1557,1591,1622,1651,1683,1717,1750,1780,1808,1835,1863,1889,1911,1931,1950,1973,1997,
+2019,2035,2049,2065,2086,2112,2137,2156,2171,2188,2209,2235,2259,2278,2288,2292,2294,2294,2290,2282,2273,
+2266,2263,2263,2263,2259,2252,2245,2242,2244,2247,2245,2232,2214,2197,2192,2198,2208,2211,2200,2181,2162,
+2151,2149,2151,2151,2149,2140,2123,2095,2062,2031,2008,1993,1981,1966,1947,1929,1914,1901,1889,1877,1865,
+1852,1835,1810,1777,1742,1713,1695,1687,1682,1676,1667,1658,1652,1653,1658,1665,1670,1680,1682,1693,1712,
+1734,1755,1770,1784,1801,1826,1853,1877,1894,1906,1919,1932,1944,1952,1957,1966,1981,1997,2012,2023,2035,
+2051,2069,2087,2104,2124,2151,2180,2205,2223,2239,2260,2289,2316,2338,2358,2385,2421,2456,2478,2486,2499,
+2529,2569,2592,2584,2561,2568,2635,2746,2845,2875,2827,2740,2669,2646,2665,2699,2727,2746,2755,2758,2750,
+2736,2722,2717,2721,2734,2752,2777,2811,2849,2884,2909,2920,2924,2923,2920,2917,2919,2930,2949,2969,2982,
+2983,2977,2971,2968,2968,2970,2975,2991,3025,3074,3132,3188,3239,3283,3318,3341,3350,3346,3336,3324,3313,
+3299,3278,3255,3239,3237,3247,3261,3267,3259,3239,3216,3198,3186,3178,3175,3179,3191,3209,3224,3226,3216,
+3206,3208,3226,3245,3249,3235,3215,3206,3212,3221,3217,3200,3182,3182,3198,3218,3226,3224,3224,3236,3254,
+3270,3280,3294,3322,3366,3415,3460,3504,3554,3608,3658,3695,3722,3749,3783,3817,3842,3858,3876,3905,3943,
+3976,3994,4004,4018,4041,4064,4076,4079,4083,4094,4107,4114,4119,4135,4175,4226,4261,4262,4235,4206,4194,
+4193,4185,4159,4124,4094,4075,4055,4026,3995,3979,3982,3988,3966,3906,3825,3754,3713,3696,3683,3657,3621,
+3581,3544,3505,3460,3409,3358,3310,3267,3225,3183,3142,3103,3065,3029,2997,2970,2946,2920,2890,2857,2824,
+2797,2777,2760,2744,2725,2704,2680,2657,2639,2626,2617,2609,2599,2589,2580,2575,2570,2564,2558,2557,2562,
+2568,2568,2561,2551,2542,2535,2527,2513,2495,2479,2469,2462,2454,2440,2421,2399,2375,2353,2329,2304,2277,
+2246,2214,2181,2151,2121,2088,2052,2014,1978,1948,1922,1895,1864,1831,1798,1768,1739,1710,1684,1662,1645,
+1629,1615,1603,1595,1591,1586,1572,1547,1518,1499,1498,1516,1538,1548,1533,1491,1429,1358,1289,1229,1181,
+1145,1114,1082,1041,994,945,902,865,830,794,756,717,679,640,600,561,524,490,457,421,382,
+343,305,269,232,190,145,98,50,3,-43,-88,-132,-175,-219,-265,-308,-348,-385,-424,-467,-513,
+-560,-604,-646,-688,-732,-775,-818,-864,-914,-967,-1019,-1066,-1106,-1147,-1192,-1244,-1299,-1351,-1398,-1443,-1489,
+-1536,-1585,-1634,-1681,-1725,-1767,-1808,-1851,-1898,-1948,-1999,-2046,-2090,-2133,-2175,-2218,-2258,-2297,-2336,-2375,-2414,
+-2454,-2492,-2530,-2571,-2614,-2656,-2695,-2728,-2756,-2781,-2806,-2834,-2867,-2901,-2936,-2968,-2998,-3026,-3055,-3085,-3110,
+-3131,-3147,-3165,-3187,-3214,-3240,-3262,-3276,-3286,-3297,-3311,-3327,-3341,-3352,-3359,-3366,-3375,-3389,-3406,-3423,-3438,
+-3451,-3463,-3476,-3491,-3505,-3514,-3519,-3521,-3522,-3525,-3530,-3536,-3540,-3541,-3538,-3532,-3527,-3525,-3526,-3529,-3532,
+-3533,-3534,-3536,-3540,-3542,-3539,-3530,-3519,-3509,-3498,-3486,-3472,-3460,-3452,-3450,-3448,-3441,-3427,-3412,-3400,-3394,
+-3388,-3377,-3358,-3335,-3314,-3299,-3288,-3277,-3265,-3252,-3238,-3221,-3202,-3181,-3162,-3145,-3128,-3108,-3084,-3061,-3042,
+-3029,-3016,-2996,-2970,-2942,-2920,-2904,-2887,-2864,-2835,-2807,-2787,-2775,-2763,-2746,-2721,-2692,-2662,-2631,-2596,-2555,
+-2512,-2471,-2434,-2402,-2374,-2351,-2330,-2308,-2282,-2248,-2209,-2168,-2125,-2081,-2034,-1985,-1937,-1893,-1851,-1808,-1761,
+-1709,-1655,-1604,-1561,-1527,-1500,-1470,-1435,-1393,-1349,-1305,-1256,-1194,-1116,-1021,-919,-818,-721,-627,-531,-434,
+-343,-264,-204,-163,-132,-103,-66,-20,30,79,121,154,179,195,199,190,174,162,168,195,235,
+269,274,238,166,79,0,-54,-82,-88,-81,-62,-31,10,56,102,144,182,216,245,268,288,
+313,346,385,418,439,448,454,463,477,493,511,530,551,572,592,610,628,643,653,655,651,
+649,658,677,697,712,721,731,747,770,796,824,855,889,920,943,961,988,1036,1100,1166,1218,
+1258,1302,1364,1441,1512,1555,1563,1552,1543,1553,1589,1650,1732,1824,1915,1993,2055,2104,2147,2188,2221,
+2240,2243,2235,2222,2211,2204,2201,2198,2194,2189,2190,2205,2236,2277,2319,2351,2368,2368,2356,2339,2329,
+2341,2381,2444,2511,2559,2571,2537,2456,2336,2194,2062,1972,1948,1987,2062,2130,2157,2134,2076,2020,1997,
+2025,2090,2163,2213,2229,2222,2207,2191,2168,2131,2085,2042,2009,1979,1939,1884,1821,1764,1723,1690,1656,
+1611,1555,1492,1425,1359,1299,1251,1217,1191,1164,1136,1112,1101,1098,1094,1076,1040,993,946,909,885,
+869,857,837,807,776,765,796,870,960,1019,1013,941,832,727,651,609,589,582,583,584,580,
+563,538,513,496,486,474,451,419,388,364,349,337,324,310,300,294,286,277,267,261,261,
+262,255,238,212,184,157,134,114,96,81,66,51,35,20,4,-14,-37,-65,-95,-122,-146,
+-168,-190,-214,-241,-271,-304,-337,-369,-398,-427,-459,-496,-534,-570,-598,-622,-645,-669,-694,-719,-742,
+-760,-776,-790,-802,-813,-825,-837,-849,-861,-871,-879,-887,-894,-903,-915,-929,-946,-965,-984,-1003,-1019,
+-1032,-1040,-1047,-1055,-1065,-1075,-1083,-1088,-1091,-1097,-1109,-1121,-1131,-1136,-1140,-1146,-1155,-1163,-1168,-1170,-1171,
+-1174,-1180,-1187,-1193,-1199,-1205,-1211,-1216,-1220,-1223,-1224,-1225,-1225,-1225,-1227,-1232,-1236,-1240,-1243,-1247,-1254,
+-1261,-1266,-1268,-1265,-1261,-1258,-1254,-1251,-1248,-1246,-1244,-1241,-1236,-1232,-1229,-1229,-1232,-1235,-1236,-1237,-1237,
+-1237,-1235,-1231,-1228,-1228,-1230,-1232,-1229,-1222,-1216,-1214,-1217,-1220,-1220,-1218,-1217,-1220,-1226,-1232,-1234,-1235,
+-1238,-1244,-1253,-1262,-1270,-1277,-1285,-1294,-1301,-1302,-1298,-1291,-1285,-1284,-1286,-1289,-1289,-1285,-1278,-1271,-1264,
+-1257,-1250,-1241,-1232,-1225,-1218,-1211,-1203,-1194,-1187,-1182,-1178,-1170,-1160,-1149,-1139,-1131,-1123,-1113,-1100,-1088,
+-1078,-1070,-1061,-1052,-1043,-1037,-1033,-1032,-1031,-1028,-1022,-1017,-1013,-1011,-1011,-1011,-1008,-1003,-994,-985,-977,
+-970,-965,-960,-956,-950,-941,-930,-918,-906,-894,-882,-867,-849,-830,-814,-800,-789,-781,-776,-771,-766,
+-761,-754,-748,-742,-735,-724,-710,-693,-677,-662,-649,-637,-625,-610,-590,-565,-537,-509,-485,-466,-449,
+-432,-415,-399,-386,-374,-361,-344,-327,-311,-297,-283,-269,-256,-246,-238,-228,-215,-200,-187,-180,-177,
+-175,-169,-158,-147,-137,-130,-124,-117,-108,-97,-86,-73,-61,-51,-44,-38,-28,-13,7,27,42,
+51,54,58,65,80,103,132,165,197,227,255,283,315,349,382,411,437,466,498,533,565,
+592,616,641,670,699,729,759,792,829,866,898,926,952,981,1008,1030,1046,1057,1064,1060,1034,
+990,946,934,974,1062,1178,1299,1413,1519,1615,1697,1766,1837,1928,2048,2181,2304,2392,2436,2438,2405,
+2343,2266,2190,2128,2079,2032,1979,1923,1878,1848,1825,1798,1762,1723,1691,1664,1631,1585,1534,1489,1459,
+1441,1426,1410,1396,1388,1385,1384,1381,1381,1387,1398,1406,1407,1397,1382,1363,1342,1317,1287,1257,1230,
+1216,1219,1238,1265,1288,1300,1304,1308,1312,1312,1296,1260,1213,1165,1120,1073,1013,939,855,766,673,
+570,458,348,256,194,157,132,105,69,25,-17,-56,-90,-123,-156,-189,-220,-247,-269,-291,-312,
+-333,-353,-374,-395,-416,-436,-451,-461,-473,-487,-504,-519,-528,-537,-550,-569,-589,-605,-617,-631,-649,
+-669,-685,-693,-700,-709,-722,-731,-732,-726,-720,-720,-721,-718,-707,-691,-675,-663,-654,-645,-637,-632,
+-628,-620,-605,-586,-564,-541,-515,-485,-453,-423,-398,-379,-359,-335,-304,-271,-238,-204,-167,-125,-79,
+-32,12,55,99,147,197,247,292,333,373,417,469,527,585,641,691,737,779,817,853,889,
+927,966,1005,1044,1083,1120,1157,1194,1229,1266,1304,1343,1382,1419,1456,1493,1531,1567,1601,1633,1666,
+1699,1732,1762,1789,1815,1841,1866,1889,1909,1927,1947,1972,1998,2023,2044,2061,2081,2105,2131,2155,2173,
+2188,2204,2226,2253,2280,2301,2316,2325,2330,2329,2321,2309,2297,2289,2286,2286,2284,2278,2272,2269,2269,
+2270,2268,2260,2249,2237,2228,2223,2223,2224,2224,2219,2209,2195,2182,2177,2180,2188,2192,2182,2153,2111,
+2069,2040,2028,2022,2009,1981,1947,1918,1903,1901,1901,1895,1879,1858,1834,1807,1780,1754,1732,1718,1709,
+1703,1697,1692,1687,1684,1683,1683,1681,1680,1687,1692,1704,1721,1739,1755,1767,1781,1803,1832,1863,1887,
+1901,1910,1919,1932,1946,1958,1967,1975,1982,1991,2000,2009,2023,2039,2056,2072,2088,2111,2141,2174,2200,
+2219,2237,2263,2299,2334,2362,2384,2409,2443,2476,2497,2505,2517,2545,2585,2611,2606,2583,2581,2631,2720,
+2800,2821,2772,2690,2628,2617,2651,2698,2736,2756,2761,2758,2751,2742,2738,2747,2768,2798,2831,2860,2885,
+2903,2914,2919,2921,2921,2922,2922,2923,2930,2944,2961,2974,2978,2974,2971,2976,2987,2997,3001,3006,3023,
+3061,3119,3184,3245,3297,3338,3370,3393,3403,3401,3390,3377,3361,3344,3324,3303,3287,3280,3281,3285,3284,
+3275,3260,3241,3220,3199,3182,3176,3186,3213,3246,3271,3276,3266,3253,3253,3267,3281,3282,3266,3248,3240,
+3244,3248,3242,3225,3214,3221,3241,3261,3268,3266,3268,3281,3301,3318,3333,3353,3386,3429,3474,3515,3556,
+3603,3653,3698,3732,3762,3796,3835,3871,3893,3906,3925,3958,3997,4026,4037,4041,4056,4085,4115,4131,4133,
+4134,4147,4165,4178,4185,4199,4230,4269,4293,4285,4252,4217,4196,4185,4167,4137,4103,4079,4066,4051,4026,
+3997,3980,3980,3979,3955,3901,3836,3784,3756,3742,3723,3692,3655,3618,3580,3537,3485,3429,3378,3334,3295,
+3256,3217,3181,3147,3114,3080,3047,3016,2989,2962,2932,2900,2870,2845,2826,2809,2791,2768,2742,2714,2690,
+2672,2660,2652,2643,2633,2623,2615,2609,2605,2599,2594,2593,2597,2600,2597,2587,2575,2565,2558,2548,2534,
+2517,2501,2492,2488,2482,2470,2453,2434,2413,2393,2371,2345,2316,2283,2248,2214,2182,2152,2121,2086,2051,
+2017,1987,1961,1934,1904,1873,1841,1812,1784,1758,1732,1709,1690,1673,1660,1651,1644,1636,1623,1602,1574,
+1549,1537,1543,1561,1579,1582,1561,1518,1458,1393,1332,1281,1242,1210,1176,1135,1088,1039,995,957,922,
+886,846,806,768,732,696,658,619,583,550,518,482,443,404,367,333,297,255,208,158,109,
+61,15,-29,-74,-118,-161,-201,-238,-274,-311,-353,-400,-449,-496,-541,-583,-625,-667,-709,-752,-799,
+-850,-904,-954,-999,-1040,-1083,-1131,-1183,-1236,-1286,-1333,-1380,-1427,-1475,-1522,-1569,-1614,-1657,-1698,-1741,-1786,
+-1837,-1890,-1941,-1986,-2027,-2067,-2110,-2154,-2197,-2238,-2278,-2319,-2360,-2400,-2438,-2476,-2515,-2556,-2596,-2634,-2667,
+-2696,-2722,-2747,-2774,-2805,-2841,-2877,-2911,-2941,-2967,-2995,-3025,-3054,-3079,-3100,-3120,-3144,-3173,-3200,-3220,-3231,
+-3240,-3252,-3271,-3292,-3311,-3324,-3332,-3339,-3347,-3358,-3372,-3387,-3405,-3423,-3440,-3453,-3463,-3471,-3479,-3487,-3494,
+-3500,-3504,-3506,-3506,-3506,-3504,-3503,-3503,-3504,-3506,-3508,-3509,-3508,-3506,-3505,-3506,-3506,-3506,-3502,-3495,-3485,
+-3474,-3462,-3451,-3441,-3434,-3429,-3426,-3421,-3413,-3402,-3390,-3381,-3375,-3367,-3355,-3338,-3317,-3297,-3280,-3267,-3256,
+-3246,-3234,-3219,-3201,-3180,-3159,-3140,-3124,-3108,-3089,-3068,-3047,-3028,-3013,-2999,-2979,-2955,-2931,-2911,-2896,-2881,
+-2861,-2835,-2809,-2790,-2776,-2762,-2741,-2714,-2683,-2653,-2621,-2587,-2548,-2508,-2471,-2439,-2410,-2383,-2358,-2333,-2308,
+-2279,-2245,-2204,-2161,-2118,-2074,-2027,-1976,-1926,-1878,-1837,-1799,-1759,-1715,-1668,-1622,-1583,-1552,-1526,-1499,-1468,
+-1433,-1396,-1359,-1320,-1275,-1220,-1156,-1083,-1002,-911,-808,-693,-575,-465,-373,-301,-244,-191,-139,-88,-44,
+-11,13,36,60,83,101,107,104,96,93,100,122,159,203,237,238,193,105,1,-88,-140,
+-152,-138,-113,-86,-57,-20,24,73,119,155,180,198,219,250,290,330,360,373,377,382,394,
+412,431,448,463,479,497,514,533,553,574,588,591,586,582,589,606,624,636,643,654,675,
+703,732,759,787,818,846,868,888,919,975,1051,1126,1181,1213,1243,1293,1366,1441,1490,1503,1489,
+1471,1472,1502,1560,1640,1731,1820,1897,1961,2015,2064,2110,2144,2164,2167,2160,2148,2136,2126,2118,2114,
+2116,2123,2139,2163,2192,2220,2237,2237,2223,2202,2178,2159,2147,2149,2172,2218,2277,2329,2353,2327,2245,
+2118,1979,1868,1825,1861,1957,2064,2136,2145,2100,2033,1984,1981,2022,2087,2145,2177,2182,2173,2162,2150,
+2127,2088,2040,1994,1956,1920,1875,1818,1758,1707,1671,1640,1605,1557,1497,1430,1359,1291,1232,1188,1159,
+1136,1111,1082,1057,1041,1033,1020,994,954,907,864,829,804,789,782,775,757,724,695,698,750,
+840,926,962,931,849,755,679,626,590,562,540,526,518,507,490,470,453,441,431,416,394,
+368,344,324,306,290,276,267,260,252,240,229,223,223,225,222,210,188,162,134,109,88,
+70,57,46,34,19,1,-16,-36,-56,-77,-100,-123,-145,-168,-191,-216,-243,-272,-303,-334,-364,
+-393,-423,-458,-498,-538,-575,-605,-631,-656,-682,-708,-733,-754,-772,-787,-800,-813,-827,-841,-856,-872,
+-886,-900,-911,-919,-925,-930,-938,-948,-961,-977,-993,-1011,-1030,-1045,-1056,-1064,-1070,-1077,-1086,-1093,-1099,
+-1104,-1112,-1123,-1135,-1144,-1150,-1154,-1161,-1170,-1177,-1180,-1180,-1180,-1183,-1189,-1195,-1202,-1208,-1214,-1219,-1223,
+-1226,-1228,-1229,-1230,-1231,-1232,-1234,-1236,-1241,-1245,-1251,-1257,-1263,-1268,-1271,-1272,-1273,-1274,-1276,-1276,-1274,
+-1270,-1264,-1258,-1249,-1240,-1232,-1228,-1227,-1228,-1229,-1229,-1230,-1232,-1234,-1233,-1230,-1225,-1224,-1226,-1229,-1230,
+-1226,-1222,-1221,-1223,-1225,-1226,-1225,-1225,-1227,-1230,-1233,-1236,-1238,-1244,-1252,-1260,-1267,-1274,-1281,-1289,-1296,
+-1300,-1301,-1299,-1296,-1294,-1293,-1293,-1291,-1289,-1285,-1279,-1272,-1264,-1257,-1249,-1241,-1233,-1225,-1216,-1206,-1195,
+-1186,-1179,-1173,-1166,-1158,-1150,-1142,-1135,-1129,-1121,-1112,-1104,-1096,-1089,-1079,-1066,-1054,-1045,-1040,-1038,-1036,
+-1033,-1030,-1027,-1024,-1021,-1018,-1017,-1016,-1014,-1008,-998,-987,-977,-970,-966,-961,-956,-948,-939,-927,-914,
+-900,-887,-873,-858,-842,-825,-808,-793,-782,-774,-770,-766,-763,-758,-753,-748,-743,-735,-723,-707,-691,
+-676,-664,-653,-643,-631,-617,-598,-574,-546,-516,-488,-464,-443,-424,-408,-394,-383,-371,-357,-342,-326,
+-312,-299,-283,-266,-250,-238,-229,-220,-207,-191,-177,-170,-167,-165,-159,-148,-135,-124,-115,-107,-99,
+-91,-83,-75,-64,-53,-44,-36,-30,-20,-6,11,27,37,43,47,53,64,81,103,132,164,
+196,228,258,289,322,355,387,415,443,472,504,536,566,593,619,648,678,709,740,772,806,
+841,875,905,933,964,994,1022,1042,1055,1066,1072,1065,1036,992,954,951,994,1073,1166,1258,1351,
+1454,1565,1675,1771,1857,1950,2061,2185,2301,2384,2422,2416,2375,2310,2237,2171,2121,2086,2055,2018,1974,
+1930,1894,1863,1831,1794,1757,1724,1694,1660,1619,1573,1531,1497,1467,1439,1413,1395,1386,1383,1379,1372,
+1363,1361,1365,1374,1380,1381,1378,1374,1367,1355,1334,1304,1273,1249,1241,1248,1265,1281,1292,1299,1303,
+1306,1299,1277,1243,1204,1164,1121,1067,999,917,827,731,625,510,393,290,214,167,140,116,88,
+53,17,-18,-53,-90,-127,-164,-197,-224,-247,-267,-289,-312,-336,-357,-377,-396,-416,-434,-450,-464,
+-480,-496,-513,-526,-537,-548,-565,-584,-602,-614,-623,-635,-654,-676,-692,-700,-705,-714,-727,-737,-737,
+-731,-724,-722,-723,-719,-709,-695,-682,-672,-661,-648,-635,-624,-615,-604,-587,-566,-545,-522,-497,-467,
+-435,-406,-384,-367,-349,-324,-292,-260,-231,-202,-170,-130,-86,-40,3,47,92,141,191,241,286,
+328,369,413,464,521,583,642,695,740,780,818,858,900,941,979,1017,1054,1093,1134,1174,1212,
+1249,1287,1325,1365,1404,1442,1479,1515,1548,1579,1610,1641,1674,1707,1738,1766,1792,1817,1843,1868,1889,
+1909,1930,1955,1984,2015,2042,2064,2086,2109,2134,2159,2181,2199,2215,2232,2252,2275,2298,2318,2334,2345,
+2351,2350,2340,2327,2315,2309,2309,2310,2309,2305,2302,2302,2304,2301,2292,2281,2273,2268,2264,2255,2243,
+2231,2226,2226,2225,2217,2204,2194,2196,2208,2215,2205,2173,2131,2101,2095,2107,2117,2103,2060,2002,1950,
+1918,1907,1904,1897,1882,1861,1838,1817,1796,1776,1759,1745,1735,1729,1726,1723,1719,1713,1705,1697,1690,
+1687,1699,1705,1716,1730,1744,1758,1771,1787,1808,1835,1863,1885,1900,1909,1919,1930,1944,1956,1966,1975,
+1982,1988,1992,1999,2012,2030,2050,2068,2085,2107,2136,2168,2196,2219,2243,2276,2317,2356,2387,2408,2431,
+2460,2490,2511,2521,2531,2556,2593,2625,2635,2625,2619,2639,2679,2711,2707,2667,2618,2596,2612,2654,2697,
+2725,2739,2747,2754,2761,2770,2783,2804,2834,2867,2896,2915,2923,2921,2915,2910,2911,2918,2926,2931,2933,
+2936,2943,2954,2964,2968,2970,2976,2989,3004,3015,3020,3027,3050,3097,3163,3234,3296,3345,3382,3412,3436,
+3449,3449,3438,3420,3400,3381,3364,3347,3332,3318,3307,3300,3296,3294,3288,3275,3251,3221,3196,3190,3210,
+3253,3302,3336,3345,3333,3316,3309,3313,3317,3310,3293,3276,3270,3274,3276,3269,3256,3251,3261,3282,3300,
+3308,3309,3315,3330,3350,3369,3389,3415,3452,3495,3536,3572,3610,3653,3700,3741,3774,3805,3843,3884,3919,
+3940,3957,3982,4020,4058,4079,4079,4078,4095,4131,4169,4188,4189,4191,4206,4228,4243,4245,4245,4257,4278,
+4290,4278,4243,4206,4179,4160,4140,4112,4084,4068,4059,4048,4027,4003,3988,3983,3975,3947,3900,3851,3816,
+3799,3785,3761,3726,3687,3650,3611,3564,3508,3454,3408,3371,3337,3302,3266,3233,3203,3172,3137,3100,3065,
+3035,3008,2980,2951,2923,2899,2879,2859,2836,2810,2781,2752,2728,2710,2697,2688,2679,2669,2659,2651,2647,
+2643,2638,2634,2632,2631,2629,2621,2608,2594,2584,2576,2566,2553,2537,2525,2519,2515,2509,2498,2485,2470,
+2454,2435,2412,2383,2352,2320,2287,2255,2224,2194,2163,2131,2097,2063,2032,2003,1975,1946,1916,1887,1859,
+1831,1804,1777,1753,1733,1717,1705,1696,1687,1675,1656,1631,1605,1587,1583,1594,1611,1620,1613,1586,1541,
+1487,1431,1380,1336,1299,1263,1224,1179,1133,1089,1051,1016,978,937,894,854,820,788,755,718,680,
+644,610,576,540,501,463,429,396,359,314,263,211,162,117,75,32,-11,-55,-96,-134,-169,
+-203,-240,-283,-330,-380,-430,-478,-523,-565,-607,-648,-691,-740,-791,-843,-891,-936,-980,-1026,-1076,-1126,
+-1175,-1222,-1269,-1317,-1365,-1412,-1457,-1501,-1545,-1589,-1632,-1675,-1722,-1775,-1828,-1878,-1922,-1960,-1999,-2041,-2086,
+-2131,-2174,-2216,-2258,-2300,-2341,-2380,-2418,-2458,-2499,-2540,-2577,-2610,-2639,-2664,-2688,-2712,-2741,-2777,-2816,-2852,
+-2883,-2908,-2934,-2964,-2995,-3023,-3047,-3070,-3097,-3127,-3156,-3175,-3185,-3192,-3204,-3226,-3250,-3271,-3286,-3296,-3306,
+-3318,-3331,-3344,-3359,-3377,-3396,-3413,-3425,-3432,-3437,-3445,-3456,-3467,-3476,-3481,-3483,-3482,-3479,-3476,-3474,-3475,
+-3479,-3483,-3485,-3483,-3479,-3477,-3476,-3475,-3473,-3469,-3465,-3461,-3456,-3449,-3439,-3428,-3420,-3414,-3408,-3402,-3393,
+-3383,-3374,-3367,-3361,-3353,-3343,-3331,-3317,-3302,-3286,-3269,-3254,-3240,-3227,-3214,-3199,-3180,-3159,-3138,-3118,-3103,
+-3089,-3075,-3060,-3042,-3023,-3004,-2984,-2962,-2939,-2916,-2898,-2884,-2871,-2853,-2831,-2807,-2788,-2772,-2755,-2731,-2700,
+-2666,-2634,-2604,-2574,-2542,-2509,-2478,-2450,-2422,-2392,-2362,-2331,-2301,-2268,-2229,-2186,-2140,-2095,-2051,-2006,-1960,
+-1913,-1869,-1829,-1794,-1760,-1724,-1685,-1645,-1607,-1572,-1541,-1516,-1495,-1474,-1449,-1417,-1376,-1331,-1286,-1243,-1198,
+-1142,-1066,-967,-850,-725,-603,-493,-395,-306,-224,-151,-96,-64,-54,-53,-46,-29,-5,14,25,33,
+41,52,64,78,102,142,188,214,191,112,0,-105,-168,-184,-172,-154,-138,-119,-87,-40,11,
+57,90,113,134,161,197,238,273,296,305,308,315,328,347,364,379,393,408,422,437,453,
+473,495,513,522,522,520,526,538,552,562,571,586,611,642,673,699,724,753,782,806,828,
+862,918,994,1069,1122,1149,1172,1213,1279,1350,1402,1418,1408,1392,1394,1424,1484,1564,1653,1738,1812,
+1874,1927,1976,2018,2051,2071,2081,2083,2080,2072,2059,2046,2041,2046,2061,2082,2107,2131,2146,2144,2118,
+2074,2025,1983,1953,1931,1916,1911,1923,1955,1998,2033,2035,1991,1910,1820,1763,1769,1843,1954,2057,2109,
+2098,2044,1986,1958,1974,2022,2076,2114,2127,2123,2115,2107,2097,2075,2037,1991,1945,1902,1859,1809,1754,
+1703,1663,1632,1599,1554,1495,1426,1354,1283,1217,1163,1124,1098,1076,1050,1022,997,980,966,945,911,
+869,828,794,766,741,720,707,701,691,670,646,640,669,729,792,827,819,783,744,713,682,
+635,569,501,452,431,431,435,431,417,400,383,368,353,336,318,297,274,252,235,223,217,
+210,202,192,186,185,185,183,172,154,130,106,82,61,44,31,21,10,-3,-21,-42,-64,
+-83,-101,-118,-134,-153,-173,-195,-220,-248,-277,-308,-337,-365,-394,-424,-459,-497,-536,-572,-604,-633,
+-661,-689,-718,-745,-769,-789,-806,-819,-832,-845,-860,-877,-894,-911,-925,-937,-946,-953,-961,-969,-977,
+-986,-994,-1003,-1015,-1030,-1047,-1063,-1074,-1083,-1091,-1099,-1107,-1114,-1119,-1126,-1135,-1146,-1156,-1165,-1174,-1182,
+-1190,-1195,-1196,-1196,-1195,-1197,-1201,-1206,-1210,-1215,-1220,-1225,-1228,-1230,-1231,-1233,-1236,-1239,-1242,-1246,-1250,
+-1254,-1259,-1264,-1268,-1271,-1273,-1273,-1274,-1277,-1283,-1289,-1292,-1290,-1285,-1279,-1271,-1261,-1251,-1241,-1234,-1232,
+-1232,-1231,-1229,-1229,-1231,-1233,-1233,-1230,-1224,-1221,-1222,-1225,-1226,-1224,-1220,-1219,-1220,-1222,-1225,-1227,-1229,
+-1231,-1233,-1236,-1241,-1249,-1258,-1265,-1269,-1272,-1276,-1283,-1292,-1298,-1301,-1300,-1298,-1296,-1295,-1291,-1286,-1281,
+-1277,-1275,-1274,-1270,-1264,-1255,-1246,-1239,-1232,-1224,-1214,-1203,-1192,-1182,-1172,-1163,-1154,-1146,-1139,-1134,-1129,
+-1122,-1114,-1107,-1102,-1098,-1092,-1080,-1065,-1053,-1046,-1044,-1043,-1039,-1034,-1030,-1029,-1030,-1028,-1024,-1020,-1017,
+-1014,-1008,-999,-988,-979,-974,-970,-966,-958,-948,-937,-925,-912,-897,-881,-865,-850,-836,-822,-809,-796,
+-785,-778,-773,-770,-767,-762,-756,-750,-742,-733,-721,-708,-695,-683,-672,-660,-647,-633,-617,-599,-577,
+-551,-521,-491,-463,-440,-419,-403,-388,-376,-362,-347,-332,-318,-306,-294,-279,-260,-242,-227,-216,-206,
+-195,-181,-168,-158,-153,-148,-141,-132,-124,-117,-108,-98,-88,-79,-74,-68,-61,-52,-42,-33,-24,
+-14,-1,11,23,31,36,42,51,65,83,106,135,168,202,234,265,295,325,355,387,418,
+450,481,511,539,565,591,621,653,685,716,746,779,814,850,881,910,940,973,1007,1036,1057,
+1071,1083,1089,1079,1046,997,958,954,997,1073,1160,1246,1334,1437,1555,1675,1785,1884,1984,2094,2209,
+2311,2378,2403,2390,2349,2293,2231,2175,2133,2109,2092,2073,2042,2001,1957,1914,1875,1839,1804,1770,1735,
+1696,1652,1607,1564,1526,1491,1459,1431,1412,1402,1397,1389,1374,1355,1338,1329,1331,1341,1353,1363,1371,
+1375,1376,1370,1355,1330,1304,1285,1278,1283,1292,1302,1309,1311,1306,1290,1264,1231,1198,1163,1118,1056,
+975,881,782,678,565,446,334,244,183,146,120,94,65,37,9,-19,-53,-94,-134,-171,-200,
+-223,-244,-265,-288,-312,-335,-357,-377,-396,-415,-435,-453,-470,-486,-501,-516,-530,-543,-559,-580,-601,
+-618,-628,-636,-648,-666,-685,-699,-705,-710,-718,-730,-740,-742,-738,-733,-730,-726,-719,-707,-694,-683,
+-674,-662,-647,-631,-617,-605,-591,-572,-549,-526,-504,-480,-452,-421,-392,-370,-353,-333,-307,-277,-248,
+-222,-196,-166,-129,-87,-44,-2,41,88,137,187,235,281,325,369,414,463,517,577,635,688,
+732,773,814,859,905,947,985,1020,1058,1099,1142,1184,1224,1262,1302,1344,1386,1426,1465,1501,1534,
+1563,1588,1614,1642,1673,1706,1738,1768,1798,1828,1856,1880,1901,1921,1947,1979,2013,2044,2070,2093,2116,
+2140,2164,2186,2206,2223,2240,2257,2275,2293,2311,2328,2344,2355,2361,2360,2352,2342,2334,2331,2332,2332,
+2330,2327,2325,2326,2326,2322,2312,2302,2297,2298,2296,2285,2266,2248,2239,2239,2238,2227,2210,2197,2199,
+2211,2219,2207,2177,2148,2143,2168,2208,2234,2221,2169,2092,2017,1960,1926,1908,1896,1884,1871,1857,1841,
+1824,1806,1787,1770,1759,1753,1751,1748,1741,1729,1715,1704,1698,1699,1722,1727,1732,1740,1754,1771,1788,
+1804,1820,1836,1855,1873,1891,1906,1919,1930,1937,1943,1950,1961,1973,1983,1989,1995,2006,2024,2046,2067,
+2086,2106,2133,2165,2198,2230,2262,2300,2341,2380,2410,2432,2453,2479,2507,2527,2538,2546,2565,2597,2634,
+2659,2668,2665,2658,2651,2637,2616,2597,2596,2620,2660,2698,2720,2727,2732,2744,2765,2790,2815,2838,2863,
+2889,2912,2928,2935,2932,2923,2912,2907,2911,2922,2936,2943,2941,2937,2936,2943,2955,2967,2977,2987,2998,
+3010,3020,3031,3050,3086,3141,3210,3279,3338,3383,3418,3446,3469,3482,3483,3470,3448,3426,3408,3395,3384,
+3370,3352,3332,3318,3313,3315,3315,3304,3279,3246,3222,3222,3252,3303,3357,3392,3401,3389,3370,3357,3352,
+3346,3332,3313,3298,3294,3297,3298,3293,3284,3284,3298,3320,3340,3352,3361,3373,3392,3412,3431,3452,3479,
+3515,3556,3595,3631,3669,3712,3757,3796,3828,3860,3897,3938,3972,3997,4020,4053,4095,4130,4142,4135,4132,
+4151,4191,4228,4244,4241,4241,4257,4281,4293,4284,4264,4252,4253,4257,4246,4219,4187,4160,4141,4122,4101,
+4082,4070,4062,4051,4034,4016,4006,4000,3986,3955,3912,3873,3850,3838,3822,3794,3755,3714,3675,3635,3587,
+3534,3485,3447,3417,3387,3354,3319,3287,3258,3227,3191,3152,3115,3083,3054,3024,2994,2966,2943,2924,2903,
+2880,2852,2824,2797,2774,2755,2740,2728,2717,2706,2696,2688,2683,2680,2678,2674,2669,2662,2652,2638,2622,
+2607,2597,2588,2579,2567,2556,2548,2545,2543,2537,2528,2518,2507,2495,2476,2450,2419,2388,2359,2331,2302,
+2273,2244,2214,2183,2150,2115,2080,2047,2017,1988,1960,1933,1907,1879,1850,1821,1796,1777,1762,1751,1739,
+1725,1708,1686,1663,1644,1634,1636,1647,1658,1659,1643,1610,1567,1518,1471,1427,1386,1347,1306,1264,1222,
+1181,1145,1110,1074,1032,987,944,908,877,848,816,779,742,705,670,633,595,558,523,491,458,
+416,365,310,259,214,175,138,99,59,18,-20,-58,-95,-132,-171,-214,-261,-311,-363,-413,-459,
+-501,-541,-584,-630,-680,-731,-781,-827,-873,-920,-969,-1019,-1066,-1111,-1157,-1206,-1256,-1305,-1351,-1394,-1437,
+-1482,-1528,-1573,-1618,-1665,-1716,-1767,-1815,-1858,-1896,-1936,-1980,-2027,-2073,-2117,-2158,-2199,-2240,-2279,-2319,-2359,
+-2401,-2443,-2483,-2519,-2550,-2579,-2606,-2630,-2655,-2684,-2720,-2760,-2798,-2829,-2855,-2881,-2910,-2941,-2969,-2992,-3015,
+-3041,-3073,-3103,-3125,-3138,-3148,-3163,-3186,-3211,-3232,-3247,-3259,-3272,-3288,-3304,-3318,-3333,-3349,-3366,-3382,-3392,
+-3398,-3402,-3409,-3419,-3430,-3439,-3445,-3449,-3451,-3449,-3445,-3442,-3443,-3448,-3453,-3454,-3451,-3447,-3445,-3446,-3447,
+-3446,-3441,-3436,-3434,-3433,-3428,-3419,-3407,-3398,-3392,-3387,-3378,-3367,-3356,-3348,-3344,-3340,-3333,-3321,-3308,-3297,
+-3287,-3276,-3261,-3244,-3228,-3213,-3199,-3183,-3164,-3143,-3121,-3101,-3084,-3070,-3059,-3046,-3031,-3011,-2989,-2966,-2943,
+-2921,-2902,-2885,-2871,-2858,-2842,-2822,-2801,-2781,-2762,-2742,-2715,-2682,-2647,-2615,-2590,-2567,-2544,-2518,-2490,-2460,
+-2428,-2394,-2357,-2321,-2285,-2248,-2209,-2165,-2120,-2074,-2031,-1989,-1948,-1908,-1869,-1832,-1797,-1764,-1731,-1698,-1662,
+-1624,-1584,-1549,-1526,-1516,-1511,-1500,-1471,-1426,-1377,-1334,-1300,-1269,-1227,-1166,-1084,-985,-872,-749,-619,-486,
+-359,-248,-165,-117,-102,-107,-116,-113,-97,-74,-55,-39,-21,3,28,46,55,69,100,144,172,
+151,70,-42,-143,-199,-209,-198,-187,-182,-168,-136,-89,-42,-5,20,44,74,110,148,182,207,
+222,231,238,249,264,282,299,315,331,347,362,375,387,401,420,439,452,457,459,464,475,
+488,500,513,531,557,587,615,641,669,702,736,764,786,814,858,920,985,1034,1066,1092,1132,
+1189,1250,1293,1308,1304,1299,1312,1353,1420,1505,1593,1675,1744,1799,1844,1883,1916,1942,1962,1978,1992,
+2000,1999,1991,1982,1980,1988,2002,2017,2035,2055,2070,2065,2030,1965,1888,1817,1762,1717,1673,1630,1599,
+1595,1624,1675,1725,1755,1759,1752,1756,1792,1861,1944,2007,2028,2006,1962,1929,1928,1963,2014,2057,2080,
+2081,2072,2063,2055,2041,2014,1974,1928,1883,1839,1795,1745,1696,1652,1617,1585,1545,1490,1422,1348,1275,
+1208,1148,1100,1065,1039,1015,987,958,932,913,895,868,829,788,753,730,711,690,665,645,634,
+631,626,618,611,614,625,635,635,630,636,660,690,694,648,556,448,366,331,338,361,377,
+376,362,342,323,306,292,276,258,236,211,189,174,166,161,155,149,143,141,140,136,126,
+110,90,70,52,36,21,8,-3,-14,-26,-41,-60,-82,-104,-125,-142,-158,-173,-189,-207,-228,
+-252,-280,-310,-339,-368,-395,-425,-458,-494,-530,-566,-599,-630,-661,-691,-722,-753,-783,-809,-828,-843,
+-854,-866,-881,-899,-918,-934,-948,-958,-967,-976,-987,-998,-1008,-1013,-1014,-1014,-1017,-1027,-1043,-1061,-1077,
+-1090,-1100,-1110,-1119,-1126,-1131,-1136,-1143,-1152,-1164,-1176,-1188,-1198,-1206,-1211,-1213,-1213,-1213,-1214,-1216,-1218,
+-1221,-1224,-1229,-1233,-1237,-1240,-1242,-1245,-1248,-1252,-1258,-1263,-1269,-1273,-1275,-1277,-1278,-1279,-1279,-1279,-1279,
+-1283,-1288,-1292,-1293,-1290,-1286,-1282,-1278,-1273,-1265,-1256,-1249,-1246,-1245,-1243,-1240,-1237,-1236,-1235,-1232,-1227,
+-1221,-1218,-1219,-1221,-1222,-1221,-1217,-1215,-1214,-1215,-1217,-1220,-1222,-1224,-1227,-1232,-1240,-1251,-1261,-1268,-1270,
+-1271,-1274,-1281,-1291,-1297,-1299,-1297,-1295,-1293,-1290,-1284,-1275,-1268,-1266,-1266,-1267,-1265,-1258,-1248,-1238,-1230,
+-1224,-1218,-1211,-1203,-1195,-1186,-1176,-1165,-1155,-1145,-1138,-1132,-1126,-1117,-1108,-1101,-1097,-1094,-1087,-1075,-1061,
+-1051,-1047,-1048,-1046,-1041,-1034,-1030,-1031,-1033,-1033,-1028,-1021,-1015,-1011,-1005,-997,-987,-980,-976,-974,-968,
+-958,-945,-933,-922,-911,-897,-881,-864,-848,-835,-823,-813,-803,-793,-786,-781,-777,-773,-766,-759,-751,
+-743,-735,-725,-715,-704,-693,-679,-663,-645,-627,-609,-592,-573,-550,-522,-492,-463,-438,-417,-399,-382,
+-367,-350,-334,-318,-304,-292,-281,-268,-252,-234,-218,-205,-194,-184,-173,-162,-152,-143,-134,-126,-122,
+-119,-117,-111,-101,-89,-80,-74,-69,-63,-54,-43,-32,-21,-10,0,11,21,28,35,43,54,
+69,89,115,145,179,213,245,274,301,326,354,384,418,452,484,512,537,562,591,625,658,
+688,716,744,777,814,850,881,910,940,975,1012,1043,1067,1084,1098,1104,1091,1054,1001,958,952,
+995,1077,1176,1276,1374,1477,1585,1695,1800,1904,2012,2126,2235,2320,2365,2372,2352,2321,2286,2247,2211,
+2182,2167,2162,2153,2129,2086,2030,1974,1925,1884,1846,1805,1760,1710,1660,1610,1565,1524,1490,1463,1442,
+1426,1414,1403,1389,1369,1342,1315,1297,1296,1312,1334,1353,1363,1367,1369,1372,1371,1362,1344,1324,1311,
+1306,1308,1312,1314,1312,1302,1282,1255,1224,1193,1155,1100,1022,925,819,711,603,492,382,285,211,
+161,127,97,66,39,17,-1,-26,-61,-102,-140,-171,-195,-217,-239,-264,-288,-311,-333,-355,-376,
+-397,-418,-438,-458,-476,-492,-505,-518,-532,-549,-569,-591,-612,-627,-638,-647,-660,-676,-693,-705,-713,
+-720,-728,-738,-745,-747,-746,-744,-742,-737,-726,-712,-698,-687,-676,-662,-644,-625,-609,-595,-578,-557,
+-533,-510,-489,-468,-442,-411,-381,-355,-334,-312,-286,-259,-232,-207,-181,-152,-120,-86,-51,-14,28,
+76,127,177,226,275,324,372,419,466,518,574,631,683,728,769,811,856,901,941,976,1010,
+1049,1092,1136,1178,1217,1258,1302,1347,1390,1428,1465,1499,1532,1560,1585,1610,1638,1671,1706,1741,1777,
+1813,1849,1879,1903,1921,1942,1971,2006,2041,2071,2096,2118,2141,2165,2187,2205,2222,2240,2258,2276,2292,
+2307,2324,2342,2357,2367,2370,2369,2366,2363,2360,2358,2356,2351,2344,2336,2329,2326,2325,2322,2318,2314,
+2314,2317,2316,2308,2293,2281,2275,2272,2262,2241,2216,2202,2206,2219,2222,2205,2175,2155,2165,2203,2249,
+2276,2265,2219,2150,2075,2010,1959,1924,1904,1892,1883,1873,1860,1844,1826,1807,1790,1777,1770,1767,1763,
+1753,1739,1725,1718,1718,1722,1747,1747,1746,1750,1763,1783,1804,1819,1830,1838,1848,1861,1879,1899,1917,
+1930,1934,1933,1935,1945,1961,1978,1989,1995,2003,2017,2038,2061,2082,2104,2132,2168,2208,2248,2286,2324,
+2362,2398,2428,2453,2477,2503,2530,2551,2562,2570,2584,2609,2642,2671,2687,2684,2663,2632,2603,2591,2609,
+2656,2717,2767,2788,2783,2768,2763,2776,2802,2830,2855,2877,2897,2915,2929,2936,2938,2937,2933,2926,2921,
+2922,2930,2941,2947,2945,2938,2935,2942,2956,2972,2983,2990,2995,3006,3024,3050,3087,3135,3192,3254,3314,
+3366,3410,3445,3473,3493,3503,3501,3488,3469,3451,3438,3431,3424,3411,3390,3364,3342,3331,3330,3329,3319,
+3297,3272,3256,3263,3294,3340,3385,3414,3421,3411,3395,3382,3372,3362,3347,3330,3317,3312,3313,3312,3308,
+3305,3313,3334,3362,3388,3408,3425,3444,3466,3488,3506,3523,3547,3580,3619,3659,3698,3738,3781,3822,3858,
+3888,3920,3957,3997,4032,4060,4086,4120,4159,4190,4202,4200,4204,4226,4261,4286,4290,4279,4275,4290,4312,
+4319,4301,4268,4241,4230,4229,4223,4206,4181,4159,4140,4124,4109,4096,4088,4079,4065,4049,4036,4031,4025,
+4008,3973,3931,3898,3879,3868,3850,3817,3774,3732,3693,3654,3610,3565,3525,3495,3469,3441,3408,3373,3340,
+3309,3275,3238,3199,3163,3130,3097,3062,3028,3000,2980,2963,2944,2920,2892,2865,2841,2819,2801,2784,2770,
+2756,2743,2731,2721,2715,2713,2711,2708,2701,2689,2672,2653,2634,2619,2608,2600,2591,2581,2574,2570,2570,
+2568,2564,2557,2551,2544,2534,2515,2487,2456,2426,2400,2376,2350,2322,2292,2262,2232,2198,2162,2125,2090,
+2057,2028,2001,1977,1952,1926,1898,1870,1845,1825,1811,1797,1781,1761,1738,1717,1701,1691,1689,1692,1697,
+1698,1690,1668,1635,1595,1552,1511,1471,1432,1391,1349,1308,1269,1235,1202,1166,1126,1082,1039,1001,969,
+942,912,877,840,802,765,729,690,652,616,584,553,516,468,412,357,310,273,241,208,172,
+134,96,60,23,-16,-57,-101,-147,-196,-247,-299,-348,-392,-432,-473,-518,-568,-620,-670,-716,-760,
+-806,-856,-906,-954,-999,-1043,-1091,-1143,-1197,-1247,-1292,-1333,-1376,-1423,-1471,-1519,-1566,-1613,-1661,-1709,-1753,
+-1794,-1834,-1878,-1925,-1974,-2020,-2063,-2103,-2142,-2182,-2221,-2260,-2302,-2345,-2386,-2424,-2457,-2486,-2515,-2543,-2572,
+-2600,-2632,-2668,-2706,-2742,-2773,-2800,-2828,-2858,-2890,-2917,-2940,-2961,-2987,-3018,-3050,-3075,-3093,-3108,-3127,-3151,
+-3176,-3196,-3211,-3223,-3238,-3255,-3272,-3287,-3301,-3316,-3333,-3348,-3360,-3367,-3372,-3377,-3385,-3392,-3399,-3406,-3413,
+-3417,-3416,-3412,-3409,-3410,-3416,-3423,-3424,-3419,-3413,-3412,-3416,-3421,-3421,-3417,-3412,-3409,-3408,-3403,-3393,-3380,
+-3371,-3367,-3364,-3357,-3346,-3334,-3327,-3324,-3322,-3315,-3303,-3290,-3278,-3269,-3258,-3243,-3226,-3210,-3196,-3183,-3168,
+-3150,-3129,-3107,-3085,-3066,-3050,-3038,-3026,-3011,-2991,-2969,-2947,-2927,-2909,-2893,-2877,-2862,-2847,-2831,-2813,-2792,
+-2771,-2749,-2725,-2696,-2664,-2633,-2606,-2586,-2569,-2549,-2523,-2491,-2456,-2420,-2381,-2341,-2301,-2261,-2224,-2187,-2149,
+-2109,-2068,-2028,-1988,-1949,-1913,-1877,-1840,-1804,-1769,-1736,-1705,-1673,-1637,-1597,-1560,-1538,-1532,-1536,-1531,-1506,
+-1465,-1419,-1381,-1353,-1324,-1284,-1231,-1168,-1096,-1007,-890,-741,-573,-410,-279,-196,-161,-159,-169,-172,-160,
+-138,-116,-100,-85,-63,-33,-3,16,27,44,79,123,144,110,16,-100,-192,-233,-233,-221,-218,
+-218,-206,-171,-126,-89,-67,-50,-25,14,58,95,119,132,142,154,168,184,201,220,240,259,
+277,293,306,317,326,337,352,368,382,390,394,400,411,427,445,464,485,508,533,559,587,
+620,659,698,728,748,766,795,838,889,936,974,1010,1051,1099,1144,1175,1186,1188,1196,1224,1277,
+1353,1442,1532,1611,1674,1723,1760,1791,1815,1836,1855,1874,1892,1906,1913,1915,1919,1927,1936,1942,1945,
+1953,1972,1994,1999,1965,1890,1792,1697,1616,1543,1466,1385,1317,1287,1313,1389,1493,1599,1686,1749,1793,
+1828,1861,1890,1906,1902,1881,1858,1854,1879,1930,1988,2033,2054,2053,2043,2032,2018,1995,1958,1911,1861,
+1816,1775,1733,1688,1640,1595,1555,1515,1468,1411,1347,1279,1213,1153,1099,1055,1022,995,967,934,898,
+867,843,819,790,753,717,689,671,658,640,616,595,586,588,596,599,593,576,548,511,475,
+459,477,530,591,621,594,512,407,317,268,261,277,297,309,309,300,283,264,244,225,207,
+187,166,145,129,118,112,106,99,93,90,89,87,78,62,43,26,14,5,-3,-14,-27,
+-39,-50,-61,-75,-95,-119,-145,-169,-189,-204,-217,-228,-241,-259,-282,-309,-338,-367,-395,-424,-455,
+-489,-524,-560,-595,-628,-660,-692,-724,-757,-791,-823,-848,-864,-875,-886,-902,-921,-941,-958,-970,-980,
+-987,-996,-1007,-1019,-1029,-1035,-1034,-1030,-1028,-1032,-1043,-1059,-1076,-1091,-1105,-1117,-1128,-1136,-1140,-1144,-1148,
+-1156,-1168,-1180,-1192,-1203,-1212,-1220,-1226,-1230,-1231,-1232,-1232,-1233,-1236,-1239,-1243,-1248,-1252,-1257,-1261,-1263,
+-1266,-1269,-1274,-1281,-1286,-1289,-1288,-1286,-1285,-1285,-1286,-1287,-1288,-1289,-1290,-1290,-1288,-1283,-1279,-1279,-1280,
+-1281,-1279,-1274,-1270,-1267,-1266,-1264,-1260,-1255,-1249,-1243,-1236,-1227,-1220,-1217,-1218,-1221,-1223,-1221,-1217,-1213,
+-1210,-1209,-1207,-1208,-1210,-1213,-1218,-1226,-1235,-1246,-1256,-1263,-1266,-1268,-1272,-1280,-1289,-1294,-1295,-1294,-1292,
+-1290,-1286,-1280,-1273,-1268,-1266,-1266,-1264,-1259,-1250,-1239,-1230,-1222,-1216,-1211,-1207,-1202,-1196,-1190,-1182,-1173,
+-1162,-1152,-1143,-1134,-1125,-1116,-1106,-1098,-1094,-1090,-1083,-1072,-1060,-1052,-1049,-1048,-1046,-1040,-1034,-1031,-1033,
+-1035,-1033,-1026,-1018,-1012,-1008,-1003,-996,-987,-980,-975,-971,-964,-951,-936,-923,-912,-904,-894,-882,-866,
+-850,-835,-823,-814,-805,-798,-791,-784,-778,-772,-764,-756,-749,-743,-738,-732,-723,-711,-698,-682,-665,
+-646,-627,-609,-593,-574,-552,-524,-493,-463,-438,-417,-398,-381,-363,-346,-330,-314,-299,-285,-272,-259,
+-247,-233,-218,-203,-189,-178,-169,-160,-151,-140,-129,-121,-118,-118,-117,-112,-101,-90,-80,-72,-66,
+-58,-48,-36,-24,-13,-2,8,17,24,32,39,49,62,80,103,130,160,192,222,252,279,
+303,327,352,381,413,446,476,502,527,554,588,624,658,685,709,736,770,808,844,876,905,
+937,974,1012,1045,1071,1092,1107,1112,1096,1057,1004,962,957,1004,1097,1216,1340,1455,1557,1647,1731,
+1818,1916,2030,2150,2253,2320,2341,2329,2305,2287,2279,2274,2268,2262,2263,2267,2262,2235,2181,2108,2033,
+1968,1913,1859,1802,1742,1686,1634,1586,1541,1500,1468,1448,1435,1423,1409,1391,1372,1350,1324,1298,1280,
+1282,1304,1335,1357,1361,1351,1343,1343,1350,1355,1352,1343,1333,1325,1318,1310,1302,1294,1285,1272,1250,
+1220,1181,1127,1054,958,846,729,617,510,408,314,236,178,137,104,70,38,13,-2,-17,-39,
+-73,-109,-141,-164,-184,-207,-235,-263,-288,-309,-331,-354,-379,-402,-422,-441,-461,-479,-496,-510,-523,
+-538,-557,-578,-599,-617,-631,-643,-654,-667,-682,-697,-710,-722,-733,-742,-748,-751,-750,-750,-752,-752,
+-749,-738,-724,-710,-697,-683,-666,-644,-622,-602,-584,-564,-541,-518,-498,-482,-463,-439,-408,-374,-343,
+-317,-293,-269,-245,-221,-195,-167,-138,-110,-85,-60,-30,9,57,109,161,212,264,316,368,417,
+464,516,573,631,684,729,768,807,847,887,924,958,994,1035,1078,1121,1160,1199,1243,1291,1337,
+1377,1410,1442,1475,1509,1541,1570,1599,1632,1670,1710,1750,1789,1830,1868,1899,1922,1939,1960,1989,2025,
+2060,2088,2111,2135,2160,2183,2202,2218,2235,2255,2277,2296,2312,2328,2347,2367,2382,2388,2386,2383,2383,
+2386,2388,2385,2377,2366,2354,2342,2330,2322,2317,2317,2319,2323,2326,2327,2325,2321,2318,2320,2322,2316,
+2297,2266,2238,2227,2233,2243,2239,2215,2183,2162,2166,2187,2210,2220,2210,2185,2148,2102,2049,1996,1952,
+1922,1905,1894,1882,1869,1856,1843,1829,1815,1802,1791,1783,1775,1764,1752,1743,1741,1744,1747,1760,1756,
+1753,1757,1770,1787,1804,1818,1830,1840,1849,1859,1871,1888,1908,1926,1935,1936,1935,1940,1955,1973,1987,
+1995,2001,2012,2031,2055,2080,2107,2140,2181,2227,2271,2310,2345,2379,2412,2444,2474,2502,2530,2555,2576,
+2591,2604,2619,2638,2660,2677,2682,2670,2645,2617,2605,2626,2683,2763,2838,2880,2880,2854,2827,2818,2829,
+2849,2866,2879,2892,2907,2921,2933,2941,2947,2953,2956,2952,2942,2934,2934,2940,2947,2949,2946,2946,2953,
+2966,2978,2984,2985,2990,3006,3038,3082,3133,3184,3233,3282,3331,3381,3428,3468,3496,3511,3515,3511,3503,
+3494,3487,3483,3480,3473,3457,3430,3396,3365,3345,3334,3329,3321,3309,3297,3292,3299,3321,3350,3378,3397,
+3402,3397,3386,3375,3367,3359,3349,3339,3331,3327,3326,3325,3325,3330,3348,3379,3416,3449,3474,3494,3516,
+3542,3566,3585,3601,3622,3651,3689,3731,3773,3813,3850,3884,3915,3945,3978,4017,4057,4092,4118,4139,4163,
+4190,4216,4236,4253,4273,4299,4321,4327,4317,4302,4299,4312,4327,4326,4303,4270,4243,4231,4229,4225,4213,
+4194,4173,4154,4136,4124,4117,4113,4104,4089,4071,4058,4053,4047,4026,3990,3948,3915,3899,3887,3868,3833,
+3789,3747,3709,3674,3637,3602,3572,3548,3524,3496,3463,3427,3393,3359,3321,3281,3242,3206,3172,3137,3100,
+3066,3040,3023,3006,2985,2956,2925,2897,2876,2858,2841,2824,2807,2792,2777,2763,2751,2744,2741,2739,2736,
+2728,2713,2694,2672,2653,2638,2627,2619,2611,2603,2597,2594,2593,2591,2588,2584,2581,2577,2568,2550,2523,
+2494,2467,2443,2420,2393,2363,2332,2302,2271,2237,2202,2166,2131,2099,2069,2042,2017,1995,1972,1948,1922,
+1897,1876,1859,1841,1820,1795,1770,1753,1744,1743,1745,1745,1740,1730,1715,1692,1661,1625,1587,1549,1512,
+1475,1437,1398,1360,1324,1289,1255,1216,1174,1132,1094,1063,1037,1010,977,939,899,861,824,787,748,
+709,674,643,609,566,514,458,409,373,345,318,285,246,206,169,134,98,57,14,-32,-81,
+-133,-187,-239,-286,-327,-366,-408,-456,-509,-561,-608,-650,-693,-739,-790,-841,-888,-932,-977,-1027,-1082,
+-1137,-1186,-1229,-1270,-1313,-1360,-1409,-1459,-1507,-1555,-1603,-1648,-1689,-1728,-1768,-1813,-1863,-1914,-1961,-2004,-2043,
+-2082,-2122,-2163,-2203,-2245,-2287,-2328,-2364,-2395,-2424,-2452,-2481,-2511,-2543,-2575,-2610,-2644,-2677,-2707,-2736,-2767,
+-2801,-2835,-2865,-2889,-2913,-2940,-2971,-3002,-3029,-3049,-3068,-3089,-3114,-3138,-3157,-3172,-3186,-3202,-3219,-3236,-3250,
+-3264,-3279,-3297,-3314,-3328,-3337,-3343,-3349,-3356,-3364,-3371,-3378,-3384,-3387,-3386,-3382,-3379,-3382,-3388,-3394,-3395,
+-3388,-3381,-3379,-3383,-3389,-3391,-3387,-3382,-3379,-3377,-3372,-3362,-3350,-3342,-3339,-3339,-3334,-3324,-3312,-3304,-3302,
+-3299,-3293,-3282,-3269,-3257,-3245,-3232,-3217,-3200,-3185,-3173,-3161,-3148,-3130,-3110,-3088,-3066,-3047,-3031,-3019,-3007,
+-2993,-2974,-2952,-2932,-2915,-2901,-2886,-2869,-2852,-2836,-2821,-2804,-2783,-2758,-2733,-2706,-2678,-2651,-2625,-2604,-2586,
+-2569,-2544,-2512,-2473,-2434,-2397,-2360,-2321,-2281,-2240,-2202,-2169,-2138,-2105,-2070,-2031,-1992,-1954,-1919,-1885,-1850,
+-1813,-1777,-1744,-1714,-1686,-1653,-1615,-1580,-1556,-1548,-1548,-1542,-1521,-1489,-1457,-1434,-1413,-1385,-1342,-1290,-1240,
+-1190,-1124,-1016,-856,-662,-474,-329,-248,-222,-224,-227,-215,-189,-160,-139,-126,-114,-95,-70,-47,-32,
+-18,9,60,114,131,83,-24,-148,-236,-268,-262,-252,-255,-259,-245,-207,-164,-136,-126,-117,-90,
+-46,1,34,49,55,62,77,96,117,139,162,185,204,219,228,237,246,256,269,283,298,
+311,320,325,332,344,363,387,412,435,457,478,503,533,569,610,649,679,698,712,732,763,
+804,847,888,925,963,1000,1033,1055,1068,1079,1097,1134,1193,1271,1362,1452,1530,1591,1637,1673,1704,
+1730,1751,1768,1783,1796,1808,1819,1833,1851,1869,1878,1875,1867,1869,1891,1921,1931,1897,1816,1710,1605,
+1512,1422,1324,1222,1142,1115,1157,1262,1404,1549,1673,1761,1808,1820,1811,1794,1779,1767,1758,1757,1774,
+1816,1880,1950,2005,2034,2038,2028,2012,1992,1960,1915,1859,1804,1758,1720,1683,1640,1589,1534,1479,1428,
+1380,1332,1282,1229,1174,1121,1072,1030,996,964,928,888,846,807,774,747,720,692,666,645,627,
+610,589,567,551,547,555,566,571,562,537,497,447,399,369,371,405,454,494,504,478,423,
+357,294,246,216,208,216,231,242,239,224,200,176,155,137,119,102,87,76,68,60,50,
+41,38,38,39,33,18,-2,-19,-29,-31,-33,-39,-51,-65,-78,-89,-102,-119,-143,-170,-197,
+-220,-237,-248,-255,-261,-272,-290,-314,-342,-371,-399,-428,-457,-489,-523,-559,-597,-633,-666,-696,-726,
+-758,-793,-828,-859,-880,-894,-907,-922,-942,-962,-981,-995,-1005,-1012,-1018,-1026,-1034,-1044,-1051,-1053,-1052,
+-1048,-1047,-1052,-1062,-1077,-1093,-1109,-1125,-1137,-1145,-1149,-1151,-1156,-1164,-1174,-1185,-1195,-1205,-1216,-1227,-1237,
+-1244,-1248,-1250,-1251,-1254,-1257,-1262,-1266,-1270,-1274,-1278,-1281,-1282,-1283,-1284,-1287,-1292,-1297,-1298,-1295,-1292,
+-1291,-1292,-1295,-1296,-1296,-1295,-1295,-1293,-1289,-1284,-1281,-1281,-1284,-1288,-1290,-1289,-1289,-1288,-1287,-1284,-1279,
+-1273,-1266,-1258,-1248,-1237,-1228,-1224,-1225,-1226,-1226,-1223,-1218,-1213,-1209,-1204,-1200,-1198,-1199,-1205,-1214,-1223,
+-1232,-1242,-1250,-1257,-1264,-1270,-1276,-1283,-1288,-1291,-1290,-1289,-1289,-1288,-1286,-1283,-1280,-1277,-1275,-1271,-1264,
+-1253,-1242,-1233,-1225,-1219,-1213,-1207,-1201,-1196,-1191,-1187,-1181,-1174,-1164,-1153,-1142,-1132,-1123,-1115,-1106,-1099,
+-1093,-1088,-1082,-1073,-1063,-1054,-1047,-1044,-1040,-1037,-1034,-1034,-1034,-1034,-1029,-1021,-1013,-1009,-1006,-1003,-997,
+-988,-979,-972,-966,-957,-943,-927,-912,-901,-893,-885,-875,-862,-847,-832,-820,-810,-802,-795,-788,-781,
+-774,-766,-758,-751,-746,-743,-740,-735,-725,-712,-699,-687,-676,-662,-645,-625,-605,-583,-557,-527,-493,
+-462,-436,-416,-399,-383,-366,-350,-336,-322,-307,-290,-273,-260,-249,-238,-224,-207,-189,-175,-164,-155,
+-146,-134,-124,-117,-114,-111,-105,-96,-85,-74,-65,-56,-47,-37,-27,-16,-5,6,17,26,33,
+39,45,53,64,80,100,125,151,177,202,225,250,276,303,328,353,380,410,440,468,493,
+518,549,585,622,655,683,709,739,775,812,847,878,910,945,982,1019,1052,1080,1102,1117,1118,
+1099,1059,1012,978,981,1032,1133,1269,1415,1546,1648,1720,1776,1839,1928,2043,2165,2263,2313,2314,2287,
+2259,2253,2269,2295,2319,2340,2360,2375,2372,2339,2270,2178,2083,1996,1918,1840,1762,1690,1635,1594,1560,
+1521,1480,1446,1425,1416,1408,1393,1372,1351,1332,1312,1291,1278,1282,1308,1342,1364,1362,1341,1320,1313,
+1319,1331,1339,1342,1339,1331,1313,1288,1265,1252,1249,1247,1234,1201,1146,1070,975,865,746,628,517,
+416,325,246,183,139,106,76,44,14,-7,-21,-34,-56,-86,-115,-138,-155,-174,-201,-233,-263,
+-286,-306,-328,-354,-382,-405,-422,-438,-456,-475,-493,-508,-524,-541,-562,-583,-603,-619,-633,-646,-660,
+-674,-688,-701,-716,-731,-744,-753,-755,-754,-752,-753,-757,-759,-756,-747,-734,-720,-707,-691,-671,-647,
+-623,-600,-578,-554,-529,-508,-492,-480,-465,-442,-411,-376,-342,-312,-286,-264,-244,-223,-199,-170,-139,
+-110,-86,-64,-37,0,46,97,148,198,251,305,358,408,457,510,569,629,683,727,764,799,
+834,871,906,942,981,1024,1067,1107,1143,1183,1229,1279,1324,1359,1387,1415,1449,1487,1524,1559,1593,
+1632,1674,1717,1757,1796,1835,1873,1906,1930,1950,1973,2004,2039,2072,2099,2123,2148,2173,2196,2213,2227,
+2246,2272,2300,2323,2341,2357,2376,2396,2409,2410,2403,2397,2398,2403,2406,2401,2390,2378,2367,2357,2345,
+2333,2326,2326,2332,2340,2343,2340,2333,2330,2334,2345,2353,2346,2322,2290,2265,2257,2264,2270,2261,2236,
+2206,2185,2175,2169,2160,2149,2143,2142,2139,2121,2081,2029,1979,1944,1924,1910,1897,1885,1878,1873,1867,
+1854,1837,1819,1804,1792,1780,1769,1763,1761,1761,1760,1756,1753,1755,1763,1774,1783,1790,1799,1817,1840,
+1860,1870,1874,1880,1895,1918,1937,1946,1946,1947,1956,1971,1986,1996,2004,2017,2038,2065,2094,2126,2164,
+2208,2255,2299,2337,2369,2401,2434,2468,2500,2528,2553,2576,2598,2619,2639,2659,2676,2685,2684,2671,2650,
+2631,2624,2643,2695,2774,2858,2918,2936,2916,2881,2856,2855,2868,2882,2888,2889,2894,2908,2925,2939,2951,
+2960,2969,2973,2967,2954,2940,2934,2938,2948,2956,2960,2964,2970,2978,2985,2987,2988,2998,3023,3065,3116,
+3167,3211,3251,3291,3337,3390,3444,3489,3517,3528,3526,3522,3520,3522,3526,3527,3524,3511,3488,3454,3415,
+3376,3347,3330,3322,3321,3321,3321,3321,3323,3328,3338,3349,3360,3365,3361,3352,3342,3335,3332,3332,3333,
+3335,3340,3345,3351,3358,3373,3401,3439,3481,3516,3540,3558,3580,3607,3636,3661,3681,3701,3729,3767,3808,
+3847,3880,3908,3936,3965,3997,4033,4073,4113,4147,4169,4180,4185,4194,4213,4244,4283,4320,4344,4350,4339,
+4323,4315,4321,4333,4336,4321,4294,4267,4252,4247,4245,4239,4228,4212,4193,4172,4152,4139,4134,4133,4127,
+4110,4090,4075,4069,4062,4042,4006,3965,3934,3919,3910,3893,3860,3816,3770,3730,3696,3666,3639,3617,3597,
+3573,3545,3511,3477,3443,3406,3365,3322,3282,3246,3213,3180,3146,3117,3094,3076,3054,3024,2987,2952,2926,
+2908,2893,2878,2860,2841,2824,2807,2792,2780,2772,2768,2766,2762,2753,2739,2721,2700,2682,2668,2658,2650,
+2643,2636,2629,2624,2620,2617,2613,2610,2607,2603,2595,2579,2557,2532,2509,2486,2461,2434,2403,2371,2339,
+2306,2272,2238,2205,2175,2146,2116,2086,2059,2037,2018,1997,1973,1947,1922,1900,1877,1853,1828,1807,1795,
+1793,1796,1796,1790,1776,1759,1740,1718,1692,1660,1623,1587,1552,1519,1486,1451,1415,1377,1341,1303,1265,
+1225,1188,1156,1129,1104,1075,1039,999,957,918,881,844,806,768,732,696,657,611,560,511,473,
+447,426,400,364,320,276,236,199,162,121,76,29,-19,-71,-124,-175,-221,-261,-300,-344,-395,
+-449,-499,-543,-583,-625,-674,-726,-777,-825,-869,-914,-965,-1019,-1071,-1119,-1163,-1205,-1248,-1295,-1344,-1393,
+-1442,-1490,-1538,-1582,-1621,-1659,-1699,-1746,-1798,-1849,-1897,-1939,-1978,-2018,-2059,-2101,-2143,-2185,-2226,-2267,-2305,
+-2339,-2368,-2396,-2423,-2453,-2484,-2517,-2550,-2581,-2610,-2639,-2669,-2703,-2739,-2775,-2808,-2837,-2866,-2896,-2927,-2955,
+-2979,-3000,-3022,-3047,-3073,-3097,-3116,-3131,-3146,-3164,-3182,-3199,-3213,-3227,-3242,-3260,-3278,-3294,-3304,-3311,-3318,
+-3328,-3338,-3347,-3353,-3356,-3356,-3354,-3353,-3353,-3356,-3360,-3363,-3361,-3355,-3348,-3345,-3347,-3351,-3353,-3350,-3346,
+-3344,-3343,-3340,-3332,-3323,-3316,-3313,-3312,-3307,-3298,-3288,-3279,-3275,-3271,-3265,-3256,-3244,-3233,-3222,-3208,-3192,
+-3176,-3161,-3150,-3139,-3125,-3107,-3087,-3066,-3045,-3027,-3013,-3003,-2993,-2979,-2961,-2940,-2920,-2904,-2889,-2873,-2855,
+-2838,-2822,-2809,-2793,-2771,-2744,-2715,-2688,-2663,-2640,-2619,-2600,-2580,-2556,-2524,-2485,-2444,-2405,-2372,-2341,-2307,
+-2269,-2230,-2193,-2162,-2133,-2102,-2067,-2029,-1991,-1954,-1921,-1890,-1858,-1825,-1790,-1757,-1728,-1699,-1668,-1634,-1601,
+-1577,-1565,-1559,-1549,-1531,-1509,-1492,-1482,-1472,-1447,-1403,-1350,-1305,-1267,-1216,-1121,-967,-770,-572,-418,-328,
+-293,-282,-268,-239,-202,-170,-150,-141,-132,-116,-97,-83,-75,-62,-28,28,83,96,38,-76,-201,
+-287,-316,-310,-303,-308,-312,-296,-258,-217,-194,-187,-179,-151,-105,-58,-30,-21,-19,-12,2,23,
+46,72,100,126,144,150,151,156,167,184,201,215,227,239,249,257,266,278,297,322,350,
+376,400,422,448,479,514,550,584,611,632,649,670,698,734,773,810,844,874,902,927,949,
+968,988,1014,1053,1111,1189,1279,1368,1446,1505,1551,1589,1624,1656,1681,1697,1705,1709,1714,1727,1749,
+1776,1797,1803,1795,1787,1798,1831,1868,1874,1828,1737,1628,1527,1439,1350,1251,1156,1097,1104,1183,1311,
+1456,1589,1691,1754,1777,1763,1729,1692,1668,1662,1668,1684,1714,1765,1834,1910,1971,2005,2011,1998,1978,
+1954,1920,1873,1816,1758,1710,1673,1640,1598,1543,1477,1410,1353,1309,1272,1236,1195,1149,1102,1058,1018,
+978,935,888,839,792,751,718,690,668,650,634,618,595,567,538,515,505,509,520,526,522,
+506,480,447,411,375,341,317,311,328,368,420,465,482,455,387,297,212,157,140,151,170,
+181,177,160,139,116,95,74,56,41,31,23,15,4,-6,-11,-10,-7,-10,-22,-42,-61,
+-71,-71,-66,-66,-75,-91,-109,-126,-142,-160,-181,-206,-230,-252,-268,-278,-283,-287,-294,-308,-330,
+-357,-388,-418,-446,-472,-499,-529,-564,-604,-644,-679,-708,-733,-759,-791,-827,-862,-890,-911,-927,-943,
+-961,-981,-1001,-1017,-1029,-1038,-1043,-1047,-1052,-1058,-1066,-1072,-1075,-1072,-1068,-1066,-1070,-1081,-1098,-1116,-1134,
+-1147,-1154,-1158,-1161,-1167,-1175,-1185,-1195,-1204,-1213,-1224,-1236,-1249,-1258,-1264,-1268,-1272,-1277,-1284,-1290,-1294,
+-1297,-1298,-1300,-1300,-1300,-1299,-1298,-1299,-1301,-1303,-1303,-1301,-1300,-1301,-1304,-1307,-1308,-1307,-1307,-1306,-1306,
+-1303,-1298,-1294,-1292,-1292,-1294,-1296,-1298,-1300,-1301,-1299,-1294,-1287,-1280,-1275,-1270,-1263,-1254,-1245,-1241,-1238,
+-1236,-1231,-1224,-1217,-1212,-1208,-1203,-1199,-1196,-1197,-1203,-1211,-1220,-1227,-1233,-1240,-1248,-1258,-1269,-1279,-1285,
+-1287,-1287,-1286,-1285,-1286,-1286,-1285,-1284,-1284,-1283,-1280,-1273,-1261,-1248,-1236,-1229,-1223,-1217,-1210,-1201,-1193,
+-1187,-1182,-1178,-1173,-1166,-1157,-1146,-1134,-1125,-1118,-1112,-1105,-1098,-1091,-1085,-1079,-1072,-1063,-1052,-1043,-1036,
+-1034,-1034,-1035,-1036,-1035,-1030,-1023,-1015,-1008,-1004,-1003,-1000,-995,-987,-978,-969,-961,-950,-938,-923,-908,
+-895,-884,-875,-866,-855,-843,-831,-819,-809,-800,-792,-784,-778,-772,-765,-758,-752,-748,-746,-744,-738,
+-726,-713,-703,-697,-691,-680,-659,-632,-603,-576,-548,-517,-484,-453,-428,-411,-396,-382,-366,-351,-340,
+-328,-314,-296,-277,-262,-252,-242,-228,-210,-191,-174,-161,-150,-138,-126,-116,-110,-105,-99,-88,-75,
+-62,-52,-44,-34,-23,-12,-3,5,14,26,38,48,55,60,66,75,88,105,126,150,174,
+194,212,230,252,279,308,336,362,389,419,449,477,503,530,562,598,634,668,699,731,767,
+804,840,871,902,935,972,1008,1040,1068,1094,1117,1130,1127,1103,1066,1031,1012,1026,1082,1186,1329,
+1486,1627,1727,1784,1818,1862,1941,2053,2171,2261,2299,2289,2255,2228,2229,2256,2296,2336,2373,2408,2435,
+2441,2408,2333,2231,2122,2021,1926,1830,1735,1655,1601,1572,1551,1519,1475,1433,1407,1397,1392,1380,1360,
+1339,1321,1304,1288,1276,1281,1305,1338,1361,1361,1342,1319,1305,1305,1311,1318,1324,1326,1316,1288,1248,
+1210,1190,1191,1197,1186,1144,1071,975,867,754,639,529,427,335,254,188,137,102,75,50,23,
+-2,-23,-37,-52,-73,-98,-121,-139,-153,-174,-203,-236,-263,-283,-301,-323,-351,-378,-399,-414,-426,
+-442,-462,-481,-497,-513,-531,-554,-577,-598,-614,-629,-645,-663,-679,-694,-707,-722,-736,-748,-756,-758,
+-757,-758,-762,-766,-767,-762,-752,-740,-727,-713,-696,-675,-652,-628,-604,-579,-553,-528,-507,-492,-481,
+-467,-446,-417,-384,-351,-321,-294,-271,-253,-236,-215,-187,-154,-120,-90,-62,-31,6,51,99,148,
+196,248,301,354,405,455,508,566,624,677,721,757,790,825,861,898,936,978,1022,1063,1100,
+1135,1174,1220,1267,1309,1342,1371,1403,1442,1486,1526,1564,1600,1640,1683,1725,1762,1796,1833,1871,1907,
+1937,1964,1993,2026,2060,2089,2114,2136,2161,2185,2205,2218,2233,2255,2287,2322,2350,2369,2385,2402,2419,
+2428,2425,2414,2406,2406,2412,2415,2410,2399,2390,2385,2381,2373,2361,2352,2351,2357,2364,2365,2357,2346,
+2340,2343,2352,2357,2349,2326,2299,2279,2275,2280,2281,2272,2253,2234,2220,2205,2185,2162,2146,2148,2162,
+2170,2152,2106,2047,1996,1965,1949,1938,1927,1917,1913,1911,1905,1890,1868,1845,1826,1812,1800,1788,1778,
+1769,1762,1756,1734,1732,1744,1763,1780,1786,1783,1785,1805,1840,1873,1889,1888,1884,1891,1913,1939,1955,
+1959,1960,1965,1978,1994,2008,2023,2042,2068,2097,2128,2161,2198,2242,2287,2330,2367,2400,2434,2468,2500,
+2528,2551,2573,2595,2619,2644,2668,2688,2700,2701,2689,2671,2655,2652,2670,2713,2777,2848,2906,2934,2926,
+2895,2864,2851,2861,2880,2893,2895,2893,2897,2911,2929,2944,2953,2959,2963,2964,2959,2948,2938,2936,2944,
+2956,2968,2975,2980,2985,2991,2996,3000,3008,3025,3055,3095,3139,3181,3219,3254,3294,3344,3403,3463,3511,
+3538,3544,3539,3533,3533,3539,3545,3544,3534,3515,3487,3451,3410,3370,3338,3319,3314,3319,3329,3336,3337,
+3332,3324,3320,3322,3329,3332,3328,3316,3302,3293,3293,3302,3315,3331,3350,3370,3390,3409,3432,3464,3504,
+3545,3577,3598,3613,3634,3664,3700,3733,3758,3781,3809,3844,3881,3913,3936,3957,3981,4012,4048,4086,4123,
+4161,4195,4217,4222,4212,4203,4213,4249,4301,4345,4361,4348,4324,4313,4324,4347,4359,4345,4311,4276,4257,
+4255,4259,4257,4246,4232,4220,4206,4189,4169,4153,4147,4145,4138,4119,4097,4083,4079,4077,4062,4031,3993,
+3965,3954,3950,3938,3908,3861,3809,3762,3722,3692,3669,3651,3633,3611,3583,3550,3516,3482,3444,3403,3360,
+3320,3285,3254,3225,3198,3173,3152,3129,3099,3062,3022,2988,2965,2949,2935,2918,2897,2876,2856,2837,2821,
+2809,2802,2799,2796,2791,2781,2767,2750,2732,2716,2703,2693,2686,2680,2673,2666,2660,2655,2650,2645,2639,
+2633,2627,2618,2604,2587,2567,2547,2526,2502,2474,2445,2414,2381,2346,2309,2275,2245,2219,2194,2166,2135,
+2107,2084,2065,2045,2020,1990,1959,1931,1907,1885,1866,1852,1846,1847,1848,1843,1830,1810,1790,1772,1753,
+1730,1699,1664,1628,1595,1565,1535,1502,1465,1426,1387,1350,1316,1283,1252,1222,1194,1166,1134,1097,1057,
+1015,974,936,900,863,825,787,747,703,657,613,576,549,529,507,478,437,391,345,303,263,
+222,177,131,85,39,-9,-58,-106,-150,-191,-233,-280,-331,-384,-431,-473,-514,-559,-609,-662,-714,
+-762,-807,-853,-902,-953,-1003,-1050,-1096,-1142,-1190,-1237,-1285,-1331,-1378,-1426,-1472,-1515,-1555,-1595,-1638,-1686,
+-1738,-1790,-1836,-1877,-1915,-1954,-1995,-2037,-2079,-2121,-2164,-2206,-2246,-2283,-2315,-2342,-2368,-2396,-2428,-2462,-2496,
+-2526,-2553,-2581,-2611,-2645,-2680,-2716,-2750,-2783,-2816,-2848,-2877,-2901,-2923,-2946,-2973,-3003,-3033,-3058,-3076,-3091,
+-3106,-3124,-3144,-3163,-3179,-3193,-3208,-3225,-3242,-3257,-3267,-3274,-3282,-3293,-3305,-3314,-3318,-3317,-3315,-3316,-3320,
+-3325,-3327,-3327,-3324,-3321,-3317,-3314,-3312,-3312,-3313,-3312,-3311,-3310,-3310,-3310,-3308,-3302,-3295,-3289,-3285,-3282,
+-3278,-3271,-3263,-3256,-3250,-3245,-3237,-3228,-3219,-3210,-3200,-3188,-3173,-3157,-3143,-3131,-3119,-3105,-3087,-3067,-3046,
+-3026,-3008,-2995,-2985,-2976,-2962,-2944,-2923,-2904,-2888,-2873,-2857,-2839,-2822,-2808,-2796,-2780,-2758,-2730,-2700,-2673,
+-2651,-2631,-2611,-2589,-2564,-2534,-2498,-2458,-2419,-2384,-2355,-2328,-2298,-2265,-2230,-2197,-2166,-2135,-2100,-2063,-2025,
+-1989,-1957,-1927,-1898,-1869,-1837,-1804,-1771,-1739,-1709,-1678,-1647,-1619,-1598,-1585,-1577,-1568,-1552,-1534,-1521,-1516,
+-1511,-1493,-1455,-1405,-1358,-1320,-1276,-1200,-1072,-900,-715,-556,-444,-375,-329,-287,-241,-197,-165,-150,-146,
+-141,-130,-112,-98,-89,-76,-49,-6,28,22,-45,-160,-279,-359,-387,-381,-373,-373,-374,-358,-324,
+-288,-265,-254,-239,-207,-162,-121,-97,-90,-89,-83,-70,-51,-27,2,35,62,76,77,76,83,
+103,126,144,154,160,169,181,194,205,217,233,256,285,314,341,367,395,424,455,484,512,
+537,559,581,605,633,666,704,740,773,799,823,846,871,896,922,951,990,1047,1125,1215,1305,
+1381,1436,1477,1512,1547,1581,1609,1625,1629,1628,1631,1646,1672,1699,1714,1713,1704,1709,1744,1801,1847,
+1844,1779,1672,1560,1466,1389,1311,1229,1164,1152,1211,1328,1464,1582,1661,1705,1720,1712,1685,1645,1609,
+1591,1594,1614,1645,1685,1738,1804,1873,1928,1956,1956,1940,1918,1895,1866,1823,1769,1712,1661,1623,1590,
+1551,1497,1432,1366,1312,1273,1243,1211,1173,1131,1091,1054,1015,966,905,840,782,737,704,677,653,
+633,618,606,588,560,521,484,462,459,470,481,481,464,437,408,384,367,347,319,282,247,
+236,267,337,423,487,497,448,357,258,179,131,112,108,111,114,112,104,87,63,35,10,
+-7,-17,-24,-31,-40,-51,-59,-61,-59,-58,-66,-81,-97,-107,-108,-102,-98,-104,-120,-142,-165,
+-187,-208,-229,-250,-269,-286,-299,-310,-316,-321,-327,-337,-356,-383,-416,-448,-476,-498,-518,-541,-573,
+-613,-656,-695,-724,-746,-767,-793,-826,-863,-896,-923,-944,-961,-980,-999,-1018,-1035,-1050,-1061,-1068,-1071,
+-1074,-1078,-1084,-1090,-1094,-1092,-1088,-1083,-1084,-1091,-1106,-1125,-1142,-1156,-1164,-1168,-1173,-1181,-1192,-1203,-1213,
+-1220,-1228,-1237,-1248,-1259,-1270,-1277,-1283,-1289,-1297,-1306,-1314,-1319,-1321,-1322,-1321,-1321,-1320,-1319,-1319,-1317,
+-1316,-1314,-1311,-1310,-1311,-1315,-1321,-1324,-1326,-1326,-1326,-1326,-1325,-1322,-1316,-1310,-1305,-1303,-1302,-1302,-1304,
+-1306,-1307,-1303,-1295,-1286,-1280,-1276,-1274,-1271,-1265,-1260,-1256,-1253,-1247,-1238,-1227,-1218,-1213,-1210,-1208,-1206,
+-1203,-1202,-1204,-1208,-1212,-1215,-1218,-1224,-1233,-1246,-1259,-1271,-1278,-1281,-1281,-1280,-1280,-1282,-1282,-1281,-1280,
+-1279,-1278,-1273,-1265,-1253,-1240,-1231,-1224,-1218,-1211,-1202,-1193,-1185,-1179,-1174,-1169,-1164,-1158,-1149,-1137,-1126,
+-1117,-1112,-1107,-1101,-1093,-1084,-1076,-1071,-1065,-1057,-1047,-1037,-1030,-1029,-1032,-1035,-1034,-1031,-1025,-1018,-1011,
+-1006,-1001,-997,-993,-989,-983,-975,-966,-955,-944,-934,-922,-909,-895,-882,-871,-861,-853,-845,-836,-826,
+-816,-805,-794,-785,-779,-775,-772,-768,-762,-758,-756,-754,-748,-737,-725,-715,-708,-698,-677,-643,-602,
+-565,-536,-514,-491,-465,-439,-417,-403,-391,-378,-362,-347,-336,-325,-312,-296,-278,-263,-253,-243,-229,
+-212,-194,-180,-169,-157,-142,-128,-117,-111,-106,-98,-86,-71,-59,-50,-40,-28,-15,-4,3,8,
+16,28,42,55,65,74,84,95,110,126,146,169,191,211,228,247,270,298,327,355,382,
+411,442,475,506,535,564,597,632,667,701,734,771,810,847,878,906,937,972,1008,1038,1062,
+1083,1107,1131,1143,1135,1109,1077,1056,1055,1083,1144,1246,1386,1543,1685,1781,1826,1846,1879,1951,2056,
+2165,2244,2274,2261,2232,2212,2216,2242,2277,2313,2350,2392,2432,2453,2435,2371,2275,2170,2070,1976,1877,
+1776,1685,1622,1586,1560,1525,1474,1424,1391,1380,1379,1371,1353,1330,1309,1292,1275,1264,1266,1288,1322,
+1350,1358,1348,1329,1312,1300,1292,1288,1289,1290,1281,1251,1205,1160,1135,1131,1131,1109,1050,960,852,
+741,634,532,435,346,268,201,148,107,77,54,32,8,-15,-35,-51,-67,-87,-109,-130,-145,
+-161,-182,-210,-240,-265,-282,-297,-317,-341,-365,-383,-395,-407,-424,-444,-463,-478,-492,-511,-535,-561,
+-583,-600,-617,-635,-655,-675,-694,-711,-726,-741,-751,-758,-761,-764,-770,-776,-779,-777,-770,-759,-747,
+-734,-720,-702,-681,-658,-635,-611,-587,-561,-536,-514,-497,-481,-464,-443,-418,-390,-361,-332,-303,-278,
+-259,-243,-224,-198,-163,-125,-88,-54,-20,18,61,107,155,204,255,308,361,411,461,512,566,
+621,671,715,754,790,826,863,901,941,983,1025,1065,1101,1137,1175,1218,1261,1299,1333,1366,1406,
+1453,1501,1544,1582,1618,1657,1697,1735,1769,1801,1836,1876,1915,1951,1984,2017,2050,2082,2109,2131,2151,
+2173,2194,2210,2222,2236,2261,2297,2336,2368,2390,2405,2421,2434,2440,2435,2424,2416,2416,2422,2426,2423,
+2416,2410,2409,2409,2404,2394,2385,2380,2382,2385,2384,2375,2363,2353,2350,2352,2351,2341,2321,2300,2286,
+2282,2283,2282,2276,2266,2258,2250,2238,2218,2199,2193,2203,2216,2210,2172,2110,2047,2005,1987,1982,1976,
+1964,1953,1947,1941,1930,1909,1884,1861,1845,1831,1816,1798,1779,1762,1746,1734,1703,1702,1723,1762,1801,
+1823,1824,1820,1829,1856,1889,1907,1907,1901,1905,1923,1947,1964,1972,1977,1988,2004,2023,2040,2059,2082,
+2111,2141,2171,2200,2234,2274,2317,2357,2394,2428,2463,2498,2527,2550,2569,2590,2615,2642,2667,2686,2696,
+2699,2696,2690,2685,2689,2708,2744,2792,2844,2888,2914,2915,2896,2868,2848,2846,2859,2877,2890,2893,2895,
+2902,2915,2930,2940,2942,2941,2939,2937,2936,2935,2937,2944,2955,2967,2977,2985,2990,2996,3003,3011,3022,
+3037,3060,3088,3120,3153,3187,3222,3260,3306,3361,3422,3483,3531,3558,3562,3552,3542,3538,3539,3538,3530,
+3513,3490,3463,3432,3396,3358,3326,3306,3303,3311,3325,3334,3334,3326,3316,3311,3313,3318,3321,3314,3298,
+3281,3271,3271,3283,3304,3331,3364,3399,3433,3463,3492,3524,3561,3599,3630,3652,3668,3691,3725,3765,3804,
+3834,3858,3885,3916,3947,3972,3988,4005,4031,4066,4103,4136,4166,4197,4232,4260,4268,4253,4233,4233,4267,
+4320,4361,4365,4336,4304,4301,4332,4371,4383,4356,4305,4263,4250,4257,4265,4259,4241,4225,4217,4212,4202,
+4185,4169,4160,4155,4143,4122,4099,4087,4090,4096,4088,4061,4027,4003,3996,3998,3991,3963,3914,3854,3798,
+3752,3719,3695,3678,3662,3641,3614,3582,3548,3512,3475,3435,3395,3358,3326,3297,3272,3249,3227,3204,3176,
+3141,3103,3066,3038,3018,3001,2983,2960,2936,2912,2890,2869,2851,2838,2832,2829,2826,2820,2809,2795,2779,
+2763,2748,2735,2726,2720,2715,2710,2705,2701,2696,2690,2682,2673,2664,2654,2644,2632,2617,2600,2581,2561,
+2539,2514,2487,2458,2425,2389,2351,2315,2284,2259,2236,2211,2183,2157,2134,2114,2092,2063,2029,1994,1964,
+1941,1926,1915,1909,1907,1905,1899,1887,1869,1848,1828,1811,1793,1770,1740,1707,1673,1642,1613,1583,1549,
+1511,1471,1433,1400,1371,1345,1318,1288,1256,1223,1189,1153,1113,1071,1029,990,954,918,881,839,795,
+751,710,676,650,630,608,580,543,499,454,412,372,330,284,234,185,139,95,50,5,-39,
+-82,-124,-169,-217,-267,-317,-363,-405,-448,-494,-545,-598,-649,-697,-744,-791,-840,-888,-936,-985,-1034,
+-1084,-1133,-1182,-1230,-1276,-1321,-1366,-1409,-1451,-1492,-1536,-1583,-1633,-1684,-1734,-1779,-1819,-1855,-1892,-1931,-1974,
+-2018,-2061,-2103,-2145,-2185,-2222,-2254,-2281,-2307,-2336,-2371,-2409,-2445,-2475,-2502,-2528,-2558,-2592,-2627,-2661,-2696,
+-2732,-2767,-2799,-2824,-2844,-2864,-2890,-2923,-2961,-2995,-3021,-3039,-3051,-3065,-3082,-3104,-3125,-3144,-3160,-3175,-3190,
+-3206,-3220,-3230,-3238,-3247,-3258,-3269,-3276,-3276,-3272,-3271,-3276,-3286,-3295,-3296,-3291,-3283,-3279,-3279,-3280,-3279,
+-3276,-3274,-3273,-3275,-3277,-3278,-3276,-3272,-3265,-3259,-3254,-3252,-3250,-3248,-3244,-3239,-3234,-3229,-3222,-3214,-3204,
+-3195,-3186,-3177,-3165,-3152,-3137,-3123,-3111,-3099,-3085,-3069,-3050,-3029,-3009,-2991,-2976,-2964,-2953,-2938,-2921,-2902,
+-2886,-2873,-2861,-2847,-2830,-2813,-2798,-2784,-2766,-2743,-2715,-2687,-2663,-2642,-2622,-2599,-2572,-2541,-2508,-2473,-2438,
+-2404,-2373,-2345,-2318,-2289,-2259,-2230,-2202,-2174,-2141,-2103,-2063,-2027,-1996,-1968,-1940,-1910,-1878,-1845,-1812,-1779,
+-1747,-1716,-1687,-1661,-1637,-1619,-1607,-1600,-1592,-1577,-1557,-1540,-1530,-1527,-1518,-1494,-1452,-1403,-1357,-1312,-1254,
+-1165,-1038,-885,-730,-590,-474,-380,-300,-233,-180,-148,-136,-137,-141,-137,-123,-103,-83,-64,-43,-25,
+-24,-59,-140,-253,-363,-438,-466,-460,-447,-440,-436,-422,-397,-368,-342,-321,-295,-259,-218,-184,-165,
+-157,-154,-148,-136,-120,-97,-66,-33,-6,5,7,12,29,56,82,96,97,97,104,120,138,
+151,161,173,194,223,254,284,311,338,364,391,416,441,465,489,512,535,561,594,633,673,
+710,741,766,792,819,847,874,902,939,995,1073,1164,1254,1326,1377,1411,1438,1467,1498,1526,1543,
+1551,1554,1563,1583,1609,1631,1635,1624,1616,1638,1698,1778,1833,1825,1747,1628,1511,1420,1349,1283,1223,
+1195,1228,1330,1468,1592,1665,1684,1670,1645,1620,1593,1563,1536,1526,1540,1573,1619,1672,1728,1786,1838,
+1874,1889,1884,1867,1848,1828,1803,1766,1716,1659,1606,1563,1530,1496,1453,1401,1348,1303,1268,1237,1202,
+1160,1118,1084,1055,1017,957,878,796,730,691,669,652,630,605,583,566,545,512,471,433,413,
+414,428,438,432,407,372,340,319,308,299,280,245,204,177,186,234,304,366,396,391,358,
+310,254,191,127,74,42,37,48,57,53,32,3,-25,-46,-59,-67,-75,-84,-94,-105,-112,
+-114,-114,-117,-125,-137,-147,-149,-145,-142,-146,-160,-182,-206,-231,-255,-277,-296,-313,-327,-339,-350,
+-359,-366,-370,-377,-392,-416,-448,-482,-510,-529,-543,-560,-587,-626,-670,-710,-741,-762,-780,-801,-830,
+-865,-900,-930,-955,-976,-996,-1016,-1035,-1053,-1068,-1080,-1088,-1094,-1096,-1099,-1101,-1104,-1106,-1106,-1104,-1101,
+-1102,-1107,-1118,-1133,-1149,-1163,-1173,-1182,-1191,-1203,-1216,-1228,-1237,-1242,-1246,-1251,-1259,-1269,-1279,-1288,-1296,
+-1303,-1310,-1317,-1325,-1332,-1337,-1340,-1341,-1342,-1343,-1344,-1344,-1342,-1336,-1329,-1323,-1321,-1323,-1329,-1336,-1341,
+-1345,-1348,-1349,-1349,-1345,-1338,-1329,-1322,-1318,-1316,-1314,-1312,-1311,-1311,-1310,-1306,-1298,-1289,-1281,-1276,-1272,
+-1269,-1266,-1263,-1262,-1260,-1254,-1245,-1233,-1223,-1217,-1216,-1216,-1215,-1212,-1209,-1206,-1205,-1204,-1205,-1207,-1213,
+-1223,-1235,-1248,-1260,-1267,-1271,-1271,-1272,-1274,-1276,-1278,-1278,-1275,-1271,-1265,-1258,-1250,-1240,-1231,-1223,-1217,
+-1209,-1201,-1193,-1185,-1178,-1172,-1166,-1161,-1156,-1149,-1141,-1131,-1121,-1113,-1107,-1101,-1094,-1084,-1074,-1067,-1061,
+-1057,-1049,-1040,-1031,-1027,-1028,-1031,-1031,-1028,-1023,-1018,-1015,-1012,-1007,-1000,-992,-985,-980,-976,-970,-960,
+-948,-937,-927,-918,-908,-898,-886,-875,-867,-860,-854,-847,-839,-827,-814,-800,-788,-783,-782,-782,-779,
+-774,-769,-766,-765,-762,-754,-743,-732,-719,-698,-663,-614,-562,-520,-495,-482,-470,-453,-433,-416,-404,
+-395,-383,-367,-351,-338,-326,-314,-298,-282,-269,-259,-248,-234,-218,-203,-194,-187,-177,-163,-147,-135,
+-128,-124,-117,-106,-94,-82,-72,-60,-44,-28,-17,-11,-7,0,12,27,42,57,72,88,104,
+120,136,155,179,204,227,250,274,301,330,358,384,410,440,474,509,541,571,601,636,672,
+706,738,769,805,842,875,903,930,961,997,1031,1056,1072,1089,1114,1139,1152,1140,1112,1084,1076,
+1092,1131,1194,1290,1421,1571,1706,1796,1835,1850,1880,1949,2047,2145,2212,2237,2230,2214,2206,2214,2233,
+2254,2276,2304,2346,2398,2440,2448,2408,2329,2237,2149,2068,1979,1879,1775,1688,1625,1577,1528,1470,1414,
+1377,1364,1363,1358,1340,1315,1290,1269,1252,1242,1246,1269,1304,1335,1350,1346,1328,1306,1283,1262,1247,
+1241,1243,1238,1218,1181,1141,1114,1098,1077,1028,944,835,720,613,516,426,344,271,210,162,123,
+91,64,41,19,-3,-26,-46,-63,-79,-98,-119,-139,-156,-172,-192,-217,-244,-267,-283,-298,-313,
+-331,-348,-361,-373,-387,-405,-425,-443,-457,-471,-490,-515,-541,-563,-582,-599,-617,-639,-663,-686,-708,
+-728,-744,-755,-762,-766,-771,-778,-784,-786,-782,-774,-764,-754,-743,-728,-710,-688,-665,-641,-618,-594,
+-569,-544,-521,-499,-477,-456,-433,-411,-388,-363,-335,-305,-277,-253,-233,-212,-184,-150,-111,-74,-41,
+-9,26,68,114,163,213,264,315,367,417,465,515,566,618,668,714,756,796,834,873,912,
+952,993,1035,1075,1113,1150,1188,1228,1266,1302,1336,1374,1419,1469,1517,1561,1599,1635,1674,1713,1750,
+1783,1816,1853,1892,1932,1968,2001,2033,2066,2097,2123,2143,2162,2182,2201,2217,2230,2246,2272,2308,2347,
+2381,2406,2424,2439,2450,2454,2450,2441,2434,2434,2438,2443,2444,2443,2441,2440,2438,2433,2425,2416,2409,
+2405,2402,2397,2389,2378,2368,2361,2357,2352,2344,2330,2315,2304,2299,2298,2297,2293,2288,2282,2273,2257,
+2237,2222,2220,2228,2229,2205,2153,2091,2043,2021,2019,2020,2012,1998,1985,1977,1968,1950,1924,1896,1873,
+1854,1831,1803,1775,1750,1732,1715,1703,1710,1713,1738,1794,1864,1918,1939,1931,1916,1910,1915,1920,1920,
+1920,1928,1945,1965,1980,1990,2002,2021,2045,2066,2083,2100,2123,2152,2183,2211,2237,2268,2305,2345,2381,
+2414,2445,2479,2513,2542,2564,2583,2606,2634,2661,2681,2688,2686,2682,2684,2694,2712,2737,2770,2808,2845,
+2874,2892,2897,2893,2882,2870,2863,2862,2867,2875,2882,2889,2897,2908,2921,2930,2933,2930,2924,2919,2919,
+2924,2933,2944,2956,2967,2977,2985,2992,3001,3010,3019,3031,3046,3066,3090,3116,3142,3170,3201,3238,3280,
+3328,3383,3443,3504,3552,3578,3580,3566,3549,3537,3529,3521,3506,3487,3466,3446,3422,3391,3356,3323,3301,
+3294,3299,3307,3313,3313,3311,3311,3315,3322,3328,3329,3320,3304,3289,3281,3284,3297,3320,3352,3390,3434,
+3476,3512,3543,3575,3610,3648,3683,3710,3734,3761,3798,3839,3878,3907,3931,3955,3983,4009,4028,4042,4059,
+4089,4127,4163,4188,4206,4229,4262,4296,4310,4297,4271,4263,4290,4339,4376,4373,4336,4301,4303,4342,4386,
+4397,4362,4305,4263,4254,4266,4273,4261,4237,4218,4213,4215,4213,4203,4191,4182,4173,4157,4133,4110,4102,
+4109,4117,4110,4082,4047,4023,4018,4025,4022,3998,3951,3892,3836,3788,3753,3727,3707,3690,3670,3644,3613,
+3579,3542,3506,3469,3434,3401,3372,3345,3322,3301,3279,3254,3223,3187,3151,3120,3096,3074,3051,3025,2997,
+2972,2948,2925,2902,2882,2867,2860,2859,2856,2849,2837,2823,2808,2794,2780,2767,2758,2752,2748,2745,2743,
+2740,2735,2729,2720,2709,2698,2687,2677,2665,2650,2632,2614,2595,2574,2552,2526,2498,2467,2432,2395,2358,
+2325,2298,2274,2250,2226,2202,2180,2158,2132,2101,2067,2034,2007,1989,1979,1975,1973,1970,1962,1949,1930,
+1909,1888,1869,1851,1830,1805,1777,1747,1717,1688,1659,1627,1593,1555,1518,1483,1454,1429,1406,1380,1349,
+1314,1278,1242,1206,1167,1126,1084,1044,1008,972,932,888,842,800,767,743,725,706,679,642,598,
+553,511,472,434,392,343,292,242,195,152,110,66,22,-21,-66,-112,-160,-209,-256,-301,-345,
+-389,-436,-485,-534,-583,-632,-681,-729,-778,-825,-874,-923,-974,-1023,-1072,-1119,-1168,-1216,-1263,-1307,-1348,
+-1389,-1433,-1479,-1528,-1577,-1625,-1672,-1716,-1755,-1792,-1828,-1868,-1912,-1960,-2006,-2049,-2088,-2124,-2158,-2188,-2215,
+-2243,-2275,-2313,-2353,-2390,-2420,-2446,-2472,-2503,-2538,-2575,-2612,-2650,-2688,-2723,-2752,-2773,-2790,-2809,-2837,-2875,
+-2915,-2951,-2978,-2995,-3007,-3020,-3037,-3059,-3082,-3103,-3121,-3136,-3152,-3167,-3182,-3194,-3203,-3212,-3223,-3234,-3240,
+-3239,-3234,-3233,-3240,-3254,-3264,-3265,-3258,-3249,-3245,-3247,-3249,-3247,-3240,-3234,-3234,-3239,-3244,-3245,-3240,-3231,
+-3223,-3217,-3215,-3214,-3215,-3215,-3214,-3211,-3206,-3201,-3195,-3189,-3181,-3171,-3160,-3148,-3136,-3123,-3110,-3097,-3085,
+-3073,-3060,-3046,-3030,-3012,-2992,-2974,-2958,-2945,-2931,-2916,-2899,-2883,-2870,-2861,-2852,-2840,-2823,-2805,-2787,-2769,
+-2748,-2724,-2697,-2673,-2651,-2631,-2609,-2581,-2550,-2517,-2484,-2452,-2421,-2392,-2364,-2338,-2310,-2281,-2253,-2227,-2203,
+-2176,-2143,-2105,-2067,-2033,-2006,-1979,-1949,-1915,-1879,-1846,-1814,-1783,-1753,-1726,-1701,-1680,-1659,-1641,-1626,-1617,
+-1608,-1594,-1573,-1548,-1532,-1528,-1529,-1522,-1495,-1449,-1395,-1345,-1299,-1243,-1163,-1049,-907,-751,-596,-457,-341,
+-250,-184,-141,-120,-117,-124,-131,-128,-110,-82,-54,-33,-32,-57,-117,-211,-322,-427,-499,-530,-529,
+-516,-504,-497,-488,-471,-446,-416,-383,-347,-310,-276,-251,-234,-224,-216,-206,-196,-182,-161,-132,-101,
+-77,-64,-57,-44,-20,9,31,39,37,37,48,68,88,100,107,118,137,165,195,222,247,
+271,295,320,346,371,398,424,448,470,494,524,563,605,645,679,709,739,771,802,830,857,
+890,941,1012,1097,1182,1252,1302,1335,1361,1387,1415,1441,1461,1474,1484,1499,1523,1551,1569,1568,1554,
+1548,1576,1644,1729,1784,1776,1699,1584,1471,1379,1307,1245,1198,1191,1247,1357,1483,1576,1609,1589,1548,
+1512,1491,1477,1463,1453,1457,1484,1533,1597,1662,1720,1766,1797,1813,1816,1810,1797,1781,1762,1736,1701,
+1654,1600,1547,1503,1471,1445,1417,1381,1342,1304,1271,1236,1195,1149,1106,1075,1048,1009,944,857,768,
+702,668,652,636,609,575,545,522,499,468,431,396,377,376,382,384,370,343,309,279,259,
+249,244,232,208,175,144,127,128,144,166,194,233,280,315,313,259,164,62,-8,-31,-20,
+-2,1,-11,-33,-55,-72,-87,-101,-115,-126,-136,-145,-155,-162,-166,-170,-178,-189,-199,-203,-201,
+-198,-201,-213,-232,-255,-278,-301,-322,-342,-358,-371,-383,-395,-407,-416,-422,-427,-437,-456,-485,-515,
+-541,-559,-572,-587,-611,-645,-686,-725,-755,-776,-794,-813,-839,-871,-903,-934,-961,-985,-1008,-1031,-1052,
+-1070,-1085,-1096,-1106,-1113,-1117,-1118,-1117,-1114,-1113,-1114,-1117,-1119,-1122,-1126,-1132,-1142,-1155,-1170,-1185,-1198,
+-1213,-1228,-1244,-1257,-1265,-1267,-1267,-1267,-1271,-1279,-1289,-1300,-1309,-1315,-1319,-1323,-1328,-1334,-1342,-1349,-1355,
+-1359,-1362,-1364,-1364,-1360,-1353,-1343,-1335,-1331,-1332,-1336,-1342,-1348,-1355,-1362,-1366,-1365,-1359,-1348,-1338,-1332,
+-1330,-1331,-1330,-1326,-1322,-1318,-1315,-1311,-1305,-1297,-1288,-1280,-1273,-1266,-1262,-1259,-1259,-1259,-1255,-1248,-1238,
+-1229,-1224,-1221,-1219,-1217,-1214,-1210,-1206,-1203,-1201,-1202,-1207,-1214,-1224,-1235,-1245,-1253,-1259,-1262,-1263,-1263,
+-1266,-1269,-1273,-1273,-1270,-1262,-1252,-1242,-1233,-1226,-1220,-1215,-1209,-1202,-1194,-1187,-1180,-1173,-1165,-1158,-1151,
+-1145,-1140,-1134,-1125,-1117,-1109,-1102,-1095,-1087,-1077,-1069,-1062,-1057,-1051,-1042,-1033,-1027,-1025,-1026,-1028,-1026,
+-1020,-1015,-1013,-1014,-1013,-1009,-1000,-989,-981,-975,-971,-965,-955,-943,-931,-921,-914,-906,-899,-892,-885,
+-878,-872,-865,-857,-848,-837,-822,-806,-794,-788,-788,-789,-786,-778,-770,-765,-765,-765,-763,-757,-749,
+-736,-712,-674,-623,-571,-531,-507,-496,-486,-470,-451,-435,-424,-416,-405,-391,-374,-360,-347,-332,-316,
+-300,-288,-277,-266,-249,-231,-216,-207,-203,-196,-184,-169,-157,-150,-145,-138,-129,-118,-108,-97,-82,
+-65,-48,-36,-28,-22,-13,0,15,32,50,71,92,112,129,146,166,192,221,249,276,303,
+333,362,390,415,441,471,505,539,568,595,626,662,700,734,762,788,818,851,881,908,933,
+965,1001,1033,1056,1071,1089,1117,1145,1156,1140,1108,1083,1084,1111,1157,1220,1307,1426,1564,1688,1769,
+1806,1824,1859,1929,2023,2110,2168,2193,2197,2197,2203,2216,2231,2244,2256,2277,2318,2378,2437,2467,2448,
+2385,2302,2222,2150,2072,1975,1862,1751,1660,1588,1527,1466,1409,1369,1350,1345,1338,1321,1296,1270,1248,
+1232,1224,1231,1254,1288,1318,1331,1325,1305,1278,1250,1224,1206,1199,1201,1203,1195,1175,1149,1122,1091,
+1041,960,848,723,603,500,411,332,263,206,163,132,107,81,55,31,7,-14,-36,-56,-74,
+-90,-108,-129,-149,-167,-183,-200,-222,-247,-270,-288,-301,-313,-324,-335,-345,-357,-371,-388,-405,-421,
+-435,-450,-470,-494,-519,-542,-562,-581,-602,-625,-649,-674,-699,-722,-741,-755,-763,-768,-772,-777,-781,
+-781,-778,-772,-764,-755,-745,-732,-715,-695,-672,-648,-622,-596,-570,-545,-520,-495,-471,-447,-425,-403,
+-382,-358,-330,-301,-271,-242,-215,-187,-155,-120,-84,-52,-23,4,36,77,124,174,224,273,321,
+370,418,466,514,564,616,666,714,758,798,837,878,920,963,1007,1050,1091,1131,1169,1208,1245,
+1282,1317,1353,1393,1436,1481,1526,1567,1607,1646,1687,1726,1764,1799,1835,1873,1910,1945,1977,2006,2036,
+2069,2100,2128,2151,2172,2192,2212,2230,2248,2268,2293,2325,2360,2393,2421,2443,2459,2469,2473,2470,2464,
+2457,2454,2455,2458,2464,2468,2470,2468,2464,2458,2451,2445,2437,2427,2418,2409,2401,2392,2382,2374,2368,
+2365,2362,2354,2344,2335,2330,2328,2328,2326,2321,2312,2297,2274,2247,2226,2213,2206,2191,2159,2116,2079,
+2060,2060,2065,2060,2044,2028,2020,2017,2007,1980,1944,1909,1879,1845,1802,1753,1716,1702,1705,1711,1710,
+1838,1839,1850,1897,1978,2056,2096,2087,2044,1994,1956,1933,1924,1928,1944,1966,1986,1998,2009,2025,2050,
+2078,2100,2115,2131,2154,2185,2218,2247,2273,2303,2339,2375,2407,2433,2458,2487,2521,2552,2576,2595,2616,
+2640,2661,2673,2673,2668,2670,2686,2713,2747,2782,2813,2839,2857,2866,2870,2871,2874,2880,2886,2887,2883,
+2876,2872,2875,2885,2901,2917,2930,2936,2935,2930,2925,2922,2925,2933,2945,2958,2969,2978,2985,2994,3004,
+3017,3030,3042,3055,3072,3094,3118,3143,3170,3200,3235,3275,3317,3360,3408,3463,3520,3568,3593,3592,3573,
+3550,3532,3520,3508,3492,3475,3460,3447,3429,3402,3367,3333,3308,3296,3291,3289,3287,3288,3295,3309,3326,
+3340,3345,3342,3331,3319,3311,3312,3324,3344,3370,3402,3439,3482,3526,3565,3599,3630,3663,3701,3740,3775,
+3808,3842,3879,3918,3952,3978,3999,4021,4044,4065,4080,4093,4113,4147,4189,4225,4246,4256,4271,4299,4332,
+4347,4333,4303,4287,4306,4350,4386,4386,4354,4321,4320,4353,4388,4392,4356,4304,4269,4265,4277,4282,4267,
+4241,4222,4220,4226,4229,4225,4219,4212,4203,4186,4160,4138,4130,4135,4138,4123,4087,4046,4020,4015,4023,
+4024,4007,3969,3922,3875,3834,3798,3767,3740,3716,3694,3670,3642,3610,3575,3541,3508,3477,3448,3422,3398,
+3377,3358,3336,3309,3276,3240,3206,3176,3149,3122,3092,3060,3031,3007,2986,2963,2938,2915,2899,2892,2890,
+2887,2880,2869,2856,2843,2830,2815,2802,2791,2784,2781,2778,2775,2772,2768,2761,2752,2742,2732,2724,2714,
+2701,2684,2665,2647,2630,2612,2590,2564,2534,2504,2472,2439,2405,2373,2342,2316,2291,2268,2245,2221,2195,
+2167,2137,2107,2082,2062,2049,2042,2037,2032,2025,2012,1993,1971,1948,1929,1910,1889,1865,1837,1810,1783,
+1757,1730,1699,1666,1633,1601,1570,1540,1513,1488,1463,1435,1404,1368,1331,1293,1257,1220,1181,1142,1103,
+1066,1026,982,935,890,852,825,808,791,769,736,695,650,607,566,527,487,444,397,348,301,
+257,215,172,128,82,36,-10,-58,-105,-152,-198,-244,-289,-335,-381,-427,-473,-521,-571,-620,-669,
+-716,-763,-813,-863,-913,-960,-1004,-1049,-1098,-1149,-1200,-1247,-1290,-1331,-1376,-1423,-1471,-1517,-1562,-1605,-1648,
+-1688,-1726,-1763,-1805,-1853,-1905,-1954,-1997,-2033,-2065,-2096,-2127,-2156,-2186,-2219,-2257,-2296,-2331,-2361,-2387,-2414,
+-2447,-2485,-2524,-2564,-2604,-2643,-2678,-2705,-2723,-2738,-2759,-2789,-2827,-2867,-2901,-2926,-2944,-2959,-2974,-2991,-3012,
+-3035,-3057,-3077,-3093,-3108,-3124,-3140,-3152,-3162,-3172,-3183,-3194,-3203,-3204,-3201,-3200,-3206,-3217,-3228,-3231,-3227,
+-3222,-3220,-3222,-3221,-3215,-3204,-3198,-3198,-3205,-3210,-3210,-3203,-3193,-3184,-3179,-3178,-3179,-3180,-3181,-3178,-3173,
+-3167,-3163,-3160,-3159,-3154,-3145,-3131,-3117,-3104,-3092,-3081,-3069,-3056,-3044,-3032,-3020,-3005,-2989,-2972,-2955,-2941,
+-2928,-2915,-2899,-2882,-2868,-2857,-2848,-2839,-2826,-2809,-2789,-2769,-2749,-2727,-2703,-2679,-2657,-2637,-2616,-2590,-2560,
+-2527,-2494,-2463,-2433,-2405,-2379,-2355,-2332,-2308,-2282,-2254,-2227,-2200,-2172,-2139,-2103,-2067,-2037,-2010,-1981,-1948,
+-1911,-1876,-1845,-1818,-1791,-1764,-1739,-1719,-1701,-1682,-1660,-1639,-1624,-1615,-1603,-1583,-1557,-1535,-1527,-1532,-1538,
+-1527,-1493,-1444,-1393,-1352,-1314,-1265,-1185,-1064,-909,-737,-573,-432,-323,-240,-178,-132,-105,-98,-107,-118,
+-118,-99,-71,-50,-53,-91,-164,-263,-373,-472,-543,-579,-586,-578,-568,-563,-558,-546,-522,-488,-448,
+-408,-374,-347,-326,-309,-292,-277,-265,-254,-242,-223,-198,-170,-147,-132,-120,-103,-80,-55,-38,-32,
+-29,-21,-2,20,38,48,55,65,84,109,133,154,174,196,221,248,275,303,334,364,393,
+417,441,468,500,535,569,601,634,670,709,748,782,810,839,879,935,1004,1077,1144,1199,1241,
+1276,1306,1334,1358,1376,1390,1403,1421,1448,1478,1501,1510,1506,1507,1532,1586,1652,1695,1689,1630,1537,
+1438,1347,1265,1193,1141,1130,1171,1252,1338,1393,1402,1377,1346,1328,1327,1335,1346,1361,1389,1437,1504,
+1580,1650,1703,1733,1743,1741,1736,1730,1721,1706,1682,1652,1616,1576,1530,1484,1445,1418,1400,1383,1357,
+1323,1285,1249,1213,1172,1127,1083,1047,1016,976,914,835,757,700,668,649,624,587,545,511,489,
+470,444,410,376,352,339,330,316,294,265,236,213,197,190,186,180,167,146,119,89,59,
+28,8,17,69,157,247,290,260,166,55,-27,-61,-61,-54,-59,-73,-87,-96,-102,-115,-135,
+-155,-168,-175,-179,-186,-195,-204,-215,-229,-245,-259,-265,-263,-258,-259,-269,-287,-308,-328,-347,-366,
+-385,-402,-415,-426,-438,-451,-463,-472,-479,-489,-505,-527,-551,-572,-588,-602,-618,-642,-673,-707,-740,
+-766,-787,-805,-826,-851,-881,-912,-941,-967,-991,-1015,-1039,-1062,-1082,-1097,-1110,-1121,-1130,-1136,-1137,-1132,
+-1126,-1122,-1123,-1129,-1135,-1140,-1143,-1147,-1154,-1166,-1181,-1198,-1214,-1231,-1249,-1267,-1282,-1291,-1292,-1289,-1286,
+-1286,-1292,-1302,-1314,-1323,-1329,-1330,-1330,-1331,-1336,-1344,-1353,-1361,-1367,-1371,-1372,-1372,-1368,-1361,-1352,-1345,
+-1341,-1340,-1341,-1344,-1350,-1357,-1366,-1372,-1372,-1366,-1355,-1346,-1341,-1342,-1344,-1343,-1339,-1332,-1325,-1320,-1316,
+-1311,-1305,-1298,-1288,-1278,-1269,-1262,-1259,-1257,-1256,-1252,-1246,-1239,-1233,-1228,-1223,-1218,-1213,-1208,-1205,-1202,
+-1200,-1199,-1202,-1209,-1218,-1228,-1237,-1244,-1250,-1254,-1256,-1256,-1256,-1256,-1259,-1263,-1264,-1260,-1251,-1239,-1228,
+-1220,-1214,-1210,-1207,-1202,-1197,-1191,-1185,-1178,-1170,-1160,-1150,-1142,-1136,-1131,-1125,-1118,-1110,-1103,-1096,-1088,
+-1080,-1072,-1065,-1060,-1054,-1047,-1037,-1027,-1022,-1021,-1023,-1023,-1019,-1015,-1011,-1010,-1011,-1010,-1005,-996,-987,
+-980,-975,-969,-961,-951,-941,-931,-922,-914,-907,-902,-898,-895,-890,-883,-873,-863,-854,-844,-832,-818,
+-806,-799,-797,-795,-789,-777,-764,-755,-752,-754,-756,-756,-756,-753,-743,-719,-683,-640,-603,-574,-551,
+-530,-506,-484,-468,-458,-450,-439,-424,-408,-393,-378,-363,-345,-328,-315,-303,-289,-270,-248,-229,-215,
+-206,-199,-188,-176,-165,-157,-150,-141,-131,-121,-111,-100,-86,-69,-53,-40,-29,-16,-1,15,33,
+51,71,94,118,139,155,173,196,225,255,283,308,333,361,390,418,443,469,500,533,562,
+586,610,640,678,718,751,775,797,823,853,883,908,932,961,995,1027,1050,1069,1093,1124,1151,
+1156,1133,1097,1074,1081,1116,1167,1230,1313,1423,1548,1657,1727,1758,1779,1821,1896,1987,2066,2119,2148,
+2164,2178,2194,2211,2227,2239,2253,2275,2315,2374,2436,2473,2463,2406,2322,2238,2164,2090,1997,1883,1765,
+1663,1585,1523,1467,1413,1370,1344,1331,1320,1304,1282,1261,1243,1230,1223,1227,1244,1270,1292,1301,1292,
+1271,1246,1223,1204,1189,1181,1180,1181,1178,1167,1148,1119,1072,997,891,762,630,511,412,331,262,
+204,160,131,111,92,69,42,17,-4,-25,-46,-66,-85,-102,-119,-137,-157,-175,-192,-210,-229,
+-252,-274,-292,-303,-311,-319,-328,-338,-349,-360,-371,-383,-396,-411,-428,-448,-469,-492,-514,-538,-563,
+-588,-613,-637,-661,-685,-709,-729,-745,-755,-763,-768,-773,-776,-776,-774,-769,-761,-752,-740,-728,-715,
+-700,-680,-655,-627,-599,-571,-543,-517,-491,-466,-444,-423,-401,-377,-351,-324,-295,-266,-235,-202,-166,
+-130,-94,-61,-33,-7,19,52,93,141,192,241,288,334,380,427,474,521,569,618,667,713,
+755,794,833,876,922,970,1017,1061,1102,1142,1181,1219,1256,1293,1330,1369,1410,1450,1489,1527,1567,
+1608,1651,1693,1733,1772,1810,1847,1884,1918,1948,1976,2003,2034,2068,2102,2134,2161,2184,2205,2226,2248,
+2271,2293,2317,2342,2370,2400,2429,2454,2472,2483,2488,2489,2486,2480,2472,2466,2465,2471,2479,2484,2483,
+2476,2470,2466,2462,2455,2443,2431,2421,2414,2406,2396,2386,2379,2378,2378,2376,2369,2362,2358,2357,2356,
+2353,2345,2335,2320,2299,2271,2241,2213,2188,2163,2137,2115,2106,2110,2119,2116,2097,2075,2063,2064,2063,
+2043,2001,1950,1907,1873,1831,1774,1714,1684,1703,1758,1812,1838,2097,2085,2052,2049,2095,2161,2204,2196,
+2141,2067,1999,1952,1929,1930,1951,1979,2002,2016,2025,2039,2062,2089,2112,2130,2148,2176,2211,2247,2277,
+2303,2331,2365,2400,2428,2449,2469,2495,2527,2558,2582,2597,2611,2625,2639,2649,2654,2661,2678,2708,2746,
+2782,2810,2828,2840,2845,2846,2845,2847,2855,2869,2883,2889,2885,2875,2869,2873,2887,2907,2925,2937,2942,
+2941,2938,2936,2937,2942,2952,2963,2974,2984,2991,2998,3008,3022,3038,3054,3069,3085,3104,3125,3149,3175,
+3207,3245,3287,3329,3365,3397,3432,3476,3525,3567,3587,3582,3561,3538,3521,3509,3497,3483,3470,3461,3453,
+3439,3414,3381,3349,3325,3310,3297,3283,3270,3269,3283,3310,3337,3354,3356,3346,3333,3325,3329,3346,3375,
+3408,3441,3472,3506,3544,3586,3629,3667,3699,3728,3760,3798,3838,3879,3920,3959,3994,4023,4045,4064,4083,
+4101,4117,4128,4140,4162,4199,4244,4282,4305,4314,4325,4346,4371,4381,4364,4331,4309,4316,4350,4382,4388,
+4368,4343,4339,4357,4375,4369,4336,4295,4271,4271,4284,4287,4274,4254,4241,4241,4248,4252,4251,4249,4246,
+4238,4221,4196,4174,4165,4165,4159,4135,4094,4050,4021,4015,4021,4025,4013,3988,3955,3920,3884,3847,3809,
+3772,3740,3713,3689,3665,3637,3607,3577,3547,3519,3494,3471,3450,3433,3415,3393,3365,3331,3294,3259,3227,
+3196,3164,3132,3100,3073,3050,3028,3002,2976,2953,2938,2931,2928,2923,2915,2905,2895,2883,2869,2853,2835,
+2822,2813,2809,2806,2803,2800,2795,2788,2780,2772,2764,2756,2746,2732,2715,2697,2680,2666,2650,2628,2600,
+2568,2536,2507,2480,2452,2423,2393,2365,2340,2315,2290,2262,2232,2202,2175,2153,2137,2125,2115,2105,2095,
+2084,2070,2053,2032,2009,1988,1969,1951,1929,1903,1874,1848,1823,1799,1770,1737,1704,1673,1648,1625,1600,
+1573,1545,1516,1486,1455,1420,1382,1345,1309,1274,1240,1205,1167,1126,1080,1030,981,940,908,886,867,
+845,816,781,742,702,662,622,580,536,491,446,403,361,320,278,235,190,143,95,47,0,
+-47,-93,-138,-185,-232,-278,-323,-368,-413,-462,-512,-561,-608,-653,-698,-748,-800,-851,-898,-941,-984,
+-1033,-1086,-1139,-1188,-1233,-1277,-1323,-1370,-1417,-1461,-1503,-1545,-1586,-1627,-1666,-1705,-1749,-1800,-1853,-1903,-1943,
+-1975,-2005,-2037,-2070,-2103,-2135,-2167,-2202,-2239,-2273,-2304,-2333,-2364,-2399,-2438,-2477,-2517,-2555,-2593,-2624,-2648,
+-2666,-2683,-2709,-2743,-2783,-2820,-2850,-2873,-2892,-2909,-2927,-2946,-2967,-2990,-3012,-3032,-3049,-3065,-3080,-3095,-3107,
+-3116,-3124,-3135,-3147,-3159,-3164,-3164,-3162,-3165,-3174,-3184,-3191,-3194,-3194,-3195,-3196,-3192,-3183,-3173,-3167,-3168,
+-3172,-3175,-3172,-3165,-3158,-3152,-3149,-3148,-3147,-3147,-3146,-3142,-3135,-3128,-3124,-3125,-3127,-3125,-3116,-3103,-3088,
+-3076,-3067,-3056,-3044,-3030,-3016,-3004,-2991,-2977,-2961,-2946,-2932,-2921,-2910,-2897,-2881,-2865,-2851,-2840,-2830,-2818,
+-2803,-2786,-2767,-2748,-2729,-2708,-2685,-2663,-2642,-2621,-2598,-2570,-2538,-2506,-2476,-2448,-2420,-2392,-2368,-2348,-2331,
+-2313,-2290,-2262,-2231,-2198,-2165,-2132,-2098,-2066,-2037,-2009,-1978,-1943,-1908,-1877,-1852,-1829,-1805,-1778,-1753,-1732,
+-1714,-1694,-1670,-1645,-1627,-1618,-1611,-1597,-1573,-1548,-1531,-1530,-1537,-1538,-1522,-1490,-1451,-1416,-1385,-1348,-1287,
+-1189,-1050,-883,-712,-561,-441,-346,-265,-189,-126,-89,-84,-102,-122,-127,-114,-99,-105,-148,-226,-327,
+-432,-524,-589,-626,-638,-636,-631,-627,-624,-614,-592,-560,-522,-486,-456,-430,-407,-384,-361,-342,-327,
+-316,-304,-286,-263,-238,-215,-198,-183,-167,-150,-133,-121,-111,-99,-81,-57,-35,-18,-8,1,15,
+32,50,65,79,97,121,150,179,208,237,270,305,340,371,397,421,445,470,496,523,555,
+593,638,684,725,758,787,819,859,909,965,1024,1081,1133,1178,1215,1244,1265,1280,1292,1306,1326,
+1354,1389,1425,1452,1469,1482,1503,1536,1575,1603,1603,1570,1508,1426,1332,1232,1136,1062,1026,1032,1066,
+1105,1129,1135,1132,1134,1148,1172,1203,1240,1286,1344,1413,1489,1564,1625,1662,1673,1665,1649,1637,1631,
+1622,1604,1576,1543,1511,1481,1448,1414,1383,1360,1346,1330,1304,1266,1224,1186,1154,1121,1082,1039,997,
+958,917,868,810,755,712,680,650,610,561,516,484,467,451,426,389,351,318,294,272,247,
+217,186,160,140,127,121,119,117,109,97,81,60,31,-7,-46,-63,-37,32,115,169,164,
+108,35,-19,-43,-54,-72,-102,-134,-152,-154,-152,-160,-178,-198,-210,-212,-210,-211,-219,-231,-249,
+-271,-295,-315,-324,-321,-312,-310,-318,-336,-355,-373,-389,-406,-423,-440,-454,-465,-477,-491,-504,-517,
+-527,-539,-554,-573,-591,-607,-620,-634,-652,-676,-704,-732,-758,-780,-799,-818,-840,-866,-895,-926,-955,
+-979,-1000,-1020,-1041,-1063,-1084,-1103,-1119,-1133,-1145,-1153,-1155,-1151,-1144,-1138,-1138,-1143,-1150,-1156,-1160,-1165,
+-1173,-1185,-1199,-1213,-1227,-1243,-1261,-1281,-1299,-1311,-1314,-1311,-1307,-1305,-1308,-1316,-1326,-1336,-1342,-1343,-1342,
+-1342,-1344,-1349,-1356,-1364,-1370,-1374,-1375,-1375,-1372,-1367,-1363,-1359,-1357,-1356,-1355,-1356,-1359,-1364,-1370,-1374,
+-1374,-1369,-1361,-1354,-1351,-1351,-1352,-1352,-1349,-1343,-1335,-1328,-1321,-1315,-1309,-1303,-1294,-1285,-1276,-1269,-1264,
+-1260,-1256,-1250,-1244,-1238,-1234,-1230,-1224,-1217,-1209,-1203,-1201,-1199,-1198,-1197,-1199,-1204,-1212,-1222,-1230,-1236,
+-1241,-1244,-1247,-1248,-1247,-1246,-1247,-1249,-1249,-1245,-1238,-1228,-1219,-1212,-1208,-1205,-1201,-1197,-1192,-1188,-1184,
+-1177,-1167,-1157,-1147,-1139,-1133,-1127,-1120,-1112,-1103,-1096,-1089,-1081,-1073,-1066,-1060,-1055,-1049,-1041,-1031,-1022,
+-1017,-1016,-1017,-1016,-1014,-1011,-1009,-1008,-1006,-1002,-996,-990,-985,-981,-976,-967,-957,-947,-939,-933,-926,
+-917,-909,-903,-901,-899,-895,-886,-875,-864,-857,-852,-845,-835,-825,-816,-811,-805,-795,-780,-764,-751,
+-744,-742,-743,-746,-751,-758,-762,-755,-735,-704,-667,-629,-592,-558,-529,-507,-495,-488,-482,-471,-454,
+-436,-420,-406,-390,-372,-354,-338,-325,-309,-289,-265,-242,-223,-208,-195,-183,-171,-161,-152,-142,-129,
+-117,-105,-95,-83,-70,-55,-40,-25,-7,13,36,58,77,95,116,140,163,182,198,216,241,
+271,300,323,343,364,390,418,445,469,493,522,552,579,601,624,654,693,732,763,785,805,
+832,864,894,917,937,962,994,1027,1054,1077,1103,1133,1155,1152,1123,1084,1063,1074,1115,1173,1242,
+1330,1439,1554,1647,1698,1718,1737,1784,1863,1952,2028,2077,2108,2132,2153,2171,2186,2200,2218,2240,2269,
+2307,2355,2403,2432,2420,2363,2276,2186,2106,2028,1938,1832,1722,1629,1561,1511,1465,1417,1375,1345,1328,
+1316,1301,1283,1265,1253,1244,1237,1233,1237,1249,1262,1268,1263,1248,1232,1219,1209,1199,1189,1179,1170,
+1158,1140,1112,1069,1004,914,800,673,548,439,349,275,215,167,133,110,93,73,49,24,2,
+-16,-34,-54,-75,-95,-112,-127,-143,-161,-180,-199,-217,-237,-257,-276,-290,-298,-304,-311,-320,-331,
+-340,-346,-350,-356,-368,-386,-406,-426,-445,-463,-485,-511,-540,-569,-596,-620,-644,-667,-690,-710,-727,
+-741,-753,-763,-770,-775,-778,-777,-772,-762,-749,-735,-724,-714,-703,-687,-663,-635,-606,-577,-548,-520,
+-492,-468,-447,-427,-404,-377,-349,-320,-293,-264,-232,-195,-157,-119,-85,-56,-28,-1,28,64,107,
+156,206,257,305,353,401,449,495,538,582,626,672,715,755,792,831,875,923,973,1019,1062,
+1103,1143,1182,1219,1254,1290,1329,1371,1413,1451,1488,1524,1564,1608,1652,1694,1734,1772,1811,1848,1883,
+1914,1943,1971,2001,2035,2070,2106,2140,2171,2197,2219,2240,2263,2287,2312,2333,2353,2374,2400,2429,2456,
+2477,2489,2496,2501,2504,2500,2489,2475,2468,2471,2481,2487,2485,2479,2473,2471,2468,2461,2450,2438,2432,
+2428,2422,2410,2396,2386,2383,2383,2382,2377,2373,2371,2370,2366,2357,2345,2337,2330,2320,2300,2272,2240,
+2211,2187,2170,2161,2162,2169,2170,2156,2131,2110,2103,2104,2090,2047,1982,1925,1896,1888,1871,1828,1779,
+1768,1827,1939,2047,2097,2357,2318,2229,2155,2135,2160,2189,2189,2152,2093,2032,1982,1951,1943,1959,1989,
+2018,2035,2042,2050,2067,2091,2116,2139,2163,2194,2230,2265,2292,2313,2336,2366,2400,2429,2451,2470,2492,
+2519,2545,2564,2576,2585,2598,2615,2634,2653,2676,2705,2740,2775,2801,2816,2823,2829,2833,2836,2834,2832,
+2835,2845,2858,2869,2873,2872,2873,2880,2894,2911,2925,2934,2937,2938,2939,2941,2946,2954,2965,2978,2990,
+3001,3009,3017,3028,3042,3059,3076,3096,3117,3139,3162,3186,3214,3249,3293,3341,3383,3412,3431,3448,3474,
+3506,3534,3547,3542,3526,3510,3499,3491,3480,3467,3456,3451,3447,3436,3413,3385,3360,3343,3329,3310,3286,
+3265,3260,3278,3311,3342,3359,3357,3343,3330,3328,3345,3379,3426,3475,3515,3546,3573,3606,3650,3699,3744,
+3776,3799,3821,3852,3894,3943,3990,4031,4063,4089,4109,4128,4145,4161,4173,4183,4195,4217,4253,4295,4331,
+4353,4361,4368,4381,4397,4403,4390,4361,4335,4328,4341,4359,4365,4357,4345,4343,4350,4353,4340,4312,4285,
+4274,4280,4290,4292,4284,4273,4268,4272,4277,4280,4278,4277,4275,4267,4250,4227,4208,4198,4194,4185,4160,
+4121,4081,4055,4047,4049,4050,4041,4022,3997,3968,3933,3893,3849,3806,3767,3736,3711,3687,3663,3638,3611,
+3585,3559,3536,3516,3499,3484,3467,3445,3416,3381,3344,3308,3274,3242,3211,3180,3151,3125,3100,3072,3043,
+3015,2994,2982,2975,2969,2961,2950,2941,2932,2922,2906,2886,2864,2847,2837,2832,2831,2829,2826,2822,2815,
+2807,2798,2789,2780,2770,2756,2740,2723,2709,2696,2681,2659,2630,2597,2567,2540,2516,2493,2469,2443,2416,
+2390,2363,2335,2304,2273,2245,2222,2206,2196,2189,2179,2165,2149,2131,2112,2092,2070,2048,2028,2011,1992,
+1971,1945,1918,1892,1868,1842,1813,1779,1746,1719,1698,1680,1658,1630,1598,1565,1534,1503,1470,1434,1398,
+1365,1334,1303,1269,1228,1180,1125,1072,1026,991,967,947,924,893,856,818,782,748,713,673,628,
+582,538,497,457,417,376,334,290,245,199,151,104,56,11,-33,-78,-125,-172,-218,-263,-308,
+-354,-403,-453,-502,-547,-588,-632,-680,-734,-788,-838,-883,-929,-977,-1030,-1082,-1131,-1176,-1222,-1270,-1318,
+-1365,-1408,-1449,-1489,-1530,-1570,-1610,-1652,-1700,-1753,-1805,-1851,-1886,-1914,-1942,-1975,-2010,-2046,-2078,-2110,-2144,
+-2179,-2215,-2250,-2283,-2318,-2355,-2393,-2431,-2467,-2502,-2535,-2564,-2586,-2605,-2627,-2658,-2698,-2740,-2776,-2804,-2824,
+-2842,-2860,-2880,-2900,-2922,-2944,-2967,-2989,-3007,-3023,-3038,-3052,-3064,-3073,-3080,-3089,-3101,-3113,-3121,-3123,-3123,
+-3124,-3131,-3141,-3151,-3159,-3164,-3166,-3165,-3159,-3150,-3143,-3140,-3141,-3141,-3138,-3131,-3125,-3122,-3121,-3121,-3119,
+-3117,-3116,-3115,-3112,-3105,-3099,-3096,-3097,-3099,-3096,-3087,-3074,-3062,-3053,-3045,-3034,-3019,-3003,-2988,-2976,-2964,
+-2950,-2933,-2916,-2903,-2894,-2885,-2873,-2858,-2842,-2829,-2819,-2809,-2797,-2781,-2764,-2748,-2731,-2713,-2692,-2670,-2648,
+-2627,-2605,-2579,-2550,-2519,-2490,-2464,-2439,-2413,-2386,-2362,-2343,-2329,-2314,-2293,-2265,-2230,-2195,-2161,-2128,-2097,
+-2067,-2039,-2010,-1979,-1946,-1914,-1886,-1863,-1841,-1818,-1791,-1764,-1740,-1718,-1695,-1669,-1644,-1627,-1619,-1615,-1607,
+-1589,-1564,-1540,-1525,-1522,-1525,-1526,-1518,-1501,-1477,-1447,-1411,-1360,-1280,-1162,-1009,-841,-684,-556,-456,-369,
+-280,-192,-124,-95,-105,-134,-156,-162,-160,-174,-222,-306,-409,-509,-592,-648,-678,-690,-690,-685,-679,
+-671,-660,-643,-619,-592,-565,-538,-510,-481,-452,-426,-407,-393,-381,-367,-348,-326,-303,-282,-264,-249,
+-235,-223,-211,-199,-185,-168,-148,-126,-107,-90,-74,-56,-39,-25,-16,-10,0,21,51,85,116,
+144,171,204,243,281,315,342,364,386,411,437,464,492,525,565,609,653,695,732,766,798,
+833,872,919,971,1023,1072,1111,1139,1159,1175,1191,1210,1235,1266,1305,1346,1386,1420,1447,1469,1492,
+1515,1534,1543,1533,1496,1424,1320,1195,1072,975,917,896,899,910,923,942,970,1006,1046,1087,1132,
+1187,1255,1331,1407,1476,1532,1571,1590,1586,1568,1545,1530,1521,1512,1494,1467,1437,1413,1394,1373,1346,
+1316,1291,1271,1249,1217,1174,1130,1095,1071,1050,1021,980,935,892,854,819,783,749,716,682,639,
+586,530,485,457,442,424,391,346,299,260,232,210,188,162,132,102,76,57,48,46,45,
+39,28,19,13,6,-13,-45,-79,-93,-76,-37,-1,11,2,-11,-15,-13,-23,-58,-114,-170,
+-203,-214,-213,-217,-229,-242,-248,-246,-243,-244,-250,-263,-280,-305,-334,-359,-373,-371,-362,-357,-364,
+-380,-398,-414,-427,-440,-455,-472,-488,-504,-519,-533,-546,-558,-569,-582,-599,-619,-636,-650,-661,-674,
+-691,-712,-736,-758,-779,-799,-818,-837,-858,-883,-911,-943,-972,-996,-1014,-1029,-1045,-1064,-1086,-1107,-1126,
+-1143,-1157,-1168,-1172,-1171,-1166,-1161,-1160,-1163,-1169,-1174,-1180,-1187,-1198,-1211,-1224,-1234,-1244,-1256,-1272,-1293,
+-1313,-1328,-1335,-1335,-1332,-1329,-1329,-1332,-1338,-1345,-1351,-1356,-1358,-1359,-1359,-1360,-1364,-1369,-1375,-1380,-1383,
+-1384,-1383,-1382,-1381,-1380,-1380,-1380,-1380,-1381,-1382,-1384,-1384,-1382,-1378,-1373,-1367,-1363,-1360,-1359,-1358,-1358,
+-1358,-1355,-1349,-1340,-1330,-1320,-1312,-1304,-1297,-1289,-1282,-1276,-1271,-1266,-1260,-1252,-1244,-1238,-1234,-1230,-1225,
+-1218,-1210,-1206,-1204,-1203,-1201,-1198,-1196,-1197,-1202,-1209,-1216,-1221,-1225,-1229,-1233,-1235,-1236,-1235,-1234,-1233,
+-1231,-1228,-1223,-1217,-1212,-1208,-1205,-1201,-1196,-1190,-1185,-1181,-1176,-1170,-1162,-1153,-1146,-1140,-1134,-1127,-1117,
+-1107,-1097,-1089,-1081,-1073,-1065,-1057,-1051,-1047,-1041,-1033,-1025,-1018,-1014,-1012,-1011,-1009,-1007,-1005,-1005,-1004,
+-1000,-994,-988,-984,-983,-980,-974,-963,-950,-941,-935,-932,-926,-917,-907,-900,-896,-893,-887,-877,-866,
+-858,-855,-855,-854,-849,-840,-831,-824,-817,-806,-792,-776,-762,-753,-746,-742,-738,-738,-741,-743,-740,
+-725,-699,-662,-622,-582,-547,-522,-508,-504,-504,-501,-491,-475,-457,-440,-424,-408,-391,-373,-356,-339,
+-322,-303,-282,-261,-240,-221,-203,-187,-174,-163,-151,-137,-121,-106,-93,-80,-67,-52,-35,-18,0,
+23,50,78,102,121,138,158,180,201,219,233,251,277,306,333,353,371,392,419,447,471,
+490,510,534,562,589,613,637,668,705,741,769,790,813,842,875,903,922,940,965,999,1035,
+1064,1088,1112,1136,1152,1144,1111,1071,1051,1065,1110,1175,1254,1351,1464,1574,1653,1687,1693,1707,1757,
+1841,1933,2006,2053,2082,2104,2122,2133,2139,2149,2169,2200,2236,2272,2306,2335,2347,2328,2272,2188,2098,
+2013,1932,1843,1745,1649,1573,1522,1485,1450,1411,1375,1352,1339,1329,1312,1291,1274,1264,1258,1251,1240,
+1230,1228,1233,1240,1242,1238,1231,1225,1220,1213,1201,1183,1160,1130,1091,1039,973,891,795,689,579,
+473,378,299,233,180,140,111,90,71,50,26,4,-12,-26,-41,-60,-83,-105,-121,-134,-146,
+-162,-181,-202,-222,-241,-259,-273,-283,-288,-292,-298,-307,-316,-321,-322,-322,-327,-341,-364,-390,-412,
+-430,-446,-464,-487,-514,-542,-568,-594,-620,-645,-668,-688,-705,-721,-737,-752,-763,-770,-774,-774,-770,
+-761,-748,-735,-724,-716,-706,-690,-667,-640,-612,-585,-558,-528,-500,-474,-453,-433,-409,-382,-352,-323,
+-296,-267,-232,-193,-153,-119,-90,-64,-38,-8,26,66,110,160,212,264,317,370,422,471,516,
+556,595,635,679,722,762,799,838,881,927,973,1017,1058,1099,1140,1181,1217,1249,1282,1318,1359,
+1401,1440,1477,1516,1558,1604,1648,1689,1728,1767,1806,1844,1877,1907,1936,1967,2002,2038,2074,2109,2144,
+2177,2206,2229,2249,2271,2296,2321,2342,2358,2375,2398,2429,2459,2482,2496,2505,2513,2519,2517,2505,2489,
+2478,2479,2488,2493,2491,2484,2479,2477,2475,2467,2455,2445,2442,2442,2438,2425,2408,2393,2386,2382,2378,
+2373,2370,2372,2372,2365,2350,2335,2326,2325,2323,2311,2290,2267,2247,2233,2221,2211,2202,2197,2189,2175,
+2156,2141,2132,2120,2084,2020,1950,1912,1928,1977,2012,2003,1968,1964,2037,2171,2301,2357,2427,2372,2254,
+2139,2076,2069,2088,2102,2101,2084,2058,2026,1995,1976,1980,2005,2036,2058,2067,2071,2082,2103,2130,2157,
+2183,2211,2242,2270,2291,2306,2323,2348,2379,2411,2436,2455,2471,2489,2506,2521,2535,2554,2581,2615,2650,
+2683,2713,2741,2767,2787,2799,2805,2811,2819,2829,2834,2831,2822,2816,2820,2833,2851,2867,2878,2886,2894,
+2902,2909,2916,2920,2925,2930,2936,2943,2951,2962,2975,2992,3008,3023,3034,3043,3052,3064,3079,3098,3122,
+3150,3178,3203,3227,3253,3287,3330,3375,3413,3434,3440,3442,3449,3462,3477,3486,3486,3481,3476,3472,3464,
+3451,3438,3431,3429,3429,3420,3402,3380,3363,3353,3341,3320,3291,3266,3261,3279,3311,3341,3356,3353,3343,
+3336,3343,3371,3418,3477,3535,3578,3606,3628,3660,3709,3767,3819,3851,3867,3879,3906,3951,4007,4060,4100,
+4129,4150,4170,4189,4208,4223,4236,4248,4265,4288,4320,4353,4378,4390,4390,4386,4386,4393,4399,4395,4380,
+4358,4339,4330,4327,4326,4326,4329,4334,4338,4333,4318,4300,4289,4290,4300,4307,4307,4300,4294,4294,4299,
+4303,4304,4302,4300,4296,4288,4272,4252,4235,4226,4221,4213,4194,4165,4135,4114,4104,4101,4097,4087,4069,
+4044,4013,3976,3934,3889,3846,3807,3773,3744,3719,3695,3672,3647,3622,3598,3577,3561,3547,3533,3515,3490,
+3460,3425,3389,3354,3321,3289,3259,3230,3203,3175,3146,3114,3082,3056,3037,3026,3018,3007,2993,2981,2972,
+2964,2954,2937,2913,2889,2871,2861,2857,2858,2858,2857,2853,2845,2834,2821,2809,2798,2788,2776,2761,2747,
+2732,2718,2700,2678,2652,2624,2598,2574,2553,2531,2509,2485,2460,2433,2404,2374,2345,2318,2294,2276,2263,
+2255,2247,2237,2221,2200,2178,2156,2134,2112,2091,2071,2052,2033,2012,1987,1960,1934,1909,1884,1856,1826,
+1796,1771,1750,1730,1707,1677,1645,1611,1580,1550,1519,1486,1454,1422,1392,1359,1320,1271,1216,1158,1106,
+1067,1041,1023,1003,975,937,895,855,820,788,753,712,669,625,585,547,509,468,424,380,336,
+293,249,203,156,109,64,19,-24,-69,-115,-161,-206,-251,-297,-346,-395,-443,-487,-528,-570,-617,
+-669,-723,-776,-826,-875,-924,-974,-1024,-1071,-1117,-1165,-1214,-1263,-1309,-1352,-1391,-1430,-1469,-1509,-1552,-1599,
+-1652,-1708,-1759,-1800,-1829,-1852,-1878,-1910,-1946,-1981,-2014,-2047,-2082,-2119,-2157,-2194,-2229,-2266,-2304,-2342,-2379,
+-2413,-2446,-2478,-2505,-2528,-2549,-2574,-2608,-2650,-2692,-2728,-2755,-2774,-2791,-2809,-2829,-2851,-2874,-2897,-2921,-2943,
+-2962,-2978,-2994,-3010,-3024,-3034,-3043,-3051,-3062,-3073,-3081,-3085,-3086,-3089,-3095,-3105,-3116,-3126,-3132,-3133,-3129,
+-3122,-3115,-3111,-3112,-3112,-3109,-3101,-3091,-3086,-3086,-3089,-3090,-3089,-3087,-3087,-3087,-3085,-3080,-3075,-3072,-3073,
+-3072,-3066,-3054,-3042,-3034,-3029,-3022,-3008,-2989,-2970,-2957,-2948,-2938,-2924,-2905,-2887,-2874,-2865,-2857,-2846,-2831,
+-2816,-2805,-2798,-2791,-2780,-2765,-2749,-2732,-2716,-2697,-2675,-2652,-2628,-2606,-2584,-2559,-2531,-2502,-2475,-2452,-2430,
+-2408,-2383,-2360,-2340,-2323,-2306,-2283,-2255,-2222,-2188,-2157,-2127,-2097,-2068,-2039,-2011,-1982,-1952,-1921,-1892,-1867,
+-1845,-1823,-1800,-1775,-1747,-1719,-1689,-1661,-1637,-1621,-1613,-1609,-1603,-1591,-1572,-1549,-1527,-1513,-1509,-1515,-1524,
+-1526,-1515,-1489,-1453,-1406,-1342,-1243,-1105,-939,-772,-633,-530,-448,-367,-281,-204,-157,-151,-171,-196,-208,
+-216,-240,-297,-387,-493,-591,-665,-712,-737,-745,-742,-732,-717,-701,-684,-668,-654,-640,-621,-597,-567,
+-535,-507,-486,-473,-461,-448,-429,-408,-385,-365,-347,-331,-317,-304,-292,-279,-266,-251,-236,-221,-206,
+-189,-167,-143,-119,-103,-95,-94,-90,-75,-46,-10,25,54,79,105,139,178,216,246,270,293,
+321,356,392,422,444,462,484,519,565,618,668,710,743,770,799,835,879,926,970,1007,1035,
+1057,1079,1104,1133,1165,1199,1232,1267,1304,1342,1378,1410,1435,1456,1473,1486,1486,1457,1387,1274,1136,
+1002,902,847,830,835,849,872,908,957,1013,1064,1109,1155,1212,1281,1351,1412,1457,1485,1502,1507,
+1499,1481,1460,1446,1438,1431,1417,1395,1374,1357,1343,1326,1299,1264,1229,1198,1166,1128,1085,1045,1017,
+1000,985,960,921,875,833,799,773,748,721,689,649,599,541,486,443,418,401,378,338,285,
+231,189,164,150,140,124,98,64,26,-5,-23,-26,-25,-30,-41,-52,-54,-48,-48,-65,-99,
+-136,-158,-159,-148,-132,-114,-90,-56,-27,-22,-53,-111,-175,-225,-252,-266,-274,-281,-284,-282,-279,
+-280,-287,-297,-306,-318,-337,-363,-391,-411,-416,-412,-408,-413,-428,-445,-460,-470,-477,-487,-500,-518,
+-539,-561,-579,-592,-600,-608,-620,-640,-663,-684,-701,-713,-724,-737,-752,-768,-784,-802,-822,-843,-863,
+-883,-904,-929,-958,-988,-1013,-1031,-1045,-1059,-1076,-1095,-1116,-1135,-1152,-1166,-1178,-1185,-1187,-1186,-1185,-1186,
+-1188,-1192,-1196,-1202,-1211,-1224,-1238,-1251,-1261,-1269,-1279,-1293,-1312,-1331,-1347,-1357,-1361,-1361,-1359,-1356,-1355,
+-1354,-1357,-1361,-1368,-1374,-1377,-1379,-1378,-1379,-1382,-1386,-1392,-1396,-1398,-1399,-1400,-1401,-1401,-1402,-1403,-1404,
+-1406,-1407,-1406,-1402,-1394,-1386,-1380,-1375,-1372,-1370,-1367,-1366,-1366,-1367,-1366,-1361,-1351,-1339,-1327,-1317,-1309,
+-1302,-1294,-1287,-1280,-1276,-1271,-1265,-1257,-1248,-1240,-1235,-1230,-1225,-1219,-1214,-1211,-1209,-1208,-1206,-1202,-1198,
+-1197,-1198,-1202,-1206,-1209,-1211,-1213,-1215,-1218,-1220,-1221,-1220,-1218,-1215,-1212,-1208,-1205,-1202,-1200,-1196,-1192,
+-1186,-1179,-1173,-1168,-1164,-1159,-1153,-1146,-1141,-1136,-1130,-1123,-1113,-1102,-1092,-1083,-1074,-1065,-1056,-1048,-1043,
+-1039,-1034,-1027,-1020,-1015,-1011,-1009,-1006,-1002,-999,-998,-998,-998,-995,-989,-983,-980,-978,-975,-966,-954,
+-942,-934,-930,-927,-921,-912,-901,-893,-887,-881,-873,-862,-852,-846,-845,-847,-848,-845,-839,-833,-826,
+-820,-812,-802,-791,-780,-771,-762,-751,-738,-725,-712,-700,-686,-667,-641,-610,-578,-549,-525,-510,-503,
+-503,-505,-506,-501,-490,-474,-456,-438,-421,-404,-386,-368,-350,-331,-313,-297,-280,-262,-243,-222,-204,
+-188,-174,-160,-143,-125,-108,-94,-79,-62,-42,-21,0,21,47,76,104,127,144,159,177,197,
+217,233,247,266,291,319,344,365,386,412,442,470,491,505,520,542,569,597,622,647,677,
+712,745,770,791,815,844,875,899,915,933,961,999,1038,1068,1089,1109,1131,1143,1133,1099,1059,
+1039,1053,1098,1164,1247,1349,1465,1574,1646,1671,1671,1684,1739,1830,1929,2004,2046,2068,2081,2089,2090,
+2087,2091,2111,2146,2186,2221,2246,2260,2257,2230,2173,2094,2007,1923,1839,1751,1660,1577,1515,1477,1451,
+1423,1392,1368,1356,1354,1347,1326,1296,1272,1260,1257,1251,1236,1217,1205,1206,1216,1226,1229,1227,1223,
+1220,1213,1199,1174,1137,1086,1021,942,854,762,671,581,493,406,325,254,194,148,114,89,69,
+49,29,9,-7,-20,-32,-48,-68,-90,-112,-128,-140,-152,-167,-186,-206,-225,-242,-255,-266,-274,
+-279,-282,-285,-289,-293,-294,-293,-293,-301,-319,-347,-376,-403,-422,-438,-454,-472,-492,-513,-537,-563,
+-592,-621,-645,-665,-682,-699,-716,-732,-744,-750,-754,-756,-756,-752,-743,-734,-725,-716,-705,-687,-663,
+-636,-612,-589,-564,-536,-507,-481,-459,-438,-414,-387,-358,-331,-305,-274,-237,-196,-157,-125,-100,-76,
+-49,-16,23,66,113,164,218,273,329,383,436,485,529,567,604,643,686,730,772,811,849,
+890,932,974,1014,1054,1096,1141,1183,1218,1248,1276,1308,1346,1386,1425,1463,1503,1548,1596,1641,1682,
+1721,1762,1803,1841,1875,1904,1934,1969,2006,2042,2074,2106,2141,2177,2210,2234,2254,2274,2299,2326,2348,
+2364,2380,2403,2435,2468,2494,2509,2518,2525,2531,2530,2518,2503,2494,2496,2504,2510,2507,2500,2496,2495,
+2492,2482,2467,2456,2453,2454,2450,2437,2418,2402,2392,2384,2375,2367,2363,2366,2369,2364,2351,2336,2327,
+2323,2317,2302,2283,2268,2262,2258,2247,2226,2203,2187,2181,2177,2167,2152,2133,2107,2065,2010,1967,1971,
+2035,2130,2199,2203,2160,2130,2169,2274,2385,2427,2260,2219,2129,2041,1994,1992,2015,2044,2068,2085,2091,
+2078,2048,2019,2009,2026,2057,2085,2097,2101,2110,2131,2160,2188,2210,2230,2252,2275,2294,2309,2324,2344,
+2372,2401,2426,2442,2451,2460,2471,2489,2516,2553,2599,2648,2693,2728,2753,2768,2779,2786,2790,2795,2804,
+2814,2824,2826,2818,2806,2799,2805,2823,2848,2871,2888,2898,2903,2905,2907,2909,2914,2923,2934,2945,2954,
+2964,2975,2990,3010,3030,3048,3061,3070,3078,3089,3104,3125,3153,3184,3215,3242,3264,3286,3313,3346,3379,
+3405,3418,3418,3412,3410,3414,3423,3432,3440,3445,3446,3442,3430,3415,3403,3400,3403,3406,3401,3387,3372,
+3362,3356,3344,3322,3294,3271,3268,3285,3313,3337,3349,3352,3352,3358,3376,3411,3462,3523,3581,3624,3652,
+3676,3712,3767,3832,3886,3916,3927,3938,3968,4020,4082,4135,4171,4192,4207,4224,4244,4263,4279,4293,4311,
+4334,4363,4393,4419,4433,4434,4420,4400,4382,4374,4374,4377,4375,4364,4344,4322,4306,4301,4308,4321,4333,
+4336,4328,4314,4304,4304,4314,4325,4330,4326,4318,4312,4313,4318,4322,4323,4322,4320,4315,4307,4293,4277,
+4262,4252,4246,4237,4223,4204,4184,4168,4158,4151,4144,4133,4115,4089,4054,4014,3972,3931,3892,3855,3820,
+3788,3760,3734,3709,3684,3659,3636,3617,3604,3593,3579,3559,3532,3500,3465,3430,3396,3362,3329,3297,3267,
+3239,3210,3181,3150,3121,3097,3080,3066,3052,3036,3020,3007,2999,2992,2980,2962,2939,2916,2900,2891,2888,
+2889,2891,2890,2885,2874,2860,2844,2830,2819,2809,2799,2786,2772,2756,2737,2717,2695,2673,2653,2635,2616,
+2595,2572,2548,2522,2495,2466,2436,2408,2384,2364,2347,2332,2319,2309,2300,2287,2270,2247,2222,2198,2175,
+2154,2133,2112,2091,2071,2048,2023,1996,1968,1943,1920,1897,1873,1848,1823,1798,1773,1746,1717,1687,1656,
+1626,1596,1566,1536,1505,1472,1436,1395,1346,1292,1236,1184,1141,1111,1091,1073,1051,1019,980,938,899,
+862,826,787,745,704,666,631,595,556,513,468,424,382,341,299,254,208,161,115,70,25,
+-19,-64,-109,-154,-199,-245,-292,-339,-386,-431,-475,-518,-563,-610,-660,-712,-764,-815,-865,-914,-961,
+-1009,-1058,-1108,-1159,-1208,-1252,-1292,-1329,-1366,-1404,-1445,-1491,-1544,-1603,-1660,-1710,-1746,-1771,-1793,-1818,-1849,
+-1884,-1919,-1952,-1987,-2026,-2066,-2104,-2139,-2172,-2207,-2245,-2285,-2322,-2357,-2389,-2420,-2450,-2476,-2501,-2528,-2560,
+-2597,-2636,-2670,-2696,-2717,-2737,-2757,-2779,-2803,-2828,-2852,-2876,-2896,-2914,-2930,-2946,-2963,-2979,-2992,-3004,-3014,
+-3024,-3035,-3043,-3048,-3052,-3057,-3063,-3072,-3083,-3092,-3099,-3101,-3096,-3088,-3081,-3078,-3080,-3081,-3077,-3068,-3059,
+-3054,-3055,-3058,-3060,-3059,-3059,-3059,-3059,-3056,-3050,-3045,-3043,-3043,-3041,-3032,-3020,-3010,-3006,-3004,-2997,-2980,
+-2958,-2938,-2927,-2922,-2915,-2900,-2879,-2859,-2846,-2840,-2833,-2822,-2806,-2792,-2783,-2778,-2773,-2763,-2749,-2732,-2715,
+-2697,-2678,-2655,-2630,-2606,-2584,-2562,-2539,-2513,-2486,-2461,-2439,-2420,-2401,-2380,-2358,-2337,-2316,-2294,-2269,-2241,
+-2211,-2181,-2153,-2124,-2095,-2064,-2034,-2006,-1980,-1952,-1921,-1890,-1862,-1840,-1823,-1807,-1787,-1758,-1722,-1685,-1654,
+-1631,-1616,-1606,-1597,-1589,-1581,-1572,-1559,-1540,-1519,-1505,-1505,-1516,-1527,-1524,-1503,-1471,-1433,-1383,-1305,-1182,
+-1019,-844,-689,-575,-496,-430,-363,-298,-251,-233,-239,-253,-265,-279,-312,-377,-471,-576,-668,-736,-777,
+-797,-803,-797,-781,-756,-729,-704,-687,-676,-668,-655,-634,-606,-579,-558,-546,-539,-530,-514,-491,-465,
+-443,-424,-408,-393,-379,-366,-353,-339,-325,-312,-303,-295,-283,-264,-237,-208,-186,-177,-177,-177,-167,
+-141,-104,-65,-33,-9,14,42,78,117,151,176,196,221,257,302,346,375,387,389,396,424,
+473,534,593,638,669,694,722,759,802,847,888,921,949,974,1002,1034,1069,1103,1132,1156,1179,
+1206,1243,1287,1331,1366,1388,1398,1401,1393,1362,1295,1190,1064,950,877,854,869,903,939,976,1020,
+1073,1128,1177,1217,1257,1303,1354,1401,1434,1449,1454,1455,1454,1448,1435,1420,1408,1402,1397,1388,1372,
+1355,1340,1326,1307,1278,1240,1199,1159,1120,1080,1041,1007,984,968,948,917,875,828,786,752,723,
+692,658,619,574,523,469,420,383,362,346,323,284,232,178,134,108,96,91,81,59,20,
+-27,-71,-97,-102,-96,-93,-102,-117,-126,-125,-121,-126,-147,-178,-206,-223,-228,-226,-214,-189,-151,
+-111,-88,-94,-130,-181,-231,-273,-305,-327,-337,-335,-327,-321,-324,-335,-347,-354,-359,-369,-389,-416,
+-440,-454,-457,-457,-463,-478,-496,-511,-520,-523,-524,-529,-543,-566,-594,-619,-636,-644,-649,-660,-679,
+-705,-731,-753,-768,-780,-789,-797,-804,-813,-828,-849,-873,-895,-914,-930,-950,-975,-1002,-1029,-1050,-1067,
+-1082,-1097,-1114,-1131,-1147,-1161,-1174,-1186,-1194,-1199,-1202,-1205,-1209,-1213,-1216,-1220,-1225,-1234,-1246,-1261,-1275,
+-1288,-1299,-1309,-1321,-1335,-1350,-1363,-1375,-1383,-1388,-1389,-1387,-1383,-1378,-1375,-1376,-1381,-1388,-1395,-1399,-1400,
+-1400,-1400,-1402,-1405,-1408,-1410,-1411,-1413,-1415,-1417,-1417,-1418,-1418,-1420,-1421,-1419,-1413,-1405,-1396,-1390,-1385,
+-1382,-1379,-1376,-1374,-1373,-1373,-1371,-1366,-1356,-1344,-1334,-1325,-1319,-1312,-1303,-1294,-1287,-1280,-1276,-1271,-1265,
+-1256,-1247,-1239,-1232,-1226,-1222,-1217,-1214,-1211,-1209,-1206,-1204,-1201,-1199,-1199,-1200,-1201,-1201,-1200,-1199,-1199,
+-1200,-1202,-1203,-1202,-1200,-1197,-1194,-1192,-1189,-1186,-1183,-1179,-1174,-1169,-1163,-1158,-1153,-1149,-1145,-1140,-1135,
+-1129,-1123,-1118,-1111,-1104,-1095,-1086,-1077,-1067,-1058,-1049,-1042,-1038,-1034,-1029,-1023,-1016,-1011,-1008,-1005,-1002,
+-998,-994,-992,-992,-992,-990,-986,-981,-976,-971,-963,-954,-943,-935,-930,-927,-923,-916,-906,-896,-888,
+-881,-874,-864,-852,-842,-835,-832,-831,-830,-826,-822,-817,-813,-810,-804,-798,-791,-785,-779,-770,-756,
+-737,-714,-690,-665,-642,-619,-595,-573,-555,-540,-528,-519,-512,-506,-503,-503,-502,-497,-486,-468,-446,
+-424,-406,-389,-373,-354,-335,-318,-304,-291,-276,-257,-236,-217,-200,-185,-169,-151,-132,-115,-101,-85,
+-65,-41,-16,6,29,55,84,111,134,151,165,181,200,218,234,250,270,294,320,345,367,
+392,422,455,482,501,514,529,552,580,607,630,654,682,715,746,771,793,817,845,871,891,
+904,923,953,994,1032,1058,1077,1098,1122,1136,1125,1088,1045,1025,1040,1086,1149,1227,1322,1434,1542,
+1617,1647,1652,1670,1731,1829,1933,2009,2047,2058,2060,2059,2055,2049,2049,2065,2097,2136,2169,2190,2197,
+2185,2149,2087,2007,1922,1839,1757,1674,1591,1520,1471,1441,1419,1394,1366,1348,1347,1352,1348,1324,1286,
+1254,1240,1238,1233,1217,1194,1178,1180,1194,1208,1215,1213,1209,1205,1197,1178,1142,1086,1013,926,830,
+735,647,568,497,427,354,281,215,162,124,96,74,54,36,19,4,-8,-21,-36,-54,-75,
+-98,-119,-136,-150,-164,-179,-196,-213,-227,-239,-248,-257,-265,-272,-275,-275,-274,-273,-273,-273,-277,
+-287,-305,-330,-358,-384,-406,-424,-439,-455,-470,-487,-508,-534,-564,-594,-619,-639,-657,-674,-693,-708,
+-719,-725,-728,-732,-736,-737,-734,-728,-720,-711,-698,-679,-656,-631,-609,-589,-566,-540,-512,-486,-464,
+-442,-418,-391,-364,-339,-313,-284,-247,-205,-166,-135,-110,-84,-53,-15,28,75,126,180,237,294,
+348,400,449,496,539,578,615,655,697,741,782,820,857,895,935,974,1012,1051,1094,1138,1179,
+1213,1242,1269,1300,1337,1376,1413,1452,1494,1541,1590,1636,1677,1718,1760,1804,1845,1880,1910,1942,1977,
+2012,2044,2072,2101,2136,2175,2210,2236,2256,2276,2302,2330,2354,2371,2386,2410,2443,2477,2504,2519,2527,
+2533,2537,2535,2524,2511,2506,2511,2520,2525,2522,2516,2514,2514,2511,2499,2481,2467,2461,2460,2455,2441,
+2424,2409,2399,2389,2376,2363,2355,2356,2360,2360,2354,2346,2341,2334,2318,2292,2267,2256,2258,2260,2246,
+2215,2185,2172,2175,2179,2166,2137,2105,2080,2065,2055,2058,2090,2159,2240,2288,2269,2195,2123,2108,2159,
+2230,2260,2012,2008,1984,1968,1979,2010,2043,2068,2089,2109,2123,2118,2091,2057,2040,2052,2083,2113,2129,
+2135,2146,2169,2199,2226,2244,2258,2276,2300,2326,2348,2365,2381,2401,2423,2441,2453,2460,2469,2486,2515,
+2554,2602,2652,2698,2734,2759,2771,2777,2780,2783,2788,2795,2803,2809,2809,2803,2792,2784,2786,2802,2829,
+2856,2879,2893,2900,2904,2908,2912,2918,2927,2940,2953,2965,2975,2983,2994,3010,3030,3051,3069,3083,3093,
+3103,3115,3133,3156,3184,3214,3244,3270,3291,3309,3326,3344,3360,3372,3378,3377,3375,3376,3382,3393,3406,
+3417,3423,3420,3409,3392,3377,3369,3372,3381,3386,3383,3374,3365,3359,3353,3340,3319,3295,3281,3283,3298,
+3318,3334,3344,3354,3369,3390,3418,3455,3502,3556,3611,3658,3694,3729,3775,3834,3895,3941,3966,3978,3997,
+4040,4102,4166,4214,4239,4250,4259,4274,4292,4308,4320,4333,4353,4382,4416,4450,4478,4493,4492,4475,4444,
+4408,4377,4360,4356,4357,4355,4344,4326,4313,4312,4324,4341,4354,4353,4341,4325,4317,4319,4330,4340,4342,
+4338,4331,4327,4329,4334,4339,4343,4344,4342,4338,4331,4320,4307,4294,4282,4270,4257,4242,4228,4215,4203,
+4194,4187,4181,4172,4156,4131,4095,4054,4013,3974,3937,3900,3864,3830,3800,3774,3749,3722,3695,3671,3654,
+3642,3632,3619,3597,3568,3534,3499,3464,3428,3391,3354,3319,3287,3259,3232,3206,3182,3159,3138,3119,3099,
+3079,3059,3043,3033,3026,3018,3004,2986,2966,2947,2934,2926,2922,2922,2922,2921,2915,2903,2886,2870,2857,
+2847,2839,2829,2817,2802,2785,2766,2744,2723,2704,2689,2674,2658,2636,2611,2584,2556,2527,2497,2468,2444,
+2426,2413,2402,2389,2375,2361,2348,2333,2314,2290,2262,2236,2214,2193,2173,2151,2129,2106,2083,2059,2032,
+2004,1978,1956,1936,1916,1894,1867,1838,1808,1780,1754,1728,1701,1672,1642,1611,1579,1546,1508,1463,1412,
+1357,1304,1257,1218,1189,1165,1144,1120,1091,1057,1021,983,946,908,868,824,782,743,709,677,641,
+600,556,511,470,430,391,350,307,263,217,171,125,78,32,-13,-58,-104,-150,-196,-241,-286,
+-332,-378,-425,-470,-514,-559,-604,-653,-704,-756,-805,-853,-900,-949,-1000,-1054,-1107,-1155,-1198,-1235,-1270,
+-1305,-1344,-1388,-1438,-1495,-1554,-1610,-1654,-1686,-1709,-1731,-1758,-1791,-1826,-1862,-1898,-1936,-1977,-2018,-2055,-2087,
+-2118,-2152,-2191,-2231,-2269,-2301,-2330,-2360,-2392,-2425,-2456,-2484,-2513,-2544,-2576,-2607,-2635,-2660,-2684,-2708,-2733,
+-2759,-2786,-2811,-2833,-2851,-2867,-2883,-2898,-2915,-2930,-2944,-2957,-2969,-2981,-2992,-3002,-3010,-3016,-3023,-3029,-3036,
+-3045,-3055,-3063,-3068,-3066,-3059,-3051,-3048,-3049,-3050,-3047,-3040,-3032,-3028,-3028,-3030,-3031,-3031,-3031,-3031,-3030,
+-3024,-3017,-3011,-3011,-3012,-3009,-2999,-2986,-2978,-2977,-2978,-2971,-2952,-2929,-2910,-2902,-2900,-2894,-2878,-2855,-2834,
+-2821,-2815,-2810,-2798,-2782,-2767,-2758,-2754,-2751,-2742,-2728,-2711,-2694,-2677,-2659,-2639,-2615,-2591,-2568,-2545,-2523,
+-2499,-2474,-2450,-2428,-2409,-2391,-2373,-2354,-2334,-2312,-2288,-2262,-2234,-2205,-2176,-2148,-2119,-2089,-2058,-2027,-1998,
+-1972,-1946,-1917,-1886,-1858,-1837,-1823,-1812,-1793,-1763,-1723,-1684,-1653,-1635,-1625,-1613,-1599,-1584,-1574,-1572,-1568,
+-1556,-1534,-1511,-1500,-1503,-1512,-1513,-1499,-1475,-1449,-1416,-1359,-1258,-1109,-935,-770,-641,-552,-489,-436,-387,
+-348,-327,-322,-327,-337,-358,-403,-475,-568,-664,-746,-803,-836,-850,-852,-844,-825,-799,-769,-741,-721,
+-709,-700,-690,-673,-650,-629,-615,-608,-603,-593,-574,-549,-522,-498,-478,-460,-444,-430,-418,-406,-394,
+-382,-373,-366,-359,-346,-324,-295,-270,-257,-257,-261,-255,-233,-196,-154,-118,-92,-71,-47,-15,21,
+58,87,109,129,156,195,242,284,308,313,309,315,345,398,460,513,548,569,591,625,673,
+727,777,816,846,872,898,927,959,991,1020,1043,1063,1084,1113,1157,1213,1269,1309,1326,1322,1304,
+1279,1244,1191,1115,1030,961,932,950,1002,1063,1117,1159,1195,1233,1273,1311,1345,1376,1408,1438,1460,
+1468,1463,1453,1445,1440,1434,1423,1409,1397,1390,1384,1376,1361,1342,1323,1306,1287,1264,1234,1200,1163,
+1124,1084,1047,1015,990,966,935,894,845,796,750,708,665,619,570,521,473,425,378,338,309,
+292,281,264,233,189,140,96,63,42,29,16,-7,-46,-97,-145,-176,-183,-174,-164,-166,-177,
+-190,-196,-197,-198,-206,-220,-235,-250,-264,-278,-287,-283,-263,-231,-201,-187,-194,-217,-251,-292,-333,
+-370,-393,-398,-390,-380,-376,-382,-390,-395,-397,-403,-418,-443,-468,-486,-495,-498,-504,-518,-539,-558,
+-570,-572,-567,-564,-570,-589,-618,-647,-669,-682,-690,-702,-720,-745,-770,-794,-813,-829,-839,-844,-846,
+-850,-861,-880,-905,-928,-948,-963,-978,-997,-1020,-1044,-1067,-1087,-1104,-1119,-1133,-1146,-1159,-1171,-1183,-1193,
+-1202,-1209,-1215,-1222,-1228,-1233,-1237,-1241,-1246,-1254,-1265,-1280,-1296,-1312,-1326,-1337,-1346,-1354,-1363,-1373,-1383,
+-1394,-1403,-1409,-1411,-1410,-1405,-1400,-1397,-1398,-1402,-1409,-1416,-1419,-1420,-1418,-1417,-1416,-1416,-1416,-1416,-1419,
+-1422,-1426,-1428,-1428,-1428,-1427,-1426,-1424,-1420,-1415,-1409,-1404,-1399,-1394,-1388,-1384,-1381,-1380,-1378,-1375,-1368,
+-1360,-1351,-1344,-1337,-1332,-1325,-1317,-1307,-1298,-1290,-1284,-1279,-1273,-1266,-1257,-1248,-1239,-1233,-1227,-1222,-1215,
+-1209,-1204,-1201,-1200,-1200,-1198,-1196,-1194,-1193,-1192,-1191,-1188,-1186,-1185,-1185,-1185,-1183,-1180,-1177,-1174,-1173,
+-1171,-1168,-1164,-1161,-1157,-1153,-1149,-1144,-1139,-1136,-1133,-1128,-1122,-1114,-1106,-1100,-1096,-1092,-1087,-1079,-1070,
+-1061,-1051,-1044,-1038,-1035,-1031,-1025,-1018,-1010,-1004,-1001,-1000,-999,-997,-994,-992,-990,-989,-987,-983,-978,
+-971,-962,-952,-943,-935,-931,-929,-926,-920,-911,-901,-892,-885,-879,-872,-864,-853,-844,-835,-827,-820,
+-813,-806,-800,-795,-792,-788,-784,-780,-775,-771,-767,-760,-747,-727,-703,-677,-652,-629,-607,-587,-569,
+-557,-549,-545,-539,-529,-516,-505,-498,-496,-494,-484,-464,-438,-412,-392,-378,-364,-348,-331,-315,-302,
+-289,-275,-256,-236,-218,-203,-188,-172,-153,-134,-118,-104,-88,-67,-43,-18,4,27,52,81,111,
+136,156,171,187,204,221,237,255,275,299,323,346,370,397,428,458,483,501,517,538,565,
+594,618,637,658,686,718,749,774,796,820,847,872,890,903,922,953,991,1023,1046,1065,1090,
+1118,1133,1117,1073,1028,1012,1037,1090,1151,1215,1293,1392,1498,1584,1630,1647,1672,1734,1831,1934,2007,
+2039,2041,2034,2030,2029,2028,2030,2040,2060,2085,2109,2124,2126,2109,2066,1998,1916,1832,1753,1680,1608,
+1539,1482,1443,1419,1397,1367,1336,1316,1314,1322,1320,1297,1260,1228,1214,1212,1208,1191,1168,1154,1158,
+1174,1190,1196,1194,1188,1183,1170,1138,1082,1003,909,810,715,630,558,498,442,382,315,248,188,
+144,113,90,70,50,32,18,8,-3,-18,-38,-60,-83,-105,-126,-145,-162,-177,-192,-206,-218,
+-227,-233,-238,-245,-254,-263,-268,-269,-266,-265,-266,-272,-279,-289,-301,-317,-336,-356,-375,-393,-409,
+-426,-443,-462,-484,-510,-539,-567,-591,-611,-631,-651,-672,-689,-700,-707,-712,-718,-725,-727,-724,-717,
+-709,-701,-689,-673,-652,-631,-610,-591,-569,-544,-517,-492,-469,-446,-420,-392,-364,-339,-313,-284,-249,
+-210,-174,-143,-115,-85,-49,-7,38,87,141,199,259,316,368,415,461,506,551,593,632,672,
+712,753,792,828,862,899,936,974,1011,1049,1087,1127,1165,1198,1228,1258,1293,1332,1372,1411,1450,
+1494,1542,1591,1636,1677,1717,1760,1806,1849,1886,1919,1951,1984,2017,2044,2069,2096,2130,2169,2205,2233,
+2253,2275,2302,2332,2357,2376,2392,2416,2448,2481,2506,2520,2528,2534,2538,2536,2526,2515,2510,2516,2526,
+2530,2526,2520,2518,2520,2517,2505,2488,2473,2466,2463,2455,2441,2423,2410,2402,2393,2378,2362,2350,2346,
+2348,2349,2348,2348,2348,2341,2320,2289,2260,2249,2253,2255,2239,2208,2184,2182,2195,2198,2169,2116,2073,
+2066,2095,2136,2166,2184,2199,2211,2203,2154,2068,1982,1936,1945,1984,2012,1879,1903,1933,1979,2038,2091,
+2121,2127,2124,2126,2133,2131,2112,2087,2075,2087,2118,2147,2164,2172,2184,2209,2242,2269,2287,2300,2320,
+2350,2384,2414,2432,2443,2451,2461,2471,2481,2495,2517,2550,2593,2639,2681,2713,2736,2751,2760,2767,2772,
+2778,2784,2791,2796,2798,2795,2786,2774,2764,2765,2781,2809,2841,2868,2886,2895,2900,2906,2915,2927,2938,
+2951,2963,2974,2984,2992,3001,3013,3029,3049,3069,3086,3098,3109,3122,3138,3158,3182,3207,3233,3258,3281,
+3300,3315,3326,3333,3337,3340,3343,3346,3351,3359,3371,3385,3398,3406,3405,3395,3377,3359,3347,3347,3355,
+3365,3370,3368,3363,3359,3354,3347,3332,3314,3299,3296,3304,3318,3329,3336,3345,3362,3390,3424,3460,3497,
+3538,3586,3638,3690,3741,3793,3849,3905,3952,3983,4001,4020,4058,4118,4190,4251,4288,4301,4305,4312,4327,
+4344,4355,4361,4368,4385,4412,4447,4483,4515,4538,4549,4541,4512,4466,4417,4378,4357,4350,4350,4348,4343,
+4341,4346,4361,4378,4386,4381,4365,4346,4333,4330,4334,4339,4341,4340,4339,4341,4346,4352,4358,4363,4366,
+4368,4366,4360,4352,4341,4328,4312,4294,4276,4260,4247,4238,4231,4225,4221,4216,4208,4193,4168,4134,4095,
+4055,4016,3978,3940,3902,3869,3840,3814,3787,3759,3730,3706,3688,3676,3665,3649,3626,3596,3562,3526,3489,
+3450,3410,3371,3335,3302,3274,3249,3227,3208,3190,3172,3151,3127,3103,3083,3069,3061,3053,3043,3027,3009,
+2992,2978,2968,2959,2954,2951,2951,2949,2942,2928,2911,2896,2886,2880,2872,2862,2849,2835,2821,2805,2786,
+2765,2745,2726,2709,2690,2668,2642,2614,2587,2560,2533,2509,2490,2477,2468,2458,2445,2428,2411,2394,2378,
+2357,2330,2302,2275,2253,2233,2212,2189,2165,2141,2119,2097,2073,2046,2020,1996,1976,1955,1931,1903,1872,
+1842,1816,1794,1771,1746,1716,1682,1647,1612,1574,1531,1482,1428,1375,1330,1296,1271,1249,1226,1199,1166,
+1130,1094,1059,1025,990,951,909,867,826,791,758,724,686,643,598,556,516,478,438,397,356,
+314,272,228,180,132,85,40,-4,-51,-99,-147,-193,-236,-280,-326,-374,-421,-466,-510,-554,-601,
+-652,-703,-751,-797,-843,-892,-945,-1000,-1054,-1102,-1143,-1178,-1213,-1250,-1291,-1339,-1393,-1450,-1506,-1554,-1592,
+-1619,-1641,-1664,-1695,-1730,-1769,-1807,-1846,-1886,-1928,-1968,-2003,-2035,-2067,-2103,-2144,-2184,-2218,-2246,-2270,-2298,
+-2332,-2370,-2407,-2440,-2468,-2494,-2521,-2551,-2581,-2610,-2636,-2663,-2689,-2717,-2744,-2768,-2788,-2805,-2821,-2838,-2856,
+-2872,-2887,-2899,-2910,-2923,-2936,-2948,-2960,-2970,-2979,-2987,-2994,-2999,-3006,-3015,-3025,-3033,-3035,-3031,-3024,-3020,
+-3020,-3020,-3017,-3011,-3004,-3000,-2999,-3000,-3000,-3000,-3000,-3001,-2999,-2993,-2986,-2983,-2984,-2985,-2980,-2968,-2955,
+-2947,-2947,-2948,-2941,-2923,-2900,-2884,-2879,-2879,-2873,-2857,-2832,-2810,-2797,-2791,-2784,-2772,-2756,-2741,-2732,-2729,
+-2726,-2719,-2707,-2691,-2676,-2662,-2647,-2630,-2609,-2585,-2560,-2535,-2511,-2488,-2466,-2443,-2420,-2399,-2381,-2363,-2346,
+-2327,-2306,-2283,-2257,-2229,-2199,-2169,-2140,-2112,-2084,-2055,-2026,-1996,-1968,-1942,-1915,-1889,-1863,-1842,-1825,-1810,
+-1788,-1757,-1719,-1684,-1661,-1652,-1647,-1638,-1619,-1598,-1583,-1578,-1576,-1566,-1544,-1518,-1500,-1495,-1498,-1499,-1491,
+-1476,-1462,-1445,-1409,-1333,-1211,-1056,-897,-759,-654,-579,-522,-477,-441,-418,-405,-404,-416,-448,-505,-584,
+-673,-757,-822,-862,-880,-881,-874,-861,-847,-830,-811,-791,-773,-759,-750,-740,-727,-709,-690,-674,-664,
+-654,-642,-623,-599,-573,-548,-525,-504,-487,-475,-467,-461,-453,-443,-433,-424,-413,-396,-372,-348,-332,
+-329,-335,-335,-321,-288,-246,-207,-177,-154,-132,-105,-73,-39,-8,17,40,63,92,128,167,201,
+224,233,239,257,294,346,399,434,450,457,474,514,572,635,689,727,754,778,804,834,865,
+894,921,947,975,1010,1056,1114,1180,1239,1276,1283,1263,1230,1197,1167,1137,1100,1063,1040,1049,1093,
+1163,1234,1287,1319,1336,1351,1370,1395,1421,1446,1466,1481,1487,1483,1471,1456,1443,1432,1419,1403,1386,
+1370,1359,1349,1338,1320,1298,1275,1257,1243,1233,1221,1204,1179,1146,1107,1067,1030,997,962,921,874,
+822,770,718,665,607,546,486,431,382,337,296,261,237,222,210,194,166,128,86,44,7,
+-23,-48,-70,-96,-131,-173,-215,-247,-260,-257,-247,-243,-245,-252,-258,-261,-262,-265,-270,-277,-287,
+-302,-322,-341,-350,-346,-332,-314,-300,-291,-286,-289,-306,-340,-385,-428,-454,-459,-449,-437,-431,-430,
+-432,-436,-443,-458,-480,-504,-522,-531,-534,-538,-550,-568,-590,-605,-611,-608,-603,-606,-621,-646,-674,
+-697,-713,-727,-742,-760,-780,-801,-823,-844,-865,-881,-890,-892,-893,-900,-916,-938,-961,-980,-996,-1009,
+-1024,-1041,-1061,-1081,-1101,-1118,-1133,-1146,-1157,-1167,-1179,-1190,-1200,-1209,-1217,-1226,-1236,-1245,-1252,-1256,-1260,
+-1265,-1273,-1285,-1299,-1315,-1332,-1346,-1358,-1365,-1370,-1374,-1380,-1388,-1398,-1408,-1417,-1425,-1431,-1432,-1428,-1422,
+-1418,-1417,-1421,-1427,-1431,-1432,-1430,-1426,-1423,-1420,-1418,-1418,-1421,-1426,-1432,-1436,-1438,-1437,-1434,-1431,-1428,
+-1426,-1424,-1422,-1419,-1413,-1405,-1397,-1391,-1388,-1388,-1387,-1383,-1378,-1372,-1366,-1359,-1353,-1346,-1338,-1331,-1323,
+-1314,-1304,-1295,-1287,-1280,-1273,-1266,-1257,-1248,-1241,-1235,-1228,-1219,-1209,-1201,-1197,-1196,-1196,-1194,-1190,-1186,
+-1183,-1182,-1180,-1178,-1175,-1173,-1171,-1169,-1166,-1161,-1157,-1155,-1155,-1155,-1155,-1153,-1150,-1147,-1144,-1140,-1135,
+-1130,-1126,-1123,-1118,-1111,-1102,-1093,-1087,-1083,-1081,-1077,-1070,-1062,-1054,-1046,-1040,-1035,-1030,-1025,-1019,-1011,
+-1004,-999,-996,-997,-998,-999,-997,-993,-990,-986,-983,-980,-975,-968,-959,-949,-941,-935,-932,-929,-925,
+-917,-907,-896,-886,-879,-874,-870,-865,-859,-851,-842,-831,-819,-806,-795,-786,-778,-772,-766,-761,-756,
+-753,-750,-747,-740,-729,-711,-689,-667,-647,-629,-610,-589,-567,-549,-540,-539,-541,-538,-528,-513,-499,
+-490,-481,-467,-446,-419,-394,-375,-362,-351,-338,-322,-307,-295,-282,-268,-250,-232,-216,-202,-188,-172,
+-152,-133,-117,-104,-88,-68,-44,-21,1,23,49,79,111,139,160,178,194,210,226,244,262,
+283,305,327,349,373,400,430,458,480,498,518,544,574,601,622,639,660,688,720,749,771,
+791,815,843,870,890,907,929,960,994,1021,1041,1062,1091,1120,1129,1102,1051,1007,1003,1046,1111,
+1170,1218,1272,1353,1455,1552,1616,1649,1680,1737,1825,1919,1986,2012,2010,2001,2001,2010,2020,2026,2028,
+2029,2031,2033,2032,2025,2002,1958,1893,1816,1739,1672,1612,1554,1500,1455,1425,1403,1378,1343,1303,1275,
+1267,1271,1271,1255,1227,1202,1192,1191,1186,1170,1149,1138,1144,1160,1173,1175,1169,1160,1149,1125,1076,
+998,900,797,702,623,559,506,458,408,350,286,223,172,137,113,93,72,50,32,20,11,
+0,-15,-38,-63,-88,-112,-136,-157,-175,-189,-200,-209,-216,-222,-224,-226,-231,-240,-251,-259,-262,
+-262,-263,-269,-279,-289,-298,-304,-311,-319,-330,-343,-357,-373,-391,-412,-436,-462,-490,-517,-542,-565,
+-586,-608,-631,-653,-671,-684,-693,-702,-711,-718,-719,-714,-706,-698,-690,-681,-668,-650,-630,-612,-594,
+-574,-550,-524,-498,-474,-450,-423,-393,-362,-333,-305,-274,-240,-204,-170,-140,-110,-78,-41,0,42,
+88,141,201,262,320,372,418,464,511,559,604,645,684,723,763,801,836,870,905,940,976,
+1011,1046,1082,1119,1154,1188,1220,1255,1293,1335,1376,1415,1456,1500,1549,1596,1639,1678,1716,1758,1803,
+1847,1886,1920,1952,1985,2015,2041,2063,2089,2123,2162,2198,2226,2249,2273,2303,2334,2361,2381,2399,2423,
+2452,2482,2504,2517,2526,2535,2542,2541,2531,2517,2511,2515,2523,2527,2523,2517,2515,2516,2514,2504,2489,
+2477,2471,2467,2458,2441,2423,2410,2402,2394,2383,2368,2357,2350,2347,2343,2339,2338,2338,2333,2314,2284,
+2257,2246,2249,2250,2237,2216,2207,2222,2243,2239,2191,2119,2071,2079,2137,2198,2218,2189,2134,2085,2048,
+2010,1958,1898,1854,1841,1855,1879,1902,1928,1973,2034,2099,2147,2162,2148,2126,2115,2119,2124,2121,2110,
+2108,2123,2151,2178,2195,2205,2219,2245,2279,2308,2328,2345,2369,2402,2440,2469,2483,2485,2481,2479,2483,
+2497,2522,2562,2614,2667,2711,2737,2746,2745,2743,2747,2756,2768,2777,2783,2786,2785,2783,2776,2767,2757,
+2753,2761,2783,2815,2849,2877,2894,2902,2908,2916,2927,2941,2954,2966,2977,2986,2994,3004,3016,3033,3052,
+3073,3091,3104,3114,3124,3137,3154,3175,3198,3220,3241,3261,3279,3294,3307,3315,3320,3324,3326,3330,3336,
+3345,3356,3369,3382,3392,3395,3389,3374,3356,3341,3335,3339,3348,3356,3359,3358,3355,3353,3348,3338,3325,
+3312,3308,3315,3329,3341,3346,3347,3355,3377,3413,3458,3503,3545,3584,3627,3676,3732,3794,3860,3922,3971,
+4002,4017,4033,4066,4127,4206,4282,4335,4357,4360,4361,4372,4390,4407,4415,4418,4422,4435,4456,4482,4509,
+4535,4559,4576,4578,4557,4514,4461,4413,4381,4367,4364,4365,4366,4369,4377,4390,4402,4408,4403,4389,4371,
+4355,4344,4339,4338,4339,4343,4349,4356,4362,4367,4372,4378,4384,4389,4391,4388,4380,4368,4352,4333,4313,
+4293,4277,4266,4260,4257,4256,4254,4250,4241,4224,4199,4168,4132,4094,4056,4017,3979,3943,3911,3882,3855,
+3826,3795,3766,3741,3723,3709,3694,3674,3648,3617,3584,3548,3510,3469,3427,3388,3352,3320,3291,3265,3243,
+3225,3210,3194,3175,3152,3129,3110,3097,3088,3078,3065,3048,3031,3018,3007,2997,2987,2980,2977,2977,2975,
+2966,2950,2932,2919,2912,2909,2903,2892,2879,2868,2859,2849,2834,2812,2786,2761,2738,2716,2694,2671,2646,
+2623,2600,2580,2561,2546,2534,2524,2511,2495,2476,2457,2439,2420,2397,2371,2344,2319,2297,2276,2253,2226,
+2199,2174,2153,2135,2114,2091,2065,2039,2015,1991,1965,1937,1908,1882,1858,1837,1814,1786,1752,1714,1674,
+1635,1595,1553,1506,1459,1415,1380,1353,1331,1307,1279,1245,1207,1169,1132,1097,1062,1026,987,947,908,
+871,838,805,769,728,684,641,600,561,521,478,436,395,357,318,276,230,182,135,91,47,
+1,-47,-97,-144,-189,-232,-277,-324,-372,-417,-461,-505,-552,-602,-652,-700,-744,-789,-836,-888,-942,
+-994,-1041,-1080,-1116,-1151,-1189,-1234,-1286,-1342,-1398,-1449,-1492,-1524,-1548,-1571,-1596,-1628,-1666,-1707,-1749,-1790,
+-1830,-1870,-1907,-1943,-1978,-2014,-2054,-2095,-2133,-2164,-2189,-2212,-2241,-2277,-2318,-2359,-2394,-2422,-2447,-2473,-2502,
+-2533,-2563,-2591,-2617,-2643,-2670,-2695,-2717,-2735,-2752,-2771,-2792,-2814,-2834,-2848,-2860,-2870,-2882,-2895,-2908,-2920,
+-2932,-2944,-2954,-2962,-2968,-2972,-2979,-2987,-2995,-2998,-2997,-2993,-2991,-2990,-2989,-2985,-2977,-2970,-2967,-2966,-2967,
+-2967,-2967,-2967,-2966,-2965,-2962,-2959,-2959,-2961,-2960,-2953,-2938,-2923,-2915,-2915,-2915,-2907,-2889,-2869,-2855,-2851,
+-2852,-2848,-2833,-2812,-2791,-2778,-2769,-2760,-2746,-2730,-2717,-2710,-2707,-2706,-2700,-2690,-2677,-2663,-2649,-2636,-2621,
+-2603,-2579,-2552,-2525,-2499,-2477,-2457,-2435,-2413,-2390,-2370,-2351,-2333,-2314,-2293,-2270,-2246,-2219,-2190,-2159,-2129,
+-2103,-2080,-2056,-2029,-1998,-1967,-1939,-1915,-1893,-1871,-1848,-1826,-1802,-1777,-1747,-1716,-1691,-1676,-1672,-1671,-1662,
+-1644,-1620,-1601,-1590,-1583,-1572,-1552,-1529,-1510,-1501,-1498,-1495,-1488,-1479,-1474,-1467,-1445,-1393,-1301,-1177,-1039,
+-908,-795,-705,-635,-582,-540,-509,-487,-480,-493,-534,-601,-685,-771,-842,-889,-909,-906,-888,-865,-846,
+-837,-836,-836,-832,-822,-812,-803,-796,-786,-769,-748,-725,-706,-691,-677,-661,-640,-617,-593,-570,-550,
+-536,-529,-527,-524,-518,-505,-490,-473,-455,-436,-415,-400,-394,-397,-401,-395,-373,-338,-301,-271,-246,
+-223,-197,-166,-136,-108,-82,-57,-30,-3,23,50,79,108,137,162,185,214,253,298,337,359,
+363,361,371,403,454,512,562,600,629,658,691,728,765,801,838,878,925,978,1039,1103,1164,
+1211,1236,1235,1214,1187,1164,1151,1144,1137,1131,1133,1157,1205,1268,1329,1371,1388,1388,1384,1387,1400,
+1417,1434,1445,1451,1450,1445,1435,1422,1406,1389,1369,1348,1328,1309,1294,1281,1265,1246,1224,1201,1184,
+1177,1178,1184,1187,1177,1153,1115,1070,1023,978,933,886,837,787,734,677,615,549,482,420,367,
+320,277,238,205,179,158,136,107,69,27,-12,-49,-81,-112,-140,-167,-191,-215,-243,-272,-298,
+-318,-327,-329,-328,-325,-324,-323,-324,-327,-332,-338,-345,-354,-366,-379,-388,-391,-391,-392,-396,-397,
+-387,-361,-328,-308,-316,-357,-416,-469,-501,-507,-498,-487,-482,-483,-488,-496,-509,-527,-545,-561,-570,
+-574,-577,-584,-596,-612,-625,-633,-637,-642,-652,-670,-691,-710,-727,-741,-757,-776,-795,-813,-829,-847,
+-868,-892,-913,-927,-933,-935,-940,-951,-969,-988,-1007,-1023,-1038,-1051,-1064,-1078,-1092,-1109,-1125,-1140,-1153,
+-1164,-1174,-1184,-1194,-1202,-1210,-1220,-1233,-1249,-1262,-1271,-1276,-1280,-1286,-1295,-1308,-1322,-1336,-1350,-1363,-1374,
+-1383,-1388,-1391,-1395,-1399,-1405,-1412,-1423,-1435,-1447,-1455,-1456,-1450,-1441,-1434,-1433,-1435,-1436,-1435,-1432,-1427,
+-1423,-1421,-1420,-1421,-1424,-1430,-1435,-1440,-1442,-1442,-1438,-1434,-1431,-1428,-1428,-1427,-1425,-1421,-1413,-1405,-1400,
+-1398,-1399,-1399,-1397,-1393,-1388,-1383,-1376,-1367,-1357,-1349,-1342,-1336,-1329,-1318,-1305,-1293,-1284,-1277,-1270,-1262,
+-1253,-1245,-1238,-1230,-1220,-1209,-1200,-1195,-1194,-1194,-1191,-1186,-1180,-1176,-1173,-1172,-1169,-1165,-1161,-1159,-1157,
+-1153,-1148,-1143,-1141,-1142,-1145,-1146,-1146,-1145,-1143,-1140,-1135,-1129,-1123,-1119,-1115,-1110,-1104,-1095,-1087,-1080,
+-1076,-1072,-1067,-1060,-1054,-1047,-1042,-1036,-1030,-1023,-1017,-1011,-1006,-1001,-997,-995,-995,-997,-998,-997,-993,
+-989,-984,-980,-976,-973,-968,-961,-954,-947,-941,-935,-930,-923,-914,-903,-890,-879,-871,-865,-863,-861,
+-859,-853,-844,-832,-820,-808,-796,-784,-772,-761,-752,-744,-739,-735,-732,-729,-723,-713,-696,-675,-655,
+-639,-625,-608,-582,-551,-522,-506,-507,-519,-531,-533,-521,-502,-482,-463,-445,-426,-406,-388,-374,-362,
+-350,-336,-320,-305,-292,-280,-266,-250,-234,-219,-206,-191,-173,-154,-135,-120,-106,-90,-70,-46,-21,
+2,26,53,83,113,140,161,179,196,214,232,250,269,288,308,328,348,372,399,429,455,
+477,497,519,546,576,601,620,637,660,689,719,743,759,776,799,829,859,883,905,932,966,
+1000,1026,1044,1064,1091,1114,1114,1079,1025,989,1001,1059,1132,1186,1215,1246,1307,1402,1504,1583,1631,
+1670,1727,1808,1891,1949,1971,1967,1963,1972,1992,2013,2022,2018,2002,1980,1955,1932,1908,1879,1838,1784,
+1721,1660,1606,1558,1513,1470,1433,1407,1385,1357,1316,1270,1233,1218,1219,1221,1214,1197,1182,1175,1174,
+1168,1153,1137,1129,1135,1148,1154,1150,1138,1123,1101,1060,992,900,799,707,634,580,535,492,442,
+385,321,257,201,159,131,112,93,71,49,31,20,12,2,-14,-37,-63,-90,-118,-145,-170,
+-187,-197,-202,-205,-210,-214,-217,-217,-220,-227,-239,-249,-255,-257,-260,-268,-280,-292,-301,-305,-307,
+-311,-317,-325,-335,-347,-364,-387,-414,-443,-472,-498,-521,-544,-566,-588,-610,-630,-647,-660,-672,-684,
+-696,-703,-705,-701,-694,-688,-682,-673,-659,-641,-622,-606,-592,-576,-556,-531,-505,-479,-454,-427,-396,
+-363,-330,-297,-263,-228,-193,-161,-131,-101,-68,-32,3,40,81,131,188,249,308,361,410,458,
+508,557,603,645,685,726,768,808,845,879,912,945,978,1012,1046,1083,1122,1161,1198,1233,1269,
+1307,1347,1387,1426,1466,1510,1556,1602,1642,1679,1715,1755,1799,1841,1879,1913,1946,1978,2009,2036,2060,
+2087,2121,2158,2194,2224,2249,2276,2307,2339,2366,2387,2407,2431,2459,2486,2506,2519,2530,2542,2550,2548,
+2536,2519,2510,2513,2522,2527,2525,2521,2520,2521,2519,2512,2500,2490,2484,2477,2466,2448,2429,2415,2408,
+2402,2393,2384,2377,2373,2367,2357,2344,2334,2329,2322,2305,2280,2256,2245,2245,2246,2239,2233,2243,2272,
+2298,2290,2233,2156,2106,2115,2167,2210,2199,2133,2054,2007,2004,2021,2022,1993,1948,1911,1895,1902,1982,
+2000,2034,2077,2118,2145,2146,2128,2107,2099,2107,2119,2125,2122,2123,2136,2161,2187,2206,2219,2237,2263,
+2295,2324,2347,2368,2394,2427,2460,2483,2490,2484,2473,2467,2471,2489,2525,2575,2633,2686,2722,2736,2734,
+2727,2727,2737,2752,2766,2773,2773,2769,2766,2765,2765,2765,2763,2763,2768,2784,2810,2843,2874,2898,2914,
+2923,2929,2936,2946,2958,2971,2982,2993,3005,3019,3038,3060,3084,3104,3120,3130,3137,3145,3155,3170,3187,
+3206,3226,3245,3261,3274,3284,3292,3301,3310,3319,3328,3335,3341,3348,3356,3366,3376,3384,3384,3378,3365,
+3350,3339,3334,3336,3342,3347,3350,3351,3349,3346,3340,3330,3321,3317,3323,3338,3354,3365,3369,3369,3377,
+3400,3441,3493,3550,3602,3647,3688,3730,3783,3848,3920,3985,4030,4050,4059,4079,4131,4212,4304,4378,4417,
+4425,4420,4422,4437,4458,4475,4483,4487,4494,4508,4524,4538,4548,4557,4567,4574,4572,4553,4518,4475,4436,
+4410,4396,4392,4391,4390,4391,4394,4401,4410,4416,4415,4408,4395,4380,4366,4355,4350,4350,4355,4363,4371,
+4376,4378,4380,4384,4391,4399,4403,4402,4392,4376,4357,4337,4318,4301,4287,4277,4273,4272,4275,4276,4273,
+4264,4246,4222,4194,4162,4128,4093,4056,4021,3988,3957,3928,3896,3863,3830,3802,3781,3763,3746,3725,3699,
+3669,3638,3605,3570,3532,3490,3448,3409,3374,3341,3309,3280,3255,3237,3224,3212,3197,3178,3157,3139,3124,
+3112,3099,3084,3068,3053,3042,3031,3021,3010,3002,2999,2999,2996,2985,2967,2948,2935,2931,2931,2929,2921,
+2911,2903,2897,2891,2877,2853,2824,2795,2771,2751,2733,2714,2694,2673,2654,2637,2620,2605,2590,2574,2556,
+2537,2518,2498,2479,2458,2436,2412,2388,2365,2342,2319,2292,2262,2233,2208,2188,2170,2152,2130,2106,2080,
+2054,2028,2002,1976,1950,1925,1901,1877,1849,1817,1779,1737,1696,1656,1618,1580,1543,1507,1473,1443,1414,
+1385,1352,1315,1277,1241,1206,1171,1136,1098,1059,1020,982,946,911,878,842,804,764,722,682,643,
+604,562,518,474,433,395,358,317,272,225,179,137,95,50,2,-47,-95,-141,-186,-232,-279,
+-326,-370,-413,-456,-501,-550,-599,-646,-691,-736,-783,-832,-883,-931,-975,-1014,-1049,-1085,-1125,-1172,-1225,
+-1281,-1335,-1383,-1422,-1454,-1480,-1504,-1532,-1564,-1603,-1645,-1689,-1731,-1771,-1808,-1844,-1881,-1919,-1959,-1999,-2038,
+-2072,-2103,-2130,-2159,-2192,-2231,-2272,-2310,-2344,-2372,-2398,-2426,-2456,-2486,-2515,-2542,-2567,-2593,-2620,-2644,-2664,
+-2681,-2697,-2717,-2742,-2768,-2791,-2809,-2821,-2832,-2844,-2856,-2868,-2879,-2891,-2905,-2920,-2931,-2938,-2942,-2946,-2950,
+-2954,-2955,-2954,-2954,-2955,-2956,-2955,-2950,-2941,-2934,-2932,-2934,-2938,-2939,-2936,-2932,-2929,-2927,-2926,-2927,-2930,
+-2932,-2929,-2920,-2905,-2892,-2885,-2885,-2883,-2874,-2857,-2838,-2825,-2822,-2822,-2819,-2808,-2792,-2776,-2763,-2752,-2739,
+-2724,-2710,-2699,-2694,-2692,-2690,-2685,-2677,-2664,-2650,-2635,-2620,-2606,-2588,-2566,-2539,-2511,-2485,-2464,-2444,-2423,
+-2401,-2378,-2358,-2339,-2320,-2299,-2277,-2253,-2231,-2207,-2180,-2150,-2120,-2095,-2073,-2052,-2026,-1995,-1962,-1933,-1911,
+-1893,-1874,-1851,-1825,-1798,-1770,-1744,-1721,-1703,-1692,-1687,-1683,-1673,-1656,-1636,-1618,-1605,-1594,-1581,-1565,-1548,
+-1535,-1524,-1515,-1503,-1491,-1483,-1482,-1480,-1467,-1428,-1359,-1264,-1154,-1041,-934,-838,-759,-697,-648,-608,-578,
+-565,-579,-624,-696,-780,-859,-918,-949,-951,-928,-890,-851,-824,-817,-827,-844,-855,-857,-852,-847,-843,
+-835,-819,-794,-767,-744,-727,-714,-700,-682,-660,-638,-619,-605,-599,-598,-598,-594,-581,-561,-536,-512,
+-490,-472,-458,-451,-452,-457,-457,-446,-421,-391,-363,-341,-321,-296,-266,-234,-205,-178,-150,-119,-86,
+-59,-41,-26,-7,23,62,101,135,165,196,231,266,290,298,291,284,289,312,350,397,445,
+492,538,584,632,680,731,786,845,908,970,1028,1078,1116,1140,1151,1151,1148,1146,1149,1157,1164,
+1167,1167,1172,1190,1225,1272,1318,1349,1360,1355,1344,1339,1342,1349,1355,1357,1355,1352,1349,1344,1334,
+1319,1300,1281,1262,1245,1230,1214,1197,1180,1161,1140,1121,1106,1102,1109,1124,1140,1145,1132,1100,1054,
+1000,943,888,834,781,728,671,610,543,476,413,358,310,268,227,189,155,124,93,54,6,
+-47,-98,-138,-167,-190,-213,-238,-262,-282,-297,-309,-323,-341,-362,-382,-397,-405,-406,-403,-399,-399,
+-402,-408,-415,-423,-431,-438,-441,-437,-429,-425,-433,-451,-467,-462,-425,-366,-312,-290,-314,-375,-446,
+-504,-536,-546,-546,-547,-550,-555,-561,-567,-575,-586,-597,-606,-612,-618,-624,-632,-639,-644,-649,-657,
+-673,-697,-722,-743,-755,-761,-768,-782,-803,-825,-844,-859,-875,-894,-916,-936,-951,-959,-964,-971,-981,
+-995,-1011,-1028,-1045,-1062,-1076,-1087,-1095,-1104,-1115,-1129,-1145,-1160,-1173,-1183,-1192,-1198,-1202,-1208,-1220,-1237,
+-1258,-1277,-1289,-1296,-1301,-1308,-1319,-1332,-1345,-1356,-1366,-1377,-1389,-1400,-1408,-1413,-1416,-1417,-1419,-1423,-1432,
+-1446,-1462,-1475,-1479,-1475,-1465,-1456,-1450,-1446,-1442,-1436,-1428,-1423,-1420,-1420,-1422,-1426,-1430,-1434,-1438,-1440,
+-1440,-1439,-1436,-1432,-1427,-1423,-1421,-1420,-1420,-1419,-1416,-1412,-1409,-1408,-1409,-1408,-1404,-1399,-1394,-1389,-1383,
+-1373,-1363,-1355,-1349,-1345,-1338,-1326,-1312,-1298,-1287,-1280,-1272,-1262,-1251,-1241,-1233,-1225,-1216,-1206,-1197,-1191,
+-1189,-1188,-1186,-1181,-1175,-1171,-1167,-1163,-1158,-1152,-1148,-1147,-1146,-1144,-1139,-1134,-1132,-1133,-1135,-1137,-1138,
+-1137,-1135,-1133,-1129,-1124,-1118,-1113,-1109,-1104,-1098,-1091,-1085,-1079,-1074,-1068,-1060,-1052,-1046,-1041,-1037,-1031,
+-1024,-1016,-1010,-1006,-1003,-1000,-997,-995,-994,-994,-994,-993,-989,-985,-981,-978,-974,-970,-966,-962,-957,
+-951,-944,-936,-928,-920,-913,-903,-891,-879,-869,-863,-861,-860,-856,-848,-837,-827,-818,-810,-801,-789,
+-775,-761,-748,-738,-730,-722,-717,-712,-707,-697,-682,-661,-642,-627,-616,-602,-578,-544,-509,-486,-484,
+-499,-518,-527,-518,-495,-467,-443,-425,-412,-403,-395,-387,-376,-362,-344,-327,-311,-297,-284,-271,-256,
+-241,-226,-211,-194,-175,-157,-141,-127,-112,-95,-73,-47,-21,4,31,59,88,115,138,158,177,
+197,218,239,258,276,294,311,328,347,370,397,426,454,477,499,523,550,577,600,619,638,
+663,692,718,737,750,766,791,822,853,878,902,932,967,1002,1027,1043,1058,1079,1095,1089,1053,
+1007,984,1009,1074,1144,1188,1203,1219,1266,1351,1449,1533,1594,1648,1714,1794,1866,1909,1920,1915,1917,
+1938,1969,1995,2005,1995,1969,1934,1893,1852,1815,1780,1742,1699,1652,1604,1560,1519,1480,1443,1412,1388,
+1365,1334,1289,1239,1197,1176,1174,1181,1182,1175,1166,1160,1156,1149,1137,1124,1119,1123,1132,1135,1128,
+1112,1087,1048,988,904,809,720,655,613,583,549,501,437,364,292,227,176,141,119,104,88,
+69,50,34,23,14,1,-16,-38,-63,-91,-121,-153,-179,-196,-203,-203,-204,-208,-213,-215,-215,
+-216,-222,-233,-244,-251,-253,-255,-262,-273,-285,-295,-301,-304,-308,-314,-321,-328,-338,-353,-374,-400,
+-427,-455,-480,-503,-525,-547,-568,-587,-603,-617,-631,-644,-659,-672,-681,-684,-683,-681,-678,-673,-662,
+-645,-624,-605,-592,-583,-573,-556,-534,-508,-482,-456,-430,-400,-367,-332,-296,-259,-223,-189,-157,-126,
+-94,-60,-25,8,43,81,127,181,240,298,353,404,453,503,552,597,639,681,724,768,810,
+848,882,915,947,979,1013,1050,1091,1135,1180,1221,1258,1292,1327,1364,1402,1441,1480,1522,1565,1607,
+1647,1683,1720,1760,1800,1838,1873,1906,1939,1974,2008,2038,2066,2095,2129,2166,2201,2231,2258,2285,2315,
+2344,2369,2389,2409,2433,2462,2489,2510,2525,2538,2550,2557,2552,2537,2521,2512,2516,2527,2536,2538,2537,
+2538,2541,2541,2535,2524,2512,2503,2492,2477,2459,2442,2431,2425,2419,2411,2404,2401,2401,2398,2386,2368,
+2351,2340,2332,2318,2296,2274,2259,2255,2255,2255,2259,2279,2311,2335,2325,2271,2200,2152,2150,2175,2186,
+2155,2096,2053,2064,2125,2190,2213,2176,2102,2031,1990,1982,2037,2057,2080,2099,2114,2122,2122,2113,2105,
+2105,2113,2121,2122,2116,2113,2122,2143,2169,2191,2209,2228,2252,2279,2305,2330,2355,2383,2415,2442,2459,
+2461,2453,2445,2444,2455,2481,2520,2568,2618,2658,2683,2694,2698,2704,2717,2735,2751,2759,2758,2752,2747,
+2748,2756,2768,2779,2785,2785,2783,2785,2798,2824,2858,2893,2919,2933,2938,2940,2946,2958,2974,2992,3008,
+3024,3042,3065,3092,3117,3138,3152,3159,3165,3170,3178,3187,3199,3214,3231,3248,3263,3272,3277,3282,3291,
+3304,3319,3332,3340,3345,3349,3355,3363,3372,3377,3377,3371,3362,3350,3339,3332,3329,3330,3335,3340,3343,
+3343,3338,3330,3324,3322,3329,3344,3361,3378,3389,3395,3400,3410,3432,3473,3531,3599,3665,3719,3759,3793,
+3837,3899,3974,4043,4087,4106,4116,4146,4213,4307,4401,4467,4492,4489,4481,4485,4502,4521,4532,4536,4540,
+4551,4568,4584,4593,4594,4589,4582,4572,4555,4529,4496,4465,4441,4429,4424,4422,4419,4415,4411,4411,4415,
+4422,4428,4430,4426,4416,4404,4391,4382,4377,4376,4379,4384,4389,4391,4391,4389,4389,4391,4396,4400,4398,
+4387,4370,4351,4333,4318,4306,4294,4284,4277,4275,4278,4282,4284,4278,4264,4244,4218,4190,4158,4125,4092,
+4060,4030,4001,3968,3933,3897,3866,3842,3824,3806,3784,3756,3724,3691,3659,3627,3592,3553,3511,3469,3430,
+3394,3361,3328,3297,3272,3254,3242,3232,3221,3205,3186,3166,3148,3133,3118,3104,3089,3076,3064,3052,3040,
+3028,3018,3014,3012,3008,2997,2980,2963,2953,2950,2953,2955,2952,2946,2940,2934,2926,2911,2888,2860,2835,
+2816,2803,2792,2777,2758,2737,2716,2698,2680,2661,2641,2619,2597,2576,2557,2538,2518,2497,2476,2454,2432,
+2409,2384,2357,2328,2299,2273,2250,2230,2210,2189,2167,2144,2120,2095,2070,2044,2019,1993,1967,1939,1909,
+1876,1840,1802,1761,1721,1683,1648,1617,1588,1560,1532,1502,1468,1429,1387,1345,1306,1272,1241,1210,1174,
+1136,1096,1057,1020,985,949,911,873,834,796,759,723,686,647,605,562,519,478,438,398,356,
+312,266,222,180,138,94,48,1,-45,-91,-138,-186,-234,-281,-326,-368,-409,-453,-498,-546,-593,
+-640,-688,-735,-782,-828,-873,-914,-952,-989,-1026,-1068,-1115,-1168,-1221,-1271,-1315,-1352,-1383,-1412,-1440,-1470,
+-1503,-1542,-1585,-1630,-1673,-1713,-1749,-1785,-1824,-1865,-1906,-1944,-1978,-2009,-2041,-2074,-2110,-2148,-2186,-2224,-2258,
+-2290,-2320,-2348,-2377,-2408,-2438,-2466,-2492,-2518,-2545,-2571,-2596,-2615,-2631,-2646,-2667,-2692,-2720,-2745,-2765,-2779,
+-2792,-2803,-2813,-2823,-2833,-2845,-2861,-2878,-2893,-2902,-2907,-2910,-2912,-2913,-2913,-2912,-2913,-2917,-2921,-2921,-2916,
+-2907,-2900,-2900,-2905,-2910,-2911,-2907,-2900,-2893,-2890,-2890,-2892,-2895,-2895,-2892,-2883,-2872,-2864,-2860,-2859,-2856,
+-2845,-2828,-2812,-2800,-2796,-2793,-2789,-2781,-2771,-2761,-2750,-2738,-2723,-2707,-2694,-2685,-2680,-2678,-2674,-2669,-2662,
+-2650,-2636,-2620,-2603,-2588,-2571,-2550,-2525,-2498,-2472,-2450,-2429,-2407,-2384,-2362,-2343,-2327,-2310,-2289,-2265,-2241,
+-2219,-2199,-2176,-2148,-2117,-2088,-2064,-2042,-2017,-1987,-1955,-1926,-1904,-1888,-1871,-1851,-1826,-1799,-1772,-1748,-1727,
+-1712,-1702,-1695,-1688,-1678,-1664,-1648,-1634,-1622,-1609,-1596,-1582,-1572,-1563,-1553,-1538,-1518,-1499,-1489,-1489,-1490,
+-1481,-1449,-1394,-1320,-1233,-1139,-1043,-952,-871,-806,-755,-714,-685,-674,-690,-736,-807,-884,-951,-995,-1010,
+-998,-962,-911,-860,-826,-817,-831,-855,-875,-883,-885,-884,-883,-877,-862,-837,-811,-789,-775,-763,-748,
+-728,-706,-686,-673,-668,-667,-668,-665,-653,-632,-604,-573,-546,-525,-512,-506,-506,-512,-516,-514,-500,
+-476,-449,-424,-404,-384,-362,-334,-305,-274,-240,-201,-160,-124,-102,-94,-90,-75,-41,3,46,76,
+96,116,148,189,224,236,220,183,147,134,158,217,297,380,452,510,560,612,673,744,818,
+887,943,984,1009,1021,1027,1032,1043,1062,1089,1116,1136,1144,1142,1135,1132,1140,1161,1193,1227,1254,
+1268,1270,1264,1256,1251,1247,1240,1231,1222,1215,1213,1210,1204,1192,1177,1164,1155,1148,1140,1128,1112,
+1094,1075,1057,1040,1027,1021,1027,1043,1063,1079,1080,1062,1025,972,910,844,779,714,649,582,512,
+442,377,321,274,233,194,155,117,81,46,7,-42,-100,-161,-213,-251,-274,-291,-308,-328,-349,
+-366,-376,-381,-386,-397,-415,-437,-457,-472,-478,-479,-479,-480,-484,-487,-488,-490,-494,-498,-498,-492,
+-482,-475,-482,-501,-521,-520,-486,-425,-359,-318,-320,-363,-427,-492,-542,-574,-594,-608,-619,-626,-629,
+-630,-629,-630,-632,-635,-641,-650,-661,-671,-674,-673,-671,-677,-697,-729,-761,-784,-793,-793,-794,-805,
+-826,-850,-872,-888,-903,-919,-936,-952,-963,-972,-981,-993,-1007,-1020,-1034,-1049,-1068,-1087,-1103,-1113,-1117,
+-1120,-1126,-1138,-1154,-1171,-1185,-1196,-1204,-1208,-1210,-1214,-1224,-1243,-1267,-1289,-1305,-1315,-1322,-1331,-1343,-1355,
+-1366,-1375,-1383,-1392,-1403,-1414,-1423,-1430,-1433,-1434,-1435,-1438,-1445,-1458,-1474,-1487,-1493,-1492,-1486,-1479,-1471,
+-1463,-1452,-1440,-1429,-1422,-1420,-1423,-1429,-1435,-1441,-1445,-1446,-1444,-1440,-1436,-1432,-1428,-1422,-1416,-1411,-1409,
+-1410,-1413,-1415,-1416,-1415,-1415,-1413,-1409,-1402,-1394,-1387,-1381,-1376,-1370,-1363,-1356,-1351,-1346,-1339,-1328,-1314,
+-1301,-1291,-1282,-1274,-1262,-1249,-1238,-1229,-1221,-1213,-1203,-1192,-1184,-1179,-1177,-1174,-1170,-1165,-1161,-1157,-1152,
+-1145,-1139,-1135,-1135,-1136,-1136,-1133,-1129,-1126,-1126,-1126,-1127,-1126,-1124,-1122,-1121,-1119,-1116,-1111,-1107,-1101,
+-1096,-1090,-1086,-1082,-1078,-1073,-1066,-1056,-1047,-1040,-1036,-1032,-1026,-1019,-1012,-1006,-1002,-999,-996,-994,-992,
+-992,-992,-990,-987,-983,-980,-978,-976,-972,-966,-960,-955,-951,-946,-938,-929,-921,-915,-911,-906,-898,
+-888,-878,-873,-870,-866,-858,-845,-831,-820,-814,-810,-803,-793,-778,-763,-750,-738,-726,-712,-700,-690,
+-683,-675,-661,-642,-623,-609,-602,-595,-581,-556,-525,-500,-491,-496,-507,-510,-499,-475,-447,-423,-409,
+-404,-403,-401,-395,-383,-368,-350,-332,-317,-302,-288,-273,-259,-245,-230,-214,-197,-178,-162,-147,-134,
+-118,-99,-75,-49,-23,3,31,60,88,113,134,155,177,201,225,247,266,283,299,315,331,
+349,370,396,424,451,476,501,527,555,582,605,625,646,670,696,719,737,754,777,807,841,
+869,890,909,935,967,997,1018,1030,1042,1059,1073,1069,1043,1010,1000,1031,1094,1158,1197,1212,1228,
+1270,1342,1427,1505,1573,1644,1723,1800,1852,1867,1853,1840,1850,1884,1926,1955,1961,1946,1918,1883,1843,
+1800,1757,1719,1682,1645,1605,1563,1522,1484,1450,1420,1394,1372,1349,1317,1270,1217,1171,1146,1142,1152,
+1160,1160,1154,1146,1140,1132,1122,1112,1106,1108,1114,1118,1115,1100,1067,1010,929,833,740,670,631,
+616,601,568,509,429,343,264,199,152,122,104,92,81,69,55,42,29,16,-1,-21,-44,
+-67,-94,-124,-156,-184,-201,-207,-207,-208,-213,-219,-222,-221,-220,-225,-235,-245,-252,-253,-253,-258,
+-269,-282,-293,-300,-304,-309,-315,-322,-329,-337,-349,-367,-389,-414,-439,-462,-485,-506,-526,-544,-561,
+-576,-591,-605,-620,-636,-649,-658,-663,-664,-663,-661,-655,-644,-626,-605,-588,-577,-570,-562,-549,-528,
+-503,-478,-453,-426,-397,-364,-328,-292,-257,-222,-189,-156,-124,-90,-55,-19,15,51,90,134,184,
+240,296,350,401,452,501,548,594,638,683,727,770,810,846,880,914,949,984,1021,1060,1103,
+1149,1195,1237,1274,1308,1342,1379,1417,1456,1495,1535,1576,1616,1656,1695,1733,1771,1807,1841,1873,1905,
+1940,1977,2014,2047,2077,2109,2143,2180,2214,2243,2268,2293,2320,2345,2367,2384,2403,2426,2456,2486,2512,
+2532,2548,2559,2562,2556,2541,2527,2522,2528,2539,2548,2552,2554,2558,2563,2565,2560,2549,2535,2522,2507,
+2490,2473,2461,2454,2450,2444,2434,2426,2424,2426,2426,2416,2399,2382,2370,2364,2354,2337,2316,2299,2291,
+2288,2288,2294,2308,2328,2339,2324,2279,2224,2184,2173,2176,2167,2139,2114,2126,2193,2285,2351,2345,2269,
+2162,2076,2035,2037,2077,2106,2119,2117,2113,2112,2115,2117,2117,2117,2117,2114,2107,2098,2096,2107,2129,
+2156,2178,2194,2208,2224,2245,2270,2296,2326,2357,2387,2411,2423,2425,2423,2425,2436,2459,2491,2530,2569,
+2601,2624,2639,2652,2668,2690,2713,2732,2740,2740,2734,2730,2731,2738,2752,2769,2787,2800,2804,2800,2794,
+2795,2810,2842,2880,2915,2936,2945,2948,2954,2968,2989,3011,3030,3047,3065,3089,3117,3144,3164,3177,3183,
+3188,3194,3201,3207,3214,3222,3235,3251,3265,3274,3279,3283,3292,3306,3320,3331,3337,3340,3345,3353,3363,
+3370,3372,3369,3362,3354,3344,3333,3322,3316,3316,3323,3331,3336,3334,3327,3320,3320,3330,3346,3365,3382,
+3397,3410,3423,3436,3451,3474,3513,3573,3648,3723,3784,3824,3855,3894,3955,4030,4100,4146,4165,4181,4219,
+4294,4392,4481,4536,4550,4542,4536,4543,4559,4571,4573,4566,4562,4569,4584,4601,4614,4619,4618,4609,4591,
+4562,4525,4489,4462,4448,4444,4445,4445,4443,4440,4439,4441,4447,4454,4459,4458,4451,4440,4430,4422,4418,
+4417,4416,4415,4415,4416,4417,4415,4410,4403,4396,4392,4391,4388,4381,4368,4354,4341,4333,4325,4316,4304,
+4292,4285,4284,4288,4292,4291,4282,4266,4244,4217,4187,4155,4124,4094,4066,4036,4003,3969,3937,3910,3890,
+3872,3850,3821,3787,3750,3715,3682,3648,3612,3572,3531,3490,3452,3417,3383,3351,3322,3298,3279,3265,3253,
+3241,3226,3208,3188,3170,3153,3139,3125,3111,3097,3084,3071,3057,3044,3032,3024,3018,3014,3007,2998,2988,
+2982,2980,2982,2984,2983,2979,2973,2967,2957,2942,2922,2899,2881,2869,2862,2854,2841,2821,2798,2774,2753,
+2734,2712,2689,2664,2641,2620,2601,2583,2563,2541,2519,2497,2475,2450,2421,2392,2364,2340,2321,2303,2284,
+2260,2235,2210,2186,2163,2140,2115,2088,2060,2032,2001,1969,1934,1898,1863,1827,1791,1755,1720,1688,1659,
+1632,1606,1578,1546,1510,1469,1425,1382,1344,1311,1280,1248,1212,1173,1134,1097,1061,1025,986,945,904,
+866,831,797,761,724,685,646,606,567,526,484,441,397,354,311,268,224,179,134,90,46,
+3,-40,-87,-136,-185,-232,-277,-320,-364,-408,-452,-498,-545,-594,-643,-691,-736,-777,-817,-856,-895,
+-935,-977,-1021,-1069,-1120,-1169,-1214,-1252,-1284,-1314,-1343,-1375,-1408,-1444,-1483,-1526,-1570,-1614,-1654,-1691,-1730,
+-1770,-1812,-1853,-1888,-1919,-1950,-1984,-2023,-2062,-2101,-2136,-2169,-2202,-2235,-2268,-2300,-2331,-2361,-2390,-2418,-2445,
+-2472,-2498,-2523,-2546,-2566,-2583,-2601,-2623,-2649,-2676,-2700,-2720,-2735,-2748,-2760,-2769,-2778,-2787,-2799,-2816,-2835,
+-2851,-2861,-2867,-2871,-2874,-2876,-2877,-2877,-2879,-2883,-2887,-2888,-2883,-2874,-2867,-2867,-2871,-2877,-2878,-2874,-2866,
+-2859,-2856,-2857,-2860,-2862,-2861,-2857,-2850,-2844,-2839,-2838,-2835,-2829,-2817,-2803,-2790,-2781,-2775,-2769,-2762,-2754,
+-2748,-2741,-2734,-2722,-2706,-2691,-2678,-2671,-2666,-2662,-2657,-2652,-2645,-2636,-2623,-2607,-2590,-2574,-2557,-2537,-2512,
+-2485,-2460,-2438,-2416,-2392,-2368,-2346,-2329,-2316,-2303,-2283,-2258,-2233,-2211,-2192,-2172,-2146,-2115,-2084,-2056,-2032,
+-2008,-1982,-1954,-1927,-1904,-1886,-1869,-1850,-1828,-1803,-1775,-1748,-1725,-1708,-1701,-1698,-1696,-1690,-1678,-1664,-1651,
+-1638,-1624,-1609,-1596,-1587,-1581,-1573,-1557,-1534,-1511,-1499,-1498,-1501,-1496,-1473,-1429,-1370,-1300,-1222,-1137,-1052,
+-974,-910,-862,-828,-808,-806,-829,-876,-937,-998,-1044,-1068,-1068,-1046,-1006,-953,-901,-864,-852,-863,-886,
+-906,-918,-923,-926,-928,-924,-910,-888,-865,-846,-833,-819,-801,-778,-755,-739,-731,-729,-728,-724,-714,
+-696,-670,-640,-610,-587,-572,-567,-568,-573,-579,-583,-579,-564,-538,-506,-475,-449,-430,-413,-394,-370,
+-336,-292,-242,-195,-162,-147,-145,-142,-123,-87,-44,-11,6,16,32,63,105,138,138,98,30,
+-35,-60,-24,70,198,322,415,472,510,553,616,697,779,845,887,907,913,914,917,928,949,
+982,1019,1050,1066,1067,1057,1045,1039,1043,1057,1079,1105,1131,1150,1160,1160,1151,1138,1122,1105,1087,
+1072,1061,1056,1052,1044,1033,1022,1015,1016,1021,1024,1021,1011,995,979,963,947,934,926,926,937,
+957,977,991,988,966,923,863,792,715,636,557,476,398,325,262,210,167,128,89,51,13,
+-23,-60,-103,-153,-208,-259,-301,-330,-351,-367,-385,-404,-423,-438,-448,-455,-463,-473,-488,-507,-524,
+-538,-546,-550,-554,-560,-564,-565,-560,-554,-551,-552,-556,-557,-552,-545,-545,-555,-569,-574,-558,-520,
+-470,-428,-411,-423,-458,-505,-552,-592,-623,-648,-667,-681,-691,-697,-698,-694,-685,-676,-672,-676,-689,
+-703,-710,-709,-703,-705,-721,-751,-785,-809,-819,-819,-820,-830,-850,-874,-895,-912,-927,-940,-953,-965,
+-975,-985,-999,-1017,-1034,-1049,-1062,-1076,-1094,-1114,-1132,-1141,-1143,-1143,-1146,-1156,-1171,-1187,-1202,-1213,-1221,
+-1226,-1229,-1232,-1241,-1258,-1279,-1301,-1318,-1331,-1342,-1353,-1365,-1377,-1388,-1396,-1404,-1411,-1419,-1427,-1434,-1440,
+-1444,-1448,-1450,-1453,-1459,-1468,-1480,-1490,-1497,-1500,-1499,-1496,-1491,-1481,-1467,-1452,-1440,-1433,-1433,-1437,-1444,
+-1451,-1458,-1463,-1463,-1457,-1449,-1441,-1435,-1431,-1426,-1419,-1412,-1408,-1409,-1412,-1416,-1418,-1419,-1418,-1415,-1410,
+-1400,-1389,-1379,-1372,-1368,-1364,-1359,-1354,-1348,-1342,-1335,-1325,-1313,-1302,-1292,-1284,-1275,-1264,-1252,-1241,-1232,
+-1225,-1217,-1206,-1193,-1181,-1173,-1166,-1161,-1156,-1151,-1147,-1144,-1139,-1134,-1130,-1128,-1128,-1130,-1130,-1128,-1124,
+-1121,-1119,-1119,-1117,-1115,-1112,-1109,-1108,-1107,-1105,-1102,-1097,-1092,-1086,-1081,-1077,-1075,-1072,-1067,-1060,-1050,
+-1041,-1035,-1030,-1026,-1020,-1014,-1008,-1003,-999,-994,-990,-987,-987,-988,-989,-987,-982,-976,-974,-974,-974,
+-971,-963,-953,-946,-940,-935,-928,-919,-911,-907,-906,-905,-902,-895,-889,-885,-882,-876,-865,-848,-832,
+-819,-812,-807,-799,-786,-771,-758,-746,-735,-721,-702,-683,-667,-656,-647,-634,-617,-599,-585,-578,-576,
+-572,-561,-543,-525,-511,-504,-500,-492,-477,-455,-432,-415,-405,-401,-399,-395,-386,-373,-357,-343,-329,
+-316,-302,-287,-271,-257,-244,-232,-218,-201,-184,-169,-154,-140,-121,-99,-74,-49,-25,0,26,55,
+82,107,129,151,175,200,224,245,262,279,296,314,332,351,371,394,420,446,472,499,528,
+559,587,612,632,652,674,696,718,739,762,793,830,864,890,906,920,939,963,986,1002,1014,
+1029,1051,1071,1073,1055,1033,1031,1065,1126,1189,1234,1263,1291,1334,1393,1456,1519,1587,1666,1751,1816,
+1835,1807,1760,1733,1750,1803,1861,1895,1897,1877,1849,1821,1790,1754,1714,1675,1637,1601,1561,1521,1483,
+1450,1423,1400,1379,1359,1336,1305,1262,1212,1166,1137,1131,1139,1149,1152,1147,1138,1130,1124,1116,1107,
+1099,1097,1101,1109,1112,1098,1057,986,888,782,692,635,611,606,595,558,492,408,320,241,179,
+134,106,90,82,76,68,58,45,30,12,-8,-31,-53,-76,-100,-129,-160,-187,-205,-213,-216,
+-219,-226,-232,-235,-234,-233,-236,-243,-251,-255,-256,-257,-263,-276,-290,-302,-310,-314,-318,-323,-329,
+-335,-340,-349,-362,-380,-401,-424,-446,-466,-485,-503,-519,-536,-551,-567,-582,-597,-611,-624,-632,-636,
+-637,-634,-631,-625,-615,-600,-584,-570,-559,-551,-541,-527,-508,-487,-464,-441,-414,-384,-351,-316,-282,
+-249,-215,-181,-148,-115,-81,-47,-12,24,60,98,139,185,235,289,343,395,446,496,544,592,
+640,688,733,774,809,843,878,916,957,998,1039,1079,1121,1165,1208,1247,1282,1316,1352,1391,1432,
+1472,1511,1550,1590,1630,1670,1708,1745,1780,1813,1845,1876,1910,1946,1985,2023,2057,2088,2121,2156,2192,
+2225,2252,2275,2298,2321,2344,2364,2380,2397,2420,2449,2483,2514,2539,2558,2568,2571,2565,2554,2545,2543,
+2547,2553,2557,2559,2561,2567,2574,2577,2573,2563,2550,2536,2522,2505,2490,2479,2475,2473,2469,2461,2454,
+2451,2452,2452,2443,2428,2411,2401,2397,2392,2381,2365,2349,2338,2333,2328,2324,2323,2323,2317,2298,2266,
+2230,2206,2198,2194,2183,2166,2164,2199,2268,2338,2361,2315,2217,2116,2056,2050,2077,2128,2151,2146,2125,
+2107,2101,2104,2109,2109,2104,2097,2091,2088,2091,2104,2128,2156,2180,2193,2197,2197,2204,2220,2247,2280,
+2315,2348,2376,2394,2403,2406,2411,2422,2445,2478,2515,2552,2580,2598,2608,2617,2631,2655,2683,2706,2718,
+2718,2713,2712,2716,2725,2734,2744,2756,2774,2795,2812,2820,2818,2813,2818,2838,2871,2908,2937,2954,2963,
+2974,2990,3012,3034,3052,3067,3084,3107,3135,3163,3184,3195,3201,3207,3214,3222,3227,3230,3234,3242,3254,
+3268,3279,3288,3296,3306,3316,3325,3329,3331,3333,3340,3351,3362,3366,3362,3353,3345,3339,3333,3325,3315,
+3310,3311,3320,3329,3332,3326,3317,3313,3321,3340,3363,3383,3399,3412,3429,3451,3475,3500,3528,3568,3627,
+3700,3775,3836,3878,3913,3957,4020,4094,4159,4200,4219,4240,4286,4365,4459,4538,4581,4589,4581,4579,4589,
+4604,4611,4604,4588,4575,4570,4576,4588,4603,4618,4628,4629,4615,4586,4548,4512,4486,4473,4469,4468,4467,
+4466,4467,4471,4479,4487,4494,4496,4492,4483,4473,4466,4465,4469,4472,4470,4464,4457,4453,4452,4450,4442,
+4427,4411,4399,4394,4392,4390,4384,4376,4368,4363,4358,4350,4338,4325,4314,4308,4307,4307,4304,4296,4283,
+4265,4242,4215,4187,4157,4128,4099,4069,4038,4009,3985,3965,3947,3924,3894,3858,3819,3782,3747,3712,3675,
+3634,3594,3554,3517,3482,3446,3411,3380,3352,3329,3308,3288,3270,3252,3236,3219,3203,3187,3171,3158,3144,
+3130,3116,3102,3090,3079,3066,3053,3040,3030,3025,3024,3025,3024,3022,3019,3015,3012,3008,3004,2999,2994,
+2987,2976,2961,2945,2931,2921,2914,2905,2891,2871,2847,2822,2800,2780,2759,2736,2712,2689,2669,2651,2632,
+2610,2587,2564,2541,2517,2490,2460,2430,2405,2388,2375,2361,2340,2313,2283,2255,2230,2208,2184,2157,2127,
+2096,2063,2028,1992,1956,1921,1889,1857,1826,1795,1763,1732,1703,1673,1643,1611,1578,1543,1506,1468,1428,
+1391,1356,1322,1287,1249,1209,1170,1133,1098,1062,1022,981,940,903,869,834,797,758,718,681,645,
+608,569,526,481,438,397,357,314,269,221,175,131,91,50,7,-37,-84,-131,-176,-221,-267,
+-314,-362,-408,-454,-500,-548,-597,-644,-686,-724,-759,-797,-838,-882,-927,-974,-1023,-1071,-1117,-1158,-1191,
+-1219,-1246,-1276,-1311,-1348,-1387,-1428,-1469,-1512,-1553,-1594,-1633,-1674,-1716,-1757,-1795,-1829,-1861,-1895,-1933,-1974,
+-2013,-2048,-2080,-2110,-2144,-2181,-2219,-2254,-2285,-2314,-2342,-2370,-2399,-2426,-2450,-2471,-2491,-2510,-2530,-2553,-2579,
+-2606,-2632,-2655,-2674,-2690,-2705,-2717,-2727,-2736,-2746,-2760,-2778,-2797,-2813,-2823,-2829,-2833,-2838,-2843,-2846,-2848,
+-2849,-2851,-2853,-2853,-2847,-2839,-2833,-2831,-2833,-2837,-2837,-2835,-2830,-2826,-2826,-2828,-2831,-2833,-2831,-2827,-2822,
+-2817,-2815,-2814,-2810,-2801,-2789,-2777,-2768,-2762,-2756,-2748,-2738,-2729,-2723,-2720,-2715,-2705,-2690,-2674,-2662,-2654,
+-2649,-2645,-2640,-2635,-2629,-2621,-2609,-2594,-2578,-2562,-2545,-2523,-2497,-2470,-2445,-2423,-2402,-2380,-2356,-2335,-2318,
+-2306,-2294,-2276,-2252,-2225,-2201,-2181,-2161,-2137,-2109,-2079,-2051,-2026,-2004,-1981,-1957,-1932,-1909,-1886,-1865,-1846,
+-1826,-1802,-1773,-1741,-1713,-1696,-1694,-1703,-1710,-1709,-1697,-1680,-1663,-1650,-1636,-1620,-1604,-1593,-1588,-1584,-1573,
+-1554,-1531,-1514,-1509,-1512,-1512,-1499,-1471,-1428,-1375,-1312,-1240,-1163,-1090,-1029,-984,-957,-946,-954,-981,-1022,
+-1068,-1105,-1125,-1126,-1113,-1088,-1052,-1007,-963,-930,-917,-924,-941,-957,-966,-971,-974,-976,-973,-962,-944,
+-923,-904,-887,-869,-848,-825,-805,-793,-786,-782,-776,-766,-752,-732,-708,-681,-657,-641,-635,-637,-644,
+-650,-652,-650,-641,-622,-592,-554,-516,-485,-466,-455,-444,-422,-385,-334,-282,-241,-218,-210,-203,-187,
+-157,-121,-90,-73,-67,-61,-46,-22,-1,0,-30,-92,-164,-213,-207,-128,12,178,324,418,460,
+478,509,572,660,746,806,833,835,831,833,844,862,886,911,934,949,952,943,931,922,922,
+929,941,956,976,997,1018,1031,1031,1020,1000,976,953,932,914,901,892,882,870,855,842,835,
+839,851,864,872,871,863,852,840,828,816,806,802,806,819,837,853,859,847,813,759,690,
+612,529,444,361,281,210,149,97,53,12,-27,-64,-100,-136,-174,-216,-261,-303,-339,-367,-390,
+-410,-432,-453,-472,-487,-500,-513,-526,-540,-556,-572,-588,-602,-611,-617,-621,-627,-635,-643,-646,-643,
+-634,-626,-623,-625,-628,-626,-620,-613,-612,-620,-631,-637,-629,-607,-577,-552,-539,-543,-563,-590,-619,
+-645,-667,-687,-710,-734,-757,-771,-773,-761,-741,-722,-714,-719,-730,-739,-741,-737,-737,-749,-774,-803,
+-827,-839,-843,-846,-857,-876,-898,-918,-933,-946,-959,-971,-982,-993,-1008,-1026,-1048,-1068,-1083,-1094,-1105,
+-1121,-1139,-1155,-1165,-1167,-1167,-1171,-1181,-1196,-1211,-1223,-1233,-1242,-1249,-1255,-1261,-1269,-1281,-1297,-1315,-1332,
+-1347,-1360,-1373,-1385,-1397,-1408,-1419,-1428,-1435,-1439,-1442,-1444,-1449,-1455,-1461,-1466,-1468,-1471,-1476,-1483,-1491,
+-1498,-1504,-1508,-1509,-1506,-1498,-1486,-1473,-1464,-1461,-1462,-1465,-1469,-1473,-1478,-1482,-1481,-1475,-1465,-1454,-1447,
+-1443,-1438,-1432,-1425,-1420,-1418,-1419,-1421,-1422,-1421,-1421,-1419,-1415,-1407,-1394,-1382,-1372,-1365,-1360,-1354,-1348,
+-1341,-1334,-1328,-1320,-1311,-1301,-1291,-1282,-1273,-1263,-1254,-1246,-1239,-1233,-1224,-1212,-1199,-1186,-1175,-1167,-1159,
+-1152,-1145,-1139,-1135,-1131,-1129,-1127,-1126,-1125,-1124,-1122,-1119,-1115,-1112,-1111,-1110,-1108,-1105,-1102,-1100,-1097,
+-1095,-1093,-1089,-1085,-1081,-1075,-1071,-1067,-1063,-1060,-1055,-1048,-1040,-1033,-1028,-1024,-1019,-1013,-1007,-1002,-999,
+-995,-989,-984,-981,-982,-986,-987,-984,-977,-970,-968,-970,-973,-971,-962,-951,-941,-934,-928,-921,-912,
+-904,-899,-898,-899,-897,-893,-889,-885,-882,-876,-865,-851,-836,-824,-815,-805,-792,-775,-758,-745,-735,
+-726,-713,-694,-673,-654,-641,-630,-618,-603,-585,-568,-556,-549,-546,-543,-538,-530,-521,-509,-496,-481,
+-464,-447,-431,-418,-409,-401,-393,-383,-370,-355,-342,-331,-322,-312,-299,-283,-267,-254,-244,-234,-223,
+-208,-191,-175,-159,-141,-120,-95,-70,-47,-25,-3,21,48,74,97,118,140,164,188,210,229,
+246,264,284,306,327,347,368,390,414,438,464,491,522,554,585,611,632,650,668,686,704,
+725,751,783,819,852,877,895,912,932,954,974,990,1009,1036,1069,1093,1096,1078,1057,1060,1099,
+1164,1233,1290,1332,1372,1416,1463,1508,1556,1617,1695,1774,1818,1803,1735,1657,1620,1646,1716,1790,1832,
+1835,1813,1786,1761,1735,1702,1664,1624,1585,1547,1509,1472,1441,1418,1400,1381,1359,1335,1311,1285,1255,
+1218,1182,1156,1145,1147,1151,1150,1142,1132,1125,1121,1118,1110,1100,1094,1096,1104,1108,1091,1042,957,
+850,741,652,598,573,561,542,503,442,368,291,221,163,120,94,80,75,70,63,51,36,
+20,1,-19,-41,-64,-87,-112,-139,-168,-193,-212,-222,-229,-235,-242,-249,-253,-254,-253,-254,-258,
+-262,-264,-265,-268,-278,-292,-307,-319,-326,-331,-336,-341,-344,-346,-346,-349,-357,-370,-388,-408,-427,
+-446,-462,-478,-494,-509,-524,-538,-550,-561,-572,-583,-592,-597,-598,-594,-589,-583,-575,-566,-555,-543,
+-531,-518,-505,-490,-475,-458,-441,-421,-397,-368,-336,-304,-272,-239,-204,-168,-131,-97,-65,-33,0,
+33,68,103,139,179,224,276,331,386,437,486,535,584,636,688,735,776,811,845,882,924,
+970,1016,1060,1102,1143,1184,1223,1260,1294,1329,1366,1406,1447,1487,1526,1565,1605,1645,1683,1718,1750,
+1781,1813,1845,1879,1916,1955,1994,2032,2065,2097,2129,2164,2200,2233,2259,2281,2301,2323,2346,2366,2383,
+2401,2423,2452,2486,2520,2548,2567,2578,2581,2579,2574,2570,2569,2568,2566,2562,2560,2563,2570,2578,2580,
+2576,2567,2557,2548,2538,2524,2510,2498,2493,2492,2492,2490,2486,2485,2484,2482,2471,2455,2437,2426,2420,
+2417,2410,2400,2389,2380,2373,2362,2348,2333,2318,2304,2288,2270,2254,2246,2244,2241,2230,2215,2208,2221,
+2249,2267,2249,2191,2117,2065,2057,2088,2128,2162,2162,2138,2107,2086,2081,2084,2088,2086,2080,2076,2078,
+2090,2112,2144,2180,2211,2227,2225,2211,2197,2196,2213,2247,2289,2330,2363,2385,2396,2402,2407,2417,2437,
+2465,2500,2535,2566,2588,2599,2603,2609,2623,2645,2669,2685,2690,2689,2689,2697,2711,2725,2732,2732,2736,
+2752,2781,2815,2840,2849,2844,2839,2845,2869,2904,2938,2964,2981,2994,3009,3029,3050,3068,3085,3103,3126,
+3155,3182,3202,3213,3217,3222,3230,3239,3246,3249,3251,3256,3266,3279,3294,3306,3317,3325,3331,3333,3331,
+3328,3330,3337,3348,3355,3354,3346,3335,3328,3326,3325,3322,3317,3314,3317,3324,3330,3329,3321,3312,3313,
+3328,3353,3378,3398,3411,3425,3447,3477,3514,3553,3593,3640,3696,3758,3819,3873,3919,3966,4024,4094,4163,
+4217,4248,4268,4297,4353,4433,4518,4582,4613,4615,4608,4609,4620,4633,4639,4633,4617,4601,4589,4584,4587,
+4598,4613,4628,4633,4623,4600,4570,4543,4525,4513,4506,4500,4495,4494,4498,4505,4511,4516,4519,4520,4518,
+4514,4512,4513,4519,4527,4532,4528,4516,4502,4491,4484,4479,4468,4452,4433,4419,4412,4412,4413,4410,4403,
+4394,4387,4381,4374,4366,4355,4345,4337,4330,4322,4312,4300,4288,4274,4258,4240,4218,4192,4164,4134,4103,
+4075,4052,4035,4022,4003,3976,3938,3896,3856,3821,3787,3750,3709,3665,3625,3589,3555,3521,3483,3446,3411,
+3383,3358,3334,3308,3282,3260,3241,3227,3213,3199,3184,3170,3157,3145,3133,3123,3115,3108,3099,3086,3071,
+3058,3051,3052,3057,3061,3060,3054,3046,3038,3032,3027,3024,3022,3020,3016,3008,2996,2982,2969,2957,2946,
+2933,2914,2891,2866,2843,2822,2801,2780,2758,2737,2717,2698,2677,2654,2629,2604,2580,2557,2531,2504,2478,
+2457,2441,2428,2411,2386,2356,2324,2296,2271,2248,2222,2192,2159,2125,2090,2053,2017,1981,1948,1919,1891,
+1862,1833,1804,1774,1745,1712,1677,1641,1606,1573,1541,1507,1471,1434,1398,1363,1327,1288,1247,1205,1166,
+1129,1094,1057,1018,979,942,907,870,831,791,751,714,680,646,607,565,521,479,439,400,359,
+314,267,220,177,136,95,51,6,-38,-80,-121,-164,-210,-260,-311,-360,-406,-452,-500,-548,-594,
+-634,-669,-704,-741,-784,-830,-877,-923,-968,-1014,-1058,-1097,-1130,-1158,-1186,-1217,-1255,-1296,-1339,-1381,-1421,
+-1460,-1499,-1539,-1580,-1622,-1663,-1701,-1736,-1768,-1803,-1841,-1883,-1925,-1962,-1994,-2023,-2054,-2091,-2131,-2170,-2203,
+-2231,-2258,-2286,-2317,-2349,-2378,-2401,-2420,-2436,-2453,-2475,-2500,-2528,-2556,-2581,-2603,-2623,-2642,-2659,-2673,-2685,
+-2695,-2706,-2722,-2741,-2761,-2776,-2786,-2792,-2797,-2802,-2808,-2813,-2815,-2816,-2817,-2817,-2814,-2809,-2803,-2798,-2796,
+-2797,-2799,-2799,-2797,-2794,-2793,-2794,-2797,-2801,-2802,-2801,-2797,-2792,-2790,-2789,-2789,-2786,-2778,-2766,-2755,-2747,
+-2742,-2736,-2727,-2716,-2707,-2702,-2700,-2696,-2687,-2673,-2658,-2646,-2638,-2632,-2628,-2624,-2619,-2612,-2602,-2589,-2574,
+-2559,-2544,-2527,-2505,-2478,-2450,-2425,-2405,-2388,-2369,-2349,-2328,-2311,-2298,-2285,-2267,-2243,-2217,-2191,-2168,-2146,
+-2124,-2100,-2075,-2049,-2024,-2001,-1978,-1955,-1932,-1908,-1883,-1859,-1838,-1819,-1798,-1769,-1736,-1705,-1689,-1693,-1710,
+-1725,-1724,-1708,-1686,-1667,-1656,-1647,-1634,-1617,-1603,-1596,-1594,-1590,-1575,-1553,-1531,-1519,-1518,-1521,-1519,-1505,
+-1479,-1442,-1395,-1340,-1279,-1218,-1164,-1123,-1099,-1092,-1103,-1126,-1155,-1180,-1191,-1187,-1172,-1151,-1128,-1100,-1069,
+-1036,-1011,-1001,-1005,-1016,-1024,-1025,-1022,-1019,-1019,-1018,-1011,-996,-975,-952,-930,-907,-886,-867,-853,-844,
+-836,-828,-818,-805,-792,-775,-755,-732,-711,-700,-700,-709,-719,-722,-716,-702,-683,-659,-628,-591,-555,
+-526,-508,-499,-486,-459,-416,-366,-323,-296,-285,-275,-254,-220,-181,-152,-140,-140,-141,-133,-124,-126,
+-150,-198,-257,-306,-327,-303,-225,-94,71,239,370,442,463,468,494,562,656,744,796,807,794,
+780,779,790,805,817,822,821,815,804,791,783,783,791,804,817,828,840,855,870,879,876,
+861,838,814,793,776,761,748,735,721,703,683,663,650,649,658,673,686,692,692,687,680,
+673,665,656,650,648,653,662,671,671,657,624,574,512,443,371,299,229,161,99,42,-8,
+-55,-98,-137,-171,-202,-234,-269,-307,-346,-380,-406,-427,-448,-472,-498,-521,-539,-552,-563,-577,-595,
+-615,-635,-652,-666,-679,-687,-692,-695,-698,-706,-716,-726,-730,-726,-717,-708,-702,-699,-695,-689,-681,
+-676,-680,-692,-707,-716,-713,-697,-676,-657,-649,-651,-660,-670,-677,-683,-695,-716,-746,-778,-805,-818,
+-815,-800,-782,-768,-762,-762,-764,-763,-763,-766,-779,-801,-827,-849,-862,-868,-874,-886,-903,-924,-942,
+-957,-969,-981,-994,-1007,-1021,-1039,-1060,-1083,-1103,-1117,-1126,-1134,-1145,-1158,-1170,-1178,-1182,-1186,-1195,-1209,
+-1225,-1239,-1250,-1257,-1263,-1270,-1279,-1288,-1297,-1307,-1319,-1333,-1349,-1364,-1379,-1392,-1403,-1414,-1426,-1439,-1450,
+-1458,-1460,-1458,-1458,-1462,-1469,-1477,-1482,-1482,-1481,-1483,-1488,-1496,-1505,-1512,-1518,-1521,-1522,-1518,-1512,-1505,
+-1502,-1502,-1503,-1502,-1499,-1495,-1494,-1495,-1494,-1490,-1481,-1472,-1464,-1459,-1455,-1449,-1441,-1435,-1430,-1428,-1427,
+-1425,-1424,-1425,-1426,-1424,-1418,-1406,-1392,-1378,-1368,-1359,-1350,-1341,-1333,-1327,-1323,-1318,-1310,-1300,-1288,-1277,
+-1267,-1258,-1251,-1245,-1239,-1232,-1224,-1212,-1201,-1190,-1181,-1174,-1167,-1158,-1150,-1141,-1135,-1131,-1129,-1128,-1126,
+-1123,-1118,-1112,-1106,-1102,-1100,-1100,-1099,-1098,-1095,-1092,-1090,-1087,-1084,-1081,-1078,-1075,-1071,-1067,-1062,-1057,
+-1052,-1046,-1040,-1034,-1028,-1023,-1020,-1017,-1012,-1006,-999,-994,-992,-989,-985,-981,-978,-980,-984,-985,-981,
+-974,-967,-966,-969,-973,-971,-963,-951,-941,-934,-928,-921,-912,-902,-895,-892,-891,-889,-885,-879,-874,
+-869,-863,-856,-847,-838,-830,-820,-807,-789,-769,-751,-736,-726,-716,-704,-689,-673,-658,-645,-635,-625,
+-613,-597,-578,-558,-540,-528,-523,-523,-522,-518,-507,-491,-474,-458,-445,-432,-420,-408,-397,-387,-375,
+-363,-349,-337,-326,-318,-308,-295,-279,-263,-251,-242,-234,-223,-209,-192,-174,-156,-137,-115,-91,-67,
+-45,-25,-4,18,41,64,85,104,125,147,170,191,212,232,254,278,301,323,343,363,385,
+407,430,454,480,510,543,574,601,622,638,653,666,679,694,714,739,767,797,826,855,886,
+918,947,971,994,1023,1061,1099,1121,1114,1087,1065,1073,1123,1198,1273,1333,1378,1421,1467,1513,1556,
+1601,1657,1729,1794,1819,1782,1697,1609,1570,1597,1671,1746,1789,1792,1772,1745,1719,1690,1653,1612,1571,
+1533,1495,1458,1426,1404,1392,1380,1361,1329,1294,1264,1245,1234,1221,1204,1186,1172,1165,1159,1149,1135,
+1122,1116,1117,1118,1113,1103,1094,1093,1099,1098,1074,1014,920,809,701,614,554,514,484,453,415,
+368,314,256,198,145,104,79,68,65,61,52,37,21,5,-10,-28,-49,-73,-99,-126,-153,
+-181,-205,-224,-237,-245,-251,-259,-266,-271,-274,-276,-277,-278,-279,-280,-283,-289,-300,-313,-325,-335,
+-342,-349,-355,-360,-361,-358,-353,-349,-351,-358,-371,-387,-404,-419,-434,-450,-466,-482,-496,-506,-512,
+-518,-524,-534,-544,-552,-554,-552,-546,-540,-534,-528,-518,-506,-492,-478,-463,-450,-437,-425,-412,-395,
+-375,-351,-326,-299,-270,-237,-199,-159,-119,-83,-51,-20,11,45,78,111,143,178,221,272,328,
+383,434,481,527,576,628,682,732,776,815,852,892,935,981,1027,1070,1113,1155,1196,1236,1273,
+1308,1345,1383,1422,1461,1500,1538,1577,1618,1657,1692,1721,1749,1778,1810,1845,1884,1923,1964,2004,2042,
+2076,2108,2141,2174,2209,2240,2266,2288,2308,2330,2352,2373,2391,2409,2431,2459,2492,2525,2553,2572,2584,
+2591,2593,2595,2595,2592,2587,2578,2570,2566,2568,2576,2582,2583,2578,2570,2563,2560,2555,2546,2533,2520,
+2512,2511,2514,2517,2517,2516,2513,2508,2497,2482,2465,2451,2442,2436,2431,2426,2422,2418,2411,2398,2379,
+2359,2342,2330,2321,2314,2307,2302,2298,2290,2274,2249,2224,2205,2190,2171,2141,2104,2076,2073,2098,2136,
+2162,2149,2133,2109,2089,2080,2082,2088,2092,2093,2093,2095,2104,2120,2147,2183,2219,2246,2253,2240,2215,
+2194,2191,2212,2252,2299,2341,2370,2386,2393,2400,2411,2430,2457,2487,2518,2547,2570,2586,2595,2599,2605,
+2615,2630,2645,2654,2658,2661,2669,2686,2708,2724,2730,2729,2732,2749,2781,2819,2850,2863,2859,2851,2852,
+2871,2904,2940,2970,2988,3000,3013,3031,3054,3078,3101,3124,3148,3173,3198,3216,3226,3231,3235,3242,3252,
+3260,3266,3270,3277,3287,3302,3316,3328,3336,3341,3341,3339,3335,3331,3331,3335,3341,3343,3339,3331,3324,
+3322,3324,3326,3324,3321,3319,3321,3326,3329,3325,3318,3314,3321,3340,3366,3392,3411,3426,3442,3466,3502,
+3549,3604,3663,3720,3773,3818,3857,3897,3946,4011,4089,4167,4231,4273,4298,4323,4366,4431,4508,4577,4621,
+4637,4635,4629,4631,4640,4651,4657,4655,4646,4635,4623,4615,4612,4615,4623,4629,4627,4616,4597,4579,4565,
+4556,4548,4538,4528,4522,4522,4527,4533,4534,4531,4528,4528,4533,4540,4549,4560,4571,4580,4583,4576,4560,
+4540,4521,4506,4494,4481,4465,4450,4439,4435,4436,4437,4435,4429,4420,4411,4402,4392,4383,4373,4365,4357,
+4347,4334,4319,4303,4290,4279,4270,4258,4242,4221,4195,4166,4136,4111,4093,4081,4069,4050,4019,3978,3936,
+3897,3864,3831,3793,3749,3705,3666,3633,3601,3565,3523,3480,3442,3411,3385,3360,3331,3301,3275,3254,3239,
+3224,3209,3193,3179,3167,3159,3152,3147,3145,3142,3136,3126,3113,3099,3089,3086,3087,3087,3084,3078,3071,
+3066,3062,3060,3059,3059,3061,3061,3057,3046,3030,3013,3000,2988,2977,2960,2938,2913,2887,2864,2842,2820,
+2799,2778,2759,2739,2717,2692,2665,2639,2616,2596,2575,2555,2534,2515,2497,2477,2453,2422,2390,2359,2333,
+2309,2284,2255,2222,2187,2151,2116,2079,2044,2011,1981,1954,1927,1898,1868,1839,1811,1781,1748,1711,1673,
+1637,1605,1574,1541,1505,1468,1433,1400,1367,1330,1288,1243,1200,1162,1128,1094,1057,1019,980,942,904,
+866,826,788,752,719,684,647,605,562,520,480,441,400,357,312,268,225,182,138,92,46,
+3,-36,-74,-114,-159,-208,-258,-308,-356,-403,-451,-500,-545,-585,-621,-657,-697,-742,-789,-833,-875,
+-914,-955,-996,-1036,-1072,-1104,-1134,-1168,-1208,-1253,-1298,-1341,-1380,-1416,-1454,-1494,-1536,-1578,-1616,-1649,-1680,
+-1711,-1747,-1788,-1832,-1873,-1909,-1940,-1969,-2002,-2040,-2079,-2114,-2143,-2167,-2193,-2223,-2260,-2297,-2330,-2356,-2374,
+-2390,-2406,-2426,-2450,-2476,-2501,-2525,-2547,-2569,-2591,-2611,-2627,-2640,-2651,-2663,-2679,-2698,-2718,-2735,-2747,-2754,
+-2759,-2763,-2768,-2772,-2776,-2778,-2779,-2778,-2774,-2770,-2766,-2765,-2767,-2770,-2772,-2771,-2768,-2764,-2762,-2762,-2765,
+-2768,-2770,-2769,-2766,-2763,-2762,-2764,-2767,-2768,-2762,-2751,-2739,-2730,-2723,-2717,-2708,-2698,-2689,-2683,-2680,-2676,
+-2668,-2656,-2642,-2630,-2621,-2616,-2612,-2608,-2602,-2593,-2581,-2566,-2549,-2535,-2521,-2505,-2484,-2459,-2431,-2407,-2389,
+-2374,-2359,-2342,-2323,-2306,-2291,-2275,-2257,-2235,-2210,-2184,-2160,-2137,-2114,-2093,-2071,-2047,-2021,-1994,-1968,-1944,
+-1923,-1902,-1878,-1853,-1831,-1812,-1792,-1767,-1737,-1710,-1696,-1702,-1721,-1735,-1732,-1712,-1687,-1670,-1665,-1663,-1655,
+-1637,-1619,-1608,-1605,-1604,-1593,-1570,-1544,-1526,-1521,-1524,-1526,-1518,-1499,-1471,-1439,-1403,-1364,-1323,-1283,-1251,
+-1230,-1224,-1231,-1246,-1261,-1267,-1260,-1240,-1216,-1194,-1175,-1156,-1135,-1112,-1096,-1090,-1094,-1100,-1100,-1090,-1075,
+-1063,-1058,-1055,-1050,-1036,-1015,-989,-962,-939,-920,-906,-896,-888,-879,-869,-858,-848,-839,-826,-808,-785,
+-764,-754,-758,-770,-779,-777,-761,-735,-707,-680,-653,-625,-598,-575,-559,-545,-523,-487,-440,-394,-362,
+-347,-338,-320,-283,-238,-202,-191,-200,-213,-214,-207,-213,-254,-331,-417,-469,-457,-377,-246,-92,65,
+214,339,427,470,479,482,513,584,678,761,804,801,771,740,723,717,714,704,688,671,656,
+644,637,635,642,656,672,686,695,701,708,714,714,706,689,669,651,638,628,618,607,594,
+578,559,535,511,491,480,480,486,493,498,497,494,489,484,479,473,467,464,463,464,460,
+448,421,382,333,279,227,176,127,79,29,-19,-67,-114,-160,-201,-237,-267,-293,-318,-348,-381,
+-414,-444,-468,-490,-513,-539,-566,-589,-606,-619,-632,-649,-670,-690,-707,-721,-734,-746,-756,-763,-766,
+-767,-771,-780,-792,-803,-806,-801,-790,-777,-767,-761,-757,-754,-751,-752,-757,-765,-771,-770,-763,-752,
+-743,-740,-741,-742,-737,-727,-718,-715,-722,-736,-753,-767,-779,-790,-801,-809,-813,-811,-804,-795,-788,
+-786,-793,-810,-833,-857,-877,-889,-896,-902,-913,-930,-950,-969,-984,-998,-1010,-1023,-1037,-1053,-1071,-1092,
+-1113,-1131,-1145,-1154,-1161,-1168,-1175,-1182,-1188,-1193,-1200,-1214,-1232,-1251,-1267,-1277,-1281,-1283,-1288,-1297,-1308,
+-1321,-1334,-1346,-1358,-1371,-1386,-1400,-1412,-1422,-1431,-1442,-1455,-1467,-1474,-1476,-1473,-1472,-1476,-1484,-1492,-1494,
+-1491,-1488,-1489,-1497,-1507,-1517,-1525,-1531,-1536,-1542,-1545,-1546,-1546,-1546,-1546,-1544,-1537,-1526,-1514,-1506,-1503,
+-1504,-1503,-1499,-1492,-1485,-1479,-1473,-1466,-1457,-1448,-1441,-1436,-1433,-1431,-1430,-1431,-1432,-1431,-1425,-1414,-1399,
+-1385,-1373,-1362,-1351,-1341,-1332,-1326,-1322,-1317,-1310,-1299,-1286,-1273,-1262,-1252,-1244,-1237,-1230,-1221,-1212,-1202,
+-1193,-1185,-1179,-1175,-1171,-1165,-1157,-1148,-1140,-1135,-1131,-1129,-1125,-1119,-1111,-1103,-1096,-1092,-1090,-1090,-1089,
+-1087,-1084,-1080,-1078,-1076,-1074,-1073,-1071,-1069,-1065,-1060,-1053,-1046,-1040,-1034,-1028,-1022,-1017,-1014,-1012,-1010,
+-1004,-997,-989,-984,-982,-982,-981,-979,-977,-978,-980,-981,-977,-972,-968,-968,-971,-973,-971,-963,-952,
+-943,-936,-931,-923,-914,-903,-896,-891,-889,-885,-879,-871,-863,-855,-849,-845,-841,-838,-832,-823,-810,
+-792,-774,-757,-741,-728,-715,-703,-691,-681,-672,-664,-655,-648,-639,-627,-610,-588,-564,-544,-531,-526,
+-522,-514,-499,-480,-460,-445,-432,-420,-407,-394,-384,-377,-373,-366,-355,-341,-328,-317,-306,-294,-279,
+-263,-249,-238,-227,-216,-201,-183,-164,-145,-127,-107,-86,-66,-45,-26,-6,14,34,53,72,91,
+111,133,156,179,203,228,254,279,301,319,337,355,377,399,422,445,469,497,528,557,583,
+603,619,633,644,655,665,678,696,719,748,782,824,870,916,956,987,1016,1048,1086,1118,1128,
+1108,1074,1055,1076,1139,1222,1296,1347,1385,1428,1486,1553,1619,1680,1741,1803,1852,1864,1826,1749,1673,
+1636,1650,1698,1744,1765,1759,1738,1714,1688,1655,1615,1574,1537,1502,1467,1431,1399,1380,1372,1364,1341,
+1300,1252,1214,1199,1201,1209,1211,1204,1192,1181,1168,1151,1131,1115,1108,1110,1113,1109,1099,1090,1088,
+1092,1086,1054,986,888,778,673,585,515,457,408,366,331,300,267,225,175,124,83,59,51,
+51,48,38,23,8,-4,-17,-33,-56,-82,-111,-139,-166,-191,-215,-235,-249,-258,-265,-270,-277,
+-284,-291,-296,-300,-301,-302,-305,-311,-320,-330,-341,-348,-353,-357,-363,-369,-372,-371,-364,-356,-349,
+-346,-349,-356,-365,-376,-388,-403,-420,-438,-457,-472,-482,-487,-490,-494,-501,-510,-517,-520,-518,-513,
+-507,-500,-492,-482,-469,-456,-442,-430,-418,-406,-394,-380,-365,-348,-331,-313,-293,-269,-238,-200,-159,
+-119,-82,-48,-15,19,56,92,125,156,190,231,281,336,389,437,481,525,572,624,677,729,
+775,818,858,900,943,985,1027,1068,1109,1151,1192,1233,1271,1309,1348,1388,1428,1467,1504,1543,1583,
+1624,1662,1694,1721,1747,1776,1810,1848,1888,1928,1969,2010,2050,2086,2119,2150,2181,2212,2242,2269,2292,
+2313,2335,2356,2376,2395,2413,2435,2462,2493,2524,2551,2572,2587,2597,2605,2612,2615,2615,2609,2600,2589,
+2583,2583,2588,2592,2592,2587,2580,2576,2576,2575,2570,2559,2548,2540,2538,2539,2540,2538,2533,2527,2521,
+2514,2506,2496,2485,2475,2466,2460,2457,2458,2457,2453,2441,2423,2405,2391,2383,2378,2369,2357,2341,2323,
+2302,2278,2248,2217,2187,2160,2136,2116,2103,2101,2113,2132,2148,2149,2124,2115,2109,2110,2116,2123,2130,
+2137,2143,2148,2152,2154,2158,2169,2189,2214,2234,2240,2230,2209,2192,2190,2210,2245,2284,2318,2341,2353,
+2362,2376,2399,2431,2467,2502,2531,2554,2572,2585,2594,2600,2606,2611,2618,2625,2632,2638,2646,2659,2677,
+2697,2714,2727,2737,2750,2769,2794,2820,2838,2846,2846,2845,2853,2875,2907,2941,2967,2983,2992,3003,3022,
+3050,3083,3114,3140,3162,3183,3203,3220,3232,3240,3246,3252,3260,3268,3275,3284,3294,3308,3323,3336,3344,
+3346,3344,3341,3337,3334,3332,3331,3331,3331,3330,3327,3324,3324,3325,3327,3327,3324,3321,3320,3322,3325,
+3325,3322,3320,3324,3337,3358,3383,3407,3429,3447,3466,3491,3528,3581,3651,3728,3799,3848,3875,3891,3917,
+3970,4052,4147,4233,4292,4327,4353,4388,4443,4511,4575,4621,4644,4648,4646,4645,4649,4655,4660,4663,4662,
+4658,4650,4641,4633,4629,4631,4635,4634,4625,4610,4595,4584,4577,4570,4558,4543,4528,4522,4526,4535,4541,
+4541,4536,4532,4535,4546,4564,4582,4598,4610,4617,4618,4611,4596,4575,4551,4527,4504,4482,4464,4451,4446,
+4448,4457,4468,4479,4489,4494,4490,4478,4456,4431,4407,4389,4376,4364,4351,4335,4320,4306,4296,4286,4275,
+4259,4240,4216,4191,4167,4147,4132,4121,4107,4085,4054,4015,3975,3938,3906,3872,3834,3792,3751,3714,3681,
+3647,3606,3560,3513,3472,3440,3414,3389,3360,3330,3303,3280,3260,3242,3222,3204,3190,3181,3176,3174,3173,
+3173,3171,3168,3163,3154,3143,3132,3123,3116,3109,3104,3101,3101,3103,3104,3104,3103,3104,3105,3105,3100,
+3088,3071,3054,3042,3033,3023,3008,2986,2959,2931,2905,2881,2858,2835,2815,2795,2776,2755,2730,2704,2679,
+2658,2642,2627,2611,2594,2574,2551,2523,2491,2457,2425,2397,2372,2348,2320,2288,2252,2214,2178,2142,2106,
+2073,2043,2017,1993,1966,1936,1904,1872,1842,1813,1780,1744,1707,1673,1642,1611,1578,1540,1502,1468,1437,
+1406,1370,1327,1281,1237,1199,1166,1134,1098,1058,1016,976,938,901,865,829,794,758,723,686,646,
+604,561,519,477,436,394,352,310,267,224,178,132,87,44,4,-34,-73,-115,-161,-209,-259,
+-308,-358,-407,-454,-498,-538,-576,-615,-660,-707,-754,-797,-834,-869,-904,-942,-981,-1019,-1054,-1088,-1124,
+-1166,-1211,-1258,-1301,-1339,-1375,-1412,-1452,-1493,-1534,-1570,-1600,-1629,-1659,-1695,-1736,-1779,-1818,-1853,-1884,-1916,
+-1950,-1987,-2023,-2054,-2079,-2103,-2130,-2164,-2204,-2245,-2282,-2310,-2331,-2348,-2365,-2385,-2406,-2429,-2452,-2474,-2497,
+-2521,-2544,-2565,-2582,-2596,-2608,-2621,-2636,-2653,-2672,-2689,-2702,-2712,-2719,-2723,-2727,-2731,-2735,-2740,-2742,-2740,
+-2736,-2732,-2731,-2734,-2741,-2747,-2749,-2748,-2743,-2738,-2735,-2735,-2737,-2740,-2742,-2742,-2739,-2737,-2736,-2740,-2746,
+-2749,-2745,-2735,-2722,-2711,-2704,-2698,-2692,-2683,-2673,-2665,-2659,-2654,-2646,-2636,-2624,-2613,-2605,-2599,-2594,-2589,
+-2583,-2573,-2560,-2544,-2527,-2512,-2499,-2484,-2466,-2443,-2419,-2396,-2377,-2361,-2346,-2331,-2314,-2297,-2281,-2263,-2245,
+-2224,-2202,-2179,-2155,-2131,-2108,-2086,-2064,-2041,-2014,-1984,-1956,-1932,-1914,-1896,-1875,-1851,-1827,-1806,-1786,-1764,
+-1739,-1717,-1706,-1713,-1730,-1742,-1739,-1720,-1696,-1682,-1680,-1680,-1673,-1655,-1632,-1617,-1612,-1610,-1600,-1578,-1552,
+-1533,-1527,-1529,-1527,-1514,-1489,-1460,-1434,-1412,-1392,-1372,-1351,-1331,-1318,-1314,-1319,-1327,-1331,-1325,-1307,-1283,
+-1258,-1239,-1224,-1210,-1195,-1179,-1169,-1168,-1173,-1177,-1171,-1154,-1131,-1111,-1098,-1091,-1081,-1065,-1041,-1014,-989,
+-969,-955,-945,-936,-927,-917,-908,-900,-894,-886,-873,-854,-831,-812,-804,-808,-818,-824,-816,-793,-762,
+-732,-706,-685,-665,-645,-625,-606,-585,-556,-517,-474,-435,-409,-394,-377,-346,-303,-262,-243,-251,-274,
+-289,-286,-283,-311,-387,-494,-578,-579,-474,-285,-69,121,259,353,417,462,491,505,520,556,621,
+702,769,797,780,734,683,641,609,580,550,524,506,498,497,499,504,513,527,543,557,566,
+570,569,565,556,541,524,508,497,491,486,480,470,457,442,426,405,382,359,341,329,324,
+320,316,309,301,291,282,274,266,262,260,260,257,246,223,188,144,98,55,19,-11,-40,
+-71,-106,-145,-185,-226,-265,-301,-332,-359,-383,-407,-433,-460,-487,-513,-536,-558,-582,-606,-630,-650,
+-666,-682,-700,-721,-743,-761,-775,-784,-793,-803,-815,-825,-830,-831,-832,-835,-844,-855,-862,-862,-855,
+-843,-834,-828,-828,-830,-830,-828,-825,-820,-816,-810,-804,-800,-801,-806,-810,-808,-799,-786,-774,-765,
+-755,-739,-716,-692,-683,-698,-737,-787,-829,-851,-851,-839,-827,-823,-830,-846,-867,-888,-906,-918,-925,
+-932,-942,-957,-976,-996,-1013,-1027,-1041,-1055,-1070,-1086,-1103,-1120,-1137,-1153,-1167,-1178,-1186,-1192,-1196,-1200,
+-1203,-1207,-1216,-1231,-1251,-1272,-1289,-1299,-1301,-1301,-1302,-1310,-1325,-1343,-1360,-1375,-1387,-1399,-1411,-1424,-1436,
+-1445,-1454,-1463,-1473,-1483,-1489,-1491,-1489,-1488,-1492,-1499,-1503,-1502,-1498,-1495,-1499,-1509,-1522,-1532,-1539,-1545,
+-1553,-1564,-1575,-1581,-1583,-1582,-1579,-1573,-1563,-1547,-1531,-1519,-1513,-1513,-1516,-1516,-1513,-1508,-1502,-1495,-1486,
+-1476,-1465,-1456,-1448,-1443,-1440,-1439,-1439,-1439,-1435,-1428,-1417,-1404,-1391,-1380,-1369,-1358,-1347,-1336,-1328,-1322,
+-1314,-1305,-1294,-1281,-1270,-1259,-1249,-1240,-1230,-1220,-1210,-1200,-1191,-1181,-1174,-1168,-1165,-1163,-1159,-1154,-1146,
+-1139,-1133,-1130,-1127,-1123,-1117,-1108,-1099,-1093,-1089,-1088,-1087,-1085,-1080,-1075,-1070,-1067,-1066,-1066,-1066,-1066,
+-1063,-1058,-1050,-1042,-1034,-1029,-1024,-1020,-1014,-1009,-1005,-1002,-999,-994,-987,-980,-975,-974,-975,-976,-976,
+-975,-975,-975,-974,-973,-970,-969,-969,-970,-970,-967,-960,-952,-945,-939,-934,-926,-917,-908,-901,-896,
+-892,-887,-880,-871,-861,-852,-846,-842,-839,-836,-831,-822,-810,-795,-782,-769,-757,-742,-727,-712,-702,
+-695,-690,-683,-674,-664,-655,-645,-633,-615,-595,-575,-561,-550,-537,-518,-493,-466,-443,-427,-416,-403,
+-389,-376,-368,-368,-370,-369,-360,-345,-328,-316,-306,-297,-284,-268,-251,-235,-221,-208,-193,-176,-157,
+-138,-120,-101,-83,-65,-46,-27,-8,8,25,42,60,80,101,123,144,167,192,219,247,271,
+290,305,321,340,363,388,412,436,459,485,512,538,561,581,598,615,630,644,658,674,695,
+721,752,789,835,886,937,980,1014,1040,1068,1096,1115,1113,1087,1055,1045,1079,1150,1233,1298,1338,
+1371,1423,1506,1611,1717,1808,1879,1934,1970,1975,1944,1887,1828,1789,1776,1775,1769,1748,1719,1692,1670,
+1648,1618,1584,1552,1526,1501,1469,1429,1390,1365,1354,1347,1325,1283,1230,1189,1171,1177,1192,1202,1203,
+1198,1190,1180,1165,1144,1125,1114,1111,1109,1103,1090,1080,1077,1079,1072,1037,968,872,766,664,575,
+496,425,365,320,291,273,251,215,164,108,63,38,30,30,29,22,10,0,-10,-21,-39,
+-63,-91,-120,-147,-172,-196,-219,-240,-256,-267,-273,-277,-283,-292,-302,-312,-319,-324,-328,-333,-341,
+-352,-363,-370,-374,-375,-376,-377,-378,-376,-371,-363,-355,-350,-348,-348,-348,-350,-355,-364,-378,-396,
+-417,-437,-455,-469,-479,-485,-491,-496,-500,-502,-501,-497,-490,-483,-475,-465,-454,-442,-430,-419,-408,
+-396,-382,-366,-350,-334,-320,-307,-294,-278,-258,-231,-198,-161,-124,-88,-52,-14,25,67,105,139,
+171,205,245,292,342,392,438,482,527,575,627,680,729,775,819,861,904,946,986,1025,1063,
+1102,1141,1180,1218,1256,1294,1335,1378,1420,1460,1498,1537,1577,1618,1654,1686,1714,1742,1774,1810,1848,
+1885,1922,1961,2002,2044,2083,2117,2147,2174,2203,2232,2260,2287,2311,2333,2354,2374,2393,2412,2434,2460,
+2489,2519,2546,2570,2589,2604,2616,2625,2632,2636,2635,2629,2621,2612,2607,2606,2606,2606,2604,2600,2597,
+2596,2595,2592,2585,2577,2571,2567,2565,2561,2554,2543,2534,2528,2527,2527,2526,2520,2511,2501,2493,2490,
+2489,2488,2483,2471,2454,2438,2426,2417,2406,2389,2364,2334,2303,2275,2250,2228,2208,2191,2177,2167,2158,
+2152,2148,2144,2140,2133,2124,2145,2148,2155,2162,2167,2170,2173,2179,2188,2196,2196,2186,2172,2163,2166,
+2181,2200,2214,2218,2212,2205,2203,2213,2231,2254,2275,2291,2303,2317,2337,2369,2410,2456,2498,2532,2556,
+2574,2587,2598,2606,2611,2614,2617,2622,2631,2641,2653,2664,2674,2685,2700,2720,2744,2768,2788,2800,2804,
+2806,2809,2817,2832,2854,2882,2912,2940,2960,2973,2983,2995,3018,3050,3087,3122,3148,3167,3183,3200,3218,
+3235,3247,3255,3260,3264,3270,3277,3288,3301,3317,3333,3343,3347,3344,3337,3331,3328,3327,3327,3326,3323,
+3320,3317,3318,3321,3324,3327,3326,3323,3321,3322,3325,3329,3329,3326,3324,3328,3340,3358,3380,3403,3427,
+3452,3477,3501,3527,3562,3618,3697,3787,3865,3913,3927,3929,3950,4009,4104,4209,4294,4347,4378,4407,4451,
+4510,4568,4611,4632,4637,4638,4641,4647,4653,4655,4655,4653,4650,4644,4632,4619,4610,4609,4615,4623,4626,
+4621,4612,4603,4595,4586,4571,4549,4523,4503,4494,4497,4506,4516,4523,4527,4534,4547,4567,4590,4611,4628,
+4639,4645,4646,4643,4633,4616,4590,4555,4516,4479,4452,4440,4445,4467,4501,4544,4591,4635,4667,4674,4654,
+4608,4548,4489,4442,4411,4391,4376,4362,4348,4335,4323,4310,4294,4275,4253,4232,4214,4200,4187,4175,4160,
+4140,4114,4083,4048,4012,3978,3945,3910,3874,3835,3798,3762,3726,3687,3643,3594,3547,3506,3473,3445,3418,
+3391,3363,3337,3313,3290,3268,3245,3224,3208,3199,3195,3195,3195,3195,3195,3194,3192,3189,3183,3175,3164,
+3153,3144,3140,3142,3148,3153,3155,3154,3151,3150,3150,3148,3141,3127,3110,3095,3084,3076,3065,3048,3025,
+2998,2972,2947,2922,2897,2872,2849,2829,2811,2792,2771,2749,2729,2712,2699,2685,2668,2648,2623,2595,2562,
+2528,2494,2464,2438,2414,2387,2355,2319,2280,2241,2204,2168,2133,2102,2076,2054,2032,2006,1975,1940,1906,
+1875,1844,1811,1776,1741,1709,1681,1652,1620,1584,1546,1510,1477,1444,1406,1362,1316,1274,1238,1206,1174,
+1137,1095,1052,1011,975,940,905,869,831,794,757,720,681,640,597,554,511,470,429,387,344,
+300,255,211,169,128,87,46,5,-35,-76,-120,-165,-214,-266,-317,-365,-409,-449,-487,-527,-569,
+-616,-665,-713,-755,-791,-825,-857,-892,-930,-967,-1004,-1041,-1081,-1124,-1171,-1217,-1260,-1298,-1334,-1370,-1408,
+-1448,-1485,-1519,-1550,-1579,-1611,-1647,-1686,-1725,-1761,-1794,-1826,-1860,-1896,-1932,-1966,-1995,-2021,-2048,-2078,-2115,
+-2154,-2194,-2229,-2257,-2279,-2298,-2317,-2338,-2360,-2383,-2407,-2431,-2455,-2478,-2501,-2521,-2539,-2554,-2570,-2585,-2600,
+-2616,-2631,-2645,-2659,-2670,-2679,-2685,-2689,-2694,-2700,-2706,-2709,-2707,-2701,-2696,-2696,-2702,-2711,-2719,-2722,-2720,
+-2715,-2711,-2710,-2712,-2716,-2719,-2721,-2721,-2718,-2714,-2713,-2716,-2720,-2722,-2718,-2709,-2697,-2688,-2682,-2679,-2674,
+-2667,-2657,-2647,-2638,-2631,-2624,-2616,-2607,-2598,-2590,-2583,-2576,-2569,-2562,-2553,-2541,-2526,-2509,-2494,-2479,-2464,
+-2447,-2427,-2406,-2386,-2367,-2349,-2332,-2316,-2300,-2284,-2268,-2250,-2229,-2208,-2187,-2166,-2145,-2122,-2098,-2075,-2053,
+-2030,-2004,-1976,-1948,-1925,-1908,-1892,-1874,-1850,-1825,-1801,-1779,-1757,-1735,-1717,-1709,-1716,-1733,-1748,-1749,-1735,
+-1715,-1701,-1695,-1692,-1682,-1661,-1638,-1621,-1614,-1610,-1600,-1582,-1560,-1545,-1540,-1539,-1530,-1508,-1474,-1438,-1410,
+-1393,-1383,-1375,-1368,-1361,-1357,-1359,-1364,-1368,-1364,-1351,-1331,-1307,-1287,-1272,-1261,-1252,-1241,-1230,-1223,-1224,
+-1229,-1231,-1224,-1206,-1183,-1162,-1145,-1130,-1112,-1088,-1061,-1036,-1017,-1004,-995,-986,-976,-967,-960,-954,-949,
+-941,-928,-911,-892,-874,-863,-859,-861,-864,-860,-847,-824,-797,-771,-748,-729,-709,-686,-661,-637,-612,
+-586,-557,-526,-497,-471,-445,-415,-377,-339,-315,-315,-335,-355,-361,-354,-359,-404,-493,-587,-622,-544,
+-350,-94,144,309,389,416,433,462,501,538,571,608,658,713,755,763,730,670,600,535,480,
+432,393,367,358,362,372,382,388,394,405,419,434,444,447,443,432,416,397,378,364,355,
+351,346,338,326,313,300,287,271,253,232,212,196,183,172,161,148,132,115,96,77,63,
+56,57,61,60,50,27,-6,-44,-80,-110,-133,-153,-174,-199,-229,-263,-299,-333,-364,-392,-420,
+-447,-475,-503,-530,-554,-575,-593,-611,-630,-650,-671,-690,-707,-722,-739,-759,-780,-801,-819,-832,-842,
+-850,-859,-869,-879,-887,-891,-891,-892,-895,-902,-909,-913,-911,-905,-899,-895,-896,-898,-898,-895,-888,
+-880,-871,-862,-855,-851,-851,-852,-853,-849,-842,-837,-837,-836,-823,-786,-726,-662,-622,-628,-681,-760,
+-833,-879,-893,-887,-878,-875,-881,-892,-904,-916,-929,-941,-953,-964,-976,-990,-1007,-1024,-1040,-1054,-1068,
+-1083,-1099,-1117,-1133,-1148,-1161,-1174,-1186,-1197,-1207,-1214,-1218,-1221,-1224,-1229,-1238,-1252,-1270,-1290,-1306,-1316,
+-1318,-1315,-1314,-1321,-1337,-1360,-1384,-1403,-1416,-1426,-1436,-1448,-1460,-1471,-1481,-1489,-1497,-1503,-1508,-1509,-1509,
+-1510,-1513,-1516,-1516,-1513,-1509,-1509,-1516,-1527,-1539,-1548,-1554,-1561,-1572,-1585,-1597,-1603,-1603,-1599,-1594,-1589,
+-1580,-1566,-1549,-1533,-1524,-1522,-1524,-1526,-1525,-1522,-1516,-1510,-1504,-1495,-1486,-1475,-1466,-1459,-1454,-1452,-1449,
+-1446,-1439,-1430,-1420,-1408,-1398,-1388,-1377,-1366,-1353,-1341,-1330,-1320,-1309,-1298,-1286,-1276,-1267,-1258,-1250,-1239,
+-1229,-1218,-1207,-1197,-1186,-1175,-1165,-1157,-1152,-1148,-1145,-1140,-1133,-1126,-1121,-1119,-1118,-1117,-1113,-1106,-1099,
+-1094,-1091,-1090,-1089,-1084,-1077,-1069,-1062,-1059,-1057,-1058,-1058,-1057,-1053,-1046,-1037,-1028,-1021,-1018,-1015,-1013,
+-1008,-1002,-996,-990,-986,-981,-977,-972,-969,-969,-970,-971,-972,-971,-970,-969,-969,-968,-966,-965,-964,
+-962,-961,-958,-955,-952,-949,-945,-939,-931,-922,-915,-908,-903,-898,-891,-883,-875,-868,-860,-854,-848,
+-843,-837,-830,-819,-806,-794,-785,-778,-770,-759,-745,-731,-721,-714,-707,-696,-680,-663,-647,-634,-623,
+-612,-601,-591,-583,-573,-556,-529,-497,-465,-442,-428,-417,-404,-388,-372,-364,-365,-369,-369,-359,-342,
+-325,-314,-309,-305,-296,-280,-259,-240,-224,-211,-199,-184,-166,-145,-123,-103,-84,-65,-46,-28,-10,
+4,18,33,50,70,91,110,127,145,166,191,217,240,259,274,293,317,346,376,404,429,
+453,476,499,520,541,561,583,607,630,652,675,702,732,765,799,833,871,914,959,998,1028,
+1050,1069,1087,1098,1094,1073,1051,1051,1088,1157,1232,1290,1328,1368,1435,1542,1678,1816,1934,2023,2082,
+2114,2116,2090,2042,1987,1937,1892,1845,1789,1729,1677,1641,1620,1602,1581,1558,1538,1525,1510,1481,1437,
+1389,1352,1333,1323,1306,1272,1227,1190,1172,1173,1183,1191,1195,1197,1200,1200,1190,1171,1148,1130,1120,
+1112,1101,1084,1069,1062,1061,1051,1018,954,865,765,667,578,496,424,366,327,308,295,273,231,
+170,105,53,22,11,9,7,2,-3,-10,-16,-26,-44,-69,-97,-125,-150,-174,-198,-222,-244,
+-262,-273,-281,-286,-292,-302,-314,-327,-338,-346,-352,-358,-366,-376,-385,-391,-394,-393,-390,-387,-381,
+-374,-366,-359,-354,-353,-353,-351,-348,-345,-347,-356,-371,-389,-409,-427,-445,-461,-475,-487,-496,-500,
+-501,-498,-492,-485,-476,-467,-457,-446,-435,-424,-414,-403,-391,-376,-359,-341,-325,-310,-298,-286,-274,
+-258,-240,-217,-190,-160,-127,-92,-53,-10,34,78,117,151,183,217,255,298,344,390,435,482,
+532,584,637,688,734,778,820,862,905,946,986,1025,1063,1101,1139,1174,1209,1244,1282,1322,1365,
+1407,1446,1484,1521,1560,1598,1634,1667,1699,1732,1766,1803,1838,1871,1905,1941,1982,2024,2064,2098,2127,
+2153,2181,2212,2243,2274,2301,2326,2348,2369,2390,2411,2434,2459,2486,2513,2540,2566,2588,2607,2622,2633,
+2642,2649,2655,2657,2652,2643,2634,2627,2624,2624,2625,2623,2620,2616,2613,2610,2606,2601,2596,2590,2585,
+2578,2569,2559,2550,2546,2545,2545,2544,2539,2530,2519,2510,2502,2496,2488,2476,2460,2443,2427,2413,2400,
+2383,2360,2332,2303,2276,2254,2239,2228,2222,2220,2219,2218,2214,2205,2191,2175,2160,2149,2145,2208,2207,
+2203,2196,2185,2176,2172,2177,2185,2191,2187,2174,2156,2144,2144,2157,2179,2202,2219,2227,2228,2226,2225,
+2229,2240,2254,2270,2285,2299,2317,2345,2384,2430,2477,2517,2546,2566,2580,2592,2601,2608,2613,2617,2626,
+2639,2655,2669,2676,2678,2680,2690,2712,2741,2769,2784,2785,2777,2771,2777,2798,2828,2861,2890,2914,2934,
+2952,2967,2984,3003,3029,3062,3097,3129,3153,3171,3186,3202,3220,3238,3252,3261,3264,3267,3270,3277,3288,
+3301,3316,3329,3336,3338,3333,3326,3319,3315,3315,3315,3313,3310,3307,3307,3310,3314,3318,3319,3318,3318,
+3322,3331,3340,3343,3339,3332,3329,3338,3358,3383,3406,3428,3452,3481,3514,3545,3576,3613,3669,3749,3840,
+3918,3962,3974,3979,4008,4078,4178,4279,4354,4395,4420,4451,4497,4550,4591,4612,4614,4611,4613,4621,4628,
+4630,4627,4623,4621,4618,4609,4593,4574,4563,4564,4575,4588,4597,4600,4601,4601,4600,4592,4576,4552,4526,
+4502,4485,4473,4466,4466,4475,4494,4522,4555,4587,4615,4638,4655,4667,4673,4675,4675,4669,4655,4627,4583,
+4527,4474,4439,4434,4463,4523,4604,4695,4786,4863,4911,4918,4880,4803,4705,4608,4529,4472,4436,4411,4391,
+4373,4357,4344,4330,4313,4291,4269,4250,4238,4232,4225,4214,4194,4168,4138,4107,4076,4046,4013,3979,3944,
+3909,3875,3840,3803,3763,3719,3673,3627,3583,3542,3506,3473,3444,3418,3394,3372,3350,3327,3303,3279,3256,
+3235,3220,3211,3207,3208,3211,3215,3218,3220,3221,3221,3218,3214,3209,3207,3210,3216,3221,3221,3214,3205,
+3198,3197,3199,3197,3189,3174,3156,3141,3130,3119,3103,3082,3058,3035,3013,2991,2966,2938,2909,2883,2862,
+2845,2829,2812,2796,2782,2770,2757,2740,2718,2690,2658,2626,2593,2561,2531,2503,2477,2450,2420,2384,2345,
+2304,2266,2230,2195,2163,2135,2112,2091,2069,2042,2010,1975,1941,1910,1879,1846,1811,1776,1746,1719,1693,
+1664,1630,1594,1557,1520,1481,1440,1396,1352,1312,1277,1244,1209,1170,1129,1088,1051,1015,981,944,906,
+866,826,788,751,713,673,631,588,546,506,465,422,377,329,282,240,202,166,129,88,45,
+1,-39,-81,-124,-172,-224,-274,-321,-361,-398,-435,-475,-520,-568,-616,-661,-702,-739,-774,-808,-842,
+-878,-915,-954,-996,-1040,-1086,-1133,-1178,-1220,-1258,-1294,-1330,-1367,-1403,-1438,-1470,-1501,-1532,-1566,-1602,-1638,
+-1672,-1705,-1737,-1770,-1805,-1841,-1876,-1908,-1938,-1968,-2000,-2034,-2071,-2108,-2143,-2174,-2199,-2220,-2239,-2260,-2283,
+-2308,-2335,-2362,-2388,-2412,-2434,-2455,-2473,-2491,-2509,-2528,-2548,-2566,-2582,-2595,-2606,-2618,-2630,-2640,-2648,-2654,
+-2660,-2667,-2673,-2676,-2674,-2668,-2663,-2664,-2671,-2680,-2688,-2690,-2687,-2683,-2682,-2685,-2690,-2696,-2699,-2699,-2697,
+-2694,-2691,-2689,-2690,-2690,-2689,-2685,-2677,-2668,-2662,-2659,-2657,-2654,-2647,-2638,-2628,-2619,-2612,-2605,-2599,-2592,
+-2584,-2575,-2566,-2557,-2549,-2541,-2532,-2520,-2506,-2490,-2474,-2458,-2442,-2425,-2407,-2389,-2372,-2355,-2337,-2319,-2301,
+-2286,-2271,-2256,-2237,-2215,-2191,-2168,-2148,-2129,-2108,-2085,-2061,-2038,-2016,-1993,-1968,-1943,-1921,-1902,-1885,-1866,
+-1845,-1821,-1797,-1775,-1753,-1731,-1714,-1708,-1717,-1735,-1753,-1759,-1750,-1733,-1716,-1705,-1696,-1683,-1663,-1642,-1626,
+-1617,-1611,-1601,-1587,-1571,-1559,-1554,-1548,-1535,-1510,-1476,-1440,-1411,-1391,-1377,-1368,-1363,-1363,-1368,-1376,-1383,
+-1383,-1375,-1360,-1340,-1321,-1305,-1295,-1288,-1283,-1277,-1271,-1267,-1266,-1266,-1263,-1255,-1241,-1224,-1207,-1191,-1170,
+-1145,-1115,-1088,-1067,-1056,-1049,-1042,-1032,-1021,-1013,-1010,-1008,-1002,-988,-966,-944,-929,-923,-923,-924,-920,
+-911,-896,-878,-859,-839,-819,-798,-775,-749,-720,-689,-662,-639,-622,-607,-590,-565,-533,-494,-453,-417,
+-394,-389,-399,-413,-420,-415,-410,-428,-481,-551,-591,-545,-387,-143,114,310,407,420,403,404,442,
+504,563,608,643,677,709,726,710,659,581,496,418,352,300,262,242,240,250,263,272,275,
+277,283,295,310,321,326,323,311,294,274,254,239,229,222,214,203,188,173,159,146,133,
+118,101,84,67,53,39,26,10,-8,-33,-61,-89,-111,-121,-119,-112,-108,-113,-130,-154,-179,
+-200,-218,-234,-252,-273,-300,-331,-364,-396,-425,-450,-473,-498,-526,-560,-594,-624,-647,-663,-675,-686,
+-700,-717,-735,-752,-768,-783,-798,-813,-829,-846,-864,-882,-897,-908,-916,-921,-928,-936,-944,-949,-951,
+-952,-955,-959,-964,-967,-965,-960,-955,-952,-950,-949,-946,-942,-937,-933,-926,-918,-908,-900,-893,-886,
+-879,-875,-879,-892,-905,-903,-869,-803,-726,-671,-664,-709,-784,-856,-902,-919,-919,-918,-923,-932,-937,
+-937,-937,-943,-957,-976,-997,-1015,-1030,-1044,-1057,-1069,-1081,-1093,-1107,-1124,-1142,-1159,-1173,-1184,-1193,-1202,
+-1212,-1222,-1229,-1235,-1240,-1244,-1251,-1261,-1275,-1292,-1310,-1325,-1333,-1333,-1328,-1324,-1328,-1344,-1368,-1396,-1419,
+-1435,-1445,-1455,-1466,-1480,-1493,-1504,-1512,-1517,-1522,-1526,-1529,-1532,-1534,-1536,-1536,-1534,-1531,-1529,-1531,-1538,
+-1548,-1557,-1564,-1570,-1580,-1592,-1604,-1611,-1610,-1604,-1598,-1596,-1596,-1594,-1585,-1567,-1548,-1532,-1525,-1523,-1524,
+-1522,-1518,-1513,-1510,-1508,-1505,-1501,-1494,-1485,-1478,-1472,-1467,-1461,-1454,-1444,-1433,-1422,-1411,-1401,-1390,-1379,
+-1367,-1355,-1343,-1331,-1319,-1306,-1293,-1282,-1273,-1266,-1260,-1252,-1243,-1232,-1222,-1211,-1199,-1186,-1173,-1160,-1150,
+-1143,-1137,-1131,-1123,-1114,-1107,-1102,-1101,-1103,-1104,-1103,-1099,-1095,-1091,-1088,-1087,-1084,-1078,-1071,-1063,-1056,
+-1051,-1049,-1048,-1047,-1044,-1039,-1032,-1024,-1017,-1011,-1009,-1007,-1005,-1002,-995,-988,-981,-975,-971,-968,-967,
+-966,-966,-966,-967,-967,-967,-967,-967,-966,-964,-961,-958,-954,-951,-949,-949,-950,-952,-953,-950,-944,
+-936,-928,-923,-918,-912,-904,-895,-887,-881,-876,-872,-866,-859,-851,-843,-833,-820,-807,-795,-787,-782,
+-777,-771,-762,-751,-740,-730,-717,-700,-677,-652,-627,-607,-593,-584,-581,-582,-584,-581,-567,-543,-514,
+-487,-469,-457,-446,-430,-408,-387,-374,-371,-372,-369,-358,-341,-325,-317,-316,-315,-308,-292,-271,-250,
+-235,-224,-215,-203,-185,-161,-137,-113,-92,-71,-51,-31,-13,0,12,24,40,59,78,94,107,
+121,138,160,185,207,226,244,267,298,333,369,401,427,450,470,489,507,527,551,579,610,
+641,669,697,730,766,802,834,861,888,919,954,989,1016,1035,1050,1066,1080,1085,1077,1067,1070,
+1103,1163,1233,1297,1349,1403,1479,1588,1722,1865,1997,2108,2192,2242,2252,2223,2162,2088,2014,1943,1870,
+1793,1716,1653,1612,1589,1573,1557,1540,1527,1519,1508,1482,1438,1385,1339,1311,1295,1279,1253,1220,1192,
+1177,1176,1181,1186,1190,1198,1209,1216,1211,1191,1164,1141,1126,1116,1102,1083,1063,1049,1040,1026,995,
+938,858,765,672,584,505,441,394,369,356,343,312,258,186,114,57,22,5,-2,-8,-13,
+-18,-21,-24,-33,-49,-72,-99,-126,-152,-178,-204,-229,-252,-270,-284,-294,-302,-310,-320,-331,-344,
+-357,-367,-375,-380,-386,-390,-395,-397,-397,-395,-391,-385,-376,-367,-359,-354,-354,-355,-354,-351,-345,
+-342,-347,-360,-379,-399,-415,-428,-440,-453,-467,-480,-491,-497,-498,-495,-489,-480,-469,-456,-443,-431,
+-421,-411,-401,-389,-373,-355,-337,-320,-307,-296,-286,-274,-260,-243,-224,-204,-182,-157,-126,-89,-47,
+0,46,90,128,163,196,230,267,307,349,392,438,488,541,596,649,698,742,784,825,867,
+908,948,987,1026,1065,1105,1143,1179,1213,1247,1283,1321,1360,1398,1434,1468,1503,1539,1575,1611,1646,
+1680,1717,1753,1789,1823,1855,1888,1924,1964,2004,2042,2074,2103,2132,2162,2196,2229,2261,2290,2316,2340,
+2364,2388,2413,2437,2461,2484,2508,2532,2557,2582,2604,2621,2634,2644,2654,2664,2672,2675,2670,2660,2651,
+2645,2643,2642,2639,2634,2628,2624,2622,2621,2618,2612,2604,2595,2587,2581,2575,2569,2563,2555,2547,2537,
+2525,2515,2505,2497,2488,2476,2459,2439,2418,2398,2381,2366,2352,2336,2318,2302,2289,2281,2275,2271,2267,
+2262,2259,2256,2253,2249,2242,2233,2223,2214,2209,2208,2252,2233,2210,2185,2164,2151,2146,2148,2151,2150,
+2145,2138,2132,2132,2141,2156,2176,2197,2217,2231,2238,2239,2239,2245,2261,2284,2309,2326,2335,2340,2350,
+2374,2411,2453,2492,2521,2540,2552,2563,2572,2582,2591,2601,2615,2633,2652,2668,2678,2681,2683,2692,2711,
+2736,2757,2766,2763,2755,2755,2771,2802,2838,2870,2892,2907,2923,2942,2967,2995,3024,3053,3082,3111,3137,
+3159,3176,3191,3206,3223,3238,3250,3256,3260,3263,3269,3278,3288,3299,3309,3317,3322,3323,3321,3316,3310,
+3304,3301,3299,3297,3296,3296,3297,3300,3304,3306,3307,3309,3315,3327,3342,3352,3353,3343,3333,3333,3348,
+3376,3407,3433,3455,3480,3513,3554,3597,3639,3683,3740,3814,3893,3959,3998,4017,4039,4088,4171,4270,4356,
+4409,4434,4452,4482,4525,4568,4594,4599,4593,4589,4591,4596,4595,4587,4578,4576,4579,4579,4570,4553,4536,
+4530,4536,4549,4557,4559,4557,4559,4567,4578,4587,4592,4594,4590,4578,4550,4507,4459,4423,4417,4443,4491,
+4546,4594,4631,4657,4678,4692,4701,4702,4699,4692,4676,4644,4593,4528,4468,4436,4451,4518,4628,4760,4892,
+5004,5083,5118,5104,5045,4951,4841,4734,4644,4573,4519,4473,4432,4395,4367,4348,4335,4322,4305,4285,4268,
+4257,4252,4248,4237,4215,4185,4154,4125,4099,4072,4040,4005,3969,3935,3902,3869,3831,3787,3742,3697,3655,
+3615,3575,3536,3500,3470,3446,3426,3408,3388,3367,3345,3323,3299,3272,3247,3226,3215,3215,3224,3236,3246,
+3253,3257,3261,3266,3274,3284,3297,3310,3319,3318,3305,3284,3263,3252,3250,3253,3253,3243,3226,3207,3191,
+3178,3162,3142,3119,3095,3074,3056,3035,3009,2978,2947,2921,2900,2883,2868,2852,2839,2828,2817,2804,2783,
+2754,2720,2685,2652,2621,2593,2565,2538,2510,2480,2446,2409,2369,2330,2293,2260,2228,2199,2173,2149,2126,
+2100,2070,2036,2003,1973,1945,1917,1885,1850,1815,1783,1756,1730,1703,1672,1638,1600,1561,1520,1477,1434,
+1393,1355,1319,1282,1242,1202,1163,1126,1091,1056,1019,980,940,899,860,823,785,746,707,666,624,
+583,543,503,460,413,364,317,274,238,204,167,126,81,36,-5,-44,-84,-129,-179,-228,-272,
+-311,-347,-386,-429,-476,-523,-567,-607,-645,-683,-720,-756,-793,-829,-868,-909,-955,-1003,-1051,-1097,-1140,
+-1179,-1217,-1254,-1292,-1329,-1364,-1398,-1429,-1460,-1492,-1525,-1558,-1591,-1622,-1653,-1686,-1720,-1754,-1788,-1820,-1851,
+-1882,-1916,-1951,-1989,-2027,-2063,-2095,-2123,-2146,-2166,-2185,-2206,-2230,-2258,-2286,-2313,-2338,-2361,-2383,-2403,-2421,
+-2440,-2459,-2480,-2502,-2523,-2541,-2555,-2567,-2578,-2590,-2601,-2610,-2618,-2625,-2631,-2637,-2639,-2638,-2634,-2632,-2635,
+-2644,-2653,-2659,-2659,-2655,-2652,-2653,-2658,-2666,-2671,-2672,-2671,-2668,-2666,-2666,-2666,-2666,-2665,-2662,-2657,-2652,
+-2646,-2642,-2638,-2634,-2628,-2622,-2615,-2608,-2602,-2596,-2589,-2582,-2575,-2567,-2558,-2547,-2537,-2528,-2520,-2511,-2500,
+-2485,-2470,-2454,-2439,-2424,-2407,-2390,-2372,-2357,-2341,-2326,-2308,-2291,-2274,-2260,-2246,-2228,-2204,-2178,-2154,-2132,
+-2114,-2096,-2074,-2050,-2026,-2003,-1982,-1961,-1938,-1915,-1894,-1873,-1855,-1836,-1818,-1798,-1777,-1755,-1733,-1717,-1713,
+-1722,-1741,-1758,-1765,-1757,-1740,-1722,-1708,-1698,-1686,-1670,-1651,-1634,-1621,-1613,-1605,-1594,-1582,-1571,-1561,-1551,
+-1538,-1520,-1499,-1475,-1451,-1424,-1398,-1376,-1362,-1361,-1369,-1381,-1389,-1389,-1381,-1368,-1355,-1342,-1331,-1323,-1318,
+-1315,-1313,-1313,-1311,-1307,-1299,-1288,-1275,-1263,-1251,-1240,-1226,-1206,-1179,-1150,-1127,-1112,-1106,-1102,-1093,-1080,
+-1067,-1061,-1061,-1061,-1053,-1032,-1006,-984,-976,-982,-991,-993,-982,-960,-936,-916,-900,-884,-865,-840,-813,
+-785,-757,-730,-705,-687,-674,-664,-648,-619,-576,-526,-481,-452,-442,-446,-453,-453,-446,-441,-451,-486,
+-534,-561,-525,-397,-185,57,265,385,413,385,359,371,423,493,554,595,625,652,673,673,639,
+569,476,381,299,237,192,162,148,146,152,159,161,159,158,161,171,184,196,204,204,197,
+184,166,147,131,119,111,103,91,75,58,40,25,10,-4,-20,-37,-54,-72,-89,-105,-122,
+-142,-167,-197,-227,-251,-263,-262,-255,-249,-251,-261,-274,-287,-298,-309,-323,-342,-365,-391,-419,-449,
+-478,-505,-528,-549,-572,-601,-635,-671,-702,-725,-739,-747,-756,-767,-782,-799,-817,-835,-852,-865,-875,
+-882,-892,-908,-930,-951,-966,-973,-973,-974,-979,-989,-998,-1004,-1006,-1007,-1011,-1015,-1019,-1019,-1014,-1007,
+-1001,-996,-992,-989,-989,-989,-988,-984,-975,-963,-950,-940,-932,-924,-919,-921,-934,-953,-963,-949,-908,
+-853,-810,-800,-825,-870,-908,-926,-926,-923,-930,-947,-964,-969,-962,-951,-950,-965,-994,-1025,-1052,-1071,
+-1084,-1094,-1104,-1112,-1121,-1131,-1144,-1159,-1175,-1189,-1201,-1210,-1219,-1228,-1237,-1245,-1251,-1255,-1260,-1267,-1279,
+-1296,-1315,-1334,-1349,-1354,-1352,-1343,-1335,-1335,-1345,-1367,-1394,-1419,-1439,-1454,-1466,-1479,-1493,-1507,-1518,-1525,
+-1529,-1532,-1537,-1543,-1550,-1555,-1557,-1555,-1552,-1550,-1550,-1553,-1558,-1563,-1568,-1575,-1585,-1600,-1615,-1624,-1623,
+-1612,-1600,-1594,-1597,-1604,-1608,-1601,-1582,-1558,-1538,-1527,-1523,-1521,-1517,-1510,-1503,-1498,-1498,-1500,-1501,-1500,
+-1497,-1493,-1489,-1483,-1474,-1463,-1449,-1435,-1421,-1408,-1396,-1384,-1372,-1361,-1352,-1343,-1333,-1321,-1308,-1295,-1284,
+-1275,-1269,-1262,-1254,-1246,-1237,-1227,-1216,-1203,-1187,-1172,-1159,-1149,-1142,-1134,-1125,-1113,-1102,-1093,-1087,-1086,
+-1087,-1089,-1089,-1087,-1083,-1080,-1077,-1074,-1070,-1065,-1059,-1053,-1049,-1045,-1043,-1040,-1036,-1031,-1026,-1021,-1016,
+-1011,-1006,-1001,-998,-995,-992,-988,-982,-976,-969,-964,-962,-961,-961,-962,-962,-961,-962,-963,-965,-966,
+-966,-963,-959,-954,-949,-946,-945,-946,-949,-952,-953,-950,-943,-936,-931,-927,-924,-919,-909,-899,-890,
+-885,-883,-881,-876,-869,-861,-852,-843,-833,-821,-808,-797,-789,-784,-779,-772,-762,-750,-735,-718,-696,
+-671,-643,-616,-592,-574,-564,-562,-567,-573,-575,-568,-553,-535,-519,-507,-497,-482,-460,-432,-407,-390,
+-382,-379,-374,-363,-347,-333,-325,-323,-321,-314,-299,-278,-259,-245,-236,-229,-217,-198,-174,-148,-125,
+-104,-84,-62,-39,-19,-4,7,17,31,48,67,83,98,112,130,153,176,196,214,233,258,
+291,329,367,399,425,446,463,479,497,518,547,581,617,649,676,701,730,763,796,823,844,
+864,890,922,956,984,1005,1022,1043,1066,1083,1089,1086,1090,1118,1176,1255,1338,1415,1485,1556,1641,
+1743,1863,1996,2132,2257,2346,2377,2344,2258,2149,2042,1949,1869,1792,1719,1655,1610,1582,1564,1547,1530,
+1515,1503,1489,1465,1427,1379,1335,1301,1276,1252,1225,1197,1176,1168,1170,1176,1180,1185,1195,1207,1216,
+1211,1191,1163,1138,1123,1114,1103,1085,1063,1042,1026,1008,979,929,858,771,680,593,519,463,430,
+414,404,384,343,279,204,132,76,39,17,2,-10,-19,-25,-28,-33,-42,-57,-78,-102,-129,
+-157,-186,-214,-239,-260,-278,-294,-308,-321,-331,-340,-349,-359,-371,-383,-393,-400,-403,-404,-402,-399,
+-394,-389,-382,-375,-367,-360,-354,-352,-352,-352,-348,-341,-334,-334,-343,-363,-386,-408,-423,-432,-439,
+-447,-457,-468,-478,-486,-490,-491,-486,-476,-461,-443,-426,-413,-404,-396,-387,-373,-356,-337,-320,-306,
+-296,-286,-275,-262,-247,-229,-212,-194,-174,-149,-119,-81,-37,9,55,97,136,173,209,246,283,
+320,358,399,446,498,552,606,657,703,747,791,835,877,917,955,991,1028,1067,1107,1146,1184,
+1220,1255,1290,1325,1360,1393,1426,1459,1492,1526,1561,1595,1630,1666,1704,1741,1777,1812,1847,1883,1921,
+1960,1997,2030,2060,2089,2120,2154,2188,2222,2252,2280,2306,2333,2360,2387,2415,2441,2464,2484,2503,2523,
+2546,2572,2598,2620,2637,2649,2659,2671,2681,2688,2689,2684,2675,2667,2660,2653,2646,2638,2634,2633,2636,
+2638,2636,2628,2615,2601,2590,2581,2573,2564,2552,2537,2519,2502,2488,2479,2473,2470,2463,2450,2431,2407,
+2384,2364,2349,2336,2324,2312,2304,2302,2305,2312,2317,2317,2310,2298,2284,2271,2263,2260,2261,2264,2267,
+2268,2263,2252,2247,2218,2188,2164,2150,2144,2142,2139,2132,2122,2114,2114,2123,2137,2151,2163,2174,2186,
+2201,2216,2228,2238,2249,2270,2304,2344,2380,2400,2401,2391,2385,2393,2415,2445,2472,2490,2500,2506,2513,
+2523,2536,2551,2566,2583,2602,2621,2639,2655,2667,2681,2697,2716,2734,2746,2749,2747,2747,2759,2784,2817,
+2850,2873,2886,2896,2911,2936,2971,3009,3044,3074,3098,3119,3138,3156,3172,3186,3200,3213,3224,3232,3238,
+3244,3251,3262,3274,3286,3295,3300,3303,3305,3307,3308,3307,3302,3295,3288,3284,3284,3286,3288,3290,3292,
+3294,3297,3301,3308,3319,3332,3345,3352,3349,3339,3332,3337,3360,3396,3432,3462,3486,3512,3549,3598,3654,
+3712,3769,3828,3891,3950,3996,4028,4056,4101,4174,4268,4359,4424,4454,4464,4477,4505,4545,4579,4595,4594,
+4587,4583,4582,4578,4567,4555,4552,4558,4567,4564,4547,4525,4514,4523,4545,4560,4556,4533,4507,4493,4499,
+4522,4558,4601,4647,4684,4695,4663,4587,4488,4406,4370,4391,4451,4524,4587,4632,4664,4690,4710,4721,4720,
+4711,4695,4673,4637,4584,4520,4465,4447,4488,4592,4741,4903,5045,5144,5191,5191,5153,5091,5017,4939,4864,
+4796,4730,4662,4589,4513,4442,4386,4349,4330,4320,4310,4295,4278,4265,4257,4251,4240,4220,4193,4164,4138,
+4115,4090,4059,4021,3983,3948,3916,3883,3845,3802,3758,3716,3679,3642,3604,3565,3529,3501,3480,3463,3445,
+3424,3403,3385,3369,3348,3320,3285,3251,3230,3227,3240,3259,3278,3291,3300,3311,3325,3346,3370,3397,3419,
+3429,3422,3399,3365,3335,3315,3309,3307,3301,3287,3267,3247,3231,3217,3201,3180,3156,3134,3115,3097,3074,
+3045,3014,2985,2963,2947,2933,2917,2899,2883,2869,2855,2837,2812,2779,2745,2712,2683,2656,2629,2600,2571,
+2541,2508,2473,2435,2397,2361,2327,2296,2267,2239,2213,2187,2159,2129,2095,2060,2028,2001,1977,1951,1921,
+1888,1853,1821,1793,1766,1738,1707,1673,1637,1597,1556,1515,1475,1437,1401,1363,1322,1280,1239,1200,1165,
+1130,1093,1053,1012,971,933,896,859,820,781,741,700,659,617,576,536,495,451,406,360,317,
+279,243,205,162,116,70,28,-8,-45,-86,-131,-178,-222,-261,-300,-342,-388,-436,-482,-522,-559,
+-593,-630,-668,-708,-747,-786,-827,-871,-918,-966,-1013,-1056,-1095,-1132,-1168,-1207,-1246,-1286,-1324,-1359,-1391,
+-1422,-1453,-1483,-1514,-1544,-1575,-1607,-1640,-1674,-1707,-1738,-1767,-1796,-1828,-1864,-1903,-1942,-1980,-2016,-2050,-2079,
+-2102,-2122,-2140,-2161,-2185,-2212,-2239,-2264,-2286,-2307,-2329,-2351,-2373,-2392,-2411,-2430,-2451,-2473,-2493,-2511,-2526,
+-2538,-2550,-2562,-2572,-2581,-2588,-2594,-2598,-2601,-2601,-2600,-2601,-2607,-2617,-2627,-2632,-2632,-2627,-2624,-2626,-2632,
+-2638,-2642,-2642,-2640,-2638,-2639,-2642,-2646,-2647,-2646,-2642,-2638,-2634,-2630,-2625,-2618,-2610,-2601,-2594,-2590,-2588,
+-2584,-2579,-2572,-2564,-2555,-2546,-2536,-2526,-2517,-2510,-2504,-2496,-2484,-2468,-2452,-2437,-2425,-2413,-2398,-2380,-2361,
+-2344,-2329,-2315,-2299,-2281,-2263,-2248,-2233,-2216,-2195,-2170,-2144,-2122,-2104,-2087,-2067,-2044,-2018,-1993,-1972,-1952,
+-1932,-1911,-1888,-1867,-1848,-1832,-1818,-1801,-1781,-1758,-1736,-1721,-1719,-1730,-1748,-1764,-1768,-1758,-1741,-1723,-1710,
+-1702,-1693,-1678,-1658,-1638,-1621,-1612,-1607,-1603,-1595,-1582,-1566,-1550,-1540,-1535,-1534,-1528,-1511,-1479,-1437,-1396,
+-1368,-1359,-1364,-1374,-1380,-1381,-1377,-1374,-1372,-1370,-1365,-1356,-1348,-1345,-1346,-1350,-1353,-1348,-1336,-1319,-1301,
+-1285,-1273,-1262,-1250,-1232,-1209,-1187,-1171,-1161,-1157,-1150,-1138,-1122,-1108,-1102,-1103,-1103,-1094,-1074,-1051,-1036,
+-1036,-1048,-1058,-1056,-1038,-1011,-985,-966,-950,-931,-905,-876,-849,-827,-810,-793,-774,-755,-737,-718,-691,
+-650,-597,-542,-499,-477,-472,-473,-468,-456,-446,-453,-485,-530,-559,-533,-427,-246,-26,174,309,360,
+349,322,319,352,408,462,499,521,542,565,583,577,531,450,352,259,185,134,100,79,66,
+61,59,57,53,49,48,52,60,70,80,87,90,88,78,62,43,25,14,8,4,-3,
+-16,-35,-55,-76,-94,-110,-126,-145,-167,-192,-217,-241,-261,-280,-300,-323,-347,-368,-379,-381,-378,
+-376,-380,-387,-395,-401,-408,-418,-433,-452,-473,-492,-511,-532,-556,-582,-607,-630,-653,-679,-710,-743,
+-771,-793,-806,-817,-827,-838,-852,-866,-883,-902,-921,-936,-944,-947,-951,-962,-980,-1002,-1018,-1025,-1023,
+-1021,-1023,-1030,-1039,-1044,-1046,-1048,-1052,-1058,-1063,-1064,-1061,-1055,-1050,-1045,-1041,-1038,-1036,-1036,-1036,-1033,
+-1025,-1014,-1004,-998,-995,-990,-982,-975,-974,-984,-997,-1003,-994,-975,-957,-953,-963,-974,-973,-955,-930,
+-918,-929,-956,-982,-992,-983,-967,-962,-977,-1010,-1049,-1082,-1104,-1118,-1129,-1138,-1148,-1155,-1161,-1167,-1175,
+-1186,-1200,-1213,-1225,-1237,-1249,-1260,-1268,-1273,-1276,-1278,-1284,-1296,-1315,-1337,-1357,-1372,-1377,-1373,-1364,-1355,
+-1350,-1353,-1367,-1388,-1412,-1436,-1457,-1474,-1490,-1505,-1518,-1529,-1535,-1538,-1541,-1546,-1555,-1564,-1572,-1574,-1573,
+-1570,-1569,-1570,-1572,-1573,-1572,-1572,-1579,-1595,-1616,-1636,-1644,-1638,-1622,-1606,-1599,-1604,-1614,-1618,-1609,-1588,
+-1564,-1546,-1538,-1536,-1534,-1528,-1516,-1503,-1494,-1489,-1489,-1491,-1494,-1495,-1497,-1496,-1492,-1483,-1470,-1454,-1437,
+-1420,-1405,-1391,-1378,-1367,-1359,-1352,-1345,-1336,-1324,-1311,-1298,-1288,-1279,-1270,-1261,-1252,-1244,-1236,-1228,-1217,
+-1204,-1188,-1174,-1163,-1156,-1150,-1142,-1131,-1118,-1105,-1095,-1089,-1085,-1083,-1081,-1079,-1076,-1073,-1069,-1064,-1059,
+-1054,-1050,-1046,-1044,-1042,-1041,-1038,-1034,-1028,-1022,-1017,-1013,-1010,-1006,-1000,-993,-986,-981,-979,-978,-976,
+-972,-965,-958,-954,-952,-953,-955,-956,-956,-957,-959,-961,-963,-963,-961,-958,-956,-953,-952,-952,-952,
+-953,-953,-951,-947,-940,-934,-930,-928,-926,-921,-912,-900,-891,-886,-885,-884,-882,-876,-869,-863,-858,
+-851,-841,-828,-815,-803,-794,-787,-778,-766,-750,-731,-711,-690,-668,-645,-622,-601,-583,-572,-566,-565,
+-567,-566,-561,-554,-546,-539,-533,-523,-505,-480,-450,-424,-406,-396,-390,-384,-373,-360,-346,-337,-331,
+-324,-314,-299,-281,-263,-249,-239,-229,-214,-195,-172,-150,-131,-115,-96,-74,-48,-24,-6,5,14,
+26,43,62,82,101,121,142,166,187,205,220,237,260,291,326,360,389,413,433,450,468,
+487,511,541,576,610,639,662,682,705,731,759,783,803,825,853,888,923,953,975,996,1023,
+1053,1078,1090,1090,1095,1125,1191,1288,1395,1494,1573,1634,1691,1758,1851,1977,2131,2291,2417,2474,2445,
+2344,2207,2072,1961,1875,1800,1728,1662,1608,1572,1549,1531,1513,1493,1475,1458,1437,1408,1373,1336,1301,
+1269,1236,1202,1173,1154,1149,1156,1165,1172,1177,1183,1192,1198,1194,1179,1156,1134,1120,1112,1103,1088,
+1067,1045,1026,1007,981,937,872,789,699,613,542,493,465,451,437,409,361,295,224,159,108,
+69,40,16,-2,-15,-24,-30,-39,-52,-70,-90,-112,-137,-164,-192,-219,-241,-261,-278,-297,-316,
+-332,-344,-352,-358,-366,-377,-390,-402,-412,-417,-417,-413,-406,-397,-388,-379,-371,-365,-360,-357,-356,
+-354,-349,-341,-330,-322,-322,-334,-354,-378,-399,-414,-423,-431,-439,-448,-457,-464,-471,-475,-477,-473,
+-460,-441,-418,-398,-384,-377,-372,-366,-355,-340,-325,-311,-298,-286,-274,-259,-243,-227,-211,-194,-176,
+-155,-130,-99,-63,-23,19,62,104,144,183,222,259,294,327,362,403,451,505,560,611,658,
+703,748,795,843,889,929,966,1000,1036,1074,1112,1150,1186,1222,1257,1292,1327,1359,1391,1423,1456,
+1490,1523,1556,1588,1622,1658,1695,1733,1770,1807,1846,1886,1927,1964,1998,2028,2056,2085,2118,2153,2187,
+2218,2247,2274,2301,2329,2358,2388,2417,2444,2469,2489,2506,2523,2544,2570,2599,2626,2647,2662,2674,2684,
+2693,2700,2704,2702,2696,2687,2676,2664,2654,2647,2646,2650,2657,2662,2659,2648,2630,2609,2588,2569,2551,
+2533,2516,2500,2485,2473,2464,2460,2458,2457,2452,2442,2426,2407,2388,2371,2358,2346,2336,2328,2323,2323,
+2328,2333,2335,2330,2319,2302,2284,2268,2260,2259,2265,2275,2282,2281,2270,2247,2228,2204,2185,2173,2170,
+2171,2168,2158,2140,2121,2111,2114,2129,2147,2161,2167,2171,2177,2190,2207,2223,2239,2260,2293,2340,2391,
+2433,2454,2454,2443,2435,2438,2451,2464,2470,2468,2462,2460,2465,2477,2493,2511,2529,2547,2565,2582,2599,
+2617,2638,2663,2689,2711,2725,2730,2730,2732,2740,2760,2788,2820,2847,2866,2877,2888,2906,2935,2974,3015,
+3052,3081,3101,3115,3127,3139,3152,3165,3177,3188,3198,3207,3214,3223,3234,3248,3264,3277,3285,3288,3288,
+3288,3290,3294,3295,3292,3285,3278,3275,3278,3283,3287,3288,3288,3290,3296,3306,3318,3329,3337,3343,3345,
+3343,3340,3341,3353,3381,3418,3458,3492,3520,3551,3592,3647,3715,3786,3856,3918,3969,4006,4032,4055,4092,
+4156,4245,4343,4424,4470,4485,4487,4498,4526,4560,4586,4595,4591,4583,4577,4570,4561,4555,4561,4582,4607,
+4615,4593,4548,4506,4495,4522,4565,4589,4575,4526,4469,4430,4424,4449,4498,4564,4640,4709,4742,4715,4626,
+4503,4394,4341,4356,4420,4500,4568,4617,4655,4687,4714,4729,4727,4711,4688,4660,4622,4571,4512,4466,4459,
+4514,4631,4787,4946,5069,5136,5149,5126,5089,5057,5035,5020,5001,4969,4915,4838,4741,4631,4523,4432,4369,
+4334,4319,4310,4299,4284,4268,4256,4248,4238,4221,4198,4173,4150,4128,4103,4070,4031,3991,3955,3923,3893,
+3857,3817,3775,3735,3700,3666,3630,3595,3564,3540,3521,3501,3477,3451,3430,3417,3410,3398,3372,3334,3292,
+3262,3253,3264,3287,3312,3334,3354,3376,3402,3432,3464,3494,3517,3526,3518,3490,3453,3415,3386,3368,3354,
+3339,3318,3296,3277,3262,3249,3233,3213,3192,3173,3154,3133,3106,3074,3044,3021,3008,2999,2989,2973,2953,
+2932,2912,2890,2865,2834,2801,2770,2743,2719,2693,2665,2633,2601,2568,2535,2501,2465,2430,2397,2367,2338,
+2309,2279,2249,2220,2191,2158,2124,2089,2058,2030,2005,1978,1948,1916,1884,1854,1826,1799,1770,1738,1703,
+1666,1628,1588,1549,1511,1476,1440,1403,1363,1321,1281,1243,1207,1168,1127,1084,1042,1003,967,931,892,
+851,810,771,731,690,647,604,563,524,485,446,404,362,321,283,243,200,154,107,65,28,
+-5,-42,-83,-127,-170,-213,-254,-297,-343,-390,-434,-473,-508,-542,-578,-618,-660,-702,-745,-788,-832,
+-879,-925,-968,-1007,-1043,-1078,-1115,-1153,-1194,-1236,-1275,-1312,-1346,-1378,-1408,-1438,-1468,-1498,-1530,-1563,-1598,
+-1631,-1662,-1690,-1717,-1747,-1781,-1819,-1859,-1897,-1935,-1970,-2004,-2033,-2058,-2078,-2096,-2117,-2141,-2168,-2193,-2215,
+-2234,-2254,-2278,-2304,-2329,-2351,-2369,-2386,-2404,-2426,-2448,-2469,-2486,-2500,-2512,-2524,-2535,-2545,-2553,-2559,-2562,
+-2565,-2565,-2567,-2570,-2577,-2587,-2596,-2602,-2603,-2600,-2599,-2601,-2606,-2612,-2616,-2616,-2614,-2614,-2617,-2623,-2628,
+-2629,-2627,-2622,-2618,-2615,-2612,-2606,-2598,-2587,-2577,-2572,-2570,-2570,-2568,-2561,-2552,-2542,-2533,-2524,-2515,-2506,
+-2499,-2495,-2492,-2487,-2474,-2456,-2437,-2422,-2412,-2404,-2391,-2372,-2350,-2330,-2314,-2302,-2288,-2270,-2250,-2231,-2215,
+-2200,-2182,-2159,-2134,-2112,-2093,-2077,-2060,-2037,-2011,-1985,-1963,-1944,-1927,-1909,-1888,-1867,-1848,-1832,-1818,-1801,
+-1779,-1753,-1730,-1717,-1717,-1731,-1751,-1767,-1771,-1762,-1744,-1727,-1714,-1706,-1697,-1681,-1658,-1634,-1617,-1610,-1612,
+-1616,-1613,-1599,-1576,-1556,-1547,-1554,-1569,-1579,-1568,-1532,-1478,-1423,-1381,-1360,-1354,-1353,-1351,-1348,-1348,-1356,
+-1367,-1376,-1378,-1372,-1364,-1362,-1367,-1378,-1386,-1386,-1376,-1358,-1337,-1317,-1300,-1284,-1269,-1252,-1235,-1221,-1210,
+-1202,-1195,-1185,-1171,-1156,-1145,-1140,-1140,-1139,-1131,-1117,-1103,-1098,-1102,-1111,-1114,-1103,-1081,-1056,-1034,-1018,
+-1000,-976,-946,-917,-896,-884,-877,-866,-845,-817,-786,-752,-713,-664,-610,-559,-524,-507,-502,-496,-482,
+-466,-463,-486,-529,-566,-560,-485,-338,-148,35,170,237,248,240,245,280,335,384,412,418,416,
+422,436,445,428,377,298,211,134,78,40,16,-1,-14,-24,-31,-36,-41,-43,-42,-36,-29,
+-23,-19,-16,-15,-17,-26,-43,-64,-83,-95,-98,-97,-100,-109,-127,-148,-171,-190,-207,-224,-244,
+-270,-302,-336,-367,-392,-411,-426,-442,-459,-475,-486,-492,-496,-501,-510,-519,-527,-533,-539,-549,-564,
+-581,-596,-607,-615,-627,-645,-668,-693,-716,-739,-763,-789,-816,-840,-860,-875,-890,-904,-918,-929,-939,
+-950,-965,-984,-1001,-1013,-1016,-1017,-1021,-1031,-1047,-1061,-1069,-1071,-1070,-1071,-1074,-1077,-1077,-1076,-1077,-1083,
+-1092,-1100,-1105,-1105,-1104,-1102,-1100,-1096,-1090,-1086,-1084,-1083,-1082,-1077,-1069,-1063,-1061,-1062,-1059,-1050,-1035,
+-1023,-1021,-1029,-1042,-1050,-1053,-1054,-1057,-1060,-1055,-1033,-996,-958,-939,-948,-978,-1009,-1023,-1015,-998,-990,
+-1003,-1034,-1072,-1104,-1125,-1138,-1150,-1164,-1179,-1191,-1197,-1199,-1201,-1206,-1217,-1230,-1245,-1259,-1272,-1285,-1295,
+-1301,-1303,-1304,-1307,-1317,-1334,-1355,-1375,-1388,-1393,-1392,-1388,-1383,-1378,-1377,-1381,-1393,-1412,-1435,-1459,-1480,
+-1498,-1514,-1528,-1540,-1548,-1553,-1557,-1563,-1572,-1583,-1592,-1596,-1596,-1593,-1593,-1593,-1593,-1589,-1582,-1578,-1583,
+-1601,-1626,-1649,-1658,-1652,-1635,-1619,-1613,-1615,-1620,-1619,-1607,-1589,-1572,-1562,-1561,-1564,-1563,-1555,-1540,-1522,
+-1506,-1494,-1487,-1484,-1484,-1485,-1487,-1489,-1487,-1481,-1470,-1455,-1440,-1424,-1409,-1395,-1382,-1372,-1364,-1357,-1348,
+-1336,-1322,-1308,-1297,-1287,-1278,-1268,-1256,-1245,-1234,-1227,-1220,-1212,-1201,-1189,-1178,-1171,-1167,-1162,-1154,-1144,
+-1132,-1121,-1113,-1107,-1101,-1094,-1087,-1081,-1075,-1071,-1065,-1059,-1052,-1046,-1041,-1039,-1038,-1037,-1035,-1031,-1026,
+-1019,-1013,-1008,-1005,-1002,-997,-990,-981,-972,-966,-965,-966,-967,-965,-958,-951,-945,-943,-945,-948,-951,
+-952,-953,-955,-957,-958,-959,-958,-957,-958,-959,-960,-960,-959,-958,-956,-953,-949,-942,-936,-931,-928,
+-925,-921,-913,-902,-892,-886,-884,-884,-883,-880,-875,-872,-868,-864,-856,-845,-830,-817,-805,-794,-782,
+-767,-748,-728,-707,-689,-674,-659,-645,-629,-615,-601,-590,-580,-571,-563,-555,-550,-548,-547,-544,-535,
+-518,-495,-470,-447,-429,-416,-407,-398,-388,-377,-365,-354,-343,-331,-317,-301,-283,-266,-250,-236,-221,
+-203,-183,-162,-144,-130,-118,-101,-79,-51,-24,-4,8,17,27,42,62,84,105,127,149,172,
+192,208,222,237,258,285,316,345,370,392,413,434,456,479,503,530,559,587,613,634,655,
+678,704,730,753,774,799,830,866,901,929,951,975,1005,1037,1060,1069,1067,1075,1113,1191,1299,
+1415,1517,1596,1655,1707,1768,1852,1969,2115,2273,2406,2478,2466,2376,2243,2104,1985,1890,1807,1727,1650,
+1585,1540,1514,1497,1481,1461,1441,1422,1404,1383,1357,1327,1295,1261,1226,1190,1160,1142,1139,1147,1158,
+1165,1167,1168,1171,1176,1177,1172,1159,1144,1130,1119,1108,1095,1077,1059,1041,1023,997,956,894,815,
+727,643,575,530,504,487,464,428,376,315,254,198,148,103,63,29,4,-11,-20,-29,-42,
+-61,-83,-104,-124,-145,-167,-191,-214,-234,-252,-271,-292,-314,-332,-346,-354,-361,-368,-379,-392,-404,
+-414,-420,-422,-420,-413,-405,-395,-386,-379,-374,-371,-368,-366,-361,-353,-340,-327,-316,-314,-322,-338,
+-356,-372,-385,-395,-406,-419,-430,-439,-445,-448,-450,-448,-441,-425,-403,-378,-358,-346,-341,-339,-336,
+-329,-320,-310,-300,-289,-275,-258,-240,-222,-206,-190,-172,-151,-126,-99,-68,-34,2,41,80,121,
+161,201,240,274,305,334,367,407,457,512,567,618,662,705,749,797,846,893,935,973,1011,
+1048,1086,1122,1156,1189,1222,1257,1292,1327,1361,1393,1424,1457,1490,1522,1553,1584,1617,1652,1690,1728,
+1767,1805,1845,1887,1928,1965,1998,2028,2057,2088,2121,2156,2188,2218,2246,2273,2300,2329,2358,2388,2417,
+2446,2473,2496,2516,2534,2553,2576,2602,2629,2653,2673,2688,2699,2707,2713,2717,2716,2713,2706,2696,2686,
+2678,2674,2675,2679,2683,2683,2676,2662,2642,2618,2592,2564,2536,2513,2498,2491,2490,2492,2493,2489,2482,
+2474,2464,2454,2442,2429,2416,2402,2389,2377,2367,2359,2352,2347,2340,2333,2324,2313,2301,2288,2276,2267,
+2262,2263,2268,2272,2273,2266,2251,2228,2234,2221,2212,2206,2202,2197,2188,2172,2151,2133,2124,2128,2141,
+2157,2168,2173,2177,2188,2205,2225,2242,2257,2277,2309,2354,2405,2446,2471,2480,2485,2493,2506,2515,2510,
+2490,2464,2444,2438,2446,2461,2477,2493,2510,2528,2547,2563,2575,2589,2608,2634,2663,2687,2701,2705,2704,
+2706,2718,2741,2771,2802,2830,2853,2870,2887,2908,2936,2971,3010,3046,3073,3091,3101,3109,3116,3126,3138,
+3151,3164,3176,3188,3199,3209,3221,3234,3248,3262,3271,3274,3274,3274,3276,3279,3280,3278,3272,3269,3271,
+3279,3288,3293,3292,3289,3291,3301,3317,3332,3341,3344,3345,3346,3350,3356,3365,3381,3406,3441,3481,3522,
+3559,3597,3643,3702,3775,3855,3930,3991,4031,4051,4062,4081,4124,4198,4292,4384,4452,4486,4496,4501,4515,
+4541,4567,4582,4583,4575,4563,4550,4536,4530,4542,4582,4641,4688,4692,4639,4552,4479,4459,4496,4558,4595,
+4581,4521,4447,4395,4376,4389,4423,4475,4538,4602,4640,4626,4557,4455,4365,4326,4347,4409,4483,4545,4591,
+4630,4668,4700,4719,4719,4702,4677,4647,4611,4564,4510,4465,4455,4498,4595,4723,4850,4943,4989,4993,4980,
+4975,4992,5028,5066,5087,5076,5029,4948,4841,4719,4596,4487,4403,4351,4325,4314,4305,4292,4277,4263,4252,
+4241,4226,4206,4183,4160,4137,4111,4079,4040,4001,3966,3937,3909,3877,3839,3798,3758,3722,3689,3656,3626,
+3600,3578,3557,3532,3503,3473,3452,3445,3445,3439,3418,3380,3337,3304,3293,3302,3325,3355,3386,3420,3457,
+3495,3530,3560,3584,3600,3606,3598,3576,3541,3503,3467,3436,3410,3386,3363,3342,3326,3311,3295,3276,3254,
+3234,3216,3197,3172,3140,3105,3076,3057,3048,3042,3032,3016,2995,2973,2950,2923,2891,2855,2822,2794,2771,
+2750,2723,2691,2655,2621,2589,2558,2527,2494,2463,2434,2407,2379,2348,2315,2281,2250,2220,2191,2159,2127,
+2095,2065,2036,2006,1973,1939,1908,1879,1853,1826,1797,1764,1729,1693,1656,1618,1579,1542,1506,1472,1436,
+1399,1360,1322,1285,1246,1205,1161,1117,1076,1039,1003,965,923,879,837,799,761,721,678,632,589,
+551,516,480,441,398,356,316,277,237,193,148,106,69,36,2,-34,-76,-121,-166,-209,-251,
+-295,-338,-380,-419,-455,-490,-527,-567,-610,-655,-701,-746,-790,-834,-877,-917,-955,-992,-1028,-1064,-1103,
+-1144,-1184,-1223,-1260,-1294,-1327,-1358,-1389,-1420,-1452,-1486,-1521,-1555,-1588,-1617,-1645,-1673,-1705,-1742,-1781,-1820,
+-1856,-1891,-1924,-1955,-1985,-2009,-2030,-2048,-2069,-2094,-2120,-2145,-2167,-2186,-2205,-2229,-2257,-2284,-2308,-2327,-2345,
+-2364,-2386,-2409,-2430,-2446,-2459,-2472,-2485,-2499,-2511,-2521,-2527,-2530,-2532,-2533,-2535,-2540,-2547,-2557,-2566,-2573,
+-2576,-2576,-2576,-2578,-2582,-2588,-2591,-2593,-2593,-2595,-2599,-2604,-2608,-2609,-2605,-2600,-2596,-2593,-2591,-2586,-2578,
+-2568,-2560,-2556,-2556,-2556,-2552,-2543,-2532,-2522,-2514,-2507,-2499,-2490,-2483,-2481,-2481,-2477,-2466,-2446,-2423,-2405,
+-2394,-2387,-2375,-2357,-2333,-2312,-2297,-2286,-2275,-2258,-2237,-2215,-2197,-2183,-2168,-2148,-2125,-2101,-2081,-2065,-2048,
+-2028,-2003,-1978,-1955,-1938,-1922,-1905,-1886,-1866,-1846,-1830,-1813,-1794,-1771,-1744,-1721,-1708,-1710,-1725,-1747,-1766,
+-1773,-1767,-1751,-1733,-1719,-1707,-1696,-1679,-1656,-1633,-1618,-1615,-1623,-1634,-1634,-1619,-1593,-1570,-1561,-1572,-1595,
+-1612,-1605,-1569,-1512,-1452,-1403,-1370,-1349,-1330,-1312,-1299,-1296,-1306,-1325,-1343,-1353,-1356,-1358,-1365,-1379,-1398,
+-1412,-1417,-1411,-1397,-1378,-1358,-1338,-1317,-1298,-1281,-1267,-1255,-1246,-1236,-1226,-1214,-1203,-1193,-1188,-1186,-1185,
+-1182,-1175,-1167,-1162,-1160,-1161,-1160,-1151,-1133,-1111,-1089,-1072,-1057,-1039,-1016,-991,-971,-960,-953,-943,-923,
+-890,-849,-806,-763,-719,-672,-626,-589,-566,-556,-551,-542,-528,-521,-532,-564,-599,-608,-562,-452,-297,
+-137,-10,62,87,93,112,160,229,296,337,347,334,317,306,300,285,251,194,127,63,14,
+-20,-45,-66,-83,-97,-106,-113,-117,-120,-119,-115,-108,-103,-101,-104,-107,-110,-115,-125,-143,-165,
+-185,-197,-200,-199,-199,-206,-220,-239,-258,-276,-293,-311,-332,-360,-394,-430,-465,-496,-520,-539,-555,
+-571,-586,-597,-606,-614,-625,-637,-650,-661,-669,-677,-686,-699,-712,-722,-728,-733,-740,-752,-769,-787,
+-806,-824,-844,-866,-889,-910,-928,-944,-961,-979,-996,-1008,-1015,-1020,-1028,-1042,-1059,-1073,-1079,-1079,-1079,
+-1082,-1090,-1100,-1110,-1117,-1122,-1124,-1123,-1119,-1112,-1107,-1107,-1114,-1125,-1135,-1142,-1146,-1148,-1150,-1150,-1146,
+-1139,-1133,-1131,-1133,-1136,-1135,-1129,-1122,-1119,-1118,-1116,-1108,-1095,-1082,-1076,-1078,-1087,-1095,-1099,-1103,-1108,
+-1112,-1108,-1089,-1055,-1021,-1001,-1006,-1030,-1057,-1070,-1065,-1049,-1040,-1048,-1072,-1102,-1126,-1140,-1147,-1158,-1175,
+-1198,-1218,-1231,-1236,-1237,-1241,-1248,-1260,-1272,-1284,-1295,-1307,-1318,-1327,-1332,-1334,-1336,-1343,-1356,-1372,-1386,
+-1394,-1399,-1402,-1406,-1411,-1413,-1413,-1412,-1415,-1426,-1445,-1467,-1487,-1505,-1520,-1534,-1549,-1562,-1571,-1578,-1585,
+-1594,-1606,-1617,-1624,-1625,-1623,-1622,-1621,-1619,-1613,-1604,-1597,-1599,-1614,-1636,-1655,-1663,-1657,-1643,-1630,-1623,
+-1621,-1619,-1613,-1602,-1591,-1584,-1585,-1590,-1594,-1590,-1579,-1563,-1544,-1527,-1512,-1500,-1490,-1483,-1478,-1476,-1474,
+-1472,-1467,-1461,-1453,-1443,-1431,-1418,-1405,-1393,-1383,-1373,-1363,-1351,-1335,-1319,-1305,-1294,-1286,-1278,-1267,-1252,
+-1237,-1223,-1213,-1206,-1200,-1192,-1184,-1177,-1173,-1171,-1167,-1161,-1152,-1143,-1136,-1132,-1128,-1121,-1112,-1101,-1092,
+-1084,-1078,-1071,-1062,-1053,-1046,-1041,-1038,-1035,-1031,-1026,-1020,-1014,-1008,-1003,-998,-995,-992,-988,-981,-973,
+-964,-958,-955,-956,-957,-955,-950,-943,-938,-938,-942,-946,-950,-951,-951,-952,-953,-954,-954,-954,-955,
+-956,-958,-960,-960,-959,-959,-959,-958,-956,-951,-944,-936,-931,-927,-923,-916,-908,-899,-892,-889,-888,
+-887,-885,-881,-878,-874,-869,-861,-850,-836,-823,-811,-800,-787,-771,-751,-730,-712,-698,-689,-682,-674,
+-664,-652,-637,-620,-602,-585,-571,-561,-556,-555,-556,-553,-546,-533,-516,-498,-479,-461,-444,-429,-418,
+-408,-399,-390,-377,-362,-346,-328,-310,-292,-273,-254,-236,-217,-197,-175,-155,-139,-126,-114,-98,-75,
+-47,-20,0,12,19,28,43,61,80,99,117,136,157,176,194,210,228,250,275,302,327,
+350,373,397,424,451,474,495,515,536,558,582,608,635,664,693,719,741,762,787,817,850,
+879,903,926,951,982,1010,1024,1022,1016,1028,1077,1164,1271,1374,1459,1529,1597,1676,1766,1865,1969,
+2076,2185,2282,2345,2353,2301,2205,2091,1980,1882,1792,1705,1623,1556,1508,1481,1463,1447,1428,1407,1387,
+1369,1350,1326,1298,1268,1239,1210,1182,1158,1143,1140,1147,1157,1163,1161,1156,1153,1157,1165,1171,1169,
+1159,1145,1131,1120,1110,1099,1086,1070,1049,1019,975,914,836,751,673,612,571,545,523,493,451,
+399,346,294,244,192,137,83,37,7,-8,-16,-25,-41,-64,-88,-110,-129,-145,-163,-183,-204,
+-224,-244,-265,-286,-307,-325,-339,-350,-360,-371,-383,-395,-404,-411,-415,-417,-416,-413,-407,-400,-394,
+-389,-386,-383,-380,-376,-369,-358,-343,-327,-314,-308,-309,-317,-327,-336,-345,-355,-369,-385,-400,-410,
+-415,-416,-414,-410,-401,-384,-362,-339,-321,-311,-307,-305,-302,-298,-292,-287,-282,-273,-260,-243,-224,
+-207,-190,-172,-150,-125,-96,-65,-33,1,37,76,116,155,194,232,268,301,330,359,390,430,
+478,532,585,632,675,715,757,802,847,891,932,972,1012,1054,1094,1130,1162,1192,1225,1260,1298,
+1334,1368,1399,1429,1459,1489,1519,1549,1579,1613,1650,1689,1729,1768,1806,1845,1885,1925,1963,1998,2030,
+2062,2095,2128,2162,2193,2221,2247,2273,2299,2326,2353,2381,2409,2439,2468,2496,2520,2542,2561,2579,2598,
+2619,2643,2666,2688,2706,2719,2727,2731,2732,2732,2730,2725,2720,2714,2711,2709,2707,2702,2693,2680,2665,
+2650,2633,2612,2586,2561,2543,2536,2542,2555,2565,2565,2553,2531,2507,2486,2471,2461,2451,2440,2425,2411,
+2398,2389,2383,2377,2368,2354,2338,2321,2307,2297,2291,2286,2283,2280,2278,2277,2274,2268,2259,2247,2234,
+2259,2252,2242,2229,2215,2201,2188,2174,2159,2148,2143,2148,2159,2171,2180,2186,2195,2211,2233,2254,2269,
+2279,2292,2317,2355,2400,2440,2471,2496,2522,2552,2577,2582,2560,2519,2478,2455,2457,2474,2493,2505,2512,
+2521,2537,2557,2573,2582,2586,2594,2611,2636,2660,2676,2681,2681,2684,2696,2719,2750,2783,2815,2843,2866,
+2886,2906,2931,2962,2998,3033,3061,3078,3088,3093,3100,3110,3123,3137,3151,3166,3180,3193,3204,3213,3223,
+3235,3247,3258,3264,3265,3265,3264,3265,3264,3261,3257,3257,3265,3279,3292,3299,3297,3292,3294,3305,3323,
+3339,3348,3350,3350,3356,3367,3381,3394,3408,3430,3463,3506,3554,3601,3646,3697,3759,3833,3914,3986,4039,
+4067,4076,4082,4104,4153,4228,4314,4391,4445,4475,4489,4503,4523,4544,4559,4562,4555,4542,4526,4506,4485,
+4479,4505,4570,4653,4714,4711,4636,4522,4428,4400,4439,4508,4554,4546,4494,4431,4386,4368,4367,4371,4378,
+4395,4421,4444,4445,4416,4370,4333,4329,4363,4418,4474,4520,4556,4593,4631,4666,4687,4689,4676,4657,4633,
+4603,4562,4510,4462,4437,4450,4504,4585,4670,4736,4775,4794,4810,4840,4891,4953,5006,5032,5019,4971,4896,
+4806,4707,4605,4508,4427,4370,4339,4325,4317,4307,4292,4277,4262,4249,4232,4212,4188,4164,4141,4116,4086,
+4051,4016,3985,3958,3931,3901,3864,3823,3782,3745,3711,3682,3654,3630,3607,3582,3555,3525,3499,3484,3480,
+3480,3473,3450,3413,3375,3349,3342,3354,3379,3411,3450,3496,3546,3593,3631,3656,3669,3676,3678,3673,3659,
+3634,3601,3564,3529,3498,3472,3452,3436,3421,3403,3379,3351,3322,3297,3276,3253,3224,3187,3149,3117,3095,
+3082,3069,3053,3032,3010,2991,2970,2944,2912,2875,2843,2817,2796,2773,2742,2706,2668,2635,2607,2580,2552,
+2523,2495,2470,2446,2419,2386,2348,2311,2278,2251,2225,2197,2166,2134,2103,2072,2040,2005,1969,1935,1904,
+1876,1848,1818,1786,1752,1718,1683,1647,1609,1571,1535,1500,1466,1431,1394,1357,1319,1280,1239,1195,1153,
+1114,1078,1041,1001,956,910,867,829,794,755,712,667,624,586,551,515,473,428,383,342,306,
+269,229,187,145,108,76,45,11,-30,-75,-122,-166,-207,-248,-289,-330,-370,-407,-443,-480,-519,
+-563,-609,-656,-701,-744,-785,-826,-865,-904,-943,-981,-1019,-1057,-1097,-1137,-1176,-1211,-1245,-1276,-1308,-1341,
+-1374,-1408,-1443,-1477,-1511,-1543,-1573,-1602,-1633,-1668,-1705,-1744,-1781,-1815,-1846,-1877,-1907,-1936,-1962,-1983,-2003,
+-2024,-2048,-2075,-2101,-2124,-2144,-2163,-2185,-2210,-2235,-2258,-2280,-2302,-2325,-2350,-2373,-2392,-2405,-2416,-2428,-2444,
+-2461,-2478,-2490,-2496,-2499,-2500,-2501,-2505,-2512,-2521,-2532,-2541,-2549,-2554,-2556,-2557,-2558,-2561,-2565,-2569,-2571,
+-2573,-2576,-2581,-2586,-2589,-2589,-2586,-2581,-2577,-2575,-2573,-2569,-2562,-2553,-2547,-2544,-2544,-2542,-2536,-2525,-2514,
+-2505,-2499,-2495,-2487,-2478,-2470,-2466,-2466,-2463,-2453,-2433,-2409,-2388,-2375,-2367,-2356,-2339,-2316,-2295,-2280,-2270,
+-2261,-2246,-2225,-2203,-2184,-2170,-2156,-2139,-2118,-2094,-2072,-2053,-2036,-2017,-1995,-1972,-1950,-1932,-1916,-1899,-1879,
+-1858,-1838,-1821,-1805,-1787,-1765,-1741,-1719,-1705,-1705,-1719,-1739,-1759,-1770,-1768,-1755,-1736,-1719,-1706,-1694,-1680,
+-1662,-1643,-1630,-1629,-1637,-1647,-1648,-1633,-1607,-1583,-1574,-1584,-1605,-1621,-1615,-1583,-1533,-1478,-1430,-1392,-1358,
+-1323,-1289,-1261,-1248,-1253,-1269,-1289,-1306,-1322,-1340,-1363,-1391,-1416,-1433,-1438,-1433,-1423,-1411,-1397,-1382,-1364,
+-1345,-1327,-1312,-1300,-1288,-1275,-1262,-1252,-1245,-1242,-1242,-1242,-1239,-1234,-1227,-1221,-1217,-1212,-1204,-1192,-1174,
+-1154,-1134,-1116,-1100,-1084,-1067,-1053,-1043,-1038,-1032,-1020,-995,-956,-909,-861,-815,-771,-727,-685,-649,-626,
+-616,-614,-611,-605,-601,-611,-640,-677,-698,-677,-600,-476,-338,-218,-139,-100,-79,-50,3,78,158,
+221,253,256,241,219,196,167,126,72,14,-37,-75,-98,-114,-130,-148,-164,-176,-181,-183,-185,
+-186,-184,-180,-174,-171,-174,-181,-188,-194,-199,-207,-221,-239,-257,-269,-275,-276,-278,-284,-293,-304,
+-316,-329,-345,-366,-391,-421,-454,-489,-526,-564,-600,-634,-664,-688,-705,-716,-722,-728,-737,-751,-767,
+-783,-795,-805,-814,-824,-834,-843,-850,-855,-861,-869,-877,-886,-894,-905,-920,-939,-960,-978,-993,-1007,
+-1023,-1042,-1062,-1077,-1086,-1090,-1094,-1102,-1114,-1126,-1134,-1136,-1135,-1135,-1138,-1146,-1156,-1165,-1173,-1177,-1174,
+-1167,-1156,-1148,-1145,-1150,-1158,-1167,-1174,-1178,-1183,-1187,-1188,-1185,-1180,-1176,-1177,-1183,-1189,-1190,-1185,-1176,
+-1169,-1166,-1164,-1160,-1153,-1145,-1140,-1139,-1141,-1142,-1140,-1139,-1141,-1147,-1149,-1142,-1123,-1099,-1083,-1083,-1098,
+-1117,-1128,-1125,-1113,-1105,-1109,-1124,-1143,-1157,-1162,-1163,-1168,-1184,-1209,-1235,-1255,-1267,-1273,-1279,-1287,-1296,
+-1305,-1312,-1320,-1329,-1341,-1354,-1362,-1365,-1367,-1370,-1378,-1387,-1395,-1399,-1401,-1406,-1416,-1431,-1443,-1449,-1449,
+-1449,-1455,-1468,-1485,-1500,-1513,-1524,-1537,-1553,-1569,-1584,-1594,-1602,-1612,-1624,-1637,-1646,-1650,-1650,-1648,-1647,
+-1645,-1641,-1634,-1629,-1630,-1638,-1651,-1660,-1662,-1655,-1643,-1633,-1627,-1622,-1616,-1608,-1601,-1599,-1602,-1609,-1614,
+-1612,-1603,-1588,-1572,-1557,-1544,-1532,-1520,-1507,-1495,-1485,-1476,-1469,-1462,-1457,-1453,-1449,-1445,-1437,-1426,-1413,
+-1400,-1388,-1378,-1367,-1355,-1339,-1323,-1310,-1300,-1292,-1284,-1272,-1256,-1238,-1222,-1208,-1198,-1188,-1180,-1172,-1166,
+-1163,-1161,-1157,-1152,-1145,-1139,-1136,-1135,-1134,-1129,-1120,-1111,-1102,-1094,-1086,-1077,-1067,-1057,-1049,-1044,-1039,
+-1034,-1027,-1018,-1009,-1002,-997,-994,-992,-989,-986,-982,-978,-971,-964,-958,-954,-952,-951,-948,-944,-940,
+-937,-938,-942,-946,-949,-950,-950,-950,-951,-953,-955,-955,-955,-954,-954,-954,-954,-954,-955,-958,-961,
+-963,-960,-953,-944,-937,-931,-928,-924,-919,-913,-907,-902,-899,-896,-893,-889,-885,-879,-872,-862,-850,
+-837,-826,-815,-805,-793,-777,-758,-738,-722,-712,-707,-705,-702,-695,-682,-664,-644,-622,-603,-588,-579,
+-576,-576,-575,-571,-564,-553,-541,-528,-512,-493,-473,-455,-442,-433,-426,-417,-404,-386,-367,-347,-326,
+-306,-285,-264,-243,-222,-199,-177,-156,-138,-123,-109,-92,-69,-43,-19,-1,9,16,25,38,54,
+71,85,100,115,134,154,175,195,217,241,266,291,314,337,362,391,421,448,470,486,500,
+514,534,559,589,621,654,683,707,727,748,771,799,827,850,870,892,919,948,967,967,951,
+939,960,1026,1126,1231,1315,1376,1434,1517,1634,1770,1895,1984,2038,2074,2107,2140,2158,2144,2093,2013,
+1920,1830,1746,1671,1604,1550,1511,1483,1459,1434,1407,1380,1356,1336,1314,1289,1260,1233,1210,1192,1174,
+1158,1146,1142,1148,1157,1162,1157,1147,1140,1141,1152,1163,1168,1162,1149,1138,1133,1132,1132,1124,1107,
+1080,1042,992,929,853,773,700,645,609,584,558,524,479,429,382,338,293,239,177,112,57,
+20,1,-7,-18,-35,-59,-85,-106,-124,-139,-155,-174,-195,-216,-237,-257,-278,-296,-312,-326,-340,
+-355,-371,-385,-396,-402,-404,-405,-406,-407,-405,-402,-399,-396,-394,-392,-390,-386,-380,-371,-359,-342,
+-323,-306,-294,-289,-290,-295,-300,-307,-316,-330,-347,-362,-372,-377,-379,-378,-375,-366,-351,-331,-310,
+-293,-283,-279,-277,-273,-268,-263,-259,-254,-247,-235,-220,-204,-188,-170,-149,-124,-95,-64,-33,0,
+35,75,117,158,197,233,267,302,336,369,401,434,471,514,560,606,649,689,729,770,813,
+854,893,930,968,1008,1051,1092,1129,1162,1195,1230,1269,1310,1348,1382,1410,1437,1465,1493,1522,1552,
+1583,1617,1654,1694,1735,1774,1812,1850,1887,1925,1962,1998,2032,2066,2099,2132,2164,2194,2220,2244,2267,
+2289,2313,2338,2364,2392,2420,2450,2479,2509,2536,2558,2575,2589,2604,2624,2650,2679,2705,2726,2739,2745,
+2749,2752,2753,2751,2746,2739,2732,2725,2718,2708,2697,2686,2677,2671,2666,2657,2644,2630,2620,2619,2627,
+2637,2639,2627,2600,2565,2530,2503,2486,2475,2466,2454,2438,2421,2409,2403,2401,2399,2393,2380,2363,2346,
+2333,2324,2318,2312,2306,2300,2294,2287,2281,2274,2268,2263,2259,2277,2270,2257,2237,2218,2202,2193,2186,
+2180,2175,2173,2177,2186,2195,2200,2204,2211,2224,2244,2264,2278,2287,2300,2322,2357,2398,2435,2468,2501,
+2539,2580,2609,2609,2577,2528,2489,2480,2504,2541,2570,2579,2574,2570,2577,2593,2608,2611,2605,2600,2606,
+2625,2650,2671,2681,2685,2690,2702,2724,2753,2786,2817,2845,2867,2884,2901,2923,2953,2988,3024,3052,3069,
+3077,3084,3093,3107,3122,3137,3150,3164,3178,3192,3203,3211,3218,3227,3237,3247,3254,3257,3257,3256,3255,
+3253,3249,3245,3246,3256,3273,3291,3301,3301,3297,3297,3308,3324,3339,3348,3352,3356,3365,3381,3398,3414,
+3431,3455,3492,3540,3593,3645,3694,3749,3815,3891,3968,4031,4068,4082,4085,4097,4130,4187,4258,4326,4381,
+4419,4445,4470,4496,4521,4537,4540,4532,4520,4508,4492,4468,4440,4426,4445,4504,4581,4634,4626,4550,4442,
+4357,4334,4373,4436,4478,4476,4443,4407,4389,4386,4382,4364,4332,4302,4287,4288,4297,4305,4313,4327,4356,
+4394,4433,4465,4490,4516,4549,4586,4619,4638,4641,4636,4627,4615,4595,4560,4513,4463,4424,4410,4424,4460,
+4506,4550,4587,4618,4650,4690,4738,4787,4821,4828,4805,4760,4706,4651,4596,4540,4480,4424,4380,4352,4339,
+4332,4322,4307,4288,4270,4252,4234,4213,4190,4166,4143,4119,4093,4064,4034,4005,3979,3953,3922,3885,3844,
+3803,3766,3734,3706,3679,3652,3625,3598,3572,3550,3536,3529,3528,3522,3505,3474,3437,3406,3391,3395,3413,
+3442,3477,3522,3576,3635,3687,3725,3744,3750,3750,3749,3749,3744,3731,3709,3679,3648,3620,3598,3581,3568,
+3551,3527,3493,3453,3415,3382,3353,3323,3286,3242,3199,3164,3138,3117,3093,3065,3035,3010,2991,2975,2954,
+2926,2894,2865,2841,2820,2794,2759,2720,2682,2653,2630,2609,2584,2556,2529,2505,2482,2454,2419,2379,2340,
+2309,2283,2260,2232,2201,2168,2137,2108,2079,2045,2009,1971,1936,1903,1871,1839,1806,1773,1741,1708,1674,
+1638,1601,1564,1529,1495,1460,1423,1385,1346,1307,1267,1227,1187,1149,1112,1074,1033,988,943,901,863,
+827,789,747,704,664,627,592,553,509,459,411,369,333,298,262,222,182,146,115,85,51,
+12,-32,-78,-122,-164,-204,-245,-286,-327,-365,-402,-440,-480,-523,-569,-614,-656,-696,-734,-773,-814,
+-854,-893,-931,-969,-1007,-1048,-1090,-1130,-1166,-1198,-1229,-1260,-1294,-1329,-1365,-1401,-1434,-1466,-1498,-1530,-1562,
+-1596,-1632,-1669,-1705,-1739,-1770,-1800,-1830,-1861,-1891,-1919,-1943,-1964,-1986,-2009,-2035,-2061,-2086,-2108,-2129,-2149,
+-2169,-2190,-2212,-2235,-2261,-2289,-2316,-2338,-2353,-2363,-2372,-2385,-2404,-2426,-2446,-2459,-2466,-2467,-2467,-2470,-2476,
+-2486,-2497,-2509,-2520,-2528,-2534,-2537,-2539,-2540,-2542,-2545,-2548,-2551,-2555,-2559,-2564,-2569,-2572,-2572,-2570,-2566,
+-2562,-2560,-2558,-2553,-2546,-2538,-2532,-2529,-2529,-2526,-2520,-2509,-2498,-2490,-2485,-2483,-2477,-2468,-2459,-2452,-2449,
+-2446,-2436,-2418,-2396,-2376,-2362,-2353,-2342,-2326,-2304,-2283,-2267,-2255,-2245,-2231,-2212,-2191,-2173,-2159,-2146,-2130,
+-2110,-2087,-2065,-2044,-2026,-2007,-1986,-1965,-1946,-1929,-1912,-1893,-1872,-1850,-1829,-1812,-1797,-1781,-1764,-1743,-1723,
+-1709,-1706,-1714,-1732,-1751,-1765,-1766,-1755,-1736,-1718,-1705,-1696,-1688,-1677,-1662,-1649,-1644,-1646,-1651,-1649,-1635,
+-1611,-1589,-1579,-1586,-1602,-1613,-1606,-1579,-1537,-1493,-1453,-1416,-1377,-1335,-1291,-1255,-1233,-1227,-1234,-1249,-1268,
+-1292,-1324,-1363,-1401,-1431,-1446,-1446,-1439,-1431,-1427,-1425,-1421,-1412,-1398,-1382,-1365,-1350,-1335,-1321,-1310,-1303,
+-1300,-1301,-1302,-1299,-1294,-1286,-1279,-1271,-1262,-1249,-1232,-1213,-1195,-1180,-1168,-1154,-1137,-1118,-1104,-1099,-1102,
+-1104,-1096,-1069,-1026,-975,-926,-884,-846,-804,-759,-716,-684,-669,-667,-668,-665,-662,-670,-701,-749,-795,
+-810,-773,-684,-568,-454,-366,-306,-262,-214,-150,-72,6,69,108,123,119,107,87,59,19,-33,
+-90,-141,-177,-196,-204,-209,-219,-232,-244,-249,-249,-247,-247,-248,-248,-245,-242,-241,-245,-252,-260,
+-265,-266,-268,-275,-285,-297,-307,-313,-318,-324,-329,-332,-333,-333,-338,-352,-376,-407,-440,-473,-508,
+-548,-597,-652,-709,-761,-800,-823,-831,-832,-832,-837,-850,-869,-889,-906,-919,-928,-937,-945,-953,-961,
+-968,-974,-979,-981,-981,-982,-987,-997,-1014,-1032,-1049,-1060,-1069,-1080,-1095,-1114,-1132,-1146,-1154,-1158,-1163,
+-1170,-1178,-1185,-1189,-1191,-1193,-1195,-1200,-1207,-1216,-1223,-1227,-1226,-1220,-1210,-1201,-1195,-1194,-1196,-1198,-1201,
+-1205,-1210,-1215,-1219,-1220,-1219,-1219,-1223,-1230,-1236,-1237,-1233,-1226,-1221,-1219,-1219,-1218,-1213,-1206,-1199,-1196,
+-1194,-1191,-1187,-1184,-1185,-1188,-1192,-1190,-1180,-1166,-1154,-1151,-1159,-1172,-1182,-1184,-1179,-1174,-1174,-1182,-1193,
+-1199,-1200,-1197,-1197,-1207,-1226,-1249,-1270,-1286,-1296,-1305,-1315,-1325,-1334,-1341,-1349,-1360,-1374,-1388,-1397,-1399,
+-1396,-1394,-1397,-1402,-1408,-1411,-1412,-1417,-1429,-1447,-1465,-1477,-1482,-1484,-1488,-1498,-1511,-1521,-1528,-1534,-1542,
+-1556,-1573,-1589,-1601,-1610,-1619,-1631,-1644,-1655,-1662,-1664,-1664,-1664,-1664,-1664,-1663,-1663,-1665,-1669,-1673,-1672,
+-1665,-1655,-1645,-1638,-1633,-1627,-1619,-1610,-1606,-1609,-1618,-1625,-1627,-1619,-1604,-1587,-1573,-1563,-1554,-1544,-1533,
+-1522,-1511,-1501,-1491,-1480,-1470,-1462,-1457,-1454,-1449,-1442,-1429,-1414,-1400,-1388,-1379,-1371,-1362,-1350,-1337,-1323,
+-1312,-1303,-1293,-1281,-1267,-1250,-1233,-1217,-1203,-1189,-1177,-1166,-1157,-1151,-1146,-1140,-1134,-1127,-1122,-1120,-1119,
+-1119,-1117,-1112,-1106,-1099,-1093,-1087,-1078,-1068,-1059,-1052,-1046,-1042,-1036,-1028,-1017,-1007,-1000,-996,-993,-991,
+-989,-986,-983,-979,-974,-969,-963,-957,-953,-949,-946,-942,-939,-938,-939,-942,-945,-947,-947,-946,-947,
+-949,-953,-956,-959,-959,-958,-956,-955,-954,-954,-956,-960,-964,-966,-965,-959,-952,-944,-938,-934,-933,
+-931,-929,-925,-921,-915,-910,-904,-899,-894,-888,-879,-868,-855,-842,-830,-820,-811,-799,-785,-767,-749,
+-734,-726,-723,-724,-723,-716,-702,-682,-658,-635,-617,-606,-601,-601,-601,-598,-592,-584,-574,-564,-553,
+-538,-520,-500,-483,-469,-460,-452,-441,-426,-407,-386,-364,-343,-321,-299,-276,-253,-230,-206,-182,-158,
+-138,-121,-105,-87,-67,-44,-24,-10,0,6,15,27,42,57,71,84,100,118,139,161,184,
+208,232,257,280,304,328,355,385,415,440,458,471,482,496,516,542,572,603,633,659,680,
+700,721,746,773,798,818,835,855,881,904,911,894,866,854,889,981,1105,1221,1300,1346,1392,
+1481,1625,1794,1940,2022,2037,2014,1991,1989,2000,1998,1966,1903,1824,1748,1686,1640,1606,1578,1551,1522,
+1488,1447,1403,1362,1329,1303,1280,1256,1232,1211,1196,1184,1173,1160,1148,1143,1146,1154,1160,1155,1144,
+1133,1131,1139,1150,1155,1151,1141,1136,1140,1152,1160,1157,1137,1103,1060,1008,946,875,800,731,678,
+643,618,592,555,508,460,416,378,337,287,226,159,100,56,29,11,-5,-27,-52,-77,-98,
+-115,-131,-148,-166,-185,-204,-223,-242,-260,-277,-293,-308,-324,-342,-360,-374,-383,-388,-390,-391,-393,
+-395,-396,-395,-393,-393,-393,-393,-390,-385,-378,-368,-354,-336,-314,-291,-272,-260,-255,-256,-261,-268,
+-278,-292,-308,-322,-331,-336,-338,-339,-338,-331,-317,-297,-276,-259,-250,-247,-247,-244,-240,-233,-226,
+-218,-208,-196,-182,-167,-150,-131,-107,-80,-50,-21,7,38,73,113,155,195,230,262,293,327,
+365,403,440,475,509,544,580,618,656,696,739,784,829,871,908,942,976,1013,1052,1091,1128,
+1163,1198,1237,1280,1324,1365,1399,1427,1453,1480,1509,1538,1568,1598,1629,1664,1702,1742,1782,1820,1856,
+1891,1926,1960,1994,2027,2058,2089,2119,2149,2179,2207,2230,2251,2271,2293,2319,2347,2376,2404,2431,2459,
+2489,2520,2549,2571,2586,2599,2617,2642,2672,2702,2725,2740,2748,2754,2759,2762,2759,2750,2738,2726,2718,
+2715,2714,2714,2715,2718,2722,2725,2724,2718,2709,2701,2695,2689,2680,2662,2634,2599,2563,2533,2513,2501,
+2493,2484,2471,2455,2440,2428,2423,2421,2420,2414,2403,2389,2375,2363,2352,2341,2329,2317,2306,2298,2291,
+2286,2281,2279,2279,2277,2284,2277,2264,2248,2233,2224,2221,2219,2215,2208,2204,2205,2212,2219,2221,2219,
+2217,2222,2236,2254,2271,2286,2303,2328,2361,2396,2426,2451,2477,2511,2550,2577,2578,2548,2507,2483,2497,
+2548,2611,2657,2671,2659,2642,2637,2643,2650,2646,2632,2618,2616,2633,2660,2687,2705,2715,2723,2737,2758,
+2784,2813,2839,2860,2875,2888,2902,2923,2952,2987,3020,3045,3059,3068,3078,3093,3112,3131,3146,3157,3168,
+3181,3194,3207,3215,3220,3226,3232,3239,3244,3247,3248,3249,3252,3252,3250,3245,3244,3251,3267,3286,3299,
+3305,3305,3307,3315,3329,3342,3350,3355,3361,3374,3391,3410,3432,3458,3494,3540,3593,3644,3691,3738,3796,
+3868,3949,4020,4067,4084,4083,4087,4114,4167,4235,4299,4345,4373,4392,4415,4448,4485,4513,4523,4516,4499,
+4485,4476,4465,4446,4417,4393,4391,4419,4462,4490,4476,4420,4347,4297,4292,4328,4375,4404,4404,4389,4380,
+4388,4403,4406,4383,4340,4293,4259,4247,4256,4279,4311,4349,4387,4417,4435,4445,4455,4476,4508,4544,4573,
+4589,4594,4595,4597,4596,4584,4557,4516,4471,4432,4407,4399,4406,4425,4452,4481,4509,4534,4557,4579,4596,
+4603,4595,4571,4538,4508,4485,4469,4453,4431,4405,4380,4363,4354,4346,4335,4317,4295,4273,4254,4236,4217,
+4196,4172,4149,4125,4101,4075,4048,4022,3997,3970,3939,3901,3860,3821,3786,3757,3730,3703,3672,3641,3612,
+3590,3578,3576,3579,3579,3568,3541,3503,3465,3438,3430,3441,3465,3498,3540,3593,3655,3718,3772,3807,3821,
+3822,3818,3818,3821,3823,3821,3811,3794,3771,3747,3726,3709,3692,3672,3643,3604,3559,3513,3472,3433,3391,
+3342,3290,3243,3206,3179,3155,3125,3089,3051,3020,2999,2983,2964,2940,2912,2887,2866,2845,2817,2781,2740,
+2704,2678,2660,2642,2619,2592,2565,2540,2515,2485,2449,2408,2371,2342,2320,2297,2268,2234,2198,2166,2139,
+2112,2081,2045,2006,1968,1933,1899,1865,1830,1795,1762,1730,1697,1662,1625,1589,1555,1521,1486,1449,1410,
+1371,1333,1295,1257,1218,1178,1138,1098,1058,1016,975,934,895,857,817,776,736,699,664,629,589,
+544,494,445,402,364,329,294,257,219,185,153,122,88,50,8,-33,-75,-116,-157,-199,-241,
+-282,-322,-361,-401,-444,-488,-532,-573,-610,-646,-682,-722,-764,-805,-843,-879,-914,-952,-994,-1038,-1080,
+-1117,-1150,-1180,-1212,-1247,-1286,-1324,-1360,-1392,-1423,-1455,-1488,-1524,-1561,-1597,-1632,-1664,-1695,-1725,-1754,-1784,
+-1815,-1846,-1875,-1901,-1925,-1948,-1971,-1996,-2023,-2049,-2074,-2097,-2118,-2138,-2157,-2177,-2201,-2227,-2255,-2281,-2301,
+-2314,-2323,-2333,-2348,-2369,-2392,-2412,-2426,-2433,-2435,-2436,-2440,-2448,-2459,-2472,-2484,-2494,-2503,-2509,-2514,-2517,
+-2520,-2522,-2525,-2529,-2534,-2539,-2545,-2550,-2554,-2556,-2555,-2552,-2548,-2544,-2541,-2539,-2535,-2529,-2522,-2515,-2512,
+-2511,-2510,-2505,-2496,-2486,-2476,-2471,-2468,-2465,-2459,-2451,-2443,-2436,-2429,-2417,-2401,-2383,-2365,-2352,-2342,-2331,
+-2315,-2295,-2274,-2257,-2243,-2230,-2216,-2198,-2179,-2162,-2147,-2133,-2117,-2098,-2078,-2057,-2037,-2017,-1997,-1977,-1958,
+-1941,-1925,-1909,-1891,-1870,-1848,-1827,-1809,-1794,-1778,-1761,-1742,-1724,-1710,-1704,-1710,-1725,-1746,-1762,-1766,-1757,
+-1739,-1720,-1707,-1702,-1699,-1692,-1680,-1665,-1655,-1652,-1652,-1648,-1634,-1612,-1592,-1582,-1586,-1597,-1603,-1595,-1571,
+-1538,-1502,-1468,-1435,-1398,-1355,-1312,-1274,-1248,-1235,-1233,-1239,-1253,-1278,-1315,-1360,-1404,-1436,-1451,-1449,-1440,
+-1434,-1436,-1443,-1450,-1450,-1442,-1426,-1408,-1390,-1376,-1366,-1360,-1359,-1360,-1361,-1359,-1353,-1344,-1335,-1327,-1317,
+-1302,-1282,-1258,-1237,-1225,-1220,-1217,-1209,-1193,-1174,-1161,-1158,-1161,-1156,-1133,-1090,-1036,-988,-955,-930,-903,
+-863,-812,-764,-733,-723,-723,-720,-711,-705,-723,-771,-839,-896,-912,-872,-787,-686,-593,-517,-452,-381,
+-298,-208,-125,-65,-34,-28,-37,-51,-68,-87,-112,-147,-187,-229,-264,-287,-299,-305,-308,-314,-320,
+-324,-323,-320,-316,-315,-317,-317,-316,-313,-312,-315,-321,-326,-327,-325,-323,-323,-327,-331,-335,-339,
+-344,-350,-355,-354,-345,-334,-328,-335,-357,-389,-424,-459,-495,-540,-601,-677,-758,-832,-886,-917,-926,
+-925,-923,-928,-943,-964,-987,-1006,-1019,-1030,-1038,-1045,-1052,-1059,-1064,-1068,-1071,-1072,-1072,-1072,-1075,-1083,
+-1096,-1111,-1124,-1133,-1139,-1145,-1154,-1167,-1184,-1200,-1211,-1218,-1222,-1225,-1230,-1235,-1242,-1247,-1251,-1254,-1257,
+-1260,-1266,-1271,-1276,-1277,-1275,-1270,-1262,-1254,-1248,-1242,-1238,-1235,-1236,-1240,-1245,-1250,-1255,-1259,-1264,-1270,
+-1277,-1281,-1281,-1279,-1277,-1277,-1279,-1281,-1280,-1273,-1263,-1253,-1247,-1244,-1243,-1243,-1242,-1241,-1239,-1237,-1233,
+-1225,-1215,-1207,-1203,-1207,-1216,-1226,-1233,-1235,-1234,-1234,-1237,-1242,-1246,-1247,-1246,-1245,-1250,-1260,-1276,-1291,
+-1303,-1311,-1318,-1327,-1337,-1348,-1360,-1374,-1390,-1408,-1424,-1431,-1428,-1419,-1411,-1410,-1417,-1427,-1435,-1439,-1444,
+-1454,-1469,-1486,-1500,-1507,-1511,-1516,-1525,-1536,-1544,-1549,-1551,-1556,-1566,-1580,-1595,-1607,-1617,-1625,-1634,-1645,
+-1656,-1664,-1668,-1671,-1674,-1677,-1681,-1685,-1689,-1694,-1696,-1695,-1688,-1677,-1667,-1659,-1655,-1651,-1643,-1632,-1621,
+-1616,-1619,-1626,-1632,-1630,-1620,-1604,-1589,-1577,-1567,-1558,-1547,-1535,-1525,-1518,-1513,-1507,-1499,-1490,-1480,-1473,
+-1467,-1460,-1449,-1434,-1417,-1401,-1388,-1380,-1375,-1369,-1360,-1348,-1333,-1319,-1306,-1294,-1283,-1272,-1260,-1247,-1233,
+-1218,-1202,-1187,-1174,-1162,-1152,-1144,-1134,-1124,-1114,-1105,-1099,-1096,-1095,-1094,-1092,-1088,-1084,-1080,-1075,-1069,
+-1062,-1055,-1049,-1044,-1041,-1037,-1030,-1022,-1014,-1007,-1001,-998,-995,-992,-988,-985,-981,-976,-971,-965,-959,
+-953,-949,-945,-942,-939,-937,-938,-940,-942,-944,-945,-944,-944,-946,-950,-955,-960,-963,-964,-965,-965,
+-966,-966,-967,-967,-968,-968,-967,-964,-959,-952,-944,-939,-937,-937,-939,-939,-935,-929,-922,-915,-908,
+-903,-898,-891,-880,-867,-853,-841,-830,-820,-809,-796,-780,-764,-750,-741,-739,-739,-739,-732,-718,-696,
+-671,-647,-631,-622,-621,-623,-624,-621,-614,-605,-596,-586,-574,-560,-543,-525,-510,-497,-485,-473,-457,
+-438,-418,-398,-378,-358,-335,-311,-286,-261,-236,-210,-184,-159,-137,-119,-103,-87,-70,-52,-37,-25,
+-17,-10,-1,11,25,40,56,72,89,108,128,149,170,194,218,242,265,288,313,342,371,
+398,419,434,446,459,477,500,525,551,577,601,624,646,668,693,720,749,772,790,805,822,
+842,855,850,823,789,784,839,959,1112,1250,1337,1377,1411,1490,1630,1804,1957,2041,2049,2010,1967,
+1944,1937,1920,1876,1805,1729,1668,1634,1621,1618,1611,1593,1563,1521,1467,1409,1352,1305,1269,1242,1223,
+1208,1198,1192,1187,1178,1165,1151,1144,1146,1154,1160,1157,1146,1133,1128,1132,1140,1142,1136,1128,1127,
+1138,1156,1168,1164,1142,1105,1063,1017,965,903,835,769,715,678,650,622,583,535,485,441,405,
+370,328,276,217,160,113,76,46,18,-10,-38,-63,-84,-102,-119,-137,-154,-170,-184,-200,-216,
+-235,-253,-271,-288,-305,-321,-336,-346,-352,-356,-360,-365,-371,-376,-380,-381,-382,-384,-386,-386,-383,
+-377,-369,-359,-346,-327,-302,-274,-248,-228,-217,-213,-215,-222,-233,-247,-262,-275,-284,-288,-289,-289,
+-287,-279,-265,-244,-223,-207,-200,-200,-203,-204,-201,-194,-183,-170,-157,-142,-127,-111,-93,-72,-46,
+-18,10,37,63,91,122,157,193,227,255,282,312,346,386,427,466,501,532,563,594,627,
+663,704,749,798,848,894,934,969,1001,1035,1070,1105,1139,1173,1208,1248,1291,1337,1379,1416,1448,
+1476,1504,1532,1560,1588,1614,1642,1672,1706,1744,1783,1821,1856,1889,1921,1952,1983,2012,2040,2066,2093,
+2122,2153,2183,2210,2233,2254,2278,2307,2340,2372,2400,2424,2448,2475,2507,2540,2567,2587,2602,2619,2640,
+2666,2690,2707,2717,2724,2731,2740,2747,2747,2737,2723,2712,2709,2717,2733,2751,2767,2780,2787,2788,2784,
+2773,2760,2743,2725,2702,2674,2640,2605,2574,2550,2536,2528,2523,2518,2509,2497,2482,2468,2457,2448,2441,
+2432,2420,2406,2392,2380,2369,2358,2344,2329,2315,2304,2297,2293,2290,2287,2286,2285,2284,2293,2288,2279,
+2269,2260,2256,2254,2250,2241,2229,2221,2221,2228,2234,2234,2228,2221,2222,2234,2253,2273,2290,2308,2332,
+2360,2387,2405,2416,2430,2455,2491,2523,2532,2515,2485,2472,2499,2563,2642,2702,2725,2716,2694,2679,2675,
+2673,2664,2645,2628,2625,2640,2670,2701,2726,2743,2757,2772,2793,2816,2840,2860,2876,2889,2901,2915,2934,
+2960,2989,3015,3034,3045,3056,3071,3094,3121,3145,3162,3172,3181,3192,3205,3217,3225,3229,3231,3232,3234,
+3235,3237,3240,3247,3256,3263,3266,3263,3259,3261,3271,3285,3300,3310,3317,3324,3334,3345,3355,3362,3367,
+3375,3388,3406,3429,3458,3496,3545,3601,3654,3699,3737,3781,3842,3920,3999,4058,4082,4076,4065,4079,4129,
+4208,4290,4347,4371,4372,4373,4391,4427,4469,4497,4502,4486,4463,4446,4439,4434,4423,4402,4378,4363,4362,
+4368,4367,4349,4316,4284,4272,4286,4317,4347,4362,4362,4361,4370,4388,4407,4411,4394,4362,4326,4298,4284,
+4285,4302,4332,4367,4398,4415,4418,4415,4419,4440,4475,4511,4538,4552,4559,4566,4575,4580,4572,4549,4515,
+4479,4450,4430,4418,4414,4419,4434,4454,4473,4485,4488,4485,4481,4474,4464,4449,4429,4412,4403,4400,4401,
+4398,4391,4381,4373,4367,4358,4345,4324,4300,4278,4259,4243,4226,4206,4182,4157,4132,4107,4083,4059,4035,
+4011,3985,3952,3915,3875,3838,3806,3780,3754,3727,3696,3664,3635,3616,3608,3610,3616,3616,3603,3576,3539,
+3502,3475,3465,3472,3494,3532,3584,3650,3722,3791,3843,3872,3882,3881,3877,3877,3882,3889,3894,3894,3886,
+3870,3847,3822,3798,3777,3755,3727,3690,3645,3597,3547,3497,3442,3382,3322,3271,3234,3210,3189,3161,3125,
+3087,3053,3029,3010,2989,2963,2934,2909,2888,2866,2839,2803,2765,2731,2707,2690,2672,2650,2623,2596,2570,
+2544,2514,2477,2437,2403,2377,2357,2335,2306,2269,2231,2196,2167,2139,2107,2070,2031,1994,1960,1927,1892,
+1856,1819,1784,1751,1718,1682,1646,1610,1575,1543,1510,1474,1436,1398,1361,1325,1288,1248,1205,1162,1120,
+1080,1041,1003,965,925,884,843,802,763,727,692,656,617,573,527,481,438,399,363,328,293,
+259,225,192,159,123,86,47,9,-29,-68,-110,-152,-195,-236,-276,-318,-362,-409,-454,-496,-532,
+-564,-596,-633,-675,-720,-763,-801,-834,-867,-903,-944,-989,-1031,-1068,-1100,-1131,-1165,-1204,-1246,-1287,-1323,
+-1354,-1384,-1415,-1450,-1487,-1525,-1560,-1592,-1621,-1651,-1681,-1711,-1741,-1771,-1799,-1827,-1854,-1880,-1906,-1931,-1956,
+-1982,-2007,-2034,-2060,-2084,-2106,-2126,-2147,-2170,-2195,-2220,-2243,-2261,-2274,-2285,-2297,-2313,-2333,-2355,-2374,-2387,
+-2394,-2399,-2404,-2411,-2421,-2433,-2445,-2455,-2464,-2472,-2479,-2485,-2491,-2496,-2499,-2503,-2508,-2514,-2521,-2529,-2534,
+-2537,-2537,-2535,-2530,-2524,-2520,-2517,-2516,-2515,-2512,-2507,-2501,-2497,-2496,-2495,-2493,-2486,-2476,-2465,-2456,-2452,
+-2449,-2447,-2442,-2435,-2425,-2413,-2398,-2382,-2366,-2351,-2339,-2327,-2315,-2300,-2282,-2264,-2247,-2232,-2217,-2202,-2186,
+-2169,-2153,-2136,-2120,-2102,-2085,-2067,-2049,-2030,-2011,-1990,-1970,-1951,-1935,-1919,-1904,-1887,-1868,-1849,-1831,-1813,
+-1795,-1777,-1757,-1738,-1720,-1706,-1700,-1705,-1721,-1744,-1765,-1774,-1768,-1750,-1730,-1716,-1710,-1708,-1702,-1691,-1676,
+-1665,-1660,-1660,-1655,-1640,-1618,-1597,-1586,-1589,-1599,-1605,-1599,-1578,-1549,-1517,-1487,-1456,-1421,-1382,-1342,-1306,
+-1281,-1265,-1257,-1255,-1262,-1281,-1314,-1357,-1401,-1436,-1455,-1458,-1453,-1449,-1452,-1461,-1470,-1473,-1466,-1451,-1433,
+-1417,-1407,-1404,-1406,-1412,-1417,-1417,-1413,-1403,-1392,-1383,-1374,-1363,-1345,-1321,-1295,-1275,-1267,-1270,-1273,-1270,
+-1256,-1238,-1224,-1216,-1208,-1187,-1146,-1092,-1040,-1005,-989,-979,-958,-915,-860,-813,-787,-781,-780,-770,-753,
+-748,-776,-842,-923,-983,-991,-943,-857,-764,-682,-609,-532,-441,-339,-246,-179,-148,-148,-166,-191,-215,
+-237,-259,-281,-301,-320,-339,-359,-378,-393,-403,-407,-407,-405,-403,-400,-396,-394,-392,-392,-391,-389,
+-386,-385,-386,-388,-390,-390,-389,-389,-389,-390,-388,-384,-380,-380,-385,-388,-385,-371,-350,-333,-329,
+-342,-370,-403,-436,-474,-524,-596,-688,-788,-880,-947,-985,-999,-1002,-1006,-1017,-1037,-1059,-1079,-1095,-1107,
+-1116,-1125,-1134,-1141,-1145,-1147,-1148,-1151,-1155,-1160,-1165,-1170,-1175,-1182,-1191,-1201,-1209,-1214,-1218,-1223,-1231,
+-1242,-1256,-1268,-1276,-1279,-1281,-1284,-1288,-1294,-1299,-1303,-1306,-1308,-1310,-1314,-1319,-1324,-1327,-1329,-1328,-1323,
+-1316,-1307,-1298,-1290,-1284,-1281,-1280,-1281,-1284,-1289,-1297,-1306,-1316,-1323,-1328,-1329,-1329,-1330,-1333,-1336,-1338,
+-1336,-1329,-1320,-1312,-1306,-1303,-1304,-1305,-1305,-1301,-1294,-1285,-1276,-1268,-1262,-1256,-1252,-1251,-1255,-1262,-1271,
+-1277,-1280,-1280,-1280,-1282,-1286,-1290,-1293,-1295,-1299,-1305,-1315,-1325,-1331,-1333,-1333,-1334,-1339,-1348,-1361,-1378,
+-1397,-1417,-1432,-1439,-1435,-1426,-1418,-1420,-1432,-1449,-1465,-1475,-1482,-1488,-1498,-1510,-1521,-1528,-1531,-1535,-1542,
+-1551,-1561,-1567,-1571,-1575,-1583,-1595,-1608,-1620,-1629,-1636,-1642,-1649,-1656,-1663,-1669,-1676,-1682,-1689,-1695,-1701,
+-1707,-1712,-1715,-1713,-1705,-1695,-1687,-1683,-1681,-1678,-1668,-1654,-1639,-1630,-1630,-1634,-1637,-1633,-1622,-1609,-1596,
+-1586,-1575,-1562,-1546,-1531,-1521,-1516,-1515,-1513,-1509,-1503,-1495,-1488,-1481,-1472,-1459,-1443,-1424,-1407,-1394,-1385,
+-1378,-1370,-1360,-1346,-1330,-1312,-1297,-1284,-1274,-1266,-1259,-1250,-1239,-1226,-1213,-1200,-1189,-1178,-1168,-1157,-1144,
+-1130,-1116,-1102,-1090,-1083,-1079,-1076,-1073,-1070,-1066,-1062,-1058,-1054,-1049,-1044,-1039,-1034,-1031,-1028,-1025,-1021,
+-1016,-1009,-1003,-999,-995,-992,-989,-985,-981,-976,-970,-965,-959,-953,-948,-944,-940,-937,-935,-936,-939,
+-942,-946,-947,-947,-945,-945,-947,-952,-957,-963,-968,-972,-976,-980,-981,-980,-977,-974,-972,-971,-970,
+-967,-960,-952,-944,-940,-940,-943,-945,-943,-938,-930,-922,-916,-912,-908,-903,-894,-883,-870,-857,-845,
+-835,-824,-812,-798,-784,-770,-760,-756,-754,-752,-746,-732,-711,-687,-666,-651,-643,-642,-644,-645,-643,
+-638,-631,-622,-611,-597,-581,-564,-547,-533,-518,-503,-485,-465,-445,-426,-408,-390,-369,-346,-320,-294,
+-267,-240,-212,-185,-160,-139,-122,-108,-94,-81,-68,-57,-48,-39,-31,-21,-8,5,21,39,59,
+78,97,114,132,152,175,200,224,246,268,292,319,347,372,391,404,418,435,458,482,505,
+526,546,568,593,619,645,672,700,726,749,766,779,791,802,806,794,766,741,753,828,971,
+1144,1297,1390,1423,1440,1490,1600,1749,1890,1979,2003,1984,1957,1937,1919,1881,1816,1732,1657,1611,1600,
+1609,1619,1617,1598,1566,1523,1470,1408,1342,1280,1230,1197,1179,1175,1177,1182,1183,1177,1165,1152,1145,
+1147,1156,1162,1160,1149,1136,1129,1130,1134,1133,1126,1117,1116,1127,1144,1154,1148,1123,1088,1051,1015,
+977,928,870,808,754,712,680,647,606,555,502,456,420,389,357,317,270,221,175,133,95,
+59,25,-4,-28,-49,-68,-88,-108,-126,-142,-155,-170,-187,-207,-229,-249,-266,-281,-293,-302,-307,
+-310,-313,-319,-327,-336,-345,-351,-356,-360,-364,-367,-367,-364,-357,-349,-340,-327,-309,-284,-254,-224,
+-200,-184,-175,-173,-176,-184,-196,-209,-221,-229,-231,-230,-226,-220,-210,-194,-176,-158,-145,-141,-143,
+-147,-149,-146,-137,-126,-112,-96,-80,-64,-47,-28,-6,18,45,72,99,125,151,179,207,234,
+260,284,309,339,374,414,454,491,526,558,589,621,654,690,729,774,823,872,919,960,995,
+1028,1060,1094,1128,1161,1193,1226,1262,1303,1347,1392,1433,1468,1499,1526,1551,1575,1599,1622,1648,1676,
+1708,1744,1781,1818,1851,1881,1911,1940,1970,2000,2027,2051,2076,2103,2134,2167,2197,2223,2246,2271,2300,
+2334,2369,2398,2422,2443,2466,2494,2524,2551,2573,2590,2607,2625,2644,2659,2669,2674,2680,2691,2707,2722,
+2730,2729,2722,2719,2724,2740,2764,2789,2811,2825,2829,2823,2809,2788,2766,2742,2717,2688,2656,2623,2594,
+2574,2563,2559,2557,2552,2542,2530,2516,2501,2488,2475,2462,2448,2432,2415,2399,2384,2373,2363,2353,2342,
+2329,2318,2311,2308,2306,2304,2301,2298,2296,2293,2313,2308,2299,2289,2280,2273,2269,2261,2250,2237,2228,
+2228,2234,2240,2242,2237,2235,2240,2256,2276,2293,2307,2320,2338,2361,2381,2391,2394,2402,2427,2469,2514,
+2538,2531,2503,2482,2496,2548,2620,2681,2709,2704,2683,2665,2658,2656,2650,2637,2624,2623,2639,2668,2703,
+2733,2757,2775,2791,2809,2828,2847,2867,2885,2903,2919,2934,2950,2968,2987,3004,3017,3029,3044,3066,3097,
+3130,3159,3179,3192,3200,3209,3220,3229,3236,3238,3238,3237,3235,3234,3234,3238,3248,3263,3278,3288,3290,
+3288,3287,3289,3296,3305,3316,3327,3341,3355,3368,3376,3381,3387,3397,3412,3433,3459,3492,3535,3589,3647,
+3700,3743,3782,3828,3891,3965,4029,4063,4059,4035,4024,4056,4135,4238,4328,4376,4381,4363,4352,4366,4402,
+4442,4467,4467,4449,4424,4406,4396,4391,4385,4375,4362,4350,4338,4325,4307,4287,4271,4267,4278,4301,4325,
+4343,4352,4359,4369,4384,4398,4405,4399,4386,4369,4353,4339,4326,4319,4322,4338,4363,4387,4399,4397,4391,
+4394,4415,4450,4484,4509,4523,4532,4543,4555,4561,4553,4531,4503,4479,4463,4453,4445,4439,4438,4447,4463,
+4479,4488,4485,4475,4464,4457,4451,4442,4429,4414,4401,4395,4394,4394,4392,4387,4382,4374,4364,4348,4328,
+4305,4284,4267,4251,4235,4215,4190,4163,4136,4110,4087,4065,4043,4021,3994,3963,3927,3890,3855,3826,3801,
+3778,3753,3726,3697,3672,3654,3645,3641,3640,3635,3622,3599,3570,3539,3512,3495,3493,3511,3551,3614,3692,
+3772,3841,3889,3913,3922,3923,3925,3930,3937,3945,3951,3953,3949,3934,3910,3879,3849,3824,3802,3778,3746,
+3702,3650,3592,3532,3469,3404,3342,3290,3254,3230,3212,3189,3158,3124,3094,3070,3049,3025,2995,2963,2933,
+2908,2885,2859,2827,2792,2761,2737,2719,2700,2677,2650,2623,2598,2572,2542,2506,2468,2435,2409,2388,2367,
+2338,2303,2265,2230,2197,2164,2127,2088,2048,2013,1981,1950,1916,1880,1842,1807,1775,1742,1707,1670,1632,
+1597,1564,1533,1499,1463,1426,1389,1354,1317,1278,1235,1190,1147,1106,1068,1031,992,951,910,869,829,
+791,754,717,679,639,598,555,513,472,432,395,361,328,296,264,231,195,157,119,81,45,
+8,-31,-72,-115,-157,-198,-240,-283,-330,-377,-421,-460,-492,-521,-553,-592,-637,-684,-728,-767,-800,
+-833,-869,-909,-951,-991,-1026,-1058,-1090,-1126,-1167,-1210,-1252,-1287,-1318,-1347,-1378,-1413,-1450,-1486,-1519,-1548,
+-1576,-1605,-1637,-1670,-1701,-1731,-1757,-1783,-1809,-1837,-1866,-1894,-1919,-1943,-1967,-1992,-2017,-2043,-2067,-2089,-2111,
+-2133,-2156,-2179,-2200,-2217,-2231,-2244,-2259,-2276,-2294,-2313,-2329,-2341,-2351,-2361,-2371,-2383,-2396,-2409,-2419,-2428,
+-2435,-2441,-2449,-2458,-2465,-2471,-2474,-2477,-2480,-2486,-2494,-2503,-2510,-2514,-2514,-2511,-2507,-2503,-2499,-2497,-2497,
+-2498,-2498,-2495,-2490,-2484,-2480,-2478,-2476,-2472,-2464,-2454,-2443,-2435,-2431,-2430,-2428,-2422,-2412,-2397,-2381,-2365,
+-2350,-2337,-2324,-2310,-2296,-2281,-2266,-2251,-2237,-2222,-2207,-2192,-2177,-2162,-2146,-2129,-2111,-2092,-2074,-2059,-2043,
+-2027,-2008,-1988,-1968,-1949,-1932,-1915,-1898,-1880,-1863,-1847,-1832,-1816,-1798,-1780,-1760,-1741,-1724,-1709,-1702,-1705,
+-1721,-1745,-1770,-1784,-1782,-1766,-1746,-1729,-1721,-1716,-1709,-1697,-1683,-1673,-1670,-1671,-1666,-1651,-1627,-1603,-1592,
+-1595,-1607,-1618,-1616,-1600,-1573,-1544,-1515,-1486,-1455,-1421,-1386,-1355,-1330,-1313,-1302,-1295,-1294,-1304,-1327,-1361,
+-1400,-1435,-1460,-1473,-1477,-1478,-1479,-1483,-1486,-1484,-1477,-1465,-1451,-1441,-1437,-1440,-1448,-1458,-1465,-1467,-1461,
+-1451,-1439,-1429,-1420,-1410,-1393,-1370,-1345,-1327,-1319,-1321,-1323,-1319,-1306,-1289,-1272,-1257,-1238,-1205,-1157,-1103,
+-1059,-1033,-1023,-1013,-985,-939,-887,-849,-833,-830,-824,-808,-792,-801,-852,-938,-1024,-1068,-1047,-970,-869,
+-773,-696,-626,-546,-452,-356,-281,-243,-241,-260,-285,-310,-333,-358,-383,-403,-414,-420,-427,-442,-463,
+-484,-496,-496,-488,-479,-474,-473,-473,-471,-468,-463,-460,-458,-457,-456,-455,-454,-454,-457,-462,-469,
+-475,-476,-470,-458,-445,-437,-437,-439,-436,-421,-396,-371,-357,-362,-381,-408,-439,-477,-532,-613,-716,
+-829,-931,-1006,-1049,-1067,-1076,-1087,-1106,-1129,-1150,-1166,-1175,-1182,-1190,-1201,-1213,-1222,-1226,-1227,-1227,-1230,
+-1238,-1249,-1260,-1266,-1269,-1269,-1271,-1276,-1283,-1290,-1295,-1298,-1302,-1309,-1319,-1329,-1336,-1340,-1341,-1342,-1344,
+-1347,-1350,-1353,-1354,-1356,-1359,-1363,-1367,-1371,-1373,-1375,-1375,-1374,-1370,-1364,-1357,-1349,-1343,-1338,-1333,-1328,
+-1325,-1326,-1332,-1342,-1355,-1366,-1374,-1380,-1383,-1386,-1387,-1387,-1386,-1384,-1382,-1380,-1378,-1376,-1373,-1371,-1369,
+-1365,-1358,-1348,-1336,-1326,-1319,-1315,-1311,-1306,-1300,-1296,-1297,-1303,-1310,-1314,-1315,-1313,-1313,-1316,-1321,-1326,
+-1331,-1337,-1345,-1356,-1366,-1371,-1369,-1363,-1356,-1353,-1354,-1359,-1367,-1377,-1389,-1400,-1409,-1414,-1415,-1419,-1430,
+-1449,-1472,-1492,-1505,-1512,-1516,-1523,-1531,-1539,-1544,-1546,-1548,-1553,-1561,-1572,-1581,-1588,-1594,-1601,-1610,-1621,
+-1632,-1643,-1650,-1655,-1658,-1660,-1664,-1670,-1679,-1688,-1696,-1703,-1709,-1715,-1721,-1725,-1724,-1719,-1712,-1707,-1705,
+-1705,-1703,-1694,-1679,-1664,-1654,-1650,-1651,-1650,-1644,-1633,-1620,-1609,-1599,-1588,-1573,-1555,-1538,-1525,-1518,-1515,
+-1512,-1508,-1503,-1498,-1493,-1488,-1479,-1467,-1450,-1433,-1417,-1402,-1390,-1378,-1365,-1351,-1335,-1318,-1300,-1284,-1271,
+-1262,-1256,-1249,-1241,-1231,-1221,-1210,-1201,-1194,-1187,-1179,-1169,-1157,-1143,-1127,-1111,-1097,-1087,-1079,-1074,-1070,
+-1064,-1057,-1051,-1046,-1042,-1038,-1033,-1026,-1019,-1014,-1010,-1009,-1007,-1004,-999,-994,-990,-988,-986,-985,-983,
+-979,-974,-970,-965,-960,-955,-949,-943,-938,-935,-934,-936,-940,-945,-950,-953,-953,-951,-950,-950,-953,
+-958,-964,-970,-976,-982,-987,-990,-990,-986,-982,-978,-976,-975,-973,-968,-961,-953,-948,-947,-949,-950,
+-948,-942,-935,-929,-925,-922,-919,-915,-908,-899,-889,-878,-867,-856,-844,-832,-819,-805,-791,-779,-771,
+-766,-761,-755,-743,-726,-706,-688,-675,-668,-665,-665,-665,-664,-660,-655,-646,-632,-615,-596,-578,-561,
+-547,-531,-513,-493,-471,-451,-434,-417,-400,-379,-354,-327,-299,-272,-244,-217,-191,-168,-149,-134,-121,
+-110,-100,-91,-83,-75,-65,-54,-41,-27,-12,5,26,48,69,87,102,118,137,162,187,211,
+230,247,268,293,320,345,364,379,394,414,438,462,482,499,518,542,572,602,630,654,678,
+701,724,742,753,759,760,755,742,726,723,762,861,1019,1199,1352,1439,1460,1453,1468,1534,1641,
+1754,1835,1874,1883,1883,1884,1873,1833,1763,1680,1613,1580,1580,1593,1597,1583,1554,1520,1484,1442,1388,
+1322,1251,1191,1151,1136,1139,1152,1164,1170,1167,1157,1146,1141,1145,1153,1160,1158,1149,1136,1128,1127,
+1129,1128,1120,1110,1107,1114,1127,1134,1127,1104,1072,1040,1013,985,949,902,848,795,750,711,672,
+627,575,523,477,442,414,387,355,317,276,234,194,154,116,81,52,28,8,-10,-32,-56,
+-79,-100,-118,-136,-156,-177,-198,-216,-231,-242,-250,-257,-261,-264,-269,-276,-285,-296,-307,-315,-322,
+-327,-331,-333,-333,-330,-325,-319,-310,-297,-278,-252,-224,-196,-173,-158,-148,-142,-140,-143,-149,-158,
+-167,-172,-172,-167,-159,-148,-135,-120,-106,-95,-88,-85,-85,-85,-83,-77,-68,-56,-44,-30,-14,
+2,21,40,60,81,105,129,155,182,208,233,257,279,301,324,351,383,420,458,496,531,
+566,601,635,669,703,736,773,813,856,901,943,980,1012,1044,1076,1110,1145,1179,1212,1244,1277,
+1315,1356,1401,1444,1483,1514,1539,1559,1578,1599,1623,1650,1681,1714,1748,1783,1816,1848,1876,1905,1934,
+1966,1998,2028,2054,2077,2103,2131,2162,2192,2218,2239,2260,2284,2314,2347,2378,2406,2429,2452,2475,2498,
+2519,2538,2556,2573,2591,2607,2620,2628,2635,2645,2663,2686,2709,2726,2736,2742,2748,2758,2773,2791,2809,
+2824,2833,2832,2821,2801,2775,2749,2725,2702,2680,2658,2637,2620,2609,2602,2595,2586,2571,2553,2534,2517,
+2501,2486,2472,2457,2443,2430,2417,2404,2392,2382,2373,2364,2355,2345,2338,2334,2332,2331,2328,2323,2319,
+2316,2313,2331,2325,2314,2301,2288,2279,2272,2266,2259,2251,2245,2243,2247,2251,2254,2257,2263,2275,2293,
+2310,2323,2332,2343,2361,2383,2401,2408,2410,2420,2453,2507,2564,2596,2587,2547,2504,2491,2518,2571,2620,
+2643,2637,2616,2601,2601,2611,2621,2624,2622,2627,2644,2674,2711,2747,2775,2794,2807,2817,2828,2842,2862,
+2886,2912,2934,2951,2962,2971,2981,2991,3004,3018,3038,3064,3098,3134,3167,3192,3208,3217,3224,3230,3236,
+3240,3244,3245,3245,3244,3242,3241,3245,3255,3270,3287,3302,3313,3319,3320,3319,3317,3317,3321,3334,3352,
+3372,3387,3395,3400,3408,3424,3447,3473,3500,3528,3562,3608,3663,3719,3773,3824,3879,3940,3996,4030,4031,
+4003,3973,3977,4035,4138,4252,4335,4367,4354,4326,4313,4329,4364,4400,4419,4419,4404,4386,4370,4357,4347,
+4339,4335,4335,4335,4328,4312,4290,4270,4263,4271,4291,4313,4331,4343,4356,4373,4394,4411,4416,4408,4392,
+4379,4372,4370,4364,4351,4335,4325,4332,4352,4376,4390,4391,4386,4388,4404,4431,4460,4481,4494,4505,4518,
+4530,4536,4528,4509,4487,4472,4466,4464,4461,4455,4452,4458,4473,4491,4503,4504,4497,4487,4479,4473,4465,
+4452,4436,4422,4412,4408,4405,4402,4395,4385,4373,4360,4344,4325,4307,4289,4274,4258,4241,4219,4193,4165,
+4137,4111,4088,4067,4045,4022,3996,3965,3933,3901,3871,3845,3822,3800,3778,3756,3736,3718,3704,3690,3677,
+3663,3647,3629,3611,3591,3571,3550,3535,3531,3546,3587,3651,3728,3803,3862,3901,3922,3935,3949,3964,3979,
+3989,3995,3997,3996,3991,3976,3950,3916,3883,3855,3833,3809,3774,3724,3664,3599,3536,3476,3418,3364,3317,
+3281,3254,3233,3209,3181,3152,3126,3105,3086,3063,3033,2998,2965,2935,2910,2884,2856,2826,2798,2774,2754,
+2733,2708,2681,2654,2628,2601,2571,2537,2500,2466,2437,2412,2387,2358,2325,2291,2258,2225,2190,2150,2107,
+2067,2031,2000,1968,1935,1898,1862,1829,1799,1770,1736,1699,1660,1623,1589,1557,1524,1488,1450,1412,1376,
+1340,1302,1262,1220,1177,1136,1097,1057,1017,975,934,894,857,820,784,746,706,665,624,583,543,
+503,463,425,390,358,327,297,264,228,189,151,113,75,37,-2,-44,-88,-131,-173,-215,-260,
+-305,-349,-389,-424,-454,-484,-519,-560,-606,-652,-694,-732,-767,-803,-841,-880,-920,-957,-991,-1024,-1058,
+-1095,-1135,-1176,-1214,-1248,-1279,-1309,-1341,-1377,-1413,-1448,-1478,-1505,-1530,-1559,-1592,-1628,-1663,-1694,-1721,-1746,
+-1773,-1802,-1832,-1861,-1887,-1910,-1931,-1953,-1976,-2000,-2024,-2046,-2068,-2091,-2115,-2137,-2157,-2173,-2188,-2202,-2219,
+-2237,-2256,-2272,-2287,-2299,-2310,-2323,-2337,-2353,-2368,-2382,-2393,-2401,-2408,-2414,-2422,-2431,-2440,-2445,-2446,-2446,
+-2447,-2452,-2461,-2472,-2481,-2486,-2489,-2489,-2488,-2487,-2486,-2484,-2483,-2483,-2483,-2481,-2476,-2469,-2461,-2455,-2453,
+-2452,-2448,-2441,-2430,-2419,-2412,-2409,-2407,-2403,-2395,-2381,-2366,-2352,-2339,-2328,-2315,-2300,-2283,-2267,-2252,-2239,
+-2226,-2211,-2195,-2179,-2164,-2151,-2137,-2121,-2103,-2085,-2068,-2053,-2039,-2024,-2007,-1988,-1970,-1952,-1935,-1916,-1896,
+-1875,-1857,-1842,-1829,-1816,-1801,-1784,-1768,-1752,-1737,-1722,-1712,-1710,-1722,-1745,-1772,-1791,-1793,-1780,-1760,-1742,
+-1731,-1724,-1715,-1701,-1685,-1674,-1671,-1672,-1669,-1654,-1630,-1607,-1594,-1598,-1614,-1629,-1633,-1622,-1600,-1573,-1547,
+-1524,-1501,-1477,-1451,-1425,-1403,-1384,-1369,-1357,-1350,-1349,-1358,-1375,-1400,-1428,-1455,-1477,-1494,-1503,-1507,-1506,
+-1502,-1495,-1488,-1482,-1477,-1476,-1478,-1482,-1489,-1496,-1502,-1504,-1499,-1490,-1479,-1468,-1460,-1451,-1439,-1422,-1402,
+-1385,-1375,-1369,-1364,-1353,-1337,-1317,-1298,-1280,-1258,-1226,-1185,-1141,-1104,-1079,-1059,-1034,-997,-951,-910,-885,
+-875,-866,-848,-827,-825,-866,-953,-1059,-1136,-1144,-1076,-958,-836,-741,-673,-613,-540,-453,-372,-322,-312,
+-332,-362,-385,-400,-416,-438,-464,-484,-495,-500,-509,-527,-552,-573,-578,-568,-551,-539,-536,-540,-543,
+-539,-531,-522,-518,-518,-519,-519,-516,-513,-515,-523,-536,-550,-561,-563,-554,-537,-519,-507,-505,-508,
+-507,-494,-470,-444,-426,-425,-438,-461,-489,-527,-586,-672,-783,-902,-1007,-1083,-1125,-1143,-1154,-1169,-1192,
+-1216,-1236,-1247,-1252,-1256,-1263,-1276,-1290,-1301,-1307,-1308,-1308,-1312,-1322,-1336,-1349,-1357,-1359,-1356,-1355,-1356,
+-1361,-1367,-1371,-1373,-1376,-1380,-1387,-1394,-1400,-1402,-1402,-1402,-1402,-1402,-1403,-1403,-1404,-1406,-1410,-1415,-1419,
+-1419,-1418,-1416,-1416,-1416,-1415,-1412,-1408,-1404,-1400,-1396,-1392,-1385,-1379,-1374,-1375,-1381,-1391,-1403,-1415,-1426,
+-1436,-1441,-1443,-1440,-1436,-1435,-1437,-1442,-1446,-1446,-1442,-1435,-1428,-1421,-1414,-1404,-1392,-1381,-1374,-1370,-1366,
+-1360,-1351,-1343,-1339,-1340,-1345,-1349,-1350,-1347,-1345,-1344,-1346,-1349,-1353,-1360,-1372,-1386,-1400,-1410,-1411,-1407,
+-1400,-1394,-1388,-1380,-1371,-1362,-1356,-1359,-1369,-1386,-1405,-1425,-1447,-1470,-1492,-1509,-1520,-1525,-1529,-1534,-1542,
+-1550,-1557,-1561,-1563,-1568,-1576,-1587,-1599,-1608,-1614,-1619,-1624,-1632,-1642,-1652,-1661,-1667,-1669,-1669,-1671,-1675,
+-1682,-1690,-1697,-1702,-1707,-1713,-1719,-1725,-1728,-1727,-1723,-1719,-1719,-1719,-1718,-1711,-1701,-1689,-1681,-1677,-1675,
+-1672,-1664,-1652,-1640,-1630,-1621,-1610,-1595,-1578,-1561,-1547,-1537,-1527,-1518,-1509,-1500,-1495,-1492,-1488,-1481,-1469,
+-1455,-1439,-1424,-1410,-1395,-1379,-1361,-1344,-1326,-1309,-1292,-1277,-1264,-1254,-1246,-1238,-1229,-1218,-1208,-1198,-1190,
+-1184,-1179,-1173,-1166,-1158,-1149,-1138,-1126,-1114,-1103,-1095,-1089,-1083,-1075,-1065,-1056,-1048,-1042,-1036,-1030,-1021,
+-1010,-1001,-995,-992,-989,-986,-982,-978,-976,-976,-978,-978,-977,-974,-971,-968,-965,-961,-956,-949,-943,
+-938,-936,-936,-939,-943,-947,-952,-955,-957,-958,-959,-960,-963,-966,-970,-975,-980,-985,-990,-994,-996,
+-994,-990,-986,-984,-983,-981,-977,-973,-968,-965,-963,-961,-958,-953,-947,-942,-939,-937,-935,-933,-928,
+-922,-916,-909,-902,-892,-880,-867,-853,-838,-823,-808,-793,-781,-771,-764,-756,-746,-732,-716,-702,-691,
+-685,-681,-679,-678,-677,-674,-669,-659,-643,-623,-602,-584,-569,-555,-541,-523,-502,-482,-463,-446,-429,
+-410,-388,-362,-335,-308,-281,-254,-228,-204,-183,-166,-152,-139,-128,-120,-113,-108,-100,-89,-74,-58,
+-42,-25,-5,17,42,64,83,97,112,131,155,180,201,216,229,246,270,298,324,343,359,
+375,396,420,442,461,477,497,525,558,589,614,633,652,674,698,719,729,726,715,700,689,
+690,717,789,916,1088,1271,1416,1493,1500,1473,1460,1488,1556,1633,1692,1723,1740,1758,1781,1793,1775,
+1723,1655,1598,1569,1564,1566,1553,1522,1481,1445,1416,1386,1344,1285,1218,1160,1124,1116,1127,1146,1160,
+1166,1161,1149,1139,1133,1136,1143,1150,1152,1146,1137,1131,1130,1131,1129,1121,1111,1105,1108,1117,1123,
+1118,1100,1072,1044,1020,999,972,937,892,844,797,752,708,661,613,567,528,497,471,443,411,
+374,335,296,257,218,179,142,111,85,64,44,21,-2,-27,-52,-74,-95,-115,-134,-151,-164,
+-173,-181,-188,-195,-203,-212,-220,-230,-242,-254,-266,-276,-282,-286,-288,-288,-288,-286,-284,-280,-272,
+-258,-237,-211,-184,-160,-143,-133,-127,-121,-116,-112,-110,-111,-113,-113,-109,-99,-86,-71,-56,-44,
+-36,-32,-30,-29,-26,-21,-13,-3,6,16,27,40,56,75,95,115,133,151,169,189,212,
+237,262,287,309,331,354,380,410,444,479,515,549,583,617,652,685,717,746,775,808,845,
+885,926,964,997,1026,1054,1084,1117,1152,1188,1223,1256,1289,1322,1359,1399,1441,1480,1512,1537,1555,
+1573,1595,1622,1653,1686,1719,1751,1784,1815,1846,1874,1902,1930,1961,1994,2026,2055,2080,2104,2128,2155,
+2181,2204,2223,2240,2258,2283,2313,2346,2378,2406,2430,2451,2469,2486,2502,2519,2538,2557,2576,2592,2606,
+2621,2640,2663,2688,2712,2731,2747,2760,2772,2783,2793,2801,2807,2813,2818,2817,2809,2792,2768,2743,2721,
+2703,2689,2676,2664,2652,2642,2631,2615,2595,2571,2547,2526,2508,2493,2477,2463,2451,2442,2437,2433,2427,
+2419,2409,2399,2389,2380,2373,2367,2363,2360,2357,2352,2346,2340,2336,2331,2342,2335,2326,2313,2301,2291,
+2287,2285,2283,2280,2275,2272,2271,2274,2280,2289,2301,2316,2331,2344,2355,2367,2384,2407,2430,2442,2442,
+2439,2450,2488,2548,2605,2630,2608,2551,2493,2465,2481,2526,2568,2585,2574,2552,2543,2556,2585,2616,2636,
+2645,2654,2672,2702,2742,2781,2811,2828,2834,2833,2834,2841,2859,2886,2916,2942,2959,2968,2972,2978,2989,
+3003,3021,3041,3066,3098,3134,3169,3198,3218,3227,3231,3233,3237,3243,3249,3254,3257,3257,3257,3258,3261,
+3267,3277,3290,3306,3325,3342,3352,3353,3345,3335,3331,3341,3362,3385,3403,3411,3416,3429,3455,3490,3525,
+3550,3566,3584,3614,3662,3726,3796,3865,3926,3974,4003,4003,3978,3945,3931,3964,4047,4160,4262,4321,4327,
+4299,4269,4263,4285,4320,4349,4363,4363,4357,4350,4342,4331,4316,4305,4303,4310,4318,4318,4305,4283,4265,
+4262,4274,4296,4316,4330,4342,4358,4382,4408,4426,4429,4417,4401,4392,4392,4396,4391,4374,4350,4333,4334,
+4352,4376,4393,4397,4394,4393,4403,4422,4443,4460,4472,4482,4495,4507,4513,4507,4493,4478,4470,4468,4470,
+4470,4466,4464,4467,4479,4495,4508,4511,4506,4495,4484,4474,4464,4452,4440,4430,4424,4421,4417,4410,4398,
+4382,4366,4349,4334,4319,4305,4292,4279,4263,4244,4221,4194,4166,4138,4112,4088,4065,4043,4019,3992,3964,
+3936,3910,3887,3865,3842,3819,3797,3779,3766,3758,3751,3741,3723,3699,3671,3646,3626,3612,3603,3595,3592,
+3596,3615,3653,3706,3764,3817,3855,3881,3902,3927,3960,3994,4021,4035,4037,4033,4028,4021,4007,3983,3951,
+3917,3887,3860,3827,3781,3719,3648,3580,3522,3475,3435,3397,3360,3326,3296,3269,3241,3211,3180,3153,3133,
+3115,3096,3071,3040,3006,2975,2947,2921,2894,2866,2840,2816,2795,2773,2748,2720,2690,2660,2631,2599,2565,
+2529,2495,2462,2432,2402,2371,2338,2306,2276,2244,2210,2171,2130,2090,2053,2020,1987,1952,1916,1881,1849,
+1821,1793,1762,1725,1687,1649,1614,1581,1547,1510,1470,1430,1392,1355,1319,1282,1244,1204,1164,1123,1082,
+1040,997,957,919,883,849,814,776,736,695,654,613,573,534,495,457,421,387,355,323,290,
+255,218,181,143,105,66,25,-16,-60,-104,-148,-193,-237,-280,-319,-354,-386,-417,-452,-492,-535,
+-578,-619,-657,-693,-730,-769,-808,-848,-885,-921,-956,-991,-1028,-1065,-1102,-1138,-1171,-1203,-1235,-1269,-1305,
+-1342,-1378,-1411,-1440,-1465,-1490,-1518,-1551,-1587,-1623,-1656,-1685,-1711,-1739,-1768,-1798,-1827,-1853,-1875,-1896,-1918,
+-1940,-1963,-1985,-2006,-2028,-2051,-2075,-2098,-2118,-2134,-2148,-2164,-2183,-2203,-2223,-2240,-2253,-2264,-2275,-2288,-2304,
+-2322,-2338,-2353,-2365,-2373,-2380,-2386,-2394,-2402,-2410,-2414,-2414,-2413,-2414,-2421,-2432,-2444,-2455,-2461,-2465,-2467,
+-2469,-2471,-2472,-2471,-2469,-2467,-2465,-2464,-2459,-2451,-2441,-2433,-2429,-2430,-2430,-2428,-2419,-2408,-2397,-2391,-2387,
+-2384,-2377,-2366,-2353,-2341,-2330,-2321,-2309,-2293,-2275,-2257,-2241,-2227,-2213,-2197,-2180,-2163,-2148,-2136,-2123,-2109,
+-2093,-2077,-2061,-2046,-2032,-2017,-2001,-1985,-1969,-1954,-1939,-1920,-1899,-1878,-1859,-1843,-1829,-1815,-1800,-1785,-1772,
+-1760,-1748,-1734,-1721,-1715,-1722,-1744,-1772,-1794,-1800,-1788,-1768,-1749,-1737,-1729,-1720,-1704,-1684,-1668,-1662,-1662,
+-1662,-1652,-1632,-1610,-1597,-1600,-1617,-1636,-1646,-1641,-1624,-1602,-1581,-1565,-1554,-1543,-1529,-1511,-1490,-1469,-1449,
+-1433,-1420,-1409,-1401,-1396,-1397,-1407,-1427,-1456,-1487,-1513,-1528,-1531,-1524,-1516,-1510,-1510,-1515,-1521,-1525,-1526,
+-1526,-1526,-1527,-1527,-1524,-1517,-1508,-1498,-1491,-1486,-1480,-1471,-1457,-1442,-1427,-1413,-1399,-1381,-1359,-1335,-1314,
+-1294,-1275,-1251,-1221,-1187,-1154,-1123,-1091,-1055,-1017,-981,-955,-939,-923,-897,-864,-844,-864,-940,-1057,-1166,
+-1216,-1176,-1059,-914,-792,-716,-673,-630,-564,-481,-408,-373,-382,-418,-456,-478,-489,-499,-516,-540,-560,
+-571,-579,-591,-613,-636,-649,-642,-621,-599,-589,-592,-601,-603,-595,-581,-569,-565,-569,-572,-571,-565,
+-561,-564,-577,-597,-618,-631,-634,-625,-610,-595,-588,-590,-597,-600,-592,-572,-548,-530,-527,-538,-557,
+-582,-619,-677,-764,-874,-992,-1095,-1167,-1205,-1222,-1233,-1250,-1274,-1300,-1320,-1331,-1335,-1339,-1346,-1358,-1370,
+-1380,-1385,-1387,-1388,-1393,-1402,-1415,-1428,-1437,-1442,-1443,-1442,-1443,-1446,-1448,-1448,-1447,-1447,-1449,-1454,-1459,
+-1462,-1463,-1461,-1460,-1459,-1459,-1458,-1457,-1457,-1459,-1465,-1470,-1472,-1471,-1466,-1461,-1459,-1459,-1458,-1455,-1451,
+-1448,-1447,-1448,-1450,-1448,-1443,-1437,-1432,-1431,-1435,-1442,-1452,-1466,-1480,-1493,-1499,-1500,-1498,-1496,-1498,-1503,
+-1507,-1505,-1499,-1490,-1482,-1478,-1474,-1467,-1455,-1441,-1428,-1420,-1415,-1410,-1403,-1396,-1390,-1389,-1390,-1392,-1391,
+-1387,-1382,-1377,-1374,-1373,-1374,-1379,-1389,-1404,-1420,-1434,-1443,-1448,-1450,-1452,-1449,-1437,-1416,-1391,-1369,-1360,
+-1368,-1390,-1419,-1448,-1473,-1492,-1507,-1517,-1524,-1529,-1534,-1541,-1550,-1559,-1568,-1575,-1581,-1589,-1599,-1611,-1622,
+-1632,-1637,-1641,-1643,-1647,-1654,-1661,-1669,-1675,-1679,-1681,-1682,-1685,-1688,-1692,-1694,-1695,-1696,-1699,-1706,-1714,
+-1721,-1725,-1725,-1724,-1724,-1725,-1724,-1721,-1714,-1707,-1702,-1699,-1696,-1692,-1685,-1676,-1667,-1658,-1650,-1639,-1625,
+-1610,-1594,-1580,-1567,-1552,-1536,-1520,-1507,-1499,-1494,-1490,-1483,-1472,-1458,-1444,-1431,-1417,-1401,-1383,-1364,-1344,
+-1326,-1309,-1292,-1276,-1261,-1248,-1237,-1227,-1218,-1207,-1196,-1186,-1178,-1170,-1163,-1157,-1151,-1147,-1143,-1139,-1134,
+-1127,-1119,-1112,-1105,-1099,-1091,-1081,-1070,-1060,-1052,-1045,-1036,-1026,-1015,-1005,-996,-989,-984,-978,-972,-968,
+-967,-969,-971,-972,-970,-967,-964,-962,-961,-960,-955,-949,-942,-938,-937,-938,-941,-943,-946,-949,-953,
+-957,-962,-966,-970,-973,-976,-979,-982,-985,-989,-994,-998,-1000,-1001,-1000,-999,-997,-996,-995,-993,-991,
+-989,-987,-984,-979,-971,-963,-956,-953,-952,-952,-951,-948,-942,-937,-932,-928,-923,-915,-904,-890,-875,
+-859,-842,-825,-807,-791,-777,-765,-755,-743,-729,-716,-704,-695,-689,-684,-681,-678,-677,-676,-671,-661,
+-646,-626,-607,-591,-579,-567,-554,-537,-518,-498,-479,-462,-443,-422,-399,-375,-350,-325,-299,-273,-247,
+-223,-204,-187,-172,-157,-145,-135,-129,-124,-117,-104,-88,-71,-54,-37,-17,6,33,57,77,92,
+107,126,149,172,190,201,213,230,255,284,309,328,342,358,379,404,428,448,466,487,516,
+549,578,599,613,629,652,680,701,707,694,671,648,638,653,704,803,953,1140,1329,1474,1545,
+1546,1510,1484,1495,1540,1592,1624,1632,1632,1647,1681,1718,1732,1709,1658,1603,1563,1541,1524,1497,1456,
+1411,1373,1346,1321,1287,1240,1186,1143,1122,1126,1144,1164,1174,1173,1162,1147,1133,1125,1123,1128,1136,
+1142,1144,1143,1142,1143,1145,1142,1134,1122,1111,1108,1111,1117,1116,1104,1083,1058,1037,1019,1000,974,
+940,899,853,808,763,721,682,647,617,591,565,534,496,455,412,370,329,286,242,197,155,
+119,90,66,44,24,3,-15,-34,-52,-69,-84,-97,-105,-111,-115,-121,-129,-140,-151,-163,-175,
+-188,-202,-215,-226,-234,-237,-236,-234,-233,-234,-235,-234,-227,-213,-192,-167,-142,-121,-108,-101,-97,
+-93,-86,-77,-67,-58,-50,-43,-33,-20,-4,10,24,33,36,37,36,37,40,47,56,66,
+77,88,100,115,132,151,170,189,206,223,239,257,277,299,323,346,369,393,419,449,480,
+512,544,573,602,631,660,689,714,736,757,781,811,849,892,935,976,1012,1042,1069,1095,1122,
+1153,1188,1223,1258,1289,1318,1347,1380,1416,1454,1489,1517,1541,1562,1587,1617,1649,1682,1713,1743,1773,
+1805,1838,1868,1895,1919,1944,1973,2003,2034,2062,2086,2109,2132,2156,2179,2200,2219,2239,2262,2291,2324,
+2357,2387,2412,2432,2449,2465,2482,2500,2520,2540,2560,2580,2601,2625,2651,2676,2698,2715,2728,2740,2753,
+2768,2780,2788,2792,2795,2801,2808,2813,2812,2800,2782,2760,2739,2721,2705,2689,2675,2661,2647,2630,2610,
+2585,2559,2537,2520,2507,2495,2483,2471,2461,2457,2457,2457,2453,2445,2433,2421,2410,2402,2396,2390,2386,
+2381,2376,2369,2361,2354,2348,2342,2348,2344,2339,2332,2323,2315,2310,2309,2308,2306,2303,2300,2300,2306,
+2316,2329,2342,2355,2366,2377,2392,2413,2438,2461,2472,2466,2448,2434,2442,2482,2539,2585,2593,2553,2485,
+2426,2408,2438,2494,2544,2564,2555,2538,2537,2563,2606,2649,2676,2687,2693,2707,2736,2774,2813,2842,2856,
+2857,2851,2846,2849,2865,2889,2918,2942,2959,2968,2975,2984,2999,3016,3035,3053,3075,3102,3136,3172,3204,
+3226,3236,3239,3240,3245,3253,3262,3268,3271,3273,3275,3280,3285,3290,3293,3299,3313,3335,3361,3381,3387,
+3377,3361,3352,3359,3381,3407,3425,3432,3437,3454,3489,3537,3580,3606,3612,3613,3630,3674,3743,3824,3898,
+3952,3979,3979,3958,3931,3917,3937,4003,4101,4204,4277,4299,4278,4241,4217,4222,4250,4283,4305,4311,4310,
+4310,4313,4314,4309,4298,4289,4290,4300,4310,4309,4294,4272,4255,4256,4273,4298,4319,4334,4345,4361,4384,
+4408,4425,4430,4424,4417,4417,4423,4429,4423,4404,4377,4357,4352,4362,4380,4393,4397,4394,4394,4403,4419,
+4437,4453,4465,4475,4486,4497,4502,4500,4491,4480,4473,4472,4475,4478,4480,4481,4484,4491,4500,4506,4506,
+4500,4490,4478,4466,4455,4446,4439,4434,4430,4427,4421,4410,4395,4377,4359,4342,4327,4315,4303,4292,4280,
+4264,4244,4219,4192,4163,4134,4109,4085,4063,4041,4017,3991,3965,3941,3920,3900,3880,3857,3831,3806,3788,
+3780,3781,3785,3783,3770,3745,3713,3681,3656,3642,3637,3639,3647,3662,3685,3717,3752,3785,3810,3827,3843,
+3868,3908,3959,4010,4048,4065,4065,4057,4050,4044,4035,4017,3990,3959,3926,3890,3845,3785,3711,3634,3567,
+3518,3485,3461,3436,3408,3376,3346,3318,3290,3258,3225,3193,3166,3145,3127,3106,3081,3052,3021,2991,2961,
+2931,2902,2875,2851,2830,2810,2786,2759,2727,2693,2659,2625,2590,2555,2522,2490,2458,2425,2391,2355,2321,
+2288,2256,2223,2188,2150,2111,2075,2041,2007,1973,1938,1903,1870,1839,1809,1777,1743,1706,1670,1635,1601,
+1566,1529,1490,1449,1409,1371,1335,1300,1263,1226,1186,1146,1105,1064,1024,985,948,913,878,842,805,
+766,725,684,643,603,566,529,493,457,420,384,348,313,279,244,209,172,135,96,56,15,
+-27,-72,-119,-165,-210,-250,-285,-315,-346,-381,-421,-465,-509,-550,-587,-621,-656,-694,-735,-775,-813,
+-848,-882,-918,-955,-994,-1031,-1065,-1096,-1127,-1160,-1195,-1232,-1270,-1307,-1342,-1374,-1402,-1428,-1454,-1482,-1513,
+-1547,-1582,-1615,-1644,-1672,-1700,-1730,-1759,-1787,-1813,-1836,-1858,-1882,-1906,-1929,-1951,-1971,-1992,-2014,-2039,-2062,
+-2082,-2098,-2114,-2131,-2152,-2174,-2195,-2211,-2222,-2231,-2242,-2255,-2272,-2290,-2307,-2321,-2333,-2343,-2350,-2357,-2364,
+-2371,-2376,-2380,-2381,-2383,-2387,-2397,-2411,-2425,-2436,-2441,-2442,-2442,-2444,-2448,-2451,-2452,-2451,-2449,-2447,-2446,
+-2443,-2436,-2427,-2418,-2413,-2413,-2415,-2415,-2410,-2400,-2389,-2381,-2375,-2371,-2364,-2353,-2339,-2327,-2317,-2308,-2298,
+-2284,-2267,-2248,-2231,-2215,-2200,-2185,-2167,-2151,-2136,-2123,-2111,-2098,-2083,-2068,-2054,-2041,-2027,-2012,-1996,-1981,
+-1967,-1955,-1941,-1925,-1906,-1886,-1868,-1852,-1836,-1819,-1800,-1783,-1770,-1761,-1751,-1739,-1727,-1720,-1726,-1747,-1776,
+-1800,-1806,-1794,-1772,-1751,-1737,-1730,-1722,-1706,-1684,-1664,-1654,-1654,-1657,-1653,-1639,-1620,-1605,-1605,-1620,-1642,
+-1659,-1664,-1654,-1638,-1622,-1612,-1609,-1609,-1603,-1590,-1570,-1545,-1523,-1504,-1489,-1472,-1449,-1421,-1395,-1382,-1390,
+-1420,-1465,-1510,-1543,-1558,-1557,-1549,-1545,-1548,-1556,-1564,-1567,-1563,-1555,-1549,-1547,-1546,-1545,-1540,-1532,-1524,
+-1520,-1519,-1518,-1514,-1504,-1488,-1469,-1450,-1431,-1410,-1386,-1361,-1337,-1314,-1293,-1271,-1245,-1215,-1182,-1147,-1113,
+-1081,-1054,-1034,-1019,-1002,-973,-931,-891,-879,-922,-1018,-1134,-1216,-1217,-1129,-987,-849,-761,-730,-724,-699,
+-636,-548,-473,-442,-459,-504,-548,-574,-586,-595,-611,-630,-645,-652,-657,-668,-685,-701,-703,-687,-661,
+-640,-636,-645,-656,-655,-642,-623,-611,-609,-615,-618,-614,-605,-600,-605,-623,-648,-673,-691,-697,-694,
+-687,-681,-683,-692,-704,-712,-707,-690,-669,-653,-649,-658,-675,-699,-733,-787,-866,-968,-1076,-1170,-1236,
+-1273,-1293,-1309,-1330,-1357,-1385,-1406,-1420,-1428,-1434,-1441,-1449,-1456,-1461,-1464,-1466,-1468,-1473,-1480,-1490,-1500,
+-1510,-1517,-1522,-1525,-1527,-1527,-1525,-1521,-1517,-1514,-1514,-1516,-1519,-1521,-1520,-1519,-1518,-1518,-1517,-1516,-1513,
+-1511,-1512,-1516,-1521,-1524,-1523,-1519,-1515,-1512,-1509,-1505,-1499,-1491,-1486,-1486,-1492,-1501,-1507,-1508,-1505,-1500,
+-1494,-1490,-1489,-1493,-1504,-1519,-1536,-1550,-1557,-1559,-1558,-1558,-1559,-1559,-1556,-1549,-1542,-1539,-1539,-1540,-1535,
+-1522,-1504,-1486,-1473,-1466,-1462,-1458,-1452,-1447,-1443,-1440,-1438,-1434,-1428,-1421,-1415,-1409,-1404,-1401,-1401,-1406,
+-1416,-1429,-1442,-1455,-1469,-1484,-1499,-1509,-1507,-1491,-1465,-1439,-1425,-1427,-1444,-1467,-1488,-1503,-1511,-1516,-1522,
+-1530,-1540,-1552,-1562,-1571,-1578,-1584,-1590,-1598,-1607,-1619,-1631,-1643,-1654,-1661,-1667,-1670,-1672,-1674,-1676,-1679,
+-1682,-1685,-1688,-1691,-1694,-1697,-1697,-1696,-1692,-1689,-1688,-1692,-1700,-1709,-1717,-1722,-1725,-1726,-1727,-1728,-1726,
+-1723,-1719,-1714,-1711,-1708,-1704,-1699,-1694,-1690,-1685,-1678,-1667,-1653,-1637,-1623,-1610,-1597,-1581,-1563,-1543,-1526,
+-1514,-1507,-1500,-1491,-1479,-1465,-1451,-1438,-1425,-1410,-1392,-1372,-1352,-1334,-1316,-1298,-1279,-1260,-1243,-1229,-1218,
+-1208,-1199,-1189,-1179,-1170,-1161,-1152,-1143,-1137,-1133,-1132,-1131,-1129,-1126,-1120,-1113,-1107,-1101,-1094,-1086,-1077,
+-1068,-1060,-1053,-1046,-1038,-1029,-1019,-1011,-1002,-993,-984,-976,-971,-969,-969,-970,-969,-965,-960,-956,-955,
+-955,-954,-951,-946,-940,-938,-938,-940,-943,-944,-946,-948,-952,-959,-965,-971,-975,-978,-981,-983,-986,
+-990,-993,-997,-1000,-1003,-1005,-1007,-1010,-1011,-1013,-1013,-1012,-1011,-1009,-1007,-1002,-996,-987,-979,-972,-969,
+-969,-968,-966,-960,-953,-947,-943,-940,-936,-930,-921,-909,-895,-880,-863,-844,-825,-806,-788,-773,-758,
+-742,-727,-713,-702,-693,-686,-680,-674,-671,-670,-670,-668,-662,-649,-634,-618,-606,-596,-586,-573,-557,
+-538,-519,-500,-481,-461,-439,-416,-394,-372,-348,-323,-295,-269,-246,-227,-211,-195,-178,-161,-148,-140,
+-133,-126,-114,-99,-83,-68,-53,-34,-11,15,41,62,80,96,116,139,160,175,187,200,219,
+245,274,297,313,326,342,365,394,421,443,463,486,514,544,570,587,600,616,639,664,680,
+678,657,627,602,596,618,678,787,946,1141,1336,1487,1562,1564,1529,1505,1522,1572,1623,1644,1628,
+1599,1590,1617,1666,1704,1706,1667,1605,1546,1502,1469,1437,1398,1357,1321,1293,1268,1239,1202,1165,1140,
+1135,1148,1166,1179,1180,1169,1154,1138,1125,1115,1111,1112,1119,1129,1139,1147,1152,1157,1159,1158,1150,
+1137,1122,1111,1108,1111,1111,1105,1090,1070,1052,1037,1024,1007,983,950,911,870,833,801,773,749,
+726,702,673,638,596,551,505,460,414,366,312,255,197,144,99,64,39,20,7,-3,-13,
+-25,-37,-50,-62,-70,-75,-78,-80,-85,-91,-100,-109,-119,-130,-142,-155,-168,-176,-180,-180,-178,
+-176,-176,-176,-175,-169,-157,-139,-118,-97,-79,-66,-56,-49,-42,-33,-21,-7,8,22,36,49,
+61,72,82,89,93,95,96,97,99,102,107,113,122,133,149,166,184,201,216,229,243,
+259,277,297,318,340,361,381,401,421,445,474,505,538,569,596,618,638,658,678,696,710,
+723,736,755,783,821,866,914,963,1009,1049,1082,1109,1131,1154,1182,1215,1249,1279,1304,1325,1348,
+1376,1412,1450,1485,1516,1543,1571,1602,1635,1667,1696,1725,1756,1790,1826,1858,1884,1904,1922,1943,1970,
+2001,2032,2059,2083,2105,2128,2154,2181,2208,2235,2263,2291,2321,2350,2376,2398,2416,2433,2450,2469,2490,
+2510,2529,2548,2568,2591,2619,2648,2673,2692,2702,2709,2716,2727,2740,2753,2763,2772,2782,2793,2806,2815,
+2817,2811,2797,2779,2760,2739,2715,2691,2668,2649,2633,2619,2600,2579,2556,2538,2527,2520,2514,2506,2496,
+2487,2482,2480,2477,2471,2459,2446,2434,2425,2418,2413,2408,2402,2397,2390,2382,2372,2362,2354,2348,2358,
+2357,2356,2352,2345,2335,2327,2322,2320,2320,2321,2324,2331,2342,2356,2369,2380,2389,2398,2412,2433,2458,
+2481,2489,2478,2448,2414,2397,2412,2457,2511,2543,2530,2472,2398,2346,2345,2394,2467,2530,2560,2563,2558,
+2569,2603,2648,2686,2705,2708,2708,2718,2744,2781,2817,2843,2855,2857,2855,2855,2862,2876,2897,2919,2940,
+2956,2968,2980,2995,3013,3033,3052,3069,3089,3114,3146,3182,3214,3236,3246,3250,3253,3261,3272,3282,3287,
+3288,3289,3294,3304,3315,3321,3322,3322,3330,3352,3383,3409,3419,3410,3393,3383,3391,3415,3441,3457,3460,
+3462,3480,3521,3576,3624,3651,3654,3652,3666,3709,3778,3854,3915,3947,3949,3931,3910,3903,3925,3982,4068,
+4163,4240,4276,4268,4232,4196,4183,4198,4228,4256,4270,4271,4268,4270,4276,4281,4282,4279,4281,4289,4302,
+4308,4300,4278,4253,4239,4245,4269,4300,4327,4345,4358,4372,4389,4407,4420,4426,4428,4430,4437,4446,4451,
+4446,4430,4408,4389,4378,4377,4381,4383,4382,4382,4386,4399,4417,4438,4456,4470,4481,4490,4498,4503,4502,
+4496,4488,4480,4477,4479,4484,4491,4497,4501,4503,4503,4502,4499,4494,4487,4479,4469,4460,4452,4446,4441,
+4434,4426,4416,4403,4388,4372,4356,4340,4325,4311,4299,4287,4274,4257,4236,4210,4182,4152,4125,4100,4079,
+4059,4040,4019,3995,3970,3946,3924,3903,3881,3856,3828,3803,3787,3783,3790,3802,3810,3805,3787,3758,3726,
+3697,3677,3667,3667,3674,3689,3710,3734,3756,3773,3782,3789,3803,3834,3885,3949,4011,4057,4080,4083,4077,
+4070,4066,4061,4050,4030,4002,3969,3928,3875,3806,3727,3649,3585,3542,3515,3495,3470,3439,3406,3377,3354,
+3332,3307,3276,3241,3208,3181,3159,3139,3117,3091,3060,3028,2996,2963,2931,2902,2877,2857,2838,2817,2791,
+2760,2725,2688,2651,2615,2580,2548,2517,2487,2455,2420,2383,2344,2307,2272,2238,2204,2168,2132,2095,2060,
+2027,1996,1963,1929,1894,1859,1824,1790,1757,1723,1689,1654,1618,1582,1545,1507,1469,1430,1392,1355,1319,
+1282,1245,1206,1166,1127,1089,1054,1018,983,946,908,870,832,793,752,711,670,632,596,563,529,
+494,455,415,376,339,304,270,235,199,161,123,83,43,0,-45,-92,-138,-182,-219,-251,-281,
+-312,-348,-391,-436,-481,-521,-556,-591,-627,-666,-707,-746,-781,-813,-846,-881,-919,-957,-993,-1025,-1056,
+-1088,-1124,-1162,-1201,-1237,-1270,-1301,-1331,-1360,-1389,-1418,-1448,-1479,-1511,-1543,-1575,-1604,-1633,-1663,-1693,-1722,
+-1750,-1774,-1797,-1820,-1845,-1871,-1896,-1918,-1938,-1957,-1978,-2001,-2024,-2045,-2064,-2082,-2101,-2124,-2146,-2165,-2178,
+-2186,-2194,-2206,-2222,-2241,-2259,-2275,-2289,-2301,-2311,-2321,-2329,-2336,-2342,-2346,-2349,-2353,-2358,-2366,-2378,-2394,
+-2409,-2420,-2423,-2421,-2418,-2417,-2421,-2427,-2432,-2434,-2434,-2433,-2432,-2430,-2425,-2418,-2410,-2404,-2403,-2403,-2403,
+-2399,-2392,-2383,-2376,-2371,-2365,-2356,-2343,-2327,-2312,-2301,-2292,-2284,-2272,-2257,-2240,-2223,-2208,-2194,-2179,-2164,
+-2148,-2134,-2121,-2108,-2095,-2081,-2067,-2054,-2043,-2030,-2016,-2001,-1985,-1970,-1957,-1943,-1927,-1911,-1894,-1879,-1864,
+-1848,-1829,-1808,-1788,-1773,-1764,-1756,-1745,-1734,-1727,-1734,-1756,-1786,-1810,-1817,-1803,-1777,-1752,-1737,-1730,-1723,
+-1710,-1689,-1668,-1656,-1656,-1661,-1662,-1652,-1634,-1618,-1615,-1627,-1652,-1676,-1691,-1692,-1683,-1672,-1665,-1665,-1666,
+-1661,-1646,-1622,-1596,-1574,-1558,-1546,-1528,-1498,-1454,-1407,-1374,-1369,-1397,-1448,-1507,-1555,-1582,-1590,-1587,-1584,
+-1586,-1592,-1596,-1595,-1587,-1578,-1571,-1569,-1569,-1568,-1564,-1556,-1550,-1548,-1551,-1554,-1551,-1540,-1522,-1500,-1480,
+-1462,-1444,-1425,-1401,-1375,-1347,-1318,-1289,-1257,-1224,-1192,-1162,-1136,-1116,-1102,-1090,-1075,-1049,-1010,-966,-936,
+-944,-999,-1085,-1163,-1187,-1132,-1015,-884,-792,-766,-788,-813,-797,-728,-634,-557,-529,-550,-597,-640,-666,
+-678,-689,-705,-721,-730,-731,-729,-733,-743,-750,-745,-724,-698,-681,-680,-690,-698,-695,-679,-661,-652,
+-654,-661,-663,-657,-646,-641,-648,-670,-700,-731,-756,-772,-780,-783,-786,-793,-804,-816,-824,-821,-807,
+-787,-773,-770,-780,-799,-824,-857,-906,-975,-1062,-1154,-1235,-1295,-1333,-1359,-1382,-1409,-1439,-1466,-1489,-1505,
+-1519,-1530,-1540,-1546,-1548,-1548,-1548,-1549,-1553,-1557,-1562,-1567,-1573,-1580,-1587,-1592,-1595,-1596,-1594,-1590,-1584,
+-1579,-1575,-1573,-1574,-1577,-1579,-1579,-1580,-1580,-1581,-1581,-1577,-1571,-1565,-1561,-1562,-1566,-1571,-1573,-1572,-1570,
+-1567,-1564,-1557,-1548,-1537,-1530,-1529,-1536,-1547,-1557,-1564,-1566,-1563,-1558,-1553,-1548,-1546,-1550,-1560,-1574,-1589,
+-1600,-1605,-1606,-1605,-1605,-1605,-1604,-1601,-1599,-1598,-1599,-1599,-1595,-1583,-1567,-1549,-1536,-1527,-1522,-1516,-1509,
+-1500,-1492,-1485,-1479,-1474,-1467,-1461,-1454,-1447,-1441,-1435,-1430,-1429,-1431,-1436,-1445,-1456,-1472,-1493,-1517,-1539,
+-1552,-1554,-1545,-1532,-1523,-1522,-1527,-1533,-1535,-1532,-1525,-1523,-1528,-1542,-1563,-1584,-1601,-1610,-1612,-1611,-1611,
+-1614,-1622,-1632,-1643,-1654,-1665,-1677,-1689,-1698,-1703,-1704,-1700,-1696,-1692,-1690,-1691,-1694,-1697,-1701,-1703,-1703,
+-1701,-1697,-1694,-1695,-1699,-1706,-1714,-1720,-1724,-1726,-1728,-1729,-1730,-1729,-1727,-1724,-1721,-1716,-1712,-1708,-1706,
+-1704,-1701,-1695,-1685,-1671,-1656,-1644,-1634,-1623,-1611,-1593,-1573,-1554,-1538,-1526,-1516,-1505,-1491,-1477,-1462,-1449,
+-1435,-1419,-1401,-1382,-1363,-1345,-1328,-1309,-1289,-1269,-1249,-1232,-1218,-1207,-1196,-1186,-1175,-1166,-1156,-1146,-1137,
+-1128,-1121,-1117,-1114,-1112,-1108,-1102,-1096,-1090,-1085,-1079,-1073,-1067,-1061,-1056,-1052,-1048,-1043,-1037,-1031,-1024,
+-1016,-1006,-996,-986,-979,-976,-975,-975,-972,-967,-960,-954,-951,-950,-949,-946,-943,-939,-938,-939,-942,
+-945,-948,-950,-952,-957,-963,-969,-974,-977,-979,-980,-983,-988,-992,-996,-999,-1000,-1001,-1003,-1007,-1012,
+-1017,-1022,-1025,-1025,-1024,-1022,-1019,-1015,-1010,-1004,-998,-993,-989,-985,-980,-973,-964,-957,-951,-946,-943,
+-939,-933,-926,-918,-907,-894,-879,-860,-840,-821,-802,-784,-766,-747,-729,-714,-703,-694,-685,-677,-668,
+-663,-662,-664,-665,-663,-656,-645,-633,-623,-613,-603,-591,-575,-558,-541,-523,-504,-483,-461,-438,-416,
+-395,-371,-345,-317,-291,-269,-253,-238,-223,-204,-184,-167,-153,-144,-134,-123,-110,-97,-85,-72,-55,
+-32,-5,20,42,61,81,103,126,146,162,174,188,209,235,261,282,297,310,328,355,385,
+414,438,459,483,510,538,561,577,590,605,625,642,648,635,609,581,565,568,593,650,749,
+898,1089,1287,1444,1524,1530,1501,1490,1528,1607,1684,1715,1688,1629,1584,1583,1622,1666,1679,1647,1582,
+1509,1450,1409,1377,1345,1310,1278,1251,1229,1207,1182,1160,1148,1148,1158,1168,1168,1157,1141,1126,1116,
+1110,1105,1100,1099,1103,1113,1126,1138,1148,1155,1159,1161,1157,1147,1133,1121,1113,1112,1112,1109,1098,
+1082,1066,1054,1044,1033,1015,990,960,931,905,883,865,846,823,797,765,728,687,644,599,555,
+509,459,403,339,270,202,140,88,49,21,3,-7,-15,-24,-35,-48,-60,-70,-74,-75,-74,
+-72,-73,-76,-79,-84,-90,-98,-108,-118,-127,-132,-132,-130,-126,-122,-118,-112,-102,-90,-75,-60,
+-45,-29,-13,1,15,28,40,53,67,82,98,111,120,124,124,122,119,118,119,123,128,
+132,135,137,139,147,162,183,208,230,246,255,261,268,281,301,327,355,380,401,416,429,
+443,461,487,519,553,585,611,629,643,654,664,674,683,693,705,722,746,778,817,864,919,
+979,1038,1087,1122,1145,1162,1182,1209,1242,1274,1298,1315,1330,1352,1384,1423,1462,1497,1527,1557,1589,
+1623,1658,1691,1722,1753,1788,1825,1859,1885,1903,1917,1934,1957,1987,2018,2046,2070,2091,2113,2140,2171,
+2204,2236,2266,2294,2320,2343,2363,2381,2397,2413,2430,2450,2471,2491,2510,2528,2548,2572,2599,2626,2650,
+2667,2678,2685,2692,2701,2711,2723,2735,2748,2764,2780,2794,2801,2800,2794,2785,2775,2761,2742,2715,2685,
+2658,2640,2630,2623,2611,2594,2574,2557,2547,2542,2539,2533,2524,2513,2505,2499,2492,2483,2472,2460,2450,
+2443,2438,2432,2425,2417,2410,2402,2394,2383,2372,2363,2358,2376,2374,2373,2368,2359,2347,2337,2332,2334,
+2340,2349,2360,2372,2384,2395,2403,2409,2414,2424,2440,2461,2481,2489,2478,2449,2413,2388,2390,2425,2480,
+2529,2544,2510,2439,2362,2315,2319,2370,2442,2506,2544,2560,2572,2593,2626,2660,2682,2688,2685,2686,2701,
+2731,2767,2799,2821,2834,2843,2852,2863,2876,2891,2908,2926,2943,2960,2976,2992,3009,3028,3047,3067,3086,
+3107,3133,3164,3197,3225,3244,3254,3259,3265,3276,3290,3301,3306,3306,3308,3317,3331,3346,3354,3354,3352,
+3359,3380,3410,3437,3447,3439,3423,3416,3427,3453,3479,3491,3491,3490,3506,3545,3597,3644,3671,3680,3687,
+3710,3757,3819,3875,3906,3908,3891,3873,3872,3898,3954,4031,4114,4185,4228,4236,4215,4183,4160,4158,4177,
+4203,4223,4232,4233,4233,4238,4245,4251,4255,4261,4272,4288,4301,4301,4284,4256,4230,4221,4234,4265,4302,
+4333,4357,4373,4388,4402,4415,4426,4432,4437,4442,4448,4454,4457,4454,4446,4434,4422,4409,4397,4386,4376,
+4370,4369,4377,4393,4415,4438,4460,4477,4490,4498,4504,4507,4508,4506,4501,4495,4491,4490,4494,4499,4504,
+4505,4502,4497,4492,4490,4488,4485,4480,4473,4465,4458,4451,4443,4433,4420,4405,4391,4378,4366,4351,4335,
+4318,4301,4286,4273,4259,4242,4221,4195,4166,4137,4111,4088,4070,4054,4038,4020,3997,3971,3942,3915,3888,
+3862,3836,3811,3792,3781,3783,3793,3806,3815,3814,3802,3781,3757,3734,3714,3699,3690,3687,3693,3705,3722,
+3738,3749,3755,3760,3774,3805,3857,3924,3994,4051,4087,4102,4103,4098,4091,4084,4073,4057,4035,4007,3968,
+3913,3843,3764,3687,3625,3582,3552,3524,3489,3448,3408,3377,3358,3346,3331,3308,3277,3244,3215,3191,3170,
+3147,3120,3090,3058,3025,2993,2962,2933,2907,2885,2865,2843,2818,2788,2754,2718,2681,2644,2607,2572,2539,
+2508,2477,2445,2409,2370,2331,2293,2259,2225,2191,2154,2117,2080,2048,2018,1988,1955,1919,1880,1843,1808,
+1776,1744,1710,1673,1634,1595,1557,1520,1484,1447,1409,1372,1336,1299,1262,1222,1182,1144,1109,1077,1046,
+1013,976,937,896,856,817,777,738,698,660,626,593,560,524,485,445,404,366,331,296,260,
+223,185,145,104,63,19,-26,-71,-115,-156,-191,-224,-255,-288,-325,-367,-409,-451,-489,-525,-561,
+-599,-639,-679,-716,-750,-782,-814,-848,-884,-920,-954,-987,-1020,-1056,-1095,-1135,-1172,-1205,-1233,-1259,-1287,
+-1317,-1348,-1380,-1412,-1445,-1477,-1509,-1540,-1569,-1599,-1630,-1662,-1692,-1720,-1744,-1765,-1788,-1813,-1839,-1865,-1888,
+-1907,-1925,-1945,-1966,-1988,-2010,-2031,-2051,-2073,-2096,-2117,-2132,-2141,-2147,-2156,-2171,-2191,-2212,-2230,-2244,-2255,
+-2265,-2278,-2291,-2302,-2310,-2315,-2319,-2324,-2330,-2338,-2348,-2360,-2374,-2388,-2399,-2403,-2402,-2398,-2396,-2399,-2406,
+-2415,-2421,-2423,-2422,-2419,-2416,-2412,-2408,-2404,-2399,-2397,-2395,-2393,-2389,-2383,-2377,-2372,-2367,-2361,-2351,-2336,
+-2320,-2305,-2293,-2285,-2278,-2268,-2254,-2239,-2224,-2210,-2196,-2182,-2167,-2152,-2139,-2126,-2114,-2102,-2088,-2075,-2063,
+-2052,-2041,-2028,-2013,-1997,-1980,-1965,-1949,-1932,-1916,-1901,-1888,-1876,-1861,-1843,-1823,-1803,-1788,-1778,-1769,-1758,
+-1746,-1739,-1744,-1764,-1794,-1819,-1826,-1813,-1787,-1759,-1741,-1733,-1727,-1716,-1697,-1678,-1665,-1664,-1669,-1673,-1666,
+-1650,-1634,-1627,-1638,-1662,-1690,-1712,-1722,-1722,-1717,-1713,-1712,-1709,-1699,-1679,-1651,-1624,-1605,-1596,-1590,-1576,
+-1546,-1498,-1443,-1401,-1386,-1406,-1452,-1509,-1560,-1594,-1610,-1614,-1614,-1615,-1616,-1615,-1610,-1603,-1597,-1595,-1596,
+-1597,-1594,-1586,-1577,-1571,-1572,-1578,-1583,-1581,-1568,-1548,-1526,-1508,-1495,-1484,-1470,-1449,-1422,-1389,-1353,-1315,
+-1278,-1245,-1216,-1194,-1178,-1166,-1152,-1134,-1106,-1071,-1034,-1006,-1002,-1028,-1078,-1126,-1141,-1099,-1006,-893,-809,
+-786,-823,-881,-912,-883,-802,-706,-638,-622,-649,-693,-727,-744,-752,-763,-781,-799,-807,-804,-797,-796,
+-800,-802,-794,-771,-745,-726,-720,-725,-729,-725,-713,-702,-699,-705,-713,-715,-709,-701,-698,-708,-731,
+-763,-799,-834,-863,-884,-896,-900,-903,-907,-913,-918,-916,-906,-893,-884,-887,-903,-930,-961,-997,-1043,
+-1102,-1173,-1247,-1314,-1365,-1401,-1428,-1452,-1477,-1501,-1524,-1546,-1568,-1591,-1614,-1632,-1642,-1644,-1641,-1639,-1640,
+-1642,-1645,-1646,-1646,-1648,-1651,-1655,-1657,-1657,-1654,-1650,-1646,-1642,-1637,-1634,-1632,-1632,-1635,-1639,-1642,-1645,
+-1647,-1647,-1645,-1640,-1630,-1620,-1612,-1609,-1611,-1616,-1620,-1621,-1621,-1619,-1616,-1610,-1602,-1593,-1585,-1583,-1588,
+-1596,-1605,-1612,-1615,-1616,-1616,-1614,-1611,-1607,-1606,-1609,-1616,-1625,-1633,-1637,-1638,-1638,-1640,-1645,-1650,-1653,
+-1654,-1652,-1649,-1645,-1639,-1631,-1622,-1612,-1604,-1596,-1587,-1576,-1563,-1549,-1536,-1527,-1520,-1514,-1508,-1502,-1495,
+-1488,-1480,-1472,-1464,-1457,-1453,-1452,-1455,-1463,-1474,-1492,-1514,-1538,-1561,-1580,-1592,-1600,-1603,-1605,-1603,-1595,
+-1582,-1565,-1549,-1541,-1546,-1563,-1590,-1618,-1639,-1650,-1651,-1646,-1641,-1640,-1644,-1650,-1657,-1663,-1672,-1684,-1700,
+-1715,-1727,-1731,-1729,-1721,-1712,-1705,-1699,-1697,-1697,-1700,-1705,-1711,-1716,-1718,-1718,-1718,-1719,-1721,-1723,-1726,
+-1727,-1727,-1728,-1729,-1731,-1733,-1735,-1735,-1734,-1731,-1726,-1720,-1715,-1711,-1707,-1701,-1692,-1681,-1670,-1660,-1653,
+-1647,-1637,-1623,-1604,-1584,-1565,-1550,-1536,-1522,-1507,-1492,-1476,-1461,-1446,-1430,-1413,-1394,-1375,-1358,-1342,-1325,
+-1308,-1289,-1270,-1253,-1237,-1221,-1207,-1192,-1179,-1167,-1156,-1146,-1135,-1124,-1113,-1103,-1095,-1089,-1083,-1077,-1071,
+-1065,-1060,-1054,-1050,-1045,-1042,-1039,-1037,-1035,-1033,-1030,-1026,-1022,-1016,-1008,-999,-990,-983,-979,-978,-979,
+-977,-973,-967,-960,-955,-951,-949,-946,-943,-940,-939,-941,-944,-948,-952,-955,-958,-962,-967,-972,-976,
+-979,-981,-984,-988,-993,-998,-1002,-1004,-1004,-1004,-1004,-1006,-1010,-1014,-1019,-1023,-1026,-1026,-1025,-1023,-1021,
+-1019,-1017,-1014,-1010,-1004,-995,-984,-972,-962,-954,-949,-945,-941,-936,-930,-923,-916,-908,-896,-881,-864,
+-846,-829,-812,-794,-775,-754,-735,-720,-708,-698,-688,-676,-666,-659,-658,-662,-665,-666,-661,-653,-643,
+-634,-626,-616,-604,-590,-575,-561,-546,-528,-508,-485,-462,-440,-417,-393,-366,-338,-312,-292,-277,-265,
+-250,-232,-211,-190,-173,-160,-148,-136,-125,-114,-102,-88,-69,-46,-20,3,24,43,64,88,112,
+133,149,162,177,197,221,245,264,280,296,319,347,376,402,423,444,469,498,526,547,562,
+574,590,606,616,611,589,560,540,537,551,580,627,710,842,1022,1218,1377,1462,1470,1446,1449,
+1516,1633,1748,1804,1776,1692,1605,1563,1572,1604,1619,1593,1531,1458,1396,1353,1322,1291,1257,1226,1203,
+1190,1181,1171,1161,1154,1152,1153,1150,1139,1121,1103,1092,1090,1093,1095,1093,1091,1092,1100,1113,1127,
+1137,1145,1151,1157,1160,1158,1152,1143,1136,1133,1133,1130,1121,1108,1093,1081,1071,1060,1046,1026,1005,
+985,969,956,942,922,896,865,831,795,758,720,679,638,597,552,503,446,380,309,237,169,
+112,65,29,3,-15,-31,-44,-56,-65,-71,-72,-70,-66,-64,-63,-65,-67,-70,-72,-76,-81,
+-88,-94,-96,-96,-92,-87,-80,-71,-59,-44,-28,-12,1,15,30,47,67,88,107,123,137,
+149,161,172,178,179,173,162,150,139,132,129,131,135,137,136,133,133,139,156,182,211,
+238,256,266,270,276,288,309,337,367,393,413,425,431,436,446,464,492,525,559,587,607,
+621,631,640,650,663,679,697,715,733,752,777,814,869,940,1017,1087,1138,1169,1185,1201,1224,
+1257,1291,1319,1338,1352,1371,1398,1434,1472,1506,1536,1566,1599,1637,1677,1715,1749,1780,1812,1846,1878,
+1905,1925,1940,1955,1975,2000,2026,2050,2070,2089,2109,2134,2163,2194,2225,2253,2278,2302,2323,2343,2360,
+2376,2392,2408,2426,2445,2465,2487,2509,2532,2557,2581,2604,2624,2641,2655,2667,2678,2686,2693,2700,2709,
+2722,2738,2754,2763,2764,2758,2752,2748,2746,2741,2727,2704,2677,2655,2645,2645,2647,2641,2626,2605,2585,
+2572,2566,2562,2555,2544,2532,2522,2515,2509,2502,2493,2484,2477,2471,2465,2456,2444,2433,2424,2417,2409,
+2400,2390,2381,2376,2403,2398,2393,2385,2374,2364,2359,2361,2370,2383,2397,2410,2419,2423,2425,2423,2422,
+2426,2437,2452,2467,2474,2466,2446,2423,2409,2418,2452,2504,2555,2583,2572,2522,2450,2381,2342,2342,2377,
+2429,2478,2515,2543,2568,2594,2619,2636,2642,2640,2640,2654,2683,2722,2760,2789,2808,2821,2836,2854,2873,
+2892,2908,2922,2938,2957,2977,2996,3013,3029,3046,3063,3083,3105,3128,3154,3181,3208,3232,3248,3258,3265,
+3274,3287,3302,3315,3323,3328,3334,3345,3359,3372,3378,3379,3381,3391,3414,3442,3464,3470,3461,3448,3444,
+3458,3484,3507,3518,3518,3519,3534,3567,3609,3647,3672,3690,3712,3750,3800,3848,3875,3873,3849,3826,3823,
+3853,3911,3986,4059,4118,4154,4166,4158,4140,4124,4118,4126,4142,4158,4170,4178,4185,4195,4208,4220,4228,
+4236,4248,4265,4284,4295,4289,4266,4237,4216,4215,4236,4270,4308,4340,4365,4385,4403,4418,4431,4441,4448,
+4454,4458,4461,4461,4460,4458,4457,4455,4449,4437,4420,4400,4383,4373,4372,4380,4395,4415,4438,4462,4482,
+4497,4506,4510,4512,4515,4519,4520,4520,4517,4513,4511,4509,4505,4499,4491,4483,4478,4476,4477,4475,4470,
+4462,4454,4448,4443,4437,4426,4412,4396,4380,4367,4354,4340,4323,4305,4288,4273,4259,4245,4227,4205,4179,
+4151,4125,4100,4079,4062,4047,4031,4013,3989,3960,3927,3894,3862,3833,3808,3788,3777,3774,3781,3790,3798,
+3798,3790,3778,3765,3758,3754,3753,3751,3747,3742,3742,3747,3757,3767,3773,3771,3766,3766,3782,3821,3882,
+3954,4024,4079,4112,4125,4123,4112,4098,4083,4068,4052,4030,3996,3945,3876,3797,3721,3659,3615,3581,3547,
+3506,3458,3412,3377,3356,3344,3332,3314,3289,3261,3236,3214,3194,3170,3143,3112,3081,3051,3022,2995,2968,
+2943,2919,2896,2872,2843,2811,2778,2744,2710,2674,2636,2596,2556,2520,2487,2455,2422,2386,2348,2312,2278,
+2247,2215,2180,2142,2104,2069,2038,2008,1975,1939,1900,1862,1828,1797,1766,1731,1691,1649,1606,1567,1529,
+1493,1456,1418,1381,1346,1311,1274,1235,1193,1154,1119,1089,1060,1030,995,956,915,876,838,802,765,
+727,690,654,619,583,546,508,468,430,393,357,321,284,246,207,167,125,82,37,-6,-50,
+-90,-127,-162,-197,-233,-271,-309,-348,-387,-424,-460,-495,-531,-568,-606,-644,-681,-716,-750,-783,-818,
+-852,-886,-919,-952,-988,-1027,-1067,-1106,-1141,-1171,-1197,-1223,-1251,-1281,-1313,-1346,-1379,-1412,-1445,-1477,-1508,
+-1538,-1567,-1598,-1630,-1661,-1690,-1714,-1736,-1758,-1783,-1810,-1837,-1860,-1880,-1898,-1917,-1937,-1958,-1980,-2001,-2023,
+-2046,-2068,-2087,-2100,-2108,-2116,-2127,-2146,-2168,-2189,-2204,-2213,-2219,-2228,-2242,-2258,-2272,-2281,-2286,-2290,-2298,
+-2308,-2320,-2331,-2341,-2352,-2362,-2373,-2380,-2383,-2382,-2381,-2383,-2391,-2402,-2410,-2413,-2411,-2405,-2400,-2396,-2395,
+-2395,-2395,-2395,-2393,-2389,-2383,-2377,-2371,-2365,-2360,-2353,-2343,-2331,-2317,-2305,-2297,-2290,-2283,-2273,-2260,-2246,
+-2231,-2218,-2204,-2189,-2174,-2159,-2146,-2135,-2125,-2113,-2101,-2087,-2075,-2063,-2051,-2039,-2024,-2008,-1992,-1976,-1960,
+-1944,-1928,-1913,-1900,-1888,-1875,-1858,-1839,-1822,-1807,-1796,-1785,-1773,-1759,-1749,-1752,-1770,-1798,-1823,-1834,-1824,
+-1800,-1772,-1751,-1740,-1732,-1722,-1706,-1688,-1676,-1673,-1678,-1683,-1680,-1668,-1653,-1646,-1652,-1673,-1699,-1722,-1737,
+-1743,-1745,-1746,-1746,-1742,-1728,-1703,-1674,-1648,-1633,-1628,-1626,-1617,-1591,-1550,-1502,-1463,-1445,-1454,-1485,-1527,
+-1567,-1598,-1617,-1627,-1632,-1632,-1630,-1626,-1620,-1617,-1618,-1622,-1626,-1626,-1619,-1607,-1595,-1589,-1591,-1598,-1604,
+-1602,-1590,-1572,-1553,-1539,-1530,-1522,-1511,-1492,-1464,-1429,-1391,-1353,-1318,-1288,-1266,-1249,-1236,-1220,-1196,-1164,
+-1127,-1091,-1068,-1064,-1082,-1112,-1137,-1133,-1087,-1002,-904,-831,-813,-854,-928,-988,-993,-934,-837,-746,-699,
+-703,-739,-778,-800,-805,-807,-819,-841,-863,-875,-874,-867,-864,-866,-866,-855,-832,-803,-779,-766,-763,
+-764,-763,-760,-758,-762,-770,-777,-781,-780,-779,-782,-794,-814,-843,-880,-921,-959,-988,-1003,-1004,-998,
+-992,-992,-996,-1001,-1001,-999,-1002,-1018,-1046,-1082,-1122,-1161,-1204,-1252,-1307,-1364,-1414,-1453,-1479,-1494,-1504,
+-1512,-1522,-1536,-1559,-1593,-1635,-1677,-1711,-1730,-1736,-1735,-1732,-1731,-1731,-1729,-1724,-1720,-1718,-1720,-1723,-1723,
+-1720,-1715,-1709,-1705,-1702,-1700,-1696,-1693,-1693,-1696,-1701,-1706,-1710,-1711,-1710,-1707,-1701,-1692,-1681,-1671,-1666,
+-1664,-1667,-1669,-1671,-1670,-1668,-1666,-1664,-1660,-1655,-1651,-1649,-1651,-1655,-1660,-1662,-1664,-1664,-1665,-1667,-1667,
+-1667,-1666,-1666,-1668,-1671,-1672,-1671,-1668,-1667,-1669,-1676,-1686,-1695,-1699,-1698,-1692,-1684,-1677,-1672,-1669,-1667,
+-1664,-1659,-1649,-1636,-1619,-1603,-1589,-1578,-1570,-1562,-1554,-1547,-1539,-1531,-1523,-1514,-1504,-1494,-1487,-1483,-1483,
+-1487,-1493,-1502,-1515,-1532,-1553,-1577,-1601,-1621,-1637,-1645,-1646,-1640,-1628,-1612,-1597,-1586,-1584,-1593,-1612,-1635,
+-1657,-1670,-1675,-1675,-1674,-1677,-1681,-1686,-1687,-1687,-1687,-1692,-1704,-1720,-1735,-1746,-1751,-1749,-1743,-1735,-1725,
+-1715,-1707,-1704,-1706,-1714,-1725,-1735,-1742,-1745,-1745,-1743,-1740,-1737,-1734,-1732,-1730,-1731,-1733,-1737,-1741,-1745,
+-1748,-1747,-1744,-1737,-1728,-1719,-1712,-1705,-1698,-1690,-1681,-1674,-1667,-1661,-1654,-1643,-1627,-1609,-1590,-1573,-1557,
+-1541,-1525,-1509,-1492,-1476,-1460,-1444,-1427,-1408,-1390,-1372,-1355,-1340,-1325,-1310,-1295,-1280,-1264,-1248,-1230,-1212,
+-1195,-1179,-1165,-1153,-1141,-1127,-1113,-1100,-1087,-1077,-1068,-1061,-1054,-1048,-1041,-1035,-1029,-1024,-1020,-1017,-1014,
+-1012,-1010,-1008,-1007,-1005,-1002,-998,-991,-983,-977,-974,-974,-976,-978,-978,-975,-969,-964,-959,-955,-952,
+-949,-946,-944,-944,-947,-951,-956,-959,-962,-965,-968,-973,-979,-985,-991,-996,-1001,-1006,-1011,-1015,-1018,
+-1020,-1020,-1019,-1017,-1016,-1016,-1017,-1018,-1020,-1022,-1022,-1022,-1022,-1021,-1021,-1021,-1017,-1010,-999,-985,-971,
+-961,-953,-949,-945,-940,-933,-926,-919,-912,-903,-891,-876,-861,-846,-833,-820,-804,-786,-766,-747,-731,
+-718,-706,-694,-681,-669,-662,-662,-665,-669,-669,-664,-657,-649,-642,-635,-627,-616,-604,-591,-578,-564,
+-548,-529,-508,-486,-464,-442,-418,-390,-362,-335,-315,-299,-287,-273,-256,-236,-215,-196,-179,-165,-153,
+-142,-130,-116,-98,-76,-51,-28,-7,9,26,47,70,95,116,132,147,163,183,206,229,249,
+267,288,313,341,367,387,405,425,452,483,510,530,542,555,571,589,597,586,559,529,514,
+519,542,573,615,686,806,977,1169,1328,1413,1422,1402,1416,1504,1652,1798,1874,1847,1742,1621,1540,
+1518,1533,1546,1526,1474,1410,1354,1312,1277,1239,1199,1164,1144,1140,1145,1150,1150,1146,1141,1136,1128,
+1114,1095,1079,1070,1073,1081,1088,1090,1089,1091,1100,1115,1131,1143,1152,1160,1169,1178,1185,1186,1182,
+1177,1173,1171,1168,1161,1150,1137,1124,1112,1099,1084,1066,1048,1034,1023,1013,999,977,949,917,883,
+850,815,778,739,699,661,625,588,545,492,428,358,285,216,153,99,55,21,-2,-18,-26,
+-29,-27,-23,-18,-15,-17,-21,-28,-34,-38,-40,-41,-43,-45,-46,-45,-42,-40,-37,-35,-29,
+-19,-3,16,37,56,73,91,111,135,162,188,211,230,245,255,261,261,256,245,229,213,
+197,182,170,159,150,140,131,122,118,123,137,161,190,218,242,259,273,286,302,323,347,
+373,398,418,432,441,446,452,463,483,510,540,569,594,615,632,650,670,694,720,745,765,
+778,784,793,814,859,929,1014,1097,1162,1202,1223,1239,1261,1293,1330,1362,1386,1403,1422,1448,1481,
+1516,1547,1575,1603,1635,1674,1716,1755,1789,1819,1846,1874,1904,1931,1954,1972,1987,2002,2018,2035,2051,
+2067,2084,2103,2126,2152,2178,2203,2226,2249,2272,2295,2318,2339,2358,2376,2392,2408,2427,2448,2472,2500,
+2528,2554,2576,2593,2608,2622,2637,2652,2665,2674,2677,2679,2684,2694,2708,2720,2726,2723,2716,2711,2712,
+2717,2718,2711,2694,2675,2663,2663,2670,2677,2673,2657,2635,2613,2599,2591,2585,2577,2565,2553,2544,2539,
+2535,2531,2524,2517,2509,2502,2493,2482,2468,2455,2445,2438,2432,2425,2417,2409,2403,2436,2429,2421,2412,
+2404,2400,2402,2410,2421,2433,2442,2446,2446,2441,2434,2427,2424,2429,2441,2455,2461,2456,2441,2426,2424,
+2445,2488,2540,2583,2602,2589,2549,2494,2441,2403,2385,2388,2406,2433,2464,2498,2533,2567,2596,2612,2615,
+2609,2606,2615,2642,2682,2726,2762,2787,2803,2817,2836,2859,2883,2904,2921,2937,2956,2979,3004,3026,3044,
+3059,3072,3088,3108,3130,3152,3174,3195,3215,3235,3252,3265,3275,3285,3297,3312,3328,3343,3355,3366,3376,
+3384,3390,3394,3397,3406,3423,3448,3472,3486,3487,3476,3466,3466,3481,3504,3524,3536,3542,3551,3570,3598,
+3628,3652,3672,3695,3731,3779,3827,3855,3852,3823,3788,3774,3797,3857,3936,4012,4067,4094,4098,4088,4075,
+4066,4066,4074,4086,4097,4105,4110,4117,4129,4147,4168,4186,4202,4217,4235,4257,4277,4286,4280,4260,4238,
+4228,4237,4262,4297,4331,4359,4383,4403,4421,4437,4449,4458,4465,4472,4476,4477,4474,4469,4466,4466,4467,
+4464,4454,4435,4415,4398,4390,4391,4399,4411,4426,4447,4470,4492,4508,4517,4519,4520,4523,4529,4536,4540,
+4538,4533,4524,4515,4504,4491,4480,4471,4467,4467,4467,4464,4457,4447,4439,4435,4434,4430,4422,4407,4389,
+4372,4357,4343,4329,4313,4296,4281,4269,4256,4240,4220,4195,4167,4140,4115,4093,4074,4056,4039,4021,4000,
+3974,3943,3909,3874,3841,3812,3788,3771,3763,3765,3772,3778,3776,3762,3742,3722,3715,3726,3752,3787,3820,
+3845,3861,3870,3876,3880,3879,3867,3844,3812,3782,3767,3779,3820,3886,3962,4033,4086,4116,4125,4118,4104,
+4089,4075,4061,4041,4007,3955,3885,3808,3734,3676,3636,3607,3579,3545,3503,3460,3422,3392,3368,3345,3319,
+3292,3266,3244,3226,3208,3186,3160,3130,3100,3071,3044,3018,2993,2969,2947,2924,2898,2867,2831,2795,2761,
+2730,2698,2662,2620,2576,2533,2495,2461,2429,2395,2359,2323,2290,2261,2232,2201,2166,2128,2092,2057,2025,
+1991,1954,1915,1878,1843,1811,1779,1744,1704,1661,1620,1580,1543,1504,1465,1424,1386,1350,1317,1283,1245,
+1204,1164,1128,1098,1070,1040,1007,969,929,891,856,822,788,752,715,677,639,601,563,525,488,
+452,417,381,342,303,263,225,186,146,104,61,18,-22,-59,-95,-132,-171,-212,-254,-294,-332,
+-368,-403,-438,-472,-507,-541,-575,-610,-646,-682,-719,-755,-790,-824,-858,-891,-926,-963,-1001,-1039,-1074,
+-1106,-1136,-1164,-1194,-1226,-1258,-1290,-1321,-1352,-1383,-1415,-1447,-1477,-1506,-1533,-1562,-1592,-1623,-1653,-1679,-1703,
+-1726,-1752,-1780,-1807,-1832,-1853,-1872,-1891,-1911,-1932,-1953,-1973,-1994,-2016,-2038,-2058,-2073,-2084,-2095,-2110,-2130,
+-2152,-2169,-2179,-2183,-2187,-2195,-2210,-2228,-2242,-2249,-2253,-2258,-2268,-2284,-2302,-2316,-2324,-2330,-2337,-2346,-2356,
+-2363,-2366,-2367,-2371,-2378,-2388,-2398,-2402,-2399,-2392,-2385,-2382,-2383,-2387,-2391,-2394,-2392,-2388,-2381,-2373,-2365,
+-2358,-2350,-2342,-2333,-2323,-2314,-2307,-2301,-2295,-2288,-2277,-2264,-2250,-2238,-2226,-2214,-2200,-2184,-2169,-2157,-2147,
+-2137,-2127,-2114,-2099,-2084,-2070,-2057,-2043,-2028,-2013,-1998,-1984,-1972,-1959,-1945,-1930,-1916,-1902,-1888,-1872,-1854,
+-1836,-1821,-1808,-1796,-1783,-1769,-1760,-1762,-1778,-1804,-1828,-1841,-1834,-1813,-1786,-1764,-1750,-1741,-1731,-1716,-1700,
+-1688,-1685,-1690,-1696,-1696,-1687,-1675,-1667,-1670,-1685,-1707,-1729,-1745,-1755,-1762,-1768,-1771,-1767,-1754,-1731,-1704,
+-1680,-1666,-1660,-1657,-1650,-1632,-1605,-1575,-1550,-1537,-1538,-1550,-1569,-1590,-1610,-1626,-1638,-1644,-1644,-1641,-1637,
+-1635,-1639,-1646,-1653,-1657,-1655,-1645,-1631,-1619,-1612,-1613,-1618,-1621,-1619,-1610,-1596,-1582,-1570,-1561,-1551,-1537,
+-1516,-1488,-1455,-1421,-1389,-1360,-1337,-1318,-1300,-1281,-1257,-1226,-1192,-1159,-1137,-1131,-1140,-1158,-1168,-1153,-1104,
+-1025,-938,-872,-857,-899,-977,-1052,-1080,-1042,-949,-842,-764,-739,-763,-807,-842,-855,-854,-855,-869,-896,
+-921,-936,-936,-930,-926,-927,-925,-915,-894,-866,-840,-825,-820,-823,-828,-834,-839,-845,-852,-859,-866,
+-873,-882,-893,-906,-922,-945,-976,-1014,-1053,-1083,-1096,-1092,-1081,-1073,-1076,-1088,-1103,-1118,-1132,-1151,-1181,
+-1220,-1264,-1306,-1342,-1375,-1408,-1446,-1485,-1520,-1543,-1552,-1546,-1531,-1514,-1503,-1508,-1536,-1588,-1654,-1721,-1774,
+-1806,-1818,-1820,-1818,-1817,-1814,-1807,-1797,-1787,-1783,-1784,-1787,-1788,-1784,-1778,-1772,-1768,-1766,-1764,-1760,-1757,
+-1756,-1759,-1765,-1770,-1773,-1772,-1768,-1765,-1761,-1755,-1747,-1738,-1730,-1726,-1726,-1726,-1725,-1723,-1721,-1719,-1719,
+-1719,-1719,-1717,-1716,-1717,-1719,-1721,-1721,-1718,-1715,-1712,-1711,-1713,-1716,-1720,-1723,-1726,-1728,-1726,-1720,-1712,
+-1704,-1701,-1705,-1714,-1726,-1735,-1739,-1736,-1730,-1723,-1719,-1716,-1715,-1714,-1710,-1703,-1693,-1681,-1668,-1656,-1643,
+-1631,-1618,-1605,-1593,-1583,-1575,-1567,-1559,-1550,-1540,-1532,-1527,-1526,-1528,-1531,-1534,-1537,-1542,-1553,-1569,-1590,
+-1611,-1630,-1645,-1655,-1662,-1665,-1664,-1658,-1648,-1637,-1630,-1630,-1639,-1652,-1664,-1674,-1682,-1691,-1703,-1714,-1724,
+-1726,-1723,-1717,-1713,-1715,-1723,-1736,-1748,-1759,-1767,-1771,-1769,-1761,-1748,-1732,-1718,-1712,-1714,-1722,-1734,-1745,
+-1752,-1755,-1754,-1750,-1747,-1743,-1741,-1742,-1743,-1745,-1747,-1750,-1754,-1758,-1760,-1759,-1754,-1745,-1734,-1725,-1718,
+-1711,-1704,-1695,-1685,-1675,-1667,-1660,-1651,-1640,-1625,-1609,-1592,-1575,-1559,-1542,-1524,-1506,-1489,-1473,-1458,-1441,
+-1423,-1403,-1383,-1364,-1348,-1333,-1320,-1308,-1295,-1283,-1269,-1253,-1236,-1218,-1200,-1184,-1169,-1155,-1142,-1127,-1113,
+-1098,-1084,-1072,-1062,-1053,-1045,-1037,-1030,-1023,-1016,-1009,-1003,-998,-994,-990,-988,-987,-987,-986,-984,-979,
+-973,-967,-963,-964,-968,-973,-977,-978,-977,-974,-972,-969,-967,-963,-959,-955,-954,-957,-961,-967,-971,
+-973,-974,-976,-981,-989,-999,-1008,-1015,-1019,-1023,-1026,-1031,-1036,-1040,-1044,-1044,-1041,-1036,-1030,-1025,-1023,
+-1023,-1024,-1025,-1024,-1022,-1020,-1020,-1019,-1017,-1012,-1004,-992,-980,-971,-963,-957,-951,-944,-936,-928,-920,
+-913,-903,-892,-878,-865,-853,-843,-832,-819,-803,-785,-768,-753,-739,-725,-710,-694,-682,-675,-674,-676,
+-676,-674,-668,-660,-655,-651,-646,-639,-629,-617,-604,-591,-578,-564,-546,-527,-508,-490,-470,-448,-421,
+-393,-365,-341,-322,-307,-292,-276,-257,-237,-219,-201,-186,-173,-161,-147,-130,-107,-81,-56,-34,-17,
+-4,9,28,51,74,95,113,130,149,172,196,219,238,258,282,309,337,360,377,393,415,
+444,476,501,517,525,536,554,577,589,581,553,522,506,513,537,570,612,682,799,966,1153,
+1307,1387,1394,1374,1394,1493,1653,1810,1890,1859,1740,1599,1497,1460,1468,1481,1468,1427,1372,1323,1283,
+1245,1201,1153,1113,1091,1091,1104,1116,1119,1116,1111,1108,1104,1095,1082,1067,1060,1062,1072,1082,1089,
+1093,1099,1112,1132,1153,1172,1186,1198,1210,1221,1230,1233,1230,1223,1217,1213,1210,1205,1196,1185,1172,
+1159,1144,1127,1108,1090,1075,1064,1052,1038,1018,992,963,932,901,866,827,786,745,708,677,647,
+613,569,514,451,384,317,254,197,148,110,83,69,65,69,75,80,83,81,74,64,54,
+46,43,42,43,44,44,45,47,49,48,43,36,29,29,39,59,84,110,134,157,182,
+210,242,276,310,339,361,375,381,380,373,362,349,331,309,282,250,217,187,162,144,134,
+131,135,145,162,183,208,235,262,288,313,337,357,377,396,417,439,463,484,502,516,529,
+543,560,582,608,635,664,694,724,756,789,822,853,875,887,887,884,890,917,970,1043,1120,
+1186,1231,1258,1277,1300,1331,1368,1402,1428,1449,1470,1496,1527,1560,1591,1618,1644,1673,1707,1744,1780,
+1811,1838,1863,1889,1917,1945,1970,1989,2004,2015,2024,2032,2043,2055,2072,2093,2116,2139,2161,2183,2203,
+2225,2248,2272,2296,2319,2341,2361,2380,2399,2419,2441,2467,2496,2525,2551,2571,2585,2596,2607,2620,2635,
+2647,2653,2655,2656,2659,2669,2681,2692,2697,2696,2693,2693,2699,2707,2712,2708,2697,2686,2683,2688,2698,
+2703,2696,2679,2657,2638,2626,2620,2613,2604,2593,2583,2577,2574,2572,2567,2559,2549,2540,2532,2523,2512,
+2500,2488,2477,2469,2462,2456,2449,2442,2436,2469,2462,2455,2448,2445,2446,2452,2459,2464,2464,2459,2452,
+2445,2438,2432,2428,2430,2438,2452,2463,2463,2451,2434,2426,2441,2480,2531,2572,2583,2558,2507,2452,2414,
+2399,2405,2418,2430,2437,2447,2466,2499,2541,2583,2613,2626,2622,2613,2609,2620,2645,2679,2714,2743,2765,
+2783,2804,2831,2860,2889,2914,2936,2957,2981,3008,3035,3059,3078,3093,3107,3124,3143,3161,3177,3191,3205,
+3222,3241,3261,3279,3293,3303,3312,3325,3342,3361,3380,3393,3401,3403,3403,3405,3414,3431,3454,3478,3495,
+3501,3496,3487,3482,3487,3501,3518,3535,3550,3566,3587,3613,3638,3655,3667,3680,3705,3747,3796,3832,3839,
+3813,3772,3743,3750,3802,3884,3969,4034,4066,4068,4052,4033,4021,4018,4025,4038,4052,4063,4069,4071,4074,
+4082,4097,4117,4139,4161,4184,4211,4238,4262,4276,4277,4269,4261,4264,4280,4307,4339,4368,4394,4416,4436,
+4452,4463,4470,4474,4479,4485,4490,4491,4488,4481,4476,4475,4475,4471,4461,4445,4429,4419,4418,4424,4432,
+4442,4453,4468,4487,4507,4522,4529,4529,4526,4526,4530,4535,4538,4536,4528,4518,4507,4495,4483,4472,4464,
+4461,4461,4461,4457,4450,4441,4435,4433,4432,4429,4419,4403,4385,4367,4353,4340,4326,4312,4298,4285,4273,
+4259,4241,4216,4187,4157,4129,4105,4085,4068,4050,4032,4012,3988,3960,3929,3897,3866,3837,3810,3786,3767,
+3755,3753,3756,3757,3748,3724,3692,3663,3654,3674,3722,3789,3860,3923,3969,4000,4015,4017,4003,3972,3924,
+3863,3803,3756,3736,3751,3796,3863,3936,4002,4052,4084,4098,4101,4095,4083,4065,4035,3992,3932,3861,3789,
+3725,3680,3653,3638,3625,3607,3581,3550,3516,3481,3444,3403,3359,3317,3282,3256,3236,3219,3199,3174,3147,
+3118,3089,3058,3028,2999,2975,2956,2938,2918,2889,2852,2812,2774,2741,2712,2680,2642,2599,2554,2512,2476,
+2443,2409,2373,2335,2301,2270,2242,2214,2182,2147,2111,2075,2040,2005,1968,1930,1892,1855,1821,1786,1750,
+1712,1673,1635,1598,1562,1523,1481,1437,1396,1359,1325,1292,1256,1219,1181,1146,1115,1086,1056,1022,984,
+945,908,873,839,806,771,734,696,658,619,580,543,508,474,438,400,358,316,274,235,199,
+162,123,83,42,3,-33,-70,-109,-150,-194,-237,-277,-313,-349,-384,-420,-456,-490,-522,-554,-586,
+-621,-656,-693,-729,-764,-799,-834,-871,-908,-944,-979,-1012,-1042,-1071,-1100,-1132,-1167,-1203,-1239,-1271,-1302,
+-1330,-1359,-1388,-1418,-1447,-1474,-1499,-1526,-1555,-1585,-1615,-1643,-1669,-1694,-1720,-1748,-1774,-1799,-1821,-1841,-1862,
+-1884,-1906,-1926,-1946,-1965,-1986,-2009,-2030,-2050,-2065,-2080,-2096,-2114,-2132,-2146,-2154,-2158,-2163,-2173,-2189,-2205,
+-2216,-2220,-2222,-2227,-2241,-2262,-2284,-2301,-2309,-2313,-2316,-2323,-2333,-2342,-2349,-2353,-2357,-2364,-2375,-2384,-2390,
+-2388,-2382,-2375,-2371,-2372,-2377,-2383,-2386,-2386,-2382,-2376,-2368,-2360,-2351,-2342,-2333,-2324,-2315,-2308,-2303,-2298,
+-2292,-2283,-2272,-2259,-2248,-2238,-2230,-2220,-2209,-2195,-2182,-2169,-2159,-2148,-2136,-2121,-2104,-2088,-2073,-2059,-2045,
+-2030,-2015,-2001,-1989,-1978,-1968,-1956,-1942,-1927,-1913,-1898,-1882,-1865,-1848,-1832,-1817,-1804,-1791,-1780,-1775,-1779,
+-1794,-1818,-1839,-1850,-1843,-1823,-1797,-1775,-1761,-1752,-1743,-1730,-1715,-1703,-1700,-1704,-1710,-1712,-1704,-1693,-1684,
+-1685,-1698,-1719,-1741,-1759,-1771,-1779,-1785,-1789,-1788,-1778,-1760,-1738,-1716,-1699,-1688,-1680,-1673,-1665,-1655,-1647,
+-1641,-1636,-1633,-1631,-1631,-1634,-1641,-1649,-1656,-1658,-1657,-1654,-1654,-1659,-1667,-1678,-1685,-1686,-1681,-1672,-1661,
+-1652,-1646,-1643,-1642,-1642,-1639,-1632,-1622,-1609,-1596,-1582,-1568,-1550,-1527,-1500,-1471,-1443,-1416,-1393,-1372,-1351,
+-1328,-1303,-1277,-1251,-1230,-1216,-1209,-1207,-1205,-1194,-1165,-1114,-1045,-974,-924,-915,-956,-1033,-1113,-1160,-1144,
+-1066,-954,-849,-787,-780,-813,-858,-890,-902,-903,-908,-926,-951,-974,-985,-983,-976,-971,-969,-967,-959,
+-943,-923,-906,-898,-899,-906,-915,-923,-930,-936,-943,-952,-965,-983,-1003,-1022,-1038,-1052,-1069,-1093,-1125,
+-1158,-1182,-1191,-1188,-1181,-1181,-1195,-1220,-1248,-1275,-1301,-1331,-1369,-1414,-1458,-1493,-1518,-1535,-1552,-1572,-1595,
+-1615,-1624,-1617,-1593,-1555,-1515,-1487,-1486,-1520,-1589,-1676,-1763,-1830,-1870,-1886,-1892,-1894,-1897,-1896,-1887,-1872,
+-1857,-1847,-1845,-1846,-1846,-1842,-1835,-1828,-1824,-1823,-1822,-1819,-1816,-1816,-1820,-1827,-1832,-1834,-1830,-1825,-1822,
+-1820,-1818,-1813,-1805,-1797,-1791,-1788,-1788,-1787,-1784,-1780,-1777,-1776,-1776,-1777,-1777,-1777,-1778,-1781,-1784,-1784,
+-1779,-1770,-1761,-1755,-1753,-1756,-1764,-1772,-1780,-1786,-1787,-1782,-1772,-1760,-1750,-1745,-1748,-1757,-1769,-1779,-1784,
+-1784,-1781,-1776,-1770,-1766,-1762,-1759,-1755,-1751,-1746,-1738,-1726,-1711,-1694,-1675,-1657,-1641,-1629,-1620,-1614,-1607,
+-1600,-1592,-1585,-1580,-1579,-1580,-1581,-1580,-1577,-1572,-1571,-1575,-1584,-1597,-1611,-1626,-1642,-1659,-1678,-1693,-1700,
+-1696,-1683,-1667,-1653,-1647,-1647,-1651,-1658,-1666,-1679,-1695,-1715,-1734,-1746,-1751,-1750,-1747,-1744,-1745,-1748,-1753,
+-1761,-1771,-1779,-1785,-1783,-1772,-1755,-1736,-1720,-1712,-1712,-1719,-1729,-1738,-1745,-1749,-1749,-1749,-1749,-1752,-1757,
+-1762,-1766,-1767,-1767,-1767,-1768,-1770,-1771,-1769,-1762,-1753,-1745,-1738,-1732,-1724,-1713,-1700,-1686,-1675,-1667,-1660,
+-1651,-1638,-1623,-1606,-1589,-1572,-1554,-1535,-1516,-1497,-1481,-1465,-1449,-1432,-1412,-1390,-1370,-1351,-1335,-1321,-1308,
+-1295,-1284,-1272,-1261,-1248,-1233,-1217,-1201,-1186,-1172,-1161,-1149,-1136,-1122,-1107,-1091,-1077,-1065,-1055,-1047,-1039,
+-1031,-1023,-1015,-1007,-999,-992,-987,-984,-982,-980,-979,-977,-972,-966,-960,-956,-956,-960,-966,-973,-978,
+-981,-984,-986,-987,-986,-983,-979,-975,-974,-978,-985,-992,-998,-1000,-1001,-1003,-1007,-1015,-1024,-1032,-1037,
+-1040,-1041,-1042,-1045,-1051,-1057,-1062,-1064,-1063,-1058,-1051,-1045,-1041,-1039,-1038,-1036,-1033,-1028,-1024,-1021,-1021,
+-1021,-1021,-1017,-1010,-1001,-991,-982,-973,-964,-953,-943,-934,-927,-920,-913,-904,-894,-883,-871,-860,-848,
+-834,-819,-805,-792,-780,-767,-752,-734,-716,-701,-693,-689,-688,-685,-680,-672,-666,-662,-660,-657,-651,
+-640,-627,-615,-603,-591,-577,-562,-546,-531,-515,-499,-479,-454,-426,-397,-371,-349,-330,-313,-296,-278,
+-260,-242,-225,-210,-196,-182,-166,-145,-119,-91,-66,-46,-32,-21,-7,10,33,56,75,93,111,
+134,160,187,209,229,249,273,301,330,354,372,389,412,443,474,497,507,512,520,540,566,
+584,580,555,524,506,510,533,568,615,691,812,979,1159,1302,1372,1372,1350,1370,1469,1626,1776,
+1847,1807,1682,1538,1436,1401,1412,1429,1422,1386,1336,1290,1254,1218,1174,1125,1083,1060,1059,1070,1079,
+1081,1076,1072,1072,1075,1074,1066,1055,1049,1053,1067,1083,1096,1105,1115,1130,1153,1181,1207,1229,1246,
+1261,1272,1278,1278,1272,1263,1254,1248,1245,1241,1234,1224,1211,1197,1183,1167,1148,1129,1111,1096,1082,
+1068,1051,1030,1006,980,949,914,874,832,791,756,725,695,660,616,564,507,450,395,345,300,
+261,231,211,201,199,201,203,201,195,185,172,160,150,146,146,150,154,157,157,157,156,
+154,150,141,129,117,112,117,135,161,191,221,249,278,310,347,389,430,466,494,511,518,
+518,512,503,489,467,434,390,336,282,237,205,190,187,192,200,209,219,232,250,274,304,
+338,371,400,423,440,453,468,489,517,550,583,611,632,646,659,674,694,722,755,793,830,
+867,902,937,970,997,1014,1019,1014,1010,1018,1046,1092,1148,1201,1244,1274,1299,1326,1359,1394,1426,
+1452,1474,1494,1519,1548,1580,1611,1638,1663,1688,1716,1746,1775,1803,1830,1856,1883,1911,1939,1965,1986,
+2002,2013,2021,2028,2037,2049,2066,2087,2109,2130,2150,2170,2190,2211,2233,2255,2276,2296,2318,2341,2365,
+2390,2415,2440,2465,2491,2516,2540,2558,2573,2585,2595,2607,2618,2627,2632,2635,2639,2646,2656,2668,2678,
+2682,2684,2687,2693,2703,2713,2718,2716,2710,2707,2709,2716,2722,2721,2710,2693,2676,2663,2656,2651,2645,
+2636,2627,2620,2616,2614,2611,2603,2592,2581,2571,2563,2557,2549,2538,2526,2514,2504,2495,2487,2481,2475,
+2469,2502,2494,2485,2479,2479,2484,2491,2495,2491,2479,2464,2452,2446,2446,2448,2451,2456,2464,2475,2483,
+2480,2465,2445,2436,2447,2478,2513,2529,2511,2464,2406,2365,2358,2382,2421,2452,2465,2464,2462,2476,2510,
+2556,2602,2635,2649,2648,2639,2633,2633,2641,2656,2676,2699,2727,2760,2796,2834,2872,2908,2940,2969,2996,
+3023,3049,3072,3093,3111,3128,3146,3164,3180,3192,3200,3206,3215,3231,3253,3278,3300,3314,3322,3328,3338,
+3354,3375,3395,3408,3414,3414,3415,3421,3436,3459,3482,3500,3508,3506,3501,3498,3501,3511,3524,3536,3549,
+3566,3591,3622,3652,3672,3680,3681,3689,3713,3753,3793,3813,3801,3766,3730,3723,3760,3835,3925,4001,4046,
+4057,4046,4028,4012,4002,4000,4004,4016,4032,4047,4058,4061,4059,4057,4061,4073,4094,4120,4149,4181,4213,
+4241,4263,4276,4284,4291,4303,4322,4348,4376,4405,4432,4457,4477,4491,4497,4496,4494,4494,4498,4503,4506,
+4503,4497,4492,4490,4489,4485,4476,4465,4455,4452,4458,4468,4478,4485,4490,4498,4509,4521,4531,4533,4530,
+4525,4522,4521,4521,4518,4512,4504,4495,4487,4479,4471,4462,4454,4449,4447,4447,4446,4443,4439,4436,4434,
+4431,4424,4412,4397,4381,4367,4355,4343,4329,4313,4297,4282,4268,4252,4231,4205,4175,4145,4119,4096,4078,
+4062,4046,4029,4009,3984,3956,3925,3896,3869,3845,3822,3798,3775,3757,3747,3743,3740,3728,3701,3664,3629,
+3612,3625,3671,3742,3824,3901,3965,4009,4035,4041,4027,3993,3939,3872,3802,3742,3702,3691,3709,3752,3811,
+3876,3940,3995,4037,4063,4072,4063,4036,3992,3933,3865,3796,3736,3693,3670,3663,3664,3665,3661,3650,3634,
+3612,3584,3546,3497,3440,3384,3335,3297,3267,3243,3219,3194,3169,3143,3113,3080,3042,3005,2974,2954,2942,
+2929,2907,2874,2832,2790,2753,2721,2691,2657,2617,2574,2533,2496,2463,2430,2395,2357,2319,2285,2255,2226,
+2195,2161,2124,2087,2051,2016,1980,1943,1905,1868,1831,1794,1758,1721,1685,1649,1614,1578,1539,1498,1456,
+1414,1375,1339,1304,1270,1235,1202,1170,1140,1109,1077,1041,1003,965,928,893,858,824,788,752,715,
+678,640,602,565,529,493,457,417,373,328,285,245,209,173,137,99,60,21,-16,-55,-96,
+-137,-179,-218,-254,-289,-325,-361,-400,-437,-472,-504,-535,-567,-600,-634,-668,-702,-736,-772,-811,-850,
+-889,-926,-958,-987,-1013,-1039,-1068,-1100,-1136,-1174,-1211,-1246,-1277,-1305,-1332,-1359,-1387,-1414,-1441,-1468,-1496,
+-1524,-1554,-1583,-1611,-1638,-1664,-1690,-1716,-1741,-1764,-1786,-1809,-1832,-1856,-1880,-1902,-1922,-1941,-1962,-1984,-2008,
+-2030,-2048,-2063,-2077,-2091,-2106,-2118,-2128,-2136,-2146,-2158,-2173,-2187,-2195,-2198,-2200,-2207,-2222,-2243,-2266,-2284,
+-2293,-2297,-2299,-2304,-2312,-2322,-2331,-2337,-2344,-2352,-2362,-2371,-2377,-2377,-2372,-2366,-2362,-2361,-2363,-2366,-2369,
+-2370,-2369,-2366,-2361,-2354,-2346,-2337,-2328,-2318,-2309,-2302,-2295,-2289,-2282,-2273,-2262,-2250,-2240,-2233,-2227,-2220,
+-2211,-2200,-2187,-2174,-2161,-2148,-2133,-2116,-2099,-2083,-2071,-2060,-2048,-2035,-2020,-2005,-1992,-1980,-1969,-1957,-1943,
+-1928,-1914,-1902,-1889,-1876,-1862,-1846,-1830,-1816,-1804,-1795,-1792,-1798,-1813,-1833,-1852,-1859,-1852,-1832,-1807,-1787,
+-1774,-1766,-1758,-1746,-1730,-1718,-1714,-1717,-1722,-1723,-1714,-1701,-1690,-1692,-1707,-1731,-1757,-1777,-1788,-1793,-1796,
+-1798,-1799,-1795,-1785,-1768,-1747,-1726,-1708,-1694,-1686,-1685,-1689,-1698,-1706,-1710,-1707,-1699,-1690,-1684,-1682,-1683,
+-1682,-1679,-1674,-1673,-1676,-1686,-1697,-1705,-1707,-1704,-1699,-1694,-1690,-1686,-1682,-1676,-1671,-1667,-1664,-1660,-1651,
+-1637,-1618,-1598,-1579,-1559,-1538,-1515,-1490,-1465,-1441,-1420,-1400,-1377,-1352,-1327,-1306,-1292,-1286,-1284,-1277,-1257,
+-1219,-1163,-1096,-1028,-973,-946,-956,-1007,-1086,-1172,-1231,-1239,-1187,-1088,-974,-881,-834,-836,-869,-909,-939,
+-953,-961,-971,-988,-1007,-1020,-1024,-1020,-1012,-1007,-1004,-1001,-994,-986,-978,-975,-978,-987,-996,-1005,-1010,
+-1014,-1020,-1030,-1046,-1070,-1099,-1129,-1156,-1176,-1192,-1210,-1233,-1262,-1291,-1311,-1320,-1321,-1324,-1338,-1364,-1398,
+-1432,-1462,-1490,-1520,-1557,-1597,-1633,-1658,-1671,-1675,-1677,-1684,-1694,-1704,-1704,-1689,-1657,-1612,-1564,-1530,-1526,
+-1563,-1637,-1732,-1823,-1891,-1931,-1948,-1955,-1963,-1972,-1976,-1970,-1953,-1933,-1918,-1909,-1905,-1901,-1893,-1883,-1875,
+-1872,-1871,-1871,-1870,-1869,-1871,-1877,-1886,-1892,-1894,-1890,-1885,-1881,-1880,-1879,-1875,-1866,-1858,-1852,-1851,-1853,
+-1855,-1852,-1846,-1840,-1835,-1833,-1834,-1834,-1835,-1837,-1841,-1844,-1844,-1839,-1829,-1816,-1804,-1798,-1798,-1803,-1812,
+-1822,-1833,-1841,-1845,-1843,-1834,-1822,-1811,-1804,-1804,-1810,-1818,-1827,-1832,-1834,-1832,-1827,-1822,-1817,-1814,-1812,
+-1810,-1806,-1798,-1786,-1770,-1751,-1732,-1714,-1698,-1684,-1674,-1666,-1659,-1653,-1646,-1639,-1635,-1633,-1632,-1632,-1629,
+-1623,-1614,-1605,-1600,-1599,-1601,-1606,-1613,-1624,-1640,-1661,-1681,-1698,-1705,-1703,-1695,-1684,-1675,-1667,-1659,-1653,
+-1649,-1652,-1663,-1682,-1705,-1730,-1750,-1766,-1777,-1783,-1785,-1784,-1780,-1777,-1776,-1779,-1782,-1782,-1776,-1762,-1743,
+-1723,-1709,-1702,-1704,-1712,-1725,-1737,-1746,-1750,-1752,-1753,-1758,-1766,-1776,-1784,-1788,-1787,-1784,-1783,-1783,-1783,
+-1782,-1777,-1769,-1763,-1757,-1753,-1747,-1737,-1724,-1710,-1698,-1689,-1680,-1669,-1655,-1637,-1618,-1600,-1582,-1564,-1544,
+-1523,-1502,-1484,-1467,-1451,-1434,-1415,-1395,-1375,-1356,-1339,-1323,-1307,-1291,-1277,-1265,-1254,-1244,-1233,-1220,-1206,
+-1193,-1182,-1172,-1164,-1155,-1143,-1128,-1112,-1097,-1083,-1072,-1063,-1056,-1049,-1041,-1033,-1024,-1015,-1007,-1000,-995,
+-990,-987,-983,-979,-974,-968,-963,-959,-959,-961,-966,-972,-979,-985,-992,-998,-1002,-1004,-1002,-999,-997,
+-999,-1005,-1015,-1025,-1033,-1038,-1040,-1043,-1046,-1051,-1056,-1060,-1062,-1062,-1062,-1062,-1063,-1065,-1068,-1072,-1074,
+-1075,-1074,-1071,-1067,-1064,-1061,-1059,-1055,-1050,-1044,-1038,-1034,-1034,-1036,-1037,-1036,-1031,-1023,-1013,-1003,-992,
+-981,-968,-956,-945,-936,-930,-925,-920,-914,-905,-892,-876,-858,-840,-824,-813,-804,-797,-786,-771,-752,
+-733,-718,-709,-703,-699,-694,-686,-680,-675,-673,-671,-667,-659,-648,-636,-626,-616,-606,-595,-581,-566,
+-552,-538,-522,-504,-480,-454,-427,-401,-378,-357,-337,-318,-300,-282,-265,-249,-234,-220,-204,-186,-163,
+-135,-107,-82,-64,-51,-40,-25,-4,18,39,56,72,90,114,142,171,194,213,233,258,288,
+319,345,365,383,406,434,463,484,494,499,508,529,555,572,570,548,519,501,503,524,560,
+615,701,832,1000,1174,1304,1360,1349,1322,1339,1433,1581,1719,1779,1734,1610,1473,1380,1352,1368,1387,
+1378,1339,1287,1242,1209,1180,1145,1104,1066,1043,1039,1045,1050,1049,1043,1039,1042,1048,1050,1047,1041,
+1041,1053,1076,1102,1122,1134,1143,1156,1178,1207,1238,1264,1284,1296,1302,1302,1297,1289,1280,1274,1271,
+1271,1268,1261,1250,1238,1226,1215,1204,1190,1172,1153,1135,1119,1104,1088,1071,1050,1024,994,958,919,
+880,843,811,781,750,712,667,617,566,518,475,438,405,378,357,343,336,331,325,315,301,
+284,265,247,232,223,220,222,229,235,238,237,234,229,226,224,223,221,222,227,239,260,
+287,318,351,383,416,452,491,532,570,602,625,637,640,637,631,620,602,571,526,467,402,
+341,297,273,270,280,295,308,318,326,335,348,368,395,427,462,495,522,541,551,557,566,
+583,610,643,676,703,723,737,751,771,798,833,870,906,939,970,1001,1034,1066,1093,1109,1114,
+1111,1109,1117,1137,1169,1206,1243,1278,1313,1349,1387,1424,1455,1478,1497,1513,1532,1556,1582,1609,1636,
+1660,1685,1709,1735,1761,1786,1812,1839,1866,1894,1921,1946,1969,1988,2004,2018,2030,2042,2056,2072,2091,
+2109,2126,2143,2161,2181,2202,2223,2242,2259,2276,2295,2320,2349,2381,2411,2439,2463,2486,2507,2527,2546,
+2563,2578,2591,2601,2609,2615,2621,2628,2638,2650,2663,2674,2680,2682,2684,2690,2699,2710,2719,2722,2721,
+2720,2721,2727,2732,2734,2729,2718,2705,2696,2691,2689,2685,2677,2667,2658,2652,2649,2646,2640,2631,2619,
+2609,2602,2597,2591,2584,2575,2563,2551,2539,2529,2520,2514,2508,2502,2537,2524,2510,2499,2497,2502,2512,
+2517,2514,2501,2486,2478,2479,2487,2495,2498,2497,2497,2499,2502,2498,2484,2463,2446,2442,2452,2466,2468,
+2448,2414,2382,2372,2392,2433,2475,2498,2500,2490,2485,2499,2534,2578,2620,2650,2665,2667,2662,2652,2641,
+2632,2632,2648,2681,2728,2781,2832,2877,2916,2953,2988,3022,3053,3079,3098,3114,3128,3144,3163,3182,3198,
+3209,3214,3215,3219,3230,3250,3276,3302,3323,3336,3341,3345,3353,3367,3385,3402,3413,3419,3422,3429,3442,
+3463,3487,3506,3515,3515,3511,3509,3514,3525,3539,3551,3561,3572,3593,3622,3655,3682,3694,3693,3688,3693,
+3715,3747,3772,3773,3749,3715,3700,3724,3790,3879,3963,4020,4041,4038,4025,4015,4009,4004,3999,3997,4002,
+4017,4038,4055,4062,4058,4049,4046,4055,4077,4106,4137,4168,4199,4228,4255,4279,4299,4316,4333,4352,4375,
+4403,4433,4464,4492,4514,4526,4530,4526,4522,4522,4525,4529,4531,4530,4525,4521,4519,4517,4513,4506,4498,
+4494,4497,4507,4519,4528,4532,4532,4532,4533,4535,4535,4531,4524,4518,4513,4511,4507,4501,4492,4482,4474,
+4469,4464,4456,4447,4437,4429,4426,4426,4428,4430,4430,4428,4425,4420,4412,4402,4390,4379,4368,4357,4342,
+4324,4303,4281,4261,4243,4226,4207,4185,4161,4137,4114,4094,4076,4060,4044,4028,4010,3986,3959,3929,3900,
+3876,3857,3837,3816,3792,3770,3752,3742,3735,3723,3700,3667,3631,3605,3601,3623,3666,3722,3779,3830,3872,
+3901,3918,3919,3904,3871,3826,3774,3723,3683,3658,3653,3668,3703,3752,3809,3867,3919,3957,3976,3972,3944,
+3897,3835,3770,3711,3670,3650,3650,3661,3675,3684,3685,3680,3672,3663,3649,3624,3585,3534,3478,3424,3377,
+3334,3295,3258,3224,3195,3170,3145,3114,3075,3030,2989,2959,2941,2929,2914,2888,2850,2808,2769,2734,2703,
+2670,2632,2590,2549,2512,2480,2450,2418,2383,2346,2310,2276,2244,2210,2174,2136,2097,2060,2024,1989,1953,
+1916,1878,1841,1804,1768,1732,1695,1657,1620,1583,1546,1509,1472,1433,1395,1357,1319,1284,1250,1219,1190,
+1160,1128,1093,1055,1018,983,949,916,881,846,810,774,738,702,664,625,585,546,508,471,432,
+390,346,302,261,224,188,153,116,78,39,-1,-42,-84,-124,-162,-197,-229,-262,-297,-334,-372,
+-409,-443,-475,-507,-539,-573,-606,-639,-672,-706,-744,-784,-825,-864,-899,-930,-957,-984,-1012,-1041,-1072,
+-1106,-1141,-1178,-1213,-1245,-1274,-1300,-1325,-1351,-1378,-1407,-1437,-1467,-1496,-1526,-1554,-1582,-1609,-1636,-1662,-1687,
+-1711,-1735,-1757,-1781,-1806,-1832,-1858,-1882,-1903,-1923,-1944,-1967,-1991,-2013,-2031,-2044,-2055,-2065,-2078,-2091,-2105,
+-2118,-2130,-2142,-2154,-2164,-2172,-2178,-2185,-2195,-2210,-2230,-2249,-2265,-2275,-2280,-2284,-2290,-2298,-2307,-2315,-2324,
+-2332,-2341,-2350,-2358,-2362,-2363,-2361,-2357,-2353,-2351,-2351,-2353,-2355,-2358,-2360,-2360,-2357,-2351,-2343,-2334,-2324,
+-2314,-2304,-2294,-2286,-2278,-2270,-2262,-2253,-2243,-2234,-2226,-2219,-2212,-2203,-2192,-2180,-2166,-2152,-2137,-2121,-2104,
+-2089,-2076,-2067,-2059,-2050,-2038,-2025,-2010,-1996,-1983,-1971,-1957,-1942,-1927,-1914,-1904,-1896,-1887,-1876,-1863,-1848,
+-1834,-1821,-1811,-1807,-1812,-1825,-1844,-1860,-1867,-1861,-1842,-1820,-1802,-1790,-1782,-1774,-1760,-1743,-1729,-1723,-1726,
+-1732,-1733,-1723,-1708,-1695,-1695,-1712,-1739,-1768,-1788,-1797,-1798,-1796,-1797,-1801,-1805,-1803,-1793,-1774,-1750,-1726,
+-1706,-1695,-1695,-1705,-1721,-1737,-1745,-1745,-1739,-1730,-1724,-1720,-1717,-1711,-1703,-1697,-1695,-1701,-1710,-1718,-1720,
+-1715,-1709,-1706,-1709,-1713,-1715,-1712,-1705,-1698,-1695,-1695,-1693,-1684,-1666,-1641,-1614,-1592,-1575,-1559,-1540,-1517,
+-1492,-1469,-1450,-1433,-1416,-1396,-1375,-1358,-1348,-1342,-1330,-1302,-1250,-1175,-1087,-1005,-948,-930,-956,-1022,-1113,
+-1208,-1283,-1314,-1292,-1219,-1116,-1013,-936,-900,-903,-931,-964,-992,-1010,-1023,-1035,-1047,-1058,-1063,-1063,-1061,
+-1058,-1057,-1055,-1051,-1045,-1041,-1042,-1051,-1065,-1078,-1087,-1090,-1090,-1090,-1097,-1114,-1141,-1176,-1214,-1250,-1279,
+-1302,-1324,-1348,-1380,-1416,-1449,-1473,-1487,-1496,-1509,-1533,-1564,-1599,-1629,-1652,-1672,-1694,-1721,-1751,-1775,-1790,
+-1795,-1793,-1791,-1792,-1796,-1797,-1793,-1778,-1752,-1716,-1678,-1651,-1650,-1683,-1749,-1833,-1912,-1969,-2000,-2012,-2018,
+-2028,-2042,-2051,-2049,-2034,-2013,-1994,-1980,-1971,-1961,-1949,-1935,-1925,-1921,-1921,-1921,-1921,-1920,-1922,-1930,-1940,
+-1949,-1952,-1950,-1944,-1940,-1938,-1936,-1930,-1922,-1914,-1911,-1914,-1921,-1926,-1925,-1917,-1907,-1900,-1897,-1897,-1898,
+-1899,-1900,-1901,-1902,-1900,-1895,-1885,-1873,-1861,-1852,-1847,-1846,-1848,-1855,-1866,-1881,-1896,-1909,-1913,-1909,-1899,
+-1885,-1873,-1866,-1863,-1864,-1868,-1871,-1875,-1877,-1877,-1876,-1874,-1871,-1866,-1858,-1847,-1834,-1819,-1804,-1789,-1776,
+-1763,-1750,-1737,-1725,-1714,-1706,-1699,-1692,-1687,-1683,-1680,-1677,-1673,-1667,-1658,-1648,-1640,-1634,-1630,-1628,-1625,
+-1625,-1627,-1635,-1648,-1666,-1684,-1700,-1712,-1719,-1719,-1713,-1699,-1680,-1662,-1648,-1644,-1651,-1668,-1692,-1720,-1749,
+-1778,-1801,-1816,-1822,-1819,-1810,-1800,-1793,-1788,-1783,-1774,-1760,-1742,-1722,-1705,-1696,-1698,-1709,-1727,-1747,-1762,
+-1769,-1769,-1765,-1765,-1769,-1779,-1789,-1797,-1799,-1799,-1798,-1797,-1797,-1794,-1788,-1780,-1773,-1769,-1767,-1764,-1759,
+-1750,-1739,-1728,-1718,-1707,-1692,-1674,-1653,-1632,-1612,-1594,-1576,-1556,-1533,-1510,-1489,-1470,-1453,-1436,-1418,-1399,
+-1381,-1364,-1348,-1332,-1314,-1294,-1276,-1260,-1248,-1237,-1227,-1216,-1204,-1192,-1181,-1173,-1166,-1158,-1149,-1138,-1124,
+-1110,-1097,-1086,-1077,-1070,-1063,-1056,-1048,-1040,-1031,-1023,-1015,-1009,-1003,-998,-993,-987,-982,-978,-974,-973,
+-972,-974,-977,-981,-986,-993,-1000,-1007,-1012,-1014,-1013,-1012,-1012,-1017,-1025,-1036,-1048,-1058,-1065,-1071,-1075,
+-1079,-1081,-1082,-1082,-1081,-1081,-1082,-1082,-1083,-1082,-1081,-1081,-1082,-1084,-1086,-1088,-1088,-1086,-1084,-1080,-1077,
+-1072,-1066,-1061,-1058,-1056,-1055,-1054,-1051,-1044,-1035,-1026,-1018,-1009,-1000,-988,-975,-962,-951,-943,-939,-936,
+-932,-923,-908,-886,-862,-838,-820,-808,-801,-794,-785,-772,-755,-739,-727,-719,-714,-709,-704,-698,-693,
+-691,-690,-687,-680,-669,-658,-648,-640,-633,-625,-614,-600,-585,-571,-557,-542,-524,-501,-477,-452,-428,
+-406,-384,-362,-341,-321,-302,-285,-269,-255,-241,-225,-206,-181,-154,-126,-102,-85,-73,-61,-44,-22,
+0,21,36,49,66,89,119,149,174,195,217,242,273,305,332,353,370,389,414,440,462,
+476,487,501,522,546,560,555,534,507,488,488,506,541,601,698,841,1016,1189,1311,1355,1335,
+1300,1311,1397,1536,1666,1723,1681,1566,1439,1352,1325,1337,1348,1331,1285,1229,1183,1154,1134,1111,1081,
+1050,1029,1021,1023,1026,1025,1021,1020,1024,1031,1034,1034,1034,1043,1067,1101,1135,1161,1175,1182,1192,
+1212,1241,1271,1295,1308,1308,1300,1287,1275,1265,1261,1263,1270,1277,1280,1277,1269,1260,1254,1249,1245,
+1237,1225,1208,1190,1173,1157,1140,1122,1098,1069,1035,998,959,922,890,862,836,809,777,741,701,
+660,622,586,552,521,495,473,458,446,434,420,400,377,353,330,310,293,280,273,272,276,
+281,284,283,277,271,269,275,290,310,334,358,384,410,438,469,502,539,578,617,654,687,
+712,728,734,732,725,715,704,689,665,629,579,518,457,408,379,371,380,395,409,420,428,
+437,449,465,484,505,531,562,597,630,654,665,664,657,653,660,678,703,729,750,768,786,
+809,840,875,910,940,964,986,1011,1041,1075,1108,1135,1151,1157,1159,1162,1170,1187,1212,1245,1286,
+1332,1381,1429,1471,1503,1524,1539,1550,1562,1576,1593,1612,1634,1657,1682,1708,1734,1759,1782,1805,1828,
+1852,1876,1900,1924,1948,1970,1991,2010,2027,2044,2060,2077,2094,2109,2123,2137,2153,2172,2193,2214,2234,
+2251,2269,2289,2314,2344,2377,2409,2438,2462,2483,2503,2522,2540,2558,2575,2588,2598,2605,2611,2618,2630,
+2646,2664,2680,2689,2691,2690,2690,2694,2702,2711,2716,2717,2717,2718,2723,2729,2734,2734,2729,2723,2719,
+2720,2723,2723,2717,2707,2695,2684,2678,2673,2666,2657,2646,2637,2631,2627,2624,2619,2612,2603,2593,2585,
+2576,2569,2561,2555,2547,2537,2576,2557,2535,2516,2506,2509,2520,2531,2534,2528,2520,2518,2524,2536,2543,
+2540,2528,2513,2503,2500,2499,2493,2479,2462,2449,2446,2450,2454,2452,2447,2447,2460,2486,2514,2534,2537,
+2528,2520,2524,2547,2581,2617,2646,2664,2674,2678,2676,2666,2651,2640,2645,2676,2732,2802,2870,2923,2959,
+2983,3007,3037,3070,3102,3126,3140,3149,3159,3174,3192,3209,3219,3223,3223,3225,3234,3253,3280,3309,3334,
+3351,3361,3365,3368,3375,3385,3398,3409,3418,3424,3433,3447,3467,3490,3510,3523,3527,3524,3522,3524,3534,
+3549,3564,3576,3589,3606,3630,3660,3688,3705,3707,3700,3694,3700,3718,3737,3742,3723,3690,3667,3677,3731,
+3819,3913,3984,4017,4019,4007,3999,4002,4008,4008,4000,3989,3987,3998,4019,4039,4048,4047,4043,4046,4063,
+4091,4124,4155,4182,4206,4232,4261,4291,4318,4341,4360,4379,4402,4430,4461,4493,4521,4541,4552,4556,4557,
+4558,4562,4568,4573,4575,4573,4569,4565,4561,4556,4549,4542,4536,4537,4544,4556,4567,4574,4574,4570,4566,
+4561,4555,4546,4535,4523,4514,4510,4508,4504,4498,4487,4476,4466,4459,4452,4444,4434,4423,4416,4413,4415,
+4418,4419,4418,4415,4410,4405,4400,4394,4387,4378,4367,4352,4333,4310,4285,4261,4239,4219,4201,4183,4166,
+4148,4132,4115,4097,4079,4060,4043,4026,4009,3988,3962,3933,3906,3883,3865,3849,3832,3811,3790,3770,3755,
+3744,3732,3713,3687,3657,3631,3613,3608,3614,3626,3644,3665,3689,3716,3743,3764,3775,3774,3759,3734,3704,
+3675,3652,3638,3637,3647,3668,3695,3726,3756,3783,3803,3813,3809,3789,3755,3714,3675,3650,3643,3653,3673,
+3692,3701,3699,3691,3682,3676,3670,3658,3636,3603,3563,3521,3476,3427,3372,3314,3258,3213,3181,3160,3139,
+3108,3065,3017,2972,2940,2918,2902,2882,2855,2821,2786,2753,2722,2690,2653,2611,2569,2531,2497,2467,2436,
+2404,2369,2334,2299,2263,2226,2187,2146,2106,2067,2030,1994,1957,1920,1882,1846,1811,1777,1741,1703,1663,
+1622,1584,1548,1515,1482,1448,1412,1374,1335,1298,1265,1234,1204,1172,1138,1100,1063,1027,995,965,935,
+902,867,831,795,760,723,685,643,600,558,518,480,442,404,363,322,281,242,205,170,135,
+98,60,19,-23,-65,-105,-141,-173,-204,-237,-272,-309,-345,-379,-410,-440,-472,-506,-542,-576,-610,
+-643,-679,-718,-759,-798,-833,-864,-893,-923,-954,-987,-1019,-1051,-1082,-1114,-1148,-1183,-1215,-1244,-1269,-1291,
+-1315,-1343,-1373,-1405,-1436,-1466,-1494,-1522,-1550,-1578,-1606,-1633,-1659,-1685,-1710,-1734,-1759,-1785,-1811,-1836,-1860,
+-1882,-1905,-1927,-1951,-1975,-1996,-2013,-2025,-2034,-2044,-2056,-2071,-2087,-2102,-2113,-2122,-2129,-2136,-2145,-2157,-2171,
+-2186,-2202,-2218,-2232,-2245,-2256,-2265,-2274,-2282,-2290,-2298,-2307,-2316,-2325,-2334,-2342,-2348,-2351,-2353,-2353,-2353,
+-2352,-2351,-2351,-2353,-2358,-2364,-2368,-2369,-2364,-2355,-2343,-2331,-2320,-2309,-2297,-2286,-2276,-2267,-2260,-2254,-2246,
+-2237,-2228,-2219,-2210,-2202,-2192,-2181,-2168,-2155,-2141,-2127,-2114,-2100,-2088,-2076,-2067,-2059,-2050,-2039,-2028,-2016,
+-2005,-1994,-1982,-1969,-1953,-1938,-1925,-1915,-1907,-1899,-1890,-1879,-1867,-1853,-1840,-1829,-1822,-1823,-1833,-1850,-1867,
+-1876,-1873,-1859,-1838,-1820,-1808,-1800,-1791,-1776,-1758,-1742,-1735,-1738,-1745,-1748,-1741,-1725,-1710,-1706,-1719,-1744,
+-1772,-1792,-1800,-1799,-1796,-1797,-1805,-1814,-1818,-1813,-1797,-1773,-1747,-1725,-1711,-1710,-1719,-1735,-1752,-1763,-1767,
+-1765,-1761,-1756,-1752,-1747,-1739,-1730,-1723,-1721,-1725,-1730,-1732,-1727,-1719,-1714,-1715,-1723,-1732,-1737,-1735,-1728,
+-1722,-1723,-1727,-1727,-1716,-1692,-1662,-1632,-1611,-1597,-1585,-1569,-1546,-1520,-1497,-1483,-1474,-1465,-1451,-1431,-1407,
+-1384,-1358,-1323,-1271,-1200,-1114,-1031,-969,-945,-966,-1027,-1116,-1213,-1298,-1350,-1358,-1318,-1239,-1143,-1053,-991,
+-963,-968,-992,-1021,-1046,-1064,-1077,-1087,-1094,-1100,-1103,-1107,-1112,-1120,-1126,-1128,-1126,-1120,-1118,-1124,-1139,
+-1158,-1174,-1181,-1180,-1175,-1173,-1182,-1204,-1238,-1279,-1320,-1356,-1383,-1408,-1435,-1470,-1515,-1563,-1607,-1640,-1662,
+-1680,-1699,-1726,-1756,-1784,-1805,-1820,-1831,-1845,-1861,-1878,-1891,-1897,-1899,-1899,-1901,-1903,-1903,-1900,-1892,-1881,
+-1867,-1849,-1832,-1820,-1825,-1852,-1902,-1964,-2022,-2062,-2081,-2086,-2088,-2096,-2109,-2120,-2119,-2107,-2089,-2070,-2056,
+-2044,-2030,-2015,-1999,-1987,-1981,-1980,-1980,-1977,-1975,-1976,-1982,-1993,-2003,-2009,-2008,-2004,-1999,-1996,-1992,-1986,
+-1978,-1972,-1972,-1978,-1988,-1995,-1996,-1989,-1979,-1971,-1967,-1968,-1969,-1969,-1966,-1961,-1956,-1951,-1945,-1937,-1928,
+-1919,-1910,-1902,-1894,-1888,-1887,-1893,-1909,-1931,-1955,-1974,-1984,-1983,-1973,-1957,-1940,-1925,-1913,-1907,-1906,-1909,
+-1915,-1920,-1923,-1923,-1918,-1911,-1901,-1889,-1876,-1864,-1853,-1844,-1835,-1825,-1813,-1798,-1784,-1771,-1760,-1751,-1743,
+-1735,-1727,-1721,-1715,-1710,-1705,-1698,-1691,-1684,-1679,-1675,-1671,-1663,-1653,-1643,-1635,-1635,-1645,-1665,-1692,-1719,
+-1742,-1755,-1757,-1748,-1730,-1709,-1689,-1673,-1664,-1662,-1667,-1682,-1705,-1736,-1769,-1799,-1821,-1832,-1834,-1831,-1825,
+-1818,-1808,-1795,-1777,-1755,-1731,-1712,-1701,-1702,-1717,-1742,-1769,-1790,-1800,-1799,-1791,-1782,-1779,-1783,-1791,-1798,
+-1803,-1805,-1807,-1808,-1808,-1805,-1799,-1791,-1783,-1778,-1776,-1775,-1772,-1765,-1756,-1746,-1735,-1722,-1707,-1687,-1667,
+-1646,-1627,-1610,-1591,-1570,-1546,-1523,-1501,-1482,-1464,-1447,-1428,-1408,-1390,-1373,-1358,-1342,-1325,-1306,-1286,-1268,
+-1252,-1239,-1228,-1216,-1204,-1191,-1179,-1169,-1160,-1152,-1143,-1134,-1124,-1114,-1103,-1093,-1083,-1074,-1066,-1059,-1051,
+-1044,-1036,-1028,-1021,-1016,-1011,-1006,-1002,-998,-994,-992,-991,-991,-993,-994,-996,-999,-1002,-1007,-1012,-1017,
+-1020,-1021,-1019,-1018,-1019,-1024,-1031,-1041,-1051,-1061,-1070,-1079,-1086,-1091,-1094,-1093,-1090,-1088,-1089,-1091,-1094,
+-1095,-1094,-1092,-1090,-1090,-1094,-1098,-1102,-1103,-1102,-1100,-1098,-1096,-1093,-1089,-1085,-1080,-1075,-1071,-1066,-1059,
+-1050,-1041,-1034,-1028,-1024,-1018,-1010,-999,-985,-972,-963,-956,-952,-947,-937,-919,-895,-868,-842,-820,-805,
+-795,-785,-775,-762,-749,-739,-733,-729,-727,-722,-717,-713,-712,-712,-711,-707,-697,-685,-673,-664,-657,
+-651,-643,-630,-616,-602,-589,-577,-563,-544,-522,-498,-474,-452,-430,-409,-386,-363,-341,-322,-304,-289,
+-275,-261,-245,-226,-202,-175,-148,-125,-108,-95,-82,-65,-43,-20,0,15,29,46,69,99,131,
+158,181,204,229,259,290,316,336,353,370,392,417,441,462,480,500,523,543,553,546,524,
+498,478,472,482,511,571,674,827,1013,1191,1314,1357,1334,1294,1298,1373,1501,1623,1681,1649,1549,
+1433,1350,1317,1315,1312,1284,1231,1173,1130,1107,1097,1084,1064,1038,1016,1005,1003,1005,1006,1007,1009,
+1014,1019,1023,1026,1032,1050,1082,1123,1163,1192,1209,1218,1232,1254,1284,1312,1328,1327,1308,1279,1248,
+1223,1209,1209,1220,1239,1258,1273,1280,1282,1281,1280,1281,1281,1278,1271,1259,1246,1231,1217,1199,1177,
+1149,1115,1076,1035,995,958,926,901,880,863,846,827,805,780,751,718,682,645,610,581,557,
+537,518,496,472,448,425,406,389,374,361,352,347,348,352,354,352,345,339,339,350,374,
+409,447,483,513,539,563,590,624,663,707,749,785,810,823,824,813,796,776,756,736,715,
+689,654,609,560,516,486,475,479,490,499,503,503,507,518,538,561,582,598,615,637,668,
+703,733,750,750,739,726,723,731,748,766,782,796,813,839,873,911,947,975,994,1010,1028,
+1051,1079,1109,1136,1157,1173,1185,1194,1202,1214,1232,1262,1305,1359,1418,1475,1521,1553,1574,1587,1597,
+1606,1615,1623,1633,1647,1666,1691,1719,1746,1771,1791,1808,1825,1843,1864,1886,1909,1932,1955,1975,1994,
+2012,2030,2049,2069,2087,2105,2120,2135,2150,2168,2188,2210,2233,2254,2276,2299,2324,2351,2378,2406,2432,
+2456,2478,2497,2515,2531,2547,2562,2575,2586,2595,2603,2613,2629,2648,2668,2684,2692,2693,2690,2689,2692,
+2698,2703,2706,2706,2706,2710,2718,2726,2732,2732,2731,2732,2738,2746,2753,2753,2745,2731,2717,2706,2699,
+2691,2680,2668,2657,2650,2646,2645,2642,2637,2629,2623,2620,2618,2616,2612,2606,2599,2590,2576,2613,2596,
+2571,2546,2528,2522,2528,2537,2541,2538,2532,2530,2537,2549,2555,2548,2528,2504,2486,2479,2483,2489,2490,
+2485,2479,2477,2481,2491,2504,2517,2530,2544,2555,2560,2557,2549,2544,2552,2575,2608,2641,2664,2675,2679,
+2682,2686,2688,2685,2678,2681,2705,2760,2838,2921,2988,3026,3038,3039,3045,3065,3095,3127,3150,3163,3172,
+3182,3197,3213,3225,3229,3229,3228,3236,3255,3284,3316,3344,3365,3378,3385,3390,3394,3400,3406,3412,3417,
+3424,3433,3447,3467,3488,3509,3525,3534,3538,3538,3540,3545,3554,3566,3580,3596,3616,3642,3672,3699,3718,
+3723,3718,3711,3710,3720,3731,3732,3712,3675,3637,3625,3658,3734,3834,3924,3979,3996,3986,3973,3972,3983,
+3997,3999,3989,3974,3966,3972,3989,4007,4019,4024,4031,4048,4078,4116,4152,4181,4202,4222,4246,4277,4312,
+4344,4370,4390,4411,4434,4464,4495,4525,4549,4565,4574,4581,4587,4595,4604,4612,4618,4621,4621,4619,4616,
+4610,4601,4590,4582,4578,4583,4593,4605,4613,4615,4611,4604,4597,4591,4583,4571,4554,4538,4524,4517,4513,
+4510,4502,4491,4477,4465,4455,4447,4438,4430,4423,4419,4420,4423,4424,4422,4415,4408,4401,4398,4397,4395,
+4388,4377,4360,4340,4320,4300,4282,4265,4246,4224,4200,4175,4153,4135,4122,4110,4096,4078,4059,4039,4020,
+4001,3982,3959,3933,3907,3884,3866,3852,3838,3824,3807,3790,3774,3760,3745,3729,3710,3690,3670,3651,3633,
+3614,3597,3583,3578,3586,3607,3636,3668,3694,3709,3711,3701,3686,3670,3657,3649,3645,3641,3633,3619,3603,
+3593,3596,3619,3658,3704,3743,3764,3763,3747,3726,3713,3714,3725,3738,3744,3739,3726,3711,3696,3684,3670,
+3653,3633,3611,3588,3558,3515,3453,3375,3292,3221,3171,3145,3131,3115,3086,3042,2991,2946,2912,2889,2870,
+2850,2826,2798,2771,2743,2714,2681,2642,2601,2560,2521,2486,2453,2419,2385,2348,2312,2274,2235,2195,2154,
+2114,2075,2037,1999,1961,1923,1885,1849,1814,1781,1747,1710,1671,1630,1591,1555,1521,1489,1457,1422,1386,
+1349,1313,1280,1248,1216,1182,1146,1108,1071,1036,1006,976,946,914,879,842,806,770,733,694,652,
+609,566,525,486,449,411,374,335,295,257,219,183,148,113,77,37,-3,-45,-84,-119,-152,
+-183,-217,-252,-288,-322,-353,-382,-412,-444,-480,-517,-553,-587,-623,-660,-699,-738,-774,-804,-830,-858,
+-889,-925,-964,-1000,-1032,-1062,-1092,-1125,-1159,-1191,-1219,-1242,-1264,-1287,-1314,-1345,-1377,-1407,-1435,-1463,-1491,
+-1521,-1550,-1579,-1607,-1633,-1660,-1686,-1713,-1739,-1763,-1787,-1810,-1834,-1858,-1882,-1908,-1933,-1957,-1978,-1995,-2008,
+-2018,-2028,-2040,-2055,-2072,-2086,-2097,-2103,-2107,-2113,-2124,-2140,-2159,-2177,-2192,-2204,-2215,-2226,-2239,-2253,-2267,
+-2279,-2288,-2297,-2305,-2315,-2325,-2334,-2340,-2345,-2348,-2351,-2354,-2358,-2359,-2360,-2362,-2366,-2373,-2382,-2387,-2387,
+-2378,-2364,-2347,-2331,-2317,-2304,-2292,-2280,-2269,-2260,-2253,-2246,-2239,-2230,-2220,-2211,-2204,-2196,-2188,-2177,-2165,
+-2152,-2140,-2129,-2120,-2110,-2099,-2087,-2075,-2064,-2053,-2043,-2033,-2025,-2017,-2010,-2001,-1990,-1977,-1962,-1948,-1936,
+-1925,-1915,-1904,-1894,-1885,-1875,-1865,-1854,-1845,-1841,-1846,-1859,-1875,-1887,-1888,-1876,-1857,-1838,-1825,-1816,-1808,
+-1795,-1778,-1762,-1754,-1755,-1763,-1767,-1762,-1747,-1730,-1722,-1729,-1749,-1775,-1796,-1807,-1809,-1809,-1811,-1817,-1825,
+-1830,-1826,-1813,-1793,-1770,-1750,-1737,-1734,-1742,-1758,-1776,-1790,-1798,-1798,-1795,-1789,-1782,-1775,-1766,-1757,-1751,
+-1748,-1748,-1749,-1746,-1740,-1733,-1730,-1733,-1742,-1750,-1753,-1750,-1746,-1745,-1749,-1754,-1753,-1739,-1712,-1680,-1653,
+-1635,-1624,-1612,-1594,-1569,-1543,-1523,-1513,-1509,-1501,-1483,-1452,-1411,-1366,-1318,-1268,-1214,-1156,-1101,-1060,-1044,
+-1058,-1101,-1165,-1239,-1310,-1363,-1388,-1377,-1328,-1252,-1165,-1090,-1041,-1025,-1036,-1061,-1087,-1106,-1118,-1124,-1130,
+-1135,-1141,-1149,-1159,-1173,-1189,-1203,-1211,-1212,-1210,-1211,-1219,-1235,-1254,-1271,-1279,-1279,-1274,-1272,-1281,-1303,
+-1336,-1375,-1413,-1444,-1469,-1495,-1530,-1576,-1634,-1694,-1747,-1788,-1816,-1838,-1859,-1884,-1910,-1932,-1947,-1957,-1965,
+-1974,-1985,-1993,-1997,-1997,-1998,-2002,-2009,-2015,-2016,-2010,-2001,-1993,-1989,-1988,-1990,-1993,-2002,-2022,-2055,-2095,
+-2133,-2159,-2169,-2169,-2169,-2174,-2183,-2190,-2189,-2178,-2161,-2145,-2131,-2119,-2104,-2087,-2070,-2058,-2051,-2048,-2045,
+-2041,-2036,-2034,-2038,-2047,-2058,-2065,-2067,-2065,-2061,-2058,-2055,-2050,-2044,-2039,-2038,-2043,-2051,-2057,-2058,-2054,
+-2047,-2042,-2040,-2040,-2039,-2035,-2027,-2017,-2007,-1999,-1993,-1987,-1981,-1975,-1967,-1958,-1947,-1935,-1926,-1925,-1934,
+-1953,-1977,-2002,-2022,-2034,-2037,-2032,-2020,-2004,-1986,-1969,-1957,-1951,-1950,-1950,-1950,-1949,-1945,-1941,-1935,-1927,
+-1918,-1909,-1899,-1890,-1881,-1872,-1861,-1849,-1837,-1825,-1815,-1805,-1795,-1783,-1771,-1759,-1750,-1743,-1738,-1733,-1728,
+-1723,-1720,-1718,-1716,-1712,-1702,-1689,-1674,-1665,-1665,-1675,-1695,-1720,-1743,-1760,-1769,-1771,-1768,-1762,-1752,-1739,
+-1722,-1703,-1684,-1671,-1671,-1684,-1708,-1739,-1770,-1797,-1818,-1834,-1844,-1849,-1847,-1838,-1820,-1797,-1770,-1746,-1730,
+-1727,-1738,-1760,-1787,-1811,-1824,-1827,-1820,-1812,-1805,-1804,-1806,-1808,-1810,-1810,-1811,-1813,-1815,-1815,-1811,-1805,
+-1799,-1794,-1791,-1787,-1782,-1773,-1762,-1750,-1738,-1725,-1710,-1694,-1676,-1658,-1641,-1623,-1603,-1581,-1558,-1535,-1515,
+-1498,-1482,-1465,-1446,-1425,-1405,-1386,-1370,-1355,-1339,-1321,-1303,-1284,-1267,-1252,-1238,-1224,-1211,-1198,-1185,-1172,
+-1160,-1148,-1138,-1128,-1120,-1111,-1103,-1093,-1082,-1072,-1063,-1055,-1048,-1041,-1034,-1027,-1022,-1019,-1017,-1015,-1013,
+-1010,-1008,-1007,-1008,-1010,-1012,-1015,-1017,-1019,-1021,-1024,-1028,-1031,-1032,-1031,-1029,-1026,-1026,-1028,-1032,-1037,
+-1044,-1053,-1063,-1073,-1083,-1090,-1093,-1092,-1089,-1086,-1086,-1088,-1090,-1092,-1091,-1090,-1090,-1091,-1095,-1100,-1103,
+-1105,-1106,-1107,-1108,-1109,-1108,-1105,-1100,-1093,-1086,-1080,-1073,-1066,-1057,-1049,-1042,-1037,-1034,-1030,-1025,-1017,
+-1007,-996,-987,-979,-972,-963,-949,-931,-907,-881,-856,-834,-816,-801,-787,-773,-761,-751,-746,-744,-744,
+-741,-736,-731,-728,-729,-731,-731,-727,-717,-704,-692,-683,-676,-669,-658,-644,-630,-618,-608,-598,-585,
+-567,-544,-520,-496,-475,-454,-433,-411,-388,-366,-346,-329,-313,-298,-283,-267,-249,-226,-200,-173,-148,
+-129,-114,-101,-84,-63,-40,-18,0,17,36,60,90,120,147,170,192,215,241,269,294,315,
+335,355,379,405,431,455,478,501,524,542,549,541,522,498,477,464,463,481,532,633,788,
+979,1166,1301,1358,1347,1315,1315,1376,1484,1590,1641,1615,1528,1425,1346,1307,1293,1276,1239,1183,1126,
+1087,1072,1070,1066,1052,1030,1008,994,989,991,994,997,1000,1003,1007,1010,1014,1025,1048,1085,1129,
+1171,1203,1224,1240,1259,1287,1319,1346,1356,1343,1311,1266,1220,1184,1163,1161,1175,1200,1229,1256,1275,
+1287,1292,1294,1293,1291,1288,1283,1279,1274,1268,1257,1241,1218,1187,1151,1112,1072,1033,996,964,940,
+923,915,910,906,898,883,861,829,792,751,711,675,644,617,591,566,542,520,503,490,481,
+474,469,466,466,470,475,477,473,463,453,448,454,475,505,539,569,592,608,624,644,673,
+711,754,797,834,860,873,873,860,837,807,775,744,716,688,658,625,594,568,555,555,563,
+571,572,567,562,564,581,608,636,658,669,675,685,704,732,760,780,788,789,793,806,828,
+852,869,875,876,881,898,930,970,1010,1041,1061,1076,1089,1105,1123,1142,1161,1181,1200,1219,1235,
+1246,1256,1268,1292,1332,1388,1450,1508,1553,1583,1603,1618,1633,1647,1659,1665,1669,1674,1686,1707,1733,
+1760,1782,1799,1812,1824,1840,1860,1884,1908,1930,1950,1968,1983,1999,2015,2035,2056,2077,2099,2119,2138,
+2155,2174,2193,2214,2237,2260,2285,2309,2332,2354,2375,2397,2419,2442,2464,2483,2497,2509,2520,2533,2548,
+2562,2576,2588,2600,2615,2632,2649,2663,2670,2671,2670,2671,2675,2681,2687,2690,2692,2697,2705,2716,2727,
+2734,2737,2740,2746,2758,2770,2777,2774,2763,2747,2733,2724,2717,2708,2697,2683,2672,2666,2664,2662,2658,
+2651,2645,2642,2643,2645,2646,2643,2638,2631,2624,2613,2640,2633,2616,2592,2568,2551,2543,2540,2535,2525,
+2514,2509,2515,2528,2538,2536,2519,2494,2472,2463,2469,2483,2499,2509,2514,2518,2525,2535,2547,2559,2568,
+2572,2569,2561,2551,2547,2556,2581,2616,2651,2676,2686,2686,2684,2687,2697,2708,2716,2725,2746,2790,2861,
+2947,3026,3078,3096,3088,3074,3072,3089,3120,3151,3174,3188,3197,3208,3222,3235,3243,3244,3243,3248,3263,
+3289,3320,3348,3369,3382,3390,3398,3406,3413,3417,3419,3420,3423,3431,3445,3465,3486,3506,3521,3532,3541,
+3547,3553,3559,3564,3571,3579,3593,3615,3643,3676,3705,3726,3734,3733,3729,3730,3739,3750,3750,3730,3687,
+3635,3598,3600,3652,3741,3841,3921,3964,3970,3957,3946,3948,3961,3973,3974,3964,3950,3944,3949,3963,3979,
+3992,4004,4021,4050,4089,4130,4165,4190,4209,4230,4258,4295,4334,4369,4397,4418,4439,4464,4494,4525,4553,
+4574,4588,4598,4606,4615,4624,4631,4637,4641,4646,4652,4659,4663,4662,4655,4645,4637,4636,4643,4655,4665,
+4667,4661,4649,4636,4627,4621,4614,4603,4586,4567,4550,4538,4529,4521,4511,4497,4483,4470,4460,4453,4446,
+4440,4435,4433,4434,4435,4433,4427,4417,4408,4403,4403,4404,4401,4391,4372,4348,4327,4312,4305,4303,4297,
+4282,4255,4218,4178,4143,4118,4103,4094,4086,4073,4055,4033,4011,3990,3969,3947,3924,3899,3876,3857,3842,
+3830,3820,3810,3799,3787,3773,3759,3743,3729,3715,3703,3689,3671,3649,3624,3602,3589,3590,3605,3629,3656,
+3678,3689,3689,3679,3667,3658,3655,3657,3659,3651,3625,3582,3529,3486,3472,3501,3573,3672,3772,3849,3887,
+3886,3860,3827,3804,3794,3794,3796,3793,3782,3765,3743,3718,3692,3664,3641,3624,3614,3601,3574,3521,3439,
+3340,3244,3171,3128,3111,3104,3090,3060,3018,2971,2931,2900,2877,2855,2832,2805,2778,2752,2725,2697,2663,
+2626,2585,2545,2505,2468,2431,2394,2356,2317,2277,2236,2196,2156,2117,2079,2043,2006,1969,1931,1893,1856,
+1821,1786,1752,1717,1680,1642,1604,1567,1530,1494,1459,1424,1391,1358,1327,1295,1262,1228,1192,1155,1119,
+1085,1052,1019,987,954,919,882,845,807,770,732,693,654,614,574,534,494,455,416,378,341,
+304,266,228,192,156,122,86,49,9,-30,-68,-102,-133,-164,-197,-232,-267,-301,-332,-362,-392,
+-426,-463,-500,-536,-570,-605,-642,-680,-717,-750,-777,-801,-828,-862,-900,-941,-979,-1012,-1041,-1071,-1104,
+-1138,-1170,-1197,-1220,-1241,-1266,-1294,-1325,-1356,-1384,-1410,-1437,-1467,-1498,-1530,-1558,-1584,-1609,-1634,-1662,-1690,
+-1717,-1742,-1764,-1785,-1809,-1835,-1863,-1891,-1917,-1941,-1962,-1979,-1994,-2005,-2016,-2027,-2040,-2054,-2068,-2080,-2087,
+-2094,-2101,-2114,-2130,-2149,-2166,-2179,-2189,-2197,-2208,-2223,-2241,-2259,-2274,-2285,-2294,-2304,-2315,-2325,-2334,-2340,
+-2344,-2348,-2353,-2359,-2363,-2366,-2367,-2368,-2374,-2384,-2394,-2401,-2398,-2387,-2368,-2348,-2330,-2315,-2303,-2291,-2279,
+-2268,-2259,-2251,-2243,-2234,-2224,-2214,-2205,-2200,-2195,-2189,-2180,-2168,-2156,-2145,-2137,-2129,-2122,-2112,-2100,-2087,
+-2074,-2063,-2053,-2045,-2038,-2032,-2026,-2018,-2009,-1999,-1987,-1975,-1963,-1950,-1936,-1923,-1912,-1904,-1898,-1892,-1884,
+-1873,-1865,-1862,-1869,-1883,-1895,-1899,-1891,-1873,-1853,-1837,-1829,-1823,-1814,-1801,-1786,-1776,-1773,-1778,-1781,-1777,
+-1764,-1747,-1735,-1736,-1753,-1778,-1803,-1822,-1831,-1834,-1834,-1835,-1836,-1834,-1828,-1816,-1801,-1784,-1770,-1760,-1760,
+-1769,-1786,-1807,-1825,-1834,-1834,-1827,-1816,-1806,-1797,-1790,-1784,-1779,-1776,-1773,-1771,-1768,-1765,-1762,-1761,-1762,
+-1764,-1765,-1763,-1760,-1759,-1763,-1769,-1772,-1768,-1752,-1727,-1702,-1681,-1667,-1655,-1640,-1618,-1591,-1566,-1548,-1538,
+-1529,-1510,-1477,-1428,-1371,-1314,-1264,-1224,-1194,-1176,-1172,-1184,-1213,-1253,-1298,-1342,-1382,-1415,-1435,-1435,-1410,
+-1356,-1281,-1203,-1142,-1109,-1109,-1130,-1157,-1178,-1186,-1186,-1184,-1185,-1191,-1201,-1213,-1227,-1243,-1260,-1276,-1289,
+-1296,-1301,-1305,-1314,-1328,-1345,-1361,-1371,-1376,-1377,-1379,-1388,-1406,-1433,-1463,-1492,-1519,-1546,-1578,-1622,-1681,
+-1749,-1816,-1873,-1915,-1943,-1964,-1985,-2008,-2030,-2048,-2061,-2069,-2078,-2087,-2097,-2102,-2102,-2099,-2099,-2103,-2114,
+-2124,-2128,-2124,-2117,-2112,-2114,-2121,-2131,-2140,-2149,-2162,-2183,-2209,-2234,-2251,-2259,-2259,-2259,-2261,-2266,-2269,
+-2264,-2252,-2235,-2218,-2204,-2191,-2177,-2160,-2143,-2131,-2123,-2120,-2116,-2110,-2103,-2097,-2097,-2104,-2113,-2121,-2125,
+-2127,-2127,-2127,-2127,-2125,-2120,-2114,-2110,-2108,-2109,-2112,-2113,-2112,-2110,-2109,-2108,-2106,-2101,-2093,-2082,-2070,
+-2061,-2053,-2047,-2041,-2035,-2029,-2022,-2012,-2000,-1987,-1975,-1967,-1966,-1973,-1986,-2004,-2024,-2044,-2063,-2077,-2083,
+-2081,-2069,-2051,-2031,-2012,-1996,-1982,-1972,-1964,-1960,-1959,-1960,-1960,-1956,-1949,-1939,-1928,-1918,-1910,-1902,-1894,
+-1886,-1877,-1869,-1860,-1848,-1833,-1817,-1801,-1789,-1779,-1772,-1767,-1761,-1755,-1751,-1750,-1751,-1752,-1750,-1744,-1733,
+-1722,-1714,-1711,-1714,-1721,-1730,-1739,-1748,-1759,-1772,-1786,-1796,-1799,-1790,-1769,-1740,-1710,-1688,-1677,-1680,-1694,
+-1715,-1740,-1767,-1794,-1820,-1843,-1860,-1868,-1865,-1854,-1835,-1813,-1794,-1782,-1781,-1789,-1803,-1819,-1830,-1837,-1838,
+-1838,-1837,-1837,-1835,-1832,-1827,-1822,-1819,-1819,-1821,-1823,-1823,-1821,-1817,-1813,-1809,-1803,-1795,-1784,-1770,-1756,
+-1742,-1729,-1715,-1700,-1684,-1667,-1649,-1630,-1610,-1588,-1566,-1546,-1529,-1514,-1500,-1484,-1465,-1445,-1424,-1404,-1387,
+-1371,-1356,-1339,-1322,-1304,-1286,-1269,-1252,-1237,-1223,-1210,-1198,-1185,-1172,-1158,-1144,-1132,-1121,-1112,-1103,-1093,
+-1083,-1073,-1064,-1057,-1050,-1044,-1037,-1031,-1028,-1026,-1026,-1026,-1025,-1023,-1021,-1020,-1021,-1023,-1027,-1030,-1032,
+-1033,-1035,-1038,-1042,-1045,-1046,-1046,-1044,-1041,-1039,-1038,-1038,-1040,-1044,-1051,-1061,-1071,-1081,-1089,-1092,-1093,
+-1091,-1088,-1086,-1085,-1084,-1083,-1081,-1080,-1080,-1082,-1085,-1087,-1089,-1091,-1095,-1101,-1107,-1112,-1113,-1110,-1104,
+-1097,-1091,-1087,-1083,-1078,-1071,-1062,-1053,-1044,-1036,-1029,-1024,-1019,-1015,-1010,-1005,-999,-990,-977,-961,-941,
+-919,-896,-875,-855,-837,-820,-803,-788,-776,-768,-764,-763,-760,-755,-748,-742,-739,-741,-745,-747,-744,
+-735,-724,-712,-703,-696,-687,-675,-661,-647,-637,-628,-619,-606,-587,-564,-540,-518,-497,-477,-457,-436,
+-414,-395,-377,-360,-343,-326,-308,-291,-273,-251,-226,-199,-172,-149,-131,-115,-99,-79,-56,-32,-9,
+11,32,56,83,110,134,156,176,195,217,241,265,289,313,341,370,400,428,452,475,497,
+518,535,542,537,523,504,484,467,456,460,497,585,731,919,1111,1264,1349,1369,1361,1368,1415,
+1494,1568,1597,1564,1483,1391,1320,1281,1261,1237,1194,1137,1083,1047,1035,1036,1037,1028,1010,992,980,
+979,984,990,995,997,996,996,996,1001,1015,1042,1081,1127,1170,1205,1230,1251,1273,1302,1333,1358,
+1368,1357,1327,1284,1239,1201,1177,1168,1175,1194,1220,1246,1267,1280,1284,1280,1272,1262,1255,1253,1256,
+1262,1265,1262,1249,1227,1199,1169,1138,1107,1076,1044,1016,993,979,973,971,968,960,944,920,889,
+854,816,778,742,708,677,648,623,600,580,566,557,553,554,560,568,579,591,599,600,593,
+579,561,546,539,544,557,574,589,600,607,615,628,650,680,718,758,797,833,860,876,876,
+859,826,785,741,704,674,651,632,617,607,604,608,617,625,627,624,622,631,652,683,714,
+735,743,743,742,747,758,772,783,792,809,840,887,943,992,1020,1023,1009,994,993,1012,1047,
+1086,1119,1143,1159,1172,1183,1194,1205,1217,1231,1249,1269,1287,1299,1306,1314,1332,1367,1417,1475,1528,
+1568,1596,1617,1638,1661,1685,1702,1710,1711,1709,1714,1728,1748,1771,1790,1804,1814,1826,1843,1866,1891,
+1917,1940,1959,1974,1989,2004,2020,2038,2057,2077,2099,2120,2143,2164,2184,2204,2222,2242,2263,2284,2306,
+2327,2345,2362,2381,2402,2425,2447,2465,2476,2482,2489,2499,2515,2533,2551,2565,2577,2588,2599,2611,2621,
+2628,2631,2634,2638,2646,2656,2666,2673,2680,2689,2702,2716,2728,2737,2742,2748,2758,2772,2785,2791,2787,
+2774,2758,2745,2737,2732,2725,2715,2703,2694,2689,2687,2684,2678,2669,2662,2659,2660,2661,2659,2652,2645,
+2640,2640,2640,2651,2656,2649,2631,2606,2582,2564,2549,2535,2519,2504,2498,2505,2521,2537,2543,2532,2511,
+2487,2474,2475,2488,2507,2523,2534,2541,2546,2551,2558,2563,2567,2567,2563,2558,2555,2560,2576,2602,2632,
+2657,2671,2675,2676,2682,2697,2719,2742,2765,2790,2827,2883,2956,3032,3094,3127,3132,3121,3113,3121,3145,
+3178,3207,3225,3235,3241,3250,3260,3269,3275,3277,3282,3294,3314,3338,3360,3375,3383,3387,3393,3403,3415,
+3425,3429,3428,3428,3433,3447,3468,3491,3511,3526,3534,3540,3547,3556,3566,3575,3582,3588,3597,3615,3641,
+3672,3702,3724,3733,3735,3735,3742,3757,3774,3780,3763,3719,3659,3603,3579,3601,3669,3764,3857,3924,3954,
+3955,3942,3932,3931,3937,3941,3938,3930,3923,3924,3934,3949,3965,3980,3997,4022,4056,4095,4132,4163,4186,
+4207,4234,4270,4313,4356,4391,4417,4436,4456,4481,4510,4541,4570,4593,4609,4622,4632,4640,4645,4646,4646,
+4648,4655,4668,4686,4702,4711,4712,4708,4703,4703,4709,4719,4725,4722,4709,4691,4673,4660,4652,4646,4637,
+4624,4606,4589,4572,4558,4543,4528,4512,4499,4489,4482,4476,4469,4459,4449,4441,4435,4431,4425,4418,4411,
+4406,4407,4411,4414,4409,4392,4366,4338,4317,4309,4314,4323,4325,4310,4276,4227,4175,4131,4101,4086,4081,
+4077,4068,4052,4030,4005,3979,3955,3931,3908,3884,3861,3840,3823,3809,3800,3793,3787,3781,3773,3763,3751,
+3739,3727,3717,3706,3692,3676,3658,3644,3636,3638,3646,3659,3672,3679,3679,3670,3657,3644,3636,3636,3644,
+3649,3642,3613,3562,3501,3451,3434,3469,3554,3674,3799,3899,3955,3964,3937,3893,3853,3825,3813,3810,3811,
+3809,3802,3787,3763,3729,3690,3654,3629,3618,3615,3605,3573,3509,3417,3315,3225,3161,3125,3109,3098,3078,
+3047,3008,2969,2935,2905,2877,2846,2814,2781,2750,2722,2694,2663,2628,2589,2549,2509,2471,2435,2399,2362,
+2322,2280,2238,2195,2154,2115,2078,2044,2010,1976,1942,1906,1870,1833,1795,1757,1721,1685,1649,1612,1574,
+1535,1495,1458,1425,1396,1369,1341,1310,1275,1237,1199,1163,1131,1100,1069,1036,1000,963,925,887,849,
+811,771,732,693,656,621,585,547,506,465,424,386,351,316,279,242,204,166,130,95,59,
+22,-15,-51,-84,-114,-144,-174,-208,-243,-277,-311,-343,-377,-412,-449,-485,-520,-552,-585,-620,-656,
+-691,-722,-750,-776,-805,-839,-878,-919,-955,-987,-1017,-1047,-1080,-1114,-1145,-1172,-1196,-1219,-1245,-1275,-1306,
+-1336,-1362,-1387,-1414,-1445,-1478,-1510,-1538,-1561,-1584,-1608,-1637,-1668,-1697,-1723,-1746,-1768,-1792,-1821,-1851,-1880,
+-1907,-1929,-1949,-1966,-1981,-1993,-2003,-2011,-2021,-2034,-2047,-2061,-2073,-2084,-2095,-2108,-2123,-2139,-2153,-2164,-2172,
+-2180,-2192,-2208,-2227,-2246,-2261,-2274,-2285,-2296,-2307,-2317,-2326,-2332,-2338,-2344,-2351,-2359,-2363,-2365,-2364,-2366,
+-2373,-2384,-2395,-2401,-2397,-2383,-2364,-2345,-2328,-2315,-2304,-2293,-2282,-2272,-2263,-2255,-2246,-2235,-2223,-2212,-2203,
+-2198,-2194,-2189,-2181,-2170,-2159,-2149,-2141,-2134,-2127,-2117,-2107,-2096,-2086,-2077,-2070,-2063,-2056,-2048,-2040,-2031,
+-2022,-2013,-2005,-1996,-1987,-1975,-1960,-1945,-1932,-1924,-1920,-1918,-1911,-1900,-1886,-1876,-1875,-1884,-1897,-1905,-1901,
+-1887,-1867,-1850,-1840,-1835,-1829,-1819,-1806,-1793,-1787,-1787,-1789,-1787,-1776,-1759,-1745,-1743,-1755,-1781,-1810,-1836,
+-1852,-1858,-1857,-1852,-1844,-1836,-1826,-1816,-1804,-1792,-1781,-1776,-1778,-1790,-1810,-1832,-1851,-1861,-1858,-1847,-1834,
+-1823,-1816,-1814,-1812,-1809,-1804,-1799,-1797,-1798,-1801,-1802,-1801,-1796,-1789,-1780,-1774,-1772,-1775,-1780,-1784,-1782,
+-1774,-1760,-1744,-1730,-1719,-1708,-1694,-1672,-1644,-1616,-1593,-1575,-1557,-1532,-1494,-1444,-1388,-1335,-1294,-1268,-1258,
+-1262,-1280,-1312,-1354,-1401,-1445,-1480,-1505,-1521,-1531,-1534,-1522,-1487,-1428,-1352,-1280,-1229,-1211,-1224,-1253,-1280,
+-1292,-1289,-1277,-1268,-1267,-1275,-1289,-1302,-1314,-1325,-1338,-1352,-1367,-1379,-1388,-1396,-1403,-1413,-1425,-1439,-1452,
+-1464,-1474,-1485,-1497,-1513,-1532,-1552,-1574,-1598,-1628,-1670,-1727,-1797,-1873,-1943,-1998,-2035,-2058,-2075,-2094,-2116,
+-2137,-2154,-2164,-2170,-2176,-2185,-2195,-2202,-2203,-2200,-2198,-2201,-2211,-2223,-2232,-2235,-2233,-2233,-2236,-2244,-2254,
+-2261,-2267,-2275,-2288,-2306,-2326,-2341,-2349,-2351,-2351,-2352,-2353,-2351,-2343,-2328,-2310,-2292,-2276,-2262,-2248,-2232,
+-2218,-2206,-2199,-2195,-2191,-2184,-2174,-2165,-2160,-2161,-2166,-2174,-2181,-2186,-2191,-2197,-2201,-2202,-2200,-2193,-2185,
+-2176,-2170,-2166,-2164,-2165,-2167,-2170,-2170,-2166,-2158,-2148,-2137,-2128,-2122,-2117,-2111,-2104,-2095,-2085,-2075,-2064,
+-2053,-2040,-2028,-2017,-2008,-2003,-2003,-2007,-2018,-2036,-2059,-2086,-2109,-2125,-2130,-2124,-2108,-2087,-2063,-2038,-2015,
+-1997,-1986,-1982,-1982,-1984,-1982,-1977,-1969,-1962,-1956,-1952,-1948,-1943,-1936,-1928,-1918,-1908,-1897,-1883,-1867,-1850,
+-1835,-1823,-1814,-1806,-1797,-1788,-1780,-1776,-1776,-1780,-1784,-1786,-1783,-1777,-1767,-1757,-1746,-1737,-1730,-1727,-1729,
+-1738,-1755,-1778,-1802,-1820,-1828,-1823,-1807,-1784,-1761,-1742,-1728,-1720,-1718,-1720,-1729,-1745,-1768,-1797,-1827,-1855,
+-1876,-1889,-1891,-1884,-1872,-1858,-1845,-1836,-1831,-1830,-1832,-1835,-1841,-1847,-1854,-1858,-1858,-1854,-1846,-1838,-1832,
+-1829,-1829,-1830,-1830,-1829,-1826,-1823,-1820,-1815,-1807,-1797,-1785,-1771,-1757,-1742,-1727,-1709,-1691,-1671,-1652,-1633,
+-1614,-1595,-1576,-1560,-1544,-1529,-1514,-1497,-1479,-1459,-1440,-1423,-1406,-1390,-1375,-1358,-1342,-1324,-1306,-1288,-1271,
+-1254,-1240,-1228,-1217,-1206,-1194,-1179,-1164,-1149,-1136,-1124,-1112,-1101,-1091,-1082,-1074,-1068,-1061,-1055,-1048,-1043,
+-1039,-1038,-1038,-1038,-1037,-1034,-1031,-1030,-1030,-1033,-1036,-1038,-1040,-1041,-1042,-1045,-1049,-1053,-1057,-1060,-1062,
+-1061,-1059,-1056,-1054,-1054,-1057,-1063,-1071,-1080,-1088,-1094,-1098,-1101,-1102,-1103,-1102,-1098,-1094,-1088,-1083,-1080,
+-1079,-1078,-1077,-1075,-1075,-1077,-1083,-1092,-1101,-1108,-1110,-1108,-1104,-1100,-1097,-1097,-1096,-1093,-1086,-1076,-1062,
+-1047,-1032,-1021,-1012,-1008,-1008,-1009,-1010,-1007,-1000,-988,-971,-952,-931,-911,-893,-876,-860,-844,-828,-814,
+-802,-794,-788,-783,-777,-769,-760,-754,-752,-756,-761,-763,-760,-752,-740,-730,-721,-714,-706,-696,-683,
+-670,-658,-648,-636,-621,-602,-580,-558,-538,-519,-500,-480,-460,-440,-424,-408,-393,-376,-357,-336,-316,
+-297,-276,-252,-225,-198,-172,-150,-132,-115,-95,-72,-46,-21,2,24,47,71,95,118,139,158,
+176,195,215,237,261,289,321,355,389,419,445,468,489,509,524,533,532,524,511,496,478,
+460,452,473,542,670,847,1040,1210,1326,1385,1409,1428,1463,1510,1546,1545,1497,1417,1334,1271,1236,
+1215,1190,1148,1093,1041,1005,990,988,988,981,970,960,959,966,979,991,997,998,995,992,991,
+997,1013,1042,1083,1130,1176,1214,1241,1262,1281,1304,1331,1355,1370,1372,1358,1334,1305,1276,1253,1239,
+1233,1235,1243,1253,1260,1262,1255,1242,1226,1211,1202,1204,1213,1226,1235,1236,1226,1209,1189,1170,1154,
+1137,1117,1094,1070,1050,1036,1028,1020,1009,990,964,934,902,870,839,806,771,736,703,674,651,
+631,616,603,594,591,593,604,619,638,655,667,669,661,643,620,597,577,564,558,557,560,
+562,566,571,581,596,617,645,680,720,765,808,843,860,853,822,775,725,681,653,638,634,
+634,636,640,649,660,671,679,684,690,704,727,759,791,816,829,834,833,832,828,821,813,
+810,827,873,948,1037,1117,1168,1181,1163,1135,1116,1117,1137,1167,1197,1220,1236,1248,1259,1268,1275,
+1283,1293,1306,1322,1336,1346,1351,1358,1373,1402,1445,1495,1542,1581,1612,1640,1669,1700,1727,1745,1750,
+1747,1742,1743,1752,1768,1786,1801,1813,1823,1837,1855,1879,1905,1930,1951,1971,1988,2006,2024,2041,2058,
+2073,2087,2103,2122,2144,2168,2191,2212,2229,2245,2260,2276,2293,2309,2325,2342,2361,2384,2409,2432,2449,
+2458,2462,2465,2473,2487,2505,2523,2536,2545,2552,2559,2568,2578,2587,2594,2602,2611,2624,2639,2653,2665,
+2676,2687,2699,2712,2723,2731,2738,2745,2758,2775,2790,2799,2798,2788,2774,2762,2754,2748,2742,2733,2723,
+2715,2711,2710,2706,2698,2688,2678,2673,2671,2668,2661,2650,2640,2637,2642,2651,2647,2654,2652,2640,2620,
+2599,2580,2566,2554,2543,2534,2533,2541,2557,2572,2577,2568,2547,2523,2505,2499,2504,2516,2529,2539,2544,
+2547,2550,2554,2559,2564,2568,2572,2575,2580,2589,2602,2619,2635,2647,2656,2665,2678,2701,2731,2767,2802,
+2835,2872,2917,2973,3035,3092,3131,3149,3151,3151,3161,3186,3220,3254,3277,3288,3291,3293,3298,3305,3313,
+3319,3326,3339,3358,3379,3398,3409,3410,3407,3406,3413,3426,3441,3451,3454,3454,3457,3468,3487,3512,3535,
+3550,3558,3560,3560,3564,3572,3581,3591,3600,3611,3626,3648,3674,3699,3717,3725,3727,3730,3742,3765,3791,
+3806,3797,3755,3690,3623,3578,3577,3625,3708,3803,3884,3935,3953,3948,3934,3921,3914,3911,3908,3903,3900,
+3902,3910,3925,3941,3959,3977,4001,4030,4065,4102,4134,4161,4186,4213,4248,4290,4336,4377,4409,4433,4451,
+4470,4493,4522,4552,4582,4607,4627,4643,4657,4668,4675,4679,4681,4685,4692,4705,4721,4737,4749,4752,4749,
+4743,4739,4739,4743,4746,4743,4734,4720,4705,4694,4687,4683,4677,4667,4652,4634,4613,4591,4569,4549,4532,
+4521,4515,4511,4504,4493,4475,4455,4436,4422,4412,4405,4399,4395,4395,4400,4408,4412,4407,4388,4361,4332,
+4312,4306,4312,4319,4318,4298,4261,4212,4163,4124,4099,4087,4082,4076,4066,4049,4026,3999,3970,3942,3916,
+3891,3867,3845,3824,3804,3787,3773,3764,3758,3755,3752,3749,3743,3734,3724,3712,3699,3685,3673,3664,3660,
+3659,3660,3662,3662,3659,3654,3647,3638,3627,3616,3609,3607,3609,3610,3602,3578,3539,3492,3455,3445,3474,
+3542,3635,3735,3820,3875,3896,3888,3864,3834,3808,3789,3779,3779,3785,3793,3797,3790,3768,3731,3688,3652,
+3630,3624,3624,3613,3578,3514,3427,3335,3253,3191,3147,3116,3087,3056,3022,2987,2954,2923,2892,2860,2826,
+2791,2759,2727,2695,2661,2623,2581,2539,2499,2462,2429,2397,2363,2327,2286,2244,2200,2157,2116,2078,2043,
+2009,1977,1946,1914,1880,1843,1803,1761,1721,1682,1646,1610,1574,1536,1499,1464,1434,1409,1386,1360,1328,
+1288,1246,1204,1168,1138,1110,1081,1048,1010,971,933,897,861,823,782,741,700,663,629,596,559,
+519,477,437,399,366,333,299,261,221,182,145,110,76,41,5,-30,-63,-93,-122,-153,-185,
+-221,-257,-292,-327,-362,-397,-433,-467,-500,-532,-564,-597,-630,-663,-694,-722,-750,-781,-817,-857,-896,
+-931,-962,-992,-1023,-1056,-1089,-1120,-1147,-1170,-1195,-1222,-1253,-1284,-1313,-1339,-1363,-1390,-1421,-1454,-1485,-1512,
+-1534,-1557,-1583,-1614,-1648,-1681,-1709,-1733,-1756,-1781,-1810,-1841,-1870,-1896,-1917,-1935,-1951,-1965,-1978,-1988,-1996,
+-2005,-2016,-2030,-2045,-2060,-2074,-2088,-2101,-2115,-2129,-2140,-2150,-2158,-2168,-2180,-2196,-2213,-2230,-2245,-2258,-2270,
+-2282,-2293,-2302,-2310,-2317,-2326,-2336,-2347,-2356,-2361,-2362,-2362,-2365,-2373,-2385,-2394,-2397,-2390,-2375,-2357,-2339,
+-2326,-2316,-2306,-2295,-2284,-2274,-2266,-2259,-2251,-2241,-2229,-2217,-2208,-2201,-2196,-2190,-2182,-2172,-2162,-2155,-2148,
+-2141,-2133,-2124,-2114,-2106,-2100,-2094,-2089,-2082,-2073,-2064,-2055,-2045,-2036,-2028,-2021,-2015,-2009,-1999,-1986,-1971,
+-1956,-1946,-1942,-1940,-1935,-1923,-1905,-1889,-1881,-1885,-1898,-1910,-1914,-1905,-1887,-1869,-1856,-1848,-1842,-1833,-1820,
+-1807,-1798,-1796,-1799,-1798,-1791,-1776,-1762,-1756,-1764,-1787,-1817,-1846,-1867,-1877,-1878,-1872,-1863,-1853,-1843,-1832,
+-1820,-1808,-1798,-1794,-1797,-1810,-1830,-1852,-1869,-1876,-1872,-1861,-1849,-1842,-1840,-1841,-1841,-1837,-1830,-1824,-1823,
+-1829,-1839,-1846,-1847,-1838,-1824,-1811,-1802,-1800,-1802,-1803,-1800,-1791,-1779,-1769,-1764,-1764,-1762,-1754,-1736,-1710,
+-1681,-1654,-1630,-1604,-1570,-1524,-1470,-1416,-1375,-1354,-1353,-1367,-1389,-1413,-1439,-1470,-1505,-1541,-1572,-1597,-1615,
+-1631,-1645,-1651,-1639,-1600,-1535,-1456,-1385,-1341,-1332,-1351,-1380,-1401,-1405,-1394,-1377,-1367,-1367,-1377,-1388,-1399,
+-1406,-1414,-1424,-1438,-1452,-1465,-1475,-1481,-1485,-1490,-1498,-1510,-1526,-1544,-1564,-1584,-1604,-1621,-1638,-1655,-1673,
+-1698,-1733,-1784,-1850,-1927,-2005,-2074,-2123,-2153,-2169,-2182,-2197,-2218,-2239,-2254,-2262,-2263,-2264,-2270,-2279,-2288,
+-2293,-2294,-2292,-2294,-2301,-2312,-2324,-2333,-2339,-2344,-2349,-2356,-2361,-2365,-2369,-2374,-2383,-2398,-2414,-2428,-2436,
+-2438,-2437,-2436,-2434,-2429,-2419,-2404,-2385,-2366,-2350,-2335,-2322,-2308,-2295,-2285,-2278,-2273,-2267,-2259,-2248,-2236,
+-2226,-2221,-2222,-2227,-2235,-2244,-2253,-2261,-2268,-2272,-2272,-2267,-2258,-2247,-2235,-2225,-2219,-2218,-2220,-2223,-2224,
+-2221,-2213,-2204,-2196,-2191,-2188,-2184,-2178,-2169,-2156,-2142,-2128,-2115,-2103,-2092,-2080,-2069,-2058,-2048,-2039,-2032,
+-2030,-2036,-2051,-2074,-2101,-2127,-2148,-2160,-2163,-2156,-2140,-2117,-2090,-2063,-2041,-2025,-2015,-2008,-2001,-1995,-1990,
+-1988,-1990,-1993,-1994,-1990,-1982,-1971,-1959,-1948,-1938,-1926,-1913,-1898,-1884,-1871,-1861,-1851,-1841,-1830,-1818,-1809,
+-1804,-1804,-1808,-1812,-1815,-1814,-1808,-1799,-1788,-1776,-1764,-1754,-1748,-1748,-1755,-1769,-1788,-1809,-1828,-1841,-1847,
+-1847,-1841,-1831,-1817,-1799,-1779,-1759,-1743,-1735,-1739,-1755,-1781,-1813,-1847,-1877,-1900,-1913,-1917,-1913,-1903,-1889,
+-1875,-1861,-1851,-1845,-1845,-1848,-1854,-1858,-1860,-1857,-1852,-1847,-1843,-1842,-1841,-1840,-1837,-1833,-1828,-1824,-1820,
+-1815,-1810,-1803,-1795,-1784,-1772,-1757,-1740,-1719,-1697,-1675,-1654,-1636,-1619,-1605,-1591,-1578,-1563,-1547,-1528,-1508,
+-1488,-1469,-1451,-1435,-1420,-1405,-1389,-1374,-1359,-1344,-1328,-1312,-1295,-1279,-1264,-1252,-1241,-1231,-1220,-1206,-1191,
+-1176,-1160,-1145,-1131,-1118,-1106,-1097,-1088,-1081,-1074,-1067,-1060,-1054,-1050,-1049,-1048,-1047,-1045,-1041,-1038,-1037,
+-1039,-1042,-1045,-1047,-1048,-1048,-1048,-1050,-1054,-1059,-1065,-1071,-1076,-1079,-1079,-1078,-1076,-1076,-1078,-1082,-1089,
+-1095,-1100,-1105,-1110,-1115,-1121,-1126,-1127,-1125,-1119,-1113,-1106,-1102,-1099,-1095,-1090,-1085,-1081,-1082,-1086,-1094,
+-1101,-1105,-1106,-1105,-1103,-1104,-1107,-1110,-1110,-1106,-1097,-1084,-1068,-1051,-1033,-1018,-1005,-998,-996,-997,-1000,
+-1002,-999,-991,-978,-962,-945,-928,-912,-897,-883,-869,-856,-843,-831,-821,-812,-804,-795,-786,-778,-773,
+-773,-776,-780,-780,-775,-765,-753,-742,-734,-729,-723,-715,-705,-692,-679,-666,-651,-634,-616,-596,-577,
+-559,-542,-523,-503,-483,-465,-451,-439,-426,-410,-390,-367,-345,-323,-301,-278,-252,-225,-199,-175,-154,
+-135,-114,-91,-65,-38,-13,9,32,54,77,101,123,145,165,183,201,220,242,269,301,336,
+371,404,433,459,482,503,518,527,530,527,520,509,491,469,451,459,511,622,785,974,1153,
+1291,1376,1419,1443,1466,1488,1497,1477,1423,1348,1273,1216,1182,1160,1134,1097,1050,1004,970,951,944,
+940,935,931,932,942,960,979,993,1000,1000,997,994,994,1003,1021,1050,1091,1138,1184,1222,1250,
+1269,1285,1303,1326,1351,1373,1387,1390,1384,1372,1358,1343,1328,1314,1299,1284,1269,1253,1236,1218,1200,
+1182,1169,1163,1167,1179,1192,1200,1201,1195,1184,1175,1169,1165,1158,1144,1124,1101,1080,1065,1053,1039,
+1019,990,956,921,888,860,832,802,767,731,697,671,653,641,632,624,615,609,610,618,633,
+652,669,681,685,680,666,644,619,592,567,547,533,526,525,529,535,544,555,569,588,613,
+647,689,735,775,798,797,771,727,678,638,616,612,620,633,647,660,674,689,703,715,725,
+735,750,774,807,844,879,906,924,935,937,930,911,887,869,874,915,994,1098,1201,1278,1315,
+1313,1289,1263,1249,1253,1270,1290,1309,1323,1334,1344,1352,1358,1361,1365,1369,1374,1378,1382,1385,1390,
+1403,1427,1461,1502,1546,1591,1634,1676,1714,1746,1766,1773,1770,1763,1760,1764,1777,1793,1809,1821,1831,
+1842,1857,1877,1899,1921,1942,1961,1979,1998,2018,2038,2056,2072,2084,2095,2106,2121,2140,2163,2187,2209,
+2228,2243,2255,2267,2279,2291,2305,2320,2339,2363,2389,2414,2433,2443,2447,2450,2456,2467,2482,2496,2506,
+2513,2518,2526,2537,2550,2564,2576,2589,2603,2620,2638,2656,2670,2682,2691,2701,2710,2718,2724,2729,2736,
+2750,2768,2788,2803,2809,2805,2795,2784,2775,2767,2758,2748,2738,2731,2728,2725,2721,2712,2701,2690,2683,
+2680,2676,2668,2656,2644,2637,2639,2647,2638,2638,2636,2628,2615,2602,2592,2587,2586,2587,2589,2593,2599,
+2607,2611,2608,2595,2576,2554,2537,2528,2528,2533,2539,2545,2548,2552,2556,2561,2568,2575,2582,2589,2596,
+2605,2615,2626,2637,2647,2657,2671,2690,2719,2756,2797,2838,2875,2910,2948,2991,3038,3083,3118,3138,3145,
+3149,3161,3186,3223,3261,3290,3307,3313,3315,3320,3328,3338,3347,3356,3370,3389,3413,3437,3454,3460,3458,
+3455,3456,3466,3480,3494,3502,3506,3509,3516,3532,3553,3574,3591,3600,3601,3599,3597,3598,3601,3607,3615,
+3626,3642,3662,3683,3701,3712,3714,3713,3716,3732,3761,3797,3824,3824,3788,3722,3645,3583,3562,3590,3661,
+3753,3841,3905,3938,3943,3932,3915,3900,3888,3880,3876,3875,3880,3890,3903,3918,3933,3951,3974,4003,4038,
+4075,4109,4141,4169,4198,4232,4272,4315,4357,4394,4423,4447,4467,4489,4514,4542,4570,4597,4621,4641,4661,
+4681,4706,4733,4760,4781,4795,4798,4795,4788,4780,4772,4764,4753,4740,4728,4719,4715,4715,4718,4719,4718,
+4716,4715,4715,4717,4716,4710,4695,4672,4643,4613,4584,4559,4542,4532,4526,4519,4508,4492,4470,4449,4431,
+4418,4408,4399,4388,4378,4372,4372,4378,4384,4383,4372,4352,4329,4311,4302,4300,4297,4286,4262,4228,4191,
+4158,4134,4118,4106,4093,4078,4059,4038,4014,3990,3963,3935,3906,3879,3855,3833,3813,3793,3773,3754,3738,
+3726,3719,3716,3715,3715,3711,3704,3691,3676,3660,3648,3642,3641,3642,3640,3634,3624,3612,3602,3596,3593,
+3590,3586,3581,3575,3568,3559,3546,3527,3502,3477,3459,3456,3469,3499,3541,3589,3639,3687,3731,3768,3792,
+3801,3796,3781,3763,3752,3754,3768,3787,3800,3796,3773,3736,3695,3663,3646,3642,3640,3626,3590,3529,3449,
+3361,3276,3201,3138,3086,3040,3000,2964,2932,2905,2880,2856,2831,2806,2779,2750,2717,2678,2634,2587,2539,
+2494,2454,2419,2387,2356,2322,2286,2246,2205,2164,2124,2085,2047,2011,1976,1942,1910,1877,1841,1803,1761,
+1719,1679,1641,1606,1573,1540,1508,1479,1453,1429,1406,1378,1343,1301,1255,1212,1175,1144,1116,1087,1053,
+1015,976,939,904,871,835,795,753,711,673,639,605,569,530,488,449,413,381,350,316,278,
+237,197,160,127,95,63,28,-7,-41,-74,-105,-136,-170,-206,-243,-279,-313,-346,-379,-412,-445,
+-478,-511,-544,-577,-609,-640,-669,-696,-725,-757,-793,-832,-871,-906,-938,-969,-1000,-1033,-1066,-1096,-1123,
+-1147,-1172,-1200,-1231,-1262,-1292,-1318,-1343,-1370,-1400,-1431,-1461,-1487,-1511,-1535,-1565,-1598,-1634,-1668,-1697,-1721,
+-1744,-1769,-1797,-1827,-1855,-1879,-1899,-1915,-1931,-1945,-1958,-1971,-1982,-1993,-2006,-2021,-2037,-2053,-2068,-2082,-2095,
+-2109,-2121,-2132,-2141,-2150,-2161,-2173,-2188,-2204,-2219,-2232,-2245,-2257,-2269,-2279,-2288,-2297,-2306,-2317,-2331,-2346,
+-2357,-2363,-2365,-2367,-2372,-2381,-2392,-2399,-2398,-2387,-2371,-2353,-2338,-2327,-2318,-2308,-2297,-2285,-2275,-2268,-2262,
+-2256,-2249,-2239,-2229,-2220,-2213,-2205,-2197,-2188,-2180,-2174,-2170,-2165,-2159,-2151,-2141,-2132,-2125,-2120,-2114,-2107,
+-2099,-2089,-2081,-2073,-2066,-2059,-2051,-2043,-2036,-2030,-2023,-2012,-1998,-1983,-1972,-1968,-1967,-1964,-1952,-1932,-1911,
+-1896,-1894,-1904,-1919,-1928,-1925,-1910,-1892,-1876,-1865,-1857,-1848,-1835,-1821,-1811,-1808,-1811,-1813,-1809,-1798,-1783,
+-1775,-1780,-1800,-1829,-1860,-1885,-1899,-1904,-1902,-1897,-1890,-1881,-1869,-1855,-1842,-1831,-1827,-1830,-1842,-1859,-1877,
+-1891,-1896,-1893,-1884,-1875,-1870,-1869,-1868,-1864,-1857,-1847,-1841,-1843,-1855,-1871,-1885,-1890,-1885,-1873,-1861,-1853,
+-1849,-1845,-1837,-1823,-1806,-1791,-1785,-1788,-1795,-1798,-1792,-1776,-1755,-1733,-1710,-1682,-1642,-1586,-1520,-1459,-1420,
+-1414,-1440,-1486,-1533,-1568,-1587,-1594,-1600,-1608,-1622,-1639,-1659,-1682,-1711,-1739,-1757,-1749,-1709,-1639,-1558,-1489,
+-1450,-1445,-1464,-1488,-1502,-1500,-1487,-1473,-1465,-1464,-1468,-1472,-1475,-1480,-1490,-1506,-1525,-1541,-1552,-1556,-1556,
+-1556,-1560,-1568,-1581,-1599,-1621,-1646,-1672,-1699,-1723,-1746,-1769,-1794,-1826,-1868,-1923,-1991,-2065,-2138,-2199,-2241,
+-2264,-2274,-2281,-2292,-2310,-2330,-2344,-2349,-2348,-2344,-2346,-2353,-2365,-2375,-2381,-2382,-2384,-2389,-2398,-2411,-2424,
+-2434,-2442,-2449,-2454,-2458,-2461,-2464,-2468,-2475,-2485,-2498,-2509,-2515,-2516,-2513,-2510,-2506,-2501,-2493,-2480,-2464,
+-2446,-2429,-2414,-2400,-2387,-2375,-2364,-2355,-2347,-2340,-2332,-2321,-2308,-2297,-2289,-2286,-2289,-2296,-2305,-2314,-2322,
+-2328,-2332,-2333,-2330,-2324,-2314,-2300,-2287,-2276,-2270,-2269,-2271,-2272,-2270,-2265,-2258,-2253,-2249,-2247,-2243,-2236,
+-2224,-2210,-2195,-2181,-2168,-2155,-2142,-2130,-2119,-2109,-2099,-2088,-2077,-2067,-2060,-2059,-2067,-2084,-2107,-2134,-2160,
+-2181,-2195,-2198,-2190,-2172,-2147,-2121,-2096,-2073,-2053,-2034,-2020,-2011,-2008,-2011,-2017,-2020,-2019,-2012,-2002,-1991,
+-1982,-1974,-1965,-1954,-1941,-1928,-1915,-1906,-1897,-1888,-1878,-1865,-1853,-1844,-1839,-1837,-1839,-1840,-1841,-1839,-1836,
+-1831,-1826,-1818,-1810,-1801,-1792,-1786,-1784,-1789,-1799,-1814,-1832,-1848,-1860,-1868,-1871,-1867,-1856,-1839,-1819,-1796,
+-1777,-1765,-1762,-1770,-1787,-1810,-1836,-1862,-1885,-1904,-1917,-1924,-1924,-1919,-1908,-1896,-1885,-1875,-1869,-1864,-1860,
+-1856,-1852,-1849,-1848,-1849,-1851,-1852,-1850,-1846,-1841,-1834,-1827,-1821,-1815,-1809,-1802,-1795,-1787,-1777,-1764,-1747,
+-1728,-1706,-1683,-1662,-1643,-1628,-1615,-1604,-1593,-1579,-1563,-1543,-1521,-1499,-1479,-1460,-1444,-1428,-1413,-1398,-1384,
+-1371,-1359,-1347,-1334,-1320,-1305,-1290,-1276,-1264,-1252,-1240,-1227,-1214,-1200,-1185,-1169,-1154,-1139,-1125,-1113,-1103,
+-1094,-1085,-1077,-1069,-1063,-1059,-1057,-1055,-1053,-1050,-1047,-1045,-1046,-1049,-1053,-1056,-1058,-1058,-1058,-1059,-1060,
+-1063,-1068,-1073,-1080,-1086,-1091,-1095,-1096,-1096,-1096,-1099,-1103,-1109,-1114,-1118,-1122,-1126,-1133,-1141,-1148,-1152,
+-1152,-1148,-1142,-1138,-1134,-1132,-1128,-1123,-1117,-1112,-1110,-1111,-1112,-1112,-1110,-1107,-1105,-1107,-1112,-1119,-1122,
+-1120,-1113,-1102,-1089,-1076,-1062,-1048,-1032,-1017,-1004,-995,-991,-991,-992,-991,-987,-980,-969,-957,-944,-930,
+-917,-905,-893,-880,-867,-854,-842,-831,-821,-812,-804,-797,-793,-792,-793,-794,-790,-782,-771,-758,-748,
+-742,-738,-735,-730,-721,-709,-695,-680,-665,-649,-632,-615,-598,-582,-565,-546,-526,-507,-490,-478,-468,
+-457,-442,-423,-399,-374,-350,-326,-302,-277,-251,-225,-201,-180,-159,-138,-114,-87,-60,-34,-9,13,
+36,59,84,109,133,155,175,193,212,233,258,288,321,355,389,421,451,477,499,515,526,
+531,532,530,521,503,477,452,449,491,590,744,928,1106,1247,1335,1377,1393,1401,1409,1411,1394,
+1354,1296,1233,1179,1138,1107,1079,1046,1010,976,951,936,927,923,921,924,934,952,974,993,1005,
+1007,1005,1002,1001,1006,1017,1036,1063,1099,1141,1184,1220,1247,1265,1281,1299,1322,1348,1372,1389,1397,
+1397,1394,1392,1390,1387,1376,1355,1324,1287,1250,1218,1192,1175,1163,1156,1154,1157,1164,1172,1178,1180,
+1180,1180,1181,1182,1181,1172,1153,1126,1097,1072,1052,1037,1019,995,962,924,887,856,829,803,774,
+741,706,676,654,643,638,635,629,622,615,612,615,625,637,647,653,654,649,638,622,599,
+573,546,522,505,496,495,501,511,522,532,542,552,566,585,610,639,667,684,684,665,632,
+596,569,556,560,576,597,619,639,659,678,696,710,722,736,756,787,830,878,925,965,993,
+1011,1020,1017,1003,980,959,953,979,1044,1140,1248,1343,1406,1430,1424,1404,1385,1378,1382,1395,1410,
+1425,1437,1448,1456,1460,1459,1454,1445,1435,1426,1419,1416,1418,1425,1439,1461,1494,1538,1592,1652,1708,
+1753,1778,1783,1773,1761,1755,1761,1778,1801,1822,1836,1846,1855,1866,1882,1902,1921,1940,1956,1971,1987,
+2003,2020,2037,2052,2066,2079,2091,2104,2117,2134,2153,2175,2197,2216,2233,2248,2260,2271,2281,2292,2304,
+2321,2342,2367,2392,2413,2427,2436,2441,2448,2458,2470,2482,2491,2497,2504,2514,2527,2544,2560,2575,2590,
+2607,2626,2646,2666,2681,2693,2702,2709,2716,2722,2725,2728,2732,2742,2759,2779,2798,2810,2813,2808,2799,
+2790,2780,2770,2759,2750,2742,2738,2735,2730,2721,2709,2697,2690,2686,2684,2680,2671,2658,2646,2639,2638,
+2639,2635,2633,2630,2624,2617,2614,2614,2619,2626,2632,2635,2634,2630,2623,2613,2600,2586,2574,2564,2559,
+2558,2559,2561,2563,2566,2569,2574,2579,2584,2588,2592,2596,2603,2613,2628,2643,2659,2673,2688,2708,2735,
+2773,2816,2861,2900,2932,2959,2986,3016,3048,3076,3096,3106,3112,3122,3143,3175,3211,3244,3267,3279,3287,
+3297,3312,3331,3348,3362,3375,3391,3413,3439,3464,3484,3495,3501,3506,3514,3527,3540,3550,3556,3561,3570,
+3583,3601,3619,3633,3641,3644,3644,3645,3646,3648,3648,3650,3655,3666,3682,3700,3714,3717,3711,3701,3698,
+3711,3743,3786,3824,3836,3811,3749,3668,3594,3554,3562,3617,3700,3788,3859,3902,3916,3910,3894,3875,3858,
+3846,3842,3845,3855,3871,3887,3901,3913,3927,3946,3973,4008,4046,4084,4118,4149,4180,4214,4252,4291,4330,
+4365,4397,4426,4454,4481,4509,4537,4565,4592,4615,4635,4653,4673,4704,4749,4807,4870,4921,4949,4946,4916,
+4871,4826,4790,4766,4749,4735,4720,4706,4696,4693,4694,4697,4700,4702,4706,4714,4724,4731,4729,4714,4687,
+4651,4614,4582,4558,4541,4529,4515,4499,4480,4461,4448,4443,4445,4449,4447,4432,4406,4374,4345,4328,4325,
+4332,4341,4344,4338,4326,4313,4302,4292,4280,4262,4238,4212,4189,4171,4157,4143,4125,4101,4072,4044,4020,
+4000,3982,3961,3935,3905,3874,3846,3822,3802,3784,3766,3746,3726,3707,3692,3682,3677,3676,3674,3668,3658,
+3643,3628,3616,3609,3606,3604,3598,3587,3572,3557,3547,3545,3547,3551,3553,3550,3543,3531,3517,3499,3481,
+3464,3453,3448,3448,3449,3448,3447,3452,3473,3519,3588,3671,3749,3804,3829,3825,3805,3784,3775,3783,3801,
+3820,3826,3815,3787,3748,3710,3680,3662,3652,3640,3617,3575,3512,3433,3344,3256,3174,3102,3041,2990,2946,
+2910,2880,2857,2838,2821,2804,2783,2758,2726,2688,2646,2599,2552,2505,2460,2418,2380,2344,2308,2272,2235,
+2198,2162,2127,2092,2056,2017,1977,1937,1899,1863,1829,1794,1757,1718,1679,1641,1607,1576,1548,1521,1494,
+1468,1441,1413,1381,1345,1304,1261,1220,1182,1150,1119,1087,1052,1013,974,937,903,870,835,798,758,
+718,681,647,612,576,538,497,459,425,393,362,327,289,249,210,174,142,112,81,47,11,
+-23,-57,-89,-122,-157,-193,-230,-264,-296,-326,-356,-387,-420,-454,-488,-524,-558,-590,-621,-648,-675,
+-703,-734,-769,-807,-845,-881,-914,-946,-977,-1010,-1043,-1074,-1101,-1127,-1153,-1181,-1212,-1245,-1276,-1304,-1332,
+-1359,-1387,-1415,-1443,-1470,-1496,-1524,-1555,-1589,-1624,-1656,-1684,-1708,-1731,-1755,-1782,-1811,-1838,-1862,-1881,-1897,
+-1911,-1925,-1938,-1952,-1967,-1983,-2001,-2018,-2035,-2051,-2066,-2080,-2094,-2107,-2118,-2127,-2135,-2144,-2155,-2168,-2184,
+-2199,-2213,-2225,-2237,-2249,-2261,-2272,-2282,-2292,-2303,-2317,-2333,-2349,-2361,-2368,-2371,-2375,-2381,-2391,-2401,-2406,
+-2402,-2390,-2372,-2355,-2342,-2333,-2325,-2315,-2304,-2292,-2281,-2274,-2269,-2264,-2258,-2251,-2244,-2238,-2231,-2223,-2213,
+-2203,-2195,-2191,-2189,-2187,-2182,-2173,-2164,-2156,-2150,-2145,-2138,-2128,-2116,-2105,-2098,-2094,-2091,-2086,-2077,-2068,
+-2059,-2052,-2046,-2037,-2025,-2011,-2001,-1997,-1998,-1998,-1989,-1969,-1943,-1921,-1912,-1917,-1930,-1941,-1940,-1928,-1911,
+-1895,-1884,-1876,-1867,-1854,-1839,-1826,-1820,-1821,-1824,-1822,-1813,-1800,-1793,-1798,-1817,-1848,-1880,-1908,-1927,-1936,
+-1938,-1935,-1929,-1919,-1905,-1891,-1878,-1869,-1866,-1870,-1880,-1892,-1905,-1915,-1921,-1921,-1916,-1909,-1900,-1892,-1883,
+-1874,-1864,-1855,-1853,-1860,-1874,-1894,-1911,-1922,-1924,-1920,-1914,-1909,-1902,-1893,-1877,-1857,-1836,-1821,-1815,-1817,
+-1821,-1822,-1818,-1811,-1804,-1796,-1780,-1746,-1687,-1610,-1532,-1477,-1466,-1501,-1569,-1643,-1698,-1723,-1719,-1701,-1684,
+-1678,-1682,-1696,-1717,-1746,-1782,-1817,-1838,-1829,-1785,-1714,-1636,-1574,-1544,-1546,-1565,-1584,-1591,-1586,-1574,-1563,
+-1555,-1548,-1538,-1527,-1520,-1524,-1542,-1571,-1600,-1621,-1628,-1625,-1619,-1616,-1621,-1634,-1651,-1671,-1694,-1719,-1746,
+-1776,-1807,-1842,-1880,-1922,-1969,-2022,-2080,-2141,-2203,-2261,-2309,-2343,-2361,-2368,-2372,-2379,-2392,-2408,-2421,-2427,
+-2426,-2422,-2422,-2429,-2441,-2455,-2465,-2471,-2476,-2481,-2491,-2503,-2515,-2525,-2533,-2539,-2544,-2549,-2553,-2555,-2557,
+-2560,-2565,-2572,-2578,-2583,-2583,-2581,-2578,-2575,-2572,-2567,-2558,-2546,-2530,-2513,-2497,-2482,-2468,-2456,-2443,-2431,
+-2421,-2412,-2403,-2394,-2384,-2374,-2366,-2362,-2362,-2367,-2373,-2379,-2383,-2385,-2385,-2384,-2384,-2381,-2374,-2363,-2349,
+-2335,-2325,-2319,-2318,-2318,-2317,-2314,-2308,-2303,-2298,-2294,-2288,-2280,-2269,-2257,-2245,-2233,-2221,-2208,-2194,-2180,
+-2167,-2156,-2147,-2138,-2128,-2115,-2102,-2091,-2086,-2089,-2100,-2120,-2145,-2173,-2198,-2216,-2224,-2222,-2212,-2196,-2176,
+-2153,-2128,-2101,-2074,-2051,-2035,-2026,-2025,-2026,-2027,-2027,-2024,-2021,-2017,-2011,-2003,-1992,-1979,-1965,-1954,-1946,
+-1940,-1934,-1926,-1915,-1903,-1892,-1883,-1878,-1875,-1873,-1871,-1869,-1867,-1866,-1865,-1864,-1860,-1854,-1844,-1832,-1822,
+-1815,-1813,-1816,-1822,-1828,-1834,-1838,-1842,-1845,-1848,-1850,-1848,-1843,-1834,-1824,-1814,-1806,-1802,-1803,-1809,-1820,
+-1838,-1860,-1885,-1909,-1930,-1945,-1951,-1950,-1944,-1933,-1920,-1906,-1892,-1878,-1867,-1860,-1856,-1855,-1856,-1857,-1857,
+-1855,-1852,-1847,-1841,-1834,-1825,-1815,-1805,-1795,-1786,-1776,-1765,-1752,-1736,-1718,-1697,-1676,-1656,-1638,-1622,-1610,
+-1598,-1587,-1573,-1556,-1536,-1515,-1494,-1474,-1456,-1439,-1423,-1408,-1393,-1380,-1368,-1357,-1345,-1333,-1319,-1305,-1290,
+-1276,-1262,-1249,-1237,-1225,-1213,-1201,-1187,-1172,-1157,-1142,-1129,-1118,-1108,-1099,-1090,-1082,-1076,-1071,-1067,-1063,
+-1059,-1056,-1053,-1053,-1056,-1059,-1063,-1065,-1066,-1067,-1068,-1070,-1072,-1075,-1078,-1082,-1086,-1092,-1099,-1105,-1109,
+-1111,-1113,-1117,-1122,-1128,-1134,-1139,-1143,-1147,-1153,-1160,-1166,-1169,-1170,-1167,-1164,-1162,-1161,-1160,-1159,-1157,
+-1154,-1151,-1149,-1146,-1141,-1133,-1125,-1117,-1114,-1117,-1124,-1131,-1133,-1129,-1119,-1108,-1098,-1090,-1083,-1073,-1060,
+-1044,-1028,-1014,-1003,-996,-992,-988,-983,-977,-970,-961,-951,-941,-931,-920,-909,-897,-883,-868,-853,-841,
+-830,-821,-815,-809,-805,-802,-800,-797,-792,-783,-772,-761,-752,-748,-746,-745,-740,-732,-721,-707,-693,
+-679,-665,-650,-634,-617,-601,-583,-566,-548,-531,-516,-503,-492,-481,-466,-446,-423,-398,-372,-348,-323,
+-298,-273,-249,-227,-206,-186,-165,-140,-113,-85,-58,-32,-9,14,37,61,86,111,134,156,178,
+200,224,251,280,312,344,377,410,442,470,493,509,521,528,534,536,530,511,481,450,439,
+472,564,711,889,1063,1198,1278,1309,1311,1306,1308,1315,1316,1302,1268,1220,1167,1116,1072,1033,1001,
+974,954,941,934,931,930,933,944,962,986,1009,1025,1031,1029,1024,1022,1025,1033,1046,1062,1085,
+1114,1148,1183,1215,1239,1257,1274,1293,1317,1342,1361,1370,1369,1364,1363,1371,1386,1401,1404,1388,1352,
+1304,1254,1213,1186,1173,1168,1167,1166,1164,1165,1168,1174,1183,1192,1201,1207,1207,1197,1175,1142,1104,
+1066,1036,1012,993,972,944,908,868,829,795,767,742,716,689,664,643,630,624,619,613,602,
+588,574,564,559,558,557,552,542,529,513,497,480,462,443,425,412,406,409,419,435,454,
+471,485,494,499,501,503,508,517,529,538,540,533,518,501,489,487,496,513,535,557,580,
+603,626,648,668,688,712,748,798,861,927,986,1029,1055,1067,1071,1072,1070,1063,1052,1047,1059,
+1100,1171,1264,1361,1440,1487,1502,1492,1473,1458,1455,1463,1479,1498,1516,1532,1545,1553,1554,1546,1529,
+1508,1487,1470,1459,1454,1453,1456,1466,1490,1532,1593,1662,1726,1769,1783,1774,1754,1740,1744,1767,1800,
+1833,1855,1866,1871,1877,1888,1904,1922,1939,1954,1968,1982,1998,2012,2023,2033,2041,2052,2067,2084,2102,
+2118,2133,2148,2165,2183,2203,2223,2241,2256,2269,2280,2291,2302,2316,2333,2355,2378,2399,2416,2429,2439,
+2449,2462,2475,2489,2499,2507,2515,2524,2537,2551,2567,2582,2597,2613,2632,2652,2671,2686,2698,2708,2717,
+2725,2731,2734,2734,2734,2739,2749,2766,2783,2796,2802,2801,2795,2788,2782,2775,2767,2759,2752,2747,2743,
+2738,2729,2717,2705,2696,2690,2688,2686,2680,2669,2656,2645,2639,2657,2657,2660,2661,2659,2655,2650,2648,
+2649,2652,2652,2649,2640,2629,2617,2608,2602,2598,2596,2593,2591,2589,2587,2587,2587,2588,2589,2591,2592,
+2593,2593,2593,2596,2604,2618,2637,2659,2678,2694,2708,2726,2753,2791,2838,2884,2923,2948,2964,2974,2987,
+3003,3023,3042,3059,3076,3098,3126,3158,3189,3213,3229,3240,3253,3272,3298,3326,3350,3367,3380,3394,3412,
+3435,3458,3479,3496,3511,3525,3540,3554,3564,3572,3579,3589,3604,3624,3643,3657,3663,3665,3667,3673,3683,
+3694,3701,3704,3706,3710,3721,3735,3746,3746,3733,3713,3697,3698,3722,3764,3807,3830,3816,3764,3687,3609,
+3557,3549,3587,3656,3736,3804,3849,3868,3867,3854,3836,3819,3804,3798,3802,3817,3841,3866,3887,3902,3912,
+3926,3948,3980,4018,4058,4093,4125,4155,4188,4224,4261,4297,4330,4359,4388,4419,4452,4486,4519,4550,4578,
+4605,4627,4646,4661,4682,4717,4775,4855,4943,5017,5053,5043,4992,4920,4852,4804,4782,4779,4782,4784,4781,
+4775,4766,4753,4736,4715,4694,4682,4681,4691,4703,4707,4696,4669,4634,4601,4577,4563,4552,4536,4510,4476,
+4444,4426,4429,4453,4487,4516,4523,4500,4450,4386,4327,4288,4274,4283,4300,4316,4323,4320,4311,4300,4288,
+4273,4255,4235,4214,4197,4184,4171,4154,4128,4096,4061,4030,4009,3994,3981,3964,3937,3903,3865,3831,3803,
+3783,3769,3757,3744,3727,3707,3686,3667,3652,3642,3634,3627,3617,3605,3592,3580,3573,3569,3565,3558,3546,
+3532,3519,3511,3510,3513,3517,3519,3517,3513,3504,3492,3476,3458,3443,3434,3432,3434,3432,3421,3402,3389,
+3397,3440,3519,3623,3729,3813,3861,3876,3868,3854,3848,3853,3865,3876,3877,3863,3837,3800,3760,3720,3684,
+3655,3629,3602,3568,3522,3462,3392,3317,3243,3173,3109,3051,2996,2946,2901,2863,2832,2805,2779,2751,2719,
+2685,2650,2616,2583,2548,2510,2468,2425,2381,2338,2297,2257,2218,2181,2147,2116,2086,2055,2020,1980,1936,
+1891,1851,1815,1783,1751,1717,1680,1643,1608,1578,1552,1527,1500,1470,1437,1402,1367,1331,1295,1259,1222,
+1186,1151,1117,1082,1046,1009,970,933,896,861,827,791,755,719,685,651,617,581,544,506,470,
+436,404,373,339,303,264,227,193,161,130,98,64,28,-6,-40,-72,-105,-139,-175,-209,-242,
+-272,-301,-330,-362,-395,-430,-466,-502,-536,-569,-600,-629,-657,-685,-716,-750,-787,-823,-858,-891,-923,
+-955,-987,-1020,-1052,-1081,-1108,-1134,-1163,-1194,-1227,-1260,-1291,-1320,-1347,-1373,-1401,-1428,-1457,-1486,-1517,-1549,
+-1581,-1613,-1643,-1669,-1695,-1719,-1744,-1771,-1799,-1825,-1849,-1870,-1887,-1900,-1912,-1924,-1938,-1955,-1975,-1995,-2015,
+-2033,-2049,-2065,-2080,-2095,-2108,-2118,-2124,-2129,-2136,-2147,-2162,-2179,-2195,-2209,-2221,-2232,-2244,-2257,-2269,-2281,
+-2291,-2303,-2318,-2334,-2350,-2362,-2369,-2373,-2378,-2386,-2396,-2406,-2411,-2407,-2394,-2378,-2362,-2350,-2342,-2334,-2325,
+-2315,-2305,-2296,-2289,-2282,-2275,-2268,-2262,-2258,-2254,-2250,-2242,-2232,-2221,-2213,-2208,-2206,-2203,-2197,-2189,-2181,
+-2175,-2172,-2169,-2163,-2151,-2138,-2125,-2118,-2116,-2114,-2110,-2101,-2090,-2080,-2073,-2068,-2061,-2051,-2038,-2028,-2025,
+-2028,-2030,-2023,-2004,-1975,-1948,-1933,-1932,-1942,-1951,-1952,-1942,-1925,-1910,-1900,-1894,-1887,-1874,-1857,-1841,-1832,
+-1830,-1831,-1830,-1822,-1812,-1806,-1812,-1833,-1865,-1900,-1930,-1952,-1962,-1964,-1959,-1949,-1935,-1920,-1906,-1897,-1895,
+-1897,-1902,-1908,-1915,-1922,-1931,-1940,-1946,-1945,-1937,-1922,-1905,-1889,-1878,-1872,-1871,-1875,-1884,-1897,-1912,-1926,
+-1937,-1945,-1948,-1948,-1945,-1940,-1931,-1917,-1901,-1886,-1874,-1865,-1857,-1850,-1842,-1837,-1840,-1849,-1855,-1843,-1799,
+-1724,-1633,-1554,-1517,-1537,-1607,-1697,-1775,-1814,-1813,-1785,-1754,-1738,-1740,-1755,-1777,-1801,-1828,-1860,-1888,-1901,
+-1885,-1836,-1765,-1694,-1645,-1629,-1640,-1663,-1680,-1684,-1676,-1664,-1654,-1642,-1625,-1599,-1571,-1553,-1554,-1578,-1617,
+-1656,-1681,-1689,-1683,-1675,-1674,-1684,-1703,-1725,-1748,-1770,-1792,-1815,-1844,-1880,-1924,-1979,-2041,-2107,-2172,-2232,
+-2284,-2329,-2369,-2403,-2429,-2446,-2455,-2460,-2464,-2473,-2485,-2497,-2505,-2508,-2507,-2508,-2513,-2523,-2535,-2547,-2557,
+-2565,-2575,-2586,-2598,-2609,-2617,-2622,-2625,-2629,-2633,-2638,-2641,-2641,-2640,-2640,-2641,-2645,-2648,-2649,-2647,-2645,
+-2642,-2640,-2637,-2633,-2624,-2611,-2596,-2580,-2565,-2553,-2541,-2528,-2515,-2502,-2490,-2480,-2471,-2463,-2455,-2448,-2443,
+-2441,-2442,-2445,-2447,-2446,-2443,-2439,-2437,-2435,-2434,-2431,-2423,-2411,-2396,-2384,-2376,-2372,-2370,-2368,-2364,-2357,
+-2350,-2343,-2337,-2330,-2321,-2312,-2302,-2293,-2283,-2273,-2262,-2247,-2232,-2217,-2203,-2192,-2183,-2174,-2164,-2153,-2141,
+-2132,-2127,-2127,-2133,-2145,-2162,-2181,-2199,-2214,-2224,-2231,-2235,-2235,-2229,-2214,-2190,-2158,-2122,-2088,-2062,-2045,
+-2038,-2037,-2040,-2045,-2048,-2048,-2044,-2036,-2025,-2013,-2002,-1994,-1988,-1983,-1977,-1969,-1959,-1948,-1938,-1929,-1923,
+-1917,-1911,-1905,-1900,-1895,-1892,-1890,-1889,-1887,-1884,-1878,-1871,-1862,-1854,-1846,-1838,-1830,-1821,-1811,-1802,-1797,
+-1798,-1806,-1819,-1835,-1849,-1859,-1862,-1859,-1850,-1838,-1826,-1817,-1814,-1819,-1835,-1858,-1888,-1918,-1946,-1967,-1982,
+-1988,-1988,-1981,-1970,-1956,-1939,-1922,-1906,-1892,-1881,-1872,-1866,-1862,-1860,-1859,-1857,-1855,-1849,-1840,-1829,-1816,
+-1803,-1790,-1778,-1767,-1755,-1742,-1727,-1710,-1691,-1670,-1650,-1631,-1615,-1603,-1591,-1580,-1566,-1549,-1530,-1509,-1489,
+-1471,-1454,-1437,-1421,-1405,-1389,-1374,-1359,-1345,-1332,-1319,-1306,-1292,-1277,-1262,-1248,-1236,-1226,-1216,-1206,-1194,
+-1181,-1167,-1154,-1143,-1134,-1125,-1117,-1108,-1100,-1093,-1086,-1080,-1073,-1067,-1062,-1060,-1061,-1064,-1069,-1071,-1072,
+-1071,-1071,-1073,-1076,-1081,-1085,-1087,-1089,-1092,-1097,-1104,-1111,-1117,-1122,-1126,-1130,-1136,-1143,-1151,-1157,-1161,
+-1165,-1168,-1172,-1176,-1179,-1180,-1179,-1178,-1177,-1177,-1178,-1180,-1181,-1181,-1182,-1181,-1177,-1170,-1159,-1147,-1137,
+-1133,-1134,-1139,-1144,-1144,-1138,-1130,-1120,-1113,-1108,-1103,-1096,-1086,-1073,-1058,-1044,-1031,-1019,-1008,-997,-987,
+-978,-970,-962,-954,-946,-938,-929,-919,-906,-891,-875,-859,-844,-833,-824,-817,-811,-807,-804,-803,-801,
+-796,-789,-778,-768,-760,-757,-755,-754,-751,-743,-732,-719,-706,-694,-681,-667,-650,-632,-614,-597,-582,
+-567,-552,-538,-524,-509,-493,-476,-456,-434,-411,-388,-365,-342,-319,-296,-274,-254,-236,-217,-196,-171,
+-143,-114,-86,-60,-36,-14,9,32,57,82,106,130,154,181,209,240,271,303,334,365,397,
+428,457,480,497,509,519,528,534,532,514,481,444,424,446,525,661,831,1001,1136,1218,1249,
+1247,1236,1233,1240,1251,1254,1240,1208,1161,1108,1055,1008,971,946,933,928,928,931,935,944,960,
+984,1013,1039,1058,1066,1066,1065,1066,1071,1080,1091,1103,1119,1140,1167,1196,1222,1243,1259,1275,1293,
+1313,1331,1341,1338,1327,1316,1315,1330,1358,1387,1403,1394,1359,1308,1254,1212,1188,1180,1181,1183,1181,
+1177,1174,1177,1187,1202,1219,1231,1232,1220,1194,1155,1108,1062,1020,987,960,936,909,874,832,787,
+743,705,673,647,625,609,597,592,590,588,580,563,537,504,472,444,422,404,385,362,334,
+303,271,244,223,209,202,203,210,226,248,275,306,336,362,382,393,395,392,388,386,390,
+400,412,422,428,427,424,424,429,440,456,475,494,514,535,557,581,606,637,678,735,811,
+898,985,1056,1101,1119,1118,1112,1111,1118,1127,1132,1133,1136,1154,1196,1264,1348,1428,1488,1516,1515,
+1497,1477,1468,1472,1489,1512,1537,1560,1582,1599,1608,1607,1594,1571,1545,1523,1507,1498,1492,1488,1490,
+1506,1542,1598,1664,1721,1756,1763,1750,1735,1735,1759,1801,1845,1878,1893,1894,1891,1893,1903,1919,1934,
+1946,1957,1970,1987,2007,2024,2036,2041,2045,2052,2066,2085,2106,2124,2138,2150,2164,2180,2199,2219,2238,
+2255,2269,2283,2296,2309,2324,2341,2360,2379,2397,2414,2427,2440,2453,2469,2486,2503,2517,2526,2533,2540,
+2549,2561,2574,2588,2603,2618,2634,2651,2667,2681,2692,2702,2712,2721,2728,2733,2733,2733,2735,2742,2754,
+2768,2778,2783,2783,2780,2778,2778,2778,2776,2771,2764,2758,2753,2748,2741,2731,2719,2707,2697,2691,2687,
+2682,2675,2667,2660,2657,2683,2688,2693,2696,2696,2691,2685,2680,2676,2673,2667,2657,2644,2632,2623,2620,
+2621,2623,2622,2618,2612,2607,2604,2604,2605,2604,2602,2599,2597,2597,2600,2604,2610,2619,2633,2652,2670,
+2686,2695,2701,2710,2731,2767,2815,2865,2906,2928,2935,2932,2933,2943,2966,2997,3033,3069,3104,3137,3167,
+3190,3207,3218,3229,3245,3268,3296,3325,3348,3364,3375,3386,3400,3416,3434,3452,3470,3488,3506,3523,3538,
+3549,3557,3567,3582,3603,3626,3645,3656,3659,3661,3667,3682,3702,3722,3737,3747,3754,3764,3778,3790,3794,
+3783,3759,3732,3717,3723,3752,3789,3815,3811,3770,3700,3623,3565,3547,3571,3628,3697,3758,3797,3814,3814,
+3804,3791,3778,3765,3757,3758,3772,3798,3831,3863,3886,3900,3911,3926,3952,3988,4028,4065,4096,4124,4152,
+4186,4222,4259,4291,4318,4345,4375,4410,4449,4487,4520,4550,4579,4607,4633,4655,4672,4689,4719,4772,4847,
+4933,5005,5039,5025,4971,4899,4839,4807,4810,4837,4874,4909,4934,4945,4940,4913,4865,4802,4735,4681,4652,
+4646,4653,4658,4650,4630,4606,4591,4588,4594,4593,4573,4531,4477,4429,4409,4425,4473,4534,4582,4594,4561,
+4490,4403,4325,4273,4256,4265,4286,4304,4311,4306,4294,4280,4267,4255,4241,4224,4206,4190,4175,4160,4141,
+4116,4086,4056,4031,4012,3998,3983,3961,3930,3889,3845,3805,3775,3756,3747,3743,3740,3732,3717,3695,3670,
+3645,3624,3607,3594,3581,3569,3556,3547,3541,3538,3536,3532,3524,3513,3503,3496,3493,3492,3491,3490,3489,
+3488,3486,3482,3472,3458,3442,3430,3426,3428,3429,3422,3406,3392,3394,3426,3492,3583,3680,3764,3823,3859,
+3880,3898,3918,3940,3954,3956,3942,3915,3879,3838,3794,3747,3700,3654,3613,3576,3543,3508,3470,3427,3379,
+3328,3276,3221,3161,3097,3030,2966,2908,2857,2811,2767,2720,2671,2624,2583,2552,2528,2508,2485,2455,2419,
+2379,2338,2297,2256,2214,2171,2131,2096,2066,2040,2011,1977,1935,1890,1846,1808,1775,1745,1713,1678,1640,
+1604,1573,1547,1523,1496,1464,1427,1387,1350,1315,1283,1252,1219,1183,1145,1108,1072,1037,1002,966,929,
+892,856,820,786,753,720,687,653,619,585,549,514,480,448,417,385,353,319,285,251,218,
+185,152,118,82,46,10,-23,-56,-89,-122,-155,-188,-219,-249,-279,-311,-345,-382,-418,-453,-486,
+-517,-548,-578,-609,-640,-671,-704,-737,-772,-807,-841,-873,-904,-935,-967,-999,-1031,-1061,-1089,-1116,-1145,
+-1175,-1207,-1240,-1272,-1301,-1327,-1353,-1379,-1408,-1439,-1473,-1506,-1539,-1570,-1599,-1627,-1654,-1681,-1709,-1736,-1763,
+-1789,-1816,-1840,-1863,-1881,-1896,-1908,-1920,-1933,-1951,-1970,-1991,-2010,-2027,-2044,-2061,-2079,-2097,-2111,-2119,-2122,
+-2124,-2129,-2139,-2156,-2176,-2194,-2208,-2219,-2229,-2240,-2253,-2267,-2280,-2292,-2304,-2317,-2332,-2347,-2359,-2367,-2373,
+-2380,-2389,-2400,-2410,-2416,-2413,-2402,-2388,-2373,-2360,-2350,-2342,-2335,-2328,-2321,-2315,-2308,-2299,-2289,-2279,-2272,
+-2269,-2268,-2266,-2261,-2252,-2242,-2233,-2227,-2223,-2219,-2212,-2203,-2196,-2193,-2193,-2193,-2188,-2179,-2166,-2154,-2146,
+-2143,-2140,-2135,-2125,-2114,-2105,-2100,-2096,-2089,-2077,-2063,-2052,-2048,-2051,-2054,-2049,-2030,-2002,-1973,-1955,-1952,
+-1960,-1968,-1967,-1956,-1939,-1924,-1914,-1908,-1901,-1889,-1872,-1855,-1845,-1843,-1845,-1845,-1839,-1829,-1822,-1826,-1844,
+-1875,-1911,-1944,-1967,-1979,-1980,-1972,-1957,-1938,-1922,-1911,-1907,-1911,-1917,-1922,-1924,-1924,-1928,-1937,-1950,-1963,
+-1967,-1960,-1942,-1921,-1905,-1898,-1901,-1910,-1919,-1925,-1929,-1933,-1938,-1945,-1952,-1958,-1961,-1961,-1960,-1957,-1953,
+-1949,-1945,-1938,-1926,-1909,-1889,-1872,-1866,-1874,-1890,-1899,-1883,-1829,-1744,-1650,-1581,-1566,-1612,-1700,-1793,-1856,
+-1873,-1849,-1811,-1786,-1787,-1810,-1843,-1873,-1896,-1917,-1939,-1959,-1964,-1941,-1887,-1816,-1749,-1710,-1705,-1726,-1755,
+-1773,-1775,-1765,-1752,-1740,-1727,-1705,-1672,-1634,-1606,-1600,-1621,-1659,-1700,-1729,-1742,-1743,-1742,-1748,-1764,-1788,
+-1814,-1838,-1859,-1879,-1899,-1925,-1961,-2010,-2073,-2148,-2227,-2302,-2362,-2407,-2438,-2462,-2483,-2505,-2523,-2537,-2546,
+-2551,-2558,-2568,-2580,-2591,-2598,-2600,-2601,-2603,-2609,-2618,-2628,-2638,-2649,-2661,-2674,-2687,-2697,-2703,-2704,-2704,
+-2706,-2710,-2715,-2718,-2719,-2716,-2714,-2714,-2717,-2720,-2721,-2718,-2713,-2707,-2703,-2701,-2698,-2693,-2684,-2671,-2659,
+-2648,-2638,-2630,-2620,-2606,-2591,-2575,-2561,-2550,-2541,-2534,-2527,-2520,-2516,-2514,-2513,-2512,-2508,-2503,-2498,-2494,
+-2492,-2491,-2489,-2484,-2474,-2461,-2449,-2439,-2433,-2428,-2423,-2417,-2409,-2400,-2392,-2384,-2377,-2369,-2360,-2351,-2342,
+-2333,-2324,-2313,-2300,-2285,-2270,-2254,-2241,-2229,-2219,-2211,-2204,-2198,-2192,-2186,-2180,-2175,-2172,-2173,-2176,-2182,
+-2190,-2201,-2215,-2233,-2251,-2266,-2272,-2264,-2242,-2208,-2168,-2131,-2101,-2081,-2071,-2068,-2069,-2069,-2068,-2064,-2057,
+-2050,-2043,-2038,-2035,-2031,-2026,-2018,-2008,-1997,-1986,-1976,-1968,-1962,-1955,-1948,-1941,-1933,-1926,-1919,-1913,-1908,
+-1904,-1901,-1898,-1894,-1889,-1883,-1875,-1865,-1853,-1838,-1822,-1807,-1795,-1789,-1790,-1798,-1811,-1826,-1840,-1850,-1856,
+-1857,-1853,-1847,-1840,-1835,-1836,-1842,-1856,-1875,-1898,-1923,-1947,-1969,-1988,-2002,-2012,-2017,-2016,-2009,-1997,-1980,
+-1961,-1940,-1919,-1901,-1886,-1876,-1870,-1865,-1861,-1855,-1847,-1836,-1823,-1809,-1795,-1780,-1765,-1750,-1737,-1724,-1711,
+-1697,-1681,-1664,-1647,-1631,-1617,-1605,-1592,-1577,-1560,-1540,-1519,-1500,-1482,-1466,-1451,-1436,-1419,-1401,-1382,-1364,
+-1347,-1332,-1319,-1305,-1292,-1277,-1261,-1247,-1234,-1223,-1214,-1204,-1194,-1182,-1171,-1160,-1152,-1146,-1140,-1133,-1126,
+-1118,-1109,-1101,-1092,-1084,-1076,-1070,-1067,-1069,-1074,-1079,-1082,-1082,-1080,-1078,-1079,-1082,-1088,-1092,-1096,-1098,
+-1100,-1104,-1111,-1118,-1124,-1129,-1133,-1138,-1144,-1152,-1159,-1164,-1168,-1169,-1171,-1173,-1176,-1179,-1182,-1184,-1186,
+-1186,-1188,-1189,-1191,-1194,-1198,-1201,-1202,-1199,-1192,-1181,-1170,-1160,-1154,-1154,-1155,-1157,-1156,-1151,-1144,-1136,
+-1129,-1123,-1116,-1108,-1100,-1091,-1082,-1072,-1061,-1047,-1031,-1015,-999,-986,-976,-968,-961,-954,-947,-939,-929,
+-917,-903,-886,-869,-852,-838,-826,-818,-812,-809,-809,-811,-812,-811,-804,-794,-782,-772,-767,-765,-764,
+-761,-755,-744,-733,-721,-710,-697,-683,-665,-646,-627,-611,-597,-584,-571,-557,-540,-521,-501,-481,-461,
+-441,-421,-402,-383,-363,-343,-323,-304,-286,-269,-250,-229,-203,-174,-144,-115,-89,-65,-43,-19,6,
+33,60,85,110,136,163,194,226,258,289,319,349,380,411,440,464,483,495,506,517,526,
+526,512,481,441,412,417,475,588,741,905,1047,1147,1199,1212,1205,1193,1187,1185,1185,1178,1162,
+1133,1094,1048,1001,960,931,914,910,914,920,929,942,962,990,1023,1056,1082,1100,1110,1117,1122,
+1129,1135,1141,1147,1155,1170,1190,1214,1237,1255,1270,1283,1297,1311,1321,1322,1312,1295,1282,1281,1297,
+1327,1356,1371,1361,1328,1279,1232,1197,1179,1177,1182,1185,1184,1181,1178,1183,1194,1210,1224,1228,1217,
+1190,1149,1099,1046,997,956,921,889,858,821,779,733,686,641,602,569,544,527,520,522,531,
+543,551,545,523,483,430,373,320,274,237,206,177,147,117,89,66,53,51,58,74,94,
+117,141,168,195,223,247,266,276,280,280,283,293,311,336,361,381,390,390,385,381,383,
+391,403,417,430,443,456,471,490,514,549,599,671,765,874,981,1069,1125,1148,1147,1138,1137,
+1149,1169,1187,1196,1197,1202,1224,1272,1340,1415,1477,1511,1516,1501,1480,1467,1469,1484,1507,1532,1557,
+1581,1603,1619,1625,1618,1599,1575,1554,1539,1531,1527,1524,1524,1534,1560,1601,1648,1689,1713,1718,1716,
+1722,1749,1796,1852,1899,1924,1925,1914,1904,1904,1914,1929,1940,1946,1952,1963,1983,2009,2034,2051,2060,
+2064,2070,2082,2098,2116,2131,2144,2156,2170,2188,2207,2226,2242,2254,2266,2280,2296,2314,2332,2349,2366,
+2382,2397,2410,2422,2435,2448,2465,2484,2502,2517,2527,2534,2539,2547,2559,2574,2590,2605,2620,2633,2646,
+2658,2668,2677,2685,2693,2701,2708,2713,2717,2721,2727,2736,2748,2759,2767,2770,2771,2771,2775,2782,2789,
+2792,2789,2781,2772,2765,2760,2755,2749,2739,2726,2713,2702,2695,2690,2686,2683,2682,2683,2704,2705,2706,
+2707,2706,2704,2701,2699,2697,2693,2684,2672,2658,2647,2642,2643,2645,2644,2637,2626,2614,2607,2607,2612,
+2616,2617,2613,2609,2609,2616,2627,2639,2648,2654,2660,2667,2675,2682,2685,2686,2690,2707,2739,2786,2835,
+2874,2894,2896,2890,2889,2904,2938,2985,3036,3082,3119,3146,3167,3183,3196,3209,3223,3241,3263,3286,3307,
+3325,3339,3352,3365,3379,3395,3411,3426,3441,3457,3475,3493,3510,3524,3536,3549,3566,3586,3607,3624,3635,
+3641,3648,3659,3678,3700,3723,3741,3756,3771,3789,3806,3819,3819,3805,3781,3759,3752,3764,3789,3810,3810,
+3777,3714,3640,3578,3549,3562,3608,3669,3724,3758,3770,3765,3754,3744,3736,3731,3727,3726,3734,3755,3787,
+3823,3855,3877,3890,3902,3920,3949,3986,4024,4057,4085,4110,4140,4174,4211,4246,4275,4301,4329,4364,4406,
+4449,4488,4520,4546,4573,4603,4636,4665,4686,4701,4720,4752,4803,4863,4914,4937,4925,4884,4835,4801,4797,
+4823,4873,4933,4995,5050,5090,5105,5084,5023,4930,4824,4730,4665,4633,4622,4618,4608,4595,4587,4595,4619,
+4645,4655,4631,4573,4497,4431,4400,4417,4471,4539,4590,4600,4562,4489,4403,4329,4284,4271,4280,4297,4305,
+4299,4282,4260,4239,4224,4213,4202,4189,4173,4157,4143,4131,4118,4102,4084,4063,4042,4021,3998,3972,3940,
+3901,3857,3813,3776,3749,3734,3730,3732,3736,3735,3725,3706,3679,3650,3622,3599,3579,3562,3545,3530,3519,
+3514,3514,3517,3517,3514,3506,3497,3490,3485,3482,3478,3475,3473,3474,3477,3480,3477,3468,3454,3440,3434,
+3434,3436,3435,3427,3417,3414,3430,3470,3529,3597,3663,3721,3773,3825,3881,3937,3985,4012,4011,3986,3943,
+3893,3843,3794,3745,3695,3645,3597,3555,3520,3491,3464,3436,3406,3373,3334,3285,3225,3154,3078,3004,2939,
+2887,2842,2797,2745,2684,2620,2561,2514,2481,2457,2436,2412,2384,2354,2324,2294,2261,2223,2178,2130,2085,
+2048,2020,1994,1967,1932,1890,1846,1805,1769,1737,1706,1671,1634,1597,1564,1537,1514,1489,1458,1422,1382,
+1344,1309,1278,1248,1215,1178,1138,1099,1061,1027,994,962,927,893,858,824,792,760,727,693,659,
+623,589,555,522,490,458,426,394,362,331,300,269,237,205,170,134,97,60,24,-10,-45,
+-79,-112,-144,-175,-204,-234,-266,-302,-341,-380,-417,-450,-479,-505,-531,-560,-591,-624,-658,-693,-727,
+-760,-794,-827,-858,-889,-920,-950,-981,-1012,-1043,-1072,-1101,-1130,-1160,-1191,-1223,-1253,-1281,-1307,-1331,-1358,
+-1387,-1421,-1457,-1493,-1526,-1556,-1584,-1611,-1639,-1668,-1698,-1726,-1754,-1780,-1805,-1830,-1854,-1875,-1892,-1907,-1921,
+-1936,-1954,-1973,-1991,-2007,-2022,-2038,-2057,-2079,-2100,-2116,-2124,-2125,-2124,-2127,-2138,-2156,-2178,-2197,-2211,-2221,
+-2229,-2240,-2253,-2268,-2282,-2295,-2306,-2318,-2332,-2347,-2360,-2370,-2378,-2386,-2395,-2406,-2417,-2422,-2420,-2412,-2399,
+-2385,-2371,-2360,-2351,-2344,-2340,-2336,-2332,-2326,-2317,-2305,-2293,-2285,-2282,-2283,-2284,-2281,-2275,-2267,-2259,-2254,
+-2250,-2245,-2238,-2230,-2222,-2218,-2218,-2218,-2215,-2207,-2197,-2187,-2180,-2176,-2172,-2165,-2156,-2146,-2139,-2135,-2131,
+-2122,-2108,-2090,-2076,-2070,-2073,-2077,-2073,-2056,-2029,-2001,-1983,-1979,-1985,-1990,-1988,-1974,-1954,-1936,-1924,-1917,
+-1910,-1898,-1882,-1868,-1861,-1861,-1867,-1870,-1865,-1855,-1844,-1842,-1854,-1880,-1915,-1950,-1978,-1995,-1999,-1992,-1975,
+-1955,-1937,-1927,-1926,-1932,-1939,-1942,-1939,-1936,-1937,-1947,-1964,-1982,-1990,-1984,-1969,-1951,-1941,-1943,-1955,-1968,
+-1975,-1974,-1967,-1959,-1956,-1958,-1963,-1969,-1973,-1974,-1976,-1980,-1986,-1992,-1995,-1992,-1981,-1962,-1942,-1926,-1921,
+-1928,-1940,-1940,-1914,-1854,-1769,-1686,-1635,-1636,-1690,-1774,-1853,-1896,-1897,-1869,-1840,-1832,-1854,-1893,-1933,-1962,
+-1979,-1993,-2011,-2030,-2034,-2011,-1955,-1882,-1815,-1777,-1776,-1801,-1832,-1852,-1853,-1841,-1828,-1819,-1810,-1795,-1767,
+-1732,-1700,-1685,-1693,-1720,-1755,-1786,-1807,-1821,-1833,-1849,-1870,-1894,-1918,-1940,-1961,-1981,-2003,-2030,-2064,-2112,
+-2175,-2252,-2335,-2411,-2471,-2510,-2533,-2548,-2562,-2580,-2599,-2616,-2627,-2635,-2643,-2654,-2668,-2680,-2689,-2693,-2693,
+-2693,-2696,-2702,-2711,-2721,-2731,-2742,-2754,-2765,-2774,-2779,-2779,-2778,-2777,-2779,-2783,-2786,-2788,-2788,-2788,-2790,
+-2794,-2797,-2798,-2793,-2783,-2773,-2765,-2760,-2758,-2755,-2750,-2742,-2733,-2726,-2720,-2715,-2707,-2695,-2678,-2659,-2642,
+-2628,-2618,-2610,-2603,-2596,-2589,-2583,-2579,-2575,-2570,-2564,-2559,-2555,-2553,-2552,-2550,-2545,-2536,-2525,-2514,-2503,
+-2495,-2487,-2479,-2471,-2462,-2453,-2446,-2439,-2432,-2424,-2415,-2405,-2395,-2385,-2374,-2364,-2352,-2340,-2327,-2312,-2297,
+-2283,-2271,-2262,-2256,-2252,-2249,-2244,-2237,-2228,-2219,-2210,-2202,-2195,-2191,-2192,-2198,-2212,-2233,-2257,-2278,-2290,
+-2289,-2273,-2247,-2215,-2184,-2156,-2134,-2116,-2103,-2093,-2084,-2077,-2072,-2070,-2069,-2070,-2071,-2069,-2063,-2053,-2042,
+-2029,-2018,-2009,-2001,-1993,-1986,-1979,-1973,-1967,-1961,-1954,-1947,-1939,-1931,-1924,-1918,-1912,-1906,-1899,-1892,-1883,
+-1874,-1865,-1855,-1845,-1835,-1826,-1818,-1811,-1808,-1807,-1808,-1812,-1818,-1825,-1832,-1839,-1844,-1848,-1850,-1852,-1855,
+-1860,-1868,-1881,-1897,-1918,-1941,-1965,-1989,-2010,-2028,-2040,-2045,-2042,-2031,-2013,-1991,-1967,-1943,-1923,-1904,-1889,
+-1874,-1861,-1849,-1837,-1825,-1813,-1798,-1781,-1763,-1745,-1729,-1716,-1705,-1695,-1685,-1674,-1662,-1649,-1635,-1621,-1606,
+-1588,-1569,-1547,-1526,-1507,-1489,-1475,-1461,-1446,-1431,-1413,-1394,-1375,-1357,-1342,-1328,-1314,-1300,-1284,-1268,-1252,
+-1238,-1226,-1215,-1205,-1194,-1183,-1172,-1163,-1157,-1152,-1148,-1143,-1136,-1128,-1121,-1113,-1105,-1096,-1088,-1082,-1080,
+-1083,-1088,-1095,-1099,-1100,-1097,-1094,-1093,-1095,-1099,-1104,-1108,-1110,-1112,-1116,-1120,-1126,-1131,-1135,-1139,-1143,
+-1149,-1156,-1162,-1166,-1167,-1167,-1165,-1166,-1168,-1173,-1179,-1184,-1187,-1190,-1192,-1194,-1197,-1202,-1206,-1210,-1212,
+-1210,-1204,-1195,-1186,-1178,-1173,-1170,-1169,-1169,-1167,-1164,-1159,-1153,-1145,-1135,-1124,-1114,-1106,-1100,-1095,-1088,
+-1078,-1063,-1045,-1027,-1010,-998,-988,-981,-973,-965,-958,-950,-941,-932,-920,-905,-888,-869,-852,-836,-824,
+-817,-815,-818,-823,-827,-827,-821,-809,-795,-784,-778,-776,-776,-774,-769,-760,-748,-737,-725,-711,-696,
+-678,-659,-640,-624,-611,-599,-586,-572,-555,-536,-515,-494,-474,-454,-436,-419,-403,-387,-370,-352,-335,
+-318,-300,-281,-258,-231,-201,-170,-140,-114,-91,-68,-43,-14,17,49,78,104,129,154,182,213,
+244,274,302,330,360,390,420,446,466,480,491,502,513,517,509,484,448,414,404,435,516,
+638,784,927,1047,1129,1171,1179,1165,1140,1114,1096,1087,1085,1082,1071,1046,1008,965,927,902,893,
+897,910,927,947,972,1002,1039,1077,1111,1137,1156,1167,1175,1180,1183,1184,1185,1188,1196,1210,1228,
+1245,1261,1273,1284,1294,1302,1306,1303,1291,1275,1262,1259,1267,1283,1296,1296,1279,1247,1208,1173,1150,
+1141,1142,1147,1150,1150,1149,1148,1152,1158,1164,1164,1155,1132,1096,1051,1001,951,904,861,821,782,
+741,698,654,613,576,545,519,500,486,479,481,494,515,539,560,568,554,517,459,388,315,
+251,205,177,165,165,171,182,196,214,236,258,275,283,280,269,256,246,243,245,248,251,
+254,260,276,304,344,387,425,447,449,433,407,381,361,351,347,347,347,348,349,353,363,
+381,412,463,538,638,757,879,985,1063,1105,1121,1125,1132,1150,1177,1205,1225,1236,1246,1265,1305,
+1363,1429,1487,1522,1531,1520,1504,1494,1498,1514,1535,1556,1573,1589,1602,1612,1615,1608,1593,1572,1555,
+1545,1543,1546,1549,1553,1560,1573,1594,1618,1638,1650,1659,1673,1705,1756,1821,1882,1925,1941,1935,1920,
+1912,1916,1930,1945,1952,1953,1954,1961,1980,2007,2035,2058,2072,2082,2091,2102,2115,2127,2137,2147,2159,
+2177,2198,2219,2235,2246,2253,2260,2272,2287,2306,2324,2341,2356,2370,2383,2396,2408,2420,2432,2447,2464,
+2481,2495,2505,2512,2519,2529,2545,2564,2583,2600,2614,2625,2634,2643,2651,2658,2664,2669,2674,2679,2685,
+2692,2701,2713,2726,2740,2751,2758,2762,2765,2771,2781,2795,2808,2814,2811,2801,2787,2777,2770,2767,2763,
+2756,2745,2732,2721,2714,2709,2707,2706,2704,2704,2716,2711,2707,2706,2706,2706,2707,2708,2707,2702,2691,
+2678,2664,2655,2653,2656,2657,2652,2640,2624,2612,2610,2616,2628,2636,2638,2634,2632,2639,2656,2678,2695,
+2701,2696,2684,2674,2672,2676,2684,2692,2701,2716,2742,2777,2815,2845,2861,2863,2861,2869,2894,2936,2987,
+3035,3069,3090,3100,3107,3117,3133,3154,3177,3199,3219,3237,3253,3268,3284,3303,3325,3349,3371,3391,3407,
+3421,3436,3453,3474,3494,3513,3529,3543,3558,3573,3590,3606,3621,3634,3647,3661,3676,3692,3707,3722,3738,
+3756,3775,3790,3798,3796,3785,3772,3768,3776,3795,3812,3813,3786,3730,3659,3594,3555,3555,3590,3644,3697,
+3731,3741,3733,3716,3703,3697,3697,3699,3701,3707,3719,3742,3774,3808,3837,3858,3872,3886,3908,3938,3974,
+4008,4038,4063,4090,4121,4157,4194,4227,4254,4280,4311,4351,4399,4446,4485,4514,4538,4562,4595,4633,4669,
+4697,4714,4726,4743,4769,4801,4829,4841,4833,4811,4788,4776,4783,4809,4849,4899,4959,5026,5089,5132,5138,
+5095,5008,4898,4790,4707,4654,4625,4605,4589,4579,4585,4614,4658,4700,4713,4682,4609,4514,4429,4382,4382,
+4421,4473,4511,4516,4485,4430,4371,4325,4302,4299,4307,4312,4304,4283,4253,4222,4196,4178,4166,4156,4145,
+4132,4120,4111,4106,4102,4097,4087,4071,4048,4018,3983,3943,3900,3857,3817,3783,3756,3739,3731,3730,3734,
+3738,3738,3728,3710,3685,3657,3631,3608,3586,3564,3541,3519,3502,3493,3494,3499,3503,3502,3496,3487,3479,
+3475,3474,3474,3473,3472,3473,3476,3480,3481,3477,3468,3458,3450,3447,3448,3448,3444,3437,3432,3436,3455,
+3488,3529,3576,3625,3681,3747,3821,3895,3955,3989,3989,3959,3910,3854,3800,3753,3708,3664,3620,3576,3536,
+3500,3468,3437,3405,3373,3338,3297,3246,3181,3104,3024,2952,2898,2867,2850,2834,2804,2753,2683,2606,2534,
+2476,2432,2396,2363,2331,2302,2279,2261,2243,2219,2183,2138,2088,2043,2007,1979,1952,1922,1884,1842,1799,
+1761,1727,1696,1663,1628,1591,1558,1529,1504,1480,1452,1420,1383,1345,1310,1277,1245,1211,1174,1134,1095,
+1058,1023,991,959,927,895,864,834,805,774,741,706,669,633,598,565,533,500,466,432,399,
+367,336,307,277,247,214,180,143,106,69,32,-4,-40,-75,-108,-139,-168,-196,-226,-259,-296,
+-336,-377,-413,-445,-471,-493,-517,-543,-574,-608,-644,-679,-713,-746,-779,-811,-843,-874,-904,-933,-964,
+-994,-1026,-1058,-1089,-1120,-1150,-1180,-1210,-1240,-1267,-1293,-1318,-1345,-1375,-1409,-1445,-1481,-1514,-1544,-1571,-1598,
+-1626,-1656,-1686,-1716,-1745,-1771,-1797,-1821,-1844,-1865,-1884,-1901,-1919,-1938,-1958,-1976,-1993,-2006,-2019,-2035,-2057,
+-2082,-2106,-2124,-2132,-2132,-2129,-2132,-2142,-2161,-2183,-2202,-2216,-2225,-2233,-2244,-2258,-2273,-2288,-2300,-2312,-2324,
+-2338,-2352,-2365,-2376,-2384,-2392,-2401,-2411,-2421,-2426,-2425,-2418,-2407,-2394,-2382,-2372,-2364,-2358,-2354,-2353,-2350,
+-2345,-2336,-2324,-2311,-2303,-2300,-2301,-2303,-2303,-2298,-2292,-2285,-2281,-2278,-2275,-2270,-2263,-2256,-2251,-2247,-2244,
+-2240,-2233,-2226,-2219,-2214,-2211,-2207,-2199,-2191,-2182,-2177,-2173,-2168,-2156,-2139,-2118,-2103,-2098,-2101,-2106,-2104,
+-2089,-2063,-2036,-2017,-2009,-2011,-2012,-2005,-1988,-1967,-1948,-1936,-1929,-1922,-1910,-1896,-1883,-1876,-1879,-1886,-1892,
+-1889,-1879,-1866,-1859,-1865,-1886,-1919,-1956,-1990,-2016,-2028,-2027,-2013,-1992,-1973,-1961,-1958,-1962,-1967,-1967,-1963,
+-1958,-1959,-1971,-1989,-2007,-2015,-2012,-2000,-1989,-1987,-1996,-2011,-2022,-2023,-2013,-1999,-1987,-1981,-1983,-1988,-1993,
+-1996,-1999,-2004,-2011,-2019,-2026,-2028,-2024,-2017,-2009,-2003,-2001,-2003,-2005,-2004,-1989,-1954,-1900,-1834,-1776,-1744,
+-1749,-1790,-1847,-1896,-1920,-1918,-1903,-1895,-1908,-1942,-1984,-2017,-2037,-2047,-2058,-2079,-2102,-2111,-2092,-2039,-1966,
+-1899,-1859,-1856,-1879,-1908,-1925,-1924,-1912,-1900,-1896,-1897,-1896,-1883,-1859,-1831,-1811,-1807,-1819,-1844,-1872,-1900,
+-1926,-1949,-1971,-1991,-2008,-2024,-2041,-2061,-2086,-2114,-2146,-2185,-2233,-2293,-2366,-2443,-2515,-2571,-2607,-2627,-2639,
+-2650,-2665,-2682,-2697,-2708,-2716,-2725,-2737,-2752,-2765,-2773,-2775,-2774,-2774,-2778,-2788,-2799,-2810,-2818,-2825,-2832,
+-2839,-2846,-2851,-2852,-2850,-2848,-2847,-2847,-2849,-2851,-2853,-2856,-2860,-2866,-2870,-2870,-2864,-2854,-2841,-2831,-2825,
+-2822,-2820,-2817,-2812,-2805,-2798,-2793,-2789,-2782,-2771,-2755,-2737,-2719,-2705,-2695,-2687,-2681,-2674,-2666,-2658,-2650,
+-2642,-2635,-2628,-2622,-2618,-2615,-2612,-2609,-2603,-2595,-2585,-2575,-2564,-2555,-2545,-2536,-2527,-2518,-2510,-2503,-2497,
+-2490,-2482,-2473,-2463,-2452,-2440,-2429,-2418,-2407,-2396,-2385,-2373,-2359,-2344,-2330,-2318,-2309,-2303,-2298,-2293,-2286,
+-2277,-2268,-2259,-2249,-2238,-2227,-2216,-2208,-2207,-2216,-2233,-2254,-2276,-2291,-2297,-2293,-2279,-2258,-2233,-2207,-2182,
+-2158,-2138,-2122,-2111,-2104,-2100,-2100,-2099,-2098,-2095,-2088,-2079,-2069,-2058,-2048,-2039,-2030,-2022,-2013,-2006,-2001,
+-1997,-1994,-1990,-1984,-1976,-1966,-1955,-1944,-1934,-1924,-1914,-1904,-1896,-1890,-1886,-1884,-1881,-1877,-1870,-1859,-1845,
+-1830,-1816,-1804,-1795,-1792,-1794,-1801,-1811,-1822,-1831,-1835,-1835,-1832,-1829,-1828,-1832,-1841,-1855,-1874,-1896,-1921,
+-1948,-1975,-2001,-2024,-2040,-2048,-2047,-2039,-2024,-2006,-1985,-1962,-1938,-1913,-1889,-1868,-1851,-1837,-1825,-1812,-1797,
+-1779,-1759,-1740,-1723,-1709,-1697,-1686,-1675,-1663,-1651,-1638,-1623,-1608,-1591,-1573,-1554,-1534,-1515,-1498,-1482,-1467,
+-1453,-1438,-1422,-1406,-1389,-1373,-1357,-1343,-1328,-1313,-1297,-1280,-1264,-1250,-1237,-1226,-1216,-1204,-1193,-1181,-1172,
+-1165,-1159,-1154,-1148,-1142,-1135,-1129,-1124,-1118,-1113,-1107,-1102,-1100,-1102,-1108,-1114,-1120,-1122,-1121,-1118,-1115,
+-1115,-1117,-1120,-1124,-1126,-1129,-1131,-1134,-1137,-1140,-1143,-1146,-1151,-1156,-1162,-1168,-1172,-1172,-1170,-1168,-1166,
+-1168,-1171,-1176,-1181,-1185,-1189,-1192,-1195,-1200,-1205,-1210,-1213,-1214,-1212,-1208,-1202,-1195,-1190,-1185,-1182,-1179,
+-1178,-1176,-1175,-1173,-1168,-1159,-1148,-1135,-1124,-1115,-1109,-1104,-1096,-1083,-1066,-1047,-1030,-1016,-1006,-999,-991,
+-981,-971,-961,-952,-946,-941,-933,-922,-906,-888,-869,-851,-837,-828,-824,-826,-830,-834,-834,-829,-819,
+-808,-799,-795,-795,-795,-794,-788,-778,-765,-751,-737,-721,-704,-686,-667,-649,-632,-618,-605,-593,-580,
+-566,-551,-534,-515,-495,-474,-454,-436,-421,-407,-392,-375,-357,-339,-321,-302,-280,-254,-225,-195,-165,
+-139,-115,-91,-64,-32,3,39,72,99,124,148,173,202,231,259,286,312,339,368,397,425,
+446,463,476,488,499,507,505,490,464,434,417,425,469,550,659,784,907,1013,1088,1126,1127,
+1101,1062,1029,1014,1019,1037,1050,1046,1019,975,927,891,876,882,903,933,966,1001,1039,1080,1121,
+1157,1185,1203,1213,1218,1220,1222,1224,1226,1229,1233,1239,1247,1255,1262,1267,1272,1276,1278,1276,1269,
+1256,1241,1227,1218,1213,1209,1200,1183,1158,1128,1100,1078,1063,1056,1052,1051,1050,1050,1051,1052,1051,
+1047,1039,1024,1002,975,941,903,862,818,773,728,683,639,597,558,525,502,490,488,494,506,
+520,536,554,575,600,630,659,681,685,665,619,553,479,414,371,360,381,426,488,556,624,
+688,741,776,785,765,716,649,575,510,461,430,413,405,403,410,430,468,519,573,618,641,
+635,604,554,496,440,391,351,320,295,278,269,267,273,290,320,369,441,538,654,776,888,
+978,1038,1071,1088,1103,1125,1155,1189,1221,1249,1275,1307,1349,1401,1457,1503,1531,1538,1532,1523,1523,
+1534,1555,1577,1594,1603,1605,1604,1601,1595,1585,1571,1555,1543,1539,1543,1553,1563,1572,1578,1584,1589,
+1593,1597,1602,1614,1639,1682,1743,1809,1867,1906,1922,1922,1920,1925,1939,1959,1974,1979,1977,1974,1977,
+1991,2011,2034,2054,2071,2086,2102,2117,2130,2139,2144,2150,2162,2180,2203,2225,2240,2248,2252,2257,2266,
+2279,2293,2306,2318,2329,2341,2356,2372,2388,2401,2413,2425,2439,2453,2466,2476,2484,2493,2506,2524,2546,
+2567,2585,2598,2606,2614,2621,2629,2637,2642,2646,2649,2653,2659,2668,2680,2694,2708,2721,2731,2739,2745,
+2752,2764,2780,2798,2815,2824,2822,2812,2799,2787,2779,2775,2771,2765,2755,2745,2737,2732,2731,2730,2727,
+2722,2716,2727,2722,2720,2721,2723,2725,2723,2718,2708,2695,2678,2663,2651,2647,2651,2659,2664,2664,2656,
+2646,2641,2645,2656,2668,2673,2669,2662,2661,2674,2698,2726,2744,2742,2721,2692,2669,2663,2672,2692,2713,
+2730,2744,2759,2778,2801,2820,2834,2841,2849,2866,2895,2934,2972,2999,3009,3006,2998,2995,3006,3029,3059,
+3091,3118,3140,3157,3172,3190,3213,3241,3272,3306,3336,3361,3381,3396,3411,3429,3450,3475,3498,3518,3533,
+3546,3559,3576,3596,3619,3641,3659,3672,3681,3687,3695,3704,3717,3731,3741,3744,3740,3731,3725,3729,3746,
+3772,3797,3804,3785,3736,3669,3603,3557,3546,3569,3617,3669,3708,3724,3718,3699,3679,3667,3664,3668,3674,
+3680,3688,3702,3723,3751,3782,3809,3830,3849,3870,3897,3928,3961,3992,4018,4043,4071,4104,4141,4176,4207,
+4233,4259,4292,4334,4383,4430,4469,4497,4519,4544,4577,4618,4659,4693,4717,4733,4747,4765,4783,4798,4803,
+4799,4789,4780,4775,4774,4776,4781,4794,4824,4874,4937,4995,5026,5014,4959,4877,4789,4716,4662,4624,4596,
+4575,4569,4586,4629,4686,4732,4743,4704,4619,4513,4416,4352,4329,4339,4363,4381,4384,4371,4349,4331,4322,
+4322,4326,4327,4317,4295,4264,4229,4196,4169,4150,4136,4124,4114,4104,4097,4094,4094,4095,4093,4083,4064,
+4035,3997,3952,3905,3860,3820,3789,3767,3754,3747,3746,3747,3749,3749,3743,3729,3709,3685,3661,3640,3622,
+3604,3581,3552,3521,3495,3479,3474,3479,3484,3484,3478,3469,3463,3462,3468,3475,3481,3483,3482,3482,3483,
+3485,3485,3481,3474,3467,3462,3460,3458,3454,3449,3444,3445,3455,3476,3505,3540,3580,3628,3683,3745,3805,
+3853,3877,3874,3847,3805,3760,3718,3683,3651,3620,3586,3551,3515,3478,3438,3395,3350,3304,3258,3209,3151,
+3080,2997,2910,2835,2787,2771,2781,2798,2800,2773,2715,2638,2557,2487,2430,2383,2340,2296,2255,2223,2203,
+2192,2181,2162,2130,2087,2041,1999,1965,1936,1906,1871,1831,1788,1749,1714,1684,1655,1624,1591,1557,1526,
+1497,1470,1443,1413,1379,1343,1307,1272,1238,1204,1169,1133,1097,1062,1027,993,959,927,897,868,842,
+814,785,752,716,680,645,611,578,545,511,476,440,406,375,345,316,286,254,219,183,146,
+109,72,35,0,-34,-67,-99,-128,-157,-185,-215,-248,-283,-322,-360,-395,-426,-452,-475,-498,-525,
+-557,-592,-629,-664,-698,-729,-761,-792,-824,-856,-886,-916,-946,-977,-1010,-1043,-1077,-1109,-1140,-1169,-1197,
+-1226,-1254,-1282,-1311,-1340,-1370,-1403,-1438,-1472,-1504,-1534,-1562,-1588,-1616,-1646,-1677,-1708,-1738,-1767,-1793,-1816,
+-1837,-1856,-1874,-1893,-1912,-1933,-1954,-1973,-1988,-2000,-2013,-2030,-2053,-2080,-2107,-2126,-2136,-2137,-2137,-2140,-2151,
+-2168,-2188,-2206,-2218,-2228,-2237,-2249,-2263,-2278,-2293,-2305,-2317,-2330,-2343,-2357,-2369,-2379,-2386,-2393,-2402,-2412,
+-2421,-2427,-2427,-2422,-2413,-2403,-2393,-2385,-2379,-2375,-2372,-2370,-2368,-2364,-2356,-2345,-2334,-2326,-2322,-2321,-2322,
+-2321,-2317,-2310,-2304,-2299,-2297,-2295,-2292,-2288,-2283,-2279,-2274,-2270,-2264,-2258,-2252,-2248,-2245,-2243,-2238,-2231,
+-2222,-2214,-2209,-2205,-2198,-2186,-2167,-2147,-2132,-2128,-2132,-2138,-2137,-2124,-2100,-2073,-2051,-2039,-2033,-2027,-2016,
+-1999,-1980,-1965,-1955,-1950,-1944,-1933,-1918,-1903,-1895,-1896,-1902,-1907,-1905,-1896,-1884,-1875,-1877,-1893,-1922,-1960,
+-1998,-2032,-2054,-2061,-2053,-2035,-2016,-2001,-1993,-1993,-1994,-1992,-1988,-1985,-1989,-2002,-2020,-2035,-2042,-2038,-2029,
+-2023,-2026,-2036,-2048,-2054,-2049,-2037,-2024,-2016,-2014,-2018,-2023,-2027,-2030,-2037,-2046,-2057,-2063,-2062,-2055,-2047,
+-2046,-2054,-2069,-2083,-2088,-2078,-2055,-2023,-1989,-1956,-1928,-1908,-1899,-1902,-1915,-1933,-1947,-1953,-1954,-1958,-1971,
+-1998,-2034,-2069,-2092,-2104,-2112,-2126,-2148,-2172,-2182,-2165,-2118,-2055,-1997,-1963,-1959,-1976,-1998,-2008,-2003,-1989,
+-1978,-1978,-1987,-1997,-2000,-1991,-1974,-1958,-1951,-1955,-1971,-1995,-2021,-2048,-2072,-2092,-2106,-2116,-2125,-2138,-2159,
+-2190,-2228,-2271,-2318,-2371,-2432,-2498,-2566,-2626,-2673,-2703,-2721,-2733,-2746,-2760,-2775,-2787,-2794,-2800,-2808,-2819,
+-2833,-2844,-2849,-2848,-2845,-2846,-2854,-2869,-2886,-2900,-2908,-2911,-2912,-2915,-2920,-2925,-2927,-2926,-2922,-2918,-2915,
+-2913,-2914,-2916,-2919,-2923,-2929,-2933,-2934,-2931,-2922,-2912,-2902,-2896,-2892,-2889,-2886,-2880,-2873,-2866,-2860,-2854,
+-2848,-2838,-2825,-2810,-2795,-2782,-2772,-2765,-2760,-2754,-2747,-2738,-2727,-2716,-2705,-2696,-2688,-2682,-2678,-2673,-2668,
+-2661,-2653,-2644,-2635,-2626,-2616,-2607,-2597,-2588,-2579,-2571,-2563,-2555,-2547,-2538,-2529,-2520,-2510,-2500,-2488,-2476,
+-2464,-2452,-2441,-2430,-2418,-2405,-2390,-2376,-2364,-2353,-2345,-2337,-2328,-2320,-2313,-2306,-2298,-2289,-2276,-2261,-2246,
+-2234,-2228,-2231,-2242,-2258,-2275,-2290,-2299,-2302,-2297,-2286,-2270,-2251,-2231,-2213,-2196,-2182,-2169,-2157,-2145,-2134,
+-2125,-2116,-2108,-2100,-2092,-2085,-2076,-2068,-2058,-2049,-2040,-2032,-2026,-2023,-2020,-2016,-2011,-2003,-1993,-1982,-1970,
+-1959,-1948,-1938,-1928,-1919,-1911,-1906,-1902,-1899,-1896,-1891,-1883,-1873,-1861,-1847,-1832,-1817,-1803,-1794,-1790,-1791,
+-1795,-1800,-1803,-1803,-1799,-1796,-1794,-1796,-1802,-1811,-1821,-1832,-1845,-1861,-1881,-1905,-1931,-1956,-1978,-1995,-2006,
+-2013,-2015,-2011,-2001,-1983,-1960,-1934,-1908,-1886,-1868,-1855,-1843,-1831,-1816,-1798,-1779,-1758,-1737,-1716,-1695,-1676,
+-1657,-1640,-1625,-1611,-1597,-1584,-1571,-1556,-1540,-1523,-1506,-1489,-1472,-1456,-1442,-1428,-1414,-1400,-1385,-1370,-1355,
+-1340,-1325,-1310,-1296,-1282,-1269,-1258,-1247,-1237,-1226,-1214,-1202,-1190,-1180,-1171,-1163,-1156,-1149,-1143,-1138,-1135,
+-1132,-1130,-1126,-1123,-1121,-1122,-1126,-1132,-1138,-1141,-1142,-1140,-1137,-1136,-1136,-1138,-1141,-1144,-1147,-1150,-1153,
+-1155,-1157,-1159,-1161,-1164,-1168,-1174,-1179,-1184,-1186,-1185,-1184,-1182,-1181,-1182,-1184,-1187,-1190,-1192,-1196,-1200,
+-1204,-1209,-1214,-1216,-1216,-1214,-1211,-1207,-1204,-1200,-1195,-1191,-1187,-1184,-1183,-1182,-1182,-1179,-1172,-1163,-1152,
+-1141,-1133,-1126,-1118,-1106,-1090,-1072,-1053,-1037,-1026,-1017,-1009,-997,-983,-968,-954,-946,-941,-938,-933,-925,
+-912,-896,-879,-863,-850,-841,-836,-834,-835,-836,-836,-834,-831,-827,-825,-824,-825,-824,-820,-811,-798,
+-781,-763,-744,-724,-704,-684,-665,-648,-631,-616,-602,-589,-578,-568,-558,-546,-531,-511,-489,-467,-449,
+-433,-420,-405,-389,-370,-351,-333,-315,-298,-277,-252,-223,-194,-166,-140,-114,-85,-52,-15,21,55,
+84,110,136,162,191,219,246,270,293,318,344,373,400,424,445,462,477,490,500,501,493,
+476,455,438,433,447,484,547,633,738,850,954,1034,1076,1079,1054,1021,1000,999,1017,1037,1042,
+1021,978,927,883,861,866,892,933,980,1029,1079,1128,1172,1208,1233,1245,1249,1250,1251,1257,1265,
+1273,1280,1284,1283,1280,1274,1266,1259,1251,1242,1232,1219,1202,1184,1166,1151,1137,1123,1107,1085,1058,
+1029,1002,979,960,943,927,913,901,894,894,898,900,897,885,863,837,809,782,757,729,697,
+660,619,576,536,502,476,459,453,459,479,513,557,609,661,707,745,772,793,813,833,853,
+866,863,838,791,732,678,646,649,691,765,861,967,1071,1165,1239,1284,1291,1255,1180,1079,970,
+873,800,753,726,711,704,706,721,753,801,856,908,941,947,922,868,794,706,616,532,461,
+408,375,362,364,379,404,439,488,554,637,732,833,926,1002,1056,1087,1102,1111,1121,1139,1164,
+1196,1233,1273,1319,1369,1420,1466,1500,1519,1521,1516,1511,1516,1532,1555,1578,1594,1600,1597,1588,1578,
+1569,1559,1549,1540,1533,1531,1536,1547,1559,1571,1579,1583,1584,1583,1583,1587,1601,1628,1670,1722,1777,
+1825,1863,1889,1910,1931,1955,1981,2002,2014,2015,2011,2007,2009,2016,2027,2039,2050,2064,2081,2101,2122,
+2138,2147,2151,2156,2165,2182,2202,2222,2236,2245,2250,2257,2266,2275,2284,2289,2292,2298,2310,2328,2348,
+2367,2382,2394,2405,2417,2430,2443,2453,2462,2471,2484,2503,2525,2546,2564,2577,2585,2592,2599,2606,2613,
+2618,2621,2625,2629,2637,2648,2660,2673,2684,2694,2703,2711,2719,2729,2742,2760,2778,2795,2807,2810,2807,
+2799,2792,2786,2781,2775,2767,2758,2749,2743,2742,2743,2743,2740,2734,2727,2733,2735,2740,2748,2753,2752,
+2742,2724,2702,2679,2659,2646,2641,2647,2660,2676,2690,2698,2700,2701,2704,2711,2719,2722,2716,2701,2685,
+2679,2690,2713,2739,2751,2740,2711,2675,2649,2645,2662,2691,2719,2738,2748,2754,2764,2778,2797,2814,2830,
+2845,2863,2886,2909,2926,2931,2923,2908,2896,2896,2912,2941,2975,3007,3034,3055,3075,3096,3120,3150,3182,
+3217,3251,3282,3308,3329,3345,3360,3377,3399,3424,3450,3474,3494,3511,3528,3550,3577,3607,3635,3656,3668,
+3673,3677,3684,3695,3707,3714,3711,3695,3674,3657,3656,3675,3710,3747,3769,3762,3722,3660,3593,3541,3521,
+3535,3576,3628,3673,3699,3703,3689,3667,3647,3636,3635,3640,3648,3657,3668,3682,3701,3725,3751,3778,3804,
+3830,3859,3890,3922,3952,3979,4004,4028,4056,4089,4124,4157,4186,4212,4240,4273,4314,4359,4402,4438,4467,
+4492,4520,4554,4594,4634,4671,4700,4725,4747,4768,4785,4795,4797,4792,4785,4779,4773,4761,4741,4715,4692,
+4685,4703,4742,4788,4820,4825,4800,4754,4702,4655,4617,4586,4558,4539,4537,4562,4610,4668,4711,4716,4672,
+4589,4487,4392,4324,4287,4275,4277,4283,4290,4300,4314,4331,4349,4360,4359,4345,4318,4284,4248,4214,4184,
+4159,4139,4121,4106,4094,4086,4082,4083,4084,4083,4076,4060,4035,4001,3960,3916,3872,3833,3802,3781,3770,
+3765,3765,3767,3768,3766,3759,3747,3728,3705,3680,3659,3643,3630,3616,3596,3566,3531,3498,3474,3463,3463,
+3466,3467,3462,3456,3452,3456,3467,3482,3493,3497,3496,3492,3490,3491,3492,3492,3488,3481,3474,3468,3464,
+3460,3455,3451,3452,3459,3476,3501,3531,3563,3596,3629,3662,3690,3710,3717,3709,3691,3668,3646,3628,3613,
+3599,3580,3556,3528,3494,3455,3410,3358,3303,3248,3196,3145,3088,3017,2929,2831,2739,2673,2642,2646,2667,
+2681,2671,2632,2573,2510,2459,2422,2391,2357,2310,2255,2201,2159,2134,2124,2115,2099,2070,2030,1988,1949,
+1916,1886,1853,1816,1776,1736,1701,1672,1646,1621,1592,1559,1525,1492,1461,1432,1402,1370,1336,1299,1262,
+1226,1192,1160,1130,1099,1066,1032,996,961,928,897,869,842,815,784,752,718,684,652,620,588,
+554,519,484,450,419,389,360,330,296,260,222,183,145,107,70,35,2,-27,-56,-83,-111,
+-141,-171,-203,-236,-270,-304,-338,-371,-401,-429,-455,-482,-512,-545,-581,-618,-652,-684,-714,-744,-775,
+-808,-841,-872,-903,-933,-964,-997,-1032,-1066,-1098,-1127,-1153,-1179,-1206,-1235,-1267,-1300,-1332,-1365,-1397,-1430,
+-1462,-1495,-1525,-1554,-1581,-1609,-1637,-1668,-1700,-1733,-1763,-1790,-1813,-1833,-1850,-1867,-1885,-1904,-1925,-1945,-1963,
+-1976,-1988,-2001,-2019,-2043,-2070,-2097,-2118,-2131,-2137,-2141,-2148,-2160,-2176,-2193,-2207,-2218,-2227,-2237,-2250,-2265,
+-2280,-2294,-2306,-2319,-2332,-2346,-2360,-2372,-2380,-2387,-2395,-2404,-2416,-2427,-2433,-2435,-2430,-2423,-2414,-2406,-2400,
+-2394,-2390,-2387,-2386,-2384,-2381,-2375,-2367,-2357,-2348,-2342,-2338,-2337,-2335,-2331,-2326,-2320,-2315,-2311,-2308,-2305,
+-2303,-2301,-2298,-2296,-2293,-2288,-2283,-2279,-2277,-2275,-2273,-2268,-2259,-2250,-2241,-2235,-2231,-2224,-2213,-2196,-2177,
+-2164,-2158,-2161,-2166,-2165,-2154,-2133,-2108,-2085,-2068,-2056,-2045,-2031,-2015,-1999,-1988,-1982,-1979,-1973,-1962,-1946,
+-1931,-1921,-1918,-1922,-1925,-1924,-1917,-1905,-1895,-1893,-1902,-1924,-1957,-1996,-2034,-2064,-2081,-2082,-2071,-2054,-2039,
+-2028,-2022,-2018,-2014,-2010,-2010,-2018,-2033,-2052,-2067,-2073,-2068,-2059,-2053,-2053,-2059,-2066,-2067,-2063,-2056,-2051,
+-2052,-2056,-2060,-2061,-2063,-2069,-2082,-2101,-2118,-2124,-2115,-2097,-2083,-2086,-2106,-2135,-2154,-2148,-2114,-2062,-2013,
+-1985,-1985,-2006,-2033,-2052,-2055,-2045,-2028,-2015,-2011,-2018,-2034,-2057,-2085,-2113,-2138,-2158,-2173,-2187,-2202,-2219,
+-2231,-2229,-2209,-2171,-2127,-2090,-2071,-2072,-2083,-2094,-2094,-2082,-2067,-2057,-2059,-2071,-2087,-2099,-2104,-2102,-2099,
+-2100,-2106,-2118,-2134,-2152,-2170,-2188,-2203,-2216,-2226,-2237,-2254,-2281,-2319,-2366,-2418,-2474,-2531,-2589,-2647,-2700,
+-2744,-2775,-2795,-2809,-2822,-2837,-2855,-2871,-2882,-2888,-2891,-2895,-2903,-2914,-2922,-2924,-2920,-2916,-2917,-2928,-2946,
+-2967,-2983,-2992,-2993,-2992,-2992,-2995,-3000,-3003,-3003,-2999,-2993,-2987,-2983,-2982,-2983,-2985,-2988,-2992,-2995,-2997,
+-2996,-2991,-2983,-2974,-2966,-2960,-2955,-2950,-2945,-2938,-2931,-2925,-2920,-2914,-2906,-2896,-2884,-2869,-2856,-2845,-2837,
+-2831,-2826,-2821,-2813,-2803,-2790,-2778,-2767,-2758,-2751,-2745,-2738,-2730,-2721,-2712,-2703,-2696,-2689,-2681,-2672,-2663,
+-2653,-2643,-2633,-2623,-2612,-2602,-2591,-2582,-2574,-2567,-2558,-2546,-2533,-2518,-2504,-2491,-2480,-2469,-2457,-2445,-2431,
+-2418,-2406,-2396,-2386,-2376,-2366,-2357,-2348,-2340,-2331,-2320,-2307,-2294,-2280,-2269,-2263,-2261,-2263,-2269,-2277,-2286,
+-2295,-2301,-2304,-2305,-2302,-2298,-2291,-2281,-2268,-2250,-2228,-2205,-2182,-2163,-2149,-2138,-2130,-2122,-2113,-2103,-2093,
+-2083,-2074,-2066,-2058,-2051,-2044,-2039,-2033,-2027,-2019,-2011,-2002,-1993,-1984,-1976,-1968,-1959,-1950,-1941,-1931,-1921,
+-1912,-1904,-1898,-1893,-1889,-1885,-1878,-1868,-1852,-1834,-1815,-1799,-1788,-1783,-1782,-1782,-1782,-1782,-1781,-1782,-1785,
+-1789,-1792,-1794,-1793,-1791,-1791,-1795,-1804,-1817,-1834,-1852,-1872,-1893,-1917,-1941,-1962,-1977,-1981,-1975,-1960,-1939,
+-1918,-1899,-1885,-1873,-1863,-1852,-1838,-1820,-1799,-1774,-1747,-1719,-1692,-1667,-1645,-1626,-1610,-1595,-1582,-1569,-1555,
+-1540,-1524,-1507,-1490,-1474,-1460,-1447,-1435,-1423,-1410,-1395,-1380,-1365,-1351,-1339,-1327,-1316,-1305,-1293,-1283,-1273,
+-1263,-1252,-1239,-1226,-1212,-1199,-1188,-1178,-1169,-1161,-1154,-1149,-1146,-1144,-1142,-1140,-1138,-1136,-1136,-1139,-1144,
+-1151,-1156,-1159,-1159,-1158,-1157,-1157,-1158,-1161,-1165,-1169,-1173,-1177,-1180,-1182,-1183,-1183,-1183,-1184,-1186,-1190,
+-1195,-1200,-1203,-1204,-1204,-1203,-1202,-1202,-1203,-1204,-1207,-1210,-1214,-1218,-1222,-1224,-1225,-1225,-1223,-1222,-1220,
+-1218,-1214,-1209,-1202,-1195,-1190,-1187,-1187,-1187,-1187,-1183,-1177,-1169,-1161,-1154,-1147,-1138,-1126,-1110,-1093,-1077,
+-1063,-1051,-1039,-1025,-1008,-988,-969,-954,-944,-939,-934,-928,-918,-905,-892,-880,-870,-863,-857,-852,-849,
+-847,-847,-848,-851,-854,-857,-860,-861,-859,-853,-843,-829,-812,-792,-771,-748,-724,-701,-679,-659,-642,
+-626,-610,-595,-581,-569,-561,-554,-545,-532,-515,-494,-474,-456,-442,-429,-415,-398,-379,-360,-343,-329,
+-316,-300,-279,-253,-223,-193,-163,-134,-104,-72,-37,-2,31,61,90,119,148,178,206,231,253,
+274,297,323,350,378,403,427,449,469,486,497,499,491,476,460,446,437,433,436,454,495,
+567,671,795,918,1016,1071,1082,1063,1036,1019,1017,1025,1027,1012,977,930,886,860,858,882,924,
+978,1037,1096,1151,1199,1234,1256,1265,1265,1264,1266,1274,1285,1298,1308,1311,1306,1294,1276,1255,1233,
+1210,1186,1160,1133,1105,1079,1057,1042,1032,1022,1010,992,969,943,918,893,869,843,815,789,770,
+762,765,775,782,779,762,733,700,668,642,619,596,568,535,499,467,445,436,442,461,490,
+529,578,640,713,795,876,946,996,1021,1027,1021,1015,1014,1019,1021,1012,986,947,908,883,886,
+924,992,1081,1180,1280,1372,1449,1499,1515,1491,1430,1344,1251,1170,1110,1073,1053,1042,1034,1029,1034,
+1054,1092,1144,1203,1255,1290,1296,1268,1206,1116,1010,904,813,749,716,711,727,756,792,832,877,
+929,986,1046,1105,1157,1198,1225,1235,1230,1213,1190,1170,1159,1164,1188,1230,1284,1344,1401,1448,1481,
+1498,1500,1495,1489,1490,1499,1515,1533,1547,1554,1554,1548,1542,1536,1530,1525,1518,1511,1506,1504,1507,
+1515,1525,1535,1544,1550,1556,1565,1578,1600,1631,1669,1711,1754,1795,1835,1876,1920,1964,2003,2033,2049,
+2052,2046,2039,2037,2041,2047,2053,2056,2059,2065,2078,2097,2118,2135,2144,2149,2154,2163,2177,2194,2209,
+2221,2230,2239,2249,2260,2269,2273,2273,2272,2276,2288,2306,2328,2346,2360,2370,2380,2391,2406,2420,2432,
+2441,2450,2462,2480,2502,2524,2544,2559,2568,2575,2581,2585,2589,2591,2592,2596,2603,2613,2627,2640,2652,
+2663,2672,2682,2691,2700,2710,2720,2731,2744,2758,2771,2781,2787,2790,2791,2790,2787,2781,2772,2762,2754,
+2749,2748,2747,2746,2742,2736,2733,2729,2734,2743,2753,2757,2751,2735,2712,2688,2669,2659,2658,2666,2681,
+2699,2718,2733,2742,2748,2752,2756,2761,2763,2758,2743,2720,2696,2681,2680,2690,2701,2703,2688,2660,2631,
+2615,2619,2641,2671,2696,2710,2715,2718,2727,2745,2770,2794,2814,2828,2837,2844,2850,2851,2848,2841,2834,
+2835,2846,2868,2895,2922,2944,2964,2983,3006,3034,3066,3099,3131,3159,3185,3209,3231,3251,3269,3285,3302,
+3322,3347,3374,3402,3428,3452,3475,3502,3531,3561,3588,3607,3619,3627,3638,3653,3672,3688,3691,3678,3650,
+3620,3602,3607,3637,3678,3711,3719,3692,3636,3568,3510,3480,3485,3519,3569,3617,3652,3666,3662,3645,3625,
+3608,3599,3599,3606,3619,3633,3649,3666,3684,3705,3729,3756,3785,3817,3850,3883,3913,3940,3964,3987,4011,
+4039,4069,4101,4132,4161,4189,4219,4253,4290,4329,4366,4400,4431,4462,4495,4531,4568,4603,4635,4666,4696,
+4725,4752,4771,4779,4776,4768,4759,4753,4746,4734,4710,4675,4639,4612,4603,4610,4627,4639,4639,4626,4605,
+4584,4565,4546,4525,4501,4482,4480,4501,4542,4588,4618,4614,4573,4503,4424,4353,4303,4275,4264,4265,4275,
+4295,4326,4362,4397,4419,4421,4401,4364,4319,4275,4236,4204,4177,4153,4129,4107,4088,4074,4067,4064,4064,
+4063,4055,4040,4017,3987,3953,3916,3880,3847,3819,3799,3786,3781,3780,3780,3780,3777,3771,3760,3744,3722,
+3697,3671,3649,3634,3623,3612,3597,3572,3540,3507,3480,3463,3458,3457,3457,3455,3451,3451,3458,3472,3488,
+3501,3506,3506,3502,3500,3500,3502,3501,3496,3488,3479,3472,3467,3463,3460,3456,3455,3460,3473,3494,3518,
+3542,3562,3575,3582,3583,3580,3573,3565,3558,3555,3557,3561,3564,3561,3550,3530,3503,3471,3432,3386,3334,
+3276,3221,3170,3124,3075,3012,2927,2823,2714,2618,2553,2522,2517,2517,2506,2476,2436,2401,2384,2385,2391,
+2385,2351,2289,2214,2145,2097,2073,2067,2061,2045,2014,1973,1931,1894,1863,1834,1803,1767,1729,1693,1662,
+1636,1613,1588,1558,1524,1488,1454,1423,1393,1363,1330,1293,1255,1217,1182,1150,1122,1093,1063,1030,995,
+960,927,896,867,838,808,776,743,711,681,651,622,591,558,523,490,460,431,402,371,336,
+298,256,215,175,136,99,64,32,3,-21,-44,-68,-95,-125,-160,-195,-230,-263,-294,-325,-356,
+-387,-418,-448,-478,-509,-543,-578,-612,-645,-675,-704,-733,-763,-796,-830,-864,-895,-926,-957,-990,-1025,
+-1059,-1090,-1117,-1141,-1164,-1190,-1219,-1253,-1289,-1324,-1358,-1390,-1422,-1454,-1486,-1518,-1548,-1576,-1604,-1632,-1662,
+-1693,-1725,-1755,-1782,-1805,-1825,-1843,-1861,-1880,-1901,-1921,-1940,-1955,-1967,-1978,-1992,-2009,-2031,-2057,-2081,-2102,
+-2118,-2131,-2142,-2155,-2169,-2184,-2196,-2206,-2215,-2224,-2235,-2250,-2265,-2281,-2295,-2307,-2320,-2334,-2350,-2364,-2376,
+-2386,-2394,-2403,-2414,-2427,-2439,-2447,-2449,-2445,-2438,-2430,-2422,-2415,-2409,-2404,-2401,-2399,-2398,-2396,-2393,-2387,
+-2378,-2368,-2359,-2353,-2350,-2348,-2347,-2345,-2342,-2338,-2334,-2329,-2324,-2321,-2318,-2318,-2317,-2316,-2314,-2311,-2308,
+-2306,-2304,-2302,-2297,-2289,-2280,-2271,-2264,-2259,-2253,-2243,-2229,-2212,-2198,-2191,-2189,-2190,-2188,-2179,-2162,-2141,
+-2119,-2101,-2086,-2071,-2055,-2039,-2026,-2016,-2009,-2004,-1997,-1985,-1971,-1958,-1950,-1948,-1950,-1953,-1951,-1944,-1932,
+-1919,-1911,-1911,-1925,-1951,-1987,-2028,-2066,-2092,-2104,-2102,-2091,-2077,-2065,-2055,-2045,-2037,-2031,-2032,-2042,-2062,
+-2085,-2104,-2112,-2108,-2097,-2085,-2079,-2076,-2077,-2077,-2077,-2079,-2086,-2095,-2102,-2104,-2101,-2101,-2109,-2131,-2159,
+-2183,-2189,-2176,-2152,-2135,-2140,-2165,-2196,-2205,-2177,-2112,-2031,-1970,-1953,-1987,-2055,-2125,-2170,-2179,-2158,-2127,
+-2105,-2102,-2115,-2136,-2156,-2172,-2187,-2204,-2226,-2252,-2275,-2290,-2292,-2280,-2255,-2223,-2192,-2168,-2157,-2158,-2166,
+-2173,-2173,-2164,-2150,-2136,-2131,-2135,-2148,-2165,-2181,-2194,-2206,-2218,-2230,-2244,-2256,-2267,-2277,-2289,-2304,-2322,
+-2342,-2364,-2389,-2419,-2456,-2500,-2549,-2602,-2656,-2708,-2757,-2800,-2835,-2860,-2875,-2883,-2891,-2902,-2920,-2942,-2961,
+-2974,-2979,-2979,-2980,-2984,-2991,-2997,-3000,-2998,-2995,-2997,-3006,-3022,-3041,-3058,-3068,-3071,-3071,-3071,-3073,-3076,
+-3078,-3078,-3074,-3068,-3063,-3060,-3059,-3059,-3060,-3061,-3063,-3064,-3065,-3064,-3060,-3053,-3043,-3033,-3025,-3018,-3012,
+-3008,-3003,-2998,-2994,-2989,-2983,-2976,-2966,-2954,-2939,-2923,-2909,-2898,-2891,-2887,-2884,-2878,-2870,-2859,-2847,-2837,
+-2828,-2822,-2815,-2808,-2797,-2786,-2774,-2764,-2756,-2750,-2744,-2736,-2727,-2717,-2706,-2694,-2682,-2669,-2657,-2645,-2634,
+-2625,-2617,-2608,-2596,-2582,-2566,-2550,-2536,-2525,-2514,-2504,-2492,-2481,-2469,-2459,-2449,-2440,-2430,-2419,-2407,-2394,
+-2381,-2369,-2357,-2347,-2337,-2328,-2318,-2309,-2300,-2292,-2285,-2281,-2282,-2286,-2293,-2302,-2312,-2321,-2328,-2332,-2332,
+-2324,-2309,-2287,-2262,-2238,-2218,-2202,-2189,-2178,-2165,-2150,-2135,-2122,-2110,-2101,-2094,-2086,-2078,-2068,-2059,-2050,
+-2042,-2035,-2028,-2021,-2013,-2006,-1998,-1991,-1984,-1976,-1967,-1957,-1945,-1933,-1921,-1912,-1906,-1903,-1901,-1898,-1890,
+-1876,-1857,-1835,-1814,-1798,-1789,-1785,-1786,-1787,-1789,-1789,-1789,-1790,-1790,-1789,-1785,-1778,-1769,-1760,-1753,-1748,
+-1745,-1745,-1747,-1754,-1769,-1793,-1825,-1862,-1896,-1923,-1937,-1938,-1930,-1916,-1901,-1888,-1876,-1867,-1857,-1846,-1833,
+-1816,-1796,-1773,-1750,-1727,-1705,-1684,-1663,-1642,-1621,-1600,-1580,-1560,-1541,-1523,-1506,-1490,-1476,-1465,-1455,-1446,
+-1435,-1423,-1408,-1393,-1379,-1367,-1358,-1349,-1340,-1329,-1317,-1305,-1293,-1281,-1269,-1257,-1243,-1229,-1216,-1205,-1196,
+-1187,-1180,-1173,-1167,-1161,-1157,-1154,-1152,-1149,-1148,-1148,-1151,-1156,-1163,-1170,-1176,-1178,-1179,-1179,-1179,-1181,
+-1184,-1188,-1193,-1198,-1203,-1207,-1209,-1209,-1207,-1204,-1202,-1200,-1202,-1205,-1211,-1216,-1221,-1223,-1223,-1223,-1221,
+-1221,-1222,-1225,-1229,-1233,-1237,-1240,-1241,-1241,-1240,-1239,-1239,-1238,-1236,-1232,-1225,-1215,-1204,-1196,-1191,-1189,
+-1190,-1191,-1190,-1187,-1182,-1177,-1172,-1166,-1160,-1151,-1139,-1126,-1112,-1098,-1083,-1066,-1047,-1026,-1005,-987,-973,
+-963,-954,-943,-930,-915,-900,-887,-879,-875,-873,-872,-871,-870,-869,-870,-874,-879,-886,-891,-893,-891,
+-884,-873,-857,-839,-820,-798,-775,-750,-723,-698,-675,-656,-639,-623,-607,-591,-575,-561,-551,-543,-535,
+-525,-511,-494,-478,-464,-452,-440,-426,-409,-389,-371,-356,-344,-334,-321,-302,-276,-245,-213,-181,-149,
+-119,-88,-56,-25,5,36,67,100,132,163,189,211,231,252,277,304,332,360,385,409,434,
+460,483,498,500,491,474,457,443,433,421,406,393,397,436,522,651,805,951,1060,1116,1121,
+1095,1060,1034,1022,1015,1003,978,942,905,878,872,890,929,982,1042,1100,1153,1195,1224,1242,1251,
+1253,1254,1256,1261,1267,1272,1275,1272,1262,1245,1222,1194,1164,1134,1103,1071,1039,1008,981,962,954,
+955,963,971,973,969,956,938,914,887,856,825,798,781,778,787,802,813,812,795,765,728,
+693,662,635,607,576,542,510,488,482,497,529,576,631,692,759,834,918,1009,1097,1170,1216,
+1230,1214,1180,1144,1118,1106,1105,1103,1091,1069,1041,1020,1016,1036,1078,1136,1203,1274,1343,1404,1452,
+1479,1480,1455,1413,1365,1324,1296,1281,1274,1269,1262,1256,1254,1265,1293,1337,1395,1457,1513,1551,1560,
+1533,1474,1392,1306,1234,1189,1177,1192,1226,1269,1312,1353,1391,1424,1452,1474,1490,1501,1507,1507,1495,
+1464,1411,1340,1261,1192,1147,1138,1163,1214,1279,1343,1396,1435,1457,1465,1464,1457,1450,1448,1451,1460,
+1471,1483,1491,1495,1494,1491,1486,1479,1468,1456,1442,1431,1426,1427,1434,1445,1457,1471,1487,1509,1538,
+1576,1619,1664,1708,1750,1793,1839,1892,1950,2005,2050,2076,2083,2075,2062,2054,2054,2062,2072,2079,2081,
+2080,2081,2087,2097,2109,2120,2126,2132,2139,2150,2163,2178,2189,2198,2206,2216,2228,2242,2252,2257,2257,
+2258,2264,2277,2295,2313,2327,2336,2343,2351,2363,2378,2394,2406,2415,2424,2437,2455,2478,2502,2524,2541,
+2553,2560,2565,2567,2566,2564,2564,2568,2577,2590,2606,2621,2635,2648,2661,2675,2688,2699,2706,2709,2712,
+2716,2725,2738,2752,2766,2777,2783,2786,2785,2782,2776,2770,2765,2761,2757,2752,2745,2737,2730,2729,2723,
+2723,2726,2727,2723,2712,2696,2680,2671,2672,2684,2703,2724,2744,2759,2768,2770,2768,2763,2757,2754,2754,
+2753,2749,2738,2719,2695,2673,2655,2644,2634,2623,2607,2590,2578,2579,2594,2618,2642,2659,2665,2665,2668,
+2680,2702,2729,2753,2768,2772,2768,2763,2759,2759,2763,2770,2781,2797,2817,2839,2860,2875,2887,2900,2919,
+2946,2980,3017,3050,3075,3095,3111,3129,3149,3171,3193,3214,3233,3253,3277,3304,3333,3361,3388,3413,3437,
+3460,3483,3501,3516,3529,3543,3562,3587,3613,3632,3635,3620,3594,3571,3564,3581,3614,3649,3666,3651,3603,
+3538,3476,3436,3430,3455,3499,3546,3583,3603,3608,3600,3586,3572,3561,3556,3560,3572,3590,3612,3634,3655,
+3674,3693,3716,3743,3774,3808,3842,3872,3897,3920,3942,3965,3989,4016,4045,4073,4101,4129,4159,4191,4224,
+4258,4292,4325,4359,4395,4432,4470,4506,4538,4566,4592,4620,4651,4684,4714,4734,4741,4736,4725,4714,4708,
+4704,4697,4680,4654,4623,4595,4574,4562,4554,4546,4536,4525,4518,4515,4513,4506,4489,4464,4440,4428,4433,
+4452,4473,4480,4465,4427,4378,4332,4299,4285,4285,4296,4315,4341,4377,4419,4460,4488,4493,4471,4425,4367,
+4308,4258,4219,4189,4164,4140,4114,4089,4068,4053,4045,4042,4039,4032,4017,3995,3967,3935,3903,3874,3848,
+3827,3810,3799,3793,3790,3788,3784,3779,3771,3759,3746,3729,3709,3685,3660,3637,3619,3606,3595,3583,3565,
+3542,3515,3490,3471,3460,3454,3451,3448,3446,3449,3456,3469,3483,3495,3502,3504,3505,3506,3508,3510,3507,
+3500,3489,3479,3471,3469,3468,3469,3468,3467,3470,3478,3491,3507,3520,3528,3528,3521,3511,3500,3492,3489,
+3491,3499,3511,3524,3532,3531,3519,3498,3471,3439,3403,3362,3312,3257,3201,3149,3103,3059,3006,2933,2837,
+2727,2619,2532,2474,2443,2423,2400,2367,2330,2304,2301,2322,2351,2366,2347,2290,2208,2124,2062,2030,2024,
+2028,2023,2000,1961,1917,1876,1843,1818,1793,1763,1728,1690,1656,1627,1602,1578,1550,1518,1483,1447,1414,
+1383,1354,1322,1287,1249,1211,1174,1142,1112,1083,1053,1021,987,953,921,891,861,831,799,767,735,
+705,677,650,622,592,560,528,497,469,440,408,371,328,283,239,198,161,127,94,62,32,
+6,-15,-34,-54,-80,-112,-149,-189,-227,-261,-292,-322,-353,-386,-419,-452,-483,-514,-545,-576,-608,
+-639,-669,-696,-725,-755,-789,-823,-858,-890,-921,-951,-984,-1018,-1053,-1085,-1113,-1138,-1161,-1186,-1216,-1249,
+-1285,-1321,-1355,-1387,-1418,-1450,-1482,-1513,-1543,-1572,-1600,-1629,-1658,-1689,-1720,-1748,-1773,-1795,-1815,-1835,-1857,
+-1879,-1901,-1922,-1939,-1953,-1965,-1977,-1991,-2008,-2028,-2049,-2069,-2088,-2106,-2123,-2139,-2156,-2172,-2185,-2195,-2203,
+-2210,-2220,-2234,-2250,-2267,-2283,-2297,-2310,-2324,-2338,-2354,-2370,-2384,-2395,-2405,-2415,-2427,-2439,-2450,-2458,-2461,
+-2458,-2453,-2446,-2438,-2432,-2425,-2420,-2417,-2415,-2414,-2413,-2411,-2406,-2398,-2388,-2379,-2371,-2366,-2365,-2365,-2366,
+-2368,-2367,-2365,-2360,-2353,-2347,-2343,-2341,-2341,-2341,-2339,-2337,-2334,-2332,-2331,-2330,-2327,-2321,-2314,-2306,-2299,
+-2293,-2286,-2277,-2264,-2249,-2236,-2226,-2221,-2219,-2215,-2207,-2193,-2174,-2154,-2135,-2117,-2100,-2083,-2067,-2053,-2042,
+-2032,-2022,-2012,-2000,-1989,-1981,-1976,-1976,-1978,-1979,-1976,-1968,-1955,-1941,-1929,-1924,-1931,-1953,-1988,-2031,-2073,
+-2107,-2126,-2130,-2124,-2113,-2100,-2087,-2073,-2060,-2051,-2051,-2063,-2086,-2114,-2137,-2149,-2147,-2135,-2119,-2105,-2096,
+-2092,-2092,-2097,-2108,-2122,-2136,-2145,-2146,-2143,-2142,-2153,-2178,-2209,-2232,-2236,-2220,-2195,-2181,-2190,-2217,-2240,
+-2235,-2184,-2097,-2004,-1945,-1948,-2012,-2113,-2209,-2269,-2282,-2260,-2230,-2213,-2220,-2241,-2263,-2275,-2277,-2279,-2292,
+-2319,-2354,-2383,-2391,-2373,-2333,-2282,-2236,-2206,-2197,-2204,-2219,-2232,-2237,-2233,-2222,-2211,-2205,-2207,-2217,-2231,
+-2247,-2263,-2279,-2297,-2317,-2338,-2357,-2373,-2387,-2401,-2419,-2443,-2475,-2512,-2552,-2593,-2634,-2677,-2721,-2764,-2807,
+-2846,-2882,-2914,-2940,-2959,-2970,-2974,-2975,-2977,-2986,-3002,-3023,-3043,-3056,-3060,-3059,-3055,-3055,-3060,-3067,-3074,
+-3079,-3081,-3084,-3090,-3101,-3115,-3129,-3141,-3148,-3153,-3155,-3156,-3157,-3156,-3154,-3150,-3146,-3142,-3140,-3139,-3139,
+-3139,-3139,-3139,-3138,-3137,-3134,-3129,-3122,-3112,-3101,-3091,-3083,-3078,-3074,-3071,-3067,-3063,-3057,-3049,-3041,-3030,
+-3017,-3002,-2985,-2969,-2957,-2949,-2944,-2942,-2938,-2931,-2921,-2910,-2901,-2894,-2890,-2885,-2878,-2867,-2852,-2838,-2825,
+-2816,-2809,-2803,-2797,-2788,-2778,-2767,-2756,-2744,-2731,-2717,-2702,-2688,-2675,-2663,-2651,-2637,-2622,-2607,-2592,-2579,
+-2568,-2558,-2548,-2537,-2526,-2515,-2505,-2496,-2488,-2479,-2470,-2458,-2444,-2429,-2414,-2400,-2387,-2377,-2368,-2360,-2351,
+-2340,-2328,-2316,-2306,-2299,-2297,-2298,-2302,-2308,-2315,-2322,-2328,-2331,-2331,-2325,-2314,-2301,-2287,-2274,-2262,-2250,
+-2236,-2218,-2198,-2178,-2161,-2149,-2141,-2134,-2125,-2114,-2101,-2088,-2076,-2066,-2059,-2052,-2044,-2035,-2024,-2014,-2004,
+-1996,-1989,-1982,-1975,-1967,-1959,-1950,-1940,-1932,-1925,-1919,-1913,-1904,-1892,-1875,-1856,-1837,-1821,-1811,-1807,-1807,
+-1808,-1808,-1806,-1802,-1797,-1792,-1787,-1782,-1776,-1770,-1764,-1757,-1749,-1739,-1727,-1715,-1707,-1708,-1720,-1744,-1776,
+-1812,-1843,-1866,-1879,-1881,-1877,-1869,-1860,-1852,-1844,-1836,-1827,-1816,-1805,-1793,-1781,-1769,-1758,-1746,-1731,-1712,
+-1689,-1662,-1634,-1605,-1579,-1556,-1535,-1517,-1501,-1487,-1475,-1465,-1456,-1445,-1433,-1419,-1405,-1393,-1383,-1375,-1367,
+-1357,-1344,-1330,-1315,-1300,-1287,-1275,-1262,-1250,-1238,-1228,-1219,-1213,-1209,-1204,-1198,-1191,-1184,-1178,-1173,-1169,
+-1166,-1165,-1165,-1168,-1173,-1180,-1187,-1193,-1197,-1199,-1200,-1200,-1202,-1206,-1210,-1215,-1220,-1224,-1228,-1230,-1231,
+-1229,-1226,-1222,-1219,-1219,-1221,-1225,-1231,-1237,-1241,-1242,-1241,-1239,-1237,-1237,-1239,-1242,-1246,-1251,-1254,-1255,
+-1256,-1256,-1256,-1257,-1257,-1255,-1249,-1241,-1229,-1215,-1204,-1196,-1192,-1191,-1192,-1192,-1191,-1189,-1186,-1184,-1181,
+-1178,-1173,-1165,-1154,-1141,-1124,-1105,-1085,-1065,-1046,-1030,-1016,-1004,-992,-977,-959,-940,-920,-904,-893,-887,
+-884,-884,-884,-885,-887,-891,-898,-905,-913,-919,-921,-920,-914,-904,-891,-873,-853,-832,-807,-781,-754,
+-726,-699,-676,-657,-641,-625,-609,-591,-573,-557,-544,-534,-526,-518,-508,-496,-484,-472,-461,-448,-434,
+-418,-401,-385,-373,-362,-351,-336,-315,-289,-260,-228,-196,-165,-134,-105,-76,-49,-22,6,38,74,
+110,142,168,189,208,229,256,287,318,345,367,389,414,444,474,497,505,498,480,460,444,
+433,420,399,373,355,367,429,547,708,880,1029,1127,1166,1156,1121,1083,1053,1032,1013,989,958,
+926,904,903,926,969,1025,1082,1131,1167,1190,1204,1212,1219,1225,1230,1233,1231,1226,1217,1205,1191,
+1174,1153,1127,1098,1069,1042,1018,997,978,960,945,938,943,961,991,1026,1059,1082,1094,1093,1083,
+1065,1044,1022,1005,996,998,1010,1027,1040,1042,1031,1006,973,937,901,865,828,788,747,711,686,
+678,689,719,763,816,877,943,1017,1096,1178,1255,1314,1345,1343,1312,1264,1214,1176,1156,1150,1149,
+1145,1131,1112,1095,1090,1099,1125,1162,1205,1249,1294,1336,1372,1398,1411,1411,1400,1387,1375,1368,1365,
+1363,1359,1353,1348,1348,1356,1375,1406,1447,1496,1547,1593,1623,1632,1617,1585,1548,1520,1513,1530,1567,
+1616,1670,1721,1767,1806,1833,1848,1850,1844,1836,1828,1817,1795,1746,1662,1545,1410,1281,1183,1131,1125,
+1154,1199,1245,1281,1305,1320,1328,1331,1328,1323,1318,1318,1327,1344,1366,1386,1401,1405,1401,1391,1376,
+1359,1343,1327,1316,1310,1312,1321,1335,1353,1373,1399,1432,1475,1528,1587,1646,1702,1754,1804,1858,1916,
+1977,2032,2073,2094,2094,2081,2066,2057,2060,2071,2085,2097,2103,2104,2103,2103,2103,2104,2105,2108,2113,
+2123,2136,2151,2163,2172,2178,2184,2195,2208,2223,2235,2244,2249,2255,2265,2279,2294,2306,2314,2318,2322,
+2329,2342,2357,2371,2382,2391,2401,2414,2434,2456,2479,2500,2516,2528,2538,2544,2548,2548,2547,2548,2552,
+2562,2577,2593,2608,2622,2637,2654,2672,2690,2703,2708,2708,2705,2704,2710,2722,2737,2751,2761,2767,2769,
+2769,2769,2769,2770,2770,2769,2765,2758,2749,2738,2729,2723,2738,2728,2716,2700,2682,2663,2649,2644,2654,
+2677,2709,2744,2773,2792,2800,2796,2784,2766,2744,2723,2707,2699,2698,2701,2703,2698,2684,2661,2632,2603,
+2576,2556,2542,2537,2542,2557,2577,2599,2615,2621,2620,2617,2618,2628,2645,2664,2678,2682,2677,2669,2662,
+2663,2673,2689,2708,2730,2752,2773,2792,2807,2818,2829,2844,2866,2896,2930,2965,2993,3013,3027,3041,3058,
+3082,3110,3139,3165,3187,3209,3231,3257,3284,3311,3335,3355,3371,3384,3396,3409,3421,3436,3455,3478,3504,
+3527,3541,3543,3534,3522,3519,3531,3558,3589,3609,3602,3565,3506,3443,3397,3381,3396,3433,3475,3510,3531,
+3538,3537,3532,3527,3523,3521,3522,3530,3545,3567,3594,3620,3643,3662,3681,3704,3732,3764,3798,3830,3856,
+3878,3897,3918,3942,3968,3995,4022,4047,4071,4097,4125,4155,4187,4220,4252,4285,4320,4358,4398,4436,4469,
+4496,4519,4542,4569,4601,4636,4667,4687,4693,4689,4680,4671,4667,4664,4659,4647,4628,4606,4584,4565,4549,
+4535,4521,4509,4502,4503,4508,4512,4508,4491,4463,4432,4409,4396,4391,4384,4368,4339,4303,4269,4249,4247,
+4262,4289,4322,4359,4400,4443,4484,4514,4523,4505,4460,4397,4330,4269,4221,4187,4162,4139,4116,4091,4068,
+4048,4033,4024,4017,4009,3996,3977,3951,3922,3893,3866,3844,3827,3814,3805,3799,3794,3789,3784,3776,3765,
+3751,3736,3721,3706,3690,3671,3650,3628,3607,3590,3575,3563,3549,3532,3513,3493,3475,3461,3450,3442,3436,
+3433,3433,3439,3450,3462,3474,3484,3492,3499,3505,3510,3512,3507,3498,3485,3474,3468,3468,3472,3477,3482,
+3485,3488,3494,3501,3506,3508,3503,3494,3483,3474,3469,3469,3472,3479,3486,3495,3501,3501,3494,3478,3454,
+3426,3398,3367,3332,3288,3235,3175,3115,3061,3012,2962,2900,2821,2727,2631,2548,2488,2450,2423,2393,2352,
+2304,2262,2240,2243,2260,2272,2257,2208,2134,2056,1997,1971,1975,1991,2000,1988,1955,1909,1863,1828,1802,
+1781,1757,1725,1689,1652,1618,1590,1566,1540,1510,1476,1440,1404,1371,1339,1307,1274,1238,1202,1168,1136,
+1105,1075,1043,1010,976,943,912,883,854,825,794,762,732,704,677,651,623,594,564,534,506,
+478,447,409,364,315,266,223,187,158,131,103,74,44,18,-3,-21,-39,-64,-97,-136,-179,
+-219,-255,-288,-319,-352,-387,-422,-456,-487,-516,-544,-573,-603,-633,-662,-691,-720,-751,-784,-819,-853,
+-885,-915,-945,-976,-1009,-1045,-1079,-1110,-1137,-1163,-1189,-1218,-1250,-1284,-1319,-1352,-1385,-1416,-1447,-1478,-1508,
+-1538,-1566,-1595,-1625,-1657,-1688,-1718,-1744,-1767,-1787,-1807,-1829,-1852,-1877,-1900,-1920,-1936,-1950,-1963,-1977,-1993,
+-2011,-2030,-2048,-2065,-2081,-2097,-2114,-2132,-2150,-2166,-2178,-2188,-2196,-2206,-2218,-2234,-2252,-2270,-2287,-2301,-2314,
+-2327,-2342,-2358,-2375,-2390,-2403,-2414,-2424,-2434,-2444,-2453,-2460,-2463,-2464,-2461,-2457,-2452,-2447,-2442,-2438,-2436,
+-2435,-2435,-2433,-2430,-2425,-2419,-2411,-2403,-2395,-2389,-2385,-2384,-2385,-2388,-2390,-2389,-2386,-2381,-2375,-2370,-2367,
+-2366,-2365,-2364,-2361,-2357,-2355,-2354,-2354,-2354,-2352,-2347,-2340,-2333,-2326,-2318,-2308,-2296,-2283,-2270,-2261,-2255,
+-2252,-2248,-2240,-2228,-2210,-2189,-2167,-2146,-2127,-2110,-2094,-2080,-2067,-2055,-2043,-2032,-2021,-2013,-2006,-2003,-2001,
+-1999,-1996,-1990,-1981,-1970,-1958,-1948,-1943,-1950,-1970,-2004,-2047,-2090,-2124,-2145,-2152,-2147,-2137,-2124,-2110,-2095,
+-2080,-2070,-2068,-2079,-2101,-2129,-2155,-2169,-2170,-2160,-2146,-2132,-2123,-2119,-2121,-2128,-2139,-2154,-2169,-2179,-2183,
+-2183,-2187,-2199,-2221,-2244,-2257,-2254,-2236,-2216,-2210,-2223,-2247,-2260,-2239,-2176,-2087,-2005,-1970,-2003,-2095,-2215,
+-2319,-2378,-2386,-2361,-2334,-2328,-2345,-2374,-2398,-2405,-2400,-2395,-2406,-2435,-2472,-2499,-2499,-2465,-2406,-2340,-2286,
+-2255,-2250,-2262,-2280,-2292,-2296,-2292,-2285,-2282,-2286,-2296,-2310,-2325,-2340,-2355,-2372,-2391,-2413,-2437,-2462,-2487,
+-2513,-2543,-2580,-2623,-2672,-2723,-2772,-2819,-2862,-2901,-2937,-2968,-2995,-3017,-3035,-3049,-3060,-3068,-3073,-3075,-3074,
+-3075,-3079,-3089,-3104,-3119,-3129,-3133,-3130,-3125,-3122,-3126,-3135,-3147,-3158,-3166,-3171,-3174,-3178,-3187,-3199,-3213,
+-3226,-3235,-3241,-3242,-3240,-3237,-3233,-3229,-3226,-3223,-3221,-3220,-3218,-3217,-3215,-3214,-3211,-3209,-3204,-3199,-3192,
+-3183,-3173,-3164,-3155,-3149,-3144,-3140,-3135,-3128,-3121,-3112,-3102,-3091,-3078,-3064,-3049,-3034,-3021,-3012,-3007,-3002,
+-2996,-2988,-2977,-2965,-2956,-2951,-2950,-2948,-2943,-2934,-2920,-2904,-2890,-2879,-2871,-2865,-2859,-2852,-2843,-2833,-2823,
+-2811,-2798,-2783,-2765,-2746,-2727,-2709,-2692,-2675,-2660,-2645,-2632,-2620,-2610,-2601,-2592,-2581,-2570,-2558,-2547,-2537,
+-2527,-2519,-2511,-2502,-2492,-2479,-2465,-2449,-2433,-2418,-2405,-2394,-2384,-2374,-2364,-2353,-2344,-2335,-2329,-2324,-2320,
+-2316,-2312,-2310,-2310,-2311,-2314,-2317,-2318,-2317,-2315,-2312,-2306,-2297,-2283,-2266,-2246,-2228,-2213,-2203,-2196,-2188,
+-2178,-2165,-2148,-2132,-2116,-2104,-2093,-2083,-2072,-2060,-2048,-2035,-2023,-2012,-2003,-1997,-1992,-1987,-1983,-1978,-1971,
+-1963,-1953,-1944,-1935,-1927,-1917,-1905,-1891,-1875,-1860,-1848,-1840,-1835,-1832,-1827,-1820,-1812,-1802,-1794,-1788,-1784,
+-1782,-1781,-1781,-1780,-1776,-1769,-1758,-1744,-1731,-1723,-1722,-1730,-1747,-1767,-1788,-1806,-1818,-1824,-1827,-1827,-1827,
+-1825,-1822,-1817,-1810,-1800,-1790,-1780,-1772,-1766,-1761,-1755,-1745,-1729,-1708,-1682,-1655,-1629,-1606,-1585,-1566,-1547,
+-1528,-1509,-1491,-1475,-1461,-1447,-1435,-1422,-1410,-1400,-1391,-1383,-1373,-1361,-1347,-1331,-1314,-1299,-1286,-1274,-1263,
+-1252,-1242,-1235,-1230,-1228,-1227,-1226,-1222,-1217,-1210,-1203,-1198,-1194,-1192,-1191,-1191,-1193,-1196,-1201,-1206,-1210,
+-1214,-1215,-1216,-1217,-1220,-1223,-1228,-1233,-1237,-1241,-1244,-1246,-1248,-1249,-1249,-1247,-1245,-1244,-1244,-1248,-1252,
+-1258,-1262,-1264,-1263,-1260,-1257,-1254,-1252,-1254,-1257,-1260,-1264,-1267,-1269,-1270,-1271,-1271,-1272,-1270,-1265,-1257,
+-1245,-1232,-1218,-1207,-1200,-1196,-1194,-1194,-1194,-1193,-1193,-1192,-1192,-1191,-1188,-1182,-1170,-1155,-1136,-1115,-1096,
+-1080,-1066,-1054,-1042,-1027,-1008,-986,-963,-942,-927,-917,-911,-907,-903,-898,-894,-894,-899,-910,-923,-936,
+-946,-951,-952,-949,-943,-934,-923,-906,-885,-859,-829,-796,-764,-733,-706,-683,-664,-646,-629,-611,-592,
+-572,-555,-541,-530,-521,-514,-506,-497,-488,-477,-465,-452,-438,-424,-412,-401,-391,-380,-366,-347,-324,
+-299,-272,-245,-216,-185,-154,-125,-98,-75,-53,-28,3,40,80,116,144,165,183,205,235,269,
+303,331,351,369,390,420,455,487,506,507,492,471,452,438,425,405,377,349,342,378,469,
+613,785,952,1084,1163,1191,1181,1152,1119,1085,1050,1012,973,941,928,941,981,1042,1108,1166,1203,
+1219,1217,1207,1200,1200,1207,1217,1222,1219,1207,1188,1168,1147,1125,1100,1071,1039,1011,989,978,977,
+980,985,990,999,1018,1051,1098,1155,1214,1265,1305,1330,1343,1347,1345,1339,1334,1330,1333,1341,1355,
+1371,1382,1385,1376,1356,1325,1287,1243,1194,1143,1092,1045,1003,972,954,949,959,982,1020,1070,1130,
+1197,1264,1323,1365,1382,1373,1342,1300,1259,1228,1212,1206,1205,1201,1192,1179,1171,1173,1188,1214,1248,
+1283,1316,1345,1369,1387,1400,1405,1404,1400,1395,1392,1390,1387,1382,1376,1370,1368,1372,1381,1394,1409,
+1427,1449,1476,1508,1540,1568,1587,1598,1604,1614,1634,1665,1709,1762,1822,1886,1949,2007,2052,2081,2094,
+2095,2093,2092,2089,2069,2016,1918,1778,1613,1452,1321,1234,1188,1168,1154,1135,1106,1077,1054,1044,1045,
+1052,1059,1066,1077,1097,1127,1162,1195,1218,1225,1218,1201,1181,1162,1148,1138,1135,1138,1150,1170,1196,
+1228,1264,1306,1355,1413,1479,1549,1619,1685,1746,1804,1862,1922,1981,2033,2070,2090,2092,2082,2070,2063,
+2064,2073,2086,2098,2107,2113,2115,2114,2111,2108,2105,2106,2112,2124,2138,2151,2161,2167,2172,2179,2190,
+2205,2220,2233,2243,2251,2261,2272,2285,2296,2302,2305,2306,2310,2318,2330,2343,2354,2362,2370,2381,2397,
+2417,2438,2457,2472,2485,2497,2509,2521,2532,2538,2542,2546,2553,2563,2576,2590,2602,2614,2627,2643,2664,
+2684,2699,2706,2706,2703,2701,2706,2715,2727,2736,2741,2742,2742,2743,2747,2753,2759,2764,2765,2765,2762,
+2758,2753,2746,2738,2766,2749,2723,2690,2657,2629,2613,2614,2632,2663,2700,2736,2764,2781,2786,2781,2767,
+2744,2716,2685,2658,2641,2637,2644,2657,2666,2663,2646,2618,2585,2554,2533,2523,2524,2534,2547,2561,2571,
+2576,2575,2570,2564,2562,2565,2572,2578,2581,2579,2575,2574,2579,2593,2613,2637,2659,2679,2697,2713,2730,
+2747,2765,2785,2807,2831,2858,2886,2911,2932,2950,2966,2984,3008,3037,3069,3101,3128,3152,3175,3197,3222,
+3248,3272,3290,3304,3312,3319,3328,3340,3355,3374,3394,3413,3430,3441,3446,3446,3445,3450,3465,3491,3520,
+3541,3541,3515,3466,3409,3361,3337,3343,3371,3409,3442,3463,3471,3471,3471,3475,3482,3490,3496,3503,3512,
+3528,3550,3576,3602,3625,3645,3664,3687,3716,3749,3783,3813,3837,3857,3875,3895,3919,3946,3974,3999,4022,
+4044,4067,4092,4121,4151,4183,4216,4250,4287,4325,4362,4396,4423,4445,4466,4489,4517,4551,4585,4612,4629,
+4634,4632,4627,4623,4623,4621,4615,4603,4585,4566,4549,4536,4525,4515,4505,4498,4497,4502,4510,4514,4510,
+4493,4467,4440,4415,4397,4380,4358,4328,4289,4250,4220,4206,4211,4230,4259,4293,4329,4368,4405,4436,4453,
+4447,4417,4368,4309,4251,4203,4167,4141,4119,4099,4078,4056,4036,4019,4006,3995,3985,3973,3957,3937,3913,
+3887,3864,3844,3829,3818,3810,3803,3796,3787,3777,3766,3754,3740,3724,3708,3694,3680,3668,3655,3639,3620,
+3599,3578,3559,3543,3529,3516,3503,3489,3476,3463,3450,3439,3429,3422,3419,3421,3428,3438,3450,3463,3475,
+3486,3496,3503,3506,3501,3491,3479,3469,3463,3464,3469,3477,3485,3492,3498,3503,3505,3502,3492,3478,3464,
+3454,3451,3456,3466,3475,3481,3481,3478,3471,3461,3447,3428,3404,3379,3354,3330,3302,3265,3216,3155,3088,
+3024,2966,2912,2856,2791,2715,2635,2564,2509,2473,2446,2415,2370,2311,2248,2197,2167,2157,2150,2132,2090,
+2029,1966,1919,1903,1916,1944,1966,1967,1942,1900,1854,1815,1786,1765,1744,1717,1683,1646,1611,1581,1555,
+1529,1502,1470,1434,1397,1361,1326,1292,1259,1226,1194,1162,1132,1102,1071,1038,1003,968,935,904,875,
+848,820,791,762,733,705,677,649,620,591,563,536,510,482,448,405,356,305,258,221,194,
+172,150,124,94,61,33,10,-8,-26,-51,-85,-126,-170,-212,-249,-282,-314,-348,-384,-421,-457,
+-488,-517,-543,-570,-599,-629,-659,-688,-718,-749,-782,-817,-851,-883,-913,-942,-972,-1003,-1037,-1070,-1102,
+-1132,-1159,-1186,-1214,-1245,-1278,-1312,-1345,-1379,-1412,-1443,-1474,-1502,-1530,-1558,-1587,-1619,-1652,-1686,-1716,-1742,
+-1763,-1782,-1802,-1824,-1848,-1873,-1895,-1914,-1929,-1943,-1958,-1975,-1994,-2014,-2033,-2050,-2066,-2080,-2094,-2110,-2126,
+-2141,-2156,-2169,-2182,-2194,-2207,-2223,-2240,-2257,-2275,-2290,-2304,-2318,-2331,-2346,-2361,-2378,-2394,-2409,-2421,-2432,
+-2441,-2449,-2456,-2462,-2466,-2469,-2469,-2466,-2462,-2458,-2455,-2454,-2454,-2455,-2455,-2453,-2449,-2444,-2440,-2435,-2430,
+-2424,-2418,-2412,-2407,-2404,-2405,-2406,-2407,-2406,-2403,-2398,-2395,-2393,-2393,-2393,-2391,-2388,-2384,-2381,-2380,-2381,
+-2381,-2381,-2378,-2373,-2366,-2358,-2350,-2340,-2328,-2315,-2303,-2293,-2288,-2285,-2283,-2277,-2266,-2249,-2228,-2204,-2180,
+-2159,-2141,-2125,-2111,-2099,-2087,-2076,-2066,-2057,-2050,-2044,-2038,-2031,-2023,-2014,-2005,-1997,-1988,-1980,-1974,-1973,
+-1980,-1998,-2028,-2066,-2105,-2137,-2157,-2163,-2160,-2151,-2140,-2127,-2114,-2100,-2089,-2086,-2094,-2112,-2136,-2158,-2172,
+-2178,-2175,-2169,-2165,-2163,-2163,-2166,-2170,-2176,-2184,-2194,-2203,-2212,-2220,-2230,-2243,-2257,-2268,-2269,-2259,-2243,
+-2231,-2232,-2245,-2260,-2256,-2220,-2152,-2076,-2025,-2029,-2099,-2216,-2345,-2444,-2491,-2488,-2458,-2433,-2432,-2456,-2490,
+-2515,-2523,-2518,-2513,-2523,-2549,-2581,-2601,-2596,-2560,-2503,-2441,-2391,-2361,-2352,-2355,-2362,-2366,-2366,-2363,-2362,
+-2365,-2374,-2387,-2403,-2420,-2438,-2457,-2478,-2501,-2526,-2554,-2586,-2624,-2667,-2717,-2773,-2832,-2889,-2942,-2987,-3025,
+-3057,-3085,-3110,-3131,-3147,-3156,-3161,-3163,-3164,-3167,-3170,-3173,-3173,-3172,-3172,-3174,-3180,-3189,-3197,-3202,-3202,
+-3198,-3196,-3198,-3207,-3221,-3236,-3247,-3252,-3252,-3252,-3256,-3267,-3282,-3299,-3313,-3321,-3323,-3320,-3316,-3312,-3309,
+-3308,-3306,-3304,-3301,-3298,-3295,-3293,-3290,-3286,-3281,-3275,-3268,-3261,-3253,-3245,-3237,-3228,-3220,-3212,-3205,-3198,
+-3191,-3183,-3174,-3164,-3154,-3142,-3130,-3116,-3103,-3091,-3080,-3072,-3064,-3055,-3043,-3030,-3017,-3008,-3003,-3002,-3003,
+-3002,-2996,-2986,-2972,-2959,-2947,-2938,-2931,-2924,-2917,-2908,-2898,-2888,-2877,-2864,-2849,-2830,-2808,-2785,-2762,-2740,
+-2721,-2703,-2687,-2673,-2661,-2651,-2642,-2633,-2624,-2614,-2603,-2590,-2577,-2565,-2554,-2545,-2538,-2531,-2522,-2510,-2495,
+-2477,-2459,-2442,-2428,-2417,-2407,-2398,-2390,-2381,-2373,-2365,-2358,-2350,-2341,-2331,-2322,-2315,-2312,-2312,-2315,-2318,
+-2321,-2323,-2323,-2320,-2314,-2304,-2293,-2281,-2270,-2262,-2256,-2252,-2245,-2236,-2223,-2208,-2191,-2174,-2158,-2142,-2127,
+-2113,-2100,-2088,-2077,-2065,-2054,-2042,-2031,-2021,-2014,-2009,-2004,-1998,-1991,-1982,-1972,-1964,-1958,-1952,-1945,-1934,
+-1920,-1905,-1889,-1876,-1865,-1855,-1846,-1836,-1825,-1814,-1805,-1799,-1797,-1796,-1797,-1798,-1799,-1799,-1797,-1792,-1785,
+-1777,-1769,-1764,-1762,-1764,-1769,-1776,-1782,-1787,-1792,-1797,-1804,-1811,-1817,-1820,-1819,-1814,-1804,-1791,-1777,-1764,
+-1754,-1745,-1736,-1725,-1710,-1693,-1673,-1654,-1637,-1622,-1609,-1594,-1577,-1555,-1531,-1507,-1484,-1465,-1450,-1437,-1427,
+-1418,-1409,-1399,-1388,-1376,-1361,-1346,-1330,-1315,-1302,-1291,-1280,-1270,-1259,-1250,-1242,-1238,-1237,-1237,-1237,-1236,
+-1232,-1228,-1223,-1220,-1219,-1219,-1220,-1222,-1223,-1226,-1228,-1231,-1234,-1236,-1236,-1237,-1238,-1240,-1243,-1247,-1251,
+-1255,-1259,-1262,-1266,-1270,-1274,-1276,-1277,-1276,-1274,-1272,-1273,-1276,-1280,-1285,-1289,-1290,-1288,-1284,-1280,-1277,
+-1275,-1276,-1278,-1281,-1284,-1285,-1286,-1287,-1287,-1287,-1287,-1284,-1278,-1269,-1257,-1243,-1231,-1220,-1213,-1208,-1205,
+-1203,-1201,-1200,-1200,-1200,-1199,-1196,-1188,-1176,-1160,-1142,-1124,-1109,-1098,-1088,-1077,-1060,-1036,-1006,-975,-950,
+-934,-930,-932,-937,-937,-930,-919,-910,-907,-914,-930,-950,-968,-981,-986,-985,-983,-980,-976,-969,-954,
+-931,-899,-861,-822,-784,-751,-724,-700,-680,-660,-639,-618,-597,-577,-559,-545,-533,-522,-514,-505,-498,
+-489,-480,-469,-457,-445,-434,-426,-417,-408,-395,-377,-355,-331,-307,-285,-263,-237,-207,-174,-142,-116,
+-97,-81,-62,-35,2,45,85,118,140,159,180,210,247,285,317,339,354,372,397,431,467,
+494,504,497,479,459,442,427,408,380,348,326,335,391,498,644,803,951,1065,1138,1172,1177,
+1161,1130,1090,1043,1000,970,967,996,1054,1129,1204,1262,1291,1291,1272,1246,1226,1220,1226,1237,1245,
+1245,1236,1221,1204,1186,1165,1139,1105,1069,1035,1013,1006,1015,1032,1053,1072,1092,1118,1157,1211,1276,
+1348,1416,1475,1522,1558,1583,1600,1608,1610,1607,1604,1606,1618,1639,1664,1688,1702,1700,1681,1644,1595,
+1539,1479,1420,1362,1305,1251,1201,1158,1128,1114,1121,1147,1189,1241,1294,1338,1368,1379,1373,1354,1330,
+1310,1296,1290,1288,1287,1283,1277,1273,1275,1288,1312,1342,1375,1403,1426,1442,1451,1453,1450,1443,1434,
+1425,1420,1418,1417,1416,1411,1405,1399,1399,1403,1412,1421,1427,1430,1433,1441,1459,1485,1517,1549,1577,
+1599,1617,1635,1656,1685,1726,1782,1852,1933,2016,2090,2148,2188,2214,2235,2254,2267,2262,2221,2135,2008,
+1857,1707,1578,1475,1391,1307,1210,1095,976,870,797,763,761,778,800,821,839,862,890,924,954,
+973,976,963,940,915,894,877,867,862,866,879,906,948,1003,1072,1149,1234,1323,1412,1499,1580,
+1653,1719,1781,1841,1902,1960,2012,2054,2080,2092,2093,2087,2081,2076,2075,2077,2082,2090,2098,2104,2109,
+2110,2111,2112,2116,2125,2137,2149,2158,2164,2168,2174,2184,2197,2213,2226,2237,2245,2253,2262,2272,2281,
+2287,2289,2289,2290,2295,2304,2316,2327,2335,2342,2350,2363,2381,2403,2423,2438,2449,2459,2471,2488,2506,
+2523,2535,2543,2549,2556,2566,2578,2589,2598,2606,2616,2630,2650,2670,2687,2697,2699,2698,2697,2699,2705,
+2712,2716,2718,2718,2721,2728,2737,2747,2753,2755,2756,2756,2760,2766,2772,2773,2766,2767,2746,2712,2671,
+2631,2601,2585,2584,2598,2620,2645,2668,2687,2700,2709,2714,2712,2703,2683,2657,2629,2607,2599,2605,2619,
+2633,2637,2629,2609,2584,2561,2545,2536,2533,2531,2528,2523,2517,2510,2505,2501,2498,2495,2493,2491,2490,
+2489,2491,2497,2509,2528,2552,2577,2599,2617,2630,2642,2656,2675,2700,2728,2757,2783,2805,2824,2841,2858,
+2876,2896,2919,2945,2975,3006,3036,3064,3089,3112,3134,3158,3182,3207,3227,3242,3252,3259,3266,3277,3294,
+3314,3335,3353,3365,3371,3372,3370,3371,3377,3393,3415,3440,3459,3462,3446,3411,3366,3324,3297,3294,3313,
+3344,3375,3398,3409,3411,3413,3420,3433,3450,3465,3477,3486,3497,3511,3532,3558,3584,3607,3627,3647,3670,
+3697,3729,3761,3789,3813,3832,3849,3869,3891,3917,3943,3968,3991,4013,4035,4060,4087,4117,4150,4185,4221,
+4259,4295,4328,4355,4377,4396,4416,4441,4470,4501,4529,4547,4555,4554,4550,4548,4550,4553,4554,4550,4538,
+4523,4507,4494,4484,4477,4470,4464,4460,4460,4465,4472,4475,4471,4459,4443,4426,4413,4403,4389,4368,4336,
+4296,4255,4220,4197,4186,4184,4189,4198,4212,4232,4254,4273,4282,4277,4256,4225,4190,4158,4131,4110,4090,
+4070,4048,4026,4006,3989,3976,3965,3956,3946,3934,3920,3902,3882,3862,3844,3830,3821,3814,3807,3798,3785,
+3770,3754,3738,3724,3710,3696,3683,3669,3656,3645,3633,3621,3605,3587,3567,3546,3528,3513,3501,3492,3484,
+3478,3471,3463,3454,3444,3434,3427,3424,3426,3431,3440,3449,3460,3470,3480,3487,3490,3488,3482,3473,3466,
+3462,3462,3466,3472,3478,3484,3488,3490,3488,3478,3463,3444,3428,3421,3425,3438,3453,3463,3465,3457,3442,
+3425,3409,3392,3374,3354,3333,3313,3295,3274,3245,3203,3148,3083,3016,2955,2901,2848,2791,2724,2651,2579,
+2519,2474,2439,2403,2356,2295,2228,2166,2122,2097,2084,2068,2036,1987,1932,1888,1867,1873,1897,1922,1931,
+1918,1885,1843,1804,1772,1748,1726,1702,1672,1638,1603,1571,1544,1518,1492,1463,1430,1395,1359,1323,1288,
+1254,1222,1191,1161,1131,1101,1069,1035,999,964,930,899,870,843,816,789,761,732,703,673,642,
+611,581,554,528,503,474,437,393,343,295,254,224,203,185,164,137,103,68,37,13,-5,
+-24,-50,-85,-127,-172,-214,-250,-282,-312,-345,-382,-420,-457,-491,-521,-548,-574,-601,-629,-658,-687,
+-716,-747,-781,-816,-851,-885,-916,-946,-975,-1004,-1034,-1065,-1095,-1124,-1151,-1179,-1207,-1238,-1270,-1304,-1338,
+-1373,-1408,-1441,-1471,-1499,-1525,-1552,-1581,-1613,-1646,-1679,-1709,-1734,-1756,-1776,-1797,-1821,-1846,-1870,-1892,-1910,
+-1925,-1939,-1955,-1973,-1994,-2015,-2035,-2053,-2069,-2084,-2098,-2112,-2126,-2140,-2155,-2170,-2186,-2202,-2219,-2235,-2251,
+-2267,-2281,-2296,-2311,-2325,-2340,-2354,-2369,-2385,-2401,-2417,-2432,-2444,-2454,-2462,-2469,-2475,-2480,-2483,-2482,-2479,
+-2473,-2468,-2465,-2465,-2468,-2472,-2473,-2471,-2467,-2463,-2460,-2459,-2457,-2455,-2450,-2443,-2437,-2432,-2430,-2431,-2431,
+-2430,-2427,-2424,-2421,-2421,-2422,-2423,-2423,-2420,-2417,-2414,-2413,-2413,-2413,-2412,-2410,-2405,-2400,-2394,-2387,-2379,
+-2367,-2353,-2339,-2327,-2320,-2317,-2316,-2313,-2306,-2292,-2272,-2248,-2224,-2201,-2181,-2163,-2149,-2135,-2124,-2113,-2105,
+-2098,-2093,-2087,-2080,-2070,-2059,-2048,-2038,-2029,-2022,-2016,-2012,-2011,-2015,-2028,-2050,-2080,-2113,-2143,-2164,-2175,
+-2178,-2173,-2164,-2153,-2140,-2127,-2118,-2114,-2118,-2131,-2147,-2164,-2177,-2186,-2192,-2197,-2204,-2210,-2215,-2216,-2214,
+-2211,-2210,-2213,-2222,-2234,-2250,-2266,-2280,-2290,-2292,-2287,-2276,-2265,-2262,-2268,-2276,-2274,-2250,-2199,-2133,-2077,
+-2062,-2105,-2205,-2336,-2462,-2548,-2582,-2571,-2542,-2522,-2526,-2551,-2584,-2609,-2617,-2614,-2612,-2620,-2640,-2664,-2680,
+-2677,-2654,-2618,-2577,-2542,-2515,-2496,-2481,-2468,-2456,-2447,-2443,-2443,-2449,-2459,-2472,-2491,-2514,-2541,-2572,-2605,
+-2637,-2671,-2707,-2748,-2797,-2853,-2914,-2977,-3036,-3088,-3130,-3161,-3184,-3203,-3220,-3237,-3252,-3264,-3270,-3270,-3267,
+-3262,-3260,-3261,-3262,-3261,-3258,-3253,-3250,-3251,-3256,-3265,-3273,-3277,-3277,-3276,-3277,-3285,-3297,-3312,-3324,-3329,
+-3329,-3327,-3329,-3337,-3352,-3370,-3385,-3394,-3397,-3394,-3391,-3389,-3388,-3389,-3388,-3386,-3382,-3379,-3376,-3374,-3371,
+-3365,-3358,-3349,-3339,-3330,-3322,-3315,-3306,-3297,-3287,-3277,-3267,-3260,-3253,-3245,-3237,-3227,-3217,-3206,-3195,-3182,
+-3170,-3157,-3146,-3134,-3124,-3113,-3100,-3087,-3073,-3063,-3056,-3053,-3053,-3053,-3051,-3045,-3035,-3025,-3014,-3004,-2994,
+-2985,-2974,-2963,-2952,-2941,-2930,-2919,-2905,-2888,-2868,-2846,-2824,-2801,-2780,-2760,-2741,-2724,-2708,-2695,-2683,-2674,
+-2666,-2658,-2648,-2637,-2623,-2609,-2595,-2582,-2573,-2565,-2556,-2546,-2532,-2515,-2498,-2482,-2468,-2456,-2446,-2435,-2424,
+-2412,-2401,-2392,-2385,-2379,-2372,-2365,-2357,-2349,-2342,-2337,-2333,-2330,-2328,-2325,-2322,-2318,-2312,-2307,-2301,-2297,
+-2293,-2290,-2289,-2287,-2284,-2279,-2272,-2263,-2252,-2239,-2223,-2206,-2189,-2173,-2159,-2149,-2140,-2131,-2119,-2103,-2086,
+-2068,-2054,-2043,-2035,-2028,-2020,-2012,-2003,-1995,-1988,-1983,-1976,-1967,-1954,-1939,-1923,-1908,-1895,-1883,-1872,-1860,
+-1848,-1837,-1829,-1823,-1821,-1820,-1819,-1817,-1814,-1813,-1812,-1812,-1812,-1811,-1809,-1806,-1804,-1801,-1798,-1797,-1795,
+-1795,-1796,-1800,-1807,-1815,-1823,-1828,-1830,-1826,-1817,-1803,-1787,-1771,-1755,-1742,-1728,-1714,-1699,-1682,-1664,-1648,
+-1634,-1623,-1613,-1601,-1585,-1565,-1542,-1518,-1496,-1478,-1466,-1457,-1450,-1443,-1433,-1421,-1406,-1389,-1371,-1354,-1339,
+-1327,-1316,-1306,-1297,-1286,-1275,-1264,-1255,-1249,-1246,-1245,-1245,-1244,-1241,-1239,-1237,-1237,-1239,-1243,-1247,-1251,
+-1255,-1258,-1262,-1265,-1267,-1269,-1270,-1270,-1269,-1270,-1271,-1273,-1276,-1278,-1282,-1287,-1292,-1299,-1305,-1309,-1311,
+-1310,-1308,-1304,-1302,-1302,-1305,-1309,-1313,-1317,-1318,-1317,-1314,-1311,-1309,-1308,-1308,-1309,-1310,-1311,-1310,-1309,
+-1308,-1308,-1308,-1307,-1304,-1298,-1289,-1278,-1266,-1255,-1245,-1237,-1229,-1223,-1217,-1212,-1208,-1204,-1200,-1195,-1187,
+-1175,-1162,-1148,-1136,-1127,-1121,-1112,-1097,-1073,-1038,-1000,-965,-942,-935,-942,-957,-969,-971,-962,-946,-931,
+-926,-935,-956,-980,-1002,-1015,-1019,-1018,-1015,-1015,-1014,-1010,-997,-973,-938,-897,-854,-815,-783,-755,-732,
+-709,-685,-660,-636,-613,-592,-574,-559,-544,-531,-519,-509,-501,-494,-488,-481,-472,-463,-453,-444,-434,
+-421,-404,-381,-356,-333,-312,-295,-277,-254,-225,-190,-157,-131,-114,-103,-90,-67,-32,12,56,92,
+117,134,153,181,218,260,298,326,345,360,380,409,442,472,490,492,481,465,448,432,411,
+384,349,316,301,319,378,476,600,732,854,955,1029,1077,1100,1101,1087,1063,1040,1030,1043,1081,
+1142,1213,1280,1327,1349,1346,1327,1305,1289,1286,1293,1304,1312,1313,1307,1298,1287,1275,1257,1232,1196,
+1155,1115,1086,1073,1076,1089,1107,1126,1146,1172,1209,1259,1321,1389,1457,1519,1575,1623,1663,1693,1711,
+1717,1713,1707,1705,1716,1741,1778,1818,1850,1864,1857,1828,1781,1725,1665,1607,1550,1493,1435,1376,1319,
+1271,1237,1224,1232,1257,1294,1332,1365,1386,1396,1395,1389,1383,1379,1379,1381,1383,1383,1382,1384,1391,
+1405,1427,1452,1476,1495,1507,1513,1514,1512,1508,1501,1492,1482,1475,1472,1474,1479,1484,1485,1481,1476,
+1472,1472,1475,1480,1483,1484,1486,1492,1506,1529,1556,1584,1607,1622,1628,1627,1625,1629,1647,1684,1743,
+1819,1906,1992,2067,2129,2179,2224,2266,2301,2320,2310,2264,2187,2090,1989,1892,1798,1691,1559,1395,1209,
+1027,876,780,741,748,777,807,823,826,823,819,819,819,813,797,771,738,703,669,637,605,
+574,548,534,542,578,644,740,859,992,1131,1266,1391,1501,1596,1675,1745,1808,1868,1926,1982,2030,
+2070,2097,2112,2114,2106,2092,2076,2063,2056,2057,2064,2073,2083,2091,2097,2104,2112,2123,2133,2142,2147,
+2150,2155,2164,2178,2194,2209,2220,2227,2232,2238,2246,2256,2263,2266,2266,2264,2265,2272,2284,2297,2308,
+2315,2321,2330,2345,2366,2388,2408,2422,2433,2443,2458,2477,2499,2517,2529,2536,2539,2545,2554,2565,2576,
+2585,2592,2600,2612,2629,2649,2666,2678,2682,2683,2682,2684,2687,2690,2693,2697,2704,2715,2731,2746,2756,
+2758,2752,2743,2739,2742,2753,2766,2773,2767,2709,2686,2651,2614,2582,2560,2550,2551,2557,2565,2572,2576,
+2580,2586,2597,2611,2625,2632,2630,2618,2601,2585,2578,2581,2590,2600,2603,2598,2584,2568,2553,2541,2530,
+2516,2497,2474,2451,2433,2423,2421,2423,2426,2427,2424,2420,2419,2421,2430,2444,2464,2488,2512,2535,2553,
+2567,2578,2590,2607,2630,2660,2692,2723,2748,2766,2779,2791,2807,2829,2856,2887,2919,2950,2978,3002,3025,
+3046,3068,3090,3114,3138,3159,3175,3187,3196,3203,3214,3229,3250,3272,3291,3305,3312,3313,3311,3311,3317,
+3329,3345,3361,3372,3373,3362,3340,3311,3284,3265,3259,3267,3287,3310,3332,3347,3356,3363,3372,3385,3403,
+3421,3437,3450,3461,3473,3490,3514,3541,3569,3594,3617,3637,3659,3682,3708,3735,3761,3782,3801,3818,3836,
+3855,3877,3900,3924,3947,3971,3995,4021,4048,4079,4112,4149,4187,4225,4260,4289,4313,4332,4351,4372,4397,
+4424,4448,4465,4472,4469,4461,4454,4452,4455,4461,4465,4464,4457,4448,4438,4429,4421,4414,4405,4398,4392,
+4392,4395,4400,4403,4401,4396,4388,4383,4381,4380,4374,4359,4333,4298,4260,4222,4188,4157,4129,4102,4081,
+4067,4063,4068,4078,4087,4092,4092,4088,4083,4077,4071,4060,4044,4022,3997,3974,3954,3940,3930,3923,3916,
+3909,3901,3890,3876,3860,3843,3828,3816,3808,3801,3794,3783,3766,3746,3725,3707,3693,3681,3671,3660,3647,
+3633,3620,3607,3595,3583,3570,3554,3538,3521,3505,3493,3485,3481,3481,3483,3485,3484,3480,3473,3464,3456,
+3450,3446,3444,3444,3445,3448,3453,3457,3461,3463,3462,3460,3459,3459,3462,3467,3472,3475,3477,3476,3471,
+3462,3447,3428,3409,3395,3390,3396,3408,3421,3427,3422,3406,3385,3363,3344,3328,3314,3299,3284,3269,3255,
+3240,3218,3185,3138,3081,3021,2964,2914,2868,2819,2759,2688,2611,2537,2473,2420,2371,2319,2261,2201,2148,
+2112,2096,2094,2091,2073,2036,1982,1928,1886,1867,1869,1881,1890,1885,1864,1831,1795,1761,1733,1709,1685,
+1657,1626,1593,1561,1530,1502,1475,1448,1419,1389,1356,1324,1290,1257,1225,1193,1162,1131,1098,1065,1030,
+995,960,927,896,868,840,813,786,758,729,698,666,634,601,571,544,519,492,461,422,376,
+327,282,245,219,200,181,159,129,93,58,29,6,-12,-32,-59,-95,-137,-181,-221,-255,-284,
+-313,-344,-381,-420,-460,-496,-527,-555,-581,-606,-631,-657,-684,-713,-744,-778,-814,-850,-886,-920,-951,
+-980,-1008,-1036,-1064,-1092,-1120,-1149,-1178,-1208,-1239,-1271,-1305,-1339,-1374,-1408,-1441,-1471,-1499,-1526,-1553,-1582,
+-1613,-1645,-1675,-1702,-1726,-1748,-1770,-1794,-1820,-1847,-1872,-1894,-1912,-1927,-1943,-1960,-1979,-2000,-2020,-2039,-2058,
+-2075,-2091,-2107,-2121,-2134,-2148,-2163,-2179,-2198,-2217,-2235,-2251,-2265,-2277,-2291,-2306,-2323,-2340,-2356,-2370,-2384,
+-2398,-2412,-2428,-2443,-2457,-2468,-2477,-2485,-2493,-2499,-2502,-2501,-2496,-2489,-2482,-2479,-2481,-2485,-2490,-2493,-2492,
+-2489,-2486,-2484,-2483,-2483,-2482,-2479,-2474,-2470,-2467,-2466,-2466,-2464,-2461,-2456,-2451,-2448,-2448,-2449,-2451,-2451,
+-2450,-2448,-2447,-2447,-2448,-2448,-2446,-2442,-2438,-2435,-2432,-2428,-2422,-2411,-2396,-2379,-2364,-2353,-2349,-2348,-2347,
+-2342,-2332,-2315,-2294,-2270,-2246,-2224,-2204,-2186,-2170,-2156,-2145,-2137,-2131,-2126,-2122,-2118,-2111,-2103,-2093,-2084,
+-2075,-2067,-2061,-2055,-2051,-2050,-2056,-2069,-2090,-2118,-2148,-2175,-2195,-2206,-2208,-2202,-2191,-2176,-2163,-2153,-2149,
+-2152,-2160,-2172,-2184,-2196,-2207,-2218,-2230,-2242,-2251,-2255,-2253,-2246,-2238,-2231,-2231,-2239,-2254,-2273,-2293,-2310,
+-2320,-2321,-2317,-2311,-2308,-2311,-2317,-2317,-2302,-2265,-2210,-2156,-2126,-2142,-2212,-2323,-2449,-2557,-2623,-2643,-2631,
+-2611,-2603,-2615,-2643,-2673,-2693,-2699,-2697,-2696,-2703,-2720,-2740,-2756,-2764,-2762,-2752,-2736,-2715,-2688,-2655,-2619,
+-2583,-2555,-2538,-2531,-2534,-2541,-2554,-2572,-2597,-2631,-2673,-2717,-2762,-2805,-2846,-2889,-2937,-2991,-3048,-3106,-3160,
+-3206,-3242,-3269,-3288,-3302,-3314,-3325,-3338,-3350,-3361,-3367,-3368,-3364,-3358,-3351,-3346,-3343,-3340,-3335,-3330,-3326,
+-3326,-3331,-3339,-3349,-3355,-3357,-3357,-3357,-3363,-3373,-3387,-3400,-3407,-3409,-3408,-3408,-3414,-3426,-3442,-3456,-3465,
+-3469,-3468,-3466,-3466,-3466,-3467,-3466,-3463,-3459,-3456,-3455,-3454,-3451,-3445,-3435,-3422,-3410,-3400,-3391,-3384,-3375,
+-3364,-3352,-3340,-3330,-3322,-3315,-3307,-3298,-3288,-3277,-3265,-3254,-3244,-3232,-3220,-3208,-3196,-3184,-3173,-3162,-3151,
+-3138,-3126,-3116,-3108,-3103,-3099,-3096,-3092,-3087,-3079,-3070,-3060,-3049,-3037,-3024,-3010,-2996,-2984,-2972,-2962,-2951,
+-2939,-2925,-2908,-2890,-2870,-2849,-2828,-2806,-2785,-2765,-2747,-2731,-2718,-2709,-2700,-2692,-2683,-2671,-2656,-2641,-2626,
+-2613,-2601,-2591,-2579,-2566,-2552,-2538,-2524,-2513,-2502,-2491,-2477,-2461,-2444,-2428,-2416,-2407,-2403,-2400,-2398,-2394,
+-2387,-2380,-2371,-2362,-2353,-2345,-2337,-2330,-2323,-2317,-2312,-2308,-2304,-2301,-2299,-2298,-2297,-2296,-2296,-2297,-2297,
+-2295,-2290,-2280,-2267,-2252,-2236,-2224,-2214,-2205,-2195,-2182,-2164,-2143,-2122,-2103,-2088,-2078,-2069,-2060,-2050,-2039,
+-2027,-2017,-2007,-1998,-1987,-1975,-1963,-1951,-1939,-1929,-1918,-1905,-1892,-1878,-1866,-1858,-1853,-1851,-1849,-1846,-1842,
+-1836,-1832,-1829,-1829,-1832,-1834,-1837,-1839,-1839,-1838,-1837,-1834,-1832,-1829,-1827,-1827,-1828,-1830,-1833,-1834,-1834,
+-1830,-1823,-1813,-1803,-1792,-1781,-1771,-1760,-1747,-1731,-1711,-1688,-1666,-1645,-1627,-1612,-1598,-1585,-1570,-1554,-1537,
+-1523,-1511,-1503,-1497,-1491,-1482,-1470,-1454,-1435,-1413,-1393,-1374,-1358,-1345,-1334,-1324,-1314,-1303,-1291,-1281,-1273,
+-1267,-1264,-1263,-1262,-1261,-1259,-1257,-1256,-1257,-1260,-1265,-1271,-1277,-1283,-1288,-1293,-1298,-1301,-1304,-1305,-1306,
+-1305,-1304,-1303,-1302,-1302,-1303,-1306,-1311,-1318,-1326,-1334,-1340,-1344,-1345,-1344,-1342,-1340,-1338,-1339,-1341,-1344,
+-1346,-1348,-1348,-1347,-1346,-1344,-1343,-1343,-1343,-1342,-1341,-1338,-1336,-1334,-1333,-1332,-1332,-1331,-1328,-1322,-1314,
+-1305,-1294,-1284,-1273,-1262,-1251,-1239,-1228,-1218,-1208,-1199,-1190,-1181,-1171,-1160,-1151,-1145,-1141,-1137,-1129,-1111,
+-1083,-1047,-1009,-978,-962,-964,-978,-996,-1008,-1006,-992,-970,-953,-948,-959,-982,-1009,-1031,-1044,-1047,-1045,
+-1041,-1040,-1039,-1034,-1022,-998,-966,-927,-888,-852,-823,-797,-773,-748,-721,-692,-665,-640,-619,-601,-583,
+-566,-549,-534,-521,-513,-509,-506,-502,-496,-487,-476,-463,-448,-429,-407,-381,-354,-331,-313,-299,-285,
+-266,-240,-208,-177,-151,-135,-125,-114,-93,-59,-14,31,69,95,112,128,152,187,230,273,307,
+332,349,366,389,417,446,469,481,482,475,464,450,431,405,372,335,305,291,303,345,412,
+498,592,686,774,850,914,964,1002,1031,1058,1088,1125,1171,1223,1273,1316,1345,1359,1362,1360,1360,
+1366,1378,1395,1409,1417,1415,1406,1391,1373,1353,1330,1300,1264,1225,1187,1157,1137,1128,1126,1130,1138,
+1151,1173,1207,1251,1304,1359,1415,1469,1520,1570,1616,1654,1681,1694,1695,1691,1689,1698,1721,1756,1795,
+1830,1851,1852,1834,1800,1756,1709,1663,1620,1578,1535,1491,1447,1407,1376,1359,1358,1370,1392,1416,1437,
+1451,1457,1459,1459,1460,1462,1467,1471,1474,1477,1483,1494,1511,1534,1559,1579,1590,1591,1585,1575,1567,
+1564,1564,1566,1565,1562,1559,1557,1560,1565,1572,1576,1575,1570,1563,1556,1551,1550,1551,1555,1562,1573,
+1588,1606,1625,1642,1653,1657,1653,1643,1630,1619,1615,1625,1652,1698,1757,1824,1891,1955,2016,2076,2135,
+2191,2237,2267,2275,2263,2235,2197,2147,2077,1975,1833,1657,1465,1288,1155,1084,1073,1101,1141,1166,1163,
+1132,1083,1028,976,930,888,846,804,760,715,668,614,552,482,408,341,295,281,309,382,498,
+648,822,1005,1185,1349,1491,1607,1700,1773,1834,1889,1943,1995,2044,2086,2114,2126,2120,2099,2071,2044,
+2026,2020,2024,2036,2048,2059,2067,2074,2081,2090,2097,2103,2107,2112,2119,2132,2149,2167,2182,2191,2197,
+2202,2209,2220,2233,2242,2247,2246,2245,2247,2255,2269,2284,2296,2303,2310,2319,2333,2352,2373,2391,2405,
+2416,2428,2444,2464,2484,2500,2508,2511,2512,2517,2526,2539,2551,2561,2568,2575,2584,2598,2614,2629,2640,
+2646,2650,2653,2657,2661,2665,2669,2676,2688,2705,2726,2743,2751,2746,2732,2715,2702,2700,2706,2716,2719,
+2709,2614,2589,2560,2535,2518,2512,2514,2519,2522,2521,2514,2504,2497,2495,2501,2515,2533,2549,2559,2560,
+2556,2550,2547,2547,2548,2547,2541,2529,2513,2497,2484,2471,2457,2436,2410,2382,2357,2343,2340,2347,2358,
+2367,2370,2368,2364,2364,2370,2382,2398,2417,2435,2454,2472,2488,2505,2521,2539,2561,2586,2615,2644,2671,
+2693,2710,2726,2744,2767,2795,2828,2862,2893,2920,2943,2964,2985,3008,3031,3055,3077,3095,3109,3120,3128,
+3137,3148,3162,3180,3200,3219,3234,3243,3248,3250,3254,3261,3273,3285,3294,3296,3290,3277,3261,3246,3237,
+3234,3236,3243,3252,3262,3273,3284,3297,3311,3327,3344,3361,3376,3390,3402,3414,3428,3446,3468,3495,3525,
+3555,3583,3608,3630,3650,3670,3690,3710,3731,3750,3768,3785,3802,3818,3836,3856,3878,3901,3925,3950,3975,
+4002,4032,4064,4100,4137,4174,4207,4235,4259,4279,4299,4321,4344,4366,4382,4391,4390,4383,4374,4367,4365,
+4368,4371,4374,4374,4371,4366,4362,4357,4351,4343,4333,4323,4316,4316,4320,4326,4331,4332,4331,4328,4327,
+4327,4327,4323,4311,4291,4264,4233,4199,4164,4126,4084,4041,4002,3971,3952,3946,3949,3958,3970,3982,3995,
+4007,4016,4020,4016,4002,3981,3956,3934,3916,3904,3897,3892,3887,3882,3876,3868,3856,3841,3825,3809,3796,
+3786,3779,3771,3759,3742,3722,3700,3681,3667,3656,3647,3637,3625,3611,3597,3584,3573,3564,3556,3546,3534,
+3520,3505,3492,3482,3479,3483,3492,3504,3514,3519,3518,3511,3499,3485,3469,3452,3437,3424,3416,3412,3412,
+3415,3419,3423,3427,3433,3440,3450,3461,3470,3475,3475,3468,3456,3439,3420,3401,3383,3370,3364,3365,3370,
+3374,3372,3360,3340,3315,3292,3271,3256,3244,3233,3222,3213,3204,3193,3177,3149,3109,3057,3002,2950,2905,
+2865,2825,2775,2714,2641,2564,2489,2421,2358,2298,2238,2181,2136,2108,2102,2111,2122,2120,2095,2046,1985,
+1925,1880,1857,1851,1853,1852,1841,1818,1787,1754,1722,1693,1667,1641,1613,1583,1551,1519,1487,1457,1428,
+1400,1372,1345,1317,1288,1258,1227,1195,1162,1129,1095,1061,1027,993,960,928,898,868,840,811,783,
+755,726,695,663,630,599,569,543,518,491,458,418,372,323,279,242,214,192,169,144,113,
+79,47,20,0,-19,-41,-69,-104,-145,-185,-222,-254,-282,-311,-344,-381,-421,-461,-498,-530,-558,
+-583,-607,-631,-657,-683,-713,-744,-779,-815,-851,-886,-919,-950,-978,-1006,-1034,-1061,-1090,-1120,-1150,-1182,
+-1214,-1247,-1280,-1313,-1345,-1377,-1409,-1440,-1469,-1498,-1527,-1557,-1587,-1618,-1649,-1677,-1702,-1724,-1747,-1770,-1796,
+-1823,-1850,-1875,-1895,-1913,-1930,-1948,-1967,-1988,-2008,-2027,-2045,-2062,-2080,-2097,-2113,-2128,-2143,-2157,-2172,-2190,
+-2209,-2229,-2246,-2261,-2273,-2286,-2301,-2318,-2337,-2356,-2373,-2387,-2399,-2410,-2423,-2437,-2451,-2464,-2476,-2485,-2494,
+-2503,-2510,-2516,-2518,-2516,-2511,-2506,-2504,-2505,-2510,-2514,-2517,-2517,-2515,-2513,-2511,-2511,-2510,-2508,-2504,-2501,
+-2499,-2498,-2498,-2498,-2495,-2490,-2483,-2476,-2473,-2472,-2473,-2474,-2474,-2473,-2473,-2474,-2477,-2479,-2480,-2477,-2473,
+-2468,-2465,-2465,-2464,-2461,-2452,-2437,-2418,-2401,-2388,-2382,-2380,-2379,-2376,-2367,-2352,-2332,-2309,-2285,-2261,-2239,
+-2220,-2202,-2187,-2175,-2165,-2158,-2153,-2151,-2150,-2148,-2145,-2138,-2129,-2119,-2110,-2101,-2095,-2091,-2088,-2089,-2094,
+-2107,-2128,-2156,-2188,-2216,-2237,-2246,-2243,-2231,-2214,-2199,-2189,-2185,-2188,-2195,-2204,-2215,-2226,-2238,-2250,-2263,
+-2273,-2279,-2280,-2275,-2268,-2260,-2255,-2256,-2264,-2279,-2298,-2320,-2338,-2351,-2357,-2357,-2354,-2354,-2357,-2361,-2357,
+-2340,-2308,-2270,-2242,-2241,-2282,-2361,-2464,-2564,-2639,-2678,-2684,-2673,-2666,-2674,-2699,-2731,-2758,-2773,-2777,-2776,
+-2779,-2791,-2810,-2834,-2857,-2877,-2892,-2899,-2896,-2879,-2846,-2799,-2746,-2698,-2663,-2646,-2645,-2654,-2668,-2688,-2714,
+-2749,-2794,-2844,-2895,-2943,-2987,-3029,-3073,-3121,-3172,-3223,-3268,-3304,-3332,-3354,-3371,-3387,-3401,-3413,-3422,-3431,
+-3438,-3446,-3452,-3454,-3453,-3448,-3440,-3432,-3425,-3420,-3416,-3413,-3412,-3413,-3417,-3423,-3430,-3435,-3437,-3436,-3437,
+-3441,-3451,-3464,-3477,-3487,-3491,-3491,-3491,-3494,-3503,-3515,-3527,-3537,-3543,-3545,-3545,-3544,-3543,-3540,-3536,-3531,
+-3527,-3525,-3525,-3525,-3523,-3516,-3506,-3493,-3481,-3471,-3462,-3454,-3445,-3433,-3419,-3405,-3394,-3385,-3376,-3367,-3356,
+-3344,-3332,-3321,-3312,-3304,-3296,-3285,-3273,-3260,-3247,-3237,-3228,-3219,-3208,-3195,-3180,-3166,-3153,-3143,-3136,-3131,
+-3126,-3121,-3115,-3107,-3097,-3086,-3073,-3059,-3045,-3031,-3018,-3007,-2996,-2986,-2975,-2962,-2948,-2932,-2913,-2893,-2872,
+-2850,-2828,-2807,-2788,-2772,-2758,-2746,-2736,-2726,-2714,-2700,-2685,-2670,-2655,-2642,-2629,-2617,-2604,-2592,-2580,-2570,
+-2560,-2551,-2539,-2525,-2508,-2489,-2470,-2454,-2442,-2435,-2430,-2425,-2421,-2414,-2407,-2398,-2389,-2380,-2371,-2362,-2354,
+-2346,-2338,-2331,-2324,-2318,-2312,-2307,-2303,-2300,-2299,-2300,-2302,-2306,-2309,-2310,-2307,-2301,-2291,-2279,-2268,-2257,
+-2247,-2236,-2222,-2206,-2188,-2170,-2154,-2140,-2129,-2119,-2109,-2097,-2083,-2069,-2054,-2039,-2026,-2013,-2001,-1992,-1984,
+-1976,-1968,-1957,-1943,-1927,-1910,-1897,-1887,-1882,-1881,-1880,-1877,-1873,-1868,-1863,-1860,-1859,-1860,-1863,-1866,-1869,
+-1872,-1873,-1873,-1873,-1871,-1868,-1865,-1861,-1857,-1853,-1849,-1844,-1838,-1833,-1828,-1824,-1821,-1819,-1818,-1816,-1812,
+-1803,-1789,-1768,-1742,-1713,-1684,-1659,-1639,-1625,-1615,-1606,-1597,-1587,-1576,-1565,-1555,-1545,-1535,-1523,-1507,-1488,
+-1467,-1444,-1422,-1402,-1383,-1367,-1352,-1338,-1325,-1313,-1303,-1296,-1292,-1291,-1291,-1293,-1294,-1294,-1292,-1290,-1288,
+-1288,-1290,-1294,-1299,-1304,-1309,-1313,-1317,-1320,-1322,-1325,-1328,-1330,-1331,-1331,-1330,-1329,-1328,-1328,-1330,-1334,
+-1340,-1347,-1355,-1362,-1368,-1373,-1377,-1379,-1381,-1382,-1382,-1382,-1382,-1380,-1379,-1377,-1376,-1375,-1374,-1374,-1374,
+-1373,-1371,-1369,-1366,-1363,-1360,-1358,-1357,-1357,-1356,-1354,-1350,-1344,-1336,-1327,-1316,-1305,-1291,-1277,-1262,-1246,
+-1231,-1216,-1203,-1191,-1180,-1170,-1161,-1155,-1151,-1149,-1146,-1137,-1120,-1096,-1066,-1038,-1018,-1012,-1019,-1034,-1047,
+-1050,-1038,-1016,-990,-972,-968,-979,-1003,-1030,-1053,-1067,-1071,-1068,-1064,-1060,-1055,-1046,-1032,-1010,-981,-948,
+-915,-886,-860,-836,-813,-787,-759,-731,-703,-678,-657,-637,-619,-600,-581,-563,-548,-539,-534,-531,-528,
+-522,-511,-497,-480,-460,-437,-412,-385,-358,-334,-315,-301,-289,-275,-255,-230,-204,-182,-165,-153,-138,
+-115,-81,-38,7,46,74,92,108,129,160,199,241,279,308,329,348,368,393,420,446,466,
+478,483,482,476,464,447,421,390,358,329,310,306,318,347,392,449,517,592,671,752,834,
+915,994,1070,1141,1203,1255,1294,1320,1337,1348,1358,1373,1395,1424,1457,1490,1516,1530,1529,1513,1483,
+1445,1401,1356,1313,1276,1245,1220,1202,1188,1176,1166,1159,1158,1167,1188,1221,1262,1306,1349,1390,1431,
+1473,1518,1564,1607,1642,1665,1676,1679,1680,1686,1698,1718,1741,1763,1778,1782,1776,1760,1736,1709,1682,
+1656,1633,1612,1591,1570,1547,1527,1512,1504,1505,1513,1523,1533,1541,1544,1544,1545,1546,1549,1552,1555,
+1559,1563,1572,1587,1607,1630,1651,1664,1666,1657,1643,1631,1626,1629,1639,1650,1657,1657,1652,1644,1637,
+1634,1635,1637,1637,1635,1629,1622,1615,1610,1609,1612,1618,1628,1640,1651,1661,1668,1672,1675,1676,1675,
+1671,1663,1651,1639,1634,1640,1660,1694,1738,1788,1843,1900,1960,2022,2083,2140,2188,2227,2253,2264,2253,
+2212,2135,2022,1886,1747,1631,1559,1539,1564,1610,1652,1668,1646,1590,1512,1425,1341,1267,1204,1150,1103,
+1059,1016,970,915,847,761,659,547,435,336,266,239,266,351,492,678,891,1110,1315,1490,1627,
+1726,1797,1849,1894,1942,1992,2041,2081,2103,2103,2083,2051,2019,1997,1990,1996,2010,2024,2034,2039,2042,
+2044,2047,2052,2056,2060,2066,2076,2090,2108,2127,2142,2153,2161,2169,2181,2197,2214,2228,2235,2238,2238,
+2241,2250,2263,2278,2290,2298,2304,2311,2322,2336,2351,2366,2377,2388,2400,2415,2432,2449,2461,2468,2472,
+2475,2483,2495,2509,2523,2534,2541,2547,2553,2562,2571,2580,2587,2594,2601,2610,2620,2628,2634,2638,2641,
+2648,2660,2675,2687,2691,2684,2669,2652,2639,2634,2634,2635,2630,2614,2530,2507,2486,2472,2468,2472,2480,
+2487,2490,2486,2477,2466,2457,2453,2456,2464,2476,2487,2496,2499,2498,2494,2488,2480,2469,2454,2434,2411,
+2388,2368,2353,2341,2329,2314,2296,2280,2270,2270,2280,2296,2311,2319,2321,2318,2315,2316,2323,2334,2348,
+2361,2374,2387,2403,2423,2445,2470,2494,2518,2542,2565,2589,2612,2635,2658,2683,2710,2740,2772,2803,2830,
+2854,2874,2895,2918,2945,2973,3001,3023,3040,3050,3057,3063,3071,3082,3097,3115,3134,3152,3167,3178,3185,
+3191,3197,3206,3219,3230,3237,3236,3225,3207,3189,3179,3180,3193,3211,3227,3236,3237,3233,3231,3236,3251,
+3273,3298,3321,3338,3349,3358,3368,3382,3401,3424,3451,3478,3506,3534,3562,3588,3612,3633,3652,3668,3684,
+3700,3718,3736,3753,3770,3786,3802,3819,3839,3860,3883,3906,3930,3954,3980,4009,4040,4072,4104,4134,4161,
+4185,4207,4229,4250,4271,4288,4299,4304,4304,4301,4298,4296,4297,4297,4297,4294,4290,4286,4283,4281,4279,
+4275,4267,4258,4250,4246,4248,4254,4262,4269,4272,4272,4270,4268,4266,4263,4256,4244,4226,4206,4183,4158,
+4130,4098,4061,4021,3984,3953,3931,3920,3918,3921,3927,3935,3945,3955,3964,3969,3967,3956,3940,3921,3904,
+3890,3879,3872,3865,3860,3853,3847,3838,3828,3815,3800,3785,3771,3761,3752,3743,3733,3718,3699,3679,3659,
+3643,3629,3618,3608,3599,3588,3578,3569,3561,3554,3547,3540,3531,3520,3506,3493,3483,3479,3485,3499,3518,
+3536,3550,3555,3550,3535,3514,3487,3458,3430,3405,3385,3373,3369,3369,3373,3377,3382,3389,3399,3413,3430,
+3445,3453,3453,3444,3429,3410,3392,3375,3360,3348,3339,3332,3327,3320,3311,3297,3277,3253,3228,3205,3186,
+3171,3160,3152,3147,3143,3137,3123,3099,3062,3015,2961,2909,2862,2822,2784,2742,2692,2632,2566,2497,2429,
+2362,2295,2229,2167,2115,2081,2067,2072,2084,2090,2078,2044,1992,1933,1882,1846,1828,1823,1823,1818,1803,
+1778,1746,1712,1679,1651,1626,1601,1575,1545,1513,1480,1446,1414,1385,1358,1333,1307,1281,1254,1224,1194,
+1162,1129,1096,1063,1031,999,967,936,905,874,843,813,783,754,725,695,663,630,599,571,545,
+521,495,464,427,384,338,294,255,222,194,166,137,106,74,45,19,-3,-24,-49,-78,-112,
+-148,-185,-219,-250,-281,-313,-349,-387,-426,-463,-497,-527,-555,-581,-606,-632,-660,-689,-720,-753,-788,
+-824,-858,-890,-919,-946,-972,-998,-1025,-1054,-1084,-1116,-1149,-1183,-1217,-1251,-1284,-1316,-1347,-1377,-1407,-1435,
+-1464,-1494,-1524,-1556,-1590,-1622,-1653,-1681,-1706,-1729,-1752,-1776,-1802,-1828,-1853,-1874,-1892,-1909,-1926,-1946,-1969,
+-1992,-2013,-2033,-2050,-2066,-2082,-2099,-2115,-2132,-2147,-2163,-2180,-2198,-2217,-2235,-2252,-2266,-2279,-2293,-2310,-2329,
+-2350,-2369,-2385,-2397,-2408,-2419,-2431,-2445,-2459,-2471,-2482,-2490,-2499,-2508,-2517,-2525,-2531,-2534,-2534,-2533,-2534,
+-2536,-2539,-2541,-2542,-2542,-2541,-2541,-2541,-2540,-2538,-2535,-2530,-2525,-2523,-2523,-2523,-2522,-2517,-2510,-2503,-2499,
+-2497,-2498,-2500,-2500,-2498,-2495,-2495,-2498,-2503,-2507,-2509,-2507,-2501,-2496,-2493,-2493,-2494,-2493,-2485,-2471,-2453,
+-2437,-2425,-2419,-2417,-2416,-2413,-2404,-2389,-2369,-2345,-2320,-2295,-2274,-2255,-2239,-2226,-2215,-2205,-2196,-2189,-2186,
+-2185,-2186,-2185,-2179,-2169,-2157,-2144,-2136,-2132,-2131,-2132,-2131,-2131,-2135,-2146,-2168,-2199,-2231,-2259,-2275,-2276,
+-2266,-2251,-2236,-2226,-2223,-2225,-2230,-2237,-2246,-2257,-2271,-2285,-2297,-2304,-2306,-2304,-2300,-2296,-2295,-2297,-2301,
+-2308,-2319,-2334,-2353,-2373,-2389,-2398,-2398,-2394,-2390,-2388,-2390,-2390,-2386,-2376,-2365,-2366,-2390,-2441,-2515,-2595,
+-2663,-2704,-2717,-2711,-2703,-2707,-2728,-2762,-2798,-2825,-2839,-2845,-2851,-2863,-2885,-2914,-2946,-2977,-3004,-3025,-3037,
+-3033,-3010,-2969,-2914,-2858,-2812,-2786,-2781,-2793,-2814,-2838,-2865,-2897,-2937,-2983,-3032,-3078,-3118,-3153,-3187,-3225,
+-3270,-3316,-3358,-3392,-3414,-3429,-3443,-3459,-3477,-3496,-3511,-3519,-3521,-3522,-3524,-3529,-3534,-3538,-3536,-3529,-3520,
+-3511,-3506,-3503,-3503,-3504,-3504,-3506,-3508,-3511,-3515,-3517,-3519,-3521,-3526,-3533,-3544,-3555,-3563,-3568,-3568,-3568,
+-3570,-3575,-3585,-3596,-3606,-3615,-3619,-3621,-3619,-3615,-3609,-3601,-3594,-3589,-3587,-3587,-3587,-3585,-3580,-3571,-3560,
+-3550,-3542,-3535,-3526,-3515,-3501,-3485,-3469,-3456,-3445,-3436,-3425,-3413,-3400,-3388,-3379,-3373,-3368,-3362,-3353,-3341,
+-3327,-3313,-3302,-3293,-3284,-3274,-3260,-3243,-3223,-3204,-3188,-3176,-3168,-3163,-3158,-3153,-3148,-3142,-3135,-3126,-3116,
+-3104,-3090,-3075,-3060,-3044,-3029,-3016,-3002,-2988,-2974,-2958,-2942,-2924,-2906,-2888,-2869,-2850,-2833,-2816,-2800,-2786,
+-2771,-2756,-2741,-2725,-2709,-2694,-2680,-2667,-2655,-2643,-2632,-2622,-2612,-2603,-2594,-2584,-2572,-2558,-2543,-2527,-2511,
+-2496,-2482,-2470,-2458,-2448,-2438,-2429,-2422,-2414,-2408,-2401,-2393,-2386,-2377,-2368,-2359,-2350,-2341,-2334,-2328,-2324,
+-2320,-2317,-2314,-2312,-2310,-2310,-2309,-2308,-2306,-2300,-2292,-2282,-2271,-2261,-2252,-2243,-2234,-2224,-2214,-2203,-2191,
+-2180,-2168,-2155,-2142,-2128,-2114,-2099,-2083,-2068,-2055,-2043,-2033,-2025,-2016,-2006,-1993,-1977,-1959,-1942,-1928,-1918,
+-1913,-1912,-1911,-1910,-1907,-1905,-1902,-1900,-1899,-1900,-1901,-1902,-1904,-1905,-1905,-1905,-1904,-1902,-1899,-1896,-1893,
+-1890,-1885,-1878,-1870,-1862,-1855,-1851,-1848,-1848,-1849,-1850,-1851,-1849,-1843,-1832,-1815,-1793,-1768,-1744,-1723,-1708,
+-1699,-1694,-1689,-1682,-1671,-1655,-1637,-1618,-1599,-1582,-1565,-1548,-1530,-1511,-1491,-1471,-1451,-1430,-1409,-1387,-1365,
+-1345,-1329,-1318,-1313,-1313,-1316,-1322,-1327,-1330,-1332,-1331,-1329,-1327,-1326,-1327,-1330,-1333,-1337,-1339,-1340,-1339,
+-1338,-1338,-1338,-1340,-1344,-1348,-1351,-1354,-1356,-1357,-1359,-1361,-1363,-1366,-1370,-1374,-1379,-1384,-1390,-1396,-1403,
+-1409,-1414,-1417,-1417,-1416,-1413,-1410,-1406,-1404,-1402,-1401,-1400,-1400,-1399,-1397,-1394,-1391,-1387,-1385,-1382,-1381,
+-1381,-1380,-1378,-1374,-1368,-1360,-1351,-1340,-1327,-1313,-1298,-1282,-1265,-1249,-1233,-1217,-1203,-1190,-1179,-1171,-1166,
+-1163,-1162,-1158,-1150,-1136,-1116,-1096,-1078,-1069,-1070,-1078,-1088,-1091,-1083,-1063,-1036,-1009,-991,-987,-998,-1020,
+-1045,-1067,-1082,-1090,-1091,-1087,-1081,-1071,-1056,-1037,-1014,-987,-959,-932,-908,-886,-865,-845,-823,-800,-776,
+-751,-727,-705,-684,-665,-646,-627,-609,-593,-581,-572,-565,-558,-549,-536,-519,-499,-477,-453,-427,-400,
+-372,-347,-325,-307,-294,-281,-267,-250,-231,-212,-195,-179,-160,-135,-102,-62,-21,17,47,71,91,
+112,139,172,208,244,275,301,324,345,369,393,417,440,458,472,482,487,487,482,470,452,
+429,403,376,351,331,321,322,338,369,416,476,550,635,731,835,942,1046,1140,1218,1277,1317,
+1343,1359,1373,1390,1414,1448,1488,1532,1572,1599,1608,1593,1554,1497,1429,1362,1305,1266,1245,1238,1240,
+1242,1242,1237,1233,1234,1247,1271,1306,1344,1382,1415,1445,1474,1507,1545,1588,1630,1667,1696,1715,1726,
+1733,1737,1741,1746,1751,1755,1757,1757,1755,1748,1738,1726,1714,1705,1700,1698,1698,1694,1684,1669,1651,
+1633,1620,1614,1613,1615,1618,1621,1622,1623,1625,1627,1631,1634,1638,1644,1651,1662,1676,1689,1700,1704,
+1700,1692,1682,1677,1678,1687,1699,1711,1716,1712,1701,1686,1671,1659,1654,1654,1657,1661,1664,1664,1663,
+1659,1657,1656,1659,1665,1671,1677,1681,1684,1689,1697,1710,1725,1737,1741,1734,1717,1696,1680,1676,1687,
+1711,1745,1783,1823,1863,1907,1957,2011,2068,2124,2170,2202,2211,2193,2149,2084,2011,1943,1897,1881,1897,
+1935,1979,2011,2018,1995,1945,1877,1802,1729,1666,1612,1569,1533,1502,1475,1448,1417,1377,1320,1239,1125,
+978,805,620,448,318,256,280,392,577,811,1061,1295,1491,1637,1736,1799,1844,1884,1929,1977,2020,
+2050,2060,2048,2024,1997,1980,1978,1990,2007,2023,2032,2033,2030,2026,2024,2026,2029,2033,2038,2045,2057,
+2073,2091,2107,2121,2132,2144,2157,2174,2192,2208,2219,2225,2229,2233,2241,2251,2262,2271,2277,2282,2287,
+2294,2304,2316,2328,2338,2348,2358,2370,2383,2397,2409,2420,2430,2441,2454,2470,2486,2500,2512,2521,2529,
+2535,2541,2544,2545,2544,2546,2553,2565,2580,2592,2598,2597,2590,2584,2580,2580,2583,2583,2579,2572,2565,
+2561,2560,2561,2558,2548,2530,2478,2461,2446,2437,2435,2438,2442,2445,2445,2443,2440,2440,2441,2444,2447,
+2451,2453,2454,2452,2445,2435,2421,2403,2382,2358,2331,2303,2276,2252,2234,2222,2215,2211,2208,2206,2207,
+2212,2224,2239,2254,2265,2270,2268,2264,2262,2265,2273,2284,2296,2306,2316,2329,2348,2372,2399,2428,2455,
+2478,2499,2519,2540,2564,2591,2621,2653,2685,2716,2743,2766,2784,2800,2818,2840,2869,2902,2934,2962,2981,
+2991,2996,2999,3006,3018,3034,3053,3072,3090,3105,3118,3129,3138,3148,3157,3168,3177,3183,3182,3171,3154,
+3135,3122,3123,3139,3166,3193,3212,3216,3207,3193,3184,3188,3206,3235,3266,3291,3307,3316,3325,3337,3357,
+3382,3409,3435,3459,3482,3504,3529,3556,3582,3605,3623,3639,3652,3666,3682,3700,3718,3735,3752,3768,3785,
+3804,3824,3845,3866,3887,3907,3929,3952,3977,4002,4028,4052,4076,4099,4122,4144,4165,4184,4197,4206,4211,
+4214,4217,4221,4225,4229,4229,4226,4220,4213,4206,4202,4200,4199,4197,4194,4189,4186,4186,4189,4195,4201,
+4206,4208,4209,4208,4206,4204,4199,4190,4177,4161,4144,4126,4108,4089,4067,4042,4014,3989,3967,3950,3939,
+3931,3925,3919,3914,3911,3910,3911,3912,3910,3904,3893,3881,3868,3856,3845,3836,3827,3819,3810,3802,3794,
+3785,3776,3766,3755,3745,3735,3725,3715,3704,3690,3674,3656,3637,3618,3601,3588,3578,3572,3568,3564,3559,
+3552,3545,3536,3528,3520,3510,3501,3491,3485,3484,3492,3509,3531,3554,3573,3581,3578,3563,3540,3510,3477,
+3445,3415,3391,3375,3367,3364,3363,3361,3359,3357,3360,3367,3379,3392,3401,3402,3395,3382,3369,3357,3348,
+3341,3332,3321,3308,3293,3280,3267,3254,3237,3216,3191,3163,3137,3116,3101,3092,3088,3084,3078,3065,3044,
+3012,2971,2924,2874,2825,2778,2732,2686,2637,2584,2529,2472,2413,2353,2289,2223,2157,2096,2047,2015,2001,
+2000,2003,2000,1982,1951,1909,1867,1832,1809,1798,1794,1790,1780,1760,1732,1700,1666,1636,1610,1587,1564,
+1538,1510,1479,1446,1415,1386,1359,1334,1309,1283,1256,1226,1196,1164,1132,1101,1070,1040,1010,980,948,
+915,882,848,815,784,753,723,693,660,627,596,566,540,516,492,465,432,395,354,313,273,
+236,202,168,136,103,72,43,16,-9,-35,-63,-92,-123,-155,-187,-219,-252,-288,-325,-364,-401,
+-437,-469,-498,-525,-552,-580,-609,-638,-668,-700,-732,-766,-801,-836,-869,-899,-925,-948,-970,-993,-1019,
+-1047,-1078,-1111,-1145,-1179,-1214,-1248,-1281,-1314,-1346,-1377,-1407,-1436,-1464,-1493,-1524,-1556,-1589,-1622,-1653,-1681,
+-1706,-1730,-1755,-1780,-1807,-1832,-1853,-1872,-1887,-1903,-1921,-1942,-1966,-1991,-2015,-2036,-2053,-2069,-2085,-2101,-2118,
+-2135,-2152,-2170,-2188,-2207,-2226,-2244,-2260,-2275,-2289,-2305,-2322,-2341,-2360,-2377,-2391,-2402,-2414,-2426,-2441,-2457,
+-2471,-2484,-2494,-2503,-2511,-2520,-2530,-2539,-2546,-2551,-2555,-2558,-2561,-2563,-2565,-2566,-2565,-2564,-2564,-2566,-2569,
+-2570,-2569,-2565,-2559,-2554,-2551,-2550,-2549,-2546,-2540,-2533,-2527,-2525,-2527,-2531,-2534,-2533,-2529,-2525,-2523,-2525,
+-2531,-2536,-2539,-2536,-2531,-2526,-2524,-2525,-2527,-2525,-2518,-2505,-2489,-2474,-2465,-2461,-2461,-2461,-2458,-2450,-2434,
+-2413,-2389,-2362,-2336,-2314,-2296,-2283,-2273,-2264,-2255,-2245,-2237,-2232,-2230,-2230,-2229,-2222,-2209,-2193,-2179,-2171,
+-2170,-2175,-2179,-2180,-2175,-2170,-2171,-2184,-2209,-2242,-2273,-2296,-2304,-2301,-2290,-2279,-2270,-2266,-2264,-2264,-2267,
+-2274,-2286,-2303,-2320,-2334,-2341,-2343,-2341,-2340,-2343,-2348,-2354,-2358,-2361,-2366,-2376,-2392,-2412,-2430,-2439,-2437,
+-2427,-2416,-2413,-2420,-2436,-2454,-2469,-2480,-2495,-2520,-2560,-2612,-2667,-2710,-2734,-2737,-2731,-2729,-2740,-2767,-2804,
+-2840,-2868,-2886,-2899,-2914,-2938,-2971,-3010,-3048,-3083,-3111,-3131,-3140,-3132,-3107,-3065,-3015,-2968,-2937,-2928,-2940,
+-2965,-2994,-3024,-3053,-3084,-3120,-3160,-3201,-3236,-3264,-3288,-3313,-3344,-3383,-3425,-3462,-3489,-3506,-3517,-3528,-3545,
+-3567,-3588,-3603,-3609,-3607,-3603,-3603,-3608,-3617,-3624,-3626,-3620,-3610,-3599,-3592,-3589,-3589,-3589,-3588,-3586,-3586,
+-3588,-3593,-3600,-3607,-3612,-3616,-3621,-3625,-3630,-3635,-3638,-3640,-3640,-3642,-3646,-3654,-3664,-3674,-3683,-3688,-3689,
+-3687,-3681,-3673,-3664,-3657,-3652,-3649,-3649,-3649,-3647,-3642,-3635,-3628,-3620,-3614,-3607,-3597,-3583,-3566,-3548,-3531,
+-3517,-3506,-3496,-3486,-3474,-3461,-3449,-3440,-3434,-3430,-3425,-3417,-3405,-3392,-3378,-3367,-3357,-3348,-3337,-3322,-3302,
+-3281,-3259,-3240,-3226,-3215,-3206,-3199,-3193,-3187,-3183,-3179,-3175,-3170,-3161,-3149,-3132,-3112,-3090,-3068,-3048,-3030,
+-3015,-3000,-2987,-2974,-2962,-2949,-2936,-2923,-2909,-2894,-2877,-2860,-2843,-2824,-2806,-2787,-2768,-2749,-2731,-2715,-2700,
+-2688,-2676,-2666,-2656,-2646,-2637,-2628,-2620,-2612,-2603,-2594,-2583,-2571,-2556,-2539,-2522,-2504,-2489,-2476,-2466,-2457,
+-2450,-2442,-2434,-2426,-2416,-2407,-2397,-2387,-2378,-2370,-2365,-2361,-2358,-2355,-2352,-2346,-2339,-2330,-2323,-2316,-2311,
+-2307,-2301,-2293,-2283,-2274,-2267,-2262,-2261,-2262,-2262,-2259,-2252,-2241,-2226,-2209,-2193,-2178,-2164,-2151,-2138,-2125,
+-2111,-2097,-2085,-2073,-2063,-2052,-2039,-2023,-2007,-1990,-1975,-1963,-1956,-1951,-1949,-1947,-1945,-1944,-1942,-1942,-1942,
+-1942,-1943,-1943,-1943,-1943,-1941,-1939,-1937,-1934,-1930,-1928,-1927,-1926,-1926,-1924,-1920,-1914,-1906,-1899,-1893,-1888,
+-1884,-1881,-1876,-1871,-1864,-1857,-1848,-1838,-1826,-1814,-1803,-1795,-1791,-1790,-1790,-1787,-1779,-1764,-1742,-1717,-1691,
+-1667,-1646,-1629,-1614,-1600,-1588,-1574,-1559,-1542,-1521,-1495,-1467,-1436,-1408,-1384,-1367,-1359,-1357,-1359,-1364,-1368,
+-1370,-1370,-1369,-1367,-1366,-1365,-1367,-1369,-1372,-1374,-1375,-1374,-1372,-1370,-1368,-1367,-1368,-1371,-1375,-1380,-1385,
+-1390,-1394,-1398,-1401,-1404,-1405,-1406,-1406,-1407,-1408,-1410,-1412,-1416,-1421,-1425,-1429,-1432,-1433,-1434,-1433,-1431,
+-1429,-1428,-1427,-1426,-1425,-1424,-1421,-1418,-1415,-1412,-1409,-1408,-1408,-1407,-1406,-1404,-1400,-1393,-1385,-1374,-1363,
+-1349,-1335,-1320,-1304,-1288,-1272,-1256,-1240,-1224,-1210,-1199,-1191,-1187,-1186,-1185,-1183,-1176,-1164,-1148,-1132,-1120,
+-1114,-1115,-1119,-1121,-1116,-1102,-1079,-1053,-1030,-1016,-1013,-1021,-1037,-1057,-1076,-1091,-1102,-1107,-1106,-1098,-1085,
+-1065,-1041,-1015,-988,-963,-939,-919,-901,-886,-872,-858,-842,-824,-803,-780,-757,-736,-716,-698,-681,-665,
+-649,-634,-621,-609,-597,-584,-568,-548,-526,-501,-475,-447,-420,-391,-364,-339,-317,-300,-286,-274,-262,
+-248,-232,-215,-197,-176,-152,-124,-91,-56,-20,12,42,69,95,121,149,178,209,239,269,296,
+321,344,365,385,405,425,444,462,478,489,496,497,492,483,468,449,427,404,383,368,360,
+361,374,397,433,485,556,646,756,879,1006,1126,1230,1311,1367,1400,1417,1426,1435,1453,1481,1520,
+1562,1597,1614,1607,1572,1513,1442,1371,1314,1278,1266,1272,1288,1305,1318,1327,1335,1348,1368,1398,1433,
+1468,1499,1525,1548,1571,1598,1629,1664,1699,1731,1756,1776,1791,1803,1812,1818,1820,1819,1815,1808,1798,
+1787,1773,1759,1747,1741,1743,1754,1771,1788,1798,1795,1779,1753,1724,1697,1679,1669,1668,1671,1675,1679,
+1682,1685,1689,1695,1702,1710,1719,1727,1734,1739,1739,1737,1732,1725,1719,1715,1715,1718,1722,1724,1724,
+1720,1712,1701,1689,1678,1669,1666,1667,1673,1681,1691,1698,1701,1700,1697,1694,1695,1699,1707,1714,1720,
+1725,1732,1743,1760,1781,1801,1814,1815,1806,1790,1776,1772,1780,1798,1821,1843,1859,1872,1886,1907,1937,
+1976,2019,2059,2088,2102,2100,2086,2066,2046,2034,2032,2042,2063,2087,2111,2127,2131,2121,2099,2069,2035,
+2001,1971,1946,1924,1904,1885,1869,1857,1852,1850,1843,1816,1747,1621,1429,1179,898,625,404,272,252,
+344,529,772,1035,1280,1483,1632,1733,1797,1843,1883,1923,1963,1995,2013,2014,2004,1992,1985,1991,2006,
+2025,2039,2045,2042,2033,2025,2021,2021,2023,2025,2027,2031,2037,2049,2066,2083,2100,2114,2126,2136,2148,
+2162,2176,2188,2197,2204,2209,2214,2219,2224,2228,2232,2236,2241,2250,2260,2273,2285,2297,2307,2317,2327,
+2337,2349,2362,2377,2394,2413,2432,2450,2465,2479,2493,2507,2521,2535,2543,2545,2539,2531,2525,2526,2536,
+2550,2562,2566,2559,2544,2525,2508,2496,2490,2487,2487,2488,2490,2495,2500,2504,2503,2494,2478,2443,2430,
+2417,2408,2401,2396,2391,2387,2385,2387,2394,2405,2417,2427,2433,2432,2426,2416,2401,2383,2361,2335,2307,
+2278,2250,2224,2200,2180,2165,2155,2150,2149,2152,2157,2163,2170,2179,2188,2198,2206,2210,2210,2208,2207,
+2209,2214,2223,2233,2243,2253,2264,2280,2301,2328,2357,2385,2411,2433,2454,2475,2499,2526,2557,2589,2621,
+2651,2677,2698,2715,2730,2746,2767,2794,2827,2860,2890,2912,2925,2931,2936,2943,2956,2974,2993,3011,3026,
+3039,3050,3063,3078,3093,3106,3117,3124,3126,3124,3116,3103,3088,3077,3075,3085,3107,3136,3161,3176,3175,
+3162,3146,3138,3145,3166,3197,3228,3253,3269,3279,3291,3309,3334,3364,3392,3417,3437,3454,3473,3496,3521,
+3547,3569,3587,3600,3611,3624,3639,3656,3674,3692,3710,3727,3745,3764,3785,3805,3824,3843,3861,3879,3897,
+3917,3936,3956,3976,3997,4018,4040,4063,4083,4099,4111,4119,4124,4129,4134,4141,4147,4152,4154,4151,4147,
+4140,4134,4130,4127,4126,4126,4127,4128,4130,4133,4137,4139,4141,4141,4141,4141,4141,4142,4140,4136,4127,
+4114,4099,4082,4066,4051,4036,4019,4002,3985,3969,3955,3943,3933,3922,3910,3896,3882,3870,3861,3856,3854,
+3851,3847,3839,3829,3817,3805,3794,3784,3775,3767,3759,3752,3745,3739,3734,3729,3723,3716,3708,3697,3685,
+3672,3659,3645,3630,3613,3596,3580,3566,3557,3552,3551,3549,3545,3537,3526,3514,3503,3496,3492,3488,3486,
+3486,3489,3500,3519,3544,3569,3590,3601,3602,3593,3575,3553,3528,3502,3477,3456,3441,3431,3425,3418,3408,
+3393,3375,3360,3349,3346,3347,3349,3349,3347,3342,3339,3340,3342,3343,3338,3326,3308,3287,3268,3253,3240,
+3226,3206,3180,3150,3119,3093,3075,3063,3054,3045,3031,3012,2989,2962,2933,2900,2863,2820,2772,2718,2662,
+2604,2548,2493,2439,2387,2333,2276,2217,2156,2096,2042,1999,1969,1952,1945,1940,1932,1915,1889,1856,1823,
+1795,1774,1762,1754,1745,1731,1710,1683,1652,1622,1595,1570,1547,1523,1498,1471,1444,1418,1393,1369,1346,
+1322,1295,1266,1234,1201,1168,1135,1103,1073,1044,1015,985,954,920,885,849,814,780,748,717,686,
+654,621,589,558,530,503,478,451,422,389,353,316,278,239,201,164,127,92,60,29,0,
+-28,-56,-84,-112,-138,-165,-193,-224,-259,-298,-339,-380,-417,-448,-476,-501,-527,-555,-586,-617,-649,
+-680,-710,-740,-773,-807,-842,-875,-905,-931,-952,-973,-994,-1019,-1047,-1079,-1113,-1147,-1181,-1215,-1248,-1281,
+-1315,-1348,-1381,-1413,-1444,-1473,-1502,-1531,-1561,-1592,-1622,-1650,-1677,-1702,-1727,-1753,-1780,-1807,-1833,-1855,-1873,
+-1889,-1904,-1922,-1943,-1968,-1993,-2017,-2039,-2058,-2074,-2090,-2106,-2123,-2141,-2159,-2179,-2199,-2219,-2238,-2256,-2273,
+-2288,-2303,-2319,-2336,-2353,-2369,-2384,-2396,-2408,-2421,-2436,-2453,-2470,-2486,-2499,-2510,-2519,-2529,-2540,-2550,-2558,
+-2565,-2569,-2572,-2577,-2581,-2586,-2589,-2589,-2588,-2587,-2588,-2590,-2594,-2597,-2597,-2594,-2590,-2586,-2584,-2584,-2582,
+-2578,-2572,-2565,-2559,-2558,-2561,-2566,-2569,-2567,-2563,-2558,-2555,-2557,-2562,-2566,-2568,-2566,-2561,-2559,-2559,-2562,
+-2565,-2564,-2557,-2544,-2528,-2515,-2507,-2505,-2507,-2508,-2507,-2500,-2487,-2467,-2442,-2414,-2386,-2360,-2340,-2326,-2317,
+-2310,-2302,-2293,-2284,-2279,-2278,-2278,-2277,-2270,-2255,-2237,-2220,-2211,-2211,-2219,-2226,-2227,-2219,-2208,-2202,-2207,
+-2226,-2257,-2290,-2317,-2333,-2336,-2331,-2324,-2316,-2309,-2302,-2296,-2294,-2299,-2313,-2333,-2354,-2371,-2381,-2383,-2383,
+-2385,-2392,-2401,-2408,-2409,-2406,-2404,-2410,-2425,-2446,-2465,-2473,-2467,-2453,-2443,-2450,-2478,-2522,-2567,-2602,-2617,
+-2618,-2614,-2619,-2638,-2669,-2703,-2730,-2747,-2755,-2764,-2780,-2807,-2840,-2873,-2902,-2926,-2948,-2974,-3006,-3044,-3084,
+-3122,-3154,-3179,-3197,-3207,-3204,-3188,-3159,-3125,-3095,-3080,-3084,-3105,-3135,-3166,-3193,-3218,-3243,-3272,-3304,-3338,
+-3366,-3388,-3406,-3424,-3449,-3481,-3517,-3550,-3575,-3592,-3603,-3615,-3632,-3651,-3670,-3682,-3685,-3683,-3681,-3683,-3691,
+-3702,-3711,-3713,-3707,-3695,-3683,-3675,-3671,-3669,-3668,-3665,-3661,-3659,-3662,-3670,-3681,-3692,-3700,-3704,-3704,-3703,
+-3703,-3705,-3709,-3713,-3716,-3720,-3725,-3730,-3737,-3744,-3750,-3752,-3752,-3747,-3741,-3733,-3726,-3720,-3716,-3715,-3713,
+-3712,-3709,-3704,-3699,-3694,-3689,-3684,-3677,-3666,-3652,-3634,-3616,-3599,-3585,-3574,-3564,-3553,-3540,-3527,-3513,-3502,
+-3493,-3486,-3480,-3473,-3464,-3454,-3444,-3435,-3427,-3416,-3403,-3385,-3364,-3341,-3320,-3301,-3286,-3274,-3263,-3253,-3242,
+-3232,-3225,-3219,-3215,-3211,-3204,-3193,-3177,-3155,-3131,-3105,-3082,-3061,-3044,-3030,-3018,-3008,-2998,-2988,-2979,-2969,
+-2959,-2947,-2933,-2918,-2900,-2881,-2860,-2839,-2817,-2796,-2775,-2755,-2738,-2722,-2709,-2697,-2687,-2677,-2668,-2660,-2652,
+-2646,-2640,-2634,-2627,-2617,-2606,-2592,-2576,-2561,-2546,-2534,-2523,-2512,-2501,-2489,-2476,-2464,-2452,-2440,-2430,-2421,
+-2412,-2404,-2398,-2394,-2392,-2390,-2388,-2383,-2375,-2366,-2355,-2345,-2336,-2328,-2319,-2309,-2299,-2291,-2286,-2287,-2292,
+-2299,-2306,-2308,-2302,-2290,-2271,-2251,-2230,-2212,-2197,-2184,-2171,-2157,-2144,-2130,-2117,-2104,-2093,-2080,-2067,-2053,
+-2039,-2026,-2015,-2007,-2001,-1997,-1993,-1989,-1986,-1984,-1983,-1984,-1985,-1986,-1987,-1987,-1986,-1985,-1982,-1980,-1976,
+-1972,-1969,-1966,-1965,-1966,-1967,-1966,-1963,-1959,-1952,-1945,-1939,-1932,-1925,-1916,-1905,-1894,-1882,-1872,-1864,-1857,
+-1852,-1848,-1845,-1845,-1846,-1849,-1851,-1849,-1842,-1828,-1809,-1787,-1765,-1745,-1729,-1717,-1707,-1699,-1691,-1683,-1674,
+-1662,-1645,-1622,-1593,-1561,-1528,-1499,-1477,-1461,-1451,-1445,-1441,-1437,-1432,-1426,-1421,-1417,-1414,-1412,-1412,-1412,
+-1412,-1412,-1412,-1413,-1414,-1416,-1418,-1420,-1421,-1423,-1424,-1425,-1426,-1429,-1432,-1436,-1440,-1444,-1447,-1449,-1451,
+-1451,-1451,-1449,-1446,-1443,-1440,-1438,-1437,-1439,-1441,-1445,-1447,-1450,-1451,-1451,-1451,-1450,-1449,-1447,-1444,-1441,
+-1438,-1436,-1435,-1436,-1437,-1437,-1437,-1434,-1430,-1423,-1415,-1405,-1393,-1380,-1365,-1349,-1332,-1315,-1298,-1281,-1265,
+-1248,-1234,-1222,-1214,-1210,-1209,-1210,-1209,-1204,-1194,-1181,-1167,-1155,-1147,-1143,-1141,-1136,-1127,-1111,-1092,-1072,
+-1055,-1046,-1044,-1048,-1057,-1069,-1082,-1095,-1106,-1113,-1115,-1108,-1094,-1072,-1046,-1019,-992,-968,-946,-928,-914,
+-903,-896,-888,-879,-865,-846,-823,-798,-776,-757,-742,-729,-716,-701,-686,-670,-655,-640,-625,-608,-586,
+-559,-529,-497,-466,-436,-407,-380,-355,-333,-313,-297,-284,-271,-259,-244,-228,-209,-189,-168,-145,-120,
+-91,-59,-24,10,43,73,100,125,150,176,205,235,265,293,317,337,355,373,393,415,439,
+462,481,496,505,511,512,510,505,496,484,472,460,450,442,435,430,430,440,469,524,609,
+723,859,1004,1143,1263,1353,1412,1443,1455,1458,1464,1477,1500,1527,1551,1562,1555,1527,1483,1431,1381,
+1343,1322,1318,1327,1343,1361,1378,1396,1415,1438,1466,1498,1530,1560,1586,1608,1629,1651,1677,1704,1732,
+1757,1777,1793,1806,1819,1833,1848,1864,1878,1887,1889,1883,1867,1843,1813,1783,1759,1748,1753,1773,1803,
+1833,1853,1855,1840,1811,1777,1746,1723,1712,1710,1714,1719,1722,1723,1723,1725,1731,1742,1757,1775,1791,
+1802,1805,1800,1790,1778,1770,1766,1767,1768,1768,1762,1750,1735,1720,1710,1705,1705,1707,1710,1713,1715,
+1718,1723,1729,1733,1734,1730,1725,1720,1720,1726,1737,1750,1762,1771,1778,1786,1798,1814,1832,1846,1854,
+1855,1852,1851,1856,1869,1888,1907,1920,1925,1921,1916,1915,1923,1940,1963,1986,2005,2017,2026,2033,2042,
+2055,2071,2087,2100,2110,2117,2122,2127,2134,2140,2145,2147,2146,2144,2141,2136,2130,2118,2100,2080,2064,
+2060,2073,2096,2114,2102,2032,1884,1654,1358,1032,721,471,320,286,365,539,774,1031,1275,1480,1636,
+1743,1812,1857,1892,1924,1953,1975,1990,1997,2000,2006,2016,2030,2044,2052,2051,2042,2029,2018,2013,2013,
+2016,2019,2021,2023,2027,2037,2053,2073,2093,2108,2117,2122,2127,2133,2141,2153,2164,2174,2180,2182,2183,
+2183,2183,2187,2192,2201,2213,2226,2240,2254,2268,2280,2291,2301,2310,2321,2334,2351,2372,2394,2414,2431,
+2445,2457,2471,2490,2512,2533,2549,2553,2547,2534,2522,2518,2523,2534,2545,2549,2541,2525,2503,2483,2468,
+2458,2453,2451,2451,2452,2456,2460,2462,2461,2454,2443,2404,2392,2380,2368,2355,2343,2333,2326,2326,2333,
+2346,2363,2377,2386,2385,2376,2361,2342,2320,2296,2271,2245,2219,2195,2174,2159,2148,2140,2136,2133,2132,
+2132,2133,2136,2138,2141,2143,2144,2146,2146,2147,2149,2151,2155,2161,2167,2174,2181,2188,2198,2211,2230,
+2253,2280,2307,2332,2356,2379,2403,2429,2458,2490,2521,2552,2579,2604,2625,2644,2663,2683,2707,2734,2765,
+2796,2824,2845,2859,2866,2873,2882,2897,2917,2938,2955,2967,2973,2978,2987,3002,3021,3042,3058,3067,3068,
+3062,3054,3045,3037,3033,3033,3039,3053,3073,3095,3113,3121,3120,3111,3102,3102,3113,3136,3165,3192,3214,
+3230,3244,3260,3282,3310,3340,3368,3392,3412,3430,3449,3471,3493,3515,3532,3544,3553,3561,3572,3587,3605,
+3624,3643,3662,3681,3701,3721,3742,3763,3781,3798,3814,3830,3846,3864,3881,3899,3918,3936,3956,3977,3996,
+4014,4028,4039,4047,4053,4058,4063,4068,4073,4077,4080,4081,4080,4077,4074,4069,4065,4062,4062,4065,4070,
+4077,4083,4086,4086,4085,4082,4080,4079,4080,4081,4079,4074,4065,4052,4036,4020,4005,3990,3975,3961,3947,
+3932,3919,3907,3896,3886,3874,3861,3847,3832,3819,3809,3802,3798,3794,3789,3781,3770,3758,3746,3736,3729,
+3725,3722,3719,3714,3708,3702,3696,3692,3689,3684,3676,3665,3652,3638,3626,3615,3606,3595,3583,3570,3557,
+3547,3540,3536,3531,3523,3512,3498,3485,3477,3473,3474,3477,3479,3482,3488,3499,3518,3544,3572,3596,3614,
+3623,3624,3619,3611,3600,3587,3573,3558,3546,3537,3528,3517,3500,3474,3442,3408,3378,3356,3344,3339,3340,
+3342,3347,3354,3362,3370,3374,3368,3353,3329,3301,3276,3257,3241,3225,3205,3179,3149,3120,3097,3080,3068,
+3055,3036,3008,2976,2944,2917,2896,2879,2861,2834,2796,2746,2688,2626,2564,2503,2445,2387,2330,2272,2216,
+2161,2110,2062,2020,1985,1959,1941,1930,1920,1908,1887,1859,1823,1787,1754,1729,1712,1701,1691,1678,1659,
+1636,1609,1581,1554,1528,1503,1478,1454,1430,1409,1389,1370,1350,1328,1302,1272,1239,1204,1168,1133,1099,
+1067,1037,1008,978,948,915,880,844,807,772,738,705,674,643,612,582,552,522,493,464,435,
+404,372,338,304,269,231,193,153,113,75,39,7,-23,-51,-78,-104,-129,-152,-175,-200,-230,
+-265,-304,-346,-387,-422,-453,-480,-505,-533,-564,-598,-631,-662,-691,-717,-743,-772,-804,-839,-873,-904,
+-931,-954,-975,-997,-1022,-1052,-1086,-1122,-1157,-1192,-1224,-1256,-1287,-1319,-1352,-1386,-1419,-1451,-1482,-1513,-1542,
+-1570,-1598,-1625,-1650,-1675,-1699,-1724,-1751,-1779,-1807,-1833,-1857,-1877,-1894,-1912,-1930,-1951,-1974,-1998,-2022,-2043,
+-2063,-2080,-2097,-2114,-2131,-2149,-2168,-2187,-2208,-2228,-2248,-2266,-2283,-2299,-2315,-2331,-2348,-2363,-2378,-2391,-2404,
+-2418,-2433,-2449,-2467,-2482,-2496,-2507,-2518,-2530,-2544,-2558,-2570,-2579,-2584,-2587,-2589,-2593,-2600,-2607,-2612,-2615,
+-2615,-2615,-2615,-2617,-2620,-2622,-2622,-2620,-2618,-2616,-2617,-2618,-2618,-2615,-2609,-2602,-2595,-2593,-2594,-2596,-2597,
+-2596,-2592,-2589,-2588,-2590,-2594,-2597,-2597,-2594,-2591,-2590,-2593,-2599,-2603,-2603,-2596,-2583,-2569,-2556,-2549,-2547,
+-2549,-2551,-2551,-2546,-2536,-2519,-2496,-2467,-2437,-2409,-2385,-2369,-2358,-2350,-2342,-2334,-2326,-2321,-2321,-2324,-2324,
+-2319,-2304,-2285,-2266,-2255,-2255,-2261,-2269,-2270,-2262,-2249,-2238,-2238,-2252,-2279,-2311,-2339,-2357,-2365,-2365,-2360,
+-2352,-2343,-2332,-2322,-2318,-2323,-2338,-2362,-2386,-2405,-2415,-2417,-2418,-2422,-2430,-2440,-2445,-2442,-2435,-2430,-2435,
+-2452,-2474,-2493,-2498,-2490,-2478,-2481,-2512,-2573,-2654,-2728,-2774,-2777,-2742,-2690,-2646,-2628,-2642,-2679,-2725,-2765,
+-2793,-2812,-2829,-2849,-2876,-2906,-2938,-2969,-3000,-3033,-3070,-3107,-3142,-3173,-3198,-3220,-3240,-3257,-3269,-3271,-3264,
+-3250,-3237,-3231,-3238,-3258,-3284,-3311,-3335,-3355,-3375,-3399,-3427,-3457,-3484,-3505,-3521,-3535,-3552,-3575,-3602,-3629,
+-3653,-3671,-3686,-3699,-3713,-3727,-3739,-3747,-3750,-3750,-3752,-3759,-3770,-3781,-3789,-3789,-3781,-3770,-3759,-3753,-3751,
+-3750,-3748,-3744,-3739,-3736,-3738,-3746,-3758,-3769,-3776,-3779,-3778,-3775,-3775,-3779,-3785,-3792,-3798,-3804,-3808,-3811,
+-3814,-3817,-3817,-3816,-3812,-3806,-3799,-3792,-3786,-3782,-3780,-3778,-3776,-3773,-3769,-3765,-3760,-3757,-3753,-3749,-3743,
+-3734,-3722,-3708,-3692,-3677,-3664,-3651,-3639,-3626,-3611,-3596,-3580,-3565,-3553,-3543,-3535,-3528,-3522,-3518,-3513,-3507,
+-3499,-3488,-3472,-3451,-3428,-3406,-3385,-3368,-3355,-3343,-3332,-3319,-3305,-3291,-3278,-3266,-3257,-3249,-3241,-3229,-3214,
+-3195,-3172,-3149,-3126,-3106,-3090,-3076,-3064,-3053,-3043,-3032,-3022,-3012,-3002,-2991,-2979,-2965,-2948,-2931,-2911,-2891,
+-2871,-2850,-2829,-2809,-2789,-2770,-2754,-2739,-2727,-2717,-2707,-2698,-2690,-2681,-2674,-2666,-2658,-2651,-2642,-2633,-2624,
+-2615,-2607,-2597,-2587,-2575,-2560,-2544,-2528,-2512,-2498,-2487,-2476,-2467,-2456,-2446,-2435,-2427,-2421,-2417,-2415,-2412,
+-2408,-2402,-2395,-2387,-2378,-2370,-2360,-2350,-2341,-2333,-2329,-2330,-2335,-2343,-2351,-2354,-2350,-2339,-2323,-2303,-2283,
+-2264,-2247,-2231,-2215,-2198,-2181,-2165,-2150,-2138,-2126,-2115,-2104,-2092,-2081,-2070,-2062,-2055,-2050,-2045,-2041,-2036,
+-2032,-2029,-2029,-2030,-2031,-2032,-2033,-2032,-2030,-2028,-2026,-2024,-2021,-2018,-2015,-2012,-2010,-2008,-2007,-2004,-1999,
+-1993,-1987,-1980,-1974,-1968,-1961,-1953,-1942,-1931,-1919,-1909,-1901,-1894,-1888,-1882,-1876,-1871,-1868,-1866,-1866,-1864,
+-1860,-1853,-1843,-1832,-1821,-1811,-1803,-1795,-1789,-1782,-1777,-1772,-1768,-1763,-1755,-1742,-1724,-1703,-1678,-1654,-1632,
+-1613,-1596,-1581,-1565,-1550,-1535,-1521,-1509,-1500,-1492,-1485,-1478,-1470,-1462,-1456,-1452,-1452,-1457,-1464,-1473,-1480,
+-1485,-1485,-1483,-1479,-1475,-1472,-1471,-1472,-1475,-1478,-1483,-1489,-1495,-1501,-1505,-1506,-1503,-1496,-1486,-1477,-1469,
+-1465,-1463,-1465,-1467,-1470,-1473,-1474,-1475,-1475,-1474,-1472,-1468,-1465,-1462,-1461,-1461,-1464,-1466,-1468,-1468,-1466,
+-1461,-1455,-1448,-1439,-1428,-1415,-1399,-1381,-1361,-1342,-1323,-1305,-1289,-1273,-1259,-1247,-1237,-1230,-1227,-1226,-1224,
+-1220,-1212,-1202,-1190,-1179,-1170,-1163,-1156,-1147,-1136,-1122,-1106,-1092,-1081,-1075,-1073,-1074,-1078,-1083,-1091,-1100,
+-1109,-1117,-1119,-1114,-1101,-1081,-1056,-1030,-1004,-980,-959,-942,-929,-920,-915,-911,-903,-890,-871,-846,-820,
+-797,-779,-766,-756,-747,-735,-720,-704,-689,-675,-661,-644,-621,-591,-556,-519,-483,-451,-424,-400,-378,
+-357,-336,-316,-299,-283,-269,-254,-238,-220,-201,-181,-161,-138,-113,-83,-50,-15,18,49,75,99,
+121,144,171,201,231,260,285,307,327,347,369,394,421,447,470,489,504,517,528,537,543,
+547,548,547,545,543,540,534,524,512,501,499,517,561,638,743,868,1001,1126,1233,1316,1376,
+1417,1446,1469,1489,1506,1515,1515,1502,1479,1450,1420,1396,1381,1375,1376,1381,1388,1395,1403,1414,1430,
+1453,1481,1511,1541,1568,1591,1612,1633,1657,1683,1711,1739,1764,1783,1795,1803,1809,1818,1830,1849,1872,
+1898,1921,1938,1942,1931,1905,1867,1826,1790,1769,1766,1782,1808,1835,1853,1856,1844,1822,1798,1778,1766,
+1763,1765,1768,1768,1763,1754,1743,1735,1734,1744,1763,1789,1816,1835,1844,1842,1833,1822,1817,1819,1827,
+1834,1835,1825,1805,1781,1760,1748,1748,1756,1768,1778,1783,1783,1779,1775,1771,1766,1760,1751,1741,1732,
+1730,1737,1750,1766,1781,1792,1799,1805,1811,1822,1836,1851,1862,1870,1874,1877,1884,1896,1912,1929,1943,
+1951,1953,1951,1949,1950,1955,1965,1975,1986,1998,2011,2029,2050,2075,2099,2118,2130,2136,2139,2142,2149,
+2160,2174,2188,2198,2206,2210,2214,2216,2214,2204,2184,2157,2128,2110,2109,2127,2154,2170,2150,2068,1912,
+1684,1402,1098,811,578,429,383,442,592,807,1051,1291,1497,1654,1760,1826,1865,1893,1919,1944,1968,
+1989,2006,2020,2032,2042,2047,2047,2039,2026,2011,1999,1994,1995,2001,2007,2013,2017,2024,2036,2054,2076,
+2097,2112,2120,2121,2119,2119,2123,2132,2143,2153,2159,2161,2160,2160,2162,2168,2178,2190,2202,2214,2227,
+2240,2253,2267,2280,2292,2302,2311,2324,2340,2361,2383,2404,2420,2431,2440,2452,2469,2491,2514,2532,2540,
+2537,2527,2516,2511,2515,2525,2535,2541,2537,2525,2509,2492,2479,2468,2460,2452,2444,2437,2432,2428,2425,
+2420,2414,2404,2360,2348,2334,2319,2304,2290,2279,2275,2278,2288,2303,2318,2327,2326,2315,2296,2273,2248,
+2224,2203,2184,2165,2150,2137,2128,2122,2120,2118,2115,2110,2105,2099,2094,2090,2087,2086,2084,2083,2083,
+2085,2090,2096,2103,2110,2116,2120,2123,2127,2133,2143,2160,2181,2205,2230,2254,2276,2298,2323,2351,2383,
+2418,2453,2486,2514,2537,2557,2576,2597,2620,2647,2677,2708,2738,2764,2784,2797,2805,2812,2822,2838,2859,
+2881,2900,2912,2916,2917,2920,2931,2949,2973,2995,3010,3014,3009,2999,2989,2984,2986,2992,3001,3012,3023,
+3036,3048,3057,3063,3064,3064,3066,3074,3090,3112,3137,3161,3181,3197,3213,3231,3254,3281,3310,3337,3362,
+3385,3407,3429,3450,3469,3483,3491,3496,3500,3507,3518,3535,3554,3575,3595,3615,3635,3656,3678,3700,3720,
+3739,3755,3770,3786,3802,3821,3840,3860,3879,3898,3915,3932,3946,3959,3970,3979,3988,3995,4002,4006,4009,
+4011,4013,4016,4019,4022,4023,4022,4017,4011,4005,4003,4006,4012,4021,4028,4032,4033,4031,4029,4027,4027,
+4026,4025,4020,4013,4003,3990,3977,3964,3950,3936,3922,3908,3893,3879,3865,3851,3839,3827,3815,3804,3793,
+3781,3770,3759,3750,3743,3736,3730,3722,3713,3703,3694,3688,3686,3688,3691,3692,3689,3681,3672,3662,3655,
+3649,3644,3638,3629,3619,3608,3598,3592,3587,3582,3574,3564,3551,3539,3527,3518,3508,3497,3485,3473,3465,
+3461,3464,3468,3472,3474,3474,3476,3485,3503,3529,3559,3589,3612,3629,3639,3645,3648,3648,3644,3636,3626,
+3617,3609,3602,3593,3576,3548,3511,3468,3427,3396,3378,3373,3376,3384,3394,3404,3411,3415,3411,3397,3373,
+3341,3306,3275,3250,3230,3211,3190,3165,3140,3117,3102,3093,3085,3072,3046,3008,2963,2920,2887,2868,2859,
+2853,2842,2818,2781,2732,2677,2619,2558,2495,2428,2358,2289,2223,2164,2113,2069,2030,1996,1967,1943,1926,
+1913,1901,1884,1858,1824,1783,1742,1706,1680,1663,1653,1644,1634,1618,1597,1572,1545,1517,1489,1462,1436,
+1413,1393,1375,1357,1339,1318,1293,1265,1233,1198,1162,1126,1090,1056,1024,994,965,936,905,872,837,
+801,764,728,693,661,630,601,573,546,518,488,457,424,390,356,324,291,258,224,186,145,
+103,61,22,-11,-42,-69,-94,-118,-141,-164,-186,-211,-240,-273,-311,-351,-389,-425,-456,-485,-514,
+-545,-578,-612,-645,-675,-701,-724,-747,-774,-805,-838,-872,-903,-930,-953,-975,-998,-1025,-1057,-1094,-1132,
+-1169,-1204,-1236,-1265,-1294,-1323,-1354,-1385,-1418,-1451,-1484,-1516,-1546,-1576,-1603,-1629,-1653,-1677,-1701,-1726,-1753,
+-1781,-1808,-1834,-1858,-1879,-1898,-1918,-1938,-1959,-1982,-2005,-2027,-2048,-2069,-2088,-2106,-2123,-2140,-2158,-2176,-2195,
+-2215,-2235,-2254,-2272,-2289,-2305,-2321,-2338,-2355,-2371,-2386,-2400,-2414,-2430,-2446,-2464,-2480,-2494,-2504,-2514,-2524,
+-2537,-2553,-2570,-2586,-2596,-2603,-2606,-2608,-2613,-2620,-2628,-2636,-2640,-2642,-2642,-2643,-2645,-2648,-2650,-2650,-2648,
+-2647,-2647,-2649,-2651,-2653,-2652,-2647,-2640,-2634,-2629,-2627,-2627,-2626,-2624,-2623,-2622,-2624,-2627,-2631,-2632,-2630,
+-2626,-2623,-2623,-2627,-2633,-2637,-2637,-2631,-2619,-2606,-2595,-2589,-2587,-2588,-2590,-2590,-2586,-2578,-2564,-2543,-2516,
+-2487,-2458,-2435,-2418,-2406,-2397,-2388,-2379,-2370,-2365,-2365,-2368,-2370,-2366,-2353,-2333,-2314,-2302,-2300,-2306,-2314,
+-2316,-2309,-2295,-2282,-2277,-2284,-2304,-2330,-2356,-2375,-2386,-2389,-2388,-2381,-2371,-2359,-2348,-2343,-2350,-2368,-2393,
+-2419,-2437,-2446,-2447,-2448,-2453,-2462,-2471,-2475,-2470,-2462,-2458,-2465,-2484,-2508,-2525,-2527,-2519,-2514,-2534,-2594,
+-2692,-2807,-2903,-2949,-2931,-2857,-2757,-2671,-2626,-2633,-2680,-2744,-2803,-2843,-2863,-2873,-2883,-2903,-2931,-2967,-3006,
+-3045,-3085,-3123,-3160,-3192,-3219,-3240,-3260,-3281,-3305,-3330,-3351,-3364,-3368,-3367,-3366,-3372,-3386,-3407,-3432,-3455,
+-3475,-3495,-3516,-3540,-3567,-3592,-3612,-3626,-3636,-3646,-3659,-3678,-3699,-3722,-3743,-3761,-3775,-3787,-3796,-3803,-3808,
+-3812,-3815,-3821,-3830,-3840,-3849,-3853,-3851,-3844,-3836,-3831,-3829,-3830,-3831,-3830,-3827,-3822,-3819,-3819,-3824,-3832,
+-3840,-3845,-3847,-3848,-3848,-3852,-3857,-3865,-3872,-3878,-3882,-3884,-3885,-3885,-3884,-3882,-3878,-3872,-3865,-3857,-3851,
+-3845,-3842,-3839,-3836,-3834,-3830,-3827,-3823,-3819,-3815,-3812,-3809,-3805,-3799,-3791,-3782,-3770,-3757,-3744,-3730,-3715,
+-3700,-3683,-3666,-3649,-3634,-3619,-3607,-3597,-3589,-3583,-3579,-3576,-3571,-3564,-3552,-3536,-3516,-3495,-3474,-3455,-3439,
+-3427,-3416,-3404,-3391,-3376,-3360,-3343,-3326,-3311,-3298,-3285,-3271,-3256,-3239,-3221,-3201,-3182,-3164,-3148,-3133,-3120,
+-3107,-3095,-3082,-3070,-3057,-3045,-3033,-3019,-3004,-2988,-2970,-2953,-2936,-2920,-2904,-2887,-2870,-2852,-2833,-2814,-2797,
+-2781,-2768,-2756,-2745,-2735,-2723,-2712,-2700,-2689,-2680,-2673,-2667,-2663,-2659,-2655,-2648,-2639,-2627,-2612,-2595,-2579,
+-2564,-2552,-2541,-2532,-2522,-2510,-2496,-2482,-2468,-2457,-2450,-2445,-2442,-2440,-2436,-2432,-2427,-2422,-2416,-2411,-2405,
+-2398,-2393,-2388,-2386,-2387,-2390,-2394,-2396,-2395,-2389,-2380,-2367,-2353,-2338,-2323,-2306,-2287,-2267,-2246,-2226,-2208,
+-2192,-2178,-2165,-2154,-2142,-2131,-2121,-2112,-2105,-2099,-2093,-2088,-2084,-2081,-2079,-2079,-2080,-2081,-2081,-2081,-2079,
+-2076,-2073,-2070,-2068,-2065,-2062,-2059,-2055,-2051,-2046,-2041,-2034,-2027,-2020,-2013,-2007,-2002,-1997,-1992,-1986,-1979,
+-1972,-1965,-1958,-1951,-1944,-1934,-1923,-1910,-1897,-1886,-1878,-1872,-1868,-1865,-1862,-1858,-1853,-1848,-1843,-1837,-1831,
+-1824,-1818,-1812,-1808,-1807,-1808,-1810,-1811,-1810,-1807,-1801,-1792,-1780,-1766,-1748,-1729,-1707,-1685,-1664,-1645,-1630,
+-1617,-1605,-1593,-1578,-1561,-1542,-1525,-1512,-1506,-1507,-1514,-1524,-1535,-1542,-1545,-1545,-1542,-1539,-1535,-1533,-1531,
+-1529,-1528,-1528,-1532,-1538,-1547,-1555,-1561,-1562,-1558,-1548,-1537,-1525,-1515,-1509,-1505,-1504,-1504,-1505,-1507,-1508,
+-1508,-1506,-1502,-1498,-1493,-1489,-1487,-1488,-1491,-1494,-1496,-1496,-1494,-1489,-1483,-1476,-1468,-1458,-1444,-1426,-1405,
+-1383,-1361,-1342,-1325,-1311,-1299,-1287,-1276,-1264,-1254,-1245,-1238,-1231,-1226,-1219,-1211,-1203,-1195,-1188,-1181,-1173,
+-1164,-1153,-1140,-1126,-1115,-1105,-1099,-1096,-1095,-1096,-1098,-1103,-1109,-1116,-1121,-1122,-1117,-1105,-1087,-1064,-1040,
+-1015,-991,-970,-953,-940,-932,-927,-924,-917,-904,-884,-858,-832,-808,-790,-778,-769,-759,-747,-732,-717,
+-702,-690,-678,-664,-644,-616,-582,-545,-510,-479,-454,-431,-410,-387,-362,-338,-314,-294,-277,-261,-246,
+-229,-211,-190,-168,-144,-118,-90,-61,-31,-2,24,48,70,91,114,139,166,195,223,249,273,
+297,321,347,373,399,424,446,468,488,509,530,550,568,581,589,595,599,604,610,617,620,
+619,613,605,601,609,637,686,755,840,932,1025,1115,1200,1280,1353,1418,1470,1502,1511,1496,1462,
+1421,1384,1361,1357,1368,1389,1412,1428,1436,1439,1440,1446,1460,1482,1508,1534,1558,1578,1595,1613,1634,
+1660,1690,1722,1752,1778,1798,1812,1821,1829,1837,1847,1862,1883,1908,1935,1959,1974,1976,1961,1934,1899,
+1864,1838,1823,1820,1823,1827,1827,1821,1812,1804,1800,1803,1812,1823,1831,1833,1826,1809,1785,1759,1737,
+1725,1726,1742,1768,1797,1821,1834,1837,1832,1827,1829,1841,1859,1876,1885,1881,1864,1839,1817,1802,1800,
+1807,1818,1827,1830,1826,1818,1809,1800,1791,1780,1768,1755,1745,1742,1746,1758,1774,1790,1803,1812,1819,
+1827,1838,1853,1870,1884,1893,1897,1896,1895,1897,1905,1919,1936,1954,1970,1982,1989,1994,1997,2000,2005,
+2013,2025,2040,2059,2080,2103,2123,2141,2155,2166,2177,2189,2203,2218,2232,2242,2247,2247,2246,2245,2246,
+2245,2240,2227,2204,2176,2150,2134,2130,2137,2144,2135,2094,2006,1864,1669,1433,1175,922,705,554,492,
+530,660,860,1094,1325,1523,1670,1766,1824,1859,1887,1915,1944,1973,1996,2013,2023,2029,2030,2027,2019,
+2008,1996,1985,1981,1982,1989,1998,2007,2017,2028,2043,2061,2082,2102,2117,2125,2125,2121,2117,2117,2122,
+2130,2138,2144,2147,2148,2151,2157,2168,2180,2193,2203,2211,2218,2227,2239,2254,2271,2285,2297,2308,2319,
+2334,2354,2377,2401,2419,2431,2438,2443,2451,2464,2480,2494,2504,2506,2503,2498,2497,2501,2510,2518,2522,
+2519,2510,2496,2482,2468,2456,2445,2433,2421,2409,2399,2390,2384,2378,2370,2360,2314,2301,2287,2271,2255,
+2241,2232,2229,2234,2245,2258,2269,2273,2267,2251,2228,2202,2177,2155,2138,2123,2112,2102,2094,2088,2083,
+2077,2069,2060,2048,2035,2024,2016,2011,2009,2010,2013,2018,2024,2032,2041,2050,2059,2065,2069,2070,2072,
+2076,2084,2098,2118,2142,2166,2189,2209,2228,2248,2273,2303,2340,2379,2418,2452,2479,2500,2518,2536,2557,
+2582,2611,2641,2670,2696,2716,2731,2742,2752,2763,2779,2798,2819,2838,2852,2859,2863,2867,2876,2893,2915,
+2938,2956,2965,2963,2954,2945,2940,2943,2951,2963,2974,2983,2989,2994,2998,3003,3008,3013,3020,3030,3044,
+3063,3086,3109,3131,3151,3168,3185,3204,3226,3250,3276,3303,3329,3354,3379,3403,3422,3437,3444,3447,3447,
+3449,3457,3470,3489,3510,3530,3550,3570,3590,3611,3633,3655,3676,3694,3711,3728,3745,3764,3786,3808,3830,
+3852,3870,3886,3898,3907,3914,3920,3927,3936,3944,3951,3956,3957,3956,3955,3957,3960,3965,3969,3969,3966,
+3961,3955,3953,3954,3960,3966,3972,3976,3977,3976,3975,3975,3975,3972,3968,3961,3952,3942,3933,3924,3915,
+3904,3891,3877,3862,3847,3833,3819,3806,3793,3781,3771,3762,3753,3742,3729,3714,3700,3686,3677,3670,3666,
+3662,3659,3656,3655,3656,3660,3664,3665,3662,3652,3639,3625,3613,3605,3601,3597,3593,3587,3581,3575,3572,
+3569,3566,3559,3549,3536,3521,3507,3494,3483,3473,3465,3459,3456,3459,3464,3469,3471,3469,3465,3463,3469,
+3484,3508,3537,3564,3586,3602,3611,3618,3620,3619,3614,3604,3593,3584,3579,3579,3579,3574,3556,3527,3489,
+3452,3424,3409,3408,3416,3428,3439,3444,3443,3434,3418,3392,3359,3321,3282,3248,3220,3198,3179,3160,3139,
+3118,3102,3092,3088,3084,3072,3048,3009,2962,2917,2881,2861,2852,2849,2842,2825,2796,2759,2716,2669,2618,
+2558,2489,2411,2329,2248,2176,2115,2064,2021,1982,1948,1918,1894,1878,1867,1856,1840,1814,1780,1741,1702,
+1669,1645,1631,1623,1616,1607,1593,1573,1547,1518,1487,1456,1428,1403,1381,1361,1341,1320,1298,1273,1245,
+1215,1183,1150,1116,1081,1046,1014,983,954,927,899,869,836,802,765,728,691,656,622,591,563,
+535,508,479,448,414,378,344,310,278,247,214,177,136,92,48,7,-27,-57,-82,-105,-128,
+-152,-176,-202,-230,-260,-292,-328,-364,-401,-436,-468,-499,-530,-561,-593,-625,-656,-683,-708,-731,-755,
+-783,-814,-846,-878,-908,-934,-957,-979,-1004,-1033,-1066,-1103,-1141,-1177,-1211,-1242,-1270,-1298,-1327,-1356,-1387,
+-1418,-1451,-1483,-1516,-1547,-1577,-1604,-1630,-1654,-1679,-1704,-1731,-1758,-1786,-1812,-1837,-1859,-1879,-1900,-1921,-1944,
+-1967,-1990,-2013,-2035,-2056,-2076,-2097,-2116,-2134,-2152,-2170,-2188,-2206,-2225,-2244,-2263,-2280,-2297,-2313,-2330,-2347,
+-2364,-2380,-2395,-2410,-2424,-2441,-2459,-2477,-2494,-2508,-2519,-2528,-2538,-2551,-2567,-2584,-2600,-2613,-2620,-2625,-2629,
+-2635,-2642,-2650,-2657,-2662,-2664,-2666,-2668,-2672,-2677,-2680,-2683,-2683,-2683,-2683,-2685,-2688,-2690,-2690,-2687,-2682,
+-2676,-2672,-2669,-2668,-2666,-2664,-2663,-2663,-2665,-2668,-2671,-2672,-2670,-2666,-2663,-2663,-2666,-2670,-2673,-2671,-2664,
+-2654,-2643,-2634,-2629,-2627,-2628,-2629,-2629,-2627,-2620,-2608,-2589,-2564,-2536,-2509,-2487,-2472,-2461,-2452,-2442,-2431,
+-2420,-2413,-2411,-2414,-2416,-2412,-2399,-2381,-2362,-2349,-2347,-2353,-2361,-2365,-2360,-2347,-2331,-2320,-2320,-2331,-2349,
+-2371,-2391,-2406,-2415,-2418,-2414,-2405,-2391,-2379,-2375,-2382,-2401,-2427,-2452,-2469,-2477,-2479,-2481,-2487,-2497,-2507,
+-2510,-2506,-2499,-2498,-2508,-2529,-2552,-2567,-2567,-2559,-2564,-2602,-2686,-2810,-2943,-3046,-3082,-3039,-2932,-2802,-2694,
+-2643,-2656,-2717,-2795,-2861,-2898,-2908,-2905,-2905,-2919,-2949,-2990,-3034,-3078,-3120,-3161,-3200,-3236,-3268,-3292,-3313,
+-3334,-3357,-3385,-3413,-3438,-3454,-3463,-3468,-3475,-3488,-3509,-3533,-3559,-3582,-3602,-3621,-3640,-3660,-3680,-3697,-3709,
+-3718,-3725,-3734,-3747,-3767,-3789,-3812,-3832,-3847,-3858,-3865,-3870,-3875,-3880,-3886,-3893,-3901,-3907,-3912,-3913,-3912,
+-3909,-3906,-3904,-3905,-3906,-3907,-3905,-3903,-3900,-3899,-3900,-3903,-3908,-3912,-3917,-3920,-3924,-3929,-3935,-3941,-3947,
+-3950,-3951,-3950,-3949,-3948,-3947,-3946,-3944,-3940,-3934,-3926,-3918,-3910,-3904,-3899,-3895,-3891,-3889,-3887,-3885,-3883,
+-3880,-3876,-3873,-3869,-3865,-3860,-3855,-3849,-3840,-3829,-3816,-3801,-3785,-3768,-3752,-3736,-3721,-3706,-3691,-3677,-3663,
+-3651,-3641,-3633,-3625,-3618,-3611,-3601,-3590,-3576,-3561,-3545,-3528,-3513,-3499,-3485,-3471,-3457,-3442,-3426,-3409,-3390,
+-3372,-3354,-3337,-3321,-3306,-3290,-3274,-3258,-3240,-3223,-3206,-3190,-3174,-3160,-3146,-3133,-3119,-3106,-3092,-3078,-3062,
+-3044,-3026,-3008,-2990,-2974,-2961,-2949,-2938,-2926,-2912,-2896,-2878,-2860,-2842,-2825,-2810,-2797,-2783,-2769,-2754,-2740,
+-2726,-2715,-2706,-2699,-2695,-2692,-2688,-2682,-2673,-2662,-2649,-2636,-2623,-2611,-2601,-2592,-2584,-2574,-2562,-2549,-2535,
+-2522,-2510,-2500,-2493,-2488,-2483,-2477,-2472,-2466,-2462,-2460,-2459,-2458,-2457,-2455,-2451,-2446,-2442,-2439,-2438,-2438,
+-2439,-2439,-2437,-2433,-2427,-2419,-2409,-2396,-2380,-2360,-2338,-2315,-2292,-2270,-2250,-2233,-2218,-2204,-2190,-2178,-2167,
+-2158,-2151,-2145,-2140,-2136,-2134,-2132,-2132,-2132,-2133,-2133,-2132,-2129,-2125,-2121,-2116,-2112,-2107,-2103,-2098,-2093,
+-2087,-2080,-2073,-2065,-2058,-2051,-2044,-2038,-2032,-2026,-2020,-2014,-2009,-2004,-2000,-1997,-1993,-1987,-1978,-1967,-1953,
+-1939,-1927,-1916,-1907,-1900,-1893,-1886,-1879,-1870,-1861,-1853,-1844,-1836,-1829,-1822,-1817,-1814,-1813,-1816,-1821,-1829,
+-1839,-1848,-1857,-1863,-1864,-1860,-1850,-1835,-1817,-1798,-1780,-1763,-1750,-1738,-1728,-1715,-1700,-1680,-1658,-1634,-1614,
+-1598,-1589,-1587,-1590,-1596,-1603,-1609,-1615,-1621,-1626,-1630,-1632,-1631,-1625,-1617,-1608,-1601,-1598,-1600,-1604,-1609,
+-1612,-1610,-1603,-1594,-1583,-1573,-1565,-1559,-1555,-1553,-1553,-1553,-1553,-1552,-1549,-1543,-1536,-1529,-1522,-1519,-1519,
+-1521,-1523,-1524,-1523,-1520,-1514,-1507,-1500,-1490,-1478,-1462,-1443,-1421,-1398,-1377,-1358,-1344,-1333,-1324,-1315,-1305,
+-1294,-1281,-1269,-1258,-1247,-1239,-1231,-1223,-1217,-1211,-1205,-1199,-1193,-1185,-1176,-1165,-1153,-1141,-1131,-1122,-1117,
+-1113,-1112,-1112,-1114,-1117,-1119,-1120,-1117,-1109,-1096,-1079,-1059,-1036,-1012,-989,-968,-951,-939,-932,-929,-928,
+-923,-913,-896,-873,-847,-824,-804,-789,-776,-762,-747,-730,-713,-698,-686,-676,-666,-651,-631,-605,-576,
+-547,-519,-495,-470,-445,-416,-385,-353,-324,-300,-280,-265,-252,-237,-219,-197,-172,-145,-119,-93,-69,
+-46,-24,-3,18,40,62,86,111,136,162,187,213,239,265,292,319,345,368,389,410,431,
+455,484,514,545,572,593,607,616,623,631,645,663,684,702,715,720,717,711,708,711,727,
+755,797,852,920,1001,1092,1190,1286,1369,1429,1458,1455,1426,1385,1349,1328,1329,1350,1383,1416,1442,
+1459,1468,1476,1488,1505,1528,1551,1572,1588,1601,1614,1630,1651,1678,1709,1741,1771,1798,1823,1844,1864,
+1880,1894,1905,1914,1923,1934,1949,1965,1980,1989,1991,1984,1970,1951,1930,1909,1888,1865,1841,1818,1799,
+1790,1793,1808,1832,1857,1879,1892,1892,1880,1856,1825,1793,1764,1743,1736,1742,1758,1778,1795,1806,1809,
+1807,1808,1816,1835,1859,1883,1898,1900,1888,1868,1847,1832,1826,1829,1835,1840,1841,1838,1833,1826,1818,
+1810,1800,1788,1776,1767,1763,1767,1778,1793,1809,1823,1835,1845,1856,1871,1888,1907,1923,1934,1937,1933,
+1927,1921,1923,1932,1950,1972,1995,2014,2026,2032,2034,2035,2040,2049,2062,2077,2094,2110,2125,2139,2153,
+2168,2185,2203,2221,2239,2255,2268,2276,2279,2279,2276,2273,2272,2272,2271,2268,2259,2246,2229,2211,2193,
+2176,2157,2131,2092,2033,1945,1821,1657,1454,1226,993,786,638,577,615,745,940,1164,1379,1558,1688,
+1774,1827,1864,1895,1925,1952,1974,1989,1996,1999,2001,2002,2002,2000,1996,1990,1986,1984,1987,1995,2005,
+2017,2031,2046,2063,2081,2098,2111,2119,2121,2118,2114,2111,2113,2117,2123,2129,2133,2136,2141,2149,2160,
+2172,2183,2191,2195,2199,2207,2219,2236,2256,2274,2289,2300,2310,2324,2344,2370,2397,2420,2435,2441,2441,
+2439,2440,2446,2455,2465,2473,2477,2478,2479,2481,2483,2483,2480,2471,2457,2441,2424,2408,2395,2383,2374,
+2365,2357,2350,2344,2339,2332,2325,2314,2262,2250,2237,2223,2210,2199,2191,2188,2191,2199,2208,2216,2219,
+2214,2202,2184,2164,2143,2124,2108,2093,2080,2068,2056,2044,2031,2017,2002,1987,1972,1959,1950,1944,1943,
+1945,1951,1959,1969,1979,1990,2000,2008,2013,2017,2018,2020,2025,2033,2047,2065,2087,2111,2134,2154,2172,
+2188,2206,2230,2260,2298,2339,2379,2415,2443,2464,2481,2498,2517,2541,2568,2596,2622,2643,2661,2675,2689,
+2705,2723,2742,2760,2776,2788,2797,2804,2813,2826,2845,2867,2888,2904,2912,2911,2906,2900,2898,2903,2914,
+2926,2937,2944,2946,2947,2948,2950,2955,2961,2969,2979,2992,3010,3031,3056,3081,3104,3124,3142,3158,3176,
+3197,3220,3244,3270,3296,3322,3346,3368,3384,3395,3400,3402,3403,3409,3419,3434,3452,3472,3491,3509,3527,
+3545,3565,3586,3607,3627,3646,3664,3683,3703,3726,3750,3774,3797,3819,3838,3852,3862,3868,3873,3877,3883,
+3890,3898,3904,3907,3906,3902,3898,3897,3899,3904,3910,3914,3915,3914,3912,3911,3914,3918,3922,3925,3926,
+3926,3926,3926,3925,3923,3919,3912,3903,3894,3887,3881,3876,3869,3859,3846,3830,3814,3800,3787,3776,3765,
+3755,3745,3737,3729,3720,3708,3691,3672,3651,3633,3621,3616,3617,3622,3626,3628,3629,3630,3631,3633,3632,
+3628,3618,3604,3588,3575,3566,3561,3560,3559,3558,3555,3552,3549,3546,3541,3534,3523,3510,3495,3482,3472,
+3463,3457,3453,3451,3451,3454,3458,3461,3461,3458,3454,3452,3456,3467,3483,3500,3514,3523,3525,3524,3520,
+3513,3503,3488,3470,3453,3442,3440,3449,3464,3475,3477,3466,3445,3420,3401,3393,3397,3408,3420,3428,3427,
+3418,3401,3377,3347,3311,3273,3235,3202,3176,3157,3142,3128,3113,3096,3081,3070,3063,3056,3044,3023,2991,
+2953,2915,2886,2868,2859,2853,2843,2824,2796,2762,2725,2689,2650,2604,2546,2475,2395,2311,2231,2160,2097,
+2042,1991,1943,1899,1863,1838,1823,1814,1805,1792,1770,1740,1705,1672,1645,1627,1617,1612,1607,1597,1579,
+1554,1522,1487,1452,1420,1393,1369,1347,1325,1301,1274,1246,1217,1187,1158,1129,1099,1068,1038,1007,978,
+951,924,898,870,841,809,775,738,701,663,625,589,555,524,494,464,433,398,362,325,290,
+255,222,188,152,111,68,25,-13,-47,-74,-96,-116,-138,-162,-190,-220,-251,-284,-317,-351,-385,
+-420,-454,-487,-518,-548,-577,-605,-632,-659,-684,-709,-734,-762,-791,-823,-856,-887,-916,-941,-965,-990,
+-1017,-1047,-1081,-1116,-1150,-1183,-1214,-1243,-1272,-1302,-1333,-1364,-1396,-1428,-1460,-1491,-1522,-1551,-1579,-1605,-1630,
+-1653,-1678,-1705,-1733,-1762,-1791,-1817,-1841,-1862,-1882,-1904,-1927,-1951,-1976,-2000,-2023,-2044,-2064,-2085,-2105,-2125,
+-2145,-2164,-2182,-2200,-2219,-2238,-2257,-2275,-2293,-2309,-2325,-2342,-2359,-2376,-2392,-2407,-2421,-2435,-2450,-2468,-2487,
+-2506,-2522,-2537,-2549,-2560,-2572,-2586,-2601,-2615,-2626,-2635,-2642,-2648,-2655,-2663,-2671,-2677,-2682,-2685,-2689,-2693,
+-2699,-2706,-2713,-2717,-2720,-2721,-2723,-2725,-2727,-2729,-2729,-2727,-2724,-2721,-2719,-2718,-2716,-2714,-2711,-2709,-2707,
+-2707,-2709,-2711,-2711,-2711,-2709,-2707,-2708,-2710,-2712,-2712,-2708,-2701,-2692,-2682,-2673,-2668,-2666,-2666,-2668,-2669,
+-2669,-2665,-2654,-2636,-2612,-2584,-2558,-2537,-2522,-2512,-2503,-2493,-2480,-2468,-2460,-2458,-2459,-2461,-2458,-2446,-2428,
+-2410,-2396,-2393,-2398,-2407,-2413,-2410,-2398,-2382,-2368,-2360,-2363,-2375,-2393,-2413,-2433,-2448,-2456,-2455,-2445,-2429,
+-2415,-2408,-2413,-2431,-2455,-2479,-2496,-2505,-2509,-2513,-2522,-2534,-2544,-2548,-2546,-2542,-2544,-2556,-2578,-2599,-2610,
+-2609,-2604,-2617,-2670,-2771,-2907,-3043,-3137,-3155,-3088,-2960,-2818,-2710,-2669,-2700,-2777,-2864,-2929,-2957,-2954,-2939,
+-2933,-2947,-2981,-3026,-3071,-3113,-3151,-3190,-3233,-3278,-3320,-3354,-3379,-3398,-3415,-3436,-3462,-3489,-3514,-3533,-3547,
+-3559,-3574,-3594,-3619,-3645,-3668,-3688,-3704,-3719,-3734,-3750,-3766,-3780,-3792,-3802,-3812,-3827,-3845,-3866,-3887,-3905,
+-3919,-3928,-3934,-3940,-3946,-3954,-3961,-3968,-3973,-3976,-3977,-3979,-3980,-3982,-3984,-3985,-3984,-3981,-3978,-3974,-3972,
+-3972,-3974,-3978,-3982,-3986,-3990,-3994,-3999,-4006,-4014,-4020,-4024,-4025,-4023,-4019,-4015,-4012,-4011,-4011,-4010,-4008,
+-4003,-3997,-3988,-3979,-3970,-3962,-3955,-3950,-3946,-3944,-3944,-3945,-3945,-3944,-3941,-3937,-3932,-3927,-3921,-3916,-3910,
+-3902,-3891,-3879,-3865,-3850,-3835,-3819,-3804,-3789,-3774,-3758,-3742,-3726,-3710,-3694,-3680,-3668,-3658,-3650,-3644,-3638,
+-3633,-3625,-3615,-3601,-3585,-3567,-3549,-3531,-3514,-3498,-3482,-3466,-3448,-3429,-3409,-3390,-3372,-3355,-3340,-3325,-3310,
+-3294,-3277,-3259,-3242,-3226,-3210,-3196,-3183,-3170,-3157,-3142,-3126,-3109,-3090,-3070,-3050,-3031,-3014,-3000,-2988,-2979,
+-2970,-2960,-2948,-2934,-2917,-2900,-2882,-2865,-2848,-2833,-2817,-2802,-2786,-2771,-2757,-2745,-2736,-2728,-2722,-2716,-2708,
+-2700,-2690,-2680,-2670,-2661,-2652,-2644,-2636,-2628,-2619,-2609,-2599,-2589,-2579,-2570,-2562,-2554,-2546,-2538,-2529,-2521,
+-2513,-2507,-2504,-2504,-2506,-2508,-2508,-2506,-2501,-2495,-2489,-2485,-2484,-2485,-2487,-2489,-2490,-2490,-2488,-2484,-2478,
+-2468,-2455,-2436,-2414,-2388,-2363,-2339,-2317,-2298,-2282,-2267,-2252,-2239,-2227,-2218,-2210,-2203,-2198,-2194,-2190,-2187,
+-2185,-2184,-2183,-2182,-2179,-2176,-2171,-2165,-2160,-2155,-2150,-2144,-2138,-2131,-2123,-2115,-2106,-2099,-2091,-2084,-2077,
+-2068,-2060,-2050,-2042,-2035,-2029,-2025,-2021,-2018,-2014,-2009,-2003,-1996,-1989,-1981,-1972,-1963,-1953,-1942,-1929,-1915,
+-1901,-1887,-1873,-1863,-1854,-1848,-1845,-1842,-1840,-1837,-1835,-1834,-1836,-1842,-1850,-1860,-1870,-1877,-1880,-1880,-1875,
+-1868,-1859,-1850,-1842,-1835,-1829,-1824,-1817,-1809,-1797,-1782,-1763,-1743,-1723,-1706,-1694,-1686,-1683,-1685,-1691,-1700,
+-1712,-1725,-1737,-1744,-1746,-1740,-1729,-1714,-1699,-1687,-1679,-1674,-1672,-1669,-1664,-1657,-1649,-1640,-1631,-1623,-1617,
+-1613,-1609,-1607,-1605,-1604,-1601,-1597,-1590,-1581,-1572,-1565,-1561,-1559,-1559,-1560,-1559,-1557,-1552,-1545,-1536,-1526,
+-1513,-1498,-1480,-1460,-1439,-1418,-1398,-1381,-1367,-1356,-1346,-1337,-1328,-1318,-1308,-1298,-1288,-1278,-1268,-1259,-1250,
+-1241,-1233,-1226,-1220,-1215,-1210,-1204,-1195,-1185,-1174,-1162,-1151,-1142,-1134,-1129,-1126,-1123,-1120,-1115,-1108,-1099,
+-1088,-1075,-1059,-1041,-1022,-1000,-978,-957,-939,-927,-921,-919,-920,-919,-913,-901,-883,-861,-838,-817,-797,
+-779,-762,-743,-724,-705,-690,-677,-667,-658,-648,-635,-618,-599,-578,-555,-531,-504,-473,-439,-402,-367,
+-334,-308,-288,-273,-260,-245,-228,-206,-180,-153,-128,-104,-85,-68,-51,-34,-14,8,34,61,87,
+112,136,159,183,209,237,265,292,316,338,357,377,398,424,455,490,526,559,586,607,621,
+633,645,662,685,714,746,776,799,814,819,818,813,808,808,814,830,858,902,963,1040,1129,
+1218,1296,1351,1379,1380,1363,1341,1325,1324,1339,1366,1398,1429,1456,1479,1501,1525,1551,1577,1600,1618,
+1632,1643,1656,1673,1696,1723,1752,1780,1807,1832,1858,1885,1912,1936,1956,1968,1972,1971,1966,1963,1963,
+1967,1975,1984,1992,1997,1997,1989,1973,1948,1915,1879,1847,1823,1815,1822,1842,1869,1896,1916,1926,1925,
+1914,1895,1872,1847,1825,1807,1797,1794,1797,1804,1809,1812,1812,1812,1816,1827,1846,1868,1888,1899,1900,
+1890,1875,1859,1848,1844,1846,1850,1854,1856,1855,1853,1849,1843,1835,1825,1814,1803,1794,1791,1793,1802,
+1814,1827,1839,1851,1862,1873,1887,1904,1922,1939,1953,1961,1964,1962,1960,1962,1969,1983,2002,2021,2036,
+2045,2049,2050,2054,2061,2073,2088,2104,2117,2128,2138,2149,2162,2178,2196,2214,2231,2246,2260,2274,2288,
+2300,2309,2314,2316,2314,2310,2307,2304,2302,2298,2290,2278,2259,2233,2198,2157,2107,2049,1977,1886,1767,
+1614,1427,1217,1005,824,704,669,727,866,1057,1267,1460,1616,1728,1802,1850,1884,1912,1935,1953,1964,
+1969,1971,1975,1982,1991,1999,2003,2002,1997,1990,1987,1988,1995,2006,2020,2034,2049,2064,2079,2092,2101,
+2107,2108,2106,2105,2106,2109,2115,2121,2125,2129,2132,2137,2143,2151,2159,2167,2173,2179,2188,2202,2220,
+2239,2258,2273,2284,2295,2309,2329,2356,2385,2410,2427,2431,2427,2419,2413,2414,2423,2436,2449,2457,2460,
+2457,2450,2441,2431,2418,2403,2386,2367,2348,2332,2319,2311,2306,2304,2302,2300,2296,2290,2283,2273,2262,
+2206,2196,2188,2181,2173,2166,2160,2157,2156,2158,2162,2165,2166,2163,2156,2145,2131,2116,2100,2084,2067,
+2050,2034,2016,1999,1982,1965,1951,1939,1930,1925,1923,1922,1923,1925,1928,1934,1942,1951,1960,1967,1971,
+1974,1975,1978,1983,1992,2004,2020,2039,2059,2080,2100,2119,2136,2154,2173,2197,2226,2262,2301,2340,2373,
+2399,2419,2436,2453,2474,2500,2530,2558,2583,2603,2619,2635,2652,2672,2693,2714,2729,2739,2744,2749,2757,
+2773,2795,2819,2841,2855,2858,2852,2844,2839,2842,2853,2870,2887,2900,2906,2906,2904,2903,2907,2913,2922,
+2930,2938,2946,2959,2978,3002,3031,3059,3084,3104,3121,3135,3152,3171,3194,3220,3246,3271,3294,3314,3329,
+3341,3350,3355,3361,3367,3377,3390,3406,3424,3441,3457,3473,3490,3508,3526,3544,3562,3579,3596,3615,3635,
+3658,3682,3707,3731,3753,3773,3791,3805,3816,3824,3831,3836,3843,3850,3857,3863,3864,3861,3856,3849,3846,
+3845,3849,3854,3860,3864,3867,3869,3872,3877,3881,3884,3886,3886,3886,3886,3886,3885,3882,3875,3866,3856,
+3847,3841,3837,3833,3825,3814,3798,3781,3765,3752,3742,3734,3726,3718,3708,3699,3689,3679,3665,3648,3627,
+3606,3588,3577,3576,3582,3591,3599,3604,3604,3602,3600,3599,3597,3593,3585,3573,3559,3547,3537,3532,3531,
+3531,3531,3530,3527,3524,3519,3513,3505,3494,3482,3471,3461,3454,3450,3447,3445,3442,3440,3439,3439,3439,
+3439,3438,3438,3438,3440,3442,3442,3438,3430,3418,3404,3390,3377,3364,3346,3324,3297,3271,3254,3252,3265,
+3289,3316,3337,3345,3340,3329,3318,3314,3318,3327,3336,3340,3337,3328,3312,3293,3269,3240,3210,3178,3151,
+3130,3116,3107,3100,3091,3079,3065,3050,3036,3023,3007,2986,2960,2930,2901,2879,2866,2859,2853,2842,2821,
+2791,2755,2720,2688,2657,2625,2585,2534,2472,2402,2330,2259,2192,2127,2062,1997,1934,1877,1832,1800,1780,
+1768,1757,1742,1720,1692,1664,1639,1622,1614,1612,1611,1603,1585,1556,1518,1476,1434,1398,1370,1347,1326,
+1304,1278,1249,1216,1183,1152,1124,1098,1073,1049,1024,1000,975,950,924,898,870,841,811,779,746,
+710,673,633,593,555,518,484,452,418,382,343,302,262,222,185,149,112,74,34,-4,-38,
+-68,-91,-110,-128,-148,-172,-201,-233,-268,-302,-335,-369,-402,-436,-468,-500,-530,-558,-584,-610,-635,
+-659,-684,-710,-737,-766,-797,-828,-860,-890,-918,-944,-971,-998,-1028,-1061,-1095,-1128,-1159,-1188,-1215,-1243,
+-1272,-1304,-1339,-1373,-1408,-1440,-1471,-1501,-1530,-1557,-1583,-1608,-1631,-1654,-1678,-1705,-1734,-1764,-1794,-1820,-1844,
+-1866,-1887,-1909,-1933,-1959,-1985,-2009,-2031,-2051,-2070,-2089,-2110,-2131,-2152,-2173,-2192,-2210,-2229,-2248,-2268,-2287,
+-2305,-2323,-2339,-2356,-2373,-2390,-2406,-2420,-2434,-2447,-2460,-2476,-2494,-2514,-2532,-2550,-2565,-2578,-2591,-2603,-2616,
+-2628,-2638,-2648,-2656,-2665,-2674,-2683,-2692,-2701,-2708,-2713,-2718,-2724,-2731,-2738,-2744,-2748,-2752,-2754,-2756,-2759,
+-2761,-2763,-2764,-2763,-2762,-2761,-2760,-2760,-2759,-2758,-2755,-2751,-2748,-2746,-2746,-2747,-2748,-2748,-2749,-2749,-2749,
+-2750,-2751,-2750,-2747,-2740,-2732,-2722,-2712,-2704,-2700,-2698,-2701,-2706,-2710,-2710,-2702,-2685,-2660,-2632,-2604,-2582,
+-2567,-2556,-2548,-2537,-2525,-2514,-2506,-2503,-2505,-2508,-2506,-2496,-2480,-2461,-2446,-2440,-2442,-2449,-2455,-2455,-2448,
+-2435,-2421,-2411,-2407,-2412,-2424,-2442,-2462,-2480,-2491,-2492,-2482,-2465,-2447,-2437,-2438,-2453,-2475,-2498,-2516,-2527,
+-2535,-2543,-2554,-2567,-2578,-2583,-2583,-2582,-2587,-2602,-2622,-2640,-2646,-2643,-2641,-2663,-2727,-2838,-2979,-3112,-3193,
+-3192,-3107,-2966,-2821,-2720,-2694,-2740,-2830,-2924,-2988,-3010,-3000,-2982,-2978,-2999,-3041,-3091,-3136,-3171,-3200,-3231,
+-3272,-3321,-3372,-3416,-3447,-3465,-3477,-3490,-3510,-3537,-3567,-3594,-3617,-3634,-3650,-3667,-3687,-3709,-3730,-3749,-3765,
+-3780,-3797,-3815,-3835,-3855,-3872,-3888,-3903,-3918,-3934,-3951,-3966,-3978,-3988,-3994,-4001,-4009,-4018,-4027,-4035,-4040,
+-4041,-4041,-4041,-4045,-4051,-4059,-4065,-4067,-4065,-4058,-4051,-4045,-4043,-4045,-4050,-4056,-4060,-4064,-4067,-4071,-4077,
+-4084,-4092,-4097,-4099,-4097,-4093,-4089,-4085,-4084,-4083,-4082,-4080,-4075,-4069,-4061,-4052,-4043,-4034,-4024,-4016,-4009,
+-4004,-4002,-4002,-4003,-4005,-4005,-4003,-4000,-3995,-3989,-3983,-3977,-3970,-3961,-3952,-3941,-3929,-3917,-3903,-3888,-3872,
+-3854,-3836,-3819,-3801,-3784,-3767,-3750,-3733,-3719,-3706,-3697,-3691,-3688,-3686,-3682,-3675,-3663,-3646,-3627,-3606,-3586,
+-3567,-3550,-3534,-3517,-3499,-3479,-3459,-3438,-3419,-3402,-3386,-3372,-3358,-3343,-3327,-3311,-3294,-3278,-3263,-3249,-3235,
+-3222,-3207,-3191,-3174,-3155,-3136,-3117,-3098,-3079,-3061,-3045,-3030,-3018,-3008,-2999,-2990,-2979,-2966,-2951,-2934,-2917,
+-2901,-2885,-2869,-2854,-2838,-2822,-2806,-2792,-2780,-2770,-2760,-2751,-2742,-2732,-2723,-2714,-2706,-2698,-2690,-2683,-2676,
+-2668,-2661,-2653,-2646,-2638,-2631,-2623,-2616,-2609,-2601,-2593,-2585,-2575,-2567,-2560,-2555,-2553,-2553,-2554,-2554,-2552,
+-2548,-2542,-2536,-2532,-2531,-2532,-2534,-2535,-2536,-2536,-2536,-2537,-2536,-2534,-2528,-2516,-2499,-2478,-2456,-2434,-2415,
+-2398,-2383,-2368,-2353,-2338,-2322,-2308,-2296,-2285,-2275,-2266,-2257,-2248,-2241,-2236,-2233,-2230,-2227,-2223,-2219,-2213,
+-2209,-2205,-2201,-2198,-2193,-2186,-2177,-2168,-2158,-2149,-2139,-2130,-2120,-2110,-2098,-2088,-2078,-2069,-2061,-2055,-2048,
+-2042,-2037,-2032,-2030,-2027,-2025,-2021,-2016,-2008,-1997,-1986,-1973,-1959,-1946,-1933,-1921,-1912,-1905,-1903,-1902,-1902,
+-1899,-1894,-1885,-1875,-1865,-1857,-1853,-1854,-1856,-1861,-1865,-1869,-1873,-1876,-1878,-1880,-1880,-1879,-1877,-1875,-1874,
+-1874,-1874,-1871,-1865,-1855,-1842,-1827,-1812,-1800,-1791,-1787,-1788,-1791,-1798,-1805,-1812,-1817,-1819,-1816,-1810,-1802,
+-1793,-1785,-1778,-1771,-1765,-1757,-1748,-1737,-1726,-1714,-1703,-1693,-1684,-1676,-1669,-1664,-1659,-1655,-1650,-1644,-1636,
+-1628,-1620,-1614,-1610,-1608,-1607,-1606,-1604,-1600,-1595,-1587,-1576,-1563,-1547,-1529,-1509,-1488,-1469,-1450,-1433,-1418,
+-1402,-1387,-1372,-1358,-1347,-1338,-1332,-1328,-1323,-1318,-1310,-1300,-1289,-1277,-1266,-1256,-1249,-1244,-1241,-1237,-1231,
+-1223,-1212,-1199,-1186,-1173,-1161,-1152,-1143,-1133,-1122,-1110,-1097,-1083,-1071,-1059,-1048,-1036,-1021,-1002,-981,-958,
+-937,-919,-908,-902,-900,-899,-895,-887,-874,-858,-839,-819,-799,-779,-760,-741,-722,-705,-689,-675,-663,
+-652,-642,-631,-620,-607,-592,-573,-550,-523,-491,-456,-420,-385,-354,-328,-307,-290,-274,-257,-239,-217,
+-193,-169,-146,-126,-109,-95,-81,-64,-43,-18,9,39,66,91,114,136,158,183,210,239,267,
+292,316,337,358,381,407,436,469,503,538,570,599,623,644,663,683,706,734,768,803,839,
+871,898,918,933,943,949,950,948,946,950,965,998,1049,1117,1191,1262,1317,1351,1363,1361,1352,
+1347,1350,1365,1388,1417,1448,1480,1512,1544,1574,1603,1628,1650,1668,1686,1706,1729,1755,1782,1807,1831,
+1851,1871,1892,1916,1941,1964,1984,1996,1999,1994,1984,1973,1965,1961,1962,1969,1979,1989,1996,1997,1989,
+1973,1949,1922,1899,1883,1877,1882,1894,1909,1921,1928,1930,1926,1920,1913,1905,1898,1890,1883,1876,1871,
+1866,1862,1858,1855,1854,1856,1863,1875,1890,1905,1914,1917,1912,1903,1893,1886,1883,1884,1888,1892,1895,
+1896,1894,1891,1886,1879,1869,1858,1846,1835,1826,1822,1821,1824,1829,1835,1842,1849,1856,1865,1875,1888,
+1903,1920,1937,1952,1964,1973,1978,1984,1991,2001,2013,2025,2035,2043,2049,2055,2064,2076,2090,2105,2118,
+2127,2135,2144,2156,2172,2190,2208,2223,2235,2245,2257,2274,2295,2318,2339,2353,2359,2357,2350,2341,2332,
+2324,2315,2304,2291,2274,2252,2225,2189,2143,2086,2016,1932,1830,1705,1555,1381,1195,1016,872,790,788,
+868,1015,1200,1391,1559,1688,1776,1832,1868,1894,1917,1935,1948,1955,1960,1964,1972,1983,1995,2003,2003,
+1996,1985,1974,1969,1971,1979,1992,2006,2020,2034,2048,2063,2075,2085,2091,2094,2095,2098,2103,2110,2118,
+2124,2126,2126,2124,2123,2127,2134,2143,2154,2164,2175,2186,2198,2212,2226,2240,2252,2266,2283,2305,2331,
+2359,2382,2395,2397,2390,2379,2371,2372,2383,2399,2415,2425,2425,2416,2400,2382,2364,2348,2335,2322,2309,
+2295,2284,2275,2269,2267,2265,2263,2259,2251,2241,2228,2216,2206,2156,2151,2148,2146,2143,2141,2137,2133,
+2130,2126,2121,2115,2109,2102,2094,2085,2075,2064,2052,2038,2023,2007,1991,1975,1959,1945,1934,1927,1926,
+1928,1933,1937,1939,1937,1933,1928,1926,1927,1931,1937,1943,1947,1950,1952,1957,1965,1976,1989,2003,2018,
+2034,2051,2069,2089,2110,2132,2156,2181,2211,2243,2277,2309,2336,2357,2373,2388,2407,2433,2465,2501,2535,
+2562,2582,2595,2608,2624,2645,2667,2687,2700,2706,2707,2710,2721,2741,2768,2795,2813,2817,2808,2793,2780,
+2778,2790,2813,2839,2861,2872,2873,2870,2867,2871,2881,2895,2907,2915,2920,2925,2935,2954,2981,3014,3045,
+3071,3090,3104,3117,3132,3152,3177,3204,3231,3254,3272,3286,3296,3303,3310,3317,3325,3336,3349,3363,3379,
+3396,3412,3428,3445,3461,3478,3494,3509,3522,3535,3549,3566,3587,3610,3635,3659,3681,3702,3720,3736,3751,
+3764,3774,3784,3792,3800,3808,3816,3822,3825,3824,3820,3815,3810,3808,3809,3811,3814,3817,3819,3823,3828,
+3833,3839,3843,3846,3847,3849,3850,3851,3851,3848,3841,3831,3821,3812,3806,3801,3795,3786,3772,3755,3738,
+3724,3714,3707,3702,3694,3683,3670,3655,3641,3628,3615,3600,3584,3568,3556,3549,3550,3556,3565,3572,3574,
+3573,3569,3566,3565,3564,3562,3557,3548,3536,3524,3515,3509,3507,3506,3506,3505,3503,3499,3493,3486,3478,
+3468,3458,3449,3443,3440,3438,3437,3433,3428,3422,3415,3411,3410,3410,3413,3414,3413,3407,3395,3376,3351,
+3322,3294,3271,3254,3243,3234,3220,3197,3167,3135,3109,3099,3107,3130,3161,3190,3208,3214,3209,3201,3195,
+3194,3196,3199,3200,3198,3193,3187,3179,3169,3154,3136,3115,3095,3079,3070,3067,3066,3064,3058,3048,3035,
+3022,3007,2991,2970,2944,2915,2886,2863,2848,2840,2835,2827,2811,2784,2751,2714,2681,2651,2624,2597,2564,
+2523,2475,2420,2362,2301,2236,2165,2090,2012,1936,1867,1812,1771,1742,1720,1701,1679,1654,1629,1608,1596,
+1592,1596,1599,1594,1577,1545,1502,1452,1406,1366,1337,1316,1298,1278,1254,1223,1189,1154,1121,1093,1067,
+1045,1025,1005,986,965,943,918,891,861,829,797,766,734,701,666,629,590,551,513,478,443,
+408,369,327,281,235,190,149,111,76,42,7,-25,-55,-82,-103,-122,-140,-161,-185,-214,-247,
+-281,-315,-349,-382,-414,-445,-476,-506,-535,-562,-588,-614,-640,-666,-692,-720,-747,-776,-805,-836,-865,
+-893,-920,-946,-973,-1001,-1032,-1066,-1101,-1134,-1165,-1193,-1219,-1246,-1275,-1307,-1341,-1376,-1410,-1442,-1472,-1501,
+-1530,-1558,-1585,-1610,-1634,-1658,-1682,-1708,-1737,-1767,-1796,-1822,-1846,-1867,-1889,-1912,-1937,-1963,-1989,-2013,-2034,
+-2053,-2072,-2092,-2113,-2136,-2158,-2179,-2199,-2217,-2236,-2256,-2276,-2297,-2317,-2336,-2353,-2370,-2387,-2403,-2420,-2435,
+-2449,-2463,-2476,-2491,-2507,-2524,-2542,-2559,-2575,-2591,-2605,-2619,-2633,-2645,-2656,-2666,-2675,-2683,-2693,-2704,-2715,
+-2726,-2736,-2746,-2753,-2760,-2766,-2771,-2774,-2777,-2779,-2782,-2784,-2788,-2791,-2794,-2795,-2795,-2794,-2794,-2794,-2795,
+-2795,-2794,-2792,-2789,-2786,-2785,-2784,-2785,-2786,-2787,-2787,-2787,-2786,-2786,-2785,-2785,-2783,-2779,-2773,-2764,-2753,
+-2743,-2735,-2732,-2734,-2741,-2748,-2753,-2749,-2734,-2711,-2682,-2654,-2631,-2616,-2605,-2597,-2588,-2577,-2565,-2557,-2554,
+-2555,-2558,-2557,-2550,-2536,-2518,-2502,-2492,-2489,-2492,-2496,-2499,-2497,-2491,-2481,-2470,-2462,-2458,-2462,-2472,-2488,
+-2504,-2517,-2521,-2514,-2498,-2480,-2468,-2467,-2477,-2497,-2518,-2537,-2552,-2563,-2575,-2588,-2601,-2611,-2616,-2618,-2620,
+-2629,-2645,-2664,-2677,-2679,-2673,-2671,-2698,-2769,-2887,-3032,-3164,-3241,-3232,-3138,-2991,-2841,-2739,-2714,-2762,-2854,
+-2950,-3016,-3041,-3036,-3025,-3031,-3063,-3115,-3171,-3218,-3250,-3271,-3294,-3327,-3373,-3424,-3471,-3504,-3524,-3533,-3543,
+-3560,-3587,-3619,-3652,-3679,-3700,-3714,-3727,-3741,-3757,-3776,-3795,-3814,-3833,-3855,-3880,-3906,-3931,-3954,-3974,-3990,
+-4004,-4017,-4028,-4038,-4045,-4052,-4058,-4065,-4075,-4086,-4097,-4104,-4106,-4104,-4100,-4100,-4104,-4113,-4124,-4133,-4138,
+-4136,-4130,-4123,-4119,-4118,-4122,-4127,-4132,-4135,-4136,-4138,-4140,-4145,-4152,-4157,-4161,-4161,-4159,-4157,-4156,-4156,
+-4156,-4156,-4154,-4149,-4141,-4133,-4125,-4118,-4110,-4103,-4094,-4085,-4077,-4070,-4066,-4064,-4064,-4063,-4061,-4059,-4055,
+-4051,-4047,-4042,-4036,-4028,-4020,-4011,-4002,-3993,-3984,-3972,-3957,-3940,-3920,-3899,-3879,-3860,-3844,-3829,-3814,-3798,
+-3782,-3768,-3756,-3746,-3739,-3733,-3727,-3718,-3706,-3691,-3674,-3656,-3639,-3622,-3606,-3590,-3572,-3553,-3532,-3511,-3489,
+-3469,-3450,-3433,-3418,-3404,-3390,-3376,-3360,-3345,-3330,-3315,-3301,-3287,-3272,-3256,-3238,-3218,-3199,-3180,-3163,-3146,
+-3130,-3114,-3097,-3081,-3065,-3052,-3041,-3031,-3021,-3010,-2997,-2983,-2967,-2951,-2936,-2921,-2906,-2891,-2876,-2860,-2845,
+-2832,-2819,-2808,-2798,-2787,-2776,-2765,-2754,-2744,-2736,-2728,-2721,-2715,-2709,-2703,-2697,-2690,-2682,-2674,-2665,-2657,
+-2650,-2644,-2639,-2634,-2629,-2623,-2617,-2612,-2608,-2605,-2603,-2601,-2597,-2592,-2586,-2581,-2577,-2576,-2576,-2576,-2576,
+-2575,-2573,-2572,-2572,-2573,-2574,-2572,-2567,-2557,-2545,-2532,-2520,-2510,-2500,-2491,-2480,-2466,-2450,-2433,-2416,-2400,
+-2384,-2369,-2354,-2339,-2324,-2312,-2302,-2294,-2288,-2282,-2275,-2268,-2260,-2254,-2250,-2246,-2243,-2239,-2234,-2226,-2217,
+-2208,-2198,-2189,-2179,-2169,-2158,-2147,-2136,-2128,-2119,-2111,-2102,-2091,-2080,-2070,-2061,-2056,-2052,-2048,-2044,-2037,
+-2029,-2020,-2011,-2004,-1998,-1993,-1988,-1981,-1975,-1971,-1968,-1968,-1967,-1964,-1957,-1946,-1930,-1914,-1897,-1884,-1874,
+-1868,-1865,-1865,-1868,-1873,-1881,-1889,-1896,-1900,-1901,-1899,-1896,-1896,-1898,-1903,-1908,-1913,-1914,-1912,-1907,-1902,
+-1896,-1891,-1887,-1882,-1875,-1867,-1858,-1848,-1841,-1835,-1833,-1835,-1839,-1846,-1853,-1860,-1863,-1862,-1858,-1849,-1838,
+-1824,-1809,-1793,-1778,-1763,-1749,-1737,-1726,-1718,-1710,-1702,-1694,-1685,-1677,-1669,-1664,-1660,-1657,-1655,-1652,-1649,
+-1646,-1641,-1634,-1624,-1611,-1593,-1572,-1549,-1528,-1510,-1494,-1480,-1465,-1448,-1429,-1409,-1390,-1376,-1367,-1363,-1362,
+-1362,-1359,-1352,-1342,-1330,-1317,-1305,-1294,-1287,-1281,-1277,-1272,-1266,-1258,-1247,-1234,-1219,-1204,-1190,-1175,-1161,
+-1146,-1129,-1112,-1095,-1081,-1071,-1065,-1060,-1055,-1046,-1031,-1009,-983,-956,-930,-909,-894,-883,-875,-868,-861,
+-852,-842,-829,-815,-799,-783,-766,-749,-732,-716,-701,-685,-670,-655,-641,-628,-617,-606,-593,-577,-556,
+-532,-503,-472,-441,-411,-384,-358,-334,-311,-290,-268,-248,-227,-206,-186,-167,-150,-136,-121,-106,-88,
+-65,-38,-9,20,48,71,92,112,133,155,181,209,238,266,292,317,342,367,392,419,448,
+479,513,550,587,623,656,686,712,737,763,792,825,862,900,939,976,1011,1043,1069,1087,1094,
+1091,1082,1074,1076,1096,1136,1193,1259,1320,1367,1395,1404,1401,1394,1392,1400,1417,1441,1470,1499,1527,
+1554,1581,1608,1635,1664,1693,1722,1752,1780,1807,1832,1854,1872,1888,1902,1917,1932,1949,1964,1978,1987,
+1992,1993,1991,1987,1984,1982,1982,1983,1985,1987,1988,1986,1980,1971,1961,1951,1943,1940,1939,1941,1942,
+1940,1936,1929,1921,1915,1912,1912,1914,1917,1919,1920,1919,1916,1910,1904,1897,1893,1893,1898,1908,1920,
+1933,1942,1945,1943,1938,1933,1930,1931,1934,1938,1941,1942,1941,1937,1932,1927,1920,1912,1903,1893,1884,
+1876,1869,1864,1860,1856,1852,1850,1850,1853,1857,1864,1873,1883,1896,1911,1927,1943,1958,1969,1976,1982,
+1987,1993,2002,2012,2024,2036,2049,2063,2078,2094,2107,2118,2124,2128,2134,2144,2160,2181,2202,2220,2233,
+2241,2248,2260,2279,2304,2331,2355,2370,2377,2377,2374,2368,2361,2349,2331,2309,2286,2267,2253,2242,2228,
+2200,2154,2087,2001,1901,1789,1663,1521,1363,1199,1046,931,879,904,1005,1161,1341,1511,1648,1744,1804,
+1840,1868,1894,1920,1943,1959,1967,1970,1974,1980,1987,1993,1993,1985,1971,1956,1944,1940,1944,1954,1966,
+1978,1991,2005,2021,2035,2048,2056,2059,2060,2061,2065,2073,2082,2090,2094,2092,2088,2084,2085,2092,2104,
+2117,2129,2136,2140,2143,2148,2156,2168,2185,2205,2228,2254,2282,2307,2327,2336,2335,2326,2314,2306,2307,
+2318,2335,2350,2358,2354,2340,2318,2297,2280,2270,2266,2265,2264,2261,2256,2251,2246,2241,2236,2229,2219,
+2205,2190,2176,2164,2156,2116,2115,2114,2113,2111,2108,2104,2100,2094,2085,2073,2059,2043,2028,2015,2005,
+1996,1989,1981,1973,1964,1953,1943,1932,1922,1914,1910,1912,1919,1931,1943,1952,1954,1949,1939,1928,1919,
+1915,1917,1922,1929,1934,1939,1945,1952,1961,1972,1985,1996,2007,2020,2034,2053,2075,2101,2128,2156,2185,
+2214,2245,2273,2298,2317,2329,2338,2349,2367,2396,2434,2476,2514,2543,2561,2570,2579,2591,2609,2631,2651,
+2663,2668,2669,2673,2686,2710,2741,2770,2787,2787,2772,2753,2739,2739,2756,2784,2813,2834,2843,2844,2842,
+2844,2854,2871,2889,2902,2907,2907,2908,2916,2935,2965,3000,3033,3058,3075,3087,3098,3114,3135,3162,3190,
+3216,3236,3250,3259,3266,3271,3277,3285,3295,3306,3320,3334,3350,3366,3383,3400,3417,3434,3449,3462,3473,
+3483,3492,3503,3518,3538,3561,3585,3609,3631,3651,3669,3685,3699,3713,3724,3734,3743,3752,3761,3771,3779,
+3785,3788,3787,3784,3781,3778,3776,3775,3774,3774,3774,3777,3781,3786,3792,3797,3800,3803,3804,3807,3809,
+3810,3808,3804,3797,3788,3780,3773,3767,3758,3747,3733,3716,3701,3690,3682,3677,3672,3663,3649,3631,3612,
+3594,3579,3567,3557,3549,3541,3535,3532,3532,3535,3538,3540,3539,3536,3534,3532,3533,3534,3532,3528,3519,
+3507,3496,3487,3482,3481,3481,3481,3480,3478,3473,3467,3459,3451,3441,3433,3426,3422,3421,3420,3419,3415,
+3408,3399,3390,3384,3381,3381,3382,3381,3373,3358,3333,3300,3262,3224,3192,3171,3163,3164,3167,3165,3151,
+3125,3092,3061,3040,3036,3049,3071,3095,3112,3117,3112,3101,3088,3078,3072,3068,3065,3062,3061,3061,3063,
+3063,3062,3056,3048,3037,3029,3024,3024,3025,3027,3026,3024,3020,3016,3012,3003,2988,2963,2931,2895,2862,
+2837,2821,2814,2809,2799,2780,2751,2715,2677,2642,2611,2584,2558,2530,2497,2458,2415,2366,2310,2245,2172,
+2091,2007,1925,1851,1790,1742,1705,1673,1643,1613,1585,1563,1550,1548,1553,1559,1558,1544,1515,1472,1424,
+1377,1338,1309,1289,1272,1255,1232,1204,1171,1138,1106,1077,1051,1027,1005,984,964,944,923,898,871,
+839,805,770,736,703,671,638,604,568,532,497,463,429,394,354,310,262,212,165,123,86,
+53,23,-5,-34,-62,-89,-113,-135,-157,-180,-206,-236,-267,-300,-334,-366,-399,-430,-460,-490,-517,
+-544,-570,-596,-622,-651,-679,-708,-737,-765,-793,-821,-849,-877,-904,-930,-954,-978,-1005,-1035,-1069,-1104,
+-1139,-1172,-1201,-1229,-1255,-1283,-1313,-1344,-1377,-1408,-1438,-1466,-1495,-1524,-1554,-1584,-1612,-1639,-1665,-1691,-1717,
+-1745,-1773,-1801,-1826,-1848,-1869,-1890,-1913,-1938,-1965,-1992,-2016,-2039,-2059,-2078,-2099,-2121,-2144,-2167,-2189,-2208,
+-2227,-2245,-2265,-2287,-2309,-2332,-2352,-2371,-2388,-2403,-2419,-2434,-2451,-2467,-2482,-2498,-2513,-2528,-2544,-2559,-2575,
+-2591,-2607,-2624,-2641,-2658,-2673,-2685,-2695,-2704,-2711,-2718,-2727,-2738,-2750,-2763,-2775,-2785,-2793,-2800,-2804,-2807,
+-2809,-2811,-2814,-2817,-2821,-2824,-2827,-2829,-2830,-2830,-2830,-2830,-2831,-2832,-2832,-2831,-2830,-2829,-2829,-2829,-2830,
+-2831,-2831,-2830,-2828,-2826,-2823,-2821,-2821,-2820,-2819,-2816,-2810,-2801,-2790,-2781,-2776,-2776,-2783,-2791,-2797,-2795,
+-2784,-2762,-2736,-2709,-2688,-2673,-2664,-2657,-2649,-2639,-2628,-2618,-2612,-2611,-2611,-2610,-2604,-2594,-2579,-2564,-2551,
+-2544,-2541,-2542,-2545,-2547,-2546,-2541,-2532,-2520,-2509,-2503,-2503,-2512,-2525,-2539,-2547,-2546,-2536,-2522,-2510,-2506,
+-2513,-2528,-2547,-2567,-2584,-2600,-2615,-2630,-2643,-2651,-2654,-2654,-2658,-2668,-2686,-2705,-2718,-2717,-2708,-2704,-2729,
+-2799,-2918,-3066,-3203,-3286,-3286,-3199,-3055,-2901,-2788,-2747,-2779,-2860,-2952,-3022,-3058,-3067,-3068,-3083,-3122,-3180,
+-3242,-3294,-3329,-3352,-3370,-3396,-3432,-3475,-3516,-3546,-3565,-3576,-3586,-3604,-3631,-3664,-3699,-3729,-3751,-3767,-3779,
+-3790,-3804,-3822,-3841,-3863,-3887,-3913,-3941,-3971,-3998,-4022,-4042,-4058,-4070,-4080,-4090,-4098,-4106,-4113,-4121,-4130,
+-4142,-4154,-4163,-4169,-4169,-4164,-4159,-4157,-4159,-4167,-4177,-4186,-4191,-4191,-4188,-4185,-4185,-4188,-4193,-4197,-4201,
+-4202,-4201,-4202,-4204,-4208,-4212,-4215,-4216,-4215,-4214,-4214,-4216,-4219,-4221,-4221,-4217,-4210,-4202,-4195,-4189,-4185,
+-4180,-4175,-4167,-4158,-4150,-4143,-4137,-4133,-4128,-4123,-4117,-4111,-4105,-4101,-4098,-4094,-4089,-4082,-4073,-4064,-4056,
+-4048,-4041,-4033,-4020,-4004,-3985,-3964,-3944,-3927,-3911,-3896,-3881,-3865,-3848,-3831,-3815,-3801,-3789,-3778,-3767,-3755,
+-3742,-3729,-3716,-3703,-3690,-3677,-3663,-3647,-3629,-3609,-3589,-3567,-3546,-3524,-3504,-3485,-3468,-3451,-3436,-3421,-3406,
+-3390,-3376,-3361,-3348,-3334,-3319,-3303,-3284,-3264,-3244,-3226,-3210,-3196,-3183,-3169,-3154,-3138,-3121,-3105,-3091,-3078,
+-3067,-3055,-3042,-3027,-3012,-2996,-2982,-2968,-2954,-2940,-2926,-2912,-2897,-2884,-2873,-2862,-2851,-2839,-2827,-2813,-2799,
+-2787,-2775,-2766,-2759,-2753,-2749,-2744,-2739,-2732,-2724,-2715,-2706,-2697,-2690,-2685,-2682,-2681,-2680,-2678,-2675,-2671,
+-2667,-2664,-2660,-2655,-2650,-2643,-2636,-2629,-2624,-2620,-2618,-2616,-2615,-2612,-2608,-2605,-2602,-2600,-2599,-2597,-2594,
+-2590,-2586,-2582,-2580,-2578,-2577,-2573,-2567,-2557,-2544,-2529,-2515,-2500,-2486,-2471,-2455,-2438,-2422,-2408,-2395,-2385,
+-2375,-2364,-2351,-2336,-2321,-2308,-2296,-2287,-2280,-2273,-2266,-2259,-2253,-2247,-2242,-2237,-2230,-2222,-2213,-2203,-2194,
+-2186,-2179,-2171,-2161,-2148,-2134,-2119,-2106,-2096,-2087,-2079,-2070,-2059,-2048,-2039,-2032,-2030,-2031,-2033,-2035,-2033,
+-2030,-2026,-2022,-2019,-2016,-2012,-2006,-1996,-1982,-1967,-1952,-1938,-1926,-1916,-1908,-1903,-1900,-1902,-1907,-1914,-1921,
+-1925,-1925,-1922,-1918,-1914,-1914,-1916,-1920,-1926,-1931,-1935,-1940,-1946,-1952,-1958,-1960,-1957,-1947,-1930,-1907,-1884,
+-1863,-1848,-1842,-1844,-1854,-1869,-1885,-1900,-1912,-1919,-1921,-1919,-1913,-1903,-1889,-1873,-1855,-1837,-1820,-1806,-1794,
+-1785,-1776,-1768,-1757,-1746,-1733,-1722,-1712,-1704,-1697,-1691,-1686,-1682,-1679,-1677,-1674,-1668,-1657,-1640,-1619,-1595,
+-1572,-1553,-1538,-1525,-1512,-1496,-1477,-1456,-1436,-1421,-1411,-1407,-1406,-1404,-1400,-1391,-1379,-1366,-1353,-1342,-1333,
+-1325,-1318,-1311,-1303,-1294,-1283,-1271,-1257,-1243,-1228,-1212,-1194,-1175,-1154,-1132,-1112,-1095,-1083,-1078,-1077,-1080,
+-1080,-1076,-1063,-1044,-1018,-989,-960,-933,-910,-890,-874,-861,-850,-842,-835,-828,-820,-810,-798,-784,-768,
+-752,-736,-719,-702,-684,-665,-648,-633,-620,-608,-597,-583,-565,-544,-519,-493,-467,-441,-415,-388,-360,
+-332,-304,-278,-255,-236,-218,-203,-189,-175,-161,-145,-128,-106,-81,-53,-24,4,29,50,68,85,
+103,124,149,176,205,234,263,291,318,344,369,394,421,450,484,523,567,612,655,695,730,
+762,792,823,856,891,926,962,998,1035,1073,1111,1145,1173,1190,1198,1200,1203,1215,1241,1281,1329,
+1378,1417,1442,1453,1454,1453,1457,1469,1487,1510,1532,1550,1565,1578,1594,1616,1645,1679,1717,1755,1789,
+1819,1843,1862,1878,1893,1906,1919,1931,1942,1952,1961,1969,1977,1984,1992,2001,2008,2015,2019,2021,2019,
+2014,2006,1997,1987,1977,1970,1966,1965,1967,1970,1973,1973,1969,1962,1952,1940,1930,1921,1915,1911,1909,
+1910,1912,1914,1917,1917,1916,1912,1908,1905,1907,1913,1923,1935,1947,1955,1960,1963,1964,1967,1972,1977,
+1982,1983,1981,1975,1968,1961,1955,1951,1946,1941,1935,1929,1924,1921,1917,1913,1907,1899,1891,1884,1880,
+1881,1886,1894,1904,1916,1928,1940,1952,1963,1972,1976,1978,1979,1981,1986,1995,2008,2024,2042,2061,2080,
+2098,2113,2123,2128,2129,2130,2135,2147,2166,2189,2211,2227,2237,2244,2253,2268,2290,2316,2339,2356,2363,
+2365,2367,2373,2382,2388,2384,2367,2338,2305,2279,2266,2265,2265,2254,2219,2157,2073,1976,1875,1770,1654,
+1519,1364,1201,1056,959,937,998,1130,1301,1475,1620,1723,1785,1821,1849,1879,1914,1946,1970,1982,1983,
+1980,1978,1979,1981,1981,1975,1962,1946,1932,1923,1922,1926,1932,1939,1948,1958,1970,1983,1992,1996,1993,
+1985,1977,1972,1975,1984,1994,2002,2005,2003,2001,2002,2008,2020,2033,2042,2045,2043,2039,2037,2043,2057,
+2078,2105,2134,2164,2192,2216,2233,2241,2241,2233,2223,2216,2217,2226,2240,2252,2257,2250,2234,2212,2192,
+2180,2177,2182,2192,2201,2206,2206,2202,2196,2189,2181,2171,2160,2147,2136,2126,2120,2116,2076,2076,2074,
+2069,2062,2055,2049,2043,2037,2027,2012,1994,1974,1954,1938,1927,1920,1915,1911,1908,1903,1898,1893,1887,
+1882,1879,1880,1887,1899,1915,1932,1944,1949,1946,1936,1923,1913,1908,1909,1913,1920,1927,1933,1940,1949,
+1960,1973,1986,1998,2010,2022,2036,2055,2078,2105,2133,2163,2193,2224,2253,2281,2302,2316,2322,2325,2330,
+2343,2369,2406,2447,2485,2512,2527,2535,2541,2552,2570,2592,2612,2624,2628,2628,2633,2647,2674,2709,2741,
+2761,2763,2750,2732,2719,2720,2736,2761,2788,2807,2817,2820,2823,2830,2845,2864,2881,2890,2891,2888,2888,
+2898,2921,2953,2987,3018,3041,3055,3065,3077,3094,3116,3143,3169,3192,3208,3220,3228,3235,3242,3251,3260,
+3270,3281,3294,3308,3323,3339,3355,3371,3386,3400,3412,3423,3431,3439,3447,3457,3471,3489,3511,3534,3558,
+3580,3601,3620,3637,3652,3665,3676,3685,3694,3703,3713,3723,3733,3741,3746,3747,3745,3742,3739,3737,3736,
+3735,3736,3737,3739,3743,3748,3753,3756,3758,3758,3758,3758,3759,3760,3760,3758,3754,3748,3741,3734,3726,
+3715,3703,3688,3672,3658,3647,3639,3634,3627,3618,3604,3588,3570,3553,3540,3532,3527,3523,3521,3519,3517,
+3515,3513,3511,3508,3505,3503,3503,3504,3506,3506,3502,3495,3484,3472,3461,3454,3452,3453,3454,3456,3455,
+3452,3447,3440,3432,3422,3413,3406,3400,3397,3396,3395,3393,3389,3381,3373,3364,3358,3354,3351,3347,3339,
+3325,3303,3273,3238,3202,3169,3145,3133,3134,3146,3160,3170,3169,3154,3129,3100,3076,3063,3063,3072,3082,
+3088,3085,3073,3056,3037,3021,3008,2998,2990,2983,2978,2976,2977,2981,2986,2991,2994,2995,2996,2997,2998,
+3000,3001,3002,3005,3010,3018,3026,3030,3025,3007,2976,2937,2896,2860,2835,2821,2812,2804,2788,2761,2725,
+2683,2641,2602,2570,2542,2515,2489,2459,2426,2387,2342,2287,2223,2149,2069,1986,1907,1836,1777,1726,1682,
+1642,1603,1566,1534,1512,1501,1499,1501,1500,1489,1466,1432,1391,1351,1316,1289,1268,1250,1232,1210,1185,
+1158,1130,1102,1074,1046,1018,988,960,933,909,886,862,836,807,773,738,703,669,636,603,570,
+537,503,471,439,406,371,331,287,239,190,144,102,67,36,9,-17,-44,-72,-99,-126,-152,
+-177,-203,-230,-260,-290,-322,-354,-387,-420,-452,-483,-512,-539,-564,-588,-612,-638,-665,-694,-723,-751,
+-779,-806,-834,-862,-891,-918,-944,-968,-991,-1016,-1045,-1077,-1112,-1148,-1183,-1214,-1242,-1269,-1295,-1322,-1351,
+-1381,-1410,-1439,-1468,-1496,-1526,-1556,-1587,-1617,-1645,-1673,-1700,-1727,-1755,-1783,-1810,-1834,-1856,-1876,-1897,-1919,
+-1944,-1972,-2000,-2026,-2050,-2071,-2092,-2112,-2135,-2158,-2180,-2201,-2221,-2239,-2257,-2278,-2300,-2325,-2349,-2371,-2391,
+-2407,-2422,-2436,-2450,-2466,-2483,-2500,-2518,-2536,-2553,-2569,-2585,-2600,-2615,-2631,-2649,-2667,-2686,-2704,-2719,-2730,
+-2738,-2744,-2749,-2756,-2765,-2776,-2788,-2800,-2812,-2822,-2830,-2837,-2842,-2847,-2851,-2854,-2857,-2859,-2862,-2864,-2866,
+-2867,-2869,-2870,-2871,-2872,-2873,-2874,-2874,-2874,-2874,-2874,-2875,-2876,-2877,-2878,-2877,-2876,-2873,-2870,-2867,-2864,
+-2863,-2863,-2861,-2857,-2850,-2842,-2833,-2828,-2827,-2831,-2838,-2843,-2842,-2831,-2813,-2789,-2765,-2745,-2730,-2721,-2715,
+-2709,-2700,-2690,-2680,-2672,-2666,-2663,-2660,-2656,-2648,-2638,-2626,-2613,-2602,-2595,-2591,-2591,-2594,-2596,-2595,-2588,
+-2575,-2559,-2545,-2538,-2540,-2550,-2565,-2578,-2583,-2579,-2568,-2557,-2551,-2553,-2563,-2579,-2598,-2618,-2637,-2657,-2674,
+-2687,-2694,-2693,-2690,-2691,-2700,-2719,-2741,-2756,-2759,-2749,-2742,-2759,-2818,-2927,-3071,-3214,-3314,-3339,-3280,-3157,
+-3010,-2888,-2824,-2830,-2888,-2970,-3043,-3092,-3115,-3128,-3146,-3181,-3233,-3293,-3348,-3390,-3420,-3444,-3467,-3495,-3527,
+-3557,-3581,-3597,-3609,-3622,-3642,-3669,-3702,-3737,-3769,-3795,-3815,-3832,-3848,-3864,-3881,-3900,-3920,-3944,-3970,-3999,
+-4028,-4055,-4078,-4097,-4111,-4123,-4133,-4144,-4155,-4165,-4176,-4186,-4197,-4208,-4219,-4226,-4230,-4230,-4226,-4221,-4218,
+-4219,-4223,-4229,-4234,-4237,-4238,-4238,-4240,-4243,-4248,-4254,-4258,-4261,-4261,-4262,-4263,-4267,-4270,-4272,-4272,-4270,
+-4268,-4266,-4268,-4271,-4276,-4278,-4278,-4273,-4267,-4260,-4255,-4252,-4249,-4245,-4238,-4229,-4220,-4212,-4205,-4201,-4197,
+-4192,-4184,-4174,-4164,-4156,-4150,-4147,-4143,-4138,-4130,-4119,-4108,-4099,-4092,-4086,-4080,-4072,-4060,-4045,-4028,-4011,
+-3994,-3977,-3960,-3942,-3923,-3904,-3885,-3869,-3855,-3841,-3828,-3815,-3801,-3786,-3773,-3762,-3751,-3740,-3729,-3715,-3699,
+-3681,-3663,-3644,-3625,-3605,-3585,-3563,-3542,-3521,-3501,-3483,-3466,-3450,-3433,-3417,-3402,-3388,-3374,-3361,-3347,-3331,
+-3313,-3295,-3277,-3261,-3247,-3235,-3223,-3210,-3195,-3179,-3163,-3147,-3133,-3119,-3105,-3090,-3074,-3057,-3040,-3025,-3011,
+-2998,-2985,-2972,-2959,-2946,-2934,-2923,-2913,-2903,-2891,-2878,-2864,-2849,-2835,-2822,-2811,-2802,-2795,-2789,-2784,-2779,
+-2773,-2767,-2761,-2754,-2747,-2740,-2736,-2733,-2732,-2731,-2730,-2729,-2727,-2724,-2721,-2718,-2713,-2708,-2700,-2692,-2683,
+-2675,-2669,-2664,-2661,-2658,-2654,-2650,-2644,-2639,-2633,-2628,-2624,-2619,-2616,-2614,-2613,-2613,-2615,-2615,-2614,-2611,
+-2605,-2598,-2590,-2583,-2576,-2568,-2559,-2548,-2536,-2524,-2513,-2503,-2494,-2484,-2470,-2453,-2432,-2410,-2388,-2367,-2349,
+-2333,-2318,-2307,-2297,-2291,-2288,-2286,-2285,-2282,-2276,-2267,-2257,-2247,-2239,-2232,-2224,-2215,-2204,-2191,-2177,-2165,
+-2154,-2143,-2132,-2119,-2104,-2089,-2076,-2067,-2063,-2064,-2067,-2070,-2071,-2070,-2068,-2065,-2062,-2059,-2055,-2049,-2040,
+-2030,-2019,-2009,-2000,-1991,-1982,-1973,-1965,-1958,-1953,-1953,-1955,-1958,-1961,-1961,-1959,-1956,-1953,-1950,-1948,-1946,
+-1945,-1944,-1946,-1951,-1960,-1973,-1987,-1999,-2005,-2002,-1991,-1973,-1952,-1931,-1914,-1904,-1900,-1901,-1906,-1913,-1919,
+-1925,-1930,-1934,-1936,-1936,-1932,-1925,-1914,-1900,-1885,-1871,-1861,-1854,-1850,-1846,-1839,-1829,-1815,-1799,-1782,-1765,
+-1750,-1736,-1724,-1714,-1705,-1701,-1698,-1698,-1696,-1689,-1676,-1657,-1634,-1611,-1591,-1575,-1562,-1550,-1536,-1520,-1502,
+-1484,-1470,-1461,-1457,-1453,-1448,-1440,-1428,-1413,-1398,-1386,-1376,-1368,-1360,-1352,-1341,-1328,-1316,-1303,-1291,-1279,
+-1266,-1251,-1231,-1207,-1180,-1150,-1122,-1098,-1080,-1071,-1070,-1075,-1081,-1086,-1084,-1075,-1060,-1040,-1017,-995,-973,
+-951,-929,-908,-888,-871,-858,-848,-842,-836,-829,-819,-806,-790,-773,-755,-737,-718,-698,-679,-661,-645,
+-632,-620,-609,-597,-582,-564,-543,-521,-497,-473,-447,-418,-387,-355,-323,-295,-270,-251,-235,-223,-211,
+-199,-184,-168,-148,-124,-98,-70,-42,-17,4,22,38,53,71,92,117,146,176,207,237,266,
+294,320,346,371,396,424,457,494,537,583,630,675,718,760,801,841,882,920,955,986,1013,
+1041,1071,1107,1145,1185,1221,1250,1273,1292,1312,1336,1367,1400,1433,1460,1478,1490,1498,1509,1525,1548,
+1573,1595,1611,1618,1619,1620,1626,1642,1669,1705,1744,1783,1816,1842,1862,1877,1891,1905,1919,1932,1944,
+1955,1963,1970,1977,1986,1995,2006,2016,2026,2033,2037,2038,2035,2029,2020,2011,2001,1992,1985,1980,1978,
+1978,1979,1980,1980,1979,1977,1974,1969,1962,1953,1941,1929,1917,1909,1905,1907,1911,1916,1919,1920,1918,
+1916,1916,1921,1929,1939,1951,1962,1973,1984,1995,2007,2017,2024,2025,2021,2012,2001,1992,1986,1983,1981,
+1979,1976,1971,1965,1959,1955,1951,1946,1940,1932,1924,1918,1915,1916,1921,1929,1939,1951,1962,1973,1983,
+1990,1993,1993,1990,1987,1988,1995,2007,2023,2042,2062,2082,2100,2116,2128,2136,2139,2139,2141,2148,2162,
+2182,2204,2222,2235,2243,2250,2262,2282,2309,2336,2356,2363,2361,2355,2354,2365,2385,2405,2413,2402,2373,
+2334,2301,2282,2277,2278,2269,2238,2182,2108,2029,1952,1876,1789,1673,1521,1342,1163,1024,960,989,1103,
+1272,1454,1611,1724,1791,1827,1853,1882,1917,1953,1979,1990,1989,1980,1973,1971,1975,1979,1978,1971,1960,
+1948,1939,1934,1933,1933,1933,1934,1937,1943,1950,1954,1950,1937,1915,1891,1872,1863,1867,1878,1890,1900,
+1904,1904,1904,1908,1915,1924,1931,1932,1929,1925,1924,1931,1948,1971,1998,2026,2052,2075,2094,2108,2117,
+2120,2118,2112,2109,2110,2118,2130,2140,2144,2138,2123,2104,2086,2075,2074,2081,2092,2104,2111,2113,2111,
+2106,2100,2093,2087,2081,2076,2073,2073,2074,2076,2020,2021,2017,2009,1999,1989,1981,1975,1970,1962,1950,
+1933,1914,1895,1879,1868,1860,1856,1853,1851,1848,1846,1844,1842,1841,1841,1844,1852,1866,1884,1903,1919,
+1928,1930,1924,1915,1907,1902,1902,1906,1912,1918,1925,1933,1944,1959,1976,1993,2009,2023,2037,2052,2070,
+2091,2114,2140,2168,2197,2228,2259,2288,2311,2325,2331,2331,2332,2340,2358,2388,2422,2454,2478,2493,2502,
+2511,2525,2545,2567,2586,2597,2599,2597,2600,2614,2641,2676,2709,2730,2736,2728,2713,2703,2705,2720,2743,
+2767,2786,2798,2804,2810,2820,2834,2849,2861,2866,2866,2867,2873,2890,2917,2950,2981,3007,3023,3033,3042,
+3053,3071,3093,3117,3139,3157,3170,3180,3190,3201,3212,3224,3235,3246,3257,3269,3283,3299,3315,3330,3344,
+3355,3364,3372,3380,3388,3397,3406,3416,3429,3444,3463,3483,3505,3526,3547,3567,3585,3601,3615,3626,3637,
+3647,3657,3668,3679,3689,3697,3700,3700,3698,3694,3692,3691,3693,3696,3700,3705,3709,3714,3718,3721,3723,
+3723,3721,3719,3716,3715,3714,3714,3713,3710,3704,3697,3688,3678,3666,3653,3638,3623,3608,3595,3584,3575,
+3567,3558,3548,3537,3526,3517,3510,3506,3504,3503,3502,3501,3498,3494,3490,3486,3482,3480,3480,3482,3484,
+3484,3481,3474,3463,3450,3438,3430,3426,3426,3428,3431,3432,3431,3427,3422,3415,3407,3398,3389,3382,3376,
+3373,3371,3369,3365,3359,3351,3342,3334,3328,3323,3317,3308,3295,3277,3254,3229,3203,3180,3160,3148,3144,
+3149,3162,3179,3194,3203,3202,3191,3174,3156,3142,3133,3129,3125,3117,3103,3082,3059,3037,3017,3002,2990,
+2979,2968,2956,2945,2938,2938,2943,2953,2966,2979,2991,3000,3005,3008,3008,3009,3013,3020,3032,3045,3056,
+3058,3048,3024,2990,2950,2912,2881,2859,2843,2828,2808,2779,2741,2697,2652,2610,2574,2544,2518,2493,2467,
+2438,2404,2364,2316,2259,2193,2118,2040,1963,1891,1826,1770,1719,1671,1623,1577,1534,1499,1474,1458,1449,
+1442,1431,1412,1387,1357,1325,1296,1270,1247,1225,1203,1180,1157,1134,1112,1090,1066,1037,1005,969,932,
+898,868,841,817,793,767,738,706,673,640,608,576,544,512,480,448,415,382,346,306,262,
+215,168,123,83,48,18,-9,-36,-62,-89,-116,-142,-167,-193,-220,-248,-277,-307,-338,-370,-402,
+-436,-470,-504,-535,-564,-589,-612,-634,-657,-682,-708,-734,-760,-785,-811,-838,-866,-895,-924,-952,-979,
+-1004,-1031,-1060,-1092,-1126,-1161,-1195,-1225,-1252,-1277,-1302,-1328,-1356,-1387,-1417,-1448,-1478,-1507,-1537,-1566,-1595,
+-1623,-1651,-1678,-1706,-1734,-1763,-1793,-1820,-1846,-1868,-1889,-1909,-1932,-1957,-1985,-2014,-2041,-2066,-2087,-2108,-2127,
+-2148,-2169,-2191,-2213,-2233,-2252,-2272,-2292,-2315,-2339,-2363,-2386,-2406,-2424,-2439,-2453,-2467,-2482,-2498,-2515,-2534,
+-2553,-2572,-2591,-2608,-2624,-2639,-2655,-2671,-2689,-2708,-2726,-2743,-2756,-2767,-2775,-2782,-2790,-2799,-2809,-2819,-2830,
+-2841,-2850,-2860,-2869,-2878,-2885,-2891,-2894,-2896,-2897,-2898,-2899,-2902,-2904,-2908,-2910,-2913,-2914,-2915,-2916,-2916,
+-2917,-2917,-2916,-2916,-2917,-2918,-2920,-2922,-2924,-2923,-2922,-2919,-2915,-2912,-2910,-2907,-2903,-2897,-2890,-2883,-2878,
+-2876,-2878,-2882,-2886,-2885,-2877,-2862,-2842,-2819,-2799,-2783,-2772,-2765,-2759,-2753,-2745,-2737,-2729,-2721,-2715,-2710,
+-2706,-2700,-2693,-2684,-2673,-2660,-2649,-2641,-2638,-2639,-2642,-2643,-2639,-2627,-2610,-2593,-2580,-2576,-2582,-2595,-2608,
+-2617,-2617,-2610,-2600,-2592,-2591,-2596,-2607,-2623,-2643,-2666,-2690,-2712,-2729,-2736,-2735,-2728,-2723,-2728,-2745,-2769,
+-2790,-2798,-2793,-2783,-2787,-2828,-2915,-3042,-3185,-3305,-3368,-3355,-3275,-3157,-3041,-2962,-2940,-2970,-3033,-3101,-3157,
+-3191,-3210,-3226,-3250,-3286,-3333,-3384,-3430,-3469,-3500,-3528,-3553,-3578,-3600,-3619,-3635,-3649,-3666,-3687,-3714,-3745,
+-3778,-3810,-3840,-3866,-3890,-3911,-3929,-3946,-3963,-3980,-4001,-4026,-4054,-4084,-4111,-4134,-4152,-4166,-4177,-4188,-4199,
+-4213,-4226,-4240,-4252,-4262,-4272,-4279,-4284,-4287,-4287,-4285,-4284,-4283,-4284,-4287,-4290,-4292,-4294,-4295,-4298,-4301,
+-4307,-4313,-4318,-4321,-4322,-4322,-4323,-4326,-4328,-4330,-4330,-4327,-4322,-4318,-4317,-4320,-4325,-4330,-4333,-4332,-4327,
+-4321,-4316,-4312,-4309,-4305,-4297,-4286,-4273,-4260,-4251,-4246,-4245,-4244,-4241,-4235,-4225,-4215,-4206,-4199,-4195,-4191,
+-4185,-4175,-4163,-4150,-4139,-4130,-4124,-4118,-4112,-4104,-4093,-4080,-4065,-4050,-4033,-4014,-3994,-3973,-3953,-3936,-3921,
+-3910,-3899,-3887,-3873,-3858,-3842,-3827,-3814,-3802,-3791,-3778,-3764,-3747,-3731,-3714,-3698,-3683,-3665,-3646,-3624,-3601,
+-3578,-3557,-3536,-3518,-3499,-3481,-3462,-3444,-3428,-3414,-3401,-3389,-3376,-3362,-3346,-3330,-3314,-3300,-3286,-3274,-3260,
+-3246,-3231,-3216,-3202,-3188,-3174,-3160,-3144,-3127,-3110,-3092,-3076,-3061,-3047,-3034,-3020,-3006,-2993,-2981,-2969,-2959,
+-2949,-2939,-2927,-2914,-2901,-2888,-2876,-2865,-2855,-2846,-2837,-2829,-2823,-2818,-2814,-2811,-2807,-2804,-2799,-2795,-2790,
+-2786,-2783,-2780,-2777,-2775,-2773,-2771,-2768,-2765,-2761,-2754,-2747,-2739,-2731,-2724,-2718,-2713,-2709,-2705,-2700,-2694,
+-2688,-2681,-2674,-2667,-2660,-2655,-2650,-2646,-2643,-2641,-2638,-2634,-2630,-2626,-2623,-2621,-2620,-2620,-2619,-2616,-2611,
+-2605,-2599,-2593,-2589,-2584,-2577,-2567,-2553,-2535,-2514,-2492,-2470,-2448,-2427,-2407,-2388,-2373,-2361,-2353,-2347,-2342,
+-2336,-2326,-2314,-2301,-2289,-2278,-2270,-2263,-2256,-2248,-2240,-2232,-2223,-2215,-2206,-2196,-2182,-2166,-2149,-2132,-2118,
+-2109,-2104,-2102,-2103,-2104,-2106,-2108,-2111,-2112,-2112,-2109,-2103,-2094,-2083,-2073,-2065,-2058,-2052,-2045,-2037,-2027,
+-2018,-2010,-2004,-2002,-2001,-2002,-2003,-2004,-2004,-2004,-2002,-1999,-1994,-1987,-1978,-1972,-1969,-1972,-1981,-1995,-2011,
+-2026,-2037,-2043,-2043,-2039,-2033,-2025,-2016,-2007,-1997,-1986,-1975,-1964,-1954,-1947,-1943,-1941,-1941,-1939,-1935,-1927,
+-1917,-1905,-1897,-1892,-1891,-1894,-1897,-1896,-1891,-1880,-1864,-1847,-1828,-1810,-1793,-1775,-1757,-1740,-1727,-1718,-1712,
+-1708,-1702,-1692,-1676,-1657,-1637,-1618,-1603,-1591,-1580,-1568,-1554,-1538,-1524,-1512,-1504,-1500,-1496,-1489,-1479,-1465,
+-1450,-1434,-1422,-1411,-1403,-1393,-1382,-1369,-1355,-1341,-1330,-1320,-1312,-1300,-1283,-1258,-1225,-1187,-1146,-1109,-1080,
+-1062,-1055,-1057,-1065,-1073,-1078,-1078,-1071,-1060,-1048,-1036,-1025,-1014,-1001,-983,-962,-938,-914,-892,-876,-864,
+-855,-846,-836,-824,-808,-791,-773,-755,-736,-717,-698,-680,-663,-648,-636,-624,-612,-599,-584,-567,-548,
+-528,-506,-481,-453,-421,-388,-355,-324,-298,-277,-260,-245,-232,-219,-204,-186,-165,-142,-117,-92,-69,
+-48,-30,-15,0,16,36,61,91,123,156,189,220,250,278,306,332,358,383,410,439,472,
+509,549,591,636,681,729,778,829,880,927,968,1002,1029,1054,1080,1110,1145,1183,1221,1256,1287,
+1315,1340,1367,1396,1425,1453,1477,1497,1514,1532,1555,1582,1611,1638,1659,1669,1669,1664,1660,1663,1677,
+1701,1732,1767,1801,1830,1854,1876,1895,1913,1930,1945,1957,1964,1969,1973,1978,1985,1994,2005,2016,2024,
+2029,2029,2027,2024,2020,2018,2018,2018,2018,2017,2013,2007,1999,1991,1983,1978,1976,1980,1986,1993,1998,
+1997,1989,1975,1958,1942,1931,1927,1929,1935,1941,1945,1946,1943,1940,1938,1941,1947,1957,1969,1984,2001,
+2019,2038,2055,2068,2074,2072,2063,2049,2037,2027,2022,2021,2020,2017,2011,2001,1989,1978,1968,1960,1954,
+1948,1943,1939,1936,1936,1937,1939,1943,1949,1956,1966,1978,1989,1997,2001,2001,1999,1998,2002,2013,2028,
+2048,2068,2087,2104,2119,2133,2144,2152,2156,2160,2164,2173,2188,2207,2226,2242,2251,2257,2264,2278,2302,
+2332,2361,2381,2387,2381,2371,2366,2374,2392,2412,2423,2414,2386,2347,2311,2287,2275,2268,2253,2221,2173,
+2118,2066,2022,1980,1919,1816,1662,1463,1253,1077,979,983,1084,1251,1440,1609,1732,1805,1844,1867,1892,
+1923,1954,1977,1988,1985,1977,1971,1972,1981,1991,1999,2000,1997,1992,1989,1988,1988,1985,1981,1975,1972,
+1973,1977,1979,1972,1952,1921,1884,1852,1831,1827,1835,1849,1861,1868,1867,1864,1861,1862,1865,1869,1872,
+1873,1873,1877,1886,1901,1919,1938,1954,1968,1978,1987,1994,2000,2004,2004,2002,2001,2004,2012,2024,2035,
+2042,2040,2029,2013,1997,1985,1981,1984,1991,1998,2004,2007,2007,2006,2004,2003,2002,2001,2002,2005,2010,
+2016,2020,1947,1949,1946,1939,1930,1921,1914,1909,1905,1900,1892,1880,1865,1850,1836,1824,1815,1809,1804,
+1801,1799,1798,1799,1801,1803,1805,1810,1817,1829,1845,1863,1880,1893,1900,1900,1896,1892,1889,1890,1894,
+1900,1907,1917,1929,1944,1963,1984,2005,2026,2044,2060,2076,2093,2111,2131,2153,2177,2203,2232,2262,2291,
+2316,2334,2343,2346,2347,2351,2364,2385,2411,2437,2458,2474,2487,2500,2518,2538,2559,2576,2585,2586,2584,
+2586,2599,2621,2651,2678,2697,2703,2698,2691,2687,2694,2712,2735,2759,2778,2789,2796,2802,2809,2817,2826,
+2833,2838,2843,2853,2869,2894,2925,2955,2980,2996,3005,3010,3017,3029,3046,3067,3087,3103,3115,3125,3134,
+3146,3159,3174,3188,3201,3212,3224,3238,3254,3272,3289,3304,3316,3325,3331,3338,3346,3354,3364,3374,3384,
+3394,3406,3420,3436,3454,3473,3493,3511,3528,3545,3559,3573,3586,3599,3612,3625,3637,3648,3655,3658,3656,
+3653,3649,3647,3648,3652,3658,3665,3671,3675,3679,3682,3685,3687,3688,3687,3686,3684,3682,3680,3678,3674,
+3669,3662,3652,3641,3629,3616,3604,3591,3577,3562,3547,3532,3518,3507,3497,3491,3486,3484,3482,3482,3481,
+3480,3478,3477,3474,3471,3468,3464,3461,3460,3460,3461,3463,3463,3461,3454,3444,3432,3421,3412,3407,3406,
+3407,3408,3410,3409,3408,3405,3401,3395,3389,3381,3372,3364,3358,3354,3351,3346,3340,3331,3321,3311,3303,
+3297,3291,3282,3269,3252,3232,3213,3196,3183,3176,3171,3170,3171,3175,3182,3194,3208,3221,3229,3232,3227,
+3218,3206,3193,3179,3163,3144,3120,3093,3066,3042,3023,3010,2999,2988,2975,2958,2941,2927,2920,2923,2936,
+2955,2977,2998,3015,3027,3034,3037,3039,3042,3047,3054,3062,3068,3068,3060,3042,3016,2985,2952,2922,2895,
+2871,2848,2821,2789,2751,2709,2666,2626,2591,2561,2536,2512,2488,2461,2430,2392,2347,2293,2230,2159,2084,
+2007,1934,1866,1805,1748,1695,1643,1592,1545,1502,1467,1440,1420,1404,1388,1371,1350,1326,1301,1275,1249,
+1223,1197,1170,1144,1119,1097,1078,1059,1037,1011,979,943,905,868,835,805,778,753,727,699,671,
+641,612,583,554,524,494,462,430,396,361,323,282,238,193,149,106,68,33,2,-27,-55,
+-81,-107,-131,-155,-178,-203,-230,-259,-290,-320,-351,-382,-414,-448,-483,-518,-553,-584,-612,-637,-659,
+-681,-703,-726,-748,-771,-793,-815,-839,-865,-893,-923,-953,-984,-1013,-1043,-1074,-1107,-1140,-1173,-1204,-1231,
+-1256,-1279,-1302,-1329,-1358,-1389,-1422,-1455,-1486,-1517,-1547,-1576,-1603,-1630,-1657,-1683,-1710,-1739,-1769,-1799,-1829,
+-1856,-1880,-1902,-1923,-1946,-1971,-1998,-2026,-2054,-2079,-2101,-2120,-2139,-2159,-2180,-2202,-2225,-2247,-2269,-2290,-2310,
+-2331,-2353,-2375,-2396,-2417,-2437,-2455,-2472,-2488,-2503,-2518,-2534,-2551,-2569,-2589,-2608,-2627,-2645,-2661,-2676,-2691,
+-2707,-2723,-2741,-2758,-2774,-2789,-2802,-2814,-2825,-2836,-2847,-2857,-2866,-2875,-2884,-2894,-2903,-2913,-2921,-2928,-2932,
+-2933,-2934,-2934,-2936,-2939,-2943,-2947,-2951,-2953,-2954,-2956,-2957,-2958,-2960,-2961,-2961,-2960,-2960,-2960,-2961,-2964,
+-2968,-2971,-2973,-2972,-2969,-2966,-2962,-2957,-2952,-2946,-2939,-2932,-2926,-2923,-2923,-2925,-2928,-2929,-2925,-2915,-2899,
+-2879,-2859,-2841,-2826,-2816,-2809,-2805,-2800,-2795,-2788,-2780,-2773,-2766,-2760,-2755,-2749,-2742,-2732,-2720,-2706,-2695,
+-2688,-2687,-2690,-2693,-2692,-2683,-2667,-2648,-2632,-2622,-2622,-2629,-2639,-2646,-2648,-2644,-2637,-2631,-2628,-2630,-2637,
+-2649,-2666,-2689,-2717,-2745,-2769,-2783,-2785,-2778,-2769,-2767,-2778,-2799,-2822,-2837,-2838,-2827,-2821,-2837,-2894,-2995,
+-3125,-3255,-3354,-3397,-3376,-3306,-3216,-3137,-3093,-3092,-3126,-3178,-3229,-3268,-3292,-3307,-3322,-3345,-3378,-3419,-3463,
+-3505,-3542,-3574,-3601,-3624,-3645,-3664,-3683,-3703,-3723,-3746,-3771,-3798,-3827,-3856,-3886,-3915,-3942,-3966,-3985,-4000,
+-4014,-4029,-4048,-4073,-4103,-4134,-4164,-4188,-4207,-4220,-4230,-4241,-4254,-4268,-4284,-4299,-4313,-4324,-4332,-4337,-4341,
+-4342,-4343,-4343,-4344,-4346,-4349,-4353,-4357,-4361,-4364,-4368,-4372,-4378,-4384,-4389,-4392,-4392,-4391,-4389,-4388,-4388,
+-4388,-4387,-4383,-4377,-4371,-4366,-4366,-4369,-4375,-4381,-4383,-4381,-4376,-4370,-4365,-4362,-4359,-4354,-4344,-4328,-4310,
+-4293,-4281,-4274,-4273,-4273,-4273,-4269,-4263,-4255,-4248,-4242,-4238,-4234,-4227,-4217,-4204,-4190,-4178,-4168,-4160,-4153,
+-4145,-4136,-4126,-4114,-4103,-4090,-4076,-4060,-4042,-4023,-4005,-3990,-3978,-3968,-3958,-3946,-3930,-3913,-3895,-3878,-3864,
+-3852,-3840,-3828,-3814,-3798,-3782,-3768,-3754,-3740,-3725,-3707,-3685,-3662,-3638,-3616,-3596,-3577,-3559,-3539,-3518,-3497,
+-3477,-3460,-3445,-3432,-3419,-3406,-3393,-3378,-3363,-3349,-3335,-3321,-3307,-3292,-3277,-3263,-3249,-3237,-3225,-3213,-3199,
+-3184,-3167,-3151,-3134,-3118,-3103,-3088,-3073,-3058,-3043,-3029,-3016,-3004,-2993,-2982,-2971,-2960,-2950,-2940,-2931,-2922,
+-2912,-2902,-2891,-2882,-2873,-2868,-2865,-2863,-2862,-2860,-2857,-2852,-2846,-2840,-2834,-2829,-2825,-2822,-2818,-2815,-2812,
+-2808,-2804,-2800,-2795,-2790,-2784,-2778,-2773,-2768,-2763,-2758,-2753,-2748,-2742,-2736,-2731,-2725,-2718,-2711,-2704,-2697,
+-2690,-2682,-2674,-2666,-2659,-2653,-2649,-2647,-2647,-2647,-2648,-2646,-2644,-2640,-2635,-2632,-2629,-2626,-2623,-2619,-2613,
+-2605,-2595,-2585,-2573,-2559,-2544,-2525,-2506,-2485,-2466,-2448,-2432,-2416,-2401,-2384,-2366,-2348,-2332,-2319,-2308,-2300,
+-2294,-2289,-2283,-2278,-2273,-2267,-2261,-2252,-2241,-2227,-2212,-2196,-2181,-2168,-2157,-2150,-2145,-2145,-2147,-2153,-2159,
+-2166,-2169,-2168,-2163,-2153,-2142,-2130,-2121,-2113,-2107,-2099,-2091,-2081,-2071,-2062,-2054,-2049,-2045,-2043,-2042,-2042,
+-2044,-2046,-2048,-2048,-2044,-2037,-2026,-2014,-2004,-1998,-1999,-2006,-2019,-2036,-2056,-2075,-2093,-2108,-2118,-2123,-2123,
+-2116,-2105,-2090,-2072,-2052,-2034,-2018,-2005,-1994,-1986,-1977,-1968,-1956,-1942,-1928,-1917,-1911,-1910,-1913,-1918,-1922,
+-1922,-1919,-1913,-1904,-1894,-1882,-1868,-1849,-1827,-1801,-1776,-1754,-1737,-1723,-1711,-1699,-1684,-1668,-1651,-1635,-1623,
+-1613,-1604,-1595,-1583,-1569,-1556,-1545,-1538,-1533,-1530,-1526,-1518,-1506,-1491,-1476,-1463,-1451,-1440,-1427,-1414,-1399,
+-1384,-1372,-1363,-1357,-1352,-1342,-1323,-1294,-1255,-1209,-1162,-1121,-1090,-1073,-1069,-1074,-1083,-1091,-1093,-1090,-1082,
+-1071,-1062,-1055,-1052,-1049,-1043,-1032,-1013,-989,-961,-934,-911,-893,-879,-868,-857,-846,-833,-818,-803,-786,
+-768,-749,-729,-709,-688,-668,-650,-634,-620,-606,-593,-580,-566,-551,-534,-512,-487,-458,-426,-394,-364,
+-336,-312,-291,-273,-255,-238,-220,-201,-181,-161,-140,-120,-102,-86,-71,-57,-41,-21,3,32,66,
+102,137,170,202,232,262,290,319,347,374,401,429,458,490,525,562,602,645,691,741,794,
+847,900,948,992,1030,1064,1096,1129,1162,1194,1224,1251,1275,1299,1324,1352,1384,1418,1452,1482,1510,
+1536,1562,1589,1617,1645,1668,1683,1689,1689,1686,1686,1693,1708,1730,1756,1783,1810,1837,1864,1893,1921,
+1948,1969,1982,1985,1980,1971,1962,1959,1963,1973,1988,2002,2013,2019,2020,2018,2014,2014,2016,2022,2031,
+2038,2043,2042,2034,2022,2006,1992,1982,1979,1983,1993,2004,2012,2012,2005,1992,1978,1967,1961,1962,1967,
+1973,1977,1976,1971,1965,1960,1960,1964,1972,1983,1997,2013,2031,2053,2075,2094,2108,2113,2110,2098,2084,
+2070,2059,2052,2046,2040,2031,2019,2004,1989,1976,1964,1956,1950,1946,1944,1944,1947,1950,1953,1954,1954,
+1954,1957,1964,1976,1988,1999,2005,2007,2007,2008,2014,2027,2045,2066,2087,2106,2122,2137,2150,2162,2171,
+2177,2181,2185,2192,2204,2221,2239,2256,2268,2275,2282,2295,2316,2343,2372,2394,2405,2405,2398,2394,2397,
+2406,2416,2418,2406,2380,2347,2316,2294,2281,2269,2250,2218,2177,2135,2103,2079,2052,1998,1895,1730,1517,
+1289,1097,985,978,1072,1237,1426,1598,1725,1803,1844,1869,1893,1921,1951,1974,1986,1988,1986,1987,1995,
+2008,2022,2034,2040,2043,2046,2052,2059,2064,2064,2059,2051,2045,2045,2051,2058,2057,2042,2013,1975,1938,
+1911,1899,1901,1912,1922,1926,1922,1913,1903,1897,1896,1899,1903,1907,1910,1913,1919,1926,1934,1940,1942,
+1941,1938,1934,1932,1930,1927,1924,1920,1917,1919,1925,1936,1948,1957,1960,1954,1943,1929,1918,1912,1911,
+1913,1917,1920,1922,1925,1927,1930,1932,1934,1935,1935,1937,1939,1944,1947,1866,1869,1869,1866,1860,1852,
+1844,1838,1834,1830,1826,1820,1812,1802,1791,1782,1774,1768,1763,1761,1761,1764,1768,1773,1777,1780,1783,
+1788,1795,1807,1822,1837,1851,1860,1865,1867,1868,1871,1875,1883,1892,1904,1918,1934,1953,1975,1999,2023,
+2045,2066,2084,2103,2121,2140,2160,2180,2200,2221,2244,2268,2294,2317,2336,2349,2356,2361,2367,2378,2393,
+2413,2433,2452,2469,2483,2499,2516,2535,2553,2567,2576,2579,2582,2587,2598,2616,2636,2654,2666,2670,2670,
+2671,2678,2694,2717,2742,2764,2779,2786,2789,2790,2791,2796,2801,2809,2818,2831,2849,2873,2902,2931,2954,
+2970,2978,2980,2983,2990,3003,3021,3039,3054,3064,3071,3076,3084,3096,3110,3125,3139,3152,3164,3177,3194,
+3214,3235,3256,3272,3285,3294,3301,3309,3318,3328,3337,3346,3354,3361,3370,3381,3395,3411,3428,3444,3460,
+3475,3490,3505,3521,3536,3551,3566,3581,3594,3605,3614,3618,3619,3618,3615,3614,3615,3618,3623,3628,3632,
+3634,3636,3637,3639,3642,3645,3648,3650,3650,3648,3646,3642,3637,3630,3621,3609,3597,3583,3571,3559,3547,
+3535,3521,3506,3489,3473,3459,3449,3444,3442,3444,3447,3450,3450,3450,3448,3445,3443,3440,3439,3438,3437,
+3438,3438,3439,3438,3435,3428,3419,3408,3398,3391,3386,3386,3386,3387,3387,3386,3384,3383,3382,3381,3379,
+3374,3367,3358,3350,3343,3337,3332,3327,3318,3307,3295,3284,3275,3268,3260,3249,3233,3213,3192,3174,3164,
+3162,3167,3175,3182,3187,3189,3192,3196,3204,3215,3226,3234,3235,3229,3218,3202,3184,3162,3136,3108,3077,
+3049,3024,3006,2995,2986,2978,2966,2950,2932,2916,2907,2909,2922,2944,2969,2994,3015,3031,3041,3048,3053,
+3055,3057,3057,3054,3050,3042,3030,3015,2996,2973,2947,2920,2892,2865,2837,2808,2776,2741,2704,2665,2628,
+2594,2564,2539,2516,2495,2473,2446,2414,2375,2326,2268,2201,2127,2050,1972,1896,1824,1758,1696,1640,1587,
+1539,1497,1460,1429,1403,1380,1360,1339,1319,1299,1278,1255,1231,1205,1176,1146,1115,1086,1060,1037,1016,
+994,970,942,912,880,847,815,785,754,723,692,662,632,603,576,551,525,499,470,440,407,
+372,335,296,255,213,170,129,91,55,22,-9,-39,-69,-96,-122,-145,-168,-191,-216,-244,-275,
+-308,-340,-372,-403,-433,-465,-499,-534,-569,-603,-634,-660,-684,-705,-726,-746,-767,-787,-806,-826,-847,
+-871,-897,-926,-957,-989,-1021,-1054,-1087,-1119,-1152,-1183,-1211,-1237,-1261,-1284,-1308,-1335,-1364,-1395,-1428,-1460,
+-1492,-1523,-1553,-1582,-1611,-1638,-1664,-1691,-1717,-1745,-1775,-1805,-1835,-1864,-1890,-1914,-1936,-1959,-1983,-2009,-2037,
+-2064,-2090,-2113,-2133,-2153,-2173,-2195,-2218,-2242,-2267,-2291,-2313,-2334,-2354,-2373,-2392,-2411,-2432,-2453,-2474,-2494,
+-2513,-2531,-2546,-2560,-2575,-2591,-2609,-2629,-2649,-2668,-2686,-2701,-2716,-2730,-2745,-2761,-2778,-2795,-2812,-2828,-2843,
+-2858,-2871,-2883,-2893,-2903,-2911,-2920,-2929,-2939,-2949,-2958,-2965,-2971,-2974,-2977,-2979,-2983,-2987,-2991,-2994,-2996,
+-2997,-2998,-2999,-3001,-3005,-3009,-3012,-3014,-3013,-3012,-3010,-3009,-3010,-3014,-3017,-3021,-3023,-3023,-3022,-3019,-3016,
+-3011,-3004,-2997,-2989,-2982,-2977,-2975,-2975,-2978,-2979,-2978,-2972,-2961,-2946,-2928,-2909,-2893,-2881,-2872,-2866,-2861,
+-2857,-2850,-2843,-2834,-2825,-2819,-2814,-2810,-2804,-2796,-2783,-2769,-2755,-2746,-2743,-2744,-2748,-2749,-2744,-2731,-2713,
+-2695,-2681,-2674,-2674,-2677,-2680,-2681,-2679,-2675,-2672,-2671,-2671,-2675,-2682,-2695,-2715,-2744,-2777,-2810,-2834,-2844,
+-2841,-2830,-2821,-2822,-2835,-2856,-2876,-2884,-2877,-2865,-2862,-2887,-2952,-3055,-3179,-3298,-3385,-3422,-3409,-3360,-3297,
+-3245,-3219,-3222,-3248,-3285,-3321,-3349,-3370,-3388,-3408,-3435,-3468,-3507,-3546,-3583,-3615,-3643,-3667,-3690,-3714,-3738,
+-3762,-3787,-3811,-3833,-3856,-3879,-3904,-3931,-3958,-3984,-4006,-4024,-4038,-4051,-4066,-4086,-4112,-4142,-4174,-4204,-4228,
+-4247,-4261,-4273,-4285,-4300,-4317,-4335,-4353,-4369,-4382,-4391,-4397,-4400,-4401,-4402,-4402,-4403,-4406,-4411,-4417,-4423,
+-4430,-4436,-4443,-4449,-4456,-4462,-4466,-4467,-4465,-4461,-4456,-4452,-4449,-4446,-4441,-4434,-4426,-4419,-4414,-4413,-4416,
+-4420,-4424,-4423,-4420,-4414,-4409,-4405,-4405,-4405,-4402,-4394,-4380,-4361,-4342,-4325,-4312,-4305,-4301,-4298,-4294,-4288,
+-4282,-4277,-4274,-4270,-4265,-4258,-4249,-4238,-4226,-4216,-4207,-4199,-4190,-4180,-4167,-4154,-4142,-4131,-4121,-4111,-4100,
+-4087,-4074,-4060,-4047,-4036,-4025,-4012,-3996,-3977,-3957,-3937,-3920,-3907,-3897,-3888,-3877,-3865,-3850,-3835,-3820,-3807,
+-3794,-3779,-3762,-3741,-3719,-3696,-3675,-3655,-3638,-3620,-3601,-3580,-3558,-3536,-3515,-3496,-3479,-3465,-3450,-3436,-3422,
+-3409,-3395,-3382,-3368,-3353,-3338,-3322,-3306,-3292,-3279,-3268,-3257,-3246,-3233,-3219,-3204,-3189,-3174,-3159,-3143,-3128,
+-3112,-3097,-3082,-3067,-3054,-3041,-3028,-3016,-3004,-2994,-2986,-2979,-2972,-2964,-2955,-2946,-2937,-2929,-2923,-2920,-2918,
+-2917,-2914,-2910,-2904,-2897,-2891,-2886,-2882,-2878,-2874,-2870,-2865,-2859,-2853,-2848,-2843,-2839,-2835,-2831,-2827,-2822,
+-2817,-2811,-2806,-2801,-2796,-2793,-2789,-2786,-2782,-2778,-2772,-2766,-2758,-2750,-2740,-2731,-2721,-2711,-2701,-2693,-2687,
+-2683,-2680,-2677,-2674,-2670,-2664,-2658,-2651,-2645,-2640,-2636,-2633,-2632,-2633,-2635,-2637,-2638,-2637,-2632,-2623,-2609,
+-2591,-2571,-2549,-2526,-2503,-2481,-2459,-2437,-2418,-2400,-2384,-2371,-2359,-2349,-2341,-2333,-2326,-2319,-2313,-2306,-2298,
+-2290,-2280,-2269,-2258,-2246,-2234,-2223,-2212,-2203,-2198,-2197,-2201,-2207,-2214,-2218,-2219,-2214,-2207,-2197,-2187,-2178,
+-2169,-2162,-2153,-2144,-2134,-2124,-2114,-2105,-2097,-2090,-2083,-2078,-2074,-2073,-2075,-2078,-2082,-2083,-2080,-2074,-2065,
+-2054,-2045,-2040,-2041,-2048,-2061,-2080,-2101,-2124,-2145,-2162,-2174,-2181,-2183,-2181,-2175,-2167,-2157,-2144,-2130,-2114,
+-2097,-2081,-2063,-2045,-2025,-2004,-1983,-1963,-1947,-1936,-1929,-1927,-1928,-1929,-1931,-1934,-1937,-1939,-1938,-1933,-1920,
+-1900,-1873,-1842,-1812,-1786,-1763,-1744,-1726,-1708,-1690,-1672,-1657,-1645,-1636,-1629,-1622,-1612,-1600,-1588,-1576,-1568,
+-1563,-1560,-1558,-1552,-1543,-1532,-1518,-1504,-1490,-1476,-1461,-1445,-1428,-1413,-1400,-1392,-1387,-1382,-1372,-1354,-1326,
+-1289,-1247,-1205,-1170,-1147,-1135,-1135,-1141,-1147,-1150,-1147,-1137,-1122,-1107,-1094,-1085,-1081,-1079,-1075,-1066,-1051,
+-1030,-1005,-978,-954,-933,-917,-903,-892,-881,-871,-859,-846,-831,-814,-794,-772,-747,-720,-693,-668,-644,
+-624,-607,-594,-583,-572,-562,-548,-532,-511,-486,-459,-431,-404,-378,-354,-332,-310,-288,-265,-244,-223,
+-202,-184,-167,-151,-137,-123,-109,-92,-73,-49,-21,11,45,79,113,145,175,204,234,264,295,
+325,356,386,417,448,480,515,550,587,626,667,711,758,807,858,909,959,1008,1054,1098,1139,
+1175,1205,1230,1249,1266,1285,1309,1339,1374,1414,1453,1490,1523,1552,1579,1605,1630,1652,1670,1681,1687,
+1690,1694,1701,1714,1731,1752,1772,1793,1815,1840,1869,1902,1936,1967,1988,1995,1989,1971,1949,1930,1918,
+1918,1929,1948,1970,1991,2008,2021,2029,2035,2039,2044,2049,2055,2059,2060,2057,2049,2036,2022,2009,2001,
+1999,2004,2012,2020,2023,2019,2010,1999,1990,1986,1988,1994,1999,2001,1998,1990,1980,1973,1972,1976,1986,
+1998,2010,2022,2034,2048,2065,2084,2101,2115,2121,2119,2112,2101,2089,2077,2065,2052,2037,2020,2003,1988,
+1975,1967,1960,1955,1949,1945,1943,1945,1950,1958,1967,1973,1976,1978,1981,1988,1999,2011,2020,2025,2025,
+2023,2021,2026,2037,2055,2076,2097,2115,2132,2146,2161,2174,2185,2191,2193,2193,2194,2202,2216,2235,2256,
+2274,2287,2296,2305,2319,2338,2360,2381,2397,2405,2409,2410,2412,2415,2416,2409,2393,2370,2345,2325,2311,
+2303,2292,2272,2239,2198,2156,2118,2082,2036,1960,1836,1659,1446,1230,1057,967,977,1080,1245,1428,1592,
+1714,1790,1834,1862,1890,1921,1954,1982,2000,2011,2017,2026,2037,2051,2062,2070,2073,2076,2082,2093,2106,
+2116,2119,2114,2104,2096,2096,2106,2119,2130,2128,2111,2082,2049,2022,2007,2004,2008,2013,2011,2003,1989,
+1977,1968,1966,1968,1972,1974,1974,1972,1969,1966,1963,1959,1952,1943,1932,1920,1910,1900,1890,1880,1870,
+1863,1859,1861,1867,1875,1882,1885,1882,1875,1867,1861,1858,1858,1859,1859,1859,1859,1860,1863,1867,1871,
+1872,1871,1868,1865,1863,1864,1866,1782,1788,1791,1791,1785,1776,1766,1756,1750,1746,1745,1744,1743,1741,
+1739,1736,1734,1733,1733,1736,1741,1748,1755,1761,1766,1769,1770,1772,1777,1785,1796,1809,1823,1834,1844,
+1851,1858,1866,1875,1887,1901,1916,1933,1952,1973,1996,2020,2044,2067,2089,2110,2131,2153,2175,2196,2215,
+2233,2248,2264,2280,2298,2317,2334,2349,2362,2372,2381,2392,2406,2422,2439,2455,2469,2483,2496,2510,2525,
+2539,2552,2563,2572,2580,2590,2601,2613,2625,2633,2639,2643,2649,2661,2679,2703,2728,2750,2765,2771,2771,
+2767,2765,2765,2771,2780,2792,2807,2826,2849,2875,2900,2922,2938,2946,2949,2951,2956,2966,2981,2997,3011,
+3020,3024,3025,3027,3033,3042,3055,3069,3082,3095,3109,3125,3146,3170,3194,3217,3235,3249,3259,3269,3279,
+3289,3299,3308,3314,3320,3326,3334,3345,3359,3374,3390,3404,3417,3430,3444,3459,3476,3492,3508,3522,3536,
+3548,3561,3571,3580,3586,3589,3589,3589,3588,3589,3591,3593,3595,3595,3595,3595,3596,3599,3603,3607,3609,
+3610,3608,3604,3599,3594,3587,3579,3569,3557,3543,3528,3514,3500,3487,3474,3459,3444,3430,3417,3409,3404,
+3405,3408,3412,3415,3417,3417,3416,3414,3413,3412,3412,3413,3414,3415,3414,3413,3408,3401,3391,3379,3369,
+3361,3358,3358,3359,3361,3361,3359,3356,3354,3354,3357,3359,3360,3357,3351,3342,3333,3326,3320,3316,3310,
+3301,3289,3274,3260,3248,3237,3227,3214,3197,3176,3155,3139,3132,3135,3147,3162,3175,3184,3187,3187,3187,
+3191,3197,3204,3209,3209,3202,3190,3173,3154,3132,3107,3080,3050,3022,2998,2979,2967,2960,2953,2943,2930,
+2914,2901,2893,2895,2908,2928,2951,2973,2991,3003,3011,3016,3018,3018,3016,3011,3002,2991,2979,2967,2954,
+2939,2922,2901,2877,2850,2822,2794,2767,2739,2709,2677,2642,2606,2571,2540,2514,2494,2478,2464,2447,2426,
+2398,2360,2313,2255,2187,2110,2027,1940,1854,1772,1695,1627,1568,1517,1474,1437,1405,1375,1348,1323,1301,
+1281,1262,1245,1227,1208,1185,1158,1127,1095,1062,1030,1001,974,948,924,900,876,851,825,798,767,
+734,699,662,626,593,563,536,512,488,462,435,405,373,338,301,262,221,181,141,104,69,
+37,5,-24,-55,-86,-115,-143,-167,-191,-214,-239,-268,-299,-332,-365,-397,-428,-458,-490,-522,-557,
+-592,-625,-655,-681,-703,-722,-741,-759,-778,-797,-817,-838,-860,-883,-910,-938,-969,-1001,-1033,-1065,-1098,
+-1129,-1160,-1191,-1219,-1247,-1273,-1300,-1327,-1354,-1384,-1413,-1443,-1473,-1503,-1532,-1561,-1591,-1620,-1648,-1675,-1702,
+-1728,-1755,-1784,-1814,-1844,-1874,-1902,-1927,-1951,-1974,-1998,-2024,-2050,-2078,-2104,-2129,-2152,-2173,-2194,-2216,-2239,
+-2263,-2288,-2313,-2337,-2359,-2379,-2398,-2416,-2434,-2454,-2474,-2497,-2519,-2540,-2559,-2576,-2590,-2604,-2618,-2634,-2653,
+-2673,-2693,-2713,-2730,-2746,-2761,-2775,-2791,-2807,-2824,-2841,-2858,-2873,-2888,-2901,-2913,-2924,-2934,-2944,-2954,-2964,
+-2974,-2985,-2995,-3005,-3013,-3020,-3027,-3032,-3038,-3043,-3046,-3048,-3048,-3047,-3046,-3047,-3050,-3055,-3061,-3066,-3069,
+-3070,-3068,-3066,-3063,-3062,-3064,-3066,-3070,-3074,-3077,-3078,-3079,-3077,-3074,-3069,-3062,-3055,-3048,-3042,-3039,-3037,
+-3036,-3036,-3034,-3029,-3020,-3008,-2993,-2977,-2962,-2949,-2938,-2930,-2923,-2917,-2909,-2901,-2892,-2883,-2877,-2873,-2871,
+-2868,-2862,-2851,-2836,-2821,-2809,-2803,-2802,-2805,-2807,-2805,-2796,-2782,-2765,-2749,-2738,-2731,-2727,-2725,-2722,-2719,
+-2717,-2715,-2716,-2716,-2718,-2721,-2729,-2745,-2771,-2806,-2844,-2877,-2896,-2900,-2890,-2875,-2866,-2870,-2885,-2906,-2922,
+-2925,-2916,-2904,-2905,-2934,-3000,-3097,-3210,-3315,-3394,-3432,-3431,-3401,-3361,-3328,-3311,-3314,-3333,-3361,-3392,-3421,
+-3448,-3474,-3503,-3534,-3567,-3601,-3632,-3660,-3685,-3709,-3734,-3760,-3788,-3816,-3843,-3868,-3890,-3911,-3931,-3953,-3976,
+-4000,-4023,-4043,-4061,-4076,-4091,-4108,-4128,-4153,-4180,-4208,-4233,-4255,-4273,-4290,-4306,-4324,-4343,-4364,-4385,-4404,
+-4421,-4435,-4445,-4453,-4457,-4460,-4461,-4462,-4464,-4468,-4473,-4480,-4487,-4494,-4501,-4507,-4514,-4520,-4526,-4529,-4529,
+-4526,-4521,-4515,-4510,-4506,-4501,-4496,-4489,-4480,-4472,-4465,-4461,-4460,-4460,-4460,-4457,-4451,-4445,-4441,-4440,-4443,
+-4447,-4449,-4447,-4438,-4423,-4404,-4384,-4366,-4351,-4339,-4329,-4320,-4312,-4306,-4302,-4298,-4294,-4290,-4283,-4275,-4266,
+-4258,-4251,-4245,-4239,-4230,-4219,-4205,-4190,-4176,-4164,-4154,-4146,-4137,-4129,-4119,-4108,-4097,-4086,-4073,-4058,-4040,
+-4019,-3997,-3977,-3961,-3949,-3940,-3932,-3922,-3910,-3896,-3881,-3866,-3852,-3839,-3825,-3809,-3791,-3770,-3748,-3727,-3708,
+-3691,-3674,-3656,-3637,-3617,-3596,-3575,-3555,-3536,-3518,-3501,-3485,-3470,-3456,-3444,-3432,-3419,-3404,-3388,-3371,-3354,
+-3337,-3323,-3310,-3298,-3286,-3274,-3261,-3247,-3234,-3220,-3207,-3193,-3179,-3165,-3151,-3137,-3124,-3110,-3096,-3082,-3068,
+-3055,-3043,-3033,-3025,-3018,-3011,-3005,-2997,-2991,-2985,-2981,-2978,-2976,-2974,-2970,-2964,-2957,-2950,-2945,-2941,-2938,
+-2936,-2934,-2930,-2924,-2916,-2908,-2900,-2893,-2887,-2882,-2877,-2872,-2867,-2861,-2855,-2849,-2844,-2841,-2838,-2836,-2834,
+-2832,-2830,-2826,-2821,-2816,-2810,-2803,-2795,-2786,-2776,-2765,-2754,-2744,-2735,-2729,-2723,-2719,-2713,-2706,-2698,-2688,
+-2677,-2667,-2659,-2653,-2650,-2650,-2652,-2655,-2659,-2662,-2664,-2663,-2658,-2649,-2636,-2620,-2601,-2582,-2563,-2544,-2526,
+-2509,-2492,-2476,-2460,-2443,-2428,-2414,-2402,-2391,-2380,-2370,-2360,-2350,-2340,-2330,-2322,-2314,-2307,-2298,-2289,-2279,
+-2269,-2261,-2256,-2255,-2257,-2261,-2263,-2262,-2259,-2254,-2247,-2240,-2233,-2227,-2219,-2210,-2200,-2190,-2179,-2169,-2160,
+-2150,-2140,-2129,-2119,-2110,-2106,-2105,-2107,-2111,-2116,-2118,-2118,-2115,-2109,-2104,-2100,-2099,-2102,-2111,-2124,-2139,
+-2156,-2172,-2186,-2196,-2204,-2211,-2217,-2223,-2229,-2232,-2231,-2224,-2212,-2197,-2179,-2160,-2140,-2119,-2096,-2071,-2044,
+-2018,-1994,-1973,-1957,-1946,-1939,-1937,-1938,-1942,-1948,-1953,-1955,-1950,-1938,-1920,-1898,-1874,-1852,-1831,-1812,-1793,
+-1771,-1747,-1723,-1701,-1683,-1671,-1662,-1654,-1646,-1635,-1622,-1610,-1599,-1592,-1588,-1584,-1580,-1573,-1563,-1551,-1538,
+-1524,-1510,-1495,-1478,-1460,-1443,-1427,-1415,-1405,-1396,-1384,-1367,-1345,-1318,-1289,-1262,-1243,-1232,-1229,-1231,-1234,
+-1234,-1228,-1215,-1197,-1176,-1155,-1137,-1124,-1114,-1106,-1099,-1089,-1075,-1058,-1037,-1015,-993,-973,-955,-940,-926,
+-915,-904,-893,-882,-869,-852,-833,-810,-783,-753,-722,-692,-663,-637,-616,-600,-587,-577,-566,-555,-540,
+-523,-503,-482,-461,-441,-421,-401,-380,-357,-332,-306,-280,-256,-235,-216,-199,-184,-169,-153,-135,-114,
+-90,-63,-33,-2,29,60,90,119,148,176,205,235,266,298,330,364,399,435,472,509,547,
+583,620,656,694,735,779,826,875,926,977,1028,1077,1123,1164,1198,1226,1248,1267,1288,1314,1345,
+1381,1419,1457,1492,1523,1551,1577,1602,1626,1647,1665,1679,1688,1696,1704,1715,1729,1745,1763,1779,1796,
+1813,1834,1859,1888,1918,1943,1960,1964,1957,1942,1923,1908,1899,1899,1909,1925,1947,1971,1996,2020,2040,
+2056,2066,2071,2072,2069,2065,2060,2055,2050,2044,2039,2036,2035,2038,2043,2047,2050,2047,2041,2032,2024,
+2020,2021,2025,2029,2029,2023,2011,1998,1989,1987,1993,2005,2020,2032,2039,2042,2043,2045,2050,2060,2071,
+2082,2089,2094,2096,2097,2096,2091,2082,2066,2045,2020,1998,1981,1971,1967,1964,1959,1951,1941,1931,1928,
+1931,1942,1957,1972,1986,1997,2007,2018,2031,2042,2051,2053,2050,2044,2039,2039,2047,2062,2080,2098,2114,
+2129,2142,2157,2172,2186,2195,2198,2198,2196,2200,2211,2229,2253,2275,2294,2306,2315,2322,2332,2345,2361,
+2376,2389,2399,2406,2410,2410,2406,2395,2379,2359,2340,2326,2317,2310,2298,2276,2240,2191,2134,2071,1999,
+1911,1794,1641,1458,1264,1092,975,942,997,1127,1299,1474,1624,1731,1798,1839,1868,1899,1934,1971,2003,
+2027,2044,2057,2069,2080,2089,2093,2091,2086,2083,2087,2098,2112,2124,2126,2118,2104,2090,2086,2093,2108,
+2124,2132,2127,2109,2086,2064,2049,2042,2041,2039,2033,2021,2007,1995,1988,1986,1989,1992,1991,1986,1977,
+1966,1956,1946,1938,1928,1917,1905,1891,1878,1864,1851,1838,1825,1815,1808,1804,1804,1804,1805,1803,1800,
+1796,1794,1796,1799,1803,1806,1804,1800,1795,1791,1790,1791,1793,1794,1792,1787,1782,1778,1779,1782,1697,
+1706,1714,1717,1713,1703,1691,1679,1669,1665,1665,1668,1673,1678,1683,1689,1695,1702,1710,1719,1728,1738,
+1747,1754,1759,1763,1766,1770,1776,1785,1797,1810,1824,1838,1850,1861,1872,1884,1897,1911,1926,1942,1960,
+1979,2000,2022,2046,2070,2094,2117,2140,2163,2186,2209,2230,2248,2263,2275,2286,2297,2309,2324,2341,2357,
+2373,2387,2400,2413,2426,2439,2453,2466,2478,2489,2498,2507,2517,2528,2540,2553,2565,2578,2589,2599,2606,
+2610,2614,2618,2626,2639,2659,2683,2708,2729,2741,2745,2742,2735,2730,2730,2736,2749,2765,2785,2805,2827,
+2849,2870,2889,2903,2912,2918,2922,2927,2937,2950,2965,2978,2986,2988,2985,2981,2980,2983,2991,3002,3015,
+3028,3042,3059,3079,3104,3130,3156,3179,3197,3211,3223,3234,3246,3258,3268,3276,3281,3286,3292,3300,3313,
+3327,3342,3355,3366,3376,3388,3402,3418,3437,3454,3470,3483,3494,3505,3517,3530,3543,3554,3561,3564,3564,
+3562,3561,3561,3562,3563,3564,3564,3564,3564,3565,3568,3570,3570,3568,3564,3559,3554,3550,3546,3540,3533,
+3521,3506,3488,3468,3450,3433,3418,3405,3394,3384,3377,3372,3371,3372,3375,3379,3382,3385,3386,3386,3386,
+3387,3388,3389,3390,3390,3390,3389,3385,3379,3370,3358,3346,3335,3328,3326,3326,3329,3331,3331,3328,3326,
+3325,3327,3331,3336,3339,3338,3333,3324,3316,3310,3305,3302,3296,3287,3272,3254,3235,3218,3203,3190,3176,
+3160,3142,3125,3111,3107,3111,3124,3139,3154,3163,3167,3168,3168,3170,3174,3178,3179,3176,3167,3154,3138,
+3120,3102,3081,3058,3033,3007,2984,2966,2953,2944,2937,2928,2915,2900,2887,2880,2881,2891,2907,2926,2941,
+2952,2956,2955,2951,2946,2940,2934,2927,2919,2911,2903,2896,2889,2880,2867,2848,2825,2797,2769,2742,2716,
+2691,2665,2637,2605,2571,2538,2509,2487,2471,2462,2454,2446,2434,2416,2390,2355,2310,2253,2184,2103,2011,
+1914,1815,1721,1636,1563,1502,1451,1408,1370,1335,1303,1273,1247,1226,1208,1194,1180,1164,1146,1123,1096,
+1066,1033,1000,968,937,908,881,857,835,813,789,763,734,700,663,626,589,556,526,499,474,
+448,422,394,363,331,297,261,223,185,146,108,73,40,8,-21,-51,-83,-115,-146,-176,-203,
+-227,-250,-273,-298,-326,-355,-386,-418,-450,-482,-516,-551,-586,-620,-652,-678,-700,-717,-732,-746,-762,
+-779,-799,-821,-844,-870,-898,-927,-957,-988,-1018,-1049,-1078,-1108,-1137,-1167,-1196,-1226,-1257,-1287,-1317,-1347,
+-1377,-1407,-1436,-1465,-1492,-1520,-1547,-1575,-1603,-1632,-1660,-1688,-1714,-1742,-1770,-1798,-1829,-1860,-1890,-1919,-1946,
+-1971,-1995,-2019,-2044,-2070,-2097,-2123,-2149,-2174,-2197,-2218,-2239,-2260,-2282,-2305,-2329,-2353,-2377,-2400,-2422,-2442,
+-2461,-2480,-2500,-2521,-2542,-2563,-2582,-2599,-2615,-2629,-2643,-2659,-2677,-2697,-2717,-2737,-2755,-2771,-2786,-2801,-2817,
+-2834,-2852,-2869,-2887,-2903,-2917,-2931,-2943,-2955,-2966,-2977,-2987,-2998,-3009,-3020,-3031,-3042,-3053,-3064,-3073,-3082,
+-3089,-3095,-3098,-3099,-3099,-3099,-3099,-3100,-3103,-3108,-3113,-3117,-3120,-3121,-3121,-3120,-3119,-3118,-3119,-3121,-3124,
+-3128,-3131,-3133,-3134,-3133,-3131,-3127,-3122,-3117,-3113,-3110,-3107,-3105,-3101,-3097,-3090,-3082,-3071,-3060,-3047,-3035,
+-3022,-3010,-2999,-2989,-2980,-2972,-2963,-2954,-2945,-2938,-2933,-2931,-2930,-2929,-2925,-2916,-2902,-2887,-2873,-2864,-2861,
+-2862,-2864,-2864,-2859,-2849,-2835,-2821,-2808,-2797,-2788,-2779,-2771,-2764,-2759,-2757,-2757,-2758,-2759,-2761,-2766,-2777,
+-2798,-2830,-2868,-2905,-2932,-2942,-2936,-2921,-2905,-2899,-2907,-2926,-2948,-2962,-2963,-2954,-2943,-2945,-2973,-3031,-3115,
+-3212,-3304,-3375,-3417,-3430,-3422,-3405,-3391,-3386,-3394,-3414,-3440,-3471,-3503,-3534,-3565,-3596,-3626,-3653,-3678,-3701,
+-3723,-3745,-3768,-3795,-3824,-3854,-3883,-3911,-3936,-3958,-3980,-4001,-4022,-4043,-4063,-4082,-4101,-4119,-4138,-4158,-4180,
+-4203,-4225,-4246,-4265,-4282,-4300,-4319,-4341,-4364,-4389,-4412,-4433,-4451,-4465,-4477,-4487,-4496,-4502,-4508,-4512,-4516,
+-4520,-4526,-4532,-4539,-4546,-4552,-4557,-4562,-4566,-4570,-4574,-4576,-4575,-4572,-4568,-4562,-4558,-4554,-4551,-4548,-4542,
+-4535,-4526,-4517,-4510,-4505,-4501,-4497,-4492,-4486,-4480,-4476,-4475,-4478,-4483,-4487,-4487,-4482,-4470,-4454,-4435,-4416,
+-4397,-4380,-4366,-4353,-4343,-4336,-4330,-4327,-4323,-4319,-4313,-4306,-4298,-4292,-4286,-4282,-4277,-4270,-4260,-4248,-4234,
+-4220,-4207,-4195,-4185,-4175,-4165,-4155,-4144,-4134,-4124,-4113,-4099,-4082,-4063,-4042,-4023,-4006,-3992,-3982,-3972,-3962,
+-3949,-3935,-3921,-3906,-3893,-3880,-3867,-3852,-3835,-3816,-3796,-3775,-3754,-3735,-3717,-3699,-3682,-3665,-3647,-3630,-3613,
+-3596,-3578,-3559,-3541,-3524,-3509,-3496,-3483,-3471,-3457,-3441,-3424,-3407,-3389,-3373,-3358,-3343,-3329,-3315,-3301,-3287,
+-3274,-3262,-3250,-3238,-3227,-3215,-3202,-3190,-3178,-3166,-3153,-3140,-3127,-3113,-3101,-3090,-3080,-3072,-3064,-3057,-3051,
+-3045,-3041,-3038,-3037,-3035,-3033,-3028,-3021,-3014,-3006,-3000,-2996,-2994,-2993,-2991,-2989,-2984,-2978,-2970,-2961,-2952,
+-2944,-2937,-2930,-2923,-2916,-2909,-2903,-2897,-2893,-2889,-2886,-2884,-2882,-2880,-2877,-2874,-2871,-2868,-2864,-2861,-2856,
+-2850,-2842,-2831,-2819,-2807,-2796,-2788,-2781,-2776,-2771,-2765,-2757,-2747,-2735,-2724,-2713,-2704,-2695,-2688,-2681,-2675,
+-2670,-2667,-2665,-2665,-2665,-2664,-2660,-2654,-2646,-2636,-2625,-2614,-2603,-2592,-2579,-2565,-2549,-2532,-2515,-2501,-2488,
+-2476,-2465,-2453,-2439,-2423,-2407,-2392,-2379,-2369,-2360,-2352,-2344,-2335,-2327,-2320,-2316,-2314,-2314,-2315,-2315,-2313,
+-2308,-2303,-2297,-2291,-2285,-2279,-2272,-2264,-2255,-2246,-2236,-2226,-2216,-2206,-2194,-2181,-2169,-2159,-2152,-2149,-2149,
+-2151,-2155,-2158,-2160,-2160,-2160,-2159,-2158,-2159,-2162,-2168,-2176,-2187,-2198,-2207,-2215,-2221,-2226,-2231,-2237,-2246,
+-2255,-2262,-2266,-2264,-2257,-2247,-2235,-2223,-2211,-2198,-2182,-2162,-2138,-2110,-2080,-2051,-2023,-2000,-1980,-1964,-1953,
+-1945,-1942,-1941,-1941,-1939,-1935,-1930,-1923,-1916,-1909,-1903,-1893,-1879,-1858,-1831,-1801,-1772,-1746,-1726,-1711,-1699,
+-1689,-1677,-1663,-1648,-1634,-1623,-1615,-1608,-1602,-1595,-1586,-1576,-1566,-1555,-1544,-1531,-1517,-1501,-1483,-1464,-1446,
+-1429,-1413,-1395,-1377,-1358,-1339,-1323,-1312,-1307,-1307,-1310,-1313,-1311,-1302,-1287,-1266,-1243,-1219,-1197,-1179,-1162,
+-1148,-1133,-1119,-1104,-1088,-1070,-1052,-1032,-1011,-991,-971,-952,-936,-922,-911,-900,-890,-879,-865,-848,-828,
+-804,-778,-749,-720,-691,-664,-641,-621,-605,-592,-579,-566,-551,-535,-519,-503,-488,-474,-460,-444,-425,
+-402,-376,-348,-321,-295,-273,-253,-236,-219,-201,-180,-157,-131,-103,-74,-43,-13,16,45,74,103,
+131,160,188,216,244,273,305,340,378,419,461,502,540,576,610,643,678,717,759,804,851,
+898,946,993,1040,1086,1130,1171,1208,1240,1269,1298,1326,1356,1388,1421,1452,1481,1508,1534,1560,1588,
+1616,1643,1667,1686,1700,1710,1718,1726,1736,1747,1760,1773,1787,1802,1819,1837,1857,1876,1893,1906,1915,
+1920,1925,1929,1934,1939,1944,1948,1952,1958,1968,1983,2002,2023,2042,2055,2061,2061,2057,2052,2049,2049,
+2051,2056,2061,2065,2069,2072,2075,2077,2078,2077,2075,2074,2074,2077,2080,2080,2076,2065,2048,2029,2014,
+2008,2012,2024,2039,2051,2054,2048,2036,2020,2007,2000,1999,2001,2006,2012,2020,2032,2047,2062,2074,2077,
+2067,2047,2020,1993,1973,1962,1959,1959,1956,1947,1932,1917,1906,1905,1914,1932,1954,1976,1996,2014,2030,
+2045,2058,2066,2068,2064,2057,2050,2048,2053,2064,2078,2092,2105,2117,2130,2146,2165,2185,2201,2212,2217,
+2218,2220,2228,2242,2262,2285,2305,2319,2329,2335,2341,2348,2358,2369,2380,2389,2395,2397,2396,2389,2377,
+2360,2341,2322,2304,2289,2273,2253,2222,2177,2118,2045,1956,1849,1722,1571,1402,1227,1070,958,913,948,
+1056,1216,1396,1562,1693,1782,1836,1868,1895,1924,1959,1995,2027,2052,2071,2085,2097,2106,2110,2107,2098,
+2087,2080,2080,2088,2100,2108,2107,2095,2074,2053,2039,2037,2044,2055,2062,2060,2049,2033,2017,2004,1997,
+1992,1986,1976,1963,1948,1936,1930,1929,1932,1933,1931,1923,1912,1899,1887,1876,1867,1858,1847,1835,1822,
+1808,1794,1782,1771,1761,1753,1746,1741,1736,1730,1724,1717,1711,1709,1711,1717,1727,1736,1741,1740,1734,
+1724,1715,1709,1706,1705,1704,1701,1696,1691,1688,1691,1697,1618,1630,1642,1649,1650,1645,1635,1624,1616,
+1611,1610,1613,1618,1625,1634,1643,1655,1667,1681,1694,1706,1717,1726,1734,1741,1748,1756,1766,1778,1791,
+1806,1821,1836,1851,1866,1880,1895,1909,1924,1939,1955,1972,1989,2009,2031,2054,2079,2104,2129,2153,2176,
+2198,2219,2240,2258,2274,2287,2297,2306,2316,2329,2343,2360,2378,2396,2412,2427,2440,2454,2466,2478,2489,
+2498,2505,2511,2516,2522,2530,2539,2550,2562,2573,2582,2588,2591,2594,2597,2604,2617,2636,2658,2680,2698,
+2708,2709,2704,2696,2690,2691,2700,2716,2738,2761,2784,2806,2826,2844,2860,2873,2883,2890,2896,2903,2912,
+2925,2939,2952,2960,2961,2957,2950,2943,2940,2942,2949,2959,2971,2984,2999,3018,3042,3068,3095,3121,3142,
+3158,3172,3185,3199,3213,3227,3239,3247,3253,3259,3265,3275,3287,3300,3312,3321,3327,3334,3345,3359,3378,
+3399,3418,3433,3445,3454,3463,3475,3489,3505,3520,3529,3534,3533,3531,3528,3528,3529,3531,3533,3533,3533,
+3531,3531,3531,3532,3531,3529,3524,3519,3513,3508,3504,3500,3494,3482,3466,3446,3424,3402,3384,3369,3358,
+3351,3346,3344,3342,3343,3344,3346,3347,3349,3351,3353,3354,3357,3359,3360,3361,3361,3361,3360,3357,3353,
+3347,3339,3328,3316,3305,3298,3294,3294,3297,3299,3300,3300,3299,3300,3303,3309,3314,3318,3318,3314,3307,
+3300,3294,3290,3286,3280,3268,3251,3229,3206,3185,3168,3153,3141,3129,3117,3105,3097,3094,3097,3106,3117,
+3127,3133,3137,3139,3141,3145,3150,3154,3154,3150,3140,3126,3110,3093,3077,3060,3041,3020,2998,2978,2961,
+2948,2938,2928,2917,2901,2884,2867,2855,2851,2856,2867,2881,2892,2898,2896,2889,2879,2868,2859,2851,2846,
+2843,2841,2841,2842,2840,2835,2824,2805,2781,2752,2722,2693,2667,2643,2618,2592,2565,2538,2513,2494,2480,
+2471,2465,2458,2448,2434,2415,2392,2365,2332,2291,2237,2168,2083,1986,1881,1775,1676,1587,1511,1448,1394,
+1347,1304,1265,1230,1200,1175,1155,1138,1123,1107,1090,1069,1045,1018,990,961,932,902,874,846,819,
+794,768,741,712,680,647,612,578,546,516,489,463,436,409,380,349,317,285,253,220,186,
+150,113,77,41,8,-23,-54,-86,-118,-151,-184,-216,-245,-271,-293,-313,-334,-355,-380,-407,-438,
+-471,-507,-544,-581,-618,-651,-679,-702,-719,-731,-742,-752,-765,-781,-801,-825,-852,-882,-913,-944,-976,
+-1006,-1036,-1064,-1091,-1118,-1145,-1173,-1202,-1232,-1263,-1295,-1327,-1358,-1389,-1420,-1450,-1480,-1508,-1536,-1563,-1591,
+-1618,-1645,-1672,-1700,-1728,-1757,-1787,-1818,-1849,-1881,-1911,-1940,-1967,-1993,-2018,-2043,-2068,-2093,-2119,-2145,-2171,
+-2196,-2219,-2242,-2262,-2283,-2303,-2323,-2345,-2369,-2394,-2419,-2444,-2467,-2488,-2508,-2527,-2545,-2564,-2583,-2602,-2619,
+-2636,-2651,-2667,-2684,-2702,-2721,-2740,-2758,-2774,-2789,-2803,-2817,-2833,-2850,-2870,-2890,-2910,-2929,-2947,-2963,-2977,
+-2990,-3002,-3014,-3024,-3034,-3044,-3054,-3065,-3076,-3088,-3101,-3113,-3123,-3132,-3138,-3143,-3146,-3149,-3152,-3156,-3159,
+-3163,-3166,-3169,-3170,-3171,-3171,-3172,-3173,-3174,-3176,-3178,-3181,-3183,-3186,-3187,-3188,-3187,-3185,-3181,-3177,-3173,
+-3171,-3171,-3173,-3174,-3174,-3170,-3163,-3152,-3140,-3127,-3114,-3102,-3091,-3080,-3069,-3059,-3049,-3040,-3030,-3021,-3012,
+-3003,-2996,-2990,-2987,-2987,-2986,-2983,-2976,-2965,-2951,-2937,-2927,-2921,-2920,-2922,-2923,-2921,-2914,-2904,-2892,-2879,
+-2866,-2854,-2841,-2828,-2816,-2807,-2801,-2800,-2801,-2803,-2806,-2810,-2818,-2835,-2861,-2894,-2930,-2960,-2978,-2979,-2968,
+-2951,-2938,-2937,-2949,-2970,-2991,-3004,-3004,-2995,-2985,-2986,-3007,-3052,-3119,-3197,-3275,-3341,-3390,-3420,-3435,-3442,
+-3448,-3457,-3472,-3492,-3516,-3544,-3573,-3603,-3632,-3659,-3685,-3707,-3728,-3747,-3767,-3790,-3815,-3844,-3876,-3908,-3940,
+-3971,-3998,-4023,-4044,-4063,-4080,-4096,-4112,-4130,-4151,-4174,-4200,-4225,-4248,-4268,-4285,-4300,-4315,-4333,-4354,-4378,
+-4405,-4430,-4452,-4471,-4485,-4497,-4508,-4518,-4528,-4537,-4545,-4552,-4558,-4565,-4572,-4581,-4590,-4597,-4603,-4608,-4611,
+-4614,-4617,-4619,-4620,-4618,-4614,-4609,-4602,-4597,-4594,-4591,-4589,-4586,-4580,-4573,-4564,-4556,-4549,-4544,-4539,-4534,
+-4529,-4523,-4517,-4513,-4511,-4511,-4510,-4507,-4501,-4492,-4478,-4463,-4447,-4431,-4416,-4403,-4391,-4381,-4373,-4368,-4364,
+-4362,-4359,-4354,-4348,-4340,-4332,-4324,-4316,-4309,-4301,-4293,-4284,-4274,-4263,-4251,-4239,-4226,-4213,-4200,-4188,-4176,
+-4166,-4156,-4147,-4135,-4121,-4104,-4086,-4067,-4049,-4033,-4020,-4008,-3997,-3985,-3972,-3960,-3947,-3934,-3921,-3908,-3894,
+-3877,-3860,-3840,-3820,-3799,-3779,-3758,-3739,-3721,-3705,-3691,-3677,-3664,-3650,-3635,-3618,-3600,-3582,-3565,-3549,-3535,
+-3521,-3507,-3491,-3475,-3459,-3443,-3427,-3411,-3396,-3380,-3364,-3348,-3333,-3319,-3307,-3295,-3283,-3272,-3260,-3248,-3236,
+-3225,-3213,-3202,-3191,-3181,-3170,-3160,-3151,-3143,-3135,-3127,-3119,-3111,-3105,-3100,-3097,-3095,-3093,-3090,-3086,-3079,
+-3071,-3062,-3055,-3049,-3045,-3043,-3042,-3040,-3037,-3033,-3028,-3021,-3014,-3006,-2998,-2991,-2984,-2977,-2970,-2963,-2956,
+-2950,-2945,-2940,-2936,-2932,-2929,-2927,-2924,-2922,-2919,-2917,-2915,-2913,-2909,-2903,-2894,-2884,-2872,-2860,-2849,-2841,
+-2834,-2828,-2823,-2816,-2809,-2801,-2792,-2783,-2774,-2763,-2751,-2738,-2723,-2709,-2696,-2687,-2682,-2680,-2680,-2679,-2677,
+-2672,-2667,-2661,-2654,-2648,-2641,-2633,-2622,-2610,-2598,-2587,-2579,-2572,-2567,-2560,-2550,-2535,-2516,-2495,-2473,-2453,
+-2435,-2420,-2407,-2395,-2385,-2376,-2371,-2368,-2368,-2370,-2371,-2371,-2367,-2362,-2354,-2346,-2338,-2332,-2325,-2319,-2313,
+-2306,-2299,-2291,-2282,-2272,-2262,-2250,-2237,-2226,-2217,-2210,-2206,-2203,-2202,-2202,-2201,-2201,-2201,-2202,-2203,-2205,
+-2207,-2210,-2215,-2221,-2228,-2237,-2245,-2252,-2256,-2258,-2259,-2261,-2263,-2266,-2267,-2267,-2265,-2260,-2255,-2250,-2246,
+-2244,-2241,-2236,-2225,-2209,-2188,-2163,-2136,-2108,-2080,-2053,-2027,-2002,-1980,-1962,-1948,-1939,-1932,-1929,-1929,-1931,
+-1935,-1942,-1947,-1948,-1943,-1929,-1907,-1878,-1847,-1818,-1793,-1774,-1759,-1745,-1730,-1714,-1696,-1679,-1663,-1650,-1639,
+-1630,-1621,-1612,-1602,-1593,-1585,-1578,-1569,-1559,-1547,-1532,-1514,-1494,-1472,-1449,-1426,-1402,-1380,-1362,-1350,-1344,
+-1345,-1349,-1354,-1354,-1348,-1334,-1314,-1291,-1268,-1247,-1229,-1213,-1197,-1179,-1160,-1139,-1118,-1098,-1078,-1058,-1038,
+-1017,-995,-972,-951,-932,-916,-903,-894,-885,-875,-864,-851,-835,-816,-795,-772,-747,-722,-697,-675,-655,
+-637,-621,-605,-589,-573,-556,-540,-525,-511,-498,-485,-470,-451,-429,-404,-378,-353,-329,-309,-290,-273,
+-253,-232,-208,-180,-151,-121,-90,-60,-30,0,30,61,92,123,152,178,202,227,252,283,319,
+360,405,451,494,532,565,595,624,657,693,735,779,823,867,908,949,991,1036,1083,1132,1179,
+1224,1264,1299,1330,1358,1385,1412,1438,1464,1490,1517,1545,1576,1607,1639,1667,1691,1708,1720,1727,1732,
+1736,1742,1751,1762,1776,1792,1807,1822,1836,1848,1859,1873,1890,1913,1941,1971,2000,2021,2031,2029,2017,
+2002,1989,1984,1987,1998,2011,2023,2031,2034,2035,2037,2042,2050,2060,2070,2076,2079,2079,2077,2076,2078,
+2083,2091,2102,2114,2125,2133,2135,2128,2111,2086,2058,2033,2016,2011,2016,2026,2033,2032,2018,1995,1967,
+1941,1922,1910,1904,1900,1895,1890,1889,1894,1908,1929,1950,1964,1965,1952,1930,1907,1892,1889,1898,1913,
+1928,1936,1937,1932,1927,1929,1939,1956,1978,2001,2021,2038,2052,2064,2073,2077,2076,2069,2059,2049,2043,
+2044,2052,2064,2078,2093,2109,2126,2147,2171,2197,2220,2238,2249,2254,2256,2261,2270,2285,2302,2320,2334,
+2345,2352,2358,2363,2369,2376,2381,2385,2386,2384,2379,2370,2358,2342,2322,2298,2271,2241,2206,2165,2116,
+2056,1984,1897,1793,1670,1529,1373,1214,1069,959,907,925,1013,1159,1334,1510,1662,1773,1843,1883,1906,
+1927,1952,1982,2014,2043,2066,2083,2097,2109,2117,2120,2116,2107,2096,2088,2087,2092,2099,2103,2097,2080,
+2055,2028,2006,1993,1988,1988,1987,1980,1969,1954,1941,1931,1925,1920,1912,1900,1884,1868,1854,1845,1842,
+1841,1840,1836,1829,1819,1808,1799,1790,1782,1774,1764,1752,1739,1725,1712,1701,1692,1685,1679,1675,1671,
+1666,1660,1652,1643,1635,1631,1632,1639,1650,1660,1668,1670,1666,1658,1649,1642,1636,1632,1627,1621,1614,
+1607,1605,1609,1618,1553,1566,1580,1591,1598,1599,1595,1590,1584,1580,1579,1579,1582,1586,1594,1604,1617,
+1631,1647,1662,1675,1686,1695,1703,1712,1722,1735,1750,1766,1782,1800,1817,1834,1851,1868,1886,1904,1922,
+1939,1958,1976,1995,2016,2038,2063,2088,2115,2142,2167,2191,2213,2234,2252,2269,2284,2296,2306,2315,2325,
+2336,2349,2365,2383,2402,2420,2437,2452,2466,2479,2491,2502,2511,2518,2523,2526,2529,2531,2535,2541,2548,
+2556,2563,2568,2572,2575,2579,2587,2599,2615,2633,2651,2664,2670,2669,2663,2657,2653,2657,2669,2689,2712,
+2737,2760,2780,2798,2814,2828,2842,2853,2863,2870,2877,2886,2896,2908,2920,2929,2933,2932,2925,2918,2912,
+2910,2913,2920,2929,2939,2951,2966,2985,3008,3033,3059,3082,3102,3118,3133,3147,3163,3180,3196,3210,3220,
+3227,3234,3242,3252,3264,3274,3282,3287,3290,3295,3305,3320,3340,3362,3381,3396,3405,3412,3420,3431,3447,
+3464,3479,3489,3494,3494,3492,3490,3490,3492,3494,3495,3494,3490,3487,3486,3486,3488,3490,3490,3486,3480,
+3473,3465,3458,3451,3443,3432,3416,3398,3379,3361,3346,3335,3328,3324,3321,3320,3318,3317,3315,3314,3313,
+3313,3313,3314,3317,3320,3323,3325,3326,3325,3322,3320,3316,3312,3307,3301,3292,3282,3273,3265,3261,3261,
+3264,3268,3271,3273,3275,3277,3281,3286,3291,3294,3295,3292,3286,3279,3273,3267,3261,3253,3240,3222,3200,
+3177,3156,3139,3126,3116,3108,3101,3094,3089,3087,3088,3092,3097,3101,3104,3107,3109,3114,3120,3127,3132,
+3134,3129,3118,3102,3085,3067,3050,3033,3016,2998,2979,2961,2945,2932,2920,2907,2891,2871,2847,2824,2806,
+2795,2793,2799,2809,2818,2823,2823,2817,2810,2801,2795,2791,2791,2792,2795,2798,2800,2799,2792,2778,2759,
+2733,2705,2675,2647,2621,2596,2573,2551,2531,2514,2503,2496,2492,2488,2480,2465,2443,2414,2383,2353,2327,
+2303,2276,2241,2190,2121,2034,1933,1826,1720,1623,1537,1464,1402,1349,1302,1259,1221,1186,1156,1130,1107,
+1085,1064,1041,1017,993,968,943,919,895,871,846,819,791,760,728,695,660,624,589,556,526,
+499,473,449,424,397,368,336,302,269,236,205,174,143,111,77,42,8,-25,-58,-89,-121,
+-153,-186,-220,-253,-283,-311,-335,-355,-374,-394,-416,-441,-471,-504,-541,-578,-615,-649,-678,-701,-720,
+-733,-743,-753,-764,-777,-794,-815,-840,-868,-898,-930,-961,-992,-1022,-1050,-1077,-1102,-1128,-1155,-1183,-1213,
+-1244,-1275,-1305,-1336,-1366,-1396,-1426,-1456,-1487,-1518,-1549,-1578,-1606,-1633,-1660,-1687,-1715,-1745,-1776,-1809,-1842,
+-1875,-1906,-1936,-1963,-1990,-2016,-2041,-2068,-2094,-2120,-2146,-2171,-2195,-2219,-2243,-2266,-2289,-2311,-2332,-2353,-2375,
+-2398,-2423,-2448,-2473,-2497,-2519,-2539,-2556,-2573,-2590,-2607,-2624,-2642,-2659,-2676,-2693,-2711,-2729,-2748,-2767,-2784,
+-2799,-2813,-2825,-2837,-2850,-2866,-2885,-2906,-2928,-2951,-2972,-2991,-3009,-3025,-3039,-3051,-3062,-3072,-3081,-3090,-3100,
+-3112,-3124,-3138,-3151,-3163,-3173,-3181,-3187,-3193,-3200,-3207,-3214,-3221,-3227,-3230,-3231,-3230,-3229,-3228,-3228,-3229,
+-3232,-3235,-3238,-3241,-3243,-3245,-3246,-3245,-3243,-3239,-3234,-3229,-3226,-3226,-3228,-3233,-3237,-3240,-3238,-3232,-3222,
+-3209,-3195,-3182,-3170,-3159,-3148,-3137,-3126,-3116,-3106,-3097,-3088,-3079,-3069,-3059,-3051,-3046,-3043,-3041,-3039,-3034,
+-3026,-3015,-3003,-2992,-2985,-2983,-2984,-2985,-2985,-2981,-2973,-2962,-2950,-2937,-2924,-2909,-2894,-2879,-2866,-2857,-2852,
+-2852,-2855,-2859,-2863,-2870,-2882,-2902,-2929,-2962,-2994,-3019,-3030,-3028,-3016,-3000,-2990,-2991,-3002,-3021,-3039,-3050,
+-3052,-3046,-3038,-3036,-3049,-3080,-3127,-3186,-3250,-3312,-3366,-3410,-3445,-3471,-3492,-3511,-3529,-3547,-3569,-3592,-3618,
+-3646,-3674,-3701,-3725,-3747,-3767,-3786,-3807,-3831,-3858,-3890,-3925,-3961,-3997,-4029,-4057,-4078,-4094,-4107,-4117,-4129,
+-4145,-4166,-4192,-4221,-4250,-4276,-4298,-4317,-4333,-4349,-4368,-4389,-4413,-4437,-4459,-4478,-4494,-4508,-4521,-4534,-4548,
+-4562,-4573,-4582,-4589,-4594,-4600,-4608,-4617,-4627,-4636,-4645,-4651,-4655,-4659,-4662,-4664,-4664,-4662,-4657,-4650,-4642,
+-4635,-4630,-4626,-4623,-4620,-4616,-4610,-4603,-4597,-4592,-4588,-4585,-4581,-4576,-4569,-4561,-4553,-4545,-4539,-4532,-4525,
+-4516,-4505,-4493,-4481,-4469,-4458,-4448,-4438,-4429,-4420,-4413,-4408,-4405,-4404,-4403,-4400,-4395,-4386,-4375,-4361,-4348,
+-4335,-4324,-4314,-4306,-4299,-4291,-4283,-4273,-4262,-4250,-4237,-4225,-4213,-4202,-4192,-4182,-4170,-4156,-4140,-4123,-4104,
+-4086,-4070,-4055,-4042,-4031,-4021,-4011,-4000,-3989,-3976,-3962,-3947,-3931,-3915,-3898,-3882,-3864,-3846,-3827,-3807,-3787,
+-3768,-3750,-3735,-3722,-3711,-3699,-3686,-3671,-3654,-3637,-3620,-3602,-3586,-3569,-3553,-3536,-3520,-3505,-3490,-3476,-3462,
+-3448,-3433,-3417,-3401,-3385,-3370,-3357,-3344,-3332,-3320,-3307,-3294,-3281,-3268,-3256,-3245,-3235,-3227,-3219,-3213,-3208,
+-3202,-3197,-3191,-3184,-3176,-3169,-3163,-3158,-3155,-3152,-3148,-3143,-3136,-3128,-3119,-3111,-3104,-3098,-3094,-3091,-3088,
+-3085,-3082,-3078,-3074,-3070,-3065,-3061,-3055,-3050,-3044,-3038,-3030,-3022,-3013,-3005,-2997,-2991,-2986,-2982,-2979,-2977,
+-2975,-2972,-2970,-2968,-2966,-2964,-2960,-2955,-2947,-2937,-2925,-2913,-2903,-2893,-2886,-2879,-2873,-2867,-2861,-2855,-2849,
+-2843,-2834,-2824,-2810,-2795,-2779,-2764,-2751,-2741,-2734,-2728,-2721,-2714,-2706,-2697,-2688,-2681,-2674,-2667,-2659,-2651,
+-2643,-2637,-2633,-2633,-2634,-2637,-2636,-2632,-2622,-2606,-2587,-2566,-2545,-2525,-2506,-2487,-2469,-2451,-2436,-2425,-2418,
+-2416,-2417,-2418,-2418,-2415,-2409,-2402,-2393,-2385,-2378,-2372,-2366,-2361,-2357,-2351,-2345,-2338,-2328,-2318,-2306,-2295,
+-2285,-2276,-2270,-2266,-2262,-2257,-2252,-2248,-2245,-2244,-2244,-2246,-2249,-2251,-2252,-2254,-2257,-2262,-2269,-2277,-2284,
+-2289,-2292,-2291,-2288,-2284,-2279,-2274,-2269,-2264,-2259,-2256,-2254,-2254,-2255,-2256,-2255,-2251,-2243,-2232,-2218,-2200,
+-2181,-2159,-2134,-2107,-2079,-2051,-2026,-2004,-1986,-1973,-1963,-1957,-1955,-1957,-1961,-1966,-1970,-1969,-1962,-1947,-1926,
+-1902,-1878,-1857,-1839,-1823,-1809,-1793,-1776,-1756,-1737,-1718,-1701,-1686,-1672,-1660,-1648,-1636,-1625,-1616,-1608,-1600,
+-1592,-1583,-1571,-1557,-1540,-1521,-1498,-1472,-1445,-1419,-1396,-1379,-1370,-1367,-1369,-1370,-1368,-1359,-1344,-1324,-1303,
+-1284,-1267,-1253,-1239,-1224,-1205,-1184,-1161,-1138,-1118,-1099,-1082,-1065,-1046,-1024,-1001,-977,-956,-938,-923,-911,
+-900,-890,-878,-864,-849,-832,-813,-793,-772,-750,-729,-708,-689,-672,-656,-639,-622,-604,-585,-566,-548,
+-532,-516,-500,-483,-464,-443,-421,-399,-378,-359,-341,-323,-304,-283,-259,-231,-202,-171,-141,-110,-80,
+-50,-18,14,48,82,113,142,166,188,209,234,264,303,349,399,449,494,532,562,587,611,
+638,671,709,750,791,830,865,901,939,983,1033,1088,1145,1198,1246,1286,1320,1349,1376,1403,1432,
+1461,1490,1518,1546,1574,1601,1629,1655,1680,1700,1716,1727,1735,1740,1745,1752,1763,1777,1794,1811,1827,
+1840,1852,1864,1879,1901,1933,1972,2014,2054,2083,2097,2095,2079,2057,2035,2019,2011,2011,2015,2020,2024,
+2026,2028,2032,2039,2050,2060,2067,2070,2069,2065,2061,2061,2067,2079,2096,2116,2134,2147,2152,2145,2126,
+2096,2062,2027,2001,1986,1982,1986,1988,1982,1964,1932,1895,1860,1836,1826,1826,1829,1827,1814,1792,1764,
+1741,1728,1727,1735,1744,1747,1742,1730,1721,1722,1741,1778,1826,1877,1923,1958,1983,2000,2016,2033,2053,
+2074,2092,2106,2114,2117,2116,2110,2101,2089,2072,2055,2039,2029,2027,2034,2049,2069,2092,2118,2144,2172,
+2199,2225,2247,2262,2270,2273,2275,2278,2287,2300,2317,2334,2348,2358,2364,2368,2371,2374,2377,2378,2377,
+2374,2368,2360,2351,2340,2326,2306,2280,2245,2200,2143,2075,1997,1910,1814,1711,1598,1477,1349,1220,1102,
+1009,958,962,1027,1146,1303,1472,1630,1757,1845,1897,1923,1938,1953,1973,1998,2025,2050,2070,2087,2100,
+2112,2120,2125,2124,2120,2113,2108,2106,2107,2107,2103,2091,2071,2044,2017,1993,1976,1965,1956,1946,1932,
+1916,1900,1886,1877,1870,1865,1858,1846,1831,1814,1798,1785,1776,1770,1764,1757,1748,1739,1730,1722,1716,
+1710,1704,1696,1686,1675,1663,1651,1640,1629,1620,1614,1609,1607,1605,1602,1597,1590,1582,1575,1571,1573,
+1579,1587,1595,1601,1604,1603,1600,1596,1592,1586,1579,1569,1559,1549,1544,1545,1553,1513,1521,1532,1543,
+1551,1555,1557,1556,1555,1553,1553,1553,1554,1558,1565,1575,1589,1605,1622,1638,1651,1662,1671,1679,1689,
+1701,1715,1731,1749,1767,1785,1804,1824,1844,1865,1886,1907,1929,1950,1971,1993,2016,2040,2066,2092,2119,
+2146,2173,2198,2222,2244,2264,2282,2297,2308,2317,2324,2331,2339,2350,2364,2380,2398,2416,2434,2450,2464,
+2478,2490,2501,2511,2519,2525,2529,2531,2532,2533,2535,2538,2541,2544,2548,2551,2555,2560,2569,2581,2595,
+2609,2622,2630,2632,2628,2622,2618,2618,2627,2644,2667,2692,2716,2736,2752,2763,2774,2786,2799,2813,2826,
+2838,2847,2854,2862,2871,2881,2891,2898,2901,2900,2895,2890,2888,2888,2893,2900,2909,2919,2929,2942,2959,
+2978,3001,3023,3044,3063,3080,3095,3112,3129,3147,3163,3176,3186,3195,3202,3211,3222,3233,3243,3251,3256,
+3260,3266,3276,3292,3312,3332,3349,3360,3367,3372,3379,3389,3403,3419,3433,3442,3447,3447,3447,3447,3449,
+3452,3454,3453,3449,3444,3439,3437,3439,3443,3447,3449,3447,3439,3429,3417,3405,3394,3384,3373,3361,3348,
+3335,3323,3314,3308,3304,3300,3296,3292,3288,3283,3279,3276,3273,3272,3272,3273,3276,3280,3283,3286,3286,
+3285,3281,3276,3271,3267,3263,3258,3252,3246,3239,3233,3231,3231,3234,3239,3244,3247,3250,3253,3256,3260,
+3264,3268,3269,3267,3262,3255,3246,3237,3228,3217,3204,3189,3171,3153,3136,3121,3109,3100,3093,3086,3081,
+3076,3074,3074,3076,3078,3081,3083,3086,3089,3094,3100,3107,3111,3111,3104,3092,3076,3057,3038,3019,3002,
+2985,2969,2952,2935,2919,2903,2887,2868,2847,2822,2795,2769,2747,2732,2726,2726,2731,2737,2741,2743,2743,
+2742,2742,2743,2745,2749,2752,2754,2753,2748,2739,2726,2709,2689,2667,2644,2621,2598,2577,2555,2536,2518,
+2505,2497,2496,2498,2500,2497,2485,2460,2424,2381,2337,2299,2270,2248,2229,2205,2168,2112,2036,1944,1842,
+1738,1640,1554,1479,1417,1365,1320,1279,1241,1205,1171,1139,1109,1079,1050,1021,992,963,936,911,887,
+865,843,820,795,767,735,699,661,621,581,544,510,480,454,431,409,385,359,329,295,259,
+222,187,154,123,93,63,33,1,-30,-63,-95,-127,-158,-190,-222,-255,-287,-319,-348,-373,-396,
+-417,-438,-460,-486,-515,-547,-581,-615,-646,-673,-695,-712,-725,-737,-748,-760,-775,-792,-812,-835,-860,
+-887,-916,-946,-976,-1006,-1035,-1062,-1089,-1115,-1143,-1171,-1202,-1233,-1266,-1298,-1328,-1357,-1385,-1413,-1440,-1469,
+-1500,-1531,-1563,-1595,-1625,-1654,-1681,-1709,-1738,-1769,-1802,-1836,-1870,-1903,-1934,-1963,-1989,-2015,-2042,-2070,-2098,
+-2126,-2154,-2179,-2202,-2225,-2247,-2270,-2295,-2320,-2345,-2369,-2393,-2416,-2439,-2462,-2486,-2510,-2533,-2554,-2573,-2590,
+-2606,-2621,-2637,-2653,-2670,-2688,-2705,-2723,-2741,-2760,-2779,-2798,-2816,-2832,-2846,-2858,-2869,-2880,-2894,-2910,-2929,
+-2950,-2972,-2993,-3014,-3033,-3051,-3068,-3084,-3097,-3109,-3119,-3129,-3140,-3151,-3164,-3178,-3193,-3206,-3218,-3227,-3235,
+-3241,-3249,-3257,-3267,-3276,-3284,-3289,-3291,-3291,-3289,-3288,-3287,-3288,-3290,-3292,-3294,-3296,-3298,-3299,-3300,-3301,
+-3299,-3296,-3292,-3287,-3283,-3282,-3284,-3289,-3294,-3297,-3298,-3294,-3287,-3277,-3266,-3255,-3244,-3232,-3220,-3208,-3196,
+-3185,-3175,-3166,-3158,-3148,-3137,-3125,-3114,-3106,-3101,-3100,-3099,-3097,-3091,-3081,-3069,-3058,-3049,-3045,-3045,-3047,
+-3049,-3048,-3043,-3034,-3023,-3010,-2996,-2981,-2965,-2948,-2932,-2919,-2911,-2907,-2907,-2910,-2914,-2920,-2929,-2944,-2967,
+-2996,-3029,-3059,-3081,-3091,-3087,-3075,-3059,-3049,-3047,-3056,-3072,-3090,-3105,-3111,-3111,-3106,-3103,-3107,-3124,-3154,
+-3196,-3248,-3304,-3361,-3413,-3458,-3495,-3525,-3548,-3568,-3587,-3608,-3633,-3661,-3692,-3722,-3751,-3777,-3798,-3817,-3835,
+-3855,-3879,-3907,-3940,-3976,-4012,-4047,-4078,-4102,-4120,-4134,-4145,-4157,-4171,-4191,-4215,-4242,-4269,-4296,-4320,-4341,
+-4362,-4382,-4403,-4425,-4447,-4467,-4484,-4499,-4513,-4528,-4544,-4562,-4581,-4599,-4613,-4623,-4628,-4631,-4634,-4638,-4646,
+-4655,-4665,-4675,-4683,-4688,-4693,-4697,-4699,-4701,-4700,-4698,-4693,-4687,-4680,-4674,-4669,-4663,-4658,-4652,-4645,-4639,
+-4635,-4632,-4630,-4628,-4625,-4619,-4611,-4602,-4593,-4584,-4577,-4569,-4561,-4550,-4538,-4525,-4511,-4499,-4489,-4480,-4472,
+-4465,-4457,-4450,-4445,-4442,-4441,-4440,-4439,-4435,-4427,-4415,-4399,-4381,-4363,-4348,-4334,-4323,-4314,-4307,-4300,-4293,
+-4286,-4279,-4271,-4263,-4255,-4245,-4234,-4222,-4208,-4193,-4178,-4161,-4145,-4128,-4112,-4097,-4084,-4072,-4061,-4051,-4040,
+-4027,-4013,-3996,-3978,-3961,-3945,-3931,-3918,-3906,-3894,-3879,-3863,-3844,-3825,-3806,-3789,-3773,-3759,-3746,-3733,-3719,
+-3704,-3688,-3671,-3654,-3636,-3618,-3599,-3581,-3563,-3547,-3533,-3520,-3507,-3494,-3481,-3467,-3452,-3437,-3423,-3410,-3398,
+-3386,-3373,-3360,-3347,-3333,-3319,-3307,-3295,-3285,-3277,-3270,-3265,-3261,-3258,-3254,-3250,-3245,-3240,-3234,-3228,-3223,
+-3219,-3214,-3209,-3203,-3195,-3187,-3179,-3171,-3164,-3157,-3152,-3146,-3141,-3136,-3131,-3127,-3124,-3121,-3119,-3117,-3115,
+-3113,-3109,-3103,-3096,-3087,-3077,-3066,-3057,-3049,-3044,-3039,-3036,-3033,-3030,-3026,-3023,-3019,-3017,-3016,-3015,-3013,
+-3009,-3002,-2993,-2983,-2973,-2962,-2953,-2945,-2938,-2931,-2925,-2919,-2914,-2908,-2902,-2894,-2884,-2873,-2861,-2848,-2835,
+-2822,-2809,-2796,-2783,-2769,-2756,-2743,-2731,-2721,-2710,-2700,-2690,-2680,-2671,-2665,-2662,-2663,-2667,-2672,-2675,-2675,
+-2672,-2666,-2658,-2649,-2639,-2627,-2613,-2595,-2573,-2550,-2526,-2505,-2488,-2477,-2469,-2464,-2460,-2456,-2450,-2444,-2438,
+-2432,-2426,-2422,-2418,-2414,-2411,-2406,-2401,-2394,-2386,-2376,-2364,-2353,-2343,-2335,-2329,-2323,-2318,-2312,-2305,-2299,
+-2294,-2293,-2294,-2297,-2300,-2302,-2301,-2300,-2298,-2299,-2301,-2306,-2312,-2317,-2319,-2318,-2314,-2307,-2300,-2293,-2287,
+-2281,-2276,-2272,-2269,-2267,-2265,-2263,-2261,-2259,-2256,-2251,-2245,-2238,-2227,-2213,-2195,-2173,-2149,-2125,-2103,-2083,
+-2066,-2051,-2037,-2025,-2013,-2004,-1997,-1992,-1989,-1985,-1978,-1967,-1953,-1936,-1920,-1904,-1890,-1878,-1866,-1853,-1837,
+-1819,-1799,-1780,-1761,-1743,-1726,-1709,-1693,-1677,-1662,-1647,-1634,-1622,-1610,-1600,-1589,-1579,-1567,-1553,-1536,-1515,
+-1491,-1466,-1441,-1420,-1406,-1397,-1392,-1388,-1382,-1371,-1356,-1337,-1317,-1300,-1284,-1271,-1257,-1242,-1224,-1203,-1184,
+-1166,-1153,-1142,-1134,-1124,-1112,-1094,-1072,-1048,-1024,-1001,-980,-962,-945,-928,-911,-894,-875,-856,-837,-817,
+-796,-776,-756,-737,-720,-705,-690,-674,-657,-638,-617,-596,-575,-555,-536,-517,-500,-481,-463,-444,-425,
+-407,-389,-370,-351,-329,-304,-276,-247,-216,-185,-155,-125,-94,-63,-31,3,37,71,103,130,154,
+176,198,225,258,300,349,402,453,499,536,564,587,608,633,663,698,735,772,806,837,868,
+902,943,992,1048,1107,1165,1217,1262,1301,1336,1370,1405,1440,1476,1509,1538,1562,1582,1600,1619,1639,
+1662,1685,1706,1725,1740,1750,1759,1766,1776,1789,1804,1822,1839,1856,1871,1885,1902,1923,1951,1984,2019,
+2053,2080,2096,2101,2096,2086,2075,2066,2059,2054,2049,2042,2034,2026,2020,2018,2020,2026,2034,2040,2045,
+2049,2054,2062,2074,2090,2109,2126,2140,2147,2144,2130,2106,2074,2037,2002,1974,1958,1955,1961,1969,1970,
+1956,1926,1885,1843,1812,1802,1813,1839,1867,1881,1873,1840,1789,1732,1681,1643,1620,1608,1601,1594,1588,
+1591,1607,1644,1700,1771,1846,1915,1973,2016,2049,2075,2100,2126,2150,2171,2183,2186,2178,2163,2142,2118,
+2093,2070,2051,2036,2029,2031,2042,2062,2088,2119,2152,2184,2214,2239,2257,2267,2269,2265,2260,2258,2263,
+2276,2296,2319,2341,2358,2369,2373,2373,2372,2371,2370,2369,2367,2362,2354,2344,2333,2322,2309,2292,2268,
+2230,2176,2102,2010,1900,1778,1651,1524,1402,1290,1191,1110,1054,1030,1045,1103,1202,1333,1481,1627,1753,
+1848,1909,1942,1955,1962,1969,1982,2001,2022,2042,2059,2072,2083,2093,2101,2106,2109,2109,2108,2106,2103,
+2099,2092,2080,2061,2038,2012,1988,1968,1953,1942,1930,1916,1898,1878,1858,1841,1829,1822,1816,1810,1800,
+1788,1774,1760,1748,1737,1727,1717,1705,1693,1681,1670,1661,1654,1649,1645,1642,1637,1631,1622,1611,1599,
+1584,1571,1560,1553,1551,1553,1555,1556,1553,1546,1537,1528,1522,1520,1523,1530,1538,1545,1551,1555,1557,
+1556,1553,1547,1537,1527,1517,1510,1509,1513,1494,1499,1504,1510,1514,1517,1519,1521,1523,1524,1527,1529,
+1533,1539,1548,1561,1576,1594,1612,1628,1642,1654,1664,1674,1685,1698,1712,1729,1747,1766,1787,1808,1831,
+1854,1878,1901,1924,1947,1969,1992,2016,2041,2067,2094,2121,2147,2172,2196,2220,2244,2267,2288,2306,2321,
+2331,2338,2342,2346,2352,2360,2372,2387,2404,2421,2436,2451,2463,2474,2485,2494,2503,2511,2518,2523,2526,
+2529,2530,2531,2532,2533,2534,2536,2539,2544,2552,2562,2573,2584,2592,2596,2594,2589,2582,2579,2583,2596,
+2618,2645,2673,2698,2715,2725,2729,2732,2737,2747,2762,2779,2796,2811,2822,2831,2838,2846,2854,2862,2869,
+2872,2872,2869,2866,2866,2868,2874,2882,2892,2901,2912,2924,2938,2955,2974,2993,3012,3029,3045,3062,3078,
+3095,3112,3127,3139,3148,3156,3165,3175,3186,3198,3209,3218,3226,3234,3244,3257,3274,3292,3309,3322,3331,
+3336,3340,3345,3354,3366,3378,3389,3396,3399,3400,3401,3404,3408,3413,3415,3414,3410,3404,3400,3399,3401,
+3405,3408,3408,3403,3393,3380,3366,3353,3342,3332,3324,3315,3306,3297,3289,3283,3278,3272,3267,3260,3253,
+3247,3241,3237,3235,3234,3233,3234,3235,3237,3240,3244,3247,3248,3247,3243,3238,3232,3227,3223,3220,3218,
+3215,3211,3209,3207,3208,3211,3215,3219,3222,3225,3227,3229,3232,3237,3242,3244,3244,3240,3232,3221,3209,
+3197,3185,3174,3162,3149,3136,3123,3110,3098,3087,3076,3068,3060,3055,3053,3054,3057,3061,3066,3070,3074,
+3077,3080,3083,3085,3084,3081,3073,3060,3044,3026,3008,2990,2974,2958,2943,2927,2911,2893,2874,2852,2829,
+2803,2776,2751,2727,2709,2696,2688,2685,2684,2683,2683,2681,2681,2682,2685,2691,2697,2702,2704,2701,2693,
+2679,2662,2642,2622,2604,2588,2574,2561,2549,2536,2521,2506,2492,2482,2477,2477,2481,2483,2479,2464,2436,
+2397,2351,2305,2264,2231,2206,2183,2157,2119,2066,1995,1909,1815,1719,1629,1548,1480,1423,1377,1336,1299,
+1263,1228,1192,1157,1122,1087,1053,1020,987,955,924,894,866,840,815,791,765,737,706,670,631,
+589,547,507,470,438,412,389,368,347,323,295,262,226,187,148,112,78,47,18,-9,-38,
+-68,-100,-133,-166,-199,-232,-265,-297,-328,-358,-386,-411,-434,-455,-476,-499,-525,-553,-584,-615,-645,
+-670,-690,-705,-716,-726,-736,-748,-764,-782,-804,-827,-851,-877,-903,-932,-961,-991,-1022,-1051,-1080,-1108,
+-1136,-1165,-1195,-1227,-1260,-1295,-1328,-1360,-1390,-1417,-1443,-1468,-1495,-1523,-1553,-1584,-1616,-1648,-1679,-1708,-1737,
+-1767,-1798,-1831,-1865,-1899,-1933,-1964,-1993,-2020,-2048,-2075,-2105,-2134,-2164,-2191,-2216,-2238,-2259,-2279,-2301,-2325,
+-2350,-2376,-2403,-2428,-2452,-2476,-2499,-2523,-2547,-2570,-2592,-2611,-2628,-2644,-2659,-2674,-2689,-2706,-2723,-2741,-2758,
+-2776,-2794,-2813,-2832,-2850,-2868,-2884,-2897,-2909,-2921,-2933,-2947,-2963,-2981,-3000,-3019,-3038,-3057,-3076,-3094,-3112,
+-3129,-3144,-3157,-3169,-3180,-3192,-3204,-3219,-3234,-3249,-3261,-3272,-3280,-3287,-3293,-3301,-3309,-3319,-3328,-3335,-3339,
+-3342,-3342,-3341,-3341,-3341,-3342,-3343,-3345,-3345,-3346,-3347,-3348,-3348,-3347,-3346,-3342,-3339,-3336,-3334,-3335,-3338,
+-3341,-3345,-3346,-3345,-3341,-3335,-3327,-3318,-3308,-3297,-3284,-3272,-3260,-3249,-3241,-3233,-3225,-3215,-3204,-3191,-3179,
+-3170,-3166,-3166,-3167,-3166,-3162,-3152,-3138,-3123,-3111,-3104,-3103,-3107,-3111,-3114,-3112,-3107,-3097,-3084,-3070,-3054,
+-3036,-3017,-2998,-2981,-2967,-2958,-2954,-2954,-2957,-2963,-2971,-2983,-3002,-3027,-3058,-3090,-3119,-3139,-3146,-3141,-3128,
+-3112,-3101,-3099,-3108,-3125,-3145,-3164,-3176,-3181,-3179,-3176,-3176,-3184,-3204,-3238,-3282,-3335,-3390,-3442,-3489,-3527,
+-3557,-3581,-3603,-3625,-3650,-3680,-3714,-3748,-3782,-3811,-3835,-3855,-3871,-3886,-3903,-3923,-3948,-3978,-4011,-4045,-4080,
+-4112,-4141,-4167,-4191,-4212,-4232,-4252,-4272,-4291,-4310,-4328,-4347,-4367,-4388,-4412,-4437,-4462,-4485,-4504,-4520,-4532,
+-4544,-4558,-4574,-4592,-4612,-4630,-4645,-4655,-4661,-4664,-4666,-4670,-4677,-4684,-4693,-4700,-4706,-4710,-4713,-4717,-4720,
+-4724,-4727,-4731,-4733,-4734,-4733,-4730,-4725,-4718,-4708,-4696,-4685,-4676,-4670,-4666,-4664,-4663,-4659,-4654,-4647,-4639,
+-4632,-4627,-4623,-4619,-4614,-4604,-4590,-4573,-4555,-4538,-4524,-4512,-4503,-4496,-4488,-4482,-4476,-4472,-4470,-4469,-4468,
+-4466,-4460,-4450,-4436,-4420,-4403,-4385,-4368,-4353,-4338,-4325,-4314,-4306,-4300,-4296,-4294,-4291,-4288,-4281,-4272,-4261,
+-4248,-4235,-4222,-4209,-4196,-4183,-4168,-4153,-4137,-4122,-4107,-4093,-4078,-4063,-4046,-4027,-4008,-3990,-3974,-3961,-3952,
+-3943,-3935,-3926,-3913,-3898,-3881,-3863,-3844,-3826,-3809,-3793,-3777,-3762,-3747,-3732,-3717,-3702,-3686,-3668,-3649,-3630,
+-3611,-3594,-3578,-3564,-3552,-3540,-3528,-3516,-3504,-3492,-3479,-3467,-3455,-3443,-3430,-3418,-3405,-3392,-3379,-3368,-3357,
+-3347,-3339,-3331,-3325,-3320,-3315,-3311,-3307,-3303,-3299,-3294,-3290,-3286,-3281,-3276,-3270,-3264,-3256,-3248,-3240,-3234,
+-3228,-3222,-3216,-3209,-3201,-3193,-3186,-3179,-3175,-3172,-3170,-3170,-3169,-3168,-3166,-3162,-3156,-3148,-3140,-3131,-3122,
+-3115,-3109,-3104,-3100,-3095,-3090,-3085,-3079,-3074,-3070,-3069,-3068,-3068,-3068,-3066,-3061,-3055,-3047,-3038,-3030,-3021,
+-3014,-3006,-2999,-2991,-2984,-2977,-2969,-2962,-2954,-2944,-2933,-2921,-2906,-2891,-2874,-2858,-2842,-2827,-2815,-2804,-2793,
+-2783,-2771,-2757,-2742,-2726,-2711,-2699,-2691,-2687,-2685,-2686,-2686,-2686,-2687,-2689,-2693,-2698,-2704,-2707,-2706,-2699,
+-2684,-2663,-2639,-2614,-2590,-2569,-2551,-2536,-2522,-2510,-2500,-2491,-2484,-2479,-2475,-2472,-2469,-2466,-2462,-2459,-2454,
+-2449,-2442,-2434,-2424,-2413,-2403,-2393,-2385,-2378,-2372,-2365,-2358,-2352,-2348,-2347,-2348,-2352,-2355,-2357,-2356,-2352,
+-2348,-2344,-2342,-2342,-2343,-2345,-2345,-2343,-2339,-2333,-2327,-2322,-2316,-2312,-2307,-2302,-2297,-2292,-2287,-2282,-2279,
+-2276,-2273,-2271,-2267,-2261,-2252,-2238,-2222,-2203,-2184,-2166,-2151,-2139,-2129,-2119,-2109,-2097,-2083,-2069,-2056,-2044,
+-2034,-2024,-2013,-2000,-1985,-1968,-1952,-1938,-1926,-1916,-1906,-1896,-1884,-1869,-1852,-1833,-1814,-1795,-1776,-1757,-1739,
+-1721,-1702,-1684,-1665,-1647,-1630,-1614,-1600,-1589,-1580,-1571,-1560,-1547,-1531,-1512,-1492,-1473,-1457,-1444,-1434,-1424,
+-1412,-1397,-1379,-1359,-1339,-1321,-1304,-1289,-1274,-1257,-1240,-1223,-1208,-1198,-1192,-1190,-1190,-1188,-1181,-1167,-1147,
+-1122,-1094,-1066,-1039,-1013,-989,-966,-944,-923,-902,-882,-862,-842,-822,-802,-782,-765,-749,-735,-721,-707,
+-691,-672,-651,-628,-604,-582,-562,-543,-525,-508,-491,-474,-456,-437,-417,-395,-371,-345,-316,-287,-256,
+-226,-196,-166,-136,-105,-73,-40,-6,27,60,91,120,147,172,199,230,266,309,356,406,453,
+496,531,559,583,608,635,667,703,741,778,810,839,865,894,928,969,1019,1072,1127,1180,1229,
+1275,1318,1361,1405,1448,1490,1527,1557,1580,1597,1611,1625,1641,1661,1683,1706,1728,1746,1760,1770,1777,
+1785,1795,1808,1824,1842,1862,1881,1898,1916,1932,1949,1967,1985,2002,2016,2028,2038,2044,2048,2050,2050,
+2046,2039,2027,2013,1998,1986,1979,1978,1983,1992,2005,2019,2036,2057,2082,2111,2141,2168,2187,2195,2190,
+2172,2142,2105,2064,2024,1989,1965,1954,1957,1973,1996,2016,2024,2013,1984,1945,1907,1887,1893,1927,1982,
+2040,2084,2100,2081,2033,1967,1899,1841,1797,1767,1748,1734,1725,1723,1732,1757,1797,1845,1895,1938,1969,
+1988,2000,2012,2030,2057,2090,2123,2148,2159,2156,2140,2115,2090,2068,2055,2050,2054,2065,2080,2099,2119,
+2142,2167,2193,2220,2244,2262,2272,2271,2262,2248,2235,2229,2234,2251,2278,2310,2339,2361,2374,2377,2374,
+2370,2366,2364,2363,2362,2357,2348,2335,2319,2304,2289,2272,2249,2215,2161,2083,1978,1850,1705,1555,1411,
+1284,1185,1118,1087,1092,1130,1200,1295,1409,1532,1652,1760,1846,1905,1939,1954,1957,1957,1958,1965,1977,
+1990,2003,2013,2021,2027,2032,2036,2041,2044,2048,2050,2051,2050,2044,2032,2015,1993,1967,1943,1922,1906,
+1895,1886,1875,1861,1842,1821,1800,1782,1768,1758,1750,1744,1737,1728,1720,1711,1703,1696,1688,1678,1666,
+1652,1637,1624,1612,1602,1596,1592,1590,1589,1586,1581,1572,1559,1543,1527,1513,1505,1502,1506,1511,1516,
+1517,1512,1503,1492,1482,1476,1475,1479,1486,1493,1501,1507,1511,1513,1513,1511,1507,1502,1497,1493,1492,
+1494,1484,1487,1490,1492,1493,1494,1495,1497,1500,1504,1509,1515,1522,1530,1541,1554,1569,1586,1604,1621,
+1636,1651,1664,1678,1692,1708,1725,1743,1763,1784,1806,1830,1855,1880,1904,1928,1950,1972,1995,2018,2043,
+2070,2097,2124,2149,2173,2195,2217,2240,2264,2287,2309,2328,2342,2351,2356,2359,2361,2365,2372,2383,2396,
+2410,2424,2437,2447,2457,2465,2472,2480,2489,2497,2504,2511,2517,2521,2525,2527,2528,2528,2530,2532,2536,
+2541,2548,2555,2561,2564,2564,2559,2552,2546,2545,2551,2566,2590,2619,2649,2674,2690,2697,2697,2693,2692,
+2696,2708,2726,2748,2769,2787,2800,2810,2818,2826,2834,2841,2846,2848,2847,2844,2841,2840,2843,2849,2858,
+2869,2880,2891,2903,2917,2931,2947,2963,2979,2995,3010,3025,3041,3057,3072,3087,3099,3110,3121,3131,3141,
+3153,3165,3176,3187,3198,3209,3222,3238,3255,3272,3286,3297,3303,3308,3312,3319,3327,3338,3347,3355,3359,
+3361,3361,3363,3366,3371,3375,3378,3377,3375,3371,3368,3368,3369,3370,3369,3363,3353,3340,3327,3315,3306,
+3300,3296,3291,3285,3278,3269,3261,3252,3245,3237,3229,3221,3213,3206,3202,3200,3200,3200,3200,3200,3199,
+3199,3201,3204,3207,3209,3210,3208,3204,3199,3195,3193,3191,3191,3191,3190,3189,3188,3189,3190,3193,3196,
+3198,3200,3202,3204,3209,3215,3221,3226,3228,3224,3216,3205,3191,3178,3166,3155,3145,3136,3125,3113,3099,
+3086,3072,3060,3049,3041,3036,3034,3035,3040,3046,3052,3058,3062,3064,3063,3060,3056,3050,3043,3034,3022,
+3008,2992,2974,2958,2942,2927,2914,2901,2887,2870,2851,2827,2802,2775,2750,2728,2711,2698,2690,2685,2680,
+2674,2666,2657,2648,2640,2637,2637,2641,2646,2650,2649,2643,2630,2611,2589,2566,2545,2528,2517,2509,2504,
+2500,2493,2484,2472,2460,2449,2441,2437,2436,2434,2428,2415,2394,2363,2327,2289,2251,2216,2182,2148,2109,
+2062,2003,1934,1856,1772,1689,1610,1538,1477,1425,1381,1343,1306,1270,1233,1196,1157,1120,1084,1049,1016,
+983,950,915,881,847,814,783,753,725,695,664,629,591,549,506,464,425,390,362,338,319,
+301,282,259,230,197,159,120,82,48,17,-10,-37,-63,-93,-125,-160,-198,-236,-274,-310,-344,
+-375,-404,-429,-452,-471,-490,-508,-529,-553,-581,-610,-641,-668,-691,-708,-720,-729,-736,-746,-759,-776,
+-797,-820,-844,-870,-897,-924,-953,-984,-1017,-1049,-1082,-1113,-1142,-1170,-1198,-1227,-1257,-1290,-1323,-1357,-1390,
+-1421,-1450,-1477,-1502,-1527,-1554,-1582,-1613,-1645,-1677,-1710,-1741,-1772,-1802,-1833,-1865,-1898,-1932,-1965,-1997,-2028,
+-2057,-2085,-2114,-2142,-2171,-2199,-2226,-2250,-2272,-2293,-2313,-2335,-2358,-2383,-2409,-2435,-2460,-2484,-2508,-2532,-2558,
+-2583,-2609,-2633,-2655,-2673,-2690,-2705,-2720,-2736,-2753,-2771,-2788,-2806,-2822,-2839,-2855,-2872,-2889,-2906,-2922,-2937,
+-2951,-2964,-2977,-2991,-3006,-3022,-3039,-3056,-3073,-3091,-3108,-3127,-3146,-3164,-3181,-3197,-3210,-3222,-3234,-3246,-3260,
+-3275,-3290,-3304,-3315,-3324,-3331,-3338,-3344,-3352,-3361,-3370,-3378,-3384,-3387,-3389,-3389,-3390,-3390,-3392,-3394,-3395,
+-3396,-3397,-3396,-3395,-3394,-3392,-3389,-3386,-3384,-3382,-3381,-3382,-3384,-3387,-3390,-3392,-3392,-3390,-3387,-3381,-3374,
+-3365,-3354,-3342,-3331,-3321,-3313,-3307,-3302,-3296,-3287,-3275,-3262,-3250,-3241,-3238,-3238,-3241,-3242,-3237,-3226,-3210,
+-3191,-3175,-3165,-3162,-3166,-3173,-3179,-3182,-3180,-3172,-3160,-3145,-3128,-3109,-3088,-3066,-3045,-3027,-3013,-3005,-3002,
+-3004,-3009,-3017,-3028,-3043,-3063,-3089,-3119,-3149,-3173,-3189,-3194,-3188,-3176,-3163,-3154,-3154,-3163,-3180,-3200,-3219,
+-3233,-3241,-3243,-3244,-3248,-3258,-3279,-3310,-3351,-3397,-3444,-3488,-3526,-3557,-3582,-3604,-3626,-3652,-3682,-3717,-3753,
+-3790,-3823,-3851,-3874,-3891,-3905,-3917,-3930,-3945,-3965,-3990,-4022,-4059,-4100,-4145,-4191,-4236,-4276,-4309,-4336,-4354,
+-4366,-4373,-4379,-4386,-4398,-4415,-4437,-4463,-4491,-4518,-4541,-4559,-4574,-4585,-4596,-4608,-4622,-4637,-4651,-4665,-4676,
+-4686,-4694,-4700,-4707,-4713,-4719,-4723,-4726,-4728,-4728,-4729,-4730,-4733,-4738,-4746,-4755,-4764,-4774,-4781,-4784,-4782,
+-4775,-4762,-4745,-4728,-4714,-4703,-4696,-4693,-4691,-4687,-4682,-4676,-4670,-4666,-4665,-4665,-4665,-4662,-4654,-4640,-4621,
+-4600,-4578,-4560,-4545,-4535,-4526,-4520,-4513,-4508,-4502,-4498,-4496,-4493,-4491,-4486,-4480,-4472,-4461,-4449,-4434,-4418,
+-4399,-4380,-4360,-4342,-4327,-4317,-4311,-4308,-4307,-4305,-4300,-4294,-4285,-4276,-4268,-4261,-4254,-4246,-4237,-4224,-4208,
+-4190,-4172,-4154,-4136,-4119,-4102,-4085,-4066,-4047,-4028,-4012,-3997,-3986,-3977,-3968,-3959,-3948,-3936,-3922,-3906,-3889,
+-3872,-3853,-3835,-3817,-3800,-3785,-3772,-3759,-3746,-3733,-3718,-3701,-3683,-3665,-3647,-3630,-3616,-3603,-3591,-3580,-3569,
+-3558,-3548,-3536,-3525,-3513,-3500,-3486,-3473,-3460,-3448,-3438,-3429,-3421,-3413,-3406,-3399,-3392,-3385,-3378,-3371,-3365,
+-3358,-3353,-3348,-3344,-3340,-3336,-3332,-3326,-3320,-3313,-3306,-3300,-3295,-3290,-3286,-3280,-3273,-3264,-3255,-3246,-3239,
+-3233,-3230,-3228,-3226,-3225,-3223,-3220,-3216,-3212,-3207,-3202,-3196,-3190,-3183,-3177,-3172,-3166,-3160,-3154,-3147,-3140,
+-3134,-3129,-3126,-3124,-3124,-3124,-3124,-3123,-3119,-3114,-3108,-3100,-3093,-3085,-3077,-3069,-3062,-3054,-3046,-3037,-3028,
+-3018,-3006,-2993,-2977,-2959,-2941,-2923,-2906,-2893,-2882,-2874,-2868,-2861,-2853,-2841,-2824,-2805,-2785,-2765,-2749,-2735,
+-2725,-2717,-2710,-2704,-2699,-2698,-2700,-2708,-2720,-2734,-2748,-2759,-2764,-2762,-2755,-2742,-2726,-2708,-2688,-2666,-2643,
+-2619,-2595,-2575,-2558,-2545,-2535,-2528,-2522,-2516,-2511,-2506,-2503,-2500,-2497,-2493,-2488,-2480,-2471,-2460,-2449,-2439,
+-2431,-2423,-2416,-2409,-2404,-2400,-2398,-2399,-2401,-2403,-2405,-2403,-2400,-2395,-2390,-2385,-2382,-2379,-2377,-2375,-2372,
+-2368,-2363,-2359,-2354,-2350,-2346,-2342,-2337,-2331,-2326,-2321,-2317,-2313,-2310,-2306,-2300,-2292,-2281,-2267,-2249,-2229,
+-2208,-2189,-2173,-2162,-2154,-2149,-2146,-2142,-2137,-2130,-2122,-2113,-2103,-2092,-2080,-2065,-2047,-2026,-2005,-1985,-1967,
+-1953,-1942,-1933,-1924,-1913,-1900,-1884,-1866,-1848,-1829,-1811,-1794,-1778,-1762,-1746,-1728,-1709,-1689,-1668,-1648,-1630,
+-1614,-1602,-1593,-1584,-1575,-1564,-1551,-1537,-1522,-1508,-1495,-1481,-1467,-1451,-1432,-1411,-1390,-1369,-1350,-1333,-1317,
+-1301,-1285,-1268,-1252,-1239,-1230,-1226,-1224,-1224,-1221,-1214,-1200,-1180,-1155,-1127,-1097,-1067,-1039,-1012,-987,-964,
+-944,-925,-907,-889,-871,-851,-831,-812,-794,-778,-764,-751,-737,-720,-701,-679,-656,-633,-610,-589,-570,
+-552,-535,-517,-498,-478,-457,-434,-410,-384,-357,-328,-299,-271,-242,-213,-184,-154,-122,-89,-55,-21,
+11,44,75,105,135,165,197,232,269,310,352,395,437,475,509,540,570,601,634,672,713,
+755,794,828,857,882,906,933,965,1003,1047,1094,1144,1193,1241,1289,1336,1384,1430,1475,1516,1552,
+1582,1607,1628,1647,1665,1683,1701,1718,1733,1746,1756,1765,1773,1781,1791,1804,1820,1839,1859,1879,1897,
+1911,1921,1926,1926,1922,1918,1913,1911,1910,1912,1914,1915,1913,1906,1897,1888,1882,1884,1895,1915,1941,
+1972,2002,2031,2059,2089,2122,2160,2200,2237,2266,2279,2273,2249,2210,2163,2114,2068,2031,2006,1994,1997,
+2012,2039,2070,2097,2112,2110,2090,2059,2032,2021,2037,2085,2157,2239,2312,2361,2377,2361,2324,2277,2232,
+2197,2172,2154,2138,2122,2105,2090,2079,2071,2062,2048,2022,1985,1941,1899,1870,1863,1880,1917,1965,2010,
+2042,2056,2053,2041,2029,2025,2035,2059,2092,2126,2155,2176,2186,2190,2192,2198,2208,2223,2238,2250,2254,
+2249,2238,2225,2218,2221,2237,2262,2293,2322,2345,2358,2361,2358,2353,2349,2348,2349,2349,2346,2337,2321,
+2302,2281,2260,2240,2217,2186,2139,2070,1976,1856,1718,1573,1436,1321,1241,1201,1202,1240,1307,1393,1488,
+1583,1671,1746,1806,1848,1875,1889,1894,1896,1897,1900,1905,1913,1921,1928,1933,1936,1938,1939,1940,1941,
+1944,1947,1951,1954,1953,1947,1936,1918,1895,1871,1848,1829,1814,1804,1795,1786,1774,1759,1743,1727,1712,
+1700,1690,1682,1674,1667,1659,1653,1647,1643,1640,1636,1630,1622,1612,1599,1587,1574,1564,1555,1549,1545,
+1542,1540,1535,1527,1516,1502,1487,1474,1465,1461,1463,1468,1472,1474,1471,1465,1458,1451,1446,1446,1448,
+1452,1457,1461,1463,1464,1466,1467,1469,1471,1473,1476,1478,1481,1484,1465,1469,1473,1475,1477,1479,1481,
+1484,1488,1494,1500,1507,1515,1523,1533,1544,1557,1572,1589,1607,1625,1643,1662,1681,1701,1720,1741,1761,
+1782,1804,1827,1851,1875,1899,1922,1944,1966,1988,2012,2037,2065,2093,2121,2148,2173,2196,2218,2240,2263,
+2286,2309,2330,2347,2360,2368,2372,2374,2376,2380,2387,2395,2405,2415,2425,2433,2439,2445,2451,2457,2464,
+2472,2480,2488,2495,2502,2508,2512,2516,2519,2522,2526,2530,2535,2539,2543,2544,2542,2537,2530,2522,2517,
+2517,2524,2540,2564,2592,2619,2642,2657,2662,2660,2654,2649,2649,2657,2673,2695,2719,2742,2761,2776,2787,
+2796,2803,2810,2815,2819,2819,2817,2814,2811,2811,2814,2821,2830,2841,2852,2863,2874,2886,2898,2911,2924,
+2937,2950,2964,2977,2992,3007,3024,3040,3056,3072,3086,3099,3112,3123,3134,3144,3154,3166,3179,3195,3212,
+3230,3246,3258,3267,3273,3279,3285,3293,3303,3313,3322,3329,3333,3334,3335,3336,3337,3339,3341,3341,3340,
+3337,3336,3335,3336,3336,3333,3326,3315,3300,3285,3272,3265,3261,3262,3264,3263,3260,3253,3243,3233,3223,
+3214,3206,3198,3190,3183,3178,3174,3173,3172,3172,3170,3167,3164,3162,3161,3163,3167,3171,3173,3174,3173,
+3171,3168,3167,3167,3167,3167,3167,3166,3165,3165,3166,3169,3172,3174,3177,3180,3185,3190,3198,3206,3212,
+3214,3212,3204,3192,3179,3165,3153,3143,3134,3125,3114,3102,3088,3074,3061,3049,3040,3033,3028,3025,3025,
+3027,3030,3035,3038,3040,3038,3034,3027,3019,3010,3001,2991,2980,2966,2950,2933,2915,2899,2885,2874,2866,
+2857,2846,2831,2811,2787,2762,2738,2718,2703,2694,2688,2684,2678,2669,2656,2641,2626,2613,2604,2600,2599,
+2601,2602,2599,2592,2579,2560,2538,2515,2493,2476,2463,2455,2450,2447,2442,2436,2426,2414,2402,2390,2380,
+2372,2365,2358,2348,2334,2316,2292,2264,2231,2195,2155,2110,2060,2005,1946,1882,1814,1745,1676,1609,1546,
+1488,1436,1388,1345,1303,1262,1221,1179,1139,1100,1063,1029,997,966,933,898,862,824,785,747,712,
+677,644,610,573,535,493,450,407,367,331,302,278,259,244,228,210,188,160,127,93,58,
+26,-1,-27,-52,-78,-107,-140,-178,-219,-262,-305,-346,-384,-418,-449,-475,-497,-515,-531,-548,-566,
+-588,-614,-643,-671,-698,-720,-736,-747,-755,-762,-772,-785,-803,-825,-849,-875,-902,-930,-959,-991,-1024,
+-1058,-1093,-1127,-1159,-1188,-1216,-1241,-1267,-1293,-1321,-1350,-1382,-1414,-1446,-1477,-1507,-1535,-1562,-1590,-1619,-1650,
+-1682,-1716,-1750,-1784,-1816,-1847,-1877,-1908,-1940,-1973,-2006,-2038,-2070,-2099,-2127,-2154,-2181,-2207,-2233,-2258,-2283,
+-2306,-2329,-2352,-2376,-2401,-2426,-2451,-2476,-2500,-2523,-2547,-2572,-2599,-2627,-2655,-2681,-2705,-2725,-2743,-2759,-2775,
+-2792,-2810,-2829,-2848,-2866,-2883,-2898,-2913,-2927,-2941,-2956,-2970,-2985,-2998,-3012,-3026,-3041,-3056,-3073,-3090,-3106,
+-3123,-3139,-3155,-3172,-3190,-3208,-3226,-3242,-3257,-3271,-3283,-3296,-3309,-3323,-3337,-3350,-3362,-3372,-3380,-3388,-3396,
+-3405,-3414,-3424,-3432,-3437,-3440,-3441,-3441,-3441,-3442,-3445,-3448,-3452,-3454,-3455,-3454,-3451,-3448,-3444,-3441,-3438,
+-3436,-3435,-3435,-3436,-3438,-3440,-3442,-3445,-3446,-3445,-3443,-3438,-3432,-3422,-3412,-3402,-3392,-3385,-3381,-3378,-3376,
+-3371,-3363,-3352,-3338,-3325,-3315,-3311,-3311,-3314,-3315,-3311,-3301,-3285,-3265,-3247,-3234,-3228,-3230,-3237,-3244,-3249,
+-3250,-3245,-3236,-3222,-3206,-3187,-3166,-3144,-3121,-3100,-3083,-3072,-3066,-3065,-3068,-3074,-3083,-3095,-3111,-3131,-3155,
+-3181,-3206,-3226,-3238,-3241,-3237,-3228,-3220,-3215,-3215,-3223,-3236,-3251,-3267,-3281,-3292,-3301,-3310,-3322,-3339,-3361,
+-3390,-3423,-3458,-3492,-3522,-3547,-3570,-3590,-3612,-3636,-3664,-3697,-3732,-3768,-3803,-3834,-3861,-3884,-3901,-3915,-3926,
+-3937,-3950,-3968,-3994,-4029,-4074,-4128,-4187,-4248,-4305,-4354,-4392,-4417,-4431,-4436,-4436,-4436,-4438,-4447,-4462,-4483,
+-4508,-4535,-4562,-4585,-4604,-4620,-4632,-4642,-4651,-4661,-4672,-4685,-4699,-4713,-4727,-4738,-4748,-4754,-4757,-4758,-4756,
+-4754,-4752,-4751,-4751,-4753,-4757,-4764,-4773,-4784,-4796,-4807,-4815,-4818,-4813,-4802,-4786,-4769,-4752,-4739,-4730,-4724,
+-4721,-4716,-4711,-4704,-4698,-4694,-4693,-4694,-4695,-4693,-4687,-4675,-4658,-4639,-4619,-4601,-4587,-4576,-4567,-4560,-4554,
+-4547,-4540,-4533,-4527,-4521,-4516,-4511,-4507,-4502,-4496,-4489,-4480,-4467,-4451,-4431,-4409,-4387,-4366,-4350,-4338,-4329,
+-4322,-4316,-4309,-4301,-4294,-4288,-4283,-4280,-4277,-4273,-4266,-4256,-4242,-4226,-4209,-4193,-4177,-4163,-4148,-4132,-4114,
+-4096,-4077,-4059,-4042,-4027,-4012,-3999,-3987,-3975,-3963,-3951,-3938,-3924,-3909,-3892,-3874,-3857,-3840,-3825,-3813,-3802,
+-3792,-3781,-3768,-3753,-3736,-3719,-3701,-3685,-3670,-3657,-3644,-3633,-3622,-3612,-3602,-3591,-3579,-3567,-3553,-3539,-3525,
+-3511,-3500,-3490,-3483,-3477,-3472,-3467,-3462,-3456,-3449,-3441,-3432,-3423,-3414,-3405,-3398,-3392,-3388,-3384,-3380,-3376,
+-3371,-3366,-3361,-3356,-3353,-3350,-3346,-3341,-3335,-3328,-3319,-3312,-3306,-3301,-3298,-3296,-3293,-3289,-3285,-3280,-3275,
+-3270,-3266,-3262,-3258,-3253,-3247,-3240,-3233,-3226,-3219,-3213,-3207,-3201,-3195,-3189,-3184,-3180,-3178,-3177,-3177,-3176,
+-3174,-3171,-3165,-3158,-3150,-3141,-3133,-3126,-3120,-3113,-3106,-3098,-3089,-3077,-3062,-3046,-3027,-3008,-2990,-2973,-2959,
+-2948,-2941,-2936,-2932,-2926,-2917,-2904,-2887,-2867,-2847,-2828,-2812,-2799,-2787,-2776,-2765,-2754,-2744,-2737,-2734,-2737,
+-2744,-2756,-2769,-2781,-2792,-2801,-2807,-2811,-2812,-2808,-2799,-2783,-2761,-2734,-2705,-2676,-2651,-2630,-2613,-2598,-2585,
+-2573,-2562,-2553,-2546,-2542,-2540,-2539,-2536,-2531,-2523,-2513,-2502,-2492,-2482,-2474,-2467,-2461,-2456,-2451,-2448,-2446,
+-2446,-2445,-2445,-2443,-2440,-2436,-2431,-2426,-2421,-2417,-2413,-2409,-2406,-2402,-2398,-2394,-2391,-2387,-2383,-2379,-2375,
+-2371,-2366,-2362,-2358,-2353,-2347,-2339,-2329,-2316,-2299,-2280,-2259,-2237,-2216,-2197,-2180,-2168,-2159,-2152,-2148,-2146,
+-2144,-2142,-2141,-2139,-2135,-2128,-2118,-2103,-2084,-2061,-2038,-2016,-1996,-1981,-1968,-1957,-1946,-1934,-1919,-1902,-1884,
+-1865,-1848,-1833,-1820,-1808,-1797,-1786,-1773,-1758,-1740,-1721,-1700,-1680,-1662,-1645,-1631,-1618,-1606,-1594,-1581,-1568,
+-1555,-1542,-1528,-1514,-1498,-1481,-1461,-1441,-1421,-1403,-1386,-1372,-1358,-1344,-1328,-1312,-1295,-1279,-1266,-1255,-1246,
+-1237,-1227,-1214,-1198,-1179,-1156,-1132,-1107,-1082,-1057,-1033,-1011,-991,-972,-956,-939,-922,-904,-885,-865,-844,
+-826,-808,-793,-777,-761,-743,-723,-701,-678,-655,-634,-613,-593,-574,-554,-534,-512,-490,-468,-445,-421,
+-396,-371,-344,-318,-291,-264,-236,-206,-175,-141,-107,-72,-39,-6,24,53,83,113,145,178,213,
+250,288,327,366,405,444,481,518,554,591,630,671,713,755,795,832,864,891,916,940,967,
+997,1033,1072,1115,1160,1204,1249,1292,1335,1378,1421,1464,1507,1550,1591,1628,1659,1685,1704,1717,1725,
+1731,1737,1744,1753,1765,1779,1794,1810,1826,1841,1855,1867,1875,1878,1874,1862,1843,1820,1794,1770,1750,
+1735,1723,1714,1705,1695,1687,1684,1692,1716,1757,1816,1887,1962,2034,2094,2142,2179,2208,2235,2264,2294,
+2320,2337,2340,2325,2295,2253,2208,2165,2128,2100,2081,2071,2069,2076,2090,2109,2128,2141,2143,2133,2115,
+2098,2094,2113,2161,2233,2320,2406,2477,2525,2547,2550,2542,2532,2525,2521,2517,2509,2492,2468,2437,2400,
+2358,2308,2244,2165,2072,1972,1880,1807,1767,1764,1794,1845,1901,1947,1977,1988,1989,1990,2001,2029,2072,
+2121,2167,2198,2210,2202,2181,2158,2141,2138,2149,2171,2196,2218,2230,2234,2230,2226,2225,2232,2247,2267,
+2287,2303,2312,2314,2311,2306,2302,2300,2301,2303,2301,2295,2282,2264,2242,2218,2194,2170,2141,2104,2053,
+1983,1895,1793,1685,1582,1497,1439,1414,1422,1456,1509,1568,1625,1672,1708,1731,1745,1753,1759,1766,1774,
+1785,1797,1809,1820,1830,1838,1844,1848,1851,1853,1854,1854,1853,1852,1851,1850,1847,1843,1835,1823,1807,
+1786,1765,1744,1726,1712,1701,1692,1684,1677,1669,1662,1655,1650,1645,1640,1634,1626,1616,1606,1597,1590,
+1584,1581,1577,1574,1569,1563,1555,1547,1537,1528,1520,1513,1507,1503,1500,1496,1490,1483,1472,1461,1449,
+1439,1432,1428,1427,1427,1428,1427,1426,1425,1425,1426,1429,1432,1434,1435,1434,1432,1430,1429,1430,1433,
+1437,1442,1448,1454,1460,1465,1432,1438,1444,1449,1454,1458,1463,1468,1473,1480,1488,1496,1504,1513,1522,
+1532,1544,1559,1576,1596,1617,1640,1664,1688,1711,1734,1756,1777,1799,1820,1843,1865,1888,1910,1932,1953,
+1975,1998,2022,2048,2077,2105,2134,2161,2187,2212,2236,2260,2285,2309,2331,2350,2364,2374,2379,2382,2384,
+2387,2391,2396,2402,2407,2411,2414,2418,2422,2427,2433,2441,2448,2456,2463,2469,2475,2480,2485,2491,2497,
+2503,2510,2517,2523,2527,2530,2528,2523,2515,2506,2497,2492,2493,2501,2517,2539,2564,2587,2605,2616,2619,
+2616,2609,2603,2602,2607,2620,2639,2661,2685,2706,2725,2739,2751,2760,2767,2772,2776,2777,2777,2776,2776,
+2777,2781,2788,2796,2806,2815,2823,2831,2838,2846,2855,2865,2876,2887,2898,2910,2922,2936,2951,2968,2987,
+3007,3027,3045,3062,3076,3088,3098,3107,3117,3129,3144,3162,3181,3200,3216,3228,3236,3242,3248,3255,3264,
+3275,3286,3296,3304,3310,3313,3315,3315,3316,3315,3313,3309,3306,3302,3301,3301,3302,3301,3297,3287,3272,
+3256,3240,3228,3222,3221,3224,3228,3229,3226,3219,3210,3201,3192,3185,3179,3174,3168,3162,3157,3153,3150,
+3147,3145,3141,3137,3133,3130,3130,3132,3136,3141,3145,3148,3149,3148,3147,3147,3147,3147,3146,3144,3142,
+3141,3141,3143,3146,3150,3155,3159,3164,3169,3175,3182,3189,3195,3197,3194,3186,3175,3162,3149,3139,3129,
+3121,3112,3101,3089,3075,3063,3052,3043,3036,3031,3025,3020,3015,3010,3007,3005,3003,3002,2998,2993,2985,
+2976,2966,2957,2947,2935,2922,2906,2888,2870,2854,2842,2836,2832,2830,2826,2816,2800,2779,2753,2728,2705,
+2688,2675,2667,2659,2651,2640,2626,2611,2596,2583,2573,2566,2562,2560,2557,2553,2545,2533,2517,2497,2476,
+2454,2435,2419,2406,2398,2392,2387,2381,2374,2364,2353,2340,2326,2314,2302,2291,2280,2269,2255,2238,2215,
+2186,2151,2108,2061,2010,1957,1903,1848,1793,1736,1679,1620,1561,1502,1446,1392,1340,1292,1244,1198,1154,
+1111,1070,1033,999,968,937,906,873,836,797,756,714,672,631,591,551,511,470,429,387,346,
+308,273,244,219,200,184,170,154,136,113,87,59,30,2,-24,-49,-73,-100,-130,-164,-202,
+-244,-287,-331,-374,-415,-453,-487,-517,-543,-565,-584,-601,-619,-640,-663,-688,-712,-735,-753,-766,-775,
+-781,-789,-800,-815,-835,-859,-885,-914,-943,-974,-1006,-1039,-1074,-1109,-1144,-1177,-1208,-1236,-1262,-1286,-1308,
+-1331,-1355,-1381,-1409,-1439,-1470,-1503,-1536,-1568,-1600,-1631,-1663,-1695,-1730,-1765,-1800,-1836,-1870,-1902,-1933,-1963,
+-1994,-2025,-2056,-2087,-2117,-2146,-2173,-2199,-2224,-2248,-2273,-2297,-2322,-2347,-2372,-2398,-2424,-2451,-2477,-2504,-2529,
+-2553,-2576,-2599,-2624,-2650,-2677,-2705,-2731,-2756,-2777,-2795,-2812,-2829,-2847,-2867,-2888,-2909,-2928,-2946,-2962,-2977,
+-2991,-3004,-3018,-3032,-3046,-3059,-3072,-3084,-3098,-3114,-3130,-3148,-3165,-3182,-3198,-3214,-3229,-3245,-3262,-3279,-3296,
+-3313,-3328,-3343,-3356,-3368,-3380,-3392,-3402,-3412,-3421,-3430,-3439,-3449,-3460,-3472,-3483,-3492,-3498,-3501,-3501,-3500,
+-3500,-3500,-3503,-3506,-3510,-3513,-3514,-3514,-3512,-3509,-3507,-3505,-3503,-3502,-3501,-3499,-3498,-3496,-3496,-3496,-3497,
+-3498,-3499,-3498,-3495,-3490,-3481,-3472,-3462,-3454,-3449,-3446,-3445,-3444,-3440,-3434,-3423,-3410,-3397,-3386,-3380,-3379,
+-3381,-3382,-3380,-3373,-3359,-3342,-3324,-3309,-3300,-3297,-3300,-3305,-3310,-3313,-3313,-3308,-3298,-3285,-3269,-3249,-3228,
+-3205,-3183,-3163,-3147,-3137,-3131,-3131,-3134,-3141,-3151,-3164,-3181,-3200,-3221,-3242,-3260,-3274,-3283,-3286,-3284,-3281,
+-3277,-3276,-3278,-3283,-3292,-3304,-3317,-3331,-3344,-3359,-3374,-3390,-3409,-3430,-3453,-3477,-3501,-3525,-3546,-3567,-3587,
+-3608,-3632,-3657,-3684,-3714,-3744,-3775,-3805,-3834,-3861,-3885,-3907,-3925,-3940,-3954,-3970,-3990,-4019,-4057,-4105,-4161,
+-4222,-4284,-4340,-4389,-4428,-4457,-4475,-4487,-4493,-4497,-4501,-4508,-4518,-4532,-4551,-4573,-4596,-4618,-4638,-4655,-4668,
+-4678,-4688,-4699,-4712,-4728,-4746,-4762,-4777,-4786,-4791,-4791,-4789,-4785,-4783,-4782,-4783,-4785,-4788,-4789,-4791,-4793,
+-4797,-4803,-4811,-4818,-4824,-4825,-4822,-4814,-4803,-4791,-4781,-4772,-4766,-4759,-4753,-4745,-4736,-4728,-4721,-4717,-4715,
+-4714,-4713,-4709,-4701,-4690,-4677,-4664,-4651,-4639,-4629,-4621,-4612,-4604,-4594,-4585,-4575,-4565,-4556,-4547,-4539,-4533,
+-4527,-4522,-4518,-4512,-4504,-4492,-4477,-4459,-4439,-4420,-4401,-4384,-4369,-4354,-4341,-4328,-4315,-4305,-4297,-4291,-4287,
+-4283,-4278,-4271,-4262,-4251,-4240,-4229,-4219,-4210,-4200,-4188,-4175,-4160,-4144,-4126,-4109,-4091,-4074,-4057,-4040,-4025,
+-4010,-3997,-3985,-3973,-3962,-3949,-3935,-3919,-3903,-3887,-3874,-3862,-3851,-3841,-3830,-3818,-3803,-3787,-3770,-3753,-3737,
+-3723,-3710,-3697,-3685,-3673,-3662,-3651,-3640,-3629,-3617,-3605,-3592,-3579,-3566,-3556,-3547,-3539,-3533,-3528,-3523,-3518,
+-3512,-3506,-3499,-3491,-3482,-3472,-3463,-3454,-3446,-3440,-3434,-3430,-3426,-3422,-3418,-3415,-3412,-3410,-3408,-3406,-3402,
+-3397,-3390,-3384,-3378,-3374,-3371,-3369,-3368,-3365,-3360,-3354,-3347,-3340,-3334,-3329,-3325,-3321,-3316,-3309,-3301,-3291,
+-3282,-3275,-3269,-3264,-3259,-3254,-3247,-3240,-3234,-3229,-3226,-3224,-3224,-3223,-3221,-3217,-3210,-3201,-3192,-3183,-3176,
+-3170,-3165,-3159,-3152,-3142,-3129,-3114,-3097,-3080,-3063,-3047,-3034,-3023,-3015,-3008,-3003,-2996,-2988,-2976,-2962,-2946,
+-2930,-2914,-2900,-2888,-2877,-2867,-2856,-2844,-2831,-2818,-2807,-2799,-2796,-2796,-2799,-2804,-2810,-2817,-2826,-2836,-2848,
+-2860,-2868,-2871,-2866,-2853,-2834,-2809,-2784,-2759,-2737,-2716,-2696,-2676,-2655,-2635,-2617,-2603,-2593,-2587,-2584,-2581,
+-2578,-2572,-2564,-2554,-2544,-2535,-2528,-2521,-2515,-2510,-2504,-2500,-2496,-2492,-2490,-2487,-2484,-2480,-2475,-2469,-2463,
+-2457,-2452,-2447,-2443,-2440,-2437,-2434,-2431,-2428,-2426,-2423,-2420,-2416,-2413,-2408,-2402,-2395,-2386,-2376,-2363,-2349,
+-2333,-2316,-2298,-2280,-2263,-2246,-2230,-2214,-2199,-2186,-2173,-2163,-2154,-2148,-2144,-2142,-2140,-2137,-2133,-2125,-2113,
+-2097,-2080,-2061,-2043,-2027,-2012,-1999,-1986,-1972,-1955,-1938,-1919,-1900,-1882,-1867,-1855,-1845,-1837,-1830,-1822,-1812,
+-1801,-1787,-1771,-1753,-1734,-1716,-1697,-1679,-1660,-1642,-1625,-1607,-1591,-1575,-1560,-1545,-1530,-1514,-1497,-1480,-1463,
+-1447,-1433,-1421,-1410,-1400,-1388,-1374,-1358,-1340,-1321,-1302,-1284,-1267,-1250,-1234,-1217,-1200,-1184,-1167,-1151,-1135,
+-1118,-1100,-1081,-1061,-1041,-1021,-1001,-981,-961,-940,-919,-898,-878,-859,-841,-823,-805,-786,-765,-743,-720,
+-698,-677,-657,-638,-619,-599,-577,-554,-531,-507,-484,-460,-437,-413,-387,-361,-334,-306,-278,-249,-219,
+-186,-152,-117,-82,-48,-16,12,39,66,93,122,153,186,221,257,295,334,375,417,460,502,
+544,584,623,661,699,736,774,810,844,877,907,936,965,994,1026,1060,1097,1134,1171,1208,1242,
+1277,1312,1350,1392,1439,1490,1542,1592,1635,1670,1694,1708,1716,1721,1727,1737,1753,1772,1793,1812,1826,
+1835,1837,1833,1824,1809,1789,1763,1732,1697,1661,1628,1599,1578,1563,1554,1548,1543,1540,1542,1556,1589,
+1644,1724,1825,1938,2050,2150,2229,2284,2317,2334,2344,2352,2361,2369,2372,2367,2350,2325,2293,2260,2229,
+2202,2178,2156,2134,2113,2095,2083,2079,2080,2084,2086,2082,2074,2066,2067,2085,2125,2187,2263,2343,2416,
+2474,2514,2539,2555,2568,2580,2591,2598,2598,2589,2572,2548,2519,2486,2443,2386,2310,2215,2107,1999,1907,
+1844,1818,1827,1862,1908,1951,1979,1992,1995,1997,2008,2033,2072,2116,2154,2175,2175,2155,2123,2091,2069,
+2065,2080,2109,2145,2179,2204,2217,2220,2217,2214,2214,2219,2228,2237,2245,2249,2247,2243,2236,2230,2225,
+2223,2223,2222,2219,2213,2201,2185,2165,2142,2118,2091,2061,2026,1984,1934,1876,1814,1755,1703,1665,1644,
+1639,1648,1664,1679,1688,1688,1681,1668,1655,1648,1649,1659,1676,1698,1721,1741,1757,1769,1778,1785,1792,
+1798,1802,1805,1804,1800,1793,1783,1771,1759,1745,1731,1715,1697,1679,1661,1645,1630,1617,1607,1600,1593,
+1589,1587,1587,1589,1592,1594,1594,1592,1586,1577,1566,1555,1545,1537,1530,1524,1518,1512,1506,1499,1492,
+1485,1479,1474,1469,1466,1465,1464,1464,1464,1461,1455,1446,1434,1422,1409,1398,1391,1386,1385,1386,1389,
+1394,1400,1406,1410,1413,1414,1413,1411,1409,1407,1406,1407,1409,1411,1415,1418,1422,1427,1432,1401,1407,
+1414,1421,1427,1432,1437,1443,1450,1459,1469,1480,1491,1502,1514,1527,1541,1558,1577,1599,1623,1649,1675,
+1701,1726,1749,1771,1793,1816,1839,1862,1886,1909,1932,1953,1973,1993,2013,2035,2058,2082,2108,2135,2162,
+2189,2217,2246,2274,2302,2327,2348,2364,2374,2380,2383,2385,2387,2391,2395,2398,2400,2400,2399,2397,2398,
+2401,2407,2416,2426,2435,2442,2448,2451,2454,2458,2463,2470,2479,2488,2497,2505,2510,2511,2508,2502,2493,
+2482,2473,2468,2469,2477,2492,2512,2533,2552,2566,2573,2573,2568,2561,2556,2554,2559,2569,2584,2603,2622,
+2642,2659,2676,2690,2702,2712,2719,2724,2727,2728,2729,2731,2735,2742,2751,2762,2772,2780,2787,2791,2795,
+2798,2802,2808,2816,2825,2836,2846,2858,2869,2882,2897,2914,2934,2955,2976,2997,3015,3031,3043,3054,3064,
+3075,3089,3106,3127,3148,3169,3186,3200,3209,3216,3222,3229,3237,3248,3259,3269,3277,3284,3289,3292,3294,
+3295,3293,3290,3285,3280,3276,3274,3273,3273,3272,3267,3257,3243,3228,3213,3202,3195,3194,3195,3196,3195,
+3191,3184,3176,3169,3162,3158,3154,3150,3145,3140,3134,3129,3125,3122,3118,3115,3113,3111,3110,3111,3115,
+3119,3123,3127,3130,3131,3132,3133,3134,3135,3134,3133,3131,3128,3126,3126,3128,3132,3137,3142,3146,3150,
+3153,3157,3162,3168,3171,3172,3168,3160,3149,3137,3126,3117,3109,3102,3094,3084,3072,3059,3047,3038,3030,
+3024,3018,3010,3000,2989,2978,2967,2960,2954,2951,2947,2943,2937,2929,2920,2911,2902,2892,2880,2866,2852,
+2837,2826,2818,2815,2815,2816,2813,2805,2789,2766,2739,2711,2685,2662,2645,2631,2619,2607,2594,2581,2568,
+2556,2546,2538,2531,2524,2518,2510,2501,2490,2477,2463,2446,2427,2408,2390,2373,2360,2349,2342,2337,2334,
+2329,2323,2315,2304,2290,2275,2260,2244,2228,2212,2194,2174,2151,2122,2088,2049,2005,1959,1911,1863,1814,
+1765,1714,1661,1605,1547,1488,1430,1373,1319,1268,1219,1172,1127,1083,1043,1005,971,939,908,877,845,
+810,772,731,687,642,595,549,504,459,416,374,334,296,261,228,199,173,152,134,118,102,
+86,66,45,20,-5,-31,-58,-84,-112,-141,-172,-207,-244,-283,-323,-364,-405,-445,-484,-521,-555,
+-585,-611,-633,-653,-672,-691,-711,-731,-749,-765,-777,-785,-791,-798,-806,-819,-838,-860,-887,-917,-948,
+-981,-1015,-1051,-1087,-1123,-1159,-1192,-1223,-1251,-1277,-1301,-1323,-1345,-1368,-1391,-1415,-1441,-1469,-1500,-1533,-1567,
+-1602,-1637,-1672,-1707,-1742,-1778,-1815,-1852,-1889,-1926,-1960,-1992,-2023,-2052,-2080,-2109,-2138,-2166,-2194,-2222,-2248,
+-2274,-2299,-2323,-2348,-2371,-2395,-2419,-2444,-2470,-2497,-2525,-2553,-2580,-2606,-2631,-2655,-2679,-2703,-2728,-2753,-2778,
+-2800,-2821,-2841,-2859,-2878,-2897,-2918,-2940,-2961,-2982,-3001,-3018,-3034,-3050,-3066,-3082,-3097,-3111,-3124,-3137,-3149,
+-3162,-3177,-3194,-3212,-3231,-3249,-3266,-3281,-3295,-3309,-3324,-3339,-3356,-3373,-3389,-3404,-3418,-3429,-3439,-3447,-3454,
+-3461,-3468,-3475,-3484,-3495,-3507,-3520,-3534,-3545,-3554,-3560,-3562,-3563,-3564,-3564,-3565,-3567,-3568,-3569,-3569,-3568,
+-3568,-3568,-3570,-3572,-3575,-3576,-3574,-3571,-3565,-3559,-3553,-3549,-3547,-3547,-3548,-3549,-3547,-3544,-3537,-3529,-3520,
+-3511,-3505,-3502,-3500,-3499,-3496,-3492,-3484,-3475,-3465,-3456,-3450,-3447,-3447,-3448,-3447,-3442,-3432,-3419,-3402,-3387,
+-3374,-3365,-3361,-3362,-3366,-3371,-3374,-3374,-3370,-3362,-3348,-3331,-3310,-3287,-3264,-3242,-3222,-3207,-3196,-3190,-3190,
+-3195,-3205,-3219,-3235,-3253,-3270,-3286,-3299,-3308,-3315,-3320,-3322,-3325,-3328,-3331,-3335,-3340,-3347,-3355,-3365,-3376,
+-3388,-3402,-3416,-3432,-3448,-3466,-3485,-3505,-3526,-3547,-3569,-3591,-3613,-3636,-3658,-3680,-3701,-3722,-3744,-3765,-3789,
+-3815,-3843,-3873,-3902,-3930,-3956,-3977,-3997,-4016,-4038,-4064,-4097,-4137,-4183,-4234,-4287,-4340,-4391,-4439,-4481,-4517,
+-4544,-4564,-4575,-4581,-4584,-4586,-4592,-4603,-4618,-4636,-4655,-4673,-4688,-4700,-4711,-4722,-4735,-4751,-4768,-4785,-4799,
+-4808,-4812,-4812,-4809,-4808,-4808,-4812,-4819,-4826,-4831,-4832,-4830,-4825,-4820,-4816,-4815,-4817,-4821,-4826,-4829,-4831,
+-4830,-4827,-4823,-4818,-4812,-4805,-4796,-4786,-4775,-4764,-4755,-4748,-4743,-4740,-4737,-4734,-4729,-4723,-4716,-4708,-4700,
+-4692,-4683,-4674,-4664,-4653,-4642,-4630,-4619,-4608,-4596,-4585,-4574,-4564,-4555,-4547,-4540,-4534,-4527,-4519,-4509,-4497,
+-4483,-4468,-4453,-4436,-4419,-4401,-4383,-4365,-4349,-4335,-4324,-4314,-4306,-4297,-4287,-4277,-4266,-4256,-4248,-4242,-4236,
+-4230,-4223,-4214,-4203,-4190,-4176,-4163,-4150,-4137,-4123,-4108,-4092,-4075,-4059,-4044,-4032,-4020,-4009,-3998,-3985,-3971,
+-3955,-3940,-3926,-3914,-3902,-3891,-3879,-3866,-3851,-3835,-3819,-3804,-3790,-3777,-3764,-3751,-3738,-3726,-3713,-3701,-3690,
+-3679,-3669,-3659,-3649,-3639,-3630,-3622,-3614,-3606,-3599,-3591,-3583,-3576,-3569,-3562,-3556,-3549,-3542,-3535,-3527,-3518,
+-3510,-3503,-3496,-3490,-3485,-3480,-3476,-3472,-3470,-3468,-3467,-3465,-3462,-3458,-3452,-3446,-3440,-3436,-3434,-3433,-3432,
+-3430,-3426,-3421,-3414,-3407,-3402,-3397,-3394,-3390,-3386,-3378,-3369,-3359,-3348,-3339,-3332,-3326,-3321,-3315,-3307,-3298,
+-3289,-3281,-3275,-3272,-3271,-3271,-3270,-3267,-3262,-3254,-3246,-3237,-3230,-3224,-3218,-3212,-3203,-3193,-3180,-3165,-3149,
+-3134,-3120,-3108,-3098,-3090,-3082,-3075,-3068,-3059,-3049,-3038,-3027,-3014,-3002,-2991,-2980,-2970,-2960,-2949,-2936,-2923,
+-2909,-2896,-2885,-2878,-2873,-2870,-2868,-2866,-2864,-2863,-2865,-2869,-2876,-2885,-2895,-2902,-2905,-2902,-2894,-2883,-2869,
+-2855,-2840,-2823,-2804,-2781,-2755,-2728,-2701,-2678,-2659,-2646,-2636,-2630,-2624,-2619,-2612,-2604,-2597,-2590,-2583,-2577,
+-2570,-2564,-2558,-2552,-2546,-2541,-2536,-2531,-2526,-2520,-2514,-2506,-2499,-2491,-2485,-2480,-2476,-2472,-2470,-2467,-2466,
+-2464,-2463,-2461,-2459,-2456,-2451,-2445,-2437,-2427,-2414,-2400,-2385,-2369,-2354,-2340,-2328,-2316,-2305,-2293,-2281,-2267,
+-2251,-2235,-2218,-2202,-2187,-2174,-2163,-2154,-2147,-2140,-2133,-2125,-2116,-2106,-2094,-2083,-2071,-2059,-2047,-2033,-2018,
+-2001,-1982,-1963,-1945,-1928,-1913,-1901,-1892,-1884,-1877,-1869,-1861,-1851,-1839,-1826,-1811,-1796,-1779,-1762,-1743,-1724,
+-1703,-1682,-1660,-1639,-1618,-1599,-1581,-1564,-1547,-1530,-1513,-1497,-1481,-1467,-1456,-1446,-1438,-1428,-1418,-1405,-1390,
+-1372,-1353,-1333,-1313,-1292,-1273,-1254,-1238,-1223,-1211,-1201,-1192,-1184,-1174,-1161,-1144,-1124,-1100,-1075,-1048,-1022,
+-997,-973,-951,-931,-913,-895,-878,-860,-840,-818,-794,-769,-745,-723,-704,-687,-671,-654,-634,-612,-587,
+-561,-536,-510,-484,-458,-430,-401,-370,-339,-308,-279,-249,-219,-188,-155,-121,-85,-50,-17,12,40,
+66,92,118,147,178,211,245,281,320,360,402,445,489,531,571,608,642,675,707,741,775,
+811,848,884,919,952,985,1017,1049,1082,1115,1147,1178,1208,1237,1266,1299,1337,1381,1430,1482,1534,
+1581,1621,1650,1672,1687,1701,1716,1735,1757,1779,1799,1812,1816,1807,1788,1759,1723,1683,1640,1598,1559,
+1524,1497,1480,1475,1480,1495,1515,1536,1556,1575,1597,1628,1673,1739,1825,1928,2039,2147,2240,2311,2358,
+2382,2391,2391,2390,2389,2388,2385,2377,2362,2341,2316,2290,2264,2237,2209,2176,2140,2102,2066,2037,2019,
+2010,2009,2010,2009,2005,2001,2003,2018,2051,2103,2167,2236,2301,2354,2392,2417,2434,2445,2455,2463,2467,
+2466,2460,2451,2444,2440,2438,2433,2418,2385,2329,2252,2163,2076,2005,1960,1944,1952,1974,1998,2015,2020,
+2018,2014,2017,2030,2054,2081,2105,2117,2116,2101,2081,2063,2055,2061,2080,2107,2135,2158,2171,2175,2172,
+2167,2162,2161,2163,2169,2175,2179,2181,2179,2175,2168,2161,2154,2148,2143,2141,2139,2137,2133,2125,2113,
+2095,2073,2049,2024,2000,1976,1952,1928,1901,1873,1844,1817,1793,1774,1759,1745,1732,1716,1696,1675,1655,
+1640,1633,1636,1648,1667,1689,1710,1727,1739,1746,1752,1756,1761,1766,1769,1770,1767,1758,1745,1727,1707,
+1686,1665,1645,1625,1607,1591,1577,1565,1555,1547,1539,1532,1525,1520,1516,1514,1514,1516,1519,1521,1521,
+1519,1516,1511,1505,1500,1494,1488,1482,1474,1464,1454,1443,1433,1424,1418,1414,1412,1414,1418,1425,1431,
+1436,1438,1435,1427,1414,1398,1381,1366,1354,1348,1347,1351,1358,1366,1373,1379,1382,1384,1383,1383,1383,
+1383,1385,1387,1389,1391,1391,1391,1391,1393,1396,1401,1383,1391,1398,1405,1411,1415,1420,1426,1433,1444,
+1456,1470,1485,1500,1516,1532,1549,1567,1588,1611,1636,1662,1688,1713,1737,1760,1783,1807,1832,1858,1886,
+1913,1939,1963,1983,2000,2015,2029,2044,2061,2081,2103,2128,2156,2186,2218,2250,2282,2312,2337,2356,2368,
+2374,2376,2377,2379,2382,2387,2392,2396,2396,2394,2390,2386,2385,2388,2395,2404,2414,2423,2429,2432,2434,
+2437,2442,2449,2459,2470,2479,2486,2489,2488,2482,2474,2464,2453,2446,2442,2443,2451,2465,2482,2499,2515,
+2526,2530,2528,2522,2515,2510,2509,2513,2522,2534,2548,2562,2576,2589,2604,2618,2633,2647,2659,2669,2675,
+2678,2680,2683,2687,2694,2704,2715,2727,2737,2744,2748,2750,2751,2752,2754,2759,2766,2774,2785,2796,2808,
+2821,2834,2850,2867,2886,2906,2927,2948,2967,2984,2998,3010,3022,3035,3050,3069,3091,3113,3135,3154,3170,
+3182,3191,3199,3208,3217,3227,3236,3244,3251,3256,3260,3263,3265,3267,3267,3265,3263,3259,3255,3251,3249,
+3247,3244,3238,3230,3219,3207,3196,3188,3183,3180,3179,3178,3175,3169,3162,3154,3146,3139,3133,3128,3123,
+3118,3113,3108,3104,3101,3098,3096,3094,3093,3093,3094,3096,3099,3102,3105,3107,3109,3111,3114,3118,3122,
+3126,3128,3128,3127,3124,3122,3122,3124,3127,3131,3133,3134,3134,3134,3135,3137,3140,3143,3143,3139,3131,
+3120,3108,3097,3089,3083,3077,3071,3062,3051,3038,3025,3014,3004,2996,2987,2976,2962,2947,2931,2917,2906,
+2899,2895,2893,2890,2886,2881,2874,2867,2859,2851,2842,2834,2825,2817,2810,2806,2805,2804,2802,2795,2782,
+2763,2738,2710,2682,2656,2634,2615,2598,2583,2568,2554,2541,2530,2520,2512,2505,2497,2488,2476,2462,2446,
+2430,2414,2398,2382,2367,2351,2336,2322,2310,2302,2296,2293,2291,2288,2285,2279,2271,2260,2245,2229,2210,
+2188,2166,2141,2115,2086,2056,2022,1985,1945,1901,1855,1806,1756,1704,1651,1597,1542,1487,1433,1381,1331,
+1283,1237,1192,1149,1107,1066,1027,989,954,920,888,857,825,792,756,716,674,628,579,530,480,
+433,387,344,303,265,229,196,165,137,113,92,74,57,40,21,0,-22,-46,-73,-100,-128,
+-157,-188,-220,-254,-289,-325,-363,-401,-439,-478,-516,-552,-586,-616,-642,-665,-685,-703,-721,-739,-755,
+-770,-782,-791,-798,-804,-812,-824,-840,-860,-885,-913,-944,-976,-1012,-1049,-1089,-1130,-1170,-1207,-1240,-1269,
+-1293,-1314,-1335,-1356,-1377,-1401,-1425,-1451,-1478,-1506,-1536,-1568,-1601,-1636,-1672,-1708,-1745,-1782,-1820,-1858,-1898,
+-1937,-1976,-2012,-2046,-2077,-2106,-2133,-2160,-2187,-2214,-2242,-2270,-2299,-2326,-2353,-2379,-2403,-2426,-2447,-2468,-2490,
+-2513,-2539,-2567,-2596,-2626,-2655,-2682,-2708,-2733,-2756,-2779,-2801,-2823,-2844,-2865,-2885,-2905,-2926,-2947,-2969,-2991,
+-3012,-3032,-3051,-3069,-3085,-3102,-3119,-3135,-3152,-3167,-3181,-3195,-3208,-3223,-3240,-3260,-3280,-3301,-3320,-3337,-3351,
+-3364,-3375,-3387,-3400,-3414,-3429,-3444,-3459,-3471,-3482,-3490,-3497,-3502,-3508,-3513,-3520,-3527,-3537,-3548,-3561,-3575,
+-3588,-3600,-3610,-3617,-3623,-3626,-3629,-3630,-3630,-3629,-3626,-3624,-3623,-3624,-3627,-3633,-3640,-3648,-3653,-3656,-3654,
+-3649,-3641,-3632,-3625,-3619,-3615,-3613,-3611,-3609,-3604,-3598,-3590,-3581,-3572,-3565,-3559,-3555,-3553,-3550,-3548,-3545,
+-3541,-3536,-3531,-3527,-3523,-3521,-3519,-3517,-3512,-3505,-3494,-3481,-3466,-3451,-3438,-3430,-3427,-3428,-3433,-3439,-3443,
+-3443,-3438,-3427,-3411,-3391,-3368,-3345,-3322,-3301,-3282,-3268,-3259,-3255,-3259,-3268,-3283,-3301,-3319,-3335,-3347,-3354,
+-3357,-3357,-3357,-3358,-3362,-3368,-3377,-3386,-3396,-3405,-3413,-3421,-3429,-3438,-3447,-3459,-3472,-3487,-3504,-3522,-3542,
+-3563,-3586,-3608,-3631,-3654,-3676,-3697,-3717,-3734,-3750,-3764,-3779,-3796,-3816,-3840,-3869,-3901,-3934,-3966,-3995,-4020,
+-4042,-4062,-4081,-4102,-4126,-4155,-4189,-4229,-4276,-4328,-4386,-4445,-4502,-4554,-4596,-4626,-4644,-4653,-4656,-4657,-4660,
+-4667,-4678,-4691,-4703,-4714,-4722,-4729,-4736,-4744,-4756,-4770,-4785,-4798,-4809,-4816,-4819,-4820,-4823,-4828,-4836,-4846,
+-4858,-4867,-4872,-4873,-4869,-4861,-4853,-4845,-4840,-4838,-4839,-4842,-4846,-4851,-4854,-4855,-4854,-4851,-4845,-4837,-4827,
+-4817,-4807,-4798,-4791,-4784,-4778,-4773,-4767,-4762,-4756,-4750,-4744,-4738,-4731,-4723,-4714,-4703,-4692,-4680,-4669,-4657,
+-4645,-4634,-4621,-4609,-4597,-4585,-4574,-4563,-4553,-4544,-4535,-4526,-4517,-4507,-4497,-4485,-4472,-4457,-4441,-4424,-4408,
+-4393,-4379,-4368,-4356,-4344,-4331,-4317,-4301,-4287,-4275,-4265,-4258,-4252,-4245,-4237,-4227,-4216,-4205,-4195,-4187,-4179,
+-4172,-4164,-4152,-4138,-4122,-4106,-4091,-4079,-4068,-4058,-4048,-4036,-4022,-4007,-3991,-3975,-3961,-3947,-3935,-3923,-3910,
+-3897,-3883,-3870,-3858,-3846,-3834,-3822,-3810,-3796,-3783,-3769,-3756,-3744,-3733,-3724,-3715,-3707,-3700,-3694,-3688,-3682,
+-3675,-3667,-3658,-3648,-3638,-3628,-3620,-3614,-3608,-3603,-3598,-3592,-3585,-3578,-3571,-3564,-3557,-3551,-3544,-3539,-3534,
+-3530,-3527,-3526,-3524,-3522,-3518,-3513,-3506,-3500,-3494,-3490,-3488,-3486,-3485,-3483,-3479,-3475,-3470,-3467,-3465,-3463,
+-3462,-3459,-3454,-3446,-3436,-3426,-3416,-3407,-3400,-3393,-3386,-3377,-3367,-3355,-3344,-3335,-3328,-3324,-3322,-3321,-3319,
+-3315,-3309,-3303,-3296,-3289,-3283,-3277,-3269,-3259,-3248,-3234,-3219,-3204,-3190,-3178,-3167,-3158,-3150,-3142,-3134,-3127,
+-3120,-3112,-3105,-3097,-3089,-3081,-3072,-3062,-3051,-3038,-3024,-3010,-2994,-2980,-2968,-2959,-2953,-2949,-2946,-2944,-2940,
+-2935,-2928,-2922,-2918,-2915,-2915,-2917,-2919,-2922,-2923,-2922,-2921,-2919,-2915,-2909,-2900,-2886,-2867,-2843,-2816,-2788,
+-2760,-2736,-2716,-2700,-2687,-2676,-2666,-2658,-2651,-2644,-2638,-2633,-2627,-2620,-2613,-2606,-2598,-2591,-2584,-2577,-2571,
+-2564,-2557,-2548,-2540,-2532,-2524,-2518,-2512,-2508,-2504,-2501,-2499,-2497,-2496,-2495,-2494,-2492,-2489,-2484,-2477,-2468,
+-2456,-2444,-2430,-2416,-2403,-2391,-2379,-2369,-2359,-2349,-2338,-2326,-2313,-2298,-2282,-2265,-2248,-2232,-2217,-2202,-2188,
+-2175,-2163,-2153,-2143,-2135,-2127,-2119,-2111,-2101,-2090,-2078,-2063,-2047,-2031,-2014,-1998,-1984,-1971,-1961,-1951,-1943,
+-1935,-1926,-1917,-1905,-1893,-1879,-1864,-1849,-1833,-1816,-1799,-1780,-1761,-1740,-1718,-1696,-1675,-1655,-1635,-1616,-1598,
+-1579,-1559,-1540,-1521,-1504,-1489,-1477,-1466,-1456,-1446,-1435,-1423,-1408,-1392,-1374,-1355,-1336,-1316,-1297,-1278,-1262,
+-1248,-1238,-1231,-1226,-1221,-1215,-1204,-1189,-1168,-1142,-1113,-1083,-1053,-1025,-1001,-980,-963,-948,-935,-920,-902,
+-881,-856,-829,-802,-776,-754,-735,-719,-704,-687,-668,-645,-619,-592,-564,-535,-506,-475,-443,-409,-373,
+-339,-306,-276,-248,-222,-194,-164,-130,-94,-57,-20,14,46,76,105,134,164,196,228,260,292,
+325,358,393,430,469,508,546,582,616,648,680,713,747,783,820,858,895,931,965,998,1031,
+1065,1098,1131,1164,1195,1224,1253,1284,1316,1353,1395,1439,1484,1527,1566,1599,1626,1648,1668,1688,1707,
+1725,1740,1748,1747,1733,1708,1671,1627,1580,1534,1492,1459,1437,1429,1437,1459,1496,1544,1599,1655,1707,
+1753,1791,1825,1857,1894,1940,1997,2062,2130,2196,2253,2297,2327,2346,2357,2365,2371,2377,2380,2377,2368,
+2351,2327,2300,2270,2240,2208,2173,2136,2097,2059,2026,2002,1989,1986,1987,1988,1985,1978,1969,1966,1976,
+2003,2049,2109,2175,2236,2286,2321,2342,2352,2355,2355,2351,2345,2336,2325,2316,2312,2317,2330,2348,2361,
+2360,2338,2293,2230,2158,2089,2035,2001,1988,1989,1996,2003,2005,2004,2003,2005,2014,2029,2047,2064,2077,
+2083,2086,2089,2095,2105,2120,2135,2146,2148,2141,2127,2109,2092,2081,2077,2080,2087,2094,2101,2105,2108,
+2108,2108,2107,2104,2100,2094,2087,2080,2075,2072,2070,2066,2060,2048,2032,2013,1993,1976,1962,1951,1942,
+1932,1918,1900,1877,1852,1827,1804,1784,1767,1752,1738,1726,1714,1706,1702,1702,1707,1715,1723,1730,1734,
+1736,1735,1733,1731,1729,1726,1722,1715,1705,1691,1673,1654,1634,1614,1594,1576,1559,1543,1530,1520,1513,
+1507,1501,1495,1488,1477,1466,1453,1442,1433,1426,1423,1422,1422,1424,1426,1429,1433,1437,1441,1443,1442,
+1437,1429,1417,1404,1390,1376,1366,1360,1359,1362,1370,1381,1392,1401,1406,1404,1396,1382,1364,1346,1331,
+1321,1316,1318,1323,1331,1338,1343,1346,1347,1346,1346,1347,1350,1354,1359,1364,1367,1369,1369,1369,1369,
+1372,1376,1383,1376,1387,1396,1403,1409,1413,1418,1424,1433,1444,1457,1473,1489,1506,1523,1540,1558,1577,
+1598,1621,1646,1671,1696,1721,1744,1767,1791,1816,1843,1872,1901,1930,1956,1978,1995,2007,2017,2026,2037,
+2051,2069,2093,2120,2151,2184,2218,2251,2283,2310,2332,2347,2356,2360,2361,2362,2366,2371,2379,2386,2392,
+2393,2392,2387,2383,2381,2382,2386,2392,2399,2404,2408,2410,2413,2419,2426,2437,2448,2458,2464,2464,2459,
+2449,2437,2425,2415,2409,2409,2414,2423,2437,2451,2466,2477,2484,2486,2483,2477,2470,2466,2465,2468,2475,
+2484,2494,2503,2512,2520,2530,2541,2555,2571,2587,2602,2614,2622,2628,2632,2636,2642,2650,2660,2671,2681,
+2689,2695,2698,2699,2699,2700,2701,2705,2711,2719,2730,2742,2756,2772,2788,2806,2824,2843,2863,2884,2905,
+2925,2943,2959,2974,2987,3001,3017,3035,3055,3076,3098,3118,3136,3150,3163,3175,3186,3197,3207,3216,3223,
+3228,3230,3232,3233,3233,3234,3235,3235,3234,3232,3228,3224,3220,3215,3209,3203,3196,3188,3181,3175,3170,
+3168,3167,3166,3165,3162,3157,3150,3141,3132,3123,3114,3106,3099,3093,3088,3085,3082,3080,3077,3075,3072,
+3070,3069,3069,3070,3072,3073,3075,3076,3078,3082,3088,3096,3104,3112,3118,3121,3122,3120,3119,3119,3120,
+3122,3123,3123,3120,3116,3112,3109,3109,3110,3112,3111,3108,3100,3090,3078,3068,3060,3054,3050,3045,3038,
+3027,3015,3001,2988,2975,2964,2952,2938,2923,2906,2888,2872,2860,2851,2846,2844,2842,2840,2836,2831,2826,
+2820,2814,2808,2802,2796,2791,2787,2783,2780,2775,2767,2754,2737,2715,2691,2667,2643,2623,2605,2589,2573,
+2557,2541,2525,2511,2500,2491,2484,2477,2468,2456,2440,2420,2399,2377,2357,2338,2320,2304,2289,2274,2262,
+2251,2243,2238,2235,2233,2231,2229,2225,2220,2212,2202,2188,2171,2149,2123,2094,2062,2029,1995,1960,1923,
+1883,1839,1791,1739,1684,1627,1570,1515,1463,1414,1369,1327,1288,1250,1213,1176,1140,1103,1066,1028,991,
+955,919,884,850,817,783,748,711,671,628,582,533,483,433,384,338,293,250,210,172,137,
+106,79,55,35,16,-2,-22,-44,-67,-92,-117,-142,-167,-193,-220,-249,-280,-313,-349,-387,-425,
+-464,-503,-540,-575,-607,-634,-658,-679,-697,-715,-733,-751,-768,-784,-798,-809,-819,-828,-839,-853,-871,
+-892,-916,-942,-971,-1002,-1038,-1078,-1121,-1167,-1211,-1252,-1286,-1313,-1335,-1352,-1368,-1386,-1406,-1430,-1457,-1485,
+-1515,-1545,-1576,-1607,-1640,-1674,-1709,-1746,-1783,-1821,-1860,-1900,-1941,-1981,-2021,-2058,-2093,-2125,-2154,-2181,-2207,
+-2233,-2260,-2287,-2315,-2344,-2373,-2401,-2428,-2453,-2476,-2497,-2518,-2538,-2561,-2586,-2613,-2643,-2674,-2705,-2734,-2762,
+-2787,-2810,-2832,-2853,-2873,-2893,-2913,-2934,-2955,-2976,-2999,-3022,-3045,-3067,-3088,-3107,-3124,-3140,-3155,-3169,-3183,
+-3197,-3210,-3224,-3238,-3255,-3273,-3294,-3317,-3341,-3363,-3383,-3399,-3411,-3421,-3430,-3439,-3449,-3461,-3474,-3488,-3502,
+-3514,-3525,-3535,-3543,-3551,-3558,-3565,-3572,-3579,-3586,-3595,-3605,-3617,-3629,-3642,-3653,-3664,-3673,-3681,-3686,-3690,
+-3692,-3693,-3692,-3691,-3692,-3694,-3700,-3710,-3721,-3734,-3746,-3756,-3762,-3764,-3761,-3755,-3747,-3737,-3726,-3715,-3704,
+-3693,-3683,-3672,-3663,-3654,-3646,-3638,-3631,-3625,-3620,-3616,-3614,-3612,-3611,-3611,-3609,-3607,-3604,-3600,-3596,-3591,
+-3586,-3580,-3572,-3561,-3549,-3536,-3523,-3513,-3507,-3507,-3510,-3515,-3520,-3522,-3520,-3511,-3497,-3478,-3458,-3436,-3414,
+-3393,-3374,-3357,-3344,-3337,-3337,-3344,-3357,-3375,-3394,-3411,-3424,-3429,-3429,-3425,-3419,-3414,-3412,-3415,-3422,-3432,
+-3444,-3456,-3466,-3475,-3483,-3490,-3498,-3507,-3518,-3532,-3548,-3567,-3587,-3608,-3629,-3650,-3670,-3689,-3708,-3727,-3746,
+-3763,-3779,-3794,-3809,-3823,-3840,-3859,-3882,-3908,-3936,-3965,-3994,-4020,-4044,-4066,-4086,-4106,-4125,-4145,-4167,-4194,
+-4227,-4268,-4317,-4374,-4435,-4496,-4553,-4602,-4641,-4669,-4688,-4702,-4713,-4723,-4733,-4743,-4751,-4756,-4758,-4758,-4758,
+-4759,-4764,-4772,-4783,-4796,-4808,-4819,-4827,-4834,-4839,-4845,-4853,-4862,-4873,-4885,-4895,-4903,-4907,-4908,-4904,-4898,
+-4890,-4882,-4875,-4871,-4869,-4870,-4872,-4874,-4875,-4875,-4872,-4868,-4862,-4855,-4848,-4842,-4836,-4829,-4822,-4813,-4805,
+-4796,-4787,-4779,-4772,-4765,-4758,-4750,-4742,-4732,-4721,-4710,-4698,-4686,-4674,-4662,-4649,-4636,-4624,-4611,-4599,-4586,
+-4573,-4560,-4548,-4537,-4526,-4517,-4508,-4498,-4488,-4477,-4464,-4451,-4439,-4428,-4418,-4408,-4399,-4387,-4373,-4357,-4339,
+-4322,-4307,-4295,-4284,-4274,-4264,-4253,-4241,-4230,-4220,-4213,-4207,-4204,-4199,-4193,-4182,-4169,-4153,-4138,-4124,-4114,
+-4106,-4099,-4091,-4081,-4068,-4053,-4036,-4019,-4002,-3988,-3975,-3963,-3953,-3942,-3932,-3923,-3913,-3904,-3893,-3881,-3868,
+-3854,-3840,-3826,-3813,-3801,-3790,-3780,-3771,-3762,-3755,-3748,-3743,-3738,-3733,-3727,-3719,-3710,-3700,-3691,-3682,-3675,
+-3668,-3663,-3657,-3652,-3646,-3639,-3633,-3627,-3621,-3615,-3609,-3602,-3596,-3592,-3588,-3586,-3584,-3582,-3579,-3575,-3569,
+-3562,-3554,-3548,-3544,-3541,-3539,-3536,-3534,-3531,-3528,-3525,-3524,-3524,-3524,-3524,-3521,-3516,-3508,-3499,-3490,-3482,
+-3474,-3468,-3462,-3454,-3444,-3433,-3420,-3408,-3397,-3389,-3382,-3378,-3374,-3370,-3365,-3361,-3355,-3350,-3344,-3338,-3331,
+-3321,-3310,-3297,-3283,-3269,-3255,-3242,-3230,-3220,-3210,-3201,-3194,-3187,-3182,-3177,-3172,-3167,-3161,-3154,-3145,-3134,
+-3121,-3108,-3095,-3081,-3068,-3055,-3044,-3035,-3028,-3023,-3019,-3015,-3011,-3005,-2998,-2989,-2980,-2971,-2963,-2957,-2952,
+-2948,-2946,-2944,-2944,-2943,-2942,-2938,-2933,-2924,-2911,-2895,-2876,-2856,-2834,-2813,-2792,-2771,-2752,-2734,-2718,-2704,
+-2693,-2685,-2678,-2673,-2668,-2662,-2655,-2647,-2638,-2629,-2621,-2612,-2604,-2595,-2586,-2578,-2570,-2562,-2555,-2550,-2545,
+-2540,-2536,-2533,-2529,-2527,-2525,-2523,-2521,-2518,-2514,-2509,-2502,-2494,-2485,-2476,-2466,-2455,-2445,-2434,-2423,-2412,
+-2399,-2386,-2372,-2358,-2343,-2328,-2314,-2300,-2287,-2273,-2259,-2244,-2229,-2215,-2201,-2189,-2177,-2168,-2159,-2150,-2140,
+-2129,-2117,-2103,-2089,-2075,-2062,-2050,-2039,-2030,-2021,-2012,-2002,-1992,-1982,-1971,-1959,-1947,-1933,-1919,-1903,-1887,
+-1869,-1850,-1830,-1808,-1787,-1765,-1744,-1724,-1705,-1687,-1669,-1652,-1634,-1615,-1595,-1574,-1553,-1534,-1517,-1502,-1488,
+-1477,-1465,-1453,-1440,-1426,-1411,-1394,-1376,-1357,-1337,-1317,-1296,-1278,-1261,-1248,-1239,-1233,-1228,-1222,-1213,-1200,
+-1182,-1159,-1133,-1104,-1077,-1051,-1029,-1010,-995,-982,-970,-955,-937,-915,-889,-861,-832,-806,-782,-762,-744,
+-727,-708,-686,-661,-634,-605,-576,-546,-516,-484,-450,-415,-379,-345,-313,-285,-259,-234,-208,-178,-144,
+-107,-67,-27,11,48,82,116,150,184,218,251,282,311,337,362,388,416,447,481,517,553,
+590,625,660,694,729,764,800,836,871,906,940,974,1009,1046,1083,1121,1158,1194,1227,1258,1287,
+1317,1349,1384,1421,1459,1497,1531,1560,1583,1600,1612,1620,1624,1626,1623,1615,1601,1580,1554,1523,1492,
+1464,1443,1434,1439,1459,1496,1547,1611,1684,1760,1835,1903,1962,2009,2044,2071,2091,2108,2126,2145,2165,
+2186,2207,2225,2243,2259,2276,2293,2311,2327,2338,2341,2335,2318,2292,2262,2229,2196,2165,2134,2104,2074,
+2045,2021,2005,1998,2000,2007,2014,2015,2007,1991,1972,1959,1959,1979,2019,2076,2140,2201,2253,2290,2313,
+2324,2328,2327,2323,2315,2303,2287,2271,2258,2252,2253,2259,2264,2261,2244,2209,2159,2100,2041,1991,1955,
+1935,1928,1931,1938,1945,1954,1963,1976,1991,2008,2026,2042,2055,2067,2079,2093,2110,2126,2139,2144,2137,
+2117,2088,2056,2026,2005,1996,1997,2004,2013,2020,2023,2024,2023,2025,2029,2035,2040,2043,2041,2035,2025,
+2014,2005,1999,1994,1990,1984,1974,1962,1948,1936,1927,1921,1917,1912,1905,1892,1875,1855,1836,1818,1805,
+1795,1789,1784,1779,1772,1763,1753,1743,1734,1726,1720,1715,1710,1706,1701,1696,1689,1680,1668,1653,1636,
+1616,1596,1577,1559,1544,1531,1519,1507,1496,1485,1476,1469,1464,1461,1457,1452,1443,1431,1414,1396,1378,
+1362,1350,1342,1338,1338,1339,1343,1348,1354,1362,1371,1380,1387,1391,1391,1385,1375,1362,1347,1334,1324,
+1319,1320,1327,1337,1349,1359,1364,1364,1357,1344,1329,1315,1303,1295,1293,1295,1300,1305,1308,1310,1310,
+1309,1310,1311,1315,1321,1327,1332,1337,1339,1341,1342,1344,1349,1356,1366,1376,1370,1382,1393,1402,1409,
+1416,1423,1431,1441,1453,1467,1482,1497,1513,1530,1547,1566,1586,1608,1632,1657,1684,1710,1735,1759,1782,
+1805,1828,1853,1878,1905,1929,1951,1968,1981,1990,1997,2006,2018,2035,2057,2085,2116,2149,2182,2213,2242,
+2267,2289,2306,2318,2326,2331,2335,2339,2345,2353,2363,2372,2379,2382,2382,2378,2373,2370,2368,2368,2371,
+2374,2377,2380,2383,2388,2396,2405,2415,2424,2428,2426,2418,2406,2391,2377,2368,2365,2368,2378,2391,2406,
+2420,2432,2439,2442,2441,2436,2430,2423,2418,2416,2417,2422,2429,2437,2444,2450,2456,2462,2469,2479,2492,
+2507,2523,2538,2551,2562,2570,2577,2584,2593,2603,2613,2624,2633,2641,2645,2648,2648,2647,2647,2647,2649,
+2654,2662,2673,2688,2706,2726,2746,2766,2787,2806,2826,2846,2866,2886,2906,2924,2941,2956,2971,2986,3002,
+3021,3041,3061,3081,3100,3116,3130,3143,3155,3167,3178,3188,3196,3201,3204,3206,3206,3205,3204,3204,3203,
+3202,3199,3196,3191,3185,3179,3173,3166,3160,3154,3149,3146,3143,3142,3142,3143,3143,3142,3139,3134,3126,
+3117,3106,3095,3085,3077,3071,3066,3064,3062,3059,3055,3050,3045,3040,3037,3035,3036,3037,3039,3041,3042,
+3046,3051,3059,3069,3081,3092,3101,3106,3109,3109,3109,3109,3111,3112,3112,3110,3106,3099,3092,3087,3084,
+3083,3083,3083,3079,3072,3062,3051,3041,3033,3028,3024,3021,3016,3008,2997,2985,2972,2959,2946,2933,2918,
+2902,2884,2865,2847,2831,2820,2811,2806,2803,2801,2798,2795,2791,2786,2780,2774,2767,2760,2753,2746,2739,
+2731,2722,2710,2696,2679,2659,2640,2621,2605,2591,2578,2565,2551,2534,2517,2500,2486,2475,2467,2460,2453,
+2443,2429,2410,2387,2362,2337,2313,2291,2270,2249,2230,2212,2195,2181,2170,2162,2157,2153,2151,2149,2147,
+2144,2141,2137,2130,2118,2100,2077,2048,2014,1979,1942,1906,1869,1830,1788,1742,1691,1637,1580,1524,1471,
+1422,1377,1338,1302,1268,1235,1203,1171,1139,1106,1072,1037,1001,964,926,888,850,814,779,744,708,
+670,630,587,541,493,444,394,345,296,249,204,162,125,91,62,37,14,-7,-30,-55,-81,
+-107,-132,-155,-176,-195,-214,-234,-258,-285,-317,-353,-392,-432,-474,-514,-553,-589,-621,-648,-672,-693,
+-713,-732,-752,-772,-792,-810,-826,-840,-852,-863,-876,-890,-908,-927,-948,-971,-997,-1026,-1061,-1101,-1146,
+-1194,-1242,-1285,-1321,-1348,-1368,-1383,-1396,-1411,-1430,-1454,-1483,-1515,-1548,-1582,-1616,-1650,-1684,-1719,-1754,-1791,
+-1829,-1868,-1907,-1947,-1987,-2027,-2066,-2103,-2137,-2169,-2198,-2225,-2251,-2276,-2302,-2328,-2354,-2381,-2409,-2437,-2464,
+-2491,-2517,-2542,-2566,-2590,-2615,-2640,-2668,-2696,-2725,-2754,-2783,-2810,-2835,-2858,-2880,-2901,-2921,-2941,-2960,-2979,
+-3000,-3021,-3043,-3067,-3091,-3116,-3139,-3160,-3179,-3195,-3209,-3220,-3229,-3238,-3247,-3258,-3271,-3288,-3309,-3332,-3357,
+-3382,-3404,-3423,-3437,-3447,-3456,-3463,-3471,-3482,-3495,-3509,-3524,-3539,-3553,-3567,-3579,-3590,-3600,-3610,-3619,-3626,
+-3634,-3641,-3649,-3658,-3668,-3679,-3690,-3701,-3711,-3719,-3727,-3734,-3740,-3747,-3754,-3761,-3768,-3776,-3784,-3795,-3808,
+-3823,-3840,-3858,-3875,-3890,-3900,-3905,-3903,-3895,-3880,-3861,-3838,-3814,-3791,-3770,-3754,-3741,-3731,-3724,-3718,-3712,
+-3704,-3697,-3690,-3685,-3683,-3682,-3682,-3682,-3682,-3679,-3676,-3671,-3666,-3661,-3656,-3651,-3644,-3635,-3625,-3615,-3605,
+-3598,-3595,-3596,-3599,-3603,-3605,-3604,-3598,-3587,-3572,-3555,-3535,-3515,-3494,-3473,-3453,-3435,-3422,-3414,-3415,-3423,
+-3438,-3458,-3477,-3494,-3505,-3510,-3507,-3500,-3491,-3483,-3477,-3476,-3479,-3487,-3498,-3510,-3522,-3533,-3543,-3552,-3562,
+-3573,-3586,-3602,-3620,-3640,-3660,-3678,-3696,-3712,-3727,-3743,-3760,-3779,-3798,-3818,-3838,-3856,-3873,-3889,-3904,-3920,
+-3937,-3955,-3974,-3994,-4015,-4038,-4061,-4085,-4109,-4132,-4153,-4173,-4192,-4212,-4236,-4266,-4304,-4349,-4400,-4456,-4511,
+-4563,-4610,-4650,-4684,-4713,-4738,-4760,-4778,-4791,-4801,-4806,-4807,-4805,-4803,-4802,-4804,-4810,-4819,-4830,-4842,-4853,
+-4862,-4868,-4872,-4874,-4877,-4881,-4888,-4898,-4911,-4924,-4935,-4942,-4944,-4940,-4932,-4921,-4909,-4900,-4893,-4889,-4889,
+-4889,-4890,-4891,-4889,-4887,-4884,-4880,-4875,-4870,-4864,-4856,-4847,-4838,-4828,-4818,-4809,-4800,-4793,-4785,-4777,-4769,
+-4760,-4749,-4737,-4724,-4711,-4697,-4683,-4670,-4657,-4644,-4633,-4621,-4608,-4595,-4581,-4567,-4554,-4541,-4531,-4521,-4512,
+-4502,-4492,-4481,-4470,-4460,-4452,-4444,-4437,-4430,-4420,-4408,-4393,-4377,-4361,-4345,-4332,-4319,-4308,-4296,-4283,-4271,
+-4259,-4249,-4241,-4236,-4231,-4226,-4217,-4206,-4192,-4177,-4162,-4151,-4143,-4138,-4134,-4129,-4121,-4110,-4096,-4080,-4063,
+-4047,-4033,-4020,-4009,-3999,-3990,-3982,-3974,-3965,-3957,-3946,-3934,-3921,-3908,-3894,-3882,-3871,-3860,-3850,-3840,-3830,
+-3820,-3811,-3802,-3795,-3790,-3785,-3781,-3776,-3770,-3763,-3755,-3747,-3740,-3732,-3725,-3717,-3709,-3701,-3693,-3687,-3682,
+-3678,-3675,-3671,-3666,-3661,-3656,-3651,-3648,-3646,-3645,-3643,-3640,-3636,-3630,-3623,-3616,-3610,-3605,-3601,-3598,-3594,
+-3589,-3585,-3581,-3578,-3576,-3575,-3574,-3572,-3569,-3563,-3556,-3549,-3542,-3537,-3533,-3529,-3525,-3519,-3510,-3499,-3486,
+-3474,-3462,-3452,-3445,-3438,-3433,-3428,-3424,-3419,-3414,-3409,-3403,-3396,-3388,-3378,-3367,-3355,-3342,-3329,-3316,-3303,
+-3292,-3281,-3272,-3264,-3257,-3251,-3246,-3240,-3234,-3225,-3216,-3205,-3194,-3183,-3172,-3163,-3155,-3146,-3138,-3129,-3119,
+-3109,-3100,-3092,-3084,-3078,-3071,-3064,-3056,-3047,-3037,-3026,-3016,-3006,-2997,-2989,-2982,-2975,-2968,-2960,-2952,-2943,
+-2934,-2925,-2917,-2909,-2900,-2890,-2877,-2861,-2842,-2820,-2797,-2775,-2755,-2738,-2726,-2716,-2710,-2704,-2699,-2692,-2685,
+-2677,-2667,-2657,-2647,-2636,-2626,-2616,-2607,-2599,-2592,-2586,-2581,-2576,-2572,-2568,-2563,-2559,-2556,-2552,-2549,-2545,
+-2541,-2536,-2530,-2523,-2516,-2509,-2502,-2495,-2487,-2478,-2467,-2456,-2442,-2428,-2413,-2398,-2383,-2369,-2355,-2343,-2330,
+-2318,-2306,-2293,-2279,-2265,-2251,-2237,-2224,-2213,-2201,-2190,-2179,-2167,-2154,-2140,-2127,-2115,-2104,-2096,-2088,-2081,
+-2073,-2064,-2053,-2040,-2026,-2012,-1998,-1986,-1973,-1961,-1948,-1934,-1917,-1897,-1876,-1853,-1829,-1805,-1781,-1759,-1739,
+-1721,-1704,-1689,-1674,-1658,-1642,-1623,-1605,-1585,-1566,-1548,-1532,-1517,-1504,-1491,-1478,-1464,-1450,-1435,-1418,-1400,
+-1380,-1359,-1336,-1313,-1290,-1269,-1251,-1237,-1226,-1218,-1211,-1202,-1192,-1179,-1162,-1142,-1121,-1099,-1078,-1058,-1040,
+-1024,-1009,-994,-977,-958,-935,-910,-883,-856,-830,-805,-783,-761,-738,-714,-689,-661,-631,-602,-573,-544,
+-516,-486,-456,-424,-392,-360,-331,-303,-276,-249,-220,-187,-150,-109,-68,-26,12,50,85,120,155,
+191,226,261,292,320,345,367,389,412,438,468,501,535,571,606,641,676,711,746,780,815,
+849,883,917,952,990,1029,1070,1111,1151,1189,1224,1255,1285,1315,1347,1381,1417,1453,1486,1514,1533,
+1542,1541,1530,1514,1494,1473,1454,1439,1427,1419,1416,1418,1426,1442,1468,1506,1557,1619,1692,1772,1854,
+1933,2005,2066,2114,2149,2174,2190,2201,2210,2217,2223,2228,2231,2232,2233,2234,2238,2247,2260,2275,2289,
+2298,2298,2285,2262,2229,2193,2156,2124,2099,2078,2062,2047,2032,2018,2008,2003,2007,2016,2028,2038,2039,
+2029,2009,1984,1963,1954,1963,1990,2033,2085,2137,2182,2217,2241,2257,2267,2275,2280,2281,2276,2266,2250,
+2231,2212,2194,2179,2163,2142,2114,2076,2030,1982,1937,1899,1874,1861,1858,1864,1875,1889,1906,1924,1944,
+1964,1983,1998,2008,2014,2016,2019,2024,2031,2038,2043,2040,2028,2007,1982,1958,1940,1932,1935,1944,1955,
+1962,1962,1956,1947,1939,1936,1940,1949,1960,1968,1970,1964,1952,1938,1924,1914,1907,1903,1900,1895,1888,
+1879,1869,1861,1855,1851,1848,1844,1837,1828,1818,1808,1800,1793,1788,1783,1777,1767,1753,1736,1717,1697,
+1679,1664,1654,1646,1643,1641,1639,1636,1630,1619,1603,1582,1557,1531,1506,1484,1465,1451,1441,1431,1422,
+1413,1404,1397,1391,1388,1386,1385,1382,1375,1365,1352,1337,1323,1312,1305,1301,1300,1299,1298,1295,1292,
+1289,1289,1292,1299,1309,1320,1328,1333,1333,1326,1316,1304,1292,1284,1281,1284,1291,1300,1309,1315,1317,
+1313,1306,1297,1288,1281,1277,1276,1277,1278,1278,1276,1274,1273,1273,1275,1280,1287,1294,1301,1305,1308,
+1310,1311,1315,1321,1330,1342,1356,1370,1360,1373,1384,1394,1404,1415,1426,1438,1450,1463,1476,1489,1503,
+1519,1536,1555,1575,1597,1621,1647,1674,1702,1729,1754,1778,1800,1820,1840,1860,1879,1899,1918,1935,1949,
+1960,1969,1978,1990,2006,2028,2054,2084,2115,2144,2171,2195,2215,2232,2248,2261,2273,2283,2292,2300,2308,
+2316,2325,2334,2343,2349,2352,2352,2349,2345,2341,2338,2338,2339,2343,2347,2352,2357,2363,2370,2376,2381,
+2382,2378,2368,2355,2340,2327,2319,2318,2324,2337,2353,2370,2384,2394,2399,2399,2395,2389,2382,2375,2370,
+2366,2366,2367,2371,2377,2384,2391,2398,2405,2412,2420,2430,2440,2452,2465,2477,2489,2500,2510,2521,2533,
+2545,2558,2571,2583,2592,2599,2603,2603,2602,2599,2596,2595,2595,2600,2610,2624,2644,2666,2690,2715,2737,
+2758,2777,2794,2812,2830,2849,2869,2888,2906,2922,2938,2954,2970,2988,3008,3029,3049,3067,3083,3096,3108,
+3118,3127,3137,3147,3157,3166,3172,3177,3179,3179,3178,3176,3173,3170,3167,3163,3158,3153,3149,3144,3139,
+3135,3130,3126,3122,3119,3116,3115,3114,3114,3113,3112,3108,3102,3093,3083,3071,3061,3052,3046,3042,3040,
+3037,3033,3028,3021,3014,3008,3004,3003,3005,3007,3010,3012,3014,3017,3023,3031,3042,3054,3067,3078,3086,
+3090,3093,3095,3096,3099,3101,3102,3101,3097,3090,3082,3075,3069,3066,3065,3063,3059,3053,3044,3035,3025,
+3017,3011,3007,3004,2999,2994,2986,2976,2966,2955,2944,2931,2917,2900,2881,2860,2840,2821,2805,2792,2782,
+2775,2770,2766,2762,2758,2753,2746,2738,2729,2718,2708,2697,2686,2676,2666,2655,2642,2627,2613,2598,2585,
+2574,2563,2553,2541,2528,2512,2495,2479,2466,2456,2448,2442,2434,2423,2406,2385,2360,2334,2308,2282,2258,
+2234,2210,2185,2161,2138,2118,2101,2088,2078,2071,2066,2062,2059,2058,2058,2058,2056,2051,2039,2021,1995,
+1964,1929,1894,1859,1825,1791,1756,1718,1675,1629,1580,1529,1479,1432,1387,1346,1307,1270,1234,1200,1166,
+1134,1101,1068,1034,999,961,922,882,843,805,768,732,697,660,623,582,539,494,447,399,351,
+304,258,214,174,139,107,79,53,27,0,-30,-63,-96,-127,-154,-177,-195,-210,-225,-242,-263,
+-289,-321,-358,-397,-438,-479,-520,-560,-598,-633,-665,-694,-721,-745,-769,-792,-814,-834,-853,-868,-881,
+-891,-901,-912,-924,-940,-957,-977,-999,-1024,-1052,-1085,-1123,-1166,-1212,-1258,-1300,-1336,-1364,-1385,-1401,-1415,
+-1431,-1450,-1475,-1505,-1539,-1575,-1613,-1652,-1690,-1728,-1766,-1805,-1843,-1881,-1920,-1958,-1997,-2035,-2073,-2109,-2144,
+-2176,-2206,-2234,-2261,-2286,-2310,-2334,-2358,-2383,-2408,-2434,-2461,-2489,-2518,-2548,-2578,-2607,-2636,-2663,-2689,-2715,
+-2740,-2765,-2790,-2815,-2840,-2864,-2888,-2911,-2934,-2955,-2976,-2996,-3016,-3036,-3056,-3077,-3100,-3124,-3148,-3173,-3197,
+-3218,-3236,-3251,-3262,-3270,-3276,-3282,-3289,-3300,-3314,-3333,-3356,-3380,-3403,-3424,-3442,-3455,-3465,-3474,-3483,-3494,
+-3508,-3524,-3542,-3561,-3579,-3597,-3612,-3626,-3638,-3649,-3659,-3668,-3677,-3686,-3696,-3707,-3720,-3734,-3748,-3760,-3770,
+-3776,-3780,-3783,-3786,-3791,-3800,-3812,-3828,-3846,-3864,-3882,-3899,-3915,-3933,-3951,-3969,-3987,-4004,-4017,-4024,-4024,
+-4014,-3996,-3971,-3940,-3908,-3877,-3850,-3829,-3815,-3805,-3799,-3795,-3789,-3782,-3773,-3764,-3756,-3751,-3747,-3747,-3747,
+-3748,-3748,-3747,-3744,-3740,-3736,-3733,-3729,-3724,-3718,-3711,-3702,-3693,-3685,-3680,-3678,-3679,-3681,-3682,-3682,-3678,
+-3671,-3660,-3647,-3630,-3611,-3591,-3568,-3544,-3521,-3500,-3484,-3476,-3477,-3486,-3503,-3524,-3547,-3566,-3579,-3585,-3582,
+-3573,-3560,-3547,-3536,-3531,-3532,-3539,-3551,-3566,-3583,-3598,-3611,-3623,-3635,-3648,-3663,-3681,-3700,-3719,-3738,-3755,
+-3771,-3786,-3800,-3816,-3834,-3854,-3875,-3897,-3918,-3936,-3953,-3967,-3980,-3991,-4002,-4014,-4027,-4042,-4059,-4080,-4103,
+-4129,-4154,-4178,-4199,-4216,-4230,-4243,-4256,-4274,-4299,-4331,-4371,-4416,-4466,-4516,-4564,-4610,-4653,-4692,-4728,-4760,
+-4789,-4813,-4833,-4847,-4856,-4861,-4862,-4862,-4863,-4866,-4873,-4882,-4892,-4901,-4908,-4911,-4909,-4905,-4900,-4898,-4900,
+-4908,-4920,-4935,-4949,-4959,-4963,-4961,-4953,-4943,-4931,-4921,-4914,-4910,-4908,-4908,-4908,-4907,-4906,-4903,-4899,-4894,
+-4889,-4883,-4876,-4868,-4860,-4852,-4844,-4837,-4830,-4823,-4816,-4808,-4800,-4790,-4779,-4767,-4753,-4739,-4724,-4709,-4694,
+-4681,-4668,-4657,-4645,-4634,-4622,-4609,-4596,-4583,-4571,-4561,-4551,-4541,-4531,-4520,-4509,-4497,-4486,-4477,-4470,-4463,
+-4456,-4448,-4437,-4425,-4412,-4398,-4385,-4373,-4362,-4351,-4340,-4327,-4314,-4302,-4290,-4280,-4272,-4264,-4256,-4247,-4236,
+-4223,-4210,-4199,-4189,-4183,-4178,-4174,-4168,-4161,-4152,-4140,-4127,-4114,-4100,-4087,-4074,-4062,-4050,-4040,-4030,-4021,
+-4013,-4004,-3994,-3983,-3971,-3959,-3948,-3938,-3929,-3921,-3914,-3906,-3897,-3887,-3877,-3867,-3859,-3852,-3846,-3841,-3836,
+-3832,-3826,-3820,-3813,-3806,-3798,-3790,-3780,-3770,-3760,-3752,-3745,-3740,-3737,-3736,-3734,-3731,-3727,-3722,-3716,-3712,
+-3709,-3707,-3706,-3704,-3702,-3698,-3693,-3687,-3681,-3675,-3669,-3664,-3658,-3652,-3645,-3638,-3632,-3628,-3625,-3622,-3619,
+-3615,-3611,-3605,-3599,-3593,-3590,-3587,-3585,-3583,-3580,-3574,-3565,-3555,-3544,-3533,-3523,-3516,-3509,-3504,-3499,-3494,
+-3488,-3483,-3477,-3470,-3463,-3456,-3447,-3437,-3425,-3413,-3401,-3389,-3378,-3368,-3358,-3350,-3342,-3335,-3327,-3319,-3310,
+-3299,-3288,-3276,-3264,-3253,-3243,-3236,-3230,-3225,-3220,-3214,-3206,-3197,-3185,-3174,-3162,-3152,-3143,-3135,-3127,-3119,
+-3110,-3100,-3089,-3078,-3067,-3056,-3045,-3033,-3021,-3007,-2992,-2976,-2961,-2948,-2938,-2931,-2928,-2926,-2924,-2919,-2911,
+-2897,-2879,-2858,-2835,-2813,-2793,-2776,-2763,-2753,-2745,-2737,-2730,-2723,-2714,-2704,-2694,-2682,-2671,-2660,-2649,-2640,
+-2631,-2624,-2619,-2613,-2608,-2603,-2598,-2593,-2588,-2584,-2579,-2574,-2568,-2562,-2555,-2548,-2541,-2534,-2527,-2520,-2513,
+-2505,-2496,-2485,-2474,-2461,-2449,-2436,-2424,-2411,-2399,-2387,-2374,-2361,-2348,-2335,-2321,-2307,-2294,-2281,-2268,-2256,
+-2243,-2231,-2219,-2206,-2193,-2180,-2167,-2156,-2146,-2138,-2131,-2124,-2117,-2107,-2095,-2081,-2065,-2048,-2032,-2017,-2004,
+-1991,-1979,-1966,-1952,-1935,-1915,-1894,-1871,-1847,-1823,-1799,-1777,-1755,-1736,-1718,-1701,-1687,-1673,-1659,-1645,-1630,
+-1614,-1598,-1581,-1565,-1548,-1533,-1517,-1503,-1488,-1474,-1458,-1441,-1423,-1402,-1380,-1355,-1330,-1305,-1281,-1260,-1242,
+-1227,-1215,-1205,-1195,-1185,-1174,-1163,-1149,-1135,-1119,-1102,-1084,-1066,-1047,-1028,-1009,-989,-969,-947,-925,-901,
+-877,-852,-826,-800,-773,-746,-717,-686,-656,-625,-595,-567,-539,-513,-486,-460,-433,-405,-378,-350,-322,
+-293,-261,-226,-188,-146,-103,-60,-18,19,55,89,122,155,188,222,255,287,316,342,367,391,
+416,442,469,497,527,556,587,618,651,685,720,756,791,826,861,896,931,969,1009,1050,1092,
+1133,1171,1206,1239,1271,1303,1338,1375,1413,1449,1479,1499,1505,1497,1475,1443,1405,1367,1335,1313,1304,
+1310,1330,1364,1408,1462,1523,1591,1664,1741,1820,1900,1977,2046,2104,2149,2179,2197,2205,2208,2210,2215,
+2225,2239,2255,2271,2283,2292,2297,2300,2303,2306,2311,2313,2310,2297,2273,2238,2193,2145,2100,2064,2040,
+2027,2024,2025,2026,2024,2019,2013,2009,2009,2014,2022,2029,2031,2025,2011,1992,1974,1962,1961,1972,1993,
+2020,2049,2074,2095,2111,2125,2139,2152,2164,2174,2178,2176,2167,2152,2134,2114,2093,2070,2043,2011,1975,
+1936,1898,1865,1841,1828,1825,1829,1839,1852,1867,1883,1900,1916,1931,1942,1947,1945,1936,1922,1907,1895,
+1886,1882,1879,1878,1874,1870,1866,1865,1870,1880,1895,1910,1920,1922,1915,1901,1885,1871,1864,1865,1871,
+1880,1887,1888,1882,1871,1857,1845,1835,1830,1828,1826,1822,1815,1806,1795,1783,1773,1765,1760,1755,1752,
+1748,1745,1741,1736,1731,1724,1714,1700,1683,1663,1641,1619,1600,1584,1572,1564,1561,1559,1560,1561,1560,
+1556,1548,1535,1517,1494,1469,1443,1419,1396,1376,1359,1343,1328,1315,1304,1295,1291,1289,1290,1291,1292,
+1289,1284,1277,1271,1267,1267,1271,1277,1282,1284,1280,1270,1255,1238,1224,1215,1213,1219,1231,1245,1258,
+1268,1271,1268,1261,1251,1243,1238,1237,1241,1247,1255,1261,1264,1265,1263,1260,1257,1256,1255,1255,1254,
+1252,1248,1244,1239,1237,1238,1242,1250,1259,1267,1274,1278,1281,1284,1288,1295,1305,1317,1332,1346,1360,
+1355,1366,1377,1388,1401,1415,1429,1443,1456,1468,1480,1492,1506,1522,1541,1563,1586,1610,1635,1660,1685,
+1711,1736,1759,1780,1800,1817,1833,1848,1864,1880,1897,1913,1929,1943,1956,1970,1986,2005,2027,2052,2078,
+2103,2125,2144,2159,2173,2185,2198,2211,2225,2238,2250,2261,2270,2278,2286,2293,2299,2303,2305,2305,2303,
+2300,2298,2297,2299,2303,2310,2317,2324,2331,2335,2338,2337,2333,2326,2316,2303,2290,2279,2273,2273,2281,
+2294,2310,2326,2340,2349,2353,2352,2348,2342,2336,2331,2327,2325,2323,2322,2323,2325,2329,2336,2345,2355,
+2366,2377,2387,2396,2405,2413,2421,2430,2439,2449,2460,2473,2487,2502,2517,2531,2543,2552,2558,2561,2560,
+2556,2551,2546,2543,2544,2551,2564,2583,2607,2634,2662,2689,2712,2732,2749,2765,2780,2796,2814,2833,2851,
+2869,2886,2902,2918,2934,2952,2972,2993,3013,3032,3047,3060,3069,3077,3084,3092,3101,3111,3122,3132,3140,
+3146,3149,3149,3146,3143,3138,3134,3130,3126,3124,3122,3120,3119,3117,3115,3112,3109,3105,3101,3098,3094,
+3092,3089,3085,3079,3072,3062,3050,3038,3028,3019,3013,3009,3007,3005,3002,2997,2991,2985,2981,2978,2977,
+2979,2981,2983,2984,2985,2987,2991,2998,3009,3022,3036,3049,3060,3067,3072,3077,3081,3085,3089,3092,3092,
+3090,3085,3078,3071,3065,3060,3057,3054,3050,3044,3037,3028,3019,3010,3003,2997,2991,2986,2981,2975,2968,
+2960,2952,2942,2930,2915,2898,2879,2858,2837,2817,2799,2783,2769,2757,2747,2739,2732,2725,2718,2710,2701,
+2690,2679,2666,2655,2643,2633,2623,2613,2601,2589,2577,2564,2553,2543,2535,2526,2516,2505,2492,2478,2466,
+2455,2446,2439,2432,2422,2409,2390,2366,2341,2314,2288,2263,2240,2217,2192,2166,2139,2112,2086,2063,2043,
+2026,2012,2000,1989,1981,1975,1971,1970,1969,1966,1960,1948,1929,1904,1874,1843,1812,1783,1755,1727,1697,
+1664,1627,1586,1542,1496,1449,1403,1359,1315,1274,1234,1195,1158,1122,1086,1051,1015,978,939,900,861,
+822,785,749,715,680,645,608,570,530,488,445,401,358,316,276,240,206,177,149,123,95,
+63,28,-10,-50,-89,-125,-153,-175,-192,-206,-222,-241,-266,-297,-333,-371,-411,-450,-488,-526,-565,
+-603,-641,-678,-714,-747,-777,-805,-831,-854,-875,-893,-907,-918,-927,-936,-945,-957,-972,-991,-1012,-1037,
+-1063,-1092,-1122,-1156,-1192,-1230,-1268,-1305,-1338,-1367,-1391,-1412,-1431,-1451,-1474,-1500,-1531,-1565,-1604,-1644,-1686,
+-1729,-1771,-1813,-1854,-1893,-1932,-1969,-2005,-2041,-2076,-2111,-2144,-2176,-2206,-2234,-2259,-2284,-2307,-2329,-2352,-2374,
+-2397,-2421,-2446,-2474,-2503,-2534,-2566,-2599,-2631,-2661,-2689,-2714,-2738,-2760,-2782,-2804,-2827,-2851,-2875,-2900,-2926,
+-2951,-2977,-3001,-3025,-3048,-3069,-3090,-3110,-3131,-3151,-3172,-3193,-3215,-3236,-3255,-3272,-3286,-3296,-3304,-3310,-3316,
+-3325,-3336,-3352,-3372,-3393,-3415,-3436,-3454,-3469,-3482,-3494,-3508,-3523,-3542,-3562,-3585,-3607,-3629,-3648,-3665,-3680,
+-3692,-3702,-3711,-3720,-3730,-3742,-3757,-3775,-3796,-3819,-3839,-3856,-3868,-3872,-3871,-3867,-3863,-3863,-3869,-3881,-3900,
+-3923,-3947,-3971,-3992,-4010,-4026,-4041,-4054,-4067,-4078,-4085,-4088,-4085,-4074,-4056,-4033,-4006,-3977,-3950,-3926,-3906,
+-3892,-3882,-3875,-3869,-3863,-3855,-3846,-3836,-3827,-3820,-3815,-3813,-3813,-3814,-3816,-3816,-3816,-3815,-3813,-3810,-3806,
+-3801,-3795,-3788,-3779,-3771,-3763,-3757,-3753,-3752,-3752,-3752,-3752,-3749,-3745,-3737,-3727,-3715,-3699,-3681,-3660,-3637,
+-3612,-3588,-3567,-3551,-3543,-3545,-3555,-3574,-3596,-3620,-3640,-3652,-3656,-3651,-3637,-3620,-3603,-3591,-3585,-3589,-3600,
+-3617,-3636,-3655,-3673,-3687,-3700,-3713,-3726,-3742,-3760,-3780,-3801,-3821,-3839,-3855,-3871,-3887,-3903,-3921,-3939,-3958,
+-3977,-3995,-4012,-4027,-4042,-4055,-4068,-4081,-4093,-4106,-4119,-4135,-4152,-4171,-4192,-4213,-4232,-4249,-4262,-4273,-4283,
+-4294,-4307,-4325,-4349,-4379,-4413,-4450,-4490,-4529,-4569,-4609,-4649,-4690,-4731,-4771,-4809,-4842,-4869,-4889,-4900,-4905,
+-4906,-4905,-4907,-4912,-4920,-4931,-4941,-4949,-4951,-4948,-4941,-4932,-4924,-4921,-4923,-4930,-4940,-4951,-4959,-4964,-4965,
+-4962,-4956,-4949,-4943,-4938,-4934,-4931,-4929,-4926,-4922,-4917,-4912,-4905,-4898,-4891,-4884,-4878,-4872,-4867,-4863,-4858,
+-4854,-4849,-4843,-4836,-4828,-4819,-4809,-4798,-4786,-4773,-4759,-4745,-4730,-4716,-4703,-4690,-4678,-4665,-4653,-4642,-4630,
+-4620,-4610,-4601,-4592,-4582,-4571,-4559,-4546,-4533,-4521,-4511,-4503,-4495,-4488,-4480,-4470,-4459,-4446,-4434,-4423,-4413,
+-4404,-4395,-4385,-4374,-4361,-4348,-4334,-4322,-4310,-4301,-4292,-4284,-4276,-4267,-4259,-4250,-4243,-4235,-4227,-4220,-4211,
+-4203,-4194,-4186,-4177,-4168,-4159,-4148,-4135,-4121,-4107,-4092,-4080,-4069,-4060,-4052,-4044,-4036,-4027,-4017,-4008,-3999,
+-3992,-3986,-3980,-3974,-3967,-3959,-3950,-3941,-3932,-3924,-3917,-3910,-3903,-3895,-3888,-3881,-3874,-3867,-3861,-3854,-3847,
+-3839,-3830,-3821,-3814,-3809,-3806,-3804,-3802,-3799,-3794,-3789,-3782,-3776,-3771,-3767,-3765,-3764,-3762,-3759,-3755,-3749,
+-3743,-3737,-3730,-3724,-3717,-3710,-3703,-3696,-3689,-3684,-3679,-3676,-3672,-3668,-3663,-3658,-3652,-3647,-3643,-3641,-3638,
+-3636,-3632,-3627,-3620,-3612,-3603,-3594,-3587,-3581,-3576,-3571,-3566,-3561,-3555,-3549,-3543,-3536,-3530,-3522,-3513,-3502,
+-3490,-3477,-3465,-3453,-3444,-3435,-3428,-3422,-3415,-3407,-3398,-3387,-3376,-3365,-3353,-3341,-3330,-3320,-3311,-3302,-3295,
+-3288,-3281,-3273,-3264,-3255,-3245,-3234,-3224,-3214,-3204,-3195,-3185,-3175,-3164,-3152,-3141,-3129,-3118,-3107,-3096,-3084,
+-3070,-3054,-3036,-3017,-2997,-2979,-2964,-2953,-2947,-2943,-2942,-2941,-2937,-2931,-2920,-2906,-2890,-2871,-2853,-2836,-2820,
+-2805,-2792,-2780,-2770,-2759,-2749,-2739,-2728,-2717,-2707,-2696,-2686,-2678,-2670,-2662,-2656,-2650,-2643,-2637,-2631,-2625,
+-2619,-2613,-2606,-2599,-2591,-2583,-2574,-2566,-2558,-2551,-2544,-2537,-2529,-2520,-2510,-2500,-2489,-2479,-2469,-2460,-2451,
+-2441,-2430,-2417,-2403,-2388,-2373,-2358,-2345,-2332,-2319,-2307,-2296,-2284,-2272,-2259,-2247,-2235,-2223,-2212,-2201,-2191,
+-2181,-2172,-2163,-2153,-2143,-2131,-2118,-2103,-2088,-2072,-2057,-2042,-2028,-2013,-1998,-1982,-1965,-1947,-1928,-1909,-1889,
+-1869,-1849,-1828,-1806,-1784,-1762,-1741,-1722,-1706,-1692,-1680,-1668,-1657,-1644,-1629,-1612,-1594,-1575,-1557,-1539,-1523,
+-1507,-1492,-1476,-1459,-1439,-1418,-1394,-1369,-1343,-1318,-1295,-1274,-1255,-1239,-1224,-1211,-1199,-1187,-1176,-1166,-1155,
+-1145,-1133,-1119,-1103,-1085,-1065,-1044,-1023,-1003,-983,-963,-942,-921,-898,-872,-844,-815,-784,-752,-720,-688,
+-657,-626,-597,-569,-541,-515,-489,-464,-439,-415,-391,-365,-338,-308,-274,-236,-194,-151,-106,-62,-21,
+17,53,86,119,151,183,214,244,273,301,329,356,384,412,439,466,491,515,539,563,590,
+621,655,691,729,767,803,837,871,904,940,978,1018,1059,1100,1140,1178,1214,1250,1286,1324,1363,
+1402,1435,1460,1473,1471,1455,1425,1387,1346,1310,1284,1273,1281,1308,1354,1415,1489,1570,1654,1738,1819,
+1895,1963,2024,2076,2118,2149,2169,2181,2185,2187,2188,2194,2207,2227,2253,2282,2311,2336,2355,2368,2375,
+2377,2374,2368,2355,2335,2305,2264,2216,2163,2112,2068,2036,2019,2014,2019,2028,2034,2036,2031,2022,2011,
+2002,1997,1996,1998,1999,1997,1992,1984,1975,1968,1964,1964,1967,1973,1978,1983,1988,1993,2000,2010,2021,
+2033,2042,2046,2045,2039,2029,2019,2008,1997,1985,1969,1947,1921,1892,1863,1839,1823,1817,1819,1829,1841,
+1855,1867,1878,1886,1891,1893,1891,1884,1870,1852,1830,1808,1788,1774,1767,1765,1768,1775,1784,1795,1808,
+1823,1838,1852,1863,1867,1864,1855,1842,1828,1817,1812,1811,1814,1817,1818,1816,1809,1801,1792,1785,1782,
+1781,1781,1780,1775,1766,1753,1738,1722,1707,1694,1684,1675,1668,1662,1656,1650,1643,1635,1624,1610,1593,
+1575,1557,1539,1524,1513,1504,1498,1493,1488,1483,1479,1475,1471,1468,1464,1458,1450,1437,1420,1400,1376,
+1351,1324,1298,1274,1252,1234,1220,1212,1209,1210,1213,1216,1217,1216,1212,1207,1204,1205,1211,1221,1232,
+1242,1246,1242,1230,1211,1188,1167,1150,1142,1143,1153,1167,1184,1199,1210,1214,1214,1210,1205,1200,1199,
+1200,1203,1207,1211,1214,1215,1216,1217,1218,1220,1223,1224,1225,1223,1219,1214,1210,1208,1210,1215,1223,
+1232,1241,1248,1253,1259,1265,1273,1284,1298,1313,1328,1342,1355,1354,1365,1376,1387,1400,1415,1429,1443,
+1455,1466,1477,1489,1505,1523,1545,1568,1593,1617,1641,1663,1684,1704,1723,1742,1759,1774,1788,1801,1814,
+1827,1843,1861,1880,1900,1919,1938,1956,1974,1992,2012,2032,2052,2071,2088,2103,2117,2129,2142,2156,2170,
+2185,2198,2210,2219,2226,2233,2238,2244,2249,2253,2256,2257,2256,2255,2254,2255,2259,2265,2274,2282,2289,
+2292,2292,2289,2282,2272,2261,2249,2239,2231,2227,2229,2236,2247,2261,2276,2288,2296,2299,2299,2296,2292,
+2290,2288,2288,2289,2289,2289,2287,2286,2286,2290,2296,2307,2319,2333,2346,2357,2367,2374,2380,2385,2392,
+2399,2409,2419,2432,2445,2459,2473,2486,2497,2506,2511,2513,2511,2506,2500,2494,2491,2494,2503,2519,2541,
+2568,2597,2626,2653,2676,2696,2713,2729,2745,2761,2779,2798,2817,2834,2850,2865,2879,2893,2909,2927,2946,
+2965,2984,3001,3015,3026,3035,3043,3050,3059,3069,3079,3089,3099,3106,3110,3112,3110,3107,3102,3098,3093,
+3090,3088,3088,3088,3090,3092,3094,3095,3096,3095,3093,3090,3085,3078,3070,3060,3049,3035,3021,3007,2994,
+2983,2975,2970,2967,2966,2966,2965,2962,2959,2956,2953,2951,2949,2949,2948,2948,2947,2946,2948,2952,2960,
+2971,2985,2999,3014,3026,3035,3043,3049,3055,3061,3067,3072,3075,3075,3074,3070,3065,3060,3056,3051,3047,
+3042,3036,3029,3020,3010,3001,2991,2983,2976,2969,2964,2958,2952,2946,2937,2926,2912,2896,2879,2860,2841,
+2823,2806,2790,2774,2759,2745,2731,2718,2706,2695,2686,2676,2667,2657,2646,2635,2624,2613,2603,2593,2583,
+2571,2558,2545,2532,2521,2511,2503,2496,2489,2481,2473,2463,2453,2445,2437,2430,2422,2411,2396,2377,2354,
+2329,2303,2279,2257,2236,2216,2194,2170,2144,2116,2087,2059,2032,2007,1983,1960,1938,1918,1901,1887,1878,
+1873,1870,1867,1861,1851,1835,1815,1791,1766,1740,1713,1686,1658,1626,1592,1554,1513,1471,1428,1386,1344,
+1305,1266,1228,1190,1153,1114,1076,1036,995,955,914,875,837,801,766,734,701,669,636,601,565,
+528,490,451,413,376,340,307,276,249,223,197,169,137,100,57,12,-33,-74,-109,-135,-153,
+-166,-179,-196,-220,-251,-288,-329,-371,-411,-448,-484,-518,-553,-590,-628,-667,-705,-741,-774,-804,-832,
+-858,-881,-902,-920,-936,-949,-960,-973,-988,-1006,-1029,-1056,-1085,-1115,-1144,-1173,-1200,-1227,-1254,-1281,-1309,
+-1337,-1365,-1393,-1419,-1446,-1473,-1501,-1532,-1566,-1602,-1642,-1685,-1729,-1774,-1818,-1861,-1902,-1941,-1977,-2011,-2044,
+-2076,-2108,-2139,-2169,-2198,-2225,-2249,-2272,-2293,-2313,-2332,-2351,-2372,-2394,-2417,-2443,-2470,-2500,-2531,-2564,-2596,
+-2628,-2659,-2687,-2713,-2738,-2762,-2785,-2809,-2833,-2857,-2883,-2909,-2936,-2964,-2992,-3021,-3049,-3077,-3102,-3126,-3146,
+-3164,-3180,-3195,-3210,-3225,-3242,-3259,-3276,-3292,-3306,-3317,-3326,-3334,-3342,-3353,-3367,-3384,-3404,-3426,-3448,-3469,
+-3488,-3506,-3524,-3543,-3564,-3588,-3612,-3638,-3663,-3687,-3708,-3727,-3742,-3755,-3766,-3775,-3785,-3797,-3811,-3830,-3854,
+-3880,-3908,-3934,-3955,-3968,-3973,-3970,-3963,-3955,-3951,-3952,-3961,-3976,-3997,-4019,-4040,-4059,-4075,-4086,-4095,-4102,
+-4106,-4109,-4109,-4107,-4101,-4093,-4082,-4069,-4054,-4039,-4024,-4009,-3994,-3981,-3968,-3957,-3946,-3937,-3928,-3919,-3911,
+-3903,-3896,-3891,-3886,-3884,-3882,-3882,-3883,-3884,-3884,-3884,-3882,-3879,-3874,-3868,-3860,-3852,-3844,-3837,-3832,-3828,
+-3825,-3823,-3821,-3819,-3816,-3811,-3806,-3800,-3792,-3783,-3771,-3757,-3740,-3719,-3697,-3674,-3654,-3639,-3632,-3633,-3643,
+-3660,-3681,-3702,-3718,-3727,-3726,-3717,-3701,-3683,-3667,-3657,-3656,-3663,-3677,-3695,-3715,-3733,-3749,-3762,-3774,-3786,
+-3800,-3817,-3836,-3856,-3876,-3896,-3914,-3932,-3948,-3964,-3980,-3997,-4013,-4029,-4045,-4062,-4078,-4096,-4114,-4132,-4150,
+-4166,-4181,-4195,-4207,-4218,-4229,-4240,-4253,-4266,-4280,-4294,-4308,-4322,-4336,-4350,-4365,-4381,-4399,-4418,-4438,-4460,
+-4484,-4510,-4539,-4571,-4608,-4649,-4694,-4741,-4787,-4828,-4863,-4887,-4902,-4909,-4910,-4911,-4913,-4921,-4933,-4948,-4965,
+-4978,-4985,-4986,-4981,-4972,-4962,-4953,-4949,-4948,-4952,-4958,-4964,-4969,-4972,-4972,-4971,-4968,-4964,-4960,-4955,-4951,
+-4946,-4941,-4934,-4927,-4919,-4910,-4902,-4894,-4888,-4883,-4879,-4876,-4873,-4870,-4867,-4862,-4856,-4850,-4843,-4836,-4828,
+-4819,-4809,-4798,-4785,-4772,-4758,-4743,-4729,-4714,-4700,-4687,-4675,-4664,-4655,-4647,-4639,-4631,-4621,-4610,-4598,-4585,
+-4572,-4560,-4550,-4542,-4535,-4527,-4518,-4508,-4495,-4482,-4470,-4458,-4448,-4440,-4432,-4424,-4414,-4403,-4390,-4376,-4363,
+-4351,-4341,-4333,-4327,-4322,-4318,-4313,-4307,-4301,-4292,-4282,-4271,-4260,-4250,-4242,-4236,-4232,-4227,-4221,-4213,-4201,
+-4186,-4170,-4153,-4138,-4126,-4117,-4110,-4104,-4098,-4091,-4083,-4075,-4066,-4058,-4051,-4045,-4038,-4032,-4025,-4018,-4011,
+-4004,-3997,-3990,-3981,-3971,-3960,-3949,-3938,-3929,-3923,-3918,-3915,-3912,-3908,-3903,-3898,-3892,-3887,-3882,-3878,-3874,
+-3869,-3864,-3857,-3849,-3841,-3835,-3829,-3825,-3822,-3819,-3815,-3809,-3803,-3795,-3788,-3779,-3772,-3765,-3758,-3752,-3746,
+-3741,-3737,-3734,-3730,-3727,-3723,-3719,-3714,-3709,-3705,-3702,-3699,-3696,-3693,-3689,-3683,-3676,-3668,-3661,-3653,-3647,
+-3640,-3635,-3629,-3623,-3617,-3611,-3606,-3601,-3596,-3591,-3584,-3576,-3564,-3551,-3538,-3524,-3513,-3503,-3496,-3489,-3483,
+-3476,-3467,-3457,-3446,-3436,-3425,-3416,-3408,-3400,-3391,-3382,-3370,-3358,-3345,-3332,-3320,-3309,-3300,-3291,-3283,-3275,
+-3266,-3256,-3246,-3234,-3222,-3209,-3196,-3183,-3170,-3159,-3148,-3136,-3125,-3112,-3097,-3080,-3062,-3042,-3022,-3003,-2987,
+-2974,-2965,-2959,-2955,-2953,-2950,-2947,-2941,-2933,-2921,-2908,-2893,-2876,-2859,-2843,-2827,-2812,-2799,-2786,-2775,-2764,
+-2754,-2745,-2736,-2728,-2720,-2713,-2706,-2699,-2692,-2685,-2677,-2669,-2662,-2653,-2645,-2635,-2625,-2615,-2605,-2595,-2586,
+-2579,-2572,-2566,-2559,-2551,-2542,-2532,-2521,-2511,-2502,-2493,-2484,-2475,-2465,-2452,-2438,-2422,-2406,-2390,-2376,-2364,
+-2353,-2342,-2331,-2320,-2308,-2296,-2284,-2272,-2261,-2252,-2242,-2233,-2223,-2212,-2200,-2187,-2174,-2162,-2149,-2137,-2125,
+-2113,-2101,-2088,-2073,-2057,-2039,-2020,-2001,-1980,-1961,-1943,-1927,-1911,-1896,-1880,-1862,-1841,-1819,-1796,-1773,-1752,
+-1734,-1720,-1707,-1696,-1685,-1671,-1654,-1635,-1614,-1592,-1572,-1553,-1537,-1522,-1507,-1491,-1474,-1453,-1429,-1403,-1376,
+-1350,-1326,-1305,-1287,-1271,-1256,-1242,-1227,-1213,-1199,-1186,-1175,-1164,-1154,-1144,-1132,-1118,-1101,-1083,-1063,-1043,
+-1023,-1003,-984,-963,-941,-916,-887,-856,-823,-790,-756,-724,-694,-665,-638,-611,-583,-556,-529,-502,-476,
+-451,-428,-404,-379,-353,-323,-289,-251,-210,-168,-125,-83,-42,-3,34,71,107,141,173,203,231,
+257,282,308,334,362,391,420,447,472,496,518,542,568,598,633,670,709,746,781,813,844,
+874,906,941,979,1019,1061,1103,1144,1184,1223,1262,1302,1341,1377,1407,1430,1442,1443,1434,1417,1396,
+1375,1360,1353,1358,1379,1415,1466,1530,1605,1685,1766,1843,1912,1972,2020,2057,2086,2108,2126,2141,2155,
+2170,2186,2203,2224,2247,2273,2300,2328,2354,2376,2393,2403,2406,2402,2392,2376,2354,2327,2293,2255,2214,
+2172,2134,2102,2078,2062,2054,2051,2050,2047,2040,2030,2017,2003,1990,1979,1971,1965,1960,1956,1951,1947,
+1943,1941,1939,1938,1936,1932,1928,1923,1920,1920,1923,1929,1937,1943,1945,1943,1935,1925,1914,1907,1904,
+1904,1904,1903,1896,1882,1863,1842,1823,1810,1806,1810,1822,1838,1853,1864,1870,1870,1865,1855,1841,1825,
+1807,1789,1771,1756,1744,1737,1735,1737,1743,1751,1759,1768,1775,1781,1785,1787,1786,1782,1776,1770,1763,
+1759,1757,1757,1758,1758,1757,1753,1748,1742,1738,1735,1736,1738,1740,1740,1736,1728,1717,1702,1687,1672,
+1657,1644,1631,1619,1606,1593,1580,1567,1555,1542,1529,1515,1501,1487,1474,1463,1456,1450,1446,1441,1434,
+1425,1413,1401,1390,1381,1375,1374,1374,1373,1371,1364,1352,1333,1310,1284,1256,1229,1206,1189,1177,1171,
+1171,1174,1178,1180,1179,1173,1165,1156,1149,1145,1147,1153,1161,1170,1175,1174,1167,1153,1136,1118,1103,
+1094,1093,1099,1111,1126,1143,1157,1168,1175,1178,1178,1178,1177,1177,1178,1178,1179,1179,1178,1178,1178,
+1180,1183,1186,1189,1191,1191,1189,1187,1185,1186,1189,1195,1203,1212,1220,1227,1234,1241,1251,1263,1278,
+1294,1312,1328,1342,1354,1350,1360,1371,1381,1394,1407,1420,1433,1446,1458,1471,1486,1503,1525,1549,1574,
+1600,1623,1645,1664,1682,1698,1713,1728,1742,1753,1764,1773,1782,1793,1806,1822,1842,1863,1884,1905,1925,
+1943,1960,1977,1994,2011,2028,2045,2062,2078,2094,2110,2125,2138,2151,2161,2169,2175,2180,2186,2192,2199,
+2206,2213,2217,2219,2219,2218,2218,2219,2223,2229,2235,2240,2242,2241,2235,2226,2215,2204,2194,2186,2180,
+2179,2181,2187,2195,2206,2217,2228,2236,2241,2243,2243,2243,2243,2244,2248,2252,2255,2257,2256,2254,2252,
+2252,2254,2261,2271,2284,2297,2309,2319,2327,2334,2339,2345,2352,2360,2370,2380,2392,2403,2414,2426,2437,
+2447,2456,2461,2464,2462,2458,2453,2448,2446,2450,2460,2476,2498,2524,2551,2578,2603,2626,2647,2667,2685,
+2704,2723,2743,2762,2780,2798,2813,2827,2839,2851,2864,2878,2893,2910,2927,2945,2962,2977,2991,3004,3015,
+3025,3035,3044,3053,3060,3066,3069,3070,3069,3066,3062,3058,3053,3049,3047,3046,3047,3049,3053,3059,3065,
+3071,3076,3079,3077,3072,3062,3048,3030,3011,2991,2971,2955,2941,2931,2924,2920,2919,2919,2920,2920,2920,
+2920,2919,2917,2915,2914,2912,2910,2909,2908,2909,2913,2919,2928,2940,2953,2966,2978,2989,2998,3006,3013,
+3020,3027,3034,3040,3045,3049,3051,3050,3049,3046,3043,3038,3033,3026,3018,3008,2998,2987,2976,2966,2957,
+2950,2944,2939,2935,2929,2922,2911,2897,2880,2861,2842,2823,2807,2793,2781,2770,2758,2745,2731,2716,2701,
+2687,2675,2664,2655,2647,2637,2627,2617,2606,2595,2584,2574,2562,2550,2536,2522,2508,2495,2484,2475,2468,
+2461,2455,2447,2438,2428,2419,2411,2404,2396,2387,2375,2359,2340,2318,2296,2274,2253,2234,2216,2197,2175,
+2151,2124,2095,2065,2034,2003,1971,1939,1907,1876,1847,1822,1802,1789,1781,1778,1776,1773,1767,1756,1740,
+1719,1695,1666,1634,1600,1563,1524,1483,1443,1404,1367,1332,1301,1271,1243,1214,1183,1150,1113,1074,1033,
+990,947,904,864,827,792,759,727,697,666,635,603,571,538,505,471,437,404,372,343,315,
+290,265,239,209,173,131,84,35,-11,-52,-84,-106,-119,-129,-140,-155,-179,-212,-251,-293,-336,
+-376,-412,-446,-479,-512,-547,-583,-620,-655,-690,-722,-754,-784,-815,-845,-874,-901,-924,-945,-963,-982,
+-1002,-1026,-1055,-1087,-1122,-1157,-1189,-1216,-1239,-1258,-1275,-1292,-1311,-1333,-1359,-1387,-1418,-1452,-1487,-1525,-1563,
+-1604,-1647,-1692,-1738,-1785,-1830,-1874,-1916,-1953,-1988,-2019,-2048,-2076,-2103,-2131,-2158,-2185,-2210,-2234,-2255,-2273,
+-2290,-2305,-2321,-2337,-2355,-2375,-2397,-2421,-2448,-2477,-2508,-2539,-2571,-2604,-2635,-2667,-2697,-2726,-2756,-2784,-2812,
+-2840,-2868,-2895,-2922,-2949,-2977,-3006,-3035,-3065,-3095,-3123,-3149,-3170,-3187,-3201,-3212,-3223,-3234,-3247,-3261,-3278,
+-3294,-3310,-3324,-3336,-3346,-3356,-3368,-3382,-3399,-3419,-3441,-3465,-3489,-3512,-3536,-3560,-3585,-3611,-3639,-3668,-3697,
+-3725,-3750,-3773,-3792,-3808,-3822,-3834,-3845,-3857,-3870,-3886,-3904,-3926,-3949,-3973,-3996,-4013,-4025,-4030,-4029,-4025,
+-4019,-4016,-4017,-4024,-4034,-4048,-4062,-4076,-4087,-4096,-4103,-4107,-4110,-4111,-4110,-4108,-4105,-4102,-4099,-4097,-4097,
+-4096,-4095,-4093,-4087,-4077,-4064,-4049,-4034,-4021,-4010,-4002,-3996,-3991,-3986,-3981,-3974,-3965,-3957,-3950,-3945,-3942,
+-3942,-3943,-3945,-3946,-3946,-3943,-3938,-3932,-3925,-3918,-3913,-3908,-3905,-3902,-3898,-3894,-3889,-3884,-3878,-3873,-3868,
+-3864,-3861,-3856,-3849,-3839,-3825,-3806,-3785,-3763,-3743,-3727,-3719,-3720,-3730,-3745,-3764,-3782,-3795,-3801,-3798,-3788,
+-3774,-3759,-3747,-3740,-3741,-3748,-3761,-3777,-3793,-3808,-3822,-3835,-3847,-3860,-3874,-3890,-3907,-3925,-3943,-3962,-3980,
+-3998,-4016,-4034,-4051,-4069,-4086,-4102,-4119,-4135,-4152,-4170,-4188,-4207,-4226,-4244,-4260,-4274,-4285,-4294,-4301,-4308,
+-4315,-4325,-4336,-4350,-4366,-4383,-4400,-4416,-4430,-4442,-4452,-4462,-4472,-4483,-4497,-4514,-4535,-4561,-4592,-4630,-4672,
+-4717,-4762,-4803,-4837,-4863,-4878,-4886,-4890,-4892,-4898,-4910,-4928,-4950,-4973,-4995,-5010,-5018,-5019,-5013,-5003,-4993,
+-4985,-4980,-4978,-4979,-4982,-4985,-4987,-4988,-4987,-4985,-4982,-4978,-4974,-4969,-4963,-4957,-4949,-4941,-4932,-4923,-4914,
+-4907,-4901,-4897,-4893,-4890,-4887,-4884,-4880,-4875,-4870,-4865,-4860,-4854,-4848,-4840,-4831,-4821,-4810,-4797,-4782,-4767,
+-4752,-4737,-4722,-4710,-4699,-4689,-4682,-4674,-4667,-4658,-4648,-4636,-4624,-4612,-4602,-4593,-4585,-4578,-4570,-4561,-4549,
+-4536,-4522,-4509,-4497,-4486,-4478,-4470,-4463,-4455,-4446,-4436,-4425,-4414,-4404,-4394,-4387,-4381,-4377,-4373,-4370,-4365,
+-4359,-4352,-4342,-4332,-4321,-4311,-4304,-4298,-4295,-4291,-4287,-4280,-4270,-4257,-4242,-4226,-4212,-4199,-4190,-4182,-4175,
+-4169,-4161,-4152,-4143,-4134,-4124,-4116,-4107,-4099,-4092,-4085,-4079,-4074,-4069,-4065,-4059,-4052,-4043,-4031,-4018,-4005,
+-3994,-3985,-3980,-3978,-3977,-3976,-3975,-3972,-3968,-3963,-3958,-3953,-3948,-3942,-3936,-3929,-3922,-3914,-3906,-3898,-3892,
+-3885,-3879,-3873,-3865,-3856,-3847,-3837,-3827,-3818,-3809,-3802,-3797,-3792,-3789,-3786,-3783,-3780,-3776,-3772,-3768,-3764,
+-3760,-3758,-3757,-3756,-3756,-3754,-3751,-3747,-3741,-3734,-3726,-3719,-3711,-3703,-3695,-3687,-3678,-3669,-3662,-3657,-3653,
+-3650,-3647,-3642,-3636,-3626,-3613,-3600,-3587,-3575,-3565,-3557,-3550,-3543,-3534,-3523,-3511,-3498,-3487,-3477,-3470,-3465,
+-3459,-3452,-3443,-3430,-3415,-3399,-3383,-3368,-3356,-3345,-3336,-3328,-3319,-3309,-3298,-3286,-3274,-3261,-3249,-3236,-3224,
+-3212,-3199,-3186,-3173,-3159,-3145,-3131,-3116,-3100,-3083,-3065,-3047,-3029,-3013,-2999,-2989,-2981,-2976,-2973,-2971,-2968,
+-2963,-2956,-2946,-2934,-2920,-2905,-2890,-2874,-2859,-2846,-2833,-2821,-2810,-2800,-2790,-2782,-2774,-2767,-2760,-2753,-2745,
+-2737,-2729,-2720,-2711,-2701,-2691,-2680,-2668,-2656,-2643,-2631,-2621,-2612,-2605,-2599,-2593,-2587,-2579,-2570,-2560,-2549,
+-2539,-2529,-2519,-2509,-2498,-2485,-2471,-2454,-2438,-2422,-2407,-2395,-2384,-2374,-2364,-2353,-2341,-2328,-2316,-2304,-2293,
+-2284,-2276,-2267,-2258,-2247,-2234,-2220,-2206,-2192,-2180,-2169,-2159,-2149,-2139,-2127,-2113,-2097,-2078,-2059,-2038,-2017,
+-1998,-1980,-1964,-1950,-1936,-1923,-1907,-1889,-1869,-1847,-1824,-1801,-1781,-1764,-1749,-1736,-1723,-1708,-1691,-1669,-1646,
+-1621,-1597,-1576,-1559,-1545,-1533,-1521,-1507,-1490,-1468,-1442,-1414,-1385,-1359,-1336,-1317,-1301,-1288,-1276,-1263,-1250,
+-1235,-1220,-1205,-1191,-1178,-1166,-1155,-1144,-1131,-1116,-1099,-1081,-1063,-1044,-1024,-1004,-981,-956,-928,-898,-864,
+-830,-797,-765,-735,-708,-682,-658,-634,-608,-582,-555,-527,-501,-474,-448,-422,-395,-365,-332,-297,-258,
+-219,-179,-140,-101,-63,-26,11,49,87,123,158,189,216,241,264,287,311,337,365,394,422,
+450,476,502,528,557,588,622,658,694,729,762,792,822,851,883,916,953,991,1031,1070,1109,
+1148,1187,1227,1266,1305,1342,1375,1403,1426,1444,1457,1468,1477,1487,1497,1510,1525,1546,1572,1606,1649,
+1700,1759,1820,1881,1937,1985,2023,2051,2074,2093,2113,2136,2163,2193,2225,2256,2285,2309,2330,2348,2363,
+2375,2386,2393,2395,2391,2381,2364,2342,2315,2286,2258,2231,2208,2188,2171,2156,2141,2124,2106,2085,2063,
+2040,2019,2000,1984,1972,1963,1954,1945,1934,1922,1909,1897,1888,1882,1880,1881,1883,1883,1881,1876,1870,
+1864,1862,1863,1867,1873,1877,1876,1870,1859,1845,1832,1823,1821,1824,1830,1837,1840,1836,1826,1811,1796,
+1785,1781,1786,1798,1814,1829,1841,1845,1841,1829,1811,1792,1772,1754,1740,1731,1725,1723,1724,1727,1730,
+1733,1734,1734,1732,1728,1722,1714,1705,1696,1689,1683,1680,1680,1682,1686,1688,1689,1687,1683,1677,1671,
+1667,1666,1667,1670,1673,1672,1668,1659,1647,1633,1620,1609,1600,1593,1585,1576,1565,1550,1535,1518,1503,
+1489,1476,1465,1453,1441,1429,1418,1407,1398,1391,1385,1378,1370,1360,1348,1335,1322,1312,1304,1300,1299,
+1299,1298,1294,1286,1273,1256,1236,1214,1194,1177,1164,1157,1154,1155,1158,1160,1160,1155,1147,1136,1124,
+1112,1103,1097,1096,1098,1102,1106,1107,1106,1100,1092,1082,1072,1064,1060,1061,1067,1078,1092,1107,1121,
+1134,1144,1151,1156,1159,1161,1162,1162,1161,1159,1157,1155,1154,1154,1154,1156,1158,1159,1160,1160,1160,
+1162,1165,1171,1178,1187,1196,1204,1212,1220,1228,1239,1253,1270,1288,1306,1323,1338,1350,1340,1349,1358,
+1368,1380,1393,1409,1425,1442,1459,1477,1496,1518,1541,1566,1591,1615,1638,1658,1677,1694,1709,1725,1739,
+1751,1761,1769,1775,1780,1786,1794,1806,1820,1837,1856,1874,1892,1908,1924,1938,1953,1969,1986,2004,2023,
+2041,2059,2076,2090,2102,2111,2118,2124,2130,2136,2144,2153,2163,2173,2180,2185,2187,2187,2187,2187,2189,
+2192,2196,2198,2199,2195,2187,2177,2164,2152,2143,2136,2132,2131,2132,2136,2141,2148,2156,2165,2174,2182,
+2188,2192,2196,2198,2201,2205,2210,2215,2218,2220,2220,2219,2218,2218,2222,2228,2238,2249,2260,2270,2277,
+2283,2288,2294,2300,2309,2319,2330,2341,2352,2362,2372,2382,2392,2402,2411,2417,2420,2419,2415,2411,2407,
+2407,2411,2421,2437,2457,2481,2506,2531,2555,2579,2602,2625,2646,2667,2686,2705,2723,2740,2756,2772,2786,
+2800,2813,2826,2838,2850,2863,2878,2894,2911,2930,2948,2965,2981,2994,3005,3014,3021,3025,3028,3029,3029,
+3027,3024,3019,3015,3011,3007,3004,3003,3003,3005,3010,3017,3026,3036,3045,3051,3052,3046,3033,3015,2991,
+2966,2942,2921,2904,2891,2883,2878,2875,2873,2872,2871,2871,2871,2872,2874,2875,2877,2877,2878,2879,2880,
+2883,2889,2896,2905,2915,2924,2934,2942,2949,2956,2962,2969,2977,2985,2993,3001,3008,3014,3019,3022,3024,
+3025,3024,3021,3017,3010,3000,2989,2976,2963,2950,2938,2928,2920,2914,2911,2908,2905,2901,2893,2880,2863,
+2843,2821,2800,2782,2767,2757,2749,2742,2734,2724,2713,2700,2687,2675,2665,2657,2650,2643,2635,2624,2612,
+2600,2587,2575,2564,2553,2541,2527,2512,2497,2481,2466,2453,2442,2431,2420,2409,2397,2385,2374,2365,2358,
+2352,2347,2340,2329,2316,2298,2279,2258,2238,2219,2201,2182,2162,2139,2114,2086,2057,2026,1994,1962,1927,
+1892,1855,1820,1786,1756,1733,1716,1706,1701,1698,1696,1690,1679,1662,1638,1609,1573,1534,1493,1450,1408,
+1369,1332,1300,1272,1248,1226,1206,1184,1161,1133,1102,1067,1029,989,948,907,868,830,794,759,725,
+693,661,631,601,573,544,516,487,457,427,398,370,345,321,298,273,245,211,170,124,76,
+29,-12,-45,-69,-85,-97,-109,-124,-145,-173,-206,-242,-278,-313,-347,-379,-412,-445,-479,-514,-549,
+-584,-618,-652,-688,-725,-763,-802,-839,-874,-903,-927,-949,-969,-992,-1019,-1052,-1090,-1130,-1169,-1204,-1232,
+-1254,-1269,-1281,-1292,-1306,-1324,-1348,-1378,-1413,-1452,-1496,-1542,-1591,-1642,-1694,-1746,-1797,-1846,-1891,-1932,-1968,
+-1999,-2027,-2052,-2075,-2099,-2123,-2147,-2171,-2195,-2217,-2237,-2253,-2267,-2279,-2290,-2302,-2314,-2328,-2345,-2365,-2388,
+-2414,-2442,-2472,-2504,-2538,-2573,-2609,-2645,-2680,-2716,-2751,-2785,-2817,-2849,-2880,-2909,-2938,-2966,-2994,-3023,-3051,
+-3080,-3108,-3135,-3159,-3180,-3198,-3213,-3226,-3238,-3250,-3264,-3279,-3295,-3312,-3328,-3343,-3356,-3369,-3382,-3396,-3412,
+-3431,-3452,-3475,-3500,-3525,-3551,-3577,-3605,-3634,-3665,-3698,-3730,-3762,-3791,-3817,-3838,-3856,-3871,-3884,-3897,-3909,
+-3922,-3936,-3950,-3965,-3980,-3995,-4008,-4019,-4027,-4032,-4035,-4035,-4035,-4036,-4038,-4042,-4048,-4055,-4061,-4067,-4071,
+-4073,-4075,-4077,-4079,-4082,-4084,-4087,-4089,-4091,-4094,-4098,-4104,-4111,-4120,-4127,-4132,-4133,-4128,-4120,-4108,-4097,
+-4087,-4082,-4080,-4080,-4082,-4081,-4077,-4068,-4054,-4039,-4024,-4011,-4003,-4000,-4000,-4003,-4007,-4009,-4010,-4008,-4003,
+-3998,-3993,-3988,-3985,-3981,-3978,-3974,-3969,-3962,-3955,-3948,-3941,-3937,-3934,-3932,-3931,-3928,-3921,-3910,-3894,-3874,
+-3851,-3828,-3809,-3796,-3790,-3794,-3805,-3821,-3840,-3857,-3870,-3877,-3876,-3869,-3859,-3847,-3836,-3830,-3829,-3833,-3842,
+-3854,-3868,-3883,-3897,-3912,-3926,-3939,-3953,-3967,-3982,-3998,-4014,-4032,-4051,-4070,-4090,-4111,-4131,-4151,-4170,-4188,
+-4203,-4217,-4231,-4244,-4259,-4275,-4292,-4311,-4330,-4347,-4362,-4374,-4383,-4390,-4397,-4405,-4415,-4427,-4442,-4456,-4470,
+-4481,-4490,-4497,-4503,-4509,-4516,-4525,-4536,-4550,-4567,-4587,-4611,-4640,-4674,-4711,-4749,-4786,-4817,-4841,-4857,-4866,
+-4871,-4876,-4885,-4899,-4920,-4945,-4973,-4999,-5020,-5034,-5041,-5041,-5035,-5028,-5020,-5014,-5009,-5007,-5006,-5005,-5005,
+-5005,-5004,-5003,-5001,-4998,-4995,-4990,-4984,-4976,-4968,-4960,-4951,-4944,-4937,-4930,-4925,-4920,-4915,-4910,-4905,-4901,
+-4896,-4892,-4887,-4883,-4878,-4873,-4867,-4860,-4852,-4842,-4832,-4820,-4806,-4792,-4778,-4764,-4750,-4739,-4729,-4721,-4714,
+-4707,-4699,-4690,-4680,-4669,-4659,-4649,-4640,-4632,-4624,-4616,-4607,-4597,-4585,-4573,-4561,-4550,-4540,-4531,-4524,-4517,
+-4510,-4503,-4496,-4489,-4482,-4474,-4467,-4460,-4453,-4446,-4440,-4434,-4429,-4424,-4418,-4411,-4403,-4394,-4385,-4377,-4369,
+-4363,-4357,-4352,-4346,-4338,-4329,-4318,-4307,-4296,-4285,-4275,-4265,-4255,-4245,-4234,-4223,-4213,-4203,-4194,-4186,-4177,
+-4168,-4159,-4150,-4143,-4137,-4133,-4131,-4128,-4125,-4120,-4111,-4100,-4088,-4076,-4065,-4057,-4052,-4049,-4047,-4045,-4042,
+-4039,-4034,-4029,-4025,-4020,-4016,-4011,-4006,-3999,-3991,-3983,-3974,-3964,-3955,-3946,-3936,-3926,-3915,-3904,-3893,-3881,
+-3871,-3862,-3855,-3849,-3845,-3841,-3838,-3835,-3831,-3826,-3820,-3814,-3810,-3806,-3805,-3805,-3807,-3809,-3810,-3809,-3808,
+-3804,-3799,-3794,-3787,-3780,-3772,-3762,-3752,-3740,-3729,-3719,-3711,-3706,-3702,-3699,-3695,-3689,-3681,-3671,-3659,-3648,
+-3638,-3630,-3622,-3615,-3606,-3595,-3582,-3566,-3551,-3536,-3524,-3515,-3508,-3502,-3495,-3486,-3474,-3461,-3446,-3431,-3417,
+-3405,-3393,-3382,-3371,-3358,-3345,-3331,-3318,-3306,-3295,-3286,-3277,-3267,-3256,-3242,-3227,-3211,-3194,-3177,-3162,-3147,
+-3133,-3119,-3105,-3090,-3075,-3060,-3046,-3034,-3023,-3015,-3008,-3001,-2995,-2988,-2980,-2971,-2961,-2950,-2939,-2928,-2917,
+-2906,-2895,-2884,-2873,-2862,-2851,-2841,-2831,-2822,-2814,-2805,-2797,-2788,-2779,-2770,-2760,-2750,-2740,-2729,-2717,-2704,
+-2690,-2676,-2663,-2652,-2643,-2635,-2629,-2622,-2615,-2607,-2598,-2587,-2576,-2564,-2554,-2543,-2532,-2520,-2506,-2491,-2476,
+-2461,-2446,-2433,-2422,-2411,-2401,-2389,-2377,-2363,-2350,-2337,-2325,-2315,-2307,-2298,-2288,-2277,-2265,-2251,-2237,-2223,
+-2212,-2202,-2193,-2185,-2175,-2162,-2147,-2130,-2111,-2091,-2071,-2053,-2036,-2020,-2006,-1993,-1979,-1965,-1949,-1931,-1912,
+-1890,-1868,-1847,-1827,-1809,-1792,-1778,-1763,-1746,-1726,-1703,-1676,-1648,-1621,-1597,-1578,-1563,-1552,-1544,-1534,-1522,
+-1505,-1483,-1456,-1428,-1400,-1374,-1352,-1335,-1321,-1309,-1297,-1285,-1272,-1257,-1241,-1224,-1208,-1193,-1179,-1166,-1154,
+-1140,-1126,-1112,-1095,-1078,-1060,-1040,-1018,-994,-968,-939,-909,-877,-845,-813,-783,-755,-729,-704,-680,-656,
+-631,-606,-580,-553,-526,-499,-470,-440,-407,-372,-334,-294,-253,-212,-173,-137,-102,-69,-36,-2,32,
+68,104,139,171,201,227,251,274,297,321,347,375,404,434,463,493,522,552,582,613,645,
+678,710,742,775,808,842,877,912,947,981,1014,1046,1078,1112,1147,1186,1228,1271,1316,1361,1404,
+1445,1484,1523,1560,1596,1629,1658,1680,1696,1706,1714,1722,1736,1759,1791,1832,1880,1929,1975,2015,2050,
+2078,2104,2131,2159,2191,2225,2258,2288,2312,2329,2340,2346,2350,2353,2357,2360,2361,2358,2347,2328,2301,
+2270,2239,2211,2190,2177,2172,2170,2167,2159,2141,2113,2076,2034,1992,1954,1926,1908,1900,1898,1899,1898,
+1892,1880,1866,1850,1836,1828,1825,1827,1831,1834,1834,1828,1820,1810,1802,1797,1797,1801,1806,1809,1807,
+1802,1792,1782,1773,1769,1771,1776,1783,1789,1790,1786,1778,1767,1757,1753,1754,1760,1771,1782,1789,1791,
+1785,1771,1753,1733,1714,1699,1689,1684,1682,1683,1684,1684,1683,1679,1673,1666,1658,1650,1642,1635,1628,
+1622,1618,1616,1616,1617,1620,1622,1622,1619,1614,1607,1600,1594,1591,1590,1591,1591,1589,1583,1572,1558,
+1542,1526,1514,1506,1501,1499,1497,1492,1485,1475,1463,1452,1442,1434,1428,1423,1416,1406,1393,1377,1360,
+1343,1329,1317,1309,1303,1298,1294,1288,1281,1273,1264,1254,1245,1236,1227,1219,1210,1200,1189,1177,1165,
+1153,1143,1135,1130,1127,1126,1126,1125,1124,1120,1114,1107,1098,1088,1080,1073,1068,1066,1065,1066,1067,
+1067,1066,1063,1057,1049,1041,1033,1028,1027,1031,1039,1052,1067,1082,1096,1108,1117,1125,1130,1134,1138,
+1140,1141,1141,1140,1139,1138,1137,1136,1135,1135,1134,1134,1135,1138,1142,1149,1158,1169,1179,1190,1199,
+1209,1219,1232,1246,1263,1281,1299,1315,1329,1340,1333,1341,1351,1362,1376,1394,1416,1440,1465,1491,1515,
+1539,1562,1584,1605,1626,1645,1663,1679,1695,1711,1726,1740,1754,1766,1776,1784,1789,1793,1797,1802,1809,
+1818,1830,1843,1856,1870,1882,1895,1906,1918,1932,1946,1962,1978,1995,2011,2026,2039,2049,2058,2065,2073,
+2082,2092,2103,2115,2126,2135,2142,2146,2148,2149,2151,2154,2158,2162,2165,2164,2159,2150,2137,2122,2108,
+2096,2089,2085,2084,2085,2087,2090,2093,2098,2105,2114,2123,2134,2143,2150,2155,2159,2163,2166,2170,2175,
+2179,2182,2184,2185,2186,2188,2193,2200,2208,2218,2227,2234,2240,2244,2249,2254,2261,2270,2281,2293,2305,
+2316,2326,2336,2345,2354,2363,2370,2374,2375,2373,2369,2364,2361,2362,2367,2379,2395,2415,2438,2463,2489,
+2515,2542,2568,2593,2617,2638,2656,2671,2685,2698,2712,2728,2744,2762,2779,2795,2809,2821,2833,2844,2857,
+2872,2889,2907,2926,2944,2959,2972,2981,2987,2991,2992,2991,2988,2984,2979,2975,2971,2968,2965,2963,2962,
+2963,2964,2968,2974,2983,2993,3003,3011,3014,3009,2997,2979,2955,2930,2906,2887,2872,2861,2855,2850,2846,
+2841,2837,2834,2832,2833,2836,2841,2846,2851,2856,2859,2862,2865,2871,2878,2887,2897,2906,2914,2919,2922,
+2925,2928,2933,2940,2949,2959,2969,2979,2987,2993,2997,2999,3001,3002,3001,2998,2992,2984,2972,2958,2943,
+2927,2913,2900,2890,2883,2879,2877,2876,2873,2869,2860,2846,2829,2808,2787,2767,2750,2738,2729,2723,2718,
+2711,2703,2693,2682,2672,2665,2659,2656,2652,2647,2639,2628,2614,2599,2584,2570,2558,2547,2535,2522,2506,
+2488,2468,2448,2428,2410,2394,2378,2363,2349,2335,2324,2314,2308,2304,2300,2296,2289,2279,2264,2247,2228,
+2209,2190,2172,2153,2134,2112,2088,2061,2033,2004,1975,1945,1914,1880,1845,1807,1769,1732,1699,1671,1650,
+1635,1625,1617,1609,1598,1583,1561,1534,1502,1466,1428,1390,1353,1318,1286,1257,1232,1209,1188,1167,1147,
+1125,1100,1074,1045,1013,980,945,908,871,833,795,757,719,682,648,616,587,560,535,509,484,
+457,430,403,377,354,333,313,294,272,246,214,176,134,91,49,11,-21,-48,-70,-90,-108,
+-127,-148,-169,-191,-214,-239,-265,-293,-325,-359,-395,-433,-471,-511,-553,-597,-644,-694,-744,-793,-837,
+-874,-902,-923,-940,-957,-977,-1004,-1038,-1078,-1120,-1160,-1195,-1223,-1243,-1257,-1268,-1280,-1296,-1318,-1346,-1381,
+-1421,-1467,-1517,-1570,-1627,-1685,-1743,-1800,-1853,-1900,-1941,-1976,-2004,-2027,-2048,-2067,-2088,-2109,-2133,-2157,-2181,
+-2204,-2224,-2240,-2252,-2261,-2268,-2273,-2279,-2287,-2298,-2312,-2330,-2352,-2378,-2408,-2441,-2477,-2516,-2556,-2597,-2639,
+-2679,-2719,-2756,-2792,-2828,-2862,-2895,-2929,-2962,-2995,-3027,-3057,-3086,-3113,-3139,-3162,-3184,-3204,-3223,-3240,-3257,
+-3274,-3291,-3308,-3326,-3343,-3360,-3376,-3391,-3406,-3421,-3436,-3454,-3473,-3495,-3518,-3542,-3567,-3591,-3617,-3643,-3670,
+-3700,-3732,-3766,-3799,-3831,-3859,-3883,-3902,-3916,-3928,-3939,-3950,-3963,-3976,-3991,-4005,-4018,-4028,-4036,-4040,-4041,
+-4041,-4039,-4037,-4036,-4037,-4039,-4042,-4046,-4049,-4051,-4051,-4049,-4045,-4041,-4037,-4036,-4037,-4041,-4047,-4055,-4063,
+-4072,-4081,-4090,-4100,-4111,-4123,-4134,-4143,-4150,-4154,-4156,-4156,-4157,-4159,-4165,-4173,-4181,-4188,-4191,-4187,-4177,
+-4161,-4141,-4119,-4100,-4085,-4075,-4071,-4072,-4075,-4078,-4079,-4079,-4077,-4073,-4068,-4064,-4060,-4057,-4053,-4050,-4045,
+-4039,-4032,-4025,-4018,-4013,-4009,-4006,-4004,-4000,-3993,-3983,-3969,-3950,-3929,-3908,-3888,-3873,-3865,-3864,-3871,-3884,
+-3901,-3919,-3937,-3950,-3958,-3959,-3955,-3947,-3936,-3926,-3918,-3914,-3916,-3922,-3933,-3946,-3961,-3977,-3992,-4007,-4021,
+-4035,-4049,-4064,-4079,-4095,-4111,-4129,-4148,-4167,-4188,-4209,-4230,-4250,-4267,-4281,-4293,-4303,-4313,-4326,-4341,-4361,
+-4383,-4406,-4429,-4448,-4463,-4474,-4482,-4489,-4496,-4505,-4515,-4526,-4537,-4545,-4552,-4557,-4562,-4567,-4575,-4584,-4594,
+-4605,-4617,-4628,-4640,-4655,-4674,-4698,-4726,-4757,-4789,-4817,-4840,-4856,-4867,-4873,-4879,-4888,-4902,-4921,-4945,-4971,
+-4996,-5017,-5033,-5043,-5047,-5047,-5045,-5041,-5036,-5032,-5029,-5027,-5025,-5025,-5024,-5025,-5025,-5024,-5021,-5017,-5011,
+-5004,-4996,-4989,-4981,-4975,-4969,-4963,-4957,-4950,-4943,-4936,-4930,-4924,-4918,-4914,-4910,-4906,-4902,-4898,-4893,-4887,
+-4881,-4874,-4867,-4858,-4848,-4836,-4824,-4811,-4798,-4787,-4777,-4769,-4761,-4755,-4747,-4739,-4730,-4720,-4709,-4699,-4689,
+-4680,-4672,-4665,-4657,-4650,-4642,-4635,-4627,-4619,-4611,-4603,-4595,-4588,-4580,-4574,-4568,-4563,-4559,-4555,-4550,-4544,
+-4536,-4527,-4517,-4509,-4501,-4494,-4489,-4483,-4477,-4470,-4461,-4450,-4440,-4429,-4420,-4412,-4406,-4400,-4395,-4390,-4385,
+-4379,-4371,-4362,-4351,-4339,-4327,-4315,-4303,-4293,-4284,-4276,-4268,-4260,-4250,-4239,-4228,-4217,-4207,-4200,-4196,-4194,
+-4193,-4192,-4189,-4183,-4175,-4165,-4154,-4144,-4136,-4128,-4122,-4117,-4112,-4106,-4101,-4097,-4093,-4089,-4086,-4083,-4079,
+-4073,-4066,-4058,-4048,-4037,-4026,-4014,-4002,-3990,-3978,-3966,-3954,-3943,-3932,-3923,-3916,-3911,-3908,-3905,-3902,-3899,
+-3894,-3888,-3880,-3872,-3865,-3859,-3855,-3853,-3852,-3853,-3854,-3854,-3853,-3851,-3849,-3847,-3844,-3840,-3835,-3829,-3820,
+-3809,-3797,-3786,-3775,-3766,-3758,-3751,-3745,-3737,-3729,-3720,-3711,-3702,-3695,-3689,-3683,-3676,-3668,-3656,-3641,-3624,
+-3606,-3589,-3573,-3560,-3549,-3539,-3529,-3519,-3508,-3496,-3483,-3471,-3459,-3448,-3436,-3423,-3408,-3393,-3377,-3362,-3348,
+-3336,-3328,-3320,-3313,-3304,-3294,-3280,-3264,-3247,-3228,-3211,-3194,-3180,-3166,-3153,-3141,-3128,-3116,-3104,-3092,-3081,
+-3071,-3061,-3051,-3041,-3030,-3018,-3007,-2995,-2985,-2976,-2968,-2960,-2953,-2945,-2937,-2927,-2917,-2907,-2896,-2886,-2876,
+-2866,-2856,-2846,-2836,-2826,-2816,-2806,-2796,-2786,-2776,-2765,-2753,-2740,-2726,-2712,-2699,-2687,-2677,-2668,-2659,-2651,
+-2642,-2632,-2621,-2610,-2598,-2586,-2575,-2564,-2553,-2541,-2528,-2515,-2502,-2488,-2476,-2464,-2452,-2441,-2428,-2415,-2402,
+-2388,-2375,-2363,-2353,-2343,-2333,-2322,-2309,-2295,-2280,-2265,-2253,-2243,-2235,-2229,-2223,-2215,-2204,-2189,-2171,-2151,
+-2130,-2110,-2092,-2077,-2064,-2052,-2040,-2027,-2012,-1995,-1977,-1957,-1937,-1916,-1895,-1876,-1857,-1840,-1823,-1806,-1787,
+-1766,-1742,-1715,-1686,-1658,-1632,-1610,-1592,-1580,-1570,-1561,-1550,-1536,-1517,-1493,-1467,-1440,-1414,-1390,-1370,-1354,
+-1340,-1327,-1314,-1301,-1286,-1270,-1254,-1237,-1220,-1205,-1190,-1175,-1161,-1148,-1134,-1120,-1105,-1089,-1071,-1051,-1028,
+-1004,-978,-951,-923,-894,-866,-837,-809,-780,-752,-723,-695,-668,-641,-615,-590,-565,-539,-512,-482,-449,
+-413,-375,-333,-290,-248,-206,-168,-132,-99,-69,-39,-10,20,52,86,120,154,185,215,241,266,
+289,313,338,364,392,422,452,483,513,543,571,599,627,656,687,721,757,795,835,874,911,
+944,975,1002,1027,1053,1083,1118,1160,1209,1263,1321,1379,1438,1494,1549,1601,1650,1696,1736,1769,1792,
+1804,1807,1802,1796,1792,1797,1813,1841,1880,1925,1973,2019,2059,2094,2123,2149,2173,2197,2221,2243,2262,
+2276,2285,2288,2289,2289,2291,2296,2303,2310,2313,2309,2294,2269,2236,2199,2164,2135,2115,2104,2100,2097,
+2088,2069,2037,1994,1942,1889,1842,1807,1786,1780,1786,1799,1811,1819,1821,1816,1807,1799,1793,1791,1793,
+1798,1801,1801,1795,1785,1771,1757,1747,1742,1743,1748,1754,1760,1762,1760,1756,1750,1745,1743,1744,1747,
+1751,1753,1751,1746,1739,1730,1722,1716,1714,1714,1715,1715,1713,1706,1696,1683,1670,1657,1646,1639,1634,
+1631,1628,1624,1618,1609,1599,1589,1579,1572,1567,1565,1565,1567,1568,1570,1571,1573,1573,1573,1572,1569,
+1564,1558,1550,1543,1536,1530,1527,1523,1519,1513,1503,1490,1474,1456,1440,1426,1415,1407,1401,1396,1390,
+1384,1377,1371,1368,1368,1371,1375,1378,1378,1371,1358,1339,1316,1292,1271,1254,1244,1241,1242,1245,1248,
+1247,1242,1231,1216,1199,1181,1164,1150,1139,1132,1126,1121,1116,1111,1105,1098,1092,1086,1082,1078,1076,
+1074,1073,1072,1071,1069,1066,1063,1059,1054,1050,1046,1044,1043,1042,1042,1040,1036,1029,1021,1011,1002,
+996,995,998,1005,1016,1029,1041,1053,1064,1074,1083,1092,1100,1108,1114,1119,1122,1123,1123,1122,1121,
+1120,1119,1118,1117,1118,1119,1123,1130,1139,1150,1162,1175,1187,1200,1214,1228,1244,1261,1278,1295,1310,
+1322,1333,1333,1345,1359,1376,1397,1424,1454,1488,1522,1554,1583,1608,1629,1646,1660,1672,1683,1693,1702,
+1711,1721,1730,1739,1749,1758,1767,1775,1781,1787,1793,1799,1806,1813,1822,1831,1840,1849,1858,1866,1875,
+1883,1892,1902,1914,1926,1939,1952,1964,1976,1987,1997,2007,2018,2030,2042,2055,2067,2077,2085,2091,2095,
+2099,2104,2110,2117,2124,2129,2129,2124,2113,2097,2079,2061,2047,2037,2032,2032,2034,2037,2040,2042,2046,
+2050,2058,2068,2079,2091,2101,2109,2114,2117,2120,2124,2128,2134,2140,2146,2151,2154,2156,2159,2163,2168,
+2175,2183,2191,2198,2203,2207,2212,2218,2226,2236,2248,2260,2273,2284,2293,2302,2309,2316,2321,2326,2327,
+2326,2322,2317,2311,2308,2309,2314,2325,2341,2361,2385,2410,2438,2467,2497,2528,2558,2585,2608,2626,2640,
+2652,2662,2674,2688,2705,2724,2744,2764,2781,2795,2807,2817,2828,2840,2853,2869,2886,2903,2919,2933,2944,
+2951,2956,2956,2954,2950,2944,2937,2932,2928,2926,2925,2924,2924,2923,2923,2923,2927,2933,2942,2953,2963,
+2970,2971,2966,2953,2935,2915,2895,2879,2866,2858,2852,2848,2844,2839,2834,2831,2831,2835,2841,2848,2856,
+2861,2864,2864,2863,2862,2864,2868,2875,2884,2891,2898,2901,2903,2904,2905,2910,2918,2928,2940,2953,2964,
+2972,2978,2981,2983,2983,2983,2981,2977,2971,2961,2948,2933,2916,2900,2885,2873,2863,2857,2853,2850,2848,
+2844,2838,2828,2815,2798,2780,2761,2745,2731,2722,2715,2709,2704,2697,2688,2678,2668,2659,2654,2652,2651,
+2650,2647,2640,2628,2613,2596,2578,2563,2549,2536,2522,2507,2488,2467,2442,2418,2393,2371,2351,2334,2318,
+2304,2292,2281,2272,2265,2260,2256,2251,2244,2234,2222,2207,2190,2174,2157,2141,2125,2107,2086,2062,2034,
+2005,1976,1946,1917,1888,1857,1824,1789,1751,1712,1674,1639,1609,1585,1567,1552,1538,1524,1508,1488,1465,
+1439,1411,1382,1354,1326,1299,1273,1248,1223,1198,1174,1150,1126,1102,1078,1052,1026,998,969,937,904,
+868,829,790,749,709,670,634,600,571,544,519,494,470,445,419,393,368,345,325,308,293,
+278,262,242,218,190,158,123,87,51,16,-16,-44,-67,-86,-100,-111,-119,-128,-140,-157,-179,
+-208,-242,-281,-324,-371,-422,-479,-541,-608,-677,-744,-805,-856,-894,-921,-937,-949,-962,-979,-1005,-1038,
+-1077,-1115,-1150,-1179,-1199,-1214,-1226,-1240,-1258,-1284,-1318,-1359,-1405,-1456,-1508,-1563,-1619,-1675,-1733,-1789,-1842,
+-1891,-1932,-1966,-1992,-2012,-2028,-2043,-2059,-2079,-2102,-2128,-2155,-2182,-2206,-2226,-2241,-2250,-2254,-2255,-2255,-2255,
+-2259,-2266,-2279,-2297,-2321,-2350,-2385,-2424,-2467,-2512,-2559,-2606,-2652,-2696,-2737,-2776,-2812,-2848,-2883,-2919,-2956,
+-2994,-3031,-3068,-3102,-3133,-3161,-3186,-3208,-3228,-3248,-3267,-3287,-3307,-3327,-3347,-3368,-3387,-3406,-3424,-3442,-3459,
+-3476,-3493,-3512,-3533,-3554,-3578,-3602,-3626,-3650,-3673,-3696,-3719,-3743,-3768,-3796,-3825,-3854,-3881,-3906,-3927,-3944,
+-3957,-3968,-3978,-3989,-4002,-4017,-4032,-4047,-4061,-4071,-4078,-4081,-4081,-4080,-4077,-4074,-4071,-4069,-4067,-4066,-4063,
+-4060,-4056,-4050,-4044,-4037,-4031,-4026,-4024,-4025,-4029,-4036,-4046,-4057,-4069,-4082,-4094,-4106,-4118,-4131,-4144,-4157,
+-4172,-4186,-4201,-4216,-4232,-4248,-4264,-4279,-4291,-4299,-4302,-4299,-4289,-4274,-4254,-4232,-4210,-4191,-4175,-4165,-4159,
+-4157,-4156,-4157,-4157,-4155,-4152,-4148,-4143,-4139,-4135,-4132,-4128,-4125,-4121,-4116,-4110,-4104,-4098,-4093,-4088,-4084,
+-4078,-4072,-4063,-4051,-4036,-4019,-4001,-3984,-3970,-3960,-3955,-3956,-3962,-3973,-3988,-4004,-4019,-4032,-4040,-4043,-4041,
+-4035,-4025,-4015,-4008,-4003,-4003,-4008,-4017,-4029,-4042,-4056,-4070,-4085,-4100,-4115,-4131,-4147,-4162,-4176,-4189,-4203,
+-4217,-4233,-4252,-4273,-4295,-4316,-4335,-4351,-4364,-4375,-4386,-4399,-4417,-4437,-4461,-4485,-4507,-4525,-4540,-4551,-4561,
+-4570,-4580,-4591,-4603,-4615,-4625,-4633,-4639,-4644,-4650,-4657,-4666,-4676,-4686,-4694,-4700,-4704,-4708,-4715,-4726,-4743,
+-4765,-4792,-4819,-4845,-4866,-4882,-4892,-4900,-4907,-4915,-4926,-4940,-4957,-4975,-4992,-5008,-5022,-5032,-5040,-5045,-5049,
+-5050,-5049,-5048,-5047,-5045,-5045,-5045,-5045,-5046,-5045,-5043,-5040,-5034,-5028,-5021,-5014,-5008,-5003,-4998,-4993,-4986,
+-4979,-4970,-4962,-4954,-4947,-4942,-4939,-4936,-4933,-4931,-4927,-4923,-4918,-4913,-4908,-4903,-4896,-4889,-4880,-4869,-4858,
+-4847,-4836,-4826,-4818,-4811,-4803,-4796,-4787,-4778,-4768,-4757,-4746,-4737,-4728,-4720,-4714,-4709,-4704,-4701,-4698,-4695,
+-4691,-4687,-4680,-4672,-4664,-4655,-4647,-4641,-4636,-4633,-4631,-4628,-4624,-4617,-4608,-4597,-4587,-4577,-4569,-4562,-4556,
+-4549,-4542,-4532,-4521,-4509,-4496,-4485,-4475,-4467,-4462,-4458,-4455,-4452,-4449,-4444,-4439,-4431,-4422,-4413,-4403,-4394,
+-4385,-4377,-4370,-4362,-4353,-4342,-4329,-4315,-4300,-4285,-4273,-4264,-4258,-4255,-4254,-4253,-4251,-4247,-4241,-4234,-4226,
+-4216,-4207,-4199,-4190,-4182,-4174,-4167,-4161,-4155,-4151,-4147,-4143,-4140,-4135,-4129,-4122,-4113,-4103,-4092,-4080,-4067,
+-4054,-4041,-4028,-4015,-4004,-3994,-3985,-3979,-3975,-3974,-3973,-3972,-3970,-3966,-3960,-3952,-3943,-3932,-3922,-3914,-3907,
+-3901,-3896,-3892,-3889,-3886,-3884,-3883,-3883,-3884,-3885,-3885,-3884,-3880,-3874,-3865,-3855,-3843,-3832,-3821,-3810,-3800,
+-3790,-3779,-3770,-3761,-3752,-3746,-3740,-3734,-3728,-3720,-3709,-3695,-3679,-3662,-3644,-3628,-3612,-3598,-3584,-3571,-3558,
+-3545,-3532,-3520,-3508,-3496,-3484,-3471,-3457,-3443,-3427,-3411,-3396,-3383,-3371,-3361,-3352,-3343,-3333,-3320,-3307,-3291,
+-3275,-3259,-3244,-3229,-3215,-3201,-3187,-3174,-3161,-3149,-3138,-3129,-3120,-3113,-3105,-3095,-3084,-3072,-3058,-3045,-3031,
+-3019,-3009,-3000,-2991,-2982,-2974,-2964,-2955,-2945,-2936,-2927,-2919,-2911,-2903,-2894,-2884,-2873,-2862,-2851,-2840,-2830,
+-2820,-2810,-2799,-2787,-2774,-2761,-2747,-2734,-2721,-2710,-2699,-2689,-2678,-2667,-2656,-2643,-2631,-2619,-2607,-2595,-2584,
+-2572,-2561,-2549,-2537,-2525,-2514,-2502,-2490,-2478,-2465,-2452,-2438,-2424,-2412,-2400,-2390,-2380,-2370,-2359,-2345,-2329,
+-2313,-2296,-2282,-2272,-2265,-2260,-2257,-2253,-2246,-2235,-2219,-2201,-2181,-2162,-2144,-2128,-2114,-2101,-2088,-2074,-2058,
+-2041,-2023,-2005,-1986,-1968,-1950,-1932,-1914,-1895,-1875,-1855,-1833,-1810,-1785,-1759,-1732,-1706,-1682,-1661,-1644,-1631,
+-1619,-1608,-1595,-1578,-1557,-1532,-1503,-1475,-1447,-1423,-1402,-1384,-1369,-1354,-1340,-1325,-1309,-1293,-1277,-1261,-1246,
+-1231,-1216,-1201,-1186,-1171,-1156,-1142,-1128,-1113,-1098,-1080,-1059,-1036,-1011,-985,-959,-933,-907,-882,-856,-828,
+-799,-768,-735,-703,-671,-641,-614,-589,-564,-539,-513,-483,-451,-415,-377,-336,-295,-254,-214,-176,-141,
+-107,-77,-47,-18,9,39,70,103,136,168,199,228,255,280,303,327,352,378,406,436,467,
+497,527,555,582,609,637,667,701,738,777,816,856,892,925,955,982,1008,1038,1072,1114,1163,
+1221,1285,1352,1419,1485,1545,1601,1651,1695,1735,1768,1795,1815,1827,1831,1830,1827,1826,1829,1842,1865,
+1897,1938,1981,2025,2063,2095,2120,2138,2152,2164,2175,2185,2195,2204,2209,2211,2212,2212,2213,2219,2227,
+2238,2248,2253,2249,2232,2203,2164,2119,2073,2032,1999,1974,1954,1935,1912,1881,1841,1795,1745,1700,1665,
+1644,1639,1649,1668,1691,1713,1729,1738,1741,1740,1738,1737,1739,1743,1748,1750,1749,1744,1736,1727,1719,
+1714,1713,1717,1722,1728,1733,1734,1732,1727,1720,1714,1710,1707,1707,1706,1705,1703,1698,1690,1681,1671,
+1661,1653,1645,1639,1633,1628,1623,1618,1612,1607,1602,1597,1593,1588,1581,1573,1563,1551,1539,1528,1519,
+1512,1510,1510,1512,1515,1518,1521,1521,1522,1521,1520,1519,1518,1516,1512,1507,1499,1491,1483,1474,1466,
+1458,1450,1441,1431,1419,1405,1390,1374,1358,1343,1327,1313,1301,1290,1283,1279,1280,1286,1294,1304,1313,
+1317,1314,1305,1288,1265,1241,1217,1199,1187,1183,1184,1189,1194,1196,1192,1181,1166,1146,1127,1109,1096,
+1087,1083,1081,1081,1079,1076,1071,1064,1057,1049,1043,1038,1035,1033,1033,1034,1036,1037,1038,1037,1034,
+1030,1026,1020,1016,1013,1011,1010,1010,1009,1006,1001,994,988,982,978,978,980,985,992,999,1007,
+1016,1026,1036,1048,1060,1071,1082,1090,1096,1100,1102,1103,1104,1106,1107,1109,1110,1111,1112,1114,1119,
+1126,1136,1148,1163,1178,1194,1210,1227,1244,1261,1278,1294,1308,1321,1333,1340,1359,1382,1408,1438,1473,
+1511,1551,1589,1623,1653,1676,1693,1705,1713,1718,1722,1726,1729,1731,1733,1734,1736,1737,1740,1744,1749,
+1755,1763,1770,1777,1785,1791,1798,1805,1811,1818,1825,1831,1838,1845,1852,1860,1870,1880,1891,1902,1914,
+1926,1937,1948,1959,1971,1982,1994,2005,2016,2025,2034,2041,2049,2057,2067,2076,2085,2091,2092,2087,2075,
+2056,2035,2013,1995,1982,1976,1975,1979,1984,1989,1994,1998,2002,2009,2017,2028,2039,2050,2058,2064,2067,
+2069,2072,2077,2085,2094,2104,2112,2118,2121,2122,2123,2124,2127,2133,2139,2147,2153,2159,2164,2170,2177,
+2187,2199,2212,2226,2238,2249,2257,2263,2268,2273,2277,2280,2282,2281,2277,2272,2265,2260,2258,2260,2267,
+2280,2297,2318,2342,2369,2399,2432,2466,2500,2533,2562,2586,2605,2620,2632,2644,2657,2672,2689,2708,2726,
+2743,2758,2771,2782,2793,2805,2818,2832,2848,2864,2880,2895,2908,2918,2923,2925,2923,2918,2911,2904,2898,
+2894,2893,2892,2892,2891,2889,2886,2883,2882,2886,2894,2907,2921,2935,2944,2947,2944,2934,2920,2906,2893,
+2883,2877,2875,2874,2874,2874,2876,2880,2886,2894,2903,2910,2915,2914,2909,2899,2888,2879,2873,2872,2875,
+2882,2889,2894,2897,2898,2897,2897,2900,2905,2914,2926,2938,2948,2957,2963,2967,2969,2969,2968,2964,2959,
+2950,2938,2923,2907,2890,2875,2862,2851,2844,2839,2836,2833,2829,2824,2816,2806,2792,2777,2760,2744,2730,
+2719,2710,2703,2697,2691,2683,2674,2665,2655,2648,2644,2642,2642,2642,2639,2632,2621,2606,2589,2570,2553,
+2536,2520,2503,2484,2463,2438,2412,2385,2360,2336,2316,2298,2282,2267,2254,2242,2231,2222,2215,2210,2204,
+2197,2189,2179,2167,2154,2141,2127,2113,2098,2081,2060,2035,2007,1976,1945,1913,1882,1853,1823,1792,1760,
+1727,1692,1659,1627,1599,1575,1555,1538,1522,1506,1488,1469,1447,1424,1401,1378,1355,1333,1311,1288,1265,
+1241,1217,1192,1166,1141,1116,1090,1063,1034,1004,972,938,902,864,824,783,743,702,664,628,594,
+564,537,511,488,464,441,416,391,366,342,320,301,285,272,263,255,248,239,227,210,187,
+160,129,97,66,41,22,10,4,1,0,-5,-16,-33,-58,-91,-129,-175,-227,-288,-358,-437,
+-522,-611,-696,-772,-834,-880,-912,-932,-947,-963,-985,-1014,-1048,-1083,-1116,-1141,-1158,-1168,-1175,-1184,-1200,
+-1227,-1267,-1317,-1375,-1436,-1497,-1556,-1612,-1665,-1716,-1765,-1812,-1857,-1896,-1929,-1955,-1974,-1987,-1998,-2009,-2023,
+-2041,-2064,-2091,-2120,-2149,-2176,-2198,-2213,-2222,-2225,-2225,-2223,-2222,-2224,-2232,-2246,-2267,-2296,-2331,-2371,-2416,
+-2464,-2514,-2565,-2616,-2665,-2711,-2755,-2795,-2833,-2869,-2904,-2939,-2975,-3012,-3049,-3084,-3118,-3150,-3178,-3203,-3226,
+-3247,-3267,-3287,-3307,-3328,-3349,-3370,-3392,-3414,-3437,-3461,-3484,-3507,-3530,-3552,-3573,-3595,-3616,-3637,-3659,-3681,
+-3702,-3722,-3741,-3760,-3778,-3796,-3815,-3835,-3856,-3878,-3898,-3918,-3935,-3950,-3964,-3977,-3990,-4004,-4018,-4033,-4046,
+-4059,-4071,-4080,-4089,-4096,-4102,-4107,-4111,-4113,-4113,-4110,-4104,-4097,-4090,-4083,-4077,-4072,-4069,-4068,-4067,-4068,
+-4069,-4072,-4077,-4085,-4094,-4105,-4117,-4129,-4141,-4154,-4166,-4180,-4196,-4215,-4237,-4261,-4287,-4312,-4335,-4355,-4370,
+-4380,-4385,-4386,-4383,-4376,-4366,-4352,-4336,-4318,-4300,-4282,-4267,-4256,-4248,-4244,-4243,-4243,-4243,-4241,-4238,-4233,
+-4227,-4222,-4217,-4213,-4209,-4205,-4201,-4197,-4191,-4185,-4178,-4172,-4165,-4159,-4152,-4144,-4134,-4123,-4111,-4097,-4084,
+-4072,-4061,-4053,-4048,-4047,-4050,-4057,-4068,-4082,-4096,-4109,-4119,-4124,-4125,-4121,-4115,-4108,-4101,-4098,-4097,-4100,
+-4105,-4113,-4122,-4133,-4145,-4160,-4177,-4195,-4213,-4229,-4244,-4256,-4266,-4276,-4287,-4302,-4319,-4341,-4364,-4386,-4407,
+-4424,-4439,-4451,-4464,-4478,-4494,-4513,-4533,-4553,-4571,-4587,-4600,-4613,-4625,-4639,-4655,-4671,-4687,-4702,-4715,-4726,
+-4735,-4743,-4752,-4761,-4770,-4779,-4785,-4788,-4788,-4787,-4787,-4791,-4799,-4812,-4831,-4852,-4874,-4894,-4912,-4925,-4936,
+-4944,-4952,-4959,-4967,-4975,-4983,-4992,-5001,-5010,-5020,-5029,-5038,-5047,-5053,-5057,-5060,-5061,-5060,-5060,-5060,-5061,
+-5061,-5061,-5060,-5057,-5053,-5048,-5042,-5038,-5033,-5030,-5026,-5021,-5015,-5007,-4999,-4990,-4983,-4977,-4973,-4971,-4970,
+-4968,-4966,-4962,-4958,-4953,-4948,-4942,-4937,-4932,-4926,-4919,-4911,-4902,-4893,-4884,-4875,-4867,-4859,-4851,-4842,-4833,
+-4823,-4812,-4802,-4793,-4785,-4779,-4773,-4768,-4764,-4760,-4758,-4756,-4754,-4752,-4749,-4745,-4739,-4731,-4722,-4713,-4706,
+-4701,-4698,-4696,-4694,-4692,-4688,-4682,-4673,-4664,-4655,-4646,-4638,-4631,-4624,-4616,-4607,-4597,-4586,-4575,-4564,-4553,
+-4543,-4535,-4527,-4520,-4514,-4509,-4505,-4502,-4499,-4496,-4493,-4488,-4483,-4476,-4469,-4462,-4453,-4443,-4433,-4420,-4406,
+-4391,-4375,-4360,-4347,-4335,-4327,-4321,-4316,-4313,-4311,-4307,-4302,-4296,-4289,-4281,-4271,-4262,-4252,-4242,-4232,-4222,
+-4213,-4205,-4198,-4192,-4187,-4183,-4178,-4174,-4168,-4161,-4153,-4143,-4131,-4118,-4104,-4089,-4075,-4062,-4051,-4043,-4037,
+-4035,-4034,-4036,-4037,-4037,-4035,-4031,-4024,-4015,-4004,-3992,-3980,-3968,-3957,-3947,-3938,-3930,-3924,-3919,-3916,-3916,
+-3918,-3921,-3924,-3927,-3927,-3926,-3921,-3915,-3906,-3897,-3886,-3875,-3864,-3853,-3841,-3829,-3818,-3807,-3797,-3789,-3781,
+-3772,-3763,-3753,-3741,-3728,-3713,-3698,-3683,-3669,-3654,-3639,-3625,-3610,-3594,-3579,-3564,-3549,-3535,-3521,-3507,-3493,
+-3479,-3465,-3450,-3436,-3422,-3409,-3396,-3383,-3369,-3354,-3340,-3326,-3312,-3299,-3287,-3275,-3262,-3249,-3235,-3220,-3205,
+-3191,-3178,-3168,-3160,-3154,-3149,-3143,-3135,-3126,-3115,-3102,-3089,-3076,-3062,-3049,-3037,-3024,-3011,-2998,-2985,-2974,
+-2964,-2956,-2950,-2945,-2940,-2934,-2927,-2919,-2909,-2898,-2886,-2875,-2865,-2854,-2843,-2831,-2819,-2805,-2792,-2778,-2764,
+-2751,-2739,-2727,-2716,-2704,-2692,-2679,-2666,-2653,-2641,-2628,-2616,-2605,-2593,-2582,-2571,-2560,-2549,-2538,-2526,-2514,
+-2502,-2488,-2473,-2458,-2445,-2432,-2422,-2412,-2402,-2392,-2380,-2365,-2350,-2333,-2319,-2306,-2297,-2291,-2287,-2283,-2277,
+-2269,-2258,-2243,-2228,-2212,-2196,-2181,-2167,-2152,-2136,-2119,-2101,-2082,-2063,-2046,-2030,-2016,-2002,-1987,-1970,-1951,
+-1930,-1906,-1881,-1855,-1829,-1803,-1778,-1754,-1733,-1716,-1702,-1690,-1681,-1672,-1660,-1642,-1619,-1590,-1557,-1522,-1488,
+-1459,-1434,-1415,-1399,-1385,-1371,-1356,-1339,-1321,-1303,-1286,-1271,-1258,-1245,-1231,-1217,-1201,-1184,-1168,-1151,-1135,
+-1120,-1104,-1086,-1066,-1043,-1017,-990,-963,-936,-911,-887,-862,-835,-806,-775,-742,-709,-677,-646,-619,-593,
+-569,-543,-516,-485,-451,-415,-377,-339,-300,-262,-225,-188,-153,-119,-87,-56,-27,0,28,57,87,
+118,150,181,211,238,264,288,311,334,359,386,415,445,476,507,538,567,596,625,655,687,
+721,756,791,827,862,897,931,966,1002,1043,1088,1138,1195,1256,1321,1387,1451,1511,1566,1613,1652,
+1685,1712,1735,1754,1771,1786,1799,1810,1820,1830,1842,1858,1880,1907,1940,1976,2011,2043,2068,2086,2097,
+2102,2106,2110,2115,2123,2132,2140,2145,2145,2143,2139,2138,2142,2151,2164,2178,2185,2182,2163,2126,2075,
+2013,1947,1885,1830,1785,1750,1721,1694,1665,1633,1600,1567,1540,1523,1517,1525,1543,1566,1592,1614,1630,
+1639,1642,1641,1639,1638,1640,1645,1652,1659,1665,1670,1673,1675,1676,1677,1679,1680,1681,1681,1679,1675,
+1669,1661,1653,1646,1640,1637,1635,1635,1635,1634,1631,1625,1618,1608,1598,1589,1580,1574,1570,1567,1565,
+1564,1562,1559,1555,1549,1543,1536,1529,1520,1512,1503,1494,1486,1480,1475,1471,1468,1465,1462,1458,1455,
+1451,1448,1447,1448,1450,1452,1452,1450,1445,1436,1425,1412,1401,1390,1383,1377,1372,1367,1360,1349,1335,
+1317,1297,1277,1257,1240,1226,1217,1212,1211,1214,1219,1225,1232,1235,1235,1229,1218,1202,1182,1163,1145,
+1133,1125,1123,1125,1128,1129,1126,1118,1106,1092,1078,1066,1057,1053,1051,1051,1051,1049,1045,1040,1033,
+1026,1019,1015,1011,1009,1008,1007,1006,1005,1005,1004,1002,999,996,991,986,981,977,974,974,974,
+976,977,977,976,974,972,969,968,967,968,970,973,978,984,992,1002,1014,1026,1039,1050,1058,
+1065,1070,1074,1078,1082,1088,1094,1100,1104,1107,1109,1112,1115,1121,1129,1141,1155,1171,1188,1205,1222,
+1238,1255,1272,1289,1306,1323,1340,1351,1380,1411,1445,1482,1521,1562,1602,1639,1671,1697,1717,1732,1741,
+1748,1752,1755,1758,1760,1761,1760,1758,1754,1750,1746,1744,1744,1745,1748,1752,1755,1759,1762,1765,1769,
+1773,1779,1786,1794,1803,1812,1822,1832,1842,1854,1865,1877,1889,1901,1911,1922,1931,1941,1950,1960,1971,
+1981,1992,2004,2015,2027,2038,2049,2057,2061,2060,2053,2039,2020,1998,1977,1957,1944,1937,1936,1939,1945,
+1951,1956,1960,1964,1969,1976,1984,1994,2003,2010,2015,2018,2019,2021,2026,2033,2044,2055,2066,2075,2080,
+2081,2081,2079,2080,2082,2088,2094,2101,2107,2113,2118,2124,2133,2144,2158,2173,2188,2200,2209,2215,2220,
+2224,2228,2234,2240,2245,2247,2244,2238,2229,2219,2210,2207,2209,2217,2231,2251,2274,2301,2330,2362,2396,
+2431,2466,2500,2531,2558,2581,2600,2616,2631,2644,2658,2671,2685,2699,2713,2726,2739,2752,2766,2780,2796,
+2812,2829,2846,2862,2876,2887,2894,2897,2895,2890,2883,2876,2871,2868,2867,2868,2869,2869,2867,2863,2860,
+2858,2861,2869,2883,2901,2920,2936,2946,2950,2947,2939,2930,2921,2914,2912,2914,2920,2928,2938,2949,2962,
+2975,2987,2996,3001,2999,2991,2976,2959,2940,2925,2915,2911,2913,2918,2923,2926,2926,2923,2918,2912,2909,
+2910,2913,2920,2928,2936,2943,2948,2952,2954,2954,2952,2947,2939,2927,2912,2894,2875,2857,2842,2831,2823,
+2819,2818,2817,2816,2814,2810,2803,2793,2781,2767,2751,2735,2720,2706,2694,2684,2676,2668,2660,2653,2646,
+2639,2635,2632,2631,2631,2630,2627,2621,2611,2597,2580,2562,2543,2524,2504,2483,2461,2437,2411,2385,2358,
+2333,2309,2287,2266,2246,2227,2209,2193,2179,2169,2161,2157,2154,2151,2147,2140,2131,2119,2106,2091,2075,
+2058,2039,2019,1995,1969,1941,1911,1882,1853,1824,1796,1767,1739,1712,1685,1660,1638,1618,1602,1588,1574,
+1561,1546,1528,1508,1486,1463,1439,1415,1391,1367,1343,1319,1295,1270,1246,1223,1199,1175,1150,1123,1093,
+1061,1025,988,948,907,865,824,782,742,702,664,629,595,565,538,514,492,471,451,431,410,
+387,363,340,318,301,288,283,283,288,296,303,305,300,288,268,242,215,189,168,153,143,
+136,130,122,110,93,71,44,12,-26,-73,-131,-201,-283,-376,-474,-570,-659,-734,-794,-839,-873,
+-901,-930,-962,-998,-1036,-1072,-1101,-1120,-1130,-1134,-1137,-1146,-1166,-1201,-1251,-1312,-1379,-1448,-1513,-1573,-1626,
+-1673,-1716,-1756,-1795,-1832,-1865,-1893,-1914,-1930,-1941,-1948,-1954,-1963,-1976,-1993,-2015,-2040,-2066,-2092,-2115,-2134,
+-2147,-2156,-2161,-2165,-2170,-2179,-2193,-2214,-2241,-2275,-2315,-2359,-2406,-2455,-2505,-2555,-2605,-2655,-2703,-2749,-2793,
+-2833,-2871,-2906,-2939,-2970,-3001,-3030,-3059,-3087,-3114,-3139,-3163,-3186,-3208,-3228,-3248,-3267,-3286,-3305,-3326,-3350,
+-3377,-3407,-3439,-3472,-3504,-3534,-3560,-3583,-3602,-3620,-3636,-3653,-3670,-3687,-3705,-3721,-3735,-3747,-3759,-3769,-3780,
+-3793,-3808,-3825,-3843,-3862,-3880,-3897,-3913,-3927,-3940,-3952,-3963,-3973,-3983,-3993,-4005,-4020,-4036,-4055,-4074,-4092,
+-4107,-4118,-4124,-4125,-4124,-4121,-4120,-4122,-4127,-4134,-4143,-4151,-4157,-4161,-4163,-4164,-4166,-4170,-4177,-4185,-4195,
+-4205,-4215,-4224,-4235,-4249,-4266,-4288,-4313,-4341,-4367,-4391,-4409,-4421,-4427,-4428,-4427,-4425,-4423,-4420,-4416,-4409,
+-4400,-4388,-4374,-4360,-4348,-4340,-4336,-4336,-4338,-4340,-4341,-4339,-4333,-4326,-4317,-4309,-4302,-4296,-4292,-4287,-4282,
+-4276,-4269,-4261,-4252,-4242,-4233,-4224,-4215,-4205,-4196,-4186,-4175,-4165,-4155,-4146,-4137,-4130,-4125,-4123,-4125,-4130,
+-4140,-4153,-4168,-4182,-4194,-4202,-4205,-4205,-4202,-4198,-4194,-4191,-4190,-4191,-4193,-4197,-4203,-4212,-4224,-4239,-4257,
+-4277,-4297,-4315,-4330,-4342,-4353,-4363,-4374,-4388,-4405,-4425,-4445,-4465,-4483,-4498,-4512,-4524,-4536,-4550,-4566,-4584,
+-4602,-4620,-4636,-4652,-4666,-4680,-4695,-4711,-4728,-4745,-4762,-4779,-4795,-4810,-4824,-4837,-4850,-4860,-4869,-4874,-4876,
+-4876,-4874,-4873,-4875,-4880,-4888,-4900,-4913,-4927,-4940,-4952,-4964,-4974,-4985,-4995,-5005,-5013,-5020,-5026,-5029,-5031,
+-5033,-5036,-5039,-5045,-5051,-5057,-5062,-5065,-5068,-5069,-5070,-5071,-5072,-5074,-5075,-5075,-5074,-5072,-5069,-5066,-5064,
+-5062,-5060,-5057,-5053,-5048,-5042,-5035,-5028,-5022,-5017,-5014,-5013,-5011,-5009,-5006,-5001,-4995,-4989,-4983,-4977,-4972,
+-4968,-4963,-4958,-4953,-4947,-4940,-4933,-4927,-4919,-4911,-4902,-4891,-4880,-4870,-4860,-4852,-4846,-4842,-4839,-4836,-4832,
+-4828,-4822,-4817,-4812,-4807,-4804,-4801,-4798,-4793,-4788,-4781,-4774,-4767,-4761,-4757,-4755,-4754,-4753,-4752,-4749,-4745,
+-4740,-4734,-4727,-4719,-4712,-4704,-4696,-4688,-4680,-4672,-4663,-4654,-4644,-4633,-4621,-4608,-4595,-4583,-4573,-4566,-4561,
+-4560,-4560,-4561,-4560,-4557,-4552,-4545,-4537,-4528,-4520,-4512,-4504,-4496,-4487,-4476,-4464,-4450,-4436,-4423,-4411,-4401,
+-4393,-4387,-4381,-4376,-4369,-4362,-4353,-4344,-4334,-4322,-4311,-4299,-4286,-4274,-4262,-4251,-4241,-4233,-4228,-4223,-4220,
+-4217,-4214,-4209,-4201,-4191,-4179,-4164,-4149,-4133,-4119,-4107,-4098,-4092,-4089,-4089,-4090,-4092,-4093,-4093,-4090,-4085,
+-4078,-4069,-4058,-4046,-4034,-4022,-4009,-3997,-3986,-3976,-3968,-3963,-3959,-3958,-3959,-3960,-3962,-3963,-3963,-3961,-3959,
+-3955,-3950,-3944,-3937,-3929,-3919,-3907,-3895,-3881,-3867,-3853,-3840,-3828,-3816,-3805,-3794,-3783,-3772,-3760,-3748,-3736,
+-3723,-3710,-3696,-3680,-3664,-3647,-3630,-3612,-3595,-3578,-3562,-3547,-3532,-3518,-3504,-3489,-3475,-3460,-3444,-3427,-3410,
+-3393,-3377,-3361,-3347,-3335,-3324,-3314,-3303,-3292,-3279,-3265,-3250,-3235,-3221,-3210,-3200,-3193,-3187,-3181,-3175,-3168,
+-3159,-3148,-3137,-3126,-3114,-3102,-3089,-3074,-3059,-3043,-3026,-3011,-2998,-2988,-2980,-2975,-2971,-2967,-2962,-2956,-2948,
+-2939,-2929,-2919,-2909,-2898,-2888,-2876,-2864,-2850,-2836,-2822,-2807,-2794,-2781,-2768,-2756,-2744,-2731,-2718,-2704,-2690,
+-2676,-2663,-2650,-2638,-2627,-2616,-2605,-2595,-2586,-2576,-2566,-2556,-2544,-2531,-2516,-2500,-2485,-2470,-2456,-2444,-2433,
+-2423,-2412,-2399,-2386,-2373,-2359,-2347,-2337,-2329,-2321,-2314,-2305,-2295,-2283,-2270,-2257,-2245,-2233,-2222,-2210,-2197,
+-2181,-2163,-2143,-2123,-2104,-2087,-2073,-2061,-2049,-2037,-2022,-2004,-1982,-1958,-1932,-1906,-1879,-1853,-1828,-1803,-1780,
+-1759,-1742,-1729,-1721,-1715,-1709,-1700,-1684,-1660,-1629,-1592,-1553,-1516,-1483,-1458,-1440,-1426,-1413,-1400,-1384,-1365,
+-1344,-1324,-1305,-1288,-1274,-1261,-1248,-1233,-1215,-1196,-1176,-1156,-1138,-1121,-1105,-1088,-1070,-1048,-1024,-997,-969,
+-942,-915,-889,-864,-838,-810,-781,-750,-719,-689,-661,-635,-610,-584,-558,-528,-494,-458,-419,-379,-339,
+-300,-263,-226,-191,-157,-124,-92,-63,-34,-7,18,45,72,101,131,161,190,218,244,268,292,
+315,339,365,393,423,455,486,518,550,582,613,645,676,708,741,775,810,848,889,932,979,
+1028,1080,1133,1187,1241,1295,1350,1403,1456,1505,1549,1587,1619,1643,1661,1677,1691,1705,1722,1740,1760,
+1780,1798,1817,1835,1855,1879,1905,1934,1964,1992,2014,2030,2039,2043,2045,2047,2051,2059,2069,2078,2083,
+2083,2077,2069,2062,2060,2066,2081,2099,2116,2123,2111,2078,2023,1949,1865,1780,1703,1639,1592,1559,1538,
+1522,1507,1491,1474,1457,1444,1437,1439,1449,1466,1486,1505,1521,1532,1537,1538,1536,1534,1534,1537,1543,
+1553,1564,1575,1585,1594,1599,1601,1601,1599,1596,1592,1588,1584,1579,1574,1569,1564,1559,1555,1554,1554,
+1556,1559,1561,1562,1561,1558,1552,1545,1539,1533,1529,1526,1523,1521,1517,1511,1505,1497,1490,1483,1478,
+1473,1469,1465,1460,1455,1448,1441,1433,1424,1416,1407,1398,1389,1382,1376,1372,1371,1372,1374,1375,1375,
+1371,1363,1352,1340,1328,1318,1311,1306,1305,1303,1299,1293,1282,1267,1250,1232,1215,1201,1189,1181,1174,
+1169,1166,1163,1161,1160,1158,1156,1153,1146,1137,1125,1111,1097,1086,1077,1072,1071,1071,1071,1069,1065,
+1058,1050,1041,1034,1029,1026,1023,1021,1018,1013,1007,1000,994,989,986,985,985,985,983,981,978,
+975,972,969,968,966,964,961,958,953,949,946,944,943,944,946,948,950,951,951,950,950,
+950,951,952,954,958,963,969,978,988,999,1009,1019,1027,1034,1039,1045,1052,1059,1068,1077,1086,
+1094,1099,1104,1107,1112,1118,1127,1138,1152,1167,1183,1198,1213,1229,1245,1262,1281,1302,1325,1351,1367,
+1402,1439,1477,1516,1556,1594,1630,1664,1692,1715,1733,1746,1754,1760,1765,1769,1773,1777,1780,1782,1781,
+1778,1774,1769,1763,1758,1753,1748,1744,1740,1736,1733,1731,1732,1735,1742,1751,1762,1774,1788,1801,1814,
+1827,1840,1852,1864,1875,1886,1896,1905,1914,1923,1933,1943,1955,1969,1983,1997,2010,2021,2029,2034,2033,
+2027,2016,2001,1983,1964,1947,1933,1924,1921,1922,1926,1932,1936,1938,1939,1939,1939,1942,1946,1953,1961,
+1968,1973,1975,1976,1977,1980,1986,1995,2005,2017,2026,2032,2035,2035,2034,2034,2037,2042,2050,2058,2065,
+2070,2074,2077,2082,2090,2102,2117,2132,2147,2158,2166,2171,2175,2180,2186,2195,2204,2212,2214,2209,2197,
+2181,2162,2147,2138,2140,2152,2172,2200,2231,2262,2293,2323,2352,2381,2411,2442,2474,2505,2533,2559,2581,
+2599,2613,2625,2636,2646,2657,2668,2680,2694,2708,2723,2740,2756,2774,2791,2808,2825,2839,2851,2858,2861,
+2860,2856,2849,2843,2838,2836,2838,2841,2846,2850,2853,2854,2854,2856,2862,2872,2887,2905,2925,2944,2958,
+2967,2969,2968,2963,2959,2957,2958,2963,2971,2983,2998,3013,3029,3044,3056,3064,3065,3060,3049,3033,3015,
+2999,2987,2980,2979,2981,2984,2985,2982,2975,2965,2954,2943,2936,2932,2931,2933,2935,2937,2939,2939,2938,
+2937,2935,2932,2926,2915,2901,2882,2860,2837,2816,2799,2787,2780,2778,2779,2781,2783,2784,2784,2781,2776,
+2769,2760,2748,2734,2718,2701,2684,2667,2653,2640,2631,2623,2618,2615,2614,2614,2615,2615,2614,2611,2605,
+2596,2583,2566,2548,2527,2504,2480,2455,2429,2402,2375,2348,2322,2297,2271,2247,2222,2198,2174,2152,2133,
+2118,2109,2105,2104,2106,2108,2108,2103,2093,2079,2061,2041,2019,1998,1978,1959,1939,1920,1901,1880,1857,
+1833,1808,1782,1755,1728,1702,1678,1657,1639,1624,1612,1601,1590,1579,1566,1552,1535,1516,1496,1474,1450,
+1424,1397,1369,1341,1313,1287,1262,1238,1216,1192,1167,1139,1108,1073,1035,995,953,911,869,828,787,
+747,707,669,633,599,568,542,519,500,483,468,453,437,420,401,382,364,349,339,336,339,
+347,359,370,378,379,372,357,335,309,282,256,233,214,196,180,163,145,125,106,86,65,
+40,9,-32,-86,-156,-239,-331,-426,-518,-601,-672,-731,-780,-823,-864,-906,-949,-990,-1027,-1056,-1077,
+-1090,-1099,-1109,-1125,-1151,-1191,-1242,-1302,-1365,-1428,-1486,-1539,-1585,-1627,-1666,-1704,-1742,-1779,-1813,-1843,-1867,
+-1884,-1895,-1902,-1905,-1908,-1913,-1920,-1932,-1947,-1965,-1985,-2005,-2025,-2043,-2060,-2075,-2089,-2105,-2123,-2146,-2173,
+-2206,-2244,-2285,-2329,-2375,-2422,-2469,-2518,-2567,-2616,-2666,-2715,-2762,-2807,-2848,-2886,-2920,-2950,-2977,-3002,-3026,
+-3048,-3070,-3092,-3114,-3135,-3154,-3172,-3189,-3204,-3219,-3236,-3255,-3279,-3309,-3343,-3380,-3418,-3454,-3486,-3512,-3532,
+-3547,-3560,-3571,-3584,-3598,-3615,-3631,-3647,-3660,-3670,-3677,-3683,-3689,-3696,-3706,-3718,-3733,-3749,-3764,-3779,-3793,
+-3806,-3817,-3827,-3837,-3847,-3858,-3870,-3886,-3905,-3929,-3957,-3988,-4020,-4050,-4076,-4098,-4114,-4126,-4137,-4149,-4163,
+-4181,-4200,-4220,-4238,-4252,-4260,-4263,-4264,-4263,-4264,-4267,-4272,-4279,-4286,-4292,-4297,-4302,-4308,-4318,-4332,-4350,
+-4371,-4393,-4413,-4428,-4438,-4442,-4443,-4443,-4443,-4444,-4448,-4451,-4453,-4451,-4447,-4440,-4432,-4425,-4422,-4423,-4428,
+-4435,-4441,-4444,-4443,-4437,-4428,-4417,-4405,-4396,-4388,-4383,-4378,-4374,-4368,-4360,-4351,-4339,-4327,-4314,-4301,-4288,
+-4275,-4263,-4253,-4243,-4235,-4228,-4222,-4216,-4211,-4206,-4202,-4200,-4201,-4206,-4214,-4226,-4240,-4254,-4266,-4274,-4279,
+-4281,-4281,-4279,-4278,-4277,-4276,-4277,-4278,-4280,-4285,-4292,-4302,-4317,-4334,-4354,-4375,-4394,-4412,-4427,-4440,-4452,
+-4464,-4478,-4492,-4507,-4522,-4536,-4549,-4562,-4574,-4588,-4602,-4620,-4639,-4659,-4679,-4699,-4717,-4732,-4746,-4758,-4770,
+-4781,-4794,-4808,-4825,-4843,-4862,-4882,-4902,-4920,-4934,-4944,-4949,-4952,-4952,-4953,-4955,-4960,-4968,-4977,-4986,-4994,
+-5001,-5005,-5008,-5012,-5017,-5026,-5038,-5052,-5067,-5079,-5088,-5092,-5092,-5089,-5084,-5079,-5075,-5073,-5072,-5072,-5074,
+-5076,-5078,-5081,-5084,-5088,-5091,-5095,-5097,-5098,-5098,-5097,-5096,-5095,-5094,-5093,-5092,-5090,-5087,-5083,-5077,-5072,
+-5068,-5064,-5061,-5058,-5055,-5051,-5046,-5040,-5034,-5028,-5022,-5017,-5014,-5010,-5007,-5003,-4999,-4995,-4990,-4985,-4980,
+-4973,-4965,-4956,-4945,-4934,-4924,-4915,-4909,-4906,-4905,-4905,-4905,-4902,-4898,-4891,-4882,-4873,-4865,-4858,-4854,-4850,
+-4848,-4844,-4840,-4835,-4829,-4823,-4818,-4815,-4813,-4812,-4812,-4813,-4812,-4811,-4807,-4802,-4796,-4788,-4780,-4772,-4764,
+-4757,-4750,-4744,-4738,-4731,-4721,-4710,-4696,-4680,-4665,-4651,-4639,-4632,-4628,-4626,-4625,-4623,-4619,-4613,-4605,-4596,
+-4588,-4582,-4578,-4576,-4574,-4573,-4569,-4562,-4553,-4541,-4528,-4515,-4502,-4491,-4481,-4472,-4463,-4454,-4445,-4434,-4423,
+-4411,-4399,-4386,-4374,-4360,-4347,-4332,-4319,-4305,-4294,-4285,-4278,-4273,-4269,-4266,-4261,-4255,-4246,-4235,-4221,-4206,
+-4191,-4176,-4163,-4153,-4145,-4140,-4137,-4136,-4136,-4136,-4136,-4135,-4133,-4129,-4124,-4117,-4108,-4098,-4087,-4075,-4063,
+-4050,-4038,-4028,-4018,-4011,-4005,-4001,-3997,-3995,-3993,-3991,-3990,-3989,-3988,-3987,-3986,-3985,-3981,-3975,-3967,-3955,
+-3941,-3926,-3909,-3893,-3877,-3863,-3850,-3839,-3828,-3818,-3808,-3797,-3786,-3774,-3761,-3746,-3730,-3713,-3695,-3676,-3658,
+-3639,-3621,-3604,-3587,-3571,-3555,-3539,-3523,-3506,-3489,-3471,-3454,-3436,-3420,-3404,-3390,-3377,-3365,-3354,-3342,-3329,
+-3316,-3302,-3288,-3275,-3262,-3252,-3243,-3235,-3228,-3220,-3212,-3202,-3191,-3180,-3169,-3159,-3150,-3141,-3131,-3121,-3108,
+-3093,-3078,-3061,-3046,-3032,-3021,-3013,-3006,-3000,-2994,-2988,-2981,-2973,-2964,-2956,-2948,-2940,-2932,-2922,-2912,-2899,
+-2885,-2870,-2855,-2841,-2827,-2814,-2801,-2788,-2775,-2761,-2746,-2731,-2715,-2700,-2686,-2673,-2660,-2649,-2638,-2628,-2619,
+-2611,-2603,-2594,-2584,-2573,-2560,-2545,-2530,-2514,-2499,-2484,-2471,-2458,-2446,-2433,-2420,-2408,-2396,-2385,-2375,-2366,
+-2357,-2347,-2336,-2323,-2309,-2294,-2280,-2267,-2257,-2248,-2240,-2230,-2218,-2203,-2186,-2168,-2150,-2135,-2122,-2111,-2101,
+-2089,-2074,-2055,-2033,-2008,-1983,-1958,-1935,-1913,-1889,-1864,-1836,-1805,-1776,-1750,-1730,-1718,-1713,-1712,-1711,-1704,
+-1688,-1662,-1627,-1588,-1549,-1515,-1489,-1471,-1459,-1449,-1438,-1423,-1403,-1379,-1354,-1330,-1309,-1291,-1276,-1261,-1244,
+-1225,-1204,-1181,-1158,-1136,-1118,-1102,-1087,-1072,-1054,-1033,-1009,-983,-955,-928,-900,-874,-847,-819,-791,-762,
+-733,-704,-677,-651,-626,-601,-573,-543,-509,-472,-432,-392,-351,-311,-273,-237,-202,-169,-137,-106,-77,
+-49,-23,2,28,54,82,110,138,167,194,220,245,270,295,320,347,375,405,435,465,497,
+528,561,593,627,661,696,733,772,815,861,913,968,1026,1084,1141,1194,1242,1286,1326,1364,1402,
+1440,1478,1514,1547,1574,1596,1611,1624,1635,1648,1665,1685,1707,1729,1750,1769,1786,1803,1821,1843,1868,
+1896,1924,1949,1969,1981,1987,1988,1988,1989,1993,1998,2003,2006,2004,1999,1992,1987,1988,1996,2013,2033,
+2050,2056,2043,2006,1945,1866,1776,1685,1604,1539,1494,1466,1451,1445,1440,1433,1423,1411,1398,1388,1384,
+1386,1395,1408,1424,1441,1456,1467,1476,1481,1484,1486,1487,1489,1492,1495,1499,1503,1506,1507,1507,1505,
+1502,1499,1497,1497,1498,1500,1501,1502,1501,1499,1496,1494,1492,1493,1495,1499,1503,1506,1507,1506,1503,
+1499,1495,1492,1489,1486,1482,1477,1470,1462,1453,1444,1437,1431,1427,1424,1420,1415,1409,1401,1392,1383,
+1374,1366,1358,1350,1342,1334,1325,1317,1309,1304,1300,1298,1296,1292,1288,1281,1273,1264,1256,1250,1245,
+1242,1239,1235,1229,1221,1210,1198,1187,1176,1168,1161,1155,1149,1142,1134,1126,1117,1110,1104,1100,1096,
+1092,1086,1079,1070,1060,1051,1044,1039,1037,1036,1035,1034,1030,1025,1018,1011,1005,999,994,990,985,
+978,971,963,955,950,947,946,947,949,950,949,947,943,940,937,936,937,938,939,939,937,
+934,930,925,921,918,917,917,918,919,920,921,923,925,928,931,934,938,942,947,952,959,
+966,974,983,992,1000,1009,1017,1025,1033,1043,1053,1063,1072,1080,1088,1094,1100,1106,1114,1125,1137,
+1150,1164,1178,1192,1206,1220,1236,1255,1278,1304,1334,1367,1380,1418,1457,1495,1533,1571,1606,1640,1671,
+1697,1718,1734,1744,1749,1752,1752,1753,1754,1756,1758,1761,1763,1764,1763,1760,1755,1748,1741,1732,1724,
+1715,1707,1702,1699,1699,1703,1711,1723,1737,1752,1767,1782,1796,1809,1821,1832,1842,1852,1862,1872,1882,
+1892,1904,1917,1931,1946,1962,1977,1990,2000,2005,2005,1999,1988,1972,1953,1935,1918,1905,1899,1898,1902,
+1910,1919,1927,1931,1930,1927,1921,1915,1911,1910,1913,1919,1925,1931,1935,1937,1938,1941,1945,1951,1960,
+1970,1978,1984,1986,1986,1985,1985,1988,1995,2004,2014,2024,2030,2034,2035,2037,2040,2047,2059,2074,2089,
+2103,2114,2121,2126,2131,2138,2147,2158,2168,2174,2171,2158,2135,2108,2081,2061,2054,2063,2089,2127,2172,
+2218,2261,2296,2323,2345,2363,2382,2402,2427,2454,2482,2510,2535,2556,2573,2586,2596,2606,2615,2625,2636,
+2648,2661,2675,2690,2705,2721,2738,2755,2772,2787,2800,2809,2814,2815,2812,2807,2801,2798,2797,2799,2805,
+2813,2823,2832,2841,2849,2858,2869,2882,2898,2916,2935,2955,2972,2986,2996,3002,3006,3007,3008,3008,3009,
+3012,3016,3023,3031,3041,3050,3058,3063,3065,3062,3057,3050,3044,3040,3040,3043,3047,3050,3049,3044,3033,
+3019,3003,2989,2978,2971,2968,2968,2967,2964,2958,2950,2939,2929,2920,2913,2906,2898,2887,2872,2851,2826,
+2800,2774,2752,2736,2726,2721,2720,2722,2725,2728,2732,2736,2739,2742,2744,2742,2736,2725,2710,2691,2669,
+2648,2628,2611,2599,2591,2586,2585,2585,2587,2587,2587,2584,2578,2569,2556,2539,2518,2494,2468,2439,2409,
+2378,2348,2319,2291,2264,2238,2213,2188,2163,2139,2116,2096,2080,2068,2062,2061,2063,2066,2068,2066,2059,
+2045,2027,2004,1980,1956,1934,1915,1899,1886,1874,1862,1848,1831,1810,1785,1757,1727,1696,1667,1639,1614,
+1592,1573,1556,1541,1528,1515,1503,1492,1482,1472,1461,1449,1433,1414,1391,1365,1337,1308,1280,1254,1229,
+1205,1181,1155,1126,1095,1060,1024,986,948,910,872,835,796,758,720,682,646,613,584,558,536,
+517,501,486,471,457,443,430,417,405,396,390,386,385,386,386,386,381,372,357,336,311,
+283,254,226,198,172,146,120,96,72,51,33,18,7,-4,-18,-41,-75,-124,-187,-262,-345,
+-430,-511,-585,-651,-708,-757,-802,-844,-883,-920,-954,-984,-1009,-1031,-1053,-1076,-1103,-1137,-1176,-1221,-1268,
+-1316,-1362,-1406,-1448,-1490,-1532,-1575,-1621,-1667,-1712,-1754,-1791,-1822,-1846,-1863,-1875,-1882,-1886,-1888,-1891,-1895,
+-1901,-1909,-1921,-1935,-1951,-1968,-1986,-2005,-2023,-2042,-2062,-2084,-2110,-2140,-2175,-2213,-2256,-2301,-2348,-2398,-2448,
+-2500,-2552,-2604,-2657,-2708,-2757,-2805,-2849,-2891,-2929,-2964,-2995,-3024,-3050,-3074,-3096,-3116,-3133,-3149,-3162,-3174,
+-3184,-3195,-3207,-3222,-3242,-3266,-3294,-3325,-3354,-3382,-3404,-3422,-3434,-3444,-3454,-3465,-3480,-3497,-3517,-3536,-3554,
+-3568,-3578,-3586,-3592,-3597,-3604,-3611,-3620,-3629,-3637,-3644,-3651,-3657,-3665,-3676,-3690,-3708,-3728,-3749,-3772,-3795,
+-3819,-3846,-3875,-3908,-3943,-3978,-4013,-4045,-4073,-4099,-4123,-4146,-4171,-4199,-4228,-4256,-4283,-4304,-4319,-4329,-4335,
+-4339,-4342,-4348,-4356,-4364,-4372,-4377,-4379,-4379,-4378,-4378,-4381,-4389,-4401,-4415,-4429,-4442,-4450,-4456,-4458,-4460,
+-4462,-4466,-4472,-4478,-4483,-4487,-4487,-4486,-4485,-4486,-4491,-4500,-4512,-4524,-4535,-4541,-4542,-4536,-4526,-4513,-4501,
+-4490,-4482,-4477,-4474,-4471,-4467,-4460,-4452,-4440,-4427,-4412,-4396,-4380,-4363,-4348,-4334,-4322,-4313,-4307,-4303,-4301,
+-4299,-4296,-4292,-4288,-4284,-4284,-4286,-4293,-4303,-4314,-4326,-4337,-4345,-4350,-4352,-4353,-4354,-4354,-4355,-4356,-4357,
+-4358,-4359,-4361,-4366,-4373,-4384,-4399,-4417,-4437,-4457,-4477,-4495,-4511,-4525,-4538,-4550,-4562,-4574,-4587,-4599,-4612,
+-4625,-4640,-4656,-4674,-4694,-4715,-4738,-4760,-4781,-4799,-4814,-4825,-4834,-4840,-4847,-4857,-4869,-4886,-4907,-4930,-4954,
+-4976,-4993,-5005,-5012,-5016,-5019,-5023,-5030,-5041,-5055,-5070,-5083,-5091,-5095,-5093,-5088,-5083,-5080,-5084,-5093,-5107,
+-5125,-5142,-5156,-5165,-5167,-5163,-5155,-5143,-5132,-5121,-5112,-5105,-5102,-5101,-5102,-5105,-5109,-5113,-5118,-5122,-5124,
+-5126,-5126,-5125,-5124,-5124,-5124,-5124,-5125,-5124,-5123,-5121,-5117,-5114,-5110,-5107,-5103,-5100,-5096,-5092,-5087,-5082,
+-5077,-5072,-5069,-5066,-5064,-5061,-5058,-5055,-5050,-5046,-5041,-5037,-5032,-5027,-5021,-5013,-5004,-4995,-4985,-4977,-4972,
+-4969,-4969,-4969,-4970,-4969,-4965,-4959,-4950,-4941,-4932,-4924,-4918,-4914,-4911,-4908,-4904,-4899,-4894,-4888,-4882,-4878,
+-4875,-4873,-4872,-4872,-4872,-4871,-4868,-4864,-4858,-4851,-4842,-4833,-4825,-4817,-4811,-4807,-4803,-4800,-4795,-4788,-4779,
+-4768,-4755,-4742,-4730,-4719,-4711,-4704,-4698,-4692,-4684,-4675,-4666,-4656,-4647,-4640,-4636,-4635,-4634,-4634,-4633,-4630,
+-4624,-4617,-4608,-4598,-4589,-4580,-4572,-4564,-4555,-4545,-4533,-4521,-4508,-4495,-4483,-4470,-4458,-4445,-4432,-4418,-4403,
+-4388,-4373,-4359,-4347,-4337,-4329,-4321,-4314,-4307,-4298,-4288,-4276,-4262,-4248,-4234,-4220,-4207,-4196,-4187,-4179,-4174,
+-4171,-4169,-4167,-4167,-4167,-4167,-4165,-4163,-4159,-4154,-4146,-4137,-4125,-4113,-4100,-4087,-4075,-4064,-4055,-4047,-4040,
+-4033,-4028,-4023,-4019,-4017,-4016,-4017,-4019,-4020,-4021,-4019,-4014,-4006,-3995,-3980,-3964,-3947,-3931,-3915,-3901,-3889,
+-3878,-3868,-3858,-3847,-3836,-3823,-3808,-3792,-3775,-3756,-3737,-3717,-3697,-3678,-3660,-3642,-3624,-3607,-3589,-3571,-3553,
+-3534,-3515,-3497,-3480,-3464,-3450,-3437,-3425,-3413,-3401,-3387,-3372,-3357,-3341,-3326,-3312,-3300,-3291,-3283,-3277,-3270,
+-3262,-3252,-3240,-3227,-3213,-3201,-3190,-3181,-3173,-3166,-3159,-3150,-3140,-3127,-3113,-3098,-3084,-3072,-3061,-3051,-3042,
+-3034,-3025,-3016,-3008,-2999,-2992,-2986,-2980,-2974,-2967,-2958,-2948,-2935,-2921,-2906,-2890,-2876,-2861,-2848,-2834,-2820,
+-2805,-2790,-2774,-2758,-2741,-2725,-2710,-2695,-2681,-2668,-2656,-2645,-2635,-2626,-2617,-2608,-2598,-2587,-2575,-2561,-2548,
+-2534,-2520,-2507,-2494,-2481,-2467,-2453,-2439,-2425,-2413,-2401,-2391,-2382,-2372,-2362,-2350,-2336,-2322,-2307,-2294,-2284,
+-2275,-2268,-2260,-2250,-2238,-2224,-2209,-2194,-2181,-2171,-2162,-2154,-2143,-2128,-2107,-2082,-2055,-2028,-2004,-1984,-1967,
+-1950,-1930,-1903,-1867,-1826,-1782,-1742,-1711,-1693,-1689,-1694,-1703,-1707,-1701,-1681,-1649,-1609,-1567,-1529,-1501,-1484,
+-1475,-1471,-1467,-1457,-1440,-1417,-1389,-1360,-1334,-1311,-1292,-1275,-1258,-1239,-1216,-1191,-1166,-1142,-1120,-1103,-1088,
+-1074,-1059,-1043,-1022,-999,-973,-946,-919,-892,-865,-838,-810,-781,-751,-722,-693,-665,-638,-612,-585,-557,
+-526,-494,-460,-424,-388,-352,-316,-281,-246,-212,-179,-146,-115,-84,-54,-25,3,31,59,86,113,
+139,165,190,215,241,269,298,327,358,388,417,446,475,504,534,567,601,639,680,725,774,
+828,886,948,1012,1076,1137,1192,1240,1280,1313,1341,1367,1393,1421,1451,1481,1509,1533,1552,1566,1579,
+1591,1607,1626,1650,1677,1702,1725,1743,1756,1766,1777,1791,1809,1832,1857,1883,1904,1918,1926,1927,1923,
+1918,1913,1909,1907,1906,1905,1904,1906,1912,1922,1939,1957,1974,1983,1976,1949,1901,1835,1755,1673,1596,
+1532,1485,1456,1441,1435,1432,1426,1416,1401,1383,1365,1350,1340,1337,1340,1350,1364,1382,1402,1422,1442,
+1459,1473,1483,1487,1487,1482,1475,1466,1458,1450,1443,1438,1434,1431,1431,1433,1438,1444,1452,1460,1466,
+1469,1469,1466,1462,1457,1454,1453,1453,1456,1458,1460,1461,1460,1458,1455,1453,1452,1450,1448,1446,1441,
+1435,1428,1420,1412,1404,1397,1389,1380,1369,1358,1345,1333,1322,1315,1310,1307,1305,1302,1297,1289,1278,
+1265,1253,1242,1233,1227,1224,1221,1219,1216,1212,1206,1201,1195,1189,1184,1177,1170,1162,1154,1145,1137,
+1130,1124,1119,1115,1110,1104,1096,1088,1079,1072,1065,1060,1056,1053,1048,1042,1036,1029,1022,1017,1014,
+1012,1011,1009,1006,1001,994,986,977,970,963,956,950,944,937,929,921,914,909,906,905,906,
+908,908,908,906,904,902,901,902,905,907,910,910,909,906,901,896,892,889,888,888,889,
+890,892,894,898,902,907,913,919,924,929,933,937,941,947,953,962,972,983,994,1005,1016,
+1026,1036,1045,1054,1062,1069,1077,1084,1092,1101,1111,1122,1134,1147,1160,1173,1185,1199,1214,1232,1253,
+1279,1310,1344,1380,1377,1415,1453,1490,1527,1563,1598,1631,1661,1687,1707,1720,1727,1727,1723,1716,1709,
+1703,1698,1697,1698,1699,1701,1703,1702,1700,1697,1692,1687,1682,1677,1674,1673,1673,1677,1684,1694,1705,
+1719,1734,1749,1763,1776,1787,1797,1806,1815,1823,1833,1844,1856,1869,1884,1901,1917,1934,1949,1962,1971,
+1976,1974,1967,1953,1935,1914,1893,1874,1861,1855,1856,1864,1876,1889,1901,1908,1909,1905,1898,1888,1880,
+1875,1875,1877,1883,1889,1894,1897,1900,1902,1905,1911,1918,1927,1934,1940,1942,1942,1939,1937,1938,1942,
+1949,1959,1970,1978,1983,1985,1985,1986,1990,1999,2012,2027,2043,2057,2068,2076,2083,2090,2100,2113,2125,
+2134,2135,2124,2102,2070,2035,2004,1987,1988,2011,2054,2110,2172,2231,2280,2316,2339,2352,2359,2367,2377,
+2393,2414,2439,2464,2487,2507,2524,2537,2548,2557,2567,2576,2586,2597,2607,2617,2628,2640,2654,2669,2685,
+2703,2720,2736,2749,2758,2764,2766,2765,2763,2762,2762,2764,2770,2778,2789,2802,2816,2830,2844,2859,2875,
+2893,2912,2932,2954,2977,2999,3020,3037,3049,3056,3056,3051,3042,3030,3019,3010,3005,3003,3005,3010,3015,
+3020,3025,3031,3039,3049,3063,3079,3094,3107,3114,3112,3102,3086,3066,3047,3032,3023,3021,3022,3023,3021,
+3012,2997,2975,2952,2928,2908,2893,2882,2872,2860,2844,2823,2796,2766,2736,2709,2687,2672,2662,2658,2656,
+2657,2661,2666,2675,2686,2700,2714,2726,2734,2735,2727,2711,2689,2662,2634,2608,2585,2568,2556,2549,2546,
+2546,2546,2546,2544,2539,2530,2517,2500,2477,2451,2421,2389,2356,2323,2290,2260,2231,2204,2179,2155,2132,
+2111,2093,2076,2062,2052,2045,2040,2038,2035,2032,2026,2016,2003,1985,1965,1944,1922,1902,1885,1870,1857,
+1846,1835,1821,1804,1782,1756,1725,1691,1656,1622,1589,1560,1533,1509,1487,1466,1447,1428,1412,1399,1390,
+1385,1383,1383,1382,1378,1369,1354,1334,1310,1284,1258,1232,1207,1183,1158,1132,1103,1073,1040,1007,974,
+940,907,874,841,807,773,739,706,676,648,623,600,578,557,535,513,491,469,449,433,419,
+409,400,392,384,373,359,343,323,301,277,252,226,200,174,148,122,95,69,42,15,-11,
+-35,-56,-73,-86,-94,-101,-108,-121,-141,-173,-218,-274,-340,-412,-485,-556,-621,-678,-727,-767,-800,
+-828,-853,-876,-899,-925,-953,-984,-1019,-1055,-1092,-1128,-1162,-1193,-1221,-1249,-1279,-1314,-1354,-1401,-1454,-1510,
+-1568,-1624,-1675,-1721,-1760,-1794,-1822,-1846,-1866,-1882,-1895,-1905,-1913,-1919,-1925,-1931,-1939,-1948,-1960,-1971,-1982,
+-1992,-2001,-2009,-2018,-2029,-2045,-2068,-2099,-2138,-2184,-2236,-2292,-2350,-2408,-2465,-2520,-2573,-2626,-2677,-2729,-2782,
+-2835,-2887,-2938,-2985,-3028,-3065,-3096,-3121,-3140,-3155,-3167,-3176,-3185,-3193,-3201,-3211,-3222,-3235,-3249,-3263,-3275,
+-3286,-3294,-3300,-3304,-3310,-3318,-3329,-3347,-3368,-3393,-3418,-3441,-3460,-3475,-3487,-3496,-3505,-3515,-3527,-3538,-3548,
+-3554,-3556,-3554,-3551,-3549,-3553,-3565,-3587,-3616,-3652,-3689,-3725,-3757,-3784,-3808,-3830,-3853,-3878,-3907,-3938,-3971,
+-4003,-4035,-4065,-4095,-4125,-4156,-4189,-4222,-4254,-4282,-4307,-4326,-4342,-4356,-4369,-4384,-4399,-4414,-4428,-4438,-4443,
+-4443,-4440,-4436,-4432,-4432,-4435,-4442,-4451,-4460,-4468,-4475,-4480,-4485,-4490,-4496,-4503,-4510,-4516,-4520,-4524,-4526,
+-4530,-4537,-4548,-4563,-4580,-4598,-4612,-4622,-4624,-4620,-4611,-4598,-4586,-4574,-4566,-4561,-4558,-4555,-4553,-4549,-4543,
+-4535,-4525,-4512,-4498,-4481,-4463,-4443,-4425,-4408,-4394,-4385,-4379,-4376,-4375,-4373,-4371,-4367,-4363,-4360,-4359,-4362,
+-4368,-4377,-4389,-4400,-4410,-4418,-4423,-4427,-4429,-4431,-4432,-4434,-4436,-4437,-4437,-4436,-4435,-4436,-4440,-4448,-4461,
+-4477,-4496,-4516,-4536,-4555,-4572,-4587,-4601,-4615,-4628,-4642,-4657,-4671,-4686,-4701,-4715,-4731,-4748,-4766,-4787,-4809,
+-4831,-4852,-4871,-4886,-4897,-4905,-4912,-4919,-4929,-4943,-4961,-4982,-5005,-5027,-5046,-5060,-5070,-5077,-5084,-5094,-5107,
+-5124,-5145,-5166,-5185,-5197,-5202,-5200,-5192,-5181,-5172,-5167,-5169,-5177,-5190,-5206,-5221,-5232,-5238,-5238,-5233,-5224,
+-5212,-5199,-5186,-5176,-5167,-5160,-5156,-5153,-5152,-5152,-5152,-5151,-5150,-5148,-5146,-5144,-5143,-5143,-5144,-5146,-5148,
+-5149,-5150,-5150,-5148,-5147,-5145,-5143,-5141,-5140,-5138,-5136,-5133,-5130,-5128,-5126,-5124,-5123,-5121,-5119,-5115,-5110,
+-5105,-5099,-5094,-5090,-5086,-5083,-5080,-5076,-5071,-5064,-5056,-5049,-5042,-5037,-5033,-5031,-5030,-5028,-5026,-5021,-5016,
+-5010,-5004,-4998,-4993,-4988,-4983,-4978,-4972,-4966,-4960,-4954,-4948,-4943,-4940,-4937,-4935,-4933,-4930,-4927,-4923,-4918,
+-4912,-4906,-4898,-4890,-4882,-4875,-4868,-4864,-4860,-4858,-4857,-4855,-4852,-4847,-4839,-4830,-4820,-4809,-4799,-4789,-4780,
+-4770,-4761,-4751,-4740,-4730,-4719,-4710,-4701,-4694,-4688,-4682,-4677,-4671,-4665,-4660,-4655,-4650,-4647,-4644,-4641,-4637,
+-4631,-4624,-4615,-4604,-4591,-4579,-4566,-4554,-4542,-4530,-4517,-4504,-4489,-4473,-4456,-4439,-4423,-4407,-4393,-4381,-4370,
+-4360,-4351,-4341,-4331,-4320,-4307,-4293,-4278,-4263,-4248,-4234,-4222,-4211,-4203,-4198,-4194,-4193,-4193,-4194,-4195,-4196,
+-4197,-4195,-4192,-4186,-4178,-4167,-4156,-4143,-4131,-4119,-4109,-4099,-4091,-4083,-4075,-4068,-4062,-4057,-4054,-4052,-4052,
+-4053,-4054,-4054,-4053,-4049,-4041,-4030,-4017,-4002,-3986,-3970,-3955,-3942,-3929,-3918,-3906,-3894,-3882,-3868,-3852,-3835,
+-3816,-3796,-3776,-3755,-3735,-3715,-3696,-3678,-3660,-3642,-3623,-3604,-3584,-3564,-3545,-3527,-3511,-3496,-3484,-3472,-3461,
+-3449,-3436,-3422,-3406,-3390,-3373,-3358,-3345,-3335,-3326,-3319,-3312,-3304,-3294,-3283,-3270,-3256,-3243,-3232,-3222,-3215,
+-3208,-3201,-3194,-3184,-3173,-3160,-3146,-3133,-3120,-3109,-3099,-3090,-3081,-3071,-3061,-3051,-3042,-3034,-3027,-3021,-3015,
+-3008,-3001,-2991,-2979,-2965,-2950,-2935,-2920,-2905,-2890,-2875,-2860,-2845,-2829,-2812,-2796,-2780,-2764,-2749,-2733,-2717,
+-2702,-2686,-2670,-2656,-2642,-2630,-2619,-2608,-2597,-2586,-2574,-2563,-2551,-2540,-2530,-2519,-2509,-2497,-2484,-2469,-2453,
+-2438,-2423,-2410,-2399,-2389,-2380,-2370,-2360,-2348,-2337,-2326,-2316,-2307,-2300,-2292,-2283,-2271,-2258,-2243,-2228,-2215,
+-2206,-2199,-2193,-2186,-2174,-2155,-2130,-2101,-2070,-2043,-2021,-2006,-1994,-1981,-1962,-1932,-1890,-1840,-1786,-1737,-1700,
+-1681,-1679,-1690,-1705,-1715,-1713,-1692,-1655,-1607,-1556,-1512,-1480,-1463,-1461,-1466,-1473,-1475,-1468,-1450,-1425,-1395,
+-1366,-1339,-1317,-1298,-1281,-1262,-1240,-1214,-1188,-1161,-1136,-1115,-1097,-1081,-1066,-1050,-1032,-1011,-988,-964,-939,
+-914,-890,-865,-839,-812,-783,-752,-720,-689,-659,-630,-602,-575,-549,-523,-496,-469,-440,-411,-380,-348,
+-314,-280,-244,-207,-170,-133,-98,-63,-30,0,30,57,82,106,130,154,179,207,237,269,302,
+335,367,397,426,454,481,510,542,579,620,667,719,776,837,902,968,1034,1097,1154,1205,1247,
+1282,1311,1336,1359,1383,1408,1433,1457,1478,1495,1508,1520,1533,1549,1573,1603,1639,1676,1711,1739,1757,
+1767,1769,1767,1767,1770,1779,1793,1810,1825,1837,1843,1842,1837,1828,1818,1810,1803,1800,1802,1808,1820,
+1838,1860,1882,1902,1913,1908,1885,1843,1783,1713,1639,1572,1519,1483,1463,1457,1457,1458,1453,1440,1419,
+1392,1364,1338,1317,1304,1297,1296,1301,1310,1324,1342,1363,1388,1414,1437,1456,1468,1473,1469,1460,1448,
+1434,1421,1410,1402,1397,1394,1393,1395,1399,1405,1413,1422,1429,1435,1437,1436,1433,1428,1423,1420,1419,
+1419,1420,1422,1422,1422,1420,1419,1417,1416,1416,1415,1414,1412,1408,1402,1396,1388,1380,1370,1359,1346,
+1329,1311,1293,1276,1261,1252,1248,1247,1249,1251,1250,1245,1235,1222,1206,1191,1178,1169,1163,1160,1158,
+1156,1153,1148,1142,1135,1128,1120,1113,1107,1100,1093,1086,1079,1072,1065,1060,1054,1049,1045,1040,1036,
+1032,1028,1025,1022,1018,1015,1010,1004,998,992,987,984,982,980,978,975,970,963,955,945,936,
+927,920,914,908,902,895,888,881,874,869,866,865,865,865,865,865,864,864,863,864,866,
+868,870,871,870,867,863,859,856,854,854,856,858,861,864,867,870,874,878,884,890,897,
+903,909,914,918,922,928,936,947,959,972,986,1000,1011,1021,1030,1037,1044,1051,1058,1066,1074,
+1083,1093,1104,1115,1126,1138,1149,1161,1173,1186,1202,1222,1245,1273,1305,1340,1377,1356,1393,1430,1466,
+1502,1537,1570,1601,1629,1652,1670,1680,1684,1681,1673,1663,1652,1642,1635,1630,1629,1629,1629,1630,1630,
+1631,1631,1632,1634,1638,1643,1649,1656,1664,1671,1679,1688,1699,1710,1723,1736,1749,1762,1774,1784,1794,
+1803,1813,1824,1836,1850,1865,1881,1896,1911,1925,1936,1944,1948,1949,1944,1935,1920,1903,1882,1862,1845,
+1832,1825,1825,1831,1840,1851,1860,1866,1867,1863,1857,1851,1846,1844,1844,1848,1853,1857,1861,1863,1865,
+1867,1871,1876,1883,1891,1897,1900,1901,1899,1896,1894,1894,1897,1903,1910,1918,1923,1926,1928,1929,1933,
+1940,1951,1966,1983,1999,2013,2024,2034,2043,2054,2068,2082,2095,2102,2098,2083,2057,2024,1992,1970,1963,
+1978,2015,2070,2134,2198,2255,2298,2325,2339,2343,2343,2346,2354,2368,2387,2409,2430,2448,2462,2473,2482,
+2490,2498,2508,2518,2528,2537,2546,2554,2562,2571,2582,2596,2611,2629,2647,2665,2682,2697,2709,2719,2727,
+2732,2736,2740,2743,2748,2754,2762,2772,2785,2800,2816,2833,2851,2870,2891,2915,2941,2970,3000,3029,3055,
+3073,3082,3081,3070,3052,3029,3007,2988,2976,2971,2972,2978,2987,2997,3009,3024,3043,3067,3096,3127,3158,
+3184,3201,3206,3198,3180,3157,3134,3115,3102,3097,3095,3092,3085,3069,3045,3013,2978,2944,2914,2891,2874,
+2860,2845,2827,2803,2774,2741,2707,2676,2651,2632,2620,2612,2609,2608,2609,2614,2622,2636,2654,2675,2696,
+2714,2725,2727,2718,2699,2672,2639,2606,2574,2547,2526,2511,2502,2498,2497,2497,2497,2494,2487,2475,2458,
+2436,2409,2379,2346,2313,2281,2250,2221,2194,2168,2145,2123,2103,2086,2072,2060,2051,2044,2037,2030,2021,
+2010,1996,1980,1963,1944,1926,1908,1892,1878,1864,1851,1838,1823,1806,1786,1762,1733,1700,1665,1628,1591,
+1557,1527,1502,1482,1465,1451,1438,1423,1407,1389,1373,1358,1348,1343,1341,1342,1343,1342,1335,1322,1303,
+1280,1254,1228,1204,1181,1159,1138,1115,1091,1064,1035,1003,972,940,908,876,845,815,786,760,735,
+713,694,676,657,635,610,580,546,511,475,443,414,391,372,355,338,318,296,270,241,211,
+182,155,131,109,89,69,49,28,5,-19,-43,-67,-89,-109,-126,-140,-152,-161,-170,-180,-192,
+-209,-233,-265,-307,-358,-417,-481,-547,-611,-668,-717,-754,-782,-801,-814,-827,-842,-863,-891,-926,-965,
+-1004,-1041,-1072,-1095,-1112,-1126,-1141,-1161,-1189,-1228,-1278,-1335,-1396,-1458,-1517,-1571,-1619,-1663,-1705,-1744,-1782,
+-1820,-1855,-1886,-1912,-1933,-1948,-1960,-1970,-1979,-1987,-1996,-2003,-2007,-2007,-2002,-1994,-1984,-1977,-1975,-1983,-2003,
+-2036,-2081,-2135,-2196,-2258,-2318,-2374,-2426,-2473,-2519,-2566,-2617,-2673,-2733,-2797,-2861,-2922,-2977,-3022,-3057,-3083,
+-3100,-3112,-3121,-3130,-3139,-3150,-3163,-3176,-3189,-3199,-3205,-3207,-3206,-3201,-3195,-3190,-3188,-3193,-3205,-3225,-3251,
+-3282,-3313,-3341,-3365,-3382,-3395,-3405,-3416,-3430,-3448,-3468,-3489,-3507,-3519,-3522,-3519,-3511,-3505,-3506,-3518,-3542,
+-3578,-3621,-3666,-3708,-3742,-3766,-3782,-3793,-3802,-3815,-3833,-3857,-3886,-3918,-3950,-3982,-4013,-4043,-4074,-4106,-4139,
+-4172,-4204,-4234,-4260,-4284,-4305,-4326,-4347,-4368,-4389,-4409,-4425,-4437,-4444,-4447,-4446,-4445,-4445,-4447,-4452,-4459,
+-4468,-4478,-4488,-4497,-4506,-4516,-4526,-4535,-4544,-4551,-4557,-4561,-4566,-4571,-4580,-4592,-4609,-4627,-4646,-4662,-4673,
+-4677,-4675,-4667,-4655,-4642,-4630,-4620,-4612,-4606,-4602,-4600,-4598,-4596,-4595,-4593,-4589,-4583,-4572,-4557,-4537,-4515,
+-4491,-4470,-4452,-4439,-4431,-4428,-4427,-4428,-4428,-4427,-4426,-4425,-4427,-4431,-4439,-4450,-4462,-4474,-4486,-4495,-4501,
+-4506,-4510,-4513,-4515,-4517,-4519,-4519,-4518,-4516,-4515,-4516,-4520,-4528,-4540,-4556,-4573,-4592,-4610,-4626,-4642,-4656,
+-4670,-4684,-4700,-4716,-4732,-4748,-4762,-4776,-4788,-4801,-4815,-4831,-4850,-4871,-4894,-4917,-4939,-4957,-4972,-4983,-4991,
+-5000,-5010,-5022,-5037,-5055,-5073,-5091,-5107,-5122,-5135,-5148,-5163,-5182,-5204,-5228,-5253,-5275,-5292,-5301,-5303,-5297,
+-5287,-5275,-5265,-5258,-5257,-5260,-5268,-5278,-5289,-5298,-5305,-5309,-5309,-5306,-5299,-5291,-5280,-5268,-5255,-5243,-5230,
+-5219,-5208,-5198,-5189,-5180,-5172,-5166,-5161,-5159,-5158,-5160,-5164,-5168,-5172,-5175,-5177,-5178,-5179,-5180,-5181,-5182,
+-5183,-5185,-5186,-5186,-5186,-5186,-5185,-5185,-5184,-5182,-5179,-5175,-5170,-5164,-5158,-5153,-5149,-5146,-5144,-5143,-5142,
+-5139,-5135,-5130,-5123,-5116,-5109,-5102,-5096,-5091,-5087,-5084,-5082,-5079,-5077,-5075,-5073,-5070,-5065,-5059,-5052,-5044,
+-5035,-5027,-5021,-5015,-5012,-5009,-5006,-5003,-5000,-4995,-4990,-4985,-4980,-4975,-4970,-4964,-4959,-4952,-4945,-4938,-4931,
+-4925,-4920,-4916,-4913,-4911,-4908,-4905,-4899,-4892,-4884,-4875,-4865,-4856,-4848,-4840,-4832,-4823,-4814,-4803,-4792,-4779,
+-4767,-4754,-4742,-4731,-4721,-4713,-4706,-4701,-4697,-4695,-4694,-4693,-4692,-4690,-4686,-4679,-4671,-4662,-4650,-4638,-4626,
+-4613,-4601,-4588,-4574,-4560,-4545,-4528,-4511,-4492,-4474,-4457,-4441,-4427,-4415,-4405,-4396,-4387,-4377,-4366,-4353,-4338,
+-4322,-4305,-4288,-4273,-4259,-4247,-4238,-4230,-4225,-4222,-4220,-4220,-4221,-4222,-4224,-4224,-4223,-4219,-4213,-4205,-4196,
+-4185,-4175,-4165,-4156,-4148,-4141,-4133,-4125,-4117,-4109,-4101,-4095,-4090,-4087,-4085,-4084,-4084,-4081,-4078,-4071,-4062,
+-4050,-4037,-4022,-4007,-3992,-3977,-3963,-3950,-3936,-3922,-3906,-3890,-3872,-3853,-3833,-3811,-3790,-3770,-3749,-3730,-3711,
+-3693,-3675,-3656,-3637,-3617,-3597,-3578,-3561,-3544,-3530,-3517,-3506,-3494,-3482,-3470,-3456,-3442,-3427,-3413,-3399,-3388,
+-3377,-3368,-3358,-3349,-3338,-3326,-3314,-3302,-3290,-3280,-3272,-3265,-3258,-3251,-3242,-3231,-3218,-3204,-3190,-3176,-3164,
+-3153,-3144,-3135,-3127,-3118,-3109,-3099,-3090,-3081,-3072,-3065,-3057,-3048,-3039,-3028,-3015,-3001,-2986,-2971,-2956,-2941,
+-2927,-2911,-2895,-2879,-2861,-2844,-2827,-2811,-2796,-2782,-2767,-2752,-2736,-2718,-2700,-2682,-2665,-2649,-2635,-2622,-2611,
+-2599,-2588,-2577,-2566,-2555,-2546,-2537,-2529,-2520,-2509,-2497,-2483,-2468,-2453,-2438,-2425,-2414,-2405,-2396,-2387,-2378,
+-2368,-2358,-2349,-2340,-2332,-2324,-2315,-2305,-2292,-2276,-2260,-2245,-2233,-2224,-2218,-2213,-2206,-2193,-2173,-2147,-2116,
+-2085,-2058,-2037,-2023,-2012,-2000,-1981,-1951,-1910,-1860,-1808,-1762,-1729,-1714,-1715,-1728,-1743,-1749,-1739,-1708,-1658,
+-1597,-1534,-1480,-1444,-1429,-1433,-1449,-1469,-1485,-1490,-1481,-1461,-1433,-1402,-1372,-1347,-1326,-1307,-1289,-1269,-1245,
+-1219,-1192,-1165,-1141,-1120,-1101,-1083,-1066,-1047,-1026,-1005,-982,-960,-939,-918,-897,-876,-852,-825,-796,-764,
+-730,-697,-665,-634,-606,-580,-556,-533,-511,-488,-463,-437,-408,-376,-342,-305,-267,-228,-189,-151,-114,
+-79,-46,-15,14,41,68,94,120,147,175,206,237,270,303,335,367,398,429,461,494,531,
+573,619,670,726,786,848,911,973,1033,1087,1137,1180,1218,1251,1282,1311,1339,1367,1394,1417,1436,
+1450,1459,1466,1475,1488,1511,1544,1586,1635,1684,1728,1760,1779,1784,1777,1762,1746,1732,1723,1720,1722,
+1726,1731,1733,1732,1728,1722,1715,1709,1706,1707,1713,1726,1745,1770,1798,1824,1843,1848,1835,1802,1751,
+1687,1618,1553,1502,1469,1455,1456,1466,1475,1477,1468,1446,1415,1379,1344,1314,1291,1276,1267,1263,1260,
+1260,1263,1270,1283,1302,1326,1352,1377,1397,1410,1416,1415,1410,1401,1393,1384,1377,1371,1365,1360,1356,
+1354,1354,1357,1362,1369,1375,1381,1384,1385,1384,1382,1380,1379,1380,1382,1384,1385,1386,1385,1384,1382,
+1379,1375,1372,1367,1361,1355,1349,1342,1336,1330,1323,1314,1303,1288,1270,1251,1231,1213,1199,1191,1188,
+1188,1190,1190,1187,1180,1169,1155,1140,1126,1115,1106,1100,1095,1090,1084,1077,1068,1060,1051,1044,1039,
+1034,1030,1026,1021,1016,1009,1002,995,989,985,981,979,979,979,979,979,977,975,971,966,961,
+955,949,945,942,939,937,934,930,924,917,908,899,891,883,876,869,863,856,849,841,834,
+827,823,820,819,819,820,821,822,823,824,826,828,830,833,833,833,830,826,822,819,817,
+818,821,826,831,836,839,842,844,846,848,853,858,865,871,878,885,892,900,909,920,933,
+948,963,977,990,1000,1009,1015,1021,1027,1034,1041,1050,1060,1071,1081,1092,1102,1112,1122,1132,1142,
+1153,1166,1182,1202,1226,1253,1285,1319,1356,1332,1368,1405,1440,1473,1504,1533,1558,1579,1596,1607,1614,
+1615,1612,1605,1598,1591,1585,1582,1580,1580,1580,1580,1580,1580,1580,1583,1588,1597,1608,1621,1635,1648,
+1659,1667,1674,1680,1687,1696,1707,1720,1735,1751,1767,1782,1797,1811,1825,1839,1853,1869,1883,1897,1908,
+1917,1923,1926,1926,1925,1922,1917,1910,1900,1887,1871,1853,1835,1819,1806,1798,1795,1797,1802,1809,1814,
+1818,1820,1820,1819,1819,1819,1821,1824,1827,1830,1832,1833,1833,1834,1837,1840,1845,1849,1853,1855,1855,
+1854,1852,1852,1853,1857,1862,1868,1873,1877,1879,1882,1885,1891,1901,1914,1929,1945,1960,1973,1985,1996,
+2008,2021,2036,2050,2061,2063,2057,2040,2016,1991,1973,1967,1980,2012,2062,2121,2183,2237,2279,2304,2315,
+2315,2312,2311,2316,2329,2348,2369,2390,2406,2417,2422,2424,2426,2429,2435,2444,2455,2467,2478,2488,2496,
+2504,2513,2523,2535,2548,2564,2580,2597,2614,2631,2648,2665,2682,2697,2711,2722,2729,2735,2739,2744,2750,
+2760,2772,2787,2805,2825,2847,2871,2897,2925,2956,2988,3018,3045,3063,3071,3069,3057,3038,3018,3000,2990,
+2988,2994,3006,3022,3038,3053,3067,3083,3104,3132,3169,3212,3258,3300,3332,3349,3349,3334,3308,3276,3244,
+3217,3197,3181,3167,3150,3128,3098,3063,3024,2986,2952,2923,2900,2879,2858,2834,2805,2771,2734,2698,2665,
+2639,2619,2606,2598,2593,2589,2587,2587,2589,2597,2609,2626,2646,2664,2679,2685,2682,2669,2647,2618,2585,
+2552,2521,2495,2475,2461,2453,2451,2451,2452,2451,2447,2437,2422,2400,2373,2343,2311,2280,2250,2223,2198,
+2175,2153,2132,2112,2093,2076,2061,2050,2040,2031,2021,2010,1996,1979,1960,1939,1918,1899,1882,1868,1854,
+1841,1827,1810,1790,1767,1740,1709,1676,1640,1603,1567,1533,1504,1480,1464,1455,1452,1455,1458,1461,1460,
+1455,1444,1431,1416,1402,1391,1382,1374,1366,1355,1339,1317,1290,1260,1230,1201,1177,1157,1141,1126,1112,
+1095,1074,1048,1018,985,950,914,880,848,818,793,772,754,739,726,711,693,670,639,602,560,
+514,467,423,382,346,314,284,254,223,191,160,130,104,82,65,52,41,28,13,-7,-31,
+-58,-86,-110,-131,-146,-156,-162,-167,-172,-179,-189,-202,-218,-236,-257,-283,-315,-355,-403,-460,-522,
+-587,-649,-704,-749,-782,-806,-821,-835,-850,-872,-901,-938,-979,-1019,-1056,-1084,-1104,-1116,-1124,-1132,-1145,
+-1167,-1199,-1240,-1288,-1339,-1389,-1437,-1481,-1523,-1563,-1605,-1649,-1695,-1743,-1790,-1834,-1872,-1905,-1932,-1954,-1974,
+-1993,-2012,-2029,-2044,-2054,-2057,-2053,-2041,-2025,-2010,-1999,-1998,-2010,-2036,-2076,-2126,-2180,-2235,-2286,-2330,-2367,
+-2400,-2432,-2467,-2509,-2560,-2619,-2684,-2750,-2813,-2869,-2913,-2945,-2966,-2979,-2987,-2995,-3006,-3020,-3038,-3058,-3079,
+-3098,-3112,-3120,-3122,-3120,-3115,-3111,-3110,-3115,-3129,-3152,-3183,-3219,-3256,-3290,-3320,-3342,-3356,-3366,-3375,-3386,
+-3404,-3427,-3456,-3487,-3515,-3536,-3548,-3550,-3547,-3542,-3541,-3550,-3569,-3600,-3637,-3675,-3710,-3736,-3753,-3761,-3765,
+-3768,-3775,-3789,-3810,-3838,-3870,-3903,-3935,-3965,-3994,-4022,-4051,-4081,-4110,-4139,-4167,-4191,-4212,-4230,-4247,-4263,
+-4280,-4298,-4316,-4334,-4350,-4364,-4376,-4386,-4395,-4404,-4415,-4427,-4441,-4455,-4470,-4485,-4499,-4514,-4528,-4543,-4556,
+-4567,-4576,-4583,-4587,-4591,-4595,-4601,-4610,-4623,-4639,-4655,-4669,-4679,-4684,-4682,-4675,-4665,-4652,-4638,-4626,-4616,
+-4608,-4603,-4601,-4602,-4608,-4617,-4628,-4640,-4650,-4654,-4651,-4639,-4619,-4594,-4566,-4539,-4517,-4502,-4494,-4492,-4493,
+-4497,-4500,-4501,-4501,-4501,-4501,-4505,-4511,-4521,-4533,-4546,-4558,-4569,-4578,-4585,-4591,-4595,-4597,-4599,-4600,-4600,
+-4600,-4601,-4602,-4606,-4612,-4621,-4634,-4648,-4662,-4677,-4690,-4702,-4713,-4724,-4736,-4749,-4763,-4778,-4794,-4809,-4823,
+-4836,-4849,-4861,-4876,-4893,-4913,-4937,-4962,-4987,-5010,-5030,-5046,-5058,-5066,-5073,-5080,-5089,-5099,-5113,-5128,-5144,
+-5161,-5179,-5198,-5218,-5239,-5262,-5286,-5310,-5333,-5352,-5365,-5373,-5375,-5371,-5364,-5354,-5344,-5336,-5330,-5329,-5332,
+-5339,-5349,-5362,-5374,-5386,-5395,-5399,-5398,-5392,-5381,-5366,-5349,-5329,-5310,-5290,-5271,-5253,-5237,-5222,-5210,-5201,
+-5195,-5193,-5194,-5198,-5203,-5208,-5213,-5218,-5221,-5224,-5227,-5230,-5233,-5236,-5240,-5242,-5244,-5245,-5245,-5245,-5244,
+-5243,-5242,-5240,-5237,-5233,-5229,-5224,-5218,-5213,-5209,-5206,-5203,-5201,-5199,-5196,-5193,-5188,-5182,-5176,-5169,-5162,
+-5155,-5149,-5144,-5141,-5139,-5139,-5139,-5139,-5138,-5135,-5130,-5123,-5114,-5105,-5096,-5089,-5083,-5080,-5078,-5076,-5074,
+-5071,-5067,-5062,-5057,-5052,-5049,-5045,-5042,-5038,-5033,-5026,-5017,-5007,-4996,-4985,-4976,-4968,-4963,-4958,-4954,-4950,
+-4945,-4939,-4933,-4926,-4920,-4914,-4909,-4903,-4897,-4890,-4881,-4871,-4860,-4848,-4836,-4823,-4812,-4801,-4791,-4782,-4774,
+-4766,-4759,-4753,-4748,-4743,-4739,-4735,-4731,-4725,-4717,-4707,-4696,-4683,-4670,-4656,-4643,-4630,-4616,-4603,-4589,-4573,
+-4556,-4537,-4519,-4501,-4485,-4471,-4460,-4450,-4441,-4433,-4423,-4411,-4398,-4383,-4367,-4351,-4335,-4321,-4308,-4296,-4284,
+-4274,-4265,-4257,-4251,-4247,-4246,-4247,-4249,-4251,-4253,-4252,-4249,-4243,-4236,-4227,-4218,-4210,-4202,-4195,-4188,-4180,
+-4172,-4162,-4152,-4141,-4131,-4122,-4116,-4111,-4108,-4106,-4103,-4100,-4095,-4087,-4077,-4066,-4052,-4037,-4022,-4006,-3990,
+-3973,-3957,-3939,-3921,-3903,-3883,-3862,-3841,-3820,-3799,-3778,-3758,-3739,-3720,-3702,-3683,-3665,-3646,-3628,-3610,-3593,
+-3577,-3563,-3550,-3537,-3525,-3512,-3500,-3487,-3474,-3462,-3450,-3438,-3427,-3416,-3405,-3394,-3381,-3369,-3356,-3344,-3333,
+-3324,-3317,-3310,-3303,-3296,-3286,-3275,-3261,-3247,-3232,-3218,-3206,-3195,-3186,-3178,-3171,-3162,-3154,-3144,-3135,-3125,
+-3116,-3107,-3098,-3088,-3077,-3064,-3050,-3035,-3019,-3004,-2990,-2976,-2962,-2948,-2933,-2915,-2897,-2878,-2859,-2841,-2825,
+-2810,-2796,-2781,-2766,-2749,-2731,-2712,-2694,-2676,-2661,-2648,-2637,-2626,-2616,-2605,-2594,-2583,-2572,-2562,-2553,-2544,
+-2535,-2526,-2515,-2503,-2489,-2476,-2464,-2453,-2444,-2436,-2428,-2419,-2410,-2399,-2387,-2375,-2364,-2355,-2346,-2337,-2326,
+-2314,-2299,-2284,-2269,-2256,-2246,-2238,-2232,-2223,-2209,-2190,-2165,-2135,-2105,-2077,-2055,-2038,-2026,-2013,-1995,-1970,
+-1937,-1898,-1858,-1824,-1801,-1793,-1796,-1806,-1813,-1809,-1786,-1742,-1681,-1609,-1539,-1481,-1444,-1429,-1436,-1457,-1483,
+-1505,-1516,-1512,-1494,-1467,-1434,-1403,-1374,-1351,-1331,-1314,-1295,-1275,-1253,-1228,-1204,-1180,-1158,-1138,-1119,-1099,
+-1079,-1057,-1035,-1012,-990,-969,-949,-929,-909,-887,-863,-836,-806,-774,-741,-708,-677,-648,-620,-595,-571,
+-548,-525,-501,-475,-448,-418,-386,-352,-317,-282,-248,-213,-180,-146,-113,-79,-45,-11,22,56,89,
+120,150,179,208,236,265,296,329,365,404,447,492,541,592,646,702,759,817,874,930,981,
+1029,1072,1110,1145,1177,1208,1239,1272,1304,1336,1365,1389,1406,1416,1422,1427,1436,1452,1479,1518,1566,
+1619,1669,1712,1742,1755,1754,1740,1719,1695,1672,1653,1639,1629,1623,1619,1616,1613,1611,1611,1612,1615,
+1621,1630,1643,1661,1684,1710,1738,1763,1780,1784,1770,1737,1687,1627,1565,1509,1467,1442,1435,1440,1450,
+1458,1456,1441,1415,1380,1343,1308,1280,1260,1247,1238,1231,1223,1215,1208,1204,1207,1217,1235,1258,1283,
+1307,1326,1340,1348,1351,1351,1350,1347,1343,1338,1330,1321,1311,1302,1296,1293,1294,1299,1306,1313,1318,
+1321,1322,1322,1320,1320,1320,1322,1326,1329,1333,1335,1335,1332,1328,1322,1314,1304,1293,1282,1272,1263,
+1257,1253,1251,1249,1245,1238,1227,1213,1196,1178,1161,1148,1139,1133,1130,1127,1124,1118,1110,1099,1087,
+1075,1064,1054,1046,1038,1030,1021,1011,1001,991,983,976,972,969,968,966,964,961,956,950,944,
+938,934,931,930,930,931,931,932,931,929,926,922,917,912,907,902,898,893,889,883,878,
+872,866,859,853,846,840,833,825,816,807,798,789,782,777,774,773,774,776,778,780,783,
+785,788,791,795,799,803,805,805,803,800,797,795,794,796,800,805,810,814,816,818,818,
+819,820,823,828,834,841,849,858,868,879,891,905,919,934,949,962,972,981,987,993,998,
+1005,1012,1022,1032,1044,1055,1066,1077,1087,1096,1105,1115,1124,1135,1148,1164,1182,1205,1232,1262,1296,
+1332,1315,1350,1384,1416,1444,1469,1490,1507,1520,1529,1535,1537,1537,1536,1534,1532,1532,1534,1537,1540,
+1544,1547,1548,1548,1548,1549,1552,1559,1570,1583,1598,1613,1626,1635,1642,1646,1650,1655,1663,1675,1691,
+1710,1731,1753,1773,1793,1812,1830,1848,1866,1882,1896,1906,1912,1912,1908,1900,1891,1881,1873,1867,1861,
+1855,1847,1836,1821,1803,1785,1768,1755,1747,1745,1748,1755,1764,1773,1780,1785,1789,1790,1791,1792,1794,
+1795,1797,1798,1798,1799,1799,1799,1800,1800,1800,1799,1798,1798,1799,1801,1805,1811,1818,1825,1832,1838,
+1842,1844,1847,1852,1859,1868,1880,1894,1908,1923,1936,1950,1964,1979,1994,2008,2018,2022,2017,2003,1983,
+1962,1947,1943,1958,1991,2042,2104,2167,2224,2267,2293,2301,2297,2288,2281,2281,2291,2309,2332,2354,2372,
+2382,2385,2381,2375,2371,2371,2376,2386,2399,2413,2426,2437,2447,2457,2466,2477,2490,2503,2516,2529,2542,
+2555,2571,2589,2609,2633,2657,2679,2698,2713,2722,2728,2732,2736,2743,2755,2771,2792,2815,2841,2867,2894,
+2922,2950,2976,3000,3019,3031,3036,3033,3025,3016,3010,3013,3025,3049,3080,3115,3149,3177,3197,3211,3224,
+3240,3264,3299,3345,3397,3450,3494,3522,3530,3517,3486,3443,3394,3348,3306,3272,3243,3217,3190,3161,3128,
+3093,3057,3022,2990,2961,2933,2905,2874,2840,2803,2764,2727,2694,2666,2645,2629,2617,2607,2597,2587,2578,
+2571,2566,2566,2571,2578,2588,2597,2603,2603,2597,2585,2566,2543,2517,2490,2465,2443,2425,2414,2408,2407,
+2409,2411,2410,2403,2390,2369,2342,2311,2278,2247,2218,2194,2173,2155,2138,2122,2104,2087,2068,2051,2035,
+2019,2005,1991,1976,1960,1943,1925,1906,1887,1870,1853,1836,1817,1796,1772,1743,1712,1679,1645,1612,1581,
+1554,1529,1507,1489,1476,1468,1466,1470,1480,1494,1509,1522,1531,1533,1529,1518,1503,1485,1467,1450,1433,
+1414,1393,1366,1335,1300,1263,1227,1196,1171,1153,1142,1134,1127,1116,1100,1077,1046,1009,969,927,887,
+851,820,794,774,758,743,728,710,688,659,623,581,534,485,436,387,342,298,257,216,177,
+139,103,73,49,33,24,19,15,9,-3,-25,-56,-93,-131,-167,-194,-210,-214,-209,-198,-185,
+-176,-173,-178,-188,-204,-223,-244,-267,-294,-327,-368,-419,-478,-543,-610,-674,-732,-781,-820,-853,-881,
+-910,-943,-982,-1026,-1072,-1117,-1158,-1190,-1214,-1231,-1242,-1251,-1263,-1279,-1300,-1326,-1354,-1384,-1412,-1438,-1463,
+-1490,-1519,-1552,-1591,-1634,-1679,-1724,-1767,-1807,-1842,-1874,-1904,-1936,-1969,-2004,-2039,-2073,-2101,-2121,-2132,-2133,
+-2128,-2121,-2116,-2118,-2130,-2154,-2187,-2227,-2269,-2309,-2342,-2368,-2387,-2403,-2419,-2440,-2469,-2509,-2558,-2613,-2670,
+-2723,-2769,-2804,-2828,-2844,-2854,-2863,-2873,-2888,-2908,-2933,-2959,-2986,-3009,-3029,-3043,-3052,-3059,-3066,-3074,-3088,
+-3107,-3134,-3168,-3207,-3250,-3292,-3331,-3364,-3390,-3409,-3422,-3434,-3447,-3464,-3487,-3514,-3544,-3573,-3597,-3615,-3625,
+-3630,-3631,-3634,-3642,-3656,-3676,-3700,-3725,-3748,-3765,-3776,-3782,-3786,-3792,-3802,-3818,-3840,-3868,-3899,-3930,-3960,
+-3989,-4016,-4042,-4068,-4094,-4119,-4142,-4162,-4178,-4189,-4196,-4200,-4203,-4206,-4211,-4219,-4229,-4242,-4257,-4273,-4291,
+-4311,-4332,-4356,-4380,-4404,-4427,-4450,-4470,-4489,-4506,-4522,-4537,-4550,-4561,-4569,-4575,-4577,-4578,-4579,-4582,-4587,
+-4595,-4606,-4618,-4629,-4637,-4640,-4639,-4633,-4623,-4611,-4598,-4587,-4577,-4570,-4567,-4569,-4577,-4591,-4614,-4642,-4674,
+-4706,-4733,-4751,-4757,-4750,-4731,-4704,-4674,-4645,-4621,-4606,-4599,-4599,-4602,-4605,-4607,-4605,-4600,-4594,-4588,-4586,
+-4587,-4594,-4604,-4616,-4630,-4642,-4653,-4661,-4668,-4672,-4676,-4678,-4680,-4681,-4682,-4683,-4685,-4688,-4694,-4702,-4712,
+-4724,-4737,-4749,-4760,-4770,-4779,-4788,-4797,-4807,-4818,-4831,-4846,-4861,-4876,-4891,-4906,-4922,-4939,-4958,-4980,-5003,
+-5027,-5051,-5074,-5093,-5108,-5120,-5128,-5134,-5140,-5146,-5155,-5166,-5181,-5197,-5215,-5235,-5255,-5275,-5295,-5316,-5336,
+-5356,-5375,-5392,-5407,-5417,-5424,-5425,-5423,-5416,-5408,-5400,-5394,-5391,-5394,-5403,-5416,-5432,-5449,-5464,-5476,-5482,
+-5481,-5476,-5465,-5450,-5433,-5415,-5396,-5376,-5355,-5335,-5315,-5297,-5282,-5270,-5262,-5259,-5259,-5262,-5267,-5272,-5277,
+-5282,-5285,-5289,-5292,-5295,-5298,-5301,-5303,-5304,-5304,-5304,-5303,-5301,-5300,-5299,-5299,-5298,-5296,-5293,-5289,-5284,
+-5277,-5271,-5264,-5258,-5252,-5247,-5244,-5241,-5238,-5235,-5232,-5228,-5222,-5216,-5209,-5203,-5198,-5194,-5192,-5192,-5193,
+-5194,-5194,-5192,-5187,-5181,-5172,-5164,-5156,-5149,-5145,-5142,-5140,-5138,-5136,-5133,-5130,-5126,-5123,-5120,-5118,-5115,
+-5112,-5108,-5101,-5091,-5079,-5066,-5052,-5039,-5028,-5019,-5011,-5006,-5001,-4997,-4992,-4987,-4982,-4976,-4971,-4966,-4960,
+-4955,-4948,-4942,-4935,-4927,-4920,-4913,-4906,-4899,-4892,-4884,-4875,-4864,-4852,-4839,-4827,-4815,-4805,-4796,-4789,-4783,
+-4777,-4770,-4761,-4749,-4736,-4722,-4708,-4694,-4682,-4671,-4660,-4648,-4635,-4620,-4603,-4584,-4565,-4547,-4531,-4516,-4505,
+-4494,-4485,-4475,-4465,-4453,-4441,-4427,-4414,-4401,-4388,-4376,-4363,-4349,-4334,-4319,-4305,-4292,-4283,-4277,-4276,-4278,
+-4283,-4287,-4290,-4291,-4288,-4282,-4274,-4265,-4255,-4247,-4239,-4232,-4225,-4218,-4209,-4199,-4187,-4175,-4164,-4153,-4145,
+-4138,-4133,-4129,-4126,-4122,-4117,-4110,-4101,-4090,-4076,-4061,-4045,-4027,-4009,-3990,-3970,-3950,-3929,-3908,-3887,-3866,
+-3844,-3823,-3802,-3781,-3761,-3742,-3723,-3704,-3686,-3669,-3652,-3636,-3621,-3607,-3593,-3580,-3567,-3554,-3541,-3528,-3515,
+-3503,-3490,-3479,-3467,-3456,-3445,-3434,-3422,-3410,-3397,-3385,-3375,-3365,-3356,-3348,-3340,-3332,-3322,-3310,-3298,-3284,
+-3271,-3259,-3249,-3240,-3232,-3225,-3217,-3208,-3198,-3187,-3176,-3165,-3155,-3146,-3137,-3128,-3118,-3105,-3091,-3075,-3059,
+-3043,-3028,-3015,-3002,-2988,-2974,-2958,-2940,-2920,-2900,-2880,-2861,-2844,-2828,-2814,-2798,-2782,-2764,-2746,-2727,-2709,
+-2694,-2681,-2670,-2661,-2653,-2644,-2634,-2622,-2610,-2598,-2587,-2577,-2568,-2560,-2550,-2540,-2529,-2517,-2505,-2495,-2486,
+-2479,-2472,-2465,-2457,-2446,-2433,-2419,-2404,-2391,-2379,-2370,-2361,-2352,-2342,-2329,-2315,-2301,-2286,-2273,-2262,-2252,
+-2241,-2226,-2207,-2183,-2155,-2126,-2097,-2073,-2053,-2037,-2023,-2008,-1990,-1968,-1944,-1920,-1900,-1887,-1882,-1884,-1888,
+-1886,-1872,-1841,-1793,-1732,-1663,-1597,-1542,-1506,-1490,-1492,-1507,-1526,-1541,-1547,-1540,-1521,-1493,-1460,-1428,-1399,
+-1375,-1355,-1338,-1321,-1304,-1285,-1264,-1243,-1222,-1202,-1182,-1162,-1143,-1122,-1099,-1076,-1052,-1027,-1003,-980,-957,
+-933,-909,-884,-858,-830,-801,-773,-744,-716,-689,-663,-638,-613,-587,-562,-536,-509,-480,-451,-420,-390,
+-359,-329,-300,-272,-244,-215,-183,-149,-111,-71,-29,12,51,87,120,148,175,201,229,261,300,
+345,396,452,512,573,635,694,752,807,859,907,952,993,1029,1061,1089,1115,1140,1166,1193,1223,
+1254,1285,1312,1335,1352,1364,1373,1383,1397,1420,1452,1492,1537,1582,1622,1652,1669,1673,1665,1650,1630,
+1609,1591,1575,1561,1549,1537,1526,1515,1508,1505,1507,1515,1527,1543,1562,1582,1604,1628,1652,1676,1697,
+1710,1713,1702,1674,1632,1581,1526,1476,1435,1407,1393,1390,1390,1389,1380,1363,1337,1307,1275,1247,1225,
+1210,1200,1193,1186,1177,1167,1157,1150,1149,1156,1170,1189,1211,1233,1251,1266,1276,1282,1287,1290,1291,
+1292,1290,1285,1277,1267,1257,1249,1244,1242,1244,1248,1252,1255,1256,1254,1249,1244,1240,1237,1237,1240,
+1244,1249,1254,1257,1258,1256,1250,1243,1232,1220,1207,1195,1185,1178,1174,1173,1174,1176,1176,1173,1165,
+1154,1140,1124,1109,1095,1085,1076,1070,1064,1058,1051,1043,1034,1025,1016,1007,999,991,983,974,964,
+955,945,937,931,927,924,923,921,919,917,913,908,903,899,894,891,889,888,887,886,885,
+884,883,881,879,876,872,868,862,855,848,840,833,826,820,815,811,807,802,797,790,782,
+772,762,753,745,739,737,737,739,742,746,749,752,754,757,760,764,769,774,779,782,784,
+785,784,783,782,782,784,788,792,796,799,801,802,803,803,805,809,814,820,827,836,845,
+855,866,878,892,906,919,932,943,952,960,966,972,979,987,996,1007,1019,1031,1043,1054,1065,
+1075,1085,1095,1105,1116,1127,1140,1155,1173,1194,1219,1249,1281,1315,1289,1319,1347,1373,1396,1415,1430,
+1443,1453,1461,1467,1471,1473,1475,1477,1479,1482,1487,1493,1499,1505,1510,1514,1517,1520,1523,1527,1534,
+1544,1555,1567,1577,1586,1592,1596,1599,1603,1610,1621,1636,1656,1679,1702,1726,1748,1768,1787,1806,1824,
+1842,1858,1870,1877,1878,1871,1858,1841,1822,1804,1789,1779,1772,1767,1762,1756,1746,1733,1718,1704,1694,
+1688,1688,1694,1705,1718,1730,1741,1748,1752,1753,1753,1752,1751,1752,1754,1756,1758,1759,1758,1756,1752,
+1747,1741,1736,1733,1732,1735,1741,1749,1760,1772,1782,1791,1798,1803,1807,1810,1814,1821,1829,1840,1852,
+1866,1882,1898,1917,1937,1957,1975,1989,1994,1990,1975,1951,1925,1903,1892,1900,1929,1979,2045,2117,2186,
+2243,2281,2298,2299,2289,2276,2267,2267,2278,2296,2317,2336,2348,2351,2346,2338,2328,2323,2324,2330,2342,
+2356,2370,2382,2393,2402,2411,2423,2436,2452,2468,2484,2499,2512,2525,2540,2558,2581,2607,2634,2661,2685,
+2703,2714,2721,2724,2728,2735,2748,2768,2793,2822,2854,2885,2916,2944,2968,2990,3006,3018,3023,3024,3021,
+3017,3018,3029,3051,3088,3138,3197,3257,3313,3359,3392,3413,3426,3439,3457,3485,3525,3573,3623,3666,3695,
+3703,3688,3651,3598,3537,3474,3416,3366,3325,3291,3261,3233,3203,3171,3138,3103,3069,3036,3004,2972,2939,
+2905,2871,2836,2801,2769,2739,2712,2688,2666,2646,2625,2605,2584,2565,2548,2534,2523,2516,2512,2510,2510,
+2510,2509,2507,2500,2490,2475,2455,2432,2409,2387,2371,2360,2357,2359,2365,2370,2371,2365,2350,2326,2296,
+2264,2232,2204,2182,2166,2155,2146,2137,2126,2111,2092,2071,2047,2023,1999,1976,1954,1933,1913,1894,1876,
+1858,1840,1819,1796,1768,1735,1699,1660,1621,1585,1555,1533,1518,1509,1506,1506,1507,1509,1511,1515,1521,
+1530,1542,1555,1568,1576,1578,1574,1563,1546,1526,1505,1484,1463,1443,1420,1394,1364,1331,1295,1261,1230,
+1205,1188,1177,1170,1164,1154,1137,1111,1077,1035,989,942,898,858,824,796,773,753,734,712,686,
+656,620,579,535,489,442,396,351,307,263,219,175,132,93,59,32,14,3,0,-3,-8,
+-22,-45,-81,-125,-174,-221,-260,-284,-291,-281,-258,-227,-195,-168,-150,-144,-148,-160,-178,-200,-225,
+-252,-285,-324,-371,-427,-490,-557,-625,-690,-751,-806,-857,-905,-952,-1002,-1053,-1106,-1160,-1211,-1257,-1297,
+-1331,-1358,-1380,-1400,-1418,-1436,-1452,-1467,-1480,-1491,-1498,-1505,-1513,-1524,-1541,-1563,-1591,-1623,-1658,-1693,-1727,
+-1759,-1790,-1822,-1856,-1894,-1938,-1985,-2034,-2082,-2125,-2161,-2189,-2208,-2220,-2228,-2238,-2251,-2270,-2296,-2327,-2361,
+-2394,-2423,-2445,-2460,-2469,-2475,-2481,-2492,-2510,-2535,-2568,-2605,-2644,-2680,-2711,-2736,-2755,-2770,-2785,-2800,-2820,
+-2843,-2871,-2900,-2929,-2955,-2979,-2999,-3015,-3030,-3045,-3061,-3080,-3103,-3130,-3164,-3202,-3245,-3291,-3340,-3388,-3434,
+-3475,-3510,-3538,-3560,-3577,-3590,-3602,-3614,-3627,-3640,-3654,-3667,-3679,-3690,-3701,-3712,-3725,-3740,-3758,-3776,-3794,
+-3810,-3824,-3836,-3846,-3856,-3867,-3881,-3897,-3917,-3938,-3960,-3984,-4007,-4031,-4056,-4082,-4108,-4135,-4159,-4180,-4196,
+-4206,-4210,-4209,-4203,-4196,-4189,-4183,-4179,-4179,-4183,-4191,-4203,-4221,-4244,-4271,-4301,-4334,-4366,-4397,-4424,-4447,
+-4466,-4482,-4496,-4507,-4517,-4525,-4530,-4534,-4535,-4535,-4535,-4537,-4541,-4548,-4558,-4568,-4578,-4584,-4586,-4583,-4576,
+-4567,-4555,-4544,-4535,-4528,-4524,-4525,-4531,-4545,-4567,-4599,-4640,-4687,-4738,-4785,-4825,-4851,-4862,-4856,-4836,-4808,
+-4777,-4748,-4727,-4715,-4711,-4712,-4716,-4719,-4718,-4712,-4702,-4691,-4681,-4675,-4673,-4677,-4685,-4696,-4708,-4720,-4730,
+-4739,-4747,-4753,-4758,-4762,-4764,-4763,-4761,-4757,-4753,-4750,-4750,-4754,-4763,-4776,-4792,-4809,-4826,-4841,-4853,-4863,
+-4871,-4879,-4887,-4897,-4909,-4924,-4939,-4955,-4972,-4988,-5005,-5022,-5041,-5061,-5083,-5105,-5127,-5147,-5165,-5180,-5191,
+-5200,-5208,-5215,-5223,-5233,-5246,-5260,-5275,-5291,-5307,-5322,-5338,-5354,-5371,-5388,-5406,-5425,-5442,-5457,-5468,-5474,
+-5475,-5473,-5469,-5464,-5461,-5462,-5468,-5477,-5490,-5503,-5516,-5527,-5534,-5537,-5537,-5535,-5530,-5524,-5517,-5507,-5495,
+-5480,-5462,-5441,-5419,-5397,-5377,-5361,-5350,-5343,-5340,-5340,-5343,-5346,-5350,-5353,-5356,-5359,-5362,-5365,-5367,-5369,
+-5370,-5369,-5368,-5367,-5364,-5362,-5360,-5358,-5357,-5354,-5352,-5348,-5343,-5337,-5329,-5321,-5313,-5306,-5299,-5294,-5290,
+-5288,-5286,-5285,-5283,-5280,-5275,-5269,-5262,-5254,-5248,-5243,-5241,-5241,-5242,-5244,-5246,-5245,-5242,-5237,-5230,-5222,
+-5214,-5206,-5200,-5196,-5192,-5189,-5187,-5184,-5182,-5179,-5177,-5175,-5174,-5171,-5168,-5163,-5155,-5146,-5135,-5122,-5110,
+-5098,-5088,-5079,-5072,-5066,-5060,-5054,-5048,-5041,-5034,-5026,-5019,-5011,-5004,-4997,-4990,-4984,-4979,-4975,-4972,-4969,
+-4967,-4964,-4959,-4952,-4943,-4932,-4919,-4905,-4892,-4880,-4869,-4861,-4853,-4845,-4836,-4825,-4812,-4798,-4783,-4768,-4754,
+-4742,-4731,-4722,-4711,-4700,-4686,-4670,-4651,-4631,-4612,-4593,-4576,-4562,-4549,-4538,-4527,-4516,-4504,-4493,-4481,-4469,
+-4459,-4448,-4437,-4424,-4410,-4395,-4377,-4360,-4345,-4333,-4325,-4322,-4323,-4327,-4333,-4337,-4339,-4337,-4332,-4323,-4312,
+-4300,-4289,-4280,-4272,-4265,-4258,-4251,-4244,-4235,-4225,-4214,-4204,-4194,-4184,-4176,-4168,-4161,-4154,-4147,-4138,-4129,
+-4118,-4105,-4091,-4075,-4057,-4038,-4018,-3997,-3976,-3954,-3932,-3910,-3888,-3866,-3844,-3823,-3802,-3781,-3761,-3741,-3722,
+-3704,-3687,-3671,-3657,-3643,-3631,-3618,-3607,-3594,-3582,-3569,-3555,-3542,-3528,-3515,-3503,-3491,-3480,-3470,-3459,-3449,
+-3439,-3429,-3419,-3410,-3400,-3391,-3382,-3372,-3361,-3349,-3336,-3324,-3312,-3302,-3293,-3286,-3280,-3273,-3265,-3256,-3245,
+-3232,-3219,-3206,-3195,-3185,-3176,-3168,-3160,-3150,-3137,-3123,-3107,-3090,-3074,-3058,-3044,-3030,-3015,-3000,-2983,-2964,
+-2944,-2924,-2904,-2887,-2870,-2855,-2839,-2824,-2806,-2788,-2769,-2751,-2735,-2722,-2711,-2702,-2694,-2686,-2676,-2664,-2651,
+-2638,-2625,-2614,-2605,-2597,-2590,-2581,-2572,-2561,-2548,-2536,-2525,-2516,-2509,-2503,-2496,-2489,-2479,-2466,-2452,-2437,
+-2422,-2410,-2400,-2391,-2383,-2374,-2363,-2349,-2333,-2317,-2301,-2286,-2272,-2258,-2243,-2224,-2202,-2175,-2147,-2118,-2091,
+-2068,-2049,-2034,-2021,-2008,-1995,-1980,-1966,-1954,-1945,-1939,-1937,-1934,-1926,-1910,-1883,-1844,-1795,-1741,-1687,-1641,
+-1607,-1585,-1575,-1574,-1576,-1576,-1570,-1556,-1535,-1508,-1479,-1451,-1425,-1403,-1383,-1366,-1349,-1332,-1313,-1294,-1273,
+-1253,-1233,-1213,-1193,-1173,-1151,-1129,-1106,-1082,-1057,-1032,-1006,-980,-952,-925,-898,-870,-844,-818,-794,-770,
+-747,-725,-702,-678,-653,-627,-600,-572,-543,-512,-481,-449,-417,-386,-356,-327,-301,-276,-250,-223,-193,
+-160,-123,-84,-43,-4,33,68,100,131,164,200,243,294,352,416,483,552,619,681,739,791,
+838,881,920,956,988,1017,1043,1066,1086,1106,1125,1146,1168,1191,1215,1236,1256,1272,1288,1303,1322,
+1347,1378,1415,1456,1496,1531,1556,1570,1572,1564,1550,1534,1520,1509,1502,1496,1490,1481,1467,1451,1434,
+1420,1412,1412,1422,1440,1464,1491,1518,1544,1567,1588,1606,1620,1627,1627,1615,1591,1555,1511,1462,1413,
+1370,1337,1313,1297,1287,1278,1266,1251,1231,1209,1188,1169,1155,1145,1139,1133,1127,1119,1111,1103,1099,
+1099,1106,1118,1134,1151,1167,1180,1190,1197,1201,1206,1211,1216,1221,1225,1226,1224,1220,1214,1208,1204,
+1201,1200,1199,1199,1197,1192,1185,1176,1166,1158,1152,1148,1148,1150,1153,1157,1161,1163,1164,1163,1160,
+1154,1146,1137,1126,1116,1108,1102,1099,1098,1100,1101,1101,1099,1093,1085,1073,1061,1049,1037,1027,1019,
+1011,1004,997,990,983,975,968,960,953,946,939,932,924,916,908,901,895,890,886,882,879,
+876,873,870,866,862,858,855,851,848,845,843,840,838,837,836,836,835,834,831,827,821,
+814,806,797,788,781,775,770,767,764,760,755,749,741,733,724,717,713,710,711,714,718,
+723,728,731,734,737,739,743,747,751,756,761,764,767,768,769,769,770,772,775,779,782,
+785,788,790,791,792,794,798,802,807,814,821,828,836,845,855,866,877,889,902,913,924,
+933,941,949,957,966,976,987,999,1011,1023,1034,1046,1056,1067,1078,1088,1099,1110,1122,1134,1148,
+1164,1183,1205,1231,1259,1289,1233,1255,1276,1295,1312,1329,1344,1359,1374,1390,1404,1417,1427,1435,1440,
+1443,1445,1447,1450,1454,1460,1467,1475,1483,1491,1498,1506,1514,1522,1530,1537,1542,1547,1550,1553,1558,
+1565,1577,1592,1612,1634,1656,1678,1697,1713,1727,1740,1753,1766,1779,1792,1802,1807,1806,1797,1781,1761,
+1737,1715,1696,1683,1674,1670,1667,1665,1661,1656,1649,1643,1639,1639,1644,1653,1666,1680,1692,1703,1709,
+1712,1712,1710,1708,1707,1707,1709,1711,1713,1713,1710,1705,1697,1689,1680,1673,1669,1670,1674,1683,1694,
+1707,1721,1733,1743,1750,1756,1761,1766,1771,1778,1787,1798,1811,1827,1845,1866,1890,1915,1940,1961,1975,
+1977,1966,1944,1914,1883,1860,1852,1866,1904,1964,2038,2116,2189,2246,2283,2299,2297,2286,2272,2262,2261,
+2269,2282,2297,2309,2314,2312,2305,2296,2289,2287,2291,2301,2315,2329,2341,2350,2356,2362,2370,2381,2398,
+2419,2442,2467,2490,2512,2532,2552,2574,2597,2623,2650,2674,2694,2708,2716,2718,2719,2721,2729,2744,2768,
+2800,2837,2877,2917,2955,2989,3018,3042,3060,3071,3076,3077,3074,3072,3077,3091,3121,3166,3228,3301,3378,
+3454,3520,3573,3612,3639,3659,3679,3702,3732,3767,3803,3833,3850,3850,3828,3785,3727,3658,3586,3518,3457,
+3406,3364,3328,3296,3264,3232,3198,3162,3127,3093,3061,3031,3003,2976,2950,2923,2895,2865,2834,2803,2770,
+2738,2707,2676,2647,2619,2592,2567,2542,2518,2496,2476,2460,2449,2443,2441,2443,2444,2442,2435,2420,2398,
+2372,2344,2320,2304,2298,2301,2313,2328,2343,2351,2350,2339,2320,2295,2270,2249,2233,2225,2222,2223,2222,
+2217,2205,2185,2157,2123,2085,2044,2004,1966,1932,1900,1873,1848,1824,1801,1775,1747,1714,1677,1639,1601,
+1567,1539,1522,1514,1516,1525,1538,1550,1560,1565,1566,1565,1564,1565,1569,1575,1582,1587,1588,1581,1568,
+1549,1527,1503,1481,1462,1445,1429,1412,1392,1370,1343,1316,1288,1264,1243,1227,1213,1199,1182,1159,1129,
+1091,1047,999,951,906,866,831,802,776,752,728,701,670,635,596,555,512,470,427,386,344,
+303,261,219,177,138,102,71,47,28,15,3,-10,-29,-57,-95,-142,-193,-244,-288,-319,-332,
+-327,-305,-270,-228,-185,-147,-119,-103,-99,-107,-123,-147,-176,-210,-249,-293,-343,-398,-456,-518,-580,
+-642,-704,-764,-823,-881,-940,-998,-1056,-1112,-1165,-1216,-1262,-1306,-1346,-1384,-1420,-1454,-1486,-1515,-1538,-1555,
+-1566,-1571,-1572,-1572,-1572,-1577,-1586,-1600,-1619,-1641,-1666,-1690,-1715,-1740,-1767,-1797,-1831,-1871,-1916,-1965,-2015,
+-2065,-2112,-2153,-2189,-2218,-2244,-2267,-2289,-2314,-2341,-2372,-2404,-2438,-2470,-2498,-2522,-2539,-2552,-2560,-2567,-2574,
+-2582,-2593,-2606,-2621,-2638,-2654,-2671,-2689,-2707,-2728,-2752,-2781,-2813,-2847,-2881,-2914,-2943,-2968,-2989,-3006,-3022,
+-3036,-3052,-3070,-3089,-3112,-3138,-3168,-3203,-3244,-3293,-3350,-3412,-3477,-3541,-3599,-3648,-3683,-3704,-3711,-3707,-3696,
+-3682,-3669,-3661,-3660,-3665,-3677,-3695,-3715,-3737,-3760,-3782,-3803,-3824,-3843,-3862,-3880,-3897,-3913,-3927,-3940,-3950,
+-3959,-3966,-3974,-3983,-3996,-4013,-4035,-4061,-4090,-4120,-4147,-4171,-4188,-4200,-4205,-4206,-4203,-4199,-4193,-4187,-4182,
+-4178,-4176,-4178,-4183,-4195,-4214,-4239,-4269,-4303,-4337,-4370,-4398,-4422,-4441,-4455,-4467,-4476,-4485,-4493,-4499,-4505,
+-4510,-4514,-4519,-4525,-4534,-4545,-4558,-4571,-4582,-4589,-4590,-4586,-4577,-4564,-4551,-4538,-4529,-4522,-4520,-4522,-4529,
+-4543,-4565,-4596,-4636,-4685,-4738,-4791,-4839,-4875,-4896,-4901,-4889,-4865,-4836,-4806,-4782,-4768,-4763,-4767,-4776,-4787,
+-4795,-4799,-4798,-4794,-4787,-4780,-4775,-4774,-4776,-4780,-4787,-4795,-4804,-4813,-4824,-4834,-4845,-4853,-4858,-4857,-4851,
+-4839,-4824,-4809,-4796,-4790,-4792,-4804,-4824,-4850,-4878,-4905,-4927,-4944,-4955,-4962,-4968,-4973,-4981,-4991,-5004,-5019,
+-5034,-5048,-5062,-5074,-5087,-5102,-5119,-5139,-5162,-5186,-5210,-5232,-5251,-5266,-5278,-5287,-5294,-5301,-5308,-5317,-5327,
+-5339,-5351,-5363,-5375,-5388,-5401,-5416,-5432,-5449,-5466,-5483,-5498,-5510,-5519,-5525,-5528,-5530,-5532,-5535,-5539,-5545,
+-5552,-5559,-5565,-5570,-5574,-5577,-5581,-5585,-5590,-5596,-5601,-5604,-5603,-5597,-5585,-5568,-5547,-5524,-5500,-5478,-5460,
+-5445,-5434,-5427,-5423,-5421,-5420,-5421,-5422,-5425,-5428,-5432,-5435,-5438,-5441,-5442,-5442,-5441,-5438,-5434,-5430,-5424,
+-5419,-5413,-5408,-5403,-5398,-5393,-5388,-5383,-5378,-5372,-5366,-5360,-5355,-5351,-5348,-5346,-5344,-5341,-5337,-5332,-5325,
+-5316,-5308,-5300,-5294,-5291,-5291,-5292,-5294,-5297,-5297,-5295,-5291,-5285,-5277,-5268,-5260,-5252,-5246,-5240,-5236,-5232,
+-5228,-5226,-5224,-5222,-5222,-5221,-5221,-5219,-5216,-5212,-5205,-5196,-5186,-5175,-5164,-5154,-5144,-5135,-5126,-5118,-5109,
+-5100,-5091,-5082,-5072,-5063,-5055,-5047,-5040,-5034,-5028,-5023,-5019,-5016,-5013,-5010,-5007,-5004,-4999,-4993,-4986,-4979,
+-4971,-4963,-4955,-4947,-4938,-4928,-4916,-4902,-4887,-4870,-4853,-4836,-4821,-4808,-4796,-4784,-4773,-4761,-4747,-4731,-4713,
+-4693,-4673,-4654,-4637,-4621,-4606,-4593,-4580,-4568,-4555,-4543,-4531,-4520,-4509,-4499,-4488,-4477,-4465,-4451,-4436,-4421,
+-4407,-4396,-4389,-4386,-4386,-4389,-4393,-4397,-4398,-4395,-4388,-4378,-4365,-4351,-4338,-4325,-4315,-4306,-4299,-4293,-4287,
+-4281,-4275,-4267,-4259,-4249,-4238,-4227,-4215,-4203,-4190,-4177,-4163,-4150,-4136,-4122,-4107,-4092,-4075,-4057,-4038,-4018,
+-3997,-3975,-3953,-3931,-3908,-3886,-3863,-3841,-3819,-3798,-3777,-3757,-3738,-3720,-3703,-3687,-3672,-3659,-3647,-3636,-3625,
+-3614,-3602,-3590,-3578,-3565,-3553,-3541,-3529,-3518,-3508,-3499,-3490,-3481,-3472,-3464,-3456,-3447,-3438,-3429,-3420,-3409,
+-3397,-3386,-3374,-3362,-3352,-3343,-3335,-3328,-3321,-3313,-3303,-3292,-3279,-3265,-3252,-3239,-3227,-3218,-3209,-3201,-3192,
+-3182,-3169,-3154,-3137,-3120,-3103,-3086,-3070,-3054,-3037,-3020,-3002,-2982,-2963,-2945,-2927,-2911,-2896,-2882,-2868,-2852,
+-2836,-2819,-2802,-2786,-2772,-2761,-2751,-2743,-2734,-2724,-2711,-2697,-2681,-2666,-2652,-2642,-2634,-2628,-2623,-2616,-2608,
+-2597,-2583,-2570,-2557,-2546,-2538,-2531,-2526,-2520,-2512,-2501,-2489,-2474,-2460,-2447,-2436,-2425,-2416,-2405,-2393,-2379,
+-2362,-2345,-2328,-2311,-2296,-2282,-2266,-2248,-2227,-2202,-2175,-2146,-2118,-2093,-2071,-2054,-2040,-2028,-2016,-2003,-1991,
+-1978,-1966,-1956,-1948,-1940,-1932,-1919,-1901,-1877,-1845,-1808,-1769,-1731,-1696,-1666,-1642,-1623,-1606,-1591,-1575,-1557,
+-1537,-1515,-1493,-1471,-1450,-1430,-1411,-1391,-1372,-1352,-1331,-1310,-1289,-1267,-1246,-1224,-1202,-1180,-1157,-1135,-1113,
+-1091,-1069,-1046,-1023,-998,-973,-946,-919,-892,-865,-841,-818,-796,-774,-753,-731,-707,-682,-656,-628,-599,
+-569,-537,-503,-468,-431,-394,-358,-324,-294,-267,-243,-222,-201,-180,-156,-130,-100,-67,-32,5,45,
+89,137,190,249,314,382,453,523,589,650,704,752,794,831,866,899,931,960,988,1012,1033,
+1051,1066,1081,1095,1109,1124,1139,1154,1168,1183,1200,1220,1247,1279,1319,1362,1404,1443,1471,1487,1489,
+1480,1462,1442,1424,1412,1406,1406,1408,1408,1402,1390,1373,1353,1335,1324,1323,1333,1354,1382,1414,1446,
+1475,1499,1517,1528,1534,1533,1525,1508,1482,1447,1404,1357,1310,1267,1230,1201,1180,1165,1154,1144,1133,
+1122,1110,1099,1091,1084,1080,1076,1073,1068,1062,1055,1049,1046,1046,1051,1060,1071,1082,1092,1099,1104,
+1107,1110,1114,1120,1128,1138,1148,1155,1160,1162,1161,1158,1155,1151,1148,1144,1141,1136,1129,1121,1113,
+1103,1095,1087,1082,1078,1075,1073,1072,1071,1071,1071,1071,1070,1068,1065,1060,1054,1046,1038,1031,1025,
+1022,1020,1021,1022,1023,1023,1020,1016,1009,1001,992,984,975,967,960,952,945,937,930,922,915,
+907,900,892,885,878,871,864,857,851,845,840,835,831,827,824,821,818,816,814,812,810,
+808,805,802,799,797,795,793,792,790,789,786,783,778,772,765,757,751,745,740,735,732,
+728,723,717,711,704,698,693,689,688,689,692,696,701,706,710,715,719,723,727,732,737,
+741,746,749,751,752,753,755,756,759,762,766,769,772,773,774,774,774,774,776,779,783,
+789,795,802,810,818,827,836,847,858,870,882,893,903,913,922,931,941,951,962,974,987,
+1000,1012,1024,1035,1046,1057,1068,1078,1088,1098,1107,1117,1127,1139,1153,1170,1190,1211,1233,1159,1173,
+1187,1201,1215,1231,1249,1270,1293,1319,1344,1366,1385,1398,1406,1409,1409,1407,1406,1408,1413,1421,1432,
+1445,1459,1473,1485,1495,1504,1510,1515,1518,1521,1523,1528,1535,1546,1560,1578,1599,1620,1639,1656,1668,
+1676,1680,1683,1687,1691,1698,1706,1714,1720,1722,1717,1707,1691,1672,1652,1634,1620,1611,1605,1604,1604,
+1604,1605,1605,1606,1608,1612,1619,1628,1638,1649,1658,1665,1670,1672,1671,1670,1668,1667,1666,1666,1665,
+1664,1660,1654,1647,1638,1630,1622,1618,1617,1620,1627,1638,1650,1663,1675,1687,1696,1705,1713,1721,1729,
+1739,1750,1761,1774,1788,1804,1822,1843,1866,1892,1916,1935,1946,1946,1933,1910,1880,1853,1834,1833,1855,
+1899,1964,2040,2119,2189,2243,2276,2288,2284,2271,2256,2245,2242,2247,2257,2269,2277,2280,2278,2271,2264,
+2261,2263,2271,2284,2300,2315,2327,2335,2340,2345,2353,2365,2384,2409,2438,2470,2502,2532,2561,2587,2612,
+2635,2657,2677,2692,2702,2707,2706,2703,2701,2703,2713,2734,2765,2805,2851,2901,2950,2998,3041,3079,3111,
+3138,3158,3171,3177,3179,3178,3180,3189,3210,3247,3301,3370,3449,3533,3613,3686,3748,3796,3835,3865,3892,
+3917,3940,3961,3974,3977,3963,3932,3884,3820,3747,3670,3594,3523,3461,3408,3363,3323,3287,3252,3218,3184,
+3151,3119,3091,3066,3043,3024,3005,2986,2964,2939,2911,2880,2846,2812,2779,2747,2719,2692,2665,2638,2609,
+2577,2543,2509,2478,2453,2436,2426,2424,2425,2425,2420,2406,2383,2352,2319,2287,2264,2253,2257,2273,2298,
+2327,2352,2370,2378,2377,2368,2358,2348,2344,2344,2350,2356,2360,2357,2343,2317,2280,2232,2178,2119,2061,
+2005,1953,1907,1866,1831,1801,1773,1746,1720,1692,1664,1637,1613,1593,1579,1574,1576,1583,1594,1604,1610,
+1611,1606,1596,1585,1576,1571,1571,1576,1584,1590,1592,1586,1572,1551,1525,1498,1473,1452,1437,1426,1417,
+1407,1393,1375,1351,1323,1294,1265,1237,1212,1187,1163,1136,1106,1072,1035,996,956,917,880,848,818,
+791,765,739,712,683,653,620,586,550,512,473,432,390,348,306,266,229,195,166,140,117,
+96,72,45,13,-26,-71,-121,-171,-220,-261,-292,-310,-314,-305,-283,-253,-218,-183,-150,-123,-105,
+-96,-98,-111,-135,-169,-212,-262,-317,-375,-433,-489,-545,-598,-650,-703,-756,-811,-868,-925,-981,-1033,
+-1082,-1127,-1168,-1206,-1244,-1284,-1326,-1371,-1417,-1462,-1504,-1539,-1567,-1587,-1599,-1607,-1611,-1616,-1623,-1632,-1644,
+-1659,-1674,-1689,-1705,-1721,-1739,-1759,-1784,-1813,-1847,-1886,-1927,-1972,-2017,-2062,-2106,-2148,-2189,-2228,-2265,-2300,
+-2333,-2366,-2398,-2430,-2463,-2495,-2527,-2558,-2586,-2610,-2628,-2641,-2648,-2650,-2648,-2644,-2640,-2638,-2639,-2646,-2659,
+-2680,-2707,-2739,-2776,-2815,-2854,-2891,-2923,-2951,-2975,-2994,-3010,-3026,-3041,-3056,-3073,-3090,-3108,-3128,-3153,-3183,
+-3223,-3274,-3336,-3409,-3489,-3569,-3644,-3707,-3751,-3774,-3777,-3761,-3732,-3697,-3664,-3637,-3622,-3618,-3626,-3643,-3666,
+-3692,-3719,-3745,-3770,-3795,-3821,-3846,-3871,-3895,-3916,-3933,-3943,-3947,-3945,-3941,-3936,-3934,-3937,-3948,-3966,-3991,
+-4019,-4047,-4074,-4097,-4114,-4127,-4136,-4144,-4150,-4156,-4162,-4168,-4172,-4174,-4176,-4179,-4184,-4194,-4210,-4232,-4260,
+-4292,-4325,-4356,-4383,-4407,-4426,-4442,-4457,-4472,-4488,-4505,-4521,-4537,-4552,-4565,-4579,-4593,-4608,-4625,-4643,-4661,
+-4675,-4685,-4687,-4683,-4672,-4657,-4640,-4624,-4611,-4601,-4597,-4596,-4600,-4608,-4622,-4641,-4668,-4701,-4739,-4780,-4818,
+-4848,-4868,-4874,-4866,-4847,-4821,-4795,-4773,-4759,-4757,-4765,-4781,-4803,-4825,-4846,-4862,-4873,-4880,-4882,-4882,-4881,
+-4878,-4876,-4875,-4875,-4878,-4885,-4896,-4911,-4927,-4943,-4955,-4959,-4954,-4940,-4918,-4892,-4867,-4848,-4840,-4844,-4860,
+-4887,-4919,-4952,-4982,-5007,-5024,-5035,-5043,-5049,-5058,-5068,-5082,-5097,-5113,-5126,-5138,-5147,-5155,-5164,-5175,-5189,
+-5208,-5230,-5255,-5280,-5302,-5321,-5336,-5347,-5354,-5361,-5367,-5374,-5383,-5393,-5404,-5416,-5427,-5438,-5449,-5459,-5470,
+-5481,-5494,-5507,-5520,-5533,-5546,-5557,-5568,-5578,-5587,-5596,-5604,-5610,-5615,-5619,-5621,-5622,-5623,-5626,-5630,-5637,
+-5646,-5657,-5668,-5678,-5685,-5688,-5685,-5678,-5666,-5650,-5632,-5613,-5594,-5576,-5559,-5544,-5530,-5519,-5511,-5505,-5501,
+-5500,-5501,-5503,-5506,-5509,-5512,-5514,-5515,-5515,-5513,-5509,-5503,-5496,-5487,-5478,-5469,-5461,-5455,-5451,-5448,-5446,
+-5445,-5442,-5439,-5434,-5428,-5422,-5416,-5411,-5407,-5404,-5401,-5397,-5392,-5385,-5377,-5368,-5359,-5352,-5346,-5344,-5343,
+-5344,-5345,-5345,-5343,-5340,-5335,-5328,-5320,-5312,-5304,-5296,-5289,-5283,-5277,-5273,-5270,-5268,-5268,-5270,-5272,-5275,
+-5276,-5275,-5271,-5264,-5255,-5244,-5232,-5219,-5207,-5195,-5184,-5174,-5163,-5154,-5144,-5135,-5127,-5119,-5112,-5106,-5100,
+-5093,-5087,-5079,-5072,-5064,-5057,-5051,-5047,-5044,-5042,-5041,-5041,-5040,-5039,-5037,-5033,-5027,-5018,-5007,-4994,-4979,
+-4962,-4944,-4926,-4908,-4891,-4875,-4860,-4846,-4832,-4817,-4802,-4786,-4768,-4750,-4731,-4713,-4695,-4679,-4663,-4649,-4635,
+-4621,-4608,-4596,-4584,-4572,-4561,-4550,-4540,-4529,-4519,-4507,-4496,-4485,-4476,-4468,-4462,-4460,-4459,-4460,-4460,-4460,
+-4458,-4453,-4445,-4434,-4421,-4407,-4392,-4377,-4364,-4352,-4343,-4334,-4328,-4322,-4316,-4309,-4301,-4292,-4281,-4267,-4252,
+-4236,-4219,-4201,-4184,-4167,-4150,-4134,-4119,-4104,-4088,-4071,-4054,-4035,-4015,-3994,-3972,-3949,-3925,-3902,-3879,-3856,
+-3834,-3813,-3792,-3773,-3754,-3736,-3719,-3704,-3689,-3675,-3662,-3650,-3639,-3628,-3617,-3607,-3597,-3587,-3577,-3567,-3558,
+-3549,-3540,-3532,-3523,-3514,-3506,-3497,-3488,-3479,-3471,-3463,-3454,-3445,-3436,-3426,-3416,-3406,-3396,-3386,-3377,-3367,
+-3357,-3347,-3336,-3324,-3311,-3298,-3286,-3274,-3262,-3252,-3242,-3231,-3219,-3206,-3192,-3176,-3159,-3142,-3125,-3108,-3091,
+-3074,-3056,-3037,-3018,-2998,-2979,-2961,-2945,-2930,-2916,-2903,-2889,-2875,-2860,-2845,-2831,-2819,-2809,-2801,-2794,-2787,
+-2778,-2766,-2752,-2734,-2716,-2699,-2684,-2672,-2664,-2659,-2655,-2649,-2642,-2633,-2621,-2608,-2595,-2585,-2576,-2570,-2564,
+-2559,-2551,-2542,-2529,-2515,-2501,-2486,-2472,-2460,-2448,-2436,-2423,-2409,-2394,-2378,-2362,-2347,-2332,-2318,-2303,-2285,
+-2264,-2239,-2212,-2184,-2155,-2130,-2107,-2088,-2072,-2058,-2044,-2029,-2013,-1996,-1979,-1963,-1950,-1939,-1930,-1921,-1910,
+-1895,-1875,-1849,-1818,-1783,-1747,-1711,-1678,-1647,-1621,-1598,-1577,-1559,-1542,-1525,-1508,-1489,-1469,-1447,-1424,-1401,
+-1378,-1356,-1334,-1314,-1294,-1273,-1252,-1229,-1206,-1181,-1156,-1131,-1108,-1087,-1067,-1048,-1030,-1011,-991,-969,-946,
+-922,-897,-873,-849,-825,-801,-776,-751,-724,-697,-670,-642,-614,-585,-554,-520,-484,-444,-403,-360,-320,
+-282,-251,-225,-206,-191,-179,-166,-151,-131,-104,-69,-25,24,81,144,211,280,349,417,482,541,
+595,643,685,724,760,795,830,865,898,929,956,979,997,1010,1021,1030,1039,1048,1058,1069,1080,
+1091,1104,1120,1140,1168,1203,1244,1289,1333,1371,1399,1412,1411,1397,1375,1351,1329,1313,1305,1304,1306,
+1308,1306,1297,1284,1267,1252,1242,1242,1253,1274,1303,1336,1369,1398,1421,1437,1444,1444,1436,1420,1396,
+1365,1326,1282,1236,1190,1148,1112,1084,1064,1050,1041,1035,1029,1024,1020,1016,1014,1014,1015,1016,1016,
+1014,1010,1005,1000,996,994,994,998,1002,1008,1013,1016,1019,1021,1024,1030,1038,1048,1060,1073,1084,
+1093,1098,1100,1099,1096,1093,1088,1084,1080,1075,1071,1066,1060,1054,1049,1043,1037,1031,1025,1018,1011,
+1004,999,994,991,989,987,985,983,979,973,967,961,955,952,950,951,954,958,961,964,964,
+963,959,953,946,938,930,922,914,906,899,891,883,876,868,860,852,844,836,828,821,813,
+806,800,794,789,784,781,777,775,774,773,773,773,773,772,771,769,766,762,758,754,750,
+746,742,738,734,729,725,722,718,715,712,709,706,702,697,691,685,679,674,670,668,668,
+669,672,676,679,683,687,692,697,703,709,717,724,731,736,740,742,742,742,743,743,745,
+749,752,756,758,759,758,756,752,749,747,747,749,753,759,766,775,784,794,805,816,827,
+839,851,862,873,882,891,899,908,918,928,941,954,968,982,996,1009,1022,1034,1045,1055,1064,
+1072,1078,1083,1088,1093,1100,1108,1118,1130,1144,1159,1104,1115,1126,1137,1150,1164,1183,1205,1231,1260,
+1288,1315,1337,1353,1361,1364,1363,1360,1357,1358,1363,1373,1387,1403,1422,1440,1456,1470,1481,1489,1495,
+1499,1502,1505,1510,1517,1528,1542,1558,1577,1595,1611,1623,1630,1632,1630,1626,1621,1618,1619,1623,1630,
+1638,1645,1649,1649,1644,1635,1622,1609,1596,1585,1578,1573,1572,1573,1575,1579,1584,1589,1594,1600,1606,
+1612,1618,1623,1626,1629,1630,1631,1630,1629,1627,1625,1621,1616,1610,1603,1595,1588,1581,1575,1572,1573,
+1576,1583,1592,1603,1615,1627,1638,1649,1659,1670,1681,1694,1708,1722,1737,1752,1766,1780,1794,1808,1824,
+1842,1860,1877,1890,1896,1893,1880,1861,1840,1823,1818,1830,1862,1915,1982,2058,2131,2194,2238,2262,2266,
+2255,2237,2219,2208,2206,2214,2227,2243,2256,2263,2264,2261,2255,2252,2254,2262,2276,2295,2314,2333,2349,
+2362,2374,2386,2401,2421,2444,2471,2501,2531,2560,2586,2610,2630,2646,2658,2666,2669,2667,2662,2656,2652,
+2653,2663,2684,2717,2760,2811,2867,2923,2978,3029,3075,3116,3153,3186,3215,3238,3254,3265,3272,3276,3282,
+3296,3320,3359,3412,3479,3556,3638,3719,3795,3861,3918,3965,4002,4031,4053,4067,4071,4062,4039,3999,3944,
+3875,3795,3711,3626,3545,3472,3410,3357,3314,3277,3246,3217,3190,3163,3136,3111,3088,3067,3048,3031,3013,
+2995,2974,2950,2924,2897,2870,2844,2822,2802,2784,2765,2743,2717,2684,2645,2604,2564,2528,2500,2482,2472,
+2469,2466,2459,2444,2419,2386,2348,2311,2281,2265,2264,2278,2304,2337,2371,2399,2420,2432,2437,2438,2438,
+2441,2445,2452,2456,2456,2446,2425,2390,2344,2287,2224,2158,2093,2031,1974,1924,1880,1843,1812,1785,1764,
+1746,1731,1719,1709,1702,1697,1695,1695,1695,1695,1691,1683,1670,1651,1629,1606,1585,1571,1564,1566,1574,
+1584,1594,1598,1593,1578,1555,1527,1497,1470,1448,1432,1422,1415,1407,1394,1374,1346,1311,1271,1229,1189,
+1152,1121,1095,1073,1055,1038,1020,1000,977,951,922,893,862,833,805,781,759,740,722,704,683,
+658,626,587,542,494,444,397,355,319,292,269,250,229,204,171,128,78,22,-36,-91,-140,
+-180,-208,-227,-237,-240,-239,-235,-230,-222,-213,-202,-190,-179,-171,-171,-181,-205,-243,-293,-354,-421,
+-488,-552,-610,-661,-706,-748,-789,-832,-877,-925,-974,-1020,-1063,-1100,-1133,-1162,-1190,-1220,-1255,-1296,-1342,
+-1392,-1443,-1491,-1534,-1570,-1599,-1622,-1641,-1658,-1674,-1689,-1705,-1719,-1730,-1739,-1745,-1749,-1752,-1756,-1762,-1771,
+-1785,-1804,-1829,-1859,-1896,-1939,-1989,-2046,-2107,-2171,-2233,-2292,-2344,-2387,-2423,-2452,-2478,-2503,-2530,-2560,-2594,
+-2629,-2662,-2690,-2710,-2721,-2721,-2714,-2702,-2689,-2679,-2676,-2682,-2696,-2718,-2746,-2778,-2810,-2842,-2872,-2898,-2921,
+-2941,-2960,-2979,-2997,-3016,-3035,-3055,-3074,-3093,-3113,-3134,-3160,-3192,-3234,-3287,-3351,-3424,-3503,-3583,-3656,-3716,
+-3759,-3781,-3782,-3765,-3735,-3699,-3664,-3634,-3615,-3607,-3609,-3621,-3638,-3658,-3680,-3702,-3726,-3750,-3777,-3806,-3837,
+-3867,-3893,-3915,-3929,-3935,-3934,-3929,-3924,-3920,-3922,-3930,-3944,-3963,-3984,-4004,-4021,-4034,-4043,-4049,-4055,-4062,
+-4071,-4084,-4098,-4113,-4128,-4141,-4153,-4165,-4179,-4195,-4216,-4242,-4271,-4302,-4332,-4360,-4385,-4406,-4426,-4446,-4468,
+-4494,-4524,-4556,-4589,-4620,-4649,-4673,-4695,-4714,-4733,-4752,-4772,-4792,-4809,-4823,-4830,-4829,-4821,-4808,-4791,-4774,
+-4759,-4747,-4740,-4736,-4735,-4736,-4740,-4746,-4755,-4768,-4785,-4804,-4824,-4842,-4854,-4857,-4852,-4839,-4820,-4800,-4782,
+-4770,-4767,-4775,-4791,-4814,-4842,-4871,-4898,-4923,-4943,-4958,-4968,-4973,-4973,-4969,-4963,-4957,-4954,-4956,-4964,-4978,
+-4998,-5019,-5039,-5052,-5055,-5047,-5029,-5003,-4973,-4947,-4927,-4919,-4922,-4936,-4959,-4985,-5011,-5035,-5054,-5070,-5084,
+-5098,-5114,-5132,-5152,-5173,-5193,-5209,-5222,-5230,-5235,-5238,-5243,-5251,-5263,-5279,-5298,-5318,-5338,-5355,-5369,-5381,
+-5390,-5398,-5407,-5417,-5429,-5442,-5456,-5469,-5482,-5492,-5501,-5508,-5514,-5519,-5526,-5534,-5543,-5555,-5568,-5582,-5597,
+-5611,-5626,-5639,-5650,-5660,-5668,-5674,-5678,-5682,-5685,-5689,-5694,-5700,-5707,-5715,-5723,-5732,-5740,-5748,-5754,-5760,
+-5763,-5764,-5762,-5756,-5746,-5733,-5716,-5698,-5678,-5659,-5642,-5627,-5615,-5606,-5599,-5593,-5589,-5585,-5581,-5578,-5576,
+-5575,-5574,-5572,-5568,-5563,-5556,-5548,-5538,-5528,-5520,-5513,-5509,-5507,-5506,-5505,-5502,-5498,-5492,-5485,-5477,-5470,
+-5465,-5462,-5461,-5460,-5458,-5455,-5449,-5441,-5431,-5421,-5411,-5402,-5396,-5391,-5389,-5388,-5387,-5386,-5384,-5380,-5375,
+-5369,-5363,-5355,-5347,-5339,-5331,-5325,-5320,-5318,-5318,-5320,-5323,-5327,-5330,-5330,-5328,-5322,-5313,-5302,-5289,-5276,
+-5263,-5251,-5240,-5230,-5221,-5212,-5203,-5194,-5187,-5180,-5174,-5169,-5164,-5159,-5153,-5146,-5137,-5127,-5117,-5107,-5099,
+-5094,-5091,-5090,-5091,-5092,-5092,-5091,-5088,-5082,-5074,-5064,-5052,-5039,-5025,-5010,-4994,-4977,-4960,-4943,-4926,-4909,
+-4893,-4876,-4860,-4844,-4828,-4811,-4794,-4777,-4759,-4741,-4725,-4709,-4694,-4680,-4667,-4655,-4644,-4633,-4622,-4610,-4599,
+-4588,-4577,-4567,-4558,-4550,-4543,-4538,-4534,-4531,-4529,-4526,-4523,-4519,-4513,-4506,-4497,-4486,-4474,-4460,-4446,-4431,
+-4417,-4403,-4390,-4378,-4367,-4357,-4347,-4338,-4328,-4316,-4303,-4289,-4273,-4256,-4238,-4221,-4203,-4186,-4170,-4154,-4139,
+-4123,-4108,-4091,-4073,-4054,-4034,-4012,-3989,-3966,-3942,-3917,-3894,-3871,-3849,-3828,-3809,-3791,-3774,-3758,-3742,-3726,
+-3711,-3697,-3683,-3669,-3657,-3645,-3635,-3625,-3616,-3608,-3601,-3594,-3587,-3580,-3572,-3564,-3555,-3546,-3536,-3526,-3515,
+-3506,-3497,-3490,-3483,-3476,-3469,-3461,-3452,-3442,-3432,-3420,-3409,-3397,-3385,-3374,-3363,-3352,-3341,-3330,-3319,-3307,
+-3294,-3281,-3267,-3253,-3238,-3222,-3206,-3190,-3174,-3159,-3144,-3129,-3113,-3096,-3078,-3059,-3039,-3018,-2998,-2979,-2961,
+-2945,-2929,-2915,-2900,-2887,-2873,-2861,-2851,-2842,-2836,-2832,-2828,-2823,-2815,-2805,-2791,-2774,-2755,-2737,-2720,-2707,
+-2696,-2689,-2683,-2678,-2672,-2665,-2657,-2648,-2640,-2632,-2625,-2619,-2612,-2605,-2595,-2583,-2569,-2553,-2537,-2521,-2506,
+-2492,-2480,-2468,-2456,-2444,-2431,-2417,-2403,-2389,-2374,-2359,-2341,-2320,-2297,-2271,-2243,-2214,-2187,-2163,-2142,-2124,
+-2110,-2096,-2081,-2065,-2047,-2027,-2007,-1987,-1970,-1956,-1944,-1933,-1922,-1908,-1890,-1867,-1839,-1806,-1770,-1734,-1699,
+-1668,-1641,-1618,-1598,-1582,-1565,-1548,-1529,-1507,-1481,-1454,-1425,-1397,-1372,-1349,-1329,-1312,-1297,-1281,-1264,-1244,
+-1221,-1195,-1167,-1139,-1113,-1089,-1068,-1050,-1034,-1019,-1003,-987,-968,-948,-926,-903,-879,-854,-828,-800,-772,
+-743,-714,-685,-657,-629,-601,-573,-542,-508,-471,-430,-387,-344,-302,-265,-234,-208,-188,-172,-156,-137,
+-113,-81,-39,11,69,133,199,265,328,386,437,483,524,561,596,632,671,712,756,800,843,
+882,914,938,954,963,967,969,971,976,983,993,1004,1016,1027,1039,1052,1068,1091,1120,1156,1196,
+1237,1273,1301,1317,1319,1308,1289,1266,1244,1226,1215,1211,1211,1212,1211,1207,1199,1189,1180,1176,1178,
+1189,1208,1233,1262,1291,1316,1337,1350,1355,1351,1340,1320,1291,1256,1214,1168,1122,1078,1039,1006,982,
+966,955,949,945,943,940,938,936,937,939,943,948,952,955,956,954,951,947,944,942,941,
+942,944,946,949,951,954,958,964,973,983,996,1008,1020,1030,1037,1040,1041,1040,1037,1032,1028,
+1024,1020,1016,1012,1009,1005,1001,997,992,986,979,971,963,955,947,940,935,930,927,924,921,
+918,913,909,904,900,898,898,900,904,908,913,917,919,919,916,911,904,896,887,879,871,
+864,857,851,846,840,834,828,822,814,807,798,790,782,775,767,761,755,750,746,742,740,
+739,738,737,737,737,737,736,733,730,726,720,714,708,701,694,688,683,679,676,675,675,
+676,676,676,674,672,668,664,660,656,654,654,656,659,662,666,670,673,675,678,682,687,
+693,701,709,717,724,729,732,733,732,731,730,731,733,736,739,742,743,742,738,734,729,
+724,721,721,723,729,736,746,756,768,779,792,804,816,828,839,848,857,864,871,877,885,
+894,905,917,932,947,963,979,995,1009,1023,1035,1046,1054,1060,1063,1065,1066,1066,1068,1071,1077,
+1085,1094,1104,1093,1103,1113,1123,1134,1146,1161,1178,1199,1221,1245,1267,1286,1300,1309,1313,1314,1313,
+1313,1315,1321,1332,1347,1366,1386,1406,1425,1443,1457,1469,1477,1483,1487,1490,1493,1498,1504,1514,1527,
+1542,1557,1572,1583,1590,1592,1588,1580,1571,1562,1556,1555,1558,1567,1578,1589,1599,1606,1607,1603,1595,
+1584,1572,1561,1553,1547,1546,1548,1553,1559,1566,1572,1577,1581,1584,1585,1587,1588,1589,1590,1591,1590,
+1589,1586,1582,1576,1569,1560,1552,1545,1538,1534,1532,1533,1536,1542,1550,1559,1569,1580,1592,1604,1616,
+1629,1643,1657,1673,1690,1707,1723,1739,1753,1766,1779,1791,1803,1815,1827,1837,1843,1845,1841,1832,1821,
+1813,1811,1822,1850,1895,1955,2025,2096,2161,2211,2242,2251,2243,2222,2198,2178,2168,2171,2187,2211,2238,
+2263,2280,2288,2287,2281,2275,2272,2275,2287,2307,2333,2362,2392,2420,2445,2466,2486,2503,2520,2536,2551,
+2566,2580,2591,2600,2606,2609,2607,2602,2594,2585,2576,2572,2575,2588,2614,2653,2704,2763,2826,2890,2949,
+3001,3046,3083,3115,3144,3171,3199,3227,3253,3278,3300,3320,3338,3358,3382,3413,3455,3507,3569,3638,3711,
+3786,3858,3924,3982,4032,4072,4101,4119,4122,4110,4082,4036,3974,3898,3811,3718,3626,3539,3461,3395,3343,
+3304,3275,3253,3234,3217,3198,3176,3153,3129,3105,3081,3060,3039,3020,3000,2979,2958,2937,2916,2898,2883,
+2871,2861,2850,2836,2817,2791,2758,2720,2681,2644,2614,2592,2578,2570,2564,2555,2538,2512,2478,2438,2398,
+2364,2341,2332,2337,2354,2379,2405,2428,2446,2456,2459,2459,2456,2453,2451,2447,2441,2429,2408,2377,2337,
+2288,2234,2178,2122,2069,2021,1977,1939,1905,1876,1851,1832,1817,1808,1804,1805,1810,1817,1823,1827,1827,
+1820,1807,1786,1759,1725,1689,1653,1620,1594,1577,1569,1570,1576,1585,1591,1592,1584,1568,1545,1518,1491,
+1467,1448,1436,1428,1421,1411,1394,1367,1330,1283,1230,1175,1123,1079,1046,1025,1017,1018,1025,1033,1037,
+1035,1025,1005,977,945,913,884,862,848,843,842,843,839,826,799,759,706,645,581,522,471,
+433,406,388,373,355,329,291,240,180,115,52,-2,-44,-73,-90,-100,-107,-116,-132,-154,-182,
+-210,-235,-254,-265,-269,-271,-276,-290,-318,-361,-419,-489,-564,-639,-706,-765,-812,-851,-884,-915,-948,
+-983,-1021,-1060,-1098,-1131,-1161,-1185,-1208,-1231,-1258,-1291,-1330,-1374,-1422,-1469,-1514,-1555,-1592,-1624,-1655,-1684,
+-1713,-1743,-1771,-1796,-1816,-1828,-1833,-1830,-1820,-1806,-1790,-1775,-1761,-1752,-1749,-1754,-1770,-1800,-1845,-1906,-1982,
+-2070,-2164,-2257,-2343,-2415,-2471,-2510,-2535,-2551,-2565,-2582,-2605,-2636,-2672,-2709,-2742,-2767,-2782,-2786,-2782,-2773,
+-2765,-2763,-2768,-2781,-2801,-2826,-2851,-2873,-2890,-2902,-2909,-2914,-2918,-2924,-2934,-2948,-2966,-2988,-3012,-3038,-3064,
+-3091,-3120,-3151,-3187,-3229,-3278,-3333,-3394,-3458,-3523,-3584,-3638,-3682,-3712,-3729,-3732,-3724,-3709,-3689,-3670,-3654,
+-3644,-3640,-3641,-3646,-3655,-3666,-3678,-3691,-3708,-3728,-3752,-3781,-3813,-3846,-3879,-3908,-3931,-3948,-3959,-3966,-3971,
+-3975,-3982,-3992,-4004,-4016,-4028,-4037,-4041,-4041,-4038,-4032,-4028,-4026,-4029,-4036,-4048,-4063,-4080,-4099,-4119,-4141,
+-4166,-4194,-4225,-4258,-4291,-4322,-4350,-4372,-4391,-4407,-4424,-4446,-4474,-4510,-4553,-4601,-4651,-4698,-4739,-4772,-4797,
+-4816,-4832,-4847,-4864,-4882,-4901,-4919,-4933,-4942,-4944,-4940,-4932,-4920,-4908,-4897,-4889,-4883,-4879,-4875,-4872,-4870,
+-4868,-4868,-4870,-4875,-4882,-4891,-4898,-4903,-4904,-4900,-4891,-4879,-4866,-4854,-4847,-4844,-4848,-4859,-4875,-4897,-4921,
+-4948,-4974,-4999,-5020,-5036,-5046,-5049,-5047,-5042,-5037,-5034,-5037,-5046,-5062,-5082,-5105,-5125,-5138,-5143,-5138,-5123,
+-5103,-5079,-5056,-5038,-5027,-5022,-5024,-5032,-5042,-5055,-5069,-5084,-5102,-5123,-5148,-5174,-5202,-5229,-5252,-5271,-5284,
+-5292,-5296,-5298,-5301,-5305,-5313,-5324,-5338,-5353,-5367,-5380,-5392,-5402,-5412,-5423,-5435,-5450,-5467,-5485,-5503,-5520,
+-5534,-5546,-5554,-5559,-5563,-5567,-5571,-5577,-5585,-5595,-5607,-5621,-5635,-5648,-5662,-5674,-5686,-5697,-5708,-5718,-5728,
+-5738,-5748,-5756,-5762,-5765,-5767,-5766,-5765,-5765,-5767,-5773,-5783,-5798,-5816,-5835,-5852,-5866,-5873,-5873,-5866,-5854,
+-5837,-5819,-5800,-5782,-5766,-5750,-5734,-5717,-5699,-5681,-5663,-5647,-5634,-5626,-5621,-5620,-5621,-5621,-5620,-5617,-5610,
+-5602,-5593,-5584,-5577,-5572,-5569,-5566,-5563,-5559,-5553,-5546,-5538,-5530,-5524,-5520,-5519,-5519,-5519,-5519,-5516,-5511,
+-5502,-5492,-5480,-5468,-5458,-5448,-5441,-5436,-5432,-5429,-5427,-5425,-5422,-5419,-5414,-5409,-5402,-5395,-5388,-5381,-5376,
+-5372,-5371,-5372,-5374,-5378,-5380,-5381,-5379,-5374,-5367,-5357,-5347,-5336,-5326,-5318,-5310,-5302,-5294,-5285,-5276,-5266,
+-5257,-5248,-5241,-5235,-5231,-5227,-5223,-5218,-5211,-5203,-5193,-5183,-5173,-5165,-5158,-5153,-5149,-5145,-5141,-5136,-5129,
+-5121,-5113,-5104,-5095,-5086,-5076,-5066,-5055,-5042,-5027,-5011,-4993,-4976,-4958,-4942,-4927,-4912,-4898,-4883,-4868,-4851,
+-4833,-4814,-4795,-4777,-4761,-4746,-4734,-4722,-4712,-4701,-4690,-4678,-4665,-4652,-4640,-4628,-4618,-4611,-4605,-4601,-4597,
+-4594,-4590,-4585,-4579,-4572,-4564,-4555,-4546,-4535,-4524,-4512,-4500,-4486,-4471,-4456,-4441,-4425,-4410,-4395,-4380,-4366,
+-4351,-4336,-4320,-4305,-4289,-4273,-4257,-4242,-4228,-4214,-4199,-4184,-4169,-4152,-4134,-4115,-4095,-4074,-4052,-4030,-4006,
+-3983,-3959,-3935,-3912,-3890,-3869,-3849,-3831,-3814,-3799,-3784,-3769,-3755,-3741,-3726,-3712,-3698,-3685,-3672,-3661,-3650,
+-3641,-3633,-3626,-3620,-3614,-3608,-3601,-3594,-3586,-3577,-3567,-3556,-3546,-3536,-3528,-3520,-3512,-3505,-3497,-3489,-3479,
+-3468,-3455,-3442,-3429,-3417,-3405,-3395,-3385,-3375,-3366,-3355,-3344,-3331,-3316,-3300,-3283,-3266,-3248,-3231,-3215,-3200,
+-3186,-3173,-3160,-3146,-3132,-3117,-3100,-3081,-3062,-3041,-3020,-2999,-2980,-2961,-2943,-2927,-2911,-2897,-2885,-2874,-2866,
+-2860,-2856,-2853,-2850,-2847,-2841,-2834,-2823,-2809,-2794,-2778,-2762,-2747,-2734,-2723,-2715,-2708,-2702,-2698,-2693,-2690,
+-2686,-2682,-2676,-2669,-2660,-2648,-2634,-2618,-2600,-2582,-2564,-2548,-2534,-2520,-2509,-2497,-2486,-2474,-2462,-2449,-2435,
+-2420,-2403,-2384,-2362,-2338,-2311,-2282,-2253,-2225,-2200,-2178,-2161,-2147,-2135,-2124,-2112,-2097,-2080,-2061,-2040,-2019,
+-2000,-1982,-1966,-1950,-1935,-1917,-1896,-1872,-1844,-1814,-1782,-1750,-1721,-1694,-1671,-1651,-1633,-1616,-1598,-1577,-1553,
+-1526,-1495,-1462,-1429,-1398,-1371,-1348,-1330,-1316,-1304,-1293,-1280,-1264,-1243,-1219,-1191,-1162,-1134,-1107,-1084,-1064,
+-1046,-1031,-1017,-1002,-986,-969,-950,-929,-908,-885,-860,-835,-807,-778,-748,-718,-687,-657,-628,-598,-569,
+-538,-505,-470,-432,-392,-351,-311,-272,-236,-202,-169,-135,-99,-58,-12,39,96,156,216,273,324,
+367,403,432,456,479,504,534,572,619,671,728,784,835,876,906,923,928,925,917,909,905,
+907,914,926,941,955,967,978,987,997,1011,1030,1055,1086,1119,1151,1178,1196,1204,1203,1193,1179,
+1164,1151,1142,1138,1137,1137,1137,1135,1131,1126,1122,1121,1126,1136,1152,1172,1194,1217,1237,1252,1262,
+1265,1260,1247,1225,1195,1158,1115,1069,1023,980,944,915,894,882,875,872,871,870,868,866,864,
+864,865,869,875,882,888,892,895,895,894,892,891,890,890,891,893,895,897,900,903,908,
+915,924,935,946,958,968,977,982,985,985,983,979,975,970,965,960,955,951,946,942,938,
+934,929,925,920,915,910,905,901,896,892,888,884,880,876,872,867,864,860,859,858,859,
+861,863,866,867,867,866,863,857,851,843,835,827,819,813,807,803,800,797,794,791,787,
+782,777,770,762,755,747,739,732,726,720,715,711,708,705,702,700,698,696,693,691,688,
+685,681,676,671,665,658,652,646,641,637,635,635,636,638,640,642,643,644,643,643,643,
+644,646,649,654,660,665,670,674,677,679,680,683,686,691,696,702,708,713,715,716,716,
+714,713,713,714,715,718,720,721,721,719,715,711,706,704,703,705,710,718,727,738,749,
+762,774,786,798,810,820,830,838,844,850,856,862,869,878,890,902,917,933,949,966,982,
+998,1014,1028,1040,1050,1058,1062,1064,1063,1063,1063,1064,1068,1074,1083,1093,1105,1116,1126,1135,1144,
+1152,1160,1170,1182,1196,1212,1227,1242,1255,1264,1271,1276,1279,1283,1289,1297,1309,1324,1342,1362,1384,
+1405,1424,1442,1457,1469,1476,1481,1483,1483,1483,1485,1490,1500,1513,1529,1546,1561,1571,1576,1574,1565,
+1551,1535,1520,1510,1506,1509,1519,1533,1549,1563,1574,1578,1577,1570,1559,1547,1536,1528,1524,1524,1527,
+1532,1539,1545,1549,1552,1554,1554,1555,1555,1557,1558,1559,1559,1557,1554,1548,1541,1534,1526,1519,1513,
+1510,1507,1507,1508,1511,1515,1521,1529,1539,1551,1564,1579,1594,1610,1626,1641,1656,1671,1685,1699,1713,
+1726,1739,1752,1766,1778,1791,1801,1810,1815,1817,1817,1814,1814,1819,1834,1861,1903,1958,2023,2092,2157,
+2211,2247,2263,2258,2236,2206,2176,2154,2146,2155,2180,2217,2258,2297,2327,2345,2350,2346,2336,2327,2324,
+2331,2348,2376,2411,2450,2489,2523,2551,2572,2584,2591,2591,2588,2584,2577,2571,2564,2556,2546,2536,2524,
+2512,2502,2497,2499,2512,2539,2579,2633,2697,2768,2839,2907,2965,3011,3046,3069,3086,3099,3113,3132,3158,
+3190,3229,3271,3314,3357,3398,3437,3476,3516,3558,3604,3655,3711,3772,3836,3900,3963,4021,4071,4110,4134,
+4142,4131,4100,4049,3981,3899,3808,3713,3620,3535,3461,3402,3358,3327,3307,3294,3283,3272,3258,3239,3216,
+3191,3165,3139,3116,3095,3075,3055,3035,3013,2991,2969,2948,2931,2917,2906,2897,2887,2875,2858,2836,2809,
+2780,2751,2727,2707,2693,2682,2673,2660,2641,2614,2580,2541,2501,2466,2439,2423,2418,2422,2431,2442,2449,
+2451,2445,2434,2418,2401,2382,2364,2345,2324,2299,2270,2235,2195,2154,2112,2073,2038,2008,1982,1959,1938,
+1918,1898,1880,1864,1853,1847,1848,1856,1869,1883,1896,1904,1904,1894,1874,1844,1807,1765,1722,1682,1647,
+1620,1602,1591,1586,1584,1583,1579,1571,1557,1539,1518,1496,1478,1463,1454,1450,1447,1442,1430,1409,1376,
+1331,1274,1212,1148,1090,1043,1012,998,1001,1019,1045,1074,1098,1112,1112,1099,1073,1039,1005,977,959,
+955,964,982,1001,1014,1013,992,950,889,815,736,662,599,552,520,501,487,470,444,405,352,
+291,227,167,119,85,67,59,56,49,33,4,-37,-89,-144,-197,-241,-274,-297,-314,-332,-358,
+-396,-449,-516,-592,-672,-747,-814,-869,-911,-943,-968,-992,-1016,-1044,-1074,-1105,-1135,-1163,-1187,-1209,-1231,
+-1255,-1284,-1318,-1356,-1398,-1441,-1481,-1518,-1552,-1583,-1614,-1646,-1682,-1722,-1764,-1804,-1840,-1868,-1886,-1891,-1884,
+-1868,-1844,-1815,-1784,-1753,-1725,-1704,-1693,-1696,-1717,-1761,-1827,-1915,-2019,-2133,-2246,-2349,-2434,-2498,-2539,-2562,
+-2573,-2580,-2591,-2609,-2637,-2672,-2709,-2744,-2771,-2789,-2797,-2798,-2798,-2802,-2813,-2832,-2859,-2889,-2918,-2940,-2953,
+-2954,-2945,-2931,-2914,-2899,-2891,-2892,-2900,-2916,-2937,-2963,-2991,-3021,-3055,-3093,-3136,-3185,-3240,-3298,-3357,-3415,
+-3468,-3514,-3553,-3582,-3604,-3619,-3629,-3635,-3639,-3642,-3645,-3647,-3651,-3654,-3658,-3662,-3667,-3671,-3676,-3682,-3691,
+-3702,-3718,-3738,-3763,-3793,-3826,-3860,-3894,-3926,-3955,-3979,-4000,-4017,-4032,-4046,-4058,-4068,-4077,-4083,-4086,-4084,
+-4078,-4069,-4059,-4048,-4040,-4034,-4032,-4035,-4043,-4055,-4072,-4095,-4123,-4156,-4193,-4232,-4272,-4308,-4339,-4363,-4381,
+-4393,-4404,-4418,-4439,-4470,-4512,-4564,-4623,-4684,-4740,-4789,-4826,-4851,-4867,-4876,-4884,-4893,-4906,-4925,-4946,-4969,
+-4991,-5008,-5019,-5023,-5022,-5017,-5010,-5002,-4995,-4988,-4982,-4977,-4971,-4966,-4962,-4960,-4961,-4965,-4971,-4979,-4988,
+-4995,-5000,-5000,-4996,-4988,-4976,-4962,-4947,-4935,-4926,-4923,-4927,-4939,-4958,-4983,-5012,-5043,-5071,-5096,-5113,-5124,
+-5127,-5126,-5123,-5121,-5123,-5130,-5143,-5161,-5181,-5200,-5217,-5227,-5230,-5226,-5215,-5200,-5182,-5162,-5144,-5128,-5115,
+-5107,-5104,-5107,-5116,-5132,-5154,-5180,-5208,-5237,-5263,-5284,-5301,-5312,-5319,-5324,-5329,-5334,-5342,-5353,-5366,-5379,
+-5392,-5404,-5414,-5423,-5432,-5441,-5453,-5468,-5487,-5507,-5529,-5550,-5569,-5585,-5597,-5606,-5612,-5617,-5622,-5628,-5636,
+-5646,-5657,-5669,-5680,-5691,-5700,-5708,-5716,-5724,-5733,-5744,-5757,-5771,-5787,-5801,-5811,-5818,-5818,-5812,-5801,-5788,
+-5775,-5767,-5766,-5774,-5791,-5816,-5846,-5878,-5908,-5931,-5948,-5957,-5959,-5955,-5949,-5941,-5933,-5922,-5909,-5893,-5871,
+-5843,-5812,-5779,-5747,-5719,-5697,-5683,-5677,-5676,-5679,-5682,-5683,-5681,-5676,-5669,-5660,-5651,-5644,-5639,-5635,-5632,
+-5628,-5623,-5617,-5609,-5601,-5593,-5586,-5581,-5578,-5577,-5575,-5574,-5570,-5565,-5558,-5549,-5539,-5528,-5517,-5507,-5497,
+-5488,-5481,-5474,-5469,-5465,-5461,-5458,-5454,-5451,-5446,-5441,-5436,-5431,-5428,-5426,-5426,-5428,-5430,-5433,-5434,-5434,
+-5431,-5426,-5419,-5412,-5405,-5399,-5393,-5388,-5383,-5376,-5368,-5358,-5346,-5334,-5323,-5313,-5305,-5300,-5297,-5295,-5293,
+-5290,-5285,-5279,-5271,-5262,-5252,-5243,-5233,-5223,-5214,-5203,-5193,-5181,-5170,-5159,-5150,-5142,-5135,-5128,-5121,-5112,
+-5102,-5089,-5073,-5056,-5039,-5023,-5007,-4994,-4982,-4971,-4959,-4945,-4930,-4913,-4894,-4875,-4856,-4838,-4823,-4809,-4798,
+-4787,-4775,-4763,-4749,-4734,-4719,-4703,-4690,-4678,-4669,-4662,-4657,-4653,-4650,-4646,-4640,-4633,-4626,-4617,-4607,-4598,
+-4588,-4577,-4565,-4553,-4539,-4523,-4507,-4490,-4472,-4454,-4436,-4418,-4400,-4382,-4364,-4346,-4329,-4313,-4298,-4284,-4271,
+-4258,-4245,-4231,-4216,-4198,-4179,-4159,-4137,-4114,-4091,-4068,-4046,-4023,-4001,-3979,-3958,-3937,-3916,-3896,-3877,-3860,
+-3843,-3827,-3812,-3798,-3784,-3770,-3756,-3743,-3729,-3716,-3703,-3691,-3680,-3669,-3660,-3652,-3645,-3639,-3633,-3627,-3620,
+-3613,-3605,-3597,-3588,-3579,-3571,-3562,-3554,-3545,-3536,-3525,-3514,-3501,-3487,-3473,-3458,-3444,-3431,-3420,-3409,-3399,
+-3389,-3379,-3367,-3354,-3340,-3324,-3307,-3290,-3273,-3256,-3240,-3225,-3211,-3197,-3183,-3169,-3156,-3142,-3128,-3113,-3097,
+-3080,-3062,-3043,-3024,-3004,-2984,-2966,-2948,-2933,-2919,-2908,-2898,-2891,-2885,-2880,-2876,-2872,-2868,-2863,-2857,-2850,
+-2841,-2831,-2820,-2807,-2794,-2781,-2768,-2757,-2748,-2741,-2736,-2734,-2731,-2729,-2725,-2719,-2710,-2696,-2680,-2661,-2641,
+-2621,-2602,-2585,-2570,-2556,-2543,-2530,-2517,-2503,-2489,-2475,-2460,-2445,-2428,-2411,-2391,-2368,-2343,-2315,-2286,-2257,
+-2230,-2206,-2186,-2170,-2158,-2147,-2137,-2126,-2112,-2096,-2078,-2058,-2038,-2018,-1998,-1979,-1961,-1941,-1920,-1897,-1872,
+-1845,-1818,-1790,-1763,-1739,-1716,-1695,-1676,-1657,-1638,-1617,-1595,-1570,-1542,-1512,-1480,-1449,-1419,-1391,-1367,-1347,
+-1331,-1317,-1304,-1291,-1276,-1258,-1237,-1213,-1188,-1162,-1137,-1114,-1094,-1076,-1059,-1044,-1028,-1012,-996,-978,-960,
+-941,-922,-901,-880,-856,-829,-800,-767,-733,-697,-662,-628,-595,-564,-534,-504,-473,-440,-404,-364,-321,
+-276,-227,-176,-123,-68,-11,47,106,164,218,268,310,343,369,387,400,413,429,452,485,529,
+583,644,707,767,818,855,878,886,883,871,858,847,842,844,853,868,884,898,910,917,922,
+926,932,943,958,979,1004,1029,1052,1070,1082,1087,1088,1085,1081,1078,1076,1076,1076,1076,1074,1071,
+1066,1062,1059,1061,1067,1079,1095,1114,1133,1152,1167,1178,1184,1182,1174,1158,1135,1103,1066,1023,978,
+933,892,858,831,814,804,801,801,803,806,807,807,806,806,808,811,816,822,828,833,837,
+839,840,841,841,842,843,844,845,847,847,848,850,853,857,864,873,883,894,904,912,918,
+922,922,921,917,913,908,903,899,894,890,886,882,879,876,873,871,869,868,866,865,863,
+860,857,853,849,844,840,836,832,829,826,823,821,819,817,816,814,812,810,807,804,799,
+794,788,782,775,767,761,755,750,746,743,741,739,736,733,729,724,718,711,705,698,691,
+685,680,676,672,669,665,662,658,655,651,647,643,640,637,635,632,630,627,624,621,617,
+614,611,609,609,609,611,613,616,619,622,625,628,632,636,641,647,653,659,665,670,674,
+676,678,680,682,683,686,689,691,694,695,695,695,694,693,693,693,694,696,697,698,698,
+696,694,691,688,686,686,688,692,698,707,716,727,738,750,762,774,786,797,808,817,826,
+833,840,846,853,862,872,884,897,911,926,941,956,972,988,1005,1021,1036,1049,1059,1067,1072,
+1073,1074,1075,1076,1080,1086,1095,1105,1109,1119,1129,1137,1143,1148,1153,1158,1164,1173,1184,1196,1208,
+1221,1232,1241,1250,1257,1264,1272,1282,1294,1308,1325,1345,1365,1387,1408,1428,1445,1459,1468,1472,1473,
+1472,1470,1469,1473,1482,1496,1516,1537,1558,1575,1585,1585,1576,1558,1535,1511,1490,1475,1469,1472,1484,
+1501,1519,1536,1549,1555,1555,1549,1540,1529,1519,1512,1508,1506,1507,1509,1511,1513,1515,1517,1519,1522,
+1527,1531,1536,1539,1540,1539,1535,1529,1522,1515,1509,1504,1501,1500,1499,1500,1500,1502,1505,1510,1518,
+1528,1542,1559,1577,1595,1612,1627,1639,1649,1658,1666,1675,1685,1697,1711,1727,1742,1758,1772,1783,1792,
+1798,1803,1807,1814,1825,1844,1873,1914,1966,2028,2095,2160,2218,2261,2287,2291,2277,2249,2214,2182,2159,
+2153,2166,2197,2242,2293,2343,2385,2414,2428,2430,2423,2412,2405,2405,2415,2437,2467,2502,2538,2570,2595,
+2610,2614,2610,2598,2581,2563,2545,2529,2515,2504,2495,2487,2480,2474,2471,2472,2479,2496,2525,2566,2618,
+2681,2749,2818,2883,2939,2983,3013,3032,3041,3046,3053,3066,3090,3126,3174,3233,3298,3365,3429,3487,3538,
+3581,3618,3651,3684,3721,3764,3813,3869,3928,3987,4040,4083,4110,4119,4106,4071,4017,3946,3864,3776,3688,
+3606,3534,3474,3428,3396,3374,3359,3348,3337,3324,3307,3287,3264,3240,3216,3195,3176,3158,3141,3123,3101,
+3077,3049,3020,2992,2967,2946,2931,2919,2910,2900,2889,2874,2855,2834,2812,2791,2774,2760,2748,2736,2721,
+2701,2674,2641,2604,2566,2531,2503,2483,2472,2467,2465,2462,2454,2439,2417,2388,2355,2319,2283,2249,2217,
+2185,2154,2122,2090,2058,2028,2001,1978,1960,1946,1934,1923,1910,1895,1877,1858,1840,1826,1819,1820,1830,
+1846,1865,1884,1897,1901,1894,1876,1848,1812,1772,1732,1695,1663,1638,1619,1605,1593,1583,1571,1557,1541,
+1522,1503,1486,1471,1461,1455,1453,1453,1453,1448,1435,1412,1376,1329,1273,1210,1148,1091,1045,1015,1003,
+1010,1032,1064,1099,1130,1150,1156,1145,1121,1088,1055,1029,1017,1021,1040,1071,1104,1130,1139,1126,1087,
+1026,947,862,779,708,654,616,592,574,555,527,488,437,377,317,263,221,194,180,177,174,
+166,146,109,58,-3,-69,-133,-189,-234,-270,-300,-332,-370,-420,-483,-557,-636,-715,-788,-850,-898,
+-934,-960,-982,-1001,-1023,-1047,-1073,-1100,-1125,-1148,-1169,-1189,-1210,-1235,-1264,-1299,-1337,-1376,-1414,-1447,-1477,
+-1503,-1529,-1556,-1588,-1627,-1671,-1719,-1766,-1809,-1842,-1863,-1872,-1868,-1854,-1832,-1806,-1776,-1746,-1718,-1695,-1680,
+-1678,-1694,-1732,-1792,-1875,-1975,-2084,-2193,-2294,-2376,-2438,-2478,-2501,-2513,-2522,-2535,-2556,-2585,-2621,-2658,-2690,
+-2715,-2730,-2737,-2741,-2746,-2758,-2779,-2809,-2847,-2885,-2919,-2942,-2951,-2946,-2929,-2906,-2881,-2861,-2849,-2847,-2855,
+-2869,-2888,-2911,-2936,-2964,-2997,-3037,-3086,-3143,-3206,-3271,-3334,-3391,-3438,-3473,-3496,-3510,-3518,-3523,-3529,-3537,
+-3550,-3565,-3582,-3599,-3615,-3628,-3639,-3647,-3654,-3659,-3665,-3671,-3679,-3689,-3701,-3716,-3735,-3758,-3786,-3818,-3853,
+-3889,-3926,-3960,-3991,-4017,-4039,-4055,-4068,-4077,-4084,-4088,-4090,-4089,-4086,-4081,-4074,-4066,-4058,-4051,-4046,-4044,
+-4047,-4057,-4072,-4095,-4125,-4161,-4202,-4244,-4285,-4322,-4354,-4378,-4395,-4408,-4419,-4434,-4457,-4490,-4534,-4588,-4649,
+-4711,-4769,-4818,-4855,-4879,-4891,-4896,-4899,-4903,-4913,-4930,-4954,-4984,-5015,-5045,-5070,-5087,-5097,-5100,-5096,-5089,
+-5081,-5072,-5065,-5060,-5056,-5053,-5053,-5053,-5055,-5059,-5064,-5070,-5076,-5083,-5088,-5090,-5088,-5081,-5069,-5052,-5032,
+-5010,-4989,-4972,-4962,-4961,-4970,-4990,-5018,-5052,-5089,-5125,-5156,-5180,-5195,-5203,-5205,-5203,-5200,-5201,-5205,-5215,
+-5231,-5250,-5271,-5291,-5308,-5320,-5324,-5321,-5311,-5295,-5274,-5250,-5228,-5208,-5195,-5188,-5190,-5200,-5217,-5238,-5260,
+-5282,-5300,-5314,-5323,-5329,-5334,-5340,-5347,-5359,-5373,-5390,-5408,-5425,-5439,-5451,-5460,-5467,-5475,-5484,-5496,-5512,
+-5531,-5552,-5574,-5596,-5614,-5630,-5641,-5650,-5657,-5664,-5671,-5680,-5691,-5703,-5716,-5728,-5739,-5748,-5754,-5759,-5763,
+-5768,-5775,-5784,-5797,-5812,-5828,-5842,-5851,-5855,-5851,-5839,-5820,-5799,-5778,-5762,-5755,-5758,-5774,-5799,-5832,-5869,
+-5906,-5939,-5966,-5988,-6004,-6016,-6025,-6034,-6041,-6046,-6046,-6039,-6023,-5999,-5966,-5927,-5887,-5847,-5813,-5787,-5769,
+-5759,-5754,-5752,-5751,-5748,-5743,-5736,-5727,-5719,-5712,-5706,-5702,-5700,-5697,-5694,-5688,-5682,-5673,-5664,-5655,-5647,
+-5640,-5634,-5630,-5626,-5623,-5620,-5616,-5611,-5605,-5598,-5589,-5579,-5567,-5555,-5542,-5530,-5520,-5511,-5504,-5499,-5496,
+-5493,-5490,-5487,-5484,-5481,-5478,-5477,-5478,-5480,-5483,-5487,-5490,-5492,-5492,-5490,-5486,-5481,-5475,-5470,-5465,-5461,
+-5456,-5450,-5443,-5434,-5423,-5411,-5400,-5390,-5381,-5376,-5372,-5370,-5369,-5368,-5365,-5361,-5355,-5348,-5340,-5330,-5320,
+-5309,-5298,-5285,-5272,-5258,-5244,-5230,-5218,-5208,-5198,-5190,-5181,-5172,-5160,-5147,-5132,-5115,-5099,-5083,-5070,-5058,
+-5048,-5039,-5029,-5019,-5006,-4991,-4974,-4955,-4937,-4920,-4904,-4889,-4876,-4864,-4851,-4836,-4821,-4804,-4787,-4770,-4754,
+-4741,-4730,-4721,-4714,-4709,-4704,-4699,-4693,-4686,-4678,-4669,-4660,-4651,-4640,-4629,-4616,-4601,-4585,-4568,-4550,-4531,
+-4512,-4493,-4475,-4456,-4438,-4420,-4401,-4384,-4366,-4349,-4333,-4318,-4304,-4289,-4275,-4258,-4241,-4221,-4200,-4177,-4153,
+-4129,-4106,-4084,-4063,-4042,-4023,-4004,-3985,-3966,-3947,-3929,-3910,-3893,-3875,-3859,-3843,-3827,-3812,-3797,-3783,-3769,
+-3755,-3741,-3729,-3717,-3705,-3695,-3685,-3676,-3667,-3659,-3652,-3644,-3637,-3629,-3622,-3614,-3607,-3599,-3592,-3584,-3576,
+-3568,-3558,-3546,-3533,-3519,-3503,-3488,-3472,-3458,-3444,-3432,-3420,-3409,-3397,-3384,-3371,-3356,-3340,-3325,-3309,-3295,
+-3280,-3266,-3252,-3237,-3222,-3205,-3189,-3172,-3156,-3142,-3129,-3118,-3107,-3096,-3083,-3070,-3054,-3036,-3018,-2999,-2982,
+-2967,-2954,-2943,-2935,-2928,-2921,-2915,-2909,-2902,-2895,-2888,-2882,-2877,-2871,-2866,-2859,-2850,-2840,-2828,-2815,-2803,
+-2791,-2782,-2775,-2770,-2766,-2762,-2755,-2746,-2733,-2716,-2696,-2676,-2655,-2636,-2619,-2603,-2589,-2575,-2561,-2545,-2528,
+-2510,-2491,-2474,-2457,-2441,-2427,-2412,-2396,-2378,-2356,-2331,-2305,-2277,-2251,-2227,-2206,-2188,-2174,-2161,-2148,-2134,
+-2119,-2102,-2084,-2065,-2046,-2027,-2009,-1990,-1972,-1952,-1930,-1907,-1882,-1855,-1829,-1802,-1777,-1752,-1728,-1705,-1682,
+-1661,-1639,-1618,-1596,-1575,-1553,-1530,-1506,-1481,-1456,-1430,-1405,-1382,-1360,-1341,-1323,-1306,-1290,-1273,-1255,-1235,
+-1214,-1193,-1172,-1152,-1133,-1115,-1099,-1082,-1066,-1049,-1032,-1014,-996,-978,-960,-943,-925,-904,-881,-853,-821,
+-785,-746,-707,-668,-632,-598,-569,-541,-513,-484,-451,-412,-367,-315,-258,-197,-133,-68,-4,56,113,
+165,210,249,281,306,325,339,353,369,390,419,458,507,562,622,681,734,776,806,822,825,
+820,810,800,793,793,800,811,826,840,853,861,866,869,871,876,884,896,911,929,946,961,
+973,981,985,988,990,993,997,1001,1005,1007,1006,1003,996,989,983,981,985,995,1011,1032,1055,
+1077,1096,1110,1117,1117,1110,1096,1075,1048,1015,977,935,892,851,813,781,757,741,733,731,734,
+739,745,750,754,758,762,765,770,775,780,785,789,793,795,796,797,798,799,801,802,803,
+803,803,802,802,802,804,808,814,822,830,837,843,847,849,848,845,842,839,836,834,833,
+833,833,833,832,831,830,828,827,826,825,823,822,819,817,813,809,805,801,798,796,794,
+792,791,789,786,783,778,773,768,764,759,755,752,749,745,741,736,729,722,714,706,698,
+691,685,680,676,673,669,666,662,657,652,647,641,636,632,628,626,624,622,620,619,616,
+614,610,607,604,601,598,597,596,596,597,597,597,596,595,593,592,591,591,591,593,596,
+600,604,609,614,620,625,630,636,641,646,651,655,659,662,664,666,668,670,671,673,674,
+674,674,674,673,673,673,674,675,676,677,678,677,676,674,671,668,667,666,667,670,674,
+680,688,696,706,716,728,741,754,767,780,792,802,812,820,828,836,844,855,866,879,893,
+908,923,937,952,967,982,998,1014,1029,1043,1055,1064,1070,1074,1076,1077,1080,1084,1090,1099,1109,
+1092,1103,1112,1119,1125,1129,1133,1137,1143,1150,1160,1171,1183,1195,1207,1217,1226,1234,1242,1250,1259,
+1270,1282,1297,1315,1334,1355,1375,1395,1413,1428,1438,1444,1446,1445,1443,1443,1447,1458,1474,1497,1523,
+1549,1572,1587,1591,1585,1567,1541,1512,1483,1460,1446,1442,1448,1463,1482,1502,1519,1532,1538,1537,1531,
+1522,1510,1499,1488,1479,1472,1467,1464,1463,1464,1468,1475,1484,1495,1506,1516,1523,1527,1527,1524,1518,
+1511,1505,1501,1498,1498,1500,1503,1506,1509,1512,1517,1523,1532,1544,1559,1577,1595,1612,1626,1637,1644,
+1648,1651,1654,1660,1668,1680,1694,1710,1726,1740,1752,1761,1767,1772,1778,1787,1801,1824,1855,1898,1949,
+2009,2074,2139,2201,2252,2290,2311,2315,2303,2280,2252,2225,2208,2205,2218,2247,2290,2339,2390,2435,2469,
+2491,2500,2499,2492,2484,2479,2481,2491,2508,2529,2551,2570,2583,2588,2584,2572,2554,2533,2512,2494,2480,
+2472,2469,2470,2475,2481,2488,2494,2501,2509,2521,2539,2565,2599,2643,2693,2748,2804,2856,2901,2936,2962,
+2979,2992,3005,3023,3051,3093,3148,3216,3292,3372,3448,3517,3573,3616,3647,3669,3687,3707,3733,3767,3811,
+3861,3913,3962,4000,4022,4024,4005,3965,3908,3838,3763,3687,3617,3556,3507,3469,3443,3424,3410,3398,3384,
+3368,3347,3323,3297,3270,3246,3224,3205,3188,3173,3156,3138,3116,3090,3062,3033,3007,2985,2967,2955,2947,
+2940,2931,2919,2902,2880,2855,2830,2806,2786,2770,2758,2747,2734,2717,2693,2664,2629,2593,2558,2528,2505,
+2488,2477,2467,2456,2439,2415,2382,2342,2296,2249,2202,2158,2119,2083,2052,2023,1997,1972,1950,1931,1914,
+1901,1889,1878,1865,1849,1830,1807,1784,1762,1746,1737,1739,1750,1770,1794,1818,1838,1849,1849,1837,1815,
+1785,1751,1716,1683,1654,1630,1610,1592,1576,1560,1543,1525,1506,1487,1470,1455,1444,1435,1430,1426,1421,
+1415,1405,1389,1366,1335,1296,1250,1200,1148,1100,1060,1031,1016,1016,1029,1052,1080,1105,1121,1125,1116,
+1093,1063,1031,1007,994,998,1018,1049,1085,1116,1132,1127,1099,1048,981,906,832,767,716,679,653,
+631,608,577,536,484,426,367,314,273,244,227,217,206,189,159,116,59,-4,-71,-134,-189,
+-235,-272,-307,-343,-388,-442,-508,-582,-659,-733,-800,-855,-898,-931,-956,-979,-1002,-1027,-1055,-1084,-1112,
+-1138,-1161,-1181,-1199,-1219,-1243,-1271,-1304,-1340,-1376,-1410,-1440,-1467,-1490,-1513,-1539,-1570,-1608,-1650,-1695,-1739,
+-1776,-1805,-1822,-1828,-1824,-1814,-1800,-1783,-1768,-1753,-1741,-1733,-1731,-1738,-1757,-1792,-1845,-1914,-1996,-2086,-2175,
+-2256,-2324,-2375,-2410,-2432,-2447,-2462,-2482,-2508,-2541,-2577,-2611,-2639,-2657,-2666,-2668,-2668,-2673,-2686,-2710,-2745,
+-2786,-2828,-2865,-2890,-2902,-2900,-2887,-2869,-2852,-2841,-2838,-2844,-2857,-2874,-2893,-2912,-2931,-2952,-2979,-3013,-3058,
+-3112,-3174,-3240,-3304,-3361,-3407,-3441,-3463,-3475,-3483,-3489,-3498,-3511,-3528,-3549,-3571,-3592,-3610,-3625,-3638,-3647,
+-3655,-3663,-3669,-3676,-3681,-3687,-3692,-3698,-3707,-3721,-3742,-3770,-3806,-3847,-3891,-3935,-3976,-4011,-4039,-4059,-4072,
+-4079,-4083,-4085,-4085,-4085,-4084,-4083,-4080,-4076,-4072,-4068,-4066,-4067,-4074,-4086,-4105,-4130,-4162,-4197,-4236,-4276,
+-4315,-4351,-4383,-4411,-4434,-4455,-4475,-4497,-4524,-4558,-4598,-4645,-4697,-4749,-4798,-4840,-4874,-4897,-4911,-4919,-4924,
+-4930,-4942,-4960,-4986,-5018,-5053,-5088,-5119,-5143,-5159,-5166,-5165,-5160,-5152,-5146,-5142,-5142,-5145,-5151,-5159,-5166,
+-5171,-5173,-5173,-5169,-5164,-5158,-5151,-5144,-5137,-5128,-5117,-5102,-5085,-5065,-5044,-5024,-5009,-5001,-5002,-5013,-5034,
+-5064,-5100,-5138,-5175,-5208,-5233,-5251,-5262,-5266,-5268,-5269,-5271,-5278,-5289,-5306,-5326,-5348,-5371,-5390,-5404,-5412,
+-5412,-5404,-5389,-5370,-5350,-5331,-5316,-5308,-5307,-5312,-5323,-5337,-5352,-5364,-5374,-5379,-5381,-5382,-5383,-5387,-5394,
+-5407,-5422,-5441,-5459,-5476,-5490,-5501,-5509,-5515,-5522,-5532,-5544,-5560,-5579,-5599,-5620,-5638,-5654,-5666,-5675,-5682,
+-5688,-5694,-5702,-5712,-5724,-5737,-5751,-5764,-5775,-5784,-5791,-5797,-5802,-5807,-5815,-5824,-5836,-5849,-5862,-5872,-5878,
+-5878,-5871,-5857,-5838,-5817,-5797,-5782,-5776,-5780,-5795,-5820,-5852,-5888,-5924,-5957,-5986,-6010,-6031,-6049,-6066,-6084,
+-6101,-6117,-6130,-6137,-6136,-6124,-6103,-6074,-6038,-6000,-5963,-5928,-5899,-5875,-5856,-5841,-5828,-5816,-5804,-5793,-5782,
+-5772,-5763,-5757,-5752,-5749,-5746,-5743,-5739,-5734,-5728,-5721,-5714,-5707,-5700,-5694,-5688,-5683,-5679,-5676,-5673,-5670,
+-5667,-5662,-5656,-5647,-5637,-5624,-5609,-5594,-5580,-5567,-5556,-5548,-5542,-5537,-5533,-5529,-5526,-5523,-5521,-5521,-5522,
+-5526,-5532,-5539,-5546,-5551,-5554,-5555,-5553,-5549,-5543,-5537,-5532,-5526,-5521,-5516,-5510,-5504,-5496,-5487,-5478,-5470,
+-5462,-5456,-5451,-5448,-5445,-5441,-5438,-5433,-5427,-5421,-5414,-5407,-5399,-5391,-5382,-5371,-5360,-5346,-5332,-5317,-5303,
+-5288,-5275,-5262,-5250,-5237,-5224,-5210,-5195,-5180,-5164,-5150,-5137,-5126,-5116,-5107,-5098,-5089,-5077,-5064,-5049,-5033,
+-5015,-4998,-4982,-4966,-4951,-4936,-4921,-4905,-4888,-4871,-4854,-4837,-4822,-4808,-4796,-4785,-4776,-4768,-4760,-4752,-4743,
+-4735,-4726,-4717,-4707,-4697,-4686,-4674,-4660,-4644,-4626,-4607,-4587,-4567,-4548,-4529,-4511,-4494,-4477,-4461,-4444,-4427,
+-4409,-4392,-4375,-4357,-4340,-4322,-4304,-4285,-4265,-4243,-4221,-4198,-4174,-4151,-4129,-4107,-4087,-4067,-4048,-4030,-4012,
+-3995,-3977,-3960,-3943,-3927,-3910,-3894,-3877,-3861,-3844,-3827,-3811,-3794,-3779,-3764,-3750,-3737,-3725,-3715,-3705,-3695,
+-3686,-3677,-3667,-3658,-3647,-3637,-3627,-3617,-3608,-3600,-3593,-3586,-3580,-3572,-3564,-3554,-3542,-3529,-3515,-3500,-3485,
+-3471,-3458,-3445,-3432,-3419,-3405,-3391,-3376,-3360,-3345,-3330,-3317,-3304,-3292,-3280,-3266,-3251,-3233,-3214,-3194,-3175,
+-3158,-3144,-3133,-3126,-3121,-3116,-3110,-3102,-3090,-3075,-3058,-3039,-3022,-3006,-2993,-2984,-2976,-2970,-2964,-2957,-2949,
+-2940,-2930,-2921,-2913,-2906,-2900,-2895,-2888,-2881,-2871,-2860,-2847,-2834,-2821,-2810,-2801,-2793,-2785,-2778,-2768,-2755,
+-2740,-2722,-2703,-2683,-2665,-2649,-2635,-2622,-2610,-2595,-2579,-2560,-2538,-2516,-2494,-2474,-2457,-2443,-2432,-2421,-2410,
+-2397,-2380,-2359,-2335,-2310,-2284,-2260,-2237,-2218,-2201,-2185,-2170,-2154,-2137,-2119,-2101,-2083,-2065,-2048,-2031,-2014,
+-1995,-1975,-1952,-1927,-1901,-1873,-1846,-1818,-1790,-1763,-1736,-1710,-1685,-1660,-1637,-1616,-1597,-1580,-1563,-1547,-1530,
+-1512,-1491,-1469,-1445,-1420,-1396,-1374,-1354,-1336,-1319,-1303,-1286,-1268,-1248,-1228,-1207,-1186,-1167,-1148,-1131,-1115,
+-1098,-1081,-1064,-1045,-1026,-1007,-989,-972,-955,-937,-917,-894,-867,-836,-801,-765,-728,-692,-658,-626,-596,
+-566,-533,-496,-453,-403,-346,-285,-220,-155,-92,-32,21,70,113,151,184,213,238,262,284,307,
+333,363,399,441,488,539,590,638,680,714,737,750,755,755,752,752,754,761,772,785,799,
+811,822,829,836,842,850,860,873,888,902,915,924,928,927,922,915,910,907,908,912,919,
+925,930,930,926,919,911,905,903,908,922,942,967,995,1020,1041,1054,1058,1053,1040,1019,992,
+961,926,889,851,813,777,745,718,697,682,674,671,672,677,683,690,698,705,713,720,728,
+735,742,748,753,757,759,760,761,762,763,764,765,766,765,763,761,758,756,755,755,757,
+760,763,767,768,769,767,765,762,759,758,758,761,765,770,775,779,783,784,785,784,783,
+781,778,776,774,771,768,765,762,759,756,755,754,754,755,755,755,753,750,745,739,732,
+725,719,713,708,703,698,693,687,680,672,663,653,643,634,625,618,612,607,603,600,597,
+593,590,586,582,578,575,573,571,570,570,571,572,572,572,572,570,568,566,565,563,563,
+563,563,564,565,566,566,566,566,565,565,566,568,571,575,580,586,592,598,604,609,614,
+618,623,627,630,634,637,641,644,646,649,650,652,652,653,653,653,653,654,654,655,656,
+656,656,656,654,653,651,649,648,648,650,652,656,660,666,673,681,690,701,714,728,742,
+756,770,782,792,800,808,814,821,830,841,854,869,885,903,920,937,953,968,982,996,1008,
+1019,1029,1036,1042,1046,1048,1050,1053,1057,1063,1072,1082,1092,1066,1078,1088,1096,1101,1106,1110,1115,
+1121,1130,1140,1151,1163,1174,1185,1195,1203,1211,1218,1225,1233,1242,1253,1265,1279,1295,1311,1329,1347,
+1364,1379,1390,1398,1403,1405,1405,1407,1411,1422,1438,1461,1488,1517,1543,1562,1572,1571,1558,1536,1509,
+1480,1455,1437,1428,1429,1439,1454,1473,1490,1503,1510,1510,1505,1494,1480,1465,1450,1436,1424,1416,1411,
+1410,1415,1423,1436,1452,1470,1487,1502,1512,1518,1519,1516,1510,1504,1499,1497,1498,1503,1509,1517,1525,
+1532,1538,1545,1552,1561,1572,1584,1598,1610,1621,1629,1633,1634,1634,1633,1636,1641,1651,1664,1680,1696,
+1710,1721,1728,1733,1736,1741,1750,1765,1790,1824,1868,1921,1980,2043,2106,2167,2222,2268,2304,2329,2342,
+2344,2338,2328,2318,2311,2312,2322,2341,2369,2403,2438,2471,2498,2516,2526,2528,2525,2518,2511,2507,2507,
+2511,2518,2527,2534,2537,2536,2529,2516,2500,2483,2467,2454,2447,2447,2454,2466,2483,2501,2519,2534,2546,
+2553,2559,2563,2571,2583,2602,2630,2665,2706,2750,2793,2833,2868,2898,2924,2949,2979,3016,3064,3125,3197,
+3277,3358,3436,3504,3558,3596,3620,3633,3640,3648,3662,3685,3717,3757,3799,3836,3863,3874,3865,3837,3791,
+3733,3668,3604,3546,3499,3464,3442,3431,3426,3424,3421,3414,3400,3379,3352,3320,3286,3252,3220,3190,3163,
+3138,3113,3088,3064,3039,3015,2995,2980,2972,2970,2974,2982,2988,2991,2986,2971,2946,2913,2875,2837,2804,
+2778,2761,2751,2746,2741,2732,2716,2692,2660,2623,2585,2548,2517,2491,2471,2453,2434,2411,2380,2342,2296,
+2245,2193,2141,2094,2053,2017,1987,1961,1938,1916,1895,1875,1855,1836,1818,1799,1780,1759,1737,1714,1692,
+1672,1659,1655,1660,1675,1699,1727,1756,1782,1799,1807,1804,1789,1767,1739,1707,1676,1647,1621,1596,1574,
+1554,1534,1514,1495,1477,1460,1444,1430,1417,1404,1391,1378,1363,1348,1332,1314,1295,1275,1251,1225,1195,
+1162,1127,1094,1065,1043,1031,1028,1033,1044,1056,1065,1064,1054,1032,1002,970,941,920,913,919,937,
+961,985,1001,1003,989,959,916,867,818,774,739,712,691,670,646,612,568,516,457,398,345,
+299,264,235,210,183,148,103,46,-18,-87,-154,-214,-264,-304,-337,-367,-400,-441,-491,-552,-619,
+-689,-756,-816,-866,-906,-939,-968,-996,-1027,-1061,-1098,-1136,-1173,-1207,-1236,-1261,-1283,-1306,-1331,-1359,-1392,
+-1426,-1461,-1495,-1525,-1553,-1578,-1603,-1631,-1662,-1696,-1733,-1769,-1801,-1824,-1839,-1842,-1837,-1825,-1811,-1797,-1788,
+-1784,-1786,-1793,-1805,-1823,-1848,-1880,-1921,-1972,-2033,-2100,-2171,-2239,-2300,-2350,-2388,-2415,-2435,-2451,-2468,-2491,
+-2518,-2550,-2582,-2611,-2632,-2644,-2648,-2647,-2645,-2648,-2661,-2685,-2718,-2758,-2798,-2833,-2858,-2872,-2876,-2872,-2866,
+-2862,-2865,-2876,-2894,-2916,-2939,-2960,-2978,-2993,-3008,-3026,-3051,-3086,-3131,-3184,-3243,-3302,-3358,-3405,-3443,-3472,
+-3494,-3513,-3531,-3550,-3571,-3595,-3619,-3641,-3661,-3678,-3691,-3701,-3709,-3715,-3720,-3724,-3724,-3721,-3715,-3706,-3698,
+-3694,-3697,-3712,-3739,-3779,-3829,-3887,-3946,-4003,-4052,-4091,-4119,-4136,-4145,-4147,-4145,-4141,-4135,-4129,-4122,-4115,
+-4108,-4103,-4100,-4102,-4109,-4123,-4143,-4168,-4197,-4229,-4263,-4296,-4329,-4362,-4394,-4426,-4458,-4490,-4521,-4551,-4581,
+-4610,-4639,-4669,-4700,-4732,-4765,-4798,-4830,-4860,-4887,-4909,-4928,-4945,-4961,-4980,-5001,-5027,-5056,-5087,-5117,-5145,
+-5166,-5181,-5187,-5188,-5185,-5182,-5182,-5187,-5198,-5215,-5235,-5256,-5272,-5283,-5285,-5277,-5262,-5242,-5218,-5195,-5176,
+-5160,-5148,-5140,-5132,-5124,-5113,-5100,-5085,-5070,-5059,-5052,-5054,-5065,-5085,-5114,-5148,-5184,-5220,-5253,-5280,-5301,
+-5317,-5328,-5337,-5345,-5354,-5366,-5381,-5399,-5420,-5442,-5462,-5480,-5494,-5501,-5502,-5498,-5489,-5478,-5466,-5457,-5452,
+-5451,-5455,-5462,-5471,-5479,-5486,-5489,-5490,-5488,-5486,-5484,-5484,-5487,-5494,-5503,-5513,-5524,-5533,-5541,-5546,-5552,
+-5557,-5565,-5575,-5589,-5606,-5624,-5643,-5660,-5676,-5687,-5696,-5702,-5707,-5712,-5718,-5726,-5736,-5748,-5760,-5773,-5784,
+-5795,-5803,-5811,-5818,-5825,-5833,-5842,-5853,-5864,-5876,-5887,-5895,-5899,-5897,-5891,-5881,-5867,-5853,-5842,-5835,-5836,
+-5845,-5863,-5888,-5918,-5950,-5982,-6011,-6036,-6057,-6073,-6088,-6101,-6115,-6131,-6147,-6163,-6177,-6186,-6190,-6186,-6174,
+-6155,-6130,-6101,-6069,-6037,-6005,-5975,-5946,-5920,-5897,-5876,-5857,-5841,-5827,-5816,-5806,-5797,-5790,-5783,-5778,-5773,
+-5769,-5767,-5765,-5763,-5762,-5761,-5758,-5755,-5751,-5746,-5741,-5736,-5731,-5727,-5723,-5717,-5711,-5702,-5691,-5679,-5664,
+-5650,-5635,-5622,-5611,-5601,-5592,-5585,-5579,-5573,-5569,-5567,-5567,-5569,-5575,-5583,-5592,-5602,-5611,-5618,-5622,-5622,
+-5620,-5615,-5609,-5603,-5597,-5592,-5587,-5582,-5577,-5571,-5565,-5558,-5550,-5543,-5536,-5529,-5523,-5517,-5511,-5504,-5497,
+-5490,-5483,-5476,-5470,-5465,-5459,-5454,-5447,-5438,-5428,-5415,-5400,-5385,-5368,-5352,-5336,-5321,-5307,-5293,-5279,-5265,
+-5251,-5238,-5225,-5212,-5201,-5190,-5180,-5170,-5159,-5147,-5134,-5120,-5104,-5087,-5070,-5053,-5035,-5018,-5000,-4983,-4966,
+-4949,-4933,-4917,-4902,-4888,-4875,-4864,-4852,-4841,-4830,-4819,-4807,-4795,-4783,-4771,-4759,-4748,-4737,-4725,-4712,-4698,
+-4682,-4664,-4646,-4626,-4607,-4588,-4570,-4552,-4536,-4520,-4503,-4487,-4470,-4453,-4435,-4416,-4397,-4378,-4358,-4338,-4317,
+-4296,-4275,-4253,-4230,-4207,-4185,-4162,-4140,-4119,-4097,-4076,-4056,-4037,-4019,-4001,-3985,-3970,-3955,-3941,-3927,-3912,
+-3896,-3879,-3862,-3843,-3825,-3806,-3789,-3773,-3759,-3747,-3736,-3727,-3719,-3711,-3702,-3693,-3682,-3670,-3657,-3644,-3631,
+-3619,-3608,-3599,-3591,-3584,-3577,-3569,-3560,-3550,-3538,-3524,-3510,-3495,-3482,-3468,-3456,-3443,-3431,-3418,-3404,-3389,
+-3374,-3359,-3345,-3332,-3319,-3307,-3294,-3280,-3264,-3246,-3226,-3206,-3187,-3171,-3159,-3151,-3147,-3146,-3145,-3143,-3138,
+-3129,-3116,-3099,-3081,-3063,-3047,-3034,-3024,-3016,-3011,-3005,-2999,-2990,-2981,-2970,-2959,-2948,-2938,-2929,-2920,-2911,
+-2901,-2890,-2877,-2863,-2849,-2835,-2823,-2812,-2803,-2794,-2784,-2773,-2759,-2744,-2727,-2710,-2693,-2679,-2665,-2653,-2642,
+-2629,-2613,-2595,-2574,-2550,-2527,-2505,-2486,-2470,-2459,-2449,-2441,-2431,-2418,-2401,-2380,-2357,-2332,-2308,-2285,-2265,
+-2247,-2232,-2218,-2203,-2188,-2172,-2155,-2136,-2118,-2099,-2080,-2061,-2039,-2016,-1990,-1962,-1931,-1899,-1867,-1836,-1807,
+-1779,-1754,-1730,-1707,-1685,-1663,-1643,-1623,-1605,-1588,-1572,-1557,-1541,-1524,-1505,-1485,-1464,-1442,-1422,-1403,-1387,
+-1371,-1357,-1341,-1324,-1304,-1282,-1257,-1232,-1207,-1183,-1162,-1144,-1127,-1112,-1096,-1080,-1061,-1042,-1022,-1001,-982,
+-964,-948,-932,-915,-896,-875,-850,-823,-793,-760,-727,-692,-655,-615,-572,-524,-472,-414,-353,-291,-229,
+-169,-114,-64,-19,20,56,89,121,152,183,213,244,274,305,338,373,411,451,493,535,575,
+611,640,664,680,692,700,707,715,725,737,752,767,782,796,809,821,834,848,864,883,902,
+920,934,941,941,932,916,896,876,858,846,840,842,847,855,861,864,863,857,850,844,842,
+847,860,880,905,931,956,975,985,986,977,958,933,902,868,834,799,765,734,706,681,660,
+643,631,623,619,618,620,623,628,634,642,651,660,671,681,691,700,707,713,716,719,720,
+722,723,723,723,722,720,717,712,706,701,695,691,687,685,684,684,683,681,679,677,675,
+674,676,679,684,691,699,706,713,718,721,722,722,722,721,720,719,719,719,718,717,716,
+715,713,713,712,713,713,714,713,712,709,705,699,691,683,675,666,657,649,640,632,624,
+615,605,596,586,576,567,558,551,545,541,537,535,533,531,529,527,525,522,519,517,515,
+514,514,515,517,519,521,523,524,525,524,524,522,521,521,520,521,521,522,523,524,525,
+526,528,530,532,536,540,545,551,557,564,570,576,582,587,592,597,602,606,610,614,618,
+621,624,627,629,630,631,632,633,633,633,633,633,633,631,630,629,628,627,628,629,631,
+635,640,645,651,658,665,674,683,694,706,719,733,748,761,773,783,791,796,800,804,809,
+816,826,839,856,874,894,914,933,951,966,978,987,994,997,999,999,999,998,999,1002,1007,
+1015,1026,1038,1052,1066,1040,1053,1063,1070,1074,1078,1082,1087,1094,1103,1114,1126,1138,1151,1162,1173,
+1184,1194,1203,1213,1223,1232,1241,1250,1260,1270,1281,1293,1307,1321,1335,1348,1358,1366,1371,1374,1377,
+1382,1391,1406,1426,1451,1479,1506,1528,1542,1547,1540,1525,1503,1478,1455,1436,1426,1424,1429,1440,1454,
+1466,1475,1479,1476,1468,1456,1440,1424,1410,1397,1388,1383,1383,1388,1398,1411,1428,1447,1467,1485,1500,
+1511,1516,1517,1515,1511,1507,1506,1507,1512,1521,1531,1542,1553,1562,1570,1576,1582,1588,1595,1601,1607,
+1612,1615,1615,1614,1611,1609,1609,1612,1620,1632,1648,1664,1680,1693,1703,1710,1716,1724,1736,1756,1785,
+1824,1872,1928,1987,2048,2107,2162,2212,2256,2294,2328,2356,2381,2401,2416,2428,2436,2442,2446,2449,2453,
+2458,2465,2473,2481,2488,2493,2495,2493,2488,2481,2474,2468,2464,2463,2464,2468,2472,2476,2479,2478,2474,
+2467,2459,2450,2444,2441,2444,2453,2468,2488,2510,2532,2552,2568,2579,2584,2586,2587,2590,2596,2609,2629,
+2655,2685,2719,2752,2783,2812,2840,2869,2903,2945,2998,3062,3135,3215,3296,3371,3435,3486,3520,3539,3549,
+3552,3557,3566,3584,3610,3642,3673,3699,3714,3712,3692,3655,3605,3547,3488,3436,3394,3367,3355,3356,3367,
+3381,3395,3404,3405,3395,3376,3347,3312,3272,3229,3186,3141,3098,3055,3013,2973,2937,2908,2887,2878,2881,
+2897,2922,2954,2987,3015,3033,3035,3022,2992,2951,2904,2857,2817,2787,2769,2762,2762,2764,2763,2753,2732,
+2701,2661,2615,2569,2526,2488,2456,2427,2398,2368,2332,2290,2243,2190,2137,2085,2038,1997,1961,1932,1905,
+1881,1856,1831,1805,1778,1752,1726,1703,1682,1662,1644,1628,1615,1605,1602,1605,1615,1634,1660,1690,1722,
+1751,1774,1790,1796,1791,1778,1758,1732,1704,1674,1644,1615,1586,1560,1534,1511,1490,1471,1453,1437,1422,
+1405,1387,1368,1346,1324,1304,1285,1271,1261,1254,1249,1242,1232,1217,1195,1168,1138,1109,1083,1064,1052,
+1047,1047,1046,1042,1030,1009,979,943,906,873,848,833,829,833,842,851,856,852,841,824,803,
+781,763,747,735,722,706,682,649,605,553,497,439,386,338,296,258,220,177,125,64,-5,
+-81,-158,-229,-290,-339,-377,-406,-432,-459,-494,-537,-590,-649,-711,-772,-826,-873,-913,-948,-980,-1013,
+-1050,-1092,-1137,-1184,-1231,-1274,-1314,-1349,-1381,-1411,-1442,-1474,-1509,-1545,-1580,-1615,-1647,-1677,-1705,-1734,-1763,
+-1793,-1825,-1855,-1883,-1904,-1915,-1916,-1907,-1890,-1868,-1847,-1830,-1820,-1819,-1829,-1848,-1875,-1910,-1950,-1996,-2047,
+-2103,-2162,-2223,-2282,-2336,-2383,-2420,-2448,-2468,-2483,-2497,-2512,-2531,-2555,-2580,-2605,-2627,-2643,-2651,-2655,-2655,
+-2657,-2664,-2679,-2703,-2733,-2768,-2802,-2831,-2853,-2866,-2872,-2875,-2878,-2886,-2900,-2921,-2948,-2977,-3005,-3029,-3048,
+-3063,-3075,-3089,-3107,-3133,-3168,-3210,-3258,-3308,-3357,-3404,-3446,-3484,-3519,-3552,-3585,-3619,-3652,-3683,-3711,-3735,
+-3754,-3768,-3778,-3786,-3791,-3795,-3796,-3793,-3784,-3769,-3749,-3724,-3700,-3682,-3675,-3684,-3711,-3757,-3818,-3890,-3967,
+-4042,-4109,-4164,-4205,-4231,-4245,-4249,-4245,-4236,-4222,-4206,-4189,-4172,-4157,-4145,-4141,-4144,-4156,-4176,-4203,-4234,
+-4266,-4297,-4326,-4352,-4376,-4400,-4426,-4456,-4491,-4528,-4567,-4604,-4637,-4664,-4685,-4700,-4712,-4724,-4738,-4757,-4782,
+-4812,-4846,-4882,-4917,-4949,-4978,-5004,-5027,-5049,-5070,-5090,-5109,-5125,-5138,-5147,-5151,-5151,-5151,-5153,-5161,-5176,
+-5199,-5229,-5262,-5295,-5321,-5338,-5342,-5332,-5310,-5280,-5247,-5214,-5188,-5170,-5160,-5158,-5159,-5162,-5162,-5157,-5148,
+-5135,-5121,-5109,-5104,-5107,-5120,-5142,-5173,-5208,-5246,-5283,-5317,-5346,-5370,-5390,-5405,-5419,-5432,-5446,-5461,-5479,
+-5499,-5520,-5541,-5561,-5578,-5592,-5601,-5606,-5607,-5605,-5601,-5597,-5594,-5593,-5594,-5597,-5600,-5604,-5607,-5609,-5609,
+-5608,-5606,-5603,-5601,-5600,-5599,-5598,-5598,-5596,-5594,-5592,-5591,-5592,-5595,-5602,-5612,-5626,-5643,-5660,-5677,-5692,
+-5705,-5715,-5723,-5729,-5736,-5744,-5753,-5764,-5776,-5788,-5800,-5810,-5819,-5825,-5830,-5834,-5838,-5843,-5850,-5859,-5870,
+-5882,-5895,-5906,-5916,-5922,-5925,-5924,-5920,-5915,-5909,-5904,-5903,-5907,-5916,-5932,-5953,-5978,-6006,-6033,-6059,-6082,
+-6101,-6115,-6126,-6135,-6142,-6150,-6158,-6168,-6180,-6191,-6202,-6210,-6215,-6213,-6206,-6192,-6172,-6147,-6117,-6085,-6052,
+-6021,-5991,-5966,-5944,-5925,-5909,-5895,-5881,-5869,-5856,-5843,-5832,-5822,-5815,-5812,-5811,-5813,-5817,-5820,-5823,-5823,
+-5821,-5817,-5811,-5804,-5797,-5790,-5784,-5778,-5772,-5766,-5758,-5748,-5737,-5724,-5711,-5698,-5686,-5674,-5664,-5655,-5647,
+-5640,-5634,-5631,-5630,-5632,-5637,-5644,-5654,-5664,-5674,-5682,-5687,-5690,-5689,-5687,-5683,-5679,-5674,-5669,-5665,-5660,
+-5654,-5648,-5640,-5632,-5623,-5614,-5606,-5598,-5590,-5583,-5575,-5568,-5560,-5552,-5544,-5537,-5530,-5525,-5519,-5514,-5508,
+-5501,-5493,-5482,-5468,-5453,-5437,-5420,-5403,-5387,-5371,-5357,-5343,-5330,-5318,-5305,-5293,-5281,-5269,-5258,-5246,-5234,
+-5222,-5209,-5195,-5181,-5165,-5149,-5131,-5114,-5095,-5077,-5058,-5040,-5022,-5005,-4990,-4975,-4961,-4949,-4937,-4926,-4915,
+-4904,-4892,-4879,-4865,-4850,-4835,-4819,-4805,-4790,-4776,-4762,-4748,-4734,-4718,-4702,-4685,-4668,-4649,-4631,-4613,-4595,
+-4577,-4559,-4542,-4525,-4507,-4490,-4472,-4453,-4435,-4415,-4396,-4376,-4355,-4335,-4313,-4292,-4270,-4248,-4225,-4202,-4178,
+-4154,-4130,-4106,-4083,-4061,-4040,-4021,-4004,-3989,-3975,-3962,-3950,-3937,-3924,-3909,-3893,-3876,-3858,-3840,-3822,-3806,
+-3791,-3779,-3768,-3760,-3754,-3748,-3742,-3735,-3727,-3716,-3704,-3690,-3676,-3662,-3649,-3636,-3625,-3615,-3606,-3596,-3585,
+-3572,-3557,-3541,-3524,-3507,-3492,-3478,-3465,-3454,-3444,-3433,-3422,-3410,-3396,-3381,-3366,-3351,-3336,-3321,-3307,-3292,
+-3277,-3261,-3244,-3228,-3214,-3201,-3192,-3186,-3183,-3182,-3182,-3180,-3175,-3167,-3155,-3140,-3123,-3106,-3090,-3077,-3066,
+-3058,-3051,-3045,-3037,-3029,-3019,-3008,-2996,-2984,-2972,-2960,-2948,-2936,-2923,-2909,-2894,-2879,-2865,-2851,-2838,-2827,
+-2816,-2806,-2796,-2784,-2771,-2756,-2741,-2725,-2710,-2696,-2683,-2670,-2656,-2641,-2623,-2604,-2583,-2561,-2541,-2523,-2508,
+-2496,-2487,-2478,-2468,-2455,-2438,-2418,-2395,-2371,-2347,-2326,-2308,-2293,-2281,-2270,-2259,-2247,-2233,-2215,-2196,-2174,
+-2152,-2127,-2101,-2073,-2042,-2008,-1970,-1929,-1886,-1844,-1805,-1770,-1740,-1717,-1698,-1684,-1673,-1661,-1650,-1636,-1621,
+-1605,-1587,-1568,-1549,-1529,-1510,-1491,-1472,-1454,-1438,-1423,-1410,-1399,-1388,-1376,-1362,-1345,-1323,-1297,-1269,-1240,
+-1211,-1185,-1162,-1143,-1127,-1112,-1098,-1082,-1064,-1043,-1021,-998,-975,-955,-937,-923,-910,-897,-884,-869,-849,
+-825,-795,-760,-720,-675,-625,-570,-512,-452,-391,-330,-272,-218,-170,-126,-87,-51,-17,15,50,85,
+122,158,193,226,257,285,312,338,366,397,430,466,503,539,572,602,626,647,664,679,695,
+711,729,748,769,791,811,832,852,872,891,911,930,947,959,965,963,952,932,906,877,848,
+824,806,796,794,797,804,810,814,813,809,803,797,794,797,806,821,841,863,882,897,904,
+901,890,869,842,810,776,741,707,676,649,625,605,590,578,570,564,561,560,561,563,565,
+570,576,584,593,604,616,627,638,647,655,661,664,667,668,669,668,667,664,660,654,647,
+638,629,620,612,605,599,596,594,592,592,592,592,593,595,599,603,609,616,623,630,636,
+641,644,646,648,649,650,652,654,657,660,662,664,665,665,665,663,662,660,658,656,653,
+651,647,643,637,631,623,613,603,592,581,570,558,547,537,527,517,508,499,491,484,478,
+473,469,465,463,462,462,462,461,461,460,459,457,455,454,453,454,455,457,460,463,467,
+469,471,471,471,471,471,470,471,471,473,474,477,479,482,484,487,490,494,498,503,508,
+514,521,528,535,542,549,556,562,568,573,579,583,588,592,595,599,602,605,608,610,611,
+612,612,612,611,610,608,607,607,607,609,612,617,623,630,638,647,656,665,675,685,696,
+708,720,734,747,760,773,783,792,799,804,808,811,816,822,830,841,855,871,888,905,921,
+935,947,954,958,959,956,952,947,943,942,943,949,959,973,990,1007,1025,1040,1022,1032,1038,
+1041,1042,1042,1044,1049,1056,1065,1077,1090,1104,1118,1133,1149,1164,1180,1196,1211,1225,1238,1248,1256,
+1262,1267,1272,1279,1287,1298,1310,1322,1334,1344,1351,1356,1361,1367,1376,1390,1410,1434,1462,1489,1512,
+1529,1536,1533,1520,1501,1479,1457,1441,1431,1429,1435,1445,1457,1468,1475,1476,1472,1462,1448,1433,1419,
+1407,1399,1396,1397,1402,1411,1422,1436,1450,1465,1480,1493,1504,1512,1518,1520,1522,1522,1524,1527,1533,
+1541,1551,1562,1573,1582,1590,1597,1601,1605,1609,1613,1616,1619,1621,1622,1621,1619,1617,1616,1617,1621,
+1630,1641,1655,1669,1683,1696,1707,1719,1734,1753,1780,1817,1863,1918,1978,2039,2099,2154,2201,2240,2272,
+2299,2325,2350,2378,2407,2438,2468,2495,2515,2527,2530,2524,2512,2495,2476,2457,2440,2425,2413,2403,2394,
+2386,2378,2371,2366,2363,2364,2369,2377,2389,2403,2417,2430,2440,2446,2448,2448,2447,2446,2448,2454,2465,
+2482,2501,2524,2546,2567,2585,2599,2610,2619,2628,2637,2649,2662,2678,2694,2709,2723,2735,2746,2759,2776,
+2800,2836,2884,2945,3016,3094,3172,3245,3308,3358,3393,3415,3428,3436,3446,3460,3480,3505,3533,3559,3576,
+3581,3569,3540,3497,3444,3386,3332,3287,3256,3240,3239,3252,3273,3297,3319,3335,3341,3337,3321,3295,3261,
+3220,3174,3125,3074,3021,2968,2917,2869,2828,2797,2778,2774,2786,2813,2852,2898,2944,2985,3015,3028,3023,
+3002,2967,2925,2882,2843,2814,2795,2786,2783,2782,2776,2762,2737,2701,2655,2604,2551,2501,2454,2413,2376,
+2341,2305,2265,2221,2173,2123,2071,2023,1978,1939,1906,1876,1849,1822,1794,1764,1733,1701,1670,1642,1618,
+1599,1585,1576,1570,1568,1569,1574,1583,1597,1617,1641,1669,1699,1729,1755,1776,1790,1796,1793,1783,1767,
+1745,1718,1689,1659,1627,1596,1566,1539,1514,1492,1472,1454,1436,1418,1398,1376,1353,1331,1311,1296,1287,
+1285,1287,1293,1298,1299,1293,1277,1253,1222,1188,1155,1126,1104,1091,1083,1078,1072,1061,1042,1014,978,
+937,896,859,829,808,796,792,791,792,792,789,784,778,772,767,763,758,750,735,712,679,
+637,587,532,478,426,378,334,292,247,197,138,70,-6,-87,-168,-243,-308,-361,-401,-433,-460,
+-487,-519,-559,-606,-659,-716,-771,-823,-868,-908,-944,-978,-1013,-1052,-1096,-1143,-1193,-1244,-1293,-1339,-1382,
+-1421,-1459,-1495,-1531,-1568,-1604,-1640,-1673,-1705,-1734,-1761,-1788,-1815,-1843,-1871,-1898,-1921,-1937,-1945,-1944,-1933,
+-1915,-1894,-1873,-1856,-1848,-1851,-1864,-1889,-1924,-1967,-2015,-2069,-2124,-2182,-2238,-2293,-2343,-2387,-2424,-2453,-2475,
+-2491,-2504,-2515,-2528,-2543,-2561,-2579,-2598,-2614,-2627,-2636,-2643,-2650,-2659,-2672,-2690,-2714,-2742,-2771,-2798,-2820,
+-2837,-2849,-2856,-2864,-2873,-2888,-2908,-2934,-2964,-2994,-3023,-3047,-3068,-3084,-3098,-3113,-3131,-3153,-3181,-3215,-3252,
+-3292,-3333,-3374,-3416,-3459,-3503,-3547,-3593,-3638,-3680,-3717,-3747,-3771,-3787,-3798,-3805,-3811,-3815,-3818,-3818,-3814,
+-3802,-3782,-3754,-3721,-3689,-3662,-3648,-3653,-3679,-3727,-3794,-3875,-3963,-4049,-4128,-4195,-4246,-4281,-4300,-4307,-4302,
+-4289,-4270,-4247,-4222,-4198,-4178,-4165,-4160,-4166,-4182,-4208,-4240,-4273,-4306,-4334,-4358,-4376,-4392,-4409,-4431,-4459,
+-4494,-4535,-4578,-4620,-4655,-4680,-4696,-4703,-4705,-4707,-4714,-4729,-4755,-4791,-4835,-4882,-4929,-4971,-5005,-5031,-5050,
+-5062,-5072,-5079,-5087,-5094,-5101,-5106,-5110,-5112,-5116,-5122,-5134,-5153,-5181,-5216,-5254,-5291,-5322,-5341,-5347,-5338,
+-5317,-5287,-5254,-5223,-5200,-5187,-5185,-5191,-5201,-5212,-5219,-5219,-5212,-5199,-5184,-5170,-5163,-5164,-5176,-5198,-5230,
+-5267,-5306,-5344,-5378,-5407,-5429,-5446,-5459,-5470,-5482,-5494,-5510,-5528,-5550,-5573,-5598,-5622,-5646,-5666,-5684,-5697,
+-5706,-5711,-5712,-5710,-5707,-5702,-5698,-5694,-5691,-5689,-5688,-5688,-5689,-5690,-5691,-5691,-5691,-5690,-5687,-5682,-5675,
+-5667,-5658,-5649,-5642,-5638,-5638,-5642,-5650,-5661,-5675,-5689,-5703,-5716,-5727,-5737,-5747,-5757,-5769,-5782,-5798,-5815,
+-5832,-5848,-5861,-5871,-5877,-5879,-5878,-5876,-5874,-5873,-5875,-5881,-5890,-5901,-5915,-5930,-5945,-5958,-5968,-5975,-5979,
+-5980,-5977,-5974,-5970,-5967,-5968,-5973,-5983,-5998,-6017,-6041,-6066,-6091,-6115,-6135,-6150,-6162,-6169,-6174,-6177,-6180,
+-6185,-6192,-6201,-6212,-6222,-6231,-6235,-6234,-6227,-6212,-6191,-6165,-6137,-6109,-6082,-6058,-6039,-6022,-6008,-5996,-5982,
+-5968,-5951,-5934,-5916,-5899,-5885,-5875,-5869,-5868,-5869,-5872,-5876,-5878,-5877,-5875,-5870,-5864,-5857,-5850,-5843,-5838,
+-5832,-5826,-5819,-5812,-5803,-5793,-5782,-5772,-5762,-5753,-5744,-5737,-5730,-5724,-5719,-5716,-5714,-5713,-5715,-5719,-5724,
+-5729,-5735,-5739,-5743,-5745,-5745,-5745,-5743,-5742,-5740,-5738,-5735,-5730,-5724,-5716,-5706,-5695,-5683,-5672,-5662,-5653,
+-5645,-5639,-5633,-5627,-5621,-5614,-5607,-5599,-5590,-5582,-5575,-5568,-5560,-5553,-5544,-5534,-5523,-5509,-5494,-5478,-5461,
+-5444,-5428,-5412,-5397,-5383,-5369,-5356,-5344,-5331,-5319,-5307,-5294,-5282,-5269,-5256,-5242,-5227,-5212,-5197,-5181,-5164,
+-5148,-5131,-5113,-5096,-5079,-5062,-5046,-5031,-5016,-5003,-4991,-4979,-4968,-4957,-4946,-4933,-4919,-4904,-4888,-4871,-4853,
+-4836,-4818,-4801,-4785,-4769,-4753,-4737,-4721,-4704,-4686,-4667,-4647,-4628,-4608,-4588,-4569,-4550,-4533,-4516,-4499,-4482,
+-4465,-4448,-4430,-4411,-4392,-4371,-4350,-4329,-4307,-4285,-4262,-4239,-4215,-4191,-4166,-4142,-4117,-4093,-4070,-4049,-4029,
+-4011,-3994,-3979,-3966,-3954,-3942,-3930,-3918,-3905,-3892,-3878,-3864,-3849,-3835,-3823,-3812,-3803,-3796,-3790,-3785,-3780,
+-3773,-3765,-3754,-3741,-3727,-3712,-3697,-3683,-3670,-3658,-3646,-3633,-3619,-3603,-3585,-3566,-3545,-3525,-3506,-3490,-3477,
+-3466,-3458,-3450,-3442,-3432,-3420,-3406,-3390,-3372,-3355,-3338,-3322,-3308,-3295,-3284,-3273,-3264,-3255,-3247,-3240,-3235,
+-3230,-3226,-3222,-3217,-3210,-3202,-3191,-3178,-3164,-3150,-3136,-3123,-3111,-3100,-3090,-3080,-3071,-3061,-3050,-3039,-3027,
+-3016,-3004,-2992,-2980,-2967,-2953,-2939,-2924,-2908,-2893,-2878,-2864,-2851,-2839,-2827,-2814,-2802,-2788,-2773,-2758,-2743,
+-2728,-2712,-2696,-2680,-2662,-2643,-2624,-2604,-2585,-2567,-2553,-2541,-2532,-2525,-2519,-2510,-2499,-2484,-2465,-2444,-2421,
+-2399,-2380,-2364,-2352,-2343,-2335,-2326,-2315,-2300,-2280,-2256,-2229,-2200,-2169,-2136,-2102,-2064,-2023,-1976,-1925,-1871,
+-1815,-1762,-1714,-1675,-1645,-1625,-1615,-1612,-1612,-1613,-1612,-1608,-1598,-1584,-1566,-1545,-1523,-1502,-1482,-1463,-1446,
+-1432,-1420,-1410,-1400,-1392,-1383,-1372,-1358,-1340,-1318,-1293,-1266,-1237,-1209,-1183,-1161,-1141,-1124,-1107,-1091,-1072,
+-1051,-1026,-1000,-973,-946,-922,-902,-885,-872,-861,-851,-838,-821,-799,-770,-733,-689,-639,-584,-525,-465,
+-405,-349,-297,-250,-210,-175,-143,-113,-83,-50,-13,28,72,117,161,201,235,263,285,303,319,
+337,359,386,418,455,494,534,571,604,633,659,683,706,731,758,787,819,852,884,913,939,
+960,977,988,994,994,989,978,961,938,911,881,851,823,800,782,771,766,765,767,768,767,
+763,757,750,744,740,742,748,760,775,792,807,817,822,818,806,785,758,727,692,656,621,
+589,560,535,515,501,491,485,483,483,486,489,493,498,504,510,518,527,537,549,560,571,
+581,589,596,600,603,604,604,603,600,597,591,584,576,566,556,546,537,529,523,519,518,
+517,518,520,522,524,527,530,535,540,545,551,557,563,567,571,575,577,579,581,583,586,
+589,592,595,598,600,601,600,599,596,592,588,584,579,575,570,565,559,553,546,537,528,
+517,506,494,482,470,459,448,438,430,422,415,408,402,396,392,388,385,384,384,384,386,
+388,389,390,391,391,391,391,392,393,395,397,400,404,407,410,412,414,415,416,417,418,
+420,422,424,427,431,434,438,442,446,450,454,459,464,470,476,484,491,499,507,514,522,
+528,535,541,546,551,557,562,567,572,577,581,584,587,589,590,591,592,592,593,595,598,
+601,606,612,619,627,636,645,655,665,675,686,697,708,720,732,744,756,769,781,794,805,
+817,827,836,845,853,860,867,874,880,887,894,900,906,911,914,915,914,911,907,902,898,
+897,900,906,918,933,952,972,992,1009,1022,1021,1025,1025,1022,1018,1015,1015,1018,1024,1033,1045,
+1058,1073,1089,1107,1125,1145,1166,1188,1210,1229,1246,1260,1270,1276,1280,1283,1287,1292,1299,1308,1317,
+1326,1334,1341,1346,1351,1358,1369,1386,1409,1436,1467,1497,1522,1540,1548,1544,1531,1511,1489,1468,1453,
+1447,1449,1460,1477,1495,1512,1524,1529,1528,1521,1509,1496,1484,1474,1467,1464,1464,1465,1468,1472,1475,
+1479,1483,1487,1492,1498,1505,1513,1521,1529,1538,1547,1556,1565,1574,1582,1590,1597,1603,1608,1613,1618,
+1623,1630,1637,1645,1653,1661,1667,1673,1677,1680,1684,1688,1694,1701,1709,1718,1728,1738,1749,1763,1780,
+1803,1833,1873,1922,1977,2038,2098,2155,2205,2244,2273,2292,2304,2313,2324,2339,2361,2388,2420,2452,2481,
+2501,2511,2508,2493,2468,2436,2401,2366,2335,2308,2286,2269,2255,2245,2237,2231,2229,2231,2237,2250,2268,
+2291,2318,2345,2371,2393,2410,2422,2430,2435,2438,2443,2451,2463,2480,2502,2526,2553,2580,2606,2630,2653,
+2674,2693,2711,2727,2740,2749,2752,2750,2742,2730,2716,2704,2699,2704,2722,2756,2805,2866,2934,3005,3073,
+3133,3183,3221,3250,3273,3293,3314,3339,3367,3398,3427,3449,3461,3459,3439,3404,3356,3300,3242,3188,3145,
+3115,3101,3101,3113,3132,3154,3174,3187,3192,3187,3172,3149,3118,3082,3043,3002,2960,2918,2877,2838,2801,
+2769,2744,2728,2722,2728,2746,2774,2810,2850,2888,2921,2944,2955,2954,2942,2922,2897,2871,2846,2824,2805,
+2786,2765,2740,2709,2671,2626,2576,2524,2473,2424,2380,2340,2302,2266,2228,2187,2143,2096,2048,2001,1956,
+1917,1882,1852,1825,1799,1773,1744,1714,1682,1650,1620,1594,1574,1559,1551,1548,1548,1552,1559,1567,1577,
+1590,1606,1626,1648,1672,1697,1720,1740,1756,1766,1769,1767,1759,1746,1728,1706,1681,1654,1626,1597,1570,
+1544,1520,1498,1479,1460,1441,1422,1403,1382,1363,1347,1334,1326,1324,1327,1331,1334,1334,1326,1311,1287,
+1257,1224,1191,1163,1141,1126,1117,1112,1106,1097,1080,1056,1025,990,952,918,888,866,851,841,835,
+831,826,820,812,803,795,787,780,772,761,743,718,684,641,590,536,480,426,376,329,284,
+238,187,130,65,-7,-85,-163,-237,-304,-360,-407,-445,-478,-510,-543,-582,-626,-674,-725,-776,-824,
+-869,-909,-946,-981,-1017,-1056,-1098,-1144,-1192,-1241,-1289,-1335,-1378,-1419,-1457,-1494,-1530,-1565,-1599,-1630,-1660,
+-1687,-1711,-1734,-1756,-1778,-1801,-1825,-1848,-1869,-1886,-1897,-1901,-1898,-1889,-1878,-1868,-1862,-1863,-1874,-1895,-1926,
+-1966,-2013,-2063,-2116,-2168,-2218,-2265,-2308,-2346,-2378,-2406,-2430,-2450,-2467,-2482,-2497,-2512,-2528,-2543,-2559,-2574,
+-2587,-2599,-2611,-2623,-2636,-2652,-2671,-2693,-2718,-2743,-2767,-2788,-2806,-2821,-2833,-2844,-2857,-2873,-2892,-2915,-2941,
+-2968,-2994,-3019,-3041,-3060,-3078,-3096,-3115,-3136,-3160,-3187,-3215,-3245,-3275,-3307,-3342,-3379,-3420,-3466,-3515,-3566,
+-3615,-3659,-3696,-3723,-3740,-3750,-3754,-3755,-3758,-3762,-3768,-3773,-3776,-3772,-3760,-3739,-3711,-3682,-3658,-3645,-3649,
+-3674,-3722,-3789,-3871,-3961,-4050,-4132,-4202,-4255,-4290,-4309,-4313,-4304,-4287,-4263,-4236,-4210,-4186,-4169,-4160,-4162,
+-4176,-4199,-4229,-4263,-4297,-4326,-4349,-4366,-4377,-4387,-4400,-4419,-4447,-4484,-4528,-4576,-4622,-4661,-4692,-4712,-4723,
+-4731,-4739,-4752,-4775,-4810,-4853,-4904,-4955,-5002,-5040,-5067,-5083,-5090,-5092,-5091,-5092,-5096,-5104,-5115,-5127,-5139,
+-5150,-5160,-5171,-5184,-5203,-5227,-5256,-5288,-5320,-5346,-5363,-5368,-5360,-5342,-5316,-5289,-5265,-5248,-5242,-5246,-5257,
+-5271,-5284,-5291,-5291,-5284,-5270,-5255,-5242,-5236,-5241,-5257,-5283,-5317,-5355,-5393,-5426,-5452,-5470,-5481,-5485,-5486,
+-5487,-5490,-5497,-5509,-5528,-5551,-5579,-5609,-5640,-5671,-5699,-5725,-5746,-5763,-5774,-5780,-5782,-5779,-5773,-5765,-5757,
+-5748,-5741,-5736,-5732,-5731,-5732,-5735,-5738,-5741,-5743,-5743,-5741,-5736,-5730,-5721,-5713,-5705,-5699,-5695,-5695,-5698,
+-5704,-5713,-5722,-5732,-5742,-5751,-5761,-5772,-5784,-5798,-5815,-5834,-5855,-5876,-5896,-5913,-5925,-5933,-5936,-5935,-5930,
+-5925,-5920,-5917,-5917,-5922,-5931,-5945,-5962,-5981,-6000,-6018,-6034,-6044,-6050,-6050,-6045,-6036,-6025,-6015,-6007,-6004,
+-6008,-6019,-6037,-6062,-6090,-6120,-6149,-6174,-6193,-6206,-6213,-6216,-6216,-6215,-6216,-6219,-6225,-6233,-6241,-6249,-6252,
+-6251,-6244,-6230,-6212,-6190,-6168,-6146,-6127,-6112,-6100,-6090,-6080,-6070,-6057,-6042,-6023,-6003,-5982,-5962,-5945,-5932,
+-5923,-5918,-5916,-5916,-5917,-5917,-5916,-5915,-5911,-5907,-5903,-5897,-5892,-5886,-5880,-5872,-5865,-5857,-5849,-5841,-5835,
+-5829,-5825,-5821,-5819,-5817,-5814,-5812,-5809,-5807,-5804,-5802,-5800,-5798,-5796,-5795,-5793,-5792,-5790,-5789,-5789,-5790,
+-5791,-5792,-5793,-5793,-5790,-5785,-5777,-5766,-5753,-5739,-5726,-5713,-5702,-5694,-5688,-5683,-5679,-5674,-5669,-5662,-5654,
+-5645,-5635,-5625,-5615,-5606,-5597,-5588,-5579,-5569,-5558,-5545,-5531,-5516,-5500,-5483,-5467,-5450,-5434,-5418,-5403,-5388,
+-5374,-5361,-5348,-5335,-5322,-5308,-5295,-5281,-5266,-5252,-5238,-5224,-5210,-5196,-5181,-5167,-5152,-5136,-5119,-5102,-5085,
+-5068,-5052,-5037,-5024,-5011,-5000,-4989,-4977,-4965,-4952,-4936,-4919,-4901,-4882,-4862,-4843,-4824,-4806,-4789,-4771,-4754,
+-4735,-4716,-4696,-4674,-4652,-4630,-4608,-4588,-4569,-4551,-4535,-4520,-4505,-4490,-4475,-4458,-4440,-4420,-4400,-4378,-4357,
+-4335,-4313,-4291,-4270,-4248,-4227,-4205,-4183,-4160,-4137,-4114,-4091,-4068,-4047,-4026,-4008,-3991,-3977,-3965,-3956,-3948,
+-3940,-3932,-3924,-3913,-3901,-3888,-3874,-3859,-3845,-3832,-3821,-3810,-3799,-3788,-3776,-3763,-3747,-3731,-3714,-3698,-3683,
+-3670,-3659,-3650,-3640,-3630,-3618,-3602,-3585,-3565,-3544,-3524,-3506,-3492,-3481,-3472,-3466,-3459,-3452,-3442,-3429,-3414,
+-3397,-3379,-3361,-3346,-3334,-3325,-3318,-3314,-3310,-3307,-3302,-3297,-3290,-3281,-3272,-3262,-3252,-3242,-3232,-3221,-3210,
+-3198,-3187,-3174,-3161,-3149,-3136,-3123,-3110,-3098,-3086,-3074,-3063,-3053,-3043,-3033,-3022,-3012,-3000,-2987,-2973,-2957,
+-2941,-2925,-2908,-2891,-2874,-2858,-2842,-2827,-2813,-2799,-2785,-2771,-2757,-2742,-2726,-2708,-2688,-2667,-2645,-2623,-2603,
+-2585,-2572,-2562,-2555,-2551,-2547,-2542,-2535,-2523,-2508,-2491,-2473,-2456,-2442,-2431,-2425,-2420,-2415,-2408,-2396,-2377,
+-2351,-2319,-2283,-2245,-2206,-2169,-2132,-2094,-2055,-2011,-1962,-1907,-1848,-1787,-1728,-1675,-1632,-1601,-1582,-1575,-1576,
+-1581,-1587,-1590,-1588,-1579,-1564,-1545,-1524,-1503,-1482,-1465,-1450,-1438,-1428,-1420,-1411,-1403,-1393,-1382,-1368,-1352,
+-1334,-1313,-1289,-1264,-1237,-1211,-1185,-1160,-1135,-1112,-1088,-1064,-1038,-1010,-980,-950,-919,-890,-863,-840,-821,
+-806,-793,-780,-767,-750,-728,-699,-663,-621,-573,-521,-467,-413,-363,-318,-278,-245,-217,-193,-169,-144,
+-113,-76,-31,19,75,131,185,232,271,300,320,334,345,357,374,396,426,462,502,544,585,
+624,660,693,725,758,793,832,875,919,965,1007,1043,1071,1089,1096,1092,1078,1057,1029,997,963,
+928,895,863,835,811,791,775,763,753,745,737,728,717,707,696,686,679,677,679,686,698,
+712,726,738,746,748,742,729,709,682,650,615,579,542,507,474,446,423,406,394,388,386,
+389,394,401,409,418,427,436,446,456,467,478,489,500,509,518,524,529,532,533,533,532,
+530,526,522,516,509,502,494,486,479,473,469,466,464,464,464,465,466,467,469,470,473,
+476,481,486,492,498,504,509,513,516,518,518,519,519,519,520,521,523,524,526,527,527,
+526,523,519,514,508,502,495,488,481,474,466,458,449,439,428,417,405,394,383,372,363,
+354,347,340,333,327,322,317,313,310,308,307,308,310,312,316,319,322,325,327,329,330,
+332,334,336,339,342,345,348,351,354,356,358,359,361,364,366,370,373,378,382,388,393,
+398,404,409,416,422,429,436,444,452,460,468,475,483,490,496,503,509,516,522,529,535,
+542,547,552,557,560,563,565,568,571,575,580,587,594,602,611,620,629,638,647,656,666,
+676,687,697,708,719,730,740,751,763,775,789,804,821,839,858,875,892,905,915,921,923,
+922,918,913,907,901,895,890,886,882,879,877,876,878,883,892,905,922,941,962,982,999,
+1013,1021,1052,1052,1048,1042,1036,1031,1030,1031,1036,1045,1055,1067,1080,1094,1110,1128,1148,1171,1195,
+1220,1244,1267,1286,1301,1312,1321,1327,1332,1337,1342,1348,1352,1355,1357,1357,1356,1358,1363,1374,1392,
+1417,1449,1484,1518,1548,1568,1578,1576,1563,1544,1522,1504,1492,1490,1498,1517,1542,1570,1597,1619,1635,
+1643,1643,1638,1630,1620,1609,1599,1589,1579,1567,1554,1540,1525,1511,1499,1491,1487,1489,1496,1508,1522,
+1538,1553,1568,1580,1589,1597,1602,1606,1610,1613,1618,1624,1632,1643,1655,1669,1685,1701,1717,1732,1747,
+1760,1772,1783,1793,1803,1812,1820,1829,1838,1848,1859,1875,1896,1923,1958,2000,2047,2098,2149,2195,2234,
+2263,2281,2289,2289,2286,2283,2285,2293,2310,2334,2362,2389,2411,2424,2426,2414,2391,2358,2319,2279,2239,
+2204,2174,2149,2130,2114,2103,2095,2091,2092,2099,2114,2136,2165,2199,2236,2272,2306,2335,2358,2375,2389,
+2401,2413,2429,2450,2476,2507,2543,2580,2616,2651,2684,2712,2738,2761,2781,2798,2812,2821,2824,2819,2804,
+2782,2752,2720,2688,2661,2645,2643,2656,2684,2726,2777,2833,2890,2943,2990,3032,3070,3104,3139,3175,3213,
+3253,3290,3322,3345,3353,3345,3319,3278,3225,3165,3105,3049,3003,2970,2951,2946,2950,2962,2975,2987,2992,
+2990,2980,2962,2937,2909,2880,2852,2827,2806,2790,2777,2766,2756,2746,2735,2724,2713,2706,2703,2706,2717,
+2736,2761,2791,2823,2853,2879,2897,2906,2906,2896,2876,2847,2812,2770,2723,2673,2621,2568,2515,2465,2418,
+2376,2337,2302,2269,2236,2201,2163,2121,2076,2029,1982,1938,1896,1860,1829,1801,1777,1754,1731,1707,1681,
+1655,1629,1606,1586,1571,1561,1556,1555,1557,1561,1567,1575,1583,1594,1606,1620,1635,1651,1666,1680,1691,
+1698,1702,1702,1700,1695,1688,1680,1669,1656,1641,1623,1603,1582,1559,1538,1516,1496,1478,1460,1443,1425,
+1408,1392,1376,1362,1351,1342,1335,1328,1321,1311,1297,1279,1256,1229,1202,1177,1155,1137,1124,1115,1108,
+1100,1088,1072,1052,1027,1002,977,956,939,928,922,917,912,905,894,879,860,840,820,801,784,
+768,752,731,704,668,624,571,513,452,392,334,280,229,181,131,78,21,-42,-110,-180,-249,
+-315,-374,-427,-472,-513,-550,-586,-624,-664,-707,-751,-795,-839,-880,-920,-959,-997,-1036,-1077,-1120,-1165,
+-1211,-1257,-1301,-1344,-1384,-1422,-1457,-1491,-1524,-1556,-1586,-1614,-1640,-1664,-1685,-1705,-1724,-1742,-1762,-1782,-1803,
+-1822,-1839,-1852,-1860,-1863,-1863,-1861,-1861,-1865,-1877,-1898,-1929,-1968,-2014,-2064,-2115,-2164,-2208,-2247,-2281,-2308,
+-2332,-2354,-2374,-2394,-2416,-2439,-2462,-2485,-2507,-2527,-2545,-2560,-2574,-2586,-2598,-2611,-2627,-2646,-2669,-2693,-2719,
+-2746,-2770,-2792,-2812,-2828,-2843,-2858,-2874,-2892,-2913,-2935,-2959,-2982,-3004,-3024,-3042,-3059,-3076,-3094,-3115,-3139,
+-3165,-3193,-3221,-3247,-3272,-3295,-3319,-3345,-3375,-3411,-3454,-3501,-3550,-3597,-3638,-3669,-3688,-3695,-3694,-3688,-3682,
+-3679,-3682,-3692,-3706,-3720,-3731,-3735,-3731,-3719,-3703,-3688,-3683,-3692,-3720,-3769,-3837,-3920,-4010,-4101,-4184,-4252,
+-4303,-4334,-4345,-4340,-4322,-4295,-4264,-4233,-4206,-4186,-4176,-4176,-4188,-4209,-4238,-4270,-4303,-4331,-4353,-4367,-4374,
+-4377,-4381,-4389,-4406,-4433,-4471,-4518,-4569,-4620,-4667,-4707,-4739,-4765,-4788,-4813,-4842,-4879,-4922,-4971,-5020,-5065,
+-5101,-5126,-5138,-5139,-5134,-5127,-5123,-5126,-5138,-5158,-5184,-5212,-5240,-5264,-5283,-5299,-5314,-5328,-5345,-5365,-5387,
+-5409,-5428,-5439,-5441,-5433,-5417,-5394,-5370,-5350,-5335,-5329,-5331,-5339,-5349,-5357,-5361,-5358,-5349,-5336,-5323,-5315,
+-5314,-5324,-5345,-5374,-5410,-5446,-5479,-5504,-5520,-5525,-5522,-5512,-5500,-5490,-5483,-5483,-5491,-5506,-5528,-5555,-5586,
+-5619,-5652,-5684,-5715,-5742,-5766,-5785,-5800,-5811,-5816,-5818,-5817,-5812,-5806,-5800,-5793,-5787,-5783,-5780,-5779,-5780,
+-5782,-5784,-5786,-5787,-5787,-5785,-5782,-5777,-5772,-5766,-5762,-5759,-5758,-5759,-5762,-5767,-5772,-5779,-5786,-5793,-5800,
+-5809,-5820,-5833,-5848,-5865,-5885,-5905,-5924,-5942,-5956,-5967,-5973,-5974,-5973,-5969,-5965,-5963,-5963,-5968,-5978,-5992,
+-6010,-6031,-6053,-6073,-6090,-6101,-6107,-6106,-6100,-6089,-6078,-6067,-6060,-6060,-6067,-6082,-6104,-6131,-6161,-6191,-6219,
+-6240,-6256,-6265,-6267,-6266,-6262,-6258,-6256,-6256,-6258,-6263,-6267,-6269,-6268,-6263,-6253,-6238,-6221,-6202,-6183,-6167,
+-6153,-6142,-6134,-6126,-6119,-6110,-6098,-6084,-6067,-6048,-6030,-6012,-5996,-5983,-5974,-5967,-5964,-5962,-5961,-5961,-5961,
+-5959,-5957,-5954,-5949,-5943,-5936,-5928,-5919,-5911,-5903,-5897,-5893,-5891,-5891,-5893,-5895,-5898,-5901,-5902,-5903,-5901,
+-5899,-5895,-5890,-5884,-5878,-5872,-5865,-5859,-5853,-5848,-5844,-5842,-5842,-5844,-5847,-5850,-5853,-5853,-5851,-5845,-5835,
+-5822,-5808,-5792,-5777,-5763,-5752,-5743,-5735,-5730,-5724,-5719,-5712,-5704,-5694,-5683,-5671,-5660,-5649,-5638,-5629,-5620,
+-5612,-5603,-5594,-5584,-5573,-5560,-5545,-5529,-5513,-5495,-5477,-5460,-5443,-5427,-5412,-5398,-5384,-5370,-5357,-5343,-5329,
+-5314,-5300,-5286,-5272,-5258,-5245,-5232,-5219,-5205,-5190,-5174,-5156,-5138,-5119,-5100,-5083,-5066,-5052,-5039,-5027,-5016,
+-5004,-4992,-4978,-4962,-4945,-4927,-4907,-4888,-4869,-4850,-4831,-4812,-4792,-4772,-4750,-4728,-4704,-4681,-4657,-4634,-4613,
+-4594,-4576,-4560,-4545,-4529,-4514,-4497,-4479,-4460,-4440,-4419,-4397,-4376,-4354,-4333,-4313,-4294,-4274,-4256,-4237,-4218,
+-4199,-4179,-4158,-4136,-4114,-4091,-4069,-4049,-4030,-4015,-4003,-3993,-3986,-3981,-3976,-3969,-3960,-3948,-3933,-3915,-3895,
+-3874,-3853,-3832,-3812,-3792,-3772,-3751,-3728,-3705,-3682,-3660,-3640,-3623,-3612,-3604,-3601,-3600,-3599,-3597,-3592,-3583,
+-3570,-3554,-3537,-3520,-3504,-3492,-3482,-3475,-3470,-3464,-3456,-3446,-3434,-3419,-3403,-3388,-3375,-3365,-3359,-3355,-3354,
+-3354,-3353,-3351,-3345,-3336,-3324,-3310,-3295,-3280,-3266,-3252,-3240,-3229,-3219,-3209,-3198,-3187,-3175,-3162,-3149,-3136,
+-3124,-3112,-3101,-3091,-3082,-3072,-3063,-3053,-3042,-3030,-3017,-3002,-2985,-2967,-2948,-2928,-2908,-2888,-2868,-2851,-2834,
+-2820,-2808,-2796,-2786,-2774,-2761,-2745,-2726,-2705,-2681,-2656,-2632,-2611,-2594,-2581,-2572,-2566,-2562,-2558,-2551,-2541,
+-2529,-2515,-2501,-2489,-2481,-2478,-2478,-2481,-2484,-2482,-2473,-2454,-2424,-2385,-2339,-2289,-2240,-2195,-2155,-2121,-2090,
+-2059,-2027,-1989,-1944,-1893,-1839,-1785,-1735,-1693,-1662,-1643,-1634,-1632,-1634,-1635,-1632,-1623,-1608,-1588,-1564,-1539,
+-1516,-1496,-1481,-1469,-1461,-1455,-1448,-1440,-1430,-1417,-1401,-1382,-1362,-1339,-1315,-1290,-1263,-1234,-1204,-1172,-1140,
+-1107,-1074,-1042,-1009,-977,-945,-913,-882,-852,-824,-799,-775,-755,-736,-720,-704,-687,-669,-646,-620,-588,
+-552,-512,-469,-425,-382,-343,-308,-278,-253,-232,-212,-190,-163,-128,-85,-33,26,91,156,219,274,
+320,355,380,397,410,422,437,457,483,515,552,592,632,672,711,749,788,828,873,921,973,
+1027,1080,1129,1170,1199,1215,1217,1204,1179,1143,1101,1055,1008,963,922,885,853,826,803,783,764,
+746,728,709,690,670,651,635,623,616,614,618,627,639,653,665,674,678,676,666,649,626,
+598,566,531,495,459,424,392,363,339,319,305,296,292,292,296,304,313,323,334,346,358,
+370,382,394,405,416,426,434,441,447,451,453,454,454,454,452,450,447,443,439,435,431,
+427,424,421,419,418,417,417,416,415,415,415,415,416,419,423,428,434,440,447,452,456,
+458,459,459,457,456,454,453,453,454,456,459,461,463,465,464,462,457,451,443,435,425,
+415,405,395,385,375,365,354,343,332,321,310,300,290,282,275,269,264,260,256,253,251,
+248,247,246,246,247,249,251,254,258,262,265,269,272,275,277,280,282,285,288,290,293,
+295,297,300,302,304,307,310,314,319,324,330,336,343,350,357,365,373,381,389,398,406,
+415,423,431,439,446,454,461,468,476,484,491,499,506,513,519,524,527,530,533,536,539,
+544,551,559,569,581,593,605,617,628,640,651,662,673,685,698,710,722,734,744,754,764,
+773,784,797,813,831,852,875,897,918,935,947,953,954,950,941,931,919,908,898,891,885,
+882,881,882,886,893,904,919,936,957,980,1002,1021,1037,1047,1052,1127,1128,1124,1118,1112,1107,
+1104,1106,1110,1116,1125,1134,1144,1155,1168,1182,1200,1220,1243,1269,1295,1320,1345,1366,1384,1399,1411,
+1421,1428,1434,1436,1436,1433,1426,1418,1409,1403,1401,1406,1420,1442,1473,1508,1544,1577,1602,1618,1623,
+1618,1607,1592,1580,1573,1576,1587,1608,1636,1667,1699,1728,1752,1769,1780,1786,1786,1782,1773,1761,1744,
+1722,1696,1664,1630,1596,1563,1535,1515,1503,1501,1507,1519,1536,1554,1572,1587,1599,1607,1612,1615,1618,
+1622,1627,1635,1646,1659,1674,1690,1707,1725,1743,1761,1779,1798,1816,1835,1854,1872,1890,1907,1924,1939,
+1954,1970,1987,2007,2032,2060,2093,2129,2165,2201,2232,2255,2270,2276,2273,2263,2251,2240,2234,2235,2246,
+2264,2288,2313,2336,2351,2356,2349,2330,2301,2264,2223,2182,2143,2108,2078,2051,2029,2009,1994,1983,1979,
+1982,1995,2017,2049,2088,2132,2177,2219,2256,2286,2309,2327,2343,2362,2385,2417,2457,2506,2562,2619,2676,
+2727,2771,2806,2831,2849,2861,2868,2873,2875,2874,2869,2858,2839,2812,2779,2740,2699,2662,2631,2611,2604,
+2610,2629,2659,2696,2738,2782,2827,2871,2916,2962,3010,3059,3110,3159,3202,3237,3259,3265,3253,3224,3179,
+3123,3060,2997,2939,2890,2853,2829,2817,2815,2819,2826,2830,2829,2821,2806,2783,2757,2729,2703,2684,2672,
+2669,2675,2688,2704,2719,2730,2734,2729,2717,2698,2678,2660,2649,2650,2664,2691,2730,2776,2823,2866,2899,
+2917,2917,2899,2863,2812,2750,2683,2613,2546,2485,2431,2384,2345,2313,2283,2255,2226,2194,2158,2117,2072,
+2024,1976,1929,1885,1845,1810,1780,1755,1732,1711,1692,1673,1654,1637,1621,1607,1596,1588,1583,1580,1580,
+1581,1583,1587,1593,1600,1609,1620,1631,1641,1650,1655,1657,1654,1648,1639,1630,1621,1614,1610,1608,1607,
+1607,1606,1601,1593,1581,1566,1548,1529,1509,1491,1473,1457,1442,1427,1412,1396,1380,1363,1346,1329,1311,
+1293,1274,1254,1234,1213,1193,1173,1155,1138,1124,1110,1097,1083,1066,1047,1025,1003,981,962,949,941,
+939,941,946,950,949,942,927,905,878,849,819,792,769,748,729,709,683,649,607,554,495,
+430,363,298,237,181,129,80,31,-19,-73,-131,-192,-256,-319,-380,-437,-489,-537,-580,-619,-657,
+-694,-731,-768,-806,-844,-882,-921,-961,-1002,-1045,-1089,-1135,-1182,-1228,-1273,-1316,-1357,-1395,-1431,-1465,-1498,
+-1530,-1561,-1591,-1620,-1647,-1672,-1695,-1717,-1738,-1758,-1779,-1800,-1820,-1838,-1853,-1863,-1869,-1870,-1869,-1867,-1868,
+-1875,-1891,-1918,-1955,-2001,-2054,-2108,-2161,-2208,-2247,-2278,-2301,-2317,-2331,-2344,-2360,-2381,-2406,-2435,-2466,-2498,
+-2526,-2550,-2569,-2583,-2594,-2604,-2615,-2629,-2648,-2673,-2701,-2732,-2764,-2794,-2820,-2843,-2862,-2878,-2894,-2910,-2929,
+-2949,-2972,-2996,-3019,-3039,-3057,-3071,-3084,-3097,-3113,-3132,-3156,-3184,-3215,-3247,-3276,-3302,-3323,-3341,-3357,-3376,
+-3399,-3429,-3467,-3510,-3556,-3599,-3635,-3660,-3672,-3671,-3661,-3646,-3633,-3625,-3627,-3639,-3658,-3682,-3706,-3724,-3734,
+-3736,-3732,-3729,-3731,-3747,-3780,-3834,-3907,-3995,-4091,-4187,-4274,-4345,-4396,-4424,-4429,-4415,-4387,-4350,-4310,-4274,
+-4245,-4227,-4221,-4227,-4245,-4270,-4299,-4329,-4354,-4373,-4384,-4387,-4385,-4380,-4377,-4381,-4395,-4420,-4457,-4503,-4554,
+-4608,-4660,-4709,-4753,-4794,-4833,-4873,-4917,-4963,-5012,-5059,-5102,-5136,-5158,-5168,-5168,-5159,-5149,-5142,-5144,-5157,
+-5182,-5217,-5258,-5302,-5342,-5375,-5401,-5420,-5433,-5444,-5455,-5467,-5482,-5497,-5511,-5519,-5521,-5514,-5499,-5478,-5455,
+-5432,-5413,-5400,-5393,-5391,-5392,-5393,-5392,-5387,-5380,-5372,-5367,-5366,-5373,-5389,-5413,-5444,-5478,-5510,-5538,-5557,
+-5567,-5567,-5559,-5545,-5530,-5516,-5505,-5500,-5502,-5510,-5523,-5540,-5561,-5585,-5610,-5636,-5663,-5691,-5718,-5745,-5771,
+-5795,-5816,-5834,-5848,-5859,-5866,-5869,-5870,-5867,-5863,-5858,-5853,-5848,-5843,-5840,-5839,-5838,-5837,-5836,-5835,-5832,
+-5828,-5823,-5817,-5812,-5807,-5805,-5804,-5806,-5809,-5813,-5818,-5822,-5826,-5829,-5832,-5837,-5843,-5852,-5864,-5881,-5900,
+-5922,-5944,-5965,-5982,-5995,-6003,-6007,-6007,-6005,-6002,-6002,-6005,-6013,-6025,-6042,-6062,-6083,-6103,-6121,-6134,-6143,
+-6147,-6147,-6146,-6145,-6146,-6150,-6159,-6174,-6192,-6214,-6237,-6259,-6278,-6294,-6304,-6309,-6310,-6307,-6303,-6298,-6294,
+-6291,-6290,-6291,-6291,-6291,-6288,-6282,-6273,-6261,-6246,-6229,-6213,-6197,-6183,-6171,-6161,-6153,-6146,-6140,-6132,-6124,
+-6115,-6104,-6093,-6081,-6070,-6060,-6051,-6043,-6037,-6033,-6029,-6026,-6023,-6019,-6015,-6009,-6002,-5994,-5985,-5976,-5968,
+-5960,-5955,-5952,-5952,-5954,-5959,-5965,-5972,-5978,-5984,-5987,-5988,-5988,-5986,-5982,-5977,-5972,-5965,-5958,-5951,-5943,
+-5935,-5927,-5920,-5915,-5912,-5911,-5913,-5916,-5919,-5922,-5922,-5919,-5913,-5903,-5890,-5874,-5858,-5842,-5827,-5813,-5802,
+-5793,-5785,-5777,-5769,-5759,-5748,-5736,-5723,-5709,-5696,-5683,-5671,-5661,-5653,-5646,-5640,-5633,-5626,-5617,-5606,-5593,
+-5577,-5560,-5541,-5522,-5504,-5486,-5469,-5454,-5441,-5428,-5415,-5403,-5390,-5376,-5362,-5347,-5332,-5316,-5301,-5286,-5271,
+-5255,-5239,-5223,-5205,-5187,-5168,-5149,-5131,-5114,-5098,-5083,-5070,-5057,-5044,-5031,-5017,-5002,-4986,-4969,-4951,-4933,
+-4914,-4895,-4876,-4856,-4835,-4813,-4790,-4766,-4742,-4718,-4694,-4671,-4650,-4630,-4611,-4592,-4574,-4555,-4536,-4516,-4496,
+-4475,-4454,-4433,-4413,-4393,-4373,-4354,-4335,-4315,-4296,-4277,-4258,-4239,-4220,-4201,-4182,-4163,-4144,-4125,-4105,-4086,
+-4069,-4054,-4040,-4029,-4020,-4012,-4004,-3995,-3984,-3970,-3953,-3934,-3912,-3889,-3866,-3842,-3818,-3794,-3768,-3741,-3712,
+-3681,-3650,-3620,-3593,-3572,-3557,-3549,-3548,-3552,-3559,-3566,-3571,-3571,-3567,-3557,-3544,-3529,-3514,-3500,-3489,-3481,
+-3475,-3470,-3464,-3456,-3447,-3436,-3423,-3411,-3400,-3391,-3386,-3383,-3382,-3382,-3381,-3378,-3371,-3361,-3347,-3331,-3313,
+-3295,-3278,-3263,-3250,-3238,-3229,-3220,-3212,-3203,-3195,-3186,-3177,-3167,-3158,-3149,-3140,-3131,-3121,-3111,-3100,-3088,
+-3075,-3060,-3044,-3027,-3009,-2989,-2968,-2947,-2926,-2905,-2886,-2869,-2854,-2842,-2833,-2825,-2816,-2807,-2794,-2778,-2757,
+-2732,-2705,-2677,-2650,-2627,-2608,-2594,-2585,-2578,-2572,-2565,-2555,-2544,-2531,-2518,-2508,-2503,-2504,-2510,-2520,-2531,
+-2538,-2537,-2523,-2495,-2453,-2400,-2339,-2278,-2220,-2170,-2132,-2104,-2084,-2069,-2054,-2036,-2011,-1980,-1942,-1902,-1864,
+-1830,-1804,-1785,-1774,-1768,-1763,-1756,-1743,-1723,-1697,-1665,-1631,-1598,-1567,-1542,-1522,-1508,-1497,-1488,-1478,-1466,
+-1451,-1433,-1411,-1386,-1359,-1330,-1300,-1268,-1235,-1200,-1163,-1125,-1087,-1049,-1012,-977,-945,-916,-889,-864,-840,
+-817,-795,-772,-750,-728,-705,-683,-661,-639,-616,-592,-565,-537,-505,-472,-437,-403,-369,-338,-310,-286,
+-265,-245,-225,-201,-171,-134,-87,-32,30,97,166,232,292,344,387,420,445,464,480,497,516,
+540,567,599,634,672,711,751,793,836,882,931,983,1037,1093,1147,1197,1239,1272,1292,1299,1292,
+1272,1241,1200,1152,1100,1047,995,945,899,858,821,788,758,730,703,677,651,626,603,584,569,
+560,557,561,569,580,591,601,606,605,597,581,559,530,498,463,428,392,359,328,299,274,
+252,233,218,207,200,198,199,203,211,221,232,245,258,271,284,296,308,319,329,338,346,
+352,358,362,365,368,369,369,370,369,368,367,366,365,365,364,363,363,363,363,363,363,
+364,364,366,368,371,374,378,382,387,392,396,399,402,403,404,404,404,403,403,403,404,
+405,407,410,412,414,415,415,413,408,402,394,385,374,363,351,339,328,317,306,295,284,
+273,262,252,242,233,225,219,214,210,208,207,206,206,206,206,205,205,205,205,206,208,
+211,214,217,221,225,229,233,236,239,242,244,246,248,250,252,255,257,261,264,268,272,
+277,283,289,295,302,309,316,324,331,339,347,356,364,373,382,390,399,407,416,424,433,
+441,450,459,467,475,482,488,493,496,499,501,504,508,514,521,531,542,555,568,582,596,
+610,625,639,654,670,687,704,721,737,751,763,773,782,789,797,807,819,834,852,872,892,
+912,928,941,948,951,949,944,937,929,922,916,911,909,908,909,913,919,929,943,962,985,
+1011,1038,1064,1088,1107,1120,1127,1238,1242,1241,1236,1229,1223,1220,1219,1223,1228,1236,1244,1253,1262,
+1271,1282,1295,1311,1330,1352,1375,1399,1422,1444,1464,1481,1495,1506,1514,1520,1522,1520,1514,1505,1493,
+1479,1467,1457,1454,1459,1472,1493,1522,1554,1586,1616,1641,1659,1670,1674,1675,1675,1676,1681,1691,1705,
+1725,1748,1772,1796,1819,1841,1859,1874,1886,1892,1892,1884,1867,1841,1806,1764,1718,1670,1625,1586,1557,
+1539,1532,1535,1546,1562,1580,1597,1612,1623,1632,1640,1647,1655,1665,1677,1692,1708,1725,1741,1757,1771,
+1783,1795,1807,1820,1835,1853,1873,1895,1918,1942,1966,1989,2011,2032,2052,2073,2096,2120,2147,2174,2201,
+2225,2244,2257,2261,2257,2246,2229,2211,2195,2184,2181,2189,2205,2229,2256,2282,2303,2315,2316,2305,2284,
+2254,2218,2180,2143,2107,2074,2043,2013,1986,1960,1938,1921,1912,1913,1927,1953,1991,2037,2088,2139,2184,
+2222,2251,2272,2289,2305,2326,2357,2400,2456,2524,2599,2675,2747,2810,2858,2891,2908,2913,2908,2898,2886,
+2875,2864,2855,2843,2829,2809,2782,2750,2714,2677,2642,2613,2592,2583,2585,2598,2620,2650,2686,2726,2770,
+2818,2868,2921,2975,3028,3078,3122,3156,3177,3182,3170,3142,3099,3046,2987,2927,2870,2821,2783,2756,2741,
+2735,2736,2739,2741,2739,2730,2714,2692,2665,2638,2614,2597,2590,2593,2608,2630,2657,2683,2704,2715,2714,
+2702,2680,2654,2629,2612,2608,2620,2649,2694,2748,2806,2859,2901,2924,2925,2904,2861,2800,2728,2651,2575,
+2504,2442,2391,2349,2314,2284,2255,2225,2191,2152,2108,2061,2011,1960,1912,1867,1827,1792,1762,1736,1714,
+1695,1679,1664,1651,1639,1630,1623,1618,1615,1612,1610,1608,1606,1605,1604,1605,1609,1615,1624,1634,1645,
+1653,1658,1657,1651,1638,1622,1603,1584,1569,1559,1555,1557,1564,1572,1581,1586,1586,1581,1570,1554,1536,
+1516,1497,1480,1464,1450,1437,1423,1408,1392,1373,1352,1330,1307,1284,1262,1241,1222,1204,1188,1173,1158,
+1143,1127,1109,1089,1064,1037,1008,979,951,927,908,898,894,897,905,913,919,919,911,895,871,
+841,808,776,746,721,699,680,661,637,607,568,520,463,401,335,270,208,151,99,52,7,
+-37,-84,-135,-189,-247,-307,-368,-427,-483,-535,-582,-625,-664,-701,-735,-769,-803,-838,-874,-913,-953,
+-995,-1039,-1085,-1131,-1177,-1223,-1266,-1308,-1348,-1386,-1423,-1459,-1494,-1528,-1562,-1595,-1626,-1656,-1684,-1710,-1735,
+-1759,-1784,-1808,-1831,-1852,-1871,-1884,-1892,-1893,-1889,-1883,-1876,-1873,-1878,-1894,-1923,-1965,-2017,-2075,-2135,-2192,
+-2241,-2281,-2308,-2327,-2338,-2346,-2355,-2370,-2390,-2418,-2451,-2486,-2521,-2551,-2575,-2592,-2603,-2610,-2617,-2626,-2641,
+-2663,-2691,-2725,-2762,-2798,-2830,-2858,-2880,-2897,-2911,-2924,-2939,-2956,-2977,-3001,-3025,-3048,-3069,-3086,-3100,-3112,
+-3125,-3141,-3161,-3187,-3217,-3250,-3282,-3311,-3336,-3354,-3368,-3380,-3393,-3412,-3438,-3472,-3513,-3556,-3598,-3633,-3656,
+-3666,-3664,-3651,-3635,-3619,-3610,-3610,-3622,-3644,-3671,-3699,-3722,-3739,-3747,-3749,-3751,-3757,-3776,-3812,-3868,-3943,
+-4035,-4135,-4236,-4328,-4404,-4458,-4487,-4491,-4474,-4441,-4400,-4356,-4317,-4287,-4269,-4265,-4272,-4290,-4313,-4339,-4364,
+-4383,-4395,-4400,-4398,-4392,-4386,-4383,-4388,-4401,-4426,-4460,-4503,-4553,-4605,-4658,-4710,-4760,-4809,-4857,-4905,-4953,
+-5001,-5047,-5088,-5121,-5144,-5156,-5158,-5154,-5146,-5141,-5143,-5155,-5180,-5215,-5259,-5308,-5355,-5397,-5430,-5455,-5471,
+-5480,-5488,-5495,-5505,-5518,-5532,-5546,-5557,-5562,-5559,-5548,-5530,-5507,-5482,-5458,-5438,-5421,-5410,-5402,-5398,-5395,
+-5393,-5392,-5392,-5396,-5404,-5418,-5437,-5461,-5488,-5516,-5542,-5564,-5580,-5589,-5593,-5592,-5587,-5581,-5575,-5569,-5565,
+-5563,-5561,-5562,-5563,-5566,-5571,-5579,-5591,-5607,-5627,-5651,-5679,-5709,-5741,-5773,-5804,-5833,-5860,-5882,-5901,-5914,
+-5923,-5928,-5928,-5925,-5920,-5913,-5907,-5900,-5895,-5891,-5886,-5882,-5876,-5868,-5859,-5849,-5839,-5829,-5822,-5818,-5816,
+-5818,-5823,-5828,-5833,-5837,-5839,-5839,-5838,-5838,-5841,-5847,-5859,-5876,-5899,-5924,-5951,-5977,-5999,-6016,-6027,-6032,
+-6033,-6031,-6029,-6028,-6031,-6039,-6051,-6067,-6086,-6105,-6125,-6143,-6158,-6172,-6183,-6194,-6205,-6216,-6229,-6243,-6259,
+-6275,-6291,-6305,-6317,-6326,-6332,-6335,-6336,-6335,-6332,-6329,-6327,-6324,-6323,-6322,-6320,-6319,-6316,-6311,-6304,-6296,
+-6286,-6274,-6261,-6247,-6234,-6221,-6209,-6199,-6191,-6185,-6180,-6176,-6173,-6171,-6169,-6167,-6164,-6160,-6155,-6148,-6141,
+-6133,-6124,-6115,-6105,-6096,-6086,-6076,-6067,-6057,-6047,-6038,-6030,-6024,-6020,-6018,-6019,-6023,-6029,-6036,-6044,-6052,
+-6058,-6063,-6066,-6067,-6066,-6064,-6061,-6057,-6053,-6049,-6043,-6036,-6028,-6018,-6008,-5998,-5988,-5981,-5976,-5973,-5974,
+-5976,-5979,-5981,-5982,-5980,-5975,-5966,-5954,-5939,-5924,-5908,-5893,-5879,-5866,-5855,-5844,-5833,-5821,-5808,-5793,-5777,
+-5761,-5744,-5727,-5713,-5700,-5691,-5683,-5677,-5673,-5668,-5661,-5653,-5641,-5627,-5610,-5590,-5570,-5550,-5531,-5514,-5500,
+-5488,-5478,-5469,-5460,-5450,-5440,-5427,-5412,-5395,-5377,-5359,-5339,-5320,-5302,-5283,-5265,-5248,-5231,-5214,-5197,-5180,
+-5164,-5148,-5133,-5118,-5102,-5087,-5071,-5055,-5039,-5022,-5005,-4988,-4970,-4952,-4933,-4913,-4892,-4870,-4847,-4823,-4799,
+-4775,-4752,-4729,-4708,-4687,-4667,-4646,-4625,-4604,-4581,-4558,-4534,-4512,-4490,-4470,-4452,-4435,-4418,-4402,-4385,-4367,
+-4347,-4325,-4302,-4279,-4255,-4233,-4211,-4192,-4174,-4156,-4140,-4124,-4108,-4092,-4077,-4062,-4048,-4034,-4021,-4008,-3995,
+-3981,-3966,-3950,-3933,-3917,-3901,-3885,-3870,-3854,-3837,-3817,-3794,-3766,-3735,-3701,-3666,-3633,-3603,-3580,-3565,-3557,
+-3556,-3560,-3566,-3572,-3576,-3575,-3569,-3559,-3546,-3532,-3519,-3507,-3497,-3490,-3484,-3478,-3471,-3463,-3453,-3442,-3431,
+-3420,-3411,-3405,-3401,-3398,-3396,-3393,-3388,-3381,-3370,-3356,-3339,-3322,-3304,-3287,-3272,-3260,-3249,-3241,-3234,-3228,
+-3223,-3219,-3214,-3209,-3204,-3198,-3191,-3183,-3174,-3164,-3151,-3138,-3122,-3106,-3089,-3071,-3053,-3034,-3015,-2995,-2976,
+-2957,-2939,-2922,-2908,-2896,-2886,-2877,-2869,-2860,-2848,-2832,-2810,-2784,-2754,-2722,-2690,-2661,-2636,-2618,-2605,-2598,
+-2593,-2590,-2585,-2579,-2571,-2563,-2556,-2552,-2554,-2562,-2574,-2589,-2601,-2606,-2599,-2576,-2536,-2480,-2413,-2339,-2265,
+-2199,-2146,-2108,-2086,-2076,-2076,-2079,-2081,-2077,-2067,-2049,-2027,-2002,-1979,-1958,-1943,-1930,-1920,-1908,-1892,-1870,
+-1840,-1803,-1760,-1714,-1668,-1625,-1587,-1554,-1527,-1505,-1485,-1465,-1444,-1422,-1396,-1368,-1338,-1306,-1272,-1238,-1202,
+-1166,-1129,-1091,-1054,-1019,-986,-957,-932,-912,-895,-882,-870,-858,-844,-828,-809,-787,-762,-735,-706,-677,
+-647,-617,-587,-556,-526,-494,-463,-432,-401,-373,-348,-325,-305,-286,-268,-248,-224,-194,-157,-112,-60,
+-1,62,128,192,254,309,357,397,430,458,481,502,523,546,571,600,633,670,711,755,802,
+851,902,954,1006,1059,1110,1160,1206,1247,1283,1310,1329,1337,1334,1318,1290,1249,1199,1140,1075,1009,
+943,880,824,774,731,694,662,634,608,584,561,541,524,511,504,502,505,511,519,526,528,
+524,513,493,466,433,395,356,317,280,246,216,190,168,149,133,119,109,101,97,97,100,
+107,116,128,142,156,170,183,196,208,218,228,237,245,252,259,265,271,275,279,281,284,
+286,287,289,291,293,295,297,298,300,302,304,307,310,314,319,324,330,336,342,347,350,
+353,355,355,356,356,356,357,358,360,362,365,368,370,371,372,372,372,370,368,366,362,
+358,352,345,337,328,318,307,296,285,274,264,254,244,235,226,217,208,200,193,186,182,
+178,176,176,176,177,179,180,181,182,182,182,183,184,186,189,193,197,201,206,210,213,
+216,219,220,222,223,225,227,229,232,236,239,244,248,253,258,262,267,272,276,281,286,
+291,297,304,312,320,329,338,348,358,368,377,387,396,405,414,423,431,439,446,453,458,
+463,468,472,477,483,489,498,508,519,532,545,560,575,591,609,627,647,669,691,714,735,
+756,774,789,801,810,818,825,832,841,852,865,880,895,909,922,933,941,945,948,948,948,
+947,946,945,945,944,944,945,948,954,965,982,1006,1035,1070,1107,1143,1177,1205,1225,1238,1357,
+1366,1365,1360,1351,1343,1338,1336,1338,1344,1352,1361,1370,1378,1385,1392,1400,1410,1421,1434,1448,1462,
+1477,1489,1500,1509,1516,1521,1524,1526,1527,1526,1524,1518,1511,1501,1489,1479,1470,1466,1468,1476,1492,
+1515,1543,1574,1606,1637,1665,1689,1708,1722,1732,1740,1745,1749,1753,1759,1766,1777,1792,1809,1830,1851,
+1872,1889,1900,1901,1891,1870,1837,1795,1747,1698,1651,1611,1581,1562,1556,1559,1572,1589,1610,1632,1653,
+1672,1691,1710,1730,1751,1774,1798,1823,1846,1866,1883,1896,1904,1910,1913,1917,1922,1930,1940,1954,1970,
+1988,2005,2022,2037,2050,2062,2073,2086,2099,2115,2133,2151,2169,2184,2194,2198,2194,2183,2167,2149,2131,
+2117,2111,2115,2127,2149,2175,2204,2230,2250,2261,2262,2253,2235,2210,2183,2155,2127,2101,2076,2050,2024,
+1996,1968,1940,1917,1900,1895,1902,1924,1958,2002,2051,2100,2145,2181,2209,2229,2244,2259,2281,2313,2359,
+2420,2492,2571,2651,2725,2787,2831,2858,2866,2860,2844,2823,2802,2785,2774,2768,2766,2763,2758,2748,2732,
+2710,2683,2655,2628,2607,2593,2588,2592,2606,2628,2655,2688,2724,2763,2803,2845,2887,2928,2966,2999,3025,
+3041,3046,3038,3017,2985,2944,2897,2849,2802,2760,2726,2701,2685,2677,2676,2677,2679,2678,2672,2660,2642,
+2621,2599,2579,2565,2559,2562,2575,2594,2618,2640,2657,2665,2663,2651,2631,2609,2589,2578,2580,2599,2634,
+2684,2742,2801,2854,2893,2913,2909,2883,2835,2772,2699,2623,2549,2482,2424,2375,2334,2297,2262,2224,2183,
+2136,2084,2028,1972,1917,1866,1821,1782,1752,1728,1710,1696,1685,1677,1670,1665,1661,1658,1656,1656,1655,
+1654,1652,1648,1642,1635,1627,1620,1615,1613,1616,1622,1630,1639,1646,1649,1647,1638,1623,1605,1584,1565,
+1549,1540,1537,1541,1550,1561,1571,1578,1580,1574,1563,1546,1526,1505,1484,1466,1450,1436,1424,1412,1399,
+1384,1366,1347,1325,1303,1280,1259,1239,1221,1205,1190,1175,1160,1143,1124,1101,1075,1045,1013,979,945,
+914,887,865,850,841,838,838,838,836,830,817,797,771,740,707,674,642,614,589,565,542,
+516,484,447,402,351,296,238,180,125,74,27,-15,-56,-97,-139,-184,-233,-285,-340,-396,-451,
+-505,-555,-602,-644,-683,-720,-754,-788,-822,-857,-894,-932,-972,-1013,-1055,-1097,-1139,-1180,-1220,-1259,-1297,
+-1334,-1371,-1408,-1445,-1482,-1519,-1554,-1588,-1620,-1649,-1676,-1701,-1725,-1748,-1771,-1795,-1819,-1841,-1860,-1874,-1882,
+-1884,-1882,-1876,-1871,-1871,-1879,-1900,-1934,-1982,-2040,-2104,-2170,-2231,-2283,-2324,-2351,-2367,-2375,-2381,-2387,-2399,
+-2418,-2445,-2478,-2514,-2548,-2578,-2601,-2617,-2627,-2633,-2640,-2650,-2666,-2690,-2722,-2758,-2796,-2831,-2862,-2886,-2904,
+-2915,-2924,-2933,-2944,-2960,-2981,-3005,-3032,-3058,-3081,-3102,-3118,-3132,-3146,-3161,-3180,-3204,-3231,-3260,-3289,-3315,
+-3335,-3351,-3362,-3372,-3384,-3401,-3426,-3459,-3499,-3543,-3585,-3622,-3649,-3664,-3666,-3660,-3648,-3637,-3630,-3633,-3645,
+-3665,-3690,-3717,-3740,-3756,-3765,-3769,-3772,-3779,-3797,-3831,-3884,-3955,-4042,-4137,-4233,-4321,-4394,-4447,-4476,-4482,
+-4467,-4438,-4400,-4361,-4325,-4297,-4281,-4277,-4283,-4298,-4318,-4341,-4362,-4381,-4395,-4405,-4411,-4416,-4421,-4429,-4443,
+-4463,-4490,-4525,-4566,-4612,-4661,-4712,-4762,-4812,-4861,-4908,-4954,-4997,-5037,-5071,-5099,-5119,-5131,-5136,-5137,-5135,
+-5134,-5140,-5153,-5177,-5210,-5251,-5297,-5343,-5386,-5422,-5450,-5469,-5481,-5489,-5496,-5504,-5515,-5530,-5547,-5565,-5581,
+-5592,-5596,-5592,-5580,-5562,-5540,-5516,-5493,-5473,-5457,-5446,-5439,-5437,-5438,-5442,-5449,-5459,-5470,-5483,-5497,-5511,
+-5525,-5537,-5549,-5560,-5570,-5580,-5590,-5601,-5613,-5625,-5636,-5646,-5651,-5653,-5650,-5644,-5635,-5625,-5616,-5611,-5609,
+-5613,-5623,-5637,-5656,-5678,-5701,-5727,-5752,-5778,-5804,-5829,-5854,-5877,-5897,-5914,-5927,-5936,-5942,-5944,-5943,-5941,
+-5937,-5932,-5926,-5919,-5910,-5898,-5884,-5868,-5851,-5836,-5822,-5812,-5807,-5807,-5811,-5818,-5827,-5835,-5842,-5846,-5849,
+-5850,-5853,-5858,-5867,-5881,-5900,-5923,-5949,-5975,-5998,-6017,-6031,-6040,-6045,-6046,-6047,-6048,-6052,-6060,-6072,-6086,
+-6103,-6121,-6139,-6155,-6171,-6185,-6199,-6214,-6229,-6245,-6263,-6281,-6299,-6315,-6329,-6340,-6348,-6352,-6354,-6355,-6354,
+-6354,-6354,-6355,-6356,-6357,-6358,-6357,-6355,-6352,-6346,-6339,-6331,-6322,-6313,-6304,-6294,-6285,-6277,-6268,-6260,-6253,
+-6248,-6244,-6241,-6241,-6243,-6246,-6250,-6254,-6257,-6257,-6255,-6250,-6241,-6229,-6215,-6200,-6184,-6167,-6152,-6138,-6125,
+-6114,-6105,-6098,-6093,-6090,-6089,-6091,-6095,-6100,-6107,-6113,-6120,-6125,-6129,-6131,-6131,-6130,-6127,-6124,-6121,-6118,
+-6114,-6110,-6104,-6097,-6088,-6077,-6065,-6052,-6039,-6028,-6019,-6014,-6011,-6012,-6015,-6018,-6022,-6024,-6023,-6019,-6011,
+-6001,-5988,-5974,-5959,-5944,-5930,-5915,-5901,-5887,-5872,-5856,-5839,-5820,-5801,-5782,-5764,-5747,-5733,-5722,-5713,-5707,
+-5702,-5697,-5691,-5683,-5672,-5658,-5640,-5621,-5600,-5580,-5561,-5544,-5531,-5520,-5513,-5507,-5501,-5495,-5487,-5476,-5462,
+-5446,-5427,-5406,-5385,-5363,-5342,-5322,-5303,-5286,-5269,-5254,-5239,-5224,-5209,-5194,-5178,-5161,-5144,-5126,-5108,-5090,
+-5072,-5053,-5035,-5017,-4999,-4980,-4960,-4939,-4917,-4893,-4869,-4845,-4821,-4798,-4776,-4756,-4736,-4717,-4698,-4678,-4656,
+-4633,-4608,-4583,-4558,-4534,-4513,-4495,-4479,-4466,-4454,-4442,-4429,-4412,-4393,-4369,-4343,-4316,-4287,-4260,-4235,-4212,
+-4191,-4173,-4156,-4140,-4125,-4109,-4092,-4076,-4058,-4041,-4024,-4007,-3991,-3976,-3962,-3949,-3938,-3929,-3923,-3918,-3915,
+-3911,-3907,-3899,-3886,-3868,-3843,-3813,-3779,-3744,-3709,-3678,-3652,-3633,-3620,-3613,-3610,-3609,-3608,-3605,-3600,-3592,
+-3582,-3570,-3558,-3546,-3536,-3526,-3517,-3508,-3499,-3489,-3478,-3467,-3455,-3444,-3435,-3427,-3421,-3416,-3411,-3406,-3400,
+-3391,-3380,-3367,-3352,-3336,-3321,-3306,-3293,-3282,-3273,-3265,-3259,-3254,-3251,-3247,-3244,-3241,-3237,-3233,-3227,-3220,
+-3210,-3198,-3184,-3168,-3151,-3133,-3115,-3097,-3080,-3063,-3047,-3031,-3015,-2999,-2983,-2968,-2954,-2941,-2929,-2917,-2904,
+-2888,-2870,-2847,-2819,-2787,-2752,-2716,-2683,-2654,-2632,-2617,-2609,-2608,-2610,-2615,-2619,-2623,-2625,-2627,-2629,-2634,
+-2643,-2654,-2668,-2680,-2686,-2682,-2662,-2626,-2571,-2501,-2421,-2336,-2254,-2183,-2128,-2091,-2074,-2073,-2084,-2101,-2119,
+-2132,-2138,-2137,-2127,-2113,-2095,-2076,-2058,-2041,-2023,-2002,-1977,-1945,-1906,-1860,-1808,-1752,-1695,-1640,-1588,-1540,
+-1498,-1460,-1425,-1393,-1363,-1333,-1304,-1274,-1243,-1213,-1182,-1151,-1120,-1089,-1059,-1030,-1004,-981,-963,-949,-939,
+-934,-931,-929,-927,-922,-912,-899,-880,-857,-830,-800,-768,-735,-702,-667,-632,-597,-561,-525,-491,-458,
+-428,-401,-378,-359,-343,-328,-313,-296,-274,-247,-213,-172,-125,-73,-17,41,99,156,210,260,305,
+345,380,411,438,465,490,518,548,583,624,670,722,778,837,897,956,1011,1064,1112,1155,1195,
+1232,1265,1296,1322,1342,1352,1351,1335,1303,1256,1194,1120,1039,955,875,802,738,687,646,615,590,
+570,551,531,512,492,474,459,448,442,441,444,446,447,442,430,410,382,346,305,262,218,
+177,140,107,80,57,38,23,10,1,-5,-8,-7,-3,4,16,30,45,60,76,90,102,
+113,123,131,140,147,155,163,170,177,183,189,194,198,203,207,211,216,221,226,231,236,
+240,244,248,252,257,264,271,279,287,296,303,309,314,316,316,314,312,310,309,310,312,
+316,321,325,329,332,333,332,329,325,321,316,311,307,303,299,294,289,282,275,266,257,
+247,238,228,220,213,206,199,193,187,182,176,171,166,163,160,159,158,159,160,162,164,
+166,168,169,171,174,177,180,184,189,193,198,202,205,207,209,210,210,211,212,213,214,
+216,219,222,225,228,231,234,237,240,242,245,247,251,255,260,267,275,284,294,305,316,
+328,339,350,359,368,376,383,390,397,403,410,416,423,430,438,446,455,465,475,487,500,
+514,529,545,563,581,601,622,646,670,696,723,749,775,798,819,837,853,865,876,885,894,
+904,914,924,935,946,955,963,970,976,980,984,987,990,992,994,995,993,991,987,983,982,
+986,996,1016,1044,1082,1127,1176,1225,1271,1310,1339,1357,1446,1457,1457,1451,1441,1431,1425,1423,1426,
+1433,1442,1452,1461,1469,1474,1477,1479,1480,1482,1484,1487,1489,1490,1490,1487,1481,1474,1466,1459,1453,
+1448,1446,1446,1446,1445,1443,1438,1431,1422,1413,1406,1403,1406,1416,1435,1461,1494,1531,1569,1605,1638,
+1664,1682,1692,1694,1690,1683,1675,1670,1669,1675,1687,1707,1732,1758,1783,1802,1812,1812,1799,1775,1742,
+1703,1662,1623,1592,1570,1559,1559,1570,1590,1618,1650,1685,1722,1760,1799,1839,1879,1920,1960,1998,2032,
+2062,2086,2104,2115,2121,2123,2122,2120,2118,2117,2116,2116,2116,2113,2108,2099,2088,2074,2060,2047,2037,
+2031,2031,2036,2045,2057,2069,2078,2083,2083,2078,2068,2057,2046,2039,2039,2045,2059,2079,2102,2126,2147,
+2163,2172,2172,2166,2155,2141,2126,2113,2102,2092,2083,2073,2058,2040,2017,1991,1966,1943,1929,1924,1931,
+1950,1979,2014,2052,2087,2117,2141,2160,2175,2191,2213,2244,2287,2342,2407,2477,2547,2610,2660,2696,2713,
+2715,2705,2686,2666,2648,2638,2635,2641,2652,2666,2679,2687,2690,2685,2675,2660,2645,2632,2623,2620,2624,
+2634,2648,2666,2685,2704,2723,2740,2757,2773,2788,2803,2817,2828,2836,2839,2836,2826,2809,2786,2759,2728,
+2698,2669,2644,2624,2610,2601,2597,2595,2594,2592,2587,2579,2568,2555,2543,2532,2526,2526,2532,2544,2558,
+2573,2586,2593,2592,2582,2567,2547,2528,2516,2514,2527,2556,2599,2654,2715,2774,2824,2859,2875,2869,2841,
+2796,2736,2670,2601,2535,2475,2423,2376,2334,2292,2248,2199,2144,2083,2017,1950,1884,1823,1771,1728,1696,
+1675,1663,1660,1662,1668,1676,1686,1695,1703,1711,1717,1720,1721,1719,1713,1702,1689,1672,1655,1639,1624,
+1614,1608,1607,1608,1612,1615,1616,1614,1607,1596,1583,1569,1556,1547,1543,1544,1549,1557,1565,1571,1573,
+1569,1558,1542,1521,1497,1474,1451,1431,1414,1399,1387,1375,1363,1349,1333,1316,1297,1277,1256,1236,1217,
+1198,1180,1162,1143,1123,1102,1079,1053,1026,997,967,936,905,876,849,824,802,784,768,753,738,
+722,704,681,655,625,591,556,519,482,446,411,376,341,304,266,225,181,135,88,40,-5,
+-49,-91,-130,-168,-205,-242,-281,-322,-366,-411,-457,-503,-549,-593,-634,-672,-709,-743,-776,-809,-842,
+-877,-913,-950,-988,-1026,-1065,-1103,-1140,-1175,-1208,-1240,-1272,-1303,-1334,-1367,-1401,-1437,-1474,-1511,-1547,-1580,
+-1611,-1637,-1660,-1680,-1698,-1715,-1733,-1752,-1771,-1791,-1811,-1827,-1841,-1851,-1858,-1864,-1871,-1884,-1905,-1938,-1982,
+-2037,-2101,-2169,-2236,-2297,-2347,-2385,-2408,-2420,-2425,-2426,-2428,-2437,-2453,-2477,-2509,-2544,-2579,-2611,-2638,-2658,
+-2673,-2686,-2698,-2714,-2735,-2762,-2795,-2830,-2865,-2896,-2921,-2939,-2949,-2955,-2958,-2963,-2971,-2986,-3007,-3034,-3063,
+-3092,-3119,-3142,-3160,-3174,-3186,-3197,-3210,-3226,-3245,-3266,-3287,-3307,-3323,-3336,-3347,-3357,-3370,-3387,-3412,-3445,
+-3485,-3529,-3573,-3613,-3646,-3669,-3682,-3686,-3685,-3683,-3682,-3688,-3699,-3717,-3739,-3761,-3781,-3796,-3807,-3814,-3822,
+-3834,-3854,-3888,-3936,-3999,-4073,-4153,-4233,-4305,-4366,-4409,-4434,-4440,-4431,-4410,-4382,-4353,-4326,-4306,-4293,-4289,
+-4294,-4305,-4322,-4342,-4365,-4389,-4412,-4436,-4459,-4482,-4505,-4530,-4557,-4587,-4619,-4656,-4696,-4739,-4785,-4832,-4880,
+-4927,-4971,-5013,-5049,-5080,-5104,-5120,-5130,-5134,-5133,-5131,-5128,-5129,-5136,-5150,-5174,-5205,-5244,-5288,-5333,-5376,
+-5415,-5448,-5474,-5494,-5508,-5520,-5531,-5543,-5558,-5576,-5596,-5616,-5635,-5651,-5661,-5666,-5663,-5655,-5642,-5625,-5607,
+-5589,-5574,-5562,-5554,-5551,-5552,-5556,-5562,-5568,-5573,-5575,-5574,-5567,-5558,-5546,-5534,-5526,-5522,-5527,-5540,-5562,
+-5591,-5624,-5658,-5689,-5715,-5734,-5744,-5747,-5744,-5738,-5732,-5727,-5726,-5728,-5732,-5737,-5742,-5746,-5748,-5747,-5746,
+-5745,-5746,-5752,-5762,-5778,-5797,-5819,-5843,-5865,-5886,-5903,-5916,-5926,-5932,-5935,-5935,-5932,-5925,-5916,-5903,-5887,
+-5869,-5852,-5835,-5822,-5813,-5810,-5812,-5819,-5829,-5841,-5852,-5862,-5870,-5877,-5882,-5888,-5896,-5907,-5921,-5938,-5957,
+-5977,-5996,-6012,-6025,-6034,-6041,-6046,-6051,-6057,-6066,-6078,-6092,-6108,-6124,-6140,-6154,-6167,-6178,-6188,-6199,-6210,
+-6224,-6241,-6259,-6280,-6301,-6320,-6337,-6351,-6361,-6368,-6372,-6374,-6376,-6378,-6381,-6385,-6390,-6394,-6397,-6398,-6397,
+-6392,-6386,-6377,-6367,-6357,-6348,-6339,-6332,-6325,-6321,-6317,-6314,-6312,-6312,-6313,-6315,-6320,-6326,-6333,-6340,-6347,
+-6351,-6352,-6349,-6342,-6331,-6315,-6297,-6277,-6256,-6236,-6217,-6201,-6188,-6177,-6170,-6165,-6163,-6162,-6163,-6165,-6169,
+-6172,-6176,-6179,-6182,-6183,-6183,-6181,-6178,-6174,-6170,-6164,-6159,-6153,-6148,-6141,-6134,-6126,-6116,-6105,-6093,-6080,
+-6068,-6058,-6049,-6043,-6040,-6039,-6041,-6044,-6047,-6049,-6050,-6048,-6043,-6035,-6025,-6013,-5999,-5984,-5968,-5952,-5936,
+-5919,-5902,-5884,-5865,-5846,-5827,-5808,-5790,-5774,-5760,-5749,-5740,-5733,-5727,-5721,-5714,-5705,-5694,-5681,-5665,-5647,
+-5628,-5610,-5592,-5577,-5564,-5553,-5545,-5538,-5531,-5524,-5515,-5504,-5490,-5474,-5456,-5437,-5416,-5396,-5376,-5356,-5338,
+-5321,-5305,-5290,-5275,-5260,-5245,-5229,-5213,-5195,-5177,-5158,-5139,-5120,-5101,-5083,-5064,-5046,-5027,-5007,-4987,-4964,
+-4941,-4916,-4891,-4867,-4843,-4821,-4800,-4782,-4765,-4748,-4730,-4712,-4691,-4667,-4642,-4616,-4590,-4566,-4544,-4525,-4510,
+-4498,-4487,-4477,-4466,-4452,-4434,-4413,-4389,-4362,-4334,-4306,-4279,-4254,-4231,-4211,-4191,-4173,-4155,-4137,-4118,-4100,
+-4081,-4063,-4045,-4029,-4014,-4000,-3988,-3977,-3969,-3962,-3959,-3957,-3957,-3958,-3959,-3957,-3952,-3941,-3925,-3903,-3875,
+-3844,-3810,-3777,-3746,-3720,-3697,-3681,-3668,-3660,-3653,-3648,-3642,-3636,-3628,-3619,-3609,-3597,-3586,-3574,-3561,-3548,
+-3535,-3522,-3509,-3496,-3485,-3474,-3465,-3457,-3451,-3445,-3439,-3432,-3424,-3414,-3403,-3391,-3377,-3364,-3350,-3338,-3326,
+-3316,-3306,-3298,-3290,-3284,-3278,-3273,-3269,-3266,-3263,-3259,-3254,-3247,-3238,-3226,-3211,-3195,-3177,-3159,-3141,-3124,
+-3108,-3094,-3080,-3066,-3052,-3037,-3021,-3004,-2985,-2966,-2946,-2925,-2903,-2879,-2852,-2823,-2792,-2759,-2725,-2692,-2662,
+-2638,-2620,-2609,-2606,-2608,-2615,-2625,-2635,-2646,-2655,-2664,-2673,-2683,-2693,-2704,-2713,-2717,-2712,-2696,-2664,-2615,
+-2550,-2473,-2388,-2301,-2220,-2151,-2100,-2069,-2057,-2063,-2082,-2108,-2135,-2158,-2173,-2180,-2176,-2164,-2145,-2121,-2095,
+-2067,-2036,-2003,-1966,-1925,-1878,-1826,-1770,-1710,-1649,-1588,-1529,-1474,-1423,-1376,-1335,-1298,-1265,-1235,-1209,-1185,
+-1163,-1142,-1122,-1102,-1083,-1064,-1046,-1031,-1018,-1008,-1002,-999,-999,-999,-1000,-998,-994,-985,-971,-953,-931,
+-907,-881,-854,-826,-797,-767,-735,-701,-664,-625,-585,-546,-510,-477,-449,-427,-409,-395,-383,-369,-354,
+-334,-308,-277,-241,-201,-158,-112,-65,-18,29,77,124,170,215,257,297,334,368,401,434,469,
+508,553,605,665,731,802,873,943,1007,1065,1114,1156,1191,1222,1249,1274,1297,1317,1330,1333,1323,
+1296,1251,1189,1113,1026,935,847,767,699,645,606,579,561,548,536,521,503,482,459,435,415,
+398,387,380,376,371,364,352,332,304,269,228,183,138,95,55,20,-8,-32,-52,-68,-80,
+-90,-96,-98,-97,-91,-82,-70,-55,-39,-22,-7,6,17,27,36,43,51,59,67,75,83,
+91,99,106,111,117,122,128,134,141,149,156,164,171,177,183,187,191,195,200,205,213,
+221,229,237,244,250,253,254,254,252,251,250,251,253,258,263,268,272,275,276,275,272,
+268,263,259,254,251,249,247,244,241,237,230,223,214,205,196,187,180,175,171,168,165,
+163,161,159,156,153,150,148,146,145,144,145,146,148,150,152,155,158,161,165,170,174,
+179,184,188,191,194,196,198,198,199,199,199,199,199,200,200,201,202,202,203,204,205,
+206,208,211,215,220,225,233,242,251,262,274,286,298,310,321,331,339,346,352,357,361,
+365,370,375,381,389,398,409,423,437,454,472,491,512,533,556,580,604,630,656,684,713,
+742,771,800,828,854,878,899,918,935,950,964,976,989,1000,1011,1020,1028,1035,1039,1042,1044,
+1045,1046,1048,1051,1054,1057,1057,1055,1050,1042,1032,1021,1014,1013,1021,1040,1071,1115,1168,1226,1285,
+1340,1387,1423,1446,1473,1486,1487,1481,1471,1462,1456,1455,1459,1468,1478,1489,1499,1505,1508,1509,1507,
+1504,1500,1497,1494,1490,1485,1477,1465,1450,1431,1412,1393,1376,1362,1353,1348,1347,1348,1348,1346,1342,
+1333,1322,1310,1298,1291,1290,1297,1313,1338,1370,1407,1444,1478,1507,1528,1540,1543,1540,1532,1524,1518,
+1517,1524,1539,1561,1589,1619,1648,1672,1689,1696,1692,1679,1658,1633,1606,1582,1563,1552,1551,1561,1581,
+1611,1649,1695,1747,1804,1863,1925,1987,2049,2107,2162,2211,2253,2287,2314,2332,2343,2349,2350,2347,2342,
+2333,2322,2308,2289,2264,2234,2198,2158,2114,2070,2028,1990,1960,1939,1928,1927,1933,1946,1962,1979,1994,
+2005,2012,2014,2014,2012,2011,2013,2018,2027,2039,2052,2065,2076,2083,2086,2085,2080,2074,2069,2066,2067,
+2072,2079,2087,2093,2095,2091,2080,2062,2041,2018,1997,1980,1971,1971,1978,1992,2010,2029,2048,2064,2080,
+2095,2112,2135,2165,2204,2252,2306,2363,2418,2468,2507,2533,2545,2546,2538,2525,2513,2505,2505,2514,2531,
+2554,2579,2605,2626,2642,2652,2655,2655,2652,2650,2650,2653,2659,2667,2675,2683,2687,2688,2685,2678,2669,
+2659,2650,2643,2637,2635,2634,2634,2634,2633,2628,2621,2610,2597,2582,2567,2552,2539,2528,2518,2510,2503,
+2496,2489,2482,2474,2467,2462,2459,2460,2466,2476,2489,2503,2516,2526,2529,2525,2512,2493,2470,2447,2428,
+2419,2423,2443,2479,2529,2588,2651,2711,2761,2797,2814,2810,2788,2750,2701,2645,2588,2533,2483,2438,2396,
+2355,2312,2263,2208,2146,2075,2000,1923,1848,1780,1721,1673,1640,1621,1614,1618,1632,1651,1674,1698,1721,
+1742,1759,1772,1779,1781,1776,1766,1751,1731,1708,1684,1660,1638,1619,1605,1594,1587,1583,1580,1577,1574,
+1569,1565,1560,1556,1554,1555,1558,1564,1571,1577,1581,1581,1575,1563,1546,1524,1498,1472,1446,1422,1400,
+1382,1366,1352,1339,1326,1312,1298,1282,1264,1245,1226,1206,1185,1162,1139,1115,1089,1063,1035,1008,980,
+953,927,901,876,851,826,801,775,749,722,694,667,638,610,580,549,516,481,443,404,361,
+317,270,223,174,125,77,29,-16,-60,-102,-141,-178,-212,-245,-276,-307,-338,-370,-403,-438,-475,
+-512,-550,-587,-624,-658,-691,-722,-751,-778,-806,-834,-863,-893,-925,-960,-995,-1032,-1069,-1105,-1140,-1173,
+-1204,-1232,-1259,-1284,-1309,-1336,-1364,-1394,-1427,-1463,-1499,-1535,-1568,-1599,-1625,-1647,-1664,-1679,-1692,-1704,-1718,
+-1733,-1751,-1770,-1791,-1812,-1833,-1855,-1877,-1903,-1933,-1970,-2015,-2068,-2128,-2193,-2257,-2318,-2371,-2413,-2441,-2457,
+-2463,-2462,-2458,-2457,-2462,-2475,-2498,-2528,-2563,-2600,-2637,-2670,-2699,-2724,-2747,-2770,-2794,-2822,-2853,-2886,-2919,
+-2950,-2976,-2995,-3008,-3014,-3016,-3017,-3020,-3028,-3043,-3065,-3092,-3122,-3152,-3179,-3201,-3218,-3229,-3236,-3242,-3248,
+-3256,-3267,-3279,-3294,-3308,-3321,-3333,-3343,-3354,-3368,-3386,-3410,-3441,-3479,-3521,-3565,-3608,-3646,-3678,-3702,-3719,
+-3730,-3738,-3745,-3753,-3763,-3777,-3792,-3808,-3824,-3839,-3853,-3868,-3885,-3908,-3938,-3977,-4026,-4082,-4145,-4209,-4270,
+-4324,-4368,-4399,-4418,-4425,-4422,-4412,-4399,-4384,-4370,-4360,-4353,-4351,-4353,-4361,-4373,-4391,-4413,-4439,-4470,-4504,
+-4539,-4575,-4611,-4647,-4681,-4715,-4749,-4785,-4823,-4864,-4907,-4953,-5000,-5045,-5087,-5122,-5149,-5167,-5175,-5174,-5166,
+-5154,-5140,-5129,-5122,-5124,-5135,-5155,-5184,-5221,-5263,-5308,-5354,-5397,-5437,-5473,-5503,-5529,-5552,-5572,-5590,-5607,
+-5625,-5642,-5661,-5679,-5697,-5714,-5729,-5740,-5747,-5750,-5748,-5742,-5731,-5719,-5705,-5692,-5681,-5674,-5670,-5670,-5670,
+-5669,-5664,-5653,-5633,-5606,-5572,-5535,-5499,-5468,-5447,-5441,-5451,-5478,-5518,-5569,-5624,-5679,-5729,-5772,-5804,-5828,
+-5845,-5858,-5868,-5879,-5890,-5901,-5910,-5914,-5912,-5900,-5879,-5849,-5815,-5779,-5745,-5718,-5700,-5694,-5699,-5714,-5735,
+-5761,-5789,-5815,-5838,-5858,-5873,-5886,-5895,-5901,-5905,-5905,-5903,-5897,-5889,-5879,-5868,-5858,-5851,-5846,-5846,-5849,
+-5856,-5865,-5875,-5884,-5893,-5900,-5906,-5911,-5917,-5925,-5935,-5948,-5962,-5977,-5991,-6005,-6016,-6025,-6033,-6039,-6046,
+-6054,-6064,-6076,-6089,-6104,-6118,-6131,-6142,-6151,-6158,-6164,-6172,-6181,-6194,-6211,-6232,-6256,-6282,-6307,-6331,-6351,
+-6367,-6379,-6387,-6392,-6396,-6400,-6404,-6410,-6416,-6423,-6429,-6433,-6435,-6434,-6429,-6422,-6413,-6402,-6391,-6381,-6373,
+-6367,-6363,-6362,-6364,-6367,-6373,-6380,-6389,-6399,-6409,-6418,-6426,-6432,-6434,-6432,-6426,-6416,-6401,-6383,-6362,-6341,
+-6320,-6299,-6282,-6266,-6254,-6245,-6239,-6234,-6232,-6230,-6230,-6230,-6231,-6231,-6231,-6230,-6229,-6226,-6223,-6218,-6212,
+-6205,-6197,-6189,-6181,-6172,-6164,-6155,-6147,-6138,-6129,-6120,-6111,-6102,-6094,-6086,-6080,-6075,-6072,-6070,-6069,-6069,
+-6069,-6069,-6067,-6064,-6058,-6051,-6042,-6031,-6018,-6004,-5989,-5973,-5956,-5939,-5922,-5904,-5886,-5868,-5851,-5834,-5818,
+-5804,-5791,-5779,-5769,-5760,-5752,-5744,-5735,-5726,-5716,-5704,-5692,-5678,-5664,-5650,-5636,-5622,-5609,-5597,-5585,-5573,
+-5561,-5549,-5535,-5521,-5506,-5491,-5474,-5458,-5441,-5424,-5407,-5390,-5374,-5357,-5341,-5325,-5309,-5292,-5276,-5259,-5241,
+-5223,-5205,-5186,-5168,-5149,-5131,-5113,-5095,-5077,-5059,-5039,-5019,-4997,-4975,-4951,-4926,-4902,-4878,-4856,-4836,-4818,
+-4801,-4784,-4768,-4749,-4729,-4707,-4682,-4655,-4628,-4601,-4576,-4554,-4534,-4518,-4504,-4492,-4480,-4467,-4452,-4435,-4416,
+-4395,-4372,-4349,-4326,-4303,-4280,-4259,-4237,-4217,-4196,-4176,-4156,-4138,-4120,-4104,-4089,-4076,-4064,-4053,-4042,-4032,
+-4022,-4012,-4003,-3995,-3988,-3982,-3977,-3972,-3965,-3957,-3945,-3929,-3909,-3885,-3859,-3831,-3804,-3778,-3754,-3735,-3719,
+-3707,-3698,-3691,-3685,-3679,-3673,-3665,-3656,-3645,-3632,-3618,-3603,-3587,-3572,-3557,-3544,-3531,-3521,-3512,-3504,-3497,
+-3491,-3484,-3476,-3468,-3458,-3447,-3435,-3422,-3410,-3398,-3386,-3375,-3363,-3352,-3340,-3329,-3318,-3307,-3298,-3291,-3286,
+-3282,-3279,-3277,-3274,-3269,-3261,-3249,-3234,-3215,-3195,-3174,-3154,-3135,-3118,-3104,-3091,-3079,-3066,-3051,-3033,-3011,
+-2987,-2959,-2928,-2896,-2863,-2830,-2798,-2766,-2736,-2706,-2679,-2654,-2633,-2615,-2601,-2592,-2587,-2586,-2587,-2590,-2594,
+-2598,-2603,-2608,-2613,-2619,-2625,-2630,-2631,-2627,-2614,-2590,-2553,-2503,-2441,-2369,-2293,-2217,-2147,-2089,-2046,-2021,
+-2013,-2020,-2038,-2062,-2088,-2110,-2125,-2131,-2126,-2112,-2089,-2059,-2024,-1986,-1945,-1902,-1857,-1810,-1761,-1710,-1657,
+-1603,-1549,-1495,-1443,-1393,-1348,-1306,-1271,-1240,-1215,-1195,-1179,-1167,-1157,-1149,-1140,-1132,-1124,-1115,-1106,-1099,
+-1092,-1088,-1085,-1083,-1081,-1077,-1070,-1059,-1043,-1023,-1000,-974,-948,-923,-900,-879,-859,-838,-816,-791,-761,
+-727,-688,-647,-606,-567,-533,-503,-480,-462,-447,-433,-418,-400,-378,-352,-322,-289,-256,-222,-190,-157,
+-125,-90,-52,-11,33,82,132,183,231,276,318,357,395,435,480,533,594,664,740,820,900,
+975,1042,1099,1144,1179,1206,1227,1244,1258,1270,1277,1277,1266,1241,1200,1142,1070,988,900,814,735,
+669,617,580,557,544,536,529,519,504,483,458,430,401,376,354,336,322,310,296,279,257,
+229,195,157,115,73,33,-3,-35,-62,-85,-103,-119,-131,-140,-147,-151,-151,-148,-141,-130,-117,
+-103,-89,-75,-63,-53,-45,-37,-30,-23,-15,-6,2,11,20,28,35,40,45,49,53,59,
+65,73,81,90,98,106,112,116,119,122,124,128,132,137,144,152,159,166,171,175,177,
+179,179,180,181,183,187,191,196,200,204,206,207,207,206,204,202,201,200,200,199,198,
+196,192,187,180,172,164,156,149,143,140,137,137,137,138,138,139,138,137,135,133,131,
+130,128,128,128,128,129,131,133,136,140,144,149,154,159,164,169,173,176,179,181,183,
+184,185,186,186,186,186,185,183,181,179,177,176,176,177,180,184,190,197,205,215,225,
+235,245,255,265,274,283,291,298,304,310,315,319,323,327,333,339,348,359,372,389,408,
+431,456,483,512,543,575,609,642,677,711,746,780,814,847,877,906,932,955,976,994,1010,
+1024,1038,1051,1063,1074,1085,1093,1099,1102,1103,1100,1096,1091,1087,1085,1084,1086,1089,1092,1093,1091,
+1084,1073,1059,1044,1032,1026,1030,1047,1078,1122,1176,1238,1300,1359,1410,1448,1473,1445,1456,1457,1449,
+1438,1428,1421,1418,1422,1429,1440,1451,1461,1468,1472,1474,1474,1473,1472,1472,1473,1473,1471,1466,1456,
+1442,1422,1398,1373,1348,1325,1306,1292,1282,1276,1271,1267,1260,1251,1239,1225,1210,1197,1189,1186,1192,
+1204,1223,1247,1273,1298,1321,1338,1351,1358,1362,1364,1367,1373,1385,1402,1426,1455,1487,1519,1550,1576,
+1596,1608,1612,1610,1602,1591,1578,1566,1558,1555,1559,1572,1594,1626,1668,1720,1780,1848,1921,1996,2072,
+2146,2214,2276,2329,2372,2406,2431,2449,2460,2465,2466,2463,2456,2442,2423,2396,2360,2316,2264,2206,2145,
+2083,2023,1970,1925,1892,1872,1864,1869,1883,1904,1930,1957,1983,2006,2024,2037,2046,2050,2052,2052,2052,
+2051,2051,2051,2051,2050,2048,2045,2041,2038,2036,2037,2042,2052,2064,2080,2096,2111,2122,2127,2125,2117,
+2103,2084,2064,2044,2027,2015,2007,2004,2004,2008,2014,2021,2031,2043,2059,2081,2110,2145,2186,2231,2278,
+2322,2361,2391,2412,2423,2426,2424,2420,2417,2419,2428,2444,2466,2493,2522,2550,2575,2595,2610,2621,2628,
+2633,2638,2643,2650,2658,2665,2671,2673,2671,2663,2650,2632,2612,2590,2569,2550,2536,2525,2518,2514,2512,
+2512,2511,2510,2508,2504,2499,2493,2486,2478,2469,2459,2448,2436,2423,2410,2397,2387,2380,2378,2381,2390,
+2404,2421,2440,2456,2469,2474,2470,2456,2434,2407,2377,2349,2329,2321,2327,2350,2389,2441,2501,2564,2624,
+2674,2711,2731,2734,2720,2693,2656,2613,2569,2526,2485,2447,2411,2374,2332,2285,2229,2165,2092,2013,1931,
+1850,1775,1708,1653,1613,1588,1578,1581,1595,1618,1646,1676,1705,1732,1754,1769,1778,1781,1777,1767,1752,
+1733,1712,1690,1667,1645,1625,1607,1592,1578,1567,1558,1551,1546,1542,1542,1544,1548,1555,1564,1574,1584,
+1593,1598,1599,1594,1583,1567,1546,1521,1494,1466,1440,1415,1392,1373,1355,1340,1325,1311,1297,1282,1267,
+1251,1234,1215,1194,1172,1146,1119,1089,1057,1024,990,958,927,898,871,847,824,801,778,754,728,
+700,670,638,605,571,537,502,468,432,395,355,313,266,216,162,106,49,-7,-62,-114,-162,
+-205,-243,-276,-305,-331,-355,-378,-401,-425,-451,-479,-509,-540,-571,-603,-635,-666,-696,-724,-752,-778,
+-804,-829,-855,-881,-909,-938,-969,-1002,-1036,-1070,-1105,-1139,-1172,-1202,-1230,-1257,-1281,-1305,-1329,-1355,-1383,
+-1414,-1448,-1484,-1520,-1556,-1590,-1620,-1646,-1667,-1683,-1697,-1710,-1722,-1737,-1755,-1776,-1800,-1829,-1860,-1894,-1931,
+-1972,-2016,-2064,-2116,-2172,-2230,-2287,-2342,-2392,-2432,-2463,-2482,-2491,-2492,-2489,-2484,-2482,-2486,-2498,-2519,-2547,
+-2581,-2618,-2655,-2692,-2726,-2758,-2789,-2818,-2849,-2880,-2913,-2945,-2976,-3004,-3026,-3042,-3052,-3058,-3060,-3062,-3067,
+-3077,-3092,-3113,-3139,-3167,-3195,-3220,-3240,-3255,-3265,-3271,-3275,-3278,-3283,-3290,-3300,-3312,-3324,-3337,-3349,-3360,
+-3372,-3384,-3400,-3421,-3447,-3479,-3516,-3556,-3598,-3639,-3677,-3710,-3738,-3760,-3777,-3790,-3801,-3810,-3818,-3826,-3834,
+-3844,-3857,-3873,-3893,-3920,-3954,-3994,-4041,-4094,-4149,-4205,-4258,-4305,-4346,-4378,-4403,-4420,-4431,-4438,-4443,-4446,
+-4448,-4451,-4453,-4455,-4457,-4460,-4465,-4473,-4486,-4504,-4527,-4556,-4590,-4625,-4661,-4696,-4729,-4760,-4789,-4817,-4848,
+-4881,-4920,-4963,-5009,-5058,-5104,-5145,-5178,-5200,-5210,-5208,-5196,-5177,-5156,-5136,-5122,-5116,-5120,-5135,-5160,-5193,
+-5232,-5275,-5320,-5364,-5407,-5448,-5486,-5521,-5553,-5581,-5606,-5628,-5646,-5661,-5674,-5687,-5699,-5712,-5727,-5743,-5759,
+-5774,-5786,-5794,-5796,-5792,-5782,-5768,-5752,-5737,-5725,-5716,-5711,-5708,-5704,-5696,-5680,-5654,-5617,-5571,-5519,-5466,
+-5419,-5385,-5367,-5371,-5396,-5439,-5498,-5566,-5636,-5703,-5764,-5814,-5856,-5889,-5918,-5944,-5969,-5993,-6015,-6033,-6044,
+-6042,-6028,-5999,-5957,-5906,-5850,-5795,-5746,-5708,-5683,-5672,-5673,-5685,-5704,-5726,-5748,-5768,-5785,-5799,-5812,-5823,
+-5833,-5844,-5855,-5866,-5875,-5883,-5888,-5891,-5891,-5891,-5890,-5890,-5891,-5893,-5896,-5899,-5903,-5905,-5908,-5910,-5912,
+-5916,-5922,-5930,-5942,-5956,-5972,-5988,-6004,-6018,-6029,-6039,-6046,-6052,-6057,-6062,-6068,-6075,-6083,-6090,-6096,-6102,
+-6106,-6110,-6114,-6121,-6130,-6144,-6163,-6188,-6216,-6247,-6279,-6310,-6337,-6361,-6379,-6392,-6401,-6407,-6412,-6417,-6423,
+-6431,-6439,-6448,-6456,-6462,-6465,-6465,-6460,-6453,-6442,-6431,-6419,-6410,-6403,-6399,-6400,-6405,-6414,-6425,-6438,-6452,
+-6465,-6476,-6484,-6489,-6490,-6486,-6478,-6466,-6452,-6434,-6416,-6398,-6380,-6363,-6347,-6334,-6322,-6313,-6304,-6298,-6292,
+-6287,-6283,-6280,-6277,-6275,-6272,-6270,-6267,-6264,-6260,-6254,-6247,-6238,-6229,-6218,-6207,-6197,-6186,-6176,-6167,-6159,
+-6151,-6145,-6139,-6133,-6128,-6123,-6118,-6113,-6108,-6104,-6099,-6095,-6091,-6087,-6083,-6079,-6074,-6068,-6061,-6053,-6044,
+-6034,-6022,-6009,-5995,-5979,-5964,-5947,-5931,-5914,-5898,-5883,-5868,-5853,-5840,-5827,-5814,-5802,-5791,-5780,-5769,-5758,
+-5748,-5739,-5729,-5720,-5711,-5701,-5692,-5681,-5670,-5658,-5644,-5629,-5613,-5597,-5579,-5562,-5545,-5529,-5513,-5498,-5484,
+-5470,-5456,-5442,-5427,-5411,-5394,-5377,-5359,-5341,-5323,-5305,-5287,-5269,-5251,-5233,-5215,-5197,-5178,-5160,-5142,-5124,
+-5106,-5088,-5070,-5051,-5031,-5011,-4989,-4967,-4944,-4922,-4900,-4879,-4859,-4840,-4822,-4803,-4785,-4764,-4742,-4718,-4693,
+-4666,-4638,-4611,-4585,-4560,-4538,-4518,-4501,-4485,-4470,-4455,-4440,-4425,-4409,-4392,-4374,-4356,-4336,-4317,-4296,-4275,
+-4254,-4233,-4213,-4193,-4176,-4160,-4147,-4136,-4126,-4117,-4108,-4098,-4087,-4075,-4061,-4046,-4031,-4016,-4002,-3990,-3978,
+-3968,-3957,-3947,-3935,-3921,-3904,-3886,-3866,-3845,-3824,-3804,-3787,-3772,-3759,-3749,-3742,-3735,-3729,-3722,-3714,-3705,
+-3693,-3680,-3665,-3650,-3634,-3619,-3605,-3593,-3582,-3572,-3564,-3556,-3548,-3539,-3529,-3517,-3504,-3491,-3478,-3465,-3453,
+-3442,-3431,-3421,-3410,-3398,-3385,-3370,-3354,-3337,-3321,-3307,-3296,-3288,-3284,-3282,-3281,-3279,-3274,-3265,-3250,-3230,
+-3204,-3176,-3146,-3117,-3091,-3069,-3052,-3039,-3028,-3017,-3005,-2989,-2968,-2940,-2907,-2870,-2830,-2789,-2749,-2712,-2679,
+-2650,-2627,-2607,-2591,-2578,-2566,-2556,-2545,-2535,-2524,-2513,-2502,-2491,-2481,-2472,-2465,-2459,-2456,-2453,-2450,-2446,
+-2438,-2424,-2403,-2373,-2334,-2287,-2234,-2177,-2120,-2067,-2021,-1984,-1958,-1944,-1940,-1944,-1953,-1964,-1974,-1979,-1978,
+-1969,-1953,-1929,-1898,-1862,-1823,-1780,-1737,-1694,-1651,-1609,-1568,-1528,-1490,-1453,-1417,-1384,-1352,-1323,-1298,-1277,
+-1260,-1247,-1239,-1234,-1232,-1230,-1229,-1227,-1222,-1217,-1209,-1201,-1192,-1184,-1176,-1169,-1162,-1152,-1140,-1125,-1104,
+-1080,-1052,-1022,-992,-965,-940,-920,-903,-889,-874,-858,-837,-810,-778,-741,-701,-661,-623,-590,-562,-538,
+-519,-502,-485,-465,-440,-412,-380,-347,-314,-284,-257,-234,-213,-193,-170,-141,-104,-59,-6,51,112,
+171,226,275,317,354,389,426,469,521,583,655,735,818,900,975,1041,1094,1134,1163,1183,1195,
+1203,1208,1210,1206,1194,1172,1137,1088,1026,954,875,796,721,656,604,565,539,523,513,506,497,
+483,464,440,412,382,353,326,303,281,262,243,221,197,168,136,101,64,27,-6,-37,-64,
+-86,-105,-120,-133,-145,-155,-163,-168,-171,-171,-168,-161,-152,-141,-131,-120,-111,-103,-97,-91,-84,
+-78,-70,-60,-50,-40,-31,-22,-16,-11,-8,-6,-4,-2,1,6,13,21,30,38,45,51,
+55,58,60,62,65,69,74,80,87,94,101,106,110,113,115,117,118,120,122,126,129,
+134,138,142,145,148,150,152,153,154,155,155,155,155,153,151,148,144,139,135,130,126,
+123,122,120,120,120,120,120,119,118,117,115,113,111,109,108,106,105,105,105,106,108,
+111,115,119,125,131,137,143,148,153,157,161,164,167,169,171,173,174,175,174,173,171,
+168,164,161,159,158,159,162,167,173,181,188,196,203,209,215,219,223,226,229,233,238,
+243,249,256,264,273,284,295,309,324,343,364,388,416,447,481,517,556,595,636,678,719,
+760,801,841,879,915,948,977,1003,1024,1041,1055,1066,1075,1083,1091,1098,1106,1113,1119,1123,1123,
+1120,1114,1104,1092,1081,1070,1063,1060,1060,1064,1069,1074,1076,1073,1067,1056,1043,1032,1026,1029,1044,
+1072,1112,1163,1221,1281,1337,1385,1422,1445,1396,1401,1395,1382,1366,1350,1337,1329,1328,1333,1342,1353,
+1365,1376,1386,1394,1400,1407,1413,1420,1428,1435,1441,1443,1440,1431,1416,1396,1372,1346,1320,1296,1275,
+1258,1244,1233,1223,1214,1204,1192,1179,1166,1153,1142,1134,1131,1132,1137,1146,1157,1169,1182,1194,1206,
+1219,1232,1248,1266,1288,1313,1342,1372,1404,1436,1466,1493,1516,1536,1551,1562,1570,1574,1576,1576,1574,
+1573,1573,1576,1584,1599,1623,1657,1703,1759,1824,1897,1973,2049,2121,2187,2244,2291,2328,2356,2376,2389,
+2399,2405,2408,2408,2403,2391,2372,2343,2305,2258,2204,2145,2084,2026,1975,1932,1900,1880,1873,1878,1893,
+1915,1943,1974,2005,2035,2061,2083,2100,2112,2118,2119,2115,2108,2099,2088,2077,2066,2057,2050,2046,2045,
+2047,2053,2063,2075,2089,2105,2120,2134,2146,2155,2159,2158,2153,2144,2133,2119,2105,2092,2080,2071,2063,
+2057,2052,2050,2050,2054,2061,2072,2089,2112,2141,2173,2208,2242,2275,2302,2323,2337,2345,2348,2348,2348,
+2350,2358,2371,2390,2413,2440,2468,2495,2518,2537,2552,2563,2571,2577,2584,2591,2599,2608,2617,2625,2629,
+2630,2625,2615,2601,2583,2563,2542,2522,2503,2488,2474,2464,2455,2449,2445,2441,2439,2437,2435,2433,2431,
+2427,2421,2412,2401,2387,2370,2354,2338,2325,2317,2314,2318,2328,2342,2359,2375,2388,2395,2393,2382,2362,
+2335,2304,2273,2247,2230,2225,2235,2260,2300,2350,2407,2467,2523,2571,2607,2629,2638,2632,2615,2590,2558,
+2524,2489,2454,2418,2382,2343,2299,2248,2190,2124,2051,1973,1892,1813,1739,1673,1618,1577,1551,1538,1539,
+1550,1570,1594,1620,1645,1668,1685,1698,1705,1706,1704,1698,1690,1680,1670,1658,1646,1633,1620,1606,1592,
+1578,1565,1552,1542,1535,1531,1531,1535,1542,1552,1564,1577,1588,1596,1600,1599,1593,1581,1565,1544,1521,
+1495,1470,1444,1420,1398,1377,1357,1339,1322,1306,1290,1275,1260,1244,1228,1210,1191,1168,1143,1114,1083,
+1049,1013,977,942,908,876,847,819,794,769,745,719,693,666,637,606,576,545,514,483,451,
+418,382,344,301,254,204,149,92,35,-22,-77,-129,-176,-218,-254,-286,-314,-339,-362,-384,-406,
+-428,-451,-475,-500,-527,-554,-583,-614,-645,-677,-710,-743,-776,-808,-838,-868,-897,-925,-952,-980,-1010,
+-1040,-1072,-1106,-1141,-1175,-1209,-1241,-1272,-1300,-1326,-1352,-1378,-1406,-1436,-1469,-1505,-1542,-1581,-1618,-1653,-1684,
+-1711,-1733,-1752,-1768,-1784,-1801,-1821,-1845,-1873,-1907,-1944,-1986,-2031,-2078,-2128,-2179,-2230,-2282,-2332,-2380,-2424,
+-2462,-2494,-2517,-2533,-2542,-2546,-2547,-2548,-2550,-2557,-2570,-2589,-2614,-2643,-2675,-2708,-2742,-2774,-2805,-2836,-2865,
+-2895,-2924,-2953,-2982,-3008,-3030,-3048,-3062,-3071,-3076,-3080,-3085,-3091,-3102,-3118,-3138,-3163,-3189,-3215,-3239,-3259,
+-3275,-3287,-3296,-3303,-3310,-3317,-3326,-3338,-3351,-3365,-3379,-3392,-3404,-3415,-3427,-3439,-3454,-3472,-3496,-3524,-3556,
+-3592,-3630,-3669,-3705,-3739,-3768,-3793,-3811,-3825,-3833,-3838,-3841,-3844,-3849,-3857,-3872,-3893,-3923,-3960,-4004,-4054,
+-4106,-4158,-4208,-4253,-4292,-4325,-4352,-4375,-4395,-4415,-4435,-4456,-4477,-4499,-4520,-4538,-4554,-4566,-4576,-4585,-4594,
+-4606,-4622,-4641,-4665,-4691,-4718,-4745,-4769,-4791,-4810,-4827,-4846,-4868,-4896,-4930,-4971,-5016,-5064,-5110,-5150,-5181,
+-5200,-5206,-5201,-5187,-5169,-5150,-5135,-5127,-5129,-5142,-5165,-5195,-5232,-5271,-5312,-5352,-5392,-5429,-5465,-5500,-5533,
+-5564,-5591,-5615,-5634,-5649,-5659,-5665,-5670,-5676,-5685,-5697,-5713,-5732,-5752,-5770,-5782,-5788,-5786,-5775,-5759,-5739,
+-5720,-5704,-5693,-5689,-5689,-5691,-5690,-5682,-5663,-5631,-5587,-5533,-5476,-5423,-5380,-5354,-5349,-5367,-5407,-5465,-5534,
+-5607,-5679,-5743,-5799,-5844,-5880,-5910,-5936,-5961,-5986,-6010,-6030,-6044,-6048,-6040,-6018,-5984,-5940,-5890,-5840,-5795,
+-5758,-5732,-5718,-5715,-5720,-5729,-5739,-5748,-5754,-5756,-5756,-5755,-5755,-5758,-5765,-5777,-5793,-5811,-5831,-5850,-5867,
+-5882,-5893,-5901,-5907,-5912,-5914,-5916,-5916,-5916,-5914,-5912,-5910,-5909,-5910,-5914,-5922,-5934,-5949,-5968,-5989,-6011,
+-6031,-6048,-6062,-6072,-6079,-6083,-6084,-6084,-6083,-6082,-6080,-6079,-6077,-6076,-6075,-6076,-6079,-6087,-6099,-6117,-6141,
+-6171,-6204,-6240,-6276,-6310,-6340,-6366,-6387,-6403,-6414,-6423,-6431,-6439,-6447,-6456,-6465,-6474,-6481,-6485,-6486,-6482,
+-6474,-6464,-6452,-6441,-6431,-6425,-6424,-6429,-6438,-6452,-6469,-6486,-6501,-6514,-6521,-6523,-6519,-6510,-6496,-6479,-6461,
+-6442,-6425,-6410,-6398,-6388,-6380,-6375,-6369,-6364,-6358,-6352,-6344,-6336,-6328,-6320,-6313,-6308,-6303,-6300,-6297,-6294,
+-6291,-6286,-6280,-6272,-6262,-6251,-6239,-6227,-6215,-6204,-6195,-6187,-6180,-6175,-6171,-6167,-6163,-6158,-6153,-6147,-6141,
+-6134,-6127,-6120,-6113,-6106,-6101,-6096,-6091,-6086,-6082,-6077,-6071,-6064,-6056,-6046,-6035,-6022,-6008,-5994,-5978,-5962,
+-5947,-5931,-5916,-5902,-5888,-5874,-5861,-5848,-5836,-5824,-5812,-5800,-5789,-5778,-5769,-5760,-5752,-5744,-5737,-5729,-5720,
+-5710,-5698,-5685,-5670,-5653,-5636,-5618,-5600,-5583,-5567,-5552,-5537,-5523,-5509,-5495,-5479,-5463,-5445,-5427,-5408,-5388,
+-5369,-5350,-5331,-5313,-5296,-5278,-5260,-5242,-5223,-5204,-5184,-5164,-5145,-5127,-5109,-5092,-5076,-5059,-5042,-5024,-5005,
+-4984,-4963,-4941,-4918,-4896,-4874,-4853,-4833,-4813,-4793,-4773,-4752,-4729,-4706,-4682,-4656,-4631,-4606,-4581,-4558,-4536,
+-4515,-4495,-4477,-4459,-4442,-4426,-4409,-4392,-4375,-4358,-4340,-4321,-4302,-4283,-4265,-4246,-4229,-4214,-4200,-4187,-4177,
+-4167,-4158,-4149,-4138,-4127,-4114,-4099,-4083,-4067,-4051,-4035,-4021,-4008,-3997,-3986,-3977,-3967,-3956,-3944,-3931,-3916,
+-3900,-3884,-3868,-3852,-3838,-3826,-3815,-3806,-3798,-3790,-3782,-3773,-3763,-3752,-3738,-3724,-3709,-3694,-3680,-3667,-3654,
+-3643,-3632,-3620,-3608,-3595,-3580,-3564,-3547,-3529,-3512,-3497,-3484,-3472,-3463,-3455,-3446,-3436,-3424,-3408,-3389,-3367,
+-3344,-3321,-3301,-3284,-3271,-3263,-3258,-3255,-3250,-3242,-3227,-3204,-3173,-3136,-3093,-3048,-3005,-2967,-2935,-2912,-2896,
+-2887,-2881,-2876,-2867,-2853,-2831,-2802,-2766,-2725,-2682,-2639,-2600,-2566,-2538,-2518,-2503,-2493,-2485,-2478,-2471,-2461,
+-2448,-2432,-2413,-2393,-2372,-2351,-2332,-2315,-2301,-2289,-2280,-2272,-2266,-2258,-2249,-2236,-2219,-2198,-2171,-2140,-2105,
+-2067,-2028,-1990,-1953,-1920,-1892,-1868,-1849,-1835,-1824,-1815,-1806,-1796,-1784,-1768,-1747,-1722,-1692,-1659,-1624,-1589,
+-1554,-1521,-1491,-1465,-1443,-1424,-1408,-1394,-1382,-1371,-1361,-1353,-1346,-1340,-1337,-1335,-1334,-1334,-1333,-1330,-1325,
+-1317,-1306,-1294,-1279,-1264,-1249,-1235,-1221,-1207,-1193,-1176,-1157,-1135,-1110,-1083,-1056,-1030,-1007,-987,-971,-957,
+-945,-932,-915,-894,-867,-835,-799,-761,-723,-689,-659,-634,-613,-594,-575,-553,-526,-493,-455,-413,-371,
+-331,-295,-265,-242,-222,-204,-183,-156,-120,-73,-17,45,111,176,234,283,322,352,376,400,427,
+463,511,571,642,721,802,881,952,1012,1059,1093,1116,1130,1138,1142,1143,1140,1132,1117,1091,1054,
+1005,945,877,806,735,669,612,564,527,500,479,462,446,428,408,384,358,331,305,281,258,
+239,220,202,182,159,133,104,73,41,9,-21,-48,-71,-90,-106,-120,-132,-142,-152,-160,-167,
+-171,-173,-172,-168,-162,-155,-146,-139,-132,-126,-122,-118,-114,-109,-103,-95,-86,-76,-67,-58,-50,
+-45,-42,-40,-40,-39,-38,-35,-31,-25,-17,-9,-1,5,11,17,21,24,27,31,35,40,
+46,51,57,62,66,70,72,73,74,75,76,78,81,85,89,94,98,103,107,110,112,
+113,114,114,114,114,113,112,112,112,112,112,112,113,113,112,111,109,107,103,100,96,
+92,89,86,84,82,80,79,79,79,79,80,82,84,88,93,99,106,113,120,126,131,
+135,138,140,142,144,145,147,149,151,152,153,154,153,151,149,147,145,144,145,147,150,
+154,159,163,166,168,169,168,166,164,163,164,166,171,179,189,203,218,236,255,277,301,
+326,355,386,420,456,495,536,578,622,666,710,754,797,839,881,920,958,992,1022,1048,1068,
+1083,1092,1097,1098,1098,1097,1096,1097,1100,1104,1107,1110,1110,1106,1098,1087,1072,1057,1043,1031,1024,
+1022,1025,1031,1039,1046,1050,1052,1050,1045,1041,1040,1045,1060,1084,1119,1163,1212,1263,1310,1350,1379,
+1396,1344,1340,1327,1308,1285,1263,1245,1232,1227,1230,1239,1254,1271,1290,1308,1326,1341,1355,1368,1380,
+1390,1399,1406,1409,1409,1404,1395,1381,1363,1343,1321,1301,1281,1264,1249,1236,1225,1214,1204,1193,1182,
+1170,1159,1147,1137,1128,1121,1116,1114,1115,1118,1125,1135,1149,1168,1190,1216,1246,1276,1308,1338,1366,
+1391,1413,1433,1450,1466,1481,1498,1515,1532,1549,1565,1577,1586,1592,1594,1595,1596,1602,1616,1638,1673,
+1718,1773,1836,1902,1968,2028,2081,2124,2156,2179,2194,2204,2211,2217,2225,2233,2240,2245,2245,2239,2225,
+2202,2171,2135,2096,2058,2023,1995,1975,1964,1962,1968,1980,1997,2018,2039,2062,2083,2104,2123,2140,2154,
+2164,2169,2168,2163,2153,2139,2122,2106,2091,2081,2076,2078,2087,2102,2122,2145,2169,2191,2211,2226,2235,
+2240,2239,2234,2226,2217,2208,2199,2191,2185,2181,2177,2174,2170,2166,2162,2158,2155,2154,2155,2161,2170,
+2184,2201,2220,2239,2257,2271,2280,2284,2284,2279,2272,2266,2263,2265,2273,2288,2310,2336,2365,2394,2421,
+2445,2463,2477,2486,2493,2498,2504,2511,2521,2533,2546,2559,2570,2579,2583,2581,2574,2561,2544,2522,2499,
+2473,2448,2424,2403,2384,2369,2357,2350,2345,2344,2345,2347,2349,2349,2346,2340,2330,2317,2302,2285,2270,
+2257,2248,2243,2244,2250,2258,2267,2274,2277,2274,2263,2245,2221,2193,2165,2140,2121,2113,2116,2133,2162,
+2202,2251,2304,2358,2408,2453,2488,2513,2527,2531,2524,2509,2487,2459,2426,2389,2347,2300,2248,2190,2127,
+2059,1986,1911,1836,1763,1695,1634,1583,1543,1516,1500,1495,1500,1511,1527,1544,1561,1575,1585,1592,1595,
+1595,1594,1592,1591,1591,1593,1595,1598,1600,1600,1598,1594,1586,1577,1566,1554,1544,1536,1531,1530,1532,
+1538,1546,1555,1564,1571,1576,1578,1576,1569,1559,1545,1528,1509,1488,1466,1443,1420,1397,1375,1352,1331,
+1310,1291,1272,1254,1237,1220,1203,1185,1166,1144,1120,1094,1065,1033,1001,967,932,899,866,834,803,
+774,745,717,690,663,637,611,586,561,537,514,489,463,435,404,369,330,287,241,191,140,
+89,37,-12,-59,-105,-148,-188,-226,-263,-298,-331,-364,-394,-424,-451,-478,-504,-530,-557,-586,-616,
+-650,-686,-725,-765,-806,-846,-884,-920,-952,-982,-1010,-1036,-1063,-1092,-1122,-1155,-1191,-1228,-1265,-1302,-1338,
+-1371,-1402,-1432,-1460,-1489,-1519,-1551,-1586,-1623,-1662,-1701,-1739,-1775,-1806,-1834,-1859,-1881,-1902,-1923,-1946,-1973,
+-2004,-2040,-2079,-2122,-2167,-2214,-2260,-2306,-2350,-2393,-2433,-2471,-2506,-2538,-2565,-2589,-2609,-2625,-2638,-2650,-2661,
+-2672,-2686,-2702,-2721,-2743,-2768,-2795,-2822,-2850,-2878,-2905,-2931,-2957,-2981,-3004,-3026,-3046,-3063,-3078,-3089,-3096,
+-3101,-3105,-3109,-3114,-3121,-3133,-3150,-3170,-3194,-3220,-3245,-3270,-3292,-3311,-3326,-3338,-3349,-3359,-3369,-3381,-3394,
+-3408,-3424,-3439,-3454,-3468,-3481,-3492,-3502,-3513,-3525,-3540,-3558,-3580,-3606,-3636,-3668,-3701,-3734,-3766,-3794,-3817,
+-3835,-3847,-3854,-3858,-3861,-3864,-3871,-3883,-3902,-3928,-3962,-4001,-4045,-4090,-4134,-4174,-4210,-4242,-4269,-4293,-4317,
+-4342,-4370,-4402,-4438,-4477,-4517,-4557,-4594,-4627,-4656,-4682,-4704,-4724,-4744,-4765,-4787,-4809,-4831,-4851,-4868,-4881,
+-4891,-4897,-4903,-4911,-4923,-4941,-4967,-5000,-5037,-5077,-5115,-5147,-5171,-5185,-5188,-5183,-5173,-5161,-5151,-5148,-5154,
+-5169,-5194,-5226,-5262,-5301,-5340,-5376,-5410,-5441,-5470,-5499,-5526,-5554,-5580,-5604,-5624,-5640,-5650,-5656,-5658,-5659,
+-5662,-5668,-5680,-5696,-5716,-5737,-5757,-5770,-5776,-5772,-5759,-5739,-5716,-5693,-5676,-5666,-5665,-5672,-5683,-5693,-5696,
+-5689,-5668,-5632,-5583,-5528,-5473,-5425,-5392,-5379,-5389,-5421,-5473,-5537,-5607,-5676,-5740,-5793,-5834,-5864,-5886,-5902,
+-5916,-5928,-5941,-5952,-5960,-5963,-5959,-5946,-5926,-5899,-5869,-5839,-5813,-5793,-5781,-5776,-5778,-5782,-5786,-5787,-5783,
+-5772,-5755,-5735,-5715,-5697,-5684,-5679,-5682,-5694,-5713,-5737,-5764,-5792,-5819,-5844,-5865,-5884,-5899,-5911,-5921,-5928,
+-5932,-5934,-5934,-5932,-5930,-5929,-5930,-5934,-5943,-5956,-5974,-5995,-6018,-6041,-6063,-6082,-6097,-6108,-6115,-6118,-6118,
+-6116,-6112,-6108,-6103,-6097,-6091,-6086,-6082,-6080,-6081,-6087,-6098,-6116,-6140,-6169,-6203,-6240,-6278,-6315,-6349,-6378,
+-6404,-6424,-6441,-6454,-6465,-6475,-6483,-6491,-6497,-6501,-6502,-6499,-6494,-6485,-6475,-6464,-6454,-6448,-6447,-6451,-6461,
+-6476,-6494,-6514,-6532,-6546,-6553,-6553,-6545,-6530,-6509,-6484,-6458,-6434,-6414,-6399,-6391,-6388,-6389,-6394,-6400,-6404,
+-6406,-6405,-6400,-6391,-6380,-6367,-6354,-6343,-6334,-6327,-6322,-6319,-6317,-6314,-6310,-6304,-6296,-6287,-6275,-6263,-6252,
+-6241,-6232,-6224,-6218,-6214,-6210,-6207,-6203,-6198,-6192,-6184,-6176,-6166,-6157,-6148,-6139,-6132,-6126,-6121,-6118,-6114,
+-6111,-6108,-6104,-6099,-6092,-6083,-6073,-6062,-6049,-6035,-6019,-6004,-5988,-5972,-5956,-5941,-5927,-5914,-5901,-5890,-5879,
+-5869,-5859,-5849,-5840,-5830,-5821,-5812,-5802,-5793,-5784,-5774,-5764,-5754,-5743,-5731,-5719,-5705,-5691,-5676,-5661,-5646,
+-5631,-5615,-5600,-5584,-5568,-5550,-5532,-5513,-5493,-5472,-5451,-5430,-5409,-5390,-5371,-5353,-5336,-5319,-5302,-5284,-5266,
+-5246,-5225,-5205,-5184,-5165,-5146,-5130,-5115,-5101,-5087,-5073,-5058,-5042,-5023,-5003,-4980,-4956,-4932,-4908,-4885,-4863,
+-4843,-4824,-4806,-4789,-4772,-4754,-4736,-4716,-4695,-4673,-4650,-4627,-4602,-4578,-4554,-4530,-4506,-4483,-4461,-4440,-4419,
+-4400,-4382,-4365,-4349,-4333,-4319,-4305,-4292,-4279,-4266,-4254,-4241,-4228,-4215,-4202,-4188,-4173,-4158,-4143,-4127,-4112,
+-4097,-4082,-4069,-4056,-4045,-4036,-4027,-4018,-4010,-4001,-3991,-3980,-3967,-3954,-3940,-3925,-3910,-3896,-3883,-3871,-3860,
+-3850,-3840,-3830,-3820,-3808,-3795,-3781,-3765,-3749,-3733,-3716,-3700,-3684,-3668,-3652,-3635,-3617,-3598,-3578,-3558,-3537,
+-3517,-3499,-3484,-3472,-3462,-3455,-3449,-3442,-3432,-3419,-3401,-3378,-3352,-3323,-3295,-3268,-3245,-3227,-3215,-3206,-3199,
+-3190,-3177,-3156,-3126,-3085,-3036,-2981,-2922,-2864,-2812,-2769,-2736,-2715,-2704,-2700,-2700,-2700,-2695,-2685,-2666,-2640,
+-2606,-2569,-2530,-2493,-2460,-2433,-2413,-2399,-2390,-2384,-2380,-2375,-2368,-2359,-2346,-2330,-2312,-2292,-2272,-2253,-2235,
+-2218,-2203,-2191,-2180,-2171,-2164,-2157,-2151,-2144,-2136,-2125,-2111,-2093,-2070,-2041,-2007,-1970,-1929,-1888,-1847,-1809,
+-1775,-1746,-1723,-1704,-1688,-1675,-1661,-1645,-1627,-1605,-1579,-1551,-1522,-1495,-1470,-1449,-1433,-1423,-1418,-1417,-1418,
+-1421,-1424,-1426,-1426,-1426,-1424,-1422,-1419,-1416,-1412,-1406,-1399,-1389,-1376,-1360,-1342,-1322,-1301,-1280,-1259,-1239,
+-1220,-1201,-1182,-1163,-1143,-1123,-1104,-1086,-1070,-1057,-1046,-1038,-1030,-1021,-1009,-992,-969,-940,-906,-869,-832,
+-795,-763,-735,-712,-691,-672,-650,-624,-590,-549,-501,-448,-394,-341,-293,-252,-217,-189,-162,-135,-103,
+-64,-16,39,100,163,223,275,317,348,369,382,393,408,430,464,512,572,643,718,794,864,
+926,976,1014,1040,1058,1069,1077,1081,1083,1082,1074,1059,1034,998,951,894,830,764,697,635,578,
+528,486,450,418,389,360,332,304,277,251,228,209,193,180,169,159,147,132,114,92,66,
+38,10,-17,-43,-65,-84,-100,-113,-124,-134,-142,-150,-156,-161,-163,-164,-161,-157,-151,-144,-138,
+-132,-128,-126,-124,-123,-122,-119,-115,-110,-103,-95,-86,-79,-72,-67,-64,-62,-61,-60,-58,-56,
+-52,-46,-40,-33,-25,-18,-12,-7,-2,1,5,8,12,16,20,24,28,32,35,37,38,
+39,40,41,43,45,48,52,56,61,66,70,74,76,77,77,77,76,75,74,74,75,
+76,79,81,84,86,88,88,86,83,78,73,67,62,57,53,50,49,48,49,49,51,
+52,54,56,59,63,68,74,81,88,95,100,105,108,109,108,107,105,104,103,103,105,
+107,110,113,117,119,120,121,121,120,120,120,121,122,123,123,124,123,121,119,116,113,
+111,112,115,122,132,147,164,185,209,236,264,295,327,362,399,439,480,524,568,613,658,
+702,744,786,826,866,904,942,978,1013,1044,1072,1093,1109,1117,1119,1114,1106,1094,1083,1074,1068,
+1068,1071,1079,1088,1096,1103,1106,1104,1097,1087,1075,1064,1054,1048,1047,1050,1057,1065,1073,1080,1086,
+1089,1091,1095,1102,1114,1133,1159,1190,1225,1261,1294,1320,1338,1344,1280,1272,1257,1237,1215,1194,1177,
+1167,1164,1170,1184,1205,1231,1260,1289,1317,1342,1363,1380,1394,1403,1409,1412,1412,1409,1403,1396,1386,
+1375,1363,1350,1338,1325,1313,1301,1290,1280,1269,1258,1246,1234,1221,1208,1194,1180,1167,1154,1144,1136,
+1132,1133,1139,1152,1171,1196,1226,1258,1291,1322,1350,1372,1388,1399,1405,1410,1414,1421,1433,1451,1475,
+1502,1532,1561,1587,1607,1620,1626,1627,1627,1628,1635,1651,1677,1714,1760,1812,1866,1918,1963,1998,2022,
+2036,2041,2040,2038,2037,2039,2048,2061,2078,2095,2112,2124,2130,2129,2123,2113,2102,2091,2084,2082,2084,
+2092,2103,2116,2128,2139,2148,2154,2159,2162,2166,2171,2177,2184,2191,2196,2197,2194,2186,2174,2160,2145,
+2133,2127,2128,2140,2161,2191,2228,2268,2307,2343,2371,2390,2399,2399,2391,2377,2360,2343,2328,2316,2308,
+2304,2303,2304,2305,2305,2305,2302,2299,2295,2291,2290,2290,2293,2298,2303,2308,2310,2307,2300,2286,2267,
+2245,2221,2198,2180,2168,2166,2173,2190,2216,2247,2281,2315,2346,2372,2391,2404,2413,2418,2421,2426,2435,
+2447,2463,2482,2503,2524,2541,2553,2557,2553,2539,2517,2487,2452,2413,2373,2335,2301,2272,2250,2235,2226,
+2224,2227,2232,2239,2245,2248,2248,2244,2236,2224,2210,2196,2182,2170,2162,2157,2155,2155,2156,2155,2151,
+2142,2128,2109,2086,2060,2035,2013,1996,1988,1989,2002,2024,2056,2096,2141,2188,2236,2282,2324,2361,2390,
+2412,2426,2431,2427,2414,2391,2357,2314,2262,2200,2131,2055,1975,1893,1812,1735,1663,1600,1547,1505,1475,
+1457,1450,1452,1460,1472,1486,1498,1508,1514,1515,1513,1507,1499,1492,1487,1485,1487,1493,1504,1516,1530,
+1543,1555,1562,1566,1566,1562,1556,1549,1542,1536,1532,1531,1532,1535,1540,1544,1548,1551,1551,1549,1545,
+1538,1529,1518,1505,1489,1473,1454,1434,1412,1390,1366,1342,1317,1294,1270,1248,1227,1206,1186,1166,1145,
+1124,1101,1078,1052,1026,998,968,938,907,876,844,811,779,747,715,685,656,628,604,581,560,
+542,524,506,487,466,442,415,384,350,313,273,232,190,148,106,64,22,-20,-64,-110,-157,
+-206,-256,-305,-354,-400,-444,-483,-519,-552,-582,-611,-641,-672,-707,-744,-783,-825,-868,-910,-951,-988,
+-1022,-1052,-1080,-1107,-1133,-1161,-1191,-1224,-1260,-1298,-1338,-1378,-1417,-1453,-1488,-1521,-1552,-1582,-1613,-1646,-1681,
+-1718,-1756,-1796,-1835,-1873,-1908,-1941,-1971,-1999,-2027,-2054,-2083,-2114,-2148,-2185,-2224,-2264,-2305,-2344,-2382,-2417,
+-2450,-2481,-2510,-2538,-2566,-2592,-2619,-2645,-2670,-2695,-2718,-2740,-2762,-2783,-2803,-2824,-2846,-2870,-2894,-2920,-2947,
+-2974,-3001,-3028,-3053,-3076,-3097,-3115,-3129,-3140,-3148,-3153,-3155,-3155,-3154,-3154,-3155,-3160,-3168,-3182,-3199,-3221,
+-3246,-3272,-3298,-3322,-3345,-3363,-3379,-3392,-3402,-3411,-3421,-3432,-3445,-3459,-3476,-3493,-3511,-3528,-3544,-3558,-3570,
+-3580,-3588,-3597,-3607,-3619,-3635,-3654,-3677,-3704,-3733,-3763,-3793,-3819,-3842,-3860,-3874,-3884,-3891,-3897,-3905,-3917,
+-3933,-3955,-3982,-4014,-4048,-4083,-4117,-4148,-4176,-4201,-4224,-4246,-4271,-4300,-4334,-4374,-4421,-4472,-4527,-4582,-4636,
+-4688,-4736,-4780,-4820,-4856,-4890,-4922,-4951,-4977,-4999,-5016,-5027,-5032,-5032,-5029,-5025,-5023,-5024,-5032,-5046,-5066,
+-5090,-5115,-5139,-5158,-5171,-5176,-5174,-5168,-5161,-5156,-5156,-5165,-5182,-5208,-5242,-5280,-5320,-5359,-5395,-5427,-5455,
+-5480,-5504,-5527,-5551,-5575,-5599,-5621,-5641,-5655,-5665,-5670,-5672,-5673,-5675,-5681,-5692,-5707,-5727,-5747,-5765,-5778,
+-5781,-5775,-5760,-5738,-5713,-5689,-5672,-5663,-5665,-5675,-5690,-5706,-5716,-5715,-5699,-5667,-5622,-5567,-5509,-5457,-5417,
+-5396,-5398,-5422,-5466,-5526,-5594,-5663,-5728,-5782,-5825,-5855,-5873,-5883,-5886,-5886,-5884,-5881,-5876,-5870,-5860,-5847,
+-5832,-5814,-5797,-5782,-5772,-5767,-5768,-5773,-5780,-5785,-5786,-5780,-5766,-5742,-5712,-5676,-5640,-5608,-5582,-5567,-5563,
+-5571,-5590,-5617,-5651,-5688,-5726,-5764,-5800,-5833,-5863,-5890,-5914,-5933,-5949,-5960,-5968,-5971,-5972,-5970,-5968,-5968,
+-5970,-5975,-5985,-5999,-6017,-6037,-6057,-6077,-6095,-6110,-6122,-6131,-6137,-6140,-6142,-6141,-6139,-6136,-6131,-6125,-6119,
+-6113,-6108,-6107,-6109,-6117,-6131,-6153,-6180,-6213,-6249,-6288,-6326,-6362,-6395,-6424,-6448,-6468,-6484,-6496,-6506,-6513,
+-6517,-6520,-6519,-6517,-6512,-6506,-6499,-6492,-6488,-6488,-6492,-6502,-6516,-6534,-6553,-6572,-6587,-6595,-6596,-6588,-6571,
+-6546,-6516,-6485,-6455,-6429,-6410,-6400,-6398,-6403,-6414,-6428,-6442,-6453,-6459,-6459,-6453,-6442,-6426,-6409,-6391,-6375,
+-6362,-6353,-6347,-6343,-6341,-6339,-6336,-6331,-6324,-6315,-6304,-6293,-6283,-6274,-6266,-6261,-6257,-6253,-6251,-6247,-6243,
+-6236,-6228,-6219,-6208,-6197,-6187,-6178,-6170,-6164,-6159,-6156,-6153,-6150,-6147,-6142,-6136,-6128,-6119,-6108,-6096,-6083,
+-6069,-6055,-6040,-6025,-6009,-5994,-5979,-5964,-5950,-5938,-5926,-5916,-5908,-5900,-5894,-5887,-5881,-5874,-5866,-5857,-5847,
+-5836,-5825,-5812,-5800,-5787,-5775,-5763,-5751,-5739,-5728,-5716,-5703,-5690,-5676,-5660,-5643,-5624,-5604,-5583,-5561,-5538,
+-5514,-5491,-5469,-5448,-5428,-5409,-5392,-5375,-5358,-5342,-5324,-5306,-5287,-5267,-5246,-5226,-5206,-5188,-5172,-5157,-5144,
+-5132,-5121,-5109,-5096,-5081,-5064,-5044,-5022,-4999,-4975,-4951,-4928,-4906,-4887,-4869,-4852,-4837,-4823,-4808,-4793,-4776,
+-4758,-4738,-4716,-4692,-4667,-4640,-4613,-4584,-4555,-4527,-4500,-4474,-4450,-4429,-4411,-4396,-4383,-4374,-4366,-4359,-4353,
+-4345,-4337,-4326,-4314,-4299,-4281,-4262,-4242,-4221,-4199,-4178,-4157,-4137,-4118,-4101,-4086,-4072,-4059,-4048,-4039,-4030,
+-4022,-4014,-4005,-3995,-3985,-3972,-3959,-3944,-3929,-3913,-3897,-3881,-3866,-3851,-3837,-3822,-3808,-3792,-3775,-3756,-3735,
+-3714,-3691,-3668,-3646,-3623,-3602,-3581,-3561,-3542,-3522,-3504,-3485,-3468,-3452,-3437,-3425,-3415,-3407,-3401,-3395,-3387,
+-3377,-3363,-3344,-3320,-3293,-3263,-3234,-3206,-3182,-3163,-3150,-3140,-3133,-3125,-3113,-3093,-3064,-3025,-2975,-2917,-2854,
+-2791,-2731,-2678,-2636,-2606,-2587,-2578,-2576,-2577,-2579,-2576,-2568,-2553,-2531,-2504,-2474,-2443,-2414,-2388,-2367,-2351,
+-2339,-2331,-2325,-2320,-2315,-2309,-2302,-2292,-2282,-2270,-2257,-2242,-2227,-2211,-2195,-2179,-2164,-2150,-2139,-2130,-2124,
+-2120,-2118,-2116,-2112,-2105,-2093,-2073,-2046,-2011,-1970,-1925,-1878,-1832,-1789,-1752,-1722,-1699,-1682,-1668,-1657,-1645,
+-1630,-1613,-1591,-1567,-1541,-1516,-1493,-1475,-1462,-1455,-1454,-1457,-1463,-1469,-1475,-1479,-1479,-1477,-1473,-1467,-1459,
+-1451,-1443,-1434,-1424,-1413,-1399,-1384,-1366,-1345,-1323,-1299,-1274,-1248,-1223,-1199,-1176,-1154,-1135,-1119,-1106,-1096,
+-1091,-1089,-1089,-1091,-1091,-1089,-1081,-1067,-1045,-1015,-980,-941,-901,-863,-827,-796,-770,-746,-722,-696,-665,
+-627,-581,-527,-468,-406,-345,-287,-235,-189,-148,-111,-75,-37,4,51,102,156,209,258,300,332,
+355,368,376,382,391,408,436,476,529,590,657,724,788,845,892,929,956,975,989,999,1007,
+1013,1016,1014,1005,987,959,920,871,815,753,690,627,568,514,464,418,376,337,299,262,227,
+195,167,144,126,114,107,104,102,99,94,85,71,53,31,7,-16,-39,-59,-77,-90,-101,
+-110,-118,-124,-131,-137,-142,-146,-148,-148,-146,-142,-137,-132,-127,-123,-121,-120,-121,-122,-124,-124,
+-124,-122,-118,-112,-106,-100,-95,-90,-86,-83,-81,-80,-78,-76,-73,-69,-64,-59,-53,-48,-43,
+-38,-35,-31,-29,-26,-23,-20,-17,-14,-11,-8,-5,-2,0,1,2,4,6,9,12,16,
+20,25,29,33,36,38,39,38,37,36,35,34,34,35,37,39,41,42,43,43,41,
+38,35,31,26,23,20,18,18,19,20,22,25,27,29,31,34,37,40,44,49,54,
+59,63,66,67,67,64,60,56,52,48,46,46,48,52,57,64,70,75,80,84,86,
+87,87,86,85,84,82,81,79,76,74,73,72,74,78,85,96,111,130,153,178,207,
+237,270,304,340,379,420,463,508,554,601,648,693,736,776,813,847,879,911,942,974,1006,
+1038,1068,1095,1116,1131,1137,1134,1123,1106,1085,1064,1045,1033,1029,1034,1048,1068,1092,1117,1139,1157,
+1168,1173,1172,1166,1159,1151,1146,1144,1145,1149,1155,1161,1166,1171,1174,1176,1178,1182,1189,1200,1214,
+1230,1247,1263,1275,1281,1280,1206,1201,1193,1183,1171,1161,1154,1152,1158,1171,1191,1219,1253,1289,1327,
+1364,1397,1426,1448,1466,1477,1483,1484,1483,1479,1473,1466,1459,1452,1444,1436,1428,1419,1410,1400,1389,
+1377,1365,1352,1338,1324,1309,1293,1277,1261,1244,1229,1216,1206,1201,1202,1211,1226,1248,1276,1308,1340,
+1371,1397,1416,1427,1430,1428,1421,1415,1412,1415,1427,1448,1477,1513,1551,1589,1621,1646,1662,1670,1671,
+1670,1669,1674,1688,1712,1745,1787,1833,1878,1920,1952,1974,1985,1985,1978,1968,1959,1954,1957,1968,1986,
+2010,2036,2061,2083,2099,2109,2114,2116,2117,2120,2127,2139,2155,2174,2194,2211,2225,2232,2233,2229,2220,
+2210,2201,2194,2191,2192,2197,2203,2209,2212,2211,2207,2200,2192,2187,2187,2196,2215,2245,2285,2333,2384,
+2434,2480,2517,2542,2556,2557,2548,2531,2510,2488,2469,2452,2441,2434,2431,2431,2431,2431,2429,2426,2421,
+2416,2412,2408,2406,2405,2404,2401,2395,2383,2365,2340,2307,2269,2228,2187,2150,2120,2102,2096,2103,2123,
+2152,2189,2228,2266,2299,2326,2344,2356,2361,2363,2364,2368,2376,2391,2412,2438,2467,2495,2518,2535,2541,
+2536,2517,2487,2447,2399,2348,2297,2249,2208,2175,2152,2138,2133,2135,2142,2152,2161,2168,2171,2170,2164,
+2155,2142,2129,2115,2104,2094,2087,2083,2080,2077,2072,2065,2054,2039,2020,1998,1974,1951,1931,1915,1906,
+1904,1910,1925,1947,1974,2007,2043,2081,2120,2159,2197,2232,2265,2293,2316,2331,2337,2332,2315,2285,2242,
+2186,2119,2042,1959,1872,1785,1701,1625,1558,1502,1459,1429,1412,1405,1407,1416,1428,1441,1452,1459,1461,
+1457,1449,1437,1424,1411,1400,1395,1394,1400,1412,1428,1447,1467,1486,1503,1516,1524,1528,1529,1527,1524,
+1521,1519,1519,1521,1524,1527,1531,1533,1535,1534,1531,1527,1520,1512,1503,1492,1480,1467,1452,1435,1416,
+1396,1374,1351,1327,1302,1278,1254,1230,1207,1184,1162,1139,1116,1092,1067,1041,1014,987,960,932,903,
+873,843,811,779,747,714,682,651,622,595,572,552,534,519,504,490,474,455,434,409,380,
+349,316,282,247,212,178,144,110,74,35,-6,-53,-103,-158,-216,-276,-336,-393,-448,-497,-542,
+-582,-619,-652,-684,-716,-749,-784,-821,-859,-899,-938,-976,-1012,-1045,-1076,-1105,-1133,-1161,-1191,-1222,-1255,
+-1292,-1330,-1370,-1410,-1449,-1488,-1524,-1560,-1593,-1627,-1660,-1694,-1730,-1767,-1806,-1845,-1884,-1923,-1961,-1997,-2033,
+-2068,-2103,-2138,-2175,-2214,-2253,-2294,-2333,-2372,-2407,-2440,-2468,-2493,-2514,-2533,-2552,-2570,-2590,-2611,-2635,-2660,
+-2688,-2716,-2744,-2772,-2799,-2824,-2849,-2874,-2899,-2925,-2952,-2981,-3011,-3042,-3073,-3103,-3131,-3155,-3176,-3192,-3202,
+-3208,-3209,-3207,-3203,-3198,-3194,-3192,-3193,-3199,-3210,-3226,-3246,-3269,-3294,-3320,-3345,-3368,-3388,-3404,-3417,-3427,
+-3436,-3444,-3453,-3464,-3478,-3495,-3514,-3535,-3557,-3578,-3597,-3612,-3624,-3632,-3638,-3641,-3644,-3649,-3657,-3670,-3688,
+-3710,-3738,-3768,-3799,-3830,-3858,-3881,-3900,-3915,-3926,-3935,-3945,-3956,-3970,-3989,-4012,-4038,-4067,-4096,-4125,-4151,
+-4175,-4198,-4219,-4241,-4267,-4297,-4335,-4379,-4431,-4488,-4551,-4616,-4682,-4747,-4808,-4866,-4919,-4967,-5011,-5048,-5080,
+-5106,-5125,-5137,-5141,-5140,-5133,-5123,-5112,-5103,-5098,-5098,-5104,-5114,-5127,-5141,-5153,-5162,-5166,-5166,-5162,-5156,
+-5152,-5151,-5158,-5172,-5194,-5224,-5260,-5298,-5337,-5373,-5406,-5436,-5462,-5486,-5509,-5533,-5558,-5583,-5608,-5632,-5652,
+-5667,-5677,-5682,-5684,-5684,-5685,-5690,-5699,-5713,-5731,-5749,-5765,-5776,-5779,-5773,-5758,-5737,-5713,-5690,-5673,-5665,
+-5665,-5674,-5688,-5702,-5710,-5708,-5691,-5659,-5613,-5556,-5496,-5438,-5392,-5363,-5355,-5370,-5406,-5459,-5523,-5592,-5660,
+-5720,-5770,-5808,-5832,-5846,-5849,-5845,-5836,-5823,-5807,-5788,-5768,-5747,-5726,-5707,-5692,-5681,-5676,-5678,-5683,-5692,
+-5700,-5705,-5702,-5691,-5669,-5637,-5598,-5555,-5512,-5474,-5445,-5428,-5425,-5437,-5461,-5497,-5540,-5588,-5638,-5688,-5736,
+-5780,-5820,-5857,-5889,-5917,-5941,-5959,-5973,-5983,-5988,-5989,-5989,-5987,-5987,-5988,-5993,-6001,-6012,-6026,-6042,-6059,
+-6075,-6090,-6104,-6116,-6127,-6136,-6143,-6149,-6153,-6155,-6156,-6154,-6150,-6145,-6139,-6134,-6131,-6131,-6138,-6150,-6169,
+-6194,-6224,-6258,-6294,-6330,-6364,-6396,-6424,-6447,-6467,-6483,-6497,-6508,-6517,-6525,-6531,-6536,-6539,-6542,-6543,-6545,
+-6548,-6554,-6561,-6572,-6585,-6599,-6614,-6626,-6634,-6636,-6630,-6616,-6595,-6569,-6538,-6507,-6479,-6456,-6441,-6435,-6436,
+-6445,-6459,-6474,-6489,-6499,-6504,-6502,-6494,-6479,-6460,-6440,-6420,-6402,-6387,-6377,-6370,-6367,-6365,-6364,-6362,-6358,
+-6352,-6344,-6335,-6324,-6315,-6306,-6299,-6294,-6289,-6286,-6283,-6279,-6273,-6266,-6258,-6248,-6238,-6228,-6219,-6211,-6204,
+-6199,-6195,-6192,-6188,-6184,-6178,-6170,-6161,-6150,-6139,-6126,-6114,-6101,-6088,-6076,-6064,-6051,-6038,-6025,-6011,-5997,
+-5983,-5970,-5957,-5947,-5937,-5930,-5923,-5917,-5911,-5905,-5898,-5890,-5880,-5869,-5856,-5843,-5830,-5817,-5805,-5794,-5783,
+-5773,-5762,-5751,-5739,-5725,-5709,-5691,-5671,-5650,-5627,-5603,-5579,-5555,-5531,-5509,-5489,-5469,-5451,-5434,-5417,-5400,
+-5384,-5366,-5348,-5329,-5309,-5289,-5270,-5251,-5233,-5216,-5201,-5188,-5176,-5164,-5153,-5141,-5128,-5114,-5098,-5080,-5061,
+-5041,-5020,-4999,-4979,-4960,-4941,-4924,-4907,-4890,-4873,-4856,-4837,-4818,-4796,-4774,-4750,-4724,-4697,-4669,-4640,-4611,
+-4581,-4552,-4524,-4498,-4475,-4455,-4439,-4428,-4420,-4415,-4412,-4410,-4408,-4405,-4400,-4392,-4380,-4365,-4346,-4325,-4302,
+-4276,-4250,-4223,-4197,-4170,-4145,-4120,-4098,-4077,-4059,-4043,-4029,-4018,-4009,-4001,-3993,-3984,-3974,-3962,-3947,-3929,
+-3908,-3886,-3862,-3838,-3815,-3791,-3769,-3747,-3725,-3703,-3679,-3654,-3627,-3599,-3570,-3540,-3511,-3484,-3459,-3438,-3420,
+-3404,-3392,-3381,-3372,-3363,-3355,-3347,-3339,-3331,-3323,-3315,-3306,-3296,-3284,-3269,-3250,-3229,-3206,-3181,-3157,-3134,
+-3115,-3100,-3090,-3084,-3081,-3079,-3074,-3063,-3045,-3018,-2981,-2936,-2883,-2827,-2771,-2718,-2672,-2634,-2606,-2586,-2575,
+-2569,-2565,-2561,-2556,-2546,-2531,-2513,-2490,-2465,-2440,-2415,-2391,-2371,-2353,-2338,-2326,-2316,-2308,-2301,-2294,-2288,
+-2282,-2274,-2265,-2254,-2240,-2224,-2206,-2186,-2166,-2147,-2130,-2117,-2109,-2106,-2107,-2111,-2116,-2118,-2116,-2107,-2090,
+-2063,-2028,-1986,-1940,-1893,-1848,-1808,-1774,-1747,-1726,-1711,-1699,-1688,-1676,-1662,-1644,-1624,-1602,-1580,-1560,-1542,
+-1530,-1522,-1518,-1518,-1519,-1521,-1521,-1519,-1515,-1507,-1497,-1485,-1473,-1462,-1451,-1442,-1433,-1424,-1414,-1402,-1388,
+-1371,-1351,-1328,-1302,-1274,-1246,-1217,-1190,-1166,-1144,-1128,-1116,-1110,-1110,-1114,-1121,-1129,-1136,-1139,-1135,-1124,
+-1105,-1076,-1041,-1001,-957,-914,-873,-835,-801,-770,-739,-708,-673,-634,-588,-536,-480,-420,-361,-302,-247,
+-197,-150,-106,-65,-23,20,65,112,158,203,243,276,302,321,332,340,348,359,376,403,439,
+484,536,593,650,704,753,794,827,853,873,888,900,909,915,917,913,901,880,850,809,761,
+706,647,588,530,476,426,381,340,301,264,228,192,157,124,95,71,52,40,34,33,34,
+36,37,35,28,17,3,-13,-30,-47,-62,-73,-82,-88,-92,-96,-100,-104,-110,-117,-123,-129,
+-134,-136,-136,-134,-130,-125,-120,-116,-114,-113,-115,-118,-121,-125,-128,-129,-129,-128,-125,-122,-118,
+-115,-112,-110,-108,-107,-106,-104,-102,-100,-97,-93,-89,-86,-83,-80,-79,-77,-76,-75,-73,-71,
+-68,-65,-62,-58,-55,-52,-49,-47,-45,-43,-41,-38,-35,-32,-28,-23,-19,-15,-12,-9,-7,
+-6,-6,-7,-7,-7,-7,-7,-6,-5,-5,-4,-4,-5,-6,-7,-9,-10,-11,-11,-10,-9,
+-7,-5,-2,0,1,2,3,4,6,7,9,11,13,15,15,15,13,10,6,1,-3,
+-7,-9,-10,-8,-4,1,9,17,25,32,38,43,47,49,49,49,48,47,46,44,43,
+42,42,44,49,56,67,82,101,124,151,180,212,245,280,316,354,393,435,478,524,571,
+619,666,711,752,789,821,847,871,891,911,933,957,984,1014,1044,1074,1100,1118,1128,1128,1117,
+1098,1073,1046,1021,1004,996,1001,1018,1047,1083,1125,1167,1205,1236,1259,1272,1278,1276,1270,1262,1255,
+1250,1247,1246,1246,1247,1246,1243,1238,1231,1223,1216,1209,1205,1203,1204,1206,1208,1208,1206,1177,1180,
+1183,1185,1187,1190,1194,1202,1214,1232,1255,1285,1319,1358,1398,1438,1476,1511,1542,1566,1585,1599,1607,
+1611,1611,1608,1603,1596,1588,1577,1566,1553,1539,1524,1509,1494,1479,1466,1453,1442,1431,1421,1410,1399,
+1387,1375,1362,1351,1342,1337,1337,1344,1357,1377,1400,1427,1452,1475,1493,1503,1506,1502,1493,1483,1475,
+1472,1477,1492,1516,1547,1584,1621,1655,1682,1700,1709,1710,1705,1698,1694,1697,1709,1732,1764,1804,1847,
+1889,1925,1953,1971,1978,1978,1974,1970,1970,1976,1992,2015,2044,2076,2106,2131,2148,2154,2151,2141,2127,
+2112,2102,2098,2103,2117,2136,2160,2184,2204,2219,2225,2225,2217,2206,2194,2183,2177,2175,2178,2186,2195,
+2204,2212,2218,2221,2224,2228,2236,2250,2273,2304,2344,2391,2441,2491,2537,2575,2602,2618,2623,2618,2605,
+2589,2570,2553,2540,2530,2524,2521,2520,2519,2517,2514,2509,2503,2496,2489,2483,2478,2473,2468,2459,2446,
+2427,2400,2365,2322,2274,2225,2176,2134,2101,2081,2075,2084,2106,2139,2178,2219,2258,2292,2317,2333,2341,
+2343,2341,2339,2340,2346,2360,2381,2407,2436,2465,2489,2504,2509,2501,2479,2445,2402,2352,2299,2248,2203,
+2165,2136,2118,2109,2107,2111,2118,2126,2131,2134,2132,2125,2115,2103,2089,2076,2065,2055,2049,2044,2041,
+2039,2036,2031,2024,2013,2000,1984,1967,1951,1935,1923,1915,1911,1911,1916,1926,1938,1954,1972,1992,2014,
+2038,2063,2090,2118,2146,2173,2196,2214,2226,2228,2219,2199,2166,2121,2066,2001,1929,1854,1777,1703,1632,
+1569,1515,1470,1436,1412,1396,1388,1385,1385,1387,1387,1385,1380,1371,1360,1347,1335,1325,1318,1318,1323,
+1335,1352,1373,1397,1420,1442,1461,1475,1485,1490,1492,1491,1490,1489,1490,1492,1496,1500,1505,1510,1513,
+1514,1512,1508,1501,1493,1483,1471,1459,1445,1431,1415,1399,1380,1360,1339,1317,1295,1272,1249,1227,1205,
+1183,1161,1139,1116,1092,1067,1041,1014,986,958,928,899,869,838,807,775,743,711,679,648,619,
+592,569,549,532,517,505,493,480,465,448,427,402,374,344,311,278,245,212,181,150,118,
+86,51,12,-29,-76,-127,-182,-239,-297,-354,-409,-461,-509,-552,-592,-629,-663,-697,-730,-764,-799,
+-836,-873,-910,-948,-984,-1020,-1054,-1088,-1121,-1154,-1187,-1222,-1258,-1295,-1333,-1372,-1411,-1450,-1489,-1528,-1566,
+-1603,-1641,-1678,-1716,-1753,-1791,-1830,-1868,-1905,-1943,-1981,-2019,-2058,-2099,-2141,-2185,-2231,-2279,-2326,-2373,-2416,
+-2456,-2491,-2520,-2543,-2561,-2575,-2586,-2596,-2607,-2620,-2637,-2656,-2679,-2704,-2732,-2759,-2787,-2813,-2839,-2863,-2887,
+-2912,-2937,-2964,-2993,-3024,-3055,-3087,-3118,-3147,-3172,-3192,-3207,-3217,-3221,-3221,-3218,-3214,-3209,-3207,-3208,-3213,
+-3223,-3237,-3256,-3279,-3303,-3328,-3353,-3375,-3395,-3412,-3426,-3439,-3450,-3461,-3473,-3488,-3506,-3527,-3551,-3577,-3603,
+-3627,-3649,-3665,-3676,-3682,-3681,-3677,-3671,-3666,-3663,-3666,-3676,-3693,-3718,-3749,-3784,-3821,-3857,-3889,-3916,-3938,
+-3953,-3963,-3971,-3978,-3986,-3998,-4015,-4036,-4061,-4090,-4120,-4149,-4177,-4202,-4226,-4249,-4272,-4298,-4328,-4365,-4410,
+-4463,-4523,-4589,-4659,-4730,-4800,-4868,-4930,-4986,-5034,-5075,-5106,-5130,-5144,-5151,-5150,-5144,-5132,-5118,-5104,-5091,
+-5083,-5079,-5080,-5087,-5098,-5112,-5126,-5139,-5148,-5153,-5155,-5153,-5152,-5151,-5154,-5163,-5179,-5201,-5229,-5261,-5295,
+-5330,-5363,-5395,-5425,-5452,-5479,-5506,-5534,-5562,-5589,-5615,-5638,-5656,-5669,-5677,-5679,-5678,-5676,-5676,-5679,-5687,
+-5700,-5716,-5734,-5751,-5762,-5767,-5764,-5753,-5736,-5715,-5695,-5679,-5670,-5668,-5672,-5681,-5689,-5693,-5688,-5670,-5638,
+-5592,-5537,-5476,-5417,-5366,-5328,-5309,-5310,-5332,-5371,-5423,-5484,-5547,-5608,-5662,-5706,-5739,-5759,-5769,-5768,-5758,
+-5741,-5719,-5692,-5663,-5635,-5608,-5586,-5570,-5562,-5562,-5568,-5580,-5594,-5606,-5613,-5610,-5597,-5572,-5537,-5493,-5447,
+-5401,-5362,-5334,-5320,-5323,-5342,-5376,-5421,-5475,-5533,-5591,-5647,-5698,-5743,-5782,-5815,-5843,-5866,-5885,-5902,-5915,
+-5926,-5936,-5944,-5952,-5959,-5967,-5976,-5987,-6000,-6014,-6029,-6045,-6060,-6075,-6088,-6101,-6111,-6121,-6130,-6138,-6145,
+-6152,-6158,-6162,-6164,-6164,-6162,-6158,-6154,-6150,-6148,-6149,-6155,-6166,-6183,-6205,-6230,-6259,-6289,-6318,-6347,-6373,
+-6397,-6418,-6438,-6456,-6474,-6492,-6510,-6527,-6544,-6559,-6573,-6586,-6596,-6604,-6611,-6618,-6623,-6629,-6634,-6638,-6640,
+-6640,-6636,-6627,-6614,-6596,-6575,-6553,-6530,-6510,-6494,-6483,-6479,-6480,-6486,-6496,-6506,-6515,-6520,-6521,-6516,-6505,
+-6490,-6472,-6453,-6435,-6419,-6407,-6398,-6393,-6391,-6390,-6389,-6387,-6384,-6378,-6370,-6361,-6350,-6340,-6331,-6323,-6316,
+-6311,-6306,-6302,-6297,-6291,-6285,-6277,-6268,-6260,-6251,-6243,-6236,-6231,-6226,-6221,-6217,-6211,-6205,-6197,-6188,-6177,
+-6165,-6153,-6142,-6130,-6120,-6111,-6101,-6093,-6083,-6073,-6062,-6049,-6036,-6021,-6007,-5992,-5979,-5967,-5957,-5948,-5940,
+-5933,-5926,-5919,-5911,-5901,-5891,-5880,-5869,-5857,-5846,-5835,-5824,-5813,-5802,-5791,-5778,-5763,-5746,-5728,-5707,-5685,
+-5662,-5638,-5614,-5592,-5570,-5550,-5531,-5513,-5496,-5480,-5464,-5448,-5431,-5413,-5395,-5376,-5357,-5337,-5318,-5299,-5280,
+-5263,-5246,-5231,-5216,-5202,-5189,-5175,-5162,-5148,-5134,-5119,-5104,-5089,-5073,-5058,-5042,-5025,-5009,-4991,-4973,-4953,
+-4933,-4911,-4887,-4863,-4838,-4811,-4785,-4758,-4731,-4703,-4675,-4648,-4621,-4594,-4568,-4544,-4522,-4502,-4486,-4473,-4462,
+-4455,-4450,-4446,-4443,-4439,-4434,-4427,-4418,-4406,-4392,-4377,-4359,-4339,-4317,-4294,-4269,-4243,-4215,-4187,-4158,-4129,
+-4102,-4076,-4054,-4035,-4020,-4008,-3997,-3987,-3977,-3964,-3948,-3927,-3902,-3873,-3840,-3805,-3769,-3735,-3702,-3671,-3642,
+-3615,-3589,-3563,-3536,-3507,-3477,-3445,-3413,-3383,-3355,-3331,-3312,-3299,-3290,-3285,-3284,-3284,-3283,-3282,-3278,-3272,
+-3264,-3253,-3241,-3228,-3215,-3201,-3187,-3172,-3156,-3140,-3123,-3106,-3090,-3076,-3065,-3057,-3052,-3050,-3049,-3049,-3046,
+-3040,-3027,-3008,-2982,-2949,-2911,-2869,-2826,-2785,-2747,-2713,-2685,-2663,-2645,-2630,-2617,-2604,-2590,-2573,-2554,-2532,
+-2508,-2482,-2456,-2429,-2404,-2381,-2359,-2340,-2324,-2310,-2299,-2289,-2281,-2273,-2266,-2256,-2245,-2231,-2214,-2195,-2174,
+-2152,-2132,-2115,-2103,-2098,-2098,-2105,-2117,-2131,-2145,-2155,-2159,-2154,-2138,-2113,-2078,-2035,-1989,-1940,-1894,-1851,
+-1815,-1785,-1762,-1744,-1730,-1718,-1707,-1695,-1683,-1669,-1655,-1641,-1628,-1617,-1608,-1600,-1593,-1586,-1579,-1571,-1561,
+-1550,-1536,-1522,-1508,-1494,-1481,-1469,-1459,-1451,-1443,-1434,-1425,-1414,-1400,-1383,-1364,-1343,-1319,-1294,-1268,-1243,
+-1219,-1199,-1182,-1170,-1162,-1159,-1160,-1165,-1170,-1174,-1175,-1171,-1160,-1142,-1115,-1082,-1043,-1001,-957,-913,-871,
+-831,-794,-758,-722,-685,-646,-603,-558,-509,-459,-407,-356,-307,-259,-212,-167,-122,-76,-30,16,63,
+108,151,188,220,244,263,276,286,295,308,325,348,379,416,459,505,551,596,638,675,708,
+735,758,777,791,801,806,803,792,770,738,695,643,584,521,458,397,342,294,253,219,190,
+166,143,120,96,71,47,23,2,-14,-25,-32,-34,-33,-30,-27,-25,-27,-31,-39,-48,-58,
+-67,-74,-79,-82,-82,-81,-80,-81,-83,-88,-95,-103,-111,-119,-125,-128,-128,-125,-120,-114,-108,
+-103,-100,-100,-102,-106,-112,-118,-124,-129,-133,-136,-137,-138,-138,-137,-136,-136,-136,-135,-135,-134,
+-133,-131,-129,-127,-125,-124,-123,-123,-124,-125,-126,-127,-127,-127,-125,-123,-120,-117,-114,-111,-108,
+-106,-104,-102,-100,-98,-95,-92,-88,-84,-79,-74,-70,-67,-64,-62,-60,-59,-57,-56,-55,-54,
+-52,-51,-49,-48,-47,-47,-47,-47,-48,-48,-48,-48,-48,-47,-46,-45,-44,-43,-43,-42,-41,
+-41,-40,-39,-38,-38,-38,-40,-42,-44,-48,-51,-55,-57,-58,-58,-56,-52,-47,-40,-33,-26,
+-19,-13,-7,-3,0,4,7,10,13,15,18,21,24,28,33,39,48,61,77,98,123,
+151,183,217,254,291,329,368,407,448,489,533,577,622,665,707,745,777,804,824,837,847,
+854,861,872,887,908,935,966,1000,1032,1059,1078,1087,1086,1074,1054,1030,1007,990,982,987,1005,
+1037,1080,1131,1184,1234,1279,1315,1340,1353,1357,1354,1345,1334,1323,1314,1306,1300,1295,1289,1282,1272,
+1259,1245,1229,1213,1199,1188,1180,1175,1174,1175,1177,1246,1254,1263,1273,1283,1292,1303,1314,1328,1346,
+1367,1392,1422,1456,1492,1531,1570,1608,1644,1677,1706,1730,1748,1762,1769,1771,1767,1758,1743,1725,1702,
+1677,1651,1626,1602,1581,1565,1553,1546,1544,1545,1549,1553,1556,1558,1557,1554,1549,1544,1540,1538,1541,
+1547,1558,1572,1587,1602,1614,1623,1626,1624,1619,1611,1604,1600,1602,1611,1628,1651,1679,1707,1733,1753,
+1764,1766,1760,1747,1732,1717,1708,1707,1718,1739,1769,1806,1845,1883,1916,1941,1960,1973,1983,1995,2012,
+2036,2071,2114,2164,2216,2265,2304,2328,2335,2322,2293,2249,2198,2146,2098,2062,2040,2034,2042,2062,2088,
+2117,2144,2165,2178,2182,2180,2174,2166,2159,2156,2158,2164,2175,2188,2203,2218,2232,2246,2259,2275,2293,
+2316,2343,2376,2413,2451,2489,2523,2551,2572,2585,2590,2588,2581,2572,2563,2556,2552,2551,2554,2558,2562,
+2566,2567,2566,2561,2554,2546,2536,2526,2516,2506,2494,2480,2461,2437,2405,2366,2322,2273,2223,2176,2135,
+2105,2087,2084,2095,2119,2153,2193,2235,2275,2309,2335,2352,2361,2362,2360,2357,2355,2357,2365,2377,2394,
+2412,2428,2441,2446,2442,2428,2403,2371,2331,2289,2246,2207,2173,2146,2127,2115,2109,2108,2109,2110,2109,
+2106,2100,2091,2080,2067,2054,2043,2033,2026,2021,2019,2018,2017,2016,2015,2012,2009,2004,1998,1993,1988,
+1985,1983,1982,1982,1984,1985,1987,1988,1989,1990,1991,1993,1996,2002,2010,2022,2036,2051,2068,2084,2098,
+2108,2114,2113,2105,2090,2067,2036,1998,1953,1902,1846,1786,1725,1663,1603,1546,1494,1447,1408,1376,1351,
+1332,1319,1308,1301,1294,1287,1281,1275,1270,1268,1270,1276,1288,1305,1327,1353,1380,1407,1431,1452,1468,
+1479,1484,1486,1485,1482,1479,1478,1478,1480,1482,1486,1489,1490,1489,1485,1479,1470,1458,1445,1430,1415,
+1399,1382,1365,1347,1328,1308,1287,1266,1244,1222,1199,1178,1156,1135,1114,1093,1072,1049,1026,1002,976,
+948,919,890,859,827,795,762,729,697,666,636,609,584,562,544,529,516,506,497,488,477,
+464,448,428,404,376,345,311,277,242,207,172,138,105,71,37,0,-37,-78,-121,-167,-215,
+-264,-314,-362,-409,-455,-498,-539,-578,-615,-651,-687,-723,-759,-797,-836,-876,-917,-958,-1000,-1042,-1083,
+-1124,-1165,-1205,-1244,-1283,-1322,-1360,-1399,-1439,-1478,-1519,-1560,-1603,-1645,-1688,-1731,-1773,-1814,-1853,-1892,-1928,
+-1964,-2000,-2037,-2075,-2116,-2160,-2207,-2259,-2312,-2367,-2422,-2475,-2523,-2566,-2602,-2630,-2651,-2666,-2675,-2682,-2688,
+-2694,-2704,-2717,-2733,-2754,-2777,-2803,-2829,-2855,-2880,-2903,-2924,-2945,-2965,-2986,-3007,-3030,-3054,-3079,-3105,-3130,
+-3154,-3175,-3192,-3205,-3213,-3218,-3219,-3218,-3217,-3217,-3219,-3225,-3235,-3249,-3267,-3288,-3312,-3336,-3360,-3383,-3404,
+-3422,-3439,-3455,-3470,-3487,-3506,-3529,-3556,-3587,-3621,-3656,-3690,-3722,-3747,-3765,-3775,-3774,-3765,-3748,-3727,-3706,
+-3687,-3674,-3671,-3678,-3697,-3726,-3763,-3806,-3849,-3891,-3927,-3956,-3977,-3990,-3997,-4000,-4003,-4008,-4018,-4033,-4055,
+-4083,-4115,-4149,-4182,-4214,-4243,-4269,-4292,-4315,-4340,-4369,-4404,-4448,-4500,-4561,-4628,-4701,-4774,-4847,-4914,-4975,
+-5026,-5065,-5093,-5110,-5115,-5111,-5099,-5081,-5060,-5038,-5017,-5001,-4990,-4987,-4991,-5002,-5019,-5040,-5064,-5088,-5109,
+-5127,-5141,-5151,-5157,-5162,-5167,-5174,-5184,-5199,-5219,-5243,-5271,-5302,-5335,-5367,-5400,-5432,-5464,-5495,-5526,-5556,
+-5585,-5612,-5635,-5654,-5667,-5674,-5677,-5675,-5671,-5668,-5667,-5671,-5681,-5696,-5715,-5736,-5755,-5771,-5780,-5782,-5776,
+-5764,-5747,-5730,-5715,-5705,-5700,-5700,-5704,-5708,-5709,-5703,-5686,-5658,-5619,-5569,-5514,-5458,-5405,-5362,-5332,-5319,
+-5322,-5341,-5374,-5418,-5467,-5518,-5567,-5610,-5644,-5668,-5680,-5681,-5671,-5651,-5624,-5592,-5558,-5525,-5497,-5476,-5465,
+-5465,-5476,-5497,-5523,-5552,-5578,-5597,-5605,-5599,-5578,-5544,-5501,-5452,-5404,-5363,-5334,-5320,-5323,-5345,-5382,-5431,
+-5488,-5548,-5606,-5658,-5702,-5737,-5763,-5780,-5790,-5796,-5800,-5804,-5809,-5817,-5828,-5843,-5862,-5884,-5909,-5935,-5963,
+-5992,-6020,-6046,-6070,-6091,-6109,-6123,-6134,-6143,-6149,-6155,-6159,-6163,-6168,-6171,-6174,-6176,-6176,-6174,-6171,-6167,
+-6163,-6160,-6160,-6162,-6169,-6180,-6195,-6214,-6236,-6259,-6282,-6305,-6328,-6349,-6370,-6391,-6412,-6434,-6458,-6484,-6509,
+-6535,-6559,-6581,-6599,-6613,-6623,-6628,-6629,-6627,-6622,-6617,-6611,-6606,-6600,-6593,-6587,-6579,-6570,-6560,-6549,-6539,
+-6528,-6520,-6514,-6510,-6509,-6511,-6513,-6516,-6519,-6519,-6516,-6510,-6501,-6489,-6476,-6463,-6450,-6439,-6430,-6424,-6420,
+-6418,-6416,-6414,-6411,-6406,-6400,-6391,-6381,-6371,-6361,-6351,-6343,-6335,-6329,-6324,-6319,-6315,-6309,-6303,-6296,-6288,
+-6280,-6273,-6265,-6258,-6252,-6247,-6242,-6236,-6230,-6223,-6215,-6206,-6196,-6185,-6174,-6163,-6153,-6144,-6135,-6127,-6118,
+-6109,-6100,-6089,-6077,-6065,-6051,-6037,-6024,-6011,-5999,-5989,-5979,-5971,-5963,-5955,-5948,-5939,-5930,-5920,-5910,-5899,
+-5887,-5875,-5862,-5850,-5836,-5822,-5806,-5790,-5772,-5752,-5731,-5710,-5688,-5666,-5645,-5624,-5605,-5588,-5571,-5555,-5540,
+-5526,-5511,-5495,-5480,-5463,-5446,-5428,-5410,-5391,-5373,-5354,-5336,-5318,-5299,-5281,-5263,-5245,-5227,-5210,-5193,-5177,
+-5162,-5148,-5135,-5123,-5111,-5099,-5086,-5072,-5057,-5040,-5021,-5000,-4977,-4953,-4927,-4900,-4873,-4846,-4820,-4793,-4768,
+-4743,-4718,-4694,-4670,-4646,-4624,-4602,-4581,-4562,-4545,-4530,-4516,-4504,-4492,-4481,-4470,-4457,-4444,-4430,-4416,-4401,
+-4386,-4372,-4359,-4347,-4335,-4323,-4310,-4294,-4276,-4254,-4230,-4202,-4172,-4141,-4111,-4083,-4058,-4036,-4017,-4001,-3985,
+-3968,-3948,-3925,-3896,-3861,-3822,-3780,-3736,-3692,-3651,-3613,-3581,-3552,-3528,-3507,-3486,-3466,-3444,-3420,-3393,-3366,
+-3339,-3314,-3293,-3276,-3264,-3258,-3256,-3257,-3259,-3261,-3261,-3257,-3250,-3240,-3228,-3214,-3199,-3186,-3173,-3162,-3152,
+-3143,-3134,-3124,-3113,-3101,-3088,-3074,-3061,-3049,-3039,-3031,-3024,-3019,-3014,-3007,-2998,-2985,-2969,-2948,-2923,-2895,
+-2865,-2834,-2804,-2774,-2746,-2720,-2695,-2670,-2646,-2622,-2596,-2569,-2542,-2513,-2484,-2455,-2427,-2400,-2375,-2352,-2331,
+-2313,-2297,-2284,-2272,-2262,-2252,-2242,-2232,-2220,-2206,-2190,-2173,-2155,-2136,-2120,-2108,-2101,-2101,-2107,-2121,-2141,
+-2165,-2190,-2213,-2231,-2240,-2239,-2226,-2202,-2166,-2121,-2070,-2017,-1963,-1913,-1869,-1831,-1800,-1777,-1760,-1749,-1740,
+-1734,-1728,-1722,-1714,-1705,-1695,-1683,-1669,-1654,-1639,-1622,-1606,-1590,-1574,-1559,-1545,-1532,-1520,-1509,-1498,-1487,
+-1477,-1466,-1454,-1442,-1429,-1416,-1402,-1388,-1373,-1358,-1343,-1328,-1313,-1298,-1283,-1268,-1254,-1242,-1231,-1222,-1214,
+-1207,-1200,-1192,-1181,-1167,-1148,-1125,-1098,-1066,-1031,-994,-956,-917,-878,-840,-802,-764,-726,-687,-647,-606,
+-564,-522,-479,-436,-393,-349,-304,-258,-210,-160,-108,-56,-4,44,89,129,162,187,206,219,229,
+237,247,260,278,301,330,364,402,441,480,519,556,591,622,651,675,695,708,712,707,689,
+659,615,560,495,423,348,274,206,146,97,59,31,11,-1,-11,-19,-28,-39,-52,-66,-79,
+-91,-100,-105,-106,-104,-100,-95,-90,-87,-85,-86,-89,-92,-95,-97,-97,-95,-92,-87,-83,-80,
+-79,-80,-83,-88,-94,-101,-106,-109,-109,-107,-102,-96,-90,-85,-81,-79,-80,-84,-90,-98,-106,
+-114,-122,-129,-135,-140,-144,-147,-150,-152,-154,-156,-157,-158,-158,-158,-158,-158,-158,-159,-161,-164,
+-168,-172,-177,-181,-185,-188,-189,-189,-188,-186,-183,-180,-177,-174,-171,-169,-166,-164,-162,-159,-156,
+-153,-149,-146,-142,-139,-136,-133,-130,-127,-124,-121,-118,-114,-111,-107,-104,-101,-99,-98,-98,-99,
+-101,-103,-105,-107,-109,-111,-112,-112,-111,-109,-107,-104,-101,-98,-95,-92,-90,-88,-88,-88,-90,
+-91,-93,-95,-97,-97,-96,-94,-91,-87,-83,-79,-75,-71,-67,-64,-61,-57,-52,-46,-39,-31,
+-21,-11,-1,9,19,29,39,51,64,81,101,126,155,189,225,265,306,348,391,432,473,
+513,552,590,628,664,698,728,754,775,789,796,799,797,794,792,794,801,817,840,870,904,
+940,974,1002,1022,1033,1035,1029,1018,1006,998,998,1008,1031,1066,1112,1165,1221,1276,1325,1366,1395,
+1412,1418,1414,1404,1390,1375,1360,1348,1339,1332,1326,1320,1313,1304,1294,1282,1269,1257,1247,1240,1236,
+1236,1240,1246,1374,1381,1389,1398,1408,1419,1430,1442,1456,1472,1491,1513,1538,1567,1599,1634,1671,1709,
+1747,1784,1819,1850,1877,1897,1911,1916,1913,1901,1881,1854,1822,1786,1750,1715,1684,1659,1643,1635,1636,
+1644,1659,1677,1696,1715,1731,1743,1750,1754,1754,1752,1750,1749,1750,1753,1758,1764,1770,1774,1776,1775,
+1772,1768,1763,1761,1762,1768,1780,1795,1814,1834,1850,1862,1866,1862,1849,1830,1808,1786,1768,1757,1757,
+1766,1785,1812,1842,1873,1902,1926,1945,1960,1975,1994,2021,2059,2111,2176,2253,2335,2416,2489,2545,2577,
+2582,2558,2508,2437,2352,2263,2178,2106,2052,2020,2009,2017,2040,2071,2105,2137,2162,2178,2186,2186,2182,
+2176,2172,2172,2177,2188,2203,2223,2244,2267,2289,2311,2332,2353,2374,2395,2417,2440,2462,2482,2500,2513,
+2522,2526,2526,2524,2520,2516,2515,2516,2522,2532,2544,2557,2571,2582,2590,2593,2592,2587,2578,2566,2552,
+2537,2520,2502,2481,2457,2428,2394,2355,2312,2267,2221,2179,2143,2116,2101,2098,2109,2131,2163,2202,2243,
+2283,2320,2351,2374,2389,2398,2402,2402,2401,2399,2398,2398,2398,2397,2393,2385,2372,2353,2329,2300,2268,
+2234,2201,2171,2146,2125,2109,2097,2089,2083,2078,2072,2064,2055,2044,2032,2019,2008,1998,1991,1986,1983,
+1982,1983,1984,1984,1984,1983,1982,1981,1981,1983,1988,1995,2004,2015,2028,2039,2050,2057,2061,2060,2055,
+2047,2037,2025,2014,2004,1996,1992,1991,1992,1996,2001,2007,2014,2020,2025,2030,2033,2034,2031,2025,2013,
+1994,1966,1929,1882,1826,1762,1692,1619,1546,1477,1415,1361,1319,1287,1266,1254,1249,1249,1252,1256,1260,
+1265,1271,1279,1289,1304,1323,1346,1372,1401,1430,1457,1480,1499,1512,1519,1520,1518,1513,1507,1501,1496,
+1492,1490,1488,1486,1483,1477,1469,1459,1445,1429,1412,1393,1375,1356,1338,1319,1301,1283,1263,1243,1221,
+1198,1174,1149,1124,1100,1076,1053,1031,1009,988,966,944,920,895,868,839,808,776,743,709,676,
+644,615,588,564,545,529,516,507,499,493,487,480,471,459,444,425,401,374,344,311,276,
+240,203,166,129,93,57,21,-14,-51,-89,-128,-169,-210,-253,-297,-342,-386,-430,-473,-515,-556,
+-595,-634,-672,-710,-748,-788,-829,-872,-917,-963,-1012,-1061,-1110,-1159,-1207,-1253,-1297,-1339,-1380,-1420,-1459,
+-1499,-1540,-1582,-1627,-1673,-1720,-1768,-1816,-1862,-1907,-1949,-1989,-2027,-2064,-2100,-2137,-2177,-2221,-2269,-2321,-2377,
+-2436,-2496,-2555,-2610,-2660,-2703,-2737,-2762,-2780,-2790,-2795,-2797,-2799,-2803,-2809,-2820,-2835,-2855,-2878,-2904,-2931,
+-2958,-2983,-3006,-3027,-3046,-3062,-3077,-3092,-3107,-3122,-3138,-3154,-3171,-3186,-3201,-3213,-3223,-3230,-3235,-3237,-3239,
+-3241,-3244,-3249,-3257,-3268,-3284,-3302,-3324,-3347,-3370,-3394,-3416,-3437,-3456,-3475,-3494,-3514,-3538,-3567,-3600,-3639,
+-3681,-3727,-3772,-3815,-3851,-3877,-3892,-3894,-3882,-3859,-3827,-3790,-3752,-3719,-3695,-3683,-3685,-3702,-3732,-3772,-3818,
+-3866,-3911,-3950,-3981,-4002,-4014,-4020,-4021,-4023,-4027,-4036,-4053,-4077,-4108,-4143,-4181,-4218,-4252,-4283,-4309,-4332,
+-4354,-4377,-4404,-4438,-4481,-4533,-4594,-4664,-4738,-4813,-4886,-4952,-5009,-5053,-5083,-5098,-5100,-5088,-5067,-5039,-5007,
+-4975,-4945,-4922,-4906,-4899,-4902,-4914,-4934,-4961,-4993,-5026,-5059,-5089,-5116,-5138,-5156,-5169,-5181,-5191,-5202,-5214,
+-5230,-5250,-5273,-5300,-5330,-5362,-5396,-5430,-5465,-5500,-5534,-5566,-5597,-5624,-5647,-5665,-5678,-5685,-5687,-5686,-5682,
+-5678,-5677,-5679,-5687,-5701,-5720,-5742,-5766,-5789,-5808,-5821,-5826,-5824,-5816,-5804,-5790,-5776,-5765,-5758,-5756,-5756,
+-5757,-5757,-5751,-5738,-5716,-5684,-5643,-5596,-5546,-5497,-5452,-5416,-5392,-5380,-5383,-5398,-5424,-5458,-5497,-5536,-5572,
+-5602,-5624,-5634,-5633,-5620,-5595,-5563,-5525,-5486,-5450,-5421,-5403,-5399,-5411,-5437,-5476,-5523,-5573,-5621,-5660,-5685,
+-5694,-5685,-5660,-5622,-5575,-5526,-5482,-5448,-5428,-5426,-5441,-5471,-5514,-5564,-5617,-5666,-5708,-5740,-5760,-5769,-5768,
+-5759,-5747,-5733,-5723,-5718,-5719,-5729,-5748,-5774,-5808,-5846,-5889,-5933,-5977,-6019,-6058,-6093,-6122,-6145,-6163,-6176,
+-6185,-6190,-6193,-6194,-6194,-6193,-6192,-6190,-6187,-6184,-6179,-6174,-6169,-6165,-6161,-6161,-6163,-6169,-6179,-6193,-6210,
+-6229,-6249,-6270,-6290,-6310,-6329,-6348,-6368,-6389,-6411,-6436,-6462,-6490,-6518,-6544,-6567,-6586,-6600,-6608,-6609,-6606,
+-6599,-6589,-6578,-6568,-6558,-6551,-6547,-6544,-6544,-6544,-6544,-6544,-6542,-6540,-6537,-6534,-6531,-6528,-6525,-6523,-6522,
+-6520,-6519,-6516,-6512,-6507,-6501,-6494,-6486,-6478,-6470,-6464,-6458,-6453,-6448,-6443,-6439,-6433,-6426,-6419,-6411,-6402,
+-6393,-6384,-6376,-6369,-6363,-6358,-6353,-6349,-6345,-6340,-6334,-6327,-6320,-6312,-6303,-6295,-6287,-6280,-6273,-6267,-6261,
+-6255,-6249,-6242,-6234,-6226,-6216,-6206,-6195,-6184,-6172,-6161,-6150,-6138,-6127,-6116,-6105,-6094,-6083,-6073,-6063,-6053,
+-6045,-6037,-6029,-6022,-6015,-6008,-6000,-5992,-5983,-5972,-5960,-5947,-5933,-5918,-5901,-5884,-5866,-5847,-5827,-5807,-5786,
+-5765,-5745,-5725,-5705,-5687,-5669,-5653,-5638,-5623,-5609,-5596,-5582,-5568,-5554,-5539,-5523,-5507,-5492,-5476,-5460,-5444,
+-5428,-5412,-5395,-5377,-5359,-5339,-5318,-5297,-5276,-5255,-5234,-5215,-5198,-5183,-5170,-5157,-5146,-5134,-5122,-5108,-5092,
+-5073,-5052,-5028,-5003,-4977,-4951,-4925,-4900,-4877,-4856,-4835,-4816,-4797,-4778,-4758,-4737,-4716,-4693,-4671,-4649,-4628,
+-4608,-4590,-4572,-4556,-4539,-4522,-4503,-4483,-4460,-4436,-4410,-4385,-4361,-4340,-4322,-4308,-4298,-4292,-4287,-4283,-4278,
+-4270,-4257,-4238,-4215,-4187,-4155,-4122,-4088,-4056,-4025,-3998,-3972,-3947,-3922,-3895,-3864,-3829,-3790,-3747,-3702,-3657,
+-3613,-3574,-3541,-3514,-3494,-3479,-3468,-3460,-3451,-3441,-3428,-3411,-3392,-3371,-3350,-3329,-3312,-3298,-3289,-3283,-3279,
+-3278,-3276,-3273,-3268,-3260,-3251,-3240,-3228,-3217,-3207,-3200,-3195,-3191,-3187,-3183,-3178,-3169,-3157,-3141,-3122,-3101,
+-3079,-3057,-3036,-3017,-3000,-2986,-2974,-2963,-2952,-2940,-2927,-2912,-2894,-2874,-2852,-2829,-2803,-2776,-2747,-2718,-2686,
+-2654,-2621,-2587,-2552,-2519,-2486,-2455,-2426,-2400,-2376,-2356,-2337,-2321,-2307,-2294,-2281,-2269,-2258,-2246,-2235,-2223,
+-2211,-2198,-2184,-2170,-2156,-2143,-2132,-2123,-2119,-2121,-2129,-2144,-2166,-2192,-2222,-2253,-2281,-2304,-2318,-2321,-2311,
+-2288,-2252,-2205,-2150,-2090,-2030,-1971,-1918,-1873,-1837,-1809,-1791,-1779,-1771,-1767,-1762,-1756,-1747,-1734,-1717,-1697,
+-1674,-1650,-1627,-1606,-1587,-1572,-1560,-1550,-1543,-1537,-1530,-1522,-1512,-1499,-1484,-1467,-1449,-1432,-1416,-1402,-1391,
+-1383,-1378,-1374,-1371,-1368,-1362,-1354,-1342,-1327,-1309,-1289,-1267,-1245,-1223,-1202,-1182,-1163,-1145,-1128,-1110,-1090,
+-1069,-1046,-1020,-992,-961,-928,-893,-857,-819,-780,-741,-702,-663,-625,-587,-549,-511,-471,-430,-386,-339,
+-288,-234,-179,-122,-67,-14,32,73,106,131,149,161,169,175,182,192,206,226,250,280,313,
+349,385,423,459,494,528,559,586,608,623,630,625,608,576,531,472,403,325,245,164,89,
+23,-32,-75,-107,-127,-140,-146,-150,-154,-158,-164,-171,-179,-187,-192,-195,-195,-191,-184,-175,-166,
+-157,-149,-143,-139,-136,-134,-133,-130,-126,-121,-115,-108,-102,-96,-91,-87,-85,-85,-85,-85,-85,
+-83,-81,-78,-74,-70,-66,-64,-63,-64,-67,-72,-79,-87,-96,-105,-114,-122,-130,-137,-144,-150,
+-155,-161,-165,-170,-174,-177,-180,-184,-187,-191,-195,-201,-207,-214,-222,-229,-237,-243,-248,-252,-255,
+-256,-255,-253,-250,-247,-244,-241,-237,-234,-232,-229,-227,-225,-224,-222,-221,-220,-219,-217,-215,-213,
+-210,-206,-202,-197,-191,-186,-180,-175,-171,-168,-166,-166,-166,-168,-171,-174,-177,-180,-181,-182,-181,
+-178,-174,-169,-163,-156,-149,-142,-135,-130,-126,-124,-122,-122,-122,-123,-124,-124,-124,-123,-121,-119,
+-117,-115,-113,-112,-111,-111,-109,-107,-102,-96,-86,-74,-60,-44,-27,-10,5,21,36,50,65,
+82,101,125,154,187,226,270,316,365,414,462,507,549,587,622,653,680,704,724,741,754,
+763,767,768,765,760,755,751,750,755,767,785,809,838,870,902,931,956,975,988,997,1002,
+1007,1015,1030,1052,1085,1127,1177,1232,1289,1345,1394,1434,1463,1480,1485,1481,1468,1451,1433,1415,1399,
+1388,1380,1376,1374,1374,1374,1374,1373,1371,1368,1366,1364,1363,1365,1368,1374,1448,1452,1457,1464,1473,
+1484,1496,1510,1527,1545,1566,1589,1614,1641,1671,1703,1737,1772,1809,1845,1880,1913,1942,1965,1982,1989,
+1988,1978,1958,1930,1896,1859,1821,1785,1754,1730,1715,1710,1715,1728,1747,1770,1795,1819,1840,1856,1868,
+1876,1880,1881,1882,1882,1884,1886,1889,1893,1896,1897,1897,1895,1892,1888,1886,1887,1890,1898,1909,1923,
+1938,1951,1960,1963,1960,1949,1932,1911,1890,1871,1857,1851,1854,1865,1882,1903,1925,1943,1957,1966,1971,
+1974,1980,1994,2022,2066,2128,2208,2302,2403,2503,2593,2664,2709,2722,2702,2652,2576,2483,2382,2283,2195,
+2125,2077,2053,2050,2064,2091,2123,2154,2181,2201,2211,2214,2211,2206,2202,2201,2205,2216,2233,2255,2280,
+2307,2333,2358,2380,2400,2416,2431,2443,2453,2461,2467,2471,2472,2471,2467,2463,2458,2453,2452,2453,2459,
+2469,2483,2500,2519,2538,2554,2568,2576,2579,2577,2569,2558,2542,2524,2504,2482,2458,2432,2402,2370,2334,
+2296,2257,2219,2183,2152,2128,2113,2108,2114,2130,2155,2186,2221,2258,2294,2326,2354,2377,2394,2405,2411,
+2413,2411,2406,2397,2385,2368,2348,2324,2297,2267,2235,2202,2171,2142,2117,2095,2078,2065,2054,2045,2037,
+2027,2017,2004,1991,1977,1963,1951,1941,1935,1932,1932,1934,1938,1941,1944,1944,1943,1940,1936,1933,1932,
+1936,1943,1956,1974,1996,2020,2044,2066,2083,2094,2099,2096,2088,2075,2058,2041,2025,2010,1998,1989,1984,
+1980,1979,1978,1978,1979,1981,1985,1990,1998,2006,2015,2021,2023,2018,2002,1974,1932,1876,1807,1728,1643,
+1557,1474,1400,1337,1289,1256,1238,1233,1238,1249,1264,1279,1294,1307,1318,1328,1339,1352,1369,1389,1413,
+1439,1467,1493,1516,1535,1547,1553,1554,1549,1541,1531,1521,1511,1503,1497,1491,1484,1477,1468,1456,1441,
+1423,1403,1381,1359,1337,1317,1298,1281,1264,1248,1231,1213,1192,1169,1143,1116,1088,1059,1031,1004,979,
+956,934,914,893,872,849,823,795,765,732,698,664,631,600,572,549,529,515,504,496,491,
+487,483,477,469,458,444,426,404,379,351,321,289,256,222,187,153,118,84,50,15,-19,
+-54,-91,-129,-169,-210,-253,-298,-344,-390,-437,-483,-528,-571,-613,-652,-690,-727,-765,-802,-842,-884,
+-929,-977,-1027,-1079,-1132,-1185,-1237,-1286,-1334,-1378,-1420,-1461,-1501,-1541,-1582,-1625,-1670,-1718,-1767,-1816,-1866,
+-1915,-1961,-2006,-2048,-2088,-2128,-2168,-2210,-2255,-2304,-2358,-2416,-2477,-2540,-2603,-2663,-2718,-2766,-2805,-2834,-2854,
+-2866,-2870,-2870,-2866,-2863,-2862,-2865,-2872,-2886,-2905,-2928,-2954,-2983,-3012,-3040,-3065,-3088,-3108,-3124,-3138,-3151,
+-3162,-3172,-3183,-3194,-3205,-3217,-3228,-3239,-3248,-3256,-3262,-3267,-3270,-3273,-3276,-3281,-3289,-3299,-3313,-3330,-3350,
+-3373,-3396,-3421,-3444,-3467,-3489,-3510,-3532,-3555,-3582,-3613,-3650,-3692,-3739,-3789,-3838,-3885,-3925,-3954,-3970,-3972,
+-3958,-3931,-3893,-3849,-3804,-3763,-3730,-3711,-3707,-3718,-3745,-3783,-3829,-3878,-3926,-3968,-4003,-4028,-4045,-4054,-4059,
+-4062,-4067,-4078,-4094,-4117,-4146,-4180,-4216,-4251,-4284,-4313,-4339,-4361,-4383,-4406,-4434,-4468,-4511,-4564,-4625,-4693,
+-4766,-4840,-4910,-4972,-5023,-5061,-5083,-5091,-5084,-5065,-5037,-5003,-4968,-4935,-4906,-4884,-4872,-4869,-4877,-4893,-4917,
+-4947,-4981,-5016,-5051,-5083,-5113,-5139,-5161,-5180,-5197,-5213,-5229,-5246,-5265,-5287,-5312,-5339,-5369,-5402,-5436,-5470,
+-5505,-5539,-5572,-5602,-5630,-5653,-5672,-5685,-5694,-5698,-5699,-5697,-5695,-5693,-5695,-5701,-5712,-5727,-5747,-5769,-5792,
+-5814,-5832,-5844,-5851,-5852,-5847,-5839,-5828,-5818,-5809,-5803,-5800,-5798,-5797,-5794,-5788,-5776,-5756,-5729,-5694,-5654,
+-5609,-5564,-5521,-5484,-5454,-5435,-5427,-5430,-5443,-5464,-5491,-5520,-5548,-5571,-5586,-5592,-5586,-5568,-5540,-5504,-5464,
+-5423,-5387,-5361,-5348,-5353,-5375,-5415,-5469,-5533,-5601,-5667,-5724,-5767,-5792,-5798,-5784,-5755,-5715,-5670,-5626,-5589,
+-5564,-5554,-5560,-5580,-5612,-5651,-5691,-5729,-5761,-5782,-5792,-5791,-5781,-5764,-5744,-5723,-5707,-5697,-5695,-5703,-5721,
+-5749,-5784,-5826,-5871,-5918,-5966,-6011,-6052,-6089,-6120,-6146,-6166,-6180,-6189,-6195,-6197,-6197,-6195,-6191,-6187,-6182,
+-6176,-6169,-6163,-6157,-6151,-6148,-6147,-6149,-6154,-6164,-6177,-6193,-6212,-6233,-6254,-6276,-6296,-6316,-6334,-6352,-6370,
+-6389,-6409,-6431,-6455,-6480,-6505,-6529,-6550,-6568,-6581,-6588,-6590,-6586,-6579,-6569,-6559,-6549,-6541,-6535,-6533,-6534,
+-6537,-6541,-6545,-6549,-6552,-6553,-6551,-6549,-6545,-6541,-6536,-6533,-6530,-6528,-6527,-6526,-6525,-6524,-6521,-6518,-6513,
+-6507,-6501,-6494,-6486,-6479,-6472,-6465,-6459,-6452,-6445,-6439,-6432,-6425,-6419,-6412,-6406,-6401,-6397,-6393,-6389,-6385,
+-6381,-6376,-6370,-6364,-6356,-6348,-6338,-6329,-6320,-6311,-6303,-6296,-6289,-6283,-6277,-6271,-6265,-6257,-6249,-6239,-6228,
+-6216,-6203,-6190,-6176,-6163,-6150,-6138,-6127,-6117,-6108,-6101,-6094,-6088,-6082,-6077,-6072,-6066,-6059,-6052,-6043,-6033,
+-6021,-6008,-5993,-5976,-5958,-5938,-5917,-5895,-5872,-5848,-5825,-5801,-5779,-5758,-5739,-5722,-5707,-5693,-5681,-5670,-5658,
+-5647,-5635,-5622,-5608,-5592,-5576,-5559,-5542,-5526,-5511,-5497,-5483,-5470,-5457,-5443,-5429,-5412,-5393,-5372,-5350,-5327,
+-5303,-5280,-5258,-5239,-5222,-5207,-5194,-5182,-5170,-5157,-5142,-5124,-5103,-5079,-5053,-5026,-4998,-4971,-4946,-4925,-4906,
+-4890,-4876,-4863,-4851,-4837,-4822,-4803,-4782,-4758,-4731,-4704,-4677,-4651,-4627,-4604,-4584,-4564,-4544,-4523,-4500,-4473,
+-4443,-4411,-4376,-4341,-4308,-4279,-4254,-4235,-4223,-4216,-4214,-4214,-4214,-4212,-4205,-4193,-4174,-4148,-4117,-4083,-4046,
+-4009,-3972,-3938,-3905,-3874,-3844,-3814,-3782,-3747,-3711,-3672,-3634,-3595,-3560,-3529,-3503,-3484,-3472,-3465,-3463,-3462,
+-3462,-3460,-3455,-3447,-3434,-3418,-3400,-3381,-3363,-3347,-3333,-3321,-3312,-3305,-3300,-3294,-3288,-3282,-3275,-3268,-3262,
+-3256,-3252,-3249,-3248,-3247,-3245,-3242,-3237,-3228,-3215,-3198,-3177,-3153,-3127,-3100,-3073,-3047,-3023,-3000,-2980,-2961,
+-2943,-2926,-2910,-2893,-2876,-2859,-2840,-2819,-2797,-2773,-2746,-2716,-2684,-2649,-2613,-2576,-2540,-2505,-2472,-2444,-2419,
+-2399,-2383,-2370,-2359,-2349,-2340,-2329,-2318,-2304,-2290,-2275,-2260,-2245,-2231,-2219,-2208,-2198,-2188,-2179,-2171,-2164,
+-2158,-2155,-2156,-2162,-2173,-2191,-2213,-2240,-2268,-2295,-2317,-2331,-2335,-2326,-2303,-2267,-2219,-2163,-2100,-2037,-1976,
+-1921,-1875,-1839,-1814,-1797,-1787,-1781,-1777,-1771,-1761,-1747,-1728,-1704,-1677,-1650,-1624,-1601,-1583,-1571,-1563,-1560,
+-1559,-1559,-1557,-1552,-1543,-1529,-1511,-1490,-1468,-1446,-1427,-1412,-1401,-1396,-1396,-1398,-1401,-1404,-1403,-1398,-1387,
+-1370,-1347,-1320,-1289,-1258,-1226,-1197,-1170,-1148,-1128,-1112,-1098,-1084,-1071,-1056,-1038,-1017,-993,-965,-933,-899,
+-863,-826,-789,-751,-715,-680,-645,-610,-574,-537,-497,-454,-407,-356,-302,-246,-189,-135,-84,-38,0,
+30,54,70,82,92,100,110,124,141,163,190,220,253,287,321,353,385,414,441,466,488,
+506,519,525,522,508,482,443,392,329,258,182,104,29,-39,-99,-148,-186,-213,-231,-243,-250,
+-254,-259,-265,-271,-279,-286,-292,-295,-295,-291,-283,-272,-259,-245,-231,-218,-207,-199,-192,-186,-180,
+-175,-169,-161,-153,-143,-133,-122,-112,-104,-96,-90,-85,-81,-78,-75,-73,-71,-69,-67,-66,-66,
+-66,-68,-71,-75,-81,-87,-95,-103,-111,-120,-129,-137,-145,-154,-161,-169,-176,-183,-190,-197,-205,
+-213,-221,-230,-239,-249,-259,-269,-278,-287,-295,-302,-307,-311,-314,-315,-315,-315,-314,-313,-311,-309,
+-307,-306,-304,-303,-303,-302,-302,-302,-302,-302,-301,-300,-298,-294,-290,-284,-277,-270,-262,-255,-248,
+-241,-236,-233,-230,-229,-229,-229,-230,-231,-231,-230,-229,-225,-221,-215,-207,-199,-190,-181,-172,-164,
+-157,-152,-148,-145,-144,-144,-145,-146,-146,-147,-147,-146,-145,-144,-142,-140,-139,-137,-134,-130,-124,
+-116,-106,-92,-76,-58,-39,-19,0,18,35,51,66,82,99,120,145,176,214,258,307,360,
+415,470,523,572,615,651,681,704,721,733,742,747,750,752,753,753,753,753,753,754,757,
+763,771,783,798,816,835,856,876,896,914,932,949,967,988,1013,1044,1082,1127,1178,1235,1293,
+1352,1406,1454,1493,1521,1537,1541,1536,1522,1503,1481,1459,1440,1424,1413,1407,1405,1407,1411,1417,1422,
+1428,1432,1436,1439,1441,1443,1445,1448,1408,1414,1422,1432,1444,1459,1476,1496,1518,1541,1566,1591,1618,
+1645,1672,1700,1729,1759,1790,1821,1851,1880,1907,1929,1946,1957,1959,1954,1940,1920,1894,1866,1836,1808,
+1785,1768,1757,1755,1760,1771,1787,1805,1823,1841,1856,1868,1877,1884,1889,1894,1899,1905,1912,1920,1927,
+1934,1939,1942,1942,1940,1937,1933,1930,1930,1934,1941,1952,1965,1978,1991,2000,2004,2003,1996,1984,1970,
+1956,1944,1938,1937,1942,1952,1965,1979,1989,1995,1994,1987,1976,1963,1954,1955,1969,2001,2052,2121,2205,
+2297,2392,2478,2549,2598,2620,2612,2577,2519,2445,2363,2280,2206,2147,2105,2082,2076,2085,2104,2127,2149,
+2167,2178,2182,2180,2175,2168,2163,2162,2167,2179,2197,2219,2245,2271,2295,2317,2334,2347,2356,2362,2364,
+2365,2364,2363,2360,2357,2354,2350,2345,2342,2340,2340,2343,2350,2362,2377,2395,2416,2437,2456,2473,2486,
+2493,2495,2492,2483,2470,2454,2435,2415,2392,2369,2344,2317,2290,2261,2232,2203,2176,2152,2132,2118,2110,
+2110,2116,2128,2146,2168,2193,2218,2243,2265,2285,2302,2315,2323,2328,2328,2324,2315,2302,2285,2264,2240,
+2213,2185,2157,2129,2104,2081,2061,2045,2031,2019,2008,1997,1986,1973,1959,1945,1930,1918,1907,1900,1897,
+1897,1900,1905,1911,1916,1918,1917,1913,1907,1900,1893,1889,1890,1898,1913,1935,1963,1995,2028,2060,2086,
+2106,2118,2121,2115,2102,2085,2066,2046,2029,2015,2005,1998,1995,1994,1993,1992,1991,1989,1988,1989,1991,
+1995,2002,2009,2015,2018,2012,1997,1968,1924,1865,1793,1711,1622,1532,1447,1371,1308,1262,1233,1221,1222,
+1235,1255,1279,1304,1326,1346,1362,1377,1391,1405,1422,1441,1462,1484,1506,1526,1541,1551,1555,1552,1543,
+1530,1514,1497,1481,1467,1456,1448,1441,1435,1428,1418,1405,1388,1368,1346,1321,1297,1274,1253,1234,1219,
+1205,1193,1180,1166,1149,1130,1107,1081,1053,1024,996,969,944,921,900,881,862,842,820,796,768,
+737,704,669,634,601,571,545,525,509,499,492,488,486,482,477,469,456,439,417,391,362,
+331,298,265,231,198,167,136,106,78,50,22,-6,-35,-66,-100,-135,-174,-216,-261,-309,-358,
+-409,-460,-510,-558,-604,-646,-685,-721,-755,-789,-822,-857,-894,-935,-979,-1026,-1076,-1128,-1180,-1232,-1283,
+-1331,-1376,-1419,-1461,-1501,-1541,-1582,-1625,-1669,-1714,-1761,-1809,-1856,-1903,-1948,-1991,-2033,-2075,-2116,-2160,-2206,
+-2256,-2311,-2370,-2433,-2498,-2564,-2629,-2690,-2744,-2791,-2828,-2855,-2872,-2881,-2882,-2879,-2872,-2866,-2861,-2860,-2864,
+-2873,-2888,-2908,-2933,-2960,-2988,-3016,-3043,-3068,-3089,-3108,-3124,-3137,-3149,-3161,-3172,-3184,-3197,-3211,-3225,-3239,
+-3253,-3266,-3277,-3286,-3294,-3300,-3306,-3312,-3320,-3330,-3344,-3361,-3382,-3406,-3432,-3459,-3486,-3512,-3537,-3560,-3582,
+-3604,-3628,-3655,-3687,-3723,-3764,-3809,-3856,-3902,-3942,-3975,-3996,-4003,-3996,-3976,-3944,-3904,-3861,-3820,-3786,-3764,
+-3756,-3764,-3788,-3824,-3871,-3924,-3977,-4028,-4072,-4108,-4134,-4151,-4162,-4168,-4173,-4178,-4187,-4199,-4216,-4237,-4260,
+-4285,-4310,-4334,-4358,-4381,-4405,-4432,-4463,-4501,-4546,-4598,-4656,-4719,-4784,-4847,-4906,-4957,-4998,-5026,-5042,-5045,
+-5037,-5020,-4997,-4970,-4944,-4920,-4901,-4889,-4884,-4887,-4898,-4915,-4938,-4964,-4994,-5024,-5055,-5085,-5113,-5140,-5165,
+-5188,-5211,-5233,-5256,-5279,-5303,-5329,-5356,-5385,-5415,-5446,-5477,-5508,-5539,-5569,-5597,-5623,-5646,-5666,-5681,-5693,
+-5701,-5706,-5708,-5709,-5710,-5711,-5715,-5721,-5730,-5742,-5757,-5773,-5790,-5805,-5819,-5829,-5835,-5838,-5839,-5836,-5833,
+-5830,-5827,-5824,-5823,-5821,-5818,-5812,-5802,-5787,-5767,-5739,-5706,-5669,-5628,-5585,-5544,-5506,-5474,-5448,-5430,-5420,
+-5417,-5421,-5429,-5439,-5448,-5455,-5456,-5451,-5438,-5416,-5389,-5357,-5323,-5294,-5271,-5260,-5264,-5284,-5323,-5377,-5445,
+-5521,-5601,-5676,-5743,-5795,-5830,-5845,-5841,-5822,-5791,-5753,-5714,-5681,-5656,-5643,-5643,-5655,-5677,-5705,-5736,-5765,
+-5789,-5806,-5814,-5814,-5806,-5794,-5779,-5764,-5753,-5748,-5749,-5758,-5774,-5798,-5827,-5860,-5896,-5933,-5970,-6004,-6036,
+-6064,-6088,-6108,-6123,-6135,-6143,-6148,-6151,-6151,-6149,-6147,-6143,-6139,-6135,-6131,-6128,-6126,-6126,-6129,-6134,-6142,
+-6154,-6169,-6187,-6207,-6229,-6252,-6274,-6296,-6317,-6336,-6353,-6370,-6386,-6403,-6420,-6439,-6459,-6480,-6502,-6522,-6541,
+-6557,-6569,-6577,-6581,-6581,-6577,-6572,-6565,-6559,-6554,-6551,-6550,-6551,-6553,-6556,-6559,-6562,-6562,-6561,-6558,-6554,
+-6550,-6545,-6540,-6537,-6535,-6534,-6534,-6534,-6535,-6535,-6533,-6531,-6526,-6521,-6514,-6506,-6499,-6491,-6484,-6478,-6473,
+-6468,-6464,-6459,-6455,-6450,-6445,-6440,-6434,-6428,-6423,-6418,-6413,-6408,-6404,-6399,-6393,-6387,-6380,-6372,-6364,-6355,
+-6345,-6336,-6327,-6319,-6311,-6304,-6298,-6292,-6286,-6279,-6272,-6264,-6254,-6244,-6232,-6220,-6208,-6196,-6184,-6173,-6163,
+-6154,-6146,-6138,-6131,-6124,-6117,-6109,-6101,-6092,-6082,-6072,-6060,-6047,-6033,-6018,-6002,-5984,-5965,-5944,-5922,-5899,
+-5875,-5851,-5828,-5806,-5785,-5766,-5750,-5736,-5725,-5714,-5705,-5695,-5685,-5673,-5659,-5644,-5626,-5608,-5588,-5569,-5551,
+-5535,-5520,-5508,-5497,-5487,-5476,-5465,-5452,-5437,-5418,-5398,-5374,-5350,-5325,-5301,-5279,-5259,-5241,-5225,-5212,-5199,
+-5186,-5171,-5154,-5134,-5112,-5087,-5061,-5034,-5009,-4985,-4965,-4947,-4933,-4921,-4910,-4899,-4886,-4870,-4849,-4824,-4795,
+-4763,-4728,-4693,-4659,-4627,-4598,-4572,-4550,-4528,-4507,-4485,-4459,-4430,-4396,-4358,-4317,-4275,-4235,-4198,-4166,-4141,
+-4124,-4114,-4110,-4111,-4113,-4114,-4112,-4105,-4092,-4072,-4046,-4015,-3981,-3945,-3910,-3876,-3845,-3815,-3788,-3762,-3736,
+-3710,-3683,-3655,-3626,-3598,-3572,-3547,-3527,-3511,-3500,-3493,-3490,-3489,-3488,-3488,-3485,-3479,-3471,-3460,-3446,-3431,
+-3415,-3399,-3384,-3370,-3359,-3349,-3340,-3333,-3327,-3321,-3316,-3311,-3307,-3303,-3299,-3296,-3292,-3287,-3281,-3273,-3264,
+-3252,-3238,-3222,-3204,-3185,-3165,-3144,-3123,-3101,-3079,-3055,-3032,-3007,-2983,-2958,-2933,-2908,-2884,-2861,-2838,-2815,
+-2792,-2768,-2743,-2715,-2684,-2652,-2617,-2583,-2549,-2517,-2489,-2466,-2448,-2435,-2425,-2419,-2413,-2407,-2398,-2387,-2372,
+-2354,-2334,-2312,-2292,-2273,-2258,-2247,-2239,-2234,-2230,-2227,-2222,-2216,-2208,-2198,-2187,-2178,-2171,-2169,-2172,-2181,
+-2195,-2211,-2228,-2242,-2250,-2248,-2235,-2210,-2173,-2125,-2071,-2014,-1958,-1906,-1862,-1829,-1806,-1793,-1787,-1787,-1788,
+-1789,-1785,-1777,-1762,-1742,-1718,-1693,-1668,-1647,-1630,-1619,-1614,-1613,-1614,-1616,-1616,-1613,-1604,-1590,-1572,-1550,
+-1526,-1503,-1483,-1466,-1454,-1448,-1445,-1445,-1446,-1446,-1442,-1434,-1420,-1400,-1374,-1345,-1313,-1280,-1249,-1220,-1194,
+-1173,-1155,-1139,-1126,-1114,-1100,-1085,-1068,-1047,-1023,-996,-967,-936,-903,-871,-839,-808,-777,-746,-716,-684,
+-651,-615,-575,-532,-485,-435,-383,-330,-277,-227,-181,-140,-106,-77,-55,-36,-20,-5,10,29,51,
+77,107,140,173,206,238,267,292,314,332,348,361,372,381,387,389,385,373,352,320,277,
+224,162,93,22,-49,-115,-176,-226,-267,-297,-317,-331,-338,-343,-347,-351,-356,-363,-370,-377,-382,
+-385,-384,-378,-369,-356,-340,-324,-307,-292,-277,-265,-255,-245,-237,-228,-219,-209,-198,-185,-173,-160,
+-148,-137,-128,-120,-114,-110,-107,-105,-103,-101,-99,-96,-94,-92,-91,-90,-91,-93,-97,-103,-109,
+-117,-125,-134,-142,-151,-159,-166,-174,-182,-190,-199,-209,-220,-231,-244,-257,-270,-283,-295,-307,-317,
+-327,-335,-343,-349,-355,-360,-364,-369,-373,-376,-380,-382,-384,-386,-387,-387,-387,-387,-386,-385,-384,
+-383,-381,-378,-374,-369,-363,-356,-348,-339,-329,-319,-309,-300,-291,-283,-277,-272,-267,-263,-260,-258,
+-255,-252,-248,-244,-240,-234,-228,-221,-214,-206,-198,-190,-182,-176,-171,-167,-164,-164,-164,-166,-168,
+-171,-173,-175,-175,-174,-172,-168,-163,-156,-148,-139,-127,-114,-100,-83,-64,-44,-23,-2,18,38,
+56,73,89,104,119,137,157,183,215,252,296,346,399,455,509,561,608,648,680,704,720,
+729,733,734,733,732,732,734,738,744,751,758,766,774,780,786,791,796,801,806,813,821,
+832,846,864,886,914,946,985,1029,1078,1133,1190,1249,1308,1365,1416,1460,1496,1521,1535,1540,1534,
+1521,1501,1478,1453,1428,1406,1387,1373,1364,1359,1357,1359,1364,1369,1376,1382,1387,1393,1398,1402,1408,
+1310,1326,1343,1363,1384,1407,1431,1457,1483,1510,1536,1561,1586,1609,1632,1654,1675,1697,1720,1742,1765,
+1788,1809,1828,1843,1854,1859,1859,1853,1842,1828,1812,1796,1781,1770,1763,1761,1763,1770,1779,1791,1802,
+1813,1822,1829,1835,1840,1845,1850,1857,1867,1878,1891,1905,1918,1929,1936,1940,1940,1937,1931,1924,1919,
+1917,1919,1925,1936,1950,1966,1982,1997,2007,2013,2014,2010,2003,1994,1987,1981,1978,1979,1982,1986,1989,
+1989,1984,1974,1957,1937,1916,1898,1886,1886,1899,1927,1970,2026,2089,2155,2218,2271,2309,2330,2332,2315,
+2284,2242,2196,2150,2110,2079,2059,2051,2051,2059,2070,2080,2087,2088,2084,2075,2062,2049,2037,2030,2029,
+2035,2047,2066,2088,2111,2133,2152,2166,2175,2179,2179,2175,2169,2163,2157,2152,2148,2146,2145,2145,2145,
+2147,2150,2155,2162,2172,2186,2204,2224,2247,2272,2295,2317,2336,2350,2358,2361,2358,2351,2339,2325,2308,
+2291,2273,2254,2236,2218,2201,2183,2166,2150,2136,2122,2112,2103,2098,2096,2097,2100,2105,2112,2120,2127,
+2135,2142,2148,2153,2156,2159,2160,2159,2156,2152,2145,2136,2125,2112,2098,2083,2068,2052,2038,2024,2010,
+1997,1985,1972,1958,1945,1931,1918,1906,1896,1889,1885,1884,1887,1891,1897,1903,1906,1907,1904,1898,1889,
+1878,1869,1864,1863,1871,1887,1912,1944,1983,2023,2064,2100,2129,2148,2158,2156,2146,2129,2108,2086,2065,
+2049,2036,2029,2027,2027,2030,2032,2033,2032,2029,2025,2021,2017,2014,2013,2012,2010,2004,1992,1970,1937,
+1891,1832,1761,1681,1595,1510,1428,1356,1296,1252,1224,1212,1215,1229,1251,1278,1308,1338,1366,1393,1419,
+1443,1468,1491,1515,1536,1555,1570,1578,1579,1571,1556,1533,1504,1473,1440,1410,1384,1362,1347,1336,1329,
+1324,1319,1311,1300,1285,1266,1244,1220,1195,1172,1151,1134,1120,1109,1100,1092,1083,1071,1057,1040,1019,
+996,972,948,924,903,883,866,849,832,814,793,769,741,710,675,640,604,571,542,518,499,
+486,479,475,473,471,467,460,447,429,405,375,341,303,263,223,183,145,109,76,47,20,
+-4,-26,-48,-71,-94,-119,-147,-179,-215,-255,-299,-346,-396,-448,-500,-551,-600,-646,-687,-725,-759,
+-791,-820,-849,-880,-912,-948,-987,-1029,-1075,-1123,-1172,-1221,-1270,-1317,-1363,-1406,-1449,-1491,-1533,-1575,-1618,
+-1661,-1706,-1751,-1796,-1839,-1882,-1923,-1962,-2001,-2040,-2080,-2122,-2168,-2218,-2273,-2333,-2396,-2462,-2529,-2594,-2655,
+-2711,-2759,-2798,-2828,-2849,-2861,-2866,-2866,-2862,-2857,-2852,-2849,-2850,-2854,-2864,-2878,-2896,-2917,-2941,-2965,-2989,
+-3012,-3033,-3052,-3069,-3084,-3097,-3111,-3125,-3140,-3156,-3174,-3194,-3215,-3236,-3258,-3278,-3296,-3313,-3328,-3341,-3354,
+-3368,-3383,-3402,-3423,-3447,-3475,-3505,-3536,-3567,-3596,-3622,-3646,-3667,-3687,-3706,-3726,-3749,-3776,-3808,-3844,-3883,
+-3922,-3960,-3992,-4016,-4029,-4029,-4017,-3993,-3961,-3925,-3888,-3858,-3837,-3829,-3838,-3863,-3903,-3955,-4017,-4082,-4146,
+-4206,-4257,-4296,-4324,-4341,-4348,-4347,-4340,-4332,-4324,-4317,-4314,-4316,-4322,-4333,-4349,-4369,-4393,-4422,-4456,-4495,
+-4538,-4586,-4637,-4690,-4742,-4793,-4840,-4881,-4914,-4939,-4954,-4961,-4961,-4954,-4944,-4931,-4919,-4908,-4901,-4897,-4899,
+-4905,-4916,-4930,-4948,-4968,-4990,-5013,-5038,-5063,-5089,-5115,-5141,-5168,-5196,-5225,-5253,-5283,-5312,-5342,-5372,-5402,
+-5431,-5461,-5489,-5518,-5545,-5571,-5596,-5619,-5641,-5661,-5678,-5693,-5705,-5715,-5722,-5728,-5732,-5735,-5738,-5742,-5746,
+-5751,-5758,-5765,-5774,-5783,-5792,-5801,-5810,-5818,-5826,-5833,-5840,-5846,-5851,-5856,-5859,-5860,-5858,-5853,-5844,-5830,
+-5812,-5788,-5761,-5729,-5694,-5657,-5618,-5579,-5541,-5504,-5470,-5437,-5406,-5378,-5351,-5325,-5300,-5275,-5249,-5222,-5194,
+-5165,-5138,-5113,-5092,-5078,-5073,-5080,-5101,-5138,-5189,-5255,-5333,-5418,-5507,-5594,-5675,-5743,-5797,-5832,-5850,-5851,
+-5837,-5813,-5783,-5752,-5724,-5703,-5691,-5689,-5697,-5712,-5732,-5755,-5777,-5797,-5812,-5821,-5826,-5827,-5825,-5821,-5819,
+-5819,-5823,-5830,-5842,-5857,-5876,-5897,-5919,-5941,-5963,-5983,-6002,-6018,-6033,-6045,-6055,-6063,-6070,-6074,-6077,-6079,
+-6081,-6082,-6082,-6084,-6086,-6089,-6093,-6100,-6108,-6119,-6132,-6147,-6163,-6182,-6203,-6224,-6246,-6268,-6289,-6309,-6329,
+-6347,-6363,-6379,-6393,-6407,-6422,-6436,-6452,-6467,-6484,-6500,-6516,-6531,-6544,-6555,-6563,-6569,-6572,-6573,-6574,-6573,
+-6572,-6572,-6572,-6573,-6574,-6576,-6576,-6576,-6575,-6572,-6568,-6563,-6557,-6552,-6547,-6543,-6541,-6539,-6539,-6540,-6540,
+-6540,-6539,-6537,-6533,-6527,-6521,-6514,-6506,-6499,-6493,-6489,-6485,-6482,-6480,-6478,-6475,-6472,-6468,-6462,-6455,-6448,
+-6440,-6432,-6424,-6417,-6411,-6406,-6402,-6398,-6394,-6389,-6384,-6379,-6372,-6364,-6356,-6347,-6339,-6330,-6322,-6314,-6307,
+-6300,-6293,-6286,-6279,-6272,-6264,-6255,-6246,-6237,-6227,-6217,-6208,-6198,-6189,-6179,-6169,-6159,-6148,-6137,-6125,-6112,
+-6099,-6085,-6071,-6057,-6042,-6027,-6012,-5995,-5978,-5960,-5941,-5921,-5900,-5879,-5857,-5837,-5818,-5801,-5785,-5772,-5760,
+-5750,-5740,-5730,-5720,-5707,-5693,-5676,-5657,-5637,-5616,-5595,-5576,-5558,-5543,-5531,-5521,-5512,-5505,-5498,-5489,-5477,
+-5463,-5445,-5425,-5401,-5376,-5350,-5324,-5299,-5277,-5257,-5238,-5222,-5207,-5192,-5177,-5161,-5144,-5125,-5105,-5085,-5065,
+-5045,-5027,-5010,-4994,-4978,-4962,-4944,-4923,-4899,-4870,-4836,-4799,-4759,-4717,-4675,-4635,-4598,-4565,-4536,-4511,-4488,
+-4467,-4445,-4420,-4392,-4358,-4320,-4276,-4230,-4182,-4136,-4094,-4058,-4029,-4009,-3997,-3992,-3993,-3997,-4001,-4004,-4002,
+-3996,-3984,-3966,-3944,-3918,-3891,-3864,-3839,-3816,-3795,-3777,-3761,-3746,-3732,-3716,-3700,-3682,-3663,-3644,-3624,-3606,
+-3589,-3575,-3563,-3554,-3548,-3543,-3540,-3537,-3533,-3529,-3522,-3514,-3505,-3493,-3481,-3467,-3454,-3440,-3427,-3414,-3403,
+-3392,-3382,-3373,-3364,-3356,-3347,-3337,-3326,-3314,-3301,-3286,-3270,-3253,-3237,-3221,-3207,-3193,-3181,-3170,-3159,-3148,
+-3136,-3121,-3103,-3081,-3056,-3028,-2997,-2965,-2933,-2902,-2872,-2844,-2818,-2792,-2768,-2742,-2715,-2687,-2657,-2626,-2594,
+-2564,-2536,-2513,-2493,-2479,-2470,-2464,-2459,-2454,-2447,-2436,-2420,-2400,-2375,-2347,-2320,-2293,-2271,-2255,-2244,-2240,
+-2240,-2243,-2246,-2248,-2245,-2237,-2224,-2205,-2183,-2160,-2138,-2120,-2106,-2099,-2096,-2097,-2099,-2100,-2096,-2085,-2066,
+-2038,-2003,-1962,-1920,-1878,-1842,-1812,-1792,-1783,-1782,-1789,-1800,-1812,-1823,-1829,-1828,-1821,-1808,-1789,-1768,-1746,
+-1726,-1710,-1699,-1693,-1691,-1691,-1693,-1693,-1691,-1685,-1674,-1659,-1641,-1621,-1601,-1582,-1566,-1552,-1541,-1533,-1525,
+-1516,-1506,-1493,-1476,-1454,-1429,-1402,-1373,-1343,-1316,-1290,-1268,-1248,-1232,-1217,-1203,-1189,-1174,-1157,-1138,-1116,
+-1091,-1066,-1039,-1011,-985,-959,-934,-909,-886,-862,-837,-811,-782,-749,-713,-673,-628,-581,-532,-482,-432,
+-384,-340,-299,-263,-231,-203,-179,-156,-133,-110,-84,-55,-24,9,45,80,115,147,175,198,217,
+231,242,250,256,261,265,267,265,259,246,225,193,151,99,38,-29,-100,-171,-238,-298,-349,
+-388,-417,-434,-443,-445,-443,-440,-437,-436,-438,-442,-447,-452,-457,-458,-457,-451,-441,-428,-413,-396,
+-378,-361,-346,-331,-318,-306,-295,-283,-272,-259,-247,-234,-221,-209,-199,-190,-182,-176,-172,-168,-165,
+-161,-157,-152,-147,-141,-135,-130,-127,-125,-125,-127,-132,-138,-145,-153,-160,-168,-174,-180,-186,-191,
+-197,-204,-212,-222,-234,-248,-263,-278,-294,-309,-324,-337,-348,-358,-367,-375,-383,-390,-398,-406,-414,
+-423,-431,-439,-446,-452,-456,-459,-461,-461,-459,-457,-454,-450,-445,-439,-432,-424,-416,-405,-394,-382,
+-370,-357,-344,-331,-319,-308,-298,-290,-282,-275,-268,-262,-256,-251,-246,-241,-236,-232,-227,-223,-218,
+-214,-209,-203,-198,-193,-188,-184,-182,-180,-181,-183,-187,-191,-196,-200,-203,-204,-203,-198,-191,-181,
+-167,-151,-133,-113,-92,-69,-46,-22,1,25,48,71,92,112,132,151,169,188,208,230,256,
+286,319,357,398,442,486,529,569,604,633,656,671,680,684,685,683,682,682,684,690,698,
+709,722,734,746,756,762,765,766,764,761,758,757,759,766,779,799,826,860,901,948,999,
+1054,1110,1167,1223,1276,1326,1369,1406,1436,1457,1470,1474,1470,1459,1442,1420,1394,1367,1339,1313,1290,
+1270,1254,1243,1237,1234,1236,1241,1248,1258,1269,1281,1295,1310,1237,1263,1291,1320,1350,1380,1411,1441,
+1470,1497,1523,1546,1567,1586,1603,1619,1634,1649,1664,1679,1695,1711,1726,1740,1751,1760,1764,1766,1764,
+1760,1754,1747,1742,1738,1738,1741,1747,1757,1768,1780,1792,1802,1811,1817,1822,1826,1829,1834,1840,1849,
+1860,1875,1890,1906,1921,1932,1940,1944,1942,1937,1930,1921,1914,1910,1911,1917,1929,1945,1965,1986,2005,
+2022,2035,2042,2043,2040,2032,2023,2012,2002,1992,1984,1976,1968,1958,1945,1930,1913,1893,1874,1856,1843,
+1836,1838,1849,1868,1895,1927,1961,1993,2021,2042,2054,2058,2055,2046,2033,2021,2011,2006,2005,2009,2017,
+2025,2032,2036,2034,2025,2010,1989,1965,1940,1918,1900,1890,1887,1893,1907,1925,1946,1967,1985,1999,2007,
+2009,2005,1998,1987,1975,1964,1954,1947,1942,1939,1939,1940,1943,1946,1952,1959,1968,1981,1998,2019,2043,
+2070,2099,2129,2157,2183,2204,2219,2229,2233,2231,2224,2214,2202,2188,2175,2162,2150,2140,2131,2123,2116,
+2110,2104,2098,2092,2087,2081,2074,2068,2061,2054,2047,2039,2031,2023,2015,2008,2002,1997,1994,1993,1994,
+1996,1999,2003,2006,2008,2009,2009,2006,2002,1995,1986,1976,1964,1950,1936,1922,1908,1895,1883,1874,1867,
+1863,1862,1864,1869,1875,1880,1885,1887,1887,1882,1875,1865,1854,1844,1838,1837,1845,1861,1886,1920,1961,
+2006,2052,2095,2132,2160,2178,2184,2181,2169,2150,2129,2107,2088,2073,2063,2059,2059,2062,2067,2071,2073,
+2072,2069,2062,2054,2045,2035,2025,2015,2003,1988,1968,1940,1904,1857,1800,1734,1661,1583,1506,1432,1366,
+1311,1268,1239,1225,1224,1234,1254,1282,1314,1350,1388,1427,1467,1506,1544,1579,1610,1635,1653,1660,1657,
+1642,1615,1578,1533,1482,1430,1379,1332,1292,1260,1237,1221,1211,1205,1200,1193,1185,1172,1155,1135,1113,
+1091,1069,1050,1035,1022,1013,1006,1000,994,986,975,961,945,927,907,887,868,851,835,820,805,
+790,773,753,729,701,669,635,599,563,529,500,476,457,444,436,432,429,426,420,410,395,
+373,346,312,273,231,187,142,98,57,18,-16,-47,-74,-99,-121,-141,-162,-183,-206,-231,-260,
+-293,-330,-371,-415,-462,-511,-560,-608,-654,-697,-736,-772,-805,-835,-863,-891,-919,-950,-983,-1019,-1057,
+-1099,-1142,-1187,-1233,-1278,-1323,-1367,-1411,-1455,-1498,-1543,-1588,-1633,-1679,-1725,-1771,-1815,-1858,-1898,-1936,-1973,
+-2008,-2043,-2079,-2117,-2159,-2205,-2256,-2312,-2372,-2434,-2498,-2561,-2621,-2677,-2726,-2769,-2803,-2830,-2848,-2860,-2866,
+-2868,-2866,-2864,-2861,-2860,-2862,-2866,-2874,-2886,-2900,-2917,-2936,-2956,-2975,-2994,-3012,-3028,-3043,-3057,-3071,-3086,
+-3102,-3120,-3140,-3163,-3189,-3217,-3246,-3275,-3304,-3332,-3358,-3383,-3407,-3430,-3454,-3479,-3505,-3534,-3565,-3597,-3629,
+-3661,-3691,-3719,-3743,-3764,-3783,-3799,-3816,-3834,-3855,-3880,-3908,-3940,-3972,-4004,-4033,-4055,-4068,-4070,-4061,-4042,
+-4014,-3982,-3950,-3922,-3903,-3898,-3908,-3936,-3981,-4040,-4111,-4189,-4267,-4342,-4408,-4461,-4499,-4522,-4529,-4521,-4503,
+-4477,-4447,-4417,-4390,-4369,-4356,-4352,-4358,-4375,-4401,-4435,-4477,-4524,-4574,-4625,-4676,-4724,-4767,-4804,-4835,-4858,
+-4874,-4883,-4886,-4885,-4881,-4877,-4873,-4870,-4871,-4875,-4883,-4894,-4907,-4923,-4941,-4959,-4978,-4996,-5015,-5034,-5054,
+-5075,-5097,-5121,-5147,-5175,-5205,-5237,-5270,-5304,-5338,-5372,-5406,-5438,-5469,-5499,-5527,-5554,-5579,-5603,-5626,-5647,
+-5666,-5684,-5700,-5715,-5728,-5740,-5750,-5758,-5764,-5770,-5774,-5777,-5779,-5781,-5784,-5787,-5791,-5797,-5804,-5813,-5824,
+-5836,-5850,-5864,-5879,-5893,-5904,-5913,-5919,-5920,-5916,-5908,-5895,-5878,-5857,-5833,-5808,-5780,-5752,-5723,-5692,-5660,
+-5625,-5586,-5544,-5497,-5445,-5387,-5325,-5259,-5190,-5121,-5053,-4989,-4931,-4882,-4844,-4820,-4811,-4819,-4844,-4887,-4947,
+-5023,-5112,-5210,-5315,-5420,-5522,-5616,-5698,-5765,-5815,-5847,-5862,-5862,-5850,-5830,-5805,-5780,-5758,-5741,-5732,-5729,
+-5734,-5743,-5757,-5773,-5788,-5803,-5815,-5825,-5832,-5838,-5843,-5848,-5855,-5863,-5874,-5886,-5900,-5914,-5929,-5943,-5957,
+-5968,-5978,-5987,-5993,-5999,-6003,-6007,-6009,-6012,-6014,-6015,-6017,-6019,-6022,-6026,-6032,-6039,-6049,-6061,-6076,-6093,
+-6113,-6134,-6157,-6180,-6204,-6227,-6250,-6272,-6292,-6312,-6329,-6346,-6362,-6376,-6390,-6403,-6416,-6428,-6440,-6452,-6463,
+-6474,-6484,-6494,-6503,-6511,-6519,-6526,-6532,-6539,-6545,-6552,-6558,-6565,-6572,-6579,-6585,-6590,-6594,-6597,-6597,-6595,
+-6591,-6586,-6580,-6573,-6567,-6561,-6557,-6554,-6552,-6552,-6553,-6554,-6554,-6553,-6550,-6546,-6540,-6532,-6523,-6515,-6506,
+-6499,-6493,-6488,-6485,-6483,-6482,-6481,-6479,-6476,-6472,-6465,-6457,-6448,-6439,-6429,-6420,-6413,-6406,-6402,-6399,-6397,
+-6396,-6395,-6394,-6391,-6388,-6383,-6376,-6368,-6360,-6350,-6341,-6332,-6323,-6314,-6307,-6299,-6291,-6284,-6276,-6268,-6260,
+-6251,-6242,-6232,-6222,-6211,-6201,-6190,-6179,-6167,-6155,-6143,-6130,-6117,-6103,-6089,-6074,-6059,-6043,-6026,-6009,-5990,
+-5971,-5952,-5931,-5910,-5890,-5870,-5851,-5834,-5818,-5805,-5793,-5783,-5773,-5765,-5756,-5746,-5734,-5720,-5705,-5687,-5668,
+-5648,-5628,-5609,-5592,-5577,-5565,-5555,-5547,-5540,-5534,-5526,-5517,-5504,-5489,-5470,-5447,-5422,-5394,-5365,-5337,-5309,
+-5282,-5258,-5236,-5217,-5199,-5184,-5171,-5158,-5146,-5135,-5124,-5112,-5100,-5087,-5071,-5054,-5033,-5008,-4979,-4945,-4907,
+-4864,-4818,-4769,-4720,-4672,-4626,-4584,-4548,-4516,-4489,-4467,-4447,-4428,-4408,-4384,-4356,-4322,-4282,-4236,-4187,-4135,
+-4084,-4035,-3992,-3956,-3928,-3908,-3897,-3893,-3894,-3898,-3903,-3907,-3908,-3904,-3897,-3885,-3870,-3852,-3834,-3817,-3801,
+-3788,-3777,-3769,-3764,-3759,-3755,-3750,-3744,-3736,-3725,-3713,-3699,-3685,-3670,-3656,-3645,-3635,-3628,-3623,-3620,-3619,
+-3619,-3618,-3617,-3614,-3608,-3600,-3588,-3574,-3557,-3538,-3517,-3496,-3475,-3455,-3436,-3417,-3400,-3382,-3365,-3348,-3329,
+-3309,-3289,-3267,-3245,-3224,-3204,-3187,-3173,-3161,-3153,-3147,-3142,-3137,-3130,-3120,-3105,-3086,-3063,-3035,-3003,-2970,
+-2937,-2904,-2873,-2844,-2818,-2794,-2770,-2747,-2722,-2696,-2669,-2640,-2610,-2581,-2555,-2532,-2513,-2498,-2488,-2480,-2473,
+-2465,-2454,-2438,-2417,-2391,-2360,-2326,-2293,-2262,-2235,-2215,-2202,-2197,-2198,-2203,-2209,-2213,-2213,-2207,-2194,-2173,
+-2147,-2116,-2085,-2054,-2026,-2003,-1986,-1972,-1963,-1954,-1945,-1933,-1917,-1897,-1873,-1847,-1821,-1797,-1778,-1765,-1761,
+-1764,-1774,-1789,-1806,-1823,-1836,-1844,-1844,-1838,-1825,-1807,-1786,-1765,-1746,-1731,-1721,-1716,-1716,-1719,-1724,-1729,
+-1733,-1734,-1732,-1727,-1718,-1707,-1695,-1681,-1668,-1653,-1638,-1622,-1605,-1584,-1561,-1534,-1505,-1474,-1442,-1411,-1381,
+-1355,-1332,-1313,-1298,-1285,-1275,-1265,-1254,-1241,-1225,-1206,-1184,-1160,-1134,-1108,-1083,-1059,-1037,-1018,-999,-982,
+-964,-945,-924,-899,-870,-836,-799,-757,-713,-667,-621,-575,-530,-488,-449,-413,-380,-349,-320,-291,-262,
+-232,-201,-167,-132,-96,-59,-24,9,40,67,90,109,125,137,148,158,166,174,181,185,185,
+179,165,140,104,56,-1,-68,-142,-219,-295,-365,-428,-479,-518,-545,-559,-564,-560,-552,-541,-532,
+-524,-519,-518,-519,-522,-525,-527,-526,-522,-515,-504,-491,-475,-458,-441,-424,-409,-394,-380,-366,-353,
+-340,-326,-313,-300,-288,-276,-266,-258,-251,-245,-241,-236,-232,-227,-221,-214,-206,-198,-191,-184,-178,
+-175,-175,-177,-181,-186,-193,-200,-206,-211,-215,-218,-221,-223,-226,-230,-237,-245,-256,-269,-284,-300,
+-317,-332,-347,-360,-372,-382,-391,-399,-407,-416,-425,-434,-445,-455,-465,-475,-483,-489,-493,-496,-496,
+-494,-491,-486,-481,-474,-467,-459,-449,-439,-427,-413,-399,-383,-367,-350,-334,-319,-304,-291,-278,-267,
+-257,-249,-240,-233,-226,-220,-214,-210,-206,-203,-201,-200,-199,-198,-197,-195,-194,-192,-190,-189,-188,
+-188,-190,-194,-199,-204,-210,-216,-219,-220,-217,-211,-200,-185,-166,-143,-119,-93,-66,-38,-12,13,
+39,64,88,112,136,160,185,209,234,260,285,311,338,364,391,418,444,470,494,516,535,
+551,564,573,579,582,584,586,588,591,597,606,619,633,649,666,682,695,706,712,715,714,
+711,707,703,703,706,715,732,755,787,825,869,917,968,1021,1073,1124,1172,1217,1257,1292,1322,
+1347,1365,1379,1386,1387,1382,1371,1355,1334,1309,1282,1254,1227,1201,1178,1159,1146,1137,1134,1137,1144,
+1156,1172,1191,1213,1237,1199,1225,1253,1283,1314,1347,1380,1412,1443,1472,1499,1523,1544,1562,1577,1591,
+1603,1615,1626,1637,1649,1660,1671,1681,1689,1696,1700,1701,1701,1699,1697,1696,1696,1698,1704,1713,1725,
+1739,1754,1769,1784,1797,1808,1816,1822,1827,1832,1837,1844,1853,1865,1878,1893,1907,1921,1932,1939,1943,
+1942,1938,1932,1926,1920,1918,1920,1927,1939,1956,1977,1999,2020,2040,2055,2066,2070,2069,2063,2052,2038,
+2022,2005,1988,1971,1954,1938,1922,1906,1891,1876,1863,1852,1844,1840,1840,1844,1852,1863,1875,1888,1900,
+1909,1917,1921,1925,1927,1931,1936,1945,1956,1972,1989,2006,2022,2033,2039,2036,2025,2006,1980,1949,1916,
+1885,1858,1838,1826,1824,1830,1842,1860,1880,1899,1915,1926,1932,1932,1926,1917,1905,1892,1879,1868,1858,
+1850,1845,1840,1838,1836,1835,1836,1839,1846,1857,1872,1892,1916,1945,1976,2009,2041,2070,2095,2114,2128,
+2135,2137,2133,2126,2116,2105,2095,2086,2078,2073,2069,2067,2066,2065,2064,2063,2060,2056,2050,2042,2033,
+2022,2010,1996,1981,1966,1951,1936,1923,1912,1903,1897,1895,1895,1898,1904,1911,1919,1927,1933,1937,1938,
+1936,1931,1923,1912,1900,1886,1871,1857,1844,1833,1824,1819,1816,1816,1818,1822,1827,1832,1835,1837,1836,
+1832,1825,1817,1807,1799,1793,1792,1797,1809,1830,1858,1893,1932,1974,2014,2052,2083,2106,2121,2126,2123,
+2113,2099,2082,2067,2053,2044,2039,2038,2041,2046,2052,2057,2059,2059,2056,2050,2041,2030,2017,2002,1986,
+1967,1945,1918,1885,1845,1797,1743,1682,1617,1549,1483,1420,1364,1317,1281,1256,1243,1241,1250,1268,1294,
+1326,1363,1404,1448,1493,1538,1581,1620,1654,1679,1693,1696,1685,1661,1625,1578,1522,1462,1400,1341,1287,
+1240,1202,1173,1152,1138,1128,1120,1112,1103,1091,1077,1059,1041,1022,1004,989,976,965,957,951,945,
+938,930,919,906,891,873,855,837,820,804,790,776,763,748,732,712,689,662,631,597,562,
+527,494,464,438,417,401,389,380,373,365,355,341,323,299,270,237,199,158,115,72,30,
+-10,-47,-82,-113,-142,-168,-192,-215,-238,-261,-285,-312,-342,-374,-410,-449,-490,-533,-577,-621,-663,
+-705,-743,-779,-813,-844,-873,-902,-931,-960,-991,-1025,-1060,-1097,-1136,-1177,-1218,-1259,-1300,-1342,-1383,-1425,
+-1468,-1512,-1557,-1604,-1651,-1700,-1748,-1795,-1840,-1884,-1924,-1962,-1997,-2032,-2065,-2100,-2136,-2176,-2220,-2268,-2320,
+-2376,-2434,-2494,-2553,-2610,-2663,-2711,-2753,-2789,-2817,-2839,-2854,-2864,-2869,-2871,-2871,-2871,-2870,-2872,-2875,-2881,
+-2891,-2903,-2918,-2935,-2953,-2972,-2991,-3009,-3026,-3042,-3056,-3070,-3085,-3100,-3118,-3138,-3161,-3188,-3217,-3249,-3283,
+-3318,-3352,-3386,-3418,-3449,-3478,-3507,-3535,-3563,-3592,-3621,-3651,-3682,-3712,-3741,-3768,-3793,-3816,-3836,-3855,-3874,
+-3893,-3914,-3937,-3962,-3990,-4018,-4045,-4069,-4088,-4099,-4101,-4094,-4078,-4054,-4027,-3999,-3974,-3957,-3953,-3963,-3990,
+-4034,-4093,-4164,-4244,-4327,-4408,-4481,-4542,-4588,-4617,-4628,-4622,-4601,-4569,-4531,-4489,-4450,-4416,-4392,-4379,-4379,
+-4392,-4417,-4454,-4499,-4550,-4603,-4657,-4708,-4754,-4793,-4824,-4846,-4861,-4868,-4869,-4866,-4861,-4856,-4853,-4852,-4856,
+-4863,-4875,-4890,-4908,-4928,-4949,-4970,-4990,-5010,-5028,-5045,-5063,-5080,-5099,-5119,-5141,-5166,-5193,-5223,-5255,-5288,
+-5323,-5359,-5394,-5429,-5463,-5496,-5527,-5556,-5583,-5608,-5632,-5653,-5673,-5691,-5708,-5723,-5737,-5750,-5762,-5772,-5781,
+-5788,-5794,-5798,-5802,-5804,-5806,-5808,-5810,-5814,-5820,-5828,-5839,-5852,-5868,-5886,-5904,-5922,-5938,-5950,-5958,-5961,
+-5959,-5950,-5937,-5919,-5898,-5876,-5853,-5831,-5810,-5790,-5770,-5750,-5726,-5699,-5664,-5621,-5568,-5504,-5429,-5344,-5251,
+-5153,-5053,-4956,-4866,-4788,-4724,-4680,-4657,-4657,-4681,-4728,-4796,-4883,-4986,-5099,-5218,-5338,-5454,-5562,-5656,-5736,
+-5798,-5842,-5870,-5881,-5880,-5869,-5852,-5832,-5812,-5796,-5783,-5776,-5774,-5777,-5784,-5793,-5803,-5813,-5822,-5830,-5836,
+-5842,-5848,-5854,-5861,-5869,-5879,-5890,-5902,-5915,-5927,-5939,-5949,-5958,-5965,-5970,-5974,-5977,-5979,-5980,-5981,-5981,
+-5982,-5983,-5984,-5986,-5989,-5994,-6001,-6010,-6023,-6038,-6057,-6079,-6103,-6129,-6156,-6183,-6210,-6235,-6259,-6281,-6300,
+-6318,-6334,-6349,-6363,-6377,-6391,-6405,-6419,-6432,-6444,-6455,-6465,-6472,-6478,-6481,-6484,-6485,-6486,-6488,-6490,-6495,
+-6501,-6510,-6521,-6534,-6549,-6563,-6578,-6590,-6601,-6608,-6612,-6612,-6609,-6603,-6595,-6587,-6579,-6571,-6566,-6562,-6561,
+-6561,-6563,-6566,-6568,-6569,-6568,-6565,-6559,-6551,-6541,-6529,-6517,-6506,-6495,-6487,-6480,-6476,-6473,-6471,-6470,-6469,
+-6467,-6464,-6460,-6454,-6447,-6439,-6431,-6424,-6417,-6412,-6409,-6406,-6405,-6405,-6405,-6404,-6402,-6399,-6394,-6388,-6381,
+-6372,-6363,-6354,-6344,-6335,-6326,-6318,-6309,-6301,-6293,-6284,-6275,-6265,-6255,-6244,-6232,-6221,-6209,-6198,-6188,-6178,
+-6169,-6160,-6151,-6142,-6132,-6121,-6109,-6095,-6078,-6059,-6039,-6016,-5991,-5965,-5939,-5914,-5889,-5867,-5846,-5829,-5814,
+-5802,-5793,-5786,-5781,-5775,-5770,-5763,-5755,-5744,-5732,-5717,-5701,-5685,-5667,-5651,-5635,-5620,-5607,-5595,-5584,-5574,
+-5562,-5550,-5536,-5519,-5499,-5476,-5451,-5422,-5392,-5360,-5328,-5296,-5265,-5237,-5210,-5187,-5167,-5150,-5137,-5128,-5121,
+-5117,-5114,-5111,-5107,-5101,-5090,-5075,-5052,-5023,-4985,-4940,-4889,-4833,-4774,-4714,-4655,-4601,-4552,-4511,-4478,-4452,
+-4433,-4419,-4407,-4395,-4381,-4362,-4336,-4304,-4264,-4219,-4168,-4115,-4063,-4013,-3968,-3929,-3898,-3876,-3860,-3852,-3848,
+-3848,-3849,-3849,-3847,-3842,-3834,-3823,-3809,-3794,-3779,-3764,-3751,-3741,-3733,-3729,-3727,-3727,-3728,-3730,-3732,-3732,
+-3732,-3730,-3726,-3722,-3716,-3711,-3707,-3703,-3701,-3700,-3701,-3703,-3706,-3709,-3710,-3709,-3706,-3698,-3686,-3670,-3649,
+-3624,-3596,-3565,-3534,-3501,-3470,-3440,-3412,-3386,-3361,-3338,-3316,-3294,-3272,-3250,-3228,-3206,-3186,-3167,-3151,-3138,
+-3127,-3119,-3113,-3108,-3103,-3096,-3085,-3071,-3053,-3031,-3005,-2977,-2948,-2919,-2891,-2866,-2843,-2823,-2804,-2786,-2768,
+-2748,-2726,-2701,-2675,-2646,-2618,-2591,-2565,-2543,-2525,-2509,-2496,-2483,-2470,-2453,-2433,-2408,-2377,-2343,-2306,-2268,
+-2232,-2200,-2174,-2154,-2141,-2135,-2132,-2132,-2131,-2128,-2120,-2106,-2087,-2062,-2034,-2004,-1974,-1946,-1922,-1901,-1885,
+-1871,-1860,-1849,-1838,-1826,-1812,-1797,-1782,-1768,-1756,-1748,-1746,-1748,-1755,-1765,-1777,-1788,-1796,-1799,-1796,-1787,
+-1771,-1751,-1727,-1704,-1682,-1664,-1652,-1646,-1646,-1653,-1664,-1678,-1693,-1708,-1721,-1731,-1738,-1741,-1741,-1738,-1731,
+-1721,-1708,-1691,-1669,-1644,-1614,-1580,-1543,-1504,-1464,-1425,-1390,-1359,-1333,-1313,-1298,-1288,-1282,-1276,-1271,-1264,
+-1254,-1240,-1222,-1202,-1179,-1154,-1130,-1106,-1085,-1065,-1047,-1031,-1014,-996,-977,-954,-927,-897,-863,-826,-786,
+-746,-706,-667,-629,-594,-561,-529,-499,-469,-439,-408,-374,-339,-303,-265,-226,-188,-151,-116,-85,-57,
+-33,-13,3,17,30,43,55,68,82,94,105,112,113,106,89,61,20,-32,-94,-165,-241,
+-318,-393,-461,-521,-570,-607,-631,-644,-648,-645,-638,-628,-619,-612,-607,-604,-604,-605,-605,-604,-601,
+-595,-587,-575,-562,-547,-531,-515,-500,-485,-471,-458,-445,-431,-418,-404,-390,-376,-363,-350,-340,-330,
+-323,-317,-312,-308,-303,-298,-293,-286,-278,-270,-262,-255,-249,-246,-244,-245,-248,-251,-256,-260,-264,
+-266,-268,-268,-268,-267,-268,-270,-274,-280,-288,-299,-311,-324,-338,-350,-362,-372,-381,-389,-397,-404,
+-411,-419,-427,-436,-446,-455,-464,-472,-477,-481,-483,-482,-479,-476,-470,-465,-458,-451,-443,-435,-425,
+-413,-400,-385,-368,-350,-330,-310,-290,-271,-253,-237,-222,-209,-198,-188,-179,-172,-165,-160,-156,-153,
+-152,-152,-154,-157,-161,-165,-169,-173,-177,-179,-181,-183,-185,-187,-190,-194,-199,-204,-209,-213,-215,
+-214,-209,-199,-185,-167,-144,-119,-92,-64,-36,-10,15,38,60,81,103,124,148,172,199,227,
+257,287,317,345,371,394,413,428,439,446,451,452,452,451,449,449,449,451,456,464,475,
+489,506,526,547,570,592,613,632,648,661,669,674,675,675,674,675,678,684,696,714,738,
+768,803,843,886,930,976,1020,1063,1104,1142,1178,1210,1239,1265,1287,1306,1320,1330,1335,1334,1328,
+1316,1300,1279,1256,1232,1207,1183,1162,1145,1132,1124,1121,1123,1130,1141,1157,1176,1199,1152,1163,1179,
+1198,1222,1250,1281,1313,1346,1379,1410,1438,1463,1484,1502,1517,1529,1539,1548,1557,1565,1574,1583,1592,
+1600,1607,1614,1619,1623,1626,1629,1632,1636,1642,1650,1660,1672,1686,1701,1717,1732,1745,1757,1767,1775,
+1782,1788,1795,1801,1810,1819,1830,1842,1855,1866,1877,1885,1891,1894,1894,1894,1892,1892,1892,1896,1903,
+1913,1927,1943,1961,1978,1995,2009,2019,2025,2027,2024,2017,2007,1994,1979,1963,1946,1930,1913,1898,1884,
+1871,1860,1851,1845,1842,1842,1844,1848,1854,1861,1867,1873,1878,1881,1884,1886,1889,1893,1900,1910,1923,
+1940,1958,1977,1995,2008,2017,2018,2012,1998,1976,1949,1920,1889,1861,1838,1822,1813,1811,1817,1829,1844,
+1860,1876,1889,1899,1905,1906,1903,1897,1889,1880,1871,1862,1854,1846,1839,1831,1823,1816,1809,1803,1800,
+1801,1806,1816,1832,1852,1878,1906,1936,1965,1993,2016,2035,2048,2055,2056,2054,2048,2041,2033,2026,2020,
+2016,2014,2014,2016,2017,2018,2018,2017,2014,2009,2001,1991,1980,1966,1952,1937,1921,1906,1891,1878,1867,
+1857,1851,1848,1847,1850,1855,1862,1870,1878,1885,1890,1893,1893,1889,1883,1873,1861,1847,1833,1819,1805,
+1793,1782,1775,1769,1766,1764,1764,1764,1765,1765,1764,1763,1759,1754,1749,1743,1738,1734,1733,1735,1741,
+1752,1768,1787,1810,1835,1860,1884,1905,1923,1936,1944,1947,1946,1941,1935,1929,1923,1919,1918,1919,1922,
+1927,1933,1939,1944,1948,1950,1949,1946,1941,1933,1923,1909,1892,1871,1845,1813,1775,1730,1680,1625,1567,
+1507,1449,1393,1343,1301,1267,1243,1228,1223,1227,1239,1257,1280,1307,1337,1370,1404,1438,1471,1502,1530,
+1553,1569,1576,1574,1562,1540,1507,1467,1421,1371,1320,1271,1225,1185,1152,1125,1104,1088,1075,1064,1053,
+1042,1029,1015,1000,984,969,956,944,934,926,919,913,907,899,890,879,865,850,834,817,801,
+785,771,757,745,732,719,704,686,665,640,613,583,551,520,490,461,436,414,395,379,364,
+351,336,319,300,276,249,217,182,144,104,63,22,-17,-55,-91,-124,-155,-184,-211,-237,-262,
+-288,-314,-341,-370,-401,-435,-471,-508,-547,-587,-626,-665,-703,-739,-773,-805,-835,-865,-894,-923,-954,
+-985,-1019,-1054,-1090,-1128,-1167,-1205,-1244,-1282,-1320,-1358,-1396,-1434,-1474,-1515,-1558,-1602,-1648,-1694,-1741,-1786,
+-1830,-1872,-1911,-1949,-1984,-2019,-2054,-2090,-2129,-2171,-2217,-2267,-2321,-2377,-2435,-2493,-2550,-2604,-2654,-2698,-2737,
+-2769,-2795,-2816,-2831,-2842,-2850,-2855,-2859,-2864,-2869,-2875,-2883,-2894,-2907,-2923,-2941,-2960,-2981,-3003,-3024,-3045,
+-3064,-3083,-3100,-3116,-3133,-3150,-3168,-3188,-3211,-3236,-3264,-3295,-3327,-3359,-3392,-3423,-3453,-3482,-3508,-3533,-3558,
+-3581,-3605,-3629,-3655,-3681,-3709,-3736,-3763,-3790,-3816,-3840,-3864,-3886,-3909,-3932,-3956,-3980,-4006,-4031,-4056,-4079,
+-4098,-4111,-4119,-4119,-4112,-4100,-4083,-4065,-4049,-4038,-4035,-4043,-4063,-4098,-4145,-4204,-4271,-4343,-4416,-4484,-4545,
+-4594,-4628,-4648,-4652,-4641,-4619,-4589,-4554,-4518,-4485,-4459,-4442,-4437,-4445,-4464,-4495,-4534,-4581,-4631,-4683,-4733,
+-4778,-4818,-4850,-4874,-4890,-4900,-4903,-4903,-4900,-4897,-4895,-4896,-4900,-4907,-4918,-4933,-4950,-4969,-4989,-5010,-5031,
+-5051,-5070,-5089,-5108,-5126,-5146,-5167,-5189,-5213,-5239,-5267,-5297,-5328,-5360,-5393,-5426,-5459,-5491,-5522,-5551,-5579,
+-5604,-5628,-5649,-5669,-5687,-5703,-5717,-5731,-5743,-5755,-5766,-5775,-5784,-5792,-5798,-5803,-5807,-5809,-5812,-5814,-5817,
+-5821,-5827,-5835,-5846,-5860,-5876,-5893,-5911,-5927,-5941,-5950,-5955,-5954,-5947,-5934,-5916,-5895,-5871,-5847,-5824,-5802,
+-5783,-5766,-5749,-5733,-5714,-5689,-5658,-5617,-5564,-5500,-5424,-5338,-5243,-5144,-5044,-4947,-4859,-4785,-4727,-4690,-4676,
+-4686,-4720,-4776,-4853,-4946,-5052,-5166,-5282,-5397,-5505,-5603,-5688,-5757,-5810,-5848,-5870,-5880,-5880,-5872,-5861,-5847,
+-5834,-5824,-5817,-5814,-5815,-5819,-5825,-5833,-5841,-5848,-5855,-5860,-5864,-5868,-5871,-5874,-5878,-5883,-5888,-5895,-5903,
+-5911,-5919,-5927,-5935,-5942,-5948,-5954,-5959,-5963,-5967,-5970,-5974,-5976,-5979,-5982,-5985,-5989,-5994,-6000,-6010,-6022,
+-6037,-6055,-6076,-6099,-6124,-6150,-6176,-6202,-6225,-6247,-6267,-6285,-6301,-6316,-6330,-6345,-6360,-6376,-6393,-6410,-6427,
+-6444,-6458,-6470,-6479,-6484,-6486,-6484,-6481,-6476,-6472,-6468,-6468,-6470,-6477,-6488,-6502,-6519,-6538,-6556,-6574,-6589,
+-6600,-6606,-6608,-6606,-6599,-6590,-6579,-6567,-6557,-6549,-6544,-6542,-6543,-6546,-6552,-6557,-6563,-6566,-6567,-6565,-6560,
+-6551,-6539,-6526,-6512,-6498,-6485,-6474,-6466,-6460,-6457,-6456,-6456,-6457,-6458,-6458,-6458,-6456,-6453,-6449,-6445,-6440,
+-6435,-6430,-6426,-6422,-6418,-6415,-6412,-6408,-6403,-6398,-6391,-6384,-6376,-6367,-6358,-6350,-6342,-6334,-6327,-6321,-6314,
+-6308,-6300,-6293,-6284,-6274,-6262,-6251,-6238,-6226,-6214,-6203,-6193,-6185,-6177,-6171,-6165,-6158,-6151,-6141,-6129,-6114,
+-6096,-6073,-6048,-6020,-5990,-5959,-5929,-5901,-5875,-5853,-5835,-5821,-5811,-5804,-5800,-5797,-5794,-5791,-5786,-5779,-5770,
+-5758,-5744,-5728,-5711,-5694,-5677,-5661,-5644,-5629,-5613,-5596,-5578,-5558,-5536,-5511,-5484,-5453,-5420,-5386,-5350,-5313,
+-5276,-5241,-5206,-5174,-5144,-5117,-5093,-5073,-5056,-5044,-5036,-5032,-5032,-5034,-5038,-5041,-5042,-5039,-5030,-5012,-4985,
+-4948,-4902,-4846,-4784,-4718,-4651,-4586,-4526,-4474,-4432,-4400,-4379,-4366,-4360,-4357,-4355,-4350,-4339,-4321,-4295,-4261,
+-4220,-4173,-4123,-4074,-4027,-3985,-3950,-3921,-3901,-3887,-3878,-3872,-3869,-3865,-3859,-3850,-3838,-3823,-3805,-3786,-3766,
+-3746,-3728,-3713,-3700,-3691,-3684,-3680,-3679,-3679,-3680,-3682,-3685,-3688,-3692,-3696,-3701,-3707,-3713,-3721,-3729,-3738,
+-3747,-3756,-3764,-3769,-3773,-3774,-3771,-3763,-3752,-3735,-3713,-3687,-3657,-3622,-3586,-3547,-3508,-3469,-3431,-3395,-3362,
+-3331,-3303,-3278,-3254,-3232,-3211,-3191,-3172,-3153,-3137,-3121,-3108,-3097,-3087,-3079,-3072,-3065,-3057,-3047,-3035,-3020,
+-3002,-2981,-2958,-2935,-2912,-2889,-2870,-2852,-2838,-2826,-2815,-2804,-2793,-2780,-2764,-2744,-2722,-2697,-2670,-2643,-2616,
+-2591,-2568,-2547,-2527,-2509,-2489,-2468,-2444,-2417,-2386,-2351,-2314,-2276,-2239,-2204,-2172,-2145,-2122,-2103,-2088,-2076,
+-2063,-2051,-2036,-2019,-2000,-1979,-1956,-1934,-1912,-1893,-1876,-1862,-1851,-1841,-1833,-1825,-1816,-1806,-1796,-1785,-1774,
+-1765,-1758,-1753,-1752,-1753,-1756,-1759,-1761,-1761,-1756,-1745,-1729,-1708,-1683,-1655,-1627,-1601,-1579,-1563,-1554,-1552,
+-1558,-1571,-1588,-1608,-1629,-1650,-1670,-1687,-1700,-1710,-1716,-1717,-1715,-1708,-1696,-1679,-1656,-1629,-1596,-1558,-1518,
+-1476,-1434,-1395,-1359,-1329,-1305,-1288,-1277,-1271,-1267,-1266,-1264,-1260,-1252,-1241,-1225,-1205,-1182,-1157,-1131,-1105,
+-1080,-1056,-1032,-1010,-987,-963,-937,-909,-879,-847,-813,-779,-746,-714,-684,-656,-631,-608,-586,-564,-542,
+-517,-489,-458,-423,-384,-344,-303,-261,-222,-186,-154,-127,-105,-87,-74,-63,-54,-47,-39,-31,-23,
+-15,-8,-5,-7,-15,-31,-57,-93,-137,-191,-250,-314,-379,-443,-502,-554,-599,-633,-659,-676,-685,
+-689,-690,-689,-687,-686,-687,-689,-691,-693,-694,-693,-689,-682,-672,-660,-646,-631,-615,-600,-587,-574,
+-563,-552,-542,-531,-520,-508,-495,-481,-466,-452,-438,-426,-416,-408,-401,-396,-392,-389,-385,-380,-375,
+-368,-361,-354,-347,-341,-337,-333,-332,-331,-331,-332,-333,-333,-332,-330,-328,-325,-322,-321,-320,-321,
+-324,-329,-335,-342,-350,-357,-363,-369,-374,-378,-381,-385,-389,-393,-399,-405,-412,-419,-426,-431,-435,
+-437,-437,-435,-432,-426,-420,-414,-407,-401,-394,-386,-378,-369,-357,-343,-327,-308,-287,-265,-242,-219,
+-197,-177,-158,-142,-128,-117,-107,-100,-94,-89,-86,-85,-86,-88,-92,-98,-106,-115,-125,-134,-144,
+-152,-159,-165,-170,-173,-177,-180,-183,-186,-189,-191,-192,-192,-188,-181,-170,-154,-135,-113,-88,-62,
+-36,-12,10,30,48,64,79,93,109,126,146,169,194,221,250,278,304,327,345,359,366,
+369,367,361,353,345,338,333,332,336,344,357,375,398,423,451,479,509,537,563,587,608,
+626,641,652,661,668,673,678,684,691,701,713,729,748,771,797,826,858,892,927,964,1001,
+1039,1076,1113,1149,1184,1217,1247,1274,1298,1317,1330,1339,1341,1339,1331,1320,1304,1287,1268,1248,1229,
+1211,1194,1179,1166,1156,1149,1144,1143,1146,1152,1090,1080,1076,1080,1092,1112,1138,1170,1205,1242,1278,
+1311,1341,1366,1386,1401,1411,1418,1422,1426,1429,1434,1441,1449,1460,1472,1484,1497,1510,1523,1534,1545,
+1555,1565,1575,1585,1596,1607,1619,1631,1643,1655,1666,1677,1686,1695,1703,1711,1719,1727,1736,1746,1756,
+1766,1776,1786,1795,1803,1809,1814,1819,1822,1825,1828,1831,1835,1840,1847,1854,1861,1869,1877,1884,1890,
+1895,1898,1900,1900,1898,1895,1890,1883,1875,1866,1856,1846,1835,1825,1817,1810,1805,1802,1803,1805,1810,
+1815,1822,1828,1834,1839,1842,1845,1847,1849,1852,1857,1863,1871,1880,1891,1901,1910,1916,1918,1916,1908,
+1896,1880,1861,1840,1820,1803,1789,1780,1776,1777,1782,1790,1800,1811,1821,1829,1835,1839,1840,1840,1839,
+1837,1834,1832,1829,1826,1822,1817,1811,1804,1795,1787,1779,1773,1771,1773,1780,1792,1809,1830,1853,1879,
+1903,1926,1945,1960,1970,1975,1976,1973,1969,1964,1959,1955,1953,1953,1955,1958,1962,1966,1969,1970,1968,
+1963,1956,1946,1933,1918,1902,1885,1868,1852,1837,1823,1812,1804,1799,1797,1799,1804,1812,1821,1832,1844,
+1855,1864,1871,1875,1875,1872,1865,1855,1844,1830,1816,1801,1787,1774,1762,1752,1742,1734,1727,1720,1714,
+1708,1703,1698,1693,1689,1686,1683,1682,1682,1683,1685,1687,1691,1694,1698,1701,1704,1706,1707,1708,1707,
+1707,1706,1704,1703,1703,1703,1704,1707,1710,1714,1718,1723,1728,1733,1738,1743,1748,1752,1757,1761,1764,
+1767,1767,1765,1758,1747,1728,1703,1669,1628,1581,1527,1470,1412,1355,1302,1255,1216,1186,1166,1156,1154,
+1160,1172,1187,1205,1223,1241,1257,1272,1285,1296,1305,1312,1318,1321,1321,1318,1312,1301,1286,1266,1243,
+1217,1190,1161,1133,1107,1082,1061,1042,1026,1011,998,985,972,959,945,931,917,903,891,880,870,
+862,856,850,845,839,833,825,816,805,794,782,770,758,746,736,726,716,706,695,682,667,
+650,630,608,584,560,536,512,490,470,451,434,417,401,384,364,342,316,286,253,215,175,
+132,87,42,-2,-45,-86,-125,-161,-194,-225,-254,-282,-309,-335,-362,-390,-419,-450,-483,-517,-553,
+-589,-625,-661,-695,-729,-761,-791,-821,-849,-878,-907,-938,-970,-1003,-1039,-1076,-1114,-1153,-1191,-1230,-1267,
+-1303,-1338,-1373,-1407,-1442,-1478,-1515,-1553,-1593,-1634,-1675,-1716,-1756,-1795,-1832,-1867,-1902,-1935,-1969,-2005,-2043,
+-2085,-2132,-2182,-2237,-2295,-2355,-2416,-2476,-2533,-2586,-2634,-2676,-2712,-2742,-2766,-2786,-2803,-2817,-2830,-2842,-2855,
+-2868,-2883,-2899,-2917,-2936,-2956,-2978,-3000,-3022,-3045,-3068,-3091,-3113,-3135,-3156,-3177,-3198,-3219,-3241,-3263,-3287,
+-3311,-3337,-3363,-3390,-3417,-3442,-3467,-3489,-3510,-3529,-3546,-3561,-3577,-3593,-3611,-3630,-3652,-3676,-3703,-3731,-3760,
+-3790,-3819,-3847,-3874,-3899,-3923,-3946,-3968,-3990,-4012,-4035,-4059,-4082,-4104,-4125,-4143,-4157,-4168,-4174,-4177,-4178,
+-4177,-4177,-4179,-4187,-4201,-4223,-4253,-4291,-4336,-4387,-4441,-4495,-4546,-4592,-4630,-4658,-4675,-4680,-4676,-4662,-4642,
+-4617,-4592,-4569,-4550,-4538,-4536,-4542,-4559,-4585,-4619,-4658,-4702,-4748,-4793,-4835,-4872,-4904,-4930,-4949,-4962,-4970,
+-4974,-4975,-4975,-4975,-4977,-4980,-4987,-4996,-5008,-5023,-5040,-5060,-5080,-5102,-5124,-5147,-5170,-5193,-5217,-5241,-5266,
+-5291,-5317,-5343,-5370,-5397,-5425,-5452,-5480,-5506,-5532,-5556,-5579,-5600,-5620,-5637,-5654,-5669,-5683,-5696,-5709,-5721,
+-5733,-5745,-5756,-5767,-5778,-5787,-5794,-5800,-5805,-5808,-5811,-5812,-5814,-5817,-5822,-5829,-5838,-5849,-5863,-5877,-5892,
+-5906,-5918,-5926,-5929,-5928,-5920,-5908,-5891,-5870,-5847,-5823,-5798,-5774,-5750,-5727,-5703,-5678,-5651,-5618,-5579,-5533,
+-5479,-5416,-5346,-5271,-5192,-5112,-5036,-4966,-4906,-4859,-4828,-4815,-4821,-4846,-4889,-4949,-5022,-5106,-5198,-5293,-5388,
+-5480,-5565,-5641,-5706,-5759,-5800,-5829,-5848,-5858,-5860,-5858,-5852,-5846,-5841,-5837,-5836,-5838,-5843,-5850,-5858,-5868,
+-5877,-5886,-5893,-5899,-5903,-5906,-5907,-5908,-5907,-5907,-5907,-5907,-5908,-5910,-5913,-5916,-5921,-5927,-5934,-5941,-5949,
+-5957,-5965,-5973,-5981,-5988,-5995,-6001,-6008,-6015,-6023,-6033,-6045,-6059,-6075,-6093,-6114,-6135,-6157,-6179,-6200,-6220,
+-6238,-6254,-6269,-6282,-6296,-6309,-6324,-6340,-6358,-6377,-6398,-6420,-6440,-6460,-6476,-6489,-6497,-6501,-6501,-6497,-6490,
+-6483,-6475,-6470,-6468,-6470,-6476,-6487,-6501,-6517,-6535,-6551,-6566,-6577,-6583,-6585,-6581,-6574,-6563,-6549,-6536,-6523,
+-6512,-6505,-6501,-6502,-6506,-6512,-6521,-6530,-6538,-6544,-6547,-6547,-6542,-6535,-6525,-6512,-6499,-6486,-6474,-6464,-6457,
+-6453,-6451,-6451,-6453,-6456,-6459,-6462,-6464,-6465,-6464,-6462,-6459,-6454,-6449,-6443,-6437,-6431,-6425,-6419,-6412,-6406,
+-6398,-6391,-6382,-6374,-6365,-6357,-6349,-6342,-6336,-6330,-6325,-6321,-6317,-6313,-6309,-6303,-6296,-6288,-6278,-6267,-6254,
+-6242,-6229,-6216,-6205,-6194,-6185,-6176,-6168,-6159,-6150,-6138,-6125,-6108,-6089,-6067,-6042,-6016,-5989,-5963,-5939,-5917,
+-5898,-5883,-5872,-5864,-5859,-5855,-5851,-5846,-5838,-5828,-5814,-5797,-5776,-5754,-5730,-5705,-5680,-5656,-5634,-5612,-5591,
+-5571,-5549,-5525,-5499,-5469,-5436,-5399,-5359,-5317,-5274,-5231,-5188,-5147,-5109,-5074,-5042,-5013,-4988,-4966,-4947,-4931,
+-4919,-4910,-4906,-4904,-4906,-4910,-4916,-4921,-4923,-4921,-4912,-4895,-4867,-4830,-4782,-4726,-4665,-4600,-4535,-4475,-4421,
+-4376,-4342,-4320,-4307,-4302,-4303,-4305,-4307,-4304,-4294,-4276,-4251,-4217,-4178,-4136,-4093,-4052,-4016,-3986,-3963,-3947,
+-3937,-3932,-3929,-3926,-3922,-3915,-3903,-3888,-3868,-3846,-3822,-3797,-3774,-3752,-3734,-3718,-3706,-3696,-3688,-3681,-3676,
+-3671,-3666,-3663,-3661,-3662,-3665,-3672,-3682,-3695,-3712,-3730,-3750,-3770,-3787,-3802,-3812,-3817,-3816,-3808,-3794,-3775,
+-3749,-3719,-3686,-3649,-3610,-3570,-3529,-3489,-3450,-3412,-3375,-3341,-3309,-3278,-3249,-3223,-3197,-3174,-3151,-3130,-3110,
+-3092,-3076,-3062,-3049,-3038,-3029,-3021,-3013,-3004,-2995,-2984,-2971,-2955,-2938,-2918,-2898,-2878,-2859,-2842,-2827,-2815,
+-2806,-2799,-2794,-2789,-2784,-2777,-2767,-2754,-2738,-2720,-2698,-2675,-2651,-2626,-2602,-2579,-2556,-2534,-2512,-2489,-2464,
+-2438,-2410,-2380,-2349,-2316,-2284,-2252,-2220,-2191,-2163,-2137,-2112,-2088,-2065,-2042,-2019,-1997,-1975,-1954,-1935,-1919,
+-1904,-1893,-1884,-1877,-1871,-1866,-1860,-1853,-1845,-1835,-1824,-1812,-1801,-1791,-1783,-1777,-1773,-1772,-1771,-1770,-1767,
+-1761,-1751,-1737,-1717,-1693,-1666,-1639,-1611,-1587,-1566,-1552,-1544,-1542,-1547,-1556,-1569,-1584,-1600,-1616,-1630,-1642,
+-1651,-1657,-1660,-1660,-1656,-1649,-1638,-1622,-1602,-1577,-1548,-1515,-1480,-1443,-1407,-1373,-1344,-1319,-1300,-1288,-1280,
+-1277,-1277,-1277,-1277,-1274,-1266,-1254,-1237,-1214,-1188,-1158,-1126,-1093,-1060,-1026,-993,-961,-928,-895,-862,-828,
+-794,-761,-729,-698,-671,-646,-626,-609,-594,-582,-571,-559,-544,-527,-505,-479,-447,-412,-374,-334,-295,
+-257,-222,-191,-165,-144,-127,-116,-108,-104,-102,-102,-106,-111,-120,-134,-152,-176,-206,-243,-285,-333,
+-384,-437,-489,-540,-586,-626,-659,-685,-703,-714,-721,-723,-724,-725,-726,-729,-735,-742,-751,-760,-768,
+-773,-775,-774,-768,-758,-746,-731,-714,-698,-683,-670,-659,-650,-642,-636,-629,-622,-613,-603,-591,-578,
+-564,-550,-537,-524,-514,-505,-499,-494,-490,-487,-484,-480,-476,-470,-464,-457,-451,-444,-438,-433,-429,
+-426,-423,-420,-417,-413,-409,-405,-400,-394,-389,-385,-381,-379,-378,-378,-379,-379,-380,-381,-380,-379,
+-378,-376,-374,-373,-372,-373,-375,-378,-381,-384,-387,-388,-389,-387,-383,-378,-371,-364,-356,-348,-340,
+-333,-326,-318,-309,-299,-286,-272,-254,-234,-212,-189,-166,-142,-120,-100,-83,-68,-56,-46,-39,-33,
+-30,-28,-28,-29,-32,-37,-44,-53,-64,-76,-88,-101,-113,-124,-134,-141,-146,-150,-152,-154,-155,
+-156,-156,-156,-156,-154,-151,-144,-135,-123,-107,-88,-68,-47,-25,-5,12,28,41,51,60,69,
+77,87,99,114,131,151,172,194,214,233,248,259,267,270,270,269,267,266,267,272,282,
+296,316,339,367,397,428,459,489,517,544,567,588,607,624,640,655,669,683,697,711,725,
+739,753,768,782,798,814,831,850,871,895,922,952,985,1021,1059,1099,1140,1180,1218,1254,1286,
+1313,1335,1352,1363,1369,1370,1367,1361,1352,1342,1330,1316,1301,1284,1265,1245,1223,1199,1175,1150,1127,
+1106,1090,1041,1014,997,989,993,1007,1030,1062,1099,1140,1180,1217,1250,1277,1297,1309,1315,1316,1314,
+1310,1308,1307,1310,1318,1329,1345,1364,1386,1408,1430,1451,1471,1488,1502,1515,1525,1535,1543,1552,1561,
+1570,1581,1592,1604,1616,1628,1640,1652,1663,1674,1684,1694,1703,1712,1720,1728,1736,1743,1750,1757,1762,
+1768,1772,1775,1777,1778,1778,1777,1775,1772,1770,1768,1766,1765,1766,1768,1771,1775,1779,1784,1789,1792,
+1794,1795,1793,1789,1784,1778,1772,1765,1760,1755,1753,1753,1755,1759,1764,1769,1774,1779,1783,1786,1788,
+1789,1790,1790,1790,1791,1792,1793,1793,1793,1792,1789,1784,1777,1769,1759,1749,1739,1731,1724,1719,1717,
+1717,1718,1721,1725,1729,1732,1734,1736,1737,1737,1737,1737,1738,1739,1742,1745,1748,1750,1751,1751,1748,
+1744,1738,1731,1725,1720,1718,1719,1725,1735,1749,1767,1788,1810,1831,1851,1868,1881,1891,1896,1897,1896,
+1893,1889,1887,1885,1885,1887,1891,1896,1902,1908,1913,1916,1917,1914,1909,1900,1887,1872,1855,1836,1817,
+1798,1779,1763,1750,1741,1736,1736,1740,1748,1761,1776,1793,1811,1828,1843,1856,1864,1869,1869,1864,1856,
+1845,1831,1816,1800,1784,1769,1753,1739,1725,1712,1699,1687,1676,1666,1657,1650,1645,1642,1641,1642,1645,
+1649,1653,1656,1657,1656,1652,1644,1632,1617,1599,1580,1561,1542,1525,1511,1500,1494,1491,1492,1496,1502,
+1508,1515,1521,1525,1529,1531,1533,1536,1539,1543,1550,1558,1568,1579,1588,1595,1598,1594,1583,1562,1532,
+1493,1446,1393,1337,1280,1226,1177,1136,1105,1084,1073,1072,1079,1091,1107,1124,1139,1150,1158,1160,1157,
+1150,1139,1126,1112,1098,1085,1072,1062,1052,1044,1036,1028,1020,1011,1002,992,981,969,958,946,934,
+922,910,897,884,871,858,844,830,817,805,793,783,774,766,760,754,749,745,740,736,731,
+726,721,716,710,705,699,693,687,679,671,661,650,637,623,607,591,574,558,542,527,514,
+501,489,477,464,450,432,412,387,358,323,284,241,194,144,93,41,-10,-61,-109,-155,-198,
+-237,-273,-306,-336,-365,-392,-419,-446,-473,-502,-531,-562,-593,-625,-657,-689,-721,-751,-781,-811,-840,
+-869,-899,-930,-963,-997,-1033,-1070,-1109,-1147,-1186,-1224,-1260,-1295,-1329,-1361,-1393,-1425,-1456,-1489,-1523,-1558,
+-1594,-1630,-1667,-1704,-1739,-1773,-1805,-1836,-1866,-1896,-1928,-1962,-2000,-2043,-2090,-2143,-2200,-2260,-2322,-2385,-2446,
+-2503,-2556,-2604,-2645,-2681,-2712,-2738,-2761,-2782,-2803,-2824,-2846,-2870,-2895,-2921,-2948,-2975,-3001,-3027,-3052,-3075,
+-3097,-3118,-3138,-3159,-3179,-3201,-3223,-3247,-3272,-3300,-3328,-3357,-3386,-3416,-3444,-3471,-3496,-3518,-3537,-3554,-3567,
+-3577,-3586,-3594,-3601,-3610,-3621,-3635,-3653,-3674,-3699,-3728,-3759,-3792,-3825,-3857,-3888,-3916,-3941,-3964,-3984,-4002,
+-4019,-4037,-4056,-4077,-4100,-4125,-4152,-4180,-4209,-4236,-4261,-4284,-4304,-4320,-4333,-4345,-4355,-4366,-4380,-4396,-4417,
+-4443,-4473,-4508,-4546,-4586,-4625,-4661,-4693,-4719,-4736,-4745,-4746,-4738,-4723,-4704,-4682,-4660,-4641,-4627,-4619,-4620,
+-4631,-4650,-4678,-4713,-4753,-4797,-4842,-4885,-4926,-4961,-4991,-5015,-5032,-5043,-5050,-5053,-5053,-5053,-5054,-5056,-5061,
+-5069,-5080,-5095,-5114,-5135,-5159,-5184,-5211,-5239,-5266,-5294,-5322,-5349,-5375,-5401,-5427,-5451,-5475,-5497,-5519,-5539,
+-5558,-5576,-5591,-5605,-5618,-5630,-5641,-5651,-5661,-5671,-5682,-5694,-5707,-5721,-5735,-5749,-5764,-5777,-5789,-5799,-5807,
+-5812,-5816,-5819,-5820,-5821,-5823,-5826,-5831,-5837,-5847,-5858,-5870,-5884,-5897,-5908,-5917,-5923,-5926,-5924,-5917,-5907,
+-5893,-5875,-5855,-5831,-5805,-5776,-5744,-5709,-5669,-5624,-5574,-5519,-5459,-5395,-5329,-5262,-5196,-5134,-5078,-5030,-4994,
+-4969,-4959,-4962,-4979,-5009,-5051,-5103,-5164,-5230,-5300,-5371,-5441,-5508,-5571,-5628,-5679,-5722,-5757,-5785,-5806,-5821,
+-5830,-5835,-5837,-5837,-5836,-5836,-5838,-5841,-5846,-5853,-5863,-5874,-5886,-5898,-5910,-5921,-5930,-5936,-5941,-5942,-5941,
+-5938,-5934,-5928,-5922,-5917,-5912,-5909,-5908,-5909,-5913,-5918,-5926,-5935,-5946,-5958,-5970,-5982,-5994,-6006,-6018,-6030,
+-6042,-6055,-6068,-6083,-6100,-6117,-6135,-6154,-6172,-6190,-6207,-6223,-6237,-6250,-6261,-6272,-6284,-6296,-6310,-6326,-6344,
+-6364,-6387,-6410,-6433,-6455,-6475,-6491,-6503,-6510,-6512,-6511,-6506,-6499,-6492,-6485,-6480,-6479,-6481,-6486,-6495,-6506,
+-6518,-6530,-6541,-6548,-6552,-6553,-6548,-6540,-6530,-6517,-6504,-6491,-6481,-6473,-6469,-6469,-6472,-6478,-6486,-6495,-6503,
+-6511,-6516,-6518,-6518,-6514,-6508,-6501,-6492,-6483,-6474,-6467,-6462,-6459,-6457,-6458,-6459,-6462,-6465,-6467,-6468,-6468,
+-6466,-6463,-6459,-6454,-6448,-6442,-6436,-6430,-6425,-6420,-6415,-6410,-6405,-6400,-6394,-6387,-6380,-6373,-6365,-6357,-6350,
+-6343,-6337,-6332,-6327,-6323,-6319,-6315,-6310,-6304,-6296,-6287,-6276,-6264,-6250,-6236,-6221,-6207,-6192,-6179,-6166,-6153,
+-6140,-6128,-6115,-6101,-6086,-6070,-6054,-6037,-6020,-6004,-5990,-5977,-5966,-5958,-5951,-5945,-5939,-5932,-5922,-5908,-5890,
+-5867,-5838,-5805,-5768,-5728,-5687,-5646,-5607,-5571,-5538,-5508,-5481,-5456,-5432,-5407,-5381,-5352,-5319,-5283,-5244,-5203,
+-5160,-5118,-5076,-5038,-5002,-4970,-4942,-4917,-4895,-4875,-4858,-4842,-4827,-4814,-4802,-4793,-4786,-4781,-4779,-4779,-4780,
+-4779,-4776,-4768,-4753,-4731,-4701,-4663,-4617,-4567,-4513,-4461,-4411,-4367,-4330,-4303,-4284,-4274,-4269,-4268,-4268,-4266,
+-4259,-4247,-4227,-4201,-4169,-4134,-4097,-4062,-4031,-4005,-3985,-3972,-3964,-3961,-3961,-3961,-3959,-3954,-3946,-3933,-3916,
+-3895,-3873,-3850,-3829,-3809,-3792,-3777,-3765,-3754,-3744,-3734,-3723,-3711,-3699,-3686,-3674,-3664,-3658,-3657,-3662,-3673,
+-3690,-3713,-3738,-3765,-3791,-3813,-3830,-3839,-3840,-3832,-3815,-3789,-3756,-3718,-3677,-3633,-3589,-3546,-3504,-3466,-3430,
+-3396,-3365,-3335,-3307,-3279,-3251,-3224,-3196,-3168,-3140,-3113,-3087,-3063,-3040,-3020,-3003,-2987,-2975,-2964,-2954,-2944,
+-2935,-2925,-2913,-2899,-2884,-2867,-2848,-2829,-2810,-2792,-2775,-2761,-2749,-2740,-2734,-2730,-2727,-2724,-2721,-2717,-2711,
+-2703,-2692,-2679,-2663,-2646,-2627,-2607,-2586,-2566,-2545,-2523,-2502,-2481,-2459,-2437,-2414,-2391,-2368,-2344,-2320,-2294,
+-2268,-2241,-2213,-2185,-2155,-2125,-2095,-2065,-2038,-2012,-1989,-1970,-1955,-1943,-1935,-1929,-1924,-1920,-1916,-1910,-1902,
+-1891,-1879,-1865,-1850,-1836,-1823,-1813,-1805,-1801,-1799,-1798,-1798,-1797,-1794,-1787,-1777,-1764,-1746,-1726,-1705,-1683,
+-1662,-1644,-1630,-1619,-1611,-1608,-1607,-1608,-1611,-1613,-1616,-1617,-1617,-1615,-1613,-1609,-1604,-1597,-1588,-1577,-1563,
+-1546,-1526,-1503,-1477,-1449,-1421,-1393,-1368,-1346,-1328,-1316,-1309,-1305,-1305,-1307,-1308,-1308,-1304,-1295,-1280,-1260,
+-1234,-1203,-1168,-1130,-1090,-1049,-1008,-968,-928,-888,-850,-813,-776,-740,-707,-675,-647,-622,-601,-584,-571,
+-561,-554,-549,-543,-536,-526,-513,-496,-474,-448,-418,-386,-352,-318,-285,-254,-226,-202,-182,-167,-157,
+-153,-154,-162,-176,-196,-224,-259,-301,-349,-403,-460,-520,-579,-636,-688,-734,-772,-800,-819,-829,-832,
+-827,-819,-809,-799,-790,-785,-785,-788,-795,-805,-815,-826,-835,-840,-842,-839,-832,-822,-808,-794,-779,
+-765,-752,-742,-734,-728,-723,-718,-713,-708,-700,-691,-680,-668,-655,-642,-630,-619,-610,-603,-597,-592,
+-589,-586,-582,-578,-573,-568,-562,-555,-548,-542,-536,-530,-526,-521,-517,-513,-508,-502,-496,-488,-480,
+-472,-464,-456,-449,-442,-437,-432,-428,-424,-420,-416,-411,-405,-399,-393,-387,-381,-376,-372,-369,-367,
+-365,-363,-361,-358,-354,-348,-340,-332,-323,-313,-303,-294,-285,-276,-267,-258,-248,-237,-224,-209,-191,
+-172,-152,-131,-109,-89,-70,-53,-39,-27,-18,-11,-6,-3,-2,-1,-2,-4,-8,-13,-20,-29,
+-40,-51,-64,-76,-88,-98,-107,-113,-117,-118,-118,-117,-115,-113,-112,-111,-111,-110,-110,-107,-104,
+-97,-89,-78,-64,-50,-34,-19,-4,8,18,27,33,38,43,48,53,60,69,80,92,106,
+120,134,148,161,173,185,196,208,222,238,256,279,304,333,364,396,428,460,489,515,539,
+559,576,591,604,618,632,648,667,688,711,736,763,789,815,838,860,879,895,909,922,935,
+949,966,986,1009,1037,1070,1105,1143,1182,1221,1257,1289,1317,1339,1356,1367,1373,1375,1373,1370,1365,
+1360,1354,1348,1340,1331,1318,1302,1280,1254,1222,1187,1149,1111,1074,1041,1007,976,953,942,942,954,
+976,1008,1046,1088,1130,1169,1203,1230,1249,1260,1264,1262,1256,1248,1241,1236,1237,1242,1253,1270,1291,
+1316,1343,1370,1396,1420,1441,1458,1472,1482,1491,1498,1505,1512,1521,1531,1543,1556,1571,1587,1603,1619,
+1635,1648,1661,1671,1680,1688,1694,1700,1706,1711,1717,1722,1728,1734,1739,1743,1746,1748,1747,1745,1740,
+1735,1728,1722,1715,1710,1707,1706,1707,1711,1716,1723,1731,1739,1746,1752,1756,1757,1757,1754,1750,1745,
+1739,1734,1730,1728,1727,1727,1729,1732,1735,1739,1742,1744,1746,1747,1747,1746,1744,1741,1739,1735,1731,
+1727,1723,1718,1713,1707,1702,1696,1692,1688,1684,1682,1681,1680,1680,1679,1679,1678,1676,1673,1670,1667,
+1663,1661,1659,1660,1662,1665,1670,1676,1682,1687,1691,1692,1691,1688,1682,1675,1667,1659,1654,1651,1652,
+1657,1667,1680,1697,1715,1735,1754,1772,1788,1800,1809,1815,1818,1818,1817,1815,1813,1812,1812,1814,1817,
+1822,1828,1834,1840,1845,1848,1848,1845,1839,1829,1816,1799,1780,1760,1739,1719,1701,1687,1678,1674,1676,
+1684,1697,1715,1737,1759,1782,1803,1821,1834,1843,1845,1843,1835,1823,1808,1791,1772,1754,1735,1718,1701,
+1686,1672,1658,1646,1634,1623,1614,1607,1602,1599,1599,1601,1604,1608,1613,1615,1615,1612,1604,1590,1572,
+1550,1523,1495,1466,1438,1413,1392,1375,1364,1358,1356,1358,1362,1367,1372,1376,1379,1381,1381,1381,1381,
+1383,1387,1394,1404,1417,1430,1444,1455,1462,1462,1455,1439,1413,1378,1336,1289,1238,1188,1140,1098,1064,
+1039,1024,1018,1020,1029,1041,1055,1067,1076,1081,1079,1072,1060,1043,1022,1001,980,960,942,928,918,
+910,905,902,901,899,897,893,889,883,875,866,857,846,836,825,814,802,791,780,768,756,
+745,733,722,711,701,693,685,678,673,669,667,665,664,664,663,663,661,659,655,650,644,
+636,626,616,604,592,579,567,555,544,534,524,516,507,499,490,479,466,450,431,407,379,
+347,309,268,223,174,123,70,16,-36,-89,-140,-189,-234,-277,-317,-353,-386,-417,-446,-473,-499,
+-525,-551,-577,-603,-630,-658,-686,-715,-744,-773,-802,-832,-863,-895,-928,-963,-999,-1037,-1075,-1114,-1153,
+-1191,-1229,-1264,-1298,-1329,-1359,-1388,-1416,-1444,-1473,-1503,-1535,-1568,-1603,-1638,-1674,-1709,-1743,-1775,-1805,-1834,
+-1862,-1890,-1920,-1952,-1987,-2027,-2073,-2123,-2177,-2235,-2295,-2355,-2413,-2469,-2520,-2566,-2607,-2644,-2675,-2704,-2731,
+-2757,-2784,-2812,-2842,-2874,-2907,-2940,-2974,-3007,-3037,-3065,-3090,-3112,-3132,-3150,-3168,-3185,-3204,-3224,-3247,-3273,
+-3302,-3334,-3367,-3402,-3436,-3470,-3501,-3529,-3554,-3574,-3590,-3602,-3611,-3617,-3621,-3625,-3629,-3636,-3646,-3659,-3677,
+-3699,-3726,-3756,-3788,-3822,-3857,-3890,-3921,-3950,-3975,-3997,-4016,-4033,-4049,-4065,-4081,-4100,-4122,-4147,-4175,-4206,
+-4239,-4273,-4306,-4338,-4367,-4393,-4415,-4433,-4448,-4461,-4473,-4485,-4500,-4517,-4538,-4563,-4592,-4624,-4658,-4692,-4724,
+-4753,-4775,-4791,-4798,-4798,-4789,-4774,-4753,-4731,-4708,-4688,-4673,-4666,-4667,-4677,-4697,-4727,-4763,-4805,-4850,-4896,
+-4940,-4981,-5017,-5047,-5070,-5086,-5097,-5103,-5106,-5108,-5109,-5112,-5117,-5125,-5137,-5153,-5172,-5194,-5219,-5245,-5273,
+-5301,-5330,-5358,-5385,-5411,-5437,-5462,-5486,-5508,-5530,-5550,-5568,-5584,-5599,-5612,-5622,-5631,-5639,-5645,-5651,-5657,
+-5664,-5672,-5682,-5694,-5707,-5722,-5737,-5753,-5769,-5784,-5797,-5808,-5817,-5823,-5828,-5830,-5832,-5833,-5835,-5837,-5841,
+-5847,-5855,-5864,-5875,-5887,-5898,-5909,-5919,-5927,-5933,-5936,-5937,-5935,-5930,-5922,-5910,-5893,-5872,-5844,-5810,-5768,
+-5720,-5664,-5601,-5533,-5462,-5389,-5318,-5250,-5190,-5139,-5100,-5075,-5063,-5066,-5082,-5111,-5150,-5197,-5250,-5307,-5364,
+-5421,-5475,-5525,-5572,-5613,-5650,-5682,-5710,-5734,-5754,-5771,-5784,-5795,-5803,-5809,-5814,-5817,-5820,-5822,-5826,-5830,
+-5837,-5845,-5855,-5868,-5882,-5896,-5911,-5925,-5937,-5947,-5954,-5957,-5957,-5953,-5947,-5939,-5929,-5919,-5909,-5901,-5895,
+-5892,-5892,-5895,-5901,-5910,-5921,-5934,-5948,-5964,-5980,-5996,-6013,-6030,-6047,-6065,-6083,-6102,-6120,-6138,-6155,-6172,
+-6187,-6201,-6213,-6224,-6234,-6243,-6252,-6261,-6272,-6285,-6301,-6318,-6339,-6361,-6384,-6407,-6429,-6449,-6466,-6479,-6488,
+-6493,-6494,-6491,-6487,-6481,-6476,-6471,-6469,-6469,-6472,-6477,-6483,-6490,-6497,-6503,-6507,-6509,-6507,-6503,-6496,-6487,
+-6478,-6469,-6460,-6454,-6449,-6447,-6448,-6451,-6456,-6461,-6467,-6472,-6476,-6479,-6480,-6478,-6476,-6472,-6468,-6463,-6460,
+-6457,-6456,-6456,-6457,-6459,-6462,-6465,-6467,-6468,-6468,-6466,-6462,-6456,-6450,-6442,-6435,-6427,-6420,-6415,-6410,-6408,
+-6406,-6406,-6406,-6407,-6408,-6408,-6406,-6403,-6399,-6393,-6386,-6378,-6369,-6360,-6351,-6342,-6334,-6326,-6319,-6312,-6305,
+-6297,-6288,-6279,-6268,-6257,-6244,-6230,-6216,-6201,-6187,-6173,-6160,-6147,-6135,-6123,-6112,-6101,-6090,-6080,-6069,-6059,
+-6050,-6041,-6033,-6025,-6017,-6009,-5999,-5986,-5970,-5949,-5923,-5891,-5853,-5809,-5760,-5707,-5651,-5595,-5541,-5489,-5442,
+-5400,-5364,-5332,-5305,-5281,-5259,-5237,-5213,-5188,-5160,-5129,-5096,-5062,-5028,-4995,-4965,-4937,-4913,-4892,-4873,-4857,
+-4842,-4826,-4809,-4791,-4771,-4750,-4728,-4707,-4687,-4670,-4656,-4646,-4638,-4633,-4629,-4624,-4616,-4605,-4588,-4566,-4538,
+-4506,-4471,-4435,-4399,-4366,-4336,-4312,-4293,-4278,-4267,-4257,-4247,-4235,-4220,-4200,-4176,-4147,-4116,-4084,-4052,-4022,
+-3997,-3977,-3963,-3954,-3949,-3947,-3947,-3946,-3943,-3937,-3928,-3915,-3900,-3883,-3866,-3849,-3835,-3822,-3812,-3804,-3797,
+-3789,-3781,-3769,-3755,-3737,-3717,-3697,-3676,-3658,-3645,-3639,-3639,-3648,-3665,-3688,-3715,-3745,-3773,-3797,-3815,-3823,
+-3822,-3810,-3787,-3755,-3716,-3672,-3625,-3577,-3531,-3488,-3449,-3414,-3384,-3356,-3332,-3308,-3286,-3262,-3238,-3211,-3183,
+-3154,-3124,-3094,-3064,-3036,-3011,-2987,-2967,-2949,-2934,-2921,-2910,-2899,-2887,-2876,-2863,-2848,-2832,-2814,-2795,-2775,
+-2756,-2737,-2719,-2703,-2689,-2677,-2668,-2662,-2658,-2655,-2653,-2651,-2649,-2646,-2642,-2637,-2629,-2620,-2608,-2595,-2581,
+-2565,-2549,-2532,-2514,-2497,-2480,-2463,-2447,-2431,-2414,-2397,-2379,-2359,-2337,-2312,-2286,-2256,-2225,-2192,-2159,-2127,
+-2096,-2068,-2043,-2023,-2007,-1995,-1986,-1980,-1975,-1971,-1966,-1959,-1949,-1937,-1923,-1907,-1890,-1874,-1859,-1847,-1838,
+-1832,-1829,-1828,-1828,-1829,-1829,-1826,-1821,-1813,-1802,-1788,-1772,-1755,-1738,-1721,-1705,-1691,-1678,-1668,-1658,-1650,
+-1643,-1636,-1629,-1622,-1614,-1607,-1600,-1593,-1585,-1577,-1568,-1557,-1545,-1529,-1512,-1492,-1470,-1447,-1424,-1402,-1382,
+-1366,-1354,-1346,-1343,-1343,-1345,-1349,-1351,-1351,-1346,-1337,-1321,-1299,-1270,-1237,-1199,-1159,-1116,-1073,-1030,-987,
+-947,-907,-869,-832,-797,-763,-730,-699,-671,-645,-622,-603,-588,-576,-568,-561,-557,-552,-548,-541,-532,
+-519,-503,-483,-460,-434,-406,-376,-347,-319,-294,-272,-255,-244,-240,-245,-258,-280,-311,-351,-400,-455,
+-516,-580,-645,-708,-768,-821,-866,-902,-927,-942,-947,-944,-935,-922,-906,-891,-877,-868,-862,-861,-863,
+-869,-876,-884,-890,-895,-897,-895,-890,-882,-872,-860,-849,-838,-829,-821,-814,-810,-805,-801,-797,-792,
+-785,-776,-766,-755,-743,-732,-721,-712,-704,-697,-692,-689,-686,-683,-679,-675,-670,-664,-658,-650,-643,
+-636,-629,-624,-619,-615,-611,-607,-602,-596,-589,-581,-571,-560,-548,-537,-525,-514,-504,-496,-488,-481,
+-474,-468,-461,-454,-447,-438,-430,-421,-411,-402,-394,-386,-379,-371,-364,-357,-349,-341,-331,-321,-310,
+-299,-288,-277,-267,-256,-246,-237,-227,-217,-206,-193,-180,-165,-149,-132,-114,-98,-82,-67,-54,-43,
+-35,-28,-22,-18,-16,-14,-12,-12,-13,-16,-20,-25,-33,-42,-52,-63,-74,-84,-92,-99,-103,
+-104,-103,-100,-96,-91,-86,-83,-80,-80,-80,-81,-82,-83,-83,-81,-77,-71,-62,-53,-42,-30,
+-20,-10,-2,3,8,11,13,14,16,19,22,27,34,43,54,67,82,100,120,144,170,
+199,232,267,305,344,383,422,459,492,522,547,567,582,594,603,611,619,630,644,663,687,
+716,750,786,824,863,899,932,961,985,1004,1019,1031,1040,1049,1059,1072,1089,1109,1133,1161,1190,
+1220,1249,1276,1298,1315,1327,1333,1335,1332,1327,1321,1314,1309,1305,1303,1301,1299,1296,1289,1278,1260,
+1236,1206,1169,1129,1087,1045,1007,968,938,916,903,901,909,928,955,989,1026,1065,1101,1133,1159,
+1178,1189,1194,1193,1189,1182,1176,1172,1172,1176,1186,1200,1219,1242,1267,1292,1316,1339,1358,1375,1388,
+1398,1406,1413,1419,1425,1433,1443,1454,1468,1483,1500,1517,1534,1550,1564,1577,1588,1597,1605,1611,1616,
+1621,1626,1632,1638,1645,1653,1660,1668,1675,1681,1685,1688,1688,1687,1685,1681,1678,1674,1671,1670,1671,
+1673,1677,1682,1689,1696,1703,1709,1714,1718,1719,1720,1718,1716,1713,1710,1707,1705,1704,1704,1704,1706,
+1708,1711,1714,1717,1720,1722,1724,1725,1725,1725,1724,1723,1720,1718,1714,1710,1706,1701,1696,1691,1686,
+1680,1675,1671,1666,1661,1655,1650,1644,1637,1630,1624,1617,1612,1608,1605,1605,1608,1613,1620,1628,1637,
+1646,1654,1659,1662,1661,1656,1647,1636,1622,1607,1593,1581,1571,1566,1564,1568,1577,1590,1606,1625,1644,
+1664,1682,1698,1711,1721,1726,1729,1728,1725,1721,1716,1711,1708,1707,1708,1711,1716,1722,1729,1735,1740,
+1742,1740,1734,1724,1710,1692,1672,1651,1631,1613,1600,1593,1591,1597,1609,1627,1650,1675,1701,1725,1747,
+1763,1773,1777,1775,1767,1753,1737,1718,1698,1679,1660,1643,1629,1615,1604,1593,1583,1574,1564,1555,1547,
+1539,1533,1528,1525,1523,1522,1522,1522,1520,1516,1508,1497,1481,1462,1439,1413,1387,1360,1335,1312,1294,
+1280,1270,1265,1264,1265,1269,1274,1279,1283,1288,1291,1294,1298,1303,1309,1316,1324,1333,1342,1350,1354,
+1354,1348,1336,1316,1289,1256,1218,1176,1134,1093,1056,1024,999,982,972,969,972,977,985,992,997,
+998,994,986,974,959,941,922,904,888,875,865,858,855,853,853,854,853,852,849,844,836,
+827,817,806,795,784,774,765,757,750,743,736,728,719,710,700,689,678,668,658,649,642,
+637,634,632,632,633,634,634,633,631,627,621,612,602,591,579,567,555,545,535,527,520,
+514,508,502,494,484,472,456,436,411,383,350,314,275,234,191,146,101,55,10,-34,-79,
+-123,-166,-208,-249,-288,-326,-363,-397,-430,-461,-490,-517,-544,-569,-593,-618,-641,-666,-690,-715,-741,
+-767,-795,-824,-855,-887,-921,-957,-995,-1035,-1075,-1116,-1156,-1196,-1234,-1269,-1303,-1333,-1362,-1388,-1413,-1438,
+-1463,-1489,-1516,-1546,-1578,-1611,-1646,-1681,-1716,-1751,-1783,-1814,-1843,-1872,-1900,-1928,-1959,-1993,-2030,-2072,-2117,
+-2167,-2220,-2274,-2329,-2383,-2435,-2483,-2527,-2567,-2603,-2635,-2665,-2694,-2723,-2752,-2783,-2816,-2850,-2885,-2920,-2955,
+-2989,-3020,-3048,-3074,-3096,-3117,-3136,-3154,-3173,-3193,-3216,-3241,-3270,-3301,-3334,-3369,-3404,-3439,-3472,-3502,-3529,
+-3552,-3571,-3587,-3598,-3607,-3614,-3620,-3626,-3632,-3640,-3651,-3664,-3681,-3700,-3723,-3748,-3776,-3805,-3835,-3865,-3894,
+-3923,-3950,-3975,-3998,-4020,-4041,-4061,-4082,-4103,-4125,-4148,-4173,-4199,-4226,-4253,-4280,-4307,-4332,-4356,-4377,-4397,
+-4414,-4431,-4448,-4465,-4483,-4505,-4529,-4556,-4587,-4620,-4655,-4690,-4724,-4754,-4779,-4799,-4811,-4816,-4814,-4806,-4792,
+-4776,-4758,-4742,-4730,-4724,-4724,-4733,-4750,-4774,-4806,-4842,-4881,-4922,-4961,-4998,-5031,-5059,-5082,-5099,-5113,-5122,
+-5130,-5137,-5145,-5154,-5165,-5179,-5196,-5215,-5237,-5260,-5285,-5309,-5334,-5359,-5382,-5405,-5427,-5449,-5470,-5492,-5513,
+-5534,-5555,-5575,-5594,-5611,-5627,-5641,-5653,-5662,-5670,-5676,-5682,-5687,-5693,-5700,-5708,-5717,-5728,-5740,-5753,-5767,
+-5780,-5792,-5803,-5812,-5819,-5824,-5827,-5830,-5832,-5833,-5835,-5838,-5841,-5845,-5850,-5856,-5863,-5869,-5876,-5882,-5888,
+-5893,-5899,-5904,-5909,-5913,-5916,-5917,-5915,-5909,-5898,-5880,-5853,-5818,-5773,-5720,-5660,-5593,-5523,-5453,-5385,-5324,
+-5272,-5232,-5206,-5194,-5198,-5216,-5246,-5287,-5334,-5386,-5439,-5491,-5539,-5582,-5619,-5649,-5674,-5693,-5708,-5720,-5730,
+-5739,-5747,-5755,-5763,-5771,-5779,-5786,-5793,-5798,-5803,-5808,-5813,-5819,-5825,-5834,-5844,-5856,-5869,-5884,-5899,-5913,
+-5926,-5937,-5945,-5949,-5950,-5947,-5941,-5932,-5921,-5910,-5898,-5888,-5880,-5874,-5871,-5871,-5875,-5882,-5892,-5904,-5919,
+-5935,-5954,-5973,-5993,-6014,-6036,-6057,-6078,-6098,-6117,-6135,-6150,-6163,-6175,-6184,-6191,-6198,-6203,-6209,-6216,-6225,
+-6236,-6250,-6266,-6285,-6306,-6328,-6349,-6370,-6388,-6404,-6416,-6424,-6428,-6429,-6427,-6423,-6419,-6414,-6411,-6409,-6409,
+-6411,-6415,-6420,-6424,-6429,-6432,-6433,-6433,-6430,-6426,-6421,-6415,-6409,-6404,-6400,-6398,-6398,-6400,-6404,-6409,-6413,
+-6418,-6421,-6423,-6423,-6422,-6419,-6416,-6412,-6408,-6406,-6405,-6407,-6410,-6416,-6423,-6432,-6440,-6448,-6455,-6460,-6463,
+-6462,-6459,-6453,-6445,-6436,-6426,-6416,-6406,-6399,-6393,-6389,-6387,-6388,-6390,-6393,-6397,-6401,-6404,-6406,-6406,-6405,
+-6401,-6395,-6388,-6379,-6369,-6359,-6349,-6338,-6328,-6319,-6310,-6301,-6292,-6284,-6275,-6267,-6258,-6248,-6239,-6229,-6220,
+-6211,-6202,-6194,-6186,-6179,-6172,-6165,-6157,-6149,-6140,-6129,-6118,-6105,-6090,-6074,-6056,-6037,-6015,-5990,-5962,-5931,
+-5895,-5855,-5810,-5761,-5707,-5650,-5591,-5531,-5473,-5416,-5363,-5316,-5274,-5238,-5208,-5182,-5160,-5140,-5121,-5102,-5080,
+-5057,-5031,-5003,-4974,-4945,-4918,-4892,-4869,-4850,-4834,-4821,-4809,-4798,-4785,-4770,-4752,-4730,-4704,-4674,-4643,-4611,
+-4580,-4552,-4528,-4510,-4497,-4490,-4488,-4488,-4490,-4492,-4492,-4488,-4481,-4469,-4453,-4433,-4411,-4388,-4364,-4341,-4318,
+-4296,-4274,-4252,-4229,-4204,-4177,-4148,-4116,-4084,-4051,-4020,-3991,-3965,-3945,-3929,-3917,-3910,-3906,-3904,-3902,-3899,
+-3893,-3886,-3875,-3862,-3848,-3834,-3821,-3810,-3801,-3794,-3790,-3788,-3785,-3781,-3775,-3765,-3751,-3732,-3710,-3685,-3661,
+-3638,-3619,-3606,-3601,-3604,-3615,-3633,-3656,-3682,-3707,-3729,-3746,-3755,-3754,-3744,-3724,-3695,-3658,-3617,-3573,-3529,
+-3486,-3446,-3409,-3377,-3348,-3323,-3300,-3278,-3257,-3235,-3211,-3187,-3160,-3133,-3105,-3077,-3051,-3025,-3002,-2981,-2962,
+-2946,-2931,-2918,-2905,-2893,-2880,-2866,-2851,-2834,-2817,-2798,-2779,-2759,-2740,-2721,-2703,-2686,-2672,-2659,-2648,-2640,
+-2633,-2627,-2624,-2621,-2619,-2617,-2615,-2612,-2609,-2604,-2598,-2590,-2581,-2570,-2558,-2545,-2531,-2517,-2502,-2488,-2474,
+-2459,-2445,-2430,-2413,-2395,-2375,-2353,-2328,-2301,-2271,-2241,-2210,-2179,-2150,-2124,-2100,-2081,-2065,-2053,-2044,-2037,
+-2031,-2026,-2019,-2011,-2000,-1988,-1973,-1957,-1941,-1924,-1909,-1896,-1885,-1877,-1871,-1867,-1864,-1861,-1858,-1854,-1847,
+-1838,-1827,-1813,-1798,-1782,-1765,-1748,-1733,-1718,-1705,-1693,-1683,-1674,-1666,-1659,-1653,-1647,-1642,-1637,-1633,-1628,
+-1622,-1615,-1607,-1597,-1585,-1569,-1552,-1532,-1511,-1490,-1468,-1449,-1433,-1420,-1412,-1408,-1408,-1411,-1417,-1422,-1427,
+-1428,-1424,-1415,-1400,-1378,-1350,-1316,-1278,-1237,-1195,-1152,-1110,-1070,-1031,-995,-960,-927,-895,-863,-833,-803,
+-774,-746,-720,-696,-674,-655,-639,-626,-615,-606,-598,-590,-581,-570,-558,-543,-525,-505,-483,-460,-437,
+-416,-398,-384,-377,-376,-383,-399,-424,-458,-500,-549,-603,-661,-720,-778,-833,-883,-926,-960,-985,-1001,
+-1008,-1008,-1001,-990,-977,-963,-950,-939,-932,-928,-927,-930,-934,-940,-944,-948,-950,-949,-946,-940,-933,
+-924,-916,-907,-900,-895,-891,-888,-885,-883,-881,-877,-871,-864,-855,-845,-834,-822,-811,-801,-793,-787,
+-783,-780,-779,-778,-777,-775,-772,-768,-762,-755,-747,-738,-729,-721,-714,-708,-703,-698,-694,-689,-683,
+-676,-668,-657,-645,-632,-618,-604,-590,-577,-566,-555,-546,-538,-530,-523,-515,-507,-498,-488,-478,-466,
+-454,-442,-430,-418,-407,-396,-385,-375,-365,-355,-345,-334,-323,-312,-301,-290,-280,-270,-260,-250,-241,
+-232,-222,-212,-201,-189,-177,-164,-152,-139,-127,-117,-107,-98,-91,-85,-80,-75,-71,-68,-66,-65,
+-65,-66,-68,-73,-79,-87,-95,-105,-114,-122,-129,-133,-135,-134,-131,-126,-119,-111,-104,-97,-92,
+-89,-87,-87,-89,-91,-92,-93,-93,-91,-87,-81,-73,-65,-56,-48,-40,-34,-29,-26,-25,-25,
+-25,-26,-26,-24,-21,-15,-7,5,21,41,66,95,128,165,205,248,292,336,379,420,457,
+491,519,542,560,574,585,595,605,617,633,653,679,710,746,787,829,873,916,955,990,1020,
+1044,1061,1073,1081,1086,1089,1093,1099,1108,1120,1135,1153,1172,1191,1209,1224,1235,1242,1244,1242,1236,
+1228,1218,1209,1202,1197,1196,1196,1199,1202,1204,1203,1198,1187,1169,1144,1114,1079,1041,1003,968,925,
+898,876,860,853,854,863,879,901,926,953,980,1005,1026,1043,1055,1062,1065,1065,1064,1062,1062,
+1063,1068,1076,1087,1101,1118,1137,1156,1175,1193,1209,1223,1235,1245,1254,1261,1268,1276,1283,1292,1302,
+1313,1326,1339,1353,1367,1380,1393,1404,1415,1425,1433,1441,1448,1456,1463,1472,1480,1490,1500,1511,1521,
+1532,1542,1550,1558,1565,1570,1574,1577,1579,1581,1583,1585,1588,1592,1596,1601,1606,1612,1618,1623,1628,
+1632,1635,1638,1640,1642,1644,1645,1647,1649,1651,1654,1657,1661,1665,1669,1673,1677,1681,1684,1688,1691,
+1694,1696,1698,1699,1700,1700,1698,1696,1693,1688,1682,1675,1666,1657,1646,1635,1622,1609,1596,1582,1568,
+1555,1542,1531,1521,1514,1510,1509,1511,1517,1526,1537,1551,1565,1580,1592,1602,1609,1611,1607,1599,1586,
+1568,1548,1526,1504,1483,1466,1454,1447,1446,1451,1462,1478,1498,1521,1544,1567,1587,1603,1615,1622,1623,
+1620,1613,1603,1591,1580,1570,1562,1558,1557,1560,1565,1572,1579,1585,1589,1589,1586,1578,1565,1550,1532,
+1514,1498,1485,1477,1476,1481,1494,1512,1536,1562,1590,1617,1641,1659,1672,1678,1677,1671,1659,1644,1626,
+1608,1591,1575,1562,1550,1541,1533,1525,1517,1508,1498,1486,1473,1458,1444,1430,1417,1405,1396,1388,1382,
+1377,1373,1367,1360,1351,1339,1324,1307,1287,1267,1246,1226,1208,1193,1182,1175,1173,1175,1180,1189,1200,
+1213,1227,1242,1256,1270,1283,1294,1303,1310,1313,1313,1307,1297,1281,1259,1232,1200,1165,1126,1087,1049,
+1012,980,953,932,917,908,903,903,904,907,908,907,902,894,883,868,852,835,818,803,792,
+783,779,777,779,782,787,790,793,793,790,785,776,766,755,743,732,722,714,708,704,701,
+699,697,695,691,686,678,670,660,649,638,629,621,615,611,610,610,612,613,614,613,610,
+604,595,584,571,557,543,530,519,511,506,504,504,505,505,504,499,490,473,450,418,379,
+333,282,226,167,108,51,-4,-56,-103,-145,-183,-217,-247,-274,-300,-325,-350,-375,-401,-427,-454,
+-481,-509,-536,-563,-589,-614,-638,-661,-684,-706,-728,-751,-774,-798,-824,-851,-881,-912,-946,-982,-1020,
+-1060,-1101,-1142,-1182,-1222,-1260,-1295,-1329,-1359,-1387,-1413,-1438,-1462,-1486,-1511,-1537,-1565,-1594,-1625,-1658,-1691,
+-1724,-1756,-1788,-1818,-1847,-1876,-1904,-1933,-1964,-1996,-2032,-2071,-2113,-2159,-2207,-2257,-2307,-2357,-2405,-2452,-2495,
+-2535,-2572,-2607,-2639,-2671,-2702,-2733,-2764,-2796,-2829,-2863,-2896,-2929,-2961,-2991,-3020,-3047,-3072,-3096,-3120,-3144,
+-3168,-3194,-3221,-3250,-3280,-3311,-3344,-3375,-3406,-3435,-3463,-3488,-3510,-3529,-3546,-3561,-3575,-3587,-3598,-3609,-3619,
+-3629,-3639,-3650,-3661,-3672,-3684,-3697,-3711,-3728,-3745,-3765,-3788,-3813,-3840,-3869,-3900,-3932,-3964,-3996,-4026,-4056,
+-4083,-4108,-4130,-4150,-4169,-4185,-4200,-4214,-4227,-4241,-4255,-4270,-4287,-4305,-4326,-4349,-4375,-4405,-4437,-4472,-4509,
+-4549,-4590,-4631,-4671,-4709,-4744,-4775,-4801,-4821,-4835,-4844,-4847,-4846,-4842,-4837,-4832,-4828,-4827,-4830,-4838,-4850,
+-4867,-4888,-4912,-4938,-4964,-4990,-5015,-5038,-5058,-5076,-5092,-5107,-5121,-5135,-5151,-5168,-5187,-5208,-5230,-5255,-5280,
+-5305,-5330,-5354,-5376,-5396,-5414,-5430,-5446,-5460,-5475,-5491,-5507,-5525,-5544,-5565,-5586,-5607,-5629,-5649,-5667,-5684,
+-5698,-5709,-5719,-5726,-5732,-5737,-5742,-5747,-5753,-5759,-5765,-5773,-5780,-5787,-5794,-5801,-5806,-5810,-5814,-5816,-5817,
+-5818,-5819,-5819,-5819,-5819,-5819,-5819,-5818,-5817,-5816,-5814,-5813,-5813,-5814,-5816,-5820,-5826,-5833,-5842,-5850,-5857,
+-5860,-5859,-5852,-5837,-5814,-5781,-5741,-5692,-5639,-5583,-5527,-5475,-5429,-5393,-5369,-5357,-5359,-5375,-5402,-5439,-5482,
+-5529,-5577,-5623,-5663,-5698,-5725,-5744,-5756,-5762,-5763,-5761,-5757,-5753,-5751,-5750,-5752,-5756,-5762,-5770,-5779,-5787,
+-5796,-5804,-5812,-5819,-5827,-5835,-5843,-5852,-5862,-5873,-5885,-5896,-5907,-5916,-5924,-5929,-5931,-5930,-5926,-5920,-5911,
+-5901,-5890,-5880,-5870,-5863,-5857,-5854,-5854,-5857,-5863,-5872,-5883,-5898,-5914,-5933,-5954,-5976,-5999,-6023,-6046,-6068,
+-6089,-6107,-6123,-6136,-6146,-6153,-6157,-6160,-6162,-6163,-6166,-6171,-6178,-6188,-6201,-6216,-6234,-6252,-6271,-6288,-6303,
+-6316,-6324,-6329,-6330,-6328,-6324,-6318,-6312,-6306,-6302,-6300,-6300,-6301,-6305,-6309,-6314,-6318,-6321,-6323,-6322,-6320,
+-6316,-6312,-6307,-6303,-6301,-6300,-6301,-6304,-6309,-6315,-6322,-6328,-6333,-6336,-6337,-6336,-6334,-6330,-6326,-6323,-6321,
+-6321,-6325,-6331,-6341,-6354,-6369,-6386,-6402,-6418,-6431,-6442,-6449,-6452,-6452,-6447,-6441,-6432,-6422,-6412,-6403,-6395,
+-6390,-6386,-6384,-6384,-6385,-6387,-6389,-6391,-6391,-6390,-6388,-6384,-6379,-6372,-6365,-6357,-6349,-6341,-6334,-6327,-6321,
+-6315,-6309,-6303,-6296,-6290,-6283,-6276,-6268,-6260,-6253,-6246,-6240,-6235,-6231,-6228,-6225,-6223,-6220,-6217,-6211,-6204,
+-6193,-6178,-6160,-6138,-6111,-6080,-6046,-6008,-5967,-5923,-5876,-5828,-5778,-5726,-5672,-5618,-5563,-5508,-5455,-5403,-5353,
+-5307,-5265,-5228,-5196,-5168,-5145,-5124,-5106,-5088,-5069,-5049,-5026,-4999,-4970,-4937,-4903,-4868,-4834,-4802,-4773,-4748,
+-4728,-4711,-4697,-4686,-4674,-4662,-4647,-4628,-4605,-4577,-4546,-4512,-4478,-4444,-4414,-4388,-4369,-4356,-4350,-4350,-4356,
+-4366,-4378,-4391,-4401,-4409,-4413,-4412,-4406,-4395,-4380,-4361,-4338,-4311,-4283,-4252,-4219,-4184,-4147,-4110,-4072,-4035,
+-4000,-3966,-3937,-3912,-3892,-3877,-3867,-3861,-3859,-3858,-3858,-3857,-3853,-3847,-3838,-3826,-3812,-3796,-3781,-3768,-3757,
+-3749,-3745,-3743,-3744,-3746,-3747,-3746,-3741,-3733,-3719,-3701,-3679,-3656,-3632,-3610,-3592,-3578,-3571,-3571,-3577,-3588,
+-3603,-3620,-3636,-3649,-3657,-3659,-3654,-3641,-3621,-3595,-3565,-3530,-3494,-3458,-3421,-3387,-3354,-3323,-3294,-3267,-3241,
+-3216,-3191,-3166,-3142,-3118,-3095,-3073,-3053,-3034,-3017,-3001,-2987,-2975,-2963,-2951,-2939,-2926,-2912,-2896,-2880,-2862,
+-2844,-2825,-2806,-2788,-2770,-2753,-2737,-2723,-2710,-2697,-2686,-2676,-2666,-2658,-2650,-2642,-2635,-2629,-2623,-2618,-2613,
+-2607,-2602,-2596,-2590,-2582,-2574,-2564,-2553,-2541,-2529,-2516,-2502,-2488,-2474,-2459,-2444,-2428,-2411,-2393,-2374,-2354,
+-2332,-2310,-2287,-2263,-2240,-2218,-2198,-2179,-2163,-2149,-2137,-2127,-2118,-2109,-2100,-2090,-2079,-2067,-2054,-2039,-2024,
+-2008,-1993,-1979,-1966,-1955,-1945,-1936,-1928,-1920,-1912,-1903,-1892,-1880,-1866,-1850,-1834,-1816,-1799,-1782,-1766,-1751,
+-1739,-1728,-1720,-1713,-1709,-1705,-1704,-1703,-1702,-1702,-1702,-1701,-1700,-1697,-1692,-1684,-1674,-1662,-1646,-1629,-1610,
+-1589,-1569,-1551,-1534,-1522,-1514,-1510,-1511,-1515,-1523,-1532,-1542,-1549,-1552,-1551,-1543,-1528,-1507,-1479,-1445,-1407,
+-1366,-1324,-1282,-1241,-1202,-1166,-1133,-1101,-1072,-1043,-1015,-987,-959,-929,-899,-869,-839,-809,-780,-753,-727,
+-703,-682,-662,-643,-625,-607,-589,-571,-553,-535,-519,-504,-493,-486,-484,-490,-504,-526,-556,-596,-642,
+-695,-752,-812,-871,-927,-979,-1024,-1060,-1087,-1103,-1110,-1107,-1097,-1081,-1061,-1039,-1018,-1000,-985,-975,-970,
+-969,-973,-979,-987,-995,-1002,-1007,-1009,-1008,-1004,-998,-991,-982,-974,-967,-961,-958,-956,-956,-957,-957,
+-957,-955,-951,-945,-937,-927,-915,-904,-892,-882,-874,-868,-864,-863,-863,-864,-865,-865,-864,-862,-858,
+-851,-843,-834,-825,-815,-806,-797,-790,-783,-777,-770,-764,-756,-747,-737,-725,-712,-698,-684,-669,-656,
+-643,-631,-621,-612,-603,-595,-587,-578,-569,-558,-546,-533,-519,-505,-491,-477,-464,-452,-440,-430,-420,
+-411,-402,-393,-383,-374,-364,-354,-345,-335,-325,-316,-307,-299,-291,-283,-275,-268,-259,-251,-243,-234,
+-226,-218,-210,-203,-197,-191,-186,-181,-177,-174,-171,-169,-168,-168,-168,-170,-173,-177,-182,-187,-193,
+-199,-203,-207,-208,-207,-204,-199,-192,-183,-174,-165,-156,-149,-143,-140,-138,-137,-138,-139,-140,-141,
+-140,-139,-135,-130,-124,-117,-109,-102,-95,-89,-84,-80,-77,-75,-74,-72,-70,-66,-60,-52,-40,
+-24,-5,18,46,77,112,150,190,230,271,311,348,383,414,442,467,488,508,526,545,565,
+588,614,644,678,715,756,798,840,881,919,953,981,1004,1020,1031,1037,1039,1039,1039,1039,1041,
+1045,1053,1062,1074,1086,1097,1107,1115,1119,1119,1116,1109,1101,1091,1082,1074,1069,1067,1069,1073,1080,
+1088,1095,1099,1100,1096,1085,1069,1046,1019,988,956,925,897,872,850,831,818,810,807,810,817,
+828,841,856,871,885,898,908,917,924,929,933,937,941,945,951,958,966,976,987,999,1012,
+1025,1038,1051,1064,1076,1088,1099,1109,1119,1129,1138,1147,1156,1166,1175,1184,1193,1203,1212,1222,1231,
+1241,1252,1262,1273,1284,1295,1307,1319,1331,1343,1354,1365,1376,1386,1395,1404,1412,1420,1427,1434,1441,
+1447,1454,1461,1468,1475,1482,1489,1495,1502,1508,1514,1519,1524,1529,1533,1538,1543,1549,1555,1562,1569,
+1577,1585,1593,1600,1607,1614,1620,1625,1629,1632,1635,1637,1639,1640,1642,1643,1645,1646,1646,1646,1645,
+1643,1639,1633,1625,1615,1602,1587,1570,1551,1530,1509,1487,1465,1444,1424,1407,1393,1382,1375,1373,1375,
+1382,1393,1407,1424,1443,1462,1480,1495,1507,1514,1516,1511,1502,1486,1467,1445,1421,1397,1376,1358,1345,
+1339,1339,1346,1359,1378,1401,1425,1451,1474,1495,1510,1520,1524,1521,1513,1501,1485,1468,1451,1436,1424,
+1416,1412,1412,1415,1420,1425,1430,1433,1433,1430,1423,1413,1401,1388,1376,1368,1363,1364,1372,1385,1405,
+1429,1457,1486,1514,1539,1561,1576,1586,1589,1587,1580,1569,1557,1543,1530,1518,1508,1500,1493,1486,1479,
+1470,1460,1446,1430,1411,1390,1367,1345,1323,1302,1285,1270,1259,1250,1244,1239,1235,1229,1223,1214,1202,
+1188,1172,1155,1137,1120,1105,1094,1087,1085,1088,1098,1113,1132,1156,1182,1210,1238,1264,1287,1305,1319,
+1325,1324,1316,1299,1275,1244,1207,1166,1121,1075,1031,988,950,917,890,870,856,848,844,843,843,
+844,842,838,830,818,802,784,764,744,725,708,694,685,680,678,680,684,689,694,697,698,
+697,692,685,676,665,655,646,638,633,631,630,632,635,638,640,640,639,635,628,619,609,
+599,590,582,576,573,573,575,578,581,584,584,582,576,566,553,538,521,504,490,478,471,
+469,472,478,488,498,506,510,507,495,473,438,392,335,268,194,115,35,-43,-118,-186,-246,
+-297,-339,-372,-397,-415,-429,-440,-449,-459,-470,-483,-499,-518,-538,-561,-585,-610,-634,-659,-683,-706,
+-728,-750,-771,-793,-814,-837,-861,-886,-913,-942,-972,-1005,-1040,-1076,-1113,-1151,-1190,-1228,-1265,-1301,-1336,
+-1369,-1401,-1431,-1459,-1487,-1514,-1541,-1568,-1595,-1623,-1652,-1680,-1709,-1738,-1766,-1795,-1822,-1850,-1877,-1905,-1933,
+-1964,-1996,-2030,-2067,-2107,-2149,-2193,-2239,-2286,-2333,-2380,-2426,-2470,-2512,-2553,-2593,-2631,-2667,-2703,-2738,-2772,
+-2806,-2839,-2871,-2903,-2933,-2962,-2991,-3019,-3046,-3073,-3100,-3128,-3156,-3186,-3216,-3247,-3279,-3310,-3340,-3370,-3397,
+-3422,-3445,-3465,-3484,-3501,-3516,-3531,-3546,-3561,-3577,-3592,-3608,-3622,-3636,-3647,-3657,-3665,-3670,-3673,-3676,-3679,
+-3682,-3689,-3699,-3713,-3734,-3759,-3790,-3826,-3866,-3907,-3949,-3990,-4028,-4062,-4090,-4114,-4131,-4143,-4151,-4155,-4158,
+-4161,-4165,-4171,-4181,-4196,-4216,-4240,-4270,-4305,-4343,-4385,-4429,-4475,-4523,-4570,-4616,-4662,-4705,-4745,-4783,-4816,
+-4846,-4871,-4892,-4909,-4922,-4932,-4939,-4943,-4947,-4950,-4952,-4956,-4960,-4966,-4973,-4981,-4991,-5001,-5012,-5024,-5036,
+-5050,-5064,-5080,-5097,-5116,-5138,-5162,-5188,-5216,-5245,-5276,-5306,-5336,-5364,-5389,-5412,-5431,-5447,-5460,-5471,-5480,
+-5489,-5498,-5509,-5521,-5535,-5553,-5572,-5594,-5617,-5641,-5665,-5687,-5707,-5725,-5740,-5752,-5761,-5768,-5772,-5775,-5776,
+-5778,-5779,-5780,-5782,-5785,-5788,-5792,-5795,-5798,-5801,-5803,-5804,-5804,-5803,-5800,-5797,-5792,-5785,-5778,-5770,-5761,
+-5753,-5744,-5736,-5730,-5726,-5725,-5727,-5732,-5740,-5750,-5761,-5773,-5784,-5792,-5795,-5793,-5784,-5767,-5743,-5713,-5677,
+-5639,-5599,-5562,-5529,-5504,-5488,-5482,-5489,-5506,-5533,-5569,-5610,-5654,-5699,-5741,-5777,-5807,-5829,-5842,-5847,-5845,
+-5837,-5825,-5812,-5797,-5785,-5774,-5768,-5765,-5765,-5769,-5776,-5785,-5796,-5807,-5818,-5830,-5841,-5851,-5861,-5870,-5880,
+-5888,-5896,-5903,-5909,-5913,-5915,-5915,-5913,-5909,-5903,-5895,-5887,-5877,-5867,-5858,-5850,-5844,-5839,-5836,-5836,-5838,
+-5842,-5849,-5859,-5871,-5885,-5902,-5921,-5942,-5964,-5988,-6012,-6035,-6057,-6078,-6096,-6110,-6121,-6129,-6133,-6134,-6134,
+-6133,-6131,-6131,-6133,-6138,-6145,-6155,-6167,-6180,-6194,-6207,-6218,-6226,-6231,-6232,-6229,-6223,-6215,-6205,-6195,-6185,
+-6178,-6173,-6170,-6171,-6173,-6178,-6184,-6189,-6194,-6198,-6200,-6200,-6199,-6196,-6193,-6191,-6189,-6189,-6190,-6193,-6198,
+-6204,-6211,-6217,-6222,-6226,-6227,-6227,-6225,-6223,-6220,-6218,-6219,-6223,-6230,-6242,-6258,-6277,-6300,-6324,-6348,-6371,
+-6392,-6409,-6423,-6431,-6435,-6436,-6432,-6427,-6420,-6413,-6407,-6402,-6398,-6396,-6396,-6397,-6397,-6398,-6397,-6395,-6391,
+-6385,-6377,-6367,-6357,-6347,-6337,-6329,-6322,-6317,-6314,-6313,-6312,-6313,-6314,-6313,-6312,-6308,-6303,-6295,-6286,-6275,
+-6263,-6251,-6239,-6228,-6219,-6211,-6205,-6199,-6194,-6188,-6181,-6171,-6157,-6139,-6116,-6087,-6052,-6012,-5966,-5917,-5865,
+-5810,-5753,-5697,-5640,-5585,-5532,-5481,-5432,-5386,-5344,-5305,-5269,-5237,-5209,-5184,-5163,-5144,-5127,-5112,-5096,-5079,
+-5060,-5037,-5010,-4979,-4943,-4904,-4861,-4816,-4770,-4726,-4685,-4647,-4613,-4585,-4562,-4543,-4527,-4513,-4499,-4485,-4468,
+-4448,-4425,-4399,-4371,-4342,-4313,-4286,-4262,-4243,-4230,-4224,-4223,-4228,-4238,-4251,-4266,-4281,-4294,-4305,-4312,-4315,
+-4311,-4303,-4288,-4268,-4243,-4213,-4179,-4141,-4101,-4059,-4017,-3976,-3937,-3902,-3871,-3846,-3827,-3815,-3808,-3807,-3810,
+-3815,-3821,-3827,-3829,-3829,-3823,-3814,-3800,-3783,-3765,-3746,-3729,-3715,-3704,-3699,-3697,-3700,-3705,-3712,-3718,-3722,
+-3722,-3717,-3707,-3693,-3674,-3652,-3628,-3605,-3583,-3565,-3552,-3543,-3540,-3541,-3545,-3552,-3560,-3567,-3571,-3572,-3569,
+-3560,-3546,-3527,-3504,-3476,-3445,-3412,-3377,-3341,-3305,-3270,-3235,-3202,-3170,-3141,-3115,-3091,-3070,-3053,-3038,-3027,
+-3017,-3010,-3004,-2998,-2992,-2984,-2975,-2964,-2950,-2935,-2917,-2897,-2877,-2857,-2838,-2819,-2802,-2788,-2775,-2764,-2754,
+-2746,-2738,-2730,-2722,-2713,-2703,-2693,-2681,-2670,-2658,-2646,-2635,-2624,-2614,-2605,-2596,-2588,-2580,-2572,-2563,-2554,
+-2544,-2533,-2521,-2508,-2495,-2482,-2468,-2454,-2441,-2427,-2414,-2400,-2387,-2374,-2360,-2347,-2333,-2320,-2306,-2292,-2279,
+-2265,-2252,-2238,-2224,-2210,-2196,-2181,-2166,-2151,-2135,-2120,-2105,-2090,-2076,-2064,-2052,-2042,-2032,-2022,-2013,-2003,
+-1992,-1979,-1965,-1950,-1933,-1914,-1895,-1875,-1856,-1838,-1821,-1806,-1793,-1783,-1775,-1770,-1766,-1765,-1765,-1766,-1768,
+-1770,-1772,-1773,-1773,-1772,-1770,-1765,-1757,-1748,-1736,-1721,-1705,-1689,-1672,-1655,-1641,-1630,-1623,-1620,-1621,-1627,
+-1636,-1648,-1660,-1672,-1681,-1686,-1685,-1678,-1664,-1642,-1615,-1581,-1544,-1504,-1463,-1423,-1384,-1348,-1316,-1286,-1259,
+-1235,-1211,-1188,-1164,-1138,-1110,-1079,-1045,-1009,-971,-932,-892,-852,-813,-775,-739,-705,-673,-644,-617,-593,
+-572,-555,-543,-536,-537,-545,-562,-588,-623,-668,-722,-783,-850,-920,-990,-1058,-1122,-1177,-1222,-1256,-1276,
+-1284,-1279,-1264,-1239,-1208,-1173,-1137,-1102,-1072,-1047,-1030,-1019,-1015,-1018,-1025,-1035,-1046,-1057,-1066,-1072,-1075,
+-1075,-1071,-1065,-1057,-1049,-1042,-1036,-1031,-1029,-1029,-1030,-1031,-1032,-1032,-1031,-1027,-1021,-1013,-1004,-993,-982,
+-971,-962,-954,-948,-944,-943,-942,-942,-942,-942,-941,-937,-933,-926,-919,-910,-901,-891,-882,-873,-864,
+-856,-848,-840,-831,-822,-811,-800,-788,-775,-761,-748,-735,-723,-712,-702,-692,-683,-675,-666,-657,-647,
+-636,-624,-611,-597,-582,-568,-554,-541,-529,-519,-509,-501,-494,-487,-480,-473,-465,-457,-448,-438,-429,
+-419,-410,-401,-393,-386,-380,-374,-369,-365,-360,-356,-352,-347,-343,-338,-334,-330,-327,-324,-321,-319,
+-317,-316,-315,-314,-314,-313,-312,-312,-311,-311,-311,-310,-309,-308,-306,-303,-299,-293,-287,-279,-271,
+-262,-252,-243,-235,-228,-222,-218,-216,-216,-216,-218,-220,-222,-223,-223,-221,-218,-213,-207,-199,-190,
+-180,-170,-160,-150,-141,-133,-125,-118,-110,-103,-94,-84,-72,-57,-40,-20,2,28,56,86,119,
+152,185,219,251,282,312,340,368,394,421,448,476,507,539,574,611,650,691,731,770,807,
+841,870,894,913,926,934,939,940,940,939,938,939,942,948,956,965,975,985,994,1001,1004,
+1005,1002,997,989,981,972,965,960,958,959,964,972,983,994,1005,1014,1019,1020,1016,1007,992,
+972,949,923,897,855,834,815,797,782,770,762,757,756,757,762,768,776,786,795,806,816,
+826,835,844,853,862,869,877,884,891,898,906,913,921,930,939,950,961,973,986,1000,1013,
+1027,1040,1053,1064,1075,1084,1092,1100,1106,1113,1119,1126,1134,1143,1153,1164,1177,1191,1206,1221,1236,
+1250,1264,1276,1287,1297,1305,1312,1318,1324,1330,1336,1342,1349,1356,1365,1374,1384,1394,1404,1414,1423,
+1431,1438,1445,1450,1455,1460,1465,1471,1477,1484,1493,1503,1514,1525,1537,1549,1561,1571,1580,1587,1592,
+1595,1597,1597,1596,1595,1593,1591,1590,1589,1589,1590,1590,1591,1590,1588,1584,1577,1567,1554,1538,1519,
+1496,1472,1445,1418,1391,1365,1341,1319,1301,1288,1279,1275,1276,1281,1291,1304,1321,1338,1356,1374,1389,
+1401,1410,1414,1413,1407,1397,1383,1366,1347,1328,1310,1295,1285,1279,1278,1284,1295,1311,1330,1352,1375,
+1397,1416,1431,1441,1445,1443,1436,1425,1409,1392,1374,1358,1343,1331,1323,1319,1318,1320,1323,1326,1329,
+1331,1330,1326,1321,1314,1307,1300,1296,1295,1298,1306,1320,1338,1360,1385,1411,1437,1462,1483,1500,1512,
+1519,1522,1520,1515,1508,1500,1491,1483,1475,1468,1462,1455,1447,1437,1424,1409,1391,1370,1347,1322,1297,
+1273,1250,1229,1212,1198,1187,1179,1173,1167,1162,1156,1148,1138,1126,1112,1096,1080,1064,1050,1039,1033,
+1032,1037,1049,1066,1089,1116,1147,1179,1211,1241,1267,1288,1301,1307,1303,1290,1269,1239,1202,1160,1114,
+1066,1019,974,933,897,868,845,829,818,812,809,808,807,805,800,791,779,764,745,725,704,
+684,665,649,637,628,623,622,622,624,625,626,625,622,616,609,599,589,580,571,565,561,
+561,562,566,572,577,582,585,586,584,579,571,562,552,542,534,528,525,525,528,533,538,
+543,546,546,542,533,521,505,486,467,449,434,424,419,421,429,441,456,472,485,492,491,
+479,454,415,362,297,221,137,49,-40,-127,-208,-281,-344,-396,-437,-467,-488,-501,-509,-514,-517,
+-521,-526,-534,-546,-560,-577,-597,-619,-642,-665,-689,-712,-735,-758,-780,-802,-825,-848,-871,-895,-920,
+-946,-973,-1001,-1030,-1060,-1091,-1124,-1157,-1192,-1227,-1263,-1299,-1336,-1372,-1408,-1443,-1478,-1511,-1543,-1574,-1603,
+-1632,-1659,-1685,-1710,-1734,-1758,-1782,-1805,-1829,-1854,-1879,-1906,-1933,-1963,-1994,-2027,-2062,-2098,-2136,-2176,-2217,
+-2259,-2302,-2345,-2389,-2434,-2478,-2523,-2567,-2611,-2655,-2697,-2739,-2778,-2816,-2852,-2885,-2917,-2946,-2973,-2999,-3024,
+-3049,-3075,-3102,-3130,-3160,-3192,-3224,-3257,-3291,-3323,-3354,-3382,-3408,-3431,-3451,-3469,-3484,-3499,-3513,-3528,-3543,
+-3560,-3577,-3595,-3613,-3630,-3646,-3659,-3668,-3675,-3678,-3678,-3676,-3674,-3673,-3675,-3681,-3693,-3712,-3737,-3770,-3807,
+-3850,-3895,-3940,-3984,-4024,-4059,-4087,-4109,-4124,-4132,-4136,-4137,-4137,-4137,-4139,-4145,-4156,-4173,-4196,-4224,-4258,
+-4296,-4338,-4382,-4428,-4474,-4521,-4567,-4613,-4657,-4700,-4742,-4783,-4821,-4857,-4891,-4922,-4949,-4973,-4992,-5007,-5018,
+-5024,-5027,-5028,-5026,-5022,-5018,-5015,-5012,-5011,-5012,-5016,-5022,-5032,-5045,-5061,-5080,-5102,-5127,-5154,-5184,-5215,
+-5247,-5279,-5312,-5343,-5372,-5399,-5423,-5444,-5461,-5476,-5487,-5496,-5504,-5512,-5519,-5528,-5539,-5552,-5567,-5586,-5607,
+-5629,-5653,-5676,-5699,-5720,-5739,-5754,-5767,-5776,-5782,-5785,-5786,-5785,-5784,-5782,-5781,-5780,-5781,-5782,-5784,-5787,
+-5790,-5793,-5794,-5795,-5793,-5789,-5783,-5774,-5763,-5750,-5736,-5722,-5707,-5694,-5682,-5673,-5667,-5665,-5667,-5672,-5680,
+-5691,-5703,-5715,-5726,-5734,-5739,-5738,-5731,-5718,-5699,-5675,-5648,-5619,-5590,-5563,-5542,-5527,-5521,-5524,-5537,-5559,
+-5590,-5627,-5670,-5714,-5758,-5798,-5834,-5863,-5884,-5896,-5900,-5897,-5887,-5872,-5855,-5836,-5817,-5800,-5786,-5776,-5769,
+-5767,-5768,-5772,-5780,-5789,-5801,-5813,-5827,-5840,-5854,-5867,-5879,-5890,-5899,-5907,-5911,-5913,-5912,-5909,-5902,-5893,
+-5882,-5870,-5858,-5846,-5834,-5824,-5816,-5810,-5807,-5806,-5808,-5811,-5817,-5824,-5834,-5844,-5857,-5871,-5887,-5904,-5924,
+-5944,-5966,-5989,-6011,-6032,-6052,-6068,-6082,-6093,-6100,-6104,-6105,-6104,-6102,-6100,-6098,-6099,-6101,-6105,-6112,-6120,
+-6128,-6137,-6144,-6149,-6151,-6149,-6144,-6136,-6125,-6112,-6099,-6086,-6074,-6065,-6059,-6057,-6057,-6060,-6066,-6072,-6079,
+-6085,-6090,-6094,-6096,-6097,-6097,-6096,-6095,-6095,-6096,-6097,-6100,-6104,-6107,-6111,-6113,-6114,-6114,-6112,-6109,-6106,
+-6103,-6102,-6103,-6108,-6117,-6131,-6150,-6174,-6201,-6230,-6261,-6291,-6318,-6343,-6363,-6379,-6389,-6395,-6397,-6396,-6394,
+-6391,-6388,-6386,-6387,-6388,-6392,-6396,-6400,-6403,-6405,-6404,-6401,-6395,-6386,-6375,-6363,-6351,-6339,-6329,-6322,-6317,
+-6316,-6316,-6319,-6323,-6327,-6329,-6329,-6326,-6319,-6307,-6292,-6272,-6249,-6224,-6199,-6173,-6148,-6125,-6104,-6085,-6068,
+-6053,-6038,-6022,-6004,-5983,-5958,-5929,-5895,-5857,-5814,-5768,-5719,-5669,-5618,-5568,-5519,-5473,-5429,-5389,-5352,-5318,
+-5287,-5259,-5234,-5210,-5189,-5169,-5151,-5133,-5116,-5099,-5081,-5061,-5040,-5015,-4987,-4955,-4919,-4879,-4836,-4789,-4741,
+-4692,-4644,-4598,-4556,-4518,-4484,-4456,-4432,-4413,-4397,-4382,-4369,-4355,-4340,-4322,-4303,-4281,-4258,-4234,-4210,-4187,
+-4167,-4150,-4137,-4128,-4124,-4124,-4129,-4136,-4145,-4156,-4166,-4174,-4180,-4182,-4180,-4172,-4159,-4140,-4115,-4086,-4051,
+-4013,-3973,-3932,-3892,-3855,-3822,-3795,-3774,-3760,-3753,-3752,-3757,-3766,-3777,-3788,-3797,-3803,-3804,-3800,-3791,-3776,
+-3758,-3738,-3717,-3697,-3681,-3669,-3663,-3662,-3666,-3674,-3684,-3696,-3706,-3714,-3717,-3714,-3706,-3692,-3672,-3649,-3623,
+-3596,-3571,-3549,-3530,-3517,-3509,-3506,-3507,-3512,-3518,-3525,-3531,-3534,-3533,-3527,-3515,-3497,-3473,-3444,-3410,-3373,
+-3332,-3291,-3249,-3208,-3170,-3135,-3104,-3079,-3058,-3043,-3033,-3027,-3024,-3025,-3027,-3028,-3029,-3028,-3024,-3017,-3006,
+-2991,-2973,-2953,-2931,-2909,-2887,-2866,-2848,-2832,-2819,-2808,-2800,-2794,-2788,-2783,-2777,-2771,-2762,-2752,-2740,-2726,
+-2711,-2695,-2679,-2664,-2649,-2635,-2623,-2612,-2602,-2593,-2584,-2576,-2568,-2559,-2549,-2539,-2528,-2516,-2504,-2492,-2480,
+-2469,-2458,-2448,-2439,-2431,-2423,-2415,-2407,-2399,-2390,-2381,-2370,-2357,-2343,-2327,-2310,-2292,-2273,-2253,-2234,-2214,
+-2196,-2178,-2162,-2148,-2136,-2125,-2115,-2107,-2099,-2091,-2082,-2073,-2062,-2048,-2033,-2016,-1997,-1977,-1956,-1934,-1913,
+-1894,-1876,-1860,-1846,-1835,-1827,-1821,-1818,-1816,-1816,-1816,-1818,-1819,-1821,-1822,-1822,-1822,-1820,-1817,-1812,-1805,
+-1796,-1786,-1774,-1761,-1748,-1735,-1723,-1714,-1707,-1704,-1704,-1708,-1716,-1726,-1738,-1751,-1762,-1770,-1775,-1774,-1767,
+-1753,-1733,-1707,-1677,-1643,-1607,-1572,-1538,-1506,-1478,-1453,-1433,-1415,-1399,-1385,-1370,-1353,-1333,-1309,-1280,-1246,
+-1207,-1163,-1116,-1067,-1016,-965,-915,-867,-822,-781,-744,-712,-686,-665,-650,-643,-643,-651,-668,-694,-729,
+-773,-825,-885,-950,-1019,-1089,-1159,-1223,-1282,-1331,-1368,-1394,-1406,-1404,-1391,-1367,-1335,-1297,-1257,-1216,-1178,
+-1145,-1118,-1099,-1088,-1084,-1086,-1093,-1103,-1115,-1126,-1136,-1144,-1148,-1148,-1146,-1141,-1135,-1127,-1120,-1114,-1109,
+-1106,-1104,-1104,-1104,-1104,-1104,-1102,-1100,-1095,-1089,-1082,-1074,-1065,-1056,-1047,-1040,-1033,-1028,-1023,-1019,-1016,
+-1013,-1010,-1006,-1001,-995,-988,-981,-974,-965,-957,-949,-941,-933,-924,-915,-906,-896,-885,-873,-861,-849,
+-836,-823,-811,-799,-788,-779,-769,-761,-753,-745,-736,-727,-716,-705,-694,-681,-669,-656,-645,-634,-624,
+-616,-608,-602,-597,-591,-586,-580,-574,-567,-558,-549,-540,-530,-521,-512,-505,-498,-493,-489,-486,-485,
+-483,-483,-482,-481,-480,-479,-477,-476,-474,-473,-472,-472,-472,-472,-472,-472,-472,-471,-470,-467,-463,
+-459,-453,-446,-439,-431,-422,-413,-404,-395,-385,-375,-365,-354,-344,-335,-326,-317,-310,-304,-300,-297,
+-296,-296,-298,-300,-302,-304,-304,-303,-300,-295,-288,-277,-265,-251,-236,-220,-204,-188,-173,-159,-146,
+-135,-124,-114,-105,-95,-84,-71,-56,-39,-19,3,28,55,84,114,144,175,206,236,266,296,
+326,356,388,420,454,490,526,564,602,639,675,708,738,764,785,802,814,822,827,829,830,
+830,831,834,839,845,854,864,875,886,896,904,910,912,911,908,902,895,888,881,876,873,
+873,876,883,892,903,914,925,935,941,944,943,937,927,913,896,876,855,749,734,720,707,
+697,688,683,679,678,679,682,687,694,702,712,723,735,748,761,774,787,800,811,821,830,
+837,844,849,854,859,865,871,879,888,899,912,926,941,957,973,988,1002,1014,1025,1034,1041,
+1046,1051,1056,1060,1065,1072,1080,1090,1103,1117,1132,1149,1166,1183,1199,1215,1228,1240,1251,1259,1267,
+1273,1280,1286,1292,1299,1307,1317,1327,1337,1348,1359,1370,1380,1389,1396,1402,1408,1412,1416,1421,1425,
+1431,1438,1447,1457,1469,1482,1496,1510,1524,1536,1546,1555,1561,1565,1567,1566,1564,1561,1558,1555,1553,
+1552,1552,1553,1554,1556,1557,1557,1554,1548,1540,1527,1510,1490,1466,1439,1411,1382,1354,1327,1303,1282,
+1265,1254,1247,1245,1247,1254,1264,1276,1289,1303,1316,1327,1337,1343,1346,1346,1343,1336,1327,1316,1303,
+1291,1278,1267,1259,1253,1251,1252,1257,1266,1278,1293,1308,1324,1340,1353,1363,1370,1373,1372,1367,1358,
+1347,1334,1321,1307,1296,1286,1279,1274,1272,1272,1273,1275,1277,1279,1279,1278,1275,1272,1268,1265,1263,
+1262,1265,1271,1280,1293,1309,1326,1346,1365,1384,1402,1417,1429,1438,1443,1446,1446,1444,1440,1436,1430,
+1425,1419,1412,1405,1396,1386,1374,1359,1343,1325,1305,1284,1263,1243,1223,1206,1190,1176,1165,1156,1148,
+1140,1133,1126,1118,1109,1098,1087,1076,1064,1054,1045,1039,1037,1038,1043,1053,1066,1083,1103,1124,1145,
+1165,1183,1197,1207,1210,1207,1197,1180,1157,1127,1094,1057,1018,978,940,904,872,844,822,803,790,
+780,773,768,763,758,752,743,732,719,704,687,670,654,639,626,615,607,602,599,598,598,
+597,595,592,586,579,569,558,547,536,526,518,513,511,511,514,519,524,530,534,535,535,
+531,525,516,507,497,488,482,478,477,479,483,489,495,500,503,502,497,487,473,456,437,
+417,399,385,375,372,374,382,395,410,426,438,444,442,429,404,366,315,252,180,101,19,
+-64,-144,-218,-285,-342,-390,-427,-455,-475,-489,-498,-505,-512,-519,-528,-539,-553,-570,-589,-609,-631,
+-653,-676,-699,-722,-744,-767,-791,-815,-839,-865,-891,-918,-946,-974,-1002,-1031,-1060,-1089,-1119,-1149,-1180,
+-1212,-1246,-1281,-1318,-1355,-1394,-1433,-1471,-1509,-1546,-1581,-1613,-1643,-1670,-1694,-1716,-1736,-1755,-1773,-1791,-1809,
+-1829,-1850,-1873,-1897,-1924,-1953,-1983,-2014,-2046,-2080,-2114,-2148,-2183,-2219,-2256,-2294,-2334,-2376,-2419,-2465,-2511,
+-2559,-2608,-2656,-2703,-2748,-2791,-2830,-2866,-2899,-2928,-2955,-2979,-3003,-3026,-3050,-3075,-3103,-3133,-3165,-3199,-3235,
+-3270,-3306,-3340,-3372,-3401,-3427,-3449,-3469,-3487,-3503,-3518,-3534,-3550,-3566,-3584,-3602,-3620,-3638,-3655,-3670,-3683,
+-3692,-3699,-3704,-3708,-3712,-3716,-3724,-3735,-3750,-3771,-3797,-3829,-3864,-3902,-3941,-3979,-4015,-4046,-4073,-4094,-4109,
+-4119,-4125,-4128,-4130,-4133,-4137,-4145,-4158,-4176,-4199,-4227,-4259,-4294,-4332,-4371,-4410,-4450,-4488,-4526,-4564,-4601,
+-4638,-4676,-4714,-4753,-4793,-4832,-4870,-4906,-4940,-4969,-4994,-5013,-5027,-5035,-5038,-5037,-5032,-5025,-5018,-5012,-5007,
+-5005,-5007,-5014,-5024,-5039,-5058,-5081,-5106,-5134,-5163,-5193,-5224,-5255,-5285,-5314,-5342,-5369,-5394,-5417,-5438,-5458,
+-5475,-5490,-5503,-5515,-5525,-5535,-5545,-5556,-5568,-5581,-5596,-5613,-5631,-5651,-5672,-5692,-5713,-5732,-5748,-5763,-5774,
+-5782,-5787,-5789,-5789,-5787,-5783,-5780,-5777,-5775,-5774,-5774,-5775,-5777,-5778,-5780,-5780,-5778,-5774,-5767,-5758,-5745,
+-5731,-5715,-5698,-5682,-5666,-5654,-5644,-5638,-5636,-5638,-5644,-5653,-5664,-5675,-5685,-5693,-5697,-5697,-5691,-5679,-5662,
+-5640,-5614,-5587,-5559,-5534,-5512,-5497,-5489,-5490,-5500,-5519,-5547,-5581,-5620,-5663,-5707,-5749,-5788,-5821,-5849,-5868,
+-5880,-5885,-5883,-5875,-5863,-5848,-5831,-5813,-5796,-5781,-5767,-5756,-5748,-5743,-5741,-5742,-5746,-5752,-5761,-5772,-5785,
+-5799,-5815,-5831,-5846,-5860,-5872,-5882,-5888,-5890,-5888,-5882,-5873,-5861,-5846,-5831,-5815,-5801,-5788,-5778,-5772,-5769,
+-5769,-5772,-5777,-5785,-5794,-5804,-5815,-5827,-5839,-5851,-5865,-5879,-5894,-5910,-5927,-5945,-5963,-5981,-5998,-6013,-6026,
+-6036,-6044,-6049,-6052,-6053,-6053,-6052,-6052,-6053,-6054,-6058,-6062,-6068,-6073,-6078,-6082,-6083,-6082,-6077,-6070,-6060,
+-6047,-6033,-6019,-6006,-5994,-5985,-5979,-5976,-5975,-5978,-5982,-5988,-5995,-6001,-6007,-6012,-6015,-6017,-6018,-6018,-6017,
+-6017,-6017,-6016,-6016,-6016,-6015,-6013,-6010,-6005,-6000,-5993,-5986,-5980,-5976,-5974,-5976,-5983,-5995,-6012,-6035,-6063,
+-6094,-6128,-6162,-6196,-6227,-6254,-6277,-6295,-6309,-6317,-6322,-6324,-6325,-6326,-6327,-6330,-6334,-6340,-6348,-6357,-6365,
+-6373,-6379,-6383,-6384,-6381,-6377,-6370,-6361,-6353,-6344,-6337,-6332,-6330,-6329,-6329,-6330,-6331,-6330,-6326,-6318,-6305,
+-6287,-6263,-6233,-6199,-6160,-6120,-6078,-6037,-5998,-5961,-5927,-5897,-5870,-5845,-5823,-5802,-5780,-5758,-5734,-5708,-5679,
+-5648,-5615,-5580,-5545,-5509,-5475,-5442,-5411,-5382,-5356,-5331,-5308,-5286,-5264,-5242,-5220,-5197,-5173,-5149,-5123,-5097,
+-5070,-5043,-5015,-4987,-4959,-4930,-4899,-4867,-4833,-4797,-4759,-4719,-4678,-4637,-4596,-4555,-4517,-4482,-4450,-4421,-4397,
+-4377,-4359,-4345,-4332,-4320,-4307,-4293,-4278,-4261,-4241,-4220,-4196,-4172,-4148,-4125,-4104,-4086,-4071,-4060,-4053,-4051,
+-4052,-4056,-4063,-4070,-4078,-4084,-4087,-4087,-4082,-4071,-4054,-4031,-4003,-3971,-3935,-3897,-3859,-3822,-3789,-3761,-3738,
+-3721,-3711,-3707,-3708,-3712,-3719,-3727,-3733,-3737,-3737,-3733,-3724,-3712,-3697,-3680,-3663,-3648,-3637,-3630,-3628,-3631,
+-3639,-3651,-3665,-3680,-3693,-3704,-3710,-3711,-3705,-3693,-3675,-3653,-3629,-3602,-3577,-3554,-3535,-3521,-3513,-3510,-3512,
+-3517,-3526,-3534,-3542,-3547,-3547,-3542,-3531,-3512,-3486,-3454,-3417,-3375,-3331,-3286,-3242,-3200,-3163,-3130,-3104,-3085,
+-3072,-3065,-3064,-3068,-3075,-3084,-3093,-3102,-3108,-3110,-3109,-3102,-3092,-3076,-3058,-3036,-3013,-2989,-2965,-2943,-2923,
+-2905,-2891,-2878,-2869,-2860,-2853,-2846,-2839,-2831,-2821,-2809,-2796,-2781,-2766,-2749,-2732,-2716,-2701,-2686,-2673,-2661,
+-2651,-2642,-2633,-2624,-2615,-2606,-2596,-2585,-2574,-2561,-2549,-2536,-2523,-2511,-2499,-2488,-2478,-2469,-2460,-2452,-2443,
+-2434,-2424,-2412,-2400,-2385,-2369,-2351,-2331,-2311,-2290,-2270,-2250,-2231,-2214,-2199,-2185,-2174,-2165,-2157,-2150,-2143,
+-2136,-2128,-2118,-2107,-2093,-2076,-2057,-2037,-2015,-1992,-1969,-1947,-1926,-1907,-1891,-1877,-1866,-1858,-1853,-1850,-1848,
+-1848,-1849,-1850,-1852,-1853,-1854,-1854,-1854,-1853,-1851,-1848,-1844,-1838,-1830,-1822,-1812,-1802,-1791,-1780,-1771,-1763,
+-1757,-1755,-1755,-1759,-1765,-1774,-1785,-1796,-1805,-1813,-1817,-1817,-1812,-1802,-1786,-1766,-1742,-1716,-1689,-1663,-1639,
+-1618,-1601,-1588,-1579,-1574,-1570,-1567,-1563,-1556,-1545,-1528,-1505,-1475,-1439,-1397,-1350,-1299,-1246,-1192,-1140,-1090,
+-1044,-1003,-968,-939,-916,-900,-891,-889,-893,-904,-922,-945,-975,-1011,-1052,-1097,-1145,-1195,-1246,-1295,-1340,
+-1380,-1413,-1437,-1452,-1457,-1452,-1437,-1414,-1385,-1351,-1316,-1280,-1247,-1217,-1193,-1175,-1164,-1159,-1160,-1165,-1173,
+-1183,-1193,-1202,-1210,-1214,-1216,-1214,-1210,-1204,-1197,-1190,-1182,-1175,-1170,-1165,-1162,-1160,-1159,-1159,-1158,-1158,
+-1156,-1154,-1151,-1147,-1142,-1137,-1131,-1125,-1118,-1112,-1106,-1099,-1093,-1086,-1080,-1073,-1066,-1060,-1053,-1046,-1039,
+-1033,-1026,-1019,-1011,-1003,-995,-985,-975,-964,-952,-939,-926,-912,-899,-886,-874,-863,-853,-843,-835,-827,
+-819,-811,-803,-794,-785,-776,-767,-758,-749,-740,-733,-726,-720,-716,-712,-708,-705,-701,-697,-692,-686,
+-678,-670,-662,-653,-645,-638,-631,-626,-623,-621,-620,-620,-621,-623,-624,-625,-626,-625,-625,-623,-622,
+-620,-619,-618,-617,-617,-616,-616,-616,-614,-612,-609,-605,-599,-591,-583,-573,-562,-551,-540,-528,-516,
+-504,-493,-480,-468,-455,-441,-428,-414,-400,-387,-375,-364,-354,-346,-340,-335,-332,-329,-327,-324,-320,
+-315,-307,-296,-283,-267,-249,-229,-209,-189,-170,-153,-138,-127,-118,-112,-108,-105,-102,-99,-94,-87,
+-76,-61,-42,-19,7,37,70,103,138,173,207,240,272,304,334,364,394,424,454,484,515,
+545,574,602,628,651,671,687,700,709,716,720,722,724,726,729,733,739,746,755,765,775,
+785,793,800,805,808,808,806,802,798,793,789,786,786,787,790,795,802,809,816,822,826,
+828,827,823,816,806,793,779,764,749,590,580,573,567,564,562,562,564,567,571,577,584,
+591,600,610,621,633,646,660,674,688,702,715,727,738,747,754,759,764,768,772,776,782,
+789,797,808,821,835,851,867,882,898,911,923,933,940,945,948,950,952,954,956,961,967,
+976,988,1002,1019,1038,1058,1078,1099,1119,1138,1155,1171,1185,1197,1208,1218,1228,1237,1246,1256,1266,
+1276,1286,1296,1305,1314,1323,1330,1336,1341,1345,1349,1353,1358,1364,1371,1379,1390,1402,1415,1430,1445,
+1460,1474,1486,1497,1506,1512,1517,1519,1520,1519,1519,1518,1518,1519,1520,1523,1525,1528,1529,1528,1525,
+1518,1507,1492,1472,1448,1421,1392,1362,1332,1304,1279,1258,1242,1231,1226,1226,1231,1240,1253,1267,1281,
+1295,1308,1317,1324,1327,1327,1323,1316,1307,1296,1285,1273,1262,1251,1243,1236,1231,1229,1229,1232,1236,
+1241,1248,1256,1264,1272,1279,1285,1290,1293,1293,1292,1290,1285,1279,1272,1265,1258,1251,1244,1239,1235,
+1233,1231,1230,1230,1230,1230,1229,1229,1227,1225,1223,1221,1220,1219,1219,1222,1226,1232,1239,1249,1260,
+1271,1284,1296,1308,1318,1328,1336,1342,1347,1350,1351,1351,1349,1346,1341,1335,1328,1319,1309,1297,1284,
+1270,1256,1240,1224,1209,1193,1178,1164,1151,1139,1128,1118,1109,1101,1093,1087,1081,1076,1072,1069,1068,
+1068,1070,1073,1077,1083,1090,1097,1104,1111,1117,1121,1123,1123,1119,1113,1103,1089,1072,1052,1030,1005,
+978,951,922,894,867,841,816,794,774,757,742,728,717,707,697,687,677,667,655,643,629,
+616,602,590,578,568,560,555,552,550,550,551,552,552,551,547,542,534,524,513,500,488,
+476,466,459,454,452,452,455,458,462,466,468,468,466,462,456,448,440,433,426,422,420,
+421,425,431,437,444,449,452,451,447,438,427,412,397,381,367,356,349,347,350,357,368,
+380,391,398,400,394,379,353,316,269,213,149,81,10,-59,-126,-188,-244,-292,-333,-366,-392,
+-413,-430,-445,-459,-474,-489,-507,-526,-547,-569,-592,-615,-639,-662,-684,-706,-727,-749,-771,-794,-819,
+-844,-872,-901,-932,-964,-996,-1029,-1062,-1095,-1129,-1162,-1196,-1230,-1265,-1301,-1338,-1377,-1416,-1456,-1496,-1535,
+-1572,-1607,-1639,-1668,-1693,-1713,-1730,-1744,-1756,-1766,-1775,-1785,-1796,-1810,-1826,-1845,-1868,-1893,-1920,-1950,-1980,
+-2012,-2044,-2075,-2107,-2139,-2171,-2204,-2238,-2274,-2313,-2354,-2397,-2444,-2492,-2542,-2592,-2641,-2689,-2735,-2778,-2816,
+-2852,-2883,-2911,-2937,-2962,-2986,-3011,-3038,-3067,-3099,-3133,-3170,-3209,-3249,-3288,-3327,-3363,-3397,-3428,-3455,-3478,
+-3499,-3518,-3534,-3550,-3566,-3582,-3599,-3616,-3634,-3653,-3672,-3690,-3708,-3725,-3741,-3757,-3772,-3788,-3804,-3822,-3842,
+-3864,-3888,-3914,-3941,-3968,-3995,-4020,-4043,-4061,-4077,-4088,-4095,-4099,-4101,-4103,-4105,-4110,-4118,-4130,-4147,-4170,
+-4197,-4228,-4262,-4298,-4335,-4371,-4405,-4438,-4468,-4497,-4524,-4551,-4579,-4608,-4639,-4672,-4709,-4747,-4787,-4828,-4868,
+-4905,-4939,-4967,-4990,-5006,-5016,-5021,-5020,-5017,-5011,-5006,-5002,-5000,-5003,-5011,-5024,-5042,-5064,-5090,-5119,-5149,
+-5181,-5212,-5242,-5271,-5298,-5324,-5348,-5371,-5393,-5414,-5434,-5454,-5473,-5491,-5509,-5526,-5542,-5557,-5571,-5585,-5597,
+-5610,-5623,-5636,-5651,-5665,-5681,-5697,-5714,-5730,-5746,-5760,-5772,-5782,-5789,-5794,-5796,-5795,-5792,-5788,-5783,-5778,
+-5774,-5769,-5766,-5763,-5761,-5759,-5756,-5753,-5747,-5740,-5731,-5719,-5706,-5692,-5677,-5662,-5649,-5638,-5630,-5625,-5625,
+-5628,-5634,-5642,-5651,-5660,-5666,-5669,-5668,-5661,-5648,-5630,-5607,-5579,-5550,-5520,-5492,-5467,-5449,-5438,-5436,-5443,
+-5460,-5485,-5517,-5555,-5596,-5639,-5681,-5720,-5754,-5783,-5805,-5821,-5829,-5832,-5829,-5823,-5813,-5802,-5789,-5777,-5765,
+-5754,-5744,-5735,-5727,-5721,-5716,-5712,-5710,-5709,-5711,-5716,-5723,-5733,-5746,-5760,-5776,-5793,-5809,-5823,-5834,-5842,
+-5845,-5844,-5838,-5828,-5814,-5798,-5782,-5765,-5750,-5738,-5730,-5725,-5725,-5728,-5735,-5745,-5757,-5770,-5782,-5795,-5807,
+-5818,-5828,-5837,-5846,-5855,-5865,-5875,-5886,-5898,-5910,-5923,-5935,-5947,-5957,-5966,-5973,-5979,-5983,-5987,-5990,-5992,
+-5995,-5999,-6003,-6007,-6012,-6016,-6020,-6022,-6023,-6021,-6016,-6009,-6000,-5988,-5976,-5963,-5951,-5940,-5931,-5924,-5920,
+-5918,-5919,-5921,-5925,-5929,-5933,-5937,-5940,-5942,-5944,-5944,-5943,-5942,-5940,-5938,-5935,-5932,-5928,-5923,-5918,-5911,
+-5903,-5894,-5884,-5876,-5868,-5863,-5861,-5863,-5870,-5883,-5901,-5925,-5953,-5985,-6019,-6053,-6087,-6118,-6146,-6170,-6189,
+-6203,-6212,-6218,-6222,-6224,-6225,-6227,-6230,-6235,-6242,-6251,-6261,-6272,-6283,-6292,-6301,-6307,-6311,-6312,-6312,-6310,
+-6307,-6304,-6300,-6297,-6295,-6292,-6289,-6284,-6278,-6268,-6254,-6236,-6211,-6182,-6146,-6106,-6062,-6015,-5967,-5919,-5872,
+-5828,-5788,-5752,-5721,-5694,-5671,-5651,-5633,-5617,-5601,-5585,-5568,-5550,-5530,-5510,-5489,-5469,-5448,-5428,-5409,-5390,
+-5373,-5356,-5338,-5319,-5299,-5277,-5252,-5225,-5194,-5160,-5124,-5086,-5048,-5009,-4970,-4932,-4896,-4862,-4829,-4798,-4768,
+-4739,-4710,-4680,-4651,-4621,-4590,-4559,-4529,-4498,-4470,-4443,-4418,-4396,-4377,-4360,-4345,-4333,-4321,-4310,-4298,-4285,
+-4270,-4253,-4234,-4213,-4189,-4165,-4141,-4117,-4095,-4076,-4060,-4049,-4041,-4039,-4040,-4044,-4051,-4059,-4067,-4073,-4076,
+-4076,-4069,-4058,-4039,-4015,-3985,-3951,-3913,-3874,-3834,-3795,-3758,-3726,-3697,-3674,-3656,-3642,-3632,-3626,-3621,-3616,
+-3612,-3608,-3602,-3595,-3588,-3581,-3575,-3571,-3570,-3572,-3578,-3588,-3602,-3619,-3637,-3656,-3674,-3689,-3700,-3706,-3706,
+-3700,-3689,-3673,-3653,-3632,-3611,-3591,-3574,-3561,-3553,-3550,-3551,-3557,-3565,-3575,-3583,-3590,-3592,-3589,-3580,-3563,
+-3540,-3510,-3475,-3435,-3393,-3349,-3307,-3267,-3231,-3201,-3177,-3160,-3150,-3147,-3150,-3158,-3170,-3184,-3198,-3212,-3224,
+-3233,-3237,-3237,-3232,-3222,-3207,-3189,-3167,-3144,-3119,-3093,-3069,-3045,-3023,-3003,-2985,-2969,-2954,-2941,-2928,-2916,
+-2904,-2891,-2878,-2864,-2849,-2835,-2820,-2805,-2791,-2777,-2764,-2751,-2740,-2728,-2717,-2706,-2695,-2683,-2670,-2657,-2642,
+-2627,-2611,-2594,-2578,-2561,-2545,-2529,-2515,-2501,-2487,-2475,-2463,-2451,-2438,-2426,-2412,-2398,-2382,-2366,-2349,-2331,
+-2313,-2296,-2279,-2263,-2248,-2235,-2223,-2214,-2205,-2198,-2191,-2184,-2176,-2167,-2156,-2143,-2128,-2110,-2090,-2069,-2046,
+-2023,-1999,-1977,-1956,-1938,-1922,-1908,-1898,-1890,-1885,-1883,-1882,-1882,-1883,-1885,-1886,-1888,-1889,-1890,-1890,-1889,
+-1887,-1885,-1881,-1876,-1870,-1862,-1853,-1843,-1832,-1820,-1809,-1798,-1789,-1783,-1779,-1778,-1780,-1786,-1795,-1806,-1818,
+-1830,-1842,-1851,-1857,-1859,-1857,-1851,-1841,-1828,-1813,-1797,-1781,-1767,-1756,-1749,-1745,-1744,-1747,-1752,-1757,-1761,
+-1762,-1760,-1752,-1738,-1717,-1690,-1656,-1617,-1575,-1530,-1484,-1440,-1398,-1360,-1327,-1300,-1279,-1264,-1255,-1251,-1253,
+-1259,-1268,-1281,-1296,-1314,-1334,-1356,-1378,-1402,-1425,-1448,-1469,-1488,-1504,-1515,-1521,-1522,-1516,-1503,-1485,-1462,
+-1435,-1405,-1373,-1342,-1313,-1287,-1265,-1247,-1235,-1229,-1227,-1229,-1234,-1241,-1248,-1255,-1261,-1265,-1267,-1265,-1262,
+-1256,-1248,-1239,-1230,-1222,-1214,-1208,-1203,-1199,-1198,-1197,-1198,-1200,-1202,-1204,-1206,-1206,-1206,-1205,-1203,-1200,
+-1196,-1190,-1184,-1178,-1170,-1163,-1156,-1148,-1141,-1134,-1128,-1121,-1115,-1108,-1101,-1094,-1086,-1078,-1068,-1058,-1046,
+-1034,-1021,-1007,-994,-981,-968,-956,-944,-934,-924,-916,-908,-900,-893,-886,-879,-872,-865,-858,-851,-844,
+-839,-834,-830,-826,-823,-821,-819,-817,-815,-812,-808,-803,-798,-792,-786,-780,-774,-769,-765,-763,-761,
+-761,-762,-764,-766,-768,-769,-770,-770,-769,-767,-764,-760,-756,-752,-749,-745,-743,-740,-738,-735,-733,
+-729,-725,-720,-714,-706,-698,-688,-678,-668,-658,-647,-636,-625,-613,-600,-586,-570,-552,-531,-509,-485,
+-460,-434,-408,-382,-359,-337,-318,-301,-287,-275,-265,-256,-246,-236,-224,-210,-194,-175,-155,-135,-114,
+-94,-77,-64,-54,-50,-50,-54,-61,-70,-80,-89,-96,-98,-94,-84,-68,-45,-15,18,56,96,
+138,179,218,255,288,319,346,371,393,413,433,452,471,490,509,528,547,564,580,593,604,
+613,620,624,627,628,629,630,632,634,638,642,648,654,660,666,671,676,679,682,684,684,
+685,685,685,686,688,690,692,694,696,697,697,695,690,684,676,665,653,640,627,614,601,
+590,454,448,446,445,447,450,455,461,467,473,480,487,494,501,509,518,527,538,549,562,
+575,587,600,612,623,633,641,648,653,657,661,665,670,675,683,692,703,715,730,745,760,
+775,789,801,811,819,823,826,826,825,824,823,823,826,831,840,852,868,888,910,934,960,
+986,1012,1038,1061,1083,1102,1119,1133,1146,1157,1167,1176,1184,1192,1200,1207,1215,1222,1229,1235,1242,
+1247,1253,1259,1264,1271,1278,1286,1296,1308,1320,1334,1350,1365,1381,1397,1411,1424,1436,1445,1453,1459,
+1463,1467,1470,1473,1476,1479,1483,1486,1489,1492,1492,1489,1483,1473,1459,1440,1416,1389,1358,1326,1294,
+1263,1234,1210,1192,1179,1173,1174,1181,1194,1210,1229,1249,1268,1286,1301,1312,1318,1319,1317,1310,1301,
+1289,1276,1263,1250,1239,1229,1221,1216,1212,1210,1209,1210,1211,1212,1213,1215,1216,1217,1218,1218,1219,
+1219,1220,1220,1219,1219,1217,1216,1213,1210,1206,1201,1196,1191,1185,1180,1175,1170,1166,1163,1160,1158,
+1156,1155,1154,1153,1153,1153,1153,1153,1154,1156,1158,1162,1167,1173,1180,1188,1198,1208,1219,1229,1240,
+1249,1258,1264,1269,1272,1272,1270,1265,1258,1249,1238,1226,1213,1199,1185,1171,1156,1142,1128,1115,1102,
+1089,1076,1065,1054,1044,1036,1030,1026,1025,1027,1032,1040,1052,1066,1082,1099,1117,1134,1148,1160,1167,
+1170,1166,1157,1142,1121,1095,1065,1032,996,960,923,888,855,824,797,772,751,733,718,705,694,
+683,674,664,653,642,630,617,602,586,570,554,538,523,509,496,486,478,473,470,469,469,
+471,473,475,476,475,473,468,460,451,440,428,416,405,395,386,380,376,374,375,377,379,
+382,384,385,385,383,379,374,369,364,359,357,356,357,361,367,374,382,390,396,400,401,
+400,395,388,380,370,361,354,349,348,350,355,363,371,380,387,389,386,375,356,328,291,
+246,194,136,76,14,-45,-102,-156,-203,-245,-281,-312,-338,-362,-383,-404,-425,-447,-471,-496,-522,
+-550,-578,-605,-631,-657,-680,-702,-723,-743,-763,-783,-804,-827,-852,-880,-910,-943,-978,-1015,-1053,-1092,
+-1132,-1173,-1214,-1256,-1297,-1340,-1382,-1425,-1467,-1509,-1550,-1590,-1627,-1660,-1690,-1716,-1737,-1752,-1763,-1770,-1773,
+-1774,-1774,-1774,-1774,-1778,-1784,-1794,-1809,-1827,-1850,-1876,-1905,-1935,-1967,-2000,-2033,-2065,-2098,-2131,-2164,-2199,
+-2234,-2272,-2312,-2355,-2400,-2447,-2495,-2544,-2593,-2641,-2687,-2730,-2770,-2807,-2841,-2873,-2902,-2931,-2959,-2988,-3019,
+-3052,-3087,-3124,-3164,-3205,-3247,-3288,-3328,-3367,-3402,-3434,-3463,-3488,-3510,-3529,-3547,-3563,-3579,-3595,-3612,-3629,
+-3649,-3669,-3691,-3714,-3739,-3764,-3789,-3816,-3842,-3869,-3896,-3923,-3949,-3975,-4000,-4022,-4043,-4060,-4074,-4083,-4089,
+-4090,-4088,-4083,-4077,-4070,-4065,-4062,-4064,-4071,-4084,-4104,-4130,-4161,-4196,-4235,-4275,-4315,-4353,-4388,-4420,-4449,
+-4474,-4496,-4517,-4537,-4558,-4582,-4609,-4640,-4675,-4714,-4755,-4798,-4841,-4881,-4918,-4951,-4977,-4996,-5009,-5016,-5018,
+-5017,-5013,-5010,-5008,-5010,-5015,-5026,-5042,-5063,-5088,-5116,-5147,-5179,-5211,-5242,-5271,-5299,-5324,-5348,-5371,-5392,
+-5412,-5433,-5453,-5474,-5495,-5516,-5537,-5557,-5576,-5593,-5609,-5624,-5637,-5649,-5659,-5670,-5680,-5690,-5701,-5713,-5725,
+-5738,-5751,-5763,-5774,-5784,-5791,-5796,-5799,-5800,-5798,-5793,-5788,-5781,-5774,-5766,-5758,-5751,-5743,-5735,-5727,-5718,
+-5708,-5698,-5686,-5674,-5661,-5648,-5636,-5626,-5618,-5613,-5611,-5612,-5616,-5622,-5630,-5637,-5643,-5646,-5645,-5639,-5627,
+-5610,-5586,-5558,-5527,-5495,-5463,-5435,-5411,-5395,-5387,-5389,-5401,-5423,-5452,-5489,-5530,-5574,-5617,-5659,-5696,-5727,
+-5752,-5770,-5780,-5784,-5783,-5778,-5770,-5761,-5751,-5743,-5735,-5729,-5724,-5720,-5717,-5715,-5712,-5709,-5705,-5702,-5698,
+-5695,-5694,-5695,-5699,-5705,-5715,-5726,-5740,-5755,-5769,-5781,-5791,-5797,-5798,-5795,-5787,-5774,-5758,-5741,-5722,-5704,
+-5689,-5677,-5669,-5667,-5669,-5676,-5687,-5701,-5716,-5733,-5748,-5763,-5775,-5786,-5794,-5800,-5805,-5809,-5813,-5818,-5823,
+-5829,-5837,-5846,-5855,-5866,-5877,-5887,-5897,-5906,-5915,-5922,-5929,-5935,-5941,-5947,-5952,-5957,-5961,-5965,-5968,-5969,
+-5969,-5967,-5963,-5957,-5949,-5939,-5929,-5918,-5907,-5897,-5889,-5882,-5876,-5873,-5871,-5871,-5872,-5873,-5875,-5877,-5878,
+-5879,-5879,-5878,-5877,-5875,-5873,-5870,-5867,-5863,-5859,-5855,-5850,-5844,-5837,-5831,-5824,-5818,-5814,-5812,-5812,-5816,
+-5825,-5837,-5855,-5876,-5900,-5927,-5955,-5984,-6011,-6036,-6058,-6076,-6089,-6098,-6103,-6104,-6103,-6100,-6097,-6094,-6093,
+-6093,-6096,-6100,-6106,-6114,-6123,-6132,-6141,-6149,-6155,-6161,-6164,-6167,-6168,-6168,-6167,-6165,-6162,-6158,-6151,-6143,
+-6132,-6117,-6098,-6074,-6046,-6014,-5978,-5938,-5896,-5853,-5810,-5769,-5730,-5694,-5663,-5637,-5615,-5597,-5583,-5573,-5564,
+-5557,-5550,-5543,-5535,-5525,-5514,-5502,-5488,-5474,-5458,-5443,-5427,-5410,-5393,-5375,-5356,-5334,-5310,-5283,-5252,-5218,
+-5181,-5140,-5097,-5052,-5007,-4961,-4916,-4873,-4832,-4793,-4758,-4725,-4695,-4667,-4640,-4615,-4590,-4566,-4542,-4518,-4494,
+-4471,-4448,-4427,-4406,-4388,-4371,-4356,-4343,-4331,-4321,-4310,-4300,-4288,-4276,-4262,-4246,-4228,-4209,-4190,-4170,-4150,
+-4132,-4116,-4103,-4093,-4086,-4083,-4084,-4087,-4092,-4098,-4104,-4109,-4110,-4108,-4102,-4089,-4071,-4047,-4017,-3983,-3943,
+-3901,-3857,-3812,-3767,-3723,-3682,-3643,-3608,-3577,-3549,-3525,-3505,-3488,-3474,-3463,-3455,-3451,-3450,-3454,-3461,-3472,
+-3488,-3507,-3529,-3554,-3581,-3608,-3634,-3658,-3678,-3694,-3704,-3709,-3708,-3702,-3691,-3676,-3660,-3644,-3628,-3615,-3605,
+-3598,-3596,-3598,-3604,-3611,-3619,-3627,-3633,-3635,-3633,-3625,-3611,-3591,-3566,-3536,-3502,-3466,-3429,-3393,-3360,-3330,
+-3306,-3286,-3273,-3266,-3265,-3269,-3277,-3289,-3303,-3318,-3333,-3346,-3357,-3364,-3368,-3368,-3363,-3354,-3340,-3323,-3303,
+-3280,-3255,-3229,-3201,-3174,-3147,-3121,-3096,-3072,-3050,-3029,-3010,-2992,-2975,-2960,-2945,-2931,-2918,-2906,-2894,-2882,
+-2870,-2858,-2846,-2834,-2821,-2807,-2793,-2778,-2762,-2744,-2726,-2707,-2686,-2666,-2645,-2623,-2602,-2582,-2562,-2543,-2525,
+-2508,-2492,-2477,-2463,-2450,-2437,-2425,-2412,-2399,-2387,-2374,-2360,-2347,-2334,-2321,-2308,-2296,-2284,-2273,-2263,-2253,
+-2244,-2235,-2225,-2215,-2204,-2191,-2177,-2162,-2144,-2125,-2105,-2084,-2063,-2042,-2021,-2002,-1985,-1970,-1957,-1946,-1938,
+-1932,-1928,-1926,-1925,-1924,-1925,-1925,-1926,-1926,-1927,-1927,-1926,-1924,-1922,-1919,-1914,-1907,-1899,-1889,-1877,-1864,
+-1849,-1834,-1818,-1803,-1790,-1780,-1772,-1769,-1770,-1776,-1786,-1800,-1818,-1837,-1858,-1879,-1898,-1914,-1927,-1937,-1942,
+-1944,-1943,-1939,-1934,-1929,-1924,-1920,-1919,-1919,-1922,-1926,-1931,-1935,-1939,-1940,-1937,-1930,-1919,-1903,-1882,-1857,
+-1829,-1798,-1767,-1736,-1707,-1680,-1657,-1638,-1623,-1612,-1606,-1603,-1603,-1606,-1611,-1616,-1623,-1630,-1637,-1644,-1651,
+-1657,-1662,-1666,-1668,-1668,-1666,-1660,-1651,-1638,-1621,-1599,-1574,-1545,-1514,-1481,-1448,-1415,-1384,-1357,-1333,-1313,
+-1299,-1289,-1284,-1283,-1285,-1290,-1295,-1300,-1305,-1307,-1308,-1307,-1303,-1297,-1289,-1280,-1270,-1261,-1253,-1246,-1240,
+-1237,-1235,-1236,-1238,-1241,-1245,-1249,-1254,-1257,-1260,-1261,-1262,-1261,-1258,-1255,-1251,-1246,-1240,-1234,-1228,-1223,
+-1217,-1211,-1205,-1199,-1193,-1186,-1178,-1170,-1161,-1150,-1139,-1127,-1115,-1102,-1089,-1076,-1064,-1052,-1041,-1032,-1023,
+-1015,-1007,-1001,-994,-989,-983,-977,-971,-965,-959,-953,-948,-943,-939,-935,-931,-929,-926,-924,-922,-920,
+-918,-915,-912,-909,-905,-902,-899,-896,-894,-893,-892,-893,-894,-895,-897,-898,-899,-899,-898,-896,-892,
+-888,-883,-877,-871,-865,-860,-855,-850,-846,-842,-838,-833,-827,-821,-813,-803,-793,-781,-768,-755,-742,
+-729,-716,-704,-691,-678,-663,-648,-629,-608,-584,-556,-525,-490,-453,-415,-376,-338,-301,-267,-237,-211,
+-189,-170,-155,-141,-129,-117,-104,-89,-73,-56,-37,-18,0,16,29,37,40,37,29,15,-2,
+-22,-43,-62,-77,-86,-89,-83,-68,-45,-14,23,66,111,158,203,245,283,316,344,366,383,
+396,406,415,422,430,439,449,460,473,486,499,512,523,533,540,545,548,549,548,546,544,
+542,540,539,539,540,542,546,550,555,560,565,571,576,581,586,590,594,597,599,600,599,
+597,593,587,578,568,556,542,528,513,498,484,472,462,454,372,369,368,369,373,377,383,
+390,396,403,410,417,423,429,436,443,451,459,469,480,491,502,514,526,537,547,556,564,
+570,576,581,586,591,597,604,612,622,634,647,662,676,691,705,717,727,735,740,743,743,
+742,740,738,737,738,742,749,760,775,794,816,842,869,898,928,956,983,1008,1030,1050,1066,
+1080,1091,1100,1107,1113,1119,1124,1130,1135,1141,1148,1154,1161,1168,1176,1183,1191,1200,1209,1219,1230,
+1242,1255,1270,1285,1301,1316,1332,1347,1361,1374,1385,1394,1402,1408,1414,1419,1423,1427,1431,1435,1439,
+1442,1444,1443,1440,1434,1423,1409,1389,1366,1339,1309,1278,1246,1216,1189,1166,1148,1137,1132,1134,1142,
+1155,1173,1193,1214,1235,1254,1269,1281,1289,1292,1291,1286,1278,1267,1256,1244,1233,1223,1214,1207,1201,
+1197,1193,1190,1188,1185,1183,1180,1177,1174,1171,1169,1168,1167,1168,1169,1172,1174,1177,1179,1180,1180,
+1178,1175,1169,1162,1153,1144,1133,1124,1114,1106,1099,1094,1091,1089,1089,1090,1092,1094,1096,1097,1099,
+1100,1100,1101,1101,1103,1105,1109,1115,1122,1132,1143,1155,1168,1181,1194,1205,1215,1222,1226,1227,1225,
+1220,1212,1201,1189,1175,1160,1145,1130,1114,1099,1084,1069,1054,1040,1026,1013,1001,990,982,976,974,
+975,981,991,1006,1025,1047,1071,1096,1121,1144,1163,1177,1185,1186,1178,1163,1140,1110,1073,1033,989,
+945,901,858,819,785,754,729,709,693,681,672,665,658,651,644,634,623,610,594,577,559,
+539,520,501,484,468,455,444,436,431,428,427,427,428,429,429,428,425,421,414,406,396,
+385,373,361,350,340,332,326,322,320,320,321,323,325,327,328,327,326,323,319,315,311,
+307,305,304,305,309,314,321,329,337,345,351,355,358,357,355,351,346,341,336,333,332,
+333,337,343,350,357,364,367,367,360,347,326,298,262,219,171,118,64,9,-44,-95,-142,
+-185,-224,-257,-287,-314,-339,-364,-388,-413,-439,-467,-497,-527,-559,-590,-620,-649,-676,-702,-725,-746,
+-766,-785,-805,-825,-847,-871,-898,-928,-962,-999,-1039,-1081,-1126,-1173,-1221,-1270,-1319,-1369,-1418,-1467,-1514,
+-1560,-1604,-1645,-1683,-1717,-1746,-1771,-1790,-1804,-1812,-1816,-1815,-1811,-1805,-1798,-1792,-1786,-1784,-1785,-1790,-1800,
+-1814,-1833,-1855,-1882,-1911,-1942,-1975,-2009,-2043,-2078,-2114,-2151,-2188,-2226,-2266,-2307,-2350,-2394,-2439,-2485,-2531,
+-2577,-2621,-2664,-2705,-2745,-2782,-2817,-2850,-2883,-2916,-2948,-2981,-3016,-3052,-3090,-3129,-3169,-3210,-3250,-3290,-3328,
+-3363,-3396,-3427,-3454,-3478,-3500,-3520,-3538,-3556,-3574,-3592,-3611,-3631,-3653,-3676,-3701,-3728,-3756,-3786,-3816,-3847,
+-3878,-3910,-3940,-3971,-3999,-4025,-4049,-4069,-4085,-4096,-4102,-4103,-4100,-4092,-4082,-4070,-4057,-4046,-4038,-4035,-4037,
+-4046,-4062,-4086,-4115,-4151,-4190,-4232,-4274,-4315,-4354,-4389,-4420,-4447,-4470,-4490,-4508,-4526,-4545,-4567,-4593,-4623,
+-4657,-4696,-4737,-4781,-4825,-4867,-4907,-4942,-4971,-4993,-5010,-5020,-5025,-5026,-5024,-5022,-5021,-5022,-5027,-5036,-5050,
+-5068,-5091,-5117,-5146,-5176,-5206,-5236,-5266,-5294,-5321,-5346,-5371,-5394,-5417,-5440,-5462,-5485,-5508,-5530,-5551,-5572,
+-5591,-5608,-5623,-5637,-5648,-5658,-5666,-5674,-5681,-5689,-5698,-5707,-5717,-5728,-5740,-5751,-5762,-5772,-5781,-5788,-5792,
+-5794,-5793,-5790,-5785,-5778,-5769,-5760,-5750,-5739,-5727,-5715,-5703,-5690,-5677,-5663,-5649,-5636,-5623,-5611,-5601,-5593,
+-5588,-5586,-5586,-5589,-5594,-5599,-5605,-5609,-5610,-5607,-5600,-5587,-5568,-5544,-5515,-5483,-5450,-5418,-5389,-5365,-5349,
+-5340,-5342,-5353,-5374,-5403,-5440,-5481,-5524,-5568,-5610,-5647,-5679,-5704,-5721,-5731,-5735,-5734,-5728,-5720,-5712,-5703,
+-5696,-5691,-5687,-5686,-5687,-5688,-5690,-5691,-5692,-5691,-5689,-5687,-5683,-5681,-5679,-5680,-5682,-5688,-5696,-5706,-5719,
+-5731,-5743,-5753,-5760,-5762,-5760,-5753,-5740,-5724,-5704,-5682,-5660,-5640,-5623,-5610,-5602,-5599,-5603,-5611,-5624,-5641,
+-5659,-5678,-5697,-5713,-5728,-5739,-5748,-5754,-5758,-5760,-5762,-5764,-5766,-5770,-5776,-5784,-5793,-5804,-5816,-5828,-5840,
+-5852,-5864,-5874,-5884,-5892,-5899,-5905,-5911,-5915,-5918,-5921,-5922,-5922,-5921,-5918,-5914,-5909,-5902,-5894,-5885,-5876,
+-5867,-5858,-5850,-5844,-5839,-5835,-5832,-5831,-5831,-5831,-5832,-5833,-5834,-5834,-5834,-5834,-5834,-5833,-5832,-5831,-5830,
+-5830,-5829,-5828,-5827,-5826,-5826,-5825,-5826,-5826,-5828,-5832,-5837,-5844,-5854,-5866,-5879,-5895,-5912,-5930,-5948,-5964,
+-5979,-5991,-6000,-6006,-6007,-6005,-5999,-5991,-5981,-5970,-5959,-5948,-5938,-5931,-5926,-5923,-5922,-5924,-5927,-5931,-5936,
+-5941,-5946,-5950,-5954,-5957,-5959,-5959,-5959,-5958,-5955,-5951,-5945,-5938,-5927,-5914,-5899,-5880,-5858,-5833,-5806,-5777,
+-5747,-5717,-5688,-5660,-5635,-5614,-5595,-5581,-5570,-5562,-5557,-5554,-5552,-5550,-5548,-5544,-5539,-5531,-5522,-5510,-5496,
+-5480,-5463,-5445,-5426,-5406,-5385,-5363,-5340,-5315,-5288,-5259,-5228,-5194,-5158,-5119,-5078,-5035,-4991,-4947,-4903,-4860,
+-4818,-4778,-4740,-4704,-4671,-4640,-4611,-4585,-4559,-4536,-4514,-4492,-4472,-4453,-4435,-4419,-4403,-4388,-4375,-4363,-4352,
+-4341,-4331,-4320,-4310,-4298,-4287,-4274,-4260,-4246,-4231,-4215,-4201,-4187,-4174,-4162,-4153,-4146,-4141,-4138,-4137,-4137,
+-4138,-4138,-4138,-4137,-4133,-4126,-4115,-4100,-4081,-4057,-4028,-3996,-3959,-3919,-3876,-3831,-3785,-3738,-3692,-3646,-3602,
+-3561,-3522,-3487,-3456,-3430,-3409,-3394,-3384,-3381,-3385,-3395,-3410,-3431,-3457,-3487,-3519,-3552,-3585,-3616,-3645,-3669,
+-3688,-3702,-3711,-3713,-3711,-3704,-3694,-3682,-3669,-3657,-3646,-3637,-3632,-3629,-3630,-3633,-3638,-3643,-3649,-3652,-3653,
+-3651,-3645,-3634,-3619,-3601,-3579,-3554,-3529,-3503,-3478,-3454,-3433,-3416,-3402,-3393,-3387,-3386,-3387,-3392,-3399,-3407,
+-3417,-3426,-3435,-3443,-3449,-3452,-3454,-3452,-3447,-3439,-3428,-3414,-3396,-3376,-3352,-3327,-3300,-3271,-3242,-3213,-3184,
+-3156,-3129,-3104,-3081,-3060,-3041,-3025,-3010,-2998,-2986,-2975,-2965,-2955,-2945,-2934,-2922,-2909,-2894,-2878,-2861,-2841,
+-2821,-2799,-2777,-2753,-2729,-2704,-2680,-2656,-2632,-2609,-2586,-2565,-2545,-2527,-2510,-2494,-2479,-2466,-2454,-2443,-2432,
+-2422,-2412,-2402,-2392,-2381,-2370,-2359,-2347,-2335,-2322,-2309,-2296,-2283,-2269,-2255,-2241,-2226,-2211,-2196,-2180,-2164,
+-2146,-2129,-2111,-2093,-2075,-2057,-2039,-2023,-2007,-1992,-1979,-1968,-1957,-1949,-1942,-1937,-1932,-1930,-1929,-1929,-1930,
+-1931,-1934,-1936,-1939,-1941,-1942,-1942,-1939,-1934,-1926,-1915,-1901,-1884,-1864,-1842,-1819,-1796,-1775,-1756,-1741,-1730,
+-1725,-1727,-1736,-1750,-1771,-1797,-1827,-1860,-1893,-1927,-1959,-1987,-2012,-2033,-2049,-2060,-2067,-2070,-2070,-2068,-2065,
+-2061,-2056,-2052,-2048,-2045,-2041,-2037,-2033,-2027,-2020,-2011,-2000,-1987,-1972,-1956,-1939,-1921,-1904,-1886,-1870,-1855,
+-1841,-1829,-1818,-1810,-1803,-1797,-1793,-1790,-1789,-1788,-1789,-1790,-1791,-1792,-1793,-1793,-1791,-1787,-1780,-1770,-1755,
+-1737,-1714,-1687,-1657,-1623,-1587,-1550,-1514,-1478,-1445,-1415,-1390,-1369,-1353,-1343,-1336,-1334,-1335,-1338,-1341,-1345,
+-1349,-1350,-1350,-1348,-1343,-1337,-1330,-1321,-1313,-1304,-1297,-1292,-1288,-1286,-1285,-1287,-1290,-1293,-1298,-1302,-1306,
+-1309,-1312,-1313,-1313,-1312,-1311,-1308,-1306,-1303,-1300,-1297,-1294,-1291,-1288,-1285,-1281,-1276,-1271,-1264,-1256,-1246,
+-1235,-1223,-1211,-1198,-1184,-1171,-1159,-1147,-1137,-1127,-1119,-1112,-1106,-1101,-1096,-1091,-1087,-1083,-1078,-1073,-1068,
+-1063,-1058,-1053,-1048,-1043,-1039,-1035,-1031,-1028,-1026,-1023,-1021,-1018,-1016,-1014,-1011,-1009,-1008,-1007,-1006,-1006,
+-1006,-1008,-1009,-1011,-1012,-1013,-1013,-1012,-1009,-1006,-1001,-994,-988,-980,-972,-965,-958,-952,-947,-942,-938,
+-933,-928,-922,-914,-904,-891,-876,-859,-839,-817,-794,-771,-748,-725,-703,-682,-662,-642,-622,-600,-578,
+-552,-524,-493,-458,-421,-381,-341,-299,-259,-222,-187,-157,-131,-109,-92,-79,-68,-59,-50,-41,-31,
+-19,-6,8,24,38,51,61,66,65,59,48,31,11,-11,-34,-56,-73,-83,-87,-81,-66,
+-42,-10,28,72,118,165,210,251,287,317,340,356,367,373,375,376,375,375,377,381,388,
+396,407,419,431,442,453,461,467,470,471,470,466,462,457,452,448,446,444,445,447,451,
+457,463,470,477,485,492,498,504,509,512,513,513,511,508,502,494,485,473,461,448,434,
+420,407,396,386,378,372,290,285,282,281,282,284,288,293,300,307,314,322,331,340,349,
+359,370,381,392,404,416,429,441,453,465,476,485,494,502,509,516,523,529,536,544,553,
+563,575,587,601,615,629,642,654,664,673,679,683,685,686,686,685,686,687,691,698,708,
+722,739,760,783,809,835,862,889,915,938,960,978,995,1008,1019,1029,1037,1044,1050,1056,1063,
+1069,1076,1084,1092,1100,1108,1116,1125,1134,1143,1152,1162,1173,1184,1197,1210,1225,1240,1255,1270,1284,
+1298,1310,1321,1331,1338,1345,1350,1354,1357,1360,1363,1366,1369,1371,1372,1373,1371,1368,1361,1351,1338,
+1321,1302,1279,1255,1231,1206,1184,1164,1148,1136,1130,1129,1132,1140,1151,1164,1179,1194,1207,1219,1228,
+1233,1236,1235,1232,1226,1218,1210,1201,1193,1185,1179,1173,1168,1164,1160,1156,1153,1149,1145,1141,1137,
+1133,1131,1129,1128,1129,1132,1136,1140,1145,1150,1154,1157,1157,1155,1150,1143,1134,1122,1109,1096,1082,
+1070,1060,1051,1046,1043,1043,1045,1049,1054,1059,1064,1069,1072,1074,1074,1073,1072,1070,1069,1069,1070,
+1074,1080,1088,1099,1111,1125,1139,1153,1165,1176,1184,1189,1191,1190,1186,1179,1169,1157,1144,1130,1114,
+1099,1083,1068,1052,1037,1021,1007,993,980,968,959,952,948,949,953,961,974,990,1010,1031,1053,
+1074,1094,1109,1120,1125,1123,1113,1097,1074,1045,1011,973,934,894,856,821,789,761,738,719,705,
+694,685,678,672,665,656,646,633,618,600,581,560,539,518,498,481,466,453,444,438,434,
+433,433,435,436,437,437,435,432,426,417,407,396,384,371,359,348,339,331,326,323,322,
+323,325,327,329,331,331,330,327,322,316,310,302,295,289,284,280,279,280,282,286,290,
+295,298,301,301,300,296,290,282,274,265,256,250,245,242,241,243,246,250,253,254,252,
+246,235,218,195,166,132,93,51,7,-36,-80,-122,-162,-198,-231,-261,-289,-314,-338,-362,-386,
+-412,-439,-468,-499,-530,-563,-596,-629,-660,-690,-718,-744,-768,-791,-813,-834,-857,-880,-906,-935,-967,
+-1002,-1041,-1083,-1129,-1177,-1228,-1281,-1334,-1388,-1441,-1494,-1544,-1593,-1639,-1681,-1720,-1755,-1786,-1811,-1832,-1848,
+-1859,-1866,-1869,-1868,-1865,-1860,-1854,-1848,-1843,-1840,-1840,-1842,-1848,-1858,-1871,-1888,-1908,-1932,-1958,-1987,-2017,
+-2050,-2085,-2121,-2159,-2198,-2239,-2280,-2323,-2366,-2409,-2453,-2496,-2538,-2580,-2620,-2659,-2697,-2733,-2768,-2803,-2837,
+-2871,-2906,-2941,-2977,-3015,-3053,-3092,-3131,-3170,-3209,-3247,-3283,-3318,-3350,-3380,-3408,-3434,-3458,-3481,-3503,-3524,
+-3545,-3567,-3589,-3612,-3635,-3660,-3685,-3710,-3737,-3764,-3791,-3820,-3848,-3877,-3906,-3935,-3963,-3990,-4016,-4040,-4061,
+-4078,-4091,-4100,-4105,-4105,-4102,-4095,-4087,-4078,-4070,-4065,-4063,-4066,-4075,-4091,-4112,-4139,-4172,-4207,-4245,-4284,
+-4322,-4357,-4390,-4419,-4444,-4465,-4484,-4502,-4519,-4537,-4557,-4581,-4609,-4640,-4676,-4715,-4757,-4799,-4841,-4880,-4916,
+-4947,-4973,-4993,-5007,-5017,-5022,-5024,-5024,-5025,-5026,-5030,-5037,-5047,-5062,-5081,-5103,-5128,-5155,-5183,-5213,-5243,
+-5272,-5300,-5328,-5355,-5380,-5405,-5429,-5452,-5475,-5496,-5517,-5537,-5555,-5572,-5587,-5601,-5613,-5624,-5635,-5644,-5653,
+-5663,-5673,-5683,-5694,-5705,-5717,-5729,-5740,-5751,-5761,-5769,-5775,-5779,-5780,-5780,-5777,-5773,-5766,-5759,-5750,-5741,
+-5730,-5719,-5707,-5694,-5680,-5666,-5651,-5636,-5621,-5607,-5593,-5581,-5572,-5564,-5559,-5556,-5555,-5555,-5555,-5555,-5554,
+-5550,-5542,-5529,-5513,-5491,-5465,-5436,-5406,-5375,-5346,-5321,-5302,-5290,-5285,-5290,-5304,-5325,-5354,-5389,-5427,-5466,
+-5506,-5542,-5574,-5601,-5622,-5637,-5646,-5650,-5649,-5646,-5641,-5635,-5630,-5626,-5624,-5623,-5624,-5625,-5627,-5629,-5630,
+-5630,-5629,-5627,-5625,-5623,-5622,-5623,-5627,-5633,-5642,-5654,-5667,-5682,-5697,-5711,-5722,-5729,-5731,-5728,-5719,-5705,
+-5686,-5664,-5640,-5615,-5592,-5573,-5557,-5547,-5543,-5545,-5553,-5565,-5581,-5599,-5619,-5638,-5656,-5672,-5686,-5696,-5704,
+-5710,-5714,-5718,-5721,-5725,-5731,-5738,-5746,-5757,-5769,-5782,-5795,-5808,-5821,-5834,-5845,-5854,-5862,-5868,-5874,-5877,
+-5880,-5881,-5882,-5882,-5881,-5879,-5876,-5872,-5867,-5862,-5856,-5849,-5842,-5835,-5828,-5821,-5816,-5811,-5808,-5806,-5804,
+-5804,-5804,-5805,-5807,-5808,-5810,-5811,-5812,-5813,-5814,-5815,-5817,-5818,-5820,-5822,-5824,-5827,-5831,-5835,-5840,-5845,
+-5851,-5858,-5865,-5873,-5882,-5891,-5900,-5910,-5920,-5929,-5937,-5944,-5949,-5951,-5951,-5948,-5942,-5933,-5921,-5907,-5892,
+-5875,-5858,-5841,-5825,-5810,-5797,-5787,-5778,-5772,-5768,-5765,-5764,-5763,-5764,-5764,-5764,-5764,-5764,-5764,-5762,-5761,
+-5759,-5756,-5752,-5748,-5743,-5737,-5730,-5721,-5710,-5699,-5685,-5671,-5655,-5639,-5623,-5608,-5593,-5580,-5569,-5559,-5551,
+-5545,-5541,-5537,-5534,-5531,-5528,-5523,-5517,-5509,-5499,-5486,-5472,-5456,-5438,-5418,-5398,-5377,-5356,-5335,-5313,-5291,
+-5268,-5245,-5221,-5195,-5168,-5139,-5108,-5075,-5040,-5004,-4966,-4927,-4888,-4849,-4810,-4772,-4736,-4701,-4668,-4638,-4610,
+-4584,-4561,-4540,-4521,-4503,-4488,-4474,-4461,-4448,-4437,-4426,-4414,-4403,-4391,-4379,-4366,-4352,-4338,-4324,-4310,-4295,
+-4281,-4267,-4254,-4242,-4230,-4220,-4212,-4204,-4198,-4192,-4187,-4182,-4177,-4172,-4165,-4158,-4149,-4138,-4125,-4110,-4093,
+-4073,-4051,-4026,-3998,-3968,-3936,-3901,-3864,-3825,-3784,-3743,-3702,-3661,-3620,-3582,-3547,-3516,-3489,-3468,-3452,-3443,
+-3441,-3446,-3456,-3473,-3494,-3520,-3547,-3577,-3606,-3633,-3659,-3680,-3697,-3709,-3717,-3719,-3718,-3712,-3704,-3695,-3684,
+-3674,-3665,-3657,-3652,-3648,-3647,-3647,-3648,-3650,-3652,-3652,-3651,-3648,-3643,-3635,-3625,-3613,-3600,-3585,-3570,-3555,
+-3541,-3527,-3515,-3505,-3497,-3490,-3485,-3481,-3478,-3477,-3476,-3476,-3476,-3476,-3477,-3478,-3479,-3479,-3479,-3479,-3477,
+-3474,-3469,-3462,-3452,-3439,-3424,-3406,-3385,-3362,-3336,-3310,-3282,-3255,-3228,-3202,-3178,-3156,-3136,-3118,-3102,-3089,
+-3077,-3066,-3056,-3046,-3036,-3025,-3013,-3000,-2985,-2970,-2953,-2934,-2915,-2894,-2873,-2851,-2829,-2806,-2782,-2758,-2734,
+-2710,-2687,-2663,-2640,-2617,-2595,-2575,-2555,-2537,-2521,-2505,-2491,-2478,-2466,-2455,-2443,-2431,-2419,-2406,-2392,-2377,
+-2360,-2343,-2325,-2307,-2288,-2269,-2250,-2231,-2213,-2196,-2179,-2162,-2146,-2130,-2113,-2096,-2079,-2061,-2042,-2023,-2003,
+-1982,-1962,-1943,-1924,-1907,-1892,-1880,-1870,-1864,-1861,-1862,-1866,-1874,-1884,-1897,-1910,-1925,-1939,-1951,-1962,-1968,
+-1971,-1968,-1960,-1946,-1927,-1903,-1875,-1843,-1810,-1776,-1744,-1716,-1692,-1674,-1664,-1663,-1670,-1686,-1710,-1742,-1779,
+-1822,-1867,-1913,-1958,-2000,-2039,-2072,-2099,-2119,-2133,-2139,-2140,-2135,-2126,-2114,-2099,-2082,-2066,-2049,-2034,-2019,
+-2007,-1996,-1986,-1978,-1971,-1964,-1957,-1950,-1942,-1932,-1922,-1910,-1897,-1882,-1866,-1850,-1833,-1817,-1802,-1789,-1778,
+-1769,-1764,-1761,-1760,-1762,-1766,-1770,-1775,-1779,-1780,-1779,-1774,-1764,-1750,-1731,-1707,-1679,-1648,-1614,-1579,-1545,
+-1512,-1482,-1455,-1433,-1415,-1402,-1393,-1388,-1386,-1387,-1389,-1392,-1394,-1394,-1394,-1391,-1387,-1381,-1374,-1366,-1359,
+-1351,-1345,-1340,-1337,-1336,-1336,-1338,-1341,-1345,-1349,-1353,-1356,-1359,-1360,-1360,-1360,-1359,-1357,-1355,-1354,-1353,
+-1352,-1352,-1353,-1354,-1356,-1357,-1357,-1356,-1354,-1350,-1344,-1336,-1327,-1316,-1303,-1290,-1276,-1262,-1249,-1237,-1226,
+-1216,-1207,-1200,-1194,-1189,-1184,-1180,-1176,-1172,-1167,-1163,-1159,-1154,-1149,-1145,-1141,-1137,-1134,-1131,-1129,-1126,
+-1125,-1123,-1121,-1119,-1117,-1116,-1114,-1112,-1111,-1111,-1110,-1111,-1112,-1114,-1115,-1117,-1118,-1119,-1118,-1116,-1113,
+-1108,-1101,-1093,-1083,-1074,-1064,-1054,-1045,-1037,-1030,-1024,-1018,-1012,-1005,-997,-986,-973,-955,-934,-909,-881,
+-849,-815,-779,-743,-707,-672,-639,-608,-580,-553,-529,-506,-483,-460,-435,-410,-383,-354,-323,-292,-261,
+-231,-203,-178,-156,-138,-124,-113,-105,-99,-95,-91,-86,-80,-72,-62,-51,-39,-28,-17,-9,-4,
+-4,-8,-17,-30,-45,-63,-80,-96,-108,-114,-114,-106,-89,-65,-34,2,43,85,127,168,204,
+235,259,278,290,296,298,297,293,289,286,285,286,289,295,303,312,322,332,340,347,351,
+353,353,350,346,341,336,331,327,325,324,326,329,334,340,348,356,364,372,379,386,391,
+395,398,400,400,399,397,393,388,381,374,365,356,345,335,324,314,305,297,290,164,153,
+143,136,131,128,128,130,135,143,152,164,176,190,205,220,236,252,267,282,297,312,325,
+339,351,363,374,384,394,403,412,421,430,439,449,460,471,483,495,508,521,534,546,557,
+567,575,582,587,591,593,595,597,600,603,608,615,624,636,650,666,685,705,726,748,770,
+792,813,833,851,868,884,898,911,924,937,949,960,972,984,995,1006,1017,1027,1036,1045,1053,
+1061,1069,1077,1086,1095,1104,1115,1127,1141,1155,1169,1184,1198,1212,1225,1236,1246,1254,1260,1264,1267,
+1269,1271,1272,1273,1274,1275,1277,1278,1279,1279,1277,1274,1269,1262,1252,1240,1226,1211,1196,1180,1166,
+1153,1142,1133,1128,1125,1125,1126,1130,1134,1139,1143,1146,1148,1149,1147,1145,1140,1135,1129,1123,1117,
+1112,1108,1104,1101,1099,1097,1096,1094,1093,1091,1089,1087,1086,1085,1085,1086,1088,1091,1096,1101,1107,
+1113,1118,1122,1124,1123,1120,1114,1105,1093,1080,1065,1051,1036,1024,1013,1005,1001,999,1001,1005,1011,
+1019,1027,1034,1040,1045,1047,1047,1044,1041,1036,1030,1025,1022,1020,1020,1024,1030,1039,1050,1062,1076,
+1090,1103,1114,1124,1131,1136,1137,1135,1131,1124,1115,1104,1092,1078,1064,1050,1035,1020,1006,992,978,
+966,954,945,938,933,931,932,936,943,952,963,976,988,1000,1010,1017,1020,1018,1012,1001,984,
+963,939,912,883,854,826,799,775,754,737,722,711,702,694,686,679,669,658,645,629,610,
+589,566,543,519,496,475,457,442,431,424,420,420,423,427,433,439,444,448,449,448,444,
+438,429,418,407,394,383,372,364,357,354,353,354,357,361,366,370,373,375,374,370,364,
+355,343,330,316,302,288,276,264,255,248,242,238,234,231,227,222,214,205,193,179,163,
+146,128,110,93,78,66,56,49,45,42,41,40,39,37,32,23,12,-3,-22,-44,-69,
+-96,-125,-153,-181,-209,-235,-260,-283,-305,-327,-348,-370,-394,-418,-445,-474,-504,-536,-569,-603,-637,
+-671,-703,-734,-764,-792,-819,-846,-872,-899,-927,-956,-988,-1023,-1061,-1103,-1148,-1196,-1246,-1298,-1351,-1405,
+-1459,-1511,-1562,-1610,-1656,-1698,-1737,-1773,-1804,-1831,-1855,-1876,-1892,-1906,-1917,-1925,-1931,-1935,-1937,-1938,-1938,
+-1938,-1938,-1938,-1939,-1941,-1945,-1951,-1959,-1969,-1982,-1999,-2019,-2042,-2069,-2099,-2133,-2169,-2208,-2248,-2291,-2334,
+-2378,-2422,-2464,-2506,-2547,-2586,-2623,-2659,-2694,-2728,-2762,-2796,-2830,-2865,-2901,-2938,-2976,-3015,-3055,-3095,-3135,
+-3173,-3211,-3247,-3282,-3315,-3346,-3375,-3403,-3430,-3456,-3482,-3508,-3534,-3560,-3586,-3613,-3639,-3665,-3691,-3715,-3739,
+-3763,-3785,-3807,-3829,-3851,-3873,-3896,-3920,-3945,-3971,-3997,-4024,-4049,-4073,-4095,-4114,-4130,-4141,-4149,-4154,-4155,
+-4154,-4152,-4151,-4150,-4152,-4158,-4167,-4181,-4200,-4222,-4248,-4276,-4306,-4336,-4365,-4393,-4418,-4441,-4461,-4479,-4496,
+-4512,-4529,-4547,-4567,-4591,-4618,-4648,-4682,-4718,-4756,-4794,-4831,-4867,-4899,-4928,-4952,-4972,-4988,-4999,-5007,-5013,
+-5018,-5022,-5028,-5035,-5045,-5058,-5074,-5094,-5116,-5140,-5167,-5195,-5224,-5252,-5281,-5308,-5334,-5360,-5383,-5405,-5426,
+-5446,-5464,-5481,-5498,-5513,-5528,-5543,-5557,-5571,-5586,-5600,-5615,-5631,-5646,-5662,-5677,-5693,-5707,-5721,-5733,-5744,
+-5753,-5760,-5764,-5767,-5767,-5766,-5763,-5759,-5754,-5748,-5743,-5737,-5730,-5723,-5716,-5708,-5698,-5688,-5676,-5663,-5649,
+-5633,-5617,-5601,-5586,-5571,-5557,-5545,-5534,-5524,-5516,-5508,-5500,-5491,-5480,-5467,-5451,-5431,-5409,-5384,-5357,-5330,
+-5303,-5279,-5257,-5241,-5231,-5228,-5232,-5243,-5261,-5284,-5312,-5343,-5376,-5408,-5439,-5467,-5490,-5510,-5525,-5535,-5542,
+-5545,-5546,-5545,-5544,-5542,-5540,-5539,-5537,-5536,-5535,-5534,-5532,-5530,-5527,-5524,-5522,-5520,-5520,-5522,-5527,-5536,
+-5548,-5563,-5582,-5602,-5623,-5644,-5662,-5678,-5689,-5695,-5695,-5689,-5677,-5660,-5639,-5616,-5592,-5569,-5548,-5531,-5519,
+-5512,-5510,-5514,-5522,-5535,-5550,-5566,-5584,-5601,-5617,-5631,-5644,-5655,-5664,-5672,-5680,-5687,-5695,-5704,-5714,-5725,
+-5737,-5750,-5764,-5777,-5790,-5802,-5813,-5822,-5830,-5836,-5840,-5844,-5846,-5847,-5848,-5848,-5848,-5847,-5846,-5845,-5843,
+-5841,-5837,-5834,-5829,-5824,-5818,-5813,-5807,-5801,-5797,-5792,-5789,-5787,-5785,-5785,-5785,-5786,-5788,-5790,-5792,-5794,
+-5797,-5799,-5801,-5803,-5805,-5807,-5810,-5813,-5816,-5819,-5823,-5828,-5833,-5838,-5844,-5850,-5856,-5862,-5868,-5874,-5880,
+-5885,-5889,-5891,-5893,-5892,-5890,-5885,-5879,-5870,-5859,-5847,-5833,-5818,-5803,-5787,-5772,-5757,-5743,-5731,-5720,-5710,
+-5702,-5694,-5688,-5682,-5677,-5672,-5668,-5662,-5657,-5652,-5646,-5640,-5634,-5628,-5622,-5617,-5611,-5607,-5602,-5597,-5593,
+-5589,-5584,-5579,-5574,-5568,-5562,-5556,-5549,-5543,-5536,-5529,-5523,-5517,-5510,-5504,-5497,-5490,-5482,-5473,-5463,-5452,
+-5440,-5426,-5412,-5396,-5379,-5362,-5345,-5327,-5310,-5293,-5276,-5260,-5244,-5227,-5211,-5194,-5176,-5156,-5135,-5113,-5088,
+-5061,-5033,-5002,-4971,-4938,-4905,-4871,-4838,-4806,-4775,-4746,-4720,-4695,-4673,-4652,-4634,-4618,-4604,-4590,-4577,-4564,
+-4551,-4538,-4524,-4508,-4492,-4475,-4457,-4438,-4419,-4401,-4382,-4365,-4349,-4334,-4321,-4309,-4299,-4291,-4283,-4277,-4271,
+-4265,-4259,-4252,-4244,-4234,-4223,-4211,-4197,-4181,-4164,-4146,-4126,-4106,-4085,-4062,-4039,-4015,-3990,-3963,-3936,-3907,
+-3876,-3845,-3813,-3781,-3748,-3717,-3688,-3661,-3637,-3617,-3602,-3593,-3588,-3589,-3594,-3605,-3619,-3636,-3654,-3674,-3693,
+-3711,-3726,-3738,-3746,-3751,-3752,-3749,-3743,-3735,-3725,-3715,-3704,-3693,-3684,-3676,-3669,-3664,-3660,-3658,-3656,-3654,
+-3652,-3649,-3646,-3642,-3636,-3630,-3623,-3615,-3607,-3600,-3592,-3585,-3578,-3572,-3567,-3562,-3557,-3551,-3546,-3540,-3533,
+-3525,-3518,-3510,-3502,-3494,-3487,-3481,-3477,-3474,-3472,-3471,-3471,-3471,-3472,-3471,-3470,-3466,-3460,-3452,-3441,-3427,
+-3411,-3392,-3372,-3351,-3330,-3309,-3288,-3268,-3250,-3232,-3217,-3202,-3189,-3176,-3163,-3150,-3137,-3124,-3110,-3096,-3081,
+-3065,-3050,-3034,-3019,-3004,-2989,-2973,-2958,-2942,-2926,-2909,-2890,-2870,-2849,-2826,-2801,-2776,-2749,-2722,-2696,-2669,
+-2644,-2620,-2597,-2575,-2554,-2535,-2516,-2498,-2479,-2460,-2441,-2420,-2398,-2376,-2352,-2328,-2304,-2279,-2256,-2233,-2212,
+-2192,-2173,-2156,-2139,-2122,-2106,-2088,-2069,-2049,-2026,-2001,-1975,-1946,-1916,-1886,-1857,-1829,-1804,-1782,-1766,-1755,
+-1750,-1751,-1760,-1775,-1795,-1820,-1849,-1881,-1913,-1944,-1973,-1998,-2018,-2031,-2036,-2034,-2023,-2004,-1977,-1944,-1905,
+-1863,-1819,-1774,-1732,-1695,-1663,-1638,-1622,-1616,-1620,-1635,-1659,-1691,-1731,-1777,-1826,-1877,-1928,-1975,-2019,-2057,
+-2087,-2109,-2122,-2126,-2122,-2111,-2093,-2071,-2044,-2016,-1987,-1959,-1933,-1911,-1892,-1877,-1865,-1858,-1853,-1850,-1848,
+-1847,-1844,-1840,-1833,-1824,-1811,-1796,-1779,-1759,-1739,-1720,-1701,-1685,-1672,-1662,-1656,-1655,-1657,-1663,-1671,-1680,
+-1689,-1697,-1703,-1706,-1705,-1699,-1688,-1673,-1654,-1632,-1607,-1582,-1556,-1532,-1510,-1490,-1474,-1462,-1453,-1447,-1444,
+-1443,-1442,-1442,-1442,-1440,-1437,-1433,-1426,-1419,-1411,-1402,-1394,-1386,-1380,-1375,-1372,-1372,-1373,-1375,-1379,-1383,
+-1387,-1390,-1393,-1395,-1395,-1395,-1393,-1391,-1389,-1387,-1386,-1386,-1387,-1389,-1393,-1397,-1402,-1408,-1412,-1416,-1419,
+-1420,-1418,-1414,-1408,-1400,-1389,-1378,-1365,-1352,-1339,-1327,-1315,-1304,-1294,-1285,-1278,-1271,-1265,-1259,-1254,-1248,
+-1243,-1238,-1234,-1229,-1226,-1222,-1220,-1218,-1217,-1217,-1218,-1218,-1219,-1220,-1221,-1221,-1220,-1219,-1218,-1216,-1214,
+-1213,-1212,-1211,-1211,-1212,-1213,-1214,-1216,-1217,-1217,-1215,-1213,-1208,-1201,-1193,-1182,-1171,-1158,-1145,-1132,-1119,
+-1107,-1095,-1083,-1072,-1060,-1046,-1031,-1013,-992,-966,-937,-904,-867,-827,-784,-741,-697,-655,-615,-578,-544,
+-515,-491,-470,-452,-437,-425,-413,-401,-389,-376,-362,-347,-332,-316,-301,-286,-272,-260,-250,-241,-233,
+-227,-221,-214,-207,-199,-190,-179,-168,-156,-145,-134,-125,-119,-116,-116,-120,-126,-134,-143,-152,-159,
+-164,-164,-159,-148,-132,-110,-83,-52,-19,14,47,79,106,130,149,162,171,175,176,174,171,
+168,165,164,164,165,169,173,178,182,186,189,190,189,187,183,177,171,165,159,155,152,
+151,152,155,161,167,175,184,193,202,211,219,226,232,238,242,246,249,252,253,254,254,
+252,250,245,239,231,222,212,200,188,176,164,28,10,-5,-19,-31,-38,-42,-42,-38,-31,
+-20,-6,9,27,46,65,84,102,120,137,152,167,181,193,206,218,229,241,253,265,278,
+290,303,316,330,343,357,370,383,395,407,418,428,437,445,452,458,463,467,471,474,478,
+482,486,491,498,506,515,526,538,552,567,582,599,617,635,653,672,691,710,729,749,769,
+789,808,828,847,866,884,900,916,929,942,952,961,969,976,982,989,995,1003,1011,1021,1032,
+1045,1059,1074,1089,1105,1120,1134,1146,1157,1166,1172,1177,1180,1182,1183,1183,1183,1183,1184,1186,1187,
+1190,1192,1194,1195,1195,1194,1191,1187,1181,1173,1164,1153,1143,1132,1121,1112,1103,1095,1088,1082,1077,
+1073,1069,1065,1061,1057,1052,1047,1041,1035,1030,1025,1020,1017,1014,1013,1012,1013,1014,1016,1018,1020,
+1023,1025,1027,1030,1032,1035,1038,1042,1047,1052,1058,1064,1069,1074,1078,1080,1080,1078,1073,1065,1054,
+1042,1027,1012,997,983,970,960,952,948,947,949,953,960,968,976,984,991,995,997,997,994,
+989,982,975,967,960,954,950,949,951,957,965,975,988,1001,1016,1030,1043,1054,1064,1070,1074,
+1075,1072,1067,1060,1051,1039,1027,1013,999,985,972,958,946,935,925,918,912,908,907,908,911,
+915,921,928,935,941,945,948,948,945,938,928,915,899,880,859,837,816,794,775,757,741,
+728,717,707,699,692,684,675,665,652,636,617,595,571,545,518,491,465,441,420,403,390,
+381,378,378,382,389,398,407,416,424,430,434,434,432,426,418,409,399,388,379,371,366,
+363,363,366,371,378,386,394,400,405,407,406,401,392,379,363,344,323,301,279,258,238,
+219,203,188,176,164,152,141,128,114,98,80,59,36,11,-13,-40,-65,-89,-111,-130,-145,
+-157,-166,-171,-173,-173,-172,-171,-169,-169,-170,-174,-179,-187,-196,-208,-221,-236,-252,-268,-285,-303,
+-321,-341,-361,-384,-407,-433,-460,-489,-521,-553,-587,-621,-656,-690,-724,-757,-789,-820,-850,-880,-910,
+-941,-972,-1006,-1041,-1079,-1120,-1163,-1209,-1257,-1307,-1358,-1409,-1460,-1511,-1560,-1606,-1651,-1692,-1731,-1766,-1799,
+-1828,-1856,-1881,-1904,-1925,-1945,-1963,-1980,-1994,-2007,-2018,-2027,-2033,-2037,-2039,-2039,-2037,-2034,-2031,-2027,-2025,
+-2024,-2027,-2032,-2042,-2057,-2076,-2101,-2131,-2165,-2202,-2244,-2287,-2332,-2377,-2422,-2466,-2509,-2549,-2588,-2625,-2660,
+-2694,-2728,-2761,-2795,-2830,-2866,-2903,-2941,-2981,-3021,-3062,-3103,-3143,-3182,-3220,-3256,-3290,-3322,-3353,-3383,-3412,
+-3440,-3469,-3498,-3527,-3557,-3587,-3618,-3648,-3677,-3705,-3731,-3756,-3779,-3799,-3818,-3836,-3852,-3869,-3886,-3905,-3926,
+-3948,-3973,-4001,-4029,-4060,-4090,-4119,-4147,-4172,-4193,-4211,-4224,-4232,-4237,-4239,-4239,-4237,-4235,-4235,-4237,-4241,
+-4249,-4261,-4276,-4295,-4316,-4338,-4361,-4385,-4407,-4428,-4448,-4466,-4483,-4499,-4515,-4531,-4549,-4568,-4590,-4615,-4643,
+-4673,-4705,-4738,-4773,-4807,-4840,-4870,-4898,-4923,-4945,-4963,-4978,-4991,-5002,-5012,-5021,-5031,-5042,-5056,-5071,-5088,
+-5108,-5131,-5155,-5180,-5207,-5233,-5260,-5285,-5310,-5333,-5354,-5373,-5391,-5408,-5423,-5438,-5452,-5467,-5482,-5498,-5515,
+-5533,-5552,-5572,-5594,-5615,-5637,-5659,-5679,-5698,-5715,-5730,-5741,-5750,-5755,-5758,-5758,-5755,-5751,-5746,-5740,-5735,
+-5729,-5725,-5721,-5718,-5715,-5713,-5711,-5708,-5703,-5698,-5690,-5680,-5668,-5654,-5638,-5620,-5602,-5583,-5564,-5545,-5526,
+-5509,-5492,-5476,-5459,-5442,-5425,-5406,-5386,-5364,-5341,-5317,-5292,-5268,-5245,-5225,-5208,-5195,-5187,-5185,-5189,-5199,
+-5214,-5234,-5257,-5283,-5310,-5337,-5363,-5387,-5408,-5426,-5440,-5450,-5458,-5462,-5465,-5465,-5464,-5462,-5460,-5457,-5454,
+-5450,-5446,-5442,-5437,-5433,-5429,-5425,-5423,-5423,-5426,-5431,-5440,-5453,-5469,-5488,-5511,-5534,-5559,-5583,-5604,-5623,
+-5638,-5647,-5650,-5648,-5641,-5628,-5612,-5592,-5572,-5551,-5531,-5514,-5501,-5491,-5486,-5485,-5488,-5494,-5504,-5516,-5529,
+-5543,-5557,-5571,-5585,-5598,-5610,-5622,-5634,-5646,-5658,-5671,-5684,-5698,-5712,-5726,-5739,-5752,-5764,-5774,-5784,-5791,
+-5797,-5802,-5806,-5808,-5811,-5813,-5815,-5817,-5819,-5821,-5823,-5824,-5825,-5826,-5825,-5823,-5820,-5816,-5811,-5805,-5798,
+-5791,-5784,-5778,-5772,-5767,-5763,-5761,-5759,-5759,-5761,-5763,-5765,-5769,-5772,-5776,-5779,-5782,-5785,-5787,-5788,-5789,
+-5789,-5790,-5789,-5789,-5789,-5788,-5788,-5788,-5788,-5789,-5790,-5791,-5793,-5794,-5796,-5797,-5798,-5799,-5798,-5797,-5795,
+-5792,-5787,-5782,-5775,-5768,-5759,-5750,-5741,-5731,-5722,-5712,-5703,-5694,-5685,-5676,-5667,-5658,-5649,-5640,-5630,-5620,
+-5609,-5598,-5587,-5575,-5564,-5552,-5542,-5531,-5522,-5514,-5507,-5501,-5497,-5494,-5491,-5490,-5489,-5488,-5487,-5487,-5486,
+-5484,-5481,-5478,-5473,-5468,-5461,-5452,-5443,-5432,-5420,-5408,-5394,-5380,-5366,-5351,-5337,-5322,-5308,-5295,-5282,-5270,
+-5259,-5248,-5238,-5228,-5218,-5208,-5197,-5185,-5172,-5158,-5141,-5124,-5104,-5083,-5061,-5037,-5013,-4988,-4963,-4939,-4915,
+-4893,-4872,-4853,-4836,-4819,-4805,-4791,-4778,-4764,-4751,-4737,-4721,-4704,-4685,-4664,-4642,-4617,-4592,-4565,-4538,-4512,
+-4486,-4462,-4441,-4421,-4405,-4391,-4380,-4372,-4367,-4363,-4360,-4358,-4355,-4352,-4347,-4341,-4332,-4320,-4306,-4290,-4271,
+-4250,-4228,-4204,-4179,-4154,-4128,-4102,-4075,-4049,-4022,-3995,-3968,-3941,-3914,-3886,-3859,-3833,-3809,-3786,-3766,-3749,
+-3735,-3726,-3720,-3719,-3722,-3729,-3738,-3751,-3764,-3778,-3792,-3804,-3814,-3821,-3826,-3826,-3823,-3817,-3808,-3796,-3783,
+-3769,-3754,-3740,-3727,-3714,-3703,-3693,-3685,-3677,-3671,-3665,-3659,-3653,-3647,-3641,-3634,-3627,-3621,-3614,-3608,-3603,
+-3599,-3596,-3593,-3591,-3589,-3588,-3586,-3583,-3579,-3573,-3566,-3557,-3547,-3535,-3523,-3510,-3498,-3486,-3477,-3469,-3463,
+-3459,-3458,-3459,-3462,-3465,-3470,-3474,-3477,-3479,-3479,-3476,-3472,-3465,-3456,-3445,-3433,-3419,-3405,-3390,-3375,-3360,
+-3346,-3331,-3316,-3301,-3286,-3270,-3253,-3236,-3218,-3200,-3182,-3164,-3147,-3132,-3118,-3105,-3094,-3085,-3077,-3070,-3064,
+-3057,-3049,-3039,-3027,-3012,-2994,-2973,-2949,-2922,-2893,-2862,-2831,-2798,-2766,-2735,-2704,-2675,-2646,-2619,-2592,-2565,
+-2538,-2511,-2482,-2453,-2423,-2392,-2361,-2329,-2299,-2269,-2241,-2216,-2192,-2171,-2151,-2134,-2117,-2100,-2083,-2064,-2042,
+-2018,-1990,-1958,-1924,-1887,-1848,-1809,-1771,-1736,-1706,-1681,-1664,-1655,-1656,-1666,-1685,-1713,-1748,-1790,-1836,-1883,
+-1931,-1977,-2020,-2056,-2085,-2105,-2115,-2116,-2107,-2088,-2061,-2026,-1985,-1939,-1891,-1843,-1795,-1751,-1712,-1680,-1655,
+-1639,-1633,-1636,-1649,-1671,-1700,-1736,-1777,-1821,-1867,-1911,-1953,-1990,-2021,-2045,-2060,-2067,-2064,-2054,-2035,-2011,
+-1982,-1949,-1915,-1881,-1850,-1821,-1797,-1777,-1763,-1753,-1748,-1747,-1749,-1752,-1755,-1757,-1757,-1754,-1748,-1739,-1726,
+-1711,-1693,-1675,-1657,-1640,-1625,-1613,-1605,-1600,-1600,-1603,-1609,-1617,-1626,-1636,-1644,-1651,-1655,-1655,-1652,-1646,
+-1636,-1624,-1610,-1594,-1579,-1563,-1549,-1537,-1526,-1518,-1512,-1507,-1503,-1500,-1496,-1493,-1488,-1483,-1476,-1467,-1458,
+-1449,-1439,-1430,-1422,-1415,-1410,-1406,-1405,-1405,-1406,-1408,-1411,-1413,-1415,-1416,-1416,-1415,-1413,-1410,-1407,-1404,
+-1402,-1400,-1400,-1401,-1404,-1409,-1415,-1422,-1430,-1438,-1444,-1450,-1454,-1456,-1455,-1453,-1447,-1440,-1431,-1421,-1410,
+-1399,-1388,-1378,-1368,-1360,-1352,-1345,-1338,-1332,-1327,-1321,-1316,-1311,-1306,-1302,-1298,-1295,-1293,-1292,-1292,-1294,
+-1296,-1299,-1302,-1306,-1310,-1312,-1314,-1315,-1315,-1313,-1311,-1307,-1304,-1300,-1296,-1294,-1292,-1290,-1290,-1290,-1291,
+-1291,-1291,-1289,-1286,-1280,-1272,-1262,-1249,-1234,-1217,-1198,-1179,-1158,-1138,-1118,-1097,-1077,-1056,-1035,-1012,-988,
+-961,-932,-899,-864,-827,-787,-747,-706,-666,-628,-593,-562,-536,-515,-499,-488,-482,-480,-481,-484,-488,
+-492,-495,-497,-496,-494,-489,-482,-473,-462,-450,-437,-423,-408,-394,-378,-363,-347,-331,-315,-299,-283,
+-268,-254,-242,-231,-222,-216,-212,-210,-210,-211,-213,-214,-214,-212,-208,-200,-189,-175,-158,-138,-116,
+-93,-70,-48,-28,-10,5,17,26,32,35,37,38,38,38,38,38,39,40,42,43,44,
+44,42,38,33,27,19,10,2,-6,-14,-20,-24,-26,-26,-24,-19,-12,-4,4,13,23,
+33,42,51,60,68,76,84,92,99,107,114,120,125,128,130,129,125,118,108,96,81,
+64,46,28,-63,-84,-103,-120,-133,-142,-147,-147,-142,-134,-121,-106,-88,-69,-49,-29,-10,7,
+24,39,53,65,77,88,99,111,123,135,149,164,180,196,213,230,247,263,279,293,307,
+319,329,338,346,353,359,364,368,372,376,381,385,390,395,401,408,415,423,431,441,450,
+461,472,485,498,512,527,544,562,581,602,623,646,669,693,717,741,764,786,807,825,842,
+857,869,879,888,895,901,907,912,918,926,934,944,956,969,984,999,1015,1031,1046,1061,1074,
+1085,1094,1101,1106,1109,1111,1112,1112,1113,1113,1114,1116,1118,1121,1125,1128,1131,1134,1135,1135,1133,
+1130,1124,1118,1109,1100,1089,1078,1067,1056,1045,1035,1025,1016,1007,999,992,984,977,971,964,958,
+952,948,944,941,939,938,938,940,942,946,950,954,959,964,969,974,979,984,990,995,1001,
+1006,1012,1018,1024,1029,1033,1035,1037,1036,1032,1026,1018,1008,996,982,967,953,939,926,916,908,
+902,900,900,903,908,914,921,928,933,938,940,941,939,935,929,922,915,908,903,899,897,
+898,901,908,918,929,943,958,973,988,1002,1014,1023,1030,1034,1035,1032,1026,1018,1008,995,981,
+967,952,938,925,912,902,894,888,885,883,884,888,892,898,905,911,918,922,925,926,924,
+919,911,900,886,870,853,834,815,797,779,763,749,736,725,716,708,700,691,682,671,658,
+643,624,603,579,553,526,498,471,445,421,401,385,373,365,362,362,366,373,381,390,399,
+406,411,414,414,411,406,399,390,381,372,364,358,355,354,356,361,368,376,386,395,402,
+408,410,408,403,393,378,360,339,315,289,263,237,213,189,168,149,132,116,101,87,72,
+56,39,19,-2,-26,-52,-80,-109,-137,-165,-192,-215,-236,-252,-265,-273,-278,-278,-276,-271,-265,
+-258,-252,-246,-241,-239,-238,-240,-245,-252,-262,-275,-289,-306,-325,-346,-369,-394,-421,-449,-479,-511,
+-543,-577,-611,-645,-680,-714,-748,-781,-813,-845,-877,-908,-940,-972,-1006,-1040,-1077,-1115,-1156,-1198,-1242,
+-1287,-1334,-1381,-1428,-1474,-1520,-1564,-1606,-1647,-1685,-1722,-1756,-1789,-1821,-1852,-1882,-1912,-1940,-1968,-1995,-2021,
+-2044,-2065,-2084,-2098,-2109,-2116,-2118,-2117,-2112,-2104,-2094,-2084,-2073,-2065,-2059,-2057,-2060,-2069,-2084,-2105,-2132,
+-2165,-2202,-2244,-2288,-2333,-2380,-2425,-2470,-2512,-2553,-2591,-2627,-2662,-2695,-2728,-2761,-2795,-2829,-2865,-2903,-2942,
+-2982,-3023,-3064,-3105,-3144,-3183,-3220,-3254,-3287,-3318,-3348,-3377,-3405,-3433,-3461,-3491,-3521,-3552,-3584,-3616,-3648,
+-3680,-3710,-3739,-3765,-3789,-3811,-3830,-3848,-3865,-3881,-3897,-3915,-3934,-3956,-3980,-4006,-4035,-4065,-4097,-4128,-4157,
+-4185,-4209,-4229,-4245,-4256,-4263,-4265,-4265,-4262,-4258,-4254,-4251,-4250,-4253,-4258,-4268,-4281,-4297,-4316,-4336,-4358,
+-4380,-4402,-4422,-4442,-4460,-4476,-4492,-4508,-4524,-4541,-4560,-4581,-4604,-4629,-4657,-4687,-4718,-4750,-4783,-4815,-4845,
+-4873,-4899,-4923,-4943,-4961,-4977,-4990,-5003,-5015,-5028,-5041,-5055,-5071,-5089,-5109,-5130,-5153,-5177,-5201,-5225,-5249,
+-5272,-5294,-5315,-5334,-5351,-5368,-5383,-5399,-5414,-5430,-5446,-5464,-5484,-5504,-5527,-5550,-5575,-5599,-5623,-5647,-5668,
+-5687,-5704,-5717,-5727,-5734,-5737,-5737,-5734,-5730,-5724,-5718,-5712,-5706,-5701,-5698,-5696,-5695,-5695,-5695,-5695,-5695,
+-5693,-5690,-5685,-5677,-5667,-5654,-5639,-5622,-5604,-5584,-5563,-5542,-5521,-5500,-5479,-5458,-5437,-5415,-5393,-5370,-5346,
+-5322,-5298,-5273,-5250,-5228,-5208,-5192,-5179,-5171,-5168,-5171,-5178,-5191,-5208,-5229,-5253,-5278,-5304,-5328,-5352,-5372,
+-5390,-5404,-5415,-5421,-5425,-5426,-5424,-5420,-5415,-5410,-5404,-5398,-5392,-5386,-5381,-5377,-5373,-5371,-5369,-5369,-5370,
+-5373,-5378,-5386,-5397,-5410,-5426,-5444,-5464,-5485,-5506,-5526,-5544,-5560,-5573,-5581,-5586,-5585,-5581,-5572,-5561,-5546,
+-5531,-5514,-5498,-5484,-5471,-5461,-5454,-5450,-5449,-5451,-5455,-5462,-5471,-5481,-5493,-5505,-5518,-5531,-5545,-5559,-5574,
+-5589,-5605,-5620,-5636,-5651,-5666,-5681,-5695,-5707,-5718,-5728,-5736,-5744,-5750,-5755,-5760,-5764,-5768,-5772,-5777,-5782,
+-5787,-5792,-5796,-5801,-5804,-5806,-5807,-5806,-5804,-5799,-5793,-5786,-5777,-5768,-5759,-5750,-5742,-5734,-5729,-5725,-5723,
+-5723,-5724,-5727,-5731,-5737,-5742,-5748,-5753,-5758,-5762,-5765,-5766,-5766,-5764,-5761,-5757,-5751,-5745,-5738,-5731,-5724,
+-5718,-5712,-5707,-5703,-5700,-5699,-5699,-5700,-5702,-5704,-5708,-5711,-5714,-5717,-5719,-5720,-5720,-5718,-5716,-5711,-5706,
+-5699,-5691,-5682,-5673,-5663,-5652,-5641,-5630,-5618,-5606,-5593,-5581,-5567,-5554,-5540,-5526,-5511,-5497,-5483,-5469,-5456,
+-5444,-5433,-5424,-5417,-5412,-5408,-5406,-5406,-5407,-5409,-5412,-5416,-5419,-5421,-5423,-5423,-5421,-5417,-5412,-5404,-5394,
+-5383,-5370,-5356,-5341,-5326,-5311,-5296,-5283,-5270,-5259,-5249,-5240,-5233,-5226,-5221,-5215,-5209,-5203,-5196,-5188,-5178,
+-5167,-5154,-5140,-5124,-5107,-5089,-5071,-5054,-5037,-5021,-5006,-4993,-4982,-4973,-4966,-4960,-4955,-4950,-4945,-4939,-4932,
+-4922,-4910,-4894,-4875,-4852,-4825,-4796,-4763,-4729,-4693,-4657,-4621,-4587,-4556,-4527,-4502,-4482,-4465,-4453,-4445,-4440,
+-4438,-4438,-4438,-4439,-4440,-4438,-4435,-4429,-4420,-4408,-4392,-4374,-4352,-4328,-4302,-4275,-4246,-4216,-4185,-4154,-4123,
+-4092,-4060,-4029,-3998,-3968,-3939,-3911,-3884,-3860,-3839,-3820,-3805,-3794,-3788,-3785,-3787,-3792,-3801,-3812,-3826,-3840,
+-3854,-3867,-3878,-3886,-3892,-3894,-3892,-3887,-3878,-3867,-3853,-3837,-3821,-3803,-3786,-3769,-3753,-3738,-3724,-3711,-3699,
+-3687,-3676,-3665,-3654,-3643,-3633,-3622,-3613,-3604,-3597,-3590,-3586,-3582,-3581,-3580,-3580,-3581,-3582,-3582,-3581,-3579,
+-3575,-3569,-3560,-3550,-3538,-3525,-3511,-3497,-3484,-3472,-3462,-3455,-3450,-3448,-3448,-3451,-3455,-3461,-3467,-3473,-3478,
+-3483,-3486,-3487,-3486,-3484,-3480,-3474,-3467,-3459,-3450,-3440,-3429,-3417,-3405,-3391,-3376,-3359,-3342,-3322,-3302,-3281,
+-3259,-3237,-3217,-3197,-3179,-3164,-3152,-3142,-3135,-3130,-3127,-3126,-3124,-3122,-3119,-3113,-3104,-3091,-3075,-3055,-3031,
+-3004,-2975,-2943,-2910,-2877,-2844,-2811,-2778,-2747,-2715,-2684,-2653,-2621,-2588,-2554,-2518,-2480,-2442,-2402,-2363,-2324,
+-2287,-2252,-2219,-2190,-2165,-2143,-2123,-2106,-2090,-2074,-2057,-2038,-2015,-1988,-1956,-1920,-1880,-1836,-1791,-1746,-1703,
+-1664,-1632,-1607,-1593,-1589,-1597,-1616,-1647,-1688,-1737,-1793,-1852,-1914,-1973,-2030,-2080,-2123,-2156,-2179,-2191,-2193,
+-2183,-2164,-2137,-2103,-2063,-2020,-1975,-1930,-1887,-1847,-1811,-1781,-1757,-1741,-1731,-1729,-1734,-1746,-1764,-1788,-1815,
+-1845,-1877,-1908,-1938,-1966,-1989,-2007,-2019,-2024,-2022,-2014,-1999,-1978,-1953,-1925,-1895,-1864,-1835,-1808,-1784,-1765,
+-1750,-1741,-1736,-1735,-1737,-1742,-1748,-1754,-1759,-1761,-1761,-1758,-1751,-1741,-1729,-1714,-1698,-1682,-1667,-1653,-1641,
+-1632,-1626,-1623,-1623,-1625,-1629,-1634,-1639,-1644,-1648,-1651,-1652,-1650,-1647,-1642,-1635,-1627,-1619,-1610,-1601,-1592,
+-1584,-1577,-1570,-1564,-1558,-1551,-1545,-1538,-1530,-1522,-1514,-1505,-1497,-1489,-1481,-1474,-1469,-1464,-1461,-1459,-1458,
+-1458,-1457,-1457,-1457,-1455,-1453,-1450,-1445,-1441,-1435,-1430,-1425,-1421,-1418,-1417,-1418,-1421,-1425,-1431,-1438,-1446,
+-1454,-1461,-1466,-1470,-1472,-1471,-1468,-1463,-1456,-1448,-1438,-1428,-1419,-1409,-1401,-1393,-1387,-1382,-1378,-1375,-1373,
+-1371,-1370,-1368,-1367,-1366,-1364,-1363,-1363,-1363,-1363,-1365,-1367,-1371,-1375,-1379,-1383,-1387,-1390,-1392,-1393,-1392,
+-1389,-1385,-1380,-1373,-1367,-1360,-1353,-1348,-1343,-1340,-1338,-1336,-1335,-1333,-1331,-1327,-1321,-1312,-1301,-1285,-1267,
+-1245,-1221,-1195,-1167,-1138,-1109,-1080,-1052,-1025,-998,-973,-949,-924,-900,-875,-849,-822,-794,-766,-737,-708,
+-680,-654,-630,-610,-594,-582,-575,-573,-575,-581,-590,-602,-615,-628,-640,-650,-658,-662,-663,-660,-653,
+-643,-629,-612,-593,-572,-550,-527,-504,-480,-457,-435,-415,-395,-377,-361,-347,-335,-324,-315,-308,-302,
+-297,-293,-289,-284,-278,-272,-264,-255,-245,-233,-220,-207,-193,-179,-166,-154,-142,-133,-124,-117,-111,
+-106,-102,-99,-95,-92,-88,-85,-81,-78,-75,-73,-72,-73,-75,-79,-85,-92,-100,-109,-118,-127,
+-135,-141,-145,-148,-148,-147,-143,-138,-131,-124,-115,-107,-98,-90,-81,-73,-64,-55,-45,-35,-24,
+-13,-1,9,20,29,37,41,43,41,36,26,13,-2,-21,-42,-63,-125,-144,-161,-176,-187,
+-194,-196,-194,-186,-175,-160,-142,-122,-102,-81,-62,-43,-26,-11,1,12,22,32,41,51,61,
+72,85,100,116,133,151,170,188,207,224,240,255,267,278,287,295,301,306,310,314,318,
+322,327,333,339,346,354,363,372,382,392,402,412,422,432,443,454,466,478,492,506,522,
+540,558,578,599,620,642,664,685,706,725,742,758,772,783,793,801,808,814,820,826,833,
+840,849,859,871,884,898,913,929,944,959,973,985,996,1005,1011,1016,1019,1021,1022,1022,1022,
+1022,1023,1024,1027,1030,1034,1039,1043,1047,1051,1053,1054,1054,1051,1047,1041,1033,1024,1013,1003,991,
+980,969,959,949,940,932,925,918,913,907,903,899,895,892,890,888,887,886,887,888,890,
+892,895,899,902,906,911,915,919,924,929,934,939,944,950,956,962,968,973,978,982,984,
+985,984,981,975,968,959,949,938,926,914,903,893,885,878,874,872,872,874,877,882,886,
+891,895,898,899,900,898,896,893,889,886,883,882,882,885,890,897,907,919,933,948,963,
+979,993,1007,1018,1026,1031,1033,1032,1027,1019,1009,997,982,967,952,936,922,909,897,888,881,
+877,875,876,878,882,887,892,897,901,904,905,903,900,893,884,872,858,843,826,809,792,
+775,759,745,731,720,710,701,692,684,676,667,656,644,630,613,594,574,551,528,504,481,
+459,439,422,407,396,389,385,384,386,390,395,400,406,410,413,413,412,409,404,397,389,
+381,374,367,362,360,359,361,365,371,378,385,392,397,401,401,398,391,381,366,349,328,
+305,281,256,231,208,186,166,148,132,118,105,92,79,66,51,34,15,-6,-30,-56,-83,
+-111,-138,-165,-190,-212,-231,-247,-258,-265,-268,-268,-265,-260,-253,-246,-239,-233,-229,-227,-228,-231,
+-239,-249,-262,-279,-299,-321,-346,-372,-401,-431,-463,-496,-530,-564,-599,-634,-669,-703,-737,-771,-805,
+-838,-870,-902,-934,-967,-999,-1033,-1067,-1101,-1137,-1174,-1212,-1251,-1290,-1330,-1369,-1409,-1448,-1487,-1525,-1562,
+-1599,-1635,-1671,-1706,-1742,-1779,-1816,-1853,-1891,-1929,-1966,-2002,-2037,-2070,-2099,-2125,-2145,-2161,-2172,-2177,-2178,
+-2173,-2166,-2155,-2144,-2132,-2122,-2115,-2112,-2114,-2122,-2136,-2156,-2181,-2213,-2248,-2287,-2329,-2371,-2414,-2456,-2497,
+-2535,-2571,-2605,-2638,-2668,-2699,-2728,-2759,-2791,-2824,-2859,-2896,-2934,-2974,-3014,-3054,-3094,-3133,-3170,-3205,-3238,
+-3269,-3297,-3325,-3350,-3376,-3401,-3427,-3453,-3482,-3511,-3542,-3574,-3606,-3638,-3670,-3701,-3731,-3758,-3783,-3807,-3828,
+-3848,-3866,-3885,-3904,-3923,-3944,-3966,-3990,-4016,-4043,-4070,-4098,-4124,-4149,-4171,-4190,-4206,-4217,-4225,-4229,-4230,
+-4230,-4228,-4226,-4225,-4226,-4229,-4235,-4244,-4256,-4272,-4289,-4309,-4330,-4352,-4373,-4394,-4413,-4432,-4449,-4465,-4481,
+-4497,-4513,-4531,-4550,-4572,-4595,-4621,-4650,-4680,-4712,-4744,-4776,-4808,-4839,-4867,-4893,-4916,-4937,-4955,-4971,-4985,
+-4998,-5010,-5022,-5035,-5048,-5063,-5080,-5098,-5118,-5140,-5162,-5185,-5208,-5231,-5253,-5275,-5296,-5316,-5335,-5353,-5371,
+-5389,-5407,-5426,-5445,-5465,-5486,-5508,-5531,-5553,-5576,-5597,-5618,-5637,-5653,-5667,-5679,-5687,-5693,-5696,-5697,-5697,
+-5694,-5691,-5687,-5684,-5681,-5678,-5676,-5674,-5673,-5672,-5671,-5670,-5667,-5664,-5659,-5652,-5643,-5633,-5621,-5608,-5594,
+-5578,-5562,-5545,-5528,-5510,-5492,-5472,-5452,-5431,-5408,-5385,-5360,-5334,-5308,-5282,-5256,-5232,-5211,-5193,-5179,-5170,
+-5167,-5169,-5178,-5192,-5211,-5234,-5260,-5288,-5317,-5345,-5371,-5394,-5413,-5427,-5437,-5442,-5442,-5438,-5431,-5421,-5410,
+-5398,-5385,-5374,-5363,-5354,-5347,-5342,-5339,-5338,-5339,-5342,-5346,-5351,-5358,-5366,-5375,-5385,-5396,-5408,-5420,-5433,
+-5446,-5459,-5470,-5481,-5490,-5498,-5503,-5505,-5505,-5503,-5498,-5491,-5482,-5472,-5462,-5451,-5441,-5432,-5424,-5417,-5413,
+-5410,-5410,-5411,-5415,-5420,-5428,-5436,-5447,-5458,-5471,-5485,-5499,-5515,-5531,-5547,-5563,-5579,-5595,-5610,-5624,-5637,
+-5650,-5661,-5670,-5679,-5687,-5694,-5701,-5707,-5713,-5720,-5726,-5732,-5739,-5746,-5752,-5757,-5762,-5766,-5768,-5768,-5767,
+-5763,-5758,-5751,-5743,-5734,-5724,-5714,-5705,-5696,-5689,-5684,-5681,-5679,-5680,-5682,-5687,-5692,-5699,-5706,-5714,-5720,
+-5727,-5731,-5735,-5736,-5736,-5734,-5730,-5724,-5716,-5708,-5698,-5688,-5677,-5667,-5658,-5650,-5643,-5638,-5634,-5633,-5633,
+-5634,-5637,-5641,-5645,-5650,-5654,-5658,-5660,-5661,-5660,-5658,-5653,-5647,-5639,-5629,-5618,-5605,-5592,-5578,-5564,-5550,
+-5536,-5522,-5509,-5495,-5482,-5469,-5456,-5443,-5430,-5417,-5405,-5393,-5382,-5372,-5364,-5356,-5351,-5347,-5346,-5347,-5349,
+-5353,-5359,-5365,-5372,-5379,-5385,-5390,-5393,-5394,-5392,-5388,-5380,-5371,-5358,-5344,-5329,-5312,-5295,-5279,-5263,-5249,
+-5236,-5225,-5216,-5208,-5202,-5198,-5194,-5191,-5187,-5182,-5177,-5169,-5161,-5150,-5138,-5124,-5110,-5095,-5080,-5066,-5053,
+-5043,-5035,-5029,-5027,-5027,-5030,-5035,-5041,-5048,-5055,-5060,-5062,-5062,-5057,-5048,-5033,-5013,-4989,-4959,-4925,-4887,
+-4847,-4806,-4764,-4724,-4685,-4650,-4618,-4591,-4568,-4550,-4537,-4527,-4521,-4518,-4516,-4515,-4514,-4513,-4509,-4504,-4496,
+-4485,-4471,-4454,-4435,-4413,-4388,-4362,-4334,-4305,-4274,-4243,-4211,-4179,-4147,-4114,-4082,-4050,-4019,-3989,-3961,-3935,
+-3911,-3890,-3873,-3860,-3851,-3846,-3844,-3847,-3852,-3861,-3871,-3882,-3893,-3904,-3914,-3921,-3926,-3927,-3926,-3921,-3913,
+-3903,-3890,-3876,-3860,-3843,-3826,-3808,-3791,-3774,-3757,-3741,-3724,-3708,-3693,-3677,-3661,-3646,-3631,-3616,-3603,-3591,
+-3581,-3572,-3566,-3561,-3559,-3558,-3558,-3560,-3562,-3563,-3564,-3564,-3561,-3557,-3550,-3540,-3529,-3517,-3503,-3489,-3475,
+-3462,-3450,-3441,-3433,-3429,-3426,-3426,-3428,-3432,-3437,-3443,-3448,-3454,-3458,-3462,-3465,-3466,-3465,-3464,-3461,-3457,
+-3452,-3445,-3437,-3428,-3418,-3405,-3391,-3375,-3358,-3338,-3317,-3296,-3273,-3251,-3229,-3209,-3190,-3174,-3161,-3150,-3142,
+-3137,-3133,-3130,-3128,-3126,-3122,-3116,-3108,-3096,-3080,-3062,-3040,-3015,-2988,-2959,-2930,-2900,-2870,-2841,-2813,-2785,
+-2757,-2729,-2701,-2670,-2638,-2603,-2566,-2526,-2483,-2439,-2394,-2349,-2305,-2262,-2223,-2188,-2157,-2131,-2109,-2090,-2074,
+-2058,-2043,-2025,-2004,-1979,-1948,-1911,-1868,-1821,-1770,-1717,-1664,-1615,-1571,-1536,-1511,-1498,-1499,-1515,-1545,-1588,
+-1643,-1709,-1781,-1857,-1935,-2010,-2080,-2142,-2194,-2235,-2263,-2278,-2281,-2273,-2254,-2227,-2194,-2156,-2115,-2074,-2034,
+-1997,-1963,-1935,-1911,-1894,-1882,-1875,-1874,-1878,-1886,-1897,-1912,-1929,-1947,-1965,-1984,-2001,-2017,-2030,-2040,-2046,
+-2048,-2046,-2039,-2028,-2013,-1995,-1973,-1951,-1927,-1904,-1881,-1861,-1844,-1830,-1819,-1812,-1809,-1808,-1810,-1813,-1817,
+-1821,-1824,-1825,-1824,-1820,-1813,-1804,-1792,-1778,-1763,-1747,-1731,-1716,-1703,-1691,-1680,-1673,-1667,-1664,-1663,-1663,
+-1664,-1665,-1667,-1668,-1670,-1670,-1669,-1668,-1665,-1661,-1657,-1651,-1645,-1638,-1631,-1623,-1615,-1607,-1598,-1590,-1581,
+-1573,-1565,-1558,-1552,-1546,-1542,-1538,-1536,-1535,-1534,-1534,-1534,-1534,-1534,-1533,-1530,-1526,-1522,-1515,-1508,-1501,
+-1493,-1485,-1478,-1473,-1469,-1467,-1467,-1469,-1474,-1479,-1485,-1492,-1499,-1504,-1508,-1510,-1509,-1506,-1500,-1491,-1481,
+-1469,-1456,-1442,-1430,-1418,-1407,-1399,-1393,-1389,-1387,-1387,-1388,-1391,-1395,-1399,-1403,-1408,-1412,-1416,-1420,-1424,
+-1427,-1431,-1435,-1439,-1443,-1446,-1450,-1452,-1454,-1454,-1453,-1450,-1446,-1440,-1433,-1425,-1417,-1408,-1399,-1391,-1384,
+-1378,-1373,-1369,-1365,-1361,-1356,-1349,-1340,-1329,-1313,-1294,-1270,-1243,-1213,-1179,-1144,-1108,-1071,-1036,-1002,-971,
+-943,-918,-897,-879,-864,-851,-840,-830,-819,-809,-798,-786,-774,-761,-748,-735,-723,-713,-705,-700,-698,
+-699,-703,-710,-719,-730,-741,-752,-763,-771,-777,-780,-779,-775,-766,-755,-739,-722,-701,-679,-657,-633,
+-610,-588,-567,-547,-528,-512,-497,-484,-473,-462,-453,-445,-437,-429,-421,-413,-405,-396,-386,-376,-366,
+-356,-345,-335,-325,-315,-307,-299,-291,-285,-279,-274,-269,-264,-259,-254,-249,-243,-237,-231,-225,-220,
+-215,-211,-208,-206,-206,-207,-210,-214,-218,-222,-227,-231,-235,-237,-238,-237,-235,-231,-226,-221,-215,
+-208,-202,-195,-189,-183,-177,-171,-165,-157,-149,-140,-129,-117,-104,-90,-76,-63,-50,-40,-32,-28,
+-28,-32,-40,-52,-67,-85,-105,-125,-201,-218,-233,-246,-254,-258,-257,-251,-241,-226,-209,-189,-167,
+-145,-123,-102,-83,-66,-51,-38,-27,-17,-8,0,7,17,27,39,52,67,83,100,117,134,
+151,167,182,195,206,216,224,231,236,241,246,250,256,262,269,277,286,297,308,320,332,
+345,357,369,381,393,404,415,426,437,448,460,472,485,499,514,529,545,561,577,593,607,
+621,633,644,654,662,669,675,680,686,691,697,704,713,723,734,747,762,777,793,809,825,
+839,852,864,873,880,885,887,887,886,884,881,878,875,873,872,873,874,877,881,886,891,
+896,900,904,906,907,906,903,899,894,887,879,871,862,854,847,840,834,829,825,822,820,
+819,819,819,820,821,822,824,825,827,829,830,832,834,835,837,839,840,842,843,845,847,
+849,852,855,859,864,869,874,881,887,894,901,908,914,919,922,924,924,923,920,915,909,
+902,894,887,879,872,866,861,858,856,855,856,858,861,864,867,870,873,876,877,879,880,
+881,882,884,887,891,897,905,914,925,938,952,967,982,998,1012,1025,1036,1045,1051,1054,1054,
+1051,1045,1035,1024,1011,996,981,965,949,935,921,909,899,890,883,878,874,870,868,865,863,
+859,854,848,841,831,820,807,793,777,761,744,728,712,697,683,670,659,649,640,633,627,
+620,614,608,600,591,581,570,557,543,527,511,494,478,462,448,435,424,416,409,405,404,
+404,405,408,411,413,416,418,418,418,416,414,410,406,402,398,395,393,392,392,393,396,
+399,402,405,407,408,406,402,396,387,374,359,342,323,303,282,261,241,222,205,189,175,
+162,151,141,131,120,109,96,81,64,44,23,0,-26,-52,-79,-106,-131,-154,-174,-191,-205,
+-216,-222,-226,-227,-225,-222,-219,-215,-212,-211,-211,-214,-221,-230,-242,-258,-277,-299,-323,-350,-379,
+-411,-443,-477,-512,-547,-583,-619,-656,-692,-728,-764,-800,-835,-869,-903,-937,-970,-1003,-1035,-1067,-1099,
+-1130,-1161,-1192,-1223,-1254,-1284,-1314,-1344,-1374,-1404,-1434,-1465,-1496,-1528,-1561,-1596,-1632,-1670,-1710,-1752,-1795,
+-1840,-1885,-1930,-1975,-2019,-2060,-2097,-2131,-2160,-2183,-2202,-2215,-2223,-2226,-2226,-2223,-2219,-2215,-2212,-2210,-2213,
+-2219,-2229,-2244,-2265,-2289,-2317,-2348,-2382,-2416,-2451,-2486,-2519,-2550,-2580,-2607,-2633,-2658,-2682,-2707,-2732,-2759,
+-2787,-2818,-2851,-2887,-2924,-2963,-3003,-3043,-3083,-3121,-3158,-3192,-3224,-3253,-3280,-3305,-3329,-3352,-3374,-3397,-3420,
+-3445,-3471,-3499,-3529,-3559,-3591,-3623,-3654,-3685,-3715,-3743,-3769,-3794,-3817,-3838,-3859,-3879,-3899,-3919,-3940,-3961,
+-3984,-4007,-4030,-4053,-4076,-4098,-4118,-4136,-4151,-4165,-4175,-4184,-4190,-4195,-4198,-4202,-4206,-4211,-4217,-4225,-4236,
+-4248,-4263,-4279,-4296,-4315,-4333,-4352,-4370,-4388,-4405,-4422,-4438,-4454,-4471,-4489,-4508,-4528,-4551,-4576,-4604,-4634,
+-4665,-4698,-4731,-4765,-4798,-4830,-4860,-4887,-4912,-4935,-4954,-4971,-4985,-4998,-5010,-5021,-5032,-5043,-5056,-5069,-5084,
+-5101,-5120,-5139,-5160,-5182,-5204,-5227,-5250,-5272,-5294,-5316,-5337,-5358,-5378,-5398,-5418,-5438,-5457,-5477,-5496,-5515,
+-5533,-5551,-5568,-5583,-5598,-5610,-5621,-5631,-5639,-5645,-5650,-5654,-5656,-5658,-5659,-5659,-5659,-5659,-5658,-5656,-5654,
+-5651,-5647,-5642,-5637,-5630,-5622,-5613,-5604,-5594,-5584,-5573,-5563,-5553,-5544,-5534,-5525,-5515,-5504,-5492,-5478,-5462,
+-5444,-5424,-5401,-5375,-5348,-5320,-5291,-5263,-5237,-5215,-5196,-5184,-5177,-5177,-5184,-5198,-5218,-5244,-5274,-5306,-5341,
+-5375,-5407,-5436,-5460,-5479,-5492,-5498,-5498,-5492,-5481,-5466,-5448,-5428,-5407,-5387,-5368,-5352,-5338,-5328,-5321,-5318,
+-5317,-5319,-5324,-5330,-5337,-5344,-5352,-5361,-5368,-5376,-5383,-5390,-5396,-5401,-5407,-5412,-5416,-5420,-5423,-5425,-5427,
+-5428,-5427,-5426,-5424,-5420,-5416,-5412,-5406,-5401,-5396,-5391,-5386,-5383,-5380,-5379,-5380,-5382,-5386,-5392,-5399,-5408,
+-5418,-5430,-5443,-5457,-5472,-5487,-5502,-5518,-5533,-5547,-5561,-5574,-5586,-5597,-5608,-5617,-5626,-5634,-5642,-5650,-5657,
+-5664,-5671,-5678,-5685,-5691,-5697,-5701,-5705,-5708,-5710,-5710,-5708,-5705,-5700,-5695,-5688,-5680,-5673,-5665,-5657,-5651,
+-5645,-5640,-5637,-5636,-5636,-5638,-5641,-5645,-5650,-5655,-5661,-5666,-5671,-5675,-5679,-5681,-5682,-5681,-5679,-5675,-5671,
+-5665,-5658,-5651,-5643,-5635,-5628,-5621,-5614,-5609,-5605,-5602,-5601,-5600,-5601,-5603,-5605,-5607,-5610,-5612,-5613,-5613,
+-5611,-5608,-5602,-5595,-5586,-5575,-5563,-5549,-5535,-5520,-5504,-5488,-5473,-5458,-5444,-5430,-5418,-5405,-5394,-5383,-5373,
+-5364,-5355,-5347,-5339,-5333,-5327,-5323,-5321,-5320,-5321,-5324,-5329,-5335,-5344,-5353,-5363,-5373,-5382,-5391,-5397,-5401,
+-5402,-5401,-5395,-5387,-5375,-5360,-5343,-5324,-5304,-5284,-5264,-5245,-5227,-5212,-5199,-5188,-5180,-5173,-5169,-5165,-5162,
+-5160,-5156,-5152,-5146,-5139,-5130,-5119,-5108,-5095,-5083,-5071,-5060,-5051,-5045,-5041,-5041,-5045,-5051,-5061,-5073,-5086,
+-5100,-5113,-5125,-5134,-5139,-5140,-5135,-5125,-5110,-5088,-5061,-5030,-4995,-4957,-4917,-4877,-4837,-4799,-4764,-4732,-4703,
+-4678,-4657,-4640,-4627,-4616,-4607,-4599,-4593,-4586,-4578,-4570,-4559,-4547,-4533,-4517,-4498,-4478,-4456,-4433,-4408,-4383,
+-4356,-4329,-4302,-4274,-4246,-4217,-4189,-4161,-4133,-4106,-4080,-4055,-4032,-4011,-3993,-3977,-3964,-3955,-3948,-3944,-3943,
+-3944,-3946,-3949,-3953,-3957,-3960,-3961,-3961,-3959,-3954,-3948,-3939,-3929,-3917,-3903,-3889,-3873,-3858,-3841,-3825,-3808,
+-3791,-3774,-3757,-3739,-3721,-3702,-3684,-3665,-3646,-3629,-3611,-3596,-3582,-3569,-3559,-3552,-3546,-3543,-3541,-3541,-3541,
+-3542,-3543,-3542,-3540,-3536,-3530,-3522,-3512,-3500,-3486,-3471,-3456,-3441,-3427,-3414,-3403,-3394,-3388,-3384,-3382,-3382,
+-3384,-3387,-3391,-3396,-3401,-3406,-3411,-3415,-3417,-3419,-3420,-3419,-3417,-3413,-3408,-3400,-3391,-3380,-3367,-3351,-3334,
+-3316,-3296,-3275,-3253,-3232,-3212,-3192,-3175,-3159,-3146,-3135,-3126,-3119,-3113,-3108,-3103,-3097,-3090,-3080,-3067,-3052,
+-3034,-3013,-2989,-2964,-2937,-2910,-2882,-2856,-2830,-2806,-2784,-2762,-2741,-2720,-2698,-2674,-2647,-2618,-2584,-2547,-2507,
+-2463,-2417,-2370,-2323,-2278,-2235,-2195,-2160,-2130,-2104,-2083,-2065,-2049,-2032,-2015,-1994,-1967,-1935,-1895,-1847,-1793,
+-1733,-1668,-1602,-1538,-1477,-1425,-1383,-1354,-1342,-1347,-1370,-1412,-1470,-1543,-1629,-1724,-1824,-1925,-2024,-2117,-2200,
+-2271,-2327,-2368,-2394,-2404,-2400,-2384,-2357,-2322,-2282,-2240,-2197,-2156,-2118,-2086,-2059,-2038,-2024,-2016,-2013,-2015,
+-2022,-2031,-2043,-2056,-2070,-2085,-2098,-2111,-2122,-2131,-2138,-2143,-2145,-2144,-2140,-2133,-2124,-2111,-2096,-2078,-2059,
+-2038,-2017,-1995,-1975,-1955,-1938,-1922,-1910,-1899,-1891,-1886,-1882,-1880,-1879,-1878,-1877,-1875,-1872,-1866,-1859,-1850,
+-1839,-1826,-1811,-1796,-1780,-1764,-1749,-1735,-1723,-1712,-1703,-1696,-1691,-1688,-1687,-1687,-1688,-1691,-1693,-1696,-1698,
+-1699,-1700,-1699,-1697,-1694,-1689,-1683,-1676,-1668,-1659,-1650,-1640,-1632,-1623,-1616,-1611,-1606,-1604,-1602,-1602,-1604,
+-1606,-1608,-1611,-1613,-1614,-1614,-1613,-1610,-1605,-1599,-1592,-1584,-1575,-1567,-1559,-1553,-1549,-1546,-1546,-1547,-1551,
+-1556,-1562,-1568,-1574,-1579,-1582,-1582,-1580,-1574,-1565,-1554,-1539,-1523,-1505,-1487,-1469,-1451,-1436,-1422,-1412,-1404,
+-1399,-1398,-1399,-1402,-1407,-1415,-1423,-1432,-1441,-1450,-1459,-1467,-1475,-1482,-1488,-1493,-1498,-1501,-1504,-1505,-1505,
+-1504,-1501,-1497,-1491,-1485,-1477,-1468,-1459,-1450,-1442,-1434,-1426,-1420,-1414,-1409,-1404,-1398,-1390,-1381,-1369,-1353,
+-1334,-1310,-1282,-1249,-1213,-1174,-1132,-1089,-1047,-1006,-969,-935,-906,-883,-865,-854,-848,-847,-851,-857,-866,
+-875,-884,-891,-897,-900,-900,-897,-892,-885,-876,-867,-858,-849,-842,-837,-833,-832,-832,-835,-838,-842,
+-845,-848,-850,-850,-847,-842,-835,-825,-813,-799,-784,-767,-751,-734,-717,-702,-687,-674,-662,-652,-642,
+-633,-625,-618,-611,-603,-595,-587,-579,-570,-560,-551,-541,-531,-521,-512,-503,-495,-487,-481,-474,-469,
+-463,-458,-453,-448,-443,-437,-431,-425,-419,-412,-406,-400,-395,-390,-387,-384,-383,-382,-381,-381,-382,
+-381,-381,-379,-376,-372,-367,-361,-353,-345,-336,-327,-318,-310,-302,-295,-290,-284,-280,-275,-271,-265,
+-259,-251,-241,-230,-217,-202,-187,-171,-156,-142,-130,-121,-116,-114,-117,-124,-135,-149,-165,-183,-201,
+-291,-308,-322,-333,-341,-344,-342,-335,-324,-309,-291,-270,-247,-224,-201,-179,-158,-140,-124,-110,-98,
+-88,-79,-70,-62,-54,-45,-34,-23,-11,2,16,31,45,60,74,87,99,109,119,127,134,
+141,148,154,161,169,177,187,198,209,222,235,249,263,277,290,303,316,328,339,350,360,
+370,380,390,401,411,422,434,445,456,467,478,488,497,505,512,518,522,526,530,533,537,
+541,547,553,562,572,584,598,614,630,648,665,682,698,712,725,735,742,746,748,747,744,
+739,733,726,719,713,707,703,701,699,700,701,704,708,711,715,719,722,724,725,724,723,
+720,717,714,710,706,702,699,697,696,696,697,699,703,707,711,716,722,727,733,738,743,
+747,751,755,758,760,762,763,764,765,765,765,765,766,767,768,770,773,777,782,787,794,
+802,810,819,828,837,846,854,860,866,870,872,873,872,870,866,862,858,852,848,843,840,
+837,835,835,835,836,838,841,844,848,852,857,861,866,871,877,883,891,899,908,919,930,
+943,957,971,986,1001,1015,1028,1041,1051,1059,1065,1068,1069,1067,1062,1055,1045,1034,1021,1007,992,
+977,962,947,932,918,904,891,879,866,854,842,830,817,803,789,774,758,742,725,708,690,
+673,656,639,624,610,597,585,575,567,559,554,549,544,541,537,533,529,524,518,511,504,
+495,486,476,465,455,445,436,427,419,413,408,404,402,401,401,402,404,406,409,412,414,
+417,420,422,424,426,429,431,433,435,437,439,441,443,444,443,442,439,434,427,418,407,
+394,379,363,345,327,309,291,273,257,241,227,215,204,193,184,175,165,155,143,130,115,
+98,78,56,33,8,-17,-44,-70,-94,-118,-139,-157,-173,-186,-195,-202,-206,-209,-210,-210,-210,
+-210,-212,-215,-220,-228,-238,-251,-267,-286,-308,-333,-360,-389,-421,-454,-488,-525,-562,-600,-638,-677,
+-716,-755,-794,-832,-870,-907,-943,-977,-1011,-1043,-1074,-1104,-1132,-1159,-1184,-1209,-1232,-1255,-1277,-1298,-1319,
+-1341,-1363,-1385,-1409,-1435,-1462,-1492,-1524,-1559,-1596,-1636,-1679,-1724,-1770,-1818,-1866,-1914,-1962,-2007,-2049,-2089,
+-2124,-2156,-2183,-2205,-2224,-2239,-2251,-2261,-2269,-2277,-2285,-2294,-2306,-2319,-2335,-2354,-2375,-2399,-2424,-2450,-2477,
+-2504,-2530,-2555,-2579,-2601,-2621,-2641,-2659,-2677,-2696,-2715,-2736,-2760,-2786,-2814,-2846,-2880,-2917,-2955,-2994,-3034,
+-3074,-3112,-3149,-3183,-3215,-3245,-3272,-3297,-3320,-3342,-3363,-3385,-3407,-3429,-3453,-3479,-3506,-3534,-3563,-3593,-3623,
+-3653,-3683,-3711,-3739,-3765,-3789,-3813,-3835,-3856,-3877,-3897,-3918,-3938,-3959,-3980,-4002,-4023,-4044,-4065,-4085,-4103,
+-4120,-4136,-4150,-4162,-4172,-4182,-4190,-4197,-4205,-4212,-4219,-4228,-4237,-4248,-4259,-4271,-4284,-4298,-4313,-4328,-4343,
+-4359,-4375,-4391,-4408,-4426,-4445,-4465,-4488,-4512,-4538,-4566,-4596,-4628,-4662,-4696,-4731,-4766,-4800,-4832,-4863,-4892,
+-4918,-4942,-4962,-4981,-4997,-5010,-5023,-5034,-5045,-5056,-5067,-5079,-5091,-5105,-5121,-5137,-5155,-5174,-5195,-5215,-5237,
+-5259,-5281,-5303,-5325,-5347,-5368,-5389,-5409,-5428,-5447,-5464,-5481,-5497,-5511,-5525,-5537,-5548,-5558,-5567,-5576,-5583,
+-5589,-5595,-5601,-5606,-5610,-5614,-5617,-5620,-5622,-5623,-5623,-5621,-5619,-5614,-5608,-5601,-5593,-5584,-5575,-5565,-5556,
+-5547,-5539,-5532,-5527,-5523,-5519,-5517,-5514,-5511,-5507,-5501,-5492,-5480,-5465,-5446,-5423,-5397,-5369,-5339,-5309,-5280,
+-5253,-5230,-5212,-5201,-5196,-5200,-5211,-5229,-5255,-5286,-5322,-5361,-5400,-5439,-5475,-5506,-5532,-5551,-5563,-5567,-5564,
+-5554,-5537,-5516,-5491,-5464,-5437,-5409,-5384,-5361,-5342,-5326,-5315,-5307,-5303,-5302,-5304,-5307,-5312,-5318,-5323,-5329,
+-5334,-5338,-5341,-5344,-5347,-5349,-5351,-5353,-5355,-5357,-5360,-5363,-5365,-5368,-5370,-5372,-5373,-5373,-5372,-5371,-5369,
+-5366,-5362,-5359,-5355,-5353,-5350,-5350,-5350,-5352,-5356,-5362,-5369,-5379,-5389,-5401,-5415,-5428,-5443,-5457,-5472,-5486,
+-5499,-5512,-5524,-5535,-5546,-5556,-5565,-5574,-5582,-5590,-5598,-5605,-5612,-5619,-5626,-5632,-5637,-5642,-5645,-5647,-5649,
+-5648,-5647,-5644,-5641,-5636,-5631,-5626,-5620,-5614,-5609,-5605,-5602,-5599,-5597,-5597,-5597,-5598,-5599,-5601,-5604,-5606,
+-5608,-5610,-5611,-5612,-5612,-5612,-5611,-5610,-5609,-5607,-5606,-5604,-5602,-5600,-5598,-5597,-5595,-5594,-5593,-5592,-5591,
+-5591,-5590,-5590,-5590,-5590,-5590,-5589,-5589,-5588,-5586,-5584,-5581,-5578,-5573,-5567,-5559,-5551,-5541,-5530,-5518,-5505,
+-5492,-5478,-5463,-5449,-5435,-5422,-5408,-5396,-5383,-5372,-5361,-5352,-5342,-5334,-5327,-5320,-5315,-5311,-5308,-5308,-5309,
+-5311,-5316,-5323,-5331,-5341,-5352,-5364,-5376,-5388,-5399,-5408,-5415,-5418,-5419,-5416,-5409,-5398,-5384,-5366,-5346,-5324,
+-5301,-5277,-5253,-5231,-5211,-5193,-5177,-5164,-5154,-5147,-5142,-5138,-5136,-5135,-5133,-5131,-5127,-5123,-5117,-5109,-5101,
+-5092,-5082,-5073,-5064,-5058,-5053,-5051,-5052,-5056,-5063,-5073,-5085,-5098,-5112,-5126,-5139,-5149,-5156,-5160,-5158,-5152,
+-5141,-5125,-5104,-5079,-5051,-5019,-4986,-4952,-4917,-4884,-4852,-4822,-4794,-4770,-4748,-4728,-4711,-4696,-4683,-4671,-4659,
+-4647,-4635,-4622,-4607,-4592,-4575,-4557,-4538,-4517,-4496,-4474,-4451,-4427,-4403,-4379,-4355,-4330,-4306,-4282,-4259,-4235,
+-4213,-4191,-4170,-4151,-4133,-4117,-4102,-4090,-4079,-4070,-4063,-4057,-4053,-4049,-4045,-4042,-4038,-4034,-4028,-4021,-4013,
+-4004,-3993,-3981,-3968,-3953,-3939,-3923,-3908,-3892,-3876,-3860,-3844,-3828,-3811,-3794,-3776,-3758,-3739,-3719,-3699,-3678,
+-3658,-3638,-3619,-3601,-3584,-3570,-3557,-3547,-3539,-3532,-3528,-3525,-3522,-3520,-3518,-3515,-3511,-3505,-3497,-3488,-3477,
+-3464,-3450,-3435,-3419,-3403,-3388,-3374,-3362,-3351,-3343,-3336,-3332,-3331,-3331,-3333,-3337,-3342,-3347,-3354,-3360,-3366,
+-3372,-3376,-3380,-3381,-3381,-3378,-3374,-3366,-3357,-3344,-3329,-3313,-3294,-3274,-3253,-3231,-3210,-3189,-3170,-3152,-3137,
+-3123,-3112,-3102,-3094,-3087,-3080,-3073,-3065,-3055,-3043,-3028,-3010,-2989,-2966,-2941,-2915,-2888,-2860,-2834,-2809,-2785,
+-2764,-2744,-2727,-2710,-2694,-2677,-2659,-2638,-2614,-2586,-2554,-2518,-2478,-2435,-2390,-2344,-2298,-2254,-2213,-2176,-2143,
+-2115,-2091,-2071,-2053,-2035,-2017,-1995,-1968,-1934,-1892,-1841,-1782,-1715,-1641,-1563,-1484,-1408,-1337,-1275,-1227,-1196,
+-1184,-1192,-1223,-1275,-1347,-1437,-1543,-1660,-1784,-1910,-2033,-2150,-2256,-2348,-2424,-2481,-2519,-2538,-2540,-2527,-2500,
+-2463,-2419,-2370,-2321,-2273,-2229,-2190,-2159,-2135,-2119,-2111,-2109,-2114,-2124,-2138,-2154,-2171,-2189,-2206,-2222,-2237,
+-2248,-2257,-2264,-2267,-2267,-2264,-2259,-2250,-2238,-2224,-2207,-2187,-2166,-2142,-2118,-2092,-2067,-2041,-2017,-1994,-1973,
+-1954,-1938,-1925,-1914,-1905,-1899,-1895,-1892,-1890,-1888,-1886,-1882,-1878,-1872,-1865,-1855,-1844,-1832,-1818,-1804,-1789,
+-1775,-1761,-1749,-1738,-1730,-1723,-1718,-1716,-1716,-1717,-1720,-1724,-1728,-1732,-1736,-1739,-1740,-1740,-1738,-1735,-1730,
+-1724,-1716,-1708,-1700,-1691,-1684,-1677,-1671,-1667,-1665,-1664,-1665,-1667,-1670,-1673,-1676,-1679,-1681,-1681,-1680,-1678,
+-1674,-1669,-1662,-1655,-1647,-1640,-1634,-1628,-1625,-1623,-1623,-1624,-1627,-1632,-1637,-1641,-1645,-1648,-1648,-1646,-1641,
+-1633,-1622,-1607,-1590,-1571,-1551,-1530,-1509,-1489,-1470,-1454,-1441,-1430,-1423,-1420,-1419,-1422,-1427,-1434,-1443,-1453,
+-1465,-1476,-1487,-1499,-1509,-1518,-1527,-1534,-1539,-1543,-1546,-1546,-1545,-1542,-1538,-1532,-1525,-1518,-1509,-1501,-1493,
+-1485,-1477,-1471,-1465,-1459,-1454,-1449,-1443,-1435,-1426,-1413,-1397,-1377,-1352,-1323,-1290,-1252,-1211,-1168,-1123,-1079,
+-1036,-996,-960,-930,-907,-891,-882,-880,-885,-897,-913,-933,-955,-977,-999,-1019,-1036,-1049,-1057,-1060,-1059,
+-1053,-1044,-1032,-1017,-1002,-986,-971,-957,-944,-934,-926,-920,-916,-913,-911,-909,-907,-905,-902,-897,-892,
+-885,-877,-868,-858,-848,-837,-827,-817,-808,-799,-791,-783,-777,-770,-764,-759,-753,-747,-741,-734,-727,
+-720,-713,-706,-699,-692,-685,-679,-673,-667,-662,-657,-652,-647,-642,-637,-631,-626,-619,-613,-606,-600,
+-593,-587,-581,-576,-572,-569,-566,-564,-563,-562,-560,-559,-557,-553,-548,-542,-534,-525,-514,-503,-490,
+-477,-464,-452,-440,-430,-420,-412,-405,-400,-394,-389,-383,-376,-368,-358,-346,-333,-318,-301,-284,-266,
+-250,-235,-222,-213,-207,-205,-208,-215,-226,-240,-256,-273,-291,-362,-377,-391,-401,-408,-411,-409,-403,
+-393,-379,-361,-341,-319,-297,-275,-253,-232,-214,-197,-183,-170,-159,-149,-140,-132,-124,-115,-106,-96,
+-85,-74,-61,-48,-35,-22,-9,2,14,25,36,45,54,63,71,80,89,99,109,120,131,
+143,156,169,183,196,209,222,234,246,257,267,277,287,296,305,315,324,334,344,353,363,
+373,382,391,399,407,413,418,423,426,429,432,435,438,442,448,455,463,474,487,501,516,
+533,550,567,584,600,614,626,636,643,647,649,648,645,640,634,627,619,612,605,599,594,
+590,588,587,587,588,590,592,594,596,598,599,599,599,599,598,596,595,594,593,593,593,
+594,596,599,603,607,613,618,625,631,638,644,650,656,662,667,672,676,680,682,685,687,
+688,690,691,692,694,695,697,700,704,708,714,720,728,736,745,755,765,775,785,794,803,
+811,817,822,826,827,828,827,826,823,820,816,813,809,806,804,802,802,802,803,805,808,
+812,817,823,830,837,845,853,863,874,885,897,910,923,938,952,967,981,996,1009,1021,1032,
+1042,1049,1055,1058,1059,1058,1054,1049,1041,1032,1022,1010,997,984,970,955,940,925,909,893,877,
+860,843,825,807,789,770,751,732,712,693,674,656,638,621,605,590,577,565,555,545,537,
+531,525,520,516,512,509,506,502,499,495,491,486,481,476,470,463,457,450,443,437,431,
+425,420,415,412,409,407,405,405,406,408,410,414,418,423,429,435,442,449,456,462,469,
+475,480,483,486,487,486,484,479,472,463,452,439,425,409,392,375,357,339,322,305,289,
+275,262,249,238,228,218,209,199,188,177,164,150,134,116,96,75,52,28,3,-21,-45,
+-69,-91,-112,-130,-146,-160,-172,-181,-189,-194,-199,-202,-205,-209,-213,-218,-224,-232,-243,-256,-271,
+-289,-310,-334,-360,-389,-420,-454,-490,-527,-567,-607,-648,-690,-733,-775,-816,-857,-897,-935,-971,-1006,
+-1038,-1068,-1097,-1123,-1147,-1169,-1190,-1209,-1227,-1245,-1262,-1279,-1296,-1314,-1333,-1354,-1375,-1399,-1425,-1453,-1484,
+-1517,-1552,-1589,-1628,-1670,-1712,-1755,-1799,-1843,-1886,-1928,-1968,-2007,-2043,-2076,-2107,-2136,-2161,-2185,-2207,-2228,
+-2248,-2267,-2286,-2306,-2326,-2348,-2370,-2393,-2417,-2441,-2466,-2490,-2514,-2537,-2558,-2579,-2598,-2616,-2633,-2649,-2665,
+-2681,-2698,-2717,-2738,-2760,-2785,-2813,-2844,-2876,-2911,-2947,-2985,-3022,-3060,-3096,-3131,-3165,-3196,-3225,-3252,-3278,
+-3302,-3325,-3347,-3368,-3390,-3413,-3437,-3461,-3487,-3514,-3541,-3570,-3598,-3627,-3656,-3684,-3711,-3738,-3763,-3788,-3811,
+-3834,-3856,-3878,-3900,-3921,-3943,-3964,-3986,-4007,-4028,-4048,-4068,-4086,-4104,-4120,-4135,-4148,-4159,-4169,-4178,-4186,
+-4193,-4200,-4206,-4213,-4220,-4228,-4236,-4245,-4256,-4267,-4279,-4293,-4307,-4323,-4339,-4357,-4376,-4397,-4419,-4442,-4467,
+-4494,-4522,-4551,-4582,-4614,-4647,-4681,-4715,-4748,-4781,-4813,-4843,-4872,-4899,-4923,-4946,-4967,-4985,-5002,-5017,-5031,
+-5044,-5057,-5069,-5081,-5093,-5105,-5119,-5133,-5148,-5164,-5181,-5199,-5218,-5237,-5257,-5278,-5298,-5319,-5340,-5360,-5380,
+-5398,-5416,-5433,-5448,-5461,-5473,-5484,-5493,-5501,-5507,-5513,-5518,-5522,-5525,-5529,-5532,-5535,-5539,-5542,-5545,-5547,
+-5549,-5550,-5551,-5550,-5548,-5545,-5541,-5535,-5529,-5523,-5516,-5509,-5504,-5499,-5495,-5493,-5491,-5491,-5492,-5492,-5493,
+-5492,-5489,-5484,-5476,-5465,-5450,-5431,-5410,-5385,-5358,-5331,-5304,-5278,-5256,-5238,-5227,-5222,-5224,-5234,-5252,-5277,
+-5308,-5345,-5385,-5426,-5468,-5508,-5544,-5576,-5600,-5617,-5627,-5628,-5621,-5607,-5586,-5561,-5531,-5500,-5467,-5435,-5405,
+-5377,-5353,-5333,-5316,-5303,-5294,-5289,-5286,-5285,-5285,-5287,-5289,-5291,-5293,-5294,-5296,-5297,-5299,-5300,-5302,-5304,
+-5307,-5310,-5314,-5318,-5322,-5326,-5330,-5333,-5334,-5335,-5335,-5333,-5331,-5327,-5323,-5319,-5315,-5312,-5309,-5309,-5309,
+-5312,-5317,-5325,-5334,-5345,-5357,-5371,-5385,-5400,-5415,-5430,-5444,-5457,-5470,-5481,-5491,-5501,-5510,-5518,-5526,-5533,
+-5540,-5548,-5555,-5562,-5569,-5575,-5581,-5586,-5590,-5594,-5595,-5596,-5595,-5592,-5589,-5585,-5580,-5575,-5570,-5565,-5560,
+-5557,-5555,-5554,-5554,-5555,-5557,-5560,-5563,-5567,-5569,-5572,-5574,-5574,-5574,-5572,-5570,-5567,-5563,-5559,-5555,-5551,
+-5548,-5545,-5544,-5544,-5545,-5547,-5551,-5555,-5559,-5564,-5569,-5574,-5577,-5580,-5582,-5583,-5582,-5580,-5577,-5573,-5567,
+-5561,-5554,-5546,-5539,-5530,-5522,-5514,-5505,-5496,-5488,-5479,-5471,-5462,-5453,-5444,-5434,-5425,-5415,-5405,-5394,-5384,
+-5373,-5363,-5352,-5342,-5332,-5323,-5315,-5307,-5301,-5297,-5294,-5293,-5294,-5297,-5303,-5310,-5319,-5330,-5341,-5354,-5366,
+-5378,-5388,-5396,-5403,-5406,-5405,-5401,-5394,-5382,-5367,-5349,-5328,-5306,-5282,-5257,-5233,-5210,-5189,-5170,-5153,-5140,
+-5129,-5121,-5115,-5112,-5110,-5109,-5108,-5108,-5107,-5106,-5103,-5100,-5095,-5090,-5084,-5078,-5073,-5068,-5065,-5064,-5064,
+-5067,-5071,-5078,-5086,-5095,-5104,-5114,-5122,-5129,-5133,-5134,-5132,-5127,-5117,-5103,-5086,-5066,-5042,-5016,-4989,-4960,
+-4931,-4903,-4875,-4849,-4825,-4802,-4781,-4763,-4746,-4730,-4716,-4702,-4689,-4677,-4663,-4650,-4635,-4619,-4602,-4585,-4565,
+-4545,-4524,-4502,-4479,-4455,-4431,-4407,-4383,-4359,-4335,-4312,-4290,-4269,-4249,-4230,-4213,-4197,-4183,-4171,-4161,-4152,
+-4144,-4138,-4132,-4128,-4123,-4118,-4113,-4107,-4100,-4092,-4082,-4071,-4059,-4046,-4031,-4015,-3999,-3983,-3966,-3949,-3932,
+-3916,-3900,-3883,-3867,-3851,-3834,-3817,-3799,-3781,-3761,-3741,-3720,-3699,-3678,-3656,-3636,-3616,-3597,-3580,-3564,-3550,
+-3539,-3529,-3521,-3514,-3508,-3503,-3499,-3494,-3489,-3482,-3475,-3467,-3457,-3446,-3434,-3421,-3407,-3393,-3380,-3367,-3354,
+-3343,-3334,-3326,-3321,-3317,-3316,-3317,-3319,-3323,-3329,-3335,-3342,-3350,-3356,-3363,-3367,-3370,-3371,-3370,-3365,-3358,
+-3347,-3334,-3318,-3299,-3279,-3257,-3234,-3211,-3188,-3166,-3146,-3128,-3112,-3098,-3085,-3075,-3066,-3057,-3048,-3039,-3028,
+-3015,-3001,-2984,-2964,-2942,-2918,-2893,-2867,-2841,-2816,-2792,-2769,-2749,-2730,-2714,-2698,-2683,-2669,-2653,-2635,-2614,
+-2589,-2561,-2529,-2492,-2453,-2410,-2366,-2321,-2277,-2236,-2197,-2162,-2132,-2105,-2083,-2063,-2046,-2027,-2007,-1983,-1953,
+-1916,-1871,-1816,-1753,-1683,-1606,-1526,-1445,-1366,-1295,-1234,-1187,-1157,-1148,-1160,-1194,-1251,-1329,-1427,-1539,-1664,
+-1797,-1932,-2065,-2191,-2306,-2407,-2491,-2555,-2600,-2625,-2630,-2619,-2593,-2555,-2509,-2457,-2404,-2351,-2303,-2260,-2224,
+-2197,-2178,-2168,-2167,-2172,-2183,-2198,-2217,-2237,-2258,-2278,-2296,-2312,-2325,-2335,-2342,-2345,-2344,-2340,-2333,-2322,
+-2309,-2293,-2274,-2253,-2229,-2204,-2177,-2148,-2119,-2090,-2061,-2033,-2007,-1983,-1961,-1942,-1927,-1914,-1905,-1899,-1896,
+-1895,-1895,-1896,-1898,-1899,-1900,-1899,-1896,-1891,-1884,-1875,-1863,-1851,-1837,-1823,-1809,-1795,-1783,-1772,-1763,-1756,
+-1752,-1750,-1750,-1751,-1755,-1759,-1763,-1768,-1772,-1775,-1776,-1777,-1776,-1773,-1769,-1764,-1758,-1752,-1745,-1740,-1735,
+-1731,-1728,-1726,-1726,-1727,-1729,-1731,-1733,-1735,-1737,-1737,-1737,-1735,-1732,-1727,-1722,-1716,-1710,-1703,-1697,-1692,
+-1687,-1684,-1682,-1682,-1682,-1683,-1685,-1687,-1687,-1687,-1685,-1681,-1675,-1666,-1654,-1640,-1624,-1605,-1586,-1566,-1545,
+-1525,-1506,-1489,-1474,-1462,-1453,-1446,-1443,-1443,-1445,-1450,-1457,-1466,-1477,-1488,-1500,-1513,-1524,-1536,-1546,-1555,
+-1563,-1568,-1572,-1574,-1574,-1573,-1569,-1564,-1558,-1551,-1543,-1535,-1528,-1520,-1513,-1507,-1501,-1495,-1490,-1484,-1477,
+-1469,-1458,-1445,-1429,-1409,-1385,-1357,-1326,-1292,-1255,-1217,-1179,-1141,-1106,-1073,-1046,-1024,-1008,-999,-996,-1001,
+-1011,-1026,-1046,-1068,-1092,-1117,-1139,-1160,-1176,-1188,-1195,-1197,-1194,-1186,-1173,-1157,-1138,-1118,-1097,-1076,-1055,
+-1037,-1020,-1005,-993,-984,-976,-970,-966,-962,-960,-957,-954,-951,-948,-943,-939,-933,-927,-921,-915,-908,
+-902,-895,-889,-883,-877,-871,-865,-859,-853,-847,-841,-835,-829,-823,-818,-813,-808,-804,-800,-797,-794,
+-791,-789,-786,-784,-780,-777,-772,-767,-761,-755,-748,-741,-733,-726,-719,-713,-707,-702,-698,-694,-691,
+-688,-686,-683,-679,-674,-669,-662,-653,-643,-632,-619,-606,-592,-578,-564,-551,-539,-528,-519,-510,-502,
+-495,-488,-481,-473,-464,-454,-442,-428,-412,-395,-377,-359,-341,-324,-309,-296,-287,-281,-280,-283,-290,
+-300,-313,-329,-345,-362,-416,-427,-437,-444,-448,-449,-446,-439,-428,-415,-398,-380,-360,-339,-319,-299,
+-280,-262,-246,-232,-219,-208,-198,-189,-180,-171,-162,-153,-143,-132,-120,-108,-96,-83,-70,-57,-44,
+-32,-20,-9,0,10,20,29,38,48,57,67,78,89,100,112,124,136,147,159,171,182,
+193,203,213,223,232,241,251,260,270,280,290,301,311,321,331,341,350,358,366,372,378,
+383,388,392,396,400,405,411,417,425,434,445,457,470,484,498,513,528,542,555,567,577,
+585,591,595,597,598,597,594,591,587,583,578,574,571,568,566,565,564,564,565,565,566,
+566,567,567,566,565,564,562,560,557,555,553,551,549,547,547,546,547,548,549,551,554,
+557,561,565,569,573,577,582,586,591,595,599,603,607,611,615,619,623,627,631,636,642,
+648,654,662,670,678,688,697,707,717,727,737,746,755,762,769,774,778,780,781,781,780,
+778,776,773,769,766,763,760,758,756,756,756,757,759,762,766,772,778,785,793,803,813,
+824,837,850,864,878,893,909,924,940,955,969,982,994,1005,1014,1021,1026,1030,1031,1030,1028,
+1023,1017,1010,1001,990,979,967,953,940,925,910,894,877,861,844,826,808,790,772,754,736,
+719,702,686,670,655,641,628,616,604,594,584,575,567,559,551,544,538,531,525,520,514,
+509,503,499,494,489,485,481,477,473,469,466,462,458,455,451,448,445,442,439,438,436,
+436,436,438,440,444,449,454,460,467,475,482,489,496,502,506,510,511,511,509,504,498,
+489,478,466,452,437,421,404,388,371,355,339,325,311,298,286,275,264,254,244,234,223,
+212,200,187,172,157,139,121,102,81,60,38,17,-4,-25,-45,-64,-82,-98,-113,-126,-138,
+-149,-158,-166,-174,-181,-187,-194,-202,-211,-220,-232,-245,-260,-278,-299,-322,-348,-377,-409,-444,-481,
+-521,-562,-605,-649,-694,-738,-783,-826,-868,-908,-945,-981,-1013,-1043,-1071,-1096,-1118,-1139,-1158,-1176,-1193,
+-1210,-1227,-1244,-1262,-1282,-1302,-1325,-1349,-1374,-1401,-1430,-1460,-1491,-1524,-1557,-1591,-1626,-1660,-1695,-1730,-1764,
+-1798,-1832,-1864,-1896,-1927,-1957,-1987,-2015,-2043,-2070,-2096,-2122,-2148,-2174,-2200,-2226,-2253,-2279,-2306,-2333,-2360,
+-2387,-2413,-2439,-2465,-2489,-2513,-2535,-2557,-2578,-2598,-2618,-2637,-2657,-2677,-2697,-2719,-2743,-2767,-2794,-2822,-2851,
+-2882,-2914,-2947,-2980,-3013,-3046,-3078,-3109,-3138,-3167,-3194,-3220,-3244,-3268,-3291,-3314,-3337,-3360,-3384,-3408,-3433,
+-3459,-3485,-3512,-3540,-3568,-3597,-3625,-3653,-3680,-3707,-3733,-3759,-3784,-3809,-3833,-3856,-3879,-3902,-3925,-3947,-3968,
+-3989,-4009,-4029,-4047,-4065,-4081,-4095,-4108,-4120,-4130,-4139,-4146,-4153,-4160,-4166,-4172,-4178,-4185,-4192,-4201,-4211,
+-4222,-4234,-4248,-4263,-4279,-4297,-4315,-4335,-4356,-4378,-4401,-4425,-4449,-4475,-4501,-4528,-4556,-4585,-4613,-4643,-4672,
+-4702,-4731,-4760,-4789,-4817,-4843,-4869,-4894,-4918,-4940,-4961,-4980,-4998,-5015,-5031,-5046,-5060,-5073,-5086,-5099,-5112,
+-5125,-5138,-5152,-5167,-5182,-5199,-5216,-5233,-5252,-5271,-5289,-5308,-5327,-5344,-5361,-5376,-5389,-5401,-5411,-5419,-5425,
+-5430,-5432,-5434,-5434,-5434,-5433,-5432,-5431,-5430,-5429,-5429,-5430,-5430,-5431,-5432,-5433,-5434,-5435,-5435,-5434,-5433,
+-5432,-5430,-5429,-5427,-5426,-5424,-5423,-5423,-5423,-5422,-5422,-5420,-5418,-5415,-5409,-5402,-5392,-5379,-5365,-5348,-5330,
+-5311,-5293,-5275,-5259,-5247,-5239,-5236,-5239,-5249,-5265,-5288,-5317,-5351,-5389,-5430,-5472,-5514,-5554,-5590,-5621,-5646,
+-5664,-5674,-5676,-5670,-5657,-5637,-5612,-5582,-5549,-5515,-5480,-5446,-5414,-5385,-5359,-5337,-5318,-5303,-5291,-5283,-5276,
+-5272,-5269,-5267,-5266,-5265,-5264,-5264,-5264,-5264,-5265,-5266,-5268,-5271,-5274,-5278,-5282,-5287,-5291,-5295,-5298,-5300,
+-5301,-5301,-5299,-5296,-5292,-5287,-5281,-5276,-5271,-5267,-5264,-5264,-5266,-5270,-5276,-5285,-5296,-5309,-5323,-5338,-5354,
+-5370,-5385,-5400,-5414,-5427,-5438,-5448,-5457,-5465,-5472,-5478,-5485,-5491,-5497,-5503,-5510,-5517,-5523,-5529,-5535,-5540,
+-5544,-5547,-5548,-5548,-5547,-5544,-5540,-5535,-5530,-5525,-5520,-5516,-5512,-5511,-5510,-5511,-5513,-5516,-5521,-5525,-5530,
+-5535,-5539,-5542,-5544,-5544,-5543,-5541,-5537,-5532,-5527,-5521,-5516,-5511,-5508,-5506,-5505,-5506,-5509,-5514,-5519,-5526,
+-5533,-5541,-5548,-5553,-5558,-5560,-5561,-5559,-5555,-5549,-5540,-5530,-5518,-5505,-5492,-5478,-5465,-5452,-5440,-5429,-5419,
+-5411,-5404,-5399,-5394,-5390,-5387,-5384,-5381,-5377,-5374,-5369,-5364,-5358,-5351,-5344,-5335,-5327,-5318,-5309,-5301,-5294,
+-5287,-5282,-5278,-5276,-5276,-5278,-5282,-5288,-5295,-5304,-5313,-5323,-5333,-5342,-5350,-5356,-5360,-5361,-5359,-5355,-5346,
+-5335,-5321,-5304,-5285,-5264,-5243,-5221,-5199,-5178,-5158,-5140,-5124,-5110,-5099,-5091,-5084,-5080,-5077,-5076,-5075,-5075,
+-5076,-5076,-5075,-5075,-5074,-5072,-5070,-5069,-5067,-5066,-5065,-5066,-5067,-5069,-5073,-5077,-5082,-5087,-5091,-5096,-5099,
+-5100,-5100,-5097,-5091,-5082,-5070,-5056,-5038,-5018,-4996,-4973,-4948,-4922,-4897,-4872,-4847,-4824,-4802,-4782,-4764,-4747,
+-4731,-4717,-4705,-4692,-4681,-4669,-4657,-4644,-4631,-4616,-4601,-4583,-4565,-4544,-4523,-4500,-4476,-4452,-4426,-4401,-4375,
+-4349,-4324,-4300,-4278,-4256,-4237,-4219,-4204,-4190,-4179,-4169,-4162,-4156,-4151,-4147,-4144,-4142,-4139,-4136,-4132,-4126,
+-4120,-4112,-4102,-4091,-4078,-4064,-4050,-4034,-4018,-4002,-3985,-3969,-3953,-3937,-3922,-3907,-3892,-3877,-3861,-3846,-3829,
+-3812,-3795,-3776,-3756,-3736,-3716,-3695,-3674,-3654,-3634,-3615,-3598,-3582,-3568,-3555,-3544,-3535,-3528,-3521,-3516,-3511,
+-3507,-3503,-3498,-3493,-3488,-3481,-3474,-3465,-3456,-3446,-3435,-3425,-3414,-3403,-3393,-3384,-3376,-3370,-3365,-3361,-3360,
+-3359,-3361,-3363,-3367,-3371,-3375,-3379,-3382,-3383,-3383,-3380,-3375,-3366,-3355,-3341,-3324,-3305,-3284,-3261,-3237,-3213,
+-3190,-3167,-3145,-3125,-3107,-3091,-3076,-3063,-3050,-3039,-3027,-3015,-3002,-2987,-2971,-2953,-2933,-2911,-2888,-2864,-2840,
+-2816,-2792,-2770,-2750,-2730,-2713,-2696,-2681,-2665,-2650,-2632,-2613,-2591,-2565,-2536,-2503,-2467,-2428,-2387,-2345,-2302,
+-2261,-2222,-2186,-2153,-2124,-2099,-2078,-2060,-2043,-2026,-2007,-1985,-1959,-1927,-1888,-1842,-1788,-1729,-1665,-1598,-1530,
+-1466,-1408,-1358,-1321,-1299,-1294,-1307,-1340,-1392,-1462,-1548,-1648,-1758,-1875,-1994,-2112,-2223,-2326,-2416,-2491,-2549,
+-2590,-2614,-2621,-2613,-2592,-2560,-2520,-2476,-2430,-2384,-2342,-2304,-2273,-2248,-2231,-2222,-2219,-2222,-2230,-2242,-2256,
+-2272,-2287,-2302,-2315,-2326,-2334,-2340,-2343,-2343,-2340,-2335,-2328,-2318,-2307,-2294,-2278,-2261,-2243,-2222,-2200,-2176,
+-2151,-2126,-2100,-2073,-2048,-2023,-2001,-1980,-1962,-1947,-1936,-1927,-1922,-1919,-1919,-1921,-1923,-1927,-1930,-1933,-1934,
+-1934,-1931,-1926,-1918,-1908,-1896,-1882,-1868,-1853,-1838,-1823,-1810,-1799,-1789,-1782,-1778,-1775,-1775,-1777,-1780,-1784,
+-1789,-1793,-1798,-1802,-1804,-1806,-1807,-1806,-1805,-1802,-1800,-1797,-1794,-1791,-1789,-1787,-1786,-1786,-1787,-1788,-1789,
+-1790,-1791,-1791,-1791,-1790,-1788,-1786,-1782,-1778,-1773,-1768,-1763,-1758,-1753,-1749,-1745,-1742,-1740,-1737,-1735,-1733,
+-1730,-1727,-1722,-1716,-1707,-1698,-1686,-1672,-1656,-1639,-1621,-1601,-1581,-1562,-1543,-1525,-1508,-1494,-1481,-1471,-1464,
+-1460,-1458,-1460,-1463,-1470,-1478,-1488,-1499,-1511,-1523,-1536,-1548,-1560,-1570,-1579,-1587,-1592,-1596,-1597,-1597,-1594,
+-1591,-1585,-1579,-1572,-1565,-1557,-1549,-1542,-1535,-1528,-1520,-1513,-1505,-1497,-1487,-1476,-1463,-1448,-1431,-1412,-1391,
+-1369,-1346,-1322,-1299,-1277,-1257,-1240,-1226,-1216,-1210,-1208,-1210,-1216,-1226,-1238,-1253,-1267,-1282,-1296,-1307,-1315,
+-1319,-1320,-1316,-1307,-1294,-1278,-1258,-1235,-1211,-1186,-1161,-1136,-1113,-1091,-1072,-1055,-1041,-1030,-1021,-1014,-1010,
+-1007,-1005,-1004,-1003,-1003,-1004,-1004,-1003,-1003,-1002,-1000,-998,-996,-993,-989,-985,-980,-975,-968,-962,-954,
+-947,-939,-930,-922,-914,-907,-900,-893,-888,-884,-880,-877,-875,-874,-873,-872,-871,-869,-867,-864,-861,
+-856,-851,-844,-837,-830,-822,-814,-806,-799,-791,-784,-778,-772,-766,-760,-753,-747,-740,-731,-723,-713,
+-702,-691,-678,-666,-653,-641,-629,-617,-607,-597,-588,-580,-572,-565,-557,-550,-541,-531,-520,-507,-493,
+-478,-461,-444,-426,-410,-394,-380,-369,-360,-355,-353,-355,-360,-368,-378,-390,-403,-416,-484,-490,-494,
+-496,-495,-491,-485,-476,-464,-450,-434,-417,-399,-380,-362,-344,-327,-311,-296,-283,-271,-259,-249,-239,
+-229,-220,-210,-200,-189,-177,-165,-152,-139,-126,-113,-100,-88,-76,-64,-53,-43,-34,-25,-16,-8,
+0,8,17,26,36,46,56,67,78,89,101,112,123,134,145,156,166,176,186,196,206,
+216,227,237,247,258,268,278,288,298,308,317,325,333,340,347,353,360,366,372,379,386,
+393,402,411,421,431,443,454,466,478,490,501,512,522,531,538,545,551,555,558,561,563,
+564,564,565,565,566,566,567,567,568,568,569,569,569,568,567,565,563,560,556,551,546,
+540,534,528,521,515,509,503,497,492,488,484,481,479,477,477,477,478,480,483,486,490,
+494,499,504,510,516,523,530,537,545,553,561,570,579,589,598,609,619,630,641,652,663,
+673,683,693,701,709,716,721,725,728,730,731,731,730,728,725,722,719,716,713,710,708,
+706,704,704,704,705,706,708,712,716,721,727,734,743,752,763,775,789,803,818,835,852,
+869,887,905,922,939,954,969,982,993,1002,1009,1014,1016,1016,1014,1010,1003,995,985,973,960,
+946,931,916,899,883,866,849,833,817,801,785,771,756,743,730,717,705,693,681,670,658,
+647,635,624,612,599,587,575,563,551,539,528,518,508,500,493,487,482,478,475,473,472,
+472,472,473,473,473,474,474,473,472,472,471,470,469,468,468,468,470,471,474,478,482,
+486,491,496,500,504,507,509,510,509,507,503,497,490,481,471,459,447,434,420,407,393,
+380,367,355,343,332,321,311,301,291,282,272,261,250,239,226,213,199,184,168,152,135,
+117,99,81,62,44,25,7,-9,-27,-43,-59,-74,-89,-102,-115,-128,-139,-150,-161,-172,-183,
+-194,-206,-219,-234,-250,-269,-290,-314,-340,-370,-403,-438,-477,-518,-561,-605,-651,-697,-743,-788,-831,
+-873,-912,-948,-982,-1012,-1039,-1064,-1086,-1106,-1125,-1143,-1160,-1177,-1195,-1215,-1235,-1258,-1282,-1308,-1336,-1366,
+-1398,-1430,-1464,-1498,-1532,-1565,-1598,-1630,-1661,-1690,-1719,-1746,-1772,-1797,-1821,-1844,-1867,-1890,-1913,-1937,-1960,
+-1984,-2009,-2034,-2060,-2087,-2115,-2142,-2171,-2199,-2228,-2256,-2285,-2313,-2341,-2369,-2396,-2423,-2449,-2475,-2501,-2526,
+-2551,-2576,-2602,-2627,-2653,-2679,-2705,-2732,-2760,-2788,-2817,-2846,-2876,-2905,-2934,-2964,-2992,-3021,-3048,-3075,-3101,
+-3126,-3150,-3174,-3197,-3220,-3242,-3265,-3288,-3311,-3334,-3358,-3383,-3409,-3435,-3461,-3489,-3516,-3544,-3572,-3600,-3627,
+-3655,-3682,-3709,-3735,-3761,-3787,-3812,-3836,-3860,-3884,-3906,-3928,-3949,-3969,-3988,-4006,-4022,-4038,-4051,-4064,-4075,
+-4085,-4094,-4102,-4110,-4117,-4124,-4131,-4139,-4148,-4157,-4167,-4179,-4192,-4206,-4222,-4238,-4256,-4274,-4293,-4313,-4333,
+-4354,-4374,-4395,-4416,-4437,-4459,-4480,-4502,-4524,-4547,-4571,-4595,-4619,-4645,-4671,-4698,-4725,-4752,-4780,-4808,-4835,
+-4861,-4887,-4912,-4936,-4958,-4979,-4998,-5016,-5032,-5047,-5060,-5073,-5085,-5097,-5108,-5120,-5131,-5144,-5157,-5171,-5185,
+-5201,-5216,-5232,-5248,-5264,-5279,-5293,-5305,-5316,-5325,-5332,-5336,-5338,-5339,-5337,-5334,-5329,-5324,-5317,-5311,-5305,
+-5299,-5294,-5290,-5287,-5285,-5285,-5285,-5286,-5288,-5291,-5294,-5297,-5300,-5303,-5305,-5307,-5309,-5310,-5310,-5310,-5308,
+-5306,-5303,-5298,-5293,-5286,-5279,-5270,-5260,-5250,-5240,-5229,-5220,-5211,-5205,-5202,-5202,-5206,-5214,-5228,-5247,-5271,
+-5301,-5335,-5374,-5415,-5459,-5503,-5547,-5588,-5626,-5659,-5687,-5707,-5721,-5726,-5724,-5714,-5697,-5674,-5646,-5614,-5580,
+-5544,-5507,-5472,-5438,-5408,-5380,-5355,-5334,-5317,-5303,-5291,-5282,-5275,-5269,-5265,-5261,-5257,-5254,-5251,-5248,-5245,
+-5244,-5242,-5242,-5242,-5244,-5246,-5249,-5252,-5256,-5260,-5263,-5265,-5267,-5267,-5266,-5263,-5259,-5255,-5249,-5243,-5238,
+-5233,-5230,-5228,-5228,-5230,-5235,-5243,-5252,-5264,-5277,-5292,-5308,-5323,-5339,-5354,-5368,-5381,-5393,-5403,-5412,-5420,
+-5426,-5432,-5437,-5442,-5447,-5452,-5458,-5464,-5469,-5475,-5481,-5487,-5492,-5496,-5498,-5500,-5500,-5499,-5497,-5493,-5489,
+-5484,-5479,-5475,-5471,-5468,-5467,-5467,-5468,-5470,-5474,-5479,-5484,-5489,-5494,-5499,-5502,-5504,-5505,-5504,-5502,-5498,
+-5494,-5489,-5483,-5478,-5474,-5470,-5468,-5468,-5469,-5472,-5476,-5482,-5488,-5495,-5502,-5507,-5512,-5515,-5515,-5513,-5509,
+-5501,-5491,-5479,-5465,-5449,-5432,-5415,-5397,-5380,-5365,-5351,-5338,-5328,-5320,-5314,-5310,-5308,-5308,-5308,-5310,-5311,
+-5313,-5315,-5316,-5316,-5316,-5314,-5312,-5308,-5304,-5300,-5295,-5290,-5286,-5283,-5280,-5278,-5277,-5278,-5280,-5283,-5287,
+-5292,-5298,-5304,-5309,-5314,-5318,-5321,-5322,-5321,-5318,-5312,-5304,-5294,-5282,-5267,-5251,-5234,-5215,-5196,-5176,-5157,
+-5139,-5122,-5106,-5091,-5079,-5068,-5058,-5051,-5045,-5040,-5037,-5034,-5033,-5032,-5031,-5031,-5031,-5031,-5032,-5033,-5034,
+-5035,-5038,-5040,-5044,-5047,-5051,-5056,-5060,-5064,-5068,-5071,-5072,-5072,-5070,-5066,-5060,-5051,-5040,-5026,-5010,-4992,
+-4972,-4950,-4927,-4904,-4881,-4857,-4835,-4813,-4792,-4773,-4755,-4738,-4723,-4710,-4697,-4685,-4673,-4662,-4650,-4638,-4625,
+-4611,-4595,-4578,-4560,-4540,-4519,-4496,-4472,-4446,-4420,-4394,-4367,-4341,-4315,-4290,-4266,-4244,-4224,-4206,-4189,-4175,
+-4164,-4154,-4146,-4141,-4136,-4133,-4131,-4129,-4127,-4125,-4123,-4119,-4114,-4108,-4101,-4092,-4083,-4071,-4059,-4046,-4033,
+-4019,-4006,-3992,-3979,-3965,-3953,-3941,-3929,-3918,-3906,-3894,-3883,-3870,-3857,-3843,-3828,-3812,-3796,-3778,-3760,-3742,
+-3724,-3706,-3688,-3671,-3656,-3641,-3628,-3617,-3608,-3600,-3594,-3590,-3586,-3584,-3582,-3581,-3580,-3578,-3576,-3573,-3569,
+-3564,-3558,-3550,-3541,-3531,-3520,-3509,-3497,-3485,-3474,-3463,-3453,-3444,-3436,-3429,-3424,-3420,-3416,-3413,-3410,-3407,
+-3404,-3399,-3392,-3384,-3374,-3361,-3347,-3330,-3311,-3291,-3269,-3247,-3224,-3201,-3179,-3158,-3138,-3119,-3101,-3085,-3070,
+-3055,-3040,-3026,-3010,-2994,-2977,-2958,-2937,-2915,-2892,-2868,-2843,-2818,-2793,-2769,-2746,-2724,-2704,-2684,-2666,-2649,
+-2632,-2614,-2596,-2576,-2554,-2530,-2502,-2472,-2440,-2405,-2368,-2331,-2293,-2256,-2221,-2188,-2157,-2130,-2107,-2086,-2068,
+-2052,-2037,-2021,-2004,-1985,-1962,-1935,-1903,-1867,-1827,-1784,-1739,-1694,-1651,-1612,-1579,-1554,-1540,-1537,-1548,-1572,
+-1609,-1658,-1719,-1790,-1868,-1951,-2036,-2120,-2201,-2275,-2342,-2398,-2443,-2477,-2499,-2510,-2510,-2502,-2487,-2467,-2443,
+-2417,-2392,-2368,-2347,-2330,-2316,-2306,-2300,-2298,-2298,-2299,-2302,-2306,-2308,-2310,-2311,-2310,-2308,-2304,-2299,-2293,
+-2287,-2280,-2273,-2267,-2261,-2255,-2249,-2243,-2236,-2229,-2220,-2210,-2198,-2185,-2169,-2152,-2133,-2112,-2092,-2071,-2050,
+-2030,-2013,-1997,-1983,-1973,-1965,-1960,-1957,-1956,-1957,-1958,-1960,-1962,-1963,-1962,-1960,-1955,-1948,-1939,-1928,-1916,
+-1902,-1887,-1872,-1857,-1843,-1830,-1820,-1811,-1805,-1801,-1799,-1799,-1801,-1805,-1809,-1814,-1820,-1825,-1830,-1835,-1838,
+-1841,-1843,-1844,-1845,-1845,-1844,-1844,-1843,-1843,-1843,-1843,-1843,-1844,-1845,-1846,-1847,-1848,-1848,-1848,-1848,-1848,
+-1847,-1846,-1844,-1842,-1840,-1837,-1835,-1832,-1829,-1826,-1822,-1818,-1813,-1807,-1800,-1791,-1781,-1770,-1756,-1741,-1725,
+-1706,-1687,-1666,-1644,-1622,-1600,-1578,-1557,-1538,-1520,-1504,-1490,-1479,-1471,-1465,-1463,-1463,-1467,-1473,-1481,-1491,
+-1503,-1516,-1529,-1544,-1558,-1571,-1584,-1595,-1604,-1612,-1618,-1622,-1624,-1623,-1621,-1617,-1612,-1606,-1598,-1590,-1581,
+-1573,-1564,-1555,-1546,-1537,-1529,-1520,-1512,-1504,-1496,-1488,-1481,-1473,-1466,-1460,-1455,-1451,-1448,-1447,-1447,-1449,
+-1453,-1458,-1465,-1472,-1480,-1487,-1494,-1499,-1503,-1504,-1502,-1497,-1488,-1475,-1459,-1439,-1416,-1390,-1361,-1331,-1301,
+-1270,-1239,-1210,-1183,-1157,-1135,-1115,-1098,-1084,-1072,-1064,-1058,-1055,-1053,-1053,-1054,-1057,-1060,-1064,-1069,-1073,
+-1078,-1082,-1086,-1090,-1093,-1095,-1096,-1095,-1094,-1090,-1086,-1080,-1073,-1064,-1055,-1044,-1033,-1022,-1012,-1001,-991,
+-983,-975,-968,-963,-959,-956,-954,-953,-952,-952,-951,-950,-948,-946,-943,-939,-934,-928,-922,-915,-907,
+-899,-891,-883,-875,-866,-858,-849,-841,-831,-822,-812,-802,-791,-780,-769,-757,-746,-734,-723,-712,-702,
+-692,-683,-675,-667,-659,-651,-643,-634,-625,-614,-603,-591,-577,-563,-548,-533,-518,-504,-490,-479,-469,
+-461,-456,-453,-453,-455,-459,-465,-471,-478,-484,-570,-570,-569,-566,-561,-554,-545,-535,-522,-508,-492,
+-476,-459,-442,-426,-410,-394,-380,-366,-354,-342,-331,-320,-310,-300,-290,-279,-268,-256,-244,-232,-219,
+-206,-193,-180,-167,-155,-143,-132,-122,-112,-103,-95,-87,-79,-72,-64,-56,-48,-39,-30,-20,-10,
+0,11,23,35,46,58,69,81,92,102,113,123,133,142,152,161,170,180,189,198,207,
+216,225,234,243,252,261,269,278,286,295,303,312,321,330,339,349,359,369,379,390,401,
+411,422,432,442,452,461,469,477,484,491,497,502,507,512,516,519,523,526,528,531,533,
+534,536,536,536,535,533,531,527,523,517,511,503,495,486,477,467,457,447,438,428,419,
+411,403,397,391,387,384,381,381,381,382,385,388,393,398,405,412,420,428,437,447,457,
+468,480,492,504,517,530,543,556,570,583,596,609,620,632,642,651,659,666,671,675,678,
+680,680,680,679,677,675,672,670,667,665,663,661,660,659,658,658,658,659,660,661,663,
+665,668,671,675,681,687,695,705,716,729,744,761,779,799,820,842,865,888,910,932,952,
+971,988,1002,1013,1021,1026,1027,1025,1020,1012,1002,988,973,956,938,920,901,881,863,845,828,
+811,797,783,770,759,748,737,727,717,707,696,684,672,658,644,628,611,594,576,558,540,
+523,506,490,476,463,453,444,438,433,431,430,432,434,438,442,447,452,457,461,465,468,
+470,472,473,474,475,475,475,476,477,478,480,482,485,487,490,493,495,496,497,497,495,
+493,489,484,478,470,462,453,443,433,423,412,402,392,383,374,365,356,348,340,331,322,
+313,304,294,283,271,259,246,232,218,203,188,172,156,139,123,106,89,72,55,38,22,
+5,-11,-28,-45,-61,-77,-93,-108,-123,-137,-152,-165,-179,-193,-208,-223,-240,-258,-277,-299,-324,
+-351,-381,-414,-450,-488,-529,-572,-616,-661,-707,-752,-796,-838,-878,-916,-951,-983,-1011,-1037,-1060,-1081,
+-1100,-1118,-1136,-1154,-1172,-1192,-1213,-1236,-1261,-1289,-1319,-1351,-1385,-1420,-1455,-1491,-1527,-1563,-1597,-1630,-1661,
+-1690,-1718,-1743,-1767,-1789,-1811,-1831,-1851,-1870,-1890,-1910,-1931,-1952,-1975,-1999,-2023,-2049,-2075,-2102,-2129,-2157,
+-2185,-2212,-2240,-2267,-2294,-2321,-2348,-2374,-2400,-2427,-2454,-2481,-2508,-2536,-2565,-2594,-2624,-2654,-2685,-2716,-2747,
+-2778,-2810,-2840,-2871,-2900,-2929,-2957,-2984,-3010,-3035,-3059,-3082,-3104,-3126,-3147,-3168,-3189,-3210,-3232,-3253,-3276,
+-3298,-3322,-3346,-3370,-3395,-3421,-3447,-3474,-3501,-3528,-3555,-3582,-3609,-3636,-3664,-3690,-3717,-3743,-3769,-3795,-3819,
+-3844,-3867,-3890,-3911,-3932,-3951,-3969,-3985,-4001,-4014,-4027,-4038,-4049,-4058,-4067,-4075,-4083,-4092,-4100,-4110,-4120,
+-4131,-4143,-4156,-4171,-4186,-4203,-4220,-4238,-4256,-4275,-4293,-4312,-4331,-4349,-4367,-4384,-4401,-4419,-4436,-4453,-4471,
+-4489,-4508,-4528,-4549,-4572,-4596,-4621,-4647,-4675,-4703,-4732,-4762,-4791,-4821,-4849,-4877,-4904,-4929,-4952,-4973,-4993,
+-5010,-5026,-5040,-5052,-5064,-5074,-5084,-5094,-5103,-5113,-5123,-5133,-5145,-5156,-5168,-5180,-5192,-5204,-5215,-5225,-5233,
+-5240,-5244,-5247,-5248,-5246,-5242,-5236,-5229,-5220,-5210,-5200,-5189,-5179,-5169,-5161,-5154,-5148,-5144,-5142,-5141,-5142,
+-5144,-5147,-5152,-5157,-5162,-5167,-5172,-5176,-5179,-5181,-5181,-5181,-5178,-5174,-5169,-5163,-5155,-5147,-5138,-5130,-5123,
+-5116,-5112,-5110,-5111,-5116,-5125,-5139,-5158,-5182,-5212,-5246,-5286,-5329,-5376,-5425,-5476,-5526,-5575,-5621,-5664,-5701,
+-5732,-5756,-5772,-5780,-5780,-5772,-5757,-5735,-5707,-5674,-5638,-5600,-5561,-5523,-5485,-5450,-5418,-5388,-5363,-5341,-5323,
+-5307,-5295,-5285,-5276,-5269,-5263,-5257,-5251,-5245,-5240,-5234,-5228,-5223,-5218,-5214,-5211,-5209,-5208,-5209,-5210,-5212,
+-5214,-5217,-5219,-5222,-5223,-5224,-5223,-5222,-5219,-5216,-5212,-5208,-5204,-5200,-5198,-5197,-5198,-5201,-5206,-5213,-5222,
+-5233,-5246,-5259,-5274,-5289,-5303,-5317,-5331,-5343,-5354,-5363,-5372,-5379,-5385,-5390,-5395,-5399,-5404,-5408,-5412,-5417,
+-5421,-5426,-5431,-5435,-5439,-5442,-5444,-5445,-5445,-5444,-5442,-5439,-5435,-5431,-5427,-5423,-5420,-5418,-5416,-5416,-5417,
+-5420,-5423,-5427,-5431,-5436,-5441,-5445,-5448,-5450,-5451,-5451,-5449,-5446,-5442,-5438,-5433,-5428,-5424,-5421,-5418,-5417,
+-5418,-5419,-5422,-5426,-5431,-5436,-5441,-5445,-5449,-5451,-5451,-5448,-5444,-5437,-5428,-5416,-5403,-5389,-5373,-5357,-5341,
+-5325,-5311,-5297,-5286,-5276,-5268,-5263,-5259,-5257,-5257,-5258,-5260,-5262,-5265,-5268,-5272,-5274,-5277,-5279,-5280,-5282,
+-5282,-5283,-5284,-5285,-5286,-5288,-5290,-5293,-5296,-5300,-5304,-5308,-5312,-5315,-5318,-5320,-5321,-5321,-5319,-5315,-5309,
+-5302,-5293,-5282,-5269,-5255,-5239,-5223,-5205,-5188,-5170,-5152,-5135,-5118,-5102,-5087,-5074,-5061,-5050,-5039,-5030,-5022,
+-5014,-5008,-5002,-4997,-4993,-4989,-4986,-4984,-4982,-4981,-4981,-4982,-4983,-4986,-4989,-4993,-4998,-5003,-5008,-5013,-5018,
+-5023,-5027,-5029,-5030,-5029,-5026,-5021,-5014,-5004,-4993,-4979,-4964,-4947,-4929,-4910,-4890,-4870,-4851,-4832,-4813,-4796,
+-4779,-4764,-4749,-4736,-4723,-4711,-4699,-4687,-4674,-4662,-4648,-4633,-4617,-4599,-4580,-4559,-4536,-4513,-4487,-4461,-4434,
+-4406,-4379,-4351,-4324,-4298,-4273,-4249,-4227,-4207,-4189,-4174,-4160,-4148,-4139,-4131,-4125,-4121,-4117,-4114,-4112,-4110,
+-4108,-4105,-4102,-4098,-4093,-4087,-4080,-4073,-4064,-4055,-4045,-4034,-4024,-4014,-4003,-3993,-3984,-3974,-3966,-3957,-3949,
+-3942,-3934,-3926,-3918,-3910,-3901,-3891,-3880,-3868,-3856,-3843,-3829,-3815,-3800,-3786,-3771,-3758,-3745,-3733,-3722,-3713,
+-3705,-3699,-3694,-3691,-3689,-3688,-3688,-3689,-3690,-3690,-3690,-3689,-3687,-3684,-3679,-3672,-3664,-3654,-3642,-3629,-3614,
+-3599,-3583,-3567,-3551,-3535,-3520,-3506,-3492,-3479,-3467,-3455,-3444,-3434,-3423,-3412,-3400,-3387,-3374,-3359,-3343,-3326,
+-3308,-3289,-3269,-3249,-3229,-3209,-3189,-3170,-3152,-3135,-3118,-3102,-3086,-3070,-3054,-3037,-3019,-3000,-2980,-2958,-2934,
+-2909,-2882,-2855,-2827,-2798,-2770,-2743,-2716,-2691,-2667,-2645,-2624,-2605,-2586,-2568,-2550,-2531,-2511,-2490,-2468,-2443,
+-2417,-2389,-2359,-2329,-2298,-2267,-2236,-2207,-2179,-2154,-2131,-2110,-2091,-2074,-2058,-2043,-2029,-2014,-1998,-1980,-1960,
+-1939,-1915,-1890,-1864,-1837,-1812,-1789,-1768,-1753,-1742,-1738,-1741,-1752,-1770,-1796,-1828,-1866,-1909,-1956,-2005,-2054,
+-2103,-2150,-2193,-2233,-2268,-2297,-2322,-2342,-2357,-2368,-2376,-2382,-2385,-2388,-2389,-2391,-2392,-2393,-2394,-2395,-2395,
+-2394,-2391,-2387,-2380,-2371,-2360,-2347,-2332,-2316,-2298,-2281,-2265,-2249,-2236,-2224,-2215,-2210,-2206,-2206,-2207,-2210,
+-2214,-2218,-2221,-2223,-2224,-2221,-2216,-2208,-2197,-2183,-2166,-2147,-2127,-2107,-2086,-2066,-2048,-2031,-2017,-2006,-1997,
+-1991,-1987,-1985,-1984,-1985,-1985,-1986,-1985,-1983,-1980,-1975,-1968,-1959,-1948,-1936,-1923,-1909,-1896,-1882,-1870,-1860,
+-1850,-1843,-1838,-1835,-1834,-1835,-1838,-1841,-1846,-1852,-1858,-1864,-1870,-1876,-1881,-1885,-1888,-1891,-1893,-1895,-1896,
+-1897,-1898,-1899,-1899,-1900,-1902,-1903,-1905,-1907,-1910,-1912,-1915,-1918,-1921,-1923,-1926,-1928,-1930,-1931,-1931,-1931,
+-1929,-1926,-1922,-1917,-1910,-1901,-1889,-1877,-1861,-1844,-1825,-1804,-1781,-1757,-1732,-1705,-1679,-1652,-1625,-1600,-1575,
+-1552,-1532,-1513,-1498,-1485,-1475,-1469,-1466,-1466,-1469,-1474,-1483,-1493,-1506,-1519,-1534,-1550,-1566,-1582,-1597,-1611,
+-1623,-1635,-1644,-1651,-1656,-1659,-1660,-1658,-1655,-1650,-1643,-1636,-1627,-1617,-1607,-1597,-1586,-1577,-1568,-1560,-1554,
+-1549,-1546,-1544,-1545,-1547,-1552,-1559,-1568,-1579,-1591,-1605,-1620,-1635,-1651,-1666,-1680,-1692,-1702,-1709,-1713,-1713,
+-1709,-1700,-1688,-1670,-1649,-1624,-1595,-1564,-1530,-1495,-1459,-1423,-1387,-1353,-1320,-1290,-1262,-1237,-1215,-1197,-1181,
+-1168,-1158,-1151,-1146,-1142,-1141,-1142,-1143,-1146,-1150,-1155,-1160,-1166,-1172,-1178,-1185,-1191,-1196,-1201,-1205,-1208,
+-1209,-1209,-1207,-1203,-1197,-1190,-1181,-1171,-1160,-1148,-1136,-1124,-1112,-1100,-1090,-1080,-1072,-1066,-1060,-1056,-1053,
+-1051,-1050,-1049,-1049,-1049,-1048,-1048,-1046,-1044,-1042,-1038,-1034,-1029,-1023,-1017,-1010,-1002,-995,-986,-977,-968,
+-958,-948,-938,-927,-916,-904,-893,-881,-869,-858,-847,-836,-825,-814,-804,-794,-784,-775,-765,-754,-744,
+-732,-721,-708,-695,-682,-668,-654,-640,-627,-614,-602,-592,-583,-576,-570,-567,-564,-564,-564,-566,-567,
+-569,-570,-640,-638,-634,-629,-623,-615,-606,-595,-583,-569,-555,-540,-524,-509,-493,-478,-464,-450,-437,
+-424,-413,-401,-391,-380,-370,-359,-348,-338,-326,-314,-302,-290,-277,-265,-252,-240,-228,-216,-205,-194,
+-185,-175,-166,-158,-150,-142,-134,-126,-118,-110,-101,-91,-82,-71,-61,-50,-39,-27,-16,-5,6,
+17,27,38,48,57,66,75,84,92,101,109,117,125,133,141,150,158,167,175,185,194,
+203,213,223,233,243,254,265,276,287,298,309,320,331,342,353,363,373,383,392,401,409,
+417,424,431,437,443,448,453,457,461,465,468,470,472,474,475,475,474,472,469,465,460,
+454,447,439,430,421,410,400,389,378,367,356,346,337,329,322,315,311,307,305,304,304,
+306,309,313,318,324,331,339,347,357,367,378,389,401,414,428,442,456,471,486,501,516,
+531,546,560,573,585,596,605,614,620,625,629,631,631,631,630,628,625,623,620,618,616,
+615,614,614,615,616,618,620,622,624,627,629,631,632,634,635,637,639,642,645,651,657,
+666,677,691,707,725,746,769,794,820,847,874,901,927,951,973,992,1007,1019,1026,1029,1028,
+1022,1013,1000,985,966,946,925,902,880,859,838,819,802,786,772,760,750,740,732,724,716,
+708,699,689,678,664,649,632,614,594,573,552,530,508,487,467,449,433,420,409,401,396,
+393,393,395,399,405,411,418,426,433,440,446,452,456,460,463,465,467,469,470,471,473,
+475,477,479,482,486,489,492,495,497,499,499,499,497,493,489,483,476,468,460,451,441,
+431,422,412,403,395,386,379,371,364,357,349,342,333,325,315,305,294,281,268,254,240,
+225,209,193,176,160,143,127,110,93,77,60,44,27,10,-6,-23,-39,-56,-73,-90,-106,
+-123,-139,-155,-171,-188,-204,-221,-238,-257,-277,-298,-321,-347,-375,-405,-438,-473,-510,-549,-590,-633,
+-675,-718,-761,-802,-843,-881,-916,-949,-980,-1008,-1033,-1056,-1077,-1097,-1116,-1134,-1153,-1172,-1192,-1214,-1238,
+-1264,-1292,-1322,-1354,-1387,-1421,-1456,-1491,-1526,-1560,-1593,-1625,-1655,-1684,-1711,-1737,-1761,-1784,-1807,-1828,-1849,
+-1871,-1892,-1914,-1937,-1960,-1984,-2009,-2034,-2060,-2086,-2112,-2139,-2165,-2191,-2217,-2242,-2267,-2291,-2315,-2340,-2364,
+-2389,-2414,-2440,-2467,-2495,-2524,-2554,-2584,-2616,-2648,-2681,-2714,-2746,-2779,-2811,-2842,-2872,-2901,-2929,-2956,-2982,
+-3006,-3029,-3051,-3072,-3093,-3113,-3133,-3153,-3173,-3194,-3215,-3236,-3258,-3280,-3303,-3327,-3350,-3375,-3400,-3425,-3450,
+-3476,-3502,-3528,-3554,-3581,-3607,-3634,-3661,-3688,-3714,-3741,-3767,-3793,-3818,-3842,-3865,-3888,-3909,-3928,-3946,-3963,
+-3978,-3992,-4004,-4015,-4025,-4034,-4042,-4050,-4059,-4067,-4076,-4086,-4097,-4108,-4121,-4135,-4149,-4165,-4182,-4199,-4216,
+-4234,-4252,-4270,-4287,-4304,-4321,-4337,-4353,-4368,-4384,-4399,-4415,-4431,-4449,-4467,-4486,-4507,-4529,-4553,-4579,-4605,
+-4633,-4662,-4692,-4723,-4753,-4784,-4813,-4842,-4870,-4896,-4920,-4943,-4963,-4982,-4998,-5013,-5026,-5037,-5047,-5057,-5065,
+-5073,-5081,-5089,-5097,-5105,-5112,-5120,-5128,-5136,-5143,-5149,-5155,-5159,-5162,-5163,-5162,-5160,-5156,-5150,-5142,-5133,
+-5123,-5113,-5102,-5090,-5079,-5069,-5060,-5052,-5046,-5041,-5038,-5037,-5038,-5040,-5044,-5049,-5055,-5061,-5067,-5073,-5078,
+-5083,-5086,-5088,-5088,-5087,-5084,-5080,-5075,-5069,-5062,-5056,-5051,-5048,-5046,-5048,-5053,-5062,-5076,-5095,-5119,-5149,
+-5184,-5225,-5269,-5318,-5369,-5422,-5476,-5529,-5580,-5627,-5671,-5708,-5739,-5763,-5779,-5786,-5785,-5776,-5760,-5737,-5709,
+-5675,-5639,-5600,-5560,-5520,-5481,-5445,-5411,-5380,-5353,-5330,-5310,-5293,-5279,-5267,-5257,-5249,-5242,-5234,-5228,-5220,
+-5213,-5206,-5198,-5191,-5184,-5177,-5171,-5166,-5163,-5160,-5159,-5159,-5160,-5162,-5165,-5167,-5170,-5173,-5174,-5176,-5176,
+-5176,-5175,-5173,-5171,-5169,-5168,-5167,-5167,-5168,-5171,-5176,-5182,-5190,-5199,-5210,-5222,-5235,-5248,-5262,-5275,-5287,
+-5299,-5310,-5320,-5328,-5336,-5342,-5348,-5353,-5357,-5361,-5364,-5367,-5371,-5373,-5376,-5379,-5381,-5382,-5383,-5384,-5383,
+-5382,-5380,-5378,-5375,-5372,-5368,-5365,-5362,-5360,-5358,-5358,-5358,-5359,-5362,-5365,-5368,-5372,-5376,-5380,-5384,-5387,
+-5389,-5390,-5390,-5389,-5387,-5384,-5380,-5376,-5372,-5368,-5365,-5362,-5361,-5360,-5361,-5363,-5366,-5369,-5373,-5377,-5381,
+-5384,-5386,-5387,-5387,-5385,-5382,-5377,-5370,-5362,-5352,-5342,-5331,-5320,-5308,-5298,-5288,-5278,-5270,-5263,-5257,-5253,
+-5249,-5246,-5245,-5244,-5244,-5244,-5245,-5246,-5247,-5249,-5250,-5253,-5255,-5258,-5262,-5266,-5271,-5276,-5282,-5289,-5296,
+-5302,-5309,-5315,-5321,-5326,-5329,-5331,-5331,-5329,-5325,-5319,-5310,-5300,-5288,-5274,-5258,-5242,-5225,-5207,-5189,-5171,
+-5153,-5136,-5120,-5105,-5091,-5078,-5066,-5055,-5045,-5035,-5027,-5018,-5010,-5002,-4995,-4988,-4981,-4974,-4967,-4961,-4955,
+-4950,-4946,-4943,-4941,-4940,-4940,-4941,-4943,-4946,-4949,-4953,-4957,-4961,-4964,-4966,-4967,-4967,-4965,-4961,-4956,-4949,
+-4940,-4929,-4917,-4904,-4890,-4875,-4860,-4845,-4831,-4817,-4803,-4791,-4779,-4769,-4758,-4749,-4739,-4730,-4720,-4710,-4699,
+-4686,-4672,-4656,-4638,-4618,-4596,-4572,-4547,-4519,-4490,-4461,-4430,-4399,-4369,-4339,-4310,-4282,-4256,-4231,-4209,-4189,
+-4172,-4156,-4143,-4132,-4123,-4116,-4110,-4106,-4102,-4099,-4097,-4095,-4093,-4090,-4087,-4084,-4080,-4076,-4070,-4065,-4058,
+-4051,-4044,-4037,-4029,-4022,-4014,-4007,-3999,-3992,-3985,-3978,-3971,-3965,-3958,-3951,-3944,-3937,-3929,-3921,-3912,-3903,
+-3893,-3883,-3872,-3861,-3850,-3839,-3829,-3819,-3809,-3800,-3792,-3785,-3779,-3775,-3771,-3769,-3768,-3767,-3768,-3769,-3770,
+-3771,-3772,-3772,-3772,-3770,-3766,-3761,-3754,-3746,-3736,-3724,-3710,-3695,-3679,-3661,-3643,-3624,-3605,-3586,-3567,-3548,
+-3530,-3512,-3494,-3477,-3460,-3442,-3425,-3408,-3390,-3372,-3354,-3336,-3317,-3297,-3278,-3259,-3240,-3222,-3203,-3186,-3169,
+-3153,-3137,-3121,-3106,-3091,-3075,-3058,-3040,-3021,-3001,-2978,-2954,-2928,-2901,-2872,-2842,-2811,-2780,-2750,-2720,-2691,
+-2663,-2637,-2613,-2591,-2570,-2551,-2534,-2517,-2500,-2484,-2467,-2450,-2431,-2411,-2389,-2367,-2342,-2317,-2291,-2265,-2239,
+-2214,-2189,-2165,-2143,-2123,-2104,-2087,-2071,-2056,-2043,-2029,-2016,-2003,-1990,-1976,-1961,-1947,-1932,-1917,-1903,-1890,
+-1878,-1868,-1861,-1857,-1857,-1859,-1866,-1876,-1889,-1906,-1926,-1948,-1973,-1999,-2026,-2055,-2084,-2113,-2142,-2171,-2200,
+-2228,-2256,-2283,-2309,-2335,-2359,-2382,-2403,-2421,-2438,-2451,-2460,-2466,-2467,-2465,-2458,-2446,-2431,-2412,-2391,-2367,
+-2343,-2318,-2294,-2271,-2250,-2233,-2219,-2209,-2203,-2201,-2202,-2207,-2213,-2222,-2230,-2239,-2247,-2252,-2255,-2255,-2252,
+-2245,-2235,-2221,-2205,-2186,-2166,-2146,-2125,-2105,-2086,-2069,-2054,-2042,-2032,-2025,-2021,-2018,-2017,-2017,-2018,-2018,
+-2018,-2017,-2014,-2010,-2005,-1997,-1988,-1978,-1967,-1955,-1942,-1930,-1919,-1908,-1899,-1892,-1886,-1882,-1881,-1881,-1883,
+-1886,-1891,-1897,-1904,-1911,-1918,-1925,-1932,-1938,-1944,-1949,-1953,-1957,-1961,-1963,-1966,-1968,-1970,-1972,-1975,-1977,
+-1980,-1983,-1986,-1990,-1994,-1998,-2002,-2006,-2009,-2013,-2015,-2016,-2016,-2015,-2012,-2006,-1999,-1989,-1977,-1962,-1944,
+-1924,-1901,-1877,-1850,-1821,-1792,-1761,-1730,-1699,-1669,-1640,-1613,-1587,-1564,-1544,-1526,-1512,-1502,-1494,-1490,-1490,
+-1492,-1497,-1505,-1516,-1528,-1541,-1556,-1572,-1588,-1604,-1620,-1635,-1649,-1662,-1673,-1683,-1691,-1697,-1701,-1703,-1703,
+-1701,-1696,-1691,-1683,-1674,-1665,-1654,-1643,-1632,-1622,-1612,-1604,-1597,-1592,-1590,-1590,-1594,-1600,-1609,-1621,-1636,
+-1653,-1672,-1693,-1714,-1736,-1757,-1778,-1796,-1811,-1823,-1831,-1835,-1833,-1827,-1816,-1800,-1780,-1755,-1726,-1695,-1662,
+-1627,-1591,-1555,-1521,-1487,-1456,-1427,-1401,-1378,-1358,-1341,-1327,-1316,-1307,-1300,-1295,-1291,-1289,-1287,-1286,-1286,
+-1286,-1286,-1287,-1288,-1289,-1291,-1292,-1294,-1296,-1298,-1300,-1301,-1302,-1302,-1302,-1300,-1297,-1293,-1287,-1280,-1272,
+-1263,-1253,-1242,-1231,-1220,-1208,-1197,-1187,-1177,-1169,-1161,-1155,-1150,-1145,-1142,-1140,-1138,-1137,-1136,-1135,-1135,
+-1134,-1132,-1130,-1128,-1125,-1121,-1117,-1111,-1105,-1098,-1091,-1083,-1074,-1064,-1054,-1044,-1033,-1021,-1010,-998,-986,
+-974,-962,-950,-938,-927,-915,-904,-892,-881,-869,-858,-846,-833,-820,-807,-794,-780,-766,-752,-738,-725,
+-712,-700,-688,-678,-670,-662,-656,-652,-648,-646,-644,-643,-643,-642,-640,-680,-678,-674,-670,-664,-657,
+-649,-639,-628,-616,-603,-589,-574,-560,-545,-530,-515,-501,-488,-475,-463,-451,-440,-430,-419,-409,-399,
+-389,-378,-368,-357,-346,-334,-323,-311,-299,-287,-275,-264,-253,-242,-232,-222,-213,-204,-195,-187,-178,
+-170,-162,-154,-146,-138,-129,-120,-111,-101,-92,-81,-71,-61,-50,-39,-29,-18,-8,2,12,22,
+32,41,51,60,69,77,86,94,103,111,120,128,137,145,154,164,173,183,193,203,214,
+225,236,247,259,270,281,292,303,314,324,334,343,352,361,369,376,383,389,395,401,405,
+410,414,417,420,422,423,424,423,422,420,416,412,406,400,392,384,375,365,354,344,333,
+322,311,302,292,284,277,271,266,262,260,259,260,262,265,269,274,280,287,294,303,312,
+322,332,343,355,367,380,394,408,422,437,452,467,482,497,511,524,537,548,557,565,571,
+576,579,580,580,578,576,573,570,567,564,562,560,560,560,561,564,567,571,576,581,586,
+591,595,599,602,604,605,606,607,607,608,609,612,616,622,631,642,656,673,693,716,741,
+768,796,825,854,882,908,932,952,969,982,990,993,992,986,976,962,945,926,904,882,860,
+837,816,797,779,764,751,740,731,724,719,714,709,705,699,692,683,673,660,645,627,608,
+587,565,542,519,497,476,456,438,423,411,402,396,393,393,395,399,405,413,420,429,437,
+444,451,457,462,466,469,471,473,475,476,478,480,483,487,491,496,502,508,514,520,526,
+530,534,536,537,535,532,527,520,512,502,491,479,466,453,440,428,416,404,393,383,373,
+364,356,347,339,330,321,311,301,290,277,264,251,236,221,205,188,172,155,138,121,104,
+88,71,55,38,22,6,-9,-25,-42,-58,-74,-91,-108,-125,-142,-160,-177,-196,-214,-234,-254,
+-275,-298,-321,-347,-374,-402,-433,-465,-499,-535,-572,-610,-649,-689,-728,-767,-805,-842,-877,-911,-942,
+-972,-999,-1025,-1049,-1072,-1093,-1114,-1134,-1155,-1176,-1198,-1220,-1244,-1269,-1296,-1324,-1353,-1383,-1414,-1446,-1477,
+-1509,-1540,-1570,-1600,-1629,-1657,-1684,-1710,-1736,-1761,-1785,-1809,-1833,-1857,-1882,-1907,-1932,-1957,-1983,-2009,-2035,
+-2061,-2087,-2112,-2138,-2162,-2187,-2211,-2234,-2258,-2281,-2304,-2328,-2352,-2377,-2402,-2429,-2456,-2485,-2514,-2545,-2576,
+-2608,-2641,-2673,-2706,-2738,-2770,-2800,-2830,-2859,-2886,-2912,-2936,-2960,-2982,-3004,-3024,-3044,-3064,-3084,-3103,-3123,
+-3143,-3163,-3184,-3205,-3227,-3249,-3271,-3294,-3317,-3340,-3364,-3387,-3411,-3435,-3459,-3483,-3508,-3533,-3558,-3584,-3611,
+-3637,-3664,-3691,-3718,-3745,-3772,-3798,-3823,-3847,-3869,-3891,-3910,-3928,-3944,-3959,-3971,-3983,-3993,-4001,-4009,-4017,
+-4024,-4032,-4040,-4048,-4058,-4068,-4079,-4092,-4106,-4121,-4137,-4153,-4171,-4188,-4206,-4224,-4242,-4260,-4277,-4294,-4311,
+-4327,-4343,-4360,-4376,-4393,-4410,-4428,-4447,-4467,-4488,-4511,-4535,-4560,-4586,-4614,-4642,-4671,-4700,-4729,-4758,-4787,
+-4815,-4841,-4866,-4890,-4912,-4932,-4950,-4966,-4981,-4994,-5005,-5015,-5023,-5031,-5037,-5043,-5049,-5053,-5058,-5062,-5066,
+-5069,-5072,-5075,-5077,-5078,-5078,-5078,-5077,-5075,-5071,-5067,-5062,-5056,-5049,-5042,-5035,-5028,-5021,-5014,-5008,-5003,
+-4999,-4996,-4995,-4995,-4997,-5000,-5004,-5010,-5016,-5023,-5030,-5037,-5044,-5050,-5055,-5059,-5062,-5064,-5063,-5062,-5059,
+-5056,-5052,-5048,-5044,-5042,-5041,-5043,-5048,-5056,-5069,-5086,-5107,-5134,-5165,-5201,-5240,-5283,-5328,-5375,-5421,-5468,
+-5512,-5553,-5589,-5621,-5647,-5666,-5678,-5683,-5681,-5672,-5656,-5635,-5609,-5579,-5546,-5512,-5477,-5442,-5408,-5375,-5346,
+-5318,-5294,-5273,-5255,-5240,-5227,-5216,-5206,-5198,-5190,-5183,-5177,-5170,-5163,-5156,-5149,-5142,-5135,-5129,-5124,-5120,
+-5117,-5114,-5114,-5114,-5115,-5118,-5121,-5124,-5128,-5131,-5135,-5138,-5140,-5142,-5143,-5144,-5144,-5145,-5145,-5146,-5147,
+-5149,-5152,-5156,-5161,-5168,-5175,-5184,-5194,-5204,-5215,-5226,-5238,-5249,-5259,-5269,-5278,-5286,-5293,-5300,-5305,-5310,
+-5314,-5317,-5319,-5322,-5323,-5324,-5325,-5326,-5326,-5326,-5325,-5324,-5322,-5321,-5318,-5316,-5313,-5311,-5308,-5306,-5304,
+-5303,-5302,-5302,-5303,-5304,-5307,-5309,-5312,-5316,-5319,-5322,-5325,-5327,-5329,-5329,-5329,-5328,-5327,-5325,-5322,-5319,
+-5316,-5313,-5310,-5308,-5307,-5306,-5306,-5307,-5309,-5312,-5315,-5318,-5322,-5325,-5328,-5330,-5332,-5333,-5332,-5331,-5329,
+-5326,-5322,-5317,-5311,-5306,-5300,-5294,-5287,-5281,-5276,-5270,-5265,-5261,-5256,-5252,-5248,-5245,-5241,-5238,-5235,-5233,
+-5231,-5230,-5229,-5229,-5230,-5232,-5235,-5239,-5244,-5249,-5256,-5263,-5271,-5279,-5286,-5293,-5299,-5304,-5307,-5309,-5308,
+-5306,-5301,-5294,-5285,-5275,-5262,-5248,-5233,-5218,-5202,-5186,-5170,-5155,-5140,-5127,-5115,-5103,-5093,-5084,-5076,-5068,
+-5061,-5054,-5047,-5040,-5032,-5025,-5016,-5008,-4998,-4989,-4979,-4969,-4959,-4950,-4942,-4934,-4927,-4921,-4916,-4913,-4910,
+-4909,-4908,-4908,-4907,-4907,-4907,-4906,-4904,-4901,-4897,-4891,-4884,-4876,-4866,-4856,-4844,-4832,-4820,-4808,-4796,-4784,
+-4774,-4764,-4755,-4747,-4740,-4733,-4728,-4722,-4716,-4710,-4703,-4694,-4684,-4673,-4658,-4642,-4623,-4602,-4578,-4552,-4523,
+-4494,-4463,-4431,-4398,-4366,-4334,-4304,-4275,-4247,-4222,-4199,-4178,-4160,-4144,-4131,-4119,-4110,-4103,-4097,-4093,-4090,
+-4087,-4085,-4083,-4081,-4079,-4078,-4075,-4073,-4070,-4066,-4063,-4059,-4054,-4049,-4044,-4039,-4034,-4028,-4022,-4015,-4009,
+-4002,-3994,-3987,-3978,-3970,-3961,-3951,-3941,-3931,-3921,-3910,-3899,-3888,-3878,-3868,-3858,-3848,-3840,-3832,-3824,-3818,
+-3813,-3809,-3806,-3803,-3802,-3802,-3802,-3803,-3805,-3807,-3809,-3811,-3813,-3814,-3814,-3814,-3813,-3810,-3806,-3801,-3794,
+-3786,-3776,-3765,-3752,-3737,-3722,-3705,-3688,-3670,-3650,-3631,-3611,-3590,-3569,-3548,-3527,-3505,-3484,-3462,-3440,-3418,
+-3395,-3373,-3351,-3329,-3307,-3285,-3264,-3243,-3224,-3204,-3186,-3169,-3152,-3136,-3120,-3104,-3089,-3073,-3056,-3039,-3020,
+-3000,-2979,-2955,-2931,-2904,-2876,-2848,-2818,-2788,-2757,-2727,-2698,-2671,-2644,-2620,-2597,-2576,-2557,-2540,-2524,-2510,
+-2496,-2483,-2470,-2456,-2441,-2425,-2409,-2390,-2371,-2350,-2328,-2306,-2283,-2260,-2238,-2216,-2196,-2177,-2159,-2143,-2130,
+-2118,-2107,-2098,-2090,-2083,-2077,-2071,-2066,-2060,-2053,-2047,-2040,-2032,-2025,-2017,-2009,-2002,-1996,-1991,-1987,-1984,
+-1984,-1985,-1989,-1996,-2004,-2016,-2030,-2047,-2067,-2089,-2113,-2139,-2168,-2197,-2228,-2260,-2291,-2323,-2353,-2382,-2409,
+-2433,-2454,-2471,-2483,-2492,-2495,-2494,-2489,-2479,-2466,-2449,-2429,-2408,-2385,-2363,-2341,-2320,-2302,-2286,-2273,-2263,
+-2257,-2254,-2253,-2256,-2260,-2265,-2271,-2277,-2282,-2286,-2287,-2286,-2283,-2276,-2267,-2255,-2241,-2225,-2207,-2189,-2171,
+-2153,-2136,-2120,-2106,-2094,-2084,-2076,-2070,-2066,-2063,-2062,-2061,-2060,-2060,-2059,-2057,-2054,-2049,-2044,-2037,-2029,
+-2019,-2010,-1999,-1989,-1979,-1969,-1961,-1953,-1948,-1943,-1941,-1940,-1942,-1945,-1949,-1955,-1962,-1970,-1979,-1988,-1997,
+-2006,-2015,-2023,-2031,-2038,-2045,-2051,-2056,-2060,-2063,-2067,-2069,-2072,-2074,-2076,-2078,-2080,-2082,-2084,-2086,-2087,
+-2089,-2090,-2090,-2089,-2087,-2084,-2079,-2072,-2063,-2051,-2037,-2021,-2002,-1980,-1956,-1930,-1902,-1872,-1842,-1811,-1780,
+-1750,-1720,-1692,-1666,-1642,-1622,-1604,-1589,-1578,-1570,-1566,-1565,-1566,-1571,-1578,-1587,-1597,-1609,-1622,-1636,-1650,
+-1663,-1677,-1689,-1701,-1712,-1722,-1731,-1738,-1744,-1748,-1750,-1751,-1750,-1748,-1744,-1738,-1732,-1723,-1714,-1704,-1694,
+-1683,-1673,-1663,-1654,-1647,-1641,-1638,-1637,-1639,-1644,-1652,-1663,-1677,-1694,-1712,-1732,-1754,-1775,-1796,-1816,-1834,
+-1849,-1860,-1868,-1871,-1870,-1864,-1853,-1837,-1817,-1794,-1767,-1738,-1708,-1677,-1645,-1614,-1585,-1558,-1534,-1512,-1493,
+-1478,-1465,-1456,-1449,-1444,-1441,-1439,-1438,-1438,-1437,-1437,-1435,-1433,-1431,-1427,-1423,-1418,-1412,-1406,-1400,-1393,
+-1387,-1381,-1375,-1369,-1364,-1359,-1353,-1348,-1343,-1338,-1332,-1325,-1319,-1311,-1303,-1295,-1286,-1277,-1267,-1257,-1247,
+-1238,-1229,-1220,-1211,-1204,-1197,-1190,-1185,-1180,-1176,-1172,-1168,-1165,-1162,-1159,-1156,-1153,-1149,-1145,-1140,-1135,
+-1129,-1122,-1114,-1106,-1097,-1088,-1078,-1067,-1056,-1045,-1034,-1022,-1010,-999,-987,-976,-965,-955,-944,-934,-923,
+-913,-902,-892,-881,-869,-858,-845,-833,-820,-807,-794,-781,-768,-756,-744,-734,-724,-715,-707,-701,-696,
+-692,-689,-687,-685,-683,-682,-680,-708,-706,-704,-701,-697,-692,-685,-678,-668,-658,-646,-634,-620,-606,
+-592,-577,-562,-548,-534,-521,-509,-497,-485,-475,-465,-455,-446,-437,-428,-419,-409,-400,-390,-380,-370,
+-359,-348,-336,-325,-314,-303,-292,-281,-271,-262,-252,-244,-236,-228,-221,-214,-208,-201,-194,-188,-181,
+-173,-165,-157,-148,-138,-128,-117,-105,-93,-81,-68,-55,-42,-30,-17,-5,7,18,29,40,50,
+59,68,76,85,92,100,108,115,123,131,139,148,157,166,176,187,197,208,220,231,242,
+254,265,276,287,298,308,318,327,336,344,351,358,365,371,376,380,384,387,389,390,390,
+389,386,383,379,373,366,358,350,340,330,319,308,297,287,276,266,257,249,243,237,233,
+230,228,228,229,231,235,239,245,251,258,265,274,282,292,302,312,323,334,346,359,372,
+385,399,413,426,440,453,465,476,487,496,503,510,514,518,519,520,519,517,515,512,510,
+507,506,505,505,506,508,512,516,522,527,534,540,546,551,556,559,562,563,563,562,561,
+559,558,557,557,559,563,570,579,592,608,627,649,673,700,729,758,787,816,843,868,890,
+908,921,931,936,936,931,923,911,896,878,859,839,819,800,782,766,751,739,729,722,716,
+712,708,706,703,699,695,688,680,669,656,640,622,602,581,559,536,513,492,471,453,437,
+425,415,408,404,404,405,410,416,423,431,440,448,456,463,470,475,479,482,484,486,488,
+490,492,495,500,505,511,519,527,537,547,557,567,576,584,590,595,597,596,593,587,578,
+567,554,538,521,503,485,466,447,429,412,395,380,366,353,341,330,320,310,300,290,280,
+269,258,246,234,220,206,191,176,160,143,127,110,94,78,61,46,30,14,0,-16,-31,
+-47,-63,-79,-95,-112,-130,-148,-166,-186,-206,-228,-250,-273,-297,-323,-349,-377,-406,-436,-467,-499,
+-532,-566,-601,-636,-671,-707,-742,-777,-811,-844,-877,-908,-939,-968,-996,-1022,-1048,-1073,-1097,-1121,-1144,
+-1167,-1191,-1215,-1239,-1263,-1289,-1315,-1341,-1368,-1395,-1423,-1450,-1478,-1506,-1533,-1560,-1587,-1614,-1640,-1666,-1692,
+-1718,-1743,-1768,-1794,-1819,-1845,-1871,-1897,-1922,-1948,-1974,-2000,-2026,-2051,-2076,-2101,-2125,-2149,-2173,-2197,-2220,
+-2244,-2268,-2293,-2318,-2344,-2371,-2399,-2428,-2458,-2489,-2521,-2553,-2586,-2619,-2651,-2684,-2716,-2747,-2776,-2805,-2832,
+-2858,-2883,-2906,-2928,-2950,-2970,-2990,-3009,-3028,-3047,-3066,-3085,-3104,-3124,-3144,-3165,-3186,-3207,-3228,-3250,-3271,
+-3292,-3313,-3334,-3354,-3375,-3396,-3417,-3438,-3459,-3481,-3504,-3527,-3551,-3576,-3602,-3629,-3656,-3683,-3710,-3737,-3764,
+-3790,-3815,-3838,-3860,-3880,-3898,-3915,-3929,-3941,-3952,-3962,-3970,-3978,-3984,-3991,-3998,-4006,-4014,-4023,-4033,-4045,
+-4058,-4072,-4088,-4105,-4123,-4141,-4161,-4180,-4200,-4219,-4239,-4258,-4276,-4294,-4312,-4329,-4346,-4362,-4379,-4396,-4413,
+-4431,-4449,-4469,-4489,-4511,-4534,-4558,-4583,-4609,-4636,-4663,-4691,-4718,-4746,-4773,-4799,-4824,-4847,-4869,-4889,-4908,
+-4924,-4938,-4950,-4960,-4969,-4975,-4980,-4984,-4986,-4988,-4989,-4989,-4989,-4989,-4989,-4990,-4990,-4990,-4991,-4992,-4993,
+-4994,-4995,-4996,-4996,-4997,-4997,-4997,-4997,-4997,-4996,-4995,-4995,-4995,-4995,-4995,-4997,-4999,-5002,-5007,-5012,-5018,
+-5025,-5033,-5041,-5050,-5058,-5067,-5074,-5081,-5086,-5090,-5093,-5093,-5092,-5089,-5085,-5080,-5074,-5068,-5063,-5058,-5055,
+-5054,-5055,-5060,-5068,-5080,-5096,-5116,-5140,-5167,-5196,-5228,-5261,-5295,-5329,-5361,-5391,-5418,-5441,-5460,-5473,-5482,
+-5485,-5483,-5476,-5464,-5448,-5429,-5407,-5382,-5357,-5331,-5305,-5281,-5257,-5235,-5216,-5198,-5183,-5170,-5159,-5149,-5141,
+-5135,-5129,-5124,-5119,-5115,-5110,-5106,-5102,-5098,-5094,-5091,-5088,-5086,-5085,-5084,-5084,-5085,-5087,-5089,-5093,-5096,
+-5100,-5105,-5109,-5113,-5117,-5121,-5124,-5127,-5130,-5133,-5135,-5138,-5140,-5143,-5147,-5151,-5155,-5161,-5166,-5173,-5179,
+-5186,-5194,-5201,-5209,-5216,-5223,-5230,-5236,-5241,-5246,-5251,-5254,-5258,-5260,-5263,-5264,-5266,-5267,-5268,-5268,-5269,
+-5269,-5269,-5269,-5268,-5268,-5267,-5266,-5265,-5264,-5263,-5263,-5262,-5261,-5261,-5261,-5262,-5262,-5263,-5265,-5266,-5267,
+-5269,-5270,-5271,-5272,-5272,-5272,-5271,-5269,-5267,-5265,-5263,-5260,-5257,-5254,-5251,-5249,-5247,-5245,-5245,-5245,-5245,
+-5246,-5248,-5250,-5253,-5255,-5258,-5261,-5263,-5266,-5268,-5269,-5270,-5271,-5271,-5271,-5270,-5270,-5269,-5267,-5266,-5264,
+-5263,-5261,-5259,-5257,-5255,-5253,-5250,-5247,-5244,-5241,-5238,-5234,-5231,-5227,-5224,-5221,-5219,-5218,-5217,-5217,-5218,
+-5220,-5223,-5226,-5231,-5235,-5240,-5245,-5250,-5254,-5258,-5260,-5261,-5261,-5259,-5256,-5252,-5246,-5239,-5230,-5221,-5211,
+-5202,-5192,-5182,-5172,-5164,-5156,-5148,-5142,-5136,-5131,-5126,-5121,-5117,-5112,-5106,-5100,-5093,-5085,-5076,-5066,-5055,
+-5042,-5029,-5015,-5001,-4986,-4972,-4958,-4945,-4933,-4922,-4911,-4902,-4894,-4887,-4882,-4876,-4871,-4867,-4862,-4857,-4852,
+-4846,-4839,-4831,-4822,-4812,-4801,-4790,-4778,-4766,-4753,-4741,-4730,-4719,-4709,-4701,-4693,-4686,-4680,-4675,-4670,-4665,
+-4660,-4655,-4648,-4641,-4631,-4620,-4607,-4591,-4572,-4552,-4529,-4504,-4477,-4448,-4419,-4389,-4359,-4329,-4300,-4272,-4245,
+-4220,-4198,-4177,-4159,-4143,-4130,-4118,-4109,-4101,-4095,-4090,-4086,-4083,-4080,-4078,-4076,-4074,-4072,-4070,-4068,-4065,
+-4062,-4059,-4056,-4053,-4049,-4045,-4041,-4037,-4032,-4027,-4021,-4014,-4007,-3999,-3990,-3981,-3971,-3959,-3948,-3935,-3923,
+-3910,-3897,-3884,-3871,-3860,-3848,-3838,-3829,-3821,-3815,-3810,-3806,-3804,-3803,-3803,-3805,-3807,-3811,-3814,-3819,-3823,
+-3827,-3831,-3835,-3838,-3841,-3842,-3843,-3842,-3840,-3837,-3833,-3827,-3820,-3811,-3802,-3791,-3779,-3765,-3750,-3734,-3718,
+-3700,-3681,-3661,-3640,-3618,-3596,-3572,-3549,-3524,-3499,-3474,-3449,-3423,-3397,-3372,-3347,-3322,-3297,-3274,-3251,-3229,
+-3209,-3188,-3169,-3151,-3133,-3115,-3098,-3081,-3063,-3045,-3027,-3007,-2986,-2964,-2941,-2917,-2891,-2864,-2837,-2809,-2780,
+-2752,-2725,-2698,-2672,-2648,-2626,-2605,-2587,-2570,-2555,-2541,-2529,-2518,-2508,-2498,-2488,-2477,-2466,-2454,-2440,-2426,
+-2411,-2394,-2377,-2360,-2342,-2325,-2308,-2293,-2279,-2267,-2257,-2249,-2243,-2240,-2239,-2239,-2242,-2245,-2250,-2255,-2260,
+-2264,-2268,-2271,-2273,-2273,-2272,-2269,-2265,-2259,-2252,-2245,-2237,-2229,-2222,-2215,-2209,-2205,-2203,-2202,-2204,-2208,
+-2215,-2224,-2236,-2250,-2266,-2284,-2303,-2324,-2345,-2366,-2388,-2408,-2427,-2444,-2460,-2473,-2483,-2490,-2494,-2495,-2494,
+-2489,-2482,-2472,-2461,-2449,-2435,-2421,-2408,-2394,-2382,-2371,-2361,-2353,-2346,-2341,-2337,-2335,-2333,-2332,-2331,-2330,
+-2329,-2326,-2323,-2318,-2311,-2303,-2294,-2283,-2270,-2257,-2243,-2228,-2214,-2199,-2185,-2172,-2160,-2148,-2138,-2130,-2122,
+-2116,-2111,-2107,-2103,-2100,-2097,-2094,-2091,-2088,-2085,-2080,-2076,-2071,-2065,-2060,-2054,-2048,-2042,-2037,-2032,-2029,
+-2026,-2024,-2023,-2024,-2027,-2030,-2035,-2041,-2048,-2057,-2066,-2076,-2086,-2096,-2107,-2117,-2127,-2136,-2145,-2152,-2159,
+-2165,-2169,-2173,-2176,-2178,-2179,-2179,-2179,-2178,-2177,-2176,-2175,-2173,-2172,-2170,-2168,-2165,-2162,-2157,-2152,-2146,
+-2138,-2129,-2117,-2104,-2088,-2071,-2051,-2030,-2007,-1982,-1957,-1930,-1904,-1878,-1852,-1827,-1804,-1783,-1764,-1747,-1733,
+-1722,-1714,-1708,-1705,-1705,-1706,-1710,-1715,-1721,-1728,-1736,-1744,-1752,-1760,-1767,-1774,-1780,-1786,-1791,-1794,-1797,
+-1799,-1800,-1800,-1799,-1797,-1794,-1789,-1784,-1778,-1772,-1764,-1756,-1747,-1738,-1730,-1721,-1714,-1707,-1702,-1699,-1697,
+-1698,-1702,-1708,-1716,-1727,-1740,-1755,-1772,-1789,-1806,-1823,-1838,-1852,-1864,-1872,-1876,-1877,-1873,-1865,-1853,-1836,
+-1816,-1793,-1766,-1738,-1709,-1679,-1650,-1622,-1595,-1571,-1550,-1532,-1517,-1506,-1498,-1493,-1491,-1491,-1492,-1495,-1498,
+-1502,-1505,-1507,-1508,-1507,-1504,-1500,-1494,-1486,-1477,-1466,-1454,-1442,-1429,-1416,-1403,-1391,-1379,-1368,-1357,-1348,
+-1339,-1331,-1323,-1316,-1308,-1302,-1295,-1288,-1280,-1273,-1265,-1256,-1248,-1239,-1229,-1220,-1211,-1202,-1193,-1184,-1175,
+-1167,-1160,-1153,-1147,-1141,-1135,-1130,-1125,-1120,-1115,-1110,-1105,-1099,-1093,-1086,-1079,-1072,-1063,-1054,-1045,-1035,
+-1025,-1015,-1005,-995,-985,-975,-966,-957,-948,-940,-932,-924,-917,-910,-903,-895,-887,-879,-871,-861,-852,
+-841,-830,-819,-808,-796,-785,-774,-764,-754,-745,-737,-730,-725,-720,-717,-714,-712,-710,-709,-708,-742,
+-741,-740,-738,-736,-733,-728,-722,-716,-707,-698,-687,-676,-663,-650,-636,-623,-609,-596,-583,-570,-559,
+-548,-537,-528,-519,-510,-502,-494,-486,-478,-470,-462,-453,-444,-434,-425,-414,-404,-393,-382,-371,-361,
+-351,-341,-332,-323,-315,-308,-301,-295,-289,-283,-278,-272,-267,-261,-254,-247,-239,-229,-220,-209,-197,
+-184,-171,-157,-142,-127,-112,-97,-83,-68,-54,-41,-29,-17,-6,3,12,21,29,37,45,52,
+59,67,75,83,92,101,111,121,133,144,156,169,182,195,208,221,234,247,259,271,283,
+294,304,314,323,331,338,345,350,355,359,361,362,362,361,359,355,349,343,335,327,317,
+306,295,284,272,260,249,238,228,218,210,203,198,194,191,190,190,192,194,198,203,209,
+216,223,231,240,249,258,267,277,288,298,309,320,332,343,355,366,378,389,399,409,418,
+427,434,440,445,449,452,453,454,455,454,454,453,453,453,454,456,459,462,467,472,478,
+484,490,496,502,507,511,514,515,516,515,512,509,506,502,498,496,494,495,498,504,513,
+525,541,560,582,608,635,664,695,725,756,784,811,835,855,872,884,892,895,894,889,881,
+870,856,841,824,808,792,776,762,750,739,730,722,716,711,707,703,698,692,685,676,665,
+652,637,620,600,580,558,535,513,491,470,452,435,421,410,402,397,395,396,399,405,411,
+419,428,437,445,453,460,466,471,476,479,482,485,488,492,496,501,508,516,526,536,548,
+561,574,588,600,612,622,630,636,639,638,634,627,617,603,586,567,546,524,500,476,452,
+429,406,385,365,347,330,315,301,289,278,267,257,247,238,227,217,205,193,181,167,153,
+138,123,107,91,76,60,44,28,13,-2,-17,-32,-47,-63,-78,-95,-111,-129,-147,-166,-187,
+-208,-231,-254,-279,-305,-333,-361,-390,-419,-450,-481,-513,-545,-577,-609,-642,-674,-706,-738,-770,-801,
+-831,-862,-891,-921,-949,-978,-1005,-1033,-1060,-1086,-1113,-1139,-1165,-1191,-1217,-1242,-1268,-1294,-1319,-1345,-1370,
+-1395,-1420,-1445,-1470,-1494,-1519,-1543,-1568,-1592,-1616,-1640,-1664,-1689,-1714,-1739,-1764,-1789,-1814,-1840,-1866,-1892,
+-1917,-1943,-1968,-1994,-2018,-2043,-2068,-2092,-2116,-2140,-2164,-2189,-2213,-2239,-2265,-2292,-2320,-2349,-2379,-2410,-2442,
+-2475,-2508,-2542,-2576,-2610,-2644,-2677,-2709,-2740,-2770,-2798,-2825,-2850,-2874,-2897,-2918,-2938,-2958,-2977,-2996,-3014,
+-3032,-3051,-3070,-3089,-3109,-3128,-3149,-3169,-3189,-3209,-3229,-3249,-3268,-3286,-3304,-3322,-3338,-3355,-3371,-3387,-3404,
+-3421,-3438,-3457,-3476,-3497,-3519,-3542,-3566,-3592,-3618,-3646,-3673,-3701,-3728,-3754,-3780,-3804,-3827,-3848,-3867,-3884,
+-3899,-3912,-3924,-3933,-3942,-3950,-3957,-3964,-3971,-3978,-3987,-3996,-4007,-4019,-4033,-4048,-4064,-4082,-4100,-4120,-4140,
+-4160,-4181,-4201,-4221,-4240,-4259,-4277,-4295,-4312,-4328,-4344,-4360,-4376,-4392,-4408,-4426,-4444,-4463,-4484,-4505,-4528,
+-4553,-4578,-4604,-4631,-4658,-4685,-4712,-4739,-4764,-4788,-4810,-4831,-4849,-4865,-4878,-4889,-4897,-4904,-4908,-4910,-4910,
+-4910,-4908,-4906,-4903,-4901,-4899,-4898,-4898,-4899,-4901,-4904,-4908,-4913,-4919,-4926,-4933,-4940,-4948,-4955,-4962,-4968,
+-4974,-4979,-4983,-4987,-4991,-4994,-4997,-5001,-5005,-5009,-5014,-5021,-5028,-5036,-5045,-5055,-5066,-5077,-5087,-5098,-5107,
+-5115,-5122,-5127,-5129,-5129,-5126,-5120,-5112,-5102,-5090,-5077,-5062,-5048,-5034,-5021,-5010,-5002,-4996,-4994,-4996,-5001,
+-5011,-5024,-5040,-5060,-5082,-5106,-5131,-5156,-5180,-5203,-5224,-5242,-5257,-5268,-5276,-5280,-5279,-5275,-5268,-5258,-5245,
+-5230,-5214,-5197,-5180,-5164,-5148,-5133,-5119,-5107,-5097,-5088,-5081,-5076,-5072,-5068,-5066,-5065,-5063,-5063,-5062,-5061,
+-5061,-5060,-5059,-5059,-5058,-5058,-5058,-5058,-5059,-5060,-5062,-5064,-5066,-5069,-5073,-5077,-5082,-5086,-5091,-5096,-5101,
+-5106,-5111,-5116,-5121,-5126,-5131,-5135,-5140,-5144,-5148,-5152,-5156,-5160,-5163,-5166,-5169,-5172,-5174,-5176,-5178,-5180,
+-5181,-5183,-5184,-5186,-5187,-5189,-5190,-5192,-5194,-5196,-5198,-5200,-5203,-5205,-5208,-5210,-5213,-5215,-5218,-5220,-5222,
+-5224,-5226,-5227,-5228,-5230,-5230,-5231,-5232,-5232,-5232,-5232,-5232,-5231,-5230,-5229,-5227,-5225,-5222,-5219,-5216,-5212,
+-5208,-5204,-5200,-5196,-5192,-5188,-5184,-5181,-5178,-5175,-5173,-5172,-5171,-5171,-5172,-5173,-5174,-5175,-5177,-5179,-5181,
+-5183,-5186,-5188,-5190,-5192,-5195,-5197,-5200,-5202,-5205,-5208,-5211,-5213,-5216,-5219,-5222,-5224,-5227,-5228,-5230,-5231,
+-5231,-5231,-5230,-5229,-5227,-5225,-5222,-5219,-5216,-5214,-5211,-5209,-5207,-5205,-5204,-5204,-5204,-5204,-5205,-5206,-5207,
+-5207,-5208,-5209,-5209,-5209,-5208,-5206,-5204,-5202,-5199,-5197,-5193,-5190,-5187,-5184,-5182,-5179,-5177,-5176,-5174,-5173,
+-5172,-5171,-5169,-5166,-5163,-5159,-5154,-5147,-5139,-5129,-5117,-5104,-5090,-5074,-5057,-5039,-5021,-5002,-4984,-4965,-4948,
+-4931,-4915,-4900,-4887,-4875,-4864,-4854,-4844,-4836,-4828,-4821,-4813,-4805,-4797,-4789,-4779,-4770,-4759,-4748,-4737,-4725,
+-4713,-4702,-4690,-4679,-4669,-4659,-4650,-4642,-4634,-4628,-4622,-4616,-4610,-4603,-4597,-4589,-4580,-4570,-4558,-4544,-4529,
+-4511,-4491,-4470,-4447,-4422,-4397,-4371,-4344,-4318,-4292,-4267,-4243,-4220,-4199,-4180,-4163,-4148,-4134,-4123,-4113,-4105,
+-4098,-4092,-4087,-4083,-4079,-4076,-4072,-4069,-4066,-4062,-4059,-4055,-4051,-4047,-4043,-4039,-4035,-4030,-4026,-4021,-4016,
+-4011,-4005,-3999,-3992,-3984,-3976,-3967,-3957,-3947,-3936,-3924,-3912,-3900,-3887,-3875,-3863,-3851,-3841,-3831,-3823,-3816,
+-3811,-3807,-3804,-3804,-3804,-3806,-3809,-3813,-3818,-3824,-3830,-3836,-3841,-3847,-3852,-3856,-3860,-3862,-3863,-3864,-3863,
+-3860,-3857,-3852,-3846,-3839,-3830,-3820,-3809,-3797,-3783,-3768,-3752,-3734,-3715,-3695,-3674,-3651,-3628,-3603,-3578,-3552,
+-3525,-3498,-3471,-3443,-3416,-3389,-3363,-3338,-3313,-3289,-3266,-3244,-3223,-3203,-3184,-3165,-3147,-3129,-3111,-3093,-3074,
+-3054,-3034,-3012,-2990,-2966,-2941,-2915,-2888,-2860,-2832,-2803,-2775,-2747,-2720,-2695,-2671,-2648,-2628,-2609,-2593,-2578,
+-2566,-2555,-2546,-2538,-2530,-2523,-2517,-2510,-2502,-2494,-2486,-2476,-2466,-2455,-2443,-2431,-2420,-2409,-2399,-2390,-2383,
+-2378,-2376,-2375,-2378,-2383,-2391,-2401,-2413,-2426,-2441,-2457,-2472,-2488,-2503,-2516,-2528,-2538,-2546,-2551,-2553,-2553,
+-2551,-2546,-2539,-2531,-2521,-2511,-2499,-2488,-2476,-2466,-2456,-2447,-2439,-2433,-2429,-2426,-2425,-2425,-2427,-2431,-2435,
+-2441,-2447,-2454,-2461,-2468,-2475,-2481,-2487,-2493,-2497,-2500,-2503,-2504,-2504,-2504,-2502,-2499,-2495,-2490,-2485,-2479,
+-2473,-2466,-2460,-2453,-2446,-2438,-2431,-2424,-2417,-2410,-2403,-2396,-2389,-2382,-2374,-2366,-2357,-2349,-2339,-2330,-2319,
+-2309,-2297,-2286,-2274,-2262,-2250,-2238,-2226,-2214,-2202,-2191,-2181,-2171,-2161,-2153,-2145,-2138,-2132,-2126,-2122,-2118,
+-2115,-2113,-2112,-2110,-2110,-2110,-2110,-2111,-2112,-2113,-2114,-2116,-2117,-2120,-2122,-2125,-2128,-2132,-2136,-2141,-2147,
+-2153,-2160,-2168,-2176,-2185,-2194,-2203,-2212,-2222,-2230,-2239,-2246,-2253,-2259,-2264,-2268,-2271,-2272,-2273,-2272,-2271,
+-2269,-2267,-2264,-2261,-2258,-2255,-2253,-2250,-2248,-2245,-2243,-2240,-2238,-2234,-2230,-2224,-2218,-2209,-2200,-2188,-2175,
+-2160,-2143,-2125,-2106,-2085,-2064,-2043,-2021,-2000,-1980,-1961,-1943,-1926,-1911,-1898,-1888,-1878,-1871,-1865,-1861,-1858,
+-1856,-1855,-1855,-1855,-1855,-1855,-1855,-1855,-1855,-1855,-1854,-1853,-1851,-1849,-1847,-1844,-1841,-1838,-1834,-1830,-1826,
+-1821,-1816,-1810,-1805,-1799,-1793,-1787,-1782,-1777,-1773,-1769,-1768,-1767,-1768,-1771,-1776,-1782,-1791,-1800,-1811,-1823,
+-1835,-1847,-1858,-1868,-1877,-1882,-1885,-1885,-1881,-1873,-1862,-1846,-1827,-1804,-1778,-1750,-1720,-1689,-1658,-1627,-1598,
+-1570,-1544,-1522,-1503,-1487,-1475,-1466,-1461,-1458,-1459,-1461,-1465,-1470,-1475,-1480,-1485,-1488,-1489,-1489,-1486,-1482,
+-1475,-1466,-1456,-1444,-1430,-1416,-1401,-1386,-1371,-1357,-1343,-1330,-1317,-1306,-1296,-1287,-1279,-1271,-1264,-1257,-1251,
+-1244,-1238,-1231,-1224,-1216,-1208,-1199,-1190,-1181,-1172,-1162,-1153,-1144,-1135,-1127,-1119,-1112,-1105,-1099,-1094,-1089,
+-1085,-1081,-1077,-1073,-1069,-1065,-1060,-1055,-1050,-1044,-1038,-1031,-1024,-1017,-1009,-1001,-993,-986,-978,-971,-964,
+-958,-952,-947,-941,-936,-931,-926,-921,-916,-910,-903,-896,-888,-879,-870,-860,-849,-838,-827,-816,-806,
+-795,-786,-777,-769,-762,-757,-752,-749,-746,-744,-743,-742,-789,-788,-786,-785,-783,-781,-778,-774,-769,
+-763,-756,-747,-738,-727,-716,-705,-692,-680,-668,-656,-644,-633,-622,-612,-603,-594,-586,-578,-570,-563,
+-556,-549,-541,-534,-526,-518,-509,-500,-491,-481,-471,-461,-451,-442,-432,-423,-415,-407,-399,-392,-385,
+-379,-373,-367,-361,-355,-349,-342,-335,-327,-319,-309,-298,-287,-275,-262,-248,-234,-219,-204,-189,-174,
+-160,-145,-132,-119,-106,-94,-83,-72,-62,-52,-43,-34,-25,-16,-6,3,13,23,35,47,59,
+72,86,100,114,130,145,160,175,190,205,220,234,247,260,272,284,294,304,312,320,326,
+331,335,338,339,338,336,333,328,322,315,306,296,285,274,262,249,237,225,213,202,192,
+182,174,168,163,159,157,156,157,159,163,167,173,180,187,195,203,212,221,230,239,249,
+258,268,277,286,296,305,314,322,331,339,346,353,360,365,370,375,378,381,383,385,387,
+388,389,390,392,394,397,400,404,409,414,420,426,433,439,446,451,456,460,463,465,465,
+464,462,459,455,451,446,443,440,439,440,443,449,459,472,488,507,530,555,582,612,642,
+673,703,732,760,784,806,824,839,849,856,858,857,852,844,834,823,809,795,781,767,754,
+742,730,720,711,702,694,687,679,671,662,652,640,627,613,596,578,559,539,519,498,478,
+458,440,424,410,398,389,383,379,378,380,383,389,395,403,411,419,427,434,441,447,453,
+457,462,466,470,475,480,486,493,501,511,522,534,547,560,574,587,600,611,621,629,633,
+635,634,629,621,609,594,576,556,533,509,484,458,432,407,383,360,338,318,300,283,268,
+255,243,231,221,211,201,191,180,170,158,146,133,119,105,91,76,60,45,30,14,0,
+-15,-30,-45,-60,-75,-90,-106,-123,-140,-158,-178,-198,-220,-244,-268,-294,-322,-350,-379,-410,-441,
+-472,-504,-536,-568,-600,-631,-662,-693,-723,-752,-781,-810,-838,-865,-892,-919,-946,-973,-1000,-1027,-1053,
+-1080,-1107,-1134,-1161,-1189,-1216,-1242,-1269,-1295,-1321,-1346,-1371,-1396,-1420,-1443,-1466,-1488,-1511,-1533,-1555,-1577,
+-1599,-1621,-1643,-1666,-1689,-1713,-1737,-1761,-1786,-1812,-1837,-1862,-1888,-1914,-1939,-1964,-1989,-2014,-2038,-2063,-2087,
+-2111,-2135,-2160,-2185,-2211,-2237,-2264,-2293,-2322,-2352,-2383,-2416,-2449,-2482,-2516,-2550,-2584,-2618,-2651,-2683,-2714,
+-2744,-2773,-2800,-2825,-2850,-2873,-2894,-2915,-2935,-2954,-2973,-2991,-3010,-3029,-3048,-3067,-3086,-3106,-3126,-3146,-3166,
+-3186,-3206,-3224,-3243,-3260,-3276,-3292,-3307,-3321,-3335,-3348,-3361,-3374,-3387,-3402,-3417,-3433,-3451,-3470,-3491,-3514,
+-3538,-3563,-3590,-3617,-3645,-3674,-3702,-3729,-3756,-3781,-3804,-3826,-3846,-3864,-3880,-3894,-3906,-3917,-3926,-3934,-3942,
+-3949,-3956,-3964,-3972,-3981,-3991,-4002,-4015,-4028,-4043,-4059,-4076,-4094,-4112,-4131,-4150,-4168,-4187,-4205,-4223,-4241,
+-4258,-4275,-4292,-4308,-4325,-4342,-4360,-4378,-4397,-4417,-4439,-4461,-4485,-4509,-4534,-4560,-4587,-4613,-4640,-4665,-4690,
+-4713,-4735,-4755,-4772,-4787,-4800,-4809,-4817,-4822,-4824,-4825,-4824,-4822,-4819,-4815,-4812,-4809,-4807,-4806,-4806,-4808,
+-4811,-4816,-4823,-4831,-4840,-4851,-4862,-4873,-4884,-4896,-4906,-4916,-4925,-4933,-4939,-4945,-4950,-4954,-4958,-4961,-4965,
+-4969,-4974,-4980,-4988,-4996,-5007,-5018,-5031,-5045,-5059,-5073,-5087,-5100,-5112,-5121,-5128,-5132,-5132,-5129,-5122,-5111,
+-5097,-5079,-5058,-5036,-5011,-4986,-4962,-4938,-4916,-4896,-4880,-4868,-4860,-4857,-4858,-4864,-4875,-4889,-4907,-4928,-4952,
+-4976,-5001,-5026,-5049,-5071,-5090,-5107,-5120,-5129,-5135,-5138,-5137,-5133,-5127,-5118,-5108,-5097,-5085,-5073,-5062,-5051,
+-5042,-5033,-5027,-5021,-5018,-5015,-5014,-5014,-5015,-5016,-5018,-5019,-5021,-5023,-5024,-5025,-5025,-5025,-5024,-5023,-5022,
+-5022,-5021,-5020,-5020,-5021,-5022,-5024,-5027,-5030,-5034,-5039,-5044,-5050,-5057,-5063,-5070,-5077,-5083,-5089,-5095,-5100,
+-5105,-5108,-5111,-5113,-5115,-5116,-5116,-5115,-5115,-5113,-5112,-5111,-5110,-5109,-5108,-5108,-5108,-5109,-5110,-5112,-5115,
+-5118,-5122,-5126,-5131,-5136,-5141,-5146,-5152,-5157,-5162,-5167,-5171,-5175,-5179,-5183,-5186,-5188,-5190,-5192,-5193,-5194,
+-5195,-5195,-5194,-5193,-5192,-5191,-5188,-5186,-5183,-5180,-5176,-5172,-5167,-5162,-5157,-5152,-5147,-5142,-5137,-5132,-5127,
+-5123,-5119,-5116,-5113,-5110,-5108,-5107,-5106,-5105,-5105,-5105,-5106,-5107,-5108,-5110,-5112,-5114,-5117,-5119,-5123,-5126,
+-5130,-5134,-5139,-5143,-5148,-5153,-5158,-5163,-5168,-5173,-5178,-5182,-5185,-5188,-5190,-5192,-5193,-5194,-5193,-5193,-5191,
+-5189,-5187,-5185,-5182,-5179,-5176,-5174,-5171,-5168,-5166,-5164,-5162,-5161,-5159,-5158,-5157,-5155,-5155,-5154,-5153,-5152,
+-5152,-5151,-5151,-5151,-5151,-5152,-5152,-5153,-5154,-5156,-5157,-5158,-5158,-5158,-5158,-5157,-5155,-5151,-5146,-5140,-5132,
+-5123,-5112,-5099,-5085,-5069,-5052,-5034,-5015,-4996,-4976,-4957,-4938,-4919,-4901,-4884,-4868,-4853,-4839,-4826,-4814,-4804,
+-4794,-4784,-4775,-4767,-4758,-4750,-4741,-4732,-4723,-4714,-4704,-4695,-4685,-4675,-4666,-4656,-4647,-4639,-4630,-4623,-4616,
+-4609,-4602,-4595,-4589,-4582,-4574,-4566,-4557,-4547,-4535,-4522,-4507,-4490,-4472,-4453,-4432,-4409,-4386,-4362,-4338,-4314,
+-4290,-4267,-4244,-4223,-4203,-4184,-4167,-4152,-4139,-4127,-4116,-4107,-4100,-4093,-4087,-4082,-4077,-4072,-4068,-4063,-4059,
+-4054,-4050,-4045,-4040,-4035,-4029,-4024,-4019,-4013,-4008,-4003,-3997,-3992,-3986,-3980,-3974,-3968,-3961,-3954,-3946,-3938,
+-3929,-3920,-3910,-3900,-3890,-3880,-3870,-3861,-3852,-3843,-3836,-3829,-3824,-3819,-3816,-3814,-3813,-3813,-3814,-3817,-3819,
+-3822,-3826,-3830,-3834,-3837,-3841,-3844,-3846,-3848,-3849,-3849,-3848,-3846,-3843,-3840,-3835,-3829,-3822,-3813,-3804,-3793,
+-3781,-3767,-3752,-3735,-3717,-3697,-3677,-3654,-3631,-3606,-3580,-3554,-3527,-3499,-3472,-3445,-3418,-3392,-3366,-3342,-3319,
+-3297,-3276,-3257,-3238,-3221,-3204,-3188,-3172,-3156,-3140,-3124,-3106,-3088,-3068,-3047,-3024,-2999,-2974,-2947,-2919,-2890,
+-2860,-2831,-2801,-2773,-2745,-2719,-2694,-2671,-2651,-2632,-2616,-2603,-2591,-2581,-2573,-2567,-2561,-2556,-2552,-2547,-2543,
+-2538,-2532,-2526,-2519,-2511,-2503,-2495,-2486,-2479,-2472,-2466,-2463,-2461,-2461,-2463,-2469,-2477,-2487,-2500,-2515,-2532,
+-2551,-2570,-2590,-2611,-2630,-2649,-2666,-2682,-2695,-2706,-2715,-2720,-2723,-2723,-2721,-2716,-2710,-2701,-2691,-2680,-2668,
+-2655,-2642,-2629,-2617,-2605,-2593,-2583,-2573,-2564,-2556,-2550,-2544,-2539,-2535,-2533,-2531,-2530,-2530,-2530,-2531,-2533,
+-2535,-2538,-2541,-2543,-2546,-2549,-2551,-2553,-2554,-2555,-2554,-2553,-2551,-2547,-2543,-2537,-2531,-2523,-2515,-2506,-2496,
+-2486,-2476,-2466,-2455,-2445,-2435,-2425,-2415,-2406,-2397,-2389,-2380,-2371,-2363,-2354,-2344,-2335,-2324,-2313,-2302,-2290,
+-2278,-2265,-2252,-2239,-2226,-2213,-2201,-2189,-2179,-2170,-2162,-2156,-2151,-2148,-2147,-2147,-2149,-2152,-2156,-2161,-2167,
+-2173,-2179,-2186,-2193,-2199,-2205,-2211,-2217,-2222,-2227,-2231,-2236,-2241,-2246,-2251,-2256,-2262,-2268,-2275,-2282,-2290,
+-2297,-2305,-2312,-2319,-2326,-2332,-2337,-2341,-2344,-2347,-2348,-2348,-2348,-2346,-2344,-2342,-2340,-2337,-2335,-2333,-2332,
+-2331,-2330,-2330,-2330,-2330,-2330,-2330,-2329,-2327,-2325,-2321,-2316,-2309,-2300,-2289,-2277,-2263,-2247,-2230,-2212,-2193,
+-2174,-2154,-2135,-2115,-2097,-2079,-2062,-2046,-2032,-2019,-2007,-1997,-1987,-1978,-1971,-1964,-1957,-1951,-1945,-1939,-1934,
+-1928,-1923,-1917,-1912,-1906,-1901,-1895,-1890,-1885,-1880,-1875,-1871,-1866,-1862,-1858,-1854,-1851,-1847,-1844,-1841,-1838,
+-1836,-1834,-1833,-1833,-1834,-1835,-1837,-1841,-1845,-1850,-1855,-1861,-1867,-1873,-1879,-1883,-1887,-1888,-1888,-1885,-1879,
+-1871,-1859,-1844,-1826,-1805,-1782,-1755,-1728,-1698,-1668,-1638,-1608,-1579,-1552,-1526,-1504,-1484,-1467,-1454,-1444,-1437,
+-1432,-1431,-1431,-1434,-1437,-1441,-1446,-1450,-1453,-1455,-1455,-1454,-1451,-1446,-1439,-1430,-1419,-1408,-1395,-1381,-1367,
+-1353,-1340,-1326,-1313,-1302,-1291,-1281,-1272,-1264,-1256,-1250,-1244,-1238,-1232,-1226,-1220,-1214,-1207,-1200,-1192,-1184,
+-1176,-1167,-1158,-1150,-1141,-1133,-1125,-1118,-1111,-1105,-1100,-1096,-1093,-1090,-1088,-1087,-1085,-1084,-1083,-1082,-1080,
+-1078,-1075,-1072,-1069,-1064,-1060,-1055,-1049,-1043,-1037,-1031,-1026,-1020,-1014,-1009,-1004,-999,-994,-989,-984,-979,
+-974,-968,-962,-955,-947,-939,-930,-920,-909,-899,-887,-876,-865,-854,-844,-834,-825,-817,-810,-804,-799,
+-796,-793,-791,-789,-853,-850,-848,-845,-843,-840,-836,-832,-828,-822,-816,-808,-800,-791,-782,-771,-760,
+-749,-738,-727,-716,-705,-694,-684,-675,-666,-657,-650,-642,-635,-629,-622,-616,-610,-603,-597,-590,-584,
+-577,-569,-562,-554,-547,-539,-531,-524,-516,-509,-501,-494,-487,-480,-473,-465,-458,-450,-443,-434,-426,
+-416,-406,-396,-384,-372,-360,-346,-333,-319,-304,-290,-275,-261,-246,-232,-219,-205,-192,-180,-168,-156,
+-144,-133,-122,-111,-100,-89,-78,-66,-54,-42,-29,-15,-1,12,28,43,59,75,91,108,124,
+141,157,173,189,204,218,232,245,257,268,279,287,295,302,307,310,312,313,312,309,305,
+299,292,284,275,265,254,242,231,219,208,196,186,176,168,160,154,150,146,144,144,144,
+146,149,153,158,164,170,177,184,191,198,206,213,221,228,235,242,249,255,262,267,273,
+278,283,288,292,295,298,301,302,304,305,306,307,307,308,309,310,311,313,316,319,323,
+328,333,339,345,352,358,364,370,375,379,383,385,386,386,386,384,382,380,378,377,376,
+377,379,384,390,400,412,426,444,464,486,510,535,561,588,614,639,663,685,705,721,735,
+745,752,756,757,754,749,742,734,724,713,701,689,678,667,656,647,637,628,620,612,604,
+595,586,576,566,554,542,528,514,499,484,468,452,437,423,410,398,388,380,374,370,369,
+369,370,374,378,384,390,397,404,411,417,424,429,435,440,445,450,455,460,466,473,480,
+488,497,507,518,529,540,552,562,572,580,587,592,594,593,590,583,574,562,547,529,509,
+488,465,441,417,393,369,345,323,302,282,264,247,231,217,203,191,179,167,156,144,133,
+121,109,96,83,69,56,42,27,13,0,-14,-28,-42,-55,-69,-83,-96,-110,-125,-140,-157,
+-174,-193,-213,-234,-258,-282,-309,-337,-366,-397,-428,-460,-493,-526,-559,-592,-624,-656,-687,-717,-746,
+-774,-802,-828,-854,-879,-904,-928,-952,-977,-1001,-1026,-1051,-1076,-1102,-1128,-1154,-1181,-1208,-1235,-1261,-1288,
+-1314,-1340,-1365,-1390,-1413,-1437,-1459,-1481,-1503,-1524,-1544,-1565,-1585,-1606,-1626,-1647,-1669,-1691,-1713,-1736,-1760,
+-1784,-1808,-1832,-1857,-1882,-1907,-1931,-1956,-1980,-2004,-2028,-2052,-2076,-2100,-2123,-2148,-2172,-2197,-2223,-2249,-2277,
+-2305,-2334,-2365,-2395,-2427,-2459,-2491,-2524,-2556,-2588,-2620,-2651,-2680,-2709,-2736,-2763,-2788,-2811,-2834,-2855,-2876,
+-2896,-2916,-2935,-2954,-2973,-2992,-3012,-3031,-3051,-3071,-3092,-3112,-3132,-3152,-3171,-3190,-3208,-3226,-3242,-3258,-3273,
+-3287,-3301,-3314,-3327,-3340,-3354,-3368,-3383,-3399,-3416,-3435,-3455,-3477,-3501,-3526,-3552,-3579,-3607,-3636,-3664,-3693,
+-3720,-3747,-3773,-3797,-3820,-3841,-3860,-3877,-3892,-3905,-3916,-3927,-3936,-3944,-3951,-3959,-3966,-3973,-3981,-3989,-3998,
+-4008,-4019,-4030,-4043,-4056,-4070,-4085,-4100,-4116,-4132,-4148,-4165,-4182,-4199,-4217,-4235,-4254,-4273,-4293,-4313,-4335,
+-4357,-4380,-4404,-4428,-4453,-4479,-4504,-4530,-4555,-4580,-4604,-4626,-4647,-4666,-4683,-4698,-4711,-4721,-4729,-4734,-4737,
+-4739,-4739,-4737,-4735,-4732,-4729,-4727,-4725,-4724,-4724,-4726,-4730,-4735,-4742,-4750,-4759,-4769,-4781,-4792,-4804,-4815,
+-4826,-4835,-4844,-4852,-4858,-4863,-4866,-4869,-4871,-4872,-4874,-4876,-4878,-4882,-4888,-4895,-4903,-4914,-4927,-4942,-4958,
+-4975,-4993,-5011,-5028,-5044,-5058,-5069,-5077,-5081,-5080,-5075,-5065,-5051,-5032,-5008,-4981,-4952,-4920,-4887,-4854,-4821,
+-4791,-4763,-4739,-4720,-4705,-4696,-4693,-4695,-4703,-4717,-4735,-4757,-4783,-4811,-4841,-4872,-4902,-4931,-4958,-4983,-5004,
+-5022,-5037,-5047,-5053,-5056,-5056,-5053,-5047,-5040,-5031,-5022,-5012,-5003,-4994,-4987,-4981,-4976,-4973,-4971,-4970,-4971,
+-4973,-4976,-4979,-4982,-4985,-4988,-4990,-4992,-4993,-4993,-4992,-4991,-4990,-4988,-4985,-4983,-4981,-4980,-4979,-4979,-4979,
+-4981,-4983,-4986,-4991,-4995,-5001,-5007,-5013,-5019,-5025,-5031,-5036,-5040,-5044,-5047,-5050,-5051,-5052,-5051,-5051,-5050,
+-5048,-5046,-5045,-5043,-5042,-5042,-5042,-5042,-5044,-5046,-5049,-5053,-5057,-5062,-5067,-5073,-5079,-5085,-5091,-5097,-5102,
+-5108,-5112,-5117,-5120,-5124,-5126,-5129,-5131,-5133,-5134,-5135,-5136,-5137,-5138,-5139,-5140,-5141,-5141,-5142,-5142,-5142,
+-5142,-5141,-5140,-5139,-5137,-5135,-5132,-5129,-5125,-5121,-5117,-5113,-5108,-5103,-5099,-5094,-5090,-5086,-5082,-5079,-5076,
+-5073,-5071,-5069,-5068,-5067,-5067,-5067,-5067,-5068,-5069,-5070,-5072,-5074,-5076,-5078,-5081,-5084,-5087,-5090,-5093,-5096,
+-5099,-5102,-5105,-5108,-5110,-5113,-5115,-5117,-5118,-5119,-5120,-5120,-5121,-5120,-5120,-5119,-5118,-5117,-5116,-5115,-5113,
+-5112,-5110,-5109,-5107,-5106,-5104,-5102,-5101,-5099,-5097,-5095,-5094,-5092,-5091,-5089,-5088,-5086,-5085,-5084,-5083,-5082,
+-5081,-5080,-5079,-5078,-5076,-5074,-5071,-5068,-5064,-5059,-5053,-5047,-5039,-5030,-5019,-5008,-4996,-4983,-4969,-4955,-4940,
+-4924,-4909,-4893,-4878,-4863,-4848,-4834,-4821,-4808,-4796,-4785,-4774,-4763,-4754,-4744,-4735,-4727,-4718,-4710,-4701,-4693,
+-4685,-4677,-4669,-4661,-4653,-4645,-4638,-4631,-4625,-4618,-4612,-4607,-4601,-4596,-4590,-4584,-4578,-4571,-4564,-4555,-4545,
+-4534,-4522,-4508,-4492,-4475,-4457,-4437,-4416,-4394,-4371,-4348,-4325,-4302,-4279,-4257,-4236,-4216,-4197,-4180,-4164,-4150,
+-4137,-4126,-4116,-4107,-4100,-4093,-4088,-4082,-4078,-4073,-4069,-4065,-4061,-4057,-4052,-4048,-4043,-4039,-4034,-4029,-4024,
+-4019,-4014,-4009,-4004,-3999,-3994,-3988,-3983,-3977,-3971,-3965,-3958,-3951,-3943,-3935,-3927,-3918,-3909,-3900,-3891,-3882,
+-3873,-3864,-3856,-3848,-3840,-3833,-3827,-3821,-3816,-3812,-3808,-3804,-3801,-3798,-3796,-3794,-3792,-3790,-3788,-3786,-3783,
+-3781,-3778,-3775,-3772,-3768,-3764,-3760,-3754,-3748,-3741,-3734,-3725,-3715,-3704,-3691,-3677,-3662,-3645,-3627,-3607,-3586,
+-3564,-3541,-3517,-3492,-3467,-3442,-3417,-3393,-3369,-3346,-3325,-3304,-3285,-3268,-3251,-3236,-3222,-3210,-3197,-3185,-3173,
+-3161,-3148,-3135,-3120,-3104,-3086,-3067,-3046,-3023,-2999,-2974,-2947,-2920,-2892,-2864,-2837,-2811,-2785,-2761,-2739,-2719,
+-2701,-2685,-2671,-2660,-2650,-2643,-2636,-2631,-2627,-2623,-2619,-2615,-2611,-2606,-2600,-2594,-2587,-2579,-2571,-2562,-2554,
+-2546,-2538,-2532,-2526,-2523,-2521,-2522,-2524,-2529,-2537,-2546,-2557,-2570,-2584,-2599,-2615,-2631,-2647,-2662,-2677,-2690,
+-2702,-2712,-2720,-2726,-2730,-2733,-2733,-2732,-2729,-2725,-2720,-2714,-2707,-2700,-2692,-2684,-2677,-2669,-2661,-2654,-2647,
+-2641,-2635,-2630,-2625,-2621,-2618,-2615,-2612,-2611,-2610,-2610,-2610,-2612,-2613,-2615,-2618,-2620,-2623,-2625,-2628,-2629,
+-2630,-2630,-2629,-2627,-2624,-2619,-2613,-2606,-2598,-2588,-2578,-2567,-2555,-2543,-2531,-2520,-2508,-2498,-2487,-2478,-2469,
+-2461,-2454,-2447,-2441,-2435,-2429,-2423,-2416,-2409,-2401,-2392,-2382,-2370,-2358,-2345,-2331,-2317,-2302,-2287,-2273,-2259,
+-2246,-2234,-2223,-2215,-2208,-2202,-2199,-2198,-2199,-2202,-2206,-2211,-2217,-2225,-2232,-2240,-2248,-2256,-2264,-2271,-2278,
+-2284,-2290,-2295,-2300,-2305,-2310,-2315,-2320,-2325,-2331,-2337,-2344,-2351,-2358,-2365,-2373,-2380,-2388,-2394,-2401,-2406,
+-2411,-2415,-2418,-2420,-2421,-2421,-2421,-2420,-2419,-2417,-2416,-2415,-2413,-2413,-2412,-2412,-2411,-2411,-2411,-2411,-2411,
+-2409,-2407,-2404,-2400,-2394,-2387,-2378,-2368,-2356,-2343,-2329,-2313,-2297,-2280,-2262,-2245,-2227,-2210,-2193,-2177,-2162,
+-2148,-2135,-2122,-2110,-2100,-2089,-2079,-2070,-2061,-2052,-2043,-2033,-2024,-2015,-2005,-1996,-1986,-1977,-1967,-1958,-1950,
+-1942,-1934,-1928,-1921,-1916,-1912,-1908,-1905,-1903,-1901,-1900,-1899,-1899,-1899,-1899,-1900,-1900,-1900,-1901,-1901,-1901,
+-1901,-1901,-1900,-1899,-1897,-1894,-1891,-1887,-1881,-1874,-1866,-1856,-1844,-1831,-1816,-1799,-1781,-1761,-1740,-1718,-1695,
+-1672,-1648,-1625,-1603,-1581,-1561,-1543,-1527,-1513,-1501,-1491,-1483,-1478,-1475,-1473,-1472,-1473,-1474,-1476,-1477,-1479,
+-1479,-1478,-1476,-1473,-1468,-1461,-1453,-1444,-1434,-1422,-1410,-1398,-1385,-1372,-1360,-1348,-1337,-1327,-1317,-1309,-1302,
+-1295,-1289,-1284,-1279,-1274,-1270,-1265,-1260,-1255,-1249,-1243,-1236,-1228,-1220,-1212,-1204,-1195,-1187,-1179,-1171,-1164,
+-1157,-1152,-1147,-1143,-1140,-1138,-1137,-1136,-1135,-1135,-1135,-1135,-1134,-1134,-1133,-1131,-1128,-1125,-1122,-1117,-1113,
+-1107,-1101,-1095,-1089,-1083,-1077,-1071,-1065,-1059,-1053,-1048,-1043,-1037,-1032,-1026,-1020,-1014,-1007,-999,-992,-983,
+-974,-965,-956,-946,-936,-926,-916,-907,-898,-890,-882,-876,-870,-865,-860,-856,-853,-930,-925,-920,-916,
+-911,-906,-901,-896,-890,-884,-877,-869,-861,-852,-843,-833,-823,-812,-801,-790,-780,-769,-759,-749,-740,
+-731,-723,-715,-708,-702,-696,-691,-686,-682,-679,-675,-672,-669,-666,-662,-659,-656,-652,-649,-644,-640,
+-635,-630,-624,-618,-612,-605,-597,-589,-580,-570,-559,-548,-536,-524,-511,-497,-482,-467,-451,-436,-419,
+-403,-386,-370,-353,-337,-321,-306,-291,-276,-262,-249,-236,-223,-211,-199,-187,-176,-165,-154,-143,-131,
+-120,-108,-96,-83,-70,-57,-43,-28,-14,1,16,32,48,65,81,98,114,131,147,162,177,
+191,205,218,229,240,249,257,263,268,272,273,274,272,269,265,260,253,246,237,228,219,
+210,200,191,182,174,166,160,154,149,145,142,140,139,139,139,141,142,145,148,151,154,
+158,161,165,169,173,178,182,186,190,194,198,202,205,209,212,215,217,219,221,222,222,
+222,222,221,220,219,217,216,215,214,214,214,215,217,219,222,225,229,234,239,244,249,
+254,259,263,267,271,274,276,278,280,281,283,284,286,289,292,297,303,311,320,331,343,
+357,372,389,406,424,442,460,478,494,509,523,535,545,553,559,563,564,564,562,558,553,
+548,541,534,527,520,514,507,501,495,490,485,480,475,471,466,460,454,448,441,433,426,
+417,409,400,391,383,375,368,362,357,353,350,349,348,349,351,354,358,363,368,374,380,
+386,392,398,403,409,415,421,427,433,439,446,453,460,469,477,486,494,503,512,520,527,
+533,538,541,542,541,538,533,525,515,502,488,471,453,433,412,391,369,346,324,302,281,
+260,240,221,203,186,169,153,138,123,109,94,80,66,52,38,24,11,-2,-15,-28,-41,
+-53,-65,-76,-87,-98,-109,-120,-130,-141,-153,-166,-180,-194,-211,-229,-249,-271,-295,-320,-348,-377,
+-408,-440,-473,-507,-541,-575,-609,-643,-676,-707,-738,-768,-796,-823,-849,-873,-897,-920,-942,-964,-986,
+-1008,-1030,-1052,-1075,-1099,-1123,-1147,-1172,-1198,-1224,-1251,-1277,-1304,-1330,-1356,-1382,-1407,-1431,-1455,-1477,-1500,
+-1521,-1542,-1563,-1583,-1602,-1622,-1642,-1662,-1682,-1702,-1722,-1743,-1765,-1786,-1808,-1831,-1853,-1876,-1898,-1921,-1943,
+-1965,-1988,-2010,-2032,-2054,-2076,-2099,-2121,-2144,-2168,-2192,-2217,-2243,-2270,-2297,-2326,-2355,-2385,-2415,-2445,-2476,
+-2507,-2538,-2568,-2598,-2627,-2655,-2682,-2708,-2733,-2756,-2779,-2801,-2822,-2843,-2863,-2883,-2902,-2921,-2941,-2960,-2980,
+-2999,-3019,-3040,-3060,-3080,-3101,-3121,-3141,-3160,-3179,-3197,-3215,-3232,-3249,-3265,-3280,-3296,-3311,-3327,-3343,-3359,
+-3376,-3394,-3413,-3434,-3455,-3477,-3501,-3526,-3552,-3579,-3606,-3634,-3662,-3690,-3717,-3744,-3770,-3795,-3819,-3841,-3861,
+-3880,-3898,-3914,-3928,-3941,-3953,-3963,-3973,-3981,-3990,-3997,-4005,-4012,-4020,-4027,-4035,-4044,-4053,-4062,-4072,-4083,
+-4095,-4107,-4120,-4134,-4150,-4166,-4183,-4201,-4221,-4241,-4262,-4285,-4308,-4333,-4357,-4383,-4409,-4434,-4460,-4485,-4510,
+-4533,-4555,-4576,-4595,-4612,-4627,-4640,-4650,-4658,-4665,-4669,-4672,-4673,-4673,-4672,-4671,-4669,-4668,-4667,-4667,-4668,
+-4670,-4674,-4679,-4685,-4692,-4700,-4708,-4718,-4727,-4736,-4744,-4752,-4759,-4764,-4768,-4770,-4771,-4771,-4770,-4768,-4765,
+-4763,-4760,-4759,-4759,-4760,-4764,-4770,-4778,-4789,-4802,-4817,-4834,-4853,-4872,-4892,-4911,-4929,-4945,-4957,-4967,-4972,
+-4972,-4967,-4957,-4941,-4921,-4895,-4865,-4831,-4795,-4757,-4717,-4679,-4641,-4607,-4575,-4549,-4528,-4512,-4504,-4501,-4506,
+-4517,-4535,-4558,-4586,-4618,-4654,-4691,-4730,-4769,-4807,-4843,-4876,-4906,-4933,-4955,-4973,-4986,-4996,-5001,-5003,-5001,
+-4997,-4992,-4984,-4976,-4968,-4960,-4953,-4947,-4942,-4939,-4938,-4937,-4938,-4941,-4944,-4948,-4953,-4957,-4962,-4966,-4970,
+-4972,-4975,-4976,-4976,-4976,-4975,-4973,-4971,-4969,-4967,-4964,-4963,-4961,-4960,-4960,-4961,-4961,-4963,-4965,-4967,-4970,
+-4973,-4975,-4978,-4980,-4982,-4983,-4984,-4985,-4985,-4984,-4984,-4983,-4983,-4982,-4982,-4982,-4983,-4984,-4986,-4989,-4992,
+-4996,-5001,-5007,-5013,-5020,-5026,-5033,-5039,-5045,-5051,-5056,-5061,-5064,-5067,-5070,-5071,-5072,-5072,-5072,-5072,-5071,
+-5070,-5070,-5070,-5070,-5070,-5072,-5073,-5076,-5078,-5082,-5085,-5089,-5093,-5097,-5101,-5105,-5108,-5111,-5113,-5114,-5115,
+-5115,-5114,-5112,-5110,-5107,-5103,-5100,-5095,-5091,-5087,-5083,-5078,-5074,-5071,-5067,-5064,-5061,-5059,-5057,-5055,-5054,
+-5053,-5051,-5050,-5050,-5049,-5048,-5047,-5046,-5045,-5043,-5042,-5041,-5039,-5038,-5037,-5036,-5034,-5033,-5032,-5032,-5031,
+-5031,-5031,-5031,-5032,-5033,-5034,-5035,-5036,-5038,-5039,-5040,-5042,-5043,-5044,-5045,-5045,-5046,-5045,-5045,-5043,-5042,
+-5040,-5037,-5034,-5030,-5026,-5022,-5017,-5012,-5007,-5001,-4996,-4990,-4984,-4978,-4972,-4966,-4960,-4954,-4948,-4942,-4936,
+-4929,-4923,-4916,-4910,-4903,-4895,-4888,-4880,-4872,-4864,-4856,-4847,-4839,-4830,-4821,-4813,-4804,-4796,-4787,-4779,-4770,
+-4762,-4754,-4746,-4738,-4730,-4722,-4713,-4705,-4697,-4689,-4680,-4672,-4664,-4656,-4648,-4640,-4632,-4625,-4617,-4611,-4604,
+-4598,-4592,-4587,-4581,-4576,-4570,-4565,-4559,-4552,-4545,-4537,-4528,-4518,-4507,-4494,-4480,-4465,-4449,-4432,-4413,-4394,
+-4374,-4353,-4333,-4312,-4291,-4271,-4252,-4233,-4216,-4199,-4184,-4171,-4158,-4147,-4138,-4129,-4122,-4115,-4110,-4105,-4101,
+-4098,-4094,-4091,-4088,-4086,-4083,-4080,-4077,-4074,-4070,-4067,-4064,-4060,-4056,-4052,-4048,-4044,-4039,-4035,-4029,-4024,
+-4018,-4012,-4005,-3998,-3990,-3982,-3973,-3963,-3953,-3943,-3932,-3920,-3909,-3897,-3885,-3872,-3860,-3848,-3836,-3824,-3812,
+-3801,-3790,-3778,-3768,-3757,-3747,-3737,-3728,-3718,-3709,-3701,-3692,-3684,-3676,-3668,-3661,-3654,-3647,-3640,-3633,-3626,
+-3618,-3611,-3603,-3594,-3585,-3575,-3565,-3553,-3540,-3526,-3511,-3495,-3478,-3460,-3441,-3422,-3403,-3383,-3363,-3343,-3324,
+-3306,-3288,-3272,-3256,-3242,-3229,-3217,-3206,-3196,-3186,-3178,-3169,-3160,-3151,-3142,-3131,-3120,-3107,-3093,-3078,-3062,
+-3044,-3024,-3004,-2983,-2962,-2940,-2918,-2897,-2877,-2857,-2839,-2822,-2807,-2793,-2782,-2772,-2763,-2756,-2750,-2745,-2740,
+-2736,-2732,-2728,-2723,-2718,-2712,-2705,-2697,-2688,-2678,-2667,-2656,-2645,-2633,-2622,-2611,-2602,-2593,-2585,-2580,-2575,
+-2573,-2572,-2573,-2575,-2580,-2585,-2591,-2599,-2607,-2615,-2624,-2632,-2641,-2649,-2656,-2662,-2668,-2673,-2678,-2681,-2684,
+-2687,-2689,-2690,-2691,-2692,-2692,-2693,-2693,-2693,-2693,-2693,-2693,-2693,-2693,-2693,-2693,-2693,-2694,-2694,-2694,-2695,
+-2696,-2697,-2698,-2700,-2702,-2704,-2706,-2708,-2710,-2712,-2713,-2714,-2714,-2713,-2711,-2708,-2703,-2698,-2691,-2683,-2673,
+-2662,-2651,-2638,-2626,-2612,-2599,-2586,-2573,-2561,-2550,-2540,-2531,-2523,-2516,-2510,-2505,-2501,-2497,-2493,-2489,-2485,
+-2481,-2475,-2469,-2462,-2453,-2443,-2432,-2420,-2407,-2393,-2379,-2364,-2350,-2336,-2322,-2310,-2299,-2289,-2281,-2275,-2270,
+-2268,-2267,-2267,-2270,-2273,-2278,-2283,-2290,-2296,-2303,-2311,-2318,-2325,-2332,-2339,-2346,-2352,-2359,-2365,-2371,-2378,
+-2385,-2392,-2399,-2407,-2415,-2422,-2430,-2438,-2446,-2454,-2461,-2468,-2474,-2480,-2485,-2489,-2492,-2495,-2496,-2498,-2498,
+-2498,-2498,-2497,-2497,-2496,-2494,-2493,-2492,-2490,-2488,-2486,-2484,-2481,-2477,-2472,-2466,-2460,-2452,-2443,-2433,-2423,
+-2411,-2398,-2385,-2371,-2357,-2343,-2329,-2315,-2302,-2289,-2277,-2265,-2254,-2244,-2234,-2225,-2216,-2207,-2199,-2190,-2181,
+-2171,-2161,-2150,-2138,-2126,-2113,-2100,-2087,-2073,-2059,-2045,-2032,-2020,-2009,-1998,-1990,-1982,-1976,-1971,-1968,-1966,
+-1966,-1966,-1968,-1969,-1972,-1974,-1976,-1977,-1978,-1978,-1977,-1974,-1970,-1965,-1958,-1949,-1939,-1927,-1914,-1900,-1885,
+-1868,-1851,-1833,-1814,-1795,-1776,-1757,-1738,-1720,-1701,-1684,-1667,-1651,-1636,-1623,-1610,-1599,-1589,-1581,-1574,-1569,
+-1564,-1561,-1559,-1558,-1557,-1557,-1557,-1557,-1557,-1557,-1555,-1553,-1549,-1545,-1539,-1531,-1523,-1513,-1502,-1491,-1478,
+-1465,-1451,-1438,-1425,-1412,-1399,-1388,-1377,-1367,-1359,-1352,-1345,-1340,-1335,-1331,-1328,-1325,-1322,-1319,-1316,-1313,
+-1309,-1304,-1299,-1293,-1286,-1279,-1271,-1263,-1255,-1246,-1238,-1230,-1223,-1216,-1209,-1204,-1199,-1195,-1192,-1189,-1187,
+-1186,-1185,-1183,-1182,-1181,-1179,-1177,-1175,-1171,-1167,-1163,-1157,-1151,-1145,-1138,-1131,-1124,-1116,-1109,-1102,-1095,
+-1089,-1083,-1077,-1072,-1067,-1063,-1059,-1054,-1050,-1046,-1042,-1038,-1033,-1028,-1023,-1017,-1011,-1004,-998,-991,-984,
+-977,-970,-964,-957,-951,-945,-940,-935,-930,-991,-986,-980,-974,-968,-962,-956,-949,-942,-935,-928,-920,
+-911,-903,-894,-884,-875,-865,-855,-845,-835,-825,-816,-807,-798,-790,-783,-776,-770,-765,-761,-758,-755,
+-753,-752,-752,-752,-752,-753,-754,-755,-756,-757,-758,-758,-757,-755,-753,-750,-746,-741,-734,-727,-718,
+-708,-696,-684,-670,-655,-639,-622,-604,-586,-567,-547,-527,-507,-486,-466,-446,-426,-407,-388,-370,-353,
+-336,-321,-306,-292,-278,-266,-254,-242,-232,-221,-211,-202,-192,-183,-173,-163,-153,-142,-131,-119,-107,
+-95,-81,-67,-52,-37,-21,-5,11,28,45,62,79,96,112,128,143,157,170,182,192,201,
+209,215,220,223,225,225,224,221,218,213,208,202,195,188,181,174,167,160,153,147,141,
+136,131,127,123,119,116,113,111,109,107,106,105,104,103,103,103,103,104,106,107,109,
+112,115,118,122,125,129,132,136,139,142,144,146,147,148,148,147,145,143,141,138,135,
+132,129,126,123,121,120,119,119,120,122,124,127,130,135,139,144,149,154,158,163,168,
+172,176,180,184,187,191,195,199,203,208,214,220,227,234,242,250,259,269,278,288,297,
+306,315,323,331,337,343,348,351,354,356,357,357,357,356,355,353,352,350,349,347,346,
+345,343,343,342,341,340,339,337,336,334,332,329,326,323,320,317,313,310,307,304,302,
+300,299,298,298,299,301,303,305,309,313,317,322,328,333,339,345,352,359,366,373,381,
+388,396,405,413,422,431,439,448,456,464,471,477,482,486,489,490,489,486,482,475,467,
+456,444,430,414,397,379,360,340,319,298,277,255,234,213,192,171,151,131,111,92,73,
+55,37,19,2,-14,-30,-46,-61,-75,-89,-101,-113,-124,-134,-144,-152,-160,-168,-176,-183,-191,
+-199,-208,-219,-230,-243,-259,-276,-295,-316,-340,-366,-394,-423,-454,-487,-520,-555,-589,-624,-658,-692,
+-725,-756,-787,-816,-844,-870,-894,-918,-940,-962,-982,-1003,-1023,-1043,-1063,-1083,-1105,-1126,-1149,-1172,-1196,
+-1221,-1246,-1272,-1298,-1324,-1350,-1377,-1403,-1428,-1453,-1477,-1501,-1523,-1546,-1567,-1587,-1607,-1627,-1646,-1665,-1684,
+-1702,-1721,-1739,-1758,-1776,-1795,-1814,-1833,-1853,-1872,-1892,-1911,-1931,-1950,-1970,-1990,-2010,-2030,-2050,-2071,-2092,
+-2114,-2137,-2160,-2184,-2209,-2234,-2261,-2289,-2317,-2346,-2375,-2405,-2435,-2466,-2496,-2526,-2555,-2584,-2612,-2639,-2666,
+-2691,-2716,-2739,-2761,-2783,-2804,-2824,-2844,-2864,-2883,-2902,-2921,-2941,-2960,-2980,-3000,-3021,-3041,-3062,-3082,-3103,
+-3124,-3144,-3164,-3184,-3203,-3222,-3240,-3258,-3275,-3292,-3309,-3326,-3343,-3360,-3377,-3395,-3413,-3432,-3452,-3473,-3495,
+-3518,-3542,-3566,-3592,-3618,-3645,-3672,-3699,-3727,-3754,-3781,-3807,-3832,-3857,-3880,-3902,-3923,-3942,-3960,-3977,-3991,
+-4005,-4017,-4027,-4037,-4045,-4053,-4059,-4065,-4071,-4077,-4083,-4088,-4095,-4102,-4110,-4119,-4129,-4141,-4154,-4169,-4186,
+-4204,-4223,-4244,-4267,-4290,-4315,-4341,-4366,-4393,-4418,-4444,-4469,-4492,-4514,-4535,-4554,-4571,-4586,-4598,-4609,-4617,
+-4624,-4628,-4631,-4633,-4634,-4634,-4634,-4634,-4634,-4634,-4635,-4637,-4640,-4644,-4648,-4653,-4659,-4665,-4672,-4678,-4683,
+-4689,-4693,-4696,-4697,-4697,-4696,-4693,-4689,-4683,-4677,-4670,-4663,-4657,-4651,-4646,-4643,-4642,-4643,-4646,-4653,-4662,
+-4674,-4688,-4704,-4721,-4739,-4758,-4776,-4793,-4807,-4819,-4827,-4830,-4829,-4823,-4811,-4794,-4771,-4743,-4710,-4674,-4634,
+-4592,-4550,-4507,-4465,-4426,-4391,-4359,-4334,-4314,-4301,-4296,-4298,-4307,-4323,-4346,-4375,-4409,-4448,-4490,-4535,-4581,
+-4627,-4672,-4715,-4756,-4793,-4827,-4856,-4880,-4900,-4915,-4926,-4933,-4936,-4936,-4934,-4930,-4925,-4919,-4912,-4907,-4902,
+-4898,-4895,-4894,-4894,-4896,-4900,-4904,-4909,-4916,-4922,-4929,-4935,-4942,-4947,-4952,-4957,-4960,-4962,-4964,-4964,-4964,
+-4963,-4961,-4959,-4957,-4954,-4952,-4949,-4947,-4944,-4942,-4940,-4938,-4935,-4933,-4931,-4929,-4927,-4925,-4922,-4920,-4918,
+-4916,-4914,-4912,-4911,-4910,-4910,-4911,-4912,-4915,-4918,-4922,-4928,-4934,-4941,-4948,-4956,-4964,-4972,-4980,-4988,-4996,
+-5002,-5008,-5013,-5017,-5020,-5022,-5023,-5023,-5023,-5021,-5020,-5018,-5016,-5014,-5013,-5012,-5011,-5012,-5013,-5015,-5018,
+-5022,-5027,-5032,-5038,-5044,-5051,-5057,-5063,-5069,-5074,-5079,-5083,-5086,-5088,-5089,-5089,-5089,-5088,-5086,-5083,-5080,
+-5077,-5073,-5069,-5066,-5062,-5059,-5056,-5053,-5051,-5048,-5046,-5045,-5043,-5041,-5039,-5037,-5035,-5033,-5030,-5027,-5024,
+-5020,-5016,-5012,-5008,-5003,-4998,-4993,-4988,-4983,-4979,-4975,-4972,-4969,-4966,-4964,-4963,-4962,-4962,-4963,-4964,-4965,
+-4967,-4969,-4971,-4974,-4976,-4978,-4979,-4980,-4981,-4981,-4980,-4978,-4976,-4973,-4968,-4964,-4958,-4951,-4944,-4936,-4928,
+-4919,-4910,-4900,-4891,-4881,-4871,-4862,-4852,-4843,-4834,-4825,-4817,-4809,-4801,-4794,-4787,-4781,-4775,-4769,-4764,-4759,
+-4755,-4751,-4747,-4743,-4739,-4736,-4732,-4729,-4725,-4722,-4718,-4715,-4711,-4707,-4702,-4698,-4693,-4687,-4682,-4676,-4669,
+-4662,-4655,-4648,-4641,-4633,-4625,-4617,-4609,-4601,-4593,-4586,-4578,-4571,-4563,-4556,-4548,-4541,-4534,-4526,-4518,-4510,
+-4501,-4492,-4483,-4472,-4461,-4449,-4436,-4423,-4409,-4394,-4379,-4363,-4347,-4330,-4314,-4297,-4281,-4266,-4251,-4236,-4223,
+-4210,-4198,-4187,-4177,-4169,-4161,-4154,-4148,-4142,-4137,-4133,-4130,-4126,-4124,-4121,-4118,-4116,-4113,-4110,-4108,-4105,
+-4102,-4099,-4095,-4092,-4088,-4084,-4080,-4076,-4071,-4065,-4060,-4054,-4047,-4040,-4032,-4024,-4015,-4005,-3994,-3983,-3971,
+-3959,-3946,-3932,-3918,-3903,-3888,-3873,-3857,-3841,-3825,-3809,-3793,-3777,-3761,-3746,-3730,-3715,-3699,-3684,-3670,-3655,
+-3641,-3627,-3613,-3600,-3587,-3575,-3563,-3551,-3540,-3529,-3518,-3508,-3499,-3489,-3480,-3471,-3461,-3452,-3443,-3433,-3423,
+-3413,-3402,-3391,-3379,-3367,-3355,-3342,-3329,-3316,-3302,-3289,-3276,-3263,-3251,-3239,-3228,-3217,-3207,-3198,-3189,-3181,
+-3173,-3166,-3159,-3152,-3145,-3138,-3130,-3122,-3113,-3104,-3093,-3082,-3070,-3058,-3044,-3031,-3016,-3002,-2988,-2974,-2960,
+-2947,-2935,-2923,-2912,-2903,-2894,-2887,-2880,-2874,-2869,-2864,-2860,-2855,-2851,-2846,-2840,-2834,-2827,-2819,-2810,-2800,
+-2790,-2778,-2765,-2752,-2739,-2725,-2712,-2698,-2685,-2673,-2662,-2651,-2642,-2634,-2627,-2622,-2618,-2616,-2614,-2614,-2615,
+-2617,-2620,-2623,-2627,-2632,-2637,-2642,-2647,-2653,-2658,-2664,-2670,-2676,-2682,-2688,-2693,-2699,-2705,-2710,-2715,-2720,
+-2725,-2730,-2734,-2738,-2741,-2744,-2747,-2749,-2751,-2753,-2755,-2757,-2758,-2760,-2761,-2763,-2765,-2767,-2769,-2771,-2773,
+-2775,-2776,-2778,-2778,-2778,-2777,-2775,-2771,-2767,-2761,-2754,-2745,-2736,-2725,-2713,-2700,-2686,-2672,-2658,-2644,-2631,
+-2617,-2605,-2594,-2583,-2574,-2566,-2559,-2553,-2548,-2544,-2540,-2537,-2534,-2531,-2527,-2523,-2519,-2513,-2506,-2499,-2490,
+-2480,-2470,-2458,-2446,-2434,-2422,-2410,-2398,-2387,-2376,-2367,-2359,-2353,-2347,-2344,-2341,-2341,-2341,-2343,-2347,-2351,
+-2356,-2363,-2369,-2377,-2384,-2392,-2400,-2408,-2417,-2425,-2433,-2441,-2449,-2456,-2464,-2471,-2478,-2485,-2492,-2499,-2505,
+-2511,-2516,-2522,-2527,-2531,-2535,-2539,-2543,-2546,-2549,-2551,-2553,-2555,-2557,-2558,-2559,-2560,-2560,-2561,-2560,-2560,
+-2558,-2556,-2554,-2550,-2546,-2540,-2534,-2526,-2518,-2508,-2498,-2487,-2475,-2463,-2450,-2438,-2425,-2413,-2401,-2390,-2379,
+-2369,-2360,-2352,-2344,-2337,-2331,-2324,-2318,-2312,-2305,-2297,-2289,-2280,-2270,-2258,-2245,-2231,-2216,-2199,-2182,-2165,
+-2147,-2129,-2112,-2095,-2080,-2065,-2053,-2042,-2034,-2028,-2023,-2021,-2021,-2023,-2026,-2030,-2035,-2040,-2045,-2049,-2052,
+-2054,-2054,-2052,-2048,-2040,-2031,-2018,-2003,-1985,-1965,-1943,-1920,-1894,-1868,-1841,-1814,-1787,-1761,-1736,-1712,-1690,
+-1669,-1651,-1635,-1622,-1611,-1602,-1595,-1591,-1588,-1588,-1589,-1591,-1594,-1597,-1601,-1605,-1609,-1611,-1613,-1614,-1614,
+-1612,-1608,-1603,-1596,-1587,-1576,-1564,-1551,-1536,-1521,-1504,-1488,-1471,-1454,-1438,-1422,-1407,-1393,-1381,-1370,-1360,
+-1351,-1344,-1339,-1334,-1331,-1328,-1327,-1325,-1324,-1323,-1322,-1320,-1318,-1316,-1312,-1308,-1303,-1298,-1291,-1284,-1277,
+-1270,-1262,-1254,-1246,-1239,-1232,-1226,-1221,-1216,-1211,-1208,-1204,-1202,-1200,-1198,-1196,-1194,-1191,-1189,-1186,-1182,
+-1178,-1173,-1168,-1161,-1155,-1147,-1140,-1132,-1124,-1116,-1108,-1100,-1093,-1086,-1080,-1075,-1071,-1067,-1064,-1061,-1059,
+-1057,-1056,-1055,-1055,-1054,-1053,-1052,-1050,-1048,-1046,-1043,-1040,-1037,-1033,-1028,-1024,-1019,-1013,-1008,-1003,-997,
+-991,-1019,-1014,-1008,-1003,-997,-991,-985,-979,-973,-966,-959,-952,-944,-937,-929,-921,-913,-904,-896,-888,
+-879,-871,-863,-856,-849,-842,-836,-831,-827,-823,-820,-818,-817,-817,-817,-818,-820,-822,-825,-828,-831,
+-834,-836,-839,-840,-841,-841,-840,-838,-835,-830,-824,-817,-808,-797,-786,-772,-758,-742,-725,-706,-687,
+-667,-647,-626,-605,-583,-562,-540,-519,-498,-478,-459,-440,-422,-405,-389,-374,-359,-346,-333,-321,-310,
+-299,-289,-279,-270,-260,-251,-241,-232,-222,-211,-200,-188,-176,-163,-149,-134,-119,-103,-86,-69,-51,
+-33,-15,2,20,38,55,71,87,102,115,128,139,149,157,164,169,173,175,177,177,175,
+173,170,166,162,157,152,146,141,135,129,123,118,112,107,101,96,91,85,80,75,70,
+65,60,55,51,47,43,40,37,35,33,32,32,33,35,37,40,44,48,52,57,62,
+67,71,75,79,82,84,85,86,85,84,82,79,75,71,67,63,59,55,51,48,45,
+44,43,43,44,45,48,51,55,60,65,70,76,81,86,92,97,101,106,110,114,117,
+121,124,127,131,134,137,141,145,149,154,159,164,169,175,181,186,192,197,203,208,213,
+217,222,225,229,232,234,236,238,240,241,242,243,243,243,244,244,243,243,243,242,241,
+241,240,239,238,236,235,234,233,232,231,230,229,229,229,229,229,230,232,234,236,239,
+242,245,250,254,259,265,271,277,284,292,299,308,316,325,334,343,352,361,370,379,387,
+394,401,407,412,416,418,419,418,416,412,407,399,391,380,368,355,340,324,307,289,270,
+250,230,210,189,168,147,125,104,83,62,40,20,0,-20,-40,-60,-78,-97,-114,-130,-146,
+-161,-174,-187,-198,-209,-218,-226,-234,-241,-248,-254,-261,-267,-275,-283,-293,-304,-317,-331,-348,-366,
+-387,-410,-435,-462,-490,-521,-552,-584,-617,-651,-684,-717,-750,-782,-812,-842,-870,-897,-922,-947,-969,
+-991,-1012,-1033,-1052,-1072,-1091,-1111,-1130,-1150,-1171,-1193,-1215,-1237,-1261,-1285,-1309,-1334,-1359,-1385,-1410,-1435,
+-1460,-1484,-1508,-1531,-1554,-1575,-1596,-1617,-1636,-1655,-1674,-1692,-1710,-1727,-1744,-1761,-1778,-1795,-1812,-1829,-1846,
+-1863,-1880,-1898,-1915,-1933,-1951,-1969,-1987,-2006,-2025,-2045,-2064,-2085,-2106,-2128,-2151,-2174,-2198,-2223,-2249,-2276,
+-2303,-2332,-2360,-2389,-2419,-2448,-2477,-2507,-2536,-2564,-2592,-2619,-2645,-2670,-2695,-2718,-2741,-2762,-2784,-2804,-2824,
+-2844,-2863,-2882,-2902,-2921,-2941,-2961,-2981,-3001,-3022,-3043,-3064,-3085,-3106,-3127,-3147,-3168,-3188,-3207,-3226,-3244,
+-3261,-3278,-3294,-3310,-3325,-3341,-3356,-3371,-3386,-3402,-3419,-3436,-3454,-3474,-3494,-3516,-3539,-3564,-3590,-3617,-3644,
+-3673,-3703,-3733,-3763,-3793,-3822,-3851,-3879,-3906,-3932,-3955,-3977,-3997,-4015,-4031,-4045,-4056,-4066,-4073,-4079,-4084,
+-4087,-4090,-4092,-4094,-4096,-4099,-4102,-4107,-4113,-4121,-4131,-4143,-4157,-4173,-4191,-4211,-4233,-4256,-4281,-4307,-4333,
+-4359,-4386,-4412,-4437,-4461,-4483,-4504,-4522,-4539,-4553,-4565,-4575,-4583,-4589,-4593,-4596,-4597,-4598,-4598,-4597,-4597,
+-4597,-4597,-4598,-4599,-4601,-4603,-4606,-4610,-4613,-4617,-4620,-4623,-4625,-4627,-4627,-4626,-4623,-4619,-4614,-4608,-4601,
+-4593,-4585,-4576,-4568,-4561,-4554,-4550,-4547,-4546,-4547,-4551,-4558,-4566,-4577,-4589,-4603,-4618,-4632,-4647,-4660,-4671,
+-4679,-4684,-4686,-4683,-4675,-4662,-4644,-4621,-4593,-4561,-4526,-4487,-4446,-4403,-4361,-4319,-4280,-4243,-4210,-4182,-4160,
+-4144,-4135,-4132,-4137,-4150,-4168,-4194,-4225,-4261,-4301,-4344,-4390,-4437,-4484,-4530,-4575,-4618,-4657,-4693,-4724,-4752,
+-4775,-4794,-4809,-4819,-4827,-4831,-4833,-4832,-4831,-4828,-4825,-4822,-4820,-4818,-4818,-4818,-4820,-4823,-4828,-4833,-4840,
+-4847,-4855,-4864,-4872,-4880,-4888,-4895,-4901,-4906,-4911,-4915,-4917,-4919,-4919,-4919,-4918,-4917,-4915,-4912,-4909,-4906,
+-4902,-4898,-4894,-4890,-4885,-4881,-4876,-4871,-4867,-4862,-4858,-4853,-4849,-4845,-4842,-4839,-4837,-4835,-4835,-4835,-4836,
+-4839,-4842,-4847,-4852,-4858,-4865,-4873,-4881,-4890,-4899,-4907,-4916,-4924,-4932,-4939,-4945,-4950,-4955,-4958,-4961,-4963,
+-4964,-4965,-4966,-4966,-4965,-4965,-4966,-4966,-4967,-4969,-4971,-4974,-4977,-4981,-4985,-4990,-4996,-5001,-5007,-5012,-5018,
+-5023,-5027,-5031,-5034,-5036,-5038,-5039,-5039,-5038,-5037,-5036,-5033,-5031,-5028,-5026,-5023,-5021,-5018,-5016,-5014,-5013,
+-5012,-5011,-5010,-5009,-5008,-5007,-5007,-5005,-5004,-5002,-5000,-4997,-4994,-4990,-4985,-4981,-4976,-4970,-4964,-4958,-4953,
+-4947,-4941,-4936,-4931,-4927,-4923,-4919,-4917,-4915,-4913,-4912,-4912,-4911,-4912,-4912,-4913,-4913,-4913,-4913,-4913,-4912,
+-4911,-4909,-4906,-4902,-4898,-4893,-4887,-4880,-4873,-4865,-4856,-4847,-4837,-4827,-4817,-4807,-4797,-4787,-4776,-4767,-4757,
+-4748,-4739,-4730,-4722,-4715,-4708,-4701,-4695,-4690,-4684,-4680,-4675,-4671,-4668,-4665,-4662,-4659,-4656,-4654,-4651,-4649,
+-4647,-4645,-4643,-4640,-4638,-4635,-4633,-4630,-4627,-4623,-4620,-4616,-4612,-4608,-4603,-4598,-4593,-4587,-4582,-4576,-4569,
+-4563,-4556,-4549,-4541,-4534,-4526,-4517,-4508,-4499,-4490,-4480,-4470,-4459,-4448,-4436,-4424,-4412,-4399,-4386,-4372,-4359,
+-4345,-4332,-4318,-4305,-4291,-4279,-4266,-4254,-4243,-4232,-4223,-4213,-4205,-4197,-4190,-4183,-4177,-4172,-4167,-4163,-4159,
+-4155,-4151,-4147,-4144,-4140,-4136,-4132,-4128,-4124,-4120,-4115,-4110,-4105,-4100,-4094,-4089,-4083,-4077,-4070,-4063,-4056,
+-4049,-4041,-4033,-4024,-4015,-4006,-3995,-3985,-3973,-3961,-3949,-3936,-3922,-3908,-3893,-3878,-3863,-3847,-3831,-3815,-3799,
+-3783,-3767,-3751,-3735,-3719,-3703,-3687,-3672,-3657,-3641,-3626,-3611,-3597,-3582,-3568,-3553,-3539,-3525,-3511,-3497,-3484,
+-3471,-3458,-3445,-3433,-3421,-3410,-3399,-3389,-3378,-3369,-3359,-3350,-3341,-3332,-3324,-3315,-3307,-3299,-3291,-3282,-3274,
+-3266,-3258,-3250,-3242,-3234,-3226,-3218,-3210,-3203,-3195,-3188,-3180,-3173,-3166,-3159,-3152,-3145,-3138,-3130,-3123,-3115,
+-3107,-3099,-3091,-3082,-3074,-3065,-3056,-3047,-3038,-3029,-3021,-3012,-3004,-2997,-2990,-2983,-2976,-2970,-2965,-2959,-2954,
+-2949,-2944,-2939,-2933,-2928,-2922,-2915,-2908,-2900,-2891,-2882,-2872,-2861,-2849,-2837,-2825,-2812,-2799,-2786,-2773,-2761,
+-2749,-2737,-2726,-2716,-2706,-2698,-2690,-2684,-2679,-2674,-2671,-2669,-2668,-2667,-2668,-2669,-2672,-2675,-2678,-2683,-2687,
+-2693,-2699,-2705,-2711,-2718,-2725,-2732,-2739,-2745,-2752,-2758,-2764,-2769,-2774,-2778,-2782,-2785,-2787,-2789,-2790,-2790,
+-2791,-2791,-2790,-2790,-2790,-2789,-2789,-2790,-2790,-2792,-2793,-2795,-2797,-2799,-2802,-2804,-2806,-2808,-2809,-2809,-2808,
+-2807,-2804,-2799,-2793,-2786,-2778,-2768,-2757,-2745,-2732,-2719,-2705,-2691,-2677,-2663,-2650,-2638,-2626,-2616,-2606,-2597,
+-2590,-2583,-2578,-2573,-2569,-2565,-2561,-2557,-2554,-2550,-2545,-2540,-2534,-2528,-2521,-2513,-2505,-2496,-2486,-2477,-2467,
+-2458,-2449,-2441,-2433,-2426,-2421,-2416,-2413,-2411,-2410,-2411,-2413,-2417,-2421,-2426,-2433,-2440,-2447,-2456,-2464,-2472,
+-2481,-2489,-2497,-2505,-2512,-2519,-2525,-2530,-2535,-2539,-2542,-2545,-2548,-2550,-2551,-2553,-2554,-2555,-2556,-2557,-2558,
+-2559,-2561,-2563,-2565,-2567,-2570,-2572,-2575,-2577,-2580,-2582,-2583,-2584,-2584,-2583,-2581,-2579,-2575,-2569,-2563,-2555,
+-2547,-2537,-2527,-2516,-2504,-2493,-2481,-2469,-2458,-2448,-2438,-2429,-2421,-2414,-2407,-2402,-2397,-2393,-2388,-2384,-2380,
+-2375,-2369,-2362,-2354,-2344,-2332,-2319,-2305,-2288,-2270,-2251,-2231,-2210,-2189,-2168,-2148,-2128,-2110,-2094,-2079,-2067,
+-2057,-2050,-2046,-2044,-2044,-2046,-2050,-2056,-2062,-2069,-2075,-2081,-2086,-2088,-2089,-2087,-2082,-2075,-2064,-2049,-2032,
+-2011,-1988,-1962,-1935,-1905,-1875,-1844,-1813,-1782,-1753,-1725,-1699,-1676,-1655,-1637,-1622,-1610,-1601,-1595,-1591,-1590,
+-1591,-1594,-1599,-1604,-1610,-1616,-1621,-1626,-1630,-1632,-1633,-1631,-1628,-1622,-1614,-1603,-1591,-1577,-1560,-1543,-1524,
+-1504,-1483,-1463,-1442,-1422,-1402,-1383,-1366,-1350,-1335,-1323,-1311,-1302,-1294,-1288,-1283,-1280,-1278,-1276,-1275,-1275,
+-1275,-1274,-1274,-1272,-1271,-1268,-1265,-1262,-1257,-1252,-1246,-1239,-1232,-1225,-1218,-1211,-1204,-1197,-1191,-1185,-1180,
+-1176,-1172,-1169,-1167,-1165,-1163,-1161,-1160,-1159,-1157,-1155,-1153,-1150,-1147,-1143,-1138,-1133,-1127,-1120,-1113,-1106,
+-1098,-1091,-1084,-1076,-1070,-1064,-1058,-1053,-1049,-1046,-1043,-1042,-1041,-1040,-1040,-1041,-1042,-1043,-1045,-1046,-1047,
+-1048,-1049,-1049,-1049,-1048,-1047,-1045,-1042,-1039,-1036,-1032,-1028,-1024,-1019,-1032,-1028,-1024,-1020,-1015,-1011,-1006,
+-1000,-995,-989,-983,-977,-971,-964,-958,-951,-945,-938,-932,-925,-919,-913,-907,-902,-897,-892,-888,-885,
+-882,-879,-878,-877,-876,-876,-877,-878,-879,-881,-883,-885,-886,-888,-889,-890,-890,-889,-888,-885,-882,
+-878,-872,-865,-858,-848,-838,-827,-815,-802,-787,-772,-757,-741,-724,-707,-690,-672,-655,-637,-620,-603,
+-587,-570,-554,-539,-524,-510,-496,-482,-469,-457,-444,-432,-420,-408,-396,-385,-372,-360,-348,-334,-321,
+-307,-292,-277,-261,-244,-227,-209,-190,-171,-151,-132,-111,-91,-71,-51,-32,-13,5,22,39,54,
+69,82,93,104,112,120,126,130,133,135,136,136,135,133,130,127,123,119,115,110,106,
+101,96,91,86,81,76,71,65,59,53,47,41,34,27,20,14,7,0,-5,-11,-16,
+-21,-25,-28,-31,-32,-33,-33,-32,-30,-27,-24,-20,-16,-12,-8,-4,-1,1,4,6,7,
+7,6,5,2,0,-3,-7,-11,-15,-19,-23,-26,-29,-31,-33,-33,-33,-32,-30,-28,-24,
+-20,-16,-11,-5,0,5,11,16,21,26,31,35,39,43,47,51,54,57,61,65,69,
+73,78,83,89,94,101,107,114,121,128,135,142,148,155,160,166,171,175,178,181,183,
+185,185,185,185,183,182,180,177,175,172,169,166,163,161,158,156,154,153,151,150,150,
+150,150,151,152,153,155,157,159,162,165,168,171,175,179,184,188,193,198,204,210,216,
+222,229,236,243,250,258,265,272,280,286,293,299,304,309,312,315,317,317,316,314,311,
+306,299,292,283,273,261,249,235,221,206,190,173,156,139,121,102,84,65,47,28,9,
+-9,-28,-47,-66,-85,-103,-121,-139,-157,-174,-191,-207,-222,-237,-251,-264,-276,-288,-299,-309,-318,
+-328,-337,-346,-355,-364,-374,-385,-396,-409,-423,-438,-456,-474,-495,-517,-540,-565,-591,-619,-647,-677,
+-706,-736,-767,-797,-826,-855,-884,-911,-938,-964,-989,-1013,-1036,-1058,-1079,-1100,-1121,-1141,-1161,-1182,-1202,
+-1223,-1243,-1265,-1287,-1309,-1331,-1354,-1377,-1401,-1424,-1448,-1471,-1494,-1517,-1540,-1562,-1583,-1604,-1624,-1644,-1663,
+-1682,-1700,-1718,-1735,-1752,-1769,-1785,-1802,-1818,-1835,-1851,-1868,-1884,-1901,-1918,-1935,-1952,-1970,-1988,-2005,-2023,
+-2042,-2061,-2080,-2099,-2119,-2140,-2161,-2182,-2205,-2227,-2251,-2275,-2300,-2325,-2351,-2377,-2404,-2430,-2457,-2484,-2511,
+-2537,-2563,-2589,-2614,-2638,-2662,-2686,-2708,-2730,-2752,-2772,-2793,-2813,-2833,-2853,-2872,-2892,-2912,-2932,-2952,-2973,
+-2994,-3015,-3036,-3057,-3079,-3100,-3121,-3141,-3162,-3181,-3200,-3219,-3236,-3253,-3269,-3284,-3299,-3313,-3327,-3341,-3354,
+-3368,-3382,-3397,-3413,-3429,-3447,-3467,-3488,-3510,-3534,-3560,-3587,-3616,-3646,-3677,-3709,-3741,-3774,-3806,-3838,-3869,
+-3898,-3926,-3952,-3976,-3997,-4016,-4032,-4045,-4056,-4064,-4069,-4073,-4075,-4075,-4074,-4072,-4070,-4068,-4066,-4066,-4067,
+-4070,-4075,-4082,-4092,-4104,-4118,-4135,-4155,-4176,-4200,-4224,-4250,-4277,-4304,-4331,-4357,-4383,-4407,-4429,-4449,-4467,
+-4483,-4497,-4508,-4516,-4523,-4527,-4529,-4530,-4530,-4528,-4526,-4524,-4521,-4519,-4517,-4515,-4514,-4514,-4514,-4515,-4516,
+-4518,-4520,-4522,-4524,-4525,-4526,-4526,-4525,-4523,-4521,-4517,-4513,-4507,-4502,-4496,-4490,-4484,-4479,-4474,-4471,-4469,
+-4468,-4469,-4471,-4476,-4481,-4488,-4496,-4504,-4513,-4521,-4528,-4534,-4538,-4540,-4539,-4534,-4527,-4515,-4499,-4480,-4457,
+-4430,-4400,-4368,-4334,-4299,-4263,-4228,-4194,-4162,-4132,-4107,-4086,-4069,-4059,-4053,-4054,-4061,-4073,-4091,-4114,-4141,
+-4173,-4208,-4246,-4286,-4326,-4367,-4408,-4447,-4485,-4520,-4552,-4582,-4608,-4630,-4650,-4666,-4679,-4689,-4697,-4703,-4707,
+-4710,-4712,-4713,-4714,-4716,-4718,-4720,-4723,-4727,-4732,-4738,-4744,-4751,-4759,-4767,-4774,-4782,-4790,-4797,-4804,-4810,
+-4815,-4820,-4824,-4827,-4830,-4831,-4832,-4833,-4833,-4832,-4831,-4830,-4829,-4827,-4825,-4823,-4821,-4819,-4816,-4813,-4811,
+-4808,-4805,-4802,-4799,-4796,-4793,-4791,-4788,-4786,-4785,-4783,-4783,-4783,-4784,-4785,-4788,-4791,-4794,-4799,-4804,-4810,
+-4816,-4823,-4830,-4837,-4844,-4851,-4858,-4865,-4871,-4877,-4883,-4888,-4893,-4897,-4902,-4905,-4909,-4913,-4916,-4919,-4923,
+-4926,-4930,-4933,-4937,-4941,-4945,-4950,-4954,-4958,-4962,-4966,-4969,-4972,-4975,-4977,-4979,-4980,-4980,-4980,-4980,-4979,
+-4977,-4975,-4973,-4971,-4969,-4967,-4964,-4962,-4960,-4959,-4957,-4956,-4955,-4955,-4954,-4954,-4954,-4953,-4953,-4953,-4952,
+-4951,-4950,-4948,-4946,-4943,-4940,-4936,-4932,-4928,-4924,-4919,-4914,-4909,-4904,-4900,-4895,-4891,-4887,-4884,-4881,-4878,
+-4875,-4873,-4872,-4870,-4869,-4868,-4866,-4865,-4863,-4861,-4859,-4856,-4853,-4849,-4844,-4839,-4833,-4827,-4820,-4812,-4804,
+-4796,-4787,-4778,-4769,-4759,-4750,-4741,-4731,-4723,-4714,-4706,-4698,-4690,-4683,-4676,-4669,-4663,-4657,-4652,-4647,-4642,
+-4637,-4633,-4628,-4624,-4620,-4616,-4612,-4608,-4604,-4600,-4596,-4592,-4588,-4584,-4580,-4576,-4572,-4569,-4565,-4562,-4558,
+-4555,-4552,-4549,-4546,-4544,-4541,-4538,-4535,-4532,-4529,-4526,-4522,-4519,-4514,-4510,-4505,-4499,-4493,-4486,-4478,-4470,
+-4462,-4452,-4442,-4431,-4420,-4408,-4396,-4383,-4370,-4357,-4344,-4331,-4318,-4305,-4293,-4280,-4269,-4258,-4248,-4238,-4229,
+-4221,-4214,-4208,-4202,-4196,-4192,-4188,-4184,-4180,-4177,-4174,-4171,-4167,-4164,-4160,-4156,-4152,-4147,-4142,-4136,-4130,
+-4124,-4117,-4110,-4102,-4094,-4085,-4076,-4067,-4058,-4048,-4038,-4028,-4017,-4006,-3995,-3984,-3972,-3959,-3947,-3934,-3921,
+-3907,-3893,-3878,-3864,-3849,-3834,-3819,-3804,-3789,-3774,-3759,-3745,-3730,-3716,-3702,-3689,-3676,-3663,-3651,-3639,-3627,
+-3615,-3603,-3592,-3580,-3568,-3557,-3545,-3533,-3521,-3509,-3497,-3484,-3472,-3460,-3447,-3435,-3422,-3411,-3399,-3387,-3376,
+-3366,-3355,-3346,-3336,-3327,-3319,-3311,-3303,-3296,-3289,-3282,-3275,-3268,-3261,-3254,-3247,-3240,-3233,-3225,-3217,-3209,
+-3201,-3193,-3184,-3175,-3166,-3157,-3147,-3138,-3129,-3120,-3111,-3102,-3093,-3085,-3077,-3069,-3062,-3055,-3048,-3042,-3036,
+-3031,-3026,-3021,-3016,-3012,-3008,-3004,-3000,-2996,-2992,-2988,-2983,-2979,-2974,-2969,-2963,-2956,-2950,-2942,-2934,-2926,
+-2917,-2908,-2898,-2888,-2878,-2868,-2857,-2846,-2836,-2825,-2815,-2806,-2796,-2787,-2779,-2771,-2764,-2757,-2751,-2746,-2741,
+-2738,-2735,-2732,-2731,-2730,-2730,-2731,-2732,-2735,-2738,-2741,-2745,-2750,-2756,-2762,-2768,-2775,-2782,-2789,-2796,-2802,
+-2809,-2815,-2821,-2826,-2830,-2834,-2837,-2838,-2839,-2839,-2839,-2837,-2835,-2832,-2829,-2825,-2822,-2818,-2815,-2812,-2809,
+-2808,-2807,-2806,-2807,-2808,-2809,-2812,-2814,-2817,-2820,-2823,-2826,-2828,-2829,-2830,-2829,-2827,-2824,-2820,-2814,-2807,
+-2799,-2790,-2779,-2768,-2756,-2744,-2731,-2718,-2706,-2694,-2682,-2671,-2661,-2652,-2643,-2636,-2629,-2623,-2618,-2613,-2608,
+-2604,-2600,-2596,-2591,-2586,-2581,-2575,-2569,-2562,-2555,-2547,-2539,-2531,-2522,-2514,-2505,-2497,-2490,-2483,-2477,-2472,
+-2468,-2466,-2464,-2464,-2465,-2467,-2470,-2474,-2479,-2485,-2491,-2498,-2505,-2512,-2519,-2525,-2532,-2537,-2542,-2546,-2550,
+-2553,-2554,-2555,-2556,-2555,-2555,-2553,-2552,-2550,-2548,-2546,-2544,-2543,-2542,-2541,-2540,-2540,-2540,-2541,-2541,-2542,
+-2543,-2543,-2543,-2543,-2542,-2541,-2538,-2535,-2530,-2525,-2519,-2511,-2503,-2494,-2485,-2475,-2465,-2455,-2446,-2437,-2428,
+-2420,-2413,-2408,-2403,-2400,-2397,-2395,-2394,-2394,-2394,-2394,-2393,-2392,-2390,-2387,-2382,-2375,-2367,-2356,-2343,-2328,
+-2312,-2293,-2272,-2250,-2228,-2204,-2181,-2158,-2135,-2114,-2095,-2077,-2062,-2049,-2038,-2030,-2025,-2022,-2022,-2023,-2026,
+-2030,-2035,-2040,-2045,-2049,-2051,-2052,-2051,-2047,-2040,-2031,-2019,-2003,-1986,-1965,-1943,-1918,-1892,-1865,-1838,-1811,
+-1785,-1759,-1735,-1713,-1693,-1676,-1662,-1650,-1641,-1635,-1631,-1630,-1631,-1634,-1638,-1642,-1648,-1653,-1658,-1662,-1665,
+-1666,-1665,-1662,-1657,-1649,-1639,-1626,-1611,-1594,-1575,-1554,-1532,-1508,-1484,-1460,-1436,-1412,-1389,-1367,-1347,-1328,
+-1310,-1294,-1281,-1269,-1258,-1250,-1243,-1238,-1234,-1231,-1228,-1227,-1225,-1224,-1222,-1221,-1218,-1216,-1212,-1208,-1203,
+-1198,-1191,-1185,-1177,-1170,-1162,-1154,-1147,-1140,-1133,-1126,-1120,-1115,-1111,-1107,-1104,-1102,-1100,-1099,-1098,-1097,
+-1097,-1096,-1096,-1095,-1094,-1092,-1090,-1087,-1084,-1080,-1076,-1071,-1066,-1061,-1056,-1050,-1045,-1040,-1035,-1031,-1027,
+-1024,-1022,-1020,-1019,-1019,-1019,-1020,-1021,-1023,-1025,-1027,-1030,-1033,-1035,-1037,-1039,-1041,-1042,-1043,-1043,-1043,
+-1043,-1041,-1040,-1037,-1035,-1032,-1064,-1062,-1059,-1056,-1052,-1048,-1044,-1039,-1033,-1028,-1022,-1016,-1010,-1004,-998,
+-992,-986,-981,-975,-970,-966,-961,-957,-954,-951,-948,-946,-944,-943,-942,-941,-941,-941,-942,-942,-942,
+-943,-943,-943,-943,-942,-941,-939,-936,-933,-929,-925,-920,-914,-907,-900,-892,-883,-874,-865,-855,-845,
+-835,-824,-813,-803,-792,-781,-771,-761,-751,-741,-731,-721,-712,-702,-693,-683,-674,-664,-654,-644,-634,
+-623,-611,-599,-587,-574,-560,-545,-530,-514,-496,-479,-460,-440,-420,-399,-377,-355,-332,-309,-285,-261,
+-237,-213,-189,-165,-142,-119,-97,-75,-55,-36,-17,0,15,29,42,53,63,72,79,85,90,
+93,96,97,98,97,96,95,93,91,88,85,81,78,74,70,66,62,57,52,47,41,
+35,28,22,14,7,0,-9,-17,-26,-34,-43,-51,-59,-67,-74,-81,-87,-92,-96,-100,-103,
+-105,-107,-108,-109,-109,-109,-108,-108,-108,-108,-108,-109,-110,-111,-113,-115,-118,-121,-124,-127,-131,
+-134,-137,-140,-143,-145,-146,-147,-147,-146,-145,-143,-140,-137,-133,-128,-124,-119,-113,-108,-102,-97,
+-91,-86,-80,-75,-70,-65,-60,-54,-49,-43,-37,-31,-25,-18,-10,-3,5,13,22,32,41,
+51,60,69,78,87,94,101,108,113,117,120,122,123,123,122,120,117,113,109,104,98,
+93,87,82,77,72,67,63,60,57,56,55,55,55,56,59,61,65,69,73,78,83,
+88,94,100,105,111,117,123,129,135,141,147,153,159,164,170,175,181,186,190,195,199,
+202,205,207,209,209,209,208,206,202,198,192,185,177,168,158,148,136,123,110,96,82,
+68,53,38,23,8,-6,-21,-36,-50,-65,-79,-93,-107,-121,-135,-149,-163,-177,-191,-205,-220,
+-234,-249,-263,-278,-292,-307,-322,-336,-351,-365,-379,-393,-407,-421,-435,-449,-463,-477,-492,-507,-522,
+-538,-555,-572,-590,-609,-629,-650,-671,-693,-716,-740,-764,-789,-814,-839,-864,-890,-915,-940,-965,-990,
+-1015,-1039,-1063,-1086,-1110,-1133,-1155,-1178,-1200,-1223,-1245,-1268,-1290,-1313,-1336,-1359,-1381,-1404,-1427,-1450,-1473,
+-1496,-1518,-1540,-1562,-1584,-1604,-1625,-1645,-1664,-1684,-1702,-1720,-1738,-1755,-1772,-1789,-1806,-1822,-1839,-1855,-1872,
+-1888,-1905,-1922,-1939,-1956,-1973,-1991,-2008,-2026,-2044,-2061,-2079,-2097,-2116,-2134,-2153,-2171,-2190,-2209,-2229,-2248,
+-2268,-2289,-2309,-2330,-2352,-2373,-2395,-2418,-2440,-2463,-2485,-2508,-2531,-2554,-2576,-2599,-2621,-2643,-2665,-2686,-2707,
+-2728,-2748,-2769,-2789,-2809,-2829,-2849,-2869,-2890,-2910,-2931,-2952,-2973,-2994,-3015,-3037,-3058,-3080,-3101,-3122,-3142,
+-3162,-3182,-3201,-3219,-3236,-3253,-3269,-3285,-3300,-3315,-3329,-3343,-3357,-3372,-3387,-3403,-3420,-3438,-3457,-3478,-3500,
+-3524,-3549,-3576,-3604,-3634,-3665,-3696,-3729,-3761,-3793,-3825,-3856,-3886,-3914,-3940,-3964,-3986,-4004,-4020,-4033,-4043,
+-4051,-4055,-4057,-4057,-4055,-4052,-4047,-4042,-4037,-4032,-4028,-4025,-4024,-4024,-4027,-4033,-4040,-4051,-4064,-4080,-4098,
+-4119,-4141,-4165,-4189,-4215,-4241,-4266,-4291,-4314,-4336,-4356,-4374,-4390,-4404,-4414,-4423,-4428,-4432,-4433,-4433,-4430,
+-4427,-4423,-4417,-4412,-4407,-4401,-4397,-4393,-4390,-4387,-4386,-4386,-4386,-4388,-4390,-4392,-4395,-4398,-4401,-4403,-4406,
+-4407,-4408,-4408,-4407,-4406,-4404,-4401,-4398,-4395,-4392,-4388,-4385,-4382,-4380,-4378,-4377,-4376,-4376,-4376,-4377,-4378,
+-4379,-4379,-4379,-4378,-4375,-4371,-4366,-4358,-4349,-4337,-4323,-4307,-4288,-4268,-4247,-4224,-4201,-4177,-4153,-4130,-4109,
+-4089,-4072,-4057,-4046,-4038,-4034,-4034,-4038,-4046,-4058,-4074,-4093,-4116,-4141,-4169,-4198,-4229,-4260,-4292,-4323,-4354,
+-4384,-4412,-4439,-4464,-4486,-4507,-4525,-4542,-4556,-4569,-4580,-4589,-4598,-4605,-4612,-4618,-4624,-4629,-4635,-4641,-4646,
+-4652,-4659,-4665,-4671,-4677,-4684,-4690,-4696,-4701,-4707,-4711,-4716,-4719,-4723,-4726,-4728,-4730,-4732,-4733,-4734,-4736,
+-4737,-4738,-4739,-4741,-4743,-4744,-4746,-4748,-4750,-4753,-4755,-4757,-4759,-4761,-4763,-4764,-4765,-4766,-4767,-4767,-4767,
+-4767,-4767,-4766,-4765,-4765,-4764,-4764,-4764,-4764,-4764,-4765,-4767,-4768,-4770,-4773,-4776,-4780,-4783,-4788,-4792,-4797,
+-4802,-4807,-4812,-4818,-4823,-4829,-4834,-4839,-4845,-4850,-4856,-4861,-4867,-4872,-4877,-4882,-4887,-4892,-4896,-4900,-4904,
+-4908,-4912,-4915,-4917,-4920,-4921,-4923,-4924,-4924,-4924,-4924,-4923,-4922,-4921,-4919,-4918,-4916,-4914,-4913,-4911,-4910,
+-4908,-4907,-4906,-4904,-4903,-4903,-4902,-4901,-4900,-4899,-4898,-4897,-4895,-4894,-4892,-4890,-4887,-4885,-4882,-4879,-4876,
+-4873,-4870,-4866,-4863,-4860,-4857,-4855,-4853,-4851,-4849,-4847,-4846,-4845,-4845,-4844,-4844,-4843,-4843,-4842,-4841,-4839,
+-4837,-4835,-4832,-4828,-4824,-4819,-4814,-4807,-4800,-4793,-4785,-4776,-4767,-4758,-4748,-4738,-4729,-4719,-4709,-4700,-4691,
+-4682,-4674,-4666,-4659,-4652,-4646,-4640,-4634,-4629,-4624,-4620,-4615,-4611,-4607,-4603,-4599,-4595,-4591,-4587,-4582,-4578,
+-4573,-4568,-4563,-4558,-4552,-4547,-4541,-4535,-4530,-4524,-4519,-4513,-4508,-4503,-4498,-4494,-4489,-4485,-4482,-4478,-4474,
+-4471,-4468,-4465,-4461,-4458,-4454,-4450,-4446,-4442,-4437,-4431,-4425,-4419,-4412,-4404,-4396,-4387,-4378,-4368,-4358,-4347,
+-4337,-4326,-4315,-4305,-4294,-4284,-4274,-4265,-4256,-4248,-4240,-4233,-4227,-4221,-4216,-4212,-4208,-4205,-4202,-4200,-4197,
+-4195,-4193,-4191,-4188,-4186,-4183,-4180,-4176,-4171,-4167,-4161,-4155,-4148,-4141,-4133,-4124,-4115,-4106,-4095,-4085,-4074,
+-4062,-4050,-4037,-4024,-4011,-3997,-3983,-3969,-3954,-3939,-3924,-3908,-3893,-3877,-3861,-3845,-3829,-3814,-3798,-3783,-3768,
+-3753,-3739,-3725,-3712,-3700,-3688,-3676,-3665,-3655,-3645,-3636,-3627,-3618,-3609,-3601,-3593,-3584,-3576,-3567,-3558,-3549,
+-3539,-3529,-3519,-3508,-3497,-3486,-3475,-3463,-3451,-3440,-3428,-3416,-3405,-3394,-3383,-3372,-3362,-3352,-3343,-3333,-3324,
+-3315,-3306,-3297,-3288,-3279,-3270,-3260,-3250,-3240,-3229,-3219,-3207,-3195,-3183,-3170,-3157,-3144,-3131,-3118,-3105,-3092,
+-3080,-3067,-3056,-3045,-3035,-3026,-3017,-3010,-3003,-2998,-2993,-2989,-2986,-2984,-2982,-2981,-2980,-2980,-2979,-2979,-2979,
+-2978,-2977,-2976,-2975,-2973,-2970,-2967,-2963,-2958,-2953,-2947,-2941,-2934,-2927,-2920,-2912,-2904,-2897,-2889,-2881,-2873,
+-2866,-2859,-2852,-2846,-2839,-2834,-2828,-2823,-2819,-2815,-2811,-2808,-2805,-2803,-2801,-2800,-2800,-2799,-2800,-2801,-2803,
+-2805,-2809,-2812,-2817,-2822,-2828,-2835,-2842,-2849,-2857,-2865,-2873,-2881,-2888,-2895,-2902,-2908,-2913,-2917,-2919,-2921,
+-2922,-2921,-2919,-2917,-2913,-2908,-2902,-2896,-2890,-2883,-2877,-2870,-2864,-2858,-2853,-2849,-2846,-2843,-2842,-2841,-2841,
+-2842,-2843,-2845,-2848,-2850,-2852,-2854,-2855,-2856,-2856,-2856,-2854,-2851,-2847,-2843,-2837,-2831,-2823,-2815,-2807,-2798,
+-2789,-2780,-2771,-2762,-2753,-2745,-2738,-2730,-2724,-2718,-2712,-2706,-2701,-2696,-2691,-2686,-2681,-2676,-2670,-2663,-2656,
+-2648,-2640,-2631,-2621,-2611,-2601,-2590,-2579,-2569,-2558,-2548,-2538,-2529,-2521,-2513,-2507,-2502,-2498,-2495,-2493,-2493,
+-2493,-2495,-2498,-2501,-2505,-2509,-2514,-2519,-2523,-2528,-2532,-2536,-2540,-2543,-2545,-2546,-2547,-2547,-2546,-2545,-2543,
+-2540,-2537,-2534,-2530,-2526,-2522,-2517,-2513,-2507,-2502,-2497,-2491,-2485,-2478,-2471,-2464,-2456,-2447,-2438,-2429,-2419,
+-2408,-2397,-2386,-2375,-2365,-2354,-2344,-2334,-2326,-2318,-2312,-2307,-2304,-2302,-2302,-2304,-2307,-2311,-2316,-2323,-2330,
+-2338,-2345,-2353,-2359,-2365,-2368,-2371,-2370,-2368,-2363,-2355,-2345,-2332,-2316,-2298,-2277,-2255,-2231,-2206,-2180,-2154,
+-2128,-2103,-2079,-2056,-2035,-2017,-2000,-1986,-1975,-1966,-1959,-1954,-1952,-1950,-1950,-1951,-1952,-1953,-1953,-1953,-1951,
+-1948,-1943,-1937,-1928,-1918,-1906,-1892,-1877,-1861,-1843,-1825,-1807,-1789,-1772,-1756,-1741,-1728,-1716,-1707,-1700,-1695,
+-1692,-1691,-1692,-1694,-1698,-1703,-1708,-1714,-1720,-1725,-1729,-1731,-1732,-1731,-1727,-1722,-1713,-1702,-1689,-1673,-1654,
+-1633,-1611,-1587,-1561,-1534,-1507,-1480,-1453,-1426,-1400,-1375,-1352,-1330,-1310,-1291,-1275,-1260,-1247,-1237,-1227,-1220,
+-1213,-1208,-1203,-1200,-1196,-1193,-1190,-1187,-1184,-1180,-1175,-1170,-1165,-1159,-1152,-1145,-1137,-1129,-1121,-1113,-1105,
+-1097,-1090,-1083,-1076,-1070,-1065,-1060,-1057,-1053,-1051,-1049,-1047,-1046,-1046,-1045,-1045,-1045,-1045,-1044,-1044,-1043,
+-1042,-1041,-1039,-1037,-1035,-1033,-1030,-1028,-1025,-1023,-1021,-1019,-1018,-1017,-1016,-1016,-1016,-1017,-1019,-1021,-1023,
+-1026,-1029,-1033,-1037,-1040,-1044,-1048,-1052,-1055,-1058,-1061,-1063,-1065,-1067,-1067,-1067,-1067,-1066,-1064,-1120,-1118,
+-1116,-1114,-1110,-1106,-1102,-1096,-1091,-1085,-1079,-1072,-1066,-1059,-1053,-1047,-1041,-1035,-1030,-1025,-1021,-1017,-1014,
+-1012,-1010,-1008,-1007,-1007,-1007,-1007,-1007,-1008,-1008,-1009,-1009,-1009,-1008,-1007,-1006,-1003,-1001,-997,-993,-988,
+-982,-975,-968,-961,-953,-945,-936,-927,-919,-910,-901,-893,-885,-878,-871,-865,-859,-854,-849,-845,-842,
+-838,-835,-832,-830,-827,-824,-821,-817,-812,-807,-801,-794,-786,-776,-766,-754,-741,-726,-710,-692,-674,
+-654,-632,-610,-586,-562,-537,-511,-484,-457,-430,-402,-374,-347,-319,-292,-266,-240,-215,-190,-167,-144,
+-123,-103,-84,-66,-49,-34,-21,-8,2,12,21,29,35,41,45,49,52,54,55,56,56,
+56,55,53,52,49,47,44,40,36,32,27,22,16,9,2,-4,-12,-20,-29,-38,-48,
+-57,-67,-77,-87,-97,-107,-116,-125,-134,-143,-151,-158,-165,-172,-179,-185,-190,-195,-200,-205,-210,
+-215,-219,-224,-228,-233,-238,-242,-247,-251,-256,-260,-264,-268,-271,-274,-276,-278,-280,-280,-280,-280,
+-279,-277,-275,-272,-269,-265,-261,-256,-252,-247,-242,-237,-231,-226,-221,-215,-210,-204,-198,-192,-186,
+-179,-172,-165,-157,-148,-139,-129,-119,-108,-97,-86,-75,-63,-52,-40,-30,-19,-10,-1,6,13,
+19,23,26,28,29,28,26,23,19,14,8,2,-3,-10,-17,-23,-29,-35,-40,-44,-47,
+-49,-51,-51,-51,-49,-46,-43,-38,-33,-27,-21,-14,-7,0,8,16,24,31,39,47,54,
+61,68,75,81,87,92,97,102,106,109,112,114,115,116,115,114,112,109,105,100,94,
+86,78,68,58,47,34,22,8,-5,-19,-34,-49,-63,-78,-92,-106,-120,-133,-146,-158,-170,
+-181,-191,-201,-211,-221,-230,-239,-249,-258,-268,-278,-288,-299,-311,-323,-336,-349,-364,-378,-394,-410,
+-426,-443,-461,-479,-497,-515,-534,-553,-571,-590,-609,-628,-647,-666,-685,-703,-722,-741,-760,-779,-798,
+-817,-836,-855,-875,-895,-915,-935,-955,-976,-997,-1018,-1039,-1061,-1083,-1106,-1128,-1151,-1175,-1198,-1222,-1246,
+-1271,-1296,-1321,-1346,-1371,-1396,-1421,-1446,-1471,-1495,-1520,-1544,-1567,-1590,-1613,-1634,-1656,-1676,-1697,-1716,-1735,
+-1754,-1771,-1789,-1806,-1823,-1839,-1856,-1872,-1888,-1904,-1920,-1937,-1953,-1969,-1986,-2003,-2020,-2037,-2054,-2072,-2089,
+-2106,-2124,-2141,-2159,-2176,-2194,-2211,-2229,-2246,-2263,-2281,-2298,-2315,-2333,-2351,-2368,-2386,-2405,-2423,-2441,-2460,
+-2479,-2498,-2517,-2537,-2556,-2576,-2595,-2615,-2635,-2654,-2674,-2694,-2714,-2733,-2753,-2773,-2793,-2812,-2832,-2853,-2873,
+-2893,-2914,-2934,-2955,-2976,-2997,-3018,-3039,-3060,-3081,-3102,-3122,-3142,-3162,-3181,-3199,-3217,-3235,-3252,-3268,-3285,
+-3301,-3316,-3332,-3348,-3364,-3381,-3398,-3416,-3435,-3456,-3477,-3499,-3523,-3549,-3575,-3603,-3632,-3661,-3692,-3723,-3754,
+-3785,-3815,-3845,-3874,-3901,-3926,-3950,-3971,-3989,-4005,-4018,-4028,-4036,-4040,-4043,-4043,-4041,-4037,-4032,-4027,-4020,
+-4014,-4008,-4003,-3999,-3997,-3996,-3997,-4001,-4008,-4016,-4027,-4040,-4056,-4073,-4092,-4112,-4133,-4155,-4177,-4198,-4219,
+-4238,-4256,-4273,-4288,-4300,-4310,-4318,-4324,-4327,-4328,-4328,-4325,-4321,-4316,-4310,-4304,-4297,-4291,-4285,-4279,-4274,
+-4270,-4267,-4265,-4264,-4264,-4266,-4268,-4270,-4274,-4277,-4281,-4285,-4288,-4291,-4294,-4295,-4296,-4297,-4296,-4294,-4292,
+-4289,-4285,-4280,-4275,-4270,-4264,-4258,-4252,-4246,-4240,-4234,-4228,-4222,-4216,-4210,-4203,-4197,-4190,-4182,-4174,-4166,
+-4157,-4147,-4136,-4125,-4113,-4101,-4089,-4077,-4065,-4053,-4042,-4032,-4023,-4015,-4009,-4006,-4004,-4005,-4008,-4013,-4021,
+-4032,-4044,-4059,-4077,-4096,-4116,-4138,-4161,-4185,-4210,-4234,-4259,-4283,-4307,-4330,-4352,-4373,-4393,-4412,-4429,-4446,
+-4461,-4475,-4488,-4501,-4512,-4523,-4533,-4543,-4552,-4561,-4569,-4577,-4584,-4592,-4598,-4605,-4611,-4616,-4621,-4626,-4630,
+-4633,-4636,-4639,-4641,-4643,-4644,-4645,-4646,-4646,-4647,-4648,-4649,-4650,-4652,-4654,-4657,-4660,-4663,-4667,-4672,-4676,
+-4682,-4687,-4693,-4698,-4704,-4710,-4715,-4720,-4725,-4729,-4733,-4737,-4739,-4742,-4743,-4744,-4745,-4745,-4745,-4744,-4743,
+-4742,-4742,-4741,-4740,-4739,-4738,-4738,-4738,-4738,-4739,-4740,-4742,-4744,-4746,-4749,-4752,-4755,-4759,-4763,-4767,-4772,
+-4776,-4781,-4786,-4791,-4796,-4801,-4806,-4810,-4815,-4820,-4824,-4828,-4832,-4836,-4840,-4843,-4846,-4849,-4851,-4853,-4855,
+-4856,-4857,-4858,-4859,-4859,-4860,-4860,-4860,-4859,-4859,-4859,-4858,-4858,-4857,-4857,-4856,-4855,-4854,-4854,-4853,-4851,
+-4850,-4849,-4847,-4846,-4844,-4842,-4840,-4838,-4835,-4833,-4831,-4828,-4826,-4824,-4822,-4820,-4819,-4818,-4817,-4817,-4816,
+-4817,-4817,-4818,-4819,-4820,-4822,-4823,-4825,-4826,-4827,-4828,-4829,-4829,-4828,-4827,-4825,-4823,-4819,-4815,-4810,-4804,
+-4797,-4789,-4781,-4772,-4763,-4752,-4742,-4731,-4720,-4709,-4698,-4687,-4676,-4665,-4655,-4645,-4636,-4627,-4619,-4611,-4604,
+-4598,-4592,-4586,-4581,-4576,-4572,-4568,-4564,-4561,-4557,-4554,-4550,-4547,-4543,-4539,-4535,-4530,-4526,-4521,-4515,-4510,
+-4504,-4498,-4491,-4484,-4478,-4471,-4464,-4457,-4450,-4442,-4435,-4429,-4422,-4415,-4409,-4402,-4396,-4390,-4384,-4378,-4372,
+-4366,-4361,-4355,-4349,-4343,-4337,-4331,-4325,-4319,-4313,-4306,-4300,-4294,-4287,-4281,-4275,-4268,-4262,-4257,-4251,-4246,
+-4241,-4237,-4233,-4229,-4226,-4223,-4220,-4218,-4216,-4215,-4213,-4212,-4211,-4210,-4209,-4208,-4207,-4205,-4203,-4201,-4198,
+-4195,-4191,-4187,-4182,-4176,-4170,-4163,-4156,-4147,-4138,-4129,-4118,-4107,-4095,-4083,-4070,-4056,-4042,-4027,-4012,-3997,
+-3981,-3964,-3948,-3931,-3914,-3897,-3880,-3863,-3847,-3831,-3815,-3799,-3784,-3770,-3756,-3743,-3731,-3719,-3707,-3697,-3687,
+-3677,-3668,-3660,-3651,-3643,-3635,-3627,-3619,-3611,-3602,-3594,-3585,-3575,-3565,-3555,-3544,-3533,-3522,-3510,-3498,-3485,
+-3473,-3460,-3447,-3435,-3422,-3410,-3398,-3386,-3374,-3362,-3350,-3339,-3327,-3316,-3304,-3292,-3280,-3268,-3255,-3242,-3229,
+-3215,-3200,-3185,-3170,-3154,-3137,-3120,-3104,-3087,-3070,-3053,-3037,-3021,-3006,-2992,-2979,-2967,-2956,-2946,-2938,-2932,
+-2926,-2922,-2920,-2918,-2918,-2919,-2921,-2924,-2927,-2931,-2936,-2940,-2945,-2949,-2953,-2957,-2960,-2962,-2964,-2966,-2966,
+-2966,-2965,-2964,-2962,-2959,-2956,-2952,-2948,-2944,-2940,-2936,-2931,-2927,-2922,-2918,-2913,-2909,-2905,-2901,-2898,-2894,
+-2891,-2888,-2885,-2882,-2879,-2877,-2875,-2873,-2872,-2872,-2872,-2872,-2874,-2876,-2879,-2883,-2887,-2893,-2899,-2906,-2914,
+-2922,-2931,-2940,-2949,-2959,-2968,-2977,-2985,-2992,-2999,-3004,-3009,-3012,-3014,-3014,-3013,-3010,-3006,-3001,-2994,-2987,
+-2978,-2969,-2960,-2950,-2941,-2931,-2922,-2914,-2906,-2899,-2893,-2888,-2884,-2881,-2878,-2877,-2877,-2877,-2878,-2879,-2880,
+-2882,-2883,-2885,-2886,-2886,-2886,-2886,-2884,-2883,-2880,-2877,-2873,-2869,-2865,-2860,-2855,-2849,-2844,-2838,-2833,-2827,
+-2821,-2816,-2811,-2805,-2800,-2794,-2788,-2782,-2776,-2769,-2762,-2754,-2745,-2736,-2726,-2715,-2704,-2692,-2679,-2666,-2653,
+-2639,-2626,-2612,-2599,-2586,-2574,-2562,-2551,-2541,-2533,-2525,-2518,-2513,-2509,-2506,-2505,-2504,-2505,-2506,-2509,-2511,
+-2515,-2518,-2522,-2526,-2530,-2534,-2537,-2539,-2541,-2543,-2543,-2542,-2541,-2538,-2535,-2530,-2524,-2518,-2510,-2500,-2490,
+-2479,-2466,-2453,-2439,-2423,-2407,-2390,-2373,-2355,-2337,-2318,-2300,-2281,-2264,-2246,-2230,-2215,-2201,-2188,-2177,-2169,
+-2162,-2158,-2156,-2156,-2159,-2164,-2171,-2181,-2192,-2205,-2219,-2234,-2250,-2266,-2281,-2296,-2309,-2321,-2331,-2338,-2343,
+-2344,-2343,-2338,-2330,-2319,-2304,-2286,-2266,-2243,-2219,-2192,-2164,-2136,-2107,-2079,-2051,-2024,-1998,-1974,-1952,-1932,
+-1915,-1899,-1886,-1875,-1866,-1859,-1853,-1849,-1845,-1843,-1840,-1838,-1836,-1833,-1829,-1825,-1820,-1815,-1808,-1801,-1793,
+-1784,-1775,-1766,-1758,-1749,-1742,-1735,-1730,-1725,-1722,-1721,-1721,-1723,-1726,-1731,-1736,-1743,-1750,-1758,-1765,-1772,
+-1779,-1784,-1788,-1790,-1791,-1789,-1784,-1777,-1767,-1754,-1739,-1721,-1700,-1678,-1653,-1627,-1599,-1570,-1540,-1510,-1480,
+-1450,-1421,-1393,-1366,-1340,-1316,-1294,-1274,-1256,-1240,-1226,-1214,-1203,-1194,-1186,-1180,-1175,-1170,-1166,-1163,-1159,
+-1156,-1153,-1150,-1146,-1142,-1137,-1132,-1127,-1121,-1115,-1109,-1102,-1096,-1089,-1082,-1076,-1070,-1064,-1059,-1054,-1049,
+-1046,-1042,-1040,-1038,-1036,-1035,-1034,-1034,-1034,-1034,-1034,-1034,-1035,-1035,-1036,-1036,-1036,-1036,-1036,-1036,-1036,
+-1037,-1037,-1037,-1037,-1038,-1039,-1040,-1042,-1043,-1046,-1048,-1051,-1055,-1059,-1063,-1067,-1072,-1077,-1082,-1087,-1092,
+-1097,-1101,-1105,-1109,-1113,-1115,-1118,-1119,-1120,-1120,-1120,-1174,-1174,-1173,-1171,-1169,-1166,-1162,-1157,-1152,-1147,
+-1141,-1135,-1128,-1122,-1115,-1109,-1103,-1097,-1092,-1087,-1083,-1079,-1076,-1074,-1071,-1070,-1069,-1068,-1068,-1068,-1068,
+-1068,-1067,-1067,-1066,-1065,-1063,-1061,-1058,-1054,-1049,-1044,-1038,-1031,-1024,-1016,-1008,-999,-990,-981,-973,-964,
+-956,-948,-941,-935,-929,-924,-920,-917,-915,-914,-913,-913,-914,-915,-917,-918,-920,-921,-921,-921,-921,
+-919,-916,-911,-906,-898,-889,-878,-866,-852,-836,-818,-798,-778,-755,-731,-707,-681,-654,-626,-598,-569,
+-541,-512,-483,-454,-426,-398,-371,-344,-319,-294,-270,-247,-225,-204,-184,-165,-148,-131,-115,-101,-88,
+-75,-64,-54,-44,-36,-28,-22,-16,-11,-6,-3,0,1,3,4,4,3,2,1,-1,-4,
+-7,-11,-16,-21,-27,-34,-40,-48,-55,-63,-72,-81,-90,-99,-108,-118,-127,-137,-147,-157,-166,
+-176,-185,-195,-204,-213,-222,-231,-240,-249,-258,-266,-275,-283,-291,-300,-308,-315,-323,-330,-338,-344,
+-351,-357,-362,-367,-371,-375,-378,-381,-382,-384,-384,-384,-383,-382,-380,-377,-375,-371,-368,-364,-360,
+-356,-352,-348,-343,-339,-334,-330,-325,-320,-315,-310,-304,-298,-291,-284,-276,-268,-259,-250,-240,-229,
+-219,-207,-196,-184,-172,-161,-150,-139,-128,-118,-110,-102,-95,-89,-84,-81,-79,-78,-78,-80,-82,
+-86,-90,-95,-100,-106,-112,-118,-124,-129,-134,-138,-142,-144,-146,-147,-147,-145,-143,-140,-136,-132,
+-126,-120,-113,-106,-98,-91,-83,-75,-67,-59,-51,-43,-36,-29,-22,-16,-11,-6,-1,2,6,
+8,11,12,12,12,11,9,6,2,-2,-8,-15,-23,-32,-41,-52,-64,-76,-89,-103,-117,
+-131,-146,-160,-175,-189,-203,-216,-229,-242,-254,-265,-276,-286,-295,-304,-312,-320,-328,-335,-342,-350,
+-357,-365,-373,-382,-392,-402,-413,-426,-439,-453,-468,-483,-500,-518,-536,-555,-575,-595,-615,-635,-656,
+-677,-697,-718,-738,-757,-777,-796,-814,-832,-850,-867,-884,-900,-917,-933,-949,-965,-980,-997,-1013,-1030,
+-1047,-1064,-1082,-1101,-1120,-1140,-1161,-1183,-1205,-1228,-1251,-1275,-1300,-1325,-1350,-1376,-1402,-1428,-1455,-1481,-1507,
+-1532,-1558,-1583,-1607,-1631,-1654,-1677,-1698,-1720,-1740,-1760,-1779,-1798,-1816,-1833,-1851,-1867,-1884,-1900,-1916,-1932,
+-1948,-1964,-1980,-1996,-2012,-2028,-2044,-2060,-2077,-2093,-2110,-2126,-2143,-2160,-2176,-2193,-2209,-2226,-2242,-2258,-2274,
+-2290,-2306,-2322,-2338,-2354,-2370,-2386,-2402,-2418,-2435,-2451,-2468,-2485,-2502,-2520,-2537,-2555,-2573,-2591,-2610,-2628,
+-2647,-2665,-2684,-2703,-2722,-2741,-2760,-2780,-2799,-2818,-2838,-2858,-2877,-2897,-2917,-2937,-2957,-2977,-2997,-3017,-3037,
+-3056,-3076,-3095,-3114,-3132,-3150,-3168,-3185,-3203,-3219,-3236,-3252,-3268,-3284,-3300,-3316,-3333,-3350,-3367,-3385,-3404,
+-3423,-3444,-3466,-3489,-3512,-3537,-3563,-3590,-3618,-3646,-3675,-3704,-3734,-3762,-3791,-3818,-3845,-3870,-3893,-3915,-3934,
+-3952,-3967,-3979,-3989,-3997,-4003,-4006,-4007,-4007,-4005,-4002,-3997,-3993,-3988,-3983,-3979,-3975,-3973,-3972,-3972,-3975,
+-3978,-3984,-3992,-4002,-4013,-4025,-4040,-4055,-4071,-4087,-4104,-4121,-4137,-4152,-4167,-4181,-4193,-4203,-4212,-4219,-4225,
+-4229,-4231,-4231,-4231,-4228,-4225,-4222,-4217,-4212,-4207,-4202,-4198,-4193,-4189,-4186,-4184,-4182,-4181,-4181,-4181,-4181,
+-4183,-4184,-4185,-4187,-4188,-4189,-4190,-4190,-4190,-4188,-4186,-4184,-4180,-4176,-4171,-4165,-4158,-4151,-4144,-4136,-4128,
+-4119,-4110,-4101,-4092,-4083,-4074,-4065,-4056,-4047,-4038,-4029,-4020,-4010,-4001,-3992,-3984,-3975,-3966,-3958,-3950,-3943,
+-3936,-3931,-3926,-3922,-3919,-3917,-3917,-3919,-3922,-3926,-3932,-3940,-3950,-3961,-3974,-3989,-4004,-4021,-4039,-4058,-4078,
+-4098,-4119,-4140,-4161,-4181,-4202,-4222,-4241,-4260,-4278,-4296,-4313,-4329,-4344,-4359,-4372,-4386,-4398,-4410,-4421,-4432,
+-4442,-4452,-4461,-4470,-4478,-4486,-4494,-4501,-4507,-4513,-4519,-4524,-4528,-4533,-4536,-4540,-4543,-4546,-4548,-4551,-4553,
+-4555,-4557,-4559,-4562,-4565,-4567,-4571,-4574,-4578,-4582,-4587,-4592,-4597,-4602,-4608,-4614,-4620,-4626,-4632,-4637,-4643,
+-4648,-4653,-4658,-4663,-4666,-4670,-4673,-4676,-4678,-4680,-4681,-4683,-4683,-4684,-4685,-4685,-4685,-4686,-4686,-4686,-4686,
+-4687,-4688,-4688,-4689,-4691,-4692,-4694,-4696,-4698,-4700,-4702,-4705,-4708,-4711,-4714,-4717,-4720,-4724,-4727,-4730,-4734,
+-4737,-4741,-4744,-4748,-4751,-4754,-4757,-4760,-4763,-4766,-4768,-4771,-4773,-4775,-4777,-4779,-4780,-4782,-4783,-4784,-4785,
+-4786,-4786,-4787,-4787,-4788,-4788,-4788,-4788,-4788,-4788,-4788,-4788,-4787,-4787,-4786,-4785,-4785,-4784,-4783,-4782,-4781,
+-4780,-4779,-4778,-4777,-4776,-4775,-4775,-4774,-4774,-4774,-4774,-4775,-4776,-4777,-4778,-4779,-4781,-4783,-4785,-4787,-4789,
+-4791,-4793,-4794,-4795,-4796,-4797,-4797,-4796,-4795,-4792,-4790,-4786,-4781,-4776,-4769,-4762,-4754,-4745,-4736,-4726,-4715,
+-4703,-4691,-4679,-4667,-4654,-4642,-4629,-4617,-4605,-4593,-4582,-4572,-4562,-4552,-4544,-4536,-4529,-4523,-4517,-4512,-4508,
+-4504,-4501,-4499,-4496,-4494,-4492,-4490,-4488,-4485,-4483,-4480,-4477,-4473,-4469,-4464,-4459,-4453,-4446,-4439,-4432,-4423,
+-4415,-4406,-4397,-4387,-4378,-4368,-4358,-4348,-4339,-4329,-4320,-4312,-4303,-4295,-4288,-4281,-4274,-4268,-4262,-4257,-4252,
+-4248,-4244,-4240,-4237,-4234,-4231,-4229,-4226,-4224,-4222,-4221,-4219,-4217,-4216,-4215,-4213,-4212,-4211,-4210,-4209,-4208,
+-4207,-4207,-4206,-4205,-4204,-4204,-4203,-4202,-4201,-4200,-4199,-4197,-4195,-4193,-4190,-4187,-4183,-4179,-4175,-4169,-4163,
+-4157,-4149,-4141,-4132,-4123,-4112,-4101,-4089,-4077,-4064,-4050,-4035,-4020,-4005,-3989,-3973,-3957,-3941,-3924,-3908,-3892,
+-3876,-3860,-3845,-3831,-3816,-3803,-3790,-3777,-3765,-3754,-3743,-3732,-3722,-3712,-3702,-3693,-3683,-3674,-3664,-3655,-3645,
+-3634,-3624,-3612,-3601,-3589,-3576,-3563,-3549,-3535,-3521,-3506,-3492,-3477,-3462,-3447,-3432,-3417,-3402,-3388,-3373,-3359,
+-3346,-3332,-3319,-3305,-3292,-3279,-3266,-3253,-3239,-3226,-3211,-3197,-3182,-3167,-3151,-3135,-3118,-3101,-3084,-3067,-3050,
+-3032,-3015,-2998,-2982,-2967,-2952,-2938,-2926,-2915,-2905,-2896,-2889,-2884,-2880,-2878,-2877,-2878,-2880,-2883,-2888,-2893,
+-2899,-2906,-2913,-2920,-2928,-2935,-2942,-2949,-2956,-2961,-2967,-2971,-2975,-2978,-2981,-2983,-2984,-2984,-2984,-2983,-2982,
+-2981,-2979,-2976,-2974,-2971,-2968,-2965,-2962,-2958,-2955,-2951,-2948,-2944,-2941,-2937,-2933,-2930,-2927,-2924,-2921,-2919,
+-2917,-2915,-2914,-2914,-2915,-2916,-2918,-2921,-2925,-2930,-2936,-2943,-2950,-2958,-2967,-2976,-2985,-2995,-3004,-3013,-3022,
+-3030,-3037,-3043,-3048,-3052,-3054,-3055,-3055,-3052,-3049,-3044,-3037,-3030,-3021,-3011,-3001,-2990,-2979,-2968,-2957,-2947,
+-2937,-2927,-2919,-2911,-2905,-2900,-2895,-2892,-2890,-2889,-2888,-2889,-2890,-2891,-2893,-2895,-2897,-2899,-2901,-2903,-2904,
+-2904,-2904,-2903,-2902,-2900,-2897,-2894,-2890,-2886,-2881,-2875,-2870,-2864,-2857,-2851,-2844,-2837,-2830,-2822,-2815,-2807,
+-2799,-2791,-2783,-2774,-2765,-2756,-2746,-2736,-2725,-2714,-2703,-2692,-2680,-2668,-2656,-2644,-2632,-2620,-2609,-2598,-2587,
+-2577,-2568,-2559,-2552,-2545,-2539,-2534,-2530,-2527,-2525,-2524,-2523,-2523,-2523,-2524,-2526,-2527,-2529,-2530,-2531,-2532,
+-2532,-2531,-2530,-2527,-2523,-2519,-2513,-2505,-2496,-2486,-2474,-2461,-2446,-2430,-2413,-2394,-2374,-2353,-2331,-2309,-2286,
+-2263,-2240,-2217,-2195,-2173,-2153,-2134,-2116,-2100,-2087,-2075,-2067,-2060,-2057,-2056,-2058,-2062,-2070,-2079,-2091,-2105,
+-2121,-2138,-2156,-2175,-2194,-2212,-2230,-2247,-2262,-2275,-2286,-2294,-2299,-2301,-2300,-2296,-2288,-2277,-2263,-2246,-2226,
+-2204,-2180,-2154,-2126,-2098,-2070,-2041,-2013,-1986,-1959,-1934,-1911,-1889,-1870,-1852,-1836,-1822,-1810,-1800,-1791,-1784,
+-1778,-1772,-1768,-1764,-1761,-1757,-1754,-1751,-1747,-1744,-1740,-1736,-1732,-1728,-1724,-1721,-1717,-1715,-1713,-1712,-1712,
+-1713,-1716,-1719,-1724,-1730,-1737,-1744,-1753,-1762,-1771,-1780,-1789,-1796,-1803,-1809,-1813,-1815,-1816,-1813,-1809,-1801,
+-1791,-1778,-1763,-1745,-1724,-1701,-1676,-1649,-1621,-1592,-1561,-1530,-1499,-1468,-1438,-1408,-1379,-1352,-1326,-1302,-1280,
+-1260,-1242,-1226,-1212,-1199,-1189,-1180,-1173,-1167,-1162,-1159,-1156,-1153,-1152,-1150,-1148,-1147,-1145,-1143,-1140,-1138,
+-1134,-1131,-1127,-1123,-1118,-1113,-1108,-1103,-1098,-1094,-1089,-1085,-1081,-1077,-1074,-1071,-1069,-1067,-1066,-1065,-1065,
+-1065,-1065,-1066,-1067,-1068,-1070,-1071,-1073,-1074,-1076,-1077,-1079,-1080,-1081,-1083,-1084,-1085,-1087,-1088,-1089,-1091,
+-1093,-1095,-1098,-1100,-1103,-1107,-1110,-1114,-1118,-1123,-1128,-1132,-1137,-1142,-1147,-1152,-1156,-1160,-1164,-1167,-1170,
+-1172,-1173,-1174,-1219,-1220,-1221,-1222,-1221,-1220,-1218,-1216,-1213,-1209,-1205,-1200,-1195,-1190,-1185,-1179,-1174,-1169,
+-1163,-1159,-1154,-1150,-1146,-1142,-1139,-1136,-1134,-1132,-1130,-1128,-1125,-1123,-1121,-1119,-1116,-1112,-1109,-1104,-1099,
+-1094,-1088,-1081,-1074,-1066,-1058,-1050,-1041,-1033,-1024,-1016,-1008,-1000,-993,-987,-982,-977,-974,-971,-970,-969,
+-970,-971,-973,-976,-979,-982,-986,-989,-993,-996,-998,-999,-1000,-999,-996,-993,-987,-980,-971,-960,-947,
+-932,-915,-897,-877,-855,-832,-807,-782,-755,-728,-700,-672,-643,-615,-586,-558,-530,-503,-476,-450,-425,
+-400,-377,-354,-333,-312,-292,-274,-256,-239,-223,-209,-195,-181,-169,-158,-147,-137,-128,-120,-112,-105,
+-99,-94,-89,-85,-82,-80,-78,-77,-77,-77,-78,-80,-82,-85,-89,-93,-97,-102,-107,-113,-120,
+-126,-133,-140,-147,-155,-163,-171,-179,-187,-195,-204,-213,-221,-230,-239,-248,-258,-267,-277,-286,-296,
+-306,-316,-325,-335,-345,-355,-364,-374,-383,-392,-400,-408,-415,-422,-429,-434,-439,-443,-447,-450,-451,
+-453,-453,-453,-452,-451,-449,-447,-444,-441,-438,-434,-430,-426,-423,-419,-415,-411,-407,-403,-399,-395,
+-390,-386,-381,-376,-371,-365,-359,-353,-346,-338,-330,-322,-313,-304,-294,-285,-275,-265,-256,-246,-237,
+-229,-221,-214,-208,-202,-197,-194,-191,-190,-189,-189,-190,-192,-195,-198,-202,-206,-210,-214,-218,-222,
+-225,-228,-230,-232,-233,-233,-232,-231,-228,-225,-221,-216,-211,-205,-199,-192,-185,-178,-171,-164,-157,
+-150,-143,-137,-131,-126,-121,-117,-113,-110,-108,-106,-105,-105,-106,-107,-109,-111,-114,-118,-123,-129,
+-135,-142,-150,-159,-168,-178,-189,-200,-212,-224,-237,-250,-263,-277,-290,-303,-317,-330,-343,-355,-367,
+-379,-390,-401,-411,-420,-429,-438,-446,-454,-462,-470,-477,-485,-493,-501,-510,-519,-529,-539,-550,-562,
+-575,-588,-603,-618,-634,-650,-667,-685,-703,-721,-740,-759,-778,-797,-815,-834,-852,-869,-887,-904,-920,
+-936,-951,-967,-981,-996,-1010,-1024,-1037,-1051,-1065,-1079,-1094,-1109,-1124,-1140,-1156,-1173,-1191,-1209,-1229,-1249,
+-1269,-1291,-1313,-1335,-1358,-1382,-1406,-1430,-1454,-1479,-1503,-1528,-1552,-1576,-1600,-1623,-1646,-1668,-1690,-1711,-1732,
+-1752,-1771,-1790,-1809,-1827,-1844,-1862,-1878,-1895,-1911,-1928,-1944,-1960,-1975,-1991,-2007,-2023,-2038,-2054,-2070,-2086,
+-2102,-2117,-2133,-2149,-2164,-2180,-2195,-2211,-2226,-2241,-2257,-2272,-2287,-2302,-2318,-2333,-2348,-2364,-2379,-2395,-2411,
+-2427,-2443,-2460,-2476,-2493,-2511,-2528,-2546,-2564,-2582,-2600,-2618,-2637,-2655,-2674,-2693,-2712,-2731,-2750,-2769,-2788,
+-2807,-2826,-2845,-2864,-2883,-2902,-2921,-2940,-2959,-2978,-2997,-3015,-3033,-3052,-3069,-3087,-3104,-3121,-3138,-3154,-3171,
+-3186,-3202,-3217,-3232,-3247,-3262,-3277,-3292,-3308,-3324,-3340,-3356,-3374,-3392,-3411,-3430,-3451,-3472,-3495,-3518,-3542,
+-3566,-3591,-3617,-3643,-3669,-3694,-3720,-3745,-3769,-3792,-3814,-3835,-3854,-3872,-3887,-3901,-3913,-3923,-3931,-3937,-3942,
+-3944,-3946,-3946,-3945,-3944,-3942,-3939,-3937,-3935,-3933,-3932,-3932,-3933,-3935,-3938,-3943,-3949,-3956,-3964,-3974,-3985,
+-3996,-4008,-4021,-4034,-4047,-4061,-4073,-4086,-4097,-4108,-4118,-4127,-4135,-4142,-4147,-4151,-4154,-4156,-4157,-4157,-4156,
+-4155,-4153,-4150,-4147,-4144,-4140,-4137,-4133,-4130,-4126,-4123,-4120,-4118,-4115,-4113,-4111,-4108,-4106,-4104,-4102,-4100,
+-4098,-4095,-4093,-4090,-4087,-4083,-4080,-4076,-4071,-4067,-4061,-4056,-4050,-4044,-4038,-4031,-4023,-4015,-4007,-3998,-3989,
+-3979,-3969,-3959,-3948,-3936,-3925,-3913,-3901,-3889,-3877,-3866,-3854,-3844,-3833,-3824,-3815,-3808,-3802,-3797,-3793,-3792,
+-3791,-3793,-3796,-3801,-3808,-3816,-3826,-3837,-3850,-3864,-3880,-3896,-3913,-3931,-3949,-3968,-3987,-4006,-4024,-4042,-4060,
+-4077,-4094,-4110,-4126,-4140,-4154,-4167,-4180,-4192,-4203,-4214,-4224,-4234,-4244,-4253,-4263,-4272,-4281,-4290,-4298,-4307,
+-4316,-4325,-4334,-4343,-4352,-4361,-4370,-4379,-4388,-4397,-4405,-4414,-4422,-4431,-4438,-4446,-4454,-4461,-4468,-4475,-4481,
+-4487,-4493,-4499,-4505,-4510,-4515,-4520,-4524,-4529,-4533,-4537,-4541,-4545,-4548,-4552,-4555,-4559,-4562,-4565,-4569,-4572,
+-4575,-4578,-4581,-4585,-4588,-4591,-4594,-4598,-4601,-4604,-4607,-4610,-4613,-4617,-4620,-4622,-4625,-4628,-4631,-4634,-4636,
+-4639,-4641,-4644,-4646,-4648,-4651,-4653,-4656,-4658,-4661,-4663,-4666,-4668,-4671,-4673,-4676,-4679,-4681,-4684,-4687,-4689,
+-4692,-4694,-4696,-4698,-4700,-4701,-4703,-4704,-4705,-4706,-4706,-4707,-4707,-4707,-4707,-4707,-4707,-4706,-4706,-4705,-4705,
+-4705,-4705,-4704,-4704,-4704,-4704,-4704,-4705,-4705,-4705,-4706,-4706,-4707,-4707,-4708,-4708,-4709,-4709,-4709,-4710,-4710,
+-4711,-4711,-4711,-4711,-4712,-4712,-4712,-4713,-4713,-4714,-4714,-4715,-4716,-4716,-4717,-4717,-4718,-4718,-4719,-4719,-4719,
+-4718,-4717,-4716,-4714,-4711,-4708,-4704,-4699,-4694,-4687,-4680,-4673,-4664,-4654,-4644,-4634,-4622,-4611,-4598,-4586,-4573,
+-4561,-4548,-4536,-4524,-4512,-4501,-4490,-4481,-4471,-4463,-4456,-4449,-4444,-4439,-4435,-4432,-4429,-4427,-4426,-4425,-4424,
+-4423,-4423,-4422,-4421,-4419,-4418,-4415,-4412,-4409,-4404,-4399,-4394,-4387,-4380,-4372,-4364,-4355,-4345,-4336,-4326,-4316,
+-4306,-4296,-4286,-4277,-4268,-4259,-4251,-4244,-4237,-4231,-4225,-4220,-4216,-4212,-4209,-4207,-4205,-4203,-4202,-4200,-4200,
+-4199,-4198,-4197,-4197,-4196,-4195,-4194,-4193,-4192,-4190,-4188,-4187,-4185,-4183,-4180,-4178,-4176,-4173,-4171,-4169,-4166,
+-4164,-4161,-4159,-4156,-4154,-4151,-4148,-4145,-4142,-4138,-4134,-4130,-4125,-4119,-4114,-4107,-4100,-4092,-4083,-4074,-4064,
+-4053,-4042,-4030,-4018,-4004,-3991,-3977,-3963,-3949,-3934,-3920,-3906,-3891,-3877,-3864,-3850,-3837,-3825,-3813,-3801,-3790,
+-3779,-3768,-3758,-3748,-3738,-3729,-3719,-3709,-3699,-3689,-3678,-3667,-3656,-3644,-3631,-3618,-3604,-3590,-3575,-3560,-3544,
+-3527,-3510,-3493,-3476,-3458,-3440,-3423,-3405,-3388,-3371,-3354,-3338,-3322,-3306,-3290,-3275,-3260,-3246,-3232,-3217,-3203,
+-3189,-3175,-3161,-3147,-3133,-3119,-3104,-3090,-3075,-3060,-3046,-3031,-3017,-3002,-2988,-2975,-2962,-2950,-2939,-2928,-2919,
+-2911,-2904,-2898,-2894,-2891,-2889,-2888,-2889,-2891,-2894,-2897,-2902,-2907,-2913,-2920,-2926,-2933,-2940,-2946,-2952,-2958,
+-2964,-2969,-2973,-2977,-2980,-2982,-2984,-2985,-2986,-2986,-2985,-2984,-2982,-2980,-2977,-2975,-2972,-2968,-2965,-2962,-2958,
+-2954,-2950,-2947,-2943,-2939,-2935,-2932,-2928,-2925,-2922,-2919,-2916,-2914,-2912,-2910,-2910,-2909,-2910,-2911,-2912,-2915,
+-2918,-2922,-2927,-2932,-2938,-2945,-2952,-2959,-2966,-2974,-2981,-2988,-2995,-3001,-3006,-3010,-3014,-3016,-3017,-3017,-3015,
+-3013,-3009,-3003,-2997,-2989,-2981,-2972,-2962,-2952,-2942,-2932,-2921,-2912,-2902,-2894,-2886,-2879,-2873,-2868,-2864,-2861,
+-2859,-2858,-2858,-2859,-2861,-2862,-2865,-2867,-2869,-2872,-2873,-2875,-2876,-2876,-2875,-2874,-2871,-2868,-2864,-2858,-2852,
+-2845,-2838,-2829,-2820,-2811,-2801,-2791,-2781,-2770,-2760,-2750,-2740,-2731,-2722,-2713,-2704,-2696,-2688,-2681,-2674,-2668,
+-2661,-2656,-2650,-2644,-2639,-2634,-2629,-2624,-2619,-2614,-2609,-2604,-2599,-2594,-2590,-2585,-2580,-2575,-2570,-2565,-2561,
+-2556,-2551,-2546,-2542,-2537,-2532,-2527,-2522,-2517,-2511,-2506,-2500,-2493,-2486,-2479,-2470,-2462,-2452,-2442,-2430,-2418,
+-2406,-2392,-2377,-2361,-2345,-2328,-2310,-2292,-2273,-2253,-2234,-2214,-2194,-2175,-2156,-2138,-2120,-2104,-2089,-2075,-2063,
+-2053,-2045,-2038,-2034,-2032,-2032,-2034,-2039,-2045,-2053,-2063,-2075,-2087,-2101,-2115,-2130,-2144,-2159,-2173,-2185,-2197,
+-2207,-2215,-2221,-2224,-2225,-2224,-2220,-2214,-2205,-2194,-2180,-2164,-2147,-2127,-2106,-2085,-2062,-2039,-2016,-1992,-1970,
+-1947,-1926,-1906,-1887,-1869,-1853,-1838,-1824,-1812,-1802,-1792,-1784,-1776,-1770,-1764,-1758,-1754,-1749,-1745,-1741,-1737,
+-1733,-1729,-1725,-1721,-1718,-1715,-1712,-1710,-1708,-1707,-1707,-1708,-1710,-1713,-1717,-1722,-1728,-1735,-1743,-1751,-1760,
+-1770,-1779,-1788,-1797,-1805,-1812,-1818,-1822,-1824,-1825,-1823,-1819,-1813,-1805,-1793,-1780,-1764,-1746,-1725,-1703,-1679,
+-1654,-1627,-1600,-1572,-1544,-1516,-1489,-1462,-1435,-1410,-1387,-1365,-1344,-1325,-1309,-1293,-1280,-1268,-1259,-1250,-1243,
+-1238,-1233,-1229,-1226,-1224,-1222,-1220,-1219,-1217,-1215,-1213,-1210,-1207,-1204,-1200,-1196,-1191,-1186,-1181,-1175,-1169,
+-1164,-1158,-1153,-1148,-1143,-1139,-1135,-1131,-1129,-1127,-1125,-1124,-1124,-1124,-1125,-1126,-1127,-1129,-1131,-1133,-1136,
+-1138,-1140,-1142,-1144,-1146,-1147,-1148,-1150,-1150,-1151,-1152,-1152,-1153,-1153,-1154,-1154,-1155,-1156,-1158,-1160,-1162,
+-1164,-1167,-1170,-1174,-1177,-1181,-1186,-1190,-1194,-1199,-1203,-1207,-1211,-1214,-1217,-1219,-1265,-1269,-1271,-1274,-1275,
+-1276,-1277,-1276,-1275,-1274,-1272,-1269,-1265,-1262,-1257,-1253,-1248,-1243,-1238,-1233,-1228,-1223,-1219,-1214,-1209,-1205,
+-1201,-1196,-1192,-1188,-1184,-1180,-1175,-1171,-1166,-1161,-1155,-1149,-1143,-1136,-1130,-1122,-1115,-1107,-1100,-1092,-1084,
+-1076,-1069,-1062,-1056,-1050,-1045,-1040,-1037,-1034,-1032,-1032,-1032,-1033,-1035,-1038,-1041,-1045,-1050,-1054,-1059,-1064,
+-1068,-1071,-1074,-1076,-1077,-1077,-1075,-1071,-1066,-1059,-1051,-1040,-1028,-1013,-997,-979,-959,-938,-916,-892,-867,
+-841,-814,-787,-759,-732,-704,-676,-648,-621,-595,-569,-544,-519,-496,-473,-452,-431,-411,-393,-375,-358,
+-343,-328,-314,-301,-288,-277,-266,-256,-247,-238,-230,-223,-216,-210,-205,-200,-196,-193,-190,-188,-186,
+-185,-184,-185,-185,-187,-188,-191,-193,-197,-200,-204,-209,-214,-219,-225,-230,-237,-243,-250,-257,-264,
+-272,-279,-287,-296,-304,-313,-322,-332,-341,-351,-361,-371,-381,-392,-402,-413,-423,-433,-443,-453,-462,
+-471,-479,-487,-495,-501,-508,-513,-517,-521,-524,-527,-528,-529,-529,-528,-527,-525,-523,-520,-517,-513,
+-509,-506,-502,-498,-493,-489,-485,-481,-477,-473,-469,-465,-461,-457,-453,-449,-444,-440,-435,-430,-424,
+-419,-413,-407,-400,-394,-387,-381,-374,-367,-361,-354,-348,-343,-338,-333,-330,-326,-324,-322,-321,-321,
+-321,-322,-323,-325,-328,-330,-333,-336,-339,-341,-344,-346,-347,-348,-348,-347,-345,-343,-340,-336,-331,
+-325,-319,-312,-304,-296,-288,-279,-271,-262,-254,-246,-239,-232,-226,-220,-216,-212,-209,-207,-206,-207,
+-208,-210,-213,-217,-223,-228,-235,-243,-251,-260,-270,-280,-291,-302,-313,-325,-338,-350,-363,-376,-389,
+-402,-415,-429,-442,-455,-468,-481,-493,-506,-518,-530,-541,-552,-563,-573,-583,-593,-603,-612,-621,-630,
+-639,-647,-656,-665,-673,-682,-691,-701,-711,-721,-731,-742,-753,-765,-777,-790,-803,-816,-830,-844,-859,
+-873,-888,-903,-917,-932,-947,-961,-976,-990,-1004,-1018,-1032,-1045,-1058,-1071,-1084,-1097,-1109,-1122,-1135,-1147,
+-1160,-1174,-1187,-1201,-1215,-1230,-1245,-1260,-1276,-1293,-1310,-1327,-1345,-1364,-1383,-1402,-1422,-1442,-1462,-1482,-1502,
+-1523,-1543,-1564,-1584,-1604,-1624,-1644,-1663,-1683,-1702,-1720,-1739,-1757,-1775,-1792,-1809,-1827,-1843,-1860,-1877,-1893,
+-1909,-1926,-1942,-1958,-1973,-1989,-2005,-2021,-2036,-2052,-2067,-2082,-2098,-2113,-2128,-2142,-2157,-2172,-2186,-2201,-2215,
+-2230,-2244,-2258,-2273,-2288,-2302,-2317,-2332,-2347,-2363,-2378,-2395,-2411,-2428,-2444,-2462,-2479,-2497,-2515,-2534,-2552,
+-2571,-2590,-2609,-2629,-2648,-2667,-2687,-2706,-2726,-2745,-2764,-2783,-2803,-2822,-2841,-2860,-2878,-2897,-2916,-2934,-2952,
+-2971,-2989,-3007,-3025,-3042,-3060,-3077,-3094,-3110,-3127,-3143,-3159,-3174,-3190,-3205,-3220,-3234,-3249,-3263,-3277,-3291,
+-3305,-3320,-3334,-3349,-3364,-3380,-3396,-3412,-3429,-3447,-3465,-3484,-3503,-3523,-3544,-3564,-3585,-3606,-3628,-3649,-3670,
+-3690,-3710,-3730,-3748,-3766,-3782,-3797,-3811,-3824,-3835,-3844,-3853,-3860,-3865,-3870,-3873,-3875,-3876,-3877,-3877,-3877,
+-3876,-3876,-3876,-3876,-3877,-3878,-3881,-3884,-3888,-3893,-3899,-3906,-3914,-3923,-3932,-3943,-3954,-3965,-3977,-3989,-4001,
+-4013,-4024,-4035,-4046,-4055,-4064,-4072,-4079,-4085,-4090,-4094,-4096,-4098,-4098,-4098,-4096,-4094,-4091,-4087,-4083,-4078,
+-4073,-4067,-4062,-4057,-4051,-4046,-4041,-4037,-4033,-4029,-4026,-4024,-4022,-4020,-4019,-4019,-4019,-4019,-4019,-4020,-4021,
+-4022,-4022,-4022,-4022,-4021,-4020,-4018,-4014,-4010,-4004,-3998,-3990,-3980,-3969,-3957,-3944,-3929,-3913,-3895,-3877,-3858,
+-3838,-3818,-3797,-3777,-3757,-3737,-3718,-3700,-3683,-3667,-3653,-3641,-3631,-3623,-3617,-3614,-3612,-3613,-3616,-3622,-3629,
+-3638,-3649,-3661,-3675,-3690,-3706,-3723,-3740,-3757,-3775,-3792,-3809,-3825,-3841,-3856,-3871,-3885,-3897,-3910,-3921,-3932,
+-3942,-3952,-3961,-3970,-3979,-3987,-3996,-4005,-4015,-4025,-4036,-4047,-4059,-4071,-4085,-4099,-4114,-4129,-4145,-4161,-4178,
+-4196,-4213,-4230,-4248,-4265,-4282,-4298,-4314,-4329,-4343,-4357,-4369,-4381,-4392,-4401,-4410,-4418,-4425,-4431,-4436,-4441,
+-4445,-4448,-4451,-4454,-4456,-4458,-4460,-4462,-4464,-4466,-4469,-4472,-4475,-4478,-4481,-4485,-4489,-4494,-4498,-4503,-4508,
+-4513,-4518,-4523,-4529,-4534,-4538,-4543,-4548,-4552,-4556,-4560,-4564,-4567,-4570,-4573,-4576,-4579,-4582,-4585,-4587,-4590,
+-4593,-4596,-4599,-4602,-4605,-4609,-4612,-4616,-4619,-4623,-4626,-4630,-4633,-4637,-4640,-4643,-4645,-4647,-4649,-4650,-4651,
+-4652,-4652,-4652,-4651,-4650,-4649,-4647,-4645,-4643,-4641,-4639,-4636,-4634,-4632,-4630,-4628,-4627,-4625,-4624,-4623,-4623,
+-4623,-4623,-4623,-4623,-4624,-4625,-4626,-4627,-4628,-4629,-4630,-4630,-4631,-4631,-4631,-4632,-4631,-4631,-4631,-4630,-4629,
+-4628,-4627,-4626,-4625,-4624,-4624,-4623,-4622,-4622,-4621,-4621,-4621,-4620,-4620,-4620,-4619,-4619,-4618,-4617,-4615,-4613,
+-4611,-4608,-4604,-4599,-4594,-4588,-4581,-4574,-4566,-4557,-4547,-4537,-4527,-4516,-4504,-4493,-4481,-4470,-4459,-4448,-4438,
+-4428,-4418,-4410,-4402,-4395,-4389,-4383,-4379,-4375,-4372,-4370,-4368,-4367,-4366,-4366,-4366,-4365,-4365,-4365,-4364,-4363,
+-4362,-4360,-4357,-4354,-4350,-4346,-4341,-4335,-4329,-4322,-4315,-4308,-4300,-4293,-4285,-4277,-4269,-4262,-4255,-4248,-4242,
+-4236,-4231,-4226,-4222,-4218,-4214,-4211,-4209,-4206,-4204,-4202,-4200,-4198,-4197,-4195,-4193,-4190,-4188,-4185,-4182,-4178,
+-4174,-4170,-4166,-4161,-4156,-4151,-4146,-4141,-4135,-4130,-4125,-4119,-4114,-4109,-4105,-4100,-4096,-4091,-4087,-4083,-4079,
+-4075,-4071,-4067,-4063,-4059,-4054,-4049,-4043,-4037,-4031,-4023,-4016,-4007,-3998,-3989,-3979,-3968,-3957,-3946,-3934,-3922,
+-3910,-3897,-3885,-3872,-3860,-3847,-3836,-3824,-3813,-3802,-3791,-3781,-3772,-3762,-3753,-3745,-3736,-3728,-3720,-3712,-3703,
+-3695,-3686,-3677,-3668,-3657,-3647,-3636,-3624,-3611,-3598,-3584,-3569,-3553,-3537,-3520,-3503,-3486,-3467,-3449,-3430,-3411,
+-3392,-3373,-3354,-3336,-3317,-3299,-3280,-3262,-3245,-3227,-3210,-3194,-3177,-3161,-3145,-3130,-3115,-3100,-3086,-3071,-3058,
+-3044,-3031,-3019,-3007,-2996,-2985,-2975,-2966,-2957,-2949,-2943,-2937,-2932,-2928,-2925,-2923,-2922,-2922,-2923,-2924,-2927,
+-2930,-2933,-2937,-2941,-2946,-2950,-2955,-2959,-2964,-2968,-2971,-2974,-2977,-2979,-2980,-2981,-2981,-2980,-2979,-2977,-2975,
+-2972,-2969,-2966,-2962,-2957,-2953,-2949,-2944,-2940,-2935,-2931,-2926,-2922,-2918,-2914,-2910,-2907,-2904,-2901,-2898,-2896,
+-2894,-2892,-2890,-2889,-2888,-2887,-2887,-2887,-2888,-2889,-2890,-2892,-2895,-2897,-2900,-2904,-2908,-2912,-2916,-2920,-2924,
+-2929,-2933,-2936,-2940,-2943,-2945,-2946,-2947,-2947,-2946,-2944,-2941,-2937,-2932,-2926,-2919,-2912,-2903,-2894,-2885,-2875,
+-2865,-2855,-2846,-2836,-2827,-2818,-2811,-2804,-2797,-2792,-2788,-2784,-2782,-2781,-2780,-2780,-2781,-2782,-2783,-2785,-2787,
+-2788,-2790,-2791,-2791,-2790,-2789,-2787,-2784,-2780,-2774,-2768,-2760,-2752,-2742,-2732,-2721,-2710,-2698,-2686,-2673,-2661,
+-2649,-2638,-2626,-2616,-2606,-2598,-2590,-2583,-2578,-2573,-2570,-2568,-2567,-2567,-2567,-2569,-2571,-2574,-2577,-2581,-2584,
+-2588,-2591,-2594,-2597,-2599,-2600,-2600,-2600,-2598,-2596,-2592,-2587,-2581,-2574,-2565,-2556,-2545,-2533,-2521,-2507,-2493,
+-2478,-2462,-2445,-2428,-2411,-2394,-2376,-2358,-2340,-2322,-2304,-2287,-2269,-2252,-2235,-2219,-2203,-2187,-2172,-2158,-2144,
+-2131,-2118,-2106,-2095,-2085,-2076,-2067,-2059,-2053,-2047,-2042,-2039,-2036,-2035,-2034,-2035,-2036,-2039,-2042,-2046,-2051,
+-2057,-2063,-2070,-2076,-2083,-2090,-2097,-2103,-2109,-2114,-2118,-2122,-2124,-2125,-2125,-2123,-2120,-2116,-2110,-2103,-2094,
+-2084,-2074,-2062,-2049,-2036,-2022,-2007,-1993,-1978,-1964,-1949,-1935,-1922,-1908,-1896,-1884,-1873,-1863,-1853,-1844,-1836,
+-1828,-1821,-1814,-1808,-1802,-1796,-1790,-1784,-1779,-1773,-1767,-1762,-1756,-1750,-1745,-1740,-1735,-1730,-1726,-1722,-1719,
+-1717,-1716,-1716,-1717,-1719,-1722,-1726,-1731,-1737,-1744,-1751,-1760,-1769,-1778,-1787,-1795,-1804,-1812,-1819,-1825,-1829,
+-1832,-1834,-1834,-1832,-1828,-1822,-1814,-1804,-1792,-1778,-1763,-1746,-1728,-1709,-1688,-1668,-1647,-1625,-1604,-1583,-1563,
+-1543,-1525,-1507,-1490,-1475,-1461,-1448,-1437,-1427,-1418,-1410,-1403,-1397,-1392,-1387,-1383,-1379,-1375,-1371,-1367,-1363,
+-1358,-1353,-1348,-1341,-1335,-1327,-1320,-1312,-1303,-1294,-1285,-1276,-1267,-1258,-1249,-1240,-1232,-1225,-1218,-1212,-1207,
+-1203,-1199,-1196,-1195,-1193,-1193,-1193,-1194,-1195,-1197,-1199,-1201,-1204,-1206,-1208,-1210,-1212,-1214,-1215,-1216,-1217,
+-1217,-1217,-1216,-1216,-1215,-1214,-1213,-1212,-1211,-1211,-1211,-1211,-1211,-1212,-1213,-1215,-1217,-1220,-1223,-1227,-1231,
+-1235,-1239,-1244,-1248,-1253,-1257,-1261,-1265,-1316,-1320,-1324,-1327,-1330,-1331,-1333,-1333,-1333,-1332,-1331,-1329,-1326,
+-1323,-1319,-1314,-1310,-1305,-1299,-1294,-1288,-1283,-1277,-1271,-1266,-1260,-1255,-1249,-1244,-1239,-1234,-1228,-1223,-1218,
+-1212,-1207,-1201,-1195,-1189,-1183,-1177,-1171,-1164,-1157,-1151,-1144,-1138,-1132,-1126,-1121,-1116,-1111,-1108,-1105,-1102,
+-1101,-1100,-1100,-1101,-1102,-1104,-1107,-1111,-1115,-1119,-1123,-1128,-1132,-1136,-1140,-1142,-1145,-1146,-1145,-1144,-1141,
+-1137,-1131,-1123,-1114,-1102,-1089,-1075,-1058,-1040,-1021,-1000,-978,-954,-930,-905,-879,-852,-826,-799,-772,-746,
+-719,-693,-668,-643,-619,-596,-574,-552,-532,-513,-494,-477,-461,-445,-431,-418,-405,-394,-383,-373,-363,
+-355,-347,-340,-333,-327,-321,-316,-312,-307,-304,-301,-298,-296,-294,-292,-292,-291,-291,-292,-292,-294,
+-296,-298,-301,-304,-308,-312,-317,-322,-328,-334,-341,-348,-356,-364,-372,-381,-391,-400,-411,-421,-432,
+-443,-454,-465,-476,-488,-499,-510,-521,-532,-542,-552,-561,-570,-579,-586,-593,-600,-605,-610,-614,-617,
+-619,-621,-622,-622,-621,-620,-618,-616,-614,-611,-607,-604,-600,-596,-592,-588,-584,-579,-575,-571,-567,
+-563,-559,-555,-551,-547,-543,-539,-535,-531,-526,-522,-517,-512,-508,-503,-498,-493,-488,-483,-479,-474,
+-470,-467,-463,-461,-459,-457,-456,-455,-455,-456,-458,-460,-462,-465,-468,-472,-475,-479,-483,-486,-489,
+-492,-493,-495,-495,-495,-493,-491,-487,-482,-477,-470,-462,-453,-444,-434,-423,-411,-400,-388,-376,-365,
+-353,-343,-333,-324,-316,-309,-303,-299,-296,-295,-295,-296,-299,-304,-310,-318,-327,-337,-348,-361,-374,
+-388,-403,-419,-435,-451,-468,-484,-501,-518,-534,-551,-567,-583,-598,-613,-628,-642,-656,-669,-682,-694,
+-706,-717,-728,-739,-750,-760,-769,-779,-789,-798,-807,-816,-825,-834,-843,-852,-862,-871,-881,-890,-900,
+-910,-920,-930,-940,-951,-961,-972,-983,-994,-1005,-1016,-1027,-1038,-1049,-1060,-1071,-1082,-1093,-1104,-1114,-1125,
+-1136,-1147,-1157,-1168,-1179,-1190,-1201,-1212,-1224,-1235,-1247,-1259,-1271,-1284,-1297,-1310,-1323,-1337,-1351,-1365,-1380,
+-1395,-1410,-1426,-1441,-1457,-1473,-1489,-1505,-1521,-1537,-1553,-1569,-1585,-1601,-1617,-1633,-1649,-1665,-1680,-1696,-1712,
+-1727,-1742,-1758,-1773,-1789,-1804,-1820,-1835,-1851,-1867,-1882,-1898,-1914,-1930,-1946,-1961,-1977,-1993,-2008,-2024,-2039,
+-2054,-2069,-2084,-2099,-2113,-2127,-2141,-2155,-2169,-2182,-2195,-2209,-2222,-2235,-2249,-2262,-2276,-2289,-2303,-2318,-2333,
+-2348,-2363,-2379,-2395,-2412,-2429,-2447,-2465,-2484,-2503,-2522,-2541,-2561,-2581,-2601,-2621,-2641,-2661,-2682,-2702,-2722,
+-2742,-2762,-2781,-2801,-2820,-2839,-2858,-2877,-2895,-2914,-2932,-2950,-2968,-2986,-3004,-3022,-3039,-3057,-3074,-3092,-3109,
+-3126,-3142,-3159,-3176,-3192,-3208,-3223,-3239,-3254,-3269,-3284,-3298,-3313,-3327,-3341,-3355,-3369,-3383,-3396,-3410,-3424,
+-3439,-3453,-3467,-3482,-3497,-3512,-3527,-3543,-3559,-3574,-3590,-3606,-3621,-3637,-3652,-3667,-3681,-3695,-3708,-3720,-3732,
+-3743,-3753,-3762,-3770,-3777,-3783,-3789,-3794,-3797,-3801,-3804,-3806,-3808,-3809,-3811,-3813,-3814,-3817,-3819,-3822,-3825,
+-3829,-3834,-3840,-3846,-3853,-3861,-3869,-3878,-3888,-3898,-3908,-3919,-3929,-3940,-3950,-3961,-3970,-3979,-3988,-3995,-4002,
+-4008,-4012,-4016,-4018,-4019,-4020,-4019,-4017,-4014,-4010,-4006,-4001,-3996,-3990,-3984,-3978,-3972,-3966,-3961,-3957,-3953,
+-3949,-3947,-3945,-3945,-3945,-3946,-3948,-3951,-3954,-3958,-3963,-3967,-3972,-3977,-3981,-3985,-3988,-3991,-3992,-3991,-3989,
+-3986,-3980,-3973,-3964,-3952,-3938,-3922,-3904,-3884,-3863,-3839,-3814,-3788,-3761,-3733,-3704,-3676,-3648,-3620,-3593,-3567,
+-3543,-3521,-3500,-3482,-3465,-3452,-3441,-3433,-3428,-3425,-3425,-3427,-3432,-3439,-3448,-3459,-3471,-3485,-3499,-3515,-3531,
+-3547,-3564,-3580,-3596,-3611,-3626,-3640,-3653,-3666,-3677,-3688,-3698,-3708,-3717,-3725,-3734,-3742,-3750,-3759,-3768,-3778,
+-3789,-3801,-3813,-3827,-3842,-3858,-3875,-3894,-3914,-3934,-3956,-3978,-4001,-4025,-4049,-4073,-4097,-4121,-4144,-4167,-4188,
+-4209,-4229,-4248,-4265,-4281,-4296,-4309,-4321,-4331,-4340,-4348,-4355,-4361,-4366,-4370,-4373,-4376,-4378,-4381,-4383,-4385,
+-4387,-4390,-4392,-4395,-4398,-4402,-4406,-4410,-4415,-4420,-4425,-4430,-4436,-4441,-4447,-4452,-4457,-4462,-4467,-4471,-4475,
+-4479,-4483,-4486,-4489,-4491,-4494,-4496,-4498,-4500,-4503,-4505,-4508,-4510,-4513,-4516,-4520,-4524,-4528,-4533,-4538,-4543,
+-4549,-4555,-4561,-4567,-4572,-4578,-4584,-4589,-4594,-4599,-4603,-4606,-4609,-4611,-4612,-4613,-4613,-4612,-4611,-4609,-4607,
+-4604,-4600,-4597,-4593,-4589,-4584,-4580,-4576,-4572,-4569,-4566,-4563,-4560,-4558,-4556,-4555,-4554,-4554,-4553,-4553,-4554,
+-4554,-4555,-4556,-4556,-4557,-4557,-4558,-4558,-4558,-4558,-4558,-4558,-4557,-4556,-4555,-4554,-4553,-4552,-4551,-4550,-4549,
+-4548,-4547,-4546,-4545,-4545,-4544,-4544,-4543,-4543,-4542,-4542,-4541,-4540,-4538,-4537,-4534,-4532,-4528,-4524,-4520,-4515,
+-4509,-4503,-4496,-4488,-4480,-4471,-4462,-4453,-4443,-4433,-4424,-4414,-4404,-4395,-4386,-4378,-4370,-4363,-4356,-4350,-4344,
+-4340,-4336,-4332,-4329,-4327,-4325,-4324,-4323,-4322,-4321,-4320,-4320,-4319,-4318,-4316,-4315,-4313,-4310,-4307,-4304,-4300,
+-4296,-4292,-4287,-4282,-4277,-4272,-4266,-4261,-4255,-4250,-4244,-4239,-4235,-4230,-4226,-4222,-4218,-4215,-4211,-4208,-4205,
+-4202,-4200,-4197,-4194,-4191,-4188,-4184,-4180,-4176,-4172,-4167,-4162,-4156,-4150,-4143,-4137,-4130,-4122,-4115,-4107,-4100,
+-4092,-4085,-4077,-4070,-4063,-4056,-4049,-4043,-4037,-4032,-4027,-4022,-4017,-4012,-4008,-4003,-3999,-3995,-3990,-3985,-3980,
+-3975,-3969,-3963,-3956,-3949,-3941,-3932,-3923,-3914,-3904,-3894,-3883,-3872,-3860,-3849,-3837,-3825,-3814,-3802,-3791,-3780,
+-3770,-3760,-3750,-3741,-3732,-3724,-3717,-3709,-3703,-3696,-3690,-3685,-3679,-3674,-3668,-3662,-3657,-3650,-3644,-3636,-3629,
+-3620,-3611,-3601,-3591,-3579,-3567,-3553,-3539,-3524,-3508,-3491,-3473,-3455,-3436,-3416,-3396,-3376,-3355,-3334,-3312,-3291,
+-3269,-3248,-3227,-3206,-3185,-3164,-3145,-3125,-3107,-3088,-3071,-3055,-3039,-3024,-3011,-2998,-2986,-2976,-2966,-2958,-2951,
+-2945,-2940,-2937,-2934,-2933,-2932,-2933,-2934,-2936,-2939,-2942,-2946,-2950,-2955,-2960,-2964,-2969,-2973,-2977,-2981,-2984,
+-2987,-2989,-2990,-2991,-2991,-2990,-2989,-2987,-2984,-2981,-2977,-2972,-2968,-2962,-2957,-2951,-2946,-2940,-2934,-2928,-2923,
+-2918,-2913,-2908,-2904,-2900,-2896,-2893,-2890,-2887,-2885,-2884,-2882,-2881,-2880,-2880,-2880,-2880,-2880,-2881,-2882,-2883,
+-2884,-2885,-2887,-2889,-2891,-2893,-2895,-2897,-2899,-2901,-2903,-2904,-2906,-2907,-2908,-2908,-2908,-2908,-2906,-2905,-2902,
+-2899,-2894,-2889,-2884,-2877,-2870,-2861,-2853,-2843,-2833,-2823,-2812,-2801,-2790,-2778,-2767,-2757,-2746,-2737,-2727,-2719,
+-2711,-2704,-2697,-2692,-2687,-2683,-2680,-2678,-2676,-2675,-2674,-2673,-2673,-2672,-2672,-2671,-2669,-2668,-2665,-2662,-2658,
+-2653,-2648,-2642,-2635,-2627,-2618,-2609,-2599,-2589,-2579,-2568,-2558,-2548,-2539,-2530,-2521,-2514,-2508,-2503,-2499,-2496,
+-2495,-2495,-2497,-2499,-2504,-2509,-2515,-2523,-2531,-2540,-2549,-2558,-2568,-2577,-2585,-2593,-2600,-2606,-2610,-2613,-2615,
+-2614,-2612,-2607,-2601,-2592,-2581,-2568,-2553,-2537,-2518,-2497,-2475,-2452,-2428,-2402,-2376,-2349,-2322,-2294,-2267,-2241,
+-2214,-2189,-2165,-2141,-2119,-2098,-2079,-2062,-2046,-2032,-2019,-2009,-2000,-1992,-1987,-1983,-1980,-1979,-1980,-1981,-1984,
+-1987,-1991,-1996,-2001,-2007,-2013,-2019,-2026,-2032,-2037,-2043,-2048,-2052,-2056,-2059,-2062,-2063,-2064,-2064,-2063,-2061,
+-2059,-2055,-2051,-2046,-2040,-2033,-2026,-2018,-2010,-2002,-1993,-1984,-1975,-1965,-1956,-1947,-1938,-1930,-1921,-1913,-1906,
+-1899,-1892,-1886,-1880,-1875,-1870,-1865,-1861,-1857,-1853,-1849,-1845,-1841,-1837,-1832,-1828,-1823,-1818,-1812,-1806,-1800,
+-1793,-1786,-1779,-1772,-1765,-1758,-1751,-1744,-1738,-1732,-1727,-1723,-1720,-1717,-1716,-1715,-1716,-1718,-1721,-1725,-1730,
+-1736,-1742,-1750,-1757,-1766,-1774,-1783,-1791,-1799,-1806,-1813,-1818,-1823,-1827,-1829,-1829,-1829,-1827,-1823,-1818,-1811,
+-1803,-1794,-1784,-1772,-1760,-1747,-1733,-1720,-1706,-1692,-1678,-1664,-1651,-1639,-1627,-1616,-1605,-1596,-1587,-1579,-1572,
+-1565,-1559,-1553,-1548,-1543,-1539,-1534,-1529,-1524,-1518,-1512,-1506,-1499,-1491,-1483,-1474,-1464,-1453,-1443,-1431,-1419,
+-1407,-1395,-1382,-1370,-1358,-1346,-1334,-1323,-1313,-1304,-1295,-1287,-1281,-1275,-1270,-1266,-1263,-1261,-1260,-1259,-1259,
+-1260,-1261,-1262,-1263,-1265,-1267,-1268,-1270,-1271,-1272,-1272,-1273,-1273,-1272,-1271,-1270,-1269,-1268,-1266,-1264,-1263,
+-1262,-1260,-1260,-1259,-1259,-1260,-1261,-1262,-1264,-1267,-1270,-1274,-1278,-1282,-1287,-1292,-1297,-1302,-1307,-1311,-1316,
+-1364,-1369,-1372,-1375,-1378,-1380,-1381,-1381,-1381,-1380,-1378,-1376,-1373,-1369,-1365,-1360,-1355,-1350,-1344,-1338,-1332,
+-1326,-1320,-1314,-1308,-1303,-1297,-1291,-1286,-1281,-1276,-1271,-1266,-1261,-1256,-1251,-1246,-1241,-1236,-1231,-1226,-1220,
+-1215,-1209,-1204,-1198,-1193,-1188,-1182,-1178,-1173,-1169,-1165,-1162,-1159,-1157,-1155,-1154,-1154,-1154,-1155,-1156,-1158,
+-1160,-1163,-1165,-1168,-1171,-1174,-1176,-1178,-1180,-1181,-1180,-1179,-1177,-1174,-1169,-1163,-1155,-1146,-1135,-1123,-1109,
+-1094,-1077,-1059,-1040,-1019,-997,-975,-951,-927,-903,-878,-853,-827,-802,-778,-753,-729,-706,-683,-662,-641,
+-621,-602,-584,-567,-551,-536,-522,-509,-496,-485,-475,-466,-457,-449,-442,-435,-429,-423,-418,-413,-409,
+-405,-401,-398,-395,-392,-389,-387,-386,-384,-383,-383,-382,-383,-383,-385,-386,-389,-392,-395,-399,-404,
+-410,-416,-423,-430,-438,-447,-456,-465,-476,-486,-497,-509,-520,-532,-544,-556,-568,-579,-591,-602,-613,
+-623,-633,-642,-651,-659,-666,-673,-678,-683,-687,-691,-693,-695,-696,-697,-696,-696,-694,-693,-691,-688,
+-685,-682,-679,-676,-672,-669,-665,-662,-658,-655,-652,-648,-645,-641,-638,-634,-630,-627,-623,-619,-615,
+-611,-606,-602,-597,-593,-588,-583,-579,-574,-570,-566,-562,-559,-556,-554,-552,-551,-550,-550,-551,-552,
+-554,-557,-560,-564,-568,-573,-578,-583,-588,-593,-597,-602,-605,-608,-611,-612,-612,-612,-610,-607,-602,
+-597,-590,-582,-573,-563,-552,-540,-528,-515,-502,-488,-475,-462,-450,-438,-427,-417,-408,-401,-395,-391,
+-388,-387,-388,-390,-394,-401,-408,-418,-429,-441,-455,-470,-486,-503,-520,-538,-557,-576,-595,-614,-633,
+-652,-670,-689,-706,-723,-739,-755,-770,-784,-798,-811,-824,-835,-847,-858,-868,-878,-888,-897,-906,-916,
+-925,-934,-942,-951,-961,-970,-979,-988,-998,-1007,-1017,-1027,-1037,-1047,-1057,-1067,-1077,-1087,-1097,-1107,-1117,
+-1127,-1136,-1146,-1156,-1165,-1174,-1183,-1193,-1202,-1211,-1220,-1229,-1238,-1247,-1256,-1266,-1276,-1286,-1296,-1306,-1317,
+-1328,-1339,-1351,-1362,-1375,-1387,-1400,-1413,-1426,-1439,-1453,-1467,-1481,-1494,-1508,-1522,-1536,-1550,-1563,-1577,-1590,
+-1604,-1617,-1630,-1643,-1656,-1669,-1682,-1694,-1707,-1720,-1732,-1745,-1758,-1771,-1785,-1798,-1812,-1826,-1840,-1855,-1869,
+-1884,-1899,-1914,-1930,-1945,-1960,-1976,-1991,-2007,-2022,-2037,-2052,-2067,-2081,-2095,-2109,-2123,-2136,-2149,-2162,-2174,
+-2186,-2198,-2210,-2222,-2234,-2246,-2258,-2270,-2283,-2296,-2309,-2323,-2337,-2352,-2367,-2382,-2399,-2416,-2433,-2451,-2469,
+-2488,-2508,-2527,-2547,-2567,-2588,-2608,-2629,-2650,-2670,-2691,-2711,-2731,-2751,-2771,-2790,-2810,-2828,-2847,-2865,-2884,
+-2902,-2919,-2937,-2954,-2972,-2989,-3006,-3023,-3041,-3058,-3075,-3092,-3109,-3127,-3144,-3161,-3178,-3195,-3212,-3229,-3246,
+-3263,-3279,-3295,-3311,-3327,-3342,-3357,-3372,-3386,-3400,-3414,-3428,-3441,-3454,-3466,-3479,-3491,-3503,-3515,-3526,-3538,
+-3549,-3560,-3571,-3582,-3592,-3603,-3613,-3623,-3632,-3642,-3650,-3659,-3667,-3675,-3683,-3690,-3696,-3702,-3708,-3713,-3718,
+-3722,-3727,-3731,-3735,-3738,-3742,-3745,-3749,-3753,-3756,-3761,-3765,-3770,-3775,-3780,-3786,-3792,-3799,-3806,-3814,-3821,
+-3829,-3838,-3846,-3854,-3863,-3871,-3879,-3886,-3893,-3900,-3906,-3911,-3915,-3919,-3922,-3924,-3925,-3925,-3924,-3923,-3920,
+-3917,-3914,-3910,-3906,-3901,-3896,-3892,-3887,-3883,-3879,-3876,-3873,-3871,-3870,-3870,-3870,-3872,-3874,-3877,-3880,-3884,
+-3889,-3894,-3899,-3905,-3910,-3914,-3918,-3922,-3924,-3925,-3924,-3922,-3918,-3913,-3905,-3895,-3883,-3869,-3852,-3834,-3813,
+-3791,-3767,-3741,-3715,-3687,-3658,-3629,-3600,-3570,-3542,-3514,-3487,-3461,-3437,-3415,-3395,-3377,-3361,-3348,-3338,-3329,
+-3324,-3321,-3321,-3322,-3326,-3332,-3340,-3349,-3360,-3372,-3384,-3397,-3411,-3425,-3438,-3452,-3465,-3478,-3490,-3502,-3513,
+-3524,-3534,-3543,-3552,-3561,-3570,-3579,-3587,-3597,-3606,-3617,-3628,-3640,-3653,-3667,-3683,-3700,-3718,-3737,-3758,-3780,
+-3803,-3827,-3851,-3877,-3903,-3929,-3955,-3982,-4007,-4033,-4058,-4081,-4104,-4126,-4146,-4165,-4182,-4198,-4213,-4226,-4238,
+-4248,-4257,-4265,-4271,-4277,-4282,-4287,-4291,-4294,-4298,-4301,-4305,-4308,-4312,-4317,-4321,-4326,-4332,-4338,-4344,-4351,
+-4358,-4365,-4372,-4379,-4386,-4393,-4400,-4406,-4412,-4418,-4423,-4427,-4431,-4434,-4436,-4438,-4440,-4441,-4442,-4442,-4442,
+-4442,-4442,-4442,-4443,-4443,-4444,-4446,-4448,-4450,-4453,-4457,-4462,-4467,-4472,-4478,-4485,-4492,-4499,-4506,-4513,-4520,
+-4527,-4534,-4540,-4546,-4552,-4556,-4560,-4563,-4565,-4567,-4567,-4567,-4566,-4564,-4562,-4559,-4555,-4551,-4547,-4542,-4538,
+-4533,-4528,-4524,-4520,-4516,-4512,-4509,-4506,-4503,-4502,-4500,-4499,-4498,-4498,-4498,-4499,-4499,-4500,-4501,-4502,-4503,
+-4504,-4505,-4506,-4507,-4508,-4508,-4509,-4509,-4509,-4509,-4508,-4508,-4507,-4507,-4506,-4505,-4504,-4503,-4502,-4501,-4499,
+-4498,-4496,-4495,-4493,-4491,-4488,-4486,-4483,-4480,-4476,-4472,-4467,-4463,-4457,-4452,-4445,-4439,-4432,-4425,-4418,-4410,
+-4402,-4394,-4387,-4379,-4371,-4363,-4356,-4349,-4342,-4336,-4329,-4324,-4319,-4314,-4309,-4305,-4302,-4298,-4295,-4293,-4290,
+-4288,-4285,-4283,-4281,-4278,-4276,-4273,-4270,-4267,-4264,-4260,-4256,-4252,-4248,-4243,-4239,-4234,-4229,-4224,-4219,-4215,
+-4210,-4205,-4201,-4197,-4193,-4189,-4185,-4182,-4179,-4176,-4173,-4170,-4168,-4165,-4162,-4159,-4157,-4153,-4150,-4146,-4142,
+-4138,-4133,-4128,-4122,-4116,-4109,-4103,-4095,-4088,-4080,-4072,-4064,-4056,-4048,-4040,-4032,-4024,-4016,-4009,-4002,-3995,
+-3989,-3983,-3977,-3972,-3967,-3962,-3958,-3953,-3949,-3945,-3940,-3936,-3931,-3926,-3921,-3915,-3909,-3903,-3895,-3888,-3879,
+-3871,-3861,-3851,-3841,-3830,-3819,-3808,-3797,-3785,-3773,-3762,-3750,-3739,-3729,-3718,-3708,-3699,-3690,-3683,-3675,-3669,
+-3662,-3657,-3652,-3648,-3644,-3641,-3638,-3635,-3632,-3630,-3627,-3624,-3620,-3616,-3612,-3607,-3601,-3594,-3586,-3577,-3567,
+-3555,-3543,-3529,-3515,-3499,-3482,-3463,-3444,-3424,-3403,-3381,-3359,-3336,-3312,-3289,-3265,-3241,-3217,-3193,-3170,-3148,
+-3126,-3105,-3084,-3065,-3047,-3030,-3015,-3001,-2988,-2976,-2966,-2958,-2951,-2945,-2941,-2938,-2936,-2935,-2936,-2937,-2939,
+-2942,-2946,-2950,-2954,-2958,-2963,-2967,-2972,-2976,-2980,-2983,-2986,-2988,-2989,-2990,-2990,-2989,-2988,-2986,-2983,-2980,
+-2976,-2972,-2967,-2962,-2957,-2951,-2946,-2940,-2934,-2929,-2923,-2918,-2913,-2909,-2905,-2901,-2898,-2895,-2892,-2890,-2888,
+-2886,-2885,-2884,-2883,-2883,-2882,-2882,-2883,-2883,-2883,-2883,-2884,-2885,-2885,-2886,-2886,-2887,-2888,-2888,-2889,-2890,
+-2890,-2891,-2891,-2891,-2891,-2891,-2891,-2890,-2889,-2887,-2885,-2882,-2879,-2875,-2871,-2866,-2860,-2854,-2846,-2839,-2830,
+-2821,-2811,-2801,-2790,-2779,-2768,-2756,-2744,-2733,-2721,-2709,-2698,-2687,-2676,-2666,-2656,-2647,-2638,-2630,-2623,-2616,
+-2610,-2604,-2599,-2594,-2589,-2585,-2580,-2576,-2572,-2568,-2564,-2560,-2555,-2550,-2545,-2539,-2533,-2527,-2521,-2514,-2507,
+-2501,-2494,-2487,-2481,-2475,-2470,-2465,-2461,-2458,-2455,-2454,-2454,-2455,-2457,-2461,-2466,-2472,-2479,-2487,-2496,-2506,
+-2516,-2527,-2539,-2550,-2561,-2572,-2582,-2592,-2600,-2607,-2612,-2616,-2618,-2618,-2615,-2611,-2604,-2594,-2583,-2568,-2552,
+-2533,-2512,-2489,-2464,-2438,-2410,-2381,-2351,-2320,-2289,-2258,-2228,-2197,-2168,-2139,-2112,-2086,-2062,-2040,-2020,-2002,
+-1986,-1973,-1962,-1953,-1946,-1942,-1940,-1939,-1941,-1944,-1949,-1955,-1963,-1971,-1980,-1989,-1999,-2009,-2019,-2028,-2036,
+-2044,-2052,-2058,-2063,-2067,-2069,-2071,-2071,-2069,-2067,-2063,-2058,-2052,-2045,-2037,-2028,-2018,-2008,-1998,-1987,-1976,
+-1965,-1955,-1944,-1934,-1924,-1915,-1906,-1898,-1891,-1884,-1878,-1873,-1868,-1864,-1860,-1857,-1854,-1852,-1850,-1848,-1845,
+-1843,-1841,-1838,-1835,-1832,-1828,-1824,-1820,-1814,-1809,-1803,-1796,-1789,-1782,-1775,-1767,-1760,-1752,-1745,-1738,-1732,
+-1726,-1721,-1717,-1713,-1711,-1709,-1708,-1709,-1710,-1712,-1716,-1720,-1725,-1731,-1737,-1744,-1751,-1759,-1766,-1773,-1780,
+-1787,-1793,-1798,-1802,-1806,-1808,-1810,-1810,-1809,-1807,-1804,-1800,-1795,-1789,-1782,-1774,-1766,-1757,-1748,-1738,-1728,
+-1719,-1709,-1699,-1690,-1682,-1673,-1665,-1658,-1651,-1645,-1639,-1633,-1628,-1623,-1618,-1614,-1609,-1604,-1600,-1594,-1589,
+-1583,-1577,-1570,-1562,-1554,-1546,-1536,-1526,-1516,-1505,-1494,-1482,-1470,-1458,-1446,-1434,-1422,-1411,-1400,-1389,-1379,
+-1370,-1361,-1354,-1347,-1341,-1335,-1331,-1327,-1325,-1322,-1321,-1320,-1319,-1319,-1319,-1319,-1320,-1320,-1321,-1321,-1321,
+-1321,-1320,-1319,-1318,-1317,-1316,-1314,-1312,-1310,-1308,-1306,-1305,-1303,-1302,-1301,-1300,-1300,-1301,-1302,-1303,-1305,
+-1308,-1311,-1315,-1319,-1324,-1328,-1334,-1339,-1344,-1350,-1355,-1360,-1364,-1413,-1417,-1421,-1424,-1426,-1428,-1429,-1430,
+-1430,-1429,-1428,-1425,-1423,-1419,-1416,-1412,-1407,-1402,-1397,-1392,-1387,-1381,-1376,-1371,-1365,-1360,-1355,-1350,-1345,
+-1341,-1336,-1331,-1327,-1322,-1317,-1313,-1308,-1303,-1298,-1293,-1287,-1282,-1276,-1270,-1264,-1257,-1251,-1245,-1238,-1232,
+-1226,-1220,-1214,-1209,-1204,-1199,-1195,-1192,-1189,-1186,-1185,-1183,-1183,-1182,-1183,-1183,-1184,-1185,-1187,-1188,-1189,
+-1190,-1191,-1191,-1191,-1190,-1188,-1185,-1181,-1176,-1169,-1162,-1153,-1143,-1131,-1118,-1104,-1089,-1072,-1054,-1035,-1015,
+-995,-974,-952,-930,-907,-884,-862,-839,-817,-795,-774,-753,-733,-713,-695,-677,-661,-645,-630,-617,-604,
+-592,-581,-571,-562,-554,-546,-539,-533,-527,-522,-517,-513,-509,-505,-501,-498,-495,-493,-490,-488,-486,
+-484,-482,-481,-480,-480,-480,-480,-481,-482,-484,-486,-489,-493,-498,-503,-508,-515,-522,-529,-537,-546,
+-555,-565,-575,-585,-595,-606,-617,-627,-638,-648,-658,-667,-676,-685,-693,-701,-707,-714,-719,-724,-728,
+-731,-733,-735,-736,-737,-737,-736,-735,-734,-732,-730,-727,-725,-722,-719,-716,-714,-711,-708,-705,-702,
+-699,-697,-694,-691,-688,-685,-683,-680,-676,-673,-670,-666,-662,-658,-654,-650,-645,-641,-636,-632,-627,
+-622,-618,-614,-610,-607,-604,-602,-600,-599,-598,-598,-599,-600,-602,-605,-608,-611,-616,-620,-625,-630,
+-635,-640,-645,-649,-653,-657,-660,-662,-663,-663,-662,-660,-657,-653,-648,-642,-635,-627,-618,-608,-598,
+-587,-576,-565,-554,-543,-533,-523,-513,-505,-497,-491,-486,-483,-480,-480,-481,-484,-488,-493,-501,-509,
+-520,-531,-544,-557,-572,-587,-604,-620,-637,-655,-672,-690,-707,-724,-741,-758,-774,-789,-804,-818,-832,
+-845,-858,-869,-881,-892,-902,-912,-922,-932,-941,-950,-959,-968,-977,-986,-995,-1004,-1013,-1023,-1032,-1042,
+-1052,-1062,-1072,-1082,-1092,-1103,-1113,-1124,-1134,-1144,-1155,-1165,-1175,-1185,-1195,-1204,-1214,-1223,-1233,-1242,-1252,
+-1261,-1270,-1280,-1289,-1299,-1308,-1318,-1328,-1339,-1349,-1360,-1371,-1383,-1394,-1406,-1419,-1431,-1444,-1457,-1470,-1483,
+-1496,-1510,-1523,-1536,-1550,-1563,-1576,-1589,-1602,-1615,-1627,-1640,-1652,-1664,-1676,-1687,-1699,-1710,-1722,-1733,-1745,
+-1756,-1768,-1779,-1791,-1804,-1816,-1829,-1842,-1855,-1868,-1882,-1896,-1910,-1925,-1940,-1955,-1970,-1985,-2000,-2015,-2030,
+-2045,-2059,-2074,-2088,-2102,-2115,-2128,-2141,-2153,-2165,-2177,-2188,-2200,-2210,-2221,-2232,-2242,-2253,-2264,-2275,-2286,
+-2297,-2309,-2321,-2334,-2347,-2361,-2376,-2391,-2406,-2423,-2440,-2457,-2475,-2494,-2513,-2532,-2552,-2571,-2591,-2612,-2632,
+-2652,-2672,-2692,-2712,-2732,-2751,-2770,-2788,-2807,-2825,-2842,-2860,-2877,-2894,-2910,-2927,-2943,-2960,-2976,-2992,-3008,
+-3025,-3041,-3058,-3074,-3091,-3108,-3126,-3143,-3161,-3178,-3196,-3214,-3232,-3249,-3267,-3285,-3302,-3319,-3336,-3353,-3369,
+-3384,-3400,-3415,-3429,-3443,-3456,-3469,-3481,-3493,-3504,-3515,-3525,-3535,-3544,-3553,-3561,-3569,-3577,-3584,-3591,-3598,
+-3604,-3610,-3616,-3622,-3628,-3633,-3638,-3643,-3648,-3653,-3657,-3662,-3666,-3671,-3675,-3679,-3684,-3688,-3692,-3697,-3701,
+-3706,-3710,-3715,-3720,-3725,-3731,-3736,-3742,-3748,-3754,-3760,-3766,-3772,-3778,-3784,-3790,-3796,-3802,-3807,-3812,-3817,
+-3822,-3826,-3830,-3833,-3836,-3838,-3840,-3841,-3841,-3842,-3841,-3840,-3839,-3838,-3836,-3834,-3832,-3830,-3828,-3826,-3825,
+-3823,-3822,-3821,-3821,-3821,-3821,-3822,-3824,-3826,-3828,-3830,-3833,-3836,-3839,-3842,-3845,-3848,-3850,-3851,-3852,-3852,
+-3851,-3848,-3845,-3840,-3833,-3826,-3816,-3805,-3793,-3779,-3764,-3747,-3729,-3709,-3689,-3668,-3646,-3624,-3601,-3578,-3556,
+-3534,-3512,-3491,-3471,-3452,-3434,-3418,-3403,-3390,-3378,-3368,-3360,-3353,-3348,-3345,-3343,-3343,-3343,-3345,-3348,-3352,
+-3357,-3362,-3368,-3374,-3380,-3386,-3393,-3400,-3406,-3413,-3420,-3426,-3433,-3440,-3447,-3455,-3463,-3471,-3481,-3491,-3502,
+-3514,-3527,-3542,-3558,-3575,-3593,-3613,-3634,-3657,-3681,-3705,-3731,-3757,-3785,-3812,-3840,-3868,-3896,-3923,-3950,-3976,
+-4001,-4025,-4047,-4069,-4088,-4106,-4123,-4137,-4150,-4162,-4172,-4180,-4188,-4194,-4198,-4203,-4206,-4209,-4212,-4214,-4217,
+-4220,-4223,-4227,-4231,-4237,-4243,-4250,-4257,-4266,-4276,-4286,-4297,-4308,-4320,-4333,-4345,-4357,-4370,-4382,-4393,-4404,
+-4414,-4424,-4432,-4440,-4446,-4451,-4456,-4459,-4460,-4461,-4461,-4461,-4459,-4457,-4454,-4451,-4448,-4445,-4441,-4438,-4436,
+-4433,-4432,-4431,-4430,-4431,-4432,-4433,-4436,-4439,-4442,-4447,-4451,-4457,-4462,-4467,-4473,-4478,-4484,-4489,-4494,-4498,
+-4502,-4505,-4507,-4509,-4510,-4511,-4511,-4510,-4508,-4506,-4504,-4501,-4498,-4494,-4490,-4487,-4483,-4479,-4475,-4472,-4468,
+-4466,-4463,-4461,-4459,-4457,-4456,-4456,-4455,-4455,-4456,-4457,-4458,-4459,-4460,-4462,-4464,-4465,-4467,-4469,-4471,-4472,
+-4474,-4475,-4476,-4477,-4478,-4478,-4479,-4479,-4479,-4478,-4478,-4477,-4476,-4474,-4472,-4470,-4468,-4465,-4463,-4459,-4456,
+-4452,-4448,-4444,-4439,-4434,-4429,-4423,-4418,-4412,-4406,-4400,-4393,-4387,-4380,-4374,-4367,-4360,-4354,-4348,-4341,-4335,
+-4329,-4323,-4317,-4312,-4306,-4301,-4296,-4291,-4286,-4281,-4277,-4272,-4267,-4263,-4258,-4253,-4248,-4243,-4238,-4232,-4227,
+-4221,-4216,-4210,-4204,-4198,-4192,-4186,-4180,-4174,-4168,-4163,-4157,-4152,-4147,-4142,-4138,-4134,-4130,-4127,-4124,-4121,
+-4118,-4116,-4113,-4111,-4109,-4107,-4105,-4103,-4101,-4098,-4095,-4092,-4089,-4085,-4081,-4076,-4071,-4066,-4060,-4054,-4047,
+-4040,-4033,-4026,-4018,-4010,-4003,-3995,-3988,-3980,-3973,-3966,-3959,-3953,-3947,-3942,-3936,-3931,-3927,-3923,-3919,-3915,
+-3911,-3908,-3905,-3901,-3898,-3894,-3890,-3886,-3881,-3876,-3870,-3864,-3857,-3850,-3842,-3833,-3824,-3814,-3804,-3794,-3783,
+-3772,-3761,-3749,-3738,-3727,-3715,-3704,-3694,-3684,-3674,-3665,-3657,-3649,-3642,-3635,-3629,-3624,-3620,-3616,-3613,-3610,
+-3607,-3605,-3603,-3600,-3598,-3596,-3593,-3590,-3586,-3582,-3576,-3570,-3563,-3555,-3546,-3536,-3524,-3511,-3498,-3483,-3466,
+-3449,-3431,-3412,-3392,-3371,-3350,-3328,-3306,-3283,-3261,-3238,-3216,-3195,-3173,-3153,-3133,-3114,-3096,-3080,-3064,-3050,
+-3036,-3024,-3014,-3004,-2996,-2990,-2984,-2979,-2976,-2973,-2972,-2971,-2970,-2971,-2971,-2972,-2973,-2974,-2975,-2976,-2977,
+-2977,-2977,-2977,-2976,-2975,-2973,-2970,-2968,-2964,-2960,-2956,-2952,-2947,-2942,-2936,-2931,-2925,-2920,-2915,-2909,-2904,
+-2900,-2895,-2891,-2887,-2884,-2881,-2878,-2875,-2873,-2872,-2870,-2869,-2869,-2868,-2867,-2867,-2867,-2867,-2866,-2866,-2866,
+-2866,-2866,-2866,-2865,-2865,-2865,-2865,-2864,-2864,-2864,-2864,-2864,-2864,-2864,-2865,-2865,-2866,-2866,-2867,-2867,-2868,
+-2869,-2869,-2869,-2870,-2869,-2869,-2868,-2867,-2865,-2863,-2860,-2856,-2852,-2847,-2841,-2835,-2828,-2821,-2813,-2804,-2795,
+-2785,-2775,-2764,-2753,-2742,-2731,-2720,-2709,-2697,-2686,-2675,-2664,-2654,-2644,-2634,-2624,-2614,-2605,-2596,-2588,-2579,
+-2571,-2563,-2555,-2547,-2540,-2532,-2524,-2517,-2509,-2502,-2494,-2487,-2480,-2473,-2466,-2459,-2453,-2447,-2442,-2437,-2433,
+-2430,-2427,-2426,-2425,-2426,-2427,-2430,-2434,-2438,-2444,-2451,-2459,-2467,-2476,-2486,-2497,-2507,-2518,-2529,-2539,-2549,
+-2559,-2567,-2575,-2581,-2586,-2589,-2591,-2590,-2588,-2584,-2577,-2569,-2558,-2546,-2531,-2515,-2496,-2476,-2455,-2432,-2408,
+-2383,-2357,-2332,-2306,-2280,-2254,-2229,-2205,-2182,-2160,-2140,-2121,-2104,-2089,-2076,-2065,-2056,-2049,-2044,-2041,-2040,
+-2040,-2043,-2047,-2052,-2058,-2065,-2073,-2082,-2090,-2099,-2108,-2117,-2125,-2132,-2139,-2145,-2149,-2153,-2155,-2156,-2155,
+-2154,-2150,-2146,-2141,-2134,-2126,-2117,-2107,-2097,-2086,-2074,-2062,-2049,-2037,-2024,-2012,-2000,-1988,-1976,-1965,-1954,
+-1944,-1934,-1925,-1917,-1909,-1901,-1894,-1887,-1880,-1874,-1868,-1863,-1857,-1851,-1845,-1840,-1834,-1828,-1822,-1816,-1809,
+-1803,-1796,-1790,-1783,-1777,-1770,-1764,-1758,-1752,-1747,-1742,-1737,-1734,-1731,-1728,-1727,-1726,-1726,-1727,-1729,-1732,
+-1735,-1739,-1743,-1748,-1754,-1760,-1766,-1772,-1779,-1785,-1791,-1796,-1802,-1806,-1810,-1813,-1816,-1817,-1818,-1818,-1817,
+-1815,-1812,-1808,-1803,-1798,-1792,-1785,-1778,-1770,-1762,-1754,-1746,-1738,-1729,-1721,-1713,-1705,-1697,-1689,-1682,-1675,
+-1669,-1662,-1656,-1650,-1644,-1639,-1633,-1627,-1622,-1616,-1610,-1603,-1597,-1590,-1582,-1575,-1567,-1559,-1550,-1541,-1532,
+-1523,-1513,-1503,-1494,-1484,-1475,-1465,-1456,-1448,-1440,-1432,-1425,-1418,-1412,-1406,-1401,-1397,-1394,-1391,-1388,-1386,
+-1384,-1383,-1382,-1381,-1381,-1380,-1380,-1379,-1379,-1378,-1377,-1376,-1374,-1373,-1371,-1369,-1366,-1364,-1361,-1359,-1356,
+-1353,-1351,-1349,-1347,-1345,-1344,-1343,-1343,-1343,-1344,-1345,-1347,-1350,-1353,-1357,-1361,-1365,-1370,-1376,-1381,-1387,
+-1392,-1398,-1403,-1408,-1413,-1463,-1467,-1471,-1474,-1477,-1480,-1482,-1483,-1484,-1484,-1484,-1484,-1483,-1482,-1480,-1478,
+-1476,-1473,-1471,-1468,-1465,-1461,-1458,-1455,-1451,-1448,-1444,-1440,-1437,-1433,-1428,-1424,-1420,-1415,-1410,-1404,-1399,
+-1393,-1386,-1379,-1372,-1365,-1357,-1348,-1340,-1331,-1322,-1313,-1303,-1294,-1285,-1276,-1267,-1258,-1250,-1243,-1235,-1229,
+-1223,-1218,-1213,-1209,-1206,-1204,-1203,-1202,-1201,-1202,-1202,-1203,-1205,-1206,-1208,-1209,-1210,-1211,-1211,-1211,-1210,
+-1208,-1206,-1202,-1197,-1191,-1184,-1175,-1166,-1155,-1143,-1130,-1115,-1100,-1083,-1066,-1048,-1029,-1010,-991,-971,-951,
+-931,-911,-891,-872,-853,-834,-817,-800,-783,-768,-754,-740,-727,-715,-704,-694,-685,-676,-669,-662,-655,
+-650,-644,-640,-635,-631,-628,-624,-621,-618,-615,-613,-610,-608,-606,-604,-602,-601,-600,-599,-598,-598,
+-598,-598,-599,-601,-603,-605,-608,-612,-616,-620,-625,-631,-637,-644,-651,-658,-665,-673,-681,-689,-696,
+-704,-712,-719,-726,-733,-739,-745,-750,-755,-759,-763,-766,-768,-770,-771,-772,-772,-771,-770,-769,-767,
+-765,-763,-760,-758,-755,-752,-749,-746,-743,-740,-737,-734,-731,-729,-726,-723,-720,-718,-715,-712,-709,
+-706,-703,-700,-697,-693,-689,-686,-682,-678,-674,-670,-666,-661,-657,-654,-650,-646,-643,-640,-638,-636,
+-634,-633,-632,-632,-633,-634,-635,-637,-640,-642,-646,-649,-653,-656,-660,-664,-667,-670,-673,-676,-678,
+-679,-680,-680,-680,-678,-676,-673,-670,-666,-661,-655,-649,-642,-636,-629,-621,-614,-607,-600,-594,-588,
+-583,-578,-574,-571,-569,-568,-568,-570,-572,-576,-580,-586,-593,-601,-610,-620,-630,-642,-654,-666,-679,
+-692,-706,-720,-733,-747,-761,-774,-788,-801,-813,-826,-838,-850,-861,-872,-883,-894,-904,-914,-923,-933,
+-943,-952,-961,-971,-980,-990,-999,-1009,-1019,-1029,-1039,-1049,-1059,-1070,-1080,-1091,-1102,-1112,-1123,-1134,-1145,
+-1156,-1166,-1177,-1188,-1198,-1209,-1219,-1230,-1240,-1250,-1261,-1271,-1281,-1292,-1302,-1313,-1324,-1335,-1346,-1357,-1369,
+-1380,-1392,-1405,-1417,-1430,-1443,-1456,-1469,-1483,-1497,-1510,-1524,-1538,-1552,-1566,-1580,-1593,-1607,-1620,-1633,-1646,
+-1659,-1672,-1684,-1696,-1708,-1720,-1731,-1742,-1754,-1765,-1776,-1787,-1798,-1809,-1821,-1832,-1844,-1856,-1868,-1880,-1893,
+-1905,-1919,-1932,-1945,-1959,-1973,-1987,-2001,-2016,-2030,-2044,-2058,-2072,-2086,-2099,-2113,-2126,-2138,-2151,-2162,-2174,
+-2185,-2196,-2207,-2217,-2227,-2237,-2246,-2256,-2266,-2275,-2285,-2295,-2305,-2316,-2327,-2338,-2350,-2362,-2375,-2388,-2403,
+-2417,-2432,-2448,-2465,-2482,-2499,-2517,-2535,-2554,-2573,-2592,-2611,-2630,-2649,-2669,-2688,-2707,-2725,-2744,-2762,-2780,
+-2798,-2815,-2832,-2849,-2865,-2881,-2897,-2913,-2929,-2945,-2960,-2976,-2992,-3008,-3024,-3040,-3056,-3073,-3090,-3107,-3124,
+-3142,-3159,-3177,-3195,-3214,-3232,-3250,-3269,-3287,-3305,-3323,-3340,-3358,-3375,-3391,-3407,-3423,-3438,-3452,-3466,-3479,
+-3492,-3504,-3515,-3526,-3536,-3546,-3555,-3563,-3571,-3578,-3585,-3591,-3597,-3603,-3609,-3614,-3619,-3623,-3628,-3632,-3636,
+-3640,-3644,-3648,-3652,-3656,-3660,-3664,-3667,-3671,-3675,-3679,-3683,-3687,-3691,-3695,-3699,-3703,-3707,-3711,-3715,-3719,
+-3723,-3727,-3731,-3735,-3739,-3743,-3747,-3751,-3755,-3758,-3762,-3765,-3768,-3772,-3775,-3777,-3780,-3782,-3785,-3786,-3788,
+-3790,-3792,-3793,-3794,-3795,-3796,-3797,-3798,-3799,-3800,-3800,-3801,-3802,-3803,-3803,-3804,-3805,-3806,-3807,-3808,-3809,
+-3810,-3811,-3811,-3812,-3813,-3813,-3813,-3812,-3811,-3810,-3808,-3806,-3803,-3800,-3795,-3791,-3785,-3779,-3772,-3764,-3756,
+-3747,-3737,-3727,-3716,-3705,-3693,-3681,-3669,-3657,-3644,-3631,-3619,-3606,-3594,-3581,-3569,-3557,-3546,-3535,-3524,-3514,
+-3504,-3494,-3485,-3476,-3467,-3459,-3451,-3443,-3435,-3428,-3421,-3414,-3407,-3400,-3393,-3387,-3381,-3376,-3370,-3366,-3362,
+-3359,-3357,-3355,-3355,-3357,-3359,-3363,-3369,-3377,-3386,-3398,-3411,-3427,-3444,-3464,-3486,-3509,-3535,-3562,-3591,-3621,
+-3652,-3685,-3718,-3751,-3785,-3819,-3852,-3885,-3917,-3948,-3977,-4005,-4031,-4056,-4078,-4098,-4115,-4131,-4144,-4155,-4163,
+-4170,-4175,-4178,-4179,-4179,-4178,-4176,-4174,-4171,-4169,-4166,-4165,-4163,-4163,-4164,-4167,-4171,-4176,-4183,-4192,-4202,
+-4214,-4227,-4242,-4259,-4276,-4294,-4313,-4333,-4353,-4373,-4393,-4412,-4431,-4449,-4466,-4481,-4495,-4508,-4519,-4528,-4536,
+-4541,-4545,-4547,-4548,-4547,-4544,-4541,-4536,-4530,-4523,-4515,-4507,-4499,-4491,-4482,-4474,-4467,-4459,-4453,-4447,-4442,
+-4437,-4434,-4431,-4429,-4428,-4428,-4428,-4429,-4431,-4433,-4436,-4438,-4441,-4444,-4447,-4450,-4453,-4455,-4457,-4459,-4460,
+-4461,-4462,-4462,-4461,-4460,-4459,-4457,-4455,-4452,-4449,-4446,-4443,-4440,-4437,-4434,-4431,-4428,-4425,-4423,-4421,-4419,
+-4417,-4416,-4415,-4415,-4415,-4415,-4416,-4416,-4418,-4419,-4421,-4423,-4425,-4428,-4430,-4433,-4436,-4438,-4441,-4444,-4446,
+-4449,-4451,-4453,-4455,-4457,-4458,-4459,-4460,-4460,-4460,-4460,-4459,-4458,-4457,-4455,-4453,-4450,-4447,-4443,-4439,-4435,
+-4431,-4426,-4420,-4415,-4409,-4403,-4397,-4390,-4383,-4377,-4370,-4362,-4355,-4348,-4340,-4333,-4325,-4317,-4310,-4302,-4294,
+-4286,-4278,-4270,-4262,-4254,-4246,-4238,-4229,-4221,-4213,-4205,-4196,-4188,-4180,-4172,-4163,-4156,-4148,-4140,-4133,-4126,
+-4119,-4113,-4107,-4101,-4095,-4090,-4086,-4081,-4078,-4074,-4071,-4068,-4065,-4063,-4061,-4059,-4057,-4055,-4053,-4052,-4049,
+-4047,-4045,-4042,-4039,-4036,-4032,-4028,-4023,-4019,-4013,-4008,-4002,-3996,-3989,-3982,-3976,-3969,-3962,-3955,-3948,-3941,
+-3935,-3929,-3923,-3917,-3912,-3907,-3903,-3899,-3896,-3893,-3890,-3888,-3886,-3884,-3883,-3882,-3880,-3879,-3878,-3876,-3874,
+-3872,-3869,-3866,-3863,-3858,-3854,-3848,-3842,-3835,-3828,-3820,-3811,-3802,-3792,-3782,-3772,-3761,-3750,-3739,-3728,-3716,
+-3705,-3694,-3684,-3674,-3664,-3654,-3646,-3637,-3629,-3622,-3615,-3609,-3603,-3598,-3593,-3589,-3584,-3580,-3576,-3572,-3568,
+-3563,-3558,-3553,-3547,-3541,-3534,-3527,-3518,-3509,-3499,-3489,-3477,-3464,-3451,-3437,-3422,-3407,-3391,-3374,-3357,-3340,
+-3322,-3305,-3287,-3270,-3252,-3235,-3219,-3202,-3187,-3172,-3157,-3144,-3131,-3119,-3107,-3097,-3087,-3078,-3070,-3062,-3055,
+-3048,-3042,-3037,-3031,-3026,-3021,-3017,-3012,-3007,-3002,-2997,-2991,-2986,-2980,-2973,-2967,-2960,-2953,-2945,-2937,-2930,
+-2922,-2914,-2905,-2897,-2889,-2882,-2874,-2867,-2860,-2853,-2847,-2842,-2837,-2832,-2828,-2825,-2822,-2820,-2819,-2817,-2817,
+-2817,-2817,-2817,-2818,-2819,-2820,-2821,-2823,-2824,-2826,-2827,-2828,-2830,-2831,-2832,-2833,-2834,-2835,-2836,-2837,-2838,
+-2839,-2840,-2841,-2843,-2844,-2846,-2848,-2851,-2853,-2856,-2860,-2863,-2867,-2870,-2874,-2878,-2882,-2887,-2890,-2894,-2898,
+-2901,-2904,-2907,-2909,-2910,-2911,-2911,-2910,-2909,-2907,-2904,-2900,-2896,-2890,-2884,-2877,-2870,-2862,-2853,-2844,-2834,
+-2824,-2814,-2803,-2792,-2781,-2769,-2757,-2746,-2734,-2722,-2710,-2698,-2686,-2674,-2662,-2649,-2637,-2625,-2613,-2600,-2588,
+-2575,-2563,-2550,-2538,-2526,-2513,-2501,-2489,-2477,-2466,-2455,-2445,-2435,-2426,-2417,-2410,-2403,-2398,-2393,-2390,-2388,
+-2387,-2387,-2389,-2392,-2396,-2402,-2409,-2416,-2425,-2434,-2445,-2455,-2467,-2478,-2490,-2502,-2513,-2524,-2534,-2544,-2552,
+-2560,-2566,-2571,-2574,-2576,-2577,-2575,-2572,-2568,-2561,-2553,-2544,-2533,-2521,-2508,-2493,-2478,-2462,-2446,-2429,-2413,
+-2396,-2379,-2363,-2348,-2333,-2320,-2307,-2296,-2285,-2276,-2269,-2263,-2258,-2254,-2252,-2251,-2251,-2253,-2255,-2258,-2262,
+-2267,-2271,-2277,-2282,-2287,-2292,-2296,-2300,-2304,-2307,-2308,-2309,-2309,-2308,-2305,-2302,-2297,-2291,-2284,-2276,-2267,
+-2256,-2245,-2233,-2220,-2206,-2191,-2176,-2161,-2145,-2129,-2113,-2096,-2080,-2064,-2047,-2031,-2015,-2000,-1984,-1970,-1955,
+-1941,-1927,-1914,-1901,-1889,-1877,-1866,-1855,-1845,-1835,-1826,-1818,-1810,-1803,-1796,-1790,-1785,-1780,-1776,-1773,-1771,
+-1769,-1768,-1768,-1768,-1770,-1772,-1774,-1778,-1782,-1786,-1791,-1797,-1802,-1809,-1815,-1822,-1828,-1835,-1841,-1847,-1853,
+-1859,-1864,-1868,-1872,-1876,-1878,-1880,-1881,-1882,-1881,-1880,-1878,-1875,-1872,-1868,-1863,-1858,-1852,-1845,-1839,-1832,
+-1824,-1817,-1809,-1801,-1794,-1786,-1778,-1770,-1763,-1755,-1748,-1740,-1733,-1726,-1718,-1711,-1704,-1697,-1690,-1682,-1675,
+-1667,-1660,-1652,-1643,-1635,-1627,-1618,-1609,-1600,-1591,-1581,-1572,-1563,-1553,-1544,-1535,-1527,-1518,-1510,-1502,-1495,
+-1488,-1482,-1476,-1471,-1466,-1462,-1458,-1455,-1453,-1451,-1449,-1448,-1447,-1446,-1445,-1445,-1444,-1444,-1443,-1443,-1442,
+-1441,-1440,-1439,-1437,-1435,-1433,-1431,-1429,-1426,-1423,-1420,-1418,-1415,-1412,-1410,-1407,-1405,-1404,-1403,-1402,-1401,
+-1402,-1402,-1404,-1405,-1408,-1410,-1414,-1417,-1421,-1425,-1430,-1435,-1440,-1445,-1449,-1454,-1459,-1463,-1504,-1506,-1509,
+-1512,-1514,-1516,-1519,-1521,-1523,-1525,-1526,-1528,-1529,-1531,-1532,-1533,-1534,-1534,-1535,-1535,-1536,-1536,-1535,-1535,
+-1534,-1533,-1532,-1531,-1528,-1526,-1523,-1520,-1516,-1511,-1506,-1500,-1493,-1486,-1478,-1470,-1460,-1451,-1440,-1429,-1418,
+-1406,-1394,-1382,-1370,-1357,-1345,-1333,-1321,-1309,-1298,-1288,-1278,-1269,-1260,-1253,-1246,-1240,-1236,-1232,-1229,-1227,
+-1226,-1226,-1227,-1228,-1230,-1232,-1235,-1237,-1240,-1243,-1246,-1248,-1250,-1252,-1252,-1252,-1251,-1249,-1246,-1242,-1237,
+-1230,-1222,-1214,-1204,-1192,-1180,-1167,-1153,-1138,-1122,-1106,-1089,-1072,-1054,-1037,-1019,-1001,-984,-967,-950,-934,
+-918,-903,-888,-875,-862,-850,-838,-828,-818,-809,-801,-793,-786,-780,-774,-768,-763,-759,-755,-751,-747,
+-744,-741,-738,-735,-732,-730,-727,-725,-723,-720,-718,-717,-715,-714,-713,-712,-712,-712,-712,-713,-714,
+-716,-718,-721,-724,-727,-731,-735,-740,-745,-750,-755,-760,-766,-771,-777,-782,-787,-792,-797,-802,-806,
+-810,-813,-816,-819,-821,-822,-823,-824,-824,-824,-823,-822,-820,-818,-816,-814,-811,-808,-805,-802,-799,
+-796,-792,-789,-786,-782,-779,-776,-772,-769,-766,-763,-760,-757,-753,-750,-747,-744,-741,-738,-735,-731,
+-728,-725,-722,-719,-716,-713,-711,-708,-706,-703,-701,-700,-698,-697,-696,-696,-696,-696,-696,-697,-698,
+-699,-700,-702,-704,-706,-708,-710,-712,-713,-715,-717,-718,-719,-720,-720,-720,-719,-718,-717,-715,-713,
+-711,-708,-704,-701,-697,-693,-689,-685,-681,-677,-673,-670,-666,-664,-661,-660,-658,-658,-658,-658,-660,
+-662,-665,-669,-673,-678,-684,-690,-697,-705,-713,-722,-731,-740,-750,-760,-770,-781,-791,-802,-813,-824,
+-834,-845,-856,-866,-877,-887,-898,-908,-918,-928,-939,-949,-959,-969,-980,-990,-1000,-1010,-1021,-1031,-1042,
+-1053,-1063,-1074,-1085,-1096,-1107,-1117,-1128,-1139,-1150,-1161,-1172,-1183,-1194,-1204,-1215,-1226,-1236,-1247,-1258,-1268,
+-1279,-1290,-1300,-1311,-1322,-1333,-1345,-1356,-1368,-1380,-1392,-1404,-1417,-1430,-1443,-1456,-1470,-1484,-1498,-1512,-1526,
+-1541,-1555,-1570,-1584,-1599,-1613,-1627,-1642,-1656,-1669,-1683,-1696,-1710,-1722,-1735,-1747,-1759,-1771,-1783,-1794,-1805,
+-1816,-1827,-1838,-1849,-1859,-1870,-1881,-1892,-1903,-1914,-1925,-1937,-1948,-1960,-1972,-1984,-1996,-2008,-2021,-2034,-2046,
+-2059,-2071,-2084,-2096,-2109,-2121,-2133,-2145,-2156,-2168,-2179,-2189,-2200,-2210,-2220,-2229,-2239,-2248,-2257,-2266,-2275,
+-2284,-2293,-2302,-2312,-2321,-2331,-2341,-2352,-2363,-2374,-2386,-2399,-2412,-2425,-2439,-2454,-2469,-2485,-2501,-2517,-2534,
+-2552,-2569,-2587,-2605,-2623,-2641,-2660,-2678,-2696,-2714,-2732,-2750,-2768,-2785,-2803,-2820,-2837,-2853,-2870,-2886,-2903,
+-2919,-2935,-2951,-2967,-2983,-2999,-3015,-3031,-3048,-3064,-3081,-3098,-3115,-3132,-3150,-3167,-3185,-3203,-3221,-3239,-3257,
+-3274,-3292,-3310,-3327,-3345,-3362,-3378,-3395,-3411,-3426,-3441,-3456,-3470,-3483,-3496,-3509,-3520,-3532,-3542,-3552,-3562,
+-3571,-3579,-3588,-3595,-3602,-3609,-3615,-3622,-3627,-3633,-3638,-3643,-3647,-3652,-3656,-3660,-3664,-3667,-3671,-3674,-3677,
+-3680,-3683,-3686,-3689,-3692,-3694,-3697,-3699,-3701,-3703,-3706,-3708,-3710,-3712,-3714,-3715,-3718,-3719,-3721,-3723,-3726,
+-3728,-3730,-3732,-3734,-3737,-3739,-3742,-3744,-3747,-3750,-3753,-3756,-3758,-3761,-3764,-3767,-3770,-3773,-3776,-3778,-3781,
+-3783,-3786,-3788,-3790,-3791,-3793,-3794,-3795,-3795,-3796,-3796,-3795,-3795,-3794,-3793,-3791,-3790,-3788,-3785,-3783,-3780,
+-3777,-3774,-3771,-3767,-3764,-3760,-3757,-3753,-3749,-3746,-3742,-3738,-3735,-3731,-3728,-3724,-3721,-3718,-3714,-3711,-3707,
+-3704,-3700,-3696,-3692,-3688,-3683,-3678,-3672,-3666,-3659,-3651,-3643,-3633,-3623,-3612,-3601,-3588,-3574,-3560,-3545,-3529,
+-3512,-3495,-3477,-3459,-3440,-3422,-3404,-3386,-3369,-3352,-3337,-3322,-3310,-3298,-3289,-3282,-3277,-3274,-3275,-3278,-3284,
+-3292,-3304,-3319,-3337,-3358,-3382,-3408,-3437,-3469,-3503,-3538,-3576,-3614,-3654,-3694,-3735,-3775,-3815,-3855,-3893,-3930,
+-3965,-3998,-4029,-4057,-4082,-4105,-4125,-4141,-4155,-4165,-4173,-4178,-4180,-4180,-4177,-4172,-4166,-4159,-4150,-4141,-4131,
+-4121,-4112,-4104,-4096,-4090,-4085,-4082,-4082,-4083,-4087,-4093,-4102,-4113,-4126,-4142,-4160,-4180,-4201,-4225,-4250,-4275,
+-4302,-4329,-4356,-4383,-4410,-4436,-4461,-4484,-4506,-4527,-4545,-4561,-4575,-4587,-4597,-4604,-4609,-4611,-4611,-4609,-4605,
+-4600,-4592,-4584,-4573,-4562,-4551,-4538,-4525,-4512,-4499,-4487,-4474,-4463,-4452,-4442,-4432,-4424,-4417,-4411,-4406,-4402,
+-4399,-4397,-4396,-4396,-4396,-4398,-4400,-4402,-4404,-4407,-4410,-4413,-4415,-4418,-4420,-4422,-4423,-4424,-4425,-4425,-4424,
+-4423,-4421,-4419,-4416,-4413,-4409,-4405,-4401,-4397,-4392,-4388,-4383,-4379,-4375,-4371,-4367,-4364,-4361,-4359,-4357,-4355,
+-4355,-4355,-4355,-4356,-4358,-4360,-4363,-4367,-4371,-4376,-4381,-4386,-4392,-4398,-4404,-4410,-4417,-4423,-4429,-4435,-4441,
+-4447,-4452,-4457,-4462,-4465,-4469,-4471,-4473,-4475,-4475,-4475,-4474,-4473,-4470,-4467,-4463,-4458,-4453,-4447,-4440,-4433,
+-4425,-4416,-4407,-4398,-4388,-4377,-4366,-4355,-4344,-4332,-4321,-4309,-4297,-4285,-4272,-4260,-4248,-4236,-4224,-4213,-4201,
+-4190,-4179,-4168,-4157,-4147,-4137,-4128,-4119,-4110,-4101,-4094,-4086,-4079,-4072,-4066,-4060,-4055,-4050,-4045,-4041,-4037,
+-4033,-4030,-4027,-4024,-4021,-4018,-4016,-4013,-4011,-4008,-4005,-4002,-3999,-3996,-3992,-3988,-3984,-3980,-3975,-3970,-3965,
+-3959,-3954,-3948,-3942,-3936,-3929,-3923,-3917,-3911,-3905,-3899,-3894,-3889,-3884,-3880,-3876,-3872,-3869,-3867,-3865,-3863,
+-3862,-3862,-3861,-3862,-3862,-3863,-3864,-3865,-3866,-3867,-3868,-3868,-3868,-3868,-3868,-3867,-3865,-3863,-3860,-3857,-3852,
+-3847,-3841,-3835,-3827,-3819,-3811,-3801,-3792,-3781,-3771,-3760,-3748,-3737,-3725,-3714,-3702,-3691,-3679,-3669,-3658,-3648,
+-3638,-3629,-3620,-3611,-3603,-3596,-3589,-3582,-3575,-3569,-3563,-3557,-3552,-3546,-3540,-3535,-3529,-3522,-3516,-3509,-3502,
+-3494,-3486,-3478,-3468,-3459,-3448,-3438,-3427,-3415,-3403,-3390,-3377,-3364,-3351,-3338,-3324,-3310,-3297,-3283,-3270,-3257,
+-3244,-3231,-3219,-3207,-3195,-3183,-3172,-3162,-3151,-3141,-3131,-3122,-3112,-3103,-3093,-3084,-3075,-3066,-3056,-3047,-3037,
+-3027,-3017,-3006,-2995,-2984,-2973,-2961,-2950,-2938,-2926,-2914,-2902,-2890,-2878,-2866,-2854,-2843,-2832,-2822,-2812,-2803,
+-2794,-2786,-2779,-2773,-2767,-2762,-2758,-2755,-2753,-2751,-2751,-2751,-2751,-2752,-2754,-2757,-2760,-2763,-2767,-2771,-2775,
+-2779,-2784,-2788,-2793,-2798,-2803,-2807,-2812,-2817,-2822,-2826,-2831,-2836,-2841,-2845,-2850,-2855,-2860,-2865,-2871,-2876,
+-2882,-2887,-2893,-2899,-2905,-2912,-2918,-2924,-2930,-2936,-2942,-2948,-2954,-2959,-2964,-2969,-2973,-2977,-2980,-2983,-2984,
+-2986,-2986,-2986,-2985,-2984,-2981,-2978,-2974,-2970,-2965,-2959,-2952,-2945,-2938,-2930,-2921,-2912,-2902,-2892,-2881,-2871,
+-2859,-2848,-2835,-2823,-2810,-2797,-2783,-2769,-2755,-2740,-2725,-2710,-2694,-2677,-2660,-2643,-2626,-2608,-2590,-2573,-2554,
+-2536,-2518,-2501,-2483,-2466,-2450,-2434,-2419,-2405,-2392,-2381,-2370,-2361,-2353,-2347,-2343,-2340,-2339,-2340,-2343,-2347,
+-2353,-2361,-2370,-2381,-2393,-2407,-2421,-2436,-2452,-2469,-2486,-2503,-2520,-2537,-2554,-2569,-2584,-2598,-2611,-2623,-2633,
+-2642,-2649,-2655,-2659,-2661,-2661,-2660,-2657,-2653,-2647,-2640,-2632,-2622,-2612,-2601,-2589,-2577,-2564,-2552,-2539,-2527,
+-2515,-2503,-2492,-2482,-2473,-2465,-2457,-2451,-2445,-2441,-2437,-2435,-2433,-2432,-2432,-2433,-2434,-2435,-2437,-2439,-2441,
+-2443,-2444,-2446,-2446,-2446,-2445,-2444,-2441,-2437,-2432,-2426,-2419,-2410,-2400,-2389,-2377,-2363,-2348,-2331,-2314,-2296,
+-2276,-2256,-2235,-2213,-2191,-2169,-2146,-2123,-2100,-2076,-2054,-2031,-2009,-1988,-1967,-1947,-1928,-1910,-1893,-1877,-1862,
+-1848,-1836,-1825,-1816,-1808,-1801,-1795,-1792,-1789,-1788,-1788,-1789,-1791,-1795,-1799,-1804,-1811,-1818,-1825,-1834,-1842,
+-1851,-1861,-1870,-1879,-1889,-1898,-1907,-1915,-1923,-1931,-1938,-1944,-1949,-1954,-1958,-1961,-1963,-1964,-1965,-1964,-1963,
+-1962,-1959,-1956,-1952,-1947,-1942,-1937,-1931,-1925,-1919,-1912,-1905,-1898,-1892,-1885,-1878,-1871,-1864,-1858,-1851,-1845,
+-1839,-1832,-1826,-1820,-1813,-1807,-1800,-1794,-1787,-1780,-1773,-1765,-1758,-1750,-1741,-1733,-1724,-1715,-1705,-1695,-1685,
+-1675,-1665,-1655,-1644,-1634,-1623,-1613,-1603,-1593,-1584,-1575,-1566,-1558,-1550,-1543,-1536,-1530,-1525,-1520,-1516,-1512,
+-1509,-1506,-1504,-1502,-1501,-1499,-1499,-1498,-1498,-1497,-1497,-1497,-1497,-1497,-1496,-1496,-1495,-1495,-1494,-1493,-1492,
+-1490,-1489,-1487,-1486,-1484,-1482,-1481,-1479,-1478,-1477,-1476,-1475,-1474,-1474,-1473,-1474,-1474,-1475,-1476,-1477,-1479,
+-1480,-1483,-1485,-1487,-1490,-1492,-1495,-1498,-1501,-1504,-1524,-1524,-1525,-1525,-1526,-1527,-1529,-1530,-1532,-1534,-1536,
+-1539,-1542,-1545,-1548,-1551,-1554,-1558,-1561,-1564,-1568,-1571,-1574,-1576,-1578,-1580,-1582,-1582,-1583,-1582,-1581,-1579,
+-1576,-1573,-1568,-1563,-1557,-1550,-1542,-1533,-1523,-1512,-1501,-1489,-1477,-1463,-1450,-1436,-1422,-1408,-1394,-1380,-1366,
+-1353,-1340,-1328,-1316,-1306,-1296,-1287,-1278,-1271,-1265,-1260,-1257,-1254,-1252,-1251,-1251,-1252,-1254,-1256,-1259,-1262,
+-1265,-1269,-1273,-1276,-1280,-1283,-1285,-1287,-1289,-1289,-1289,-1288,-1285,-1282,-1278,-1272,-1266,-1258,-1249,-1240,-1229,
+-1217,-1205,-1192,-1178,-1164,-1149,-1134,-1119,-1103,-1088,-1072,-1057,-1042,-1027,-1013,-999,-986,-973,-961,-950,-939,
+-928,-919,-910,-902,-894,-887,-880,-874,-868,-863,-858,-853,-849,-845,-841,-837,-833,-830,-826,-823,-820,
+-817,-814,-811,-808,-805,-803,-800,-798,-797,-795,-794,-793,-792,-792,-792,-793,-794,-796,-797,-800,-802,
+-805,-809,-813,-816,-821,-825,-830,-834,-839,-844,-848,-853,-857,-861,-866,-869,-873,-876,-878,-881,-883,
+-884,-885,-886,-886,-886,-886,-885,-884,-882,-880,-878,-876,-873,-870,-867,-864,-861,-858,-854,-851,-847,
+-844,-840,-837,-834,-830,-827,-824,-821,-818,-815,-813,-810,-808,-806,-804,-802,-800,-798,-797,-796,-794,
+-793,-793,-792,-792,-791,-791,-791,-792,-792,-793,-793,-794,-795,-796,-797,-798,-799,-800,-801,-802,-803,
+-803,-804,-804,-804,-804,-804,-804,-803,-802,-801,-800,-798,-797,-795,-793,-791,-788,-786,-783,-781,-779,
+-776,-774,-772,-770,-769,-767,-766,-766,-765,-766,-766,-767,-769,-771,-773,-776,-779,-783,-788,-793,-798,
+-804,-810,-816,-823,-831,-838,-846,-854,-863,-871,-880,-889,-899,-908,-918,-927,-937,-947,-957,-968,-978,
+-988,-999,-1009,-1020,-1031,-1042,-1052,-1063,-1074,-1085,-1096,-1107,-1118,-1129,-1140,-1151,-1162,-1173,-1184,-1194,-1205,
+-1216,-1226,-1237,-1247,-1257,-1268,-1278,-1288,-1298,-1308,-1318,-1329,-1339,-1349,-1360,-1370,-1381,-1392,-1403,-1414,-1426,
+-1438,-1450,-1462,-1474,-1487,-1500,-1514,-1527,-1541,-1555,-1569,-1583,-1598,-1612,-1627,-1641,-1655,-1670,-1684,-1698,-1712,
+-1726,-1740,-1753,-1766,-1779,-1792,-1804,-1816,-1828,-1839,-1850,-1861,-1872,-1882,-1893,-1903,-1913,-1923,-1933,-1942,-1952,
+-1962,-1972,-1982,-1992,-2002,-2012,-2023,-2033,-2044,-2054,-2065,-2076,-2087,-2098,-2109,-2120,-2130,-2141,-2152,-2163,-2173,
+-2183,-2194,-2204,-2213,-2223,-2233,-2242,-2251,-2260,-2269,-2278,-2287,-2296,-2305,-2313,-2322,-2332,-2341,-2350,-2360,-2370,
+-2381,-2392,-2403,-2414,-2426,-2439,-2452,-2465,-2479,-2493,-2508,-2523,-2538,-2554,-2570,-2587,-2603,-2620,-2637,-2655,-2672,
+-2690,-2707,-2725,-2742,-2760,-2777,-2795,-2812,-2829,-2846,-2863,-2880,-2897,-2913,-2930,-2946,-2963,-2979,-2995,-3012,-3028,
+-3044,-3060,-3076,-3093,-3109,-3125,-3142,-3158,-3174,-3191,-3207,-3223,-3239,-3255,-3272,-3288,-3303,-3319,-3334,-3350,-3365,
+-3379,-3394,-3408,-3422,-3436,-3449,-3461,-3474,-3486,-3497,-3509,-3520,-3530,-3540,-3550,-3559,-3568,-3576,-3584,-3592,-3599,
+-3606,-3613,-3619,-3625,-3630,-3635,-3640,-3645,-3649,-3653,-3657,-3660,-3663,-3666,-3668,-3671,-3672,-3674,-3676,-3677,-3678,
+-3679,-3680,-3681,-3682,-3683,-3683,-3684,-3685,-3686,-3686,-3687,-3688,-3690,-3691,-3693,-3694,-3696,-3699,-3701,-3704,-3706,
+-3709,-3713,-3716,-3719,-3723,-3726,-3730,-3734,-3737,-3740,-3744,-3747,-3750,-3752,-3754,-3757,-3758,-3759,-3760,-3760,-3760,
+-3760,-3759,-3757,-3756,-3753,-3751,-3748,-3745,-3741,-3738,-3734,-3730,-3726,-3722,-3719,-3715,-3712,-3709,-3707,-3704,-3703,
+-3701,-3700,-3700,-3700,-3701,-3702,-3703,-3705,-3707,-3709,-3711,-3714,-3716,-3718,-3720,-3722,-3723,-3723,-3723,-3722,-3719,
+-3716,-3711,-3705,-3697,-3689,-3678,-3667,-3653,-3638,-3622,-3604,-3586,-3566,-3545,-3523,-3500,-3477,-3454,-3431,-3408,-3386,
+-3365,-3344,-3325,-3308,-3293,-3279,-3268,-3260,-3255,-3252,-3253,-3257,-3265,-3275,-3289,-3306,-3327,-3351,-3377,-3407,-3438,
+-3473,-3509,-3546,-3585,-3625,-3666,-3707,-3747,-3787,-3826,-3864,-3899,-3933,-3965,-3994,-4020,-4043,-4063,-4080,-4093,-4103,
+-4110,-4113,-4114,-4111,-4106,-4098,-4088,-4076,-4063,-4048,-4033,-4017,-4001,-3985,-3970,-3956,-3944,-3933,-3924,-3918,-3914,
+-3912,-3913,-3918,-3925,-3935,-3948,-3964,-3982,-4003,-4026,-4051,-4079,-4107,-4137,-4168,-4199,-4230,-4262,-4293,-4323,-4352,
+-4380,-4406,-4430,-4452,-4472,-4489,-4504,-4517,-4527,-4534,-4539,-4541,-4541,-4539,-4534,-4528,-4520,-4510,-4499,-4487,-4475,
+-4462,-4448,-4434,-4421,-4407,-4395,-4383,-4371,-4361,-4352,-4344,-4337,-4331,-4326,-4323,-4321,-4320,-4320,-4321,-4323,-4325,
+-4328,-4332,-4336,-4340,-4345,-4349,-4353,-4357,-4360,-4364,-4366,-4368,-4369,-4369,-4369,-4368,-4366,-4363,-4360,-4356,-4352,
+-4346,-4341,-4335,-4329,-4323,-4317,-4310,-4304,-4299,-4293,-4289,-4284,-4281,-4278,-4276,-4275,-4274,-4275,-4276,-4279,-4282,
+-4287,-4292,-4298,-4305,-4312,-4321,-4329,-4339,-4348,-4358,-4368,-4378,-4388,-4398,-4408,-4417,-4425,-4434,-4441,-4448,-4453,
+-4458,-4462,-4465,-4467,-4468,-4467,-4466,-4463,-4460,-4455,-4449,-4442,-4434,-4425,-4415,-4405,-4394,-4382,-4369,-4356,-4342,
+-4329,-4314,-4300,-4286,-4271,-4257,-4242,-4228,-4214,-4200,-4187,-4174,-4161,-4149,-4137,-4126,-4115,-4105,-4095,-4086,-4077,
+-4069,-4061,-4054,-4047,-4041,-4035,-4029,-4024,-4019,-4014,-4010,-4006,-4002,-3997,-3994,-3990,-3986,-3982,-3978,-3973,-3969,
+-3965,-3960,-3955,-3950,-3945,-3940,-3934,-3929,-3923,-3917,-3911,-3905,-3899,-3893,-3887,-3881,-3876,-3870,-3865,-3860,-3855,
+-3851,-3847,-3843,-3840,-3837,-3835,-3833,-3832,-3831,-3831,-3831,-3831,-3832,-3833,-3834,-3836,-3837,-3839,-3841,-3843,-3844,
+-3845,-3846,-3847,-3847,-3847,-3846,-3845,-3842,-3840,-3836,-3832,-3827,-3821,-3814,-3807,-3799,-3790,-3781,-3771,-3761,-3750,
+-3739,-3728,-3716,-3704,-3693,-3681,-3670,-3659,-3647,-3637,-3627,-3617,-3608,-3599,-3590,-3583,-3575,-3569,-3562,-3557,-3551,
+-3546,-3542,-3538,-3533,-3529,-3526,-3522,-3518,-3514,-3509,-3504,-3500,-3494,-3488,-3482,-3475,-3468,-3460,-3451,-3442,-3432,
+-3422,-3411,-3400,-3389,-3376,-3364,-3351,-3338,-3325,-3312,-3298,-3285,-3271,-3258,-3245,-3232,-3219,-3206,-3193,-3181,-3169,
+-3157,-3145,-3133,-3122,-3111,-3100,-3088,-3077,-3066,-3055,-3044,-3033,-3022,-3011,-2999,-2987,-2975,-2963,-2951,-2939,-2926,
+-2914,-2901,-2888,-2876,-2863,-2850,-2838,-2826,-2814,-2802,-2791,-2781,-2771,-2761,-2752,-2744,-2736,-2730,-2724,-2719,-2715,
+-2711,-2709,-2707,-2707,-2707,-2708,-2709,-2712,-2715,-2719,-2723,-2729,-2734,-2741,-2747,-2754,-2762,-2770,-2778,-2786,-2795,
+-2803,-2812,-2821,-2830,-2839,-2848,-2857,-2867,-2876,-2884,-2893,-2902,-2910,-2919,-2927,-2935,-2943,-2950,-2957,-2964,-2971,
+-2977,-2983,-2988,-2993,-2997,-3001,-3004,-3007,-3010,-3011,-3012,-3013,-3013,-3013,-3011,-3010,-3008,-3005,-3002,-2998,-2994,
+-2989,-2984,-2978,-2973,-2966,-2960,-2953,-2946,-2938,-2930,-2922,-2914,-2905,-2895,-2886,-2876,-2865,-2854,-2843,-2831,-2818,
+-2805,-2792,-2777,-2762,-2747,-2730,-2713,-2696,-2678,-2659,-2640,-2620,-2600,-2580,-2560,-2539,-2519,-2499,-2479,-2460,-2441,
+-2423,-2406,-2391,-2376,-2363,-2351,-2341,-2332,-2326,-2321,-2318,-2318,-2319,-2322,-2328,-2335,-2344,-2355,-2368,-2383,-2399,
+-2416,-2434,-2453,-2473,-2494,-2514,-2535,-2556,-2576,-2596,-2615,-2633,-2650,-2665,-2679,-2692,-2702,-2712,-2719,-2724,-2728,
+-2729,-2729,-2727,-2723,-2718,-2711,-2703,-2694,-2683,-2672,-2660,-2647,-2635,-2622,-2608,-2596,-2583,-2571,-2559,-2549,-2539,
+-2530,-2522,-2515,-2509,-2504,-2500,-2497,-2495,-2494,-2493,-2493,-2494,-2495,-2497,-2498,-2500,-2501,-2502,-2502,-2502,-2500,
+-2498,-2495,-2490,-2485,-2477,-2469,-2458,-2446,-2433,-2418,-2401,-2383,-2363,-2342,-2320,-2296,-2272,-2246,-2220,-2193,-2166,
+-2138,-2111,-2083,-2056,-2029,-2003,-1978,-1953,-1930,-1908,-1888,-1869,-1851,-1836,-1822,-1810,-1800,-1792,-1786,-1782,-1779,
+-1779,-1780,-1783,-1787,-1793,-1800,-1809,-1818,-1829,-1840,-1851,-1864,-1876,-1889,-1901,-1913,-1925,-1937,-1948,-1958,-1968,
+-1976,-1984,-1991,-1997,-2001,-2005,-2007,-2008,-2009,-2008,-2006,-2003,-2000,-1995,-1990,-1985,-1979,-1972,-1965,-1958,-1951,
+-1943,-1936,-1928,-1921,-1914,-1907,-1901,-1894,-1888,-1882,-1877,-1872,-1867,-1862,-1858,-1853,-1849,-1845,-1841,-1837,-1832,
+-1828,-1823,-1818,-1813,-1807,-1801,-1794,-1787,-1780,-1772,-1764,-1755,-1746,-1737,-1727,-1717,-1706,-1696,-1685,-1674,-1664,
+-1653,-1643,-1632,-1622,-1613,-1604,-1595,-1587,-1579,-1572,-1565,-1559,-1554,-1549,-1545,-1542,-1539,-1536,-1535,-1533,-1532,
+-1532,-1532,-1532,-1533,-1534,-1535,-1536,-1537,-1538,-1539,-1541,-1542,-1543,-1544,-1544,-1545,-1546,-1546,-1546,-1546,-1546,
+-1545,-1545,-1544,-1543,-1542,-1541,-1540,-1538,-1537,-1536,-1534,-1533,-1532,-1530,-1529,-1528,-1527,-1526,-1525,-1525,-1524,
+-1524,-1524,-1536,-1533,-1531,-1530,-1529,-1528,-1528,-1529,-1530,-1531,-1533,-1536,-1538,-1542,-1545,-1549,-1554,-1558,-1563,
+-1567,-1572,-1577,-1581,-1586,-1590,-1593,-1597,-1599,-1601,-1602,-1603,-1603,-1602,-1600,-1597,-1593,-1588,-1582,-1575,-1567,
+-1559,-1549,-1539,-1528,-1516,-1504,-1491,-1478,-1464,-1451,-1437,-1424,-1410,-1397,-1384,-1372,-1360,-1350,-1339,-1330,-1321,
+-1314,-1307,-1301,-1297,-1293,-1290,-1288,-1287,-1287,-1288,-1289,-1291,-1293,-1296,-1299,-1302,-1305,-1308,-1311,-1313,-1315,
+-1317,-1318,-1319,-1319,-1318,-1316,-1313,-1309,-1305,-1300,-1293,-1286,-1278,-1269,-1259,-1249,-1238,-1226,-1214,-1202,-1189,
+-1176,-1163,-1150,-1136,-1123,-1110,-1098,-1085,-1073,-1061,-1050,-1039,-1029,-1019,-1010,-1001,-992,-984,-977,-970,-963,
+-957,-951,-945,-940,-935,-930,-925,-921,-916,-912,-908,-904,-900,-896,-892,-888,-884,-880,-877,-874,-870,
+-867,-864,-862,-860,-858,-856,-855,-854,-853,-853,-853,-854,-855,-857,-859,-861,-864,-867,-871,-874,-878,
+-882,-887,-891,-896,-901,-905,-910,-915,-919,-923,-927,-931,-935,-938,-941,-943,-946,-948,-949,-950,-951,
+-951,-951,-951,-950,-949,-948,-947,-945,-943,-941,-938,-936,-933,-930,-928,-925,-922,-919,-917,-914,-912,
+-910,-907,-905,-903,-902,-900,-899,-898,-897,-896,-896,-895,-895,-895,-895,-896,-896,-897,-898,-899,-900,
+-901,-902,-903,-904,-906,-907,-908,-909,-910,-911,-912,-913,-914,-915,-915,-915,-916,-916,-916,-916,-915,
+-915,-914,-914,-913,-912,-911,-910,-909,-908,-907,-906,-905,-904,-903,-902,-902,-901,-901,-901,-901,-902,
+-902,-903,-905,-906,-908,-911,-913,-916,-919,-923,-927,-931,-936,-941,-946,-951,-957,-964,-970,-977,-984,
+-991,-999,-1007,-1015,-1024,-1032,-1041,-1050,-1059,-1069,-1079,-1088,-1098,-1108,-1119,-1129,-1140,-1150,-1161,-1171,-1182,
+-1193,-1203,-1214,-1225,-1235,-1246,-1257,-1267,-1278,-1288,-1298,-1308,-1318,-1328,-1338,-1348,-1357,-1367,-1377,-1386,-1396,
+-1405,-1415,-1424,-1434,-1443,-1453,-1463,-1473,-1483,-1494,-1504,-1515,-1526,-1537,-1549,-1561,-1572,-1585,-1597,-1610,-1623,
+-1636,-1649,-1662,-1675,-1689,-1702,-1716,-1729,-1743,-1756,-1770,-1783,-1796,-1809,-1821,-1834,-1846,-1858,-1869,-1881,-1892,
+-1903,-1913,-1923,-1934,-1943,-1953,-1962,-1972,-1981,-1990,-1999,-2008,-2017,-2026,-2035,-2043,-2052,-2061,-2071,-2080,-2089,
+-2098,-2108,-2118,-2127,-2137,-2147,-2157,-2167,-2177,-2187,-2197,-2207,-2216,-2226,-2236,-2246,-2256,-2265,-2275,-2284,-2294,
+-2303,-2312,-2322,-2331,-2340,-2349,-2358,-2368,-2377,-2386,-2396,-2406,-2416,-2426,-2436,-2447,-2458,-2469,-2480,-2492,-2504,
+-2517,-2529,-2543,-2556,-2570,-2584,-2599,-2613,-2628,-2644,-2659,-2675,-2691,-2707,-2723,-2740,-2756,-2773,-2789,-2806,-2822,
+-2839,-2855,-2872,-2888,-2904,-2921,-2937,-2953,-2968,-2984,-3000,-3015,-3031,-3046,-3061,-3076,-3091,-3105,-3120,-3134,-3149,
+-3163,-3177,-3191,-3205,-3219,-3232,-3246,-3259,-3272,-3285,-3298,-3311,-3324,-3336,-3348,-3361,-3372,-3384,-3396,-3407,-3418,
+-3429,-3440,-3450,-3460,-3470,-3479,-3489,-3498,-3507,-3515,-3523,-3531,-3539,-3546,-3553,-3559,-3565,-3571,-3577,-3582,-3587,
+-3591,-3595,-3599,-3602,-3605,-3608,-3610,-3612,-3614,-3616,-3617,-3618,-3619,-3620,-3621,-3621,-3622,-3622,-3623,-3624,-3624,
+-3625,-3626,-3627,-3629,-3630,-3632,-3634,-3636,-3639,-3642,-3645,-3648,-3651,-3655,-3659,-3663,-3667,-3671,-3675,-3679,-3683,
+-3687,-3690,-3694,-3697,-3700,-3702,-3704,-3706,-3707,-3708,-3708,-3708,-3707,-3706,-3704,-3702,-3699,-3697,-3693,-3690,-3686,
+-3682,-3678,-3674,-3670,-3666,-3663,-3659,-3656,-3654,-3652,-3650,-3649,-3648,-3649,-3649,-3651,-3653,-3656,-3659,-3663,-3667,
+-3672,-3676,-3682,-3687,-3692,-3697,-3702,-3706,-3710,-3713,-3715,-3716,-3717,-3716,-3714,-3711,-3706,-3700,-3693,-3684,-3673,
+-3662,-3649,-3634,-3619,-3602,-3585,-3567,-3548,-3529,-3510,-3491,-3472,-3454,-3436,-3420,-3405,-3392,-3380,-3370,-3362,-3357,
+-3354,-3354,-3356,-3361,-3368,-3378,-3391,-3407,-3425,-3445,-3468,-3492,-3519,-3546,-3575,-3605,-3636,-3666,-3697,-3728,-3757,
+-3786,-3813,-3839,-3863,-3885,-3904,-3921,-3935,-3947,-3955,-3961,-3963,-3963,-3960,-3954,-3945,-3935,-3922,-3907,-3890,-3872,
+-3853,-3834,-3814,-3794,-3774,-3756,-3738,-3721,-3706,-3693,-3683,-3674,-3669,-3665,-3665,-3668,-3674,-3682,-3694,-3708,-3725,
+-3744,-3766,-3790,-3816,-3843,-3872,-3902,-3932,-3963,-3994,-4025,-4055,-4085,-4113,-4140,-4166,-4189,-4211,-4231,-4249,-4264,
+-4277,-4287,-4295,-4301,-4305,-4306,-4306,-4303,-4299,-4294,-4287,-4279,-4270,-4260,-4250,-4240,-4229,-4219,-4209,-4200,-4191,
+-4184,-4177,-4171,-4166,-4163,-4160,-4159,-4159,-4161,-4163,-4166,-4170,-4176,-4181,-4188,-4195,-4202,-4209,-4217,-4224,-4232,
+-4239,-4245,-4251,-4256,-4261,-4265,-4268,-4270,-4271,-4272,-4271,-4270,-4268,-4265,-4262,-4258,-4253,-4248,-4243,-4238,-4233,
+-4227,-4222,-4217,-4213,-4209,-4206,-4203,-4201,-4200,-4200,-4200,-4202,-4205,-4208,-4213,-4218,-4224,-4231,-4239,-4247,-4256,
+-4266,-4275,-4285,-4296,-4306,-4316,-4326,-4336,-4345,-4354,-4362,-4369,-4376,-4381,-4386,-4390,-4392,-4394,-4394,-4394,-4392,
+-4389,-4385,-4379,-4373,-4366,-4358,-4349,-4339,-4328,-4317,-4305,-4293,-4280,-4268,-4254,-4241,-4228,-4215,-4202,-4189,-4176,
+-4163,-4151,-4140,-4128,-4118,-4107,-4097,-4088,-4079,-4070,-4062,-4055,-4047,-4040,-4034,-4028,-4022,-4016,-4010,-4005,-3999,
+-3994,-3989,-3983,-3978,-3972,-3967,-3961,-3955,-3949,-3942,-3936,-3929,-3922,-3916,-3909,-3901,-3894,-3887,-3880,-3873,-3865,
+-3859,-3852,-3845,-3839,-3833,-3828,-3822,-3818,-3813,-3809,-3806,-3803,-3801,-3799,-3798,-3797,-3797,-3797,-3797,-3798,-3800,
+-3801,-3803,-3805,-3807,-3809,-3811,-3812,-3814,-3815,-3816,-3816,-3816,-3815,-3814,-3812,-3809,-3805,-3801,-3795,-3789,-3782,
+-3774,-3765,-3756,-3746,-3735,-3723,-3711,-3699,-3686,-3673,-3659,-3646,-3632,-3619,-3606,-3593,-3581,-3569,-3557,-3547,-3536,
+-3527,-3519,-3511,-3504,-3498,-3493,-3489,-3486,-3483,-3481,-3480,-3480,-3480,-3480,-3481,-3482,-3483,-3485,-3486,-3487,-3488,
+-3488,-3488,-3487,-3486,-3484,-3481,-3477,-3472,-3467,-3460,-3453,-3444,-3435,-3424,-3413,-3401,-3388,-3374,-3360,-3345,-3330,
+-3314,-3298,-3282,-3265,-3249,-3232,-3216,-3199,-3183,-3167,-3152,-3137,-3122,-3108,-3094,-3081,-3068,-3056,-3044,-3033,-3022,
+-3011,-3001,-2991,-2982,-2972,-2963,-2954,-2945,-2936,-2927,-2918,-2909,-2900,-2891,-2882,-2872,-2863,-2853,-2843,-2833,-2823,
+-2813,-2803,-2793,-2783,-2773,-2763,-2754,-2745,-2736,-2728,-2720,-2712,-2705,-2699,-2694,-2689,-2685,-2681,-2679,-2677,-2676,
+-2676,-2677,-2679,-2682,-2685,-2690,-2695,-2701,-2708,-2716,-2724,-2733,-2742,-2753,-2763,-2774,-2785,-2797,-2809,-2821,-2833,
+-2845,-2857,-2869,-2881,-2892,-2904,-2914,-2925,-2935,-2944,-2953,-2961,-2968,-2975,-2981,-2986,-2990,-2994,-2997,-2999,-3000,
+-3000,-3000,-2999,-2997,-2995,-2991,-2988,-2984,-2979,-2973,-2968,-2962,-2955,-2949,-2942,-2935,-2927,-2920,-2912,-2904,-2897,
+-2889,-2881,-2872,-2864,-2856,-2847,-2838,-2829,-2820,-2810,-2800,-2789,-2778,-2767,-2754,-2742,-2729,-2715,-2700,-2685,-2669,
+-2653,-2636,-2618,-2600,-2582,-2563,-2544,-2525,-2505,-2486,-2467,-2448,-2430,-2412,-2396,-2380,-2365,-2351,-2338,-2327,-2318,
+-2310,-2304,-2299,-2297,-2296,-2298,-2301,-2306,-2313,-2321,-2332,-2344,-2357,-2372,-2388,-2405,-2423,-2441,-2460,-2479,-2498,
+-2517,-2536,-2554,-2572,-2588,-2604,-2618,-2631,-2643,-2652,-2661,-2667,-2672,-2675,-2677,-2676,-2674,-2671,-2666,-2659,-2652,
+-2643,-2633,-2623,-2612,-2601,-2589,-2577,-2565,-2554,-2543,-2532,-2523,-2514,-2505,-2498,-2492,-2487,-2483,-2480,-2478,-2478,
+-2478,-2479,-2481,-2483,-2486,-2490,-2493,-2497,-2500,-2504,-2507,-2509,-2510,-2511,-2510,-2508,-2505,-2500,-2494,-2486,-2476,
+-2464,-2450,-2435,-2418,-2399,-2378,-2356,-2333,-2307,-2281,-2254,-2226,-2197,-2167,-2137,-2108,-2078,-2048,-2019,-1991,-1964,
+-1938,-1913,-1889,-1868,-1848,-1829,-1813,-1799,-1787,-1777,-1769,-1763,-1759,-1757,-1757,-1759,-1763,-1769,-1775,-1784,-1793,
+-1804,-1815,-1827,-1839,-1852,-1865,-1878,-1890,-1902,-1914,-1925,-1935,-1945,-1953,-1961,-1967,-1972,-1976,-1978,-1980,-1980,
+-1979,-1977,-1974,-1970,-1965,-1959,-1953,-1946,-1938,-1930,-1922,-1913,-1905,-1896,-1888,-1880,-1872,-1864,-1857,-1850,-1844,
+-1838,-1832,-1827,-1823,-1819,-1815,-1812,-1809,-1807,-1805,-1803,-1801,-1799,-1797,-1795,-1792,-1790,-1787,-1784,-1781,-1777,
+-1772,-1768,-1762,-1756,-1750,-1743,-1736,-1728,-1720,-1712,-1703,-1694,-1684,-1675,-1665,-1656,-1647,-1637,-1628,-1620,-1611,
+-1603,-1596,-1588,-1582,-1576,-1571,-1566,-1562,-1558,-1556,-1553,-1552,-1551,-1551,-1551,-1552,-1553,-1554,-1556,-1558,-1561,
+-1563,-1566,-1569,-1572,-1575,-1578,-1580,-1583,-1585,-1587,-1588,-1589,-1590,-1591,-1591,-1591,-1590,-1589,-1588,-1586,-1584,
+-1581,-1579,-1576,-1572,-1569,-1566,-1562,-1558,-1555,-1551,-1547,-1544,-1541,-1538,-1536,-1549,-1546,-1543,-1541,-1540,-1539,
+-1538,-1538,-1538,-1539,-1540,-1542,-1545,-1548,-1551,-1555,-1559,-1563,-1567,-1572,-1577,-1581,-1586,-1590,-1595,-1598,-1602,
+-1605,-1607,-1610,-1611,-1611,-1611,-1610,-1609,-1606,-1603,-1598,-1593,-1587,-1581,-1573,-1565,-1556,-1547,-1537,-1527,-1516,
+-1505,-1494,-1483,-1471,-1460,-1449,-1439,-1428,-1418,-1409,-1400,-1392,-1385,-1378,-1372,-1366,-1362,-1358,-1355,-1353,-1351,
+-1350,-1350,-1350,-1351,-1352,-1353,-1355,-1356,-1358,-1360,-1362,-1364,-1365,-1366,-1367,-1367,-1366,-1365,-1364,-1361,-1358,
+-1355,-1350,-1345,-1340,-1333,-1326,-1318,-1310,-1301,-1292,-1282,-1272,-1261,-1250,-1240,-1229,-1217,-1206,-1195,-1184,-1174,
+-1163,-1153,-1143,-1133,-1124,-1115,-1106,-1098,-1090,-1082,-1075,-1068,-1062,-1055,-1049,-1043,-1038,-1033,-1027,-1022,-1017,
+-1013,-1008,-1003,-999,-994,-989,-985,-981,-976,-972,-967,-963,-959,-955,-951,-948,-944,-941,-938,-935,-933,
+-931,-929,-927,-926,-926,-925,-925,-926,-927,-928,-930,-932,-934,-937,-940,-943,-947,-950,-954,-958,-962,
+-967,-971,-975,-979,-983,-987,-991,-995,-998,-1002,-1005,-1007,-1010,-1012,-1014,-1016,-1017,-1018,-1019,-1020,-1020,
+-1020,-1020,-1020,-1019,-1018,-1018,-1017,-1016,-1014,-1013,-1012,-1011,-1010,-1009,-1008,-1007,-1006,-1005,-1004,-1004,-1003,
+-1003,-1003,-1003,-1003,-1003,-1004,-1004,-1005,-1006,-1007,-1008,-1009,-1010,-1011,-1013,-1014,-1015,-1017,-1018,-1020,-1021,
+-1022,-1024,-1025,-1026,-1028,-1029,-1030,-1031,-1032,-1033,-1034,-1034,-1035,-1036,-1036,-1037,-1038,-1038,-1039,-1039,-1040,
+-1040,-1041,-1042,-1042,-1043,-1044,-1045,-1046,-1047,-1049,-1050,-1052,-1054,-1056,-1058,-1060,-1063,-1066,-1069,-1072,-1075,
+-1079,-1083,-1087,-1091,-1096,-1101,-1106,-1111,-1117,-1123,-1129,-1135,-1142,-1149,-1156,-1163,-1171,-1178,-1186,-1195,-1203,
+-1211,-1220,-1229,-1238,-1248,-1257,-1266,-1276,-1286,-1296,-1306,-1316,-1326,-1336,-1346,-1356,-1366,-1376,-1386,-1396,-1405,
+-1415,-1425,-1435,-1444,-1454,-1463,-1473,-1482,-1491,-1501,-1510,-1519,-1528,-1537,-1547,-1556,-1565,-1575,-1584,-1594,-1603,
+-1613,-1623,-1633,-1643,-1654,-1664,-1675,-1686,-1697,-1708,-1719,-1731,-1743,-1754,-1766,-1778,-1790,-1802,-1814,-1826,-1838,
+-1849,-1861,-1873,-1884,-1896,-1907,-1918,-1929,-1939,-1950,-1960,-1970,-1979,-1989,-1998,-2007,-2016,-2025,-2034,-2042,-2051,
+-2059,-2067,-2075,-2084,-2092,-2100,-2108,-2116,-2125,-2133,-2141,-2150,-2159,-2167,-2176,-2186,-2195,-2204,-2213,-2223,-2233,
+-2242,-2252,-2262,-2272,-2282,-2292,-2302,-2312,-2322,-2332,-2342,-2352,-2362,-2372,-2382,-2392,-2402,-2412,-2421,-2431,-2441,
+-2450,-2460,-2470,-2480,-2490,-2500,-2510,-2520,-2530,-2541,-2552,-2563,-2574,-2585,-2596,-2608,-2620,-2632,-2645,-2658,-2671,
+-2684,-2697,-2711,-2725,-2739,-2753,-2767,-2782,-2796,-2811,-2826,-2841,-2856,-2871,-2886,-2901,-2916,-2930,-2945,-2960,-2975,
+-2989,-3004,-3018,-3032,-3046,-3060,-3073,-3087,-3100,-3113,-3126,-3139,-3151,-3163,-3176,-3188,-3199,-3211,-3222,-3234,-3245,
+-3256,-3266,-3277,-3287,-3298,-3308,-3318,-3328,-3338,-3347,-3357,-3366,-3375,-3384,-3393,-3401,-3410,-3418,-3426,-3434,-3441,
+-3449,-3456,-3463,-3469,-3476,-3482,-3488,-3493,-3498,-3503,-3508,-3512,-3516,-3520,-3523,-3526,-3529,-3532,-3534,-3536,-3538,
+-3540,-3541,-3543,-3544,-3545,-3546,-3547,-3548,-3549,-3550,-3552,-3553,-3554,-3556,-3558,-3560,-3562,-3565,-3568,-3571,-3574,
+-3578,-3582,-3586,-3590,-3594,-3599,-3604,-3609,-3613,-3618,-3623,-3628,-3632,-3637,-3641,-3645,-3649,-3652,-3655,-3658,-3660,
+-3661,-3662,-3663,-3663,-3663,-3663,-3661,-3660,-3658,-3656,-3653,-3651,-3648,-3645,-3642,-3639,-3636,-3633,-3630,-3628,-3626,
+-3624,-3623,-3622,-3622,-3622,-3624,-3625,-3627,-3630,-3634,-3638,-3642,-3647,-3652,-3658,-3664,-3670,-3676,-3683,-3689,-3695,
+-3700,-3706,-3710,-3714,-3718,-3720,-3722,-3723,-3723,-3722,-3720,-3717,-3713,-3707,-3701,-3694,-3686,-3678,-3669,-3659,-3649,
+-3638,-3627,-3617,-3606,-3596,-3586,-3577,-3568,-3561,-3554,-3549,-3544,-3541,-3540,-3540,-3541,-3544,-3549,-3555,-3563,-3571,
+-3582,-3593,-3605,-3619,-3633,-3647,-3662,-3677,-3692,-3707,-3721,-3734,-3747,-3758,-3769,-3777,-3785,-3790,-3794,-3795,-3795,
+-3793,-3788,-3782,-3773,-3763,-3750,-3736,-3721,-3704,-3686,-3667,-3647,-3627,-3606,-3586,-3565,-3546,-3527,-3509,-3492,-3477,
+-3463,-3452,-3442,-3435,-3430,-3427,-3427,-3429,-3434,-3442,-3451,-3463,-3478,-3494,-3512,-3533,-3554,-3577,-3601,-3626,-3651,
+-3677,-3703,-3729,-3754,-3779,-3803,-3826,-3847,-3868,-3887,-3904,-3919,-3933,-3945,-3955,-3963,-3970,-3975,-3978,-3979,-3979,
+-3978,-3976,-3972,-3968,-3963,-3958,-3952,-3946,-3940,-3935,-3929,-3925,-3921,-3917,-3915,-3914,-3913,-3914,-3916,-3919,-3923,
+-3928,-3934,-3942,-3950,-3959,-3969,-3979,-3990,-4002,-4013,-4025,-4037,-4049,-4061,-4072,-4083,-4094,-4104,-4113,-4122,-4130,
+-4137,-4143,-4149,-4153,-4157,-4160,-4162,-4164,-4164,-4165,-4164,-4164,-4163,-4162,-4160,-4159,-4158,-4156,-4155,-4154,-4154,
+-4154,-4154,-4155,-4157,-4159,-4162,-4165,-4168,-4173,-4178,-4183,-4189,-4195,-4201,-4208,-4215,-4222,-4229,-4235,-4242,-4248,
+-4255,-4260,-4265,-4270,-4274,-4277,-4280,-4282,-4283,-4283,-4283,-4281,-4279,-4276,-4272,-4267,-4262,-4256,-4249,-4242,-4234,
+-4226,-4217,-4208,-4199,-4189,-4179,-4169,-4160,-4150,-4140,-4130,-4121,-4112,-4103,-4094,-4085,-4077,-4069,-4061,-4054,-4047,
+-4040,-4033,-4026,-4019,-4013,-4007,-4000,-3994,-3987,-3981,-3974,-3968,-3961,-3953,-3946,-3939,-3931,-3923,-3915,-3906,-3897,
+-3889,-3880,-3871,-3862,-3853,-3844,-3835,-3826,-3817,-3809,-3801,-3793,-3786,-3779,-3773,-3768,-3763,-3758,-3754,-3752,-3749,
+-3747,-3747,-3746,-3747,-3747,-3749,-3751,-3753,-3756,-3759,-3763,-3766,-3770,-3773,-3776,-3779,-3782,-3784,-3786,-3787,-3787,
+-3787,-3786,-3783,-3780,-3775,-3770,-3763,-3756,-3747,-3737,-3726,-3714,-3701,-3687,-3672,-3657,-3641,-3624,-3607,-3590,-3572,
+-3554,-3537,-3520,-3503,-3486,-3471,-3456,-3441,-3428,-3416,-3405,-3395,-3387,-3379,-3374,-3369,-3366,-3364,-3363,-3364,-3365,
+-3368,-3372,-3377,-3382,-3388,-3395,-3401,-3409,-3416,-3423,-3429,-3436,-3442,-3447,-3451,-3455,-3457,-3459,-3459,-3458,-3455,
+-3451,-3446,-3439,-3431,-3421,-3410,-3398,-3385,-3370,-3354,-3337,-3320,-3302,-3283,-3263,-3243,-3223,-3203,-3183,-3162,-3143,
+-3123,-3104,-3086,-3068,-3051,-3034,-3019,-3004,-2990,-2977,-2966,-2954,-2944,-2935,-2927,-2919,-2912,-2905,-2899,-2894,-2889,
+-2884,-2880,-2875,-2871,-2867,-2863,-2858,-2853,-2848,-2843,-2837,-2831,-2824,-2817,-2810,-2802,-2794,-2785,-2776,-2766,-2757,
+-2747,-2737,-2727,-2717,-2707,-2697,-2688,-2679,-2670,-2662,-2654,-2648,-2641,-2636,-2632,-2628,-2626,-2624,-2624,-2625,-2626,
+-2629,-2633,-2638,-2645,-2652,-2660,-2669,-2679,-2690,-2701,-2714,-2726,-2740,-2753,-2767,-2781,-2796,-2810,-2824,-2838,-2851,
+-2865,-2877,-2889,-2901,-2912,-2922,-2931,-2939,-2947,-2953,-2959,-2963,-2967,-2969,-2971,-2971,-2971,-2970,-2968,-2965,-2961,
+-2956,-2951,-2945,-2939,-2932,-2924,-2917,-2908,-2900,-2891,-2881,-2872,-2862,-2852,-2842,-2832,-2821,-2811,-2800,-2789,-2777,
+-2765,-2754,-2741,-2729,-2716,-2703,-2689,-2675,-2660,-2645,-2630,-2614,-2597,-2581,-2563,-2546,-2528,-2510,-2492,-2474,-2455,
+-2437,-2419,-2401,-2384,-2367,-2350,-2335,-2320,-2306,-2293,-2282,-2271,-2262,-2255,-2249,-2244,-2241,-2239,-2239,-2241,-2244,
+-2249,-2256,-2263,-2273,-2283,-2294,-2307,-2320,-2335,-2349,-2364,-2380,-2395,-2411,-2426,-2441,-2456,-2469,-2482,-2494,-2505,
+-2515,-2524,-2532,-2538,-2543,-2546,-2548,-2549,-2549,-2547,-2545,-2541,-2536,-2531,-2525,-2519,-2512,-2504,-2497,-2490,-2483,
+-2476,-2470,-2464,-2459,-2455,-2452,-2449,-2448,-2447,-2448,-2449,-2451,-2455,-2459,-2464,-2470,-2476,-2483,-2490,-2497,-2504,
+-2511,-2518,-2524,-2529,-2534,-2537,-2539,-2540,-2540,-2538,-2534,-2528,-2521,-2511,-2500,-2486,-2471,-2454,-2434,-2413,-2391,
+-2366,-2340,-2313,-2285,-2255,-2225,-2194,-2163,-2131,-2099,-2068,-2037,-2007,-1977,-1949,-1921,-1895,-1871,-1848,-1827,-1808,
+-1790,-1775,-1762,-1750,-1741,-1734,-1728,-1725,-1723,-1724,-1726,-1729,-1733,-1739,-1746,-1754,-1763,-1772,-1782,-1791,-1801,
+-1811,-1821,-1830,-1839,-1847,-1854,-1861,-1867,-1872,-1876,-1879,-1880,-1881,-1881,-1880,-1878,-1875,-1871,-1866,-1861,-1855,
+-1848,-1842,-1834,-1827,-1819,-1812,-1804,-1797,-1789,-1782,-1776,-1770,-1764,-1758,-1753,-1749,-1745,-1742,-1739,-1737,-1735,
+-1733,-1732,-1731,-1730,-1730,-1729,-1729,-1728,-1728,-1727,-1727,-1726,-1725,-1723,-1721,-1719,-1716,-1713,-1709,-1705,-1700,
+-1695,-1690,-1684,-1678,-1672,-1665,-1658,-1651,-1644,-1637,-1630,-1623,-1616,-1610,-1603,-1597,-1592,-1586,-1582,-1577,-1573,
+-1570,-1567,-1565,-1564,-1563,-1562,-1562,-1563,-1564,-1565,-1567,-1569,-1571,-1574,-1577,-1580,-1583,-1586,-1589,-1592,-1595,
+-1598,-1600,-1602,-1604,-1606,-1607,-1607,-1607,-1607,-1607,-1606,-1604,-1602,-1600,-1597,-1594,-1591,-1587,-1583,-1579,-1575,
+-1571,-1567,-1563,-1559,-1556,-1552,-1549,-1560,-1558,-1557,-1555,-1554,-1554,-1554,-1554,-1555,-1556,-1557,-1559,-1561,-1563,
+-1566,-1569,-1572,-1575,-1579,-1583,-1586,-1590,-1593,-1597,-1600,-1603,-1605,-1608,-1610,-1611,-1612,-1612,-1612,-1611,-1610,
+-1608,-1606,-1603,-1599,-1594,-1590,-1584,-1578,-1572,-1565,-1558,-1550,-1543,-1535,-1527,-1519,-1511,-1503,-1495,-1488,-1480,
+-1473,-1467,-1460,-1455,-1449,-1444,-1440,-1436,-1433,-1430,-1428,-1426,-1425,-1424,-1424,-1424,-1424,-1425,-1426,-1426,-1427,
+-1428,-1429,-1430,-1431,-1432,-1432,-1432,-1431,-1431,-1429,-1428,-1425,-1423,-1419,-1415,-1411,-1406,-1400,-1394,-1388,-1381,
+-1374,-1366,-1358,-1349,-1340,-1331,-1322,-1313,-1304,-1294,-1285,-1276,-1266,-1257,-1248,-1240,-1231,-1223,-1215,-1207,-1199,
+-1192,-1185,-1178,-1172,-1165,-1159,-1154,-1148,-1143,-1137,-1132,-1127,-1122,-1118,-1113,-1108,-1104,-1099,-1095,-1090,-1086,
+-1081,-1077,-1072,-1068,-1063,-1059,-1055,-1050,-1046,-1042,-1038,-1035,-1031,-1028,-1025,-1022,-1019,-1017,-1015,-1014,-1012,
+-1011,-1010,-1010,-1010,-1011,-1011,-1012,-1014,-1015,-1017,-1019,-1022,-1024,-1027,-1030,-1034,-1037,-1040,-1044,-1048,-1051,
+-1055,-1059,-1062,-1066,-1069,-1072,-1076,-1079,-1082,-1085,-1087,-1090,-1092,-1094,-1096,-1098,-1100,-1101,-1103,-1104,-1105,
+-1106,-1107,-1108,-1109,-1109,-1110,-1110,-1111,-1111,-1112,-1112,-1113,-1113,-1114,-1115,-1115,-1116,-1117,-1117,-1118,-1119,
+-1120,-1121,-1122,-1123,-1124,-1125,-1126,-1127,-1128,-1130,-1131,-1132,-1134,-1135,-1136,-1138,-1139,-1140,-1142,-1143,-1144,
+-1146,-1147,-1149,-1150,-1152,-1153,-1154,-1156,-1158,-1159,-1161,-1162,-1164,-1166,-1168,-1169,-1171,-1173,-1176,-1178,-1180,
+-1182,-1185,-1188,-1190,-1193,-1196,-1199,-1202,-1206,-1209,-1213,-1216,-1220,-1224,-1229,-1233,-1238,-1242,-1247,-1253,-1258,
+-1263,-1269,-1275,-1281,-1287,-1294,-1301,-1307,-1314,-1322,-1329,-1337,-1345,-1353,-1361,-1369,-1378,-1386,-1395,-1404,-1413,
+-1422,-1431,-1441,-1450,-1460,-1469,-1479,-1488,-1498,-1508,-1517,-1527,-1537,-1546,-1556,-1566,-1575,-1585,-1594,-1604,-1613,
+-1623,-1632,-1641,-1651,-1660,-1670,-1679,-1689,-1698,-1707,-1717,-1727,-1736,-1746,-1756,-1766,-1776,-1786,-1796,-1806,-1816,
+-1826,-1836,-1847,-1857,-1867,-1878,-1888,-1899,-1909,-1919,-1930,-1940,-1950,-1960,-1970,-1980,-1989,-1999,-2008,-2017,-2027,
+-2035,-2044,-2053,-2061,-2069,-2078,-2085,-2093,-2101,-2109,-2116,-2124,-2131,-2138,-2146,-2153,-2160,-2168,-2175,-2182,-2190,
+-2198,-2205,-2213,-2221,-2229,-2238,-2246,-2255,-2263,-2272,-2281,-2291,-2300,-2309,-2319,-2329,-2338,-2348,-2358,-2368,-2378,
+-2388,-2398,-2409,-2419,-2429,-2439,-2449,-2459,-2469,-2479,-2489,-2499,-2509,-2519,-2529,-2539,-2549,-2559,-2569,-2579,-2589,
+-2599,-2609,-2619,-2630,-2640,-2650,-2661,-2672,-2683,-2694,-2705,-2716,-2728,-2739,-2751,-2763,-2775,-2788,-2800,-2813,-2826,
+-2839,-2852,-2865,-2878,-2891,-2904,-2918,-2931,-2945,-2958,-2971,-2985,-2998,-3011,-3025,-3038,-3050,-3063,-3076,-3088,-3101,
+-3113,-3125,-3137,-3148,-3160,-3171,-3182,-3193,-3204,-3214,-3224,-3234,-3244,-3254,-3263,-3273,-3282,-3291,-3299,-3308,-3316,
+-3324,-3332,-3340,-3348,-3355,-3362,-3369,-3376,-3383,-3389,-3396,-3402,-3408,-3413,-3419,-3424,-3429,-3433,-3438,-3442,-3446,
+-3450,-3453,-3457,-3460,-3463,-3465,-3468,-3470,-3472,-3474,-3476,-3477,-3479,-3480,-3482,-3483,-3485,-3486,-3487,-3489,-3490,
+-3492,-3494,-3496,-3498,-3500,-3503,-3506,-3509,-3512,-3515,-3519,-3523,-3527,-3532,-3536,-3541,-3546,-3551,-3556,-3562,-3567,
+-3572,-3578,-3583,-3588,-3593,-3598,-3603,-3607,-3611,-3615,-3619,-3622,-3625,-3627,-3629,-3631,-3632,-3633,-3634,-3634,-3634,
+-3633,-3633,-3632,-3630,-3629,-3628,-3626,-3625,-3623,-3622,-3621,-3620,-3619,-3619,-3619,-3619,-3620,-3621,-3623,-3625,-3627,
+-3631,-3634,-3638,-3643,-3648,-3653,-3659,-3665,-3671,-3678,-3684,-3691,-3698,-3704,-3711,-3717,-3723,-3729,-3734,-3739,-3743,
+-3747,-3750,-3752,-3754,-3756,-3756,-3756,-3756,-3754,-3753,-3750,-3748,-3744,-3741,-3737,-3733,-3728,-3724,-3719,-3715,-3711,
+-3707,-3703,-3699,-3696,-3693,-3690,-3688,-3686,-3685,-3684,-3684,-3684,-3684,-3685,-3686,-3687,-3688,-3689,-3690,-3690,-3691,
+-3691,-3691,-3690,-3688,-3686,-3683,-3679,-3673,-3667,-3660,-3652,-3643,-3632,-3620,-3608,-3594,-3580,-3564,-3548,-3531,-3514,
+-3496,-3478,-3460,-3442,-3424,-3407,-3390,-3373,-3358,-3343,-3330,-3318,-3307,-3298,-3290,-3284,-3280,-3277,-3277,-3278,-3281,
+-3286,-3292,-3300,-3310,-3321,-3334,-3348,-3363,-3379,-3395,-3413,-3431,-3449,-3467,-3485,-3503,-3521,-3538,-3555,-3571,-3586,
+-3599,-3612,-3624,-3635,-3644,-3652,-3659,-3665,-3669,-3672,-3675,-3676,-3676,-3676,-3675,-3673,-3671,-3669,-3666,-3664,-3661,
+-3659,-3657,-3656,-3655,-3655,-3655,-3657,-3659,-3662,-3667,-3672,-3678,-3686,-3694,-3704,-3714,-3725,-3737,-3750,-3763,-3778,
+-3792,-3807,-3822,-3838,-3854,-3869,-3885,-3900,-3915,-3930,-3944,-3958,-3971,-3984,-3996,-4007,-4018,-4028,-4037,-4046,-4054,
+-4061,-4067,-4073,-4079,-4083,-4088,-4092,-4095,-4099,-4102,-4104,-4107,-4110,-4112,-4114,-4117,-4119,-4122,-4124,-4127,-4130,
+-4132,-4135,-4138,-4141,-4144,-4147,-4150,-4153,-4156,-4159,-4161,-4164,-4166,-4167,-4169,-4170,-4171,-4171,-4171,-4170,-4169,
+-4167,-4165,-4162,-4159,-4155,-4151,-4147,-4142,-4136,-4131,-4125,-4118,-4111,-4105,-4097,-4090,-4083,-4075,-4068,-4060,-4053,
+-4045,-4038,-4030,-4023,-4015,-4008,-4001,-3994,-3986,-3979,-3972,-3965,-3958,-3951,-3944,-3936,-3929,-3921,-3914,-3906,-3897,
+-3889,-3880,-3872,-3862,-3853,-3844,-3834,-3824,-3814,-3804,-3793,-3783,-3772,-3762,-3752,-3742,-3732,-3722,-3713,-3704,-3696,
+-3688,-3680,-3674,-3668,-3663,-3658,-3654,-3652,-3650,-3649,-3648,-3649,-3650,-3652,-3655,-3659,-3663,-3668,-3673,-3678,-3684,
+-3690,-3696,-3702,-3708,-3714,-3719,-3724,-3728,-3731,-3734,-3736,-3736,-3736,-3734,-3731,-3727,-3722,-3715,-3707,-3698,-3687,
+-3675,-3662,-3647,-3632,-3615,-3598,-3580,-3561,-3542,-3522,-3502,-3482,-3462,-3442,-3422,-3404,-3385,-3368,-3351,-3336,-3321,
+-3308,-3297,-3286,-3278,-3271,-3265,-3261,-3259,-3258,-3259,-3261,-3265,-3269,-3276,-3283,-3291,-3300,-3309,-3319,-3329,-3340,
+-3350,-3361,-3371,-3380,-3389,-3396,-3403,-3409,-3414,-3417,-3419,-3419,-3417,-3414,-3410,-3403,-3395,-3386,-3374,-3362,-3347,
+-3332,-3315,-3297,-3278,-3258,-3237,-3215,-3193,-3171,-3149,-3126,-3104,-3082,-3060,-3039,-3018,-2999,-2980,-2962,-2945,-2930,
+-2915,-2902,-2889,-2878,-2868,-2860,-2852,-2846,-2840,-2836,-2832,-2829,-2827,-2825,-2824,-2823,-2822,-2822,-2821,-2821,-2820,
+-2819,-2817,-2815,-2813,-2810,-2806,-2802,-2797,-2791,-2785,-2778,-2770,-2762,-2753,-2743,-2733,-2722,-2712,-2701,-2689,-2678,
+-2667,-2656,-2645,-2635,-2625,-2615,-2607,-2599,-2592,-2586,-2581,-2577,-2574,-2572,-2572,-2573,-2575,-2578,-2582,-2588,-2595,
+-2603,-2613,-2623,-2634,-2646,-2659,-2673,-2687,-2702,-2717,-2733,-2749,-2764,-2780,-2796,-2811,-2827,-2841,-2855,-2869,-2882,
+-2894,-2905,-2916,-2925,-2934,-2941,-2948,-2953,-2958,-2961,-2963,-2964,-2964,-2963,-2961,-2958,-2954,-2950,-2944,-2937,-2930,
+-2922,-2913,-2903,-2893,-2882,-2870,-2858,-2845,-2832,-2818,-2804,-2789,-2774,-2758,-2742,-2725,-2708,-2691,-2673,-2655,-2637,
+-2618,-2599,-2579,-2560,-2540,-2520,-2500,-2480,-2460,-2440,-2420,-2401,-2381,-2362,-2344,-2326,-2308,-2292,-2276,-2261,-2246,
+-2233,-2221,-2210,-2201,-2192,-2185,-2179,-2175,-2172,-2170,-2170,-2171,-2174,-2178,-2183,-2189,-2196,-2205,-2214,-2224,-2235,
+-2246,-2258,-2270,-2283,-2296,-2308,-2321,-2333,-2345,-2357,-2368,-2379,-2388,-2397,-2405,-2413,-2419,-2425,-2429,-2433,-2436,
+-2438,-2439,-2440,-2440,-2439,-2438,-2437,-2435,-2433,-2431,-2429,-2428,-2426,-2425,-2424,-2424,-2425,-2426,-2428,-2431,-2434,
+-2439,-2444,-2450,-2456,-2463,-2471,-2480,-2489,-2498,-2508,-2518,-2527,-2537,-2546,-2555,-2563,-2570,-2576,-2582,-2586,-2588,
+-2590,-2589,-2587,-2583,-2577,-2570,-2560,-2548,-2535,-2519,-2501,-2482,-2460,-2437,-2412,-2386,-2358,-2329,-2299,-2268,-2236,
+-2204,-2171,-2139,-2106,-2073,-2041,-2009,-1978,-1948,-1919,-1891,-1864,-1839,-1816,-1794,-1774,-1756,-1739,-1725,-1712,-1701,
+-1691,-1684,-1678,-1674,-1671,-1669,-1669,-1671,-1673,-1676,-1680,-1685,-1690,-1695,-1701,-1707,-1713,-1719,-1725,-1730,-1736,
+-1740,-1745,-1748,-1751,-1754,-1755,-1757,-1757,-1757,-1756,-1754,-1752,-1750,-1747,-1743,-1739,-1735,-1731,-1727,-1722,-1717,
+-1713,-1708,-1704,-1700,-1696,-1692,-1689,-1685,-1683,-1680,-1678,-1676,-1675,-1674,-1673,-1673,-1672,-1672,-1672,-1672,-1673,
+-1673,-1673,-1674,-1674,-1674,-1674,-1673,-1673,-1672,-1671,-1670,-1668,-1666,-1664,-1661,-1658,-1655,-1651,-1648,-1644,-1639,
+-1635,-1631,-1626,-1622,-1617,-1613,-1608,-1604,-1600,-1596,-1592,-1589,-1586,-1583,-1581,-1579,-1577,-1576,-1575,-1574,-1574,
+-1574,-1574,-1575,-1576,-1577,-1578,-1580,-1582,-1583,-1585,-1587,-1589,-1591,-1593,-1594,-1596,-1597,-1598,-1599,-1599,-1599,
+-1599,-1599,-1598,-1597,-1596,-1594,-1592,-1590,-1588,-1586,-1583,-1580,-1578,-1575,-1572,-1569,-1567,-1564,-1562,-1560,-1584,
+-1583,-1583,-1583,-1583,-1584,-1584,-1585,-1586,-1587,-1589,-1590,-1592,-1594,-1596,-1598,-1600,-1603,-1605,-1607,-1609,-1611,
+-1613,-1615,-1616,-1618,-1619,-1619,-1620,-1620,-1620,-1619,-1618,-1617,-1615,-1613,-1610,-1607,-1604,-1600,-1596,-1591,-1587,
+-1582,-1577,-1571,-1566,-1561,-1555,-1549,-1544,-1538,-1533,-1528,-1523,-1518,-1513,-1509,-1505,-1501,-1498,-1495,-1492,-1490,
+-1488,-1487,-1485,-1485,-1484,-1484,-1484,-1484,-1484,-1485,-1486,-1486,-1487,-1488,-1488,-1489,-1489,-1489,-1489,-1489,-1488,
+-1487,-1486,-1484,-1482,-1480,-1477,-1473,-1469,-1465,-1461,-1455,-1450,-1444,-1438,-1431,-1424,-1417,-1410,-1402,-1395,-1387,
+-1379,-1371,-1362,-1354,-1346,-1338,-1330,-1323,-1315,-1307,-1300,-1293,-1286,-1279,-1273,-1266,-1260,-1254,-1248,-1243,-1238,
+-1233,-1228,-1223,-1218,-1214,-1209,-1205,-1200,-1196,-1192,-1188,-1184,-1180,-1176,-1172,-1168,-1165,-1161,-1157,-1153,-1149,
+-1146,-1142,-1139,-1135,-1132,-1129,-1126,-1123,-1120,-1118,-1115,-1113,-1111,-1109,-1108,-1107,-1106,-1105,-1105,-1105,-1105,
+-1105,-1106,-1107,-1108,-1110,-1112,-1114,-1116,-1118,-1121,-1124,-1127,-1130,-1133,-1136,-1140,-1143,-1147,-1150,-1154,-1157,
+-1161,-1164,-1168,-1171,-1175,-1178,-1181,-1185,-1188,-1191,-1194,-1196,-1199,-1201,-1204,-1206,-1208,-1211,-1213,-1214,-1216,
+-1218,-1220,-1221,-1223,-1224,-1225,-1227,-1228,-1229,-1230,-1231,-1233,-1234,-1235,-1236,-1237,-1238,-1239,-1240,-1241,-1242,
+-1243,-1244,-1245,-1246,-1247,-1249,-1250,-1251,-1252,-1253,-1255,-1256,-1257,-1259,-1260,-1262,-1263,-1265,-1267,-1268,-1270,
+-1272,-1274,-1276,-1278,-1280,-1282,-1284,-1286,-1289,-1291,-1294,-1296,-1299,-1301,-1304,-1307,-1310,-1313,-1316,-1320,-1323,
+-1326,-1330,-1334,-1337,-1341,-1345,-1350,-1354,-1358,-1363,-1368,-1373,-1378,-1383,-1389,-1394,-1400,-1406,-1412,-1418,-1425,
+-1431,-1438,-1445,-1452,-1459,-1467,-1475,-1482,-1490,-1498,-1507,-1515,-1524,-1532,-1541,-1550,-1559,-1568,-1577,-1586,-1596,
+-1605,-1614,-1624,-1634,-1643,-1653,-1662,-1672,-1681,-1691,-1701,-1710,-1720,-1730,-1739,-1749,-1759,-1768,-1778,-1788,-1797,
+-1807,-1816,-1826,-1836,-1845,-1855,-1864,-1874,-1884,-1893,-1903,-1913,-1922,-1932,-1941,-1951,-1960,-1970,-1979,-1988,-1997,
+-2007,-2016,-2025,-2033,-2042,-2051,-2059,-2068,-2076,-2084,-2092,-2100,-2108,-2115,-2123,-2130,-2137,-2144,-2151,-2158,-2165,
+-2172,-2179,-2185,-2192,-2198,-2205,-2211,-2218,-2225,-2231,-2238,-2245,-2252,-2259,-2266,-2273,-2280,-2288,-2295,-2303,-2311,
+-2319,-2327,-2335,-2344,-2352,-2361,-2370,-2379,-2388,-2397,-2406,-2416,-2425,-2435,-2444,-2454,-2464,-2474,-2483,-2493,-2503,
+-2513,-2523,-2532,-2542,-2552,-2562,-2571,-2581,-2591,-2601,-2610,-2620,-2630,-2640,-2650,-2659,-2669,-2679,-2689,-2699,-2710,
+-2720,-2730,-2740,-2751,-2762,-2772,-2783,-2794,-2805,-2816,-2828,-2839,-2851,-2862,-2874,-2886,-2898,-2910,-2922,-2934,-2946,
+-2958,-2970,-2982,-2994,-3006,-3018,-3030,-3042,-3054,-3066,-3078,-3089,-3101,-3112,-3123,-3134,-3145,-3156,-3166,-3176,-3187,
+-3196,-3206,-3216,-3225,-3234,-3243,-3252,-3260,-3268,-3276,-3284,-3292,-3299,-3306,-3313,-3320,-3327,-3333,-3339,-3345,-3351,
+-3356,-3361,-3366,-3371,-3376,-3380,-3385,-3389,-3393,-3396,-3400,-3403,-3406,-3409,-3412,-3415,-3417,-3419,-3422,-3424,-3426,
+-3428,-3430,-3432,-3433,-3435,-3437,-3439,-3440,-3442,-3444,-3446,-3449,-3451,-3453,-3456,-3458,-3461,-3464,-3467,-3470,-3474,
+-3478,-3481,-3486,-3490,-3494,-3499,-3503,-3508,-3513,-3518,-3522,-3527,-3532,-3537,-3542,-3547,-3552,-3556,-3561,-3565,-3569,
+-3573,-3576,-3580,-3583,-3586,-3588,-3590,-3592,-3594,-3596,-3597,-3598,-3598,-3599,-3599,-3599,-3599,-3599,-3599,-3599,-3599,
+-3599,-3599,-3599,-3599,-3600,-3601,-3602,-3603,-3604,-3606,-3609,-3611,-3614,-3617,-3621,-3625,-3629,-3634,-3639,-3645,-3650,
+-3656,-3662,-3668,-3674,-3681,-3687,-3694,-3700,-3706,-3712,-3718,-3724,-3729,-3734,-3739,-3743,-3747,-3751,-3754,-3756,-3758,
+-3760,-3761,-3762,-3762,-3761,-3761,-3760,-3758,-3756,-3754,-3751,-3748,-3745,-3741,-3737,-3733,-3729,-3724,-3719,-3715,-3710,
+-3704,-3699,-3694,-3688,-3682,-3676,-3670,-3664,-3657,-3650,-3643,-3636,-3628,-3620,-3611,-3602,-3593,-3583,-3573,-3563,-3552,
+-3540,-3528,-3516,-3503,-3490,-3477,-3463,-3450,-3436,-3422,-3408,-3393,-3379,-3366,-3352,-3339,-3326,-3314,-3302,-3291,-3281,
+-3271,-3263,-3255,-3249,-3243,-3239,-3235,-3233,-3232,-3232,-3233,-3235,-3239,-3243,-3248,-3255,-3262,-3270,-3279,-3288,-3298,
+-3309,-3319,-3330,-3342,-3353,-3364,-3375,-3386,-3396,-3406,-3416,-3425,-3434,-3442,-3449,-3455,-3461,-3466,-3471,-3474,-3477,
+-3480,-3481,-3483,-3483,-3484,-3484,-3483,-3483,-3482,-3481,-3481,-3480,-3480,-3480,-3480,-3481,-3483,-3485,-3488,-3491,-3495,
+-3500,-3506,-3512,-3519,-3528,-3536,-3546,-3557,-3568,-3580,-3592,-3605,-3619,-3633,-3647,-3662,-3677,-3693,-3708,-3723,-3739,
+-3754,-3769,-3784,-3799,-3814,-3828,-3841,-3854,-3867,-3879,-3891,-3903,-3913,-3924,-3933,-3942,-3951,-3959,-3967,-3974,-3981,
+-3987,-3993,-3999,-4004,-4009,-4013,-4017,-4021,-4025,-4029,-4032,-4035,-4037,-4040,-4042,-4044,-4046,-4048,-4049,-4050,-4051,
+-4052,-4052,-4052,-4052,-4052,-4051,-4050,-4048,-4046,-4044,-4042,-4039,-4035,-4032,-4028,-4024,-4019,-4014,-4009,-4003,-3997,
+-3991,-3985,-3979,-3972,-3965,-3958,-3950,-3943,-3935,-3928,-3920,-3912,-3904,-3896,-3888,-3879,-3871,-3863,-3854,-3846,-3837,
+-3828,-3819,-3810,-3801,-3792,-3783,-3773,-3763,-3753,-3743,-3733,-3722,-3712,-3701,-3690,-3679,-3668,-3657,-3646,-3635,-3624,
+-3613,-3603,-3592,-3582,-3572,-3562,-3553,-3545,-3536,-3529,-3522,-3516,-3510,-3506,-3502,-3499,-3497,-3496,-3495,-3496,-3497,
+-3500,-3503,-3507,-3512,-3518,-3524,-3531,-3539,-3547,-3555,-3563,-3572,-3581,-3590,-3598,-3606,-3614,-3621,-3628,-3634,-3639,
+-3643,-3646,-3649,-3649,-3649,-3647,-3644,-3640,-3634,-3627,-3618,-3609,-3597,-3585,-3572,-3557,-3541,-3525,-3507,-3489,-3470,
+-3451,-3432,-3413,-3393,-3374,-3355,-3337,-3319,-3302,-3286,-3270,-3256,-3243,-3232,-3222,-3213,-3206,-3200,-3196,-3193,-3192,
+-3192,-3194,-3197,-3202,-3208,-3214,-3222,-3231,-3240,-3250,-3261,-3272,-3282,-3293,-3304,-3314,-3324,-3333,-3341,-3348,-3354,
+-3359,-3363,-3365,-3366,-3365,-3362,-3358,-3353,-3345,-3336,-3326,-3314,-3300,-3285,-3269,-3252,-3233,-3214,-3193,-3172,-3151,
+-3129,-3107,-3084,-3062,-3040,-3018,-2997,-2976,-2956,-2936,-2918,-2901,-2884,-2869,-2855,-2842,-2831,-2820,-2811,-2803,-2797,
+-2791,-2787,-2783,-2781,-2779,-2778,-2778,-2778,-2779,-2780,-2781,-2783,-2784,-2786,-2787,-2788,-2789,-2789,-2788,-2788,-2786,
+-2784,-2781,-2778,-2773,-2768,-2763,-2756,-2749,-2742,-2734,-2725,-2716,-2707,-2698,-2688,-2678,-2668,-2659,-2649,-2640,-2632,
+-2624,-2616,-2610,-2604,-2598,-2594,-2591,-2589,-2588,-2588,-2589,-2591,-2594,-2598,-2604,-2611,-2618,-2627,-2637,-2647,-2658,
+-2671,-2683,-2697,-2711,-2725,-2739,-2754,-2769,-2784,-2799,-2814,-2828,-2842,-2856,-2869,-2881,-2893,-2904,-2914,-2924,-2932,
+-2940,-2946,-2952,-2956,-2960,-2962,-2963,-2963,-2962,-2960,-2956,-2952,-2946,-2940,-2932,-2923,-2914,-2903,-2891,-2879,-2865,
+-2851,-2836,-2820,-2803,-2786,-2768,-2750,-2731,-2711,-2691,-2670,-2649,-2628,-2606,-2585,-2563,-2541,-2519,-2497,-2475,-2453,
+-2431,-2410,-2389,-2369,-2349,-2330,-2311,-2293,-2276,-2260,-2245,-2230,-2217,-2205,-2193,-2184,-2175,-2167,-2161,-2156,-2152,
+-2150,-2148,-2148,-2149,-2151,-2155,-2159,-2164,-2171,-2178,-2185,-2194,-2203,-2213,-2223,-2233,-2243,-2254,-2265,-2275,-2286,
+-2296,-2306,-2316,-2325,-2334,-2342,-2350,-2357,-2364,-2370,-2375,-2380,-2385,-2388,-2392,-2395,-2397,-2399,-2401,-2403,-2405,
+-2407,-2408,-2410,-2412,-2414,-2417,-2420,-2423,-2427,-2431,-2436,-2442,-2448,-2454,-2462,-2469,-2477,-2486,-2495,-2505,-2514,
+-2524,-2534,-2544,-2554,-2563,-2573,-2581,-2589,-2597,-2603,-2608,-2613,-2616,-2618,-2618,-2617,-2614,-2609,-2603,-2595,-2585,
+-2574,-2561,-2545,-2529,-2510,-2490,-2468,-2444,-2419,-2393,-2366,-2337,-2308,-2278,-2247,-2216,-2185,-2153,-2121,-2090,-2058,
+-2027,-1997,-1968,-1939,-1912,-1885,-1860,-1836,-1813,-1792,-1772,-1753,-1737,-1721,-1707,-1695,-1685,-1675,-1668,-1661,-1656,
+-1652,-1649,-1647,-1646,-1647,-1647,-1649,-1651,-1653,-1656,-1660,-1663,-1667,-1670,-1674,-1677,-1680,-1684,-1687,-1689,-1691,
+-1693,-1695,-1696,-1697,-1697,-1697,-1697,-1696,-1695,-1694,-1693,-1691,-1689,-1688,-1686,-1684,-1681,-1679,-1677,-1675,-1673,
+-1672,-1670,-1668,-1667,-1666,-1664,-1664,-1663,-1662,-1662,-1661,-1661,-1661,-1661,-1661,-1661,-1661,-1661,-1661,-1661,-1661,
+-1661,-1661,-1660,-1660,-1659,-1658,-1657,-1656,-1655,-1653,-1652,-1650,-1648,-1646,-1644,-1642,-1640,-1637,-1635,-1632,-1630,
+-1628,-1626,-1623,-1621,-1619,-1617,-1615,-1614,-1612,-1611,-1609,-1608,-1607,-1607,-1606,-1605,-1605,-1605,-1605,-1605,-1605,
+-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1605,-1604,-1604,-1603,-1602,-1601,-1600,-1599,-1598,-1597,
+-1596,-1594,-1593,-1592,-1590,-1589,-1588,-1587,-1586,-1585,-1584,-1584,-1665,-1666,-1666,-1667,-1667,-1668,-1669,-1670,-1671,
+-1672,-1673,-1674,-1675,-1676,-1677,-1678,-1679,-1680,-1680,-1681,-1681,-1682,-1682,-1682,-1681,-1680,-1680,-1679,-1677,-1675,
+-1673,-1671,-1669,-1666,-1663,-1659,-1655,-1652,-1648,-1643,-1639,-1634,-1629,-1624,-1619,-1614,-1609,-1604,-1599,-1594,-1589,
+-1584,-1580,-1575,-1571,-1567,-1563,-1559,-1556,-1553,-1551,-1548,-1546,-1544,-1543,-1541,-1540,-1540,-1539,-1539,-1539,-1539,
+-1539,-1539,-1540,-1540,-1540,-1541,-1541,-1542,-1542,-1542,-1542,-1541,-1541,-1540,-1539,-1537,-1536,-1534,-1531,-1528,-1525,
+-1522,-1518,-1514,-1510,-1505,-1500,-1495,-1489,-1483,-1477,-1471,-1464,-1458,-1451,-1444,-1437,-1430,-1423,-1416,-1409,-1402,
+-1395,-1388,-1381,-1374,-1368,-1361,-1355,-1349,-1343,-1338,-1332,-1327,-1322,-1317,-1312,-1307,-1303,-1298,-1294,-1290,-1287,
+-1283,-1279,-1276,-1273,-1270,-1267,-1264,-1261,-1258,-1256,-1253,-1251,-1248,-1246,-1244,-1242,-1240,-1238,-1237,-1235,-1233,
+-1232,-1231,-1230,-1229,-1228,-1228,-1227,-1227,-1227,-1227,-1227,-1228,-1228,-1229,-1230,-1231,-1233,-1234,-1236,-1238,-1240,
+-1242,-1244,-1247,-1249,-1252,-1255,-1257,-1260,-1263,-1267,-1270,-1273,-1276,-1279,-1282,-1285,-1289,-1292,-1295,-1298,-1301,
+-1304,-1306,-1309,-1312,-1314,-1317,-1319,-1321,-1323,-1326,-1327,-1329,-1331,-1333,-1335,-1336,-1338,-1339,-1340,-1342,-1343,
+-1344,-1345,-1346,-1347,-1348,-1350,-1351,-1352,-1353,-1354,-1355,-1356,-1357,-1358,-1359,-1361,-1362,-1363,-1365,-1366,-1368,
+-1369,-1371,-1372,-1374,-1376,-1378,-1380,-1382,-1384,-1386,-1388,-1390,-1393,-1395,-1398,-1400,-1403,-1405,-1408,-1411,-1413,
+-1416,-1419,-1422,-1425,-1428,-1431,-1435,-1438,-1441,-1444,-1448,-1451,-1455,-1459,-1462,-1466,-1470,-1474,-1478,-1482,-1486,
+-1490,-1495,-1499,-1504,-1509,-1513,-1518,-1523,-1529,-1534,-1539,-1545,-1551,-1557,-1563,-1569,-1575,-1582,-1588,-1595,-1602,
+-1609,-1616,-1623,-1631,-1638,-1646,-1654,-1662,-1670,-1678,-1686,-1694,-1703,-1711,-1720,-1728,-1737,-1745,-1754,-1763,-1772,
+-1781,-1789,-1798,-1807,-1816,-1825,-1834,-1843,-1852,-1861,-1870,-1879,-1888,-1897,-1906,-1915,-1924,-1933,-1942,-1951,-1960,
+-1969,-1978,-1987,-1996,-2004,-2013,-2022,-2030,-2039,-2047,-2056,-2064,-2072,-2081,-2089,-2097,-2105,-2113,-2120,-2128,-2136,
+-2143,-2150,-2158,-2165,-2172,-2179,-2186,-2193,-2200,-2206,-2213,-2219,-2226,-2232,-2239,-2245,-2252,-2258,-2264,-2271,-2277,
+-2284,-2290,-2297,-2303,-2310,-2317,-2323,-2330,-2337,-2344,-2352,-2359,-2366,-2374,-2382,-2390,-2397,-2406,-2414,-2422,-2430,
+-2439,-2447,-2456,-2465,-2474,-2483,-2491,-2501,-2510,-2519,-2528,-2537,-2546,-2556,-2565,-2574,-2584,-2593,-2603,-2612,-2621,
+-2631,-2640,-2650,-2659,-2668,-2678,-2687,-2697,-2706,-2716,-2725,-2735,-2745,-2754,-2764,-2774,-2783,-2793,-2803,-2813,-2823,
+-2833,-2843,-2853,-2864,-2874,-2884,-2895,-2905,-2916,-2926,-2937,-2947,-2958,-2968,-2979,-2989,-3000,-3010,-3021,-3031,-3041,
+-3052,-3062,-3072,-3082,-3092,-3101,-3111,-3121,-3130,-3139,-3148,-3157,-3166,-3174,-3183,-3191,-3199,-3207,-3215,-3222,-3229,
+-3236,-3243,-3250,-3257,-3263,-3269,-3275,-3281,-3286,-3292,-3297,-3302,-3307,-3312,-3317,-3321,-3325,-3330,-3334,-3338,-3341,
+-3345,-3348,-3352,-3355,-3358,-3361,-3364,-3367,-3370,-3373,-3376,-3378,-3381,-3384,-3386,-3389,-3392,-3394,-3397,-3400,-3402,
+-3405,-3408,-3411,-3414,-3417,-3420,-3423,-3426,-3429,-3433,-3436,-3440,-3444,-3447,-3451,-3455,-3459,-3463,-3467,-3471,-3475,
+-3479,-3483,-3486,-3490,-3494,-3498,-3502,-3505,-3509,-3512,-3515,-3518,-3521,-3524,-3526,-3529,-3531,-3533,-3535,-3537,-3538,
+-3540,-3541,-3542,-3543,-3544,-3545,-3545,-3546,-3547,-3547,-3548,-3549,-3549,-3550,-3551,-3552,-3553,-3554,-3556,-3557,-3559,
+-3561,-3564,-3566,-3569,-3572,-3575,-3579,-3583,-3587,-3591,-3595,-3600,-3605,-3610,-3615,-3620,-3625,-3631,-3636,-3641,-3647,
+-3652,-3657,-3662,-3666,-3671,-3675,-3679,-3683,-3687,-3690,-3693,-3695,-3697,-3699,-3700,-3701,-3701,-3701,-3701,-3700,-3698,
+-3697,-3695,-3692,-3689,-3686,-3682,-3678,-3673,-3668,-3663,-3658,-3652,-3646,-3640,-3633,-3626,-3619,-3611,-3604,-3596,-3588,
+-3580,-3571,-3562,-3554,-3544,-3535,-3526,-3516,-3507,-3497,-3487,-3477,-3467,-3456,-3446,-3436,-3425,-3415,-3405,-3395,-3385,
+-3375,-3365,-3356,-3347,-3338,-3329,-3321,-3313,-3306,-3299,-3292,-3286,-3281,-3276,-3272,-3268,-3265,-3263,-3261,-3260,-3260,
+-3260,-3261,-3262,-3264,-3267,-3270,-3273,-3278,-3282,-3287,-3292,-3297,-3303,-3309,-3315,-3321,-3328,-3334,-3340,-3346,-3352,
+-3358,-3363,-3368,-3373,-3378,-3383,-3387,-3390,-3394,-3397,-3400,-3403,-3405,-3407,-3408,-3410,-3411,-3412,-3413,-3414,-3415,
+-3416,-3417,-3418,-3420,-3421,-3423,-3424,-3427,-3429,-3432,-3435,-3439,-3443,-3447,-3452,-3457,-3463,-3469,-3476,-3483,-3491,
+-3499,-3507,-3515,-3524,-3534,-3543,-3553,-3563,-3573,-3583,-3594,-3604,-3615,-3625,-3636,-3646,-3656,-3667,-3677,-3686,-3696,
+-3706,-3715,-3724,-3733,-3741,-3750,-3758,-3765,-3773,-3780,-3787,-3794,-3800,-3807,-3813,-3818,-3824,-3829,-3834,-3839,-3844,
+-3848,-3852,-3856,-3860,-3864,-3867,-3870,-3873,-3875,-3878,-3880,-3882,-3883,-3884,-3885,-3886,-3886,-3886,-3886,-3885,-3884,
+-3882,-3880,-3878,-3876,-3873,-3869,-3865,-3861,-3857,-3852,-3847,-3841,-3835,-3829,-3822,-3815,-3808,-3800,-3793,-3784,-3776,
+-3767,-3758,-3749,-3739,-3729,-3719,-3709,-3698,-3688,-3677,-3666,-3655,-3643,-3632,-3620,-3608,-3596,-3584,-3572,-3560,-3548,
+-3536,-3523,-3511,-3499,-3487,-3475,-3463,-3452,-3440,-3429,-3419,-3408,-3398,-3389,-3380,-3371,-3363,-3356,-3350,-3344,-3338,
+-3334,-3330,-3328,-3326,-3325,-3325,-3325,-3327,-3329,-3333,-3337,-3342,-3348,-3354,-3362,-3370,-3378,-3387,-3397,-3406,-3416,
+-3427,-3437,-3447,-3457,-3467,-3477,-3486,-3495,-3503,-3511,-3517,-3523,-3528,-3532,-3535,-3536,-3537,-3536,-3534,-3531,-3526,
+-3521,-3514,-3505,-3496,-3485,-3474,-3461,-3448,-3433,-3418,-3403,-3386,-3370,-3353,-3336,-3319,-3302,-3286,-3269,-3254,-3239,
+-3224,-3210,-3198,-3186,-3175,-3166,-3158,-3151,-3145,-3141,-3138,-3136,-3136,-3137,-3139,-3143,-3147,-3153,-3160,-3167,-3175,
+-3184,-3194,-3203,-3213,-3223,-3233,-3243,-3253,-3262,-3271,-3279,-3286,-3292,-3298,-3302,-3305,-3307,-3307,-3306,-3304,-3300,
+-3295,-3288,-3280,-3271,-3260,-3248,-3235,-3220,-3205,-3188,-3171,-3153,-3134,-3115,-3096,-3076,-3056,-3036,-3016,-2997,-2977,
+-2959,-2940,-2923,-2906,-2890,-2874,-2860,-2847,-2835,-2823,-2813,-2804,-2796,-2790,-2784,-2779,-2775,-2773,-2771,-2770,-2769,
+-2769,-2770,-2772,-2773,-2775,-2778,-2780,-2783,-2785,-2788,-2790,-2792,-2794,-2796,-2797,-2797,-2798,-2797,-2797,-2795,-2793,
+-2791,-2788,-2785,-2781,-2777,-2773,-2768,-2763,-2758,-2752,-2747,-2742,-2736,-2731,-2725,-2721,-2716,-2712,-2708,-2704,-2701,
+-2699,-2697,-2696,-2696,-2696,-2697,-2699,-2702,-2705,-2709,-2713,-2718,-2724,-2731,-2738,-2745,-2753,-2762,-2771,-2780,-2789,
+-2798,-2808,-2818,-2827,-2837,-2846,-2855,-2864,-2872,-2880,-2888,-2894,-2901,-2906,-2911,-2915,-2919,-2921,-2923,-2924,-2923,
+-2922,-2920,-2917,-2913,-2908,-2903,-2896,-2888,-2879,-2869,-2859,-2847,-2835,-2822,-2808,-2793,-2778,-2761,-2745,-2727,-2709,
+-2691,-2672,-2653,-2633,-2613,-2593,-2573,-2553,-2533,-2512,-2492,-2472,-2452,-2433,-2414,-2395,-2377,-2360,-2343,-2327,-2311,
+-2296,-2283,-2270,-2257,-2246,-2236,-2227,-2219,-2212,-2206,-2201,-2197,-2194,-2192,-2191,-2191,-2192,-2194,-2196,-2200,-2204,
+-2209,-2215,-2221,-2228,-2235,-2243,-2251,-2259,-2267,-2275,-2284,-2292,-2301,-2309,-2317,-2325,-2333,-2340,-2347,-2354,-2360,
+-2366,-2372,-2377,-2382,-2387,-2391,-2395,-2399,-2403,-2406,-2410,-2413,-2416,-2419,-2423,-2426,-2430,-2433,-2437,-2442,-2446,
+-2451,-2456,-2462,-2468,-2474,-2481,-2488,-2496,-2504,-2512,-2520,-2528,-2537,-2546,-2554,-2563,-2571,-2579,-2587,-2595,-2602,
+-2608,-2614,-2618,-2622,-2625,-2627,-2628,-2628,-2626,-2623,-2619,-2613,-2606,-2598,-2588,-2577,-2564,-2550,-2534,-2517,-2499,
+-2480,-2459,-2437,-2415,-2391,-2367,-2342,-2316,-2290,-2264,-2237,-2210,-2184,-2157,-2130,-2104,-2079,-2053,-2029,-2005,-1982,
+-1960,-1939,-1919,-1899,-1881,-1864,-1849,-1834,-1821,-1809,-1798,-1788,-1779,-1771,-1765,-1759,-1754,-1751,-1748,-1745,-1744,
+-1743,-1743,-1743,-1743,-1744,-1745,-1747,-1748,-1750,-1752,-1754,-1756,-1757,-1759,-1760,-1761,-1762,-1763,-1764,-1764,-1764,
+-1764,-1763,-1763,-1762,-1761,-1759,-1758,-1756,-1754,-1752,-1750,-1748,-1746,-1744,-1741,-1739,-1737,-1734,-1732,-1730,-1728,
+-1726,-1724,-1723,-1721,-1719,-1718,-1717,-1715,-1714,-1713,-1712,-1712,-1711,-1710,-1710,-1709,-1708,-1708,-1707,-1707,-1707,
+-1706,-1706,-1705,-1705,-1705,-1704,-1704,-1703,-1703,-1702,-1702,-1701,-1701,-1700,-1700,-1699,-1698,-1698,-1697,-1696,-1696,
+-1695,-1694,-1694,-1693,-1692,-1692,-1691,-1690,-1689,-1689,-1688,-1687,-1687,-1686,-1685,-1685,-1684,-1683,-1682,-1681,-1680,
+-1680,-1679,-1678,-1677,-1676,-1675,-1674,-1673,-1673,-1672,-1671,-1670,-1669,-1668,-1668,-1667,-1667,-1666,-1666,-1665,-1665,
+-1665,-1665,-1665,-1665,-1815,-1815,-1816,-1816,-1817,-1817,-1818,-1818,-1818,-1819,-1819,-1819,-1819,-1819,-1819,-1818,-1818,
+-1817,-1816,-1815,-1813,-1812,-1810,-1808,-1805,-1803,-1800,-1797,-1793,-1790,-1786,-1782,-1777,-1772,-1768,-1762,-1757,-1752,
+-1746,-1740,-1734,-1729,-1722,-1716,-1710,-1704,-1698,-1692,-1686,-1680,-1675,-1669,-1664,-1659,-1654,-1649,-1645,-1641,-1637,
+-1633,-1630,-1626,-1624,-1621,-1619,-1617,-1615,-1614,-1613,-1612,-1611,-1610,-1610,-1609,-1609,-1609,-1609,-1609,-1609,-1609,
+-1609,-1609,-1609,-1609,-1609,-1608,-1607,-1607,-1605,-1604,-1603,-1601,-1599,-1596,-1594,-1591,-1588,-1584,-1581,-1577,-1572,
+-1568,-1563,-1558,-1553,-1548,-1542,-1537,-1531,-1525,-1519,-1513,-1507,-1500,-1494,-1488,-1482,-1475,-1469,-1463,-1457,-1452,
+-1446,-1440,-1435,-1430,-1424,-1420,-1415,-1410,-1406,-1402,-1398,-1394,-1391,-1387,-1384,-1381,-1379,-1376,-1374,-1372,-1370,
+-1369,-1367,-1366,-1365,-1364,-1364,-1363,-1363,-1363,-1363,-1363,-1364,-1364,-1365,-1366,-1367,-1368,-1369,-1371,-1372,-1374,
+-1376,-1378,-1380,-1382,-1384,-1386,-1389,-1391,-1393,-1396,-1398,-1401,-1404,-1406,-1409,-1411,-1414,-1417,-1419,-1422,-1424,
+-1427,-1429,-1431,-1434,-1436,-1438,-1440,-1442,-1444,-1446,-1447,-1449,-1450,-1452,-1453,-1454,-1455,-1456,-1457,-1458,-1459,
+-1459,-1460,-1460,-1461,-1461,-1461,-1462,-1462,-1462,-1463,-1463,-1463,-1464,-1464,-1464,-1465,-1465,-1466,-1467,-1467,-1468,
+-1469,-1470,-1471,-1472,-1474,-1475,-1477,-1479,-1481,-1483,-1485,-1487,-1490,-1492,-1495,-1498,-1501,-1504,-1507,-1510,-1514,
+-1518,-1521,-1525,-1529,-1533,-1537,-1541,-1545,-1549,-1554,-1558,-1562,-1567,-1571,-1576,-1580,-1585,-1589,-1594,-1598,-1603,
+-1607,-1612,-1616,-1621,-1625,-1630,-1635,-1639,-1644,-1648,-1653,-1657,-1662,-1666,-1671,-1675,-1680,-1685,-1689,-1694,-1698,
+-1703,-1708,-1713,-1718,-1723,-1728,-1733,-1738,-1743,-1748,-1754,-1759,-1765,-1770,-1776,-1782,-1787,-1793,-1799,-1805,-1811,
+-1818,-1824,-1830,-1837,-1843,-1850,-1856,-1863,-1869,-1876,-1883,-1890,-1897,-1904,-1911,-1918,-1925,-1932,-1939,-1946,-1954,
+-1961,-1968,-1976,-1983,-1990,-1998,-2005,-2012,-2020,-2027,-2035,-2042,-2050,-2057,-2064,-2072,-2079,-2087,-2094,-2101,-2109,
+-2116,-2124,-2131,-2138,-2146,-2153,-2160,-2167,-2174,-2181,-2189,-2196,-2203,-2210,-2217,-2224,-2231,-2237,-2244,-2251,-2258,
+-2265,-2271,-2278,-2285,-2292,-2298,-2305,-2312,-2319,-2326,-2332,-2339,-2346,-2353,-2360,-2367,-2374,-2381,-2388,-2396,-2403,
+-2410,-2418,-2425,-2433,-2441,-2448,-2456,-2464,-2472,-2480,-2489,-2497,-2505,-2514,-2522,-2531,-2539,-2548,-2557,-2565,-2574,
+-2583,-2592,-2601,-2610,-2619,-2628,-2637,-2646,-2655,-2664,-2673,-2682,-2691,-2700,-2709,-2718,-2727,-2736,-2745,-2754,-2763,
+-2772,-2781,-2789,-2798,-2807,-2816,-2825,-2834,-2843,-2851,-2860,-2869,-2878,-2887,-2895,-2904,-2913,-2922,-2930,-2939,-2948,
+-2956,-2965,-2974,-2982,-2991,-2999,-3007,-3016,-3024,-3032,-3041,-3049,-3057,-3065,-3073,-3080,-3088,-3096,-3103,-3110,-3118,
+-3125,-3132,-3139,-3145,-3152,-3159,-3165,-3171,-3177,-3183,-3189,-3195,-3201,-3206,-3211,-3217,-3222,-3227,-3232,-3237,-3241,
+-3246,-3250,-3255,-3259,-3263,-3267,-3272,-3276,-3279,-3283,-3287,-3291,-3294,-3298,-3302,-3305,-3309,-3312,-3316,-3319,-3322,
+-3326,-3329,-3333,-3336,-3340,-3343,-3346,-3350,-3353,-3357,-3360,-3363,-3367,-3370,-3374,-3377,-3381,-3384,-3388,-3391,-3395,
+-3398,-3402,-3405,-3409,-3412,-3416,-3419,-3422,-3426,-3429,-3432,-3435,-3438,-3442,-3444,-3447,-3450,-3453,-3455,-3458,-3460,
+-3463,-3465,-3467,-3469,-3471,-3472,-3474,-3476,-3477,-3478,-3480,-3481,-3482,-3483,-3484,-3485,-3486,-3487,-3488,-3489,-3490,
+-3490,-3492,-3493,-3494,-3495,-3496,-3497,-3499,-3501,-3502,-3504,-3506,-3508,-3511,-3513,-3515,-3518,-3521,-3524,-3527,-3531,
+-3534,-3538,-3541,-3545,-3549,-3553,-3557,-3561,-3565,-3568,-3572,-3576,-3580,-3584,-3587,-3591,-3594,-3597,-3600,-3603,-3605,
+-3608,-3610,-3611,-3613,-3614,-3615,-3616,-3616,-3616,-3616,-3615,-3614,-3613,-3612,-3610,-3608,-3605,-3602,-3599,-3596,-3593,
+-3589,-3585,-3580,-3576,-3571,-3566,-3561,-3555,-3550,-3544,-3538,-3532,-3526,-3520,-3514,-3507,-3501,-3494,-3488,-3481,-3474,
+-3467,-3461,-3454,-3447,-3440,-3433,-3426,-3420,-3413,-3407,-3400,-3394,-3387,-3381,-3375,-3369,-3364,-3358,-3353,-3348,-3343,
+-3338,-3334,-3330,-3326,-3322,-3319,-3316,-3314,-3311,-3309,-3308,-3306,-3305,-3304,-3304,-3304,-3304,-3305,-3305,-3307,-3308,
+-3309,-3311,-3313,-3316,-3318,-3321,-3323,-3326,-3329,-3332,-3336,-3339,-3342,-3346,-3349,-3352,-3356,-3359,-3363,-3366,-3369,
+-3372,-3376,-3379,-3382,-3385,-3388,-3391,-3394,-3397,-3400,-3403,-3405,-3408,-3411,-3414,-3416,-3419,-3422,-3425,-3428,-3430,
+-3433,-3436,-3439,-3442,-3445,-3449,-3452,-3455,-3458,-3462,-3465,-3468,-3472,-3475,-3479,-3483,-3486,-3490,-3494,-3497,-3501,
+-3505,-3508,-3512,-3516,-3519,-3523,-3527,-3531,-3534,-3538,-3542,-3545,-3549,-3553,-3557,-3560,-3564,-3568,-3572,-3576,-3580,
+-3584,-3588,-3592,-3597,-3601,-3605,-3610,-3614,-3619,-3623,-3628,-3633,-3637,-3642,-3647,-3652,-3656,-3661,-3666,-3670,-3675,
+-3679,-3683,-3687,-3691,-3695,-3698,-3701,-3704,-3707,-3709,-3711,-3713,-3714,-3715,-3715,-3715,-3714,-3713,-3712,-3710,-3707,
+-3704,-3700,-3696,-3692,-3687,-3681,-3675,-3668,-3661,-3653,-3645,-3636,-3627,-3617,-3607,-3597,-3586,-3574,-3563,-3551,-3539,
+-3526,-3513,-3500,-3487,-3473,-3460,-3446,-3433,-3419,-3405,-3392,-3378,-3365,-3351,-3338,-3326,-3313,-3301,-3289,-3278,-3267,
+-3257,-3247,-3238,-3229,-3221,-3214,-3207,-3202,-3197,-3192,-3189,-3186,-3185,-3184,-3184,-3185,-3186,-3189,-3192,-3196,-3201,
+-3207,-3213,-3220,-3227,-3236,-3244,-3253,-3263,-3272,-3282,-3292,-3303,-3313,-3323,-3333,-3343,-3352,-3361,-3369,-3377,-3384,
+-3391,-3396,-3401,-3405,-3408,-3411,-3412,-3412,-3411,-3408,-3405,-3401,-3396,-3389,-3382,-3374,-3364,-3354,-3343,-3332,-3319,
+-3306,-3293,-3279,-3265,-3251,-3236,-3222,-3208,-3194,-3180,-3167,-3154,-3141,-3130,-3119,-3109,-3100,-3091,-3084,-3078,-3073,
+-3069,-3066,-3065,-3064,-3065,-3067,-3069,-3073,-3078,-3083,-3090,-3097,-3105,-3113,-3122,-3131,-3141,-3150,-3160,-3170,-3179,
+-3189,-3198,-3206,-3214,-3221,-3227,-3233,-3238,-3242,-3244,-3246,-3246,-3246,-3244,-3241,-3237,-3232,-3225,-3218,-3209,-3199,
+-3188,-3177,-3164,-3151,-3137,-3122,-3107,-3092,-3076,-3060,-3043,-3027,-3011,-2995,-2979,-2963,-2948,-2933,-2918,-2905,-2892,
+-2880,-2868,-2857,-2848,-2839,-2830,-2823,-2817,-2812,-2807,-2803,-2801,-2798,-2797,-2797,-2797,-2798,-2799,-2801,-2803,-2806,
+-2809,-2813,-2816,-2820,-2824,-2828,-2832,-2836,-2840,-2844,-2848,-2851,-2854,-2857,-2860,-2862,-2865,-2866,-2868,-2869,-2870,
+-2870,-2871,-2871,-2871,-2870,-2870,-2869,-2868,-2867,-2866,-2865,-2863,-2862,-2861,-2860,-2859,-2858,-2857,-2856,-2856,-2855,
+-2855,-2855,-2855,-2856,-2856,-2857,-2858,-2859,-2861,-2862,-2864,-2865,-2867,-2869,-2871,-2872,-2874,-2876,-2878,-2879,-2880,
+-2881,-2882,-2883,-2883,-2883,-2883,-2882,-2881,-2879,-2877,-2874,-2871,-2867,-2863,-2858,-2853,-2847,-2840,-2833,-2825,-2817,
+-2808,-2798,-2788,-2778,-2766,-2754,-2742,-2729,-2716,-2702,-2688,-2674,-2659,-2644,-2629,-2613,-2597,-2582,-2566,-2550,-2534,
+-2518,-2502,-2486,-2471,-2455,-2441,-2426,-2412,-2398,-2385,-2372,-2360,-2348,-2337,-2326,-2317,-2308,-2299,-2292,-2285,-2279,
+-2273,-2269,-2265,-2262,-2259,-2258,-2257,-2257,-2257,-2258,-2260,-2263,-2265,-2269,-2273,-2277,-2282,-2287,-2292,-2298,-2303,
+-2309,-2316,-2322,-2328,-2334,-2341,-2347,-2353,-2359,-2365,-2371,-2377,-2383,-2388,-2394,-2399,-2404,-2409,-2414,-2419,-2423,
+-2428,-2432,-2437,-2442,-2446,-2451,-2455,-2460,-2465,-2470,-2475,-2481,-2486,-2492,-2498,-2504,-2511,-2518,-2524,-2531,-2539,
+-2546,-2554,-2561,-2569,-2576,-2584,-2591,-2599,-2606,-2613,-2620,-2626,-2632,-2637,-2642,-2646,-2650,-2653,-2655,-2656,-2657,
+-2656,-2655,-2652,-2649,-2645,-2639,-2633,-2625,-2617,-2607,-2597,-2585,-2573,-2559,-2545,-2529,-2513,-2497,-2479,-2461,-2443,
+-2424,-2404,-2385,-2365,-2344,-2324,-2304,-2284,-2264,-2244,-2225,-2206,-2187,-2169,-2151,-2134,-2118,-2102,-2087,-2073,-2060,
+-2047,-2035,-2024,-2014,-2004,-1995,-1987,-1980,-1973,-1968,-1962,-1958,-1954,-1950,-1947,-1945,-1942,-1941,-1939,-1938,-1937,
+-1936,-1935,-1934,-1933,-1933,-1932,-1931,-1930,-1929,-1928,-1927,-1925,-1924,-1922,-1920,-1918,-1915,-1912,-1910,-1907,-1903,
+-1900,-1896,-1893,-1889,-1885,-1881,-1877,-1873,-1869,-1864,-1860,-1856,-1852,-1848,-1844,-1840,-1837,-1833,-1830,-1827,-1824,
+-1821,-1818,-1816,-1813,-1811,-1809,-1807,-1806,-1805,-1804,-1803,-1802,-1801,-1801,-1800,-1800,-1800,-1800,-1801,-1801,-1801,
+-1802,-1802,-1803,-1804,-1805,-1805,-1806,-1807,-1808,-1809,-1810,-1810,-1811,-1812,-1813,-1813,-1814,-1815,-1815,-1816,-1816,
+-1816,-1817,-1817,-1817,-1817,-1817,-1817,-1817,-1817,-1817,-1817,-1817,-1816,-1816,-1816,-1816,-1815,-1815,-1814,-1814,-1814,
+-1814,-1813,-1813,-1813,-1813,-1813,-1813,-1813,-1813,-1813,-1813,-1813,-1814,-1814,-1814,-1814,-1815,-1967,-1967,-1968,-1968,
+-1968,-1968,-1968,-1968,-1967,-1967,-1966,-1965,-1964,-1963,-1961,-1959,-1957,-1955,-1953,-1950,-1947,-1944,-1940,-1937,-1932,
+-1928,-1924,-1919,-1914,-1908,-1903,-1897,-1891,-1885,-1878,-1872,-1865,-1858,-1851,-1844,-1837,-1830,-1823,-1816,-1809,-1802,
+-1795,-1788,-1781,-1774,-1767,-1761,-1755,-1749,-1743,-1738,-1732,-1727,-1723,-1718,-1714,-1710,-1707,-1703,-1700,-1698,-1695,
+-1693,-1691,-1690,-1688,-1687,-1686,-1686,-1685,-1685,-1684,-1684,-1684,-1684,-1684,-1684,-1684,-1684,-1684,-1684,-1684,-1684,
+-1683,-1683,-1682,-1681,-1680,-1679,-1678,-1676,-1674,-1672,-1669,-1667,-1664,-1661,-1657,-1654,-1650,-1646,-1642,-1637,-1633,
+-1628,-1623,-1618,-1613,-1607,-1602,-1597,-1591,-1586,-1580,-1575,-1569,-1564,-1558,-1553,-1548,-1542,-1537,-1533,-1528,-1523,
+-1519,-1515,-1511,-1508,-1504,-1501,-1498,-1496,-1493,-1491,-1489,-1488,-1487,-1486,-1485,-1485,-1485,-1485,-1485,-1486,-1487,
+-1488,-1490,-1491,-1493,-1495,-1497,-1500,-1503,-1505,-1508,-1511,-1515,-1518,-1521,-1525,-1528,-1532,-1536,-1539,-1543,-1546,
+-1550,-1554,-1557,-1560,-1564,-1567,-1570,-1573,-1576,-1579,-1581,-1584,-1586,-1588,-1590,-1592,-1594,-1595,-1596,-1597,-1598,
+-1599,-1599,-1600,-1600,-1600,-1600,-1600,-1599,-1599,-1598,-1597,-1596,-1595,-1594,-1593,-1592,-1591,-1590,-1589,-1587,-1586,
+-1585,-1584,-1583,-1583,-1582,-1581,-1581,-1581,-1580,-1580,-1581,-1581,-1582,-1582,-1583,-1585,-1586,-1588,-1590,-1592,-1594,
+-1597,-1600,-1603,-1606,-1610,-1614,-1618,-1622,-1627,-1631,-1636,-1641,-1647,-1652,-1658,-1663,-1669,-1675,-1681,-1687,-1694,
+-1700,-1706,-1713,-1719,-1726,-1732,-1739,-1745,-1752,-1758,-1765,-1771,-1777,-1784,-1790,-1796,-1802,-1808,-1814,-1820,-1825,
+-1831,-1836,-1842,-1847,-1852,-1857,-1863,-1868,-1872,-1877,-1882,-1887,-1891,-1896,-1900,-1905,-1909,-1913,-1918,-1922,-1926,
+-1930,-1934,-1939,-1943,-1947,-1951,-1955,-1959,-1963,-1968,-1972,-1976,-1980,-1985,-1989,-1993,-1998,-2002,-2007,-2011,-2016,
+-2020,-2025,-2030,-2034,-2039,-2044,-2049,-2054,-2059,-2064,-2069,-2074,-2079,-2084,-2090,-2095,-2100,-2106,-2111,-2116,-2122,
+-2127,-2133,-2139,-2144,-2150,-2156,-2162,-2167,-2173,-2179,-2185,-2191,-2197,-2203,-2209,-2215,-2221,-2227,-2233,-2240,-2246,
+-2252,-2258,-2265,-2271,-2277,-2284,-2290,-2296,-2303,-2309,-2316,-2323,-2329,-2336,-2343,-2349,-2356,-2363,-2370,-2377,-2384,
+-2391,-2398,-2405,-2412,-2419,-2427,-2434,-2442,-2449,-2457,-2464,-2472,-2480,-2488,-2496,-2504,-2512,-2520,-2528,-2536,-2545,
+-2553,-2561,-2570,-2578,-2587,-2595,-2604,-2613,-2622,-2630,-2639,-2648,-2657,-2665,-2674,-2683,-2692,-2701,-2710,-2718,-2727,
+-2736,-2745,-2753,-2762,-2771,-2779,-2788,-2796,-2805,-2813,-2822,-2830,-2838,-2846,-2855,-2863,-2871,-2879,-2887,-2895,-2902,
+-2910,-2918,-2925,-2933,-2941,-2948,-2955,-2963,-2970,-2977,-2984,-2991,-2998,-3005,-3012,-3018,-3025,-3032,-3038,-3044,-3051,
+-3057,-3063,-3069,-3075,-3081,-3087,-3093,-3098,-3104,-3109,-3115,-3120,-3125,-3130,-3135,-3140,-3145,-3150,-3154,-3159,-3164,
+-3168,-3172,-3177,-3181,-3185,-3189,-3193,-3197,-3201,-3205,-3208,-3212,-3216,-3220,-3223,-3227,-3230,-3234,-3237,-3241,-3244,
+-3248,-3251,-3254,-3258,-3261,-3265,-3268,-3272,-3275,-3278,-3282,-3285,-3289,-3292,-3296,-3299,-3303,-3306,-3310,-3313,-3316,
+-3320,-3323,-3327,-3330,-3334,-3337,-3341,-3344,-3347,-3351,-3354,-3357,-3361,-3364,-3367,-3370,-3373,-3376,-3379,-3382,-3385,
+-3387,-3390,-3393,-3395,-3397,-3400,-3402,-3404,-3406,-3409,-3410,-3412,-3414,-3416,-3418,-3419,-3421,-3422,-3423,-3425,-3426,
+-3427,-3429,-3430,-3431,-3432,-3433,-3434,-3435,-3436,-3437,-3438,-3440,-3441,-3442,-3443,-3445,-3446,-3447,-3449,-3450,-3452,
+-3454,-3455,-3457,-3459,-3461,-3463,-3465,-3467,-3469,-3472,-3474,-3476,-3479,-3481,-3484,-3486,-3489,-3491,-3494,-3496,-3499,
+-3501,-3504,-3506,-3508,-3510,-3513,-3515,-3516,-3518,-3520,-3521,-3523,-3524,-3525,-3526,-3527,-3527,-3528,-3528,-3528,-3528,
+-3528,-3527,-3527,-3526,-3525,-3524,-3523,-3521,-3520,-3518,-3516,-3514,-3512,-3510,-3508,-3505,-3502,-3500,-3497,-3494,-3491,
+-3488,-3485,-3481,-3478,-3474,-3471,-3467,-3464,-3460,-3456,-3452,-3448,-3444,-3440,-3436,-3432,-3428,-3424,-3419,-3415,-3411,
+-3406,-3402,-3397,-3393,-3389,-3384,-3380,-3375,-3371,-3366,-3362,-3358,-3353,-3349,-3345,-3341,-3337,-3333,-3329,-3325,-3322,
+-3318,-3315,-3312,-3309,-3306,-3304,-3301,-3299,-3297,-3295,-3294,-3292,-3291,-3290,-3290,-3290,-3289,-3290,-3290,-3291,-3292,
+-3293,-3294,-3296,-3297,-3300,-3302,-3304,-3307,-3310,-3313,-3316,-3320,-3323,-3327,-3331,-3335,-3339,-3343,-3347,-3351,-3355,
+-3360,-3364,-3368,-3372,-3377,-3381,-3385,-3389,-3393,-3397,-3400,-3404,-3407,-3410,-3414,-3416,-3419,-3422,-3424,-3426,-3428,
+-3430,-3432,-3433,-3434,-3435,-3436,-3436,-3437,-3437,-3437,-3437,-3437,-3436,-3436,-3435,-3435,-3434,-3433,-3433,-3432,-3431,
+-3430,-3430,-3429,-3429,-3429,-3428,-3428,-3429,-3429,-3430,-3430,-3431,-3433,-3434,-3436,-3438,-3441,-3443,-3446,-3450,-3453,
+-3457,-3461,-3465,-3470,-3475,-3480,-3485,-3490,-3496,-3501,-3507,-3513,-3518,-3524,-3530,-3536,-3541,-3546,-3552,-3557,-3561,
+-3566,-3570,-3574,-3578,-3581,-3583,-3585,-3587,-3588,-3589,-3589,-3588,-3587,-3585,-3583,-3580,-3576,-3572,-3567,-3561,-3555,
+-3548,-3541,-3533,-3524,-3515,-3505,-3494,-3484,-3472,-3460,-3448,-3436,-3422,-3409,-3396,-3382,-3368,-3354,-3340,-3326,-3312,
+-3298,-3284,-3270,-3256,-3243,-3230,-3217,-3204,-3193,-3181,-3170,-3160,-3150,-3141,-3132,-3124,-3117,-3111,-3105,-3100,-3096,
+-3093,-3090,-3089,-3088,-3088,-3088,-3090,-3092,-3095,-3099,-3103,-3108,-3113,-3119,-3126,-3133,-3140,-3148,-3156,-3164,-3173,
+-3181,-3190,-3198,-3206,-3215,-3222,-3230,-3237,-3244,-3251,-3257,-3262,-3266,-3270,-3273,-3276,-3277,-3278,-3278,-3277,-3276,
+-3273,-3269,-3265,-3260,-3254,-3247,-3240,-3232,-3223,-3214,-3204,-3193,-3182,-3171,-3160,-3148,-3136,-3124,-3113,-3101,-3089,
+-3078,-3067,-3057,-3047,-3037,-3028,-3020,-3013,-3006,-3000,-2995,-2991,-2988,-2985,-2984,-2983,-2984,-2985,-2987,-2991,-2994,
+-2999,-3005,-3011,-3018,-3025,-3033,-3041,-3050,-3059,-3068,-3077,-3087,-3096,-3105,-3114,-3123,-3131,-3139,-3146,-3153,-3159,
+-3164,-3169,-3173,-3176,-3178,-3179,-3180,-3179,-3177,-3175,-3172,-3167,-3162,-3156,-3149,-3141,-3132,-3123,-3113,-3103,-3092,
+-3080,-3068,-3056,-3044,-3031,-3018,-3005,-2992,-2979,-2967,-2955,-2942,-2931,-2920,-2909,-2898,-2889,-2880,-2871,-2863,-2856,
+-2850,-2844,-2839,-2835,-2832,-2829,-2827,-2826,-2826,-2826,-2827,-2828,-2831,-2833,-2837,-2840,-2845,-2849,-2854,-2859,-2865,
+-2871,-2877,-2883,-2889,-2896,-2902,-2908,-2915,-2921,-2927,-2933,-2938,-2944,-2949,-2954,-2959,-2964,-2968,-2972,-2975,-2979,
+-2982,-2984,-2986,-2988,-2990,-2991,-2992,-2993,-2993,-2993,-2993,-2993,-2992,-2991,-2990,-2988,-2986,-2984,-2982,-2980,-2977,
+-2974,-2971,-2968,-2964,-2961,-2957,-2953,-2948,-2944,-2939,-2935,-2930,-2925,-2919,-2914,-2908,-2902,-2896,-2889,-2883,-2876,
+-2869,-2861,-2854,-2846,-2838,-2830,-2821,-2812,-2803,-2794,-2784,-2775,-2764,-2754,-2744,-2733,-2722,-2711,-2699,-2688,-2676,
+-2664,-2652,-2640,-2628,-2615,-2603,-2590,-2578,-2565,-2553,-2541,-2528,-2516,-2504,-2492,-2480,-2468,-2457,-2446,-2435,-2424,
+-2414,-2404,-2394,-2385,-2376,-2368,-2360,-2353,-2346,-2339,-2333,-2328,-2323,-2318,-2314,-2311,-2308,-2305,-2303,-2302,-2301,
+-2301,-2301,-2301,-2302,-2303,-2305,-2307,-2310,-2312,-2315,-2319,-2323,-2327,-2331,-2335,-2340,-2345,-2350,-2355,-2360,-2365,
+-2371,-2376,-2382,-2388,-2394,-2399,-2405,-2411,-2417,-2423,-2430,-2436,-2442,-2449,-2455,-2461,-2468,-2475,-2481,-2488,-2495,
+-2502,-2509,-2516,-2524,-2531,-2539,-2546,-2554,-2561,-2569,-2577,-2584,-2592,-2600,-2608,-2615,-2623,-2630,-2637,-2644,-2651,
+-2657,-2663,-2669,-2674,-2679,-2684,-2688,-2691,-2694,-2697,-2698,-2699,-2700,-2700,-2699,-2697,-2694,-2691,-2687,-2683,-2677,
+-2671,-2664,-2656,-2648,-2638,-2629,-2618,-2607,-2595,-2583,-2570,-2557,-2543,-2529,-2515,-2501,-2486,-2471,-2456,-2441,-2425,
+-2410,-2395,-2380,-2366,-2351,-2337,-2323,-2309,-2296,-2283,-2270,-2258,-2247,-2236,-2225,-2215,-2205,-2196,-2187,-2179,-2172,
+-2165,-2158,-2151,-2146,-2140,-2135,-2130,-2126,-2122,-2118,-2114,-2110,-2107,-2104,-2101,-2098,-2095,-2092,-2089,-2086,-2083,
+-2080,-2077,-2073,-2070,-2066,-2063,-2059,-2055,-2051,-2046,-2042,-2037,-2033,-2028,-2023,-2018,-2012,-2007,-2002,-1996,-1991,
+-1985,-1979,-1974,-1968,-1963,-1957,-1952,-1947,-1942,-1937,-1932,-1928,-1923,-1919,-1915,-1911,-1908,-1904,-1901,-1898,-1896,
+-1894,-1892,-1890,-1888,-1887,-1886,-1885,-1885,-1884,-1884,-1884,-1885,-1885,-1886,-1887,-1888,-1889,-1891,-1892,-1894,-1895,
+-1897,-1899,-1901,-1903,-1905,-1907,-1909,-1911,-1913,-1915,-1917,-1919,-1921,-1923,-1925,-1927,-1928,-1930,-1932,-1934,-1935,
+-1937,-1938,-1940,-1941,-1943,-1944,-1945,-1947,-1948,-1949,-1950,-1951,-1952,-1953,-1954,-1955,-1956,-1957,-1958,-1959,-1960,
+-1961,-1962,-1963,-1964,-1964,-1965,-1966,-1966,-1967,-2057,-2058,-2058,-2058,-2058,-2057,-2057,-2056,-2055,-2054,-2052,-2051,
+-2049,-2047,-2044,-2042,-2039,-2036,-2032,-2029,-2025,-2021,-2016,-2012,-2007,-2002,-1996,-1991,-1985,-1979,-1973,-1967,-1960,
+-1954,-1947,-1940,-1933,-1926,-1919,-1912,-1904,-1897,-1890,-1883,-1876,-1869,-1862,-1855,-1848,-1842,-1835,-1829,-1823,-1817,
+-1811,-1806,-1801,-1796,-1791,-1787,-1783,-1779,-1775,-1772,-1769,-1767,-1764,-1762,-1760,-1758,-1757,-1756,-1755,-1754,-1753,
+-1753,-1753,-1752,-1752,-1752,-1753,-1753,-1753,-1753,-1753,-1754,-1754,-1754,-1754,-1754,-1754,-1753,-1753,-1752,-1752,-1751,
+-1750,-1748,-1747,-1745,-1743,-1741,-1738,-1736,-1733,-1730,-1727,-1723,-1720,-1716,-1712,-1707,-1703,-1699,-1694,-1689,-1685,
+-1680,-1675,-1670,-1665,-1660,-1655,-1650,-1645,-1640,-1636,-1631,-1627,-1622,-1618,-1614,-1610,-1607,-1604,-1600,-1598,-1595,
+-1593,-1591,-1589,-1588,-1587,-1586,-1585,-1585,-1585,-1585,-1586,-1587,-1588,-1590,-1591,-1593,-1596,-1598,-1601,-1604,-1607,
+-1610,-1614,-1618,-1621,-1625,-1629,-1633,-1637,-1642,-1646,-1650,-1654,-1658,-1662,-1666,-1670,-1674,-1678,-1682,-1685,-1688,
+-1692,-1695,-1697,-1700,-1703,-1705,-1707,-1709,-1710,-1711,-1713,-1714,-1714,-1715,-1715,-1715,-1715,-1715,-1714,-1714,-1713,
+-1712,-1711,-1710,-1709,-1707,-1706,-1704,-1703,-1701,-1700,-1698,-1697,-1696,-1694,-1693,-1692,-1691,-1690,-1689,-1689,-1688,
+-1688,-1688,-1689,-1689,-1690,-1691,-1692,-1694,-1695,-1698,-1700,-1703,-1705,-1709,-1712,-1716,-1720,-1724,-1729,-1733,-1738,
+-1744,-1749,-1755,-1761,-1767,-1773,-1780,-1786,-1793,-1800,-1807,-1814,-1821,-1829,-1836,-1843,-1851,-1858,-1866,-1873,-1880,
+-1888,-1895,-1902,-1909,-1917,-1923,-1930,-1937,-1944,-1951,-1957,-1963,-1969,-1976,-1981,-1987,-1993,-1998,-2004,-2009,-2014,
+-2019,-2024,-2028,-2033,-2037,-2042,-2046,-2050,-2054,-2058,-2061,-2065,-2069,-2072,-2076,-2079,-2083,-2086,-2089,-2093,-2096,
+-2099,-2102,-2105,-2109,-2112,-2115,-2118,-2121,-2125,-2128,-2131,-2135,-2138,-2141,-2145,-2148,-2152,-2155,-2159,-2163,-2166,
+-2170,-2174,-2178,-2182,-2186,-2190,-2194,-2198,-2202,-2206,-2210,-2215,-2219,-2223,-2228,-2232,-2237,-2241,-2246,-2251,-2255,
+-2260,-2265,-2270,-2275,-2280,-2285,-2290,-2295,-2300,-2305,-2310,-2315,-2321,-2326,-2331,-2337,-2342,-2348,-2353,-2359,-2365,
+-2371,-2376,-2382,-2388,-2394,-2400,-2406,-2413,-2419,-2425,-2432,-2438,-2445,-2451,-2458,-2465,-2472,-2479,-2486,-2493,-2500,
+-2507,-2515,-2522,-2530,-2537,-2545,-2552,-2560,-2568,-2576,-2584,-2592,-2600,-2608,-2616,-2624,-2633,-2641,-2649,-2658,-2666,
+-2674,-2683,-2691,-2700,-2708,-2717,-2725,-2733,-2742,-2750,-2759,-2767,-2775,-2783,-2792,-2800,-2808,-2816,-2824,-2832,-2840,
+-2848,-2855,-2863,-2871,-2878,-2886,-2893,-2900,-2908,-2915,-2922,-2929,-2936,-2943,-2949,-2956,-2962,-2969,-2975,-2981,-2988,
+-2994,-3000,-3006,-3011,-3017,-3023,-3028,-3034,-3039,-3044,-3050,-3055,-3060,-3065,-3070,-3074,-3079,-3084,-3088,-3093,-3097,
+-3102,-3106,-3110,-3114,-3118,-3122,-3126,-3130,-3134,-3137,-3141,-3145,-3148,-3152,-3155,-3159,-3162,-3166,-3169,-3172,-3175,
+-3179,-3182,-3185,-3188,-3191,-3194,-3197,-3200,-3203,-3207,-3210,-3213,-3215,-3219,-3222,-3225,-3228,-3231,-3234,-3237,-3240,
+-3243,-3246,-3249,-3252,-3255,-3258,-3261,-3264,-3267,-3270,-3273,-3276,-3279,-3282,-3285,-3288,-3290,-3293,-3296,-3299,-3302,
+-3305,-3308,-3310,-3313,-3316,-3318,-3321,-3324,-3326,-3329,-3331,-3333,-3336,-3338,-3340,-3342,-3345,-3347,-3349,-3351,-3353,
+-3354,-3356,-3358,-3360,-3361,-3363,-3365,-3366,-3368,-3369,-3371,-3372,-3374,-3375,-3377,-3378,-3379,-3381,-3382,-3383,-3384,
+-3386,-3387,-3388,-3389,-3391,-3392,-3393,-3395,-3396,-3397,-3398,-3400,-3401,-3402,-3403,-3405,-3406,-3407,-3409,-3410,-3411,
+-3412,-3414,-3415,-3416,-3417,-3418,-3419,-3420,-3421,-3422,-3423,-3424,-3425,-3426,-3426,-3427,-3428,-3428,-3429,-3429,-3429,
+-3430,-3430,-3430,-3430,-3430,-3430,-3430,-3430,-3429,-3429,-3429,-3428,-3428,-3427,-3426,-3426,-3425,-3424,-3423,-3422,-3422,
+-3421,-3420,-3419,-3418,-3416,-3415,-3414,-3413,-3411,-3410,-3409,-3407,-3406,-3404,-3403,-3401,-3400,-3398,-3396,-3394,-3392,
+-3390,-3388,-3386,-3384,-3382,-3379,-3377,-3374,-3371,-3368,-3365,-3362,-3359,-3356,-3352,-3349,-3345,-3341,-3338,-3334,-3330,
+-3326,-3321,-3317,-3313,-3308,-3304,-3300,-3295,-3291,-3286,-3282,-3277,-3273,-3269,-3264,-3260,-3256,-3252,-3248,-3245,-3241,
+-3238,-3235,-3232,-3229,-3227,-3225,-3223,-3221,-3220,-3219,-3218,-3217,-3217,-3217,-3217,-3218,-3219,-3220,-3222,-3223,-3226,
+-3228,-3230,-3233,-3236,-3240,-3243,-3247,-3251,-3255,-3259,-3263,-3268,-3272,-3277,-3281,-3286,-3290,-3295,-3299,-3304,-3308,
+-3312,-3317,-3320,-3324,-3328,-3331,-3334,-3337,-3340,-3343,-3345,-3347,-3349,-3350,-3351,-3352,-3353,-3354,-3354,-3354,-3353,
+-3353,-3352,-3352,-3351,-3349,-3348,-3347,-3345,-3344,-3342,-3340,-3339,-3337,-3336,-3334,-3333,-3332,-3330,-3329,-3329,-3328,
+-3328,-3328,-3328,-3328,-3329,-3330,-3332,-3333,-3335,-3338,-3340,-3343,-3346,-3350,-3354,-3358,-3362,-3367,-3372,-3377,-3382,
+-3387,-3393,-3398,-3404,-3410,-3416,-3422,-3427,-3433,-3438,-3444,-3449,-3454,-3459,-3463,-3467,-3471,-3474,-3477,-3479,-3481,
+-3483,-3483,-3484,-3484,-3483,-3481,-3479,-3477,-3473,-3470,-3465,-3460,-3454,-3448,-3441,-3433,-3425,-3416,-3407,-3397,-3387,
+-3377,-3365,-3354,-3342,-3330,-3318,-3305,-3293,-3280,-3267,-3254,-3241,-3228,-3215,-3202,-3189,-3177,-3165,-3153,-3142,-3130,
+-3120,-3110,-3100,-3091,-3082,-3074,-3067,-3060,-3054,-3048,-3043,-3039,-3036,-3033,-3031,-3029,-3028,-3028,-3029,-3030,-3031,
+-3034,-3036,-3039,-3043,-3047,-3052,-3057,-3062,-3067,-3073,-3078,-3084,-3090,-3096,-3102,-3107,-3113,-3118,-3124,-3128,-3133,
+-3137,-3141,-3144,-3147,-3149,-3151,-3152,-3153,-3153,-3152,-3151,-3149,-3147,-3144,-3140,-3136,-3131,-3126,-3120,-3113,-3106,
+-3099,-3092,-3084,-3075,-3067,-3058,-3050,-3041,-3032,-3023,-3014,-3006,-2997,-2989,-2981,-2974,-2966,-2960,-2954,-2948,-2943,
+-2938,-2934,-2931,-2928,-2926,-2925,-2925,-2925,-2925,-2927,-2929,-2932,-2935,-2939,-2944,-2949,-2955,-2961,-2967,-2974,-2981,
+-2988,-2995,-3003,-3011,-3018,-3026,-3034,-3041,-3048,-3055,-3061,-3068,-3073,-3078,-3083,-3087,-3091,-3094,-3096,-3098,-3099,
+-3099,-3099,-3098,-3096,-3093,-3090,-3086,-3081,-3076,-3070,-3064,-3057,-3050,-3042,-3033,-3025,-3016,-3006,-2997,-2987,-2977,
+-2968,-2958,-2948,-2938,-2929,-2920,-2910,-2902,-2893,-2885,-2878,-2871,-2864,-2858,-2852,-2847,-2843,-2839,-2836,-2833,-2831,
+-2830,-2830,-2830,-2830,-2831,-2833,-2836,-2839,-2842,-2846,-2851,-2856,-2861,-2867,-2873,-2879,-2886,-2893,-2900,-2907,-2914,
+-2922,-2929,-2936,-2944,-2951,-2958,-2966,-2972,-2979,-2986,-2992,-2998,-3003,-3009,-3014,-3018,-3022,-3026,-3029,-3032,-3035,
+-3037,-3038,-3039,-3040,-3040,-3040,-3039,-3038,-3036,-3034,-3031,-3028,-3025,-3021,-3017,-3012,-3007,-3002,-2996,-2990,-2983,
+-2977,-2970,-2962,-2955,-2947,-2939,-2930,-2922,-2913,-2904,-2894,-2885,-2875,-2866,-2856,-2846,-2836,-2825,-2815,-2804,-2794,
+-2783,-2772,-2761,-2751,-2740,-2729,-2718,-2707,-2696,-2684,-2673,-2662,-2651,-2640,-2629,-2618,-2607,-2596,-2585,-2575,-2564,
+-2553,-2543,-2532,-2522,-2512,-2502,-2492,-2482,-2473,-2464,-2455,-2446,-2437,-2429,-2421,-2413,-2405,-2398,-2391,-2384,-2377,
+-2371,-2365,-2360,-2355,-2350,-2346,-2342,-2338,-2334,-2331,-2329,-2327,-2325,-2323,-2322,-2321,-2321,-2321,-2321,-2322,-2322,
+-2324,-2325,-2327,-2330,-2332,-2335,-2339,-2342,-2346,-2350,-2355,-2359,-2364,-2369,-2375,-2380,-2386,-2392,-2399,-2405,-2412,
+-2419,-2426,-2433,-2441,-2448,-2456,-2464,-2472,-2480,-2488,-2497,-2505,-2514,-2522,-2531,-2539,-2548,-2557,-2565,-2574,-2582,
+-2591,-2599,-2608,-2616,-2624,-2631,-2639,-2646,-2653,-2660,-2667,-2673,-2679,-2684,-2689,-2694,-2698,-2701,-2705,-2707,-2709,
+-2711,-2712,-2713,-2713,-2712,-2711,-2709,-2706,-2703,-2699,-2695,-2690,-2684,-2678,-2671,-2664,-2656,-2648,-2639,-2630,-2620,
+-2610,-2599,-2588,-2577,-2565,-2553,-2541,-2529,-2517,-2504,-2491,-2479,-2466,-2453,-2440,-2428,-2415,-2403,-2390,-2378,-2367,
+-2355,-2344,-2333,-2322,-2312,-2301,-2292,-2282,-2273,-2264,-2256,-2248,-2240,-2233,-2226,-2219,-2213,-2207,-2201,-2196,-2190,
+-2185,-2181,-2176,-2171,-2167,-2163,-2159,-2155,-2151,-2147,-2144,-2140,-2136,-2132,-2129,-2125,-2121,-2117,-2113,-2109,-2105,
+-2101,-2096,-2092,-2087,-2083,-2078,-2073,-2068,-2063,-2058,-2053,-2048,-2043,-2038,-2033,-2028,-2023,-2018,-2013,-2008,-2003,
+-1998,-1993,-1989,-1984,-1980,-1976,-1972,-1968,-1964,-1961,-1958,-1955,-1952,-1949,-1947,-1945,-1943,-1942,-1940,-1939,-1938,
+-1938,-1937,-1937,-1937,-1937,-1938,-1939,-1939,-1940,-1942,-1943,-1945,-1946,-1948,-1950,-1952,-1955,-1957,-1959,-1962,-1964,
+-1967,-1970,-1972,-1975,-1978,-1981,-1984,-1986,-1989,-1992,-1995,-1998,-2000,-2003,-2006,-2009,-2011,-2014,-2017,-2019,-2022,
+-2024,-2026,-2029,-2031,-2033,-2035,-2037,-2039,-2041,-2043,-2045,-2047,-2048,-2050,-2051,-2052,-2053,-2054,-2055,-2056,-2057,
+-2057,-2112,-2112,-2112,-2111,-2111,-2110,-2109,-2107,-2106,-2104,-2102,-2100,-2098,-2096,-2093,-2090,-2087,-2084,-2080,-2077,
+-2073,-2069,-2065,-2060,-2056,-2051,-2046,-2041,-2036,-2031,-2025,-2020,-2014,-2009,-2003,-1997,-1991,-1985,-1979,-1973,-1967,
+-1961,-1955,-1950,-1944,-1938,-1932,-1927,-1922,-1916,-1911,-1906,-1901,-1897,-1892,-1888,-1884,-1880,-1876,-1873,-1870,-1867,
+-1864,-1861,-1859,-1857,-1855,-1853,-1851,-1850,-1848,-1847,-1846,-1846,-1845,-1844,-1844,-1844,-1843,-1843,-1843,-1843,-1843,
+-1843,-1843,-1843,-1843,-1842,-1842,-1842,-1841,-1841,-1840,-1839,-1839,-1838,-1836,-1835,-1833,-1832,-1830,-1828,-1825,-1823,
+-1820,-1818,-1814,-1811,-1808,-1805,-1801,-1797,-1793,-1789,-1785,-1781,-1776,-1772,-1768,-1763,-1759,-1754,-1749,-1745,-1740,
+-1736,-1732,-1727,-1723,-1719,-1715,-1711,-1708,-1704,-1701,-1698,-1695,-1692,-1690,-1688,-1686,-1684,-1683,-1682,-1681,-1680,
+-1680,-1680,-1680,-1681,-1682,-1683,-1684,-1686,-1688,-1689,-1692,-1694,-1697,-1700,-1703,-1706,-1709,-1713,-1716,-1720,-1723,
+-1727,-1731,-1735,-1739,-1743,-1747,-1751,-1755,-1758,-1762,-1766,-1769,-1773,-1776,-1779,-1782,-1785,-1788,-1790,-1793,-1795,
+-1797,-1799,-1801,-1803,-1804,-1805,-1806,-1807,-1808,-1809,-1809,-1809,-1810,-1810,-1810,-1810,-1809,-1809,-1809,-1808,-1808,
+-1808,-1807,-1807,-1806,-1806,-1806,-1805,-1805,-1805,-1805,-1806,-1806,-1806,-1807,-1808,-1809,-1810,-1811,-1813,-1814,-1816,
+-1818,-1821,-1823,-1826,-1829,-1832,-1836,-1839,-1843,-1847,-1852,-1856,-1861,-1866,-1871,-1876,-1881,-1887,-1892,-1898,-1904,
+-1910,-1916,-1922,-1928,-1935,-1941,-1947,-1954,-1960,-1966,-1973,-1979,-1986,-1992,-1998,-2004,-2010,-2016,-2022,-2028,-2034,
+-2040,-2045,-2051,-2056,-2061,-2067,-2072,-2077,-2081,-2086,-2090,-2095,-2099,-2103,-2107,-2111,-2115,-2119,-2123,-2126,-2130,
+-2133,-2136,-2140,-2143,-2146,-2149,-2152,-2155,-2158,-2161,-2164,-2167,-2170,-2173,-2176,-2179,-2182,-2185,-2188,-2191,-2194,
+-2197,-2200,-2203,-2206,-2210,-2213,-2216,-2220,-2223,-2227,-2230,-2234,-2237,-2241,-2245,-2249,-2252,-2256,-2260,-2264,-2268,
+-2272,-2277,-2281,-2285,-2289,-2294,-2298,-2302,-2307,-2311,-2315,-2320,-2324,-2329,-2334,-2338,-2343,-2347,-2352,-2357,-2361,
+-2366,-2371,-2376,-2380,-2385,-2390,-2395,-2400,-2405,-2410,-2415,-2420,-2425,-2430,-2435,-2440,-2446,-2451,-2456,-2462,-2467,
+-2473,-2478,-2484,-2490,-2495,-2501,-2507,-2513,-2519,-2525,-2531,-2537,-2544,-2550,-2557,-2563,-2570,-2576,-2583,-2590,-2596,
+-2603,-2610,-2617,-2624,-2631,-2639,-2646,-2653,-2660,-2668,-2675,-2682,-2690,-2697,-2705,-2712,-2720,-2727,-2734,-2742,-2749,
+-2757,-2764,-2772,-2779,-2786,-2794,-2801,-2808,-2816,-2823,-2830,-2837,-2844,-2851,-2858,-2865,-2871,-2878,-2885,-2891,-2898,
+-2904,-2910,-2917,-2923,-2929,-2935,-2941,-2946,-2952,-2958,-2963,-2969,-2974,-2980,-2985,-2990,-2995,-3000,-3005,-3010,-3015,
+-3019,-3024,-3028,-3033,-3037,-3041,-3046,-3050,-3054,-3058,-3062,-3066,-3070,-3074,-3077,-3081,-3085,-3088,-3092,-3095,-3099,
+-3102,-3105,-3109,-3112,-3115,-3118,-3122,-3125,-3128,-3131,-3134,-3137,-3140,-3143,-3146,-3148,-3151,-3154,-3157,-3160,-3162,
+-3165,-3168,-3171,-3173,-3176,-3179,-3181,-3184,-3187,-3189,-3192,-3195,-3197,-3200,-3202,-3205,-3208,-3210,-3213,-3215,-3218,
+-3220,-3223,-3225,-3228,-3230,-3233,-3235,-3238,-3240,-3242,-3245,-3247,-3250,-3252,-3254,-3257,-3259,-3261,-3264,-3266,-3268,
+-3270,-3272,-3275,-3277,-3279,-3281,-3283,-3285,-3287,-3289,-3291,-3293,-3295,-3297,-3299,-3301,-3303,-3305,-3307,-3308,-3310,
+-3312,-3314,-3315,-3317,-3318,-3320,-3322,-3323,-3325,-3326,-3328,-3329,-3330,-3332,-3333,-3334,-3336,-3337,-3338,-3339,-3340,
+-3341,-3342,-3343,-3344,-3345,-3345,-3346,-3347,-3347,-3348,-3348,-3349,-3349,-3349,-3350,-3350,-3350,-3350,-3350,-3350,-3350,
+-3350,-3350,-3349,-3349,-3349,-3348,-3348,-3347,-3347,-3346,-3346,-3345,-3344,-3344,-3343,-3342,-3342,-3341,-3340,-3339,-3339,
+-3338,-3337,-3336,-3335,-3335,-3334,-3333,-3332,-3332,-3331,-3330,-3330,-3329,-3329,-3328,-3328,-3327,-3326,-3326,-3325,-3325,
+-3324,-3324,-3323,-3323,-3322,-3322,-3321,-3321,-3320,-3319,-3318,-3318,-3317,-3316,-3315,-3313,-3312,-3311,-3309,-3308,-3306,
+-3304,-3303,-3301,-3298,-3296,-3294,-3291,-3289,-3286,-3283,-3280,-3277,-3273,-3270,-3266,-3263,-3259,-3255,-3251,-3247,-3243,
+-3239,-3235,-3231,-3227,-3223,-3219,-3215,-3211,-3207,-3203,-3200,-3196,-3192,-3189,-3186,-3183,-3180,-3177,-3174,-3172,-3170,
+-3168,-3166,-3165,-3164,-3163,-3162,-3161,-3161,-3161,-3162,-3162,-3163,-3164,-3165,-3166,-3168,-3170,-3172,-3174,-3177,-3179,
+-3182,-3185,-3188,-3191,-3194,-3197,-3200,-3204,-3207,-3210,-3213,-3217,-3220,-3223,-3226,-3229,-3231,-3234,-3236,-3239,-3241,
+-3243,-3245,-3246,-3248,-3249,-3250,-3251,-3252,-3252,-3253,-3253,-3253,-3252,-3252,-3252,-3251,-3250,-3249,-3248,-3247,-3246,
+-3245,-3244,-3243,-3242,-3241,-3240,-3239,-3238,-3237,-3236,-3236,-3235,-3235,-3235,-3235,-3235,-3236,-3237,-3238,-3239,-3240,
+-3242,-3244,-3246,-3249,-3252,-3254,-3258,-3261,-3264,-3268,-3272,-3276,-3280,-3285,-3289,-3293,-3298,-3303,-3307,-3312,-3316,
+-3321,-3325,-3329,-3333,-3337,-3340,-3344,-3347,-3350,-3352,-3355,-3357,-3358,-3359,-3360,-3360,-3360,-3359,-3358,-3357,-3355,
+-3352,-3349,-3346,-3342,-3338,-3333,-3327,-3322,-3315,-3309,-3302,-3295,-3287,-3279,-3270,-3262,-3253,-3244,-3235,-3225,-3216,
+-3206,-3196,-3186,-3177,-3167,-3157,-3148,-3138,-3129,-3120,-3111,-3103,-3094,-3086,-3079,-3071,-3065,-3058,-3052,-3046,-3041,
+-3036,-3032,-3028,-3025,-3022,-3020,-3018,-3016,-3015,-3014,-3014,-3014,-3015,-3016,-3017,-3019,-3021,-3023,-3025,-3028,-3031,
+-3034,-3037,-3040,-3043,-3046,-3049,-3053,-3056,-3058,-3061,-3064,-3066,-3068,-3070,-3072,-3073,-3074,-3075,-3075,-3075,-3075,
+-3074,-3073,-3071,-3069,-3067,-3064,-3061,-3057,-3054,-3049,-3045,-3040,-3035,-3030,-3024,-3019,-3013,-3007,-3001,-2995,-2989,
+-2983,-2977,-2971,-2965,-2959,-2953,-2948,-2943,-2938,-2933,-2929,-2925,-2922,-2918,-2916,-2913,-2911,-2910,-2909,-2908,-2908,
+-2908,-2908,-2909,-2911,-2913,-2915,-2918,-2921,-2924,-2927,-2931,-2935,-2939,-2944,-2948,-2953,-2957,-2962,-2967,-2971,-2976,
+-2980,-2985,-2989,-2992,-2996,-2999,-3002,-3005,-3007,-3009,-3011,-3012,-3012,-3013,-3012,-3012,-3010,-3009,-3007,-3004,-3001,
+-2998,-2994,-2990,-2985,-2980,-2975,-2969,-2963,-2957,-2951,-2944,-2938,-2931,-2924,-2917,-2910,-2903,-2896,-2890,-2883,-2876,
+-2870,-2864,-2858,-2853,-2848,-2843,-2838,-2834,-2830,-2827,-2824,-2822,-2820,-2818,-2817,-2816,-2816,-2817,-2817,-2819,-2820,
+-2823,-2825,-2828,-2831,-2835,-2839,-2843,-2848,-2853,-2858,-2864,-2869,-2875,-2881,-2887,-2893,-2899,-2905,-2911,-2916,-2922,
+-2928,-2934,-2939,-2944,-2949,-2954,-2958,-2963,-2966,-2970,-2973,-2976,-2978,-2980,-2982,-2983,-2984,-2984,-2984,-2984,-2983,
+-2982,-2980,-2978,-2975,-2972,-2969,-2965,-2961,-2956,-2951,-2946,-2940,-2934,-2928,-2921,-2914,-2907,-2899,-2892,-2884,-2876,
+-2867,-2859,-2850,-2841,-2832,-2823,-2814,-2804,-2795,-2785,-2776,-2766,-2756,-2747,-2737,-2727,-2717,-2708,-2698,-2688,-2679,
+-2669,-2660,-2650,-2641,-2631,-2622,-2613,-2604,-2595,-2586,-2577,-2568,-2559,-2551,-2542,-2534,-2526,-2518,-2510,-2502,-2494,
+-2487,-2479,-2472,-2465,-2458,-2451,-2445,-2438,-2432,-2426,-2420,-2414,-2409,-2403,-2398,-2393,-2389,-2384,-2380,-2376,-2373,
+-2369,-2366,-2363,-2361,-2358,-2356,-2354,-2353,-2352,-2351,-2350,-2350,-2350,-2350,-2351,-2352,-2353,-2355,-2357,-2359,-2361,
+-2364,-2367,-2371,-2374,-2378,-2383,-2387,-2392,-2397,-2403,-2408,-2414,-2420,-2427,-2433,-2440,-2447,-2454,-2462,-2469,-2477,
+-2485,-2492,-2500,-2508,-2516,-2524,-2532,-2541,-2549,-2557,-2565,-2572,-2580,-2588,-2595,-2602,-2609,-2616,-2623,-2629,-2635,
+-2641,-2646,-2651,-2656,-2660,-2664,-2668,-2671,-2674,-2676,-2677,-2679,-2679,-2679,-2679,-2678,-2677,-2675,-2673,-2670,-2666,
+-2662,-2658,-2653,-2648,-2642,-2635,-2629,-2621,-2614,-2605,-2597,-2588,-2579,-2569,-2560,-2550,-2539,-2529,-2518,-2507,-2496,
+-2485,-2474,-2462,-2451,-2440,-2429,-2417,-2406,-2395,-2384,-2373,-2362,-2352,-2342,-2331,-2322,-2312,-2303,-2293,-2285,-2276,
+-2268,-2260,-2252,-2244,-2237,-2230,-2224,-2218,-2212,-2206,-2200,-2195,-2190,-2185,-2181,-2177,-2172,-2168,-2165,-2161,-2158,
+-2154,-2151,-2148,-2145,-2142,-2139,-2137,-2134,-2131,-2128,-2126,-2123,-2120,-2118,-2115,-2112,-2110,-2107,-2104,-2101,-2098,
+-2096,-2093,-2090,-2087,-2084,-2081,-2078,-2075,-2072,-2069,-2066,-2063,-2060,-2058,-2055,-2052,-2049,-2047,-2044,-2042,-2039,
+-2037,-2035,-2033,-2031,-2029,-2027,-2026,-2025,-2023,-2022,-2021,-2020,-2020,-2019,-2019,-2019,-2019,-2019,-2019,-2019,-2020,
+-2020,-2021,-2022,-2023,-2024,-2026,-2027,-2028,-2030,-2032,-2034,-2035,-2037,-2039,-2041,-2044,-2046,-2048,-2050,-2053,-2055,
+-2057,-2060,-2062,-2064,-2067,-2069,-2072,-2074,-2076,-2078,-2081,-2083,-2085,-2087,-2089,-2091,-2093,-2095,-2097,-2099,-2101,
+-2102,-2104,-2105,-2106,-2108,-2109,-2110,-2110,-2111,-2112,-2112,-2112,-2112,-2112,-2197,-2196,-2194,-2193,-2191,-2190,-2188,
+-2186,-2184,-2182,-2180,-2177,-2175,-2172,-2170,-2167,-2164,-2161,-2158,-2155,-2152,-2148,-2145,-2141,-2138,-2134,-2130,-2126,
+-2122,-2119,-2115,-2111,-2107,-2102,-2098,-2094,-2090,-2086,-2082,-2078,-2074,-2070,-2066,-2062,-2058,-2054,-2051,-2047,-2044,
+-2040,-2037,-2033,-2030,-2027,-2024,-2021,-2019,-2016,-2014,-2011,-2009,-2007,-2005,-2003,-2001,-1999,-1998,-1996,-1995,-1993,
+-1992,-1991,-1990,-1989,-1988,-1987,-1986,-1985,-1984,-1983,-1982,-1981,-1980,-1980,-1979,-1978,-1977,-1975,-1974,-1973,-1972,
+-1970,-1969,-1967,-1965,-1963,-1961,-1959,-1957,-1954,-1952,-1949,-1946,-1943,-1940,-1937,-1934,-1930,-1927,-1923,-1919,-1916,
+-1912,-1907,-1904,-1899,-1895,-1891,-1887,-1882,-1878,-1874,-1870,-1865,-1861,-1857,-1853,-1849,-1845,-1841,-1837,-1834,-1830,
+-1827,-1824,-1821,-1818,-1815,-1813,-1811,-1809,-1807,-1805,-1804,-1803,-1802,-1801,-1800,-1800,-1800,-1800,-1801,-1801,-1802,
+-1803,-1804,-1806,-1807,-1809,-1811,-1813,-1816,-1818,-1821,-1823,-1826,-1829,-1832,-1835,-1838,-1842,-1845,-1848,-1852,-1855,
+-1858,-1862,-1865,-1868,-1872,-1875,-1878,-1882,-1885,-1888,-1891,-1894,-1897,-1899,-1902,-1905,-1907,-1909,-1912,-1914,-1916,
+-1918,-1920,-1922,-1923,-1925,-1927,-1928,-1930,-1931,-1932,-1934,-1935,-1936,-1938,-1939,-1940,-1941,-1943,-1944,-1945,-1946,
+-1948,-1949,-1950,-1952,-1953,-1955,-1957,-1958,-1960,-1962,-1964,-1966,-1969,-1971,-1973,-1976,-1979,-1981,-1984,-1987,-1990,
+-1993,-1997,-2000,-2004,-2007,-2011,-2014,-2018,-2022,-2026,-2030,-2034,-2038,-2042,-2046,-2050,-2055,-2059,-2063,-2067,-2071,
+-2076,-2080,-2084,-2088,-2092,-2096,-2100,-2104,-2108,-2112,-2116,-2119,-2123,-2127,-2130,-2134,-2137,-2140,-2144,-2147,-2150,
+-2153,-2156,-2159,-2162,-2165,-2168,-2170,-2173,-2176,-2178,-2181,-2184,-2186,-2189,-2191,-2194,-2196,-2199,-2201,-2204,-2206,
+-2209,-2212,-2214,-2217,-2220,-2222,-2225,-2228,-2231,-2234,-2237,-2240,-2243,-2246,-2250,-2253,-2256,-2260,-2263,-2267,-2271,
+-2274,-2278,-2282,-2286,-2290,-2294,-2298,-2303,-2307,-2311,-2315,-2320,-2324,-2329,-2333,-2338,-2342,-2347,-2352,-2356,-2361,
+-2366,-2371,-2375,-2380,-2385,-2390,-2394,-2399,-2404,-2409,-2414,-2418,-2423,-2428,-2433,-2438,-2442,-2447,-2452,-2457,-2461,
+-2466,-2471,-2476,-2481,-2485,-2490,-2495,-2500,-2505,-2510,-2514,-2519,-2524,-2529,-2534,-2539,-2544,-2549,-2554,-2559,-2565,
+-2570,-2575,-2580,-2586,-2591,-2596,-2602,-2607,-2613,-2619,-2624,-2630,-2636,-2641,-2647,-2653,-2659,-2665,-2671,-2677,-2683,
+-2689,-2695,-2701,-2707,-2713,-2720,-2726,-2732,-2738,-2744,-2751,-2757,-2763,-2769,-2776,-2782,-2788,-2794,-2800,-2807,-2813,
+-2819,-2825,-2831,-2837,-2843,-2849,-2855,-2860,-2866,-2872,-2878,-2883,-2889,-2894,-2900,-2905,-2910,-2915,-2921,-2926,-2931,
+-2936,-2940,-2945,-2950,-2955,-2959,-2964,-2968,-2973,-2977,-2981,-2986,-2990,-2994,-2998,-3002,-3006,-3009,-3013,-3017,-3021,
+-3024,-3028,-3031,-3035,-3038,-3041,-3045,-3048,-3051,-3054,-3058,-3061,-3064,-3067,-3070,-3073,-3076,-3078,-3081,-3084,-3087,
+-3090,-3092,-3095,-3098,-3100,-3103,-3106,-3108,-3111,-3113,-3116,-3118,-3121,-3123,-3126,-3128,-3130,-3133,-3135,-3138,-3140,
+-3142,-3145,-3147,-3149,-3151,-3154,-3156,-3158,-3161,-3163,-3165,-3167,-3170,-3172,-3174,-3176,-3178,-3181,-3183,-3185,-3187,
+-3190,-3192,-3194,-3196,-3198,-3200,-3203,-3205,-3207,-3209,-3211,-3214,-3216,-3218,-3220,-3222,-3224,-3227,-3229,-3231,-3233,
+-3235,-3237,-3239,-3242,-3244,-3246,-3248,-3250,-3252,-3254,-3256,-3258,-3260,-3262,-3264,-3265,-3267,-3269,-3271,-3272,-3274,
+-3276,-3277,-3279,-3281,-3282,-3283,-3285,-3286,-3287,-3289,-3290,-3291,-3292,-3293,-3294,-3294,-3295,-3296,-3297,-3297,-3298,
+-3298,-3299,-3299,-3299,-3299,-3299,-3300,-3300,-3299,-3299,-3299,-3299,-3299,-3299,-3298,-3298,-3297,-3297,-3297,-3296,-3296,
+-3295,-3294,-3294,-3293,-3293,-3292,-3292,-3291,-3290,-3290,-3290,-3289,-3289,-3288,-3288,-3287,-3287,-3287,-3286,-3286,-3286,
+-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3286,-3287,-3287,-3287,-3287,-3287,-3288,-3288,-3288,
+-3288,-3288,-3288,-3288,-3288,-3288,-3287,-3287,-3286,-3286,-3285,-3285,-3284,-3283,-3282,-3281,-3280,-3278,-3277,-3275,-3274,
+-3272,-3270,-3268,-3265,-3263,-3261,-3258,-3256,-3253,-3250,-3247,-3245,-3242,-3238,-3235,-3232,-3229,-3226,-3222,-3219,-3216,
+-3213,-3209,-3206,-3203,-3200,-3197,-3194,-3191,-3188,-3185,-3182,-3180,-3177,-3175,-3173,-3170,-3168,-3167,-3165,-3163,-3162,
+-3160,-3159,-3158,-3157,-3157,-3156,-3155,-3155,-3155,-3154,-3154,-3154,-3155,-3155,-3155,-3155,-3156,-3156,-3157,-3157,-3158,
+-3158,-3159,-3159,-3160,-3160,-3161,-3161,-3161,-3161,-3162,-3162,-3162,-3162,-3162,-3161,-3161,-3161,-3160,-3159,-3159,-3158,
+-3157,-3156,-3155,-3154,-3152,-3151,-3150,-3148,-3147,-3145,-3144,-3142,-3140,-3139,-3137,-3136,-3134,-3133,-3131,-3130,-3129,
+-3128,-3127,-3126,-3125,-3124,-3124,-3123,-3123,-3123,-3123,-3123,-3124,-3124,-3125,-3126,-3127,-3129,-3130,-3132,-3134,-3136,
+-3138,-3140,-3142,-3145,-3148,-3150,-3153,-3156,-3159,-3162,-3165,-3169,-3172,-3175,-3178,-3181,-3184,-3187,-3190,-3192,-3195,
+-3197,-3200,-3202,-3204,-3206,-3207,-3208,-3210,-3210,-3211,-3211,-3211,-3211,-3211,-3210,-3209,-3208,-3207,-3205,-3203,-3201,
+-3198,-3195,-3192,-3189,-3186,-3182,-3178,-3174,-3170,-3166,-3162,-3157,-3153,-3148,-3143,-3139,-3134,-3129,-3124,-3120,-3115,
+-3110,-3106,-3102,-3097,-3093,-3089,-3085,-3082,-3078,-3075,-3072,-3069,-3066,-3064,-3062,-3060,-3058,-3056,-3055,-3054,-3053,
+-3052,-3052,-3051,-3051,-3051,-3052,-3052,-3052,-3053,-3054,-3055,-3055,-3056,-3057,-3058,-3059,-3060,-3061,-3062,-3063,-3064,
+-3064,-3065,-3065,-3065,-3065,-3065,-3065,-3065,-3064,-3063,-3062,-3061,-3059,-3058,-3056,-3054,-3051,-3049,-3046,-3043,-3039,
+-3036,-3032,-3029,-3025,-3021,-3016,-3012,-3008,-3003,-2998,-2994,-2989,-2985,-2980,-2975,-2971,-2966,-2962,-2957,-2953,-2949,
+-2945,-2941,-2937,-2934,-2931,-2928,-2925,-2922,-2920,-2918,-2916,-2914,-2913,-2912,-2911,-2910,-2910,-2909,-2909,-2909,-2910,
+-2910,-2911,-2912,-2913,-2914,-2915,-2917,-2918,-2920,-2921,-2923,-2924,-2926,-2927,-2929,-2930,-2931,-2932,-2933,-2934,-2935,
+-2935,-2936,-2936,-2936,-2936,-2935,-2934,-2933,-2932,-2931,-2929,-2927,-2925,-2923,-2921,-2918,-2915,-2912,-2909,-2905,-2902,
+-2898,-2894,-2890,-2886,-2882,-2878,-2873,-2869,-2865,-2861,-2857,-2853,-2849,-2845,-2841,-2837,-2834,-2830,-2827,-2824,-2821,
+-2818,-2816,-2814,-2812,-2810,-2809,-2808,-2807,-2806,-2806,-2806,-2806,-2806,-2807,-2808,-2809,-2810,-2812,-2813,-2815,-2817,
+-2819,-2822,-2824,-2827,-2829,-2832,-2835,-2838,-2841,-2843,-2846,-2849,-2852,-2854,-2857,-2859,-2862,-2864,-2866,-2867,-2869,
+-2871,-2872,-2873,-2873,-2874,-2874,-2874,-2874,-2873,-2873,-2871,-2870,-2868,-2866,-2864,-2862,-2859,-2856,-2852,-2849,-2845,
+-2841,-2836,-2832,-2827,-2822,-2817,-2811,-2806,-2800,-2794,-2788,-2782,-2775,-2769,-2762,-2755,-2749,-2742,-2735,-2728,-2721,
+-2714,-2707,-2700,-2693,-2686,-2679,-2672,-2665,-2658,-2651,-2644,-2637,-2631,-2624,-2617,-2611,-2604,-2598,-2592,-2586,-2579,
+-2573,-2567,-2562,-2556,-2550,-2544,-2539,-2533,-2528,-2523,-2518,-2512,-2507,-2503,-2498,-2493,-2488,-2484,-2479,-2475,-2471,
+-2467,-2462,-2458,-2455,-2451,-2447,-2444,-2440,-2437,-2434,-2431,-2428,-2426,-2423,-2421,-2419,-2416,-2415,-2413,-2411,-2410,
+-2409,-2408,-2407,-2407,-2406,-2406,-2406,-2407,-2407,-2408,-2409,-2410,-2412,-2414,-2416,-2418,-2420,-2423,-2426,-2429,-2432,
+-2436,-2439,-2443,-2447,-2452,-2456,-2461,-2466,-2471,-2476,-2481,-2487,-2492,-2498,-2503,-2509,-2515,-2521,-2526,-2532,-2538,
+-2544,-2550,-2555,-2561,-2566,-2572,-2577,-2582,-2587,-2592,-2596,-2601,-2605,-2609,-2612,-2615,-2618,-2621,-2623,-2625,-2627,
+-2628,-2629,-2630,-2630,-2630,-2629,-2628,-2627,-2625,-2623,-2621,-2618,-2614,-2611,-2607,-2602,-2597,-2592,-2587,-2581,-2575,
+-2568,-2561,-2554,-2547,-2540,-2532,-2524,-2516,-2507,-2499,-2490,-2481,-2472,-2463,-2454,-2445,-2436,-2427,-2418,-2409,-2400,
+-2391,-2382,-2373,-2365,-2356,-2348,-2340,-2332,-2324,-2317,-2309,-2302,-2295,-2288,-2282,-2276,-2270,-2264,-2258,-2253,-2248,
+-2243,-2239,-2235,-2231,-2227,-2223,-2220,-2217,-2214,-2211,-2209,-2206,-2204,-2202,-2201,-2199,-2198,-2196,-2195,-2194,-2193,
+-2192,-2191,-2191,-2190,-2190,-2189,-2189,-2188,-2188,-2188,-2187,-2187,-2187,-2187,-2187,-2186,-2186,-2186,-2186,-2186,-2185,
+-2185,-2185,-2185,-2185,-2185,-2184,-2184,-2184,-2184,-2183,-2183,-2183,-2183,-2183,-2183,-2182,-2182,-2182,-2182,-2182,-2182,
+-2182,-2182,-2182,-2182,-2182,-2182,-2182,-2182,-2182,-2183,-2183,-2183,-2184,-2184,-2184,-2185,-2185,-2186,-2186,-2187,-2187,
+-2188,-2188,-2189,-2190,-2190,-2191,-2192,-2192,-2193,-2194,-2194,-2195,-2196,-2196,-2197,-2198,-2198,-2199,-2200,-2200,-2201,
+-2201,-2202,-2202,-2203,-2203,-2204,-2204,-2204,-2204,-2205,-2205,-2205,-2205,-2205,-2205,-2204,-2204,-2204,-2203,-2203,-2202,
+-2202,-2201,-2200,-2199,-2198,-2197,-2305,-2303,-2300,-2298,-2295,-2292,-2290,-2287,-2285,-2282,-2279,-2277,-2274,-2271,-2268,
+-2266,-2263,-2260,-2257,-2255,-2252,-2249,-2246,-2243,-2241,-2238,-2235,-2232,-2229,-2227,-2224,-2221,-2219,-2216,-2213,-2211,
+-2208,-2205,-2203,-2200,-2198,-2195,-2193,-2191,-2188,-2186,-2184,-2181,-2179,-2177,-2175,-2173,-2171,-2169,-2167,-2165,-2164,
+-2162,-2160,-2158,-2157,-2155,-2154,-2152,-2150,-2149,-2147,-2146,-2144,-2143,-2141,-2140,-2139,-2137,-2135,-2134,-2132,-2131,
+-2129,-2128,-2126,-2124,-2122,-2120,-2118,-2117,-2114,-2112,-2110,-2108,-2106,-2103,-2101,-2098,-2095,-2093,-2090,-2087,-2084,
+-2081,-2077,-2074,-2071,-2067,-2064,-2060,-2057,-2053,-2049,-2045,-2042,-2038,-2034,-2030,-2026,-2022,-2018,-2014,-2010,-2006,
+-2002,-1998,-1994,-1990,-1987,-1983,-1979,-1976,-1972,-1969,-1965,-1962,-1959,-1956,-1954,-1951,-1948,-1946,-1944,-1942,-1940,
+-1938,-1937,-1935,-1934,-1933,-1932,-1932,-1931,-1931,-1930,-1931,-1931,-1931,-1932,-1933,-1934,-1935,-1936,-1937,-1939,-1940,
+-1942,-1944,-1946,-1949,-1951,-1953,-1956,-1959,-1961,-1964,-1967,-1970,-1973,-1976,-1979,-1982,-1986,-1989,-1992,-1995,-1998,
+-2002,-2005,-2008,-2012,-2015,-2018,-2021,-2025,-2028,-2031,-2034,-2037,-2040,-2043,-2046,-2049,-2052,-2055,-2058,-2060,-2063,
+-2066,-2069,-2071,-2074,-2076,-2079,-2081,-2084,-2086,-2089,-2091,-2094,-2096,-2099,-2101,-2103,-2106,-2108,-2110,-2113,-2115,
+-2118,-2120,-2122,-2125,-2127,-2130,-2132,-2134,-2137,-2139,-2142,-2144,-2147,-2149,-2152,-2154,-2157,-2159,-2162,-2164,-2166,
+-2169,-2171,-2174,-2176,-2179,-2181,-2183,-2186,-2188,-2190,-2193,-2195,-2197,-2199,-2201,-2204,-2206,-2208,-2210,-2212,-2214,
+-2215,-2217,-2219,-2221,-2223,-2224,-2226,-2228,-2229,-2231,-2233,-2234,-2236,-2237,-2239,-2240,-2242,-2243,-2245,-2247,-2248,
+-2250,-2251,-2253,-2254,-2256,-2258,-2259,-2261,-2263,-2265,-2267,-2269,-2271,-2273,-2275,-2277,-2279,-2282,-2284,-2287,-2289,
+-2292,-2295,-2298,-2300,-2303,-2307,-2310,-2313,-2316,-2320,-2323,-2327,-2330,-2334,-2338,-2342,-2346,-2350,-2354,-2358,-2362,
+-2367,-2371,-2375,-2380,-2384,-2389,-2393,-2398,-2403,-2407,-2412,-2417,-2421,-2426,-2431,-2436,-2441,-2445,-2450,-2455,-2460,
+-2465,-2470,-2474,-2479,-2484,-2489,-2494,-2498,-2503,-2508,-2513,-2517,-2522,-2527,-2532,-2536,-2541,-2546,-2550,-2555,-2559,
+-2564,-2569,-2573,-2578,-2583,-2587,-2592,-2596,-2601,-2606,-2610,-2615,-2619,-2624,-2629,-2633,-2638,-2643,-2648,-2652,-2657,
+-2662,-2667,-2671,-2676,-2681,-2686,-2691,-2696,-2701,-2706,-2711,-2716,-2721,-2726,-2731,-2736,-2741,-2746,-2751,-2756,-2761,
+-2766,-2772,-2777,-2782,-2787,-2792,-2797,-2802,-2807,-2812,-2817,-2822,-2827,-2832,-2837,-2842,-2847,-2852,-2857,-2862,-2867,
+-2871,-2876,-2881,-2885,-2890,-2894,-2899,-2903,-2908,-2912,-2916,-2920,-2925,-2929,-2933,-2937,-2941,-2945,-2949,-2952,-2956,
+-2960,-2963,-2967,-2971,-2974,-2978,-2981,-2984,-2988,-2991,-2994,-2997,-3000,-3003,-3006,-3009,-3012,-3015,-3018,-3021,-3023,
+-3026,-3029,-3031,-3034,-3037,-3039,-3042,-3044,-3047,-3049,-3051,-3054,-3056,-3058,-3061,-3063,-3065,-3067,-3070,-3072,-3074,
+-3076,-3078,-3081,-3083,-3085,-3087,-3089,-3091,-3093,-3095,-3097,-3099,-3101,-3103,-3106,-3108,-3110,-3112,-3114,-3116,-3118,
+-3120,-3122,-3124,-3126,-3128,-3130,-3132,-3134,-3136,-3138,-3140,-3142,-3144,-3146,-3148,-3150,-3152,-3154,-3156,-3158,-3161,
+-3163,-3165,-3167,-3169,-3171,-3173,-3175,-3177,-3179,-3182,-3184,-3186,-3188,-3190,-3192,-3194,-3196,-3198,-3200,-3202,-3204,
+-3206,-3208,-3210,-3212,-3214,-3216,-3218,-3220,-3222,-3224,-3226,-3227,-3229,-3231,-3232,-3234,-3236,-3237,-3239,-3240,-3242,
+-3243,-3244,-3246,-3247,-3248,-3249,-3251,-3252,-3253,-3254,-3254,-3255,-3256,-3257,-3258,-3259,-3259,-3260,-3261,-3261,-3262,
+-3262,-3263,-3263,-3264,-3264,-3264,-3265,-3265,-3265,-3266,-3266,-3266,-3267,-3267,-3267,-3267,-3268,-3268,-3268,-3269,-3269,
+-3269,-3270,-3270,-3270,-3271,-3271,-3271,-3272,-3272,-3273,-3273,-3274,-3275,-3275,-3276,-3276,-3277,-3278,-3278,-3279,-3280,
+-3280,-3281,-3282,-3282,-3283,-3284,-3284,-3285,-3286,-3286,-3287,-3287,-3288,-3288,-3289,-3289,-3289,-3289,-3290,-3290,-3290,
+-3290,-3289,-3289,-3289,-3288,-3288,-3287,-3286,-3286,-3285,-3284,-3283,-3281,-3280,-3279,-3277,-3275,-3274,-3272,-3270,-3268,
+-3265,-3263,-3261,-3259,-3256,-3253,-3251,-3248,-3245,-3242,-3239,-3236,-3233,-3230,-3227,-3224,-3221,-3218,-3215,-3211,-3208,
+-3205,-3202,-3198,-3195,-3192,-3189,-3186,-3183,-3180,-3177,-3173,-3170,-3168,-3165,-3162,-3159,-3156,-3153,-3151,-3148,-3145,
+-3143,-3140,-3137,-3135,-3132,-3130,-3127,-3125,-3122,-3120,-3118,-3115,-3113,-3110,-3108,-3105,-3103,-3101,-3098,-3096,-3093,
+-3090,-3088,-3085,-3083,-3080,-3077,-3074,-3072,-3069,-3066,-3063,-3060,-3057,-3055,-3052,-3049,-3046,-3043,-3040,-3037,-3034,
+-3031,-3028,-3025,-3022,-3020,-3017,-3014,-3012,-3009,-3006,-3004,-3002,-3000,-2998,-2996,-2994,-2992,-2990,-2989,-2988,-2986,
+-2985,-2984,-2984,-2983,-2983,-2982,-2982,-2982,-2983,-2983,-2984,-2984,-2985,-2986,-2987,-2989,-2990,-2992,-2994,-2996,-2998,
+-3000,-3002,-3004,-3007,-3009,-3012,-3014,-3017,-3020,-3023,-3026,-3028,-3031,-3034,-3037,-3040,-3043,-3045,-3048,-3051,-3054,
+-3056,-3059,-3061,-3064,-3066,-3068,-3070,-3072,-3074,-3076,-3078,-3079,-3081,-3082,-3084,-3085,-3086,-3087,-3088,-3089,-3090,
+-3090,-3091,-3091,-3092,-3092,-3092,-3093,-3093,-3093,-3093,-3093,-3093,-3093,-3093,-3093,-3092,-3092,-3092,-3092,-3092,-3092,
+-3092,-3092,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,-3091,
+-3091,-3091,-3091,-3091,-3091,-3090,-3090,-3089,-3089,-3088,-3087,-3087,-3086,-3085,-3083,-3082,-3081,-3079,-3078,-3076,-3074,
+-3072,-3069,-3067,-3065,-3062,-3059,-3056,-3053,-3050,-3047,-3043,-3040,-3036,-3032,-3028,-3024,-3020,-3016,-3012,-3008,-3003,
+-2999,-2995,-2990,-2986,-2981,-2977,-2972,-2968,-2964,-2959,-2955,-2951,-2947,-2943,-2939,-2935,-2931,-2928,-2924,-2921,-2917,
+-2914,-2911,-2908,-2906,-2903,-2900,-2898,-2896,-2894,-2892,-2890,-2888,-2887,-2885,-2884,-2883,-2882,-2881,-2880,-2879,-2878,
+-2878,-2877,-2876,-2876,-2875,-2875,-2874,-2874,-2873,-2873,-2873,-2872,-2872,-2871,-2871,-2870,-2869,-2869,-2868,-2867,-2866,
+-2865,-2864,-2863,-2862,-2861,-2859,-2858,-2857,-2855,-2854,-2852,-2850,-2849,-2847,-2845,-2843,-2841,-2839,-2837,-2836,-2834,
+-2832,-2830,-2828,-2826,-2824,-2822,-2820,-2818,-2817,-2815,-2813,-2812,-2810,-2809,-2808,-2806,-2805,-2804,-2803,-2802,-2801,
+-2800,-2800,-2799,-2798,-2798,-2798,-2797,-2797,-2797,-2797,-2796,-2796,-2796,-2796,-2796,-2796,-2796,-2796,-2796,-2796,-2796,
+-2796,-2796,-2796,-2796,-2795,-2795,-2795,-2794,-2793,-2793,-2792,-2791,-2790,-2789,-2787,-2786,-2784,-2782,-2780,-2778,-2776,
+-2774,-2772,-2769,-2766,-2763,-2760,-2757,-2754,-2750,-2747,-2743,-2739,-2735,-2731,-2727,-2723,-2719,-2714,-2710,-2705,-2701,
+-2696,-2691,-2687,-2682,-2677,-2672,-2667,-2663,-2658,-2653,-2648,-2643,-2639,-2634,-2629,-2625,-2620,-2616,-2611,-2607,-2603,
+-2598,-2594,-2590,-2586,-2582,-2578,-2574,-2571,-2567,-2563,-2560,-2557,-2553,-2550,-2547,-2544,-2541,-2538,-2535,-2532,-2529,
+-2527,-2524,-2522,-2519,-2517,-2515,-2512,-2510,-2508,-2506,-2504,-2502,-2500,-2498,-2496,-2494,-2492,-2491,-2489,-2487,-2486,
+-2484,-2483,-2482,-2480,-2479,-2478,-2477,-2476,-2475,-2474,-2473,-2473,-2472,-2471,-2471,-2471,-2471,-2471,-2471,-2471,-2471,
+-2471,-2472,-2472,-2473,-2474,-2475,-2476,-2477,-2479,-2480,-2482,-2484,-2486,-2488,-2490,-2492,-2494,-2497,-2500,-2502,-2505,
+-2508,-2511,-2514,-2517,-2520,-2523,-2527,-2530,-2533,-2537,-2540,-2543,-2547,-2550,-2553,-2557,-2560,-2563,-2566,-2569,-2572,
+-2575,-2577,-2580,-2582,-2584,-2586,-2588,-2590,-2592,-2593,-2594,-2595,-2595,-2596,-2596,-2596,-2596,-2595,-2595,-2593,-2592,
+-2591,-2589,-2587,-2585,-2582,-2579,-2576,-2573,-2569,-2566,-2562,-2557,-2553,-2548,-2544,-2539,-2533,-2528,-2522,-2517,-2511,
+-2505,-2499,-2493,-2487,-2481,-2474,-2468,-2462,-2455,-2449,-2442,-2436,-2430,-2423,-2417,-2411,-2405,-2399,-2393,-2387,-2381,
+-2376,-2370,-2365,-2360,-2355,-2350,-2345,-2341,-2337,-2333,-2329,-2325,-2322,-2319,-2316,-2313,-2310,-2308,-2306,-2304,-2302,
+-2300,-2299,-2298,-2297,-2296,-2295,-2295,-2294,-2294,-2294,-2295,-2295,-2295,-2296,-2297,-2298,-2299,-2300,-2301,-2302,-2304,
+-2305,-2307,-2309,-2310,-2312,-2314,-2316,-2318,-2319,-2321,-2323,-2325,-2327,-2329,-2331,-2333,-2335,-2337,-2339,-2341,-2343,
+-2345,-2347,-2349,-2350,-2352,-2354,-2355,-2357,-2359,-2360,-2362,-2363,-2364,-2365,-2367,-2368,-2369,-2370,-2371,-2372,-2372,
+-2373,-2374,-2374,-2375,-2375,-2376,-2376,-2376,-2376,-2376,-2376,-2376,-2376,-2376,-2376,-2375,-2375,-2375,-2374,-2373,-2373,
+-2372,-2371,-2370,-2370,-2369,-2368,-2367,-2365,-2364,-2363,-2362,-2360,-2359,-2357,-2356,-2354,-2353,-2351,-2349,-2348,-2346,
+-2344,-2342,-2340,-2338,-2336,-2334,-2332,-2330,-2328,-2326,-2324,-2322,-2319,-2317,-2315,-2312,-2310,-2308,-2305,-2381,-2378,
+-2375,-2371,-2368,-2365,-2362,-2359,-2356,-2353,-2350,-2347,-2344,-2341,-2338,-2336,-2333,-2330,-2327,-2325,-2322,-2320,-2317,
+-2315,-2312,-2310,-2307,-2305,-2303,-2301,-2299,-2296,-2294,-2292,-2290,-2288,-2286,-2284,-2283,-2281,-2279,-2277,-2276,-2274,
+-2272,-2271,-2269,-2267,-2266,-2264,-2263,-2261,-2260,-2258,-2257,-2255,-2254,-2252,-2251,-2249,-2248,-2246,-2245,-2243,-2242,
+-2240,-2239,-2237,-2235,-2234,-2232,-2230,-2228,-2227,-2225,-2223,-2221,-2219,-2217,-2215,-2213,-2210,-2208,-2206,-2203,-2201,
+-2198,-2196,-2193,-2191,-2188,-2185,-2182,-2179,-2176,-2173,-2170,-2167,-2164,-2161,-2158,-2154,-2151,-2148,-2144,-2141,-2138,
+-2134,-2131,-2127,-2124,-2120,-2117,-2113,-2110,-2106,-2103,-2100,-2096,-2093,-2090,-2086,-2083,-2080,-2077,-2074,-2071,-2069,
+-2066,-2063,-2061,-2058,-2056,-2054,-2052,-2050,-2048,-2046,-2044,-2043,-2042,-2040,-2039,-2038,-2038,-2037,-2036,-2036,-2036,
+-2036,-2036,-2036,-2036,-2037,-2037,-2038,-2039,-2040,-2041,-2042,-2044,-2045,-2047,-2049,-2051,-2053,-2055,-2057,-2059,-2062,
+-2064,-2067,-2070,-2072,-2075,-2078,-2081,-2084,-2087,-2090,-2094,-2097,-2100,-2103,-2107,-2110,-2114,-2117,-2121,-2124,-2127,
+-2131,-2134,-2138,-2141,-2145,-2148,-2152,-2155,-2159,-2162,-2166,-2169,-2172,-2176,-2179,-2182,-2186,-2189,-2192,-2195,-2198,
+-2202,-2205,-2208,-2211,-2214,-2217,-2220,-2222,-2225,-2228,-2231,-2234,-2236,-2239,-2242,-2244,-2247,-2249,-2252,-2254,-2256,
+-2259,-2261,-2263,-2265,-2268,-2270,-2272,-2274,-2276,-2278,-2280,-2282,-2283,-2285,-2287,-2289,-2290,-2292,-2293,-2295,-2296,
+-2298,-2299,-2300,-2302,-2303,-2304,-2305,-2307,-2308,-2309,-2310,-2311,-2312,-2313,-2314,-2315,-2316,-2317,-2317,-2318,-2319,
+-2320,-2321,-2322,-2323,-2323,-2324,-2325,-2326,-2327,-2328,-2329,-2330,-2331,-2332,-2333,-2334,-2335,-2336,-2338,-2339,-2340,
+-2342,-2343,-2345,-2346,-2348,-2350,-2352,-2354,-2355,-2357,-2360,-2362,-2364,-2366,-2369,-2371,-2374,-2376,-2379,-2382,-2385,
+-2388,-2391,-2394,-2397,-2400,-2404,-2407,-2411,-2414,-2418,-2421,-2425,-2429,-2433,-2437,-2441,-2445,-2449,-2453,-2457,-2461,
+-2465,-2469,-2474,-2478,-2482,-2487,-2491,-2495,-2500,-2504,-2509,-2513,-2517,-2522,-2526,-2531,-2535,-2540,-2544,-2549,-2553,
+-2557,-2562,-2566,-2571,-2575,-2579,-2584,-2588,-2592,-2597,-2601,-2605,-2610,-2614,-2618,-2622,-2627,-2631,-2635,-2639,-2643,
+-2648,-2652,-2656,-2660,-2664,-2669,-2673,-2677,-2681,-2685,-2689,-2694,-2698,-2702,-2706,-2710,-2714,-2719,-2723,-2727,-2731,
+-2735,-2739,-2744,-2748,-2752,-2756,-2760,-2764,-2769,-2773,-2777,-2781,-2785,-2789,-2794,-2798,-2802,-2806,-2810,-2814,-2818,
+-2822,-2827,-2831,-2835,-2839,-2843,-2847,-2851,-2855,-2859,-2862,-2866,-2870,-2874,-2878,-2882,-2885,-2889,-2893,-2896,-2900,
+-2903,-2907,-2910,-2914,-2917,-2921,-2924,-2927,-2931,-2934,-2937,-2940,-2943,-2946,-2949,-2952,-2955,-2958,-2961,-2964,-2967,
+-2970,-2972,-2975,-2978,-2980,-2983,-2985,-2988,-2990,-2993,-2995,-2998,-3000,-3002,-3005,-3007,-3009,-3011,-3013,-3016,-3018,
+-3020,-3022,-3024,-3026,-3028,-3030,-3032,-3034,-3036,-3038,-3040,-3042,-3044,-3046,-3048,-3050,-3051,-3053,-3055,-3057,-3059,
+-3061,-3062,-3064,-3066,-3068,-3070,-3071,-3073,-3075,-3077,-3079,-3080,-3082,-3084,-3086,-3087,-3089,-3091,-3093,-3095,-3096,
+-3098,-3100,-3102,-3103,-3105,-3107,-3109,-3111,-3112,-3114,-3116,-3118,-3120,-3121,-3123,-3125,-3127,-3129,-3130,-3132,-3134,
+-3136,-3138,-3139,-3141,-3143,-3145,-3146,-3148,-3150,-3152,-3153,-3155,-3157,-3159,-3160,-3162,-3164,-3165,-3167,-3169,-3170,
+-3172,-3174,-3175,-3177,-3178,-3180,-3181,-3183,-3184,-3186,-3187,-3189,-3190,-3191,-3193,-3194,-3195,-3197,-3198,-3199,-3201,
+-3202,-3203,-3204,-3205,-3206,-3207,-3209,-3210,-3211,-3212,-3213,-3214,-3215,-3216,-3217,-3218,-3219,-3219,-3220,-3221,-3222,
+-3223,-3224,-3225,-3226,-3227,-3228,-3228,-3229,-3230,-3231,-3232,-3233,-3233,-3234,-3235,-3236,-3237,-3238,-3239,-3239,-3240,
+-3241,-3242,-3243,-3244,-3244,-3245,-3246,-3247,-3247,-3248,-3249,-3250,-3250,-3251,-3251,-3252,-3253,-3253,-3254,-3254,-3254,
+-3255,-3255,-3255,-3255,-3256,-3256,-3256,-3256,-3255,-3255,-3255,-3255,-3254,-3254,-3253,-3253,-3252,-3251,-3250,-3249,-3248,
+-3247,-3245,-3244,-3243,-3241,-3239,-3238,-3236,-3234,-3232,-3230,-3228,-3225,-3223,-3221,-3218,-3215,-3213,-3210,-3207,-3204,
+-3201,-3198,-3195,-3192,-3188,-3185,-3182,-3178,-3175,-3171,-3168,-3164,-3160,-3157,-3153,-3149,-3145,-3142,-3138,-3134,-3130,
+-3126,-3122,-3118,-3114,-3110,-3107,-3103,-3099,-3095,-3091,-3087,-3083,-3079,-3075,-3071,-3067,-3063,-3059,-3055,-3051,-3047,
+-3043,-3039,-3035,-3031,-3027,-3023,-3019,-3015,-3011,-3007,-3003,-2999,-2995,-2991,-2987,-2983,-2979,-2975,-2971,-2967,-2963,
+-2959,-2955,-2952,-2948,-2944,-2940,-2936,-2933,-2929,-2925,-2922,-2918,-2915,-2911,-2908,-2904,-2901,-2898,-2895,-2892,-2889,
+-2886,-2883,-2881,-2878,-2876,-2873,-2871,-2869,-2867,-2865,-2863,-2862,-2860,-2859,-2858,-2857,-2856,-2855,-2855,-2854,-2854,
+-2854,-2854,-2854,-2855,-2855,-2856,-2857,-2858,-2859,-2860,-2862,-2863,-2865,-2867,-2869,-2871,-2873,-2875,-2878,-2881,-2883,
+-2886,-2889,-2892,-2895,-2898,-2902,-2905,-2908,-2912,-2915,-2919,-2922,-2926,-2930,-2933,-2937,-2941,-2945,-2948,-2952,-2956,
+-2960,-2963,-2967,-2971,-2974,-2978,-2982,-2985,-2989,-2992,-2996,-2999,-3003,-3006,-3009,-3012,-3015,-3018,-3021,-3024,-3027,
+-3030,-3033,-3035,-3038,-3041,-3043,-3045,-3048,-3050,-3052,-3054,-3056,-3058,-3060,-3061,-3063,-3064,-3066,-3067,-3068,-3070,
+-3071,-3072,-3073,-3073,-3074,-3075,-3075,-3076,-3076,-3076,-3076,-3076,-3076,-3076,-3076,-3075,-3075,-3074,-3073,-3072,-3071,
+-3070,-3069,-3068,-3066,-3064,-3063,-3061,-3059,-3057,-3055,-3052,-3050,-3047,-3045,-3042,-3039,-3036,-3033,-3030,-3027,-3024,
+-3020,-3017,-3013,-3009,-3006,-3002,-2998,-2994,-2990,-2986,-2982,-2978,-2974,-2970,-2966,-2962,-2957,-2953,-2949,-2945,-2941,
+-2937,-2933,-2929,-2925,-2921,-2917,-2913,-2909,-2905,-2902,-2898,-2895,-2891,-2888,-2885,-2881,-2878,-2875,-2872,-2869,-2867,
+-2864,-2861,-2859,-2856,-2854,-2852,-2850,-2848,-2846,-2844,-2842,-2840,-2839,-2837,-2836,-2834,-2833,-2832,-2830,-2829,-2828,
+-2827,-2826,-2825,-2824,-2823,-2823,-2822,-2821,-2820,-2820,-2819,-2818,-2818,-2817,-2817,-2816,-2815,-2815,-2814,-2814,-2813,
+-2813,-2812,-2812,-2811,-2811,-2810,-2810,-2809,-2808,-2808,-2807,-2807,-2806,-2806,-2805,-2805,-2804,-2804,-2803,-2803,-2802,
+-2802,-2801,-2801,-2800,-2800,-2799,-2799,-2798,-2798,-2797,-2797,-2796,-2795,-2795,-2794,-2794,-2793,-2792,-2792,-2791,-2790,
+-2789,-2789,-2788,-2787,-2786,-2785,-2784,-2783,-2782,-2781,-2779,-2778,-2777,-2775,-2774,-2772,-2771,-2769,-2767,-2765,-2763,
+-2761,-2759,-2757,-2755,-2752,-2750,-2747,-2745,-2742,-2739,-2736,-2733,-2730,-2727,-2724,-2721,-2718,-2714,-2711,-2707,-2704,
+-2700,-2696,-2693,-2689,-2685,-2681,-2677,-2674,-2670,-2666,-2662,-2658,-2654,-2650,-2646,-2642,-2639,-2635,-2631,-2627,-2624,
+-2620,-2616,-2613,-2609,-2606,-2602,-2599,-2596,-2592,-2589,-2586,-2583,-2580,-2577,-2575,-2572,-2569,-2567,-2564,-2562,-2560,
+-2558,-2556,-2553,-2552,-2550,-2548,-2546,-2544,-2543,-2541,-2540,-2538,-2537,-2536,-2535,-2534,-2532,-2531,-2530,-2529,-2529,
+-2528,-2527,-2526,-2525,-2525,-2524,-2524,-2523,-2523,-2522,-2522,-2521,-2521,-2520,-2520,-2520,-2520,-2519,-2519,-2519,-2519,
+-2519,-2519,-2519,-2519,-2519,-2519,-2520,-2520,-2520,-2520,-2521,-2521,-2522,-2522,-2523,-2524,-2524,-2525,-2526,-2527,-2528,
+-2529,-2530,-2531,-2532,-2533,-2535,-2536,-2537,-2539,-2540,-2542,-2543,-2545,-2546,-2548,-2550,-2551,-2553,-2555,-2557,-2558,
+-2560,-2562,-2563,-2565,-2567,-2569,-2570,-2572,-2573,-2575,-2576,-2578,-2579,-2580,-2581,-2582,-2583,-2584,-2585,-2586,-2586,
+-2587,-2587,-2587,-2587,-2587,-2587,-2587,-2586,-2585,-2585,-2584,-2582,-2581,-2580,-2578,-2576,-2574,-2572,-2570,-2568,-2565,
+-2562,-2560,-2557,-2554,-2550,-2547,-2543,-2540,-2536,-2532,-2528,-2524,-2520,-2516,-2511,-2507,-2503,-2498,-2494,-2489,-2485,
+-2480,-2475,-2471,-2466,-2462,-2457,-2452,-2448,-2443,-2439,-2435,-2430,-2426,-2422,-2418,-2414,-2411,-2407,-2403,-2400,-2397,
+-2394,-2391,-2388,-2385,-2383,-2380,-2378,-2376,-2374,-2372,-2371,-2369,-2368,-2367,-2366,-2366,-2365,-2365,-2365,-2365,-2365,
+-2365,-2365,-2366,-2367,-2368,-2369,-2370,-2371,-2373,-2375,-2376,-2378,-2380,-2382,-2384,-2387,-2389,-2391,-2394,-2397,-2399,
+-2402,-2405,-2408,-2410,-2413,-2416,-2419,-2422,-2425,-2428,-2431,-2434,-2437,-2439,-2442,-2445,-2448,-2450,-2453,-2456,-2458,
+-2461,-2463,-2465,-2468,-2470,-2472,-2474,-2476,-2478,-2479,-2481,-2482,-2484,-2485,-2486,-2487,-2488,-2489,-2490,-2490,-2491,
+-2491,-2491,-2491,-2491,-2491,-2491,-2490,-2490,-2489,-2488,-2487,-2486,-2485,-2484,-2483,-2481,-2480,-2478,-2476,-2475,-2473,
+-2471,-2468,-2466,-2464,-2462,-2459,-2457,-2454,-2452,-2449,-2446,-2443,-2440,-2438,-2435,-2432,-2429,-2425,-2422,-2419,-2416,
+-2413,-2410,-2407,-2403,-2400,-2397,-2394,-2391,-2387,-2384,-2381,-2424,-2421,-2418,-2415,-2413,-2410,-2407,-2404,-2401,-2398,
+-2396,-2393,-2390,-2388,-2385,-2383,-2380,-2378,-2375,-2373,-2371,-2368,-2366,-2364,-2362,-2359,-2357,-2355,-2353,-2351,-2349,
+-2348,-2346,-2344,-2342,-2340,-2339,-2337,-2335,-2334,-2332,-2331,-2329,-2328,-2326,-2325,-2323,-2322,-2320,-2319,-2317,-2316,
+-2314,-2313,-2312,-2310,-2309,-2307,-2306,-2304,-2303,-2301,-2300,-2298,-2297,-2295,-2293,-2292,-2290,-2288,-2287,-2285,-2283,
+-2281,-2279,-2277,-2275,-2273,-2271,-2269,-2267,-2265,-2263,-2261,-2258,-2256,-2254,-2251,-2249,-2246,-2244,-2241,-2239,-2236,
+-2234,-2231,-2228,-2226,-2223,-2220,-2218,-2215,-2212,-2209,-2207,-2204,-2201,-2198,-2196,-2193,-2190,-2188,-2185,-2182,-2180,
+-2177,-2174,-2172,-2170,-2167,-2165,-2162,-2160,-2158,-2156,-2154,-2152,-2150,-2148,-2146,-2145,-2143,-2141,-2140,-2139,-2137,
+-2136,-2135,-2134,-2133,-2133,-2132,-2131,-2131,-2131,-2130,-2130,-2130,-2130,-2130,-2131,-2131,-2132,-2132,-2133,-2134,-2135,
+-2136,-2137,-2138,-2140,-2141,-2143,-2144,-2146,-2148,-2150,-2152,-2154,-2156,-2158,-2161,-2163,-2166,-2168,-2171,-2173,-2176,
+-2179,-2182,-2185,-2188,-2191,-2194,-2197,-2200,-2203,-2206,-2209,-2212,-2216,-2219,-2222,-2225,-2229,-2232,-2235,-2239,-2242,
+-2245,-2249,-2252,-2255,-2259,-2262,-2265,-2268,-2272,-2275,-2278,-2281,-2284,-2287,-2290,-2293,-2296,-2299,-2302,-2305,-2308,
+-2311,-2314,-2316,-2319,-2322,-2324,-2327,-2330,-2332,-2334,-2337,-2339,-2341,-2344,-2346,-2348,-2350,-2352,-2354,-2356,-2358,
+-2360,-2362,-2364,-2365,-2367,-2369,-2370,-2372,-2373,-2375,-2376,-2378,-2379,-2380,-2382,-2383,-2384,-2385,-2386,-2387,-2388,
+-2390,-2391,-2392,-2393,-2394,-2395,-2395,-2396,-2397,-2398,-2399,-2400,-2401,-2402,-2403,-2404,-2405,-2406,-2406,-2407,-2408,
+-2409,-2410,-2411,-2413,-2414,-2415,-2416,-2417,-2418,-2420,-2421,-2422,-2424,-2425,-2427,-2428,-2430,-2431,-2433,-2435,-2436,
+-2438,-2440,-2442,-2444,-2446,-2448,-2451,-2453,-2455,-2457,-2460,-2462,-2465,-2468,-2470,-2473,-2476,-2478,-2481,-2484,-2487,
+-2490,-2493,-2496,-2500,-2503,-2506,-2509,-2513,-2516,-2519,-2523,-2526,-2530,-2533,-2537,-2541,-2544,-2548,-2551,-2555,-2559,
+-2563,-2566,-2570,-2574,-2578,-2581,-2585,-2589,-2593,-2596,-2600,-2604,-2608,-2612,-2615,-2619,-2623,-2627,-2631,-2634,-2638,
+-2642,-2646,-2649,-2653,-2657,-2661,-2664,-2668,-2672,-2675,-2679,-2683,-2686,-2690,-2693,-2697,-2701,-2704,-2708,-2711,-2715,
+-2718,-2722,-2726,-2729,-2733,-2736,-2740,-2743,-2746,-2750,-2753,-2757,-2760,-2764,-2767,-2771,-2774,-2777,-2781,-2784,-2788,
+-2791,-2794,-2798,-2801,-2804,-2808,-2811,-2814,-2818,-2821,-2824,-2827,-2831,-2834,-2837,-2840,-2843,-2847,-2850,-2853,-2856,
+-2859,-2862,-2865,-2868,-2871,-2875,-2878,-2881,-2884,-2886,-2889,-2892,-2895,-2898,-2901,-2904,-2907,-2909,-2912,-2915,-2918,
+-2920,-2923,-2926,-2928,-2931,-2933,-2936,-2938,-2941,-2943,-2946,-2948,-2951,-2953,-2955,-2958,-2960,-2962,-2965,-2967,-2969,
+-2971,-2974,-2976,-2978,-2980,-2982,-2984,-2986,-2988,-2990,-2992,-2994,-2996,-2998,-3000,-3002,-3004,-3006,-3008,-3010,-3012,
+-3013,-3015,-3017,-3019,-3021,-3022,-3024,-3026,-3028,-3029,-3031,-3033,-3035,-3036,-3038,-3040,-3041,-3043,-3044,-3046,-3048,
+-3049,-3051,-3053,-3054,-3056,-3057,-3059,-3060,-3062,-3064,-3065,-3067,-3068,-3070,-3071,-3073,-3074,-3076,-3077,-3079,-3080,
+-3082,-3083,-3084,-3086,-3087,-3089,-3090,-3092,-3093,-3094,-3096,-3097,-3099,-3100,-3101,-3103,-3104,-3106,-3107,-3108,-3110,
+-3111,-3112,-3113,-3115,-3116,-3117,-3119,-3120,-3121,-3122,-3124,-3125,-3126,-3127,-3129,-3130,-3131,-3132,-3133,-3134,-3136,
+-3137,-3138,-3139,-3140,-3141,-3142,-3143,-3144,-3146,-3147,-3148,-3149,-3150,-3151,-3152,-3153,-3154,-3155,-3156,-3157,-3158,
+-3159,-3160,-3160,-3161,-3162,-3163,-3164,-3165,-3166,-3167,-3168,-3168,-3169,-3170,-3171,-3172,-3172,-3173,-3174,-3175,-3175,
+-3176,-3177,-3177,-3178,-3179,-3179,-3180,-3180,-3181,-3182,-3182,-3183,-3183,-3183,-3184,-3184,-3185,-3185,-3185,-3185,-3186,
+-3186,-3186,-3186,-3186,-3186,-3186,-3186,-3186,-3186,-3186,-3185,-3185,-3185,-3184,-3184,-3183,-3183,-3182,-3181,-3180,-3180,
+-3179,-3178,-3177,-3176,-3174,-3173,-3172,-3170,-3169,-3167,-3166,-3164,-3162,-3161,-3159,-3157,-3155,-3153,-3151,-3148,-3146,
+-3144,-3141,-3139,-3136,-3134,-3131,-3128,-3125,-3123,-3120,-3117,-3114,-3111,-3107,-3104,-3101,-3098,-3094,-3091,-3088,-3084,
+-3081,-3077,-3074,-3070,-3067,-3063,-3059,-3056,-3052,-3048,-3045,-3041,-3037,-3033,-3030,-3026,-3022,-3018,-3014,-3011,-3007,
+-3003,-2999,-2995,-2991,-2988,-2984,-2980,-2976,-2972,-2969,-2965,-2961,-2957,-2954,-2950,-2946,-2943,-2939,-2935,-2932,-2928,
+-2924,-2921,-2917,-2914,-2910,-2907,-2903,-2900,-2896,-2893,-2889,-2886,-2883,-2880,-2876,-2873,-2870,-2867,-2864,-2861,-2858,
+-2855,-2852,-2850,-2847,-2844,-2842,-2839,-2836,-2834,-2832,-2829,-2827,-2825,-2823,-2821,-2819,-2818,-2816,-2814,-2813,-2811,
+-2810,-2809,-2808,-2807,-2806,-2805,-2804,-2804,-2803,-2803,-2803,-2803,-2803,-2803,-2803,-2803,-2804,-2804,-2805,-2806,-2807,
+-2808,-2809,-2810,-2811,-2813,-2814,-2816,-2818,-2820,-2822,-2824,-2826,-2828,-2831,-2833,-2836,-2838,-2841,-2844,-2847,-2849,
+-2852,-2855,-2859,-2862,-2865,-2868,-2871,-2875,-2878,-2882,-2885,-2888,-2892,-2895,-2899,-2902,-2906,-2910,-2913,-2917,-2920,
+-2924,-2927,-2930,-2934,-2937,-2941,-2944,-2947,-2951,-2954,-2957,-2960,-2963,-2966,-2969,-2972,-2975,-2978,-2980,-2983,-2986,
+-2988,-2990,-2993,-2995,-2997,-2999,-3001,-3003,-3005,-3007,-3008,-3010,-3011,-3013,-3014,-3015,-3016,-3017,-3018,-3019,-3019,
+-3020,-3020,-3021,-3021,-3021,-3021,-3021,-3021,-3020,-3020,-3020,-3019,-3018,-3018,-3017,-3016,-3015,-3013,-3012,-3011,-3009,
+-3008,-3006,-3005,-3003,-3001,-2999,-2997,-2995,-2993,-2990,-2988,-2986,-2983,-2981,-2978,-2976,-2973,-2970,-2967,-2965,-2962,
+-2959,-2956,-2953,-2950,-2947,-2944,-2941,-2938,-2935,-2932,-2929,-2926,-2923,-2920,-2917,-2914,-2911,-2908,-2905,-2902,-2899,
+-2896,-2893,-2890,-2887,-2885,-2882,-2879,-2877,-2874,-2872,-2869,-2867,-2864,-2862,-2860,-2857,-2855,-2853,-2851,-2849,-2847,
+-2845,-2843,-2842,-2840,-2838,-2837,-2835,-2834,-2832,-2831,-2830,-2829,-2827,-2826,-2825,-2824,-2823,-2822,-2821,-2820,-2820,
+-2819,-2818,-2818,-2817,-2816,-2816,-2815,-2815,-2814,-2814,-2814,-2813,-2813,-2813,-2812,-2812,-2812,-2812,-2811,-2811,-2811,
+-2811,-2811,-2811,-2811,-2811,-2811,-2810,-2810,-2810,-2810,-2810,-2810,-2810,-2810,-2810,-2810,-2809,-2809,-2809,-2809,-2809,
+-2809,-2808,-2808,-2808,-2807,-2807,-2807,-2806,-2806,-2805,-2805,-2804,-2803,-2803,-2802,-2801,-2800,-2799,-2798,-2797,-2796,
+-2795,-2794,-2793,-2791,-2790,-2788,-2787,-2785,-2784,-2782,-2780,-2778,-2776,-2774,-2772,-2770,-2768,-2766,-2763,-2761,-2758,
+-2756,-2753,-2751,-2748,-2745,-2743,-2740,-2737,-2734,-2731,-2728,-2725,-2722,-2719,-2715,-2712,-2709,-2706,-2703,-2699,-2696,
+-2693,-2689,-2686,-2683,-2680,-2676,-2673,-2670,-2666,-2663,-2660,-2657,-2654,-2651,-2647,-2644,-2641,-2638,-2636,-2633,-2630,
+-2627,-2624,-2622,-2619,-2616,-2614,-2611,-2609,-2607,-2604,-2602,-2600,-2598,-2596,-2594,-2592,-2590,-2588,-2587,-2585,-2583,
+-2582,-2580,-2579,-2578,-2576,-2575,-2574,-2573,-2572,-2571,-2570,-2569,-2568,-2567,-2567,-2566,-2565,-2565,-2564,-2564,-2563,
+-2563,-2563,-2563,-2562,-2562,-2562,-2562,-2562,-2562,-2562,-2562,-2562,-2562,-2562,-2563,-2563,-2563,-2564,-2564,-2564,-2565,
+-2565,-2566,-2566,-2567,-2568,-2568,-2569,-2570,-2571,-2572,-2572,-2573,-2574,-2575,-2576,-2577,-2578,-2579,-2580,-2581,-2582,
+-2584,-2585,-2586,-2587,-2588,-2589,-2590,-2592,-2593,-2594,-2595,-2596,-2597,-2598,-2599,-2600,-2601,-2602,-2603,-2604,-2605,
+-2606,-2606,-2607,-2608,-2608,-2609,-2609,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2609,-2609,-2608,-2608,-2607,-2606,
+-2605,-2604,-2603,-2601,-2600,-2599,-2597,-2595,-2593,-2591,-2589,-2587,-2585,-2582,-2580,-2577,-2575,-2572,-2569,-2566,-2563,
+-2560,-2556,-2553,-2550,-2546,-2543,-2539,-2536,-2532,-2528,-2525,-2521,-2517,-2513,-2509,-2505,-2502,-2498,-2494,-2490,-2486,
+-2483,-2479,-2475,-2472,-2468,-2464,-2461,-2458,-2454,-2451,-2448,-2445,-2442,-2439,-2436,-2433,-2431,-2428,-2426,-2424,-2422,
+-2420,-2418,-2416,-2415,-2413,-2412,-2411,-2410,-2409,-2408,-2408,-2407,-2407,-2407,-2407,-2407,-2407,-2407,-2408,-2408,-2409,
+-2410,-2411,-2412,-2413,-2415,-2416,-2418,-2419,-2421,-2423,-2425,-2427,-2429,-2431,-2434,-2436,-2438,-2441,-2443,-2445,-2448,
+-2451,-2453,-2456,-2458,-2461,-2464,-2466,-2469,-2471,-2474,-2476,-2479,-2481,-2484,-2486,-2488,-2491,-2493,-2495,-2497,-2499,
+-2501,-2503,-2505,-2506,-2508,-2509,-2511,-2512,-2513,-2514,-2515,-2516,-2517,-2517,-2518,-2518,-2519,-2519,-2519,-2519,-2519,
+-2518,-2518,-2517,-2517,-2516,-2515,-2514,-2513,-2512,-2511,-2509,-2508,-2506,-2505,-2503,-2501,-2499,-2497,-2495,-2493,-2491,
+-2488,-2486,-2484,-2481,-2479,-2476,-2473,-2471,-2468,-2465,-2462,-2459,-2457,-2454,-2451,-2448,-2445,-2442,-2439,-2436,-2433,
+-2430,-2427,-2424,-2489,-2487,-2485,-2483,-2481,-2479,-2477,-2476,-2474,-2472,-2470,-2468,-2466,-2464,-2462,-2460,-2459,-2457,
+-2455,-2453,-2452,-2450,-2448,-2447,-2445,-2443,-2442,-2440,-2439,-2437,-2436,-2434,-2433,-2431,-2430,-2428,-2427,-2425,-2424,
+-2423,-2421,-2420,-2419,-2417,-2416,-2415,-2413,-2412,-2411,-2409,-2408,-2407,-2406,-2404,-2403,-2402,-2400,-2399,-2398,-2396,
+-2395,-2393,-2392,-2391,-2389,-2388,-2386,-2385,-2383,-2382,-2380,-2379,-2377,-2376,-2374,-2372,-2371,-2369,-2367,-2366,-2364,
+-2362,-2360,-2359,-2357,-2355,-2353,-2351,-2349,-2347,-2345,-2344,-2342,-2340,-2338,-2336,-2334,-2332,-2330,-2328,-2326,-2324,
+-2322,-2320,-2318,-2316,-2314,-2312,-2310,-2308,-2306,-2304,-2302,-2301,-2299,-2297,-2295,-2293,-2292,-2290,-2289,-2287,-2285,
+-2284,-2283,-2281,-2280,-2279,-2277,-2276,-2275,-2274,-2273,-2272,-2271,-2271,-2270,-2269,-2269,-2268,-2268,-2267,-2267,-2267,
+-2267,-2266,-2266,-2267,-2267,-2267,-2267,-2267,-2268,-2268,-2269,-2270,-2270,-2271,-2272,-2273,-2274,-2275,-2276,-2277,-2279,
+-2280,-2281,-2283,-2284,-2286,-2288,-2289,-2291,-2293,-2295,-2297,-2299,-2301,-2303,-2305,-2307,-2309,-2311,-2314,-2316,-2318,
+-2321,-2323,-2325,-2328,-2330,-2333,-2335,-2338,-2340,-2343,-2345,-2348,-2350,-2353,-2356,-2358,-2361,-2363,-2366,-2368,-2371,
+-2374,-2376,-2379,-2381,-2384,-2386,-2389,-2391,-2393,-2396,-2398,-2401,-2403,-2405,-2408,-2410,-2412,-2414,-2416,-2419,-2421,
+-2423,-2425,-2427,-2429,-2431,-2433,-2435,-2437,-2439,-2440,-2442,-2444,-2446,-2447,-2449,-2451,-2452,-2454,-2455,-2457,-2458,
+-2460,-2461,-2463,-2464,-2466,-2467,-2468,-2469,-2471,-2472,-2473,-2475,-2476,-2477,-2478,-2479,-2481,-2482,-2483,-2484,-2485,
+-2486,-2487,-2489,-2490,-2491,-2492,-2493,-2494,-2495,-2497,-2498,-2499,-2500,-2502,-2503,-2504,-2505,-2507,-2508,-2509,-2511,
+-2512,-2513,-2515,-2516,-2518,-2519,-2521,-2523,-2524,-2526,-2528,-2529,-2531,-2533,-2535,-2537,-2539,-2540,-2542,-2544,-2547,
+-2549,-2551,-2553,-2555,-2557,-2560,-2562,-2564,-2567,-2569,-2571,-2574,-2576,-2579,-2582,-2584,-2587,-2589,-2592,-2595,-2598,
+-2600,-2603,-2606,-2609,-2612,-2615,-2617,-2620,-2623,-2626,-2629,-2632,-2635,-2638,-2641,-2644,-2647,-2650,-2654,-2657,-2660,
+-2663,-2666,-2669,-2672,-2675,-2678,-2681,-2684,-2687,-2691,-2694,-2697,-2700,-2703,-2706,-2709,-2712,-2715,-2718,-2721,-2724,
+-2727,-2730,-2733,-2736,-2739,-2742,-2745,-2748,-2751,-2754,-2757,-2760,-2763,-2765,-2768,-2771,-2774,-2777,-2780,-2782,-2785,
+-2788,-2791,-2794,-2796,-2799,-2802,-2805,-2807,-2810,-2813,-2815,-2818,-2821,-2823,-2826,-2829,-2831,-2834,-2837,-2839,-2842,
+-2844,-2847,-2849,-2852,-2855,-2857,-2860,-2862,-2865,-2867,-2870,-2872,-2874,-2877,-2879,-2882,-2884,-2887,-2889,-2891,-2894,
+-2896,-2898,-2901,-2903,-2905,-2908,-2910,-2912,-2914,-2917,-2919,-2921,-2923,-2926,-2928,-2930,-2932,-2934,-2936,-2939,-2941,
+-2943,-2945,-2947,-2949,-2951,-2953,-2955,-2957,-2959,-2961,-2963,-2965,-2967,-2969,-2971,-2973,-2975,-2977,-2979,-2981,-2983,
+-2985,-2987,-2988,-2990,-2992,-2994,-2996,-2997,-2999,-3001,-3003,-3005,-3006,-3008,-3010,-3011,-3013,-3015,-3016,-3018,-3020,
+-3021,-3023,-3025,-3026,-3028,-3029,-3031,-3033,-3034,-3036,-3037,-3039,-3040,-3042,-3043,-3045,-3046,-3048,-3049,-3050,-3052,
+-3053,-3055,-3056,-3057,-3059,-3060,-3062,-3063,-3064,-3065,-3067,-3068,-3069,-3071,-3072,-3073,-3074,-3076,-3077,-3078,-3079,
+-3080,-3081,-3083,-3084,-3085,-3086,-3087,-3088,-3089,-3090,-3092,-3093,-3094,-3095,-3096,-3097,-3098,-3099,-3100,-3101,-3102,
+-3103,-3104,-3105,-3106,-3107,-3107,-3108,-3109,-3110,-3111,-3112,-3113,-3114,-3115,-3115,-3116,-3117,-3118,-3119,-3120,-3120,
+-3121,-3122,-3123,-3123,-3124,-3125,-3126,-3126,-3127,-3128,-3128,-3129,-3130,-3130,-3131,-3132,-3132,-3133,-3133,-3134,-3134,
+-3135,-3136,-3136,-3136,-3137,-3137,-3138,-3138,-3139,-3139,-3139,-3140,-3140,-3140,-3140,-3141,-3141,-3141,-3141,-3141,-3141,
+-3141,-3141,-3141,-3141,-3141,-3141,-3141,-3141,-3141,-3140,-3140,-3140,-3139,-3139,-3138,-3138,-3137,-3137,-3136,-3136,-3135,
+-3134,-3133,-3132,-3132,-3131,-3130,-3129,-3128,-3126,-3125,-3124,-3123,-3121,-3120,-3119,-3117,-3116,-3114,-3113,-3111,-3109,
+-3107,-3106,-3104,-3102,-3100,-3098,-3096,-3094,-3092,-3090,-3088,-3085,-3083,-3081,-3078,-3076,-3074,-3071,-3069,-3066,-3064,
+-3061,-3059,-3056,-3053,-3051,-3048,-3045,-3043,-3040,-3037,-3035,-3032,-3029,-3026,-3023,-3021,-3018,-3015,-3012,-3009,-3006,
+-3003,-3001,-2998,-2995,-2992,-2989,-2986,-2984,-2981,-2978,-2975,-2972,-2970,-2967,-2964,-2961,-2959,-2956,-2953,-2951,-2948,
+-2945,-2943,-2940,-2938,-2935,-2933,-2930,-2928,-2925,-2923,-2921,-2918,-2916,-2913,-2911,-2909,-2907,-2905,-2902,-2900,-2898,
+-2896,-2894,-2892,-2890,-2888,-2886,-2884,-2882,-2881,-2879,-2877,-2876,-2874,-2872,-2871,-2869,-2868,-2866,-2865,-2864,-2862,
+-2861,-2860,-2859,-2857,-2856,-2855,-2854,-2853,-2853,-2852,-2851,-2850,-2850,-2849,-2848,-2848,-2848,-2847,-2847,-2847,-2846,
+-2846,-2846,-2846,-2846,-2846,-2846,-2847,-2847,-2847,-2848,-2848,-2849,-2849,-2850,-2850,-2851,-2852,-2853,-2854,-2855,-2856,
+-2857,-2858,-2859,-2860,-2862,-2863,-2865,-2866,-2867,-2869,-2871,-2872,-2874,-2876,-2877,-2879,-2881,-2883,-2885,-2887,-2888,
+-2890,-2892,-2894,-2896,-2898,-2900,-2903,-2905,-2907,-2909,-2911,-2913,-2915,-2917,-2919,-2922,-2924,-2926,-2928,-2930,-2932,
+-2934,-2936,-2938,-2940,-2942,-2944,-2946,-2948,-2950,-2952,-2953,-2955,-2957,-2959,-2960,-2962,-2963,-2965,-2966,-2968,-2969,
+-2971,-2972,-2973,-2975,-2976,-2977,-2978,-2979,-2980,-2981,-2982,-2983,-2983,-2984,-2985,-2985,-2986,-2986,-2987,-2987,-2987,
+-2987,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2987,-2987,-2987,-2986,-2986,-2986,-2985,-2984,-2984,-2983,-2982,-2982,-2981,
+-2980,-2979,-2978,-2977,-2976,-2975,-2974,-2973,-2971,-2970,-2969,-2968,-2966,-2965,-2964,-2962,-2961,-2959,-2958,-2956,-2955,
+-2953,-2952,-2950,-2948,-2947,-2945,-2944,-2942,-2940,-2939,-2937,-2935,-2934,-2932,-2930,-2929,-2927,-2925,-2924,-2922,-2920,
+-2919,-2917,-2915,-2914,-2912,-2911,-2909,-2908,-2906,-2905,-2903,-2902,-2900,-2899,-2897,-2896,-2895,-2893,-2892,-2891,-2889,
+-2888,-2887,-2886,-2885,-2884,-2883,-2881,-2880,-2879,-2878,-2877,-2877,-2876,-2875,-2874,-2873,-2872,-2872,-2871,-2870,-2870,
+-2869,-2868,-2868,-2867,-2867,-2866,-2865,-2865,-2865,-2864,-2864,-2863,-2863,-2862,-2862,-2862,-2861,-2861,-2861,-2860,-2860,
+-2860,-2860,-2859,-2859,-2859,-2858,-2858,-2858,-2858,-2857,-2857,-2857,-2856,-2856,-2856,-2855,-2855,-2855,-2854,-2854,-2853,
+-2853,-2852,-2852,-2851,-2851,-2850,-2849,-2849,-2848,-2847,-2846,-2845,-2845,-2844,-2843,-2842,-2841,-2839,-2838,-2837,-2836,
+-2835,-2833,-2832,-2831,-2829,-2828,-2826,-2824,-2823,-2821,-2819,-2817,-2815,-2814,-2812,-2810,-2808,-2806,-2803,-2801,-2799,
+-2797,-2794,-2792,-2790,-2787,-2785,-2782,-2780,-2777,-2775,-2772,-2770,-2767,-2764,-2762,-2759,-2756,-2753,-2751,-2748,-2745,
+-2743,-2740,-2737,-2734,-2731,-2729,-2726,-2723,-2720,-2718,-2715,-2712,-2710,-2707,-2704,-2702,-2699,-2697,-2694,-2692,-2689,
+-2687,-2684,-2682,-2680,-2677,-2675,-2673,-2671,-2669,-2666,-2664,-2662,-2661,-2659,-2657,-2655,-2653,-2652,-2650,-2648,-2647,
+-2645,-2644,-2642,-2641,-2640,-2639,-2637,-2636,-2635,-2634,-2633,-2633,-2632,-2631,-2630,-2630,-2629,-2629,-2628,-2628,-2627,
+-2627,-2627,-2626,-2626,-2626,-2626,-2626,-2626,-2626,-2627,-2627,-2627,-2627,-2628,-2628,-2628,-2629,-2629,-2630,-2631,-2631,
+-2632,-2633,-2633,-2634,-2635,-2636,-2637,-2638,-2638,-2639,-2640,-2641,-2642,-2643,-2644,-2645,-2646,-2647,-2648,-2649,-2650,
+-2651,-2652,-2653,-2654,-2655,-2656,-2657,-2657,-2658,-2659,-2660,-2661,-2661,-2662,-2662,-2663,-2663,-2664,-2664,-2664,-2665,
+-2665,-2665,-2665,-2665,-2665,-2665,-2664,-2664,-2664,-2663,-2663,-2662,-2661,-2660,-2660,-2659,-2658,-2656,-2655,-2654,-2652,
+-2651,-2649,-2648,-2646,-2644,-2642,-2640,-2638,-2636,-2634,-2632,-2629,-2627,-2624,-2622,-2619,-2616,-2614,-2611,-2608,-2605,
+-2602,-2599,-2596,-2593,-2590,-2587,-2584,-2581,-2578,-2575,-2571,-2568,-2565,-2562,-2559,-2556,-2553,-2550,-2547,-2544,-2541,
+-2538,-2535,-2532,-2529,-2526,-2524,-2521,-2519,-2516,-2514,-2511,-2509,-2507,-2505,-2503,-2501,-2499,-2497,-2495,-2494,-2492,
+-2491,-2490,-2488,-2487,-2486,-2485,-2485,-2484,-2483,-2483,-2482,-2482,-2482,-2482,-2482,-2482,-2482,-2482,-2482,-2483,-2483,
+-2484,-2485,-2485,-2486,-2487,-2488,-2489,-2490,-2491,-2492,-2493,-2495,-2496,-2497,-2499,-2500,-2502,-2503,-2505,-2506,-2508,
+-2509,-2511,-2512,-2514,-2515,-2517,-2518,-2520,-2521,-2523,-2524,-2526,-2527,-2528,-2530,-2531,-2532,-2533,-2535,-2536,-2537,
+-2538,-2538,-2539,-2540,-2541,-2541,-2542,-2543,-2543,-2543,-2544,-2544,-2544,-2544,-2544,-2544,-2544,-2544,-2543,-2543,-2543,
+-2542,-2542,-2541,-2540,-2539,-2539,-2538,-2537,-2536,-2535,-2533,-2532,-2531,-2530,-2528,-2527,-2525,-2524,-2522,-2521,-2519,
+-2517,-2516,-2514,-2512,-2510,-2508,-2507,-2505,-2503,-2501,-2499,-2497,-2495,-2493,-2491,-2489,-2583,-2582,-2581,-2580,-2579,
+-2578,-2577,-2576,-2575,-2574,-2573,-2572,-2571,-2570,-2569,-2568,-2567,-2566,-2565,-2564,-2563,-2562,-2561,-2560,-2559,-2558,
+-2557,-2556,-2555,-2554,-2553,-2552,-2551,-2550,-2549,-2548,-2547,-2546,-2545,-2544,-2543,-2542,-2542,-2541,-2540,-2539,-2538,
+-2537,-2536,-2535,-2534,-2533,-2532,-2531,-2530,-2529,-2528,-2527,-2526,-2525,-2524,-2523,-2522,-2521,-2520,-2519,-2518,-2517,
+-2516,-2515,-2514,-2513,-2512,-2511,-2510,-2508,-2507,-2506,-2505,-2504,-2503,-2501,-2500,-2499,-2498,-2497,-2495,-2494,-2493,
+-2492,-2490,-2489,-2488,-2486,-2485,-2484,-2483,-2481,-2480,-2479,-2478,-2476,-2475,-2474,-2473,-2471,-2470,-2469,-2468,-2466,
+-2465,-2464,-2463,-2462,-2461,-2460,-2458,-2457,-2456,-2455,-2454,-2453,-2452,-2452,-2451,-2450,-2449,-2448,-2447,-2447,-2446,
+-2445,-2445,-2444,-2444,-2443,-2443,-2442,-2442,-2441,-2441,-2441,-2441,-2440,-2440,-2440,-2440,-2440,-2440,-2440,-2440,-2440,
+-2441,-2441,-2441,-2441,-2442,-2442,-2443,-2443,-2444,-2444,-2445,-2446,-2446,-2447,-2448,-2449,-2450,-2450,-2451,-2452,-2453,
+-2454,-2455,-2457,-2458,-2459,-2460,-2461,-2463,-2464,-2465,-2466,-2468,-2469,-2471,-2472,-2473,-2475,-2476,-2478,-2479,-2481,
+-2482,-2484,-2486,-2487,-2489,-2490,-2492,-2493,-2495,-2497,-2498,-2500,-2501,-2503,-2505,-2506,-2508,-2510,-2511,-2513,-2514,
+-2516,-2518,-2519,-2521,-2522,-2524,-2525,-2527,-2528,-2530,-2531,-2533,-2534,-2536,-2537,-2539,-2540,-2542,-2543,-2544,-2546,
+-2547,-2548,-2550,-2551,-2552,-2554,-2555,-2556,-2558,-2559,-2560,-2561,-2562,-2564,-2565,-2566,-2567,-2568,-2570,-2571,-2572,
+-2573,-2574,-2575,-2576,-2577,-2579,-2580,-2581,-2582,-2583,-2584,-2585,-2586,-2587,-2589,-2590,-2591,-2592,-2593,-2594,-2595,
+-2596,-2598,-2599,-2600,-2601,-2602,-2603,-2605,-2606,-2607,-2608,-2610,-2611,-2612,-2614,-2615,-2616,-2618,-2619,-2621,-2622,
+-2623,-2625,-2626,-2628,-2629,-2631,-2633,-2634,-2636,-2637,-2639,-2641,-2642,-2644,-2646,-2648,-2649,-2651,-2653,-2655,-2657,
+-2659,-2661,-2663,-2665,-2667,-2669,-2671,-2673,-2675,-2677,-2679,-2681,-2683,-2685,-2687,-2690,-2692,-2694,-2696,-2698,-2701,
+-2703,-2705,-2707,-2710,-2712,-2714,-2717,-2719,-2721,-2724,-2726,-2728,-2731,-2733,-2735,-2738,-2740,-2743,-2745,-2747,-2750,
+-2752,-2754,-2757,-2759,-2762,-2764,-2766,-2769,-2771,-2774,-2776,-2778,-2781,-2783,-2785,-2788,-2790,-2792,-2795,-2797,-2799,
+-2802,-2804,-2806,-2808,-2811,-2813,-2815,-2818,-2820,-2822,-2824,-2827,-2829,-2831,-2833,-2835,-2838,-2840,-2842,-2844,-2846,
+-2848,-2850,-2853,-2855,-2857,-2859,-2861,-2863,-2865,-2867,-2869,-2871,-2873,-2875,-2877,-2879,-2881,-2884,-2886,-2887,-2889,
+-2891,-2893,-2895,-2897,-2899,-2901,-2903,-2905,-2907,-2909,-2911,-2913,-2915,-2917,-2918,-2920,-2922,-2924,-2926,-2928,-2930,
+-2931,-2933,-2935,-2937,-2939,-2941,-2942,-2944,-2946,-2948,-2950,-2951,-2953,-2955,-2957,-2958,-2960,-2962,-2964,-2965,-2967,
+-2969,-2971,-2972,-2974,-2976,-2977,-2979,-2981,-2982,-2984,-2986,-2987,-2989,-2991,-2992,-2994,-2996,-2997,-2999,-3000,-3002,
+-3004,-3005,-3007,-3008,-3010,-3011,-3013,-3015,-3016,-3018,-3019,-3021,-3022,-3024,-3025,-3027,-3028,-3030,-3031,-3032,-3034,
+-3035,-3037,-3038,-3040,-3041,-3042,-3044,-3045,-3046,-3048,-3049,-3050,-3052,-3053,-3054,-3056,-3057,-3058,-3059,-3061,-3062,
+-3063,-3064,-3066,-3067,-3068,-3069,-3070,-3071,-3073,-3074,-3075,-3076,-3077,-3078,-3079,-3080,-3081,-3083,-3084,-3085,-3086,
+-3087,-3088,-3089,-3090,-3091,-3092,-3093,-3094,-3095,-3095,-3096,-3097,-3098,-3099,-3100,-3101,-3102,-3103,-3103,-3104,-3105,
+-3106,-3107,-3107,-3108,-3109,-3110,-3111,-3111,-3112,-3113,-3113,-3114,-3115,-3115,-3116,-3117,-3117,-3118,-3119,-3119,-3120,
+-3120,-3121,-3121,-3122,-3122,-3123,-3123,-3124,-3124,-3125,-3125,-3125,-3126,-3126,-3126,-3127,-3127,-3127,-3127,-3128,-3128,
+-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3128,-3127,-3127,-3127,-3127,-3126,-3126,
+-3125,-3125,-3125,-3124,-3124,-3123,-3122,-3122,-3121,-3120,-3120,-3119,-3118,-3117,-3116,-3116,-3115,-3114,-3113,-3112,-3111,
+-3110,-3109,-3107,-3106,-3105,-3104,-3103,-3101,-3100,-3099,-3097,-3096,-3095,-3093,-3092,-3090,-3089,-3087,-3085,-3084,-3082,
+-3081,-3079,-3077,-3076,-3074,-3072,-3070,-3069,-3067,-3065,-3063,-3062,-3060,-3058,-3056,-3054,-3052,-3050,-3049,-3047,-3045,
+-3043,-3041,-3039,-3037,-3035,-3034,-3032,-3030,-3028,-3026,-3024,-3022,-3020,-3019,-3017,-3015,-3013,-3011,-3010,-3008,-3006,
+-3004,-3002,-3001,-2999,-2997,-2996,-2994,-2992,-2991,-2989,-2987,-2986,-2984,-2983,-2981,-2980,-2978,-2977,-2975,-2974,-2972,
+-2971,-2970,-2968,-2967,-2966,-2964,-2963,-2962,-2961,-2959,-2958,-2957,-2956,-2955,-2954,-2953,-2951,-2950,-2949,-2948,-2947,
+-2946,-2946,-2945,-2944,-2943,-2942,-2941,-2940,-2940,-2939,-2938,-2937,-2937,-2936,-2935,-2935,-2934,-2933,-2933,-2932,-2932,
+-2931,-2931,-2930,-2930,-2929,-2929,-2929,-2928,-2928,-2928,-2927,-2927,-2927,-2927,-2926,-2926,-2926,-2926,-2926,-2926,-2926,
+-2926,-2926,-2926,-2926,-2926,-2926,-2926,-2926,-2926,-2926,-2927,-2927,-2927,-2927,-2928,-2928,-2928,-2928,-2929,-2929,-2930,
+-2930,-2930,-2931,-2931,-2932,-2932,-2933,-2934,-2934,-2935,-2935,-2936,-2937,-2937,-2938,-2939,-2939,-2940,-2941,-2942,-2942,
+-2943,-2944,-2945,-2946,-2946,-2947,-2948,-2949,-2950,-2951,-2951,-2952,-2953,-2954,-2955,-2956,-2957,-2958,-2959,-2960,-2960,
+-2961,-2962,-2963,-2964,-2965,-2966,-2967,-2968,-2969,-2969,-2970,-2971,-2972,-2973,-2974,-2975,-2975,-2976,-2977,-2978,-2979,
+-2979,-2980,-2981,-2982,-2982,-2983,-2984,-2984,-2985,-2986,-2986,-2987,-2987,-2988,-2989,-2989,-2990,-2990,-2990,-2991,-2991,
+-2992,-2992,-2992,-2993,-2993,-2993,-2994,-2994,-2994,-2994,-2994,-2994,-2994,-2995,-2995,-2995,-2995,-2995,-2995,-2994,-2994,
+-2994,-2994,-2994,-2994,-2994,-2993,-2993,-2993,-2992,-2992,-2992,-2991,-2991,-2990,-2990,-2989,-2989,-2988,-2988,-2987,-2987,
+-2986,-2986,-2985,-2984,-2984,-2983,-2982,-2981,-2981,-2980,-2979,-2978,-2978,-2977,-2976,-2975,-2974,-2974,-2973,-2972,-2971,
+-2970,-2969,-2968,-2967,-2967,-2966,-2965,-2964,-2963,-2962,-2961,-2960,-2959,-2958,-2958,-2957,-2956,-2955,-2954,-2953,-2952,
+-2951,-2951,-2950,-2949,-2948,-2947,-2946,-2946,-2945,-2944,-2943,-2942,-2942,-2941,-2940,-2939,-2939,-2938,-2937,-2937,-2936,
+-2935,-2935,-2934,-2933,-2933,-2932,-2931,-2931,-2930,-2930,-2929,-2928,-2928,-2927,-2927,-2926,-2926,-2925,-2924,-2924,-2923,
+-2923,-2922,-2922,-2921,-2921,-2920,-2920,-2919,-2918,-2918,-2917,-2917,-2916,-2915,-2915,-2914,-2914,-2913,-2912,-2911,-2911,
+-2910,-2909,-2908,-2908,-2907,-2906,-2905,-2904,-2903,-2902,-2901,-2900,-2899,-2898,-2897,-2896,-2895,-2894,-2892,-2891,-2890,
+-2889,-2887,-2886,-2884,-2883,-2881,-2880,-2878,-2877,-2875,-2873,-2872,-2870,-2868,-2866,-2865,-2863,-2861,-2859,-2857,-2855,
+-2853,-2851,-2849,-2847,-2845,-2842,-2840,-2838,-2836,-2834,-2831,-2829,-2827,-2824,-2822,-2820,-2817,-2815,-2813,-2810,-2808,
+-2805,-2803,-2801,-2798,-2796,-2793,-2791,-2789,-2786,-2784,-2781,-2779,-2777,-2774,-2772,-2770,-2767,-2765,-2763,-2761,-2758,
+-2756,-2754,-2752,-2750,-2748,-2746,-2744,-2742,-2740,-2738,-2736,-2734,-2732,-2731,-2729,-2727,-2726,-2724,-2723,-2721,-2720,
+-2718,-2717,-2716,-2715,-2713,-2712,-2711,-2710,-2709,-2708,-2707,-2707,-2706,-2705,-2704,-2704,-2703,-2703,-2702,-2702,-2702,
+-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2701,-2702,-2702,-2702,-2703,-2703,-2704,-2704,-2705,-2705,
+-2706,-2706,-2707,-2708,-2708,-2709,-2710,-2710,-2711,-2712,-2713,-2713,-2714,-2715,-2716,-2716,-2717,-2718,-2719,-2719,-2720,
+-2721,-2722,-2722,-2723,-2724,-2724,-2725,-2725,-2726,-2726,-2727,-2727,-2728,-2728,-2728,-2729,-2729,-2729,-2729,-2729,-2729,
+-2729,-2729,-2729,-2729,-2729,-2729,-2728,-2728,-2728,-2727,-2727,-2726,-2725,-2725,-2724,-2723,-2722,-2721,-2720,-2719,-2718,
+-2717,-2716,-2715,-2713,-2712,-2711,-2709,-2708,-2706,-2705,-2703,-2701,-2700,-2698,-2696,-2694,-2693,-2691,-2689,-2687,-2685,
+-2683,-2681,-2679,-2677,-2675,-2673,-2671,-2669,-2667,-2665,-2663,-2661,-2658,-2656,-2654,-2652,-2650,-2648,-2646,-2644,-2643,
+-2641,-2639,-2637,-2635,-2633,-2632,-2630,-2628,-2626,-2625,-2623,-2622,-2620,-2619,-2618,-2616,-2615,-2614,-2612,-2611,-2610,
+-2609,-2608,-2607,-2606,-2606,-2605,-2604,-2603,-2603,-2602,-2602,-2601,-2601,-2600,-2600,-2600,-2599,-2599,-2599,-2599,-2599,
+-2599,-2599,-2599,-2599,-2599,-2599,-2599,-2599,-2600,-2600,-2600,-2600,-2601,-2601,-2601,-2602,-2602,-2602,-2603,-2603,-2603,
+-2604,-2604,-2605,-2605,-2605,-2606,-2606,-2607,-2607,-2607,-2608,-2608,-2608,-2609,-2609,-2609,-2609,-2610,-2610,-2610,-2610,
+-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2610,-2609,-2609,-2609,-2609,-2608,-2608,-2607,-2607,-2607,
+-2606,-2606,-2605,-2604,-2604,-2603,-2603,-2602,-2601,-2600,-2600,-2599,-2598,-2597,-2596,-2596,-2595,-2594,-2593,-2592,-2591,
+-2590,-2589,-2588,-2587,-2586,-2585,-2584,-2583,-2658,-2657,-2657,-2656,-2655,-2655,-2654,-2654,-2653,-2653,-2652,-2651,-2651,
+-2650,-2650,-2649,-2649,-2648,-2648,-2647,-2646,-2646,-2645,-2645,-2644,-2644,-2643,-2643,-2642,-2642,-2641,-2641,-2640,-2639,
+-2639,-2638,-2638,-2637,-2637,-2636,-2636,-2635,-2635,-2634,-2634,-2633,-2633,-2632,-2632,-2631,-2631,-2630,-2630,-2629,-2629,
+-2628,-2628,-2627,-2627,-2626,-2626,-2625,-2625,-2624,-2623,-2623,-2622,-2622,-2621,-2621,-2620,-2620,-2619,-2619,-2618,-2617,
+-2617,-2616,-2616,-2615,-2615,-2614,-2613,-2613,-2612,-2612,-2611,-2611,-2610,-2609,-2609,-2608,-2608,-2607,-2607,-2606,-2605,
+-2605,-2604,-2604,-2603,-2603,-2602,-2601,-2601,-2600,-2600,-2599,-2599,-2598,-2598,-2597,-2597,-2596,-2596,-2596,-2595,-2595,
+-2594,-2594,-2593,-2593,-2593,-2592,-2592,-2592,-2591,-2591,-2591,-2591,-2590,-2590,-2590,-2590,-2589,-2589,-2589,-2589,-2589,
+-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2589,-2590,-2590,-2590,-2590,-2591,-2591,-2591,-2591,
+-2592,-2592,-2592,-2593,-2593,-2594,-2594,-2595,-2595,-2596,-2596,-2597,-2597,-2598,-2599,-2599,-2600,-2600,-2601,-2602,-2602,
+-2603,-2604,-2605,-2605,-2606,-2607,-2608,-2608,-2609,-2610,-2611,-2612,-2613,-2613,-2614,-2615,-2616,-2617,-2618,-2619,-2619,
+-2620,-2621,-2622,-2623,-2624,-2625,-2626,-2627,-2628,-2629,-2629,-2630,-2631,-2632,-2633,-2634,-2635,-2636,-2637,-2638,-2639,
+-2640,-2640,-2641,-2642,-2643,-2644,-2645,-2646,-2647,-2647,-2648,-2649,-2650,-2651,-2652,-2653,-2653,-2654,-2655,-2656,-2657,
+-2658,-2658,-2659,-2660,-2661,-2662,-2663,-2663,-2664,-2665,-2666,-2667,-2667,-2668,-2669,-2670,-2671,-2671,-2672,-2673,-2674,
+-2675,-2675,-2676,-2677,-2678,-2679,-2679,-2680,-2681,-2682,-2683,-2684,-2684,-2685,-2686,-2687,-2688,-2689,-2690,-2690,-2691,
+-2692,-2693,-2694,-2695,-2696,-2697,-2698,-2699,-2700,-2701,-2702,-2703,-2704,-2705,-2706,-2707,-2708,-2709,-2710,-2711,-2713,
+-2714,-2715,-2716,-2717,-2718,-2720,-2721,-2722,-2723,-2724,-2726,-2727,-2728,-2730,-2731,-2732,-2734,-2735,-2736,-2738,-2739,
+-2740,-2742,-2743,-2745,-2746,-2748,-2749,-2751,-2752,-2754,-2755,-2757,-2758,-2760,-2761,-2763,-2765,-2766,-2768,-2769,-2771,
+-2773,-2774,-2776,-2777,-2779,-2781,-2782,-2784,-2786,-2787,-2789,-2791,-2793,-2794,-2796,-2798,-2799,-2801,-2803,-2804,-2806,
+-2808,-2810,-2811,-2813,-2815,-2817,-2818,-2820,-2822,-2823,-2825,-2827,-2829,-2830,-2832,-2834,-2836,-2837,-2839,-2841,-2842,
+-2844,-2846,-2848,-2849,-2851,-2853,-2854,-2856,-2858,-2860,-2861,-2863,-2865,-2866,-2868,-2870,-2871,-2873,-2875,-2876,-2878,
+-2880,-2881,-2883,-2885,-2886,-2888,-2890,-2891,-2893,-2895,-2896,-2898,-2899,-2901,-2903,-2904,-2906,-2907,-2909,-2911,-2912,
+-2914,-2915,-2917,-2918,-2920,-2922,-2923,-2925,-2926,-2928,-2929,-2931,-2932,-2934,-2936,-2937,-2939,-2940,-2942,-2943,-2945,
+-2946,-2948,-2949,-2951,-2952,-2954,-2955,-2957,-2958,-2960,-2961,-2963,-2964,-2965,-2967,-2968,-2970,-2971,-2973,-2974,-2976,
+-2977,-2978,-2980,-2981,-2983,-2984,-2985,-2987,-2988,-2990,-2991,-2992,-2994,-2995,-2997,-2998,-2999,-3001,-3002,-3003,-3005,
+-3006,-3007,-3009,-3010,-3011,-3013,-3014,-3015,-3016,-3018,-3019,-3020,-3022,-3023,-3024,-3025,-3026,-3028,-3029,-3030,-3031,
+-3033,-3034,-3035,-3036,-3037,-3038,-3040,-3041,-3042,-3043,-3044,-3045,-3046,-3048,-3049,-3050,-3051,-3052,-3053,-3054,-3055,
+-3056,-3057,-3058,-3059,-3060,-3061,-3062,-3063,-3064,-3065,-3066,-3067,-3068,-3069,-3070,-3071,-3072,-3073,-3074,-3074,-3075,
+-3076,-3077,-3078,-3079,-3079,-3080,-3081,-3082,-3083,-3083,-3084,-3085,-3086,-3086,-3087,-3088,-3089,-3089,-3090,-3091,-3091,
+-3092,-3092,-3093,-3094,-3094,-3095,-3095,-3096,-3096,-3097,-3097,-3098,-3098,-3099,-3099,-3100,-3100,-3100,-3101,-3101,-3102,
+-3102,-3102,-3102,-3103,-3103,-3103,-3103,-3104,-3104,-3104,-3104,-3104,-3104,-3105,-3105,-3105,-3105,-3105,-3105,-3105,-3105,
+-3105,-3105,-3104,-3104,-3104,-3104,-3104,-3104,-3103,-3103,-3103,-3103,-3102,-3102,-3102,-3101,-3101,-3100,-3100,-3099,-3099,
+-3098,-3098,-3097,-3097,-3096,-3096,-3095,-3094,-3094,-3093,-3092,-3092,-3091,-3090,-3089,-3088,-3088,-3087,-3086,-3085,-3084,
+-3083,-3082,-3081,-3080,-3079,-3078,-3078,-3076,-3075,-3074,-3073,-3072,-3071,-3070,-3069,-3068,-3067,-3066,-3065,-3063,-3062,
+-3061,-3060,-3059,-3058,-3057,-3055,-3054,-3053,-3052,-3051,-3049,-3048,-3047,-3046,-3045,-3043,-3042,-3041,-3040,-3039,-3038,
+-3036,-3035,-3034,-3033,-3032,-3030,-3029,-3028,-3027,-3026,-3025,-3024,-3023,-3021,-3020,-3019,-3018,-3017,-3016,-3015,-3014,
+-3013,-3012,-3011,-3010,-3009,-3008,-3007,-3006,-3005,-3004,-3003,-3002,-3001,-3000,-2999,-2999,-2998,-2997,-2996,-2995,-2994,
+-2994,-2993,-2992,-2991,-2990,-2990,-2989,-2988,-2988,-2987,-2986,-2985,-2985,-2984,-2983,-2983,-2982,-2981,-2981,-2980,-2980,
+-2979,-2978,-2978,-2977,-2977,-2976,-2976,-2975,-2975,-2974,-2974,-2973,-2973,-2972,-2972,-2971,-2971,-2970,-2970,-2970,-2969,
+-2969,-2968,-2968,-2968,-2967,-2967,-2967,-2966,-2966,-2966,-2965,-2965,-2965,-2964,-2964,-2964,-2964,-2963,-2963,-2963,-2963,
+-2963,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,
+-2961,-2961,-2961,-2961,-2961,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2963,-2963,-2963,-2963,-2964,-2964,-2964,-2964,-2965,
+-2965,-2965,-2966,-2966,-2966,-2967,-2967,-2968,-2968,-2968,-2969,-2969,-2970,-2970,-2971,-2971,-2972,-2972,-2973,-2973,-2974,
+-2974,-2975,-2975,-2976,-2976,-2977,-2978,-2978,-2979,-2979,-2980,-2980,-2981,-2982,-2982,-2983,-2983,-2984,-2985,-2985,-2986,
+-2986,-2987,-2988,-2988,-2989,-2989,-2990,-2991,-2991,-2992,-2992,-2993,-2994,-2994,-2995,-2995,-2996,-2996,-2997,-2997,-2998,
+-2998,-2999,-2999,-3000,-3000,-3001,-3001,-3001,-3002,-3002,-3002,-3003,-3003,-3003,-3004,-3004,-3004,-3005,-3005,-3005,-3005,
+-3005,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3007,-3007,-3007,-3007,-3007,-3006,-3006,-3006,-3006,-3006,-3006,-3006,
+-3006,-3006,-3005,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3003,-3003,-3003,-3002,-3002,-3002,-3001,-3001,-3001,-3000,-3000,
+-2999,-2999,-2998,-2998,-2997,-2997,-2997,-2996,-2996,-2995,-2995,-2994,-2994,-2993,-2992,-2992,-2991,-2991,-2990,-2990,-2989,
+-2989,-2988,-2988,-2987,-2987,-2986,-2985,-2985,-2984,-2984,-2983,-2983,-2982,-2981,-2981,-2980,-2980,-2979,-2979,-2978,-2977,
+-2977,-2976,-2976,-2975,-2975,-2974,-2973,-2973,-2972,-2972,-2971,-2971,-2970,-2969,-2969,-2968,-2968,-2967,-2966,-2966,-2965,
+-2964,-2964,-2963,-2962,-2962,-2961,-2960,-2960,-2959,-2958,-2957,-2957,-2956,-2955,-2954,-2954,-2953,-2952,-2951,-2950,-2949,
+-2948,-2947,-2946,-2945,-2944,-2943,-2942,-2941,-2940,-2939,-2938,-2937,-2936,-2935,-2933,-2932,-2931,-2930,-2928,-2927,-2926,
+-2924,-2923,-2921,-2920,-2918,-2917,-2915,-2914,-2912,-2911,-2909,-2907,-2906,-2904,-2902,-2901,-2899,-2897,-2895,-2894,-2892,
+-2890,-2888,-2886,-2884,-2882,-2880,-2878,-2876,-2874,-2872,-2870,-2868,-2866,-2864,-2862,-2860,-2858,-2856,-2854,-2852,-2850,
+-2848,-2846,-2844,-2842,-2840,-2838,-2835,-2833,-2831,-2829,-2827,-2825,-2823,-2821,-2819,-2817,-2815,-2814,-2812,-2810,-2808,
+-2806,-2804,-2802,-2801,-2799,-2797,-2795,-2794,-2792,-2791,-2789,-2787,-2786,-2784,-2783,-2782,-2780,-2779,-2778,-2776,-2775,
+-2774,-2773,-2772,-2771,-2769,-2768,-2768,-2767,-2766,-2765,-2764,-2763,-2763,-2762,-2761,-2761,-2760,-2760,-2759,-2759,-2758,
+-2758,-2758,-2757,-2757,-2757,-2757,-2756,-2756,-2756,-2756,-2756,-2756,-2756,-2756,-2756,-2756,-2757,-2757,-2757,-2757,-2757,
+-2758,-2758,-2758,-2758,-2759,-2759,-2760,-2760,-2760,-2761,-2761,-2761,-2762,-2762,-2763,-2763,-2764,-2764,-2764,-2765,-2765,
+-2766,-2766,-2767,-2767,-2767,-2768,-2768,-2768,-2769,-2769,-2769,-2770,-2770,-2770,-2770,-2771,-2771,-2771,-2771,-2771,-2771,
+-2772,-2772,-2772,-2772,-2772,-2772,-2772,-2771,-2771,-2771,-2771,-2771,-2770,-2770,-2770,-2770,-2769,-2769,-2768,-2768,-2768,
+-2767,-2767,-2766,-2765,-2765,-2764,-2764,-2763,-2762,-2761,-2761,-2760,-2759,-2758,-2758,-2757,-2756,-2755,-2754,-2753,-2752,
+-2751,-2750,-2749,-2748,-2747,-2746,-2745,-2744,-2743,-2742,-2741,-2740,-2739,-2738,-2737,-2736,-2735,-2734,-2733,-2732,-2731,
+-2730,-2729,-2728,-2727,-2726,-2725,-2724,-2723,-2722,-2721,-2720,-2719,-2718,-2717,-2716,-2715,-2714,-2713,-2713,-2712,-2711,
+-2710,-2709,-2709,-2708,-2707,-2706,-2706,-2705,-2704,-2703,-2703,-2702,-2701,-2701,-2700,-2700,-2699,-2698,-2698,-2697,-2697,
+-2696,-2696,-2695,-2695,-2694,-2694,-2693,-2693,-2692,-2692,-2691,-2691,-2691,-2690,-2690,-2689,-2689,-2689,-2688,-2688,-2687,
+-2687,-2687,-2686,-2686,-2686,-2685,-2685,-2684,-2684,-2684,-2683,-2683,-2682,-2682,-2682,-2681,-2681,-2680,-2680,-2680,-2679,
+-2679,-2678,-2678,-2678,-2677,-2677,-2676,-2676,-2675,-2675,-2674,-2674,-2673,-2673,-2672,-2672,-2671,-2671,-2670,-2670,-2669,
+-2669,-2668,-2668,-2667,-2667,-2666,-2666,-2665,-2664,-2664,-2663,-2663,-2662,-2662,-2661,-2661,-2660,-2659,-2659,-2658,-2658,
+-2708,-2708,-2708,-2707,-2707,-2706,-2706,-2705,-2705,-2705,-2704,-2704,-2704,-2703,-2703,-2702,-2702,-2702,-2701,-2701,-2701,
+-2700,-2700,-2700,-2699,-2699,-2699,-2699,-2698,-2698,-2698,-2697,-2697,-2697,-2697,-2696,-2696,-2696,-2696,-2695,-2695,-2695,
+-2695,-2695,-2694,-2694,-2694,-2694,-2694,-2693,-2693,-2693,-2693,-2693,-2692,-2692,-2692,-2692,-2692,-2692,-2692,-2691,-2691,
+-2691,-2691,-2691,-2691,-2691,-2691,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2689,-2689,-2689,-2689,-2689,
+-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,
+-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2689,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2690,-2691,-2691,
+-2691,-2691,-2691,-2691,-2692,-2692,-2692,-2692,-2692,-2693,-2693,-2693,-2693,-2694,-2694,-2694,-2694,-2695,-2695,-2695,-2696,
+-2696,-2696,-2697,-2697,-2697,-2698,-2698,-2698,-2699,-2699,-2699,-2700,-2700,-2701,-2701,-2701,-2702,-2702,-2703,-2703,-2704,
+-2704,-2705,-2705,-2705,-2706,-2706,-2707,-2707,-2708,-2708,-2709,-2709,-2710,-2710,-2711,-2711,-2712,-2712,-2713,-2714,-2714,
+-2715,-2715,-2716,-2716,-2717,-2717,-2718,-2718,-2719,-2720,-2720,-2721,-2721,-2722,-2722,-2723,-2723,-2724,-2725,-2725,-2726,
+-2726,-2727,-2727,-2728,-2728,-2729,-2730,-2730,-2731,-2731,-2732,-2732,-2733,-2733,-2734,-2734,-2735,-2735,-2736,-2737,-2737,
+-2738,-2738,-2739,-2739,-2740,-2740,-2741,-2741,-2742,-2742,-2743,-2743,-2744,-2744,-2745,-2745,-2746,-2746,-2746,-2747,-2747,
+-2748,-2748,-2749,-2749,-2750,-2750,-2751,-2751,-2752,-2752,-2753,-2753,-2754,-2754,-2755,-2755,-2755,-2756,-2756,-2757,-2757,
+-2758,-2758,-2759,-2759,-2760,-2760,-2761,-2761,-2762,-2762,-2763,-2763,-2764,-2764,-2765,-2765,-2766,-2766,-2767,-2768,-2768,
+-2769,-2769,-2770,-2770,-2771,-2772,-2772,-2773,-2773,-2774,-2775,-2775,-2776,-2777,-2777,-2778,-2778,-2779,-2780,-2781,-2781,
+-2782,-2783,-2783,-2784,-2785,-2786,-2786,-2787,-2788,-2789,-2789,-2790,-2791,-2792,-2793,-2794,-2794,-2795,-2796,-2797,-2798,
+-2799,-2800,-2801,-2801,-2802,-2803,-2804,-2805,-2806,-2807,-2808,-2809,-2810,-2811,-2812,-2813,-2814,-2815,-2816,-2817,-2818,
+-2819,-2820,-2821,-2822,-2823,-2825,-2826,-2827,-2828,-2829,-2830,-2831,-2832,-2833,-2835,-2836,-2837,-2838,-2839,-2840,-2841,
+-2843,-2844,-2845,-2846,-2847,-2849,-2850,-2851,-2852,-2853,-2855,-2856,-2857,-2858,-2860,-2861,-2862,-2863,-2865,-2866,-2867,
+-2868,-2870,-2871,-2872,-2873,-2875,-2876,-2877,-2878,-2880,-2881,-2882,-2883,-2885,-2886,-2887,-2889,-2890,-2891,-2892,-2894,
+-2895,-2896,-2897,-2899,-2900,-2901,-2903,-2904,-2905,-2906,-2908,-2909,-2910,-2912,-2913,-2914,-2915,-2917,-2918,-2919,-2920,
+-2922,-2923,-2924,-2926,-2927,-2928,-2929,-2931,-2932,-2933,-2934,-2936,-2937,-2938,-2939,-2941,-2942,-2943,-2944,-2946,-2947,
+-2948,-2949,-2950,-2952,-2953,-2954,-2955,-2956,-2958,-2959,-2960,-2961,-2962,-2964,-2965,-2966,-2967,-2968,-2970,-2971,-2972,
+-2973,-2974,-2975,-2976,-2978,-2979,-2980,-2981,-2982,-2983,-2984,-2985,-2987,-2988,-2989,-2990,-2991,-2992,-2993,-2994,-2995,
+-2996,-2997,-2998,-2999,-3000,-3001,-3002,-3003,-3004,-3005,-3006,-3007,-3008,-3009,-3010,-3011,-3012,-3013,-3014,-3015,-3016,
+-3017,-3018,-3019,-3020,-3020,-3021,-3022,-3023,-3024,-3025,-3026,-3027,-3027,-3028,-3029,-3030,-3031,-3031,-3032,-3033,-3034,
+-3034,-3035,-3036,-3037,-3037,-3038,-3039,-3039,-3040,-3041,-3042,-3042,-3043,-3043,-3044,-3045,-3045,-3046,-3047,-3047,-3048,
+-3048,-3049,-3049,-3050,-3050,-3051,-3051,-3052,-3052,-3053,-3053,-3054,-3054,-3055,-3055,-3055,-3056,-3056,-3057,-3057,-3057,
+-3058,-3058,-3058,-3058,-3059,-3059,-3059,-3059,-3060,-3060,-3060,-3060,-3061,-3061,-3061,-3061,-3061,-3061,-3061,-3061,-3061,
+-3062,-3062,-3062,-3062,-3062,-3062,-3062,-3062,-3062,-3061,-3061,-3061,-3061,-3061,-3061,-3061,-3061,-3061,-3060,-3060,-3060,
+-3060,-3059,-3059,-3059,-3059,-3058,-3058,-3058,-3057,-3057,-3057,-3056,-3056,-3056,-3055,-3055,-3054,-3054,-3054,-3053,-3053,
+-3052,-3052,-3051,-3051,-3050,-3050,-3049,-3048,-3048,-3047,-3047,-3046,-3046,-3045,-3044,-3044,-3043,-3042,-3042,-3041,-3040,
+-3040,-3039,-3038,-3038,-3037,-3036,-3036,-3035,-3034,-3034,-3033,-3032,-3031,-3031,-3030,-3029,-3028,-3028,-3027,-3026,-3025,
+-3025,-3024,-3023,-3022,-3022,-3021,-3020,-3019,-3019,-3018,-3017,-3016,-3016,-3015,-3014,-3013,-3013,-3012,-3011,-3010,-3010,
+-3009,-3008,-3007,-3007,-3006,-3005,-3005,-3004,-3003,-3003,-3002,-3001,-3000,-3000,-2999,-2998,-2998,-2997,-2997,-2996,-2995,
+-2995,-2994,-2993,-2993,-2992,-2992,-2991,-2990,-2990,-2989,-2989,-2988,-2988,-2987,-2987,-2986,-2986,-2985,-2985,-2984,-2984,
+-2983,-2983,-2982,-2982,-2981,-2981,-2980,-2980,-2979,-2979,-2979,-2978,-2978,-2977,-2977,-2977,-2976,-2976,-2976,-2975,-2975,
+-2975,-2974,-2974,-2974,-2973,-2973,-2973,-2972,-2972,-2972,-2972,-2971,-2971,-2971,-2971,-2970,-2970,-2970,-2970,-2970,-2969,
+-2969,-2969,-2969,-2969,-2969,-2969,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,
+-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2969,-2969,-2969,-2969,-2969,-2969,
+-2970,-2970,-2970,-2970,-2970,-2971,-2971,-2971,-2971,-2972,-2972,-2972,-2973,-2973,-2973,-2974,-2974,-2974,-2975,-2975,-2975,
+-2976,-2976,-2977,-2977,-2977,-2978,-2978,-2979,-2979,-2979,-2980,-2980,-2981,-2981,-2982,-2982,-2983,-2983,-2984,-2984,-2985,
+-2985,-2986,-2986,-2987,-2987,-2988,-2988,-2989,-2990,-2990,-2991,-2991,-2992,-2992,-2993,-2993,-2994,-2994,-2995,-2996,-2996,
+-2997,-2997,-2998,-2998,-2999,-2999,-3000,-3000,-3001,-3001,-3002,-3003,-3003,-3004,-3004,-3005,-3005,-3005,-3006,-3006,-3007,
+-3007,-3008,-3008,-3009,-3009,-3010,-3010,-3010,-3011,-3011,-3011,-3012,-3012,-3013,-3013,-3013,-3014,-3014,-3014,-3014,-3015,
+-3015,-3015,-3015,-3016,-3016,-3016,-3016,-3016,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3018,-3018,-3018,-3018,-3018,-3018,
+-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3018,-3017,-3017,-3017,-3017,-3017,-3017,-3017,-3016,
+-3016,-3016,-3016,-3016,-3015,-3015,-3015,-3015,-3014,-3014,-3014,-3014,-3013,-3013,-3013,-3012,-3012,-3012,-3012,-3011,-3011,
+-3010,-3010,-3010,-3009,-3009,-3009,-3008,-3008,-3007,-3007,-3007,-3006,-3006,-3005,-3005,-3004,-3004,-3003,-3003,-3002,-3002,
+-3001,-3001,-3000,-3000,-2999,-2998,-2998,-2997,-2997,-2996,-2995,-2995,-2994,-2993,-2993,-2992,-2991,-2991,-2990,-2989,-2989,
+-2988,-2987,-2986,-2985,-2985,-2984,-2983,-2982,-2981,-2980,-2980,-2979,-2978,-2977,-2976,-2975,-2974,-2973,-2972,-2971,-2970,
+-2969,-2968,-2967,-2966,-2964,-2963,-2962,-2961,-2960,-2959,-2957,-2956,-2955,-2954,-2952,-2951,-2950,-2948,-2947,-2946,-2944,
+-2943,-2941,-2940,-2938,-2937,-2936,-2934,-2933,-2931,-2929,-2928,-2926,-2925,-2923,-2922,-2920,-2918,-2917,-2915,-2913,-2912,
+-2910,-2908,-2907,-2905,-2903,-2902,-2900,-2898,-2896,-2895,-2893,-2891,-2889,-2888,-2886,-2884,-2883,-2881,-2879,-2877,-2876,
+-2874,-2872,-2870,-2869,-2867,-2865,-2863,-2862,-2860,-2858,-2857,-2855,-2853,-2852,-2850,-2849,-2847,-2845,-2844,-2842,-2841,
+-2839,-2838,-2836,-2835,-2833,-2832,-2830,-2829,-2828,-2826,-2825,-2824,-2822,-2821,-2820,-2819,-2817,-2816,-2815,-2814,-2813,
+-2812,-2811,-2810,-2809,-2808,-2807,-2806,-2805,-2804,-2803,-2802,-2801,-2801,-2800,-2799,-2798,-2798,-2797,-2796,-2796,-2795,
+-2795,-2794,-2794,-2793,-2793,-2792,-2792,-2791,-2791,-2791,-2790,-2790,-2790,-2790,-2789,-2789,-2789,-2789,-2789,-2788,-2788,
+-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,-2788,
+-2788,-2789,-2789,-2789,-2789,-2789,-2789,-2789,-2789,-2789,-2789,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,
+-2790,-2790,-2790,-2790,-2791,-2791,-2791,-2791,-2791,-2791,-2791,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,-2790,
+-2790,-2789,-2789,-2789,-2789,-2789,-2789,-2788,-2788,-2788,-2788,-2787,-2787,-2787,-2787,-2786,-2786,-2786,-2785,-2785,-2785,
+-2784,-2784,-2784,-2783,-2783,-2782,-2782,-2781,-2781,-2781,-2780,-2780,-2779,-2779,-2778,-2778,-2777,-2777,-2776,-2776,-2775,
+-2775,-2774,-2774,-2773,-2773,-2772,-2771,-2771,-2770,-2770,-2769,-2769,-2768,-2767,-2767,-2766,-2766,-2765,-2764,-2764,-2763,
+-2763,-2762,-2761,-2761,-2760,-2760,-2759,-2758,-2758,-2757,-2757,-2756,-2755,-2755,-2754,-2754,-2753,-2752,-2752,-2751,-2750,
+-2750,-2749,-2749,-2748,-2747,-2747,-2746,-2746,-2745,-2744,-2744,-2743,-2743,-2742,-2741,-2741,-2740,-2740,-2739,-2738,-2738,
+-2737,-2737,-2736,-2735,-2735,-2734,-2734,-2733,-2732,-2732,-2731,-2731,-2730,-2729,-2729,-2728,-2728,-2727,-2727,-2726,-2726,
+-2725,-2724,-2724,-2723,-2723,-2722,-2722,-2721,-2721,-2720,-2720,-2719,-2718,-2718,-2717,-2717,-2716,-2716,-2715,-2715,-2714,
+-2714,-2713,-2713,-2712,-2712,-2712,-2711,-2711,-2710,-2710,-2709,-2709,-2708,-2788,-2787,-2787,-2787,-2787,-2787,-2786,-2786,
+-2786,-2786,-2786,-2786,-2785,-2785,-2785,-2785,-2785,-2785,-2785,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,
+-2784,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,-2783,
+-2783,-2783,-2783,-2783,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2784,-2785,-2785,-2785,-2785,-2785,
+-2785,-2785,-2786,-2786,-2786,-2786,-2786,-2786,-2787,-2787,-2787,-2787,-2787,-2787,-2788,-2788,-2788,-2788,-2788,-2789,-2789,
+-2789,-2789,-2790,-2790,-2790,-2790,-2791,-2791,-2791,-2791,-2792,-2792,-2792,-2792,-2793,-2793,-2793,-2794,-2794,-2794,-2794,
+-2795,-2795,-2795,-2796,-2796,-2796,-2797,-2797,-2797,-2798,-2798,-2798,-2799,-2799,-2799,-2800,-2800,-2800,-2801,-2801,-2801,
+-2802,-2802,-2802,-2803,-2803,-2804,-2804,-2804,-2805,-2805,-2805,-2806,-2806,-2806,-2807,-2807,-2808,-2808,-2808,-2809,-2809,
+-2810,-2810,-2810,-2811,-2811,-2811,-2812,-2812,-2813,-2813,-2813,-2814,-2814,-2815,-2815,-2815,-2816,-2816,-2817,-2817,-2817,
+-2818,-2818,-2818,-2819,-2819,-2820,-2820,-2820,-2821,-2821,-2821,-2822,-2822,-2823,-2823,-2823,-2824,-2824,-2824,-2825,-2825,
+-2825,-2826,-2826,-2827,-2827,-2827,-2828,-2828,-2828,-2829,-2829,-2829,-2830,-2830,-2830,-2831,-2831,-2831,-2831,-2832,-2832,
+-2832,-2833,-2833,-2833,-2834,-2834,-2834,-2834,-2835,-2835,-2835,-2836,-2836,-2836,-2836,-2837,-2837,-2837,-2837,-2838,-2838,
+-2838,-2838,-2839,-2839,-2839,-2839,-2840,-2840,-2840,-2840,-2840,-2841,-2841,-2841,-2841,-2842,-2842,-2842,-2842,-2842,-2843,
+-2843,-2843,-2843,-2843,-2844,-2844,-2844,-2844,-2844,-2845,-2845,-2845,-2845,-2845,-2846,-2846,-2846,-2846,-2846,-2847,-2847,
+-2847,-2847,-2848,-2848,-2848,-2848,-2848,-2849,-2849,-2849,-2849,-2850,-2850,-2850,-2850,-2850,-2851,-2851,-2851,-2852,-2852,
+-2852,-2852,-2853,-2853,-2853,-2853,-2854,-2854,-2854,-2855,-2855,-2855,-2855,-2856,-2856,-2856,-2857,-2857,-2857,-2858,-2858,
+-2859,-2859,-2859,-2860,-2860,-2860,-2861,-2861,-2862,-2862,-2862,-2863,-2863,-2864,-2864,-2865,-2865,-2866,-2866,-2866,-2867,
+-2867,-2868,-2868,-2869,-2869,-2870,-2870,-2871,-2872,-2872,-2873,-2873,-2874,-2874,-2875,-2875,-2876,-2877,-2877,-2878,-2878,
+-2879,-2880,-2880,-2881,-2882,-2882,-2883,-2884,-2884,-2885,-2886,-2886,-2887,-2888,-2888,-2889,-2890,-2891,-2891,-2892,-2893,
+-2894,-2894,-2895,-2896,-2897,-2897,-2898,-2899,-2900,-2900,-2901,-2902,-2903,-2904,-2904,-2905,-2906,-2907,-2908,-2909,-2909,
+-2910,-2911,-2912,-2913,-2914,-2915,-2915,-2916,-2917,-2918,-2919,-2920,-2921,-2922,-2922,-2923,-2924,-2925,-2926,-2927,-2928,
+-2929,-2930,-2930,-2931,-2932,-2933,-2934,-2935,-2936,-2937,-2938,-2939,-2940,-2941,-2941,-2942,-2943,-2944,-2945,-2946,-2947,
+-2948,-2949,-2950,-2951,-2952,-2952,-2953,-2954,-2955,-2956,-2957,-2958,-2959,-2960,-2961,-2962,-2963,-2963,-2964,-2965,-2966,
+-2967,-2968,-2969,-2970,-2971,-2971,-2972,-2973,-2974,-2975,-2976,-2977,-2978,-2978,-2979,-2980,-2981,-2982,-2983,-2984,-2984,
+-2985,-2986,-2987,-2988,-2989,-2989,-2990,-2991,-2992,-2993,-2993,-2994,-2995,-2996,-2996,-2997,-2998,-2999,-2999,-3000,-3001,
+-3002,-3002,-3003,-3004,-3005,-3005,-3006,-3007,-3007,-3008,-3009,-3009,-3010,-3011,-3011,-3012,-3013,-3013,-3014,-3015,-3015,
+-3016,-3016,-3017,-3017,-3018,-3019,-3019,-3020,-3020,-3021,-3021,-3022,-3022,-3023,-3023,-3024,-3024,-3025,-3025,-3026,-3026,
+-3027,-3027,-3028,-3028,-3028,-3029,-3029,-3030,-3030,-3030,-3031,-3031,-3032,-3032,-3032,-3033,-3033,-3033,-3034,-3034,-3034,
+-3034,-3035,-3035,-3035,-3035,-3036,-3036,-3036,-3036,-3037,-3037,-3037,-3037,-3037,-3037,-3038,-3038,-3038,-3038,-3038,-3038,
+-3038,-3038,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,-3039,
+-3039,-3039,-3039,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3038,-3037,-3037,-3037,-3037,-3037,-3037,-3036,-3036,-3036,
+-3036,-3036,-3035,-3035,-3035,-3035,-3034,-3034,-3034,-3034,-3033,-3033,-3033,-3032,-3032,-3032,-3032,-3031,-3031,-3031,-3030,
+-3030,-3030,-3029,-3029,-3029,-3028,-3028,-3028,-3027,-3027,-3027,-3026,-3026,-3026,-3025,-3025,-3025,-3024,-3024,-3023,-3023,
+-3023,-3022,-3022,-3022,-3021,-3021,-3020,-3020,-3020,-3019,-3019,-3019,-3018,-3018,-3017,-3017,-3017,-3016,-3016,-3016,-3015,
+-3015,-3015,-3014,-3014,-3013,-3013,-3013,-3012,-3012,-3012,-3011,-3011,-3011,-3010,-3010,-3010,-3009,-3009,-3009,-3008,-3008,
+-3008,-3008,-3007,-3007,-3007,-3006,-3006,-3006,-3006,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3004,-3003,-3003,-3003,-3003,
+-3003,-3002,-3002,-3002,-3002,-3002,-3002,-3001,-3001,-3001,-3001,-3001,-3001,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,
+-3000,-3000,-3000,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,
+-2999,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3002,-3002,
+-3002,-3002,-3002,-3003,-3003,-3003,-3003,-3003,-3004,-3004,-3004,-3004,-3005,-3005,-3005,-3005,-3006,-3006,-3006,-3007,-3007,
+-3007,-3007,-3008,-3008,-3008,-3009,-3009,-3009,-3010,-3010,-3010,-3011,-3011,-3011,-3012,-3012,-3013,-3013,-3013,-3014,-3014,
+-3015,-3015,-3015,-3016,-3016,-3017,-3017,-3017,-3018,-3018,-3019,-3019,-3020,-3020,-3020,-3021,-3021,-3022,-3022,-3023,-3023,
+-3024,-3024,-3024,-3025,-3025,-3026,-3026,-3027,-3027,-3028,-3028,-3029,-3029,-3030,-3030,-3030,-3031,-3031,-3032,-3032,-3033,
+-3033,-3034,-3034,-3035,-3035,-3035,-3036,-3036,-3037,-3037,-3038,-3038,-3039,-3039,-3039,-3040,-3040,-3041,-3041,-3042,-3042,
+-3042,-3043,-3043,-3044,-3044,-3044,-3045,-3045,-3045,-3046,-3046,-3047,-3047,-3047,-3048,-3048,-3048,-3048,-3049,-3049,-3049,
+-3050,-3050,-3050,-3051,-3051,-3051,-3051,-3052,-3052,-3052,-3052,-3052,-3053,-3053,-3053,-3053,-3053,-3054,-3054,-3054,-3054,
+-3054,-3054,-3054,-3054,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,-3055,
+-3055,-3055,-3055,-3055,-3054,-3054,-3054,-3054,-3054,-3054,-3054,-3054,-3053,-3053,-3053,-3053,-3053,-3052,-3052,-3052,-3052,
+-3051,-3051,-3051,-3051,-3050,-3050,-3050,-3049,-3049,-3049,-3048,-3048,-3048,-3047,-3047,-3046,-3046,-3046,-3045,-3045,-3044,
+-3044,-3043,-3043,-3042,-3042,-3041,-3041,-3040,-3040,-3039,-3039,-3038,-3037,-3037,-3036,-3036,-3035,-3034,-3034,-3033,-3032,
+-3032,-3031,-3030,-3029,-3029,-3028,-3027,-3027,-3026,-3025,-3024,-3023,-3023,-3022,-3021,-3020,-3019,-3018,-3017,-3017,-3016,
+-3015,-3014,-3013,-3012,-3011,-3010,-3009,-3008,-3007,-3006,-3005,-3004,-3003,-3002,-3001,-3000,-2998,-2997,-2996,-2995,-2994,
+-2993,-2992,-2991,-2989,-2988,-2987,-2986,-2985,-2983,-2982,-2981,-2980,-2978,-2977,-2976,-2974,-2973,-2972,-2971,-2969,-2968,
+-2967,-2965,-2964,-2963,-2961,-2960,-2958,-2957,-2956,-2954,-2953,-2951,-2950,-2949,-2947,-2946,-2944,-2943,-2942,-2940,-2939,
+-2937,-2936,-2934,-2933,-2931,-2930,-2929,-2927,-2926,-2924,-2923,-2921,-2920,-2919,-2917,-2916,-2914,-2913,-2911,-2910,-2909,
+-2907,-2906,-2904,-2903,-2902,-2900,-2899,-2898,-2896,-2895,-2893,-2892,-2891,-2889,-2888,-2887,-2886,-2884,-2883,-2882,-2881,
+-2879,-2878,-2877,-2876,-2874,-2873,-2872,-2871,-2870,-2869,-2868,-2866,-2865,-2864,-2863,-2862,-2861,-2860,-2859,-2858,-2857,
+-2856,-2855,-2854,-2853,-2853,-2852,-2851,-2850,-2849,-2848,-2847,-2847,-2846,-2845,-2844,-2844,-2843,-2842,-2842,-2841,-2840,
+-2840,-2839,-2838,-2838,-2837,-2837,-2836,-2836,-2835,-2835,-2834,-2834,-2833,-2833,-2832,-2832,-2831,-2831,-2831,-2830,-2830,
+-2830,-2829,-2829,-2829,-2828,-2828,-2828,-2827,-2827,-2827,-2827,-2826,-2826,-2826,-2826,-2826,-2826,-2825,-2825,-2825,-2825,
+-2825,-2825,-2824,-2824,-2824,-2824,-2824,-2824,-2824,-2824,-2824,-2824,-2824,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,
+-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2823,-2822,-2822,-2822,
+-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2822,-2821,-2821,-2821,-2821,-2821,-2821,
+-2821,-2821,-2821,-2821,-2820,-2820,-2820,-2820,-2820,-2820,-2820,-2820,-2819,-2819,-2819,-2819,-2819,-2819,-2818,-2818,-2818,
+-2818,-2818,-2818,-2817,-2817,-2817,-2817,-2816,-2816,-2816,-2816,-2816,-2815,-2815,-2815,-2815,-2814,-2814,-2814,-2814,-2813,
+-2813,-2813,-2813,-2812,-2812,-2812,-2811,-2811,-2811,-2811,-2810,-2810,-2810,-2809,-2809,-2809,-2809,-2808,-2808,-2808,-2807,
+-2807,-2807,-2806,-2806,-2806,-2805,-2805,-2805,-2804,-2804,-2804,-2804,-2803,-2803,-2803,-2802,-2802,-2802,-2801,-2801,-2801,
+-2800,-2800,-2800,-2799,-2799,-2799,-2798,-2798,-2798,-2797,-2797,-2797,-2796,-2796,-2796,-2796,-2795,-2795,-2795,-2794,-2794,
+-2794,-2794,-2793,-2793,-2793,-2792,-2792,-2792,-2792,-2791,-2791,-2791,-2791,-2790,-2790,-2790,-2790,-2789,-2789,-2789,-2789,
+-2788,-2788,-2788,-2788,-2788,-2896,-2896,-2896,-2896,-2896,-2896,-2897,-2897,-2897,-2897,-2897,-2897,-2897,-2897,-2898,-2898,
+-2898,-2898,-2898,-2898,-2898,-2898,-2899,-2899,-2899,-2899,-2899,-2899,-2899,-2900,-2900,-2900,-2900,-2900,-2900,-2900,-2901,
+-2901,-2901,-2901,-2901,-2901,-2902,-2902,-2902,-2902,-2902,-2902,-2903,-2903,-2903,-2903,-2903,-2903,-2904,-2904,-2904,-2904,
+-2904,-2905,-2905,-2905,-2905,-2905,-2906,-2906,-2906,-2906,-2906,-2907,-2907,-2907,-2907,-2907,-2908,-2908,-2908,-2908,-2908,
+-2909,-2909,-2909,-2909,-2910,-2910,-2910,-2910,-2910,-2911,-2911,-2911,-2911,-2912,-2912,-2912,-2912,-2913,-2913,-2913,-2913,
+-2913,-2914,-2914,-2914,-2914,-2915,-2915,-2915,-2915,-2916,-2916,-2916,-2916,-2917,-2917,-2917,-2917,-2917,-2918,-2918,-2918,
+-2918,-2919,-2919,-2919,-2919,-2920,-2920,-2920,-2920,-2921,-2921,-2921,-2921,-2921,-2922,-2922,-2922,-2922,-2923,-2923,-2923,
+-2923,-2924,-2924,-2924,-2924,-2924,-2925,-2925,-2925,-2925,-2925,-2926,-2926,-2926,-2926,-2927,-2927,-2927,-2927,-2927,-2928,
+-2928,-2928,-2928,-2928,-2928,-2929,-2929,-2929,-2929,-2929,-2930,-2930,-2930,-2930,-2930,-2930,-2931,-2931,-2931,-2931,-2931,
+-2931,-2932,-2932,-2932,-2932,-2932,-2932,-2932,-2933,-2933,-2933,-2933,-2933,-2933,-2933,-2934,-2934,-2934,-2934,-2934,-2934,
+-2934,-2934,-2934,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2936,-2936,-2936,-2936,-2936,-2936,-2936,
+-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,
+-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,
+-2937,-2937,-2937,-2937,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,
+-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2939,-2939,-2939,-2939,-2939,-2939,
+-2939,-2939,-2939,-2939,-2939,-2939,-2939,-2940,-2940,-2940,-2940,-2940,-2940,-2940,-2940,-2940,-2940,-2941,-2941,-2941,-2941,
+-2941,-2941,-2941,-2942,-2942,-2942,-2942,-2942,-2942,-2943,-2943,-2943,-2943,-2943,-2943,-2944,-2944,-2944,-2944,-2944,-2945,
+-2945,-2945,-2945,-2946,-2946,-2946,-2946,-2947,-2947,-2947,-2947,-2948,-2948,-2948,-2948,-2949,-2949,-2949,-2950,-2950,-2950,
+-2950,-2951,-2951,-2951,-2952,-2952,-2952,-2953,-2953,-2953,-2954,-2954,-2955,-2955,-2955,-2956,-2956,-2956,-2957,-2957,-2958,
+-2958,-2958,-2959,-2959,-2960,-2960,-2960,-2961,-2961,-2962,-2962,-2963,-2963,-2964,-2964,-2964,-2965,-2965,-2966,-2966,-2967,
+-2967,-2968,-2968,-2969,-2969,-2970,-2970,-2971,-2971,-2972,-2972,-2973,-2973,-2974,-2974,-2975,-2975,-2976,-2976,-2977,-2977,
+-2978,-2978,-2979,-2979,-2980,-2980,-2981,-2981,-2982,-2983,-2983,-2984,-2984,-2985,-2985,-2986,-2986,-2987,-2987,-2988,-2989,
+-2989,-2990,-2990,-2991,-2991,-2992,-2992,-2993,-2994,-2994,-2995,-2995,-2996,-2996,-2997,-2997,-2998,-2998,-2999,-3000,-3000,
+-3001,-3001,-3002,-3002,-3003,-3003,-3004,-3004,-3005,-3005,-3006,-3007,-3007,-3008,-3008,-3009,-3009,-3010,-3010,-3011,-3011,
+-3012,-3012,-3013,-3013,-3014,-3014,-3015,-3015,-3016,-3016,-3017,-3017,-3018,-3018,-3019,-3019,-3020,-3020,-3021,-3021,-3022,
+-3022,-3022,-3023,-3023,-3024,-3024,-3025,-3025,-3026,-3026,-3026,-3027,-3027,-3028,-3028,-3028,-3029,-3029,-3030,-3030,-3030,
+-3031,-3031,-3032,-3032,-3032,-3033,-3033,-3033,-3034,-3034,-3034,-3035,-3035,-3035,-3036,-3036,-3036,-3037,-3037,-3037,-3038,
+-3038,-3038,-3039,-3039,-3039,-3039,-3040,-3040,-3040,-3040,-3041,-3041,-3041,-3041,-3042,-3042,-3042,-3042,-3043,-3043,-3043,
+-3043,-3043,-3044,-3044,-3044,-3044,-3044,-3045,-3045,-3045,-3045,-3045,-3046,-3046,-3046,-3046,-3046,-3046,-3046,-3047,-3047,
+-3047,-3047,-3047,-3047,-3047,-3047,-3047,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3048,-3049,-3049,-3049,
+-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,
+-3049,-3049,-3049,-3049,-3049,-3049,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3049,-3049,-3049,-3049,-3049,-3049,-3049,
+-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,
+-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3049,-3050,
+-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3050,-3051,
+-3051,-3051,-3051,-3051,-3051,-3051,-3051,-3051,-3051,-3051,-3052,-3052,-3052,-3052,-3052,-3052,-3052,-3052,-3053,-3053,-3053,
+-3053,-3053,-3053,-3053,-3054,-3054,-3054,-3054,-3054,-3054,-3055,-3055,-3055,-3055,-3055,-3055,-3056,-3056,-3056,-3056,-3056,
+-3057,-3057,-3057,-3057,-3057,-3058,-3058,-3058,-3058,-3059,-3059,-3059,-3059,-3060,-3060,-3060,-3060,-3061,-3061,-3061,-3061,
+-3062,-3062,-3062,-3062,-3063,-3063,-3063,-3063,-3064,-3064,-3064,-3065,-3065,-3065,-3065,-3066,-3066,-3066,-3067,-3067,-3067,
+-3068,-3068,-3068,-3068,-3069,-3069,-3069,-3070,-3070,-3070,-3071,-3071,-3071,-3072,-3072,-3072,-3073,-3073,-3073,-3074,-3074,
+-3074,-3075,-3075,-3075,-3075,-3076,-3076,-3076,-3077,-3077,-3077,-3078,-3078,-3078,-3079,-3079,-3079,-3080,-3080,-3080,-3081,
+-3081,-3081,-3082,-3082,-3082,-3083,-3083,-3083,-3083,-3084,-3084,-3084,-3085,-3085,-3085,-3086,-3086,-3086,-3086,-3087,-3087,
+-3087,-3088,-3088,-3088,-3088,-3089,-3089,-3089,-3089,-3090,-3090,-3090,-3090,-3091,-3091,-3091,-3091,-3092,-3092,-3092,-3092,
+-3092,-3093,-3093,-3093,-3093,-3093,-3094,-3094,-3094,-3094,-3094,-3094,-3095,-3095,-3095,-3095,-3095,-3095,-3095,-3096,-3096,
+-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3097,-3097,-3097,-3097,-3097,-3097,-3097,-3097,-3097,-3097,
+-3097,-3097,-3097,-3097,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3096,-3095,-3095,-3095,-3095,-3095,
+-3095,-3094,-3094,-3094,-3094,-3094,-3093,-3093,-3093,-3093,-3093,-3092,-3092,-3092,-3092,-3091,-3091,-3091,-3090,-3090,-3090,
+-3089,-3089,-3089,-3088,-3088,-3088,-3087,-3087,-3087,-3086,-3086,-3085,-3085,-3084,-3084,-3084,-3083,-3083,-3082,-3082,-3081,
+-3081,-3080,-3080,-3079,-3079,-3078,-3078,-3077,-3077,-3076,-3076,-3075,-3074,-3074,-3073,-3073,-3072,-3071,-3071,-3070,-3069,
+-3069,-3068,-3067,-3067,-3066,-3065,-3065,-3064,-3063,-3063,-3062,-3061,-3060,-3060,-3059,-3058,-3057,-3057,-3056,-3055,-3054,
+-3053,-3053,-3052,-3051,-3050,-3049,-3049,-3048,-3047,-3046,-3045,-3044,-3043,-3042,-3042,-3041,-3040,-3039,-3038,-3037,-3036,
+-3035,-3034,-3033,-3032,-3031,-3030,-3030,-3029,-3028,-3027,-3026,-3025,-3024,-3023,-3022,-3021,-3020,-3019,-3018,-3017,-3016,
+-3015,-3013,-3012,-3011,-3010,-3009,-3008,-3007,-3006,-3005,-3004,-3003,-3002,-3001,-3000,-2999,-2998,-2997,-2996,-2994,-2993,
+-2992,-2991,-2990,-2989,-2988,-2987,-2986,-2985,-2984,-2983,-2981,-2980,-2979,-2978,-2977,-2976,-2975,-2974,-2973,-2972,-2971,
+-2970,-2969,-2968,-2966,-2965,-2964,-2963,-2962,-2961,-2960,-2959,-2958,-2957,-2956,-2955,-2954,-2953,-2952,-2951,-2950,-2949,
+-2948,-2947,-2946,-2945,-2944,-2943,-2942,-2941,-2940,-2939,-2938,-2937,-2936,-2935,-2934,-2934,-2933,-2932,-2931,-2930,-2929,
+-2928,-2927,-2927,-2926,-2925,-2924,-2923,-2922,-2922,-2921,-2920,-2919,-2918,-2918,-2917,-2916,-2915,-2915,-2914,-2913,-2913,
+-2912,-2911,-2911,-2910,-2909,-2909,-2908,-2907,-2907,-2906,-2905,-2905,-2904,-2904,-2903,-2903,-2902,-2901,-2901,-2900,-2900,
+-2899,-2899,-2898,-2898,-2897,-2897,-2897,-2896,-2896,-2895,-2895,-2894,-2894,-2894,-2893,-2893,-2893,-2892,-2892,-2892,-2891,
+-2891,-2891,-2890,-2890,-2890,-2889,-2889,-2889,-2889,-2888,-2888,-2888,-2888,-2888,-2887,-2887,-2887,-2887,-2887,-2886,-2886,
+-2886,-2886,-2886,-2886,-2886,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2884,-2884,-2884,-2884,-2884,-2884,
+-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,-2884,
+-2884,-2884,-2884,-2884,-2884,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2885,-2886,
+-2886,-2886,-2886,-2886,-2886,-2886,-2886,-2886,-2886,-2886,-2886,-2887,-2887,-2887,-2887,-2887,-2887,-2887,-2887,-2887,-2887,
+-2887,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2888,-2889,-2889,-2889,-2889,-2889,-2889,-2889,-2889,
+-2889,-2889,-2889,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2890,-2891,-2891,-2891,-2891,-2891,-2891,
+-2891,-2891,-2891,-2891,-2891,-2891,-2891,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2892,-2893,
+-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2893,-2894,-2894,-2894,-2894,-2894,-2894,-2894,-2894,-2894,
+-2894,-2894,-2895,-2895,-2895,-2895,-2895,-2895,-2895,-2895,-2895,-2895,-2895,-2896,-2896,-2896,-2896,-2896,-2960,-2960,-2961,
+-2961,-2961,-2961,-2961,-2962,-2962,-2962,-2962,-2962,-2963,-2963,-2963,-2963,-2963,-2964,-2964,-2964,-2964,-2964,-2965,-2965,
+-2965,-2965,-2966,-2966,-2966,-2966,-2966,-2967,-2967,-2967,-2967,-2967,-2968,-2968,-2968,-2968,-2968,-2968,-2969,-2969,-2969,
+-2969,-2969,-2970,-2970,-2970,-2970,-2970,-2971,-2971,-2971,-2971,-2971,-2972,-2972,-2972,-2972,-2972,-2972,-2973,-2973,-2973,
+-2973,-2973,-2973,-2974,-2974,-2974,-2974,-2974,-2974,-2975,-2975,-2975,-2975,-2975,-2975,-2976,-2976,-2976,-2976,-2976,-2976,
+-2977,-2977,-2977,-2977,-2977,-2977,-2977,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2979,-2979,-2979,-2979,-2979,-2979,-2979,
+-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2982,-2982,-2982,-2982,
+-2982,-2982,-2982,-2982,-2982,-2982,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2984,-2984,-2984,-2984,
+-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,
+-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2986,-2986,-2986,-2986,
+-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,
+-2986,-2986,-2986,-2986,-2986,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,
+-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2984,-2984,-2984,
+-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,
+-2984,-2984,-2984,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,
+-2983,-2983,-2983,-2983,-2983,-2983,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,-2984,
+-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2986,-2987,
+-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2988,-2988,-2988,-2988,-2988,-2988,-2989,-2989,-2989,-2989,-2989,-2989,-2989,-2990,
+-2990,-2990,-2990,-2990,-2990,-2991,-2991,-2991,-2991,-2991,-2992,-2992,-2992,-2992,-2992,-2993,-2993,-2993,-2993,-2993,-2994,
+-2994,-2994,-2994,-2994,-2995,-2995,-2995,-2995,-2996,-2996,-2996,-2996,-2996,-2997,-2997,-2997,-2997,-2998,-2998,-2998,-2998,
+-2999,-2999,-2999,-2999,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3002,-3002,-3002,-3002,-3003,-3003,-3003,-3003,-3004,
+-3004,-3004,-3004,-3005,-3005,-3005,-3005,-3006,-3006,-3006,-3007,-3007,-3007,-3007,-3008,-3008,-3008,-3008,-3009,-3009,-3009,
+-3010,-3010,-3010,-3010,-3011,-3011,-3011,-3012,-3012,-3012,-3012,-3013,-3013,-3013,-3013,-3014,-3014,-3014,-3015,-3015,-3015,
+-3015,-3016,-3016,-3016,-3017,-3017,-3017,-3017,-3018,-3018,-3018,-3019,-3019,-3019,-3019,-3020,-3020,-3020,-3020,-3021,-3021,
+-3021,-3022,-3022,-3022,-3022,-3023,-3023,-3023,-3023,-3024,-3024,-3024,-3025,-3025,-3025,-3025,-3026,-3026,-3026,-3026,-3027,
+-3027,-3027,-3027,-3028,-3028,-3028,-3028,-3029,-3029,-3029,-3029,-3030,-3030,-3030,-3030,-3031,-3031,-3031,-3031,-3032,-3032,
+-3032,-3032,-3033,-3033,-3033,-3033,-3034,-3034,-3034,-3034,-3035,-3035,-3035,-3035,-3036,-3036,-3036,-3036,-3036,-3037,-3037,
+-3037,-3037,-3038,-3038,-3038,-3038,-3039,-3039,-3039,-3039,-3039,-3040,-3040,-3040,-3040,-3040,-3041,-3041,-3041,-3041,-3042,
+-3042,-3042,-3042,-3042,-3043,-3043,-3043,-3043,-3043,-3044,-3044,-3044,-3044,-3044,-3045,-3045,-3045,-3045,-3045,-3046,-3046,
+-3046,-3046,-3046,-3047,-3047,-3047,-3047,-3047,-3048,-3048,-3048,-3048,-3048,-3048,-3049,-3049,-3049,-3049,-3049,-3050,-3050,
+-3050,-3050,-3050,-3051,-3051,-3051,-3051,-3051,-3051,-3052,-3052,-3052,-3052,-3052,-3053,-3053,-3053,-3053,-3053,-3053,-3054,
+-3054,-3054,-3054,-3054,-3055,-3055,-3055,-3055,-3055,-3055,-3056,-3056,-3056,-3056,-3056,-3057,-3057,-3057,-3057,-3057,-3057,
+-3058,-3058,-3058,-3058,-3058,-3059,-3059,-3059,-3059,-3059,-3059,-3060,-3060,-3060,-3060,-3060,-3061,-3061,-3061,-3061,-3061,
+-3062,-3062,-3062,-3062,-3062,-3062,-3063,-3063,-3063,-3063,-3063,-3064,-3064,-3064,-3064,-3064,-3065,-3065,-3065,-3065,-3065,
+-3065,-3066,-3066,-3066,-3066,-3066,-3067,-3067,-3067,-3067,-3067,-3068,-3068,-3068,-3068,-3068,-3068,-3069,-3069,-3069,-3069,
+-3069,-3070,-3070,-3070,-3070,-3070,-3071,-3071,-3071,-3071,-3071,-3072,-3072,-3072,-3072,-3072,-3072,-3073,-3073,-3073,-3073,
+-3073,-3074,-3074,-3074,-3074,-3074,-3074,-3075,-3075,-3075,-3075,-3075,-3076,-3076,-3076,-3076,-3076,-3076,-3077,-3077,-3077,
+-3077,-3077,-3078,-3078,-3078,-3078,-3078,-3078,-3079,-3079,-3079,-3079,-3079,-3079,-3079,-3080,-3080,-3080,-3080,-3080,-3080,
+-3081,-3081,-3081,-3081,-3081,-3081,-3081,-3082,-3082,-3082,-3082,-3082,-3082,-3082,-3083,-3083,-3083,-3083,-3083,-3083,-3083,
+-3083,-3083,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3085,
+-3085,-3085,-3085,-3085,-3085,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,
+-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3086,-3085,-3085,-3085,
+-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3085,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3084,-3083,-3083,-3083,
+-3083,-3083,-3083,-3083,-3082,-3082,-3082,-3082,-3082,-3081,-3081,-3081,-3081,-3081,-3080,-3080,-3080,-3080,-3080,-3079,-3079,
+-3079,-3079,-3078,-3078,-3078,-3078,-3077,-3077,-3077,-3077,-3076,-3076,-3076,-3076,-3075,-3075,-3075,-3074,-3074,-3074,-3073,
+-3073,-3073,-3072,-3072,-3072,-3071,-3071,-3071,-3070,-3070,-3070,-3069,-3069,-3068,-3068,-3068,-3067,-3067,-3067,-3066,-3066,
+-3065,-3065,-3064,-3064,-3064,-3063,-3063,-3062,-3062,-3061,-3061,-3061,-3060,-3060,-3059,-3059,-3058,-3058,-3057,-3057,-3056,
+-3056,-3055,-3055,-3054,-3054,-3053,-3053,-3052,-3052,-3051,-3051,-3050,-3050,-3049,-3049,-3048,-3048,-3047,-3046,-3046,-3045,
+-3045,-3044,-3044,-3043,-3043,-3042,-3041,-3041,-3040,-3040,-3039,-3039,-3038,-3037,-3037,-3036,-3036,-3035,-3034,-3034,-3033,
+-3033,-3032,-3031,-3031,-3030,-3029,-3029,-3028,-3028,-3027,-3026,-3026,-3025,-3024,-3024,-3023,-3023,-3022,-3021,-3021,-3020,
+-3019,-3019,-3018,-3017,-3017,-3016,-3015,-3015,-3014,-3014,-3013,-3012,-3012,-3011,-3010,-3010,-3009,-3008,-3008,-3007,-3006,
+-3006,-3005,-3004,-3004,-3003,-3002,-3002,-3001,-3001,-3000,-2999,-2999,-2998,-2997,-2997,-2996,-2995,-2995,-2994,-2993,-2993,
+-2992,-2992,-2991,-2990,-2990,-2989,-2988,-2988,-2987,-2986,-2986,-2985,-2985,-2984,-2983,-2983,-2982,-2982,-2981,-2980,-2980,
+-2979,-2979,-2978,-2977,-2977,-2976,-2976,-2975,-2974,-2974,-2973,-2973,-2972,-2972,-2971,-2970,-2970,-2969,-2969,-2968,-2968,
+-2967,-2967,-2966,-2966,-2965,-2965,-2964,-2964,-2963,-2963,-2962,-2962,-2961,-2961,-2960,-2960,-2959,-2959,-2958,-2958,-2957,
+-2957,-2956,-2956,-2955,-2955,-2955,-2954,-2954,-2953,-2953,-2952,-2952,-2952,-2951,-2951,-2950,-2950,-2950,-2949,-2949,-2949,
+-2948,-2948,-2947,-2947,-2947,-2946,-2946,-2946,-2945,-2945,-2945,-2944,-2944,-2944,-2944,-2943,-2943,-2943,-2942,-2942,-2942,
+-2942,-2941,-2941,-2941,-2941,-2940,-2940,-2940,-2940,-2939,-2939,-2939,-2939,-2939,-2938,-2938,-2938,-2938,-2938,-2938,-2937,
+-2937,-2937,-2937,-2937,-2937,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2935,-2935,-2935,-2935,-2935,-2935,-2935,
+-2935,-2935,-2935,-2935,-2935,-2935,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,
+-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2934,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,-2935,
+-2935,-2935,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2936,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2937,-2938,
+-2938,-2938,-2938,-2938,-2938,-2938,-2938,-2939,-2939,-2939,-2939,-2939,-2939,-2940,-2940,-2940,-2940,-2940,-2940,-2941,-2941,
+-2941,-2941,-2941,-2941,-2942,-2942,-2942,-2942,-2942,-2942,-2943,-2943,-2943,-2943,-2943,-2944,-2944,-2944,-2944,-2944,-2945,
+-2945,-2945,-2945,-2945,-2946,-2946,-2946,-2946,-2946,-2947,-2947,-2947,-2947,-2947,-2948,-2948,-2948,-2948,-2948,-2949,-2949,
+-2949,-2949,-2950,-2950,-2950,-2950,-2950,-2951,-2951,-2951,-2951,-2951,-2952,-2952,-2952,-2952,-2953,-2953,-2953,-2953,-2953,
+-2954,-2954,-2954,-2954,-2954,-2955,-2955,-2955,-2955,-2956,-2956,-2956,-2956,-2956,-2957,-2957,-2957,-2957,-2957,-2958,-2958,
+-2958,-2958,-2959,-2959,-2959,-2959,-2959,-2960,-2960,-2960,-2954,-2954,-2954,-2955,-2955,-2955,-2955,-2955,-2955,-2955,-2955,
+-2955,-2955,-2955,-2956,-2956,-2956,-2956,-2956,-2956,-2956,-2956,-2956,-2956,-2956,-2957,-2957,-2957,-2957,-2957,-2957,-2957,
+-2957,-2957,-2957,-2957,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2958,-2959,-2959,-2959,-2959,-2959,
+-2959,-2959,-2959,-2959,-2959,-2959,-2959,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2960,-2961,-2961,
+-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2961,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,-2962,
+-2962,-2962,-2962,-2962,-2962,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,-2963,
+-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2964,-2965,-2965,-2965,
+-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2965,-2966,
+-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2966,
+-2966,-2966,-2966,-2966,-2966,-2966,-2966,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,
+-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,
+-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2967,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,
+-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,
+-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,
+-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2968,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,
+-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2969,
+-2969,-2969,-2969,-2969,-2969,-2969,-2969,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,
+-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2970,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,
+-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2971,-2972,-2972,-2972,-2972,-2972,-2972,-2972,-2972,-2972,-2972,
+-2972,-2972,-2972,-2972,-2972,-2972,-2972,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,-2973,
+-2973,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2974,-2975,-2975,-2975,-2975,-2975,-2975,-2975,
+-2975,-2975,-2975,-2975,-2975,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2976,-2977,-2977,-2977,-2977,-2977,
+-2977,-2977,-2977,-2977,-2977,-2977,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2978,-2979,-2979,-2979,-2979,-2979,
+-2979,-2979,-2979,-2979,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2980,-2981,-2981,-2981,-2981,-2981,-2981,-2981,-2981,
+-2981,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2982,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2983,-2984,-2984,
+-2984,-2984,-2984,-2984,-2984,-2984,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2985,-2986,-2986,-2986,-2986,-2986,-2986,-2986,
+-2986,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2987,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2988,-2989,-2989,-2989,-2989,
+-2989,-2989,-2989,-2989,-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2990,-2991,-2991,-2991,-2991,-2991,-2991,-2991,-2991,-2992,
+-2992,-2992,-2992,-2992,-2992,-2992,-2992,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2993,-2994,-2994,-2994,-2994,-2994,-2994,
+-2994,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2995,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2996,-2997,-2997,-2997,-2997,
+-2997,-2997,-2997,-2997,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2998,-2999,-2999,-2999,-2999,-2999,-2999,-2999,-2999,
+-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3000,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3001,-3002,-3002,-3002,-3002,
+-3002,-3002,-3002,-3002,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3003,-3004,-3004,-3004,-3004,-3004,-3004,-3004,-3004,
+-3004,-3004,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,-3006,
+-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,
+-3008,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3010,-3010,-3010,-3010,-3010,-3010,-3010,
+-3010,-3010,-3010,-3010,-3010,-3010,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,
+-3011,-3011,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,
+-3012,-3012,-3012,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,
+-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,
+-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,
+-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3013,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,-3012,
+-3012,-3012,-3012,-3012,-3012,-3012,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3011,-3010,
+-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3010,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3009,-3008,
+-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3008,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3007,-3006,-3006,-3006,-3006,-3006,
+-3006,-3006,-3005,-3005,-3005,-3005,-3005,-3005,-3005,-3004,-3004,-3004,-3004,-3004,-3004,-3003,-3003,-3003,-3003,-3003,-3003,
+-3003,-3002,-3002,-3002,-3002,-3002,-3002,-3001,-3001,-3001,-3001,-3001,-3000,-3000,-3000,-3000,-3000,-3000,-2999,-2999,-2999,
+-2999,-2999,-2998,-2998,-2998,-2998,-2998,-2998,-2997,-2997,-2997,-2997,-2997,-2996,-2996,-2996,-2996,-2996,-2995,-2995,-2995,
+-2995,-2995,-2994,-2994,-2994,-2994,-2993,-2993,-2993,-2993,-2993,-2992,-2992,-2992,-2992,-2992,-2991,-2991,-2991,-2991,-2990,
+-2990,-2990,-2990,-2990,-2989,-2989,-2989,-2989,-2988,-2988,-2988,-2988,-2987,-2987,-2987,-2987,-2987,-2986,-2986,-2986,-2986,
+-2985,-2985,-2985,-2985,-2984,-2984,-2984,-2984,-2984,-2983,-2983,-2983,-2983,-2982,-2982,-2982,-2982,-2981,-2981,-2981,-2981,
+-2980,-2980,-2980,-2980,-2980,-2979,-2979,-2979,-2979,-2978,-2978,-2978,-2978,-2977,-2977,-2977,-2977,-2976,-2976,-2976,-2976,
+-2975,-2975,-2975,-2975,-2975,-2974,-2974,-2974,-2974,-2973,-2973,-2973,-2973,-2972,-2972,-2972,-2972,-2971,-2971,-2971,-2971,
+-2971,-2970,-2970,-2970,-2970,-2969,-2969,-2969,-2969,-2968,-2968,-2968,-2968,-2968,-2967,-2967,-2967,-2967,-2966,-2966,-2966,
+-2966,-2966,-2965,-2965,-2965,-2965,-2965,-2964,-2964,-2964,-2964,-2963,-2963,-2963,-2963,-2963,-2962,-2962,-2962,-2962,-2962,
+-2961,-2961,-2961,-2961,-2961,-2960,-2960,-2960,-2960,-2960,-2959,-2959,-2959,-2959,-2959,-2958,-2958,-2958,-2958,-2958,-2958,
+-2957,-2957,-2957,-2957,-2957,-2957,-2956,-2956,-2956,-2956,-2956,-2956,-2955,-2955,-2955,-2955,-2955,-2955,-2954,-2954,-2954,
+-2954,-2954,-2954,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2951,-2951,-2951,
+-2951,-2951,-2951,-2951,-2951,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2949,-2949,-2949,-2949,-2949,-2949,-2949,
+-2949,-2949,-2949,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2947,-2947,-2947,-2947,-2947,-2947,
+-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,
+-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,
+-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,
+-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,-2946,
+-2946,-2946,-2946,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,-2947,
+-2947,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2948,-2949,-2949,-2949,-2949,
+-2949,-2949,-2949,-2949,-2949,-2949,-2949,-2949,-2949,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,-2950,
+-2950,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2951,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,-2952,
+-2952,-2952,-2952,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2954,-2954,-2954,-2954,-2954,-2954,-2954,
+-2954,-2954,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,
+-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953,-2953 };
+
+}
+
+#endif // OSGEARTH_VDATUM_EGM96_GRID_H
diff --git a/src/osgEarthDrivers/vpb/ReaderWriterVPB.cpp b/src/osgEarthDrivers/vpb/ReaderWriterVPB.cpp
index dca2f8f..e194d79 100644
--- a/src/osgEarthDrivers/vpb/ReaderWriterVPB.cpp
+++ b/src/osgEarthDrivers/vpb/ReaderWriterVPB.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,9 +19,10 @@
 
 #include <osgEarth/Registry>
 #include <osgEarth/TileSource>
-#include <osgEarth/HTTPClient>
 #include <osgEarth/FileUtils>
 #include <osgEarth/ThreadingUtils>
+#include <osgEarth/URI>
+#include <osgEarth/HTTPClient>
 
 #include <osg/Notify>
 #include <osg/io_utils>
@@ -73,7 +74,7 @@ public:
         if (terrainTile)
         {
             OE_DEBUG<<"VPB: Found terrain tile TileID("<<
-				TileKey::getLOD(terrainTile->getTileID())<<", "<<
+                TileKey::getLOD(terrainTile->getTileID())<<", "<<
                 terrainTile->getTileID().x<<", "<<
                 terrainTile->getTileID().y<<")"<<std::endl;
             
@@ -147,18 +148,20 @@ public:
         _options( in_options ),
         //_directory_structure( FLAT_TASK_DIRECTORIES ),
         _profile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() ),
-        _maxNumTilesInCache( 128 ),
+        _maxNumTilesInCache( in_options.terrainTileCacheSize().value() ),
         _initialized( false )
     {
-	}
-	
-	void initialize( const std::string& referenceURI)
-	{
+    }
+
+    void initialize( const osgDB::Options* dbOptions )
+    {
         Threading::ScopedMutexLock lock( _initializeMutex );
 
         if ( _initialized )
             return;
 
+        _dbOptions = dbOptions;
+
         unsigned int numTilesWideAtLod0, numTilesHighAtLod0;
         _profile->getNumTiles(0, numTilesWideAtLod0, numTilesHighAtLod0);
 
@@ -167,22 +170,14 @@ public:
 
         if ( !_url.empty() )
         {
-			//If the path doesn't contain a server address, get the full path to the file.
-			if (!osgDB::containsServerAddress( *_url ))
-			{
-                //todo: obselete..?
-                _url = URI(_url.full(), referenceURI);
-				//_url = osgEarth::getFullPath(referenceURI, _url);
-			}
-			
-            osg::ref_ptr<osgDB::ReaderWriter::Options> localOptions = new osgDB::ReaderWriter::Options;
-            localOptions->setPluginData("osgearth_vpb Plugin",(void*)(1));
-            //_rootNode = osgDB::readNodeFile( _url, localOptions.get() );
+            osg::ref_ptr<osgDB::Options> localOptions = Registry::instance()->cloneOrCreateOptions();
 
-            HTTPClient::ResultCode rc = HTTPClient::readNodeFile( _url.full(), _rootNode, localOptions.get() );
+            localOptions->setPluginData("osgearth_vpb Plugin",(void*)(1));
+            ReadResult rc = _url.readNode( localOptions.get() );
 
-            if ( rc == HTTPClient::RESULT_OK && _rootNode.valid() )
+            if ( rc.succeeded() )
             {
+                _rootNode = rc.getNode();
                 _baseNameToUse = _options.baseName().value();
 
                 _path = osgDB::getFilePath( *_url );
@@ -192,7 +187,7 @@ public:
                 
                 OE_INFO << LC << "Loaded root "<< _url.full() <<", path="<<_path<<" base_name="<<_baseNameToUse<<" extension="<<_extension<<std::endl;
                 
-                std::string srs = _profile->getSRS()->getInitString(); //.srs();
+                std::string srs = _profile->getSRS()->getHorizInitString(); //->getInitString(); //.srs();
                 
                 osg::CoordinateSystemNode* csn = dynamic_cast<osg::CoordinateSystemNode*>(_rootNode.get());
                 if (csn)
@@ -213,8 +208,8 @@ public:
                     ct.getRange(min_x, min_y, max_x, max_y);
 
                     OE_DEBUG << LC << "range("<<min_x<<", "<<min_y<<", "<<max_x<<", "<<max_y<< ")" <<std::endl;
-					OE_DEBUG << LC << "range("<<osg::RadiansToDegrees(min_x)<<", "<<osg::RadiansToDegrees(min_y)<<", "
-						<<osg::RadiansToDegrees(max_x)<<", "<<osg::RadiansToDegrees(max_y)<< ")" <<std::endl;
+                    OE_DEBUG << LC << "range("<<osg::RadiansToDegrees(min_x)<<", "<<osg::RadiansToDegrees(min_y)<<", "
+                        <<osg::RadiansToDegrees(max_x)<<", "<<osg::RadiansToDegrees(max_y)<< ")" <<std::endl;
 
                     srs = locator->getCoordinateSystem();
 
@@ -262,7 +257,7 @@ public:
             }
             else
             {
-                OE_WARN << LC << HTTPClient::getResultCodeString(rc) << ": " << *_url << std::endl;
+                OE_WARN << LC << rc.getResultCodeString() << ": " << *_url << std::endl;
                 _url = URI();
             }
         }
@@ -367,27 +362,17 @@ public:
             OE_DEBUG << LC << "file has been found in black list : "<<filename<<std::endl;
             insertTile(tileID, 0);
             return; //return 0;
-        }
-
-        //    OpenThreads::ScopedLock<OpenThreads::Mutex> lock(_blacklistMutex);
-        //    if (_blacklistedFilenames.count(filename)==1)
-        //    {
-        //        OE_DEBUG<<"VPB: file has been found in black list : "<<filename<<std::endl;
-        //        insertTile(tileID, 0);
-        //        return 0;
-        //    }
-        //}
-        
+        }        
 
-        osg::ref_ptr<osgDB::ReaderWriter::Options> localOptions = new osgDB::ReaderWriter::Options;
+        osg::ref_ptr<osgDB::Options> localOptions = Registry::instance()->cloneOrCreateOptions();
+        CachePolicy::NO_CACHE.apply( localOptions.get() );
         localOptions->setPluginData("osgearth_vpb Plugin",(void*)(1));
 
-
-        //osg::ref_ptr<osg::Node> node = osgDB::readNodeFile(filename, localOptions.get());
-        osg::ref_ptr<osg::Node> node;
-        HTTPClient::ResultCode result = HTTPClient::readNodeFile( filename, node, localOptions.get(), progress );
-        if ( result == HTTPClient::RESULT_OK && node.valid() )
+        ReadResult r = URI(filename).readNode( localOptions.get(), progress );
+        if ( r.succeeded() )
         {
+            osg::Node* node = r.getNode();
+
             //OE_INFO << LC << "Loaded model "<<filename<<std::endl;
             CollectTiles ct;
             node->accept(ct);
@@ -427,7 +412,7 @@ public:
         else
         {
             // in the case of an "unrecoverable" error, black-list the URL for this tile.
-            if ( ! HTTPClient::isRecoverable( result ) )
+            if ( ! HTTPClient::isRecoverable( r.code() ) )
             {
                 Threading::ScopedWriteLock exclusiveLock( _blacklistMutex );
                 _blacklistedFilenames.insert( filename );
@@ -511,6 +496,8 @@ public:
 
     bool _initialized;
     Threading::Mutex _initializeMutex;
+
+    osg::ref_ptr<const osgDB::Options> _dbOptions;
     
 };
 
@@ -518,89 +505,86 @@ class VPBSource : public TileSource
 {
 public:
     VPBSource( VPBDatabase* vpbDatabase, const VPBOptions& in_options ) : 
-        TileSource(in_options),
-        _vpbDatabase(vpbDatabase),
-        _options( in_options ),
-        _referenceUri()
+        TileSource   ( in_options  ),
+        _vpbDatabase ( vpbDatabase ),
+        _options     ( in_options  )
     {
         //nop
-    }
+     }
 
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
-	    _referenceUri = referenceURI;
-
-	    _vpbDatabase->initialize(referenceURI);
-
-	    if ( overrideProfile)
-	    {
-		    setProfile( overrideProfile );
-	    }
-	    else
-	    {
-		    setProfile(_vpbDatabase->_profile.get());
-	    }
+        _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        _vpbDatabase->initialize( _dbOptions.get() );
+
+        if ( !getProfile() )
+        {
+            setProfile(_vpbDatabase->_profile.get());
+        }
+
+        return STATUS_OK;
     }
-    
-	osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
-	{
-		osg::Image * ret = NULL;
-		//TODO:  Make VPB driver use progress callback
-		osg::ref_ptr<osgTerrain::TerrainTile> tile;
+
+    osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
+    {
+        osg::Image * ret = NULL;
+        //TODO:  Make VPB driver use progress callback
+        osg::ref_ptr<osgTerrain::TerrainTile> tile;
         _vpbDatabase->getTerrainTile(key, progress, tile);
-		if (tile.valid())
-		{        
-			int layerNum = _options.layer().value();
-			const optional<std::string> & layerSetName = _options.layerSetName();
-
-			int numColorLayers = (int)tile->getNumColorLayers();
-			if(layerNum > numColorLayers)
-				layerNum = 0;
-			if (layerNum < numColorLayers)
-			{
-				osgTerrain::Layer* layer = tile->getColorLayer(layerNum);
-
-				osgTerrain::ImageLayer* imageLayer = dynamic_cast<osgTerrain::ImageLayer*>(layer);
-				if (imageLayer)
-				{
-					OE_DEBUG << LC << "createImage(" << key.str() << " layerNum=" << layerNum << ") successful." <<std::endl;
-					ret = new osg::Image( *imageLayer->getImage() );
-				}
-				else
-				{
-					osgTerrain::SwitchLayer* switchLayer = dynamic_cast<osgTerrain::SwitchLayer*>(layer);
-					if (switchLayer && layerSetName.isSet())
-					{
-						for(unsigned int si=0; !imageLayer && si<switchLayer->getNumLayers(); ++si)
-						{
-							if(switchLayer->getSetName(si) == layerSetName.value())
-							{
-								imageLayer = dynamic_cast<osgTerrain::ImageLayer*>(switchLayer->getLayer(si));
-							}
-						}
-					}
-					if(imageLayer)
-					{
-						OE_DEBUG << LC << "createImage(" << key.str() << " layerSet=" << layerSetName.value() << ") successful." <<std::endl;
-						ret = new osg::Image( *imageLayer->getImage() );
-					}
-				}
-			}
-			if(!ret)
-			{
-				OE_DEBUG << LC << "createImage(" << key.str() << " layerSet=" << layerSetName.value() << " layerNum=" << layerNum << "/" << numColorLayers << ") failed." <<std::endl;
-			}
-		}
-		else
-		{
-			OE_DEBUG << LC << "createImage(" << key.str() << ") database retrieval failed." <<std::endl;
-		}
-		return ret;
-	}
-
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress
-                                         )
+        if (tile.valid())
+        {        
+            int layerNum = _options.layer().value();
+            const optional<std::string> & layerSetName = _options.layerSetName();
+
+            int numColorLayers = (int)tile->getNumColorLayers();
+            if(layerNum > numColorLayers)
+                layerNum = 0;
+            if (layerNum < numColorLayers)
+            {
+                osgTerrain::Layer* layer = tile->getColorLayer(layerNum);
+
+                osgTerrain::ImageLayer* imageLayer = dynamic_cast<osgTerrain::ImageLayer*>(layer);
+                if (imageLayer)
+                {
+                    OE_DEBUG << LC << "createImage(" << key.str() << " layerNum=" << layerNum << ") successful." <<std::endl;
+                    ret = new osg::Image( *imageLayer->getImage() );
+                }
+                else
+                {
+                    osgTerrain::SwitchLayer* switchLayer = dynamic_cast<osgTerrain::SwitchLayer*>(layer);
+                    if (switchLayer && layerSetName.isSet())
+                    {
+                        for(unsigned int si=0; !imageLayer && si<switchLayer->getNumLayers(); ++si)
+                        {
+                            if(switchLayer->getSetName(si) == layerSetName.value())
+                            {
+                                imageLayer = dynamic_cast<osgTerrain::ImageLayer*>(switchLayer->getLayer(si));
+                            }
+                        }
+                    }
+                    if(imageLayer)
+                    {
+                        OE_DEBUG << LC << "createImage(" << key.str() << " layerSet=" << layerSetName.value() << ") successful." <<std::endl;
+                        ret = new osg::Image( *imageLayer->getImage() );
+                    }
+                }
+            }
+            if(!ret)
+            {
+                OE_DEBUG << LC << "createImage(" << key.str() << " layerSet=" << layerSetName.value() << " layerNum=" << layerNum << "/" << numColorLayers << ") failed." <<std::endl;
+            }
+        }
+        else
+        {
+            OE_DEBUG << LC << "createImage(" << key.str() << ") database retrieval failed." <<std::endl;
+        }
+        return ret;
+    }
+
+    osg::HeightField* createHeightField( const TileKey&        key,
+                                         ProgressCallback*     progress )
     {
         osg::ref_ptr<osgTerrain::TerrainTile> tile;
         _vpbDatabase->getTerrainTile(key, progress, tile);
@@ -625,9 +609,9 @@ public:
     }
 
 private:
-    osg::ref_ptr<VPBDatabase> _vpbDatabase;
-    const VPBOptions _options;
-	std::string	_referenceUri;
+    osg::ref_ptr<VPBDatabase>    _vpbDatabase;
+    const VPBOptions             _options;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/vpb/VPBOptions b/src/osgEarthDrivers/vpb/VPBOptions
index a481a24..6e418b3 100644
--- a/src/osgEarthDrivers/vpb/VPBOptions
+++ b/src/osgEarthDrivers/vpb/VPBOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -65,6 +66,9 @@ namespace osgEarth { namespace Drivers
         optional<std::string>& baseName() { return _baseName; }
         const optional<std::string>& baseName() const { return _baseName; }
 
+        optional<int>& terrainTileCacheSize() { return _terrainTileCacheSize; }
+        const optional<int>& terrainTileCacheSize() const { return _terrainTileCacheSize; }
+        
     public:
         VPBOptions( const TileSourceOptions& opt =TileSourceOptions() ) : TileSourceOptions( opt ),
             _primarySplitLevel( INT_MAX ),
@@ -72,12 +76,16 @@ namespace osgEarth { namespace Drivers
             _layer( 0 ),
             _widthLod0( 1 ),
             _heightLod0( 1 ),
-            _dirStruct( DS_NESTED )
+            _dirStruct( DS_NESTED ),
+            _terrainTileCacheSize(128)
         {
             setDriver( "vpb" );
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~VPBOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
@@ -89,6 +97,7 @@ namespace osgEarth { namespace Drivers
             conf.updateIfSet("num_tiles_wide_at_lod_0", _widthLod0 );
             conf.updateIfSet("num_tiles_high_at_lod_0", _heightLod0 );
             conf.updateIfSet("base_name", _baseName );
+            conf.updateIfSet("terrain_tile_cache_size", _terrainTileCacheSize);
             if ( _dirStruct.isSet() ) {
                 if ( _dirStruct == DS_FLAT ) conf.update("directory_structure", "flat");
                 else if ( _dirStruct == DS_TASK ) conf.update("directory_structure", "task");
@@ -113,6 +122,7 @@ namespace osgEarth { namespace Drivers
             conf.getIfSet("numTilesWideAtLod0", _widthLod0 );
             conf.getIfSet("numTilesHighAtLod0", _heightLod0 );
             conf.getIfSet("base_name", _baseName);
+            conf.getIfSet("terrain_tile_cache_size", _terrainTileCacheSize);
             
             std::string ds = conf.value("directory_structure");
             if ( ds == "flat" ) _dirStruct = DS_FLAT;
@@ -124,6 +134,7 @@ namespace osgEarth { namespace Drivers
         optional<std::string> _baseName, _layerSetName;
         optional<int>         _primarySplitLevel, _secondarySplitLevel, _layer, _widthLod0, _heightLod0;
         optional<DirectoryStructure> _dirStruct;
+        optional<int> _terrainTileCacheSize;
     };
 
 } } // namespace osgEarth::Drivers
diff --git a/src/osgEarthDrivers/wcs/ReaderWriterWCS.cpp b/src/osgEarthDrivers/wcs/ReaderWriterWCS.cpp
index a503c3f..565bb06 100644
--- a/src/osgEarthDrivers/wcs/ReaderWriterWCS.cpp
+++ b/src/osgEarthDrivers/wcs/ReaderWriterWCS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/wcs/WCS11Source.cpp b/src/osgEarthDrivers/wcs/WCS11Source.cpp
index 46f9c76..cb0b153 100644
--- a/src/osgEarthDrivers/wcs/WCS11Source.cpp
+++ b/src/osgEarthDrivers/wcs/WCS11Source.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,9 +18,9 @@
  */
 
 #include "WCS11Source.h"
-#include <osgEarth/HTTPClient>
 #include <osgEarth/ImageToHeightFieldConverter>
 #include <osgEarth/Registry>
+#include <osgEarth/URI>
 #include <osg/Notify>
 #include <osgDB/Registry>
 #include <iostream>
@@ -31,7 +31,7 @@ using namespace osgEarth;
 
 WCS11Source::WCS11Source( const TileSourceOptions& options ) :
 TileSource( options ),
-_options(options)
+_options  ( options )
 {
     _covFormat = _options.format().value();
     
@@ -42,17 +42,18 @@ _options(options)
 }
 
 
-void WCS11Source::initialize( const std::string& referenceURI, const Profile* overrideProfile)
+void
+WCS11Source::initialize(const osgDB::Options* dbOptions,
+                        const Profile*        overrideProfile )
 {
-	if (overrideProfile)
-	{
-		setProfile( overrideProfile );
-	}
-	else
-	{
-		//TODO: once we read GetCapabilities.. this will change..
-		setProfile(osgEarth::Registry::instance()->getGlobalGeodeticProfile());
-	}
+    if ( !getProfile() )
+    {
+        //TODO: fetch GetCapabilities and set profile from there.
+        setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
+    }
+
+    _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+    CachePolicy::NO_CACHE.apply( _dbOptions.get() );
 }
 
 
@@ -64,8 +65,8 @@ WCS11Source::getExtension() const
 
 
 osg::Image*
-WCS11Source::createImage( const TileKey& key,
-                         ProgressCallback* progress)
+WCS11Source::createImage(const TileKey&        key,
+                         ProgressCallback*     progress)
 {
     HTTPRequest request = createRequest( key );
 
@@ -74,8 +75,8 @@ WCS11Source::createImage( const TileKey& key,
     double lon0,lat0,lon1,lat1;
     key.getExtent().getBounds( lon0, lat0, lon1, lat1 );
 
-    // download the data
-    HTTPResponse response = HTTPClient::get( request, 0L, progress ); //getOptions(), progress );
+    // download the data. It's a multipart-mime stream, so we have to use HTTP directly.
+    HTTPResponse response = HTTPClient::get( request, _dbOptions.get(), progress );
     if ( !response.isOK() )
     {
         OE_WARN << "[osgEarth::WCS1.1] WARNING: HTTP request failed" << std::endl;
@@ -110,8 +111,8 @@ WCS11Source::createImage( const TileKey& key,
 
 
 osg::HeightField*
-WCS11Source::createHeightField( const TileKey& key,
-                                ProgressCallback* progress)
+WCS11Source::createHeightField(const TileKey&        key,
+                               ProgressCallback*     progress)
 {
     osg::HeightField* field = NULL;
 
diff --git a/src/osgEarthDrivers/wcs/WCS11Source.h b/src/osgEarthDrivers/wcs/WCS11Source.h
index f1248bd..5c5051f 100644
--- a/src/osgEarthDrivers/wcs/WCS11Source.h
+++ b/src/osgEarthDrivers/wcs/WCS11Source.h
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -36,24 +36,29 @@ class WCS11Source : public TileSource
 {
 public:
     WCS11Source( const TileSourceOptions& opt );
+
+public: // TileSource interface
+
+    void initialize(
+        const osgDB::Options* dbOptions,
+        const Profile*        overrideProfile );
     
-    osg::Image* createImage( const TileKey& key,
-                             ProgressCallback* progress = 0 );
+    osg::Image* createImage( 
+        const TileKey&        key,
+        ProgressCallback*     progress );
 
-    osg::HeightField* createHeightField( const TileKey& key, 
-                                         ProgressCallback* progress = 0 );
+    osg::HeightField* createHeightField(
+        const TileKey&        key,
+        ProgressCallback*     progress );
     
     std::string getExtension() const;
 
-public: // TileSource interface
-
-    // override
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile);
-
 private:
     const WCSOptions _options;
     std::string _covFormat, _osgFormat;
 
+    osg::ref_ptr<osgDB::Options> _dbOptions;
+
     HTTPRequest createRequest( const TileKey& key ) const;
 };
 
diff --git a/src/osgEarthDrivers/wcs/WCSOptions b/src/osgEarthDrivers/wcs/WCSOptions
index 42e502e..57d2d4f 100644
--- a/src/osgEarthDrivers/wcs/WCSOptions
+++ b/src/osgEarthDrivers/wcs/WCSOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 
 #include <osgEarth/Common>
 #include <osgEarth/TileSource>
+#include <osgEarth/URI>
 
 namespace osgEarth { namespace Drivers
 {
@@ -50,13 +51,16 @@ namespace osgEarth { namespace Drivers
 
     public:
         WCSOptions( const TileSourceOptions& opt =TileSourceOptions() ) :
-              TileSourceOptions( opt ),
+          TileSourceOptions( opt ),
               _elevationUnit( "m" )
           {
               setDriver( "wcs" );
               fromConfig( _conf );
           }
 
+        /** dtor */
+        virtual ~WCSOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/wms/ReaderWriterWMS.cpp b/src/osgEarthDrivers/wms/ReaderWriterWMS.cpp
index 8e95ea1..2ba5988 100644
--- a/src/osgEarthDrivers/wms/ReaderWriterWMS.cpp
+++ b/src/osgEarthDrivers/wms/ReaderWriterWMS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -71,11 +71,16 @@ public:
 
         // localize it since we might override them:
         _formatToUse = _options.format().value();
-        _srsToUse = _options.srs().value();
+        _srsToUse = _options.wmsVersion().value() == "1.3.0" ? _options.crs().value() : _options.srs().value();
+        if (_srsToUse.empty())
+        {
+            //If they didn't specify a CRS, see if they specified an SRS and try to use that
+            _srsToUse = _options.srs().value();
+        }
     }
 
     /** override */
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize( const osgDB::Options* dbOptions )
     {
         osg::ref_ptr<const Profile> result;
 
@@ -87,17 +92,16 @@ public:
             capUrl = URI(
                 _options.url()->full() + 
                 sep + 
-                "SERVICE=WMS" +
-                "&VERSION=" + _options.wmsVersion().value() +
-                "&REQUEST=GetCapabilities" );
+                std::string("SERVICE=WMS") +
+                std::string("&VERSION=") + _options.wmsVersion().value() +
+                std::string("&REQUEST=GetCapabilities") );
         }
 
         //Try to read the WMS capabilities
-        osg::ref_ptr<WMSCapabilities> capabilities = WMSCapabilitiesReader::read( capUrl.full(), 0L ); //getOptions() );
+        osg::ref_ptr<WMSCapabilities> capabilities = WMSCapabilitiesReader::read( capUrl.full(), dbOptions );
         if ( !capabilities.valid() )
         {
-            OE_WARN << "[osgEarth::WMS] Unable to read WMS GetCapabilities." << std::endl;
-            //return;
+            return Status::Error( "Unable to read WMS GetCapabilities." );
         }
         else
         {
@@ -107,7 +111,7 @@ public:
         if ( _formatToUse.empty() && capabilities.valid() )
         {
             _formatToUse = capabilities->suggestExtension();
-            OE_NOTICE << "[osgEarth::WMS] No format specified, capabilities suggested extension " << _formatToUse << std::endl;
+            OE_INFO << "[osgEarth::WMS] No format specified, capabilities suggested extension " << _formatToUse << std::endl;
         }
 
         if ( _formatToUse.empty() )
@@ -123,14 +127,13 @@ public:
 
         // first the mandatory keys:
         buf
-            << std::fixed << _options.url()->full() << sep
-            << "SERVICE=WMS"
+            << std::fixed << _options.url()->full() << sep            
             << "&VERSION=" << _options.wmsVersion().value()
             << "&REQUEST=GetMap"
             << "&LAYERS=" << _options.layers().value()
             << "&FORMAT=" << ( wmsFormatToUse.empty() ? std::string("image/") + _formatToUse : wmsFormatToUse )
             << "&STYLES=" << _options.style().value()
-            << "&SRS=" << _srsToUse
+            << (_options.wmsVersion().value() == "1.3.0" ? "&CRS=" : "&SRS=") << _srsToUse            
             << "&WIDTH="<< _options.tileSize().value()
             << "&HEIGHT="<< _options.tileSize().value()
             << "&BBOX=%lf,%lf,%lf,%lf";
@@ -140,9 +143,11 @@ public:
             buf << "&TRANSPARENT=" << (_options.transparent() == true ? "TRUE" : "FALSE");
             
 
-		_prototype = "";
+        _prototype = "";
         _prototype = buf.str();
 
+        //OE_NOTICE << "Prototype " << _prototype << std::endl;
+
         osg::ref_ptr<SpatialReference> wms_srs = SpatialReference::create( _srsToUse );
 
         // check for spherical mercator:
@@ -150,10 +155,10 @@ public:
         {
             result = osgEarth::Registry::instance()->getGlobalMercatorProfile();
         }
-		else if (wms_srs.valid() && wms_srs->isEquivalentTo( osgEarth::Registry::instance()->getGlobalGeodeticProfile()->getSRS()))
-		{
-			result = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
-		}
+        else if (wms_srs.valid() && wms_srs->isEquivalentTo( osgEarth::Registry::instance()->getGlobalGeodeticProfile()->getSRS()))
+        {
+            result = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+        }
 
         // Next, try to glean the extents from the layer list
         if ( capabilities.valid() )
@@ -169,14 +174,14 @@ public:
                 //Check to see if the profile is equivalent to global-geodetic
                 if (wms_srs->isGeographic())
                 {
-					//Try to get the lat lon extents if they are provided
-				    layer->getLatLonExtents(minx, miny, maxx, maxy);
-
-					//If we still don't have any extents, just default to global geodetic.
-					if (!result.valid() && minx == 0 && miny == 0 && maxx == 0 && maxy == 0)
-					{
-						result = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
-					}
+                    //Try to get the lat lon extents if they are provided
+                    layer->getLatLonExtents(minx, miny, maxx, maxy);
+
+                    //If we still don't have any extents, just default to global geodetic.
+                    if (!result.valid() && minx == 0 && miny == 0 && maxx == 0 && maxy == 0)
+                    {
+                        result = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+                    }
                 }	
 
                 if (minx == 0 && miny == 0 && maxx == 0 && maxy == 0)
@@ -193,8 +198,8 @@ public:
                 //Add the layer extents to the list of valid areas
                 if (minx != 0 || maxx != 0 || miny != 0 || maxy != 0)
                 {
-                    GeoExtent extent( result->getSRS(), minx, miny, maxx, maxy);                    
-                    getDataExtents().push_back( DataExtent(extent, 0, INT_MAX) );
+                    GeoExtent extent( result->getSRS(), minx, miny, maxx, maxy);
+                    getDataExtents().push_back( DataExtent(extent, 0) );
                 }
             }
         }
@@ -204,19 +209,17 @@ public:
         {
             result = osgEarth::Registry::instance()->getGlobalGeodeticProfile();
         }
-        
 
         // JPL uses an experimental interface called TileService -- ping to see if that's what
         // we are trying to read:
         URI tsUrl = _options.tileServiceUrl().value();
         if ( tsUrl.empty() )
         {
-            tsUrl = URI(
-                _options.url()->full() + sep + std::string("request=GetTileService") );
+            tsUrl = URI(_options.url()->full() + sep + std::string("request=GetTileService") );
         }
 
         OE_INFO << "[osgEarth::WMS] Testing for JPL/TileService at " << tsUrl.full() << std::endl;
-        _tileService = TileServiceReader::read(tsUrl.full(), 0L); //getOptions());
+        _tileService = TileServiceReader::read(tsUrl.full(), dbOptions);
         if (_tileService.valid())
         {
             OE_INFO << "[osgEarth::WMS] Found JPL/TileService spec" << std::endl;
@@ -241,19 +244,26 @@ public:
             OE_INFO << "[osgEarth::WMS] No JPL/TileService spec found; assuming standard WMS" << std::endl;
         }
 
-        //Use the override profile if one is passed in.
-        if (overrideProfile)
+        // Use the override profile if one is passed in.
+        if ( getProfile() == 0L )
         {
-            result = overrideProfile;
+            setProfile( result.get() );
         }
 
-        //TODO: won't need this for OSG 2.9+, b/c of mime-type support
-        _prototype = _prototype + std::string("&.") + _formatToUse;
+        if ( getProfile() )
+        {
+            OE_NOTICE << "[osgEarth::WMS] Profile=" << getProfile()->toString() << std::endl;
 
-        // populate the data metadata:
-        // TODO
+            // set up the cache options properly for a TileSource.
+            _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+            CachePolicy::NO_CACHE.apply( _dbOptions.get() );
 
-		setProfile( result.get() );
+            return STATUS_OK;
+        }
+        else
+        {
+            return Status::Error( "Unable to establish profile" );
+        }
     }
 
     /* override */
@@ -270,7 +280,7 @@ public:
         const TileKey&     key, 
         const std::string& extraAttrs,
         ProgressCallback*  progress, 
-        HTTPResponse&      out_response )
+        ReadResult&        out_response )
     {
         osgDB::ReaderWriter* result = 0L;
 
@@ -282,27 +292,36 @@ public:
         }
 
 
-        out_response = HTTPClient::get( uri, 0L, progress ); //getOptions(), progress );
+        out_response = URI( uri ).readString( _dbOptions.get(), progress );
+
+        //...
+        //out_response = HTTPClient::get( uri, 0L, progress ); //getOptions(), progress );
 
-        if ( out_response.isOK() )
+        if ( out_response.succeeded() )
         {
-            const std::string& mt = out_response.getMimeType();
+            // get the mime type:
+            std::string mt = out_response.metadata().value( IOMetadata::CONTENT_TYPE );
 
             if ( mt == "application/vnd.ogc.se_xml" || mt == "text/xml" )
             {
+                std::istringstream content( out_response.getString() );
+
                 // an XML result means there was a WMS service exception:
                 Config se;
-                if ( se.loadXML( out_response.getPartStream(0) ) )
+                if ( se.fromXML(content) )
                 {
                     Config ex = se.child("serviceexceptionreport").child("serviceexception");
-                    if ( !ex.empty() ) {
-                        OE_NOTICE << "WMS Service Exception: " << ex.value() << std::endl;
+                    if ( !ex.empty() )
+                    {
+                        OE_NOTICE << "WMS Service Exception: " << ex.toJSON(true) << std::endl;
                     }
-                    else {
-                        OE_NOTICE << "WMS Response: " << se.toString() << std::endl;
+                    else
+                    {
+                        OE_NOTICE << "WMS Response: " << se.toJSON(true) << std::endl;
                     }
                 }
-                else {
+                else
+                {
                     OE_NOTICE << "WMS: unknown error." << std::endl;
                 }
             }
@@ -311,7 +330,8 @@ public:
                 // really ought to use mime-type support here -GW
                 std::string typeExt = mt.substr( mt.find_last_of("/")+1 );
                 result = osgDB::Registry::instance()->getReaderWriterForExtension( typeExt );
-                if ( !result ) {
+                if ( !result )
+                {
                     OE_NOTICE << "WMS: no reader registered; URI=" << createURI(key) << std::endl;
                 }
             }
@@ -333,17 +353,20 @@ public:
         {
             std::string extras;
             if ( _timesVec.size() == 1 )
-                extras = "TIME=" + _timesVec[0];
+                extras = std::string("TIME=") + _timesVec[0];
 
-            HTTPResponse response;
+            ReadResult response;
             osgDB::ReaderWriter* reader = fetchTileAndReader( key, extras, progress, response );
             if ( reader )
             {
-                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( response.getPartStream( 0 ), 0L ); //getOptions() );
-                if ( readResult.error() ) {
+                std::istringstream buf( response.getString() );
+                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( buf, _dbOptions.get() );
+                if ( readResult.error() )
+                {
                     OE_WARN << "WMS: image read failed for " << createURI(key) << std::endl;
                 }
-                else {
+                else
+                {
                     image = readResult.getImage();
                 }
             }
@@ -359,13 +382,16 @@ public:
 
         for( unsigned int r=0; r<_timesVec.size(); ++r )
         {
-            std::string extraAttrs = "TIME=" + _timesVec[r];
-            HTTPResponse response;
+            std::string extraAttrs = std::string("TIME=") + _timesVec[r];
+            ReadResult response;
             osgDB::ReaderWriter* reader = fetchTileAndReader( key, extraAttrs, progress, response );
             if ( reader )
             {
-                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( response.getPartStream( 0 ), 0L ); //getOptions() );
-                if ( readResult.error() ) {
+                std::istringstream buf( response.getString() );
+
+                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( buf, _dbOptions.get() );
+                if ( readResult.error() )
+                {
                     OE_WARN << "WMS: image read failed for " << createURI(key) << std::endl;
                 }
                 else
@@ -393,35 +419,11 @@ public:
 
         return image.release();
     }
-    
-    ///** creates a 3D image from timestamped data. */
-    //osg::Image* createImageSequence( const TileKey& key, ProgressCallback* progress )
-    //{
-    //    osg::ImageSequence* seq = new osg::ImageSequence();
-
-    //    for( int r=0; r<_timesVec.size(); ++r )
-    //    {
-    //        std::string extraAttrs = "TIME=" + _timesVec[r];
-
-    //        std::string uri = createURI(key);
-    //        std::string delim = uri.find("?") == std::string::npos ? "?" : "&";
-    //        uri = uri + delim + extraAttrs;
-    //        uri = uri + "&." + _formatToUse;
-
-    //        seq->addImageFile( uri );
-    //    }
-
-    //    seq->play();
-    //    seq->setLength( (double)_timesVec.size() );
-    //    seq->setLoopingMode( osg::ImageStream::LOOPING );
-    //    
-    //    return seq;
-    //}
 
     /** creates a 3D image from timestamped data. */
     osg::Image* createImageSequence( const TileKey& key, ProgressCallback* progress )
     {
-        osg::ImageSequence* seq = new SyncImageSequence(); //osg::ImageSequence();
+        osg::ImageSequence* seq = new SyncImageSequence();
 
         seq->setLoopingMode( osg::ImageStream::LOOPING );
         seq->setLength( _options.secondsPerFrame().value() * (double)_timesVec.size() );
@@ -429,13 +431,14 @@ public:
 
         for( unsigned int r=0; r<_timesVec.size(); ++r )
         {
-            std::string extraAttrs = "TIME=" + _timesVec[r];
+            std::string extraAttrs = std::string("TIME=") + _timesVec[r];
 
-            HTTPResponse response;
+            ReadResult response;
             osgDB::ReaderWriter* reader = fetchTileAndReader( key, extraAttrs, progress, response );
             if ( reader )
             {
-                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( response.getPartStream( 0 ), 0L ); //getOptions() );
+                std::istringstream buf(response.getString());
+                osgDB::ReaderWriter::ReadResult readResult = reader->readImage( buf, _dbOptions.get() );
                 if ( !readResult.error() )
                 {
                     seq->addImage( readResult.getImage() );
@@ -452,8 +455,7 @@ public:
 
 
     /** override */
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress)
+    osg::HeightField* createHeightField( const TileKey& key, ProgressCallback* progress)
     {
         osg::Image* image = createImage(key, progress);
         if (!image)
@@ -509,6 +511,7 @@ private:
     osg::ref_ptr<const Profile> _profile;
     std::string _prototype;
     std::vector<std::string> _timesVec;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/wms/TileService b/src/osgEarthDrivers/wms/TileService
index 022219c..a3b85e5 100644
--- a/src/osgEarthDrivers/wms/TileService
+++ b/src/osgEarthDrivers/wms/TileService
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthDrivers/wms/TileService.cpp b/src/osgEarthDrivers/wms/TileService.cpp
index 27ba0aa..fde839d 100644
--- a/src/osgEarthDrivers/wms/TileService.cpp
+++ b/src/osgEarthDrivers/wms/TileService.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,7 +20,6 @@
 #include "TileService"
 
 #include <osgEarth/XmlUtils>
-#include <osgEarth/HTTPClient>
 
 #include <osg/io_utils>
 #include <osgDB/FileNameUtils>
@@ -29,21 +28,22 @@
 using namespace osgEarth;
 using namespace std;
 
-
-
-std::string extractBetween(const std::string& str, const string &lhs, const string &rhs)
+namespace
 {
-    std::string result;
-    string::size_type start = str.find(lhs);
-    if (start != string::npos)
+    std::string extractBetween(const std::string& str, const string &lhs, const string &rhs)
     {
-        start += lhs.length();
-        string::size_type count = str.size() - start;
-        string::size_type end = str.find(rhs, start); 
-        if (end != string::npos) count = end-start;
-        result = str.substr(start, count);
+        std::string result;
+        string::size_type start = str.find(lhs);
+        if (start != string::npos)
+        {
+            start += lhs.length();
+            string::size_type count = str.size() - start;
+            string::size_type end = str.find(rhs, start); 
+            if (end != string::npos) count = end-start;
+            result = str.substr(start, count);
+        }
+        return result;
     }
-    return result;
 }
 
 TilePattern::TilePattern(const std::string& pattern)
@@ -211,60 +211,55 @@ TileService*
 TileServiceReader::read( const std::string &location, const osgDB::ReaderWriter::Options* options )
 {
     TileService *tileService = NULL;
-    if ( osgDB::containsServerAddress( location ) )
-    {
-        HTTPResponse response = HTTPClient::get( location, options);
-        if (response.isOK() && response.getNumParts() > 0 )
-        {
-            tileService = read( response.getPartStream( 0 ) );
-        }
-    }
-    else
+
+    ReadResult r = URI(location).readString( options );
+    if ( r.succeeded() )
     {
-        if ((osgDB::fileExists(location)) && (osgDB::fileType(location) == osgDB::REGULAR_FILE))
-        {
-            std::ifstream in( location.c_str() );
-            tileService = read( in );
-        }
+        std::istringstream buf( r.getString() );
+        tileService = read( buf );
     }
+
     return tileService;
 }
 
-void readBoundingBox(XmlElement* e_bb, double &minX, double &minY, double &maxX, double &maxY)
+namespace
 {
-    if (e_bb)
+    void readBoundingBox(XmlElement* e_bb, double &minX, double &minY, double &maxX, double &maxY)
     {
-        minX = as<double>(e_bb->getAttr( ATTR_MINX ), minX);
-        minY = as<double>(e_bb->getAttr( ATTR_MINY ), minY);
-        maxX = as<double>(e_bb->getAttr( ATTR_MAXX ), maxX);
-        maxY = as<double>(e_bb->getAttr( ATTR_MAXY ), maxY);
-    }
-}
-
-void addTilePatterns(XmlElement* e_root, TileService* tileService)
-{
-    //Read all the TilePatterns
-    XmlNodeList tile_patterns = e_root->getSubElements( ELEM_TILEPATTERN );
-    for( XmlNodeList::const_iterator i = tile_patterns.begin(); i != tile_patterns.end(); i++ )
-    {            
-        //We only really care about a single access pattern, so extract it
-        string txt = static_cast<XmlElement*>( i->get() )->getText();
-        //Access patterns are separated by whitespace 
-        std::string whitespace (" \t\f\v\n\r");
-        string::size_type len = txt.find_first_of(whitespace);
-        if (len != string::npos)
+        if (e_bb)
         {
-            txt = trim(txt.substr(0, len));
+            minX = as<double>(e_bb->getAttr( ATTR_MINX ), minX);
+            minY = as<double>(e_bb->getAttr( ATTR_MINY ), minY);
+            maxX = as<double>(e_bb->getAttr( ATTR_MAXX ), maxX);
+            maxY = as<double>(e_bb->getAttr( ATTR_MAXY ), maxY);
         }
-        TilePattern pattern(txt);
-        tileService->getPatterns().push_back(pattern);
     }
 
-    //Read all TilePatterns in the TiledGroups
-    XmlNodeList tiled_groups = e_root->getSubElements(ELEM_TILEDGROUP);
-    for( XmlNodeList::const_iterator i = tiled_groups.begin(); i != tiled_groups.end(); i++ )
+    void addTilePatterns(XmlElement* e_root, TileService* tileService)
     {
-        addTilePatterns(static_cast<XmlElement*>(i->get()), tileService);
+        //Read all the TilePatterns
+        XmlNodeList tile_patterns = e_root->getSubElements( ELEM_TILEPATTERN );
+        for( XmlNodeList::const_iterator i = tile_patterns.begin(); i != tile_patterns.end(); i++ )
+        {            
+            //We only really care about a single access pattern, so extract it
+            string txt = static_cast<XmlElement*>( i->get() )->getText();
+            //Access patterns are separated by whitespace 
+            std::string whitespace (" \t\f\v\n\r");
+            string::size_type len = txt.find_first_of(whitespace);
+            if (len != string::npos)
+            {
+                txt = trim(txt.substr(0, len));
+            }
+            TilePattern pattern(txt);
+            tileService->getPatterns().push_back(pattern);
+        }
+
+        //Read all TilePatterns in the TiledGroups
+        XmlNodeList tiled_groups = e_root->getSubElements(ELEM_TILEDGROUP);
+        for( XmlNodeList::const_iterator i = tiled_groups.begin(); i != tiled_groups.end(); i++ )
+        {
+            addTilePatterns(static_cast<XmlElement*>(i->get()), tileService);
+        }
     }
 }
 
diff --git a/src/osgEarthDrivers/wms/WMSOptions b/src/osgEarthDrivers/wms/WMSOptions
index 2ccb556..f1c8e35 100644
--- a/src/osgEarthDrivers/wms/WMSOptions
+++ b/src/osgEarthDrivers/wms/WMSOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -60,6 +60,9 @@ namespace osgEarth { namespace Drivers
         optional<std::string>& srs() { return _srs; }
         const optional<std::string>& srs() const { return _srs; }
 
+        optional<std::string>& crs() { return _crs; }
+        const optional<std::string>& crs() const { return _crs; }
+
         optional<bool>& transparent() { return _transparent; }
         const optional<bool>& transparent() const { return _transparent; }
 
@@ -80,6 +83,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~WMSOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
@@ -93,6 +99,7 @@ namespace osgEarth { namespace Drivers
             conf.updateIfSet("wms_version", _wmsVersion);
             conf.updateIfSet("elevation_unit", _elevationUnit);
             conf.updateIfSet("srs", _srs);
+            conf.updateIfSet("crs", _crs);
             conf.updateIfSet("transparent", _transparent);
             conf.updateIfSet("times", _times);
             conf.updateIfSet("seconds_per_frame", _secondsPerFrame );
@@ -117,6 +124,7 @@ namespace osgEarth { namespace Drivers
             conf.getIfSet("wms_version", _wmsVersion);
             conf.getIfSet("elevation_unit", _elevationUnit);
             conf.getIfSet("srs", _srs);
+            conf.getIfSet("crs", _crs);
             conf.getIfSet("transparent", _transparent);
             conf.getIfSet("times", _times);
             conf.getIfSet("seconds_per_frame", _secondsPerFrame );
@@ -132,6 +140,7 @@ namespace osgEarth { namespace Drivers
         optional<std::string> _wmsVersion;
         optional<std::string> _elevationUnit;
         optional<std::string> _srs;
+        optional<std::string> _crs;
         optional<bool>        _transparent;
         optional<std::string> _times;
         optional<double>      _secondsPerFrame;
diff --git a/src/osgEarthDrivers/worldwind/CMakeLists.txt b/src/osgEarthDrivers/worldwind/CMakeLists.txt
deleted file mode 100644
index 5c0ebfa..0000000
--- a/src/osgEarthDrivers/worldwind/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-INCLUDE_DIRECTORIES( ${LIBZIP_INCLUDE_DIR} )
-
-SET(TARGET_SRC 
-    ReaderWriterWorldWind.cpp)
-    
-SET(TARGET_H WorldWindOptions)
-	
-SET(LIB_PUBLIC_HEADERS ${TARGET_H} )
-SET(TARGET_LIBRARIES_VARS LIBZIP_LIBRARY )
-
-SETUP_PLUGIN(osgearth_worldwind)
-
diff --git a/src/osgEarthDrivers/worldwind/ReaderWriterWorldWind.cpp b/src/osgEarthDrivers/worldwind/ReaderWriterWorldWind.cpp
deleted file mode 100644
index 1b1788f..0000000
--- a/src/osgEarthDrivers/worldwind/ReaderWriterWorldWind.cpp
+++ /dev/null
@@ -1,347 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth worldwind plugin - for the osgEarth toolkit
-* based on the yahoo plugin provided as part of the osgearth distribution
-* Produced by Matt Franklin
-* Contact: MattFranklin1 at gmail.com
-*
-* Please note that the use of this plugin requires the user to be accept
-* the license agreements provided by NASA
-*
-* This plugin is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-*/
-#include "WorldWindOptions"
-
-#include <iostream>
-#include <fstream>
-#include <stdio.h>
-
-#include <osgEarth/TileSource>
-#include <osgEarth/ImageToHeightFieldConverter>
-#include <osgEarth/Registry>
-
-#include <osgDB/FileNameUtils>
-#include <osgDB/FileUtils>
-#include <osgDB/Registry>
-#include <osgDB/ReadFile>
-#include <osgDB/WriteFile>
-#include <osgDB/Archive>
-
-#include "zip.h"
-
-#include <sstream>
-#include <iomanip>
-#include <iostream>
-#include <fstream>
-
-#ifdef remove
-#undef remove
-#endif
-
-#define LC "[WorldWind BIL] "
-
-using namespace osgEarth;
-using namespace osgEarth::Drivers;
-
-class WorldWindSource : public TileSource
-{
-public:
-    WorldWindSource( const TileSourceOptions& options ) : TileSource( options )
-    {
-        _options = options;
-    }
-
-public:
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
-    {
-        setProfile( Profile::create(
-            "epsg:4326",
-            -180.0, -90.0, 180.0, 90.0,
-            "",
-            18, 9 ) );
-
-        if ( !_options.elevationCachePath().isSet() )
-        {
-            OE_WARN << LC << "Elevation cache path is not set, but is required. No data will be available" << std::endl;
-        }
-    }
-
-    osg::HeightField* createHeightFieldFromBil(char* buf,int buflength)
-    {
-        osg::HeightField* hf = new osg::HeightField;
-        //osg::notify(osg::NOTICE) << "Read heightfield image" << std::endl;
-        hf->allocate(150, 150);
-
-        for( unsigned int row=0; row < 150; row++ )
-        {
-            for( unsigned int col=0; col < 150; col++ )
-            {
-                short* ptr = (short*)buf;
-                short val = ptr[col + ((150-row -1)*150)];
-
-                hf->setHeight( col, row, (float)val * 0.3048 );
-            }
-        }
-        return hf;
-    }
-
-public:
-    osg::Image* createImage( const TileKey& key, ProgressCallback* progress)
-    {
-        // NYI - eventually, consolidate the "tileservice" plugin into this one //GW
-        return NULL;
-    }
-
-
-    osg::HeightField* createHeightField( const TileKey& key, ProgressCallback* progress)
-    {
-        if ( *_options.maxLOD() <= key.getLevelOfDetail()) return NULL;
-        if ( !_options.elevationCachePath().isSet() ) return NULL;
-
-        osg::HeightField *hf = NULL;
-        std::string cachefilepath = *_options.elevationCachePath() + "/" + createCachePath(key);
-        std::string cachefilename = createCacheName(key) + ".bil";
-        std::string fullcachefilename = cachefilepath + "/" + cachefilename;
-        OE_DEBUG << LC << "Cached name " << fullcachefilename << std::endl;
-        if (osgDB::fileExists(fullcachefilename))
-        {
-            // read file
-            std::ifstream fin;
-            fin.open(fullcachefilename.c_str(), std::ios::in | std::ios::binary);
-            if (!fin)
-            {
-                OE_WARN << LC << "Coud not open elevation cache " << fullcachefilename << ", maybe a permissions problem" << std::endl;
-                _options.elevationCachePath().unset();
-                return NULL;
-            }
-            int fullsize = 150*150*2;
-            char *buf = new char[fullsize];
-            OE_DEBUG << LC << "Loading from cache " << fullcachefilename << std::endl;
-            if ( !fin.read(buf, fullsize))
-            {
-                OE_WARN << LC << "Coud not read from elevation cache " << fullcachefilename << ", file may be corrupt" << std::endl;
-                delete[] buf;
-                fin.close();
-                _options.elevationCachePath().unset();
-                return NULL;
-            }
-            hf = createHeightFieldFromBil((char*)buf,fullsize);
-            delete[] buf;
-            fin.close();
-        }
-        else // cached BIL file doesn't exist, try to download and cache it.
-        {
-            // download file
-            HTTPResponse out_response;
-            std::string URI = createURI(key);
-
-            OE_DEBUG << "Requesting " << URI << std::endl;
-            out_response = HTTPClient::get( URI, 0L, progress );
-
-            if ( !out_response.isOK() )
-            {
-                OE_NOTICE << "No Response received for " << URI << std::endl;
-                return NULL;
-            }
-
-            // store downloaded part as a zip file
-            // Useful to store a local copy as the same file is requested many times
-            unsigned int part_num = out_response.getNumParts() > 1? 1 : 0;
-            std::string zipfilename;
-            out_response.getPartHeader(part_num, zipfilename);
-            std::istream& input_stream = out_response.getPartStream( part_num );
-
-            if ( !osgDB::fileExists(cachefilepath) )
-            {
-                osgDB::makeDirectory(cachefilepath);
-            }
-            std::ofstream fout;
-            std::string tempname = fullcachefilename + ".zip";
-            fout.open(tempname.c_str(), std::ios::out | std::ios::binary);
-
-            if ( !fout )
-            {
-                OE_WARN << LC << "Could not write zip file to " << tempname << std::endl;
-                _options.elevationCachePath().unset();
-                return NULL;
-            }
-            input_stream.seekg (0, std::ios::end);
-            int length = input_stream.tellg();
-            input_stream.seekg (0, std::ios::beg);
-
-            char *buffer = new char[length];
-            input_stream.read(buffer, length);
-            fout.write(buffer, length);
-            delete[] buffer;
-            fout.close();
-
-
-            //Unzip the file
-            int err;
-
-            //Open the zip file
-            struct zip* pZip = zip_open(tempname.c_str(), ZIP_CHECKCONS, &err);
-            if (pZip)
-            {
-                //List the files
-                int numFiles = zip_get_num_files(pZip);
-                //OE_DEBUG <<  tempname << " has " << numFiles << " files " << std::endl;
-                /*for (int i = 0; i < numFiles; ++i)
-                {
-                    OE_NOTICE << i << ": " << zip_get_name(pZip, i, 0) << std::endl;
-                }*/
-
-                //Find the index within the zip file for the given zip entry
-                int zipIndex = 0;
-
-                //Open the first file for reading
-                zip_file* pZipFile = zip_fopen_index(pZip, 0, 0);
-
-                if (pZipFile) 
-                {
-                    //Read the data from the entry into a std::string
-                    int dataSize = 0;
-                    std::string data;
-                    do{
-                        char* buf = new char[1024];
-                        dataSize = zip_fread(pZipFile, buf, 1024);
-                        if (dataSize == 0)
-                        {
-                            delete [](buf);
-                            buf = NULL;
-                        }
-                        if (buf)
-                        {
-                            data.append((char*)buf, dataSize);
-                        }
-                    }while (dataSize > 0);
-
-                    //Close the zip entry and the actual zip file itself
-                    zip_fclose(pZipFile);
-                    zip_close(pZip);
-
-                    //Write the BIL file to the cache
-                    fout.open(fullcachefilename.c_str(), std::ios::out | std::ios::binary);
-                    if ( !fout )
-                    {
-                        std::cout << "Cannot write bil file"<< std::endl;
-                        return NULL;
-                    }
-
-                    fout.write((char*)data.c_str(), data.size());
-                    fout.close(); 
-
-                    hf = createHeightFieldFromBil((char*)data.c_str(),data.size());                    
-                    // delete zip file as it has now been processed
-                    remove(tempname.c_str());
-                }               
-            }
-        }
-        return hf;
-    }
-
-    std::string createCachePath( const TileKey& key ) const
-    {
-        unsigned int x, y;
-        key.getTileXY(x, y);
-
-        unsigned int lod = key.getLevelOfDetail();
-
-        std::stringstream buf;
-        buf << "" << lod
-            << "/" << std::setw(4) << std::setfill('0') << x;
-        std::string bufStr;
-        bufStr = buf.str();
-        return bufStr;
-    }
-
-    std::string createCacheName( const TileKey& key ) const
-    {
-        unsigned int x, y;
-        key.getTileXY(x, y);
-
-        unsigned int lod = key.getLevelOfDetail();
-
-        // flip the y based on level
-        int flippedy = ((9 * powf((int)2,(int)lod)) - 1) - y;
-        //printf("Key %i, %i, %i\n", lod,x,flippedy);
-
-        std::stringstream buf;
-        buf << "" << std::setw(4) << std::setfill('0') << x
-            << "_" << std::setw(4) << std::setfill('0') << flippedy;
-        std::string bufStr;
-        bufStr = buf.str();
-        return bufStr;
-    }
-
-    std::string createURI( const TileKey& key ) const
-    {
-        unsigned int x, y;
-        key.getTileXY(x, y);
-
-        unsigned int lod = key.getLevelOfDetail();
-
-        // flip the y based on level
-        int flippedy = ((9 * powf((int)2,(int)lod)) - 1) - y;
-
-        std::stringstream buf;
-        buf << *_options.elevationURL() // "http://worldwind25.arc.nasa.gov/wwelevation/wwelevation.aspx?T=srtm30pluszip"
-            << "&L=" << lod
-            << "&X=" << x
-            << "&Y=" << flippedy;
-        std::string bufStr;
-        bufStr = buf.str();
-        return bufStr;
-    }
-
-    virtual int getPixelsPerTile() const
-    {
-        return 150;
-    }
-
-    virtual std::string getExtension()  const
-    {
-        return "bil";
-    }
-
-private:
-    WorldWindOptions _options;
-};
-
-
-class ReaderWriterWorldWind : public TileSourceDriver
-{
-public:
-    ReaderWriterWorldWind() {}
-
-    virtual const char* className()
-    {
-        return "WorldWind Reader";
-    }
-
-    virtual bool acceptsExtension(const std::string& extension) const
-    {
-        return osgDB::equalCaseInsensitive( extension, "osgearth_WorldWind" );
-    }
-
-    virtual ReadResult readObject(const std::string& file_name, const Options* opt) const
-    {
-        std::string ext = osgDB::getFileExtension( file_name );
-        if ( !acceptsExtension( ext ) )
-        {
-            return ReadResult::FILE_NOT_HANDLED;
-        }
-
-        return new WorldWindSource( getTileSourceOptions(opt) );
-    }
-};
-
-REGISTER_OSGPLUGIN(osgearth_WorldWind, ReaderWriterWorldWind) 
\ No newline at end of file
diff --git a/src/osgEarthDrivers/worldwind/WorldWindOptions b/src/osgEarthDrivers/worldwind/WorldWindOptions
deleted file mode 100644
index 4596aa6..0000000
--- a/src/osgEarthDrivers/worldwind/WorldWindOptions
+++ /dev/null
@@ -1,90 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTH_DRIVER_WORLDWIND_DRIVEROPTIONS
-#define OSGEARTH_DRIVER_WORLDWIND_DRIVEROPTIONS 1
-
-#include <osgEarth/Common>
-#include <osgEarth/TileSource>
-
-
-namespace osgEarth { namespace Drivers
-{
-    using namespace osgEarth;
-
-    class WorldWindOptions : public TileSourceOptions // NO EXPORT; header only
-    {
-    public:
-        optional<int>& maxLOD() { return _maxLOD; }
-        const optional<int>& maxLOD() const { return _maxLOD; }
-
-        optional<std::string>& elevationCachePath() { return _elevationCachePath; }
-        const optional<std::string>& elevationCachePath() const { return _elevationCachePath; }
-
-        optional<std::string>& elevationURL() { return _elevationURL; }
-        const optional<std::string>& elevationURL() const { return _elevationURL; }
-
-        // image support NYI ... use the "tileservice" plugin instead
-        //optional<std::string>& imageURL() { return _imageURL; }
-        //const optional<std::string>& imageURL() const { return _imageURL; }
-
-    public:
-        WorldWindOptions( const TileSourceOptions& opt =TileSourceOptions() ) : TileSourceOptions( opt ),
-            _maxLOD( 11 ),
-            _elevationURL( "http://worldwind25.arc.nasa.gov/wwelevation/wwelevation.aspx?T=srtm30pluszip" ),
-            _imageURL( "http://s0.tileservice.worldwindcentral.com/getTile?" )
-        {
-            setDriver( "worldwind" );
-            fromConfig( _conf );
-        }
-
-    public:
-        Config getConfig() const {
-            Config conf = TileSourceOptions::getConfig();
-            conf.updateIfSet("image_url", _imageURL);
-            conf.updateIfSet("elevation_url", _elevationURL);
-            conf.updateIfSet("max_lod", _maxLOD);
-            conf.updateIfSet("elevation_cache", _elevationCachePath);
-            return conf;
-        }
-
-    protected:
-        void mergeConfig( const Config& conf ) {
-            TileSourceOptions::mergeConfig( conf );
-            fromConfig( conf );
-        }
-
-    private:
-        void fromConfig( const Config& conf ) {
-            conf.getIfSet("image_url", _imageURL);
-            conf.getIfSet("elevation_url", _elevationURL);
-            conf.getIfSet("max_lod", _maxLOD);
-            conf.getIfSet("elevation_cache", _elevationCachePath);
-            conf.getIfSet("worldwind_cache", _elevationCachePath); // back compat
-        }
-
-        optional<std::string> _imageURL;
-        optional<std::string> _elevationURL;
-        optional<std::string> _elevationCachePath;
-        optional<int>         _maxLOD;
-    };
-
-} } // namespace osgEarth::Drivers
-
-#endif // OSGEARTH_DRIVER_WMS_DRIVEROPTIONS
-
diff --git a/src/osgEarthDrivers/xyz/CMakeLists.txt b/src/osgEarthDrivers/xyz/CMakeLists.txt
new file mode 100644
index 0000000..a4a3b4d
--- /dev/null
+++ b/src/osgEarthDrivers/xyz/CMakeLists.txt
@@ -0,0 +1,15 @@
+SET(TARGET_SRC
+  ReaderWriterXYZ.cpp
+)
+SET(TARGET_H
+  XYZOptions
+)
+    
+SET(TARGET_COMMON_LIBRARIES ${TARGET_COMMON_LIBRARIES} osgEarthUtil)
+
+SETUP_PLUGIN(osgearth_xyz)
+
+# to install public driver includes:
+SET(LIB_NAME xyz)
+SET(LIB_PUBLIC_HEADERS XYZOptions)
+INCLUDE(ModuleInstallOsgEarthDriverIncludes OPTIONAL)
diff --git a/src/osgEarthDrivers/xyz/ReaderWriterXYZ.cpp b/src/osgEarthDrivers/xyz/ReaderWriterXYZ.cpp
new file mode 100644
index 0000000..3a69175
--- /dev/null
+++ b/src/osgEarthDrivers/xyz/ReaderWriterXYZ.cpp
@@ -0,0 +1,170 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarth/TileSource>
+#include <osgEarth/FileUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+
+#include <osg/Notify>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+#include <osgDB/Registry>
+#include <osgDB/ReadFile>
+
+#include <OpenThreads/Atomic>
+
+#include <sstream>
+#include <iomanip>
+#include <string.h>
+
+#include "XYZOptions"
+
+using namespace osgEarth;
+using namespace osgEarth::Drivers;
+
+#define LC "[XYZ driver] "
+#define OE_TEST OE_DEBUG
+
+
+class XYZSource : public TileSource
+{
+public:
+    XYZSource(const TileSourceOptions& options) : 
+      TileSource(options), _options(options), _rotate_iter(0u)
+    {
+        //nop
+    }
+
+
+    Status initialize(const osgDB::Options* dbOptions)
+    {
+        _dbOptions = Registry::instance()->cloneOrCreateOptions(dbOptions);
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        URI xyzURI = _options.url().value();
+        if ( xyzURI.empty() )
+        {
+            return Status::Error( "Fail: driver requires a valid \"url\" property" );
+        }
+
+        // driver requires a profile.
+        if ( !getProfile() )
+        {
+            return Status::Error( "An explicit profile definition is required by the XYZ driver." );
+        }
+
+        _template = xyzURI.full();
+        
+        _rotateStart = _template.find("[");
+        _rotateEnd   = _template.find("]");
+        if ( _rotateStart != std::string::npos && _rotateEnd != std::string::npos && _rotateEnd-_rotateStart > 1 )
+        {
+            _rotateString  = _template.substr(_rotateStart, _rotateEnd-_rotateStart+1);
+            _rotateChoices = _template.substr(_rotateStart+1, _rotateEnd-_rotateStart-1);
+        }
+
+        _format = _options.format().isSet() 
+            ? *_options.format()
+            : osgDB::getLowerCaseFileExtension( xyzURI.base() );
+
+        return STATUS_OK;
+    }
+
+
+    osg::Image* createImage(const TileKey&     key,
+                            ProgressCallback*  progress )
+    {
+        unsigned x, y;
+        key.getTileXY( x, y );
+
+        if ( _options.invertY() == true )
+        {
+            unsigned cols=0, rows=0;
+            key.getProfile()->getNumTiles( key.getLevelOfDetail(), cols, rows );
+            y = rows - y - 1;
+        }
+
+        std::string location = _template;
+        replaceIn( location, "{x}", Stringify() << x );
+        replaceIn( location, "{y}", Stringify() << y );
+        replaceIn( location, "{z}", Stringify() << key.getLevelOfDetail() );
+
+        std::string cacheKey;
+
+        if ( !_rotateChoices.empty() )
+        {
+            cacheKey = location;
+            unsigned index = (++_rotate_iter) % _rotateChoices.size();
+            replaceIn( location, _rotateString, Stringify() << _rotateChoices[index] );
+        }
+
+
+        URI uri( location, _options.url()->context() );
+        if ( !cacheKey.empty() )
+            uri.setCacheKey( cacheKey );
+
+        OE_TEST << LC << "URI: " << uri.full() << ", key: " << uri.cacheKey() << std::endl;
+
+        return uri.getImage( _dbOptions.get(), progress );
+    }
+
+    virtual std::string getExtension() const 
+    {
+        return _format;
+    }
+
+private:
+    const XYZOptions       _options;
+    std::string            _format;
+    std::string            _template;
+    std::string            _rotateChoices;
+    std::string            _rotateString;
+    std::string::size_type _rotateStart, _rotateEnd;
+    OpenThreads::Atomic    _rotate_iter;
+
+    osg::ref_ptr<osgDB::Options> _dbOptions;
+};
+
+
+
+
+class XYZTileSourceDriver : public TileSourceDriver
+{
+public:
+    XYZTileSourceDriver()
+    {
+        supportsExtension( "osgearth_xyz", "XYZ Driver" );
+    }
+
+    virtual const char* className()
+    {
+        return "XYZ Driver";
+    }
+
+    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
+    {
+        if ( !acceptsExtension(osgDB::getLowerCaseFileExtension( file_name )))
+            return ReadResult::FILE_NOT_HANDLED;
+
+        return new XYZSource( getTileSourceOptions(options) );
+    }
+};
+
+REGISTER_OSGPLUGIN(osgearth_xyz, XYZTileSourceDriver)
diff --git a/src/osgEarthDrivers/xyz/XYZOptions b/src/osgEarthDrivers/xyz/XYZOptions
new file mode 100644
index 0000000..41f60f5
--- /dev/null
+++ b/src/osgEarthDrivers/xyz/XYZOptions
@@ -0,0 +1,88 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_DRIVER_XYZ_OPTIONS
+#define OSGEARTH_DRIVER_XYZ_OPTIONS 1
+
+#include <osgEarth/Common>
+#include <osgEarth/TileSource>
+#include <osgEarth/URI>
+
+namespace osgEarth { namespace Drivers
+{
+    using namespace osgEarth;
+
+    class XYZOptions : public TileSourceOptions // NO EXPORT; header only
+    {
+    public:
+        optional<URI>& url() { return _url; }
+        const optional<URI>& url() const { return _url; }
+
+        optional<bool>& invertY() { return _invertY; }
+        const optional<bool>& invertY() const { return _invertY; }
+
+        optional<std::string>& format() { return _format; }
+        const optional<std::string>& format() const { return _format; }
+
+    public:
+        XYZOptions( const TileSourceOptions& opt =TileSourceOptions() ) : TileSourceOptions( opt )
+        {
+            setDriver( "xyz" );
+            fromConfig( _conf );
+        }
+
+        XYZOptions( const std::string& inUrl ) : TileSourceOptions()
+        {
+            setDriver( "xyz" );
+            fromConfig( _conf );
+            url() = inUrl;
+        }
+
+        virtual ~XYZOptions() { }
+
+    public:
+        Config getConfig() const {
+            Config conf = TileSourceOptions::getConfig();
+            conf.updateIfSet("url", _url);
+            conf.updateIfSet("format", _format);
+            conf.updateIfSet("invert_y", _invertY);
+            return conf;
+        }
+
+    protected:
+        void mergeConfig( const Config& conf ) {
+            TileSourceOptions::mergeConfig( conf );
+            fromConfig( conf );
+        }
+
+    private:
+        void fromConfig( const Config& conf ) {
+            conf.getIfSet( "url", _url );
+            conf.getIfSet( "format", _format );
+            conf.getIfSet( "invert_y", _invertY );
+        }
+
+        optional<URI>         _url;
+        optional<std::string> _format;
+        optional<bool>        _invertY;
+    };
+
+} } // namespace osgEarth::Drivers
+
+#endif // OSGEARTH_DRIVER_XYZ_OPTIONS
+
diff --git a/src/osgEarthDrivers/yahoo/ReaderWriterYahoo.cpp b/src/osgEarthDrivers/yahoo/ReaderWriterYahoo.cpp
index b2104c2..f695813 100644
--- a/src/osgEarthDrivers/yahoo/ReaderWriterYahoo.cpp
+++ b/src/osgEarthDrivers/yahoo/ReaderWriterYahoo.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,6 +19,7 @@
 
 #include <osgEarth/TileSource>
 #include <osgEarth/Registry>
+#include <osgEarth/URI>
 
 #include <osg/Notify>
 #include <osgDB/FileNameUtils>
@@ -42,16 +43,24 @@ public:
     }
 
     // Yahoo! uses spherical mercator, but the top LOD is a 2x2 tile set.
-    void initialize( const std::string& referenceURI, const Profile* overrideProfile)
+    Status initialize(const osgDB::Options* dbOptions)
     {
+        // no caching of source tiles
+        _dbOptions = Registry::instance()->cloneOrCreateOptions( dbOptions );
+        CachePolicy::NO_CACHE.apply( _dbOptions.get() );
+
+        // always a sperhical mercator profile
         setProfile( Profile::create( "spherical-mercator", "", 2, 2 ) );
+
+        return STATUS_OK;
     }
 
-    osg::Image* createImage( const TileKey& key,
-                             ProgressCallback* progress )
+    osg::Image* createImage(const TileKey&        key,
+                            ProgressCallback*     progress )
     {
         //Return NULL if we are given a non global-mercator key
-        if ( !key.getProfile()->getProfileType() == Profile::TYPE_MERCATOR ) return 0;
+        //Not applicable
+        //if ( !key.getProfile()->getProfileType() == Profile::TYPE_MERCATOR ) return 0;
 
         std::stringstream buf;
 
@@ -88,37 +97,37 @@ public:
                 << "&z=" << zoom + 2;
         }
 
-		std::string base;
-		base = buf.str();
+        std::string base;
+        base = buf.str();
 
         OE_DEBUG << key.str() << "=" << base << std::endl;
-        
-        osg::ref_ptr<osg::Image> image;
-        HTTPClient::readImageFile( base, image, 0L, progress ); //getOptions(), progress );
-        return image.release();
+
+        return URI(base).readImage( _dbOptions.get() ).releaseImage();
     }
 
-    osg::HeightField* createHeightField( const TileKey& key,
-                                         ProgressCallback* progress)
+    osg::HeightField* createHeightField(const TileKey&        key,
+                                        ProgressCallback*     progress )
     {
         //NI
         OE_WARN << "[Yahoo] Driver does not support heightfields" << std::endl;
         return NULL;
     }
 
-    virtual std::string getExtension()  const 
+    std::string getExtension()  const 
     {
         //All Yahoo tiles are in JPEG format
         return "jpg";
     }
-
-    virtual bool supportsPersistentCaching() const
+    
+    /** Tell the terrain engine not to cache tiles form this source. */
+    CachePolicy getCachePolicyHint() const
     {
-        return false;
+        return CachePolicy::NO_CACHE;
     }
 
 private:
-    const YahooOptions _options;
+    const YahooOptions           _options;
+    osg::ref_ptr<osgDB::Options> _dbOptions;
 };
 
 
diff --git a/src/osgEarthDrivers/yahoo/YahooOptions b/src/osgEarthDrivers/yahoo/YahooOptions
index f32e972..92b99ac 100644
--- a/src/osgEarthDrivers/yahoo/YahooOptions
+++ b/src/osgEarthDrivers/yahoo/YahooOptions
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -39,6 +39,9 @@ namespace osgEarth { namespace Drivers
             fromConfig( _conf );
         }
 
+        /** dtor */
+        virtual ~YahooOptions() { }
+
     public:
         Config getConfig() const {
             Config conf = TileSourceOptions::getConfig();
diff --git a/src/osgEarthDrivers/zipfs/CMakeLists.txt b/src/osgEarthDrivers/zipfs/CMakeLists.txt
deleted file mode 100644
index 1c0cd26..0000000
--- a/src/osgEarthDrivers/zipfs/CMakeLists.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-INCLUDE_DIRECTORIES( ${LIBZIP_INCLUDE_DIR} )
-
-SET(TARGET_SRC
-    ReaderWriterZipFS.cpp)
-	
-SET(TARGET_LIBRARIES_VARS LIBZIP_LIBRARY )
-
-SETUP_PLUGIN(zipfs)
diff --git a/src/osgEarthDrivers/zipfs/ReaderWriterZipFS.cpp b/src/osgEarthDrivers/zipfs/ReaderWriterZipFS.cpp
deleted file mode 100644
index 938b358..0000000
--- a/src/osgEarthDrivers/zipfs/ReaderWriterZipFS.cpp
+++ /dev/null
@@ -1,328 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2009 Pelican Ventures, Inc.
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/Notify>
-#include <osgDB/FileNameUtils>
-#include <osgDB/FileUtils>
-#include <osgDB/Registry>
-#include <osgDB/ReadFile>
-#include <osgDB/WriteFile>
-
-#include <OpenThreads/ReentrantMutex>
-
-#include <sstream>
-#include <string.h>
-
-#include "zip.h"
-
-using namespace osg;
-using namespace osgDB;
-
-static OpenThreads::ReentrantMutex s_mutex;
-
-/**
-* The ZipFS plugin allows you to treat zip files almost like a virtual file system.
-* You can read and write objects from zips using paths like c:/data/models.zip/cow.osg where cow.osg is a file within the models.zip file.
-*/
-class ReaderWriterZipFS : public osgDB::ReaderWriter
-{
-public:
-
-    enum ObjectType
-    {
-        OBJECT,
-        IMAGE,
-        HEIGHTFIELD,
-        NODE
-    };
-
-    ReaderWriterZipFS()
-    {
-        supportsExtension( "zipfs", "Zip virtual file system" );
-    }
-
-    virtual const char* className()
-    {
-        return "ZIP virtual file system";
-    }
-
-    virtual ReadResult readNode(const std::string& file_name, const Options* options) const
-    {
-        return readFile(NODE, file_name, options);
-    }
-
-    virtual ReadResult readImage(const std::string& file_name, const Options* options) const
-    {
-        return readFile(IMAGE, file_name, options);
-    }
-
-    virtual ReadResult readObject(const std::string& file_name, const Options* options) const
-    {
-        return readFile(OBJECT, file_name, options);
-    }
-
-    virtual ReadResult readHeightField(const std::string& file_name, const Options* options) const
-    {
-        return readFile(HEIGHTFIELD, file_name, options);
-    }
-
-    virtual WriteResult writeObject(const osg::Object& obj, const std::string& fileName, const osgDB::ReaderWriter::Options* options) const
-    {
-        return writeFile(OBJECT, &obj, fileName, options);
-    }
-
-    virtual WriteResult writeImage(const osg::Image& image, const std::string& fileName, const osgDB::ReaderWriter::Options* options) const
-    {
-        return writeFile(IMAGE, &image, fileName, options);
-    }
-
-    virtual WriteResult writeHeightField(const osg::HeightField& hf, const std::string& fileName, const osgDB::ReaderWriter::Options* options) const
-    {
-        return writeFile(HEIGHTFIELD, &hf, fileName, options);
-    }
-
-    virtual WriteResult writeNode(const osg::Node& node, const std::string& fileName, const osgDB::ReaderWriter::Options* options) const
-    {
-        return writeFile(NODE, &node, fileName,options);
-    }
-
-    WriteResult writeFile(ObjectType objectType, const osg::Object* object, osgDB::ReaderWriter* rw, std::ostream& fout, const osgDB::ReaderWriter::Options* options) const
-    {
-        switch (objectType)
-        {
-        case(OBJECT): return rw->writeObject(*object, fout, options);
-        case(IMAGE): return rw->writeImage(*(dynamic_cast<const osg::Image*>(object)), fout, options);
-        case(HEIGHTFIELD): return rw->writeHeightField(*(dynamic_cast<const osg::HeightField*>(object)), fout, options);
-        case(NODE): return rw->writeNode(*(dynamic_cast<const osg::Node*>(object)), fout,options);
-        default: break;
-        }
-        return WriteResult::FILE_NOT_HANDLED;
-    }
-
-
-    ReadResult readFile(ObjectType objectType, osgDB::ReaderWriter* rw, std::istream& fin, const osgDB::ReaderWriter::Options* options) const
-    {
-        switch (objectType)
-        {
-          case(OBJECT): return rw->readObject(fin, options);
-          case(IMAGE): return rw->readImage(fin, options);
-          case(HEIGHTFIELD): return rw->readHeightField(fin, options);
-          case(NODE): return rw->readNode(fin, options);
-          default: break;
-        }
-        return ReadResult::FILE_NOT_HANDLED;
-    }
-
-    ReadResult readFile(ObjectType objectType, const std::string &fullFileName, const osgDB::ReaderWriter::Options* options) const
-    {
-        OpenThreads::ScopedLock<OpenThreads::ReentrantMutex> lock(s_mutex);
-
-        //This plugin allows you to treat zip files almost like virtual directories.  So, the pathname to the file you want in the zip should
-        //be of the format c:\data\myzip.zip\images\foo.png
-
-        std::string::size_type len = fullFileName.find(".zip");
-        if (len == std::string::npos)
-        {
-            osg::notify(osg::INFO) << "ReaderWriterZipFS: Path does not contain zip file" << std::endl;
-            return ReadResult::FILE_NOT_HANDLED;
-        }
-
-        std::string zipFile = fullFileName.substr(0, len + 4);
-        zipFile = osgDB::findDataFile(zipFile);
-        zipFile = osgDB::convertFileNameToNativeStyle( zipFile );
-
-        //Return if the file doesn't exist
-        if (!osgDB::fileExists( zipFile )) return ReadResult::FILE_NOT_FOUND;
-
-        osg::notify(osg::INFO) << "ReaderWriterZipFS::readFile  ZipFile path is " << zipFile << std::endl;
-
-        std::string zipEntry = fullFileName.substr(len+4);
-
-
-        //Strip the leading slash from the zip entry
-        if ((zipEntry.length() > 0) && 
-            ((zipEntry[0] == '/') || (zipEntry[0] == '\\')))
-        {
-            zipEntry = zipEntry.substr(1);
-        }
-
-
-        //Lipzip returns filenames with '/' rather than '\\', even on Windows.  So, convert the zip entry to Unix style
-        zipEntry = osgDB::convertFileNameToUnixStyle(zipEntry);
-        osg::notify(osg::INFO) << "Zip Entry " << zipEntry << std::endl;
-
-        //See if we can get a ReaderWriter for the zip entry before we even try to unzip the file
-         ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(osgDB::getFileExtension(zipEntry));
-         if (!rw)
-         {
-             osg::notify(osg::NOTICE) << "Could not find ReaderWriter for " << zipEntry << std::endl;
-             return ReadResult::FILE_NOT_HANDLED;
-         }
-
-
-        int err;
-
-        //Open the zip file
-        struct zip* pZip = zip_open(zipFile.c_str(), ZIP_CHECKCONS, &err);
-        if (pZip)
-        {
-            //List the files
-            /*int numFiles = zip_get_num_files(pZip);
-            osg::notify(osg::NOTICE) << zipFile << " has " << numFiles << " files " << std::endl;
-            for (int i = 0; i < numFiles; ++i)
-            {
-            osg::notify(osg::NOTICE) << i << ": " << zip_get_name(pZip, i, 0) << std::endl;
-            }*/
-
-            //Find the index within the zip file for the given zip entry
-            int zipIndex = zip_name_locate(pZip, zipEntry.c_str(), 0);
-
-            osg::notify(osg::INFO) << "ReaderWriterZipFS: ZipFile index " << zipIndex << std::endl;
-            if (zipIndex < 0)
-            {
-                osg::notify(osg::INFO) << "Could not find zip entry " << zipEntry << " in " << zipFile << std::endl;
-                //Make sure to close the zipfile
-                zip_close(pZip);
-                return ReadResult::FILE_NOT_FOUND;  
-            }
-            
-            //Open the entry for reading
-            zip_file* pZipFile = zip_fopen_index(pZip, zipIndex, 0);
-
-            if (pZipFile) 
-            {
-                //Read the data from the entry into a std::string
-                int dataSize = 0;
-                std::string data;
-                do{
-                    char buffer[1024];
-                    dataSize = zip_fread(pZipFile, buffer, 1024);
-                    if (dataSize > 0)
-                    {
-                       data.append((char*)buffer, dataSize);
-                    }
-                }while (dataSize > 0);
-
-                //Close the zip entry and the actual zip file itself
-                zip_fclose(pZipFile);
-                zip_close(pZip);
-
-                std::stringstream strstream(data);
-                return readFile(objectType, rw, strstream, options);
-            }
-        }
-        else
-        {
-            osg::notify(osg::NOTICE) << "ReaderWriterZipFS::readFile couldn't open zip " << zipFile << " full filename " << fullFileName << std::endl;
-        }
-        return ReadResult::FILE_NOT_HANDLED;
-    }
-
-    WriteResult writeFile(ObjectType objectType, const osg::Object* object, const std::string& fullFileName, const osgDB::ReaderWriter::Options* options) const
-    {       
-        OpenThreads::ScopedLock<OpenThreads::ReentrantMutex> lock(s_mutex);
-
-        std::string::size_type len = fullFileName.find(".zip");
-        if (len == std::string::npos)
-        {
-            osg::notify(osg::INFO) << "ReaderWriterZipFS: Path does not contain zip file" << std::endl;
-            return WriteResult::FILE_NOT_HANDLED;
-        }
-
-        //It is possible that the zip file doesn't currently exist, so we just use getRealPath instead of findDataFile as in the readFile method
-        std::string zipFile = osgDB::getRealPath(fullFileName.substr(0, len + 4));
-
-        std::string path = osgDB::getFilePath(zipFile);
-        //If the path doesn't currently exist, create it
-        if (!osgDB::fileExists(path) && !osgDB::makeDirectory(path))
-        {
-            osg::notify(osg::WARN) << "Couldn't create path " << path << std::endl;
-        }
-
-        osg::notify(osg::INFO) << "ReaderWriterZipFS::writeFile ZipFile path is " << zipFile << std::endl;
-
-        std::string zipEntry = fullFileName.substr(len+4);
-
-
-        //Strip the leading slash from the zip entry
-        if ((zipEntry.length() > 0) && 
-            ((zipEntry[0] == '/') || (zipEntry[0] == '\\')))
-        {
-            zipEntry = zipEntry.substr(1);
-        }
-
-
-        //Lipzip returns filenames with '/' rather than '\\', even on Windows.  So, convert the zip entry to Unix style
-        zipEntry = osgDB::convertFileNameToUnixStyle(zipEntry);
-        osg::notify(osg::INFO) << "Zip Entry " << zipEntry << std::endl;
-
-        //See if we can get a ReaderWriter for the zip entry before we even try to unzip the file
-         ReaderWriter* rw = osgDB::Registry::instance()->getReaderWriterForExtension(osgDB::getFileExtension(zipEntry));
-         if (!rw)
-         {
-             osg::notify(osg::INFO) << "Could not find ReaderWriter for " << zipEntry << std::endl;
-             return WriteResult::FILE_NOT_HANDLED;
-         }
-
-        int err;
-
-        //Open the zip file
-        struct zip* pZip = zip_open(zipFile.c_str(), ZIP_CREATE|ZIP_CHECKCONS, &err);
-        if (pZip)
-        {
-            //Write the data to the stream
-            std::ostringstream strstream;
-            writeFile(objectType, object, rw, strstream, options);
-
-            char *data = new char[strstream.str().length()];
-            memcpy(data, strstream.str().c_str(), strstream.str().size());
-
-            WriteResult wr;
-            struct zip_source *zs = zip_source_buffer(pZip, data, strstream.str().length(), 0);
-            if (zs)
-            {
-                if (zip_add(pZip, zipEntry.c_str(), zs) != -1) 
-                {
-                    wr = WriteResult::FILE_SAVED;
-                }
-                else
-                {
-                  osg::notify(osg::NOTICE) << "Couldn't add zip source " << std::endl;
-                  wr = WriteResult::ERROR_IN_WRITING_FILE;
-                }
-            }
-            else
-            {
-                osg::notify(osg::NOTICE) << "Couldn't create zip source " << std::endl;
-                wr = WriteResult::ERROR_IN_WRITING_FILE;
-            }
-            zip_close(pZip);
-            delete[] data;
-            return wr;
-        }
-        else
-        {
-            osg::notify(osg::NOTICE) << "ReaderWriterZipFS::writeFile couldn't open zip " << zipFile << " full filename " << fullFileName << std::endl;
-        }
-        return WriteResult::FILE_NOT_HANDLED;      
-    }
-};
-
-REGISTER_OSGPLUGIN(zipfs, ReaderWriterZipFS)
-
diff --git a/src/osgEarthFeatures/AltitudeFilter b/src/osgEarthFeatures/AltitudeFilter
index 69fe63d..7bf2935 100644
--- a/src/osgEarthFeatures/AltitudeFilter
+++ b/src/osgEarthFeatures/AltitudeFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -36,6 +36,8 @@ namespace osgEarth { namespace Features
     public:
         /** Constructs a new clamping filter */     
         AltitudeFilter();
+        
+        virtual ~AltitudeFilter() { }
 
     public: // properties
 
@@ -53,6 +55,9 @@ namespace osgEarth { namespace Features
         osg::ref_ptr<const AltitudeSymbol> _altitude;
         double                             _maxRes;
         std::string                        _maxZAttr, _minZAttr, _terrainZAttr;
+
+        void pushAndClamp( FeatureList& input, FilterContext& cx );
+        void pushAndDontClamp( FeatureList& input, FilterContext& cx );
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/AltitudeFilter.cpp b/src/osgEarthFeatures/AltitudeFilter.cpp
index 49fa743..5ee365d 100644
--- a/src/osgEarthFeatures/AltitudeFilter.cpp
+++ b/src/osgEarthFeatures/AltitudeFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -47,42 +47,107 @@ AltitudeFilter::setPropertiesFromStyle( const Style& style )
 FilterContext
 AltitudeFilter::push( FeatureList& features, FilterContext& cx )
 {
-    const Session* session = cx.getSession();
-    if ( !session ) {
-        OE_WARN << LC << "No session - session is required for elevation clamping" << std::endl;
-        return cx;
+    bool clamp = 
+        _altitude.valid() && 
+        _altitude->clamping() != AltitudeSymbol::CLAMP_NONE &&
+        cx.getSession()       != 0L &&
+        cx.profile()          != 0L;
+
+    if ( clamp )
+        pushAndClamp( features, cx );
+    else
+        pushAndDontClamp( features, cx );
+
+    return cx;
+}
+
+void
+AltitudeFilter::pushAndDontClamp( FeatureList& features, FilterContext& cx )
+{
+    NumericExpression scaleExpr;
+    if ( _altitude.valid() && _altitude->verticalScale().isSet() )
+        scaleExpr = *_altitude->verticalScale();
+
+    NumericExpression offsetExpr;
+    if ( _altitude.valid() && _altitude->verticalOffset().isSet() )
+        offsetExpr = *_altitude->verticalOffset();
+
+    for( FeatureList::iterator i = features.begin(); i != features.end(); ++i )
+    {
+        Feature* feature = i->get();
+
+        double minHAT       =  DBL_MAX;
+        double maxHAT       = -DBL_MAX;
+
+        double scaleZ = 1.0;
+        if ( _altitude.valid() && _altitude->verticalScale().isSet() )
+            scaleZ = feature->eval( scaleExpr );
+
+        double offsetZ = 0.0;
+        if ( _altitude.valid() && _altitude->verticalOffset().isSet() )
+            offsetZ = feature->eval( offsetExpr );
+        
+        GeometryIterator gi( feature->getGeometry() );
+        while( gi.hasMore() )
+        {
+            Geometry* geom = gi.next();
+            for( Geometry::iterator g = geom->begin(); g != geom->end(); ++g )
+            {
+                g->z() *= scaleZ;
+                g->z() += offsetZ;
+
+                if ( g->z() < minHAT )
+                    minHAT = g->z();
+                if ( g->z() > maxHAT )
+                    maxHAT = g->z();
+            }
+        }
+
+        if ( minHAT != DBL_MAX )
+        {
+            feature->set( "__min_hat", minHAT );
+            feature->set( "__max_hat", maxHAT );
+        }
     }
+}
+
+void
+AltitudeFilter::pushAndClamp( FeatureList& features, FilterContext& cx )
+{
+    const Session* session = cx.getSession();
 
     // the map against which we'll be doing elevation clamping
-    MapFrame mapf = session->createMapFrame( Map::ELEVATION_LAYERS );
+    //MapFrame mapf = session->createMapFrame( Map::ELEVATION_LAYERS );
+    MapFrame mapf = session->createMapFrame( Map::TERRAIN_LAYERS );
 
-    const SpatialReference* mapSRS     = mapf.getProfile()->getSRS();
-    const SpatialReference* featureSRS = cx.profile()->getSRS();
+    const SpatialReference* mapSRS = mapf.getProfile()->getSRS();
+    osg::ref_ptr<const SpatialReference> featureSRS = cx.profile()->getSRS();
 
     // establish an elevation query interface based on the features' SRS.
     ElevationQuery eq( mapf );
 
     NumericExpression scaleExpr;
-    if ( _altitude.valid() && _altitude->verticalScale().isSet() )
+    if ( _altitude->verticalScale().isSet() )
         scaleExpr = *_altitude->verticalScale();
 
     NumericExpression offsetExpr;
-    if ( _altitude.valid() && _altitude->verticalOffset().isSet() )
+    if ( _altitude->verticalOffset().isSet() )
         offsetExpr = *_altitude->verticalOffset();
 
-    bool clamp =
-        _altitude->clamping() != AltitudeSymbol::CLAMP_NONE;
-
-    // whether to record a "minimum terrain" value
+    // whether to record the min/max height-above-terrain values.
     bool collectHATs =
         _altitude->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN ||
         _altitude->clamping() == AltitudeSymbol::CLAMP_ABSOLUTE;
 
+    // whether the SRS's have a compatible vertical datum.
+    bool vertEquiv =
+        featureSRS->isVertEquivalentTo( mapSRS );
+
     for( FeatureList::iterator i = features.begin(); i != features.end(); ++i )
     {
         Feature* feature = i->get();
-        double maxGeomZ     = -DBL_MAX;
-        double minGeomZ     =  DBL_MAX;
+        //double maxGeomZ     = -DBL_MAX;
+        //double minGeomZ     =  DBL_MAX;
         double maxTerrainZ  = -DBL_MAX;
         double minTerrainZ  =  DBL_MAX;
         double minHAT       =  DBL_MAX;
@@ -90,66 +155,121 @@ AltitudeFilter::push( FeatureList& features, FilterContext& cx )
 
         double scaleZ = 1.0;
         if ( _altitude.valid() && _altitude->verticalScale().isSet() )
-            scaleZ = feature->eval( scaleExpr );
+            scaleZ = feature->eval( scaleExpr, &cx );
 
         double offsetZ = 0.0;
         if ( _altitude.valid() && _altitude->verticalOffset().isSet() )
-            offsetZ = feature->eval( offsetExpr );
+            offsetZ = feature->eval( offsetExpr, &cx );
         
         GeometryIterator gi( feature->getGeometry() );
         while( gi.hasMore() )
         {
             Geometry* geom = gi.next();
 
-            // clamps the entire array to the terrain using the specified resolution.
-            if ( clamp )
+            // Absolute heights in Z. Only need to collect the HATs; the geometry
+            // remains unchanged.
+            if ( _altitude->clamping() == AltitudeSymbol::CLAMP_ABSOLUTE )
             {
-                if ( collectHATs )
+                std::vector<double> elevations;
+                elevations.reserve( geom->size() );
+
+                if ( eq.getElevations( geom->asVector(), featureSRS, elevations, _maxRes ) )
                 {
-                    std::vector<double> elevations;
-                    elevations.reserve( geom->size() );
-                    eq.getElevations( geom->asVector(), featureSRS, elevations, _maxRes );
                     for( unsigned i=0; i<geom->size(); ++i )
                     {
-                        double z = (*geom)[i].z() * scaleZ + offsetZ;
-                        double hat =
-                            _altitude->clamping() == AltitudeSymbol::CLAMP_ABSOLUTE ? z - elevations[i] :
-                            z;
+                        osg::Vec3d& p = (*geom)[i];
+                        double z = p.z();
+
+                        if ( !vertEquiv )
+                        {
+                            osg::Vec3d tempgeo;
+                            if ( !featureSRS->transform(p, mapSRS->getGeographicSRS(), tempgeo) )
+                                z = tempgeo.z();
+                        }
+
+                        double hat = z - elevations[i];
 
                         if ( hat > maxHAT )
                             maxHAT = hat;
                         if ( hat < minHAT )
                             minHAT = hat;
 
-                        double elev = elevations[i];
-                        if ( elev > maxTerrainZ )
-                            maxTerrainZ = elev;
-                        if ( elev < minTerrainZ )
-                            minTerrainZ = elev;
+                        if ( elevations[i] > maxTerrainZ )
+                            maxTerrainZ = elevations[i];
+                        if ( elevations[i] < minTerrainZ )
+                            minTerrainZ = elevations[i];
+                    }
+                }
+            }
 
-                        (*geom)[i].z() =
-                            _altitude->clamping() == AltitudeSymbol::CLAMP_ABSOLUTE ? z :
-                            z + elevations[i];
+            // Heights-above-ground in Z. Need to resolve this to an absolute number
+            // and record HATs along the way.
+            else if ( _altitude->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN )
+            {
+                osg::ref_ptr<const SpatialReference> featureSRSwithMapVertDatum = !vertEquiv ?
+                    SpatialReference::create(featureSRS->getHorizInitString(), mapSRS->getVertInitString()) : 0L;
+
+                std::vector<double> elevations;
+                elevations.reserve( geom->size() );
+
+                if ( eq.getElevations( geom->asVector(), featureSRS, elevations, _maxRes ) )
+                {
+                    for( unsigned i=0; i<geom->size(); ++i )
+                    {
+                        osg::Vec3d& p = (*geom)[i];
+
+                        double hat = p.z();
+                        p.z() = elevations[i] + p.z();
+
+                        // if necessary, convert the Z value (which is now in the map's SRS) back to
+                        // the feature's SRS.
+                        if ( !vertEquiv )
+                        {
+                            featureSRSwithMapVertDatum->transform(p, featureSRS, p);
+                        }
+
+                        if ( hat > maxHAT )
+                            maxHAT = hat;
+                        if ( hat < minHAT )
+                            minHAT = hat;
+
+                        if ( elevations[i] > maxTerrainZ )
+                            maxTerrainZ = elevations[i];
+                        if ( elevations[i] < minTerrainZ )
+                            minTerrainZ = elevations[i];
                     }
                 }
-                else
+
+            }
+
+            // Clamp - replace the geometry's Z with the terrain height.
+            else // CLAMP_TO_TERRAIN
+            {
+                eq.getElevations( geom->asVector(), featureSRS, true, _maxRes );
+                
+                // if necessary, transform the Z values (which are now in the map SRS) back
+                // into the feature's SRS.
+                if ( !vertEquiv )
                 {
-                    eq.getElevations( geom->asVector(), featureSRS, true, _maxRes );
+                    osg::ref_ptr<const SpatialReference> featureSRSwithMapVertDatum = !vertEquiv ?
+                        SpatialReference::create(featureSRS->getHorizInitString(), mapSRS->getVertInitString()) : 0L;
+
+                    osg::Vec3d tempgeo;
+                    for( unsigned i=0; i<geom->size(); ++i )
+                    {
+                        osg::Vec3d& p = (*geom)[i];
+                        featureSRSwithMapVertDatum->transform(p, featureSRS, p);
+                    }
                 }
             }
 
-            for( Geometry::iterator i = geom->begin(); i != geom->end(); ++i )
+            if ( !collectHATs )
             {
-                if ( !collectHATs )
+                for( Geometry::iterator i = geom->begin(); i != geom->end(); ++i )
                 {
                     i->z() *= scaleZ;
                     i->z() += offsetZ;
                 }
-
-                if ( i->z() > maxGeomZ )
-                    maxGeomZ = i->z();
-                if ( i->z() < minGeomZ )
-                    minGeomZ = i->z();
             }
         }
 
@@ -159,18 +279,10 @@ AltitudeFilter::push( FeatureList& features, FilterContext& cx )
             feature->set( "__max_hat", maxHAT );
         }
 
-        if ( minGeomZ != DBL_MAX )
-        {
-            feature->set( "__min_geom_z", minGeomZ );
-            feature->set( "__max_geom_z", maxGeomZ );
-        }
-
         if ( minTerrainZ != DBL_MAX )
         {
             feature->set( "__min_terrain_z", minTerrainZ );
             feature->set( "__max_terrain_z", maxTerrainZ );
         }
     }
-
-    return cx;
 }
diff --git a/src/osgEarthFeatures/BufferFilter b/src/osgEarthFeatures/BufferFilter
index dbe8ae5..a520fef 100644
--- a/src/osgEarthFeatures/BufferFilter
+++ b/src/osgEarthFeatures/BufferFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -55,6 +55,16 @@ namespace osgEarth { namespace Features
         BufferFilter();
         BufferFilter( const BufferFilter& rhs );
 
+        BufferFilter( const Config& conf );
+
+        /**
+         * Serialize this FeatureFilter
+         */
+        virtual Config getConfig() const;
+
+
+        virtual ~BufferFilter() { }
+
     public:
         // how far to buffer; positive to dialate, negative to erode
         optional<double>& distance() { return _distance; }
diff --git a/src/osgEarthFeatures/BufferFilter.cpp b/src/osgEarthFeatures/BufferFilter.cpp
index 0d38fdf..fc9fac6 100644
--- a/src/osgEarthFeatures/BufferFilter.cpp
+++ b/src/osgEarthFeatures/BufferFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,6 +18,8 @@
  */
 #include <osgEarthFeatures/BufferFilter>
 
+#define LC "[BufferFilter] "
+
 using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
@@ -38,6 +40,8 @@ BufferFilter::isSupported()
     if ( !BufferFilter::isSupported() ) { \
         OE_NOTICE << "BufferFilter NOT SUPPORTED - please compile osgEarth with GEOS" << std::endl; }
 
+OSGEARTH_REGISTER_SIMPLE_FEATUREFILTER(buffer, BufferFilter );
+
 BufferFilter::BufferFilter() :
 _distance   ( 1.0 ),
 _numQuadSegs( 0 ),
@@ -54,6 +58,24 @@ _capStyle   ( rhs._capStyle )
     //NOP
 }
 
+BufferFilter::BufferFilter( const Config& conf ) :
+_distance   ( 1.0 ),
+_numQuadSegs( 0 ),
+_capStyle   ( Stroke::LINECAP_DEFAULT )
+{
+    if (conf.key() == "buffer")
+    {
+        conf.getIfSet( "distance", _distance );
+    }
+}
+
+Config BufferFilter::getConfig() const
+{
+    Config config( "buffer" );
+    config.addIfSet( "distance", _distance);
+    return config;
+}
+
 FilterContext
 BufferFilter::push( FeatureList& input, FilterContext& context )
 {
@@ -64,10 +86,10 @@ BufferFilter::push( FeatureList& input, FilterContext& context )
     }
 
     //OE_NOTICE << "Buffer: input = " << input.size() << " features" << std::endl;
-    for( FeatureList::iterator i = input.begin(); i != input.end(); ++i )
+    for( FeatureList::iterator i = input.begin(); i != input.end(); )
     {
-        Feature* input = i->get();
-        if ( !input || !input->getGeometry() )
+        Feature* feature = i->get();
+        if ( !feature || !feature->getGeometry() )
             continue;
 
         osg::ref_ptr<Symbology::Geometry> output;
@@ -82,9 +104,15 @@ BufferFilter::push( FeatureList& input, FilterContext& context )
 
         params._cornerSegs = _numQuadSegs;
 
-        if ( input->getGeometry()->buffer( _distance.value(), output, params ) )
+        if ( feature->getGeometry()->buffer( _distance.value(), output, params ) )
+        {
+            feature->setGeometry( output.get() );
+            ++i;
+        }
+        else
         {
-            input->setGeometry( output.get() );
+            i = input.erase( i );
+            OE_INFO << LC << "feature " << feature->getFID() << " yielded no geometry" << std::endl;
         }
     }
 
diff --git a/src/osgEarthFeatures/BuildGeometryFilter b/src/osgEarthFeatures/BuildGeometryFilter
index 67cd553..bd0bcd9 100644
--- a/src/osgEarthFeatures/BuildGeometryFilter
+++ b/src/osgEarthFeatures/BuildGeometryFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -40,6 +40,8 @@ namespace osgEarth { namespace Features
     public:
         BuildGeometryFilter( const Style& style =Style() );
 
+        virtual ~BuildGeometryFilter() { }
+
         /** Pushes a list of features through the filter. */
         osg::Node* push( FeatureList& input, FilterContext& context );
 
@@ -79,6 +81,12 @@ namespace osgEarth { namespace Features
         optional<StringExpression>& featureName() { return _featureNameExpr; }
         const optional<StringExpression>& featureName() const { return _featureNameExpr; }
 
+        /**
+         * Whether or not to use vertex buffer objects
+         */
+        optional<bool>& useVertexBufferObjects() { return _useVertexBufferObjects;}
+        const optional<bool>& useVertexBufferObjects() const { return _useVertexBufferObjects;}
+
     protected:
         osg::ref_ptr<osg::Node> _result;
         osg::ref_ptr<osg::Geode> _geode;
@@ -87,6 +95,7 @@ namespace osgEarth { namespace Features
         optional<GeoInterpolation> _geoInterp;
         optional<bool> _mergeGeometry;
         optional<StringExpression> _featureNameExpr;
+        optional<bool> _useVertexBufferObjects;
         bool _hasPoints;
         bool _hasLines;
         bool _hasPolygons;
@@ -94,6 +103,14 @@ namespace osgEarth { namespace Features
         void reset();
         
         bool process( FeatureList& input, const FilterContext& context );
+        
+        void buildPolygon(
+            Geometry*               input,
+            const SpatialReference* featureSRS,
+            const SpatialReference* mapSRS,
+            bool                    makeECEF,
+            bool                    tessellate,
+            osg::Geometry*          osgGeom);
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/BuildGeometryFilter.cpp b/src/osgEarthFeatures/BuildGeometryFilter.cpp
index 9ab0a44..30df3f6 100644
--- a/src/osgEarthFeatures/BuildGeometryFilter.cpp
+++ b/src/osgEarthFeatures/BuildGeometryFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/BuildGeometryFilter>
+#include <osgEarthFeatures/FeatureSourceIndexNode>
 #include <osgEarthSymbology/TextSymbol>
 #include <osgEarthSymbology/PointSymbol>
 #include <osgEarthSymbology/LineSymbol>
@@ -32,7 +33,6 @@
 #include <osg/Depth>
 #include <osg/PolygonOffset>
 #include <osg/MatrixTransform>
-#include <osg/ClusterCullingCallback>
 #include <osgText/Text>
 #include <osgUtil/Tessellator>
 #include <osgUtil/Optimizer>
@@ -45,11 +45,37 @@ using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 
+#define USE_SINGLE_COLOR 0
+
+namespace
+{
+    void applyLineAndPointSymbology( osg::StateSet* stateSet, const LineSymbol* line, const PointSymbol* point )
+    {
+        if ( line )
+        {
+            float width = std::max( 1.0f, *line->stroke()->width() );
+            stateSet->setAttributeAndModes(new osg::LineWidth(width), 1);
+            if ( line->stroke()->stipple().isSet() )
+            {
+                stateSet->setAttributeAndModes( new osg::LineStipple(1, *line->stroke()->stipple()) );
+            }
+        }
+
+        if ( point )
+        {
+            float size = std::max( 0.1f, *point->size() );
+            stateSet->setAttributeAndModes(new osg::Point(size), 1);
+        }
+    }
+}
+
+
 BuildGeometryFilter::BuildGeometryFilter( const Style& style ) :
 _style        ( style ),
-_maxAngle_deg ( 5.0 ),
+_maxAngle_deg ( 1.0 ),
 _geoInterp    ( GEOINTERP_RHUMB_LINE ),
-_mergeGeometry( false )
+_mergeGeometry( false ),
+_useVertexBufferObjects( true )
 {
     reset();
 }
@@ -67,8 +93,16 @@ BuildGeometryFilter::reset()
 bool
 BuildGeometryFilter::process( FeatureList& features, const FilterContext& context )
 {
-    bool makeECEF = context.getSession()->getMapInfo().isGeocentric();
-    const SpatialReference* srs = context.extent()->getSRS();
+    bool makeECEF = false;
+    const SpatialReference* featureSRS = 0L;
+    const SpatialReference* mapSRS = 0L;
+
+    if ( context.isGeoreferenced() )
+    {
+        makeECEF   = context.getSession()->getMapInfo().isGeocentric();
+        featureSRS = context.extent()->getSRS();
+        mapSRS     = context.getSession()->getMapInfo().getProfile()->getSRS();
+    }
 
     for( FeatureList::iterator f = features.begin(); f != features.end(); ++f )
     {
@@ -78,212 +112,271 @@ BuildGeometryFilter::process( FeatureList& features, const FilterContext& contex
         while( parts.hasMore() )
         {
             Geometry* part = parts.next();
-            
-            osg::PrimitiveSet::Mode primMode = osg::PrimitiveSet::POINTS;
+
+            // skip empty geometry
+            if ( part->size() == 0 )
+                continue;
 
             const Style& myStyle = input->style().isSet() ? *input->style() : _style;
 
-            osg::Vec4f color = osg::Vec4(1,1,1,1);
-            bool tessellatePolys = true;
+            bool  setLinePropsHere   = input->style().isSet(); // otherwise it will be set globally, we assume
+            float width              = 1.0f;
+            bool  hasPolyOutline     = false;
 
-            bool setWidth = input->style().isSet(); // otherwise it will be set globally, we assume
-            float width = 1.0f;
+            const PointSymbol*   pointSymbol = myStyle.get<PointSymbol>();
+            const LineSymbol*    lineSymbol  = myStyle.get<LineSymbol>();
+            const PolygonSymbol* polySymbol  = myStyle.get<PolygonSymbol>();
 
-            switch( part->getType() )
-            {
-            case Geometry::TYPE_POINTSET:
-                {
-                    _hasPoints = true;
-                    primMode = osg::PrimitiveSet::POINTS;
-                    const PointSymbol* point = myStyle.getSymbol<PointSymbol>();
-                    if (point)
-                    {
-                        color = point->fill()->color();
-                    }
-                }
-                break;
+            // resolve the geometry type from the component type and the symbology:
+            Geometry::Type renderType = Geometry::TYPE_UNKNOWN;
 
-            case Geometry::TYPE_LINESTRING:
-                {
-                    _hasLines = true;
-                    primMode = osg::PrimitiveSet::LINE_STRIP;
-                    const LineSymbol* lineSymbol = myStyle.getSymbol<LineSymbol>();
-                    if (lineSymbol)
-                    {
-                        color = lineSymbol->stroke()->color();
-                        width = lineSymbol->stroke()->width().isSet() ? *lineSymbol->stroke()->width() : 1.0f;
-                    }
-                }
-                break;
+            // First priority is a matching part type and symbol:
+            if ( polySymbol != 0L && part->getType() == Geometry::TYPE_POLYGON )
+            {
+                renderType = Geometry::TYPE_POLYGON;
+            }
+            else if ( lineSymbol != 0L && part->isLinear() )
+            {
+                renderType = part->getType();
+            }
+            else if ( pointSymbol != 0L && part->getType() == Geometry::TYPE_POINTSET )
+            {
+                renderType = Geometry::TYPE_POINTSET;
+            }
 
-            case Geometry::TYPE_RING:
-                {
-                    _hasLines = true;
-                    primMode = osg::PrimitiveSet::LINE_LOOP;
-                    const LineSymbol* lineSymbol = myStyle.getSymbol<LineSymbol>();
-                    if (lineSymbol)
-                    {
-                        color = lineSymbol->stroke()->color();
-                        width = lineSymbol->stroke()->width().isSet() ? *lineSymbol->stroke()->width() : 1.0f;
-                    }
-                }
-                break;
+            // Second priority is the symbol:
+            else if ( polySymbol != 0L )
+            {
+                renderType = Geometry::TYPE_POLYGON;
+            }
+            else if ( lineSymbol != 0L )
+            {
+                if ( part->getType() == Geometry::TYPE_POLYGON )
+                    renderType = Geometry::TYPE_RING;
+                else
+                    renderType = Geometry::TYPE_LINESTRING;
+            }
+            else if ( pointSymbol != 0L )
+            {
+                renderType = Geometry::TYPE_POINTSET;
+            }
 
-            case Geometry::TYPE_POLYGON:
-                {
-                    primMode = osg::PrimitiveSet::LINE_LOOP; // loop will tessellate into polys
-                    const PolygonSymbol* poly = myStyle.getSymbol<PolygonSymbol>();
-                    if (poly)
-                    {
-                        _hasPolygons = true;
-                        color = poly->fill()->color();
-                    }
-                    else
-                    {
-                        // if we have a line symbol and no polygon symbol, draw as an outline.
-                        _hasLines = true;
-                        const LineSymbol* line = myStyle.getSymbol<LineSymbol>();
-                        if ( line )
-                        {
-                            color = line->stroke()->color();
-                            width = line->stroke()->width().isSet() ? *line->stroke()->width() : 1.0f;
-                            tessellatePolys = false;
-                        }
-                    }
-                }
-                break;
+            // No symbol? just use the geometry type.
+            else
+            {
+                renderType = part->getType();
             }
+
+            // validate the geometry:
+            if ( renderType == Geometry::TYPE_POLYGON && part->size() < 3 )
+                continue;
+            else if ( (renderType == Geometry::TYPE_LINESTRING || renderType == Geometry::TYPE_RING) && part->size() < 2 )
+                continue;
+
+            // resolve the color:
+            osg::Vec4f primaryColor =
+                polySymbol ? polySymbol->fill()->color() :
+                lineSymbol ? lineSymbol->stroke()->color() :
+                pointSymbol ? pointSymbol->fill()->color() :
+                osg::Vec4f(1,1,1,1);
             
             osg::Geometry* osgGeom = new osg::Geometry();
+            osgGeom->setUseVertexBufferObjects( _useVertexBufferObjects.value() );
 
             if ( _featureNameExpr.isSet() )
             {
-                const std::string& name = input->eval( _featureNameExpr.mutable_value() );
+                const std::string& name = input->eval( _featureNameExpr.mutable_value(), &context );
                 osgGeom->setName( name );
             }
 
-            // NOTE: benchmarking reveals VBOs to be much slower (for static data, at least)
-            //osgGeom->setUseVertexBufferObjects( true );
-            //osgGeom->setUseDisplayList( false );
+            // build the geometry:
+            osg::Vec3Array* allPoints = 0L;
 
-            if ( setWidth && width != 1.0f )
+            if ( renderType == Geometry::TYPE_POLYGON )
             {
-                osgGeom->getOrCreateStateSet()->setAttributeAndModes(
-                    new osg::LineWidth( width ), osg::StateAttribute::ON );
+                buildPolygon(part, featureSRS, mapSRS, makeECEF, true, osgGeom);
+                allPoints = static_cast<osg::Vec3Array*>( osgGeom->getVertexArray() );
             }
-
-            if (_hasLines)
-            {
-                const LineSymbol* line = myStyle.getSymbol<LineSymbol>();
-                if (line && line->stroke().isSet() && line->stroke()->stipple().isSet())
-                {
-                    osg::LineStipple* lineStipple = new osg::LineStipple;
-                    lineStipple->setPattern( *line->stroke()->stipple() );            
-                    osgGeom->getOrCreateStateSet()->setAttributeAndModes( lineStipple, osg::StateAttribute::ON );
-                }
-            }
-            
-            if (part->getType() == Geometry::TYPE_POLYGON && static_cast<Polygon*>(part)->getHoles().size() > 0 )
+            else
             {
-                Polygon* poly = static_cast<Polygon*>(part);
-                int totalPoints = poly->getTotalPointCount();
-                osg::Vec3Array* allPoints; // = new osg::Vec3Array( totalPoints );
-
-                if ( makeECEF )
-                {
-                    allPoints = new osg::Vec3Array();
-                    ECEF::transformAndLocalize( part->asVector(), allPoints, srs, _world2local );
-                }
-                else
-                {
-                    allPoints = new osg::Vec3Array( totalPoints );
-                    std::copy( part->begin(), part->end(), allPoints->begin() );
-                }
+                // line or point geometry
+                GLenum primMode = 
+                    renderType == Geometry::TYPE_LINESTRING ? GL_LINE_STRIP :
+                    renderType == Geometry::TYPE_RING       ? GL_LINE_LOOP :
+                    GL_POINTS;
+                allPoints = new osg::Vec3Array();
+                transformAndLocalize( part->asVector(), featureSRS, allPoints, mapSRS, _world2local, makeECEF );
                 osgGeom->addPrimitiveSet( new osg::DrawArrays( primMode, 0, part->size() ) );
+                osgGeom->setVertexArray( allPoints );
 
-                int offset = part->size();
+                applyLineAndPointSymbology( osgGeom->getOrCreateStateSet(), lineSymbol, pointSymbol );
 
-                for( RingCollection::const_iterator h = poly->getHoles().begin(); h != poly->getHoles().end(); ++h )
+                if ( primMode == GL_POINTS && allPoints->size() == 1 )
                 {
-                    Geometry* hole = h->get();
-                    if ( hole->isValid() )
-                    {
-                        if ( makeECEF )
-                            ECEF::transformAndLocalize( hole->asVector(), allPoints, srs, _world2local );
-                        else
-                            std::copy( hole->begin(), hole->end(), allPoints->begin() + offset );
-
-                        osgGeom->addPrimitiveSet( new osg::DrawArrays( primMode, offset, hole->size() ) );
-                        offset += hole->size();
-                    }
+                    const osg::Vec3d& center = (*allPoints)[0];
+                    osgGeom->setInitialBound( osg::BoundingBox(center-osg::Vec3(.5,.5,.5), center+osg::Vec3(.5,.5,.5)) );
                 }
-                osgGeom->setVertexArray( allPoints );
             }
-            else
+
+            if (allPoints->getVertexBufferObject())
+                allPoints->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);
+            
+            // subdivide the mesh if necessary to conform to an ECEF globe:
+            if ( makeECEF && renderType != Geometry::TYPE_POINTSET )
             {
-                if ( makeECEF )
-                {
-                    osg::Vec3Array* newPart = new osg::Vec3Array();
-                    ECEF::transformAndLocalize( part->asVector(), newPart, srs, _world2local );
-                    osgGeom->setVertexArray( newPart );
-                }
-                else
-                {
-                    osgGeom->setVertexArray( part->toVec3Array() );
+                // check for explicit tessellation disable:
+                const LineSymbol* line = _style.get<LineSymbol>();
+                bool disableTess = line && line->tessellation().isSetTo(0);
+
+                if ( makeECEF && !disableTess )
+                {                    
+                    double threshold = osg::DegreesToRadians( *_maxAngle_deg );
+                    OE_DEBUG << "Running mesh subdivider with threshold " << *_maxAngle_deg << std::endl;
+
+                    MeshSubdivider ms( _world2local, _local2world );
+                    //ms.setMaxElementsPerEBO( INT_MAX );
+                    if ( input->geoInterp().isSet() )
+                        ms.run( *osgGeom, threshold, *input->geoInterp() );
+                    else
+                        ms.run( *osgGeom, threshold, *_geoInterp );
                 }
-                osgGeom->addPrimitiveSet( new osg::DrawArrays( primMode, 0, part->size() ) );
             }
 
-            // tessellate all polygon geometries. Tessellating each geometry separately
-            // with TESS_TYPE_GEOMETRY is much faster than doing the whole bunch together
-            // using TESS_TYPE_DRAWABLE.
 
-            if ( part->getType() == Geometry::TYPE_POLYGON && tessellatePolys )
-            {
-                osgUtil::Tessellator tess;
-                //tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_DRAWABLE );
-                //tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_ODD );
-                tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_GEOMETRY );
-                tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_POSITIVE );
+            // assign the primary color:
+#if USE_SINGLE_COLOR            
+            osg::Vec4Array* colors = new osg::Vec4Array( 1 );
+            (*colors)[0] = primaryColor;
+            osgGeom->setColorBinding( osg::Geometry::BIND_OVERALL );
+#else
 
-                tess.retessellatePolygons( *osgGeom );
+            osg::Vec4Array* colors = new osg::Vec4Array( osgGeom->getVertexArray()->getNumElements() ); //allPoints->size() );
+            for(unsigned c=0; c<colors->size(); ++c)
+                (*colors)[c] = primaryColor;
+            osgGeom->setColorBinding( osg::Geometry::BIND_PER_VERTEX );
+#endif
 
-                // the tessellator results in a collection of trifans, strips, etc. This step will
-                // consolidate those into one (or more if necessary) GL_TRIANGLES primitive.
-                //NOTE: this now happens elsewhere 
-                //MeshConsolidator::run( *osgGeom );
 
-                // mark this geometry as DYNAMIC because otherwise the OSG optimizer will destroy it.
-                //osgGeom->setDataVariance( osg::Object::DYNAMIC );
-            }
+            osgGeom->setColorArray( colors );
+            
 
-            if ( context.getSession()->getMapInfo().isGeocentric() && part->getType() != Geometry::TYPE_POINTSET )
-//            if ( context.isGeocentric() && part->getType() != Geometry::TYPE_POINTSET )
+            _geode->addDrawable( osgGeom );
+
+            // record the geometry's primitive set(s) in the index:
+            if ( context.featureIndex() )
+                context.featureIndex()->tagPrimitiveSets( osgGeom, input->getFID() );
+
+            // build secondary geometry, if necessary (polygon outlines)
+            if ( renderType == Geometry::TYPE_POLYGON && lineSymbol )
             {
-                double threshold = osg::DegreesToRadians( *_maxAngle_deg );
+                // polygon offset on the poly so the outline doesn't z-fight
+                osgGeom->getOrCreateStateSet()->setAttributeAndModes( new osg::PolygonOffset(1,1), 1 );
+
+                osg::Geometry* outline = new osg::Geometry();
+                outline->setUseVertexBufferObjects( _useVertexBufferObjects.value() );
+
+                buildPolygon(part, featureSRS, mapSRS, makeECEF, false, outline);
+
+                if ( outline->getVertexArray()->getVertexBufferObject() )
+                    outline->getVertexArray()->getVertexBufferObject()->setUsage(GL_STATIC_DRAW_ARB);                
+                
+                osg::Vec4f outlineColor = lineSymbol->stroke()->color();                
+
+                osg::Vec4Array* outlineColors = new osg::Vec4Array();                
+#if USE_SINGLE_COLOR
+                outlineColors->reserve(1);
+                outlineColors->push_back( outlineColor );
+                outline->setColorBinding( osg::Geometry::BIND_OVERALL );
+#else
+                unsigned pcount = part->getTotalPointCount();                
+                outlineColors->reserve( pcount );
+                for( unsigned c=0; c < pcount; ++c )
+                    outlineColors->push_back( outlineColor );
+                outline->setColorBinding( osg::Geometry::BIND_PER_VERTEX );
+#endif
+                outline->setColorArray(outlineColors);
+
+                // check for explicit tessellation disable:                
+                bool disableTess = lineSymbol && lineSymbol->tessellation().isSetTo(0);
+
+                // subdivide if necessary.                
+                if ( makeECEF && !disableTess )
+                {
+                    double threshold = osg::DegreesToRadians( *_maxAngle_deg );
+                    OE_DEBUG << "Running mesh subdivider for outlines with threshold " << *_maxAngle_deg << std::endl;
+                    MeshSubdivider ms( _world2local, _local2world );
+                    if ( input->geoInterp().isSet() )
+                        ms.run( *outline, threshold, *input->geoInterp() );
+                    else
+                        ms.run( *outline, threshold, *_geoInterp );
+                }
 
-                MeshSubdivider ms( _world2local, _local2world ); //context.referenceFrame(), context.inverseReferenceFrame() );
-                //ms.setMaxElementsPerEBO( INT_MAX );
-                if ( input->geoInterp().isSet() )
-                    ms.run( *osgGeom, threshold, *input->geoInterp() );
-                else
-                    ms.run( *osgGeom, threshold, *_geoInterp );
-            }
+                applyLineAndPointSymbology( outline->getOrCreateStateSet(), lineSymbol, 0L );
 
-            // NOTE! per-vertex colors makes the optimizer destroy the geometry....
-            osg::Vec4Array* colors = new osg::Vec4Array(1);
-            (*colors)[0] = color;
-            osgGeom->setColorArray( colors );
-            osgGeom->setColorBinding( osg::Geometry::BIND_OVERALL );
+                _geode->addDrawable( outline );
+
+                //_featureNode->addDrawable( outline, input->getFID() );
+
+                // Mark each primitive set with its feature ID.
+                if ( context.featureIndex() )
+                    context.featureIndex()->tagPrimitiveSets( outline, input->getFID() );
+            }
 
-            // add the part to the geode.
-            _geode->addDrawable( osgGeom );
         }
     }
     
     return true;
 }
 
+// builds and tessellates a polygon (with or without holes)
+void
+BuildGeometryFilter::buildPolygon(Geometry*               ring,
+                                  const SpatialReference* featureSRS,
+                                  const SpatialReference* mapSRS,
+                                  bool                    makeECEF,
+                                  bool                    tessellate,
+                                  osg::Geometry*          osgGeom)
+{
+    if ( !ring->isValid() )
+        return;
+
+    int totalPoints = ring->getTotalPointCount();
+    osg::Vec3Array* allPoints = new osg::Vec3Array();
+    transformAndLocalize( ring->asVector(), featureSRS, allPoints, mapSRS, _world2local, makeECEF );
+
+    GLenum mode = GL_LINE_LOOP;
+    osgGeom->addPrimitiveSet( new osg::DrawArrays( mode, 0, ring->size() ) );
+
+    Polygon* poly = dynamic_cast<Polygon*>(ring);
+    if ( poly )
+    {
+        int offset = ring->size();
+
+        for( RingCollection::const_iterator h = poly->getHoles().begin(); h != poly->getHoles().end(); ++h )
+        {
+            Geometry* hole = h->get();
+            if ( hole->isValid() )
+            {
+                transformAndLocalize( hole->asVector(), featureSRS, allPoints, mapSRS, _world2local, makeECEF );
+
+                osgGeom->addPrimitiveSet( new osg::DrawArrays( mode, offset, hole->size() ) );
+                offset += hole->size();
+            }            
+        }
+    }
+    osgGeom->setVertexArray( allPoints );
+
+    if ( tessellate )
+    {
+        osgUtil::Tessellator tess;
+        tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_GEOMETRY );
+        tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_POSITIVE );
+        //tess.setBoundaryOnly( true );
+        tess.retessellatePolygons( *osgGeom );
+    }
+}
+
+
 osg::Node*
 BuildGeometryFilter::push( FeatureList& input, FilterContext& context )
 {
@@ -309,7 +402,7 @@ BuildGeometryFilter::push( FeatureList& input, FilterContext& context )
             const LineSymbol* lineSymbol = _style.getSymbol<LineSymbol>();
             float size = 1.0;
             if (lineSymbol)
-                size = lineSymbol->stroke()->width().value();
+                size = std::max(1.0f, lineSymbol->stroke()->width().value());
 
             _geode->getOrCreateStateSet()->setAttribute( new osg::Point(size), osg::StateAttribute::ON );
             _geode->getOrCreateStateSet()->setAttribute( new osg::LineWidth(size), osg::StateAttribute::ON );
@@ -320,6 +413,7 @@ BuildGeometryFilter::push( FeatureList& input, FilterContext& context )
                     new osg::Point( *pointSymbol->size() ), osg::StateAttribute::ON );
         }
 
+        // apply the delocalization matrix for no-jitter
         result = delocalize( _geode.release() );
     }
     else
diff --git a/src/osgEarthFeatures/BuildTextFilter b/src/osgEarthFeatures/BuildTextFilter
index 4835ffa..0eb94f5 100644
--- a/src/osgEarthFeatures/BuildTextFilter
+++ b/src/osgEarthFeatures/BuildTextFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -39,6 +39,8 @@ namespace osgEarth { namespace Features
     public:
         BuildTextFilter( const Style& style =Style() );
 
+        virtual ~BuildTextFilter() { }
+
         /** The style to apply to feature geometry */
         const Style& getStyle() { return _style; }
         void setStyle(const Style& s) { _style = s; }
diff --git a/src/osgEarthFeatures/BuildTextFilter.cpp b/src/osgEarthFeatures/BuildTextFilter.cpp
index 6435a21..c135169 100644
--- a/src/osgEarthFeatures/BuildTextFilter.cpp
+++ b/src/osgEarthFeatures/BuildTextFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/BuildTextFilter>
-#include <osgEarthFeatures/BuildTextOperator> // this should be in symbology -gw
+//#include <osgEarthFeatures/BuildTextOperator> // this should be in symbology -gw
 #include <osgEarthFeatures/LabelSource>
 #include <osgEarthSymbology/TextSymbol>
 #include <osgText/Text>
@@ -47,14 +47,14 @@ BuildTextFilter::push( FeatureList& input, FilterContext& context )
     }
 
     // if a provider is set, load the plugin and create the node.
-    if ( !text->provider()->empty() && !text->provider().isSetTo("legacy") )
+    if ( true ) //!text->provider()->empty() && !text->provider().isSetTo("legacy") )
     {
         LabelSourceOptions options;
         options.setDriver( *text->provider() );
         osg::ref_ptr<LabelSource> source = LabelSourceFactory::create( options );
         if ( source.valid() )
         {
-            result = source->createNode( input, text, context );
+            result = source->createNode( input, _style, context );
         }
         else
         {
@@ -63,11 +63,13 @@ BuildTextFilter::push( FeatureList& input, FilterContext& context )
         }
     }
 
+#if 0
     else // legacy behavior... will be deprecated.
     {
         BuildTextOperator op;
         result = op( input, text, context );
     }
+#endif
 
     return result;
 }
diff --git a/src/osgEarthFeatures/BuildTextOperator b/src/osgEarthFeatures/BuildTextOperator
index 090937c..269ece1 100644
--- a/src/osgEarthFeatures/BuildTextOperator
+++ b/src/osgEarthFeatures/BuildTextOperator
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,7 @@ namespace osgEarth { namespace Features
     {
     public:
         BuildTextOperator(bool hideClutter=false) : _hideClutter(hideClutter) { };
+        virtual ~BuildTextOperator() { }
     public:
         osg::Node* operator()(
             const FeatureList& features, 
diff --git a/src/osgEarthFeatures/BuildTextOperator.cpp b/src/osgEarthFeatures/BuildTextOperator.cpp
index 3bc177a..66ef7eb 100644
--- a/src/osgEarthFeatures/BuildTextOperator.cpp
+++ b/src/osgEarthFeatures/BuildTextOperator.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -16,6 +16,7 @@
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
+#if 0
 #include <osgEarthFeatures/BuildTextOperator>
 #include <osgEarth/Utils>
 #include <osgDB/ReadFile>
@@ -100,7 +101,7 @@ osg::Node* BuildTextOperator::operator()(const FeatureList&   features,
         if (symbol->content().isSet())
         {
             //Get the text from the specified content and referenced attributes
-            text = feature->eval( contentExpr );
+            text = feature->eval( contentExpr, &context );
         }
 
         if (text.empty()) continue;
@@ -237,3 +238,4 @@ osg::Node* BuildTextOperator::operator()(const FeatureList&   features,
     }
     return result;
 }
+#endif
diff --git a/src/osgEarthFeatures/CMakeLists.txt b/src/osgEarthFeatures/CMakeLists.txt
index 962a7cf..233dd2b 100644
--- a/src/osgEarthFeatures/CMakeLists.txt
+++ b/src/osgEarthFeatures/CMakeLists.txt
@@ -25,31 +25,35 @@ SET(LIB_PUBLIC_HEADERS
     Feature
     FeatureCursor
     FeatureDisplayLayout
-    FeatureGeometryIndex
-    FeatureGridder
+    FeatureDrawSet
 	FeatureListSource
     FeatureModelGraph
     FeatureModelSource
-    FeatureNode
     FeatureSource
+    FeatureSourceIndexNode
     FeatureTileSource
     Filter
     FilterContext
     GeometryCompiler
 	GeometryUtils
     LabelSource
-	OgrUtils
+    MeshClamper
+    OgrUtils
     OptimizerHints	
     ResampleFilter
     ScaleFilter
     Session
     ScatterFilter
+    Script
+    ScriptEngine
     SubstituteModelFilter
+    TessellateOperator
+    TextSymbolizer
     TransformFilter
     VirtualFeatureSource
 )
 
-ADD_LIBRARY(${LIB_NAME} SHARED
+ADD_LIBRARY(${LIB_NAME} ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
     ${LIB_PUBLIC_HEADERS}
     AltitudeFilter.cpp
     BufferFilter.cpp
@@ -63,25 +67,28 @@ ADD_LIBRARY(${LIB_NAME} SHARED
     Feature.cpp
     FeatureCursor.cpp
     FeatureDisplayLayout.cpp
-    FeatureGeometryIndex.cpp
-    FeatureGridder.cpp
+    FeatureDrawSet.cpp
 	FeatureListSource.cpp
     FeatureModelGraph.cpp
     FeatureModelSource.cpp
-    FeatureNode.cpp
     FeatureSource.cpp
+    FeatureSourceIndexNode.cpp
     FeatureTileSource.cpp
     Filter.cpp
     FilterContext.cpp
     GeometryCompiler.cpp
 	GeometryUtils.cpp
     LabelSource.cpp
+    MeshClamper.cpp
     OptimizerHints.cpp
     ResampleFilter.cpp
     ScaleFilter.cpp
     Session.cpp
     ScatterFilter.cpp
+    ScriptEngine.cpp
     SubstituteModelFilter.cpp
+    TessellateOperator.cpp
+    TextSymbolizer.cpp
     TransformFilter.cpp
     VirtualFeatureSource.cpp
 )
diff --git a/src/osgEarthFeatures/CentroidFilter b/src/osgEarthFeatures/CentroidFilter
index cc87b78..4cb414e 100644
--- a/src/osgEarthFeatures/CentroidFilter
+++ b/src/osgEarthFeatures/CentroidFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,7 @@ namespace osgEarth { namespace Features
     {
     public:
         CentroidFilter();
+        virtual ~CentroidFilter() { }
 
     public:
         virtual FilterContext push( FeatureList& input, FilterContext& context );
diff --git a/src/osgEarthFeatures/CentroidFilter.cpp b/src/osgEarthFeatures/CentroidFilter.cpp
index 366ce81..0b89bd1 100644
--- a/src/osgEarthFeatures/CentroidFilter.cpp
+++ b/src/osgEarthFeatures/CentroidFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthFeatures/Common b/src/osgEarthFeatures/Common
index bbda670..f2c11f6 100644
--- a/src/osgEarthFeatures/Common
+++ b/src/osgEarthFeatures/Common
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthFeatures/ConvertTypeFilter b/src/osgEarthFeatures/ConvertTypeFilter
index 263b9e3..039e5fc 100644
--- a/src/osgEarthFeatures/ConvertTypeFilter
+++ b/src/osgEarthFeatures/ConvertTypeFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,6 +43,15 @@ namespace osgEarth { namespace Features
         ConvertTypeFilter( const Symbology::Geometry::Type& toType );
         ConvertTypeFilter( const ConvertTypeFilter& rhs );
 
+        ConvertTypeFilter( const Config& conf );
+
+        /**
+         * Serialize this FeatureFilter
+         */
+        virtual Config getConfig() const;
+
+        virtual ~ConvertTypeFilter() { }
+
     public:
         Symbology::Geometry::Type& toType() {
             return _toType; }
diff --git a/src/osgEarthFeatures/ConvertTypeFilter.cpp b/src/osgEarthFeatures/ConvertTypeFilter.cpp
index b072074..a52b5f0 100644
--- a/src/osgEarthFeatures/ConvertTypeFilter.cpp
+++ b/src/osgEarthFeatures/ConvertTypeFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,6 +24,8 @@ using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 
+OSGEARTH_REGISTER_SIMPLE_FEATUREFILTER(convert, ConvertTypeFilter)
+
 
 ConvertTypeFilter::ConvertTypeFilter() :
 _toType( Geometry::TYPE_UNKNOWN )
@@ -43,6 +45,30 @@ _toType( rhs._toType )
     //NOP
 }
 
+ConvertTypeFilter::ConvertTypeFilter( const Config& conf):
+_toType( Geometry::TYPE_UNKNOWN )
+{
+    if (conf.key() == "convert")
+    {
+        optional<Geometry::Type> type = Geometry::TYPE_POINTSET;
+        conf.getIfSet( "type", "point",   type, Geometry::TYPE_POINTSET );
+        conf.getIfSet( "type", "line",    type, Geometry::TYPE_LINESTRING );
+        conf.getIfSet( "type", "polygon", type, Geometry::TYPE_POLYGON );
+        _toType = *type;        
+    }
+}
+
+Config ConvertTypeFilter::getConfig() const
+{
+    Config config( "convert" );
+    optional<Geometry::Type> type( _toType, _toType); // weird optional ctor :)
+    config.addIfSet( "type", "point",   type, Geometry::TYPE_POINTSET );
+    config.addIfSet( "type", "line",    type, Geometry::TYPE_LINESTRING );
+    config.addIfSet( "type", "polygon", type, Geometry::TYPE_POLYGON );    
+
+    return config;
+}
+
 FilterContext
 ConvertTypeFilter::push( FeatureList& input, FilterContext& context )
 {
diff --git a/src/osgEarthFeatures/CropFilter b/src/osgEarthFeatures/CropFilter
index cf743ae..8aa4d8e 100644
--- a/src/osgEarthFeatures/CropFilter
+++ b/src/osgEarthFeatures/CropFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -46,6 +46,7 @@ namespace osgEarth { namespace Features
 
     public:
         CropFilter( Method method =METHOD_CENTROID );
+        virtual ~CropFilter() { }
 
         optional<Method>& method() { return _method; }
         const optional<Method>& method() const { return _method; }
diff --git a/src/osgEarthFeatures/CropFilter.cpp b/src/osgEarthFeatures/CropFilter.cpp
index ee3718e..00b0454 100644
--- a/src/osgEarthFeatures/CropFilter.cpp
+++ b/src/osgEarthFeatures/CropFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -61,7 +61,7 @@ CropFilter::push( FeatureList& input, FilterContext& context )
                     if ( extent.contains( centroid.x(), centroid.y() ) )
                     {
                         keepFeature = true;
-                        newExtent.expandToInclude( bounds );
+                        newExtent.expandToInclude( bounds.xMin(), bounds.yMin() );
                     }
                 }
             }
@@ -85,6 +85,7 @@ CropFilter::push( FeatureList& input, FilterContext& context )
             bool keepFeature = false;
 
             Feature* feature = i->get();
+
             Symbology::Geometry* featureGeom = feature->getGeometry();
             if ( featureGeom && featureGeom->isValid() )
             {
diff --git a/src/osgEarthFeatures/ExtrudeGeometryFilter b/src/osgEarthFeatures/ExtrudeGeometryFilter
index a1bedd9..8976ed0 100644
--- a/src/osgEarthFeatures/ExtrudeGeometryFilter
+++ b/src/osgEarthFeatures/ExtrudeGeometryFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -31,6 +31,9 @@ namespace osgEarth { namespace Features
 {
     using namespace osgEarth;
     using namespace osgEarth::Symbology;
+    
+    class FeatureSourceIndex;
+
 
     /**
      * Extrudes footprint geometry into 3D geometry
@@ -48,6 +51,8 @@ namespace osgEarth { namespace Features
         /** Constructs a new filter that will extrude footprints */
         ExtrudeGeometryFilter();
 
+        virtual ~ExtrudeGeometryFilter() { }
+
         /**
          * Sets the style that will govern the geometry generation.
          */
@@ -64,6 +69,11 @@ namespace osgEarth { namespace Features
          * Sets the maximum wall angle that doesn't require a new normal vector
          */
         void setWallAngleThreshold( float angle_deg ) { _wallAngleThresh_deg = angle_deg; }
+
+        /**
+         * Sets whether to render a bottom top. Useful for creating stencil volumes.
+         */
+        void setMakeStencilVolume( bool value ) { _makeStencilVolume = value; }
         
         /**
          * Sets the expression to evaluate when setting a feature name.
@@ -72,6 +82,7 @@ namespace osgEarth { namespace Features
         void setFeatureNameExpr( const StringExpression& expr ) { _featureNameExpr = expr; }
         const StringExpression& getFeatureNameExpr() const { return _featureNameExpr; }
 
+
     protected:
 
         // a set of geodes indexed by stateset pointer, for pre-sorting geodes based on 
@@ -88,6 +99,7 @@ namespace osgEarth { namespace Features
         osg::ref_ptr<HeightCallback>   _heightCallback;
         optional<NumericExpression>    _heightOffsetExpr;
         optional<NumericExpression>    _heightExpr;
+        bool                           _makeStencilVolume;
 
         Style                          _style;
         bool                           _styleDirty;
@@ -104,12 +116,14 @@ namespace osgEarth { namespace Features
         void reset( const FilterContext& context );
         
         void addDrawable( 
-            osg::Drawable*     drawable, 
-            osg::StateSet*     stateSet, 
-            const std::string& name );
+            osg::Drawable*      drawable, 
+            osg::StateSet*      stateSet, 
+            const std::string&  name,
+            FeatureID           fid,
+            FeatureSourceIndex* index);
         
         bool process( 
-            FeatureList&    input,
+            FeatureList&     input,
             FilterContext&   context );
 
         bool extrudeGeometry(
@@ -122,6 +136,7 @@ namespace osgEarth { namespace Features
             osg::Geometry*       bottom_cap,
             osg::Geometry*       outline,
             const osg::Vec4&     wallColor,
+            const osg::Vec4&     wallBaseColor,
             const osg::Vec4&     roofColor,
             const osg::Vec4&     outlineColor,
             const SkinResource*  wallSkin,
diff --git a/src/osgEarthFeatures/ExtrudeGeometryFilter.cpp b/src/osgEarthFeatures/ExtrudeGeometryFilter.cpp
index cfae6da..ddf6aad 100644
--- a/src/osgEarthFeatures/ExtrudeGeometryFilter.cpp
+++ b/src/osgEarthFeatures/ExtrudeGeometryFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,10 +17,14 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/ExtrudeGeometryFilter>
+#include <osgEarthFeatures/FeatureSourceIndexNode>
 #include <osgEarthSymbology/MeshSubdivider>
 #include <osgEarthSymbology/MeshConsolidator>
 #include <osgEarth/ECEF>
-#include <osg/ClusterCullingCallback>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+#include <osgEarth/ShaderGenerator>
 #include <osg/Geode>
 #include <osg/Geometry>
 #include <osg/MatrixTransform>
@@ -34,6 +38,8 @@
 
 #define LC "[ExtrudeGeometryFilter] "
 
+#define USE_VBOS true
+
 using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
@@ -73,7 +79,8 @@ ExtrudeGeometryFilter::ExtrudeGeometryFilter() :
 _maxAngle_deg       ( 5.0 ),
 _mergeGeometry      ( true ),
 _wallAngleThresh_deg( 60.0 ),
-_styleDirty         ( true )
+_styleDirty         ( true ),
+_makeStencilVolume  ( false )
 {
     //NOP
 }
@@ -90,10 +97,10 @@ ExtrudeGeometryFilter::reset( const FilterContext& context )
 {
     _cosWallAngleThresh = cos( _wallAngleThresh_deg );
     _geodes.clear();
-
+    
     if ( _styleDirty )
     {
-        const StyleSheet* sheet = context.getSession()->styles();
+        const StyleSheet* sheet = context.getSession() ? context.getSession()->styles() : 0L;
 
         _wallSkinSymbol    = 0L;
         _wallPolygonSymbol = 0L;
@@ -111,9 +118,11 @@ ExtrudeGeometryFilter::reset( const FilterContext& context )
                 _heightExpr = *_extrusionSymbol->heightExpression();
             }
 
-            // account for a "height" value that is relative to ZERO (MSL/HAE)
+            // If there is no height expression, and we have either absolute or terrain-relative
+            // clamping, THAT means that we want to extrude DOWN from the geometry to the ground
+            // (instead of from the geometry.)
             AltitudeSymbol* alt = _style.get<AltitudeSymbol>();
-            if ( alt && !_extrusionSymbol->heightExpression().isSet() )
+            if ( alt && !_extrusionSymbol->heightExpression().isSet() && !_extrusionSymbol->height().isSet() )
             {
                 if (alt->clamping() == AltitudeSymbol::CLAMP_ABSOLUTE ||
                     alt->clamping() == AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN )
@@ -182,25 +191,30 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
                                        osg::Geometry*          base,
                                        osg::Geometry*          outline,
                                        const osg::Vec4&        wallColor,
+                                       const osg::Vec4&        wallBaseColor,
                                        const osg::Vec4&        roofColor,
                                        const osg::Vec4&        outlineColor,
                                        const SkinResource*     wallSkin,
                                        const SkinResource*     roofSkin,
                                        FilterContext&          cx )
 {
-    //todo: establish reference frame for going to geocentric. This will ultimately
-    // passed in to the function.
-    const SpatialReference* srs = cx.extent()->getSRS();
+    bool makeECEF = false;
+    const SpatialReference* srs = 0L;
+    const SpatialReference* mapSRS = 0L;
 
-    // whether to convert the final geometry to localized ECEF
-    bool makeECEF = cx.getSession()->getMapInfo().isGeocentric();
+    if ( cx.isGeoreferenced() )
+    {
+       srs = cx.extent()->getSRS();
+       makeECEF = cx.getSession()->getMapInfo().isGeocentric();
+       mapSRS = cx.getSession()->getMapInfo().getProfile()->getSRS();
+    }
 
     bool made_geom = false;
 
     double tex_width_m   = wallSkin ? *wallSkin->imageWidth() : 1.0;
     double tex_height_m  = wallSkin ? *wallSkin->imageHeight() : 1.0;
     bool   tex_repeats_y = wallSkin ? *wallSkin->isTiled() : false;
-    bool   useColor      = !wallSkin || wallSkin->texEnvMode() != osg::TexEnv::DECAL;
+    bool   useColor      = (!wallSkin || wallSkin->texEnvMode() != osg::TexEnv::DECAL) && !_makeStencilVolume;
 
     bool isPolygon = input->getComponentType() == Geometry::TYPE_POLYGON;
 
@@ -226,10 +240,11 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
         walls->setTexCoordArray( 0, wallTexcoords );
     }
 
+    osg::Vec4Array* colors = 0L;
     if ( useColor )
     {
         // per-vertex colors are necessary if we are going to use the MeshConsolidator -gw
-        osg::Vec4Array* colors = new osg::Vec4Array();
+        colors = new osg::Vec4Array();
         colors->reserve( numWallVerts );
         colors->assign( numWallVerts, wallColor );
         walls->setColorArray( colors );
@@ -245,8 +260,8 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
     osg::Vec2Array* roofTexcoords = 0L;
     float           roofRotation  = 0.0f;
     Bounds          roofBounds;
-    float           sinR, cosR;
-    double          roofTexSpanX, roofTexSpanY;
+    float           sinR = 0.0f, cosR = 0.0f;
+    double          roofTexSpanX = 0.0, roofTexSpanY = 0.0;
     osg::ref_ptr<const SpatialReference> roofProjSRS;
 
     if ( roof )
@@ -255,15 +270,19 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
         roof->setVertexArray( roofVerts );
 
         // per-vertex colors are necessary if we are going to use the MeshConsolidator -gw
-        osg::Vec4Array* roofColors = new osg::Vec4Array();
-        roofColors->reserve( pointCount );
-        roofColors->assign( pointCount, roofColor );
-        roof->setColorArray( roofColors );
-        roof->setColorBinding( osg::Geometry::BIND_PER_VERTEX );
-        //osg::Vec4Array* roofColors = new osg::Vec4Array( 1 );
-        //(*roofColors)[0] = roofColor;
-        //roof->setColorArray( roofColors );
-        //roof->setColorBinding( osg::Geometry::BIND_OVERALL );
+        if ( useColor )
+        {
+            osg::Vec4Array* roofColors = new osg::Vec4Array();
+            roofColors->reserve( pointCount );
+            roofColors->assign( pointCount, roofColor );
+            roof->setColorArray( roofColors );
+            roof->setColorBinding( osg::Geometry::BIND_PER_VERTEX );
+
+            //osg::Vec4Array* roofColors = new osg::Vec4Array( 1 );
+            //(*roofColors)[0] = roofColor;
+            //roof->setColorArray( roofColors );
+            //roof->setColorBinding( osg::Geometry::BIND_OVERALL );
+        }
 
         if ( roofSkin )
         {
@@ -279,13 +298,13 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
 
             // if our data is lat/long, we need to reproject the geometry and the bounds into a projected
             // coordinate system in order to properly generate tex coords.
-            if ( srs->isGeographic() )
+            if ( srs && srs->isGeographic() )
             {
                 osg::Vec2d geogCenter = roofBounds.center2d();
-                roofProjSRS = srs->createUTMFromLongitude( Angular(geogCenter.x()) );
+                roofProjSRS = srs->createUTMFromLonLat( Angular(geogCenter.x()), Angular(geogCenter.y()) );
                 roofBounds.transform( srs, roofProjSRS.get() );
                 osg::ref_ptr<Geometry> projectedInput = input->clone();
-                srs->transformPoints( roofProjSRS.get(), projectedInput->asVector() );
+                srs->transform( projectedInput->asVector(), roofProjSRS.get() );
                 roofRotation = getApparentRotation( projectedInput.get() );
             }
             else
@@ -399,6 +418,7 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
         if (div == 0) div = 1; //Prevent divide by zero
         tex_height_m_adj = maxHeight / div;
 
+        //osg::DrawElementsUShort* idx = new osg::DrawElementsUShort( GL_TRIANGLES );
         osg::DrawElementsUInt* idx = new osg::DrawElementsUInt( GL_TRIANGLES );
 
         for( Geometry::const_iterator m = part->begin(); m != part->end(); ++m )
@@ -428,7 +448,7 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
             {
                 double xr, yr;
 
-                if ( srs->isGeographic() )
+                if ( srs && srs->isGeographic() )
                 {
                     osg::Vec3d projRoofPt;
                     srs->transform( roofPt, roofProjSRS.get(), projRoofPt );
@@ -447,16 +467,24 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
                 (*roofTexcoords)[roofVertPtr].set( u, v );
             }            
 
-            if ( makeECEF )
-            {
-                ECEF::transformAndLocalize( basePt, basePt, srs, _world2local );
-                ECEF::transformAndLocalize( roofPt, roofPt, srs, _world2local );
-            }
+            //if ( makeECEF )
+            //{
+            //    ECEF::transformAndLocalize( basePt, srs, basePt, _world2local );
+            //    ECEF::transformAndLocalize( roofPt, srs, roofPt, _world2local );
+            //}
+            transformAndLocalize( basePt, srs, basePt, mapSRS, _world2local, makeECEF );
+            transformAndLocalize( roofPt, srs, roofPt, mapSRS, _world2local, makeECEF );
+
 
             if ( base )
+            {
                 (*baseVerts)[baseVertPtr] = basePt;
+            }
+
             if ( roof )
+            {
                 (*roofVerts)[roofVertPtr] = roofPt;
+            }
 
             baseVertPtr++;
             roofVertPtr++;
@@ -464,6 +492,11 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
             (*verts)[p] = roofPt;
             (*verts)[p+1] = basePt;
 
+            if ( useColor )
+            {
+                (*colors)[p+1] = wallBaseColor;
+            }
+
             if ( outline )
             {
                 (*outlineVerts)[p] = roofPt;
@@ -569,15 +602,22 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
             unsigned len = baseVertPtr - basePartPtr;
 
             GLenum roofLineMode = isPolygon ? GL_LINE_LOOP : GL_LINE_STRIP;
+            //osg::DrawElementsUShort* roofLine = new osg::DrawElementsUShort( roofLineMode );
             osg::DrawElementsUInt* roofLine = new osg::DrawElementsUInt( roofLineMode );
             roofLine->reserveElements( len );
             for( unsigned i=0; i<len; ++i )
                 roofLine->addElement( basePartPtr + i*2 );
             outline->addPrimitiveSet( roofLine );
 
-            osg::DrawElementsUShort* wallLines = new osg::DrawElementsUShort( GL_LINES );
+            // if the outline is tessellated, we only want outlines on the original 
+            // points (not the inserted points)
+            unsigned step = std::max( 1u, 
+                _outlineSymbol->tessellation().isSet() ? *_outlineSymbol->tessellation() : 1u );
+
+            //osg::DrawElementsUShort* wallLines = new osg::DrawElementsUShort( GL_LINES );
+            osg::DrawElementsUInt* wallLines = new osg::DrawElementsUInt( GL_LINES );
             wallLines->reserve( len*2 );
-            for( unsigned i=0; i<len; ++i )
+            for( unsigned i=0; i<len; i+=step )
             {
                 wallLines->push_back( basePartPtr + i*2 );
                 wallLines->push_back( basePartPtr + i*2 + 1 );
@@ -590,7 +630,11 @@ ExtrudeGeometryFilter::extrudeGeometry(const Geometry*         input,
 }
 
 void
-ExtrudeGeometryFilter::addDrawable( osg::Drawable* drawable, osg::StateSet* stateSet, const std::string& name )
+ExtrudeGeometryFilter::addDrawable(osg::Drawable*      drawable,
+                                   osg::StateSet*      stateSet,
+                                   const std::string&  name,
+                                   FeatureID           fid,
+                                   FeatureSourceIndex* index )
 {
     // find the geode for the active stateset, creating a new one if necessary. NULL is a 
     // valid key as well.
@@ -608,6 +652,11 @@ ExtrudeGeometryFilter::addDrawable( osg::Drawable* drawable, osg::StateSet* stat
     {
         drawable->setName( name );
     }
+
+    if ( index )
+    {
+        index->tagPrimitiveSets( drawable, fid );
+    }
 }
 
 bool
@@ -627,15 +676,16 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             Geometry* part = iter.next();
 
             osg::ref_ptr<osg::Geometry> walls = new osg::Geometry();
-            //walls->setUseVertexBufferObjects(true);
+            walls->setUseVertexBufferObjects(USE_VBOS);
             
             osg::ref_ptr<osg::Geometry> rooflines = 0L;
+            osg::ref_ptr<osg::Geometry> baselines = 0L;
             osg::ref_ptr<osg::Geometry> outlines  = 0L;
             
             if ( part->getType() == Geometry::TYPE_POLYGON )
             {
                 rooflines = new osg::Geometry();
-                //rooflines->setUseVertexBufferObjects(true);
+                rooflines->setUseVertexBufferObjects(USE_VBOS);
 
                 // prep the shapes by making sure all polys are open:
                 static_cast<Polygon*>(part)->open();
@@ -645,6 +695,14 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             if ( _outlineSymbol != 0L )
             {
                 outlines = new osg::Geometry();
+                outlines->setUseVertexBufferObjects(USE_VBOS);
+            }
+
+            // make a base cap if we're doing stencil volumes.
+            if ( _makeStencilVolume )
+            {
+                baselines = new osg::Geometry();
+                baselines->setUseVertexBufferObjects(USE_VBOS);
             }
 
             // calculate the extrusion height:
@@ -656,7 +714,7 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             }
             else if ( _heightExpr.isSet() )
             {
-                height = input->eval( _heightExpr.mutable_value() );
+                height = input->eval( _heightExpr.mutable_value(), &context );
             }
             else
             {
@@ -667,7 +725,7 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             float offset = 0.0;
             if ( _heightOffsetExpr.isSet() )
             {
-                offset = input->eval( _heightOffsetExpr.mutable_value() );
+                offset = input->eval( _heightOffsetExpr.mutable_value(), &context );
             }
 
             osg::StateSet* wallStateSet = 0L;
@@ -681,7 +739,7 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
                 {
                     SkinSymbol querySymbol( *_wallSkinSymbol.get() );
                     querySymbol.objectHeight() = fabs(height) - offset;
-                    wallSkin = _wallResLib->getSkin( &querySymbol, wallSkinPRNG );
+                    wallSkin = _wallResLib->getSkin( &querySymbol, wallSkinPRNG, context.getDBOptions() );
                 }
 
                 else
@@ -697,7 +755,7 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
                 if ( _roofResLib.valid() )
                 {
                     SkinSymbol querySymbol( *_roofSkinSymbol.get() );
-                    roofSkin = _roofResLib->getSkin( &querySymbol, roofSkinPRNG );
+                    roofSkin = _roofResLib->getSkin( &querySymbol, roofSkinPRNG, context.getDBOptions() );
                 }
 
                 else
@@ -707,11 +765,19 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             }
 
             // calculate the colors:
-            osg::Vec4f wallColor(1,1,1,1), roofColor(1,1,1,1), outlineColor(1,1,1,1);
+            osg::Vec4f wallColor(1,1,1,1), wallBaseColor(1,1,1,1), roofColor(1,1,1,1), outlineColor(1,1,1,1);
 
             if ( _wallPolygonSymbol.valid() )
             {
                 wallColor = _wallPolygonSymbol->fill()->color();
+                if ( _extrusionSymbol->wallGradientPercentage().isSet() )
+                {
+                    wallBaseColor = Color(wallColor).brightness( 1.0 - *_extrusionSymbol->wallGradientPercentage() );
+                }
+                else
+                {
+                    wallBaseColor = wallColor;
+                }
             }
             if ( _roofPolygonSymbol.valid() )
             {
@@ -726,8 +792,8 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
             if (extrudeGeometry( 
                     part, height, offset, 
                     *_extrusionSymbol->flatten(),
-                    walls.get(), rooflines.get(), 0L, outlines.get(),
-                    wallColor, roofColor, outlineColor,
+                    walls.get(), rooflines.get(), baselines.get(), outlines.get(),
+                    wallColor, wallBaseColor, roofColor, outlineColor,
                     wallSkin, roofSkin,
                     context ) )
             {      
@@ -752,12 +818,13 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
                 {
                     osgUtil::Tessellator tess;
                     tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_GEOMETRY );
-                    tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_ODD ); //POSITIVE );
+                    tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_ODD );
                     tess.retessellatePolygons( *(rooflines.get()) );
 
                     // generate default normals (no crease angle necessary; they are all pointing up)
                     // TODO do this manually; probably faster
-                    osgUtil::SmoothingVisitor::smooth( *rooflines.get() );
+                    if ( !_makeStencilVolume )
+                        osgUtil::SmoothingVisitor::smooth( *rooflines.get() );
 
                     // texture the rooflines if necessary
                     //applyOverlayTexturing( rooflines.get(), input, env );
@@ -772,22 +839,36 @@ ExtrudeGeometryFilter::process( FeatureList& features, FilterContext& context )
                     }
                 }
 
+                if ( baselines.valid() )
+                {
+                    osgUtil::Tessellator tess;
+                    tess.setTessellationType( osgUtil::Tessellator::TESS_TYPE_GEOMETRY );
+                    tess.setWindingType( osgUtil::Tessellator::TESS_WINDING_ODD );
+                    tess.retessellatePolygons( *(baselines.get()) );
+                }
+
                 std::string name;
                 if ( !_featureNameExpr.empty() )
-                    name = input->eval( _featureNameExpr );
+                    name = input->eval( _featureNameExpr, &context );
 
-                //MeshConsolidator::run( *walls.get() );
-                addDrawable( walls.get(), wallStateSet, name );
+                FeatureSourceIndex* index = context.featureIndex();
+                FeatureID fid = input->getFID();
+
+                addDrawable( walls.get(), wallStateSet, name, fid, index );
 
                 if ( rooflines.valid() )
                 {
-                    //MeshConsolidator::run( *rooflines.get() );
-                    addDrawable( rooflines.get(), roofStateSet, name );
+                    addDrawable( rooflines.get(), roofStateSet, name, fid, index );
+                }
+
+                if ( baselines.valid() )
+                {
+                    addDrawable( baselines.get(), 0L, name, fid, index );
                 }
 
                 if ( outlines.valid() )
                 {
-                    addDrawable( outlines.get(), 0L, name );
+                    addDrawable( outlines.get(), 0L, name, fid, index );
                 }
             }   
         }
@@ -812,17 +893,19 @@ ExtrudeGeometryFilter::push( FeatureList& input, FilterContext& context )
     _wallResLib = 0L;
     _roofResLib = 0L;
 
-    const StyleSheet* sheet = context.getSession()->styles();
+    const StyleSheet* sheet = context.getSession() ? context.getSession()->styles() : 0L;
 
     if ( sheet != 0L )
     {
         if ( _wallSkinSymbol.valid() && _wallSkinSymbol->libraryName().isSet() )
         {
             _wallResLib = sheet->getResourceLibrary( *_wallSkinSymbol->libraryName() );
+
             if ( !_wallResLib.valid() )
             {
                 OE_WARN << LC << "Unable to load resource library '" << *_wallSkinSymbol->libraryName() << "'"
                     << "; wall geometry will not be textured." << std::endl;
+                _wallSkinSymbol = 0L;
             }
         }
 
@@ -833,6 +916,7 @@ ExtrudeGeometryFilter::push( FeatureList& input, FilterContext& context )
             {
                 OE_WARN << LC << "Unable to load resource library '" << *_roofSkinSymbol->libraryName() << "'"
                     << "; roof geometry will not be textured." << std::endl;
+                _roofSkinSymbol = 0L;
             }
         }
     }
@@ -871,16 +955,34 @@ ExtrudeGeometryFilter::push( FeatureList& input, FilterContext& context )
             groupStateSet->setAttributeAndModes( new osg::LineWidth(*_outlineSymbol->stroke()->width()), 1 );
     }
 
-    OE_DEBUG << LC << "Sorted geometry into " << group->getNumChildren() << " groups" << std::endl;
+#if 0
+    // if we have textures, install a shader to draw them
+    if ( _wallSkinSymbol.valid() || _roofSkinSymbol.valid() )
+    {
+        osg::StateSet* stateSet = group->getOrCreateStateSet();
+
+        VirtualProgram* vp = new VirtualProgram();
+        vp->setName("ExtrudeGeomFilter");
+        vp->installDefaultColoringShaders( 1 );
+        stateSet->setAttributeAndModes( vp, osg::StateAttribute::ON );
+
+        // a default empty texture will support any non-textured geometry 
+        osg::Texture2D* tex = new osg::Texture2D( ImageUtils::createEmptyImage() );
+        tex->setUnRefImageDataAfterApply( false );
+        stateSet->setTextureAttributeAndModes(0, tex, osg::StateAttribute::ON);
+        stateSet->getOrCreateUniform("tex0", osg::Uniform::SAMPLER_2D)->set(0);
+    }
+#endif
 
-    //TODO
-    // running this after the MC reduces the primitive set count by a huge amount, but I
-    // have not figured out why yet.
-    if ( _mergeGeometry == true )
+#if 1
+    // generate shaders to draw the geometry.
+    if ( Registry::capabilities().supportsGLSL() )
     {
-        osgUtil::Optimizer o;
-        o.optimize( group, osgUtil::Optimizer::MERGE_GEOMETRY );
+        StateSetCache* cache = context.getSession() ? context.getSession()->getStateSetCache() : 0L;
+        ShaderGenerator gen( cache );
+        group->accept( gen );
     }
+#endif
 
     return group;
 }
diff --git a/src/osgEarthFeatures/Feature b/src/osgEarthFeatures/Feature
index 5ddeade..40bf095 100644
--- a/src/osgEarthFeatures/Feature
+++ b/src/osgEarthFeatures/Feature
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -16,15 +16,16 @@
  * You should have received a copy of the GNU Lesser General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
-
 #ifndef OSGEARTHFEATURES_FEATURE_H
 #define OSGEARTHFEATURES_FEATURE_H 1
 
 #include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/FilterContext>
 #include <osgEarthSymbology/Geometry>
 #include <osgEarthSymbology/Style>
 #include <osgEarth/SpatialReference>
 #include <osg/Array>
+#include <osg/Shape>
 #include <map>
 #include <list>
 
@@ -32,6 +33,7 @@ namespace osgEarth { namespace Features
 {
     using namespace osgEarth;
     using namespace osgEarth::Symbology;
+    class FilterContext;
 
     /**
      * Metadata and schema information for feature data.
@@ -41,6 +43,8 @@ namespace osgEarth { namespace Features
     public:        
         FeatureProfile( const GeoExtent& extent );
 
+        virtual ~FeatureProfile() { }
+
         /** Gets the spatial extents of the features in this profile. */
         const GeoExtent& getExtent() const {
             return _extent; }
@@ -98,32 +102,75 @@ namespace osgEarth { namespace Features
 
     typedef unsigned long FeatureID;
 
+    /**
+     * Wraps a FeatureID in a referenced object.
+     */
+    class RefFeatureID : public osg::Referenced
+    {
+    public:
+        RefFeatureID( FeatureID fid ) : _fid(fid) { }
+        virtual ~RefFeatureID() { }
+
+        operator FeatureID () const { return _fid; }
+    protected:
+        FeatureID _fid;
+    };
+
+
     typedef std::map< std::string, AttributeType > FeatureSchema;
 
+    class Feature;
+
+    typedef std::list< osg::ref_ptr<Feature> > FeatureList;
+
     /**
      * Basic building block of vector feature data.
      */
     class OSGEARTHFEATURES_EXPORT Feature : public osg::Object
     {
-    public:
-        Feature( FeatureID fid =0L );
+    public:        
 
-        Feature( Geometry* geom, const Style& style =Style(), FeatureID fid =0L );
+        Feature( Geometry* geom, const SpatialReference* srs, const Style& style =Style(), FeatureID fid =0L );
 
         /** Copy contructor */
         Feature( const Feature& rhs, const osg::CopyOp& copyop =osg::CopyOp::DEEP_COPY_ALL );
 
+        virtual ~Feature() { }
+
         META_Object( osgEarthFeatures, Feature );
 
     public:
 
+        /**
+         * The unique ID of this feature (unique relative to its provider)
+         */
         FeatureID getFID() const;
 
-        void setGeometry( Symbology::Geometry* geom ) { _geom = geom; }
+        /**
+         * The geometry in this feature.
+         */
+        void setGeometry( Symbology::Geometry* geom );
+        Symbology::Geometry* getGeometry() { dirty(); return _geom.get(); }
+        const Symbology::Geometry* getGeometry() const { return _geom.get(); }
+
+        /**
+         * The spatial reference of the geometry in this feature.
+         */
+        const SpatialReference* getSRS() const { return _srs.get(); }
+        void setSRS( const SpatialReference* srs );
 
-        Symbology::Geometry* getGeometry() { return _geom.get(); }
+        /**
+         * Computes the bound of this feature in the specified SRS.
+         */
+        bool getWorldBound( const SpatialReference* srs, osg::BoundingSphered& out_bound ) const;
+
+        /** 
+         * Gets a polytope, in world coordinates (proj or ECEF) that bounds the
+         * geographic extents covered by this feature. This is useful for roughly
+         * intersecting the feature with the terrain graph.
+         */
+        bool getWorldBoundingPolytope( const SpatialReference* srs, osg::Polytope& out_polytope ) const;
 
-        const Symbology::Geometry* getGeometry() const { return _geom.get(); }
 
         const AttributeTable& getAttrs() const { return _attrs; }
 
@@ -144,24 +191,44 @@ namespace osgEarth { namespace Features
         const optional<Style>& style() const { return _style; }
 
         /** Geodetic interpolation method. */
-        optional<GeoInterpolation>& geoInterp() { return _geoInterp; }
-        const optional<GeoInterpolation>& geomInterp() const { return _geoInterp; }
+        optional<GeoInterpolation>& geoInterp() { dirty(); return _geoInterp; }
+        const optional<GeoInterpolation>& geoInterp() const { return _geoInterp; }
 
         /** populates the variables of an expression with attribute values and evals the expression. */
-        double eval( NumericExpression& expr ) const;
+        double eval( NumericExpression& expr, FilterContext const* context=0L ) const;
         
         /** populates the variables of an expression with attribute values and evals the expression. */
-        const std::string& eval( StringExpression& expr ) const;
+        const std::string& eval( StringExpression& expr, FilterContext const* context=0L ) const;
+
+    public:
+        /** Gets a GeoJSON representation of this Feature */
+        std::string getGeoJSON();
+
+        /** Gets a FeatureList as a GeoJSON FeatureCollection */
+        static std::string featuresToGeoJSON( FeatureList& features);
+
+    public:
+        /**
+         * Transforms this Feature to the given SpatialReference
+         */
+        void transform( const SpatialReference* srs );
 
     protected:
-        FeatureID                         _fid;
-        osg::ref_ptr<Symbology::Geometry> _geom;
-        AttributeTable                    _attrs;
-        optional<Style>                   _style;
-        optional<GeoInterpolation>        _geoInterp;
+
+        Feature( FeatureID fid =0L );
+
+        FeatureID                            _fid;
+        osg::ref_ptr<Symbology::Geometry>    _geom;
+        osg::ref_ptr<const SpatialReference> _srs;
+        AttributeTable                       _attrs;
+        optional<Style>                      _style;
+        optional<GeoInterpolation>           _geoInterp;
+        GeoExtent                            _cachedExtent;
+
+        void dirty();
     };
 
-    typedef std::list< osg::ref_ptr<Feature> > FeatureList;
+
 
 } } // namespace osgEarth::Features
 
diff --git a/src/osgEarthFeatures/Feature.cpp b/src/osgEarthFeatures/Feature.cpp
index 1c5ff8d..a84b0b9 100644
--- a/src/osgEarthFeatures/Feature.cpp
+++ b/src/osgEarthFeatures/Feature.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,22 +17,24 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/Feature>
+#include <osgEarth/StringUtils>
+#include <osgEarthFeatures/GeometryUtils>
+#include <osgEarth/JsonUtils>
 #include <algorithm>
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 
-static
-std::string EMPTY_STRING;
+#define LC "[Feature] "
 
 //----------------------------------------------------------------------------
 
 FeatureProfile::FeatureProfile( const GeoExtent& extent ) :
-_extent( extent ),
-_firstLevel(0),
-_maxLevel(-1),
-_tiled(false)
+_extent    ( extent ),
+_firstLevel( 0 ),
+_maxLevel  ( -1 ),
+_tiled     ( false )
 {
     //nop
 }
@@ -95,6 +97,7 @@ AttributeValue::getString() const
         case ATTRTYPE_DOUBLE: return osgEarth::toString(second.doubleValue);
         case ATTRTYPE_INT:    return osgEarth::toString(second.intValue);
         case ATTRTYPE_BOOL:   return osgEarth::toString(second.boolValue);
+        case ATTRTYPE_UNSPECIFIED: break;
     }
     return EMPTY_STRING;
 }
@@ -107,6 +110,7 @@ AttributeValue::getDouble( double defaultValue ) const
         case ATTRTYPE_DOUBLE: return second.doubleValue;
         case ATTRTYPE_INT:    return (double)second.intValue;
         case ATTRTYPE_BOOL:   return second.boolValue? 1.0 : 0.0;
+        case ATTRTYPE_UNSPECIFIED: break;
     }
     return defaultValue;
 }
@@ -119,6 +123,7 @@ AttributeValue::getInt( int defaultValue ) const
         case ATTRTYPE_DOUBLE: return (int)second.doubleValue;
         case ATTRTYPE_INT:    return second.intValue;
         case ATTRTYPE_BOOL:   return second.boolValue? 1 : 0;
+        case ATTRTYPE_UNSPECIFIED: break;
     }
     return defaultValue;
 }
@@ -131,6 +136,7 @@ AttributeValue::getBool( bool defaultValue ) const
         case ATTRTYPE_DOUBLE: return second.doubleValue != 0.0;
         case ATTRTYPE_INT:    return second.intValue != 0;
         case ATTRTYPE_BOOL:   return second.boolValue;
+        case ATTRTYPE_UNSPECIFIED: break;
     }
     return defaultValue;
 }
@@ -138,28 +144,35 @@ AttributeValue::getBool( bool defaultValue ) const
 //----------------------------------------------------------------------------
 
 Feature::Feature( FeatureID fid ) :
-_fid( fid )
+_fid( fid ),
+_srs( 0L )
+//_cachedBoundingPolytopeValid( false )
 {
     //NOP
 }
 
-Feature::Feature( Geometry* geom, const Style& style, FeatureID fid ) :
+Feature::Feature( Geometry* geom, const SpatialReference* srs, const Style& style, FeatureID fid ) :
 _geom ( geom ),
+_srs  ( srs ),
 _fid  ( fid )
 {
     if ( !style.empty() )
         _style = style;
+
+    dirty();
 }
 
 Feature::Feature( const Feature& rhs, const osg::CopyOp& copyOp ) :
 _fid      ( rhs._fid ),
 _attrs    ( rhs._attrs ),
 _style    ( rhs._style ),
-_geoInterp( rhs._geoInterp )
+_geoInterp( rhs._geoInterp ),
+_srs      ( rhs._srs.get() )
 {
     if ( rhs._geom.valid() )
-        //_geom = dynamic_cast<Geometry*>( copyOp( rhs._geom.get() ) );
         _geom = rhs._geom->clone();
+
+    dirty();
 }
 
 FeatureID
@@ -169,6 +182,28 @@ Feature::getFID() const
 }
 
 void
+Feature::setSRS( const SpatialReference* srs )
+{
+    _srs = srs;
+    dirty();
+}
+
+void
+Feature::setGeometry( Geometry* geom )
+{
+    _geom = geom;
+    dirty();
+}
+
+void
+Feature::dirty()
+{
+    _cachedExtent = GeoExtent::INVALID;
+    //_cachedGeocentricBound._radius = -1.0; // invalidate
+    //_cachedBoundingPolytopeValid = false;
+}
+
+void
 Feature::set( const std::string& name, const std::string& value )
 {
     AttributeValue& a = _attrs[name];
@@ -235,19 +270,220 @@ Feature::getBool( const std::string& name, bool defaultValue ) const
 }
 
 double
-Feature::eval( NumericExpression& expr ) const
+Feature::eval( NumericExpression& expr, FilterContext const* context ) const
 {
     const NumericExpression::Variables& vars = expr.variables();
     for( NumericExpression::Variables::const_iterator i = vars.begin(); i != vars.end(); ++i )
-        expr.set( *i, getDouble(i->first, 0.0)); //osgEarth::as<double>(getAttr(i->first),0.0) );
+    {
+      double val = 0.0;
+      AttributeTable::const_iterator ai = _attrs.find(toLower(i->first));
+      if (ai != _attrs.end())
+      {
+        val = ai->second.getDouble(0.0);
+      }
+      else if (context)
+      {
+        //No attr found, look for script
+        ScriptEngine* engine = context->getSession()->getScriptEngine();
+        if (engine)
+        {
+          ScriptResult result = engine->run(i->first, this, context);
+          if (result.success())
+            val = result.asDouble();
+          else
+              OE_WARN << LC << "Script error:" << result.message() << std::endl;
+        }
+      }
+
+      expr.set( *i, val); //osgEarth::as<double>(getAttr(i->first),0.0) );
+    }
+
     return expr.eval();
 }
 
 const std::string&
-Feature::eval( StringExpression& expr ) const
+Feature::eval( StringExpression& expr, FilterContext const* context ) const
 {
     const StringExpression::Variables& vars = expr.variables();
     for( StringExpression::Variables::const_iterator i = vars.begin(); i != vars.end(); ++i )
-        expr.set( *i, getString(i->first) ); //getAttr(i->first) );
+    {
+      std::string val = "";
+      AttributeTable::const_iterator ai = _attrs.find(toLower(i->first));
+      if (ai != _attrs.end())
+      {
+        val = ai->second.getString();
+      }
+      else if (context)
+      {
+        //No attr found, look for script
+        ScriptEngine* engine = context->getSession()->getScriptEngine();
+        if (engine)
+        {
+          ScriptResult result = engine->run(i->first, this, context);
+          if (result.success())
+            val = result.asString();
+          else
+              OE_WARN << LC << "Script error:" << result.message() << std::endl;
+        }
+      }
+
+      if (!val.empty())
+        expr.set( *i, val );
+    }
+
     return expr.eval();
 }
+
+
+bool
+Feature::getWorldBound(const SpatialReference* srs,
+                       osg::BoundingSphered&   out_bound) const
+{
+    if ( srs && getSRS() && getGeometry() )
+    {
+        out_bound.init();
+
+        ConstGeometryIterator i( getGeometry(), false); 
+        while( i.hasMore() )
+        {
+            const Geometry* g = i.next();
+            for( Geometry::const_iterator p = g->begin(); p != g->end(); ++p )
+            {
+                GeoPoint point( getSRS(), *p, ALTMODE_ABSOLUTE );
+                GeoPoint srs_point;
+                if ( point.transform( srs, srs_point ) )
+                {
+                    osg::Vec3d world;
+                    srs_point.toWorld(world);
+                    out_bound.expandBy( world );
+                }
+            }
+        }
+        if ( out_bound.valid() && out_bound.radius() == 0.0 )
+        {
+            out_bound.radius() = 1.0;
+        }
+        return true;
+    }
+    return false;
+}
+
+
+bool
+Feature::getWorldBoundingPolytope(const SpatialReference* srs,
+                                  osg::Polytope&          out_polytope) const
+{
+    osg::BoundingSphered bs;
+    if ( getWorldBound(srs, bs) && bs.valid() )
+    {
+        out_polytope.clear();
+
+        // add planes for the four sides of the BS. Normals point inwards.
+        out_polytope.add( osg::Plane(osg::Vec3d( 1, 0,0), osg::Vec3d(-bs.radius(),0,0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d(-1, 0,0), osg::Vec3d( bs.radius(),0,0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d( 0, 1,0), osg::Vec3d(0, -bs.radius(),0)) );
+        out_polytope.add( osg::Plane(osg::Vec3d( 0,-1,0), osg::Vec3d(0,  bs.radius(),0)) );
+
+        // for a projected feature, we're done. For a geocentric one, transform the polytope
+        // into world (ECEF) space.
+        if ( srs->isGeographic() && !srs->isPlateCarre() )
+        {
+            const osg::EllipsoidModel* e = srs->getEllipsoid();
+
+            // add a bottom cap, unless the bounds are sufficiently large.
+            double minRad = std::min(e->getRadiusPolar(), e->getRadiusEquator());
+            double maxRad = std::max(e->getRadiusPolar(), e->getRadiusEquator());
+            double zeroOffset = bs.center().length();
+            if ( zeroOffset > minRad * 0.1 )
+            {
+                out_polytope.add( osg::Plane(osg::Vec3d(0,0,1), osg::Vec3d(0,0,-maxRad+zeroOffset)) );
+            }
+        }
+
+        // transform the clipping planes ito ECEF space
+        GeoPoint refPoint;
+        refPoint.fromWorld( srs, bs.center() );
+
+        osg::Matrix local2world;
+        refPoint.createLocalToWorld( local2world );
+
+        out_polytope.transform( local2world );
+
+        return true;
+    }
+    return false;
+}
+
+
+std::string
+Feature::getGeoJSON()
+{
+    std::string geometry = GeometryUtils::geometryToGeoJSON( getGeometry() );
+
+    Json::Value root(Json::objectValue);
+    root["type"] = "Feature";
+    root["id"] = (unsigned int)getFID(); //TODO:  Update JSON to use unsigned longs
+    
+    Json::Reader reader;
+    Json::Value geometryValue( Json::objectValue );
+    if ( reader.parse( geometry, geometryValue ) )
+    {
+        root["geometry"] = geometryValue;
+    }
+
+    //Write out all the properties         
+    Json::Value props(Json::objectValue);    
+    if (getAttrs().size() > 0)
+    {
+
+        for (AttributeTable::const_iterator itr = getAttrs().begin(); itr != getAttrs().end(); ++itr)
+            props[itr->first] = itr->second.getString();
+    } 
+
+    root["properties"] = props;
+    return Json::FastWriter().write( root );
+    //return Json::StyledWriter().write( root );
+}
+
+std::string Feature::featuresToGeoJSON( FeatureList& features)
+{
+    std::stringstream buf;
+
+    buf << "{\"type\": \"FeatureCollection\", \"features\": [";
+
+    FeatureList::iterator last = features.end();
+    last--;
+
+    for (FeatureList::iterator i = features.begin(); i != features.end(); i++)
+    {
+        buf << i->get()->getGeoJSON();
+        if (i != last)
+        {
+            buf << ",";
+        }
+    }
+
+    buf << "]}";
+
+    return buf.str();
+
+}
+
+void Feature::transform( const SpatialReference* srs )
+{
+    if (!getGeometry())
+    {
+        return;
+    }
+
+    if (getSRS()->isEquivalentTo( srs )) return;
+
+    // iterate over the feature geometry.
+    GeometryIterator iter( getGeometry() );
+    while( iter.hasMore() )
+    {
+        Geometry* geom = iter.next();
+        getSRS()->transform( geom->asVector(), srs );
+    }
+    setSRS( srs );
+}
\ No newline at end of file
diff --git a/src/osgEarthFeatures/FeatureCursor b/src/osgEarthFeatures/FeatureCursor
index 4510193..ecd2558 100644
--- a/src/osgEarthFeatures/FeatureCursor
+++ b/src/osgEarthFeatures/FeatureCursor
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -41,6 +41,8 @@ namespace osgEarth { namespace Features
 
     public:
         void fill( FeatureList& output );
+
+        virtual ~FeatureCursor() { }
     };
 
     /**
@@ -51,6 +53,9 @@ namespace osgEarth { namespace Features
     {
     public:
         FeatureListCursor( const FeatureList& input, bool cloneFeatures =false );
+        
+        virtual ~FeatureListCursor() { }
+
         virtual bool hasMore() const;
         virtual Feature* nextFeature();
 
@@ -68,6 +73,7 @@ namespace osgEarth { namespace Features
     public:
         GeometryFeatureCursor( Symbology::Geometry* geom );
         GeometryFeatureCursor( Symbology::Geometry* geom, const FeatureProfile* fp, const FeatureFilterList& filters );
+        virtual ~GeometryFeatureCursor() { }
         virtual bool hasMore() const;
         virtual Feature* nextFeature();
     protected:
diff --git a/src/osgEarthFeatures/FeatureCursor.cpp b/src/osgEarthFeatures/FeatureCursor.cpp
index e26dc3c..a093cc6 100644
--- a/src/osgEarthFeatures/FeatureCursor.cpp
+++ b/src/osgEarthFeatures/FeatureCursor.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -83,9 +83,8 @@ Feature*
 GeometryFeatureCursor::nextFeature()
 {
     if ( hasMore() )
-    {
-        _lastFeature = new Feature();
-        _lastFeature->setGeometry( _geom.get() );
+    {        
+        _lastFeature = new Feature( _geom.get(), _featureProfile.valid() ? _featureProfile->getSRS() : 0L );
         FilterContext cx;
         cx.profile() = _featureProfile.get();
         FeatureList list;
diff --git a/src/osgEarthFeatures/FeatureDisplayLayout b/src/osgEarthFeatures/FeatureDisplayLayout
index 069f5c2..a4f1298 100644
--- a/src/osgEarthFeatures/FeatureDisplayLayout
+++ b/src/osgEarthFeatures/FeatureDisplayLayout
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -37,17 +37,26 @@ namespace osgEarth { namespace Features
     class OSGEARTHFEATURES_EXPORT FeatureLevel
     {
     public:
+        /** Constructs a feature level from serialized data */
         FeatureLevel( const Config& config );
+
+        /** Constructs a feature level with range information */
         FeatureLevel( float minRange, float maxRange );
-        FeatureLevel( float minRange, float maxRange, const StyleSelector& oneSelector );
 
-        float minRange() const { return _minRange; }
-        float maxRange() const { return _maxRange; }
+        /** Constructs a feature level with range information and a style class */
+        FeatureLevel( float minRange, float maxRange, const std::string& styleName );
+
+        /** Minimum and aximum display ranges for this level */
+        float minRange() const { return *_minRange; }
+        float maxRange() const { return *_maxRange; }
+
+        /** Style class (or style selector) name associated with this level (optional) */
+        optional<std::string>& styleName() { return _styleName; }
+        const optional<std::string>& styleName() const { return _styleName; }
 
-        //optional<unsigned>& lod() { return _lod; }
-        //const optional<unsigned>& lod() const { return _lod; }
 
-        const StyleSelectorVector& selectors() const { return _selectors; }
+        virtual ~FeatureLevel() { }
+
 
     public:
         Config getConfig() const;
@@ -55,9 +64,9 @@ namespace osgEarth { namespace Features
     protected:
         void fromConfig( const Config& conf );
 
-        float               _minRange, _maxRange;
-        StyleSelectorVector _selectors;
-        optional<unsigned>  _lod;
+        optional<float>       _minRange;
+        optional<float>       _maxRange;
+        optional<std::string> _styleName;
     };
 
     /**
@@ -67,16 +76,34 @@ namespace osgEarth { namespace Features
     {
     public:
         FeatureDisplayLayout( const Config& conf =Config() );
+        virtual ~FeatureDisplayLayout() { }
 
         /**
          * The ratio of visibility range to feature tile radius. Default is 15.
          * Increase this to produce more, smaller tiles at a given visibility
-         * range; decrease this to procide fewer, larger tiles.
+         * range; decrease this to produce fewer, larger tiles.
+         *
+         * For example, for factor=15, at a visibility range of (say) 120,000m
+         * the system will attempt to create tiles that are approximately
+         * 8,000m in radius. (120,000 / 15 = 8,000).
          */
         optional<float>& tileSizeFactor() { return _tileSizeFactor; }
         const optional<float>& tileSizeFactor() const { return _tileSizeFactor; }
 
         /**
+         * The desired max range for pre-tiled feature sources like TFS.  The tileSizeFactor will be automatically computed
+         * based on the first level of the feature profile so that it shows up at that range.
+         */
+        optional<float>& maxRange() { return _maxRange;}
+        const optional<float>& maxRange() const { return _maxRange;}
+
+        /**
+         * Minimum visibility range for all tiles in the layout.
+         */
+         optional<float>& minRange() { return _minRange; }
+         const optional<float>& minRange() const { return _minRange; }
+
+        /**
          * Whether to crop geometry to fit within the cell extents when chopping
          * a feature level up into grid cells. By default, this is false, meaning 
          * that a feature whose centroid falls within the cell will be included.
@@ -86,6 +113,27 @@ namespace osgEarth { namespace Features
         optional<bool>& cropFeatures() { return _cropFeatures; }
         const optional<bool>& cropFeatures() const { return _cropFeatures; }
 
+        /**
+         * Sets the offset that will be applied to the computed paging priority
+         * of tiles in this layout. Adjusting this can affect the priority of this
+         * data with respect to other paged data in the scene (like terrain or other
+         * feature layers).
+         * Default = 0.0
+         */
+        optional<float>& priorityOffset() { return _priorityOffset; }
+        const optional<float>& priorityOffset() const { return _priorityOffset; }
+
+        /**
+         * Sets the scale factor to be applied to the computed paging priority
+         * of tiles in this layout. Adjusting this can affect the priority of this
+         * data with respect to other paged data in the scene (like terrain or other
+         * feature layers).
+         * Default = 1.0.
+         */
+        optional<float>& priorityScale() { return _priorityScale; }
+        const optional<float>& priorityScale() const { return _priorityScale; }
+
+
         /** Adds a new feature level */
         void addLevel( const FeatureLevel& level );
 
@@ -96,7 +144,7 @@ namespace osgEarth { namespace Features
         const FeatureLevel* getLevel( unsigned i ) const;
 
         /** Gets the maximum range of the schema */
-        float getMaxRange() const;
+        //float getMaxRange() const;
 
         /**
          * Calculates the "best" quadtree LOD for the specified level, given the radius 
@@ -109,7 +157,11 @@ namespace osgEarth { namespace Features
 
     protected:
         optional<float> _tileSizeFactor;
+        optional<float> _minRange;
+        optional<float> _maxRange;
         optional<bool>  _cropFeatures;
+        optional<float> _priorityOffset;
+        optional<float> _priorityScale;
         typedef std::multimap<float,FeatureLevel> Levels;
         Levels _levels;
 
diff --git a/src/osgEarthFeatures/FeatureDisplayLayout.cpp b/src/osgEarthFeatures/FeatureDisplayLayout.cpp
index 00446ba..6737164 100644
--- a/src/osgEarthFeatures/FeatureDisplayLayout.cpp
+++ b/src/osgEarthFeatures/FeatureDisplayLayout.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,50 +32,35 @@ _maxRange( FLT_MAX )
     fromConfig( conf );
 }
 
-FeatureLevel::FeatureLevel( float minRange, float maxRange ) :
-_minRange( minRange ),
-_maxRange( maxRange )
+FeatureLevel::FeatureLevel( float minRange, float maxRange )
 {
-    //nop
+    _minRange = minRange;
+    _maxRange = maxRange;
 }
 
-FeatureLevel::FeatureLevel( float minRange, float maxRange, const StyleSelector& oneSelector ) :
-_minRange( minRange ),
-_maxRange( maxRange )
+FeatureLevel::FeatureLevel( float minRange, float maxRange, const std::string& styleName )
 {
-    _selectors.push_back( oneSelector );
+    _minRange = minRange;
+    _maxRange = maxRange;
+    _styleName = styleName;
 }
 
 void
 FeatureLevel::fromConfig( const Config& conf )
 {
-    if ( conf.hasValue( "min_range" ) )
-        _minRange = conf.value( "min_range", 0.0f );
-    if ( conf.hasValue( "max_range" ) )
-        _maxRange = conf.value( "max_range", FLT_MAX );
-    
-    conf.getIfSet( "lod", _lod );
-
-    const ConfigSet selectorsConf = conf.children( "selector" );
-    for( ConfigSet::const_iterator i = selectorsConf.begin(); i != selectorsConf.end(); ++i )
-    {
-        _selectors.push_back( StyleSelector(*i) );
-    }
+    conf.getIfSet( "min_range", _minRange );
+    conf.getIfSet( "max_range", _maxRange );
+    conf.getIfSet( "style",     _styleName ); 
+    conf.getIfSet( "class",     _styleName ); // alias
 }
 
 Config
 FeatureLevel::getConfig() const
 {
     Config conf( "level" );
-    conf.add( "min_range", toString(_minRange) );
-    conf.add( "max_range", toString(_maxRange) );
-    conf.addIfSet( "lod", _lod );
-
-    for( StyleSelectorVector::const_iterator i = _selectors.begin(); i != _selectors.end(); ++i )
-    {
-        conf.addChild( (*i).getConfig() );
-    }
-
+    conf.addIfSet( "min_range", _minRange );
+    conf.addIfSet( "max_range", _maxRange );
+    conf.addIfSet( "style",     _styleName );
     return conf;
 }
 
@@ -83,7 +68,11 @@ FeatureLevel::getConfig() const
 
 FeatureDisplayLayout::FeatureDisplayLayout( const Config& conf ) :
 _tileSizeFactor( 15.0f ),
-_cropFeatures( false )
+_minRange      ( 0.0f ),
+_maxRange      ( 0.0f ),
+_cropFeatures  ( false ),
+_priorityOffset( 0.0f ),
+_priorityScale ( 1.0f )
 {
     fromConfig( conf );
 }
@@ -93,6 +82,10 @@ FeatureDisplayLayout::fromConfig( const Config& conf )
 {
     conf.getIfSet( "tile_size_factor", _tileSizeFactor );
     conf.getIfSet( "crop_features",    _cropFeatures );
+    conf.getIfSet( "priority_offset",  _priorityOffset );
+    conf.getIfSet( "priority_scale",   _priorityScale );
+    conf.getIfSet( "min_range",        _minRange );
+    conf.getIfSet( "max_range",        _maxRange );
     ConfigSet children = conf.children( "level" );
     for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
         addLevel( FeatureLevel( *i ) );
@@ -104,6 +97,10 @@ FeatureDisplayLayout::getConfig() const
     Config conf( "layout" );
     conf.addIfSet( "tile_size_factor", _tileSizeFactor );
     conf.addIfSet( "crop_features",    _cropFeatures );
+    conf.addIfSet( "priority_offset",  _priorityOffset );
+    conf.addIfSet( "priority_scale",   _priorityScale );
+    conf.addIfSet( "min_range",        _minRange );
+    conf.addIfSet( "max_range",        _maxRange );
     for( Levels::const_iterator i = _levels.begin(); i != _levels.end(); ++i )
         conf.add( i->second.getConfig() );
     return conf;
@@ -133,11 +130,11 @@ FeatureDisplayLayout::getLevel( unsigned n ) const
     return 0L;
 }
 
-float
-FeatureDisplayLayout::getMaxRange() const
-{
-    return _levels.size() > 0 ? _levels.begin()->second.maxRange() : 0.0f;
-}
+//float
+//FeatureDisplayLayout::getMaxRange() const
+//{
+//    return _levels.size() > 0 ? _levels.begin()->second.maxRange() : 0.0f;
+//}
 
 unsigned
 FeatureDisplayLayout::chooseLOD( const FeatureLevel& level, double fullExtentRadius ) const
diff --git a/src/osgEarthFeatures/FeatureDrawSet b/src/osgEarthFeatures/FeatureDrawSet
new file mode 100644
index 0000000..95ce676
--- /dev/null
+++ b/src/osgEarthFeatures/FeatureDrawSet
@@ -0,0 +1,91 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHFEATURES_FEATURE_DRAW_SET_H
+#define OSGEARTHFEATURES_FEATURE_DRAW_SET_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osg/Geometry>
+#include <set>
+
+namespace osgEarth { namespace Features
+{
+    /**
+     * Contains a catalog of nodes and/or primitive set groups that comprise
+     * a single Feature in the scene.
+     */
+    class OSGEARTHFEATURES_EXPORT FeatureDrawSet
+    {     
+    public: // types
+        typedef osg::Geometry::PrimitiveSetList                        PrimitiveSets;
+        struct DrawableSlice {
+            osg::ref_ptr<osg::Drawable> drawable;
+            PrimitiveSets               primSets;
+            osg::Matrixd                local2world;
+        };
+        //typedef std::pair< osg::ref_ptr<osg::Drawable>, PrimitiveSets> DrawableSlice;
+        typedef std::vector<DrawableSlice>                             DrawableSlices;
+        typedef std::vector< osg::ref_ptr<osg::Node> >                 Nodes;
+
+    public:
+        FeatureDrawSet();
+        virtual ~FeatureDrawSet() { }
+
+        /** Nodes comprising this draw set */
+        Nodes& nodes() { return _nodes; }
+        const Nodes& nodes() const { return _nodes; }
+
+        /** Drawable/primitive-set-list pairs comprising this draw set */
+        DrawableSlices& slices() { return _slices; }
+        const DrawableSlices& slices() const { return _slices; }
+
+        /** Gets the primitive sets list associated with a drawable, creating the entry as necessary */
+        PrimitiveSets& getOrCreateSlice(osg::Drawable* d);
+
+        /** Gets a slice, given a drawable; or slices().end() if not found. */
+        DrawableSlices::iterator slice(osg::Drawable* d);
+        DrawableSlices::const_iterator slice(osg::Drawable* d) const;
+
+        /** Whether the draw set is empty */
+        bool empty() const { return _nodes.empty() && _slices.empty(); }
+
+        /** Sets the visibility of the draw set. */
+        void setVisible( bool value );
+
+        /** Clears out this draw set */
+        void clear();
+
+        /** Collects a set containing primitive indicies used in a slice. */
+        void collectPrimitiveIndexSet( const DrawableSlice& slice, std::set<unsigned>& output ) const;
+        
+        /** Creates a shallow copy of the draw set under its own scene graph */
+        osg::Node* createCopy();
+
+    private:
+        Nodes          _nodes;
+        DrawableSlices _slices;
+
+        typedef std::vector<unsigned> Masks;
+
+        bool            _visible;
+        Masks           _invisibleMasks;
+    };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTHFEATURES_FEATURE_DRAW_SET_H
diff --git a/src/osgEarthFeatures/FeatureDrawSet.cpp b/src/osgEarthFeatures/FeatureDrawSet.cpp
new file mode 100644
index 0000000..9638279
--- /dev/null
+++ b/src/osgEarthFeatures/FeatureDrawSet.cpp
@@ -0,0 +1,253 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/FeatureDrawSet>
+#include <osgEarth/LineFunctor>
+#include <osg/Geode>
+#include <osg/MatrixTransform>
+#include <osg/NodeVisitor>
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+
+#define LC "[FeatureDrawSet] "
+
+//-----------------------------------------------------------------------------
+
+namespace
+{
+    // walks a node path, accumulating the state, when merges in the final set and returns the result.
+    osg::StateSet* accumulateStateSet( const osg::NodePath& path, osg::StateSet* final )
+    {
+        osg::StateSet* s = new osg::StateSet();
+        for( osg::NodePath::const_iterator i = path.begin(); i != path.end(); ++i )
+        {
+            if ( (*i)->getStateSet() )
+                s->merge( *(*i)->getStateSet() );
+        }
+
+        if ( final )
+            s->merge( *final );
+        return s;
+    }
+}
+
+//-----------------------------------------------------------------------------
+
+FeatureDrawSet::FeatureDrawSet() :
+_visible( true )
+{
+    //nop
+}
+
+
+FeatureDrawSet::PrimitiveSets&
+FeatureDrawSet::getOrCreateSlice(osg::Drawable* d)
+{
+    for( DrawableSlices::iterator i = _slices.begin(); i != _slices.end(); ++i )
+    {
+        if ( i->drawable.get() == d )
+        {
+            return i->primSets;
+        }
+    }
+
+    _slices.push_back( DrawableSlice() );
+    _slices.back().drawable = d;
+    if ( d && d->getNumParents() > 0 )
+        _slices.back().local2world = osg::computeLocalToWorld( d->getParent(0)->getParentalNodePaths()[0] );
+    return _slices.back().primSets;
+}
+
+FeatureDrawSet::DrawableSlices::iterator 
+FeatureDrawSet::slice(osg::Drawable* d)
+{
+    for( DrawableSlices::iterator i = _slices.begin(); i != _slices.end(); ++i )
+    {
+        if ( i->drawable.get() == d )
+        {
+            return i;
+        }
+    }
+    return _slices.end();
+}
+
+FeatureDrawSet::DrawableSlices::const_iterator 
+FeatureDrawSet::slice(osg::Drawable* d) const
+{
+    for( DrawableSlices::const_iterator i = _slices.begin(); i != _slices.end(); ++i )
+    {
+        if ( i->drawable.get() == d )
+        {
+            return i;
+        }
+    }
+    return _slices.end();
+}
+
+
+void
+FeatureDrawSet::setVisible( bool visible )
+{
+    if ( _visible )
+    {
+        _invisibleMasks.clear();
+        for( unsigned i=0; i<_nodes.size(); ++i )
+        {
+            _invisibleMasks.push_back( _nodes[i]->getNodeMask() );
+            _nodes[i]->setNodeMask( 0 );
+        }
+
+        for( unsigned i=0; i < _slices.size(); ++i )
+        {
+            DrawableSlice& slice = _slices[i];
+            osg::Geometry* geom = slice.drawable->asGeometry();
+            for( PrimitiveSets::iterator p = slice.primSets.begin(); p != slice.primSets.end(); ++p )
+                geom->removePrimitiveSet( geom->getPrimitiveSetIndex(p->get()) );
+        }
+    }
+
+    else // (!_visible)
+    {
+        for( unsigned i=0; i<_nodes.size(); ++i )
+        {
+            _nodes[i]->setNodeMask( _invisibleMasks[i] );
+        }
+        _invisibleMasks.clear();
+
+        for( unsigned i=0; i < _slices.size(); ++i )
+        {
+            DrawableSlice& slice = _slices[i];
+            osg::Geometry* geom = slice.drawable->asGeometry();
+            for( PrimitiveSets::iterator p = slice.primSets.begin(); p != slice.primSets.end(); ++p )
+                geom->addPrimitiveSet( p->get() );
+        }
+    }
+
+    _visible = visible;
+}
+
+
+void
+FeatureDrawSet::clear()
+{
+    _nodes.clear();
+    _slices.clear();
+    _invisibleMasks.clear();
+    _visible = true;
+}
+
+
+osg::Node*
+FeatureDrawSet::createCopy()
+{
+    osg::Group* group = new osg::Group();
+
+    for( Nodes::iterator n = _nodes.begin(); n != _nodes.end(); ++n )
+    {
+        osg::Node* node = n->get();
+        osg::Node* nodeCopy = osg::clone(node, osg::CopyOp::SHALLOW_COPY);
+        osg::Matrix local2world = osg::computeLocalToWorld( node->getParentalNodePaths()[0] );
+        if ( !local2world.isIdentity() )
+        {
+            osg::MatrixTransform* xform = new osg::MatrixTransform(local2world);
+            xform->addChild( nodeCopy );
+            group->addChild( xform );
+        }
+        else
+        {
+            group->addChild( nodeCopy );
+        }
+    }
+
+    osg::Geode* geode = 0L;
+    for( DrawableSlices::iterator p = _slices.begin(); p != _slices.end(); ++p )
+    {
+        DrawableSlice& slice = *p;
+
+        osg::Drawable* d = slice.drawable.get();
+
+        const PrimitiveSets& psets = slice.primSets;
+        if ( psets.size() > 0 )
+        {        
+            osg::Geometry* featureGeom = d->asGeometry();
+
+            osg::NodePath path = featureGeom->getParent(0)->getParentalNodePaths()[0];
+
+            // make a shallow copy of the geometry (share all the buffer arrays)
+            osg::Geometry* copiedGeom = new osg::Geometry( *featureGeom, osg::CopyOp::SHALLOW_COPY );
+            copiedGeom->setPrimitiveSetList( psets );
+
+            // build the state set do it matches:
+            copiedGeom->setStateSet( accumulateStateSet(path, copiedGeom->getStateSet()) );
+
+            // add to our geode
+            if ( !geode )
+                geode = new osg::Geode();
+
+            geode->addDrawable( copiedGeom );
+
+            // include a matrix transform if necessary:
+            osg::Matrix local2world = osg::computeLocalToWorld( path );
+            if ( !local2world.isIdentity() )
+            {
+                osg::MatrixTransform* xform = new osg::MatrixTransform(local2world);
+                xform->addChild( geode );
+                group->addChild( xform );
+            }
+            else
+            {
+                group->addChild( geode );
+            }
+        }
+    }
+
+    return group;
+}
+
+
+namespace
+{
+    struct IndexCollector
+    {
+        void operator()(GLuint i) {
+            _set->insert( unsigned(i) );
+        }
+        void operator()(GLushort i) { 
+            _set->insert( unsigned(i) );
+        }
+        void operator()(GLubyte i) { 
+            _set->insert( unsigned(i) );
+        }
+
+        std::set<unsigned>* _set;
+    };
+}
+
+
+void
+FeatureDrawSet::collectPrimitiveIndexSet( const DrawableSlice& slice, std::set<unsigned>& output ) const
+{
+    for( PrimitiveSets::const_iterator p = slice.primSets.begin(); p != slice.primSets.end(); ++p )
+    {
+        SimpleIndexFunctor<IndexCollector> f;
+        f._set = &output;
+        p->get()->accept( f );
+    }
+}
+
diff --git a/src/osgEarthFeatures/FeatureGeometryIndex b/src/osgEarthFeatures/FeatureGeometryIndex
deleted file mode 100644
index 25b0bcb..0000000
--- a/src/osgEarthFeatures/FeatureGeometryIndex
+++ /dev/null
@@ -1,125 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTHFEATURES_FEATURE_GEOMETRY_INDEX_H
-#define OSGEARTHFEATURES_FEATURE_GEOMETRY_INDEX_H 1
-
-#include <osgEarthFeatures/Common>
-#include <osgEarthFeatures/Feature>
-#include <osg/Geode>
-#include <osg/Geometry>
-#include <osg/PrimitiveSet>
-#include <map>
-#include <vector>
-
-namespace osgEarth { namespace Features
-{
-    /**
-     * Record of all the OSG components that comprise a single Feature.
-     */
-    struct FeatureGeometryRecord
-    {
-        typedef std::vector< osg::ref_ptr<osg::PrimitiveSet> > PrimitiveSetVector;
-        typedef std::map< osg::ref_ptr<osg::Geometry>, PrimitiveSetVector > GeomPrimSetMap;
-
-        osg::ref_ptr<osg::Geode> _geode;
-        GeomPrimSetMap           _primSetsByGeometry;
-    };
-
-    /**
-     * This query object will search the specified scene graph for all the 
-     * OSG components that comprise a particular Feature ID. It searched the
-     * graph for a UserData structure containing a FeatureGeometryIndex. When
-     * found, it searches that index for the Feature ID. If found, it returns
-     * the record; otherwise it continues searching.
-     */
-    class OSGEARTHFEATURES_EXPORT FeatureGeometryQuery
-    {
-    public:
-        FeatureGeometryQuery( osg::Node* graph );
-
-        /**
-         * Locates the geometry record representing the specified feature.
-         * Returns true if found; false if not.
-         */
-        bool find( FeatureID fid, FeatureGeometryRecord& output ) const;
-
-    protected:
-        osg::ref_ptr<osg::Node> _graph;
-    };
-
-    /**
-     * Index that lets you look up the OSG components that comprise a given
-     * Feature. Given the Feature ID, this index will return a set of Geode,
-     * Geometies, and PrimitiveSets that make up the feature.
-     *
-     * Use a FeatureGeometryIndexBuilder to create an index. Typically you can
-     * then attach the index to a node in the scene graph that you used to
-     * create the index.
-     */
-    class OSGEARTHFEATURES_EXPORT FeatureGeometryIndex : public osg::Referenced
-    {
-    public:
-        typedef std::map< FeatureID, FeatureGeometryRecord > FeatureRecords;
-
-    public:
-        /** Gets the record associated with the feature ID, or NULL if there isn't one */
-        const FeatureGeometryRecord* get( FeatureID fid ) const;
-
-        /** Gets the entire database for self-iteration */
-        const FeatureRecords& getRecords() const { return _records; }
-
-    private:
-        FeatureRecords _records;
-        friend class FeatureGeometryIndexBuilder;
-        FeatureGeometryIndex();
-    };
-
-    /**
-     * Use this class to construct a geometry index. Every time you create a
-     * new primitive set that belongs to a Feature, call "add" to remember the
-     * mapping. When you are done building geometry, call "createIndex" to 
-     * build a index for a particular scene graph.
-     */
-    class OSGEARTHFEATURES_EXPORT FeatureGeometryIndexBuilder
-    {
-    public:
-        FeatureGeometryIndexBuilder();
-
-        /**
-         * Maps a primitiset set to a feature.
-         */
-        void add( FeatureID id, osg::PrimitiveSet* primSet );
-
-        /**
-         * Creates an index from a scene graph and the feature ID map
-         */
-        FeatureGeometryIndex* createIndex( osg::Node* graph );
-
-
-    public:
-        typedef std::map< osg::PrimitiveSet*, FeatureID > PrimSetFeatureIdMap;
-
-    protected:
-        PrimSetFeatureIdMap _primSetIds;
-    };
-
-} } // osgEarth::Features
-
-#endif // OSGEARTHFEATURES_FEATURE_GEOMETRY_INDEX_H
diff --git a/src/osgEarthFeatures/FeatureGeometryIndex.cpp b/src/osgEarthFeatures/FeatureGeometryIndex.cpp
deleted file mode 100644
index 8a2ad77..0000000
--- a/src/osgEarthFeatures/FeatureGeometryIndex.cpp
+++ /dev/null
@@ -1,156 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthFeatures/FeatureGeometryIndex>
-
-using namespace osgEarth;
-using namespace osgEarth::Features;
-
-//---------------------------------------------------------------------------
-
-namespace
-{
-    struct FindVisitor : public osg::NodeVisitor
-    {
-        FindVisitor( FeatureID id )
-            : _id(id), 
-              _rec(0L),
-              osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { }
-
-        void apply( osg::Node& node )
-        {
-            if ( _rec )
-                return;
-
-            osg::Referenced* ref = node.getUserData();
-            if ( ref )
-            {
-                FeatureGeometryIndex* index = dynamic_cast<FeatureGeometryIndex*>( ref );
-                if ( index )
-                {
-                    _rec = index->get( _id );
-                    if ( _rec )
-                        return;
-                }
-            }
-            traverse( node );
-        }
-
-        FeatureID _id;
-        const FeatureGeometryRecord* _rec;
-    };
-}
-
-FeatureGeometryQuery::FeatureGeometryQuery( osg::Node* graph ) :
-_graph( graph )
-{
-    //nop
-}
-
-bool
-FeatureGeometryQuery::find( FeatureID id, FeatureGeometryRecord& record ) const
-{
-    if ( _graph.valid() )
-    {
-        FindVisitor visitor( id );
-        _graph->accept( visitor );
-        if ( visitor._rec )
-        {
-            record = *(visitor._rec);
-            return true;
-        }
-    }
-    return false;
-}
-
-//---------------------------------------------------------------------------
-
-FeatureGeometryIndex::FeatureGeometryIndex()
-{
-    //nop
-}
-
-const FeatureGeometryRecord*
-FeatureGeometryIndex::get( FeatureID fid ) const
-{
-    FeatureRecords::const_iterator i = _records.find( fid );
-    return i != _records.end () ? &(i->second) : 0L;
-}
-
-//---------------------------------------------------------------------------
-
-namespace
-{
-    struct Collector : public osg::NodeVisitor
-    {
-        typedef FeatureGeometryIndexBuilder::PrimSetFeatureIdMap IdMap;
-
-        Collector(const IdMap& ids, FeatureGeometryIndex::FeatureRecords& recs )
-            : osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
-              _recs( recs ),
-              _ids( ids ) { }
-
-        void apply( osg::Geode& geode )
-        {
-            for( unsigned i=0; i<geode.getNumDrawables(); ++i )
-            {
-                osg::Geometry* geom = geode.getDrawable(i)->asGeometry();
-                if ( geom )
-                {
-                    for( unsigned j=0; j<geom->getNumPrimitiveSets(); ++j )
-                    {
-                        osg::PrimitiveSet* primSet = geom->getPrimitiveSet(j);
-
-                        IdMap::const_iterator k = _ids.find( primSet );
-                        if ( k != _ids.end() )
-                        {
-                            FeatureID fid = k->second;
-                            FeatureGeometryRecord& rec = _recs[fid];
-                            rec._geode = &geode;
-                            rec._primSetsByGeometry[geom].push_back( primSet );
-                        }
-                    }
-                }
-            }
-            traverse( geode );
-        }
-
-        FeatureGeometryIndex::FeatureRecords& _recs;
-        const FeatureGeometryIndexBuilder::PrimSetFeatureIdMap& _ids;
-    };
-}
-
-FeatureGeometryIndexBuilder::FeatureGeometryIndexBuilder()
-{
-    //nop
-}
-
-void
-FeatureGeometryIndexBuilder::add( FeatureID id, osg::PrimitiveSet* primSet )
-{
-    _primSetIds[primSet] = id;
-}
-
-FeatureGeometryIndex*
-FeatureGeometryIndexBuilder::createIndex( osg::Node* node )
-{
-    FeatureGeometryIndex* index = new FeatureGeometryIndex();
-    Collector collector( _primSetIds, index->_records );
-    node->accept( collector );
-    return index;
-}
diff --git a/src/osgEarthFeatures/FeatureGridder b/src/osgEarthFeatures/FeatureGridder
deleted file mode 100644
index ee4e30b..0000000
--- a/src/osgEarthFeatures/FeatureGridder
+++ /dev/null
@@ -1,114 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTHFEATURES_FEATURE_GRIDDER_H
-#define OSGEARTHFEATURES_FEATURE_GRIDDER_H 1
-
-#include <osgEarthFeatures/Common>
-#include <osgEarthFeatures/Feature>
-#include <osgEarth/GeoData>
-
-
-namespace osgEarth { namespace Features
-{
-    using namespace osgEarth;
-
-    /**
-     * Defines how to grid and crop feature data when creating a model.
-     */
-    class OSGEARTHFEATURES_EXPORT GriddingPolicy
-    {
-    public:
-        enum CullingTechnique
-        {
-            /* crop a feature's shape to the oundaries of the grid cell;
-               default for lines */
-            CULL_BY_CROPPING,   
-
-            /* include a feature in the cell only if its centroid is in the cell;
-               default for polygons and points */
-            CULL_BY_CENTROID
-        };
-
-    public: 
-        GriddingPolicy( const Config& conf =Config() );
-
-        bool enabled() const { return _cellSize.isSet() && *_cellSize > 0.0; }
-
-    public:
-        virtual Config getConfig() const;
-        virtual void fromConfig( const Config& conf );
-
-    public: // properties
-
-        /** The maximum size (width and height) of each square grid cell. */
-        optional<double>& cellSize() { return _cellSize; }
-        const optional<double>& cellSize() const { return _cellSize; }
-
-        /** The technique to use to figure out how to include a feature in a cell. */
-        optional<CullingTechnique>& cullingTechnique() { return _cullingTechnique; }
-        const optional<CullingTechnique>& cullingTechnique() const { return _cullingTechnique; }
-
-        /** Whether to run the optimizer's spatialize-groups pass on the gridded geometry */
-        optional<bool>& spatializeGroups() { return _spatializeGroups; }
-        const optional<bool>& spatializeGroups() const { return _spatializeGroups; }
-
-        /** Whether to install cluster cullers on the grid cell nodes */
-        optional<bool>& clusterCulling() { return _clusterCulling; }
-        const optional<bool>& clusterCulling() const { return _clusterCulling; }
-
-    protected:
-        optional<double> _cellSize;
-        optional<CullingTechnique> _cullingTechnique;
-        optional<bool> _spatializeGroups;
-        optional<bool> _clusterCulling;
-    };
-
-    /**
-     * Given a list of features, this will grid them up and return one
-     * grid cell at a time. For each grid cell, it will crop the feature
-     * geometry to the cell boundary.
-     */
-    class OSGEARTHFEATURES_EXPORT FeatureGridder : public osg::Referenced
-    {
-    public:
-        static bool isSupported();
-
-    public:
-        FeatureGridder( const Bounds& bounds, const GriddingPolicy& policy );
-
-        int getNumCells() const;
-
-        bool getCellBounds( int i, Bounds& output ) const;
-
-        bool cullFeatureListToCell( int i, FeatureList& features ) const;
-
-    public:
-        virtual ~FeatureGridder();
-
-    protected:
-        Bounds _inputBounds;
-        GriddingPolicy _policy;
-        int _cellsX, _cellsY;
-        std::list<void*> _geosGeoms;
-    };
-
-} } // namespace osgEarth::Features
-
-#endif //OSGEARTHFEATURES_FEATURE_GRIDDER_H
diff --git a/src/osgEarthFeatures/FeatureGridder.cpp b/src/osgEarthFeatures/FeatureGridder.cpp
deleted file mode 100644
index d12ecfe..0000000
--- a/src/osgEarthFeatures/FeatureGridder.cpp
+++ /dev/null
@@ -1,231 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthFeatures/FeatureGridder>
-#include <osgEarthSymbology/Geometry>
-#include <osg/Notify>
-#include <osg/Timer>
-
-#define LC "[FeatureGridder] "
-
-using namespace osgEarth;
-using namespace osgEarth::Features;
-
-/**************************************************************************/
-
-#define PROP_CELL_SIZE         "cell_size"
-#define PROP_CULLING_TECHNIQUE "culling_technique"
-#define PROP_SPATIALIZE_GROUPS "spatialize_groups"
-#define PROP_CLUSTER_CULLING   "cluster_culling"
-
-GriddingPolicy::GriddingPolicy( const Config& conf ) :
-_cellSize( DBL_MAX ),
-_cullingTechnique( GriddingPolicy::CULL_BY_CENTROID ),
-_spatializeGroups( true ),
-_clusterCulling( false )
-{
-    fromConfig( conf );
-}
-
-Config
-GriddingPolicy::getConfig() const 
-{
-    Config conf;
-
-    conf.updateIfSet( PROP_CELL_SIZE, _cellSize );
-
-    if ( _cullingTechnique.isSet() ) {
-        if ( _cullingTechnique == CULL_BY_CROPPING )
-            conf.update( PROP_CULLING_TECHNIQUE, "crop" );
-        else if ( _cullingTechnique == CULL_BY_CENTROID )
-            conf.update( PROP_CULLING_TECHNIQUE, "centroid" );
-    }
-
-    conf.updateIfSet( PROP_SPATIALIZE_GROUPS, _spatializeGroups );
-    conf.updateIfSet( PROP_CLUSTER_CULLING, _clusterCulling );
-
-    return conf;        
-}
-
-void
-GriddingPolicy::fromConfig( const Config& conf )
-{
-    conf.getIfSet( PROP_CELL_SIZE, _cellSize );
-
-    // read the culling technique
-    if ( conf.hasValue( PROP_CULLING_TECHNIQUE ) ) {
-        if ( conf.value( PROP_CULLING_TECHNIQUE ) == "crop" )
-            _cullingTechnique = CULL_BY_CROPPING;
-        else if ( conf.value( PROP_CULLING_TECHNIQUE ) == "centroid" )
-            _cullingTechnique = CULL_BY_CENTROID;
-    }
-
-    // spatial optimization
-    conf.getIfSet<bool>( PROP_SPATIALIZE_GROUPS, _spatializeGroups );
-
-    // cluster culling
-    conf.getIfSet<bool>( PROP_CLUSTER_CULLING, _clusterCulling );
-}
-
-/***************************************************************************/
-
-FeatureGridder::FeatureGridder(const Bounds& inputBounds,
-                               const GriddingPolicy& policy ) :
-_inputBounds( inputBounds ),
-_policy( policy )
-{
-    if ( _policy.enabled() ) //_policy.cellSize().isSet() && *_policy.cellSize() > 0.0 )
-    {
-        _cellsX = (int)::ceil(_inputBounds.width() / *_policy.cellSize() );
-        _cellsY = (int)::ceil(_inputBounds.height() / *_policy.cellSize() );
-    }
-    else
-    {
-        _cellsX = 1;
-        _cellsY = 1;
-    }
-
-    _cellsX = osg::clampAbove( _cellsX, 1 );
-    _cellsY = osg::clampAbove( _cellsY, 1 );
-
-#ifndef OSGEARTH_HAVE_GEOS
-
-    if ( _policy.cullingTechnique().isSetTo( GriddingPolicy::CULL_BY_CROPPING ) )
-    {
-        OE_WARN 
-            << "Warning: Gridding policy 'cull by cropping' requires GEOS. Falling back on 'cull by centroid'." 
-            << std::endl;
-
-        _policy.cullingTechnique() = GriddingPolicy::CULL_BY_CENTROID;
-    }
-
-#endif // !OSGEARTH_HAVE_GEOS
-}
-
-FeatureGridder::~FeatureGridder()
-{
-    //nop
-}
-
-int
-FeatureGridder::getNumCells() const
-{
-    return _cellsX * _cellsY;
-}
-
-bool
-FeatureGridder::getCellBounds( int i, Bounds& output ) const
-{
-    if ( i >= 0 && i < (_cellsX*_cellsY) )
-    {
-        int x = i % _cellsX;
-        int y = i / _cellsX;
-
-        double xmin = _inputBounds.xMin() + _policy.cellSize().value()  * (double)x;
-        double ymin = _inputBounds.yMin() + _policy.cellSize().value() * (double)y;
-        double xmax = osg::clampBelow( _inputBounds.xMin() + *_policy.cellSize() * (double)(x+1), _inputBounds.xMax() );
-        double ymax = osg::clampBelow( _inputBounds.yMin() + *_policy.cellSize() * (double)(y+1), _inputBounds.yMax() );
-
-        output = Bounds( xmin, ymin, xmax, ymax );
-        return true;
-    }
-    return false;
-}
-
-bool
-FeatureGridder::cullFeatureListToCell( int i, FeatureList& features ) const
-{
-    bool success = true;
-    int inCount = features.size();
-
-    Bounds b;
-    if ( getCellBounds( i, b ) )
-    {
-        if ( _policy.cullingTechnique() == GriddingPolicy::CULL_BY_CENTROID )
-        {
-            for( FeatureList::iterator f_i = features.begin(); f_i != features.end();  )
-            {
-                bool keepFeature = false;
-
-                Feature* feature = f_i->get();
-                Symbology::Geometry* featureGeom = feature->getGeometry();
-                if ( featureGeom )
-                {
-                    osg::Vec3d centroid = featureGeom->getBounds().center();
-                    if ( b.contains( centroid.x(), centroid.y() ) )
-                    {
-                        keepFeature = true;
-                    }
-                }
-
-                if ( keepFeature )
-                    ++f_i;
-                else
-                    f_i = features.erase( f_i );
-            }
-        }
-
-        else // CULL_BY_CROPPING (requires GEOS)
-        {
-
-#ifdef OSGEARTH_HAVE_GEOS
-
-            // create the intersection polygon:
-            osg::ref_ptr<Symbology::Polygon> poly = new Symbology::Polygon( 4 );
-            poly->push_back( osg::Vec3d( b.xMin(), b.yMin(), 0 ));
-            poly->push_back( osg::Vec3d( b.xMax(), b.yMin(), 0 ));
-            poly->push_back( osg::Vec3d( b.xMax(), b.yMax(), 0 ));
-            poly->push_back( osg::Vec3d( b.xMin(), b.yMax(), 0 ));
-
-            for( FeatureList::iterator f_i = features.begin(); f_i != features.end();  )
-            {
-                bool keepFeature = false;
-
-                Feature* feature = f_i->get();
-                Symbology::Geometry* featureGeom = feature->getGeometry();
-                if ( featureGeom )
-                {
-                    osg::ref_ptr<Symbology::Geometry> croppedGeometry;
-                    if ( featureGeom->crop( poly.get(), croppedGeometry ) )
-                    {
-                        feature->setGeometry( croppedGeometry.get() );
-                        keepFeature = true;
-                    }                   
-                }
-
-                if ( keepFeature )
-                    ++f_i;
-                else
-                    f_i = features.erase( f_i );
-            }  
-
-#endif // OSGEARTH_HAVE_GEOS
-
-        }
-
-    }
-
-    OE_INFO << LC
-            << "Grid cell " << i << ": bounds="
-            << b.xMin() << "," << b.yMin() << " => " << b.xMax() << "," << b.yMax()
-            << "; in=" << inCount << "; out=" << features.size()
-            << std::endl;
-
-    return success;
-}
-
diff --git a/src/osgEarthFeatures/FeatureListSource b/src/osgEarthFeatures/FeatureListSource
index 13fc45c..ea441cc 100644
--- a/src/osgEarthFeatures/FeatureListSource
+++ b/src/osgEarthFeatures/FeatureListSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -33,8 +33,20 @@ namespace osgEarth { namespace Features
     class OSGEARTHFEATURES_EXPORT FeatureListSource : public osgEarth::Features::FeatureSource
     {
     public:
+        /**
+         * Constructs an empty feature list source.
+         */
         FeatureListSource();
 
+        /**
+         * Constructs a feature list source with a default extent. The source can use
+         * this default extent to report a valid feature profile in the event that the
+         * list is empty.
+         */
+        FeatureListSource(const GeoExtent& defaultExtent );
+
+        virtual ~FeatureListSource() { }
+
         virtual FeatureCursor* createFeatureCursor( const Symbology::Query& query );
 
         virtual bool isWritable() const { return true; }
@@ -55,13 +67,11 @@ namespace osgEarth { namespace Features
         virtual const char* className() const { return "FeatureListSource"; }
         virtual const char* libraryName() const { return "osgEarthFeatures"; }
 
-        virtual void initialize( const std::string& referenceURI );
-
     protected:
         virtual const FeatureProfile* createFeatureProfile();
 
         FeatureList _features;
-        osg::ref_ptr< FeatureProfile > _profile;
+        GeoExtent   _defaultExtent;
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/FeatureListSource.cpp b/src/osgEarthFeatures/FeatureListSource.cpp
index dc1376a..ee25c98 100644
--- a/src/osgEarthFeatures/FeatureListSource.cpp
+++ b/src/osgEarthFeatures/FeatureListSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,7 +23,14 @@ using namespace osgEarth::Features;
 FeatureListSource::FeatureListSource():
 FeatureSource()
 {
-    _profile = new FeatureProfile(GeoExtent(osgEarth::SpatialReference::create("epsg:4326"), -180, -90, 180, 90));
+    //nop
+}
+
+FeatureListSource::FeatureListSource(const GeoExtent& defaultExtent ) :
+FeatureSource (),
+_defaultExtent( defaultExtent )
+{
+    //nop
 }
 
 FeatureCursor*
@@ -40,20 +47,39 @@ FeatureListSource::createFeatureCursor( const Symbology::Query& query )
     return new FeatureListCursor( cursorFeatures );
 }
 
-void
-FeatureListSource::initialize( const std::string& referenceURI )
-{
-}
-
 const FeatureProfile*
 FeatureListSource::createFeatureProfile()
 {    
-    return _profile.get();
+    const SpatialReference* srs = 0L;
+    osgEarth::Bounds        bounds;
+
+    if ( !_features.empty() )
+    {
+        // Get the SRS of the first feature
+        srs = _features.front()->getSRS();
+
+        // Compute the extent of the features
+        for (FeatureList::iterator itr = _features.begin(); itr != _features.end(); ++itr)
+        {
+            Feature* feature = itr->get();
+            if (feature->getGeometry())
+            {
+                bounds.expandBy( feature->getGeometry()->getBounds() );
+            }        
+        }
+    }
+
+    // return the new profile, or a default extent if the profile could not be computed.
+    if ( srs && bounds.isValid() )
+        return new FeatureProfile( GeoExtent(srs, bounds) );
+    else
+        return new FeatureProfile( _defaultExtent );
 }
 
 bool
 FeatureListSource::deleteFeature(FeatureID fid)
 {
+    dirtyFeatureProfile();
     for (FeatureList::iterator itr = _features.begin(); itr != _features.end(); ++itr) 
     {
         if (itr->get()->getFID() == fid)
@@ -81,6 +107,7 @@ FeatureListSource::getFeature( FeatureID fid )
 
 bool FeatureListSource::insertFeature(Feature* feature)
 {
+    dirtyFeatureProfile();
     _features.push_back( feature );
     dirty();
     return true;
diff --git a/src/osgEarthFeatures/FeatureModelGraph b/src/osgEarthFeatures/FeatureModelGraph
index 3323393..941c843 100644
--- a/src/osgEarthFeatures/FeatureModelGraph
+++ b/src/osgEarthFeatures/FeatureModelGraph
@@ -1,6 +1,6 @@
 /* --*-c++-*-- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,6 +24,7 @@
 #include <osgEarthFeatures/FeatureModelSource>
 #include <osgEarthFeatures/Session>
 #include <osgEarthSymbology/Style>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/ThreadingUtils>
 #include <osg/Node>
 #include <set>
@@ -34,11 +35,10 @@ namespace osgEarth { namespace Features
     using namespace osgEarth::Symbology;
 
     /**
-     * A graph that gets its contents from a FeatureNodeFactory. This class will
-     * handle all the internals of selecting features, gridding feature data if
-     * required, and sorting features based on style. Then for each cell and each
-     * style, it will invoke the FeatureNodeFactory to create the actual data for
-     * each set.
+     * A scene graph that renders feature data.
+     * This class will handle all the internals of selecting features, gridding feature
+     * data if required, and sorting features based on style. Then for each cell and each
+     * style, it will invoke the FeatureNodeFactory to create the actual data for each set.
      */
     class OSGEARTHFEATURES_EXPORT FeatureModelGraph : public osg::Group
     {
@@ -46,8 +46,6 @@ namespace osgEarth { namespace Features
         /**
          * Constructs a new model graph.
          *
-         * @param source
-         *      Source from which to read feature data
          * @param options
          *      Model source options
          * @param factory
@@ -55,40 +53,88 @@ namespace osgEarth { namespace Features
          * @param session
          *      Session under which to create elements in this graph
          */
-        FeatureModelGraph( 
-            FeatureSource*                   source,
+        FeatureModelGraph(
+            Session*                         session,
             const FeatureModelSourceOptions& options,
-            FeatureNodeFactory*              factory,
-            Session*                         session );
+            FeatureNodeFactory*              factory );
 
         /**
          * Loads and returns a subnode. Used internally for paging.
          */
         osg::Node* load( unsigned lod, unsigned tileX, unsigned tileY, const std::string& uri );
 
+        /**
+         * Style sheet associated with this feature graph.
+         */
         StyleSheet* getStyles() { return _session->styles(); }
 
+        /**
+         * Sets the style sheet to use to render features 
+         */
         void setStyles( StyleSheet* styles );
 
+        /**
+         * Mark the feature graph dirty and in need of regeneration 
+         */
         void dirty();
 
+        /**
+         * Adds an operation that will run on new nodes that are added by the
+         * paging system. Note, the operation only runs after the pager actually
+         * added the node to the live scene graph.
+         */
+        void addPostMergeOperation( NodeOperation* op );
+
+
+    public: // osg::Node
 
         virtual void traverse(osg::NodeVisitor& nv);
 
     protected:
+
         virtual ~FeatureModelGraph();
 
-        void setupPaging();
+        osg::Node* setupPaging();
 
-        osg::Group* build( const FeatureLevel& level, const GeoExtent& extent, const TileKey* key);
+        osg::Group* buildLevel( 
+            const FeatureLevel& level, 
+            const GeoExtent&    extent, 
+            const TileKey*      key);
+
+        osg::Group* build( 
+            const Style&        baseStyle, 
+            const Query&        baseQuery, 
+            const GeoExtent&    extent, 
+            FeatureSourceIndex* index);
 
-        osg::Group* build( const Style& baseStyle, const Query& baseQuery, const GeoExtent& extent );
 
     private:
         
-        osg::Group* createNodeForStyle(const Style& style, const Query& query);
+        osg::Group* createStyleGroup(
+            const Style&        style, 
+            const Query&        query, 
+            FeatureSourceIndex* index);
+
+        osg::Group* createStyleGroup(
+            const Style&         style, 
+            FeatureList&         workingSet, 
+            const FilterContext& contextPrototype);
+
+        void buildStyleGroups(
+            const StyleSelector* selector,
+            const Query&         baseQuery,
+            FeatureSourceIndex*  index,
+            osg::Group*          parent);
+
+        void queryAndSortIntoStyleGroups(
+            const Query&            query,
+            const StringExpression& styleExpr,
+            FeatureSourceIndex*     index,
+            osg::Group*             parent);
        
-        osg::BoundingSphered getBoundInWorldCoords( const GeoExtent& extent, const MapFrame* mapf ) const;
+        osg::BoundingSphered getBoundInWorldCoords( 
+            const GeoExtent& extent, 
+            const MapFrame*  mapf ) const;
 
         void buildSubTilePagedLODs(
             unsigned lod, unsigned tileX, unsigned tileY,
@@ -96,9 +142,10 @@ namespace osgEarth { namespace Features
 
         void redraw();
 
+        void installShaderMains();
+
     private:
         FeatureModelSourceOptions        _options;
-        osg::ref_ptr<FeatureSource>      _source;
         osg::ref_ptr<FeatureNodeFactory> _factory;
         osg::ref_ptr<Session>            _session;
         UID                              _uid;
@@ -111,7 +158,10 @@ namespace osgEarth { namespace Features
         bool                             _useTiledSource;
         osgEarth::Revision               _revision;
         bool                             _dirty;
+        bool                             _pendingUpdate;
         std::vector<const FeatureLevel*> _lodmap;
+        
+        osg::ref_ptr<RefNodeOperationVector> _postMergeOperations;
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/FeatureModelGraph.cpp b/src/osgEarthFeatures/FeatureModelGraph.cpp
index 1bf4e5c..18065df 100644
--- a/src/osgEarthFeatures/FeatureModelGraph.cpp
+++ b/src/osgEarthFeatures/FeatureModelGraph.cpp
@@ -1,6 +1,6 @@
 /* --*-c++-*-- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,9 +19,18 @@
 
 #include <osgEarthFeatures/FeatureModelGraph>
 #include <osgEarthFeatures/CropFilter>
-#include <osgEarth/ThreadingUtils>
-#include <osgEarth/NodeUtils>
+#include <osgEarthFeatures/FeatureSourceIndexNode>
+#include <osgEarth/Capabilities>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/ElevationLOD>
 #include <osgEarth/ElevationQuery>
+#include <osgEarth/FadeEffect>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/ThreadingUtils>
+
+#include <osg/CullFace>
 #include <osg/PagedLOD>
 #include <osg/ProxyNode>
 #include <osgDB/FileNameUtils>
@@ -37,6 +46,9 @@ using namespace osgEarth::Symbology;
 
 #undef USE_PROXY_NODE_FOR_TESTING
 
+//#define OE_TEST OE_NULL
+#define OE_TEST OE_NOTICE
+
 //---------------------------------------------------------------------------
 
 // pseudo-loader for paging in feature tiles for a FeatureModelGraph.
@@ -45,17 +57,25 @@ namespace
 {
     UID                               _uid         = 0;
     Threading::ReadWriteMutex         _fmgMutex;
-    std::map<UID, FeatureModelGraph*> _fmgRegistry;
+    typedef std::map<UID, osg::observer_ptr<FeatureModelGraph> > FMGRegistry;
+    FMGRegistry _fmgRegistry;
 
     static std::string s_makeURI( UID uid, unsigned lod, unsigned x, unsigned y ) 
     {
         std::stringstream buf;
         buf << uid << "." << lod << "_" << x << "_" << y << ".osgearth_pseudo_fmg";
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         return str;
     }
 
-    osg::Group* createPagedNode( const osg::BoundingSphered& bs, const std::string& uri, float minRange, float maxRange )
+    osg::Group* createPagedNode(const osg::BoundingSphered& bs, 
+                                const std::string& uri, 
+                                float minRange, 
+                                float maxRange, 
+                                float priOffset, 
+                                float priScale,
+                                RefNodeOperationVector* postMergeOps)
     {
 #ifdef USE_PROXY_NODE_FOR_TESTING
         osg::ProxyNode* p = new osg::ProxyNode();
@@ -63,16 +83,24 @@ namespace
         p->setRadius( bs.radius() );
         p->setFileName( 0, uri );
 #else
-        osg::PagedLOD* p = new osg::PagedLOD();
+        PagedLODWithNodeOperations* p = new PagedLODWithNodeOperations(postMergeOps);
+        //osg::PagedLOD* p = new osg::PagedLOD();
         p->setCenter( bs.center() );
-        p->setRadius( bs.radius() );
+        //p->setRadius( bs.radius() );
+        p->setRadius(std::max((float)bs.radius(),maxRange));
         p->setFileName( 0, uri );
         p->setRange( 0, minRange, maxRange );
+        p->setPriorityOffset( 0, priOffset );
+        p->setPriorityScale( 0, priScale );
 #endif
         return p;
     }
 }
 
+
+/**
+ * A pseudo-loader for paged feature tiles.
+ */
 struct osgEarthFeatureModelPseudoLoader : public osgDB::ReaderWriter
 {
     osgEarthFeatureModelPseudoLoader()
@@ -94,8 +122,8 @@ struct osgEarthFeatureModelPseudoLoader : public osgDB::ReaderWriter
         unsigned lod, x, y;
         sscanf( uri.c_str(), "%u.%d_%d_%d.%*s", &uid, &lod, &x, &y );
 
-        FeatureModelGraph* graph = getGraph(uid);
-        if ( graph )
+        osg::ref_ptr<FeatureModelGraph> graph = getGraph(uid);
+        if ( graph.valid() )
             return ReadResult( graph->load( lod, x, y, uri ) );
         else
             return ReadResult::ERROR_IN_READING_FILE;
@@ -106,6 +134,7 @@ struct osgEarthFeatureModelPseudoLoader : public osgDB::ReaderWriter
         Threading::ScopedWriteLock lock( _fmgMutex );
         UID key = ++_uid;
         _fmgRegistry[key] = graph;
+        OE_TEST << LC << "Registered FMG " << key << std::endl;
         return key;
     }
 
@@ -113,18 +142,20 @@ struct osgEarthFeatureModelPseudoLoader : public osgDB::ReaderWriter
     {
         Threading::ScopedWriteLock lock( _fmgMutex );
         _fmgRegistry.erase( uid );
+        OE_TEST << LC << "UNregistered FMG " << uid << std::endl;
     }
 
     static FeatureModelGraph* getGraph( UID uid ) 
     {
         Threading::ScopedReadLock lock( _fmgMutex );
-        std::map<UID, FeatureModelGraph*>::const_iterator i = _fmgRegistry.find( uid );
-        return i != _fmgRegistry.end() ? i->second : 0L;
+        FMGRegistry::const_iterator i = _fmgRegistry.find( uid );
+        return i != _fmgRegistry.end() ? i->second.get() : 0L;
     }
 };
 
 REGISTER_OSGPLUGIN(osgearth_pseudo_fmg, osgEarthFeatureModelPseudoLoader);
 
+
 namespace
 {    
     GeoExtent
@@ -143,52 +174,74 @@ namespace
             fullExtent.xMin() + w * (double)(tileX+1),
             fullExtent.yMin() + h * (double)(tileY+1) );
     }
+
+
+    struct SetupFading : public NodeOperation
+    {
+        void operator()( osg::Node* node )
+        {
+            osg::Uniform* u = FadeEffect::createStartTimeUniform();
+            u->set( (float)osg::Timer::instance()->time_s() );
+            node->getOrCreateStateSet()->addUniform( u );
+        }
+    };
 }
 
 
 //---------------------------------------------------------------------------
 
-FeatureModelGraph::FeatureModelGraph(FeatureSource*                   source,
+FeatureModelGraph::FeatureModelGraph(Session*                         session,
                                      const FeatureModelSourceOptions& options,
-                                     FeatureNodeFactory*              factory,
-                                     Session*                         session) :
-_source   ( source ),
-_options  ( options ),
-_factory  ( factory ),
-_session  ( session ),
-_dirty    ( false )
+                                     FeatureNodeFactory*              factory ) :
+_session      ( session ),
+_options      ( options ),
+_factory      ( factory ),
+_dirty        ( false ),
+_pendingUpdate( false )
 {
     _uid = osgEarthFeatureModelPseudoLoader::registerGraph( this );
 
+    // operations that get applied after a new node gets merged into the 
+    // scene graph by the pager.
+    _postMergeOperations = new RefNodeOperationVector();
+
     // install the stylesheet in the session if it doesn't already have one.
     if ( !session->styles() )
         session->setStyles( _options.styles().get() );
 
-    // initialize lighting on the graph, if necessary.
-    osg::StateSet* stateSet = getOrCreateStateSet();
-
-    if ( _options.enableLighting().isSet() )
-        stateSet->setMode( GL_LIGHTING, *_options.enableLighting() ? 1 : 0 );
+    if ( !session->getFeatureSource() )
+    {
+        OE_WARN << LC << "ILLEGAL: Session must have a feature source" << std::endl;
+        return;
+    }
     
     // Calculate the usable extent (in both feature and map coordinates) and bounds.
     const Profile* mapProfile = session->getMapInfo().getProfile();
+    const FeatureProfile* featureProfile = session->getFeatureSource()->getFeatureProfile();
+
+    // Bail out if the feature profile is bad
+    if ( !featureProfile || !featureProfile->getExtent().isValid() )
+    {
+        // warn or allow?
+        return;
+    }
 
     // the part of the feature extent that will fit on the map (in map coords):
     _usableMapExtent = mapProfile->clampAndTransformExtent( 
-        _source->getFeatureProfile()->getExtent(), 
+        featureProfile->getExtent(), 
         &_featureExtentClamped );
 
     // same, back into feature coords:
-    _usableFeatureExtent = _usableMapExtent.transform( _source->getFeatureProfile()->getSRS() );
+    _usableFeatureExtent = _usableMapExtent.transform( featureProfile->getSRS() );
 
     // world-space bounds of the feature layer
     _fullWorldBound = getBoundInWorldCoords( _usableMapExtent, 0L );
 
     // whether to request tiles from the source (if available). if the source is tiled, but the
     // user manually specified schema levels, don't use the tiles.
-    _useTiledSource = _source->getFeatureProfile()->getTiled();
+    _useTiledSource = featureProfile->getTiled();
 
-    if ( options.levels().isSet() && options.levels()->getNumLevels() > 0 )
+    if ( options.layout().isSet() && options.layout()->getNumLevels() > 0 )
     {
         // the user provided a custom levels setup, so don't use the tiled source (which
         // provides its own levels setup)
@@ -197,20 +250,43 @@ _dirty    ( false )
         // for each custom level, calculate the best LOD match and store it in the level
         // layout data. We will use this information later when constructing the SG in
         // the pager.
-        for( unsigned i = 0; i < options.levels()->getNumLevels(); ++i )
+        for( unsigned i = 0; i < options.layout()->getNumLevels(); ++i )
         {
-            const FeatureLevel* level = options.levels()->getLevel( i );
-            unsigned lod = options.levels()->chooseLOD( *level, _fullWorldBound.radius() );
+            const FeatureLevel* level = options.layout()->getLevel( i );
+            unsigned lod = options.layout()->chooseLOD( *level, _fullWorldBound.radius() );
             _lodmap.resize( lod+1, 0L );
             _lodmap[lod] = level;
 
-            OE_INFO << LC << source->getName() 
+            OE_INFO << LC << session->getFeatureSource()->getName() 
                 << ": F.Level max=" << level->maxRange() << ", min=" << level->minRange()
                 << ", LOD=" << lod << std::endl;
         }
     }
 
-    setNumChildrenRequiringUpdateTraversal( 1 );
+    // install base shader mains.
+    if ( Registry::instance()->getCapabilities().supportsGLSL() )
+    {
+        installShaderMains();
+    }
+
+    // Set up the state set.
+    // backface culling is ON by default. By the way, this is most definitely
+    // necessary when shading with shadows.
+    osg::StateSet* stateSet = getOrCreateStateSet();
+    stateSet->setMode( GL_CULL_FACE, 1 );
+    stateSet->setMode( GL_BLEND, 1 );
+    if ( _options.enableLighting().isSet() )
+        stateSet->setMode( GL_LIGHTING, *_options.enableLighting() ? 1 : 0 );
+
+    // If the user requests fade-in, install a post-merge operation that will set the 
+    // proper fade time for paged nodes.
+    if ( _options.fadeInDuration().value() > 0.0f )
+    {
+        addPostMergeOperation( new SetupFading() );
+        OE_INFO << LC << "Added fading post-merge operation" << std::endl;
+    }
+
+    ADJUST_EVENT_TRAV_COUNT( this, 1 );
 
     redraw();
 }
@@ -221,19 +297,36 @@ FeatureModelGraph::~FeatureModelGraph()
 }
 
 void
+FeatureModelGraph::installShaderMains()
+{
+    osg::StateSet* ss = this->getOrCreateStateSet();
+}
+
+void
 FeatureModelGraph::dirty()
 {
     _dirty = true;
 }
 
+void
+FeatureModelGraph::addPostMergeOperation( NodeOperation* op )
+{
+    if ( op )
+        _postMergeOperations->push_back( op );
+}
+
 osg::BoundingSphered
 FeatureModelGraph::getBoundInWorldCoords(const GeoExtent& extent,
                                          const MapFrame*  mapf ) const
 {
     osg::Vec3d center, corner;
-    double z = 0.0;
     GeoExtent workingExtent;
 
+    if ( !extent.isValid() )
+    {
+        return osg::BoundingSphered();
+    }
+
     if ( extent.getSRS()->isEquivalentTo( _usableMapExtent.getSRS() ) )
     {
         workingExtent = extent;
@@ -245,16 +338,20 @@ FeatureModelGraph::getBoundInWorldCoords(const GeoExtent& extent,
 
     workingExtent.getCentroid( center.x(), center.y() );
     
+    double centerZ = 0.0;    
     if ( mapf )
     {
-        // note: use the lowest possible resolution to speed up queries
+        // Use an appropriate resolution for this extents width
+        double resolution = workingExtent.width();             
         ElevationQuery query( *mapf );
-        query.getElevation( center, mapf->getProfile()->getSRS(), center.z(), DBL_MAX );
-    }
+        GeoPoint p( mapf->getProfile()->getSRS(), center, ALTMODE_ABSOLUTE );
+        query.getElevation( p, center.z(), resolution );
+        centerZ = center.z();
+    }    
 
     corner.x() = workingExtent.xMin();
     corner.y() = workingExtent.yMin();
-    corner.z() = z;
+    corner.z() = 0;
 
     if ( _session->getMapInfo().isGeocentric() )
     {
@@ -265,24 +362,67 @@ FeatureModelGraph::getBoundInWorldCoords(const GeoExtent& extent,
     return osg::BoundingSphered( center, (center-corner).length() );
 }
 
-void
+osg::Node*
 FeatureModelGraph::setupPaging()
 {
     // calculate the bounds of the full data extent:
     MapFrame mapf = _session->createMapFrame();
     osg::BoundingSphered bs = getBoundInWorldCoords( _usableMapExtent, &mapf );
 
+    const FeatureProfile* featureProfile = _session->getFeatureSource()->getFeatureProfile();
+    if (featureProfile->getTiled() && 
+        !_options.layout()->tileSizeFactor().isSet() && 
+        (_options.layout()->maxRange().isSet() || _options.maxRange().isSet()))
+    {
+        // select the max range either from the Layout or from the model layer options.
+        float userMaxRange = FLT_MAX;
+        if ( _options.layout()->maxRange().isSet() )
+            userMaxRange = *_options.layout()->maxRange();
+        if ( _options.maxRange().isSet() )
+            userMaxRange = std::min(userMaxRange, *_options.maxRange());
+
+        //Automatically compute the tileSizeFactor based on the max range
+        double width, height;
+        featureProfile->getProfile()->getTileDimensions(featureProfile->getFirstLevel(), width, height);
+
+        GeoExtent ext(featureProfile->getSRS(),
+                      featureProfile->getExtent().west(),
+                      featureProfile->getExtent().south(),
+                      featureProfile->getExtent().west() + width,
+                      featureProfile->getExtent().south() + height);
+        osg::BoundingSphered bounds = getBoundInWorldCoords( ext, &mapf);
+
+        float tileSizeFactor = userMaxRange / bounds.radius();
+        //The tilesize factor must be at least 1.0 to avoid culling the tile when you are within it's bounding sphere. 
+        tileSizeFactor = osg::maximum( tileSizeFactor, 1.0f);
+        OE_DEBUG << LC << "Computed a tilesize factor of " << tileSizeFactor << " with max range setting of " <<  userMaxRange << std::endl;
+        _options.layout()->tileSizeFactor() = tileSizeFactor * 1.5;
+    }
+   
+
     // calculate the max range for the top-level PLOD:
-    float maxRange = bs.radius() * _options.levels()->tileSizeFactor().value();
+    float maxRange = bs.radius() * _options.layout()->tileSizeFactor().value();
 
     // build the URI for the top-level paged LOD:
     std::string uri = s_makeURI( _uid, 0, 0, 0 );
 
     // bulid the top level Paged LOD:
-    osg::Group* pagedNode = createPagedNode( bs, uri, 0.0f, maxRange );
-    this->addChild( pagedNode );
+    osg::Group* pagedNode = createPagedNode( 
+        bs, 
+        uri, 
+        0.0f, 
+        maxRange, 
+        *_options.layout()->priorityOffset(), 
+        *_options.layout()->priorityScale(),
+        _postMergeOperations.get() );
+
+    return pagedNode;
 }
 
+
+/**
+ * Called by the pseudo-loader, this method attempts to load a single tile of features.
+ */
 osg::Node*
 FeatureModelGraph::load( unsigned lod, unsigned tileX, unsigned tileY, const std::string& uri )
 {
@@ -292,61 +432,70 @@ FeatureModelGraph::load( unsigned lod, unsigned tileX, unsigned tileY, const std
     osg::Group* result = 0L;
     
     if ( _useTiledSource )
-    {        
+    {       
         // A "tiled" source has a pre-generted tile hierarchy, but no range information.
-        // We will be calculating the LOD ranges here.
+        // We will calcluate the LOD ranges here, as a function of the tile radius and the
+        // "tile size factor" ... see below.
+        osg::Group* geometry =0L;
+        const FeatureProfile* featureProfile = _session->getFeatureSource()->getFeatureProfile();
 
-        // The extent of this tile:
-        GeoExtent tileExtent = s_getTileExtent( lod, tileX, tileY, _usableFeatureExtent );
-
-        // Calculate the bounds of this new tile:
-        MapFrame mapf = _session->createMapFrame();
-        osg::BoundingSphered tileBound = getBoundInWorldCoords( tileExtent, &mapf );
+        if ( (int)lod >= featureProfile->getFirstLevel() )
+        {
+            // The extent of this tile:
+            GeoExtent tileExtent = s_getTileExtent( lod, tileX, tileY, _usableFeatureExtent );
 
-        // Apply the tile range multiplier to calculate a max camera range. The max range is
-        // the geographic radius of the tile times the multiplier.
-        float tileFactor = _options.levels().isSet() ? _options.levels()->tileSizeFactor().get() : 15.0f;
-        double maxRange =  tileBound.radius() * tileFactor;
-        FeatureLevel level( 0, maxRange );
-        
-        // Construct a tile key that will be used to query the source for this tile.
-        TileKey key(lod, tileX, tileY, _source->getFeatureProfile()->getProfile());
-        osg::Group* geometry = build( level, tileExtent, &key );
-        result = geometry;
+            // Calculate the bounds of this new tile:
+            MapFrame mapf = _session->createMapFrame();
+            osg::BoundingSphered tileBound = getBoundInWorldCoords( tileExtent, &mapf );
+
+            // Apply the tile range multiplier to calculate a max camera range. The max range is
+            // the geographic radius of the tile times the multiplier.
+            float tileFactor = _options.layout().isSet() ? _options.layout()->tileSizeFactor().get() : 15.0f;            
+            double maxRange =  tileBound.radius() * tileFactor;
+            FeatureLevel level( 0, maxRange );
+            //OE_NOTICE << "(" << lod << ": " << tileX << ", " << tileY << ")" << std::endl;
+            //OE_NOTICE << "  extent = " << tileExtent.width() << "x" << tileExtent.height() << std::endl;
+            //OE_NOTICE << "  tileFactor = " << tileFactor << " maxRange=" << maxRange << " radius=" << tileBound.radius() << std::endl;
+            
+            // Construct a tile key that will be used to query the source for this tile.
+            TileKey key(lod, tileX, tileY, featureProfile->getProfile());
+            geometry = buildLevel( level, tileExtent, &key );
+            result = geometry;
+        }
 
-        if (lod < _source->getFeatureProfile()->getMaxLevel())
+        // check whether more levels exist below the current level.
+        if ( (int)lod < featureProfile->getMaxLevel() )
         {
-            // see if there are any more levels. If so, build some pagedlods to bring the
-            // next level in.
-            FeatureLevel nextLevel(0, maxRange/2.0);
-
+            // yes, so build some pagedlods to bring in the next level.
             osg::ref_ptr<osg::Group> group = new osg::Group();
 
             // calculate the LOD of the next level:
             if ( lod+1 != ~0 )
             {
-                MapFrame mapf = _session->createMapFrame();
-                buildSubTilePagedLODs( lod, tileX, tileY, &mapf, group.get() );
-
-                // slap the geometry in there afterwards, if there is any
-                if ( geometry )
+                // only build sub-pagedlods if we are expecting subtiles at some point:
+                if ( geometry != 0L || (int)lod < featureProfile->getFirstLevel() )
+                {
+                    MapFrame mapf = _session->createMapFrame();
+                    buildSubTilePagedLODs( lod, tileX, tileY, &mapf, group.get() );
                     group->addChild( geometry );
+                }
 
                 result = group.release();
             }   
         }
     }
 
-    else if ( !_options.levels().isSet() || _options.levels()->getNumLevels() == 0 )
+    else if ( !_options.layout().isSet() || _options.layout()->getNumLevels() == 0 )
     {
         // This is a non-tiled data source that has NO level details. In this case, 
         // we simply want to load all features at once and make them visible at
         // maximum camera range.
+
         FeatureLevel all( 0.0f, FLT_MAX );
-        result = build( all, GeoExtent::INVALID, 0 );
+        result = buildLevel( all, GeoExtent::INVALID, 0 );
     }
 
-    else if ( lod < _lodmap.size() )
+    else if ( (int)lod < _lodmap.size() )
     {
         // This path computes the SG for a model graph with explicity-defined levels of
         // detail. We already calculated the LOD level map in setupPaging(). If the
@@ -364,7 +513,7 @@ FeatureModelGraph::load( unsigned lod, unsigned tileX, unsigned tileY, const std
                 s_getTileExtent( lod, tileX, tileY, _usableFeatureExtent ) :
                 _usableFeatureExtent;
 
-            geometry = build( *level, tileExtent, 0 );
+            geometry = buildLevel( *level, tileExtent, 0 );
             result = geometry;
         }
 
@@ -431,7 +580,7 @@ FeatureModelGraph::buildSubTilePagedLODs(unsigned        parentLOD,
             // the max range of a FeatureLevel below this will, by definition, have a max range
             // less than or equal to this number -- based on how the LODs were chosen in 
             // setupPaging.
-            float maxRange = subtile_bs.radius() * _options.levels()->tileSizeFactor().value();
+            float maxRange = subtile_bs.radius() * _options.layout()->tileSizeFactor().value();
 
             std::string uri = s_makeURI( _uid, subtileLOD, u, v );
 
@@ -451,17 +600,41 @@ FeatureModelGraph::buildSubTilePagedLODs(unsigned        parentLOD,
                     << "; radius = " << subtile_bs.radius()
                     << std::endl;
 
-                osg::Group* pagedNode = createPagedNode( subtile_bs, uri, 0.0f, maxRange );
+                osg::Group* pagedNode = createPagedNode( 
+                    subtile_bs, 
+                    uri, 
+                    0.0f, maxRange, 
+                    *_options.layout()->priorityOffset(), 
+                    *_options.layout()->priorityScale(),
+                    _postMergeOperations.get() );
+
                 parent->addChild( pagedNode );
             }
         }
     }
 }
 
+/**
+ * Builds geometry for feature data at a particular level, and constrained by an extent.
+ * The extent is either (a) expressed in "extent" literally, as is the case in a non-tiled
+ * data source, or (b) expressed implicitly by a TileKey, which is the case for a tiled
+ * data source.
+ */
 osg::Group*
-FeatureModelGraph::build( const FeatureLevel& level, const GeoExtent& extent, const TileKey* key )
+FeatureModelGraph::buildLevel( const FeatureLevel& level, const GeoExtent& extent, const TileKey* key )
 {
-    osg::ref_ptr<osg::Group> group = new osg::Group();
+    // set up for feature indexing if appropriate:
+    osg::ref_ptr<osg::Group> group;
+    FeatureSourceIndexNode* index = 0L;
+    if ( _session->getFeatureSource() && (_options.featureIndexing() == true) )
+    {
+        index = new FeatureSourceIndexNode( _session->getFeatureSource() );
+        group = index;
+    }
+    else
+    {
+        group = new osg::Group();
+    }
 
     // form the baseline query, which does a spatial query based on the working extent.
     Query query;
@@ -472,73 +645,95 @@ FeatureModelGraph::build( const FeatureLevel& level, const GeoExtent& extent, co
     if ( key )
         query.tileKey() = *key;
 
-    // now, go through any level-based selectors.
-    const StyleSelectorVector& levelSelectors = level.selectors();
-    
-    // if there are none, just build once with the default style and query.
-    if ( levelSelectors.size() == 0 )
+    // does the level have a style name set?
+    if ( level.styleName().isSet() )
     {
-        // attempt to glean the style from the feature source name:
-        const Style style = *_session->styles()->getStyle( *_source->getFeatureSourceOptions().name() );
-
-        osg::Node* node = build( style, query, extent );
-        if ( node )
-            group->addChild( node );
+        osg::Node* node = 0L;
+        const Style* style = _session->styles()->getStyle( *level.styleName(), false );
+        if ( style )
+        {
+            // found a specific style to use.
+            node = createStyleGroup( *style, query, index );
+            if ( node )
+                group->addChild( node );
+        }
+        else
+        {
+            const StyleSelector* selector = _session->styles()->getSelector( *level.styleName() );
+            if ( selector )
+            {
+                buildStyleGroups( selector, query, index, group.get() );
+            }
+        }
     }
 
     else
     {
-        for( StyleSelectorVector::const_iterator i = levelSelectors.begin(); i != levelSelectors.end(); ++i )
-        {
-            const StyleSelector& selector = *i;
-
-            // fetch the selector's style:
-            const Style* selectorStyle = _session->styles()->getStyle( selector.getSelectedStyleName() );
-
-            // combine the selector's query, if it has one:
-            Query selectorQuery = 
-                selector.query().isSet() ? query.combineWith( *selector.query() ) : query;
+        Style defaultStyle;
 
-            osg::Node* node = build( *selectorStyle, selectorQuery, extent );
-            if ( node )
-                group->addChild( node );
+        if ( _session->styles()->selectors().size() == 0 )
+        {
+            // attempt to glean the style from the feature source name:
+            defaultStyle = *_session->styles()->getStyle( 
+                *_session->getFeatureSource()->getFeatureSourceOptions().name() );
         }
+
+        osg::Node* node = build( defaultStyle, query, extent, index );
+        if ( node )
+            group->addChild( node );
     }
 
     if ( group->getNumChildren() > 0 )
     {
-        // account for a min-range here.
-        if ( level.minRange() > 0.0f )
+        
+        // account for a min-range here. Do not address the max-range here; that happens
+        // above when generating paged LOD nodes, etc.        
+        float minRange = level.minRange();
+
+        /*
+        if ( _options.minRange().isSet() ) 
+            minRange = std::max(minRange, *_options.minRange());
+
+        if ( _options.layout().isSet() && _options.layout()->minRange().isSet() )
+            minRange = std::max(minRange, *_options.layout()->minRange());
+            */
+
+        if ( minRange > 0.0f )
         {
+            // minRange can't be less than the tile geometry's radius.
+            minRange = std::max(minRange, (float)group->getBound().radius());
             osg::LOD* lod = new osg::LOD();
-            lod->addChild( group.get(), level.minRange(), FLT_MAX );
+            lod->addChild( group.get(), minRange, FLT_MAX );
             group = lod;
-        }
+        }        
 
         if ( _session->getMapInfo().isGeocentric() && _options.clusterCulling() == true )
         {
-            const GeoExtent& ccExtent = extent.isValid() ? extent : _source->getFeatureProfile()->getExtent();
+            const FeatureProfile* featureProfile = _session->getFeatureSource()->getFeatureProfile();
+            const GeoExtent& ccExtent = extent.isValid() ? extent : featureProfile->getExtent();
             if ( ccExtent.isValid() )
             {
                 // if the extent is more than 90 degrees, bail
                 GeoExtent geodeticExtent = ccExtent.transform( ccExtent.getSRS()->getGeographicSRS() );
                 if ( geodeticExtent.width() < 90.0 && geodeticExtent.height() < 90.0 )
                 {
-#if 1
                     // get the geocentric tile center:
                     osg::Vec3d tileCenter;
                     ccExtent.getCentroid( tileCenter.x(), tileCenter.y() );
                     osg::Vec3d centerECEF;
                     ccExtent.getSRS()->transformToECEF( tileCenter, centerECEF );
 
-                    osg::NodeCallback* ccc = ClusterCullerFactory::create( group.get(), centerECEF );
+                    osg::NodeCallback* ccc = ClusterCullingFactory::create2( group.get(), centerECEF );
                     if ( ccc )
                         group->addCullCallback( ccc );
-#endif
                 }
             }
         }
 
+        // if indexing is enabled, build the index now.
+        if ( index )
+            index->reindex();
+
         return group.release();
     }
 
@@ -548,18 +743,26 @@ FeatureModelGraph::build( const FeatureLevel& level, const GeoExtent& extent, co
     }
 }
 
+
 osg::Group*
-FeatureModelGraph::build( const Style& baseStyle, const Query& baseQuery, const GeoExtent& workingExtent )
+FeatureModelGraph::build(const Style&        defaultStyle, 
+                         const Query&        baseQuery, 
+                         const GeoExtent&    workingExtent,
+                         FeatureSourceIndex* index)
 {
     osg::ref_ptr<osg::Group> group = new osg::Group();
 
-    if ( _source->hasEmbeddedStyles() )
+    FeatureSource* source = _session->getFeatureSource();
+
+    // case: each feature has an embedded style.
+    if ( source->hasEmbeddedStyles() )
     {
-        const FeatureProfile* profile = _source->getFeatureProfile();
+        const FeatureProfile* featureProfile = source->getFeatureProfile();
 
         // each feature has its own style, so use that and ignore the style catalog.
-        osg::ref_ptr<FeatureCursor> cursor = _source->createFeatureCursor( baseQuery );
-        while( cursor->hasMore() )
+        osg::ref_ptr<FeatureCursor> cursor = source->createFeatureCursor( baseQuery );
+
+        while( cursor.valid() && cursor->hasMore() )
         {
             Feature* feature = cursor->nextFeature();
             if ( feature )
@@ -568,7 +771,7 @@ FeatureModelGraph::build( const Style& baseStyle, const Query& baseQuery, const
                 list.push_back( feature );
                 osg::ref_ptr<FeatureCursor> cursor = new FeatureListCursor(list);
 
-                FilterContext context( _session.get(), _source->getFeatureProfile(), workingExtent );
+                FilterContext context( _session.get(), featureProfile, workingExtent, index );
 
                 // note: gridding is not supported for embedded styles.
                 osg::ref_ptr<osg::Node> node;
@@ -596,11 +799,13 @@ FeatureModelGraph::build( const Style& baseStyle, const Query& baseQuery, const
         }
     }
 
+    // case: features are externally styled.
     else
     {
         const StyleSheet* styles = _session->styles();
 
-        // if we have selectors, sort the features into style groups and create a node for each group.
+        // if the stylesheet has selectors, use them to sort the features into style groups. Then create
+        // a create a node for each style group.
         if ( styles->selectors().size() > 0 )
         {
             for( StyleSelectorList::const_iterator i = styles->selectors().begin(); i != styles->selectors().end(); ++i )
@@ -608,30 +813,47 @@ FeatureModelGraph::build( const Style& baseStyle, const Query& baseQuery, const
                 // pull the selected style...
                 const StyleSelector& sel = *i;
 
-                // combine the selection style with the incoming base style:
-                Style selectedStyle = *styles->getStyle( sel.getSelectedStyleName() );
-                Style combinedStyle = baseStyle.combineWith( selectedStyle );
+                // if the selector uses an expression to select the style name, then we must perform the
+                // query and then SORT the features into style groups.
+                if ( sel.styleExpression().isSet() )
+                {
+                    // merge the selector's query into the existing query
+                    Query combinedQuery = baseQuery.combineWith( *sel.query() );
+
+                    // query, sort, and add each style group to th parent:
+                    queryAndSortIntoStyleGroups( combinedQuery, *sel.styleExpression(), index, group );
+                }
 
-                // .. and merge it's query into the existing query
-                Query combinedQuery = baseQuery.combineWith( *sel.query() );
+                // otherwise, all feature returned by this query will have the same style:
+                else
+                {
+                    // combine the selection style with the incoming base style:
+                    Style selectedStyle = *styles->getStyle( sel.getSelectedStyleName() );
+                    Style combinedStyle = defaultStyle.combineWith( selectedStyle );
 
-                // then create the node.
-                osg::Group* styleGroup = createNodeForStyle( combinedStyle, combinedQuery );
-                if ( styleGroup && !group->containsNode(styleGroup) )
-                    group->addChild( styleGroup );
+                    // .. and merge it's query into the existing query
+                    Query combinedQuery = baseQuery.combineWith( *sel.query() );
+
+                    // then create the node.
+                    osg::Group* styleGroup = createStyleGroup( combinedStyle, combinedQuery, index );
+
+                    if ( styleGroup && !group->containsNode(styleGroup) )
+                        group->addChild( styleGroup );
+                }
             }
         }
 
-        // otherwise, render all the features with a single style
+        // if no selectors are present, render all the features with a single style.
         else
         {
-            Style combinedStyle = baseStyle;
+            Style combinedStyle = defaultStyle;
 
             // if there's no base style defined, choose a "default" style from the stylesheet.
-            if ( baseStyle.empty() )
+            if ( defaultStyle.empty() )
                 combinedStyle = *styles->getDefaultStyle();
 
-            osg::Group* styleGroup = createNodeForStyle( combinedStyle, baseQuery );
+            osg::Group* styleGroup = createStyleGroup( combinedStyle, baseQuery, index );
+
             if ( styleGroup && !group->containsNode(styleGroup) )
                 group->addChild( styleGroup );
         }
@@ -640,89 +862,231 @@ FeatureModelGraph::build( const Style& baseStyle, const Query& baseQuery, const
     return group->getNumChildren() > 0 ? group.release() : 0L;
 }
 
-osg::Group*
-FeatureModelGraph::createNodeForStyle(const Style& style, const Query& query)
+
+/**
+ * Builds a collection of style groups by processing a StyleSelector.
+ */
+void
+FeatureModelGraph::buildStyleGroups(const StyleSelector* selector,
+                                    const Query&         baseQuery,
+                                    FeatureSourceIndex*  index,
+                                    osg::Group*          parent)
 {
-    osg::Group* styleGroup = 0L;
+    OE_TEST << LC << "buildStyleGroups: " << selector->name() << std::endl;
 
+    // if the selector uses an expression to select the style name, then we must perform the
+    // query and then SORT the features into style groups.
+    if ( selector->styleExpression().isSet() )
+    {
+        // merge the selector's query into the existing query
+        Query combinedQuery = baseQuery.combineWith( *selector->query() );
+
+        // query, sort, and add each style group to the parent:
+        queryAndSortIntoStyleGroups( combinedQuery, *selector->styleExpression(), index, parent );
+    }
+
+    // otherwise, all feature returned by this query will have the same style:
+    else
+    {
+        // combine the selection style with the incoming base style:
+        const Style* selectedStyle = _session->styles()->getStyle(selector->getSelectedStyleName());
+        Style style;
+        if ( selectedStyle )
+            style = *selectedStyle;
+
+        // .. and merge it's query into the existing query
+        Query combinedQuery = baseQuery.combineWith( *selector->query() );
+
+        // then create the node.
+        osg::Node* node = createStyleGroup( style, combinedQuery, index );
+        if ( node && !parent->containsNode(node) )
+            parent->addChild( node );
+    }
+}
+
+
+/**
+ * Querys the feature source;
+ * Visits each feature and uses the Style Expression to resolve its style class;
+ * Sorts the features into bins based on style class;
+ * Compiles each bin into a separate style group;
+ * Adds the resulting style groups to the provided parent.
+ */
+void
+FeatureModelGraph::queryAndSortIntoStyleGroups(const Query&            query,
+                                               const StringExpression& styleExpr,
+                                               FeatureSourceIndex*     index,
+                                               osg::Group*             parent)
+{
     // the profile of the features
-    const FeatureProfile* profile = _source->getFeatureProfile();
+    const FeatureProfile* featureProfile = _session->getFeatureSource()->getFeatureProfile();
 
     // get the extent of the full set of feature data:
-    const GeoExtent& extent = profile->getExtent();
+    const GeoExtent& extent = featureProfile->getExtent();
     
     // query the feature source:
-    osg::ref_ptr<FeatureCursor> cursor = _source->createFeatureCursor( query );
-
-    if ( cursor->hasMore() )
+    osg::ref_ptr<FeatureCursor> cursor = _session->getFeatureSource()->createFeatureCursor( query );
+    if ( !cursor.valid() )
+        return;
+
+    // establish the working bounds and a context:
+    Bounds bounds = query.bounds().isSet() ? *query.bounds() : extent.bounds();
+    FilterContext context( _session.get(), featureProfile, GeoExtent(featureProfile->getSRS(), bounds), index );
+    StringExpression styleExprCopy( styleExpr );
+
+    // visit each feature and run the expression to sort it into a bin.
+    std::map<std::string, FeatureList> styleBins;
+    while( cursor->hasMore() )
     {
-        Bounds cellBounds =
-            query.bounds().isSet() ? *query.bounds() : extent.bounds();
-
-        FilterContext context( _session.get(), profile, GeoExtent(profile->getSRS(), cellBounds) );
+        osg::ref_ptr<Feature> feature = cursor->nextFeature();
+        if ( feature.valid() )
+        {
+            const std::string& styleString = feature->eval( styleExprCopy, &context );
+            styleBins[styleString].push_back( feature.get() );
+        }
+    }
 
-        // start by culling our feature list to the working extent. By default, this is done by
-        // checking feature centroids. But the user can override this to crop feature geometry to
-        // the cell boundaries.
-        FeatureList workingSet;
-        cursor->fill( workingSet );
+    // next create a style group per bin.
+    for( std::map<std::string,FeatureList>::iterator i = styleBins.begin(); i != styleBins.end(); ++i )
+    {
+        const std::string& styleString = i->first;
+        FeatureList&       workingSet  = i->second;
 
-        CropFilter crop( 
-            _options.levels().isSet() && _options.levels()->cropFeatures() == true ? 
-            CropFilter::METHOD_CROPPING : CropFilter::METHOD_CENTROID );
-        context = crop.push( workingSet, context );
+        // resolve the style:
+        Style combinedStyle;
 
-        // next, if the usable extent is less than the full extent (i.e. we had to clamp the feature
-        // extent to fit on the map), calculate the extent of the features in this tile and 
-        // crop to the map extent if necessary. (Note, if cropFeatures was set to true, this is
-        // already done)
-        if ( _featureExtentClamped && _options.levels().isSet() && _options.levels()->cropFeatures() == false )
+        // if the style string begins with an open bracket, it's an inline style definition.
+        if ( styleString.length() > 0 && styleString.at(0) == '{' )
         {
-            context.extent() = _usableFeatureExtent;
-            CropFilter crop2( CropFilter::METHOD_CROPPING );
-            context = crop2.push( workingSet, context );
+            Config conf( "style", styleString );
+            conf.set( "type", "text/css" );
+            combinedStyle = Style(conf);
         }
 
-        if ( workingSet.size() > 0 )
+        // otherwise, look up the style in the stylesheet:
+        else
         {
-            // next ask the implementation to construct OSG geometry for the cell features.
-            osg::ref_ptr<osg::Node> node;
+            const Style* selectedStyle = _session->styles()->getStyle(styleString);
+            if ( selectedStyle )
+                combinedStyle = *selectedStyle;
+        }
 
-            osg::ref_ptr<FeatureCursor> newCursor = new FeatureListCursor(workingSet);
+        // create the node and add it.
+        osg::Group* styleGroup = createStyleGroup(combinedStyle, workingSet, context);
+        if ( styleGroup )
+            parent->addChild( styleGroup );
+    }
+}
 
-            if ( _factory->createOrUpdateNode( newCursor.get(), style, context, node ) )
-            {
-                if ( !styleGroup )
-                    styleGroup = _factory->getOrCreateStyleGroup( style, _session.get() );
 
-                // if it returned a node, add it. (it doesn't necessarily have to)
-                if ( node.valid() )
-                    styleGroup->addChild( node.get() );
-            }
+osg::Group*
+FeatureModelGraph::createStyleGroup(const Style&         style, 
+                                    FeatureList&         workingSet, 
+                                    const FilterContext& contextPrototype)
+{
+    osg::Group* styleGroup = 0L;
+
+    FilterContext context(contextPrototype);
+
+    // first Crop the feature set to the working extent:
+    CropFilter crop( 
+        _options.layout().isSet() && _options.layout()->cropFeatures() == true ? 
+        CropFilter::METHOD_CROPPING : CropFilter::METHOD_CENTROID );
+
+    context = crop.push( workingSet, context );
+
+    // next, if the usable extent is less than the full extent (i.e. we had to clamp the feature
+    // extent to fit on the map), calculate the extent of the features in this tile and 
+    // crop to the map extent if necessary. (Note, if cropFeatures was set to true, this is
+    // already done)
+    if ( _featureExtentClamped && _options.layout().isSet() && _options.layout()->cropFeatures() == false )
+    {
+        context.extent() = _usableFeatureExtent;
+        CropFilter crop2( CropFilter::METHOD_CROPPING );
+        context = crop2.push( workingSet, context );
+    }
+
+    // finally, compile the features into a node.
+    if ( workingSet.size() > 0 )
+    {
+        osg::ref_ptr<osg::Node> node;
+        osg::ref_ptr<FeatureCursor> newCursor = new FeatureListCursor(workingSet);
+
+        if ( _factory->createOrUpdateNode( newCursor.get(), style, context, node ) )
+        {
+            if ( !styleGroup )
+                styleGroup = _factory->getOrCreateStyleGroup( style, _session.get() );
+
+            // if it returned a node, add it. (it doesn't necessarily have to)
+            if ( node.valid() )
+                styleGroup->addChild( node.get() );
         }
+    }
+
+    return styleGroup;
+}
+
+
+
+osg::Group*
+FeatureModelGraph::createStyleGroup(const Style&        style, 
+                                    const Query&        query, 
+                                    FeatureSourceIndex* index)
+{
+    osg::Group* styleGroup = 0L;
+
+    // the profile of the features
+    const FeatureProfile* featureProfile = _session->getFeatureSource()->getFeatureProfile();
+
+    // get the extent of the full set of feature data:
+    const GeoExtent& extent = featureProfile->getExtent();
+    
+    // query the feature source:
+    osg::ref_ptr<FeatureCursor> cursor = _session->getFeatureSource()->createFeatureCursor( query );
+
+    if ( cursor.valid() && cursor->hasMore() )
+    {
+        Bounds cellBounds =
+            query.bounds().isSet() ? *query.bounds() : extent.bounds();
 
-        CacheStats stats = context.resourceCache()->getSkinStats();
-        OE_DEBUG << LC << "Resource Cache skins: "
-            << " num=" << stats._entries << ", max=" << stats._maxEntries
-            << ", queries=" << stats._queries << ", hits=" << (100.0f*stats._hitRatio) << "%"
-            << std::endl;
+        FilterContext context( _session.get(), featureProfile, GeoExtent(featureProfile->getSRS(), cellBounds), index );
 
+        // start by culling our feature list to the working extent. By default, this is done by
+        // checking feature centroids. But the user can override this to crop feature geometry to
+        // the cell boundaries.
+        FeatureList workingSet;
+        cursor->fill( workingSet );
+
+        styleGroup = createStyleGroup(style, workingSet, context);
     }
 
 
     return styleGroup;
 }
 
+
 void
 FeatureModelGraph::traverse(osg::NodeVisitor& nv)
 {
-    if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR)
+    if ( nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR )
     {
-        if (_source->outOfSyncWith(_revision) || _dirty)
+        if ( !_pendingUpdate && (_dirty || _session->getFeatureSource()->outOfSyncWith(_revision)) )
+        {
+            _pendingUpdate = true;
+            ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+        }
+    }
+
+    else if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+    {
+        if ( _pendingUpdate )
         {
             redraw();
+            _pendingUpdate = false;
+            ADJUST_UPDATE_TRAV_COUNT( this, -1 );
         }
     }
+
     osg::Group::traverse(nv);
 }
 
@@ -730,22 +1094,55 @@ void
 FeatureModelGraph::redraw()
 {
     removeChildren( 0, getNumChildren() );
+
+    osg::Node* node = 0;
     // if there's a display schema in place, set up for quadtree paging.
-    if ( _options.levels().isSet() || _useTiledSource ) //_source->getFeatureProfile()->getTiled() )
+    if ( _options.layout().isSet() || _useTiledSource )
     {
-        setupPaging();
+        node = setupPaging();
     }
     else
     {
         FeatureLevel defaultLevel( 0.0f, FLT_MAX );
         
-        //Remove all current children        
-        osg::Node* node = build( defaultLevel, GeoExtent::INVALID, 0 );
-        if ( node )
-            addChild( node );
+        //Remove all current children
+        node = buildLevel( defaultLevel, GeoExtent::INVALID, 0 );
     }
 
-    _source->sync( _revision );
+    float minRange = -FLT_MAX;
+    if ( _options.minRange().isSet() ) 
+        minRange = std::max(minRange, *_options.minRange());
+
+    if ( _options.layout().isSet() && _options.layout()->minRange().isSet() )
+        minRange = std::max(minRange, *_options.layout()->minRange());
+
+    float maxRange = FLT_MAX;
+    if ( _options.maxRange().isSet() ) 
+        maxRange = std::min(maxRange, *_options.maxRange());
+
+    if ( _options.layout().isSet() && _options.layout()->maxRange().isSet() )
+        maxRange = std::min(maxRange, *_options.layout()->maxRange());
+    
+    //If they've specified a min/max range, setup an LOD
+    if ( minRange != -FLT_MAX || maxRange != FLT_MAX )
+    {        
+        ElevationLOD *lod = new ElevationLOD(_session->getMapInfo().getSRS(), minRange, maxRange );
+        lod->addChild( node );
+        node = lod;
+    }
+
+    // If we want fading, install a fader.
+    if ( _options.fadeInDuration().value() > 0.0f )
+    {
+        FadeEffect* fader = new FadeEffect();
+        fader->setFadeDuration( *_options.fadeInDuration() );
+        fader->addChild( node );
+        node = fader;
+    }
+
+    addChild( node );
+
+    _session->getFeatureSource()->sync( _revision );
     _dirty = false;
 }
 
diff --git a/src/osgEarthFeatures/FeatureModelSource b/src/osgEarthFeatures/FeatureModelSource
index 1cf1d51..dbc85a1 100644
--- a/src/osgEarthFeatures/FeatureModelSource
+++ b/src/osgEarthFeatures/FeatureModelSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,12 +22,12 @@
 
 #include <osgEarthFeatures/Common>
 #include <osgEarthFeatures/FeatureSource>
-#include <osgEarthFeatures/FeatureGridder>
 #include <osgEarthFeatures/FeatureDisplayLayout>
 #include <osgEarthFeatures/GeometryCompiler>
 #include <osgEarthSymbology/Style>
 #include <osgEarth/ModelSource>
 #include <osgEarth/Map>
+#include <osgEarth/CachePolicy>
 #include <osg/Node>
 #include <osgDB/ReaderWriter>
 #include <list>
@@ -59,8 +59,8 @@ namespace osgEarth { namespace Features
         optional<bool>& enableLighting() { return _lit; }
         const optional<bool>& enableLighting() const { return _lit; }
 
-        optional<FeatureDisplayLayout>& levels() { return _levels; }
-        const optional<FeatureDisplayLayout>& levels() const { return _levels; }
+        optional<FeatureDisplayLayout>& layout() { return _layout; }
+        const optional<FeatureDisplayLayout>& layout() const { return _layout; }
 
         optional<bool>& clusterCulling() { return _clusterCulling; }
         const optional<bool>& clusterCulling() const { return _clusterCulling; }
@@ -68,11 +68,19 @@ namespace osgEarth { namespace Features
         optional<StringExpression>& featureName() { return _featureNameExpr; }
         const optional<StringExpression>& featureName() const { return _featureNameExpr; }
 
-    public: // deprecated
+        /** Whether to create feature indexes (default = no) */
+        optional<bool>& featureIndexing() { return _featureIndexing; }
+        const optional<bool>& featureIndexing() const { return _featureIndexing; }
+
+        /** Explicity caching policy for data from the underlying feature source */
+        optional<CachePolicy>& cachePolicy() { return _cachePolicy; }
+        const optional<CachePolicy>& cachePolicy() const { return _cachePolicy; }
+
+        /** Time (in seconds) to fade in the graphics */
+        optional<float>& fadeInDuration() { return _fadeInDuration; }
+        const optional<float>& fadeInDuration() const { return _fadeInDuration; }
 
-        /** @deprecated - use levels() instead */
-        optional<GriddingPolicy>& gridding() { return _gridding; }
-        const optional<GriddingPolicy>& gridding() const { return _gridding; }
+    public: // deprecated
 
         /** @deprecated - use the ConvertTypeFilter instead */
         optional<Symbology::Geometry::Type>& geometryTypeOverride() { return _geomTypeOverride; }
@@ -86,6 +94,8 @@ namespace osgEarth { namespace Features
     public:
         FeatureModelSourceOptions( const ConfigOptions& rhs =ConfigOptions() );
 
+        virtual ~FeatureModelSourceOptions() { }
+
         virtual Config getConfig() const;
 
     protected:
@@ -98,23 +108,24 @@ namespace osgEarth { namespace Features
         void fromConfig( const Config& conf );
 
         optional<FeatureSourceOptions>  _featureOptions;
-        optional<FeatureDisplayLayout>  _levels;
+        optional<FeatureDisplayLayout>  _layout;
         optional<StringExpression>      _featureNameExpr;
         optional<bool>                  _lit;
         optional<double>                _maxGranularity_deg;
         optional<bool>                  _mergeGeometry;
         optional<bool>                  _clusterCulling;
+        optional<bool>                  _featureIndexing;
+        optional<CachePolicy>           _cachePolicy;
+        optional<float>                 _fadeInDuration;
 
         osg::ref_ptr<StyleSheet>        _styles;
         osg::ref_ptr<FeatureSource>     _featureSource;
 
         /** @deprecated */
-        optional<GriddingPolicy>        _gridding;
         optional<Geometry::Type>        _geomTypeOverride;
-        
-        //optional<Symbology::StyleSheet> _styles;
     };
 
+
     /**
      * Interface for a class that can create a Node from a set of features and
      * a style definition. You will provide this to a FeatureModeGraph when
@@ -143,6 +154,10 @@ namespace osgEarth { namespace Features
             Session*     session ) { return new osg::Group(); }
     };
 
+    
+    /**
+     * A Feature node factory that invokes the GeometryCompiler.
+     */
     class OSGEARTHFEATURES_EXPORT GeomFeatureNodeFactory : public FeatureNodeFactory
     {
     public:
@@ -164,23 +179,38 @@ namespace osgEarth { namespace Features
      */
     class OSGEARTHFEATURES_EXPORT FeatureModelSource : public ModelSource
     {
-    public:      
+    public:
         /**
          * Constructs a new feature model source with the provided options.
          */
         FeatureModelSource( const FeatureModelSourceOptions& options =FeatureModelSourceOptions() );
 
-    public:
 
-        //override 
-        virtual void initialize( const std::string& referenceURI, const osgEarth::Map* map );
+    public: // ModelSource
 
-        // override
-        virtual osg::Node* createNode( ProgressCallback* progress );
+        virtual void initialize( const osgDB::Options* dbOptions =0L );
+
+        virtual osg::Node* createNode(
+            const Map*            map,
+            const osgDB::Options* dbOptions,
+            ProgressCallback*     progress );
     
+
+    public:
+
+        /**
+         * Abstract - the implementation class must define a feature node factory object
+         * that will actually bulid feature geometry.
+         */
         virtual FeatureNodeFactory* createFeatureNodeFactory() =0;
 
 
+        /**
+         * Creates an implementation-specific data object to be passed to buildNodeForStyle
+         * @deprecated
+         */
+        //virtual osg::Referenced* createBuildData() { return NULL; }
+
     public: // properties:
 
         /** Sets a feature source. */
@@ -189,13 +219,9 @@ namespace osgEarth { namespace Features
         /** The underlying feature source. */
         FeatureSource* getFeatureSource() { return _features.get(); }
 
+        /** The options with which this source was created */
         virtual const FeatureModelSourceOptions& getFeatureModelOptions() const { return _options; }
 
-        const osgEarth::Map* getMap() const { return _map.get(); }
-
-        /** Creates an implementation-specific data object to be passed to buildNodeForStyle */
-        virtual osg::Referenced* createBuildData() { return NULL; }     
-
     public: 
 
         // META_Object specialization:
@@ -210,10 +236,11 @@ namespace osgEarth { namespace Features
         /** DTOR is protected to prevent this object from being allocated on the stack */
         virtual ~FeatureModelSource() { }
 
-        osg::ref_ptr<FeatureSource>       _features;
-        osg::ref_ptr<const Map>           _map;
-        const FeatureModelSourceOptions   _options;
-        osg::ref_ptr<FeatureNodeFactory>  _factory;
+        osg::ref_ptr<FeatureSource>        _features;
+        osg::observer_ptr<const Map>       _map;
+        const FeatureModelSourceOptions    _options;
+        osg::ref_ptr<FeatureNodeFactory>   _factory;
+        osg::ref_ptr<const osgDB::Options> _dbOptions;
 
     };
 
diff --git a/src/osgEarthFeatures/FeatureModelSource.cpp b/src/osgEarthFeatures/FeatureModelSource.cpp
index eff7ce9..3274c3e 100644
--- a/src/osgEarthFeatures/FeatureModelSource.cpp
+++ b/src/osgEarthFeatures/FeatureModelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,10 +20,6 @@
 #include <osgEarthFeatures/FeatureModelGraph>
 #include <osgEarth/SpatialReference>
 #include <osg/Notify>
-#include <osg/Timer>
-#include <osg/LOD>
-#include <osg/ClusterCullingCallback>
-#include <osgUtil/Optimizer>
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
@@ -34,12 +30,14 @@ using namespace osgEarth::Symbology;
 //------------------------------------------------------------------------
 
 FeatureModelSourceOptions::FeatureModelSourceOptions( const ConfigOptions& options ) :
-ModelSourceOptions( options ),
-_geomTypeOverride( Geometry::TYPE_UNKNOWN ),
-_lit( true ),
-_maxGranularity_deg( 5.0 ),
-_mergeGeometry( false ),
-_clusterCulling( true )
+ModelSourceOptions ( options ),
+_geomTypeOverride  ( Geometry::TYPE_UNKNOWN ),
+_lit               ( true ),
+_maxGranularity_deg( 1.0 ),
+_mergeGeometry     ( false ),
+_clusterCulling    ( true ),
+_featureIndexing   ( false ),
+_fadeInDuration    ( 0.0f )
 {
     fromConfig( _conf );
 }
@@ -48,19 +46,20 @@ void
 FeatureModelSourceOptions::fromConfig( const Config& conf )
 {
     conf.getObjIfSet( "features", _featureOptions );
-    //if ( conf.hasChild("features") )
-    //    _featureOptions->merge( conf.child("features") );
     _featureSource = conf.getNonSerializable<FeatureSource>("feature_source");
 
-    conf.getObjIfSet( "styles", _styles );
-    conf.getObjIfSet( "layout", _levels );
-    conf.getObjIfSet( "paging", _levels ); // backwards compat.. to be deprecated
-    conf.getObjIfSet( "gridding", _gridding ); // to be deprecated
+    conf.getObjIfSet( "styles",       _styles );
+    conf.getObjIfSet( "layout",       _layout );
+    conf.getObjIfSet( "paging",       _layout ); // backwards compat.. to be deprecated
     conf.getObjIfSet( "feature_name", _featureNameExpr );
-    conf.getIfSet( "lighting", _lit );
-    conf.getIfSet( "max_granularity", _maxGranularity_deg );
-    conf.getIfSet( "merge_geometry", _mergeGeometry );
-    conf.getIfSet( "cluster_culling", _clusterCulling );
+    conf.getObjIfSet( "cache_policy", _cachePolicy );
+
+    conf.getIfSet( "lighting",         _lit );
+    conf.getIfSet( "max_granularity",  _maxGranularity_deg );
+    conf.getIfSet( "merge_geometry",   _mergeGeometry );
+    conf.getIfSet( "cluster_culling",  _clusterCulling );
+    conf.getIfSet( "feature_indexing", _featureIndexing );
+    conf.getIfSet( "fade_in_duration", _fadeInDuration );
 
     std::string gt = conf.value( "geometry_type" );
     if ( gt == "line" || gt == "lines" || gt == "linestring" )
@@ -81,16 +80,16 @@ FeatureModelSourceOptions::getConfig() const
     {
         conf.addNonSerializable("feature_source", _featureSource.get());
     }
-    //conf.updateObjIfSet( "feature_source", _featureSource);
-    conf.updateObjIfSet( "gridding", _gridding ); // to be deprecated
-    conf.updateObjIfSet( "styles", _styles );
-    conf.updateObjIfSet( "layout", _levels );
-
-    conf.updateIfSet( "lighting", _lit );
-    conf.updateIfSet( "max_granularity", _maxGranularity_deg );
-    conf.updateIfSet( "merge_geometry", _mergeGeometry );
-    conf.updateIfSet( "cluster_culling", _clusterCulling );
+    conf.updateObjIfSet( "styles",       _styles );
+    conf.updateObjIfSet( "layout",       _layout );
+    conf.updateObjIfSet( "cache_policy", _cachePolicy );
 
+    conf.updateIfSet( "lighting",         _lit );
+    conf.updateIfSet( "max_granularity",  _maxGranularity_deg );
+    conf.updateIfSet( "merge_geometry",   _mergeGeometry );
+    conf.updateIfSet( "cluster_culling",  _clusterCulling );
+    conf.updateIfSet( "feature_indexing", _featureIndexing );
+    conf.updateIfSet( "fade_in_duration", _fadeInDuration );
 
     if ( _geomTypeOverride.isSet() ) {
         if ( _geomTypeOverride == Geometry::TYPE_LINESTRING )
@@ -108,21 +107,9 @@ FeatureModelSourceOptions::getConfig() const
 
 FeatureModelSource::FeatureModelSource( const FeatureModelSourceOptions& options ) :
 ModelSource( options ),
-_options( options )
+_options   ( options )
 {
-    // the data source from which to pull features:
-    if ( _options.featureSource().valid() )
-    {
-        _features = _options.featureSource().get();
-    }
-    else if ( _options.featureOptions().isSet() )
-    {
-        _features = FeatureSourceFactory::create( _options.featureOptions().value() );
-        if ( !_features.valid() )
-        {
-            OE_WARN << "FeatureModelSource - no valid feature source provided" << std::endl;
-        }
-    }
+    //nop
 }
 
 void
@@ -139,52 +126,86 @@ FeatureModelSource::setFeatureSource( FeatureSource* source )
 }
 
 void 
-FeatureModelSource::initialize( const std::string& referenceURI, const osgEarth::Map* map )
+FeatureModelSource::initialize(const osgDB::Options* dbOptions)
 {
-    ModelSource::initialize( referenceURI, map );
+    ModelSource::initialize( dbOptions );
+    
+    // the data source from which to pull features:
+    if ( _options.featureSource().valid() )
+    {
+        _features = _options.featureSource().get();
+    }
+    else if ( _options.featureOptions().isSet() )
+    {
+        _features = FeatureSourceFactory::create( _options.featureOptions().value() );
+        if ( !_features.valid() )
+        {
+            OE_WARN << LC << "No valid feature source provided!" << std::endl;
+        }
+    }
 
+    // initialize the feature source if it exists:
     if ( _features.valid() )
     {
-        _features->initialize( referenceURI );
+        _features->initialize( dbOptions );
     }
     else
     {
         OE_WARN << LC << "No FeatureSource; nothing will be rendered (" << getName() << ")" << std::endl;
     }
-
-    _map = map;
 }
 
 osg::Node*
-FeatureModelSource::createNode( ProgressCallback* progress )
+FeatureModelSource::createNode(const Map*            map,
+                               const osgDB::Options* dbOptions,
+                               ProgressCallback*     progress )
 {
-    if ( !_factory.valid() )
-        _factory = createFeatureNodeFactory();
-
-    if ( !_factory.valid() )
+    // user must provide a valid map.
+    if ( !map )
+    {
+        OE_WARN << LC << "NULL Map is illegal when building feature data." << std::endl;
         return 0L;
+    }
 
+    // make sure the feature source initialized properly:
     if ( !_features.valid() || !_features->getFeatureProfile() )
     {
         OE_WARN << LC << "Invalid feature source" << std::endl;
         return 0L;
     }
 
-    Session* session = new Session( _map.get(), _options.styles().get() );
+    // create a feature node factory:
+    FeatureNodeFactory* factory = createFeatureNodeFactory();
+    if ( !factory )
+    {
+        OE_WARN << LC << "Unable to create a feature node factory!" << std::endl;
+        return 0L;
+    }
 
-    FeatureModelGraph* graph = new FeatureModelGraph( 
-        _features.get(), 
-        _options, 
-        _factory.get(),
-        session );
+    // Session holds data that's shared across the life of the FMG
+    Session* session = new Session( map, _options.styles().get(), _features.get(), dbOptions );
+
+    // Graph that will render feature models. May included paged data.
+    FeatureModelGraph* graph = new FeatureModelGraph( session, _options, factory );
+
+    // install any post-merge operations on the FMG so it can call them during paging:
+    const NodeOperationVector& ops = postProcessors();
+    for( NodeOperationVector::const_iterator i = ops.begin(); i != ops.end(); ++i )
+    {
+        graph->addPostMergeOperation( i->get() );
+    }
+
+    // then run the ops on the staring graph:
+    firePostProcessors( graph );
 
     return graph;
 }
 
 //------------------------------------------------------------------------
-GeomFeatureNodeFactory::GeomFeatureNodeFactory( const GeometryCompilerOptions& options )
-            : _options( options ) 
+GeomFeatureNodeFactory::GeomFeatureNodeFactory( const GeometryCompilerOptions& options ) : 
+_options( options ) 
 { 
+    //nop
 }
 
 bool GeomFeatureNodeFactory::createOrUpdateNode(       
@@ -196,4 +217,4 @@ bool GeomFeatureNodeFactory::createOrUpdateNode(
     GeometryCompiler compiler( _options );
     node = compiler.compile( features, style, context );
     return node.valid();
-}
\ No newline at end of file
+}
diff --git a/src/osgEarthFeatures/FeatureNode b/src/osgEarthFeatures/FeatureNode
deleted file mode 100644
index 74916a0..0000000
--- a/src/osgEarthFeatures/FeatureNode
+++ /dev/null
@@ -1,57 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTHFEATURES_FEATURE_NODE_H
-#define OSGEARTHFEATURES_FEATURE_NODE_H 1
-
-#include <osgEarthFeatures/Common>
-#include <osgEarthFeatures/Feature>
-#include <osgEarthSymbology/Style>
-#include <osgEarth/DrapeableNode>
-#include <osg/StateSet>
-
-namespace osgEarth { namespace Features
-{
-    using namespace osgEarth;
-    using namespace osgEarth::Symbology;
-
-    /**
-     * A node that renders a single feature. This convenience node assumes
-     * that the geometry in the Feature is in the same SRS as the Map in the
-     * MapNode.
-     */
-    class OSGEARTHFEATURES_EXPORT FeatureNode : public DrapeableNode
-    {
-    public:
-        FeatureNode( MapNode* mapNode, Feature* feature, bool draped =true );
-
-        void setFeature( Feature* feature );
-
-        void setStyle( const Style& style );
-
-        void init();
-
-    protected:
-        osg::ref_ptr<Feature>       _feature;
-        optional<Style>             _style;
-    };
-
-} } // namespace osgEarth::Features
-
-#endif // OSGEARTHFEATURES_FEATURE_NODE_H
diff --git a/src/osgEarthFeatures/FeatureNode.cpp b/src/osgEarthFeatures/FeatureNode.cpp
deleted file mode 100644
index eba20b9..0000000
--- a/src/osgEarthFeatures/FeatureNode.cpp
+++ /dev/null
@@ -1,75 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthFeatures/FeatureNode>
-#include <osgEarthFeatures/GeometryCompiler>
-#include <osgEarthFeatures/Session>
-
-#define LC "[FeatureNode] "
-
-using namespace osgEarth;
-using namespace osgEarth::Features;
-using namespace osgEarth::Symbology;
-
-FeatureNode::FeatureNode( MapNode* mapNode, Feature* feature, bool draped ) :
-DrapeableNode( mapNode, draped ),
-_feature     ( feature )
-{
-    init();
-}
-
-void
-FeatureNode::init()
-{
-    if ( _feature.valid() && _feature->getGeometry() )
-    {
-        GeometryCompilerOptions options;
-        options.maxGranularity() = 1.0;
-        GeometryCompiler compiler( options );
-        Session* session = new Session( _mapNode->getMap() );
-        GeoExtent extent(_mapNode->getMap()->getProfile()->getSRS(), _feature->getGeometry()->getBounds());
-        FeatureProfile* profile = new FeatureProfile(extent);
-        FilterContext context( session, profile, extent );
-
-        // Clone the Feature before rendering as the GeometryCompiler and it's filters can change the coordinates
-        // of the geometry when performing localization or converting to geocentric.
-        osg::ref_ptr< Feature > clone = new osgEarth::Features::Feature(*_feature.get(), osg::CopyOp::DEEP_COPY_ALL);        
-
-        osg::Node* node;
-        if ( _style.isSet() )
-            node = compiler.compile( clone.get(), *_style, context );
-        else
-            node = compiler.compile( clone.get(), *clone->style(), context );
-
-        setNode( node );
-    }
-}
-
-void
-FeatureNode::setFeature( Feature* feature )
-{
-    _feature = feature;
-    init();
-}
-
-void
-FeatureNode::setStyle( const Style& style )
-{
-    _style = style;
-    init();
-}
diff --git a/src/osgEarthFeatures/FeatureSource b/src/osgEarthFeatures/FeatureSource
index 6e2c9b5..11a1e10 100644
--- a/src/osgEarthFeatures/FeatureSource
+++ b/src/osgEarthFeatures/FeatureSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -29,6 +29,10 @@
 #include <osgEarthSymbology/Style>
 #include <osgEarth/Profile>
 #include <osgEarth/GeoData>
+#include <osgEarth/Cache>
+#include <osgEarth/CachePolicy>
+#include <osgEarth/URI>
+
 #include <osgDB/ReaderWriter>
 #include <OpenThreads/Mutex>
 #include <list>
@@ -61,9 +65,9 @@ namespace osgEarth { namespace Features
         optional<ProfileOptions>& profile() { return _profile; }
         const optional<ProfileOptions>& profile() const { return _profile; }
 
-
     public:
         FeatureSourceOptions( const ConfigOptions& options =ConfigOptions() );
+        virtual ~FeatureSourceOptions() { }
         virtual Config getConfig() const;
 
     protected:
@@ -79,19 +83,22 @@ namespace osgEarth { namespace Features
         optional<std::string>    _name;
         optional< bool >         _openWrite;
         optional<ProfileOptions> _profile;
+        optional<CachePolicy>    _cachePolicy;
     };
 
     /**
      * A FeatureSource is a pluggable object that generates Features, and 
      * optionally, styling information to go along with them.
      */
-    class OSGEARTHFEATURES_EXPORT FeatureSource : public virtual Revisioned<osg::Object> // public virtual osg::Object
+    class OSGEARTHFEATURES_EXPORT FeatureSource : public osg::Object, public Revisioned
     {
     public:      
         /**
          * Constructs a new feature source with the provided read/write options.
          */
-        FeatureSource( const ConfigOptions& options =ConfigOptions() );
+        FeatureSource(
+            const ConfigOptions&  options =ConfigOptions(),
+            const osgDB::Options* dbOptions =0L );
 
         /**
          * Gets a reference to the metadata that describes features that you can
@@ -159,6 +166,29 @@ namespace osgEarth { namespace Features
         virtual Geometry::Type getGeometryType() const { return Geometry::TYPE_UNKNOWN; }
 
 
+    public: // blacklisting.
+
+        /**
+         * Adds a feature ID to the blacklist.
+         */
+        void addToBlacklist( FeatureID fid );
+
+        /**
+         * Removes a feature from the blacklist.
+         */
+        void removeFromBlacklist( FeatureID fid );
+
+        /**
+         * Clears the blacklist.
+         */
+        void clearBlacklist();
+        
+        /**
+         * Checks the blacklist for a feature ID.
+         */
+        bool isBlacklisted( FeatureID fid ) const; 
+
+
     public: // Styling
 
         /**
@@ -188,9 +218,12 @@ namespace osgEarth { namespace Features
 
 
 		/**
-		 * Initialize the FeatureSource.  The profile should be computed and set here using setProfile()
+		 * Initialize the FeatureSource.
 		 */
-		virtual void initialize( const std::string& referenceURI ) =0;
+        virtual void initialize( const osgDB::Options* dbOptions =0L ) { }
+
+        /** Dirties the feature profile */
+        void dirtyFeatureProfile() { _featureProfile = 0;}
 
     protected:
 
@@ -206,11 +239,26 @@ namespace osgEarth { namespace Features
          */
         virtual ~FeatureSource() { }
 
-    private:
-        const FeatureSourceOptions _options;
+        /** Access the raw DB options that came in */
+        const osgDB::Options* dbOptions() const { return _dbOptions.get(); }
 
+        /** The URI context (for resolving relative paths) */
+        const URIContext& uriContext() const { return _uriContext; }
+
+        /** The Cache passed in via the dbOptions */
+        Cache* getCache() const { return _cache.get(); }            
+
+    private:
+        const FeatureSourceOptions         _options;
         osg::ref_ptr<const FeatureProfile> _featureProfile;
-        OpenThreads::Mutex _createMutex;
+        Threading::Mutex                   _createMutex;
+
+        osg::ref_ptr<const osgDB::Options> _dbOptions;
+        URIContext                         _uriContext;
+        osg::observer_ptr<Cache>           _cache;
+
+        Threading::ReadWriteMutex          _blacklistMutex;
+        std::set<FeatureID>                _blacklist;
 
         friend class Map;
         friend class FeatureSourceFactory;
diff --git a/src/osgEarthFeatures/FeatureSource.cpp b/src/osgEarthFeatures/FeatureSource.cpp
index f176eca..b78c407 100644
--- a/src/osgEarthFeatures/FeatureSource.cpp
+++ b/src/osgEarthFeatures/FeatureSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #include <osgEarthFeatures/ResampleFilter>
 #include <osgEarthFeatures/BufferFilter>
 #include <osgEarthFeatures/ConvertTypeFilter>
+#include <osgEarth/Registry>
 #include <osg/Notify>
 #include <osgDB/ReadFile>
 #include <OpenThreads/ScopedLock>
@@ -30,7 +31,7 @@ using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 using namespace OpenThreads;
 
-FeatureSourceOptions::FeatureSourceOptions( const ConfigOptions& options ) :
+FeatureSourceOptions::FeatureSourceOptions(const ConfigOptions& options) :
 DriverConfigOptions( options )
 {
     fromConfig( _conf );
@@ -41,55 +42,43 @@ FeatureSourceOptions::fromConfig( const Config& conf )
 {
     unsigned numResamples = 0;
 
-    conf.getIfSet   ( "open_write", _openWrite );
-    conf.getIfSet   ( "name",       _name );
-    conf.getObjIfSet( "profile",    _profile );
+    conf.getIfSet   ( "open_write",   _openWrite );
+    conf.getIfSet   ( "name",         _name );
+    conf.getObjIfSet( "profile",      _profile );
+    conf.getObjIfSet( "cache_policy", _cachePolicy );
 
     const ConfigSet& children = conf.children();
     for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
     {
         const Config& child = *i;
 
-        if ( child.key() == "buffer" && !child.empty() )
+        if (!child.empty())
         {
-            BufferFilter* buffer = new BufferFilter();
-            child.getIfSet( "distance", buffer->distance() );
-            _filters.push_back( buffer );
-
-            if ( numResamples > 0 )
+            FeatureFilter* filter = FeatureFilterRegistry::instance()->create( child );
+            if (filter)
             {
-                OE_WARN << LC 
-                    << "Warning: Resampling should be applied before buffering, as buffering"
-                    << " will remove colinear segments created by the buffer operation."
-                    << std::endl;
+                //Do some checks to make sure resample filters are applied before buffering.
+                ResampleFilter* resample = dynamic_cast< ResampleFilter*>( filter );
+                BufferFilter* buffer = dynamic_cast< BufferFilter*>(filter );
+                if (resample)
+                {
+                    numResamples++;
+                }
+                else if (buffer)
+                {
+                    if ( numResamples > 0 )
+                    {
+                        OE_WARN << LC 
+                            << "Warning: Resampling should be applied after buffering, as buffering"
+                            << " will remove colinear segments created by the resample operation."
+                            << std::endl;
+                    }
+                }
+
+                OE_DEBUG << "Added FeatureFilter " << filter->getConfig().toJSON(true) << std::endl;
+                _filters.push_back( filter );
             }
-
-            OE_DEBUG << LC << "Added buffer filter" << std::endl;
-        }
-
-        else if ( child.key() == "resample" && !child.empty() )
-        {
-            ResampleFilter* resample = new ResampleFilter();
-            child.getIfSet( "min_length", resample->minLength() );
-            child.getIfSet( "max_length", resample->maxLength() );
-            _filters.push_back( resample );
-            numResamples++;
-
-            OE_DEBUG << LC << "Added resample filter" << std::endl;
-        }
-
-        else if ( child.key() == "convert" && !child.empty() )
-        {
-            ConvertTypeFilter* convert = new ConvertTypeFilter();
-            optional<Geometry::Type> type = Geometry::TYPE_POINTSET;
-            child.getIfSet( "type", "point",   type, Geometry::TYPE_POINTSET );
-            child.getIfSet( "type", "line",    type, Geometry::TYPE_LINESTRING );
-            child.getIfSet( "type", "polygon", type, Geometry::TYPE_POLYGON );
-            convert->toType() = *type;
-            _filters.push_back( convert );
-
-            OE_DEBUG << LC << "Added convert filter" << std::endl;
-        }
+        }        
     }
 }
 
@@ -98,37 +87,14 @@ FeatureSourceOptions::getConfig() const
 {
     Config conf = DriverConfigOptions::getConfig();
 
-    conf.updateIfSet   ( "open_write", _openWrite );
-    conf.updateIfSet   ( "name",       _name );
-    conf.updateObjIfSet( "profile",    _profile );
-
-    //TODO: make each of these filters Configurable.
+    conf.updateIfSet   ( "open_write",   _openWrite );
+    conf.updateIfSet   ( "name",         _name );
+    conf.updateObjIfSet( "profile",      _profile );
+    conf.updateObjIfSet( "cache_policy", _cachePolicy );
+    
     for( FeatureFilterList::const_iterator i = _filters.begin(); i != _filters.end(); ++i )
     {
-        BufferFilter* buffer = dynamic_cast<BufferFilter*>( i->get() );
-        if ( buffer ) {
-            Config bufferConf( "buffer" );
-            bufferConf.addIfSet( "distance", buffer->distance() );
-            conf.update( bufferConf );
-        }
-
-        ResampleFilter* resample = dynamic_cast<ResampleFilter*>( i->get() );
-        if ( resample ) { 
-            Config resampleConf( "resample" );
-            resampleConf.addIfSet( "min_length", resample->minLength() );
-            resampleConf.addIfSet( "max_length", resample->maxLength() );
-            conf.update( resampleConf );
-        }
-
-        ConvertTypeFilter* convert = dynamic_cast<ConvertTypeFilter*>( i->get() );
-        if ( convert ) {
-            Config convertConf( "convert" );
-            optional<Geometry::Type> type( convert->toType(), convert->toType() ); // weird optional ctor :)
-            convertConf.addIfSet( "type", "point",   type, Geometry::TYPE_POINTSET );
-            convertConf.addIfSet( "type", "line",    type, Geometry::TYPE_LINESTRING );
-            convertConf.addIfSet( "type", "polygon", type, Geometry::TYPE_POLYGON );
-            conf.update( convertConf );
-        }
+        conf.update( i->get()->getConfig() );        
     }
 
     return conf;
@@ -136,10 +102,13 @@ FeatureSourceOptions::getConfig() const
 
 //------------------------------------------------------------------------
 
-FeatureSource::FeatureSource( const ConfigOptions& options ) :
+FeatureSource::FeatureSource(const ConfigOptions&  options,
+                             const osgDB::Options* dbOptions) :
 _options( options )
 {    
-    //nop
+    _dbOptions  = dbOptions;
+    _uriContext = URIContext( dbOptions );
+    _cache      = Cache::get( dbOptions );
 }
 
 const FeatureProfile*
@@ -174,6 +143,34 @@ FeatureSource::getSchema() const
     return s_emptySchema;
 }
 
+void
+FeatureSource::addToBlacklist( FeatureID fid )
+{
+    Threading::ScopedWriteLock exclusive( _blacklistMutex );
+    _blacklist.insert( fid );
+}
+
+void
+FeatureSource::removeFromBlacklist( FeatureID fid )
+{
+    Threading::ScopedWriteLock exclusive( _blacklistMutex );
+    _blacklist.erase( fid );
+}
+
+void
+FeatureSource::clearBlacklist()
+{
+    Threading::ScopedWriteLock exclusive( _blacklistMutex );
+    _blacklist.clear();
+}
+
+bool
+FeatureSource::isBlacklisted( FeatureID fid ) const
+{
+    Threading::ScopedReadLock shared( const_cast<FeatureSource*>(this)->_blacklistMutex );
+    return _blacklist.find( fid ) != _blacklist.end();
+}
+
 //------------------------------------------------------------------------
 
 #undef  LC
@@ -189,7 +186,7 @@ FeatureSourceFactory::create( const FeatureSourceOptions& options )
     {
         std::string driverExt = std::string(".osgearth_feature_") + options.getDriver();
 
-        osg::ref_ptr<osgDB::ReaderWriter::Options> rwopts = new osgDB::ReaderWriter::Options();
+        osg::ref_ptr<osgDB::Options> rwopts = Registry::instance()->cloneOrCreateOptions();
         rwopts->setPluginData( FEATURE_SOURCE_OPTIONS_TAG, (void*)&options );
 
         featureSource = dynamic_cast<FeatureSource*>( osgDB::readObjectFile( driverExt, rwopts.get() ) );
diff --git a/src/osgEarthFeatures/FeatureSourceIndexNode b/src/osgEarthFeatures/FeatureSourceIndexNode
new file mode 100644
index 0000000..2996c9e
--- /dev/null
+++ b/src/osgEarthFeatures/FeatureSourceIndexNode
@@ -0,0 +1,133 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHFEATURES_FEATURE_SOURCE_INDEX_NODE_H
+#define OSGEARTHFEATURES_FEATURE_SOURCE_INDEX_NODE_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/FeatureDrawSet>
+#include <osgEarthFeatures/FeatureSource>
+#include <osg/Group>
+#include <osg/Drawable>
+
+namespace osgEarth { namespace Features
+{
+    /**
+     * Interface for feature indexing.
+     */
+    class FeatureSourceIndex
+    {
+    public: // tagging functions
+        virtual void tagPrimitiveSets( osg::Drawable* drawable, FeatureID fid ) const =0;
+        virtual void tagNode( osg::Node* node, FeatureID fid ) const =0;
+
+        virtual ~FeatureSourceIndex() { }
+    };
+
+    /**
+     * Maintains an index that maps FeatureID's from a FeatureSource to
+     * PrimitiveSets within the subgraph's geometry.
+     */
+    class OSGEARTHFEATURES_EXPORT FeatureSourceIndexNode : public osg::Group, public FeatureSourceIndex
+	{
+	public:
+        /**
+         * Constructs a new index node.
+         */
+		FeatureSourceIndexNode(FeatureSource* featureSource);
+
+        virtual ~FeatureSourceIndexNode() { }
+
+
+    public: // FeatureSourceIndex
+
+        /**
+         * Tags all the primitive sets in a Drawable with the specified FeatureID.
+         */
+        void tagPrimitiveSets( osg::Drawable* drawable, FeatureID fid ) const;
+
+        /**
+         * Tags a node with the specified FeatureID.
+         */
+        void tagNode( osg::Node* node, FeatureID fid ) const;
+
+
+	public:
+        /**
+         * The feature source tied to this node 
+         */
+        FeatureSource* getFeatureSource() { return _featureSource.get(); }
+
+        /**
+         * Traverses this node's subgraph and rebuilds the feature index based on
+         * any tagged drawables found. (See tagPrimitiveSets for tagging drawables).
+         */
+        void reindex();
+
+        /**
+         * Given a primitive set, returns the feature ID corresponding to that set.
+         *
+         * @param pset Primitive set to query
+         * @param output Holds the result of the query, if returning true
+         * @return true if successful
+         */
+		bool getFID(osg::PrimitiveSet* pset, FeatureID& output) const;
+
+        /**
+         * Gets the Feature ID corresponding to a drawable and a prim index. This is
+         * useful to call using the results of an intersection test.
+         *
+         * @param drawable       Drawable for which to lookup the feature ID
+         * @param primitiveIndex Index of the primitive to look up
+         * @param output         Holds the result of the query, if returning true
+         * @return true if successful
+         */
+		bool getFID(osg::Drawable* drawable, int primitiveIndex, FeatureID& output) const;
+
+        /**
+         * Given a FeatureID, returns the collection of drawable/primitiveset combinations
+         * corresponding to that feature.
+         *
+         * @param fid Feature ID to look up
+         * @return Corresponding collection of primitive sets (empty if the query fails)
+         */
+        FeatureDrawSet& getDrawSet( const FeatureID& fid );
+
+	private:
+        osg::ref_ptr<FeatureSource> _featureSource;
+
+        typedef std::map<FeatureID, FeatureDrawSet> FeatureIDDrawSetMap;
+        FeatureIDDrawSetMap _drawSets;
+
+        struct Collect : public osg::NodeVisitor {
+            Collect(FeatureIDDrawSetMap&);
+            void apply(osg::Node&);
+            void apply(osg::Geode&);
+            FeatureIDDrawSetMap& _index;
+            unsigned _psets;
+        };
+
+    public:
+        virtual const char* className() const { return "FeatureSourceIndexNode"; }
+        virtual const char* libraryName() const { return "osgEarthFeatures"; }
+	};
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTHFEATURES_FEATURE_SOURCE_INDEX_NODE_H
diff --git a/src/osgEarthFeatures/FeatureSourceIndexNode.cpp b/src/osgEarthFeatures/FeatureSourceIndexNode.cpp
new file mode 100644
index 0000000..52f563b
--- /dev/null
+++ b/src/osgEarthFeatures/FeatureSourceIndexNode.cpp
@@ -0,0 +1,223 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/FeatureSourceIndexNode>
+#include <osg/MatrixTransform>
+#include <algorithm>
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+
+#define LC "[FeatureSourceIndexNode] "
+
+// for testing:
+//#undef  OE_DEBUG
+//#define OE_DEBUG OE_INFO
+
+//-----------------------------------------------------------------------------
+
+FeatureSourceIndexNode::Collect::Collect( FeatureIDDrawSetMap& index ) :
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+_index          ( index ),
+_psets          ( 0 )
+{
+    _index.clear();
+}
+
+void
+FeatureSourceIndexNode::Collect::apply( osg::Node& node )
+{
+    RefFeatureID* fid = dynamic_cast<RefFeatureID*>( node.getUserData() );
+    if ( fid )
+    {
+        FeatureDrawSet& drawSet = _index[*fid];
+        drawSet.nodes().push_back( &node );
+    }
+    traverse(node);
+}
+
+void
+FeatureSourceIndexNode::Collect::apply( osg::Geode& geode )
+{
+    RefFeatureID* fid = dynamic_cast<RefFeatureID*>( geode.getUserData() );
+    if ( fid )
+    {
+        FeatureDrawSet& drawSet = _index[*fid];
+        drawSet.nodes().push_back( &geode );
+    }
+    else
+    {
+        for( unsigned i = 0; i < geode.getNumDrawables(); ++i )
+        {
+            osg::Geometry* geom = dynamic_cast<osg::Geometry*>( geode.getDrawable(i) );
+            if ( geom )
+            {
+                osg::Geometry::PrimitiveSetList& psets = geom->getPrimitiveSetList();
+                for( unsigned p = 0; p < psets.size(); ++p )
+                {
+                    osg::PrimitiveSet* pset = psets[p];
+                    RefFeatureID* fid = dynamic_cast<RefFeatureID*>( pset->getUserData() );
+                    if ( fid )
+                    {
+                        FeatureDrawSet& drawSet = _index[*fid];
+                        drawSet.getOrCreateSlice(geom).push_back(pset);
+                        _psets++;
+                    }
+                }
+            }
+        }
+    }
+
+    // NO traverse.
+}
+
+//-----------------------------------------------------------------------------
+
+FeatureSourceIndexNode::FeatureSourceIndexNode(FeatureSource* featureSource) : 
+_featureSource( featureSource )
+{
+    //nop
+}
+
+
+// Rebuilds the feature index based on all the tagged primitive sets found in a graph
+void
+FeatureSourceIndexNode::reindex()
+{
+    _drawSets.clear();
+
+    Collect c(_drawSets);
+    this->accept( c );
+
+    OE_DEBUG << LC << "Reindexed; draw sets = " << _drawSets.size() << std::endl;
+}
+
+
+// Tags all the primitive sets in a Drawable with the specified FeatureID
+void
+FeatureSourceIndexNode::tagPrimitiveSets(osg::Drawable* drawable, FeatureID fid) const
+{
+    if ( drawable == 0L )
+        return;
+
+    osg::Geometry* geom = drawable->asGeometry();
+    if ( !geom )
+        return;
+
+    RefFeatureID* rfid = 0L;
+
+    osg::Geometry::PrimitiveSetList& plist = geom->getPrimitiveSetList();
+    for( osg::Geometry::PrimitiveSetList::iterator p = plist.begin(); p != plist.end(); ++p )
+    {
+        if ( !rfid )
+            rfid = new RefFeatureID(fid);
+
+        p->get()->setUserData( rfid );
+    }
+}
+
+
+void
+FeatureSourceIndexNode::tagNode( osg::Node* node, FeatureID fid ) const
+{
+    node->setUserData( new RefFeatureID(fid) );
+}
+
+
+bool
+FeatureSourceIndexNode::getFID(osg::PrimitiveSet* primSet, FeatureID& output) const
+{
+    const RefFeatureID* fid = dynamic_cast<const RefFeatureID*>( primSet->getUserData() );
+    if ( fid )
+    {
+        output = *fid;
+        return true;
+    }
+
+    OE_DEBUG << LC << "getFID failed b/c the primSet was not tagged with a RefFeatureID" << std::endl;
+    return false;
+}
+
+
+bool
+FeatureSourceIndexNode::getFID(osg::Drawable* drawable, int primIndex, FeatureID& output) const
+{
+    if ( drawable == 0L || primIndex < 0 )
+        return false;
+
+    for( FeatureIDDrawSetMap::const_iterator i = _drawSets.begin(); i != _drawSets.end(); ++i )
+    {
+        const FeatureDrawSet& drawSet = i->second;
+        FeatureDrawSet::DrawableSlices::const_iterator d = drawSet.slice(drawable);
+        if ( d != drawSet.slices().end() )
+        {
+            const osg::Geometry* geom = drawable->asGeometry();
+            if ( geom )
+            {
+                const osg::Geometry::PrimitiveSetList& geomPrimSets = geom->getPrimitiveSetList();
+
+                unsigned encounteredPrims = 0;
+                for( osg::Geometry::PrimitiveSetList::const_iterator p = geomPrimSets.begin(); p != geomPrimSets.end(); ++p )
+                {
+                    const osg::PrimitiveSet* pset = p->get();
+                    unsigned numPrims = pset->getNumPrimitives();
+                    encounteredPrims += numPrims;
+
+                    if ( encounteredPrims > (unsigned)primIndex )
+                    {
+                        const RefFeatureID* fid = dynamic_cast<const RefFeatureID*>( pset->getUserData() );
+                        if ( fid )
+                        {
+                            output = *fid;
+                            return true;
+                        }
+                        else
+                        {
+                            OE_DEBUG << LC << "INTERNAL: found primset, but it's not tagged with a FID" << std::endl;
+                            return false;
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    // see if we have a node in the path
+    for( osg::Node* node = drawable->getParent(0); node != 0L; node = (node->getNumParents()>0?node->getParent(0):0L) )
+    {
+        RefFeatureID* fid = dynamic_cast<RefFeatureID*>( node->getUserData() );
+        if ( fid )
+        {
+            output = *fid;
+            return true;
+        }
+    }
+
+    return false;
+}
+
+
+
+FeatureDrawSet&
+FeatureSourceIndexNode::getDrawSet(const FeatureID& fid )
+{
+    static FeatureDrawSet s_empty;
+
+    FeatureIDDrawSetMap::iterator i = _drawSets.find(fid);
+    return i != _drawSets.end() ? i->second : s_empty;
+}
diff --git a/src/osgEarthFeatures/FeatureTileSource b/src/osgEarthFeatures/FeatureTileSource
index 4c0fa27..8e3f28c 100644
--- a/src/osgEarthFeatures/FeatureTileSource
+++ b/src/osgEarthFeatures/FeatureTileSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -55,6 +55,8 @@ namespace osgEarth { namespace Features
 
         FeatureTileSourceOptions( const ConfigOptions& rhs =ConfigOptions() );
 
+        virtual ~FeatureTileSourceOptions() { }
+
     public:
         virtual Config getConfig() const;
 
@@ -84,10 +86,12 @@ namespace osgEarth { namespace Features
         FeatureTileSource( const TileSourceOptions& options =TileSourceOptions() );
 
         //override
-        virtual void initialize( const std::string& referenceURI, const Profile* overrideProfile = NULL);
+        virtual Status initialize( const osgDB::Options* options );
 
         //override
-        virtual osg::Image* createImage( const TileKey& key, ProgressCallback* progress );
+        virtual osg::Image* createImage(
+            const TileKey&        key,
+            ProgressCallback*     progress );
 
     public: // properties:
 
diff --git a/src/osgEarthFeatures/FeatureTileSource.cpp b/src/osgEarthFeatures/FeatureTileSource.cpp
index e60372d..cb65aed 100644
--- a/src/osgEarthFeatures/FeatureTileSource.cpp
+++ b/src/osgEarthFeatures/FeatureTileSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -84,8 +84,8 @@ FeatureTileSourceOptions::fromConfig( const Config& conf )
 /*************************************************************************/
 
 FeatureTileSource::FeatureTileSource( const TileSourceOptions& options ) :
-TileSource( options ),
-_options( options.getConfig() ),
+TileSource  ( options ),
+_options    ( options.getConfig() ),
 _initialized( false )
 {
     if ( _options.featureSource().valid() )
@@ -102,23 +102,17 @@ _initialized( false )
     }
 }
 
-void 
-FeatureTileSource::initialize( const std::string& referenceURI, const Profile* overrideProfile)
+TileSource::Status 
+FeatureTileSource::initialize(const osgDB::Options* dbOptions)
 {
-    if (overrideProfile)
+    if ( !getProfile() )
     {
-        //If we were given a profile, take it on.
-        setProfile(overrideProfile);
-    }
-    else
-    {
-        //Assume it is global-geodetic
         setProfile( osgEarth::Registry::instance()->getGlobalGeodeticProfile() );
     }            
 
     if ( _features.valid() )
     {
-        _features->initialize( referenceURI );
+        _features->initialize( dbOptions );
 
 #if 0 // removed this as it was screwing up the rasterizer (agglite plugin).. not sure there's any reason to do this anyway
         if (_features->getFeatureProfile())
@@ -132,10 +126,11 @@ FeatureTileSource::initialize( const std::string& referenceURI, const Profile* o
     }
     else
     {
-        OE_WARN << LC << "No FeatureSource provided; nothing will be rendered (" << getName() << ")" << std::endl;
+        return Status::Error("No FeatureSource provided; nothing will be rendered");
     }
 
     _initialized = true;
+    return STATUS_OK;
 }
 
 void
@@ -174,7 +169,7 @@ FeatureTileSource::createImage( const TileKey& key, ProgressCallback* progress )
     {
         // Each feature has its own embedded style data, so use that:
         osg::ref_ptr<FeatureCursor> cursor = _features->createFeatureCursor( Query() );
-        while( cursor->hasMore() )
+        while( cursor.valid() && cursor->hasMore() )
         {
             Feature* feature = cursor->nextFeature();
             if ( feature )
@@ -229,7 +224,7 @@ FeatureTileSource::queryAndRenderFeaturesForStyle(const Style&     style,
     // convert them both to WGS84, intersect the extents, and convert back.
     GeoExtent featuresExtentWGS84 = featuresExtent.transform( featuresExtent.getSRS()->getGeographicSRS() );
     GeoExtent imageExtentWGS84 = imageExtent.transform( featuresExtent.getSRS()->getGeographicSRS() );
-    GeoExtent queryExtentWGS84 = featuresExtentWGS84.intersectionSameSRS( imageExtentWGS84.bounds() );
+    GeoExtent queryExtentWGS84 = featuresExtentWGS84.intersectionSameSRS( imageExtentWGS84 );
     if ( queryExtentWGS84.isValid() )
     {
         GeoExtent queryExtent = queryExtentWGS84.transform( featuresExtent.getSRS() );
@@ -246,7 +241,7 @@ FeatureTileSource::queryAndRenderFeaturesForStyle(const Style&     style,
         // now copy the resulting feature set into a list, converting the data
         // types along the way if a geometry override is in place:
         FeatureList cellFeatures;
-        while( cursor->hasMore() )
+        while( cursor.valid() && cursor->hasMore() )
         {
             Feature* feature = cursor->nextFeature();
             Geometry* geom = feature->getGeometry();
diff --git a/src/osgEarthFeatures/Filter b/src/osgEarthFeatures/Filter
index 4e5ebb1..272810b 100644
--- a/src/osgEarthFeatures/Filter
+++ b/src/osgEarthFeatures/Filter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -44,11 +44,95 @@ namespace osgEarth { namespace Features
     {
     public:
         virtual FilterContext push( FeatureList& input, FilterContext& context ) =0;
+
+        /**
+         * Serialize this FeatureFilter
+         */
+        virtual Config getConfig() const { return Config(); }
+
+        virtual ~FeatureFilter() { }
     };
 
     typedef std::list< osg::ref_ptr<FeatureFilter> > FeatureFilterList;
 
     /**
+     * A Factory that can create a FeatureFilter from a Config
+     */
+    class OSGEARTHFEATURES_EXPORT FeatureFilterFactory : public osg::Referenced
+    {
+    public:
+        virtual FeatureFilter* create( const Config& conf ) = 0;
+    };    
+
+    typedef std::list< osg::ref_ptr< FeatureFilterFactory > > FeatureFilterFactoryList;
+
+    /**
+     * A registry of FeatureFilter plugins
+     */
+    class OSGEARTHFEATURES_EXPORT FeatureFilterRegistry : public osg::Referenced
+    {         
+    public:
+        /**
+         * The singleton instance of the factory
+         */
+        static FeatureFilterRegistry* instance();
+
+        /*
+         * Adds a new FeatureFilterFactory to the list
+         */
+        void add( FeatureFilterFactory* factory );
+
+        /**
+         * Creates a FeatureFilter with the registered plugins from the given Config
+         */
+        FeatureFilter* create( const Config& conf );
+
+    protected:
+        FeatureFilterRegistry();
+        FeatureFilterFactoryList _factories;
+    };
+
+    template<class T>
+    struct SimpleFeatureFilterFactory : public FeatureFilterFactory
+    {
+        SimpleFeatureFilterFactory(const std::string& key):_key(key){}
+
+        virtual FeatureFilter* create(const Config& conf)
+        {
+            if (conf.key() == _key) return new T(conf);            
+            return 0;
+        }
+
+        std::string _key;
+    };
+
+    template<class T>
+    struct RegisterFeatureFilterProxy
+    {
+        RegisterFeatureFilterProxy( T* factory) { FeatureFilterRegistry::instance()->add( factory ); }
+        RegisterFeatureFilterProxy() { FeatureFilterRegistry::instance()->add( new T ); }
+    };
+
+#define OSGEARTH_REGISTER_FEATUREFILTER( CLASSNAME )\
+    static RegisterFeatureFilterProxy<CLASSNAME> s_osgEarthRegisterFeatureFilterProxy_##CLASSNAME;
+
+#define OSGEARTH_REGISTER_SIMPLE_FEATUREFILTER( KEY, CLASSNAME)\
+    static RegisterFeatureFilterProxy< SimpleFeatureFilterFactory<CLASSNAME> > s_osgEarthRegisterFeatureFilterProxy_##CLASSNAME##KEY(new SimpleFeatureFilterFactory<CLASSNAME>(#KEY));
+
+
+    template<typename T>
+    class TemplateFeatureFilter : public Filter, public T
+    {
+    public:
+        FilterContext push( FeatureList& input, FilterContext& context ) {
+            for( FeatureList::iterator i = input.begin(); i != input.end(); ++i ) {
+                T::operator()( i->get(), context );
+            }
+            return context;
+        }
+    };
+
+    /**
      * Base class for a filter that converts features into an osg Node.
      */
     class OSGEARTHFEATURES_EXPORT FeaturesToNodeFilter : public Filter
@@ -57,11 +141,11 @@ namespace osgEarth { namespace Features
         virtual osg::Node* push( FeatureList& input, FilterContext& context ) =0;
 
     public:
-
         const osg::Matrixd& local2world() const { return _local2world; }
-
         const osg::Matrixd& world2local() const { return _world2local; }
         
+        virtual ~FeaturesToNodeFilter() { }
+        
     protected:
 
         // computes the matricies required to localizer/delocalize double-precision coords
@@ -72,6 +156,21 @@ namespace osgEarth { namespace Features
         osg::Group* delocalizeAsGroup( osg::Node* node ) const;
         osg::Group* createDelocalizeGroup() const;
 
+        void transformAndLocalize(
+            const std::vector<osg::Vec3d>& input,
+            const SpatialReference*        inputSRS,
+            osg::Vec3Array*                output,
+            const SpatialReference*        outputSRS,
+            const osg::Matrixd&            world2local,
+            bool                           toECEF );
+
+        void transformAndLocalize(
+            const osg::Vec3d&              input,
+            const SpatialReference*        inputSRS,
+            osg::Vec3d&                    output,
+            const SpatialReference*        outputSRS,
+            const osg::Matrixd&            world2local,
+            bool                           toECEF );
 
         osg::Matrixd _world2local, _local2world;   // for coordinate localization
     };
diff --git a/src/osgEarthFeatures/Filter.cpp b/src/osgEarthFeatures/Filter.cpp
index db2d7b3..1244228 100644
--- a/src/osgEarthFeatures/Filter.cpp
+++ b/src/osgEarthFeatures/Filter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,24 +23,145 @@
 using namespace osgEarth;
 using namespace osgEarth::Features;
 
+/********************************************************************************/
+        
+FeatureFilterRegistry::FeatureFilterRegistry()
+{
+}
+
+FeatureFilterRegistry*
+FeatureFilterRegistry::instance()
+{
+    // OK to be in the local scope since this gets called at static init time
+    // by the OSGEARTH_REGISTER_ANNOTATION macro
+    static FeatureFilterRegistry* s_singleton =0L;
+    static Threading::Mutex    s_singletonMutex;
+
+    if ( !s_singleton )
+    {
+        Threading::ScopedMutexLock lock(s_singletonMutex);
+        if ( !s_singleton )
+        {
+            s_singleton = new FeatureFilterRegistry();
+        }
+    }
+    return s_singleton;
+}
+
+void
+FeatureFilterRegistry::add( FeatureFilterFactory* factory )
+{
+    _factories.push_back( factory );
+}
+
+FeatureFilter*
+FeatureFilterRegistry::create( const Config& conf )
+{
+    for (FeatureFilterFactoryList::iterator itr = _factories.begin(); itr != _factories.end(); itr++)
+    {
+        FeatureFilter* filter = itr->get()->create( conf );
+        if (filter) return filter;
+    }
+    return 0;
+} 
+
+/********************************************************************************/
+
 void
 FeaturesToNodeFilter::computeLocalizers( const FilterContext& context )
 {
-    if ( context.getSession()->getMapInfo().isGeocentric() )
+    if ( context.isGeoreferenced() )
+    {
+        if ( context.getSession()->getMapInfo().isGeocentric() )
+        {
+            const SpatialReference* geogSRS = context.profile()->getSRS()->getGeographicSRS();
+            GeoExtent geodExtent = context.extent()->transform( geogSRS );
+            if ( geodExtent.width() < 180.0 )
+            {
+                osg::Vec3d centroid, centroidECEF;
+                geodExtent.getCentroid( centroid.x(), centroid.y() );
+                geogSRS->transformToECEF( centroid, centroidECEF );
+                _local2world = ECEF::createLocalToWorld( centroidECEF );
+                _world2local.invert( _local2world );
+            }
+        }
+
+        else // projected
+        {
+            if ( context.extent().isSet() )
+            {
+                osg::Vec3d centroid;
+                context.extent()->getCentroid(centroid.x(), centroid.y());
+
+                context.extent()->getSRS()->transform(
+                    centroid,
+                    context.getSession()->getMapInfo().getProfile()->getSRS(),
+                    centroid );
+
+                _world2local.makeTranslate( -centroid );
+                _local2world.invert( _world2local );
+            }
+        }
+    }
+}
+
+void
+FeaturesToNodeFilter::transformAndLocalize(const std::vector<osg::Vec3d>& input,
+                                           const SpatialReference*        inputSRS,
+                                           osg::Vec3Array*                output,
+                                           const SpatialReference*        outputSRS,
+                                           const osg::Matrixd&            world2local,
+                                           bool                           toECEF )
+{
+    output->reserve( output->size() + input.size() );
+
+    if ( toECEF )
     {
-        const SpatialReference* geogSRS = context.profile()->getSRS()->getGeographicSRS();
-        GeoExtent geodExtent = context.extent()->transform( geogSRS );
-        if ( geodExtent.width() < 180.0 )
+        ECEF::transformAndLocalize( input, inputSRS, output, world2local );
+    }
+    else if ( inputSRS )
+    {
+        std::vector<osg::Vec3d> temp( input );
+        inputSRS->transform( temp, outputSRS );
+
+        for( std::vector<osg::Vec3d>::const_iterator i = temp.begin(); i != temp.end(); ++i )
         {
-            osg::Vec3d centroid, centroidECEF;
-            geodExtent.getCentroid( centroid.x(), centroid.y() );
-            geogSRS->transformToECEF( centroid, centroidECEF );
-            _local2world = ECEF::createInverseRefFrame( centroidECEF );
-            _world2local.invert( _local2world );
+            output->push_back( (*i) * world2local );
+        }
+    }
+    else
+    {
+        for( std::vector<osg::Vec3d>::const_iterator i = input.begin(); i != input.end(); ++i )
+        {
+            output->push_back( (*i) * world2local );
         }
     }
 }
 
+void
+FeaturesToNodeFilter::transformAndLocalize(const osg::Vec3d&              input,
+                                           const SpatialReference*        inputSRS,
+                                           osg::Vec3d&                    output,
+                                           const SpatialReference*        outputSRS,
+                                           const osg::Matrixd&            world2local,
+                                           bool                           toECEF )
+{
+    if ( toECEF )
+    {
+        ECEF::transformAndLocalize( input, inputSRS, output, world2local );
+    }
+    else if ( inputSRS )
+    {
+        inputSRS->transform( input, outputSRS, output );
+        output = output * world2local;
+    }
+    else
+    {
+        output = input * world2local;
+    }
+}
+
+
 osg::Node*
 FeaturesToNodeFilter::delocalize( osg::Node* node ) const
 {
diff --git a/src/osgEarthFeatures/FilterContext b/src/osgEarthFeatures/FilterContext
index db79e05..96ddec8 100644
--- a/src/osgEarthFeatures/FilterContext
+++ b/src/osgEarthFeatures/FilterContext
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,7 @@
 #include <osgEarthFeatures/Feature>
 #include <osgEarthFeatures/OptimizerHints>
 #include <osgEarthFeatures/Session>
+#include <osgEarthSymbology/Geometry>
 #include <osgEarthSymbology/ResourceCache>
 #include <osgEarth/GeoData>
 #include <osg/Matrix>
@@ -33,6 +34,8 @@ namespace osgEarth { namespace Features
     using namespace osgEarth;
     using namespace osgEarth::Symbology;
     class Session;
+    class FeatureProfile;
+    class FeatureSourceIndex;
 
     /**
      * Context within which a chain of filters is executed.
@@ -43,9 +46,12 @@ namespace osgEarth { namespace Features
         FilterContext(
             Session*              session       =0L,
             const FeatureProfile* profile       =0L,
-            const GeoExtent&      workingExtent =GeoExtent::INVALID );
+            const GeoExtent&      workingExtent =GeoExtent::INVALID,
+            FeatureSourceIndex*   index         =0L);
 
         FilterContext( const FilterContext& rhs );
+        
+        virtual ~FilterContext() { }
 
         /**
          * Assigns a resource cache to use. One is created automatically if you
@@ -53,9 +59,20 @@ namespace osgEarth { namespace Features
          */
         void setResourceCache( ResourceCache* value ) { _resourceCache = value; }
 
+        /**
+         * Sets the feature index that the filter chain should populate
+         */
+        void setFeatureIndex( FeatureSourceIndex* value ) { _index = value; }
+
+
     public: // properties
 
         /**
+         * Whether this context contains complete georeferencing information.
+         */
+        bool isGeoreferenced() const { return _session.valid() && _profile.valid(); }
+
+        /**
          * Access to the Session under which this filter context operates
          */
         Session* getSession() { return _session.get(); }
@@ -74,10 +91,10 @@ namespace osgEarth { namespace Features
         const optional<GeoExtent>& extent() const { return _extent; }
 
         /**
-         * Whether to assume a geocentric coordinate system for geographic profiles.
+         * The feature index
          */
-        bool isGeocentric() const { return _isGeocentric; }
-        bool& isGeocentric() { return _isGeocentric; }
+        FeatureSourceIndex* featureIndex() { return _index; }
+        const FeatureSourceIndex* featureIndex() const { return _index; }
 
         /**
          * Whether this context has a non-identity reference frame
@@ -146,6 +163,9 @@ namespace osgEarth { namespace Features
         /** Dump as a string */
         std::string toString() const;
 
+        /** Gets the DB Options associated with the context's session */
+        const osgDB::Options* getDBOptions() const;
+
     protected:
         osg::ref_ptr<Session>              _session;
         osg::ref_ptr<const FeatureProfile> _profile;
@@ -155,6 +175,7 @@ namespace osgEarth { namespace Features
         osg::Matrixd                       _inverseReferenceFrame;
         OptimizerHints                     _optimizerHints;
         osg::ref_ptr<ResourceCache>        _resourceCache;
+        FeatureSourceIndex*                _index;
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/FilterContext.cpp b/src/osgEarthFeatures/FilterContext.cpp
index 3ae7e0d..97bd4d3 100644
--- a/src/osgEarthFeatures/FilterContext.cpp
+++ b/src/osgEarthFeatures/FilterContext.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,19 +17,38 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/FilterContext>
+#include <osgEarth/Registry>
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
 
 FilterContext::FilterContext(Session*               session,
                              const FeatureProfile*  profile,
-                             const GeoExtent&       workingExtent ) :
+                             const GeoExtent&       workingExtent,
+                             FeatureSourceIndex*    index ) :
 _session     ( session ),
 _profile     ( profile ),
 _extent      ( workingExtent, workingExtent ),
-_isGeocentric( false )
+_isGeocentric( false ),
+_index       ( index )
 {
-    _resourceCache = new ResourceCache();
+    _resourceCache = new ResourceCache( session ? session->getDBOptions() : 0L );
+
+    // attempt to establish a working extent if we don't have one:
+
+    if (!_extent->isValid() &&
+        profile &&
+        profile->getExtent().isValid() )
+    {
+        _extent = profile->getExtent();
+    }
+
+    if (!_extent->isValid() &&
+        session && 
+        session->getMapInfo().getProfile() )
+    {
+        _extent = session->getMapInfo().getProfile()->getExtent();
+    }
 }
 
 FilterContext::FilterContext( const FilterContext& rhs ) :
@@ -40,11 +59,18 @@ _extent               ( rhs._extent ),
 _referenceFrame       ( rhs._referenceFrame ),
 _inverseReferenceFrame( rhs._inverseReferenceFrame ),
 _optimizerHints       ( rhs._optimizerHints ),
-_resourceCache        ( rhs._resourceCache )
+_resourceCache        ( rhs._resourceCache.get() ),
+_index                ( rhs._index )
 {
     //nop
 }
 
+const osgDB::Options*
+FilterContext::getDBOptions() const
+{
+    return _session.valid() ? _session->getDBOptions() : 0L;
+}
+
 void
 FilterContext::toLocal( Geometry* geom ) const
 {
@@ -105,6 +131,7 @@ FilterContext::toString() const
         << ", geocentric = "     << osgEarth::toString(_isGeocentric)
         << "]";
 
-    std::string str = buf.str();
+    std::string str;
+    str = buf.str();
     return str;
 }
diff --git a/src/osgEarthFeatures/GeometryCompiler b/src/osgEarthFeatures/GeometryCompiler
index 8add277..dcb7b6f 100644
--- a/src/osgEarthFeatures/GeometryCompiler
+++ b/src/osgEarthFeatures/GeometryCompiler
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,8 @@ namespace osgEarth { namespace Features
     {
     public:
         GeometryCompilerOptions( const ConfigOptions& conf =ConfigOptions() );
+        
+        virtual ~GeometryCompilerOptions() { }
 
     public:
         /** Maximum span of a generated edge, in degrees. Applicable to geocentric maps only */
@@ -57,6 +59,14 @@ namespace osgEarth { namespace Features
         optional<bool>& clustering() { return _clustering; }
         const optional<bool>& clustering() const { return _clustering; }
 
+        /** Whether to enabled draw-instancing for model substitution */
+        optional<bool>& instancing() { return _instancing; }
+        const optional<bool>& instancing() const { return _instancing; }
+
+        /** Whether to ignore the altitude filter (e.g. if you plan to do auto-clamping layer) */
+        optional<bool>& ignoreAltitudeSymbol() { return _ignoreAlt; }
+        const optional<bool>& ignoreAltitudeSymbol() const { return _ignoreAlt; }
+
         //todo: merge this with geoInterp()
         optional<osgEarth::Features::ResampleFilter::ResampleMode>& resampleMode() { return _resampleMode;}
         const optional<osgEarth::Features::ResampleFilter::ResampleMode>& resampleMode() const { return _resampleMode;}
@@ -64,6 +74,8 @@ namespace osgEarth { namespace Features
         optional<double>& resampleMaxLength() { return _resampleMaxLength; }
         const optional<double>& resampleMaxLength() const { return _resampleMaxLength;}
 
+        optional<bool>& useVertexBufferObjects() { return _useVertexBufferObjects;}
+        const optional<bool>& useVertexBufferObjects() const { return _useVertexBufferObjects;}
 
 
     public:
@@ -76,8 +88,11 @@ namespace osgEarth { namespace Features
         optional<bool>                 _mergeGeometry;
         optional<StringExpression>     _featureNameExpr;
         optional<bool>                 _clustering;
-        optional<osgEarth::Features::ResampleFilter::ResampleMode> _resampleMode;
+        optional<bool>                 _instancing;
+        optional<ResampleFilter::ResampleMode> _resampleMode;
         optional<double>               _resampleMaxLength;
+        optional<bool>                 _ignoreAlt;
+        optional<bool>                 _useVertexBufferObjects;
 
         void fromConfig( const Config& conf );
     };
@@ -95,6 +110,8 @@ namespace osgEarth { namespace Features
         /** Constructs a new compiler with preconfigured options. */
         GeometryCompiler( const GeometryCompilerOptions& options );
         
+        virtual ~GeometryCompiler() { }
+        
         /** Access the options read-only */
         const GeometryCompilerOptions& options() const { return _options; }
 
@@ -115,6 +132,19 @@ namespace osgEarth { namespace Features
             const FilterContext&  context);
 
         osg::Node* compile(
+            Feature*              input,
+            const FilterContext&  context);
+
+        osg::Node* compile(
+            Geometry*             geom,
+            const Style&          style,
+            const FilterContext&  context);
+
+        osg::Node* compile(
+            Geometry*             geom,
+            const FilterContext&  context );
+
+        osg::Node* compile(
             FeatureList&          mungeableInput,
             const Style&          style,
             const FilterContext&  context);
diff --git a/src/osgEarthFeatures/GeometryCompiler.cpp b/src/osgEarthFeatures/GeometryCompiler.cpp
index 78350c6..6b3342b 100644
--- a/src/osgEarthFeatures/GeometryCompiler.cpp
+++ b/src/osgEarthFeatures/GeometryCompiler.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,7 +24,7 @@
 #include <osgEarthFeatures/ExtrudeGeometryFilter>
 #include <osgEarthFeatures/ScatterFilter>
 #include <osgEarthFeatures/SubstituteModelFilter>
-#include <osgEarthFeatures/TransformFilter>
+#include <osgEarthFeatures/TessellateOperator>
 #include <osg/MatrixTransform>
 #include <osg/Timer>
 #include <osgDB/WriteFile>
@@ -47,10 +47,13 @@ namespace
 //-----------------------------------------------------------------------
 
 GeometryCompilerOptions::GeometryCompilerOptions( const ConfigOptions& conf ) :
-ConfigOptions( conf ),
-_maxGranularity_deg( 5.0 ),
-_mergeGeometry( false ),
-_clustering( true )
+ConfigOptions      ( conf ),
+_maxGranularity_deg( 1.0 ),
+_mergeGeometry     ( false ),
+_clustering        ( false ),
+_instancing        ( false ),
+_ignoreAlt         ( false ),
+_useVertexBufferObjects( true )
 {
     fromConfig(_conf);
 }
@@ -58,24 +61,30 @@ _clustering( true )
 void
 GeometryCompilerOptions::fromConfig( const Config& conf )
 {
-    conf.getIfSet   ( "max_granularity", _maxGranularity_deg );
-    conf.getIfSet   ( "merge_geometry",  _mergeGeometry );
-    conf.getIfSet   ( "clustering",      _clustering );
-    conf.getObjIfSet( "feature_name",    _featureNameExpr );
+    conf.getIfSet   ( "max_granularity",  _maxGranularity_deg );
+    conf.getIfSet   ( "merge_geometry",   _mergeGeometry );
+    conf.getIfSet   ( "clustering",       _clustering );
+    conf.getIfSet   ( "instancing",       _instancing );
+    conf.getObjIfSet( "feature_name",     _featureNameExpr );
+    conf.getIfSet   ( "ignore_altitude",  _ignoreAlt );
     conf.getIfSet   ( "geo_interpolation", "great_circle", _geoInterp, GEOINTERP_GREAT_CIRCLE );
     conf.getIfSet   ( "geo_interpolation", "rhumb_line",   _geoInterp, GEOINTERP_RHUMB_LINE );
+    conf.getIfSet   ( "use_vbo", _useVertexBufferObjects);
 }
 
 Config
 GeometryCompilerOptions::getConfig() const
 {
     Config conf = ConfigOptions::getConfig();
-    conf.addIfSet   ( "max_granularity", _maxGranularity_deg );
-    conf.addIfSet   ( "merge_geometry",  _mergeGeometry );
-    conf.addIfSet   ( "clustering",      _clustering );
-    conf.addObjIfSet( "feature_name",    _featureNameExpr );
+    conf.addIfSet   ( "max_granularity",  _maxGranularity_deg );
+    conf.addIfSet   ( "merge_geometry",   _mergeGeometry );
+    conf.addIfSet   ( "clustering",       _clustering );
+    conf.addIfSet   ( "instancing",       _instancing );
+    conf.addObjIfSet( "feature_name",     _featureNameExpr );
+    conf.addIfSet   ( "ignore_altitude",  _ignoreAlt );
     conf.addIfSet   ( "geo_interpolation", "great_circle", _geoInterp, GEOINTERP_GREAT_CIRCLE );
     conf.addIfSet   ( "geo_interpolation", "rhumb_line",   _geoInterp, GEOINTERP_RHUMB_LINE );
+    conf.addIfSet   ( "use_vbo", _useVertexBufferObjects);
     return conf;
 }
 
@@ -100,41 +109,44 @@ _options( options )
 }
 
 osg::Node*
-GeometryCompiler::compile(Feature*              feature,
+GeometryCompiler::compile(Geometry*             geometry,
                           const Style&          style,
                           const FilterContext&  context)
 {
-    if ( !context.profile() ) {
-        OE_WARN << LC << "Valid feature profile required" << std::endl;
-        return 0L;
-    }
+    osg::ref_ptr<Feature> f = new Feature(geometry, 0L); // no SRS!
+    return compile(f.get(), style, context);
+}
 
-    //if ( style.empty() ) {
-    //    OE_WARN << LC << "Non-empty style required" << std::endl;
-    //    return 0L;
-    //}
+osg::Node*
+GeometryCompiler::compile(Geometry*             geometry,
+                          const FilterContext&  context)
+{
+    return compile( geometry, Style(), context );
+}
 
+osg::Node*
+GeometryCompiler::compile(Feature*              feature,
+                          const Style&          style,
+                          const FilterContext&  context)
+{
     FeatureList workingSet;
     workingSet.push_back(feature);
     return compile(workingSet, style, context);
 }
 
 osg::Node*
+GeometryCompiler::compile(Feature*              feature,
+                          const FilterContext&  context)
+{
+    return compile(feature, *feature->style(), context);
+}
+
+osg::Node*
 GeometryCompiler::compile(FeatureCursor*        cursor,
                           const Style&          style,
                           const FilterContext&  context)
 
 {
-    if ( !context.profile() ) {
-        OE_WARN << LC << "Valid feature profile required" << std::endl;
-        return 0L;
-    }
-
-    //if ( style.empty() ) {
-    //    OE_WARN << LC << "Non-empty style required" << std::endl;
-    //    return 0L;
-    //}
-
     // start by making a working copy of the feature set
     FeatureList workingSet;
     cursor->fill( workingSet );
@@ -156,27 +168,43 @@ GeometryCompiler::compile(FeatureList&          workingSet,
 
     // create a filter context that will track feature data through the process
     FilterContext sharedCX = context;
-    if ( !sharedCX.extent().isSet() )
+    if ( !sharedCX.extent().isSet() && sharedCX.profile() )
+    {
         sharedCX.extent() = sharedCX.profile()->getExtent();
+    }
 
     // only localize coordinates if the map is geocentric AND the extent is
     // less than 180 degrees.
-    const MapInfo& mi = sharedCX.getSession()->getMapInfo();
-    GeoExtent workingExtent = sharedCX.extent()->transform( sharedCX.profile()->getSRS()->getGeographicSRS() );
-    bool localize = mi.isGeocentric() && workingExtent.width() < 180.0;
+    bool localize = false;
+    if ( sharedCX.isGeoreferenced() )
+    {
+        const MapInfo& mi = sharedCX.getSession()->getMapInfo();
+        GeoExtent workingExtent = sharedCX.extent()->transform( sharedCX.profile()->getSRS()->getGeographicSRS() );
+        localize = mi.isGeocentric() && workingExtent.width() < 180.0;
+    }
 
     // go through the Style and figure out which filters to use.
-    const MarkerSymbol*    marker    = style.get<MarkerSymbol>();
     const PointSymbol*     point     = style.get<PointSymbol>();
     const LineSymbol*      line      = style.get<LineSymbol>();
     const PolygonSymbol*   polygon   = style.get<PolygonSymbol>();
     const ExtrusionSymbol* extrusion = style.get<ExtrusionSymbol>();
     const AltitudeSymbol*  altitude  = style.get<AltitudeSymbol>();
     const TextSymbol*      text      = style.get<TextSymbol>();
+    const MarkerSymbol*    marker    = style.get<MarkerSymbol>();    // to be deprecated
+    const IconSymbol*      icon      = style.get<IconSymbol>();
+    const ModelSymbol*     model     = style.get<ModelSymbol>();
+
+    // check whether we need tessellation:
+    if ( line && line->tessellation().isSet() )
+    {
+        TemplateFeatureFilter<TessellateOperator> filter;
+        filter.setNumPartitions( *line->tessellation() );
+        sharedCX = filter.push( workingSet, sharedCX );
+    }
 
     // if the style was empty, use some defaults based on the geometry type of the
     // first feature.
-    if ( style.empty() && workingSet.size() > 0 )
+    if ( !point && !line && !polygon && !marker && !extrusion && !text && !model && !icon && workingSet.size() > 0 )
     {
         Feature* first = workingSet.begin()->get();
         Geometry* geom = first->getGeometry();
@@ -191,10 +219,13 @@ GeometryCompiler::compile(FeatureList&          workingSet,
                 point = s_defaultPointSymbol.get(); break;
             case Geometry::TYPE_POLYGON:
                 polygon = s_defaultPolygonSymbol.get(); break;
+            case Geometry::TYPE_UNKNOWN: break;
+            case Geometry::TYPE_MULTI: break;
             }
         }
     }
 
+    // resample the geometry if necessary:
     if (_options.resampleMode().isSet())
     {
         ResampleFilter resample;
@@ -206,13 +237,15 @@ GeometryCompiler::compile(FeatureList&          workingSet,
         sharedCX = resample.push( workingSet, sharedCX );        
     }    
     
+    // check whether we need to do elevation clamping:
     bool altRequired =
+        _options.ignoreAltitudeSymbol() != true &&
         altitude && (
             altitude->clamping() != AltitudeSymbol::CLAMP_NONE ||
             altitude->verticalOffset().isSet() ||
             altitude->verticalScale().isSet() );
 
-    // model substitution
+    // marker substitution -- to be deprecated in favor of model/icon
     if ( marker )
     {
         // use a separate filter context since we'll be munging the data
@@ -244,18 +277,67 @@ GeometryCompiler::compile(FeatureList&          workingSet,
         }
 
         SubstituteModelFilter sub( style );
-        if ( marker->scale().isSet() )
+
+        sub.setClustering( *_options.clustering() );
+
+        sub.setUseDrawInstanced( *_options.instancing() );
+
+        if ( _options.featureName().isSet() )
+            sub.setFeatureNameExpr( *_options.featureName() );
+
+        osg::Node* node = sub.push( workingSet, markerCX );
+        if ( node )
+        {
+            resultGroup->addChild( node );
+        }
+    }
+
+    // instance substitution (replaces marker)
+    else if ( model || icon )
+    {
+        const InstanceSymbol* instance = model ? (const InstanceSymbol*)model : (const InstanceSymbol*)icon;
+
+        // use a separate filter context since we'll be munging the data
+        FilterContext localCX = sharedCX;
+
+        if ( instance->placement() == InstanceSymbol::PLACEMENT_RANDOM   ||
+             instance->placement() == InstanceSymbol::PLACEMENT_INTERVAL )
+        {
+            ScatterFilter scatter;
+            scatter.setDensity( *instance->density() );
+            scatter.setRandom( instance->placement() == InstanceSymbol::PLACEMENT_RANDOM );
+            scatter.setRandomSeed( *instance->randomSeed() );
+            localCX = scatter.push( workingSet, localCX );
+        }
+        else if ( instance->placement() == InstanceSymbol::PLACEMENT_CENTROID )
+        {
+            CentroidFilter centroid;
+            centroid.push( workingSet, localCX );
+        }
+
+        if ( altRequired )
         {
-            //Turn on GL_NORMALIZE so lighting works properly
-            resultGroup->getOrCreateStateSet()->setMode(GL_NORMALIZE, osg::StateAttribute::ON );
-            //sub.setModelMatrix( osg::Matrixd::scale( *marker->scale() ) );
+            AltitudeFilter clamp;
+            clamp.setPropertiesFromStyle( style );
+            localCX = clamp.push( workingSet, localCX );
+
+            // don't set this; we changed the input data.
+            //altRequired = false;
         }
 
+        SubstituteModelFilter sub( style );
+
+        // activate clustering
         sub.setClustering( *_options.clustering() );
+
+        // activate draw-instancing
+        sub.setUseDrawInstanced( *_options.instancing() );
+
+        // activate feature naming
         if ( _options.featureName().isSet() )
             sub.setFeatureNameExpr( *_options.featureName() );
 
-        osg::Node* node = sub.push( workingSet, markerCX );
+        osg::Node* node = sub.push( workingSet, localCX );
         if ( node )
         {
             resultGroup->addChild( node );
@@ -307,6 +389,8 @@ GeometryCompiler::compile(FeatureList&          workingSet,
             filter.mergeGeometry() = *_options.mergeGeometry();
         if ( _options.featureName().isSet() )
             filter.featureName() = *_options.featureName();
+        if ( _options.useVertexBufferObjects().isSet())
+            filter.useVertexBufferObjects() = *_options.useVertexBufferObjects();
 
         osg::Node* node = filter.push( workingSet, sharedCX );
         if ( node )
@@ -333,7 +417,18 @@ GeometryCompiler::compile(FeatureList&          workingSet,
         }
     }
 
-    resultGroup->getOrCreateStateSet()->setMode( GL_BLEND, 1 );
+    // Finally, optimize the stateset-sharing in the group.
+    if ( sharedCX.getSession() )
+    {
+        sharedCX.getSession()->getStateSetCache()->optimize( resultGroup.get() );
+        //OE_INFO << LC << "state set cache size = " << sharedCX.getSession()->getStateSetCache()->size() << std::endl;
+    }
+    else
+    {
+        StateSetCache tempCache;
+        tempCache.optimize( resultGroup.get() );
+    }
+
 
     //osgDB::writeNodeFile( *(resultGroup.get()), "out.osg" );
 
diff --git a/src/osgEarthFeatures/GeometryUtils b/src/osgEarthFeatures/GeometryUtils
index ba3a2dd..d05c9d4 100644
--- a/src/osgEarthFeatures/GeometryUtils
+++ b/src/osgEarthFeatures/GeometryUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,14 +23,22 @@
 #include <osgEarthSymbology/Geometry>
 
 
-namespace osgEarth { namespace Features {
+namespace osgEarth { namespace Features
+{
+    using namespace osgEarth::Symbology;
 
-    extern OSGEARTHFEATURES_EXPORT std::string geometryToWkt( osgEarth::Symbology::Geometry * geometry );
-    extern OSGEARTHFEATURES_EXPORT std::string geometryToJson( osgEarth::Symbology::Geometry * geometry );
-    extern OSGEARTHFEATURES_EXPORT std::string geometryToKml( osgEarth::Symbology::Geometry * geometry );
-    extern OSGEARTHFEATURES_EXPORT std::string geometryToGml( osgEarth::Symbology::Geometry * geometry );
+    namespace GeometryUtils
+    {
+        extern OSGEARTHFEATURES_EXPORT std::string geometryToWKT( Geometry* geometry );
+        extern OSGEARTHFEATURES_EXPORT Geometry*   geometryFromWKT( const std::string& wkt );
 
-}}
+        extern OSGEARTHFEATURES_EXPORT std::string geometryToGeoJSON( Geometry* geometry );
+        extern OSGEARTHFEATURES_EXPORT std::string geometryToKML( Geometry* geometry );
+        extern OSGEARTHFEATURES_EXPORT std::string geometryToGML( Geometry* geometry );
+        extern OSGEARTHFEATURES_EXPORT double getGeometryArea( Geometry* geometry );
+    }
+
+} } // namespace osgEarth::Features
 
 #endif
 
diff --git a/src/osgEarthFeatures/GeometryUtils.cpp b/src/osgEarthFeatures/GeometryUtils.cpp
index c1da15d..46ba8be 100644
--- a/src/osgEarthFeatures/GeometryUtils.cpp
+++ b/src/osgEarthFeatures/GeometryUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,14 @@
 * along with this program.  If not, see <http://www.gnu.org/licenses/>
 */
 
-#include <osgEarthFeatures/OgrUtils>
 #include <osgEarthFeatures/GeometryUtils>
+#include <osgEarthFeatures/OgrUtils>
 
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 
-std::string osgEarth::Features::geometryToWkt( Geometry* geometry )
+std::string
+osgEarth::Features::GeometryUtils::geometryToWKT( Geometry* geometry )
 {
     OGRGeometryH g = OgrUtils::createOgrGeometry( geometry );
     std::string result;
@@ -40,7 +41,8 @@ std::string osgEarth::Features::geometryToWkt( Geometry* geometry )
     return result;
 }
 
-std::string osgEarth::Features::geometryToJson( Geometry* geometry )
+std::string 
+osgEarth::Features::GeometryUtils::geometryToGeoJSON( Geometry* geometry )
 {
     OGRGeometryH g = OgrUtils::createOgrGeometry( geometry );
     std::string result;
@@ -58,7 +60,8 @@ std::string osgEarth::Features::geometryToJson( Geometry* geometry )
     return result;
 }
 
-std::string osgEarth::Features::geometryToKml( Geometry* geometry )
+std::string 
+osgEarth::Features::GeometryUtils::geometryToKML( Geometry* geometry )
 {
     OGRGeometryH g = OgrUtils::createOgrGeometry( geometry );
     std::string result;
@@ -76,7 +79,8 @@ std::string osgEarth::Features::geometryToKml( Geometry* geometry )
     return result;
 }
 
-std::string osgEarth::Features::geometryToGml( Geometry* geometry )
+std::string 
+osgEarth::Features::GeometryUtils::geometryToGML( Geometry* geometry )
 {
     OGRGeometryH g = OgrUtils::createOgrGeometry( geometry );
     std::string result;
@@ -92,4 +96,53 @@ std::string osgEarth::Features::geometryToGml( Geometry* geometry )
         OGR_G_DestroyGeometry( g );
     }
     return result;
-}
\ No newline at end of file
+}
+
+Geometry*
+osgEarth::Features::GeometryUtils::geometryFromWKT( const std::string& wkt )
+{       
+    OGRwkbGeometryType type = 
+        startsWith( wkt, "POINT" ) ? wkbPoint :
+        startsWith( wkt, "LINESTRING" ) ? wkbLineString :
+        startsWith( wkt, "POLYGON" ) ? wkbPolygon :
+        startsWith( wkt, "MULTIPOINT" ) ? wkbMultiPoint :
+        startsWith( wkt, "MULTILINESTRING" ) ? wkbMultiLineString :
+        startsWith( wkt, "MULTIPOLYGON" ) ? wkbMultiPolygon :
+        startsWith( wkt, "GEOMETRYCOLLECTION" ) ? wkbGeometryCollection :
+        wkbNone;
+
+    Symbology::Geometry* output = 0L;
+    if ( type != wkbNone )
+    {
+        OGRGeometryH geom = OGR_G_CreateGeometry( type );
+        if ( geom )
+        {
+            char* ptr = (char*)wkt.c_str();
+            if ( OGRERR_NONE == OGR_G_ImportFromWkt( geom, &ptr ) )
+            {
+                output = OgrUtils::createGeometry( geom );
+                OGR_G_DestroyGeometry( geom );
+            }
+            else
+            {
+                OE_NOTICE
+                    << "OGR Feature Source: malformed WKT geometry" << std::endl;
+            }
+        }
+    }
+    return output;
+}
+
+double
+osgEarth::Features::GeometryUtils::getGeometryArea( Geometry* geometry )
+{
+    OGRGeometryH g = OgrUtils::createOgrGeometry( geometry );
+    
+    double result = 0.0;
+    if (g)
+    {
+        result = OGR_G_GetArea( g );
+        OGR_G_DestroyGeometry( g );
+    }
+    return result;
+}
diff --git a/src/osgEarthFeatures/LabelSource b/src/osgEarthFeatures/LabelSource
index 1ab7d94..f4cf47d 100644
--- a/src/osgEarthFeatures/LabelSource
+++ b/src/osgEarthFeatures/LabelSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -37,12 +37,13 @@ namespace osgEarth { namespace Features
     class OSGEARTHFEATURES_EXPORT LabelSourceOptions : public DriverConfigOptions
     {
     public:
-        LabelSourceOptions( const ConfigOptions& options =ConfigOptions() ) :
-              DriverConfigOptions( options )
-              
-              { fromConfig(_conf); }
-
-    public: // properties
+        LabelSourceOptions( const ConfigOptions& options =ConfigOptions() )
+            : DriverConfigOptions( options )
+        {
+            fromConfig(_conf);
+        }
+        
+        virtual ~LabelSourceOptions() { }
 
     public:
         virtual Config getConfig() const;
@@ -59,7 +60,7 @@ namespace osgEarth { namespace Features
     /**
      * Plugin object that generates text label nodes.
      */
-    class OSGEARTHFEATURES_EXPORT LabelSource : public virtual Revisioned<osg::Object>
+    class OSGEARTHFEATURES_EXPORT LabelSource : public osg::Object, public Revisioned
     {
     public:        
         LabelSource( const LabelSourceOptions& options =LabelSourceOptions() )
@@ -72,9 +73,22 @@ namespace osgEarth { namespace Features
          */
         virtual osg::Node* createNode(
             const FeatureList&   input,
-            const TextSymbol*    symbol,
+            const Style&         style,
             const FilterContext& context ) =0;
 
+        /**
+         * Creates a single labeling node.
+         *
+         * @param text     Text string to put in the label
+         * @param style    Style information for the label
+         *
+         * @return A scene graph node
+         */
+        virtual osg::Node* createNode(
+            const std::string&  text,
+            const Style&        style ) =0;
+
+
     public:
         
         // META_Object specialization:
@@ -106,4 +120,4 @@ namespace osgEarth { namespace Features
 
 } } // namespace osgEarth::Features
 
-#endif // OSGEARTH_FEATURES_LABELSOURCE_H
\ No newline at end of file
+#endif // OSGEARTH_FEATURES_LABELSOURCE_H
diff --git a/src/osgEarthFeatures/LabelSource.cpp b/src/osgEarthFeatures/LabelSource.cpp
index 86d4c05..ab0a537 100644
--- a/src/osgEarthFeatures/LabelSource.cpp
+++ b/src/osgEarthFeatures/LabelSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/LabelSource>
+#include <osgEarth/Registry>
 
 using namespace osgEarth;
 using namespace osgEarth::Features;
@@ -62,14 +63,14 @@ LabelSourceFactory::create( const LabelSourceOptions& options )
     {
         std::string driverExt = std::string(".osgearth_label_") + options.getDriver();
 
-        osg::ref_ptr<osgDB::ReaderWriter::Options> rwopts = new osgDB::ReaderWriter::Options();
+        osg::ref_ptr<osgDB::Options> rwopts = Registry::instance()->cloneOrCreateOptions();
         rwopts->setPluginData( LABEL_SOURCE_OPTIONS_TAG, (void*)&options );
 
         labelSource = dynamic_cast<LabelSource*>( osgDB::readObjectFile( driverExt, rwopts.get() ) );
         if ( labelSource )
         {
             //modelSource->setName( options.getName() );
-            OE_INFO << "Loaded LabelSource driver \"" << options.getDriver() << "\" OK" << std::endl;
+            //OE_INFO << "Loaded LabelSource driver \"" << options.getDriver() << "\" OK" << std::endl;
         }
         else
         {
diff --git a/src/osgEarthFeatures/MeshClamper b/src/osgEarthFeatures/MeshClamper
new file mode 100644
index 0000000..1debd77
--- /dev/null
+++ b/src/osgEarthFeatures/MeshClamper
@@ -0,0 +1,88 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHFEATURES_MESH_CLAMPER_H
+#define OSGEARTHFEATURES_MESH_CLAMPER_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarth/SpatialReference>
+#include <osg/NodeVisitor>
+#include <osg/fast_back_stack>
+
+namespace osgEarth { namespace Features
+{
+    using namespace osgEarth;
+
+    /**
+     * Utility that takes existing OSG geometry and modifies it so that
+     * it "conforms" with a terrain patch.
+     */
+    class OSGEARTHFEATURES_EXPORT MeshClamper : public osg::NodeVisitor
+    {
+    public:
+        /**
+         * Construct a new mesh clamper.
+         *
+         * @param terrainPatch
+         *      Node graph to which to clamp visited geometry.
+         * @param terrainSRS
+         *      Spatial reference of the map represented by the terrain patch.
+         * @param geocentric
+         *      Whether the terrain is geocentric (ECEF)
+         * @param preserveZ
+         *      Whether to preserve the original Z (the height above sea level) as an offset
+         * @param scale
+         *      (optional) Scale factor for the clamped height value
+         * @param offset
+         *      (optional) Static offset for the clamped height value
+         */
+        MeshClamper( 
+            osg::Node*              terrainPatch, 
+            const SpatialReference* terrainSRS, 
+            bool                    geocentric,
+            bool                    preserveZ     =false,
+            double                  scale         =1.0,
+            double                  offset        =0.0 );
+
+        virtual ~MeshClamper() { }
+
+        osg::Node* getTerrainPatch() const { return _terrainPatch.get(); }
+
+        const SpatialReference* getTerrainSRS() const { return _terrainSRS.get(); }
+
+        bool isGeocentric() const { return _geocentric; }
+
+    public: // osg::NodeVisitor
+
+        void apply( osg::Geode& );
+        void apply( osg::Transform& );
+
+    protected:
+        osg::ref_ptr<osg::Node>              _terrainPatch;
+        osg::ref_ptr<const SpatialReference> _terrainSRS;
+        bool                                 _geocentric;
+        bool                                 _preserveZ;
+        double                               _scale;
+        double                               _offset;
+        osg::fast_back_stack<osg::Matrixd>   _matrixStack;
+    };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTHFEATURES_MESH_CLAMPER_H
diff --git a/src/osgEarthFeatures/MeshClamper.cpp b/src/osgEarthFeatures/MeshClamper.cpp
new file mode 100644
index 0000000..4a08325
--- /dev/null
+++ b/src/osgEarthFeatures/MeshClamper.cpp
@@ -0,0 +1,198 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/MeshClamper>
+
+#include <osgEarth/DPLineSegmentIntersector>
+
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+
+#include <osg/TemplatePrimitiveFunctor>
+#include <osg/Geode>
+#include <osg/Geometry>
+#include <osg/UserDataContainer>
+
+#define LC "[MeshClamper] "
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+
+#define ZOFFSETS_NAME "MeshClamper::zOffsets"
+
+//-----------------------------------------------------------------------
+
+MeshClamper::MeshClamper(osg::Node*              terrainPatch,
+                         const SpatialReference* terrainSRS,
+                         bool                    geocentric,
+                         bool                    preserveZ,
+                         double                  scale,
+                         double                  offset) :
+
+osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ),
+_terrainPatch   ( terrainPatch ),
+_terrainSRS     ( terrainSRS ),
+_geocentric     ( geocentric ),
+_preserveZ      ( preserveZ ),
+_scale          ( scale ),
+_offset         ( offset )
+{
+    //nop
+}
+
+void
+MeshClamper::apply( osg::Transform& xform )
+{
+    osg::Matrixd matrix;
+    if ( !_matrixStack.empty() ) matrix = _matrixStack.back();
+    xform.computeLocalToWorldMatrix( matrix, this );
+    _matrixStack.push_back( matrix );
+    traverse(xform);
+    _matrixStack.pop_back();
+}
+
+void
+MeshClamper::apply( osg::Geode& geode )
+{
+    const osg::Matrixd& local2world = _matrixStack.back();
+    osg::Matrix world2local;
+    world2local.invert( local2world );
+
+    const osg::EllipsoidModel* em = _terrainSRS->getEllipsoid();
+    osg::Vec3d n_vector(0,0,1), start, end, msl;
+
+    // use a double-precision intersector b/c our intersection segment will be really long :)
+    DPLineSegmentIntersector* lsi = new DPLineSegmentIntersector(start, end);
+    osgUtil::IntersectionVisitor iv( lsi );
+
+    double r = std::min( em->getRadiusEquator(), em->getRadiusPolar() );
+
+    for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+    {
+        bool geomDirty = false;
+        osg::Geometry* geom = geode.getDrawable(i)->asGeometry();
+        if ( geom )
+        {
+            osg::Vec3Array*  verts = static_cast<osg::Vec3Array*>(geom->getVertexArray());
+            osg::FloatArray* zOffsets = 0L;
+
+            // if preserve-Z is on, check for our elevations array. Create it if is doesn't
+            // already exist.
+            bool buildZOffsets = false;
+            if ( _preserveZ )
+            {
+                osg::UserDataContainer* udc = geom->getOrCreateUserDataContainer();
+                unsigned n = udc->getUserObjectIndex( ZOFFSETS_NAME );
+                if ( n < udc->getNumUserObjects() )
+                {
+                    zOffsets = dynamic_cast<osg::FloatArray*>(udc->getUserObject(n));
+                }
+
+                else
+                {
+                    zOffsets = new osg::FloatArray();
+                    zOffsets->setName( ZOFFSETS_NAME );
+                    zOffsets->reserve( verts->size() );
+                    udc->addUserObject( zOffsets );
+                    buildZOffsets = true;
+                }
+            }
+
+            for( unsigned k=0; k<verts->size(); ++k )
+            {
+                osg::Vec3d vw = (*verts)[k];
+                vw = vw * local2world;
+
+                if ( _geocentric )
+                {
+                    // normal to the ellipsoid:
+                    n_vector = em->computeLocalUpVector(vw.x(),vw.y(),vw.z());
+
+                    // if we need to build to z-offsets array, calculate the z offset now:
+                    if ( buildZOffsets || _scale != 1.0 )
+                    {
+                        double lat,lon,hae;
+                        em->convertXYZToLatLongHeight(vw.x(), vw.y(), vw.z(), lat, lon, hae);
+
+                        if ( buildZOffsets )
+                        {
+                            zOffsets->push_back( float(hae) );
+                        }
+
+                        if ( _scale != 1.0 )
+                        {
+                            msl = vw - n_vector*hae;
+                        }
+                    }
+                }
+
+                else if ( buildZOffsets ) // flat map
+                {
+                    zOffsets->push_back( float(vw.z()) );
+                }
+
+#if 0
+                    // if we're scaling, we need to know the MSL coord
+                    if ( _scale != 1.0 )
+                    {
+                        double lat,lon,height;
+                        em->convertXYZToLatLongHeight(vw.x(), vw.y(), vw.z(), lat, lon, height);
+                        msl = vw - n_vector*height;
+                    }
+                }
+#endif
+
+                lsi->reset();
+                lsi->setStart( vw + n_vector*r*_scale );
+                lsi->setEnd( vw - n_vector*r );
+
+                _terrainPatch->accept( iv );
+
+                if ( lsi->containsIntersections() )
+                {
+                    osg::Vec3d fw = lsi->getFirstIntersection().getWorldIntersectPoint();
+                    if ( _scale != 1.0 )
+                    {
+                        osg::Vec3d delta = fw - msl;
+                        fw += delta*_scale;
+                    }
+                    if ( _offset != 0.0 )
+                    {
+                        fw += n_vector*_offset;
+                    }
+                    if ( _preserveZ )
+                    {
+                        fw += n_vector * (*zOffsets)[k];
+                    }
+
+                    (*verts)[k] = (fw * world2local);
+                    geomDirty = true;
+                }
+            }
+
+            if ( geomDirty )
+            {
+                geom->dirtyBound();
+                if ( geom->getUseVertexBufferObjects() )
+                    verts->dirty();
+                else
+                    geom->dirtyDisplayList();
+            }
+        }
+    }
+}
diff --git a/src/osgEarthFeatures/OgrUtils b/src/osgEarthFeatures/OgrUtils
index 3d7db49..519c455 100644
--- a/src/osgEarthFeatures/OgrUtils
+++ b/src/osgEarthFeatures/OgrUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -32,7 +32,7 @@ using namespace osgEarth::Symbology;
 struct OgrUtils
 {
     static void
-        populate( OGRGeometryH geomHandle, Symbology::Geometry* target, int numPoints )
+    populate( OGRGeometryH geomHandle, Symbology::Geometry* target, int numPoints )
     {
         for( int v = numPoints-1; v >= 0; v-- ) // reverse winding.. we like ccw
         {
@@ -45,7 +45,7 @@ struct OgrUtils
     }
 
     static Symbology::Polygon*
-        createPolygon( OGRGeometryH geomHandle )
+    createPolygon( OGRGeometryH geomHandle )
     {
         Symbology::Polygon* output = 0L;
 
@@ -84,7 +84,7 @@ struct OgrUtils
     }
 
     static Symbology::Geometry*
-        createGeometry( OGRGeometryH geomHandle )
+    createGeometry( OGRGeometryH geomHandle )
     {
         Symbology::Geometry* output = 0L;
 
@@ -149,7 +149,7 @@ struct OgrUtils
     }
 
     static OGRGeometryH
-        encodePart( Geometry* geometry, OGRwkbGeometryType part_type )
+    encodePart( Geometry* geometry, OGRwkbGeometryType part_type )
     {
         OGRGeometryH part_handle = OGR_G_CreateGeometry( part_type );
 
@@ -164,7 +164,7 @@ struct OgrUtils
 
 
     static OGRGeometryH
-        encodeShape( Geometry* geometry, OGRwkbGeometryType shape_type, OGRwkbGeometryType part_type )
+    encodeShape( Geometry* geometry, OGRwkbGeometryType shape_type, OGRwkbGeometryType part_type )
     {
         OGRGeometryH shape_handle = OGR_G_CreateGeometry( shape_type );
         if ( shape_handle )
@@ -204,6 +204,17 @@ struct OgrUtils
             case osgEarth::Symbology::Geometry::TYPE_RING:
                 requestedType = wkbLinearRing;
                 break;            
+            case Geometry::TYPE_UNKNOWN: break;
+            case Geometry::TYPE_MULTI: 
+                {
+                    osgEarth::Symbology::MultiGeometry* multi = dynamic_cast<MultiGeometry*>(geometry);
+                    osgEarth::Symbology::Geometry::Type componentType = multi->getComponentType();
+                    requestedType = componentType == Geometry::TYPE_POLYGON ? wkbMultiPolygon : 
+                                    componentType == Geometry::TYPE_POINTSET ? wkbMultiPoint :
+                                    componentType == Geometry::TYPE_LINESTRING ? wkbMultiLineString :
+                                    wkbNone;                    
+                }
+                break;
             }
         }
 
@@ -224,21 +235,26 @@ struct OgrUtils
             shape_type == wkbMultiPoint25D? wkbPoint25D :
             wkbNone;
 
+        //OE_NOTICE << "shape_type = " << shape_type << " part_type=" << part_type << std::endl;
+
 
         osgEarth::Symbology::MultiGeometry* multi = dynamic_cast<MultiGeometry*>(geometry);
 
         if ( multi )
         {
-            OGRGeometryH group_handle = OGR_G_CreateGeometry( requestedType );
+            OGRGeometryH group_handle = OGR_G_CreateGeometry( wkbGeometryCollection );
+
             for (GeometryCollection::iterator itr = multi->getComponents().begin(); itr != multi->getComponents().end(); ++itr)
             {
                 OGRGeometryH shape_handle = encodeShape( itr->get(), shape_type, part_type );
                 if ( shape_handle )
                 {
-                    if ( OGR_G_AddGeometryDirectly( group_handle, shape_handle ) != OGRERR_NONE )
+                    OGRErr error = OGR_G_AddGeometryDirectly( group_handle, shape_handle );
+                    if ( error != OGRERR_NONE )
                     {
-                        OE_WARN << "OGR_G_AddGeometryDirectly failed!" << std::endl;
-                    }
+                        OE_WARN << "OGR_G_AddGeometryDirectly failed! " << error << std::endl;
+                        OE_WARN << "shape_type = " << shape_type << " part_type=" << part_type << std::endl;
+                    }                    
                 }
             }
 
@@ -251,58 +267,25 @@ struct OgrUtils
         }
     }
 
-    static Symbology::Geometry*
-        createGeometryFromWKT( const std::string& wkt )
-    {       
-        OGRwkbGeometryType type = 
-            startsWith( wkt, "POINT" ) ? wkbPoint :
-            startsWith( wkt, "LINESTRING" ) ? wkbLineString :
-            startsWith( wkt, "POLYGON" ) ? wkbPolygon :
-            startsWith( wkt, "MULTIPOINT" ) ? wkbMultiPoint :
-            startsWith( wkt, "MULTILINESTRING" ) ? wkbMultiLineString :
-            startsWith( wkt, "MULTIPOLYGON" ) ? wkbMultiPolygon :
-            startsWith( wkt, "GEOMETRYCOLLECTION" ) ? wkbGeometryCollection :
-            wkbNone;
-
-        Symbology::Geometry* output = 0L;
-        if ( type != wkbNone )
-        {
-            OGRGeometryH geom = OGR_G_CreateGeometry( type );
-            if ( geom )
-            {
-                char* ptr = (char*)wkt.c_str();
-                if ( OGRERR_NONE == OGR_G_ImportFromWkt( geom, &ptr ) )
-                {
-                    output = createGeometry( geom );
-                    OGR_G_DestroyGeometry( geom );
-                }
-                else
-                {
-                    OE_NOTICE
-                        << "OGR Feature Source: malformed WKT geometry" << std::endl;
-                }
-            }
-        }
-        return output;
-    }
-
-    static Feature* createFeature( OGRFeatureH handle )
+    static Feature* createFeature( OGRFeatureH handle, const SpatialReference* srs )
     {
         long fid = OGR_F_GetFID( handle );
 
-        Feature* feature = new Feature( fid );
-
         OGRGeometryH geomRef = OGR_F_GetGeometryRef( handle );	
+
+        Symbology::Geometry* geom = 0;
+
         if ( geomRef )
         {
-            Symbology::Geometry* geom = OgrUtils::createGeometry( geomRef );
-            feature->setGeometry( geom );
+            geom = OgrUtils::createGeometry( geomRef );
         }
 
+        Feature* feature = new Feature( geom, srs, Style(), fid );
+
         int numAttrs = OGR_F_GetFieldCount(handle); 
         for (int i = 0; i < numAttrs; ++i) 
         { 
-            void* field_handle_ref = OGR_F_GetFieldDefnRef( handle, i ); 
+            OGRFieldDefnH field_handle_ref = OGR_F_GetFieldDefnRef( handle, i ); 
 
             // get the field name and convert to lower case:
             const char* field_name = OGR_Fld_GetNameRef( field_handle_ref ); 
@@ -331,12 +314,6 @@ struct OgrUtils
                         feature->set( name, std::string(value) );
                     }
             }
-                                 
-            //const char* field_value= OGR_F_GetFieldAsString(handle, i); 
-            //std::string value = std::string( field_value); 
-            ////Make the name lower case 
-            //feature->set(name, value);
-            ////feature->setAttr(name, value); 
         } 
 
         return feature;
diff --git a/src/osgEarthFeatures/OptimizerHints b/src/osgEarthFeatures/OptimizerHints
index 13b7214..a68d236 100644
--- a/src/osgEarthFeatures/OptimizerHints
+++ b/src/osgEarthFeatures/OptimizerHints
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -46,6 +46,8 @@ namespace osgEarth { namespace Features
          */
         OptimizerHints( const OptimizerHints& rhs );
 
+        virtual ~OptimizerHints() { }
+
         /**
          * Adds optimizer options that the general optimizer should use.
          */
diff --git a/src/osgEarthFeatures/OptimizerHints.cpp b/src/osgEarthFeatures/OptimizerHints.cpp
index 66b5705..4eb4671 100644
--- a/src/osgEarthFeatures/OptimizerHints.cpp
+++ b/src/osgEarthFeatures/OptimizerHints.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthFeatures/ResampleFilter b/src/osgEarthFeatures/ResampleFilter
index de5980f..b641427 100644
--- a/src/osgEarthFeatures/ResampleFilter
+++ b/src/osgEarthFeatures/ResampleFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,6 +43,17 @@ namespace osgEarth { namespace Features
         ResampleFilter();
         ResampleFilter( double minLength, double maxLength );
 
+        ResampleFilter( const Config& conf );
+
+        /**
+         * Serialize this FeatureFilter
+         */
+        virtual Config getConfig() const;
+
+
+
+        virtual ~ResampleFilter() { }
+
     public:
 
         optional<double>& minLength() { return _minLen; }
diff --git a/src/osgEarthFeatures/ResampleFilter.cpp b/src/osgEarthFeatures/ResampleFilter.cpp
index 342c8bf..196293a 100644
--- a/src/osgEarthFeatures/ResampleFilter.cpp
+++ b/src/osgEarthFeatures/ResampleFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -27,6 +27,8 @@ using namespace osgEarth;
 using namespace osgEarth::Features;
 using namespace osgEarth::Symbology;
 
+OSGEARTH_REGISTER_SIMPLE_FEATUREFILTER(resample, ResampleFilter );
+
 bool
 ResampleFilter::isSupported()
 {
@@ -51,6 +53,29 @@ _resampleMode(RESAMPLE_LINEAR)
     // NOP
 }
 
+ResampleFilter::ResampleFilter( const Config& conf):
+_minLen( 0 ),
+_maxLen( DBL_MAX ),
+_perturbThresh( 0 ),
+_resampleMode(RESAMPLE_LINEAR)
+{
+    if (conf.key() == "resample")
+    {
+        conf.getIfSet( "min_length", _minLen );
+        conf.getIfSet( "max_length", _maxLen );
+    }
+}
+
+Config ResampleFilter::getConfig() const
+{
+    Config config( "resample" );
+    config.addIfSet( "min_length", _minLen);
+    config.addIfSet( "max_length", _maxLen);
+    return config;
+}
+
+
+
 bool
 ResampleFilter::push( Feature* input, FilterContext& context )
 {
diff --git a/src/osgEarthFeatures/ScaleFilter b/src/osgEarthFeatures/ScaleFilter
index 9041d69..f5ff0d6 100644
--- a/src/osgEarthFeatures/ScaleFilter
+++ b/src/osgEarthFeatures/ScaleFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -38,6 +38,8 @@ namespace osgEarth { namespace Features
         ScaleFilter();
         ScaleFilter( double scale );
 
+        virtual ~ScaleFilter() { }
+
         double scale() const { return _scale; }
         double& scale() { return _scale; }
 
diff --git a/src/osgEarthFeatures/ScaleFilter.cpp b/src/osgEarthFeatures/ScaleFilter.cpp
index 2236f78..bf0574b 100644
--- a/src/osgEarthFeatures/ScaleFilter.cpp
+++ b/src/osgEarthFeatures/ScaleFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthFeatures/ScatterFilter b/src/osgEarthFeatures/ScatterFilter
index d8f0c73..24f732f 100644
--- a/src/osgEarthFeatures/ScatterFilter
+++ b/src/osgEarthFeatures/ScatterFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,6 +43,8 @@ namespace osgEarth { namespace Features
     public:
         ScatterFilter();
 
+        virtual ~ScatterFilter() { }
+
         /** Approximate instances per sqkm. */
         void setDensity( float value ) { _density = value; }
         float getDensity() const { return _density; }
diff --git a/src/osgEarthFeatures/ScatterFilter.cpp b/src/osgEarthFeatures/ScatterFilter.cpp
index 95f0aa9..c406908 100644
--- a/src/osgEarthFeatures/ScatterFilter.cpp
+++ b/src/osgEarthFeatures/ScatterFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -73,7 +73,7 @@ ScatterFilter::polyScatter(const Geometry*         input,
         }
 
         double zMin = 0.0;
-        unsigned numInstancesInBoundingRect = areaSqKm * (double)osg::clampAbove( 0.1f, _density );
+        unsigned numInstancesInBoundingRect = (unsigned)(areaSqKm * (double)osg::clampAbove( 0.1f, _density ));
         if ( numInstancesInBoundingRect == 0 )
             continue;
 
@@ -164,7 +164,7 @@ ScatterFilter::lineScatter(const Geometry*         input,
                 seglen_m = seglen_native;
             }
 
-            unsigned numInstances = (seglen_m*0.001) * instPerKm;
+            unsigned numInstances = (unsigned)((seglen_m*0.001) * instPerKm);
             if ( numInstances > 0 )
             {            
                 // a unit vector for scattering points along the segment
diff --git a/src/osgEarthFeatures/Script b/src/osgEarthFeatures/Script
new file mode 100644
index 0000000..b9ce0b4
--- /dev/null
+++ b/src/osgEarthFeatures/Script
@@ -0,0 +1,135 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTH_FEATURES_SCRIPT_H
+#define OSGEARTH_FEATURES_SCRIPT_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osg/ref_ptr>
+#include <list>
+#include <map>
+#include <stdlib.h>
+
+namespace osgEarth { namespace Features
+{
+
+  /** 
+   * Script contains code written in a scripting language (javascript is default).
+   */
+  class OSGEARTHFEATURES_EXPORT Script : public osg::Referenced
+  {
+  public:
+
+    /**
+     * Constructs a new script with code in the specified language.
+     *
+     * @param code
+     *      Source code
+     * @param language
+     *      Script language (default is javascript)
+     * @param name
+     *      Name of the script
+     */
+    Script( const std::string& code="", const std::string& language="javascript", const std::string& name="" ) 
+        : _name(name), _language(language), _code(code) { }
+
+    virtual ~Script() { }
+    
+    /**
+     * Sets the name of this script.
+     *
+     * @param name
+     *      Name of the script
+     */
+    void setName( const std::string& name ) { _name = name; }
+
+    /**
+     * Gets the name of this script.
+     *
+     * @return Name of the script
+     */
+    const std::string& getName() const { return _name; }
+
+    /** 
+     * Sets the scripting language of the code.
+     *
+     * @param language
+     *      Language in which the script is written (e.g., "javascript")
+     */
+    void setLanguage( const std::string& language ) { _language = language; }
+
+    /**
+     * Gets the scripting language the code is written in.
+     *
+     * @return Lanuage in which the script is written (e.g., "javascript")
+     */
+    const std::string& getLanguage() const { return _language; }
+
+    /**
+     * Sets the source code.
+     *
+     * @param code
+     *      Source code
+     */
+    void setCode( const std::string& code ) { _code = code; }
+    
+    /**
+     * Gets the source code.
+     *
+     * @return Source code
+     */
+    const std::string& getCode() const { return _code; }
+
+  private:
+    std::string _name;
+    std::string _language;
+    std::string _code;
+  };
+
+
+  typedef std::list< osg::ref_ptr<Script> > ScriptList;
+  typedef std::map<std::string, osg::ref_ptr<Script> > ScriptMap;
+
+
+  class OSGEARTHFEATURES_EXPORT ScriptResult : public osg::Referenced
+  {
+  public:
+    ScriptResult()
+        : _value(""), _success(false), _msg("Script result not set") {}
+
+    ScriptResult(const std::string& val, bool success=true, const std::string& message="") 
+        : _value(val), _success(success), _msg(message) {}
+
+    bool success() const { return _success; }
+
+    const std::string& message() const { return _msg; }
+
+    std::string asString() { return _value; }
+
+    double asDouble(double defaultValue=0.0) { return _value.length() > 0 ? ::atof(_value.c_str()) : defaultValue; }
+
+  protected:
+    std::string _value;
+    bool        _success;
+    std::string _msg;
+  };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTH_FEATURES_SCRIPT_H
diff --git a/src/osgEarthFeatures/ScriptEngine b/src/osgEarthFeatures/ScriptEngine
new file mode 100644
index 0000000..78a914a
--- /dev/null
+++ b/src/osgEarthFeatures/ScriptEngine
@@ -0,0 +1,112 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_FEATURES_SCRIPTENGINE_H
+#define OSGEARTH_FEATURES_SCRIPTENGINE_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/Script>
+#include <osgEarth/Config>
+
+namespace osgEarth { namespace Features
+{
+  class Feature;
+  class FilterContext;
+
+  /**
+   * Configuration options for a models source.
+   */
+  class OSGEARTHFEATURES_EXPORT ScriptEngineOptions : public DriverConfigOptions
+  {
+  public:
+      ScriptEngineOptions( const ConfigOptions& options =ConfigOptions() ) : 
+        DriverConfigOptions( options ) { fromConfig(_conf); }
+
+    virtual ~ScriptEngineOptions() { }
+
+  public: // properties
+
+      /** optional script source */
+      optional<Script>& script() { return _script; }
+      const optional<Script>& script() const { return _script; }
+
+  public:
+      virtual Config getConfig() const;
+
+  protected:
+      virtual void mergeConfig( const Config& conf );
+      
+  private:
+      void fromConfig( const Config& conf );
+
+      optional<Script> _script;
+  };
+
+  //--------------------------------------------------------------------
+
+  class OSGEARTHFEATURES_EXPORT ScriptEngine : public osg::Object
+  {
+  public:
+    ScriptEngine(const ScriptEngineOptions& options =ScriptEngineOptions()) : _script(options.script()) {}
+
+    virtual ~ScriptEngine() { }
+
+    virtual bool supported(std::string lang) =0;
+    virtual bool supported(Script* script) =0;
+
+    virtual ScriptResult run(Script* script, Feature const* feature=0L, FilterContext const* context=0L) =0;
+    virtual ScriptResult run(const std::string& code, Feature const* feature=0L, FilterContext const* context=0L) =0;
+
+    virtual ScriptResult call(const std::string& function, Feature const* feature=0L, FilterContext const* context=0L) =0;
+
+  public:
+    // META_Object specialization:
+    virtual osg::Object* cloneType() const { return 0; } // cloneType() not appropriate
+    virtual osg::Object* clone(const osg::CopyOp&) const { return 0; } // clone() not appropriate
+    virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const ScriptEngine*>(obj)!=NULL; }
+    virtual const char* className() const { return "ScriptEngine"; }
+    virtual const char* libraryName() const { return "osgEarth::Features"; }
+
+  protected:
+    optional<Script>  _script;
+  };
+
+  typedef std::list< osg::ref_ptr<ScriptEngine> > ScriptEngineList;
+  typedef std::map<std::string, osg::ref_ptr<ScriptEngine> > ScriptEngineMap;
+
+  //--------------------------------------------------------------------
+
+  class OSGEARTHFEATURES_EXPORT ScriptEngineDriver : public osgDB::ReaderWriter
+  {
+  protected:
+    const ScriptEngineOptions& getScriptEngineOptions( const osgDB::ReaderWriter::Options* rwOpt ) const;
+  };
+
+  //--------------------------------------------------------------------
+
+  class OSGEARTHFEATURES_EXPORT ScriptEngineFactory
+  {   
+	public:
+    static ScriptEngine* create( const std::string& language, const std::string& engineName="" );
+    static ScriptEngine* create( const Script& script, const std::string& engineName="" );
+    static ScriptEngine* create( const ScriptEngineOptions& options );
+  };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTH_FEATURES_SCRIPTENGINE_H
diff --git a/src/osgEarthFeatures/ScriptEngine.cpp b/src/osgEarthFeatures/ScriptEngine.cpp
new file mode 100644
index 0000000..6c70825
--- /dev/null
+++ b/src/osgEarthFeatures/ScriptEngine.cpp
@@ -0,0 +1,128 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/ScriptEngine>
+#include <osgEarth/Notify>
+#include <osgEarth/Registry>
+#include <osgDB/ReadFile>
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+
+/****************************************************************/
+
+void
+ScriptEngineOptions::fromConfig( const Config& conf )
+{
+    optional<std::string> val;
+    if (conf.getIfSet<std::string>( "script_code", val))
+    {
+        Script cfgScript(val.get());
+        
+        if (conf.getIfSet<std::string>( "script_language", val ))
+          cfgScript.setLanguage(val.get());
+
+        if (conf.getIfSet<std::string>( "script_name", val ))
+          cfgScript.setName(val.get());
+    }
+}
+
+void
+ScriptEngineOptions::mergeConfig( const Config& conf )
+{
+    DriverConfigOptions::mergeConfig( conf );
+    fromConfig( conf );
+}
+
+Config
+ScriptEngineOptions::getConfig() const
+{
+    Config conf = DriverConfigOptions::getConfig();
+
+    if (_script.isSet())
+    {
+      if (!_script->getCode().empty()) conf.update("script_code", _script->getCode());
+      if (!_script->getLanguage().empty()) conf.update("script_language", _script->getLanguage());
+      if (!_script->getName().empty()) conf.update("script_name", _script->getName());
+    }
+
+    return conf;
+}
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[ScriptEngineFactory] "
+#define SCRIPT_ENGINE_OPTIONS_TAG "__osgEarth::Features::ScriptEngineOptions"
+
+ScriptEngine*
+ScriptEngineFactory::create( const std::string& language, const std::string& engineName )
+{
+  ScriptEngineOptions opts;
+  opts.setDriver(language + (engineName.empty() ? "" : (std::string("_") + engineName)));
+
+  return create(opts);
+}
+
+ScriptEngine*
+ScriptEngineFactory::create( const Script& script, const std::string& engineName )
+{
+  ScriptEngineOptions opts;
+  opts.setDriver(script.getLanguage() + (engineName.empty() ? "" : (std::string("_") + engineName)));
+  opts.script() = script;
+
+  return create(opts);
+}
+
+ScriptEngine*
+ScriptEngineFactory::create( const ScriptEngineOptions& options )
+{
+    ScriptEngine* scriptEngine = 0L;
+
+    if ( !options.getDriver().empty() )
+    {
+        std::string driverExt = std::string(".osgearth_scriptengine_") + options.getDriver();
+
+        osg::ref_ptr<osgDB::Options> rwopts = Registry::instance()->cloneOrCreateOptions();
+        rwopts->setPluginData( SCRIPT_ENGINE_OPTIONS_TAG, (void*)&options );
+
+        scriptEngine = dynamic_cast<ScriptEngine*>( osgDB::readObjectFile( driverExt, rwopts.get() ) );
+        if ( scriptEngine )
+        {
+            OE_INFO << "Loaded ScriptEngine driver \"" << options.getDriver() << "\" OK" << std::endl;
+        }
+        else
+        {
+            OE_WARN << "FAIL, unable to load ScriptEngine driver for \"" << options.getDriver() << "\"" << std::endl;
+        }
+    }
+    else
+    {
+        OE_WARN << LC << "FAIL, illegal null driver specification" << std::endl;
+    }
+
+    return scriptEngine;
+}
+
+//------------------------------------------------------------------------
+
+const ScriptEngineOptions&
+ScriptEngineDriver::getScriptEngineOptions( const osgDB::ReaderWriter::Options* options ) const
+{
+    return *static_cast<const ScriptEngineOptions*>( options->getPluginData( SCRIPT_ENGINE_OPTIONS_TAG ) );
+}
diff --git a/src/osgEarthFeatures/Session b/src/osgEarthFeatures/Session
index cc72194..1b39387 100644
--- a/src/osgEarthFeatures/Session
+++ b/src/osgEarthFeatures/Session
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,8 +21,9 @@
 #define OSGEARTH_FEATURES_SESSION_H 1
 
 #include <osgEarthFeatures/Common>
-#include <osgEarthSymbology/ResourceCache>
-#include <osgEarthSymbology/Style>
+#include <osgEarthFeatures/ScriptEngine>
+#include <osgEarthSymbology/StyleSheet>
+#include <osgEarth/StateSetCache>
 #include <osgEarth/ThreadingUtils>
 #include <osgEarth/Map>
 
@@ -31,6 +32,8 @@ namespace osgEarth { namespace Features
     using namespace osgEarth;
     using namespace osgEarth::Symbology;
 
+    class FeatureSource;
+
     /**
      * Session is a state object that exists throughout the life of one or more related
      * feature compilations.
@@ -50,7 +53,8 @@ namespace osgEarth { namespace Features
         /**
          * Constructs a new Session that is tied to a map
          */
-        Session( const Map* map, StyleSheet* styles =0L );
+        Session( const Map* map, StyleSheet* styles =0L, FeatureSource* source =0L, const osgDB::Options* dbOptions =0L );
+        virtual ~Session();
 
         /**
          * URI Context for relative path resolution.
@@ -72,51 +76,96 @@ namespace osgEarth { namespace Features
         void setStyles( StyleSheet* value );
         StyleSheet* styles() const { return _styles.get(); }
 
-        ///** Session-global resource cache. Careful. */
-        //ResourceCache* resourceCache() { return _resourceCache.get(); }
-        //const ResourceCache* resourceCache() const { return _resourceCache.get(); }
+        /** Gets the current feature source */
+        FeatureSource* getFeatureSource() const;
 
-    public: // URIResolver
-        
-        /**
-         * Resolves a URI based on the reference URI. You can use this method
-         * to create an absolute URI from a relative one, for example.
-         */
-        //std::string resolveURI( const std::string& inputURI ) const;
+        /** The I/O options for operations within this session */
+        const osgDB::Options* getDBOptions() const;
 
     public:
+        template<typename T>
+        struct CreateFunctor {
+            virtual T* operator()() const =0;
+        };
+
         /**
          * Stores an object in the shared Session cache.
          *
          * WARNING! Don't store things like nodes in here unless you plan
          * to clone them. This is a multi-threaded store.
+         *
+         * Returns the object written, OR the already-existing object if overwrite = false
+         * and the key was already taken.
          */
-        void putObject( const std::string& key, osg::Referenced* object );
+        template<typename T>
+        T* putObject( const std::string& key, T* object, bool overwrite =true ) {
+            //Threading::ScopedWriteLock lock( _objMapMutex );
+            Threading::ScopedMutexLock lock( _objMapMutex );
+            ObjectMap::iterator i = _objMap.find(key);
+            if ( i != _objMap.end() && !overwrite )
+                return dynamic_cast<T*>(i->second.get());
+            _objMap[key] = object;
+            return object;
+        }
 
         /**
          * Gets an object from the shared Session cache.
+         * (returns a ref_ptr so as not to lose its ref in a multi-threaded app)
          */
-        template<typename T> T* getObject( const std::string& key ) {
-            Threading::ScopedReadLock lock( _objMapMutex );
+        template<typename T>
+        osg::ref_ptr<T> getObject( const std::string& key ) {
+            //Threading::ScopedReadLock lock( _objMapMutex );
+            Threading::ScopedMutexLock lock( _objMapMutex );
             ObjectMap::const_iterator i = _objMap.find(key);
             return i != _objMap.end() ? dynamic_cast<T*>( i->second.get() ) : 0L;
         }
 
+        template<typename T>
+        bool getOrCreateObject(const std::string& key, osg::ref_ptr<T>& output, const CreateFunctor<T>& create) {
+            Threading::ScopedMutexLock lock( _objMapMutex );
+            ObjectMap::const_iterator i = _objMap.find(key);
+            if ( i != _objMap.end() ) {
+                output = dynamic_cast<T*>( i->second.get() );
+                return true;
+            }
+            else {
+                T* object = create();
+                if ( object ) {
+                    _objMap[key] = object;
+                    output = object;
+                    return true;
+                }
+                else {
+                    return false;
+                }
+            }
+        }
+
         void removeObject( const std::string& key );
 
-    private:
+    public:
+        /**
+         * The cache for optimizing stateset sharing within a session
+         */
+        StateSetCache* getStateSetCache() { return _stateSetCache.get(); }
 
-        //osg::ref_ptr<ResourceCache> _resourceCache;
+    public:
+      ScriptEngine* getScriptEngine() const;
 
+    private:
         typedef std::map<std::string, osg::ref_ptr<osg::Referenced> > ObjectMap;
         ObjectMap                    _objMap;
-        Threading::ReadWriteMutex    _objMapMutex;
-
-        URIContext                     _uriContext;
-        osg::ref_ptr<const Map>        _map;
-        MapInfo                        _mapInfo;
-        //std::string                    _referenceURI;
-        osg::ref_ptr<StyleSheet>       _styles;
+        //Threading::ReadWriteMutex    _objMapMutex;
+        Threading::Mutex             _objMapMutex;
+
+        URIContext                         _uriContext;
+        osg::observer_ptr<const Map>       _map;
+        MapInfo                            _mapInfo;
+        osg::ref_ptr<StyleSheet>           _styles;
+        osg::ref_ptr<const osgDB::Options> _dbOptions;
+        osg::ref_ptr<ScriptEngine>         _styleScriptEngine;
+        osg::ref_ptr<FeatureSource>        _featureSource;
+        osg::ref_ptr<StateSetCache>        _stateSetCache;
     };
 
 } }
diff --git a/src/osgEarthFeatures/Session.cpp b/src/osgEarthFeatures/Session.cpp
index 430a56f..f8e1992 100644
--- a/src/osgEarthFeatures/Session.cpp
+++ b/src/osgEarthFeatures/Session.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,8 +18,10 @@
  */
 
 #include <osgEarthFeatures/Session>
+#include <osgEarthFeatures/Script>
+#include <osgEarthFeatures/ScriptEngine>
+#include <osgEarthFeatures/FeatureSource>
 #include <osgEarth/FileUtils>
-#include <osgEarth/HTTPClient>
 #include <osgEarth/StringUtils>
 #include <osg/AutoTransform>
 #include <osg/Depth>
@@ -32,31 +34,35 @@ using namespace osgEarth::Features;
 
 //---------------------------------------------------------------------------
 
-Session::Session( const Map* map, StyleSheet* styles ) :
+Session::Session( const Map* map, StyleSheet* styles, FeatureSource* source, const osgDB::Options* dbOptions ) :
 osg::Referenced( true ),
 _map           ( map ),
-_mapInfo       ( map )
-//_resourceCache ( new ResourceCache(true) ) // make is thread-safe.
+_mapInfo       ( map ),
+_featureSource ( source ),
+_dbOptions     ( dbOptions )
 {
     if ( styles )
         setStyles( styles );
     else
         _styles = new StyleSheet();
+
+    // if the caller did not provide a dbOptions, take it from the map.
+    if ( map && !dbOptions )
+        _dbOptions = map->getDBOptions();
+
+    // a new cache to optimize state changes.
+    _stateSetCache = new StateSetCache();
 }
 
-#if 0
-void
-Session::setReferenceURI( const std::string& referenceURI )
+Session::~Session()
 {
-    _referenceURI = referenceURI;
 }
 
-std::string
-Session::resolveURI( const std::string& inputURI ) const
+const osgDB::Options*
+Session::getDBOptions() const
 {
-    return osgEarth::getFullPath( _referenceURI, inputURI );
+    return _dbOptions.get();
 }
-#endif
 
 MapFrame
 Session::createMapFrame( Map::ModelParts parts ) const
@@ -65,23 +71,10 @@ Session::createMapFrame( Map::ModelParts parts ) const
 }
 
 void
-Session::putObject( const std::string& key, osg::Referenced* object )
-{
-    //if ( dynamic_cast<osg::Node*>( object ) )
-    //{
-    //    OE_INFO << LC << "*** usage warning: storing an osg::Node in the Session cache is bad news;"
-    //        << " live graph iterators can be invalidated." 
-    //        << std::endl;
-    //}
-
-    Threading::ScopedWriteLock lock( _objMapMutex );
-    _objMap[key] = object;
-}
-
-void
 Session::removeObject( const std::string& key )
 {
-    Threading::ScopedWriteLock lock( _objMapMutex );
+    Threading::ScopedMutexLock lock( _objMapMutex );
+    //Threading::ScopedWriteLock lock( _objMapMutex );
     _objMap.erase( key );
 }
 
@@ -89,4 +82,22 @@ void
 Session::setStyles( StyleSheet* value )
 {
     _styles = value ? value : new StyleSheet();
+
+    // Go ahead and create the script engine for the StyleSheet
+    if (_styles && _styles->script())
+      _styleScriptEngine = ScriptEngineFactory::create(Script(_styles->script()->code, _styles->script()->language, _styles->script()->name));
+    else
+      _styleScriptEngine = 0L;
+}
+
+ScriptEngine*
+Session::getScriptEngine() const
+{
+  return _styleScriptEngine.get();
+}
+
+FeatureSource*
+Session::getFeatureSource() const 
+{ 
+	return _featureSource.get(); 
 }
diff --git a/src/osgEarthFeatures/SubstituteModelFilter b/src/osgEarthFeatures/SubstituteModelFilter
index ed327dd..b01dc86 100644
--- a/src/osgEarthFeatures/SubstituteModelFilter
+++ b/src/osgEarthFeatures/SubstituteModelFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@
 #include <osgEarthFeatures/Filter>
 #include <osgEarthSymbology/Style>
 #include <osgEarthSymbology/MarkerResource>
-#include <osgEarth/Utils>
+#include <osgEarth/Containers>
 
 namespace osgEarth { namespace Features
 {
@@ -57,18 +57,20 @@ namespace osgEarth { namespace Features
         /** Construct a new sub-model filter that will operate on the given style */
         SubstituteModelFilter( const Style& style =Style() );
 
+        virtual ~SubstituteModelFilter() { }
+
         /** Whether to cluster all the model instances into a single geode. Default is false. */
         void setClustering( bool value ) { _cluster = value; }
         bool getClustering() const { return _cluster; }
 
+        /** Whether to convert model instances to use "DrawInstanced" instead of transforms. Default is false */
+        void setUseDrawInstanced( bool value ) { _useDrawInstanced = value; }
+        bool getUseDrawInstanced() const { return _useDrawInstanced; }
+
         /** Whether to merge marker geometries into geodes */
         void setMergeGeometry( bool value ) { _merge = value; }
         bool getMergeGeometry() const { return _merge; }
 
-        /** The matrix with which to transform each model instance after placement. */
-        //void setModelMatrix( const osg::Matrixd& value ) { _modelMatrix = value; }
-        //const osg::Matrixd& getModelMatrix() const { return _modelMatrix; }
-
         void setFeatureNameExpr( const StringExpression& expr ) { _featureNameExpr = expr; }
         const StringExpression& getFeatureNameExpr() const { return _featureNameExpr; }
 
@@ -77,17 +79,21 @@ namespace osgEarth { namespace Features
         virtual osg::Node* push( FeatureList& input, FilterContext& context );
 
     protected:
-        Style                     _style;
-        bool                      _cluster;
-        bool                      _merge;
-        //osg::Matrixd              _modelMatrix;
-        StringExpression          _featureNameExpr;
+        Style                         _style;
+        bool                          _cluster;
+        bool                          _useDrawInstanced;
+        bool                          _merge;
+        StringExpression              _featureNameExpr;
+        osg::ref_ptr<ResourceLibrary> _resourceLib;
+        bool                          _normalScalingRequired;
 
-        typedef LRUCache<URI, osg::ref_ptr<MarkerResource> > MarkerCache;
-        MarkerCache _markerCache;
+        typedef LRUCache<URI, osg::ref_ptr<InstanceResource> > InstanceCache;
+        InstanceCache _instanceCache;
+        
+        bool process(const FeatureList& features, const InstanceSymbol* symbol, Session* session, osg::Group* ap, FilterContext& context );
+        bool cluster(const FeatureList& features, const InstanceSymbol* symbol, Session* session, osg::Group* ap, FilterContext& context );
         
-        bool process(const FeatureList& features, const MarkerSymbol* symbol, Session* session, osg::Group* ap, FilterContext& context );
-        bool cluster(const FeatureList& features, const MarkerSymbol* symbol, Session* session, osg::Group* ap, FilterContext& context );
+        InstanceResource* findResource( const URI& instanceURI, const InstanceSymbol* symbol, FilterContext& context, std::set<URI>& missing ) ;
     };
 
 } } // namespace osgEarth::Features
diff --git a/src/osgEarthFeatures/SubstituteModelFilter.cpp b/src/osgEarthFeatures/SubstituteModelFilter.cpp
index 4934c3d..4640c9e 100644
--- a/src/osgEarthFeatures/SubstituteModelFilter.cpp
+++ b/src/osgEarthFeatures/SubstituteModelFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,15 +17,28 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthFeatures/SubstituteModelFilter>
+#include <osgEarthFeatures/FeatureSourceIndexNode>
 #include <osgEarthSymbology/MeshConsolidator>
-#include <osgEarth/HTTPClient>
 #include <osgEarth/ECEF>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/ShaderGenerator>
+#include <osgEarth/DrawInstanced>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+
 #include <osg/AutoTransform>
 #include <osg/Drawable>
 #include <osg/Geode>
 #include <osg/MatrixTransform>
 #include <osg/NodeVisitor>
+#include <osg/ShapeDrawable>
+
+#include <osgDB/FileNameUtils>
+#include <osgDB/Registry>
+
 #include <osgUtil/Optimizer>
+#include <osgUtil/MeshOptimizers>
+
 #include <list>
 #include <deque>
 
@@ -45,49 +58,98 @@ namespace
 //------------------------------------------------------------------------
 
 SubstituteModelFilter::SubstituteModelFilter( const Style& style ) :
-_style   ( style ),
-_cluster ( false ),
-_merge   ( true )
+_style                ( style ),
+_cluster              ( false ),
+_useDrawInstanced     ( false ),
+_merge                ( true ),
+_normalScalingRequired( false )
 {
     //NOP
 }
 
+InstanceResource*
+SubstituteModelFilter::findResource(const URI&            uri,
+                                    const InstanceSymbol* symbol, 
+                                    FilterContext&        context, 
+                                    std::set<URI>&        missing ) 
+{
+    // find the corresponding marker in the cache
+    InstanceResource* instance = 0L;
+    InstanceCache::Record rec = _instanceCache.get( uri );
+
+    if ( rec.valid() )
+    {
+        // found it in the cache:
+        instance = rec.value();
+    }
+    else if ( _resourceLib.valid() )
+    {
+        // look it up in the resource library:
+        instance = _resourceLib->getInstance( uri.base(), context.getDBOptions() );
+    }
+    else
+    {
+        // create it on the fly:
+        OE_DEBUG << "New resource (not in the cache!)" << std::endl;
+        instance = symbol->createResource();
+        instance->uri() = uri;
+        _instanceCache.insert( uri, instance );
+    }
+
+    // failed to find the instance.
+    if ( instance == 0L )
+    {
+        if ( missing.find(uri) == missing.end() )
+        {
+            missing.insert(uri);
+            OE_WARN << LC << "Failed to locate resource: " << uri.full() << std::endl;
+        }
+    }
+
+    return instance;
+}
+
 bool
-SubstituteModelFilter::process(const FeatureList&           features,                               
-                               const MarkerSymbol*          symbol,
+SubstituteModelFilter::process(const FeatureList&           features,
+                               const InstanceSymbol*        symbol,
                                Session*                     session,
                                osg::Group*                  attachPoint,
                                FilterContext&               context )
 {
+    // Establish SRS information:
     bool makeECEF = context.getSession()->getMapInfo().isGeocentric();
+    const SpatialReference* targetSRS = context.getSession()->getMapInfo().getSRS();
 
     // first, go through the features and build the model cache. Apply the model matrix' scale
     // factor to any AutoTransforms directly (cloning them as necessary)
     std::map< std::pair<URI, float>, osg::ref_ptr<osg::Node> > uniqueModels;
-    //std::map< Feature*, osg::ref_ptr<osg::Node> > featureModels;
+
+    // keep track of failed URIs so we don't waste time or warning messages on them
+    std::set< URI > missing;
 
     StringExpression  uriEx   = *symbol->url();
     NumericExpression scaleEx = *symbol->scale();
 
+    const ModelSymbol* modelSymbol = dynamic_cast<const ModelSymbol*>(symbol);
+    const IconSymbol*  iconSymbol  = dynamic_cast<const IconSymbol*> (symbol);
+
+    NumericExpression headingEx;
+    if ( modelSymbol )
+        headingEx = *modelSymbol->heading();
+
+
     for( FeatureList::const_iterator f = features.begin(); f != features.end(); ++f )
     {
         Feature* input = f->get();
 
-        // evaluate the marker URI expression:
+        // evaluate the instance URI expression:
         StringExpression uriEx = *symbol->url();
-        URI markerURI( input->eval(uriEx), uriEx.uriContext() );
+        URI instanceURI( input->eval(uriEx, &context), uriEx.uriContext() );
 
         // find the corresponding marker in the cache
-        MarkerResource* marker = 0L;
-        MarkerCache::Record rec = _markerCache.get( markerURI );
-        if ( rec.valid() ) {
-            marker = rec.value();
-        }
-        else {
-            marker = new MarkerResource();
-            marker->uri() = markerURI;
-            _markerCache.insert( markerURI, marker );
-        }
+        InstanceResource* instance = findResource( instanceURI, symbol, context, missing );
+        if ( !instance )
+            continue;
 
         // evalute the scale expression (if there is one)
         float scale = 1.0f;
@@ -95,18 +157,41 @@ SubstituteModelFilter::process(const FeatureList&           features,
 
         if ( symbol->scale().isSet() )
         {
-            scale = input->eval( scaleEx );
+            scale = input->eval( scaleEx, &context );
             if ( scale == 0.0 )
                 scale = 1.0;
+            if ( scale != 1.0 )
+                _normalScalingRequired = true;
             scaleMatrix = osg::Matrix::scale( scale, scale, scale );
         }
+        
+        osg::Matrixd rotationMatrix;
+#if 0
+        if ( symbol->orientation().isSet() )
+        {
+            osg::Vec3d hpr = *symbol->orientation();
+            //Rotation in HPR
+            //Apply the rotation            
+            rotationMatrix.makeRotate( 
+                osg::DegreesToRadians(hpr.y()), osg::Vec3(1,0,0),
+                osg::DegreesToRadians(hpr.x()), osg::Vec3(0,0,1),
+                osg::DegreesToRadians(hpr.z()), osg::Vec3(0,1,0) );
+        }
+#endif
+
+        if ( modelSymbol && modelSymbol->heading().isSet() )
+        {
+            float heading = input->eval(headingEx, &context);
+            rotationMatrix.makeRotate( osg::Quat(osg::DegreesToRadians(heading), osg::Vec3(0,0,1)) );
+        }
 
         // how that we have a marker source, create a node for it
-        std::pair<URI,float> key( markerURI, scale );
+        std::pair<URI,float> key( instanceURI, scale );
+
         osg::ref_ptr<osg::Node>& model = uniqueModels[key];
         if ( !model.valid() )
         {
-            model = context.resourceCache()->getMarkerNode( marker );
+            model = context.resourceCache()->getInstanceNode( instance );
 
             if ( scale != 1.0f && dynamic_cast<osg::AutoTransform*>( model.get() ) )
             {
@@ -131,6 +216,12 @@ SubstituteModelFilter::process(const FeatureList&           features,
             {
                 Geometry* geom = gi.next();
 
+                // if necessary, transform the points to the target SRS:
+                if ( !makeECEF && !targetSRS->isEquivalentTo(context.profile()->getSRS()) )
+                {
+                    context.profile()->getSRS()->transform( geom->asVector(), targetSRS );
+                }
+
                 for( unsigned i=0; i<geom->size(); ++i )
                 {
                     osg::Matrixd mat;
@@ -142,25 +233,29 @@ SubstituteModelFilter::process(const FeatureList&           features,
                         // could take a shortcut and just use the current extent's local2world matrix for this,
                         // but if the tile is big enough the up vectors won't be quite right.
                         osg::Matrixd rotation;
-                        ECEF::transformAndGetRotationMatrix( context.profile()->getSRS(), point, point, rotation );
-                        mat = rotation * scaleMatrix * osg::Matrixd::translate( point ) * _world2local;
+                        ECEF::transformAndGetRotationMatrix( point, context.profile()->getSRS(), point, rotation );
+                        mat = rotationMatrix * rotation * scaleMatrix * osg::Matrixd::translate( point ) * _world2local;
                     }
                     else
                     {
-                        mat = scaleMatrix * osg::Matrixd::translate( point ) * _world2local;
+                        mat = rotationMatrix * scaleMatrix *  osg::Matrixd::translate( point ) * _world2local;
                     }
 
                     osg::MatrixTransform* xform = new osg::MatrixTransform();
                     xform->setMatrix( mat );
-
+                    xform->setDataVariance( osg::Object::STATIC );
                     xform->addChild( model.get() );
-
                     attachPoint->addChild( xform );
 
+                    if ( context.featureIndex() && !_useDrawInstanced )
+                    {
+                        context.featureIndex()->tagNode( xform, input->getFID() );
+                    }
+
                     // name the feature if necessary
                     if ( !_featureNameExpr.empty() )
                     {
-                        const std::string& name = input->eval( _featureNameExpr );
+                        const std::string& name = input->eval( _featureNameExpr, &context);
                         if ( !name.empty() )
                             xform->setName( name );
                     }
@@ -169,6 +264,20 @@ SubstituteModelFilter::process(const FeatureList&           features,
         }
     }
 
+    if ( _useDrawInstanced && Registry::capabilities().supportsDrawInstanced() )
+    {
+        DrawInstanced::convertGraphToUseDrawInstanced( attachPoint );
+
+        // install a shader program to render draw-instanced.
+        VirtualProgram* p = DrawInstanced::createDrawInstancedProgram();
+        attachPoint->getOrCreateStateSet()->setAttributeAndModes( p, osg::StateAttribute::ON );
+    }
+
+    // Generate shader code to render the models
+    StateSetCache* cache = context.getSession() ? context.getSession()->getStateSetCache() : 0L;
+    ShaderGenerator gen( cache );
+    attachPoint->accept( gen );
+
     return true;
 }
 
@@ -177,113 +286,154 @@ SubstituteModelFilter::process(const FeatureList&           features,
 
 struct ClusterVisitor : public osg::NodeVisitor
 {
-        ClusterVisitor( const FeatureList& features, const MarkerSymbol* symbol, FeaturesToNodeFilter* f2n, FilterContext& cx )
-            : _features   ( features ),
-              _symbol     ( symbol ),
-              //_modelMatrix( modelMatrix ),
-              _f2n        ( f2n ),
-              _cx         ( cx ),
-              osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
-        {
-            //nop
-        }
+    ClusterVisitor( const FeatureList& features, const InstanceSymbol* symbol, FeaturesToNodeFilter* f2n, FilterContext& cx )
+        : _features   ( features ),
+          _symbol     ( symbol ),
+          _f2n        ( f2n ),
+          _cx         ( cx ),
+          osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN )
+    {
+        _modelSymbol = dynamic_cast<const ModelSymbol*>( symbol );
+        if ( _modelSymbol )
+            _headingExpr = *_modelSymbol->heading();
 
-        void apply( osg::Geode& geode )
-        {
-            bool makeECEF = _cx.getSession()->getMapInfo().isGeocentric();
-            const SpatialReference* srs = _cx.profile()->getSRS();
+        _scaleExpr = *_symbol->scale();
+
+        _makeECEF  = _cx.getSession()->getMapInfo().isGeocentric();
+        _srs       = _cx.profile()->getSRS();
+        _targetSRS = _cx.getSession()->getMapInfo().getSRS();
+    }
 
-            NumericExpression scaleEx = *_symbol->scale();
-            osg::Matrixd scaleMatrix;
+    void apply( osg::Geode& geode )
+    {
+        // save the geode's drawables..
+        osg::Geode::DrawableList old_drawables = geode.getDrawableList();
 
-            // save the geode's drawables..
-            osg::Geode::DrawableList old_drawables = geode.getDrawableList();
+        //OE_DEBUG << "ClusterVisitor geode " << &geode << " featureNode=" << _featureNode << " drawables=" << old_drawables.size() << std::endl;
 
-            // ..and clear out the drawables list.
-            geode.removeDrawables( 0, geode.getNumDrawables() );
+        // ..and clear out the drawables list.
+        geode.removeDrawables( 0, geode.getNumDrawables() );
+
+#if 0
+        // ... and remove all drawables from the feature node
+        for( osg::Geode::DrawableList::iterator i = old_drawables.begin(); i != old_drawables.end(); i++ )
+            _featureNode->removeDrawable(i->get());
+#endif
 
-            // foreach each drawable that was originally in the geode...
-            for( osg::Geode::DrawableList::iterator i = old_drawables.begin(); i != old_drawables.end(); i++ )
+        // foreach each drawable that was originally in the geode...
+        for( osg::Geode::DrawableList::iterator i = old_drawables.begin(); i != old_drawables.end(); i++ )
+        {
+            osg::Geometry* originalDrawable = dynamic_cast<osg::Geometry*>( i->get() );
+            if ( !originalDrawable )
+                continue;
+
+            // go through the list of input features...
+            for( FeatureList::const_iterator j = _features.begin(); j != _features.end(); j++ )
             {
-                osg::Geometry* originalDrawable = dynamic_cast<osg::Geometry*>( i->get() );
-                if ( !originalDrawable )
-                    continue;
+                Feature* feature = j->get();
 
-                // go through the list of input features...
-                for( FeatureList::const_iterator j = _features.begin(); j != _features.end(); j++ )
+                osg::Matrixd scaleMatrix;
+
+                if ( _symbol->scale().isSet() )
                 {
-                    const Feature* feature = j->get();
+                    double scale = feature->eval( _scaleExpr, &_cx );
+                    scaleMatrix.makeScale( scale, scale, scale );
+                }
 
-                    if ( _symbol->scale().isSet() )
+                osg::Matrixd rotationMatrix;
+#if 0
+                if ( _symbol->orientation().isSet() )
+                {
+                    osg::Vec3d hpr = *_symbol->orientation();
+                    //Rotation in HPR
+                    //Apply the rotation            
+                    rotationMatrix.makeRotate( 
+                        osg::DegreesToRadians(hpr.y()), osg::Vec3(1,0,0),
+                        osg::DegreesToRadians(hpr.x()), osg::Vec3(0,0,1),
+                        osg::DegreesToRadians(hpr.z()), osg::Vec3(0,1,0) );            
+                }
+#endif
+                if ( _modelSymbol && _modelSymbol->heading().isSet() )
+                {
+                    float heading = feature->eval( _headingExpr, &_cx );
+                    rotationMatrix.makeRotate( osg::Quat(osg::DegreesToRadians(heading), osg::Vec3(0,0,1)) );
+                }
+
+                GeometryIterator gi( feature->getGeometry(), false );
+                while( gi.hasMore() )
+                {
+                    Geometry* geom = gi.next();
+
+                    // if necessary, transform the points to the target SRS:
+                    if ( !_makeECEF && !_targetSRS->isEquivalentTo(_srs) )
                     {
-                        double scale = feature->eval( scaleEx );
-                        scaleMatrix.makeScale( scale, scale, scale );
+                        _srs->transform( geom->asVector(), _targetSRS );
                     }
 
-                    ConstGeometryIterator gi( feature->getGeometry(), false );
-                    while( gi.hasMore() )
+                    for( Geometry::const_iterator k = geom->begin(); k != geom->end(); ++k )
                     {
-                        const Geometry* geom = gi.next();
+                        osg::Vec3d   point = *k;
+                        osg::Matrixd mat;
 
-                        for( Geometry::const_iterator k = geom->begin(); k != geom->end(); ++k )
+                        if ( _makeECEF )
+                        {
+                            osg::Matrixd rotation;
+                            ECEF::transformAndGetRotationMatrix( point, _srs, point, rotation );
+                            mat = rotationMatrix * rotation * scaleMatrix * osg::Matrixd::translate(point) * _f2n->world2local();
+                        }
+                        else
                         {
-                            osg::Vec3d   point = *k;
-                            osg::Matrixd mat;
+                            mat = rotationMatrix * scaleMatrix * osg::Matrixd::translate(point) * _f2n->world2local();
+                        }
 
-                            if ( makeECEF )
-                            {
-                                osg::Matrixd rotation;
-                                ECEF::transformAndGetRotationMatrix( srs, point, point, rotation );
-                                mat = rotation * scaleMatrix * osg::Matrixd::translate(point) * _f2n->world2local();
-                            }
-                            else
+                        // clone the source drawable once for each input feature.
+                        osg::ref_ptr<osg::Geometry> newDrawable = osg::clone( 
+                            originalDrawable, 
+                            osg::CopyOp::DEEP_COPY_ARRAYS | osg::CopyOp::DEEP_COPY_PRIMITIVES );
+
+                        osg::Vec3Array* verts = dynamic_cast<osg::Vec3Array*>( newDrawable->getVertexArray() );
+                        if ( verts )
+                        {
+                            for( osg::Vec3Array::iterator v = verts->begin(); v != verts->end(); ++v )
                             {
-                                mat = scaleMatrix * osg::Matrixd::translate(point) * _f2n->world2local();
+                                (*v).set( (*v) * mat );
                             }
 
-                            // clone the source drawable once for each input feature.
-                            osg::ref_ptr<osg::Geometry> newDrawable = osg::clone( 
-                                originalDrawable, 
-                                osg::CopyOp::DEEP_COPY_ARRAYS | osg::CopyOp::DEEP_COPY_PRIMITIVES );
+                            // add the new cloned, translated drawable back to the geode.
+                            geode.addDrawable( newDrawable.get() );
 
-                            osg::Vec3Array* verts = dynamic_cast<osg::Vec3Array*>( newDrawable->getVertexArray() );
-                            if ( verts )
-                            {
-                                for( osg::Vec3Array::iterator v = verts->begin(); v != verts->end(); ++v )
-                                {
-                                    (*v).set( (*v) * mat );
-                                }
-                                
-                                // add the new cloned, translated drawable back to the geode.
-                                geode.addDrawable( newDrawable.get() );
-                            }
+                            if ( _cx.featureIndex() )
+                                _cx.featureIndex()->tagPrimitiveSets( newDrawable.get(), feature->getFID() );
                         }
-
                     }
+
                 }
             }
+        }
 
-            geode.dirtyBound();
+        geode.dirtyBound();
 
-            MeshConsolidator::run( geode );
+        MeshConsolidator::run( geode );
 
-            // merge the geometry. Not sure this is necessary
-            osgUtil::Optimizer opt;
-            opt.optimize( &geode, osgUtil::Optimizer::MERGE_GEOMETRY | osgUtil::Optimizer::SHARE_DUPLICATE_STATE );
-            
-            osg::NodeVisitor::apply( geode );
-        }
+        osg::NodeVisitor::apply( geode );
+    }
 
-    private:
-        const FeatureList&    _features;
-        FilterContext         _cx;
-        const MarkerSymbol*   _symbol;
-        //osg::Matrixd          _modelMatrix;
-        FeaturesToNodeFilter* _f2n;
-    };
+private:
+    const FeatureList&      _features;
+    FilterContext&          _cx;
+    const InstanceSymbol*   _symbol;
+    const ModelSymbol*      _modelSymbol;
+    FeaturesToNodeFilter*   _f2n;
+    NumericExpression       _scaleExpr;
+    NumericExpression       _headingExpr;
+    bool                    _makeECEF;
+    const SpatialReference* _srs;
+    const SpatialReference* _targetSRS;
+};
 
 
-typedef std::map< osg::Node*, FeatureList > MarkerToFeatures;
+//typedef std::map< osg::Node*, FeatureList > MarkerToFeatures;
+typedef std::map< osg::ref_ptr<osg::Node>, FeatureList > ModelBins;
 
 //clustering:
 //  troll the external model for geodes. for each geode, create a geode in the target
@@ -293,12 +443,15 @@ typedef std::map< osg::Node*, FeatureList > MarkerToFeatures;
 //  hopefully stateset sharing etc will work out. we may need to strip out LODs too.
 bool
 SubstituteModelFilter::cluster(const FeatureList&           features,
-                               const MarkerSymbol*          symbol, 
+                               const InstanceSymbol*        symbol, 
                                Session*                     session,
                                osg::Group*                  attachPoint,
                                FilterContext&               context )
-{    
-    MarkerToFeatures markerToFeatures;
+{
+    ModelBins modelBins;
+    //ModelToFeatures modelToFeatures;
+
+    std::set<URI> missing;
 
     // first, sort the features into buckets, each bucket corresponding to a
     // unique marker.
@@ -308,37 +461,39 @@ SubstituteModelFilter::cluster(const FeatureList&           features,
 
         // resolve the URI for the marker:
         StringExpression uriEx( *symbol->url() );
-        URI markerURI( f->eval( uriEx ), uriEx.uriContext() );
+        URI instanceURI( f->eval( uriEx, &context ), uriEx.uriContext() );
 
         // find and load the corresponding marker model. We're using the session-level
         // object store to cache models. This is thread-safe sine we are always going
         // to CLONE the model before using it.
-        osg::Node* model = context.getSession()->getObject<osg::Node>( markerURI.full() );
-        if ( !model )
+        osg::ref_ptr<osg::Node> model = context.getSession()->getObject<osg::Node>( instanceURI.full() );
+        if ( !model.valid() )
         {
-            osg::ref_ptr<MarkerResource> mres = new MarkerResource();
-            mres->uri() = markerURI;
-            model = mres->createNode();
-            if ( model )
+            InstanceResource* instance = findResource( instanceURI, symbol, context, missing );
+            if ( !instance )
+                continue;
+
+            model = instance->createNode( context.getSession()->getDBOptions() );
+            if ( model.valid() )
             {
-                context.getSession()->putObject( markerURI.full(), model );
+                model = context.getSession()->putObject( instanceURI.full(), model.get(), false );
             }
         }
 
-        if ( model )
+        if ( model.valid() )
         {
-            MarkerToFeatures::iterator itr = markerToFeatures.find( model );
-            if (itr == markerToFeatures.end())
-                markerToFeatures[ model ].push_back( f );
+            ModelBins::iterator itr = modelBins.find( model.get() );
+            if (itr == modelBins.end())
+                modelBins[ model.get() ].push_back( f );
             else
                 itr->second.push_back( f );
         }
     }
 
-    //For each model, cluster the features that use that marker
-    for (MarkerToFeatures::iterator i = markerToFeatures.begin(); i != markerToFeatures.end(); ++i)
+    // For each model, cluster the features that use that marker
+    for (ModelBins::iterator i = modelBins.begin(); i != modelBins.end(); ++i)
     {
-        osg::Node* prototype = i->first;
+        osg::Node* prototype = i->first.get();
 
         // we're using the Session cache since we know we'll be cloning.
         if ( prototype )
@@ -359,30 +514,61 @@ SubstituteModelFilter::cluster(const FeatureList&           features,
 osg::Node*
 SubstituteModelFilter::push(FeatureList& features, FilterContext& context)
 {
-    if ( !isSupported() ) {
+    if ( !isSupported() )
+    {
         OE_WARN << "SubstituteModelFilter support not enabled" << std::endl;
         return 0L;
     }
 
-    if ( _style.empty() ) {
+    if ( _style.empty() )
+    {
         OE_WARN << LC << "Empty style; cannot process features" << std::endl;
         return 0L;
     }
 
-    const MarkerSymbol* symbol = _style.getSymbol<MarkerSymbol>();
-    if ( !symbol ) {
-        OE_WARN << LC << "No MarkerSymbol found in style; cannot process feautres" << std::endl;
+    osg::ref_ptr<const InstanceSymbol> symbol = _style.get<InstanceSymbol>();
+
+    // check for deprecated MarkerSymbol type.
+    if ( !symbol.valid() )
+    {
+        if ( _style.has<MarkerSymbol>() )
+            symbol = _style.get<MarkerSymbol>()->convertToInstanceSymbol();
+    }
+
+    if ( !symbol.valid() )
+    {
+        OE_WARN << LC << "No appropriate symbol found in stylesheet; aborting." << std::endl;
         return 0L;
     }
 
+    // establish the resource library, if there is one:
+    _resourceLib = 0L;
+
+    const StyleSheet* sheet = context.getSession() ? context.getSession()->styles() : 0L;
+
+    if ( symbol->libraryName().isSet() )
+    {
+        _resourceLib = sheet->getResourceLibrary( symbol->libraryName()->expr() );
+
+        if ( !_resourceLib.valid() )
+        {
+            OE_WARN << LC << "Unable to load resource library '" << symbol->libraryName()->expr() << "'"
+                << "; may not find instance models." << std::endl;
+        }
+    }
+
+    // reset this marker:
+    _normalScalingRequired = false;
+
+    // Compute localization info:
     FilterContext newContext( context );
 
     computeLocalizers( context );
 
     osg::Group* group = createDelocalizeGroup();
 
+    // Process the feature set, using clustering if requested
     bool ok = true;
-
     if ( _cluster )
     {
         ok = cluster( features, symbol, context.getSession(), group, newContext );
@@ -391,16 +577,19 @@ SubstituteModelFilter::push(FeatureList& features, FilterContext& context)
     else
     {
         process( features, symbol, context.getSession(), group, newContext );
+    }
 
-#if 0
-        // speeds things up a bit, at the expense of creating tons of geometry..
-
-        // this optimizer pass will remove all the MatrixTransform nodes that we
-        // used to offset each instance
-        osgUtil::Optimizer optimizer;
-        optimizer.optimize( group, osgUtil::Optimizer::FLATTEN_STATIC_TRANSFORMS_DUPLICATING_SHARED_SUBGRAPHS );
-#endif
-
+    // see if we need normalized normals
+    if ( _normalScalingRequired )
+    {
+        // TODO: carefully test for this, since GL_NORMALIZE hurts performance in 
+        // FFP mode (RESCALE_NORMAL is faster for uniform scaling); and I think auto-normal-scaling
+        // is disabled entirely when using shaders. For now I believe we are dropping to FFP
+        // when not using instancing...so just check for that
+        if ( !_useDrawInstanced )
+        {
+            group->getOrCreateStateSet()->setMode( GL_NORMALIZE, osg::StateAttribute::ON );
+        }
     }
 
     return group;
diff --git a/src/osgEarthFeatures/TessellateOperator b/src/osgEarthFeatures/TessellateOperator
new file mode 100644
index 0000000..959bfa8
--- /dev/null
+++ b/src/osgEarthFeatures/TessellateOperator
@@ -0,0 +1,69 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTHFEATURES_TESSELLATE_OPERATOR_H
+#define OSGEARTHFEATURES_TESSELLATE_OPERATOR_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/FilterContext>
+
+namespace osgEarth { namespace Features
+{
+    /**
+     * Tessellates linear data in a feature geometry by subdividing each
+     * line segment a specified # of times.
+     */
+    class OSGEARTHFEATURES_EXPORT TessellateOperator
+    {
+    public:
+        /**
+         * Constructs a new tessellation operator.
+         * @param numPartitions
+         *      Each geometry segment should be subdivided into this many partitions
+         * @param referenceSRS
+         *      Feature geometry is assumed to be expressed in this SRS; if NULL, assume
+         *      geometry is geodetic (lat/long degrees).
+         * @param defaultInterp
+         *      If the feature does not specifiy an interpolation method, use this one
+         */
+        TessellateOperator( 
+            unsigned                numPartitions =20,
+            GeoInterpolation        defaultInterp =GEOINTERP_GREAT_CIRCLE );
+
+        virtual ~TessellateOperator() { }
+
+        void setNumPartitions( unsigned value ) { _numPartitions = value; }
+
+        void setDefaultGeoInterp( GeoInterpolation value ) { _defaultInterp = value; }
+
+    public:
+        /**
+         * Operate on a feature
+         */
+        void operator()( Feature* feature, FilterContext& context ) const;
+
+    protected:
+        unsigned                             _numPartitions;
+        GeoInterpolation                     _defaultInterp;
+    };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTHFEATURES_TESSELLATE_OPERATOR_H
diff --git a/src/osgEarthFeatures/TessellateOperator.cpp b/src/osgEarthFeatures/TessellateOperator.cpp
new file mode 100644
index 0000000..7d04536
--- /dev/null
+++ b/src/osgEarthFeatures/TessellateOperator.cpp
@@ -0,0 +1,141 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/TessellateOperator>
+#include <osgEarthSymbology/Geometry>
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    void tessellateLinear( const osg::Vec3d& p0, const osg::Vec3d& p1, unsigned parts, Vec3dVector& out )
+    {
+        osg::Vec3d vec = (p1-p0)/double(parts);
+        out.push_back( p0 );
+        for( unsigned i=1; i<parts; ++i )
+        {
+            out.push_back( p0 + vec*double(i) );
+        }
+    }
+
+    void tessellateGeo( const osg::Vec3d& p0, const osg::Vec3d& p1, unsigned parts, GeoInterpolation interp, Vec3dVector& out )
+    {
+        double step = 1.0/double(parts);
+        double zdelta = p1.z() - p0.z();
+
+        out.push_back( p0 );
+
+        for( unsigned i=1; i<parts; ++i )
+        {
+            double t = step*double(i);
+            osg::Vec3d p;
+
+            if ( interp == GEOINTERP_GREAT_CIRCLE )
+            {
+                double lat, lon;
+                GeoMath::interpolate(
+                    osg::DegreesToRadians(p0.y()), osg::DegreesToRadians(p0.x()),
+                    osg::DegreesToRadians(p1.y()), osg::DegreesToRadians(p1.x()),
+                    t,
+                    lat, lon );
+                p.set( osg::RadiansToDegrees(lon), osg::RadiansToDegrees(lat), p0.z() + t*zdelta );
+            }
+            else // GEOINTERP_RHUMB_LINE
+            {
+                double lat1 = osg::DegreesToRadians(p0.y()), lon1 = osg::DegreesToRadians(p1.x());
+                double lat2 = osg::DegreesToRadians(p1.y()), lon2 = osg::DegreesToRadians(p1.x());
+
+                double distance = GeoMath::rhumbDistance( lat1, lon1, lat2, lon2 );
+                double bearing  = GeoMath::rhumbBearing( lat1, lon1, lat2, lon2 );
+
+                double lat3, lon3;
+                GeoMath::rhumbDestination(lat1, lon1, bearing, distance, lat3, lon3);
+
+                p.set( osg::RadiansToDegrees(lon3), osg::RadiansToDegrees(lat3), p0.z() + t*zdelta );
+            }
+
+            out.push_back(p);
+        }
+    }
+}
+
+//------------------------------------------------------------------------
+
+TessellateOperator::TessellateOperator(unsigned                numPartitions,
+                                       GeoInterpolation        defaultInterp ) :
+_numPartitions( numPartitions ),
+_defaultInterp( defaultInterp )
+{
+    //nop
+}
+
+void
+TessellateOperator::operator()( Feature* feature, FilterContext& context ) const
+{
+    if (_numPartitions <= 1 ||
+        !feature || 
+        !feature->getGeometry() || 
+        feature->getGeometry()->getComponentType() == Geometry::TYPE_POINTSET )
+    {
+        return;
+    }
+
+    bool isGeo = feature->getSRS() ? feature->getSRS()->isGeographic() : true;
+    //bool isGeo = context.profile() ? context.profile()->getSRS()->isGeographic() : true;
+    GeoInterpolation interp = feature->geoInterp().isSet() ? *feature->geoInterp() : _defaultInterp;
+
+    GeometryIterator i( feature->getGeometry(), true );
+    while( i.hasMore() )
+    {
+        Geometry* g = i.next();
+        bool isRing = dynamic_cast<Ring*>( g ) != 0L;
+
+        Vec3dVector newVerts;
+        newVerts.reserve( g->size() * _numPartitions );
+
+        for( Geometry::const_iterator v = g->begin(); v != g->end(); ++v )
+        {
+            const osg::Vec3d& p0 = *v;
+            if ( v != g->end()-1 ) // not last vert
+            {
+                if ( isGeo )
+                    tessellateGeo( *v, *(v+1), _numPartitions, interp, newVerts );
+                else
+                    tessellateLinear( *v, *(v+1), _numPartitions, newVerts );
+            }
+            else if ( isRing )
+            {
+                if ( isGeo )
+                    tessellateGeo( *v, *g->begin(), _numPartitions, interp, newVerts );
+                else
+                    tessellateLinear( *v, *g->begin(), _numPartitions, newVerts );
+            }
+            else 
+            {
+                // get the final vert.
+                newVerts.push_back( *v );
+            }
+        }
+
+        g->swap( newVerts );
+    }
+}
diff --git a/src/osgEarthFeatures/TextSymbolizer b/src/osgEarthFeatures/TextSymbolizer
new file mode 100644
index 0000000..d2ba4ff
--- /dev/null
+++ b/src/osgEarthFeatures/TextSymbolizer
@@ -0,0 +1,62 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHFEATURES_TEXT_SYMBOLIZER_H
+#define OSGEARTHFEATURES_TEXT_SYMBOLIZER_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/FilterContext>
+#include <osgEarthSymbology/TextSymbol>
+
+#include <osgText/Text>
+
+namespace osgEarth { namespace Features
+{
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Utilities that use a TextSymbol to create OSG text objects.
+     */
+    class OSGEARTHFEATURES_EXPORT TextSymbolizer
+    {
+    public:
+        TextSymbolizer( const TextSymbol* symbol );
+
+        virtual ~TextSymbolizer() { }
+
+        /**
+         * Creates a drawable for the specified string.
+         */
+        osgText::Text* create(
+            Feature*             feature =0L,
+            const FilterContext* context =0L,
+            const std::string&   text    ="" ) const;
+
+        osgText::Text* create( const std::string& text ) const {
+            return create(0L, 0L, text);
+        }
+
+    protected:
+        osg::ref_ptr<const TextSymbol> _symbol;
+    };
+
+} } // namespace osgEarth::Features
+
+#endif // OSGEARTHFEATURES_TEXT_SYMBOLIZER_H
diff --git a/src/osgEarthFeatures/TextSymbolizer.cpp b/src/osgEarthFeatures/TextSymbolizer.cpp
new file mode 100644
index 0000000..77f793b
--- /dev/null
+++ b/src/osgEarthFeatures/TextSymbolizer.cpp
@@ -0,0 +1,124 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthFeatures/TextSymbolizer>
+#include <osgEarth/Registry>
+#include <osgText/Text>
+
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+TextSymbolizer::TextSymbolizer(const TextSymbol* symbol) :
+_symbol( symbol )
+{
+    //nop
+}
+
+osgText::Text*
+TextSymbolizer::create(Feature*             feature,
+                       const FilterContext* context,
+                       const std::string&   text     ) const
+{    
+    osgText::Text* t = new osgText::Text();
+
+    osgText::String::Encoding textEncoding = osgText::String::ENCODING_UNDEFINED;
+
+    if ( _symbol.valid() && _symbol->encoding().isSet() )
+    {
+        switch(_symbol->encoding().value())
+        {
+        case TextSymbol::ENCODING_ASCII: textEncoding = osgText::String::ENCODING_ASCII; break;
+        case TextSymbol::ENCODING_UTF8: textEncoding = osgText::String::ENCODING_UTF8; break;
+        case TextSymbol::ENCODING_UTF16: textEncoding = osgText::String::ENCODING_UTF16; break;
+        case TextSymbol::ENCODING_UTF32: textEncoding = osgText::String::ENCODING_UTF32; break;
+        default: textEncoding = osgText::String::ENCODING_UNDEFINED; break;
+        }
+    }
+
+    if ( !text.empty() )
+    {
+        t->setText( text, textEncoding );
+    }
+    else if ( _symbol.valid() && _symbol->content().isSet() )
+    {
+        StringExpression expr = *_symbol->content();
+        std::string newText = feature ? feature->eval(expr, context) : expr.eval();
+        t->setText( newText, textEncoding );
+    }
+
+    if ( _symbol.valid() && _symbol->pixelOffset().isSet() )
+    {
+        t->setPosition( osg::Vec3(_symbol->pixelOffset()->x(), _symbol->pixelOffset()->y(), 0.0f) );
+    }
+
+
+    //    //TODO: relacate in annotationutils...
+    //    t->setPosition( osg::Vec3(
+    //        positionOffset.x() + _symbol->pixelOffset()->x(),
+    //        positionOffset.y() + _symbol->pixelOffset()->y(),
+    //        positionOffset.z() ) );
+    //}
+// TODO: retian in annotationutils...
+    //else
+    //{
+    //    t->setPosition( positionOffset );
+    //}
+
+    //TODO: resonsider defaults here
+    t->setCharacterSizeMode( osgText::Text::OBJECT_COORDS );
+#if 0
+    t->setAutoRotateToScreen( false );
+    t->setCharacterSizeMode( osgText::Text::OBJECT_COORDS );
+#endif
+
+    t->setCharacterSize( _symbol.valid() && _symbol->size().isSet() ? *_symbol->size() : 16.0f );
+
+    t->setColor( _symbol.valid() && _symbol->fill().isSet() ? _symbol->fill()->color() : Color::White );
+
+    osgText::Font* font = 0L;
+    if ( _symbol.valid() && _symbol->font().isSet() )
+        font = osgText::readFontFile( *_symbol->font() );
+    if ( !font )
+        font = Registry::instance()->getDefaultFont();
+    if ( font )
+        t->setFont( font );
+
+    if ( _symbol.valid() )
+    {
+        // they're the same enum.
+        osgText::Text::AlignmentType at = (osgText::Text::AlignmentType)_symbol->alignment().value();
+        t->setAlignment( at );
+    }
+
+    if ( _symbol.valid() && _symbol->halo().isSet() )
+    {
+        t->setBackdropColor( _symbol->halo()->color() );
+        t->setBackdropType( osgText::Text::OUTLINE );
+    }
+    else if ( !_symbol.valid() )
+    {
+        // if no symbol at all is provided, default to using a black halo.
+        t->setBackdropColor( osg::Vec4(.3,.3,.3,1) );
+        t->setBackdropType( osgText::Text::OUTLINE );
+    }
+
+    return t;
+}
+
diff --git a/src/osgEarthFeatures/TransformFilter b/src/osgEarthFeatures/TransformFilter
index 9b59073..10ed791 100644
--- a/src/osgEarthFeatures/TransformFilter
+++ b/src/osgEarthFeatures/TransformFilter
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -38,17 +38,15 @@ namespace osgEarth { namespace Features
     public:
         TransformFilter();
         TransformFilter( const osg::Matrixd& xform );
-        TransformFilter( const SpatialReference* outputSRS, bool outputGeocentric =false );
+        TransformFilter( const SpatialReference* outputSRS );
+
+        virtual ~TransformFilter() { }
 
         /** Transform matrix to apply to each point. If there's is also an SRS conversion,
             the matrix will be applied first. */
         void setMatrix( const osg::Matrixd& mat ) { _mat = mat; }
         const osg::Matrixd& getMatrix() const { return _mat; }
 
-        /** Whether to convert the transformed coordinates into geocentric (default = false ) */
-        void setMakeGeocentric( bool value ) { _makeGeocentric = value; }
-        bool getMakeGeocentric() const { return _makeGeocentric; }
-
         /** Whether to localize coordinates to the bounding box centroid (to avoid precision jitter
             when turning the data into OSG geometry) */
         void setLocalizeCoordinates( bool value ) { _localize = value; }
@@ -59,7 +57,6 @@ namespace osgEarth { namespace Features
 
     protected:
         osg::ref_ptr<const SpatialReference> _outputSRS;
-        bool _makeGeocentric;
         osg::BoundingBoxd _bbox;
         bool _localize;
         osg::Matrixd _mat;
diff --git a/src/osgEarthFeatures/TransformFilter.cpp b/src/osgEarthFeatures/TransformFilter.cpp
index 2b23b50..16c751a 100644
--- a/src/osgEarthFeatures/TransformFilter.cpp
+++ b/src/osgEarthFeatures/TransformFilter.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -29,6 +29,7 @@ using namespace osgEarth::Symbology;
 
 namespace 
 {
+#if 0
     osg::Matrixd
     createGeocentricInvRefFrame( const osg::Vec3d& input, const SpatialReference* inputSRS )
     {
@@ -69,6 +70,7 @@ namespace
 
         return localToWorld;
     }
+#endif
 
     void
     localizeGeometry( Feature* input, const osg::Matrixd& refFrame )
@@ -91,24 +93,20 @@ namespace
 //---------------------------------------------------------------------------
 
 TransformFilter::TransformFilter() :
-_makeGeocentric( false ),
 _localize( false )
 {
     // nop
 }
 
 TransformFilter::TransformFilter( const osg::Matrixd& xform ) :
-_makeGeocentric( false ),
 _localize      ( false ),
 _mat           ( xform )
 {
     //nop
 }
 
-TransformFilter::TransformFilter(const SpatialReference* outputSRS,
-                                 bool outputGeocentric ) :
+TransformFilter::TransformFilter(const SpatialReference* outputSRS ) :
 _outputSRS( outputSRS ),
-_makeGeocentric( outputGeocentric ),
 _localize( false )
 {
     //NOP
@@ -127,7 +125,7 @@ TransformFilter::push( Feature* input, FilterContext& context )
     bool needsMatrixXform = !_mat.isIdentity();
 
     // optimize: do nothing if nothing needs doing
-    if ( !needsSRSXform && !_makeGeocentric && !_localize && !needsMatrixXform )
+    if ( !needsSRSXform && !_localize && !needsMatrixXform )
         return true;
 
     // iterate over the feature geometry.
@@ -145,11 +143,10 @@ TransformFilter::push( Feature* input, FilterContext& context )
 
         // first transform the geometry to the output SRS:            
         if ( needsSRSXform )
-            context.profile()->getSRS()->transformPoints( _outputSRS.get(), geom->asVector(), false );
-
-        // convert to ECEF if required:
-        if ( _makeGeocentric )
-            _outputSRS->transformToECEF( geom->asVector(), false );
+        {
+            context.profile()->getSRS()->transform( geom->asVector(), _outputSRS.get() );
+        }
+            //context.profile()->getSRS()->transformPoints( _outputSRS.get(), geom->asVector(), false );
 
         // update the bounding box.
         if ( _localize )
@@ -174,7 +171,6 @@ TransformFilter::push( FeatureList& input, FilterContext& incx )
             ok = false;
 
     FilterContext outcx( incx );
-    outcx.isGeocentric() = _makeGeocentric;
 
     if ( _outputSRS.valid() )
     {
@@ -191,15 +187,7 @@ TransformFilter::push( FeatureList& input, FilterContext& incx )
     {
         // create a suitable reference frame:
         osg::Matrixd localizer;
-        if ( _makeGeocentric )
-        {
-            localizer = createGeocentricInvRefFrame( _bbox.center(), _outputSRS.get() );
-            localizer.invert( localizer );
-        }
-        else
-        {
-            localizer = osg::Matrixd::translate( -_bbox.center() );
-        }
+        localizer = osg::Matrixd::translate( -_bbox.center() );
 
         // localize the geometry relative to the reference frame.
         for( FeatureList::iterator i = input.begin(); i != input.end(); i++ )
diff --git a/src/osgEarthFeatures/VirtualFeatureSource b/src/osgEarthFeatures/VirtualFeatureSource
index e48103d..0140e19 100644
--- a/src/osgEarthFeatures/VirtualFeatureSource
+++ b/src/osgEarthFeatures/VirtualFeatureSource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -37,6 +37,8 @@ namespace osgEarth { namespace Features
     struct OSGEARTHFEATURES_EXPORT FeaturePredicate : public osg::Referenced
     {
         virtual bool acceptFeature( Feature* f ) const =0;
+
+        virtual ~FeaturePredicate() { }
     };
 
     // internal class
@@ -55,6 +57,8 @@ namespace osgEarth { namespace Features
         /** Construct a new virtual feature source */
         VirtualFeatureSource() { }
 
+        virtual ~VirtualFeatureSource() { }
+
         /**
          * Adds a feature source/predicate mapping. This FeatureSource will draw
          * from "source" and filter based on the predicate.
@@ -63,7 +67,7 @@ namespace osgEarth { namespace Features
 
     public: // FeatureSource
         virtual FeatureCursor* createFeatureCursor( const Query& query );
-        virtual void initialize( const std::string& referenceURI );
+        virtual void initialize( const osgDB::Options* options );
         virtual const FeatureProfile* createFeatureProfile();
         virtual const FeatureSchema& getSchema() const;
         virtual Feature* getFeature( FeatureID id ) { return 0L; }
diff --git a/src/osgEarthFeatures/VirtualFeatureSource.cpp b/src/osgEarthFeatures/VirtualFeatureSource.cpp
index 505837a..98bedad 100644
--- a/src/osgEarthFeatures/VirtualFeatureSource.cpp
+++ b/src/osgEarthFeatures/VirtualFeatureSource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -119,11 +119,11 @@ VirtualFeatureSource::createFeatureCursor( const Query& query )
 }
 
 void 
-VirtualFeatureSource::initialize( const std::string& referenceURI )
+VirtualFeatureSource::initialize( const osgDB::Options* dbOptions )
 {
     for( FeatureSourceMappingVector::iterator i = _sources.begin(); i != _sources.end(); ++i )
     {
-        i->_source->initialize( referenceURI );
+        i->_source->initialize( dbOptions );
     }
 }
 
diff --git a/src/osgEarthQt/Actions b/src/osgEarthQt/Actions
new file mode 100644
index 0000000..c201435
--- /dev/null
+++ b/src/osgEarthQt/Actions
@@ -0,0 +1,127 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_ACTIONS_H
+#define OSGEARTHQT_ACTIONS_H 1
+
+#include <osgEarthQt/Common>
+#include <list>
+
+namespace osgEarth { namespace QtGui 
+{
+    class DataManager;
+
+    /**
+     * Base class for an Action, which is a (potentially reversible) operation
+     * handled by the ActionManager.
+     */
+    class OSGEARTHQT_EXPORT Action : public osg::Referenced
+    {
+    public:
+        virtual bool doAction( void* sender, DataManager* manager ) =0;
+
+        void cancel() {
+            _canceled = true; }
+
+        bool isOK() const {
+            return _message.empty(); }
+
+        bool isCanceled() const {
+            return _canceled; }
+
+        bool isCheckpoint() const {
+            return _checkpoint; }
+
+        bool setError( const std::string& message ) {
+            _message = message;
+            return false; }
+
+        virtual bool isReversible() const {
+            return false; }
+
+        ViewVector& getViews() {
+            return _views; }
+
+    protected:
+        Action() 
+            : _canceled(false), _checkpoint(true) { }
+
+        Action(ViewVector& views) 
+            : _views(views), _canceled(false), _checkpoint(true) { }
+
+        virtual ~Action() { }
+
+        ViewVector  _views;
+        bool        _canceled;
+        bool        _checkpoint;
+        std::string _message;
+    };
+
+    /**
+     * An action that can be undone.
+     */
+    class OSGEARTHQT_EXPORT ReversibleAction : public Action
+    {
+    public:
+        virtual bool undoAction( void* sender, DataManager* app ) =0;
+
+        bool isReversible() const {
+            return true; }
+
+    protected:
+        ReversibleAction() : Action() { _checkpoint = true; }
+        ReversibleAction(ViewVector& views) : Action(views) { _checkpoint = true; }
+
+        virtual ~ReversibleAction() { }
+    };
+
+    /**
+     * Callback that fires before or after the ActionManager runs an Action.
+     */
+    class OSGEARTHQT_EXPORT ActionCallback : public osg::Referenced
+    {
+    public:
+        virtual void operator()( void* sender, Action* action ) { }
+
+    protected:
+        ActionCallback() { }
+        virtual ~ActionCallback() { }
+    };
+
+    /**
+     * Interface for an Action Manager, an object that can run Actions, fire callbacks,
+     * and maintain an undo stack.
+     */
+    class OSGEARTHQT_EXPORT ActionManager
+    {
+    public:
+        virtual void addBeforeActionCallback( ActionCallback* cb ) =0;
+        virtual void addAfterActionCallback( ActionCallback* cb ) =0;
+
+        virtual bool doAction( void* sender, Action* action, bool reversible =true ) =0;
+        virtual bool undoAction() =0;
+        virtual bool canUndo() const =0;
+        virtual void clearUndoActions() =0;
+        virtual ReversibleAction* getNextUndoAction() const =0;
+
+        virtual ~ActionManager() { }
+    };
+
+} }
+
+#endif // OSGEARTHQT_ACTIONS_H
diff --git a/src/osgEarthQt/Actions.cpp b/src/osgEarthQt/Actions.cpp
new file mode 100644
index 0000000..0c9a2ef
--- /dev/null
+++ b/src/osgEarthQt/Actions.cpp
@@ -0,0 +1,153 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2010 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/Actions>
+//#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Map>
+
+using namespace osgEarth::QtGui;
+
+
+
+//---------------------------------------------------------------------------
+
+class ActionManagerImpl : public ActionManager // no export
+{
+public:
+    ActionManagerImpl( Application* app );
+
+public: // ActionManager interface
+
+    void addBeforeActionCallback( ActionCallback* cb );
+    void addAfterActionCallback( ActionCallback* cb );
+    bool doAction( void* sender, Action* action, bool reversible =true );
+    bool undoAction();
+    bool canUndo() const;
+    void clearUndoActions();
+    ReversibleAction* getNextUndoAction() const;
+
+private:
+    osg::ref_ptr<Application> _app;
+    std::list< osg::ref_ptr<Action> > _undoStack;
+
+    typedef std::list< osg::ref_ptr<ActionCallback> > ActionCallbackList;
+    ActionCallbackList _beforeCallbacks;
+    ActionCallbackList _afterCallbacks;
+    int _maxUndoStackSize;
+};
+
+ActionManagerImpl::ActionManagerImpl( DataManager* app ) :
+_app( app ),
+_maxUndoStackSize( 128 ) // arbitrary
+{
+    //nop
+}
+
+void
+ActionManagerImpl::addBeforeActionCallback( ActionCallback* cb )
+{
+    _beforeCallbacks.push_back( cb );
+}
+
+void
+ActionManagerImpl::addAfterActionCallback( ActionCallback* cb )
+{
+    _afterCallbacks.push_back( cb );
+}
+
+bool
+ActionManagerImpl::doAction( void* sender, Action* action_, bool reversible )
+{
+    // this ensures that the action will be unref'd and deleted after running
+    osg::ref_ptr<Action> action = action_;
+
+    bool undoInProgress = sender == this;
+
+    for( ActionCallbackList::iterator i = _beforeCallbacks.begin(); i != _beforeCallbacks.end(); ++i )
+        i->get()->operator()( sender, action.get() );
+
+    bool actionSucceeded = false;
+
+    if ( !action->isCanceled() || undoInProgress )
+    {
+        actionSucceeded = action->doAction( sender, _app.get() );
+
+        if ( !undoInProgress && actionSucceeded )
+        {
+            if ( action->isCheckpoint() )
+            {
+                clearUndoActions();
+            }
+            else if ( reversible && action->isReversible() )
+            {
+                _undoStack.push_back( action.get() );
+                if ( (int)_undoStack.size() > _maxUndoStackSize )
+                {
+                    _undoStack.pop_front();
+                }
+            }
+        }
+
+        //todo: during-action callbacks here? like in pogo?
+
+        for( ActionCallbackList::iterator j = _afterCallbacks.begin(); j != _afterCallbacks.end(); ++j )
+            j->get()->operator()( sender, action.get() );
+    }
+
+    return actionSucceeded;
+}
+
+bool
+ActionManagerImpl::undoAction()
+{
+    if ( !canUndo() )
+        return false;
+
+		osg::ref_ptr<ReversibleAction> action = static_cast<ReversibleAction*>( _undoStack.back().get() );
+		_undoStack.pop_back();
+
+		bool undoSucceeded = action->undoAction( this, _app.get() );
+
+		// if the undo failed, we are probably in some undefined application state, so
+    // clear out the undo stack just to be safe.
+    if ( !undoSucceeded )
+    {
+        clearUndoActions();
+    }
+
+		return undoSucceeded;
+}
+
+bool
+ActionManagerImpl::canUndo() const
+{
+    return _undoStack.size() > 0;
+}
+
+void
+ActionManagerImpl::clearUndoActions()
+{
+    _undoStack.clear();
+}
+
+ReversibleAction*
+ActionManagerImpl::getNextUndoAction() const
+{
+    return _undoStack.size() > 0 ? static_cast<ReversibleAction*>( _undoStack.front().get() ): 0L;
+}
diff --git a/src/osgEarthQt/AnnotationDialogs b/src/osgEarthQt/AnnotationDialogs
new file mode 100644
index 0000000..4d5ec85
--- /dev/null
+++ b/src/osgEarthQt/AnnotationDialogs
@@ -0,0 +1,554 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_ANNOTATIONDIALOGS_H
+#define OSGEARTHQT_ANNOTATIONDIALOGS_H 1
+
+#include <osgEarthQt/Common>
+
+#include <osgEarth/Draggers>
+#include <osgEarth/GeoMath>
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthSymbology/Geometry>
+
+#include <QCheckBox>
+#include <QDialog>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QVBoxLayout>
+
+
+namespace osgEarth { namespace QtGui
+{
+  struct AddPointsMouseHandler;
+  struct PointDraggerCallback;
+  class BaseAnnotationDialog : public QDialog
+  {
+    Q_OBJECT
+      
+  public:
+    BaseAnnotationDialog(osgEarth::MapNode* mapNode, const ViewVector& views, QWidget* parent = 0, Qt::WindowFlags f = 0);
+
+    std::string getName() { return _nameEdit ? _nameEdit->text().toStdString() : ""; }
+    std::string getDescription() { return _descriptionEdit ? _descriptionEdit->text().toStdString() : ""; }
+    virtual osgEarth::Annotation::AnnotationNode* getAnnotation() = 0;
+
+    virtual void mapMouseClick(const osgEarth::GeoPoint& point, int button) { };
+    virtual void mapMouseMove(const osgEarth::GeoPoint& point) { };
+
+  protected:
+    void initDefaultUi();
+    void updateButtonColorStyle(QPushButton* button, const QColor& color);
+
+    virtual void movePoint(int index, const osgEarth::GeoPoint& position) { };
+
+    osg::ref_ptr<osgEarth::MapNode> _mapNode;
+    ViewVector _views;
+    QLineEdit* _nameEdit;
+    QLineEdit* _descriptionEdit;
+    QVBoxLayout* _customLayout;
+    QPushButton* _okButton;
+
+    friend struct AddPointsMouseHandler;
+    friend struct PointDraggerCallback;
+  };
+
+  //---------------------------------------------------------------------------
+
+  class OSGEARTHQT_EXPORT AddMarkerDialog : public BaseAnnotationDialog
+  {
+    Q_OBJECT
+
+  public:
+    AddMarkerDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::PlaceNode* marker=0, QWidget* parent = 0, Qt::WindowFlags f = 0);
+
+    osgEarth::Annotation::AnnotationNode* getAnnotation() { return _placeNode.get(); }
+
+    void mapMouseClick(const osgEarth::GeoPoint& point, int button);
+
+  public slots:
+    void accept();
+    void reject();
+
+  private slots:
+    void onNameCheckStateChanged(int state);
+    void onNameTextChanged(const QString& text);
+
+  protected:
+    void closeEvent(QCloseEvent* event);
+
+    void initialize();
+    void clearDisplay();
+    void resetValues();
+
+    osg::ref_ptr<osg::Group> _root;
+    osg::ref_ptr<osgGA::GUIEventHandler>  _guiHandler;
+    QCheckBox* _nameCheckbox;
+    osg::ref_ptr<osg::Image> _markerImage;
+    osgEarth::Symbology::Style _placeStyle;
+    osg::ref_ptr<osgEarth::Annotation::PlaceNode> _placeNode;
+    std::string _altName;
+    bool _editing;
+    osgEarth::GeoPoint _inPosition;
+    std::string _inName;
+    std::string _inDescription;
+    bool _inNameSet;
+  };
+
+  //---------------------------------------------------------------------------
+
+  class OSGEARTHQT_EXPORT AddPathDialog : public BaseAnnotationDialog
+  {
+    Q_OBJECT
+
+  public:
+    AddPathDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::FeatureNode* path=0L, QWidget* parent = 0, Qt::WindowFlags f = 0);
+
+    osgEarth::Annotation::AnnotationNode* getAnnotation() { return _pathNode.get(); }
+
+    void mapMouseClick(const osgEarth::GeoPoint& point, int button);
+    void addPoint(const osgEarth::GeoPoint& point);
+
+  public slots:
+    void accept();
+    void reject();
+
+  private slots:
+    void onDrapeCheckStateChanged(int state);
+    void onLineColorButtonClicked();
+
+  protected:
+    void closeEvent(QCloseEvent* event);
+
+    void initialize();
+    void refreshFeatureNode();
+    void createPointDragger(int index, const osgEarth::GeoPoint& point);
+    void movePoint(int index, const osgEarth::GeoPoint& position);
+    void clearDisplay();
+    void resetValues();
+
+    osg::ref_ptr<osg::Group> _root;
+    osg::Group* _draggers;
+    osg::ref_ptr<AddPointsMouseHandler>  _guiHandler;
+    QCheckBox* _drapeCheckbox;
+    QPushButton* _lineColorButton;
+    osg::Vec4f _pathColor;
+    osg::ref_ptr<osgEarth::Symbology::LineString> _pathLine;
+    osg::ref_ptr<osgEarth::Features::Feature> _pathFeature;
+    osg::ref_ptr<osgEarth::Annotation::FeatureNode> _pathNode;
+    bool _editing;
+    osg::ref_ptr<osgEarth::Features::Feature> _inFeature;
+    std::string _inName;
+    std::string _inDescription;
+  };
+
+  //---------------------------------------------------------------------------
+
+  class OSGEARTHQT_EXPORT AddPolygonDialog : public BaseAnnotationDialog
+  {
+    Q_OBJECT
+
+  public:
+    AddPolygonDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::FeatureNode* polygon=0L, QWidget* parent = 0, Qt::WindowFlags f = 0);
+
+    osgEarth::Annotation::AnnotationNode* getAnnotation() { return _polyNode.get(); }
+
+    void mapMouseClick(const osgEarth::GeoPoint& point, int button);
+    void mapMouseMove(const osgEarth::GeoPoint& point);
+    void addPoint(const osgEarth::GeoPoint& point);
+
+  public slots:
+    void accept();
+    void reject();
+
+  private slots:
+    void onDrapeCheckStateChanged(int state);
+    void onLineColorButtonClicked();
+    void onFillColorButtonClicked();
+
+  protected:
+    void closeEvent(QCloseEvent* event);
+
+    void initialize();
+    void refreshFeatureNode(bool geometryOnly=false);
+    void createPointDragger(int index, const osgEarth::GeoPoint& point);
+    void movePoint(int index, const osgEarth::GeoPoint& position);
+    void clearDisplay();
+    void resetValues();
+
+    osg::ref_ptr<osg::Group> _root;
+    osg::Group* _draggers;
+    osg::ref_ptr<AddPointsMouseHandler>  _guiHandler;
+    QCheckBox* _drapeCheckbox;
+    QPushButton* _lineColorButton;
+    QPushButton* _fillColorButton;
+    osg::Vec4f _pathColor;
+    osg::Vec4f _fillColor;
+    osg::Vec3d _mousePoint;
+    osg::ref_ptr<osgEarth::Symbology::Polygon> _polygon;
+    osg::ref_ptr<osgEarth::Features::Feature> _polyFeature;
+    osg::ref_ptr<osgEarth::Annotation::FeatureNode> _polyNode;
+    bool _editing;
+    osg::ref_ptr<osgEarth::Features::Feature> _inFeature;
+    std::string _inName;
+    std::string _inDescription;
+  };
+
+  //---------------------------------------------------------------------------
+
+  struct AddEllipseMouseHandler;
+  class OSGEARTHQT_EXPORT AddEllipseDialog : public BaseAnnotationDialog
+  {
+    Q_OBJECT
+
+  public:
+    AddEllipseDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::EllipseNode* ellipse=0, QWidget* parent = 0, Qt::WindowFlags f = 0);
+
+    osgEarth::Annotation::AnnotationNode* getAnnotation() { return _ellipseNode.get(); }
+
+    void addEllipse(const osgEarth::GeoPoint& position, const Linear& radiusMajor, const Linear& radiusMinor, const Angular& rotationAngle);
+
+  public slots:
+    void accept();
+    void reject();
+
+  private slots:
+    void onDrapeCheckStateChanged(int state);
+    void onLineColorButtonClicked();
+    void onFillColorButtonClicked();
+
+  protected:
+    void closeEvent(QCloseEvent* event);
+
+    void initialize();
+    void refreshFeatureNode(bool geometryOnly=false);
+    void clearDisplay();
+    void resetValues();
+    void removeGuiHandlers();
+
+    osg::ref_ptr<osg::Group> _root;
+    osg::ref_ptr<AddEllipseMouseHandler>  _guiHandler;
+    osg::ref_ptr<osgEarth::Annotation::EllipseNodeEditor> _editor;
+    QCheckBox* _drapeCheckbox;
+    QPushButton* _lineColorButton;
+    QPushButton* _fillColorButton;
+    osg::Vec4f _pathColor;
+    osg::Vec4f _fillColor;
+    osg::ref_ptr<osgEarth::Annotation::EllipseNode> _ellipseNode;
+    osgEarth::Symbology::Style _ellipseStyle;
+    bool _editing;
+    osgEarth::Symbology::Style _inStyle;
+    std::string _inName;
+    std::string _inDescription;
+    osgEarth::GeoPoint _inPosition;
+    Linear _inRadiusMajor;
+    Linear _inRadiusMinor;
+    Angular _inRotationAngle;
+
+    friend struct AddEllipseMouseHandler;
+  }; 
+
+  //---------------------------------------------------------------------------
+
+  struct AddPointsMouseHandler : public osgGA::GUIEventHandler
+  {
+    AddPointsMouseHandler(BaseAnnotationDialog* dialog, osgEarth::MapNode* mapNode, osg::Group* root, bool drawLead=true)
+      : _dialog(dialog), _mapNode(mapNode), _root(root), _drawLead(drawLead), _mouseDown(-1), _lastPoint(-500.0, 0.0, 0.0)
+    {
+      if (_drawLead)
+      {
+        //Define a style for the lead line
+        osgEarth::Symbology::LineSymbol* ls = _lineStyle.getOrCreateSymbol<osgEarth::Symbology::LineSymbol>();
+        ls->stroke()->color() = osgEarth::Symbology::Color::White;
+        ls->stroke()->width() = 2.0f;
+        ls->stroke()->stipple() = 0x0F0F;
+        ls->tessellation() = 20;
+        _lineStyle.getOrCreate<osgEarth::Symbology::AltitudeSymbol>()->clamping() = osgEarth::Symbology::AltitudeSymbol::CLAMP_TO_TERRAIN;
+      }
+    }
+
+    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+    {
+      osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
+
+      if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH  && _mouseDown == -1)
+      {
+        _mouseDown = ea.getButton();
+        _xDown = ea.getX();
+        _yDown = ea.getY();
+      }
+      else if (ea.getEventType() == osgGA::GUIEventAdapter::MOVE && _lastPoint.x() != -500.0)
+      {
+        osg::Vec3d world;
+        if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(aa.asView(), ea.getX(), ea.getY(), world))
+        {
+          osgEarth::GeoPoint mapPoint;
+          mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+          //_mapNode->getMap()->worldPointToMapPoint(world, mapPoint);
+
+          _dialog->mapMouseMove(mapPoint);
+
+          _currentPoint = mapPoint.vec3d();
+          updateDisplay();
+        }
+      }
+      else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
+      {
+        if (ea.getButton() == _mouseDown)
+        {
+          if (_xDown == ea.getX() && _yDown == ea.getY())
+          {
+            osg::Vec3d world;
+            if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(aa.asView(), ea.getX(), ea.getY(), world))
+            {
+              osgEarth::GeoPoint mapPoint;
+              mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+              //_mapNode->getMap()->worldPointToMapPoint( world, mapPoint );
+              _currentPoint = mapPoint.vec3d();
+              _lastPoint = mapPoint.vec3d();
+              
+              _dialog->mapMouseClick(mapPoint, _mouseDown);
+
+              updateDisplay();
+            }
+          }
+
+          _mouseDown = -1;
+        }
+      }
+      else if (ea.getEventType() == osgGA::GUIEventAdapter::DOUBLECLICK)
+      {
+        QMetaObject::invokeMethod(_dialog, "accept", Qt::QueuedConnection);
+        return true;
+      }
+
+      return false;
+    }
+
+    void clearDisplay()
+    {
+      _lastPoint.x() = -500.0;
+
+      if (_featureNode.valid() && _root.valid())
+      {
+        _root->removeChild( _featureNode.get() );
+        _featureNode = 0L;
+      }
+    }
+
+    void updateDisplay()
+    {
+      if (_drawLead && _root.valid() && _lastPoint.x() != -500.0)
+      {
+        osgEarth::Symbology::LineString* line = new osgEarth::Symbology::LineString();
+        line->push_back( _lastPoint );
+        line->push_back( _currentPoint );
+
+        osgEarth::Features::Feature* feature = new osgEarth::Features::Feature(line, _mapNode->getMapSRS());
+        feature->geoInterp() = osgEarth::GEOINTERP_GREAT_CIRCLE;    
+        feature->style() = _lineStyle;
+
+        if (!_featureNode.valid())
+        {
+          _featureNode = new osgEarth::Annotation::FeatureNode( _mapNode, feature );
+          _featureNode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+          _root->addChild( _featureNode.get() );
+        }
+        else
+        {
+          _featureNode->setFeature(feature);
+        }
+      }
+    }
+
+
+    BaseAnnotationDialog* _dialog;
+    osg::ref_ptr<MapNode>  _mapNode;
+    osg::ref_ptr<osg::Group> _root;
+    osg::ref_ptr<osgEarth::Annotation::FeatureNode> _featureNode;
+    osgEarth::Symbology::Style _lineStyle;
+
+    bool _drawLead;
+    int _mouseDown;
+    float _xDown, _yDown;
+    osg::Vec3d _lastPoint;
+    osg::Vec3d _currentPoint;
+  };
+
+  struct PointDraggerCallback : public osgEarth::Dragger::PositionChangedCallback
+  {
+    PointDraggerCallback(int index, BaseAnnotationDialog* dialog)
+      : _index(index), _dialog(dialog)
+    {
+    }
+
+    void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+    {
+      _dialog->movePoint(_index, position);
+    }
+
+    int _index;
+    BaseAnnotationDialog* _dialog;
+  };
+
+  //---------------------------------------------------------------------------
+
+  struct AddEllipseMouseHandler : public osgGA::GUIEventHandler
+  {
+    AddEllipseMouseHandler(AddEllipseDialog* dialog, osgEarth::MapNode* mapNode, osg::Group* root)
+      : _dialog(dialog), _mapNode(mapNode), _root(root), _mouseDown(false), _capturing(true), _rotationAngle(0, osgEarth::Units::DEGREES)
+    {
+      //Define a style for the ellipse outline
+      _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color(Color::White, 0.75);
+      _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->stipple() = 0x0F0F;
+      _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->width() = 2.0;
+      _ellipseStyle.getOrCreate<osgEarth::Symbology::AltitudeSymbol>()->clamping() = osgEarth::Symbology::AltitudeSymbol::CLAMP_TO_TERRAIN;
+    }
+
+    void setCapturing(bool capturing)
+    {
+      _capturing = capturing;
+    }
+
+    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+    {
+      if (!_capturing)
+        return false;
+
+      osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
+
+      if (ea.getEventType() == osgGA::GUIEventAdapter::PUSH && ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+      {
+        _mouseDown = true;
+        _xDown = _xCurr = ea.getX();
+        _yDown = _yCurr = ea.getY();
+      }
+      else if (ea.getEventType() == osgGA::GUIEventAdapter::DRAG && _mouseDown)
+      {
+        _xCurr = ea.getX();
+        _yCurr = ea.getY();
+        
+        updateValues(aa.asView());
+        updateDisplay();
+
+        return true;
+      }
+      else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE && ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON && _mouseDown)
+      {
+        _xCurr = ea.getX();
+        _yCurr = ea.getY();
+
+        updateValues(aa.asView());
+
+        _mouseDown = false;
+        updateDisplay();
+
+        if (_xCurr != _xDown && _yCurr != _yDown)  
+          _dialog->addEllipse(_position, _radiusMajor, _radiusMinor, _rotationAngle);
+
+        return true;
+      }
+
+      return false;
+    }
+
+    void updateValues(osg::View* view)
+    {
+      float xMax = osg::maximum(_xDown, _xCurr);
+      float xMin = osg::minimum(_xDown, _xCurr);
+      float xMid = (xMax + xMin) / 2.0;
+      float yMax = osg::maximum(_yDown, _yCurr);
+      float yMin = osg::minimum(_yDown, _yCurr);
+      float yMid = (yMax + yMin) / 2.0;
+
+      osg::Vec3d world;
+      if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(view, xMid, yMid, world))
+      {
+          _position.fromWorld( _mapNode->getMapSRS(), world );
+        //_mapNode->getMap()->worldPointToMapPoint(world, _position);
+      }
+
+      double xRad = 0.0;
+      if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(view, xMax, yMid, world))
+      {
+        osgEarth::GeoPoint mapPoint;
+        mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+        //_mapNode->getMap()->worldPointToMapPoint(world, mapPoint);
+
+        xRad = GeoMath::distance(_position.vec3d(), mapPoint.vec3d(), _position.getSRS());
+      }
+
+      double yRad = 0.0;
+      if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(view, xMid, yMax, world))
+      {
+        osgEarth::GeoPoint mapPoint;
+        mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+        //_mapNode->getMap()->worldPointToMapPoint(world, mapPoint);
+
+        yRad = GeoMath::distance(_position.vec3d(), mapPoint.vec3d(), _position.getSRS());
+      }
+
+      if (xRad > yRad)
+      {
+        _radiusMajor.set(xRad, osgEarth::Units::METERS);
+        _radiusMinor.set(yRad, osgEarth::Units::METERS);
+        _rotationAngle.set(90.0, osgEarth::Units::DEGREES);
+      }
+      else
+      {
+        _radiusMajor.set(yRad, osgEarth::Units::METERS);
+        _radiusMinor.set(xRad, osgEarth::Units::METERS);
+        _rotationAngle.set(0.0, osgEarth::Units::DEGREES);
+      }
+    }
+
+    void updateDisplay()
+    {
+      if (_ellipseNode.valid())
+        _root->removeChild(_ellipseNode);
+
+      if (_root.valid() && _mouseDown)
+      {
+        _ellipseNode = new osgEarth::Annotation::EllipseNode(_mapNode, _position, _radiusMajor, _radiusMinor, _rotationAngle, _ellipseStyle, false);
+        _root->addChild(_ellipseNode);
+      }
+    }
+
+
+    AddEllipseDialog* _dialog;
+    osg::ref_ptr<MapNode>  _mapNode;
+    osg::ref_ptr<osg::Group> _root;
+    osg::ref_ptr<osgEarth::Annotation::EllipseNode> _ellipseNode;
+    osgEarth::Symbology::Style _ellipseStyle;
+    osgEarth::GeoPoint _position;
+    osgEarth::Linear _radiusMajor;
+    osgEarth::Linear _radiusMinor;
+    osgEarth::Angular _rotationAngle;
+
+    bool _capturing;
+    bool _mouseDown;
+    float _xDown, _yDown, _xCurr, _yCurr;
+  };
+
+} }
+
+#endif // OSGEARTHQT_ANNOTATIONDIALOGS_H
diff --git a/src/osgEarthQt/AnnotationDialogs.cpp b/src/osgEarthQt/AnnotationDialogs.cpp
new file mode 100644
index 0000000..8325fa9
--- /dev/null
+++ b/src/osgEarthQt/AnnotationDialogs.cpp
@@ -0,0 +1,1085 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/AnnotationDialogs>
+#include <osgEarthQt/Common>
+
+#include <osgEarth/Draggers>
+#include <osgEarth/Pickers>
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthSymbology/Geometry>
+
+#include <QCheckBox>
+#include <QColor>
+#include <QColorDialog>
+#include <QDialog>
+#include <QGLWidget>
+#include <QHBoxLayout>
+#include <QImage>
+#include <QLabel>
+#include <QLineEdit>
+#include <QPushButton>
+#include <QVBoxLayout>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+
+#define ANNOTATION_PATH_WIDTH 12.0f
+
+
+//---------------------------------------------------------------------------
+
+BaseAnnotationDialog::BaseAnnotationDialog(osgEarth::MapNode* mapNode, const ViewVector& views, QWidget* parent, Qt::WindowFlags f)
+: QDialog(parent, f), _mapNode(mapNode), _views(views.size())
+{
+  initDefaultUi();
+
+  std::copy(views.begin(), views.end(), _views.begin());
+}
+
+void BaseAnnotationDialog::initDefaultUi()
+{
+  // main layout
+  QVBoxLayout* vLayout = new QVBoxLayout;
+  setLayout(vLayout);
+
+  // name layout and widgets
+  QHBoxLayout* hb1 = new QHBoxLayout;
+  hb1->addWidget(new QLabel(tr("Name")));
+  
+  _nameEdit = new QLineEdit;
+  hb1->addWidget(_nameEdit);
+
+  vLayout->addLayout(hb1);
+
+  // description layout and widgets
+  QVBoxLayout* vb1 = new QVBoxLayout;
+  vb1->addWidget(new QLabel(tr("Description")));
+
+  _descriptionEdit = new QLineEdit();
+  vb1->addWidget(_descriptionEdit);
+
+  vLayout->addLayout(vb1);
+
+  // empty layout for custom content
+  _customLayout = new QVBoxLayout;
+  vLayout->addLayout(_customLayout);
+
+  // ok/cancel buttons
+  vLayout->addItem(new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding));
+
+  QHBoxLayout* hb2 = new QHBoxLayout;
+
+  hb2->addStretch();
+
+  _okButton = new QPushButton(tr("OK"));
+  hb2->addWidget(_okButton);
+
+  QPushButton* cancelButton = new QPushButton(tr("Cancel"));
+  hb2->addWidget(cancelButton);
+
+  vLayout->addLayout(hb2);
+
+  // wire up ui events
+  connect(_okButton, SIGNAL(clicked()), this, SLOT(accept()));
+  connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
+}
+
+void BaseAnnotationDialog::updateButtonColorStyle(QPushButton* button, const QColor& color)
+{
+  if (button)
+  {
+    if (color.alpha() == 0)
+    {
+      button->setStyleSheet("QPushButton { color: black; }");
+    }
+    else
+    {
+      int invR = 255 - color.red();
+      int invG = 255 - color.green();
+      int invB = 255 - color.blue();
+      QColor invColor(invR, invG, invB);
+
+      button->setStyleSheet("QPushButton { color: " + invColor.name() + "; background-color: " + color.name() + " }");
+    }
+  }
+}
+
+//---------------------------------------------------------------------------
+
+AddMarkerDialog::AddMarkerDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::PlaceNode* marker, QWidget* parent, Qt::WindowFlags f)
+: BaseAnnotationDialog(mapNode, views, parent, f), _root(root), _altName(""), _editing(marker ? true : false), _inPosition(marker ? marker->getPosition() : osgEarth::GeoPoint()), _inNameSet(false)
+{
+  initialize();
+
+  if (marker)
+  {
+    osgEarth::Annotation::AnnotationData* data = marker->getAnnotationData();
+    
+    //Get marker text/name
+    _inName = marker->getText().length() > 0 ? marker->getText() : (data ? data->getName() : "");
+    _nameEdit->setText(tr(_inName.c_str()));
+    if (marker->getText().length() > 0 && data && data->getName().length() > 0 && marker->getText() != data->getName())
+      _altName = data->getName();
+
+    //Get marker description
+    _inDescription = data ? data->getDescription() : "";
+    _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+    //Set marker checkbox
+    _inNameSet = marker->getText().length() > 0;
+    _nameCheckbox->setChecked(_inNameSet);
+
+    _placeNode = marker;
+  }
+
+  if (_mapNode.valid() && _views.size() > 0)
+  {
+    _guiHandler = new AddPointsMouseHandler(this, _mapNode.get(), 0L, false);
+    for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+      (*it)->addEventHandler(_guiHandler.get());
+  }
+}
+
+void AddMarkerDialog::initialize()
+{
+  _okButton->setEnabled(_editing);
+
+  _nameEdit->setText(tr("New Marker"));
+
+  // add name display checkbox to the dialog
+  _nameCheckbox = new QCheckBox(tr("Display name"));
+  _nameCheckbox->setCheckState(Qt::Checked);
+  _customLayout->addWidget(_nameCheckbox);
+
+  // load marker image
+  QImage image(":/images/marker.png"); 
+  QImage glImage = QGLWidget::convertToGLFormat(image); 
+
+  unsigned char* data = new unsigned char[glImage.byteCount()];
+	for(int i=0; i<glImage.byteCount(); i++)
+	{
+		data[i] = glImage.bits()[i];
+	}
+
+  _markerImage = new osg::Image(); 
+  _markerImage->setImage(glImage.width(), 
+                         glImage.height(), 
+                         1, 
+                         4, 
+                         GL_RGBA, 
+                         GL_UNSIGNED_BYTE, 
+                         data, 
+                         osg::Image::USE_NEW_DELETE, 
+                         1); 
+
+  // setup placemark style
+  _placeStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+  // wire up UI events
+  connect(_nameCheckbox, SIGNAL(stateChanged(int)), this, SLOT(onNameCheckStateChanged(int)));
+  connect(_nameEdit, SIGNAL(textChanged(const QString&)), this, SLOT(onNameTextChanged(const QString&)));
+}
+
+void AddMarkerDialog::clearDisplay()
+{
+  if (!_editing && _root.valid())
+    _root->removeChild(_placeNode);
+
+  if (_guiHandler.valid())
+    for (ViewVector::const_iterator it = _views.begin(); it != _views.end(); ++it)
+      (*it)->removeEventHandler(_guiHandler.get());
+}
+
+void AddMarkerDialog::resetValues()
+{
+  _nameEdit->setText(_inNameSet ? tr(_inName.c_str()) : "");
+  _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+  if (_editing)
+  {
+    _placeNode->setPosition(_inPosition);
+  }
+  else
+  {
+    if (_root.valid())
+      _root->removeChild(_placeNode);
+  }
+}
+
+void AddMarkerDialog::mapMouseClick(const osgEarth::GeoPoint& point, int button)
+{
+  if (button == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+  {
+    if (!_placeNode.valid() && _root.valid())
+    {
+      _placeNode = new osgEarth::Annotation::PlaceNode(_mapNode, point, _markerImage, _nameCheckbox->checkState() == Qt::Checked ? getName() : "", _placeStyle);
+
+      if (_root.valid())
+        _root->addChild(_placeNode);
+    }
+    else
+    {
+      _placeNode->setPosition(point);
+    }
+
+    _okButton->setEnabled(true);
+  }
+}
+
+void AddMarkerDialog::accept()
+{
+  clearDisplay();
+
+  if (_placeNode.valid())
+  {
+    osgEarth::Annotation::AnnotationData* annoData = new osgEarth::Annotation::AnnotationData();
+    annoData->setName(_altName.length() > 0 ? _altName : getName());
+    annoData->setDescription(getDescription());
+    annoData->setViewpoint(osgEarth::Viewpoint(_placeNode->getPosition().vec3d(), 0.0, -90.0, 1e5, _placeNode->getPosition().getSRS()));
+    _placeNode->setAnnotationData(annoData);
+  }
+
+  QDialog::accept();
+}
+
+void AddMarkerDialog::reject()
+{
+  resetValues();
+  clearDisplay();
+  QDialog::reject();
+}
+
+void AddMarkerDialog::closeEvent(QCloseEvent* event)
+{
+  clearDisplay();
+  QDialog::closeEvent(event);
+}
+
+void AddMarkerDialog::onNameCheckStateChanged(int state)
+{
+  bool checked = state == Qt::Checked;
+  if (_placeNode.valid())
+    _placeNode->setText(checked ? getName() : "");
+}
+
+void AddMarkerDialog::onNameTextChanged(const QString& text)
+{
+  if (_placeNode.valid() && _nameCheckbox->checkState() == Qt::Checked)
+    _placeNode->setText(getName());
+}
+
+//---------------------------------------------------------------------------
+
+AddPathDialog::AddPathDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::FeatureNode* path, QWidget* parent, Qt::WindowFlags f)
+: BaseAnnotationDialog(mapNode, views, parent, f), _root(root), _draggers(0L), _pathColor(Color::White), _editing(path ? true : false)
+{
+  initialize();
+
+  //If editing an existing path
+  if (path)
+  {
+    osgEarth::Annotation::AnnotationData* data = path->getAnnotationData();
+    
+    //Get path name
+    _inName = data ? data->getName() : "";
+    _nameEdit->setText(tr(_inName.c_str()));
+
+    //Get path description
+    _inDescription = data ? data->getDescription() : "";
+    _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+    _pathNode = path;
+
+    const osgEarth::Features::Feature* feat = path->getFeature();
+    if (feat)
+    {
+      _inFeature = const_cast<osgEarth::Features::Feature*>(feat);
+
+      //Get path color
+      const osgEarth::Symbology::LineSymbol* lineSymbol = feat->style()->get<LineSymbol>();
+      if (lineSymbol)
+      {
+        _pathColor = lineSymbol->stroke()->color();
+        updateButtonColorStyle(_lineColorButton, QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()));
+      }
+
+      //Get path clamping
+      const osgEarth::Symbology::AltitudeSymbol* altSymbol = feat->style()->get<AltitudeSymbol>();
+      if (altSymbol)
+        _drapeCheckbox->setChecked(altSymbol->clamping() == AltitudeSymbol::CLAMP_TO_TERRAIN);
+
+      //Get path points
+      const osgEarth::Symbology::LineString* pathLine = dynamic_cast<const osgEarth::Symbology::LineString*>(feat->getGeometry());
+      if (pathLine)
+      {
+        for (osgEarth::Symbology::LineString::const_iterator it = pathLine->begin(); it != pathLine->end(); ++it)
+          addPoint(osgEarth::GeoPoint(_mapNode->getMapSRS(), (*it).x(), (*it).y(), (*it).z(), ALTMODE_RELATIVE));
+      }
+    }
+  }
+
+  if (_mapNode.valid() && _views.size() > 0)
+  {
+    _guiHandler = new AddPointsMouseHandler(this, _mapNode.get(), _root);
+    for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+      (*it)->addEventHandler(_guiHandler.get());
+  }
+}
+
+void AddPathDialog::initialize()
+{
+  _okButton->setEnabled(false);
+
+  _nameEdit->setText(tr("New Path"));
+
+  // add path color selection button
+  _lineColorButton = new QPushButton(tr("Path Color"));
+  _lineColorButton->setStyleSheet("QPushButton { color: black; background-color: white }");
+  _customLayout->addWidget(_lineColorButton);
+
+  // add name display checkbox to the dialog
+  _drapeCheckbox = new QCheckBox(tr("Clamp to terrain"));
+  _drapeCheckbox->setCheckState(Qt::Checked);
+  _customLayout->addWidget(_drapeCheckbox);
+
+  // wire up UI events
+  connect(_drapeCheckbox, SIGNAL(stateChanged(int)), this, SLOT(onDrapeCheckStateChanged(int)));
+  connect(_lineColorButton, SIGNAL(clicked()), this, SLOT(onLineColorButtonClicked()));
+}
+
+void AddPathDialog::clearDisplay()
+{
+  if (_root.valid())
+  {
+    if (!_editing)
+      _root->removeChild(_pathNode);
+
+    _root->removeChild(_draggers);
+  }
+
+  if (_guiHandler.valid())
+  {
+    for (ViewVector::const_iterator it = _views.begin(); it != _views.end(); ++it)
+      (*it)->removeEventHandler(_guiHandler.get());
+
+    _guiHandler->clearDisplay();
+  }
+}
+
+void AddPathDialog::resetValues()
+{
+  _nameEdit->setText(tr(_inName.c_str()));
+  _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+  if (_inFeature.valid())
+  {
+    _pathNode->setFeature(_inFeature);
+  }
+  else
+  {
+    if (_root.valid())
+    {
+      _root->removeChild(_pathNode);
+      _pathNode = 0L;
+      _pathLine = 0L;
+    }
+  }
+}
+
+void AddPathDialog::mapMouseClick(const osgEarth::GeoPoint& point, int button)
+{
+  if (button == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+  {
+    addPoint(point);
+  }
+}
+
+void AddPathDialog::refreshFeatureNode()
+{
+  if (_pathNode.valid() && _pathFeature.valid())  
+  {
+    _pathFeature->style()->getOrCreate<LineSymbol>()->stroke()->color() = _pathColor;
+    _pathFeature->style()->getOrCreate<AltitudeSymbol>()->clamping() = _drapeCheckbox->checkState() == Qt::Checked ? AltitudeSymbol::CLAMP_TO_TERRAIN : AltitudeSymbol::CLAMP_ABSOLUTE;
+    _pathNode->setFeature(_pathFeature);
+  }
+}
+
+void AddPathDialog::createPointDragger(int index, const osgEarth::GeoPoint& point)
+{
+  osgEarth::SphereDragger* sd = new osgEarth::SphereDragger(_mapNode);
+  sd->setSize(4.0f);
+  sd->setColor(Color::Magenta);
+  sd->setPickColor(Color::Green);
+  sd->setPosition(point);
+  PointDraggerCallback* callback = new PointDraggerCallback(index, this);
+  sd->addPositionChangedCallback(callback);
+
+  if (!_draggers)
+  {
+    _draggers = new osg::Group();
+    _root->addChild(_draggers);
+  }
+
+  _draggers->addChild(sd);
+}
+
+void AddPathDialog::movePoint(int index, const osgEarth::GeoPoint& position)
+{
+  (*_pathLine.get())[index] = position.vec3d();
+  refreshFeatureNode();
+}
+
+void AddPathDialog::addPoint(const osgEarth::GeoPoint& point)
+{
+  if (!_pathLine.valid())
+    _pathLine = new osgEarth::Symbology::LineString();
+
+  _pathLine->push_back(point.vec3d());
+
+  if (!_pathFeature.valid() && _pathLine->size() > 1)
+  {
+    osgEarth::Symbology::Style pathStyle;
+    pathStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::White;
+    pathStyle.getOrCreate<LineSymbol>()->stroke()->width() = 2.0f;
+    pathStyle.getOrCreate<LineSymbol>()->tessellation() = 20;
+    pathStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+    _pathFeature = new osgEarth::Features::Feature(_pathLine, _mapNode->getMapSRS(), pathStyle);
+    //_pathFeature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+
+    if (!_pathNode.valid())
+    {
+      _pathNode = new osgEarth::Annotation::FeatureNode(_mapNode, _pathFeature);
+      _root->addChild(_pathNode);
+    }
+
+    _okButton->setEnabled(true);
+  }
+
+  refreshFeatureNode();
+  createPointDragger(_pathLine->size() - 1, point);
+}
+
+void AddPathDialog::accept()
+{
+  clearDisplay();
+
+  if (_pathNode.valid())
+  {
+    osgEarth::Annotation::AnnotationData* annoData = new osgEarth::Annotation::AnnotationData();
+    annoData->setName(getName());
+    annoData->setDescription(getDescription());
+    //annoData->setViewpoint(osgEarth::Viewpoint(_pathNode->getPosition().vec3d(), 0.0, -90.0, 1e5, _pathNode->getPosition().getSRS()));
+
+    _pathNode->setAnnotationData(annoData);
+  }
+
+  QDialog::accept();
+}
+
+void AddPathDialog::reject()
+{
+  resetValues();
+  clearDisplay();
+  QDialog::reject();
+}
+
+void AddPathDialog::closeEvent(QCloseEvent* event)
+{
+  clearDisplay();
+  QDialog::closeEvent(event);
+}
+
+void AddPathDialog::onDrapeCheckStateChanged(int state)
+{
+  refreshFeatureNode();
+}
+
+void AddPathDialog::onLineColorButtonClicked()
+{
+  QColor color = QColorDialog::getColor(QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()), this);
+  if (color.isValid())
+  {
+    _pathColor = osgEarth::Symbology::Color(color.redF(), color.greenF(), color.blueF());
+    refreshFeatureNode();
+
+    updateButtonColorStyle(_lineColorButton, color);
+  }
+}
+
+
+//---------------------------------------------------------------------------
+
+AddPolygonDialog::AddPolygonDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::FeatureNode* polygon, QWidget* parent, Qt::WindowFlags f)
+: BaseAnnotationDialog(mapNode, views, parent, f), _root(root), _draggers(0L), _pathColor(Color(Color::White, 0.0)), _fillColor(Color(Color::Black, 0.5)), _editing(polygon ? true : false)
+{
+  _polygon = new osgEarth::Symbology::Polygon();
+  
+  initialize();
+
+  //If editing an existing polygon
+  if (polygon)
+  {
+    osgEarth::Annotation::AnnotationData* data = polygon->getAnnotationData();
+
+    //Get path name
+    _inName = data ? data->getName() : "";
+    _nameEdit->setText(tr(_inName.c_str()));
+
+    //Get path description
+    _inDescription = data ? data->getDescription() : "";
+    _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+    _polyNode = polygon;
+
+    const osgEarth::Features::Feature* feat = polygon->getFeature();
+    if (feat)
+    {
+      _inFeature = const_cast<osgEarth::Features::Feature*>(feat);
+
+      //Get path color
+      const osgEarth::Symbology::LineSymbol* lineSymbol = feat->style()->get<LineSymbol>();
+      if (lineSymbol)
+      {
+        if (lineSymbol->stroke()->width() != 0.0)
+        {
+          _pathColor = lineSymbol->stroke()->color();
+          updateButtonColorStyle(_lineColorButton, QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()));
+        }
+      }
+
+      //Get fill color
+      const osgEarth::Symbology::PolygonSymbol* polySymbol = feat->style()->get<PolygonSymbol>();
+      if (polySymbol)
+      {
+        _fillColor = polySymbol->fill()->color();
+        updateButtonColorStyle(_fillColorButton, QColor::fromRgbF(_fillColor.r(), _fillColor.g(), _fillColor.b(), _fillColor.a()));
+      }
+
+      //Get draping
+      _drapeCheckbox->setChecked(polygon->isDraped());
+
+      //Get path points
+      const osgEarth::Symbology::Polygon* polyGeom = dynamic_cast<const osgEarth::Symbology::Polygon*>(feat->getGeometry());
+      if (polyGeom)
+      {
+        for (osgEarth::Symbology::LineString::const_iterator it = polyGeom->begin(); it != polyGeom->end(); ++it)
+          addPoint(osgEarth::GeoPoint(_mapNode->getMapSRS(), (*it).x(), (*it).y(), (*it).z(), ALTMODE_RELATIVE));
+      }
+    }
+  }
+  else
+  {
+    //Not editing an existing polygon
+    
+    //Add an end point to follow the mouse cursor
+    _polygon->push_back(osg::Vec3d(0.0, 0.0, 0.0));
+
+    //Add mouse handlers
+    if (_mapNode.valid() && _views.size() > 0)
+    {
+      _guiHandler = new AddPointsMouseHandler(this, _mapNode.get(), _root);
+      for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+        (*it)->addEventHandler(_guiHandler.get());
+    }
+  }
+}
+
+void AddPolygonDialog::initialize()
+{
+  _okButton->setEnabled(false);
+
+  _nameEdit->setText(tr("New Polygon"));
+
+  // add line color selection button
+  _lineColorButton = new QPushButton(tr("Line Color"));
+  _lineColorButton->setStyleSheet("QPushButton { color: black }");
+  _customLayout->addWidget(_lineColorButton);
+
+  // add fill color selection button
+  _fillColorButton = new QPushButton(tr("Fill Color"));
+  _fillColorButton->setStyleSheet("QPushButton { color: white; background-color: black }");
+  _customLayout->addWidget(_fillColorButton);
+
+  // add name display checkbox to the dialog
+  _drapeCheckbox = new QCheckBox(tr("Drape on terrain"));
+  _drapeCheckbox->setCheckState(Qt::Checked);
+  _customLayout->addWidget(_drapeCheckbox);
+
+  // wire up UI events
+  connect(_drapeCheckbox, SIGNAL(stateChanged(int)), this, SLOT(onDrapeCheckStateChanged(int)));
+  connect(_lineColorButton, SIGNAL(clicked()), this, SLOT(onLineColorButtonClicked()));
+  connect(_fillColorButton, SIGNAL(clicked()), this, SLOT(onFillColorButtonClicked()));
+}
+
+void AddPolygonDialog::clearDisplay()
+{
+  if (_root.valid())
+  {
+    if (!_editing)
+      _root->removeChild(_polyNode);
+
+    _root->removeChild(_draggers);
+  }
+
+  if (_guiHandler.valid())
+  {
+    for (ViewVector::const_iterator it = _views.begin(); it != _views.end(); ++it)
+      (*it)->removeEventHandler(_guiHandler.get());
+
+    _guiHandler->clearDisplay();
+  }
+}
+
+void AddPolygonDialog::resetValues()
+{
+  _nameEdit->setText(tr(_inName.c_str()));
+  _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+  if (_inFeature.valid())
+  {
+    _polyNode->setFeature(_inFeature);
+  }
+  else
+  {
+    if (_root.valid())
+    {
+      _root->removeChild(_polyNode);
+      _polyNode = 0L;
+      _polygon = 0L;
+    }
+  }
+}
+
+void AddPolygonDialog::mapMouseClick(const osgEarth::GeoPoint& point, int button)
+{
+  if (button == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+  {
+    addPoint(point);
+  }
+}
+
+void AddPolygonDialog::mapMouseMove(const osgEarth::GeoPoint& point)
+{
+  _polygon->back().set(point.vec3d());
+  refreshFeatureNode(true);
+}
+
+void AddPolygonDialog::refreshFeatureNode(bool geometryOnly)
+{
+  if (_polyNode.valid() && _polyFeature.valid())  
+  {
+    if (!geometryOnly)
+    {
+      if (_pathColor.a() == 0.0)
+      {
+        _polyFeature->style()->getOrCreate<LineSymbol>()->stroke()->color() = _fillColor;
+        _polyFeature->style()->getOrCreate<LineSymbol>()->stroke()->width() = 0.0;
+      }
+      else
+      {
+        _polyFeature->style()->getOrCreate<LineSymbol>()->stroke()->color() = _pathColor;
+        _polyFeature->style()->getOrCreate<LineSymbol>()->stroke()->width() = ANNOTATION_PATH_WIDTH;
+      }
+      
+
+      _polyFeature->style()->getOrCreate<PolygonSymbol>()->fill()->color() = _fillColor;
+      //_polyFeature->style()->getOrCreate<AltitudeSymbol>()->clamping() = _drapeCheckbox->checkState() == Qt::Checked ? AltitudeSymbol::CLAMP_TO_TERRAIN : AltitudeSymbol::CLAMP_ABSOLUTE;
+    }
+
+    _polyNode->setFeature(_polyFeature);
+  }
+}
+
+void AddPolygonDialog::createPointDragger(int index, const osgEarth::GeoPoint& point)
+{
+  osgEarth::SphereDragger* sd = new osgEarth::SphereDragger(_mapNode);
+  sd->setSize(4.0f);
+  sd->setColor(Color::Magenta);
+  sd->setPickColor(Color::Green);
+  sd->setPosition(point);
+  PointDraggerCallback* callback = new PointDraggerCallback(index, this);
+  sd->addPositionChangedCallback(callback);
+
+  if (!_draggers)
+  {
+    _draggers = new osg::Group();
+    _root->addChild(_draggers);
+  }
+
+  _draggers->addChild(sd);
+}
+
+void AddPolygonDialog::movePoint(int index, const osgEarth::GeoPoint& position)
+{
+  (*_polygon.get())[index] = position.vec3d();
+  refreshFeatureNode();
+}
+
+void AddPolygonDialog::addPoint(const osgEarth::GeoPoint& point)
+{
+  if (_editing)
+    _polygon->push_back(point.vec3d());
+  else
+    _polygon->insert(_polygon->end() - 1, point.vec3d());
+
+  if (!_polyFeature.valid() && _polygon->size() > 2)
+  {
+    osgEarth::Symbology::Style polyStyle;
+    polyStyle.getOrCreate<LineSymbol>()->stroke()->color() = _pathColor;
+    polyStyle.getOrCreate<LineSymbol>()->stroke()->width() = ANNOTATION_PATH_WIDTH;
+    polyStyle.getOrCreate<LineSymbol>()->tessellation() = 20;
+    polyStyle.getOrCreate<PolygonSymbol>()->fill()->color() = _fillColor;
+    polyStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+    _polyFeature = new osgEarth::Features::Feature(_polygon, _mapNode->getMapSRS(), polyStyle);
+
+    if (!_polyNode.valid())
+    {
+      _polyNode = new osgEarth::Annotation::FeatureNode(_mapNode, _polyFeature, _drapeCheckbox->checkState() == Qt::Checked);
+      _root->addChild(_polyNode);
+    }
+
+    _okButton->setEnabled(true);
+  }
+
+  refreshFeatureNode();
+  createPointDragger(_polygon->size() - 1, point);
+}
+
+void AddPolygonDialog::accept()
+{
+  clearDisplay();
+
+  if (_polyNode.valid())
+  {
+    //Remove active cursor point
+    if (!_editing)
+    {
+      _polygon->pop_back();
+      refreshFeatureNode(true);
+    }
+
+    //Create AnnotationData object for this annotation
+    osgEarth::Annotation::AnnotationData* annoData = new osgEarth::Annotation::AnnotationData();
+    annoData->setName(getName());
+    annoData->setDescription(getDescription());
+    //annoData->setViewpoint(osgEarth::Viewpoint(_pathNode->getPosition().vec3d(), 0.0, -90.0, 1e5, _pathNode->getPosition().getSRS()));
+
+    _polyNode->setAnnotationData(annoData);
+  }
+
+  QDialog::accept();
+}
+
+void AddPolygonDialog::reject()
+{
+  resetValues();
+  clearDisplay();
+  QDialog::reject();
+}
+
+void AddPolygonDialog::closeEvent(QCloseEvent* event)
+{
+  clearDisplay();
+  QDialog::closeEvent(event);
+}
+
+void AddPolygonDialog::onDrapeCheckStateChanged(int state)
+{
+  if (_polyNode.valid())
+  {
+    _root->removeChild(_polyNode);
+    _polyNode = new osgEarth::Annotation::FeatureNode(_mapNode, _polyFeature, _drapeCheckbox->checkState() == Qt::Checked);
+    _root->addChild(_polyNode);
+  }
+}
+
+void AddPolygonDialog::onLineColorButtonClicked()
+{
+  QColor color = QColorDialog::getColor(QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()), this, tr("Select outline color..."), QColorDialog::ShowAlphaChannel);
+  if (color.isValid())
+  {
+    _pathColor = osgEarth::Symbology::Color(color.redF(), color.greenF(), color.blueF(), color.alphaF());
+    refreshFeatureNode();
+
+    updateButtonColorStyle(_lineColorButton, color);
+  }
+}
+
+void AddPolygonDialog::onFillColorButtonClicked()
+{
+  QColor color = QColorDialog::getColor(QColor::fromRgbF(_fillColor.r(), _fillColor.g(), _fillColor.b(), _fillColor.a()), this, tr("Select fill color..."), QColorDialog::ShowAlphaChannel);
+  if (color.isValid())
+  {
+    _fillColor = osgEarth::Symbology::Color(color.redF(), color.greenF(), color.blueF(), color.alphaF());
+    refreshFeatureNode();
+
+    updateButtonColorStyle(_fillColorButton, color);
+  }
+}
+
+//---------------------------------------------------------------------------
+
+AddEllipseDialog::AddEllipseDialog(osg::Group* root, osgEarth::MapNode* mapNode, const ViewVector& views, osgEarth::Annotation::EllipseNode* ellipse, QWidget* parent, Qt::WindowFlags f)
+: BaseAnnotationDialog(mapNode, views, parent, f), _root(root), _pathColor(Color(Color::White, 0.0)), _fillColor(Color(Color::Black, 0.5)),
+_editing(ellipse ? true : false), _inStyle(ellipse ? ellipse->getStyle() : osgEarth::Symbology::Style())
+{
+  initialize();
+
+  if (ellipse)
+  {
+    osgEarth::Annotation::AnnotationData* data = ellipse->getAnnotationData();
+
+    //Get path name
+    _inName = data ? data->getName() : "";
+    _nameEdit->setText(tr(_inName.c_str()));
+
+    //Get path description
+    _inDescription = data ? data->getDescription() : "";
+    _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+    _inPosition = ellipse->getPosition();
+    _inRadiusMajor = ellipse->getRadiusMajor();
+    _inRadiusMinor = ellipse->getRadiusMinor();
+    _inRotationAngle = ellipse->getRotationAngle();
+
+    _ellipseNode = ellipse;
+
+    //Get path color
+    const osgEarth::Symbology::LineSymbol* lineSymbol = ellipse->getStyle().get<LineSymbol>();
+    if (lineSymbol)
+    {
+      if (lineSymbol->stroke()->width() != 0.0)
+      {
+        _pathColor = lineSymbol->stroke()->color();
+        updateButtonColorStyle(_lineColorButton, QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()));
+      }
+    }
+
+    //Get fill color
+    const osgEarth::Symbology::PolygonSymbol* polySymbol = ellipse->getStyle().get<PolygonSymbol>();
+    if (polySymbol)
+    {
+      _fillColor = polySymbol->fill()->color();
+      updateButtonColorStyle(_fillColorButton, QColor::fromRgbF(_fillColor.r(), _fillColor.g(), _fillColor.b(), _fillColor.a()));
+    }
+
+    //Get draping
+    _drapeCheckbox->setChecked(ellipse->isDraped());
+
+    //Call refreshFeatureNode to update _ellipseStyle
+    refreshFeatureNode();
+
+    //Add the ellipse
+    addEllipse(ellipse->getPosition(), ellipse->getRadiusMajor(), ellipse->getRadiusMinor(), ellipse->getRotationAngle());
+  }
+  else
+  {
+    if (_mapNode.valid() && _views.size() > 0)
+    {
+      _guiHandler = new AddEllipseMouseHandler(this, _mapNode.get(), _root);
+      for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+        (*it)->addEventHandler(_guiHandler.get());
+    }
+  }
+}
+
+void AddEllipseDialog::initialize()
+{
+  //Define the default ellipse style
+  _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->color() = _fillColor;
+  _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->width() = 0.0;
+  _ellipseStyle.getOrCreate<PolygonSymbol>()->fill()->color() = _fillColor;
+  _ellipseStyle.getOrCreate<osgEarth::Symbology::AltitudeSymbol>()->clamping() = osgEarth::Symbology::AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+  //Set _okButton disabled until an ellipse is drawn
+  _okButton->setEnabled(false);
+
+  _nameEdit->setText(tr("New Ellipse"));
+
+  // add line color selection button
+  _lineColorButton = new QPushButton(tr("Line Color"));
+  _lineColorButton->setStyleSheet("QPushButton { color: black }");
+  _customLayout->addWidget(_lineColorButton);
+
+  // add fill color selection button
+  _fillColorButton = new QPushButton(tr("Fill Color"));
+  _fillColorButton->setStyleSheet("QPushButton { color: white; background-color: black }");
+  _customLayout->addWidget(_fillColorButton);
+
+  // add name display checkbox to the dialog
+  _drapeCheckbox = new QCheckBox(tr("Drape on terrain"));
+  _drapeCheckbox->setCheckState(Qt::Checked);
+  _customLayout->addWidget(_drapeCheckbox);
+
+  // wire up UI events
+  connect(_drapeCheckbox, SIGNAL(stateChanged(int)), this, SLOT(onDrapeCheckStateChanged(int)));
+  connect(_lineColorButton, SIGNAL(clicked()), this, SLOT(onLineColorButtonClicked()));
+  connect(_fillColorButton, SIGNAL(clicked()), this, SLOT(onFillColorButtonClicked()));
+}
+
+void AddEllipseDialog::clearDisplay()
+{
+  if (_root.valid())
+  {
+    if (!_editing)
+      _root->removeChild(_ellipseNode);
+
+    _root->removeChild(_editor);
+  }
+
+  removeGuiHandlers();
+}
+
+void AddEllipseDialog::resetValues()
+{
+  _nameEdit->setText(tr(_inName.c_str()));
+  _descriptionEdit->setText(tr(_inDescription.c_str()));
+
+  if (_editing && _ellipseNode.valid())
+  {
+    _ellipseNode->setPosition(_inPosition);
+    _ellipseNode->setRadii(_inRadiusMajor, _inRadiusMinor);
+    _ellipseNode->setRotationAngle(_inRotationAngle);
+    _ellipseNode->setStyle(_inStyle);
+  }
+}
+
+void AddEllipseDialog::removeGuiHandlers()
+{
+  if (_guiHandler.valid())
+  {
+    for (ViewVector::const_iterator it = _views.begin(); it != _views.end(); ++it)
+      (*it)->removeEventHandler(_guiHandler.get());
+
+    _guiHandler = 0L;
+  }
+}
+
+void AddEllipseDialog::addEllipse(const osgEarth::GeoPoint& position, const Linear& radiusMajor, const Linear& radiusMinor, const Angular& rotationAngle)
+{
+  if (!_ellipseNode.valid())
+  {
+    _ellipseNode = new osgEarth::Annotation::EllipseNode(_mapNode, position, radiusMajor, radiusMinor, rotationAngle, _ellipseStyle, _drapeCheckbox->checkState() == Qt::Checked);
+    _root->addChild(_ellipseNode);
+  }
+  else
+  {
+    _ellipseNode->setPosition(position);
+    _ellipseNode->setRadii(radiusMajor, radiusMinor);
+    _ellipseNode->setRotationAngle(rotationAngle);
+  }
+
+  if (!_editor.valid())
+  {
+    _editor = new osgEarth::Annotation::EllipseNodeEditor(_ellipseNode);
+    _root->addChild(_editor);
+  }
+
+  if (_guiHandler.valid())
+    _guiHandler->setCapturing(false);
+
+  _okButton->setEnabled(true);
+}
+
+void AddEllipseDialog::refreshFeatureNode(bool geometryOnly)
+{
+  if (_pathColor.a() == 0.0)
+  {
+    _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->color() = _fillColor;
+    _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->width() = 0.0;
+  }
+  else
+  {
+    _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->color() = _pathColor;
+    _ellipseStyle.getOrCreate<LineSymbol>()->stroke()->width() = ANNOTATION_PATH_WIDTH;
+  }
+
+  _ellipseStyle.getOrCreate<PolygonSymbol>()->fill()->color() = _fillColor;
+
+  if (_ellipseNode.valid())
+    _ellipseNode->setStyle(_ellipseStyle);
+}
+
+void AddEllipseDialog::accept()
+{
+  clearDisplay();
+
+  if (_ellipseNode.valid())
+  {
+    //Create AnnotationData object for this annotation
+    osgEarth::Annotation::AnnotationData* annoData = new osgEarth::Annotation::AnnotationData();
+    annoData->setName(getName());
+    annoData->setDescription(getDescription());
+    annoData->setViewpoint(osgEarth::Viewpoint(_ellipseNode->getPosition().vec3d(), 0.0, -90.0, 1e5, _ellipseNode->getPosition().getSRS()));
+
+    _ellipseNode->setAnnotationData(annoData);
+  }
+
+  QDialog::accept();
+}
+
+void AddEllipseDialog::reject()
+{
+  resetValues();
+  clearDisplay();
+  QDialog::reject();
+}
+
+void AddEllipseDialog::closeEvent(QCloseEvent* event)
+{
+  clearDisplay();
+  QDialog::closeEvent(event);
+}
+
+void AddEllipseDialog::onDrapeCheckStateChanged(int state)
+{
+  if (_ellipseNode.valid())
+    addEllipse(_ellipseNode->getPosition(), _ellipseNode->getRadiusMajor(), _ellipseNode->getRadiusMinor(), _ellipseNode->getRotationAngle());
+}
+
+void AddEllipseDialog::onLineColorButtonClicked()
+{
+  QColor color = QColorDialog::getColor(QColor::fromRgbF(_pathColor.r(), _pathColor.g(), _pathColor.b(), _pathColor.a()), this, tr("Select outline color..."), QColorDialog::ShowAlphaChannel);
+  if (color.isValid())
+  {
+    _pathColor = osgEarth::Symbology::Color(color.redF(), color.greenF(), color.blueF(), color.alphaF());
+    refreshFeatureNode();
+
+    updateButtonColorStyle(_lineColorButton, color);
+  }
+}
+
+void AddEllipseDialog::onFillColorButtonClicked()
+{
+  QColor color = QColorDialog::getColor(QColor::fromRgbF(_fillColor.r(), _fillColor.g(), _fillColor.b(), _fillColor.a()), this, tr("Select fill color..."), QColorDialog::ShowAlphaChannel);
+  if (color.isValid())
+  {
+    _fillColor = osgEarth::Symbology::Color(color.redF(), color.greenF(), color.blueF(), color.alphaF());
+    refreshFeatureNode();
+
+    updateButtonColorStyle(_fillColorButton, color);
+  }
+}
\ No newline at end of file
diff --git a/src/osgEarthQt/AnnotationListWidget b/src/osgEarthQt/AnnotationListWidget
new file mode 100644
index 0000000..4ade76f
--- /dev/null
+++ b/src/osgEarthQt/AnnotationListWidget
@@ -0,0 +1,85 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_ANNOTATIONLISTWIDGET_H
+#define OSGEARTHQT_ANNOTATIONLISTWIDGET_H 1
+
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/AnnotationDialogs>
+#include <osgEarthQt/CollapsiblePairWidget>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <QAction>
+#include <QFrame>
+#include <QLabel>
+#include <QListWidget>
+#include <QPointer>
+#include <QScrollArea>
+#include <QWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    class OSGEARTHQT_EXPORT AnnotationListWidget : public CollapsiblePairWidget
+    {
+    Q_OBJECT
+
+    public:
+      AnnotationListWidget(DataManager* dm);
+      virtual ~AnnotationListWidget() { }
+
+      void setActiveView(osgViewer::View* view);
+      void setActiveViews(const ViewVector& views);
+
+    private slots:
+      void onMapChanged();
+      void onSelectionChanged(/*const AnnotationVector& selection*/);
+      void onItemDoubleClicked(QListWidgetItem* item);
+      void onItemChanged(QListWidgetItem* item);
+      void onListSelectionChanged();
+      void onRemoveSelected();
+      void onEditSelected();
+      void onAddFinished(int result);
+
+    protected:
+      friend class AnnotationListActionCallbackProxy;
+
+      void initialize();
+      void refresh();
+
+      QListWidget*  _annoList;
+      QScrollArea*  _detailsScroll;
+      QFrame*       _detailsBox;
+      QLabel*       _nameField;
+      QLabel*       _priorityField;
+      QLabel*       _viewpointField;
+      QLabel*       _descriptionField;
+      QAction*      _removeAction;
+      QAction*      _editAction;
+
+      QPointer<BaseAnnotationDialog>  _activeDialog;
+
+      osg::ref_ptr<DataManager>  _manager;
+      ViewVector                 _views;
+      int                        _updating;
+    };
+} }
+
+#endif // OSGEARTHQT_ANNOTATIONLISTWIDGET_H
diff --git a/src/osgEarthQt/AnnotationListWidget.cpp b/src/osgEarthQt/AnnotationListWidget.cpp
new file mode 100644
index 0000000..cf72068
--- /dev/null
+++ b/src/osgEarthQt/AnnotationListWidget.cpp
@@ -0,0 +1,373 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/AnnotationListWidget>
+#include <osgEarthQt/AnnotationDialogs>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/GuiActions>
+
+#include <osgEarthAnnotation/EllipseNode>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/PlaceNode>
+
+#include <QFrame>
+#include <QGridLayout>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QListWidget>
+#include <QPushButton>
+#include <QScrollArea>
+#include <QSizePolicy>
+#include <QToolBar>
+#include <QVBoxLayout>
+#include <QWidget>
+
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+namespace
+{
+  class AnnotationListItem : public QListWidgetItem
+  {
+  public:
+    AnnotationListItem(osgEarth::Annotation::AnnotationNode* annotation) : _annotation(annotation) { }
+
+    osgEarth::Annotation::AnnotationNode* annotation() { return _annotation.get(); }
+
+  private:
+	  osg::ref_ptr<osgEarth::Annotation::AnnotationNode> _annotation;
+  };
+}
+
+namespace osgEarth { namespace QtGui
+{
+  class AnnotationListActionCallbackProxy : public ActionCallback
+  {
+  public:
+    AnnotationListActionCallbackProxy(AnnotationListWidget* annoList) : _annoList(annoList) { }
+
+    void operator()( void* sender, Action* action )
+    {
+      if (_annoList)
+      {
+        Action* foundAction = dynamic_cast<ToggleNodeAction*>(action);
+        if (foundAction)
+          _annoList->refresh();
+      }
+    }
+
+  private:
+    AnnotationListWidget* _annoList;
+  };
+} }
+
+AnnotationListWidget::AnnotationListWidget(DataManager* dm)
+  : _manager(dm), _updating(0)
+{
+  initialize();
+
+  if (_manager.valid())
+  {
+    connect(_manager.get(), SIGNAL(mapChanged()), this, SLOT(onMapChanged()));
+    connect(_manager.get(), SIGNAL(selectionChanged(/*const AnnotationVector&*/)), this, SLOT(onSelectionChanged(/*const AnnotationVector&*/)));
+
+    _manager->addAfterActionCallback(new AnnotationListActionCallbackProxy(this));
+  }
+}
+
+void AnnotationListWidget::setActiveView(osgViewer::View* view)
+{
+  _views.clear();
+  _views.push_back(view);
+}
+
+void AnnotationListWidget::setActiveViews(const ViewVector& views)
+{
+  _views.clear();
+  _views.insert(_views.end(), views.begin(), views.end());
+}
+
+void AnnotationListWidget::initialize()
+{
+  //create list layout
+  QWidget* listBox = new QWidget;
+  QVBoxLayout* listLayout = new QVBoxLayout;
+  listLayout->setSpacing(0);
+  listLayout->setContentsMargins(0, 0, 0, 0);
+  listBox->setLayout(listLayout);
+
+  //create toolbar with add/remove actions
+  QToolBar* listBar = new QToolBar;
+  listBar->setIconSize(QSize(16, 16));
+
+  _removeAction = new QAction(QIcon(":/images/minus.png"), tr("Remove Annotation"), this);
+  _removeAction->setStatusTip(tr("Remove selected annotation"));
+  _removeAction->setEnabled(false);
+  connect(_removeAction, SIGNAL(triggered()), this, SLOT(onRemoveSelected()));
+  listBar->addAction(_removeAction);
+
+  _editAction = new QAction(QIcon(":/images/edit.png"), tr("Edit Annotation"), this);
+  _editAction->setStatusTip(tr("Edit selected annotation"));
+  _editAction->setEnabled(false);
+  connect(_editAction, SIGNAL(triggered()), this, SLOT(onEditSelected()));
+  listBar->addAction(_editAction);
+
+  listLayout->addWidget(listBar);
+
+
+  //create list
+  _annoList = new QListWidget();
+  _annoList->setSelectionMode(QAbstractItemView::ExtendedSelection);
+  listLayout->addWidget(_annoList);
+
+  setPrimaryWidget(listBox);
+  setPrimaryTitle("Annotations");
+
+  //create details panel
+  _detailsScroll = new QScrollArea;
+  _detailsScroll->setWidgetResizable(true);
+  _detailsBox = new QFrame;
+  QGridLayout* detailsLayout = new QGridLayout;
+  detailsLayout->setSpacing(4);
+  detailsLayout->setContentsMargins(2, 2, 2, 2);
+  _detailsBox->setLayout(detailsLayout);
+  _detailsBox->setObjectName("oeFrameContainer");
+  _detailsScroll->setWidget(_detailsBox);
+
+  detailsLayout->addWidget(new QLabel(tr("Name:")), 0, 0, Qt::AlignLeft);
+  _nameField = new QLabel(tr("-----"));
+  detailsLayout->addWidget(_nameField, 0, 1, Qt::AlignLeft);
+
+  detailsLayout->addWidget(new QLabel(tr("Priority:")), 1, 0, Qt::AlignLeft);
+  _priorityField = new QLabel(tr("-----"));
+  detailsLayout->addWidget(_priorityField, 1, 1, Qt::AlignLeft);
+
+  detailsLayout->addWidget(new QLabel(tr("Viewpoint:")), 2, 0, Qt::AlignLeft);
+  _viewpointField = new QLabel(tr("-----"));
+  detailsLayout->addWidget(_viewpointField, 2, 1, Qt::AlignLeft);
+
+  detailsLayout->addWidget(new QLabel(tr("Description:")), 3, 0, Qt::AlignLeft);
+  _descriptionField = new QLabel;
+  _descriptionField->setContentsMargins(4, 4, 4, 4);
+  _descriptionField->setIndent(6);
+  detailsLayout->addWidget(_descriptionField, 4, 0, 1, 2, Qt::AlignLeft);
+
+  setSecondaryWidget(_detailsScroll);
+  setSecondaryTitle("Details");
+
+  //connect list events
+  connect(_annoList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(onItemDoubleClicked(QListWidgetItem*)));
+  connect(_annoList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(onItemChanged(QListWidgetItem*)));
+  connect(_annoList, SIGNAL(itemSelectionChanged()), this, SLOT(onListSelectionChanged()));
+
+  refresh();
+}
+
+void AnnotationListWidget::refresh()
+{
+  _updating++;
+
+  if (_manager.valid())
+  {
+    _annoList->clear();
+
+    osgEarth::Annotation::AnnotationData* annoData = 0L;
+    bool annoDataSet = false;
+
+    AnnotationVector annos;
+    _manager->getAnnotations(annos);
+    for (AnnotationVector::const_iterator it = annos.begin(); it != annos.end(); ++it)
+    {
+      AnnotationListItem* item = new AnnotationListItem(*it);
+      item->setText(QString(tr((*it)->getAnnotationData() ? (*it)->getAnnotationData()->getName().c_str() : "Annotation")));
+      item->setCheckState((*it)->getNodeMask() != 0 ? Qt::Checked : Qt::Unchecked);
+
+      _annoList->addItem(item);
+
+      if (_manager->isSelected(*it))
+      {
+        if (!annoDataSet)
+        {
+          annoData = (*it)->getAnnotationData();
+          annoDataSet = true;
+        }
+        else
+          annoData = 0L;
+
+        item->setSelected(true);
+      }
+    }
+
+    _nameField->setText(tr(annoData ? annoData->getName().c_str() : "-----"));
+    _priorityField->setText(annoData ? QString::number(annoData->getPriority()) : tr("-----"));
+    _viewpointField->setText(tr(annoData && annoData->getViewpoint() ? annoData->getViewpoint()->toString().c_str() : "-----"));
+    _descriptionField->setText(tr(annoData ? annoData->getDescription().c_str() : ""));
+  }
+
+  _updating--;
+}
+
+void AnnotationListWidget::onMapChanged()
+{
+  refresh();
+}
+
+void AnnotationListWidget::onSelectionChanged()
+{
+  refresh();
+}
+
+void AnnotationListWidget::onItemDoubleClicked(QListWidgetItem* item)
+{
+  if (!_manager.valid() || _views.size() == 0)
+    return;
+
+  AnnotationListItem* annoItem = dynamic_cast<AnnotationListItem*>(item);
+  if (annoItem && annoItem->annotation())
+  {
+    if (annoItem->annotation()->getAnnotationData() && annoItem->annotation()->getAnnotationData()->getViewpoint())
+    {
+      _manager->doAction(this, new SetViewpointAction(osgEarth::Viewpoint(*annoItem->annotation()->getAnnotationData()->getViewpoint()), _views));
+    }
+    else if (_manager->map())
+    {
+      osg::Vec3d center = annoItem->annotation()->getBound().center();
+
+      GeoPoint output;
+      output.fromWorld( _manager->map()->getSRS(), center );
+      //_manager->map()->worldPointToMapPoint(center, output);
+
+      _manager->doAction(this, new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, 1e5), _views));
+    }
+  }
+}
+
+void AnnotationListWidget::onItemChanged(QListWidgetItem* item)
+{
+  if (!_manager.valid())
+    return;
+
+  AnnotationListItem* annoItem = dynamic_cast<AnnotationListItem*>(item);
+  if (annoItem && annoItem->annotation())
+    _manager->doAction(this, new ToggleNodeAction(annoItem->annotation(), item->checkState() == Qt::Checked));
+}
+
+void AnnotationListWidget::onListSelectionChanged()
+{
+  if (_updating || !_manager.valid())
+    return;
+
+  AnnotationVector annos;
+
+  QList<QListWidgetItem*> items = _annoList->selectedItems();
+  for (QList<QListWidgetItem*>::iterator it = items.begin(); it != items.end(); ++it)
+  {
+    AnnotationListItem* annoItem = dynamic_cast<AnnotationListItem*>(*it);
+    if (annoItem && annoItem->annotation())
+      annos.push_back(annoItem->annotation());
+  }
+
+  _removeAction->setEnabled(items.count() > 0);
+  _editAction->setEnabled(items.count() == 1);
+
+  _manager->setSelectedAnnotations(annos);
+}
+
+void AnnotationListWidget::onRemoveSelected()
+{
+  AnnotationVector annos;
+
+  QList<QListWidgetItem*> items = _annoList->selectedItems();
+  for (QList<QListWidgetItem*>::iterator it = items.begin(); it != items.end(); ++it)
+  {
+    AnnotationListItem* annoItem = dynamic_cast<AnnotationListItem*>(*it);
+    if (annoItem && annoItem->annotation())
+      annos.push_back(annoItem->annotation());
+  }
+
+  for (AnnotationVector::iterator it = annos.begin(); it != annos.end(); ++it)
+    _manager->removeAnnotation(*it);
+}
+
+void AnnotationListWidget::onEditSelected()
+{
+  QListWidgetItem* item = _annoList->selectedItems()[0];
+
+  AnnotationListItem* annoItem = dynamic_cast<AnnotationListItem*>(item);
+  if (annoItem && annoItem->annotation())
+  {
+    osgEarth::Annotation::PlaceNode* placeNode = dynamic_cast<osgEarth::Annotation::PlaceNode*>(annoItem->annotation());
+    if (placeNode)
+    {
+      _activeDialog = new osgEarth::QtGui::AddMarkerDialog(placeNode->getParent(0), _manager->MapNode(), _views, placeNode);
+    }
+    else
+    {
+      osgEarth::Annotation::FeatureNode* featureNode = dynamic_cast<osgEarth::Annotation::FeatureNode*>(annoItem->annotation());
+      if (featureNode)
+      {
+        const osgEarth::Features::Feature* feat = featureNode->getFeature();
+        if (feat)
+        {
+          const osgEarth::Symbology::LineString* pathLine = dynamic_cast<const osgEarth::Symbology::LineString*>(feat->getGeometry());
+          if (pathLine)
+          {
+            _activeDialog = new osgEarth::QtGui::AddPathDialog(featureNode->getParent(0), _manager->MapNode(), _views, featureNode);
+          }
+          else
+          {
+            const osgEarth::Symbology::Polygon* polygon = dynamic_cast<const osgEarth::Symbology::Polygon*>(feat->getGeometry());
+            if (polygon)
+            {
+              _activeDialog = new osgEarth::QtGui::AddPolygonDialog(featureNode->getParent(0), _manager->MapNode(), _views, featureNode);
+            }
+          }
+        }
+      }
+      else
+      {
+        osgEarth::Annotation::EllipseNode* ellipse = dynamic_cast<osgEarth::Annotation::EllipseNode*>(annoItem->annotation());
+        if (ellipse)
+        {
+          _activeDialog = new osgEarth::QtGui::AddEllipseDialog(ellipse->getParent(0), _manager->MapNode(), _views, ellipse);
+        }
+      }
+    }
+
+    if (!_activeDialog.isNull())
+    {
+      this->setEnabled(false);
+
+      connect(_activeDialog, SIGNAL(finished(int)), this, SLOT(onAddFinished(int)));
+
+      _activeDialog->setWindowTitle(tr("Edit annotation"));
+      _activeDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+      _activeDialog->setAttribute(Qt::WA_DeleteOnClose);
+      _activeDialog->show();
+    }
+  }
+}
+
+void AnnotationListWidget::onAddFinished(int result)
+{
+  this->setEnabled(true);
+
+  if (result == QDialog::Accepted)
+    refresh();
+}
\ No newline at end of file
diff --git a/src/osgEarthQt/AnnotationToolbar b/src/osgEarthQt/AnnotationToolbar
new file mode 100644
index 0000000..2086362
--- /dev/null
+++ b/src/osgEarthQt/AnnotationToolbar
@@ -0,0 +1,74 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_ANNOTATIONTOOLBAR_H
+#define OSGEARTHQT_ANNOTATIONTOOLBAR_H 1
+
+#include <osgEarthQt/AnnotationDialogs>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <QAction>
+#include <QPointer>
+#include <QToolBar>
+
+
+namespace osgEarth { namespace QtGui
+{
+  class OSGEARTHQT_EXPORT AnnotationToolbar : public QToolBar
+  {
+    Q_OBJECT
+
+  public:
+    AnnotationToolbar(osg::Group* root, osgEarth::MapNode* mapNode, DataManager* dm=0L, QWidget* parent=0L);
+
+    void setActiveView(osgViewer::View* view);
+    void setActiveViews(const ViewVector& views);
+
+  signals:
+    void annotationCreated(osgEarth::Annotation::AnnotationNode* annotation);
+
+  protected slots:
+    void addMarkerAnnotation();
+    void addPathAnnotation();
+    void addPolyAnnotation();
+    void addEllipseAnnotation();
+
+    void onAddFinished(int result);
+
+  protected:
+    void initialize();
+    void createDefaultActions();
+    void addView(osgViewer::View* view);
+    void removeViews();
+
+    osg::ref_ptr<osg::Group>              _root;
+    osg::ref_ptr<osgEarth::MapNode>       _mapNode;
+    osg::ref_ptr<DataManager>             _manager;
+    ViewVector                            _views;
+
+    QAction* _addMarker;
+    QAction* _addPath;
+    QAction* _addPoly;
+    QAction* _addEllipse;
+
+    QPointer<BaseAnnotationDialog>  _activeDialog;
+  };
+} }
+
+#endif // OSGEARTHQT_ANNOTATIONTOOLBAR_H
diff --git a/src/osgEarthQt/AnnotationToolbar.cpp b/src/osgEarthQt/AnnotationToolbar.cpp
new file mode 100644
index 0000000..8b5ee89
--- /dev/null
+++ b/src/osgEarthQt/AnnotationToolbar.cpp
@@ -0,0 +1,178 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/AnnotationToolbar>
+
+#include <osgEarthQt/AnnotationDialogs>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <QAction>
+#include <QToolBar>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+
+//---------------------------------------------------------------------------
+
+AnnotationToolbar::AnnotationToolbar(osg::Group* root, osgEarth::MapNode* mapNode, DataManager* dm, QWidget* parent)
+: QToolBar(tr("_annotation_toolbar"), parent), _root(root), _mapNode(mapNode), _manager(dm)
+{
+  initialize();
+}
+
+void
+AnnotationToolbar::initialize()
+{
+  //setObjectName(tr("ANNOTATION_TOOLBAR"));
+	setIconSize(QSize(24, 24));
+
+  createDefaultActions();
+}
+
+void
+AnnotationToolbar::createDefaultActions()
+{
+  QObject* actionParent = parent();
+  if (!actionParent)
+    actionParent = this;
+
+  _addMarker = new QAction(QIcon(":/images/add_marker_bg.png"), tr(""), actionParent);
+  _addMarker->setToolTip(tr("Add a marker"));
+  connect(_addMarker, SIGNAL(triggered()), this, SLOT(addMarkerAnnotation()));
+  addAction(_addMarker);
+
+  _addPath = new QAction(QIcon(":/images/draw_line_bg.png"), tr(""), actionParent);
+  _addPath->setToolTip(tr("Draw a path"));
+  connect(_addPath, SIGNAL(triggered()), this, SLOT(addPathAnnotation()));
+  addAction(_addPath);
+
+  _addPoly = new QAction(QIcon(":/images/draw_poly_bg.png"), tr(""), actionParent);
+  _addPoly->setToolTip(tr("Draw a polygon"));
+  connect(_addPoly, SIGNAL(triggered()), this, SLOT(addPolyAnnotation()));
+  addAction(_addPoly);
+
+  _addEllipse = new QAction(QIcon(":/images/draw_circle_bg.png"), tr(""), actionParent);
+  _addEllipse->setToolTip(tr("Draw an ellipse"));
+  connect(_addEllipse, SIGNAL(triggered()), this, SLOT(addEllipseAnnotation()));
+  addAction(_addEllipse);
+}
+
+void AnnotationToolbar::setActiveView(osgViewer::View* view)
+{
+  removeViews();
+  addView(view);
+}
+
+void AnnotationToolbar::setActiveViews(const ViewVector& views)
+{
+  removeViews();
+
+  for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+    addView(*it);
+}
+
+void AnnotationToolbar::addView(osgViewer::View* view)
+{
+  _views.push_back(view);
+}
+
+void AnnotationToolbar::removeViews()
+{
+  _views.clear();
+}
+
+void
+AnnotationToolbar::addMarkerAnnotation()
+{
+  _activeDialog = new osgEarth::QtGui::AddMarkerDialog(_root, _mapNode, _views);
+
+  this->setEnabled(false);
+
+  connect(_activeDialog, SIGNAL(finished(int)), this, SLOT(onAddFinished(int)));
+
+  _activeDialog->setWindowTitle(tr("New marker"));
+  _activeDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+  _activeDialog->setAttribute(Qt::WA_DeleteOnClose);
+  _activeDialog->show();
+}
+
+void
+AnnotationToolbar::addPathAnnotation()
+{
+  _activeDialog = new osgEarth::QtGui::AddPathDialog(_root, _mapNode, _views);
+
+  this->setEnabled(false);
+
+  connect(_activeDialog, SIGNAL(finished(int)), this, SLOT(onAddFinished(int)));
+
+  _activeDialog->setWindowTitle(tr("New path"));
+  _activeDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+  _activeDialog->setAttribute(Qt::WA_DeleteOnClose);
+  _activeDialog->show();
+}
+
+void
+AnnotationToolbar::addPolyAnnotation()
+{
+  _activeDialog = new osgEarth::QtGui::AddPolygonDialog(_root, _mapNode, _views);
+
+  this->setEnabled(false);
+
+  connect(_activeDialog, SIGNAL(finished(int)), this, SLOT(onAddFinished(int)));
+
+  _activeDialog->setWindowTitle(tr("New polygon"));
+  _activeDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+  _activeDialog->setAttribute(Qt::WA_DeleteOnClose);
+  _activeDialog->show();
+}
+
+void
+AnnotationToolbar::addEllipseAnnotation()
+{
+  _activeDialog = new osgEarth::QtGui::AddEllipseDialog(_root, _mapNode, _views);
+
+  this->setEnabled(false);
+
+  connect(_activeDialog, SIGNAL(finished(int)), this, SLOT(onAddFinished(int)));
+
+  _activeDialog->setWindowTitle(tr("New ellipse"));
+  _activeDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+  _activeDialog->setAttribute(Qt::WA_DeleteOnClose);
+  _activeDialog->show();
+}
+
+void AnnotationToolbar::onAddFinished(int result)
+{
+  this->setEnabled(true);
+
+  if (result == QDialog::Accepted)
+  {
+    if (_root.valid())
+    {
+      osgEarth::Annotation::AnnotationNode* annotation = _activeDialog->getAnnotation();
+      if (annotation)
+      {
+        if (_manager.valid())
+          _manager->addAnnotation(annotation, _root);
+        else
+          _root->addChild(annotation);
+      }
+    }
+  }
+}
\ No newline at end of file
diff --git a/src/osgEarthQt/CMakeLists.txt b/src/osgEarthQt/CMakeLists.txt
new file mode 100644
index 0000000..6d0c673
--- /dev/null
+++ b/src/osgEarthQt/CMakeLists.txt
@@ -0,0 +1,112 @@
+IF   (DYNAMIC_OSGEARTH)
+    ADD_DEFINITIONS(-DOSGEARTHQT_LIBRARY)
+ELSE (DYNAMIC_OSGEARTH)
+    ADD_DEFINITIONS(-DOSGEARTHQT_LIBRARY_STATIC)
+ENDIF(DYNAMIC_OSGEARTH)
+
+SET(LIB_NAME osgEarthQt)
+
+SET(HEADER_PATH ${OSGEARTH_SOURCE_DIR}/include/${LIB_NAME})
+
+INCLUDE( ${QT_USE_FILE} )
+
+# Header files that need moc'd
+set(LIB_MOC_HDRS
+    AnnotationDialogs
+    AnnotationListWidget
+    AnnotationToolbar
+    CollapsiblePairWidget
+    DataManager
+    LayerManagerWidget
+    LOSControlWidget
+    LOSCreationDialog
+    MapCatalogWidget
+    TerrainProfileGraph
+    TerrainProfileWidget
+)
+
+# Qt resource files
+set(LIB_QT_RCS
+    images.qrc
+)
+
+# Qt UI files
+set(LIB_QT_UIS
+    ui/LOSCreationDialog.ui
+)
+
+QT4_ADD_RESOURCES( LIB_RC_SRCS ${LIB_QT_RCS} )
+
+QT4_WRAP_UI( LIB_UI_HDRS ${LIB_QT_UIS} )
+
+QT4_WRAP_CPP( LIB_UI_SRCS ${LIB_UI_HDRS} OPTIONS "-f" )
+
+QT4_WRAP_CPP( LIB_MOC_SRCS ${LIB_MOC_HDRS} OPTIONS "-f" )
+
+
+SET(LIB_PUBLIC_HEADERS
+#   header files go here
+    Actions
+    AnnotationDialogs
+    AnnotationListWidget
+    AnnotationToolbar
+    CollapsiblePairWidget
+    Common
+    DataManager
+    GuiActions
+    LayerManagerWidget
+    LOSControlWidget
+    LOSCreationDialog
+    MapCatalogWidget
+    MultiViewerWidget
+    TerrainProfileGraph
+    TerrainProfileWidget
+    ViewerWidget
+    ${LIB_UI_HDRS}
+    ${LIB_QT_UIS}
+    ${LIB_QT_RCS}
+)
+
+ADD_LIBRARY(${LIB_NAME} SHARED
+    ${LIB_PUBLIC_HEADERS}
+#  .cpp files go here
+    ${LIB_RC_SRCS}
+    ${LIB_UI_SRCS}
+    ${LIB_MOC_SRCS}
+    AnnotationDialogs.cpp
+    AnnotationListWidget.cpp
+    AnnotationToolbar.cpp
+    CollapsiblePairWidget.cpp
+    DataManager.cpp
+    LayerManagerWidget.cpp
+    LOSControlWidget.cpp
+    LOSCreationDialog.cpp
+    MapCatalogWidget.cpp
+    MultiViewerWidget.cpp
+    TerrainProfileGraph.cpp
+    TerrainProfileWidget.cpp
+    ViewerWidget.cpp
+)
+
+INCLUDE_DIRECTORIES(${OSG_INCLUDE_DIR} ${OSGEARTH_SOURCE_DIR} ${QT_INCLUDES} ${CMAKE_CURRENT_BINARY_DIR})
+
+IF (WIN32)
+  LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+ELSE(WIN32)
+  LINK_EXTERNAL(${LIB_NAME} ${TARGET_EXTERNAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+ENDIF(WIN32)
+
+LINK_INTERNAL(${LIB_NAME}
+    osgEarth
+    osgEarthAnnotation
+    osgEarthUtil
+    ${QT_QTCORE_LIBRARY}
+    ${QT_QTGUI_LIBRARY}
+    ${QT_QTOPENGL_LIBRARY}
+)
+
+LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGWIDGET_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGQT_LIBRARY OPENTHREADS_LIBRARY)
+
+LINK_CORELIB_DEFAULT(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
+
+INCLUDE(ModuleInstall OPTIONAL)
diff --git a/src/osgEarthQt/CollapsiblePairWidget b/src/osgEarthQt/CollapsiblePairWidget
new file mode 100644
index 0000000..36699df
--- /dev/null
+++ b/src/osgEarthQt/CollapsiblePairWidget
@@ -0,0 +1,78 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_COLLAPSIBLEPAIRWIDGET_H
+#define OSGEARTHQT_COLLAPSIBLEPAIRWIDGET_H 1
+
+#include <osgEarthQt/Common>
+
+#include <QFrame>
+#include <QLabel>
+#include <QPushButton>
+#include <QWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    class OSGEARTHQT_EXPORT CollapsiblePairWidget : public QFrame
+    {
+    Q_OBJECT
+
+    public:
+      CollapsiblePairWidget();
+      CollapsiblePairWidget(const QString& primaryTitle, QWidget* primaryWidget, const QString& secondaryTitle, QWidget* secondaryWidget);
+      virtual ~CollapsiblePairWidget() { }
+
+      void setPrimaryVisible(bool visible) { _primaryGroup->setVisible(visible); }
+      void setSecondaryVisible(bool visible) { _secondaryGroup->setVisible(visible); }
+
+      void setPrimaryTitle(const std::string& title) { _primaryTitle->setText(tr(title.c_str())); }
+      void setSecondaryTitle(const std::string& title) { _secondaryTitle->setText(tr(title.c_str())); }
+
+      void setPrimaryWidget(QWidget* widget);
+      void setSecondaryWidget(QWidget* widget);
+
+      void setPrimaryCollapsed(bool collapsed);
+      void setSecondaryCollapsed(bool collapsed);
+
+      void resetStyleSheet();
+
+    private slots:
+      void onPrimaryHideClicked(bool checked);
+      void onSecondaryHideClicked(bool checked);
+
+    protected:
+      static const std::string DEFAULT_STYLESHEET;
+
+      void initialize();
+
+      QIcon            _showIcon, _hideIcon;
+      QWidget*         _primaryGroup;
+      QWidget*         _secondaryGroup;
+      QLabel*          _primaryTitle;
+      QLabel*          _secondaryTitle;
+      QFrame*          _primaryContainer;
+      QFrame*          _secondaryContainer;
+      QPushButton*     _primaryHideButton;
+      QPushButton*     _secondaryHideButton;
+      QWidget*         _stretchBox;
+    };
+} }
+
+#endif // OSGEARTHQT_COLLAPSIBLEPAIRWIDGET_H
diff --git a/src/osgEarthQt/CollapsiblePairWidget.cpp b/src/osgEarthQt/CollapsiblePairWidget.cpp
new file mode 100644
index 0000000..f3c559b
--- /dev/null
+++ b/src/osgEarthQt/CollapsiblePairWidget.cpp
@@ -0,0 +1,214 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/CollapsiblePairWidget>
+
+#include <QFrame>
+#include <QGridLayout>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QPushButton>
+#include <QString>
+#include <QSizePolicy>
+#include <QVBoxLayout>
+#include <QWidget>
+
+using namespace osgEarth::QtGui;
+
+const std::string CollapsiblePairWidget::DEFAULT_STYLESHEET = "#oeFrameContainer, #oeFrameContainer * { background-color: rgba(255, 255, 255, 100%) } #oeItemHeader, #oeItemHeader * { background-color: grey; color: white; }";
+
+CollapsiblePairWidget::CollapsiblePairWidget()
+  : _showIcon(":/images/plus.png"), _hideIcon(":/images/minus.png")
+{
+  initialize();
+}
+
+CollapsiblePairWidget::CollapsiblePairWidget(const QString& primaryTitle, QWidget* primaryWidget, const QString& secondaryTitle, QWidget* secondaryWidget)
+  : _showIcon(":/images/plus.png"), _hideIcon(":/images/minus.png")
+{
+  initialize();
+  
+  _primaryTitle->setText(primaryTitle);
+
+  if (primaryWidget)
+    _primaryContainer->layout()->addWidget(primaryWidget);
+
+  _secondaryTitle->setText(secondaryTitle);
+
+  if (secondaryWidget)
+  _secondaryContainer->layout()->addWidget(secondaryWidget);
+}
+
+void CollapsiblePairWidget::resetStyleSheet()
+{
+  setStyleSheet(tr(DEFAULT_STYLESHEET.c_str()));
+}
+
+void CollapsiblePairWidget::initialize()
+{
+  // object name for custom stylesheets
+  setObjectName("oeFrameContainer");
+
+  // create the main vertical layout
+  QVBoxLayout* mainLayout = new QVBoxLayout;
+	mainLayout->setSpacing(0);
+	mainLayout->setContentsMargins(0, 0, 0, 0);
+  setLayout(mainLayout);
+
+  // create parent widget to hold the primary widget and header
+  _primaryGroup = new QWidget;
+  QVBoxLayout* primaryLayout = new QVBoxLayout;
+  primaryLayout->setSpacing(0);
+  primaryLayout->setContentsMargins(0, 0, 0, 0);
+  _primaryGroup->setLayout(primaryLayout);
+
+  // create primary header
+  QFrame* primaryHeader = new QFrame;
+  primaryHeader->setFrameStyle(QFrame::Box | QFrame::Plain);
+  primaryHeader->setLineWidth(1);
+  primaryHeader->setMaximumHeight(20);
+
+  QHBoxLayout* primaryHeaderLayout = new QHBoxLayout;
+  primaryHeaderLayout->setSpacing(4);
+  primaryHeaderLayout->setContentsMargins(2, 2, 2, 2);
+  primaryHeader->setLayout(primaryHeaderLayout);
+  primaryHeader->setObjectName("oeItemHeader");
+
+  _primaryTitle = new QLabel(tr("Primary"));
+  primaryHeaderLayout->addWidget(_primaryTitle);
+  primaryHeaderLayout->addStretch();
+
+  _primaryHideButton = new QPushButton(_hideIcon, tr(""));
+  _primaryHideButton->setFlat(true);
+  _primaryHideButton->setMaximumSize(16, 16);
+  primaryHeaderLayout->addWidget(_primaryHideButton);
+
+  primaryLayout->addWidget(primaryHeader);
+
+  // create primary widget container
+  _primaryContainer = new QFrame;
+  QVBoxLayout* primaryContainerLayout = new QVBoxLayout;
+  primaryContainerLayout->setSpacing(0);
+  primaryContainerLayout->setContentsMargins(0, 0, 0, 0);
+  _primaryContainer->setLayout(primaryContainerLayout);
+  _primaryContainer->setObjectName("oeFrameContainer");
+  primaryLayout->addWidget(_primaryContainer);
+
+  mainLayout->addWidget(_primaryGroup);
+
+  // create parent widget to hold the secondary widget and header
+  _secondaryGroup = new QWidget;
+  _secondaryGroup->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum);
+  QVBoxLayout* secondaryGroupLayout = new QVBoxLayout;
+  secondaryGroupLayout->setSpacing(0);
+  secondaryGroupLayout->setContentsMargins(0, 0, 0, 0);
+  _secondaryGroup->setLayout(secondaryGroupLayout);
+
+  //create secondary header
+  QFrame* secondaryHeader = new QFrame;
+  secondaryHeader->setFrameStyle(QFrame::Box | QFrame::Plain);
+  secondaryHeader->setLineWidth(1);
+  secondaryHeader->setMaximumHeight(20);
+
+  QHBoxLayout* secondaryHeaderLayout = new QHBoxLayout;
+  secondaryHeaderLayout->setSpacing(4);
+  secondaryHeaderLayout->setContentsMargins(2, 2, 2, 2);
+  secondaryHeader->setLayout(secondaryHeaderLayout);
+  secondaryHeader->setObjectName("oeItemHeader");
+
+  _secondaryTitle = new QLabel(tr("Secondary"));
+  secondaryHeaderLayout->addWidget(_secondaryTitle);
+  secondaryHeaderLayout->addStretch();
+
+  _secondaryHideButton = new QPushButton(_hideIcon, tr(""));
+  _secondaryHideButton->setFlat(true);
+  _secondaryHideButton->setMaximumSize(16, 16);
+  secondaryHeaderLayout->addWidget(_secondaryHideButton);
+
+  secondaryGroupLayout->addWidget(secondaryHeader);
+
+  //create secondary widget container
+  _secondaryContainer = new QFrame;
+  QVBoxLayout* secondaryContainerLayout = new QVBoxLayout;
+  secondaryContainerLayout->setSpacing(0);
+  secondaryContainerLayout->setContentsMargins(0, 0, 0, 0);
+  _secondaryContainer->setLayout(secondaryContainerLayout);
+  _secondaryContainer->setObjectName("oeFrameContainer");
+  secondaryGroupLayout->addWidget(_secondaryContainer);
+
+  mainLayout->addWidget(_secondaryGroup);
+
+  //create widget with a stretch child for layout purposes (not ideal)
+  _stretchBox = new QWidget;
+  QVBoxLayout* stretchLayout = new QVBoxLayout;
+  _stretchBox->setLayout(stretchLayout);
+  stretchLayout->addStretch();
+  mainLayout->addWidget(_stretchBox);
+  _stretchBox->setVisible(false);
+
+  //connect show/hide button click events
+  connect(_primaryHideButton, SIGNAL(clicked(bool)), this, SLOT(onPrimaryHideClicked(bool)));
+  connect(_secondaryHideButton, SIGNAL(clicked(bool)), this, SLOT(onSecondaryHideClicked(bool)));
+
+  resetStyleSheet();
+}
+
+void CollapsiblePairWidget::setPrimaryWidget(QWidget* widget)
+{
+  QLayout* primaryLayout = _primaryContainer->layout();
+
+  QLayoutItem *child;
+  while ((child = primaryLayout->takeAt(0)) != 0)
+     delete child;
+
+  primaryLayout->addWidget(widget);
+}
+
+void CollapsiblePairWidget::setSecondaryWidget(QWidget* widget)
+{
+  QLayout* secondaryLayout = _secondaryContainer->layout();
+
+  QLayoutItem *child;
+  while ((child = secondaryLayout->takeAt(0)) != 0)
+     delete child;
+
+  secondaryLayout->addWidget(widget);
+}
+
+void CollapsiblePairWidget::setPrimaryCollapsed(bool collapsed)
+{
+  _primaryHideButton->setIcon(collapsed ? _showIcon : _hideIcon);
+  _primaryContainer->setHidden(collapsed);
+  _stretchBox->setVisible(collapsed);
+}
+
+void CollapsiblePairWidget::setSecondaryCollapsed(bool collapsed)
+{
+  _secondaryHideButton->setIcon(collapsed ? _showIcon : _hideIcon);
+  _secondaryContainer->setHidden(collapsed);
+}
+
+void CollapsiblePairWidget::onPrimaryHideClicked(bool checked)
+{
+  setPrimaryCollapsed(!_primaryContainer->isHidden());
+}
+
+void CollapsiblePairWidget::onSecondaryHideClicked(bool checked)
+{
+  setSecondaryCollapsed(!_secondaryContainer->isHidden());
+}
diff --git a/src/osgEarthQt/Common b/src/osgEarthQt/Common
new file mode 100644
index 0000000..5efd9a6
--- /dev/null
+++ b/src/osgEarthQt/Common
@@ -0,0 +1,92 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHQT_COMMON_H
+#define OSGEARTHQT_COMMON_H 1
+
+#include <osgEarth/Common>
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgViewer/Viewer>
+
+// define USE_DEPRECATED_API is used to include in API which is being phased out
+// if you can compile your apps with this turned off you are
+// well placed for compatibility with future versions.
+#define USE_DEPRECATED_API
+
+#if defined(_MSC_VER)
+    #pragma warning( disable : 4244 )
+    #pragma warning( disable : 4251 )
+    #pragma warning( disable : 4267 )
+    #pragma warning( disable : 4275 )
+    #pragma warning( disable : 4290 )
+    #pragma warning( disable : 4786 )
+    #pragma warning( disable : 4305 )
+    #pragma warning( disable : 4996 )
+#endif
+
+#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined( __BCPLUSPLUS__)  || defined( __MWERKS__)
+    #  if defined( OSGEARTHQT_LIBRARY_STATIC )
+    #    define OSGEARTHQT_EXPORT
+    #  elif defined( OSGEARTHQT_LIBRARY )
+    #    define OSGEARTHQT_EXPORT   __declspec(dllexport)
+    #  else
+    #    define OSGEARTHQT_EXPORT   __declspec(dllimport)
+    #  endif
+#else
+    #  define OSGEARTHQT_EXPORT
+#endif  
+
+// set up define for whether member templates are supported by VisualStudio compilers.
+#ifdef _MSC_VER
+# if (_MSC_VER >= 1300)
+#  define __STL_MEMBER_TEMPLATES
+# endif
+#endif
+
+/* Define NULL pointer value */
+
+#ifndef NULL
+    #ifdef  __cplusplus
+        #define NULL    0
+    #else
+        #define NULL    ((void *)0)
+    #endif
+#endif
+
+#ifndef OSG_MIN_VERSION_REQUIRED
+    #define OSG_MIN_VERSION_REQUIRED(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION>MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION>MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION>=PATCH))))
+#endif
+
+#ifndef OSG_VERSION_LESS_THAN
+    #define OSG_VERSION_LESS_THAN(MAJOR, MINOR, PATCH) ((OPENSCENEGRAPH_MAJOR_VERSION<MAJOR) || (OPENSCENEGRAPH_MAJOR_VERSION==MAJOR && (OPENSCENEGRAPH_MINOR_VERSION<MINOR || (OPENSCENEGRAPH_MINOR_VERSION==MINOR && OPENSCENEGRAPH_PATCH_VERSION<PATCH))))
+#endif
+
+/**
+\namespace osgEarthQt
+*/
+
+namespace osgEarth { namespace QtGui {
+
+  typedef std::vector< osg::ref_ptr<osgEarth::Annotation::AnnotationNode> > AnnotationVector;
+  typedef std::vector< osg::ref_ptr<osgViewer::View> > ViewVector;
+    
+} }
+
+#endif // OSGEARTHQT_COMMON_H
+
diff --git a/src/osgEarthQt/DataManager b/src/osgEarthQt/DataManager
new file mode 100644
index 0000000..be23abf
--- /dev/null
+++ b/src/osgEarthQt/DataManager
@@ -0,0 +1,195 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_DATAMANAGER_H
+#define OSGEARTHQT_DATAMANAGER_H 1
+
+#include <osgEarthQt/Common>
+#include <osgEarthQt/Actions>
+
+#include <osgEarth/Map>
+#include <osgEarth/MapNode>
+#include <osgEarth/Viewpoint>
+
+#include <osgEarthAnnotation/AnnotationNode>
+
+#include <QObject>
+
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Annotation;
+    using namespace osgEarth::QtGui;
+
+    struct DataManagerMapCallback;
+    struct DataManagerElevationLayerCallback;
+    struct DataManagerImageLayerCallback;
+    struct DataManagerModelLayerCallback;
+
+
+    //---------------------------------------------------------------------------
+    class OSGEARTHQT_EXPORT DataManager : public QObject, public osg::Referenced, public ActionManager
+    {
+    Q_OBJECT
+
+    public:
+      DataManager(osgEarth::MapNode* mapNode);
+
+      osgEarth::MapNode* MapNode() { return _mapNode.get(); }
+      osgEarth::Map* map() { return _mapNode->getMap(); }
+
+      void addAnnotation(osgEarth::Annotation::AnnotationNode* annotation, osg::Group* parent/*=0L*/);
+      void removeAnnotation(osgEarth::Annotation::AnnotationNode* annotation, osg::Group* parent=0L);
+      void getAnnotations(AnnotationVector& out_annotations) const;
+
+      void setSelectedDecoration(const std::string& decoration) { _selectedDecoration = decoration; }
+
+      void addSelectedAnnotation(osgEarth::Annotation::AnnotationNode* annotation);
+      void removeSelectedAnnotation(osgEarth::Annotation::AnnotationNode* annotation);
+      void setSelectedAnnotations(const AnnotationVector& annotations);
+      void clearSelectedAnnotations();
+      bool isSelected(osgEarth::Annotation::AnnotationNode* annotation);
+
+      void getViewpoints(std::vector<osgEarth::Viewpoint>& out_viewpoints) const;
+
+    public: //ActionManager
+      void addBeforeActionCallback( ActionCallback* cb );
+      void addAfterActionCallback( ActionCallback* cb );
+
+      bool doAction( void* sender, Action* action, bool reversible =true );
+      bool undoAction();
+      bool canUndo() const;
+      void clearUndoActions();
+      ReversibleAction* getNextUndoAction() const;
+
+    signals:
+      void mapChanged();
+      void selectionChanged(/*const AnnotationVector& selection*/);
+
+      void annotationAdded(osgEarth::Annotation::AnnotationNode* annotation);
+      void annotationRemoved(osgEarth::Annotation::AnnotationNode* annotation);
+
+    protected:
+      virtual ~DataManager() { }
+
+      void initialize();
+      void onMapChanged();
+      void onMapChanged(const osgEarth::MapModelChange& change);
+
+    private:
+      osg::ref_ptr<osgEarth::MapNode> _mapNode;
+      osg::ref_ptr<osgEarth::Map> _map;
+      Threading::ReadWriteMutex _dataMutex;
+      AnnotationVector _annotations;
+      AnnotationVector _selection;
+      std::string _selectedDecoration;
+      std::vector<osgEarth::Viewpoint> _viewpoints;
+      osg::ref_ptr<DataManagerElevationLayerCallback> _elevationCallback;
+      osg::ref_ptr<DataManagerImageLayerCallback> _imageCallback;
+      osg::ref_ptr<DataManagerModelLayerCallback> _modelCallback;
+
+
+      // ActionManager-related members
+      std::list< osg::ref_ptr<Action> > _undoStack;
+      typedef std::list< osg::ref_ptr<ActionCallback> > ActionCallbackList;
+      ActionCallbackList _beforeCallbacks;
+      ActionCallbackList _afterCallbacks;
+      int _maxUndoStackSize;
+
+
+      friend struct DataManagerMapCallback;
+      friend struct DataManagerElevationLayerCallback;
+      friend struct DataManagerImageLayerCallback;
+      friend struct DataManagerModelLayerCallback;
+    };
+
+
+    //---------------------------------------------------------------------------
+    struct DataManagerMapCallback : public osgEarth::MapCallback
+    {
+      DataManagerMapCallback(DataManager* dm) : _dm(dm) { }
+
+      void onMapModelChanged( const MapModelChange& change )
+      {
+        if (_dm.valid())
+          _dm->onMapChanged(change);
+      }
+
+      osg::observer_ptr<DataManager> _dm;
+    };
+
+
+    //---------------------------------------------------------------------------
+    struct DataManagerElevationLayerCallback : public osgEarth::ElevationLayerCallback
+    {
+      DataManagerElevationLayerCallback(DataManager* dm) : _dm(dm) { }
+
+      void onEnabledChanged(TerrainLayer* layer)
+      {
+        if (_dm.valid())
+          _dm->onMapChanged();
+      }
+
+      osg::observer_ptr<DataManager> _dm;
+    };
+
+
+    //---------------------------------------------------------------------------
+    struct DataManagerImageLayerCallback : public osgEarth::ImageLayerCallback
+    {
+      DataManagerImageLayerCallback(DataManager* dm) : _dm(dm) { }
+
+      void onOpacityChanged(ImageLayer* layer)
+      {
+        if (_dm.valid())
+          _dm->onMapChanged();
+      }
+
+      void onEnabledChanged(TerrainLayer* layer)
+      {
+        if (_dm.valid())
+          _dm->onMapChanged();
+      }
+
+      osg::observer_ptr<DataManager> _dm;
+    };
+
+
+    //---------------------------------------------------------------------------
+    struct DataManagerModelLayerCallback : public osgEarth::ModelLayerCallback
+    {
+      DataManagerModelLayerCallback(DataManager* dm) : _dm(dm) { }
+
+      void onEnabledChanged(ModelLayer* layer)
+      {
+        if (_dm.valid())
+          _dm->onMapChanged();
+      }
+
+      void onOverlayChanged(ModelLayer* layer)
+      {
+        if (_dm.valid())
+          _dm->onMapChanged();
+      }
+
+      osg::observer_ptr<DataManager> _dm;
+    };
+} }
+
+#endif // OSGEARTHQT_DATAMANAGER_H
diff --git a/src/osgEarthQt/DataManager.cpp b/src/osgEarthQt/DataManager.cpp
new file mode 100644
index 0000000..d0a9b7a
--- /dev/null
+++ b/src/osgEarthQt/DataManager.cpp
@@ -0,0 +1,371 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Map>
+#include <osgEarth/MapNode>
+
+using namespace osgEarth::QtGui;
+using namespace osgEarth::Annotation;
+
+
+DataManager::DataManager(osgEarth::MapNode* mapNode) : _mapNode(mapNode), _maxUndoStackSize( 128 )
+{
+  if (_mapNode)
+  {
+    _map = _mapNode->getMap();
+
+    //Look for viewpoints in the MapNode externals
+    const Config& externals = _mapNode->externalConfig();
+    const ConfigSet children = externals.children("viewpoint");
+    if (children.size() > 0)
+    {
+      for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
+        _viewpoints.push_back(Viewpoint(*i));
+    }
+  }
+
+  initialize();
+}
+
+void DataManager::initialize()
+{
+  _selectedDecoration = "selected";
+
+  _elevationCallback = new DataManagerElevationLayerCallback(this);
+  _imageCallback = new DataManagerImageLayerCallback(this);
+  _modelCallback = new DataManagerModelLayerCallback(this);
+
+  if (_map)
+  {
+    osgEarth::ElevationLayerVector elevLayers;
+    _map->getElevationLayers(elevLayers);
+    for (osgEarth::ElevationLayerVector::const_iterator it = elevLayers.begin(); it != elevLayers.end(); ++it)
+      (*it)->addCallback(_elevationCallback);
+
+    osgEarth::ImageLayerVector imageLayers;
+    _map->getImageLayers(imageLayers);
+    for (osgEarth::ImageLayerVector::const_iterator it = imageLayers.begin(); it != imageLayers.end(); ++it)
+      (*it)->addCallback(_imageCallback);
+
+    osgEarth::ModelLayerVector modelLayers;
+    _map->getModelLayers(modelLayers);
+    for (osgEarth::ModelLayerVector::const_iterator it = modelLayers.begin(); it != modelLayers.end(); ++it)
+      (*it)->addCallback(_modelCallback);
+
+    _map->addMapCallback(new DataManagerMapCallback(this));
+  }
+}
+
+void DataManager::addAnnotation(osgEarth::Annotation::AnnotationNode* annotation, osg::Group* parent)
+{
+  if (!annotation || !parent)
+    return;
+
+  //osg::Node* root = parent ? parent : 
+
+  if (parent->addChild(annotation))
+  {
+    {
+      Threading::ScopedWriteLock lock( _dataMutex );
+      _annotations.push_back(annotation);
+    }
+
+    emit annotationAdded(annotation);
+    emit mapChanged();
+  }
+}
+
+void DataManager::removeAnnotation(osgEarth::Annotation::AnnotationNode* annotation, osg::Group* parent)
+{
+  if (!annotation)
+    return;
+
+  osg::ref_ptr<osgEarth::Annotation::AnnotationNode> annoToRemove = annotation;
+
+  bool removed = false;
+  if (parent)
+  {
+    removed = parent->removeChild(annotation);
+  }
+  else
+  {
+    osg::Node::ParentList p = annotation->getParents();
+    for (osg::Node::ParentList::iterator it = p.begin(); it != p.end(); ++it)
+    {
+      if ((*it)->removeChild(annotation))
+        removed = true;
+    }
+  }
+
+  {
+    Threading::ScopedWriteLock lock( _dataMutex );
+    for(AnnotationVector::iterator it = _annotations.begin(); it != _annotations.end(); ++it)
+    {
+      if (it->get() == annoToRemove.get())
+      {
+        _annotations.erase(it);
+        removed = true;
+        break;
+      }
+    }
+  }
+
+  if (removed)
+  {
+    emit annotationRemoved(annoToRemove);
+    emit mapChanged();
+  }
+}
+
+void DataManager::getAnnotations(AnnotationVector& out_annotations) const
+{
+  out_annotations.reserve(_annotations.size());
+
+  Threading::ScopedReadLock lock(const_cast<DataManager*>(this)->_dataMutex);
+  for(AnnotationVector::const_iterator it = _annotations.begin(); it != _annotations.end(); ++it)
+    out_annotations.push_back(it->get());
+}
+
+void DataManager::addSelectedAnnotation(osgEarth::Annotation::AnnotationNode* annotation)
+{
+  bool added = false;
+
+  if (annotation)
+  {
+    Threading::ScopedWriteLock lock(const_cast<DataManager*>(this)->_dataMutex);
+
+    added = std::find(_selection.begin(), _selection.end(), annotation) == _selection.end();
+
+    if (added)
+    {
+      annotation->setDecoration(_selectedDecoration);
+      _selection.push_back(annotation);
+    }
+  }
+
+  if (added)
+    emit selectionChanged();
+}
+
+void DataManager::removeSelectedAnnotation(osgEarth::Annotation::AnnotationNode* annotation)
+{
+  bool removed = false;
+
+  if (annotation)
+  {
+    Threading::ScopedWriteLock lock(const_cast<DataManager*>(this)->_dataMutex);
+
+    AnnotationVector::iterator found = std::find(_selection.begin(), _selection.end(), annotation);
+    if (found != _selection.end())
+    {
+      annotation->clearDecoration();
+      _selection.erase(found);
+      removed = true;
+    }
+  }
+
+  if (removed)
+    emit selectionChanged();
+}
+
+void DataManager::setSelectedAnnotations(const AnnotationVector& annotations)
+{
+  if (_selection.size() == 0 && annotations.size() == 0)
+    return;
+
+  clearSelectedAnnotations();
+
+  {
+    Threading::ScopedWriteLock lock(const_cast<DataManager*>(this)->_dataMutex);
+
+    for (AnnotationVector::const_iterator itNew = annotations.begin(); itNew != annotations.end(); ++itNew)
+    {
+      (*itNew)->setDecoration(_selectedDecoration);
+      _selection.push_back(*itNew);
+    }
+  }
+
+  emit selectionChanged();
+}
+
+void DataManager::clearSelectedAnnotations()
+{
+  if (_selection.size() == 0)
+    return;
+
+  {
+    Threading::ScopedWriteLock lock(const_cast<DataManager*>(this)->_dataMutex);
+
+    for (AnnotationVector::iterator itOld = _selection.begin(); itOld != _selection.end(); ++itOld)
+      (*itOld)->clearDecoration();
+
+    _selection.clear();
+  }
+
+  emit selectionChanged();
+}
+
+bool DataManager::isSelected(osgEarth::Annotation::AnnotationNode* annotation)
+{
+  if (!annotation)
+    return false;
+
+  Threading::ScopedReadLock lock(const_cast<DataManager*>(this)->_dataMutex);
+  return std::find(_selection.begin(), _selection.end(), annotation) != _selection.end();
+}
+
+void DataManager::getViewpoints(std::vector<osgEarth::Viewpoint>& out_viewpoints) const
+{
+  out_viewpoints.reserve(_viewpoints.size());
+
+  Threading::ScopedReadLock lock(const_cast<DataManager*>(this)->_dataMutex);
+  for(std::vector<osgEarth::Viewpoint>::const_iterator it = _viewpoints.begin(); it != _viewpoints.end(); ++it)
+    out_viewpoints.push_back(*it);
+}
+
+void DataManager::onMapChanged()
+{
+  emit mapChanged();
+}
+
+void DataManager::onMapChanged(const osgEarth::MapModelChange& change)
+{
+  switch( change.getAction() )
+  {
+  case MapModelChange::ADD_ELEVATION_LAYER: 
+    change.getElevationLayer()->addCallback(_elevationCallback); break;
+  case MapModelChange::ADD_IMAGE_LAYER:
+    change.getImageLayer()->addCallback(_imageCallback); break;
+  case MapModelChange::ADD_MODEL_LAYER:
+		change.getModelLayer()->addCallback(_modelCallback); break;
+  case MapModelChange::REMOVE_ELEVATION_LAYER:
+    change.getElevationLayer()->removeCallback(_elevationCallback); break;
+  case MapModelChange::REMOVE_IMAGE_LAYER:
+    change.getImageLayer()->removeCallback(_imageCallback); break;
+  case MapModelChange::REMOVE_MODEL_LAYER:
+    change.getModelLayer()->removeCallback(_modelCallback); break;
+  default: break;
+  }
+
+  onMapChanged();
+}
+
+//---------------------------------------------------------------------------
+// ActionManager
+
+void DataManager::addBeforeActionCallback( ActionCallback* cb )
+{
+    _beforeCallbacks.push_back( cb );
+}
+
+void DataManager::addAfterActionCallback( ActionCallback* cb )
+{
+    _afterCallbacks.push_back( cb );
+}
+
+bool DataManager::doAction( void* sender, Action* action_, bool reversible )
+{
+    // this ensures that the action will be unref'd and deleted after running
+    osg::ref_ptr<Action> action = action_;
+
+    bool undoInProgress = sender == this;
+
+    for( ActionCallbackList::iterator i = _beforeCallbacks.begin(); i != _beforeCallbacks.end(); ++i )
+        i->get()->operator()( sender, action.get() );
+
+    bool actionSucceeded = false;
+
+    if ( !action->isCanceled() || undoInProgress )
+    {
+        actionSucceeded = action->doAction( sender, this );
+
+        if ( !undoInProgress && actionSucceeded )
+        {
+            if ( action->isCheckpoint() )
+            {
+                clearUndoActions();
+            }
+            else if ( reversible && action->isReversible() )
+            {
+                _undoStack.push_back( action.get() );
+                if ( (int)_undoStack.size() > _maxUndoStackSize )
+                {
+                    _undoStack.pop_front();
+                }
+            }
+        }
+
+        //todo: during-action callbacks here? like in pogo?
+
+        for( ActionCallbackList::iterator j = _afterCallbacks.begin(); j != _afterCallbacks.end(); ++j )
+            j->get()->operator()( sender, action.get() );
+    }
+
+    if ( actionSucceeded )
+    {
+        ViewVector& views = action_->getViews();
+        for( ViewVector::iterator i = views.begin(); i != views.end(); ++i )
+            i->get()->requestRedraw();
+    }
+
+    return actionSucceeded;
+}
+
+bool DataManager::undoAction()
+{
+    if ( !canUndo() )
+        return false;
+
+	osg::ref_ptr<ReversibleAction> action = static_cast<ReversibleAction*>( _undoStack.back().get() );
+	_undoStack.pop_back();
+
+	bool undoSucceeded = action->undoAction( this, this );
+
+    // if the undo failed, we are probably in some undefined application state, so
+    // clear out the undo stack just to be safe.
+    if ( !undoSucceeded )
+    {
+        clearUndoActions();
+    }
+
+    if ( undoSucceeded )
+    {
+        ViewVector& views = action->getViews();
+        for( ViewVector::iterator i = views.begin(); i != views.end(); ++i )
+            i->get()->requestRedraw();
+    }
+
+    return undoSucceeded;
+}
+
+bool DataManager::canUndo() const
+{
+    return _undoStack.size() > 0;
+}
+
+void DataManager::clearUndoActions()
+{
+    _undoStack.clear();
+}
+
+ReversibleAction* DataManager::getNextUndoAction() const
+{
+    return _undoStack.size() > 0 ? static_cast<ReversibleAction*>( _undoStack.front().get() ): 0L;
+}
diff --git a/src/osgEarthQt/GuiActions b/src/osgEarthQt/GuiActions
new file mode 100644
index 0000000..d27e834
--- /dev/null
+++ b/src/osgEarthQt/GuiActions
@@ -0,0 +1,153 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_GUIACTIONS_H
+#define OSGEARTHQT_GUIACTIONS_H 1
+
+#include <osgEarthQt/Common>
+#include <osgEarthQt/Actions>
+
+#include <osgEarth/Viewpoint>
+#include <osgEarthUtil/EarthManipulator>
+
+#include <osgViewer/Viewer>
+
+namespace osgEarth { namespace QtGui 
+{
+
+  //---------------------------------------------------------------------------
+  // SetLayerEnabledAction
+
+  class OSGEARTHQT_EXPORT SetLayerVisibleAction : public Action
+  {
+  public:
+    SetLayerVisibleAction(ViewVector& views, osgEarth::Layer* layer, bool visible) : 
+        Action(views), _layer(layer), _visible(visible) { }
+
+    bool doAction( void* sender, DataManager* manager )
+    {
+      if (!_layer.valid())
+        return false;
+
+      osgEarth::TerrainLayer* terrain = dynamic_cast<osgEarth::TerrainLayer*>(_layer.get());
+      if (terrain)
+      {
+        terrain->getProfile()->getLatLongExtent().xMin();
+        if (terrain->getVisible() != _visible)
+        {
+          terrain->setVisible(_visible);
+          return true;
+        }
+      }
+      else
+      {
+        osgEarth::ModelLayer* model = dynamic_cast<osgEarth::ModelLayer*>(_layer.get());
+        if (model)
+        {
+          if (model->getVisible() != _visible)
+          {
+            model->setVisible(_visible);
+            return true;
+          }
+        }
+      }
+
+      return false;
+    }
+
+    osgEarth::Layer* getLayer() { return _layer.get(); }
+
+	protected:
+    osg::ref_ptr<osgEarth::Layer> _layer;
+    bool _visible;
+  };
+
+
+  //---------------------------------------------------------------------------
+  // ToggleNodeAction
+
+  class OSGEARTHQT_EXPORT ToggleNodeAction : public Action
+  {
+  public:
+    ToggleNodeAction(osg::Node* node, bool visible): Action(), _node(node), _visible(visible) { }
+
+    bool doAction( void* sender, DataManager* manager )
+    {
+      if (_node.valid())
+      {
+        _node->setNodeMask(_visible ? ~0 : 0);
+        return true;
+      }
+
+      return false;
+    }
+
+    osg::Node* getNode() { return _node.get(); }
+
+	protected:
+    osg::ref_ptr<osg::Node> _node;
+    bool _visible;
+  };
+
+
+  //---------------------------------------------------------------------------
+  // SetViewpointAction
+
+  class OSGEARTHQT_EXPORT SetViewpointAction : public Action
+  {
+  public:
+    SetViewpointAction(osgEarth::Viewpoint viewpoint, osgViewer::View* view, double duration=4.5)
+      : Action(), _viewpoint(viewpoint), _duration(duration)
+    {
+      if (view)
+        _views.push_back(view);
+    }
+
+    SetViewpointAction(osgEarth::Viewpoint viewpoint, const ViewVector& views, double duration=4.5)
+      : Action(), _viewpoint(viewpoint), _views(views), _duration(duration) { }
+
+    bool doAction( void* sender, DataManager* manager )
+    {
+      bool success = false;
+
+      for (ViewVector::iterator it = _views.begin(); it != _views.end(); ++it)
+      {
+        osgEarth::Util::EarthManipulator* manip = dynamic_cast<osgEarth::Util::EarthManipulator*>((*it)->getCameraManipulator());
+        if (manip)
+        {
+          manip->setViewpoint(_viewpoint, _duration);
+          (*it)->requestRedraw();
+          success = true;
+        }
+      }
+
+      return success;
+    }
+
+    const osgEarth::Viewpoint& viewpoint() { return _viewpoint; }
+
+  protected:
+      osgEarth::Viewpoint _viewpoint;
+      ViewVector _views;
+      double _duration;
+  };
+
+} }
+
+#endif // OSGEARTHQT_GUIACTIONS_H
+
diff --git a/src/osgEarthQt/LOSControlWidget b/src/osgEarthQt/LOSControlWidget
new file mode 100644
index 0000000..53886c6
--- /dev/null
+++ b/src/osgEarthQt/LOSControlWidget
@@ -0,0 +1,160 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_LOSCONTROLWIDGET_H
+#define OSGEARTHQT_LOSCONTROLWIDGET_H 1
+
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/CollapsiblePairWidget>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <osgEarthUtil/LinearLineOfSight>
+#include <osgEarthUtil/RadialLineOfSight>
+
+#include <osgGA/GUIEventHandler>
+
+#include <QAction>
+#include <QCheckBox>
+#include <QDoubleSpinBox>
+#include <QFrame>
+#include <QLabel>
+#include <QLineEdit>
+#include <QListWidget>
+#include <QPointer>
+#include <QSpinBox>
+#include <QWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    class LOSCreationDialog;
+    struct LOSControlMouseHandler;
+    class OSGEARTHQT_EXPORT LOSControlWidget : public CollapsiblePairWidget
+    {
+    Q_OBJECT
+
+    public:
+      LOSControlWidget(osg::Group* root, osgEarth::MapNode* mapNode, DataManager* dm=0L);
+
+      void setActiveView(osgViewer::View* view);
+      void setActiveViews(const ViewVector& views);
+
+    private slots:
+	    void onItemDoubleClicked(QListWidgetItem* item);
+      void onItemChanged(QListWidgetItem* item);
+      void onItemSelectionChanged();
+
+      void onDepthBoxChanged(int state);
+      void onRadiusValueChanged(double value);
+      void onSpokesValueChanged(int value);
+
+      void onAddLOS();
+      void onRemoveSelectedLOS();
+      void onEditSelectedLOS();
+      void onCreateFinished(int result);
+      void onEditFinished(int result);
+
+    protected:
+      virtual ~LOSControlWidget() { }
+      friend struct LOSControlMouseHandler;
+
+      void initialize();
+      void addLOSNode(osg::Group* los, const std::string& name);
+      void addView(osgViewer::View* view);
+      void removeViews();
+      void mapClick(const osg::Vec3d& point);
+
+      QListWidget*       _losList;
+      QFrame*            _detailsBox;
+      QLabel*            _nameField;
+      QLabel*            _typeField;
+      QCheckBox*         _depthBox;
+      QDoubleSpinBox*    _radiusBox;
+      QSpinBox*          _spokesBox;
+      QAction*           _removeAction;
+      QAction*           _editAction;
+      QPointer<LOSCreationDialog>  _newDialog;
+      
+
+      osg::ref_ptr<osg::Group>              _root;
+      osg::ref_ptr<osgEarth::MapNode>       _mapNode;
+      osg::ref_ptr<DataManager>             _manager;
+      osg::ref_ptr<osgEarth::Map>           _map;
+      ViewVector                            _views;
+      //LineOfSightVector                     _losNodes;
+      osg::ref_ptr<osgEarth::Util::RadialLineOfSightNode>  _activeRadial;
+      int                                   _losCounter;
+      osg::ref_ptr<osgGA::GUIEventHandler>  _guiHandler;
+    };
+
+    struct LOSControlMouseHandler : public osgGA::GUIEventHandler
+    {
+      LOSControlMouseHandler(LOSControlWidget* losControl, osgEarth::MapNode* mapNode)
+        : _losControl(losControl), _mapNode(mapNode), _mouseDown(false)
+      {
+        //_mapNodePath.push_back( mapNode->getTerrainEngine() );
+      }
+
+      bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+      {
+        osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
+
+        if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH )
+        {
+          if (ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+          {
+            _mouseDown = true;
+            _xDown = ea.getX();
+            _yDown = ea.getY();
+          }
+        }
+        else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
+        {
+          if (ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+          {
+            if (_mouseDown && _xDown == ea.getX() && _yDown == ea.getY())
+            {
+              osgUtil::LineSegmentIntersector::Intersections results;
+              if ( view->computeIntersections( _xDown, _yDown, results ) )
+              {
+                // find the first hit under the mouse:
+                osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
+                osg::Vec3d point = first.getWorldIntersectPoint();
+
+                _losControl->mapClick(point);
+              }
+            }
+
+            _mouseDown = false;
+          }
+        }
+
+        return false;
+      }
+
+      LOSControlWidget*      _losControl;
+      osg::ref_ptr<MapNode>  _mapNode;
+
+      bool _mouseDown;
+      float _xDown, _yDown;
+    };
+} }
+
+#endif // OSGEARTHQT_LOSCONTROLWIDGET_H
diff --git a/src/osgEarthQt/LOSControlWidget.cpp b/src/osgEarthQt/LOSControlWidget.cpp
new file mode 100644
index 0000000..d60641d
--- /dev/null
+++ b/src/osgEarthQt/LOSControlWidget.cpp
@@ -0,0 +1,408 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/LOSControlWidget>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/GuiActions>
+#include <osgEarthQt/LOSCreationDialog>
+
+#include <osgEarthUtil/LineOfSight>
+
+#include <QAction>
+#include <QCheckBox>
+#include <QDoubleSpinBox>
+#include <QFrame>
+#include <QGridLayout>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QLineEdit>
+#include <QListWidget>
+#include <QScrollArea>
+#include <QSizePolicy>
+#include <QString>
+#include <QToolBar>
+#include <QVBoxLayout>
+#include <QWidget>
+
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+namespace
+{
+  class LOSListWidgetItem : public QListWidgetItem
+  {
+  public:
+    LOSListWidgetItem(osg::Group* los, const std::string& name) : QListWidgetItem(LOSControlWidget::tr(name.c_str())), _los(los), _name(name) { }
+
+    osg::Group* los() { return _los.get(); }
+    const std::string& name() { return _name; }
+
+    void setLOS(osg::Group* los) { _los = los; }
+
+    void setName(const std::string& name)
+    {
+      _name = name;
+      this->setText(QString(name.c_str()));
+    }
+
+  private:
+    osg::ref_ptr<osg::Group> _los;
+    std::string _name;
+  };
+}
+
+
+LOSControlWidget::LOSControlWidget(osg::Group* root, osgEarth::MapNode* mapNode, DataManager* dm)
+  : _root(root), _mapNode(mapNode), _manager(dm), _losCounter(1)
+{
+  if (_mapNode.valid())
+  {
+    _map = _mapNode->getMap();
+    _guiHandler = new LOSControlMouseHandler(this, _mapNode.get());
+  }
+
+  initialize();
+}
+
+void LOSControlWidget::setActiveView(osgViewer::View* view)
+{
+  removeViews();
+  addView(view);
+}
+
+void LOSControlWidget::setActiveViews(const ViewVector& views)
+{
+  removeViews();
+
+  for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+    addView(*it);
+}
+
+void LOSControlWidget::addView(osgViewer::View* view)
+{
+  view->addEventHandler(_guiHandler.get());
+  _views.push_back(view);
+}
+
+void LOSControlWidget::removeViews()
+{
+  for (ViewVector::iterator it = _views.begin(); it != _views.end(); ++it)
+    (*it)->removeEventHandler(_guiHandler.get());
+
+  _views.clear();
+}
+
+void LOSControlWidget::initialize()
+{
+  //create list container
+  QWidget* listBox = new QWidget;
+  QVBoxLayout* listBoxLayout = new QVBoxLayout;
+  listBoxLayout->setSpacing(0);
+  listBoxLayout->setContentsMargins(0, 0, 0, 0);
+  listBox->setLayout(listBoxLayout);
+
+  //create toolbar with add/remove actions
+  QToolBar* listBar = new QToolBar;
+  listBar->setIconSize(QSize(16, 16));
+
+  QAction* addAction = new QAction(QIcon(":/images/plus.png"), tr("Add LOS"), this);
+  addAction->setStatusTip(tr("Add LOS"));
+  addAction->setEnabled(_root.valid());
+  connect(addAction, SIGNAL(triggered()), this, SLOT(onAddLOS()));
+  listBar->addAction(addAction);
+
+  _removeAction = new QAction(QIcon(":/images/minus.png"), tr("Remove LOS"), this);
+  _removeAction->setStatusTip(tr("Remove selected LOS"));
+  _removeAction->setEnabled(false);
+  connect(_removeAction, SIGNAL(triggered()), this, SLOT(onRemoveSelectedLOS()));
+  listBar->addAction(_removeAction);
+
+  _editAction = new QAction(QIcon(":/images/edit.png"), tr("Edit LOS"), this);
+  _editAction->setStatusTip(tr("Edit selected LOS"));
+  _editAction->setEnabled(false);
+  connect(_editAction, SIGNAL(triggered()), this, SLOT(onEditSelectedLOS()));
+  listBar->addAction(_editAction);
+
+
+  listBoxLayout->addWidget(listBar);
+
+  //create list
+  _losList = new QListWidget();
+  _losList->setSelectionMode(QAbstractItemView::ExtendedSelection);
+  listBoxLayout->addWidget(_losList);
+
+  setPrimaryWidget(listBox);
+  setPrimaryTitle("Line-of-Sight");
+
+  //create details panel
+  _detailsBox = new QFrame;
+  QGridLayout* detailsLayout = new QGridLayout;
+  detailsLayout->setSpacing(4);
+  detailsLayout->setContentsMargins(2, 2, 2, 2);
+  _detailsBox->setLayout(detailsLayout);
+  _detailsBox->setObjectName("oeFrameContainer");
+
+  detailsLayout->addWidget(new QLabel(tr("Name:")), 0, 0, Qt::AlignLeft);
+  _nameField = new QLabel(tr("-----"));
+  detailsLayout->addWidget(_nameField, 0, 1, Qt::AlignLeft);
+
+  detailsLayout->addWidget(new QLabel(tr("Type:")), 1, 0, Qt::AlignLeft);
+  _typeField = new QLabel(tr("-----"));
+  detailsLayout->addWidget(_typeField, 1, 1, Qt::AlignLeft);
+
+  _depthBox = new QCheckBox(tr("Enable depth test"));
+  detailsLayout->addWidget(_depthBox, 2, 0, Qt::AlignLeft);
+  _depthBox->setEnabled(false);
+
+  detailsLayout->addWidget(new QLabel(tr("Radius:")), 4, 0, Qt::AlignLeft);
+  _radiusBox = new QDoubleSpinBox;
+  _radiusBox->setMinimum(0.1);
+  _radiusBox->setMaximum(40075160.0);
+  _radiusBox->setSingleStep(1.0);
+  _radiusBox->setValue(2000.0);
+  detailsLayout->addWidget(_radiusBox, 4, 1, Qt::AlignLeft);
+  _radiusBox->setEnabled(false);
+
+  detailsLayout->addWidget(new QLabel(tr("Spokes:")), 5, 0, Qt::AlignLeft);
+  _spokesBox = new QSpinBox;
+  _spokesBox->setMinimum(3);
+  _spokesBox->setMaximum(10000);
+  _spokesBox->setSingleStep(1);
+  _spokesBox->setValue(100);
+  detailsLayout->addWidget(_spokesBox, 5, 1, Qt::AlignLeft);
+  _spokesBox->setEnabled(false);
+
+  setSecondaryWidget(_detailsBox);
+  setSecondaryTitle("Details");
+
+  //connect list events
+  connect(_losList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(onItemDoubleClicked(QListWidgetItem*)));
+  connect(_losList, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(onItemChanged(QListWidgetItem*)));
+  connect(_losList, SIGNAL(itemSelectionChanged()), this, SLOT(onItemSelectionChanged()));
+
+  //connect option signals
+  connect(_depthBox, SIGNAL(stateChanged(int)), this, SLOT(onDepthBoxChanged(int)));
+  connect(_radiusBox, SIGNAL(valueChanged(double)), this, SLOT(onRadiusValueChanged(double)));
+  connect(_spokesBox, SIGNAL(valueChanged(int)), this, SLOT(onSpokesValueChanged(int)));
+}
+
+void LOSControlWidget::addLOSNode(osg::Group* los, const std::string& name)
+{
+  if (!los)
+    return;
+
+  //_losNodes.push_back(los);
+
+  LOSListWidgetItem* losItem = new LOSListWidgetItem(los, name);
+  losItem->setCheckState(Qt::Checked);
+  _losList->addItem(losItem);
+
+  _root->addChild(los);
+}
+
+void LOSControlWidget::mapClick(const osg::Vec3d& point)
+{
+  if (!_newDialog.isNull())
+    _newDialog->mapClick(point);
+}
+
+void LOSControlWidget::onItemDoubleClicked(QListWidgetItem* item)
+{
+  if (!_manager.valid() || !_map.valid() || _views.size() == 0)
+    return;
+
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(item);
+  if (losItem && losItem->los())
+  {
+    osg::Vec3d center = losItem->los()->getBound().center();
+
+    GeoPoint output;
+    output.fromWorld( _map->getSRS(), center );
+    //_map->worldPointToMapPoint(center, output);
+
+    double range = losItem->los()->getBound().radius() / 0.267949849;
+
+    _manager->doAction(this, new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, range), _views));
+  }
+}
+
+void LOSControlWidget::onItemChanged(QListWidgetItem* item)
+{
+  if (!_manager.valid())
+    return;
+
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(item);
+  if (losItem && losItem->los())
+    _manager->doAction(this, new ToggleNodeAction(losItem->los(), item->checkState() == Qt::Checked));
+}
+
+void LOSControlWidget::onItemSelectionChanged()
+{
+  _activeRadial = 0L;
+  _nameField->setText("-----");
+  _typeField->setText("-----");
+  _depthBox->setEnabled(false);
+  _radiusBox->setEnabled(false);
+  _spokesBox->setEnabled(false);
+  _removeAction->setEnabled(false);
+  _editAction->setEnabled(false);
+
+  QListWidgetItem* item = _losList->currentItem();
+  if (item)
+  {
+    _nameField->setText(item->text());
+
+    LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(_losList->currentItem());
+    if (losItem)
+    {
+      _removeAction->setEnabled(true);
+      _editAction->setEnabled(true);
+
+      osgEarth::Util::LinearLineOfSightNode* p2pNode = dynamic_cast<osgEarth::Util::LinearLineOfSightNode*>(losItem->los());
+      if (p2pNode)
+      {
+        _typeField->setText("Point-to-Point");
+        _depthBox->setCheckState(p2pNode->getOrCreateStateSet()->getMode(GL_DEPTH_TEST) == osg::StateAttribute::OFF ? Qt::Unchecked : Qt::Checked);
+        _depthBox->setEnabled(true);
+      }
+      else
+      {
+        osgEarth::Util::RadialLineOfSightNode* radNode = dynamic_cast<osgEarth::Util::RadialLineOfSightNode*>(losItem->los());
+        if (radNode)
+        {
+          _typeField->setText("Radial");
+          _depthBox->setCheckState(radNode->getOrCreateStateSet()->getMode(GL_DEPTH_TEST) == osg::StateAttribute::OFF ? Qt::Unchecked : Qt::Checked);
+          _depthBox->setEnabled(true);
+
+          _radiusBox->setEnabled(true);
+          _radiusBox->setValue(radNode->getRadius());
+          _spokesBox->setEnabled(true);
+          _spokesBox->setValue(radNode->getNumSpokes());
+          _activeRadial = radNode;
+        }
+      }
+    }
+  }
+}
+
+void LOSControlWidget::onDepthBoxChanged(int state)
+{
+  QListWidgetItem* item = _losList->currentItem();
+  
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(item);
+  if (losItem)
+    losItem->los()->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, state == Qt::Checked ? osg::StateAttribute::ON : osg::StateAttribute::OFF);
+}
+
+void LOSControlWidget::onRadiusValueChanged(double value)
+{
+  if (_activeRadial.valid())
+    _activeRadial->setRadius(value);
+}
+
+void LOSControlWidget::onSpokesValueChanged(int value)
+{
+  if (_activeRadial.valid())
+    _activeRadial->setNumSpokes(value);
+}
+
+void LOSControlWidget::onAddLOS()
+{
+  _newDialog = new LOSCreationDialog(_mapNode.get(), _root.get(), _losCounter, _manager.get(), &_views);
+
+  if (!_newDialog.isNull())
+  {
+    this->setEnabled(false);
+
+    connect(_newDialog, SIGNAL(finished(int)), this, SLOT(onCreateFinished(int)));
+
+    _newDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+    _newDialog->setAttribute(Qt::WA_DeleteOnClose);
+    _newDialog->show();
+  }
+}
+
+void LOSControlWidget::onCreateFinished(int result)
+{
+  this->setEnabled(true);
+
+  if (result == QDialog::Accepted)
+  {
+    _losCounter++;
+    addLOSNode(_newDialog->losNode(), _newDialog->losName());
+  }
+}
+
+void LOSControlWidget::onRemoveSelectedLOS()
+{
+  QListWidgetItem* item = _losList->currentItem();
+  
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(item);
+  if (losItem && losItem->los())
+    _root->removeChild(losItem->los());
+
+  delete item;
+}
+
+void LOSControlWidget::onEditSelectedLOS()
+{
+  QListWidgetItem* item = _losList->currentItem();
+  
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(item);
+  if (losItem && losItem->los())
+  {
+    _newDialog = new LOSCreationDialog(_mapNode.get(), _root.get(), losItem->los(), losItem->name(), _manager.get(), &_views);
+
+    if (!_newDialog.isNull())
+    {
+      this->setEnabled(false);
+
+      _root->removeChild(losItem->los());
+
+      connect(_newDialog, SIGNAL(finished(int)), this, SLOT(onEditFinished(int)));
+
+      _newDialog->setWindowFlags(Qt::Tool | Qt::WindowTitleHint | Qt::CustomizeWindowHint| Qt::WindowStaysOnTopHint);
+      _newDialog->setAttribute(Qt::WA_DeleteOnClose);
+      _newDialog->show();
+    }
+  }
+}
+
+void LOSControlWidget::onEditFinished(int result)
+{
+  this->setEnabled(true);
+
+  LOSListWidgetItem* losItem = dynamic_cast<LOSListWidgetItem*>(_losList->currentItem());
+  if (losItem)
+  {
+    if (result == QDialog::Accepted)
+    {
+      losItem->setName(_newDialog->losName());
+      _newDialog->losNode()->setNodeMask(losItem->los()->getNodeMask());
+      losItem->setLOS(_newDialog->losNode());
+      _root->addChild(_newDialog->losNode());
+
+      onItemSelectionChanged();
+    }
+    else
+    {
+      _root->addChild(losItem->los());
+    }
+  }
+}
diff --git a/src/osgEarthQt/LOSCreationDialog b/src/osgEarthQt/LOSCreationDialog
new file mode 100644
index 0000000..761d57d
--- /dev/null
+++ b/src/osgEarthQt/LOSCreationDialog
@@ -0,0 +1,180 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_LOSCREATIONDIALOG_H
+#define OSGEARTHQT_LOSCREATIONDIALOG_H 1
+
+#include "ui_LOSCreationDialog.h"
+
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Draggers>
+#include <osgEarthUtil/LinearLineOfSight>
+#include <osgEarthUtil/RadialLineOfSight>
+
+#include <osg/AutoTransform>
+
+#include <QDialog>
+
+namespace osgEarth { namespace QtGui 
+{
+  class LOSIntersectingDragger : public osgEarth::SphereDragger
+  {
+  public:
+      LOSIntersectingDragger(osgEarth::MapNode* mapNode):
+        osgEarth::SphereDragger(mapNode),
+        _heightAboveTerrain(0.0)
+    {
+      setLineColor(osg::Vec4(1.0f, 1.0f, 0.0f, 0.0f));
+      setupDefaultGeometry();
+    }
+
+    void setupDefaultGeometry()
+    {
+      // draw a line from ground to location
+      _lineGeometry = new osg::Geometry;
+      _lineGeometry->setUseVertexBufferObjects(true);
+
+      _lineVerts = new osg::Vec3Array();
+      _lineVerts->reserve(2);
+      _lineGeometry->setVertexArray( _lineVerts );
+
+      osg::Vec4Array* colors = new osg::Vec4Array();
+      colors->reserve( 2 );
+      _lineGeometry->setColorArray( colors );
+      _lineGeometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
+
+      _lineVerts->push_back( osg::Vec3d(0.0, 0.0, 0.0) );
+      _lineVerts->push_back( osg::Vec3d(0.0, 0.0, _heightAboveTerrain) );
+      colors->push_back( _lineColor );
+      colors->push_back( _lineColor );
+
+      _lineGeometry->addPrimitiveSet( new osg::DrawArrays( GL_LINES, 0, _lineVerts->size()) );
+      osg::Geode* lineGeode = new osg::Geode();
+      lineGeode->addDrawable( _lineGeometry );
+      lineGeode->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+      lineGeode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+      addChild( lineGeode );
+    }
+
+    void setHeightAboveTerrain( double hat )
+    {
+      _heightAboveTerrain = hat;
+      (*_lineVerts)[1].set(0.0, 0.0, _heightAboveTerrain);
+      if (_lineGeometry.valid())
+        _lineGeometry->dirtyDisplayList();
+    }
+
+    void setLineColor(const osg::Vec4& color) { _lineColor = color; }
+
+  private:
+    double _offset;
+    osg::Vec4 _lineColor;
+    osg::ref_ptr<osg::Geometry> _lineGeometry;
+    osg::ref_ptr<osg::Vec3Array> _lineVerts;
+    double _heightAboveTerrain;
+  };
+
+  //---------------------------------------------------------------------------
+
+  class LOSCreationDialog : public QDialog
+  {
+  Q_OBJECT
+
+  public:
+    enum LOSPoint { P2P_START, P2P_END, RADIAL_CENTER };
+
+    LOSCreationDialog(osgEarth::MapNode* mapNode, osg::Group* root, int losCount, DataManager* manager=0L, ViewVector* views=0L);
+    LOSCreationDialog(osgEarth::MapNode* mapNode, osg::Group* root, osg::Group* losNode, const std::string& name, DataManager* manager=0L, ViewVector* views=0L);
+
+    osg::Group* losNode() { return _node.get(); }
+    std::string losName() { return _ui.nameBox->text().toStdString(); }
+
+    void getLOSPoint(LOSPoint point, osg::Vec3d& out_point, bool relative=false);
+    void setLOSPoint(LOSPoint point, const osg::Vec3d& value, bool updateUi=false);
+
+    bool isAltitudeRelative(LOSPoint point);
+
+    void mapClick(const osg::Vec3d& point);
+
+  public slots:
+    void accept();
+    void reject();
+		
+  private slots:
+    void onP1TypeChange(const QString& text);
+    void onP2TypeChange(const QString& text);
+    void onRadTypeChange(const QString& text);
+
+    void onP1MapButtonClicked(bool checked);
+    void onP2MapButtonClicked(bool checked);
+    void onRadMapButtonClicked(bool checked);
+
+    void onP1FindNodeButtonClicked(bool checked);
+    void onP2FindNodeButtonClicked(bool checked);
+    void onRadFindNodeButtonClicked(bool checked);
+
+    void onLocationValueChanged(double d);
+    void onRelativeCheckChanged(int state);
+
+    void onNodeComboChange(const QString& text);
+
+    void onDepthTestChanged(int state);
+    void onCurrentTabChanged(int index);
+
+    void onSpokesBoxChanged(int value);
+    void onRadiusBoxChanged(double value);
+
+  protected:
+    void closeEvent(QCloseEvent* event);
+
+  private:
+    void initUi(const std::string& name, osg::Group* los=0L);
+    void updateLOSNodes(bool updateAll=false);
+    void cleanupNodes();
+    void centerMapOnNode(osg::Node* node);
+    void updateDragger(Dragger* dragger, const GeoPoint& point);
+    void updateDraggerNodes();
+    void updatePoint(LOSPoint point);
+    int findAnnotationIndex(osg::Node* annotation);
+
+    Ui::LOSCreationDialog _ui;
+    osg::ref_ptr<osg::Group> _node;
+    osg::ref_ptr<osgEarth::MapNode> _mapNode;
+    osg::ref_ptr<osg::Group> _root;
+    osg::ref_ptr<DataManager> _manager;
+    osg::ref_ptr<osgEarth::Map> _map;
+    osg::ref_ptr<osgEarth::Util::LinearLineOfSightNode> _p2p;
+    osg::ref_ptr<osgEarth::Util::RadialLineOfSightNode> _radial;
+    osg::ref_ptr<LOSIntersectingDragger> _p1Dragger;
+    osg::ref_ptr<LOSIntersectingDragger> _p2Dragger;
+    osg::ref_ptr<LOSIntersectingDragger> _radDragger;
+    bool _updatingUi;
+    bool _updateAlt;
+    double _p1BaseAlt;
+    double _p2BaseAlt;
+    double _radBaseAlt;
+    AnnotationVector _annotations;
+    ViewVector* _views;
+
+    QPushButton* _activeButton;
+  };
+} }
+
+#endif // OSGEARTHQT_LOSCREATIONDIALOG_H
diff --git a/src/osgEarthQt/LOSCreationDialog.cpp b/src/osgEarthQt/LOSCreationDialog.cpp
new file mode 100644
index 0000000..64f7772
--- /dev/null
+++ b/src/osgEarthQt/LOSCreationDialog.cpp
@@ -0,0 +1,980 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthQt/LOSCreationDialog>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/GuiActions>
+
+#include <osgEarthUtil/LineOfSight>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+namespace
+{
+    class LOSPointDraggerCallback : public Dragger::PositionChangedCallback
+  {
+  public:
+    LOSPointDraggerCallback(osgEarth::Map* map, LOSCreationDialog* dialog,  LOSCreationDialog::LOSPoint point):
+      _dialog(dialog),
+      _point(point)
+    {
+    }
+
+      virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+      {
+          GeoPoint location(position);
+          if (_dialog->isAltitudeRelative(_point))
+          {
+              osg::Vec3d losLoc;
+              _dialog->getLOSPoint(_point, losLoc, true);
+              double z = losLoc.z();
+              //location = osg::Vec3d(location.x(), location.y(), location.z() - z);
+              location.z() = z;
+          }
+          _dialog->setLOSPoint(_point, location.vec3d());
+      }
+
+    LOSCreationDialog* _dialog;
+    LOSCreationDialog::LOSPoint _point;
+    bool _start;
+  };
+}
+
+LOSCreationDialog::LOSCreationDialog(osgEarth::MapNode* mapNode, osg::Group* root, int losCount, osgEarth::QtGui::DataManager *manager, ViewVector* views)
+  : _mapNode(mapNode), _root(root), _manager(manager), _views(views), _activeButton(0L), _updatingUi(false), _updateAlt(true)
+{
+  if (_mapNode.valid())
+    _map = _mapNode->getMap();
+
+  if (_manager.valid())
+    _manager->getAnnotations(_annotations);
+
+  // create a default name
+  std::stringstream losName;
+  losName << "Line-of-Sight " << losCount;
+
+  initUi(losName.str());
+}
+
+LOSCreationDialog::LOSCreationDialog(osgEarth::MapNode* mapNode, osg::Group* root, osg::Group* losNode, const std::string& name, osgEarth::QtGui::DataManager *manager, ViewVector* views)
+  : _mapNode(mapNode), _root(root), _manager(manager), _views(views), _activeButton(0L), _updatingUi(false), _updateAlt(true)
+{
+  if (_mapNode.valid())
+    _map = _mapNode->getMap();
+
+  if (_manager.valid())
+    _manager->getAnnotations(_annotations);
+
+  initUi(name, losNode);
+}
+
+void LOSCreationDialog::initUi(const std::string& name, osg::Group* los)
+{
+  // setup UI
+  _ui.setupUi(this);
+
+  // set the name
+  _ui.nameBox->setText(tr(name.c_str()));
+
+  // fill annotation list
+  // TODO: if more node types beyond Annotation are added, this will need to be moved
+  //       to the on__TypeChange() methods.  Currently doing here for efficiency.
+  for (AnnotationVector::const_iterator it = _annotations.begin(); it != _annotations.end(); ++it)
+  {
+    osgEarth::Annotation::AnnotationData* annoData = (*it)->getAnnotationData();
+    std::string annoName = annoData && annoData->getName().size() > 0 ? annoData->getName() : "Annotation";
+    _ui.p1NodeCombo->addItem(tr(annoName.c_str()));
+    _ui.p2NodeCombo->addItem(tr(annoName.c_str()));
+    _ui.radNodeCombo->addItem(tr(annoName.c_str()));
+  }
+
+
+  // create map point draggers
+  _p1Dragger  = new LOSIntersectingDragger( _mapNode );
+  _p1Dragger->addPositionChangedCallback(new LOSPointDraggerCallback(_map, this, P2P_START));
+  _p1Dragger->setColor(osg::Vec4(0,1,1,0));
+  _p1Dragger->setPickColor(osg::Vec4(1,0,1,0));
+  _p1BaseAlt = 0.0;
+
+  _p2Dragger  = new LOSIntersectingDragger(_mapNode);
+  _p2Dragger->addPositionChangedCallback(new LOSPointDraggerCallback(_map, this, P2P_END));    
+  _p2Dragger->setColor(osg::Vec4(0,1,1,0));
+  _p2Dragger->setPickColor(osg::Vec4(1,0,1,0));
+  _p2BaseAlt = 0.0;
+
+  _radDragger  = new LOSIntersectingDragger(_mapNode);
+  _radDragger->addPositionChangedCallback(new LOSPointDraggerCallback(_map, this, RADIAL_CENTER));    
+  _radDragger->setColor(osg::Vec4(0,1,1,0));
+  _radDragger->setPickColor(osg::Vec4(1,0,1,0));
+  _radBaseAlt = 0.0;
+
+
+  // connect type combobox signals
+  connect(_ui.p1TypeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onP1TypeChange(const QString&)));
+  connect(_ui.p2TypeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onP2TypeChange(const QString&)));
+  connect(_ui.radTypeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onRadTypeChange(const QString&)));
+
+  // connect map-click button signals
+  connect(_ui.p1PointButton, SIGNAL(clicked(bool)), this, SLOT(onP1MapButtonClicked(bool)));
+  connect(_ui.p2PointButton, SIGNAL(clicked(bool)), this, SLOT(onP2MapButtonClicked(bool)));
+  connect(_ui.radPointButton, SIGNAL(clicked(bool)), this, SLOT(onRadMapButtonClicked(bool)));
+
+  // connect find node button signals
+  connect(_ui.p1NodeButton, SIGNAL(clicked(bool)), this, SLOT(onP1FindNodeButtonClicked(bool)));
+  connect(_ui.p2NodeButton, SIGNAL(clicked(bool)), this, SLOT(onP2FindNodeButtonClicked(bool)));
+  connect(_ui.radNodeButton, SIGNAL(clicked(bool)), this, SLOT(onRadFindNodeButtonClicked(bool)));
+
+  // connect lat/lon/alt value change signals
+  connect(_ui.p1LatBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.p1LonBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.p1AltBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+
+  connect(_ui.p2LatBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.p2LonBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.p2AltBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+
+  connect(_ui.radLatBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.radLonBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+  connect(_ui.radAltBox, SIGNAL(valueChanged(double)), this, SLOT(onLocationValueChanged(double)));
+
+  connect(_ui.p2pRelativeCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onRelativeCheckChanged(int)));
+  connect(_ui.radRelativeCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onRelativeCheckChanged(int)));
+
+  // connect annotation combobox signals
+  connect(_ui.p1NodeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onNodeComboChange(const QString&)));
+  connect(_ui.p2NodeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onNodeComboChange(const QString&)));
+  connect(_ui.radNodeCombo, SIGNAL(currentIndexChanged(const QString&)), this, SLOT(onNodeComboChange(const QString&)));
+
+  connect(_ui.depthTestCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onDepthTestChanged(int)));
+  connect(_ui.typeTabs, SIGNAL(currentChanged(int)), this, SLOT(onCurrentTabChanged(int)));
+
+  // connect radial specific signals
+  connect(_ui.spokesSpinBox, SIGNAL(valueChanged(int)), this, SLOT(onSpokesBoxChanged(int)));
+  connect(_ui.radiusSpinBox, SIGNAL(valueChanged(double)), this, SLOT(onRadiusBoxChanged(double)));
+
+
+  // Create los nodes and initialize
+  _p2p = new osgEarth::Util::LinearLineOfSightNode(_mapNode.get());
+  _radial = new osgEarth::Util::RadialLineOfSightNode(_mapNode.get());
+
+  // simulate type change to force UI update
+  onP1TypeChange("Point");
+  onP2TypeChange("Point");
+  onRadTypeChange("Point");
+
+  onCurrentTabChanged(0);
+
+
+  // If an los node was passed in, initialize components accordingly
+  if (los)
+  {
+    osgEarth::Util::LinearLineOfSightNode* p2pNode = dynamic_cast<osgEarth::Util::LinearLineOfSightNode*>(los);
+    if (p2pNode)
+    {
+      _ui.typeTabs->setCurrentIndex(0);
+      _ui.typeTabs->setTabEnabled(1, false);
+
+      _ui.depthTestCheckBox->setCheckState(p2pNode->getOrCreateStateSet()->getMode(GL_DEPTH_TEST) == osg::StateAttribute::OFF ? Qt::Unchecked : Qt::Checked);
+
+      bool p1Set=false, p2Set=false;
+      
+      osgEarth::Util::LineOfSightTether* tether = dynamic_cast<osgEarth::Util::LineOfSightTether*>(p2pNode->getUpdateCallback());
+      if (tether)
+      {
+        if (tether->startNode())
+        {
+          _ui.p1TypeCombo->setCurrentIndex(1); // "Annotation"
+
+          int i = findAnnotationIndex(tether->startNode());
+          if (i >= 0)
+            _ui.p1NodeCombo->setCurrentIndex(i);
+          else
+            _ui.p1NodeCombo->setCurrentIndex(0);  // unlikely case where annotation is not found (perhaps deleted)
+
+          p1Set = true;
+        }
+
+        if (tether->endNode())
+        {
+          _ui.p2TypeCombo->setCurrentIndex(1); // "Annotation"
+
+          int i = findAnnotationIndex(tether->endNode());
+          if (i >= 0)
+            _ui.p2NodeCombo->setCurrentIndex(i);
+          else
+            _ui.p2NodeCombo->setCurrentIndex(0);  // unlikely case where annotation is not found (perhaps deleted)
+
+          p2Set = true;
+        }
+      }
+
+      if (!p1Set)
+      {
+        _ui.p1TypeCombo->setCurrentIndex(0); // "Point"
+        onP1TypeChange("Point");  // Necessary to init UI because above setCurrentIndex call will not
+        updateDraggerNodes();     // fire an event since the index defaults to 0
+
+        bool isRelative = (p2pNode->getStart().altitudeMode() == ALTMODE_RELATIVE);
+        _ui.p2pRelativeCheckBox->setChecked( isRelative );
+        //_ui.p2pRelativeCheckBox->setChecked(p2pNode->getStartAltitudeMode() == ALTMODE_RELATIVE);
+
+        osg::Vec3d pos(p2pNode->getStart().vec3d());
+
+        if (isRelative) //p2pNode->getStartAltitudeMode() == ALTMODE_RELATIVE)
+        {
+          double hat = pos.z();
+
+          double height;
+          if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), pos.x(), pos.y(), &height))
+            pos.set(pos.x(), pos.y(), height);
+
+          setLOSPoint(P2P_START, pos, true);
+
+          if (_ui.p1AltBox->value() == hat)
+          {
+            updatePoint(P2P_START);
+            updateLOSNodes();
+          }
+          else
+          {
+            _ui.p1AltBox->setValue(hat);
+          }
+        }
+        else
+        {
+          setLOSPoint(P2P_START, pos, true);
+        }
+      }
+
+      if (!p2Set)
+      {
+        _ui.p2TypeCombo->setCurrentIndex(0); // "Point"
+        onP2TypeChange("Point");  // Necessary to init UI because above setCurrentIndex call will not
+        updateDraggerNodes();     // fire an event since the index defaults to 0
+
+        bool isRelative = (p2pNode->getEnd().altitudeMode() == ALTMODE_RELATIVE);
+        _ui.p2pRelativeCheckBox->setChecked(isRelative);
+
+        osg::Vec3d pos(p2pNode->getEnd().vec3d());
+
+        if (isRelative) //p2pNode->getEndAltitudeMode() == ALTMODE_RELATIVE)
+        {
+          double hat = pos.z();
+
+          double height;
+          if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), pos.x(), pos.y(), &height))
+            pos.set(pos.x(), pos.y(), height);
+
+          setLOSPoint(P2P_END, pos, true);
+
+          if (_ui.p2AltBox->value() == hat)
+          {
+            updatePoint(P2P_END);
+            updateLOSNodes();
+          }
+          else
+          {
+            _ui.p2AltBox->setValue(hat);
+          }
+        }
+        else
+        {
+          setLOSPoint(P2P_END, pos, true);
+        }
+      }
+    }
+    else
+    {
+      osgEarth::Util::RadialLineOfSightNode* radNode = dynamic_cast<osgEarth::Util::RadialLineOfSightNode*>(los);
+      if (radNode)
+      {
+        _ui.typeTabs->setCurrentIndex(1);
+        _ui.typeTabs->setTabEnabled(0, false);
+
+        _ui.radiusSpinBox->setValue(radNode->getRadius());
+        _ui.spokesSpinBox->setValue(radNode->getNumSpokes());
+
+        _ui.depthTestCheckBox->setCheckState(radNode->getOrCreateStateSet()->getMode(GL_DEPTH_TEST) == osg::StateAttribute::OFF ? Qt::Unchecked : Qt::Checked);
+
+        osgEarth::Util::RadialLineOfSightTether* tether = dynamic_cast<osgEarth::Util::RadialLineOfSightTether*>(radNode->getUpdateCallback());
+        if (tether)
+        {
+          _ui.radTypeCombo->setCurrentIndex(1); // "Annotation"
+
+          int i = findAnnotationIndex(tether->node());
+          if (i >= 0)
+            _ui.radNodeCombo->setCurrentIndex(i);
+          else
+            _ui.radNodeCombo->setCurrentIndex(0);  // unlikely case where annotation is not found (perhaps deleted)
+        }
+        else
+        {
+          _ui.radTypeCombo->setCurrentIndex(0); // "Point"
+          
+          onRadTypeChange("Point"); // Necessary to init UI because above setCurrentIndex call will not
+          updateDraggerNodes();     // fire an event since the index defaults to 0
+
+          //_ui.radRelativeCheckBox->setChecked(radNode->getAltitudeMode() == ALTMODE_RELATIVE);
+          bool isRelative = (radNode->getCenter().altitudeMode() == ALTMODE_RELATIVE);
+          _ui.radRelativeCheckBox->setChecked( isRelative );
+
+          osg::Vec3d pos(radNode->getCenter().vec3d());
+
+          if (isRelative) //radNode->getAltitudeMode() == ALTMODE_RELATIVE)
+          {
+            double hat = pos.z();
+
+            double height;
+            if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), pos.x(), pos.y(), &height))
+              pos.set(pos.x(), pos.y(), height);
+
+            setLOSPoint(RADIAL_CENTER, pos, true);
+            
+            if (_ui.radAltBox->value() == hat)
+            {
+              updatePoint(RADIAL_CENTER);
+              updateLOSNodes();
+            }
+            else
+            {
+              _ui.radAltBox->setValue(hat);
+            }
+          }
+          else
+          {
+            setLOSPoint(RADIAL_CENTER, pos, true);
+          }
+        }
+      }
+    }
+  }
+
+  this->resize(721, this->height());
+}
+
+void LOSCreationDialog::mapClick(const osg::Vec3d& point)
+{
+  if (_activeButton)
+  {
+    // transform point to map coordinates:
+    osgEarth::GeoPoint outPoint;
+    outPoint.fromWorld( _map->getSRS(), point );
+    //_map->worldPointToMapPoint(point, outPoint);
+
+    if (_activeButton == _ui.p1PointButton)
+    {
+      _p1BaseAlt = outPoint.z();
+
+      _updateAlt = false;
+      _ui.p1LonBox->setValue(outPoint.x());
+      _ui.p1LatBox->setValue(outPoint.y());
+      _updateAlt = true;
+
+      if (_ui.p2pRelativeCheckBox->checkState() == Qt::Unchecked)
+        _ui.p1AltBox->setValue((int)(outPoint.z()) + 1.0);
+    }
+    else if (_activeButton == _ui.p2PointButton)
+    {
+      _p2BaseAlt = outPoint.z();
+
+      _updateAlt = false;
+      _ui.p2LonBox->setValue(outPoint.x());
+      _ui.p2LatBox->setValue(outPoint.y());
+      _updateAlt = true;
+
+      if (_ui.p2pRelativeCheckBox->checkState() == Qt::Unchecked)
+        _ui.p2AltBox->setValue((int)(outPoint.z()) + 1.0);
+    }
+    else if (_activeButton == _ui.radPointButton)
+    {
+      _radBaseAlt = outPoint.z();
+
+      _updateAlt = false;
+      _ui.radLonBox->setValue(outPoint.x());
+      _ui.radLatBox->setValue(outPoint.y());
+      _updateAlt = true;
+
+      if (_ui.radRelativeCheckBox->checkState() == Qt::Unchecked)
+        _ui.radAltBox->setValue((int)(outPoint.z()) + 1.0);
+    }
+    
+    _activeButton = 0L;
+    this->setEnabled(true);
+  }
+}
+
+void LOSCreationDialog::updateDragger(Dragger* dragger, const GeoPoint& point)
+{
+    dragger->setPosition( point, false );
+}
+
+void LOSCreationDialog::updateDraggerNodes()
+{
+  if (_root.valid())
+  {
+    if (_ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Point-to-Point")
+    {
+      _root->removeChild(_radDragger);
+
+      if (_ui.p1TypeCombo->currentText() == "Point")
+      {
+        if (!_root->containsNode(_p1Dragger))
+          _root->addChild(_p1Dragger);
+      }
+      else
+      {
+        _root->removeChild(_p1Dragger);
+      }
+        
+      if (_ui.p2TypeCombo->currentText() == "Point")
+      {
+        if (!_root->containsNode(_p2Dragger))
+          _root->addChild(_p2Dragger);
+      }
+      else
+      {
+        _root->removeChild(_p2Dragger);
+      }
+    }
+    else if (_ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Radial")
+    {
+      _root->removeChild(_p1Dragger);
+      _root->removeChild(_p2Dragger);
+
+      if (_ui.radTypeCombo->currentText() == "Point")
+      {
+        if (!_root->containsNode(_radDragger))
+          _root->addChild(_radDragger);
+      }
+      else
+      {
+        _root->removeChild(_radDragger);
+      }
+    }
+  }
+}
+
+void LOSCreationDialog::updatePoint(LOSPoint point)
+{
+  switch(point)
+  {
+    case P2P_START:
+      if (_ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+        _p1Dragger->setHeightAboveTerrain(_ui.p1AltBox->value());
+      else
+        _p1Dragger->setHeightAboveTerrain(0.0);
+
+      updateDragger(_p1Dragger, GeoPoint(_mapNode->getMapSRS(), _ui.p1LonBox->value(), _ui.p1LatBox->value(), _p1BaseAlt, ALTMODE_RELATIVE));
+      break;
+    case P2P_END:
+      if (_ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+        _p2Dragger->setHeightAboveTerrain(_ui.p2AltBox->value());
+      else
+        _p2Dragger->setHeightAboveTerrain(0.0);
+
+      updateDragger(_p2Dragger, GeoPoint(_mapNode->getMapSRS(), _ui.p2LonBox->value(), _ui.p2LatBox->value(), _p2BaseAlt, ALTMODE_RELATIVE));
+      break;
+    case RADIAL_CENTER:
+      if (_ui.radRelativeCheckBox->checkState() == Qt::Checked)
+        _radDragger->setHeightAboveTerrain(_ui.radAltBox->value());
+      else
+        _radDragger->setHeightAboveTerrain(0.0);
+
+      updateDragger(_radDragger, GeoPoint(_mapNode->getMapSRS(), _ui.radLonBox->value(), _ui.radLatBox->value(), _radBaseAlt, ALTMODE_RELATIVE));
+      break;
+  }
+}
+
+int LOSCreationDialog::findAnnotationIndex(osg::Node* annotation)
+{
+  int index = 0;
+  for (AnnotationVector::const_iterator it = _annotations.begin(); it != _annotations.end(); ++it)
+  {
+    if ((*it).get() == annotation)
+      return index;
+
+    index++;
+  }
+
+  return -1;
+}
+
+void LOSCreationDialog::getLOSPoint(LOSPoint point, osg::Vec3d& out_point, bool relative)
+{
+  double alt = 0.0;
+
+  switch(point)
+  {
+    case P2P_START:
+      alt = _ui.p1AltBox->value();
+      if (!relative && _ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+        alt += _p1BaseAlt;
+      out_point.set(_ui.p1LonBox->value(), _ui.p1LatBox->value(), alt);
+      break;
+    case P2P_END:
+      alt = _ui.p2AltBox->value();
+      if (!relative && _ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+        alt += _p2BaseAlt;
+      out_point.set(_ui.p2LonBox->value(), _ui.p2LatBox->value(), alt);
+      break;
+    case RADIAL_CENTER:
+      alt = _ui.radAltBox->value();
+      if (!relative && _ui.radRelativeCheckBox->checkState() == Qt::Checked)
+        alt += _radBaseAlt;
+      out_point.set(_ui.radLonBox->value(), _ui.radLatBox->value(), alt);
+      break;
+  }
+}
+
+void LOSCreationDialog::setLOSPoint(LOSPoint point, const osg::Vec3d& value, bool updateUi)
+{
+  _updatingUi = !updateUi;
+  switch(point)
+  {
+    case P2P_START:
+      _ui.p1LatBox->setValue(value.y());
+      _ui.p1LonBox->setValue(value.x());
+
+      _p1BaseAlt = value.z();
+
+      if (!isAltitudeRelative(point))
+        _ui.p1AltBox->setValue(value.z());
+
+      break;
+    case P2P_END:
+      _ui.p2LatBox->setValue(value.y());
+      _ui.p2LonBox->setValue(value.x());
+
+      _p2BaseAlt = value.z();
+
+      if (!isAltitudeRelative(point))
+        _ui.p2AltBox->setValue(value.z());
+
+      break;
+    case RADIAL_CENTER:
+      _ui.radLatBox->setValue(value.y());
+      _ui.radLonBox->setValue(value.x());
+
+      _radBaseAlt = value.z();
+
+      if (!isAltitudeRelative(point))
+        _ui.radAltBox->setValue(value.z());
+
+      break;
+  }
+  _updatingUi = false;
+}
+
+bool LOSCreationDialog::isAltitudeRelative(LOSPoint point)
+{
+  switch(point)
+  {
+    case P2P_START:
+    case P2P_END:
+      return _ui.p2pRelativeCheckBox->checkState() == Qt::Checked;
+    case RADIAL_CENTER:
+      return _ui.radRelativeCheckBox->checkState() == Qt::Checked;
+  }
+
+  return false;
+}
+
+void LOSCreationDialog::closeEvent(QCloseEvent* event)
+{
+  cleanupNodes();
+  QDialog::closeEvent(event);
+}
+
+void LOSCreationDialog::accept()
+{
+  cleanupNodes();
+  QDialog::accept();
+}
+
+void LOSCreationDialog::reject()
+{
+  cleanupNodes();
+  QDialog::reject();
+}
+
+void LOSCreationDialog::updateLOSNodes(bool updateAll)
+{
+  if (_p2p.valid() && (updateAll || _ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Point-to-Point"))
+  {
+    if (_ui.depthTestCheckBox->checkState() == Qt::Checked)
+      _p2p->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::ON);
+    else
+      _p2p->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+
+    bool p1Set = false;
+    bool p2Set = false;
+    osg::Node* p1Node = 0L;
+    osg::Node* p2Node = 0L;
+
+    // get start point or node
+    if (_ui.p1TypeCombo->currentText() == "Point")
+    {
+      _p2p->setStart(GeoPoint(
+          _mapNode->getMapSRS(), 
+          _ui.p1LonBox->value(), 
+          _ui.p1LatBox->value(), 
+          _ui.p1AltBox->value(),
+          _ui.p2pRelativeCheckBox->checkState() == Qt::Checked ? ALTMODE_RELATIVE : ALTMODE_ABSOLUTE) );
+
+      //if (_ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+      //  _p2p->setStartAltitudeMode(ALTMODE_RELATIVE);
+      //else
+      //  _p2p->setStartAltitudeMode(ALTMODE_ABSOLUTE);
+
+      p1Set = true;
+    }
+    else if (_ui.p1TypeCombo->currentText() == "Annotation")
+    {
+      GeoPoint p = _p2p->getStart();
+      p.altitudeMode() = ALTMODE_ABSOLUTE;
+      _p2p->setStart( p );
+      //_p2p->setStartAltitudeMode(ALTMODE_ABSOLUTE);
+      p1Node = _annotations[_ui.p1NodeCombo->currentIndex()];
+      p1Set = true;
+    }
+
+    // get end point or node
+    if (_ui.p2TypeCombo->currentText() == "Point")
+    {
+      _p2p->setEnd(GeoPoint(
+          _mapNode->getMapSRS(),
+          _ui.p2LonBox->value(), 
+          _ui.p2LatBox->value(), 
+          _ui.p2AltBox->value(),
+          _ui.p2pRelativeCheckBox->checkState() == Qt::Checked ? ALTMODE_RELATIVE : ALTMODE_ABSOLUTE) );
+
+      //if (_ui.p2pRelativeCheckBox->checkState() == Qt::Checked)
+      //  _p2p->setEndAltitudeMode(ALTMODE_RELATIVE);
+      //else
+      //  _p2p->setEndAltitudeMode(ALTMODE_ABSOLUTE);
+
+      p2Set = true;
+    }
+    else if (_ui.p2TypeCombo->currentText() == "Annotation")
+    {
+      GeoPoint p = _p2p->getEnd();
+      p.altitudeMode() = ALTMODE_ABSOLUTE;
+      _p2p->setEnd( p );
+      //_p2p->setEndAltitudeMode(ALTMODE_ABSOLUTE);
+      p2Node = _annotations[_ui.p2NodeCombo->currentIndex()];
+      p2Set = true;
+    }
+
+    // set update callback if tethered, else clear it
+    if (p1Node || p2Node)
+      _p2p->setUpdateCallback(new osgEarth::Util::LineOfSightTether(p1Node, p2Node));
+    else
+      _p2p->setUpdateCallback(0L);
+  }
+  
+  if (_radial.valid() && (updateAll || _ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Radial"))
+  {
+    _radial->setRadius(_ui.radiusSpinBox->value());
+    _radial->setNumSpokes(_ui.spokesSpinBox->value());
+
+    if (_ui.depthTestCheckBox->checkState() == Qt::Checked)
+      _radial->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::ON);
+    else
+      _radial->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
+
+    // get center point or node to attach to
+    if (_ui.radTypeCombo->currentText() == "Point")
+    {
+      _radial->setCenter( GeoPoint(
+          _mapNode->getMapSRS(),
+          _ui.radLonBox->value(),
+          _ui.radLatBox->value(),
+          _ui.radAltBox->value(),
+          _ui.radRelativeCheckBox->checkState() == Qt::Checked ? ALTMODE_RELATIVE : ALTMODE_ABSOLUTE) );
+
+      //_radial->setCenter(osg::Vec3d(_ui.radLonBox->value(), _ui.radLatBox->value(), _ui.radAltBox->value()));
+
+      //if (_ui.radRelativeCheckBox->checkState() == Qt::Checked)
+      //  _radial->setAltitudeMode(ALTMODE_RELATIVE);
+      //else
+      //  _radial->setAltitudeMode(ALTMODE_ABSOLUTE);
+
+      // clear update callback
+      _radial->setUpdateCallback(0L);
+    }
+    else if (_ui.radTypeCombo->currentText() == "Annotation")
+    {
+      GeoPoint p = _radial->getCenter();
+      p.altitudeMode() = ALTMODE_ABSOLUTE;
+      _radial->setCenter( p );
+      //_radial->setAltitudeMode(ALTMODE_ABSOLUTE);
+      _radial->setUpdateCallback(new osgEarth::Util::RadialLineOfSightTether(_annotations[_ui.radNodeCombo->currentIndex()]));
+    }
+  }
+}
+
+void LOSCreationDialog::cleanupNodes()
+{
+  if (_root.valid())
+  {
+    _root->removeChild(_p1Dragger);
+    _root->removeChild(_p2Dragger);
+    _root->removeChild(_radDragger);
+
+    _root->removeChild(_p2p);
+    _root->removeChild(_radial);
+  }
+}
+
+void LOSCreationDialog::centerMapOnNode(osg::Node* node)
+{
+  if (node && _map.valid() && _manager.valid() && _views)
+  {
+    AnnotationNode* annoNode = dynamic_cast<AnnotationNode*>(node);
+    if (annoNode && annoNode->getAnnotationData() && annoNode->getAnnotationData()->getViewpoint())
+    {
+      _manager->doAction(this, new SetViewpointAction(osgEarth::Viewpoint(*annoNode->getAnnotationData()->getViewpoint()), *_views));
+    }
+    else
+    {
+      osg::Vec3d center = node->getBound().center();
+
+      GeoPoint output;
+      output.fromWorld( _map->getSRS(), center );
+      //_map->worldPointToMapPoint(center, output);
+
+      _manager->doAction(this, new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, 1e5), *_views));
+    }
+  }
+}
+
+void LOSCreationDialog::onP1TypeChange(const QString& text)
+{
+  if (text == "Point")
+  {
+    _ui.p1PointOptions->setVisible(true);
+    _ui.p1NodeOptions->setVisible(false);
+    _ui.p2pRelativeCheckBox->setEnabled(true);
+  }
+  else
+  {
+    _ui.p1PointOptions->setVisible(false);
+    _ui.p1NodeOptions->setVisible(true);
+    _ui.p2pRelativeCheckBox->setEnabled(_ui.p2TypeCombo->currentText() == "Point");
+  }
+
+  updateDraggerNodes();
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onP2TypeChange(const QString& text)
+{
+  if (text == "Point")
+  {
+    _ui.p2PointOptions->setVisible(true);
+    _ui.p2NodeOptions->setVisible(false);
+    _ui.p2pRelativeCheckBox->setEnabled(true);
+  }
+  else
+  {
+    _ui.p2PointOptions->setVisible(false);
+    _ui.p2NodeOptions->setVisible(true);
+    _ui.p2pRelativeCheckBox->setEnabled(_ui.p1TypeCombo->currentText() == "Point");
+  }
+
+  updateDraggerNodes();
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onRadTypeChange(const QString& text)
+{
+  if (text == "Point")
+  {
+    _ui.radPointOptions->setVisible(true);
+    _ui.radNodeOptions->setVisible(false);
+  }
+  else
+  {
+    _ui.radPointOptions->setVisible(false);
+    _ui.radNodeOptions->setVisible(true);
+  }
+
+  updateDraggerNodes();
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onP1MapButtonClicked(bool checked)
+{
+  _activeButton = _ui.p1PointButton;
+  this->setEnabled(false);
+}
+
+void LOSCreationDialog::onP2MapButtonClicked(bool checked)
+{
+  _activeButton = _ui.p2PointButton;
+  this->setEnabled(false);
+}
+
+void LOSCreationDialog::onRadMapButtonClicked(bool checked)
+{
+  _activeButton = _ui.radPointButton;
+  this->setEnabled(false);
+}
+
+void LOSCreationDialog::onP1FindNodeButtonClicked(bool checked)
+{
+  if (_ui.p1NodeCombo->currentIndex() >= 0 && (int)_annotations.size() > _ui.p1NodeCombo->currentIndex())
+    centerMapOnNode(_annotations[_ui.p1NodeCombo->currentIndex()]);
+}
+
+void LOSCreationDialog::onP2FindNodeButtonClicked(bool checked)
+{
+  if (_ui.p2NodeCombo->currentIndex() >= 0 && (int)_annotations.size() > _ui.p2NodeCombo->currentIndex())
+    centerMapOnNode(_annotations[_ui.p2NodeCombo->currentIndex()]);
+}
+
+void LOSCreationDialog::onRadFindNodeButtonClicked(bool checked)
+{
+  if (_ui.radNodeCombo->currentIndex() >= 0 && (int)_annotations.size() > _ui.radNodeCombo->currentIndex())
+    centerMapOnNode(_annotations[_ui.radNodeCombo->currentIndex()]);
+}
+
+void LOSCreationDialog::onLocationValueChanged(double d)
+{
+  if (!_updatingUi)
+  {
+    QObject* s = sender();
+
+    if (s == _ui.p1LatBox || s == _ui.p1LonBox)
+    {
+      if (_updateAlt)
+      {
+        double alt;
+        if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), _ui.p1LonBox->value(), _ui.p1LatBox->value(), &alt))
+          _p1BaseAlt = alt;
+      }
+
+      updatePoint(P2P_START);
+    }
+    else if (s == _ui.p1AltBox)
+    {
+      updatePoint(P2P_START);
+    }
+    else if (s == _ui.p2LatBox || s == _ui.p2LonBox)
+    {
+      if (_updateAlt)
+      {
+        double alt;
+        if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), _ui.p2LonBox->value(), _ui.p2LatBox->value(), &alt))
+          _p2BaseAlt = alt;
+      }
+
+      updatePoint(P2P_END);
+    }
+    else if (s == _ui.p2AltBox)
+    {
+      updatePoint(P2P_END);
+    }
+    else if (s == _ui.radLatBox || s == _ui.radLonBox)
+    {
+      if (_updateAlt)
+      {
+        double alt;
+        if (_mapNode->getTerrain()->getHeight(_mapNode->getMapSRS(), _ui.radLonBox->value(), _ui.radLatBox->value(), &alt))
+          _radBaseAlt = alt;
+      }
+
+      updatePoint(RADIAL_CENTER);
+    }
+    else if (s == _ui.radAltBox)
+    {
+      updatePoint(RADIAL_CENTER);
+    }
+  }
+
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onRelativeCheckChanged(int state)
+{
+  if (!_updatingUi)
+  {
+    QObject* s = sender();
+
+    if (s == _ui.p2pRelativeCheckBox)
+    {
+      updatePoint(P2P_START);
+      updatePoint(P2P_END);
+    }
+    else if (s == _ui.radRelativeCheckBox)
+    {
+      updatePoint(RADIAL_CENTER);
+    }
+  }
+
+  updateDraggerNodes();
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onNodeComboChange(const QString& text)
+{
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onDepthTestChanged(int state)
+{
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onCurrentTabChanged(int index)
+{
+  if (_ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Point-to-Point")
+  {
+    _node = _p2p;
+
+    if (_root.valid())
+    {
+      _root->removeChild(_radial);
+      _root->addChild(_p2p);
+    }
+  }
+  else if (_ui.typeTabs->tabText(_ui.typeTabs->currentIndex()) == "Radial")
+  {
+    _node = _radial;
+
+    if (_root.valid())
+    {
+      _root->removeChild(_p2p);
+      _root->addChild(_radial);
+    }
+  }
+
+  updateDraggerNodes();
+}
+
+void LOSCreationDialog::onSpokesBoxChanged(int value)
+{
+  updateLOSNodes();
+}
+
+void LOSCreationDialog::onRadiusBoxChanged(double value)
+{
+  updateLOSNodes();
+}
diff --git a/src/osgEarthQt/LayerManagerWidget b/src/osgEarthQt/LayerManagerWidget
new file mode 100644
index 0000000..f3cccac
--- /dev/null
+++ b/src/osgEarthQt/LayerManagerWidget
@@ -0,0 +1,289 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_LAYERMANAGERWIDGET_H
+#define OSGEARTHQT_LAYERMANAGERWIDGET_H 1
+
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Map>
+
+#include <QCheckBox>
+#include <QDropEvent>
+#include <QFrame>
+#include <QHBoxLayout>
+#include <QPoint>
+#include <QScrollArea>
+#include <QSlider>
+#include <QVBoxLayout>
+#include <QWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    class LayerManagerWidget;
+
+    //---------------------------------------------------------------------------
+    class LayerControlWidgetBase : public QFrame
+    {
+    Q_OBJECT
+
+    public:
+      LayerControlWidgetBase(LayerManagerWidget* parentManager, bool hasContent=true) : _parent(parentManager) { initUi(hasContent); }
+
+      virtual Action* getDoubleClickAction(const ViewVector& views) { return 0L; }
+
+      LayerManagerWidget* getParentManager() { return _parent; }
+
+      virtual osgEarth::UID getUID()=0;
+
+    signals:
+      void doubleClicked();
+
+    protected:
+      virtual ~LayerControlWidgetBase();
+
+      virtual void initUi(bool hasContent);
+
+      void mouseDoubleClickEvent(QMouseEvent* event);
+      void mousePressEvent(QMouseEvent* event);
+      void mouseMoveEvent(QMouseEvent* event);
+      void dragEnterEvent(QDragEnterEvent* event);
+      void dragLeaveEvent(QDragLeaveEvent* event);
+      //void dragMoveEvent(QDragMoveEvent* event);
+      void dropEvent(QDropEvent* event);
+
+      LayerManagerWidget* _parent;
+      QVBoxLayout*  _primaryLayout;
+      QFrame*       _headerBox;
+      QHBoxLayout*  _headerBoxLayout;
+      QFrame*       _contentBox;
+      QHBoxLayout*  _contentBoxLayout;
+      QFrame*       _dropBox;
+
+      QPoint _dragStartPosition;
+    };
+
+
+    //---------------------------------------------------------------------------
+    class ElevationLayerControlWidget : public LayerControlWidgetBase
+    {
+    Q_OBJECT
+
+    public:
+      ElevationLayerControlWidget(ElevationLayer* layer, LayerManagerWidget* parentManager);
+
+      Action* getDoubleClickAction(const ViewVector& views);
+
+      osgEarth::UID getUID();
+
+      ElevationLayer* layer() { return _layer.get(); }
+
+      void setLayerVisible(bool value);
+
+    private slots:
+      void onEnabledCheckStateChanged(int state);
+
+    protected:
+      virtual ~ElevationLayerControlWidget();
+
+      void initUi();
+
+      osg::ref_ptr<ElevationLayer> _layer;
+      osg::ref_ptr<Action> _doubleClick;
+      osg::ref_ptr<ElevationLayerCallback> _layerCallback;
+      QCheckBox* _visibleCheckBox;
+    };
+
+
+    //---------------------------------------------------------------------------
+    class ImageLayerControlWidget : public LayerControlWidgetBase
+    {
+    Q_OBJECT
+
+    public:
+      ImageLayerControlWidget(osgEarth::ImageLayer* layer, LayerManagerWidget* parentManager);
+
+      Action* getDoubleClickAction(const ViewVector& views);
+
+      osgEarth::UID getUID();
+
+      osgEarth::ImageLayer* layer() { return _layer.get(); }
+
+      void setLayerVisible(bool value);
+      void setLayerOpacity(float opacity);
+
+
+    private slots:
+      void onCheckStateChanged(int state);
+      void onSliderValueChanged(int value);
+
+    protected:
+      virtual ~ImageLayerControlWidget();
+
+      void initUi();
+
+      osg::ref_ptr<osgEarth::ImageLayer> _layer;
+      osg::ref_ptr<Action> _doubleClick;
+      osg::ref_ptr<ImageLayerCallback> _layerCallback;
+      QCheckBox* _visibleCheckBox;
+      QSlider* _opacitySlider;
+    };
+
+
+    //---------------------------------------------------------------------------
+    class ModelLayerControlWidget : public LayerControlWidgetBase
+    {
+    Q_OBJECT
+
+    public:
+      ModelLayerControlWidget(ModelLayer* layer, LayerManagerWidget* parentManager, osgEarth::Map* map=0L);
+
+      Action* getDoubleClickAction(const ViewVector& views);
+
+      osgEarth::UID getUID();
+
+      ModelLayer* layer() { return _layer.get(); }
+
+      void setLayerVisible(bool value);
+      void setLayerOverlay(bool overlay);
+
+    private slots:
+      void onEnabledCheckStateChanged(int state);
+      void onOverlayCheckStateChanged(int state);
+
+    protected:
+      virtual ~ModelLayerControlWidget();
+
+      void initUi();
+
+      osg::ref_ptr<ModelLayer> _layer;
+      osg::ref_ptr<Map> _map;
+      osg::ref_ptr<ModelLayerCallback> _layerCallback;
+      osg::ref_ptr<Action> _doubleClick;
+      QCheckBox* _visibleCheckBox;
+      QCheckBox* _overlayCheckBox;
+    };
+
+
+
+
+    //---------------------------------------------------------------------------
+    class LayerWidgetMimeData : public QMimeData
+    {
+    Q_OBJECT
+
+    public:
+      static const QString MIME_TYPE;
+
+      LayerWidgetMimeData(LayerControlWidgetBase* widget) : _widget(widget) {}
+
+      bool hasFormat(const QString &mimeType) const
+      {
+        if (mimeType == MIME_TYPE)
+          return true;
+
+        return false;
+      }
+
+      QStringList formats() const
+      {
+        QStringList formats;
+        formats << MIME_TYPE;
+
+        return formats;
+      }
+
+      QVariant retrieveData(const QString &mimeType, QVariant::Type type) const
+      {
+        return QVariant();
+      }
+
+      LayerControlWidgetBase* getWidget() const { return _widget; }
+
+    private:
+      LayerControlWidgetBase* _widget;
+    };
+
+
+    //---------------------------------------------------------------------------
+    class OSGEARTHQT_EXPORT LayerManagerWidget : public QScrollArea
+    {
+    Q_OBJECT
+
+    public:
+      enum LayerType {
+        ELEVATION_LAYERS,
+        IMAGE_LAYERS,
+        MODEL_LAYERS
+      };
+
+      LayerManagerWidget(DataManager* dm, LayerType type=IMAGE_LAYERS);
+      LayerManagerWidget(osgEarth::Map* map, LayerType type=IMAGE_LAYERS);
+
+      void setActiveView(osgViewer::View* view);
+      void setActiveViews(const ViewVector& views);
+
+      void resetStyleSheet();
+
+    private slots:
+      void onItemDoubleClicked();
+
+    private:
+      friend struct LayerManagerMapCallback;
+
+      QWidget* findItemByUID(osgEarth::UID uid, int* out_row=0L);
+
+      void addElevationLayerItem(osgEarth::ElevationLayer* layer, int index=-1);
+      void addImageLayerItem(osgEarth::ImageLayer* layer, int index=-1);
+      void addModelLayerItem(osgEarth::ModelLayer* layer, int index=-1);
+      void removeLayerItem(osgEarth::Layer* layer);
+      void moveLayerItem(osgEarth::Layer* layer, int oldIndex, int newIndex);
+
+    protected:
+      friend class LayerControlWidgetBase;
+
+      static const std::string DEFAULT_STYLESHEET;
+
+      void initialize();
+      void refresh();
+
+      void dragEnterEvent(QDragEnterEvent* event);
+      void dragLeaveEvent(QDragLeaveEvent* event);
+      void dropEvent(QDropEvent* event);
+
+      void doLayerWidgetDrop(LayerControlWidgetBase* widget, LayerControlWidgetBase* dropOn=0L);
+
+      osg::ref_ptr<DataManager> _manager;
+      osg::ref_ptr<osgEarth::Map> _map;
+      ViewVector _views;
+      LayerType _type;
+
+      QVBoxLayout*  _stack;
+      QFrame*       _dropBox;
+
+      bool _dragging;
+      int _dragId;
+      osg::observer_ptr<osg::Referenced> _dragLayer;
+    };
+} }
+
+#endif // OSGEARTHQT_LAYERMANAGERWIDGET_H
diff --git a/src/osgEarthQt/LayerManagerWidget.cpp b/src/osgEarthQt/LayerManagerWidget.cpp
new file mode 100644
index 0000000..425ab76
--- /dev/null
+++ b/src/osgEarthQt/LayerManagerWidget.cpp
@@ -0,0 +1,881 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/LayerManagerWidget>
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/GuiActions>
+
+
+#include <osgEarth/Map>
+#include <osgEarth/Viewpoint>
+#include <osgEarthAnnotation/AnnotationNode>
+
+#include <osg/MatrixTransform>
+
+#include <QAbstractItemDelegate>
+#include <QApplication>
+#include <QCheckBox>
+#include <QFrame>
+#include <QGraphicsOpacityEffect>
+#include <QHBoxLayout>
+#include <QLabel>
+#include <QPushButton>
+#include <QSizePolicy>
+#include <QSlider>
+#include <QStandardItem>
+#include <QStandardItemModel>
+#include <QVBoxLayout>
+#include <QWidget>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+//---------------------------------------------------------------------------
+namespace
+{
+  class WidgetElevationLayerCallback : public ElevationLayerCallback
+  {
+  public:
+    WidgetElevationLayerCallback(ElevationLayerControlWidget* widget) : _widget(widget) {}
+
+    void onEnabledChanged(TerrainLayer* layer)
+    {
+      if (_widget)
+        _widget->setLayerVisible(layer->getVisible());
+    }
+
+  private:
+    ElevationLayerControlWidget* _widget;
+  };
+
+  class WidgetImageLayerCallback : public ImageLayerCallback
+  {
+  public:
+    WidgetImageLayerCallback(ImageLayerControlWidget* widget) : _widget(widget) {}
+
+    void onOpacityChanged(ImageLayer* layer)
+    {
+      if (_widget)
+        _widget->setLayerOpacity(layer->getOpacity());
+    }
+
+    void onEnabledChanged(TerrainLayer* layer)
+    {
+      if (_widget)
+        _widget->setLayerVisible(layer->getVisible());
+    }
+
+  private:
+    ImageLayerControlWidget* _widget;
+  };
+
+  class WidgetModelLayerCallback : public ModelLayerCallback
+  {
+  public:
+    WidgetModelLayerCallback(ModelLayerControlWidget* widget) : _widget(widget) {}
+
+    void onEnabledChanged(ModelLayer* layer)
+    {
+      if (_widget && layer)
+        _widget->setLayerVisible(layer->getVisible());
+    }
+
+    void onOverlayChanged(ModelLayer* layer)
+    {
+      if (_widget)
+        _widget->setLayerOverlay(layer->getOverlay());
+    }
+
+  private:
+    ModelLayerControlWidget* _widget;
+  };
+}
+
+
+//---------------------------------------------------------------------------
+namespace osgEarth { namespace QtGui
+{
+  struct LayerManagerMapCallback : public osgEarth::MapCallback
+  {
+    LayerManagerMapCallback(LayerManagerWidget* manager) : _manager(manager) { }
+
+    //void onMapInfoEstablished( const MapInfo& mapInfo ) { } 
+
+    //void onMapModelChanged( const MapModelChange& change );
+
+    void onImageLayerAdded(ImageLayer* layer, unsigned int index)
+    {
+      _manager->addImageLayerItem(layer, index);
+    }
+
+    void onImageLayerRemoved(ImageLayer* layer, unsigned int index)
+    {
+      _manager->removeLayerItem(layer);
+    }
+
+    void onImageLayerMoved(ImageLayer* layer, unsigned int oldIndex, unsigned int newIndex)
+    {
+      _manager->moveLayerItem(layer, oldIndex, newIndex);
+    }
+
+    void onElevationLayerAdded(ElevationLayer* layer, unsigned int index)
+    {
+      _manager->addElevationLayerItem(layer, index);
+    }
+
+    void onElevationLayerRemoved(ElevationLayer* layer, unsigned int index)
+    {
+      _manager->removeLayerItem(layer);
+    }
+
+    void onElevationLayerMoved(ElevationLayer* layer, unsigned int oldIndex, unsigned int newIndex)
+    {
+      _manager->moveLayerItem(layer, oldIndex, newIndex);
+    }
+
+    void onModelLayerAdded(ModelLayer* layer, unsigned int index)
+    {
+      _manager->addModelLayerItem(layer, index);
+    }
+
+    void onModelLayerRemoved(ModelLayer* layer)
+    {
+      _manager->removeLayerItem(layer);
+    }
+
+    void onModelLayerMoved(ModelLayer* layer, unsigned int oldIndex, unsigned int newIndex)
+    {
+      _manager->moveLayerItem(layer, oldIndex, newIndex);
+    }
+
+    //void onMaskLayerAdded( MaskLayer* mask ) { }
+    //void onMaskLayerRemoved( MaskLayer* mask ) { }
+
+    LayerManagerWidget* _manager;
+  };
+} }
+
+
+//---------------------------------------------------------------------------
+const QString LayerWidgetMimeData::MIME_TYPE = tr("application/LayerWidgetMimeData");
+
+
+//---------------------------------------------------------------------------
+LayerControlWidgetBase::~LayerControlWidgetBase()
+{
+}
+
+void LayerControlWidgetBase::initUi(bool hasContent)
+{
+  // object name for custom stylesheets
+  setObjectName("oeItem");
+
+  // create the primary vertical layout
+  _primaryLayout = new QVBoxLayout;
+  _primaryLayout->setSpacing(0);
+  _primaryLayout->setContentsMargins(0, 0, 0, 0);
+  setLayout(_primaryLayout);
+
+
+  //create drop decoration box
+  _dropBox = new QFrame;
+  QVBoxLayout* dbLayout = new QVBoxLayout();
+  dbLayout->setSpacing(0);
+  dbLayout->setContentsMargins(0, 0, 0, 0);
+  _dropBox->setLayout(dbLayout);
+
+  QFrame* dropBoxInternal = new QFrame();
+  dropBoxInternal->setFixedHeight(40);
+  dropBoxInternal->setObjectName("oeDropTarget");
+  dbLayout->addWidget(dropBoxInternal);
+  dbLayout->addSpacing(4);
+
+  QGraphicsOpacityEffect* dbEffect = new QGraphicsOpacityEffect(_dropBox);
+  dbEffect->setOpacity(0.35);
+  _dropBox->setGraphicsEffect(dbEffect);
+  _dropBox->setVisible(false);
+  _primaryLayout->addWidget(_dropBox);
+
+
+  // create the header box and layout
+  _headerBox = new QFrame;
+  _headerBoxLayout = new QHBoxLayout;
+  _headerBoxLayout->setSpacing(4);
+  _headerBoxLayout->setContentsMargins(2, 2, 2, 2);
+  _headerBox->setLayout(_headerBoxLayout);
+  _primaryLayout->addWidget(_headerBox);
+
+
+  // create the content box and layout
+  if (hasContent)
+  {
+    _headerBox->setObjectName("oeItemHeader");
+
+    _contentBox = new QFrame();
+    _contentBoxLayout = new QHBoxLayout;
+    _contentBoxLayout->setContentsMargins(4, 4, 4, 4);
+    _contentBox->setLayout(_contentBoxLayout);
+    _primaryLayout->addWidget(_contentBox);
+  }
+
+  setAcceptDrops(true); 
+}
+
+void LayerControlWidgetBase::mouseDoubleClickEvent(QMouseEvent *event)
+{
+  emit doubleClicked();
+}
+
+void LayerControlWidgetBase::mousePressEvent(QMouseEvent *event)
+{
+  if (event->button() == Qt::LeftButton)
+    _dragStartPosition = event->pos();
+}
+
+void LayerControlWidgetBase::mouseMoveEvent(QMouseEvent *event)
+{
+  if (!(event->buttons() & Qt::LeftButton))
+    return;
+
+  if ((event->pos() - _dragStartPosition).manhattanLength() < QApplication::startDragDistance())
+    return;
+
+  QDrag *drag = new QDrag(this);
+  drag->setMimeData(new LayerWidgetMimeData(this));
+
+  Qt::DropAction dropAction = drag->exec(Qt::MoveAction);
+}
+
+void LayerControlWidgetBase::dragEnterEvent(QDragEnterEvent* event)
+{
+  if (_parent && event->mimeData()->hasFormat(LayerWidgetMimeData::MIME_TYPE) && event->source()->parent() == this->parent())
+  {
+    if (event->source() != this)
+    {
+      _dropBox->setFixedWidth(_headerBox->width());
+      _dropBox->setVisible(true);
+    }
+
+    event->acceptProposedAction();
+  }
+}
+
+void LayerControlWidgetBase::dragLeaveEvent(QDragLeaveEvent* event)
+{
+  _dropBox->setVisible(false);
+}
+
+void LayerControlWidgetBase::dropEvent(QDropEvent* event)
+{
+  _dropBox->setVisible(false);
+
+  const LayerWidgetMimeData* widgetData = qobject_cast<const LayerWidgetMimeData*>(event->mimeData());
+  if (widgetData)
+    _parent->doLayerWidgetDrop(widgetData->getWidget(), this);
+}
+
+
+//---------------------------------------------------------------------------
+ElevationLayerControlWidget::ElevationLayerControlWidget(osgEarth::ElevationLayer* layer, LayerManagerWidget* parentManager) : LayerControlWidgetBase(parentManager, false), _layer(layer)
+{
+  initUi();
+
+  if (_layer.valid())
+  {
+    _layerCallback = new WidgetElevationLayerCallback(this);
+    _layer->addCallback(_layerCallback.get());
+  }
+}
+
+ElevationLayerControlWidget::~ElevationLayerControlWidget()
+{
+  if (_layer.valid())
+    _layer->removeCallback(_layerCallback.get());
+
+  _layer = 0L;
+  _layerCallback = 0L;
+  _doubleClick = 0L;
+}
+
+void ElevationLayerControlWidget::initUi()
+{
+  if (_layer.valid())
+  {
+    // create enabled checkbox
+    _visibleCheckBox = new QCheckBox();
+    _visibleCheckBox->setCheckState(_layer->getVisible() ? Qt::Checked : Qt::Unchecked);
+    connect(_visibleCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onEnabledCheckStateChanged(int)));
+    _headerBoxLayout->addWidget(_visibleCheckBox);
+
+    // create name label
+    QLabel* label = new QLabel(tr(!_layer->getName().empty() ? _layer->getName().c_str() : "Elevation Layer"));
+    _headerBoxLayout->addWidget(label);
+
+    // add stretch for spacing
+    _headerBoxLayout->addStretch();
+  }
+  else
+  {
+    // _layer is null so just add a label stating so
+    QLabel* label = new QLabel(tr("LAYER IS NULL"));
+    _contentBoxLayout->addWidget(label);
+  }
+}
+
+void ElevationLayerControlWidget::onEnabledCheckStateChanged(int state)
+{
+  bool checked = state == Qt::Checked;
+  if (_layer.valid() && _layer->getVisible() != checked)
+    _layer->setVisible(checked);
+}
+
+void ElevationLayerControlWidget::setLayerVisible(bool visible)
+{
+  if ((_visibleCheckBox->checkState() == Qt::Checked) != visible)
+    _visibleCheckBox->setCheckState(visible ? Qt::Checked : Qt::Unchecked);
+}
+
+osgEarth::UID ElevationLayerControlWidget::getUID()
+{
+  if (!_layer)
+    return -1;
+
+  return _layer->getUID();
+}
+
+Action* ElevationLayerControlWidget::getDoubleClickAction(const ViewVector& views)
+{
+  if (!_doubleClick.valid() && _layer.valid())
+  {
+    const osgEarth::GeoExtent llExt = _layer->getProfile()->getLatLongExtent();
+
+    osg::Vec3d focalPoint((llExt.xMax() + llExt.xMin()) / 2.0,
+                          (llExt.yMax() + llExt.yMin()) / 2.0,
+                          0L);
+
+	  double rangeFactor = llExt.yMax() != llExt.yMin() ? llExt.yMax() - llExt.yMin() : llExt.xMax() - llExt.xMin();
+	  double range = ((0.5 * rangeFactor) / 0.267949849) * 111000.0;
+	  if (range == 0.0)
+		  range = 20000000.0;
+
+    _doubleClick = new SetViewpointAction(osgEarth::Viewpoint(focalPoint, 0.0, -90.0, range), views);
+  }
+
+  return _doubleClick.get();
+}
+
+
+//---------------------------------------------------------------------------
+ImageLayerControlWidget::ImageLayerControlWidget(osgEarth::ImageLayer* layer, LayerManagerWidget* parentManager) : LayerControlWidgetBase(parentManager), _layer(layer)
+{
+  initUi();
+
+  if (_layer.valid())
+  {
+    _layerCallback = new WidgetImageLayerCallback(this);
+    _layer->addCallback(_layerCallback.get());
+  }
+}
+
+ImageLayerControlWidget::~ImageLayerControlWidget()
+{
+  if (_layer.valid())
+    _layer->removeCallback(_layerCallback.get());
+
+  _layer = 0L;
+  _layerCallback = 0L;
+  _doubleClick = 0L;
+}
+
+void ImageLayerControlWidget::initUi()
+{
+  if (_layer.valid())
+  {
+    // create enabled checkbox
+    _visibleCheckBox = new QCheckBox();
+    _visibleCheckBox->setCheckState(_layer->getVisible() ? Qt::Checked : Qt::Unchecked);
+    connect(_visibleCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onCheckStateChanged(int)));
+    _headerBoxLayout->addWidget(_visibleCheckBox);
+
+    // create name label
+    QLabel* label = new QLabel(tr(!_layer->getName().empty() ? _layer->getName().c_str() : "Image Layer"));
+    _headerBoxLayout->addWidget(label);
+
+    // add stretch for spacing
+    _headerBoxLayout->addStretch();
+
+    // create opacity slider
+    _opacitySlider = new QSlider(Qt::Horizontal);
+    _opacitySlider->setMinimum(0);
+    _opacitySlider->setMaximum(100);
+    _opacitySlider->setValue((int)(_layer->getOpacity() * 100.0));
+    _opacitySlider->setTracking(true);
+    connect(_opacitySlider, SIGNAL(valueChanged(int)), this, SLOT(onSliderValueChanged(int)));
+    _contentBoxLayout->addWidget(_opacitySlider);
+  }
+  else
+  {
+    // _layer is null so just add a label stating so
+    QLabel* label = new QLabel(tr("LAYER IS NULL"));
+    _contentBoxLayout->addWidget(label);
+  }
+}
+
+void ImageLayerControlWidget::onCheckStateChanged(int state)
+{
+  bool checked = state == Qt::Checked;
+  if (_layer.valid() && _layer->getVisible() != checked)
+    _layer->setVisible(checked);
+}
+
+void ImageLayerControlWidget::onSliderValueChanged(int value)
+{
+  float opacity = ((float)value) / 100.0f;
+  if (_layer.valid() && _layer->getOpacity() != opacity)
+    _layer->setOpacity(opacity);
+}
+
+void ImageLayerControlWidget::setLayerVisible(bool visible)
+{
+  if ((_visibleCheckBox->checkState() == Qt::Checked) != visible)
+    _visibleCheckBox->setCheckState(visible ? Qt::Checked : Qt::Unchecked);
+}
+
+void ImageLayerControlWidget::setLayerOpacity(float opacity)
+{
+  int val = (int)(opacity * 100.0);
+  if (_opacitySlider->value() != val)
+    _opacitySlider->setValue(val);
+}
+
+osgEarth::UID ImageLayerControlWidget::getUID()
+{
+  if (!_layer)
+    return -1;
+
+  return _layer->getUID();
+}
+
+Action* ImageLayerControlWidget::getDoubleClickAction(const ViewVector& views)
+{
+  if (!_doubleClick.valid() && _layer.valid())
+  {
+    const osgEarth::GeoExtent llExt = _layer->getProfile()->getLatLongExtent();
+
+    osg::Vec3d focalPoint((llExt.xMax() + llExt.xMin()) / 2.0,
+                          (llExt.yMax() + llExt.yMin()) / 2.0,
+                          0L);
+
+	  double rangeFactor = llExt.yMax() != llExt.yMin() ? llExt.yMax() - llExt.yMin() : llExt.xMax() - llExt.xMin();
+	  double range = ((0.5 * rangeFactor) / 0.267949849) * 111000.0;
+	  if (range == 0.0)
+		  range = 20000000.0;
+
+    _doubleClick = new SetViewpointAction(osgEarth::Viewpoint(focalPoint, 0.0, -90.0, range), views);
+  }
+
+  return _doubleClick.get();
+}
+
+
+//---------------------------------------------------------------------------
+ModelLayerControlWidget::ModelLayerControlWidget(osgEarth::ModelLayer* layer, LayerManagerWidget* parentManager, osgEarth::Map* map) : LayerControlWidgetBase(parentManager), _layer(layer), _map(map)
+{
+  initUi();
+
+  if (_layer.valid())
+  {
+    _layerCallback = new WidgetModelLayerCallback(this);
+    _layer->addCallback(_layerCallback.get());
+  }
+}
+
+ModelLayerControlWidget::~ModelLayerControlWidget()
+{
+  if (_layer.valid())
+    _layer->removeCallback(_layerCallback.get());
+
+  _layer = 0L;
+  _layerCallback = 0L;
+  _doubleClick = 0L;
+}
+
+void ModelLayerControlWidget::initUi()
+{
+  if (_layer.valid())
+  {
+    // create enabled checkbox
+    _visibleCheckBox = new QCheckBox();
+    _visibleCheckBox->setCheckState(_layer->getVisible() ? Qt::Checked : Qt::Unchecked);
+    connect(_visibleCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onEnabledCheckStateChanged(int)));
+    _headerBoxLayout->addWidget(_visibleCheckBox);
+
+    // create name label
+    QLabel* label = new QLabel(tr(!_layer->getName().empty() ? _layer->getName().c_str() : "Model Layer"));
+    _headerBoxLayout->addWidget(label);
+
+    // add stretch for spacing
+    _headerBoxLayout->addStretch();
+
+    // create overlay checkbox
+    _contentBoxLayout->addSpacing(16);
+    _overlayCheckBox = new QCheckBox("overlay");
+    _overlayCheckBox->setCheckState(_layer->getOverlay() ? Qt::Checked : Qt::Unchecked);
+    connect(_overlayCheckBox, SIGNAL(stateChanged(int)), this, SLOT(onOverlayCheckStateChanged(int)));
+    _contentBoxLayout->addWidget(_overlayCheckBox);
+  }
+  else
+  {
+    // _layer is null so just add a label stating so
+    QLabel* label = new QLabel(tr("LAYER IS NULL"));
+    _contentBoxLayout->addWidget(label);
+  }
+}
+
+void ModelLayerControlWidget::onEnabledCheckStateChanged(int state)
+{
+  bool checked = state == Qt::Checked;
+  if (_layer.valid() && _layer->getVisible() != checked)
+    _layer->setVisible(checked);
+}
+
+void ModelLayerControlWidget::onOverlayCheckStateChanged(int state)
+{
+  bool checked = state == Qt::Checked;
+  if (_layer.valid() && _layer->getOverlay() != checked)
+    _layer->setOverlay(checked);
+}
+
+void ModelLayerControlWidget::setLayerVisible(bool visible)
+{
+  if ((_visibleCheckBox->checkState() == Qt::Checked) != visible)
+    _visibleCheckBox->setCheckState(visible ? Qt::Checked : Qt::Unchecked);
+}
+
+void ModelLayerControlWidget::setLayerOverlay(bool overlay)
+{
+  if ((_overlayCheckBox->checkState() == Qt::Checked) != overlay)
+    _overlayCheckBox->setCheckState(overlay ? Qt::Checked : Qt::Unchecked);
+}
+
+
+osgEarth::UID ModelLayerControlWidget::getUID()
+{
+  if (!_layer)
+    return -1;
+
+  return _layer->getUID();
+}
+
+Action* ModelLayerControlWidget::getDoubleClickAction(const ViewVector& views)
+{
+  if (!_doubleClick.valid() && _layer.valid() && _map.valid())
+  {
+    osg::ref_ptr<osg::Node> temp = _layer->createSceneGraph( _map.get(), _map->getDBOptions(), 0L );
+    if (temp.valid())
+    {
+      osg::NodePathList nodePaths = temp->getParentalNodePaths();
+      if (!nodePaths.empty())
+      {
+        osg::NodePath path = nodePaths[0];
+
+        osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
+        osg::Vec3d center = osg::Vec3d(0,0,0) * localToWorld;
+
+        const osg::BoundingSphere& bs = temp->getBound();
+
+        // if the tether node is a MT, we are set. If it's not, we need to get the
+        // local bound and add its translation to the localToWorld.
+        if ( !dynamic_cast<osg::MatrixTransform*>( temp.get() ) )
+          center += bs.center();
+
+        GeoPoint output;
+        output.fromWorld( _map->getSRS(), center );
+        //_map->worldPointToMapPoint(center, output);
+
+        //TODO: make a better range calculation
+        return new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, bs.radius() * 4.0), views);
+      }
+    }
+  }
+
+  return _doubleClick.get();
+}
+
+
+//---------------------------------------------------------------------------
+const std::string LayerManagerWidget::DEFAULT_STYLESHEET = "#oeFrameContainer, #oeFrameContainer * { background-color: rgba(255, 255, 255, 100%) } #oeItem, #oeItem * { background-color: lightgrey; } #oeItemHeader, #oeItemHeader * { background-color: grey; color: white; } #oeDropTarget, #oeDropTarget * { background: qlineargradient(x1:0 y1:0, x2:0 y2:1, stop:0 blue, stop:1 white); }";
+
+LayerManagerWidget::LayerManagerWidget(DataManager* dm, LayerType type) : QScrollArea(), _manager(dm), _type(type)
+{
+  if (_manager.valid())
+    _map = _manager->map();
+
+  initialize();
+}
+
+LayerManagerWidget::LayerManagerWidget(osgEarth::Map* map, LayerType type) : QScrollArea(), _map(map), _type(type)
+{
+  initialize();
+}
+
+void LayerManagerWidget::setActiveView(osgViewer::View* view)
+{
+  _views.clear();
+  _views.push_back(view);
+}
+
+void LayerManagerWidget::setActiveViews(const ViewVector& views)
+{
+  _views.clear();
+  _views.insert(_views.end(), views.begin(), views.end());
+}
+
+void LayerManagerWidget::resetStyleSheet()
+{
+  setStyleSheet(tr(DEFAULT_STYLESHEET.c_str()));
+}
+
+void LayerManagerWidget::initialize()
+{
+  setWidgetResizable(true);
+  setObjectName("oeFrameContainer");
+
+  _stack = new QVBoxLayout;
+	_stack->setSpacing(4);
+	_stack->setContentsMargins(4, 4, 4, 4);
+  _stack->setSizeConstraint(QLayout::SetMinimumSize);
+
+  QWidget* stackWidget = new QWidget();
+  stackWidget->setLayout(_stack);
+  stackWidget->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Fixed);
+  setWidget(stackWidget);
+
+
+  //create drop decoration box
+  _dropBox = new QFrame;
+  QVBoxLayout* dbLayout = new QVBoxLayout();
+  dbLayout->setSpacing(0);
+  dbLayout->setContentsMargins(0, 0, 0, 0);
+  _dropBox->setLayout(dbLayout);
+
+  QFrame* dropBoxInternal = new QFrame();
+  dropBoxInternal->setFixedHeight(40);
+  dropBoxInternal->setObjectName("oeDropTarget");
+  dbLayout->addSpacing(4);
+  dbLayout->addWidget(dropBoxInternal);
+
+  QGraphicsOpacityEffect* dbEffect = new QGraphicsOpacityEffect(_dropBox);
+  dbEffect->setOpacity(0.35);
+  _dropBox->setGraphicsEffect(dbEffect);
+
+
+  resetStyleSheet();
+  setAcceptDrops(true);
+
+  if (_map.valid())
+  {
+    refresh();
+    _map->addMapCallback(new LayerManagerMapCallback(this));
+  }
+}
+
+void LayerManagerWidget::onItemDoubleClicked()
+{
+  if (!_manager.valid())
+    return;
+
+  Action* action = ((LayerControlWidgetBase*)sender())->getDoubleClickAction(_views);
+  if (action)
+    _manager->doAction(this, action);
+}
+
+void LayerManagerWidget::refresh()
+{
+  //TODO: Clear all items in _stack?
+  //      Currently refresh() is only called from initialize() so clearing is not necessary.
+
+  if (!_map.valid())
+    return;
+
+  if (_type == IMAGE_LAYERS)
+  {
+    osgEarth::ImageLayerVector layers;
+    _map->getImageLayers(layers);
+    for (osgEarth::ImageLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+      addImageLayerItem(*it);
+  }
+  else if (_type == MODEL_LAYERS)
+  {
+    osgEarth::ModelLayerVector layers;
+    _map->getModelLayers(layers);
+    for (osgEarth::ModelLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+      addModelLayerItem(*it);
+  }
+  else if (_type == ELEVATION_LAYERS)
+  {
+    osgEarth::ElevationLayerVector layers;
+    _map->getElevationLayers(layers);
+    for (osgEarth::ElevationLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+      addElevationLayerItem(*it);
+  }
+}
+
+QWidget* LayerManagerWidget::findItemByUID(osgEarth::UID uid, int* out_row)
+{
+  for (int i = 0; i < _stack->count(); i++)
+  {
+    LayerControlWidgetBase* widget = dynamic_cast<LayerControlWidgetBase*>(_stack->itemAt(i)->widget());
+    if (widget && widget->getUID() == uid)
+    {
+      if (out_row)
+        (*out_row) = i;
+
+      return widget;
+    }
+  }
+
+  return 0L;
+}
+
+void LayerManagerWidget::addElevationLayerItem(osgEarth::ElevationLayer* layer, int index)
+{
+  if (_type != ELEVATION_LAYERS)
+    return;
+
+  ElevationLayerControlWidget* itemWidget = new ElevationLayerControlWidget(layer, this);
+  _stack->insertWidget(index, itemWidget);
+  
+  connect(itemWidget, SIGNAL(doubleClicked()), this, SLOT(onItemDoubleClicked()));
+}
+
+void LayerManagerWidget::addImageLayerItem(osgEarth::ImageLayer* layer, int index)
+{
+  if (_type != IMAGE_LAYERS)
+    return;
+
+  ImageLayerControlWidget* itemWidget = new ImageLayerControlWidget(layer, this);
+  _stack->insertWidget(index, itemWidget);
+  connect(itemWidget, SIGNAL(doubleClicked()), this, SLOT(onItemDoubleClicked()));
+}
+
+void LayerManagerWidget::addModelLayerItem(osgEarth::ModelLayer* layer, int index)
+{
+  if (_type != MODEL_LAYERS)
+    return;
+
+  ModelLayerControlWidget* itemWidget = new ModelLayerControlWidget(layer, this, _map);
+  _stack->insertWidget(index, itemWidget);
+  connect(itemWidget, SIGNAL(doubleClicked()), this, SLOT(onItemDoubleClicked()));
+}
+
+void LayerManagerWidget::removeLayerItem(osgEarth::Layer* layer)
+{
+  if (!layer)
+    return;
+
+  QWidget* item = findItemByUID(layer->getUID());
+  if (item)
+    delete item;
+}
+
+void LayerManagerWidget::moveLayerItem(osgEarth::Layer* layer, int oldIndex, int newIndex)
+{
+  if (!layer)
+    return;
+
+  int row;
+  QWidget* item = findItemByUID(layer->getUID(), &row);
+  if (item && row != newIndex)
+  {
+    //_stack->takeAt(row);
+    _stack->insertWidget(newIndex, item);
+  }
+}
+
+
+void LayerManagerWidget::dragEnterEvent(QDragEnterEvent* event)
+{
+  if (event->mimeData()->hasFormat(LayerWidgetMimeData::MIME_TYPE))// && event->source()->parent() == this)
+  {
+    const LayerWidgetMimeData* widgetData = qobject_cast<const LayerWidgetMimeData*>(event->mimeData());
+    if (widgetData && widgetData->getWidget()->getParentManager() == this)
+    {
+      _stack->addWidget(_dropBox);
+      _dropBox->setVisible(true);
+
+      event->acceptProposedAction();
+    }
+  }
+}
+
+void LayerManagerWidget::dragLeaveEvent(QDragLeaveEvent* event)
+{
+  _dropBox->setVisible(false);
+  _stack->removeWidget(_dropBox);
+}
+
+void LayerManagerWidget::dropEvent(QDropEvent* event)
+{
+  _dropBox->setVisible(false);
+  _stack->removeWidget(_dropBox);
+
+  const LayerWidgetMimeData* widgetData = qobject_cast<const LayerWidgetMimeData*>(event->mimeData());
+  if (widgetData)
+    doLayerWidgetDrop(widgetData->getWidget());
+}
+
+void LayerManagerWidget::doLayerWidgetDrop(LayerControlWidgetBase* widget, LayerControlWidgetBase* dropOn)
+{
+  if (!widget)
+    return;
+
+  int oldRow = -1;
+  findItemByUID(widget->getUID(), &oldRow);
+
+  int newRow = -1;
+  if (dropOn)
+    findItemByUID(dropOn->getUID(), &newRow);
+
+  if (oldRow >= 0 && oldRow < newRow)
+    newRow--;
+
+  if (oldRow != newRow)
+  {
+    _stack->insertWidget(newRow, widget);
+
+    if (_type == ELEVATION_LAYERS)
+    {
+      ElevationLayerControlWidget* elevWidget = dynamic_cast<ElevationLayerControlWidget*>(widget);
+      if (elevWidget)
+        _map->moveElevationLayer(elevWidget->layer(), newRow >= 0 ? newRow : _stack->count() - 1);
+    }
+    else if (_type == IMAGE_LAYERS)
+    {
+      ImageLayerControlWidget* imageWidget = dynamic_cast<ImageLayerControlWidget*>(widget);
+      if (imageWidget)
+        _map->moveImageLayer(imageWidget->layer(), newRow >= 0 ? newRow : _stack->count() - 1);
+    }
+    else if (_type == MODEL_LAYERS)
+    {
+      ModelLayerControlWidget* modelWidget = dynamic_cast<ModelLayerControlWidget*>(widget);
+      if (modelWidget)
+        _map->moveModelLayer(modelWidget->layer(), newRow >= 0 ? newRow : _stack->count() - 1);
+    }
+  }
+}
diff --git a/src/osgEarthQt/MapCatalogWidget b/src/osgEarthQt/MapCatalogWidget
new file mode 100644
index 0000000..dc00017
--- /dev/null
+++ b/src/osgEarthQt/MapCatalogWidget
@@ -0,0 +1,96 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_MAPCATALOGWIDGET_H
+#define OSGEARTHQT_MAPCATALOGWIDGET_H 1
+
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Map>
+
+#include <QWidget>
+#include <QTreeWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    class OSGEARTHQT_EXPORT MapCatalogWidget : public QFrame
+    {
+    Q_OBJECT
+
+    public:
+      enum DisplayFields {
+        ELEVATION_LAYERS = 0x01,
+        IMAGE_LAYERS = 0x02,
+        MODEL_LAYERS = 0x04,
+        ALL_LAYERS = 0x07,
+        ANNOTATIONS = 0x08,
+        LAYERS_AND_ANNOTATIONS = 0x0F,
+        MASK_LAYERS = 0x10,
+        VIEWPOINTS = 0x20,
+        ALL = 0xFF
+      };
+
+      MapCatalogWidget(DataManager* dm, unsigned int fields=ALL_LAYERS);
+      MapCatalogWidget(osgEarth::Map* map, unsigned int fields=ALL_LAYERS);
+
+      void setActiveView(osgViewer::View* view);
+      void setActiveViews(const ViewVector& views);
+
+      void setHideEmptyGroups(bool hide);
+
+    private slots:
+	  void onMapChanged();
+      void onSelectionChanged(/*const AnnotationVector& selection*/);
+	  void onTreeItemDoubleClicked(QTreeWidgetItem* item, int col);
+      void onTreeItemChanged(QTreeWidgetItem* item, int col);
+      void onTreeSelectionChanged();
+
+    protected:
+      virtual ~MapCatalogWidget() { }
+      friend class MapCatalogActionCallbackProxy;
+
+      void initUi();
+      void refreshAll();
+      void refreshElevationLayers();
+      void refreshImageLayers();
+      void refreshModelLayers();
+      void refreshAnnotations();
+      void refreshMaskLayers();
+      void refreshViewpoints();
+
+      QTreeWidget* _tree;
+      QTreeWidgetItem* _elevationsItem;
+      QTreeWidgetItem* _imagesItem;
+      QTreeWidgetItem* _modelsItem;
+      QTreeWidgetItem* _annotationsItem;
+      QTreeWidgetItem* _masksItem;
+      QTreeWidgetItem* _viewpointsItem;
+
+      osg::ref_ptr<DataManager> _manager;
+      osg::ref_ptr<osgEarth::Map> _map;
+      ViewVector _views;
+      unsigned int _fields;
+      bool _hideEmptyGroups;
+      bool _updating;
+    };
+} }
+
+#endif // OSGEARTHQT_MAPCATALOGWIDGET_H
diff --git a/src/osgEarthQt/MapCatalogWidget.cpp b/src/osgEarthQt/MapCatalogWidget.cpp
new file mode 100644
index 0000000..2a2ea62
--- /dev/null
+++ b/src/osgEarthQt/MapCatalogWidget.cpp
@@ -0,0 +1,606 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/MapCatalogWidget>
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/GuiActions>
+
+
+#include <osgEarth/Map>
+#include <osgEarth/Viewpoint>
+#include <osgEarthAnnotation/AnnotationNode>
+
+#include <osg/MatrixTransform>
+
+#include <QList>
+#include <QWidget>
+#include <QVBoxLayout>
+#include <QTreeWidget>
+#include <QTreeWidgetItem>
+
+using namespace osgEarth::QtGui;
+
+//---------------------------------------------------------------------------
+namespace
+{
+  //---------------------------------------------------------------------------
+  class ActionableTreeItem
+  {
+  public:
+    virtual Action* getDoubleClickAction(const ViewVector& views) { return 0L; }
+    virtual Action* getCheckStateAction(ViewVector& views) { return 0L; }
+    virtual Action* getSelectionAction(bool selected) { return 0L; }
+  };
+
+  //---------------------------------------------------------------------------
+  class CustomActionTreeItem : public QTreeWidgetItem, public ActionableTreeItem
+  {
+  public:
+	  CustomActionTreeItem(osg::Referenced* obj) : _obj(obj), QTreeWidgetItem() {};
+	  CustomActionTreeItem(osg::Referenced* obj, const QStringList &strings) : _obj(obj), QTreeWidgetItem(strings) {};
+  	
+	  osg::Referenced* getObj() const { return _obj.get(); }
+	  void setSource(osg::Referenced* obj) { _obj = obj; }
+
+    void setDoubleClickAction(Action* action) { _doubleClick = action; }
+    Action* getDoubleClickAction(const ViewVector& views) { return _doubleClick.get(); }
+
+    void setCheckStateAction(Action* action) { _checkState = action; }
+    Action* getCheckStateAction() { return _checkState.get(); }
+  	
+  private:
+	  osg::ref_ptr<osg::Referenced> _obj;
+    osg::ref_ptr<Action> _doubleClick;
+    osg::ref_ptr<Action> _checkState;
+  };
+
+  //---------------------------------------------------------------------------
+
+  class LayerTreeItem : public QTreeWidgetItem, public ActionableTreeItem
+  {
+  public:
+    LayerTreeItem(osgEarth::Layer* layer, osgEarth::Map* map) : _layer(layer), _map(map), QTreeWidgetItem() {};
+	  LayerTreeItem(osgEarth::Layer* layer, osgEarth::Map* map, const QStringList &strings) : _layer(layer), _map(map), QTreeWidgetItem(strings) {};
+  	
+	  osgEarth::Layer* getLayer() const { return _layer.get(); }
+
+    Action* getCheckStateAction(ViewVector& views)
+    { 
+        return new SetLayerVisibleAction(views, _layer.get(), checkState(0) == Qt::Checked); 
+    }
+
+    Action* getDoubleClickAction(const ViewVector& views)
+    {
+      if (!_doubleClick.valid() && _layer.valid())
+      {
+        osgEarth::TerrainLayer* terrain = dynamic_cast<osgEarth::TerrainLayer*>(_layer.get());
+        if (terrain)
+        {
+          const osgEarth::GeoExtent llExt = terrain->getProfile()->getLatLongExtent();
+
+          osg::Vec3d focalPoint((llExt.xMax() + llExt.xMin()) / 2.0,
+                                (llExt.yMax() + llExt.yMin()) / 2.0,
+                                0L);
+
+          double rangeFactor = llExt.yMax() != llExt.yMin() ? llExt.yMax() - llExt.yMin() : llExt.xMax() - llExt.xMin();
+          double range = ((0.5 * rangeFactor) / 0.267949849) * 111000.0;
+          if (range == 0.0)
+              range = 20000000.0;
+
+          _doubleClick = new SetViewpointAction(osgEarth::Viewpoint(focalPoint, 0.0, -90.0, range), views);
+        }
+        else
+        {
+          osgEarth::ModelLayer* model = dynamic_cast<osgEarth::ModelLayer*>(_layer.get());
+          if (model && _map.valid())
+          {
+            osg::ref_ptr<osg::Node> temp = model->createSceneGraph( _map.get(), _map->getDBOptions(), 0L );
+            if (temp.valid())
+            {
+              osg::NodePathList nodePaths = temp->getParentalNodePaths();
+              if (!nodePaths.empty())
+              {
+                osg::NodePath path = nodePaths[0];
+
+                osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
+                osg::Vec3d center = osg::Vec3d(0,0,0) * localToWorld;
+
+                const osg::BoundingSphere& bs = temp->getBound();
+
+                // if the tether node is a MT, we are set. If it's not, we need to get the
+                // local bound and add its translation to the localToWorld.
+                if ( !dynamic_cast<osg::MatrixTransform*>( temp.get() ) )
+                  center += bs.center();
+
+                GeoPoint output;
+                output.fromWorld( _map->getSRS(), center );
+                //_map->worldPointToMapPoint(center, output);
+
+                //TODO: make a better range calculation
+                return new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, bs.radius() * 4.0), views);
+              }
+            }
+          }
+        }
+      }
+
+      return _doubleClick.get();
+    }
+  	
+  private:
+	  osg::ref_ptr<osgEarth::Layer> _layer;
+    osg::ref_ptr<osgEarth::Map> _map;
+    osg::ref_ptr<Action> _doubleClick;
+  };
+
+  //---------------------------------------------------------------------------
+  class ToggleNodeTreeItem : public QTreeWidgetItem, public ActionableTreeItem
+  {
+  public:
+    ToggleNodeTreeItem(osg::Node* node) : _node(node), QTreeWidgetItem() {};
+	  ToggleNodeTreeItem(osg::Node* node, const QStringList &strings) : _node(node), QTreeWidgetItem(strings) {};
+  	
+	  osg::Node* getNode() const { return _node.get(); }
+
+    Action* getCheckStateAction() { return new ToggleNodeAction(_node.get(), checkState(0) == Qt::Checked); }
+  	
+  private:
+	  osg::ref_ptr<osg::Node> _node;
+  };
+
+  //---------------------------------------------------------------------------
+  class AnnotationTreeItem : public ToggleNodeTreeItem
+  {
+  public:
+    AnnotationTreeItem(osgEarth::Annotation::AnnotationNode* annotation, osgEarth::Map* map) : _annotation(annotation), _map(map), ToggleNodeTreeItem(annotation) {};
+	  AnnotationTreeItem(osgEarth::Annotation::AnnotationNode* annotation, osgEarth::Map* map, const QStringList &strings) : _annotation(annotation), _map(map), ToggleNodeTreeItem(annotation, strings) {};
+  	
+	  osgEarth::Annotation::AnnotationNode* getAnnotation() const { return _annotation.get(); }
+
+    Action* getSelectionAction(bool selected) { return 0L; } //new SetAnnotationHighlightAction(_annotation.get(), selected); }
+
+    Action* getDoubleClickAction(const ViewVector& views)
+    {
+      if (_annotation.valid())
+      {
+        if (_annotation->getAnnotationData() && _annotation->getAnnotationData()->getViewpoint())
+        {
+          return new SetViewpointAction(osgEarth::Viewpoint(*_annotation->getAnnotationData()->getViewpoint()), views);
+        }
+        else if (_map.valid())
+        {
+          osg::Vec3d center = _annotation->getBound().center();
+
+          GeoPoint output;
+          output.fromWorld( _map->getSRS(), center );
+          //_map->worldPointToMapPoint(center, output);
+
+          return new SetViewpointAction(osgEarth::Viewpoint(output.vec3d(), 0.0, -90.0, 1e5), views);
+        }
+      }
+
+      return 0L;
+    }
+  	
+  private:
+	  osg::ref_ptr<osgEarth::Annotation::AnnotationNode> _annotation;
+    osg::ref_ptr<osgEarth::Map> _map;
+    osgEarth::Viewpoint _vp;
+  };
+
+  //---------------------------------------------------------------------------
+  class ViewpointTreeItem : public QTreeWidgetItem, public ActionableTreeItem
+  {
+  public:
+    ViewpointTreeItem(osgEarth::Viewpoint vp) : _vp(vp), QTreeWidgetItem() {};
+	  ViewpointTreeItem(osgEarth::Viewpoint vp, const QStringList &strings) : _vp(vp), QTreeWidgetItem(strings) {};
+  	
+	  const osgEarth::Viewpoint& getViewpoint() const { return _vp; }
+
+    Action* getDoubleClickAction(const ViewVector& views)
+    {
+      if (!_doubleClick.valid())
+        _doubleClick = new SetViewpointAction(_vp, views);
+
+      return _doubleClick.get();
+    }
+  	
+  private:
+	  osgEarth::Viewpoint _vp;
+    osg::ref_ptr<Action> _doubleClick;
+  };
+}
+
+namespace osgEarth { namespace QtGui
+{
+  class MapCatalogActionCallbackProxy : public ActionCallback
+  {
+  public:
+    MapCatalogActionCallbackProxy(MapCatalogWidget* catalog) : _catalog(catalog) { }
+
+    void operator()( void* sender, Action* action )
+    {
+      if (_catalog)
+      {
+        Action* foundAction = dynamic_cast<ToggleNodeAction*>(action);
+        if (foundAction)
+          _catalog->refreshAll();
+      }
+    }
+
+  private:
+    MapCatalogWidget* _catalog;
+  };
+} }
+
+//---------------------------------------------------------------------------
+MapCatalogWidget::MapCatalogWidget(DataManager* dm, unsigned int fields)
+  : _manager(dm), _fields(fields)
+{
+  if (_manager.valid())
+  {
+    _map = dm->map();
+    connect(_manager.get(), SIGNAL(mapChanged()), this, SLOT(onMapChanged()));
+
+    //if (_fields & ANNOTATIONS)
+      connect(_manager.get(), SIGNAL(selectionChanged(/*const AnnotationVector&*/)), this, SLOT(onSelectionChanged(/*const AnnotationVector&*/)));
+
+    _manager->addAfterActionCallback(new MapCatalogActionCallbackProxy(this));
+  }
+
+  initUi();
+}
+
+MapCatalogWidget::MapCatalogWidget(osgEarth::Map* map, unsigned int fields)
+  : _map(map), _fields(fields)
+{
+  initUi();
+}
+
+void MapCatalogWidget::setActiveView(osgViewer::View* view)
+{
+  _views.clear();
+  _views.push_back(view);
+}
+
+void MapCatalogWidget::setActiveViews(const ViewVector& views)
+{
+  _views.clear();
+  _views.insert(_views.end(), views.begin(), views.end());
+}
+
+void MapCatalogWidget::setHideEmptyGroups(bool hide)
+{
+  if (_hideEmptyGroups == hide)
+    return;
+
+  _hideEmptyGroups = hide;
+  refreshAll();
+}
+
+void MapCatalogWidget::initUi()
+{
+  _hideEmptyGroups = false;
+  _updating = false;
+
+  _tree = new QTreeWidget();
+  _tree->setColumnCount(1);
+  _tree->setHeaderHidden(true);
+  _tree->setSelectionMode(QAbstractItemView::ExtendedSelection);
+  _tree->setObjectName("oeFrameContainer");
+  connect(_tree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*, int)), this, SLOT(onTreeItemDoubleClicked(QTreeWidgetItem*, int)));
+  connect(_tree, SIGNAL(itemChanged(QTreeWidgetItem*, int)), this, SLOT(onTreeItemChanged(QTreeWidgetItem*, int)));
+  connect(_tree, SIGNAL(itemSelectionChanged()), this, SLOT(onTreeSelectionChanged()));
+
+  _elevationsItem = 0;
+  _imagesItem = 0;
+  _modelsItem = 0;
+  _annotationsItem = 0;
+  _masksItem = 0;
+  _viewpointsItem = 0;
+
+  QVBoxLayout *layout = new QVBoxLayout;
+  layout->setSpacing(2);
+  layout->setContentsMargins(3, 0, 3, 3);
+  layout->addWidget(_tree);
+  setLayout(layout);
+
+  refreshAll();
+}
+
+void MapCatalogWidget::onMapChanged()
+{
+  refreshAll();
+}
+
+void MapCatalogWidget::onSelectionChanged(/*const AnnotationVector& selection*/)
+{
+  if (_fields & ANNOTATIONS)
+    refreshAnnotations();
+}
+
+void MapCatalogWidget::onTreeItemDoubleClicked(QTreeWidgetItem* item, int col)
+{
+  if (!_manager.valid())
+    return;
+
+  ActionableTreeItem* actionable = dynamic_cast<ActionableTreeItem*>(item);
+  if (actionable)
+  {
+      Action* action = actionable->getDoubleClickAction(_views);
+      if (action)
+          _manager->doAction(this, action);
+  }
+}
+
+void MapCatalogWidget::onTreeItemChanged(QTreeWidgetItem* item, int col)
+{
+  if (!_manager.valid())
+    return;
+
+  ActionableTreeItem* actionable = dynamic_cast<ActionableTreeItem*>(item);
+  if (actionable)
+  {
+      Action* action = actionable->getCheckStateAction(_views);
+      if (action)
+          _manager->doAction(this, action);
+  }
+}
+
+
+void MapCatalogWidget::onTreeSelectionChanged()
+{
+  if (_fields & ANNOTATIONS && !_updating && _manager.valid())
+  {
+    AnnotationVector annos;
+
+    QList<QTreeWidgetItem*> items = _tree->selectedItems();
+    for (QList<QTreeWidgetItem*>::iterator it = items.begin(); it != items.end(); ++it)
+    {
+      AnnotationTreeItem* annoItem = dynamic_cast<AnnotationTreeItem*>(*it);
+      if (annoItem)
+        annos.push_back(annoItem->getAnnotation());
+    }
+
+    _manager->setSelectedAnnotations(annos);
+  }
+}
+
+
+void MapCatalogWidget::refreshAll()
+{
+  if (!_map)
+    return;
+
+  _updating = true;
+
+  refreshElevationLayers();
+  refreshImageLayers();
+  refreshModelLayers();
+  refreshMaskLayers();
+  refreshAnnotations();
+  refreshViewpoints();
+
+  _updating = false;
+}
+
+void MapCatalogWidget::refreshElevationLayers()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_fields & ELEVATION_LAYERS)
+  {
+    if (!_elevationsItem)
+    {
+      _elevationsItem = new QTreeWidgetItem();
+      //_elevationsItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _elevationsItem->setText(0, "Elevation Layers");
+	    _tree->addTopLevelItem(_elevationsItem);
+      _elevationsItem->setExpanded(true);
+    }
+
+    _elevationsItem->takeChildren();
+	  
+    osgEarth::ElevationLayerVector layers;
+    _map->getElevationLayers(layers);
+    for (osgEarth::ElevationLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+    {
+      LayerTreeItem* layerItem = new LayerTreeItem(*it, _map);
+      layerItem->setText(0, QString( (*it)->getName().c_str() ) );
+      //layerItem->setCheckState(0, (*it)->getVisible() ? Qt::Checked : Qt::Unchecked);
+			_elevationsItem->addChild(layerItem);
+    }
+
+    _elevationsItem->setHidden(_hideEmptyGroups && _elevationsItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
+
+void MapCatalogWidget::refreshImageLayers()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_fields & IMAGE_LAYERS)
+  {
+    if (!_imagesItem)
+    {
+      _imagesItem = new QTreeWidgetItem();
+      //_imagesItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _imagesItem->setText(0, "Image Layers");
+	    _tree->addTopLevelItem(_imagesItem);
+      _imagesItem->setExpanded(true);
+    }
+
+    _imagesItem->takeChildren();
+
+    osgEarth::ImageLayerVector layers;
+    _map->getImageLayers(layers);
+    for (osgEarth::ImageLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+    {
+      LayerTreeItem* layerItem = new LayerTreeItem(*it, _map);
+      layerItem->setText(0, QString( (*it)->getName().c_str() ) );
+			layerItem->setCheckState(0, (*it)->getVisible() ? Qt::Checked : Qt::Unchecked);
+			_imagesItem->addChild(layerItem);
+    }
+
+    _imagesItem->setHidden(_hideEmptyGroups && _imagesItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
+
+void MapCatalogWidget::refreshModelLayers()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_fields & MODEL_LAYERS)
+  {
+    if (!_modelsItem)
+    {
+      _modelsItem = new QTreeWidgetItem();
+      //_modelsItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _modelsItem->setText(0, "Model Layers");
+	    _tree->addTopLevelItem(_modelsItem);
+      _modelsItem->setExpanded(true);
+    }
+
+    _modelsItem->takeChildren();
+
+    osgEarth::ModelLayerVector layers;
+    _map->getModelLayers(layers);
+    for (osgEarth::ModelLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+    {
+      LayerTreeItem* layerItem = new LayerTreeItem(*it, _map);
+      layerItem->setText(0, QString( (*it)->getName().c_str() ) );
+			layerItem->setCheckState(0, (*it)->getVisible() ? Qt::Checked : Qt::Unchecked);
+			_modelsItem->addChild(layerItem);
+    }
+
+    _modelsItem->setHidden(_hideEmptyGroups && _modelsItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
+
+void MapCatalogWidget::refreshAnnotations()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_manager.valid() && (_fields & ANNOTATIONS))
+  {
+    if (!_annotationsItem)
+    {
+      _annotationsItem = new QTreeWidgetItem();
+      //_annotationsItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _annotationsItem->setText(0, "Annotations");
+	    _tree->addTopLevelItem(_annotationsItem);
+      _annotationsItem->setExpanded(true);
+    }
+
+    _annotationsItem->takeChildren();
+
+    AnnotationVector annos;
+    _manager->getAnnotations(annos);
+    for (AnnotationVector::const_iterator it = annos.begin(); it != annos.end(); ++it)
+    {
+      AnnotationTreeItem* annoItem = new AnnotationTreeItem(*it, _map);
+      annoItem->setText(0, QString(((*it)->getAnnotationData() ? (*it)->getAnnotationData()->getName().c_str() : "Annotation")));
+			annoItem->setCheckState(0, (*it)->getNodeMask() != 0 ? Qt::Checked : Qt::Unchecked);
+
+			_annotationsItem->addChild(annoItem);
+
+      if (_manager->isSelected(*it))
+        annoItem->setSelected(true);
+    }
+
+    _annotationsItem->setHidden(_hideEmptyGroups && _annotationsItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
+
+void MapCatalogWidget::refreshMaskLayers()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_fields & MASK_LAYERS)
+  {
+    if (!_masksItem)
+    {
+      _masksItem = new QTreeWidgetItem();
+      //_masksItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _masksItem->setText(0, "Mask Layers");
+	    _tree->addTopLevelItem(_masksItem);
+      _masksItem->setExpanded(true);
+    }
+
+    _masksItem->takeChildren();
+
+    osgEarth::MaskLayerVector layers;
+    _map->getTerrainMaskLayers(layers);
+    for (osgEarth::MaskLayerVector::const_iterator it = layers.begin(); it != layers.end(); ++it)
+    {
+      CustomActionTreeItem* layerItem = new CustomActionTreeItem(*it);
+      layerItem->setText(0, QString((*it)->getName().c_str()));
+			_masksItem->addChild(layerItem);
+    }
+
+    _masksItem->setHidden(_hideEmptyGroups && _masksItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
+
+void MapCatalogWidget::refreshViewpoints()
+{
+  bool wasUpdating = _updating;
+  _updating = true;
+
+  if (_manager.valid() && (_fields & VIEWPOINTS))
+  {
+    if (!_viewpointsItem)
+    {
+      _viewpointsItem = new QTreeWidgetItem();
+      //_viewpointsItem->setIcon(0, QIcon(":/resources/images/globe.png"));
+	    _viewpointsItem->setText(0, "Viewpoints");
+	    _tree->addTopLevelItem(_viewpointsItem);
+      _viewpointsItem->setExpanded(true);
+    }
+
+    _viewpointsItem->takeChildren();
+
+    std::vector<osgEarth::Viewpoint> viewpoints;
+    _manager->getViewpoints(viewpoints);
+    for (std::vector<osgEarth::Viewpoint>::const_iterator it = viewpoints.begin(); it != viewpoints.end(); ++it)
+    {
+      ViewpointTreeItem* vpItem = new ViewpointTreeItem(*it);
+      vpItem->setText(0, QString((*it).getName().c_str()));
+			_viewpointsItem->addChild(vpItem);
+    }
+
+    _viewpointsItem->setHidden(_hideEmptyGroups && _viewpointsItem->childCount() == 0);
+  }
+
+  _updating = wasUpdating;
+}
diff --git a/src/osgEarthQt/MultiViewerWidget b/src/osgEarthQt/MultiViewerWidget
new file mode 100644
index 0000000..e5cfaf7
--- /dev/null
+++ b/src/osgEarthQt/MultiViewerWidget
@@ -0,0 +1,57 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_COMPOSITEVIEWERWIDGET_H
+#define OSGEARTHQT_COMPOSITEVIEWERWIDGET_H 1
+
+#include <osgEarthQt/Common>
+
+#include <osgEarth/Map>
+
+#include <osgQt/GraphicsWindowQt>
+#include <osgViewer/CompositeViewer>
+
+#include <QtCore/QTimer>
+#include <QtGui/QWidget>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    /**
+     * A widget that uses a CompositeViewer and puts each View in its own panel of a layout 
+     */
+    class OSGEARTHQT_EXPORT MultiViewerWidget : public QWidget, public osgViewer::CompositeViewer
+    {
+    public:
+      MultiViewerWidget(osg::Node* scene=0L);
+      virtual ~MultiViewerWidget() { }
+
+      osgViewer::View* createViewWidget(osg::Node* scene=0L, osgViewer::View* shared=0L);
+      virtual void layoutWidgets();
+
+    protected:
+      QTimer _timer;
+
+      void initialize();
+      osg::Camera* createCamera(int x, int y, int width, int height, osg::GraphicsContext* shared=0L);
+      void paintEvent(QPaintEvent *);
+    };
+} }
+
+#endif // OSGEARTHQT_COMPOSITEVIEWERWIDGET_H
diff --git a/src/osgEarthQt/MultiViewerWidget.cpp b/src/osgEarthQt/MultiViewerWidget.cpp
new file mode 100644
index 0000000..79629e0
--- /dev/null
+++ b/src/osgEarthQt/MultiViewerWidget.cpp
@@ -0,0 +1,159 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/MultiViewerWidget>
+
+#include <osgEarthUtil/EarthManipulator>
+
+#include <osgGA/StateSetManipulator>
+#include <osgQt/GraphicsWindowQt>
+#include <osgViewer/ViewerBase>
+#include <osgViewer/ViewerEventHandlers>
+
+#include <QtCore/QTimer>
+#include <QtGui/QGridLayout>
+#include <QtGui/QWidget>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+
+MultiViewerWidget::MultiViewerWidget(osg::Node* scene)
+{
+  initialize();
+
+  connect(&_timer, SIGNAL(timeout()), this, SLOT(update()));
+  _timer.start(15);
+}
+
+void MultiViewerWidget::initialize()
+{
+  setThreadingModel(osgViewer::Viewer::SingleThreaded);
+}
+
+osgViewer::View* MultiViewerWidget::createViewWidget(osg::Node* scene, osgViewer::View* shared)
+{
+  osgViewer::View* view = new osgViewer::View();
+  view->setCamera(createCamera(0, 0, 100, 100, (shared ? shared->getCamera()->getGraphicsContext() : 0L)));
+  view->setCameraManipulator(new osgEarth::Util::EarthManipulator());
+
+  view->addEventHandler(new osgViewer::StatsHandler());
+  view->addEventHandler(new osgGA::StateSetManipulator());
+  view->addEventHandler(new osgViewer::ThreadingHandler());
+
+  if (scene)
+    view->setSceneData(scene);
+
+  addView(view);
+
+  layoutWidgets();
+
+  return view;
+}
+
+osg::Camera* MultiViewerWidget::createCamera(int x, int y, int width, int height, osg::GraphicsContext* shared)
+{
+  osg::DisplaySettings* ds = osg::DisplaySettings::instance().get();
+  osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits(ds);
+
+  traits->readDISPLAY();
+  if (traits->displayNum<0) traits->displayNum = 0;
+
+  traits->windowName = "";
+  traits->windowDecoration = false;
+  traits->x = x;
+  traits->y = y;
+  traits->width = width;
+  traits->height = height;
+  traits->doubleBuffer = true;
+  traits->sharedContext = shared;
+  //traits->inheritedWindowData = inherited;
+  //traits->alpha = ds->getMinimumNumAlphaBits();
+  //traits->stencil = ds->getMinimumNumStencilBits();
+  //traits->sampleBuffers = ds->getMultiSamples();
+  //traits->samples = ds->getNumMultiSamples();
+
+  //if (ds->getStereo())
+  //{
+  //  switch(ds->getStereoMode())
+  //  {
+  //  case(osg::DisplaySettings::QUAD_BUFFER): traits->quadBufferStereo = true; break;
+  //  case(osg::DisplaySettings::VERTICAL_INTERLACE):
+  //  case(osg::DisplaySettings::CHECKERBOARD):
+  //  case(osg::DisplaySettings::HORIZONTAL_INTERLACE): traits->stencil = 8; break;
+  //  default: break;
+  //  }
+  //}
+  
+  osg::ref_ptr<osg::Camera> camera = new osg::Camera;
+  camera->setGraphicsContext( new osgQt::GraphicsWindowQt(traits.get()) );
+
+  //camera->setClearColor( osg::Vec4(0.0, 0.0, 0.0, 1.0) );
+  camera->setViewport(new osg::Viewport(0, 0, traits->width, traits->height));
+  camera->setProjectionMatrixAsPerspective(30.0f, static_cast<double>(traits->width)/static_cast<double>(traits->height), 1.0f, 10000.0f );
+  
+  return camera.release();
+}
+
+void MultiViewerWidget::layoutWidgets()
+{
+  QGridLayout* grid = new QGridLayout;
+
+  osgViewer::ViewerBase::Windows windows;
+  getWindows(windows);
+
+  int viewCount = 0;
+  for (osgViewer::ViewerBase::Windows::iterator it = windows.begin(); it != windows.end(); ++it)
+  {
+    osgQt::GraphicsWindowQt* gw = dynamic_cast<osgQt::GraphicsWindowQt*>(*it);
+    if (gw)
+      viewCount++;
+  }
+  
+  int cols = (int)(ceil(sqrt((float)viewCount)));
+  int col = 0, row = 0;
+
+  for (osgViewer::ViewerBase::Windows::iterator it = windows.begin(); it != windows.end(); ++it)
+  {
+    osgQt::GraphicsWindowQt* gw = dynamic_cast<osgQt::GraphicsWindowQt*>(*it);
+    if (gw)
+    {
+      grid->addWidget(gw->getGLWidget(), row, col, 1, row * cols + col + 1 == viewCount ? cols - col : 1);
+      col++;
+
+      if (col == cols)
+      {
+        row++;
+        col = 0;
+      }
+    }
+  }
+
+  delete layout();
+  setLayout( grid );
+}
+
+
+void MultiViewerWidget::paintEvent(QPaintEvent* e)
+{
+    if ( getRunFrameScheme() == CONTINUOUS || checkNeedToDoFrame() )
+    {
+        frame();
+    }
+}
+
diff --git a/src/osgEarthQt/TerrainProfileGraph b/src/osgEarthQt/TerrainProfileGraph
new file mode 100644
index 0000000..242bdb7
--- /dev/null
+++ b/src/osgEarthQt/TerrainProfileGraph
@@ -0,0 +1,131 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_TERRAINPROFILEGRAPH_H
+#define OSGEARTHQT_TERRAINPROFILEGRAPH_H 1
+
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+
+#include <osgEarth/Map>
+#include <osgEarthUtil/TerrainProfile>
+
+#include <QGraphicsLineItem>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+#include <QLineF>
+#include <QList>
+#include <QMouseEvent>
+#include <QRect>
+#include <QResizeEvent>
+
+
+namespace osgEarth { namespace QtGui
+{
+    using namespace osgEarth::Util;
+
+
+    struct TerrainProfilePositionCallback : public osg::Referenced
+    {
+      virtual void updatePosition(double lat, double lon, const std::string& text) { }
+      virtual ~TerrainProfilePositionCallback() { }
+    };
+
+
+    /** 
+     * Graphics widget that displays the results of an osgEarth::Util::TerrainProfile
+     * calculation.
+     */
+    class OSGEARTHQT_EXPORT TerrainProfileGraph : public QGraphicsView
+    {
+    Q_OBJECT
+
+    public:
+      TerrainProfileGraph(osgEarth::Util::TerrainProfileCalculator* calculator, TerrainProfilePositionCallback* callback=0L);
+
+      virtual ~TerrainProfileGraph();
+
+      void setBackgroundColor(const QColor& color);
+      const QColor& getBackgroundColor() { return _backgroundColor; }
+
+      void setFieldColor(const QColor& color);
+      const QColor& getFieldColor() { return _fieldColor; }
+
+      void setAxesColor(const QColor& color);
+      const QColor& getAxesColor() { return _axesColor; }
+
+      void setGraphColor(const QColor& color);
+      const QColor& getGraphColor() { return _graphColor; }
+
+      void setGraphFillColor(const QColor& color);
+      const QColor& getGraphFillColor() { return _graphFillColor; }
+
+      void notifyTerrainGraphChanged() { emit onNotifyTerrainGraphChanged(); }
+
+    signals:
+      void onNotifyTerrainGraphChanged();
+
+    protected:
+      static const int FIELD_Z;
+      static const int AXES_Z;
+      static const int GRAPH_Z;
+      static const int OVERLAY_Z;
+
+      void resizeEvent(QResizeEvent* e);
+      void mouseMoveEvent(QMouseEvent* e);
+      void mousePressEvent(QMouseEvent* e);
+      void mouseReleaseEvent(QMouseEvent* e);
+
+      void redrawGraph();
+      void drawAxes(double yMin, double yMax, double yScale, double xMax, QRect &out_field);
+      void drawHoverCursor(const QPointF& position);
+      void drawSelectionBox(double position);
+
+    private slots:
+      void onTerrainGraphChanged();
+
+    private:
+      osg::ref_ptr<osgEarth::Util::TerrainProfileCalculator> _calculator;
+      osg::ref_ptr<TerrainProfilePositionCallback> _positionCallback;
+      osg::ref_ptr<TerrainProfileCalculator::ChangedCallback> _graphChangedCallback;
+      QGraphicsScene* _scene;
+      QList<QLineF> _graphLines;
+      QGraphicsLineItem* _hoverLine;
+      QPen _linePen;
+      QPen _hoverPen;
+      QPen _axesPen;
+      QFont _graphFont;
+      QColor _backgroundColor;
+      QColor _fieldColor;
+      QColor _axesColor;
+      QColor _graphColor;
+      QColor _graphFillColor;
+      QRect _graphField;
+      double _totalDistance;
+      int _graphMinY;
+      int _graphMaxY;
+      int _graphWidth;
+      int _graphHeight;
+      bool _selecting;
+      double _selectStart;
+      double _selectEnd;
+    };
+} }
+
+#endif // OSGEARTHQT_TERRAINPROFILEGRAPH_H
diff --git a/src/osgEarthQt/TerrainProfileGraph.cpp b/src/osgEarthQt/TerrainProfileGraph.cpp
new file mode 100644
index 0000000..54ebf16
--- /dev/null
+++ b/src/osgEarthQt/TerrainProfileGraph.cpp
@@ -0,0 +1,492 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/TerrainProfileGraph>
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/GuiActions>
+
+#include <osgEarthUtil/TerrainProfile>
+
+#include <QGraphicsLineItem>
+#include <QGraphicsRectItem>
+#include <QGraphicsScene>
+#include <QGraphicsSimpleTextItem>
+#include <QGraphicsView>
+#include <QLineF>
+#include <QList>
+#include <QMouseEvent>
+#include <QPointF>
+#include <QPolygonF>
+#include <QRect>
+#include <QResizeEvent>
+#include <QToolTip>
+
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::QtGui;
+
+//---------------------------------------------------------------------------
+namespace
+{
+  class BoxedSimpleTextItem : public QGraphicsSimpleTextItem
+  {
+  public:
+    BoxedSimpleTextItem(const QString & text, const QColor& background, QGraphicsItem * parent = 0)
+      : QGraphicsSimpleTextItem(text, parent), _backgroundColor(background)
+    {
+    }
+
+  protected:
+    void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
+    {
+      painter->setPen(QPen(Qt::NoPen));
+      painter->setBrush(QBrush(_backgroundColor));
+      painter->drawRect(0, 0, sceneBoundingRect().width(), sceneBoundingRect().height());
+
+      QGraphicsSimpleTextItem::paint(painter, option, widget);
+    }
+
+    QColor _backgroundColor;
+  };
+
+
+
+    struct TerrainGraphChangedShim : public TerrainProfileCalculator::ChangedCallback
+    {
+        TerrainGraphChangedShim( TerrainProfileGraph* graph ) : _graph( graph ) { }
+        void onChanged(const TerrainProfileCalculator* ) { _graph->notifyTerrainGraphChanged(); }
+        TerrainProfileGraph* _graph;
+    };
+}
+
+//---------------------------------------------------------------------------
+
+const int TerrainProfileGraph::FIELD_Z = 0;
+const int TerrainProfileGraph::AXES_Z = 10;
+const int TerrainProfileGraph::GRAPH_Z = 20;
+const int TerrainProfileGraph::OVERLAY_Z = 30;
+
+
+TerrainProfileGraph::TerrainProfileGraph(TerrainProfileCalculator* calculator, TerrainProfilePositionCallback* callback)
+  : QGraphicsView(), _calculator(calculator), _positionCallback(callback), _graphFont(tr("Helvetica,Verdana,Arial"), 8),
+    _backgroundColor(128, 128, 128), _fieldColor(204, 204, 204), _axesColor(255, 255, 255), 
+    _graphColor(0, 128, 0), _graphFillColor(128, 255, 128, 192), _graphField(0, 0, 0, 0),
+    _totalDistance(0.0), _graphMinY(0), _graphMaxY(0), _graphWidth(500), _graphHeight(309),
+    _selecting(false)
+{
+  setMouseTracking(true);
+
+  _graphFont.setStyleHint(QFont::SansSerif);
+
+  _linePen.setWidth(2);
+  _linePen.setBrush(QBrush(_graphColor));
+
+  _hoverPen.setWidth(1);
+  _hoverPen.setBrush(QBrush(_graphColor));
+
+  _axesPen.setWidth(1);
+  _axesPen.setBrush(QBrush(_axesColor));
+
+  _scene = new QGraphicsScene(0, 0, _graphWidth, _graphHeight);
+  _scene->setBackgroundBrush(QBrush(_backgroundColor));
+  setScene(_scene);
+  
+  redrawGraph();
+
+  _graphChangedCallback = new TerrainGraphChangedShim(this);
+  connect(this, SIGNAL(onNotifyTerrainGraphChanged()), this, SLOT(onTerrainGraphChanged()), Qt::QueuedConnection);
+  //connect(_graphChangedCallback, SIGNAL(graphChanged()), this, SLOT(onGraphChanged()), Qt::QueuedConnection);
+  if (_calculator.valid())
+    _calculator->addChangedCallback(_graphChangedCallback);
+}
+
+TerrainProfileGraph::~TerrainProfileGraph()
+{
+    // removed: unnecessary now, since the callback is an observer list
+  //if (_calculator.valid())
+  //  _calculator->removeChangedCallback(_graphChangedCallback);
+}
+
+void TerrainProfileGraph::setBackgroundColor(const QColor& color)
+{
+  _backgroundColor = color;
+  _scene->setBackgroundBrush(QBrush(_backgroundColor));
+  redrawGraph();
+}
+
+void TerrainProfileGraph::setFieldColor(const QColor& color)
+{
+  _fieldColor = color;
+  redrawGraph();
+}
+
+void TerrainProfileGraph::setAxesColor(const QColor& color)
+{
+  _axesColor = color;
+  _axesPen.setBrush(QBrush(_axesColor));
+  redrawGraph();
+}
+
+void TerrainProfileGraph::setGraphColor(const QColor& color)
+{
+  _graphColor = color;
+  _linePen.setBrush(QBrush(_graphColor));
+  _hoverPen.setBrush(QBrush(_graphColor));
+  redrawGraph();
+}
+
+void TerrainProfileGraph::setGraphFillColor(const QColor& color)
+{
+  _graphFillColor = color;
+  redrawGraph();
+}
+
+void TerrainProfileGraph::resizeEvent(QResizeEvent* e)
+{
+  _graphWidth = e->size().width() - 20;
+  _graphHeight = e->size().height() - 20;
+  _scene->setSceneRect(0, 0, _graphWidth, _graphHeight);
+  redrawGraph();
+
+  QGraphicsView::resizeEvent(e);
+}
+
+void TerrainProfileGraph::mouseMoveEvent(QMouseEvent* e)
+{
+  drawHoverCursor(mapToScene(e->pos()));
+  QGraphicsView::mouseMoveEvent(e);
+}
+
+void TerrainProfileGraph::mousePressEvent(QMouseEvent* e)
+{
+  _selectStart = mapToScene(e->pos()).x();
+  _selecting = true;
+}
+
+void TerrainProfileGraph::mouseReleaseEvent(QMouseEvent* e)
+{
+  if (_selecting)
+  {
+    double selectEnd = mapToScene(e->pos()).x();
+
+    double zoomStart = osg::minimum(_selectStart, selectEnd);
+    double zoomEnd = osg::maximum(_selectStart, selectEnd);
+
+    double startDistanceFactor = ((zoomStart - _graphField.x()) / (double)_graphField.width());
+    double endDistanceFactor = ((zoomEnd - _graphField.x()) / (double)_graphField.width());
+
+    osg::Vec3d worldStart, worldEnd;
+    _calculator->getStart().toWorld(worldStart);
+    _calculator->getEnd().toWorld(worldEnd);
+
+    double newStartWorldX = (worldEnd.x() - worldStart.x()) * startDistanceFactor + worldStart.x();
+    double newStartWorldY = (worldEnd.y() - worldStart.y()) * startDistanceFactor + worldStart.y();
+    double newStartWorldZ = (worldEnd.z() - worldStart.z()) * startDistanceFactor + worldStart.z();
+
+    GeoPoint newStart;
+    newStart.fromWorld(_calculator->getStart().getSRS(), osg::Vec3d(newStartWorldX, newStartWorldY, newStartWorldZ));
+    newStart.z() = 0.0;
+
+    double newEndWorldX = (worldEnd.x() - worldStart.x()) * endDistanceFactor + worldStart.x();
+    double newEndWorldY = (worldEnd.y() - worldStart.y()) * endDistanceFactor + worldStart.y();
+    double newEndtWorldZ = (worldEnd.z() - worldStart.z()) * endDistanceFactor + worldStart.z();
+
+    GeoPoint newEnd;
+    newEnd.fromWorld(_calculator->getStart().getSRS(), osg::Vec3d(newEndWorldX, newEndWorldY, newEndtWorldZ));
+    newEnd.z() = 0.0;
+
+    if (osg::absolute(newEnd.x() - newStart.x()) > 0.001 || osg::absolute(newEnd.y() - newStart.y()) > 0.001)
+    {
+      _calculator->setStartEnd(newStart, newEnd);
+    }
+    else
+    {
+      _selecting = false;
+      drawHoverCursor(mapToScene(e->pos()));
+    }
+  }
+
+  _selecting = false;
+}
+
+void TerrainProfileGraph::redrawGraph()
+{
+  _scene->clear();
+  _graphLines.clear();
+  _graphField.setCoords(0, 0, 0, 0);
+  _hoverLine = 0L;
+
+  const osgEarth::Util::TerrainProfile profile = _calculator->getProfile();
+  if (profile.getNumElevations() > 0)
+  {
+    double minElevation, maxElevation;
+    profile.getElevationRanges( minElevation, maxElevation );
+    _totalDistance = profile.getTotalDistance();
+
+    int mag = (int)pow(10.0, (double)((int)log10(maxElevation - minElevation)));
+    _graphMinY = ((int)(minElevation / mag) - (minElevation < 0 ? 1 : 0)) * mag;
+    _graphMaxY = ((int)(maxElevation / mag) + (maxElevation < 0 ? 0 : 1)) * mag;
+
+    int graphRangeY = _graphMaxY - _graphMinY;
+    double scale = (double)graphRangeY / 10.0;
+
+    drawAxes(_graphMinY, _graphMaxY, scale, _totalDistance, _graphField);
+
+    double lastX = _graphField.x();
+    double lastY = (1.0 - ((profile.getElevation(0) - _graphMinY) / graphRangeY)) * _graphField.height() + _graphField.y();
+
+    QPolygonF graphPoly;
+    graphPoly << QPointF(_graphField.x(), _graphField.y() + _graphField.height());
+    graphPoly << QPointF(lastX, lastY);
+
+    for (unsigned int i = 0; i < profile.getNumElevations(); i++)
+    {
+      double distance = profile.getDistance( i );
+      double elevation = profile.getElevation( i );
+
+      double x = (distance / _totalDistance) * _graphField.width() + _graphField.x();
+      double y = (1.0 - ((elevation - _graphMinY) / graphRangeY)) * _graphField.height() + _graphField.y();
+
+      graphPoly << QPointF(x, y);
+
+      QLineF line(lastX, lastY, x, y);
+      _graphLines.push_back(line);
+      _scene->addLine(line, _linePen)->setZValue(GRAPH_Z);
+
+      lastX = x;
+      lastY = y;
+    }
+
+    // Add gradient polygon beneath the graph line
+    graphPoly << QPointF(_graphField.x() + _graphField.width(), _graphField.y() + _graphField.height());
+    QLinearGradient polyGrad(0, 0, 0, (_graphField.y() + _graphField.height()) * 1.25);
+    polyGrad.setColorAt(0, _graphFillColor);
+    polyGrad.setColorAt(1, QColor(255, 255, 255, 0));
+    polyGrad.setSpread(QGradient::PadSpread);
+    _scene->addPolygon(graphPoly, QPen(Qt::NoPen), QBrush(polyGrad))->setZValue(GRAPH_Z - 1);
+  }
+}
+
+void TerrainProfileGraph::drawAxes(double yMin, double yMax, double yScale, double xMax, QRect &out_field)
+{
+  QBrush axesBrush(_axesColor);
+
+  // Create min/max text items
+  QGraphicsSimpleTextItem* yMinText = new QGraphicsSimpleTextItem(QString::number(yMin));
+  yMinText->setBrush(axesBrush);
+  yMinText->setFont(_graphFont);
+
+  QGraphicsSimpleTextItem* yMaxText = new QGraphicsSimpleTextItem(QString::number(yMax));
+  yMaxText->setBrush(axesBrush);
+  yMaxText->setFont(_graphFont);
+
+  QGraphicsSimpleTextItem* xMaxText = new QGraphicsSimpleTextItem(QString::number(xMax));
+  xMaxText->setBrush(axesBrush);
+  xMaxText->setFont(_graphFont);
+
+
+  // Calculate positioning offsets and set out_field to actual graph bounds
+  double fontHalfHeight = yMinText->boundingRect().height() / 2.0;
+
+  int textSpacing = 8;
+  int xOffset = (int)osg::maximum(yMinText->boundingRect().width(), yMaxText->boundingRect().width()) + textSpacing;
+  int yOffset = (int)xMaxText->boundingRect().height() + textSpacing;
+  int xAxisY = _graphHeight - yOffset;
+
+  out_field.setCoords(xOffset, (int)fontHalfHeight, _graphWidth, xAxisY);
+
+
+  // Draw background rectangle
+  _scene->addRect(out_field, QPen(Qt::NoPen), QBrush(_fieldColor))->setZValue(FIELD_Z);
+
+
+  // Add min/max text items to the scene
+  yMinText->setPos(xOffset - textSpacing - yMinText->boundingRect().width(), xAxisY - fontHalfHeight);
+  yMinText->setZValue(AXES_Z);
+  _scene->addItem(yMinText);
+
+  yMaxText->setPos(xOffset - textSpacing - yMaxText->boundingRect().width(), 0);
+  yMaxText->setZValue(AXES_Z);
+  _scene->addItem(yMaxText);
+
+  xMaxText->setPos(_graphWidth - xMaxText->boundingRect().width(), _graphHeight - xMaxText->boundingRect().height());
+  xMaxText->setZValue(AXES_Z);
+  _scene->addItem(xMaxText);
+
+
+  // Draw the main axes and x-axis end cap
+  _scene->addLine(xOffset, fontHalfHeight, xOffset, xAxisY + 5, _axesPen)->setZValue(AXES_Z);
+  _scene->addLine(xOffset - 5, xAxisY, _graphWidth, xAxisY, _axesPen)->setZValue(AXES_Z);
+  _scene->addLine(_graphWidth, xAxisY - 5, _graphWidth, xAxisY + 5, _axesPen)->setZValue(AXES_Z);
+
+  // Draw horizontal graph lines
+  double yGraphScale = (yScale / (yMax - yMin)) * out_field.height();
+  double graphLineY = xAxisY - yGraphScale;
+  for (double y = yMin + yScale; y <= yMax; y += yScale)
+  {
+    _scene->addLine(xOffset - 5, graphLineY, _graphWidth, graphLineY, _axesPen)->setZValue(AXES_Z);;
+
+    if (y != yMax)
+    {
+      QGraphicsSimpleTextItem* yText = new QGraphicsSimpleTextItem(QString::number(y));
+      yText->setBrush(axesBrush);
+      yText->setFont(_graphFont);
+      yText->setPos(xOffset - textSpacing - yText->boundingRect().width(), graphLineY - fontHalfHeight);
+      yText->setZValue(AXES_Z);
+      _scene->addItem(yText);
+    }
+
+    graphLineY -= yGraphScale;
+  }
+}
+
+void TerrainProfileGraph::drawHoverCursor(const QPointF& position)
+{
+  if (_hoverLine)
+  {
+    _scene->removeItem(_hoverLine);
+    delete _hoverLine;
+    _hoverLine = 0L;
+  }
+
+  if (_graphField.width() < 2 || _graphField.height() < 2)
+    return;
+
+  double xPos = position.x() < _graphField.x() ? _graphField.x() : (position.x() > _graphField.x() + _graphField.width() ? _graphField.x() + _graphField.width() : position.x());
+
+  QLineF vLine(xPos, _graphField.y(), xPos, _graphField.y() + _graphField.height());
+
+  QPointF* intersect = new QPointF;
+  bool foundIntersect = false;
+  for (int i=0; i < _graphLines.count(); i++)
+  {
+    if (vLine.intersect(_graphLines[i], intersect) == QLineF::BoundedIntersection)
+    {
+      foundIntersect = true;
+      break;
+    }
+  }
+
+  if (foundIntersect)
+  {
+    // Draw the upper line segment.  Also serves as the parent item.
+    _hoverLine = new QGraphicsLineItem(xPos, _graphField.y(), xPos, intersect->y() - 3);
+    _hoverLine->setPen(_hoverPen);
+    _hoverLine->setZValue(OVERLAY_Z);
+    _scene->addItem(_hoverLine);
+
+    // Draw the box around the intersect point
+    QGraphicsRectItem* hoverBox = new QGraphicsRectItem(xPos - 3, intersect->y() - 3, 6, 6);
+    hoverBox->setPen(_hoverPen);
+    hoverBox->setBrush(Qt::NoBrush);
+    hoverBox->setZValue(OVERLAY_Z);
+    hoverBox->setParentItem(_hoverLine);
+
+    // Draw the lower line segment
+    QGraphicsLineItem* lowerLine = new QGraphicsLineItem(xPos, intersect->y() + 3, xPos, _graphField.y() + _graphField.height() + 5);
+    lowerLine->setPen(_hoverPen);
+    lowerLine->setZValue(OVERLAY_Z);
+    lowerLine->setParentItem(_hoverLine);
+
+    // Draw the text and background
+    double y = (1.0 - ((intersect->y() - _graphField.y()) / _graphField.height())) * (_graphMaxY - _graphMinY) + _graphMinY;
+    int textOffset = 10;
+
+    QGraphicsSimpleTextItem* hoverText = new QGraphicsSimpleTextItem(QString::number(y) + tr("m"));
+    hoverText->setBrush(QBrush(_axesColor));
+    hoverText->setFont(_graphFont);
+    hoverText->setZValue(OVERLAY_Z);
+
+    if (intersect->x() + textOffset + hoverText->boundingRect().width() < _graphField.x() + _graphField.width())
+      hoverText->setPos(intersect->x() + textOffset, intersect->y() - hoverText->boundingRect().height());
+    else
+      hoverText->setPos(intersect->x() - textOffset - hoverText->boundingRect().width(), intersect->y() - hoverText->boundingRect().height());
+
+    QGraphicsRectItem* hoverTextBackground = new QGraphicsRectItem(hoverText->x() - 3, hoverText->y() - 1, 
+                                                                   hoverText->boundingRect().width() + 6,
+                                                                   hoverText->boundingRect().height() + 1);
+    hoverTextBackground->setPen(_axesPen);
+    hoverTextBackground->setBrush(QBrush(_graphColor));
+    hoverTextBackground->setZValue(OVERLAY_Z);
+    hoverTextBackground->setParentItem(_hoverLine);
+
+    hoverText->setParentItem(_hoverLine);
+
+    // Update callback
+    if (_positionCallback.valid())
+    {
+      double distanceFactor = ((xPos - _graphField.x()) / (double)_graphField.width());
+
+      osg::Vec3d worldStart, worldEnd;
+      _calculator->getStart().toWorld(worldStart);
+      _calculator->getEnd().toWorld(worldEnd);
+
+      double worldX = (worldEnd.x() - worldStart.x()) * distanceFactor + worldStart.x();
+      double worldY = (worldEnd.y() - worldStart.y()) * distanceFactor + worldStart.y();
+      double worldZ = (worldEnd.z() - worldStart.z()) * distanceFactor + worldStart.z();
+
+      GeoPoint mapPos;
+      mapPos.fromWorld(_calculator->getStart().getSRS(), osg::Vec3d(worldX, worldY, worldZ));
+
+      _positionCallback->updatePosition(mapPos.y(), mapPos.x(), hoverText->text().toStdString());
+    }
+  }
+  else
+  {
+    // No intersect found so just draw the full line at xPos
+    _hoverLine = new QGraphicsLineItem(xPos, _graphField.y(), xPos, _graphField.y() + _graphField.height() + 5);
+    _hoverLine->setPen(_hoverPen);
+    _hoverLine->setZValue(OVERLAY_Z);
+    _scene->addItem(_hoverLine);
+  }
+
+  // Draw distance text
+  double x = ((xPos - _graphField.x()) / _graphField.width()) * _totalDistance;
+
+  BoxedSimpleTextItem* distanceText = new BoxedSimpleTextItem(QString::number(x / 1000.0, 'f', 2) + tr("km"), _backgroundColor);
+  distanceText->setBrush(QBrush(_axesColor));
+  distanceText->setFont(_graphFont);
+  distanceText->setZValue(OVERLAY_Z);
+  distanceText->setPos(xPos - 2 - distanceText->boundingRect().width(), _graphField.y() + _graphField.height() + 2);
+  distanceText->setParentItem(_hoverLine);
+
+  // Draw selection box
+  drawSelectionBox(xPos);
+
+  delete intersect;
+}
+
+void TerrainProfileGraph::drawSelectionBox(double position)
+{
+  if (_selecting && _selectStart != position)
+  {
+    double selectionMin = osg::minimum(_selectStart, position);
+    double selectionMax = osg::maximum(_selectStart, position);
+    QGraphicsRectItem* selectionBox = new QGraphicsRectItem(selectionMin, _graphField.y(), selectionMax - selectionMin, _graphField.height());
+    selectionBox->setPen(QPen(Qt::NoPen));
+    selectionBox->setBrush(QBrush(QColor(0, 0, 0, 64)));
+    selectionBox->setZValue(OVERLAY_Z);
+    selectionBox->setParentItem(_hoverLine);
+  }
+}
+
+void TerrainProfileGraph::onTerrainGraphChanged()
+{
+  redrawGraph();
+}
diff --git a/src/osgEarthQt/TerrainProfileWidget b/src/osgEarthQt/TerrainProfileWidget
new file mode 100644
index 0000000..e249476
--- /dev/null
+++ b/src/osgEarthQt/TerrainProfileWidget
@@ -0,0 +1,254 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_TERRAINPROFILEWIDGET_H
+#define OSGEARTHQT_TERRAINPROFILEWIDGET_H 1
+
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/Common>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/TerrainProfileGraph>
+
+#include <osgEarth/Map>
+#include <osgEarthAnnotation/FeatureNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthFeatures/Feature>
+
+#include <QFrame>
+#include <QHBoxLayout>
+#include <QPushButton>
+#include <QVBoxLayout>
+#include <QWidget>
+
+namespace osgEarth { namespace QtGui
+{
+    /**
+     * Widget that displays a TerrainProfileGraph and provides interactive
+     * query and zoom controls.
+     */     
+    class OSGEARTHQT_EXPORT TerrainProfileWidget : public QFrame
+    {
+    Q_OBJECT
+
+    public:
+      TerrainProfileWidget(osg::Group* root, osgEarth::MapNode* mapNode);
+
+      virtual ~TerrainProfileWidget();
+
+      void setActiveView(osgViewer::View* view);
+
+      void setActiveViews(const ViewVector& views);
+
+      void setStartEnd(const GeoPoint& start, const GeoPoint& end);
+
+      void updatePosition(double lat, double lon, const std::string& text);
+
+    public:
+      void notifyTerrainProfileChanged() { emit onNotifyTerrainProfileChanged(); }
+
+    signals:
+        void onNotifyTerrainProfileChanged();
+
+    private slots:
+      void onCaptureToggled(bool checked);
+      void onUndoZoom();
+      void onTerrainProfileChanged();
+
+    protected:  
+      void initialize();
+      void addView(osgViewer::View* view);
+      void removeViews();
+      void refreshViews();
+      void hideEvent(QHideEvent* e);
+      void showEvent(QShowEvent* e);
+
+    private:
+
+      struct StartEndPair
+      {
+        GeoPoint start;
+        GeoPoint end;
+
+        StartEndPair(GeoPoint profileStart, GeoPoint profileEnd)
+        {
+          start = profileStart;
+          end = profileEnd;
+        }
+      };
+
+      void drawProfileLine();
+
+      osg::ref_ptr<osg::Group>                                _root;
+      osg::ref_ptr<osgEarth::MapNode>                         _mapNode;
+      ViewVector                                              _views;
+      osg::ref_ptr<osgEarth::Util::TerrainProfileCalculator>  _calculator;
+      TerrainProfileGraph*                                    _graph;
+      QAction*                                                _captureAction;
+      QAction*                                                _undoZoomAction;
+      osg::ref_ptr<osgGA::GUIEventHandler>                    _guiHandler;
+      std::vector<StartEndPair>                               _profileStack;
+      osg::ref_ptr<osgEarth::Annotation::FeatureNode>         _lineNode;
+      osgEarth::Symbology::Style                              _lineStyle;
+      osg::ref_ptr<osgEarth::Annotation::PlaceNode>           _markerNode;
+      osg::ref_ptr<osg::Image>                                _markerImage;
+      osgEarth::Symbology::Style                              _placeStyle;
+    };
+
+
+    /**
+     * Event handler for entering a new terrain profile line.
+     */
+    struct TerrainProfileMouseHandler : public osgGA::GUIEventHandler
+    {
+      TerrainProfileMouseHandler(osgEarth::MapNode* mapNode, osg::Group* root, TerrainProfileWidget* profileWidget)
+        : _mapNode(mapNode), _root(root), _profileWidget(profileWidget), _capturing(false), _startValid(false), _mouseDown(false)
+      {
+        //Define a style for the line
+        osgEarth::Symbology::LineSymbol* ls = _lineStyle.getOrCreateSymbol<osgEarth::Symbology::LineSymbol>();
+        ls->stroke()->color() = osgEarth::Symbology::Color::Yellow;
+        ls->stroke()->width() = 2.0f;
+        ls->tessellation() = 20;
+        _lineStyle.getOrCreate<osgEarth::Symbology::AltitudeSymbol>()->clamping() = osgEarth::Symbology::AltitudeSymbol::CLAMP_TO_TERRAIN;
+      }
+
+      void setCapturing(bool capturing)
+      {
+        _capturing = capturing;
+      }
+
+      bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+      {
+        if (_capturing)
+        {
+          if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH )
+          {
+            if (ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+            {
+              _mouseDown = true;
+              _xDown = ea.getX();
+              _yDown = ea.getY();
+              aa.requestRedraw();
+            }
+          }
+          else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
+          {
+            if (ea.getButton() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+            {
+              if (_mouseDown && _xDown == ea.getX() && _yDown == ea.getY())
+              {
+                osg::Vec3d world;
+                if ( _mapNode->getTerrain()->getWorldCoordsUnderMouse( aa.asView(), ea.getX(), ea.getY(), world ))
+                {
+                  osgEarth::GeoPoint mapPoint;
+                  mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+                  //_mapNode->getMap()->worldPointToMapPoint( world, mapPoint );
+
+                  if (!_startValid)
+                  {
+                    _start = mapPoint.vec3d();
+                    _end = mapPoint.vec3d();
+                    _startValid = true;
+                  }
+                  else
+                  {
+                    _end = mapPoint.vec3d();
+                    _startValid = false;
+
+                    _profileWidget->setStartEnd(GeoPoint(_mapNode->getMapSRS(), _start.x(), _start.y()),
+                                                GeoPoint(_mapNode->getMapSRS(), _end.x(), _end.y()));
+                  }
+
+                  updateDisplay();
+                }
+              }
+
+              _mouseDown = false;
+              aa.requestRedraw();
+            }
+          }
+          else if (ea.getEventType() == osgGA::GUIEventAdapter::MOVE)
+          {
+            if (_startValid)
+            {
+              osg::Vec3d world;
+              if (_mapNode->getTerrain()->getWorldCoordsUnderMouse(aa.asView(), ea.getX(), ea.getY(), world))
+              {
+                osgEarth::GeoPoint mapPoint;
+                mapPoint.fromWorld( _mapNode->getMapSRS(), world );
+                //_mapNode->getMap()->worldPointToMapPoint( world, mapPoint );
+                _end = mapPoint.vec3d();
+
+                updateDisplay();
+                aa.requestRedraw();
+              }
+            }
+          }
+        }
+
+        return false;
+      }
+
+      void updateDisplay()
+      {
+        if (!_startValid)
+        {
+          if (_featureNode.valid())
+          {
+            _root->removeChild( _featureNode.get() );
+            _featureNode = 0L;
+          }
+
+          return;
+        }
+
+        osgEarth::Symbology::LineString* line = new osgEarth::Symbology::LineString();
+        line->push_back( _start );
+        line->push_back( _end );
+
+        osgEarth::Features::Feature* feature = new osgEarth::Features::Feature(line, _mapNode->getMapSRS());
+        feature->geoInterp() = osgEarth::GEOINTERP_GREAT_CIRCLE;    
+        feature->style() = _lineStyle;
+
+        if (!_featureNode.valid())
+        {
+          _featureNode = new osgEarth::Annotation::FeatureNode( _mapNode, feature );
+          _featureNode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+          _root->addChild( _featureNode.get() );
+        }
+        else
+        {
+          _featureNode->setFeature(feature);
+        }
+      }
+
+      
+      osg::ref_ptr<osgEarth::MapNode>  _mapNode;
+      osg::Group* _root;
+      TerrainProfileWidget* _profileWidget;
+      osg::ref_ptr<osgEarth::Annotation::FeatureNode> _featureNode;
+      osgEarth::Symbology::Style _lineStyle;
+      osg::Vec3d _start;
+      osg::Vec3d _end;
+      bool _capturing;
+      bool _startValid;
+      bool _mouseDown;
+      float _xDown, _yDown;
+    };
+} }
+
+#endif // OSGEARTHQT_TERRAINPROFILEWIDGET_H
diff --git a/src/osgEarthQt/TerrainProfileWidget.cpp b/src/osgEarthQt/TerrainProfileWidget.cpp
new file mode 100644
index 0000000..ac78b4d
--- /dev/null
+++ b/src/osgEarthQt/TerrainProfileWidget.cpp
@@ -0,0 +1,288 @@
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/TerrainProfileWidget>
+#include <osgEarthQt/Actions>
+#include <osgEarthQt/DataManager>
+#include <osgEarthQt/GuiActions>
+#include <osgEarthQt/TerrainProfileGraph>
+
+#include <osgEarth/Map>
+#include <osgEarthAnnotation/AnnotationNode>
+#include <osgEarthAnnotation/PlaceNode>
+#include <osgEarthUtil/TerrainProfile>
+
+#include <QAction>
+#include <QFrame>
+#include <QGLWidget>
+#include <QHBoxLayout>
+#include <QPushButton>
+#include <QToolBar>
+#include <QVBoxLayout>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::QtGui;
+
+
+//---------------------------------------------------------------------------
+
+
+namespace
+{
+    // Shim to connect the profile calc to the widget
+    struct ProfileChangedShim : public TerrainProfileCalculator::ChangedCallback
+    {
+        ProfileChangedShim(TerrainProfileWidget* widget) : _widget(widget) { }
+        void onChanged(const TerrainProfileCalculator* ) { _widget->notifyTerrainProfileChanged(); }
+        TerrainProfileWidget* _widget;
+    };
+
+    // Shim to connect the position detector to the widget
+    struct UpdatePositionShim : public TerrainProfilePositionCallback
+    {
+        UpdatePositionShim(TerrainProfileWidget* widget) : _widget(widget) { }
+        void updatePosition(double lat, double lon, const std::string& text) {
+            _widget->updatePosition(lat, lon, text);
+        }
+        TerrainProfileWidget* _widget;
+    };
+}
+
+
+//---------------------------------------------------------------------------
+
+TerrainProfileWidget::TerrainProfileWidget(osg::Group* root, osgEarth::MapNode* mapNode)
+: _root(root), _mapNode(mapNode)
+{
+  _calculator = new osgEarth::Util::TerrainProfileCalculator(mapNode);
+  _guiHandler = new TerrainProfileMouseHandler(_mapNode.get(), _root.get(), this);
+
+  initialize();
+
+  // listen for profile changes and marshall to the UI thread to update the graph.
+  _calculator->addChangedCallback( new ProfileChangedShim(this) );
+  connect( this, SIGNAL(onNotifyTerrainProfileChanged()), this, SLOT(onTerrainProfileChanged()), Qt::QueuedConnection );
+}
+
+TerrainProfileWidget::~TerrainProfileWidget()
+{
+}
+
+void TerrainProfileWidget::initialize()
+{
+  QVBoxLayout* vStack = new QVBoxLayout();
+  vStack->setSpacing(0);
+  vStack->setContentsMargins(0, 0, 0, 0);
+  setLayout(vStack);
+
+  // create actions
+  _captureAction = new QAction(QIcon(":/images/crosshair.png"), tr(""), this);
+  _captureAction->setToolTip(tr("Capture map clicks"));
+  _captureAction->setCheckable(true);
+  connect(_captureAction, SIGNAL(toggled(bool)), this, SLOT(onCaptureToggled(bool)));
+
+  _undoZoomAction = new QAction(QIcon(":/images/undo.png"), tr(""), this);
+  _undoZoomAction->setToolTip(tr("Undo zoom"));
+  connect(_undoZoomAction, SIGNAL(triggered()), this, SLOT(onUndoZoom()));
+  _undoZoomAction->setEnabled(false);
+
+  // create toolbar
+  QToolBar *buttonToolbar = new QToolBar(tr("Action Toolbar"));
+  buttonToolbar->setIconSize(QSize(24, 24));
+  buttonToolbar->addAction(_captureAction);
+  buttonToolbar->addSeparator();
+  buttonToolbar->addAction(_undoZoomAction);
+  vStack->addWidget(buttonToolbar);
+
+  // create graph widget
+  _graph = new TerrainProfileGraph(_calculator, new UpdatePositionShim(this));
+  vStack->addWidget(_graph);
+
+  // define a style for the line
+  osgEarth::Symbology::LineSymbol* ls = _lineStyle.getOrCreateSymbol<osgEarth::Symbology::LineSymbol>();
+  ls->stroke()->color() = osgEarth::Symbology::Color::White;
+  ls->stroke()->width() = 2.0f;
+  ls->tessellation() = 20;
+  _lineStyle.getOrCreate<osgEarth::Symbology::AltitudeSymbol>()->clamping() = osgEarth::Symbology::AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+  // load marker image
+  QImage image(":/images/marker.png"); 
+  QImage glImage = QGLWidget::convertToGLFormat(image); 
+
+  unsigned char* data = new unsigned char[glImage.byteCount()];
+	for(int i=0; i<glImage.byteCount(); i++)
+	{
+		data[i] = glImage.bits()[i];
+	}
+
+  _markerImage = new osg::Image(); 
+  _markerImage->setImage(glImage.width(), 
+                         glImage.height(), 
+                         1, 
+                         4, 
+                         GL_RGBA, 
+                         GL_UNSIGNED_BYTE, 
+                         data, 
+                         osg::Image::USE_NEW_DELETE, 
+                         1); 
+
+  // setup placemark style
+  _placeStyle.getOrCreate<AltitudeSymbol>()->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+}
+
+void TerrainProfileWidget::setActiveView(osgViewer::View* view)
+{
+  removeViews();
+  addView(view);
+}
+
+void TerrainProfileWidget::setActiveViews(const ViewVector& views)
+{
+  removeViews();
+
+  for (ViewVector::const_iterator it = views.begin(); it != views.end(); ++it)
+    addView(*it);
+}
+
+void TerrainProfileWidget::addView(osgViewer::View* view)
+{
+  view->addEventHandler(_guiHandler.get());
+  _views.push_back(view);
+}
+
+void TerrainProfileWidget::removeViews()
+{
+  for (ViewVector::iterator it = _views.begin(); it != _views.end(); ++it)
+    (*it)->removeEventHandler(_guiHandler.get());
+
+  _views.clear();
+}
+
+void TerrainProfileWidget::refreshViews()
+{
+    // to support ON_DEMAND rendering.
+    for (ViewVector::iterator it = _views.begin(); it != _views.end(); ++it)
+        it->get()->requestRedraw();
+}
+
+void TerrainProfileWidget::hideEvent(QHideEvent* e)
+{
+  ((TerrainProfileMouseHandler*)_guiHandler.get())->setCapturing(false);
+
+  if (_lineNode.valid())
+    _root->removeChild(_lineNode.get());
+
+  if (_markerNode.valid())
+    _root->removeChild(_markerNode.get());
+  
+  refreshViews();
+}
+
+void TerrainProfileWidget::showEvent(QShowEvent* e)
+{
+  ((TerrainProfileMouseHandler*)_guiHandler.get())->setCapturing(_captureAction->isChecked());
+
+  if (_lineNode.valid())
+    _root->addChild(_lineNode.get());
+
+  if (_markerNode.valid())
+    _root->addChild(_markerNode);
+  
+  refreshViews();
+}
+
+void TerrainProfileWidget::setStartEnd(const GeoPoint& start, const GeoPoint& end)
+{
+  if (_markerNode.valid())
+  {
+    _root->removeChild(_markerNode);
+    _markerNode = 0L;
+  }
+
+  _profileStack.clear();
+  _calculator->setStartEnd(start, end);
+}
+
+void TerrainProfileWidget::onTerrainProfileChanged()
+{
+  if (_profileStack.size() == 0 || (_profileStack.back().start != _calculator->getStart() || _profileStack.back().end != _calculator->getEnd()))
+    _profileStack.push_back(StartEndPair(_calculator->getStart(), _calculator->getEnd()));
+
+  _undoZoomAction->setEnabled(_profileStack.size() > 1);
+
+  drawProfileLine();
+}
+
+void TerrainProfileWidget::updatePosition(double lat, double lon, const std::string& text)
+{
+  if (!_markerNode.valid())
+  {
+    _markerNode = new osgEarth::Annotation::PlaceNode(
+        _mapNode.get(),
+        GeoPoint(_mapNode->getMapSRS(), lon, lat, 0, osgEarth::ALTMODE_RELATIVE),
+        _markerImage,
+        text,
+        _placeStyle);
+
+    _markerNode->setDynamic(true);
+
+    _root->addChild(_markerNode);
+  }
+  else
+  {
+    _markerNode->setPosition(GeoPoint(_mapNode->getMapSRS(), lon, lat, 0, osgEarth::ALTMODE_RELATIVE));
+    _markerNode->setText(text);
+  }
+
+  refreshViews();
+}
+
+void TerrainProfileWidget::onCaptureToggled(bool checked)
+{
+  ((TerrainProfileMouseHandler*)_guiHandler.get())->setCapturing(checked);
+}
+
+void TerrainProfileWidget::onUndoZoom()
+{
+  _profileStack.pop_back();
+  _calculator->setStartEnd(_profileStack.back().start, _profileStack.back().end);
+}
+
+void TerrainProfileWidget::drawProfileLine()
+{
+  osgEarth::Symbology::LineString* line = new osgEarth::Symbology::LineString();
+  line->push_back( _calculator->getStart().vec3d() );
+  line->push_back( _calculator->getEnd().vec3d() );
+
+  osgEarth::Features::Feature* feature = new osgEarth::Features::Feature(line, _mapNode->getMapSRS());
+  feature->geoInterp() = osgEarth::GEOINTERP_GREAT_CIRCLE;    
+  feature->style() = _lineStyle;
+
+  if (!_lineNode.valid())
+  {
+    _lineNode = new osgEarth::Annotation::FeatureNode( _mapNode, feature );
+    _lineNode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+    _root->addChild( _lineNode.get() );
+  }
+  else
+  {
+    _lineNode->setFeature(feature);
+  }
+
+  refreshViews();
+}
\ No newline at end of file
diff --git a/src/osgEarthQt/ViewerWidget b/src/osgEarthQt/ViewerWidget
new file mode 100644
index 0000000..a6db091
--- /dev/null
+++ b/src/osgEarthQt/ViewerWidget
@@ -0,0 +1,87 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHQT_VIEWERWIDGET_H
+#define OSGEARTHQT_VIEWERWIDGET_H 1
+
+#include <osgEarthQt/Common>
+
+#include <osgEarth/Map>
+
+#include <osgQt/GraphicsWindowQt>
+#include <osgViewer/ViewerBase>
+
+#include <QtCore/QTimer>
+
+namespace osgEarth { namespace QtGui 
+{
+    using namespace osgEarth;
+
+    /**
+     * Qt widget that encapsulates an osgViewer::Viewer.
+     */
+    class OSGEARTHQT_EXPORT ViewerWidget : public osgQt::GLWidget
+    {
+    public:
+        /**
+         * Constructs a new ViewerWidget, creating an underlying viewer.
+         * @param[in ] scene Scene graph to attach to the viewer (optional)
+         */
+        ViewerWidget(osg::Node* scene=0L);
+
+        /**
+         * Constructs a new ViewerWidget, attaching an existing viewer.
+         * @param[in ] viewer Viewer to attach to this widget. The widget will install
+         *             a new camera in the viewer. (NOTE: this widget does not take
+         *             ownership of the Viewer. You are still respsonsile for its
+         *             destruction)
+         */
+        ViewerWidget(osgViewer::ViewerBase* viewer);
+
+        /**
+         * Access the underlying viewer.
+         */
+        osgViewer::ViewerBase* getViewer() { return _viewer.get(); }
+
+        /**
+         * Populates the incoming collection with the views comprising this viewer.
+         */
+        template<typename T>
+        void getViews( T& views ) const {
+            osgViewer::ViewerBase::Views temp;
+            _viewer->getViews(temp);
+            views.insert(views.end(), temp.begin(), temp.end());
+        }
+
+        virtual ~ViewerWidget();
+
+    protected:
+
+        QTimer _timer;
+
+        void createViewer();
+        void reconfigure( osgViewer::View* );
+        void installFrameTimer();
+        void paintEvent( QPaintEvent* );
+
+        osg::observer_ptr<osgViewer::ViewerBase> _viewer;
+        osg::ref_ptr<osg::GraphicsContext>       _gc;
+    };
+} }
+
+#endif // OSGEARTHQT_VIEWERWIDGET_H
diff --git a/src/osgEarthQt/ViewerWidget.cpp b/src/osgEarthQt/ViewerWidget.cpp
new file mode 100644
index 0000000..88f2043
--- /dev/null
+++ b/src/osgEarthQt/ViewerWidget.cpp
@@ -0,0 +1,165 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthQt/ViewerWidget>
+
+#include <osgEarthUtil/EarthManipulator>
+
+#include <osgGA/StateSetManipulator>
+#include <osgQt/GraphicsWindowQt>
+#include <osgViewer/Viewer>
+#include <osgViewer/ViewerEventHandlers>
+
+#include <QtGui>
+#include <QtCore/QTimer>
+#include <QtGui/QWidget>
+
+using namespace osgEarth;
+using namespace osgEarth::QtGui;
+
+
+ViewerWidget::ViewerWidget(osg::Node* scene)
+{
+    // create a new viewer (a simple osgViewer::Viewer)
+    createViewer();
+
+    // attach the scene graph provided by the user
+    if (scene)
+    {
+        dynamic_cast<osgViewer::Viewer*>(_viewer.get())->setSceneData( scene );
+    }
+
+    // start up the paint event timer.
+    installFrameTimer();
+}
+
+ViewerWidget::ViewerWidget(osgViewer::ViewerBase* viewer) :
+_viewer( viewer )
+{
+    if ( !_viewer.valid() )
+    {
+        // create a viewer if the user passed in NULL
+        createViewer();
+    }
+
+    else
+    {
+        // reconfigure all the viewer's views to use a Qt graphics context.
+        osgViewer::ViewerBase::Views views;
+        getViews( views );
+        for( osgViewer::ViewerBase::Views::iterator v = views.begin(); v != views.end(); ++v )
+        {
+            reconfigure( *v );
+        }
+
+        // disable event setting on the viewer.
+        viewer->setKeyEventSetsDone(0);
+        viewer->setQuitEventSetsDone(false);
+    }
+
+    // start up the paint event timer.
+    installFrameTimer();
+}
+
+ViewerWidget::~ViewerWidget()
+{
+    _timer.stop();
+    if ( _viewer.valid() )
+    {
+        _viewer->stopThreading();
+        _viewer = 0L;
+    }
+
+    OE_DEBUG << "ViewerWidget::DTOR" << std::endl;
+}
+
+
+void ViewerWidget::installFrameTimer()
+{    
+    // start the frame timer.
+    connect(&_timer, SIGNAL(timeout()), this, SLOT(update()));
+    _timer.start(15);
+}
+
+
+void ViewerWidget::createViewer()
+{
+    // creates a simple basic viewer.
+    osgViewer::Viewer* viewer = new osgViewer::Viewer();
+
+    viewer->setThreadingModel(osgViewer::Viewer::DrawThreadPerContext);
+    viewer->setCameraManipulator(new osgEarth::Util::EarthManipulator());
+
+    viewer->addEventHandler(new osgViewer::StatsHandler());
+    viewer->addEventHandler(new osgGA::StateSetManipulator());
+    viewer->addEventHandler(new osgViewer::ThreadingHandler());
+
+    viewer->setKeyEventSetsDone(0);
+    viewer->setQuitEventSetsDone(false);
+
+    reconfigure( viewer );
+
+    _viewer = viewer;
+}
+
+void ViewerWidget::reconfigure( osgViewer::View* view )
+{
+    if ( !_gc.valid() )
+    {
+        // create the Qt graphics context if necessary; it will be shared across all views.
+        osg::DisplaySettings* ds = osg::DisplaySettings::instance().get();
+        osg::ref_ptr<osg::GraphicsContext::Traits> traits = new osg::GraphicsContext::Traits(ds);
+
+        traits->readDISPLAY();
+        if (traits->displayNum<0) traits->displayNum = 0;
+
+        traits->windowName = "osgEarthViewerQt";
+        traits->windowDecoration = false;
+        traits->x = x();
+        traits->y = y();
+        traits->width = width();
+        traits->height = height();
+        traits->doubleBuffer = true;
+        traits->inheritedWindowData = new osgQt::GraphicsWindowQt::WindowData(this);
+
+        _gc = new osgQt::GraphicsWindowQt( traits.get() );
+    }
+
+    // reconfigure this view's camera to use the Qt GC if necessary.
+    osg::Camera* camera = view->getCamera();
+    if ( camera->getGraphicsContext() != _gc.get() )
+    {
+        camera->setGraphicsContext( _gc.get() );
+        if ( !camera->getViewport() )
+        {
+            camera->setViewport(new osg::Viewport(0, 0, _gc->getTraits()->width, _gc->getTraits()->height));
+        }
+        camera->setProjectionMatrixAsPerspective(
+            30.0f, camera->getViewport()->width()/camera->getViewport()->height(), 1.0f, 10000.0f );
+    }
+}
+
+      
+void ViewerWidget::paintEvent(QPaintEvent* e)
+{
+    if (_viewer->getRunFrameScheme() == osgViewer::ViewerBase::CONTINUOUS || 
+        _viewer->checkNeedToDoFrame() )
+    {
+        _viewer->frame();
+    }
+}
diff --git a/src/osgEarthQt/images.qrc b/src/osgEarthQt/images.qrc
new file mode 100644
index 0000000..48f4425
--- /dev/null
+++ b/src/osgEarthQt/images.qrc
@@ -0,0 +1,18 @@
+<RCC>
+    <qresource prefix="/">
+        <file>images/minus.png</file>
+        <file>images/plus.png</file>
+        <file>images/edit.png</file>
+        <file>images/crosshair.png</file>
+        <file>images/undo.png</file>
+        <file>images/marker.png</file>
+        <file>images/add_marker.png</file>
+        <file>images/add_marker_bg.png</file>
+        <file>images/draw_circle.png</file>
+        <file>images/draw_circle_bg.png</file>
+        <file>images/draw_line.png</file>
+        <file>images/draw_line_bg.png</file>
+        <file>images/draw_poly.png</file>
+        <file>images/draw_poly_bg.png</file>
+    </qresource>
+</RCC>
diff --git a/src/osgEarthQt/images/add_marker.png b/src/osgEarthQt/images/add_marker.png
new file mode 100644
index 0000000..a3b3a5a
Binary files /dev/null and b/src/osgEarthQt/images/add_marker.png differ
diff --git a/src/osgEarthQt/images/add_marker_bg.png b/src/osgEarthQt/images/add_marker_bg.png
new file mode 100644
index 0000000..a871428
Binary files /dev/null and b/src/osgEarthQt/images/add_marker_bg.png differ
diff --git a/src/osgEarthQt/images/crosshair.png b/src/osgEarthQt/images/crosshair.png
new file mode 100644
index 0000000..524ecd8
Binary files /dev/null and b/src/osgEarthQt/images/crosshair.png differ
diff --git a/src/osgEarthQt/images/draw_circle.png b/src/osgEarthQt/images/draw_circle.png
new file mode 100644
index 0000000..aa43f9e
Binary files /dev/null and b/src/osgEarthQt/images/draw_circle.png differ
diff --git a/src/osgEarthQt/images/draw_circle_bg.png b/src/osgEarthQt/images/draw_circle_bg.png
new file mode 100644
index 0000000..d21d192
Binary files /dev/null and b/src/osgEarthQt/images/draw_circle_bg.png differ
diff --git a/src/osgEarthQt/images/draw_line.png b/src/osgEarthQt/images/draw_line.png
new file mode 100644
index 0000000..112352b
Binary files /dev/null and b/src/osgEarthQt/images/draw_line.png differ
diff --git a/src/osgEarthQt/images/draw_line_bg.png b/src/osgEarthQt/images/draw_line_bg.png
new file mode 100644
index 0000000..92b27f3
Binary files /dev/null and b/src/osgEarthQt/images/draw_line_bg.png differ
diff --git a/src/osgEarthQt/images/draw_poly.png b/src/osgEarthQt/images/draw_poly.png
new file mode 100644
index 0000000..1421db2
Binary files /dev/null and b/src/osgEarthQt/images/draw_poly.png differ
diff --git a/src/osgEarthQt/images/draw_poly_bg.png b/src/osgEarthQt/images/draw_poly_bg.png
new file mode 100644
index 0000000..7844377
Binary files /dev/null and b/src/osgEarthQt/images/draw_poly_bg.png differ
diff --git a/src/osgEarthQt/images/edit.png b/src/osgEarthQt/images/edit.png
new file mode 100644
index 0000000..0d938a2
Binary files /dev/null and b/src/osgEarthQt/images/edit.png differ
diff --git a/src/osgEarthQt/images/marker.png b/src/osgEarthQt/images/marker.png
new file mode 100644
index 0000000..3d05fe2
Binary files /dev/null and b/src/osgEarthQt/images/marker.png differ
diff --git a/src/osgEarthQt/images/minus.png b/src/osgEarthQt/images/minus.png
new file mode 100644
index 0000000..6331980
Binary files /dev/null and b/src/osgEarthQt/images/minus.png differ
diff --git a/src/osgEarthQt/images/plus.png b/src/osgEarthQt/images/plus.png
new file mode 100644
index 0000000..aef8dcb
Binary files /dev/null and b/src/osgEarthQt/images/plus.png differ
diff --git a/src/osgEarthQt/images/undo.png b/src/osgEarthQt/images/undo.png
new file mode 100644
index 0000000..33266e2
Binary files /dev/null and b/src/osgEarthQt/images/undo.png differ
diff --git a/src/osgEarthQt/ui/LOSCreationDialog.ui b/src/osgEarthQt/ui/LOSCreationDialog.ui
new file mode 100644
index 0000000..8f4ae48
--- /dev/null
+++ b/src/osgEarthQt/ui/LOSCreationDialog.ui
@@ -0,0 +1,699 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>LOSCreationDialog</class>
+ <widget class="QDialog" name="LOSCreationDialog">
+  <property name="geometry">
+   <rect>
+    <x>0</x>
+    <y>0</y>
+    <width>874</width>
+    <height>358</height>
+   </rect>
+  </property>
+  <property name="windowTitle">
+   <string>Line-of-Sight</string>
+  </property>
+  <layout class="QVBoxLayout" name="verticalLayout">
+   <item>
+    <widget class="QWidget" name="widget_2" native="true">
+     <layout class="QHBoxLayout" name="horizontalLayout_11">
+      <item>
+       <widget class="QLabel" name="nameLabel">
+        <property name="text">
+         <string>Name</string>
+        </property>
+       </widget>
+      </item>
+      <item>
+       <widget class="QLineEdit" name="nameBox">
+        <property name="text">
+         <string>LOS</string>
+        </property>
+       </widget>
+      </item>
+     </layout>
+    </widget>
+   </item>
+   <item>
+    <widget class="QTabWidget" name="typeTabs">
+     <property name="currentIndex">
+      <number>0</number>
+     </property>
+     <widget class="QWidget" name="p2pTab">
+      <attribute name="title">
+       <string>Point-to-Point</string>
+      </attribute>
+      <layout class="QVBoxLayout" name="verticalLayout_2">
+       <item>
+        <widget class="QGroupBox" name="p1GroupBox">
+         <property name="title">
+          <string>Point 1</string>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout">
+          <item>
+           <widget class="QComboBox" name="p1TypeCombo">
+            <property name="currentIndex">
+             <number>0</number>
+            </property>
+            <item>
+             <property name="text">
+              <string>Point</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Annotation</string>
+             </property>
+            </item>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="p1PointOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_3">
+             <item>
+              <widget class="QLabel" name="p1LonLabel">
+               <property name="text">
+                <string>Lon</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p1LonBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-180.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>180.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="p1LatLabel">
+               <property name="text">
+                <string>Lat</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p1LatBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-90.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>90.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="p1AltLabel">
+               <property name="text">
+                <string>Alt</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p1AltBox">
+               <property name="decimals">
+                <number>2</number>
+               </property>
+               <property name="minimum">
+                <double>-10000.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>1000000000.000000000000000</double>
+               </property>
+               <property name="value">
+                <double>2.000000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QPushButton" name="p1PointButton">
+               <property name="text">
+                <string>Get Map Click</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="p1NodeOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_4">
+             <item>
+              <widget class="QComboBox" name="p1NodeCombo"/>
+             </item>
+             <item>
+              <widget class="QPushButton" name="p1NodeButton">
+               <property name="text">
+                <string>Center Map</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer_3">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>0</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QGroupBox" name="p2GroupBox">
+         <property name="title">
+          <string>Point 2</string>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout_2">
+          <item>
+           <widget class="QComboBox" name="p2TypeCombo">
+            <property name="currentIndex">
+             <number>0</number>
+            </property>
+            <item>
+             <property name="text">
+              <string>Point</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Annotation</string>
+             </property>
+            </item>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="p2PointOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_5">
+             <item>
+              <widget class="QLabel" name="p2LonLabel">
+               <property name="text">
+                <string>Lon</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p2LonBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-180.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>180.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="p2LatLabel">
+               <property name="text">
+                <string>Lat</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p2LatBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-90.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>90.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="p2AltLabel">
+               <property name="text">
+                <string>Alt</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="p2AltBox">
+               <property name="decimals">
+                <number>2</number>
+               </property>
+               <property name="minimum">
+                <double>-10000.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>1000000000.000000000000000</double>
+               </property>
+               <property name="value">
+                <double>2.000000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QPushButton" name="p2PointButton">
+               <property name="text">
+                <string>Get Map Click</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="p2NodeOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_6">
+             <item>
+              <widget class="QComboBox" name="p2NodeCombo"/>
+             </item>
+             <item>
+              <widget class="QPushButton" name="p2NodeButton">
+               <property name="text">
+                <string>Center Map</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer_4">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>0</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QCheckBox" name="p2pRelativeCheckBox">
+         <property name="text">
+          <string>relative altitudes</string>
+         </property>
+         <property name="checked">
+          <bool>true</bool>
+         </property>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_3">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>0</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+     <widget class="QWidget" name="radialTab">
+      <attribute name="title">
+       <string>Radial</string>
+      </attribute>
+      <layout class="QVBoxLayout" name="verticalLayout_3">
+       <item>
+        <widget class="QGroupBox" name="radPointGroupBox">
+         <property name="title">
+          <string>Point</string>
+         </property>
+         <layout class="QHBoxLayout" name="horizontalLayout_7">
+          <item>
+           <widget class="QComboBox" name="radTypeCombo">
+            <property name="currentIndex">
+             <number>0</number>
+            </property>
+            <item>
+             <property name="text">
+              <string>Point</string>
+             </property>
+            </item>
+            <item>
+             <property name="text">
+              <string>Annotation</string>
+             </property>
+            </item>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="radPointOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_8">
+             <item>
+              <widget class="QLabel" name="radLonLabel">
+               <property name="text">
+                <string>Lon</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="radLonBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-180.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>180.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="radLatLabel">
+               <property name="text">
+                <string>Lat</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="radLatBox">
+               <property name="decimals">
+                <number>7</number>
+               </property>
+               <property name="minimum">
+                <double>-90.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>90.000000000000000</double>
+               </property>
+               <property name="singleStep">
+                <double>0.001000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QLabel" name="radAltLabel">
+               <property name="text">
+                <string>Alt</string>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QDoubleSpinBox" name="radAltBox">
+               <property name="decimals">
+                <number>2</number>
+               </property>
+               <property name="minimum">
+                <double>-10000.000000000000000</double>
+               </property>
+               <property name="maximum">
+                <double>1000000000.000000000000000</double>
+               </property>
+               <property name="value">
+                <double>2.000000000000000</double>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QCheckBox" name="radRelativeCheckBox">
+               <property name="text">
+                <string>relative altitude</string>
+               </property>
+               <property name="checked">
+                <bool>true</bool>
+               </property>
+              </widget>
+             </item>
+             <item>
+              <widget class="QPushButton" name="radPointButton">
+               <property name="text">
+                <string>Get Map Click</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <widget class="QWidget" name="radNodeOptions" native="true">
+            <layout class="QHBoxLayout" name="horizontalLayout_9">
+             <item>
+              <widget class="QComboBox" name="radNodeCombo"/>
+             </item>
+             <item>
+              <widget class="QPushButton" name="radNodeButton">
+               <property name="text">
+                <string>Center Map</string>
+               </property>
+              </widget>
+             </item>
+            </layout>
+           </widget>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer_5">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>0</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <widget class="QWidget" name="widget" native="true">
+         <layout class="QHBoxLayout" name="horizontalLayout_10">
+          <item>
+           <widget class="QLabel" name="radiusLabel">
+            <property name="text">
+             <string>Radius (m)</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QDoubleSpinBox" name="radiusSpinBox">
+            <property name="minimumSize">
+             <size>
+              <width>100</width>
+              <height>0</height>
+             </size>
+            </property>
+            <property name="minimum">
+             <double>0.100000000000000</double>
+            </property>
+            <property name="maximum">
+             <double>40075160.000000000000000</double>
+            </property>
+            <property name="value">
+             <double>2000.000000000000000</double>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeType">
+             <enum>QSizePolicy::Fixed</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>40</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+          <item>
+           <widget class="QLabel" name="spokesLabel">
+            <property name="text">
+             <string>Spokes</string>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QSpinBox" name="spokesSpinBox">
+            <property name="minimumSize">
+             <size>
+              <width>70</width>
+              <height>0</height>
+             </size>
+            </property>
+            <property name="minimum">
+             <number>2</number>
+            </property>
+            <property name="maximum">
+             <number>10000</number>
+            </property>
+            <property name="value">
+             <number>100</number>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <spacer name="horizontalSpacer_2">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+            <property name="sizeHint" stdset="0">
+             <size>
+              <width>40</width>
+              <height>20</height>
+             </size>
+            </property>
+           </spacer>
+          </item>
+         </layout>
+        </widget>
+       </item>
+       <item>
+        <spacer name="verticalSpacer_2">
+         <property name="orientation">
+          <enum>Qt::Vertical</enum>
+         </property>
+         <property name="sizeHint" stdset="0">
+          <size>
+           <width>20</width>
+           <height>0</height>
+          </size>
+         </property>
+        </spacer>
+       </item>
+      </layout>
+     </widget>
+    </widget>
+   </item>
+   <item>
+    <widget class="QCheckBox" name="depthTestCheckBox">
+     <property name="text">
+      <string>Enable Depth Test</string>
+     </property>
+     <property name="checked">
+      <bool>false</bool>
+     </property>
+    </widget>
+   </item>
+   <item>
+    <spacer name="verticalSpacer">
+     <property name="orientation">
+      <enum>Qt::Vertical</enum>
+     </property>
+     <property name="sizeHint" stdset="0">
+      <size>
+       <width>20</width>
+       <height>40</height>
+      </size>
+     </property>
+    </spacer>
+   </item>
+   <item>
+    <layout class="QHBoxLayout">
+     <property name="spacing">
+      <number>6</number>
+     </property>
+     <property name="margin">
+      <number>0</number>
+     </property>
+     <item>
+      <spacer>
+       <property name="orientation">
+        <enum>Qt::Horizontal</enum>
+       </property>
+       <property name="sizeHint" stdset="0">
+        <size>
+         <width>131</width>
+         <height>31</height>
+        </size>
+       </property>
+      </spacer>
+     </item>
+     <item>
+      <widget class="QPushButton" name="okButton">
+       <property name="text">
+        <string>OK</string>
+       </property>
+      </widget>
+     </item>
+     <item>
+      <widget class="QPushButton" name="cancelButton">
+       <property name="text">
+        <string>Cancel</string>
+       </property>
+      </widget>
+     </item>
+    </layout>
+   </item>
+  </layout>
+ </widget>
+ <resources/>
+ <connections>
+  <connection>
+   <sender>okButton</sender>
+   <signal>clicked()</signal>
+   <receiver>LOSCreationDialog</receiver>
+   <slot>accept()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>562</x>
+     <y>408</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>96</x>
+     <y>254</y>
+    </hint>
+   </hints>
+  </connection>
+  <connection>
+   <sender>cancelButton</sender>
+   <signal>clicked()</signal>
+   <receiver>LOSCreationDialog</receiver>
+   <slot>reject()</slot>
+   <hints>
+    <hint type="sourcelabel">
+     <x>643</x>
+     <y>408</y>
+    </hint>
+    <hint type="destinationlabel">
+     <x>179</x>
+     <y>282</y>
+    </hint>
+   </hints>
+  </connection>
+ </connections>
+</ui>
diff --git a/src/osgEarthSymbology/AltitudeSymbol b/src/osgEarthSymbology/AltitudeSymbol
index b6216ab..9430ea0 100644
--- a/src/osgEarthSymbology/AltitudeSymbol
+++ b/src/osgEarthSymbology/AltitudeSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -77,6 +77,8 @@ namespace osgEarth { namespace Symbology
         virtual void mergeConfig( const Config& conf );
 
     protected:
+        virtual ~AltitudeSymbol() { }
+
         optional<Clamping>           _clamping;
         optional<float>              _clampingResolution;
         optional<NumericExpression>  _verticalOffset;
diff --git a/src/osgEarthSymbology/AltitudeSymbol.cpp b/src/osgEarthSymbology/AltitudeSymbol.cpp
index ff06823..7e9e4ad 100644
--- a/src/osgEarthSymbology/AltitudeSymbol.cpp
+++ b/src/osgEarthSymbology/AltitudeSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,7 +24,9 @@ using namespace osgEarth::Symbology;
 AltitudeSymbol::AltitudeSymbol( const Config& conf ) :
 Symbol             ( conf ),
 _clamping          ( CLAMP_NONE ),
-_clampingResolution( 0.0f )
+_clampingResolution( 0.0f ),
+_verticalScale     ( NumericExpression(1.0) ),
+_verticalOffset    ( NumericExpression(0.0) )
 {
     mergeConfig( conf );
 }
diff --git a/src/osgEarthSymbology/CMakeLists.txt b/src/osgEarthSymbology/CMakeLists.txt
index 00b582e..2ff5716 100644
--- a/src/osgEarthSymbology/CMakeLists.txt
+++ b/src/osgEarthSymbology/CMakeLists.txt
@@ -24,12 +24,17 @@ SET(LIB_PUBLIC_HEADERS
     GeometryFactory
     GEOS
     GeometryRasterizer
-    LineFunctor
+    IconResource
+    IconSymbol
+    InstanceResource
+    InstanceSymbol
     LineSymbol
     MarkerResource
     MarkerSymbol
     MeshConsolidator
     MeshSubdivider
+    ModelResource
+    ModelSymbol
     PointSymbol
     PolygonSymbol
     Query
@@ -39,13 +44,15 @@ SET(LIB_PUBLIC_HEADERS
     Skins
     StencilVolumeNode
     Style
+    StyleSelector
+    StyleSheet
     SLD
     Symbol
     Tags
     TextSymbol
 )
 
-ADD_LIBRARY(${LIB_NAME} SHARED
+ADD_LIBRARY(${LIB_NAME} ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
     ${LIB_PUBLIC_HEADERS}
 #  .cpp files go here
     AltitudeSymbol.cpp
@@ -57,11 +64,17 @@ ADD_LIBRARY(${LIB_NAME} SHARED
     GeometryFactory.cpp
     GEOS.cpp
     GeometryRasterizer.cpp
+    IconResource.cpp
+    IconSymbol.cpp
+    InstanceResource.cpp
+    InstanceSymbol.cpp
     LineSymbol.cpp
     MarkerResource.cpp
     MarkerSymbol.cpp
     MeshConsolidator.cpp
     MeshSubdivider.cpp
+    ModelResource.cpp
+    ModelSymbol.cpp
     PointSymbol.cpp
     PolygonSymbol.cpp
     Query.cpp
@@ -71,6 +84,8 @@ ADD_LIBRARY(${LIB_NAME} SHARED
     Skins.cpp
     StencilVolumeNode.cpp
     Style.cpp
+    StyleSelector.cpp
+    StyleSheet.cpp
     SLD.cpp
     Symbol.cpp
     TextSymbol.cpp
diff --git a/src/osgEarthSymbology/Color b/src/osgEarthSymbology/Color
index 994b605..e658327 100644
--- a/src/osgEarthSymbology/Color
+++ b/src/osgEarthSymbology/Color
@@ -1,6 +1,6 @@
 /* --*-c++-*-- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,6 +20,7 @@
 #define OSGEARTHSYMBOLOGY_COLOR_H 1
 
 #include <osgEarthSymbology/Common>
+#include <osgEarth/Config>
 #include <osg/Vec4f>
 #include <string>
 
@@ -54,9 +55,17 @@ namespace osgEarth { namespace Symbology
         /** RGBA constructor */
         Color( unsigned rgba );
 
-        /** Construct a color from an HTML string (e.g., "#FF0004F") */
+        /**
+         * Construct a color from a hex string in one of the following formats, (with or
+         * without the component order reversed):
+         *   RRGGBB or RRGGBBAA
+         *   #RRGGBB or #RRGGBBAA (HTML style - preceding hash)
+         *   0xRRGGBB or 0xRRGGBBAA (C style - preceding "0x")
+         */
         Color( const std::string& html, Format format =RGBA );
 
+        virtual ~Color() { }
+
         /** Encode the color at an HTML color string (e.g., "#FF004F78") */
         std::string toHTML( Format format =RGBA ) const;
 
@@ -83,11 +92,50 @@ namespace osgEarth { namespace Symbology
         static Color Fuchsia;
         static Color Purple;
         static Color Orange;
-        static Color Cyan;
 
+        // others:
+        static Color Cyan;
         static Color DarkGray;
+        static Color Magenta;
+        static Color Brown;
     };
 
 } } // namespace osgEarth::Symbology
 
+    
+//------------------------------------------------------------------------
+
+namespace osgEarth
+{
+    using namespace osgEarth::Symbology;
+
+    // Config specializations for Color:
+
+    template <> inline
+    void Config::addIfSet<Color>( const std::string& key, const optional<Color>& opt ) {
+        if ( opt.isSet() ) {
+            add( key, opt->toHTML() );
+        }
+    }
+
+    template<> inline
+    void Config::updateIfSet<Color>( const std::string& key, const optional<Color>& opt ) {
+        if ( opt.isSet() ) {
+            remove( key );
+            add( key, opt->toHTML() );
+        }
+    }
+
+    template<> inline
+    bool Config::getIfSet<Color>( const std::string& key, optional<Color>& output ) const {
+        if ( hasValue( key ) ) {
+            output = Color( value(key) );
+            return true;
+        }
+        else
+            return false;
+    }
+}
+
+
 #endif // OSGEARTHSYMBOLOGY_COLOR_H
diff --git a/src/osgEarthSymbology/Color.cpp b/src/osgEarthSymbology/Color.cpp
index 211d4da..c287232 100644
--- a/src/osgEarthSymbology/Color.cpp
+++ b/src/osgEarthSymbology/Color.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,7 @@
 #include <osg/Vec4ub>
 #include <sstream>
 #include <iomanip>
+#include <ctype.h>
 
 using namespace osgEarth::Symbology;
 
@@ -63,7 +64,7 @@ namespace
             if ( vi == 0.0f )      { vr = v,  vg = v3, vb = v1; }
             else if ( vi == 1.0f ) { vr = v2, vg = v,  vb = v1; }
             else if ( vi == 2.0f ) { vr = v1, vg = v,  vb = v3; }
-            else if ( vi == 3.0f ) { vr = v1, vb = v2, vb = v; }
+            else if ( vi == 3.0f ) { vr = v1, vg = v2, vb = v; }
             else if ( vi == 4.0f ) { vr = v3, vg = v1, vb = v; }
             else                   { vr = v,  vg = v1, vb = v2; }
             c.set( vr, vg, vb, c.a() );
@@ -90,7 +91,9 @@ Color Color::Purple   ( 0x800080ff );
 Color Color::Orange   ( 0xffa500ff );
 
 Color Color::DarkGray ( 0x404040ff );
+Color Color::Magenta  ( 0xc000c0ff );
 Color Color::Cyan     ( 0x00ffffff );
+Color Color::Brown    ( 0xaa5500ff );
 
 Color::Color( unsigned rgba )
 {
@@ -107,23 +110,30 @@ osg::Vec4f( rhs )
     (*this)[3] = a;
 }
 
-/** Parses an HTML color ("#rrggbb" or "#rrggbbaa") into an OSG color. */
-Color::Color( const std::string& html, Format format )
+/** Parses a hex color string ("#rrggbb", "#rrggbbaa", "0xrrggbb", etc.) into an OSG color. */
+Color::Color( const std::string& input, Format format )
 {
-    std::string t = html;
+    std::string t = input;
     std::transform( t.begin(), t.end(), t.begin(), ::tolower );
     osg::Vec4ub c(0,0,0,255);
-    if ( t.length() >= 7 ) {
-        c.r() |= t[1]<='9' ? (t[1]-'0')<<4 : (10+(t[1]-'a'))<<4;
-        c.r() |= t[2]<='9' ? (t[2]-'0')    : (10+(t[2]-'a'));
-        c.g() |= t[3]<='9' ? (t[3]-'0')<<4 : (10+(t[3]-'a'))<<4;
-        c.g() |= t[4]<='9' ? (t[4]-'0')    : (10+(t[4]-'a'));
-        c.b() |= t[5]<='9' ? (t[5]-'0')<<4 : (10+(t[5]-'a'))<<4;
-        c.b() |= t[6]<='9' ? (t[6]-'0')    : (10+(t[6]-'a'));
-        if ( t.length() == 9 ) {
+
+    unsigned e = 
+        t.size() >= 2 && t[0] == '0' && t[1] == 'x' ? 2 :
+        t.size() >= 1 && t[0] == '#' ? 1 :
+        0;
+    unsigned len = t.length() - e;
+
+    if ( len >= 6 ) {
+        c.r() |= t[e+0]<='9' ? (t[e+0]-'0')<<4 : (10+(t[e+0]-'a'))<<4;
+        c.r() |= t[e+1]<='9' ? (t[e+1]-'0')    : (10+(t[e+1]-'a'));
+        c.g() |= t[e+2]<='9' ? (t[e+2]-'0')<<4 : (10+(t[e+2]-'a'))<<4;
+        c.g() |= t[e+3]<='9' ? (t[e+3]-'0')    : (10+(t[e+3]-'a'));
+        c.b() |= t[e+4]<='9' ? (t[e+4]-'0')<<4 : (10+(t[e+4]-'a'))<<4;
+        c.b() |= t[e+5]<='9' ? (t[e+5]-'0')    : (10+(t[e+5]-'a'));
+        if ( t.length() >= 8 ) {
             c.a() = 0;
-            c.a() |= t[7]<='9' ? (t[7]-'0')<<4 : (10+(t[7]-'a'))<<4;
-            c.a() |= t[8]<='9' ? (t[8]-'0')    : (10+(t[8]-'a'));
+            c.a() |= t[e+6]<='9' ? (t[e+6]-'0')<<4 : (10+(t[e+6]-'a'))<<4;
+            c.a() |= t[e+7]<='9' ? (t[e+7]-'0')    : (10+(t[e+7]-'a'));
         }
     }
     float w = ((float)c.r())/255.0f;
@@ -149,22 +159,33 @@ Color::toHTML( Format format ) const
         w = a(), x = b(), y = g(), z = r();
     }
 
-    std::stringstream buf;
-    buf << "#";
-    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(w*255.0f);
-    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(x*255.0f);
-    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(y*255.0f);
-    buf << std::hex << std::setw(2) << std::setfill('0') << (int)(z*255.0f);
-    std::string ssStr = buf.str();
-    return ssStr;
+#if 1
+    return Stringify()
+        << "#"
+        << std::hex << std::setw(2) << std::setfill('0') << (int)(w*255.0f)
+        << std::hex << std::setw(2) << std::setfill('0') << (int)(x*255.0f)
+        << std::hex << std::setw(2) << std::setfill('0') << (int)(y*255.0f)
+        << std::hex << std::setw(2) << std::setfill('0') << (int)(z*255.0f);
+#else
+    return Stringify()
+        << "#"
+        << std::hex << std::setw(2) << std::setfill('0')
+        << (int)(w*255.0f)
+        << (int)(x*255.0f)
+        << (int)(y*255.0f)
+        << (int)(z*255.0f);
+#endif
 }
 
 Color
 Color::brightness( float perc ) const
 {
+#if 0
     Color c( *this );
     rgb2hsv( c );
     c.b() = osg::clampBetween( perc * c.b(), 0.0f, 1.0f );
     hsv2rgb( c );
     return c;
+#endif
+    return Color(r()*perc, g()*perc, b()*perc, a());
 }
diff --git a/src/osgEarthSymbology/Common b/src/osgEarthSymbology/Common
index 21aad49..a961a32 100644
--- a/src/osgEarthSymbology/Common
+++ b/src/osgEarthSymbology/Common
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/Content b/src/osgEarthSymbology/Content
deleted file mode 100644
index 9f16263..0000000
--- a/src/osgEarthSymbology/Content
+++ /dev/null
@@ -1,79 +0,0 @@
-/* --*-c++-*-- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTHSYMBOLOGY_CONTENT_H
-#define OSGEARTHSYMBOLOGY_CONTENT_H 1
-
-#include <osgEarth/Revisioning>
-#include <osgEarthSymbology/Common>
-#include <osgEarthSymbology/Geometry>
-
-
-namespace osgEarth { namespace Symbology
-{
-    /**
-     * Base template for all Symbolizer content types.
-     */
-    template<typename CONTENT_TYPE>
-    class Content : public osgEarth::Revisioned<CONTENT_TYPE> // header only (no export)
-    {
-        //empty
-    };
-
-    /**
-     * Empty content object.
-     */
-    class NullContent : public Content<osg::Referenced>
-    {
-        //empty
-    };
-    
-    /** 
-     * Content object containing a simple text string.
-     */
-    class TextContent : public Content<osg::Referenced> // header only (no export)
-    {
-    public:
-        TextContent() { }
-        TextContent( const std::string& text ) : _text( text ) { }
-
-        const std::string& getText() const { return _text; }
-
-        void setText( const std::string& text ) { _text = text; }
-
-    private:
-        std::string _text;
-    };
-
-    /**
-     * Basic content type for a geometry list.
-     */
-    class GeometryContent : public Content<osg::Referenced> // header-only (no export)
-    {
-    public:
-        const GeometryList& getGeometryList() const { return _geometryList; }
-        GeometryList& getGeometryList() { return _geometryList; }
-
-    protected:
-        GeometryList _geometryList;
-    };
-
-} } // namespace osgEarth::Symbology
-
-#endif // OSGEARTHSYMBOLOGY_CONTENT_H
diff --git a/src/osgEarthSymbology/Content.cpp b/src/osgEarthSymbology/Content.cpp
deleted file mode 100644
index e69de29..0000000
diff --git a/src/osgEarthSymbology/CssUtils b/src/osgEarthSymbology/CssUtils
index 8acfb08..aa8463b 100644
--- a/src/osgEarthSymbology/CssUtils
+++ b/src/osgEarthSymbology/CssUtils
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,13 +22,44 @@
 
 #include <osgEarthSymbology/Common>
 #include <osgEarth/Config>
+#include <vector>
 
 namespace osgEarth { namespace Symbology
 {
     class OSGEARTHSYMBOLOGY_EXPORT CssUtils
     {
     public:
-        static Config readConfig( std::istream& in );
+        static void readConfig( 
+            const std::string& inputCSS,
+            const std::string& referrer,
+            ConfigSet&         output );
+
+        /**
+         * Takes a string containing CSS text, and splits it up into 
+         * multiple strings, each one containing a single style definition
+         * (still in CSS). A nameless block is named "default".
+         *
+         * Example INPUT:
+         *
+         *   s1 {
+         *      fill: #ffff00;
+         *   }
+         *   s2 {
+         *      stroke: #ffff00;
+         *      altitude-mode: absoulte;
+         *   }
+         *   {
+         *      marker: "something.flt";
+         *   }
+         *
+         * Example OUTPUT:
+         *
+         *   [0] : s1 { fill: #ffff00; }
+         *   [1] : s2 { stroke: #ffff00; altitude-mode: absolute; }
+         *   [2] : default { marker: "something.flt"; }
+         *
+         */
+        static void split( const std::string& css, std::vector<std::string>& output );
     };
 
 } } // namespace osgEarth::Features2
diff --git a/src/osgEarthSymbology/CssUtils.cpp b/src/osgEarthSymbology/CssUtils.cpp
index 6cf6fb3..795d7f4 100644
--- a/src/osgEarthSymbology/CssUtils.cpp
+++ b/src/osgEarthSymbology/CssUtils.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,19 +25,44 @@
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
-Config
-CssUtils::readConfig( std::istream& in )
+void
+CssUtils::split( const std::string& input, std::vector<std::string>& output )
 {
-    // read the entire stream into a string:
-    std::stringstream buf;
-    //std::copy( std::istreambuf_iterator<char>(in), //::istream_iterator<char>(in),
-    //    std::istreambuf_iterator<char>(),
-    //    std::ostreambuf_iterator<char>( buf ) );
+    StringTokenizer blockIzer( "{}", "" );
+    blockIzer.addQuotes( "'\"", true );
+
+    std::vector<std::string> blocks;
+    blockIzer.tokenize( input, blocks );
+
+    for( unsigned i=0; i<blocks.size(); ++i )
+    {
+        if ( startsWith( blocks[i], "{" ) )
+        {
+            output.push_back( "default { " + blocks[i] + " }" );
+        }
+        else if ( i+1 < blocks.size() )
+        {
+            output.push_back( blocks[i] + "{ " + blocks[i+1] + " }" );
+            ++i;
+        }
+    }
+}
 
-    buf << in.rdbuf();
+void
+CssUtils::readConfig( const std::string& css, const std::string& referrer, ConfigSet& output )
+{
+    ConfigSet result;
 
-    std::string css;
-	css = buf.str();
+    // if there's no brackets, assume this is a single default block.
+    std::string temp = css;
+    if ( css.find_first_of("{") == std::string::npos )
+    {
+        temp = "default { " + css + " }";
+    }
+    else if ( css.size() > 0 && css[0] == '{' )
+    {
+        temp = "default " + css;
+    }
 
     // tokenize the CSS into a config object..
     Config conf( "css" );
@@ -48,11 +73,11 @@ CssUtils::readConfig( std::istream& in )
     StringTokenizer propSetIzer( ";", "" );
     propSetIzer.addQuotes( "'\"", true );
 
-    StringTokenizer propIzer( ":", "'\"" );
-    propIzer.addQuotes( "()", true );
+    StringTokenizer propIzer( ":", "" );
+    propIzer.addQuotes( "()'\"", true );
 
     StringVector blocks;
-    blockIzer.tokenize( css, blocks );
+    blockIzer.tokenize( temp, blocks );
 
     for( unsigned i=0; i<blocks.size(); )
     {
@@ -60,6 +85,7 @@ CssUtils::readConfig( std::istream& in )
         if ( i < blocks.size() )
         {
             Config elementConf( name );
+            elementConf.setReferrer( referrer );
 
             StringVector propSet;
             propSetIzer.tokenize( blocks[i++], propSet );
@@ -71,12 +97,11 @@ CssUtils::readConfig( std::istream& in )
 
                 if ( prop.size() == 2 )
                 {
-                    elementConf.attr( prop[0] ) = prop[1];
+                    elementConf.set( prop[0], prop[1] );
                 }
             }
-            conf.add( elementConf );
+
+            output.push_back( elementConf );
         }
     }
-
-    return conf;
 }
diff --git a/src/osgEarthSymbology/Expression b/src/osgEarthSymbology/Expression
index ebd1110..6646afc 100644
--- a/src/osgEarthSymbology/Expression
+++ b/src/osgEarthSymbology/Expression
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,7 @@
 
 #include <osgEarthSymbology/Common>
 #include <osgEarth/Config>
+#include <osgEarth/URI>
 #include <osgEarth/GeoData>
 #include <osgEarth/TileKey>
 
@@ -50,6 +51,9 @@ namespace osgEarth { namespace Symbology
         /** Copy ctor. */
         NumericExpression( const NumericExpression& rhs );
 
+        /** dtor */
+        virtual ~NumericExpression() { }
+
         /** Access the expression variables. */
         const Variables& variables() const { return _vars; }
 
@@ -103,15 +107,30 @@ namespace osgEarth { namespace Symbology
         /** Construct a new expression from the infix string. */
         StringExpression( const std::string& expr );
 
+        /** Construct an expression from the infix string and a URI context. */
+        StringExpression( const std::string& expr, const URIContext& uriContext );
+
         /** Copy ctor. */
         StringExpression( const StringExpression& rhs );
 
+        /** dtor */
+        virtual ~StringExpression() { }
+
+        /** Set the infix expr. */
+        void setInfix( const std::string& infix );
+
+        /** Set the infix expr to a literal string */
+        void setLiteral( const std::string& value );
+
         /** Access the expression variables. */
         const Variables& variables() const { return _vars; }
 
         /** Set the value of a variable. */
         void set( const Variable& var, const std::string& value );
 
+        /** Set the value of a names variable if it exists */
+        void set( const std::string& varName, const std::string& value );
+
         /** Evaluate the expression. */
         const std::string& eval() const;
 
@@ -143,8 +162,6 @@ namespace osgEarth { namespace Symbology
         void init();
     };
 
-
-
 } } // namespace osgEarth::Symbology
 
 #endif // OSGEARTHSYMBOLOGY_EXPRESSION_H
diff --git a/src/osgEarthSymbology/Expression.cpp b/src/osgEarthSymbology/Expression.cpp
index 605f061..16a7cce 100644
--- a/src/osgEarthSymbology/Expression.cpp
+++ b/src/osgEarthSymbology/Expression.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -23,6 +23,8 @@
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
+#define LC "[Expression] "
+
 NumericExpression::NumericExpression( const std::string& expr ) : 
 _src  ( expr ),
 _value( 0.0 ),
@@ -76,9 +78,9 @@ NumericExpression::init()
 {
     _vars.clear();
     _rpn.clear();
-
-    StringTokenizer tokenizer( "", "'\"" );
+    StringTokenizer tokenizer( "", "" );
     tokenizer.addDelims( "[],()%*/+-", true );
+    tokenizer.addQuotes( "'\"", true );
     tokenizer.keepEmpties() = false;
 
     StringVector t;
@@ -109,6 +111,30 @@ NumericExpression::init()
         else if ( t[i] == "max" ) infix.push_back( Atom(MAX,0.0) );
         else if ( (t[i][0] >= '0' && t[i][0] <= '9') || t[i][0] == '.' )
             infix.push_back( Atom(OPERAND,as<double>(t[i],0.0)) );
+        else if ( t[i] != "," && (i == 0 || t[i-1] != "["))
+        {
+          std::string var = t[i];
+          // If this is a call to a script function, store the entire function
+          // call in the variable string
+          if (i < t.size() - 1 && t[i+1] == "(")
+          {
+            int parenCount = 0;
+            do
+            {
+              ++i;
+              var += t[i];
+
+              if (t[i] == "(")
+                parenCount++;
+              else if (t[i] == ")")
+                parenCount--;
+
+            } while (i < t.size() - 1 && parenCount > 0);
+          }
+
+          infix.push_back( Atom(VARIABLE, 0.0) );
+          _vars.push_back( Variable(var, 0) );
+        }
 
         // note: do nothing for a comma
     }
@@ -291,6 +317,15 @@ _dirty( true )
     init();
 }
 
+StringExpression::StringExpression(const std::string& expr,
+                                   const URIContext&  uriContext) :
+_src       ( expr ),
+_uriContext( uriContext ),
+_dirty     ( true )
+{
+    init();
+}
+
 StringExpression::StringExpression( const StringExpression& rhs ) :
 _src( rhs._src ),
 _vars( rhs._vars ),
@@ -302,6 +337,22 @@ _uriContext( rhs._uriContext )
     //nop
 }
 
+void
+StringExpression::setInfix( const std::string& expr )
+{
+    _src = expr;
+    _dirty = true;
+    init();
+}
+
+void
+StringExpression::setLiteral( const std::string& expr )
+{
+    _src = "\"" + expr + "\"";
+    _value = expr;
+    _dirty = false;
+}
+
 StringExpression::StringExpression( const Config& conf )
 {
     mergeConfig( conf );
@@ -311,45 +362,101 @@ StringExpression::StringExpression( const Config& conf )
 void
 StringExpression::mergeConfig( const Config& conf )
 {
-    _src = conf.value();
-    _dirty = true;
+    _src        = conf.value();
+    _uriContext = conf.referrer();
+    _dirty      = true;
 }
 
 Config
 StringExpression::getConfig() const
 {
-    return Config( "string_expression", _src );
+    Config conf( "string_expression", _src );
+    conf.setReferrer( uriContext().referrer() );
+    return conf;
 }
 
 void
 StringExpression::init()
 {
-    StringTokenizer izer("", "");
-    izer.addDelims( "[]", true );
-    izer.addQuotes( "'\"", false );
-    izer.keepEmpties() = false;
-    izer.trimTokens() = false;
-
-    StringVector t;
-    izer.tokenize( _src, t );
-    //tokenize(_src, t, "[]", "'\"", false, true, false);
-
-    // identify tokens:
-    bool invar = false;
-    for( unsigned i=0; i<t.size(); ++i )
+    bool inQuotes = false;
+    int inVar = 0;
+    int startPos = 0;
+    for (int i=0; i < (int)_src.length(); i++)
     {
-        if ( t[i] == "[" && !invar )
+      if (_src[i] == '"')
+      {
+        if (inQuotes)
         {
-            invar = true;
+          int length = i - startPos;
+          if (length > 0)
+            _infix.push_back( Atom(OPERAND, _src.substr(startPos, length)) );
+
+          inQuotes = false;
         }
-        else if ( t[i] == "]" && invar )
+        else if (!inVar)
         {
-            invar = false;
-            _infix.push_back( Atom(VARIABLE,"") );
-            _vars.push_back( Variable(t[i-1],0) );
+          inQuotes = true;
+          startPos = i + 1;
+        }
+      }
+      else if (_src[i] == '+' || _src[i] == ' ')
+      {
+        if (inVar == 1)
+        {
+          int length = i - startPos;
+
+          //Check for feature attribute access
+          if (length > 2 && _src[startPos] == '[' && _src[i - 1] == ']')
+          {
+            startPos++;
+            length -= 2;
+          }
+
+          if (length > 0)
+          {
+            std::string val = _src.substr(startPos, length);
+            _vars.push_back( Variable(val, _infix.size()) );
+            _infix.push_back( Atom(VARIABLE,val) );
+          }
+
+          inVar = 0;
+        }
+      }
+      else if ((_src[i] == '(' || _src[i] == '[') && inVar)
+      {
+        inVar++;
+      }
+      else if ((_src[i] == ')' || _src[i] == ']') && inVar > 1)
+      {
+        inVar--;
+      }
+      else
+      {
+        if (!inQuotes && !inVar)
+        {
+          inVar = 1;
+          startPos = i;
         }
-        else
-            _infix.push_back( Atom(OPERAND,t[i]) );
+      }
+    }
+
+    if (inVar == 1)
+    {
+      int length = _src.length() - startPos;
+
+      //Check for feature attribute access
+      if (length > 2 && _src[startPos] == '[' && _src[_src.length() - 1] == ']')
+      {
+        startPos++;
+        length -= 2;
+      }
+
+      if (length > 0)
+      {
+        std::string val = _src.substr(startPos, length);
+        _vars.push_back( Variable(val,_infix.size()) );
+        _infix.push_back( Atom(VARIABLE,val) );
+      }
     }
 }
 
@@ -364,6 +471,18 @@ StringExpression::set( const Variable& var, const std::string& value )
     }
 }
 
+void
+StringExpression::set( const std::string& varName, const std::string& value )
+{
+    for( Variables::const_iterator v = _vars.begin(); v != _vars.end(); ++v )
+    {
+        if ( v->first == varName )
+        {
+            set( *v, value );
+        }
+    }
+}
+
 const std::string&
 StringExpression::eval() const
 {
diff --git a/src/osgEarthSymbology/ExtrusionSymbol b/src/osgEarthSymbology/ExtrusionSymbol
index 39623b3..6e511f3 100644
--- a/src/osgEarthSymbology/ExtrusionSymbol
+++ b/src/osgEarthSymbology/ExtrusionSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -51,6 +51,9 @@ namespace osgEarth { namespace Symbology
     public:
         ExtrusionSymbol( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~ExtrusionSymbol() { }
+
         /** Height to which to extrude geometry above the footprint (for HEIGHT_REFERENCE_Z)
             or above MSL (for HEIGHT_REFERENCE_MSL) */
         optional<float>& height() { return _height; }
@@ -76,6 +79,11 @@ namespace osgEarth { namespace Symbology
         /** Name of a style describing how to symbolize the elevated rooftop */
         optional<std::string>& roofStyleName() { return _roofStyleName; }
         const optional<std::string>& roofStyleName() const { return _roofStyleName; }
+
+        /** Percentage by which to darken the color of the bottom of the walls relative
+            to the main wall color (default = 0.0, range = [0..1]) */
+        optional<float>& wallGradientPercentage() { return _wallGradientPercentage; }
+        const optional<float>& wallGradientPercentage() const { return _wallGradientPercentage; }
         
     public:
         virtual Config getConfig() const;
@@ -88,6 +96,7 @@ namespace osgEarth { namespace Symbology
         optional<HeightReference>   _heightRef;
         optional<std::string>       _wallStyleName;
         optional<std::string>       _roofStyleName;
+        optional<float>             _wallGradientPercentage;
     };
 
 } } // namespace osgEarth::Symbology
diff --git a/src/osgEarthSymbology/ExtrusionSymbol.cpp b/src/osgEarthSymbology/ExtrusionSymbol.cpp
index b6c0008..df337db 100644
--- a/src/osgEarthSymbology/ExtrusionSymbol.cpp
+++ b/src/osgEarthSymbology/ExtrusionSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,8 @@ ExtrusionSymbol::ExtrusionSymbol( const Config& conf ) :
 Symbol    ( conf ),
 _height   ( 10.0 ),
 _flatten  ( true ),
-_heightRef( HEIGHT_REFERENCE_Z )
+_heightRef( HEIGHT_REFERENCE_Z ),
+_wallGradientPercentage( 0.0f )
 {
     if ( !conf.empty() )
         mergeConfig(conf);
@@ -43,6 +44,7 @@ ExtrusionSymbol::getConfig() const
     conf.addIfSet   ( "height_reference", "msl", _heightRef, HEIGHT_REFERENCE_MSL );
     conf.addIfSet   ( "wall_style", _wallStyleName );
     conf.addIfSet   ( "roof_style", _roofStyleName );
+    conf.addIfSet   ( "wall_gradient", _wallGradientPercentage );
     return conf;
 }
 
@@ -56,4 +58,5 @@ ExtrusionSymbol::mergeConfig( const Config& conf )
     conf.getIfSet   ( "height_reference", "msl", _heightRef, HEIGHT_REFERENCE_MSL );
     conf.getIfSet   ( "wall_style", _wallStyleName );
     conf.getIfSet   ( "roof_style", _roofStyleName );
+    conf.getIfSet   ( "wall_gradient", _wallGradientPercentage );
 }
diff --git a/src/osgEarthSymbology/GEOS b/src/osgEarthSymbology/GEOS
index a243454..09787c6 100644
--- a/src/osgEarthSymbology/GEOS
+++ b/src/osgEarthSymbology/GEOS
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/GEOS.cpp b/src/osgEarthSymbology/GEOS.cpp
index 6ff2c09..5924d9d 100644
--- a/src/osgEarthSymbology/GEOS.cpp
+++ b/src/osgEarthSymbology/GEOS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -108,6 +108,8 @@ import( const Symbology::Geometry* input, const geom::GeometryFactory* f )
         {
             switch( input->getType() )
             {
+            case Symbology::Geometry::TYPE_UNKNOWN: break;
+            case Symbology::Geometry::TYPE_MULTI: break;
             case Symbology::Geometry::TYPE_POINTSET:
                 seq = vec3dArray2CoordSeq( input, false, f->getCoordinateSequenceFactory() );
                 if ( seq ) output = f->createPoint( seq );
@@ -174,6 +176,7 @@ GEOSUtils::importGeometry( const Symbology::Geometry* input )
         output = import( input, f );
 
         // if output is ok, it will have a pointer to f. this is probably a leak.
+        // TODO: Check whether this is a leak!! -gw
         if ( !output )
             delete f;
     }
@@ -196,7 +199,7 @@ exportPolygon( const geom::Polygon* input )
         }
         output->rewind( Symbology::Ring::ORIENTATION_CCW );
 
-        for( int k=0; k < input->getNumInteriorRing(); k++ )
+        for( unsigned k=0; k < input->getNumInteriorRing(); k++ )
         {
             const geom::LineString* inner = input->getInteriorRingN( k );
             const geom::CoordinateSequence* s = inner->getCoordinates();
diff --git a/src/osgEarthSymbology/Geometry b/src/osgEarthSymbology/Geometry
index 98c60b3..1a7e947 100644
--- a/src/osgEarthSymbology/Geometry
+++ b/src/osgEarthSymbology/Geometry
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 
 #include <osgEarthSymbology/Common>
 #include <osgEarth/GeoData>
-#include <osgEarth/Utils>
+#include <osgEarth/Containers>
 #include <vector>
 #include <stack>
 
@@ -65,6 +65,12 @@ namespace osgEarth { namespace Symbology
             TYPE_MULTI
         };
 
+        enum Orientation {
+            ORIENTATION_CCW,
+            ORIENTATION_CW,
+            ORIENTATION_DEGENERATE
+        };
+
         static std::string toString( Type t ) {
             return 
                 t == TYPE_POINTSET ?   "pointset" :
@@ -75,6 +81,7 @@ namespace osgEarth { namespace Symbology
                 "unknown";
         }
 
+        /** Creates a geometry from a vector array */
         static Geometry* create( Type type, const Vec3dVector* toCopy );
 
         // true if osgEarth is compiled for buffering
@@ -161,6 +168,18 @@ namespace osgEarth { namespace Symbology
          * Reverses a call the localize(), given the same offset returned by that method.
          */
         void delocalize( const osg::Vec3d& offset );
+        
+        /**
+         * Reorders the points in the geometry so that, if the last point was connected
+         * to the first in a ring, they would be would in the specified direction.
+         */
+        virtual void rewind( Orientation ori );
+
+        /**
+         * Get the winding orientation of the geometry (if you consider the last point
+         * to connect back to the first in a ring.)
+         */
+        Orientation getOrientation() const;
 
     public:
         virtual Type getType() const =0;
@@ -169,6 +188,16 @@ namespace osgEarth { namespace Symbology
 
         virtual Geometry* clone() const { return cloneAs(getType()); }
 
+        void push_back(const osg::Vec3d& v ) {
+            osgEarth::MixinVector<osg::Vec3d,osg::Referenced>::push_back(v); }
+        void push_back(double x, double y) { 
+            osgEarth::MixinVector<osg::Vec3d,osg::Referenced>::push_back(osg::Vec3d(x,y,0.)); }
+        void push_back(double x, double y, double z) { 
+            osgEarth::MixinVector<osg::Vec3d,osg::Referenced>::push_back(osg::Vec3d(x,y,z)); }
+
+        /** dtor */
+        virtual ~Geometry() { }
+
     protected:
         Geometry( int capacity =0 );
         Geometry( const Geometry& rhs );
@@ -188,6 +217,9 @@ namespace osgEarth { namespace Symbology
         PointSet( const Vec3dVector* toCopy ) : Geometry( toCopy ) { }
         PointSet( const PointSet& rhs );
 
+        /** dtor */
+        virtual ~PointSet() { }
+
     public:
         virtual Type getType() const { return Geometry::TYPE_POINTSET; }
     };
@@ -202,6 +234,9 @@ namespace osgEarth { namespace Symbology
         LineString( const LineString& rhs );
         LineString( const Vec3dVector* toCopy );
 
+        /** dtor */
+        virtual ~LineString() { }
+
         double getLength() const;
         bool getSegment(double length, osg::Vec3d& start, osg::Vec3d& end);
 
@@ -218,23 +253,16 @@ namespace osgEarth { namespace Symbology
     class OSGEARTHSYMBOLOGY_EXPORT Ring : public Geometry
     {
     public:
-        enum Orientation {
-            ORIENTATION_CCW,
-            ORIENTATION_CW,
-            ORIENTATION_DEGENERATE
-        };
-
-    public:
         Ring( int capacity =0 ) : Geometry( capacity ) { }
         Ring( const Ring& ring );
         Ring( const Vec3dVector* toCopy );
 
+        /** dtor */
+        virtual ~Ring() { }
+
         // override
         virtual Geometry* cloneAs( const Geometry::Type& newType ) const;
 
-        // gets the ring's orientation
-        Orientation getOrientation() const;
-
         // tests whether the point falls withing the ring
         virtual bool contains2D( double x, double y ) const;
 
@@ -243,9 +271,9 @@ namespace osgEarth { namespace Symbology
 
         // ensures that the first and last points are not idential.
         virtual void open();
-        
-        // opens and rewinds the ring to the specified orientation.
-        void rewind( Orientation ori );
+
+        // opens and winds the ring in the specified direction
+        virtual void rewind( Orientation ori );
 
     public:
         virtual Type getType() const { return Geometry::TYPE_RING; }
@@ -265,6 +293,9 @@ namespace osgEarth { namespace Symbology
         Polygon( int capacity =0 ) : Ring( capacity ) { }
         Polygon( const Polygon& rhs );
         Polygon( const Vec3dVector* toCopy );
+
+        /** dtor */
+        virtual ~Polygon() { }
         
     public:
         virtual Type getType() const { return Geometry::TYPE_POLYGON; }
@@ -295,6 +326,9 @@ namespace osgEarth { namespace Symbology
         MultiGeometry( const GeometryCollection& parts );
         MultiGeometry( const MultiGeometry& rhs );
 
+        /** dtor */
+        virtual ~MultiGeometry() { }
+
     public:
         virtual Type getType() const { return Geometry::TYPE_MULTI; }        
         virtual Type getComponentType() const;
@@ -307,11 +341,14 @@ namespace osgEarth { namespace Symbology
         virtual Geometry* cloneAs( const Geometry::Type& newType ) const;
         virtual bool isValid() const;
         virtual Bounds getBounds() const;
+        virtual void rewind( Orientation ori );
 
     public:
         GeometryCollection& getComponents() { return _parts; }
         const GeometryCollection& getComponents() const { return _parts; }
 
+        Geometry* add( Geometry* geom ) { _parts.push_back(geom); return geom; }
+
     protected:
         GeometryCollection _parts;
     };
@@ -383,7 +420,7 @@ namespace osgEarth { namespace Symbology
     class OSGEARTHSYMBOLOGY_EXPORT ConstSegmentIterator
     {
     public:
-        ConstSegmentIterator( const Geometry* verts, bool closedLoop );        
+        ConstSegmentIterator( const Geometry* verts, bool forceClosedLoop =false );        
         bool hasMore() const { return !_done; }
         Segment next();
 
diff --git a/src/osgEarthSymbology/Geometry.cpp b/src/osgEarthSymbology/Geometry.cpp
index 06705e7..ef1451c 100644
--- a/src/osgEarthSymbology/Geometry.cpp
+++ b/src/osgEarthSymbology/Geometry.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -166,7 +166,7 @@ Geometry::buffer(double distance,
         //     This seems to only effect the Linux build, Windows works fine
         int geosQuadSegs = params._cornerSegs > 0 
             ? params._cornerSegs
-            : 8;//buffer::BufferParameters::DEFAULT_QUADRANT_SEGMENTS;
+            : 8; //buffer::BufferParameters::DEFAULT_QUADRANT_SEGMENTS;
 
         geom::Geometry* outGeom = NULL;
 
@@ -176,13 +176,21 @@ Geometry::buffer(double distance,
         geosBufferParams.setJoinStyle( geosJoinStyle );
         buffer::BufferBuilder bufBuilder( geosBufferParams );
 
-        if (params._singleSided)
+        try
         {
-            outGeom = bufBuilder.bufferLineSingleSided(inGeom, distance, params._leftSide );
+            if (params._singleSided)
+            {
+                outGeom = bufBuilder.bufferLineSingleSided(inGeom, distance, params._leftSide );
+            }
+            else
+            {
+                outGeom = bufBuilder.buffer(inGeom, distance );
+            }
         }
-        else
+        catch( const util::TopologyException& ex )
         {
-            outGeom = bufBuilder.buffer(inGeom, distance );
+            OE_WARN << LC << "GEOS buffer: " << ex.what() << std::endl;
+            outGeom = 0L;
         }
 
         if ( outGeom )
@@ -190,10 +198,6 @@ Geometry::buffer(double distance,
             output = GEOSUtils::exportGeometry( outGeom );
             outGeom->getFactory()->destroyGeometry( outGeom );
         }
-        else
-        {
-            OE_INFO << LC << "Buffer: no output geometry" << std::endl;
-        }
 
         inGeom->getFactory()->destroyGeometry( inGeom );
     }
@@ -346,6 +350,64 @@ Geometry::delocalize( const osg::Vec3d& offset )
     }
 }
 
+void 
+Geometry::rewind( Orientation orientation )
+{
+    Orientation current = getOrientation();
+    if ( current != orientation && current != ORIENTATION_DEGENERATE && orientation != ORIENTATION_DEGENERATE )
+    {
+        std::reverse( begin(), end() );
+    }
+}
+
+Geometry::Orientation 
+Geometry::getOrientation() const
+{
+    // adjust for a non-open ring:
+    int n = size();
+    while( n > 0 && front() == back() )
+        n--;
+
+    if ( n < 3 )
+        return Geometry::ORIENTATION_DEGENERATE;
+
+    // copy the open vec:
+    std::vector<osg::Vec3d> v;
+    v.reserve( n );
+    std::copy( begin(), begin()+n, std::back_inserter(v) );
+
+    int rmin = 0;
+    double xmin = v[0].x();
+    double ymin = v[0].y();
+    v[0].z() = 0;
+    for( int i=1; i<n; ++i ) {
+        double x = v[i].x();
+        double y = v[i].y();
+        v[i].z() = 0;
+        if ( y > ymin )
+            continue;
+        if ( y == ymin ) {
+            if (x  < xmin )
+                continue;
+        }
+        rmin = i;
+        xmin = x;
+        ymin = y;
+    }
+
+    int rmin_less_1 = rmin-1 >= 0 ? rmin-1 : n-1;
+    int rmin_plus_1 = rmin+1 < n ? rmin+1 : 0;
+
+    osg::Vec3 in = v[rmin] - v[rmin_less_1]; in.normalize();
+    osg::Vec3 out = v[rmin_plus_1] - v[rmin]; out.normalize();
+    osg::Vec3 cross = in ^ out;
+
+    return
+        cross.z() < 0.0 ? Geometry::ORIENTATION_CW :
+        cross.z() > 0.0 ? Geometry::ORIENTATION_CCW :
+        Geometry::ORIENTATION_DEGENERATE;
+}
+
 //----------------------------------------------------------------------------
 
 PointSet::PointSet( const PointSet& rhs ) :
@@ -427,54 +489,6 @@ Ring::cloneAs( const Geometry::Type& newType ) const
     else return Geometry::cloneAs( newType );
 }
 
-Ring::Orientation 
-Ring::getOrientation() const
-{
-    // adjust for a non-open ring:
-    int n = size();
-    while( n > 0 && front() == back() )
-        n--;
-
-    if ( n < 3 )
-        return Ring::ORIENTATION_DEGENERATE;
-
-    // copy the open vec:
-    std::vector<osg::Vec3d> v;
-    v.reserve( n );
-    std::copy( begin(), begin()+n, std::back_inserter(v) );
-
-    int rmin = 0;
-    double xmin = v[0].x();
-    double ymin = v[0].y();
-    v[0].z() = 0;
-    for( int i=1; i<n; ++i ) {
-        double x = v[i].x();
-        double y = v[i].y();
-        v[i].z() = 0;
-        if ( y > ymin )
-            continue;
-        if ( y == ymin ) {
-            if (x  < xmin )
-                continue;
-        }
-        rmin = i;
-        xmin = x;
-        ymin = y;
-    }
-
-    int rmin_less_1 = rmin-1 >= 0 ? rmin-1 : n-1;
-    int rmin_plus_1 = rmin+1 < n ? rmin+1 : 0;
-
-    osg::Vec3 in = v[rmin] - v[rmin_less_1]; in.normalize();
-    osg::Vec3 out = v[rmin_plus_1] - v[rmin]; out.normalize();
-    osg::Vec3 cross = in ^ out;
-
-    return
-        cross.z() < 0.0 ? Ring::ORIENTATION_CW :
-        cross.z() > 0.0 ? Ring::ORIENTATION_CCW :
-        Ring::ORIENTATION_DEGENERATE;
-}
-
 // ensures that the first and last points are not idential.
 void 
 Ring::open()
@@ -505,11 +519,7 @@ void
 Ring::rewind( Orientation orientation )
 {
     open();
-    Orientation current = getOrientation();
-    if ( current != orientation && current != ORIENTATION_DEGENERATE && orientation != ORIENTATION_DEGENERATE )
-    {
-        std::reverse( begin(), end() );
-    }
+    Geometry::rewind( orientation );
 }
 
 // point-in-polygon test
@@ -658,6 +668,16 @@ MultiGeometry::isValid() const
     return valid;
 }
 
+// opens and rewinds the polygon to the specified orientation.
+void 
+MultiGeometry::rewind( Orientation orientation )
+{
+    for( GeometryCollection::const_iterator i = _parts.begin(); i != _parts.end(); ++i )
+    {
+        i->get()->rewind( orientation );
+    }
+}
+
 //----------------------------------------------------------------------------
 
 GeometryIterator::GeometryIterator( Geometry* geom, bool holes ) :
@@ -776,12 +796,17 @@ ConstGeometryIterator::fetchNext()
 
 //----------------------------------------------------------------------------
 
-ConstSegmentIterator::ConstSegmentIterator( const Geometry* verts, bool closeLoop ) :
+ConstSegmentIterator::ConstSegmentIterator( const Geometry* verts, bool forceClosedLoop ) :
 _verts(&verts->asVector()),
-_closeLoop(closeLoop),
+_closeLoop(forceClosedLoop),
 _iter(verts->begin())
 {
     _done = _verts->size() < 2;
+
+    if ( !forceClosedLoop )
+    {
+        _closeLoop = dynamic_cast<const Ring*>(verts) != 0L;
+    }
 }
 
 Segment
diff --git a/src/osgEarthSymbology/GeometryFactory b/src/osgEarthSymbology/GeometryFactory
index 7506c3d..0b8a925 100644
--- a/src/osgEarthSymbology/GeometryFactory
+++ b/src/osgEarthSymbology/GeometryFactory
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,16 +43,21 @@ namespace osgEarth { namespace Symbology
          */
         GeometryFactory( const SpatialReference* srs =0L );
 
+        /** dtor */
+        virtual ~GeometryFactory() { }
+
         /**
          * Creates a circle geometry.
          * @param center Center point (must be in map SRS if a map was provided in ctor)
          * @param radius Circle radius
          * @param numSegments Number of circumference segments, or zero to automatically calculate it
+         * @param geomToUse Use this geometry instead of creating a Polygon.
          */
         Geometry* createCircle( 
             const osg::Vec3d& center,
-            const Linear&     radius,
-            unsigned          numSegments =0);
+            const Distance&   radius,
+            unsigned          numSegments =0,
+            Geometry*         geomToUse   =0L);
 
         /**
          * Creates an arc geometry.
@@ -64,10 +69,11 @@ namespace osgEarth { namespace Symbology
          */
         Geometry* createArc(
             const osg::Vec3d& center,
-            const Linear&     radius,
-            const Angular&    startAngle,
-            const Angular&    endAngle,
-            unsigned          numSegments =0);
+            const Distance&   radius,
+            const Angle&      startAngle,
+            const Angle&      endAngle,
+            unsigned          numSegments =0,
+            Geometry*         geomToUse   =0L);
 
         /**
          * Creates a ellipse geometry.
@@ -76,13 +82,26 @@ namespace osgEarth { namespace Symbology
          * @param radiusMinor Minor radius (Y-axis) length
          * @param rotationAngle with respect to the X-axis
          * @param numSegments Number of circumference segments, or zero to automatically calculate it
+         * @param geomToUse Use this geometry instead of creating a Polygon.
          */
         Geometry* createEllipse(
             const osg::Vec3d& center,
-            const Linear&     radiusMajor,
-            const Linear&     radiusMinor,
-            const Angular&    rotationAngle,
-            unsigned          numSegments =0);
+            const Distance&   radiusMajor,
+            const Distance&   radiusMinor,
+            const Angle&      rotationAngle,
+            unsigned          numSegments =0,
+            Geometry*         geomToUse   =0L);
+
+        /**
+         * Creates a rectangle geometry
+         * @param center Center point (must be in map SRS if the map was provided in ctor)
+         * @param width The width of the rectangle
+         * @param height The height of the rectangle
+         */
+        Geometry* createRectangle(
+            const osg::Vec3d& center,
+            const Distance&   width,
+            const Distance&   height );
 
     protected:
 
diff --git a/src/osgEarthSymbology/GeometryFactory.cpp b/src/osgEarthSymbology/GeometryFactory.cpp
index 13bd352..fac103e 100644
--- a/src/osgEarthSymbology/GeometryFactory.cpp
+++ b/src/osgEarthSymbology/GeometryFactory.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,10 +32,11 @@ _srs( srs )
 
 Geometry*
 GeometryFactory::createCircle(const osg::Vec3d& center,
-                              const Linear&     radius,
-                              unsigned          numSegments)
+                              const Distance&   radius,
+                              unsigned          numSegments,
+                              Geometry*         geomToUse)
 {
-    Polygon* geom = new Polygon();
+    Geometry* geom = geomToUse ? geomToUse : new Polygon();
 
     if ( numSegments == 0 )
     {
@@ -54,7 +55,7 @@ GeometryFactory::createCircle(const osg::Vec3d& center,
         double lon = osg::DegreesToRadians(center.x());
         double rM  = radius.as(Units::METERS);
 
-        for( unsigned i=0; i<numSegments; ++i )
+        for( int i=numSegments-1; i >= 0; --i )
         {
             double angle = segAngle * (double)i;
             double clat, clon;
@@ -67,7 +68,7 @@ GeometryFactory::createCircle(const osg::Vec3d& center,
     {
         double rM = radius.as(Units::METERS);
 
-        for( unsigned i=0; i<numSegments; ++i )
+        for( int i=numSegments-1; i >= 0; --i )
         {
             double angle = segAngle * (double)i;
             double x, y;
@@ -82,12 +83,13 @@ GeometryFactory::createCircle(const osg::Vec3d& center,
 
 Geometry*
 GeometryFactory::createArc(const osg::Vec3d& center,
-                           const Linear&     radius,
-                           const Angular&    start,
-                           const Angular&    end,
-                           unsigned          numSegments)
+                           const Distance&   radius,
+                           const Angle&      start,
+                           const Angle&      end,
+                           unsigned          numSegments,
+                           Geometry*         geomToUse)
 {
-    Geometry* geom = new LineString();
+    Geometry* geom = geomToUse? geomToUse : new LineString();
 
     if ( numSegments == 0 )
     {
@@ -99,6 +101,10 @@ GeometryFactory::createArc(const osg::Vec3d& center,
 
     double startRad = std::min( start.as(Units::RADIANS), end.as(Units::RADIANS) );
     double endRad   = std::max( start.as(Units::RADIANS), end.as(Units::RADIANS) );
+
+    if ( endRad == startRad )
+        endRad += 2*osg::PI;
+
     double span     = endRad - startRad;    
     double step     = span/(double)numSegments;
 
@@ -109,7 +115,7 @@ GeometryFactory::createArc(const osg::Vec3d& center,
         double lon = osg::DegreesToRadians(center.x());
         double rM  = radius.as(Units::METERS);
 
-        for( unsigned i=0; i<=numSegments; ++i )
+        for( int i=numSegments-1; i >= 0; --i )
         {
             double angle = startRad + step*(double)i;
             double clat, clon;
@@ -122,7 +128,7 @@ GeometryFactory::createArc(const osg::Vec3d& center,
     {
         double rM = radius.as(Units::METERS);
 
-        for( unsigned i=0; i<=numSegments; ++i )
+        for( int i=numSegments-1; i >= 0; --i )
         {
             double angle = startRad + step*(double)i;
             double x, y;
@@ -132,17 +138,20 @@ GeometryFactory::createArc(const osg::Vec3d& center,
         }
     }
 
+    geom->rewind(Geometry::ORIENTATION_CCW);
+
     return geom;
 }
 
 Geometry*
 GeometryFactory::createEllipse(const osg::Vec3d& center,
-                               const Linear&     radiusMajor,
-                               const Linear&     radiusMinor,
-                               const Angular&    rotationAngle,
-                               unsigned          numSegments)
+                               const Distance&   radiusMajor,
+                               const Distance&   radiusMinor,
+                               const Angle&      rotationAngle,
+                               unsigned          numSegments,
+                               Geometry*         geomToUse)
 {
-    Polygon* geom = new Polygon();
+    Geometry* geom = geomToUse ? geomToUse : new Polygon();
 
     if ( numSegments == 0 )
     {
@@ -199,3 +208,50 @@ GeometryFactory::createEllipse(const osg::Vec3d& center,
 
     return geom;
 }
+
+Geometry*
+GeometryFactory::createRectangle(const osg::Vec3d& center,
+                                 const Distance&   width,
+                                 const Distance&   height )
+{
+    Geometry* geom = new Polygon();
+    
+    if ( _srs.valid() && _srs->isGeographic() )
+    {
+        double earthRadius = _srs->getEllipsoid()->getRadiusEquator();
+        double lat = osg::DegreesToRadians(center.y());
+        double lon = osg::DegreesToRadians(center.x());
+        double halfWidthMeters  = width.as(Units::METERS) / 2.0;
+        double halfHeightMeters  = height.as(Units::METERS) / 2.0;   
+
+        double eastLon, eastLat;
+        double westLon, westLat;
+        double northLon, northLat;
+        double southLon, southLat;
+        
+        GeoMath::destination( lat, lon, osg::DegreesToRadians( 90.0 ), halfWidthMeters, eastLat, eastLon, earthRadius );
+        GeoMath::destination( lat, lon, osg::DegreesToRadians( -90.0 ), halfWidthMeters, westLat, westLon, earthRadius );
+        GeoMath::destination( lat, lon, osg::DegreesToRadians( 0.0 ),  halfHeightMeters, northLat, northLon, earthRadius );
+        GeoMath::destination( lat, lon, osg::DegreesToRadians( 180.0 ), halfHeightMeters, southLat, southLon, earthRadius );
+
+
+        geom->push_back( osg::RadiansToDegrees( westLon ), osg::RadiansToDegrees( southLat ), center.z());
+        geom->push_back( osg::RadiansToDegrees( eastLon ), osg::RadiansToDegrees( southLat ), center.z());
+        geom->push_back( osg::RadiansToDegrees( eastLon ), osg::RadiansToDegrees( northLat ), center.z());
+        geom->push_back( osg::RadiansToDegrees( westLon ), osg::RadiansToDegrees( northLat ), center.z());        
+    }
+
+    else
+    {
+        double halfWidthMeters = width.as(Units::METERS) / 2.0;
+        double halfHeightMeters = height.as(Units::METERS) / 2.0;
+
+        
+        geom->push_back( center.x() - halfWidthMeters, center.y() - halfHeightMeters, center.z());
+        geom->push_back( center.x() + halfWidthMeters, center.y() - halfHeightMeters, center.z());
+        geom->push_back( center.x() + halfWidthMeters, center.y() + halfHeightMeters, center.z());
+        geom->push_back( center.x() - halfWidthMeters, center.y() + halfHeightMeters, center.z());        
+    }
+
+    return geom;
+}
diff --git a/src/osgEarthSymbology/GeometryRasterizer b/src/osgEarthSymbology/GeometryRasterizer
index 56ad407..888cdfd 100644
--- a/src/osgEarthSymbology/GeometryRasterizer
+++ b/src/osgEarthSymbology/GeometryRasterizer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,9 @@ namespace osgEarth { namespace Symbology
     public:
         GeometryRasterizer( int width, int height, const Style& style =Style() );
 
+        /** dtor */
+        virtual ~GeometryRasterizer() { }
+
         /** draws the geometry to the image. */
         void draw( const Geometry* geom, const osg::Vec4f& color =osg::Vec4f(1,1,1,1) );
 
diff --git a/src/osgEarthSymbology/GeometryRasterizer.cpp b/src/osgEarthSymbology/GeometryRasterizer.cpp
index dbb047c..7ffd668 100644
--- a/src/osgEarthSymbology/GeometryRasterizer.cpp
+++ b/src/osgEarthSymbology/GeometryRasterizer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/IconResource b/src/osgEarthSymbology/IconResource
new file mode 100644
index 0000000..dcf7047
--- /dev/null
+++ b/src/osgEarthSymbology/IconResource
@@ -0,0 +1,57 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_ICON_RESOURCE_H
+#define OSGEARTHSYMBOLOGY_ICON_RESOURCE_H 1
+
+#include <osgEarthSymbology/Common>
+#include <osgEarthSymbology/InstanceResource>
+#include <osgEarth/URI>
+
+namespace osgEarth { namespace Symbology
+{
+    using namespace osgEarth;
+
+    /**
+     * A resource that materializes an InstanceSymbol, which is a single-point object
+     * that resolves to an osg::Node. Instances are usually used for point-model
+     * substitution.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT IconResource : public InstanceResource
+    {
+    public:
+        /** Constructs a new resource. */
+        IconResource( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~IconResource() { }
+
+    public: // serialization methods
+
+        virtual Config getConfig() const;
+        void mergeConfig( const Config& conf );
+
+    protected: // InstanceResource
+
+        virtual osg::Node* createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const;
+    };
+
+} } // namespace osgEarth::Symbology
+
+#endif // OSGEARTHSYMBOLOGY_ICON_RESOURCE_H
diff --git a/src/osgEarthSymbology/IconResource.cpp b/src/osgEarthSymbology/IconResource.cpp
new file mode 100644
index 0000000..fc40972
--- /dev/null
+++ b/src/osgEarthSymbology/IconResource.cpp
@@ -0,0 +1,135 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/IconResource>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ImageUtils>
+
+#include <osg/AutoTransform>
+#include <osg/Depth>
+#include <osg/Geometry>
+#include <osg/TextureRectangle>
+#include <osg/Program>
+
+#define LC "[IconResource] "
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+//---------------------------------------------------------------------------
+
+namespace
+{
+    osg::Node* buildIconModel(osg::Image* image)
+    {
+        float width = image->s();
+        float height = image->t();
+
+        osg::Geometry* geometry = new osg::Geometry;
+        geometry->setUseVertexBufferObjects(true);
+
+        osg::Vec3Array* verts = new osg::Vec3Array(4);
+        (*verts)[0] = osg::Vec3(-width/2.0f, -height/2.0, 0.0f);
+        (*verts)[1] = osg::Vec3(width/2.0f, -height/2.0, 0.0f);
+        (*verts)[2] = osg::Vec3(width/2.0f, height/2.0, 0.0f);
+        (*verts)[3] = osg::Vec3(-width/2.0f,height/2.0, 0.0f);
+        geometry->setVertexArray( verts );
+
+        bool flip = image->getOrigin()==osg::Image::TOP_LEFT;
+
+        osg::Vec2Array* texcoords = new osg::Vec2Array(4);
+        (*texcoords)[0].set(0.0f,flip ? height-1.0f : 0.0f);
+        (*texcoords)[1].set(width-1.0f,flip ? height-1.0f : 0.0f);
+        (*texcoords)[2].set(width-1.0f,flip ? 0.0 : height-1.0f);
+        (*texcoords)[3].set(0.0f,flip ? 0.0 : height-1.0f);
+        geometry->setTexCoordArray(0, texcoords);
+
+        osg::Vec4Array* colors = new osg::Vec4Array(1);
+        (*colors)[0].set(1,1,1,1);
+        geometry->setColorArray( colors );
+        geometry->setColorBinding( osg::Geometry::BIND_OVERALL );
+
+        geometry->addPrimitiveSet( new osg::DrawArrays(GL_QUADS, 0, 4));
+
+        osg::StateSet* stateSet = geometry->getOrCreateStateSet();
+
+        osg::TextureRectangle* texture = new osg::TextureRectangle( image );
+        stateSet->setTextureAttributeAndModes(0, texture, osg::StateAttribute::ON);
+
+        stateSet->setMode( GL_BLEND, 1 );
+        stateSet->setRenderBinDetails( 95, "RenderBin" );
+        stateSet->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS,false), 1 );
+
+        osg::Geode* geode = new osg::Geode;
+        geode->addDrawable( geometry );
+
+        osg::AutoTransform* at = new osg::AutoTransform;
+        at->setAutoScaleToScreen( true );
+        at->setAutoRotateMode( osg::AutoTransform::ROTATE_TO_SCREEN );
+        at->addChild( geode );
+        return at;
+    }
+}
+
+//---------------------------------------------------------------------------
+
+IconResource::IconResource( const Config& conf ) :
+InstanceResource( conf )
+{
+    mergeConfig( conf );
+}
+
+void
+IconResource::mergeConfig( const Config& conf )
+{
+    //nop
+}
+
+Config
+IconResource::getConfig() const
+{
+    Config conf = Resource::getConfig();
+    conf.key() = "icon";
+    //nop
+    return conf;
+}
+
+osg::Node*
+IconResource::createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const
+{
+    osg::Node* node = 0L;
+
+    ReadResult r = uri.readObject( dbOptions );
+    if ( r.succeeded() )
+    {
+        if ( r.getImage() )
+        {
+            node = buildIconModel( r.releaseImage() );
+        }
+    }
+
+    else // failing that, fall back on the old encoding format..
+    {
+        StringVector tok;
+        StringTokenizer( *uri, tok, "()" );
+        if (tok.size() >= 2)
+            return createNodeFromURI( URI(tok[1]), dbOptions );
+    }
+
+    return node;
+}
diff --git a/src/osgEarthSymbology/IconSymbol b/src/osgEarthSymbology/IconSymbol
new file mode 100644
index 0000000..66a1ac9
--- /dev/null
+++ b/src/osgEarthSymbology/IconSymbol
@@ -0,0 +1,86 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_ICON_SYMBOL_H
+#define OSGEARTHSYMBOLOGY_ICON_SYMBOL_H 1
+
+#include <osgEarth/Common>
+#include <osgEarthSymbology/InstanceSymbol>
+
+namespace osgEarth { namespace Symbology
+{
+    class InstanceResource;
+
+    /**
+     * Represents a 2D icon for instancing
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT IconSymbol : public InstanceSymbol
+    {
+    public:
+        // note: these are similar to the values in osgText::Text::AlignmentType
+        enum Alignment {
+            ALIGN_LEFT_TOP,
+            ALIGN_LEFT_CENTER,
+            ALIGN_LEFT_BOTTOM,
+
+            ALIGN_CENTER_TOP,
+            ALIGN_CENTER_CENTER,
+            ALIGN_CENTER_BOTTOM,
+
+            ALIGN_RIGHT_TOP,
+            ALIGN_RIGHT_CENTER,
+            ALIGN_RIGHT_BOTTOM,
+        };
+
+    public:
+        IconSymbol( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~IconSymbol() { }
+
+        /** Alignment of the marker relative to center pixels */
+        optional<Alignment>& alignment() { return _alignment; }
+        const optional<Alignment>& alignment() const { return _alignment; }
+
+        /** Heading. Semantically this differs from an model's heading */
+        optional<NumericExpression>& heading() { return _heading; }
+        const optional<NumericExpression>& heading() const { return _heading; }
+        
+    public: // non-serialized properties (for programmatic use only)
+
+        /** Explicit image to use for 2D icon placemet */
+        void setImage( osg::Image* image ) { _image = image; }
+        osg::Image* getImage( unsigned maxSize =INT_MAX ) const;
+
+    public:
+        virtual Config getConfig() const;
+        virtual void mergeConfig( const Config& conf );
+
+    public: // InstanceSymbol
+        virtual InstanceResource* createResource() const;
+
+    protected:
+        optional<Alignment>              _alignment;
+        optional<NumericExpression>      _heading;
+        mutable osg::ref_ptr<osg::Image> _image;
+    };
+
+} } // namespace osgEarth::Symbology
+
+#endif
diff --git a/src/osgEarthSymbology/IconSymbol.cpp b/src/osgEarthSymbology/IconSymbol.cpp
new file mode 100644
index 0000000..144ce8a
--- /dev/null
+++ b/src/osgEarthSymbology/IconSymbol.cpp
@@ -0,0 +1,121 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/IconSymbol>
+#include <osgEarthSymbology/IconResource>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ImageUtils>
+#include <osgDB/Options>
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+IconSymbol::IconSymbol( const Config& conf ) :
+InstanceSymbol( conf ),
+_alignment    ( ALIGN_CENTER_BOTTOM ),
+_heading      ( NumericExpression(0.0) )
+{
+    mergeConfig( conf );
+}
+
+Config 
+IconSymbol::getConfig() const
+{
+    Config conf = InstanceSymbol::getConfig();
+    conf.key() = "icon";
+
+    conf.addIfSet( "alignment", "left_top",      _alignment, ALIGN_LEFT_TOP );
+    conf.addIfSet( "alignment", "left_center",   _alignment, ALIGN_LEFT_CENTER );
+    conf.addIfSet( "alignment", "left_bottom",   _alignment, ALIGN_LEFT_BOTTOM );
+    conf.addIfSet( "alignment", "center_top",    _alignment, ALIGN_CENTER_TOP );
+    conf.addIfSet( "alignment", "center_center", _alignment, ALIGN_CENTER_CENTER );
+    conf.addIfSet( "alignment", "center_bottom", _alignment, ALIGN_CENTER_BOTTOM );
+    conf.addIfSet( "alignment", "right_top",     _alignment, ALIGN_RIGHT_TOP );
+    conf.addIfSet( "alignment", "right_center",  _alignment, ALIGN_RIGHT_CENTER );
+    conf.addIfSet( "alignment", "right_bottom",  _alignment, ALIGN_RIGHT_BOTTOM );
+
+    conf.addObjIfSet( "heading", _heading );
+
+    conf.addNonSerializable( "IconSymbol::image", _image.get() );
+    return conf;
+}
+
+void 
+IconSymbol::mergeConfig( const Config& conf )
+{
+    conf.getIfSet( "alignment", "left_top",      _alignment, ALIGN_LEFT_TOP );
+    conf.getIfSet( "alignment", "left_center",   _alignment, ALIGN_LEFT_CENTER );
+    conf.getIfSet( "alignment", "left_bottom",   _alignment, ALIGN_LEFT_BOTTOM );
+    conf.getIfSet( "alignment", "center_top",    _alignment, ALIGN_CENTER_TOP );
+    conf.getIfSet( "alignment", "center_center", _alignment, ALIGN_CENTER_CENTER );
+    conf.getIfSet( "alignment", "center_bottom", _alignment, ALIGN_CENTER_BOTTOM );
+    conf.getIfSet( "alignment", "right_top",     _alignment, ALIGN_RIGHT_TOP );
+    conf.getIfSet( "alignment", "right_center",  _alignment, ALIGN_RIGHT_CENTER );
+    conf.getIfSet( "alignment", "right_bottom",  _alignment, ALIGN_RIGHT_BOTTOM );
+
+    conf.getObjIfSet( "heading", _heading );
+
+    _image = conf.getNonSerializable<osg::Image>( "IconSymbol::image" );
+}
+
+namespace
+{
+    static Threading::Mutex s_getImageMutex;
+}
+
+osg::Image*
+IconSymbol::getImage( unsigned maxSize ) const
+{
+    if ( !_image.valid() && _url.isSet() )
+    {
+        Threading::ScopedMutexLock lock(s_getImageMutex);
+        if ( !_image.valid() )
+        {
+            osg::ref_ptr<osgDB::Options> dbOptions = Registry::instance()->cloneOrCreateOptions();
+            dbOptions->setObjectCacheHint( osgDB::Options::CACHE_IMAGES );
+            _image = URI(_url->eval(), _url->uriContext()).getImage( dbOptions.get() );
+            if ( _image.valid() && (maxSize < (unsigned int)_image->s() || maxSize < (unsigned int)_image->t()) )
+            {
+                unsigned new_s, new_t;
+
+                if ( _image->s() >= _image->t() ) {
+                    new_s = maxSize;
+                    float ratio = (float)new_s/(float)_image->s();
+                    new_t = (unsigned)((float)_image->t() * ratio);
+                }
+                else {
+                    new_t = maxSize;
+                    float ratio = (float)new_t/(float)_image->t();
+                    new_s = (unsigned)((float)_image->s() * ratio);
+                }
+                    
+                osg::ref_ptr<osg::Image> result;
+                ImageUtils::resizeImage( _image.get(), new_s, new_t, result );
+                _image = result.get();
+            }
+        }
+    }
+    return _image.get();
+}
+
+InstanceResource*
+IconSymbol::createResource() const 
+{
+    return new IconResource();
+}
diff --git a/src/osgEarthSymbology/InstanceResource b/src/osgEarthSymbology/InstanceResource
new file mode 100644
index 0000000..7d8b08c
--- /dev/null
+++ b/src/osgEarthSymbology/InstanceResource
@@ -0,0 +1,72 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_INSTANCE_RESOURCE_H
+#define OSGEARTHSYMBOLOGY_INSTANCE_RESOURCE_H 1
+
+#include <osgEarthSymbology/Common>
+#include <osgEarthSymbology/Resource>
+#include <osgEarthSymbology/InstanceSymbol>
+#include <osgEarth/URI>
+#include <map>
+
+namespace osgEarth { namespace Symbology
+{
+    using namespace osgEarth;
+
+    /**
+     * A resource that materializes an InstanceSymbol, which is a single-point object
+     * that resolves to an osg::Node. Instances are usually used for point-model
+     * substitution.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT InstanceResource : public Resource
+    {
+    public:
+
+        /** dtor */
+        virtual ~InstanceResource() { }
+
+        /**
+         * Creates a new Node representing the instance.
+         */
+        osg::Node* createNode( const osgDB::Options* dbOptions ) const;
+
+    public:
+        /** Source location of the actual data to load.  */
+        optional<URI>& uri() { return _uri; }
+        const optional<URI>& uri() const { return _uri; }
+
+    public: // serialization methods
+
+        virtual Config getConfig() const;
+        void mergeConfig( const Config& conf );
+
+    protected:
+        /** Constructs a new resource. */
+        InstanceResource( const Config& conf =Config() );
+
+        optional<URI>  _uri;
+
+        virtual osg::Node* createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const =0;
+    };
+
+
+} } // namespace osgEarth::Symbology
+
+#endif // OSGEARTHSYMBOLOGY_MARKER_RESOURCE_H
diff --git a/src/osgEarthSymbology/InstanceResource.cpp b/src/osgEarthSymbology/InstanceResource.cpp
new file mode 100644
index 0000000..bb451ee
--- /dev/null
+++ b/src/osgEarthSymbology/InstanceResource.cpp
@@ -0,0 +1,79 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/InstanceResource>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/ShaderGenerator>
+
+#include <osg/AutoTransform>
+#include <osg/Depth>
+#include <osg/Geometry>
+#include <osg/TextureRectangle>
+#include <osg/Program>
+
+#define LC "[InstanceResource] "
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+//---------------------------------------------------------------------------
+
+InstanceResource::InstanceResource( const Config& conf ) :
+Resource( conf )
+{
+    mergeConfig( conf );
+}
+
+void
+InstanceResource::mergeConfig( const Config& conf )
+{
+    conf.getIfSet( "url", _uri );
+}
+
+Config
+InstanceResource::getConfig() const
+{
+    Config conf = Resource::getConfig();
+    conf.key() = "instance";
+
+    conf.updateIfSet( "url", _uri );
+
+    return conf;
+}
+
+osg::Node*
+InstanceResource::createNode( const osgDB::Options* dbOptions ) const
+{
+    osg::Node* node = createNodeFromURI( _uri.value(), dbOptions );
+
+    // for now, disable any shaders on an instance resource until we can install a 
+    // shader generator
+    if ( node )
+    {
+        OE_DEBUG << LC << "Instance model does NOT have shaders disabled; use shadergen" << std::endl;
+        //node->getOrCreateStateSet()->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF );
+
+        //ShaderGenerator gen;
+        //node->accept( gen );
+
+        //Note. ShaderGen usually runs elsewhere where it can take advantage of a stateset optimizer.
+    }
+
+    return node;
+}
diff --git a/src/osgEarthSymbology/InstanceSymbol b/src/osgEarthSymbology/InstanceSymbol
new file mode 100644
index 0000000..d89ded3
--- /dev/null
+++ b/src/osgEarthSymbology/InstanceSymbol
@@ -0,0 +1,122 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_INSTANCE_SYMBOL_H
+#define OSGEARTHSYMBOLOGY_INSTANCE_SYMBOL_H 1
+
+#include <climits>
+
+#include <osgEarth/Common>
+#include <osgEarthSymbology/Symbol>
+#include <osgEarthSymbology/Expression>
+#include <osg/Vec3f>
+
+namespace osgEarth { namespace Symbology
+{
+    class InstanceResource;
+    class IconSymbol;
+    class ModelSymbol;
+
+    /**
+     * Base class for symbols that represent an instance of an external resource
+     * like an icon or a model and can be placed at a location.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT InstanceSymbol : public Symbol
+    {
+    public:
+        /**
+         * Controls the placement of the instance.
+         */
+        enum Placement
+        {
+            /** Places one instance at the centroid of the feature. */
+            PLACEMENT_CENTROID,
+
+            /** Places an instance at each feature point. */
+            PLACEMENT_VERTEX,
+
+            /** Places instances at regular intervals within/along the feature geometry,
+                according to density. */
+            PLACEMENT_INTERVAL,
+
+            /** Scatter instances randomly within/along feature, according to density. */
+            PLACEMENT_RANDOM
+        };
+
+    public:
+        /** dtor */
+        virtual ~InstanceSymbol() { }
+
+        /** URI of the instance to use for substitution. */
+        optional<StringExpression>& url() { return _url; }
+        const optional<StringExpression>& url() const { return _url; }
+
+        /** Name of the resource library to use with this symbol (optional) */
+        optional<StringExpression>& libraryName() { return _libraryName; }
+        const optional<StringExpression>& libraryName() const { return _libraryName; }   
+
+        /** How to map feature geometry to instance placement. (default is PLACEMENT_CENTROID) */
+        optional<Placement>& placement() { return _placement; }
+        const optional<Placement>& placement() const { return _placement; }
+
+        /** For PLACEMENT_RANDOM/INTERVAL, the scattering density in instances per sqkm */
+        optional<float>& density() { return _density; }
+        const optional<float>& density() const { return _density; }
+
+        /** Model instance scale factor */
+        optional<NumericExpression>& scale() { return _scale; }
+        const optional<NumericExpression>& scale() const { return _scale; }
+
+        /** Seeding value for the randomizer */
+        optional<unsigned>& randomSeed() { return _randomSeed; }
+        const optional<unsigned>& randomSeed() const { return _randomSeed; }
+
+        /** URI alias map for embedded resources */
+        optional<URIAliasMap>& uriAliasMap() { return _uriAliasMap; }
+        const optional<URIAliasMap>& uriAliasMap() const { return _uriAliasMap; }
+
+    public: // conversions to built-in base classes, for convenience.
+
+        const IconSymbol* asIcon() const;
+        const ModelSymbol* asModel() const;
+
+    public:
+        virtual Config getConfig() const;
+        virtual void mergeConfig( const Config& conf );
+
+    public: // internal
+        /** Creates a new (empty) resource appropriate for this symbol */
+        virtual InstanceResource* createResource() const =0;
+
+    protected:
+        InstanceSymbol( const Config& conf =Config() );
+
+    protected:
+        optional<StringExpression>   _url;
+        optional<StringExpression>   _libraryName;
+        optional<NumericExpression>  _scale;
+        optional<Placement>          _placement;
+        optional<float>              _density;
+        optional<unsigned>           _randomSeed;
+        optional<URIAliasMap>        _uriAliasMap;
+    };
+
+} } // namespace osgEarth::Symbology
+
+#endif // OSGEARTHSYMBOLOGY_MARKER_SYMBOL_H
diff --git a/src/osgEarthSymbology/InstanceSymbol.cpp b/src/osgEarthSymbology/InstanceSymbol.cpp
new file mode 100644
index 0000000..819025e
--- /dev/null
+++ b/src/osgEarthSymbology/InstanceSymbol.cpp
@@ -0,0 +1,75 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/InstanceSymbol>
+#include <osgEarthSymbology/IconSymbol>
+#include <osgEarthSymbology/ModelSymbol>
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+InstanceSymbol::InstanceSymbol( const Config& conf ) :
+Symbol     ( conf ),
+_placement ( PLACEMENT_CENTROID ),
+_density   ( 25.0f ),
+_randomSeed( 0 )
+{
+    mergeConfig( conf );
+}
+
+Config 
+InstanceSymbol::getConfig() const
+{
+    Config conf = Symbol::getConfig();
+    conf.key() = "instance";
+    conf.addObjIfSet( "url", _url );
+    conf.addObjIfSet( "library", _libraryName );
+    conf.addObjIfSet( "scale", _scale );
+    conf.addIfSet   ( "placement", "vertex",   _placement, PLACEMENT_VERTEX );
+    conf.addIfSet   ( "placement", "interval", _placement, PLACEMENT_INTERVAL );
+    conf.addIfSet   ( "placement", "random",   _placement, PLACEMENT_RANDOM );
+    conf.addIfSet   ( "density", _density );
+    conf.addIfSet   ( "random_seed", _randomSeed );
+    return conf;
+}
+
+void 
+InstanceSymbol::mergeConfig( const Config& conf )
+{
+    conf.getObjIfSet( "url", _url );
+    conf.getObjIfSet( "library", _libraryName );
+    conf.getObjIfSet( "scale", _scale );
+    conf.getIfSet   ( "placement", "vertex",   _placement, PLACEMENT_VERTEX );
+    conf.getIfSet   ( "placement", "interval", _placement, PLACEMENT_INTERVAL );
+    conf.getIfSet   ( "placement", "random",   _placement, PLACEMENT_RANDOM );
+    conf.getIfSet   ( "density", _density );
+    conf.getIfSet   ( "random_seed", _randomSeed );
+}
+
+
+const IconSymbol*
+InstanceSymbol::asIcon() const
+{
+    return dynamic_cast<const IconSymbol*>( this );
+}
+
+const ModelSymbol*
+InstanceSymbol::asModel() const
+{
+    return dynamic_cast<const ModelSymbol*>( this );
+}
diff --git a/src/osgEarthSymbology/LineFunctor b/src/osgEarthSymbology/LineFunctor
deleted file mode 100644
index 392cadb..0000000
--- a/src/osgEarthSymbology/LineFunctor
+++ /dev/null
@@ -1,298 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTHSYMBOLOGY_GEOMETRY_H
-#define OSGEARTHSYMBOLOGY_GEOMETRY_H 1
-
-#include <osgEarthSymbology/Common>
-#include <osg/PrimitiveSet>
-#include <osg/Vec2>
-#include <osg/Vec3>
-#include <osg/Vec4>
-
-namespace osgEarth { namespace Symbology 
-{
-    /**
-     * This is basically the same thing as osg::TriangleFunctor, but for lines.
-     */
-    template<class T>
-    class LineFunctor : public osg::PrimitiveFunctor, public T
-    {
-    public:
-
-        LineFunctor()
-        {
-            _vertexArraySize=0;
-            _vertexArrayPtr=0;
-            _modeCache=0;
-            _treatVertexDataAsTemporary=false;
-        }
-
-        virtual ~LineFunctor() {}
-
-        void setTreatVertexDataAsTemporary(bool treatVertexDataAsTemporary) { _treatVertexDataAsTemporary=treatVertexDataAsTemporary; }
-        bool getTreatVertexDataAsTemporary() const { return _treatVertexDataAsTemporary; }
-
-
-        virtual void setVertexArray(unsigned int count,const osg::Vec3* vertices)
-        {
-            _vertexArraySize = count;
-            _vertexArrayPtr = vertices;
-        }
-
-        virtual void setVertexArray(unsigned int,const osg::Vec2*) { }
-        virtual void setVertexArray(unsigned int,const osg::Vec4*) { }
-        virtual void setVertexArray(unsigned int,const osg::Vec2d*) { }
-        virtual void setVertexArray(unsigned int,const osg::Vec3d*) { }
-        virtual void setVertexArray(unsigned int,const osg::Vec4d*) { }
-
-        virtual void drawArrays(GLenum mode,GLint first,GLsizei count)
-        {
-            if (_vertexArrayPtr==0 || count==0) return;
-
-            switch(mode)
-            {            
-            case(GL_LINES):
-                {
-                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count];
-                    for(const osg::Vec3* vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr+=2)
-                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_STRIP):
-                {
-                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count-1];
-                    for(const osg::Vec3* vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr++)
-                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_LOOP):
-                {
-                    const osg::Vec3* vlast = &_vertexArrayPtr[first+count-1];
-                    const osg::Vec3* vptr;
-                    for(vptr = &_vertexArrayPtr[first]; vptr<vlast; vptr++)
-                        this->operator()( *(vptr), *(vptr+1), _treatVertexDataAsTemporary );
-                    if ( count >= 2 )
-                        this->operator()( *vptr, _vertexArrayPtr[first], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_TRIANGLES):
-            case(GL_TRIANGLE_STRIP):
-            case(GL_QUADS):
-            case(GL_QUAD_STRIP):
-            case(GL_POLYGON):
-            case(GL_TRIANGLE_FAN):
-            case(GL_POINTS):
-            default:
-                // can't be converted into to line segments.
-                break;
-            }
-        }
-
-        virtual void drawElements(GLenum mode,GLsizei count,const GLubyte* indicies)
-        {
-            if (indicies==0 || count==0) return;
-
-            typedef const GLubyte* IndexPointer;
-
-            switch(mode)
-            {
-            case(GL_LINES):
-                {
-                    IndexPointer ilast = &indicies[count];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_STRIP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_LOOP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    IndexPointer iptr;
-                    for(iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                    if (count >= 2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_TRIANGLES):
-            case(GL_TRIANGLE_STRIP):
-            case(GL_QUADS):
-            case(GL_QUAD_STRIP):
-            case(GL_POLYGON):
-            case(GL_TRIANGLE_FAN):
-            case(GL_POINTS):
-            default:
-                // can't be converted into to lines.
-                break;
-            }
-        }    
-
-        virtual void drawElements(GLenum mode,GLsizei count,const GLushort* indicies)
-        {
-            if (indicies==0 || count==0) return;
-
-            typedef const GLushort* IndexPointer;
-
-            switch(mode)
-            {
-            case(GL_LINES):
-                {
-                    IndexPointer ilast = &indicies[count];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_STRIP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_LOOP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    IndexPointer iptr;
-                    for(iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                    if (count >= 2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_TRIANGLES):
-            case(GL_TRIANGLE_STRIP):
-            case(GL_QUADS):
-            case(GL_QUAD_STRIP):
-            case(GL_POLYGON):
-            case(GL_TRIANGLE_FAN):
-            case(GL_POINTS):
-            default:
-                // can't be converted into to lines.
-                break;
-            }
-        }    
-
-        virtual void drawElements(GLenum mode,GLsizei count,const GLuint* indicies)
-        {
-            if (indicies==0 || count==0) return;
-
-            typedef const GLuint* IndexPointer;
-
-            switch(mode)
-            {
-            case(GL_LINES):
-                {
-                    IndexPointer ilast = &indicies[count];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr+=2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_STRIP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    for(IndexPointer iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_LINE_LOOP):
-                {
-                    IndexPointer ilast = &indicies[count-1];
-                    IndexPointer iptr;
-                    for(iptr=indicies; iptr<ilast; iptr++)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[*(iptr+1)], _treatVertexDataAsTemporary );
-                    if (count >= 2)
-                        this->operator()( _vertexArrayPtr[*iptr], _vertexArrayPtr[indicies[0]], _treatVertexDataAsTemporary );
-                }
-                break;
-
-            case(GL_TRIANGLES):
-            case(GL_TRIANGLE_STRIP):
-            case(GL_QUADS):
-            case(GL_QUAD_STRIP):
-            case(GL_POLYGON):
-            case(GL_TRIANGLE_FAN):
-            case(GL_POINTS):
-            default:
-                // can't be converted into to lines.
-                break;
-            }
-        }
-
-
-
-        /** Note:
-        * begin(..),vertex(..) & end() are convenience methods for adapting
-        * non vertex array primitives to vertex array based primitives.
-        * This is done to simplify the implementation of primitive functor
-        * subclasses - users only need override drawArray and drawElements.
-        */
-        virtual void begin(GLenum mode)
-        {
-            _modeCache = mode;
-            _vertexCache.clear();
-        }
-
-        virtual void vertex(const osg::Vec2& vert) { _vertexCache.push_back(osg::Vec3(vert[0],vert[1],0.0f)); }
-        virtual void vertex(const osg::Vec3& vert) { _vertexCache.push_back(vert); }
-        virtual void vertex(const osg::Vec4& vert) { _vertexCache.push_back(osg::Vec3(vert[0],vert[1],vert[2])/vert[3]); }
-        virtual void vertex(float x,float y) { _vertexCache.push_back(osg::Vec3(x,y,0.0f)); }
-        virtual void vertex(float x,float y,float z) { _vertexCache.push_back(osg::Vec3(x,y,z)); }
-        virtual void vertex(float x,float y,float z,float w) { _vertexCache.push_back(osg::Vec3(x,y,z)/w); }
-        virtual void end()
-        {
-            if (!_vertexCache.empty())
-            {
-                setVertexArray(_vertexCache.size(),&_vertexCache.front());
-                _treatVertexDataAsTemporary = true;
-                drawArrays(_modeCache,0,_vertexCache.size());
-            }
-        }
-
-    protected:
-
-
-        unsigned int        _vertexArraySize;
-        const osg::Vec3*         _vertexArrayPtr;
-
-        GLenum              _modeCache;
-        std::vector<osg::Vec3>   _vertexCache;
-        bool                _treatVertexDataAsTemporary;
-    };
-} } // namespace osgEarth::Symbology
-
-
-#endif // OSGEARTHSYMBOLOGY_GEOMETRY_H
-
diff --git a/src/osgEarthSymbology/LineSymbol b/src/osgEarthSymbology/LineSymbol
index cfbe8e2..5f592dd 100644
--- a/src/osgEarthSymbology/LineSymbol
+++ b/src/osgEarthSymbology/LineSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -37,16 +37,24 @@ namespace osgEarth { namespace Symbology
     public:
         LineSymbol(const Config& conf =Config());
 
+        /** dtor */
+        virtual ~LineSymbol() { }
+
         /** Line stroking parameters */
         optional<Stroke>& stroke() { return _stroke; }
         const optional<Stroke>& stroke() const { return _stroke; }
 
+        /** Whether to tessellate line geometry (# of subdivision per segment) */
+        optional<unsigned>& tessellation() { return _tessellation; }
+        const optional<unsigned>& tessellation() const { return _tessellation; }
+
     public:
         virtual Config getConfig() const;
         virtual void mergeConfig( const Config& conf );
 
     protected:
-        optional<Stroke> _stroke;
+        optional<Stroke>   _stroke;
+        optional<unsigned> _tessellation;
     };
 
 } } // namespace osgEarth::Symbology
diff --git a/src/osgEarthSymbology/LineSymbol.cpp b/src/osgEarthSymbology/LineSymbol.cpp
index 9b84a1f..9df4128 100644
--- a/src/osgEarthSymbology/LineSymbol.cpp
+++ b/src/osgEarthSymbology/LineSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,8 +22,9 @@ using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
 LineSymbol::LineSymbol( const Config& conf ) :
-Symbol ( conf ),
-_stroke( Stroke() )
+Symbol       ( conf ),
+_stroke      ( Stroke() ),
+_tessellation( 0 )
 {
     mergeConfig(conf);
 }
@@ -33,12 +34,14 @@ LineSymbol::getConfig() const
 {
     Config conf = Symbol::getConfig();
     conf.key() = "line";
-    conf.addObjIfSet("stroke", _stroke);
+    conf.addObjIfSet("stroke",       _stroke);
+    conf.addIfSet   ("tessellation", _tessellation);
     return conf;
 }
 
 void 
 LineSymbol::mergeConfig( const Config& conf )
 {
-    conf.getObjIfSet("stroke", _stroke);
+    conf.getObjIfSet("stroke",       _stroke);
+    conf.getIfSet   ("tessellation", _tessellation);
 }
diff --git a/src/osgEarthSymbology/MarkerResource b/src/osgEarthSymbology/MarkerResource
index c4553ef..2480b14 100644
--- a/src/osgEarthSymbology/MarkerResource
+++ b/src/osgEarthSymbology/MarkerResource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,6 +25,7 @@
 #include <osgEarthSymbology/Symbol>
 #include <osgEarthSymbology/MarkerSymbol>
 #include <osgEarth/URI>
+#include <map>
 
 namespace osgEarth { namespace Symbology
 {
@@ -41,10 +42,13 @@ namespace osgEarth { namespace Symbology
         /** Constructs a new marker resource. */
         MarkerResource( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~MarkerResource() { }
+
         /**
          * Creates a new Node representing the marker.
          */
-        osg::Node* createNode() const;
+        osg::Node* createNode( const osgDB::Options* dbOptions ) const;
 
     public:
         /** Source location of the actual data to load.  */
@@ -59,9 +63,11 @@ namespace osgEarth { namespace Symbology
     protected:
         optional<URI>  _markerURI;
 
-        osg::Node* createNodeFromURI( const URI& uri ) const;
+        osg::Node* createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const;
     };
 
+    typedef std::vector< osg::ref_ptr<MarkerResource> > MarkerResourceVector;
+
 } } // namespace osgEarth::Symbology
 
 #endif // OSGEARTHSYMBOLOGY_MARKER_RESOURCE_H
diff --git a/src/osgEarthSymbology/MarkerResource.cpp b/src/osgEarthSymbology/MarkerResource.cpp
index 8e89929..e50e9db 100644
--- a/src/osgEarthSymbology/MarkerResource.cpp
+++ b/src/osgEarthSymbology/MarkerResource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -24,6 +24,7 @@
 #include <osg/Depth>
 #include <osg/Geometry>
 #include <osg/TextureRectangle>
+#include <osg/Program>
 
 #define LC "[MarkerResource] "
 
@@ -40,6 +41,7 @@ namespace
         float height = image->t();
 
         osg::Geometry* geometry = new osg::Geometry;
+        geometry->setUseVertexBufferObjects(true);
 
         osg::Vec3Array* verts = new osg::Vec3Array(4);
         (*verts)[0] = osg::Vec3(-width/2.0f, -height/2.0, 0.0f);
@@ -112,24 +114,26 @@ MarkerResource::getConfig() const
 }
 
 osg::Node*
-MarkerResource::createNode() const
+MarkerResource::createNode( const osgDB::Options* dbOptions ) const
 {
-    return createNodeFromURI( _markerURI.value() );
+    return createNodeFromURI( _markerURI.value(), dbOptions );
 }
 
 osg::Node*
-MarkerResource::createNodeFromURI( const URI& uri ) const
+MarkerResource::createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const
 {
-    osg::ref_ptr<osg::Object> obj = uri.readObject();
-    if ( obj.valid() )
+    osg::Node* node = 0L;
+
+    ReadResult r = uri.readObject( dbOptions );
+    if ( r.succeeded() )
     {
-        if ( dynamic_cast<osg::Image*>( obj.get() ) )
+        if ( r.getImage() )
         {
-            return buildImageModel( dynamic_cast<osg::Image*>( obj.get() ) );
+            node = buildImageModel( r.getImage() );
         }
-        else if ( dynamic_cast<osg::Node*>( obj.get() ) )
+        else if ( r.getNode() )
         {
-            return dynamic_cast<osg::Node*>( obj.release() );
+            node = r.releaseNode();
         }
     }
 
@@ -138,11 +142,15 @@ MarkerResource::createNodeFromURI( const URI& uri ) const
         StringVector tok;
         StringTokenizer( *uri, tok, "()" );
         if (tok.size() >= 2)
-            return createNodeFromURI( URI(tok[1]) );
+            return createNodeFromURI( URI(tok[1]), dbOptions );
     }
 
-    // fail
-    return 0L;
-}
-
+    // for now, disable any shaders on an imported resource until we do something about it
+    if ( node )
+    {
+        // disable shaders. perhaps later we can run a shadergen or something.
+        node->getOrCreateStateSet()->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF );
+    }
 
+    return node;
+}
diff --git a/src/osgEarthSymbology/MarkerSymbol b/src/osgEarthSymbology/MarkerSymbol
index 5dd41ac..097edd4 100644
--- a/src/osgEarthSymbology/MarkerSymbol
+++ b/src/osgEarthSymbology/MarkerSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,8 +17,10 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 
-#ifndef OSGEARTHSYMBOLOGY_MODEL_SYMBOL_H
-#define OSGEARTHSYMBOLOGY_MODEL_SYMBOL_H 1
+#ifndef OSGEARTHSYMBOLOGY_MARKER_SYMBOL_H
+#define OSGEARTHSYMBOLOGY_MARKER_SYMBOL_H 1
+
+#include <climits>
 
 #include <osgEarth/Common>
 #include <osgEarthSymbology/Symbol>
@@ -27,6 +29,8 @@
 
 namespace osgEarth { namespace Symbology
 {
+    class InstanceSymbol;
+
     /**
      * The MarkerSymbol describes replacement of geometry with "markers". A marker
      * it another object like a 3D model (node) or an image.
@@ -53,12 +57,37 @@ namespace osgEarth { namespace Symbology
             PLACEMENT_RANDOM
         };
 
+        // note: these are similar to the values in osgText::Text::AlignmentType
+        enum Alignment {
+            ALIGN_LEFT_TOP,
+            ALIGN_LEFT_CENTER,
+            ALIGN_LEFT_BOTTOM,
+
+            ALIGN_CENTER_TOP,
+            ALIGN_CENTER_CENTER,
+            ALIGN_CENTER_BOTTOM,
+
+            ALIGN_RIGHT_TOP,
+            ALIGN_RIGHT_CENTER,
+            ALIGN_RIGHT_BOTTOM,
+        };
+
     public:
         MarkerSymbol( const Config& conf =Config() );
 
+        /** Since MarkerSymbol is deprecated, this conveneince function will convert to an InstanceSymbol */
+        class InstanceSymbol* convertToInstanceSymbol() const;
+
+        /** dtor */
+        virtual ~MarkerSymbol() { }
+
         /** URI of the model to use for substitution. */
         optional<StringExpression>& url() { return _url; }
-        const optional<StringExpression>& url() const { return _url; }        
+        const optional<StringExpression>& url() const { return _url; }     
+
+        /** Name of the resource library to use with this symbol (optional) */
+        optional<StringExpression>& libraryName() { return _libraryName; }
+        const optional<StringExpression>& libraryName() const { return _libraryName; }   
 
         /** How to map feature geometry to model placement. (default is PLACEMENT_CENTROID) */
         optional<Placement>& placement() { return _placement; }
@@ -72,19 +101,31 @@ namespace osgEarth { namespace Symbology
         optional<NumericExpression>& scale() { return _scale; }
         const optional<NumericExpression>& scale() const { return _scale; }
 
+        /** Orientation in HPR degrees */
+        optional<osg::Vec3f>& orientation() { return _orientation; }
+        const optional<osg::Vec3f>& orientation() const { return _orientation; }
+
         /** Seeding value for the randomizer */
         optional<unsigned>& randomSeed() { return _randomSeed; }
         const optional<unsigned>& randomSeed() const { return _randomSeed; }
 
+        /** Hint as to whether the marker is an icon vs. a 3D model */
+        optional<bool>& isModel() { return _isModelHint; }
+        const optional<bool>& isModel() const { return _isModelHint; }
+
+        /** Alignment of the marker relative to center pixels */
+        optional<Alignment>& alignment() { return _alignment; }
+        const optional<Alignment>& alignment() const { return _alignment; }
+        
     public: // non-serialized properties (for programmatic use only)
 
         /** Explicit image to use for 2D icon placemet */
         void setImage( osg::Image* image ) { _image = image; }
-        osg::Image* getImage() const { return _image.get(); }
+        osg::Image* getImage( unsigned maxSize =INT_MAX ) const;
 
         /** Explicit model to use for model placement */
         void setModel( osg::Node* node ) { _node = node; }
-        osg::Node* getNode() const { return _node.get(); }
+        osg::Node* getModel() const { return _node.get(); }
 
     public:
         virtual Config getConfig() const;
@@ -92,15 +133,19 @@ namespace osgEarth { namespace Symbology
 
     protected:
         optional<StringExpression>   _url;
+        optional<StringExpression>   _libraryName;
         optional<NumericExpression>  _scale;
         optional<Placement>          _placement;
+        optional<osg::Vec3f>         _orientation;
         optional<float>              _density;
         optional<unsigned>           _randomSeed;
+        optional<bool>               _isModelHint;
+        optional<Alignment>         _alignment;
 
-        osg::ref_ptr<osg::Image>     _image;
         osg::ref_ptr<osg::Node>      _node;
+        mutable osg::ref_ptr<osg::Image> _image;
     };
 
 } } // namespace osgEarth::Symbology
 
-#endif
+#endif // OSGEARTHSYMBOLOGY_MARKER_SYMBOL_H
diff --git a/src/osgEarthSymbology/MarkerSymbol.cpp b/src/osgEarthSymbology/MarkerSymbol.cpp
index 7618fe4..8805ba9 100644
--- a/src/osgEarthSymbology/MarkerSymbol.cpp
+++ b/src/osgEarthSymbology/MarkerSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,6 +17,15 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthSymbology/MarkerSymbol>
+#include <osgEarthSymbology/IconSymbol>
+#include <osgEarthSymbology/ModelSymbol>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Registry>
+#include <osgEarth/ImageUtils>
+
+#include <osgDB/Options>
+#include <osgDB/FileNameUtils>
+#include <osgDB/Registry>
 
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
@@ -25,7 +34,8 @@ MarkerSymbol::MarkerSymbol( const Config& conf ) :
 Symbol     ( conf ),
 _placement ( PLACEMENT_CENTROID ),
 _density   ( 25.0f ),
-_randomSeed( 0 )
+_randomSeed( 0 ),
+_alignment ( ALIGN_CENTER_BOTTOM )
 {
     mergeConfig( conf );
 }
@@ -36,12 +46,26 @@ MarkerSymbol::getConfig() const
     Config conf = Symbol::getConfig();
     conf.key() = "marker";
     conf.addObjIfSet( "url", _url );
+    conf.addObjIfSet( "library", _libraryName );
     conf.addObjIfSet( "scale", _scale );
+    conf.addIfSet( "orientation", _orientation);
     conf.addIfSet( "placement", "vertex",   _placement, PLACEMENT_VERTEX );
     conf.addIfSet( "placement", "interval", _placement, PLACEMENT_INTERVAL );
     conf.addIfSet( "placement", "random",   _placement, PLACEMENT_RANDOM );
     conf.addIfSet( "density", _density );
     conf.addIfSet( "random_seed", _randomSeed );
+    conf.addIfSet( "is_model", _isModelHint );
+
+    conf.addIfSet( "alignment", "left_top",                _alignment, ALIGN_LEFT_TOP );
+    conf.addIfSet( "alignment", "left_center",             _alignment, ALIGN_LEFT_CENTER );
+    conf.addIfSet( "alignment", "left_bottom",             _alignment, ALIGN_LEFT_BOTTOM );
+    conf.addIfSet( "alignment", "center_top",              _alignment, ALIGN_CENTER_TOP );
+    conf.addIfSet( "alignment", "center_center",           _alignment, ALIGN_CENTER_CENTER );
+    conf.addIfSet( "alignment", "center_bottom",           _alignment, ALIGN_CENTER_BOTTOM );
+    conf.addIfSet( "alignment", "right_top",               _alignment, ALIGN_RIGHT_TOP );
+    conf.addIfSet( "alignment", "right_center",            _alignment, ALIGN_RIGHT_CENTER );
+    conf.addIfSet( "alignment", "right_bottom",            _alignment, ALIGN_RIGHT_BOTTOM );
+
     conf.addNonSerializable( "MarkerSymbol::image", _image.get() );
     conf.addNonSerializable( "MarkerSymbol::node", _node.get() );
     return conf;
@@ -51,13 +75,151 @@ void
 MarkerSymbol::mergeConfig( const Config& conf )
 {
     conf.getObjIfSet( "url", _url );
-    conf.getObjIfSet( "scale", _scale );
+    conf.getObjIfSet( "library", _libraryName );
+    conf.getObjIfSet( "scale", _scale );    
     conf.getIfSet( "placement", "vertex",   _placement, PLACEMENT_VERTEX );
     conf.getIfSet( "placement", "interval", _placement, PLACEMENT_INTERVAL );
     conf.getIfSet( "placement", "random",   _placement, PLACEMENT_RANDOM );
     conf.getIfSet( "density", _density );
     conf.getIfSet( "random_seed", _randomSeed );
+    conf.getIfSet( "orientation", _orientation);
+    conf.getIfSet( "is_model", _isModelHint );
+
+    conf.getIfSet( "alignment", "left_top",                _alignment, ALIGN_LEFT_TOP );
+    conf.getIfSet( "alignment", "left_center",             _alignment, ALIGN_LEFT_CENTER );
+    conf.getIfSet( "alignment", "left_bottom",             _alignment, ALIGN_LEFT_BOTTOM );
+    conf.getIfSet( "alignment", "center_top",              _alignment, ALIGN_CENTER_TOP );
+    conf.getIfSet( "alignment", "center_center",           _alignment, ALIGN_CENTER_CENTER );
+    conf.getIfSet( "alignment", "center_bottom",           _alignment, ALIGN_CENTER_BOTTOM );
+    conf.getIfSet( "alignment", "right_top",               _alignment, ALIGN_RIGHT_TOP );
+    conf.getIfSet( "alignment", "right_center",            _alignment, ALIGN_RIGHT_CENTER );
+    conf.getIfSet( "alignment", "right_bottom",            _alignment, ALIGN_RIGHT_BOTTOM );
+
     _image = conf.getNonSerializable<osg::Image>( "MarkerSymbol::image" );
     _node = conf.getNonSerializable<osg::Node>( "MarkerSymbol::node" );
 }
 
+osg::Image*
+MarkerSymbol::getImage( unsigned maxSize ) const
+{
+    static Threading::Mutex s_mutex;
+    if ( !_image.valid() && _url.isSet() )
+    {
+        Threading::ScopedMutexLock lock(s_mutex);
+        if ( !_image.valid() )
+        {
+            osg::ref_ptr<osgDB::Options> dbOptions = Registry::instance()->cloneOrCreateOptions();
+            dbOptions->setObjectCacheHint( osgDB::Options::CACHE_IMAGES );
+            _image = URI(_url->eval(), _url->uriContext()).getImage( dbOptions.get() );
+            if ( _image.valid() && (maxSize < (unsigned int)_image->s() || maxSize < (unsigned int)_image->t()) )
+            {
+                unsigned new_s, new_t;
+
+                if ( _image->s() >= _image->t() ) {
+                    new_s = maxSize;
+                    float ratio = (float)new_s/(float)_image->s();
+                    new_t = (unsigned)((float)_image->t() * ratio);
+                }
+                else {
+                    new_t = maxSize;
+                    float ratio = (float)new_t/(float)_image->t();
+                    new_s = (unsigned)((float)_image->s() * ratio);
+                }
+                    
+                osg::ref_ptr<osg::Image> result;
+                ImageUtils::resizeImage( _image.get(), new_s, new_t, result );
+                _image = result.get();
+            }
+        }
+    }
+    return _image.get();
+}
+
+
+InstanceSymbol*
+MarkerSymbol::convertToInstanceSymbol() const
+{
+    InstanceSymbol* result = 0L;
+
+    bool isModel = true;
+
+    if ( this->isModel().isSet() )
+    {
+        isModel = *this->isModel();
+    }
+    else if ( this->getModel() )
+    {
+        isModel = true;
+    }
+    else if ( this->url().isSet() )
+    {
+        const std::string& str = this->url()->expr();
+        std::string ext = osgDB::getLowerCaseFileExtension(str);
+        if ( !ext.empty() )
+        {
+            osg::ref_ptr<osgDB::ReaderWriter> rw = osgDB::Registry::instance()->getReaderWriterForExtension(ext);
+            if ( rw.valid() )
+            {
+                unsigned features = (unsigned)rw->supportedFeatures();
+                if ( (features & osgDB::ReaderWriter::FEATURE_READ_IMAGE) != 0 )
+                {
+                    isModel = false;
+                }
+            }
+
+#if 0 // original method-- but getMimeTypeExtensionMap didn't exist until post-3.0
+            const osgDB::Registry::MimeTypeExtensionMap& exmap = osgDB::Registry::instance()->getMimeTypeExtensionMap();
+            for( osgDB::Registry::MimeTypeExtensionMap::const_iterator i = exmap.begin(); i != exmap.end(); ++i )
+            {
+                if ( i->second == ext )
+                {
+                    if ( i->first.compare(0, 6, "image/") == 0 )
+                        isModel = false;
+                    break;
+                }
+            }
+#endif
+
+        }
+    }
+
+    if ( isModel )
+    {
+        ModelSymbol* model = new ModelSymbol();
+
+        if ( this->orientation().isSet() )
+            model->heading() = NumericExpression(this->orientation()->x());
+
+        if ( model->getModel() )
+            model->setModel( this->getModel() );
+
+        result = model;
+    }
+    else // icon image
+    {
+        IconSymbol* icon = new IconSymbol();
+
+        if ( this->alignment().isSet() )
+            icon->alignment() = (IconSymbol::Alignment)this->alignment().get();
+
+        if ( this->getImage() )
+            icon->setImage( this->getImage() );
+
+        result = icon;
+    }
+
+    if ( this->url().isSet() )
+        result->url() = this->url().get();
+    if ( this->libraryName().isSet() )
+        result->libraryName() = this->libraryName().get();
+    if ( this->placement().isSet() )
+        result->placement() = (InstanceSymbol::Placement)this->placement().get();
+    if ( this->density().isSet() )
+        result->density() = this->density().get();
+    if ( this->scale().isSet() )
+        result->scale() = this->scale().get();
+    if ( this->randomSeed().isSet() )
+        result->randomSeed() = this->randomSeed().get();
+
+    return result;
+}
diff --git a/src/osgEarthSymbology/MeshConsolidator b/src/osgEarthSymbology/MeshConsolidator
index 0c356cf..c53c123 100644
--- a/src/osgEarthSymbology/MeshConsolidator
+++ b/src/osgEarthSymbology/MeshConsolidator
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -43,8 +43,18 @@ namespace osgEarth { namespace Symbology
     class OSGEARTHSYMBOLOGY_EXPORT MeshConsolidator
     {
     public:
-        static void run( osg::Geometry& geom );
+        /**
+         * Converts all polygon primitive sets (tristrips, trifans, polygons, etc)
+         * into GL_TRIANGLES. Similar to the IndexMeshVisitor, except that this
+         * retians user data pointers on the primsets.
+         */
+        static void convertToTriangles( osg::Geometry& geom );
 
+        /**
+         * Consolidates compatible geometries in the geode. First runs the 
+         * convertToTriangles method on each Geometry if applicable, them combines
+         * geometies into a minimal set for performance purposes.
+         */
         static void run( osg::Geode& geode );
     };
 
diff --git a/src/osgEarthSymbology/MeshConsolidator.cpp b/src/osgEarthSymbology/MeshConsolidator.cpp
index 4951daf..b0af962 100644
--- a/src/osgEarthSymbology/MeshConsolidator.cpp
+++ b/src/osgEarthSymbology/MeshConsolidator.cpp
@@ -1,38 +1,112 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
 #include <osgEarthSymbology/MeshConsolidator>
-#include <osgEarthSymbology/LineFunctor>
+#include <osgEarth/StringUtils>
 #include <osg/TriangleFunctor>
 #include <osg/TriangleIndexFunctor>
+#include <osgDB/WriteFile>
+#include <osgUtil/MeshOptimizers>
 #include <limits>
 #include <map>
 #include <iterator>
 
+using namespace osgEarth::Symbology;
+
 #define LC "[MeshConsolidator] "
 
 using namespace osgEarth;
-using namespace osgEarth::Symbology;
 
 //------------------------------------------------------------------------
 
 namespace
 {
+    struct GeometryValidator : public osg::NodeVisitor
+    {
+        template<typename DE>
+        void validateDE( DE* de, unsigned maxIndex, unsigned numVerts )
+        {
+            for( unsigned i=0; i<de->getNumIndices(); ++i )
+            {
+                typename DE::value_type index = de->getElement(i);
+                if ( index > maxIndex )
+                {
+                    OE_WARN << "MAXIMUM Index exceeded in DrawElements" << std::endl;
+                    break;
+                }
+                else if ( index > numVerts-1 )
+                {
+                    OE_WARN << "INDEX OUT OF Range in DrawElements" << std::endl;
+                }
+            }
+        }
+
+        void apply(osg::Geometry& geom)
+        {
+            unsigned numVerts = geom.getVertexArray()->getNumElements();
+
+            if ( geom.getColorArray() )
+            {
+                if ( geom.getColorBinding() == osg::Geometry::BIND_OVERALL && geom.getColorArray()->getNumElements() != 1 )
+                {
+                    OE_WARN << "BIND_OVERALL with wrong number of elements" << std::endl;
+                }
+                else if ( geom.getColorBinding() == osg::Geometry::BIND_PER_VERTEX && geom.getColorArray()->getNumElements() != numVerts )
+                {
+                    OE_WARN << "BIND_PER_VERTEX with color.size != verts.size" << std::endl;
+                }
+
+                const osg::Geometry::PrimitiveSetList& plist = geom.getPrimitiveSetList();
+                for( osg::Geometry::PrimitiveSetList::const_iterator p = plist.begin(); p != plist.end(); ++p )
+                {
+                    osg::PrimitiveSet* pset = p->get();
+
+                    osg::DrawElementsUByte* de_byte = dynamic_cast<osg::DrawElementsUByte*>(pset);
+                    if ( de_byte )
+                    {
+                        if ( numVerts > 0xFF )
+                        {
+                            OE_WARN << "DrawElementsUByte used when numVerts > 0xFF" << std::endl;
+                        }
+                        validateDE(de_byte, 0xFF, numVerts );
+                    }
+
+                    osg::DrawElementsUShort* de_short = dynamic_cast<osg::DrawElementsUShort*>(pset);
+                    if ( de_short )
+                    {
+                        if ( numVerts > 0xFFFF )
+                        {
+                            OE_WARN << "DrawElementsUShort used when numVerts > 0xFFFF" << std::endl;
+                        }
+                        validateDE(de_short, 0xFFFF, numVerts );
+                    }
+
+                    osg::DrawElementsUInt* de_int = dynamic_cast<osg::DrawElementsUInt*>(pset);
+                    if ( de_int )
+                    {
+                        validateDE(de_int, 0xFFFFFFFF, numVerts );
+                    }
+                }
+            }
+        }
+    };
+
     template<typename T>
     struct Collector
     {
@@ -77,6 +151,23 @@ namespace
             return copy<FROM,osg::DrawElementsUInt>( src, offset );
     }
 
+    osg::PrimitiveSet* convertDAtoDE( osg::DrawArrays* da, unsigned numVerts, unsigned offset )
+    {
+        osg::DrawElements* de = 0L;
+        if ( numVerts < 0x100 )
+            de = new osg::DrawElementsUByte( da->getMode() );
+        else if ( numVerts < 0x10000 )
+            de = new osg::DrawElementsUShort( da->getMode() );
+        else
+            de = new osg::DrawElementsUInt( da->getMode() );
+
+        de->reserveElements( da->getCount() );
+        for( GLsizei i=0; i<da->getCount(); ++i )
+            de->addElement( offset + da->getFirst() + i );
+
+        return de;
+    }
+
     bool canOptimize( osg::Geometry& geom )
     {
         osg::Array* vertexArray = geom.getVertexArray();
@@ -94,13 +185,32 @@ namespace
         if ( geom.getSecondaryColorArray() != 0L && geom.getSecondaryColorBinding() != osg::Geometry::BIND_PER_VERTEX )
             return false;
 
+        // just for now.... TODO: allow thi later
         if ( geom.getVertexAttribArrayList().size() > 0 )
+            return false;
+        //{
+        //    unsigned n = geom.getVertexAttribArrayList().size();
+        //    for( unsigned i=0; i<n; ++i ) 
+        //    {
+        //        if ( geom.getVertexAttribBinding( i ) != osg::Geometry::BIND_PER_VERTEX )
+        //            return false;
+        //    }
+        //}
+
+        // check that all primitive sets share the same user data
+        osg::Geometry::PrimitiveSetList& pslist = geom.getPrimitiveSetList();
+        osg::Referenced* lastUserData = 0L;
+        for( osg::Geometry::PrimitiveSetList::const_iterator i = pslist.begin(); i != pslist.end(); ++i )
         {
-            unsigned n = geom.getVertexAttribArrayList().size();
-            for( unsigned i=0; i<n; ++i ) 
+            osg::Referenced* userData = i->get()->getUserData();
+            if ( i == pslist.begin() || userData == lastUserData )
             {
-                if ( geom.getVertexAttribBinding( i ) != osg::Geometry::BIND_PER_VERTEX )
-                    return false;
+                lastUserData = userData;
+            }
+            else
+            {
+                OE_WARN << LC << "Differing user data in a primset list!" << std::endl;
+                return false;
             }
         }
 
@@ -111,7 +221,7 @@ namespace
 //------------------------------------------------------------------------
 
 void
-MeshConsolidator::run( osg::Geometry& geom )
+MeshConsolidator::convertToTriangles( osg::Geometry& geom )
 {
     if ( !canOptimize(geom) )
         return;
@@ -140,6 +250,10 @@ MeshConsolidator::run( osg::Geometry& geom )
 
     if ( triSets.size() > 0 )
     {
+        // we are assuming at this point that all the primitive sets in a single geometry
+        // share a single user data structure.
+        osg::Referenced* sharedUserData = triSets[0]->getUserData();
+
         osg::Array* vertexArray = geom.getVertexArray();
         unsigned numVerts = vertexArray->getNumElements();
         osg::Geometry::PrimitiveSetList newPrimSets;
@@ -160,240 +274,310 @@ MeshConsolidator::run( osg::Geometry& geom )
         }
         else
         {
+#ifdef OSG_GLES2_AVAILABLE
+            // GLES only supports UShort, not UInt
+            osg::TriangleIndexFunctor< Collector<osg::DrawElementsUShort> > collector;
+            collector._newPrimSets = &newPrimSets;
+            collector._maxSize = 0xFFFF;
+            geom.accept( collector );
+#else
             osg::TriangleIndexFunctor< Collector<osg::DrawElementsUInt> > collector;
             collector._newPrimSets = &newPrimSets;
             collector._maxSize = 0xFFFFFFFF;
             geom.accept( collector );
+#endif
         }
 
         for( osg::Geometry::PrimitiveSetList::iterator i = newPrimSets.begin(); i != newPrimSets.end(); ++i )
+        {
+            i->get()->setUserData( sharedUserData );
             nonTriSets.push_back( i->get() );
+        }
     }
 
     geom.setPrimitiveSetList( nonTriSets );
 }
 
-void
-MeshConsolidator::run( osg::Geode& geode )
-{
-    unsigned numVerts = 0;
-    unsigned numColors = 0;
-    unsigned numNormals = 0;
-    unsigned numTexCoordArrays = 0;
-    unsigned numVertAttribArrays = 0;
-    std::vector<unsigned> texCoordArrayUnits;
 
-    osg::Geometry::AttributeBinding newColorsBinding;
-    osg::Geometry::AttributeBinding newNormalsBinding;
+typedef osg::Geode::DrawableList DrawableList;
 
-    // first, triangulate all the geometries and count all the components:
-    for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+namespace
+{
+    void merge( 
+        DrawableList::iterator&       start, 
+        DrawableList::iterator&       end,
+        unsigned                      numVerts,
+        unsigned                      numColors,
+        unsigned                      numNormals,
+        const std::vector<unsigned>&  texCoordArrayUnits,
+        bool                          useVBOs,
+        osg::Geode::DrawableList&     results )
     {
-        osg::Geometry* geom = geode.getDrawable(i)->asGeometry();
-        if ( geom )
+        osg::Geometry::AttributeBinding newColorsBinding, newNormalsBinding;
+
+	    osg::Vec3Array* newVerts = new osg::Vec3Array();
+	    newVerts->reserve( numVerts );
+
+	    osg::Vec4Array* newColors =0L;
+	    if ( numColors > 0 )
+	    {
+		    newColors = new osg::Vec4Array();
+            newColors->reserve( numVerts );
+            newColorsBinding = osg::Geometry::BIND_PER_VERTEX;
+            //newColors->reserve( numColors==numVerts? numColors : 1 );
+            //newColorsBinding = numColors==numVerts? osg::Geometry::BIND_PER_VERTEX : osg::Geometry::BIND_OVERALL;
+	    }
+
+	    osg::Vec3Array* newNormals =0L;
+	    if ( numNormals > 0 )
+	    {
+		    newNormals = new osg::Vec3Array();
+            newNormals->reserve( numVerts );
+            newNormalsBinding = osg::Geometry::BIND_PER_VERTEX;
+            //newNormals->reserve( numNormals==numVerts? numNormals : 1 );
+            //newNormalsBinding = numNormals==numVerts? osg::Geometry::BIND_PER_VERTEX : osg::Geometry::BIND_OVERALL;
+        }
+
+        std::vector<osg::Vec2Array*> newTexCoordsArrays;
+        for( unsigned i=0; i<texCoordArrayUnits.size(); ++i )
         {
-            if ( !canOptimize(*geom) )
-                continue;
+            osg::Vec2Array* newTexCoords = new osg::Vec2Array();
+            newTexCoords->reserve( numVerts );
+            newTexCoordsArrays.push_back( newTexCoords );
+	    }
 
-            // optimize it into triangles first:
-            run( *geom );
+	    unsigned offset = 0;
+	    osg::Geometry::PrimitiveSetList newPrimSets;
 
-            osg::Array* verts = geom->getVertexArray();
-            if ( verts )
-                numVerts += verts->getNumElements();
+        std::vector<osg::ref_ptr<osg::Geometry> > nonOptimizedGeoms;
 
-            osg::Array* colors = geom->getColorArray();
-            if ( colors )
-                numColors += colors->getNumElements();
+        osg::StateSet* unifiedStateSet = 0L;
 
-            osg::Array* normals = geom->getNormalArray();
-            if ( normals )
-                numNormals += normals->getNumElements();
+        for( DrawableList::iterator i = start; i != end; ++i )
+	    {
+		    osg::Geometry* geom = i->get()->asGeometry(); //geode.getDrawable(i)->asGeometry();
 
-            // NOTE!! tex/attrib array counts much already be equal.
-            if ( texCoordArrayUnits.size() == 0 )
-            {
-                for( unsigned u=0; u<32; ++u ) {
-                    if ( geom->getTexCoordArray(u) != 0L )
-                        texCoordArrayUnits.push_back( u );
+            // merge in the stateset:
+            if ( unifiedStateSet == 0L )
+                unifiedStateSet = geom->getStateSet();
+            else if ( geom->getStateSet() )
+                unifiedStateSet->merge( *geom->getStateSet() );            
+
+		    // copy over the verts:
+		    osg::Vec3Array* geomVerts = dynamic_cast<osg::Vec3Array*>( geom->getVertexArray() );
+		    if ( geomVerts )
+		    {
+			    std::copy( geomVerts->begin(), geomVerts->end(), std::back_inserter(*newVerts) );
+
+			    if ( newColors )
+			    {
+				    osg::Vec4Array* colors = dynamic_cast<osg::Vec4Array*>( geom->getColorArray() );
+				    if ( colors )
+				    {
+					    if ( newColorsBinding == osg::Geometry::BIND_PER_VERTEX )
+					    {
+						    std::copy( colors->begin(), colors->end(), std::back_inserter(*newColors) );
+					    }
+					    else if ( i == start ) //i == 0 ) // overall
+					    {
+						    newColors->push_back( (*colors)[0] );
+					    }
+				    }
+			    }
+
+			    if ( newNormals )
+			    {
+				    osg::Vec3Array* normals = dynamic_cast<osg::Vec3Array*>( geom->getNormalArray() );
+				    if ( normals )
+				    {
+					    if ( newNormalsBinding == osg::Geometry::BIND_PER_VERTEX )
+					    {
+						    std::copy( normals->begin(), normals->end(), std::back_inserter(*newNormals) );
+					    }
+					    else if ( i == start ) //0 ) // overall
+					    {
+						    newNormals->push_back( (*normals)[0] );
+					    }
+				    }
+			    }
+
+                if ( newTexCoordsArrays.size() > 0 )
+                {
+                    for( unsigned a=0; a<texCoordArrayUnits.size(); ++a )
+                    {
+                        unsigned unit = texCoordArrayUnits[a];
+                        osg::Vec2Array* texCoords = dynamic_cast<osg::Vec2Array*>( geom->getTexCoordArray(unit) );
+                        if ( texCoords )
+                        {
+                            osg::Vec2Array* newTexCoords = newTexCoordsArrays[a];
+                            std::copy( texCoords->begin(), texCoords->end(), std::back_inserter(*newTexCoords) );
+                        }
+                    }
                 }
-            }
 
-            numVertAttribArrays += geom->getNumVertexAttribArrays();
+                osg::ref_ptr<osg::Referenced> sharedUserData;
+
+			    for( unsigned j=0; j < geom->getNumPrimitiveSets(); ++j )
+			    {
+				    osg::PrimitiveSet* pset = geom->getPrimitiveSet(j);
+				    osg::PrimitiveSet* newpset = 0L;
+
+                    // all primsets have the same user data (or else we would not have made it this far
+                    // since canOptimize would be false)
+                    if ( !sharedUserData.valid() )
+                        sharedUserData = pset->getUserData();
+
+				    if ( dynamic_cast<osg::DrawElementsUByte*>(pset) )
+					    newpset = remake( static_cast<osg::DrawElementsUByte*>(pset), numVerts, offset );
+				    else if ( dynamic_cast<osg::DrawElementsUShort*>(pset) )
+					    newpset = remake( static_cast<osg::DrawElementsUShort*>(pset), numVerts, offset );
+				    else if ( dynamic_cast<osg::DrawElementsUInt*>(pset) )
+					    newpset = remake( static_cast<osg::DrawElementsUInt*>(pset), numVerts, offset );
+				    else if ( dynamic_cast<osg::DrawArrays*>(pset) )
+                        newpset = convertDAtoDE( static_cast<osg::DrawArrays*>(pset), numVerts, offset );
+
+				    if ( newpset )
+				    {
+                        newpset->setUserData( sharedUserData.get() );
+
+					    newPrimSets.push_back( newpset );
+				    }
+			    }
+
+			    offset += geomVerts->size();
+		    }
+	    }
+
+	    // assemble the new geometry.
+	    osg::Geometry* newGeom = new osg::Geometry();
+
+	    newGeom->setVertexArray( newVerts );
+
+	    if ( newColors )
+	    {
+		    newGeom->setColorArray( newColors );
+		    newGeom->setColorBinding( newColorsBinding );
+	    }
+
+	    if ( newNormals )
+	    {
+		    newGeom->setNormalArray( newNormals );
+		    newGeom->setNormalBinding( newNormalsBinding );
+	    }
+
+        if ( newTexCoordsArrays.size() > 0 )
+        {
+            for( unsigned a=0; a<texCoordArrayUnits.size(); ++a )
+            {
+                unsigned unit = texCoordArrayUnits[a];
+                newGeom->setTexCoordArray( unit, newTexCoordsArrays[a] );
+            }
         }
-    }
-
-    // bail if there are unsupported items in there.
-    if (geode.getNumDrawables() < 2 ||
-        //numTexCoordArrays       > 0 ||
-        numVertAttribArrays     > 0 )
-    {
-        return;
-    }
 
+	    newGeom->setPrimitiveSetList( newPrimSets );
+        newGeom->setStateSet( unifiedStateSet );
 
-    osg::Vec3Array* newVerts = new osg::Vec3Array();
-    newVerts->reserve( numVerts );
+        newGeom->setUseVertexBufferObjects( useVBOs );
+        newGeom->setUseDisplayList( !useVBOs );
 
-    osg::Vec4Array* newColors =0L;
-    if ( numColors > 0 )
-    {
-        newColors = new osg::Vec4Array();
-        newColors->reserve( numVerts );
-        newColorsBinding = osg::Geometry::BIND_PER_VERTEX;
-        //newColors->reserve( numColors==numVerts? numColors : 1 );
-        //newColorsBinding = numColors==numVerts? osg::Geometry::BIND_PER_VERTEX : osg::Geometry::BIND_OVERALL;
-    }
+        results.push_back( newGeom );
 
-    osg::Vec3Array* newNormals =0L;
-    if ( numNormals > 0 )
-    {
-        newNormals = new osg::Vec3Array();
-        newNormals->reserve( numVerts );
-        newNormalsBinding = osg::Geometry::BIND_PER_VERTEX;
-        //newNormals->reserve( numNormals==numVerts? numNormals : 1 );
-        //newNormalsBinding = numNormals==numVerts? osg::Geometry::BIND_PER_VERTEX : osg::Geometry::BIND_OVERALL;
+        //GeometryValidator().apply( *newGeom );
     }
+}
 
-    std::vector<osg::Vec2Array*> newTexCoordsArrays;
-    for( unsigned i=0; i<texCoordArrayUnits.size(); ++i )
-    {
-        osg::Vec2Array* newTexCoords = new osg::Vec2Array();
-        newTexCoords->reserve( numVerts );
-        newTexCoordsArrays.push_back( newTexCoords );
-    }
 
-    unsigned offset = 0;
-    osg::Geometry::PrimitiveSetList newPrimSets;
+void
+MeshConsolidator::run( osg::Geode& geode )
+{
+    bool useVBOs = false;
+    
+    // NOTE: we'd rather use the IndexMeshVisitor instead of our own code here,
+    // but the IMV does not preserve the user data attached to the primitive sets.
+    // We need that since it holds the feature index information.
+    //osgUtil::IndexMeshVisitor mesher;
+    //geode.accept(mesher);
+
+    // trivial bailout:
+    if ( geode.getNumDrawables() <= 1 )
+        return;
 
-    std::vector<osg::ref_ptr<osg::Geometry> > nonOptimizedGeoms;
+    // list of geometries to consolidate and not to consolidate.
+    DrawableList consolidate, dontConsolidate;
 
-    osg::StateSet* unifiedStateSet = 0L;
+    // list of texture coordinate array image units in use
+    std::vector<unsigned> texCoordArrayUnits;
+    texCoordArrayUnits.reserve(32);
 
+    // sort the drawables:
     for( unsigned i=0; i<geode.getNumDrawables(); ++i )
     {
         osg::Geometry* geom = geode.getDrawable(i)->asGeometry();
         if ( geom )
         {
-            if ( !canOptimize(*geom) )
-            {
-                nonOptimizedGeoms.push_back(geom);
-                continue;
-            }
-
-            // merge in the stateset:
-            if ( unifiedStateSet == 0L )
-                unifiedStateSet = geom->getStateSet();
-            else if ( geom->getStateSet() )
-                unifiedStateSet->merge( *geom->getStateSet() );                
-
-            // copy over the verts:
-            osg::Vec3Array* geomVerts = dynamic_cast<osg::Vec3Array*>( geom->getVertexArray() );
-            if ( geomVerts )
+            if ( canOptimize(*geom) )
             {
-                std::copy( geomVerts->begin(), geomVerts->end(), std::back_inserter(*newVerts) );
-
-                if ( newColors )
-                {
-                    osg::Vec4Array* colors = dynamic_cast<osg::Vec4Array*>( geom->getColorArray() );
-                    if ( colors )
-                    {
-                        if ( newColorsBinding == osg::Geometry::BIND_PER_VERTEX )
-                        {
-                            std::copy( colors->begin(), colors->end(), std::back_inserter(*newColors) );
-                        }
-                        else if ( i == 0 ) // overall
-                        {
-                            newColors->push_back( (*colors)[0] );
-                        }
-                    }
-                }
-
-                if ( newNormals )
-                {
-                    osg::Vec3Array* normals = dynamic_cast<osg::Vec3Array*>( geom->getNormalArray() );
-                    if ( normals )
-                    {
-                        if ( newNormalsBinding == osg::Geometry::BIND_PER_VERTEX )
-                        {
-                            std::copy( normals->begin(), normals->end(), std::back_inserter(*newNormals) );
-                        }
-                        else if ( i == 0 ) // overall
-                        {
-                            newNormals->push_back( (*normals)[0] );
-                        }
-                    }
-                }
+                // convert all primitives to triangles.
+                convertToTriangles( *geom );
 
-                if ( newTexCoordsArrays.size() > 0 )
+                // NOTE!! tex/attrib array counts much already be equal.
+                if ( texCoordArrayUnits.size() == 0 )
                 {
-                    for( unsigned a=0; a<texCoordArrayUnits.size(); ++a )
-                    {
-                        unsigned unit = texCoordArrayUnits[a];
-                        osg::Vec2Array* texCoords = dynamic_cast<osg::Vec2Array*>( geom->getTexCoordArray(unit) );
-                        if ( texCoords )
-                        {
-                            osg::Vec2Array* newTexCoords = newTexCoordsArrays[a];
-                            std::copy( texCoords->begin(), texCoords->end(), std::back_inserter(*newTexCoords) );
-                        }
+                    for( unsigned u=0; u<32; ++u ) {
+                        if ( geom->getTexCoordArray(u) != 0L )
+                            texCoordArrayUnits.push_back( u );
                     }
-                }
 
-                for( unsigned j=0; j < geom->getNumPrimitiveSets(); ++j )
-                {
-                    osg::PrimitiveSet* pset = geom->getPrimitiveSet(j);
-                    osg::PrimitiveSet* newpset = 0L;
-                    
-                    if ( dynamic_cast<osg::DrawElementsUByte*>(pset) )
-                        newpset = remake( static_cast<osg::DrawElementsUByte*>(pset), numVerts, offset );
-                    else if ( dynamic_cast<osg::DrawElementsUShort*>(pset) )
-                        newpset = remake( static_cast<osg::DrawElementsUShort*>(pset), numVerts, offset );
-                    else if ( dynamic_cast<osg::DrawElementsUInt*>(pset) )
-                        newpset = remake( static_cast<osg::DrawElementsUInt*>(pset), numVerts, offset );
-                    else if ( dynamic_cast<osg::DrawArrays*>(pset) )
-                        newpset = new osg::DrawArrays( pset->getMode(), offset, geomVerts->size() );
-
-                    if ( newpset )
-                        newPrimSets.push_back( newpset );
+                    if ( geom->getUseVertexBufferObjects() )
+                        useVBOs = true;
                 }
 
-                offset += geomVerts->size();
+                consolidate.push_back(geom);
+            }
+            else
+            {
+                dontConsolidate.push_back(geom);
             }
         }
     }
 
-    // assemble the new geometry.
-    osg::Geometry* newGeom = new osg::Geometry();
+    // start consolidating the geometries.
+    unsigned targetNumVertsPerGeom = 100000; //TODO: configurable?
+    DrawableList results;
 
-    newGeom->setVertexArray( newVerts );
-    
-    if ( newColors )
-    {
-        newGeom->setColorArray( newColors );
-        newGeom->setColorBinding( newColorsBinding );
-    }
+    unsigned numVerts = 0, numColors = 0, numNormals = 0;
+    DrawableList::iterator start = consolidate.begin();
 
-    if ( newNormals )
+    for( DrawableList::iterator end = consolidate.begin(); end != consolidate.end(); )
     {
-        newGeom->setNormalArray( newNormals );
-        newGeom->setNormalBinding( newNormalsBinding );
-    }
+        osg::Geometry* geom = end->get()->asGeometry(); // already type-checked this earlier.
+        unsigned geomNumVerts = geom->getVertexArray()->getNumElements();
 
-    if ( newTexCoordsArrays.size() > 0 )
-    {
-        for( unsigned a=0; a<texCoordArrayUnits.size(); ++a )
+        ++end;
+
+        numVerts += geomNumVerts;
+        if ( geom->getColorArray() )
+            numColors += geom->getColorArray()->getNumElements();
+        if ( geom->getNormalArray() )
+            numNormals += geom->getNormalArray()->getNumElements();
+
+        if ( numVerts > targetNumVertsPerGeom || end == consolidate.end() )
         {
-            unsigned unit = texCoordArrayUnits[a];
-            newGeom->setTexCoordArray( unit, newTexCoordsArrays[a] );
+            OE_DEBUG << LC << "Merging " << ((unsigned)(end-start)) << " geoms with " << numVerts << " verts." << std::endl;
+
+            merge( start, end, numVerts, numColors, numNormals, texCoordArrayUnits, useVBOs, results );
+
+            start = end;
+            numVerts = 0, numColors = 0, numNormals = 0;
         }
     }
 
-    newGeom->setPrimitiveSetList( newPrimSets );
-    newGeom->setStateSet( unifiedStateSet );
+    // re-build the geode:
+	geode.removeDrawables( 0, geode.getNumDrawables() );
+
+    for( DrawableList::iterator i = results.begin(); i != results.end(); ++i )
+        geode.addDrawable( i->get() );
 
-    // replace the geode's drawables
-    geode.removeDrawables( 0, geode.getNumDrawables() );
-    geode.addDrawable( newGeom );
-    for( std::vector<osg::ref_ptr<osg::Geometry> >::iterator i = nonOptimizedGeoms.begin(); i != nonOptimizedGeoms.end(); ++i )
+    for( DrawableList::iterator i = dontConsolidate.begin(); i != dontConsolidate.end(); ++i )
         geode.addDrawable( i->get() );
 }
diff --git a/src/osgEarthSymbology/MeshSubdivider b/src/osgEarthSymbology/MeshSubdivider
index 98c0d97..89d4e01 100644
--- a/src/osgEarthSymbology/MeshSubdivider
+++ b/src/osgEarthSymbology/MeshSubdivider
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -45,7 +45,6 @@ namespace osgEarth { namespace Symbology
 
         /**
          * Sets the maximum number elements in each generated primitive set.
-         * This class will break up the resulting geometry if requested.
          */
         void setMaxElementsPerEBO( unsigned int value ) {
             _maxElementsPerEBO = value; }
diff --git a/src/osgEarthSymbology/MeshSubdivider.cpp b/src/osgEarthSymbology/MeshSubdivider.cpp
index 59ce2e6..711e01b 100644
--- a/src/osgEarthSymbology/MeshSubdivider.cpp
+++ b/src/osgEarthSymbology/MeshSubdivider.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthSymbology/MeshSubdivider>
-#include <osgEarthSymbology/LineFunctor>
+#include <osgEarth/LineFunctor>
 #include <osgEarth/GeoMath>
 #include <osg/TriangleFunctor>
 #include <osg/TriangleIndexFunctor>
@@ -121,7 +121,7 @@ namespace
         Triangle() { }
         Triangle(GLuint i0, GLuint i1, GLuint i2) : 
         _i0(i0), _i1(i1), _i2(i2){}                 
-        GLuint _i0, _i1, _i2;        
+        GLuint _i0, _i1, _i2;
     };
 
     typedef std::queue<Triangle> TriangleQueue;
@@ -133,16 +133,22 @@ namespace
         typedef std::map<osg::Vec3,GLuint> VertMap;        
         VertMap _vertMap;
         osg::Vec3Array* _sourceVerts;
+        osg::Vec4Array* _sourceColors;
         osg::Vec2Array* _sourceTexCoords;
+        osg::Vec3Array* _sourceNormals;
         osg::ref_ptr<osg::Vec3Array> _verts;        
+        osg::ref_ptr<osg::Vec4Array> _colors;
         osg::ref_ptr<osg::Vec2Array> _texcoords;
+        osg::ref_ptr<osg::Vec3Array> _normals;
         TriangleQueue _tris;
         
         TriangleData()
         {            
-            _verts = new osg::Vec3Array();             
-            _sourceVerts = 0;
+            _verts           = new osg::Vec3Array();             
+            _sourceVerts     = 0;
+            _sourceColors    = 0;
             _sourceTexCoords = 0;
+            _sourceNormals   = 0;
         }       
 
         void setSourceVerts(osg::Vec3Array* sourceVerts )
@@ -150,13 +156,34 @@ namespace
             _sourceVerts = sourceVerts;
         }
 
+        void setSourceColors(osg::Vec4Array* sourceColors)
+        {
+            if ( sourceColors )
+            {
+                _sourceColors = sourceColors;
+                _colors       = new osg::Vec4Array();
+            }
+        }
+
         void setSourceTexCoords(osg::Vec2Array* sourceTexCoords)
         {
-            _sourceTexCoords = sourceTexCoords;
-            _texcoords = new osg::Vec2Array();
+            if ( sourceTexCoords )
+            {
+                _sourceTexCoords = sourceTexCoords;
+                _texcoords       = new osg::Vec2Array();
+            }
         }
 
-        GLuint record( const osg::Vec3& v, const osg::Vec2f& t )
+        void setSourceNormals(osg::Vec3Array* sourceNormals)
+        {
+            if ( sourceNormals )
+            {
+                _sourceNormals = sourceNormals;
+                _normals       = new osg::Vec3Array();
+            }
+        }
+
+        GLuint record( const osg::Vec3& v, const osg::Vec2f& t, const osg::Vec4f& c, const osg::Vec3& n )
         {
             VertMap::iterator i = _vertMap.find(v);
             if ( i == _vertMap.end() )
@@ -167,7 +194,15 @@ namespace
                 //Only push back the texture coordinate if it's valid
                 if (_texcoords)
                 {
-                  _texcoords->push_back( t );
+                    _texcoords->push_back( t );
+                }
+                if (_colors)
+                {
+                    _colors->push_back( c );
+                }
+                if ( _normals )
+                {
+                    _normals->push_back( n );
                 }
                 return index;
             }
@@ -182,7 +217,8 @@ namespace
         {
             const osg::Vec3 v0 = (*_sourceVerts)[p1];
             const osg::Vec3 v1 = (*_sourceVerts)[p2];
-            const osg::Vec3 v2 = (*_sourceVerts)[p3];            
+            const osg::Vec3 v2 = (*_sourceVerts)[p3];   
+
             osg::Vec2 t0, t1, t2;
             if (_sourceTexCoords)
             {
@@ -190,8 +226,24 @@ namespace
                 t1 = (*_sourceTexCoords)[p2];
                 t2 = (*_sourceTexCoords)[p3];
             }
-            _tris.push( Triangle(record(v0, t0), record(v1, t1), record(v2, t2)) );            
-            //OE_NOTICE << "Incoming verts " << p1 << ", " << p2 << ", " << p3 << std::endl;
+            
+            osg::Vec4 c0, c1, c2;
+            if (_sourceColors)
+            {
+                c0 = (*_sourceColors)[p1];
+                c1 = (*_sourceColors)[p2];
+                c2 = (*_sourceColors)[p3];
+            }
+
+            osg::Vec3 n0, n1, n2;
+            if (_sourceNormals)
+            {
+                n0 = (*_sourceNormals)[p1];
+                n1 = (*_sourceNormals)[p2];
+                n2 = (*_sourceNormals)[p3];
+            }
+
+            _tris.push( Triangle(record(v0, t0, c0, n0), record(v1, t1, c1, n1), record(v2, t2, c2, n2)) );
         }
     };      
 
@@ -264,29 +316,70 @@ namespace
         GLuint _i0, _i1;
     };
 
-    typedef std::queue<Line> LineQueue;
+    typedef std::queue<Line>  LineQueue;
     typedef std::vector<Line> LineVector;
 
     struct LineData
     {
-        typedef std::map<osg::Vec3,GLuint> VertMap;
+        typedef std::map<osg::Vec3,GLuint> VertMap;        
         VertMap _vertMap;
-        osg::Vec3Array* _verts;
+        osg::Vec3Array* _sourceVerts;
+        osg::Vec4Array* _sourceColors;
+        osg::Vec2Array* _sourceTexCoords;
+        osg::ref_ptr<osg::Vec3Array> _verts;        
+        osg::ref_ptr<osg::Vec4Array> _colors;
+        osg::ref_ptr<osg::Vec2Array> _texcoords;
         LineQueue _lines;
         
         LineData()
+        {            
+            _verts           = new osg::Vec3Array();      
+            _colors          = 0;
+            _texcoords       = 0;
+            _sourceVerts     = 0;
+            _sourceColors    = 0;
+            _sourceTexCoords = 0;
+        }       
+
+        void setSourceVerts(osg::Vec3Array* sourceVerts )
+        {
+            _sourceVerts = sourceVerts;
+        }
+
+        void setSourceColors(osg::Vec4Array* sourceColors )
         {
-            _verts = new osg::Vec3Array();
+            if ( sourceColors )
+            {
+                _sourceColors = sourceColors;
+                _colors       = new osg::Vec4Array();
+            }
         }
 
-        GLuint record( const osg::Vec3& v )
+        void setSourceTexCoords(osg::Vec2Array* sourceTexCoords)
+        {
+            if ( sourceTexCoords )
+            {
+                _sourceTexCoords = sourceTexCoords;
+                _texcoords       = new osg::Vec2Array();
+            }
+        }
+
+        GLuint record( const osg::Vec3& v, const osg::Vec2f& t, const osg::Vec4f& c )
         {
             VertMap::iterator i = _vertMap.find(v);
             if ( i == _vertMap.end() )
             {
                 GLuint index = _verts->size();
-                _verts->push_back(v);
+                _verts->push_back(v);                
                 _vertMap[v] = index;
+                if (_texcoords)
+                {
+                    _texcoords->push_back( t );
+                }
+                if (_colors)
+                {
+                    _colors->push_back( c );
+                }
                 return index;
             }
             else
@@ -294,12 +387,30 @@ namespace
                 return i->second;
             }
         }
-        
-        void operator()( const osg::Vec3& v0, const osg::Vec3& v1, bool temp )
+       
+
+        void line(unsigned p0, unsigned p1)
         {
-            _lines.push( Line( record(v0), record(v1) ) );
+            const osg::Vec3 v0 = (*_sourceVerts)[p0];
+            const osg::Vec3 v1 = (*_sourceVerts)[p1];   
+
+            osg::Vec2 t0, t1;
+            if (_sourceTexCoords)
+            {
+                t0 = (*_sourceTexCoords)[p0];
+                t1 = (*_sourceTexCoords)[p1];
+            }
+            
+            osg::Vec4 c0, c1;
+            if (_sourceColors)
+            {
+                c0 = (*_sourceColors)[p0];
+                c1 = (*_sourceColors)[p1];
+            }
+
+            _lines.push( Line(record(v0,t0,c0), record(v1,t1,c1)) );
         }
-    };       
+    };         
     
     /**
      * Populates the geometry object with a collection of index elements primitives.
@@ -359,7 +470,11 @@ namespace
         unsigned int         maxElementsPerEBO )
     {
         // collect all the line segments in the geometry.
-        LineFunctor<LineData> data;
+        LineIndexFunctor<LineData> data;
+        data.setSourceVerts( static_cast<osg::Vec3Array*>(geom.getVertexArray()) );
+        if ( geom.getColorBinding() == osg::Geometry::BIND_PER_VERTEX )
+            data.setSourceColors( static_cast<osg::Vec4Array*>(geom.getColorArray()) );
+        //LineFunctor<LineData> data;
         geom.accept( data );
     
         int numLinesIn = data._lines.size();
@@ -381,6 +496,21 @@ namespace
             if ( g0 > granularity )
             {
                 data._verts->push_back( geocentricMidpoint(v0_w, v1_w, interp) * W2L );
+
+                if ( data._colors )
+                {
+                    const osg::Vec4f& c0 = (*data._colors)[line._i0];
+                    const osg::Vec4f& c1 = (*data._colors)[line._i1];
+                    data._colors->push_back( (c0 + c1) / 2.0 );
+                }
+
+                if ( data._texcoords )
+                {
+                    const osg::Vec2& t0 = (*data._texcoords)[line._i0];
+                    const osg::Vec2& t1 = (*data._texcoords)[line._i1];
+                    data._texcoords->push_back( (t0 + t1) / 2.0 );
+                }
+
                 GLuint i = data._verts->size()-1;
 
                 data._lines.push( Line( line._i0, i ) );
@@ -400,6 +530,13 @@ namespace
 
             // set the new VBO.
             geom.setVertexArray( data._verts );
+            if ( geom.getVertexArray()->getVertexBufferObject() && data._verts->getVertexBufferObject() )
+            {
+                data._verts->getVertexBufferObject()->setUsage( geom.getVertexArray()->getVertexBufferObject()->getUsage() );
+            }
+
+            if ( data._colors )
+                geom.setColorArray( data._colors );
 
             if ( data._verts->size() < 256 )
                 populateLines<osg::DrawElementsUByte,GLubyte>( geom, done, maxElementsPerEBO );
@@ -435,8 +572,13 @@ namespace
         osg::TriangleIndexFunctor<TriangleData> data;;
         data.setSourceVerts(dynamic_cast<osg::Vec3Array*>(geom.getVertexArray()));
         data.setSourceTexCoords(dynamic_cast<osg::Vec2Array*>(geom.getTexCoordArray(0)));
-        geom.accept( data );
+        if ( geom.getColorBinding() == osg::Geometry::BIND_PER_VERTEX )
+            data.setSourceColors(dynamic_cast<osg::Vec4Array*>(geom.getColorArray()));
+        if ( geom.getNormalBinding() == osg::Geometry::BIND_PER_VERTEX )
+            data.setSourceNormals(dynamic_cast<osg::Vec3Array*>(geom.getNormalArray()));
 
+        //TODO normals
+        geom.accept( data );
         
         int numTrisIn = data._tris.size();        
 
@@ -456,9 +598,29 @@ namespace
             osg::Vec3d v1_w = (*data._verts)[tri._i1] * L2W;
             osg::Vec3d v2_w = (*data._verts)[tri._i2] * L2W;
 
-            osg::Vec2  t0 = (*data._texcoords)[tri._i0];
-            osg::Vec2  t1 = (*data._texcoords)[tri._i1];
-            osg::Vec2  t2 = (*data._texcoords)[tri._i2];
+            osg::Vec2 t0,t1,t2;
+            if ( data._texcoords.valid() )
+            {
+                t0 = (*data._texcoords)[tri._i0];
+                t1 = (*data._texcoords)[tri._i1];
+                t2 = (*data._texcoords)[tri._i2];
+            }
+
+            osg::Vec4f c0,c1,c2;
+            if ( data._colors.valid() )
+            {
+                c0 = (*data._colors)[tri._i0];
+                c1 = (*data._colors)[tri._i1];
+                c2 = (*data._colors)[tri._i2];
+            }
+
+            osg::Vec3 n0,n1,n2;
+            if ( data._normals.valid() )
+            {
+                n0 = (*data._normals)[tri._i0];
+                n1 = (*data._normals)[tri._i1];
+                n2 = (*data._normals)[tri._i2];
+            }
 
             double g0 = angleBetween(v0_w, v1_w);
             double g1 = angleBetween(v1_w, v2_w);
@@ -476,7 +638,12 @@ namespace
                     if ( ei == edges.end() )
                     {
                         data._verts->push_back( geocentricMidpoint(v0_w, v1_w, interp) * W2L );
-                        data._texcoords->push_back( (t0 + t1) / 2.0f );
+                        if ( data._colors.valid() )
+                            data._colors->push_back( (c0 + c1) / 2.0f );
+                        if ( data._texcoords.valid() )
+                            data._texcoords->push_back( (t0 + t1) / 2.0f );
+                        if ( data._normals.valid() )
+                            data._normals->push_back( (n0 + n1) / 2.0f );
                         i = data._verts->size() - 1;
                         edges[edge] = i;
                     }
@@ -497,7 +664,12 @@ namespace
                     if ( ei == edges.end() )
                     {
                         data._verts->push_back( geocentricMidpoint(v1_w, v2_w, interp) * W2L );
-                        data._texcoords->push_back( (t1 + t2) / 2.0f );
+                        if ( data._colors.valid() )
+                            data._colors->push_back( (c1 + c2) / 2.0f );
+                        if ( data._texcoords.valid() )
+                            data._texcoords->push_back( (t1 + t2) / 2.0f );
+                        if ( data._normals.valid() )
+                            data._normals->push_back( (n1 + n2) / 2.0f );
                         i = data._verts->size() - 1;
                         edges[edge] = i;
                     }
@@ -518,7 +690,12 @@ namespace
                     if ( ei == edges.end() )
                     {
                         data._verts->push_back( geocentricMidpoint(v2_w, v0_w, interp) * W2L );
-                        data._texcoords->push_back( (t2 + t0) / 2.0f );
+                        if ( data._colors.valid() )
+                            data._colors->push_back( (c2 + c0) / 2.0f );
+                        if ( data._texcoords.valid() )
+                            data._texcoords->push_back( (t2 + t0) / 2.0f );
+                        if ( data._normals.valid() )
+                            data._normals->push_back( (n2 + n0) / 2.0f );
                         i = data._verts->size() - 1;
                         edges[edge] = i;
                     }
@@ -546,8 +723,17 @@ namespace
 
             // set the new VBO.
             geom.setVertexArray( data._verts.get() );
+            if ( geom.getVertexArray()->getVertexBufferObject() && data._verts->getVertexBufferObject() )
+            {
+                data._verts->getVertexBufferObject()->setUsage( geom.getVertexArray()->getVertexBufferObject()->getUsage() );
+            }
 
-            geom.setTexCoordArray(0, data._texcoords.get() );
+            if ( data._colors.valid() )
+                geom.setColorArray( data._colors.get() );
+            if ( data._texcoords.valid() )
+                geom.setTexCoordArray(0, data._texcoords.get() );
+            if ( data._normals.valid() )
+                geom.setNormalArray( data._normals.get() );
 
             if ( data._verts->size() < 256 )
                 populateTriangles<osg::DrawElementsUByte,GLubyte>( geom, done, maxElementsPerEBO );
diff --git a/src/osgEarthSymbology/ModelResource b/src/osgEarthSymbology/ModelResource
new file mode 100644
index 0000000..f1e4bf0
--- /dev/null
+++ b/src/osgEarthSymbology/ModelResource
@@ -0,0 +1,56 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_MODEL_RESOURCE_H
+#define OSGEARTHSYMBOLOGY_MODEL_RESOURCE_H 1
+
+#include <osgEarthSymbology/Common>
+#include <osgEarthSymbology/InstanceResource>
+
+namespace osgEarth { namespace Symbology
+{
+    using namespace osgEarth;
+
+    /**
+     * A resource that materializes an InstanceSymbol, which is a single-point object
+     * that resolves to an osg::Node. Instances are usually used for point-model
+     * substitution.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT ModelResource : public InstanceResource
+    {
+    public:
+        /** Constructs a new resource. */
+        ModelResource( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~ModelResource() { }
+
+    public: // serialization methods
+
+        virtual Config getConfig() const;
+        void mergeConfig( const Config& conf );
+
+    protected: // InstanceResource
+
+        virtual osg::Node* createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const;
+    };
+
+} } // namespace osgEarth::Symbology
+
+#endif // OSGEARTHSYMBOLOGY_MODEL_RESOURCE_H
diff --git a/src/osgEarthSymbology/ModelResource.cpp b/src/osgEarthSymbology/ModelResource.cpp
new file mode 100644
index 0000000..de560b1
--- /dev/null
+++ b/src/osgEarthSymbology/ModelResource.cpp
@@ -0,0 +1,69 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/ModelResource>
+#include <osgEarth/StringUtils>
+
+#define LC "[ModelResource] "
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+//---------------------------------------------------------------------------
+
+ModelResource::ModelResource( const Config& conf ) :
+InstanceResource( conf )
+{
+    mergeConfig( conf );
+}
+
+void
+ModelResource::mergeConfig( const Config& conf )
+{
+    //nop
+}
+
+Config
+ModelResource::getConfig() const
+{
+    Config conf = InstanceResource::getConfig();
+    conf.key() = "model";
+    //nop
+    return conf;
+}
+
+osg::Node*
+ModelResource::createNodeFromURI( const URI& uri, const osgDB::Options* dbOptions ) const
+{
+    osg::Node* node = 0L;
+
+    ReadResult r = uri.getNode( dbOptions );
+    if ( r.succeeded() )
+    {
+        node = r.releaseNode();
+    }
+    else // failing that, fall back on the old encoding format..
+    {
+        StringVector tok;
+        StringTokenizer( *uri, tok, "()" );
+        if (tok.size() >= 2)
+            return createNodeFromURI( URI(tok[1]), dbOptions );
+    }
+
+    return node;
+}
diff --git a/src/osgEarthSymbology/ModelSymbol b/src/osgEarthSymbology/ModelSymbol
new file mode 100644
index 0000000..ccbc91d
--- /dev/null
+++ b/src/osgEarthSymbology/ModelSymbol
@@ -0,0 +1,79 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHSYMBOLOGY_MODEL_SYMBOL_H
+#define OSGEARTHSYMBOLOGY_MODEL_SYMBOL_H 1
+
+#include <climits>
+
+#include <osgEarth/Common>
+#include <osgEarthSymbology/InstanceSymbol>
+#include <osg/Vec3f>
+
+namespace osgEarth { namespace Symbology
+{
+    class InstanceResource;
+
+    /**
+     * Represents an external 3D model
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT ModelSymbol : public InstanceSymbol
+    {
+    public:
+        ModelSymbol( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~ModelSymbol() { }
+
+        /** heading in degrees */
+        optional<NumericExpression>& heading() { return _heading; }
+        const optional<NumericExpression>& heading() const { return _heading; }
+
+        /** pitch in degrees */
+        optional<NumericExpression>& pitch() { return _pitch; }
+        const optional<NumericExpression>& pitch() const { return _pitch; }
+        
+        /** roll in degrees */
+        optional<NumericExpression>& roll() { return _roll; }
+        const optional<NumericExpression>& roll() const { return _roll; }
+        
+    public: // non-serialized properties (for programmatic use only)
+
+        /** Explicit model to use for model placement */
+        void setModel( osg::Node* node ) { _node = node; }
+        osg::Node* getModel() const { return _node.get(); }
+
+    public:
+        virtual Config getConfig() const;
+        virtual void mergeConfig( const Config& conf );
+    
+    public: // InstanceSymbol
+        /** Creates a new (empty) resource appropriate for this symbol */
+        virtual InstanceResource* createResource() const;
+
+    protected:
+        optional<NumericExpression>  _heading;
+        optional<NumericExpression>  _pitch;
+        optional<NumericExpression>  _roll;
+        osg::ref_ptr<osg::Node>      _node;
+    };
+
+} } // namespace osgEarth::Symbology
+
+#endif
diff --git a/src/osgEarthSymbology/ModelSymbol.cpp b/src/osgEarthSymbology/ModelSymbol.cpp
new file mode 100644
index 0000000..b47394e
--- /dev/null
+++ b/src/osgEarthSymbology/ModelSymbol.cpp
@@ -0,0 +1,65 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthSymbology/ModelSymbol>
+#include <osgEarthSymbology/ModelResource>
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+ModelSymbol::ModelSymbol( const Config& conf ) :
+InstanceSymbol( conf ),
+_heading( NumericExpression(0.0) ),
+_pitch  ( NumericExpression(0.0) ),
+_roll   ( NumericExpression(0.0) )
+{
+    mergeConfig( conf );
+}
+
+Config 
+ModelSymbol::getConfig() const
+{
+    Config conf = InstanceSymbol::getConfig();
+    conf.key() = "model";
+    conf.addObjIfSet( "heading",   _heading );
+    conf.addObjIfSet( "pitch",     _pitch );
+    conf.addObjIfSet( "roll",      _roll );
+
+    conf.addIfSet   ( "alias_map", _uriAliasMap );
+
+    conf.addNonSerializable( "ModelSymbol::node", _node.get() );
+    return conf;
+}
+
+void 
+ModelSymbol::mergeConfig( const Config& conf )
+{
+    conf.getObjIfSet( "heading", _heading );
+    conf.getObjIfSet( "pitch",   _pitch );
+    conf.getObjIfSet( "roll",    _roll );
+
+    conf.getIfSet   ( "alias_map", _uriAliasMap );
+
+    _node = conf.getNonSerializable<osg::Node>( "ModelSymbol::node" );
+}
+
+InstanceResource*
+ModelSymbol::createResource() const
+{
+    return new ModelResource();
+}
diff --git a/src/osgEarthSymbology/PointSymbol b/src/osgEarthSymbology/PointSymbol
index fea9523..199831c 100644
--- a/src/osgEarthSymbology/PointSymbol
+++ b/src/osgEarthSymbology/PointSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -32,6 +32,9 @@ namespace osgEarth { namespace Symbology
     public:
         PointSymbol( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~PointSymbol() { }
+
         /** Point fill properties. */
         optional<Fill>& fill() { return _fill; }
         const optional<Fill>& fill() const { return _fill; }
diff --git a/src/osgEarthSymbology/PointSymbol.cpp b/src/osgEarthSymbology/PointSymbol.cpp
index 51ed308..848c7d0 100644
--- a/src/osgEarthSymbology/PointSymbol.cpp
+++ b/src/osgEarthSymbology/PointSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/PolygonSymbol b/src/osgEarthSymbology/PolygonSymbol
index 2da2ad7..8c4b80e 100644
--- a/src/osgEarthSymbology/PolygonSymbol
+++ b/src/osgEarthSymbology/PolygonSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -36,6 +36,9 @@ namespace osgEarth { namespace Symbology
     public:
         PolygonSymbol( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~PolygonSymbol() { }
+
         /** Polygon fill properties. */
         optional<Fill>& fill() { return _fill; }
         const optional<Fill>& fill() const { return _fill; }
diff --git a/src/osgEarthSymbology/PolygonSymbol.cpp b/src/osgEarthSymbology/PolygonSymbol.cpp
index 69ac9df..53c2f56 100644
--- a/src/osgEarthSymbology/PolygonSymbol.cpp
+++ b/src/osgEarthSymbology/PolygonSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/Query b/src/osgEarthSymbology/Query
index d2e35b8..0e8ae70 100644
--- a/src/osgEarthSymbology/Query
+++ b/src/osgEarthSymbology/Query
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,8 @@ namespace osgEarth { namespace Symbology
     public:
         Query( const Config& conf =Config() );
 
+        virtual ~Query() { }
+
     public: // properties
 
         /** Sets the geospatial extent bounding this query. */
@@ -45,6 +47,10 @@ namespace osgEarth { namespace Symbology
         optional<std::string>& expression() { return _expression; }
         const optional<std::string>& expression() const { return _expression; }
 
+        /** Sets a driver-specific orderby expression. */
+        optional<std::string>& orderby() { return _orderby; }
+        const optional<std::string>& orderby() const { return _orderby; }
+
         /** Sets a driver-specific query expression. */
         optional<osgEarth::TileKey>& tileKey() { return _tileKey; }
         const optional<osgEarth::TileKey>& tileKey() const { return _tileKey; }
@@ -63,6 +69,7 @@ namespace osgEarth { namespace Symbology
     protected:
         optional<Bounds> _bounds;
         optional<std::string> _expression;
+        optional<std::string> _orderby;
         optional<osgEarth::TileKey> _tileKey;
     };
 
diff --git a/src/osgEarthSymbology/Query.cpp b/src/osgEarthSymbology/Query.cpp
index 30fb8ec..d96c536 100644
--- a/src/osgEarthSymbology/Query.cpp
+++ b/src/osgEarthSymbology/Query.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -34,6 +34,8 @@ Query::mergeConfig( const Config& conf )
             if ( !conf.getIfSet( "sql", _expression ) )
                 conf.getIfSet( "expression", _expression );
 
+    conf.getIfSet("orderby", _orderby);
+
     Config b = conf.child( "extent" );
     if( !b.empty() )
     {
@@ -50,6 +52,7 @@ Query::getConfig() const
 {
     Config conf( "query" );
     conf.addIfSet( "expr", _expression );
+    conf.addIfSet( "orderby", _orderby);
     if ( _bounds.isSet() ) {
         Config bc( "extent" );
         bc.add( "xmin", toString(_bounds->xMin()) );
@@ -75,7 +78,8 @@ Query::combineWith( const Query& rhs ) const
     {
         std::stringstream buf;
         buf << "( " << *_expression << " ) AND ( " << *rhs.expression() << " )";
-        std::string str = buf.str();
+        std::string str;
+        str = buf.str();
         merged.expression() = str;
     }
     else if ( lhsEmptyExpr && !rhsEmptyExpr )
@@ -87,18 +91,26 @@ Query::combineWith( const Query& rhs ) const
         merged.expression() = *_expression;
     }
 
-    // merge the bounds:
-    if ( bounds().isSet() && rhs.bounds().isSet() )
-    {
-        merged.bounds() = bounds()->intersectionWith( *rhs.bounds() );
-    }
-    else if ( bounds().isSet() )
+    // tilekey overrides bounds:
+    if ( _tileKey.isSet() )
     {
-        merged.bounds() = *bounds();
+        merged.tileKey() = *_tileKey;
     }
-    else if ( rhs.bounds().isSet() )
+    else
     {
-        merged.bounds() = *rhs.bounds();
+        // merge the bounds:
+        if ( bounds().isSet() && rhs.bounds().isSet() )
+        {
+            merged.bounds() = bounds()->intersectionWith( *rhs.bounds() );
+        }
+        else if ( bounds().isSet() )
+        {
+            merged.bounds() = *bounds();
+        }
+        else if ( rhs.bounds().isSet() )
+        {
+            merged.bounds() = *rhs.bounds();
+        }
     }
 
     return merged;
diff --git a/src/osgEarthSymbology/Resource b/src/osgEarthSymbology/Resource
index b701eb5..b635f96 100644
--- a/src/osgEarthSymbology/Resource
+++ b/src/osgEarthSymbology/Resource
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -35,6 +35,9 @@ namespace osgEarth { namespace Symbology
     protected:
         Resource( const Config& config =Config() );
 
+        /** dtor */
+        virtual ~Resource() { }
+
     public: // properties
 
         /** Readable name of the resource. */
diff --git a/src/osgEarthSymbology/Resource.cpp b/src/osgEarthSymbology/Resource.cpp
index 69df34c..1d83029 100644
--- a/src/osgEarthSymbology/Resource.cpp
+++ b/src/osgEarthSymbology/Resource.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -30,8 +30,7 @@ Resource::Resource( const Config& conf )
 void
 Resource::mergeConfig( const Config& conf )
 {
-    _name = conf.attr( "name" );
-
+    _name = conf.value("name");
     addTags( conf.value("tags") );
 }
 
@@ -39,7 +38,7 @@ Config
 Resource::getConfig() const
 {
     Config conf( "resource" );
-    conf.attr( "name" ) = _name;
+    conf.set("name", _name );
 
     std::string tags = tagString();
     if ( !tags.empty() )
diff --git a/src/osgEarthSymbology/ResourceCache b/src/osgEarthSymbology/ResourceCache
index 38f3173..70342a7 100644
--- a/src/osgEarthSymbology/ResourceCache
+++ b/src/osgEarthSymbology/ResourceCache
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -23,11 +23,14 @@
 #include <osgEarthSymbology/Common>
 #include <osgEarthSymbology/Skins>
 #include <osgEarthSymbology/MarkerResource>
-#include <osgEarth/Utils>
+#include <osgEarthSymbology/InstanceResource>
+#include <osgEarth/Containers>
 #include <osgEarth/ThreadingUtils>
 
 namespace osgEarth { namespace Symbology
 {
+    using namespace osgEarth;
+
     /**
      * Caches the runtime objects created by resources, so we can avoid creating them
      * each time they are referenced.
@@ -43,7 +46,12 @@ namespace osgEarth { namespace Symbology
          * @param threadSafe Whether to protect access to the cache so that you can
          *        use it from multiple threads (default = false)
          */
-        ResourceCache( bool threadSafe =false ) : _threadSafe(threadSafe) { }
+        ResourceCache( 
+            const osgDB::Options* dbOptions,
+            bool                  threadSafe =false );
+
+        /** dtor */
+        virtual ~ResourceCache() { }
 
         /**
          * Fetches the StateSet implementation corresponding to a Skin.
@@ -57,18 +65,28 @@ namespace osgEarth { namespace Symbology
 
         /**
          * Gets a node corresponding to a marker.
+         * @deprecated
          */
         osg::Node* getMarkerNode( MarkerResource* marker );
 
+        /**
+         * Gets a node corresponding to an instance resource.
+         */
+        osg::Node* getInstanceNode( InstanceResource* instance );
+
     protected:
-        bool                      _threadSafe;
-        Threading::ReadWriteMutex _mutex;
+        osg::ref_ptr<const osgDB::Options> _dbOptions;
+        bool                               _threadSafe;
+        Threading::ReadWriteMutex          _mutex;
 
         typedef LRUCache<SkinResource*, osg::ref_ptr<osg::StateSet> > SkinCache;
         SkinCache _skinCache;
 
         typedef LRUCache<MarkerResource*, osg::ref_ptr<osg::Node> > MarkerCache;
         MarkerCache _markerCache;
+
+        typedef LRUCache<InstanceResource*, osg::ref_ptr<osg::Node> > InstanceCache;
+        InstanceCache _instanceCache;
     };
 
 } } // namespace osgEarth::Symbology
diff --git a/src/osgEarthSymbology/ResourceCache.cpp b/src/osgEarthSymbology/ResourceCache.cpp
index 280237d..61d3fb1 100644
--- a/src/osgEarthSymbology/ResourceCache.cpp
+++ b/src/osgEarthSymbology/ResourceCache.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,6 +21,14 @@
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
+ResourceCache::ResourceCache(const osgDB::Options* dbOptions,
+                             bool                  threadSafe ) :
+_dbOptions ( dbOptions ),
+_threadSafe( threadSafe )
+{
+    //nop
+}
+
 osg::StateSet*
 ResourceCache::getStateSet( SkinResource* skin )
 {
@@ -53,7 +61,7 @@ ResourceCache::getStateSet( SkinResource* skin )
             else
             {
                 // still not there, make it.
-                result = skin->createStateSet();
+                result = skin->createStateSet( _dbOptions.get() );
                 if ( result )
                     _skinCache.insert( skin, result );
             }
@@ -69,7 +77,7 @@ ResourceCache::getStateSet( SkinResource* skin )
         }
         else
         {
-            result = skin->createStateSet();
+            result = skin->createStateSet( _dbOptions.get() );
             if ( result )
                 _skinCache.insert( skin, result );
         }
@@ -79,6 +87,64 @@ ResourceCache::getStateSet( SkinResource* skin )
 }
 
 osg::Node*
+ResourceCache::getInstanceNode( InstanceResource* res )
+{
+    osg::Node* result = 0L;
+
+    if ( _threadSafe )
+    {
+        // first check if it exists
+        {
+            Threading::ScopedReadLock shared( _mutex );
+
+            InstanceCache::Record rec = _instanceCache.get( res );
+            if ( rec.valid() )
+            {
+                result = rec.value();
+            }
+        }
+
+        // no? exclusive lock and create it.
+        if ( !result )
+        {
+            Threading::ScopedWriteLock exclusive( _mutex );
+            
+            // double check to avoid race condition
+            InstanceCache::Record rec = _instanceCache.get( res );
+            if ( rec.valid() )
+            {
+                result = rec.value();
+            }
+            else
+            {
+                // still not there, make it.
+                result = res->createNode( _dbOptions.get() );
+                if ( result )
+                    _instanceCache.insert( res, result );
+            }
+        }
+    }
+
+    else
+    {
+        InstanceCache::Record rec = _instanceCache.get( res );
+        if ( rec.valid() )
+        {
+            result = rec.value();
+        }
+        else
+        {
+            result = res->createNode( _dbOptions.get() );
+            if ( result )
+                _instanceCache.insert( res, result );
+        }
+    }
+
+    return result;
+}
+
+
+osg::Node*
 ResourceCache::getMarkerNode( MarkerResource* marker )
 {
     osg::Node* result = 0L;
@@ -110,7 +176,7 @@ ResourceCache::getMarkerNode( MarkerResource* marker )
             else
             {
                 // still not there, make it.
-                result = marker->createNode();
+                result = marker->createNode( _dbOptions.get() );
                 if ( result )
                     _markerCache.insert( marker, result );
             }
@@ -126,7 +192,7 @@ ResourceCache::getMarkerNode( MarkerResource* marker )
         }
         else
         {
-            result = marker->createNode();
+            result = marker->createNode( _dbOptions.get() );
             if ( result )
                 _markerCache.insert( marker, result );
         }
diff --git a/src/osgEarthSymbology/ResourceLibrary b/src/osgEarthSymbology/ResourceLibrary
index 965ce43..19ceb74 100644
--- a/src/osgEarthSymbology/ResourceLibrary
+++ b/src/osgEarthSymbology/ResourceLibrary
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,12 +22,16 @@
 
 #include <osgEarthSymbology/Common>
 #include <osgEarthSymbology/Skins>
+#include <osgEarthSymbology/MarkerResource>
+#include <osgEarthSymbology/InstanceResource>
 #include <osgEarth/ThreadingUtils>
 #include <osgEarth/Random>
 #include <map>
 
 namespace osgEarth { namespace Symbology
 {
+    template<typename T> struct ResourceMap : public std::map<std::string, osg::ref_ptr<T> > { };
+
     /** 
      * ResourceLibrary manages a collection of external resources that a
      * build system can use the construct geometries.
@@ -39,16 +43,26 @@ namespace osgEarth { namespace Symbology
     {
     public:
         /**
-         * Attempts to create and load a resource library from an XML
-         * resource catalog residing at the specified URL.
-         */         
-        static ResourceLibrary* create( const URI& uri );
+         * Creates a new resource library with a source URI. The library
+         * will populate upon first use..
+         */
+        ResourceLibrary( 
+            const std::string& name, 
+            const URI&         uri);
 
-    public:
         /**
-         * Creates a new resource library
+         * Creates a new resource library from a config.
          */
-        ResourceLibrary( const Config& conf =Config() );
+        ResourceLibrary( const Config& conf );
+
+
+        /** dtor */
+        virtual ~ResourceLibrary() { }
+
+        /**
+         * Gets the name of the lib.
+         */
+        const std::string& getName() const { return _name; }
 
         /**
          * Adds a resoure to the library.
@@ -66,18 +80,18 @@ namespace osgEarth { namespace Symbology
         /**
          * Finds and returns a Skin resource by name.
          */
-        SkinResource* getSkin( const std::string& name ) const;
+        SkinResource* getSkin( const std::string& name, const osgDB::Options* dbOptions =0L ) const;
 
         /**
          * Returns a list of all Skin resources.
          */
-        void getSkins( SkinResourceVector& output ) const;
+        void getSkins( SkinResourceVector& output, const osgDB::Options* dbOptions =0L ) const;
 
         /**
          * Returns a list of all Skin resources that match the criteria specified
          * in the symbol.
          */
-        void getSkins( const SkinSymbol* symbol, SkinResourceVector& output ) const;
+        void getSkins( const SkinSymbol* symbol, SkinResourceVector& output, const osgDB::Options* dbOptions =0L ) const;
 
         /**
          * Returns a skin that matches the criteria specified in the symbol. The method
@@ -85,24 +99,50 @@ namespace osgEarth { namespace Symbology
          * symbol contains a random seed, it will use that to seed the selection in order
          * to provide consistency.
          */
-        SkinResource* getSkin( const SkinSymbol* symbol, Random& prng ) const;
+        SkinResource* getSkin( const SkinSymbol* symbol, Random& prng, const osgDB::Options* dbOptions =0L ) const;
 
 
-    public: // Model resource functions
+    public: // Marker resource functions (deprecated)
+
+        /**
+         * Finds and returns a marker reosurce by name.
+         */
+        MarkerResource* getMarker( const std::string& name, const osgDB::Options* dbOptions =0L ) const;
+
+        /**
+         * Returns a list of all marker resources in this library.
+         */
+        void getMarkers( MarkerResourceVector& output, const osgDB::Options* dbOptions =0L ) const;
+
+
+    public: // Instance functions
+
+        /**
+         * Finds an instance-resource by name.
+         */
+        InstanceResource* getInstance( const std::string& name, const osgDB::Options* dbOptions =0L ) const;
 
-        //TODO
 
     public: // serialization functions
 
         void mergeConfig( const Config& conf );
+        Config getConfig() const;
 
     protected:
         typedef std::map< const Symbol*, Random > RandomMap;
 
-        Threading::ReadWriteMutex _mutex;
-        SkinResourceMap           _skins;
+        optional<URI>                      _uri;
+        std::string                        _name;
+        bool                               _initialized;
+        mutable Threading::ReadWriteMutex  _mutex;
+
+        ResourceMap<SkinResource>          _skins;
+        ResourceMap<MarkerResource>        _markers;
+        ResourceMap<InstanceResource>      _instances;
 
         bool matches( const SkinSymbol* symbol, SkinResource* skin ) const;
+
+        void initialize( const osgDB::Options* options );
     };
 
 
diff --git a/src/osgEarthSymbology/ResourceLibrary.cpp b/src/osgEarthSymbology/ResourceLibrary.cpp
index 928648f..f1155be 100644
--- a/src/osgEarthSymbology/ResourceLibrary.cpp
+++ b/src/osgEarthSymbology/ResourceLibrary.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,9 +17,10 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthSymbology/ResourceLibrary>
+#include <osgEarthSymbology/ModelResource>
+#include <osgEarthSymbology/IconResource>
 #include <osgEarth/ThreadingUtils>
 #include <osgEarth/XmlUtils>
-#include <osgEarth/HTTPClient>
 #include <osgEarth/Random>
 #include <iterator>
 #include <algorithm>
@@ -33,52 +34,89 @@ using namespace OpenThreads;
 
 //------------------------------------------------------------------------
 
-ResourceLibrary*
-ResourceLibrary::create( const URI& uri )
+ResourceLibrary::ResourceLibrary(const Config& conf) :
+_initialized( false )
 {
-    osg::ref_ptr<XmlDocument> xml = XmlDocument::load( uri ); // buf, uri.full() );
-    if ( !xml.valid() )
-    {
-        OE_WARN << LC << "Failed to parse XML for resource library \"" << uri.full() << "\"" << std::endl;
-        return 0L;
-    }
-
-    Config conf = xml->getConfig();
-
-    if ( conf.key() == "resources" )
-    {
-        return new ResourceLibrary( conf );
-    }
-    else
-    {
-        const Config& child = conf.child("resources");
-        if ( !child.empty() )
-            return new ResourceLibrary( child );
-    }
-
-    OE_WARN << LC << "Could not find top level 'resources' entry in resource library \""
-        << uri.full() << "\"; load failed." << std::endl;
-    return 0L;
+    mergeConfig( conf );
 }
 
-//------------------------------------------------------------------------
-
-ResourceLibrary::ResourceLibrary( const Config& conf )
+ResourceLibrary::ResourceLibrary(const std::string&    name,
+                                 const URI&            uri) :
+_name       ( name ),
+_uri        ( uri, uri ),
+_initialized( false )
 {
-    mergeConfig( conf );
+    //nop
 }
 
 void
 ResourceLibrary::mergeConfig( const Config& conf )
 {
-    // read skins
-    const ConfigSet skins = conf.children( "skin" );
-    for( ConfigSet::const_iterator i = skins.begin(); i != skins.end(); ++i )
+    _name = conf.value( "name" );
+
+    conf.getIfSet( "url", _uri );
+
+    for( ConfigSet::const_iterator i = conf.children().begin(); i != conf.children().end(); ++i )
     {
-        addResource( new SkinResource(*i) );
+        const Config& child = *i;
+        if ( child.key() == "skin" )
+        {
+            addResource( new SkinResource(child) );
+        }
+        else if ( child.key() == "marker" )
+        {
+            // to be decrepated
+            addResource( new MarkerResource(child) );
+        }
+        else if ( child.key() == "model" )
+        {
+            addResource( new ModelResource(child) );
+        }
+        else if ( child.key() == "icon" )
+        {
+            addResource( new IconResource(child) );
+        }
     }
+}
+
+Config
+ResourceLibrary::getConfig() const
+{
+    Config conf;
+    {
+        Threading::ScopedReadLock shared( const_cast<ResourceLibrary*>(this)->_mutex );
+
+        if ( !_name.empty() )
+        {
+            conf.set( "name", _name );
+        }
+
+        if ( _uri.isSet() )
+        {
+            conf.addIfSet( "url", _uri );
+        }
+        else
+        {
+            for( ResourceMap<SkinResource>::const_iterator i = _skins.begin(); i != _skins.end(); ++i )
+            {
+                SkinResource* res = i->second.get();
+                conf.add( res->getConfig() );
+            }
+
+            for( ResourceMap<MarkerResource>::const_iterator i = _markers.begin(); i != _markers.end(); ++i )
+            {
+                MarkerResource* res = i->second.get();
+                conf.add( res->getConfig() );
+            }
 
-    //todo: other types later..
+            for( ResourceMap<InstanceResource>::const_iterator i = _instances.begin(); i != _instances.end(); ++i )
+            {
+                InstanceResource* res = i->second.get();
+                conf.add( res->getConfig() );
+            }
+        }
+    }
+    return conf;
 }
 
 void
@@ -89,6 +127,16 @@ ResourceLibrary::addResource( Resource* resource )
         Threading::ScopedWriteLock exclusive(_mutex);
         _skins[resource->name()] = static_cast<SkinResource*>(resource);
     }
+    else if ( dynamic_cast<MarkerResource*>(resource) )
+    {
+        Threading::ScopedWriteLock exclusive(_mutex);
+        _markers[resource->name()] = static_cast<MarkerResource*>(resource);
+    }
+    else if ( dynamic_cast<InstanceResource*>(resource) )
+    {
+        Threading::ScopedWriteLock exclusive(_mutex);
+        _instances[resource->name()] = static_cast<InstanceResource*>(resource);
+    }
     else
     {
         OE_WARN << LC << "Added a resource type that is not supported; ignoring." << std::endl;
@@ -103,31 +151,78 @@ ResourceLibrary::removeResource( Resource* resource )
         Threading::ScopedWriteLock exclusive(_mutex);
         _skins.erase( resource->name() );
     }
+    else if ( dynamic_cast<MarkerResource*>( resource ) )
+    {
+        Threading::ScopedWriteLock exclusive(_mutex);
+        _markers.erase( resource->name() );
+    }
+    else if ( dynamic_cast<InstanceResource*>( resource ) )
+    {
+        Threading::ScopedWriteLock exclusive(_mutex);
+        _instances.erase( resource->name() );
+    }
+}
+
+
+static Threading::Mutex s_initMutex;
+
+void
+ResourceLibrary::initialize( const osgDB::Options* dbOptions )
+{
+    if ( !_initialized )
+    {
+        Threading::ScopedMutexLock exclusive(s_initMutex);
+        if ( !_initialized )
+        {
+            if ( _uri.isSet() )
+            {
+                osg::ref_ptr<XmlDocument> xml = XmlDocument::load( *_uri, dbOptions );
+                if ( xml.valid() )
+                {
+                    Config conf = xml->getConfig();
+                    if ( conf.key() == "resources" )
+                    {
+                        mergeConfig( conf );
+                    }
+                    else
+                    {
+                        const Config& child = conf.child("resources");
+                        if ( !child.empty() )
+                            mergeConfig( child );
+                    }
+                }
+            }
+            _initialized = true;
+        }
+    }
 }
 
 SkinResource*
-ResourceLibrary::getSkin( const std::string& name ) const
+ResourceLibrary::getSkin( const std::string& name, const osgDB::Options* dbOptions ) const
 {
-    Threading::ScopedReadLock shared( const_cast<ResourceLibrary*>(this)->_mutex );
-    SkinResourceMap::const_iterator i = _skins.find( name );
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
+    ResourceMap<SkinResource>::const_iterator i = _skins.find( name );
     return i != _skins.end() ? i->second.get() : 0L;
 }
 
 void
-ResourceLibrary::getSkins( SkinResourceVector& output ) const
+ResourceLibrary::getSkins( SkinResourceVector& output, const osgDB::Options* dbOptions ) const
 {
-    Threading::ScopedReadLock shared( const_cast<ResourceLibrary*>(this)->_mutex );
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
     output.reserve( _skins.size() );
-    for( SkinResourceMap::const_iterator i = _skins.begin(); i != _skins.end(); ++i )
+    for( ResourceMap<SkinResource>::const_iterator i = _skins.begin(); i != _skins.end(); ++i )
         output.push_back( i->second.get() );
 }
 
 void
-ResourceLibrary::getSkins( const SkinSymbol* symbol, SkinResourceVector& output ) const
+ResourceLibrary::getSkins( const SkinSymbol* symbol, SkinResourceVector& output, const osgDB::Options* dbOptions ) const
 {
-    Threading::ScopedReadLock shared( const_cast<ResourceLibrary*>(this)->_mutex );
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
 
-    for( SkinResourceMap::const_iterator i = _skins.begin(); i != _skins.end(); ++i )
+    for( ResourceMap<SkinResource>::const_iterator i = _skins.begin(); i != _skins.end(); ++i )
     {
         SkinResource* skin = i->second.get();
         if ( matches(symbol, skin) )
@@ -138,8 +233,9 @@ ResourceLibrary::getSkins( const SkinSymbol* symbol, SkinResourceVector& output
 }
 
 SkinResource*
-ResourceLibrary::getSkin( const SkinSymbol* symbol, Random& prng ) const
+ResourceLibrary::getSkin( const SkinSymbol* symbol, Random& prng, const osgDB::Options* dbOptions ) const
 {
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
     SkinResourceVector candidates;
     getSkins( symbol, candidates );
     unsigned size = candidates.size();
@@ -201,3 +297,34 @@ ResourceLibrary::matches( const SkinSymbol* q, SkinResource* s ) const
 
     return true;
 }
+
+MarkerResource*
+ResourceLibrary::getMarker( const std::string& name, const osgDB::Options* dbOptions ) const
+{
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
+    ResourceMap<MarkerResource>::const_iterator i = _markers.find( name );
+    return i != _markers.end() ? i->second.get() : 0L;
+}
+
+void
+ResourceLibrary::getMarkers( MarkerResourceVector& output, const osgDB::Options* dbOptions ) const
+{
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
+
+    output.clear();
+    output.reserve( _markers.size() );
+
+    for( ResourceMap<MarkerResource>::const_iterator i = _markers.begin(); i != _markers.end(); ++i )
+        output.push_back( i->second.get() );
+}
+
+InstanceResource*
+ResourceLibrary::getInstance( const std::string& name, const osgDB::Options* dbOptions ) const
+{
+    const_cast<ResourceLibrary*>(this)->initialize( dbOptions );
+    Threading::ScopedReadLock shared( _mutex );
+    ResourceMap<InstanceResource>::const_iterator i = _instances.find( name );
+    return i != _instances.end() ? i->second.get() : 0L;
+}
diff --git a/src/osgEarthSymbology/SLD b/src/osgEarthSymbology/SLD
index 4fbb614..67ba253 100644
--- a/src/osgEarthSymbology/SLD
+++ b/src/osgEarthSymbology/SLD
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/SLD.cpp b/src/osgEarthSymbology/SLD.cpp
index ded7b36..b304912 100644
--- a/src/osgEarthSymbology/SLD.cpp
+++ b/src/osgEarthSymbology/SLD.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -27,295 +27,410 @@
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
-#define CSS_STROKE          "stroke"
-#define CSS_STROKE_WIDTH    "stroke-width"
-#define CSS_STROKE_OPACITY  "stroke-opacity"
-#define CSS_STROKE_LINECAP  "stroke-linecap"
-
-#define CSS_FILL           "fill"
-#define CSS_FILL_OPACITY   "fill-opacity"
-
-#define CSS_POINT_SIZE     "point-size"
-
-#define CSS_TEXT_FONT             "text-font"
-#define CSS_TEXT_SIZE             "text-size"
-#define CSS_TEXT_HALO             "text-halo"
-#define CSS_TEXT_ATTRIBUTE        "text-attribute"
-#define CSS_TEXT_ROTATE_TO_SCREEN "text-rotate-to-screen"
-#define CSS_TEXT_SIZE_MODE        "text-size-mode"
-#define CSS_TEXT_REMOVE_DUPLICATE_LABELS "text-remove-duplicate-labels"
-#define CSS_TEXT_LINE_ORIENTATION "text-line-orientation"
-#define CSS_TEXT_LINE_PLACEMENT   "text-line-placement"
-#define CSS_TEXT_CONTENT          "text-content"
-#define CSS_TEXT_CONTENT_ATTRIBUTE_DELIMITER "text-content-attribute-delimiter"
-
-
-static void
-parseLineCap( const std::string& value, optional<Stroke::LineCapStyle>& cap )
+namespace
 {
-    if ( value == "butt" ) cap = Stroke::LINECAP_BUTT;
-    if ( value == "round" ) cap = Stroke::LINECAP_ROUND;
-    if ( value == "square" ) cap = Stroke::LINECAP_SQUARE;
+    void parseLineCap( const std::string& value, optional<Stroke::LineCapStyle>& cap )
+    {
+        if ( value == "butt" ) cap = Stroke::LINECAP_BUTT;
+        if ( value == "round" ) cap = Stroke::LINECAP_ROUND;
+        if ( value == "square" ) cap = Stroke::LINECAP_SQUARE;
+    }
+
+    bool match(const std::string& s, const char* reservedWord )
+    {
+        if ( s == reservedWord ) return true;
+        std::string temp1 = toLower(s), temp2 = toLower(reservedWord);
+        replaceIn(temp1, "_", "-");
+        replaceIn(temp2, "_", "-");
+        return temp1 == temp2;
+    }
 }
 
+
 bool
 SLDReader::readStyleFromCSSParams( const Config& conf, Style& sc )
 {
     sc.setName( conf.key() );
 
+    IconSymbol*      icon      = 0L;
     LineSymbol*      line      = 0L;
     PolygonSymbol*   polygon   = 0L;
     PointSymbol*     point     = 0L;
     TextSymbol*      text      = 0L;
     ExtrusionSymbol* extrusion = 0L;
     MarkerSymbol*    marker    = 0L;
+    ModelSymbol*     model     = 0L;
     AltitudeSymbol*  altitude  = 0L;
     SkinSymbol*      skin      = 0L;
 
-    for(Properties::const_iterator p = conf.attrs().begin(); p != conf.attrs().end(); p++ )
+    for( ConfigSet::const_iterator kids = conf.children().begin(); kids != conf.children().end(); ++kids )
     {
+        const Config& p = *kids;
+
+        const std::string& key   = p.key();
+        const std::string& value = p.value();
+
         // ..... LineSymbol .....
 
-        if ( p->first == CSS_STROKE )
+        if ( match(key, "stroke") )
         {
             if (!line) line = sc.getOrCreateSymbol<LineSymbol>();
-            line->stroke()->color() = htmlColorToVec4f( p->second );
+            line->stroke()->color() = Color(value); //htmlColorToVec4f( value );
         }
-        else if ( p->first == CSS_STROKE_OPACITY )
+        else if ( match(key, "stroke-opacity") )
         {
             if (!line) line = sc.getOrCreateSymbol<LineSymbol>();
-            line->stroke()->color().a() = as<float>( p->second, 1.0f );
+            line->stroke()->color().a() = as<float>( value, 1.0f );
         }
-        else if ( p->first == CSS_STROKE_WIDTH )
+        else if ( match(key, "stroke-width") )
         {
             if (!line) line = sc.getOrCreateSymbol<LineSymbol>();
-            line->stroke()->width() = as<float>( p->second, 1.0f );
+            line->stroke()->width() = as<float>( value, 1.0f );
         }
-        else if ( p->first == CSS_STROKE_LINECAP )
+        else if ( match(key, "stroke-linecap") )
         {
             if (!line) line = sc.getOrCreateSymbol<LineSymbol>();
-            parseLineCap( p->second, line->stroke()->lineCap() );
+            parseLineCap( value, line->stroke()->lineCap() );
+        }
+        else if ( match(key, "stroke-tessellation") )
+        {
+            if (!line) line = sc.getOrCreate<LineSymbol>();
+            line->tessellation() = as<unsigned>( value, 0 );
         }
 
         // ..... PolygonSymbol .....
 
-        else if ( p->first == CSS_FILL )
+        else if ( match(key, "fill") )
         {
             if (!polygon) polygon = sc.getOrCreateSymbol<PolygonSymbol>();
-            polygon->fill()->color() = htmlColorToVec4f( p->second );
+            polygon->fill()->color() = htmlColorToVec4f( value );
 
             if ( !point ) point = sc.getOrCreateSymbol<PointSymbol>();
-            point->fill()->color() = htmlColorToVec4f( p->second );
+            point->fill()->color() = htmlColorToVec4f( value );
 
             if ( !text ) text = new TextSymbol();
-            text->fill()->color() = htmlColorToVec4f( p->second );
+            text->fill()->color() = htmlColorToVec4f( value );
         }
-        else if ( p->first == CSS_FILL_OPACITY )
+        else if ( match(key, "fill-opacity") )
         {
             if (!polygon) polygon = sc.getOrCreateSymbol<PolygonSymbol>();
-            polygon->fill()->color().a() = as<float>( p->second, 1.0f );
+            polygon->fill()->color().a() = as<float>( value, 1.0f );
 
             if ( !point ) point = sc.getOrCreateSymbol<PointSymbol>();
-            point->fill()->color().a() = as<float>( p->second, 1.0f );
+            point->fill()->color().a() = as<float>( value, 1.0f );
 
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            text->fill()->color().a() = as<float>( p->second, 1.0f );
+            text->fill()->color().a() = as<float>( value, 1.0f );
         }
 
         // ..... PointSymbol .....
 
-        else if (p->first == CSS_POINT_SIZE)
+        else if ( match(key, "point-size") )
         {
             if ( !point ) point = sc.getOrCreateSymbol<PointSymbol>();
-            point->size() = as<float>(p->second, 1.0f);
+            point->size() = as<float>(value, 1.0f);
         }
 
         // ..... TextSymbol .....
 
-        else if (p->first == CSS_TEXT_SIZE)
-        {
-            if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            text->size() = as<float>(p->second, 32.0f);
-        }
-        else if (p->first == CSS_TEXT_FONT)
-        {
-            if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            text->font() = p->second;
-        }
-        else if (p->first == CSS_TEXT_HALO)
+        else if ( match(key, "text-size") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            text->halo()->color() = htmlColorToVec4f( p->second );
+            text->size() = as<float>(value, 32.0f);
         }
-        //else if (p->first == CSS_TEXT_ATTRIBUTE)
-        //{
-        //    if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-        //    text->attribute() = p->second;
-        //}
-        else if (p->first == CSS_TEXT_ROTATE_TO_SCREEN)
+        else if ( match(key, "text-font") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            if (p->second == "true") text->rotateToScreen() = true;
-            else if (p->second == "false") text->rotateToScreen() = false;
+            text->font() = value;
         }
-        else if (p->first == CSS_TEXT_SIZE_MODE)
+        else if ( match(key, "text-halo") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            if (p->second == "screen") text->sizeMode() = TextSymbol::SIZEMODE_SCREEN;
-            else if (p->second == "object") text->sizeMode() = TextSymbol::SIZEMODE_OBJECT;
+            text->halo()->color() = htmlColorToVec4f( value );
         }
-        else if (p->first == CSS_TEXT_REMOVE_DUPLICATE_LABELS)
+        else if ( match(key, "text-remove-duplicate-labels") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            if (p->second == "true") text->removeDuplicateLabels() = true;
-            else if (p->second == "false") text->removeDuplicateLabels() = false;
+            if (value == "true") text->removeDuplicateLabels() = true;
+            else if (value == "false") text->removeDuplicateLabels() = false;
         } 
-        else if (p->first == CSS_TEXT_LINE_ORIENTATION)
+        else if ( match(key, "text-align") )
         {
-            if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            if (p->second == "parallel") text->lineOrientation() = TextSymbol::LINEORIENTATION_PARALLEL;
-            else if (p->second == "horizontal") text->lineOrientation() = TextSymbol::LINEORIENTATION_HORIZONTAL;
-            else if (p->second == "perpendicular") text->lineOrientation() = TextSymbol::LINEORIENTATION_PERPENDICULAR;
+            if (!text) text = sc.getOrCreate<TextSymbol>();
+            if      ( match(value, "left-top") ) text->alignment() = TextSymbol::ALIGN_LEFT_TOP;
+            else if ( match(value, "left-center") ) text->alignment() = TextSymbol::ALIGN_LEFT_CENTER;
+            else if ( match(value, "left-bottom") ) text->alignment() = TextSymbol::ALIGN_LEFT_BOTTOM;
+            else if ( match(value, "center-top")  ) text->alignment() = TextSymbol::ALIGN_CENTER_TOP;
+            else if ( match(value, "center-center") ) text->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+            else if ( match(value, "center-bottom") ) text->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM;
+            else if ( match(value, "right-top") ) text->alignment() = TextSymbol::ALIGN_RIGHT_TOP;
+            else if ( match(value, "right-center") ) text->alignment() = TextSymbol::ALIGN_RIGHT_CENTER;
+            else if ( match(value, "right-bottom") ) text->alignment() = TextSymbol::ALIGN_RIGHT_BOTTOM;
+            else if ( match(value, "left-base-line") ) text->alignment() = TextSymbol::ALIGN_LEFT_BASE_LINE;
+            else if ( match(value, "center-base-line") ) text->alignment() = TextSymbol::ALIGN_CENTER_BASE_LINE;
+            else if ( match(value, "right-base-line") ) text->alignment() = TextSymbol::ALIGN_RIGHT_BASE_LINE;
+            else if ( match(value, "left-bottom-base-line") ) text->alignment() = TextSymbol::ALIGN_LEFT_BOTTOM_BASE_LINE;
+            else if ( match(value, "center-bottom-base-line") ) text->alignment() = TextSymbol::ALIGN_CENTER_BOTTOM_BASE_LINE;
+            else if ( match(value, "right-bottom-base-line") ) text->alignment() = TextSymbol::ALIGN_RIGHT_BOTTOM_BASE_LINE;
+            else if ( match(value, "base-line" ) ) text->alignment() = TextSymbol::ALIGN_BASE_LINE;
+        }
+        else if ( match(key, "text-content") )
+        {
+            if (!text) text = sc.getOrCreate<TextSymbol>();
+            text->content() = StringExpression( value );
         }
-        else if (p->first == CSS_TEXT_LINE_PLACEMENT)
+        else if ( match(key, "text-priority") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            if (p->second == "centroid") text->linePlacement() = TextSymbol::LINEPLACEMENT_CENTROID;
-            else if (p->second == "along-line") text->linePlacement() = TextSymbol::LINEPLACEMENT_ALONG_LINE;
+            text->priority() = NumericExpression( value );
         }
-        else if (p->first == "text-content")
+        else if ( match(key, "text-provider") )
         {
             if (!text) text = sc.getOrCreate<TextSymbol>();
-            text->content() = StringExpression( p->second );
+            text->provider() = value;
         }
-        else if (p->first == "text-priority")
+        else if ( match(key, "text-encoding") )
         {
             if (!text) text = sc.getOrCreateSymbol<TextSymbol>();
-            text->priority() = NumericExpression( p->second );
+            if      (match(value, "utf-8"))  text->encoding() = TextSymbol::ENCODING_UTF8;
+            else if (match(value, "utf-16")) text->encoding() = TextSymbol::ENCODING_UTF16;
+            else if (match(value, "utf-32")) text->encoding() = TextSymbol::ENCODING_UTF32;
+            else if (match(value, "ascii"))  text->encoding() = TextSymbol::ENCODING_ASCII;
+            else text->encoding() = TextSymbol::ENCODING_ASCII;
         }
-        else if (p->first == "text-provider")
+        else if ( match(key, "text-declutter") )
         {
             if (!text) text = sc.getOrCreate<TextSymbol>();
-            text->provider() = p->second;
+            text->declutter() = as<bool>(value, true);
         }
 
         // ..... MarkerSymbol .....
 
-        else if (p->first == "marker")
+        else if ( match(key, "marker") )
         {
             if (!marker) marker = sc.getOrCreate<MarkerSymbol>();            
-            marker->url() = p->second;
-            marker->url()->setURIContext( conf.uriContext() );
+            marker->url() = value;
+            marker->url()->setURIContext( conf.referrer() );
+        }
+        else if ( match(key,"marker-library") )
+        {
+            if (!marker) marker = sc.getOrCreate<MarkerSymbol>();
+            marker->libraryName() = StringExpression(value);
         }
-        else if (p->first == "marker-placement")
+        else if ( match(key, "marker-placement") )
         {
             if (!marker) marker = sc.getOrCreate<MarkerSymbol>();
-            if      (p->second == "vertex")   marker->placement() = MarkerSymbol::PLACEMENT_VERTEX;
-            else if (p->second == "interval") marker->placement() = MarkerSymbol::PLACEMENT_INTERVAL;
-            else if (p->second == "random"  ) marker->placement() = MarkerSymbol::PLACEMENT_RANDOM;
-            else if (p->second == "centroid") marker->placement() = MarkerSymbol::PLACEMENT_CENTROID;
+            if      ( match(value, "vertex") )   marker->placement() = MarkerSymbol::PLACEMENT_VERTEX;
+            else if ( match(value, "interval") ) marker->placement() = MarkerSymbol::PLACEMENT_INTERVAL;
+            else if ( match(value, "random") )   marker->placement() = MarkerSymbol::PLACEMENT_RANDOM;
+            else if ( match(value, "centroid") ) marker->placement() = MarkerSymbol::PLACEMENT_CENTROID;
         }
-        else if (p->first == "marker-density")
+        else if ( match(key, "marker-density") )
         {
             if (!marker) marker = sc.getOrCreateSymbol<MarkerSymbol>();
-            marker->density() = as<float>(p->second, 1.0f);
+            marker->density() = as<float>(value, 1.0f);
         }
-        else if (p->first == "marker-random-seed")
+        else if ( match(key, "marker-random-seed") )
         {
             if (!marker) marker = sc.getOrCreateSymbol<MarkerSymbol>();
-            marker->randomSeed() = as<unsigned>(p->second, 0);
+            marker->randomSeed() = as<unsigned>(value, 0);
         }
-        else if (p->first == "marker-scale")
+        else if ( match(key, "marker-scale") )
         {
             if (!marker) marker = sc.getOrCreateSymbol<MarkerSymbol>();
-            marker->scale() = NumericExpression(p->second);
+            marker->scale() = NumericExpression(value);
+        }
+        else if ( match(key, "marker-icon-align") )
+        {
+            if (!marker) marker = sc.getOrCreate<MarkerSymbol>();
+            if      ( match(value, "left-top") ) marker->alignment() = MarkerSymbol::ALIGN_LEFT_TOP;
+            else if ( match(value, "left-center") ) marker->alignment() = MarkerSymbol::ALIGN_LEFT_CENTER;
+            else if ( match(value, "left-bottom") ) marker->alignment() = MarkerSymbol::ALIGN_LEFT_BOTTOM;
+            else if ( match(value, "center-top")  ) marker->alignment() = MarkerSymbol::ALIGN_CENTER_TOP;
+            else if ( match(value, "center-center") ) marker->alignment() = MarkerSymbol::ALIGN_CENTER_CENTER;
+            else if ( match(value, "center-bottom") ) marker->alignment() = MarkerSymbol::ALIGN_CENTER_BOTTOM;
+            else if ( match(value, "right-top") ) marker->alignment() = MarkerSymbol::ALIGN_RIGHT_TOP;
+            else if ( match(value, "right-center") ) marker->alignment() = MarkerSymbol::ALIGN_RIGHT_CENTER;
+            else if ( match(value, "right-bottom") ) marker->alignment() = MarkerSymbol::ALIGN_RIGHT_BOTTOM;
+        }
+
+        // ..... ModelSymbol .....
+
+        else if ( match(key, "model") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            model->url() = value;
+            model->url()->setURIContext( conf.referrer() );
+        }
+        else if ( match(key, "model-placement") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            if      ( match(value, "vertex") )   model->placement() = ModelSymbol::PLACEMENT_VERTEX;
+            else if ( match(value, "interval") ) model->placement() = ModelSymbol::PLACEMENT_INTERVAL;
+            else if ( match(value, "random") )   model->placement() = ModelSymbol::PLACEMENT_RANDOM;
+            else if ( match(value, "centroid") ) model->placement() = ModelSymbol::PLACEMENT_CENTROID;
+        }
+        else if ( match(key, "model-density") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            model->density() = as<float>(value, 1.0f);
+        }
+        else if ( match(key, "model-random-seed") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            model->randomSeed() = as<unsigned>(value, 0);
+        }
+        else if ( match(key, "model-scale") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            model->scale() = NumericExpression(value);
+        }
+        else if ( match(key, "model-heading") )
+        {
+            if (!model) model = sc.getOrCreate<ModelSymbol>();
+            model->heading() = NumericExpression(value);
+        }
+
+        // ..... IconSymbol .....
+
+        else if ( match(key, "icon") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            icon->url() = value;
+            icon->url()->setURIContext( conf.referrer() );
+        }
+        else if ( match(key,"icon-library") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            icon->libraryName() = StringExpression(value);
+        }
+        else if ( match(key, "icon-placement") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            if      ( match(value, "vertex") )   icon->placement() = ModelSymbol::PLACEMENT_VERTEX;
+            else if ( match(value, "interval") ) icon->placement() = ModelSymbol::PLACEMENT_INTERVAL;
+            else if ( match(value, "random") )   icon->placement() = ModelSymbol::PLACEMENT_RANDOM;
+            else if ( match(value, "centroid") ) icon->placement() = ModelSymbol::PLACEMENT_CENTROID;
+        }
+        else if ( match(key, "icon-density") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            icon->density() = as<float>(value, 1.0f);
+        }
+        else if ( match(key, "icon-random-seed") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            icon->randomSeed() = as<unsigned>(value, 0);
+        }
+        else if ( match(key, "icon-scale") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            icon->scale() = NumericExpression(value);
+        }
+        else if ( match(key, "icon-align") )
+        {
+            if (!icon) icon = sc.getOrCreate<IconSymbol>();
+            if      ( match(value, "left-top") )      icon->alignment() = IconSymbol::ALIGN_LEFT_TOP;
+            else if ( match(value, "left-center") )   icon->alignment() = IconSymbol::ALIGN_LEFT_CENTER;
+            else if ( match(value, "left-bottom") )   icon->alignment() = IconSymbol::ALIGN_LEFT_BOTTOM;
+            else if ( match(value, "center-top")  )   icon->alignment() = IconSymbol::ALIGN_CENTER_TOP;
+            else if ( match(value, "center-center") ) icon->alignment() = IconSymbol::ALIGN_CENTER_CENTER;
+            else if ( match(value, "center-bottom") ) icon->alignment() = IconSymbol::ALIGN_CENTER_BOTTOM;
+            else if ( match(value, "right-top") )     icon->alignment() = IconSymbol::ALIGN_RIGHT_TOP;
+            else if ( match(value, "right-center") )  icon->alignment() = IconSymbol::ALIGN_RIGHT_CENTER;
+            else if ( match(value, "right-bottom") )  icon->alignment() = IconSymbol::ALIGN_RIGHT_BOTTOM;
         }
 
         // ..... ExtrusionSymbol .....
                 
-        else if (p->first == "extrusion-height")
+        else if ( match(key, "extrusion-height") )
+        {
+            if (!extrusion) extrusion = sc.getOrCreate<ExtrusionSymbol>();
+            extrusion->heightExpression() = NumericExpression(value);
+        }
+        else if ( match(key, "extrusion-flatten") )
         {
             if (!extrusion) extrusion = sc.getOrCreate<ExtrusionSymbol>();
-            extrusion->heightExpression() = NumericExpression(p->second);
+            extrusion->flatten() = as<bool>(value, true);
         }
-        else if (p->first == "extrusion-flatten")
+        else if ( match(key, "extrusion-wall-style") )
         {
             if (!extrusion) extrusion = sc.getOrCreate<ExtrusionSymbol>();
-            extrusion->flatten() = as<bool>(p->second, true);
+            extrusion->wallStyleName() = value;
         }
-        else if (p->first == "extrusion-wall-style")
+        else if ( match(key, "extrusion-roof-style") )
         {
             if (!extrusion) extrusion = sc.getOrCreate<ExtrusionSymbol>();
-            extrusion->wallStyleName() = p->second;
+            extrusion->roofStyleName() = value;
         }
-        else if (p->first == "extrusion-roof-style")
+        else if ( match(key, "extrusion-wall-gradient") )
         {
             if (!extrusion) extrusion = sc.getOrCreate<ExtrusionSymbol>();
-            extrusion->roofStyleName() = p->second;
+            extrusion->wallGradientPercentage() = as<float>(value, 0.0f);
         }
 
         // ..... AltitideSymbol .....
                 
-        else if (p->first == "altitude-clamping")
+        else if ( match(key, "altitude-clamping") )
         {
             if (!altitude) altitude = sc.getOrCreateSymbol<AltitudeSymbol>();
-            if      (p->second == "none"    ) altitude->clamping() = AltitudeSymbol::CLAMP_NONE;
-            else if (p->second == "terrain" ) altitude->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
-            else if (p->second == "absolute") altitude->clamping() = AltitudeSymbol::CLAMP_ABSOLUTE;
-            else if (p->second == "relative") altitude->clamping() = AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
+            if      ( match(value, "none") )     altitude->clamping() = AltitudeSymbol::CLAMP_NONE;
+            else if ( match(value, "terrain") )  altitude->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+            else if ( match(value, "absolute") ) altitude->clamping() = AltitudeSymbol::CLAMP_ABSOLUTE;
+            else if ( match(value, "relative") ) altitude->clamping() = AltitudeSymbol::CLAMP_RELATIVE_TO_TERRAIN;
         }
-        else if (p->first == "altitude-resolution")
+        else if ( match(key, "altitude-resolution") )
         {
             if (!altitude) altitude = sc.getOrCreate<AltitudeSymbol>();
-            altitude->clampingResolution() = as<float>( p->second, 0.0f );
+            altitude->clampingResolution() = as<float>( value, 0.0f );
         }
-        else if (p->first == "altitude-offset")
+        else if ( match(key, "altitude-offset") )
         {
             if (!altitude) altitude = sc.getOrCreate<AltitudeSymbol>();
-            altitude->verticalOffset() = NumericExpression( p->second );
+            altitude->verticalOffset() = NumericExpression( value );
         }
-        else if (p->first == "altitude-scale")
+        else if ( match(key, "altitude-scale") )
         {
             if (!altitude) altitude = sc.getOrCreate<AltitudeSymbol>();
-            altitude->verticalScale() = NumericExpression( p->second );
+            altitude->verticalScale() = NumericExpression( value );
         }
 
         // ..... SkinSymbol .....
 
-        else if (p->first == "skin-library")
+        else if ( match(key, "skin-library") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            if ( !p->second.empty() ) skin->libraryName() = p->second;
+            if ( !value.empty() ) skin->libraryName() = value;
         }
-        else if (p->first == "skin-tags")
+        else if ( match(key, "skin-tags") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->addTags( p->second );
+            skin->addTags( value );
         }
-        else if (p->first == "skin-tiled")
+        else if ( match(key, "skin-tiled") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->isTiled() = as<bool>( p->second, false );
+            skin->isTiled() = as<bool>( value, false );
         }
-        else if (p->first == "skin-object-height")
+        else if ( match(key, "skin-object-height") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->objectHeight() = as<float>( p->second, 0.0f );
+            skin->objectHeight() = as<float>( value, 0.0f );
         }
-        else if (p->first == "skin-min-object-height")
+        else if (match(key, "skin-min-object-height") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->minObjectHeight() = as<float>( p->second, 0.0f );
+            skin->minObjectHeight() = as<float>( value, 0.0f );
         }
-        else if (p->first == "skin-max-object-height")
+        else if (match(key, "skin-max-object-height") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->maxObjectHeight() = as<float>( p->second, 0.0f );
+            skin->maxObjectHeight() = as<float>( value, 0.0f );
         }
-        else if (p->first == "skin-random-seed")
+        else if (match(key, "skin-random-seed") )
         {
             if (!skin) skin = sc.getOrCreate<SkinSymbol>();
-            skin->randomSeed() = as<unsigned>( p->second, 0u );
+            skin->randomSeed() = as<unsigned>( value, 0u );
         }
 
     }
diff --git a/src/osgEarthSymbology/Skins b/src/osgEarthSymbology/Skins
index a36d092..067f489 100644
--- a/src/osgEarthSymbology/Skins
+++ b/src/osgEarthSymbology/Skins
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -40,11 +40,13 @@ namespace osgEarth { namespace Symbology
         /** Constructs a new skin resource. */
         SkinResource( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~SkinResource() { }
+
         /**
          * Creates a new StateSet containing a Texture based on this Skin.
-         * Takes an optional URI context for relative URI resolution.
          */
-        osg::StateSet* createStateSet() const;
+        osg::StateSet* createStateSet( const osgDB::Options* dbOptions ) const;
 
     public:
         /** Source location of the actual texture image.  */
@@ -65,7 +67,7 @@ namespace osgEarth { namespace Symbology
 
         /** Maximum acceptable real-world object height (meters) for which this image would make an appropriate texture */
         optional<float>& maxObjectHeight() { return _maxObjHeight; }
-        const optional<float>& maxObjectHeight() const { return _minObjHeight; }
+        const optional<float>& maxObjectHeight() const { return _maxObjHeight; }
 
         /** Whether this image is suitable for use as a vertically repeating texture */
         optional<bool>& isTiled() { return _isTiled; }
@@ -88,7 +90,7 @@ namespace osgEarth { namespace Symbology
 
         osg::StateSet* createStateSet( osg::Image* image ) const;
 
-        osg::Image* createImage() const;
+        osg::Image* createImage( const osgDB::Options* options ) const;
 
     protected:
 
@@ -103,9 +105,6 @@ namespace osgEarth { namespace Symbology
     };
 
 
-    typedef std::map<std::string, osg::ref_ptr<SkinResource> > SkinResourceMap;
-
-
     /**
      * Query object that you can use to search for applicable Skin resources from the 
      * ResourceLibrary.
@@ -115,6 +114,9 @@ namespace osgEarth { namespace Symbology
     public:
         SkinSymbol( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~SkinSymbol() { }
+
     public: // query parameters
 
         /** Name of the resource library to use with this symbol. */
diff --git a/src/osgEarthSymbology/Skins.cpp b/src/osgEarthSymbology/Skins.cpp
index 8ec24eb..900508f 100644
--- a/src/osgEarthSymbology/Skins.cpp
+++ b/src/osgEarthSymbology/Skins.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,8 @@
 #include <osgEarthSymbology/Skins>
 #include <osgEarth/StringUtils>
 #include <osgEarth/ImageUtils>
-#include <osgEarth/HTTPClient>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/Registry>
 
 #include <osg/BlendFunc>
 #include <osg/Texture2D>
@@ -35,7 +36,7 @@ _imageWidth       ( 10.0f ),
 _imageHeight      ( 3.0f ),
 _minObjHeight     ( 0.0f ),
 _maxObjHeight     ( FLT_MAX ),
-_isTiled( false ),
+_isTiled          ( false ),
 _texEnvMode       ( osg::TexEnv::MODULATE ),
 _maxTexSpan       ( 1024 )
 {
@@ -50,7 +51,7 @@ SkinResource::mergeConfig( const Config& conf )
     conf.getIfSet( "image_height",        _imageHeight );
     conf.getIfSet( "min_object_height",   _minObjHeight );
     conf.getIfSet( "max_object_height",   _maxObjHeight );
-    conf.getIfSet( "tiled",  _isTiled );
+    conf.getIfSet( "tiled",               _isTiled );
     conf.getIfSet( "max_texture_span",    _maxTexSpan );
 
     conf.getIfSet( "texture_mode", "decal",    _texEnvMode, osg::TexEnv::DECAL );
@@ -70,7 +71,7 @@ SkinResource::getConfig() const
     conf.updateIfSet( "image_height",        _imageHeight );
     conf.updateIfSet( "min_object_height",   _minObjHeight );
     conf.updateIfSet( "max_object_height",   _maxObjHeight );
-    conf.updateIfSet( "tiled",  _isTiled );
+    conf.updateIfSet( "tiled",               _isTiled );
     conf.updateIfSet( "max_texture_span",    _maxTexSpan );
 
     conf.updateIfSet( "texture_mode", "decal",    _texEnvMode, osg::TexEnv::DECAL );
@@ -82,9 +83,9 @@ SkinResource::getConfig() const
 }
 
 osg::StateSet*
-SkinResource::createStateSet() const
+SkinResource::createStateSet( const osgDB::Options* dbOptions ) const
 {
-    return createStateSet( createImage() );
+    return createStateSet( createImage(dbOptions) );
 }
 
 osg::StateSet*
@@ -96,6 +97,7 @@ SkinResource::createStateSet( osg::Image* image ) const
         stateSet = new osg::StateSet();
 
         osg::Texture* tex = new osg::Texture2D( image );
+        tex->setResizeNonPowerOfTwoHint(false);
         tex->setWrap( osg::Texture::WRAP_S, osg::Texture::REPEAT );
         tex->setWrap( osg::Texture::WRAP_T, osg::Texture::REPEAT );
         stateSet->setTextureAttributeAndModes( 0, tex, osg::StateAttribute::ON );
@@ -121,15 +123,9 @@ SkinResource::createStateSet( osg::Image* image ) const
 }
 
 osg::Image*
-SkinResource::createImage() const
+SkinResource::createImage( const osgDB::Options* dbOptions ) const
 {
-    osg::ref_ptr<osg::Image> image;
-    if ( HTTPClient::readImageFile( _imageURI->full(), image ) != HTTPClient::RESULT_OK )
-    {
-        //TODO: hmm, perhaps create an "error image" here? or just return NULL
-        //      and let the caller do so.
-    }
-    return image.release();
+    return _imageURI->readImage(dbOptions).releaseImage();
 }
 
 //---------------------------------------------------------------------------
@@ -173,7 +169,7 @@ SkinSymbol::getConfig() const
 
     std::string tagstring = this->tagString();
     if ( !tagstring.empty() )
-        conf.attr("tags") = tagstring;
+        conf.set("tags", tagstring);
 
     return conf;
 }
diff --git a/src/osgEarthSymbology/StencilVolumeNode b/src/osgEarthSymbology/StencilVolumeNode
index 92143c9..f385e7c 100644
--- a/src/osgEarthSymbology/StencilVolumeNode
+++ b/src/osgEarthSymbology/StencilVolumeNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -54,6 +54,9 @@ namespace osgEarth { namespace Symbology
          */
         StencilVolumeNode( const StencilVolumeNode& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL );
 
+        /** dtor */
+        virtual ~StencilVolumeNode() { }
+
         META_Node(osgEarth::Symbology,StencilVolumeNode);
         
         //override
diff --git a/src/osgEarthSymbology/StencilVolumeNode.cpp b/src/osgEarthSymbology/StencilVolumeNode.cpp
index 2c70664..9f02199 100644
--- a/src/osgEarthSymbology/StencilVolumeNode.cpp
+++ b/src/osgEarthSymbology/StencilVolumeNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -18,7 +18,8 @@
  */
 #include <osgEarthSymbology/StencilVolumeNode>
 #include <osgEarth/Registry>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Capabilities>
 #include <osg/Stencil>
 #include <osg/StencilTwoSided>
 #include <osg/Depth>
@@ -48,6 +49,8 @@ StencilVolumeNode::createFullScreenQuad( const osg::Vec4f& color )
 {
     // make a full screen quad:
     osg::Geometry* quad = new osg::Geometry();
+    quad->setUseVertexBufferObjects(true);
+
     osg::Vec3Array* verts = new osg::Vec3Array(4);
     (*verts)[0].set( 0, 1, 0 );
     (*verts)[1].set( 0, 0, 0 );
@@ -224,6 +227,8 @@ StencilVolumeNode::traverse( osg::NodeVisitor& nv )
 void
 StencilVolumeNode::init()
 {
+    this->getOrCreateStateSet()->setMode( GL_CULL_FACE, osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+
     _root = new osg::Group();
     int baseBin = 100;
 
diff --git a/src/osgEarthSymbology/Style b/src/osgEarthSymbology/Style
index 57f413a..7ad1576 100644
--- a/src/osgEarthSymbology/Style
+++ b/src/osgEarthSymbology/Style
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,10 +22,12 @@
 #include <osgEarthSymbology/Common>
 #include <osgEarthSymbology/Color>
 #include <osgEarthSymbology/Query>
+#include <osgEarthSymbology/IconSymbol>
 #include <osgEarthSymbology/PointSymbol>
 #include <osgEarthSymbology/LineSymbol>
 #include <osgEarthSymbology/PolygonSymbol>
 #include <osgEarthSymbology/MarkerSymbol>
+#include <osgEarthSymbology/ModelSymbol>
 #include <osgEarthSymbology/ExtrusionSymbol>
 #include <osgEarthSymbology/AltitudeSymbol>
 #include <osgEarthSymbology/TextSymbol>
@@ -33,7 +35,6 @@
 #include <osgEarthSymbology/ResourceLibrary>
 
 #include <osgEarth/Config>
-#include <osgEarth/Revisioning>
 #include <osg/Object>
 #include <vector>
 
@@ -52,8 +53,15 @@ namespace osgEarth { namespace Symbology
         /** Constructs a style by deserializing it from a Config. */
         Style(const Config& conf);
 
-        /** Copy constructor. */
-        Style(const Style& rhs); 
+        /** Copy constructor. By default, duplicates all the symbols; but if you 
+            specify SHALLOW_COPY, the new one will point to the same symbols. */
+        Style(const Style& rhs, const osg::CopyOp& op =osg::CopyOp::DEEP_COPY_ALL ); 
+
+        /** assignment operator */
+        Style& operator = (const Style& rhs);
+
+        /** virtual dtor */
+        virtual ~Style() { }
 
         /** Gets the name of this style */
         const std::string& getName() const { return _name; }
@@ -70,10 +78,11 @@ namespace osgEarth { namespace Symbology
 
         /** Adds a symbol to the collection. */
         void addSymbol(Symbol* symbol);
+        void add(Symbol* symbol) { addSymbol(symbol); }
+
+        /** Remove a symbol from the collection */
+        bool removeSymbol (Symbol* symbol);
 
-		/** Remove a symbol from the collection */
-		bool removeSymbol (Symbol* symbol);
-		
         /** Gets a typed symbol from the style (the first one found). */
         template<typename T>
         T* getSymbol()
@@ -89,6 +98,10 @@ namespace osgEarth { namespace Symbology
         }
         template<typename T> T* get() { return getSymbol<T>(); } // alias
 
+        /** Whether the style contains a symbol of the template type */
+        template<typename T> bool has() { return get<T>() != 0L; }
+        template<typename T> const bool has() const { return get<T>() != 0L; }
+
         /** Gets a typed symbol from the style (the first one found) */
         template<typename T>
         const T* getSymbol() const
@@ -136,102 +149,6 @@ namespace osgEarth { namespace Symbology
     typedef std::vector<Style>           StyleList;
     typedef std::map<std::string, Style> StyleMap;
 
-    /**
-     * A style selector lets you classify styles based on rules, such as a
-     * feature query. By default the selector selects the style with the
-     * same name as the selector, but you can override this by settings
-     * the styleName property.
-     */
-    class OSGEARTHSYMBOLOGY_EXPORT StyleSelector
-    {
-    public:
-        StyleSelector( const Config& conf =Config() );
-
-    public: // properties
-
-        /** Name of this style class. */
-        std::string& name() { return _name; }
-        const std::string& name() const { return _name; }
-
-        /** Name of the style to select */
-        optional<std::string>& styleName() { return _styleName; }
-        const optional<std::string>& styleName() const { return _styleName; }
-
-        /** Expression/spatial filter used to select items to which the style will apply */
-        optional<Query>& query() { return _query; }
-        const optional<Query>& query() const { return _query; }
-
-        /** Returns the styleClass() property, if set; otherwise returns the selector name. */
-        std::string getSelectedStyleName() const;
-
-        //Configurable
-        virtual void mergeConfig( const Config& conf );
-        virtual Config getConfig() const;
-
-    protected:
-        std::string           _name;
-        optional<std::string> _styleName;
-        optional<Query>       _query;
-    };
-
-    typedef std::list<StyleSelector>   StyleSelectorList;
-    typedef std::vector<StyleSelector> StyleSelectorVector;
-
-
-    /**
-     * A complete definition of style information.
-     */
-    class OSGEARTHSYMBOLOGY_EXPORT StyleSheet : public osg::Referenced
-    {
-    public:
-        /** Constructs a new style sheet, optionally from a Config serialization. */
-        StyleSheet( const Config& conf =Config() );
-
-        /** Gets the context for relative path resolution */
-        const URIContext& uriContext() const { return _uriContext; }
-
-        /** Adds a style to this sheet. */
-        void addStyle( const Style& style );
-
-        /** Removes a style from this sheet. */
-        void removeStyle( const std::string& name );
-        
-        /** Gets a named style from this sheet. If the name isn't found, optionally falls back on the
-            "default" style. Note: if the name has a hashtag prefix (e.g., "#name") it will search for
-            the name with and without the hash. (they are considered equivalent) */
-        Style* getStyle( const std::string& name, bool fallBackOnDefault =true );
-        const Style* getStyle( const std::string& name, bool fallBackOnDefault =true ) const;
-
-        /** Gets the default style in this sheet. */
-        Style* getDefaultStyle();
-        const Style* getDefaultStyle() const;
-
-        /** Selectors pick a style from the sheet based on some criteria. */
-        StyleSelectorList& selectors() { return _selectors; }
-        const StyleSelectorList& selectors() const { return _selectors; }
-
-        /** Adds a resource library. */
-        void addResourceLibrary( const std::string& name, ResourceLibrary* library );
-
-        /** Gets a resource library by name. */
-        ResourceLibrary* getResourceLibrary( const std::string& name ) const;
-
-        /** Resource libraries in this sheet. */
-        const ResourceLibraryMap& resourceLibraries() const { return _libraries; }
-
-    public: // serialization functions
-
-        virtual Config getConfig() const;
-        virtual void mergeConfig( const Config& conf );
-
-    protected:
-        URIContext         _uriContext;
-        ResourceLibraryMap _libraries;
-        StyleSelectorList  _selectors;
-        StyleMap           _styles;
-        Style              _emptyStyle;
-    };
-
 } } // namespace osgEarth::Symbology
 
 
diff --git a/src/osgEarthSymbology/Style.cpp b/src/osgEarthSymbology/Style.cpp
index 7656a36..1dfd380 100644
--- a/src/osgEarthSymbology/Style.cpp
+++ b/src/osgEarthSymbology/Style.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,6 @@
 #include <osgEarthSymbology/Style>
 #include <osgEarthSymbology/CssUtils>
 #include <osgEarthSymbology/SLD>
-#include <osgEarth/HTTPClient>
 #include <algorithm>
 
 using namespace osgEarth;
@@ -36,30 +35,51 @@ _name( name )
     //NOP
 }
 
-Style::Style(const Style& rhs) :
+Style::Style(const Style& rhs, const osg::CopyOp& op) :
 _name    ( rhs._name ),
 _symbols ( rhs._symbols ),
 _origType( rhs._origType ),
 _origData( rhs._origData ),
 _uri     ( rhs._uri )
 {
-    //nop
+    if ( op.getCopyFlags() == osg::CopyOp::SHALLOW_COPY )
+    {
+        _symbols = rhs._symbols;
+    }
+    else
+    {
+        _symbols.clear();
+        mergeConfig( rhs.getConfig(false) );
+    }
+}
+
+Style&
+Style::operator = ( const Style& rhs )
+{
+    _name.clear();
+    _origType.clear();
+    _origData.clear();
+    _uri.unset();
+    _symbols.clear();
+    mergeConfig( rhs.getConfig(false) );
+    return *this;
 }
 
 void Style::addSymbol(Symbol* symbol)
 {
-    _symbols.push_back(symbol);
+    if ( symbol )
+        _symbols.push_back(symbol);
 }
 
 bool Style::removeSymbol(Symbol* symbol)
 {
-	SymbolList::iterator it = find(_symbols.begin(), _symbols.end(), symbol);
-	if (it == _symbols.end())
-		return false;
-		
-	_symbols.erase(it);
-	
-	return true;
+    SymbolList::iterator it = std::find(_symbols.begin(), _symbols.end(), symbol);
+    if (it == _symbols.end())
+        return false;
+
+    _symbols.erase(it);
+
+    return true;
 }
 
 Style::Style( const Config& conf )
@@ -78,7 +98,7 @@ Style::combineWith( const Style& rhs ) const
     newStyle.mergeConfig( rhs.getConfig(false) );
 
     if ( !this->empty() && !rhs.empty() )
-        newStyle.setName( _name + ":" + rhs.getName() );
+        newStyle.setName( _name + std::string(":") + rhs.getName() );
     else if ( !this->empty() && rhs.empty() )
         newStyle.setName( _name );
     else if ( this->empty() && !rhs.empty() )
@@ -90,6 +110,12 @@ Style::combineWith( const Style& rhs ) const
 }
 
 void
+Style::fromCSS( const std::string& css )
+{
+    SLDReader::readStyleFromCSSParams( css, *this );
+}
+
+void
 Style::mergeConfig( const Config& conf )
 {
     if ( _name.empty() )
@@ -106,6 +132,12 @@ Style::mergeConfig( const Config& conf )
     if ( conf.value( "type" ) == "text/css" )
     {
         _origData = conf.value();
+        
+        // just take the first block.
+        ConfigSet blocks;
+        CssUtils::readConfig( _origData, conf.referrer(), blocks );
+        if ( blocks.size() > 0 )
+            SLDReader::readStyleFromCSSParams( blocks.front(), *this );
     }
     else
     {
@@ -118,31 +150,53 @@ Style::mergeConfig( const Config& conf )
 
                 if ( c.key() == "text" )
                 {
-                    getOrCreateSymbol<TextSymbol>()->mergeConfig( c );
+                    add( new TextSymbol(c) );
+                    //getOrCreate<TextSymbol>()->mergeConfig( c );
                 }
                 else if ( c.key() == "point" )
                 {
-                    getOrCreateSymbol<PointSymbol>()->mergeConfig( c );
+                    add( new PointSymbol(c) );
+                    //getOrCreate<PointSymbol>()->mergeConfig( c );
                 }
                 else if ( c.key() == "line" )
                 {
-                    getOrCreateSymbol<LineSymbol>()->mergeConfig( c );
+                    //getOrCreate<LineSymbol>()->mergeConfig( c );
+                    add( new LineSymbol(c) );
                 }
                 else if ( c.key() == "polygon" )
                 {
-                    getOrCreateSymbol<PolygonSymbol>()->mergeConfig( c );
+                    //getOrCreate<PolygonSymbol>()->mergeConfig( c );
+                    add( new PolygonSymbol(c) );
                 }
                 else if ( c.key() == "extrusion" )
                 {
-                    getOrCreateSymbol<ExtrusionSymbol>()->mergeConfig( c );
+                    //getOrCreate<ExtrusionSymbol>()->mergeConfig( c );
+                    add( new ExtrusionSymbol(c) );
                 }
                 else if ( c.key() == "altitude" )
                 {
-                    getOrCreateSymbol<AltitudeSymbol>()->mergeConfig( c );
+                    //getOrCreate<AltitudeSymbol>()->mergeConfig( c );
+                    add( new AltitudeSymbol(c) );
                 }
                 else if ( c.key() == "marker" )
                 {
-                    getOrCreateSymbol<MarkerSymbol>()->mergeConfig( c );
+                    //getOrCreate<MarkerSymbol>()->mergeConfig( c );
+                    add( new MarkerSymbol(c) );
+                }
+                else if ( c.key() == "skin" )
+                {
+                    //getOrCreate<SkinSymbol>()->mergeConfig( c );
+                    add( new SkinSymbol(c) );
+                }
+                else if ( c.key() == "model" )
+                {
+                    //getOrCreate<ModelSymbol>()->mergeConfig( c );
+                    add( new ModelSymbol(c) );
+                }
+                else if ( c.key() == "icon" )
+                {
+                    //getOrCreate<IconSymbol>()->mergeConfig( c );
+                    add( new IconSymbol(c) );
                 }
             }
         }
@@ -153,13 +207,13 @@ Config
 Style::getConfig( bool keepOrigType ) const
 {
     Config conf( "style" );
-    conf.attr("name") = _name;
+    conf.set("name", _name);
 
     conf.addIfSet( "url", _uri );
     
     if ( _origType == "text/css" && keepOrigType )
     {
-        conf.attr("type") = _origType;
+        conf.set("type", _origType);
         conf.value() = _origData;            
     }
     else
@@ -167,249 +221,10 @@ Style::getConfig( bool keepOrigType ) const
         Config symbolsConf( "symbols" );
         for( SymbolList::const_iterator i = _symbols.begin(); i != _symbols.end(); ++i )
         {
-            symbolsConf.addChild( i->get()->getConfig() );
+            symbolsConf.add( i->get()->getConfig() );
         }
-        conf.addChild( symbolsConf );
-    }
-
-    return conf;
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[StyleSelector] "
-
-StyleSelector::StyleSelector( const Config& conf )
-{
-    mergeConfig( conf );
-}
-
-std::string
-StyleSelector::getSelectedStyleName() const 
-{
-    return _styleName.isSet() ? *_styleName : _name;
-}
-
-void
-StyleSelector::mergeConfig( const Config& conf )
-{
-    _name = conf.value( "name" );
-    conf.getIfSet( "style", _styleName ); // backwards compatibility
-    conf.getIfSet( "class", _styleName );
-    conf.getObjIfSet( "query", _query );
-}
-
-Config
-StyleSelector::getConfig() const
-{
-    Config conf( "selector" );
-    conf.add( "name", _name );
-    conf.addIfSet( "class", _styleName );
-    conf.addObjIfSet( "query", _query );
-    return conf;
-}
-
-//------------------------------------------------------------------------
-
-#undef  LC
-#define LC "[StyleSheet] "
-
-StyleSheet::StyleSheet( const Config& conf )
-{
-    mergeConfig( conf );
-}
-
-void
-StyleSheet::addStyle( const Style& style )
-{
-    _styles[ style.getName() ] = style;
-}
-
-void
-StyleSheet::removeStyle( const std::string& name )
-{
-    _styles.erase( name );
-}
-
-Style*
-StyleSheet::getStyle( const std::string& name, bool fallBackOnDefault )
-{
-    StyleMap::iterator i = _styles.find( name );
-    if ( i != _styles.end() ) {
-        return &i->second;
-    }
-    else if ( name.length() > 1 && name.at(0) == '#' ) {
-        std::string nameWithoutHash = name.substr( 1 );
-        return getStyle( nameWithoutHash, fallBackOnDefault );
-    }
-    else if ( fallBackOnDefault ) {
-        return getDefaultStyle();
-    }
-    else {
-        return 0L;
+        conf.add( symbolsConf );
     }
-}
 
-const Style*
-StyleSheet::getStyle( const std::string& name, bool fallBackOnDefault ) const
-{
-    StyleMap::const_iterator i = _styles.find( name );
-    if ( i != _styles.end() ) {
-        return &i->second;
-    }
-    else if ( name.length() > 1 && name.at(0) == '#' ) {
-        std::string nameWithoutHash = name.substr( 1 );
-        return getStyle( nameWithoutHash, fallBackOnDefault );
-    }
-    else if ( fallBackOnDefault ) {
-        return getDefaultStyle();
-    }
-    else {
-        return 0L;
-    }
-}
-
-Style*
-StyleSheet::getDefaultStyle()
-{
-    if ( _styles.find( "default" ) != _styles.end() ) {
-        return &_styles.find( "default" )->second;
-    }
-    else if ( _styles.find( "" ) != _styles.end() ) {
-        return &_styles.find( "" )->second;
-    }
-    if ( _styles.size() > 0 ) {
-        return &_styles.begin()->second;
-    }
-    else {
-        // insert the empty style and return it.
-        _styles["default"] = _emptyStyle;
-        return &_styles.begin()->second;
-    }
-}
-
-const Style*
-StyleSheet::getDefaultStyle() const
-{
-    if ( _styles.size() == 1 ) {
-        return &_styles.begin()->second;
-    }
-    else if ( _styles.find( "default" ) != _styles.end() ) {
-        return &_styles.find( "default" )->second;
-    }
-    else if ( _styles.find( "" ) != _styles.end() ) {
-        return &_styles.find( "" )->second;
-    }
-    else {
-        return &_emptyStyle;
-    }
-}
-
-void
-StyleSheet::addResourceLibrary( const std::string& name, ResourceLibrary* lib )
-{
-    _libraries[name] = lib;
-}
-
-ResourceLibrary*
-StyleSheet::getResourceLibrary( const std::string& name ) const
-{
-    ResourceLibraryMap::const_iterator i = _libraries.find( name );
-    return i != _libraries.end() ? i->second.get() : 0L;
-}
-
-Config
-StyleSheet::getConfig() const
-{
-    Config conf;
-    for( StyleSelectorList::const_iterator i = _selectors.begin(); i != _selectors.end(); ++i )
-    {
-        conf.add( "selector", i->getConfig() );
-    }
-    for( StyleMap::const_iterator i = _styles.begin(); i != _styles.end(); ++i )
-    {
-        conf.add( "style", i->second.getConfig() );
-    }
     return conf;
 }
-
-void
-StyleSheet::mergeConfig( const Config& conf )
-{
-    _uriContext = conf.uriContext();
-
-    // read in any resource library references
-    ConfigSet libraries = conf.children( "library" );
-    for( ConfigSet::iterator i = libraries.begin(); i != libraries.end(); ++i )
-    {
-        std::string name = i->value("name");
-        if ( name.empty() ) {
-            OE_WARN << LC << "Resource library missing required 'name' attribute" << std::endl;
-            continue;
-        }
-
-        URI uri( i->value("url"), i->uriContext() );
-        if ( uri.empty() ) {
-            OE_WARN << LC << "Resource library missing required 'url' element" << std::endl;
-            continue;
-        }
-
-        osg::ref_ptr<ResourceLibrary> reslib = ResourceLibrary::create( uri );
-        if ( !reslib.valid() ) {
-            OE_WARN << LC << "Resource library creation failed" << std::endl;
-            continue;
-        }
-
-        addResourceLibrary( name, reslib.get() );
-    }
-
-    // read any style class definitions. either "class" or "selector" is allowed
-    ConfigSet selectors = conf.children( "selector" );
-    if ( selectors.empty() ) selectors = conf.children( "class" );
-    for( ConfigSet::iterator i = selectors.begin(); i != selectors.end(); ++i )
-    {
-        _selectors.push_back( StyleSelector( *i ) );
-    }
-
-    // read in the actual styles
-    ConfigSet styles = conf.children( "style" );
-    for( ConfigSet::iterator i = styles.begin(); i != styles.end(); ++i )
-    {
-        const Config& styleConf = *i;
-
-        if ( styleConf.value("type") == "text/css" )
-        {
-            // read the inline data:
-            std::string cssString = styleConf.value();
-
-            // if there's a URL, read the CSS from the URL:
-            if ( styleConf.hasValue("url") )
-            {
-                URI uri( styleConf.value("url"), styleConf.uriContext() );
-                HTTPClient::readString( uri.full(), cssString );
-            }
-
-            // a CSS style definition can actually contain multiple styles. Read them
-            // and create one style for each in the catalog.
-            std::stringstream buf( cssString );
-            Config css = CssUtils::readConfig( buf );
-            css.setURIContext( styleConf.uriContext( ) );
-            
-            const ConfigSet children = css.children();
-            for(ConfigSet::const_iterator j = children.begin(); j != children.end(); ++j )
-            {
-                Style style( styleConf );
-                
-                if ( SLDReader::readStyleFromCSSParams( *j, style ) )
-                    _styles[ j->key() ] = style;
-            }            
-        }
-        else
-        {
-            Style style( styleConf );
-            _styles[ style.getName() ] = style;
-        }
-    }
-}
-
diff --git a/src/osgEarthSymbology/StyleSelector b/src/osgEarthSymbology/StyleSelector
new file mode 100644
index 0000000..750b689
--- /dev/null
+++ b/src/osgEarthSymbology/StyleSelector
@@ -0,0 +1,80 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHSYMBOLOGY_STYLE_SELECTOR_H
+#define OSGEARTHSYMBOLOGY_STYLE_SELECTOR_H 1
+
+#include <osgEarthSymbology/Common>
+#include <osgEarthSymbology/Style>
+#include <osgEarthSymbology/Expression>
+
+namespace osgEarth { namespace Symbology 
+{
+    /**
+     * A style selector lets you classify styles based on rules, such as a
+     * feature query. By default the selector selects the style with the
+     * same name as the selector, but you can override this by settings
+     * the styleName property.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT StyleSelector
+    {
+    public:
+        /** Constructs a style selector */
+        StyleSelector( const Config& conf =Config() );
+
+        virtual ~StyleSelector() { }
+
+    public: // properties
+
+        /** Name of this style class. */
+        std::string& name() { return _name; }
+        const std::string& name() const { return _name; }
+
+        /** Name of the style to select */
+        optional<std::string>& styleName() { return _styleName; }
+        const optional<std::string>& styleName() const { return _styleName; }
+
+        /** Script that returns the name of the style to select. */
+        optional<StringExpression>& styleExpression() { return _styleExpression; }
+        const optional<StringExpression>& styleExpression() const { return _styleExpression; }
+
+        /** Expression/spatial filter used to select items to which the style will apply */
+        optional<Query>& query() { return _query; }
+        const optional<Query>& query() const { return _query; }
+
+        /** Returns the styleClass() property, if set; otherwise returns the selector name. */
+        std::string getSelectedStyleName() const;
+
+        //Configurable
+        virtual void mergeConfig( const Config& conf );
+        virtual Config getConfig() const;
+
+    protected:
+        std::string                _name;
+        optional<std::string>      _styleName;
+        optional<StringExpression> _styleExpression;
+        optional<Query>            _query;
+    };
+
+    typedef std::list<StyleSelector>   StyleSelectorList;
+    typedef std::vector<StyleSelector> StyleSelectorVector;
+
+} } // namespace osgEarth::Symbology
+
+
+#endif // OSGEARTHSYMBOLOGY_STYLE_SELECTOR_H
diff --git a/src/osgEarthSymbology/StyleSelector.cpp b/src/osgEarthSymbology/StyleSelector.cpp
new file mode 100644
index 0000000..1093aac
--- /dev/null
+++ b/src/osgEarthSymbology/StyleSelector.cpp
@@ -0,0 +1,59 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthSymbology/StyleSelector>
+
+#define LC "[StyleSelector] "
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+//------------------------------------------------------------------------
+
+StyleSelector::StyleSelector( const Config& conf )
+{
+    mergeConfig( conf );
+}
+
+std::string
+StyleSelector::getSelectedStyleName() const 
+{
+    return _styleName.isSet() ? *_styleName : _name;
+}
+
+void
+StyleSelector::mergeConfig( const Config& conf )
+{
+    _name = conf.value( "name" );
+    conf.getIfSet   ( "style",        _styleName );
+    conf.getIfSet   ( "class",        _styleName ); // alias
+    conf.getObjIfSet( "style_expr",   _styleExpression ); 
+    conf.getObjIfSet( "class_expr",   _styleExpression ); // alias
+    conf.getObjIfSet( "query",        _query );
+}
+
+Config
+StyleSelector::getConfig() const
+{
+    Config conf( "selector" );
+    conf.add        ( "name",         _name );
+    conf.addIfSet   ( "style",        _styleName );
+    conf.addObjIfSet( "style_expr",   _styleExpression );
+    conf.addObjIfSet( "query",        _query );
+    return conf;
+}
diff --git a/src/osgEarthSymbology/StyleSheet b/src/osgEarthSymbology/StyleSheet
new file mode 100644
index 0000000..93bb425
--- /dev/null
+++ b/src/osgEarthSymbology/StyleSheet
@@ -0,0 +1,111 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHSYMBOLOGY_STYLE_SHEET_H
+#define OSGEARTHSYMBOLOGY_STYLE_SHEET_H 1
+
+#include <osgEarthSymbology/Common>
+#include <osgEarthSymbology/Style>
+#include <osgEarthSymbology/StyleSelector>
+#include <osgEarthSymbology/Skins>
+#include <osgEarthSymbology/ResourceLibrary>
+
+namespace osgEarth { namespace Symbology 
+{
+    /**
+     * A complete definition of style information.
+     */
+    class OSGEARTHSYMBOLOGY_EXPORT StyleSheet : public osg::Referenced
+    {
+    public:
+      /**
+       * A simple representation of a script used locally
+       */
+      struct Script : osg::Referenced
+      {
+        Script(const std::string& code, const std::string& language="javascript", const std::string& name="") :
+          code(code), language(language), name(name) { }
+
+        std::string code;
+        std::string language;
+        std::string name;
+      };
+
+    public:
+        /** Constructs an empty style sheet. */
+        StyleSheet();
+
+        /** Constructs a new style sheet */
+        StyleSheet( const Config& conf );
+
+        /** Gets the context for relative path resolution */
+        const URIContext& uriContext() const { return _uriContext; }
+
+        /** Adds a style to this sheet. */
+        void addStyle( const Style& style );
+
+        /** Removes a style from this sheet. */
+        void removeStyle( const std::string& name );
+        
+        /** Gets a named style from this sheet. If the name isn't found, optionally falls back on the
+            "default" style. Note: if the name has a hashtag prefix (e.g., "#name") it will search for
+            the name with and without the hash. (they are considered equivalent) */
+        Style* getStyle( const std::string& name, bool fallBackOnDefault =true );
+        const Style* getStyle( const std::string& name, bool fallBackOnDefault =true ) const;
+
+        /** Gets the default style in this sheet. */
+        Style* getDefaultStyle();
+        const Style* getDefaultStyle() const;
+
+        /** Selectors pick a style from the sheet based on some criteria. */
+        StyleSelectorList& selectors() { return _selectors; }
+        const StyleSelectorList& selectors() const { return _selectors; }
+        const StyleSelector* getSelector( const std::string& name ) const;
+
+        /** Adds a resource library. */
+        void addResourceLibrary( ResourceLibrary* library );
+
+        /** Gets a resource library by name. */
+        ResourceLibrary* getResourceLibrary( const std::string& name ) const;
+
+        /** Script accessors */
+        void setScript( Script* script );
+        Script* script() const { return _script.get(); }
+
+    public: // serialization functions
+
+        virtual Config getConfig() const;
+        virtual void mergeConfig( const Config& conf );
+
+    protected:
+        URIContext                   _uriContext;
+        osg::ref_ptr<Script>         _script;
+        StyleSelectorList            _selectors;
+        StyleMap                     _styles;
+        Style                        _emptyStyle;
+        
+        typedef std::map<std::string, osg::ref_ptr<ResourceLibrary> > ResourceLibraries;
+        ResourceLibraries          _resLibs;
+        Threading::ReadWriteMutex  _resLibsMutex;
+
+    };
+
+} } // namespace osgEarth::Symbology
+
+
+#endif // OSGEARTHSYMBOLOGY_STYLE_SHEET_H
diff --git a/src/osgEarthSymbology/StyleSheet.cpp b/src/osgEarthSymbology/StyleSheet.cpp
new file mode 100644
index 0000000..7036ab9
--- /dev/null
+++ b/src/osgEarthSymbology/StyleSheet.cpp
@@ -0,0 +1,288 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthSymbology/StyleSheet>
+#include <osgEarthSymbology/CssUtils>
+#include <osgEarthSymbology/SLD>
+#include <algorithm>
+
+#define LC "[StyleSheet] "
+
+using namespace osgEarth;
+using namespace osgEarth::Symbology;
+
+//------------------------------------------------------------------------
+
+StyleSheet::StyleSheet()
+{
+    //nop
+}
+
+StyleSheet::StyleSheet(const Config& conf)
+{
+    mergeConfig( conf );
+}
+
+void
+StyleSheet::addStyle( const Style& style )
+{
+    _styles[ style.getName() ] = style;
+}
+
+void
+StyleSheet::removeStyle( const std::string& name )
+{
+    _styles.erase( name );
+}
+
+Style*
+StyleSheet::getStyle( const std::string& name, bool fallBackOnDefault )
+{
+    StyleMap::iterator i = _styles.find( name );
+    if ( i != _styles.end() ) {
+        return &i->second;
+    }
+    else if ( name.length() > 1 && name.at(0) == '#' ) {
+        std::string nameWithoutHash = name.substr( 1 );
+        return getStyle( nameWithoutHash, fallBackOnDefault );
+    }
+    else if ( fallBackOnDefault ) {
+        return getDefaultStyle();
+    }
+    else {
+        return 0L;
+    }
+}
+
+const Style*
+StyleSheet::getStyle( const std::string& name, bool fallBackOnDefault ) const
+{
+    StyleMap::const_iterator i = _styles.find( name );
+    if ( i != _styles.end() ) {
+        return &i->second;
+    }
+    else if ( name.length() > 1 && name.at(0) == '#' ) {
+        std::string nameWithoutHash = name.substr( 1 );
+        return getStyle( nameWithoutHash, fallBackOnDefault );
+    }
+    else if ( fallBackOnDefault ) {
+        return getDefaultStyle();
+    }
+    else {
+        return 0L;
+    }
+}
+
+const StyleSelector*
+StyleSheet::getSelector( const std::string& name ) const
+{
+    for(StyleSelectorList::const_iterator i = _selectors.begin(); i != _selectors.end(); ++i )
+    {
+        if ( i->name() == name )
+        {
+            return &(*i);
+        }
+    }
+    return 0L;
+}
+
+Style*
+StyleSheet::getDefaultStyle()
+{
+    if ( _styles.find( "default" ) != _styles.end() ) {
+        return &_styles.find( "default" )->second;
+    }
+    else if ( _styles.find( "" ) != _styles.end() ) {
+        return &_styles.find( "" )->second;
+    }
+    if ( _styles.size() > 0 ) {
+        return &_styles.begin()->second;
+    }
+    else {
+        // insert the empty style and return it.
+        _styles["default"] = _emptyStyle;
+        return &_styles.begin()->second;
+    }
+}
+
+const Style*
+StyleSheet::getDefaultStyle() const
+{
+    if ( _styles.size() == 1 ) {
+        return &_styles.begin()->second;
+    }
+    else if ( _styles.find( "default" ) != _styles.end() ) {
+        return &_styles.find( "default" )->second;
+    }
+    else if ( _styles.find( "" ) != _styles.end() ) {
+        return &_styles.find( "" )->second;
+    }
+    else {
+        return &_emptyStyle;
+    }
+}
+
+void
+StyleSheet::addResourceLibrary( ResourceLibrary* lib )
+{
+    Threading::ScopedWriteLock exclusive( _resLibsMutex );
+    _resLibs[ lib->getName() ] = lib;
+}
+
+ResourceLibrary*
+StyleSheet::getResourceLibrary( const std::string& name ) const
+{
+    Threading::ScopedReadLock shared( const_cast<StyleSheet*>(this)->_resLibsMutex );
+    ResourceLibraries::const_iterator i = _resLibs.find( name );
+    if ( i != _resLibs.end() )
+        return i->second.get();
+    else
+        return 0L;
+}
+
+void StyleSheet::setScript( Script* script )
+{
+  _script = script;
+}
+
+
+Config
+StyleSheet::getConfig() const
+{
+    Config conf;
+
+    for( StyleSelectorList::const_iterator i = _selectors.begin(); i != _selectors.end(); ++i )
+    {
+        conf.add( "selector", i->getConfig() );
+    }
+
+    for( StyleMap::const_iterator i = _styles.begin(); i != _styles.end(); ++i )
+    {
+        conf.add( "style", i->second.getConfig() );
+    }
+
+    {
+        Threading::ScopedReadLock shared( const_cast<StyleSheet*>(this)->_resLibsMutex );
+
+        for( ResourceLibraries::const_iterator i = _resLibs.begin(); i != _resLibs.end(); ++i )
+        {
+            if ( i->second.valid() )
+            {
+                Config libConf = i->second->getConfig();
+                conf.add( "library", libConf );
+            }
+        }
+    }
+
+    if ( _script.valid() )
+    {
+        Config scriptConf("script");
+        if ( !_script->name.empty() )
+            scriptConf.set( "name", _script->name );
+        if ( !_script->language.empty() )
+            scriptConf.set( "language", _script->language );
+        if ( !_script->code.empty() )
+            scriptConf.value() = _script->code;
+
+        conf.add( scriptConf );
+    }
+
+    return conf;
+}
+
+void
+StyleSheet::mergeConfig( const Config& conf )
+{
+    _uriContext = URIContext( conf.referrer() );
+
+    // read in any resource library references
+    ConfigSet libraries = conf.children( "library" );
+    for( ConfigSet::iterator i = libraries.begin(); i != libraries.end(); ++i )
+    {
+        ResourceLibrary* resLib = new ResourceLibrary( *i );
+        _resLibs[resLib->getName()] = resLib;
+    }
+
+    // read in any scripts
+    ConfigSet scripts = conf.children( "script" );
+    for( ConfigSet::iterator i = scripts.begin(); i != scripts.end(); ++i )
+    {
+        // get the script code
+        std::string code = i->value();
+
+        // name is optional and unused at the moment
+        std::string name = i->value("name");
+
+        std::string lang = i->value("language");
+        if ( lang.empty() ) {
+            // default to javascript
+            lang = "javascript";
+        }
+
+        _script = new Script(code, lang, name);
+    }
+
+    // read any style class definitions. either "class" or "selector" is allowed
+    ConfigSet selectors = conf.children( "selector" );
+    if ( selectors.empty() ) selectors = conf.children( "class" );
+    for( ConfigSet::iterator i = selectors.begin(); i != selectors.end(); ++i )
+    {
+        _selectors.push_back( StyleSelector( *i ) );
+    }
+
+    // read in the actual styles
+    ConfigSet styles = conf.children( "style" );
+    for( ConfigSet::iterator i = styles.begin(); i != styles.end(); ++i )
+    {
+        const Config& styleConf = *i;
+
+        if ( styleConf.value("type") == "text/css" )
+        {
+            // for CSS data, there may be multiple styles in one CSS block. So
+            // parse them all out and add them to the stylesheet.
+
+            // read the inline data:
+            std::string cssString = styleConf.value();
+
+            // if there's a URL, read the CSS from the URL:
+            if ( styleConf.hasValue("url") )
+            {
+                URI uri( styleConf.value("url"), styleConf.referrer() );
+                cssString = uri.readString().getString();
+            }
+
+            // break up the CSS into multiple CSS blocks and parse each one individually.
+            std::vector<std::string> blocks;
+            CssUtils::split( cssString, blocks );
+
+            for( std::vector<std::string>::iterator i = blocks.begin(); i != blocks.end(); ++i )
+            {
+                Config blockConf( styleConf );
+                blockConf.value() = *i;
+                //OE_INFO << LC << "Style block = " << blockConf.toJSON() << std::endl;
+                Style style( blockConf );
+                _styles[ style.getName() ] = style;
+            }
+        }
+        else
+        {
+            Style style( styleConf );
+            _styles[ style.getName() ] = style;
+        }
+    }
+}
diff --git a/src/osgEarthSymbology/Symbol b/src/osgEarthSymbology/Symbol
index 73eb4f1..77dedda 100644
--- a/src/osgEarthSymbology/Symbol
+++ b/src/osgEarthSymbology/Symbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,6 +22,7 @@
 
 #include <osgEarthSymbology/Common>
 #include <osgEarth/Config>
+#include <osgEarth/URI>
 #include <osg/Referenced>
 #include <vector>
 
@@ -34,6 +35,8 @@ namespace osgEarth { namespace Symbology
     {
     public:
         Symbol( const Config& conf =Config() );
+        
+        virtual ~Symbol() { }
 
         const URIContext& uriContext() const { return _uriContext; }
 
@@ -68,6 +71,8 @@ namespace osgEarth { namespace Symbology
         Stroke( float r, float g, float b, float a );
         Stroke( const Config& conf ) { mergeConfig(conf); }
 
+        virtual ~Stroke() { }
+
         /** Line color. */
         osg::Vec4f& color() { return _color; }
         const osg::Vec4f& color() const { return _color; }
@@ -112,6 +117,8 @@ namespace osgEarth { namespace Symbology
         Fill( float r, float g, float b, float a );
         Fill( const Config& conf ) { mergeConfig(conf); }
 
+        virtual ~Fill() { }
+
         osg::Vec4f& color() { return _color; }
         const osg::Vec4f& color() const { return _color; }
 
diff --git a/src/osgEarthSymbology/Symbol.cpp b/src/osgEarthSymbology/Symbol.cpp
index 6deabee..d9cce89 100644
--- a/src/osgEarthSymbology/Symbol.cpp
+++ b/src/osgEarthSymbology/Symbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -25,7 +25,7 @@ using namespace osgEarth::Symbology;
 
 Symbol::Symbol( const Config& conf )
 {
-    _uriContext = conf.uriContext();
+    _uriContext = URIContext(conf.referrer());
 }
 
 //------------------------------------------------------------------------
diff --git a/src/osgEarthSymbology/Tags b/src/osgEarthSymbology/Tags
index 9ad7da0..406832d 100644
--- a/src/osgEarthSymbology/Tags
+++ b/src/osgEarthSymbology/Tags
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthSymbology/TextSymbol b/src/osgEarthSymbology/TextSymbol
index 789efa2..bd9c6dd 100644
--- a/src/osgEarthSymbology/TextSymbol
+++ b/src/osgEarthSymbology/TextSymbol
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -33,24 +33,43 @@ namespace osgEarth { namespace Symbology
     class OSGEARTHSYMBOLOGY_EXPORT TextSymbol : public Symbol
     {
     public:
-        enum SizeMode {
-            SIZEMODE_SCREEN,
-            SIZEMODE_OBJECT
-        };
-
-        enum LineOrientation {
-            LINEORIENTATION_PARALLEL,
-            LINEORIENTATION_PERPENDICULAR,
-            LINEORIENTATION_HORIZONTAL
-        };
-
-        enum LinePlacement {
-            LINEPLACEMENT_ALONG_LINE,
-            LINEPLACEMENT_CENTROID
+		enum Encoding {
+            ENCODING_ASCII,
+            ENCODING_UTF8,
+            ENCODING_UTF16,
+			ENCODING_UTF32
+		};
+
+        // note: these are identical to the values in osgText::Text::AlignmentType
+        enum Alignment {
+            ALIGN_LEFT_TOP,
+            ALIGN_LEFT_CENTER,
+            ALIGN_LEFT_BOTTOM,
+
+            ALIGN_CENTER_TOP,
+            ALIGN_CENTER_CENTER,
+            ALIGN_CENTER_BOTTOM,
+
+            ALIGN_RIGHT_TOP,
+            ALIGN_RIGHT_CENTER,
+            ALIGN_RIGHT_BOTTOM,
+            
+            ALIGN_LEFT_BASE_LINE,
+            ALIGN_CENTER_BASE_LINE,
+            ALIGN_RIGHT_BASE_LINE,
+        
+            ALIGN_LEFT_BOTTOM_BASE_LINE,
+            ALIGN_CENTER_BOTTOM_BASE_LINE,
+            ALIGN_RIGHT_BOTTOM_BASE_LINE,
+        
+            ALIGN_BASE_LINE = ALIGN_LEFT_BASE_LINE /// default.        
         };
 
         TextSymbol( const Config& conf =Config() );
 
+        /** dtor */
+        virtual ~TextSymbol() { }
+
         /** Text fill color. */
         optional<Fill>& fill() { return _fill; }
         const optional<Fill>& fill() const { return _fill; }
@@ -75,34 +94,30 @@ namespace osgEarth { namespace Symbology
         optional<float>& size() { return _size; }
         const optional<float>& size() const { return _size; }
 
-        /** Whether the text should face the screen (be 2D) */
-        optional<bool>& rotateToScreen() { return _rotateToScreen; }
-        const optional<bool>& rotateToScreen() const { return _rotateToScreen; }
-
         /** Pixel offset from the center point. */
         optional<osg::Vec2s>& pixelOffset() { return _pixelOffset; }
         const optional<osg::Vec2s>& pixelOffset() const { return _pixelOffset; }
 
+        /** Alignment of the label relative to (0,0) pixels */
+        optional<Alignment>& alignment() { return _alignment; }
+        const optional<Alignment>& alignment() const { return _alignment; }
+
         /** Whether to remove duplicates when drawing multiple labels. */
         optional<bool>& removeDuplicateLabels() { return _removeDuplicateLabels; }
         const optional<bool>& removeDuplicateLabels() const { return _removeDuplicateLabels; }
 
-        /** Whether the size() property refers to pixels or scene units */
-        optional<SizeMode>& sizeMode() { return _sizeMode; }
-        const optional<SizeMode>& sizeMode() const { return _sizeMode; }
-
-        /** */
-        optional<LineOrientation>& lineOrientation() { return _lineOrientation; }
-        const optional<LineOrientation>& lineOrientation() const { return _lineOrientation; }
-
-        /** Whether to render text relative to line data */
-        optional<LinePlacement>& linePlacement() { return _linePlacement; }
-        const optional<LinePlacement>& linePlacement() const { return _linePlacement; }
+        /** Whether to enable decluttering on the text, if applicable */
+        optional<bool>& declutter() { return _declutter; }
+        const optional<bool>& declutter() const { return _declutter; }
 
         /** Label generation provider to use */
         optional<std::string>& provider() { return _provider; }
         const optional<std::string>& provider() const { return _provider; }
 
+        /** text encoding */
+        optional<Encoding>& encoding() { return _encoding; }
+        const optional<Encoding>& encoding() const { return _encoding; }
+
     public:
         virtual Config getConfig() const;
         virtual void mergeConfig( const Config& conf );
@@ -114,14 +129,12 @@ namespace osgEarth { namespace Symbology
         optional<float>             _size;
         optional<StringExpression>  _content;
         optional<NumericExpression> _priority;
-        optional<bool>              _rotateToScreen;
         optional<bool>              _removeDuplicateLabels;
-        optional<SizeMode>          _sizeMode;
-        optional<LineOrientation>   _lineOrientation;
-        optional<LinePlacement>     _linePlacement;
-        optional<std::string>       _theme;
         optional<osg::Vec2s>        _pixelOffset;
         optional<std::string>       _provider;
+		optional<Encoding>          _encoding;
+        optional<Alignment>         _alignment;
+        optional<bool>              _declutter;
     };
 
 } } // namespace osgEarth::Symbology
diff --git a/src/osgEarthSymbology/TextSymbol.cpp b/src/osgEarthSymbology/TextSymbol.cpp
index a022602..c29eac1 100644
--- a/src/osgEarthSymbology/TextSymbol.cpp
+++ b/src/osgEarthSymbology/TextSymbol.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,14 +22,15 @@ using namespace osgEarth;
 using namespace osgEarth::Symbology;
 
 TextSymbol::TextSymbol( const Config& conf ) :
-Symbol( conf ),
-_fill( Fill( 1, 1, 1, 1 ) ),
-_halo( Stroke( 0.3, 0.3, 0.3, 1) ),
-_size( 16.0f ),
-_sizeMode( SIZEMODE_SCREEN ),
-_rotateToScreen( false ),
+Symbol                ( conf ),
+_fill                 ( Fill( 1, 1, 1, 1 ) ),
+_halo                 ( Stroke( 0.3, 0.3, 0.3, 1) ),
+_size                 ( 16.0f ),
 _removeDuplicateLabels( false ),
-_provider( "overlay" )
+_alignment            ( ALIGN_BASE_LINE ),
+_provider             ( "annotation" ),
+_encoding             ( ENCODING_ASCII ),
+_declutter            ( true )
 {
     mergeConfig(conf);
 }
@@ -45,8 +46,42 @@ TextSymbol::getConfig() const
     conf.addIfSet( "size", _size );
     conf.addObjIfSet( "content", _content );
     conf.addObjIfSet( "priority", _priority );
-    conf.addIfSet( "rotate_to_screen", _rotateToScreen );
     conf.addIfSet( "remove_duplicate_labels", _removeDuplicateLabels );
+
+    conf.addIfSet( "encoding", "ascii", _encoding, ENCODING_ASCII );
+    conf.addIfSet( "encoding", "utf8",  _encoding, ENCODING_UTF8 );
+    conf.addIfSet( "encoding", "utf16", _encoding, ENCODING_UTF16 );
+    conf.addIfSet( "encoding", "utf32", _encoding, ENCODING_UTF32 );
+
+#if 0
+    conf.addIfSet( "halign", "left",   _halign, HALIGN_LEFT );
+    conf.addIfSet( "halign", "center", _halign, HALIGN_CENTER );
+    conf.addIfSet( "halign", "right",  _halign, HALIGN_RIGHT );
+
+    conf.addIfSet( "valign", "top",     _valign, VALIGN_TOP );
+    conf.addIfSet( "valign", "center",  _valign, VALIGN_CENTER );
+    conf.addIfSet( "valign", "bottom",  _valign, VALIGN_BOTTOM );
+#endif
+
+    conf.addIfSet( "alignment", "left_top",                _alignment, ALIGN_LEFT_TOP );
+    conf.addIfSet( "alignment", "left_center",             _alignment, ALIGN_LEFT_CENTER );
+    conf.addIfSet( "alignment", "left_bottom",             _alignment, ALIGN_LEFT_BOTTOM );
+    conf.addIfSet( "alignment", "center_top",              _alignment, ALIGN_CENTER_TOP );
+    conf.addIfSet( "alignment", "center_center",           _alignment, ALIGN_CENTER_CENTER );
+    conf.addIfSet( "alignment", "center_bottom",           _alignment, ALIGN_CENTER_BOTTOM );
+    conf.addIfSet( "alignment", "right_top",               _alignment, ALIGN_RIGHT_TOP );
+    conf.addIfSet( "alignment", "right_center",            _alignment, ALIGN_RIGHT_CENTER );
+    conf.addIfSet( "alignment", "right_bottom",            _alignment, ALIGN_RIGHT_BOTTOM );
+    conf.addIfSet( "alignment", "left_base_line",          _alignment, ALIGN_LEFT_BASE_LINE );
+    conf.addIfSet( "alignment", "center_base_line",        _alignment, ALIGN_CENTER_BASE_LINE );
+    conf.addIfSet( "alignment", "right_base_line",         _alignment, ALIGN_RIGHT_BASE_LINE );
+    conf.addIfSet( "alignment", "left_bottom_base_line",   _alignment, ALIGN_LEFT_BOTTOM_BASE_LINE );
+    conf.addIfSet( "alignment", "center_bottom_base_line", _alignment, ALIGN_CENTER_BOTTOM_BASE_LINE );
+    conf.addIfSet( "alignment", "right_bottom_base_line",  _alignment, ALIGN_RIGHT_BOTTOM_BASE_LINE );
+    conf.addIfSet( "alignment", "base_line",               _alignment, ALIGN_BASE_LINE );
+
+#if 0
+    conf.addIfSet( "rotate_to_screen", _rotateToScreen );
     conf.addIfSet( "size_mode", "screen", _sizeMode, SIZEMODE_SCREEN );
     conf.addIfSet( "size_mode", "object", _sizeMode, SIZEMODE_OBJECT );
     conf.addIfSet( "line_orientation", "parallel", _lineOrientation, LINEORIENTATION_PARALLEL );
@@ -54,8 +89,12 @@ TextSymbol::getConfig() const
     conf.addIfSet( "line_orientation", "horizontal", _lineOrientation, LINEORIENTATION_HORIZONTAL );
     conf.addIfSet( "line_placement", "along_line", _linePlacement, LINEPLACEMENT_ALONG_LINE );
     conf.addIfSet( "line_placement", "centroid", _linePlacement, LINEPLACEMENT_CENTROID );
-    conf.addIfSet( "provider", _provider );
     conf.addIfSet( "theme", _theme );
+#endif
+
+    conf.addIfSet( "declutter", _declutter );
+
+    conf.addIfSet( "provider", _provider );
     if ( _pixelOffset.isSet() ) {
         conf.add( "pixel_offset_x", toString(_pixelOffset->x()) );
         conf.add( "pixel_offset_y", toString(_pixelOffset->y()) );
@@ -72,8 +111,32 @@ TextSymbol::mergeConfig( const Config& conf )
     conf.getIfSet( "size", _size );
     conf.getObjIfSet( "content", _content );
     conf.getObjIfSet( "priority", _priority );
-    conf.getIfSet( "rotate_to_screen", _rotateToScreen );
     conf.getIfSet( "remove_duplicate_labels", _removeDuplicateLabels );
+
+    conf.getIfSet( "encoding", "ascii", _encoding, ENCODING_ASCII );
+    conf.getIfSet( "encoding", "utf8",  _encoding, ENCODING_UTF8 );
+    conf.getIfSet( "encoding", "utf16", _encoding, ENCODING_UTF16 );
+    conf.getIfSet( "encoding", "utf32", _encoding, ENCODING_UTF32 );
+
+    conf.getIfSet( "alignment", "left_top",                _alignment, ALIGN_LEFT_TOP );
+    conf.getIfSet( "alignment", "left_center",             _alignment, ALIGN_LEFT_CENTER );
+    conf.getIfSet( "alignment", "left_bottom",             _alignment, ALIGN_LEFT_BOTTOM );
+    conf.getIfSet( "alignment", "center_top",              _alignment, ALIGN_CENTER_TOP );
+    conf.getIfSet( "alignment", "center_center",           _alignment, ALIGN_CENTER_CENTER );
+    conf.getIfSet( "alignment", "center_bottom",           _alignment, ALIGN_CENTER_BOTTOM );
+    conf.getIfSet( "alignment", "right_top",               _alignment, ALIGN_RIGHT_TOP );
+    conf.getIfSet( "alignment", "right_center",            _alignment, ALIGN_RIGHT_CENTER );
+    conf.getIfSet( "alignment", "right_bottom",            _alignment, ALIGN_RIGHT_BOTTOM );
+    conf.getIfSet( "alignment", "left_base_line",          _alignment, ALIGN_LEFT_BASE_LINE );
+    conf.getIfSet( "alignment", "center_base_line",        _alignment, ALIGN_CENTER_BASE_LINE );
+    conf.getIfSet( "alignment", "right_base_line",         _alignment, ALIGN_RIGHT_BASE_LINE );
+    conf.getIfSet( "alignment", "left_bottom_base_line",   _alignment, ALIGN_LEFT_BOTTOM_BASE_LINE );
+    conf.getIfSet( "alignment", "center_bottom_base_line", _alignment, ALIGN_CENTER_BOTTOM_BASE_LINE );
+    conf.getIfSet( "alignment", "right_bottom_base_line",  _alignment, ALIGN_RIGHT_BOTTOM_BASE_LINE );
+    conf.getIfSet( "alignment", "base_line" ,              _alignment, ALIGN_BASE_LINE );
+
+#if 0
+    conf.getIfSet( "rotate_to_screen", _rotateToScreen );
     conf.getIfSet( "size_mode", "screen", _sizeMode, SIZEMODE_SCREEN );
     conf.getIfSet( "size_mode", "object", _sizeMode, SIZEMODE_OBJECT );
     conf.getIfSet( "line_orientation", "parallel", _lineOrientation, LINEORIENTATION_PARALLEL );
@@ -81,8 +144,12 @@ TextSymbol::mergeConfig( const Config& conf )
     conf.getIfSet( "line_orientation", "horizontal", _lineOrientation, LINEORIENTATION_HORIZONTAL );
     conf.getIfSet( "line_placement", "along_line", _linePlacement, LINEPLACEMENT_ALONG_LINE );
     conf.getIfSet( "line_placement", "centroid", _linePlacement, LINEPLACEMENT_CENTROID );
-    conf.getIfSet( "provider", _provider );
     conf.getIfSet( "theme", _theme );
+#endif
+
+    conf.getIfSet( "declutter", _declutter );
+
+    conf.getIfSet( "provider", _provider );
     if ( conf.hasValue( "pixel_offset_x" ) )
         _pixelOffset = osg::Vec2s( conf.value<short>("pixel_offset_x",0), 0 );
     if ( conf.hasValue( "pixel_offset_y" ) )
diff --git a/src/osgEarthUtil/Annotation b/src/osgEarthUtil/Annotation
deleted file mode 100644
index 549fdb2..0000000
--- a/src/osgEarthUtil/Annotation
+++ /dev/null
@@ -1,224 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#ifndef OSGEARTHUTIL_ANNOTATION
-#define OSGEARTHUTIL_ANNOTATION
-
-#include <osgEarth/MapNode>
-#include <osgEarth/GeoMath>
-#include <osgEarth/DrapeableNode>
-#include <osgEarthFeatures/Feature>
-#include <osgEarthFeatures/FeatureNode>
-#include <osgEarthSymbology/Geometry>
-#include <osgEarthSymbology/Style>
-#include <osgEarthUtil/Common>
-#include <osgEarthUtil/Controls>
-#include <osgEarthUtil/Viewpoint>
-#include <osg/MatrixTransform>
-
-namespace osgEarth { namespace Util { namespace Annotation
-{	
-    using namespace osgEarth;
-    using namespace osgEarth::Features;
-    using namespace osgEarth::Symbology;
-    using namespace osgEarth::Util::Controls;
-
-    /**
-     * Stores annotation metadata/extra information that can be stored in a node's
-     * UserData container.
-     */
-    class AnnotationData : public osg::Referenced
-    {
-    public:
-        AnnotationData()
-            : _viewpoint( 0L ) { }
-
-    public:
-        /**
-         * Readable name of the annotation.
-         */
-        void setName( const std::string& value ) { _name = value; }
-        const std::string& getName() const { return _name; }
-
-        /**
-         * Readable description of the annotation.
-         */
-        void setDescription( const std::string& value ) { _description = value; }
-        const std::string& getDescription() const { return _description; }
-
-        /**
-         * Viewpoint associated with this annotation.
-         */
-        void setViewpoint( const Viewpoint& vp ) {
-            if ( _viewpoint )
-                delete _viewpoint;
-            _viewpoint = new Viewpoint(vp);
-        }
-
-        const Viewpoint* getViewpoint() const {
-            return _viewpoint;
-        }
-
-    public:
-        virtual ~AnnotationData() {
-            if ( _viewpoint )
-                delete _viewpoint;
-        }
-
-    protected:
-        std::string _name;
-        std::string _description;
-        Viewpoint*  _viewpoint;
-    };
-
-    /** 
-     * A Placemark combines an 2D icon, a label, support for mouse interaction
-     * and a popup control.
-     */
-    class OSGEARTHUTIL_EXPORT PlacemarkNode : public osg::MatrixTransform
-    {
-    public:
-        /**
-         * Constructs a new node (convenience function)
-         */
-        PlacemarkNode(
-            MapNode*           mapNode,
-            const osg::Vec3d&  position,
-            osg::Image*        iconImage,
-            const std::string& labelText,
-            const Style&       style =Style() );
-
-        /**
-         * Sets the position of this annotation.
-         * @param pos Position data
-         */
-        void setPosition( const osg::Vec3d& mapPosition );
-
-        /**
-         * Image to use for the icon
-         */
-        void setIconImage( osg::Image* image );
-        osg::Image* getIconImage() const { return _image.get(); }
-
-        /**
-         * Text label content
-         */
-        void setText( const std::string& text );
-        const std::string& getText() const { return _text; }
-
-        /**
-         * Style (for text)
-         */
-        void setStyle( const Style& style );
-        const Style& getStyle() const { return _style; }
-
-    private:
-        osg::ref_ptr<osg::Image>   _image;
-        std::string                _text;
-        Style                      _style;
-
-        osg::ref_ptr<Container>    _container;
-        osg::ref_ptr<ImageControl> _icon;
-        osg::ref_ptr<LabelControl> _label;
-
-        osg::observer_ptr<MapNode> _mapNode;
-
-        void init();
-    };
-
-    /**
-     * Simple node that renders a Geometry into a scene graph node. The coordinates
-     * of the geometry are explicit; there is no association with spatial reference
-     * or a map. You can use this object to create a geometry for use in a local
-     * tangent plane coordinate system.
-     */
-    class OSGEARTHUTIL_EXPORT GeometryNode : public DrapeableNode
-    {
-    public:
-        GeometryNode( Geometry* geom, const Style& style );
-
-        GeometryNode( MapNode* mapNode, Geometry* geom, const Style& style, bool draped =true );
-
-        /**
-         * Gets or creates a parent node for the internal draped node. Typically you
-         * would use this to install a Transform node atop the draped node.
-         */
-        template<typename T>
-        T* getOrCreateParent()
-        {
-            if ( _parent.valid() )
-            {
-                return static_cast<T*>( _parent.get() );
-            }
-            else
-            {
-                T* p = new T();
-                _parent = p;
-                if ( getNode() )
-                {
-                    p->addChild( getNode() );
-                    setNode( _parent.get() );
-                }
-                return p;
-            }
-        }
-
-    protected:
-        void init();
-
-        osg::ref_ptr<Geometry>   _geom;
-        Style                    _style;
-        osg::ref_ptr<osg::Group> _parent;
-    };
-
-    /** 
-     * Renders a circle that can drape on a MapNode terrain.    
-     */
-    class OSGEARTHUTIL_EXPORT CircleNode : public FeatureNode 
-    {
-    public:
-        CircleNode( 
-            MapNode*                mapNode,
-            const osg::Vec3d&       center,
-            const Linear&           radius,
-            const Style&            style,
-            bool                    draped      =true,
-            unsigned                numSegments =0 );
-    };
-
-    /** 
-     * Renders a circle that can drape on a MapNode terrain.    
-     */
-    class OSGEARTHUTIL_EXPORT EllipseNode : public FeatureNode
-    {
-    public:
-        EllipseNode( 
-            MapNode*                mapNode,
-            const osg::Vec3d&       center,
-            const Linear&           radiusMajor,
-            const Linear&           radiusMinor,
-            const Angular&          rotationAngle,
-            const Style&            style,
-            bool                    draped      =true,
-            unsigned                numSegments =0 );
-    };
-
-} } } // namespace osgEarth::Util::Annotation
-
-#endif //OSGEARTHUTIL_ANNOTATION
diff --git a/src/osgEarthUtil/Annotation.cpp b/src/osgEarthUtil/Annotation.cpp
deleted file mode 100644
index 9393cb1..0000000
--- a/src/osgEarthUtil/Annotation.cpp
+++ /dev/null
@@ -1,238 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osgEarthUtil/Annotation>
-#include <osgEarth/HTTPClient>
-#include <osgEarth/Utils>
-#include <osgEarthSymbology/GeometryFactory>
-#include <osgEarthFeatures/GeometryCompiler>
-#include <osgEarthFeatures/BuildGeometryFilter>
-
-using namespace osgEarth;
-using namespace osgEarth::Features;
-using namespace osgEarth::Symbology;
-using namespace osgEarth::Util::Annotation;
-using namespace osgEarth::Util::Controls;
-
-//------------------------------------------------------------------------
-
-PlacemarkNode::PlacemarkNode(MapNode*           mapNode,
-                             const osg::Vec3d&  mapPosition,
-                             osg::Image*        image,
-                             const std::string& text,
-                             const Style&       style ) :
-_mapNode( mapNode ),
-_image  ( image ),
-_text   ( text ),
-_style  ( style )
-{
-    init();
-    setPosition( mapPosition );
-}
-
-void
-PlacemarkNode::setPosition( const osg::Vec3d& pos )
-{
-    if ( _mapNode.valid() )
-    {
-        osg::Vec3d world;
-        if ( _mapNode->getMap()->mapPointToWorldPoint(pos, world) )
-        {
-            this->setMatrix( osg::Matrix::translate(world) );
-            static_cast<CullNodeByHorizon*>(this->getCullCallback())->_world = world;
-        }
-    }
-}
-
-void
-PlacemarkNode::init()
-{
-    // remove any old stuff to make way for the new stuff.
-    this->removeChildren(0, this->getNumChildren());
-
-    this->setCullCallback( new CullNodeByHorizon(
-        osg::Vec3d(0,0,1),
-        _mapNode->getMap()->getProfile()->getSRS()->getEllipsoid()) );
-
-    _label = new LabelControl(_text);
-
-    TextSymbol* s = _style.get<TextSymbol>();
-    if ( s )
-    {
-        if ( s->font().isSet() )
-            _label->setFont( osgText::readFontFile( *s->font() ) );
-        if ( s->size().isSet() )
-            _label->setFontSize( *s->size() );
-        if ( s->fill().isSet() )
-            _label->setForeColor( s->fill()->color() );
-        if ( s->halo().isSet() )
-            _label->setHaloColor( s->halo()->color() );
-        if ( s->content().isSet() && _text.empty() )
-            _label->setText( s->content()->eval() );
-    }
-
-    if ( !_image.valid() )
-    {
-        MarkerSymbol* marker = _style.get<MarkerSymbol>();
-        if ( marker )
-        {
-            _image = marker->getImage();
-            if ( !_image.valid() && marker->url().isSet() )
-            {
-                _image = URI(marker->url()->expr()).readImage();
-            }
-        }
-    }
-    _icon = new ImageControl( _image.get() );
-
-    _container = new HBox();
-    _container->setChildSpacing( 8 );
-    
-    _container->addControl( _icon.get() );
-    _container->addControl( _label.get() );
-
-    _container->setHorizAlign( Control::ALIGN_RIGHT );
-    _container->setVertAlign( Control::ALIGN_CENTER );
-
-    //todo: set up the "ANCHOR POINT" for the sweet spot
-
-    // wrap the other controls in a scene node.
-    ControlNode* node = new ControlNode( _container.get() );
-    this->addChild( node );
-}
-
-void
-PlacemarkNode::setIconImage( osg::Image* image )
-{
-    if ( image )
-    {
-        _image = image;
-        if ( _icon.valid() )
-            _icon->setImage( image );
-    }
-}
-
-void
-PlacemarkNode::setText( const std::string& text )
-{
-    if ( text != _text )
-    {
-        _text = text;
-        if ( _label.valid() )
-            _label->setText( text );
-    }
-}
-
-void
-PlacemarkNode::setStyle( const Style& style )
-{
-    _style = style;
-    init();
-}
-
-//------------------------------------------------------------------------
-
-GeometryNode::GeometryNode(Geometry*    geom,
-                           const Style& style) :
-DrapeableNode( NULL ),
-_geom        ( geom ),
-_style       ( style )
-{
-    init();
-}
-
-GeometryNode::GeometryNode(MapNode*     mapNode,
-                           Geometry*    geom,
-                           const Style& style,
-                           bool         draped ) :
-DrapeableNode( mapNode, draped ),
-_geom        ( geom ),
-_style       ( style )
-{
-    init();
-}
-
-void
-GeometryNode::init()
-{
-    FeatureList features;
-    features.push_back( new Feature(_geom.get(), _style) );
-    BuildGeometryFilter bg;
-    // no worky.
-	FilterContext context;
-    osg::Node* node = bg.push( features, context );
-    //osg::Node* node = bg.getNode();
-    setNode( node );
-}
-
-//------------------------------------------------------------------------
-
-// options:
-// - geodetic, draped
-// - projected
-// - localized
-
-CircleNode::CircleNode(MapNode*                mapNode,
-                       const osg::Vec3d&       center,
-                       const Linear&           radius,
-                       const Style&            style,
-                       bool                    draped,
-                       unsigned                numSegments) :
-FeatureNode( mapNode, 0L, draped )
-{
-    if ( mapNode )
-    {
-        const SpatialReference* targetSRS = mapNode->getMap()->getProfile()->getSRS();
-
-        GeometryFactory factory( targetSRS );
-
-        Geometry* geom = factory.createCircle(center, radius, numSegments);
-        if ( geom )
-        {
-            Feature* feature = new Feature( geom, style );
-            feature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
-            setFeature( feature );
-        }
-    }
-}
-
-//------------------------------------------------------------------------
-
-EllipseNode::EllipseNode(MapNode*          mapNode,
-                         const osg::Vec3d& center,
-                         const Linear&     radiusMajor,
-                         const Linear&     radiusMinor,
-                         const Angular&    rotationAngle,
-                         const Style&      style,
-                         bool              draped,
-                         unsigned          numSegments) :
-FeatureNode( mapNode, 0L, draped )
-{
-    if ( mapNode )
-    {
-        GeometryFactory factory( mapNode->getMap()->getProfile()->getSRS() );
-        Geometry* geom = factory.createEllipse(center, radiusMajor, radiusMinor, rotationAngle, numSegments);
-        if ( geom )
-        {
-            Feature* feature = new Feature( geom, style );
-            feature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
-            setFeature( feature );
-        }
-    }
-}
diff --git a/src/osgEarthUtil/AnnotationEvents b/src/osgEarthUtil/AnnotationEvents
new file mode 100644
index 0000000..32a269e
--- /dev/null
+++ b/src/osgEarthUtil/AnnotationEvents
@@ -0,0 +1,95 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_UTIL_ANNOTATION_EVENTS_H
+#define OSGEARTH_UTIL_ANNOTATION_EVENTS_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarthAnnotation/AnnotationNode>
+#include <set>
+
+namespace osgEarth { namespace Util
+{	
+    using namespace osgEarth::Util;
+    using namespace osgEarth::Annotation;
+
+    /**
+     * Event handler skeleton for handling events from the AnnotationEventCallback.
+     */
+    struct AnnotationEventHandler : public osg::Referenced
+    {
+        struct EventArgs
+        {
+            float x, y;
+            int   buttons;   // see osgGA::GUIEventAdapter::MouseButtonMask
+            int   modkeys;   // see osgGA::GUIEventAdapter::ModKeyMask
+        };
+
+        virtual void onClick( AnnotationNode* node, const EventArgs& details ) { }
+
+        virtual void onHoverEnter( AnnotationNode* node, const EventArgs& details ) { }
+
+        virtual void onHoverLeave( AnnotationNode* node, const EventArgs& details ) { }
+
+        virtual ~AnnotationEventHandler() { }
+    };
+
+    /**
+     * Event-traversal node callback that handles user interaction with 
+     * annotation objects.
+     */
+    class OSGEARTHUTIL_EXPORT AnnotationEventCallback : public osg::NodeCallback
+    {
+    public:
+        AnnotationEventCallback( AnnotationEventHandler* handler =0L );
+
+        /** 
+         * Adds an event handler whose events will fire upon user actions
+         */
+        void addHandler( AnnotationEventHandler* handler );
+
+        /**
+         * Sets whether "hovering" events will fire. By default they do. But you 
+         * can disable this (if you're not using hovering) and get a small
+         * performance improvement.
+         */
+        void setHoverEnabled( bool hoverEnabled );
+
+    public: // osg::NodeCallback
+
+        virtual void operator()( osg::Node* node, osg::NodeVisitor* nv );
+
+    protected:
+
+        virtual ~AnnotationEventCallback() { }
+
+        AnnotationEventHandler::EventArgs _args;
+        bool  _mouseDown;
+        bool _hoverEnabled;
+        std::set<AnnotationNode*> _hovered;
+
+        typedef std::vector< osg::ref_ptr<AnnotationEventHandler> > Handlers;
+        Handlers _handlers;
+
+        typedef void (AnnotationEventHandler::*EventHandlerMethodPtr)(AnnotationNode*,const AnnotationEventHandler::EventArgs&);
+        void fireEvent(EventHandlerMethodPtr mp, AnnotationNode* node);
+    };
+
+} } // namespace osgEarth::Annotation
+
+#endif // OSGEARTH_ANNO_ANNOTATION_NODE_H
diff --git a/src/osgEarthUtil/AnnotationEvents.cpp b/src/osgEarthUtil/AnnotationEvents.cpp
new file mode 100644
index 0000000..5b94568
--- /dev/null
+++ b/src/osgEarthUtil/AnnotationEvents.cpp
@@ -0,0 +1,150 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthUtil/AnnotationEvents>
+#include <osgEarth/Pickers>
+#include <osgGA/GUIEventAdapter>
+#include <osgGA/EventVisitor>
+#include <osgViewer/View>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Annotation;
+
+AnnotationEventCallback::AnnotationEventCallback( AnnotationEventHandler* handler ) :
+_hoverEnabled( true ),
+_mouseDown   ( false )
+{
+    if ( handler )
+        addHandler( handler );
+}
+
+void
+AnnotationEventCallback::addHandler( AnnotationEventHandler* handler )
+{
+    if ( handler )
+        _handlers.push_back( handler );
+}
+
+void
+AnnotationEventCallback::operator()( osg::Node* node, osg::NodeVisitor* nv )
+{
+    osgGA::EventVisitor* ev = static_cast<osgGA::EventVisitor*>(nv);
+    osgGA::EventVisitor::EventList& events = ev->getEvents();
+    osgViewer::View* view = static_cast<osgViewer::View*>(ev->getActionAdapter());
+
+    for( osgGA::EventVisitor::EventList::const_iterator e = events.begin(); e != events.end(); ++e )
+    {
+        osgGA::GUIEventAdapter* ea = e->get();
+
+        if ( ea->getEventType() == osgGA::GUIEventAdapter::MOVE ||
+             ea->getEventType() == osgGA::GUIEventAdapter::DRAG )
+        {
+            _args.x = ea->getX();
+            _args.y = ea->getY();        
+        }
+
+        else if ( ea->getEventType() == osgGA::GUIEventAdapter::PUSH )
+        {
+            _mouseDown = true;
+            _args.x = ea->getX();
+            _args.y = ea->getY();
+            _args.buttons = ea->getButtonMask();
+            _args.modkeys = ea->getModKeyMask();
+
+            Picker picker( view, node );
+            Picker::Hits hits;
+            if ( picker.pick( _args.x, _args.y, hits ) )
+            {
+                std::set<AnnotationNode*> fired; // prevent multiple hits on the same instance
+
+                for( Picker::Hits::const_iterator h = hits.begin(); h != hits.end(); ++h )
+                {
+                    AnnotationNode* anno = picker.getNode<AnnotationNode>( *h );
+                    if ( anno && fired.find(anno) == fired.end() )
+                    {
+                        fireEvent( &AnnotationEventHandler::onClick, anno );
+                        fired.insert( anno );
+                        //break;
+                    }
+                }
+            }
+        }
+
+        else if ( ea->getEventType() == osgGA::GUIEventAdapter::RELEASE )
+        {
+            _mouseDown = false;
+        }
+
+        else if ( ea->getEventType() == osgGA::GUIEventAdapter::FRAME && _hoverEnabled && !_mouseDown )
+        {
+            //Insert all the currently hovered annotations into a set to be unhoverd
+            std::set<AnnotationNode*> toUnHover;
+            for( std::set<AnnotationNode*>::iterator i = _hovered.begin(); i != _hovered.end(); ++i )
+            {
+                toUnHover.insert( *i );
+            }
+
+            Picker picker( view, node );
+            Picker::Hits hits;
+
+            if ( picker.pick( _args.x, _args.y, hits ) )
+            {
+                for( Picker::Hits::const_iterator h = hits.begin(); h != hits.end(); ++h )
+                {
+                    const Picker::Hit& hit = *h;
+
+                    AnnotationNode* anno = picker.getNode<AnnotationNode>( hit );
+                    if ( anno )
+                    {
+                        //If the annotation ins't current hovered, add it to the list of new hovered items
+                        if ( _hovered.find(anno) == _hovered.end() )
+                        {
+                            _hovered.insert( anno );
+                            fireEvent( &AnnotationEventHandler::onHoverEnter, anno );
+                        }
+                        //It's still hovered, so don't unhover it
+                        toUnHover.erase( anno );
+                        //break;
+                    }
+                }
+            }                
+
+            //The unhovered list now contains all the annotations that were hovered on the previous frame that need to be unhovered
+            //and removed from the previous hover list
+            for( std::set<AnnotationNode*>::iterator i = toUnHover.begin(); i != toUnHover.end(); ++i )
+            {
+                _hovered.erase( *i );
+                fireEvent( &AnnotationEventHandler::onHoverLeave, *i );
+            }
+        }
+    }
+
+    traverse(node,nv);
+}
+
+void
+AnnotationEventCallback::fireEvent(EventHandlerMethodPtr   method, 
+                                   AnnotationNode*         node )
+{
+    for( Handlers::iterator i = _handlers.begin(); i != _handlers.end(); ++i )
+    {
+        (i->get()->*method)( node, _args );
+    }
+}
diff --git a/src/osgEarthUtil/AutoClipPlaneHandler b/src/osgEarthUtil/AutoClipPlaneHandler
index ef12393..f4f8b35 100644
--- a/src/osgEarthUtil/AutoClipPlaneHandler
+++ b/src/osgEarthUtil/AutoClipPlaneHandler
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -20,73 +20,85 @@
 #define OSGEARTHUTIL_AUTOCLIPPLANEHANDLER_H
 
 #include <osgEarthUtil/Common>
-#include <osgEarth/MapNode>
+#include <osgEarth/ThreadingUtils>
+#include <osgEarth/Utils>
 #include <osgGA/GUIEventHandler>
 #include <osgGA/EventVisitor>
+#include <osg/Camera>
+
+namespace osgEarth {
+    class MapNode;
+}
 
 namespace osgEarth { namespace Util
 {
     using namespace osgEarth;
 
     /**
-     * An event handler that automatically calculates optimal near and
-     * far clip planes for a geocentric map node. Just add this to your
-     * main Viewer and go.
+     * A CULL callback that automatically adjusts the calculated near and far clip planes for
+     * use in a geocentric map.
+     *
+     * Usage: add this as a cull callback to a camera, like:
      *
-     * This only works properly for geocentric (round earth) maps.
+     * osgViewer::Viewer viewer;
+     * ...
+     * viewer.getCamera()->addCullCallback( new AutoClipPlaneCallback(map) )
      */
-    class OSGEARTHUTIL_EXPORT AutoClipPlaneHandler : public osgGA::GUIEventHandler
+    class OSGEARTHUTIL_EXPORT AutoClipPlaneCullCallback : public osg::NodeCallback
     {
     public:
         /**
-         * Constructs a new clip plane handler.
-         */
-        AutoClipPlaneHandler( const Map* map =0L );
-        
-        /**
-         * Whether to automatically set the far clip to the horizon. default=true.
+         * Constructs a new auto-clip plane manager corresponding to the parameters
+         * in the specified map.
+         * @param map Map to take ellipsoid information from; if NULL, use WGS84 values
          */
-        void setAutoFarPlaneClipping(bool enabled) { _autoFarPlaneClipping = enabled; }
-        bool getAutoFarPlaneClipping() const { return _autoFarPlaneClipping; }
+        AutoClipPlaneCullCallback( MapNode* mapNode =0L );
 
-        
-    public: // EventHandler
-
-        virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
+        virtual ~AutoClipPlaneCullCallback() { }
 
-        void frame( osgGA::GUIActionAdapter& aa );
+        /**
+         * Sets the minimum near/far ratio to use for this camera. The minimum ratio takes
+         * effect when the camera HAE hits zero.
+         */
+        void setMinNearFarRatio( double value ) { _minNearFarRatio = value; }
+        double getMinNearFarRatio() const { return _minNearFarRatio; }
 
-    private:
+        /**
+         * Sets the maximum near/far ratio to use for the camera. The maximum ratio
+         * takes effect when the camera HAE hits the Height Threshold.
+         */
+        void setMaxNearFarRatio( double value ) { _maxNearFarRatio = value; }
+        double getMaxNearFarRatio() const { return _maxNearFarRatio; }
 
-        osg::observer_ptr<osgEarth::MapNode> _mapNode;
-        bool _geocentric;
-        int _frame;
-        double _nfrAtRadius, _nfrAtDoubleRadius, _rp;
-        bool _autoFarPlaneClipping;
-    };
+        /** 
+         * Sets the camera Height (above ellipsoide) at which the near/far ratio
+         * hits its maximum value.
+         */
+        void setHeightThreshold( double value ) { _haeThreshold = value; }
+        double getHeightThreshold() const { return _haeThreshold; }
 
+        /**
+         * Whether to clamp the the far clipping plane to the approximate
+         * visible horizon.
+         */
+        void setClampFarClipPlane( bool value ) { _autoFarPlaneClamping = value; }
+        bool getClampFarClipPlane() const { return _autoFarPlaneClamping; }
 
-    class OSGEARTHUTIL_EXPORT AutoClipPlaneCallback : public osg::NodeCallback
-    {
     public:
-        AutoClipPlaneCallback( const Map* map =0L )
-        {
-            _handler = new AutoClipPlaneHandler( map );
-        }
+        virtual void operator()( osg::Node* node, osg::NodeVisitor* nv );
+        
+    protected:
+        bool   _active;
+        double _minNearFarRatio, _maxNearFarRatio;
+        double _haeThreshold;
+        double _rp2, _rp;
+        bool   _autoFarPlaneClamping;
+        osg::observer_ptr<MapNode> _mapNode;
+        Threading::PerObjectMap< osg::Camera*, osg::ref_ptr<osg::CullSettings::ClampProjectionMatrixCallback> > _clampers;
+    };
 
-        virtual void operator()( osg::Node* node, osg::NodeVisitor* nv )
-        {
-            osgGA::EventVisitor* ev = dynamic_cast<osgGA::EventVisitor*>( nv );
-            if ( ev ) {
-                _handler->frame( *ev->getActionAdapter() );
-            }
-            traverse( node, nv );
-        }
 
-        osg::ref_ptr<AutoClipPlaneHandler> _handler;
-    };
 
 } } // namespace osgEarth::Util
 
 #endif // OSGEARTHUTIL_AUTOCLIPPLANEHANDLER_H
-
diff --git a/src/osgEarthUtil/AutoClipPlaneHandler.cpp b/src/osgEarthUtil/AutoClipPlaneHandler.cpp
index 32e1c98..07df358 100644
--- a/src/osgEarthUtil/AutoClipPlaneHandler.cpp
+++ b/src/osgEarthUtil/AutoClipPlaneHandler.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,91 +17,263 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthUtil/AutoClipPlaneHandler>
-#include <osgEarth/FindNode>
+#include <osgEarth/MapNode>
+#include <osgEarth/Terrain>
+#include <osgEarth/Notify>
+#include <osgEarth/Registry>
+#include <osgEarth/Utils>
+
+#define LC "[AutoClip] "
 
 using namespace osgEarth::Util;
 using namespace osgEarth;
 
-AutoClipPlaneHandler::AutoClipPlaneHandler( const Map* map ) :
-_geocentric(false),
-_frame(0),
-_nfrAtRadius( 0.00001 ),
-_nfrAtDoubleRadius( 0.0049 ),
-_rp( -1 ),
-_autoFarPlaneClipping(true)
+namespace
 {
-    //NOP
-    if ( map )
+    struct CustomProjClamper : public osg::CullSettings::ClampProjectionMatrixCallback
     {
-        _geocentric = map->isGeocentric();
-        if ( _geocentric )
-            _rp = map->getProfile()->getSRS()->getEllipsoid()->getRadiusPolar();
-    }
-}
+        double _minNear, _maxFar, _nearFarRatio;
 
-bool 
-AutoClipPlaneHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-{
-    if ( ea.getEventType() == osgGA::GUIEventAdapter::FRAME && _frame++ > 1 )
-    {
-        frame( aa );
-    }
-    return false;
-}
+        CustomProjClamper() : _minNear( -DBL_MAX ), _maxFar( DBL_MAX ), _nearFarRatio( 0.00015 ) { }
 
-void
-AutoClipPlaneHandler::frame( osgGA::GUIActionAdapter& aa )
-{
-    osg::Camera* cam = aa.asView()->getCamera();
-
-    if ( _rp < 0 )
-    {
-        osg::ref_ptr<MapNode> tempNode = osgEarth::findTopMostNodeOfType<MapNode>( cam );
-        if ( tempNode.valid() && tempNode->getMap()->getProfile() )
+        // NOTE: this code is just copied from CullVisitor. I could not find a way to simply 
+        // call into it from a custom callback..
+        template<class matrix_type, class value_type>
+        bool _clampProjectionMatrix(matrix_type& projection, double& znear, double& zfar, value_type nearFarRatio) const
         {
-            _geocentric = tempNode->getMap()->isGeocentric();
-            if ( _geocentric )
-                _rp = tempNode->getMap()->getProfile()->getSRS()->getEllipsoid()->getRadiusPolar();
+            double epsilon = 1e-6;
+            if (zfar<znear-epsilon)
+            {
+                OSG_INFO<<"_clampProjectionMatrix not applied, invalid depth range, znear = "<<znear<<"  zfar = "<<zfar<<std::endl;
+                return false;
+            }
+            
+            if (zfar<znear+epsilon)
+            {
+                // znear and zfar are too close together and could cause divide by zero problems
+                // late on in the clamping code, so move the znear and zfar apart.
+                double average = (znear+zfar)*0.5;
+                znear = average-epsilon;
+                zfar = average+epsilon;
+                // OSG_INFO << "_clampProjectionMatrix widening znear and zfar to "<<znear<<" "<<zfar<<std::endl;
+            }
+
+            if (fabs(projection(0,3))<epsilon  && fabs(projection(1,3))<epsilon  && fabs(projection(2,3))<epsilon )
+            {
+                // OSG_INFO << "Orthographic matrix before clamping"<<projection<<std::endl;
+
+                value_type delta_span = (zfar-znear)*0.02;
+                if (delta_span<1.0) delta_span = 1.0;
+                value_type desired_znear = znear - delta_span;
+                value_type desired_zfar = zfar + delta_span;
+
+                // assign the clamped values back to the computed values.
+                znear = desired_znear;
+                zfar = desired_zfar;
+
+                projection(2,2)=-2.0f/(desired_zfar-desired_znear);
+                projection(3,2)=-(desired_zfar+desired_znear)/(desired_zfar-desired_znear);
+
+                //OE_INFO << "Orthographic matrix after clamping, near=" << desired_znear << ", far=" << desired_zfar << std::endl;
+            }
             else
-                OE_INFO << "[AutoClipPlaneHandler] disabled for non-geocentric map" << std::endl;
+            {
+
+                // OSG_INFO << "Persepective matrix before clamping"<<projection<<std::endl;
+
+                //std::cout << "_computed_znear"<<_computed_znear<<std::endl;
+                //std::cout << "_computed_zfar"<<_computed_zfar<<std::endl;
+
+                value_type zfarPushRatio = 1.02;
+                value_type znearPullRatio = 0.98;
+
+                //znearPullRatio = 0.99; 
+
+                value_type desired_znear = znear * znearPullRatio;
+                value_type desired_zfar = zfar * zfarPushRatio;
+
+                // near plane clamping.
+                double min_near_plane = zfar*nearFarRatio;
+
+                //// GW: changed this to enforce the NF ratio.
+                if (desired_znear<min_near_plane) desired_znear=min_near_plane;
+                //if (desired_znear > min_near_plane) desired_znear=min_near_plane;
+
+                if ( desired_znear < 1.0 )
+                    desired_znear = 1.0;
+
+#if 0
+                OE_INFO << std::fixed
+                    << "nfr=" << nearFarRatio << ", znear=" << znear << ", zfar=" << zfar
+                    << ", dznear=" << desired_znear << ", dzfar=" << desired_zfar
+                    << std::endl;
+#endif
+
+                // assign the clamped values back to the computed values.
+                znear = desired_znear;
+                zfar = desired_zfar;
+
 
-            //_mapNode = tempNode.get();
+                value_type trans_near_plane = (-desired_znear*projection(2,2)+projection(3,2))/(-desired_znear*projection(2,3)+projection(3,3));
+                value_type trans_far_plane = (-desired_zfar*projection(2,2)+projection(3,2))/(-desired_zfar*projection(2,3)+projection(3,3));
+
+                value_type ratio = fabs(2.0/(trans_near_plane-trans_far_plane));
+                value_type center = -(trans_near_plane+trans_far_plane)/2.0;
+
+                projection.postMult(osg::Matrix(1.0f,0.0f,0.0f,0.0f,
+                                                0.0f,1.0f,0.0f,0.0f,
+                                                0.0f,0.0f,ratio,0.0f,
+                                                0.0f,0.0f,center*ratio,1.0f));
+
+                // OSG_INFO << "Persepective matrix after clamping"<<projection<<std::endl;
+            }
+            return true;
         }
-    }
 
-    if ( _rp > 0 && _geocentric ) // _mapNode.valid() && _geocentric )
-    {
-        cam->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
 
-        osg::Vec3d eye, center, up;
-        cam->getViewMatrixAsLookAt( eye, center, up );
+        bool clampProjectionMatrixImplementation(osg::Matrixf& projection, double& znear, double& zfar) const
+        {
+            double n = std::max( znear, _minNear );
+            double f = std::min( zfar, _maxFar );
+            bool r = _clampProjectionMatrix( projection, n, f, _nearFarRatio );
+            if ( r ) {
+                znear = n;
+                zfar = f;
+            }
+            return r;
+        }
 
-        double d = eye.length();
+        bool clampProjectionMatrixImplementation(osg::Matrixd& projection, double& znear, double& zfar) const
+        {
+            double n = std::max( znear, _minNear );
+            double f = std::min( zfar, _maxFar );
+            bool r = _clampProjectionMatrix( projection, n, f, _nearFarRatio );
+            if ( r ) {
+                znear = n;
+                zfar = f;
+            }
+            return r;
+        }
+    };
+}
 
-        if ( d < _rp )
-            d = _rp;
+//--------------------------------------------------------------------------
 
-        if ( d > _rp )
+AutoClipPlaneCullCallback::AutoClipPlaneCullCallback( MapNode* mapNode ) :
+_mapNode             ( mapNode ),
+_active              ( false ),
+//_minNearFarRatio     ( 0.00001 ),
+//_maxNearFarRatio     ( 0.0005 ),
+_minNearFarRatio     ( 0.00001  ),
+_maxNearFarRatio     ( 0.00005 ),
+_haeThreshold        ( 250.0 ),
+_rp                  ( -1 ),
+_rp2                 ( -1 ),
+_autoFarPlaneClamping( true )
+{
+    if ( mapNode )
+    {
+        osgEarth::Map* map = mapNode->getMap();
+        if ( mapNode->getMap()->isGeocentric() )
+        {
+            // Select the minimal radius..
+            const osg::EllipsoidModel* em = map->getProfile()->getSRS()->getEllipsoid();
+            _rp = std::min( em->getRadiusEquator(), em->getRadiusPolar() );
+            _rp2 = _rp*_rp;
+            _active = true;
+        }
+        else
         {
-            double fovy, ar, znear, zfar, finalZfar;
-            cam->getProjectionMatrixAsPerspective( fovy, ar, znear, finalZfar );
+            // deactivate for a projected map
+            _active = false;
+        }
+    }
+    else
+    {
+        const osg::EllipsoidModel* em = Registry::instance()->getGlobalGeodeticProfile()->getSRS()->getEllipsoid();
+        _rp = std::min( em->getRadiusEquator(), em->getRadiusPolar() );
+        _rp2 = _rp*_rp;
+        _active = true;
+    }
+}
 
-            // far clip at the horizon:
-            zfar = sqrt( d*d - _rp*_rp );
 
-            if (_autoFarPlaneClipping)
+void
+AutoClipPlaneCullCallback::operator()( osg::Node* node, osg::NodeVisitor* nv )
+{
+    if ( _active )
+    {
+        osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>( nv );
+        if ( cv )
+        {
+            osgEarth::Map* map = _mapNode.valid() ? _mapNode->getMap() : 0;
+            osg::Camera* cam = cv->getCurrentCamera();
+            osg::ref_ptr<osg::CullSettings::ClampProjectionMatrixCallback>& clamper = _clampers.get(cam);
+            if ( !clamper.valid() )
             {
-                finalZfar = zfar;
+                clamper = new CustomProjClamper();
+                cam->setClampProjectionMatrixCallback( clamper.get() );
+                OE_INFO << LC << "Installed custom projeciton matrix clamper" << std::endl;
             }
+            else
+            {
+                CustomProjClamper* c = static_cast<CustomProjClamper*>(clamper.get());
+
+                osg::Vec3d eye, center, up;
+                cam->getViewMatrixAsLookAt( eye, center, up );
+
+                // clamp the far clipping plane to the approximate horizon distance
+                if ( _autoFarPlaneClamping )
+                {
+                    double d = eye.length();
+                    c->_maxFar = sqrt( d*d - _rp2 );
+                }
+                else
+                {
+                    c->_maxFar = DBL_MAX;
+                }
 
-            double nfr = _nfrAtRadius + _nfrAtDoubleRadius * ((d-_rp)/d);
-            znear = osg::clampAbove( zfar * nfr, 1.0 );
+                // get the height-above-ellipsoid. If we need to be more accurate, we can use 
+                // ElevationQuery in the future..
+                //osg::Vec3d loc;
+                GeoPoint loc;
+                if ( map )
+                {
+                    loc.fromWorld( map->getSRS(), eye );
+                    //map->worldPointToMapPoint( eye, loc );
+                }
+                else
+                {
+                    static osg::EllipsoidModel em;
+                    osg::Vec3d t;
+                    em.convertXYZToLatLongHeight( eye.x(), eye.y(), eye.z(), loc.y(), loc.x(), loc.z() );
+                }
+                
+                //double hae = loc.z();
+                double hae = loc.z();
+                if (_mapNode.valid())
+                {
+                    double height = 0.0;
+                    _mapNode->getTerrain()->getHeight(loc.getSRS(), loc.x(), loc.y(), &height);
+                    //OE_NOTICE << "got height " << height << std::endl;
+                    hae -= height;
+                    //OE_NOTICE << "HAE=" << hae <<  std::endl;
+                }
 
-            cam->setProjectionMatrixAsPerspective( fovy, ar, znear, finalZfar );
+                // ramp a new near/far ratio based on the HAE.
+                c->_nearFarRatio = Utils::remap( hae, 0.0, _haeThreshold, _minNearFarRatio, _maxNearFarRatio );
+            }
 
-            //OE_NOTICE << fixed
-            //    << "near=" << znear << ", far=" << zfar << std::endl;
+#if 0
+            {
+                double n, f, a, v;
+                cv->getProjectionMatrix()->getPerspective(v, a, n, f);
+                OE_INFO << std::setprecision(16) << "near = " << n << ", far = " << f << ", ratio = " << n/f << std::endl;
+            }
+#endif
         }
     }
+    traverse( node, nv );
 }
 
+
diff --git a/src/osgEarthUtil/BrightnessContrastColorFilter b/src/osgEarthUtil/BrightnessContrastColorFilter
new file mode 100644
index 0000000..4eb947e
--- /dev/null
+++ b/src/osgEarthUtil/BrightnessContrastColorFilter
@@ -0,0 +1,63 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#ifndef OSGEARTHUTIL_BRIGHTNESS_CONTRAST_COLOR_FILTER
+#define OSGEARTHUTIL_BRIGHTNESS_CONTRAST_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    /**
+    * Color filter that adjust the brightness/contrast of a texel.
+    */
+    class OSGEARTHUTIL_EXPORT BrightnessContrastColorFilter : public osgEarth::ColorFilter
+    {
+    public:
+        BrightnessContrastColorFilter();
+        BrightnessContrastColorFilter(const Config& conf);
+        virtual ~BrightnessContrastColorFilter() { }
+
+        /**
+        * The brightness and contrast as percentages of the incoming pixel value.
+        * (For example, brightness => 1.2 to increase brightness by 20%.)
+        *
+        * Range is [0..inf], results are clamped to [0..1].
+        */
+        void setBrightnessContrast(const osg::Vec2f& bc);
+        osg::Vec2f getBrightnessContrast(void) const;
+
+    public: // ColorFilter
+        virtual std::string getEntryPointFunctionName(void) const;
+        virtual void install(osg::StateSet* stateSet) const;
+        virtual Config getConfig() const;
+
+    protected:
+        unsigned                   m_instanceId;
+        osg::ref_ptr<osg::Uniform> m_bc;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_BRIGHTNESS_CONTRAST_COLOR_FILTER
diff --git a/src/osgEarthUtil/BrightnessContrastColorFilter.cpp b/src/osgEarthUtil/BrightnessContrastColorFilter.cpp
new file mode 100644
index 0000000..5ff497b
--- /dev/null
+++ b/src/osgEarthUtil/BrightnessContrastColorFilter.cpp
@@ -0,0 +1,128 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#include <osgEarthUtil/BrightnessContrastColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_localShaderSource =
+        "#version 110\n"
+        "uniform vec2 __UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{\n"
+        "    color.rgb = ((color.rgb - 0.5) * __UNIFORM_NAME__.y + 0.5) * __UNIFORM_NAME__.x; \n"
+        "    color.rgb = clamp(color.rgb, 0.0, 1.0); \n"
+        "}\n";
+}
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_bcColorFilter_"
+#define UNIFORM_PREFIX  "osgearthutil_u_bc_"
+
+//---------------------------------------------------------------------------
+
+BrightnessContrastColorFilter::BrightnessContrastColorFilter(void)
+{
+    init();
+}
+
+void BrightnessContrastColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    m_instanceId = (++s_uniformNameGen) - 1;
+    m_bc = new osg::Uniform(osg::Uniform::FLOAT_VEC2, (osgEarth::Stringify() << UNIFORM_PREFIX << m_instanceId));
+    m_bc->set(osg::Vec2f(1.0f, 1.0f));
+}
+
+void BrightnessContrastColorFilter::setBrightnessContrast(const osg::Vec2f& value)
+{
+    m_bc->set(value);
+}
+
+osg::Vec2f BrightnessContrastColorFilter::getBrightnessContrast(void) const
+{
+    osg::Vec2f value;
+    m_bc->get(value);
+    return (value);
+}
+
+std::string BrightnessContrastColorFilter::getEntryPointFunctionName(void) const
+{
+    return (osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId);
+}
+
+void BrightnessContrastColorFilter::install(osg::StateSet* stateSet) const
+{
+    // safe: will not add twice.
+    stateSet->addUniform(m_bc.get());
+
+    osgEarth::VirtualProgram* vp = dynamic_cast<osgEarth::VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if (vp)
+    {
+        // build the local shader (unique per instance). We will
+        // use a template with search and replace for this one.
+        std::string entryPoint = osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId;
+        std::string code = s_localShaderSource;
+        osgEarth::replaceIn(code, "__UNIFORM_NAME__", m_bc->getName());
+        osgEarth::replaceIn(code, "__ENTRY_POINT__", entryPoint);
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        //main->setName(entryPoint);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( brightness_contrast, osgEarth::Util::BrightnessContrastColorFilter );
+
+
+BrightnessContrastColorFilter::BrightnessContrastColorFilter(const Config& conf)
+{
+    init();
+
+    osg::Vec2f val;
+    val[0] = conf.value("b", 1.0);
+    val[1] = conf.value("c", 1.0);
+    setBrightnessContrast( val );
+}
+
+Config
+BrightnessContrastColorFilter::getConfig() const
+{
+    osg::Vec2f val = getBrightnessContrast();
+    Config conf("brightness_contrast");
+    conf.add( "b", val[0] );
+    conf.add( "c", val[1] );
+    return conf;
+}
diff --git a/src/osgEarthUtil/CMYKColorFilter b/src/osgEarthUtil/CMYKColorFilter
new file mode 100644
index 0000000..12e70b5
--- /dev/null
+++ b/src/osgEarthUtil/CMYKColorFilter
@@ -0,0 +1,66 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#ifndef OSGEARTHUTIL_CMYK_COLOR_FILTER
+#define OSGEARTHUTIL_CMYK_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    /**
+    * Color filter that adjust the cyan/magenta/yellow/black of a texel.
+    */
+    class OSGEARTHUTIL_EXPORT CMYKColorFilter : public osgEarth::ColorFilter
+    {
+    public:
+        CMYKColorFilter();
+        CMYKColorFilter(const Config& conf);
+        virtual ~CMYKColorFilter() { }
+
+        /**
+        * The cyan/magenta/yellow offset, each component is [-1..1] (no change is at 0)
+        */
+        void setCMYOffset(const osg::Vec3f& cmy);
+        osg::Vec3f getCMYOffset(void) const;
+
+        /**
+        * The cyan/magenta/yellow/black offset, each component is [-1..1] (no change is at 0)
+        */
+        void setCMYKOffset(const osg::Vec4f& cmyk);
+        osg::Vec4f getCMYKOffset(void) const;
+
+    public: // ColorFilter
+        virtual std::string getEntryPointFunctionName(void) const;
+        virtual void install(osg::StateSet* stateSet) const;
+        virtual Config getConfig() const;
+
+    protected:
+        unsigned m_instanceId;
+        osg::ref_ptr<osg::Uniform> m_cmyk;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_CMYK_COLOR_FILTER
diff --git a/src/osgEarthUtil/CMYKColorFilter.cpp b/src/osgEarthUtil/CMYKColorFilter.cpp
new file mode 100644
index 0000000..28c3d98
--- /dev/null
+++ b/src/osgEarthUtil/CMYKColorFilter.cpp
@@ -0,0 +1,189 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#include <osgEarthUtil/CMYKColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_localShaderSource =
+        "#version 110\n"
+        "uniform vec4 __UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{\n"
+        // apply cmy (negative of rgb):
+        "   color.rgb -= __UNIFORM_NAME__.xyz; \n"
+        // apply black (applies to all colors):
+        "   color.rgb -= __UNIFORM_NAME__.w; \n"
+        "   color.rgb = clamp(color.rgb, 0.0, 1.0); \n"
+        "}\n";
+}
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_cmykColorFilter_"
+#define UNIFORM_PREFIX  "osgearthutil_u_cmyk_"
+
+//---------------------------------------------------------------------------
+
+CMYKColorFilter::CMYKColorFilter(void)
+{
+    init();
+}
+
+void
+CMYKColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    m_instanceId = (++s_uniformNameGen) - 1;
+    m_cmyk = new osg::Uniform(osg::Uniform::FLOAT_VEC4, (osgEarth::Stringify() << UNIFORM_PREFIX << m_instanceId));
+    m_cmyk->set(osg::Vec4f(0.0f, 0.0f, 0.0f, 0.0f));
+}
+
+
+// CMY (without the K): http://forums.adobe.com/thread/428899
+void CMYKColorFilter::setCMYOffset(const osg::Vec3f& value)
+{
+    osg::Vec4f cmyk;
+    // find the minimum of all values
+    cmyk[3] = 1.0;
+    if (value[0] < cmyk[3])
+    {
+        cmyk[3] = value[0];
+    }
+    if (value[1] < cmyk[3])
+    {
+        cmyk[3] = value[1];
+    }
+    if (value[2] < cmyk[3])
+    {
+        cmyk[3] = value[2];
+    }
+
+    if (cmyk[3] == 1.0)
+    {	// black
+        cmyk[0] = cmyk[1] = cmyk[2] = 0.0;
+    }
+    else
+    {
+        cmyk[0] = (value[0] - cmyk[3]) / (1.0 - cmyk[3]);
+        cmyk[1] = (value[1] - cmyk[3]) / (1.0 - cmyk[3]);
+        cmyk[2] = (value[2] - cmyk[3]) / (1.0 - cmyk[3]);
+    }
+
+    setCMYKOffset(cmyk);
+}
+
+osg::Vec3f CMYKColorFilter::getCMYOffset(void) const
+{
+    osg::Vec4f cmyk = getCMYKOffset();
+    osg::Vec3f cmy;
+
+    if (cmyk[3] == 1.0)
+    {
+        cmy[0] = cmy[1] = cmy[2] = 1.0;
+    }
+    else
+    {
+        cmy[0] = (cmyk[0] * (1.0 - cmyk[3])) + cmyk[3];
+        cmy[1] = (cmyk[1] * (1.0 - cmyk[3])) + cmyk[3];
+        cmy[2] = (cmyk[2] * (1.0 - cmyk[3])) + cmyk[3];
+    }
+    return (cmy);
+}
+
+void CMYKColorFilter::setCMYKOffset(const osg::Vec4f& value)
+{
+    m_cmyk->set(value);
+}
+
+osg::Vec4f CMYKColorFilter::getCMYKOffset(void) const
+{
+    osg::Vec4f value;
+    m_cmyk->get(value);
+    return (value);
+}
+
+std::string CMYKColorFilter::getEntryPointFunctionName(void) const
+{
+    return (osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId);
+}
+
+void CMYKColorFilter::install(osg::StateSet* stateSet) const
+{
+    // safe: will not add twice.
+    stateSet->addUniform(m_cmyk.get());
+
+    osgEarth::VirtualProgram* vp = dynamic_cast<osgEarth::VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if (vp)
+    {
+        // build the local shader (unique per instance). We will
+        // use a template with search and replace for this one.
+        std::string entryPoint = osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId;
+        std::string code = s_localShaderSource;
+        osgEarth::replaceIn(code, "__UNIFORM_NAME__", m_cmyk->getName());
+        osgEarth::replaceIn(code, "__ENTRY_POINT__", entryPoint);
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        //main->setName(entryPoint);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( cmyk, osgEarth::Util::CMYKColorFilter );
+
+
+CMYKColorFilter::CMYKColorFilter(const Config& conf)
+{
+    init();
+
+    osg::Vec4f val;
+    val[0] = conf.value("c", 0.0);
+    val[1] = conf.value("m", 0.0);
+    val[2] = conf.value("y", 0.0);
+    val[3] = conf.value("k", 0.0);
+    setCMYKOffset( val );
+}
+
+Config
+CMYKColorFilter::getConfig() const
+{
+    osg::Vec4f val = getCMYKOffset();
+    Config conf("cmyk");
+    conf.add( "c", val[0] );
+    conf.add( "m", val[1] );
+    conf.add( "y", val[2] );
+    conf.add( "k", val[3] );
+    return conf;
+}
diff --git a/src/osgEarthUtil/CMakeLists.txt b/src/osgEarthUtil/CMakeLists.txt
index 579144a..2b7ce10 100644
--- a/src/osgEarthUtil/CMakeLists.txt
+++ b/src/osgEarthUtil/CMakeLists.txt
@@ -8,70 +8,128 @@ SET(LIB_NAME osgEarthUtil)
 
 SET(HEADER_PATH ${OSGEARTH_SOURCE_DIR}/include/${LIB_NAME})
 
-SET(LIB_PUBLIC_HEADERS  
-    Annotation  
+SET(HEADERS_ROOT
+    AnnotationEvents
     AutoClipPlaneHandler
     Common
     Controls
     ClampCallback
     EarthManipulator
     ElevationManager
+    ExampleResources
     Export
-    Formatters
-    Graticule
-	ImageOverlay	
-	MeasureTool
+    FeatureManipTool
+    FeatureQueryTool
+    Formatter
+    GeodeticGraticule
+    LatLongFormatter
+    LineOfSight
+    LinearLineOfSight
+    MeasureTool
+    MGRSFormatter
+    MGRSGraticule
+    MouseCoordsTool
     ObjectPlacer
     ObjectLocator
-    OceanSurfaceNode
+    PolyhedralLineOfSight
+    RadialLineOfSight
     SkyNode
     SpatialData
     StarData
-    Viewpoint
-	WFS
+    TerrainProfile
+    TFS
+    TFSPackager
+    TMS
+    TMSPackager
+    UTMGraticule
+    WFS
     WMS
 )
+IF(NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "3.1.0")
+    SET(HEADERS_ROOT ${HEADERS_ROOT}
+        ShadowUtils)
+ENDIF()
+SOURCE_GROUP( Headers FILES ${HEADERS_ROOT} )
+
 
-SET(LIB_COMMON_FILES
-    Annotation.cpp
+SET(SOURCES_ROOT
+    AnnotationEvents.cpp
     AutoClipPlaneHandler.cpp
     ClampCallback.cpp
     Controls.cpp
-    EarthManipulator.cpp	
+    EarthManipulator.cpp
     ElevationManager.cpp
-    Formatters.cpp
-    Graticule.cpp
-	ImageOverlay.cpp
-	MeasureTool.cpp
+    ExampleResources.cpp
+    FeatureManipTool.cpp
+    FeatureQueryTool.cpp
+    GeodeticGraticule.cpp
+    LatLongFormatter.cpp
+    LinearLineOfSight.cpp
+    MeasureTool.cpp
+    MGRSFormatter.cpp
+    MGRSGraticule.cpp
+    MouseCoordsTool.cpp
     ObjectPlacer.cpp
     ObjectLocator.cpp
-    OceanSurfaceNode.cpp
+    PolyhedralLineOfSight.cpp
+    RadialLineOfSight.cpp
     SpatialData.cpp
     SkyNode.cpp
-    Viewpoint.cpp
-	WFS.cpp
+    TerrainProfile.cpp
+    TFS.cpp
+    TFSPackager.cpp
+    TMS.cpp
+    TMSPackager.cpp
+    UTMGraticule.cpp
+    WFS.cpp
     WMS.cpp
 )
-
-IF(NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "2.9.6")
-SET(LIB_PUBLIC_HEADERS ${LIB_PUBLIC_HEADERS}
-    Draggers
-	FeatureEditing
-	ImageOverlayEditor
-	)
-	
-SET(LIB_COMMON_FILES ${LIB_COMMON_FILES} 
-    Draggers.cpp
-	FeatureEditing.cpp
-    ImageOverlayEditor.cpp
-    )
+IF(NOT ${OPENSCENEGRAPH_VERSION} VERSION_LESS "3.1.0")
+    SET(SOURCES_ROOT ${SOURCES_ROOT} 
+        ShadowUtils.cpp)
 ENDIF()
 
+SOURCE_GROUP( Sources FILES ${SOURCES_ROOT} )
+
 
-ADD_LIBRARY(${LIB_NAME} SHARED
-    ${LIB_PUBLIC_HEADERS}  
-	${LIB_COMMON_FILES}
+SET(HEADERS_COLORFILTER
+    BrightnessContrastColorFilter
+    CMYKColorFilter
+    GammaColorFilter
+    HSLColorFilter
+    RGBColorFilter
+    ChromaKeyColorFilter
 )
+SOURCE_GROUP( Headers\\ColorFilters FILES ${HEADERS_COLORFILTER} )
+
+
+SET(SOURCES_COLORFILTER
+    BrightnessContrastColorFilter.cpp
+    CMYKColorFilter.cpp
+    GammaColorFilter.cpp
+    HSLColorFilter.cpp
+    RGBColorFilter.cpp
+    ChromaKeyColorFilter.cpp
+)
+SOURCE_GROUP( Sources\\ColorFilters FILES ${SOURCES_COLORFILTER} )
+
+
+SET(LIB_PUBLIC_HEADERS
+    ${HEADERS_ROOT}
+    ${HEADERS_COLORFILTER}
+)
+
+SET(LIB_COMMON_FILES 
+    ${SOURCES_ROOT} ${SOURCES_COLORFILTER}
+)
+
+ADD_LIBRARY(${LIB_NAME} ${OSGEARTH_USER_DEFINED_DYNAMIC_OR_STATIC}
+    ${LIB_PUBLIC_HEADERS}
+    ${LIB_COMMON_FILES}
+)
+
+# Setting this tells ModuleInstall not to set source groups (since we're doing it here)
+SET(USE_CUSTOM_SOURCE_GROUPS 1)
 
 
 
@@ -84,12 +142,13 @@ ELSE(WIN32)
 ENDIF(WIN32)
 
 LINK_INTERNAL(${LIB_NAME}
-osgEarth
-osgEarthFeatures
-osgEarthSymbology
+    osgEarth
+    osgEarthFeatures
+    osgEarthSymbology
+    osgEarthAnnotation
 )
 
-LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGMANIPULATOR_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OPENTHREADS_LIBRARY)
+LINK_WITH_VARIABLES(${LIB_NAME} OSG_LIBRARY OSGUTIL_LIBRARY OSGSIM_LIBRARY OSGTERRAIN_LIBRARY OSGDB_LIBRARY OSGFX_LIBRARY OSGMANIPULATOR_LIBRARY OSGVIEWER_LIBRARY OSGTEXT_LIBRARY OSGGA_LIBRARY OSGSHADOW_LIBRARY OPENTHREADS_LIBRARY)
 LINK_CORELIB_DEFAULT(${LIB_NAME} ${CMAKE_THREAD_LIBS_INIT} ${MATH_LIBRARY})
 
 INCLUDE(ModuleInstall OPTIONAL)
diff --git a/src/osgEarthUtil/ChromaKeyColorFilter b/src/osgEarthUtil/ChromaKeyColorFilter
new file mode 100644
index 0000000..c18c8c6
--- /dev/null
+++ b/src/osgEarthUtil/ChromaKeyColorFilter
@@ -0,0 +1,68 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_CHROMAKEY_COLOR_FILTER
+#define OSGEARTHUTIL_CHROMAKEY_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+    * Color filter that makes a color transparent.
+    */
+    class OSGEARTHUTIL_EXPORT ChromaKeyColorFilter : public osgEarth::ColorFilter
+    {
+    public:
+        ChromaKeyColorFilter(void);
+        ChromaKeyColorFilter(const Config& conf);
+        virtual ~ChromaKeyColorFilter(void) { }
+
+        /**
+         * The color to make transparent, each component is [0..1]
+         */
+        void setColor( const osg::Vec3f& color );
+        osg::Vec3f getColor() const;
+
+        /**
+         * The linear distance to search for "similar" colors to make transparent.
+         * Currently this is doing a simple 3D distance comparison to find similar colors.
+         */
+        void setDistance( float distance );
+        float getDistance() const;
+
+    public: // ColorFilter
+        virtual std::string getEntryPointFunctionName(void) const;
+        virtual void install(osg::StateSet* stateSet) const;
+        virtual Config getConfig() const;
+
+    protected:
+        unsigned int _instanceId;
+        osg::ref_ptr<osg::Uniform> _color;
+        osg::ref_ptr<osg::Uniform> _distance;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_CHROMAKEY_COLOR_FILTER
diff --git a/src/osgEarthUtil/ChromaKeyColorFilter.cpp b/src/osgEarthUtil/ChromaKeyColorFilter.cpp
new file mode 100644
index 0000000..3b32f8e
--- /dev/null
+++ b/src/osgEarthUtil/ChromaKeyColorFilter.cpp
@@ -0,0 +1,163 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/ChromaKeyColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_localShaderSource =
+
+        "#version 110\n"
+
+        "uniform vec3  __COLOR_UNIFORM_NAME__;\n"
+        "uniform float __DISTANCE_UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{ \n"
+        "    float dist = distance(color.rgb, __COLOR_UNIFORM_NAME__); \n"
+        "    if (dist <= __DISTANCE_UNIFORM_NAME__) color.a = 0.0;\n"
+        // feathering:
+        //"    if (dist <= __DISTANCE_UNIFORM_NAME__) color.a = (dist/__DISTANCE_UNIFORM_NAME__); \n" 
+        "} \n";
+}
+
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_chromakeyColorFilter_"
+#define COLOR_UNIFORM_PREFIX  "osgearthutil_u_chromakey_color_"
+#define DISTANCE_UNIFORM_PREFIX  "osgearthutil_u_chromakey_distance_"
+
+//---------------------------------------------------------------------------
+
+ChromaKeyColorFilter::ChromaKeyColorFilter(void)
+{
+    init();
+}
+
+void ChromaKeyColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    _instanceId = (++s_uniformNameGen) - 1;
+    _color = new osg::Uniform(osg::Uniform::FLOAT_VEC3, (osgEarth::Stringify() << COLOR_UNIFORM_PREFIX << _instanceId));    
+    //Default to black
+    _color->set( osg::Vec3(0.0f, 0.0f, 0.0f) );
+    _distance = new osg::Uniform(osg::Uniform::FLOAT, (osgEarth::Stringify() << DISTANCE_UNIFORM_PREFIX << _instanceId));    
+    _distance->set( 0.0f );
+}
+
+void ChromaKeyColorFilter::setColor(const osg::Vec3f& color)
+{
+    _color->set( color );
+}
+
+osg::Vec3f ChromaKeyColorFilter::getColor() const
+{
+    osg::Vec3f value;
+    _color->get( value );
+    return value;
+}
+
+void ChromaKeyColorFilter::setDistance(float distance)
+{
+    _distance->set( distance );
+}
+
+float ChromaKeyColorFilter::getDistance() const
+{
+    float value;
+    _distance->get( value );
+    return value;
+}
+
+
+
+std::string ChromaKeyColorFilter::getEntryPointFunctionName(void) const
+{
+    return (osgEarth::Stringify() << FUNCTION_PREFIX << _instanceId);
+}
+
+void ChromaKeyColorFilter::install(osg::StateSet* stateSet) const
+{
+    // safe: will not add twice.
+    stateSet->addUniform(_color.get());
+    stateSet->addUniform(_distance.get());
+
+    osgEarth::VirtualProgram* vp = dynamic_cast<osgEarth::VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if (vp)
+    {
+        // build the local shader (unique per instance). We will
+        // use a template with search and replace for this one.
+        std::string entryPoint = osgEarth::Stringify() << FUNCTION_PREFIX << _instanceId;
+        std::string code = s_localShaderSource;
+        osgEarth::replaceIn(code, "__COLOR_UNIFORM_NAME__", _color->getName());
+        osgEarth::replaceIn(code, "__DISTANCE_UNIFORM_NAME__", _distance->getName());
+        osgEarth::replaceIn(code, "__ENTRY_POINT__", entryPoint);
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( chroma_key, osgEarth::Util::ChromaKeyColorFilter );
+
+
+ChromaKeyColorFilter::ChromaKeyColorFilter(const Config& conf)
+{
+    init();
+
+    osg::Vec3f val;
+    val[0] = conf.value("r", 0.0);
+    val[1] = conf.value("g", 0.0);
+    val[2] = conf.value("b", 0.0);
+    setColor( val );
+
+    float distance = 0.0f;
+    distance = conf.value("distance", 0.0f);
+    setDistance( distance );
+}
+
+Config
+ChromaKeyColorFilter::getConfig() const
+{
+    osg::Vec3f val = getColor();
+    Config conf("rgb");
+    conf.add( "r", val[0] );
+    conf.add( "g", val[1] );
+    conf.add( "b", val[2] );
+
+    if ( getDistance() != 0.0f )
+        conf.add( "distance", getDistance() );
+
+    return conf;
+}
diff --git a/src/osgEarthUtil/ClampCallback b/src/osgEarthUtil/ClampCallback
index 44922a5..f966f16 100644
--- a/src/osgEarthUtil/ClampCallback
+++ b/src/osgEarthUtil/ClampCallback
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -22,9 +22,7 @@
 
 #include <osg/NodeCallback>
 #include <osg/CoordinateSystemNode>
-
-
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/MapNode>
 
 #include <osgEarthUtil/Common>
@@ -48,6 +46,9 @@ namespace osgEarth { namespace Util
 		*/
         ClampCallback(osg::Node* terrainNode = NULL);
 
+        /** dtor */
+        virtual ~ClampCallback() { }
+
         /**
          *Sets the terrain node to clamp against
          */
diff --git a/src/osgEarthUtil/ClampCallback.cpp b/src/osgEarthUtil/ClampCallback.cpp
index a70f56f..d184fa9 100644
--- a/src/osgEarthUtil/ClampCallback.cpp
+++ b/src/osgEarthUtil/ClampCallback.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -21,7 +21,7 @@
 #include <osgEarth/Notify>
 #include <osgUtil/IntersectionVisitor>
 #include <osgUtil/LineSegmentIntersector>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <OpenThreads/ScopedLock>
 #include <osg/MatrixTransform>
 
diff --git a/src/osgEarthUtil/Common b/src/osgEarthUtil/Common
index 616bf86..f44df0f 100644
--- a/src/osgEarthUtil/Common
+++ b/src/osgEarthUtil/Common
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthUtil/Controls b/src/osgEarthUtil/Controls
index 1204cd0..89f9366 100644
--- a/src/osgEarthUtil/Controls
+++ b/src/osgEarthUtil/Controls
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -50,6 +50,46 @@ namespace osgEarth { namespace Util { namespace Controls
 
     typedef std::map< class Control*, osg::Geode* > GeodeTable;
 
+    // internal state class
+    struct ControlContext
+    {
+        ControlContext() : _viewContextID(~0) { }
+        osg::View* _view;
+        osg::ref_ptr<const osg::Viewport> _vp;
+        unsigned int _viewContextID;
+        std::queue< osg::ref_ptr<class Control> > _active;
+        const osg::FrameStamp* _frameStamp;
+    };
+
+    // 2-vec that supports various "units" designations
+    class OSGEARTHUTIL_EXPORT UVec2f : public osg::Vec2f
+    {
+    public:
+        enum Unit {
+            UNITS_FRACTION,
+            UNITS_PIXELS,
+            UNITS_INSET_PIXELS
+        };
+
+        UVec2f(double x, double y, Unit xunits =UNITS_PIXELS, Unit yunits =UNITS_PIXELS)
+            : osg::Vec2f(x,y), _xunits(xunits), _yunits(yunits) { }
+
+        Unit& xUnits() { return _xunits; }
+        const Unit& yUnits() const { return _yunits; }
+
+        float x( const osg::Vec2f& size ) const;
+        float x( const ControlContext& cx ) const;
+
+        float y( const osg::Vec2f& size) const;
+        float y( const ControlContext& cx ) const;
+
+        UVec2f asPixels( const osg::Vec2f& size ) const;
+        UVec2f asPixels( const ControlContext& cx ) const;
+
+    private:
+        Unit _xunits, _yunits;
+    };
+
     // holds 4-sided gutter dimensions (for margins and padding) .. no-export, header-only.
     struct Gutter
     {
@@ -64,10 +104,14 @@ namespace osgEarth { namespace Util { namespace Controls
         bool operator !=( const Gutter& rhs ) const {
             return top() != rhs.top() || right() != rhs.right() || bottom() != rhs.bottom() || left() != rhs.left(); }
 
-        float top()  const { return _top; }
-        float left() const { return _left; }
-        float right() const { return _right; }
-        float bottom() const { return _bottom; }
+        float  top()  const { return _top; }
+        float& top() { return _top; }
+        float  left() const { return _left; }
+        float& left() { return _left; }
+        float  right() const { return _right; }
+        float& right() { return _right; }
+        float  bottom() const { return _bottom; }
+        float& bottom() { return _bottom; }
 
         float x() const { return _left + _right; }
         float y() const { return _top + _bottom; }
@@ -80,17 +124,6 @@ namespace osgEarth { namespace Util { namespace Controls
         float _top, _right, _bottom, _left;
     };
 
-    // internal state class
-    struct ControlContext
-    {
-        ControlContext() : _viewContextID(~0) { }
-        osg::View* _view;
-        osg::ref_ptr<const osg::Viewport> _vp;
-        unsigned int _viewContextID;
-        std::queue< osg::ref_ptr<class Control> > _active;
-        const osg::FrameStamp* _frameStamp;
-    };
-
     // base class for control events
     class ControlEventHandler : public osg::Referenced
     {
@@ -105,16 +138,20 @@ namespace osgEarth { namespace Util { namespace Controls
         virtual void onClick( class Control* control, const osg::Vec2f& pos, int mouseButtonMask ) { onClick(control, mouseButtonMask); }
 
         /** Value events */
-        virtual void onValueChanged( class Control* control, bool value ) { }
-        virtual void onValueChanged( class Control* control, double value ) { }
-        virtual void onValueChanged( class Control* control, float value ) { }
-        virtual void onValueChanged( class Control* control, int value ) { }
-        virtual void onValueChanged( class Control* control, const osg::Vec3f& value ) { }
-        virtual void onValueChanged( class Control* control, const osg::Vec2f& value ) { }
-        virtual void onValueChanged( class Control* control, const osg::Vec3d& value ) { }
-        virtual void onValueChanged( class Control* control, const osg::Vec2d& value ) { }
-        virtual void onValueChanged( class Control* control, const std::string& value ) { }
-        virtual void onValueChanged( class Control* control, void* value ) { }
+        virtual void onValueChanged( class Control* control, bool value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, double value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, float value ) { onValueChanged(control, static_cast<double>(value)); }
+        virtual void onValueChanged( class Control* control, int value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, const osg::Vec3f& value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, const osg::Vec2f& value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, const osg::Vec3d& value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, const osg::Vec2d& value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, const std::string& value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control, void* value ) { onValueChanged(control); }
+        virtual void onValueChanged( class Control* control ) { }
+        
+        /** dtor */
+        virtual ~ControlEventHandler() { }
     };
 
     typedef std::list< osg::ref_ptr<ControlEventHandler> > ControlEventHandlerList;
@@ -126,6 +163,11 @@ namespace osgEarth { namespace Util { namespace Controls
     class OSGEARTHUTIL_EXPORT Control : public osg::Referenced
     {
     public:
+        enum Side
+        {
+            SIDE_TOP, SIDE_BOTTOM, SIDE_LEFT, SIDE_RIGHT
+        };
+
         enum Alignment
         {
             ALIGN_NONE, ALIGN_LEFT, ALIGN_CENTER, ALIGN_RIGHT, ALIGN_TOP, ALIGN_BOTTOM
@@ -139,6 +181,11 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         Control();
 
+        Control( const Alignment& halign, const Alignment& valign, const Gutter& padding );
+
+        /** dtor */
+        virtual ~Control() { }
+
         void setX( float value );
         const osgEarth::optional<float>& x() const { return _x; }
         void clearX() { _x.unset(); dirty(); }
@@ -160,11 +207,13 @@ namespace osgEarth { namespace Util { namespace Controls
         void setSize( float w, float h );
 
         void setMargin( const Gutter& value );
+        void setMargin( Side side, float value );
         const Gutter& margin() const { return _margin; }
 
         // space between container and its content
         void setPadding( const Gutter& value );
         void setPadding( float globalValue );
+        void setPadding( Side side, float value );
         const Gutter& padding() const { return _padding; }
 
         void setVertAlign( const Alignment& value );
@@ -205,7 +254,7 @@ namespace osgEarth { namespace Util { namespace Controls
         void setAbsorbEvents( bool value ) { _absorbEvents = value; }
         bool getAbsorbEvents() const { return _absorbEvents; }
 
-        void addEventHandler( ControlEventHandler* handler );
+        void addEventHandler( ControlEventHandler* handler, bool fire =false );
 
     public:
         
@@ -233,6 +282,7 @@ namespace osgEarth { namespace Util { namespace Controls
         osg::Vec2f _renderSize; // rendering size (includes padding)
 
         // adjusts renderpos for alignment.
+        void init();
         void align();
 
         friend class ControlCanvas;
@@ -242,6 +292,8 @@ namespace osgEarth { namespace Util { namespace Controls
 
         ControlEventHandlerList _eventHandlers;
 
+        virtual void fireValueChanged( ControlEventHandler* handler =0L ) { }
+
     private:
         osgEarth::optional<float> _x, _y, _width, _height;
         bool _hfill, _vfill;
@@ -265,17 +317,34 @@ namespace osgEarth { namespace Util { namespace Controls
     {
     public:
         LabelControl(
-            const std::string& value ="",
-            float fontSize =18.0f,
+            const std::string& value    ="",
+            float fontSize              =18.0f,
             const osg::Vec4f& foreColor =osg::Vec4f(1,1,1,1) );
 
         LabelControl(
             const std::string& value,
-            const osg::Vec4f& foreColor );
+            const osg::Vec4f&  foreColor,
+            float              fontSize  =18.0f );
+
+        LabelControl(
+            Control*            valueControl,
+            const osg::Vec4f&   foreColor,
+            float               fontSize =18.0f );
+
+        LabelControl(
+            Control*            valueControl,
+            float               fontSize =18.0f,
+            const osg::Vec4f&   fontColor =osg::Vec4f(1,1,1,1) );
+
+        /** dtor */
+        virtual ~LabelControl() { }
 
         void setText( const std::string& value );
         const std::string& text() const { return _text; }
 
+		void setEncoding( osgText::String::Encoding value );
+        const osgText::String::Encoding& encoding() const { return _encoding; }
+
         void setFont( osgText::Font* font );
         osgText::Font* font() const { return _font.get(); }
 
@@ -287,7 +356,6 @@ namespace osgEarth { namespace Util { namespace Controls
 
     public: // Control
         virtual void calcSize( const ControlContext& context, osg::Vec2f& out_size );
-        //virtual void calcPos ( const ControlContext& context, const osg::Vec2f& cursor, const osg::Vec2f& parentSize );
         virtual void draw    ( const ControlContext& context, DrawableList& out_drawables );
 
     private:
@@ -297,6 +365,7 @@ namespace osgEarth { namespace Util { namespace Controls
         osg::ref_ptr<osgText::Text> _drawable;
         osg::Vec3 _bmin, _bmax;
         optional<osg::Vec4f> _haloColor;
+		osgText::String::Encoding _encoding;
     };
 
     /**
@@ -307,6 +376,9 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         ImageControl( osg::Image* image =0L );
 
+        /** dtor */
+        virtual ~ImageControl() { }
+
         void setImage( osg::Image* image );
         osg::Image* getImage() const { return _image.get(); }
 
@@ -336,7 +408,10 @@ namespace osgEarth { namespace Util { namespace Controls
     class OSGEARTHUTIL_EXPORT HSliderControl : public Control
     {
     public:
-        HSliderControl( float min = 0.0f, float max = 100.0f, float value = 50.0f );
+        HSliderControl( float min = 0.0f, float max = 100.0f, float value = 50.0f, ControlEventHandler* handler =0L );
+
+        /** dtor */
+        virtual ~HSliderControl() { }
 
         void setMin( float min, bool notify =true );
         float getMin() const { return _min; }
@@ -354,7 +429,7 @@ namespace osgEarth { namespace Util { namespace Controls
     protected:
         virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa, ControlContext& cx );
 
-        void fireValueChanged();
+        virtual void fireValueChanged( ControlEventHandler* one =0L );
 
     private:
         float _min, _max, _value;
@@ -369,6 +444,9 @@ namespace osgEarth { namespace Util { namespace Controls
         CheckBoxControl( bool checked =false );
         CheckBoxControl( bool checked, ControlEventHandler* callback );
 
+        /** dtor */
+        virtual ~CheckBoxControl() { }
+
         void setValue( bool value );
         bool getValue() const { return _value; }
 
@@ -378,7 +456,7 @@ namespace osgEarth { namespace Util { namespace Controls
     protected:
         virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa, ControlContext& cx );
 
-        void fireValueChanged();
+        virtual void fireValueChanged( ControlEventHandler* one =0L );
 
     private:
         bool _value;
@@ -395,6 +473,9 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         Frame();
 
+        /** dtor */
+        virtual ~Frame() { }
+
     public: // Control
         virtual void calcPos ( const ControlContext& context, const osg::Vec2f& cursor, const osg::Vec2f& parentSize );
         virtual void draw( const ControlContext& context, DrawableList& drawables );
@@ -408,6 +489,9 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         RoundedFrame();
 
+        /** dtor */
+        virtual ~RoundedFrame() { }
+
     public:
         virtual void draw( const ControlContext& cx, DrawableList& drawables );
     };
@@ -421,6 +505,10 @@ namespace osgEarth { namespace Util { namespace Controls
     {
     public:
         Container();
+        Container( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing );
+
+        /** dtor */
+        virtual ~Container() { }
 
         // the Frame connected to this container. can be NULL for no frame.
         void setFrame( Frame* frame );
@@ -438,8 +526,10 @@ namespace osgEarth { namespace Util { namespace Controls
         void setChildVertAlign( Alignment align );
         const optional<Alignment>& childVertAlign() const { return _childvalign; }
 
-        // default add function.
-        virtual void addControl( Control* control, int index =-1 ) =0;
+        // adds a control.
+        template<typename T>
+        T* addControl( T* control, int index =-1 ) { 
+            return dynamic_cast<T*>( addControlImpl(control, index) ); }
 
         // default multiple-add function.
         virtual void addControls( const ControlVector& controls );
@@ -457,6 +547,10 @@ namespace osgEarth { namespace Util { namespace Controls
         virtual void draw( const ControlContext& context, DrawableList& drawables );
 
     protected:
+
+        // default add function in subclass.
+        virtual Control* addControlImpl( Control* control, int index =-1 ) =0;
+
         virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa, ControlContext& cx );
 
         void applyChildAligns();
@@ -481,9 +575,12 @@ namespace osgEarth { namespace Util { namespace Controls
     {
     public:
         VBox();
+        VBox( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing );
+
+        /** dtor */
+        virtual ~VBox() { }
 
     public: // Container
-        virtual void addControl( Control* control, int index =-1 );
         virtual const ControlList& children() const { return _controls; }
         virtual void clearControls();
 
@@ -493,6 +590,9 @@ namespace osgEarth { namespace Util { namespace Controls
         virtual void calcPos ( const ControlContext& context, const osg::Vec2f& cursor, const osg::Vec2f& parentSize );
         virtual void draw( const ControlContext& context, DrawableList& drawables );
 
+    protected:
+        virtual Control* addControlImpl( Control* control, int index =-1 );
+
     private:
         ControlList _controls;
     };
@@ -504,9 +604,12 @@ namespace osgEarth { namespace Util { namespace Controls
     {
     public:
         HBox();
+        HBox( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing );
+
+        /** dtor */
+        virtual ~HBox() { }
 
     public: // Container
-        virtual void addControl( Control* control, int index =-1 );
         virtual const ControlList& children() const { return _controls; }
         virtual void clearControls();
 
@@ -516,6 +619,9 @@ namespace osgEarth { namespace Util { namespace Controls
         virtual void calcPos ( const ControlContext& context, const osg::Vec2f& cursor, const osg::Vec2f& parentSize );
         virtual void draw( const ControlContext& context, DrawableList& drawables );
 
+    protected:
+        virtual Control* addControlImpl( Control* control, int index =-1 );
+
     private:
         ControlList _controls;
     };
@@ -528,13 +634,19 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         Grid();
 
-        void setControl( int col, int row, Control* control );
+        Grid( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing );
+
+        /** dtor */
+        virtual ~Grid() { }
+
+        template<typename T>
+        T* setControl( int col, int row, T* control ) {
+            return dynamic_cast<T*>( setControlImpl(col, row, control)); }
 
         unsigned getNumRows() const { return _rows.size(); }
         unsigned getNumColumns() const { return _colWidths.size(); }
 
     public: // Container
-        virtual void addControl( Control* control, int index =-1 );
         virtual const ControlList& children() const { return _children; }
         virtual void clearControls();
 
@@ -547,6 +659,10 @@ namespace osgEarth { namespace Util { namespace Controls
         virtual void calcPos ( const ControlContext& context, const osg::Vec2f& cursor, const osg::Vec2f& parentSize );
         virtual void draw( const ControlContext& context, DrawableList& drawables );
 
+    protected:
+        virtual Control* addControlImpl( Control* control, int index =-1 );
+        virtual Control* setControlImpl( int col, int row, Control* control );
+
     private:
         typedef std::vector< osg::ref_ptr<Control> > Row;
         typedef std::vector< Row > RowVector;
@@ -574,6 +690,9 @@ namespace osgEarth { namespace Util { namespace Controls
         /** Constructs a new control node with an embedded control. */
         ControlNode( Control* control, float priority =0.0f );
 
+        /** dtor */
+        virtual ~ControlNode() { }
+
         /** The control encaspulated in this node */
         Control* getControl() const { return _control.get(); }
 
@@ -624,6 +743,9 @@ namespace osgEarth { namespace Util { namespace Controls
     public:
         ControlNodeBin();
 
+        /** dtor */
+        virtual ~ControlNodeBin() { }
+
         /** Registers a control node with this bin. */
         void addNode( ControlNode* node );
 
@@ -667,7 +789,9 @@ namespace osgEarth { namespace Util { namespace Controls
 
     public:
         /** adds a top-level control to this surface. */
-        void addControl( Control* control );
+        template<typename T>
+        T* addControl( T* control ) { 
+            return dynamic_cast<T*>( addControlImpl( control ) ); }
 
         /** removes a top-level control. */
         void removeControl( Control* control );
@@ -702,9 +826,14 @@ namespace osgEarth { namespace Util { namespace Controls
         GeodeTable      _geodeTable;
         ControlContext  _context;
         bool            _contextDirty;
+        bool            _updatePending;
+
+		std::map<osgGA::GUIEventHandler*, osgViewer::View*> _eventHandlersMap;
 
         osg::ref_ptr<ControlNodeBin> _controlNodeBin;
 
+        Control* addControlImpl( Control* control );
+
     private:
         friend struct ControlCanvasEventHandler;
         friend class ControlNode;
diff --git a/src/osgEarthUtil/Controls.cpp b/src/osgEarthUtil/Controls.cpp
index f232e41..1d83b0d 100644
--- a/src/osgEarthUtil/Controls.cpp
+++ b/src/osgEarthUtil/Controls.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,17 +17,20 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthUtil/Controls>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <osg/Geometry>
 #include <osg/NodeCallback>
 #include <osg/Depth>
 #include <osg/TextureRectangle>
 #include <osgGA/GUIEventHandler>
 #include <osgText/Text>
+#include <osgUtil/RenderBin>
 #include <osgEarthSymbology/Geometry>
 #include <osgEarthSymbology/GeometryRasterizer>
 #include <osg/Version>
 #include <osgEarth/Common>
+#include <osgEarth/Registry>
+#include <osgEarth/Utils>
 
 using namespace osgEarth;
 using namespace osgEarth::Symbology;
@@ -42,7 +45,7 @@ namespace
 {
     // ControlNodeBin shaders.
 
-    char* s_controlVertexShader =
+    const char* s_controlVertexShader =
         "void main() \n"
         "{ \n"
         "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
@@ -50,7 +53,7 @@ namespace
         "    gl_FrontColor = gl_Color; \n"
         "} \n";
 
-    char* s_imageControlFragmentShader =
+    const char* s_imageControlFragmentShader =
         "uniform sampler2D tex0; \n"
         "uniform float visibleTime; \n"
         "uniform float osg_FrameTime; \n"
@@ -61,7 +64,7 @@ namespace
         "    gl_FragColor = vec4(texel.rgb, texel.a * opacity); \n"
         "} \n";
 
-    char* s_labelControlFragmentShader =
+    const char* s_labelControlFragmentShader =
         "uniform sampler2D tex0; \n"
         "uniform float visibleTime; \n"
         "uniform float osg_FrameTime; \n"
@@ -117,22 +120,90 @@ namespace
 
 // ---------------------------------------------------------------------------
 
-Control::Control() :
-_x(0), _y(0), _width(1), _height(1),
-_margin( Gutter(0) ),
-_padding( Gutter(2) ),
-_visible( true ),
-_valign( ALIGN_NONE ),
-_halign( ALIGN_NONE ),
-_backColor( osg::Vec4f(0,0,0,0) ),
-_foreColor( osg::Vec4f(1,1,1,1) ),
-_activeColor( osg::Vec4f(.4,.4,.4,1) ),
-_active( false ),
-_absorbEvents( false ),
-_hfill( false ),
-_vfill( false )
+float
+UVec2f::x( const osg::Vec2f& size ) const
 {
-    //nop
+    if ( _xunits == UNITS_PIXELS )
+        return _v[0];
+    else if ( _xunits == UNITS_FRACTION )
+        return _v[0] * size.x();
+    else // UNITS_INSET_PIXELS
+        return size.x() - _v[0] - 1.0f;
+}
+
+float
+UVec2f::x( const ControlContext& cx ) const
+{
+    return cx._vp ? x( osg::Vec2f(cx._vp->width(), cx._vp->height()) ) : _v[0];
+}
+
+float
+UVec2f::y( const osg::Vec2f& size ) const
+{
+    if ( _yunits == UNITS_PIXELS )
+        return _v[1];
+    else if ( _yunits == UNITS_FRACTION )
+        return _v[1] * size.y();
+    else // UNITS_INSET_PIXELS
+        return size.y() - _v[1] - 1.0f;
+}
+
+float
+UVec2f::y( const ControlContext& cx ) const
+{
+    return cx._vp ? y( osg::Vec2f(cx._vp->width(), cx._vp->height()) ) : _v[1];
+}
+
+UVec2f
+UVec2f::asPixels( const osg::Vec2f& size ) const
+{
+    return UVec2f( x(size), y(size), UNITS_PIXELS, UNITS_PIXELS );
+}
+
+UVec2f
+UVec2f::asPixels( const ControlContext& cx ) const
+{
+    return UVec2f( x(cx), y(cx), UNITS_PIXELS, UNITS_PIXELS );
+}
+
+
+// ---------------------------------------------------------------------------
+
+Control::Control()
+{
+    init();
+}
+
+Control::Control( const Alignment& halign, const Alignment& valign, const Gutter& padding )
+{
+    init();
+
+    setHorizAlign( halign );
+    setVertAlign( valign );
+    setPadding( padding );
+}
+
+void
+Control::init()
+{
+    _x.init(0);
+    _y.init(0);
+    _width.init(1);
+    _height.init(1);
+    _valign.init( ALIGN_NONE );
+    _halign.init( ALIGN_NONE );
+    _backColor.init( osg::Vec4(0,0,0,0) );
+    _foreColor.init( osg::Vec4(1,1,1,1) );
+    _activeColor.init( osg::Vec4(.4,.4,.4,1) );
+
+    _margin = Gutter(0);
+    _padding = Gutter(2);
+    _hfill = false;
+    _vfill = false;    
+    _visible = true;
+    _active = false;
+    _absorbEvents = false;
+    _dirty = true;
 }
 
 void
@@ -196,6 +267,36 @@ Control::setMargin( const Gutter& value ) {
 }
 
 void
+Control::setMargin( Side side, float value ) {
+    switch(side) {
+        case SIDE_TOP:
+            if ( _margin.top() != value ) {
+                _margin.top() = value;
+                dirty();
+            }
+            break;
+        case SIDE_BOTTOM:
+            if ( _margin.bottom() != value ) {
+                _margin.bottom() = value;
+                dirty();
+            }
+            break;
+        case SIDE_LEFT:
+            if ( _margin.left() != value ) {
+                _margin.left() = value;
+                dirty();
+            }
+            break;
+        case SIDE_RIGHT:
+            if ( _margin.right() != value ) {
+                _margin.right() = value;
+                dirty();
+            }
+            break;
+    }
+}
+
+void
 Control::setPadding( const Gutter& value )
 {
     if ( value != _padding ) {
@@ -214,6 +315,36 @@ Control::setPadding( float value ) {
 }
 
 void
+Control::setPadding( Side side, float value ) {
+    switch(side) {
+        case SIDE_TOP:
+            if ( _padding.top() != value ) {
+                _padding.top() = value;
+                dirty();
+            }
+            break;
+        case SIDE_BOTTOM:
+            if ( _padding.bottom() != value ) {
+                _padding.bottom() = value;
+                dirty();
+            }
+            break;
+        case SIDE_LEFT:
+            if ( _padding.left() != value ) {
+                _padding.left() = value;
+                dirty();
+            }
+            break;
+        case SIDE_RIGHT:
+            if ( _padding.right() != value ) {
+                _padding.right() = value;
+                dirty();
+            }
+            break;
+    }
+}
+
+void
 Control::setHorizAlign( const Alignment& value ) {
     if ( !_halign.isSetTo( value ) ) {
         _halign = value;
@@ -281,9 +412,11 @@ Control::setActiveColor( const osg::Vec4f& value ) {
 }
 
 void
-Control::addEventHandler( ControlEventHandler* handler )
+Control::addEventHandler( ControlEventHandler* handler, bool fire )
 {
     _eventHandlers.push_back( handler );
+    if ( fire )
+        fireValueChanged( handler );
 }
 
 bool
@@ -398,6 +531,7 @@ Control::draw(const ControlContext& cx, DrawableList& out )
             float vph = cx._vp->height(); // - padding().bottom();
 
             _geom = new osg::Geometry();
+            _geom->setUseVertexBufferObjects(true);
 
             float rx = _renderPos.x() - padding().left();
             float ry = _renderPos.y() - padding().top();
@@ -446,6 +580,7 @@ Control::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa,
                 {
                     osg::Vec2f relXY( ea.getX() - _renderPos.x(), cx._vp->height() - ea.getY() - _renderPos.y() );
                     i->get()->onClick( this, relXY, ea.getButtonMask() );
+                    aa.requestRedraw();
                 }
             }
         }
@@ -456,34 +591,94 @@ Control::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa,
 
 // ---------------------------------------------------------------------------
 
-// override osg Text to get at some of the internal properties
-struct LabelText : public osgText::Text
+namespace
 {
-    const osg::BoundingBox& getTextBB() const { return _textBB; }
-    const osg::Matrix& getATMatrix(int contextID) const { return _autoTransformCache[contextID]._matrix; }
-};
+    // override osg Text to get at some of the internal properties
+    struct LabelText : public osgText::Text
+    {
+        const osg::BoundingBox& getTextBB() const { return _textBB; }
+        const osg::Matrix& getATMatrix(int contextID) const { return _autoTransformCache[contextID]._matrix; }
+    };
+
+    // writes a value to a label
+    struct ValueLabelHandler : public ControlEventHandler
+    {
+        osg::observer_ptr<LabelControl> _label;
+        ValueLabelHandler( LabelControl* label ) : _label(label) { }
+        void onValueChanged( class Control* control, bool value ) { 
+            if ( _label.valid() ) _label->setText( Stringify() << value ); }
+        void onValueChanged( class Control* control, double value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << std::setprecision(16) << value ); }
+        void onValueChanged( class Control* control, float value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << value ); }
+        void onValueChanged( class Control* control, int value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << value ); }
+        void onValueChanged( class Control* control, const osg::Vec3f& value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << std::setprecision(8) << value.x() << ", " << value.y() << ", " << value.z() ); }
+        void onValueChanged( class Control* control, const osg::Vec2f& value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << std::setprecision(8) << value.x() << ", " << value.y() ); }
+        void onValueChanged( class Control* control, const osg::Vec3d& value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << std::setprecision(16) << value.x() << ", " << value.y() << ", " << value.z() ); }
+        void onValueChanged( class Control* control, const osg::Vec2d& value ) {
+            if ( _label.valid() ) _label->setText( Stringify() << std::setprecision(16) << value.x() << ", " << value.y() ); }
+        void onValueChanged( class Control* control, const std::string& value ) {
+            if ( _label.valid() ) _label->setText( value ); }
+    };
+}
 
 LabelControl::LabelControl(const std::string& text,
-                           float fontSize,
-                           const osg::Vec4f& foreColor)
-{
-    setText( text );
-    setFont( osgText::readFontFile( "arial.ttf" ) ); // TODO: cache this?
-    setFontSize( fontSize );
-    setBackColor( osg::Vec4f(0,0,0,0) );
+                           float              fontSize,
+                           const osg::Vec4f&  foreColor):
+_text    ( text ),
+_fontSize( fontSize ),
+_encoding( osgText::String::ENCODING_UNDEFINED )
+{    
+    setFont( Registry::instance()->getDefaultFont() );    
     setForeColor( foreColor );
+    setBackColor( osg::Vec4f(0,0,0,0) );
 }
 
 LabelControl::LabelControl(const std::string& text,
-                           const osg::Vec4f& foreColor)
+                           const osg::Vec4f&  foreColor,
+                           float              fontSize ):
+_text    ( text ),
+_fontSize( fontSize ),
+_encoding( osgText::String::ENCODING_UNDEFINED )
+{    	
+    setFont( Registry::instance()->getDefaultFont() );   
+    setForeColor( foreColor );
+    setBackColor( osg::Vec4f(0,0,0,0) );
+}
+
+LabelControl::LabelControl(Control*           valueControl,
+                           float              fontSize,
+                           const osg::Vec4f&  foreColor):
+_fontSize( fontSize ),
+_encoding( osgText::String::ENCODING_UNDEFINED )
 {
-    setText( text );
-    setFont( osgText::readFontFile( "arial.ttf" ) ); // TODO: cache this?
-    setFontSize( 18.0f );
+    setFont( Registry::instance()->getDefaultFont() );    
+    setForeColor( foreColor );
     setBackColor( osg::Vec4f(0,0,0,0) );
+
+    if ( valueControl )
+        valueControl->addEventHandler( new ValueLabelHandler(this), true );
+}
+
+LabelControl::LabelControl(Control*           valueControl,
+                           const osg::Vec4f&  foreColor,
+                           float              fontSize ):
+_fontSize( fontSize ),
+_encoding( osgText::String::ENCODING_UNDEFINED )
+{    	
+    setFont( Registry::instance()->getDefaultFont() );   
     setForeColor( foreColor );
+    setBackColor( osg::Vec4f(0,0,0,0) );
+
+    if ( valueControl )
+        valueControl->addEventHandler( new ValueLabelHandler(this), true );
 }
 
+
 void
 LabelControl::setText( const std::string& value )
 {
@@ -494,6 +689,15 @@ LabelControl::setText( const std::string& value )
 }
 
 void
+LabelControl::setEncoding( osgText::String::Encoding value )
+{
+	if ( value != _encoding ) {
+		_encoding = value;
+		dirty();
+	}
+}
+
+void
 LabelControl::setFont( osgText::Font* value )
 {
     if ( value != _font.get() ) {
@@ -537,7 +741,7 @@ LabelControl::calcSize(const ControlContext& cx, osg::Vec2f& out_size)
         t->getOrCreateStateSet()->setAttributeAndModes( program, osg::StateAttribute::ON );
 #endif
 
-        t->setText( _text );
+		t->setText( _text, _encoding );
         // yes, object coords. screen coords won't work becuase the bounding box will be wrong.
         t->setCharacterSizeMode( osgText::Text::OBJECT_COORDS );
         t->setCharacterSize( _fontSize );
@@ -692,6 +896,7 @@ ImageControl::draw( const ControlContext& cx, DrawableList& out )
     {
         //TODO: this is not precisely correct..images get deformed slightly..
         osg::Geometry* g = new osg::Geometry();
+        g->setUseVertexBufferObjects(true);
 
         float rx = osg::round( _renderPos.x() );
         float ry = osg::round( _renderPos.y() );
@@ -753,7 +958,7 @@ ImageControl::draw( const ControlContext& cx, DrawableList& out )
 
         tex->setResizeNonPowerOfTwoHint(false);
 
-        tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::NEAREST );
+        tex->setFilter( osg::Texture::MIN_FILTER, osg::Texture::LINEAR );
         tex->setFilter( osg::Texture::MAG_FILTER, osg::Texture::LINEAR );
         g->getOrCreateStateSet()->setTextureAttributeAndModes( 0, tex, osg::StateAttribute::ON );
 
@@ -775,34 +980,46 @@ ImageControl::draw( const ControlContext& cx, DrawableList& out )
 
 // ---------------------------------------------------------------------------
 
-HSliderControl::HSliderControl( float min, float max, float value ) :
+HSliderControl::HSliderControl( float min, float max, float value, ControlEventHandler* handler) :
 _min(min),
 _max(max),
 _value(value)
 {
-   if ( _max <= _min )
-       _max = _min+1.0f;
-   if ( _value < _min )
-       _value = _min;
-   if ( _value > _max )
-       _value = _max;
+   //if ( _max <= _min )
+   //    _max = _min+1.0f;
+   //if ( _value < _min )
+   //    _value = _min;
+   //if ( _value > _max )
+   //    _value = _max;
 
    setHorizFill( true );
+   setVertAlign( ALIGN_CENTER );
+   setHeight( 20.0f );
+
+   if ( handler )
+    addEventHandler( handler );
 }
 
 void
-HSliderControl::fireValueChanged()
+HSliderControl::fireValueChanged( ControlEventHandler* oneHandler )
 {
-    for( ControlEventHandlerList::const_iterator i = _eventHandlers.begin(); i != _eventHandlers.end(); ++i )
+    if ( oneHandler )
     {
-        i->get()->onValueChanged( this, _value );
+        oneHandler->onValueChanged( this, _value );
+    }
+    else
+    {
+        for( ControlEventHandlerList::const_iterator i = _eventHandlers.begin(); i != _eventHandlers.end(); ++i )
+        {
+            i->get()->onValueChanged( this, _value );
+        }
     }
 }
 
 void
 HSliderControl::setValue( float value, bool notify )
 {
-    value = osg::clampBetween( value, _min, _max );
+    //value = osg::clampBetween( value, _min, _max );
     if ( value != _value )
     {
         _value = value;
@@ -858,6 +1075,7 @@ HSliderControl::draw( const ControlContext& cx, DrawableList& out )
     if ( visible() == true )
     {
         osg::ref_ptr<osg::Geometry> g = new osg::Geometry();
+        g->setUseVertexBufferObjects(true);
 
         float rx = osg::round( _renderPos.x() );
         float ry = osg::round( _renderPos.y() );
@@ -903,6 +1121,8 @@ HSliderControl::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapte
         float relX = ea.getX() - _renderPos.x();
 
         setValue( _min + (_max-_min) * ( relX/_renderSize.x() ) );
+        aa.requestRedraw();
+
         return true;
     }
     return Control::handle( ea, aa, cx );
@@ -926,11 +1146,18 @@ _value( value )
 }
 
 void
-CheckBoxControl::fireValueChanged()
+CheckBoxControl::fireValueChanged( ControlEventHandler* oneHandler )
 {
-    for( ControlEventHandlerList::const_iterator i = _eventHandlers.begin(); i != _eventHandlers.end(); ++i )
+    if ( oneHandler )
     {
-        i->get()->onValueChanged( this, _value );
+        oneHandler->onValueChanged( this, _value );
+    }
+    else
+    {
+        for( ControlEventHandlerList::const_iterator i = _eventHandlers.begin(); i != _eventHandlers.end(); ++i )
+        {
+            i->get()->onValueChanged( this, _value );
+        }
     }
 }
 
@@ -953,6 +1180,7 @@ CheckBoxControl::draw( const ControlContext& cx, DrawableList& out )
     if ( visible() == true )
     {
         osg::Geometry* g = new osg::Geometry();
+        g->setUseVertexBufferObjects(true);
 
         float rx = osg::round( _renderPos.x() );
         float ry = osg::round( _renderPos.y() );
@@ -995,6 +1223,7 @@ CheckBoxControl::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
     if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH )
     {
         setValue( !_value );
+        aa.requestRedraw();
         return true;
     }
     return Control::handle( ea, aa, cx );
@@ -1092,6 +1321,12 @@ _spacing( 1 )
     //nop
 }
 
+Container::Container( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing )
+: Control( halign, valign, padding )
+{
+    this->setChildSpacing( spacing );
+}
+
 void
 Container::setFrame( Frame* frame )
 {
@@ -1197,9 +1432,9 @@ Container::draw( const ControlContext& cx, DrawableList& out )
 {
     if ( visible() == true )
     {
-        Control::draw( cx, out );
         if ( _frame.valid() )
             _frame->draw( cx, out );
+        Control::draw( cx, out );
     }
 }
 
@@ -1235,8 +1470,14 @@ VBox::VBox()
     //nop
 }
 
-void
-VBox::addControl( Control* control, int index )
+VBox::VBox( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing ) :
+Container( halign, valign, padding, spacing )
+{
+    //nop
+}
+
+Control*
+VBox::addControlImpl( Control* control, int index )
 {
     if ( index < 0 )
         _controls.push_back( control );
@@ -1246,6 +1487,8 @@ VBox::addControl( Control* control, int index )
 
     applyChildAligns();
     dirty();
+
+    return control;
 }
 
 void
@@ -1368,8 +1611,14 @@ HBox::HBox()
     //nop
 }
 
-void
-HBox::addControl( Control* control, int index )
+HBox::HBox( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing ) :
+Container( halign, valign, padding, spacing )
+{
+    //nop
+}
+
+Control*
+HBox::addControlImpl( Control* control, int index )
 {
     if ( index < 0 )
         _controls.push_back( control );
@@ -1380,6 +1629,8 @@ HBox::addControl( Control* control, int index )
     applyChildAligns();
 
     dirty();
+
+    return control;
 }
 
 void
@@ -1503,27 +1754,36 @@ Grid::Grid()
     //nop
 }
 
-void
-Grid::setControl( int col, int row, Control* child )
+Grid::Grid( const Alignment& halign, const Alignment& valign, const Gutter& padding, float spacing ) :
+Container( halign, valign, padding, spacing )
 {
-    if ( !child ) return;
+    //nop
+}
 
-    expandToInclude( col, row );
+Control*
+Grid::setControlImpl( int col, int row, Control* child )
+{
+    if ( child )
+    {
+        expandToInclude( col, row );
 
-    Control* oldControl = cell( col, row ).get();
-    if ( oldControl ) {
-        ControlList::iterator i = std::find( _children.begin(), _children.end(), oldControl );
-        if ( i != _children.end() ) 
-            _children.erase( i );
-    }
+        Control* oldControl = cell( col, row ).get();
+        if ( oldControl ) {
+            ControlList::iterator i = std::find( _children.begin(), _children.end(), oldControl );
+            if ( i != _children.end() ) 
+                _children.erase( i );
+        }
 
-    cell( col, row ) = child;
-    _children.push_back( child );
+        cell( col, row ) = child;
+        _children.push_back( child );
 
-    child->setParent( this );
-    applyChildAligns();
+        child->setParent( this );
+        applyChildAligns();
 
-    dirty();
+        dirty();
+    }
+
+    return child;
 }
 
 osg::ref_ptr<Control>&
@@ -1551,11 +1811,11 @@ Grid::expandToInclude( int col, int row )
     }
 }
 
-void
-Grid::addControl( Control* control, int index )
+Control*
+Grid::addControlImpl( Control* control, int index )
 {
     // creates a new row and puts the control in its first column
-    setControl( 0, _rows.size(), control );
+    return setControlImpl( 0, _rows.size(), control );
 }
 
 void
@@ -1567,7 +1827,7 @@ Grid::addControls( const ControlVector& controls )
     {
         if ( i->valid() )
         {
-            setControl( col, row, i->get() );
+            setControlImpl( col, row, i->get() );
         }
     }
 }
@@ -1727,7 +1987,17 @@ namespace osgEarth { namespace Util { namespace Controls
                         ControlContext cx;
                         cx._view = aa.asView();
                         cx._vp = new osg::Viewport( 0, 0, vp->width(), vp->height() );
-                        cx._viewContextID = aa.asView()->getCamera()->getGraphicsContext()->getState()->getContextID();
+                        
+                        osg::View* view = aa.asView();
+                        osg::GraphicsContext* gc = view->getCamera()->getGraphicsContext();
+                        if ( !gc && view->getNumSlaves() > 0 )
+                            gc = view->getSlave(0)._camera->getGraphicsContext();
+
+                        if ( gc )
+                            cx._viewContextID = gc->getState()->getContextID();
+                        else
+                            cx._viewContextID = ~0u;
+
                         _cs->setControlContext( cx );
 
                         _width  = (int)vp->width();
@@ -1787,7 +2057,7 @@ namespace osgEarth { namespace Util { namespace Controls
             // must save the manipulator matrix b/c calling setSceneData causes
             // the view to call home() on the manipulator.
             osg::Matrixd savedMatrix;
-            osgGA::MatrixManipulator* manip = view2->getCameraManipulator();
+            osgGA::CameraManipulator* manip = view2->getCameraManipulator();
             if ( manip )
                 savedMatrix = manip->getMatrix();
 
@@ -1828,9 +2098,6 @@ ControlNode::traverse( osg::NodeVisitor& nv )
         static osg::Vec4d s_zero_w(0,0,0,1);
         osgUtil::CullVisitor* cv = static_cast<osgUtil::CullVisitor*>( &nv );
 
-        //setCullingActive( true );
-        //cv->setSmallFeatureCullingPixelSize(0);
-
         // pull up the per-view data for this view:
         PerViewData& data = _perViewData[cv->getCurrentCamera()->getView()];
 
@@ -1849,8 +2116,6 @@ ControlNode::traverse( osg::NodeVisitor& nv )
         if ( data._canvas.valid() )
         {
             // calculate its screen position:
-            //data._screenPos = s_zero * (*cv->getMVPW());
-
             osg::Vec4d clip = s_zero_w * (*cv->getModelViewMatrix()) * (*cv->getProjectionMatrix());
             osg::Vec3d clip_ndc( clip.x()/clip.w(), clip.y()/clip.w(), clip.z()/clip.w() );
             data._screenPos = clip_ndc * cv->getWindowMatrix();
@@ -1883,6 +2148,28 @@ _screenPos  ( 0.0, 0.0, 0.0 )
 
 // ---------------------------------------------------------------------------
 
+/**
+ * A custom render bin for Controls, that sorts drawables by traversal order,
+ * providing an unambiguous draw order.
+ */
+#define OSGEARTH_CONTROLS_BIN "osgEarth::Utils::Controls::bin"
+
+namespace
+{    
+    struct osgEarthControlsRenderBin : public osgUtil::RenderBin
+    {
+        osgEarthControlsRenderBin()
+        {
+            this->setName( OSGEARTH_CONTROLS_BIN );
+            this->setSortMode( osgUtil::RenderBin::TRAVERSAL_ORDER );
+        }
+    };
+}
+
+static osgEarthRegisterRenderBinProxy<osgEarthControlsRenderBin> s_regbin( OSGEARTH_CONTROLS_BIN );
+
+// ---------------------------------------------------------------------------
+
 ControlNodeBin::ControlNodeBin() :
 _sortingEnabled( true ),
 _sortByDistance( true ),
@@ -1982,7 +2269,7 @@ ControlNodeBin::draw( const ControlContext& context, bool newContext, int bin )
               const osg::Vec2f& size = control->renderSize();
 
               // calculate the rendering offset based on alignment:
-              float x, y;
+              float x = 0.f, y = 0.f;
 
               if ( node->anchorPoint().isSet() )
               {
@@ -2046,9 +2333,6 @@ ControlNodeBin::draw( const ControlContext& context, bool newContext, int bin )
                       for( DrawableList::iterator j = drawables.begin(); j != drawables.end(); ++j )
                       {
                           j->get()->setDataVariance( osg::Object::DYNAMIC );
-
-                          osg::StateSet* stateSet = j->get()->getOrCreateStateSet();
-                          stateSet->setRenderBinDetails( bin++, "RenderBin" );
                           geode->addDrawable( j->get() );
                       }
                   }
@@ -2151,14 +2435,12 @@ ControlCanvas::get( osg::View* view, bool installInSceneData )
 
 // ---------------------------------------------------------------------------
 
-ControlCanvas::ControlCanvas( osgViewer::View* view ) :
-_contextDirty(true)
+ControlCanvas::ControlCanvas( osgViewer::View* view )
 {
     init( view, true );
 }
 
-ControlCanvas::ControlCanvas( osgViewer::View* view, bool registerCanvas ) :
-_contextDirty( true )
+ControlCanvas::ControlCanvas( osgViewer::View* view, bool registerCanvas )
 {
     init( view, registerCanvas );
 }
@@ -2166,28 +2448,38 @@ _contextDirty( true )
 void
 ControlCanvas::init( osgViewer::View* view, bool registerCanvas )
 {
+    _contextDirty  = true;
+    _updatePending = false;
+
     this->setDataVariance( osg::Object::DYNAMIC );
 
-    view->addEventHandler( new ViewportHandler(this) );
-    view->addEventHandler( new ControlCanvasEventHandler(this) );
+    osg::ref_ptr<osgGA::GUIEventHandler> pViewportHandler = new ViewportHandler(this);
+    osg::ref_ptr<osgGA::GUIEventHandler> pControlCanvasEventHandler = new ControlCanvasEventHandler(this);
+
+    _eventHandlersMap[pViewportHandler] = view;
+    _eventHandlersMap[pControlCanvasEventHandler] = view;
+
+    view->addEventHandler( pViewportHandler );
+    view->addEventHandler( pControlCanvasEventHandler );
 
     setReferenceFrame(osg::Transform::ABSOLUTE_RF);
     setViewMatrix(osg::Matrix::identity());
     setClearMask(GL_DEPTH_BUFFER_BIT);
-    setRenderOrder(osg::Camera::POST_RENDER); 
+    setRenderOrder(osg::Camera::POST_RENDER, 25000);
     setAllowEventFocus( true );
     
-    // activate the update traversal
-    ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+    // register for event traversals.
+    ADJUST_EVENT_TRAV_COUNT( this, 1 );
 
     osg::StateSet* ss = getOrCreateStateSet();
     ss->setMode( GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
     ss->setMode( GL_BLEND, osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE );
-    ss->setAttributeAndModes( new osg::Depth( osg::Depth::LEQUAL, 0, 1, false ) );
+    ss->setAttributeAndModes( new osg::Depth( osg::Depth::ALWAYS, 0, 1, false ) );
+    ss->setRenderBinMode( osg::StateSet::USE_RENDERBIN_DETAILS );
+    ss->setBinName( OSGEARTH_CONTROLS_BIN );
 
-    // this is necessary b/c osgText puts things in this bin too and we can't override that
-    ss->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
-    ss->setBinNumber(999999);
+    // keeps the control bin shaders from "leaking out" into the scene graph :/
+    ss->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
 
     _controlNodeBin = new ControlNodeBin();
     this->addChild( _controlNodeBin->getControlGroup() );
@@ -2204,6 +2496,15 @@ ControlCanvas::~ControlCanvas()
 {
     OpenThreads::ScopedLock<OpenThreads::Mutex> lock( _viewCanvasMapMutex );
     _viewCanvasMap.erase( _context._view );
+
+    // commented out: causing a crash on exit
+#if 0
+    std::map<osgGA::GUIEventHandler*, osgViewer::View*>::iterator itr;
+    for (itr = _eventHandlersMap.begin(); itr != _eventHandlersMap.end(); ++itr)
+    {
+        itr->second->removeEventHandler(itr->first);
+    }
+#endif
 }
 
 void
@@ -2212,14 +2513,15 @@ ControlCanvas::setAllowControlNodeOverlap( bool value )
     getControlNodeBin()->_sortingEnabled = !value;
 }
 
-void
-ControlCanvas::addControl( Control* control )
+Control*
+ControlCanvas::addControlImpl( Control* control )
 {
     osg::Geode* geode = new osg::Geode();
     _geodeTable[control] = geode;
     addChild( geode );
     control->dirty();    
     _controls.push_back( control );
+    return control;
 }
 
 void
@@ -2251,6 +2553,9 @@ ControlCanvas::getControlAtMouse( float x, float y ) const
 bool
 ControlCanvas::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
 {
+    if ( !_context._vp )
+        return false;
+
 	for (ControlList::reverse_iterator i = _controls.rbegin(); i != _controls.rend(); ++i)
 	{
 		Control* control = i->get();
@@ -2265,7 +2570,7 @@ ControlCanvas::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter
     //Send a frame event to all controls
     if ( ea.getEventType() == osgGA::GUIEventAdapter::FRAME )
     {
-        for( ControlList::const_reverse_iterator i = _controls.rbegin(); i != _controls.rend(); ++i )
+        for( ControlList::reverse_iterator i = _controls.rbegin(); i != _controls.rend(); ++i )
         {
             i->get()->handle(ea, aa, _context);
         }
@@ -2308,6 +2613,9 @@ ControlCanvas::update( const osg::FrameStamp* frameStamp )
 {
     _context._frameStamp = frameStamp;
 
+    if ( !_context._vp )
+        return;
+
     int bin = 0;
     for( ControlList::iterator i = _controls.begin(); i != _controls.end(); ++i )
     {
@@ -2329,7 +2637,6 @@ ControlCanvas::update( const osg::FrameStamp* frameStamp )
             for( DrawableList::iterator j = drawables.begin(); j != drawables.end(); ++j )
             {
                 j->get()->setDataVariance( osg::Object::DYNAMIC );
-                j->get()->getOrCreateStateSet()->setBinNumber( bin++ );
                 geode->addDrawable( j->get() );
             }
         }
@@ -2346,9 +2653,37 @@ ControlCanvas::update( const osg::FrameStamp* frameStamp )
 void
 ControlCanvas::traverse( osg::NodeVisitor& nv )
 {
-    if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
+    if ( nv.getVisitorType() == osg::NodeVisitor::EVENT_VISITOR )
+    {
+        if ( !_updatePending )
+        {
+            bool needsUpdate = _contextDirty;
+            if ( !needsUpdate )
+            {
+                for( ControlList::iterator i = _controls.begin(); i != _controls.end(); ++i )
+                {
+                    Control* control = i->get();
+                    if ( control->isDirty() )
+                    {
+                        needsUpdate = true;
+                        break;
+                    }
+                }
+            }
+
+            if ( needsUpdate )
+            {
+                _updatePending = true;
+                ADJUST_UPDATE_TRAV_COUNT( this, 1 );
+            }
+        }
+    }
+
+    else if ( nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
     {
         update( nv.getFrameStamp() );
+        ADJUST_UPDATE_TRAV_COUNT( this, -1 );
+        _updatePending = false;
     }
 
     osg::Camera::traverse( nv );
diff --git a/src/osgEarthUtil/Draggers b/src/osgEarthUtil/Draggers
deleted file mode 100644
index 2fc5ce0..0000000
--- a/src/osgEarthUtil/Draggers
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#ifndef OSGEARTHUTIL_DRAGGERS
-#define OSGEARTHUTIL_DRAGGERS
-
-#include <osg/ShapeDrawable>
-#include <osgEarthUtil/Common>
-
-
-#include <osgManipulator/Dragger>
-#include <osgManipulator/Command>
-
-namespace osgEarth { namespace Util {
-
-
-class OSGEARTHUTIL_EXPORT TranslateCommand : public osgManipulator::MotionCommand
-{
-public:
-    TranslateCommand();
-    inline const osg::Vec3d& getTranslation() const { return _translation;}
-    inline void setTranslation( const osg::Vec3d &translation ) { _translation = translation;}
-    virtual osgManipulator::MotionCommand* createCommandInverse();
-
-    virtual osg::Matrix getMotionMatrix() const;
-
-protected:
-    virtual ~TranslateCommand();
-    osg::Vec3d _translation;
-};
-
-class OSGEARTHUTIL_EXPORT IntersectingDragger : public osgManipulator::Dragger
-{
-public:
-    IntersectingDragger();
-
-    virtual void setupDefaultGeometry();
-
-    /** Handle pick events on dragger and generate TranslateInLine commands. */
-    virtual bool handle(const osgManipulator::PointerInfo& pi, const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& us);
-
-    void setNode(osg::Node* node) { _node = node;}
-    osg::Node* getNode() const { return _node.get(); }
-
-    /** Set/Get color for dragger. */
-    inline void setColor(const osg::Vec4& color) { _color = color; }
-
-    inline const osg::Vec4& getColor() const { return _color; }
-
-    /** Set/Get pick color for dragger. Pick color is color of the dragger when picked.
-    It gives a visual feedback to show that the dragger has been picked. */
-    inline void setPickColor(const osg::Vec4& color) { _pickColor = color; }
-    inline const osg::Vec4& getPickColor() const { return _pickColor; }    
-
-    /**
-     * Gets the size of the dragger
-     */
-    inline float getSize() const { return _size;}
-
-    /**
-     * Sets the size of the dragger
-     */
-    inline void setSize( float size ) { _size = size; }
-
-    virtual bool handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa);
-
-protected:
-
-    bool getHit(const osg::Vec3d &start, const osg::Vec3d &end, osg::Vec3d &intersection);
-    void setDrawableColor(const osg::Vec4f& color);
-
-    virtual ~IntersectingDragger();
-
-    osg::Vec4                       _color;
-    osg::Vec4                       _pickColor;
-    osg::Vec3d                      _startPoint;
-    float                           _size;
-    osg::Matrixd                    _localToWorld;
-    osg::Matrixd                    _worldToLocal;
-
-    osg::ref_ptr< osg::ShapeDrawable > _shapeDrawable;
-
-    osg::ref_ptr< osg::Node > _node;
-};
-
-
-} }
-
-
-#endif
diff --git a/src/osgEarthUtil/Draggers.cpp b/src/osgEarthUtil/Draggers.cpp
deleted file mode 100644
index 5a49eb7..0000000
--- a/src/osgEarthUtil/Draggers.cpp
+++ /dev/null
@@ -1,339 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osg/AutoTransform>
-#include <osgViewer/View>
-#include <osgUtil/IntersectionVisitor>
-#include <osgUtil/LineSegmentIntersector>
-#include <osgEarthUtil/Draggers>
-#include <osg/io_utils>
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-
-/**********************************************************/
-TranslateCommand::TranslateCommand():
-osgManipulator::MotionCommand()
-{
-}
-
-osgManipulator::MotionCommand*
-TranslateCommand::createCommandInverse()
-{
-    TranslateCommand *cmd = new TranslateCommand();
-    cmd->setTranslation( -_translation );
-    return cmd;
-}
-
-osg::Matrix
-TranslateCommand::getMotionMatrix() const 
-{
-    return osg::Matrixd::translate(_translation);
-}
-
-
-TranslateCommand::~TranslateCommand()
-{
-}
-
-/**********************************************************/
-    
-
-IntersectingDragger::IntersectingDragger():
-osgManipulator::Dragger(),
-_size(5.0f)
-{
-    setColor(osg::Vec4(0.0f, 1.0f, 0.0f, 1.0f));
-    setPickColor(osg::Vec4(1.0f, 1.0f, 0.0f, 1.0f));
-}
-
-IntersectingDragger::~IntersectingDragger()
-{
-}
-
-void
-IntersectingDragger::setupDefaultGeometry()
-{
-    //Build the handle
-    osg::Sphere* shape = new osg::Sphere(osg::Vec3(0,0,0), _size);   
-    osg::Geode* geode = new osg::Geode();
-    _shapeDrawable = new osg::ShapeDrawable( shape );    
-    geode->addDrawable( _shapeDrawable.get() );
-    setDrawableColor( _color );
-
-    geode->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
-    geode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
-    osg::AutoTransform* at = new osg::AutoTransform;
-    at->setAutoScaleToScreen( true );
-    at->addChild( geode );
-    addChild( at );
-}
-
-bool
-IntersectingDragger::getHit(const osg::Vec3d& start, const osg::Vec3d &end, osg::Vec3d& intersection)
-{
-    if (_node.valid())
-    {
-        osg::ref_ptr<osgUtil::LineSegmentIntersector> lsi = new osgUtil::LineSegmentIntersector(start,end);
-
-        osgUtil::IntersectionVisitor iv(lsi.get());
-
-        _node->accept(iv);
-
-        if (lsi->containsIntersections())
-        {
-            OE_DEBUG << "Got get hit at " << start << " to " << end << std::endl;
-            intersection = lsi->getIntersections().begin()->getWorldIntersectPoint();
-            return true;
-        }
-    }
-
-    OE_DEBUG << "Warning:  Couldn't get hit at " << start << " to " << end << std::endl;
-    return false;
-}
-
-void
-IntersectingDragger::setDrawableColor(const osg::Vec4f& color)
-{
-    if (_shapeDrawable.valid()) _shapeDrawable->setColor( color );
-};
-
-bool IntersectingDragger::handle(const osgManipulator::PointerInfo& pointer, const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
-{
-    // Check if the dragger node is in the nodepath.
-    //if (!pointer.contains(this)) return false; 
-
-
-    switch (ea.getEventType())
-    {
-        // Pick start.
-        case (osgGA::GUIEventAdapter::PUSH):
-            {
-                osg::NodePath nodePathToRoot;
-                computeNodePathToRoot(*this,nodePathToRoot);
-                _localToWorld = osg::computeLocalToWorld(nodePathToRoot);
-                _worldToLocal.invert( _localToWorld );
-
-                osg::Vec3d near, far, hit;
-                pointer.getNearFarPoints(near, far);
-                if (getHit(near, far, hit))
-                {
-                    _startPoint = hit;
-                   
-                    // Generate the motion command.
-                    osg::ref_ptr<TranslateCommand> cmd = new TranslateCommand();
-                    cmd->setTranslation(osg::Vec3d(0,0,0));
-                    cmd->setStage(osgManipulator::MotionCommand::START);
-                    cmd->setLocalToWorldAndWorldToLocal(_localToWorld, _worldToLocal);
-
-                    // Dispatch command.
-                    dispatch(*cmd);
-
-                    cmd = new TranslateCommand();
-                    hit = hit * _worldToLocal;
-                    osg::Vec3d start = getMatrix().getTrans() * _worldToLocal;                    
-                    osg::Vec3d translation = hit - start;
-                    cmd->setTranslation(translation);
-                    cmd->setStage(osgManipulator::MotionCommand::MOVE);
-                    cmd->setLocalToWorldAndWorldToLocal(_localToWorld, _worldToLocal);
-
-                    // Dispatch command.
-                    dispatch(*cmd);
-
-                    setDrawableColor( _pickColor );
-
-                    aa.requestRedraw();
-                }                 
-                return true; 
-            }
-            
-        // Pick move.
-        case (osgGA::GUIEventAdapter::DRAG):
-            {                
-                osg::Vec3d near, far, hit;
-                pointer.getNearFarPoints(near, far);
-                if (getHit(near, far, hit))
-                {
-                    // Generate the motion command.
-                    osg::ref_ptr<TranslateCommand> cmd = new TranslateCommand();
-                    hit = hit * _worldToLocal;
-                    osg::Vec3d start = _startPoint * _worldToLocal;
-                    osg::Vec3d translation = hit - start;
-                    cmd->setTranslation(translation);
-                    cmd->setStage(osgManipulator::MotionCommand::MOVE);
-                    cmd->setLocalToWorldAndWorldToLocal(_localToWorld, _worldToLocal);
-
-                    // Dispatch command.
-                    dispatch(*cmd);
-
-                    aa.requestRedraw();
-                }           
-                return true; 
-            }
-            
-        // Pick finish.
-        case (osgGA::GUIEventAdapter::RELEASE):
-            {             
-                osg::ref_ptr<TranslateCommand> cmd = new TranslateCommand();
-                cmd->setStage(osgManipulator::MotionCommand::FINISH);
-                cmd->setLocalToWorldAndWorldToLocal(_localToWorld, _worldToLocal);
-
-                // Dispatch command.
-                dispatch(*cmd);
-
-                // Reset color.
-                setDrawableColor(_color);
-
-                aa.requestRedraw();
-
-                return true;
-            }
-        default:
-            return false;
-    }
-}
-
-bool IntersectingDragger::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
-{
-    //This is essentialy the same as the original Dragger handle code except for it checks for "all" intersections and not just the first one.
-    //This allows you to turn depth testing off and have control points that might be obstructed by a mountain still be clickable.
-    if (ea.getHandled()) return false;
-
-    osgViewer::View* view = dynamic_cast<osgViewer::View*>(&aa);
-    if (!view) return false;
-
-    bool handled = false;
-
-    bool activationPermitted = true;
-    if (_activationModKeyMask!=0 || _activationKeyEvent!=0)
-    {
-        _activationPermittedByModKeyMask = (_activationModKeyMask!=0) ?
-            ((ea.getModKeyMask() & _activationModKeyMask)!=0) :
-            false;
-
-        if (_activationKeyEvent!=0)
-        {
-            switch (ea.getEventType())
-            {
-                case osgGA::GUIEventAdapter::KEYDOWN:
-                {
-                    if (ea.getKey()==_activationKeyEvent) _activationPermittedByKeyEvent = true;
-                    break;
-                }
-                case osgGA::GUIEventAdapter::KEYUP:
-                {
-                    if (ea.getKey()==_activationKeyEvent) _activationPermittedByKeyEvent = false;
-                    break;
-                }
-                default:
-                    break;
-            }
-        }
-
-        activationPermitted =  _activationPermittedByModKeyMask || _activationPermittedByKeyEvent;
-
-    }
-
-    if (activationPermitted || _draggerActive)
-    {
-        switch (ea.getEventType())
-        {
-            case osgGA::GUIEventAdapter::PUSH:
-            {
-                osgUtil::LineSegmentIntersector::Intersections intersections;
-
-                _pointer.reset();
-
-                if (view->computeIntersections(ea.getX(),ea.getY(),intersections))
-                {
-                    for(osgUtil::LineSegmentIntersector::Intersections::iterator hitr = intersections.begin();
-                        hitr != intersections.end();
-                        ++hitr)
-                    {
-                        _pointer.addIntersection(hitr->nodePath, hitr->getLocalIntersectPoint());
-                    }
-                    
-                    for(osgUtil::LineSegmentIntersector::Intersections::iterator hitr = intersections.begin();
-                        hitr != intersections.end();
-                        ++hitr)
-                    {
-                        for (osg::NodePath::const_iterator itr = hitr->nodePath.begin();
-                            itr != hitr->nodePath.end();
-                            ++itr)
-                        {
-                            osgManipulator::Dragger* dragger = dynamic_cast<osgManipulator::Dragger*>(*itr);
-                            if (dragger)
-                            {
-                                if (dragger==this)
-                                {
-                                    osg::Camera *rootCamera = view->getCamera();
-                                    osg::NodePath nodePath = _pointer._hitList.front().first;
-                                    osg::NodePath::reverse_iterator ritr;
-                                    for(ritr = nodePath.rbegin();
-                                        ritr != nodePath.rend();
-                                        ++ritr)
-                                    {
-                                        osg::Camera* camera = dynamic_cast<osg::Camera*>(*ritr);
-                                        if (camera && (camera->getReferenceFrame()!=osg::Transform::RELATIVE_RF || camera->getParents().empty()))
-                                        {
-                                            rootCamera = camera;
-                                            break;
-                                        }
-                                    }
-
-                                    _pointer.setCamera(rootCamera);
-                                    _pointer.setMousePosition(ea.getX(), ea.getY());
-
-                                    dragger->handle(_pointer, ea, aa);
-                                    dragger->setDraggerActive(true);
-                                    handled = true;
-                                }
-                            }
-                        }
-                    }
-                }
-            }
-            case osgGA::GUIEventAdapter::DRAG:
-            case osgGA::GUIEventAdapter::RELEASE:
-            {
-                if (_draggerActive)
-                {
-                    _pointer._hitIter = _pointer._hitList.begin();
-//                    _pointer.setCamera(view->getCamera());
-                    _pointer.setMousePosition(ea.getX(), ea.getY());
-
-                    handle(_pointer, ea, aa);
-
-                    handled = true;
-                }
-                break;
-            }
-            default:
-                break;
-        }
-
-        if (_draggerActive && ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
-        {
-            setDraggerActive(false);
-            _pointer.reset();
-        }
-    }
-
-    return handled;
-}
diff --git a/src/osgEarthUtil/EarthManipulator b/src/osgEarthUtil/EarthManipulator
index e8916fa..df50c9c 100644
--- a/src/osgEarthUtil/EarthManipulator
+++ b/src/osgEarthUtil/EarthManipulator
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,15 +21,22 @@
 
 #include <osgEarthUtil/Common>
 #include <osgEarth/Common>
-#include <osgEarthUtil/Viewpoint>
-#include <osgEarth/MapNode>
+#include <osgEarth/Viewpoint>
+#include <osgEarth/GeoData>
+#include <osgEarth/Revisioning>
 #include <osg/Timer>
+#include <osgGA/CameraManipulator>
+#include <osgEarth/Terrain>
 #include <map>
 #include <list>
 #include <utility>
 
+#define USE_OBSERVER_NODE_PATH 1
+
 namespace osgEarth { namespace Util
 {
+    using namespace osgEarth;
+
     /** 
      * A programmable manipulator suitable for use with geospatial terrains.
      *
@@ -37,7 +44,7 @@ namespace osgEarth { namespace Util
      * and navigation parameters. Create one or more of these and call 
      * applySettings() to "program" the manipulator at runtime.
      */
-    class OSGEARTHUTIL_EXPORT EarthManipulator : public osgGA::MatrixManipulator
+    class OSGEARTHUTIL_EXPORT EarthManipulator : public osgGA::CameraManipulator
     {
     public:
 
@@ -62,6 +69,9 @@ namespace osgEarth { namespace Util
             ACTION_EARTH_DRAG
         };
 
+        /** Vector of action types */
+        typedef std::vector<ActionType> ActionTypeVector;
+
         /** Bindable event types. */
         enum EventType {
             EVENT_MOUSE_CLICK        = osgGA::GUIEventAdapter::USER << 1,
@@ -89,13 +99,20 @@ namespace osgEarth { namespace Util
             OPTION_DURATION             // Time it takes to complete the action (in seconds)
         };
 
-		/** Tethering options **/
-		enum TetherMode
-		{
-			TETHER_CENTER,              // The camera will follow the center of the node.
-			TETHER_CENTER_AND_ROTATION, // The camera will follow the node and all rotations made by the node
-			TETHER_CENTER_AND_HEADING   // The camera will follow the node and only follow heading rotation
-		};
+        /** Tethering options **/
+        enum TetherMode
+        {
+            TETHER_CENTER,              // The camera will follow the center of the node.
+            TETHER_CENTER_AND_ROTATION, // The camera will follow the node and all rotations made by the node
+            TETHER_CENTER_AND_HEADING   // The camera will follow the node and only follow heading rotation
+        };
+
+        /** Camera projection matrix type **/
+        enum CameraProjection
+        {
+            PROJ_PERSPECTIVE,
+            PROJ_ORTHOGRAPHIC
+        };
 
         struct OSGEARTHUTIL_EXPORT ActionOption {
             ActionOption() { }
@@ -123,7 +140,7 @@ namespace osgEarth { namespace Util
             void add( int option, double value) { push_back( ActionOption(option,value) ); }
         };
 
-    private:
+    protected:
         struct InputSpec 
         {
             InputSpec( int event_type, int input_mask, int modkey_mask )
@@ -180,7 +197,7 @@ namespace osgEarth { namespace Util
 
     public:
 
-        class OSGEARTHUTIL_EXPORT Settings : public osg::Referenced
+        class OSGEARTHUTIL_EXPORT Settings : public osg::Referenced, public Revisioned
         {
         public:
             // construct with default settings
@@ -189,6 +206,9 @@ namespace osgEarth { namespace Util
             // copy ctor
             Settings( const Settings& rhs );
 
+            /** dtor */
+            virtual ~Settings() { }
+
             /**
              * Assigns behavior to the action of dragging the mouse while depressing one or
              * more mouse buttons and modifier keys.
@@ -371,18 +391,6 @@ namespace osgEarth { namespace Util
             bool getSingleAxisRotation() const { return _single_axis_rotation; }
 
             /**
-             * Setting this to True lets motion continue when the user releases the mouse button
-             * while still dragging. Default = false.
-             */
-            void setThrowingEnabled( bool value ) { _throwing = value; }
-
-            /**
-             * Gets whether to allow motion to continue when the user releases the mouse button 
-             * while still dragging the mouse.
-             */
-            bool getThrowingEnabled() const { return _throwing; }
-
-            /**
              * Sets whether to lock in a camera heading when performing panning operations (i.e.,
              * changing the focal point).
              */
@@ -410,35 +418,39 @@ namespace osgEarth { namespace Util
             /** Gets the maximum allowable local pitch, in degrees. */
             double getMaxPitch() const { return _max_pitch; }        
 
-			/** Gets the max x offset in world coordates */
-			double getMaxXOffset() const { return _max_x_offset; }
+            /** Gets the max x offset in world coordates */
+            double getMaxXOffset() const { return _max_x_offset; }
 
-			/** Gets the max y offset in world coordates */
-			double getMaxYOffset() const { return _max_y_offset; }
+            /** Gets the max y offset in world coordates */
+            double getMaxYOffset() const { return _max_y_offset; }
 
-			/** Gets the minimum distance from the focal point in world coordinates */
-			double getMinDistance() const {return _min_distance; }
-			
-			/** Gets the maximum distance from the focal point in world coordinates */
-			double getMaxDistance() const {return _max_distance; }
+            /** Gets the minimum distance from the focal point in world coordinates */
+            double getMinDistance() const {return _min_distance; }
+            
+            /** Gets the maximum distance from the focal point in world coordinates */
+            double getMaxDistance() const {return _max_distance; }
 
-			/** Sets the min and max distance from the focal point in world coordiantes */
-			void setMinMaxDistance( double min_distance, double max_distance);
+            /** Sets the min and max distance from the focal point in world coordiantes */
+            void setMinMaxDistance( double min_distance, double max_distance);
 
-			/**
-			* Sets the maximum allowable offsets for the x and y camera offsets in world coordinates
-			*/
-			void setMaxOffset(double max_x_offset, double max_y_offset);
+            /**
+            * Sets the maximum allowable offsets for the x and y camera offsets in world coordinates
+            */
+            void setMaxOffset(double max_x_offset, double max_y_offset);
 
-			/**
-			* Gets the TetherMode
-			*/
-			TetherMode getTetherMode() const { return _tether_mode; }
+            /**
+            * Gets the TetherMode
+            */
+            TetherMode getTetherMode() const { return _tether_mode; }
+
+            /**
+            * Sets the TetherMode
+            */
+            void setTetherMode( TetherMode tether_mode ) { _tether_mode = tether_mode; }
 
-			/**
-			* Sets the TetherMode
-			*/
-			void setTetherMode( TetherMode tether_mode ) { _tether_mode = tether_mode; }
+            /** Access to the list of Actions that will automatically break a tether */
+            ActionTypeVector& getBreakTetherActions() { return _breakTetherActions; }
+            const ActionTypeVector& getBreakTetherActions() const { return _breakTetherActions; }
 
             /** Whether a setViewpoint transition whould "arc" */
             void setArcViewpointTransitions( bool value );
@@ -454,12 +466,19 @@ namespace osgEarth { namespace Util
                 out_maxSeconds = _max_vp_duration_s;
             }
 
+            /** The camera projection matrix type */
+            void setCameraProjection( const CameraProjection& value );
+            const CameraProjection& getCameraProjection() const { return _camProjType; }
+
+            /** Frustum offset (in pixels) */
+            void setCameraFrustumOffsets( const osg::Vec2s& offsets );
+            const osg::Vec2s& getCameraFrustumOffsets() const { return _camFrustOffsets; }            
+
         private:
 
             friend class EarthManipulator;
 
             typedef std::pair<InputSpec,Action> ActionBinding;
-            //typedef std::vector<ActionBinding> ActionBindings;
             typedef std::map<InputSpec,Action> ActionBindings;
 
             // Gets the action bound to the provided input specification, or NullAction if there is
@@ -473,7 +492,6 @@ namespace osgEarth { namespace Util
 
             ActionBindings _bindings;
             bool _single_axis_rotation;
-            bool _throwing;
             bool _lock_azim_while_panning;
             double _mouse_sens;
             double _keyboard_sens;
@@ -481,16 +499,20 @@ namespace osgEarth { namespace Util
             double _min_pitch;
             double _max_pitch;
 
-			double _max_x_offset;
-			double _max_y_offset;
+            double _max_x_offset;
+            double _max_y_offset;
 
-			double _min_distance;
-			double _max_distance;
+            double _min_distance;
+            double _max_distance;
 
-			TetherMode _tether_mode;
+            TetherMode _tether_mode;
+            ActionTypeVector _breakTetherActions;
             bool _arc_viewpoints;
             bool _auto_vp_duration;
             double _min_vp_duration_s, _max_vp_duration_s;
+
+            CameraProjection _camProjType;
+            osg::Vec2s _camFrustOffsets;			
         };
 
     public:
@@ -516,6 +538,11 @@ namespace osgEarth { namespace Util
          * Sets the camera position, optionally moving it there over time.
          */
         virtual void setViewpoint( const Viewpoint& vp, double duration_s =0.0 );
+        
+        /**
+         * Cancels a viewpoint transition if one is in progress
+         */
+        void cancelViewpointTransition() { _setting_viewpoint = false; }
 
         /**
          * Sets the viewpoint to activate when performing the ACTION_HOME action.
@@ -577,27 +604,28 @@ namespace osgEarth { namespace Util
          */
         bool screenToWorld(float x, float y, osg::View* view, osg::Vec3d& out_coords ) const;
 
-		/**
-		 * Gets the distance from the focal point in world coordiantes
-		 */
-		double getDistance() const { return _distance; }
+        /**
+         * Gets the distance from the focal point in world coordiantes
+         */
+        double getDistance() const { return _distance; }
 
-		/**
-		 * Sets the distance from the focal point in world coordinates.
-		 *
-		 * The incoming distance value will be clamped within the valid range specified by the settings.
-		 */
-		void   setDistance( double distance);
+        /**
+         * Sets the distance from the focal point in world coordinates.
+         *
+         * The incoming distance value will be clamped within the valid range specified by the settings.
+         */
+        void   setDistance( double distance);
 
-		/**
-		 * Gets the rotation of the manipulator.  Note:  This rotation is in addition to the rotation needed to center the view on the focal point.
-		 */
-		const osg::Quat& getRotation() { return _rotation; }
+        /**
+         * Gets the rotation of the manipulator.  Note:  This rotation is in addition to the rotation needed to center the view on the focal point.
+         */
+        const osg::Quat& getRotation() { return _rotation; }
+
+        /**
+         * Sets the rotation of the manipulator.  Note:  This rotation is in addition to the rotation needed to center the view on the focal point.
+         */
+        void  setRotation( const osg::Quat& rotation) { _rotation = rotation; }
 
-		/**
-		 * Sets the rotation of the manipulator.  Note:  This rotation is in addition to the rotation needed to center the view on the focal point.
-		 */
-		void  setRotation( const osg::Quat& rotation) { _rotation = rotation; }
 
 
     public: // osgGA::MatrixManipulator
@@ -629,6 +657,7 @@ namespace osgEarth { namespace Util
         virtual osg::Node* getNode();
 
         // Move the camera to the default position.
+        virtual void home(double /*unused*/);
         virtual void home(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& us);
         
         // Start/restart the manipulator.
@@ -665,14 +694,13 @@ namespace osgEarth { namespace Util
         // Applies an action using the raw input parameters.
         bool handleAction( const Action& action, double dx, double dy, double duration );
 
-        bool handleMouseAction( const Action& action, osg::View* view );
-        bool handleMouseClickAction( const Action& action );
-        bool handleKeyboardAction( const Action& action, double duration_s = DBL_MAX );
-        bool handleScrollAction( const Action& action, double duration_s = DBL_MAX );        
-        bool handlePointAction( const Action& type, float mx, float my, osg::View* view );
-        void handleContinuousAction( const Action& action, osg::View* view );
-        void handleMovementAction( const ActionType& type, double dx, double dy,
-                                   osg::View* view );
+        virtual bool handleMouseAction( const Action& action, osg::View* view );
+        virtual bool handleMouseClickAction( const Action& action );
+        virtual bool handleKeyboardAction( const Action& action, double duration_s = DBL_MAX );
+        virtual bool handleScrollAction( const Action& action, double duration_s = DBL_MAX );
+        virtual bool handlePointAction( const Action& type, float mx, float my, osg::View* view );
+        virtual void handleContinuousAction( const Action& action, osg::View* view );
+        virtual void handleMovementAction( const ActionType& type, double dx, double dy, osg::View* view );
 
         // checks to see whether the mouse is "moving".
         bool isMouseMoving();
@@ -680,7 +708,7 @@ namespace osgEarth { namespace Util
         // This sets the camera's roll based on your location on the globe.
         void recalculateRoll();
 
-    private:
+    protected:
 
         enum TaskType
         {
@@ -693,20 +721,22 @@ namespace osgEarth { namespace Util
         struct Task : public osg::Referenced
         {
             Task() : _type(TASK_NONE) { }
-            void set( TaskType type, double dx, double dy, double duration =DBL_MAX ) {
-                _type = type; _dx = dx; _dy = dy; _duration_s = duration;
+            void set( TaskType type, double dx, double dy, double duration, double now ) {
+                _type = type; _dx = dx; _dy = dy; _duration_s = duration; _time_last_service = now;
             }
             TaskType _type;
             double   _dx, _dy;
             double   _duration_s;
+            double   _time_last_service;
         };
 
         // "ticks" the resident Task, which allows for multi-frame animation of navigation
         // movements.
         bool serviceTask();
 
-        void recalculateLocalPitchAndAzimuth();
-		double getAzimuth() const;
+        //void recalculateLocalPitchAndAzimuth();
+        void getLocalEulerAngles( double* out_azim, double* out_pitch =0L ) const;
+
 
         void recalculateCenter( const osg::CoordinateFrame& frame );
 
@@ -732,16 +762,28 @@ namespace osgEarth { namespace Util
 
         bool established();
 
-        osg::CoordinateFrame getMyCoordinateFrame( const osg::Vec3d& position ) const;
+        // sets the new center (focal) point and recalculates it's L2W matrix.
+        void setCenter( const osg::Vec3d& center );
+
+        // creates a "local-to-world" transform relative to the input point.
+        bool createLocalCoordFrame( const osg::Vec3d& worldPos, osg::CoordinateFrame& out_frame ) const;
 
-    private:
+        // returns an ActionType that would be initiated by the OSG UI event
+        ActionType getActionTypeForEvent( const osgGA::GUIEventAdapter& ea ) const;
+
+    public:
+            
+        void recalculateCenter() { recalculateCenter(_centerLocalToWorld); }
+
+        const GeoPoint& centerMap() const { return _centerMap; }
+
+    protected:
         // makeshift "stack" of the last 2 incoming events.
         osg::ref_ptr<const osgGA::GUIEventAdapter> _ga_t1;
         osg::ref_ptr<const osgGA::GUIEventAdapter> _ga_t0;
 
         osg::ref_ptr<const osgGA::GUIEventAdapter> _mouse_down_event;
 
-        //osg::ref_ptr<osg::Node> _node;
         osg::observer_ptr<osg::Node> _node;
         osg::observer_ptr<osg::CoordinateSystemNode> _csn;
 #ifdef USE_OBSERVER_NODE_PATH
@@ -754,6 +796,9 @@ namespace osgEarth { namespace Util
         bool _srs_lookup_failed;
 
         osg::observer_ptr<osg::Node> _tether_node;
+        osg::Transform*              _tether_xform;
+        osg::Vec3d                   _tether_local_center;
+        Viewpoint                    _pre_tether_vp;
 
         double                  _time_s_last_frame;
         double                  _time_s_now;
@@ -761,11 +806,18 @@ namespace osgEarth { namespace Util
         double                  _delta_t;
         double                  _t_factor;
         bool                    _thrown;
+
         // The world coordinate of the Viewpoint focal point.
         osg::Vec3d              _center;
+        GeoPoint                _centerMap;
+
+        // local2world matrix for the center point.
+        osg::CoordinateFrame    _centerLocalToWorld;
+
         // The rotation (heading and pitch) of the camera in the
         // earth-local frame.
         osg::Quat               _rotation;
+
         // The rotation that makes the camera look down on the focal
         // point on the earth. This is equivalent to a rotation by
         // latitude, longitude.
@@ -776,12 +828,13 @@ namespace osgEarth { namespace Util
         osg::Vec3d              _previousUp;
         osg::ref_ptr<Task>      _task;
         osg::Timer_t            _time_last_frame;
-        double                  _local_pitch;
-        double                  _local_azim;
+        //double                  _local_pitch;
+        //double                  _local_azim;
 
         bool                    _continuous;
         double                  _continuous_dx;
         double                  _continuous_dy;
+        double                  _last_continuous_action_time;
 
         double                  _single_axis_x;
         double                  _single_axis_y;
@@ -801,7 +854,7 @@ namespace osgEarth { namespace Util
         double                  _set_viewpoint_accel;
         double                  _set_viewpoint_accel_2;
 
-        bool                    _after_first_frame;
+        unsigned                _frame_count;
 
         osg::ref_ptr<Settings> _settings;		
 
@@ -809,8 +862,13 @@ namespace osgEarth { namespace Util
         double _homeViewpointDuration;
 
         Action _last_action;
+
         // to support updating the camera after the update traversal (e.g., for tethering)
         osg::observer_ptr<osg::Camera> _viewCamera;
+        double _vfov;
+        double _tanHalfVFOV;
+        optional<osg::CullSettings::ComputeNearFarMode> _savedCNFMode;
+        Revision _viewCameraSettingsMonitor;
         
         struct CameraPostUpdateCallback : public osg::NodeCallback {
             CameraPostUpdateCallback(EarthManipulator* m) : _m(m) { }
@@ -827,6 +885,9 @@ namespace osgEarth { namespace Util
         // returns to earth during a drag
         osg::Vec3d               _lastPointOnEarth;
 
+
+        osg::ref_ptr< TerrainCallback > _terrainCallback;
+
     };
 
 } } // namespace osgEarth::Util
diff --git a/src/osgEarthUtil/EarthManipulator.cpp b/src/osgEarthUtil/EarthManipulator.cpp
index 8108110..3a719c3 100644
--- a/src/osgEarthUtil/EarthManipulator.cpp
+++ b/src/osgEarthUtil/EarthManipulator.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,13 +17,15 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthUtil/EarthManipulator>
-#include <osgEarth/FindNode>
+#include <osgEarth/MapNode>
+#include <osgEarth/NodeUtils>
 #include <osg/Quat>
 #include <osg/Notify>
 #include <osg/MatrixTransform>
 #include <osgUtil/LineSegmentIntersector>
 #include <osgViewer/View>
 #include <iomanip>
+#include <osgEarth/DPLineSegmentIntersector>
 
 #include <osg/io_utils>
 
@@ -32,7 +34,8 @@
 using namespace osgEarth::Util;
 using namespace osgEarth;
 
-/****************************************************************************/
+
+//------------------------------------------------------------------------
 
 
 namespace
@@ -54,47 +57,35 @@ namespace
     accelerationInterp( double t, double a ) {
         return a == 0.0? t : a > 0.0? powFast( t, a ) : 1.0 - powFast(1.0-t, -a);
     }
-    
-    void
-    s_getHPRFromQuat(const osg::Quat& q, double &h, double &p, double &r)
+}
+
+
+
+namespace
+{
+    // Callback that notifies the manipulator whenever the terrain changes
+    // around its center point.
+    struct ManipTerrainCallback : public TerrainCallback
     {
-#if 0
-        // http://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToEuler/index.htm
-
-        p = atan2(2*(q.y()*q.z() + q.w()*q.x()), (q.w()*q.w() - q.x()*q.x() - q.y()*q.y() + q.z() * q.z()));
-	    h = asin (2*q.x()*q.y() + 2*q.z()*q.w());
-        r = atan2(2*q.x()*q.w()-2*q.y()*q.z() , 1 - 2*q.x()*q.x() - 2*q.z()*q.z());
-    	
-        if( osg::equivalent( q.x()*q.y() + q.z() *q.w(), 0.5 ) )
-	    { 
-		    p = (float)(2 * atan2( q.x(),q.w())); 
-		    r = 0;     
-	    }  	 
-        else if( osg::equivalent( q.x()*q.y() + q.z()*q.w(), -0.5 ) )
-	    { 
-		    p = (float)(-2 * atan2(q.x(), q.w())); 
-		    r = 0; 
-	    } 
-     
-#else
-        osg::Matrixd rot(q);
-        p = asin(rot(1,2));
-        if( osg::equivalent(osg::absolute(p), osg::PI_2) )
-        {
-            r = 0.0;
-            h = atan2( rot(0,1), rot(0,0) );
-        }
-        else
+        ManipTerrainCallback(EarthManipulator* manip) : _manip(manip) { }
+
+        void onTileAdded( const TileKey& key, osg::Node* tile, TerrainCallbackContext& context )
         {
-            r = atan2( rot(0,2), rot(2,2) );
-            h = atan2( rot(1,0), rot(1,1) );
+            const GeoPoint& centerMap = _manip->centerMap();
+            if ( _manip.valid() && key.getExtent().contains(centerMap.x(), centerMap.y()) )
+            {
+                _manip->recalculateCenter();
+            }
         }
-#endif
-    }
+
+        osg::observer_ptr<EarthManipulator> _manip;
+    };
 }
 
 
-/****************************************************************************/
+//------------------------------------------------------------------------
+
+
 
 EarthManipulator::Action::Action( ActionType type, const ActionOptions& options ) :
 _type( type ),
@@ -196,31 +187,35 @@ static short s_actionOptionTypes[] = { 1, 1, 0, 0, 1, 1 }; // 0=bool, 1=double
 //------------------------------------------------------------------------
 
 EarthManipulator::Settings::Settings() :
-_single_axis_rotation( false ),
-_throwing( false ),
-_lock_azim_while_panning( true ),
-_mouse_sens( 1.0 ),
-_keyboard_sens( 1.0 ),
-_scroll_sens( 1.0 ),
-_min_pitch( -89.9 ),
-_max_pitch( -10.0 ),
-_max_x_offset( 0.0 ),
-_max_y_offset( 0.0 ),
-_min_distance( 0.001 ),
-_max_distance( DBL_MAX ),
-_tether_mode( TETHER_CENTER ),
-_arc_viewpoints( false ),
-_auto_vp_duration( false ),
-_min_vp_duration_s( 3.0 ),
-_max_vp_duration_s( 8.0 )
+osg::Referenced                 (),
+Revisioned                      (),
+_single_axis_rotation           ( false ),
+_lock_azim_while_panning        ( true ),
+_mouse_sens                     ( 1.0 ),
+_keyboard_sens                  ( 1.0 ),
+_scroll_sens                    ( 1.0 ),
+_min_pitch                      ( -89.9 ),
+_max_pitch                      ( -10.0 ),
+_max_x_offset                   ( 0.0 ),
+_max_y_offset                   ( 0.0 ),
+_min_distance                   ( 0.001 ),
+_max_distance                   ( DBL_MAX ),
+_tether_mode                    ( TETHER_CENTER ),
+_arc_viewpoints                 ( true ),
+_auto_vp_duration               ( false ),
+_min_vp_duration_s              ( 3.0 ),
+_max_vp_duration_s              ( 8.0 ),
+_camProjType                    ( PROJ_PERSPECTIVE ),
+_camFrustOffsets                ( 0, 0 )
 {
     //NOP
 }
 
 EarthManipulator::Settings::Settings( const EarthManipulator::Settings& rhs ) :
+osg::Referenced( rhs ),
+Revisioned     ( rhs ),
 _bindings( rhs._bindings ),
 _single_axis_rotation( rhs._single_axis_rotation ),
-_throwing( rhs._throwing ),
 _lock_azim_while_panning( rhs._lock_azim_while_panning ),
 _mouse_sens( rhs._mouse_sens ),
 _keyboard_sens( rhs._keyboard_sens ),
@@ -235,7 +230,9 @@ _tether_mode( rhs._tether_mode ),
 _arc_viewpoints( rhs._arc_viewpoints ),
 _auto_vp_duration( rhs._auto_vp_duration ),
 _min_vp_duration_s( rhs._min_vp_duration_s ),
-_max_vp_duration_s( rhs._max_vp_duration_s )
+_max_vp_duration_s( rhs._max_vp_duration_s ),
+_camProjType( rhs._camProjType ),
+_camFrustOffsets( rhs._camFrustOffsets )
 {
     //NOP
 }
@@ -287,9 +284,8 @@ EarthManipulator::Settings::bind( const InputSpec& spec, const Action& action )
     expandSpec( spec, specs );
     for( InputSpecs::const_iterator i = specs.begin(); i != specs.end(); i++ )
     {
-        _bindings[*i] = action; //ActionBinding(*i, action);
+        _bindings[*i] = action;
     }
-        //_bindings.push_back( ActionBinding( *i, action ) );
 }
 
 void
@@ -344,13 +340,12 @@ EarthManipulator::Settings::bindScroll(ActionType action, int scrolling_motion,
 const EarthManipulator::Action&
 EarthManipulator::Settings::getAction(int event_type, int input_mask, int modkey_mask) const
 {
-    InputSpec spec( event_type, input_mask, modkey_mask );
+    //Build the input spec but remove the numlock and caps lock from the modkey mask.  On Linux these seem to be passed in as part of the modkeymask
+    //if they are on.  So if you bind an action like SCROLL to a modkey mask of 0 or a modkey mask of ctrl it will never match the spec exactly b/c 
+    //the modkey mask also includes capslock and numlock.
+    InputSpec spec( event_type, input_mask, modkey_mask & ~osgGA::GUIEventAdapter::MODKEY_NUM_LOCK & ~osgGA::GUIEventAdapter::MODKEY_CAPS_LOCK);
     ActionBindings::const_iterator i = _bindings.find(spec);
     return i != _bindings.end() ? i->second : NullAction;
-    //for( ActionBindings::const_iterator i = _bindings.begin(); i != _bindings.end(); i++ )
-    //    if ( i->first == spec )
-    //        return i->second;
-    //return NullAction;
 }
 
 void
@@ -358,32 +353,37 @@ EarthManipulator::Settings::setMinMaxPitch( double min_pitch, double max_pitch )
 {
     _min_pitch = osg::clampBetween( min_pitch, -89.9, 89.0 );
     _max_pitch = osg::clampBetween( max_pitch, min_pitch, 89.0 );
+    dirty();
 }
 
 void
 EarthManipulator::Settings::setMaxOffset(double max_x_offset, double max_y_offset)
 {
-	_max_x_offset = max_x_offset;
-	_max_y_offset = max_y_offset;
+    _max_x_offset = max_x_offset;
+    _max_y_offset = max_y_offset;
+    dirty();
 }
 
 void
 EarthManipulator::Settings::setMinMaxDistance( double min_distance, double max_distance)
 {
-	_min_distance = min_distance;
-	_max_distance = max_distance;
+    _min_distance = min_distance;
+    _max_distance = max_distance;
+    dirty();
 }
 
 void
 EarthManipulator::Settings::setArcViewpointTransitions( bool value )
 {
     _arc_viewpoints = value;
+    dirty();
 }
 
 void
 EarthManipulator::Settings::setAutoViewpointDurationEnabled( bool value )
 {
     _auto_vp_duration = value;
+    dirty();
 }
 
 void
@@ -391,47 +391,57 @@ EarthManipulator::Settings::setAutoViewpointDurationLimits( double minSeconds, d
 {
     _min_vp_duration_s = osg::clampAbove( minSeconds, 0.0 );
     _max_vp_duration_s = osg::clampAbove( maxSeconds, _min_vp_duration_s );
+    dirty();
+}
+
+void
+EarthManipulator::Settings::setCameraProjection(const EarthManipulator::CameraProjection& value)
+{
+    _camProjType = value;
+    dirty();
+}
+
+void
+EarthManipulator::Settings::setCameraFrustumOffsets( const osg::Vec2s& value )
+{
+    _camFrustOffsets = value;
+    dirty();
 }
 
 /************************************************************************/
 
 
 EarthManipulator::EarthManipulator() :
-_last_action( ACTION_NULL )
+osgGA::CameraManipulator(),
+_last_action      ( ACTION_NULL ),
+_frame_count      ( 0 )
 {
     reinitialize();
     configureDefaultSettings();
 }
 
 EarthManipulator::EarthManipulator( const EarthManipulator& rhs ) :
-_thrown( rhs._thrown ),
-_distance( rhs._distance ),
-_offset_x( rhs._offset_x ),
-_offset_y( rhs._offset_y ),
-_continuous( rhs._continuous ),
-_task( new Task() ),
-_settings( new Settings( *rhs._settings.get() ) ),
-_srs_lookup_failed( rhs._srs_lookup_failed ),
-_last_action( rhs._last_action ),
-_setting_viewpoint( rhs._setting_viewpoint ),
-_delta_t( rhs._delta_t ),
-_t_factor( rhs._t_factor ),
-_time_s_last_frame( rhs._time_s_last_frame  ),
-_local_azim( rhs._local_azim ),
-_local_pitch( rhs._local_pitch  ),
-_has_pending_viewpoint( rhs._has_pending_viewpoint ),
-_homeViewpoint( rhs._homeViewpoint.get() ),
-_homeViewpointDuration( rhs._homeViewpointDuration ),
-_after_first_frame( rhs._after_first_frame ),
-_lastPointOnEarth( rhs._lastPointOnEarth ),
-_arc_height( rhs._arc_height )
+osgGA::CameraManipulator( rhs ),
+_last_action            ( ACTION_NULL ),
+_frame_count            ( 0 ),
+_settings               ( new Settings(*rhs.getSettings()) )
 {
+    reinitialize();
 }
 
 
 EarthManipulator::~EarthManipulator()
 {
-    //NOP
+    osg::ref_ptr<osg::Node> safeNode = _node.get();
+    if (safeNode && _terrainCallback)
+    {
+        // find a map node.
+        MapNode* mapNode = MapNode::findMapNode( safeNode.get(), 0x01 );
+        if ( mapNode )
+        {             
+            mapNode->getTerrain()->removeTerrainCallback( _terrainCallback );
+        }
+    }    
 }
 
 void
@@ -477,7 +487,7 @@ EarthManipulator::configureDefaultSettings()
     _settings->bindMouseDoubleClick( ACTION_GOTO, osgGA::GUIEventAdapter::RIGHT_MOUSE_BUTTON, 0L, options );
     _settings->bindMouseDoubleClick( ACTION_GOTO, osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON, osgGA::GUIEventAdapter::MODKEY_CTRL, options );
 
-    _settings->setThrowingEnabled( false );
+    //_settings->setThrowingEnabled( false );
     _settings->setLockAzimuthWhilePanning( true );
 }
 
@@ -497,9 +507,12 @@ EarthManipulator::applySettings( Settings* settings )
     flushMouseEventStack();
 
     // apply new pitch restrictions
-    double old_pitch = osg::RadiansToDegrees( _local_pitch );
+    double old_pitch;
+    getLocalEulerAngles( 0L, &old_pitch );
+
     double new_pitch = osg::clampBetween( old_pitch, _settings->getMinPitch(), _settings->getMaxPitch() );
-	setDistance(_distance);
+
+    setDistance(_distance);
 
     if ( new_pitch != old_pitch )
     {
@@ -528,11 +541,11 @@ EarthManipulator::reinitialize()
     _setting_viewpoint = false;
     _delta_t = 0.0;
     _t_factor = 1.0;
-    _local_azim = 0.0;
-    _local_pitch = 0.0;
     _has_pending_viewpoint = false;
     _lastPointOnEarth.set(0.0, 0.0, 0.0);
     _arc_height = 0.0;
+    _vfov = 30.0;
+    _tanHalfVFOV = tan(0.5*osg::DegreesToRadians(_vfov));
 }
 
 bool
@@ -549,19 +562,24 @@ EarthManipulator::established()
         osg::ref_ptr<osg::Node> safeNode = _node.get();
         if ( !safeNode.valid() )
             return false;
-        
-        // check the kids, then the parents
-        osg::ref_ptr<osg::CoordinateSystemNode> csn = osgEarth::findTopMostNodeOfType<osg::CoordinateSystemNode>( safeNode.get() );    
-        if ( !csn.valid() )
-            csn = osgEarth::findFirstParentOfType<osg::CoordinateSystemNode>( safeNode.get() );        
 
-        if ( csn.valid() )
+        // find a map node.
+        MapNode* mapNode = MapNode::findMapNode( safeNode.get(), 0x01 );
+        if ( mapNode )
         {
-            _csn = csn.get();
-            _node = csn.get();
+            _terrainCallback = new ManipTerrainCallback( this );
+            mapNode->getTerrain()->addTerrainCallback( _terrainCallback );
+        }
+
+        // find a CSN node - if there is one, we want to attach the manip to that
+        _csn = findRelativeNodeOfType<osg::CoordinateSystemNode>( safeNode.get(), 0x01 );
+
+        if ( _csn.valid() )
+        {
+            _node = _csn.get();
 
 #if USE_OBSERVER_NODE_PATH
-            _csnObserverPath.setNodePathTo( csn.get() );
+            _csnObserverPath.setNodePathTo( _csn.get() );
 #endif
 
             if ( !_homeViewpoint.isSet() )
@@ -574,13 +592,12 @@ EarthManipulator::established()
 
                     _has_pending_viewpoint = false;
                 }
-
                 //If we have a CoordinateSystemNode and it has an ellipsoid model
-                if ( csn->getEllipsoidModel() )
+                else if ( _csn->getEllipsoidModel() )
                 {
                     setHomeViewpoint( 
                         Viewpoint(osg::Vec3d(-90,0,0), 0, -89,
-                        csn->getEllipsoidModel()->getRadiusEquator()*3.0 ) );
+                        _csn->getEllipsoidModel()->getRadiusEquator()*3.0 ) );
                 }
                 else
                 {
@@ -599,71 +616,43 @@ EarthManipulator::established()
             _has_pending_viewpoint = false;
         }
 
-        //if (getAutoComputeHomePosition()) computeHomePosition();
-
         // reset the srs cache:
         _cached_srs = NULL;
         _srs_lookup_failed = false;
 
-        // track the local angles.
-        recalculateLocalPitchAndAzimuth();
-
         //OE_DEBUG << "[EarthManip] new CSN established." << std::endl;
     }
 
     return _csn.valid() && _node.valid();
 }
 
-// This is code taken from osgViewer::View and placed here so that we can control the
-// caching of the CSNPath ourselves without relying on View. This helps when switching
-// out the Manipulator's Node.
-osg::CoordinateFrame
-EarthManipulator::getMyCoordinateFrame( const osg::Vec3d& position ) const
-{
-    osg::CoordinateFrame coordinateFrame;
 
-    osg::ref_ptr<osg::CoordinateSystemNode> csnSafe = _csn.get();
 
-    if ( csnSafe.valid() )
+bool
+EarthManipulator::createLocalCoordFrame( const osg::Vec3d& worldPos, osg::CoordinateFrame& out_frame ) const
+{
+    if ( _cached_srs.valid() )
     {
-#ifdef USE_OBSERVER_NODE_PATH
-        if ( _csnObserverPath.empty() )
-        {
-            const_cast<EarthManipulator*>(this)->_csnObserverPath.setNodePathTo( csnSafe.get() );
-            _csnObserverPath.getNodePath( const_cast<EarthManipulator*>(this)->_csnPath );
-        }
-#else
-        const_cast<EarthManipulator*>(this)->_csnPath = csnSafe->getParentalNodePaths()[0];
-#endif
-
-        osg::Vec3 local_position = position * osg::computeWorldToLocal( _csnPath );
-
-        // get the coordinate frame in world coords.
-        coordinateFrame = csnSafe->computeLocalCoordinateFrame( local_position ) * osg::computeLocalToWorld( _csnPath );
-
-        // keep the position of the coordinate frame to reapply after rescale.
-        osg::Vec3d pos = coordinateFrame.getTrans();
+        osg::Vec3d mapPos;
+        _cached_srs->transformFromWorld( worldPos, mapPos ); 
+        _cached_srs->createLocalToWorld( mapPos, out_frame );
+    }
+    return _cached_srs.valid();
+}
 
-        // compensate for any scaling, so that the coordinate frame is a unit size
-        osg::Vec3d x(1.0,0.0,0.0);
-        osg::Vec3d y(0.0,1.0,0.0);
-        osg::Vec3d z(0.0,0.0,1.0);
-        x = osg::Matrixd::transform3x3(x,coordinateFrame);
-        y = osg::Matrixd::transform3x3(y,coordinateFrame);
-        z = osg::Matrixd::transform3x3(z,coordinateFrame);
-        coordinateFrame.preMultScale( osg::Vec3d(1.0/x.length(),1.0/y.length(),1.0/z.length()) );
 
-        // reapply the position.
-        coordinateFrame.setTrans( pos );
-    }
-    else
+void
+EarthManipulator::setCenter( const osg::Vec3d& worldPos )
+{
+    _center = worldPos;
+    createLocalCoordFrame( worldPos, _centerLocalToWorld );
+    if ( _cached_srs.valid() )
     {
-        coordinateFrame = osg::computeLocalToWorld( _csnPath );
+        _centerMap.fromWorld( _cached_srs.get(), worldPos );
     }
-
-    return coordinateFrame;
 }
 
+
 void
 EarthManipulator::setNode(osg::Node* node)
 {
@@ -674,6 +663,15 @@ EarthManipulator::setNode(osg::Node* node)
     {
         _node = node;
         _csn = 0L;
+
+        if ( _viewCamera.valid() && _cameraUpdateCB.valid() )
+        {
+            _viewCamera->removeUpdateCallback( _cameraUpdateCB.get() );
+            _cameraUpdateCB = 0L;
+        }
+
+        _viewCamera = 0L;
+
 #ifdef USE_OBSERVER_NODE_PATH
         _csnObserverPath.clearNodePath();
 #endif
@@ -725,7 +723,7 @@ EarthManipulator::getSRS() const
 
         if ( _cached_srs.valid() )
         {
-            OE_INFO << "[EarthManip] cached SRS: "
+            OE_DEBUG << "[EarthManip] cached SRS: "
                 << _cached_srs->getName()
                 << ", geocentric=" << _is_geocentric
                 << std::endl;
@@ -738,8 +736,8 @@ EarthManipulator::getSRS() const
 
 static double
 normalizeAzimRad( double input ) {
-	if(fabs(input) > 2*osg::PI)
-		input = fmod(input,2*osg::PI);
+    if(fabs(input) > 2*osg::PI)
+        input = fmod(input,2*osg::PI);
     if( input < -osg::PI ) input += osg::PI*2.0;
     if( input > osg::PI ) input -= osg::PI*2.0;
     return input;
@@ -750,7 +748,9 @@ EarthManipulator::getRotation(const osg::Vec3d& point) const
 {
     //The look vector will be going directly from the eye point to the point on the earth,
     //so the look vector is simply the up vector at the center point
-    osg::CoordinateFrame cf = getMyCoordinateFrame( point ); //getCoordinateFrame(point);
+    osg::CoordinateFrame cf;
+    createLocalCoordFrame( point, cf );
+
     osg::Vec3d lookVector = -getUpVector(cf);
 
     osg::Vec3d side;
@@ -779,7 +779,7 @@ EarthManipulator::getRotation(const osg::Vec3d& point) const
 void
 EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
 {
-    if ( !established() ) // !_node.valid() ) // || !_after_first_frame )
+    if ( !established() ) 
     {
         _pending_viewpoint = vp;
         _pending_viewpoint_duration_s = duration_s;
@@ -788,12 +788,19 @@ EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
 
     else if ( duration_s > 0.0 )
     {
+        // xform viewpoint into map SRS
+        osg::Vec3d vpFocalPoint = vp.getFocalPoint();
+        if ( _cached_srs.valid() && vp.getSRS() && !_cached_srs->isEquivalentTo( vp.getSRS() ) )
+        {
+            vp.getSRS()->transform( vp.getFocalPoint(), _cached_srs.get(), vpFocalPoint );
+        }
+
         _start_viewpoint = getViewpoint();
         
         _delta_heading = vp.getHeading() - _start_viewpoint.getHeading(); //TODO: adjust for crossing -180
         _delta_pitch   = vp.getPitch() - _start_viewpoint.getPitch();
         _delta_range   = vp.getRange() - _start_viewpoint.getRange();
-        _delta_focal_point = vp.getFocalPoint() - _start_viewpoint.getFocalPoint(); // TODO: adjust for lon=180 crossing
+        _delta_focal_point = vpFocalPoint - _start_viewpoint.getFocalPoint(); // TODO: adjust for lon=180 crossing
 
         while( _delta_heading > 180.0 ) _delta_heading -= 360.0;
         while( _delta_heading < -180.0 ) _delta_heading += 360.0;
@@ -819,7 +826,7 @@ EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
             _cached_srs->getEllipsoid()->convertLatLongHeightToXYZ(
                 osg::DegreesToRadians( _start_viewpoint.y() ), osg::DegreesToRadians( _start_viewpoint.x() ), 0.0, x0, y0, z0 );
             _cached_srs->getEllipsoid()->convertLatLongHeightToXYZ(
-                osg::DegreesToRadians( vp.y() ), osg::DegreesToRadians( vp.x() ), 0.0, x1, y1, z1 );
+                osg::DegreesToRadians( vpFocalPoint.y() ), osg::DegreesToRadians( vpFocalPoint.x() ), 0.0, x1, y1, z1 );
             de = (osg::Vec3d(x0,y0,z0) - osg::Vec3d(x1,y1,z1)).length();
         }
         else
@@ -865,26 +872,13 @@ EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
         _time_s_set_viewpoint = osg::Timer::instance()->time_s();
         _set_viewpoint_duration_s = duration_s;
 
-//        OE_NOTICE
-////            << "dfpx=" << _delta_focal_point.x()
-////            << ", dfpy=" << _delta_focal_point.y()
-////            << ", dfpl=" << _delta_focal_point.length()
-//            << ", h0=" << h0
-//            << ", h1=" << h0
-//            << ", dh=" << dh
-//            //<< ", h_delta=" << h_delta
-//            << ", accel = " << _set_viewpoint_accel
-//            << ", archeight = " << _arc_height
-////            << ", dist = " << dist
-//            << std::endl;
-
         _setting_viewpoint = true;
         
         _thrown = false;
         _task->_type = TASK_NONE;
 
-        recalculateCenter( getMyCoordinateFrame(_center) );
-        //recalculateCenter( getCoordinateFrame(_center) );
+        // recalculate the center point.
+        recalculateCenter();
     }
     else
     {
@@ -899,6 +893,7 @@ EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
                 _is_geocentric? getSRS()->getGeographicSRS() :
                 getSRS();
 
+    //TODO: streamline
             if ( !getSRS()->isEquivalentTo( vp_srs.get() ) )
             {
                 osg::Vec3d local = new_center;
@@ -930,31 +925,21 @@ EarthManipulator::setViewpoint( const Viewpoint& vp, double duration_s )
 
         double new_azim = normalizeAzimRad( osg::DegreesToRadians( vp.getHeading() ) );
 
-        _center = new_center;
-		setDistance( vp.getRange() );
-        
-        osg::CoordinateFrame local_frame = getMyCoordinateFrame( new_center ); //getCoordinateFrame( new_center );
-        _previousUp = getUpVector( local_frame );
+        setCenter( new_center );
+        setDistance( vp.getRange() );
+
+        _previousUp = getUpVector( _centerLocalToWorld );
 
         _centerRotation = getRotation( new_center ).getRotate().inverse();
 
-		osg::Quat azim_q( new_azim, osg::Vec3d(0,0,1) );
+        osg::Quat azim_q( new_azim, osg::Vec3d(0,0,1) );
         osg::Quat pitch_q( -new_pitch -osg::PI_2, osg::Vec3d(1,0,0) );
 
-		osg::Matrix new_rot = osg::Matrixd( azim_q * pitch_q );
+        osg::Matrix new_rot = osg::Matrixd( azim_q * pitch_q );
 
-		_rotation = osg::Matrixd::inverse(new_rot).getRotate();
+        _rotation = osg::Matrixd::inverse(new_rot).getRotate();
 
-		//OE_NOTICE << "Pitch old=" << _local_pitch << " new=" << new_pitch << std::endl;
-		//OE_NOTICE << "Azim old=" << _local_azim << " new=" << new_azim << std::endl;
-
-        _local_pitch = new_pitch;
-        _local_azim  = new_azim;
-
-        // re-intersect the terrain to get a new correct center point, but only if this is
-        // NOT a viewpoint transition update. (disabled check for now)
-        //if ( !_setting_viewpoint )
-        recalculateCenter( local_frame );
+        recalculateCenter();
     }
 }
 
@@ -1032,10 +1017,13 @@ EarthManipulator::getViewpoint() const
         focal_point.y() = osg::RadiansToDegrees( focal_point.y() );
     }
 
+    double localAzim, localPitch;
+    getLocalEulerAngles( &localAzim, &localPitch );
+
     return Viewpoint(
         focal_point,
-        osg::RadiansToDegrees( _local_azim ),
-        osg::RadiansToDegrees( _local_pitch ),
+        osg::RadiansToDegrees( localAzim ),
+        osg::RadiansToDegrees( localPitch ),
         _distance,
         getSRS() );
 }
@@ -1044,14 +1032,71 @@ EarthManipulator::getViewpoint() const
 void
 EarthManipulator::setTetherNode( osg::Node* node )
 {
-	if (_tether_node != node)
-	{
-		_offset_x = 0.0;
-		_offset_y = 0.0;
-	}
+    if (_tether_node != node)
+    {
+        _offset_x = 0.0;
+        _offset_y = 0.0;
+
+        if ( node )
+        {
+            // pre-compute some tether properties. If the node is an MT, treat it
+            // a little differently.
+
+            // Find the deepest transform that has a single child. That is the one we
+            // will use to calculate the tether location.
+            _tether_xform = 0L;
+            for( osg::Group* c = node->asGroup(); c != 0L; )
+            {
+                osg::Transform* xform = dynamic_cast<osg::Transform*>(c);
+                if ( xform )
+                    _tether_xform = xform;
+                
+                c = c->getNumChildren() == 1 ? c->getChild(0)->asGroup() : 0L;
+            }
+
+            if ( _tether_xform )
+            {
+                osg::BoundingSphere bs;
+
+                for( unsigned i=0; i<_tether_xform->getNumChildren(); ++i )
+                {
+                    bs.expandBy( _tether_xform->getChild(i)->getBound() );
+                }
+
+                _tether_local_center = bs.center();
+            }
+            else
+            {
+                _tether_local_center.set( 0.0, 0.0, 0.0 );
+            }
+        }
+
+        else
+        {
+            // rekajigger the distance, center, and pitch to legal non-tethered values:
+            double pitch;
+            getLocalEulerAngles(0L, &pitch);
+
+            double maxPitch = osg::DegreesToRadians(-10.0);
+            if ( pitch > maxPitch )
+                rotate( 0.0, -(pitch-maxPitch) );
+
+            osg::Vec3d eye = getMatrix().getTrans();
+
+            // calculate the center point in front of the eye. The reference frame here 
+            // is the view plane of the camera.
+            osg::Matrix m( _rotation * _centerRotation );
+            recalculateCenter( m );
+
+            double newDistance = (eye-_center).length();
+            setDistance( newDistance );
+        }
+    }
+
     _tether_node = node;
 }
 
+
 osg::Node*
 EarthManipulator::getTetherNode() const
 {
@@ -1065,7 +1110,10 @@ EarthManipulator::intersect(const osg::Vec3d& start, const osg::Vec3d& end, osg:
     osg::ref_ptr<osg::Node> safeNode = _node.get();
     if ( safeNode.valid() )
     {
-        osg::ref_ptr<osgUtil::LineSegmentIntersector> lsi = new osgUtil::LineSegmentIntersector(start,end);
+		osg::ref_ptr<osgUtil::LineSegmentIntersector> lsi = NULL;
+
+		lsi = new osgEarth::DPLineSegmentIntersector(start,end);
+		//lsi = new osgUtil::LineSegmentIntersector(start,end);		
 
         osgUtil::IntersectionVisitor iv(lsi.get());
         iv.setTraversalMask(_intersectTraversalMask);
@@ -1082,11 +1130,15 @@ EarthManipulator::intersect(const osg::Vec3d& start, const osg::Vec3d& end, osg:
 }
 
 void
-EarthManipulator::home(const osgGA::GUIEventAdapter& ,osgGA::GUIActionAdapter& us)
+EarthManipulator::home(double unused)
 {
     handleAction( ACTION_HOME, 0, 0, 0 );
-    //if (getAutoComputeHomePosition()) computeHomePosition();
-    //setByLookAt(_homeEye, _homeCenter, _homeUp);
+}
+
+void
+EarthManipulator::home(const osgGA::GUIEventAdapter& ,osgGA::GUIActionAdapter& us)
+{
+    home( 0.0 );
     us.requestRedraw();
 }
 
@@ -1133,6 +1185,7 @@ EarthManipulator::resetMouse( osgGA::GUIActionAdapter& aa )
     _lastPointOnEarth.set(0.0, 0.0, 0.0);
 }
 
+
 // this method will automatically install or uninstall the camera post-update callback 
 // depending on whether there's a tether node.
 //
@@ -1150,27 +1203,112 @@ EarthManipulator::updateCamera( osg::Camera* eventCamera )
     // check to see if the camera has changed, and update the callback if necessary
     if ( _viewCamera.get() != eventCamera )
     {
-        if ( _cameraUpdateCB.valid() )
+        if ( _cameraUpdateCB.valid() && _viewCamera.valid() )
             _viewCamera->removeUpdateCallback( _cameraUpdateCB.get() );
 
         _viewCamera = eventCamera;
-        if ( _cameraUpdateCB.valid() )
+
+        if ( _cameraUpdateCB.valid() && _viewCamera.valid() )
             _viewCamera->addUpdateCallback( _cameraUpdateCB.get() );
     }
 
     // check to see if we need to install a new camera callback:
-    if ( _tether_node.valid() && !_cameraUpdateCB.valid() )
+    if ( _viewCamera.valid() )
     {
-        _cameraUpdateCB = new CameraPostUpdateCallback(this);
-        _viewCamera->addUpdateCallback( _cameraUpdateCB.get() );
-    }
-    else if ( !_tether_node.valid() && _cameraUpdateCB.valid() )
-    {
-        _viewCamera->removeUpdateCallback( _cameraUpdateCB.get() );
-        _cameraUpdateCB = 0L;
+        if ( _tether_node.valid() && !_cameraUpdateCB.valid() )
+        {
+            _cameraUpdateCB = new CameraPostUpdateCallback(this);
+            _viewCamera->addUpdateCallback( _cameraUpdateCB.get() );
+        }
+        else if ( !_tether_node.valid() && _cameraUpdateCB.valid() )
+        {
+            _viewCamera->removeUpdateCallback( _cameraUpdateCB.get() );
+            _cameraUpdateCB = 0L;
+        }
+
+        // check whether a settings change requires an update:
+        bool settingsChanged = _settings->outOfSyncWith(_viewCameraSettingsMonitor);
+
+        // update the projection matrix if necessary
+        osg::Viewport* vp = _viewCamera->getViewport();
+        if ( vp )
+        {
+            const osg::Matrixd& proj = _viewCamera->getProjectionMatrix();
+            bool isOrtho = ( proj(3,3) == 1. ) && ( proj(2,3) == 0. ) && ( proj(1,3) == 0. ) && ( proj(0,3) == 0.);
+            CameraProjection type = _settings->getCameraProjection();
+
+            if ( type == PROJ_PERSPECTIVE )
+            {
+                if ( isOrtho || settingsChanged )
+                {
+                    // need to switch from ortho to perspective
+                    if ( isOrtho )
+                        OE_INFO << LC << "Switching to PERSPECTIVE" << std::endl;
+
+                    const osg::Vec2s& p = _settings->getCameraFrustumOffsets();
+                    double px = 2.0*(((vp->width()/2)+p.x())/vp->width())-1.0;
+                    double py = 2.0*(((vp->height()/2)+p.y())/vp->height())-1.0;
+
+                    osg::Matrix projMatrix;
+                    projMatrix.makePerspective(_vfov, vp->width()/vp->height(), 1.0f, 10000.0f);
+                    projMatrix.postMult( osg::Matrix::translate(px, py, 0.0) );
+
+                    _viewCamera->setProjectionMatrix( projMatrix );
+
+                    if ( _savedCNFMode.isSet() )
+                    {
+                        _viewCamera->setComputeNearFarMode( *_savedCNFMode );
+                        _savedCNFMode.unset();
+                    }
+                }
+            }
+            else if ( type == PROJ_ORTHOGRAPHIC )
+            {
+                if ( !isOrtho )
+                {
+                    // need to switch from perspective to ortho, so cache the VFOV of the perspective
+                    // camera -- we'll need it in ortho mode to create a proper frustum.
+                    OE_INFO << LC << "Switching to ORTHO" << std::endl;
+
+                    double ar, zn, zf; // not used
+                    _viewCamera->getProjectionMatrixAsPerspective(_vfov, ar, zn, zf);
+                    _tanHalfVFOV = tan(0.5*(double)osg::DegreesToRadians(_vfov));
+                    _savedCNFMode = _viewCamera->getComputeNearFarMode();
+                    _viewCamera->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
+                }
+                
+                double pitch;
+                getLocalEulerAngles(0L, &pitch);
+
+                // need to update the ortho projection matrix to reflect the camera distance.
+                double ar = vp->width()/vp->height();
+                double y = _distance * _tanHalfVFOV;
+                double x = y * ar;
+                double f = std::max(x,y);
+                double znear = -f * 5.0;
+                double zfar  =  f * (5.0 + 10.0 * sin(pitch+osg::PI_2));
+
+                // assemble the projection matrix:
+                osg::Matrixd orthoMatrix;
+
+                // apply the offsets:
+                double px = 0.0, py = 0.0;
+                const osg::Vec2s& p = _settings->getCameraFrustumOffsets();
+                if ( p.x() != 0 || p.y() != 0 )
+                {
+                    px = (2.0*x*(double)-p.x()) / (double)vp->width();
+                    py = (2.0*y*(double)-p.y()) / (double)vp->height();
+                }
+
+                _viewCamera->setProjectionMatrixAsOrtho( px-x, px+x, py-y, py+y, znear, zfar );
+            }
+        }
+
+        _settings->sync( _viewCameraSettingsMonitor );
     }
 }
 
+
 bool
 EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa)
 {
@@ -1181,7 +1319,8 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
         return false;
 
     // make sure the camera callback is up to date:
-    updateCamera( aa.asView()->getCamera() );
+    osg::View* view = aa.asView();
+    updateCamera( view->getCamera() );
 
     if ( ea.getEventType() == osgGA::GUIEventAdapter::FRAME )
     {
@@ -1191,13 +1330,6 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
         // this factor adjusts for the variation of frame rate relative to 60fps
         _t_factor = _delta_t / 0.01666666666;
 
-        //OE_NOTICE
-        //    << "center=(" << _center.x() << "," << _center.y() << "," << _center.z() << ")"
-        //    << ", dist=" << _distance
-        //    << ", p=" << _local_pitch
-        //    << ", h=" << _local_azim
-        //    << std::endl;
-
         if ( _has_pending_viewpoint && _node.valid() )
         {
             _has_pending_viewpoint = false;
@@ -1205,10 +1337,14 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
             aa.requestRedraw();
         }
 
-        if ( _setting_viewpoint )
+        else if ( _setting_viewpoint && _node.valid() )
         {
+            if ( _frame_count < 2 )
+                _time_s_set_viewpoint = _time_s_now;
+
             updateSetViewpoint();
-            aa.requestRedraw();
+
+            aa.requestContinuousUpdate( _setting_viewpoint );
         }
 
         if ( _thrown || _continuous )
@@ -1223,13 +1359,23 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
             _continuous_dy = 0.0;
         }
         
-        if ( _task.valid() )
+        if ( _task.valid() && _task->_type != TASK_NONE )
         {
-            if ( serviceTask() )
+            bool stillRunning = serviceTask();
+            if ( stillRunning ) 
+            {
+                aa.requestContinuousUpdate( true );
+            }
+            else
+            {
+                // turn off the continuous, but we still need one last redraw
+                // to process the final state.
+                aa.requestContinuousUpdate( false );
                 aa.requestRedraw();
+            }
         }
 
-        _after_first_frame = true;
+        _frame_count++;
 
         return false;
     }
@@ -1243,6 +1389,22 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
    
     // form the current Action based on the event type:
     Action action = ACTION_NULL;
+    _time_s_now = osg::Timer::instance()->time_s();
+
+    // if tethering is active, check to see whether the incoming event 
+    // will break the tether.
+    if ( _tether_node.valid() )
+    {
+        const ActionTypeVector& atv = _settings->getBreakTetherActions();
+        if ( atv.size() > 0 )
+        {
+            const Action& action = _settings->getAction( ea.getEventType(), ea.getButtonMask(), ea.getModKeyMask() );
+            if ( std::find(atv.begin(), atv.end(), action._type) != atv.end() )
+            {
+                setTetherNode( 0L );
+            }
+        }
+    }
 
     switch( ea.getEventType() )
     {
@@ -1260,9 +1422,11 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
             {
                 // bail out of continuous mode if necessary:
                 _continuous = false;
+                aa.requestContinuousUpdate( false );
             }
             else
             {
+#if 0 // disabled - not implemented
                 // check for a mouse-throw continuation:
                 if ( _settings->getThrowingEnabled() && isMouseMoving() )
                 {
@@ -1274,7 +1438,9 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
                         _thrown = true;
                     }
                 }
-                else if ( isMouseClick( &ea ) )
+                else 
+#endif
+                if ( isMouseClick( &ea ) )
                 {
                     addMouseEvent( ea );
                     if ( _mouse_down_event )
@@ -1297,16 +1463,15 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
         case osgGA::GUIEventAdapter::DOUBLECLICK:
             // bail out of continuous mode if necessary:
             _continuous = false;
-
             addMouseEvent( ea );
-			if (_mouse_down_event)
-			{
-				action = _settings->getAction( EVENT_MOUSE_DOUBLE_CLICK, _mouse_down_event->getButtonMask(), _mouse_down_event->getModKeyMask() );
-				if ( handlePointAction( action, ea.getX(), ea.getY(), aa.asView() ) )
-					aa.requestRedraw();
-				resetMouse( aa );
-				handled = true;
-			}
+            if (_mouse_down_event)
+            {
+                action = _settings->getAction( ea.getEventType(), _mouse_down_event->getButtonMask(), _mouse_down_event->getModKeyMask() );
+                if ( handlePointAction( action, ea.getX(), ea.getY(), aa.asView() ) )
+                    aa.requestRedraw();
+                resetMouse( aa );
+                handled = true;
+            }
             break;
 
         case osgGA::GUIEventAdapter::MOVE: // MOVE not currently bindable
@@ -1317,10 +1482,15 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
             {
                 action = _settings->getAction( ea.getEventType(), ea.getButtonMask(), ea.getModKeyMask() );
                 addMouseEvent( ea );
+                bool wasContinuous = _continuous;
                 _continuous = action.getBoolOption(OPTION_CONTINUOUS, false);
                 if ( handleMouseAction( action, aa.asView() ) )
                     aa.requestRedraw();
-                aa.requestContinuousUpdate(false);
+
+                if ( _continuous && !wasContinuous )
+                    _last_continuous_action_time = _time_s_now;
+
+                aa.requestContinuousUpdate(_continuous);
                 _thrown = false;
                 handled = true;
             }
@@ -1351,10 +1521,19 @@ EarthManipulator::handle(const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapt
                 aa.requestRedraw();
             handled = true;
             break;
+        default: break;
+    }
+
+    // if a new task was started, request continuous updates.
+    if ( _task.valid() && _task->_type != TASK_NONE )
+    {
+        aa.requestContinuousUpdate( true );
     }
 
     if ( handled && action._type != ACTION_NULL )
+    {
         _last_action = action;
+    }
 
     return handled;
 }
@@ -1372,100 +1551,88 @@ EarthManipulator::updateTether()
     osg::ref_ptr<osg::Node> temp = _tether_node.get();
     if ( temp.valid() )
     {
+        osg::Matrix localToWorld;
 
-		osg::NodePathList nodePaths = temp->getParentalNodePaths();
-        if ( nodePaths.empty() )
-            return;
-        osg::NodePath path = nodePaths[0];
+        if ( _tether_xform )
+        {
+            osg::NodePathList nodePaths = _tether_xform->getParentalNodePaths();
+            if ( nodePaths.empty() )
+                return;
+            localToWorld = osg::computeLocalToWorld( nodePaths[0] );
+            //setCenter( localToWorld.getTrans() + (localToWorld.getRotate() * _tether_local_center) );
+            setCenter( _tether_local_center * localToWorld );
+        }
+        else
+        {
+            osg::NodePathList nodePaths = temp->getParentalNodePaths();
+            if ( nodePaths.empty() )
+                return;
+            localToWorld = osg::computeLocalToWorld( nodePaths[0] );
+            setCenter( localToWorld.getTrans() );
+        }
+
+        _previousUp = getUpVector( _centerLocalToWorld );
 
-        osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
-        _center = osg::Vec3d(0,0,0) * localToWorld;
+        double sx = 1.0/sqrt(localToWorld(0,0)*localToWorld(0,0) + localToWorld(1,0)*localToWorld(1,0) + localToWorld(2,0)*localToWorld(2,0));
+        double sy = 1.0/sqrt(localToWorld(0,1)*localToWorld(0,1) + localToWorld(1,1)*localToWorld(1,1) + localToWorld(2,1)*localToWorld(2,1));
+        double sz = 1.0/sqrt(localToWorld(0,2)*localToWorld(0,2) + localToWorld(1,2)*localToWorld(1,2) + localToWorld(2,2)*localToWorld(2,2));
+        localToWorld = localToWorld*osg::Matrixd::scale(sx,sy,sz);
 
-        // if the tether node is a MT, we are set. If it's not, we need to get the
-        // local bound and add its translation to the localToWorld. We cannot just use
-        // the bounds directly because they are single precision (unless you built OSG
-        // with double-precision bounding spheres, which you probably did not :)
-        if ( !dynamic_cast<osg::MatrixTransform*>( temp.get() ) )
+        //Just track the center
+        if (_settings->getTetherMode() == TETHER_CENTER)
         {
-            const osg::BoundingSphere& bs = temp->getBound();
-            _center += bs.center();
+            _centerRotation = _centerLocalToWorld.getRotate();
+        }
+        //Track all rotations
+        else if (_settings->getTetherMode() == TETHER_CENTER_AND_ROTATION)
+        {
+            _centerRotation = localToWorld.getRotate();
+        }
+        else if (_settings->getTetherMode() == TETHER_CENTER_AND_HEADING)
+        {
+            //Track just the heading
+            osg::Matrixd localToFrame(localToWorld*osg::Matrixd::inverse( _centerLocalToWorld ));
+            double azim = atan2(-localToFrame(0,1),localToFrame(0,0));
+            osg::Quat nodeRotationRelToFrame, rotationOfFrame;
+            nodeRotationRelToFrame.makeRotate(-azim,0.0,0.0,1.0);
+            rotationOfFrame = _centerLocalToWorld.getRotate();
+            _centerRotation = nodeRotationRelToFrame*rotationOfFrame;
         }
-
-        //OE_INFO
-        //    << std::fixed << std::setprecision(3)
-        //    << "Tether center: (" << _center.x() << "," << _center.y() << "," << _center.z()
-        //    << "); bbox center: (" << bs.center().x() << "," << bs.center().y() << "," << bs.center().z() << ")"
-        //    << std::endl;
-
-		osg::CoordinateFrame local_frame = getMyCoordinateFrame( _center ); //getCoordinateFrame( _center );
-	    _previousUp = getUpVector( local_frame );
-
-//			osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
-		double sx = 1.0/sqrt(localToWorld(0,0)*localToWorld(0,0) + localToWorld(1,0)*localToWorld(1,0) + localToWorld(2,0)*localToWorld(2,0));
-		double sy = 1.0/sqrt(localToWorld(0,1)*localToWorld(0,1) + localToWorld(1,1)*localToWorld(1,1) + localToWorld(2,1)*localToWorld(2,1));
-		double sz = 1.0/sqrt(localToWorld(0,2)*localToWorld(0,2) + localToWorld(1,2)*localToWorld(1,2) + localToWorld(2,2)*localToWorld(2,2));
-		localToWorld = localToWorld*osg::Matrixd::scale(sx,sy,sz);
-
-        // didn't we just call this a few lines ago?
-	    //osg::CoordinateFrame coordinateFrame = getMyCoordinateFrame( _center ); //getCoordinateFrame(_center);
-
-		//Just track the center
-		if (_settings->getTetherMode() == TETHER_CENTER)
-		{
-			_centerRotation = local_frame.getRotate(); //coordinateFrame.getRotate();
-		}
-		//Track all rotations
-		else if (_settings->getTetherMode() == TETHER_CENTER_AND_ROTATION)
-		{
-		  _centerRotation = localToWorld.getRotate();
-		}
-		else if (_settings->getTetherMode() == TETHER_CENTER_AND_HEADING)
-		{
-			//Track just the heading
-			osg::Matrixd localToFrame(localToWorld*osg::Matrixd::inverse( local_frame )); //coordinateFrame));
-			double azim = atan2(-localToFrame(0,1),localToFrame(0,0));
-			osg::Quat nodeRotationRelToFrame, rotationOfFrame;
-			nodeRotationRelToFrame.makeRotate(-azim,0.0,0.0,1.0);
-			rotationOfFrame = local_frame.getRotate(); //coordinateFrame.getRotate();
-			_centerRotation = nodeRotationRelToFrame*rotationOfFrame;
-		}
     }
 }
 
 bool
 EarthManipulator::serviceTask()
 {
-    bool result;
-
     if ( _task.valid() && _task->_type != TASK_NONE )
     {
+        double dt = _time_s_now - _task->_time_last_service;
+
         switch( _task->_type )
         {
             case TASK_PAN:
-                pan( _delta_t * _task->_dx, _delta_t * _task->_dy );
+                pan( dt * _task->_dx, dt * _task->_dy );
                 break;
             case TASK_ROTATE:
-                rotate( _delta_t * _task->_dx, _delta_t * _task->_dy );
+                rotate( dt * _task->_dx, dt * _task->_dy );
                 break;
             case TASK_ZOOM:
-                zoom( _delta_t * _task->_dx, _delta_t * _task->_dy );
+                zoom( dt * _task->_dx, dt * _task->_dy );
                 break;
             default: break;
         }
 
-        _task->_duration_s -= _delta_t;
+        _task->_duration_s -= dt;
+        _task->_time_last_service = _time_s_now;
+
         if ( _task->_duration_s <= 0.0 )
+        {
             _task->_type = TASK_NONE;
-
-        result = true;
-    }
-    else
-    {
-        result = false;
+        }
     }
 
-    //_time_last_frame = now;
-    return result;
+    // returns true if the task is still running.
+    return _task.valid() && _task->_type != TASK_NONE;
 }
 
 bool
@@ -1525,7 +1692,7 @@ EarthManipulator::setByMatrix(const osg::Matrixd& matrix)
 
     if ( !safeNode.valid() )
     {
-        _center = eye + lookVector;
+        setCenter( eye + lookVector );
         setDistance( lookVector.length() );
         _rotation = matrix.getRotate().inverse() * _centerRotation.inverse();	
         return;
@@ -1541,7 +1708,7 @@ EarthManipulator::setByMatrix(const osg::Matrixd& matrix)
     bool hitFound = false;
     if (intersect(start_segment, end_segment, ip))
     {
-        _center = ip;
+        setCenter( ip );
         _centerRotation = makeCenterRotation(_center);
         setDistance( (eye-ip).length());
 
@@ -1554,43 +1721,45 @@ EarthManipulator::setByMatrix(const osg::Matrixd& matrix)
 
     if (!hitFound)
     {
-        osg::CoordinateFrame eyePointCoordFrame = getMyCoordinateFrame( eye ); //getCoordinateFrame( eye );
+        osg::CoordinateFrame eyeCoordFrame;
+        createLocalCoordFrame( eye, eyeCoordFrame );
+
+        osg::Vec3d eyeUp = getUpVector(eyeCoordFrame);
 
-        if (intersect(eye+getUpVector(eyePointCoordFrame)*distance,
-                      eye-getUpVector(eyePointCoordFrame)*distance,
-                      ip))
+        if (intersect(eye + eyeUp*distance, eye - eyeUp*distance, ip))
         {
-            _center = ip;
+            setCenter( ip );
             _centerRotation = makeCenterRotation(_center);
             setDistance((eye-ip).length());
-			_rotation.set(0,0,0,1);
+            _rotation.set(0,0,0,1);
             hitFound = true;
         }
     }
 
-    osg::CoordinateFrame coordinateFrame = getMyCoordinateFrame( _center ); //getCoordinateFrame( _center );
-    _previousUp = getUpVector(coordinateFrame);
+    //osg::CoordinateFrame coordinateFrame;
+    //createLocalCoordFrame( _center, coordinateFrame );
+    _previousUp = getUpVector(_centerLocalToWorld);
 
     recalculateRoll();
-    recalculateLocalPitchAndAzimuth();
+    //recalculateLocalPitchAndAzimuth();
 }
 
 osg::Matrixd
 EarthManipulator::getMatrix() const
 {
     return osg::Matrixd::translate(-_offset_x,-_offset_y,_distance)*
-		   osg::Matrixd::rotate(_rotation)*
-		   osg::Matrixd::rotate(_centerRotation)*
-		   osg::Matrixd::translate(_center);
+           osg::Matrixd::rotate(_rotation)*
+           osg::Matrixd::rotate(_centerRotation)*
+           osg::Matrixd::translate(_center);
 }
 
 osg::Matrixd
 EarthManipulator::getInverseMatrix() const
 {
     return osg::Matrixd::translate(-_center)*
-		   osg::Matrixd::rotate(_centerRotation.inverse() ) *
-		   osg::Matrixd::rotate(_rotation.inverse())*
-		   osg::Matrixd::translate(_offset_x,_offset_y,-_distance);
+           osg::Matrixd::rotate(_centerRotation.inverse() ) *
+           osg::Matrixd::rotate(_rotation.inverse())*
+           osg::Matrixd::translate(_offset_x,_offset_y,-_distance);
 }
 
 void
@@ -1603,7 +1772,7 @@ EarthManipulator::setByLookAt(const osg::Vec3d& eye,const osg::Vec3d& center,con
     // compute rotation matrix
     osg::Vec3d lv(center-eye);
     setDistance( lv.length() );
-    _center = center;
+    setCenter( center );
 
     if (_node.valid())
     {
@@ -1622,7 +1791,7 @@ EarthManipulator::setByLookAt(const osg::Vec3d& eye,const osg::Vec3d& center,con
             osg::Vec3d ip;
             if (intersect(eye, endPoint, ip))
             {
-                _center = ip;
+                setCenter( ip );
                 setDistance( (ip-eye).length() );
                 hitFound = true;
             }
@@ -1635,67 +1804,65 @@ EarthManipulator::setByLookAt(const osg::Vec3d& eye,const osg::Vec3d& center,con
     osg::Matrixd rotation_matrix = osg::Matrixd::lookAt(eye,center,up);
 
     _centerRotation = getRotation( _center ).getRotate().inverse();
-	_rotation = rotation_matrix.getRotate().inverse() * _centerRotation.inverse();	
-	
-
-    osg::CoordinateFrame coordinateFrame = getMyCoordinateFrame( _center ); //getCoordinateFrame(_center);
-    _previousUp = getUpVector(coordinateFrame);
+    _rotation = rotation_matrix.getRotate().inverse() * _centerRotation.inverse();	
+    
+    _previousUp = getUpVector(_centerLocalToWorld);
 
     recalculateRoll();
-    recalculateLocalPitchAndAzimuth();
 }
 
 
 void
-EarthManipulator::recalculateCenter( const osg::CoordinateFrame& coordinateFrame )
+EarthManipulator::recalculateCenter( const osg::CoordinateFrame& frame )
 {
     osg::ref_ptr<osg::Node> safeNode = _node.get();
     if ( safeNode.valid() )
     {
         bool hitFound = false;
 
+        //osg::Vec3d eye = getMatrix().getTrans();
+
         // need to reintersect with the terrain
-        double distance = safeNode->getBound().radius()*0.25f;
-
-        //OE_NOTICE
-        //    << std::fixed
-        //    << "ISECT: center=(" << _center.x() << "," << _center.y() << "," << _center.y() << ")"
-        //    << ", distnace=" << distance
-        //    << std::endl;
-
-        //osg::Vec3d ev = getUpVector(coordinateFrame);
-        //osg::Vec3d ip;
-        //if ( intersect( _center -ev * distance, _center + ev*distance, ip ) )
-        //{
-        //    _center = ip;
-        //    hitFound = true;
-        //}
+        double ilen = safeNode->getBound().radius()*0.25f;
+
+        osg::Vec3d up = getUpVector(frame);
 
         osg::Vec3d ip1;
         osg::Vec3d ip2;
         // extend coordonate to fall on the edge of the boundingbox see http://www.osgearth.org/ticket/113
-        bool hit_ip1 = intersect(_center - getUpVector(coordinateFrame) * distance * 0.1, _center + getUpVector(coordinateFrame) * distance, ip1);
-        bool hit_ip2 = intersect(_center + getUpVector(coordinateFrame) * distance * 0.1, _center - getUpVector(coordinateFrame) * distance, ip2);
+        bool hit_ip1 = intersect(_center - up * ilen * 0.1, _center + up * ilen, ip1);
+        bool hit_ip2 = intersect(_center + up * ilen * 0.1, _center - up * ilen, ip2);
         if (hit_ip1)
         {
             if (hit_ip2)
             {
-                _center = (_center-ip1).length2() < (_center-ip2).length2() ? ip1 : ip2;
+                setCenter( (_center-ip1).length2() < (_center-ip2).length2() ? ip1 : ip2 );
                 hitFound = true;
             }
             else
             {
-                _center = ip1;
+                setCenter( ip1 );
                 hitFound = true;
             }
         }
         else if (hit_ip2)
         {
-            _center = ip2;
+            setCenter( ip2 );
             hitFound = true;
         }
 
-        if (!hitFound)
+        if (hitFound)
+        {
+#if 0
+            // recalculate the distance based on the current eyepoint:
+            double oldDistance = _distance;
+            double newDistance = (eye-_center).length();
+            setDistance( newDistance );
+            OE_NOTICE << "OLD = " << oldDistance << ", NEW = " << newDistance << std::endl;
+#endif
+        }
+
+        else // if (!hitFound)
         {
             // ??
             //OE_DEBUG<<"EarthManipulator unable to intersect with terrain."<<std::endl;
@@ -1707,153 +1874,149 @@ EarthManipulator::recalculateCenter( const osg::CoordinateFrame& coordinateFrame
 void
 EarthManipulator::pan( double dx, double dy )
 {
-	//OE_NOTICE << "pan " << dx << "," << dy <<  std::endl;
-	if (!_tether_node.valid())
-	{
-		double scale = -0.3f*_distance;
-		//double old_azim = _local_azim;
-		double old_azim = getAzimuth();
-
-		osg::Matrixd rotation_matrix;// = getMatrix();
-		rotation_matrix.makeRotate( _rotation * _centerRotation  );
+    //OE_NOTICE << "pan " << dx << "," << dy <<  std::endl;
+    if (!_tether_node.valid())
+    {
+        double scale = -0.3f*_distance;
+        double old_azim;
+        getLocalEulerAngles( &old_azim );
 
-		// compute look vector.
-		osg::Vec3d lookVector = -getUpVector(rotation_matrix);
-		osg::Vec3d sideVector = getSideVector(rotation_matrix);
-		osg::Vec3d upVector = getFrontVector(rotation_matrix);
+        osg::Matrixd rotation_matrix;
+        rotation_matrix.makeRotate( _rotation * _centerRotation  );
 
-		osg::Vec3d localUp = _previousUp;
+        // compute look vector.
+        osg::Vec3d lookVector = -getUpVector(rotation_matrix);
+        osg::Vec3d sideVector = getSideVector(rotation_matrix);
+        osg::Vec3d upVector = getFrontVector(rotation_matrix);
 
-		osg::Vec3d forwardVector =localUp^sideVector;
-		sideVector = forwardVector^localUp;
+        osg::Vec3d localUp = _previousUp;
 
-		forwardVector.normalize();
-		sideVector.normalize();
+        osg::Vec3d forwardVector =localUp^sideVector;
+        sideVector = forwardVector^localUp;
 
-		osg::Vec3d dv = forwardVector * (dy*scale) + sideVector * (dx*scale);
+        forwardVector.normalize();
+        sideVector.normalize();
 
-		// save the previous CF so we can do azimuth locking:
-		osg::CoordinateFrame old_frame = getMyCoordinateFrame( _center ); //getCoordinateFrame( _center );
+        osg::Vec3d dv = forwardVector * (dy*scale) + sideVector * (dx*scale);
 
-		_center += dv;
+        // save the previous CF so we can do azimuth locking:
+        osg::CoordinateFrame oldCenterLocalToWorld = _centerLocalToWorld;
 
-		// need to recompute the intersection point along the look vector.
+        // move the cente rpoint:
+        setCenter( _center + dv );
 
+        // need to recompute the intersection point along the look vector.
         osg::ref_ptr<osg::Node> safeNode = _node.get();
-		if (safeNode.valid())
-		{
-			// now reorientate the coordinate frame to the frame coords.
-			osg::CoordinateFrame coordinateFrame = old_frame; // getCoordinateFrame(_center);
-
-			recalculateCenter( coordinateFrame );
-
-			coordinateFrame = getMyCoordinateFrame( _center ); // getCoordinateFrame(_center);
-			osg::Vec3d new_localUp = getUpVector(coordinateFrame);
-
-			osg::Quat pan_rotation;
-			pan_rotation.makeRotate( localUp, new_localUp );
-
-			if ( !pan_rotation.zeroRotation() )
-			{
-				_centerRotation = _centerRotation * pan_rotation;
-				_previousUp = new_localUp;
-			}
-			else
-			{
-				//OE_DEBUG<<"New up orientation nearly inline - no need to rotate"<<std::endl;
-			}
-
-			if ( _settings->getLockAzimuthWhilePanning() )
-			{
-				double new_azim = getAzimuth();
-				double delta_azim = new_azim - old_azim;
-				//OE_NOTICE << "DeltaAzim" << delta_azim << std::endl;
-
-				osg::Quat q;
-				q.makeRotate( delta_azim, new_localUp );
-				if ( !q.zeroRotation() )
-				{
-					_centerRotation = _centerRotation * q;
-				}
-			}
-		}
-
-		recalculateLocalPitchAndAzimuth();
-	}
-	else
-	{
-		double scale = _distance;
-		_offset_x += dx * scale;
-		_offset_y += dy * scale;
-
-		//Clamp values within range
-		if (_offset_x < -_settings->getMaxXOffset()) _offset_x = -_settings->getMaxXOffset();
-		if (_offset_y < -_settings->getMaxYOffset()) _offset_y = -_settings->getMaxYOffset();
-		if (_offset_x > _settings->getMaxXOffset()) _offset_x = _settings->getMaxXOffset();
-		if (_offset_y > _settings->getMaxYOffset()) _offset_y = _settings->getMaxYOffset();
-	}
+        if (safeNode.valid())
+        {
+            recalculateCenter( oldCenterLocalToWorld );
+
+            osg::Vec3d new_localUp = getUpVector( _centerLocalToWorld );
+
+            osg::Quat pan_rotation;
+            pan_rotation.makeRotate( localUp, new_localUp );
+
+            if ( !pan_rotation.zeroRotation() )
+            {
+                _centerRotation = _centerRotation * pan_rotation;
+                _previousUp = new_localUp;
+            }
+            else
+            {
+                //OE_DEBUG<<"New up orientation nearly inline - no need to rotate"<<std::endl;
+            }
+
+            if ( _settings->getLockAzimuthWhilePanning() )
+            {
+                double new_azim;
+                getLocalEulerAngles( &new_azim );
+
+                double delta_azim = new_azim - old_azim;
+                //OE_NOTICE << "DeltaAzim" << delta_azim << std::endl;
+
+                osg::Quat q;
+                q.makeRotate( delta_azim, new_localUp );
+                if ( !q.zeroRotation() )
+                {
+                    _centerRotation = _centerRotation * q;
+                }
+            }
+        }
+
+        //recalculateLocalPitchAndAzimuth();
+    }
+    else
+    {
+        double scale = _distance;
+        _offset_x += dx * scale;
+        _offset_y += dy * scale;
+
+        //Clamp values within range
+        if (_offset_x < -_settings->getMaxXOffset()) _offset_x = -_settings->getMaxXOffset();
+        if (_offset_y < -_settings->getMaxYOffset()) _offset_y = -_settings->getMaxYOffset();
+        if (_offset_x > _settings->getMaxXOffset()) _offset_x = _settings->getMaxXOffset();
+        if (_offset_y > _settings->getMaxYOffset()) _offset_y = _settings->getMaxYOffset();
+    }
 }
 
 void
 EarthManipulator::rotate( double dx, double dy )
 {
-	//OE_NOTICE << "rotate " << dx <<", " << dy << std::endl;
+    //OE_NOTICE << "rotate " << dx <<", " << dy << std::endl;
     // clamp the local pitch delta; never allow the pitch to hit -90.
-    double minp = osg::DegreesToRadians( osg::clampAbove( _settings->getMinPitch(), -89.9 ) );
-    double maxp = osg::DegreesToRadians( _settings->getMaxPitch() );
 
-    //OE_NOTICE << LC 
-    //    << "LocalPitch=" << osg::RadiansToDegrees(_local_pitch)
-    //    << ", dy=" << osg::RadiansToDegrees(dy)
-    //    << ", dy+lp=" << osg::RadiansToDegrees(_local_pitch+dy)
-    //    << ", limits=" << osg::RadiansToDegrees(minp) << "," << osg::RadiansToDegrees(maxp)
-    //    << std::endl;
+    bool tether = _tether_node.valid();
+    double minp = osg::DegreesToRadians( osg::clampAbove(_settings->getMinPitch(), -89.9) );
+    double maxp = osg::DegreesToRadians( osg::clampBelow(_settings->getMaxPitch(), tether? 89.9 : -1.0) );
+
+#if 0
+    OE_NOTICE << LC 
+        << "LocalPitch=" << osg::RadiansToDegrees(_local_pitch)
+        << ", dy=" << osg::RadiansToDegrees(dy)
+        << ", dy+lp=" << osg::RadiansToDegrees(_local_pitch+dy)
+        << ", limits=" << osg::RadiansToDegrees(minp) << "," << osg::RadiansToDegrees(maxp)
+        << std::endl;
+#endif
 
     // clamp pitch range:
-    if ( dy + _local_pitch > maxp || dy + _local_pitch < minp )
+    double oldPitch;
+    getLocalEulerAngles( 0L, &oldPitch );
+
+    if ( dy + oldPitch > maxp || dy + oldPitch < minp )
         dy = 0;
 
-	osg::Matrix rotation_matrix;
-	rotation_matrix.makeRotate(_rotation);
+    osg::Matrix rotation_matrix;
+    rotation_matrix.makeRotate(_rotation);
 
-	osg::Vec3d lookVector = -getUpVector(rotation_matrix);
-	osg::Vec3d sideVector = getSideVector(rotation_matrix);
-	osg::Vec3d upVector = getFrontVector(rotation_matrix);
+    osg::Vec3d lookVector = -getUpVector(rotation_matrix);
+    osg::Vec3d sideVector = getSideVector(rotation_matrix);
+    osg::Vec3d upVector = getFrontVector(rotation_matrix);
 
-	osg::Vec3d localUp(0.0f,0.0f,1.0f);
+    osg::Vec3d localUp(0.0f,0.0f,1.0f);
 
-	osg::Vec3d forwardVector = localUp^sideVector;
-	sideVector = forwardVector^localUp;
+    osg::Vec3d forwardVector = localUp^sideVector;
+    sideVector = forwardVector^localUp;
 
-	forwardVector.normalize();
-	sideVector.normalize();
+    forwardVector.normalize();
+    sideVector.normalize();
 
-	osg::Quat rotate_elevation;
-	rotate_elevation.makeRotate(dy,sideVector);
+    osg::Quat rotate_elevation;
+    rotate_elevation.makeRotate(dy,sideVector);
 
-	osg::Quat rotate_azim;
-	rotate_azim.makeRotate(-dx,localUp);
+    osg::Quat rotate_azim;
+    rotate_azim.makeRotate(-dx,localUp);
 
-	_rotation = _rotation * rotate_elevation * rotate_azim;
-	recalculateLocalPitchAndAzimuth();
+    _rotation = _rotation * rotate_elevation * rotate_azim;
 }
 
 void
 EarthManipulator::zoom( double dx, double dy )
-{
-    double fd = 1000;
+{    
     double scale = 1.0f + dy;
-
-    if ( fd * scale > _settings->getMinDistance() )
-    {
-        setDistance( _distance * scale );
-    }
-    else
-    {
-		setDistance( _settings->getMinDistance() );
-    }
+    setDistance( _distance * scale );    
 }
 
+
 bool
 EarthManipulator::screenToWorld(float x, float y, osg::View* theView, osg::Vec3d& out_coords ) const
 {
@@ -1861,20 +2024,49 @@ EarthManipulator::screenToWorld(float x, float y, osg::View* theView, osg::Vec3d
     if ( !view || !view->getCamera() )
         return false;
 
-    float local_x, local_y = 0.0;    
+    osg::NodePath nodePath;
+    _csnObserverPath.getNodePath(nodePath);
+    if ( nodePath.empty() )
+        return false;
+
+    float local_x, local_y = 0.0;
     const osg::Camera* camera = view->getCameraContainingPosition(x, y, local_x, local_y);
     if ( !camera )
-        camera = view->getCamera();
+        return false;
+
+    osg::Matrixd matrix;
+    if (nodePath.size()>1)
+    {
+        osg::NodePath prunedNodePath(nodePath.begin(),nodePath.end()-1);
+        matrix = osg::computeLocalToWorld(prunedNodePath);
+    }
+
+    matrix.postMult(camera->getViewMatrix());
+    matrix.postMult(camera->getProjectionMatrix());
+
+    double zNear = -1.0;
+    double zFar = 1.0;
+    if (camera->getViewport())
+    {
+        matrix.postMult(camera->getViewport()->computeWindowMatrix());
+        zNear = 0.0;
+        zFar = 1.0;
+    }
+
+    osg::Matrixd inverse;
+    inverse.invert(matrix);
+
+    osg::Vec3d startVertex = osg::Vec3d(local_x,local_y,zNear) * inverse;
+    osg::Vec3d endVertex = osg::Vec3d(local_x,local_y,zFar) * inverse;
 
-    osgUtil::LineSegmentIntersector::CoordinateFrame cf = 
-        camera->getViewport() ? osgUtil::Intersector::WINDOW : osgUtil::Intersector::PROJECTION;
+	osg::ref_ptr<osgUtil::LineSegmentIntersector> picker = NULL;
 
-    osg::ref_ptr< osgUtil::LineSegmentIntersector > picker = new osgUtil::LineSegmentIntersector(cf, local_x, local_y);
+	picker = new osgEarth::DPLineSegmentIntersector(osgUtil::Intersector::MODEL, startVertex, endVertex);	
+	//picker = new osgUtil::LineSegmentIntersector(osgUtil::Intersector::MODEL, startVertex, endVertex);	
 
     osgUtil::IntersectionVisitor iv(picker.get());
     iv.setTraversalMask(_intersectTraversalMask);
-
-    const_cast<osg::Camera*>(camera)->accept(iv);
+    nodePath.back()->accept(iv);
 
     if ( picker->containsIntersections() )
     {
@@ -1886,10 +2078,11 @@ EarthManipulator::screenToWorld(float x, float y, osg::View* theView, osg::Vec3d
     return false;
 }
 
+
 void
 EarthManipulator::setDistance( double distance )
 {
-	_distance = osg::clampBetween( distance, _settings->getMinDistance(), _settings->getMaxDistance() );
+    _distance = osg::clampBetween( distance, _settings->getMinDistance(), _settings->getMaxDistance() );
 }
 
 void
@@ -1916,6 +2109,7 @@ EarthManipulator::handleMovementAction( const ActionType& type, double dx, doubl
 {
     switch( type )
     {
+    default:break;
     case ACTION_PAN:
         pan( dx, dy );
         break;
@@ -1955,17 +2149,15 @@ EarthManipulator::handlePointAction( const Action& action, float mx, float my, o
         switch( action._type )
         {
             case ACTION_GOTO:
+            {
                 Viewpoint here = getViewpoint();
 
-                if ( getSRS() && _is_geocentric )
-                {
-                    double lat_r, lon_r, h;
-                    getSRS()->getEllipsoid()->convertXYZToLatLongHeight(
-                        point.x(), point.y(), point.z(),
-                        lat_r, lon_r, h );
-                    point.set( osg::RadiansToDegrees(lon_r), osg::RadiansToDegrees(lat_r), h );
-                }
-                here.setFocalPoint( point );
+                if ( !here.getSRS() )
+                    return false;
+
+                osg::Vec3d pointVP;
+                here.getSRS()->transformFromWorld(point, pointVP);
+                here.setFocalPoint( pointVP );
 
                 double duration_s = action.getDoubleOption(OPTION_DURATION, 1.0);
                 double range_factor = action.getDoubleOption(OPTION_GOTO_RANGE_FACTOR, 1.0);
@@ -1973,7 +2165,10 @@ EarthManipulator::handlePointAction( const Action& action, float mx, float my, o
                 here.setRange( here.getRange() * range_factor );
 
                 setViewpoint( here, duration_s );
-                break;
+            }
+            break;
+            default:
+            break;
         }
     }
     return true;
@@ -1982,7 +2177,9 @@ EarthManipulator::handlePointAction( const Action& action, float mx, float my, o
 void
 EarthManipulator::handleContinuousAction( const Action& action, osg::View* view )
 {
-    handleMovementAction( action._type, _continuous_dx * _t_factor, _continuous_dy * _t_factor, view );
+    double t_factor = (_time_s_now - _last_continuous_action_time)/0.016666666;
+    _last_continuous_action_time = _time_s_now;
+    handleMovementAction( action._type, _continuous_dx * t_factor, _continuous_dy * t_factor, view );
 }
 
 void
@@ -2054,6 +2251,7 @@ EarthManipulator::handleKeyboardAction( const Action& action, double duration )
     case DIR_RIGHT: dx = -1; break;
     case DIR_UP:    dy = -1; break;
     case DIR_DOWN:  dy =  1; break;
+    default: break;
     }
 
     dx *= _settings->getKeyboardSensitivity();
@@ -2077,6 +2275,7 @@ EarthManipulator::handleScrollAction( const Action& action, double duration )
     case DIR_RIGHT: dx = -1; break;
     case DIR_UP:    dy = -1; break;
     case DIR_DOWN:  dy =  1; break;
+    default: break;
     }
 
     dx *= scrollFactor * _settings->getScrollSensitivity();
@@ -2104,12 +2303,6 @@ EarthManipulator::handleAction( const Action& action, double dx, double dy, doub
         {
             setViewpoint( _homeViewpoint.value(), _homeViewpointDuration );
         }
-        //else
-        //{
-        //    if ( getAutoComputeHomePosition() )
-        //        computeHomePosition();
-        //    setByLookAt( _homeEye, _homeCenter, _homeUp );
-        //}
         break;
 
 
@@ -2118,7 +2311,7 @@ EarthManipulator::handleAction( const Action& action, double dx, double dy, doub
     case ACTION_PAN_RIGHT:
     case ACTION_PAN_UP:
     case ACTION_PAN_DOWN:
-        _task->set( TASK_PAN, dx, dy, duration );
+        _task->set( TASK_PAN, dx, dy, duration, _time_s_now );
         break;
 
     case ACTION_ROTATE:
@@ -2126,13 +2319,13 @@ EarthManipulator::handleAction( const Action& action, double dx, double dy, doub
     case ACTION_ROTATE_RIGHT:
     case ACTION_ROTATE_UP:
     case ACTION_ROTATE_DOWN:
-        _task->set( TASK_ROTATE, dx, dy, duration );
+        _task->set( TASK_ROTATE, dx, dy, duration, _time_s_now );
         break;
 
     case ACTION_ZOOM:
     case ACTION_ZOOM_IN:
     case ACTION_ZOOM_OUT:
-        _task->set( TASK_ZOOM, dx, dy, duration );
+        _task->set( TASK_ZOOM, dx, dy, duration, _time_s_now );
         break;
 
     default:
@@ -2151,8 +2344,7 @@ EarthManipulator::recalculateRoll()
     osg::Vec3d lookVector = -getUpVector(rotation_matrix);
     osg::Vec3d upVector = getFrontVector(rotation_matrix);
 
-    osg::CoordinateFrame coordinateFrame = getMyCoordinateFrame( _center ); //getCoordinateFrame(_center);
-    osg::Vec3d localUp = getUpVector(coordinateFrame);
+    osg::Vec3d localUp = getUpVector(_centerLocalToWorld);
 
     osg::Vec3d sideVector = lookVector ^ localUp;
 
@@ -2177,38 +2369,35 @@ EarthManipulator::recalculateRoll()
     }
 }
 
-double
-EarthManipulator::getAzimuth() const
+void
+EarthManipulator::getLocalEulerAngles( double* out_azim, double* out_pitch ) const
 {
-	osg::Matrix m = getMatrix() * osg::Matrixd::inverse( getMyCoordinateFrame( _center ) ); //getCoordinateFrame( _center ) );
-    osg::Vec3d look = -getUpVector( m ); // -m(2,0), -m(2,1), -m(2,2)
+    osg::Matrix m = getMatrix() * osg::Matrixd::inverse(_centerLocalToWorld);
+    osg::Vec3d look = -getUpVector( m );
     osg::Vec3d up   =  getFrontVector( m );
-    //osg::Vec3d look( -m(2,0), -m(2,1), -m(2,2) );
     
     look.normalize();
     up.normalize();
 
-    double azim;    
-    if ( look.z() < -0.9 )
-        azim = atan2( up.x(), up.y() );
-    else if ( look.z() > 0.9 )
-        azim = atan2( -up.x(), -up.y() );
-    else
-        azim = atan2( look.x(), look.y() );
-
-    return normalizeAzimRad( azim );
-}
+    if ( out_azim )
+    {
+        if ( look.z() < -0.9 )
+            *out_azim = atan2( up.x(), up.y() );
+        else if ( look.z() > 0.9 )
+            *out_azim = atan2( -up.x(), -up.y() );
+        else
+            *out_azim = atan2( look.x(), look.y() );
 
+        *out_azim = normalizeAzimRad( *out_azim );
+    }
 
-void
-EarthManipulator::recalculateLocalPitchAndAzimuth()
-{
-	double r;
-	s_getHPRFromQuat( _rotation, _local_azim, _local_pitch, r);
-	_local_pitch -= osg::PI_2;
-	//OE_NOTICE << "Azim=" << osg::RadiansToDegrees(_local_azim) << " Pitch=" << osg::RadiansToDegrees(_local_pitch) << std::endl;
+    if ( out_pitch )
+    {
+        *out_pitch = asin( look.z() );
+    }
 }
 
+
 void
 EarthManipulator::setHomeViewpoint( const Viewpoint& vp, double duration_s )
 {
@@ -2216,137 +2405,141 @@ EarthManipulator::setHomeViewpoint( const Viewpoint& vp, double duration_s )
     _homeViewpointDuration = duration_s;
 }
 
-// Find the point on a line, specified by p1 and v, closest to another
-// point.
-osg::Vec3d closestPtOnLine(const osg::Vec3d& p1, const osg::Vec3d& v,
-                           const osg::Vec3d& p)
-{
-    double u = (p - p1) * v / v.length2();
-    return p1 + v * u;
-}
-
-// Intersection of line and plane
-bool findIntersectionWithPlane(const osg::Vec3d& normal, const osg::Vec3d& pt,
-                               const osg::Vec3d& p1, const osg::Vec3d& v,
-                               osg::Vec3d& result)
-{
-    double denom = normal * v;
-    if (osg::equivalent(0, denom))
-        return false;
-    double u = normal * (pt - p1) / denom;
-    result = p1 + v * u;
-    return true;
-}
-
-// Circle of intersection of two spheres. The circle is in the plane
-// normal to the line between the centers.
-bool sphereInterection(const osg::Vec3d& p0, double r0,
-                       const osg::Vec3d& p1, double r1,
-                       osg::Vec3d& resultCenter, double& r)
-{
-    using namespace osg;
-    Vec3d ptvec = (p1 - p0);
-    double d = ptvec.normalize();
-    if (d > r0 + r1)
-        return false;               // spheres are too far apart
-    else if (d < fabs(r0 - r1))
-        return false;               // One sphere is contained in the other
-    else if (equivalent(0, d) && equivalent(r0, r1))
-    {
-        resultCenter = p0;
-        r = r0;
-        return true;              // circles are coincident.
-    }
-    // distance from p0 to the line through the interection points
-    double a = (r0 * r0 - r1 * r1 + d * d) / (2 * d);
-    // distance from bisection of that line to the intersections
-    resultCenter = p0 + ptvec * a;
-    r = sqrt(r0 * r0 - a * a);
-    return true;
-}
 
-// Find a point on the sphere (center, radius) through which the tangent
-// through pt passes. The point lies in the plane defined by
-//the line pt->center and ray.
-osg::Vec3d calcTangentPoint(const osg::Vec3d& pt, const osg::Vec3d& center,
-                            double radius, const osg::Vec3d& ray)
+namespace // Utility functions for drag()
 {
-    using namespace osg;
-    // new sphere with center at midpoint between pt and input sphere
-    Vec3d center2 = (pt + center) / 2.0;
-    double rad2 = (pt - center2).length();
-    Vec3d resCtr;
-    double resRad;
-    // Use Thales' theorem, which states that a triangle inscribed in
-    // a circle, with two points on a diameter of the circle and the
-    // third on the circle, is a right triangle. Since one endpoint is
-    // the center of the original sphere (the earth) and the other is
-    // pt, we can get our tangent from that.
-    bool valid = sphereInterection(center, radius, center2, rad2, resCtr,
-                                   resRad);
-    if (!valid)
-        return Vec3d(0.0, 0.0, 0.0);
-    // Get the tangent point that lies in the plane of the ray and the
-    // center line. The sequence of cross products gives us the point
-    // that is closest to the ray, rather than the one on the other
-    // side of the sphere.
-    Vec3d toCenter = center - pt;
-    toCenter.normalize();
-    Vec3d normal = ray ^ toCenter;
-    normal.normalize();
-    Vec3d radial = toCenter ^ normal;
-    radial = radial * resRad;
-    Vec3d result = resCtr + radial;
-    return result;
-    
-}
-// Calculate a pointer click in eye coordinates
-osg::Vec3d getWindowPoint(osgViewer::View* view, float x, float y)
-{
-    float local_x, local_y;
-    const osg::Camera* camera
-        = view->getCameraContainingPosition(x, y, local_x, local_y);
-    if (!camera)
-        camera = view->getCamera();
-    osg::Matrix winMat;
-    if (camera->getViewport())
-        winMat = camera->getViewport()->computeWindowMatrix();
-    osg::Matrix projMat = camera->getProjectionMatrix();
-    // ray from eye through pointer in camera coordinate system goes
-    // from origin through transformed pointer coordinates
-    osg::Matrix win2camera = projMat * winMat;
-    win2camera.invert(win2camera);
-    osg::Vec4d winpt4 = osg::Vec4d(x, y, 0.0, 1.0) * win2camera;
-    winpt4 = winpt4 / winpt4.w();
-    return osg::Vec3d(winpt4.x(), winpt4.y(), winpt4.z());
-}
+    // Find the point on a line, specified by p1 and v, closest to another
+    // point.
+    osg::Vec3d closestPtOnLine(const osg::Vec3d& p1, const osg::Vec3d& v,
+                               const osg::Vec3d& p)
+    {
+        double u = (p - p1) * v / v.length2();
+        return p1 + v * u;
+    }
 
-// Decompose  _center and _centerRotation into a longitude rotation
-// and a latitude rotation + translation in the longitudinal plane.
+    // Intersection of line and plane
+    bool findIntersectionWithPlane(const osg::Vec3d& normal, const osg::Vec3d& pt,
+                                   const osg::Vec3d& p1, const osg::Vec3d& v,
+                                   osg::Vec3d& result)
+    {
+        double denom = normal * v;
+        if (osg::equivalent(0, denom))
+            return false;
+        double u = normal * (pt - p1) / denom;
+        result = p1 + v * u;
+        return true;
+    }
 
-void decomposeCenter(const osg::Vec3d& center, const osg::Quat& centerRotation,
-                     osg::Matrix& Me, osg::Matrix& Mlon)
-{
-    using namespace osg;
-    Mlon.makeIdentity();
-    Matrix Mtotal(centerRotation);
-    Mtotal.setTrans(center);
-    // Use the X axis to determine longitude rotation. Due to the
-    // OpenGL camera rotation, this axis will be the Y axis of the
-    // longitude matrix.
-    Mlon(1, 0) = Mtotal(0, 0);  Mlon(1, 1) = Mtotal(0, 1);
-    // X axis is rotated 90 degrees, obviously
-    Mlon(0, 0) = Mlon(1, 1);  Mlon(0, 1) = -Mlon(1, 0);
-    Matrix MlonInv = Matrixd::inverse(Mlon);
-    Me = Mtotal * MlonInv;
-}
+    // Circle of intersection of two spheres. The circle is in the plane
+    // normal to the line between the centers.
+    bool sphereInterection(const osg::Vec3d& p0, double r0,
+                           const osg::Vec3d& p1, double r1,
+                           osg::Vec3d& resultCenter, double& r)
+    {
+        using namespace osg;
+        Vec3d ptvec = (p1 - p0);
+        double d = ptvec.normalize();
+        if (d > r0 + r1)
+            return false;               // spheres are too far apart
+        else if (d < fabs(r0 - r1))
+            return false;               // One sphere is contained in the other
+        else if (equivalent(0, d) && equivalent(r0, r1))
+        {
+            resultCenter = p0;
+            r = r0;
+            return true;              // circles are coincident.
+        }
+        // distance from p0 to the line through the interection points
+        double a = (r0 * r0 - r1 * r1 + d * d) / (2 * d);
+        // distance from bisection of that line to the intersections
+        resultCenter = p0 + ptvec * a;
+        r = sqrt(r0 * r0 - a * a);
+        return true;
+    }
 
-osg::Matrixd rotateAroundPoint(const osg::Vec3d& pt, double theta,
-                               const osg::Vec3d& axis)
-{
-    return (osg::Matrixd::translate(pt)
-            * osg::Matrixd::rotate(theta, axis)
-            * osg::Matrixd::translate(pt * -1.0));
+    // Find a point on the sphere (center, radius) through which the tangent
+    // through pt passes. The point lies in the plane defined by
+    //the line pt->center and ray.
+    osg::Vec3d calcTangentPoint(const osg::Vec3d& pt, const osg::Vec3d& center,
+                                double radius, const osg::Vec3d& ray)
+    {
+        using namespace osg;
+        // new sphere with center at midpoint between pt and input sphere
+        Vec3d center2 = (pt + center) / 2.0;
+        double rad2 = (pt - center2).length();
+        Vec3d resCtr;
+        double resRad;
+        // Use Thales' theorem, which states that a triangle inscribed in
+        // a circle, with two points on a diameter of the circle and the
+        // third on the circle, is a right triangle. Since one endpoint is
+        // the center of the original sphere (the earth) and the other is
+        // pt, we can get our tangent from that.
+        bool valid = sphereInterection(center, radius, center2, rad2, resCtr,
+                                       resRad);
+        if (!valid)
+            return Vec3d(0.0, 0.0, 0.0);
+        // Get the tangent point that lies in the plane of the ray and the
+        // center line. The sequence of cross products gives us the point
+        // that is closest to the ray, rather than the one on the other
+        // side of the sphere.
+        Vec3d toCenter = center - pt;
+        toCenter.normalize();
+        Vec3d normal = ray ^ toCenter;
+        normal.normalize();
+        Vec3d radial = toCenter ^ normal;
+        radial = radial * resRad;
+        Vec3d result = resCtr + radial;
+        return result;
+        
+    }
+    // Calculate a pointer click in eye coordinates
+    osg::Vec3d getWindowPoint(osgViewer::View* view, float x, float y)
+    {
+        float local_x, local_y;
+        const osg::Camera* camera
+            = view->getCameraContainingPosition(x, y, local_x, local_y);
+        if (!camera)
+            camera = view->getCamera();
+        osg::Matrix winMat;
+        if (camera->getViewport())
+            winMat = camera->getViewport()->computeWindowMatrix();
+        osg::Matrix projMat = camera->getProjectionMatrix();
+        // ray from eye through pointer in camera coordinate system goes
+        // from origin through transformed pointer coordinates
+        osg::Matrix win2camera = projMat * winMat;
+        win2camera.invert(win2camera);
+        osg::Vec4d winpt4 = osg::Vec4d(x, y, 0.0, 1.0) * win2camera;
+        winpt4 = winpt4 / winpt4.w();
+        return osg::Vec3d(winpt4.x(), winpt4.y(), winpt4.z());
+    }
+
+    // Decompose  _center and _centerRotation into a longitude rotation
+    // and a latitude rotation + translation in the longitudinal plane.
+
+    void decomposeCenter(const osg::Vec3d& center, const osg::Quat& centerRotation,
+                         osg::Matrix& Me, osg::Matrix& Mlon)
+    {
+        using namespace osg;
+        Mlon.makeIdentity();
+        Matrix Mtotal(centerRotation);
+        Mtotal.setTrans(center);
+        // Use the X axis to determine longitude rotation. Due to the
+        // OpenGL camera rotation, this axis will be the Y axis of the
+        // longitude matrix.
+        Mlon(1, 0) = Mtotal(0, 0);  Mlon(1, 1) = Mtotal(0, 1);
+        // X axis is rotated 90 degrees, obviously
+        Mlon(0, 0) = Mlon(1, 1);  Mlon(0, 1) = -Mlon(1, 0);
+        Matrix MlonInv = Matrixd::inverse(Mlon);
+        Me = Mtotal * MlonInv;
+    }
+
+    osg::Matrixd rotateAroundPoint(const osg::Vec3d& pt, double theta,
+                                   const osg::Vec3d& axis)
+    {
+        return (osg::Matrixd::translate(pt)
+                * osg::Matrixd::rotate(theta, axis)
+                * osg::Matrixd::translate(pt * -1.0));
+    }
 }
 
 // Theory of operation for the manipulator drag motion
@@ -2436,7 +2629,7 @@ EarthManipulator::drag(double dx, double dy, osg::View* theView)
         const osg::Vec3d endDrag = calcTangentPoint(
             zero, earthOrigin, radiusEquator, winpt);
         worldEndDrag = endDrag * viewMatInv;
-        OE_INFO << "tangent: " << worldEndDrag << "\n";
+        //OE_INFO << "tangent: " << worldEndDrag << "\n";
     }
 
 #if 0
@@ -2548,7 +2741,8 @@ EarthManipulator::drag(double dx, double dy, osg::View* theView)
                 CameraMat = &cm2;
             else
                 return;
-            _center = CameraMat->getTrans();
+
+            setCenter( CameraMat->getTrans() );
         }
         else
         {
@@ -2568,23 +2762,24 @@ EarthManipulator::drag(double dx, double dy, osg::View* theView)
                       0, 0, 1, 0,
                       0, 0, 0, 1);
             Matrixd CameraMat = m * Me;
-            _center = CameraMat.getTrans();
+            setCenter( CameraMat.getTrans() );
             // It's not necessary to include the translation
             // component, but it's useful for debugging.
             Matrixd headMat
                 = (Matrixd::translate(-_offset_x, -_offset_y, _distance)
-		   * Mrotation);
+           * Mrotation);
             headMat = headMat * Matrixd::inverse(m);
             _rotation = headMat.getRotate();
-            recalculateLocalPitchAndAzimuth();
+            //recalculateLocalPitchAndAzimuth();
         }
         _centerRotation = makeCenterRotation(_center);
-        CoordinateFrame local_frame = getMyCoordinateFrame(_center);
-        _previousUp = getUpVector(local_frame);
+
+        _previousUp = getUpVector(_centerLocalToWorld);
     }
     else
     {
         // This is obviously not correct.
-        _center = _center + (worldStartDrag - worldEndDrag);
+        setCenter( _center + (worldStartDrag - worldEndDrag) );
     }
 }
+
diff --git a/src/osgEarthUtil/ElevationManager b/src/osgEarthUtil/ElevationManager
index 3b1a4f8..6f2eeaa 100644
--- a/src/osgEarthUtil/ElevationManager
+++ b/src/osgEarthUtil/ElevationManager
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -74,6 +74,9 @@ namespace osgEarth { namespace Util
          */
         ElevationManager( Map* map );
 
+        /** dtor */
+        virtual ~ElevationManager() { }
+
         /**
          * Gets the terrain elevation at a point, given a terrain resolution.
          *
diff --git a/src/osgEarthUtil/ElevationManager.cpp b/src/osgEarthUtil/ElevationManager.cpp
index 4a1975e..207a43f 100644
--- a/src/osgEarthUtil/ElevationManager.cpp
+++ b/src/osgEarthUtil/ElevationManager.cpp
@@ -1,5 +1,6 @@
 #include <osgEarthUtil/ElevationManager>
 #include <osgEarth/Locators>
+#include <osgEarth/HeightFieldUtils>
 #include <osgTerrain/TerrainTile>
 #include <osgTerrain/GeometryTechnique>
 #include <osgUtil/IntersectionVisitor>
@@ -76,6 +77,18 @@ ElevationManager::getMaxTilesToCache() const
 }
 
 void
+ElevationManager::setMaxLevelOverride(int maxLevelOverride)
+{
+    _maxLevelOverride = maxLevelOverride;
+}
+
+int
+ElevationManager::getMaxLevelOverride() const
+{
+    return _maxLevelOverride;
+}
+
+void
 ElevationManager::setInterpolation( ElevationInterpolation interp)
 {
     _interpolation = interp;
@@ -179,7 +192,7 @@ ElevationManager::getElevationImpl(double x, double y,
 
         // generate the heightfield corresponding to the tile key, automatically falling back
         // on lower resolution if necessary:
-        _mapf.getHeightField( key, true, hf, 0L, _interpolation );
+        _mapf.getHeightField( key, true, hf, 0L );
 
         // bail out if we could not make a heightfield a all.
         if ( !hf.valid() )
@@ -205,7 +218,7 @@ ElevationManager::getElevationImpl(double x, double y,
         _tileCacheFIFO.push_back( tileId );
 
         // prune the cache. this is a terrible pruning method.
-        if ( _tileCache.size() > _maxCacheSize )
+        if ( (int)_tileCache.size() > _maxCacheSize )
         {
             osgTerrain::TileID id = _tileCacheFIFO.front();
             _tileCacheFIFO.pop_front();
diff --git a/src/osgEarthUtil/ExampleResources b/src/osgEarthUtil/ExampleResources
new file mode 100644
index 0000000..0d091a0
--- /dev/null
+++ b/src/osgEarthUtil/ExampleResources
@@ -0,0 +1,144 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_UTIL_EXAMPLE_RESOURCES_H
+#define OSGEARTH_UTIL_EXAMPLE_RESOURCES_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/SkyNode>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthDrivers/ocean_surface/OceanSurface>
+#include <osgEarth/Viewpoint>
+
+#include <osg/ArgumentParser>
+#include <osgViewer/View>
+
+
+/**
+ * This is a collection of resources used by the osgEarth example applications.
+ */
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Util::Controls;
+    using namespace osgEarth::Drivers;
+
+    /**
+     * Parses a set of built-in example arguments. Any Controls created by parsing
+     * command-line parameters will appear in the lower-left corner of the display.
+     */
+    class OSGEARTHUTIL_EXPORT MapNodeHelper
+    {
+    public:
+        /**
+         * Loads a map file and processes all the built-in example command line
+         * arguemnts and XML externals.
+         */
+        osg::Group* load(
+            osg::ArgumentParser& args, 
+            osgViewer::View*     view,
+            Control*             userControl =0L ) const;
+
+        /**
+         * Takes an existing map node and processes all the built-in example command
+         * line arguments and mapNode externals.
+         */
+        void parse(
+            MapNode*             mapNode,
+            osg::ArgumentParser& args,
+            osgViewer::View*     view,
+            osg::Group*          parentGroup =0L,
+            Control*             userControl =0L) const;
+
+        /**
+         * Configures a view with a stock set of event handlers that are useful
+         * for demos, and performs some other common view configuation for osgEarth.
+         */
+        void configureView( osgViewer::View* view ) const;
+
+        /**
+         * Returns a usage string
+         */
+        std::string usage() const;
+    };
+
+
+    /**
+     * Creates a UI Control with a list of clickable viewpoints.
+     */
+    class OSGEARTHUTIL_EXPORT ViewpointControlFactory
+    {
+    public:
+        Control* create(
+            const std::vector<Viewpoint>& list, 
+            osgViewer::View*              view) const;
+    };
+
+
+    /**
+     * Creates UI controls that show the map coordinates under the mouse
+     */
+    class OSGEARTHUTIL_EXPORT MouseCoordsControlFactory
+    {
+    public:
+        Control* create( 
+            MapNode*         mapNode, 
+            osgViewer::View* view ) const;
+    };
+
+
+    /**
+     * Creates a UI Control reflecting all the named Annotations found in a
+     * scene graph.
+     */
+    class OSGEARTHUTIL_EXPORT AnnotationGraphControlFactory
+    {
+    public:
+        Control* create( 
+            osg::Node*       node,
+            osgViewer::View* view) const;
+    };
+
+
+    /**
+     * Creates a set of controls for manipulating the Sky model.
+     */
+    class OSGEARTHUTIL_EXPORT SkyControlFactory
+    {
+    public:
+        Control* create( 
+            SkyNode*         sky,
+            osgViewer::View* view ) const;
+    };
+
+
+    /**
+     * Creates a set of controls for manipulating the Ocean surface model.
+     */
+    class OSGEARTHUTIL_EXPORT OceanControlFactory
+    {
+    public:
+        Control* create( 
+            OceanSurfaceNode* ocean, 
+            osgViewer::View*  view ) const;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_UTIL_EXAMPLE_RESOURCES_H
diff --git a/src/osgEarthUtil/ExampleResources.cpp b/src/osgEarthUtil/ExampleResources.cpp
new file mode 100644
index 0000000..ea3028a
--- /dev/null
+++ b/src/osgEarthUtil/ExampleResources.cpp
@@ -0,0 +1,664 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/LatLongFormatter>
+#include <osgEarthUtil/MGRSFormatter>
+#include <osgEarthUtil/MouseCoordsTool>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/Decluttering>
+
+#include <osgEarth/XmlUtils>
+#include <osgEarth/StringUtils>
+
+#include <osgEarthDrivers/kml/KML>
+
+#include <osgGA/StateSetManipulator>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgDB/FileNameUtils>
+
+#define KML_PUSHPIN_URL "http://demo.pelicanmapping.com/icons/pushpin_yellow.png"
+
+#define VP_DURATION 4.5 // time to fly to a viewpoint
+
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Annotation;
+
+//------------------------------------------------------------------------
+
+/** Shared event handlers. */
+namespace
+{
+    // flies to a viewpoint in response to control event (click)
+    struct ClickViewpointHandler : public ControlEventHandler
+    {
+        ClickViewpointHandler( const Viewpoint& vp, osgGA::CameraManipulator* manip ) 
+            : _vp(vp), _manip( dynamic_cast<EarthManipulator*>(manip) ) { }
+
+        Viewpoint         _vp;
+        EarthManipulator* _manip;
+
+        virtual void onClick( class Control* control )
+        {
+            if ( _manip )
+                _manip->setViewpoint( _vp, VP_DURATION );
+        }
+    };
+
+
+    // toggles a node in response to a control event (checkbox)
+    struct ToggleNodeHandler : public ControlEventHandler
+    {
+        ToggleNodeHandler( osg::Node* node ) : _node(node) { }
+
+        virtual void onValueChanged( class Control* control, bool value )
+        {
+            osg::ref_ptr<osg::Node> safeNode = _node.get();
+            if ( safeNode.valid() )
+                safeNode->setNodeMask( value ? ~0 : 0 );
+        }
+
+        osg::observer_ptr<osg::Node> _node;
+    };
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct ViewpointHandler : public osgGA::GUIEventHandler
+    {
+        ViewpointHandler( const std::vector<Viewpoint>& viewpoints, osgViewer::View* view )
+            : _viewpoints( viewpoints ),
+              _manip( dynamic_cast<EarthManipulator*>(view->getCameraManipulator()) ) { }
+
+        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+        {
+            if ( ea.getEventType() == ea.KEYDOWN )
+            {
+                int index = (int)ea.getKey() - (int)'1';
+                if ( index >= 0 && index < (int)_viewpoints.size() )
+                {
+                    _manip->setViewpoint( _viewpoints[index], VP_DURATION );
+                }
+                else if ( ea.getKey() == 'v' )
+                {
+                    XmlDocument xml( _manip->getViewpoint().getConfig() );
+                    xml.store( std::cout );
+                    std::cout << std::endl;
+                }
+                aa.requestRedraw();
+            }
+            return false;
+        }
+
+        std::vector<Viewpoint> _viewpoints;
+        EarthManipulator*      _manip;
+    };
+}
+
+
+Control*
+ViewpointControlFactory::create(const std::vector<Viewpoint>& viewpoints,
+                                osgViewer::View*              view) const
+{
+    Grid* grid = 0L;
+
+    if ( viewpoints.size() > 0 )
+    {
+        // the viewpoint container:
+        grid = new Grid();
+        grid->setChildSpacing( 0 );
+        grid->setChildVertAlign( Control::ALIGN_CENTER );
+
+        for( unsigned i=0; i<viewpoints.size(); ++i )
+        {
+            const Viewpoint& vp = viewpoints[i];
+            Control* num = new LabelControl(Stringify() << (i+1), 16.0f, osg::Vec4f(1,1,0,1));
+            num->setPadding( 4 );
+            grid->setControl( 0, i, num );
+
+            Control* vpc = new LabelControl(vp.getName().empty() ? "<no name>" : vp.getName(), 16.0f);
+            vpc->setPadding( 4 );
+            vpc->setHorizFill( true );
+            vpc->setActiveColor( Color::Blue );
+            vpc->addEventHandler( new ClickViewpointHandler(vp, view->getCameraManipulator()) );
+            grid->setControl( 1, i, vpc );
+        }
+
+        view->addEventHandler( new ViewpointHandler(viewpoints, view) );
+    }
+
+    return grid;
+}
+
+//------------------------------------------------------------------------
+
+Control*
+MouseCoordsControlFactory::create(MapNode*         mapNode,
+                                  osgViewer::View* view     ) const
+{
+    // readout for coordinates under the mouse   
+    LabelControl* readout = new LabelControl();
+    readout->setHorizAlign( Control::ALIGN_RIGHT );
+    readout->setVertAlign( Control::ALIGN_BOTTOM );
+
+    Formatter* formatter = new LatLongFormatter(LatLongFormatter::FORMAT_DECIMAL_DEGREES);
+    MouseCoordsTool* mcTool = new MouseCoordsTool( mapNode );
+    mcTool->addCallback( new MouseCoordsLabelCallback(readout, formatter) );
+    view->addEventHandler( mcTool );
+
+    return readout;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct SkySliderHandler : public ControlEventHandler
+    {
+        SkySliderHandler(SkyNode* sky) : _sky(sky)  { }
+
+        SkyNode* _sky;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            int year, month, date;
+            double h;
+            _sky->getDateTime( year, month, date, h);
+            _sky->setDateTime( year, month, date, value );
+        }
+    };
+
+    struct AmbientBrightnessHandler : public ControlEventHandler
+    {
+        AmbientBrightnessHandler(SkyNode* sky) : _sky(sky) { }
+
+        SkyNode* _sky;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _sky->setAmbientBrightness( value );
+        }
+    };
+}
+
+Control*
+SkyControlFactory::create(SkyNode*         sky,
+                          osgViewer::View* view) const
+{
+    Grid* grid = new Grid();
+    grid->setChildVertAlign( Control::ALIGN_CENTER );
+    grid->setChildSpacing( 10 );
+    grid->setHorizFill( true );
+
+    grid->setControl( 0, 0, new LabelControl("Time: ", 16) );
+
+    int year, month, date;
+    double h;
+    sky->getDateTime( year, month, date, h);
+
+    HSliderControl* skySlider = grid->setControl(1, 0, new HSliderControl( 0.0f, 24.0f, h ));
+    skySlider->setHorizFill( true, 200 );
+    skySlider->addEventHandler( new SkySliderHandler(sky) );
+
+    grid->setControl(2, 0, new LabelControl(skySlider) );
+
+    grid->setControl(0, 1, new LabelControl("Ambient: ", 16) );
+    HSliderControl* ambient = grid->setControl(1, 1, new HSliderControl(0.0f, 1.0f, sky->getAmbientBrightness()));
+    ambient->addEventHandler( new AmbientBrightnessHandler(sky) );
+    grid->setControl(2, 1, new LabelControl(ambient) );
+
+    return grid;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct ChangeSeaLevel : public ControlEventHandler
+    {
+        ChangeSeaLevel( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().seaLevel() = value;
+            _ocean->dirty();
+        }
+    };
+
+    struct ChangeLowFeather : public ControlEventHandler
+    {
+        ChangeLowFeather( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().lowFeatherOffset() = value;
+            _ocean->dirty();
+        }
+    };
+
+    struct ChangeHighFeather : public ControlEventHandler
+    {
+        ChangeHighFeather( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().highFeatherOffset() = value;
+            _ocean->dirty();
+        }
+    };
+}
+
+Control*
+OceanControlFactory::create(OceanSurfaceNode* ocean,
+                            osgViewer::View*  view   ) const
+{
+    VBox* main = new VBox();
+
+    HBox* oceanBox1 = main->addControl(new HBox());
+    oceanBox1->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox1->setChildSpacing( 10 );
+    oceanBox1->setHorizFill( true );
+
+    oceanBox1->addControl( new LabelControl("Sea Level: ", 16) );
+
+    HSliderControl* mslSlider = oceanBox1->addControl(new HSliderControl( -250.0f, 250.0f, 0.0f ));
+    mslSlider->setBackColor( Color::Gray );
+    mslSlider->setHeight( 12 );
+    mslSlider->setHorizFill( true, 200 );
+    mslSlider->addEventHandler( new ChangeSeaLevel(ocean) );
+
+    HBox* oceanBox2 = main->addControl(new HBox());
+    oceanBox2->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox2->setChildSpacing( 10 );
+    oceanBox2->setHorizFill( true );
+
+    oceanBox2->addControl( new LabelControl("Low Feather: ", 16) );
+
+    HSliderControl* lfSlider = oceanBox2->addControl(new HSliderControl( -1000.0, 250.0f, -100.0f ));
+    lfSlider->setBackColor( Color::Gray );
+    lfSlider->setHeight( 12 );
+    lfSlider->setHorizFill( true, 200 );
+    lfSlider->addEventHandler( new ChangeLowFeather(ocean) );
+
+    HBox* oceanBox3 = main->addControl(new HBox());
+    oceanBox3->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox3->setChildSpacing( 10 );
+    oceanBox3->setHorizFill( true );
+
+    oceanBox3->addControl( new LabelControl("High Feather: ", 16) );
+
+    HSliderControl* hfSlider = oceanBox3->addControl(new HSliderControl( -500.0f, 500.0f, -10.0f ));
+    hfSlider->setBackColor( Color::Gray );
+    hfSlider->setHeight( 12 );
+    hfSlider->setHorizFill( true, 200 );
+    hfSlider->addEventHandler( new ChangeHighFeather(ocean) );
+
+    return main;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct AnnoControlBuilder : public osg::NodeVisitor
+    {
+        AnnoControlBuilder(osgViewer::View* view)
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+        {
+            _grid = new Grid();
+            _grid->setHorizFill( true );
+            _grid->setAbsorbEvents( true );
+            _grid->setPadding( 5 );
+            _grid->setBackColor( Color(Color::Black,0.5) );
+
+            _manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+        }
+
+        void apply( osg::Node& node )
+        {
+            AnnotationData* data = dynamic_cast<AnnotationData*>( node.getUserData() );
+            if ( data )
+            {
+                ControlVector row;
+                CheckBoxControl* cb = new CheckBoxControl( node.getNodeMask() != 0, new ToggleNodeHandler( &node ) );
+                cb->setSize( 12, 12 );
+                row.push_back( cb );
+                std::string name = trim(data->getName());
+                if ( name.empty() ) name = "<unnamed>";
+                LabelControl* label = new LabelControl( name, 14.0f );
+                unsigned relDepth = osg::clampAbove(3u, (unsigned int)this->getNodePath().size());
+                label->setMargin(Gutter(0,0,0,(relDepth-3)*20));
+                if ( data->getViewpoint() )
+                {
+                    label->addEventHandler( new ClickViewpointHandler(*data->getViewpoint(), _manip) );
+                    label->setActiveColor( Color::Blue );
+                }
+                row.push_back( label );
+                _grid->addControls( row );
+            }
+            traverse(node);
+        }
+
+        Grid*             _grid;
+        EarthManipulator* _manip;
+    };
+}
+
+Control*
+AnnotationGraphControlFactory::create(osg::Node*       graph,
+                                      osgViewer::View* view) const
+{
+    AnnoControlBuilder builder( view );
+    if ( graph )
+        graph->accept( builder );
+
+    return builder._grid;
+}
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[MapNodeHelper] "
+
+osg::Group*
+MapNodeHelper::load(osg::ArgumentParser& args,
+                    osgViewer::View*     view,
+                    Control*             userControl ) const
+{
+    // read in the Earth file:
+    osg::Node* node = 0L;
+    for( int i=0; i<args.argc(); ++i )
+    {
+        if ( osgDB::getLowerCaseFileExtension(args[i]) == "earth" )
+        {
+            node = osgDB::readNodeFile( args[i] );
+            args.remove(i);
+            break;
+        }
+    }
+
+    if ( !node )
+    {
+        OE_WARN << LC << "Unable to load an earth file from the command line." << std::endl;
+        return 0L;
+        //node = osgDB::readNodeFile( "gdal_tiff.earth" );
+        //if ( !node )
+        //{
+        //    return 0L;
+        //}
+    }
+
+    osg::ref_ptr<MapNode> mapNode = MapNode::findMapNode(node);
+    if ( !mapNode.valid() )
+    {
+        OE_WARN << LC << "Loaded scene graph does not contain a MapNode - aborting" << std::endl;
+        return 0L;
+    }
+
+    // warn about not having an earth manip
+    EarthManipulator* manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+    if ( manip == 0L )
+    {
+        OE_WARN << LC << "Helper used before installing an EarthManipulator" << std::endl;
+    }
+
+    // a root node to hold everything:
+    osg::Group* root = new osg::Group();
+    
+    root->addChild( mapNode.get() );
+
+    // parses common cmdline arguments.
+    parse( mapNode.get(), args, view, root, userControl );
+
+    // configures the viewer with some stock goodies
+    configureView( view );
+
+    return root;
+}
+
+
+void
+MapNodeHelper::parse(MapNode*             mapNode,
+                     osg::ArgumentParser& args,
+                     osgViewer::View*     view,
+                     osg::Group*          root,
+                     Control*             userControl ) const
+{
+    if ( !root )
+        root = mapNode;
+
+    // options to use for the load
+    osg::ref_ptr<osgDB::Options> dbOptions = Registry::instance()->cloneOrCreateOptions();
+
+    // parse out custom example arguments first:
+
+    bool useSky        = args.read("--sky");
+    bool useOcean      = args.read("--ocean");
+    bool useMGRS       = args.read("--mgrs");
+    bool useDMS        = args.read("--dms");
+    bool useDD         = args.read("--dd");
+    bool useCoords     = args.read("--coords") || useMGRS || useDMS || useDD;
+    bool useOrtho      = args.read("--ortho");
+    bool useAutoClip   = args.read("--autoclip");
+
+    float ambientBrightness = 0.4f;
+    args.read("--ambientBrightness", ambientBrightness);
+
+    std::string kmlFile;
+    args.read( "--kml", kmlFile );
+
+    // install a canvas for any UI controls we plan to create:
+    ControlCanvas* canvas = ControlCanvas::get(view, false);
+
+    Container* mainContainer = canvas->addControl( new VBox() );
+    mainContainer->setBackColor( Color(Color::Black, 0.8) );
+    mainContainer->setHorizAlign( Control::ALIGN_LEFT );
+    mainContainer->setVertAlign( Control::ALIGN_BOTTOM );
+
+    // install the user control:
+    if ( userControl )
+        mainContainer->addControl( userControl );
+
+    // look for external data in the map node:
+    const Config& externals = mapNode->externalConfig();
+
+    const Config& skyConf         = externals.child("sky");
+    const Config& oceanConf       = externals.child("ocean");
+    const Config& annoConf        = externals.child("annotations");
+    const Config& declutterConf   = externals.child("decluttering");
+    Config        viewpointsConf  = externals.child("viewpoints");
+
+    // backwards-compatibility: read viewpoints at the top level:
+    const ConfigSet& old_viewpoints = externals.children("viewpoint");
+    for( ConfigSet::const_iterator i = old_viewpoints.begin(); i != old_viewpoints.end(); ++i )
+        viewpointsConf.add( *i );
+
+    // Loading a viewpoint list from the earth file:
+    if ( !viewpointsConf.empty() )
+    {
+        std::vector<Viewpoint> viewpoints;
+
+        const ConfigSet& children = viewpointsConf.children();
+        if ( children.size() > 0 )
+        {
+            for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
+            {
+                viewpoints.push_back( Viewpoint(*i) );
+            }
+        }
+
+        if ( viewpoints.size() > 0 )
+        {
+            Control* c = ViewpointControlFactory().create(viewpoints, view);
+            if ( c )
+                mainContainer->addControl( c );
+        }
+    }
+
+    // Adding a sky model:
+    if ( useSky || !skyConf.empty() )
+    {
+        double hours = skyConf.value( "hours", 12.0 );
+        SkyNode* sky = new SkyNode( mapNode->getMap() );
+        sky->setAmbientBrightness( ambientBrightness );
+        sky->setDateTime( 2011, 3, 6, hours );
+        sky->attach( view );
+        root->addChild( sky );
+        Control* c = SkyControlFactory().create(sky, view);
+        if ( c )
+            mainContainer->addControl( c );
+    }
+
+    // Adding an ocean model:
+    if ( useOcean || !oceanConf.empty() )
+    {
+        OceanSurfaceNode* ocean = new OceanSurfaceNode( mapNode, oceanConf );
+        if ( ocean )
+        {
+            root->addChild( ocean );
+            Control* c = OceanControlFactory().create(ocean, view);
+            if ( c )
+                mainContainer->addControl(c);
+        }
+    }
+
+    // Loading KML from the command line:
+    if ( !kmlFile.empty() )
+    {
+        KMLOptions kml_options;
+        kml_options.declutter() = true;
+
+        // set up a default icon for point placemarks:
+        IconSymbol* defaultIcon = new IconSymbol();
+        defaultIcon->url()->setLiteral(KML_PUSHPIN_URL);
+        kml_options.defaultIconSymbol() = defaultIcon;
+
+        osg::Node* kml = KML::load( URI(kmlFile), mapNode, kml_options );
+        if ( kml )
+        {
+            Control* c = AnnotationGraphControlFactory().create(kml, view);
+            if ( c )
+            {
+                c->setVertAlign( Control::ALIGN_TOP );
+                canvas->addControl( c );
+            }
+            root->addChild( kml );
+        }
+    }
+
+    // Annotations in the map node externals:
+    if ( !annoConf.empty() )
+    {
+        osg::Group* annotations = 0L;
+        AnnotationRegistry::instance()->create( mapNode, annoConf, dbOptions.get(), annotations );
+        if ( annotations )
+        {
+            root->addChild( annotations );
+        }
+    }
+
+    // Configure the de-cluttering engine for labels and annotations:
+    if ( !declutterConf.empty() )
+    {
+        Decluttering::setOptions( DeclutteringOptions(declutterConf) );
+    }
+
+    // Configure the mouse coordinate readout:
+    if ( useCoords )
+    { 
+        LabelControl* readout = new LabelControl();
+        readout->setBackColor( Color(Color::Black, 0.8) );
+        readout->setHorizAlign( Control::ALIGN_RIGHT );
+        readout->setVertAlign( Control::ALIGN_BOTTOM );
+
+        Formatter* formatter = 
+            useMGRS ? (Formatter*)new MGRSFormatter(MGRSFormatter::PRECISION_1M, 0L, MGRSFormatter::USE_SPACES) :
+            useDMS  ? (Formatter*)new LatLongFormatter(LatLongFormatter::FORMAT_DEGREES_MINUTES_SECONDS) :
+            useDD   ? (Formatter*)new LatLongFormatter(LatLongFormatter::FORMAT_DECIMAL_DEGREES) :
+            0L;
+
+        MouseCoordsTool* mcTool = new MouseCoordsTool( mapNode );
+        mcTool->addCallback( new MouseCoordsLabelCallback(readout, formatter) );
+        view->addEventHandler( mcTool );
+
+        canvas->addControl( readout );
+    }
+
+    // Configure for an ortho camera:
+    if ( useOrtho )
+    {
+        EarthManipulator* manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+        if ( manip )
+        {
+            manip->getSettings()->setCameraProjection( EarthManipulator::PROJ_ORTHOGRAPHIC );
+        }
+    }
+
+    // Install an auto clip plane clamper
+    if ( useAutoClip )
+    {
+        view->getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
+    }
+
+    root->addChild( canvas );
+}
+
+
+void
+MapNodeHelper::configureView( osgViewer::View* view ) const
+{
+    // add some stock OSG handlers:
+    view->addEventHandler(new osgViewer::StatsHandler());
+    view->addEventHandler(new osgViewer::WindowSizeHandler());
+    view->addEventHandler(new osgViewer::ThreadingHandler());
+    view->addEventHandler(new osgViewer::LODScaleHandler());
+    view->addEventHandler(new osgGA::StateSetManipulator(view->getCamera()->getOrCreateStateSet()));
+}
+
+
+std::string
+MapNodeHelper::usage() const
+{
+    return Stringify()
+        << "    --sky                : add a sky model\n"
+        << "    --ocean              : add an ocean model\n"
+        << "    --kml <file.kml>     : load a KML or KMZ file\n"
+        << "    --coords             : display map coords under mouse\n"
+        << "    --dms                : dispay deg/min/sec coords under mouse\n"
+        << "    --dd                 : display decimal degrees coords under mouse\n"
+        << "    --mgrs               : show MGRS coords under mouse\n"
+        << "    --ortho              : use an orthographic camera\n"
+        << "    --autoclip           : installs an auto-clip plane callback\n";
+}
diff --git a/src/osgEarthUtil/ExampleResources.cpp-2.2 b/src/osgEarthUtil/ExampleResources.cpp-2.2
new file mode 100644
index 0000000..2bf9a42
--- /dev/null
+++ b/src/osgEarthUtil/ExampleResources.cpp-2.2
@@ -0,0 +1,631 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#include <osgEarthUtil/ExampleResources>
+#include <osgEarthUtil/EarthManipulator>
+#include <osgEarthUtil/LatLongFormatter>
+#include <osgEarthUtil/MGRSFormatter>
+#include <osgEarthUtil/MouseCoordsTool>
+#include <osgEarthUtil/AutoClipPlaneHandler>
+
+#include <osgEarthAnnotation/AnnotationData>
+#include <osgEarthAnnotation/AnnotationRegistry>
+#include <osgEarthAnnotation/Decluttering>
+
+#include <osgEarth/XmlUtils>
+#include <osgEarth/StringUtils>
+
+#include <osgEarthDrivers/kml/KML>
+
+#include <osgGA/StateSetManipulator>
+#include <osgViewer/ViewerEventHandlers>
+#include <osgDB/FileNameUtils>
+
+#define KML_PUSHPIN_URL "http://demo.pelicanmapping.com/icons/pushpin_yellow.png"
+
+#define VP_DURATION 4.5 // time to fly to a viewpoint
+
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Annotation;
+
+//------------------------------------------------------------------------
+
+/** Shared event handlers. */
+namespace
+{
+    // flies to a viewpoint in response to control event (click)
+    struct ClickViewpointHandler : public ControlEventHandler
+    {
+        ClickViewpointHandler( const Viewpoint& vp, osgGA::CameraManipulator* manip ) 
+            : _vp(vp), _manip( dynamic_cast<EarthManipulator*>(manip) ) { }
+
+        Viewpoint         _vp;
+        EarthManipulator* _manip;
+
+        virtual void onClick( class Control* control )
+        {
+            if ( _manip )
+                _manip->setViewpoint( _vp, VP_DURATION );
+        }
+    };
+
+
+    // toggles a node in response to a control event (checkbox)
+    struct ToggleNodeHandler : public ControlEventHandler
+    {
+        ToggleNodeHandler( osg::Node* node ) : _node(node) { }
+
+        virtual void onValueChanged( class Control* control, bool value )
+        {
+            osg::ref_ptr<osg::Node> safeNode = _node.get();
+            if ( safeNode.valid() )
+                safeNode->setNodeMask( value ? ~0 : 0 );
+        }
+
+        osg::observer_ptr<osg::Node> _node;
+    };
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct ViewpointHandler : public osgGA::GUIEventHandler
+    {
+        ViewpointHandler( const std::vector<Viewpoint>& viewpoints, osgViewer::View* view )
+            : _viewpoints( viewpoints ),
+              _manip( dynamic_cast<EarthManipulator*>(view->getCameraManipulator()) ) { }
+
+        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+        {
+            if ( ea.getEventType() == ea.KEYDOWN )
+            {
+                int index = (int)ea.getKey() - (int)'1';
+                if ( index >= 0 && index < (int)_viewpoints.size() )
+                {
+                    _manip->setViewpoint( _viewpoints[index], VP_DURATION );
+                }
+                else if ( ea.getKey() == 'v' )
+                {
+                    XmlDocument xml( _manip->getViewpoint().getConfig() );
+                    xml.store( std::cout );
+                    std::cout << std::endl;
+                }
+                aa.requestRedraw();
+            }
+            return false;
+        }
+
+        std::vector<Viewpoint> _viewpoints;
+        EarthManipulator*      _manip;
+    };
+}
+
+
+Control*
+ViewpointControlFactory::create(const std::vector<Viewpoint>& viewpoints,
+                                osgViewer::View*              view) const
+{
+    Grid* grid = 0L;
+
+    if ( viewpoints.size() > 0 )
+    {
+        // the viewpoint container:
+        grid = new Grid();
+        grid->setChildSpacing( 0 );
+        grid->setChildVertAlign( Control::ALIGN_CENTER );
+
+        for( unsigned i=0; i<viewpoints.size(); ++i )
+        {
+            const Viewpoint& vp = viewpoints[i];
+            Control* num = new LabelControl(Stringify() << (i+1), 16.0f, osg::Vec4f(1,1,0,1));
+            num->setPadding( 4 );
+            grid->setControl( 0, i, num );
+
+            Control* vpc = new LabelControl(vp.getName().empty() ? "<no name>" : vp.getName(), 16.0f);
+            vpc->setPadding( 4 );
+            vpc->setHorizFill( true );
+            vpc->setActiveColor( Color::Blue );
+            vpc->addEventHandler( new ClickViewpointHandler(vp, view->getCameraManipulator()) );
+            grid->setControl( 1, i, vpc );
+        }
+
+        view->addEventHandler( new ViewpointHandler(viewpoints, view) );
+    }
+
+    return grid;
+}
+
+//------------------------------------------------------------------------
+
+Control*
+MouseCoordsControlFactory::create(MapNode*         mapNode,
+                                  osgViewer::View* view     ) const
+{
+    // readout for coordinates under the mouse   
+    LabelControl* readout = new LabelControl();
+    readout->setHorizAlign( Control::ALIGN_RIGHT );
+    readout->setVertAlign( Control::ALIGN_BOTTOM );
+
+    Formatter* formatter = new LatLongFormatter(LatLongFormatter::FORMAT_DECIMAL_DEGREES);
+    MouseCoordsTool* mcTool = new MouseCoordsTool( mapNode );
+    mcTool->addCallback( new MouseCoordsLabelCallback(readout, formatter) );
+    view->addEventHandler( mcTool );
+
+    return readout;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct SkySliderHandler : public ControlEventHandler
+    {
+        SkySliderHandler(SkyNode* sky) : _sky(sky) { }
+
+        SkyNode* _sky;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _sky->setDateTime( 2011, 3, 6, value );
+        }
+    };
+}
+
+Control*
+SkyControlFactory::create(SkyNode*         sky,
+                          osgViewer::View* view) const
+{
+    HBox* skyBox = new HBox();
+    skyBox->setChildVertAlign( Control::ALIGN_CENTER );
+    skyBox->setChildSpacing( 10 );
+    skyBox->setHorizFill( true );
+
+    skyBox->addControl( new LabelControl("Time: ", 16) );
+
+    HSliderControl* skySlider = skyBox->addControl(new HSliderControl( 0.0f, 24.0f, 18.0f ));
+    skySlider->setBackColor( Color::Gray );
+    skySlider->setHeight( 12 );
+    skySlider->setHorizFill( true, 200 );
+    skySlider->addEventHandler( new SkySliderHandler(sky) );
+
+    return skyBox;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct ChangeSeaLevel : public ControlEventHandler
+    {
+        ChangeSeaLevel( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().seaLevel() = value;
+            _ocean->dirty();
+        }
+    };
+
+    struct ChangeLowFeather : public ControlEventHandler
+    {
+        ChangeLowFeather( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().lowFeatherOffset() = value;
+            _ocean->dirty();
+        }
+    };
+
+    struct ChangeHighFeather : public ControlEventHandler
+    {
+        ChangeHighFeather( OceanSurfaceNode* ocean ) : _ocean(ocean) { }
+
+        OceanSurfaceNode* _ocean;
+
+        virtual void onValueChanged( class Control* control, float value )
+        {
+            _ocean->options().highFeatherOffset() = value;
+            _ocean->dirty();
+        }
+    };
+}
+
+Control*
+OceanControlFactory::create(OceanSurfaceNode* ocean,
+                            osgViewer::View*  view   ) const
+{
+    VBox* main = new VBox();
+
+    HBox* oceanBox1 = main->addControl(new HBox());
+    oceanBox1->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox1->setChildSpacing( 10 );
+    oceanBox1->setHorizFill( true );
+
+    oceanBox1->addControl( new LabelControl("Sea Level: ", 16) );
+
+    HSliderControl* mslSlider = oceanBox1->addControl(new HSliderControl( -250.0f, 250.0f, 0.0f ));
+    mslSlider->setBackColor( Color::Gray );
+    mslSlider->setHeight( 12 );
+    mslSlider->setHorizFill( true, 200 );
+    mslSlider->addEventHandler( new ChangeSeaLevel(ocean) );
+
+    HBox* oceanBox2 = main->addControl(new HBox());
+    oceanBox2->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox2->setChildSpacing( 10 );
+    oceanBox2->setHorizFill( true );
+
+    oceanBox2->addControl( new LabelControl("Low Feather: ", 16) );
+
+    HSliderControl* lfSlider = oceanBox2->addControl(new HSliderControl( -1000.0, 250.0f, -100.0f ));
+    lfSlider->setBackColor( Color::Gray );
+    lfSlider->setHeight( 12 );
+    lfSlider->setHorizFill( true, 200 );
+    lfSlider->addEventHandler( new ChangeLowFeather(ocean) );
+
+    HBox* oceanBox3 = main->addControl(new HBox());
+    oceanBox3->setChildVertAlign( Control::ALIGN_CENTER );
+    oceanBox3->setChildSpacing( 10 );
+    oceanBox3->setHorizFill( true );
+
+    oceanBox3->addControl( new LabelControl("High Feather: ", 16) );
+
+    HSliderControl* hfSlider = oceanBox3->addControl(new HSliderControl( -500.0f, 500.0f, -10.0f ));
+    hfSlider->setBackColor( Color::Gray );
+    hfSlider->setHeight( 12 );
+    hfSlider->setHorizFill( true, 200 );
+    hfSlider->addEventHandler( new ChangeHighFeather(ocean) );
+
+    return main;
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct AnnoControlBuilder : public osg::NodeVisitor
+    {
+        AnnoControlBuilder(osgViewer::View* view)
+            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+        {
+            _grid = new Grid();
+            _grid->setHorizFill( true );
+            _grid->setAbsorbEvents( true );
+            _grid->setPadding( 5 );
+            _grid->setBackColor( Color(Color::Black,0.5) );
+
+            _manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+        }
+
+        void apply( osg::Node& node )
+        {
+            AnnotationData* data = dynamic_cast<AnnotationData*>( node.getUserData() );
+            if ( data )
+            {
+                ControlVector row;
+                CheckBoxControl* cb = new CheckBoxControl( node.getNodeMask() != 0, new ToggleNodeHandler( &node ) );
+                cb->setSize( 12, 12 );
+                row.push_back( cb );
+                std::string name = trim(data->getName());
+                if ( name.empty() ) name = "<unnamed>";
+                LabelControl* label = new LabelControl( name, 14.0f );
+                unsigned relDepth = osg::clampAbove(3u, (unsigned int)this->getNodePath().size());
+                label->setMargin(Gutter(0,0,0,(relDepth-3)*20));
+                if ( data->getViewpoint() )
+                {
+                    label->addEventHandler( new ClickViewpointHandler(*data->getViewpoint(), _manip) );
+                    label->setActiveColor( Color::Blue );
+                }
+                row.push_back( label );
+                _grid->addControls( row );
+            }
+            traverse(node);
+        }
+
+        Grid*             _grid;
+        EarthManipulator* _manip;
+    };
+}
+
+Control*
+AnnotationGraphControlFactory::create(osg::Node*       graph,
+                                      osgViewer::View* view) const
+{
+    AnnoControlBuilder builder( view );
+    if ( graph )
+        graph->accept( builder );
+
+    return builder._grid;
+}
+
+//------------------------------------------------------------------------
+
+#undef  LC
+#define LC "[MapNodeHelper] "
+
+osg::Group*
+MapNodeHelper::load(osg::ArgumentParser& args,
+                    osgViewer::View*     view,
+                    Control*             userControl ) const
+{
+    // read in the Earth file:
+    osg::Node* node = 0L;
+    for( int i=0; i<args.argc(); ++i )
+    {
+        if ( osgDB::getLowerCaseFileExtension(args[i]) == "earth" )
+        {
+            node = osgDB::readNodeFile( args[i] );
+            args.remove(i);
+            break;
+        }
+    }
+
+    if ( !node )
+    {
+        node = osgDB::readNodeFile( "gdal_tiff.earth" );
+        if ( !node )
+        {
+            OE_WARN << LC << "Unable to load an earth file from the command line." << std::endl;
+            return 0L;
+        }
+    }
+
+    osg::ref_ptr<MapNode> mapNode = MapNode::findMapNode(node);
+    if ( !mapNode.valid() )
+    {
+        OE_WARN << LC << "Loaded scene graph does not contain a MapNode - aborting" << std::endl;
+        return 0L;
+    }
+
+    // warn about not having an earth manip
+    EarthManipulator* manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+    if ( manip == 0L )
+    {
+        OE_WARN << LC << "Helper used before installing an EarthManipulator" << std::endl;
+    }
+
+    // a root node to hold everything:
+    osg::Group* root = new osg::Group();
+    root->addChild( mapNode.get() );
+
+    // configures the viewer with some stock goodies
+    configureView( view );
+
+    // parses common cmdline arguments.
+    parse( mapNode.get(), args, view, root, userControl );
+
+    return root;
+}
+
+
+void
+MapNodeHelper::parse(MapNode*             mapNode,
+                     osg::ArgumentParser& args,
+                     osgViewer::View*     view,
+                     osg::Group*          root,
+                     Control*             userControl ) const
+{
+    if ( !root )
+        root = mapNode;
+
+    // parse out custom example arguments first:
+
+    bool useSky        = args.read("--sky");
+    bool useOcean      = args.read("--ocean");
+    bool useMGRS       = args.read("--mgrs");
+    bool useDMS        = args.read("--dms");
+    bool useDD         = args.read("--dd");
+    bool useCoords     = args.read("--coords") || useMGRS || useDMS || useDD;
+    bool useOrtho      = args.read("--ortho");
+    bool useAutoClip   = args.read("--autoclip");
+
+    std::string kmlFile;
+    args.read( "--kml", kmlFile );
+
+    // install a canvas for any UI controls we plan to create:
+    ControlCanvas* canvas = ControlCanvas::get(view, false);
+
+    Container* mainContainer = canvas->addControl( new VBox() );
+    mainContainer->setBackColor( Color(Color::Black, 0.8) );
+    mainContainer->setHorizAlign( Control::ALIGN_LEFT );
+    mainContainer->setVertAlign( Control::ALIGN_BOTTOM );
+
+    // install the user control:
+    if ( userControl )
+        mainContainer->addControl( userControl );
+
+    // look for external data in the map node:
+    const Config& externals = mapNode->externalConfig();
+
+    const Config& skyConf         = externals.child("sky");
+    const Config& oceanConf       = externals.child("ocean");
+    const Config& annoConf        = externals.child("annotations");
+    const Config& declutterConf   = externals.child("decluttering");
+    Config        viewpointsConf  = externals.child("viewpoints");
+
+    // backwards-compatibility: read viewpoints at the top level:
+    const ConfigSet& old_viewpoints = externals.children("viewpoint");
+    for( ConfigSet::const_iterator i = old_viewpoints.begin(); i != old_viewpoints.end(); ++i )
+        viewpointsConf.add( *i );
+
+    // Loading a viewpoint list from the earth file:
+    if ( !viewpointsConf.empty() )
+    {
+        std::vector<Viewpoint> viewpoints;
+
+        const ConfigSet& children = viewpointsConf.children();
+        if ( children.size() > 0 )
+        {
+            for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
+            {
+                viewpoints.push_back( Viewpoint(*i) );
+            }
+        }
+
+        if ( viewpoints.size() > 0 )
+        {
+            Control* c = ViewpointControlFactory().create(viewpoints, view);
+            if ( c )
+                mainContainer->addControl( c );
+        }
+    }
+
+    // Adding a sky model:
+    if ( useSky || !skyConf.empty() )
+    {
+        double hours = skyConf.value( "hours", 12.0 );
+        SkyNode* sky = new SkyNode( mapNode->getMap() );
+        sky->setDateTime( 2011, 3, 6, hours );
+        sky->attach( view );
+        root->addChild( sky );
+        Control* c = SkyControlFactory().create(sky, view);
+        if ( c )
+            mainContainer->addControl( c );
+    }
+
+    // Adding an ocean model:
+    if ( useOcean || !oceanConf.empty() )
+    {
+        OceanSurfaceNode* ocean = new OceanSurfaceNode( mapNode, oceanConf );
+        if ( ocean )
+        {
+            root->addChild( ocean );
+            Control* c = OceanControlFactory().create(ocean, view);
+            if ( c )
+                mainContainer->addControl(c);
+        }
+    }
+
+    // Loading KML from the command line:
+    if ( !kmlFile.empty() )
+    {
+        KMLOptions kml_options;
+        kml_options.declutter() = true;
+        kml_options.defaultIconImage() = URI( KML_PUSHPIN_URL ).getImage();
+
+        osg::Node* kml = KML::load( URI(kmlFile), mapNode, kml_options );
+        if ( kml )
+        {
+            Control* c = AnnotationGraphControlFactory().create(kml, view);
+            if ( c )
+            {
+                c->setVertAlign( Control::ALIGN_TOP );
+                canvas->addControl( c );
+            }
+            root->addChild( kml );
+        }
+    }
+
+    // Annotations in the map node externals:
+    if ( !annoConf.empty() )
+    {
+        osg::Group* annotations = 0L;
+        AnnotationRegistry::instance()->create( mapNode, annoConf, annotations );
+        if ( annotations )
+        {
+            root->addChild( annotations );
+        }
+    }
+
+    // Configure the de-cluttering engine for labels and annotations:
+    if ( !declutterConf.empty() )
+    {
+        Decluttering::setOptions( DeclutteringOptions(declutterConf) );
+    }
+
+    // Configure the mouse coordinate readout:
+    if ( useCoords )
+    { 
+        LabelControl* readout = new LabelControl();
+        readout->setBackColor( Color(Color::Black, 0.8) );
+        readout->setHorizAlign( Control::ALIGN_RIGHT );
+        readout->setVertAlign( Control::ALIGN_BOTTOM );
+
+        Formatter* formatter = 
+            useMGRS ? (Formatter*)new MGRSFormatter(MGRSFormatter::PRECISION_1M, 0L, MGRSFormatter::USE_SPACES) :
+            useDMS  ? (Formatter*)new LatLongFormatter(LatLongFormatter::FORMAT_DEGREES_MINUTES_SECONDS) :
+            useDD   ? (Formatter*)new LatLongFormatter(LatLongFormatter::FORMAT_DECIMAL_DEGREES) :
+            0L;
+
+        MouseCoordsTool* mcTool = new MouseCoordsTool( mapNode );
+        mcTool->addCallback( new MouseCoordsLabelCallback(readout, formatter) );
+        view->addEventHandler( mcTool );
+
+        canvas->addControl( readout );
+    }
+
+    // Configure for an ortho camera:
+    if ( useOrtho )
+    {
+        EarthManipulator* manip = dynamic_cast<EarthManipulator*>(view->getCameraManipulator());
+        if ( manip )
+        {
+            manip->getSettings()->setCameraProjection( EarthManipulator::PROJ_ORTHOGRAPHIC );
+        }
+    }
+
+    // Install an auto clip plane clamper
+    if ( useAutoClip )
+    {
+        view->getCamera()->addCullCallback( new AutoClipPlaneCullCallback(mapNode) );
+    }
+
+    root->addChild( canvas );
+}
+
+
+void
+MapNodeHelper::configureView( osgViewer::View* view ) const
+{
+    // add some stock OSG handlers:
+    view->addEventHandler(new osgViewer::StatsHandler());
+    view->addEventHandler(new osgViewer::WindowSizeHandler());
+    view->addEventHandler(new osgViewer::ThreadingHandler());
+    view->addEventHandler(new osgViewer::LODScaleHandler());
+    view->addEventHandler(new osgGA::StateSetManipulator(view->getCamera()->getOrCreateStateSet()));
+
+    // osgEarth benefits from pre-compilation of GL objects in the pager. In newer versions of
+    // OSG, this activates OSG's IncrementalCompileOpeartion in order to avoid frame breaks.
+    view->getDatabasePager()->setDoPreCompile( true );
+}
+
+
+std::string
+MapNodeHelper::usage() const
+{
+    return Stringify()
+        << "    --sky                : add a sky model\n"
+        << "    --ocean              : add an ocean model\n"
+        << "    --kml <file.kml>     : load a KML or KMZ file\n"
+        << "    --coords             : display map coords under mouse\n"
+        << "    --dms                : dispay deg/min/sec coords under mouse\n"
+        << "    --dd                 : display decimal degrees coords under mouse\n"
+        << "    --mgrs               : show MGRS coords under mouse\n"
+        << "    --ortho              : use an orthographic camera\n"
+        << "    --autoclip           : installs an auto-clip plane callback\n";
+}
diff --git a/src/osgEarthUtil/Export b/src/osgEarthUtil/Export
index cbdd6bd..508c135 100644
--- a/src/osgEarthUtil/Export
+++ b/src/osgEarthUtil/Export
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
diff --git a/src/osgEarthUtil/FeatureEditing b/src/osgEarthUtil/FeatureEditing
deleted file mode 100644
index 4c6d169..0000000
--- a/src/osgEarthUtil/FeatureEditing
+++ /dev/null
@@ -1,139 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-
-#ifndef OSGEARTHUTIL_FEATUREEDITING_H
-#define OSGEARTHUTIL_FEATUREEDITING_H 1
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/MapNode>
-#include <osgEarthFeatures/FeatureListSource>
-#include <osgGA/GUIEventHandler>
-#include <osgViewer/View>
-
-namespace osgEarth { namespace Util {
-
-    /**
-     * AddPointHandler is a GUIEventHandler that allows you to append points to a Feature's Geometry
-     */
-    struct OSGEARTHUTIL_EXPORT AddPointHandler : public osgGA::GUIEventHandler 
-    {
-    public:
-        /**
-         * Constructs a new AddPointHandler
-         * @param feature
-         *      The Feature to edit
-         * @param source
-         *      The FeatureSource that the Feature belongs to
-         * @param mapSRS
-         *      The srs of the Map
-         */
-        AddPointHandler(osgEarth::Features::Feature* feature, osgEarth::Features::FeatureListSource* source, const osgEarth::SpatialReference* mapSRS);
-
-        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
-
-        /**
-         * Sets the mouse button used for adding new points
-         */
-        void setMouseButton( osgGA::GUIEventAdapter::MouseButtonMask mouseButton);
-
-        /**
-         * Gets the mouse button used for adding new points
-         */
-        osgGA::GUIEventAdapter::MouseButtonMask getMouseButton() const;
-
-        void setIntersectionMask( osg::Node::NodeMask intersectionMask ) { _intersectionMask = intersectionMask; }
-        osg::Node::NodeMask getIntersectionMask() const { return _intersectionMask;}
-
-
-    private:
-        bool addPoint( float x, float y, osgViewer::View* view );
-
-        osgGA::GUIEventAdapter::MouseButtonMask _mouseButton;
-        bool _mouseDown;
-        bool _firstMove;
-        osg::ref_ptr< osgEarth::Features::FeatureListSource > _source;
-        osg::ref_ptr< osgEarth::Features::Feature > _feature;
-        osg::ref_ptr<const SpatialReference> _mapSRS;
-        osg::Node::NodeMask _intersectionMask;
-    };
-
-    
-    /**
-     * Node you can add to your scene graph to edit the verts of a Feature's Geometry
-     */
-    class OSGEARTHUTIL_EXPORT FeatureEditor : public osg::Group
-    {
-    public:
-         /**
-         * Constructs a new FeatureEditor
-         * @param feature
-         *      The Feature to edit
-         * @param source
-         *      The FeatureSource that the Feature belongs to
-         * @param mapNode
-         *      The MapNode that is being displayed
-         */
-        FeatureEditor( osgEarth::Features::Feature* feature, osgEarth::Features::FeatureSource* source, osgEarth::MapNode* mapNode );
-
-        /**
-         *Gets the color of the draggers when they are selected
-         */
-        const osg::Vec4f& getPickColor() const;
-
-        /**
-         *Sets the color of the draggers when they are selected
-         */
-        void setPickColor( const osg::Vec4f& pickColor );
-
-        /**
-         *Gets the color of the draggers
-         */
-        const osg::Vec4f& getColor() const;
-
-        /**
-         *Sets the color of the draggers
-         */
-        void setColor( const osg::Vec4f& color );
-
-
-        /**
-         *Gets the dragger size
-         */
-        float getSize() const;
-
-        /**
-         *Sets the dragger size
-         */
-        void setSize( float size );
-
-
-    protected:
-        void init();
-
-        osg::Vec4f _pickColor;
-        osg::Vec4f _color;
-        float _size;
-
-        osg::ref_ptr< osgEarth::Features::Feature > _feature;
-        osg::ref_ptr< osgEarth::Features::FeatureSource > _source;
-        osg::ref_ptr< osgEarth::MapNode > _mapNode;
-    };
-
-}}
-#endif
\ No newline at end of file
diff --git a/src/osgEarthUtil/FeatureEditing.cpp b/src/osgEarthUtil/FeatureEditing.cpp
deleted file mode 100644
index 477d2d5..0000000
--- a/src/osgEarthUtil/FeatureEditing.cpp
+++ /dev/null
@@ -1,275 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osgEarthUtil/FeatureEditing>
-#include <osgEarthUtil/Draggers>
-
-using namespace osgEarth::Util;
-using namespace osgEarth::Symbology;
-using namespace osgEarth::Features;
-
-/****************************************************************/
-AddPointHandler::AddPointHandler(Feature* feature, FeatureListSource* source, const osgEarth::SpatialReference* mapSRS):
-_feature(feature),
-_source( source ),
-_mapSRS( mapSRS ),
-_mouseDown( false ),
-_firstMove( false ),
-_mouseButton( osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON ),
-_intersectionMask( 0xffffffff )
-{
-}
-
-void
-AddPointHandler::setMouseButton( osgGA::GUIEventAdapter::MouseButtonMask mouseButton)
-{
-    _mouseButton = mouseButton;
-}
-
-osgGA::GUIEventAdapter::MouseButtonMask
-AddPointHandler::getMouseButton() const
-{
-    return _mouseButton;
-}
-
-bool
-AddPointHandler::addPoint( float x, float y, osgViewer::View* view )
-{
-    osgUtil::LineSegmentIntersector::Intersections results;
-    if ( view->computeIntersections( x, y, results, _intersectionMask ) )
-    {
-        // find the first hit under the mouse:
-        osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
-        osg::Vec3d point = first.getWorldIntersectPoint();
-
-        // transform it to map coordinates:
-        double lat_rad, lon_rad, dummy;
-        _mapSRS->getEllipsoid()->convertXYZToLatLongHeight( point.x(), point.y(), point.z(), lat_rad, lon_rad, dummy );
-
-        double lat_deg = osg::RadiansToDegrees( lat_rad );
-        double lon_deg = osg::RadiansToDegrees( lon_rad );
-
-        if (_feature.valid())            
-        {
-            _feature->getGeometry()->push_back( osg::Vec3d(lon_deg, lat_deg, 0) );
-            _source->dirty();
-        }
-        return true;
-    }
-    return false;
-}
-
-bool
-AddPointHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
-{
-    osgViewer::View* view = static_cast<osgViewer::View*>(aa.asView());
-    if ( ea.getEventType() == osgGA::GUIEventAdapter::PUSH )
-    {
-        if (ea.getButton() == _mouseButton)
-        {
-            _mouseDown = true;
-            _firstMove = true;
-            return addPoint( ea.getX(), ea.getY(), view );
-        }
-    }
-    else if (ea.getEventType() == osgGA::GUIEventAdapter::RELEASE)
-    {
-        if (ea.getButton() == _mouseButton)
-        {
-            _mouseDown = false;
-        }
-    }
-    else if (ea.getEventType() == osgGA::GUIEventAdapter::MOVE || ea.getEventType() == osgGA::GUIEventAdapter::DRAG)
-    {
-        if (_mouseDown)
-        {
-            if (!_firstMove)
-            {
-                return addPoint( ea.getX(), ea.getY(), view );
-            }
-            _firstMove = false;
-        }
-        return true;
-    }
-
-    return false;
-}
-
-/****************************************************************/
-
-class MoveFeatureDraggerCallback : public osgManipulator::DraggerCallback
-{
-public:
-    MoveFeatureDraggerCallback(Feature* feature, FeatureSource* source, const Map* map, int point):
-      _feature(feature),
-      _source(source),
-      _map(map),
-      _point(point)
-      {}
-
-      osg::Vec2d getLocation(const osg::Matrixd& matrix)
-      {
-          osg::Vec3d trans = matrix.getTrans();
-          double lat, lon, height;
-          _map->getProfile()->getSRS()->getEllipsoid()->convertXYZToLatLongHeight(trans.x(), trans.y(), trans.z(), lat, lon, height);
-          return osg::Vec2d(osg::RadiansToDegrees(lon), osg::RadiansToDegrees(lat));
-      }
-
-
-      virtual bool receive(const osgManipulator::MotionCommand& command)
-      {
-          switch (command.getStage())
-          {
-          case osgManipulator::MotionCommand::START:
-              {
-                  // Save the current matrix                  
-                  osg::Vec3d startLocation = (*_feature->getGeometry())[_point];
-                  double x, y, z;
-                  _map->getProfile()->getSRS()->getEllipsoid()->convertLatLongHeightToXYZ(osg::DegreesToRadians(startLocation.y()), osg::DegreesToRadians(startLocation.x()), 0, x, y, z);
-                  _startMotionMatrix = osg::Matrixd::translate(x, y, z);
-
-                  // Get the LocalToWorld and WorldToLocal matrix for this node.
-                  osg::NodePath nodePathToRoot;
-                  _localToWorld = osg::Matrixd::identity();
-                  _worldToLocal = osg::Matrixd::identity();
-
-                  return true;
-              }
-          case osgManipulator::MotionCommand::MOVE:
-              {
-                  // Transform the command's motion matrix into local motion matrix.
-                  osg::Matrix localMotionMatrix = _localToWorld * command.getWorldToLocal()
-                      * command.getMotionMatrix()
-                      * command.getLocalToWorld() * _worldToLocal;
-
-                  osg::Matrixd newMatrix = localMotionMatrix * _startMotionMatrix;
-                  osg::Vec2d location = getLocation( newMatrix );
-                  (*_feature->getGeometry())[_point] = osg::Vec3d(location.x(), location.y(), 0);
-                  _source->dirty();
-
-                  return true;
-              }
-          case osgManipulator::MotionCommand::FINISH:
-              {
-                  return true;
-              }
-          case osgManipulator::MotionCommand::NONE:
-          default:
-              return false;
-          }
-      }
-
-
-      osg::ref_ptr<const Map>            _map;      
-      osg::ref_ptr< Feature > _feature;
-      osg::ref_ptr< FeatureSource > _source;
-
-      osg::Matrix _startMotionMatrix;
-      int _point;
-
-      osg::Matrix _localToWorld;
-      osg::Matrix _worldToLocal;
-};
-
-/****************************************************************/
-FeatureEditor::FeatureEditor( Feature* feature, FeatureSource* source, MapNode* mapNode ):
-_feature( feature ),
-_source( source ),
-_mapNode( mapNode ),
-_color(osg::Vec4(0.0f, 1.0f, 0.0f, 1.0f)),
-_pickColor(osg::Vec4(1.0f, 1.0f, 0.0f, 1.0f)),
-_size( 5.0f )
-{
-    init();
-}
-
-
-const osg::Vec4f&
-FeatureEditor::getPickColor() const
-{
-    return _pickColor;
-}
-
-void
-FeatureEditor::setPickColor( const osg::Vec4f& pickColor )
-{
-    if (_pickColor != pickColor)
-    {
-        _pickColor = pickColor;
-        init();
-    }
-}
-
-const osg::Vec4f&
-FeatureEditor::getColor() const
-{
-    return _color;
-}
-
-void
-FeatureEditor::setColor( const osg::Vec4f& color )
-{
-    if (_color != color)
-    {
-        _color = color;
-        init();
-    }
-}        
-
-float
-FeatureEditor::getSize() const
-{
-    return _size;
-}
-
-void
-FeatureEditor::setSize( float size )
-{
-    if (_size != size)
-    {
-        _size = size;
-        init();
-    }
-}
-
-void
-FeatureEditor::init()
-{
-    removeChildren( 0, this->getNumChildren() );
-    //Create a dragger for each point
-    for (unsigned int i = 0; i < _feature->getGeometry()->size(); i++)
-    {
-        osg::Matrixd matrix;
-        double lat = (*_feature->getGeometry())[i].y();
-        double lon = (*_feature->getGeometry())[i].x();
-        _mapNode->getMap()->getProfile()->getSRS()->getEllipsoid()->computeLocalToWorldTransformFromLatLongHeight(osg::DegreesToRadians(lat), osg::DegreesToRadians(lon), 0, matrix);    
-
-        IntersectingDragger* dragger = new IntersectingDragger;
-        dragger->setColor( _color );
-        dragger->setPickColor( _pickColor );
-        dragger->setSize( _size );
-        dragger->setNode( _mapNode->getTerrainEngine() );
-        dragger->setupDefaultGeometry();
-        dragger->setMatrix(matrix);
-        dragger->setHandleEvents( true );        
-        dragger->addDraggerCallback(new MoveFeatureDraggerCallback(_feature.get(), _source.get(), _mapNode->getMap(), i) );
-
-        addChild(dragger);        
-    }
-}        
\ No newline at end of file
diff --git a/src/osgEarthUtil/FeatureManipTool b/src/osgEarthUtil/FeatureManipTool
new file mode 100644
index 0000000..e090956
--- /dev/null
+++ b/src/osgEarthUtil/FeatureManipTool
@@ -0,0 +1,117 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHUTIL_FEATURE_DRAGGER_TOOL_H
+#define OSGEARTHUTIL_FEATURE_DRAGGER_TOOL_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarthUtil/FeatureQueryTool>
+#include <osgEarthFeatures/FeatureDrawSet>
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarth/MapNode>
+#include <osgEarth/Draggers>
+#include <osgEarth/Units>
+#include <osgGA/GUIEventHandler>
+#include <osg/View>
+#include <osg/MatrixTransform>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Annotation;
+
+    /**
+     * Tool that let you select a feature and drag it around.
+     */
+    class OSGEARTHUTIL_EXPORT FeatureManipTool : public FeatureQueryTool,
+                                                 public FeatureQueryTool::Callback
+    {
+    public:
+        /**
+         * Constructs a new feature dragger tool.
+         */
+        FeatureManipTool( MapNode* mapNode );
+
+        /** dtor */
+        virtual ~FeatureManipTool() { }
+
+        /**
+         * Sets the position of the dragger
+         */
+        void setPosition( const GeoPoint& pos );
+
+        /**
+         * Sets the rotation of the dragger
+         */
+        void setRotation( const Angle& angle );
+
+        /**
+         * Cancels a manipulation in progress
+         */
+        void cancel();
+
+        /**
+         * Commits a manipulation in progress, buring in the new verts.
+         */
+        void commit();
+
+
+    public: // FeatureQueryTool::Callback
+
+        virtual void onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args );
+        virtual void onMiss( const EventArgs& args );
+
+
+    public: // GUIEventHandler
+
+        virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
+
+
+    public: // internal
+
+        void syncToDraggers();
+
+    protected:
+
+        /**
+         * Alters the appearance of the "manipulated" model. Override this method to provide a
+         * custom appearance.
+         */
+        virtual osg::Node* configureManip( osg::Node* node ) const;
+
+        /**
+         * Alters the appearance of the "ghost" model. Override this method to provide a
+         * custom appearance.
+         */
+        virtual osg::Node* configureGhost( osg::Node* node ) const;
+
+    protected:
+        FeatureDrawSet                     _drawSet;
+        osg::ref_ptr<osg::MatrixTransform> _manipModel;
+        osg::ref_ptr<osg::Node>            _ghostModel;
+        double                             _verticalOffset;
+        osg::ref_ptr<CircleNode>           _circle;
+        osg::ref_ptr<CircleNodeEditor>     _circleEditor;
+        osg::ref_ptr<osg::Group>           _workGroup;
+    };
+
+} } // namespace osgEarthUtil
+
+#endif // OSGEARTHUTIL_FEATURE_DRAGGER_TOOL_H
diff --git a/src/osgEarthUtil/FeatureManipTool.cpp b/src/osgEarthUtil/FeatureManipTool.cpp
new file mode 100644
index 0000000..8ffdb0d
--- /dev/null
+++ b/src/osgEarthUtil/FeatureManipTool.cpp
@@ -0,0 +1,422 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthUtil/FeatureManipTool>
+#include <osgEarthAnnotation/CircleNode>
+#include <osgEarthAnnotation/AnnotationEditing>
+#include <osgEarth/ECEF>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+#include <osgViewer/View>
+#include <osg/Depth>
+
+#define LC "[FeatureManipTool] "
+
+#define OE_TEST OE_NULL
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Annotation;
+
+//-----------------------------------------------------------------------
+
+namespace
+{
+    // walks a node path, accumulating the state and storing it in the target.
+    osg::StateSet* accumulateStateSet( osg::StateSet* target, const osg::NodePath& path )
+    {
+        osg::StateSet* s = new osg::StateSet();
+        for( osg::NodePath::const_iterator i = path.begin(); i != path.end(); ++i )
+        {
+            if ( (*i)->getStateSet() )
+                s->merge( *(*i)->getStateSet() );
+        }
+
+        s->merge( *target );
+        return s;
+    }
+
+
+    // input predicate for the query tool that specifies what action
+    // should trigger a drag.
+    struct CustomQueryPredicate : public FeatureQueryTool::InputPredicate
+    {
+        bool accept( const osgGA::GUIEventAdapter& ea )
+        {
+            return
+                ea.getEventType() == ea.PUSH &&
+                (ea.getButtonMask() & ea.LEFT_MOUSE_BUTTON) != 0 &&
+                (ea.getModKeyMask() & ea.MODKEY_SHIFT)      != 0;
+        }
+    };
+
+
+    // visits a scene graph and replaces the color array on each Geometry with
+    // a specified overall color.
+    struct ColorReplacer : public osg::NodeVisitor 
+    {
+        osg::ref_ptr<osg::Vec4Array> _colors;
+        ColorReplacer(const osg::Vec4f& color) : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN)
+        {
+            _colors = new osg::Vec4Array(1);
+            (*_colors.get())[0] = color;
+        }
+
+        void apply(osg::Geode& geode) 
+        {
+            for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+            {
+                osg::Geometry* g = geode.getDrawable(i)->asGeometry();
+                if ( g )
+                {
+                    g->setColorArray( _colors );
+                    g->setColorBinding( osg::Geometry::BIND_OVERALL );
+                }
+            }
+            traverse( geode );
+        };
+    };
+
+    
+    // Dragger callback to simply hooks back into the DraggerTool.
+    struct DraggerCallback : public Dragger::PositionChangedCallback
+    {
+        DraggerCallback( FeatureManipTool* tool ) : _tool(tool) { }
+
+        void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& pos)
+        {
+            _tool->syncToDraggers();
+        }
+
+        FeatureManipTool* _tool;
+    };
+
+    // updates the verts in a subgraph based on a pair of re-positioning transforms.
+    struct VertexMover : public osg::NodeVisitor
+    {
+        VertexMover(const osg::Matrixd& l2w_orig, const osg::Matrix&  w2l_new)
+            : _local2world0(l2w_orig), _world2local1(w2l_new), osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN) { }
+
+        void apply(osg::Geode& geode)
+        {
+            for( unsigned i=0; i<geode.getNumDrawables(); ++i )
+            {
+                osg::Geometry* g = geode.getDrawable(i)->asGeometry();
+                if ( g )
+                {
+                    osg::Vec3Array* verts = dynamic_cast<osg::Vec3Array*>( g->getVertexArray() );
+                    for( osg::Vec3Array::iterator i = verts->begin(); i != verts->end(); ++i )
+                    {
+                        osg::Vec3d vert3d = *i;
+                        osg::Vec3d vertWorld0 = vert3d * _local2world0;
+                        osg::Vec3d vertLocal1 = vertWorld0 * _world2local1;
+                        *i = vertLocal1;
+                    }
+                }
+            }
+            traverse( geode );
+        }
+
+        osg::Matrix _local2world0, _world2local1;
+    };
+}
+
+//-----------------------------------------------------------------------
+
+FeatureManipTool::FeatureManipTool(MapNode* mapNode) :
+FeatureQueryTool( mapNode )
+{
+    // install this object as a query callback so we will receive messages.
+    this->addCallback( this );
+
+    // a custom input predicate that triggers manip mode
+    this->setInputPredicate( new CustomQueryPredicate );
+}
+
+
+void 
+FeatureManipTool::onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args )
+{
+    //OE_TEST << LC << "onHit" << std::endl;
+
+    // cancel any existing drag first, just to be safe
+    cancel();
+
+    // extract the "selected" feature model from the scene graph.
+    _drawSet = index->getDrawSet( fid );
+    if ( !_drawSet.empty() )
+    {
+        // grab the point on the ground under the hit point and use that as the anchor.
+        osg::Vec3d anchorWorld;
+        anchorWorld = args._worldPoint;
+
+        // calculate the vertical offset of the mouse's hit point from the ground
+        GeoPoint hitMap;
+        hitMap.fromWorld( _mapNode->getMapSRS(), args._worldPoint );
+        double hae;
+        _verticalOffset = 0.0;
+        if (_mapNode->getTerrain()->getHeight( hitMap.getSRS(), hitMap.x(), hitMap.y(), 0L, &hae ))
+            _verticalOffset = hitMap.z() - hae;
+
+        // extract the "hit" feature from its draw set into a new draggable node.
+        osg::ref_ptr<osg::Node> node;
+
+        // create a copy of the drawset's geometry for dragging:
+        osg::Node* manipModel = _drawSet.createCopy();
+        if ( manipModel )
+        {
+            _workGroup = new osg::Group();
+            _mapNode->addChild( _workGroup.get() );
+
+            anchorWorld = manipModel->getBound().center();
+            
+            // calculate the vertical offset of the anchor point from the ground
+            GeoPoint anchorMap;
+            anchorMap.fromWorld( _mapNode->getMapSRS(), anchorWorld );
+            anchorMap.z() = 0;
+            anchorMap.altitudeMode() = ALTMODE_RELATIVE;
+            anchorMap.transformZ( ALTMODE_ABSOLUTE, _mapNode->getTerrain() );
+
+            anchorMap.toWorld( anchorWorld );
+
+            // set up the dragged model's appearance:
+            configureManip( manipModel );
+
+            // create a SECOND copy of the drawset's geometry that will act as the "ghost" model -- 
+            // it will sit in its original position to "remind" the user of where the drag started.
+            _ghostModel = _drawSet.createCopy();
+            configureGhost( _ghostModel.get() );
+
+            // create a transform that moves the feature from world coords to the local coordinate
+            // system around the mouse. This will allow us to move the feature without messing around
+            // with its relatively-positioned verts.
+            osg::Matrixd world2local_anchor;
+            anchorMap.createWorldToLocal( world2local_anchor );
+
+            osg::MatrixTransform* world2local_xform = new osg::MatrixTransform(world2local_anchor);
+            world2local_xform->addChild( manipModel );
+
+            // next, create the positioner matrix that goes from the local coordinates to mouse
+            // world coords. This is the matrix that will change as the user drags the mouse.
+            // It just starts out as the inverse of the matrix we just created.
+            osg::Matrixd local2world_anchor;
+            local2world_anchor.invert( world2local_anchor );
+
+            _manipModel = new osg::MatrixTransform( local2world_anchor );
+            _manipModel->addChild( world2local_xform );
+
+            // hide the original draw set.
+            _drawSet.setVisible( false );
+
+            // make a circle annotation that we will use to edit the feature's position and rotation:
+            Style circleStyle;
+            circleStyle.getOrCreate<PolygonSymbol>()->fill()->color() = Color(Color::Yellow, 0.25);
+            circleStyle.getOrCreate<LineSymbol>()->stroke()->color() = Color::White;
+            const osg::BoundingSphere& bs = manipModel->getBound();
+            _circle = new CircleNode( getMapNode(), anchorMap, Distance(bs.radius()*1.5), circleStyle, false );
+            _circle->getOrCreateStateSet()->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS,0,1,false) );
+
+            _circleEditor = new CircleNodeEditor( _circle.get() );
+            _circleEditor->getPositionDragger()->addPositionChangedCallback( new DraggerCallback(this) );
+            _circleEditor->getRadiusDragger()->addPositionChangedCallback( new DraggerCallback(this) );
+            _circleEditor->getOrCreateStateSet()->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS,0,1,false) );
+
+            // micro-manage the render order to get things just right:
+            _workGroup->getOrCreateStateSet()->setRenderBinDetails( 15, "TraversalOrderBin" );
+            _workGroup->addChild( _circle.get() );
+            _workGroup->addChild( _manipModel.get() );
+            _workGroup->addChild( _ghostModel.get() );
+            _workGroup->addChild( _circleEditor.get() );
+        }
+    }
+}
+
+
+void 
+FeatureManipTool::onMiss( const EventArgs& args )
+{
+    cancel();
+}
+
+
+bool 
+FeatureManipTool::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+{
+    bool handled = FeatureQueryTool::handle( ea, aa );
+    if ( !handled )
+    {
+        if ( _workGroup.valid() && ea.getEventType() == ea.KEYDOWN && ea.getKey() == ea.KEY_C )
+        {
+            commit();
+            handled = true;
+        }
+    }
+    return handled;
+}
+
+
+void
+FeatureManipTool::setPosition( const GeoPoint& pos )
+{
+    if ( _circleEditor.valid() )
+    {
+        _circleEditor->setPosition( pos );
+        syncToDraggers();
+    }
+}
+
+
+void
+FeatureManipTool::setRotation( const Angle& rot )
+{
+    if ( _circleEditor.valid() )
+    {
+        _circleEditor->setBearing( rot );
+        syncToDraggers();
+    }
+}
+
+
+void
+FeatureManipTool::syncToDraggers()
+{
+    // position the feature based on the circle annotation's draggers:
+    GeoPoint pos = _circleEditor->getPositionDragger()->getPosition();
+    GeoPoint rad = _circleEditor->getRadiusDragger()->getPosition();
+
+    pos.makeGeographic();
+    rad.makeGeographic();
+
+    double bearing = GeoMath::bearing( 
+        osg::DegreesToRadians(pos.y()), osg::DegreesToRadians(pos.x()),
+        osg::DegreesToRadians(rad.y()), osg::DegreesToRadians(rad.x()) );
+
+    osg::Matrixd local2world;
+    pos.createLocalToWorld( local2world );
+
+    // rotate the feature:
+    osg::Quat rot( osg::PI_2-bearing, osg::Vec3d(0,0,1) );
+    local2world.preMultRotate( rot );
+
+    // move the feature:
+    _manipModel->setMatrix(local2world);
+
+    // only show the ghost when the ghost and dragger are sufficiently separated.
+    _ghostModel->setNodeMask( _manipModel->getBound().intersects( _ghostModel->getBound() ) ? 0 : ~0 );
+}
+
+
+void
+FeatureManipTool::cancel()
+{
+    if ( _workGroup.valid() )
+    {
+        if ( _workGroup->getNumParents() > 0 )
+            _workGroup->getParent(0)->removeChild(_workGroup.get());
+        _workGroup = 0L;
+    }
+
+    _manipModel   = 0L;
+    _ghostModel   = 0L;
+    _circle       = 0L;
+    _circleEditor = 0L;
+
+    _drawSet.setVisible( true );
+    _drawSet.clear();
+}
+
+
+void
+FeatureManipTool::commit()
+{
+    if ( _workGroup.valid() )
+    {
+        // extract the manipulation matricies:
+        osg::MatrixTransform* xform1 = _manipModel.get();
+        osg::MatrixTransform* xform2 = dynamic_cast<osg::MatrixTransform*>( _manipModel->getChild(0) );
+
+        const osg::Matrixd& world2local_anchor = xform2->getMatrix();
+        const osg::Matrix&  local2world_move   = xform1->getMatrix();
+
+        // go through the draw set and update the verts based on the new location
+        for( FeatureDrawSet::DrawableSlices::iterator s = _drawSet.slices().begin(); s != _drawSet.slices().end(); ++s )
+        {
+            const FeatureDrawSet::DrawableSlice& slice = *s;
+            
+            // collection a set of indicies in the slice:
+            std::set<unsigned> indexSet;
+            _drawSet.collectPrimitiveIndexSet( slice, indexSet );
+
+            // need the inverse of our original L2W so we can reposition the verts:
+            osg::Matrixd world2local;
+            world2local.invert( slice.local2world );
+
+            // recalculate the verts in their local reference frame:
+            osg::Vec3Array* verts = dynamic_cast<osg::Vec3Array*>( slice.drawable->asGeometry()->getVertexArray() );
+            for( std::set<unsigned>::iterator i = indexSet.begin(); i != indexSet.end(); ++i )
+            {
+                osg::Vec3d vert3d = (*verts)[*i];
+                osg::Vec3d vertWorld = (((vert3d * slice.local2world) * world2local_anchor) * local2world_move);
+                osg::Vec3d vertLocalNew = vertWorld * world2local;
+                (*verts)[*i] = vertLocalNew;
+            }
+            verts->dirty();
+        }
+    }
+
+    cancel();
+}
+
+
+osg::Node*
+FeatureManipTool::configureManip( osg::Node* node ) const
+{
+    //nop
+    return node;
+}
+
+
+osg::Node*
+FeatureManipTool::configureGhost( osg::Node* node ) const
+{
+    osg::StateSet* s = node->getOrCreateStateSet();
+
+    // note: everything here must be OVERRIDE so we override the default state of the ghost model.
+
+    //s->setRenderBinDetails( 10, "DepthSortedBin", osg::StateSet::USE_RENDERBIN_DETAILS );
+    s->setMode( GL_BLEND,    osg::StateAttribute::ON  | osg::StateAttribute::OVERRIDE );
+    s->setMode( GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+
+    // turn off texturing:
+    for( int ii = 0; ii < Registry::instance()->getCapabilities().getMaxFFPTextureUnits(); ++ii )
+    {
+        s->setTextureMode( ii, GL_TEXTURE_2D, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+        s->setTextureMode( ii, GL_TEXTURE_3D, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+        //sset->setTextureMode( ii, GL_TEXTURE_RECTANGLE, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+        //sset->setTextureMode( ii, GL_TEXTURE_CUBE_MAP, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+    }
+
+    // make it a nice transparent color
+    // careful, the ghost is a "shallow copy" of the original, so don't go modifying any buffer objects!
+    // (replacing them is OK though.)
+    ColorReplacer replacer(osg::Vec4f(0.5f, 0.5f, 1.0f, 0.35f));
+    node->accept( replacer );
+
+    return node;
+}
diff --git a/src/osgEarthUtil/FeatureQueryTool b/src/osgEarthUtil/FeatureQueryTool
new file mode 100644
index 0000000..7a1e209
--- /dev/null
+++ b/src/osgEarthUtil/FeatureQueryTool
@@ -0,0 +1,185 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHUTIL_FEATURE_QUERY_TOOL_H
+#define OSGEARTHUTIL_FEATURE_QUERY_TOOL_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarth/GeoData>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/FeatureSource>
+#include <osgEarthFeatures/FeatureSourceIndexNode>
+#include <osgEarthUtil/Controls>
+#include <osgGA/GUIEventHandler>
+#include <osg/View>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Features;
+
+    /**
+     * Tool that let you query the map for Features generated from a FeatureSource.
+     *
+     * By default, an unmodified left-click will activate a query. You can replace
+     * this test by calling setInputPredicate().
+     */
+    class OSGEARTHUTIL_EXPORT FeatureQueryTool : public osgGA::GUIEventHandler,
+                                                 public MapNodeObserver
+    {
+    public:
+
+        struct Callback : public osg::Referenced
+        {
+            struct EventArgs 
+            {
+                const osgGA::GUIEventAdapter*  _ea;
+                osgGA::GUIActionAdapter*       _aa;
+                osg::Vec3d                     _worldPoint;
+            };
+
+            // called when a valid feature is found under the mouse coords
+            virtual void onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args ) { }
+
+            // called when no feature is found under the mouse coords
+            virtual void onMiss( const EventArgs& args ) { }
+        };
+
+        /**
+         * Interface for a custom input test.
+         */
+        class InputPredicate : public osg::Referenced
+        {
+        public:
+            // return true to active a query under the mouse cursor.
+            virtual bool accept( const osgGA::GUIEventAdapter& ea ) =0;
+        };
+
+    public:
+        /**
+         * Constructs a new feature query tool.
+         *
+         * @param mapNode
+         *      Map node containing feature data to query
+         * @param callbackToAdd
+         *      (optional) convenience; calls addCallback with this parameter
+         */
+        FeatureQueryTool( 
+            MapNode*  mapNode,
+            Callback* callbackToAdd =0L );
+
+        /** dtor */
+        virtual ~FeatureQueryTool() { }
+
+        /**
+         * Adds a feature query callback.
+         */
+        void addCallback( Callback* callback );
+
+        /**
+         * Removes a feature query callback.
+         */
+
+        /**
+         * Sets a custom input test. By default, the action is a left-click.
+         */
+        void setInputPredicate( InputPredicate* value ) { _inputPredicate = value; }
+
+
+    public: // GUIEventHandler
+
+        virtual bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
+
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        virtual MapNode* getMapNode() { return _mapNode.get(); }
+
+
+    protected:
+        osg::observer_ptr<MapNode> _mapNode;
+        bool                       _mouseDown;
+        float                      _mouseDownX, _mouseDownY;
+
+        osg::ref_ptr<InputPredicate> _inputPredicate;
+
+        typedef std::vector< osg::observer_ptr<Callback> > Callbacks;
+        Callbacks _callbacks;
+    };
+
+    //--------------------------------------------------------------------
+
+    /**
+     * Sample callback that will highlight a feature upon a query hit.
+     */
+    class OSGEARTHUTIL_EXPORT FeatureHighlightCallback : public FeatureQueryTool::Callback
+    {
+    public:
+        virtual void onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args );
+
+        virtual void onMiss( const EventArgs& args );
+
+    protected:
+        void clear();
+
+        struct Selection {
+            osg::observer_ptr<FeatureSourceIndexNode> _index;
+            osg::observer_ptr<osg::Group>             _group;
+            FeatureID                                 _fid;
+            bool operator < ( const Selection& rhs ) const { return _fid < rhs._fid; }
+        };
+        typedef std::set<Selection> SelectionSet;
+        SelectionSet _selections;
+
+        /** dtor */
+        virtual ~FeatureHighlightCallback() { }
+    };
+
+
+    //--------------------------------------------------------------------
+
+    /**
+     * Sample callback that will display feature attributes upon a query hit.
+     */
+    class OSGEARTHUTIL_EXPORT FeatureReadoutCallback : public FeatureQueryTool::Callback
+    {
+    public:
+        FeatureReadoutCallback( Controls::Container* container );
+
+    public:
+        virtual void onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args );
+
+        virtual void onMiss( const EventArgs& args );
+
+    protected:
+        void clear();
+        Controls::Grid* _grid;
+
+        /** dtor */
+        virtual ~FeatureReadoutCallback() { }
+    };
+
+
+} } // namespace osgEarthUtil
+
+#endif // OSGEARTHUTIL_FEATURE_QUERY_TOOL_H
diff --git a/src/osgEarthUtil/FeatureQueryTool.cpp b/src/osgEarthUtil/FeatureQueryTool.cpp
new file mode 100644
index 0000000..afb7eaf
--- /dev/null
+++ b/src/osgEarthUtil/FeatureQueryTool.cpp
@@ -0,0 +1,334 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthUtil/FeatureQueryTool>
+#include <osgEarth/Pickers>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+#include <osgViewer/View>
+#include <osg/Depth>
+
+#define LC "[FeatureQueryTool] "
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+using namespace osgEarth::Util;
+using namespace osgEarth::Util::Controls;
+
+//#undef OE_DEBUG
+//#define OE_DEBUG OE_INFO
+
+//-----------------------------------------------------------------------
+
+FeatureQueryTool::FeatureQueryTool(MapNode*                    mapNode,
+                                   FeatureQueryTool::Callback* callback) :
+_mapNode( mapNode )
+{
+    if ( callback )
+        addCallback( callback );
+}
+
+void
+FeatureQueryTool::addCallback( FeatureQueryTool::Callback* cb )
+{
+    if ( cb )
+        _callbacks.push_back( cb );
+}
+
+void
+FeatureQueryTool::setMapNode( MapNode* mapNode )
+{
+    _mapNode = mapNode;
+}
+
+bool
+FeatureQueryTool::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+{
+    bool handled = false;
+    bool attempt;
+
+    if ( _inputPredicate.valid() )
+    {
+        attempt = _inputPredicate->accept(ea);
+    }
+    else
+    {
+        attempt =
+            ea.getEventType() == osgGA::GUIEventAdapter::RELEASE &&
+            _mouseDown && 
+            fabs(ea.getX()-_mouseDownX) <= 3.0 && 
+            fabs(ea.getY()-_mouseDownY) <= 3.0;
+    }
+
+    if ( attempt && getMapNode() )
+    {
+        osg::View* view = aa.asView();
+
+        Picker picker(
+            dynamic_cast<osgViewer::View*>(view),
+            getMapNode()->getModelLayerGroup() );
+
+        Picker::Hits hits;
+
+        if ( picker.pick( ea.getX(), ea.getY(), hits ) )
+        {
+            // find the closest indexed feature to the camera. It must be a feature
+            // that is not only closest, but exists in the index as well.
+
+            FeatureSourceIndexNode* closestIndex    = 0L;
+            FeatureID               closestFID;
+            double                  closestDistance = DBL_MAX;
+            osg::Vec3d              closestWorldPt;
+
+            for(Picker::Hits::iterator hit = hits.begin(); hit != hits.end(); ++hit )
+            {
+                FeatureSourceIndexNode* index = picker.getNode<FeatureSourceIndexNode>( *hit );
+                if ( index && (hit->distance < closestDistance) )
+                {
+                    FeatureID fid;
+                    if ( index->getFID( hit->drawable, hit->primitiveIndex, fid ) )
+                    {
+                        closestIndex    = index;
+                        closestFID      = fid;
+                        closestDistance = hit->distance;
+                        closestWorldPt  = hit->matrix.valid() ? hit->localIntersectionPoint * (*hit->matrix.get()) : hit->localIntersectionPoint;
+                    }
+                }
+            }
+
+            if ( closestIndex )
+            {
+                OE_DEBUG << LC << "HIT: feature ID = " << (unsigned)closestFID << std::endl;
+
+                Callback::EventArgs args;
+                args._ea = &ea;
+                args._aa = &aa;
+                args._worldPoint = closestWorldPt;
+
+                for( Callbacks::iterator i = _callbacks.begin(); i != _callbacks.end(); )
+                {
+                    if ( i->valid() )
+                    {
+                        i->get()->onHit( closestIndex, closestFID, args );
+                        ++i;
+                    }
+                    else
+                    {
+                        i = _callbacks.erase( i );
+                    }
+                }
+
+                handled = true;
+            }
+        }
+
+        if ( !handled )
+        {
+            OE_DEBUG << LC << "miss" << std::endl;
+
+            Callback::EventArgs args;
+            args._ea = &ea;
+            args._aa = &aa;
+
+            for( Callbacks::iterator i = _callbacks.begin(); i != _callbacks.end(); )
+            {
+                if ( i->valid() )
+                {
+                    i->get()->onMiss( args );
+                    ++i;
+                }
+                else
+                {
+                    i = _callbacks.erase( i );
+                }
+            }
+        }
+
+        _mouseDown = false;
+    }
+
+    // unmodified left mouse click
+    else if (
+        ea.getEventType()  == osgGA::GUIEventAdapter::PUSH &&
+        ea.getModKeyMask() == 0 &&
+        ea.getButtonMask() == osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON)
+    {
+        _mouseDown = true;
+        _mouseDownX = ea.getX();
+        _mouseDownY = ea.getY();
+    }
+
+    return handled;
+}
+
+//-----------------------------------------------------------------------
+
+void
+FeatureHighlightCallback::onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args )
+{
+    clear();
+
+    FeatureDrawSet& drawSet = index->getDrawSet(fid);
+    if ( !drawSet.empty() )
+    {
+        osg::Group* container = 0L;
+        osg::Group* group = new osg::Group();
+        osg::Geode* geode = 0L;
+
+        OE_DEBUG << "Slices = " << drawSet.slices().size() << std::endl;
+
+        for( FeatureDrawSet::DrawableSlices::iterator d = drawSet.slices().begin(); d != drawSet.slices().end(); ++d )
+        {
+            FeatureDrawSet::DrawableSlice& slice = *d;
+            osg::Geometry* featureGeom = slice.drawable->asGeometry();
+
+            osg::Geometry* highlightGeom = new osg::Geometry( *featureGeom, osg::CopyOp::SHALLOW_COPY );
+            osg::Vec4Array* highlightColor = new osg::Vec4Array(1);
+            (*highlightColor)[0] = osg::Vec4f(0,1,1,0.5);
+            highlightGeom->setColorArray(highlightColor);
+            highlightGeom->setColorBinding(osg::Geometry::BIND_OVERALL);
+            highlightGeom->setPrimitiveSetList( d->primSets );
+
+            if ( !geode )
+            {
+                geode = new osg::Geode();
+                group->addChild( geode );
+            }
+
+            geode->addDrawable(highlightGeom);
+
+            if ( !container )
+            {
+                // establishes a container for the highlight geometry.
+                osg::Geode* featureGeode = dynamic_cast<osg::Geode*>( featureGeom->getParent(0) );
+                container = featureGeode->getParent(0);
+                if ( featureGeom->getStateSet() )
+                    geode->getOrCreateStateSet()->merge( *featureGeom->getStateSet() );
+            }
+        }
+
+        for( FeatureDrawSet::Nodes::iterator n = drawSet.nodes().begin(); n != drawSet.nodes().end(); ++n )
+        {
+            group->addChild( *n );
+            if ( !container )
+                container = (*n)->getParent(0);
+        }
+
+        osg::StateSet* sset = group->getOrCreateStateSet();
+
+        // set up to overwrite the real geometry:
+        sset->setAttributeAndModes( new osg::Depth(osg::Depth::LEQUAL,0,1,false), osg::StateAttribute::ON|osg::StateAttribute::OVERRIDE );
+        sset->setRenderBinDetails( 42, "DepthSortedBin" );
+
+        // turn off texturing:
+        for( int ii = 0; ii < Registry::instance()->getCapabilities().getMaxFFPTextureUnits(); ++ii )
+        {
+            sset->setTextureMode( ii, GL_TEXTURE_2D, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+            sset->setTextureMode( ii, GL_TEXTURE_3D, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+            //sset->setTextureMode( ii, GL_TEXTURE_RECTANGLE, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+            //sset->setTextureMode( ii, GL_TEXTURE_CUBE_MAP, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+        }
+
+        sset->setMode( GL_BLEND,    osg::StateAttribute::ON  | osg::StateAttribute::OVERRIDE );
+        sset->setMode( GL_LIGHTING, osg::StateAttribute::OFF | osg::StateAttribute::OVERRIDE );
+
+        container->addChild( group );
+
+        Selection selection;
+        selection._index     = index;
+        selection._fid       = fid;
+        selection._group     = group;
+
+        _selections.insert( selection );
+    }
+}
+
+void
+FeatureHighlightCallback::onMiss( const EventArgs& args )
+{
+    clear();
+}
+
+void
+FeatureHighlightCallback::clear()
+{
+    for( SelectionSet::const_iterator i = _selections.begin(); i != _selections.end(); ++i )
+    {
+        const Selection& selection = *i;
+        osg::ref_ptr<osg::Group> safeGroup = selection._group.get();
+        if ( safeGroup.valid() && safeGroup->getNumParents() > 0 )
+        {
+            osg::Group* parent = safeGroup->getParent(0);
+            if ( parent ) 
+                parent->removeChild( safeGroup.get() );
+        }
+    }
+    _selections.clear();
+}
+
+
+//-----------------------------------------------------------------------
+
+FeatureReadoutCallback::FeatureReadoutCallback( Container* container )
+{
+    _grid = new Grid();
+    _grid->setBackColor( Color(Color::Black,0.7f) );
+    container->addControl( _grid );
+}
+
+void
+FeatureReadoutCallback::onHit( FeatureSourceIndexNode* index, FeatureID fid, const EventArgs& args )
+{
+    clear();
+    if ( index && index->getFeatureSource() )
+    {
+        Feature* f = index->getFeatureSource()->getFeature( fid );
+        if ( f )
+        {
+            unsigned r=0;
+
+            _grid->setControl( 0, r, new LabelControl("FID", Color::Red) );
+            _grid->setControl( 1, r, new LabelControl(Stringify()<<fid, Color::White) );
+            ++r;
+
+            const AttributeTable& attrs = f->getAttrs();
+            for( AttributeTable::const_iterator i = attrs.begin(); i != attrs.end(); ++i, ++r )
+            {
+                _grid->setControl( 0, r, new LabelControl(i->first, 14.0f, Color::Yellow) );
+                _grid->setControl( 1, r, new LabelControl(i->second.getString(), 14.0f, Color::White) );
+            }
+            _grid->setVisible( true );
+        }
+    }
+    args._aa->requestRedraw();
+}
+
+void
+FeatureReadoutCallback::onMiss( const EventArgs& args )
+{
+    clear();
+    args._aa->requestRedraw();
+}
+
+void
+FeatureReadoutCallback::clear()
+{
+    _grid->clearControls();
+    _grid->setVisible( false );
+}
diff --git a/src/osgEarthUtil/Formatter b/src/osgEarthUtil/Formatter
new file mode 100644
index 0000000..07d2982
--- /dev/null
+++ b/src/osgEarthUtil/Formatter
@@ -0,0 +1,44 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_UTIL_FORMATTER_H
+#define OSGEARTH_UTIL_FORMATTER_H
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/GeoData>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+     * Interface class for coordinate formatters.
+     */
+    class Formatter : public osg::Referenced
+    {
+    public:
+        virtual std::string format( const GeoPoint& mapCoords ) const =0;
+        std::string operator()(const GeoPoint& p) const { return format(p); }
+
+        /** dtor */
+        virtual ~Formatter() { }
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_UTIL_FORMATTER_H
diff --git a/src/osgEarthUtil/Formatters b/src/osgEarthUtil/Formatters
deleted file mode 100644
index 0696f27..0000000
--- a/src/osgEarthUtil/Formatters
+++ /dev/null
@@ -1,138 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTH_UTIL_FORMATTERS_H
-#define OSGEARTH_UTIL_FORMATTERS_H
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/SpatialReference>
-#include <osgEarth/Units>
-
-namespace osgEarth { namespace Util
-{
-    using namespace osgEarth;
-
-    class OSGEARTHUTIL_EXPORT LatLongFormatter
-    {
-    public:
-        enum AngularFormat {
-            FORMAT_DEFAULT,
-            FORMAT_DECIMAL_DEGREES,
-            FORMAT_DEGREES_DECIMAL_MINUTES,
-            FORMAT_DEGREES_MINUTES_SECONDS
-        };
-
-        enum Options {
-            USE_SYMBOLS     = 1 << 0,   // whether to use symbols
-            USE_COLONS      = 1 << 1,   // whether to separate components with colons
-            USE_SPACES      = 1 << 2    // whether to separate components with spaces
-        };
-
-    public:
-        LatLongFormatter(          
-            const AngularFormat& defaultFormat =FORMAT_DEGREES_MINUTES_SECONDS,
-            unsigned             optionsMask   =(USE_SYMBOLS | USE_SPACES) );
-
-        /**
-         * Sets the output precision for decimal numbers  (default is 5)
-         */
-        void setPrecision( int value ) { _prec = value; }
-
-        /**
-         * Sets the formatting options
-         */
-        void setOptions( const Options& options ) { _options = options; }
-
-        /** 
-         * Formats an angle into one of the supported angular formats
-         */
-        std::string format(
-            const Angular&       angle,
-            int                  precision =-1, 
-            const AngularFormat& format    =FORMAT_DEFAULT);
-
-        /**
-         * Parses a string into an angle (returning false if parsing fails).
-         */
-        bool parseAngle( const std::string& input, Angular& out_value );
-
-    protected:
-        unsigned      _options;
-        AngularFormat _defaultFormat;
-        int           _prec;
-    };
-
-    //------------------------------------------------------------------------
-
-    /**
-     * Formats coordinate data as MGRS.
-     *
-     * NOTE: This class does not yet handle the special UTM zone exceptions for
-     *       southwest Norway (zone 32V) and Svalbard (31X, 33X, 35X, 37X).
-     *
-     * See: http://en.wikipedia.org/wiki/Military_grid_reference_system
-     */
-    class OSGEARTHUTIL_EXPORT MGRSFormatter
-    {
-    public:
-        enum Precision
-        {
-            PRECISION_100000M = 100000,     // i.e., omit the numerical offsets altogether
-            PRECISION_10000M  = 10000,
-            PRECISION_1000M   = 1000,
-            PRECISION_100M    = 100,
-            PRECISION_10M     = 10,
-            PRECISION_1M      = 1
-        };
-
-        enum Options
-        {
-            USE_SPACES        = 1 << 0,     // insert spaces between MGRS elements
-            FORCE_AA_SCHEME   = 1 << 1,     // use the AA row lettering scheme regardless of ellipsoid
-            FORCE_AL_SCHEME   = 1 << 2      // use the AL row lettering scheme regardless of ellipsoid
-        };
-
-    public:
-        /**
-         * Initialized an MGRS formatter. 
-         *
-         * @param precision Precision with which to print the MGRS string (see Precision above)
-         * @param refSRS    Reference geographic SRS for MGRS encoding. Older datums
-         *                  (Clark and Bessel) change the row lettering scheme. Default=WGS84.
-         * @param options   Formatting options (see Options above)
-         */
-        MGRSFormatter(
-            Precision               precision =PRECISION_1M,
-            const SpatialReference* refSRS    =0L,
-            unsigned                options   =0);
-
-        /**
-         * Formats a lat/lon (in degrees) as an MGRS string.
-         */
-        std::string format( double latDeg, double lonDeg ) const;
-
-    private:
-        osg::ref_ptr<const SpatialReference> _refSRS;
-        bool                                 _useAL;
-        Precision                            _precision;
-        unsigned                             _options;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif // OSGEARTH_UTIL_FORMATTERS_H
diff --git a/src/osgEarthUtil/Formatters.cpp b/src/osgEarthUtil/Formatters.cpp
deleted file mode 100644
index 9fb055b..0000000
--- a/src/osgEarthUtil/Formatters.cpp
+++ /dev/null
@@ -1,335 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthUtil/Formatters>
-#include <iomanip>
-#include <sstream>
-#include <cstdio>
-#include <algorithm>
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-
-#define LC "[LatLongFormatter] "
-
-LatLongFormatter::LatLongFormatter(const AngularFormat& defaultFormat,
-                                   unsigned             options ) :
-_defaultFormat( defaultFormat ),
-_options      ( options ),
-_prec         ( 5 )
-{
-    if ( _defaultFormat == FORMAT_DEFAULT )
-    {
-        _defaultFormat = FORMAT_DEGREES_MINUTES_SECONDS;
-    }
-}
-
-std::string
-LatLongFormatter::format( const Angular& angle, int precision, const AngularFormat& format )
-{
-    std::stringstream buf;
-    std::string result;
-    std::string space = _options & USE_SPACES ? " " : "";
-
-    AngularFormat f =
-        format == FORMAT_DEFAULT ? _defaultFormat :
-        format;
-
-    if ( precision < 0 )
-        precision = _prec;
-
-    if ( precision > 0 )
-        buf << std::setprecision(precision);
-
-    switch( f )
-    {
-    case FORMAT_DECIMAL_DEGREES:
-        {
-            if ( _options & USE_SYMBOLS )
-                buf << angle.as(Units::DEGREES) << "\xb0";
-            else
-                buf << angle.as(Units::DEGREES);
-        }
-        break;
-
-    case FORMAT_DEGREES_DECIMAL_MINUTES:
-        {
-            double df = angle.as(Units::DEGREES);
-            int    d  = (int)floor(df);
-            double mf = 60.0*(df-(double)d);
-            if ( mf == 60.0 ) {
-                d += 1;
-                mf = 0.0;
-            }
-            if ( _options & USE_SYMBOLS )
-                buf << d << "\xb0" << space << mf << "'";
-            else if ( _options & USE_COLONS )
-                buf << d << ":" << mf;
-            else
-                buf << d << " " << mf;
-        }
-        break;
-
-    case FORMAT_DEGREES_MINUTES_SECONDS:
-        {
-            double df = angle.as(Units::DEGREES);
-            int    d  = (int)floor(df);
-            double mf = 60.0*(df-(double)d);
-            int    m  = (int)floor(mf);
-            double sf = 60.0*(mf-(double)m);
-            if ( sf == 60.0 ) {
-                m += 1;
-                sf = 0.0;
-                if ( m == 60 ) {
-                    d += 1;
-                    m = 0;
-                }
-            }
-            if ( _options & USE_SYMBOLS )
-                buf << d << "\xb0" << space << m << "'" << space << sf << "\"";
-            else if ( _options & USE_COLONS )
-                buf << d << ":" << m << ":" << sf;
-            else
-                buf << d << " " << m << " " << sf;
-        }
-        break;
-    }
-
-    result = buf.str();
-    return result;
-}
-
-bool
-LatLongFormatter::parseAngle( const std::string& input, Angular& out_value )
-{
-    const char* c = input.c_str();
-
-    double d=0.0, m=0.0, s=0.0;
-
-    if (sscanf(c, "%lf:%lf:%lf",     &d, &m, &s) == 3 ||
-        sscanf(c, "%lf\xb0%lf'%lf\"",   &d, &m, &s) == 3 ||
-        sscanf(c, "%lf\xb0 %lf' %lf\"", &d, &m ,&s) == 3 ||
-        sscanf(c, "%lfd %lf' %lf\"", &d, &m, &s) == 3 ||
-        sscanf(c, "%lfd %lfm %lfs",  &d, &m, &s) == 3 ||
-        sscanf(c, "%lf %lf' %lf\"",  &d, &m, &s) == 3 )
-    {
-        out_value.set( d + m/60.0 + s/3600.0, Units::DEGREES );
-        return true;
-    }
-    else if (
-        sscanf(c, "%lf:%lf",   &d, &m) == 2 ||
-        sscanf(c, "%lf\xb0 %lf'", &d, &m) == 2 ||
-        sscanf(c, "%lf\xb0%lf'",  &d, &m) == 2 ||
-        sscanf(c, "%lfd %lf'", &d, &m) == 2 ||
-        sscanf(c, "%lfd %lfm", &d, &m) == 2 ||
-        sscanf(c, "%lfd%lf'",  &d, &m) == 2 ||
-        sscanf(c, "%lf %lf'",  &d, &m) == 2 )
-    {
-        out_value.set( d + m/60.0, Units::DEGREES );
-        return true;
-    }
-    else if (
-        sscanf(c, "%lf\xb0", &d) == 1 ||
-        sscanf(c, "%lfd", &d) == 1 ||
-        sscanf(c, "%lf",  &d) == 1 )
-    {
-        out_value.set( d, Units::DEGREES );
-        return true;
-    }
-
-    return false;
-}
-
-//------------------------------------------------------------------------
-
-#undef LC
-#define LC "[MGRSFormatter] "
-
-namespace
-{
-    static char*    GZD_ALPHABET     = "CDEFGHJKLMNPQRSTUVWXX";    // 2 X's because X is a 12 degree high grid zone
-    static char*    UTM_COL_ALPHABET = "ABCDEFGHJKLMNPQRSTUVWXYZ";
-    static char*    UTM_ROW_ALPHABET = "ABCDEFGHJKLMNPQRSTUV";
-    static unsigned UTM_ROW_ALPHABET_SIZE = 20;
-
-    static char*    UPS_COL_ALPHABET = "ABCFGHJKLPQRSTUXYZ";        // omit I, O, D, E, M, N, V, W
-    static unsigned UPS_COL_ALPHABET_SIZE = 18;
-    static char*    UPS_ROW_ALPHABET = "ABCDEFGHJKLMNPQRSTUVWXYZ";  // omit I, O
-    static unsigned UPS_ROW_ALPHABET_SIZE = 24;
-}
-
-MGRSFormatter::MGRSFormatter(Precision               precision,
-                             const SpatialReference* referenceSRS,
-                             unsigned                options ) :
-_precision( precision ),
-_options  ( options )
-{
-    if ( referenceSRS )
-    {
-        _refSRS = referenceSRS->getGeographicSRS();
-    }
-    else
-    {
-        _refSRS = SpatialReference::create( "wgs84" );
-    }
-
-    if ( options & FORCE_AA_SCHEME )
-    {
-        _useAL = false;
-    }
-    else if ( options & FORCE_AL_SCHEME )
-    {
-        _useAL = true;
-    }
-    else
-    {
-        // use the "AL" lettering scheme for these older datum ellipsoids.
-        std::string eName = _refSRS->getEllipsoid()->getName();
-        _useAL = 
-            eName.find("bessel") != std::string::npos ||
-            eName.find("clark")  != std::string::npos ||
-            eName.find("clrk")   != std::string::npos;
-    }
-}
-
-std::string
-MGRSFormatter::format( double latDeg, double lonDeg ) const
-{
-    unsigned    zone;
-    char        gzd;
-    unsigned    x=0, y=0;
-    char        sqid[3];
-    std::string space;
-
-    if ( _options & USE_SPACES )
-        space = " ";
-
-    sqid[0] = '?';
-    sqid[1] = '?';
-    sqid[2] = 0;
-
-    if ( latDeg >= 84.0 || latDeg <= -80.0 ) // polar projection
-    {
-        bool isNorth = latDeg > 0.0;
-        zone = 0;
-        gzd = isNorth ? (lonDeg < 0.0 ? 'Y' : 'Z') : (lonDeg < 0.0? 'A' : 'B');
-
-        osg::ref_ptr<const SpatialReference> ups = isNorth?
-            SpatialReference::create( "+proj=stere +lat_ts=90 +lat_0=90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0" ) :
-            SpatialReference::create( "+proj=stere +lat_ts=-90 +lat_0=-90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0" );
-
-        if ( !ups.valid() )
-        {
-            OE_WARN << LC << "Failed to create UPS SRS" << std::endl;
-            return "";
-        }
-
-        double upsX, upsY;
-        if ( _refSRS->transform2D( lonDeg, latDeg, ups.get(), upsX, upsY ) == false )
-        {
-            OE_WARN << LC << "Failed to transform lat/long to UPS" << std::endl;
-            return "";
-        }
-
-        int sqXOffset = upsX >= 0.0 ? (int)floor(upsX/100000.0) : -(int)floor(1.0-(upsX/100000.0));
-        int sqYOffset = upsY >= 0.0 ? (int)floor(upsY/100000.0) : -(int)floor(1.0-(upsY/100000.0));
-
-        int alphaOffset = isNorth ? 7 : 12;
-
-        sqid[0] = UPS_COL_ALPHABET[ (UPS_COL_ALPHABET_SIZE+sqXOffset) % UPS_COL_ALPHABET_SIZE ];
-        sqid[1] = UPS_ROW_ALPHABET[alphaOffset + sqYOffset];
-
-        x = upsX - (100000.0*(double)sqXOffset);
-        y = upsY - (100000.0*(double)sqYOffset);
-    }
-
-    else // UTM
-    {
-        // figure out the grid zone designator
-        unsigned gzdIndex = ((unsigned)(latDeg+80.0))/8;
-        gzd = GZD_ALPHABET[gzdIndex];
-
-        // figure out the UTM zone:
-        zone = (unsigned)floor((lonDeg+180.0)/6.0);   // [0..59]
-        bool north = latDeg >= 0.0;
-
-        // convert the input coordinates to UTM:
-        // yes, always use +north so we get Y relative to equator
-        std::stringstream buf;
-        buf << "+proj=utm +zone=" << (zone+1) << " +north +units=m";
-        osg::ref_ptr<SpatialReference> utm = SpatialReference::create( buf.str() );
-
-        double utmX, utmY;
-        if ( _refSRS->transform2D( lonDeg, latDeg, utm.get(), utmX, utmY ) == false )
-        {
-            OE_WARN << LC << "Error transforming lat/long into UTM" << std::endl;
-            return "";
-        }
-
-        // the alphabet set:
-        unsigned set = zone % 6; // [0..5]
-
-        // find the horizontal SQID offset (100KM increments) from the central meridian:
-        unsigned xSetOffset = 8 * (set % 3);
-        double xMeridianOffset = utmX - 500000.0;
-        int sqMeridianOffset = xMeridianOffset >= 0.0 ? (int)floor(xMeridianOffset/100000.0) : -(int)floor(1.0-(xMeridianOffset/100000.0));
-        unsigned indexOffset = (4 + sqMeridianOffset);
-        sqid[0] = UTM_COL_ALPHABET[xSetOffset + indexOffset];
-        double xWest = 500000.0 + (100000.0*(double)sqMeridianOffset);
-        x = utmX - xWest;
-
-        // find the vertical SQID offset (100KM increments) from the equator:
-        unsigned ySetOffset = 5 * (zone % 2); //(set % 2);
-        int sqEquatorOffset = (int)floor(utmY/100000.0);
-        int absOffset = ySetOffset + sqEquatorOffset + (10 * UTM_ROW_ALPHABET_SIZE);
-        if ( _useAL )
-            absOffset += 10;
-        sqid[1] = UTM_ROW_ALPHABET[absOffset % UTM_ROW_ALPHABET_SIZE];
-        y = utmY - (100000.0*(double)sqEquatorOffset);
-    }
-
-    std::stringstream buf;
-
-    if ( (unsigned)_precision > PRECISION_1M )
-    {
-        x /= (unsigned)_precision;
-        y /= (unsigned)_precision;
-    }
-
-    buf << (zone+1) << gzd << space << sqid;
-
-    if ( (unsigned)_precision < PRECISION_100000M )
-    {
-        int sigdigs =
-            _precision == PRECISION_10000M ? 1 :
-            _precision == PRECISION_1000M  ? 2 :
-            _precision == PRECISION_100M   ? 3 :
-            _precision == PRECISION_10M    ? 4 :
-            5;
-
-        buf << space
-            << std::setfill('0')
-            << std::setw(sigdigs) << x
-            << space
-            << std::setw(sigdigs) << y;
-    }
-
-    std::string result;
-    result = buf.str();
-    return result;
-}
diff --git a/src/osgEarthUtil/GammaColorFilter b/src/osgEarthUtil/GammaColorFilter
new file mode 100644
index 0000000..4418e16
--- /dev/null
+++ b/src/osgEarthUtil/GammaColorFilter
@@ -0,0 +1,62 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#ifndef OSGEARTHUTIL_GAMMA_COLOR_FILTER
+#define OSGEARTHUTIL_GAMMA_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    /**
+    * Color filter that applies gamma correction to the pixel data
+    */
+    class OSGEARTHUTIL_EXPORT GammaColorFilter : public osgEarth::ColorFilter
+    {
+    public:
+        GammaColorFilter();
+        GammaColorFilter(const Config& conf);
+        virtual ~GammaColorFilter() { }
+
+        /**
+         * The gamma value to correct for.
+         */
+        void setGamma(float gamma);
+        void setGamma(const osg::Vec3f& gamma);
+
+        osg::Vec3f getGamma(void) const;
+
+    public: // ColorFilter
+        virtual std::string getEntryPointFunctionName(void) const;
+        virtual void install(osg::StateSet* stateSet) const;
+        virtual Config getConfig() const;
+
+    protected:
+        unsigned m_instanceId;
+        osg::ref_ptr<osg::Uniform> m_gamma;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_GAMMA_COLOR_FILTER
diff --git a/src/osgEarthUtil/GammaColorFilter.cpp b/src/osgEarthUtil/GammaColorFilter.cpp
new file mode 100644
index 0000000..13d8477
--- /dev/null
+++ b/src/osgEarthUtil/GammaColorFilter.cpp
@@ -0,0 +1,150 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#include <osgEarthUtil/GammaColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_localShaderSource =
+        "#version 110\n"
+        "uniform vec3 __UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{\n"
+        "    color.rgb = pow(color.rgb, 1.0 / __UNIFORM_NAME__.rgb); \n"
+        "}\n";
+}
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_gammaColorFilter_"
+#define UNIFORM_PREFIX  "osgearthutil_u_gamma_"
+
+//---------------------------------------------------------------------------
+
+GammaColorFilter::GammaColorFilter(void)
+{
+    init();
+}
+
+void GammaColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    m_instanceId = (++s_uniformNameGen) - 1;
+    m_gamma = new osg::Uniform(osg::Uniform::FLOAT_VEC3, (osgEarth::Stringify() << UNIFORM_PREFIX << m_instanceId));
+    m_gamma->set( osg::Vec3(1.0f, 1.0f, 1.0f) );
+}
+
+void GammaColorFilter::setGamma(float value)
+{
+    setGamma(osg::Vec3f(value,value,value));
+}
+
+void GammaColorFilter::setGamma(const osg::Vec3f& value)
+{
+    m_gamma->set(value);
+}
+
+osg::Vec3f GammaColorFilter::getGamma(void) const
+{
+    osg::Vec3f value;
+    m_gamma->get(value);
+    return (value);
+}
+
+std::string GammaColorFilter::getEntryPointFunctionName(void) const
+{
+    return (osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId);
+}
+
+void GammaColorFilter::install(osg::StateSet* stateSet) const
+{
+    // safe: will not add twice.
+    stateSet->addUniform(m_gamma.get());
+
+    osgEarth::VirtualProgram* vp = dynamic_cast<osgEarth::VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if (vp)
+    {
+        // build the local shader (unique per instance). We will
+        // use a template with search and replace for this one.
+        std::string entryPoint = osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId;
+        std::string code = s_localShaderSource;
+        osgEarth::replaceIn(code, "__UNIFORM_NAME__", m_gamma->getName());
+        osgEarth::replaceIn(code, "__ENTRY_POINT__", entryPoint);
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        //main->setName(entryPoint);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( gamma, osgEarth::Util::GammaColorFilter );
+
+
+GammaColorFilter::GammaColorFilter(const Config& conf)
+{
+    init();
+
+    if ( conf.hasValue("rgb") )
+    {
+        float rgb = conf.value("rgb", 1.0f);
+        setGamma( osg::Vec3f(rgb, rgb, rgb) );
+    }
+    else
+    {
+        osg::Vec3f rgb;
+        rgb[0] = conf.value("r", 1.0f);
+        rgb[1] = conf.value("g", 1.0f);
+        rgb[2] = conf.value("b", 1.0f);
+        setGamma( rgb );
+    }
+}
+
+Config
+GammaColorFilter::getConfig() const
+{
+    Config conf("gamma");
+    osg::Vec3f rgb = getGamma();
+    if ( rgb[0] == rgb[1] && rgb[1] == rgb[2] )
+    {
+        conf.add("rgb", rgb[0]);
+    }
+    else
+    {
+        conf.add("r", rgb[0]);
+        conf.add("g", rgb[1]);
+        conf.add("b", rgb[2]);
+    }
+    return conf;
+}
\ No newline at end of file
diff --git a/src/osgEarthUtil/GeodeticGraticule b/src/osgEarthUtil/GeodeticGraticule
new file mode 100644
index 0000000..12bbbb7
--- /dev/null
+++ b/src/osgEarthUtil/GeodeticGraticule
@@ -0,0 +1,176 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_GEODETIC_GRATICLE
+#define OSGEARTHUTIL_GEODETIC_GRATICLE
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarthSymbology/Style>
+#include <osgEarthFeatures/Feature>
+#include <vector>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Features;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Configuration options for the geodetic graticule.
+     */
+    class OSGEARTHUTIL_EXPORT GeodeticGraticuleOptions : public ConfigOptions
+    {
+    public:
+        GeodeticGraticuleOptions( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~GeodeticGraticuleOptions() { }
+
+    public:
+        struct Level 
+        {
+            float    _minRange, _maxRange;
+            unsigned _subdivisionFactor;
+            optional<Style> _lineStyle;
+            optional<Style> _textStyle;
+        };
+
+        /** Default style for grid lines */
+        optional<Style>& lineStyle() { return _defaultLineStyle; }
+        const optional<Style>& lineStyle() const { return _defaultLineStyle; }
+
+        /** Default style for text labels */
+        optional<Style>& textStyle() { return _defaultTextStyle; }
+        const optional<Style>& textStyle() const { return _defaultTextStyle; }
+
+        /** Subdivision levels */
+        const std::vector<Level>& levels() const { return _levels; }
+
+        /** Clear out all the levels */
+        void clearLevels();
+
+        /**
+         * Adds a new level of detail. You should only add levels in descending order of 
+         * maxRange (farthest to closest).
+         *
+         * @param maxRange
+         *      Maximum camera range for this level.
+         * @param minRange
+         *      (optional) Minimum camera range for this level. Though you can set this at any level,
+         *      it typically only makes sense to set this at the deepest level in order to
+         *      disable the graticule when you zoom closer in.
+         * @param subdivisionFactor
+         *      (optional) Number of times to subdivide each tile
+         * @param lineStyle
+         *      (optional) Style to apply to the grid lines at this level
+         * @param textStyle
+         *      (optional) Style to apply to text labels at this level
+         */
+        void addLevel( 
+            float        maxRange, 
+            float        minRange          =0.0f, 
+            unsigned     subdivisionFactor =2u, 
+            const Style& lineStyle         =Style(),
+            const Style& textStyle         =Style() );
+
+    public:
+        Config getConfig() const;
+
+    protected:
+        optional<Style>    _defaultLineStyle;
+        optional<Style>    _defaultTextStyle;
+        std::vector<Level> _levels;
+
+        void mergeConfig( const Config& conf );
+    };
+
+
+    /**
+     * Implements a map graticule. 
+     * 
+     * NOTE: So far, this only works for geocentric maps.
+     * TODO: Add projected support; add text label support
+     */
+    class OSGEARTHUTIL_EXPORT GeodeticGraticule : public osg::Group, public MapNodeObserver
+    {
+    public:
+
+        /**
+         * Constructs a new graticule for use with the specified map. The graticule
+         * is created with several default levels. If you call addLevel(), the 
+         * default levels are deleted.
+         *
+         * @param map
+         *      Map with which you will use this graticule
+         * @param options
+         *      Optional "options" that configure the graticule. Defaults will be used
+         *      if you don't specify this.
+         */
+        GeodeticGraticule( MapNode* mapNode );
+        GeodeticGraticule( MapNode* mapNode, const GeodeticGraticuleOptions& options);
+
+        /** dtor */
+        virtual ~GeodeticGraticule() { }
+
+        /** 
+         * Applies a new set of options. The graticule will be rebuilt if necessary.
+         */
+        void setOptions( const GeodeticGraticuleOptions& options );
+
+        /**
+         * Gets the options with which the graticule was built.
+         */
+        const GeodeticGraticuleOptions& getOptions() const { return _options.value(); }
+
+
+    public: // osg::Node
+
+        virtual void traverse(osg::NodeVisitor& nv);
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        virtual MapNode* getMapNode() { return _mapNode.get(); }
+
+
+    private:
+        osg::ref_ptr<const Profile> _profile;
+        osg::ref_ptr<const FeatureProfile> _featureProfile;
+
+        unsigned int               _id;
+        osg::observer_ptr<MapNode> _mapNode;
+        osg::Group*                _root;
+
+        optional<GeodeticGraticuleOptions> _options;
+
+    private:
+        unsigned int getID() const { return _id; }
+        void init();
+        void rebuild();
+        osg::Node* buildTile( const TileKey& key, Map* map ) const;
+        osg::Node* buildChildren( unsigned level, unsigned x, unsigned y ) const;
+
+        friend class GeodeticGraticuleFactory;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_GEODETIC_GRATICLE
diff --git a/src/osgEarthUtil/GeodeticGraticule.cpp b/src/osgEarthUtil/GeodeticGraticule.cpp
new file mode 100644
index 0000000..cce212d
--- /dev/null
+++ b/src/osgEarthUtil/GeodeticGraticule.cpp
@@ -0,0 +1,550 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/GeodeticGraticule>
+#include <osgEarthUtil/LatLongFormatter>
+
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthSymbology/Geometry>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/Decluttering>
+
+#include <osgEarth/Registry>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Utils>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/ThreadingUtils>
+
+#include <OpenThreads/Mutex>
+#include <OpenThreads/ScopedLock>
+#include <osg/PagedLOD>
+#include <osg/Depth>
+#include <osg/Program>
+#include <osgDB/FileNameUtils>
+
+#define LC "[GeodeticGraticule] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Annotation;
+
+static Threading::Mutex s_graticuleMutex;
+typedef std::map<unsigned int, osg::ref_ptr<GeodeticGraticule> > GeodeticGraticuleRegistry;
+static GeodeticGraticuleRegistry s_graticuleRegistry;
+
+#define GRATICULE_EXTENSION "osgearthutil_geodetic_graticule"
+#define TEXT_MARKER "t"
+#define GRID_MARKER "g"
+
+//---------------------------------------------------------------------------
+
+GeodeticGraticuleOptions::GeodeticGraticuleOptions( const Config& conf ) :
+ConfigOptions( conf )
+{
+    mergeConfig( _conf );
+}
+
+void
+GeodeticGraticuleOptions::mergeConfig( const Config& conf )
+{
+    //todo
+}
+
+Config
+GeodeticGraticuleOptions::getConfig() const
+{
+    Config conf = ConfigOptions::newConfig();
+    conf.key() = "geodetic_graticule";
+    //todo
+    return conf;
+}
+
+void
+GeodeticGraticuleOptions::addLevel( float maxRange, float minRange, unsigned subFactor, const Style& lineStyle, const Style& textStyle )
+{
+    Level level;
+    level._maxRange = maxRange;
+    level._minRange = minRange;
+    level._subdivisionFactor = subFactor;
+    if ( !lineStyle.empty() )
+        level._lineStyle = lineStyle;
+    if ( !textStyle.empty() )
+        level._textStyle = textStyle;
+
+    _levels.push_back(level);
+}
+
+//---------------------------------------------------------------------------
+
+GeodeticGraticule::GeodeticGraticule( MapNode* mapNode ) :
+_mapNode   ( mapNode ),
+_root      ( 0L )
+{
+    init();
+}
+
+GeodeticGraticule::GeodeticGraticule( MapNode* mapNode, const GeodeticGraticuleOptions& options ) :
+_mapNode   ( mapNode ),
+_root      ( 0L )
+{
+    _options = options;
+    init();
+}
+
+void
+GeodeticGraticule::init()
+{
+    // safely generate a unique ID for this graticule:
+    _id = Registry::instance()->createUID();
+    {
+        Threading::ScopedMutexLock lock( s_graticuleMutex );
+        s_graticuleRegistry[_id] = this;
+    }
+
+    // this will intialize the graph.
+    rebuild();
+}
+
+void
+GeodeticGraticule::setMapNode( MapNode* mapNode )
+{
+    _mapNode = mapNode;
+    rebuild();
+}
+
+void
+GeodeticGraticule::setOptions( const GeodeticGraticuleOptions& options )
+{
+    _options = options;
+    rebuild();
+}
+
+void
+GeodeticGraticule::rebuild()
+{
+    this->removeChildren( 0, this->getNumChildren() );
+
+    if ( !getMapNode() )
+    {
+        OE_WARN << LC << "Illegal NULL map node" << std::endl;
+        return;
+    }
+
+    if ( !getMapNode()->isGeocentric() )
+    {
+        OE_WARN << LC << "Projected map mode is not yet supported" << std::endl;
+        return;
+    }
+
+    const Profile* mapProfile = _mapNode->getMap()->getProfile();
+
+    _profile = Profile::create(
+        mapProfile->getSRS(),
+        mapProfile->getExtent().xMin(),
+        mapProfile->getExtent().yMin(),
+        mapProfile->getExtent().xMax(),
+        mapProfile->getExtent().yMax(),
+        8, 4 );
+
+    _featureProfile = new FeatureProfile(_profile->getSRS());
+
+    //todo: do this right..
+    osg::StateSet* set = this->getOrCreateStateSet();
+    set->setRenderBinDetails( 9999, "RenderBin" );
+    set->setMode( GL_LIGHTING, 0 );
+
+    // set up default options if the caller did not supply them
+    if ( !_options.isSet() )
+    {
+        _options->lineStyle() = Style();
+
+        LineSymbol* line = _options->lineStyle()->getOrCreate<LineSymbol>();
+        line->stroke()->color() = Color::Gray;
+        line->stroke()->width() = 1.0;
+
+        AltitudeSymbol* alt = _options->lineStyle()->getOrCreate<AltitudeSymbol>();
+        alt->verticalOffset() = NumericExpression(5000.0);
+
+        _options->textStyle() = Style();
+        TextSymbol* text = _options->textStyle()->getOrCreate<TextSymbol>();
+        text->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+
+        if ( _mapNode->isGeocentric() )
+        {
+            double r = _mapNode->getMapSRS()->getEllipsoid()->getRadiusEquator();
+            _options->addLevel( FLT_MAX, 0.0f, 1u );
+            double d = 4.5*r;
+            for(int i=0; i<3; i++)
+            {
+                d *= 0.5;
+                _options->addLevel( d, d*0.25 );
+            }
+        }
+        else
+        {
+            //todo?
+        }
+    }
+
+    _root = new DrapeableNode( _mapNode.get(), false );
+    this->addChild( _root );
+
+    // need at least one level
+    if ( _options->levels().size() < 1 )
+        return;
+
+    const GeodeticGraticuleOptions::Level& level0 = _options->levels()[0];
+
+    // build the top level cell grid.
+    unsigned tilesX, tilesY;
+    _profile->getNumTiles( 0, tilesX, tilesY );
+
+    for( unsigned tx = 0; tx < tilesX; ++tx )
+    {
+        for( unsigned ty = 0; ty < tilesY; ++ty )
+        {
+            TileKey key( 0, tx, ty, _profile.get() );
+            osg::Node* tile = buildTile( key, getMapNode()->getMap() );
+            if ( tile )
+                _root->addChild( tile );
+        }
+    }
+}
+
+
+osg::Node*
+GeodeticGraticule::buildTile( const TileKey& key, Map* map ) const
+{
+    if ( _options->levels().size() <= key.getLevelOfDetail() )
+    {
+        OE_WARN << LC << "Tried to create cell at non-existant level " << key.getLevelOfDetail() << std::endl;
+        return 0L;
+    }
+
+    const GeodeticGraticuleOptions::Level& level = _options->levels()[key.getLevelOfDetail()]; //_levels[key.getLevelOfDetail()];
+
+
+    // the "-2" here is because normal tile paging gives you one subdivision already,
+    // so we only need to account for > 1 subdivision factor.
+    unsigned cellsPerTile = level._subdivisionFactor <= 2u ? 1u : 1u << (level._subdivisionFactor-2u);
+    unsigned cellsPerTileX = std::max(1u, cellsPerTile);
+    unsigned cellsPerTileY = std::max(1u, cellsPerTile);
+
+
+    GeoExtent tileExtent = key.getExtent();
+
+    FeatureList latLines;
+    FeatureList lonLines;
+
+    static LatLongFormatter s_llf(LatLongFormatter::FORMAT_DECIMAL_DEGREES);
+    
+    double cellWidth = tileExtent.width() / cellsPerTileX;
+    double cellHeight = tileExtent.height() / cellsPerTileY;
+
+    const Style& lineStyle = level._lineStyle.isSet() ? *level._lineStyle : *_options->lineStyle();
+    const Style& textStyle = level._textStyle.isSet() ? *level._textStyle : *_options->textStyle();
+
+    bool hasText = textStyle.get<TextSymbol>() != 0L;
+
+    osg::ref_ptr<osg::Group> labels;
+    if ( hasText )
+    {
+        labels = new osg::Group();
+        //TODO:  This is a bug, if you don't turn on decluttering the text labels are giant.  Need to determine what is wrong with LabelNodes without decluttering.
+        Decluttering::setEnabled( labels->getOrCreateStateSet(), true );
+    }
+
+    // spatial ref for features:
+    const SpatialReference* geoSRS = tileExtent.getSRS()->getGeographicSRS();
+
+    // longitude lines
+    for( unsigned cx = 0; cx < cellsPerTileX; ++cx )
+    {
+        double clon = tileExtent.xMin() + cellWidth * (double)cx;
+        LineString* lon = new LineString(2);
+        lon->push_back( osg::Vec3d(clon, tileExtent.yMin(), 0) );
+        lon->push_back( osg::Vec3d(clon, tileExtent.yMax(), 0) );
+        lonLines.push_back( new Feature(lon, geoSRS) );
+
+        if ( hasText )
+        {
+            for( unsigned cy = 0; cy < cellsPerTileY; ++cy )
+            {
+                double clat = tileExtent.yMin() + (0.5*cellHeight) + cellHeight*(double)cy;
+                LabelNode* label = new LabelNode( 
+                    _mapNode.get(),
+                    GeoPoint(geoSRS, clon, clat),
+                    s_llf.format(clon),
+                    textStyle );
+                labels->addChild( label );
+            }
+        }
+    }
+
+    // latitude lines
+    for( unsigned cy = 0; cy < cellsPerTileY; ++cy )
+    {
+        double clat = tileExtent.yMin() + cellHeight * (double)cy;
+        if ( clat == key.getProfile()->getExtent().yMin() )
+            continue;
+
+        LineString* lat = new LineString(2);
+        lat->push_back( osg::Vec3d(tileExtent.xMin(), clat, 0) );
+        lat->push_back( osg::Vec3d(tileExtent.xMax(), clat, 0) );
+        latLines.push_back( new Feature(lat, geoSRS) );
+
+        if ( hasText )
+        {
+            for( unsigned cx = 0; cx < cellsPerTileX; ++cx )
+            {
+                double clon = tileExtent.xMin() + (0.5*cellWidth) + cellWidth*(double)cy;
+                LabelNode* label = new LabelNode( 
+                    _mapNode.get(), 
+                    GeoPoint(geoSRS, clon, clat),
+                    s_llf.format(clat),
+                    textStyle );
+                labels->addChild( label );
+            }
+        }
+    }
+
+    osg::Group* group = new osg::Group();
+
+    GeometryCompiler compiler;
+    osg::ref_ptr<Session> session = new Session( map );
+    FilterContext context( session.get(), _featureProfile.get(), tileExtent );
+
+    // make sure we get sufficient tessellation:
+    compiler.options().maxGranularity() = std::min(cellWidth, cellHeight) / 16.0;
+
+    compiler.options().geoInterp() = GEOINTERP_GREAT_CIRCLE;
+    osg::Node* lonNode = compiler.compile(lonLines, lineStyle, context);
+    if ( lonNode )
+        group->addChild( lonNode );
+
+    compiler.options().geoInterp() = GEOINTERP_RHUMB_LINE;
+    osg::Node* latNode = compiler.compile(latLines, lineStyle, context);
+    if ( latNode )
+        group->addChild( latNode );
+
+    // add the labels.
+    if ( labels.valid() )
+        group->addChild( labels.get() );
+
+    // get the geocentric tile center:
+    osg::Vec3d tileCenter;
+    tileExtent.getCentroid( tileCenter.x(), tileCenter.y() );
+    osg::Vec3d centerECEF;
+    tileExtent.getSRS()->transformToECEF( tileCenter, centerECEF );
+
+    osg::NodeCallback* ccc = 0L;
+    // set up cluster culling.
+    if ( tileExtent.getSRS()->isGeographic() && tileExtent.width() < 90.0 && tileExtent.height() < 90.0 )
+    {
+        ccc = ClusterCullingFactory::create( group, centerECEF );
+    }
+
+    // add a paging node for higher LODs:
+    if ( key.getLevelOfDetail() + 1 < _options->levels().size() )
+    {
+        const GeodeticGraticuleOptions::Level& nextLevel = _options->levels()[key.getLevelOfDetail()+1];
+
+        osg::BoundingSphere bs = group->getBound();
+
+        std::string uri = Stringify() << key.str() << "_" << getID() << "." << GRID_MARKER << "." << GRATICULE_EXTENSION;
+
+        osg::PagedLOD* plod = new osg::PagedLOD();
+        plod->setCenter( bs.center() );
+        plod->addChild( group, std::max(level._minRange,nextLevel._maxRange), FLT_MAX );
+        plod->setFileName( 1, uri );
+        plod->setRange( 1, 0, nextLevel._maxRange );
+        group = plod;
+    }
+
+    // or, if this is the deepest level and there's a minRange set, we need an LOD:
+    else if ( level._minRange > 0.0f )
+    {
+        osg::LOD* lod = new osg::LOD();
+        lod->addChild( group, level._minRange, FLT_MAX );
+        group = lod;
+    }
+
+    if ( ccc )
+    {
+        osg::Group* cccGroup = new osg::Group();
+        cccGroup->addCullCallback( ccc );
+        cccGroup->addChild( group );
+        group = cccGroup;
+    }
+
+    return group;
+}
+
+
+osg::Node*
+GeodeticGraticule::buildChildren( unsigned level, unsigned x, unsigned y ) const
+{
+    osg::ref_ptr<MapNode> mapNodeSafe = _mapNode.get();
+    if ( mapNodeSafe.valid() )
+    {
+        TileKey parent(level, x, y, _profile.get());
+        osg::Group* g = new osg::Group();
+        for( unsigned q=0; q<4; ++q )
+        {
+            TileKey child = parent.createChildKey( q );
+            osg::Node* n = buildTile(child, mapNodeSafe->getMap() );
+            if ( n )
+                g->addChild( n );
+        }
+        return g;
+    }
+    else return 0L;
+}
+
+#if 0
+void
+GeodeticGraticule::addLevel(float        maxRange,
+                            float        minRange,
+                            unsigned     subdivFactor,
+                            const Style& style)
+{
+    if ( _autoLevels )
+    {
+        _autoLevels = false;
+        _levels.clear();
+    }
+
+    // the "-2" here is because normal tile paging gives you one subdivision already,
+    // so we only need to account for > 1 subdivision factor.
+    unsigned cellsPerTile = subdivFactor <= 2u ? 1u : 1u << (subdivFactor-2u);
+
+    Level level;
+    level._maxRange = maxRange;
+    level._minRange = minRange;
+    _profile->getNumTiles( _levels.size(), level._tilesX, level._tilesY );
+    level._cellsPerTileX = std::max(1u, cellsPerTile);
+    level._cellsPerTileY = std::max(1u, cellsPerTile);
+
+    if ( !style.empty() )
+    {
+        level._style = style;
+    }
+    else
+    {
+        level._style = _levels.size() > 0 ? _levels[_levels.size()-1]._style : _defaultLineStyle;
+    }
+
+    _levels.push_back( level );
+}
+
+bool
+GeodeticGraticule::getLevel( unsigned level, GeodeticGraticule::Level& out_level ) const
+{
+    if ( level < _levels.size() )
+    {
+        out_level = _levels[level];
+        return true;
+    }
+    else
+    {
+        return false;
+    }
+}
+#endif
+
+void
+GeodeticGraticule::traverse( osg::NodeVisitor& nv )
+{
+    if ( nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR )
+    {
+    }
+    osg::Group::traverse( nv );
+}
+
+/**************************************************************************/
+
+namespace osgEarth { namespace Util
+{
+    // OSG Plugin for loading subsequent graticule levels
+    class GeodeticGraticuleFactory : public osgDB::ReaderWriter
+    {
+    public:
+        virtual const char* className()
+        {
+            supportsExtension( GRATICULE_EXTENSION, "osgEarth graticule" );
+            return "osgEarth graticule LOD loader";
+        }
+
+        virtual bool acceptsExtension(const std::string& extension) const
+        {
+            return osgDB::equalCaseInsensitive(extension, GRATICULE_EXTENSION);
+        }
+
+        virtual ReadResult readNode(const std::string& uri, const Options* options) const
+        {        
+            std::string ext = osgDB::getFileExtension( uri );
+            if ( !acceptsExtension( ext ) )
+                return ReadResult::FILE_NOT_HANDLED;
+
+            // the graticule definition is formatted: LEVEL_ID.MARKER.EXTENSION
+            std::string def = osgDB::getNameLessExtension( uri );
+            
+            std::string marker = osgDB::getFileExtension( def );
+            def = osgDB::getNameLessExtension( def );
+
+            int levelNum, x, y, id;
+            sscanf( def.c_str(), "%d/%d/%d_%d", &levelNum, &x, &y, &id );
+
+            // look up the graticule referenced in the location name:
+            GeodeticGraticule* graticule = 0L;
+            {
+                Threading::ScopedMutexLock lock( s_graticuleMutex );
+                GeodeticGraticuleRegistry::iterator i = s_graticuleRegistry.find(id);
+                if ( i != s_graticuleRegistry.end() )
+                    graticule = i->second.get();
+            }
+
+            osg::Node* result = graticule->buildChildren( levelNum, x, y );
+            return result ? ReadResult(result) : ReadResult::ERROR_IN_READING_FILE;
+
+#if 0
+            if ( marker == GRID_MARKER )
+            {
+                osg::Node* result = graticule->createGridLevel( levelNum );
+                return result ? ReadResult( result ) : ReadResult::ERROR_IN_READING_FILE;
+            }
+            else if ( marker == TEXT_MARKER )
+            {
+                osg::Node* result = graticule->createTextLevel( levelNum );
+                return result ? ReadResult( result ) : ReadResult::ERROR_IN_READING_FILE;
+            }
+            else
+            {
+                OE_NOTICE << "oh no! no markers" << std::endl;
+                return ReadResult::FILE_NOT_HANDLED;
+            }
+#endif
+        }
+    };
+    REGISTER_OSGPLUGIN(GRATICULE_EXTENSION, GeodeticGraticuleFactory)
+
+} } // namespace osgEarth::Util
+
diff --git a/src/osgEarthUtil/Graticule b/src/osgEarthUtil/Graticule
deleted file mode 100644
index 54196ae..0000000
--- a/src/osgEarthUtil/Graticule
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTHUTIL_GRATICLE
-#define OSGEARTHUTIL_GRATICLE
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/Map>
-#include <osgEarthSymbology/Style>
-#include <vector>
-
-namespace osgEarth { namespace Util
-{
-    using namespace osgEarth;
-    using namespace osgEarth::Symbology;
-
-    /**
-     * Implements a map graticule. 
-     * 
-     * NOTE: So far, this only works for geocentric maps.
-     * TODO: Add projected support; add text label support
-     */
-    class OSGEARTHUTIL_EXPORT Graticule : public osg::Group
-    {
-    public:
-
-        /**
-         * Constructs a new graticule for use with the specified map. The graticule
-         * is created with several default levels. If you call addLevel(), the 
-         * default levels are deleted.
-         *
-         * @param map
-         *      Map with which you will use this graticule
-         */
-        Graticule( const Map* map );
-
-        /**
-         * Sets the color of the grid lines
-         */
-        void setLineColor( const osg::Vec4f& value );
-
-        /**
-         * Sets the color of the text labels
-         */
-        void setTextColor( const osg::Vec4f& value ) { _textColor = value; }
-
-        /**
-         * Adds a new level to the profile. Levels are sorted by maxRange. Calling this method
-         * deletes any automatically created default levels.
-         *
-         * @param maxRange
-         *      Maximum camera range for this level.
-         * @param cellsX, cellsY
-         *      Number of grid cells in each direction at this level.
-         * @param lineWidth
-         *      Width of the grid lines, in map units, at this level.
-         */
-        void addLevel( float maxRange, unsigned int cellsX, unsigned int cellsY, double lineWidth );
-
-
-    private:
-        struct Level {
-            float _maxRange;
-            unsigned int _cellsX, _cellsY;
-            double _lineWidth;
-        };
-
-        unsigned int getID() const { return _id; }
-
-        bool getLevel( unsigned int level, Graticule::Level& out_level ) const;
-
-        unsigned int getNumLevels() const { return _levels.size(); }
-
-        unsigned int _id;
-        bool _autoLevels;
-        osg::observer_ptr<const Map> _map;
-        std::vector<Level> _levels;
-        osg::Vec4f _textColor;
-        Style _lineStyle;
-
-        osg::Node* createGridLevel( unsigned int levelNum ) const;
-        osg::Node* createTextLevel( unsigned int levelNum ) const;
-
-        friend class GraticuleFactory;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif // OSGEARTHUTIL_GRATICLE
diff --git a/src/osgEarthUtil/Graticule.cpp b/src/osgEarthUtil/Graticule.cpp
deleted file mode 100644
index 5c3707a..0000000
--- a/src/osgEarthUtil/Graticule.cpp
+++ /dev/null
@@ -1,567 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthUtil/Graticule>
-#include <osgEarthUtil/AutoClipPlaneHandler>
-#include <osgEarthFeatures/BuildGeometryFilter>
-#include <osgEarthFeatures/TransformFilter>
-#include <osgEarthFeatures/ResampleFilter>
-#include <osgEarthSymbology/Geometry>
-#include <osgEarth/Registry>
-#include <osgEarth/FindNode>
-#include <osgEarth/Utils>
-#include <OpenThreads/Mutex>
-#include <OpenThreads/ScopedLock>
-#include <osg/PagedLOD>
-#include <osg/ProxyNode>
-#include <osg/MatrixTransform>
-#include <osg/Depth>
-#include <osg/Program>
-#include <osg/LineStipple>
-#include <osg/ClusterCullingCallback>
-#include <osgDB/FileNameUtils>
-#include <osgUtil/Optimizer>
-#include <osgText/Text>
-#include <sstream>
-#include <iomanip>
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-using namespace osgEarth::Features;
-using namespace osgEarth::Symbology;
-using namespace OpenThreads;
-
-static Mutex s_graticuleMutex;
-typedef std::map<unsigned int, osg::ref_ptr<Graticule> > GraticuleRegistry;
-static GraticuleRegistry s_graticuleRegistry;
-
-#define GRATICLE_EXTENSION "osgearthutil_graticule"
-#define TEXT_MARKER "t"
-#define GRID_MARKER "g"
-
-//---------------------------------------------------------------------------
-
-namespace
-{
-    char s_vertexShader[] =
-        "varying vec3 Normal; \n"
-        "void main(void) \n"
-        "{ \n"
-        "    Normal = normalize( gl_NormalMatrix * gl_Normal ); \n"
-        "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
-        "    gl_FrontColor = gl_Color; \n"
-        "} \n";
-
-    char s_fragmentShader[] =
-        "varying vec3 Normal; \n"
-        "void main(void) \n"
-        "{ \n"
-        "    gl_FragColor = gl_Color; \n"
-        "} \n";
-}
-
-//---------------------------------------------------------------------------
-
-Graticule::Graticule( const Map* map ) :
-_autoLevels( true ),
-_map( map ),
-_textColor( 1,1,0,1 )
-{
-    // safely generate a unique ID for this graticule:
-    _id = Registry::instance()->createUID();
-    {
-        ScopedLock<Mutex> lock( s_graticuleMutex );
-        s_graticuleRegistry[_id] = this;
-    }
-
-    setLineColor( osg::Vec4f(1,1,1,0.7) );
-    setTextColor( osg::Vec4f(1,1,0,1) );
-
-    if ( _map->isGeocentric() )
-    {
-        double r = map->getProfile()->getSRS()->getEllipsoid()->getRadiusEquator();
-
-        int x=8, y=4;
-        double d = 3.5*r;
-        double lw=0.15;
-        addLevel( FLT_MAX, x, y, lw );
-        for(int i=0; i<9; i++)
-        {
-            x *= 2, y *= 2;
-            lw *= 0.5;
-            d *= 0.5;
-            addLevel( r+d, x, y, lw );
-        }
-    }
-
-    // Prime the grid:
-    {
-        std::stringstream buf;
-        buf << "0_" << _id << "." << GRID_MARKER << "." << GRATICLE_EXTENSION;
-        std::string bufStr = buf.str();
-        osg::ProxyNode* proxy = new osg::ProxyNode();
-        proxy->setFileName( 0, bufStr );
-        proxy->setCenterMode( osg::ProxyNode::USER_DEFINED_CENTER );
-        proxy->setCenter( osg::Vec3(0,0,0) );
-        proxy->setRadius( 1e10 );
-        this->addChild( proxy );
-    }
-
-    // Prime the text:
-    {
-        std::stringstream buf;
-        buf << "0_" << _id << "." << TEXT_MARKER << "." << GRATICLE_EXTENSION;
-        std::string bufStr = buf.str();
-
-        osg::ProxyNode* proxy = new osg::ProxyNode();
-        proxy->setFileName( 0, bufStr );
-        proxy->setCenterMode( osg::ProxyNode::USER_DEFINED_CENTER );
-        proxy->setCenter( osg::Vec3(0,0,0) );
-        proxy->setRadius( 1e10 );
-
-        this->addChild( proxy );
-    }
-
-    osg::StateSet* set = this->getOrCreateStateSet();
-    set->setRenderBinDetails( 9999, "RenderBin" );
-    set->setAttributeAndModes( 
-        new osg::Depth( osg::Depth::ALWAYS ), 
-        osg::StateAttribute::ON | osg::StateAttribute::PROTECTED );
-    set->setMode( GL_LIGHTING, 0 );
-
-    //osg::Program* program = new osg::Program();
-    //program->addShader( new osg::Shader( osg::Shader::VERTEX, s_vertexShader ) );
-    //program->addShader( new osg::Shader( osg::Shader::FRAGMENT, s_fragmentShader ) );
-    //set->setAttributeAndModes( program, osg::StateAttribute::ON );
-
-    this->addEventCallback( new AutoClipPlaneCallback( _map.get() ) );
-}
-
-void
-Graticule::addLevel( float maxRange, unsigned int cellsX, unsigned int cellsY, double lineWidth )
-{
-    if ( _autoLevels )
-    {
-        _autoLevels = false;
-        _levels.clear();
-    }
-
-    Level level;
-    level._maxRange = maxRange;
-    level._cellsX = cellsX;
-    level._cellsY = cellsY;
-    level._lineWidth = lineWidth;
-
-    for( std::vector<Level>::iterator i = _levels.begin(); i != _levels.end(); ++i ) 
-    {
-        if ( maxRange > i->_maxRange )
-        {
-            _levels.insert( i, level );
-            return;
-        }
-    }
-    _levels.push_back( level );
-}
-
-bool
-Graticule::getLevel( unsigned int level, Graticule::Level& out_level ) const
-{
-    if ( level < _levels.size() )
-    {
-        out_level = _levels[level];
-        return true;
-    }
-    else
-    {
-        return false;
-    }
-}
-
-namespace
-{
-    Geometry*
-    createCellGeometry( const GeoExtent& tex, double lw, const GeoExtent& profEx, bool isGeocentric )
-    {            
-        LineString* geom = 0L;
-
-        if ( tex.yMin() == profEx.yMin() )
-        {
-            geom = new LineString(2);
-            geom->push_back( osg::Vec3d( tex.xMin(), tex.yMax(), 0 ) );
-            geom->push_back( osg::Vec3d( tex.xMin(), tex.yMin(), 0 ) );
-        }
-        else
-        {
-            geom = new LineString(3);
-            geom->push_back( osg::Vec3d( tex.xMin(), tex.yMax(), 0 ) );
-            geom->push_back( osg::Vec3d( tex.xMin(), tex.yMin(), 0 ) );
-            geom->push_back( osg::Vec3d( tex.xMax(), tex.yMin(), 0 ) );
-        }
-
-        return geom;
-    }
-
-    struct HardCodeCellBoundCB : public osg::Node::ComputeBoundingSphereCallback
-    {
-        HardCodeCellBoundCB( const osg::BoundingSphere& bs ) : _bs(bs) { }
-        virtual osg::BoundingSphere computeBound(const osg::Node&) const { return _bs; }
-        osg::BoundingSphere _bs;
-    };
-
-    osg::Node*
-    createTextTransform(double x, double y, double value, 
-                        const osg::EllipsoidModel* ell, 
-                        float size, const osg::Vec4f& color,
-                        float rotation =0.0f )
-    {    
-        osg::Vec3d pos;
-        if ( ell ) // is geocentric
-        {
-            ell->convertLatLongHeightToXYZ(
-                osg::DegreesToRadians( y ),
-                osg::DegreesToRadians( x ),
-                0,
-                pos.x(), pos.y(), pos.z() );
-        }
-        else
-        {
-            pos.set( x, y, 0 );
-        }
-
-        osgText::Text* t = new osgText::Text();
-        t->setFont( "fonts/arial.ttf" );
-        t->setAlignment( osgText::Text::CENTER_BOTTOM );
-        t->setCharacterSizeMode( osgText::Text::SCREEN_COORDS );
-        t->setCharacterSize( size );
-        t->setBackdropType( osgText::Text::OUTLINE );
-        t->setBackdropColor( osg::Vec4f(0,0,0,1) );
-        t->setColor( color );
-
-        std::stringstream buf;
-        buf << std::fixed << std::setprecision(3) << value;
-        std::string bufStr = buf.str();
-        t->setText( bufStr );
-
-        if ( rotation != 0.0f ) 
-        {
-            osg::Quat rot;
-            rot.makeRotate( osg::DegreesToRadians(rotation), 0, 0, 1 );
-            t->setRotation( rot );
-        }
-
-        osg::Geode* geode = new osg::Geode();
-        geode->addDrawable( t );
-
-        osg::Matrixd L2W;
-        ell->computeLocalToWorldTransformFromXYZ(
-            pos.x(), pos.y(), pos.z(), L2W );
-
-        osg::MatrixTransform* xform = new osg::MatrixTransform();
-        xform->setMatrix( L2W );
-        xform->addChild( geode );     
-
-        // in geocentric mode, install a plane culler
-        if ( ell )
-            xform->setCullCallback( new CullNodeByNormal(pos) );
-
-        return xform;
-    }
-}
-
-void
-Graticule::setLineColor( const osg::Vec4f& color )
-{
-    _lineStyle.getOrCreateSymbol<LineSymbol>()->stroke()->color() = color;
-}
-
-osg::Node*
-Graticule::createGridLevel( unsigned int levelNum ) const
-{
-    if ( !_map->isGeocentric() )
-    {
-        OE_WARN << "Graticule: only supports geocentric maps" << std::endl;
-        return 0L;
-    }
-
-    Graticule::Level level;
-    if ( !getLevel( levelNum, level ) )
-        return 0L;
-
-    OE_DEBUG << "Graticule: creating grid level " << levelNum << std::endl;
-
-    osg::Group* group = new osg::Group();
-
-    const Profile* mapProfile = _map->getProfile();
-    const GeoExtent& pex = mapProfile->getExtent();
-
-    double tw = pex.width() / (double)level._cellsX;
-    double th = pex.height() / (double)level._cellsY;
-
-    for( unsigned int x=0; x<level._cellsX; ++x )
-    {
-        for( unsigned int y=0; y<level._cellsY; ++y )
-        {
-            GeoExtent tex(
-                mapProfile->getSRS(),
-                pex.xMin() + tw * (double)x,
-                pex.yMin() + th * (double)y,
-                pex.xMin() + tw * (double)(x+1),
-                pex.yMin() + th * (double)(y+1) );
-
-            Geometry* geom = createCellGeometry( tex, level._lineWidth, pex, _map->isGeocentric() );
-
-            Feature* feature = new Feature();
-            feature->setGeometry( geom );
-            FeatureList features;
-            features.push_back( feature );
-
-            FilterContext cx;
-            cx.profile() = new FeatureProfile( tex );
-            cx.isGeocentric() = _map->isGeocentric();
-
-            if ( _map->isGeocentric() )
-            {
-                // We need to make sure that on a round globe, the points are sampled such that
-                // long segments follow the curvature of the earth.
-                ResampleFilter resample;
-                resample.maxLength() = tex.width() / 10.0;
-                cx = resample.push( features, cx );
-            }
-
-            TransformFilter xform( mapProfile->getSRS() );
-            xform.setMakeGeocentric( _map->isGeocentric() );
-            xform.setLocalizeCoordinates( true );
-            cx = xform.push( features, cx );
-
-            osg::ref_ptr<osg::Node> output;
-            BuildGeometryFilter bg;
-            bg.setStyle( _lineStyle );
-            //cx = bg.push( features, cx );
-            output = bg.push( features, cx ); //.getNode();
-
-            if ( cx.isGeocentric() )
-            {
-                // get the geocentric control point:
-                double cplon, cplat, cpx, cpy, cpz;
-                tex.getCentroid( cplon, cplat );
-                tex.getSRS()->getEllipsoid()->convertLatLongHeightToXYZ(
-                    osg::DegreesToRadians( cplat ), osg::DegreesToRadians( cplon ), 0.0, cpx, cpy, cpz );
-                osg::Vec3 controlPoint(cpx, cpy, cpz);
-
-                // get the horizon point:
-                tex.getSRS()->getEllipsoid()->convertLatLongHeightToXYZ(
-                    osg::DegreesToRadians( tex.yMin() ), osg::DegreesToRadians( tex.xMin() ), 0.0,
-                    cpx, cpy, cpz );
-                osg::Vec3 horizonPoint(cpx, cpy, cpz);
-
-                // the deviation is the dot product of the control vector and the vector from the
-                // control point to the horizon point.
-                osg::Vec3 controlPointNorm = controlPoint; controlPointNorm.normalize();
-                osg::Vec3 horizonVecNorm = horizonPoint - controlPoint; horizonVecNorm.normalize();                
-                float deviation = controlPointNorm * horizonVecNorm;
-
-                // construct the culling callback using the deviation.
-                osg::ClusterCullingCallback* ccc = new osg::ClusterCullingCallback();
-                ccc->set( controlPoint, controlPointNorm, deviation, (controlPoint-horizonPoint).length() );
-
-                // need a new group, because never put a cluster culler on a matrixtransform (doesn't work)
-                osg::Group* me = new osg::Group();
-                me->setCullCallback( ccc );
-                me->addChild( output.get() );
-                output = me;
-            }
-
-            group->addChild( output.get() );
-        }
-    }
-
-    // organize it for better culling
-    osgUtil::Optimizer opt;
-    opt.optimize( group, osgUtil::Optimizer::SPATIALIZE_GROUPS );
-
-    osg::Node* result = group;
-
-    if ( levelNum < getNumLevels() )
-    {
-        Graticule::Level nextLevel;
-        if ( getLevel( levelNum+1, nextLevel ) )
-        {
-            osg::PagedLOD* plod = new osg::PagedLOD();
-            plod->addChild( group, nextLevel._maxRange, level._maxRange );
-            std::stringstream buf;
-            buf << levelNum+1 << "_" << getID() << "." << GRID_MARKER << "." << GRATICLE_EXTENSION;
-            std::string bufStr = buf.str();
-            plod->setFileName( 1, bufStr );
-            plod->setRange( 1, 0, nextLevel._maxRange );
-            result = plod;
-        }
-    }
-
-    return result;
-}
-
-osg::Node*
-Graticule::createTextLevel( unsigned int levelNum ) const
-{
-    if ( !_map->isGeocentric() )
-    {
-        OE_WARN << "Graticule: only supports geocentric maps" << std::endl;
-        return 0L;
-    }
-
-    Graticule::Level level;
-    if ( !getLevel( levelNum, level ) )
-        return 0L;
-
-    OE_DEBUG << "Graticule: creating text level " << levelNum << std::endl;
-
-    osg::Group* group = new osg::Group();
-
-    const Profile* mapProfile = _map->getProfile();
-    const GeoExtent& pex = mapProfile->getExtent();
-
-    double tw = pex.width() / (double)level._cellsX;
-    double th = pex.height() / (double)level._cellsY;
-
-    const osg::EllipsoidModel* ell = _map->getProfile()->getSRS()->getEllipsoid();
-
-    for( unsigned int x=0; x<level._cellsX; ++x )
-    {
-        for( unsigned int y=0; y<level._cellsY; ++y )
-        {
-            GeoExtent tex(
-                mapProfile->getSRS(),
-                pex.xMin() + tw * (double)x,
-                pex.yMin() + th * (double)y,
-                pex.xMin() + tw * (double)(x+1),
-                pex.yMin() + th * (double)(y+1) );
-
-            double offset = 2.0 * level._lineWidth;
-
-            double cx, cy;
-            tex.getCentroid( cx, cy );
-
-            // y value on the x-axis:
-            group->addChild( createTextTransform(
-                cx,
-                tex.yMin() + offset,
-                tex.yMin(),
-                ell,
-                20.0f,
-                _textColor ) );
-
-            // x value on the y-axis:
-            group->addChild( createTextTransform(
-                tex.xMin() + offset,
-                cy,
-                tex.xMin(),
-                ell, 
-                20.0f,
-                _textColor,
-                -90.0f ) );
-        }
-    }
-
-    // organize it for better culling
-    osgUtil::Optimizer opt;
-    opt.optimize( group, osgUtil::Optimizer::SPATIALIZE_GROUPS );
-
-    osg::Node* result = group;
-
-    if ( levelNum+1 < getNumLevels() )
-    {
-        Graticule::Level nextLevel;
-        if ( getLevel( levelNum+1, nextLevel ) )
-        {
-            osg::PagedLOD* plod = new osg::PagedLOD();
-            plod->addChild( group, nextLevel._maxRange, level._maxRange );
-            std::stringstream buf;
-            buf << levelNum+1 << "_" << getID() << "." << TEXT_MARKER << "." << GRATICLE_EXTENSION;
-            std::string bufStr = buf.str();
-            plod->setFileName( 1, bufStr );
-            plod->setRange( 1, 0, nextLevel._maxRange );
-            result = plod;
-        }
-    }
-    return result;
-}
-
-/**************************************************************************/
-
-namespace osgEarth { namespace Util
-{
-    // OSG Plugin for loading subsequent graticule levels
-    class GraticuleFactory : public osgDB::ReaderWriter
-    {
-    public:
-        virtual const char* className()
-        {
-            supportsExtension( GRATICLE_EXTENSION, "osgEarth graticule" );
-            return "osgEarth graticule LOD loader";
-        }
-
-        virtual bool acceptsExtension(const std::string& extension) const
-        {
-            return osgDB::equalCaseInsensitive(extension, GRATICLE_EXTENSION);
-        }
-
-        virtual ReadResult readNode(const std::string& uri, const Options* options) const
-        {        
-            std::string ext = osgDB::getFileExtension( uri );
-            if ( !acceptsExtension( ext ) )
-                return ReadResult::FILE_NOT_HANDLED;
-
-            // the graticule definition is formatted: LEVEL_ID.MARKER.EXTENSION
-            std::string def = osgDB::getNameLessExtension( uri );
-            
-            std::string marker = osgDB::getFileExtension( def );
-            def = osgDB::getNameLessExtension( def );
-
-            int levelNum, id;
-            sscanf( def.c_str(), "%d_%d", &levelNum, &id );
-
-            // look up the graticule referenced in the location name:
-            Graticule* graticule = 0L;
-            {
-                ScopedLock<Mutex> lock( s_graticuleMutex );
-                GraticuleRegistry::iterator i = s_graticuleRegistry.find(id);
-                if ( i != s_graticuleRegistry.end() )
-                    graticule = i->second.get();
-            }
-
-            if ( marker == GRID_MARKER )
-            {
-                osg::Node* result = graticule->createGridLevel( levelNum );
-                return result ? ReadResult( result ) : ReadResult::ERROR_IN_READING_FILE;
-            }
-            else if ( marker == TEXT_MARKER )
-            {
-                osg::Node* result = graticule->createTextLevel( levelNum );
-                return result ? ReadResult( result ) : ReadResult::ERROR_IN_READING_FILE;
-            }
-            else
-            {
-                OE_NOTICE << "oh no! no markers" << std::endl;
-                return ReadResult::FILE_NOT_HANDLED;
-            }
-        }
-    };
-    REGISTER_OSGPLUGIN(osgearthutil_graticule, GraticuleFactory)
-
-} } // namespace osgEarth::Util
-
diff --git a/src/osgEarthUtil/HSLColorFilter b/src/osgEarthUtil/HSLColorFilter
new file mode 100644
index 0000000..f542584
--- /dev/null
+++ b/src/osgEarthUtil/HSLColorFilter
@@ -0,0 +1,65 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_HSL_COLOR_FILTER
+#define OSGEARTHUTIL_HSL_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+     * Color filter that adjust the hue/saturation/lightness of a texel.
+     */
+    class OSGEARTHUTIL_EXPORT HSLColorFilter : public ColorFilter
+    {
+    public:
+        HSLColorFilter();
+        HSLColorFilter(const Config& conf);
+
+        virtual ~HSLColorFilter() { }
+
+        /**
+         * The hue/saturation/lightness offset, each component is [0..1]
+         */
+        void setHSLOffset( const osg::Vec3f& hsl );
+        osg::Vec3f getHSLOffset() const;
+
+    public: // ColorFilter
+
+        virtual std::string getEntryPointFunctionName() const;
+
+        virtual void install( osg::StateSet* stateSet ) const;
+
+        virtual Config getConfig() const;
+
+    protected:
+
+        unsigned                   _instanceId;
+        osg::ref_ptr<osg::Uniform> _hsl;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_HSL_COLOR_FILTER
diff --git a/src/osgEarthUtil/HSLColorFilter.cpp b/src/osgEarthUtil/HSLColorFilter.cpp
new file mode 100644
index 0000000..a784922
--- /dev/null
+++ b/src/osgEarthUtil/HSLColorFilter.cpp
@@ -0,0 +1,262 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/HSLColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+//---------------------------------------------------------------------------
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_commonShaderSource =
+
+        "#version 110 \n"
+
+        "void oe_hsl_RGB_2_HSL(in float r, in float g, in float b, out float h, out float s, out float l)\n"
+        "{ \n"
+        "    float var_Min = min( r, min(g, b) );    //Min. value of RGB\n"
+        "    float var_Max = max( r, max(g, b) );    //Max. value of RGB\n"
+        "    float del_Max = var_Max - var_Min;      //Delta RGB value\n"
+        "\n"
+        "    l = ( var_Max + var_Min ) / 2.0;\n"
+        "\n"
+        "    if ( del_Max == 0.0 )                     //This is a gray, no chroma...\n"
+        "    {\n"
+        "        h = 0.0;                              //HSL results from 0 to 1\n"
+        "        s = 0.0;\n"
+        "    }\n"
+        "    else                                      //Chromatic data...\n"
+        "    {\n"
+        "        if ( l < 0.5 ) s = del_Max / ( var_Max + var_Min );\n"
+        "        else           s = del_Max / ( 2.0 - var_Max - var_Min );\n"
+        "\n"
+        "        float del_R = ( ( ( var_Max - r ) / 6.0 ) + ( del_Max / 2.0 ) ) / del_Max;\n"
+        "        float del_G = ( ( ( var_Max - g ) / 6.0 ) + ( del_Max / 2.0 ) ) / del_Max;\n"
+        "        float del_B = ( ( ( var_Max - b ) / 6.0 ) + ( del_Max / 2.0 ) ) / del_Max;\n"
+        "        if      ( r == var_Max ) h = del_B - del_G;\n"
+        "        else if ( g == var_Max ) h = ( 1.0 / 3.0 ) + del_R - del_B;\n"
+        "        else if ( b == var_Max ) h = ( 2.0 / 3.0 ) + del_G - del_R;\n"
+        "        if ( h < 0.0 ) h += 1.0;\n"
+        "        if ( h > 1.0 ) h -= 1.0;\n"
+        "    }\n"
+        "}\n"
+
+        "float oe_hsl_Hue_2_RGB(float v1, float v2, float vH )\n"
+        "{\n"
+        "    float ret;\n"
+        "    if ( vH < 0.0 )\n"
+        "        vH += 1.0;\n"
+        "    if ( vH > 1.0 )\n"
+        "        vH -= 1.0;\n"
+        "    if ( ( 6.0 * vH ) < 1.0 )\n"
+        "      ret = ( v1 + ( v2 - v1 ) * 6.0 * vH );\n"
+        "    else if ( ( 2.0 * vH ) < 1.0 )\n"
+        "        ret = ( v2 );\n"
+        "    else if ( ( 3.0 * vH ) < 2.0 )\n"
+        "        ret = ( v1 + ( v2 - v1 ) * ( ( 2.0 / 3.0 ) - vH ) * 6.0 );\n"
+        "    else\n"
+        "        ret = v1;\n"
+        "    return ret;\n"
+        "}\n"
+
+        "void oe_hsl_HSL_2_RGB(in float h, in float s, in float l, out float r, out float g, out float b)\n"
+        "{\n"
+        "  float var_2, var_1;\n"
+        "  if (s == 0.0)\n"
+        "  {\n"
+        "    r = l;\n"
+        "    g = l;\n"
+        "    b = l;\n"
+        "  }\n"
+        "  else\n"
+        "  {\n"
+        "    if ( l < 0.5 )\n"
+        "    {\n"
+        "      var_2 = l * ( 1.0 + s );\n"
+        "    }\n"
+        "    else\n"
+        "    {\n"
+        "      var_2 = ( l + s ) - ( s * l );\n"
+        "    }\n"
+
+        "    var_1 = 2.0 * l - var_2;\n"
+        
+        "    r = oe_hsl_Hue_2_RGB( var_1, var_2, h + ( 1.0 / 3.0 ) );\n"
+        "    g = oe_hsl_Hue_2_RGB( var_1, var_2, h );\n"
+        "    b = oe_hsl_Hue_2_RGB( var_1, var_2, h - ( 1.0 / 3.0 ) );\n"
+        "  }\n"
+        "}\n";
+
+
+    static const char* s_localShaderSource =
+
+        "#version 110\n"
+        "void oe_hsl_RGB_2_HSL(in float r, in float g, in float b, out float h, out float s, out float l);\n"
+        "void oe_hsl_HSL_2_RGB(in float h, in float s, in float l, out float r, out float g, out float b);\n"
+        "uniform vec3 __UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{ \n"
+        "    if (__UNIFORM_NAME__.x != 0.0 || __UNIFORM_NAME__.y != 0.0 || __UNIFORM_NAME__.z != 0.0) \n"
+        "    { \n"
+        "        float h, s, l;\n"
+        "        oe_hsl_RGB_2_HSL( color.r, color.g, color.b, h, s, l);\n"
+        "        h += __UNIFORM_NAME__.x;\n"
+        "        s += __UNIFORM_NAME__.y;\n"
+        "        l += __UNIFORM_NAME__.z;\n"
+
+        // clamp H,S and L to [0..1]
+
+        "        h = clamp(h, 0.0, 1.0);\n"
+        "        s = clamp(s, 0.0, 1.0);\n"
+        "        l = clamp(l, 0.0, 1.0);\n"
+
+
+        "        float r, g, b;\n"
+        "        oe_hsl_HSL_2_RGB( h, s, l, r, g, b);\n"
+        "        color.r = r;\n"
+        "        color.g = g;\n"
+        "        color.b = b;\n"
+        "    }\n"
+        "} \n";
+}
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_hslColorFilter_"
+#define UNIFORM_PREFIX  "osgearthutil_u_hsl_"
+
+namespace
+{
+    static Threading::Mutex          s_commonShaderMutex;
+    static osg::ref_ptr<osg::Shader> s_commonShader;
+}
+
+//---------------------------------------------------------------------------
+
+HSLColorFilter::HSLColorFilter()
+{
+    init();
+}
+
+
+void
+HSLColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    _instanceId = (++s_uniformNameGen)-1;
+    _hsl = new osg::Uniform( osg::Uniform::FLOAT_VEC3, Stringify() << UNIFORM_PREFIX << _instanceId );
+    _hsl->set( osg::Vec3f(0.0f, 0.0f, 0.0f) );
+
+    // Build the "common" shader code-- this is shader code that will be shared by multiple instances
+    // of this filter (if there are multiple instances)
+    if ( !s_commonShader.valid() )
+    {
+        Threading::ScopedMutexLock lock(s_commonShaderMutex);
+        if ( !s_commonShader.valid() )
+        {
+            s_commonShader = new osg::Shader(osg::Shader::FRAGMENT, s_commonShaderSource);
+        }
+    }
+}
+
+
+void
+HSLColorFilter::setHSLOffset( const osg::Vec3f& value )
+{
+    _hsl->set( value );
+}
+
+
+osg::Vec3f
+HSLColorFilter::getHSLOffset() const
+{
+    osg::Vec3f value;
+    _hsl->get( value );
+    return value;
+}
+
+
+std::string
+HSLColorFilter::getEntryPointFunctionName() const
+{
+    return Stringify() << FUNCTION_PREFIX << _instanceId;
+}
+
+
+void
+HSLColorFilter::install( osg::StateSet* stateSet ) const
+{
+    // safe: won't add twice.
+    stateSet->addUniform( _hsl.get() );
+
+    VirtualProgram* vp = dynamic_cast<VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if ( vp )
+    {
+        // safe: won't add the same pointer twice.
+        vp->setShader( "osgEarthUtil::HSLColorFilter_common", s_commonShader.get() );
+
+        // build the local shader (unique per instance). We'll use a template with search
+        // and replace for this one.
+        std::string entryPoint = Stringify() << FUNCTION_PREFIX << _instanceId;
+        std::string code       = s_localShaderSource;
+        replaceIn( code, "__UNIFORM_NAME__", _hsl->getName() );
+        replaceIn( code, "__ENTRY_POINT__",  entryPoint );
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        //main->setName(entryPoint);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( hsl, osgEarth::Util::HSLColorFilter );
+
+
+HSLColorFilter::HSLColorFilter(const Config& conf)
+{
+    init();
+
+    osg::Vec3f hsl;
+    hsl[0] = conf.value("h", 0.0);
+    hsl[1] = conf.value("s", 0.0);
+    hsl[2] = conf.value("l", 0.0);
+    setHSLOffset( hsl );
+}
+
+Config
+HSLColorFilter::getConfig() const
+{
+    osg::Vec3f hsl = getHSLOffset();
+    Config conf("hsl");
+    conf.add( "h", hsl[0] );
+    conf.add( "s", hsl[1] );
+    conf.add( "l", hsl[2] );
+    return conf;
+}
diff --git a/src/osgEarthUtil/ImageOverlay b/src/osgEarthUtil/ImageOverlay
deleted file mode 100644
index 2da94f7..0000000
--- a/src/osgEarthUtil/ImageOverlay
+++ /dev/null
@@ -1,104 +0,0 @@
-#ifndef OSGEARTH_UTIL_IMAGE_OVERLAY_H
-#define OSGEARTH_UTIL_IMAGE_OVERLAY_H
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/GeoData>
-#include <osgEarth/DrapeableNode>
-#include <osgEarth/Units>
-
-#include <osg/Group>
-#include <osg/Geometry>
-#include <osg/Image>
-#include <osg/CoordinateSystemNode>
-
-namespace osgEarth { namespace Util
-{
-    class OSGEARTHUTIL_EXPORT ImageOverlay : public DrapeableNode
-    {
-    public:    
-        
-        enum ControlPoint
-        {
-            CONTROLPOINT_CENTER,
-            CONTROLPOINT_LOWER_LEFT,
-            CONTROLPOINT_LOWER_RIGHT,
-            CONTROLPOINT_UPPER_LEFT,
-            CONTROLPOINT_UPPER_RIGHT
-        };
-        
-        ImageOverlay(MapNode* mapNode, osg::Image* image = NULL);
-
-        void setCorners(const osg::Vec2d& lowerLeft, const osg::Vec2d& lowerRight, 
-                        const osg::Vec2d& upperLeft, const osg::Vec2d& upperRight);
-
-        void setLowerLeft(double lon_deg, double lat_deg);
-        const osg::Vec2d& getLowerLeft() const { return _lowerLeft; }
-
-        void setLowerRight(double lon_deg, double lat_deg);
-        const osg::Vec2d& getLowerRight() const { return _lowerRight;}
-
-        void setUpperLeft(double lon_deg, double lat_deg);
-        const osg::Vec2d& getUpperLeft() const { return _upperLeft; }
-
-        void setUpperRight(double lon_deg, double lat_deg);
-        const osg::Vec2d& getUpperRight() const { return _upperRight;}
-
-        osg::Vec2d getCenter() const;
-        void setCenter(double lon_deg, double lat_deg);
-
-        osg::Vec2d getControlPoint(ControlPoint controlPoint);
-        void setControlPoint(ControlPoint controlPoint, double lon_deg, double lat_deg, bool singleVert=false);
-
-        struct ImageOverlayCallback : public osg::Referenced
-        {
-            virtual void onOverlayChanged() {};
-        };
-
-        typedef std::list< osg::ref_ptr<ImageOverlayCallback> > CallbackList;
-
-        void addCallback( ImageOverlayCallback* callback );
-        void removeCallback( ImageOverlayCallback* callback );
-
-
-        osgEarth::Bounds getBounds() const;
-        void setBounds(const osgEarth::Bounds& bounds);
-
-        void setBoundsAndRotation(const osgEarth::Bounds& bounds, const Angular& rotation);
-
-        osg::Image* getImage() const;
-        void setImage( osg::Image* image );
-
-        void setNorth(double value_deg);
-        void setSouth(double value_deg);
-        void setEast(double value_deg);
-        void setWest(double value_deg);
-
-        float getAlpha() const;
-        void setAlpha(float alpha);
-
-        virtual void traverse(osg::NodeVisitor& nv);
-
-        void dirty();
-    private:
-        void fireCallback(ImageOverlay::ControlPoint point, const osg::Vec2d& location);
-
-        void postCTOR();
-        void init();
-        void clampLatitudes();
-        osg::Vec2d _lowerLeft;
-        osg::Vec2d _lowerRight;
-        osg::Vec2d _upperRight;
-        osg::Vec2d _upperLeft;
-        osg::ref_ptr< osg::Image > _image;
-        bool _dirty;
-        OpenThreads::Mutex _mutex;
-        osg::Geode* _geode;
-        osg::Geometry* _geometry;
-        float _alpha;
-        CallbackList _callbacks;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif // OSGEARTH_UTIL_IMAGE_OVERLAY_H
-
diff --git a/src/osgEarthUtil/ImageOverlay.cpp b/src/osgEarthUtil/ImageOverlay.cpp
deleted file mode 100644
index 575e660..0000000
--- a/src/osgEarthUtil/ImageOverlay.cpp
+++ /dev/null
@@ -1,428 +0,0 @@
-#include <osgEarthUtil/ImageOverlay>
-
-#include <osg/Geode>
-#include <osg/ShapeDrawable>
-#include <osg/Texture2D>
-#include <osgEarthSymbology/MeshSubdivider>
-#include <osgEarth/FindNode>
-#include <osg/io_utils>
-#include <algorithm>
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-using namespace osgEarth::Symbology;
-
-/***************************************************************************/
-
-void clampLatitude(osg::Vec2d& l)
-{
-    l.y() = osg::clampBetween( l.y(), -90.0, 90.0);
-}
-
-ImageOverlay::ImageOverlay(MapNode* mapNode, osg::Image* image):
-DrapeableNode(mapNode, true),
-_lowerLeft(10,10),
-_lowerRight(20, 10),
-_upperRight(20,20),
-_upperLeft(10, 20),
-_image(image),
-_dirty(false),
-_alpha(1.0f)
-{        
-    postCTOR();
-}
-
-void
-ImageOverlay::postCTOR()
-{
-    _geode = new osg::Geode;
-    //addChild( _geode );    
-
-    setNode( _geode );
-
-    init();    
-    ADJUST_UPDATE_TRAV_COUNT( this, 1 );    
-}
-
-void
-ImageOverlay::init()
-{
-    OpenThreads::ScopedLock< OpenThreads::Mutex > lock(_mutex);    
-
-    double height = 0;
-    osg::Geometry* geometry = new osg::Geometry();
-    osg::Vec3d ll;
-    const osg::EllipsoidModel* ellipsoid = _mapNode->getMap()->getProfile()->getSRS()->getEllipsoid();
-    ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(_lowerLeft.y()), osg::DegreesToRadians(_lowerLeft.x()), height, ll.x(), ll.y(), ll.z());
-
-    osg::Vec3d lr;
-    ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(_lowerRight.y()), osg::DegreesToRadians(_lowerRight.x()), height, lr.x(), lr.y(), lr.z());
-
-    osg::Vec3d ur;
-    ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(_upperRight.y()), osg::DegreesToRadians(_upperRight.x()), height, ur.x(), ur.y(), ur.z());
-
-    osg::Vec3d ul;
-    ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(_upperLeft.y()), osg::DegreesToRadians(_upperLeft.x()), height, ul.x(), ul.y(), ul.z());
-
-
-    osg::Vec3Array* verts = new osg::Vec3Array(4);
-    (*verts)[0] = ll;
-    (*verts)[1] = lr;
-    (*verts)[2] = ur;
-    (*verts)[3] = ul;
-    
-    geometry->setVertexArray( verts );
-
-    osg::Vec4Array* colors = new osg::Vec4Array(1);
-    (*colors)[0] = osg::Vec4(1,1,1,_alpha);
-
-    geometry->setColorArray( colors );
-    geometry->setColorBinding( osg::Geometry::BIND_OVERALL );
-
-     GLuint tris[6] = { 0, 1, 2,
-                        0, 2, 3
-                      };        
-    geometry->addPrimitiveSet(new osg::DrawElementsUInt( GL_TRIANGLES, 6, tris ) );
-
-    bool flip = false;
-    if (_image.valid())
-    {
-        //Create the texture
-        osg::Texture2D* texture = new osg::Texture2D(_image.get());
-        texture->setResizeNonPowerOfTwoHint(false);
-        _geode->getOrCreateStateSet()->setTextureAttributeAndModes(0, texture, osg::StateAttribute::ON);    
-        flip = _image->getOrigin()==osg::Image::TOP_LEFT;
-    }
-
-    osg::Vec2Array* texcoords = new osg::Vec2Array(4);
-    (*texcoords)[0].set(0.0f,flip ? 1.0 : 0.0f);
-    (*texcoords)[1].set(1.0f,flip ? 1.0 : 0.0f);
-    (*texcoords)[2].set(1.0f,flip ? 0.0 : 1.0f);
-    (*texcoords)[3].set(0.0f,flip ? 0.0 : 1.0f);
-    geometry->setTexCoordArray(0, texcoords);
-        
-    MeshSubdivider ms;
-    ms.run(*geometry, osg::DegreesToRadians(5.0), GEOINTERP_RHUMB_LINE);
-
-    _geode->removeDrawables(0, _geode->getNumDrawables() );
-
-    _geode->addDrawable( geometry );
-
-    _geometry = geometry;
-
-    _dirty = false;
-}
-
-osg::Image*
-ImageOverlay::getImage() const
-{
-    return _image.get();
-}
-
-void ImageOverlay::setImage( osg::Image* image )
-{
-    if (_image != image)
-    {
-        _image = image;
-        dirty();        
-    }
-}
-
-float
-ImageOverlay::getAlpha() const
-{
-    return _alpha;
-}
-
-void
-ImageOverlay::setAlpha(float alpha)
-{
-    if (_alpha != alpha)
-    {
-        _alpha = osg::clampBetween(alpha, 0.0f, 1.0f);
-        dirty();
-    }
-}
-
-void
-ImageOverlay::clampLatitudes()
-{
-    clampLatitude( _lowerLeft );
-    clampLatitude( _lowerRight );
-    clampLatitude( _upperLeft );
-    clampLatitude( _upperRight );
-}
-
-
-osg::Vec2d
-ImageOverlay::getCenter() const
-{
-    return (_lowerLeft + _lowerRight + _upperRight + _upperLeft) / 4.0;
-}
-
-void
-ImageOverlay::setCenter(double lon_deg, double lat_deg)
-{
-    osg::Vec2d center = getCenter();
-    osg::Vec2d newCenter(lon_deg, lat_deg);
-    osg::Vec2d offset =  newCenter - center;
-    setCorners(_lowerLeft += offset, _lowerRight += offset,
-               _upperLeft += offset, _upperRight += offset);    
-}
-
-void
-ImageOverlay::setNorth(double value_deg)
-{
-    _upperRight.y() = value_deg;
-    _upperLeft.y()  = value_deg;
-    clampLatitudes();
-    dirty();
-}
-
-void
-ImageOverlay::setSouth(double value_deg)
-{
-    _lowerRight.y() = value_deg;
-    _lowerLeft.y() = value_deg;
-    clampLatitudes();
-    dirty();
-}
-
-void
-ImageOverlay::setEast(double value_deg)
-{
-    _upperRight.x() = value_deg;
-    _lowerRight.x() = value_deg;
-    dirty();
-}
-
-void
-ImageOverlay::setWest(double value_deg)
-{
-    _lowerLeft.x() = value_deg;
-    _upperLeft.x() = value_deg;
-    dirty();
-}
-
-void
-ImageOverlay::setCorners(const osg::Vec2d& lowerLeft, const osg::Vec2d& lowerRight, 
-        const osg::Vec2d& upperLeft, const osg::Vec2d& upperRight)
-{
-    _lowerLeft = lowerLeft;
-    _lowerRight = lowerRight;
-    _upperLeft = upperLeft;
-    _upperRight = upperRight;
-    clampLatitudes();
-    
-    dirty();
-}
-
-osgEarth::Bounds
-ImageOverlay::getBounds() const
-{
-    osgEarth::Bounds bounds;
-    bounds.expandBy(_lowerLeft.x(), _lowerLeft.y());
-    bounds.expandBy(_lowerRight.x(), _lowerRight.y());
-    bounds.expandBy(_upperLeft.x(), _upperLeft.y());
-    bounds.expandBy(_upperRight.x(), _upperRight.y());
-    return bounds;
-}
-
-void ImageOverlay::setBounds(const osgEarth::Bounds &extent)
-{
-    setCorners(osg::Vec2d(extent.xMin(), extent.yMin()), osg::Vec2d(extent.xMax(), extent.yMin()),
-               osg::Vec2d(extent.xMin(), extent.yMax()), osg::Vec2d(extent.xMax(), extent.yMax()));
-}
-
-void
-ImageOverlay::setBoundsAndRotation(const osgEarth::Bounds& b, const Angular& rot)
-{
-    double rot_rad = rot.as(Units::RADIANS);
-
-    if ( osg::equivalent( rot_rad, 0.0 ) )
-    {
-        setBounds( b );
-    }
-    else
-    {
-        osg::Vec2d ll( b.xMin(), b.yMin() );
-        osg::Vec2d ul( b.xMin(), b.yMax() );
-        osg::Vec2d ur( b.xMax(), b.yMax() );
-        osg::Vec2d lr( b.xMax(), b.yMin() );
-
-        double sinR = sin(-rot_rad), cosR = cos(-rot_rad);
-
-        osg::Vec2d c( 0.5*(b.xMax()+b.xMin()), 0.5*(b.yMax()+b.yMin()) );
-
-        // there must be a better way, but my internet is down so i can't look it up with now..
-
-        osg::ref_ptr<SpatialReference> srs = SpatialReference::create("wgs84");
-        osg::ref_ptr<SpatialReference> utm = srs->createUTMFromLongitude( c.x() );
-
-        osg::Vec2d ll_utm, ul_utm, ur_utm, lr_utm, c_utm;
-        srs->transform2D( ll.x(), ll.y(), utm.get(), ll_utm.x(), ll_utm.y() );
-        srs->transform2D( ul.x(), ul.y(), utm.get(), ul_utm.x(), ul_utm.y() );
-        srs->transform2D( ur.x(), ur.y(), utm.get(), ur_utm.x(), ur_utm.y() );
-        srs->transform2D( lr.x(), lr.y(), utm.get(), lr_utm.x(), lr_utm.y() );
-        srs->transform2D( c.x(),  c.y(),  utm.get(), c_utm.x(),  c_utm.y()  );
-
-        osg::Vec2d llp( cosR*(ll_utm.x()-c_utm.x()) - sinR*(ll_utm.y()-c_utm.y()), sinR*(ll_utm.x()-c_utm.x()) + cosR*(ll_utm.y()-c_utm.y()) );
-        osg::Vec2d ulp( cosR*(ul_utm.x()-c_utm.x()) - sinR*(ul_utm.y()-c_utm.y()), sinR*(ul_utm.x()-c_utm.x()) + cosR*(ul_utm.y()-c_utm.y()) );
-        osg::Vec2d urp( cosR*(ur_utm.x()-c_utm.x()) - sinR*(ur_utm.y()-c_utm.y()), sinR*(ur_utm.x()-c_utm.x()) + cosR*(ur_utm.y()-c_utm.y()) );
-        osg::Vec2d lrp( cosR*(lr_utm.x()-c_utm.x()) - sinR*(lr_utm.y()-c_utm.y()), sinR*(lr_utm.x()-c_utm.x()) + cosR*(lr_utm.y()-c_utm.y()) );    
-
-        utm->transform2D( (llp+c_utm).x(), (llp+c_utm).y(), srs.get(), ll.x(), ll.y() );
-        utm->transform2D( (ulp+c_utm).x(), (ulp+c_utm).y(), srs.get(), ul.x(), ul.y() );
-        utm->transform2D( (urp+c_utm).x(), (urp+c_utm).y(), srs.get(), ur.x(), ur.y() );
-        utm->transform2D( (lrp+c_utm).x(), (lrp+c_utm).y(), srs.get(), lr.x(), lr.y() );
-
-        setCorners( ll, lr, ul, ur );
-    }
-}
-
-void
-ImageOverlay::setLowerLeft(double lon_deg, double lat_deg)
-{
-    _lowerLeft = osg::Vec2d(lon_deg, lat_deg);
-    clampLatitudes();
-    dirty();    
-}
-
-void
-ImageOverlay::setLowerRight(double lon_deg, double lat_deg)
-{
-    _lowerRight = osg::Vec2d(lon_deg, lat_deg);
-    clampLatitudes();
-    dirty();    
-}
-
-void
-ImageOverlay::setUpperRight(double lon_deg, double lat_deg)
-{
-    _upperRight = osg::Vec2d(lon_deg, lat_deg);
-    clampLatitudes();
-    dirty();
-}
-
-void
-ImageOverlay::setUpperLeft(double lon_deg, double lat_deg)
-{
-    _upperLeft = osg::Vec2d(lon_deg, lat_deg);
-    clampLatitudes();
-    dirty();
-}
-
-osg::Vec2d
-ImageOverlay::getControlPoint(ControlPoint controlPoint)
-{
-    switch (controlPoint)
-    {
-    case CONTROLPOINT_CENTER:
-        return getCenter();
-    case CONTROLPOINT_UPPER_LEFT:
-        return getUpperLeft();
-    case CONTROLPOINT_LOWER_LEFT:
-        return getLowerLeft();
-    case CONTROLPOINT_UPPER_RIGHT:
-        return getUpperRight();
-    case CONTROLPOINT_LOWER_RIGHT:
-        return getLowerRight();
-    default:
-        return getCenter();
-    }       
-}
-
-void
-ImageOverlay::setControlPoint(ControlPoint controlPoint, double lon_deg, double lat_deg,  bool singleVert)
-{
-    switch (controlPoint)
-    {
-    case CONTROLPOINT_CENTER:
-        return setCenter(lon_deg, lat_deg);
-        break;
-    case CONTROLPOINT_UPPER_LEFT:
-        if (singleVert)
-        {
-            setUpperLeft(lon_deg, lat_deg);
-        }
-        else
-        {
-            setNorth(lat_deg);
-            setWest(lon_deg);
-        }
-        break;
-    case CONTROLPOINT_LOWER_LEFT:
-        if (singleVert)
-        {
-            setLowerLeft(lon_deg, lat_deg);
-        }
-        else
-        {
-            setSouth(lat_deg);
-            setWest(lon_deg);
-        }
-        break;
-    case CONTROLPOINT_UPPER_RIGHT:
-        if (singleVert)
-        {
-            setUpperRight(lon_deg, lat_deg);
-        }
-        else
-        {
-            setNorth( lat_deg);
-            setEast( lon_deg );            
-        }
-        break;
-    case CONTROLPOINT_LOWER_RIGHT:
-        if (singleVert)
-        {
-            setLowerRight(lon_deg, lat_deg);
-        }
-        else
-        {
-            setSouth( lat_deg );
-            setEast( lon_deg );
-        }
-        break;
-    }
-}
-
-void
-ImageOverlay::traverse(osg::NodeVisitor &nv)
-{     
-    if (nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR && _dirty)
-    {
-        init();        
-    }
-    DrapeableNode::traverse(nv);
-}
-
-void ImageOverlay::dirty()
-{
-    {
-        OpenThreads::ScopedLock< OpenThreads::Mutex > lock(_mutex);
-        _dirty = true;
-    }
-
-    for( CallbackList::iterator i = _callbacks.begin(); i != _callbacks.end(); i++ )
-    {
-        i->get()->onOverlayChanged();
-    }
-}
-
-void 
-ImageOverlay::addCallback( ImageOverlayCallback* cb )
-{
-    if ( cb )
-        this->_callbacks.push_back( cb );
-}
-
-void 
-ImageOverlay::removeCallback( ImageOverlayCallback* cb )
-{
-    CallbackList::iterator i = std::find( _callbacks.begin(), _callbacks.end(), cb);
-    if (i != _callbacks.end())
-    {
-        _callbacks.erase( i );
-    }    
-}
\ No newline at end of file
diff --git a/src/osgEarthUtil/ImageOverlayEditor b/src/osgEarthUtil/ImageOverlayEditor
deleted file mode 100644
index 23ab5de..0000000
--- a/src/osgEarthUtil/ImageOverlayEditor
+++ /dev/null
@@ -1,47 +0,0 @@
-#ifndef OSGEARTH_UTIL_IMAGE_OVERLAY_EDITOR_H
-#define OSGEARTH_UTIL_IMAGE_OVERLAY_EDITOR_H
-
-#include <osgEarth/MapNode>
-#include <osgEarthUtil/Common>
-#include <osgEarthUtil/ImageOverlay>
-#include <osg/MatrixTransform>
-#include <osgGA/GUIEventHandler>
-#include <osgEarthUtil/Draggers>
-
-namespace osgEarth { namespace Util
-{
-    class OSGEARTHUTIL_EXPORT ImageOverlayEditor : public osg::Group
-    {
-    public:
-        typedef std::map< ImageOverlay::ControlPoint, osg::ref_ptr< osgManipulator::Dragger > >  ControlPointDraggerMap;
-
-        ImageOverlayEditor(ImageOverlay* overlay, const osg::EllipsoidModel* ellipsoid, osg::Node* terrain);
-
-        ControlPointDraggerMap& getDraggers() { return _draggers; }
-
-        const osg::EllipsoidModel* getEllipsoid() const { return _ellipsoid.get();}
-        void setEllipsoid( const osg::EllipsoidModel* ellipsoid) { _ellipsoid = ellipsoid; };
-
-        osg::Node* getTerrain() const { return _terrain.get(); }
-        void setTerrain( osg::Node* terrain) { _terrain = terrain;}
-
-        ImageOverlay* getOverlay() { return _overlay.get();}
-
-        void updateDraggers();
-
-    protected:
-
-        ~ImageOverlayEditor();
-        void addDragger( ImageOverlay::ControlPoint controlPoint );
-
-        osg::ref_ptr< ImageOverlay > _overlay;
-        osg::ref_ptr< const osg::EllipsoidModel > _ellipsoid;
-        osg::ref_ptr< osg::Node > _terrain;
-        osg::ref_ptr< osgEarth::Util::ImageOverlay::ImageOverlayCallback > _overlayCallback;
-        ControlPointDraggerMap _draggers;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif // OSGEARTH_UTIL_IMAGE_OVERLAY_EDITOR_H
-
diff --git a/src/osgEarthUtil/ImageOverlayEditor.cpp b/src/osgEarthUtil/ImageOverlayEditor.cpp
deleted file mode 100644
index 1a2cf75..0000000
--- a/src/osgEarthUtil/ImageOverlayEditor.cpp
+++ /dev/null
@@ -1,205 +0,0 @@
-#include <osgEarthUtil/ImageOverlayEditor>
-
-#include <osg/Geode>
-#include <osg/io_utils>
-#include <osg/AutoTransform>
-#include <osg/ShapeDrawable>
-#include <osgViewer/Viewer>
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-
-/***************************************************************************/
-
-class ImageOverlayDraggerCallback : public osgManipulator::DraggerCallback
-{
-public:
-    ImageOverlayDraggerCallback(ImageOverlay* overlay, const osg::EllipsoidModel* ellipsoid, ImageOverlay::ControlPoint controlPoint):
-      _overlay(overlay),
-          _ellipsoid(ellipsoid),
-          _controlPoint(controlPoint)
-      {}
-
-      osg::Vec2d getLocation(const osg::Matrixd& matrix)
-      {
-          osg::Vec3d trans = matrix.getTrans();
-          double lat, lon, height;
-          _ellipsoid->convertXYZToLatLongHeight(trans.x(), trans.y(), trans.z(), lat, lon, height);
-          return osg::Vec2d(osg::RadiansToDegrees(lon), osg::RadiansToDegrees(lat));
-      }
-
-
-      virtual bool receive(const osgManipulator::MotionCommand& command)
-      {
-          switch (command.getStage())
-          {
-          case osgManipulator::MotionCommand::START:
-              {
-                  // Save the current matrix
-                  osg::Vec2d startLocation = _overlay->getControlPoint(_controlPoint);
-                  double x, y, z;
-                  _ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(startLocation.y()), osg::DegreesToRadians(startLocation.x()), 0, x, y, z);
-                  _startMotionMatrix = osg::Matrixd::translate(x, y, z);
-
-                  // Get the LocalToWorld and WorldToLocal matrix for this node.
-                  osg::NodePath nodePathToRoot;
-                  _localToWorld = osg::Matrixd::identity();
-                  _worldToLocal = osg::Matrixd::identity();
-
-                  return true;
-              }
-          case osgManipulator::MotionCommand::MOVE:
-              {
-                  // Transform the command's motion matrix into local motion matrix.
-                  osg::Matrix localMotionMatrix = _localToWorld * command.getWorldToLocal()
-                      * command.getMotionMatrix()
-                      * command.getLocalToWorld() * _worldToLocal;
-
-                  osg::Matrixd newMatrix = localMotionMatrix * _startMotionMatrix;
-                  osg::Vec2d location = getLocation( newMatrix );
-                  _overlay->setControlPoint(_controlPoint, location.x(), location.y());
-
-                  return true;
-              }
-          case osgManipulator::MotionCommand::FINISH:
-              {
-                  return true;
-              }
-          case osgManipulator::MotionCommand::NONE:
-          default:
-              return false;
-          }
-      }
-
-
-      osg::ref_ptr<const osg::EllipsoidModel>            _ellipsoid;
-      osg::ref_ptr<ImageOverlay>           _overlay;
-
-      osg::Matrix _startMotionMatrix;
-      ImageOverlay::ControlPoint _controlPoint;
-
-      osg::Matrix _localToWorld;
-      osg::Matrix _worldToLocal;
-};
-
-/***************************************************************************/
-/*class UpdateDraggersCallback : public osgManipulator::DraggerCallback
-{
-public:
-    UpdateDraggersCallback(ImageOverlayEditor* editor)
-    {
-        _editor = editor;
-    }
-
-    virtual bool receive(const osgManipulator::MotionCommand& command)
-    {
-        _editor->updateDraggers();
-        return false;
-    }
-
-    friend class ImageOverlayEditor;
-
-    ImageOverlayEditor* _editor;
-};*/
-
-struct OverlayCallback : public osgEarth::Util::ImageOverlay::ImageOverlayCallback
-{
-    OverlayCallback(ImageOverlayEditor *editor):
-_editor(editor)
-    {
-    }
-
-    virtual void onOverlayChanged()
-    {
-        _editor->updateDraggers();
-    }
-
-    ImageOverlayEditor* _editor;    
-};
-
-/***************************************************************************/
-
-
-
-
-ImageOverlayEditor::ImageOverlayEditor(ImageOverlay* overlay, const osg::EllipsoidModel* ellipsoid, osg::Node* terrain):
-_overlay(overlay),
-_ellipsoid(ellipsoid),
-_terrain(terrain)
-{   
-    _overlayCallback = new OverlayCallback(this);
-    _overlay->addCallback( _overlayCallback.get() );
-    addDragger( ImageOverlay::CONTROLPOINT_CENTER );
-    addDragger( ImageOverlay::CONTROLPOINT_LOWER_LEFT );
-    addDragger( ImageOverlay::CONTROLPOINT_LOWER_RIGHT );
-    addDragger( ImageOverlay::CONTROLPOINT_UPPER_LEFT );
-    addDragger( ImageOverlay::CONTROLPOINT_UPPER_RIGHT );
-}
-
-ImageOverlayEditor::~ImageOverlayEditor()
-{
-    _overlay->removeCallback( _overlayCallback.get() );
-}
-
-void
-ImageOverlayEditor::addDragger( ImageOverlay::ControlPoint controlPoint )
-{    
-    osg::Vec2d location = _overlay->getControlPoint( controlPoint );
-    osg::Matrixd matrix;
-    _ellipsoid->computeLocalToWorldTransformFromLatLongHeight(osg::DegreesToRadians(location.y()), osg::DegreesToRadians(location.x()), 0, matrix);    
-
-    IntersectingDragger* dragger = new IntersectingDragger;
-    dragger->setNode( _terrain.get() );
-    dragger->setupDefaultGeometry();
-    dragger->setMatrix(matrix);
-    dragger->setHandleEvents( true );
-    dragger->addDraggerCallback(new ImageOverlayDraggerCallback(_overlay.get(), _ellipsoid.get(), controlPoint));
-
-    addChild(dragger);
-    _draggers[ controlPoint ] = dragger;
-}
-
-void
-ImageOverlayEditor::updateDraggers()
-{
-    for (ImageOverlayEditor::ControlPointDraggerMap::iterator itr = getDraggers().begin(); itr != getDraggers().end(); ++itr)
-    {
-        //Get the location of the control point
-        osg::Vec2d location = getOverlay()->getControlPoint( itr->first );
-
-        osg::Matrixd matrix;
-
-        //Compute the geocentric location
-        osg::ref_ptr< const osg::EllipsoidModel > ellipsoid = getEllipsoid();
-        osg::Vec3d geo_loc;
-        ellipsoid->convertLatLongHeightToXYZ(osg::DegreesToRadians(location.y()), osg::DegreesToRadians(location.x()), 0, geo_loc.x(), geo_loc.y(), geo_loc.z());
-
-        osg::Vec3d up = geo_loc;
-        up.normalize();
-
-        double segOffset = 50000;
-
-        osg::Vec3d start = geo_loc + (up * segOffset);
-        osg::Vec3d end = geo_loc - (up * segOffset);
-
-        osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
-
-        osgUtil::IntersectionVisitor iv;
-        iv.setIntersector( i );
-        getTerrain()->accept( iv );
-
-        osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
-        if ( !results.empty() )
-        {
-            const osgUtil::LineSegmentIntersector::Intersection& result = *results.begin();
-            geo_loc = result.getWorldIntersectPoint();
-        }
-
-
-        getEllipsoid()->computeLocalToWorldTransformFromXYZ(geo_loc.x(), geo_loc.y(), geo_loc.z(), matrix);
-
-
-        itr->second.get()->setMatrix( matrix );                               
-
-    }
-}
diff --git a/src/osgEarthUtil/LatLongFormatter b/src/osgEarthUtil/LatLongFormatter
new file mode 100644
index 0000000..64e320d
--- /dev/null
+++ b/src/osgEarthUtil/LatLongFormatter
@@ -0,0 +1,98 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_UTIL_LATLONG_FORMATTER_H
+#define OSGEARTH_UTIL_LATLONG_FORMATTER_H
+
+#include <osgEarthUtil/Formatter>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Units>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+     * Formats geodetic (latitude/longitude) coordinates.
+     */
+    class OSGEARTHUTIL_EXPORT LatLongFormatter : public Formatter
+    {
+    public:
+        /** Output format for angles. */
+        enum AngularFormat {
+            FORMAT_DEFAULT,
+            FORMAT_DECIMAL_DEGREES,
+            FORMAT_DEGREES_DECIMAL_MINUTES,
+            FORMAT_DEGREES_MINUTES_SECONDS
+        };
+
+        /** Formatting options. */
+        enum Options {
+            USE_SYMBOLS     = 1 << 0,   // whether to use symbols
+            USE_COLONS      = 1 << 1,   // whether to separate components with colons
+            USE_SPACES      = 1 << 2    // whether to separate components with spaces
+        };
+
+    public:
+        /**
+         * Constructs a lat-long formatter.
+         */
+        LatLongFormatter(          
+            const AngularFormat& defaultFormat =FORMAT_DECIMAL_DEGREES,
+            unsigned             optionsMask   =0u );
+
+        /** dtor */
+        virtual ~LatLongFormatter() { }
+
+        /**
+         * Sets the output precision for decimal numbers  (default is 5)
+         */
+        void setPrecision( int value ) { _prec = value; }
+
+        /**
+         * Sets the formatting options
+         */
+        void setOptions( const Options& options ) { _options = options; }
+
+        /** 
+         * Formats an angle into one of the supported angular formats
+         */
+        std::string format(
+            const Angular&       angle,
+            int                  precision    =-1, 
+            const AngularFormat& outputFormat =FORMAT_DEFAULT) const;
+
+        /**
+         * Parses a string into an angle (returning false if parsing fails).
+         */
+        bool parseAngle( const std::string& input, Angular& out_value );
+
+    public: // Formatter
+
+        virtual std::string format( const GeoPoint& p ) const;
+
+
+    protected:
+        unsigned      _options;
+        AngularFormat _defaultFormat;
+        int           _prec;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_UTIL_LATLONG_FORMATTER_H
diff --git a/src/osgEarthUtil/LatLongFormatter.cpp b/src/osgEarthUtil/LatLongFormatter.cpp
new file mode 100644
index 0000000..309dd7d
--- /dev/null
+++ b/src/osgEarthUtil/LatLongFormatter.cpp
@@ -0,0 +1,173 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/LatLongFormatter>
+#include <iomanip>
+#include <sstream>
+#include <cstdio>
+#include <algorithm>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+#define LC "[LatLongFormatter] "
+
+LatLongFormatter::LatLongFormatter(const AngularFormat& defaultFormat,
+                                   unsigned             options ) :
+_defaultFormat( defaultFormat ),
+_options      ( options ),
+_prec         ( 5 )
+{
+    if ( _defaultFormat == FORMAT_DEFAULT )
+    {
+        _defaultFormat = FORMAT_DEGREES_MINUTES_SECONDS;
+    }
+}
+
+std::string
+LatLongFormatter::format( const GeoPoint& p ) const
+{
+    GeoPoint geo = p;
+    if ( !geo.makeGeographic() )
+        return "";
+
+    return Stringify()
+        << format( Angular(geo.y()) )
+        << ", "
+        << format( Angular(geo.x()) );
+}
+
+std::string
+LatLongFormatter::format( const Angular& angle, int precision, const AngularFormat& format ) const
+{
+    std::stringstream buf;
+    std::string result;
+    std::string space = _options & USE_SPACES ? " " : "";
+
+    AngularFormat f =
+        format == FORMAT_DEFAULT ? _defaultFormat :
+        format;
+
+    if ( precision < 0 )
+        precision = _prec;
+
+    if ( precision > 0 )
+        buf << std::setprecision(precision);
+
+    double df = angle.as(Units::DEGREES);
+    while( df < -180. ) df += 360.;
+    while( df >  180. ) df -= 360.;
+
+    switch( f )
+    {
+    case FORMAT_DECIMAL_DEGREES:
+        {
+            if ( _options & USE_SYMBOLS )
+                buf << df << "\xb0";
+            else
+                buf << df;
+        }
+        break;
+
+    case FORMAT_DEGREES_DECIMAL_MINUTES:
+        {
+            int    d  = (int)floor(df);
+            double mf = 60.0*(df-(double)d);
+            if ( mf == 60.0 ) {
+                d += 1;
+                mf = 0.0;
+            }
+            if ( _options & USE_SYMBOLS )
+                buf << d << "\xb0" << space << mf << "'";
+            else if ( _options & USE_COLONS )
+                buf << d << ":" << mf;
+            else
+                buf << d << " " << mf;
+        }
+        break;
+
+    case FORMAT_DEGREES_MINUTES_SECONDS:
+        {
+            int    d  = (int)floor(df);
+            double mf = 60.0*(df-(double)d);
+            int    m  = (int)floor(mf);
+            double sf = 60.0*(mf-(double)m);
+            if ( sf == 60.0 ) {
+                m += 1;
+                sf = 0.0;
+                if ( m == 60 ) {
+                    d += 1;
+                    m = 0;
+                }
+            }
+            if ( _options & USE_SYMBOLS )
+                buf << d << "\xb0" << space << m << "'" << space << sf << "\"";
+            else if ( _options & USE_COLONS )
+                buf << d << ":" << m << ":" << sf;
+            else
+                buf << d << " " << m << " " << sf;
+        }
+        break;
+		case FORMAT_DEFAULT:
+		default: break;
+    }
+
+    result = buf.str();
+    return result;
+}
+
+bool
+LatLongFormatter::parseAngle( const std::string& input, Angular& out_value )
+{
+    const char* c = input.c_str();
+
+    double d=0.0, m=0.0, s=0.0;
+
+    if (sscanf(c, "%lf:%lf:%lf",     &d, &m, &s) == 3 ||
+        sscanf(c, "%lf\xb0%lf'%lf\"",   &d, &m, &s) == 3 ||
+        sscanf(c, "%lf\xb0 %lf' %lf\"", &d, &m ,&s) == 3 ||
+        sscanf(c, "%lfd %lf' %lf\"", &d, &m, &s) == 3 ||
+        sscanf(c, "%lfd %lfm %lfs",  &d, &m, &s) == 3 ||
+        sscanf(c, "%lf %lf' %lf\"",  &d, &m, &s) == 3 )
+    {
+        out_value.set( d + m/60.0 + s/3600.0, Units::DEGREES );
+        return true;
+    }
+    else if (
+        sscanf(c, "%lf:%lf",   &d, &m) == 2 ||
+        sscanf(c, "%lf\xb0 %lf'", &d, &m) == 2 ||
+        sscanf(c, "%lf\xb0%lf'",  &d, &m) == 2 ||
+        sscanf(c, "%lfd %lf'", &d, &m) == 2 ||
+        sscanf(c, "%lfd %lfm", &d, &m) == 2 ||
+        sscanf(c, "%lfd%lf'",  &d, &m) == 2 ||
+        sscanf(c, "%lf %lf'",  &d, &m) == 2 )
+    {
+        out_value.set( d + m/60.0, Units::DEGREES );
+        return true;
+    }
+    else if (
+        sscanf(c, "%lf\xb0", &d) == 1 ||
+        sscanf(c, "%lfd", &d) == 1 ||
+        sscanf(c, "%lf",  &d) == 1 )
+    {
+        out_value.set( d, Units::DEGREES );
+        return true;
+    }
+
+    return false;
+}
diff --git a/src/osgEarthUtil/LineOfSight b/src/osgEarthUtil/LineOfSight
new file mode 100644
index 0000000..ab039b3
--- /dev/null
+++ b/src/osgEarthUtil/LineOfSight
@@ -0,0 +1,76 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_UTIL_LINE_OF_SIGHT_H
+#define OSGEARTH_UTIL_LINE_OF_SIGHT_H
+
+#include <osgEarthUtil/Common>
+#include <osg/Group>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    struct LineOfSight
+    {
+        /**
+         * The line of sight display mode
+         */
+        enum DisplayMode
+        {
+            /**
+             * Split mode draws a line in the good color from the start of the line to the first hit, then a bad line from the hit to the end
+             */
+            MODE_SPLIT,
+            /**
+             * Single mode draws a single line from start to end and colors it good or bad depending on whether there is line of sight or not.
+             */
+            MODE_SINGLE
+        };
+    };
+
+
+    /**
+     * Base class for LOS node implementations
+     */
+    class /* no export */ LineOfSightNode : public osg::Group
+    {
+    public:
+        LineOfSightNode() { }
+        virtual ~LineOfSightNode() { }
+    };
+
+
+    /** 
+     * Callback for LOS change notifications 
+     */
+    struct LOSChangedCallback : public osg::Referenced
+    {
+    public:
+        virtual void onChanged() {};
+
+        /** dtor */
+        virtual ~LOSChangedCallback() { }
+    };
+
+    typedef std::list< osg::ref_ptr<LOSChangedCallback> > LOSChangedCallbackList;
+
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_UTIL_LINE_OF_SIGHT_H
diff --git a/src/osgEarthUtil/LinearLineOfSight b/src/osgEarthUtil/LinearLineOfSight
new file mode 100644
index 0000000..8d7f454
--- /dev/null
+++ b/src/osgEarthUtil/LinearLineOfSight
@@ -0,0 +1,271 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTHUTIL_LINEAR_LINE_OF_SIGHT
+#define OSGEARTHUTIL_LINEAR_LINE_OF_SIGHT
+
+#include <osgEarthUtil/LineOfSight>
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarth/Terrain>
+#include <osgEarth/GeoData>
+#include <osgEarth/Draggers>
+
+namespace osgEarth { namespace Util
+{
+    /**
+     * A Node that can be used to display point to point line of sight calculations
+     */
+    class OSGEARTHUTIL_EXPORT LinearLineOfSightNode: public LineOfSightNode, public MapNodeObserver
+    {
+    public:
+        /**
+         *Constructs and new LinearLineOfSightNode
+         *@param mapNode
+         *       The MapNode that this LinearLineOfSightNode will be operating on
+         */
+        LinearLineOfSightNode( osgEarth::MapNode* mapNode );
+
+        virtual ~LinearLineOfSightNode();
+
+        /**
+         *Constructs and new LinearLineOfSightNode
+         *@param mapNode
+         *       The MapNode that this LinearLineOfSightNode will be operating on
+         *@param start
+         *       The start point
+         *@param end
+         *       The end point
+         */
+        LinearLineOfSightNode( 
+            osgEarth::MapNode* mapNode, 
+            const GeoPoint&    start,
+            const GeoPoint&    end );
+
+        /**
+         * Get the start point
+         */
+        //const osg::Vec3d& getStart() const;
+        const GeoPoint& getStart() const;
+
+        /**
+         * Gets the start point in world coordinates
+         */
+        const osg::Vec3d& getStartWorld() const;
+
+        /**
+         * Set the start point.  The point should be in the Map's coordinate system.  So if you're dealing with a geocentric map
+         * the location should be in the form lon, lat, elevation
+         */
+        void setStart(const GeoPoint& start);
+
+        /**
+         * Get the end point
+         */
+        const GeoPoint& getEnd() const;
+
+        /**
+         * Gets the end point in world coordinates
+         */
+        const osg::Vec3d& getEndWorld() const;
+
+        /**
+         * Set the end point.  The point should be in the Map's coordinate system.  So if you're dealing with a geocentric map
+         * the location should be in the form lon, lat, elevation
+         */
+        void setEnd(const GeoPoint& end);
+
+        /**
+         * Gets the hit point.  Only valid is getHasLOS is false.
+         */
+        const GeoPoint& getHit() const;
+
+        /**
+         * Gets the hit point in world coordinates
+         */
+        const osg::Vec3d& getHitWorld() const;
+
+        /**
+         * Gets whether not this calculation has line of sight.
+         */
+        bool getHasLOS() const;
+
+        /**
+         * Set the good color
+         */
+        void setGoodColor( const osg::Vec4f &color );
+
+        /**
+         * Gets the good color
+         */
+        const osg::Vec4f& getGoodColor() const;
+
+        /**
+         * Sets the bad color
+         */
+        void setBadColor( const osg::Vec4f &color );
+
+        /**
+         * Gets the bad color
+         */
+        const osg::Vec4f& getBadColor() const;
+
+        /**
+         * Gets the display mode
+         */
+        LineOfSight::DisplayMode getDisplayMode() const;
+
+        /**
+         * Sets the display mode
+         */
+        void setDisplayMode( LineOfSight::DisplayMode displayMode );
+
+        /**
+         * Called when the underlying terrain has changed.
+         */
+        void terrainChanged( const osgEarth::TileKey& tileKey, osg::Node* terrain );
+
+        void addChangedCallback( LOSChangedCallback* callback );
+        void removeChangedCallback( LOSChangedCallback* callback );
+
+        virtual void traverse(osg::NodeVisitor& nv);
+
+        bool getTerrainOnly() const;
+
+        void setTerrainOnly( bool terrainOnly );
+
+        /**
+         * Utility method to compute LOS with a MapNode
+         * @param mapNode
+         *        The MapNode to intersect
+         * @param start
+         *        The start point in map coordinates
+         * @param end
+         *        The end point in map coordinates
+         * @param hit
+         *        The hit point, in map coordinates.
+         * @returns
+         *        Whether or not there is line of sight from start to end.  hit is only valid if this function return false.
+         */
+        //static bool computeLOS( osgEarth::MapNode* mapNode, const osg::Vec3d& start, const osg::Vec3d& end, AltitudeMode altitudeMode, osg::Vec3d& hit );
+
+
+    public: // MapNodeObserver
+        
+        /**
+         * Gets the MapNode that this LineOfSightNode is operating on.
+         */
+        virtual osgEarth::MapNode* getMapNode() { return _mapNode.get(); }
+
+        virtual void setMapNode( osgEarth::MapNode* mapNode );
+
+
+    private:
+        osg::Node* getNode();
+        void compute(osg::Node* node, bool backgroundThread = false);
+        void draw(bool backgroundThread = false);
+        void subscribeToTerrain();
+        osg::observer_ptr< osgEarth::MapNode > _mapNode;
+        bool _hasLOS;
+
+        LineOfSight::DisplayMode _displayMode;    
+        osg::Vec4 _goodColor;
+        osg::Vec4 _badColor;
+
+        GeoPoint _hit;
+        GeoPoint _start;
+        GeoPoint _end;
+
+        osg::Vec3d _startWorld;
+        osg::Vec3d _endWorld;
+        osg::Vec3d _hitWorld;
+
+        LOSChangedCallbackList _changedCallbacks;
+
+        osg::ref_ptr < osgEarth::TerrainCallback > _terrainChangedCallback;
+
+        osg::ref_ptr< osg::Node > _pendingNode;
+        bool _clearNeeded;
+        bool _terrainOnly;
+    };
+
+
+    /**********************************************************************/
+
+
+    /**
+     * An update callback that allows you to attach a LineOfSightNode to two moving nodes.
+     * The update callback will update the start and end points of the LineOfSight calcuation to
+     * follow the nodes.
+     *
+     * Example:
+     * LineOfSightNode* los = new LineOfSightNode(myMapNode);
+     * los->setUpdateCallback( new LineOfSightTether( startNode, endNode ) );
+     */
+    class OSGEARTHUTIL_EXPORT LineOfSightTether : public osg::NodeCallback
+    {
+    public:
+        LineOfSightTether(osg::Node* startNode, osg::Node* endNode);
+
+        /** dtor */
+        virtual ~LineOfSightTether() { }
+
+        virtual void operator()(osg::Node* node, osg::NodeVisitor* nv);  
+
+        osg::Node* startNode() { return _startNode.get(); }
+        osg::Node* endNode() { return _endNode.get(); }
+
+    private:
+        osg::ref_ptr< osg::Node > _startNode;
+        osg::ref_ptr< osg::Node > _endNode;
+    };
+
+    /**********************************************************************/
+
+    /**
+     * An editor node that allows you to move the start and end points
+     * of the LineOfSightNode
+     */
+    class OSGEARTHUTIL_EXPORT LinearLineOfSightEditor : public osg::Group
+    {
+    public:
+        /**
+         * Create a new LineOfSightEditor
+         * @param los
+         *        The LineOfSightNode to edit
+         */
+        LinearLineOfSightEditor(LinearLineOfSightNode* los);    
+        
+        virtual ~LinearLineOfSightEditor();    
+
+        /**
+         *Updates the position of the draggers to represent the actual location of the LineOfSightNode.
+         *This should be called if the los is changed outside of the editor and would probably benefit
+         *from the LineOfSightNode having a callback that notifies listeners that the start/end points have changed.
+         */
+        void updateDraggers();
+    private:
+        osg::ref_ptr< LinearLineOfSightNode > _los;
+        Dragger* _startDragger;
+        Dragger* _endDragger;
+        osg::ref_ptr< LOSChangedCallback > _callback;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_LINEAR_LINE_OF_SIGHT
diff --git a/src/osgEarthUtil/LinearLineOfSight.cpp b/src/osgEarthUtil/LinearLineOfSight.cpp
new file mode 100644
index 0000000..671ffbd
--- /dev/null
+++ b/src/osgEarthUtil/LinearLineOfSight.cpp
@@ -0,0 +1,640 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/LinearLineOfSight>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/DPLineSegmentIntersector>
+#include <osgSim/LineOfSight>
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    class TerrainChangedCallback : public osgEarth::TerrainCallback
+    {
+    public:
+        TerrainChangedCallback( LinearLineOfSightNode* los ):
+          _los(los)
+        {
+        }
+
+        virtual void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext&)
+        {
+            _los->terrainChanged( tileKey, terrain );
+        }
+
+    private:
+        LinearLineOfSightNode* _los;
+    }; 
+
+
+    osg::Vec3d getNodeCenter(osg::Node* node)
+    {
+        osg::NodePathList nodePaths = node->getParentalNodePaths();
+        if ( nodePaths.empty() )
+            return node->getBound().center();
+
+        osg::NodePath path = nodePaths[0];
+
+        osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
+        osg::Vec3d center = osg::Vec3d(0,0,0) * localToWorld;
+
+        // if the tether node is a MT, we are set. If it's not, we need to get the
+        // local bound and add its translation to the localToWorld. We cannot just use
+        // the bounds directly because they are single precision (unless you built OSG
+        // with double-precision bounding spheres, which you probably did not :)
+        if ( !dynamic_cast<osg::MatrixTransform*>( node ) )
+        {
+            const osg::BoundingSphere& bs = node->getBound();
+            center += bs.center();
+        }   
+        return center;
+    }
+}
+
+//------------------------------------------------------------------------
+
+
+LinearLineOfSightNode::LinearLineOfSightNode(osgEarth::MapNode *mapNode):
+LineOfSightNode(),
+_mapNode(mapNode),
+//_start(0,0,0),
+//_end(0,0,0),
+//_hit(0,0,0),
+_hasLOS( true ),
+_clearNeeded( false ),
+_goodColor(0.0f, 1.0f, 0.0f, 1.0f),
+_badColor(1.0f, 0.0f, 0.0f, 1.0f),
+_displayMode( LineOfSight::MODE_SPLIT ),
+//_startAltitudeMode( ALTMODE_ABSOLUTE ),
+//_endAltitudeMode( ALTMODE_ABSOLUTE ),
+_terrainOnly( false )
+{
+    compute(getNode());
+    subscribeToTerrain();
+    setNumChildrenRequiringUpdateTraversal( 1 );
+}
+
+
+LinearLineOfSightNode::LinearLineOfSightNode(osgEarth::MapNode* mapNode, 
+                                             const GeoPoint&    start,
+                                             const GeoPoint&    end ) :
+LineOfSightNode(),
+_mapNode(mapNode),
+_start(start),
+_end(end),
+//_hit(0,0,0),
+_hasLOS( true ),
+_clearNeeded( false ),
+_goodColor(0.0f, 1.0f, 0.0f, 1.0f),
+_badColor(1.0f, 0.0f, 0.0f, 1.0f),
+_displayMode( LineOfSight::MODE_SPLIT ),
+//_startAltitudeMode( ALTMODE_ABSOLUTE ),
+//_endAltitudeMode( ALTMODE_ABSOLUTE ),
+_terrainOnly( false )
+{
+    compute(getNode());    
+    subscribeToTerrain();
+    setNumChildrenRequiringUpdateTraversal( 1 );
+}
+
+
+void
+LinearLineOfSightNode::subscribeToTerrain()
+{
+    _terrainChangedCallback = new TerrainChangedCallback( this );
+    _mapNode->getTerrain()->addTerrainCallback( _terrainChangedCallback.get() );        
+}
+
+LinearLineOfSightNode::~LinearLineOfSightNode()
+{
+    //Unsubscribe to the terrain callback
+    setMapNode( 0L );
+}
+
+void
+LinearLineOfSightNode::setMapNode( MapNode* mapNode )
+{
+    MapNode* oldMapNode = getMapNode();
+
+    if ( oldMapNode != mapNode )
+    {
+        if ( oldMapNode )
+        {
+            if ( _terrainChangedCallback.valid() )
+            {
+                oldMapNode->getTerrain()->removeTerrainCallback( _terrainChangedCallback.get() );
+            }
+        }
+
+        _mapNode = mapNode;
+
+        if ( _mapNode.valid() && _terrainChangedCallback.valid() )
+        {
+            _mapNode->getTerrain()->addTerrainCallback( _terrainChangedCallback.get() );
+        }
+
+        compute( getNode() );
+    }
+}
+
+void
+LinearLineOfSightNode::terrainChanged( const osgEarth::TileKey& tileKey, osg::Node* terrain )
+{
+    OE_DEBUG << "LineOfSightNode::terrainChanged" << std::endl;
+    //Make a temporary group that contains both the old MapNode as well as the new incoming terrain.
+    //Because this function is called from the database pager thread we need to include both b/c 
+    //the new terrain isn't yet merged with the new terrain.
+    osg::ref_ptr < osg::Group > group = new osg::Group;
+    group->addChild( terrain );
+    group->addChild( getNode() );
+    compute( group, true );
+}
+
+const GeoPoint&
+LinearLineOfSightNode::getStart() const
+{
+    return _start;
+}
+
+void
+LinearLineOfSightNode::setStart(const GeoPoint& start)
+{
+    if (_start != start)
+    {
+        _start = start;
+        compute(getNode());
+    }
+}
+
+const GeoPoint&
+LinearLineOfSightNode::getEnd() const
+{
+    return _end;
+}
+
+void
+LinearLineOfSightNode::setEnd(const GeoPoint& end)
+{
+    if (_end != end)
+    {
+        _end = end;
+        compute(getNode());
+    }
+}
+
+const osg::Vec3d&
+LinearLineOfSightNode::getStartWorld() const
+{
+    return _startWorld;
+}
+
+const osg::Vec3d&
+LinearLineOfSightNode::getEndWorld() const
+{
+    return _endWorld;
+}
+
+const osg::Vec3d&
+LinearLineOfSightNode::getHitWorld() const
+{
+    return _hitWorld;
+}
+
+const GeoPoint&
+LinearLineOfSightNode::getHit() const
+{
+    return _hit;
+}
+
+bool
+LinearLineOfSightNode::getHasLOS() const
+{
+    return _hasLOS;
+}
+
+void
+LinearLineOfSightNode::addChangedCallback( LOSChangedCallback* callback )
+{
+    _changedCallbacks.push_back( callback );
+}
+
+void
+LinearLineOfSightNode::removeChangedCallback( LOSChangedCallback* callback )
+{
+    LOSChangedCallbackList::iterator i = std::find( _changedCallbacks.begin(), _changedCallbacks.end(), callback);
+    if (i != _changedCallbacks.end())
+    {
+        _changedCallbacks.erase( i );
+    }    
+}
+
+
+#if 0
+bool
+LinearLineOfSightNode::computeLOS( osgEarth::MapNode* mapNode, const osg::Vec3d& start, const osg::Vec3d& end, AltitudeMode altitudeMode, osg::Vec3d& hit )
+{
+    const SpatialReference* mapSRS = mapNode->getMapSRS();
+
+    // convert endpoint to world coordinates:
+    osg::Vec3d startWorld, endWorld;
+    GeoPoint(mapSRS, start, altitudeMode).toWorld( startWorld, mapNode->getTerrain() );
+    GeoPoint(mapSRS, end,   altitudeMode).toWorld( endWorld,   mapNode->getTerrain() );
+    
+    osgSim::LineOfSight los;
+    los.setDatabaseCacheReadCallback(0);
+    unsigned int index = los.addLOS(startWorld, endWorld);
+    los.computeIntersections(mapNode);
+    osgSim::LineOfSight::Intersections hits = los.getIntersections(0);    
+    if (hits.size() > 0)
+    {
+        osg::Vec3d hitWorld = *hits.begin();
+        GeoPoint mapHit;
+        mapHit.fromWorld( mapNode->getMapSRS(), hitWorld );
+        //mapNode->getMap()->worldPointToMapPoint(hitWorld, mapHit);
+        hit = mapHit.vec3d();
+        return false;
+    }
+    return true;
+}
+#endif
+
+
+void
+LinearLineOfSightNode::compute(osg::Node* node, bool backgroundThread)
+{
+    if ( !getMapNode() )
+        return;
+
+    if (_start != _end)
+    {
+      const SpatialReference* mapSRS = getMapNode()->getMapSRS();
+      const Terrain* terrain = getMapNode()->getTerrain();
+
+      //Computes the LOS and redraws the scene
+
+      _start.transform(mapSRS).toWorld( _startWorld, terrain );
+      _end.transform(mapSRS).toWorld( _endWorld, terrain );
+
+
+      DPLineSegmentIntersector* lsi = new DPLineSegmentIntersector(_startWorld, _endWorld);
+      osgUtil::IntersectionVisitor iv( lsi );
+
+      node->accept( iv );
+
+      DPLineSegmentIntersector::Intersections& hits = lsi->getIntersections();
+      if ( hits.size() > 0 )
+      {
+          _hasLOS = false;
+          _hitWorld = hits.begin()->getWorldIntersectPoint();
+          _hit.fromWorld( mapSRS, _hitWorld );
+      }
+      else
+      {
+          _hasLOS = true;
+      }
+    }
+
+    draw(backgroundThread);
+
+    for( LOSChangedCallbackList::iterator i = _changedCallbacks.begin(); i != _changedCallbacks.end(); i++ )
+    {
+        i->get()->onChanged();
+    }	
+}
+
+void
+LinearLineOfSightNode::draw(bool backgroundThread)
+{
+    osg::MatrixTransform* mt = 0L;
+
+    if (_start != _end)
+    {
+        osg::Geometry* geometry = new osg::Geometry;
+        geometry->setUseVertexBufferObjects(true);
+
+        osg::Vec3Array* verts = new osg::Vec3Array();
+        verts->reserve(4);
+        geometry->setVertexArray( verts );
+
+        osg::Vec4Array* colors = new osg::Vec4Array();
+        colors->reserve( 4 );
+
+        geometry->setColorArray( colors );
+        geometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
+
+        if (_hasLOS)
+        {
+            verts->push_back( _startWorld - _startWorld );
+            verts->push_back( _endWorld   - _startWorld );
+            colors->push_back( _goodColor );
+            colors->push_back( _goodColor );
+        }
+        else
+        {
+            if (_displayMode == LineOfSight::MODE_SINGLE)
+            {
+                verts->push_back( _startWorld - _startWorld );
+                verts->push_back( _endWorld - _startWorld );
+                colors->push_back( _badColor );
+                colors->push_back( _badColor );
+            }
+            else if (_displayMode == LineOfSight::MODE_SPLIT)
+            {
+                verts->push_back( _startWorld - _startWorld );
+                colors->push_back( _goodColor );
+                verts->push_back( _hitWorld   - _startWorld );
+                colors->push_back( _goodColor );
+
+                verts->push_back( _hitWorld   - _startWorld );
+                colors->push_back( _badColor );
+                verts->push_back( _endWorld   - _startWorld );
+                colors->push_back( _badColor );
+            }
+        }
+
+        geometry->addPrimitiveSet( new osg::DrawArrays( GL_LINES, 0, verts->size()) );        
+
+        osg::Geode* geode = new osg::Geode;
+        geode->addDrawable( geometry );
+
+        mt = new osg::MatrixTransform;
+        mt->setMatrix(osg::Matrixd::translate(_startWorld));
+        mt->addChild(geode);  
+
+        getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+    }
+
+
+    if (!backgroundThread)
+    {
+        //Remove all children from this group
+        removeChildren(0, getNumChildren());
+
+        if (mt)
+          addChild( mt );
+    }
+    else
+    {
+        _clearNeeded = true;
+        _pendingNode = mt;
+    }
+}
+
+void
+LinearLineOfSightNode::setGoodColor( const osg::Vec4f &color )
+{
+    if (_goodColor != color)
+    {
+        _goodColor = color;
+        draw();
+    }
+}
+
+const osg::Vec4f&
+LinearLineOfSightNode::getGoodColor() const
+{
+    return _goodColor;
+}
+
+void
+LinearLineOfSightNode::setBadColor( const osg::Vec4f &color )
+{
+    if (_badColor != color)
+    {
+        _badColor = color;
+        draw();
+    }
+}
+
+const osg::Vec4f&
+LinearLineOfSightNode::getBadColor() const
+{
+    return _badColor;
+}
+
+LineOfSight::DisplayMode
+LinearLineOfSightNode::getDisplayMode() const
+{
+    return _displayMode;
+}
+
+void
+LinearLineOfSightNode::setDisplayMode( LineOfSight::DisplayMode displayMode )
+{
+    if (_displayMode != displayMode)
+    {
+        _displayMode = displayMode;
+        draw();
+    }
+}
+
+bool
+LinearLineOfSightNode::getTerrainOnly() const
+{
+    return _terrainOnly;
+}
+
+void
+LinearLineOfSightNode::setTerrainOnly( bool terrainOnly )
+{
+    if (_terrainOnly != terrainOnly)
+    {
+        _terrainOnly = terrainOnly;
+        compute(getNode());
+    }
+}
+
+osg::Node*
+LinearLineOfSightNode::getNode()
+{
+    if (_terrainOnly && _mapNode.valid() )
+    {
+        return _mapNode->getTerrainEngine();
+    }
+    return _mapNode.get();
+}
+
+void
+LinearLineOfSightNode::traverse(osg::NodeVisitor& nv)
+{
+    if (nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR)
+    {
+        if (_pendingNode.valid() || _clearNeeded)
+        {
+            removeChildren(0, getNumChildren());
+
+            if (_pendingNode.valid())
+              addChild( _pendingNode.get());
+
+            _pendingNode = 0;
+            _clearNeeded = false;
+        }
+    }
+    osg::Group::traverse(nv);
+}
+
+/**********************************************************************/
+LineOfSightTether::LineOfSightTether(osg::Node* startNode, osg::Node* endNode):
+_startNode(startNode),
+_endNode(endNode)
+{
+}
+
+void 
+LineOfSightTether::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    if (nv->getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR)
+    {
+        LinearLineOfSightNode* los = static_cast<LinearLineOfSightNode*>(node);
+
+        if ( los->getMapNode() )
+        {
+            if (_startNode.valid())
+            {
+                osg::Vec3d worldStart = getNodeCenter(_startNode);
+
+                //Convert to mappoint since that is what LOS expects
+                GeoPoint mapStart;
+                mapStart.fromWorld( los->getMapNode()->getMapSRS(), worldStart );
+                los->setStart( mapStart ); //.vec3d() );
+            }
+
+            if (_endNode.valid())
+            {
+                osg::Vec3d worldEnd = getNodeCenter( _endNode );
+
+                //Convert to mappoint since that is what LOS expects
+                GeoPoint mapEnd;
+                mapEnd.fromWorld( los->getMapNode()->getMapSRS(), worldEnd );
+                los->setEnd( mapEnd ); //.vec3d() );
+            }
+        }
+    }
+    traverse(node, nv);
+}
+
+
+/**********************************************************************/
+
+namespace 
+{
+    class LOSDraggerCallback : public Dragger::PositionChangedCallback
+    {
+    public:
+        LOSDraggerCallback(LinearLineOfSightNode* los, bool start):
+          _los(los),
+          _start(start)
+          {      
+          }
+
+          virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+          {   
+              if ( _start )
+                  _los->setStart( position );
+              else
+                  _los->setEnd( position );
+
+              //GeoPoint location(position);
+              //if ((_start ? _los->getStartAltitudeMode() : _los->getEndAltitudeMode()) == ALTMODE_RELATIVE)
+              //{
+              //    double z = _start ? _los->getStart().z() : _los->getEnd().z();
+              //    location.z() = z;              
+              //}
+
+              //if (_start)
+              //{
+              //    _los->setStart( location.vec3d() );
+              //}
+              //else
+              //{
+              //    _los->setEnd( location.vec3d() );
+              //}
+          }
+
+          
+          LinearLineOfSightNode* _los;
+          bool _start;
+    };
+}
+
+/**********************************************************************/
+
+namespace
+{
+    struct LOSUpdateDraggersCallback : public LOSChangedCallback
+    {
+    public:
+        LOSUpdateDraggersCallback( LinearLineOfSightEditor * editor ):
+          _editor( editor )
+        {
+
+        }
+        virtual void onChanged()
+        {
+            _editor->updateDraggers();
+        }
+
+        LinearLineOfSightEditor *_editor;
+    };
+}
+
+LinearLineOfSightEditor::LinearLineOfSightEditor(LinearLineOfSightNode* los):
+_los(los)
+{
+    _startDragger  = new SphereDragger( _los->getMapNode());
+    _startDragger->addPositionChangedCallback(new LOSDraggerCallback(_los, true ) );    
+    static_cast<SphereDragger*>(_startDragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_startDragger);
+
+    _endDragger = new SphereDragger( _los->getMapNode());
+    static_cast<SphereDragger*>(_endDragger)->setColor(osg::Vec4(0,0,1,0));
+    _endDragger->addPositionChangedCallback(new LOSDraggerCallback(_los, false ) );
+
+    addChild(_endDragger);
+
+    _callback = new LOSUpdateDraggersCallback( this );
+    _los->addChangedCallback( _callback.get() );
+
+    updateDraggers();
+}
+
+LinearLineOfSightEditor::~LinearLineOfSightEditor()
+{
+    _los->removeChangedCallback( _callback.get() );
+}
+
+void
+LinearLineOfSightEditor::updateDraggers()
+{
+    if ( _los->getMapNode() )
+    {
+        osg::Vec3d start = _los->getStartWorld();           
+        GeoPoint startMap;
+        startMap.fromWorld(_los->getMapNode()->getMapSRS(), start);
+        _startDragger->setPosition( startMap, false );
+
+        osg::Vec3d end = _los->getEndWorld();           
+        GeoPoint endMap;
+        endMap.fromWorld(_los->getMapNode()->getMapSRS(), end);    
+        _endDragger->setPosition( endMap, false );
+    }
+}
diff --git a/src/osgEarthUtil/MGRSFormatter b/src/osgEarthUtil/MGRSFormatter
new file mode 100644
index 0000000..91c59c9
--- /dev/null
+++ b/src/osgEarthUtil/MGRSFormatter
@@ -0,0 +1,109 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTH_UTIL_MGRS_FORMATTER_H
+#define OSGEARTH_UTIL_MGRS_FORMATTER_H
+
+#include <osgEarthUtil/Formatter>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Units>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+     * Represents an MGRS coordinate in its parts 
+     */
+    struct MGRSCoord
+    {
+        std::string gzd;
+        std::string sqid;
+        unsigned    x;
+        unsigned    y;
+    };
+
+    /**
+     * Formats coordinate data as MGRS.
+     *
+     * NOTE: This class does not yet handle the special UTM zone exceptions for
+     *       southwest Norway (zone 32V) and Svalbard (31X, 33X, 35X, 37X).. 
+     *       mainly because I have not found sufficient documentation on them
+     *
+     * See: http://en.wikipedia.org/wiki/Military_grid_reference_system
+     */
+    class OSGEARTHUTIL_EXPORT MGRSFormatter : public Formatter
+    {
+    public:
+        enum Precision
+        {
+            PRECISION_100000M = 100000,     // i.e., omit the numerical offsets altogether
+            PRECISION_10000M  = 10000,
+            PRECISION_1000M   = 1000,
+            PRECISION_100M    = 100,
+            PRECISION_10M     = 10,
+            PRECISION_1M      = 1
+        };
+
+        enum Options
+        {
+            USE_SPACES        = 1 << 0,     // insert spaces between MGRS elements
+            FORCE_AA_SCHEME   = 1 << 1,     // use the AA row lettering scheme regardless of ellipsoid
+            FORCE_AL_SCHEME   = 1 << 2      // use the AL row lettering scheme regardless of ellipsoid
+        };
+
+    public:
+        /**
+         * Initialized an MGRS formatter. 
+         *
+         * @param precision Precision with which to print the MGRS string (see Precision above)
+         * @param refSRS    Reference geographic SRS for MGRS encoding. Older datums
+         *                  (Clark and Bessel) change the row lettering scheme. Default=WGS84.
+         * @param options   Formatting options (see Options above)
+         */
+        MGRSFormatter(
+            Precision               precision =PRECISION_1M,
+            const SpatialReference* refSRS    =0L,
+            unsigned                options   =0);
+
+        /** dtor */
+        virtual ~MGRSFormatter() { }
+
+        /**
+         * Transforms input coords into MGRS.
+         */
+        bool transform( const GeoPoint& input, MGRSCoord& out_mgrs ) const;
+
+
+    public: // Formatter
+
+        virtual std::string format( const GeoPoint& coords ) const;
+
+
+    private:
+        osg::ref_ptr<const SpatialReference> _refSRS;
+        bool                                 _useAL;
+        Precision                            _precision;
+        unsigned                             _options;
+
+        std::map< std::string, osg::ref_ptr<const SpatialReference> > _srsCache;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_UTIL_MGRS_FORMATTER_H
diff --git a/src/osgEarthUtil/MGRSFormatter.cpp b/src/osgEarthUtil/MGRSFormatter.cpp
new file mode 100644
index 0000000..cd770d2
--- /dev/null
+++ b/src/osgEarthUtil/MGRSFormatter.cpp
@@ -0,0 +1,277 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/MGRSFormatter>
+#include <iomanip>
+#include <sstream>
+#include <cstdio>
+#include <algorithm>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+#undef LC
+#define LC "[MGRSFormatter] "
+
+namespace
+{
+    static const char*    GZD_ALPHABET     = "CDEFGHJKLMNPQRSTUVWXX";    // 2 X's because X is a 12 degree high grid zone
+    static const char*    UTM_COL_ALPHABET = "ABCDEFGHJKLMNPQRSTUVWXYZ";
+    static const char*    UTM_ROW_ALPHABET = "ABCDEFGHJKLMNPQRSTUV";
+    static unsigned UTM_ROW_ALPHABET_SIZE = 20;
+
+    static const char*    UPS_COL_ALPHABET = "ABCFGHJKLPQRSTUXYZ";        // omit I, O, D, E, M, N, V, W
+    static unsigned UPS_COL_ALPHABET_SIZE = 18;
+    static const char*    UPS_ROW_ALPHABET = "ABCDEFGHJKLMNPQRSTUVWXYZ";  // omit I, O
+    static unsigned UPS_ROW_ALPHABET_SIZE = 24;
+
+    static std::string s_lateralZoneSpecs[] = {
+        "+proj=utm +zone=1 +north +units=m",  "+proj=utm +zone=2 +north +units=m",
+        "+proj=utm +zone=3 +north +units=m",  "+proj=utm +zone=4 +north +units=m",
+        "+proj=utm +zone=5 +north +units=m",  "+proj=utm +zone=6 +north +units=m",
+        "+proj=utm +zone=7 +north +units=m",  "+proj=utm +zone=8 +north +units=m",
+        "+proj=utm +zone=9 +north +units=m",  "+proj=utm +zone=10 +north +units=m",
+        "+proj=utm +zone=11 +north +units=m", "+proj=utm +zone=12 +north +units=m",
+        "+proj=utm +zone=13 +north +units=m", "+proj=utm +zone=14 +north +units=m",
+        "+proj=utm +zone=15 +north +units=m", "+proj=utm +zone=16 +north +units=m",
+        "+proj=utm +zone=17 +north +units=m", "+proj=utm +zone=18 +north +units=m",
+        "+proj=utm +zone=19 +north +units=m", "+proj=utm +zone=20 +north +units=m",
+        "+proj=utm +zone=21 +north +units=m", "+proj=utm +zone=22 +north +units=m",
+        "+proj=utm +zone=23 +north +units=m", "+proj=utm +zone=24 +north +units=m",
+        "+proj=utm +zone=25 +north +units=m", "+proj=utm +zone=26 +north +units=m",
+        "+proj=utm +zone=27 +north +units=m", "+proj=utm +zone=28 +north +units=m",
+        "+proj=utm +zone=29 +north +units=m", "+proj=utm +zone=30 +north +units=m",
+        "+proj=utm +zone=31 +north +units=m", "+proj=utm +zone=32 +north +units=m",
+        "+proj=utm +zone=33 +north +units=m", "+proj=utm +zone=34 +north +units=m",
+        "+proj=utm +zone=35 +north +units=m", "+proj=utm +zone=36 +north +units=m",
+        "+proj=utm +zone=37 +north +units=m", "+proj=utm +zone=38 +north +units=m",
+        "+proj=utm +zone=39 +north +units=m", "+proj=utm +zone=40 +north +units=m",
+        "+proj=utm +zone=41 +north +units=m", "+proj=utm +zone=42 +north +units=m",
+        "+proj=utm +zone=43 +north +units=m", "+proj=utm +zone=44 +north +units=m",
+        "+proj=utm +zone=45 +north +units=m", "+proj=utm +zone=46 +north +units=m",
+        "+proj=utm +zone=47 +north +units=m", "+proj=utm +zone=48 +north +units=m",
+        "+proj=utm +zone=49 +north +units=m", "+proj=utm +zone=50 +north +units=m",
+        "+proj=utm +zone=51 +north +units=m", "+proj=utm +zone=52 +north +units=m",
+        "+proj=utm +zone=53 +north +units=m", "+proj=utm +zone=54 +north +units=m",
+        "+proj=utm +zone=55 +north +units=m", "+proj=utm +zone=56 +north +units=m",
+        "+proj=utm +zone=57 +north +units=m", "+proj=utm +zone=58 +north +units=m",
+        "+proj=utm +zone=59 +north +units=m", "+proj=utm +zone=60 +north +units=m"
+    };
+
+    static std::string s_polarZoneSpecs[] = {
+        "+proj=stere +lat_ts=90 +lat_0=90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0",   // north
+        "+proj=stere +lat_ts=-90 +lat_0=-90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0"  // south
+    };
+}
+
+MGRSFormatter::MGRSFormatter(Precision               precision,
+                             const SpatialReference* referenceSRS,
+                             unsigned                options ) :
+_precision( precision ),
+_options  ( options )
+{
+    if ( referenceSRS )
+    {
+        _refSRS = referenceSRS->getGeographicSRS();
+    }
+    else
+    {
+        _refSRS = SpatialReference::create( "wgs84" );
+    }
+
+    if ( options & FORCE_AA_SCHEME )
+    {
+        _useAL = false;
+    }
+    else if ( options & FORCE_AL_SCHEME )
+    {
+        _useAL = true;
+    }
+    else
+    {
+        // use the "AL" lettering scheme for these older datum ellipsoids.
+        std::string eName = _refSRS->getEllipsoid()->getName();
+        _useAL = 
+            eName.find("bessel") != std::string::npos ||
+            eName.find("clark")  != std::string::npos ||
+            eName.find("clrk")   != std::string::npos;
+    }
+}
+
+bool
+MGRSFormatter::transform( const GeoPoint& input, MGRSCoord& out ) const
+{
+    if ( !input.isValid() )
+        return false;
+
+    // convert to lat/long if necessary:
+    GeoPoint inputGeo = input;
+    if ( !inputGeo.makeGeographic() )
+        return false;
+
+    unsigned    zone;
+    char        gzd;
+    unsigned    x=0, y=0;
+    char        sqid[3];
+    std::string space;
+
+    if ( _options & USE_SPACES )
+        space = " ";
+
+    sqid[0] = '?';
+    sqid[1] = '?';
+    sqid[2] = 0;
+
+    double latDeg = inputGeo.y();
+    double lonDeg = inputGeo.x();
+
+    if ( latDeg >= 84.0 || latDeg <= -80.0 ) // polar projection
+    {
+        bool isNorth = latDeg > 0.0;
+        zone = 0;
+        gzd = isNorth ? (lonDeg < 0.0 ? 'Y' : 'Z') : (lonDeg < 0.0? 'A' : 'B');
+
+        osg::ref_ptr<const SpatialReference> ups =
+            const_cast<MGRSFormatter*>(this)->_srsCache[ s_polarZoneSpecs[isNorth?0:1] ];
+        if (!ups.valid())
+            ups = SpatialReference::create( s_polarZoneSpecs[isNorth?0:1] );
+
+        if ( !ups.valid() )
+        {
+            OE_WARN << LC << "Failed to create UPS SRS" << std::endl;
+            return false;
+        }
+
+        osg::Vec3d upsCoord;
+        if ( _refSRS->transform(osg::Vec3d(lonDeg,latDeg,0), ups.get(), upsCoord) == false )
+        {
+            OE_WARN << LC << "Failed to transform lat/long to UPS" << std::endl;
+            return false;
+        }
+
+        int sqXOffset = upsCoord.x() >= 0.0 ? (int)floor(upsCoord.x()/100000.0) : -(int)floor(1.0-(upsCoord.x()/100000.0));
+        int sqYOffset = upsCoord.y() >= 0.0 ? (int)floor(upsCoord.y()/100000.0) : -(int)floor(1.0-(upsCoord.y()/100000.0));
+
+        int alphaOffset = isNorth ? 7 : 12;
+
+        sqid[0] = UPS_COL_ALPHABET[ (UPS_COL_ALPHABET_SIZE+sqXOffset) % UPS_COL_ALPHABET_SIZE ];
+        sqid[1] = UPS_ROW_ALPHABET[alphaOffset + sqYOffset];
+
+        x = (unsigned)(upsCoord.x() - (100000.0*(double)sqXOffset));
+        y = (unsigned)(upsCoord.y() - (100000.0*(double)sqYOffset));
+    }
+
+    else // UTM
+    {
+        // figure out the grid zone designator
+        unsigned gzdIndex = ((unsigned)(latDeg+80.0))/8;
+        gzd = GZD_ALPHABET[gzdIndex];
+
+        // figure out the UTM zone:
+        zone = (unsigned)floor((lonDeg+180.0)/6.0);   // [0..59]
+        bool north = latDeg >= 0.0;
+
+        // convert the input coordinates to UTM:
+        // yes, always use +north so we get Y relative to equator
+
+        // using an SRS cache speed things up a lot..
+        osg::ref_ptr<const SpatialReference>& utm = 
+            const_cast<MGRSFormatter*>(this)->_srsCache[s_lateralZoneSpecs[zone]];
+        if ( !utm.valid() )
+            utm = SpatialReference::create( s_lateralZoneSpecs[zone] );
+
+        osg::Vec3d utmCoord;
+        if ( _refSRS->transform( osg::Vec3d(lonDeg,latDeg,0), utm.get(), utmCoord) == false )
+        {
+            OE_WARN << LC << "Error transforming lat/long into UTM" << std::endl;
+            return false;
+        }
+
+        // the alphabet set:
+        unsigned set = zone % 6; // [0..5]
+
+        // find the horizontal SQID offset (100KM increments) from the central meridian:
+        unsigned xSetOffset = 8 * (set % 3);
+        double xMeridianOffset = utmCoord.x() - 500000.0;
+        int sqMeridianOffset = xMeridianOffset >= 0.0 ? (int)floor(xMeridianOffset/100000.0) : -(int)floor(1.0-(xMeridianOffset/100000.0));
+        unsigned indexOffset = (4 + sqMeridianOffset);
+        sqid[0] = UTM_COL_ALPHABET[xSetOffset + indexOffset];
+        double xWest = 500000.0 + (100000.0*(double)sqMeridianOffset);
+        x = (unsigned)(utmCoord.x() - xWest);
+
+        // find the vertical SQID offset (100KM increments) from the equator:
+        unsigned ySetOffset = 5 * (zone % 2); //(set % 2);
+        int sqEquatorOffset = (int)floor(utmCoord.y()/100000.0);
+        int absOffset = ySetOffset + sqEquatorOffset + (10 * UTM_ROW_ALPHABET_SIZE);
+        if ( _useAL )
+            absOffset += 10;
+        sqid[1] = UTM_ROW_ALPHABET[absOffset % UTM_ROW_ALPHABET_SIZE];
+        y = (unsigned)(utmCoord.y() - (100000.0*(double)sqEquatorOffset));
+    }
+
+    if ( (unsigned)_precision > PRECISION_1M )
+    {
+        x /= (unsigned)_precision;
+        y /= (unsigned)_precision;
+    }
+
+    out.gzd  = Stringify() << (zone+1) << gzd;
+    out.sqid = sqid;
+    out.x    = x;
+    out.y    = y;
+
+    return true;
+}
+
+std::string
+MGRSFormatter::format( const GeoPoint& input ) const
+{
+    std::string space;
+
+    if ( _options & USE_SPACES )
+        space = " ";
+
+    std::string result;
+
+    MGRSCoord mgrs;
+    if ( transform( input, mgrs ) )
+    {
+        std::stringstream buf;
+        buf << mgrs.gzd << space << mgrs.sqid;
+
+        if ( (unsigned)_precision < PRECISION_100000M )
+        {
+            int sigdigs =
+                _precision == PRECISION_10000M ? 1 :
+                _precision == PRECISION_1000M  ? 2 :
+                _precision == PRECISION_100M   ? 3 :
+                _precision == PRECISION_10M    ? 4 :
+                5;
+
+            buf << space
+                << std::setfill('0')
+                << std::setw(sigdigs) << mgrs.x
+                << space
+                << std::setw(sigdigs) << mgrs.y;
+        }
+
+        result = buf.str();
+    }
+
+    return result;
+}
diff --git a/src/osgEarthUtil/MGRSGraticule b/src/osgEarthUtil/MGRSGraticule
new file mode 100644
index 0000000..3d69b8d
--- /dev/null
+++ b/src/osgEarthUtil/MGRSGraticule
@@ -0,0 +1,109 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_MGRS_GRATICLE
+#define OSGEARTHUTIL_MGRS_GRATICLE
+
+#include <osgEarthUtil/UTMGraticule>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Configuration options for the geodetic graticule.
+     */
+    class OSGEARTHUTIL_EXPORT MGRSGraticuleOptions : public UTMGraticuleOptions
+    {
+    public:
+        MGRSGraticuleOptions( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~MGRSGraticuleOptions() { }
+
+        /** Symbology for SQID lines and text */
+        optional<Style>& secondaryStyle() { return _secondaryStyle; }
+        const optional<Style>& secondaryStyle() const { return _secondaryStyle; }
+
+    public:
+        Config getConfig() const;
+
+    protected:
+
+        void mergeConfig( const Config& conf );
+
+        optional<Style> _secondaryStyle;
+    };
+
+
+    /**
+     * Implements a MGRS (Military Grid Reference System) map graticule. 
+     * 
+     * NOTE: So far, this only works for geocentric maps.
+     * TODO: Add projected support; add text label support
+     */
+    class OSGEARTHUTIL_EXPORT MGRSGraticule : public UTMGraticule
+    {
+    public:
+
+        /**
+         * Constructs a new graticule for use with the specified map. The graticule
+         * is created with several default levels. If you call addLevel(), the 
+         * default levels are deleted.
+         *
+         * @param map
+         *      Map with which you will use this graticule
+         * @param options
+         *      Optional "options" that configure the graticule. Defaults will be used
+         *      if you don't specify this.
+         */
+        MGRSGraticule( MapNode* mapNode );
+        MGRSGraticule( MapNode* mapNode, const MGRSGraticuleOptions& options);
+
+        /** dtor */
+        virtual ~MGRSGraticule() { }
+
+        /** 
+         * Applies a new set of options. The graticule will be rebuilt if necessary.
+         */
+        void setOptions( const MGRSGraticuleOptions& options );
+
+        /**
+         * Gets the options with which the graticule was built.
+         */
+        const MGRSGraticuleOptions& getOptions() const { return _options.value(); }
+
+    public:
+        osg::Node* buildSQIDTiles( const std::string& gzd );
+
+    protected:
+        optional<MGRSGraticuleOptions> _options;
+        osg::ref_ptr<osg::Uniform>     _minDepthOffset;
+
+    protected:
+        virtual osg::Group* buildGZDChildren( osg::Group* node, const std::string& gzd );
+        
+        GeoExtent getExtent( const std::string& gzd, const std::string& sqid );
+
+        friend class MGRSGraticuleFactory;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_UTM_GRATICLE
diff --git a/src/osgEarthUtil/MGRSGraticule.cpp b/src/osgEarthUtil/MGRSGraticule.cpp
new file mode 100644
index 0000000..f3643ce
--- /dev/null
+++ b/src/osgEarthUtil/MGRSGraticule.cpp
@@ -0,0 +1,594 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/MGRSGraticule>
+#include <osgEarthUtil/MGRSFormatter>
+
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthFeatures/TextSymbolizer>
+
+#include <osgEarth/ECEF>
+#include <osgEarth/DepthOffset>
+
+#include <osg/BlendFunc>
+#include <osg/PagedLOD>
+#include <osg/Depth>
+#include <osg/LogicOp>
+#include <osg/MatrixTransform>
+#include <osgDB/FileNameUtils>
+#include <osgDB/ReaderWriter>
+
+
+#define LC "[MGRSGraticule] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+
+#define MGRS_GRATICULE_EXTENSION "osgearthutil_mgrs_graticule"
+
+//---------------------------------------------------------------------------
+
+MGRSGraticuleOptions::MGRSGraticuleOptions( const Config& conf ) :
+UTMGraticuleOptions( conf )
+{
+    mergeConfig( _conf );
+}
+
+void
+MGRSGraticuleOptions::mergeConfig( const Config& conf )
+{
+    //todo
+}
+
+Config
+MGRSGraticuleOptions::getConfig() const
+{
+    Config conf = UTMGraticuleOptions::newConfig();
+    conf.key() = "mgrs_graticule";
+    //todo
+    return conf;
+}
+
+//---------------------------------------------------------------------------
+
+
+MGRSGraticule::MGRSGraticule( MapNode* mapNode ) :
+UTMGraticule( 0L )
+{
+    _mapNode = mapNode;
+    init();
+
+    if ( !_options->secondaryStyle().isSet() )
+    {
+        LineSymbol* line = _options->secondaryStyle()->getOrCreate<LineSymbol>();
+        line->stroke()->color() = Color(Color::White, 0.5f);
+        line->stroke()->stipple() = 0x1111;
+
+        TextSymbol* text = _options->secondaryStyle()->getOrCreate<TextSymbol>();
+        text->fill()->color() = Color(Color::White, 0.3f);
+        text->halo()->color() = Color(Color::Black, 0.1f);
+        text->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+    }
+
+    _minDepthOffset = DepthOffsetUtils::createMinOffsetUniform();
+    _minDepthOffset->set( 11000.0f );
+}
+
+MGRSGraticule::MGRSGraticule( MapNode* mapNode, const MGRSGraticuleOptions& options ) :
+UTMGraticule( 0L, options )
+{
+    _mapNode = mapNode;
+    init();
+}
+
+osg::Group*
+MGRSGraticule::buildGZDChildren( osg::Group* parent, const std::string& gzd )
+{
+    osg::BoundingSphere bs = parent->getBound();
+
+    std::string uri = Stringify() << gzd << "." << getID() << "." << MGRS_GRATICULE_EXTENSION;
+
+    osg::PagedLOD* plod = new osg::PagedLOD();
+    plod->setCenter( bs.center() );
+    plod->addChild( parent, 0.0, FLT_MAX );
+    plod->setFileName( 1, uri );
+    plod->setRange( 1, 0, bs.radius() * 10.0 );
+
+    return plod;
+}
+
+osg::Node*
+MGRSGraticule::buildSQIDTiles( const std::string& gzd )
+{
+    const GeoExtent& extent = _gzd[gzd];
+
+    // parse the GZD into its components:
+    unsigned zone;
+    char letter;
+    sscanf( gzd.c_str(), "%u%c", &zone, &letter );
+    
+    TextSymbol* textSym = _options->secondaryStyle()->get<TextSymbol>();
+    if ( !textSym )
+        textSym = _options->primaryStyle()->getOrCreate<TextSymbol>();
+
+    AltitudeSymbol* alt = _options->secondaryStyle()->get<AltitudeSymbol>();
+    double h = 0.0;
+
+    TextSymbolizer ts( textSym );
+    MGRSFormatter mgrs(MGRSFormatter::PRECISION_100000M);
+    osg::Geode* textGeode = new osg::Geode();
+    textGeode->getOrCreateStateSet()->setRenderBinDetails( 9999, "DepthSortedBin" );    
+    textGeode->getOrCreateStateSet()->setAttributeAndModes( _depthAttribute, 1 );
+
+    osg::Vec3d centerMap, centerECEF;
+    extent.getCentroid(centerMap.x(), centerMap.y());
+    extent.getSRS()->transformToECEF(centerMap, centerECEF);
+
+    osg::Matrix local2world = ECEF::createLocalToWorld(centerECEF);
+    osg::Matrix world2local;
+    world2local.invert(local2world);
+
+    FeatureList features;
+
+    std::vector<GeoExtent> sqidExtents;
+
+    // UTM:
+    if ( letter > 'B' && letter < 'Y' )
+    {
+        // grab the SRS for the current UTM zone:
+        // TODO: AL/AA designation??
+        const SpatialReference* utm = SpatialReference::create(
+            Stringify() << "+proj=utm +zone=" << zone << " +north +units=m" );
+
+        // transform the four corners of the tile to UTM.
+        osg::Vec3d gzdUtmSW, gzdUtmSE, gzdUtmNW, gzdUtmNE;
+        extent.getSRS()->transform( osg::Vec3d(extent.xMin(),extent.yMin(),h), utm, gzdUtmSW );
+        extent.getSRS()->transform( osg::Vec3d(extent.xMin(),extent.yMax(),h), utm, gzdUtmNW );
+        extent.getSRS()->transform( osg::Vec3d(extent.xMax(),extent.yMin(),h), utm, gzdUtmSE );
+        extent.getSRS()->transform( osg::Vec3d(extent.xMax(),extent.yMax(),h), utm, gzdUtmNE );
+
+        // find the southern boundary of the first full SQID tile in the GZD tile.
+        double southSQIDBoundary = gzdUtmSW.y(); //extentUTM.yMin();
+        double remainder = fmod( southSQIDBoundary, 100000.0 );
+        if ( remainder > 0.0 )
+            southSQIDBoundary += (100000.0 - remainder);
+
+        // find the min/max X for this cell in UTM:
+        double xmin = extent.yMin() >= 0.0 ? gzdUtmSW.x() : gzdUtmNW.x();
+        double xmax = extent.yMin() >= 0.0 ? gzdUtmSE.x() : gzdUtmNE.x();
+
+        // Record the UTM extent of each SQID cell in this tile.
+        // Go from the south boundary northwards:
+        for( double y = southSQIDBoundary; y < gzdUtmNW.y(); y += 100000.0 )
+        {
+            // start at the central meridian (500K) and go west:
+            for( double x = 500000.0; x > xmin; x -= 100000.0 )
+            {
+                sqidExtents.push_back( GeoExtent(utm, x-100000.0, y, x, y+100000.0) );
+            }
+
+            // then start at the central meridian and go east:
+            for( double x = 500000.0; x < xmax; x += 100000.0 )
+            {
+                sqidExtents.push_back( GeoExtent(utm, x, y, x+100000.0, y+100000.0) );
+            }
+        }
+
+        for( std::vector<GeoExtent>::iterator i = sqidExtents.begin(); i != sqidExtents.end(); ++i )
+        {
+            GeoExtent utmEx = *i;
+
+            // now, clamp each of the points in the UTM SQID extent to the map-space
+            // boundaries of the GZD tile. (We only need to clamp in the X dimension,
+            // Y geometry is allowed to overflow.) Also, skip NE, we don't need it.
+            double r, xlimit;
+
+            osg::Vec3d sw(utmEx.xMin(), utmEx.yMin(), 0);
+            r = (sw.y()-gzdUtmSW.y())/(gzdUtmNW.y()-gzdUtmSW.y());
+            xlimit = gzdUtmSW.x() + r * (gzdUtmNW.x() - gzdUtmSW.x());
+            if ( sw.x() < xlimit ) sw.x() = xlimit;
+
+            osg::Vec3d nw(utmEx.xMin(), utmEx.yMax(), 0);
+            r = (nw.y()-gzdUtmSW.y())/(gzdUtmNW.y()-gzdUtmSW.y());
+            xlimit = gzdUtmSW.x() + r * (gzdUtmNW.x() - gzdUtmSW.x());
+            if ( nw.x() < xlimit ) nw.x() = xlimit;
+            
+            osg::Vec3d se(utmEx.xMax(), utmEx.yMin(), 0);
+            r = (se.y()-gzdUtmSE.y())/(gzdUtmNE.y()-gzdUtmSE.y());
+            xlimit = gzdUtmSE.x() + r * (gzdUtmNE.x() - gzdUtmSE.x());
+            if ( se.x() > xlimit ) se.x() = xlimit;
+
+            // at the northernmost GZD (lateral band X), clamp the northernmost SQIDs to the upper latitude.
+            if ( letter == 'X' && nw.y() > gzdUtmNW.y() ) 
+                nw.y() = gzdUtmNW.y();
+
+            // need this in order to calculate the font size:
+            double utmWidth = se.x() - sw.x();
+
+            // now transform the corner points back into the map SRS:
+            utm->transform( sw, extent.getSRS(), sw );
+            utm->transform( nw, extent.getSRS(), nw );
+            utm->transform( se, extent.getSRS(), se );
+
+            // and draw valid sqid geometry.
+            if ( sw.x() < se.x() )
+            {
+                Feature* lat = new Feature(new LineString(2), extent.getSRS());
+                lat->geoInterp() = GEOINTERP_RHUMB_LINE;
+                lat->getGeometry()->push_back( sw );
+                lat->getGeometry()->push_back( se );
+                features.push_back(lat);
+
+                Feature* lon = new Feature(new LineString(2), extent.getSRS());
+                lon->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                lon->getGeometry()->push_back( sw );
+                lon->getGeometry()->push_back( nw );
+                features.push_back(lon);
+
+                // and the text label:
+                osg::Vec3d sqidTextMap = (nw + se) * 0.5;
+                sqidTextMap.z() += 1000.0;
+                osg::Vec3d sqidTextECEF;
+                extent.getSRS()->transformToECEF(sqidTextMap, sqidTextECEF);
+                osg::Vec3d sqidLocal;
+                sqidLocal = sqidTextECEF * world2local;
+
+                MGRSCoord mgrsCoord;
+                if ( mgrs.transform( GeoPoint(extent.getSRS(),sqidTextMap,ALTMODE_ABSOLUTE), mgrsCoord) )
+                {
+                    textSym->size() = utmWidth/3.0;        
+                    osgText::Text* d = ts.create( mgrsCoord.sqid );
+
+                    osg::Matrixd textLocal2World = ECEF::createLocalToWorld( sqidTextECEF );
+
+                    d->setPosition( sqidLocal );
+                    textGeode->addDrawable( d );
+                }
+            }
+        }
+    }
+
+    else if ( letter == 'A' || letter == 'B' )
+    {
+        // SRS for south polar region UPS projection. This projection has (0,0) at the
+        // south pole, with +X extending towards 90 degrees E longitude and +Y towards
+        // 0 degrees longitude.
+        const SpatialReference* ups = SpatialReference::create(
+            "+proj=stere +lat_ts=-90 +lat_0=-90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0");
+
+        osg::Vec3d gtemp;
+        double r = GeoMath::distance(-osg::PI_2, 0.0, -1.3962634, 0.0); // -90 => -80 latitude
+        double r2 = r*r;
+
+        if ( letter == 'A' )
+        {
+            for( double x = 0.0; x < 1200000.0; x += 100000.0 )
+            {
+                double yminmax = sqrt( r2 - x*x );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(-x, -yminmax, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(-x,  yminmax, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double y = -1100000.0; y < 1200000.0; y += 100000.0 )
+            {
+                double xmax = sqrt( r2 - y*y );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(-xmax, y, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(    0, y, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double x = -1200000.0; x < 0.0; x += 100000.0 )
+            {
+                for( double y = -1200000.0; y < 1200000.0; y += 100000.0 )
+                {
+                    osg::Vec3d sqidTextMap;
+                    ups->transform( osg::Vec3d(x+50000.0, y+50000.0, 0), extent.getSRS(), sqidTextMap);
+                    if ( sqidTextMap.y() < -80.0 )
+                    {
+                        sqidTextMap.z() += 1000.0;
+                        osg::Vec3d sqidTextECEF;
+                        extent.getSRS()->transformToECEF(sqidTextMap, sqidTextECEF);
+                        osg::Vec3d sqidLocal = sqidTextECEF * world2local;
+
+                        MGRSCoord mgrsCoord;
+                        if ( mgrs.transform( GeoPoint(extent.getSRS(),sqidTextMap,ALTMODE_ABSOLUTE), mgrsCoord) )
+                        {
+                            textSym->size() = 33000.0;
+                            osgText::Text* d = ts.create( mgrsCoord.sqid );
+                            osg::Matrixd textLocal2World = ECEF::createLocalToWorld( sqidTextECEF );
+                            d->setPosition( sqidLocal );
+                            textGeode->addDrawable( d );
+                        }
+                    }
+                }
+            }
+        }
+
+        else if ( letter == 'B' )
+        {
+            for( double x = 100000.0; x < 1200000.0; x += 100000.0 )
+            {
+                double yminmax = sqrt( r2 - x*x );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(x, -yminmax, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(x,  yminmax, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double y = -1100000.0; y < 1200000.0; y += 100000.0 )
+            {
+                double xmax = sqrt( r2 - y*y );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(    0, y, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d( xmax, y, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double x = 0.0; x < 1200000.0; x += 100000.0 )
+            {
+                for( double y = -1200000.0; y < 1200000.0; y += 100000.0 )
+                {
+                    osg::Vec3d sqidTextMap;
+                    ups->transform( osg::Vec3d(x+50000.0, y+50000.0, 0), extent.getSRS(), sqidTextMap);
+                    if ( sqidTextMap.y() < -80.0 )
+                    {
+                        sqidTextMap.z() += 1000.0;
+                        osg::Vec3d sqidTextECEF;
+                        extent.getSRS()->transformToECEF(sqidTextMap, sqidTextECEF);
+                        osg::Vec3d sqidLocal = sqidTextECEF * world2local;
+
+                        MGRSCoord mgrsCoord;
+                        if ( mgrs.transform( GeoPoint(extent.getSRS(),sqidTextMap,ALTMODE_ABSOLUTE), mgrsCoord) )
+                        {
+                            textSym->size() = 33000.0;
+                            osgText::Text* d = ts.create( mgrsCoord.sqid );
+                            osg::Matrixd textLocal2World = ECEF::createLocalToWorld( sqidTextECEF );
+                            d->setPosition( sqidLocal );
+                            textGeode->addDrawable( d );
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    else if ( letter == 'Y' || letter == 'Z' )
+    {
+        // SRS for north polar region UPS projection. This projection has (0,0) at the
+        // south pole, with +X extending towards 90 degrees E longitude and +Y towards
+        // 180 degrees longitude.
+        const SpatialReference* ups = SpatialReference::create(
+            "+proj=stere +lat_ts=90 +lat_0=90 +lon_0=0 +k_0=1 +x_0=0 +y_0=0");
+
+        osg::Vec3d gtemp;
+        double r = GeoMath::distance(osg::PI_2, 0.0, 1.46607657, 0.0); // 90 -> 84 latitude
+        double r2 = r*r;
+
+        if ( letter == 'Y' )
+        {
+            for( double x = 0.0; x < 700000.0; x += 100000.0 )
+            {
+                double yminmax = sqrt( r2 - x*x );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(-x, -yminmax, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(-x,  yminmax, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double y = -600000.0; y < 700000.0; y += 100000.0 )
+            {
+                double xmax = sqrt( r2 - y*y );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(-xmax, y, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(    0, y, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double x = -700000.0; x < 0.0; x += 100000.0 )
+            {
+                for( double y = -700000.0; y < 700000.0; y += 100000.0 )
+                {
+                    osg::Vec3d sqidTextMap;
+                    ups->transform( osg::Vec3d(x+50000.0, y+50000.0, 0), extent.getSRS(), sqidTextMap);
+                    if ( sqidTextMap.y() > 84.0 )
+                    {
+                        sqidTextMap.z() += 1000.0;
+                        osg::Vec3d sqidTextECEF;
+                        extent.getSRS()->transformToECEF(sqidTextMap, sqidTextECEF);
+                        osg::Vec3d sqidLocal = sqidTextECEF * world2local;
+
+                        MGRSCoord mgrsCoord;
+                        if ( mgrs.transform( GeoPoint(extent.getSRS(),sqidTextMap,ALTMODE_ABSOLUTE), mgrsCoord) )
+                        {
+                            textSym->size() = 33000.0;
+                            osgText::Text* d = ts.create( mgrsCoord.sqid );
+                            osg::Matrixd textLocal2World = ECEF::createLocalToWorld( sqidTextECEF );
+                            d->setPosition( sqidLocal );
+                            textGeode->addDrawable( d );
+                        }
+                    }
+                }
+            }
+        }
+
+        else if ( letter == 'Z' )
+        {
+            for( double x = 100000.0; x < 700000.0; x += 100000.0 )
+            {
+                double yminmax = sqrt( r2 - x*x );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(x, -yminmax, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d(x,  yminmax, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double y = -600000.0; y < 700000.0; y += 100000.0 )
+            {
+                double xmax = sqrt( r2 - y*y );
+                Feature* f = new Feature( new LineString(2), extent.getSRS() );
+                f->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+                osg::Vec3d p0, p1;
+                ups->transform( osg::Vec3d(    0, y, 0), extent.getSRS(), p0 );
+                ups->transform( osg::Vec3d( xmax, y, 0), extent.getSRS(), p1 );
+                f->getGeometry()->push_back( p0 );
+                f->getGeometry()->push_back( p1 );
+                features.push_back( f );
+            }
+
+            for( double x = 0.0; x < 700000.0; x += 100000.0 )
+            {
+                for( double y = -700000.0; y < 700000.0; y += 100000.0 )
+                {
+                    osg::Vec3d sqidTextMap;
+                    ups->transform( osg::Vec3d(x+50000.0, y+50000.0, 0), extent.getSRS(), sqidTextMap);
+                    if ( sqidTextMap.y() > 84.0 )
+                    {
+                        sqidTextMap.z() += 1000.0;
+                        osg::Vec3d sqidTextECEF;
+                        extent.getSRS()->transformToECEF(sqidTextMap, sqidTextECEF);
+                        osg::Vec3d sqidLocal = sqidTextECEF * world2local;
+
+                        MGRSCoord mgrsCoord;
+                        if ( mgrs.transform( GeoPoint(extent.getSRS(),sqidTextMap,ALTMODE_ABSOLUTE), mgrsCoord) )
+                        {
+                            textSym->size() = 33000.0;
+                            osgText::Text* d = ts.create( mgrsCoord.sqid );
+                            osg::Matrixd textLocal2World = ECEF::createLocalToWorld( sqidTextECEF );
+                            d->setPosition( sqidLocal );
+                            textGeode->addDrawable( d );
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    osg::Group* group = new osg::Group();
+
+    Style lineStyle;
+    lineStyle.add( _options->secondaryStyle()->get<LineSymbol>() );
+    lineStyle.add( _options->secondaryStyle()->get<AltitudeSymbol>() );
+
+    GeometryCompiler compiler;
+    osg::ref_ptr<Session> session = new Session( getMapNode()->getMap() );
+    FilterContext context( session.get(), _featureProfile.get(), extent );
+
+    // make sure we get sufficient tessellation:
+    compiler.options().maxGranularity() = 0.25;
+
+    osg::Node* geomNode = compiler.compile(features, lineStyle, context);
+    if ( geomNode ) 
+        group->addChild( geomNode );
+
+    osg::MatrixTransform* mt = new osg::MatrixTransform(local2world);
+    mt->addChild(textGeode);
+    group->addChild( mt );
+
+    // prep for depth offset:
+    DepthOffsetUtils::prepareGraph( group );
+    group->getOrCreateStateSet()->addUniform( _minDepthOffset.get() );
+
+    return group;
+}
+
+
+//---------------------------------------------------------------------------
+
+namespace osgEarth { namespace Util
+{
+    // OSG Plugin for loading subsequent graticule levels
+    class MGRSGraticuleFactory : public osgDB::ReaderWriter
+    {
+    public:
+        virtual const char* className()
+        {
+            supportsExtension( MGRS_GRATICULE_EXTENSION, "osgEarth MGRS graticule" );
+            return "osgEarth MGRS graticule LOD loader";
+        }
+
+        virtual bool acceptsExtension(const std::string& extension) const
+        {
+            return osgDB::equalCaseInsensitive(extension, MGRS_GRATICULE_EXTENSION);
+        }
+
+        virtual ReadResult readNode(const std::string& uri, const Options* options) const
+        {        
+            std::string ext = osgDB::getFileExtension( uri );
+            if ( !acceptsExtension( ext ) )
+                return ReadResult::FILE_NOT_HANDLED;
+
+            // the graticule definition is formatted: LEVEL_ID.MARKER.EXTENSION
+            std::string def = osgDB::getNameLessExtension( uri );
+            
+            std::string idStr = osgDB::getFileExtension(def);
+            unsigned id;
+            sscanf(idStr.c_str(), "%u", &id);
+
+            std::string gzd = osgDB::getNameLessExtension(def);
+
+            // look up the graticule referenced in the location name:
+            MGRSGraticule* graticule = 0L;
+            {
+                Threading::ScopedMutexLock lock( UTMGraticule::s_graticuleMutex );
+                UTMGraticule::UTMGraticuleRegistry::iterator i = UTMGraticule::s_graticuleRegistry.find(id);
+                if ( i != UTMGraticule::s_graticuleRegistry.end() )
+                    graticule = dynamic_cast<MGRSGraticule*>( i->second.get() );
+            }
+
+            osg::Node* result = graticule->buildSQIDTiles( gzd );
+            return result ? ReadResult(result) : ReadResult::ERROR_IN_READING_FILE;
+        }
+    };
+    REGISTER_OSGPLUGIN(MGRS_GRATICULE_EXTENSION, MGRSGraticuleFactory)
+
+} } // namespace osgEarth::Util
+
+
diff --git a/src/osgEarthUtil/MeasureTool b/src/osgEarthUtil/MeasureTool
index cf60900..5dd2be6 100644
--- a/src/osgEarthUtil/MeasureTool
+++ b/src/osgEarthUtil/MeasureTool
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -22,7 +22,8 @@
 
 #include <osgEarthUtil/Common>
 #include <osgEarth/MapNode>
-#include <osgEarthFeatures/FeatureNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarthAnnotation/FeatureNode>
 #include <osgEarthSymbology/Style>
 #include <osg/Group>
 #include <osgGA/GUIEventHandler>
@@ -32,7 +33,7 @@ namespace osgEarth { namespace Util
 {
     using namespace osgEarth::Symbology;
 
-    struct OSGEARTHUTIL_EXPORT MeasureToolHandler : public osgGA::GUIEventHandler 
+    struct OSGEARTHUTIL_EXPORT MeasureToolHandler : public osgGA::GUIEventHandler, public MapNodeObserver
     {
     public:
 
@@ -40,13 +41,14 @@ namespace osgEarth { namespace Util
         {
         public:
             virtual void onDistanceChanged(MeasureToolHandler* sender, double distance) {}
+            virtual ~MeasureToolEventHandler() { }
         };
 
         typedef std::list< osg::ref_ptr< MeasureToolEventHandler > > MeasureToolEventHandlerList;
 
 
         MeasureToolHandler( osg::Group* group, MapNode* mapNode );        
-        ~MeasureToolHandler();
+        virtual ~MeasureToolHandler();
 
         bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );        
 
@@ -72,6 +74,11 @@ namespace osgEarth { namespace Util
         void setIntersectionMask( osg::Node::NodeMask intersectionMask ) { _intersectionMask = intersectionMask; }
         osg::Node::NodeMask getIntersectionMask() const { return _intersectionMask;}
 
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+        virtual MapNode* getMapNode() { return _mapNode.get(); }
+
     protected:
         GeoInterpolation _geoInterpolation;
         void fireDistanceChanged();
@@ -83,13 +90,18 @@ namespace osgEarth { namespace Util
         int _mouseButton;
         osg::ref_ptr< osg::Group > _group;
 
-        osg::ref_ptr< osgEarth::Features::FeatureNode > _featureNode;
+        osg::ref_ptr< osgEarth::Annotation::FeatureNode > _featureNode;
         osg::ref_ptr< osgEarth::Features::Feature >  _feature;
 
+        osg::ref_ptr< osgEarth::Annotation::FeatureNode > _extentFeatureNode;
+        osg::ref_ptr< osgEarth::Features::Feature >       _extentFeature;
+
         MeasureToolEventHandlerList _eventHandlers;
         bool _isPath;        
-        osg::ref_ptr< MapNode > _mapNode;
+        osg::observer_ptr< MapNode > _mapNode;
         osg::Node::NodeMask _intersectionMask;
+
+        void rebuild();
     };
 }}
-#endif
\ No newline at end of file
+#endif
diff --git a/src/osgEarthUtil/MeasureTool.cpp b/src/osgEarthUtil/MeasureTool.cpp
index 6161dd1..e8b15cf 100644
--- a/src/osgEarthUtil/MeasureTool.cpp
+++ b/src/osgEarthUtil/MeasureTool.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -21,53 +21,104 @@
 #include <osgEarth/GeoMath>
 
 #include <osgEarthFeatures/Feature>
+#include <osgEarthAnnotation/FeatureNode>
+
+#define LC "[MeasureTool] "
 
 using namespace osgEarth;
 using namespace osgEarth::Util;
 using namespace osgEarth::Symbology;
 using namespace osgEarth::Features;
+using namespace osgEarth::Annotation;
 
-
+//#define SHOW_EXTENT 1
 
 
 MeasureToolHandler::MeasureToolHandler( osg::Group* group, osgEarth::MapNode* mapNode ):
-_mouseDown(false),
-_group(group),
-_gotFirstLocation(false),
+_mouseDown         (false),
+_group             (group),
+_gotFirstLocation  (false),
 _lastPointTemporary(false),
-_finished(false),
-_geoInterpolation( GEOINTERP_GREAT_CIRCLE ),
-_mouseButton( osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON),
-_isPath( false ),
-_mapNode( mapNode ),
-_intersectionMask(0xffffffff)
+_finished          (false),
+_geoInterpolation  (GEOINTERP_GREAT_CIRCLE),
+_mouseButton       (osgGA::GUIEventAdapter::LEFT_MOUSE_BUTTON),
+_isPath            (false),
+_intersectionMask  (0xffffffff)
 {
-    LineString* line = new LineString();
-    _feature = new Feature();
-    _feature->setGeometry( line );
-    _feature->geoInterp() = _geoInterpolation;    
+    setMapNode( mapNode );
+}
 
-    //Define a style for the line
-    Style style;
-    LineSymbol* ls = style.getOrCreateSymbol<LineSymbol>();
-    ls->stroke()->color() = osg::Vec4f( 1,0,0,1 );
-    ls->stroke()->width() = 2.0f;   
+MeasureToolHandler::~MeasureToolHandler()
+{
+    setMapNode( 0L );
+}
 
-    _feature->style() = style;
 
-    _featureNode = new FeatureNode( _mapNode.get(), _feature.get(), false);
-    
+void
+MeasureToolHandler::setMapNode( MapNode* mapNode )
+{
+    MapNode* oldMapNode = getMapNode();
+
+    if ( oldMapNode != mapNode )
+    {
+        _mapNode = mapNode;
+        rebuild();
+    }
+}
+
+
+void
+MeasureToolHandler::rebuild()
+{
+    if ( _group.valid() && _featureNode.valid() )
+    {
+        _group->removeChild( _featureNode.get() );
+        _featureNode = 0L;
+    }
+
+    if ( !getMapNode() )
+        return;
 
-    //Disable lighting and depth testing for the feature graph
+    if ( getMapNode()->getMapSRS()->isProjected() )
+    {
+        OE_WARN << LC << "Sorry, MeasureTool does not yet support projected maps" << std::endl;
+        return;
+    }
+
+    AltitudeSymbol* alt = new AltitudeSymbol();
+    alt->clamping() = AltitudeSymbol::CLAMP_TO_TERRAIN;
+
+    // Define the path feature:
+    _feature = new Feature(new LineString(), getMapNode()->getMapSRS());
+    _feature->geoInterp() = _geoInterpolation;
+
+    //Define a style for the line
+    LineSymbol* ls = _feature->style()->getOrCreate<LineSymbol>();
+    ls->stroke()->color() = Color::Yellow;
+    ls->stroke()->width() = 2.0f;
+    ls->tessellation() = 20;
+    _feature->style()->add( alt );
+
+    _featureNode = new FeatureNode( getMapNode(), _feature.get() );
     _featureNode->getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
-    _featureNode->getOrCreateStateSet()->setMode(GL_DEPTH_TEST, osg::StateAttribute::OFF);
 
     _group->addChild (_featureNode.get() );
-}
 
-MeasureToolHandler::~MeasureToolHandler()
-{
-    if (_group.valid()) _group->removeChild( _featureNode.get() );
+#ifdef SHOW_EXTENT
+
+    // Define the extent feature:
+    _extentFeature = new Feature( new Polygon(), mapNode->getMapSRS() );
+    _extentFeature->geoInterp() = GEOINTERP_RHUMB_LINE;
+    _extentFeature->style()->add( alt );
+    LineSymbol* extentLine = _extentFeature->style()->getOrCreate<LineSymbol>();
+    extentLine->stroke()->color() = Color::Cyan;
+    extentLine->stroke()->width() = 2.0f;
+    extentLine->tessellation() = 20;
+
+    _extentFeatureNode = new FeatureNode( _mapNode.get(), _extentFeature.get() );
+    
+    _group->addChild( _extentFeatureNode.get() );
+#endif
 }
 
 bool
@@ -114,7 +165,6 @@ MeasureToolHandler::setLineStyle( const Style& style )
      _featureNode->init();
 }
 
-
 bool MeasureToolHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
 {    
     if ( ea.getHandled() )
@@ -158,12 +208,32 @@ bool MeasureToolHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIAct
                         _feature->getGeometry()->push_back( osg::Vec3d( lon, lat, 0 ) );
                     }
                     _featureNode->init();
+
                     //_gotFirstLocation = false;
                     //_finished = true;
                     if (_finished || !_isPath) {
                         _gotFirstLocation = false;
                     }
+
+#ifdef SHOW_EXTENT
+                    const GeoExtent& ex = _feature->getExtent();
+                    OE_INFO << "extent = " << ex.toString() << std::endl;
+                    Geometry* eg = _extentFeature->getGeometry();
+                    osg::Vec3d fc = ex.getCentroid();
+                    eg->clear();
+                    eg->push_back( ex.west(), ex.south() );
+                    if ( ex.width() >= 180.0 )
+                        eg->push_back( fc.x(), ex.south() );
+                    eg->push_back( ex.east(), ex.south() );
+                    eg->push_back( ex.east(), ex.north() );
+                    if ( ex.width() >= 180.0 )
+                        eg->push_back( fc.x(), ex.north() );
+                    eg->push_back( ex.west(), ex.north() );
+                    _extentFeatureNode->init();
+#endif
+
                     fireDistanceChanged();
+                    aa.requestRedraw();
                 }
             }
         }
@@ -172,7 +242,8 @@ bool MeasureToolHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIAct
         if (_gotFirstLocation)
         {
             //_gotFirstLocation = false;
-            _finished = true;     
+            _finished = true;    
+            aa.requestRedraw(); 
             return true;
         }
     }
@@ -194,6 +265,7 @@ bool MeasureToolHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIAct
                 }
                 _featureNode->init();
                 fireDistanceChanged();
+                aa.requestRedraw();
             }
         }
     }    
@@ -203,14 +275,16 @@ bool MeasureToolHandler::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIAct
 bool MeasureToolHandler::getLocationAt(osgViewer::View* view, double x, double y, double &lon, double &lat)
 {
     osgUtil::LineSegmentIntersector::Intersections results;            
-    if ( view->computeIntersections( x, y, results, _intersectionMask ) )
+    if ( getMapNode() &&  view->computeIntersections( x, y, results, _intersectionMask ) )
     {
         // find the first hit under the mouse:
         osgUtil::LineSegmentIntersector::Intersection first = *(results.begin());
         osg::Vec3d point = first.getWorldIntersectPoint();
 
         double lat_rad, lon_rad, height;       
-        _mapNode->getMap()->getProfile()->getSRS()->getEllipsoid()->convertXYZToLatLongHeight( point.x(), point.y(), point.z(), lat_rad, lon_rad, height );
+        getMapNode()->getMap()->getProfile()->getSRS()->getEllipsoid()->convertXYZToLatLongHeight( 
+            point.x(), point.y(), point.z(), lat_rad, lon_rad, height );
+
         lat = osg::RadiansToDegrees( lat_rad );
         lon = osg::RadiansToDegrees( lon_rad );
         return true;
@@ -224,9 +298,15 @@ void MeasureToolHandler::clear()
     _feature->getGeometry()->clear();
     //_features->dirty();
     _featureNode->init();
+
+#ifdef SHOW_EXTENT
+    _extentFeature->getGeometry()->clear();
+    _extentFeatureNode->init();
+#endif
+
     fireDistanceChanged();
 
-    _gotFirstLocation = false; 
+    _gotFirstLocation = false; 
     _lastPointTemporary = false; 
 }
 
@@ -264,4 +344,4 @@ void MeasureToolHandler::fireDistanceChanged()
     {
         i->get()->onDistanceChanged( this, distance );
     }
-}
\ No newline at end of file
+}
diff --git a/src/osgEarthUtil/MouseCoordsTool b/src/osgEarthUtil/MouseCoordsTool
new file mode 100644
index 0000000..2f77abc
--- /dev/null
+++ b/src/osgEarthUtil/MouseCoordsTool
@@ -0,0 +1,111 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHUTIL_MOUSE_COORDS_TOOL_H
+#define OSGEARTHUTIL_MOUSE_COORDS_TOOL_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarthUtil/Controls>
+#include <osgEarthUtil/Formatter>
+
+#include <osgGA/GUIEventHandler>
+
+namespace osgEarth {
+    class MapNode;
+}
+
+namespace osgEarth { namespace Util
+{
+    using namespace Controls;
+
+    /**
+     * Tool that prints the map coordinates under the mouse into a 
+     * LabelControl.
+     */
+    class OSGEARTHUTIL_EXPORT MouseCoordsTool : public osgGA::GUIEventHandler
+    {
+    public:
+        struct Callback : public osg::Referenced
+        {
+            // called when valid map coordinates are found under the mouse
+            virtual void set( const GeoPoint& coords, osg::View* view, MapNode* mapNode ) =0;
+
+            // called when no map coords are found under the mouse
+            virtual void reset( osg::View* view, MapNode* mapNode ) =0;
+
+            virtual ~Callback() { }
+        };
+
+    public:
+        /**
+         * Constructs a new handler
+         * @param label
+         *      Label control that will accept the coordinate readout
+         * @param mapNode
+         *      Map node from which to query coordinates
+         * @param label
+         *     (optional) label control to use for readout (automatically installs
+         *     a MouseCoordsLabelCallback)
+         * @param formatter
+         *     (optional) When used with the label, specifies a formatter to use
+         *     for the readout.
+         */
+        MouseCoordsTool( MapNode* mapNode, LabelControl* label =0L, Formatter* formatter =0L );
+
+        virtual ~MouseCoordsTool() { }
+
+        /**
+         * Adds a readout callback.
+         */
+        void addCallback( Callback* callback );
+
+
+    public: // GUIEventHandler
+
+        bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
+
+    protected:
+        MapNode*      _mapNode;
+        osg::NodePath _mapNodePath;
+        typedef std::vector< osg::ref_ptr<Callback> > Callbacks;
+        Callbacks _callbacks;
+    };
+
+
+    /**
+     * A sample callback that will display the mouse coords in a LabelControl.
+     */
+    class OSGEARTHUTIL_EXPORT MouseCoordsLabelCallback : public MouseCoordsTool::Callback
+    {
+    public:
+        MouseCoordsLabelCallback( LabelControl* label, Formatter* formatter =0L );
+
+        virtual ~MouseCoordsLabelCallback() { }
+
+        virtual void set( const GeoPoint& coords, osg::View* view, MapNode* mapNode );
+        virtual void reset( osg::View* view, MapNode* mapNode );
+
+    protected:
+        osg::observer_ptr<LabelControl> _label;
+        osg::ref_ptr<Formatter>         _formatter;
+    };
+
+} } // namespace osgEarthUtil
+
+#endif // OSGEARTHUTIL_MOUSE_COORDS_TOOL_H
diff --git a/src/osgEarthUtil/MouseCoordsTool.cpp b/src/osgEarthUtil/MouseCoordsTool.cpp
new file mode 100644
index 0000000..1b8876b
--- /dev/null
+++ b/src/osgEarthUtil/MouseCoordsTool.cpp
@@ -0,0 +1,103 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthUtil/MouseCoordsTool>
+#include <osgEarthUtil/LatLongFormatter>
+#include <osgEarth/MapNode>
+#include <osgEarth/Terrain>
+#include <osgEarth/TerrainEngineNode>
+#include <osgViewer/View>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+//-----------------------------------------------------------------------
+
+MouseCoordsTool::MouseCoordsTool( MapNode* mapNode, LabelControl* label, Formatter* formatter ) :
+_mapNode( mapNode )
+{
+    _mapNodePath.push_back( mapNode->getTerrainEngine() );
+
+    if ( label )
+    {
+        addCallback( new MouseCoordsLabelCallback(label, formatter) );
+    }
+}
+
+void
+MouseCoordsTool::addCallback( MouseCoordsTool::Callback* cb )
+{
+    _callbacks.push_back( cb );
+}
+
+bool
+MouseCoordsTool::handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa )
+{
+    if (ea.getEventType() == ea.MOVE || ea.getEventType() == ea.DRAG)
+    {
+        osg::Vec3d world;
+        if ( _mapNode->getTerrain()->getWorldCoordsUnderMouse(aa.asView(), ea.getX(), ea.getY(), world) )
+        {
+            GeoPoint map;
+            map.fromWorld( _mapNode->getMapSRS(), world );
+
+            for( Callbacks::iterator i = _callbacks.begin(); i != _callbacks.end(); ++i )
+                i->get()->set( map, aa.asView(), _mapNode );
+        }
+        else
+        {
+            for( Callbacks::iterator i = _callbacks.begin(); i != _callbacks.end(); ++i )
+                i->get()->reset( aa.asView(), _mapNode );
+        }
+    }
+
+    return false;
+}
+
+//-----------------------------------------------------------------------
+
+MouseCoordsLabelCallback::MouseCoordsLabelCallback( LabelControl* label, Formatter* formatter ) :
+_label    ( label ),
+_formatter( formatter )
+{
+    if ( !formatter )
+        _formatter = new LatLongFormatter( LatLongFormatter::FORMAT_DECIMAL_DEGREES );
+}
+
+void
+MouseCoordsLabelCallback::set( const GeoPoint& mapCoords, osg::View* view, MapNode* mapNode )
+{
+    if ( _label.valid() )
+    {
+        _label->setText( Stringify()
+            <<  _formatter->format( mapCoords )
+            << ", " << mapCoords.z() );
+    }
+}
+
+void
+MouseCoordsLabelCallback::reset( osg::View* view, MapNode* mapNode )
+{
+    if ( _label.valid() )
+    {
+        _label->setText( "" );
+    }
+}
+
+//-----------------------------------------------------------------------
diff --git a/src/osgEarthUtil/NearFarGroup b/src/osgEarthUtil/NearFarGroup
new file mode 100644
index 0000000..72a66e1
--- /dev/null
+++ b/src/osgEarthUtil/NearFarGroup
@@ -0,0 +1,52 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2010 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_NEAR_FAR_GROUP_H
+#define OSGEARTHUTIL_NEAR_FAR_GROUP_H
+
+#include <osgEarthUtil/Common>
+#include <osg/Camera>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    /**
+     * A NearFarGroup is a container for objects that should generate a
+     * "self-contained" near/far clip plane calculation. The near/far clip
+     * calculation for this group exists independently of the rest of the
+     * scene graph.
+     *
+     * This is useful for creating more than one "depth domains" within the
+     * scene. For example, if you have the globe in the background, but at the 
+     * same time you want to zoom up very close to an aircraft, a combined
+     * clip plane domain may not have sufficient precision. Placing the
+     * aircraft under a NearFarGroup can help mitigate this problem.
+     */
+    class OSGEARTHUTIL_EXPORT NearFarGroup : public osg::Camera
+    {
+    public:
+        NearFarGroup();
+
+    public:
+        virtual void traverse(osg::NodeVisitor& nv);
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_NEAR_FAR_GROUP_H
diff --git a/src/osgEarthUtil/NearFarGroup.cpp b/src/osgEarthUtil/NearFarGroup.cpp
new file mode 100644
index 0000000..2ac673d
--- /dev/null
+++ b/src/osgEarthUtil/NearFarGroup.cpp
@@ -0,0 +1,102 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2010 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/NearFarGroup>
+#include <osgEarth/FindNode>
+#include <osg/Depth>
+#include <iomanip>
+
+#define LC "[NearFarClip] "
+
+using namespace osgEarth::Util;
+
+
+NearFarGroup::NearFarGroup() :
+osg::Camera()
+{
+    this->setRenderOrder( osg::Camera::POST_RENDER, 2 );
+    this->setReferenceFrame( osg::Transform::RELATIVE_RF );
+    this->setClearMask( 0 );
+    this->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
+    this->setNearFarRatio( 0.00001 );
+}
+
+void
+NearFarGroup::traverse( osg::NodeVisitor& nv )
+{
+    bool isCull = nv.getVisitorType() == osg::NodeVisitor::CULL_VISITOR;
+    osgUtil::CullVisitor* cv;
+    if ( isCull )
+        cv = static_cast<osgUtil::CullVisitor*>(&nv);
+
+    if ( isCull )
+    {
+        // bounding sphere of the child graph
+        const osg::BoundingSphere& bs = this->getBound();
+
+        // the actual camera at the root of this render stage
+        osg::Camera* realCamera = cv->getRenderStage()->getCamera();
+
+        // use the world look vector to calculate the near/far points in world space:
+        const osg::Matrixd& viewMatrix = realCamera->getViewMatrix();
+        osg::Vec3d lookVectorInWorldCoords = osg::Matrixd::transform3x3(viewMatrix, osg::Vec3d(0.0,0.0,-1.0));
+        lookVectorInWorldCoords.normalize();
+        osg::Vec3d nearPointInWorldCoords = bs.center() - lookVectorInWorldCoords*bs.radius();
+        osg::Vec3d farPointInWorldCoords = bs.center() + lookVectorInWorldCoords*bs.radius();
+
+        // convert those to eye space to get the new near/far values:
+        osg::Vec3d nearPointInEyeCoords = nearPointInWorldCoords * viewMatrix;
+        osg::Vec3d farPointInEyeCoords = farPointInWorldCoords * viewMatrix;
+
+        double scene_zNear = -nearPointInEyeCoords.z();
+        double scene_zFar = -farPointInEyeCoords.z();
+
+        OE_DEBUG
+            << std::fixed << std::setprecision(2)
+            << "Center = " << bs.center().x() << "," << bs.center().y() << "," << bs.center().z()
+            << ", Radius = " << bs.radius()
+            << ", Near = " << scene_zNear
+            << ", Far = " << scene_zFar
+            << std::endl;
+
+        // alter a negative znear by re-calculating it based on the far clip:
+        if ( scene_zNear <= 0.0 ) 
+            scene_zNear = this->getNearFarRatio() * scene_zFar;
+
+        // calculate a new projection matrix using the calculated near/far clip planes.
+        osg::ref_ptr<osg::RefMatrix> proj = new osg::RefMatrix();
+        double left, right, top, bottom, zNear, zFar;
+        if ( realCamera->getProjectionMatrixAsFrustum(left, right, bottom, top, zNear, zFar) )
+        {
+            double nr = scene_zNear / zNear;
+            proj->makeFrustum(left * nr, right * nr, bottom * nr, top * nr, scene_zNear, scene_zFar);
+            this->setProjectionMatrix( *proj.get() );      
+        }
+
+        // replace whatever projection matrix is atop the stack before culling the subgraph:
+        cv->pushProjectionMatrix( proj.get() );
+    }
+
+    osg::Camera::traverse(nv);
+
+    if ( isCull )
+    {
+        // pop our temporary projection matrix now that we're done
+        cv->popProjectionMatrix();
+    }
+}
diff --git a/src/osgEarthUtil/ObjectLocator b/src/osgEarthUtil/ObjectLocator
index 0c8f6b3..9fdf0da 100644
--- a/src/osgEarthUtil/ObjectLocator
+++ b/src/osgEarthUtil/ObjectLocator
@@ -13,7 +13,7 @@ namespace osgEarth { namespace Util
     /**
      * ObjectLocator - a revisioned object that generates a positional matrix for a node.
      */
-    class OSGEARTHUTIL_EXPORT ObjectLocator : public osgEarth::Revisioned<osg::Referenced>
+    class OSGEARTHUTIL_EXPORT ObjectLocator : public osg::Referenced, public Revisioned
     {
     public:
 
@@ -48,6 +48,9 @@ namespace osgEarth { namespace Util
          */
         ObjectLocator(ObjectLocator* parent, unsigned int compsToInherit =COMP_ALL );
 
+        /** dtor */
+        virtual ~ObjectLocator() { }
+
         /**
          * Sets the absolute OR relative positioning of this locator (depending on whether
          * this locator has a parent). Units conform to this Locator's SRS.
diff --git a/src/osgEarthUtil/ObjectLocator.cpp b/src/osgEarthUtil/ObjectLocator.cpp
index 8bdd3e6..6f88baa 100644
--- a/src/osgEarthUtil/ObjectLocator.cpp
+++ b/src/osgEarthUtil/ObjectLocator.cpp
@@ -221,7 +221,7 @@ bool
 ObjectLocator::inSyncWith( int exRev ) const
 {
     return _parentLoc.valid() ? _parentLoc->inSyncWith( exRev ) :
-        osgEarth::Revisioned<osg::Referenced>::inSyncWith( exRev );
+        osgEarth::Revisioned::inSyncWith( exRev );
 }
 
 /***************************************************************************/
diff --git a/src/osgEarthUtil/ObjectPlacer b/src/osgEarthUtil/ObjectPlacer
index 1a98202..fbf16f8 100644
--- a/src/osgEarthUtil/ObjectPlacer
+++ b/src/osgEarthUtil/ObjectPlacer
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -28,6 +28,8 @@
 namespace osgEarth { namespace Util
 {
     /**
+     * @deprecated Please use Annotation::GeometryNode instead.
+     *
      * Convenience utilities for placing an object on an osgEarth terrain map
      * using latitude/longitude coordinates.
      */
@@ -35,6 +37,8 @@ namespace osgEarth { namespace Util
     {
     public:
         /**
+         * @deprecated Please use Annotation::GeometryNode instead.
+         *
          * Constructs a new placer.
          *
          * @param terrain
@@ -55,7 +59,11 @@ namespace osgEarth { namespace Util
             bool clamp        =false,
             int  maxLevel     =20);
 
+        virtual ~ObjectPlacer() { }
+
         /**
+         * @deprecated Please use Annotation::GeometryNode instead.
+         *
          * Creates a double-precision matrix that will transform geometry to the
          * specified map location. In a geocentric map, the matrix will also rotate
          * into the tangent plane.
@@ -77,6 +85,8 @@ namespace osgEarth { namespace Util
             osg::Matrixd& out_result ) const;
 
         /**
+         * @deprecated Please use Annotation::GeometryNode instead.
+         *
          * Creates a new node graph that positions the input node at a specified map
          * location. The resulting node will contain the input node as a child.
          *
diff --git a/src/osgEarthUtil/ObjectPlacer.cpp b/src/osgEarthUtil/ObjectPlacer.cpp
index f8f33e5..20bd4ce 100644
--- a/src/osgEarthUtil/ObjectPlacer.cpp
+++ b/src/osgEarthUtil/ObjectPlacer.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>
  */
 #include <osgEarthUtil/ObjectPlacer>
-#include <osgEarth/FindNode>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/MapNode>
 #include <osgEarth/SpatialReference>
 #include <osgSim/LineOfSight>
@@ -149,7 +149,8 @@ ObjectPlacer::createPlacerMatrix( double lat_deg, double lon_deg, double height,
         osg::Vec3d local(0, 0, height);
         
         // first convert the input coords to the map srs:
-        srs->getGeographicSRS()->transform2D( lon_deg, lat_deg, srs, local.x(), local.y());
+        srs->getGeographicSRS()->transform( osg::Vec3d(lon_deg, lat_deg, height), srs, local );
+        //srs->getGeographicSRS()->transform2D( lon_deg, lat_deg, srs, local.x(), local.y());
 
         if ( _clamp )
         {
diff --git a/src/osgEarthUtil/OceanSurfaceNode b/src/osgEarthUtil/OceanSurfaceNode
deleted file mode 100644
index cc0347b..0000000
--- a/src/osgEarthUtil/OceanSurfaceNode
+++ /dev/null
@@ -1,184 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-#ifndef OSGEARTHUTIL_OCEANSURFACENODE
-#define OSGEARTHUTIL_OCEANSURFACENODE
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/ImageLayer>
-#include <osg/Group>
-#include <osg/observer_ptr>
-#include <osg/CoordinateSystemNode>
-#include <osg/Program>
-#include <osg/Texture3D>
-
-namespace osgEarth { namespace Util 
-{
-    using namespace osgEarth;
-
-    /**
-     * OceanSurfaceNode is a decorator node that animates the surface of the globe to simulate simple waves.
-     * Note:  This only works with multitextured maps, not multipass.
-     */
-    class OSGEARTHUTIL_EXPORT OceanSurfaceNode : public osg::Group
-    {
-    public:
-        /**
-         * Creates a new OceanSurfaceNode
-         */
-        OceanSurfaceNode();
-
-        /**
-         * Sets the image layer to use as an ocean mask.
-         */
-        void setOceanMaskImageLayer( const ImageLayer* layer );
-
-        /**
-         * Gets the image layer being used as an ocean mask.
-         */
-        const ImageLayer* getOceanMaskImageLayer() const { return _maskLayer.get(); }
-
-        /**
-         *Gets the wave height
-         */
-        float getWaveHeight() const;
-
-        /**
-         *Sets the wave height
-         */
-        void setWaveHeight(float waveHeight);
-
-        /**
-         *Gets the range at which the effect starts to show.
-         */
-        float getMaxRange() const;
-
-        /**
-         *Sets the max range at which the effect starts to show
-         */
-        void setMaxRange(float maxRange);
-
-        /**
-         *Gets the period of the wave
-         */
-        float getPeriod() const;
-
-        /**
-         *Sets the period of the wave
-         */
-        void setPeriod(float period);
-
-        /**
-         *Gets whether the ocean effect is enabled
-         */
-        bool getEnabled() const;
-
-        /**
-         *Sets whether the ocean effect is enabled
-         */
-        void setEnabled(bool enabled);
-
-        /**
-         *Gets whether to invert the mask ocean mask.
-         */
-        bool getInvertMask() const;
-        
-        /**
-         *Sets whether to invert the mask ocean mask.
-         *Normally, transparant areas are considered ocean.  When inverted, transparent areas are considered land.
-         */
-        void setInvertMask(bool invertMask);
-
-        /**
-         * Sets an optional ocean color. The ocean will take on this color based on the 
-         * alpha values in the masking texture.
-         */
-        void setModulationColor( const osg::Vec4f& color );
-
-        osg::Vec4f getModulationColor() const;
-
-        /**
-         * Gets the period of the ocean animation effect in seconds
-         */
-        float getOceanAnimationPeriod() const;
-
-        /**
-         * Sets the period of the ocean animation effect in seconds
-         */
-        void setOceanAnimationPeriod(float oceanAnimationPeriod);
-
-        /**
-         *Gets the ocean surface image to the given 3D image.
-         */
-        osg::Image* getOceanSurfaceImage() const;
-        
-        /**
-         *Sets the ocean surface image to the given 3D image.
-         */
-        void setOceanSurfaceImage( osg::Image* image);
-
-        /**
-         *Gets the size of the ocean surface image in radians
-         */
-        float getOceanSurfaceImageSizeRadians() const;
-
-        /**
-         *Sets the size of the ocean surface image in radians
-         */
-        void setOceanSurfaceImageSizeRadians( float size );
-
-		/**
-		 *Sets whether or not to adjust the height of the ocean to always be at MSL 0 and ignore the current vert height
-		 */
-		void setAdjustToMSL( bool adjustToMSL);
-		
-		/**
-		 *Gets whether or not to adjust the height of the ocean to always be at MSL 0 and ignore the current vert height
-		 */
-		bool getAdjustToMSL() const;
-
-    public:
-        virtual void traverse( osg::NodeVisitor& nv );
-
-    private:
-        void rebuildShaders();
-
-        void shadersDirty(bool value);
-        bool _shadersDirty;
-
-        float _maxRange;
-        UID _oceanMaskLayerUID;
-        int _oceanSurfaceTextureUnit;
-        bool _oceanSurfaceTextureApplied;
-        float _waveHeight;
-        float _period;
-        bool _enabled;
-        bool _invertMask;
-		bool _adjustToMSL;
-        osg::observer_ptr<osg::CoordinateSystemNode> _csn;
-        optional<osg::Vec4f> _oceanColor;
-        float _oceanAnimationPeriod;
-        float _oceanSurfaceImageSizeRadians;
-        osg::ref_ptr< osg::Image > _oceanSurfaceImage;
-        osg::ref_ptr< osg::Texture3D > _oceanSurfaceTexture;
-        osg::observer_ptr< const ImageLayer > _maskLayer;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif //OSGEARTHUTIL_OCEANSURFACENODE
diff --git a/src/osgEarthUtil/OceanSurfaceNode.cpp b/src/osgEarthUtil/OceanSurfaceNode.cpp
deleted file mode 100644
index 74976b0..0000000
--- a/src/osgEarthUtil/OceanSurfaceNode.cpp
+++ /dev/null
@@ -1,476 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
-* http://osgearth.org
-*
-* osgEarth is free software; you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License as published by
-* the Free Software Foundation; either version 2 of the License, or
-* (at your option) any later version.
-*
-* This program is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU Lesser General Public License for more details.
-*
-* You should have received a copy of the GNU Lesser General Public License
-* along with this program.  If not, see <http://www.gnu.org/licenses/>
-*/
-
-#include <osgEarthUtil/OceanSurfaceNode>
-
-#include <osgEarth/FindNode>
-#include <osgEarth/Notify>
-#include <osgEarth/Registry>
-#include <osgEarth/ShaderComposition>
-#include <osgEarth/TextureCompositor>
-#include <osgEarth/MapNode>
-#include <osgEarth/FindNode>
-
-#include <osg/Texture3D>
-#include <osgDB/ReadFile>
-
-#include <sstream>
-#include <iomanip>
-
-#define LC "[OceanSurfaceNode] "
-
-using namespace osgEarth;
-using namespace osgEarth::Util;
-
-typedef std::vector< osg::ref_ptr< osg::Image > > ImageList;
-
-OceanSurfaceNode::OceanSurfaceNode() :
-_shadersDirty(false),
-_maxRange(800000),
-_oceanMaskLayerUID(-1),
-_oceanSurfaceTextureUnit(-1),
-_oceanSurfaceTextureApplied(false),
-_waveHeight(100),
-_period(1024),
-_enabled(true),
-_invertMask(false),
-_adjustToMSL(true),
-_oceanColor(osg::Vec4f(0,0,1,0)),
-_oceanAnimationPeriod(6.0),
-_oceanSurfaceImageSizeRadians(osg::PI/500.0)
-{
-    rebuildShaders();
- 
-    getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanPeriod", osg::Uniform::FLOAT)->set(_period);   
-    getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanAnimationPeriod", osg::Uniform::FLOAT)->set(_oceanAnimationPeriod); 
-
-    osg::Uniform* oceanHeightUniform = getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanHeight", osg::Uniform::FLOAT);
-    oceanHeightUniform->set( _waveHeight);
-    oceanHeightUniform->setDataVariance( osg::Object::DYNAMIC);
-
-    //Initialize the ocean surface texture
-    _oceanSurfaceTexture = new osg::Texture3D();
-    _oceanSurfaceTexture->setWrap(osg::Texture::WRAP_S,osg::Texture::REPEAT);
-    _oceanSurfaceTexture->setWrap(osg::Texture::WRAP_T,osg::Texture::REPEAT);
-    _oceanSurfaceTexture->setWrap(osg::Texture::WRAP_R,osg::Texture::REPEAT);
-    _oceanSurfaceTexture->setFilter(osg::Texture3D::MIN_FILTER,osg::Texture3D::LINEAR);
-    _oceanSurfaceTexture->setFilter(osg::Texture3D::MAG_FILTER,osg::Texture3D::LINEAR);
-}
-
-void
-OceanSurfaceNode::shadersDirty(bool value)
-{
-    if ( _shadersDirty != value )
-    {
-        _shadersDirty = value;
-        ADJUST_UPDATE_TRAV_COUNT( this, _shadersDirty ? 1 : -1 );
-    }
-}
-
-void
-OceanSurfaceNode::setOceanMaskImageLayer( const ImageLayer* layer )
-{
-    if ( _maskLayer.get() != layer )
-    {
-        _maskLayer = layer;
-        shadersDirty(true);
-    }
-}
-
-bool
-OceanSurfaceNode::getAdjustToMSL() const
-{
-	return _adjustToMSL;
-}
-
-void
-OceanSurfaceNode::setAdjustToMSL(bool adjustToMSL)
-{
-	if (_adjustToMSL != adjustToMSL)
-	{
-		_adjustToMSL = adjustToMSL;
-        shadersDirty( true );
-	}
-}
-
-osg::Image*
-OceanSurfaceNode::getOceanSurfaceImage() const
-{
-    return _oceanSurfaceImage.get();
-}
-
-void
-OceanSurfaceNode::setOceanSurfaceImage(osg::Image* image)
-{
-    if (_oceanSurfaceImage.get() != image)
-    {
-        _oceanSurfaceImage = image;
-        _oceanSurfaceTexture->setImage( _oceanSurfaceImage.get() );
-        
-        shadersDirty( true );
-    }
-}
-
-float
-OceanSurfaceNode::getWaveHeight() const
-{
-    return _waveHeight;
-}
-
-void
-OceanSurfaceNode::setWaveHeight(float waveHeight)
-{
-    if (_waveHeight != waveHeight)
-    {
-        _waveHeight = waveHeight;
-        getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanHeight", osg::Uniform::FLOAT)->set(_waveHeight);
-        //TODO: consider rebuildShaders() instead..
-    }
-}
-
-float
-OceanSurfaceNode::getMaxRange() const
-{
-    return _maxRange;
-}
-
-void
-OceanSurfaceNode::setMaxRange(float maxRange)
-{
-    if (_maxRange != maxRange)
-    {
-        _maxRange = maxRange;
-        shadersDirty(true);
-    }
-}
-
-float
-OceanSurfaceNode::getPeriod() const
-{
-    return _period;
-}
-
-void
-OceanSurfaceNode::setPeriod(float period)
-{
-    if (_period !=period)
-    {
-        _period = period;
-        getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanPeriod", osg::Uniform::FLOAT)->set(_period); 
-        //TODO: consider rebuildShaders() instead..    
-    }
-}
-
-bool
-OceanSurfaceNode::getEnabled() const
-{
-    return _enabled;
-}
-
-void
-OceanSurfaceNode::setEnabled(bool enabled)
-{
-    if (_enabled != enabled)
-    {
-        _enabled = enabled;
-        shadersDirty(true);
-    }
-}
-
-bool
-OceanSurfaceNode::getInvertMask() const
-{
-    return _invertMask;
-}
-
-void
-OceanSurfaceNode::setInvertMask(bool invertMask)
-{
-    if (_invertMask != invertMask)
-    {
-        _invertMask = invertMask;
-        shadersDirty( true );
-    }
-}
-
-void
-OceanSurfaceNode::setModulationColor( const osg::Vec4f& color )
-{
-    if ( !_oceanColor.isSetTo( color ) )
-    {
-        _oceanColor = color;
-        shadersDirty( true );
-    }
-}
-
-osg::Vec4f
-OceanSurfaceNode::getModulationColor() const
-{
-    return _oceanColor.value();
-}
-
-float
-OceanSurfaceNode::getOceanAnimationPeriod() const
-{
-    return _oceanAnimationPeriod;
-}
-
-void
-OceanSurfaceNode::setOceanAnimationPeriod(float oceanAnimationPeriod)
-{
-    if (_oceanAnimationPeriod != oceanAnimationPeriod)
-    {
-        _oceanAnimationPeriod = oceanAnimationPeriod;
-        getOrCreateStateSet()->getOrCreateUniform("osgearth_OceanAnimationPeriod", osg::Uniform::FLOAT)->set(oceanAnimationPeriod); 
-        //TODO: consider rebuildShaders() instead..
-    }
-}
-
-float
-OceanSurfaceNode::getOceanSurfaceImageSizeRadians() const
-{
-    return _oceanSurfaceImageSizeRadians;
-}
-
-void
-OceanSurfaceNode::setOceanSurfaceImageSizeRadians(float size)
-{
-    if (_oceanSurfaceImageSizeRadians != size)
-    {
-        _oceanSurfaceImageSizeRadians = size;
-        shadersDirty( true );
-    }
-}
-
-void
-OceanSurfaceNode::traverse( osg::NodeVisitor& nv )
-{
-    if ( _shadersDirty && nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR )
-    {
-        rebuildShaders();
-        shadersDirty( false );
-    }
-
-    osg::Group::traverse( nv );
-}
-
-#define MASK_SAMPLER_FUNC "osgearth_ocean_sampleMask"
-
-void
-OceanSurfaceNode::rebuildShaders()
-{
-    // need the terrain engine so we can get at the compositor.
-    TerrainEngineNode* engine = osgEarth::findTopMostNodeOfType<TerrainEngineNode>( this );
-    if ( !engine ) {
-        OE_DEBUG << LC << "No terrain engine found in the map node; abort" << std::endl;
-        return;
-    }
-
-    // access the compositor because we are going to be sampling map layers.
-    TextureCompositor* comp = engine->getTextureCompositor();
-    if ( !comp ) {
-        OE_INFO << LC << "No texture compositor found in the terrain engine; abort" << std::endl;
-        return;
-    }
-
-    // reserve a texture unit for the surface texture (if we haven't already)
-    if ( !_oceanSurfaceTextureApplied && _oceanSurfaceTextureUnit < 0 && _oceanSurfaceTexture.valid() )
-    {
-        if ( comp->reserveTextureImageUnit( _oceanSurfaceTextureUnit ) )
-        {
-            getOrCreateStateSet()->setTextureAttributeAndModes(
-                _oceanSurfaceTextureUnit, _oceanSurfaceTexture.get(), osg::StateAttribute::ON);
-            _oceanSurfaceTextureApplied = true;
-        }
-        else
-        {
-            OE_WARN << LC << "Sorry, failed to allocate a texture image unit for the surface texture." << std::endl;
-        }
-    }
-
-    // create a VP to store our custom shader components.
-    osgEarth::VirtualProgram* vp = new osgEarth::VirtualProgram();
-    getOrCreateStateSet()->setAttributeAndModes( vp, osg::StateAttribute::ON );
-
-    // if the ocean is disabled, just return without injecting any shaders.
-    if ( !_enabled )
-        return;
-
-    // build the sampler function if necessary
-    osg::ref_ptr<const ImageLayer> safeMaskLayer = _maskLayer.get();
-    osg::Shader* maskSampler = 0L;
-    if ( safeMaskLayer.valid() )
-    {
-        maskSampler = comp->createSamplerFunction( safeMaskLayer->getUID(), MASK_SAMPLER_FUNC, osg::Shader::VERTEX );        
-        if ( maskSampler )
-            vp->setShader( MASK_SAMPLER_FUNC, maskSampler );
-    }
-
-    // make the helper functions.
-    {
-        std::stringstream buf;
-
-        buf << "vec3 xyz_to_lat_lon_height(in vec3 xyz) \n"
-            << "{ \n"
-            << "    float X = xyz.x;\n"
-            << "    float Y = xyz.y;\n"
-            << "    float Z = xyz.z;\n"
-            << "    float _radiusEquator = 6378137.0;\n"
-            << "    float _radiusPolar   = 6356752.3142;\n"
-            << "    float flattening = (_radiusEquator-_radiusPolar)/_radiusEquator;\n"
-            << "    float _eccentricitySquared = 2.0*flattening - flattening*flattening;\n"
-            << "    float p = sqrt(X*X + Y*Y);\n"
-            << "    float theta = atan(Z*_radiusEquator , (p*_radiusPolar));\n"
-            << "    float eDashSquared = (_radiusEquator*_radiusEquator - _radiusPolar*_radiusPolar)/(_radiusPolar*_radiusPolar);\n"
-            << "    float sin_theta = sin(theta);\n"
-            << "    float cos_theta = cos(theta);\n"
-            << "    float latitude = atan( (Z + eDashSquared*_radiusPolar*sin_theta*sin_theta*sin_theta), (p - _eccentricitySquared*_radiusEquator*cos_theta*cos_theta*cos_theta) );\n"
-            << "    float longitude = atan(Y,X);\n"
-            << "    float sin_latitude = sin(latitude);\n"
-            << "    float N = _radiusEquator / sqrt( 1.0 - _eccentricitySquared*sin_latitude*sin_latitude);\n"
-            << "    float height = p/cos(latitude) - N;\n"
-            << "    return vec3(longitude, latitude, height);\n"
-            << "} \n"
-            << "\n";
-
-        std::string str = buf.str();
-        vp->setShader( "xyz_to_lat_lon_height", new osg::Shader(osg::Shader::VERTEX, str) );
-    }
-
-    // next make the vertex shader function that will morph the ocean verts and prepare
-    // the texture coordinates for the surface effects.
-    {
-        std::stringstream buf;
-
-        buf << std::fixed;
-
-        buf << "uniform float osg_SimulationTime; \n"
-            << "uniform mat4  osg_ViewMatrixInverse;\n"
-            << "uniform mat4  osg_ViewMatrix;\n"
-            << "uniform float osgearth_OceanHeight;\n"
-            << "uniform float osgearth_OceanPeriod;\n"
-            << "uniform float osgearth_OceanAnimationPeriod;\n"
-            << "varying float osgearth_OceanAlpha;\n"
-            << "varying float osgearth_CameraRange; \n"
-
-            << "vec3 xyz_to_lat_lon_height(in vec3 xyz); \n";
-
-        if ( _oceanSurfaceTextureApplied )
-        {
-            buf << "varying vec3 osgearth_oceanSurfaceTexCoord; \n";
-        }
-
-        if ( maskSampler )
-        {
-            buf << "vec4 " << MASK_SAMPLER_FUNC << "(); \n";
-        }
-
-        buf << "void osgearth_ocean_morphSurface() \n"
-            << "{ \n"
-            << "   mat4 modelMatrix = osg_ViewMatrixInverse * gl_ModelViewMatrix; \n"
-            << "   vec4 vert = modelMatrix  * gl_Vertex; \n"           
-            << "   vec3 vert3 = vec3(vert.x, vert.y, vert.z); \n"
-            << "   vec3 latlon = xyz_to_lat_lon_height(vert3); \n"
-            << "   osgearth_OceanAlpha = 1.0; \n";
-
-        if ( maskSampler )
-        {
-            buf << "    osgearth_OceanAlpha = 1.0 - (" << MASK_SAMPLER_FUNC << "()).a; \n";
-        }
-
-        if ( _invertMask )
-            buf << "    osgearth_OceanAlpha = 1.0 - osgearth_OceanAlpha; \n";
-
-        buf << "   if ( osgearth_CameraRange <= " << _maxRange << " ) \n"
-            << "   { \n"
-            << "       float s = mix(1.0, 0.0, osgearth_CameraRange / " << _maxRange << "); \n" //Invert so it's between 0 and 1
-            << "       osgearth_OceanAlpha *= s; \n"
-            << "   } \n"
-            << "   else \n"
-            << "   { \n"
-            << "        osgearth_OceanAlpha = 0.0; \n"
-            << "   } \n"
-
-            << "   if (osgearth_OceanAlpha > 0.0) \n"
-            << "   { \n"
-            << "       float PI_2 = 3.14158 * 2.0; \n"
-            << "       float period = PI_2/osgearth_OceanPeriod; \n"
-            << "       float half_period = period / 2.0; \n"
-            << "       vec3 n = normalize(vert3);\n"
-            << "       float theta = (mod(latlon.x, period) / period) * PI_2; \n"  
-            << "       float phi = (mod(latlon.y, half_period) / half_period) * PI_2; \n"
-            << "       float phase1 = osg_SimulationTime * 2.0; \n"
-            << "       float phase2 = osg_SimulationTime * 4.0; \n"
-            << "       float waveHeight = (osgearth_OceanAlpha) * osgearth_OceanHeight; \n"
-            << "       float scale1 = sin(theta + phase1) * waveHeight; \n"
-            << "       float scale2 = cos(phi + phase2) * waveHeight; \n"
-            << "       float scale3 = sin(theta + phase2) * cos(phi + phase1) * waveHeight * 1.6; \n"
-            << "       float scale = (scale1 + scale2 + scale3)/3.0; \n";
-
-        // flatten verts to MSL:
-        if ( _adjustToMSL )
-        {
-            buf << "        vec3 offset = n * -latlon.z; \n"
-                << "        vert += vec4( offset.xyz, 0 ); \n";
-        }
-
-        // apply the save scale:
-        buf << "       n = n * scale; \n"
-            << "       vert += vec4(n.x, n.y,n.z,0); \n"
-            << "       vert = osg_ViewMatrix * vert; \n"
-            << "       gl_Position = gl_ProjectionMatrix * vert; \n"
-            << "   }\n";
-
-        // set up the coords for the surface texture:
-        if ( _oceanSurfaceTextureApplied )
-        {
-            buf << "   osgearth_oceanSurfaceTexCoord.x =  latlon.x / " << _oceanSurfaceImageSizeRadians << "; \n"
-                << "   osgearth_oceanSurfaceTexCoord.y =  latlon.y / " << _oceanSurfaceImageSizeRadians << "; \n"
-                << "   osgearth_oceanSurfaceTexCoord.z = fract(osg_SimulationTime/osgearth_OceanAnimationPeriod); \n";
-        }
-
-        buf << "}\n";
-
-        // add as a custom user function in the shader composition:
-        std::string vertSource = buf.str();
-        vp->setFunction( "osgearth_ocean_morphSurface", vertSource, osgEarth::ShaderComp::LOCATION_VERTEX_PRE_TEXTURING );
-    }
-    
-    // now we need a fragment function that will apply the ocean surface texture.
-    if ( _oceanSurfaceTextureApplied )
-    {
-        getOrCreateStateSet()->getOrCreateUniform( "osgearth_oceanSurfaceTex", osg::Uniform::SAMPLER_3D )->set( _oceanSurfaceTextureUnit );
-
-        std::stringstream buf;
-
-        buf << "uniform sampler3D osgearth_oceanSurfaceTex; \n"
-            << "varying vec3      osgearth_oceanSurfaceTexCoord; \n"
-            << "varying float     osgearth_OceanAlpha; \n"
-
-            << "void osgearth_ocean_applySurfaceTex( inout vec4 color ) \n"
-            << "{ \n"
-            << "    vec4 texel = texture3D(osgearth_oceanSurfaceTex, osgearth_oceanSurfaceTexCoord); \n"
-            << "    color = vec4( mix( color.rgb, texel.rgb, texel.a * osgearth_OceanAlpha ), color.a); \n"
-            << "} \n";
-
-        std::string str = buf.str();
-        vp->setFunction( "osgearth_ocean_applySurfaceTex", str, osgEarth::ShaderComp::LOCATION_FRAGMENT_PRE_LIGHTING );
-    }
-}
-
diff --git a/src/osgEarthUtil/PolyhedralLineOfSight b/src/osgEarthUtil/PolyhedralLineOfSight
new file mode 100644
index 0000000..a1176b7
--- /dev/null
+++ b/src/osgEarthUtil/PolyhedralLineOfSight
@@ -0,0 +1,116 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTHUTIL_VOLUME_LINEOFSIGHT
+#define OSGEARTHUTIL_VOLUME_LINEOFSIGHT 1
+
+#include <osgEarthUtil/LineOfSight>
+#include <osgEarth/MapNode>
+#include <osgEarth/GeoData>
+#include <osgEarth/Units>
+#include <osgEarthAnnotation/LocalizedNode>
+#include <osgEarth/Terrain>
+#include <osg/Geode>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Annotation;
+
+    /**
+     * A Node that display a line of sight polytope.
+     */
+    class OSGEARTHUTIL_EXPORT PolyhedralLineOfSightNode : public LocalizedNode
+    {
+    public:
+        /**
+         * Constructs a new PolyhedralLineOfSightNode.
+         * @param mapNode MapNode this LOS is operating under.
+         */
+        PolyhedralLineOfSightNode( MapNode* mapNode );
+
+        virtual ~PolyhedralLineOfSightNode();
+
+        /**
+         * The maximum sampling range from the center point
+         */
+        void setDistance( const Distance& value );
+        const Distance& getDistance() const { return _distance; }
+
+        /** 
+         * The azimuthal range for the LOS sampling
+         */
+        void setAzimuthalRange( const Angle& start, const Angle& end );
+        void getAximuthalRange( Angle& out_start, Angle& out_end );
+
+        /**
+         * The elevation (pitch) range for the LOS sampling
+         */
+        void setElevationRange( const Angle& start, const Angle& end );
+        void getElevationRange( Angle& out_start, Angle& out_end );
+
+        /**
+         * The sample spacing (in both azimuth and elevation)
+         */
+        void setSampleSpacing( const Angle& spacing );
+        const Angle& getSampleSpacing() const { return _spacing; }
+
+        /**
+         * Manage callbacks that report whether the LOS has changed
+         */
+        void addChangedCallback( LOSChangedCallback* callback );
+        void removeChangedCallback( LOSChangedCallback* callback );
+
+    public: // LocalizedNode
+        
+        virtual bool setPosition( const GeoPoint& pos );
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+    public:
+        // internal: called when the underlying terrain changes and resampling
+        // is required
+        void terrainChanged( const osgEarth::TileKey& tileKey, osg::Node* terrain );
+
+        virtual void traverse(osg::NodeVisitor& nv);
+
+    protected:
+
+        Angle                  _startAzim, _endAzim;
+        Angle                  _startElev, _endElev;
+        Angle                  _spacing;
+        Distance               _distance;
+        LOSChangedCallbackList _changedCallbacks;
+        unsigned               _numRows;
+        unsigned               _numCols;
+        osg::Geode*            _geode;
+        GeoExtent              _extent;
+
+        osg::ref_ptr< TerrainCallback > _terrainCallback;
+
+        void dirty();
+        void rebuildGeometry();
+        void updateSamples();
+        void recalculateExtent();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_VOLUME_LINEOFSIGHT
diff --git a/src/osgEarthUtil/PolyhedralLineOfSight.cpp b/src/osgEarthUtil/PolyhedralLineOfSight.cpp
new file mode 100644
index 0000000..7be0409
--- /dev/null
+++ b/src/osgEarthUtil/PolyhedralLineOfSight.cpp
@@ -0,0 +1,401 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/PolyhedralLineOfSight>
+
+
+#include <osgUtil/LineSegmentIntersector>
+#include <osgUtil/IntersectionVisitor>
+#include <osg/CullFace>
+
+#define LC "[PolyhedralLineOfSight] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    struct TerrainChangedCallback : public osgEarth::TerrainCallback
+    {
+        TerrainChangedCallback( PolyhedralLineOfSightNode* los ) : _los(los) { }
+        void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext& ) {
+            _los->terrainChanged( tileKey, terrain );
+        }
+        PolyhedralLineOfSightNode* _los;
+    };
+}
+
+//------------------------------------------------------------------------
+
+PolyhedralLineOfSightNode::PolyhedralLineOfSightNode( MapNode* mapNode ) :
+LocalizedNode( mapNode ),
+_startAzim   ( Angle(-45.0, Units::DEGREES) ),
+_endAzim     ( Angle( 45.0, Units::DEGREES) ),
+_startElev   ( Angle(  0.0, Units::DEGREES) ),
+_endElev     ( Angle( 45.0, Units::DEGREES) ),
+_spacing     ( Angle(  5.0, Units::DEGREES) ),
+_distance    ( Distance(50000.0, Units::METERS) )
+{
+    OE_WARN << LC << "This class is under development; use at your own risk" << std::endl;
+
+    _geode = new osg::Geode();
+    rebuildGeometry();
+    recalculateExtent();
+
+    getChildAttachPoint()->addChild( _geode );
+    this->addChild( getRoot() );
+
+    _terrainCallback = new TerrainChangedCallback(this);
+    
+    if ( mapNode )
+        mapNode->getTerrain()->addTerrainCallback( _terrainCallback );
+
+    osg::StateSet* stateSet = this->getOrCreateStateSet();
+    stateSet->setMode( GL_BLEND, 1 );
+    stateSet->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
+    stateSet->setAttributeAndModes( new osg::CullFace(osg::CullFace::BACK), 1 );
+}
+
+
+PolyhedralLineOfSightNode::~PolyhedralLineOfSightNode()
+{
+    if (_terrainCallback && getMapNode() )
+    {
+        getMapNode()->getTerrain()->removeTerrainCallback( _terrainCallback.get() );
+    }
+}
+
+void
+PolyhedralLineOfSightNode::setMapNode( MapNode* mapNode )
+{
+    osg::ref_ptr<MapNode> oldMapNode = getMapNode();
+    if ( oldMapNode.valid() )
+    {
+        if ( _terrainCallback.valid() )
+        {
+            oldMapNode->getTerrain()->removeTerrainCallback( _terrainCallback.get() );
+        }
+        if ( mapNode )
+        {
+            mapNode->getTerrain()->addTerrainCallback( _terrainCallback.get() );
+        }
+    }
+
+    LocalizedNode::setMapNode( mapNode );
+}
+
+void
+PolyhedralLineOfSightNode::setDistance( const Distance& value )
+{
+    _distance = value;
+    recalculateExtent();
+    updateSamples();
+}
+
+
+void
+PolyhedralLineOfSightNode::setAzimuthalRange(const Angle& start,
+                                             const Angle& end)
+{
+    _startAzim = start;
+    _endAzim   = end;
+    rebuildGeometry();
+    updateSamples();
+}
+
+
+void
+PolyhedralLineOfSightNode::setElevationRange(const Angle& start,
+                                             const Angle& end)
+{
+    _startElev = start;
+    _endElev   = end;
+    rebuildGeometry();
+    updateSamples();
+}
+
+
+void
+PolyhedralLineOfSightNode::setSampleSpacing(const Angle& value)
+{
+    _spacing = value;
+    rebuildGeometry();
+    updateSamples();
+}
+
+
+void 
+PolyhedralLineOfSightNode::terrainChanged(const osgEarth::TileKey& tileKey,
+                                          osg::Node*               patch)
+{
+    if ( tileKey.getExtent().intersects(_extent) )
+    {
+        updateSamples();
+    }
+}
+
+
+void 
+PolyhedralLineOfSightNode::traverse(osg::NodeVisitor& nv)
+{
+    osg::Group::traverse( nv );
+}
+
+
+bool
+PolyhedralLineOfSightNode::setPosition( const GeoPoint& pos )
+{
+    bool ok = LocalizedNode::setPosition( pos );
+    recalculateExtent();
+    updateSamples();
+    return ok;
+}
+
+
+void
+PolyhedralLineOfSightNode::dirty()
+{
+    //todo
+}
+
+
+void
+PolyhedralLineOfSightNode::recalculateExtent()
+{
+    // get a local2world matrix for the map position:
+    GeoPoint absMapPos = _mapPosition;
+    absMapPos.makeAbsolute( getMapNode()->getTerrain() );
+    osg::Matrix local2world;
+    absMapPos.createLocalToWorld( local2world );
+
+    // local offsets (east and north)
+    osg::Vec3d x( _distance.as(Units::METERS), 0.0, 0.0 );
+    osg::Vec3d y( 0.0, _distance.as(Units::METERS), 0.0 );
+
+    // convert these to map coords:
+    GeoPoint easting, northing;
+    easting.fromWorld( getMapNode()->getMapSRS(), x * local2world );
+    northing.fromWorld( getMapNode()->getMapSRS(), y * local2world );
+
+    // calculate the offsets:
+    double d_easting = easting.x() - absMapPos.x();
+    double d_northing = northing.y() - absMapPos.y();
+
+    // update the extent.
+    _extent = GeoExtent(
+        getMapNode()->getMapSRS(),
+        absMapPos.x() - d_easting, absMapPos.y() - d_northing,
+        absMapPos.x() + d_easting, absMapPos.y() + d_northing );
+
+    OE_INFO << LC << "Cached extent = " << _extent.toString() << std::endl;
+}
+
+
+// Builds the initial basic geometry set. This needs to happen (a) on startup, and 
+// (b) if something changes that would alter the vertex count or unit vector
+void
+PolyhedralLineOfSightNode::rebuildGeometry()
+{
+    // clear out the node first.
+    _geode->removeDrawables( 0, _geode->getNumDrawables() );
+
+    osg::Geometry* geom = new osg::Geometry();
+    geom->setUseVertexBufferObjects( true );
+
+    osg::Vec3Array* verts = new osg::Vec3Array();
+    geom->setVertexArray( verts );
+    verts->getVertexBufferObject()->setUsage(GL_DYNAMIC_DRAW_ARB);
+
+    osg::Vec4Array* colors = new osg::Vec4Array();
+    geom->setColorArray( colors );
+    geom->setColorBinding( osg::Geometry::BIND_PER_VERTEX );
+
+    osg::Vec3Array* normals = new osg::Vec3Array();
+    geom->setNormalArray( normals );
+    geom->setNormalBinding( osg::Geometry::BIND_PER_VERTEX );
+
+    double azim0   = _startAzim.as(Units::RADIANS);
+    double azim1   = _endAzim.as(Units::RADIANS);
+    double elev0   = _startElev.as(Units::RADIANS);
+    double elev1   = _endElev.as(Units::RADIANS);
+    double spacing = _spacing.as(Units::RADIANS);
+    if ( spacing <= 0.0 )
+        spacing = 0.1;
+
+    // the origin point
+    verts->push_back  ( osg::Vec3(0.0f, 0.0f, 0.0f) );
+    normals->push_back( osg::Vec3(0.0f, 0.0f, 1.0f) );
+    colors->push_back ( osg::Vec4(1.0f, 1.0f, 0.0f, 1.0f) );
+
+    // Build the unit-vector vertex list. Later this will be updated
+    // in updateGeometry.
+    _numRows = 0;
+    bool lastElev = false;
+    for( double elev = elev0; !lastElev; elev += spacing, _numRows++ )
+    {
+        if ( elev >= elev1 ) 
+        {
+            elev = elev1;
+            lastElev = true;
+        }
+
+        double cos_elev = cos(elev), sin_elev = sin(elev);
+
+        _numCols = 0;
+        bool lastAzim = false;
+        for( double azim = azim0; !lastAzim; azim += spacing, _numCols++ )
+        {
+            if ( azim >= azim1 )
+            {
+                azim = azim1;
+                lastAzim = true;
+            }
+
+            double cos_azim = cos(azim), sin_azim = sin(azim);
+
+            double x = cos_elev * sin_azim;
+            double y = cos_elev * cos_azim;
+            double z = sin_elev;
+
+            verts->push_back  ( osg::Vec3(x, y, z) );
+            normals->push_back( osg::Vec3(x, y, z) );
+            colors->push_back ( osg::Vec4(0,1,0,0.5f) );
+        }
+    }
+
+    // Build the primitive sets to render the polyhedron.
+    // first the walls.
+    osg::DrawElements* de = 
+        verts->size() > 0xFFFF ? (osg::DrawElements*)new osg::DrawElementsUShort  ( GL_TRIANGLES ) :
+        verts->size() > 0xFF   ? (osg::DrawElements*)new osg::DrawElementsUShort( GL_TRIANGLES ) :
+                                 (osg::DrawElements*)new osg::DrawElementsUByte ( GL_TRIANGLES );
+
+    unsigned rowOffset = 1; // to account for the origin point
+
+    OE_NOTICE << LC << "numRows = " << _numRows << ", numCols = " << _numCols << std::endl;
+
+    // outer surface
+    for( unsigned r=0; r<_numRows-1; ++r )
+    {
+        for( unsigned c=0; c<_numCols-1; ++c )
+        {
+            unsigned i  = rowOffset + c;
+            unsigned i2 = rowOffset + c + _numCols;
+
+            de->addElement( i );
+            de->addElement( i+1 );
+            de->addElement( i2 );
+            de->addElement( i2 );
+            de->addElement( i+1 );
+            de->addElement( i2+1 );
+        }
+        rowOffset += _numCols;
+    }
+
+#if 1
+    // top cap
+    for( unsigned c=0; c<_numCols-1; ++c )
+    {
+        de->addElement( 0 );
+        de->addElement( rowOffset + c + 1 );
+        de->addElement( rowOffset + c );
+    }
+#endif
+
+    geom->addPrimitiveSet( de );
+
+    // finally, make the geode and attach it.
+    _geode->addDrawable( geom );
+}
+
+
+void
+PolyhedralLineOfSightNode::updateSamples()
+{
+    if ( _geode->getNumDrawables() == 0 )
+        rebuildGeometry();
+
+    osg::Geometry* geom  = _geode->getDrawable(0)->asGeometry();
+    osg::Vec3Array* verts = dynamic_cast<osg::Vec3Array*>( geom->getVertexArray() );
+
+    double distance = _distance.as(Units::METERS);
+
+    // get the world coords and a l2w transform for the origin:
+    osg::Vec3d  originWorld;
+    osg::Matrix local2world, world2local;
+
+    Terrain* t = getMapNode()->getTerrain();
+    GeoPoint origin = getPosition();
+    origin.makeAbsolute( t );
+    origin.toWorld( originWorld, t );
+    origin.createLocalToWorld( local2world );
+    world2local.invert( local2world );
+
+    // set up an intersector:
+    osgUtil::LineSegmentIntersector* lsi = new osgUtil::LineSegmentIntersector( originWorld, originWorld );
+    osgUtil::IntersectionVisitor iv( lsi );
+
+    // intersect the verts (skip the origin point) with the map node.
+    for( osg::Vec3Array::iterator v = verts->begin()+1; v != verts->end(); ++v )
+    {
+        osg::Vec3d unit = *v;
+        unit.normalize();
+        unit *= distance;
+
+        osg::Vec3d world = unit * local2world;
+
+        if ( osg::equivalent(unit.length(), 0.0) )
+        {
+            OE_WARN << "problem." << std::endl;
+        }
+
+        lsi->reset();
+        lsi->setStart( originWorld );
+        lsi->setEnd( world );
+
+        OE_DEBUG << LC << "Ray: " <<
+            originWorld.x() << "," << originWorld.y() << "," << originWorld.z() << " => "
+            << world.x() << "," << world.y() << "," << world.z()
+            << std::endl;
+
+
+        getMapNode()->getTerrain()->accept( iv );
+
+        osgUtil::LineSegmentIntersector::Intersections& hits = lsi->getIntersections();
+        if ( !hits.empty() )
+        {
+            const osgUtil::LineSegmentIntersector::Intersection& hit = *hits.begin();
+            osg::Vec3d newV = hit.getWorldIntersectPoint() * world2local;
+            if ( newV.length() > 1.0 )
+                *v = newV;
+            else
+                *v = unit;
+        }
+        else
+        {
+            *v = unit;
+        }
+
+        //OE_NOTICE << "Radial point = " << v->x() << ", " << v->y() << ", " << v->z() << std::endl;
+    }
+
+    verts->dirty();
+    geom->dirtyBound();
+}
diff --git a/src/osgEarthUtil/RGBColorFilter b/src/osgEarthUtil/RGBColorFilter
new file mode 100644
index 0000000..3932445
--- /dev/null
+++ b/src/osgEarthUtil/RGBColorFilter
@@ -0,0 +1,60 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#ifndef OSGEARTHUTIL_RGB_COLOR_FILTER
+#define OSGEARTHUTIL_RGB_COLOR_FILTER
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ColorFilter>
+#include <osg/Uniform>
+
+namespace osgEarth { namespace Util
+{
+    /**
+    * Color filter that adjust the red/green/blue of a texel.
+    */
+    class OSGEARTHUTIL_EXPORT RGBColorFilter : public osgEarth::ColorFilter
+    {
+    public:
+        RGBColorFilter();
+        RGBColorFilter(const Config& conf);
+        virtual ~RGBColorFilter() { }
+
+        /**
+        * The red/green/blue offset, each component is [-1..1] (no change is at 0)
+        */
+        void setRGBOffset(const osg::Vec3f& rgb);
+        osg::Vec3f getRGBOffset(void) const;
+
+    public: // ColorFilter
+        virtual std::string getEntryPointFunctionName(void) const;
+        virtual void install(osg::StateSet* stateSet) const;
+        virtual Config getConfig() const;
+
+    protected:
+        unsigned m_instanceId;
+        osg::ref_ptr<osg::Uniform> m_rgb;
+
+        void init();
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_RGB_COLOR_FILTER
diff --git a/src/osgEarthUtil/RGBColorFilter.cpp b/src/osgEarthUtil/RGBColorFilter.cpp
new file mode 100644
index 0000000..e002321
--- /dev/null
+++ b/src/osgEarthUtil/RGBColorFilter.cpp
@@ -0,0 +1,130 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*
+* Original author: Thomas Lerman
+*/
+#include <osgEarthUtil/RGBColorFilter>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/StringUtils>
+#include <osgEarth/ThreadingUtils>
+#include <osg/Program>
+#include <OpenThreads/Atomic>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    static OpenThreads::Atomic s_uniformNameGen;
+
+    static const char* s_localShaderSource =
+        "#version 110\n"
+        "uniform vec3 __UNIFORM_NAME__;\n"
+
+        "void __ENTRY_POINT__(in int slot, inout vec4 color)\n"
+        "{\n"
+        "    color.rgb = clamp(color.rgb + __UNIFORM_NAME__.rgb, 0.0, 1.0); \n"
+        "} \n";
+}
+
+//---------------------------------------------------------------------------
+
+#define FUNCTION_PREFIX "osgearthutil_rgbColorFilter_"
+#define UNIFORM_PREFIX  "osgearthutil_u_rgb_"
+
+//---------------------------------------------------------------------------
+
+RGBColorFilter::RGBColorFilter(void)
+{
+    init();
+}
+
+void RGBColorFilter::init()
+{
+    // Generate a unique name for this filter's uniform. This is necessary
+    // so that each layer can have a unique uniform and entry point.
+    m_instanceId = (++s_uniformNameGen) - 1;
+    m_rgb = new osg::Uniform(osg::Uniform::FLOAT_VEC3, (osgEarth::Stringify() << UNIFORM_PREFIX << m_instanceId));
+    m_rgb->set(osg::Vec3f(0.0f, 0.0f, 0.0f));
+}
+
+void RGBColorFilter::setRGBOffset(const osg::Vec3f& value)
+{
+    m_rgb->set(value);
+}
+
+osg::Vec3f RGBColorFilter::getRGBOffset(void) const
+{
+    osg::Vec3f value;
+    m_rgb->get(value);
+    return (value);
+}
+
+std::string RGBColorFilter::getEntryPointFunctionName(void) const
+{
+    return (osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId);
+}
+
+void RGBColorFilter::install(osg::StateSet* stateSet) const
+{
+    // safe: will not add twice.
+    stateSet->addUniform(m_rgb.get());
+
+    osgEarth::VirtualProgram* vp = dynamic_cast<osgEarth::VirtualProgram*>(stateSet->getAttribute(VirtualProgram::SA_TYPE));
+    if (vp)
+    {
+        // build the local shader (unique per instance). We will
+        // use a template with search and replace for this one.
+        std::string entryPoint = osgEarth::Stringify() << FUNCTION_PREFIX << m_instanceId;
+        std::string code = s_localShaderSource;
+        osgEarth::replaceIn(code, "__UNIFORM_NAME__", m_rgb->getName());
+        osgEarth::replaceIn(code, "__ENTRY_POINT__", entryPoint);
+
+        osg::Shader* main = new osg::Shader(osg::Shader::FRAGMENT, code);
+        //main->setName(entryPoint);
+        vp->setShader(entryPoint, main);
+    }
+}
+
+
+//---------------------------------------------------------------------------
+
+OSGEARTH_REGISTER_COLORFILTER( rgb, osgEarth::Util::RGBColorFilter );
+
+
+RGBColorFilter::RGBColorFilter(const Config& conf)
+{
+    init();
+
+    osg::Vec3f val;
+    val[0] = conf.value("r", 0.0);
+    val[1] = conf.value("g", 0.0);
+    val[2] = conf.value("b", 0.0);
+    setRGBOffset( val );
+}
+
+Config
+RGBColorFilter::getConfig() const
+{
+    osg::Vec3f val = getRGBOffset();
+    Config conf("rgb");
+    conf.add( "r", val[0] );
+    conf.add( "g", val[1] );
+    conf.add( "b", val[2] );
+    return conf;
+}
diff --git a/src/osgEarthUtil/RadialLineOfSight b/src/osgEarthUtil/RadialLineOfSight
new file mode 100644
index 0000000..ff1cc87
--- /dev/null
+++ b/src/osgEarthUtil/RadialLineOfSight
@@ -0,0 +1,234 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTHUTIL_LINEOFSIGHT
+#define OSGEARTHUTIL_LINEOFSIGHT
+
+#include <osgEarthUtil/LineOfSight>
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarth/Terrain>
+#include <osgEarth/GeoData>
+#include <osgEarth/Draggers>
+
+namespace osgEarth { namespace Util
+{
+    /**
+     * A Node that can be used to display radial line of sight calculations
+     */
+    class OSGEARTHUTIL_EXPORT RadialLineOfSightNode : public LineOfSightNode, public MapNodeObserver
+    {
+    public:
+        /**
+         * Create a new RadialLineOfSightNode
+         * @param mapNode
+         *        The MapNode this RadialLineOfSightNode is operating on.
+         */
+        RadialLineOfSightNode( MapNode* mapNode );
+
+        virtual ~RadialLineOfSightNode();
+
+        /**
+         * Sets the radius in meters
+         */
+        void setRadius( double radius );
+        
+        /**
+         * Gets the radius in meters
+         */
+        double getRadius() const;
+
+        /**
+         * Sets the number of spokes in the radial line of sight calculation
+         */
+        void setNumSpokes( int numSpokes );
+
+        /**
+         * Gets the number of spokes in the radial line of sight calculation
+         */
+        int getNumSpokes() const;
+
+        /**
+         * Gets the center point in world coordinates
+         */
+        const osg::Vec3d& getCenterWorld() const;
+
+        /**
+         * Gets the center point
+         */
+        const GeoPoint& getCenter() const;
+
+        /**
+         * Set the center point.  The point should be in the Map's coordinate system.  So if you're dealing with a geocentric map
+         * the location should be in the form lon, lat, elevation
+         */
+        void setCenter(const GeoPoint& center);
+
+        /**
+         * Sets the good color
+         */
+        void setGoodColor( const osg::Vec4f &color );
+
+        /**
+         * Gets the good color
+         */
+        const osg::Vec4f& getGoodColor() const;
+
+
+        /**
+         * Sets the bad color
+         */
+        void setBadColor( const osg::Vec4f &color );
+
+        /**
+         * Gets the bad color
+         */
+        const osg::Vec4f& getBadColor() const;
+
+        /**
+         * Sets the outline color
+         */
+        void setOutlineColor( const osg::Vec4f &color );
+
+        /**
+         * Gets the outline color
+         */
+        const osg::Vec4f& getOutlineColor() const;
+
+        /**
+         * Gets the display mode
+         */
+        LineOfSight::DisplayMode getDisplayMode() const;
+
+        /*
+         * Sets the display mode
+         */
+        void setDisplayMode( LineOfSight::DisplayMode displayMode );
+
+        /**
+         * Gets whether to draw the fill of this RadialLineOfSightNode
+         */
+        bool getFill() const;
+
+        /*
+         * Sets whether to draw the fill of this RadialLineOfSightNode
+         */
+        void setFill( bool fill );
+
+
+        void addChangedCallback( LOSChangedCallback* callback );
+        
+        void removeChangedCallback( LOSChangedCallback* callback );
+
+
+        /**
+         * Called when the underlying terrain has changed.
+         */
+        void terrainChanged( const osgEarth::TileKey& tileKey, osg::Node* terrain );
+
+        virtual void traverse(osg::NodeVisitor& nv);
+
+        bool getTerrainOnly() const;
+        void setTerrainOnly( bool terrainOnly );
+
+
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        MapNode* getMapNode() { return _mapNode.get(); }
+
+
+    private:
+        osg::Node* getNode();
+        void compute(osg::Node* node, bool backgroundThread = false);
+        void compute_line(osg::Node* node, bool backgroundThread = false);
+        void compute_fill(osg::Node* node, bool backgroundThread = false);
+        int _numSpokes;
+        double _radius;
+
+        LineOfSight::DisplayMode _displayMode;    
+        bool _fill;
+        osg::Vec4 _goodColor;
+        osg::Vec4 _badColor;
+        osg::Vec4 _outlineColor;
+        GeoPoint   _center;
+        //osg::Vec3d _center;
+        osg::Vec3d _centerWorld;
+        osg::observer_ptr< MapNode > _mapNode;
+        //AltitudeMode _altitudeMode;
+        LOSChangedCallbackList _changedCallbacks;
+        osg::ref_ptr< osg::Node > _pendingNode;
+        osg::ref_ptr < osgEarth::TerrainCallback > _terrainChangedCallback;
+        bool _terrainOnly;
+    };
+
+    /**********************************************************************/
+
+     /**
+     * An update callback that allows you to attach a RadialLineOfSightNode to a moving node.
+     * The update callback will update the center point of the calcuation to follow the node.
+     *
+     * Example:
+     * RadialLineOfSightNode* los = new RadialLineOfSightNode(myMapNode);
+     * los->setUpdateCallback( new RadialLineOfSightTether( myNode ) );
+     */
+    class OSGEARTHUTIL_EXPORT RadialLineOfSightTether : public osg::NodeCallback
+    {
+    public:
+        RadialLineOfSightTether(osg::Node* node);
+        virtual ~RadialLineOfSightTether() { }
+        virtual void operator()(osg::Node* node, osg::NodeVisitor* nv);  
+
+        osg::Node* node() { return _node.get(); }
+
+    private:
+        osg::ref_ptr< osg::Node > _node;
+    };
+
+
+    /**********************************************************************/
+
+    class OSGEARTHUTIL_EXPORT RadialLineOfSightEditor : public osg::Group
+    {
+    public:
+        /**
+         * Create a new RadialLineOfSightEditor
+         * @param los
+         *        The RadialLineOfSightNode to edit
+         */
+        RadialLineOfSightEditor(RadialLineOfSightNode* los);    
+        virtual ~RadialLineOfSightEditor();
+
+         /**
+         *Updates the position of the dragger to represent the actual location of the RadialLineOfSightNode.
+         *This should be called if the los is changed outside of the editor and would probably benefit
+         *from the RadialLineOfSightNode having a callback that notifies listeners that the start/end points have changed.
+         */
+        void updateDraggers();
+    private:
+        osg::ref_ptr< RadialLineOfSightNode > _los;
+        Dragger* _dragger;
+        osg::ref_ptr< LOSChangedCallback > _callback;
+    };
+
+
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_LINEOFSIGHT
diff --git a/src/osgEarthUtil/RadialLineOfSight.cpp b/src/osgEarthUtil/RadialLineOfSight.cpp
new file mode 100644
index 0000000..4916932
--- /dev/null
+++ b/src/osgEarthUtil/RadialLineOfSight.cpp
@@ -0,0 +1,842 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/RadialLineOfSight>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/DPLineSegmentIntersector>
+#include <osgSim/LineOfSight>
+#include <osgUtil/IntersectionVisitor>
+#include <osgUtil/LineSegmentIntersector>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+#if 0
+    bool getRelativeWorld(double x, double y, double relativeHeight, MapNode* mapNode, osg::Vec3d& world )
+    {
+        GeoPoint mapPoint(mapNode->getMapSRS(), x, y);
+        osg::Vec3d pos;
+        mapPoint.toWorld( pos, mapNode->getTerrain() );
+        //mapNode->getMap()->toWorldPoint(mapPoint, pos);
+
+        osg::Vec3d up(0,0,1);
+        const osg::EllipsoidModel* em = mapNode->getMap()->getProfile()->getSRS()->getEllipsoid();
+        if (em)
+        {
+            up = em->computeLocalUpVector( world.x(), world.y(), world.z());
+        }    
+        up.normalize();
+
+        double segOffset = 50000;
+
+        osg::Vec3d start = pos + (up * segOffset);
+        osg::Vec3d end = pos - (up * segOffset);
+        
+        osgUtil::LineSegmentIntersector* i = new osgUtil::LineSegmentIntersector( start, end );
+        
+        osgUtil::IntersectionVisitor iv;    
+        iv.setIntersector( i );
+        mapNode->getTerrainEngine()->accept( iv );
+
+        osgUtil::LineSegmentIntersector::Intersections& results = i->getIntersections();
+        if ( !results.empty() )
+        {
+            const osgUtil::LineSegmentIntersector::Intersection& result = *results.begin();
+            world = result.getWorldIntersectPoint();
+            world += up * relativeHeight;
+            return true;
+        }
+        return false;    
+    }
+#endif
+
+
+    osg::Vec3d getNodeCenter(osg::Node* node)
+    {
+        osg::NodePathList nodePaths = node->getParentalNodePaths();
+        if ( nodePaths.empty() )
+            return node->getBound().center();
+
+        osg::NodePath path = nodePaths[0];
+
+        osg::Matrixd localToWorld = osg::computeLocalToWorld( path );
+        osg::Vec3d center = osg::Vec3d(0,0,0) * localToWorld;
+
+        // if the tether node is a MT, we are set. If it's not, we need to get the
+        // local bound and add its translation to the localToWorld. We cannot just use
+        // the bounds directly because they are single precision (unless you built OSG
+        // with double-precision bounding spheres, which you probably did not :)
+        if ( !dynamic_cast<osg::MatrixTransform*>( node ) )
+        {
+            const osg::BoundingSphere& bs = node->getBound();
+            center += bs.center();
+        }   
+        return center;
+    }
+}
+
+//------------------------------------------------------------------------
+
+namespace
+{
+    class RadialLineOfSightNodeTerrainChangedCallback : public osgEarth::TerrainCallback
+    {
+    public:
+        RadialLineOfSightNodeTerrainChangedCallback( RadialLineOfSightNode* los ):
+          _los(los)
+        {
+        }
+
+        virtual void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext& )
+        {
+            _los->terrainChanged( tileKey, terrain );
+        }
+
+    private:
+        RadialLineOfSightNode* _los;
+    };
+}
+
+
+RadialLineOfSightNode::RadialLineOfSightNode( MapNode* mapNode):
+_mapNode( mapNode ),
+_numSpokes(20),
+_radius(500),
+//_center(0,0,0),
+_goodColor(0.0f, 1.0f, 0.0f, 1.0f),
+_badColor(1.0f, 0.0f, 0.0f, 1.0f),
+_outlineColor( 1.0f, 1.0f, 1.0f, 1.0f),
+_displayMode( LineOfSight::MODE_SPLIT ),
+//_altitudeMode( ALTMODE_ABSOLUTE ),
+_fill(false),
+_terrainOnly( false )
+{
+    compute(getNode());
+    _terrainChangedCallback = new RadialLineOfSightNodeTerrainChangedCallback( this );
+    _mapNode->getTerrain()->addTerrainCallback( _terrainChangedCallback.get() );        
+    setNumChildrenRequiringUpdateTraversal( 1 );
+}
+
+RadialLineOfSightNode::~RadialLineOfSightNode()
+{
+    setMapNode( 0L );
+}
+
+void
+RadialLineOfSightNode::setMapNode( MapNode* mapNode )
+{
+    MapNode* oldMapNode = getMapNode();
+
+    if ( oldMapNode != mapNode )
+    {
+        if ( oldMapNode )
+        {
+            if ( _terrainChangedCallback.valid() )
+            {
+                oldMapNode->getTerrain()->removeTerrainCallback( _terrainChangedCallback.get() );
+            }
+        }
+
+        _mapNode = mapNode;
+
+        if ( _mapNode.valid() && _terrainChangedCallback.valid() )
+        {
+            _mapNode->getTerrain()->addTerrainCallback( _terrainChangedCallback.get() );
+        }
+
+        compute( getNode() );
+    }
+}
+
+bool
+RadialLineOfSightNode::getFill() const
+{
+    return _fill;
+}
+
+void
+RadialLineOfSightNode::setFill( bool fill)
+{
+    if (_fill != fill)
+    {
+        _fill = fill;
+        compute(getNode() );
+    }
+}
+
+double
+RadialLineOfSightNode::getRadius() const
+{
+    return _radius;
+}
+
+void
+RadialLineOfSightNode::setRadius(double radius)
+{
+    if (_radius != radius)
+    {
+        _radius = osg::clampAbove(radius, 1.0);
+        compute(getNode());
+    }
+}
+
+int
+RadialLineOfSightNode::getNumSpokes() const
+{
+    return _numSpokes;
+}
+
+void RadialLineOfSightNode::setNumSpokes(int numSpokes)
+{
+    if (numSpokes != _numSpokes)
+    {
+        _numSpokes = osg::clampAbove(numSpokes, 1);
+        compute(getNode());
+    }
+}
+
+const osg::Vec3d&
+RadialLineOfSightNode::getCenterWorld() const
+{
+    return _centerWorld;
+}
+
+
+
+const GeoPoint&
+RadialLineOfSightNode::getCenter() const
+{
+    return _center;
+}
+
+void
+RadialLineOfSightNode::setCenter(const GeoPoint& center)
+{
+    if (_center != center)
+    {
+        _center = center;
+        compute(getNode());
+    }
+}
+
+bool
+RadialLineOfSightNode::getTerrainOnly() const
+{
+    return _terrainOnly;
+}
+
+void RadialLineOfSightNode::setTerrainOnly( bool terrainOnly )
+{
+    if (_terrainOnly != terrainOnly)
+    {
+        _terrainOnly = terrainOnly;
+        compute(getNode());
+    }
+}
+
+osg::Node*
+RadialLineOfSightNode::getNode()
+{
+    if (_terrainOnly && getMapNode()) return getMapNode()->getTerrainEngine();
+    return _mapNode.get();
+}
+
+
+void
+RadialLineOfSightNode::terrainChanged( const osgEarth::TileKey& tileKey, osg::Node* terrain )
+{
+    OE_DEBUG << "RadialLineOfSightNode::terrainChanged" << std::endl;
+    //Make a temporary group that contains both the old MapNode as well as the new incoming terrain.
+    //Because this function is called from the database pager thread we need to include both b/c 
+    //the new terrain isn't yet merged with the new terrain.
+    osg::ref_ptr < osg::Group > group = new osg::Group;
+    group->addChild( terrain );
+    group->addChild( getNode() );
+    compute( group, true );
+}
+
+void
+RadialLineOfSightNode::compute(osg::Node* node, bool backgroundThread)
+{
+    if (_fill)
+    {
+        compute_fill( node, backgroundThread );
+    }
+    else
+    {
+        compute_line( node, backgroundThread );
+    }
+}
+
+void
+RadialLineOfSightNode::compute_line(osg::Node* node, bool backgroundThread)
+{    
+    if ( !getMapNode() )
+        return;
+
+    GeoPoint centerMap;
+    _center.transform( getMapNode()->getMapSRS(), centerMap );
+    centerMap.toWorld( _centerWorld, getMapNode()->getTerrain() );
+
+    bool isProjected = getMapNode()->getMapSRS()->isProjected();
+    osg::Vec3d up = isProjected ? osg::Vec3d(0,0,1) : osg::Vec3d(_centerWorld);
+    up.normalize();
+
+    //Get the "side" vector
+    osg::Vec3d side = isProjected ? osg::Vec3d(1,0,0) : up ^ osg::Vec3d(0,0,1);
+
+    //Get the number of spokes
+    double delta = osg::PI * 2.0 / (double)_numSpokes;
+    
+    osg::Geometry* geometry = new osg::Geometry;
+    geometry->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* verts = new osg::Vec3Array();
+    verts->reserve(_numSpokes * 5);
+    geometry->setVertexArray( verts );
+
+    osg::Vec4Array* colors = new osg::Vec4Array();
+    colors->reserve( _numSpokes * 5 );
+
+    geometry->setColorArray( colors );
+    geometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
+
+    osg::Vec3d previousEnd;
+    osg::Vec3d firstEnd;
+
+    osg::ref_ptr<osgUtil::IntersectorGroup> ivGroup = new osgUtil::IntersectorGroup();
+
+    for (unsigned int i = 0; i < (unsigned int)_numSpokes; i++)
+    {
+        double angle = delta * (double)i;
+        osg::Quat quat(angle, up );
+        osg::Vec3d spoke = quat * (side * _radius);
+        osg::Vec3d end = _centerWorld + spoke;
+        osg::ref_ptr<DPLineSegmentIntersector> dplsi = new DPLineSegmentIntersector( _centerWorld, end );
+        ivGroup->addIntersector( dplsi.get() );
+    }
+
+    osgUtil::IntersectionVisitor iv;
+    iv.setIntersector( ivGroup.get() );
+
+    node->accept( iv );
+
+    for (unsigned int i = 0; i < (unsigned int)_numSpokes; i++)
+    {
+        DPLineSegmentIntersector* los = dynamic_cast<DPLineSegmentIntersector*>(ivGroup->getIntersectors()[i].get());
+        DPLineSegmentIntersector::Intersections& hits = los->getIntersections();
+
+        osg::Vec3d start = los->getStart();
+        osg::Vec3d end = los->getEnd();
+
+        osg::Vec3d hit;
+        bool hasLOS = hits.empty();
+        if (!hasLOS)
+        {
+            hit = hits.begin()->getWorldIntersectPoint();
+        }
+
+        if (hasLOS)
+        {
+            verts->push_back( start - _centerWorld );
+            verts->push_back( end - _centerWorld );
+            colors->push_back( _goodColor );
+            colors->push_back( _goodColor );
+        }
+        else
+        {
+            if (_displayMode == LineOfSight::MODE_SPLIT)
+            {
+                verts->push_back( start - _centerWorld );
+                verts->push_back( hit - _centerWorld  );
+                colors->push_back( _goodColor );
+                colors->push_back( _goodColor );
+
+                verts->push_back( hit - _centerWorld );
+                verts->push_back( end - _centerWorld );
+                colors->push_back( _badColor );
+                colors->push_back( _badColor );
+            }
+            else if (_displayMode == LineOfSight::MODE_SINGLE)
+            {
+                verts->push_back( start - _centerWorld );
+                verts->push_back( end - _centerWorld );
+                colors->push_back( _badColor );                                
+                colors->push_back( _badColor );                
+            }
+        }
+
+
+        if (i > 0)
+        {
+            verts->push_back( end - _centerWorld );
+            verts->push_back( previousEnd - _centerWorld );
+            colors->push_back( _outlineColor );
+            colors->push_back( _outlineColor );
+        }
+        else
+        {
+            firstEnd = end;
+        }
+
+        previousEnd = end;
+    }
+
+
+    //Add the last outside of circle
+    verts->push_back( firstEnd - _centerWorld );
+    verts->push_back( previousEnd - _centerWorld );
+    colors->push_back( osg::Vec4(1,1,1,1));
+    colors->push_back( osg::Vec4(1,1,1,1));
+
+    geometry->addPrimitiveSet(new osg::DrawArrays(GL_LINES, 0, verts->size()));
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geometry );
+
+    getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+
+    osg::MatrixTransform* mt = new osg::MatrixTransform;
+    mt->setMatrix(osg::Matrixd::translate(_centerWorld));
+    mt->addChild(geode);
+    
+    if (!backgroundThread)
+    {
+        //Remove all the children
+        removeChildren(0, getNumChildren());
+        addChild( mt );  
+    }
+    else
+    {
+        _pendingNode = mt;
+    }
+
+    for( LOSChangedCallbackList::iterator i = _changedCallbacks.begin(); i != _changedCallbacks.end(); i++ )
+    {
+        i->get()->onChanged();
+    }	
+}
+
+void
+RadialLineOfSightNode::compute_fill(osg::Node* node, bool backgroundThread)
+{
+    if ( !getMapNode() )
+        return;
+
+    GeoPoint centerMap;
+    _center.transform( getMapNode()->getMapSRS(), centerMap );
+    centerMap.toWorld( _centerWorld, getMapNode()->getTerrain() );
+
+    bool isProjected = getMapNode()->getMapSRS()->isProjected();
+
+    osg::Vec3d up = isProjected ? osg::Vec3d(0,0,1) : osg::Vec3d(_centerWorld);
+    up.normalize();
+
+    //Get the "side" vector
+    osg::Vec3d side = isProjected ? osg::Vec3d(1,0,0) : up ^ osg::Vec3d(0,0,1);
+
+    //Get the number of spokes
+    double delta = osg::PI * 2.0 / (double)_numSpokes;
+    
+    osg::Geometry* geometry = new osg::Geometry;
+    geometry->setUseVertexBufferObjects(true);
+
+    osg::Vec3Array* verts = new osg::Vec3Array();
+    verts->reserve(_numSpokes * 2);
+    geometry->setVertexArray( verts );
+
+    osg::Vec4Array* colors = new osg::Vec4Array();
+    colors->reserve( _numSpokes * 2 );
+
+    geometry->setColorArray( colors );
+    geometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
+
+    osg::ref_ptr<osgUtil::IntersectorGroup> ivGroup = new osgUtil::IntersectorGroup();
+
+    for (unsigned int i = 0; i < (unsigned int)_numSpokes; i++)
+    {
+        double angle = delta * (double)i;
+        osg::Quat quat(angle, up );
+        osg::Vec3d spoke = quat * (side * _radius);
+        osg::Vec3d end = _centerWorld + spoke;        
+        osg::ref_ptr<DPLineSegmentIntersector> dplsi = new DPLineSegmentIntersector( _centerWorld, end );
+        ivGroup->addIntersector( dplsi.get() );
+    }
+
+    osgUtil::IntersectionVisitor iv;
+    iv.setIntersector( ivGroup.get() );
+
+    node->accept( iv );
+
+    for (unsigned int i = 0; i < (unsigned int)_numSpokes; i++)
+    {
+        //Get the current hit
+        DPLineSegmentIntersector* los = dynamic_cast<DPLineSegmentIntersector*>(ivGroup->getIntersectors()[i].get());
+        DPLineSegmentIntersector::Intersections& hits = los->getIntersections();
+
+        osg::Vec3d currEnd = los->getEnd();
+        bool currHasLOS = hits.empty();
+        osg::Vec3d currHit = currHasLOS ? osg::Vec3d() : hits.begin()->getWorldIntersectPoint();
+
+        //Get the next hit
+        unsigned int nextIndex = i + 1;
+        if (nextIndex == _numSpokes) nextIndex = 0;
+        DPLineSegmentIntersector* losNext = static_cast<DPLineSegmentIntersector*>(ivGroup->getIntersectors()[nextIndex].get());
+        DPLineSegmentIntersector::Intersections& hitsNext = losNext->getIntersections();
+
+        osg::Vec3d nextEnd = losNext->getEnd();
+        bool nextHasLOS = hitsNext.empty();
+        osg::Vec3d nextHit = nextHasLOS ? osg::Vec3d() : hitsNext.begin()->getWorldIntersectPoint();
+        
+        if (currHasLOS && nextHasLOS)
+        {
+            //Both rays have LOS            
+            verts->push_back( _centerWorld - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( nextEnd - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( currEnd - _centerWorld );
+            colors->push_back( _goodColor );
+        }        
+        else if (!currHasLOS && !nextHasLOS)
+        {
+            //Both rays do NOT have LOS
+
+            //Draw the "good triangle"            
+            verts->push_back( _centerWorld - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( nextHit - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( currHit - _centerWorld );                       
+            colors->push_back( _goodColor );
+
+            //Draw the two bad triangles
+            verts->push_back( currHit - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( nextHit - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( nextEnd - _centerWorld );                       
+            colors->push_back( _badColor );
+
+            verts->push_back( currHit - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( nextEnd - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( currEnd - _centerWorld );                       
+            colors->push_back( _badColor );
+        }
+        else if (!currHasLOS && nextHasLOS)
+        {
+            //Current does not have LOS but next does
+
+            //Draw the good portion
+            verts->push_back( _centerWorld - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( nextEnd - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( currHit - _centerWorld );                       
+            colors->push_back( _goodColor );
+
+            //Draw the bad portion
+            verts->push_back( currHit - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( nextEnd - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( currEnd - _centerWorld );                       
+            colors->push_back( _badColor );
+        }
+        else if (currHasLOS && !nextHasLOS)
+        {
+            //Current does not have LOS but next does
+            //Draw the good portion
+            verts->push_back( _centerWorld - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( nextHit - _centerWorld );
+            colors->push_back( _goodColor );
+            
+            verts->push_back( currEnd - _centerWorld );                       
+            colors->push_back( _goodColor );
+
+            //Draw the bad portion
+            verts->push_back( nextHit - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( nextEnd - _centerWorld );
+            colors->push_back( _badColor );
+            
+            verts->push_back( currEnd - _centerWorld );                       
+            colors->push_back( _badColor );
+        }               
+    }
+    
+
+    geometry->addPrimitiveSet(new osg::DrawArrays(GL_TRIANGLES, 0, verts->size()));
+
+    osg::Geode* geode = new osg::Geode();
+    geode->addDrawable( geometry );
+
+    getOrCreateStateSet()->setMode(GL_LIGHTING, osg::StateAttribute::OFF);
+    getOrCreateStateSet()->setMode(GL_BLEND, osg::StateAttribute::ON);
+
+    osg::MatrixTransform* mt = new osg::MatrixTransform;
+    mt->setMatrix(osg::Matrixd::translate(_centerWorld));
+    mt->addChild(geode);
+    
+    if (!backgroundThread)
+    {
+        //Remove all the children
+        removeChildren(0, getNumChildren());
+        addChild( mt );  
+    }
+    else
+    {
+        _pendingNode = mt;
+    }
+
+    for( LOSChangedCallbackList::iterator i = _changedCallbacks.begin(); i != _changedCallbacks.end(); i++ )
+    {
+        i->get()->onChanged();
+    }	
+}
+
+void
+RadialLineOfSightNode::traverse(osg::NodeVisitor& nv)
+{
+    if (nv.getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR)
+    {
+        if (_pendingNode.valid())
+        {
+            removeChildren(0, getNumChildren());
+            addChild( _pendingNode.get());
+            _pendingNode = 0;            
+        }
+    }
+    osg::Group::traverse(nv);
+}
+
+
+void
+RadialLineOfSightNode::setGoodColor( const osg::Vec4f &color )
+{
+    if (_goodColor != color)
+    {
+        _goodColor = color;
+        compute(getNode());
+    }
+}
+
+const osg::Vec4f&
+RadialLineOfSightNode::getGoodColor() const
+{
+    return _goodColor;
+}
+
+void
+RadialLineOfSightNode::setBadColor( const osg::Vec4f &color )
+{
+    if (_badColor != color)
+    {
+        _badColor = color;
+        compute(getNode());
+    }
+}
+
+const osg::Vec4f&
+RadialLineOfSightNode::getBadColor() const
+{
+    return _badColor;
+}
+
+void
+RadialLineOfSightNode::setOutlineColor( const osg::Vec4f &color )
+{
+    if (_outlineColor != color)
+    {
+        _outlineColor = color;
+        compute(getNode());
+    }
+}
+
+const osg::Vec4f&
+RadialLineOfSightNode::getOutlineColor() const
+{
+    return _outlineColor;
+}
+
+LineOfSight::DisplayMode
+RadialLineOfSightNode::getDisplayMode() const
+{
+    return _displayMode;
+}
+
+void
+RadialLineOfSightNode::setDisplayMode( LineOfSight::DisplayMode displayMode )
+{
+    if (_displayMode != displayMode)
+    {
+        _displayMode = displayMode;
+        compute(getNode());
+    }
+}
+
+void
+RadialLineOfSightNode::addChangedCallback( LOSChangedCallback* callback )
+{
+    _changedCallbacks.push_back( callback );
+}
+
+void
+RadialLineOfSightNode::removeChangedCallback( LOSChangedCallback* callback )
+{
+    LOSChangedCallbackList::iterator i = std::find( _changedCallbacks.begin(), _changedCallbacks.end(), callback);
+    if (i != _changedCallbacks.end())
+    {
+        _changedCallbacks.erase( i );
+    }    
+}
+
+
+
+/**********************************************************************/
+RadialLineOfSightTether::RadialLineOfSightTether(osg::Node* node):
+_node(node)
+{
+}
+
+void 
+RadialLineOfSightTether::operator()(osg::Node* node, osg::NodeVisitor* nv)
+{
+    if (nv->getVisitorType() == osg::NodeVisitor::UPDATE_VISITOR)
+    {
+        RadialLineOfSightNode* los = static_cast<RadialLineOfSightNode*>(node);
+
+        if ( los->getMapNode() )
+        {
+            osg::Vec3d worldCenter = getNodeCenter( _node );
+
+            //Convert center to mappoint since that is what LOS expects
+            GeoPoint mapCenter;
+            mapCenter.fromWorld( los->getMapNode()->getMapSRS(), worldCenter );
+
+            los->setCenter( mapCenter ); //mapCenter.vec3d() );
+        }
+    }
+    traverse(node, nv);
+}
+
+
+/**********************************************************************/
+
+
+namespace
+{
+    struct RadialUpdateDraggersCallback : public LOSChangedCallback
+    {
+    public:
+        RadialUpdateDraggersCallback( RadialLineOfSightEditor * editor ):
+          _editor( editor )
+        {
+
+        }
+        virtual void onChanged()
+        {
+            _editor->updateDraggers();
+        }
+
+        RadialLineOfSightEditor *_editor;
+    };
+
+        
+    class RadialLOSDraggerCallback : public Dragger::PositionChangedCallback
+    {
+    public:
+        RadialLOSDraggerCallback(RadialLineOfSightNode* los):
+          _los(los)
+          {
+          }
+
+          virtual void onPositionChanged(const Dragger* sender, const osgEarth::GeoPoint& position)
+          {
+              _los->setCenter( position );
+
+              //GeoPoint location(position);
+              //if (_los->getAltitudeMode() == ALTMODE_RELATIVE)
+              //{
+              //    double z = _los->getCenter().z();
+              //    location.z() = z;
+              //}                  
+              //_los->setCenter( location.vec3d() );
+          }
+
+          RadialLineOfSightNode* _los;
+          bool _start;
+    };
+}
+
+
+
+/**********************************************************************/
+
+RadialLineOfSightEditor::RadialLineOfSightEditor(RadialLineOfSightNode* los):
+_los(los)
+{
+
+    _dragger  = new SphereDragger(_los->getMapNode());
+    _dragger->addPositionChangedCallback(new RadialLOSDraggerCallback(_los ) );    
+    static_cast<SphereDragger*>(_dragger)->setColor(osg::Vec4(0,0,1,0));
+    addChild(_dragger);    
+
+    _callback = new RadialUpdateDraggersCallback( this );
+    _los->addChangedCallback( _callback.get() );
+
+    updateDraggers();
+}
+
+RadialLineOfSightEditor::~RadialLineOfSightEditor()
+{
+    _los->removeChangedCallback( _callback.get() );
+}
+
+
+
+void
+RadialLineOfSightEditor::updateDraggers()
+{
+    if ( _los->getMapNode() )
+    {
+        osg::Vec3d center = _los->getCenterWorld();             
+        GeoPoint centerMap;
+        centerMap.fromWorld(_los->getMapNode()->getMapSRS(), center);    
+        _dragger->setPosition(centerMap, false);        
+    }
+}
diff --git a/src/osgEarthUtil/ShadowUtils b/src/osgEarthUtil/ShadowUtils
new file mode 100644
index 0000000..efc9446
--- /dev/null
+++ b/src/osgEarthUtil/ShadowUtils
@@ -0,0 +1,37 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTH_SHADOW_UTILS_H
+#define OSGEARTH_SHADOW_UTILS_H  1
+
+#include <osgEarthUtil/Common>
+#include <osg/Group>
+#include <osgShadow/ShadowedScene>
+
+namespace osgEarth { namespace Util 
+{
+    struct OSGEARTHUTIL_EXPORT ShadowUtils
+    {
+        static bool setUpShadows(
+            osgShadow::ShadowedScene* sscene,
+            osg::Group*               root);
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTH_SHADOW_UTILS_H
diff --git a/src/osgEarthUtil/ShadowUtils.cpp b/src/osgEarthUtil/ShadowUtils.cpp
new file mode 100644
index 0000000..ae5d3d2
--- /dev/null
+++ b/src/osgEarthUtil/ShadowUtils.cpp
@@ -0,0 +1,212 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/ShadowUtils>
+
+#include <osgEarth/MapNode>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Notify>
+#include <osgEarth/ShaderComposition>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/TextureCompositor>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
+
+#include <osg/StateSet>
+#include <osgShadow/StandardShadowMap>
+#include <osgShadow/ViewDependentShadowMap>
+
+#include <sstream>
+
+#define LC "[ShadowUtils] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+namespace
+{
+    MapNode* findMapNode(osg::Group* node)
+    {
+        return findTopMostNodeOfType<MapNode>(node);
+    }
+
+    osgShadow::ViewDependentShadowMap*
+        getTechniqueAsVdsm(osgShadow::ShadowedScene* sscene)
+    {
+        osgShadow::ShadowTechnique* st = sscene->getShadowTechnique();
+        return dynamic_cast<osgShadow::ViewDependentShadowMap*>(st);
+    }
+
+    bool setShadowUnit(osgShadow::ShadowedScene* sscene, int unit)
+    {
+        osgShadow::ShadowTechnique* st = sscene->getShadowTechnique();
+        if (st)
+        {
+            osgShadow::StandardShadowMap* ssm
+                = dynamic_cast<osgShadow::StandardShadowMap*>(st);
+            if (ssm)
+            {
+                ssm->setShadowTextureUnit( unit );
+                ssm->setShadowTextureCoordIndex( unit );
+                return true;
+            }
+            else
+            {
+                osgShadow::ViewDependentShadowMap* vdsm
+                    = getTechniqueAsVdsm(sscene);
+                if (vdsm)
+                {
+                    sscene->getShadowSettings()
+                        ->setBaseShadowTextureUnit( unit );
+                    return true;
+                }
+            }
+        }
+
+        return false;
+    }
+}
+
+
+bool
+ShadowUtils::setUpShadows(osgShadow::ShadowedScene* sscene, osg::Group* root)
+{
+    osg::StateSet* ssStateSet = sscene->getOrCreateStateSet();
+
+    MapNode* mapNode = findMapNode(root);
+    TerrainEngineNode* engine = mapNode->getTerrainEngine();
+    if (!engine)
+        return false;
+
+    TextureCompositor* compositor = engine->getTextureCompositor();
+    int su = -1;
+    if (!compositor->reserveTextureImageUnit(su))
+        return false;
+
+    OE_INFO << LC << "Reserved texture unit " << su << " for shadowing" << std::endl;
+
+    osgShadow::ViewDependentShadowMap* vdsm = getTechniqueAsVdsm(sscene);
+    int su1 = -1;
+    if (vdsm && sscene->getShadowSettings()->getNumShadowMapsPerLight() == 2)
+    {
+        if (!compositor->reserveTextureImageUnit(su1) || su1 != su + 1)
+        {
+            OE_FATAL << LC << "couldn't get contiguous shadows for split vdsm\n";
+            sscene->getShadowSettings()->setNumShadowMapsPerLight(1);
+            if (su1 != -1)
+                compositor->releaseTextureImageUnit(su1);
+            su1 = -1;
+        }
+        else
+        {
+            OE_INFO << LC << "Reserved texture unit " << su1 << " for shadowing" << std::endl;
+        }
+    }
+
+    // create a virtual program to attach to the shadows scene.
+    VirtualProgram* vp = new VirtualProgram();
+    vp->setName( "shadow:terrain" );
+    vp->installDefaultColoringAndLightingShaders();
+
+    ssStateSet->setAttributeAndModes( vp, 1 );
+
+
+    std::stringstream buf;
+    buf << "#version " << GLSL_VERSION_STR << "\n";
+    buf << "varying vec4 colorAmbientEmissive;\n";
+    buf << "varying vec4 shadow_TexCoord0;\n";
+    if ( su1 >= 0 )
+        buf << "varying vec4 shadow_TexCoord1;\n";
+
+
+    buf << "void osgearth_vert_setupShadowCoords()\n";
+    buf << "{\n";
+    buf << "    vec4 position4 = gl_ModelViewMatrix * gl_Vertex;\n";
+    buf << "    shadow_TexCoord0.s = dot( position4, gl_EyePlaneS[" << su <<"]);\n";
+    buf << "    shadow_TexCoord0.t = dot( position4, gl_EyePlaneT[" << su <<"]);\n";
+    buf << "    shadow_TexCoord0.p = dot( position4, gl_EyePlaneR[" << su <<"]);\n";
+    buf << "    shadow_TexCoord0.q = dot( position4, gl_EyePlaneQ[" << su <<"]);\n";
+    if (su1 >= 0)
+    {
+        buf << "    shadow_TexCoord1.s = dot( position4, gl_EyePlaneS[" << su1 <<"]);\n";
+        buf << "    shadow_TexCoord1.t = dot( position4, gl_EyePlaneT[" << su1 <<"]);\n";
+        buf << "    shadow_TexCoord1.p = dot( position4, gl_EyePlaneR[" << su1 <<"]);\n";
+        buf << "    shadow_TexCoord1.q = dot( position4, gl_EyePlaneQ[" << su1 <<"]);\n";
+    }
+    buf << "    colorAmbientEmissive = gl_FrontLightModelProduct.sceneColor\n";
+    buf << "                         + gl_FrontLightProduct[0].ambient;\n";
+    //buf << "    colorAmbientEmissive = gl_LightModel.ambient + gl_FrontLightProduct[0].ambient; \n";
+    //buf << "    colorAmbientEmissive = gl_FrontLightProduct[0].ambient; \n";
+    buf << "}\n";
+
+    std::string setupShadowCoords;
+    setupShadowCoords = buf.str();
+
+    vp->setFunction(
+        "osgearth_vert_setupShadowCoords", 
+        setupShadowCoords, 
+        ShaderComp::LOCATION_VERTEX_POST_LIGHTING,
+        -1.0 );
+
+    std::stringstream buf2;
+    buf2 <<
+        "#version " << GLSL_VERSION_STR << "\n"
+        "uniform sampler2DShadow shadowTexture;\n"
+        "varying vec4 shadow_TexCoord0;\n";
+
+    if (su1 >= 0)
+    {
+        // bound by vdsm
+        buf2 << "uniform sampler2DShadow shadowTexture1;\n";
+        buf2 << "varying vec4 shadow_TexCoord1;\n";
+    }
+    buf2 <<
+        "varying vec4 colorAmbientEmissive;\n"
+        "varying vec4 osg_FrontColor;\n"
+        "varying vec4 osg_FrontSecondaryColor;\n"
+        "void osgearth_frag_applyLighting( inout vec4 color )\n"
+        "{\n"
+        "    float alpha = color.a;\n"
+        "    float shadowFac = shadow2DProj( shadowTexture, shadow_TexCoord0).r;\n";
+    if (su1 > 0)
+    {
+        buf2 << "    shadowFac *= shadow2DProj( shadowTexture1, shadow_TexCoord1).r;\n";
+    }
+    buf2 <<
+        "    vec4 diffuseLight = mix(colorAmbientEmissive, osg_FrontColor, shadowFac);\n"
+        "    color = color * diffuseLight + osg_FrontSecondaryColor * shadowFac;\n"
+        "    color.a = alpha;\n"
+        "}\n";
+
+    std::string fragApplyLighting;
+    fragApplyLighting = buf2.str();
+
+    // override the terrain engine's default lighting shader:
+    vp->setShader("osgearth_frag_applyLighting",
+        new osg::Shader(osg::Shader::FRAGMENT, fragApplyLighting),
+        osg::StateAttribute::ON | osg::StateAttribute::OVERRIDE );
+
+    setShadowUnit(sscene, su);
+
+    // VDSM uses a different sampler name, shadowTexture0.
+    ssStateSet
+        ->getOrCreateUniform("shadowTexture", osg::Uniform::SAMPLER_2D_SHADOW)
+        ->set(su);
+
+    return true;
+}
diff --git a/src/osgEarthUtil/SkyNode b/src/osgEarthUtil/SkyNode
index 263bd48..86c63ff 100644
--- a/src/osgEarthUtil/SkyNode
+++ b/src/osgEarthUtil/SkyNode
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -31,30 +31,93 @@ namespace osgEarth { namespace Util
     using namespace osgEarth;
 
     /**
+    * Class that provides information about astronomical objects at a given time.
+    */
+    class OSGEARTHUTIL_EXPORT EphemerisProvider : public osg::Referenced
+    {
+    public:
+        /**
+        * Gets the moon position in geocentric coordinates at the given time
+        */
+        virtual osg::Vec3d getMoonPosition( int year, int month, int date, double hoursUTC ) = 0;
+
+        /**
+        * Gets the sun position in geocentric coordinates at the given time
+        */
+        virtual osg::Vec3d getSunPosition( int year, int month, int date, double hoursUTC ) = 0;
+    };
+
+
+    /**
+    * The default EphemerisProvider, provides positions based on freely available models
+    */
+    class OSGEARTHUTIL_EXPORT DefaultEphemerisProvider : public EphemerisProvider
+    {
+    public:
+        /**
+        * Gets the moon position in geocentric coordinates at the given time
+        */
+        virtual osg::Vec3d getMoonPosition( int year, int month, int date, double hoursUTC );
+
+        /**
+        * Gets the sun position in geocentric coordinates at the given time
+        */
+        virtual osg::Vec3d getSunPosition( int year, int month, int date, double hoursUTC );
+    };
+
+
+    /**
      * A sky model.
      */
     class OSGEARTHUTIL_EXPORT SkyNode : public osg::Group
     {
     public:
-        /** Creates a new sky node based on the provided map. */        
-        SkyNode( Map* map, const std::string& starFile="" );
+        /** Creates a new sky node based on the provided map. */
+        SkyNode( Map* map, const std::string& starFile="", float minStarMagnitude=-1.0f );
+        SkyNode( Map* map, float minStarMagnitude );
+
+        /** dtor */
+        virtual ~SkyNode() { }
+
+
+      
+    public:
+        /**
+         * Gets/Sets the EphemerisProvider
+         */
+        EphemerisProvider* getEphemerisProvider() const;
+        void setEphemerisProvider(EphemerisProvider* ephemerisProvider );
+
+        /**
+         * Gets a position from the right ascension, declination and range
+         * @param ra
+         *        Right ascension in radians
+         * @param decl
+         *        Declination in radians
+         * @param range
+         *        Range in meters
+         */
+        static osg::Vec3d getPositionFromRADecl( double ra, double decl, double range );
+
+    public:
 
         /** Attached this sky node to a view (placing a sky light). */
         void attach( osg::View* view, int lightNum =0 );
+       
+        /** Gets the date time for the sky position  */
+        void getDateTime( int &year, int &month, int &date, double &hoursUTC, osg::View* view=0L );
 
-        /** Sets the sun's position as a unit vector. */
-        void setSunPosition( const osg::Vec3& pos, osg::View* view =0L );
-
-        /** Sets the sun's position as a latitude and longitude. */         
-        void setSunPosition( double lat_degrees, double lon_degrees, osg::View* view =0L );
-        
-        /** Sets the sun's position based on a julian date. */
+        /** Sets the sky's position based on a julian date. */
         void setDateTime( int year, int month, int date, double hoursUTC, osg::View* view =0L );
 
         /** The minimum brightness for non-sunlit areas. */
         void setAmbientBrightness( float value, osg::View* view =0L );
         float getAmbientBrightness( osg::View* view =0L ) const;
 
+        /** Whether the moon is visible */
+        void setMoonVisible( bool value, osg::View* view =0L );
+        bool getMoonVisible( osg::View* view =0L ) const;
+
         /** Whether the stars are visible */
         void setStarsVisible( bool value, osg::View* view =0L );
         bool getStarsVisible( osg::View* view =0L ) const;
@@ -67,6 +130,17 @@ namespace osgEarth { namespace Util
         virtual osg::BoundingSphere computeBound() const;
 
     private:
+
+        /** Sets the sun's position as a unit vector. */
+        void setSunPosition( const osg::Vec3& pos, osg::View* view =0L );
+
+        /** Sets the moon position as a geocentric coordinate */
+        void setMoonPosition( const osg::Vec3d& pos, osg::View* view =0L );
+
+        /** Sets the sun's position as a latitude and longitude. */         
+        void setSunPosition( double lat_degrees, double lon_degrees, osg::View* view =0L );        
+
+
         struct StarData
         {
             std::string name;
@@ -84,36 +158,52 @@ namespace osgEarth { namespace Util
             osg::ref_ptr<osg::Light>           _light;
             osg::ref_ptr<osg::Uniform>         _lightPosUniform;
             osg::Matrixd                       _sunMatrix;            
+            osg::Matrixd                       _moonMatrix;            
             osg::Matrixd                       _starsMatrix;
             bool                               _starsVisible;
+            bool                               _moonVisible;
 
             // only available in per-view structures..not default
             osg::ref_ptr<osg::Group>           _cullContainer;
             osg::ref_ptr<osg::MatrixTransform> _sunXform;
+            osg::ref_ptr<osg::MatrixTransform> _moonXform;
             osg::ref_ptr<osg::MatrixTransform> _starsXform;
+            
+            int _year;
+            int _month;
+            int _date;
+            double _hoursUTC;
         };
 
         PerViewData _defaultPerViewData;
         typedef std::map<osg::View*, PerViewData> PerViewDataMap;
         PerViewDataMap _perViewData;
 
-        float _innerRadius, _outerRadius, _sunDistance, _starRadius;
-        osg::ref_ptr<osg::Node> _sun, _stars, _atmosphere;
+        float _innerRadius, _outerRadius, _sunDistance, _starRadius, _minStarMagnitude;
+        osg::ref_ptr<osg::Node> _sun, _stars, _atmosphere, _moon;
         osg::ref_ptr<osg::Uniform> _starAlpha;
         osg::ref_ptr<osg::Uniform> _starPointSize;
 
+        osg::Vec3d _moonPosition;
+
         osg::ref_ptr< const osg::EllipsoidModel > _ellipsoidModel;
 
+        void initialize( Map* map, const std::string& starFile="" );
+
         void makeAtmosphere( const osg::EllipsoidModel* );
         void makeSun();
+        void makeMoon();
 
         void makeStars(const std::string& starFile);
-        osg::Geode* buildStarGeometry(const std::vector<StarData>& stars);
+        osg::Node* buildStarGeometry(const std::vector<StarData>& stars);
         void getDefaultStars(std::vector<StarData>& out_stars);
         bool parseStarFile(const std::string& starFile, std::vector<StarData>& out_stars);
 
         void setAmbientBrightness( PerViewData& data, float value );
         void setSunPosition( PerViewData& data, const osg::Vec3& pos );
+        void setMoonPosition( PerViewData& data, const osg::Vec3d& pos );
+
+        osg::ref_ptr< EphemerisProvider > _ephemerisProvider;
     };
 
 } } // namespace osgEarth::Util
diff --git a/src/osgEarthUtil/SkyNode.cpp b/src/osgEarthUtil/SkyNode.cpp
index 46bff40..d93359f 100644
--- a/src/osgEarthUtil/SkyNode.cpp
+++ b/src/osgEarthUtil/SkyNode.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -20,15 +20,21 @@
 #include <osgEarthUtil/StarData>
 
 #include <osgEarth/ShaderComposition>
-#include <osgEarth/FindNode>
+#include <osgEarthUtil/LatLongFormatter>
+#include <osgEarth/NodeUtils>
 #include <osgEarth/MapNode>
+#include <osgEarth/Utils>
+#include <osgEarth/Registry>
+#include <osgEarth/Capabilities>
 
 #include <osg/MatrixTransform>
 #include <osg/ShapeDrawable>
+#include <osg/PointSprite>
 #include <osg/BlendFunc>
 #include <osg/FrontFace>
 #include <osg/CullFace>
 #include <osg/Program>
+#include <osg/Camera>
 #include <osg/Point>
 #include <osg/Shape>
 #include <osg/Depth>
@@ -44,121 +50,23 @@ using namespace osgEarth::Util;
 
 //---------------------------------------------------------------------------
 
-#define BIN_STARS      -10
-#define BIN_SUN         -9
-#define BIN_ATMOSPHERE  -8
+#define BIN_STARS       -100003
+#define BIN_SUN         -100002
+#define BIN_MOON        -100001
+#define BIN_ATMOSPHERE  -100000
 
 //---------------------------------------------------------------------------
 
 namespace
 {
-    // a cull callback that prevents objects from being included in the near/fear clip
-    // plane calculates that OSG does. This is useful for including "distant objects"
-    struct DoNotIncludeInNearFarComputationCallback : public osg::NodeCallback
-    {
-        virtual void operator()(osg::Node* node, osg::NodeVisitor* nv)
-        {
-            osgUtil::CullVisitor* cv = dynamic_cast< osgUtil::CullVisitor*>( nv );
-
-            // Default value
-            osg::CullSettings::ComputeNearFarMode oldMode;
-
-            if( cv )
-            {
-                oldMode = cv->getComputeNearFarMode();
-                cv->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
-            }
-
-            traverse(node, nv);
-
-            if( cv )
-            {
-                cv->setComputeNearFarMode(oldMode);
-            }
-        }
-    };
-
-    struct OverrideNearFarValuesCallback : public osg::Drawable::DrawCallback
-    {
-        OverrideNearFarValuesCallback(double radius)
-            : _radius(radius) {}
-
-        virtual void drawImplementation(osg::RenderInfo& renderInfo,
-            const osg::Drawable* drawable) const
-        {
-            osg::Camera* currentCamera = renderInfo.getCurrentCamera();
-            if (currentCamera)
-            {
-                // Get the current camera position.
-                osg::Vec3 eye, center, up;
-                renderInfo.getCurrentCamera()->getViewMatrixAsLookAt( eye, center, up);
-
-                // Get the max distance we need the far plane to be at,
-                // which is the distance between the eye and the origin
-                // plus the distant from the origin to the object (star sphere
-                // radius, sun distance etc), and then some.
-                double distance = eye.length() + _radius*2;
-
-                // Save old values.
-                osg::ref_ptr<osg::RefMatrixd> oldProjectionMatrix = new osg::RefMatrix;
-                oldProjectionMatrix->set( renderInfo.getState()->getProjectionMatrix());
-
-                // Get the individual values
-                double left, right, bottom, top, zNear, zFar;
-                oldProjectionMatrix->getFrustum( left, right, bottom, top, zNear, zFar);
-
-                // Build a new projection matrix with a modified far plane
-                osg::ref_ptr<osg::RefMatrixd> projectionMatrix = new osg::RefMatrix;
-                //projectionMatrix->makeFrustum( left, right, bottom, top, zNear, distance);
-                //OE_INFO << "zNear=" << zNear << ", zFar=" << zFar << std::endl;
-                projectionMatrix->makeFrustum( left, right, bottom, top, zNear, distance );
-                renderInfo.getState()->applyProjectionMatrix( projectionMatrix.get());
-
-                // Draw the drawable
-                drawable->drawImplementation(renderInfo);
-
-                // Reset the far plane to the old value.
-                renderInfo.getState()->applyProjectionMatrix( oldProjectionMatrix.get() );
-            }
-            else
-            {
-                drawable->drawImplementation(renderInfo);
-            }
-        }
-
-        double _radius;
-    };
-
-    struct AddCallbackToDrawablesVisitor : public osg::NodeVisitor
-    {
-        AddCallbackToDrawablesVisitor(double radius)
-            : osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL_CHILDREN),
-            _radius(radius) {}
-
-        virtual void apply(osg::Geode& node)
-        {
-            for (unsigned int i = 0; i < node.getNumDrawables(); i++)
-            {
-                node.getDrawable(i)->setDrawCallback( new OverrideNearFarValuesCallback(_radius) );
-
-                // Do not use display lists otherwise the callback will only
-                // be called once on initial compile.
-                node.getDrawable(i)->setUseDisplayList(false);
-            }
-        }
-
-        double _radius;
-    };
-
+    // constucts an ellipsoidal mesh that we will use to draw the atmosphere
     osg::Geometry*
-    s_makeEllipsoidGeometry( const osg::EllipsoidModel* ellipsoid, double outerRadius )
+    s_makeEllipsoidGeometry( const osg::EllipsoidModel* ellipsoid, double outerRadius, bool genTexCoords = false )
     {
         double hae = outerRadius - ellipsoid->getRadiusEquator();
 
         osg::Geometry* geom = new osg::Geometry();
-
-        //geom->setUseVertexBufferObjects( true );
-        geom->setUseDisplayList( false );
+        geom->setUseVertexBufferObjects(true);
 
         int latSegments = 100;
         int lonSegments = 2 * latSegments;
@@ -168,6 +76,20 @@ namespace
         osg::Vec3Array* verts = new osg::Vec3Array();
         verts->reserve( latSegments * lonSegments );
 
+        osg::Vec2Array* texCoords = 0;
+        osg::Vec3Array* normals = 0;
+        if (genTexCoords)
+        {
+            texCoords = new osg::Vec2Array();
+            texCoords->reserve( latSegments * lonSegments );
+            geom->setTexCoordArray( 0, texCoords );
+
+            normals = new osg::Vec3Array();
+            normals->reserve( latSegments * lonSegments );
+            geom->setNormalArray( normals );
+            geom->setNormalBinding(osg::Geometry::BIND_PER_VERTEX );
+        }
+
         osg::DrawElementsUShort* el = new osg::DrawElementsUShort( GL_TRIANGLES );
         el->reserve( latSegments * lonSegments * 6 );
 
@@ -181,16 +103,31 @@ namespace
                 ellipsoid->convertLatLongHeightToXYZ( osg::DegreesToRadians(lat), osg::DegreesToRadians(lon), hae, gx, gy, gz );
                 verts->push_back( osg::Vec3(gx, gy, gz) );
 
+                if (genTexCoords)
+                {
+                    double s = (lon + 180) / 360.0;
+                    double t = (lat + 90.0) / 180.0;
+                    texCoords->push_back( osg::Vec2(s, t ) );
+                }
+
+                if (normals)
+                {
+                    osg::Vec3 normal( gx, gy, gz);
+                    normal.normalize();
+                    normals->push_back( normal );
+                }
+
+
                 if ( y < latSegments )
                 {
                     int x_plus_1 = x < lonSegments-1 ? x+1 : 0;
                     int y_plus_1 = y+1;
                     el->push_back( y*lonSegments + x );
-                    el->push_back( y*lonSegments + x_plus_1 );
                     el->push_back( y_plus_1*lonSegments + x );
                     el->push_back( y*lonSegments + x_plus_1 );
-                    el->push_back( y_plus_1*lonSegments + x_plus_1 );
+                    el->push_back( y*lonSegments + x_plus_1 );
                     el->push_back( y_plus_1*lonSegments + x );
+                    el->push_back( y_plus_1*lonSegments + x_plus_1 );
                 }
             }
         }
@@ -198,9 +135,12 @@ namespace
         geom->setVertexArray( verts );
         geom->addPrimitiveSet( el );
 
+//        OSG_ALWAYS << "s_makeEllipsoidGeometry Bounds: " << geom->computeBound().radius() << " outerRadius: " << outerRadius << std::endl;
+        
         return geom;
     }
 
+    // makes a disc geometry that we'll use to render the sun/moon
     osg::Geometry*
     s_makeDiscGeometry( double radius )
     {
@@ -208,9 +148,7 @@ namespace
         float deltaAngle = 360.0/(float)segments;
 
         osg::Geometry* geom = new osg::Geometry();
-
-        //geom->setUseVertexBufferObjects( true );
-        geom->setUseDisplayList( false );
+        geom->setUseVertexBufferObjects(true);
 
         osg::Vec3Array* verts = new osg::Vec3Array();
         verts->reserve( 1 + segments );
@@ -241,6 +179,7 @@ namespace
 
 //---------------------------------------------------------------------------
 
+
 // Astronomical Math
 // http://www.stjarnhimlen.se/comp/ppcomp.html
 namespace
@@ -253,6 +192,29 @@ namespace
     static const double TWO_PI = (2.0*osg::PI);
     static const double JD2000 = 2451545.0;
 
+
+    double sgCalcEccAnom(double M, double e)
+    {
+        double eccAnom, E0, E1, diff;
+
+        double epsilon = osg::DegreesToRadians(0.001);
+        
+        eccAnom = M + e * sin(M) * (1.0 + e * cos (M));
+        // iterate to achieve a greater precision for larger eccentricities 
+        if (e > 0.05)
+        {
+            E0 = eccAnom;
+            do
+            {
+                 E1 = E0 - (E0 - e * sin(E0) - M) / (1 - e *cos(E0));
+                 diff = fabs(E0 - E1);
+                 E0 = E1;
+            } while (diff > epsilon );
+            return E0;
+        }
+        return eccAnom;
+    }
+
     //double getTimeScale( int year, int month, int date, double hoursUT )
     //{
     //    int a = 367*year - 7 * ( year + (month+9)/12 ) / 4 + 275*month/9 + date - 730530;
@@ -344,6 +306,89 @@ namespace
                 sin(sun_lat) );
         }
     };
+
+    struct Moon
+    {
+        Moon() { }
+
+        static std::string radiansToHoursMinutesSeconds(double ra)
+        {
+            while (ra < 0) ra += (osg::PI * 2.0);
+            //Get the total number of hours
+            double hours = (ra / (osg::PI * 2.0) ) * 24.0;
+            double minutes = hours - (int)hours;
+            hours -= minutes;
+            minutes *= 60.0;
+            double seconds = minutes - (int)minutes;
+            seconds *= 60.0;
+            std::stringstream buf;
+            buf << (int)hours << ":" << (int)minutes << ":" << (int)seconds;
+            return buf.str();
+        }
+
+        // From http://www.stjarnhimlen.se/comp/ppcomp.html
+        osg::Vec3d getPosition(int year, int month, int date, double hoursUTC ) const
+        {
+            //double julianDate = getJulianDate( year, month, date );
+            //julianDate += hoursUTC /24.0;
+            double d = 367*year - 7 * ( year + (month+9)/12 ) / 4 + 275*month/9 + date - 730530;
+            d += (hoursUTC / 24.0);                     
+
+            double ecl = osg::DegreesToRadians(23.4393 - 3.563E-7 * d);
+
+            double N = osg::DegreesToRadians(125.1228 - 0.0529538083 * d);
+            double i = osg::DegreesToRadians(5.1454);
+            double w = osg::DegreesToRadians(318.0634 + 0.1643573223 * d);
+            double a = 60.2666;//  (Earth radii)
+            double e = 0.054900;
+            double M = osg::DegreesToRadians(115.3654 + 13.0649929509 * d);
+
+            double E = M + e*(180.0/osg::PI) * sin(M) * ( 1.0 + e * cos(M) );
+            
+            double xv = a * ( cos(E) - e );
+            double yv = a * ( sqrt(1.0 - e*e) * sin(E) );
+
+            double v = atan2( yv, xv );
+            double r = sqrt( xv*xv + yv*yv );
+
+            //Compute the geocentric (Earth-centered) position of the moon in the ecliptic coordinate system
+            double xh = r * ( cos(N) * cos(v+w) - sin(N) * sin(v+w) * cos(i) );
+            double yh = r * ( sin(N) * cos(v+w) + cos(N) * sin(v+w) * cos(i) );
+            double zh = r * ( sin(v+w) * sin(i) );
+
+            // calculate the ecliptic latitude and longitude here
+            double lonEcl = atan2 (yh, xh);
+            double latEcl = atan2(zh, sqrt(xh*xh + yh*yh));
+
+            double xg = r * cos(lonEcl) * cos(latEcl);
+            double yg = r * sin(lonEcl) * cos(latEcl);
+            double zg = r * sin(latEcl);
+
+            double xe = xg;
+            double ye = yg * cos(ecl) -zg * sin(ecl);
+            double ze = yg * sin(ecl) +zg * cos(ecl);
+
+            double RA    = atan2(ye, xe);
+            double Dec = atan2(ze, sqrt(xe*xe + ye*ye));
+
+            //Just use the average distance from the earth            
+            double rg = 6378137.0 + 384400000.0;
+            
+            // finally, adjust for the time of day (rotation of the earth)
+            double time_r = hoursUTC/24.0; // 0..1            
+            double moon_r = RA/TWO_PI; // convert to 0..1
+
+            // rotational difference between UTC and current time
+            double diff_r = moon_r - time_r;
+            double diff_lon = TWO_PI * diff_r;
+
+            RA -= diff_lon;
+
+            nrad2(RA);
+
+            return SkyNode::getPositionFromRADecl( RA, Dec, rg );
+        }
+    };
 }
 
 //---------------------------------------------------------------------------
@@ -354,9 +399,20 @@ namespace
     // Adapted from code that is
     // Copyright (c) 2004 Sean O'Neil
 
-    static char s_atmosphereVertexSource[] =
-        "#version 110 \n"
+    static char s_versionString[] =
+#ifdef OSG_GLES2_AVAILABLE
+        "#version 100 \n";
+#else
+        "#version 110 \n";
+#endif
 
+    static char s_mathUtils[] =
+        "float fastpow( in float x, in float y ) \n"
+        "{ \n"
+        "    return x/(x+y-y*x); \n"
+        "} \n";
+
+    static char s_atmosphereVertexDeclarations[] =
         "uniform mat4 osg_ViewMatrixInverse;     // camera position \n"
         "uniform vec3 atmos_v3LightPos;        // The direction vector to the light source \n"
         "uniform vec3 atmos_v3InvWavelength;   // 1 / pow(wavelength,4) for the rgb channels \n"
@@ -380,8 +436,9 @@ namespace
 
         "vec3 vVec; \n"
         "float atmos_fCameraHeight;    // The camera's current height \n"		
-        "float atmos_fCameraHeight2;   // fCameraHeight^2 \n"
+        "float atmos_fCameraHeight2;   // fCameraHeight^2 \n";
 
+    static char s_atmosphereVertexShared[] =
         "float atmos_scale(float fCos) \n"	
         "{ \n"
         "    float x = 1.0 - fCos; \n"
@@ -480,8 +537,10 @@ namespace
         "  atmos_mieColor      = v3FrontColor * atmos_fKmESun; \n"			
         "  atmos_rayleighColor = v3FrontColor * (atmos_v3InvWavelength * atmos_fKrESun); \n"				
         "  atmos_v3Direction = vVec - v3Pos; \n"				
-        "} \n"
+        "} \n";
+
 
+    static char s_atmosphereVertexMain[] =
         "void main(void) \n"
         "{ \n"
         "  // Get camera position and height \n"
@@ -496,15 +555,8 @@ namespace
         "      SkyFromAtmosphere(); \n"
         "  } \n"
         "} \n";
-        
-    static char s_atmosphereFragmentSource[] =
-        "#version 110 \n"
-        
-        "float fastpow( in float x, in float y ) \n"
-        "{ \n"
-        "    return x/(x+y-y*x); \n"
-        "} \n"
 
+    static char s_atmosphereFragmentDeclarations[] =
         "uniform vec3 atmos_v3LightPos; \n"							
         "uniform float atmos_g; \n"				
         "uniform float atmos_g2; \n"
@@ -514,8 +566,12 @@ namespace
         "varying vec3 atmos_mieColor; \n"
         "varying vec3 atmos_rayleighColor; \n"
 
-        "const float fExposure = 4.0; \n"
+        "const float fExposure = 4.0; \n";
 
+    //static char s_atmosphereFragmentShared[] =
+    //    "void applyFragLighting( inout color )
+        
+    static char s_atmosphereFragmentMain[] =
         "void main(void) \n"			
         "{ \n"				
         "    float fCos = dot(atmos_v3LightPos, atmos_v3Direction) / length(atmos_v3Direction); \n"
@@ -528,7 +584,6 @@ namespace
         "} \n";
 
     static char s_sunVertexSource[] = 
-        "#version 110 \n"
         "varying vec3 atmos_v3Direction; \n"
 
         "void main() \n"
@@ -540,13 +595,6 @@ namespace
         "} \n";
 
     static char s_sunFragmentSource[] =
-        "#version 110 \n"
-        
-        "float fastpow( in float x, in float y ) \n"
-        "{ \n"
-        "    return x/(x+y-y*x); \n"
-        "} \n"
-
         "uniform float sunAlpha; \n"
         "varying vec3 atmos_v3Direction; \n"
 
@@ -557,31 +605,137 @@ namespace
         "   gl_FragColor.rgb = fMiePhase*vec3(.3,.3,.2); \n"
         "   gl_FragColor.a = sunAlpha*gl_FragColor.r; \n"
         "} \n";
-}
-
-//---------------------------------------------------------------------------
 
-namespace
-{
-    static const char s_starVertexSource[] = 
+    static char s_moonVertexSource[] = 
+        "uniform mat4 osg_ModelViewProjectionMatrix;"
+        "varying vec4 moon_TexCoord;\n"
         "void main() \n"
         "{ \n"
-        "    gl_FrontColor = vec4(1,1,1,1); \n"
-        "    gl_PointSize = gl_Color.r + 1.0f; \n"
-        "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
+        "    moon_TexCoord = gl_MultiTexCoord0; \n"
+        "    gl_Position = osg_ModelViewProjectionMatrix * gl_Vertex; \n"
         "} \n";
 
-    static const char s_starFragmentSource[] = 
+    static char s_moonFragmentSource[] =
+        "varying vec4 moon_TexCoord;\n"
+        "uniform sampler2D moonTex;\n"
         "void main( void ) \n"
         "{ \n"
-        "    gl_FragColor = gl_Color; \n"
+        "   gl_FragColor = texture2D(moonTex, moon_TexCoord.st);\n"
         "} \n";
 }
 
 //---------------------------------------------------------------------------
 
-SkyNode::SkyNode( Map* map, const std::string& starFile )
+namespace
+{
+    static std::string s_createStarVertexSource()
+    {
+        float glslVersion = Registry::instance()->getCapabilities().getGLSLVersion();
+
+        return Stringify()
+            << "#version " << (glslVersion < 1.2f ? GLSL_VERSION_STR : "120") << "\n"
+
+            << "float remap( float val, float vmin, float vmax, float r0, float r1 ) \n"
+            << "{ \n"
+            << "    float vr = (clamp(val, vmin, vmax)-vmin)/(vmax-vmin); \n"
+            << "    return r0 + vr * (r1-r0); \n"
+            << "} \n"
+
+            << "uniform vec3 atmos_v3LightPos; \n"
+            << "uniform mat4 osg_ViewMatrixInverse; \n"
+            << "varying float visibility; \n"
+            << "varying vec4 osg_FrontColor; \n"
+            << "void main() \n"
+            << "{ \n"
+            << "    osg_FrontColor = gl_Color; \n"
+            << "    gl_PointSize = gl_Color.r * " << (glslVersion < 1.2f ? "2.0" : "14.0") << ";\n"
+            << "    gl_Position = gl_ModelViewProjectionMatrix * gl_Vertex; \n"
+
+            << "    vec3 eye = osg_ViewMatrixInverse[3].xyz; \n"
+            << "    float hae = length(eye) - 6378137.0; \n"
+            // "highness": visibility increases with altitude
+            << "    float highness = remap( hae, 25000.0, 150000.0, 0.0, 1.0 ); \n"
+            << "    eye = normalize(eye); \n"
+            // "darkness": visibility increase as the sun goes around the other side of the earth
+            << "    float darkness = 1.0-remap(dot(eye,atmos_v3LightPos), -0.25, 0.0, 0.0, 1.0); \n"
+            << "    visibility = clamp(highness + darkness, 0.0, 1.0); \n"
+            << "} \n";
+    }
+
+    static std::string s_createStarFragmentSource()
+    {
+        float glslVersion = Registry::instance()->getCapabilities().getGLSLVersion();
+
+        if ( glslVersion < 1.2f )
+        {
+            return Stringify()
+                << "#version " << GLSL_VERSION_STR << "\n"
+#ifdef OSG_GLES2_AVAILABLE
+                << "precision highp float;\n"
+#endif  
+                << "varying float visibility; \n"
+                << "varying vec4 osg_FrontColor; \n"
+                << "void main( void ) \n"
+                << "{ \n"
+                << "    gl_FragColor = osg_FrontColor * visibility; \n"
+                << "} \n";
+        }
+        else
+        {
+            return Stringify()
+                << "#version 120 \n"
+#ifdef OSG_GLES2_AVAILABLE
+                << "precision highp float;\n"
+#endif
+                << "varying float visibility; \n"
+                << "varying vec4 osg_FrontColor; \n"
+                << "void main( void ) \n"
+                << "{ \n"
+                << "    float b1 = 1.0-(2.0*abs(gl_PointCoord.s-0.5)); \n"
+                << "    float b2 = 1.0-(2.0*abs(gl_PointCoord.t-0.5)); \n"
+                << "    float i = b1*b1 * b2*b2; \n" //b1*b1*b1 * b2*b2*b2; \n"
+                << "    gl_FragColor = osg_FrontColor * i * visibility; \n"
+                << "} \n";
+        }
+    }
+}
+
+
+//---------------------------------------------------------------------------
+
+osg::Vec3d
+DefaultEphemerisProvider::getSunPosition( int year, int month, int date, double hoursUTC )
 {
+    Sun sun;
+    return sun.getPosition( year, month, date, hoursUTC );
+}
+
+osg::Vec3d
+DefaultEphemerisProvider::getMoonPosition( int year, int month, int date, double hoursUTC )
+{
+    Moon moon;
+    return moon.getPosition( year, month, date, hoursUTC );
+}
+
+//---------------------------------------------------------------------------
+
+SkyNode::SkyNode( Map* map, const std::string& starFile, float minStarMagnitude ) : 
+_minStarMagnitude(minStarMagnitude)
+{
+    initialize(map, starFile);
+}
+
+SkyNode::SkyNode( Map *map, float minStarMagnitude) : 
+_minStarMagnitude(minStarMagnitude)
+{
+    initialize(map);
+}
+
+void
+SkyNode::initialize( Map *map, const std::string& starFile )
+{
+    _ephemerisProvider = new DefaultEphemerisProvider();
+
     // intialize the default settings:
     _defaultPerViewData._lightPos.set( osg::Vec3f(0.0f, 1.0f, 0.0f) );
     _defaultPerViewData._light = new osg::Light( 0 );  
@@ -590,17 +744,36 @@ SkyNode::SkyNode( Map* map, const std::string& starFile )
     _defaultPerViewData._light->setDiffuse( osg::Vec4(1,1,1,1) );
     _defaultPerViewData._light->setSpecular( osg::Vec4(0,0,0,1) );
     _defaultPerViewData._starsVisible = true;
+    _defaultPerViewData._moonVisible = true;
+    
+    // set up the uniform that conveys the normalized light position in world space
+    _defaultPerViewData._lightPosUniform = new osg::Uniform( osg::Uniform::FLOAT_VEC3, "atmos_v3LightPos" );
+    _defaultPerViewData._lightPosUniform->set( _defaultPerViewData._lightPos / _defaultPerViewData._lightPos.length() );
     
     // set up the astronomical parameters:
-    _ellipsoidModel =  map->getProfile()->getSRS()->getGeographicSRS()->getEllipsoid();
+    _ellipsoidModel = map->getProfile()->getSRS()->getGeographicSRS()->getEllipsoid();
     _innerRadius = _ellipsoidModel->getRadiusPolar();
     _outerRadius = _innerRadius * 1.025f;
     _sunDistance = _innerRadius * 12000.0f;
 
-    // make the ephemeris (note: order is important here)
+    // make the sky elements (don't change the order here)
     makeAtmosphere( _ellipsoidModel.get() );
+
     makeSun();
+
+    makeMoon();
+
+    if (_minStarMagnitude < 0)
+    {
+      const char* magEnv = ::getenv("OSGEARTH_MIN_STAR_MAGNITUDE");
+      if (magEnv)
+        _minStarMagnitude = as<float>(std::string(magEnv), -1.0f);
+    }
+
     makeStars(starFile);
+
+    //Set a default time
+    setDateTime( 2011, 3, 6, 18 );
 }
 
 osg::BoundingSphere
@@ -612,14 +785,9 @@ SkyNode::computeBound() const
 void
 SkyNode::traverse( osg::NodeVisitor& nv )
 {
-    osg::CullSettings::ComputeNearFarMode saveMode;
-
     osgUtil::CullVisitor* cv = dynamic_cast<osgUtil::CullVisitor*>( &nv );
     if ( cv )
     {
-        saveMode = cv->getComputeNearFarMode();
-        cv->setComputeNearFarMode( osg::CullSettings::DO_NOT_COMPUTE_NEAR_FAR );
-
         osg::View* view = cv->getCurrentCamera()->getView();
         PerViewDataMap::iterator i = _perViewData.find( view );
         if ( i != _perViewData.end() )
@@ -628,11 +796,30 @@ SkyNode::traverse( osg::NodeVisitor& nv )
         }
     }
 
-    osg::Group::traverse( nv );
+    else
+    {
+        osg::Group::traverse( nv );
+    }
+}
 
-    if ( cv )
+EphemerisProvider*
+SkyNode::getEphemerisProvider() const
+{
+    return _ephemerisProvider;
+}
+
+void
+SkyNode::setEphemerisProvider(EphemerisProvider* ephemerisProvider )
+{
+    if (_ephemerisProvider != ephemerisProvider)
     {
-        cv->setComputeNearFarMode( saveMode );
+        _ephemerisProvider = ephemerisProvider;
+
+        //Update the positions of the planets
+        for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
+        {
+            setDateTime(i->second._year, i->second._month, i->second._date, i->second._hoursUTC, i->first);
+        }
     }
 }
 
@@ -661,20 +848,37 @@ SkyNode::attach( osg::View* view, int lightNum )
     data._sunXform->addChild( _sun.get() );
     data._cullContainer->addChild( data._sunXform.get() );
 
+    data._moonXform = new osg::MatrixTransform();
+    data._moonMatrix = _defaultPerViewData._moonMatrix;
+    data._moonXform->setMatrix( data._moonMatrix );
+    data._moonXform->addChild( _moon.get() );
+    data._cullContainer->addChild( data._moonXform.get() );
+    data._moonVisible = _defaultPerViewData._moonVisible;
+    data._moonXform->setNodeMask( data._moonVisible ? ~0 : 0 );
+    
     data._starsXform = new osg::MatrixTransform();
     data._starsMatrix = _defaultPerViewData._starsMatrix;
     data._starsXform->setMatrix( _defaultPerViewData._starsMatrix );
     data._starsXform->addChild( _stars.get() );
-    data._cullContainer->addChild( data._starsXform.get() );
-
-    data._starsVisible = true;
+    data._cullContainer->addChild( data._starsXform.get() );    
+    data._starsVisible = _defaultPerViewData._starsVisible;
+    data._starsXform->setNodeMask( data._starsVisible ? ~0 : 0 );
 
     data._cullContainer->addChild( _atmosphere.get() );
     data._lightPosUniform = osg::clone( _defaultPerViewData._lightPosUniform.get() );
+    data._cullContainer->getOrCreateStateSet()->addUniform( data._lightPosUniform.get() );
+
+    // node to traverse the child nodes
+    data._cullContainer->addChild( new TraverseNode<osg::Group>(this) );
 
     view->setLightingMode( osg::View::SKY_LIGHT );
     view->setLight( data._light.get() );
     view->getCamera()->setClearColor( osg::Vec4(0,0,0,1) );
+
+    data._year = _defaultPerViewData._year;
+    data._month = _defaultPerViewData._month;
+    data._date = _defaultPerViewData._date;
+    data._hoursUTC = _defaultPerViewData._hoursUTC;
 }
 
 void
@@ -728,6 +932,22 @@ SkyNode::setSunPosition( const osg::Vec3& pos, osg::View* view )
 }
 
 void
+SkyNode::setMoonPosition( const osg::Vec3d& pos, osg::View* view )
+{
+    _moonPosition = pos;
+    if ( !view )
+    {
+        setMoonPosition( _defaultPerViewData, pos );
+        for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
+            setMoonPosition( i->second, pos );
+    }
+    else if ( _perViewData.find(view) != _perViewData.end() )
+    {
+        setMoonPosition( _perViewData[view], pos );
+    }
+}
+
+void
 SkyNode::setSunPosition( PerViewData& data, const osg::Vec3& pos )
 {
     data._lightPos = pos;
@@ -764,15 +984,56 @@ SkyNode::setSunPosition( double lat_degrees, double long_degrees, osg::View* vie
 }
 
 void
-SkyNode::setDateTime( int year, int month, int date, double hoursUTC, osg::View* view )
+SkyNode::setMoonPosition( PerViewData& data, const osg::Vec3d& pos )
 {
+    if ( data._moonXform.valid() )
+    {
+        data._moonMatrix = osg::Matrixd::translate( pos.x(), pos.y(), pos.z() );
+        data._moonXform->setMatrix( data._moonMatrix );
+    }
+}
+
+
+void
+SkyNode::getDateTime( int &year, int &month, int &date, double &hoursUTC, osg::View* view )
+{    
+    PerViewData& data = _defaultPerViewData;
+    if ( view )
+    {
+        if ( _perViewData.find(view) != _perViewData.end() )
+        {
+            data = _perViewData[view];
+        }
+    }
+
+    year = data._year;
+    month = data._month;
+    date = data._date;
+    hoursUTC = data._hoursUTC;
+}
+
+
+void
+SkyNode::setDateTime( int year, int month, int date, double hoursUTC, osg::View* view )
+{    
     if ( _ellipsoidModel.valid() )
     {
-        // position the sun:
-        Sun sun;
-        osg::Vec3d pos = sun.getPosition( year, month, date, hoursUTC );
-        pos.normalize();
-        setSunPosition( pos, view );
+        osg::Vec3d sunPosition;
+        osg::Vec3d moonPosition;
+
+        if (_ephemerisProvider)
+        {
+            sunPosition = _ephemerisProvider->getSunPosition( year, month, date, hoursUTC );
+            moonPosition = _ephemerisProvider->getMoonPosition( year, month, date, hoursUTC );
+        }
+        else
+        {
+            OE_NOTICE << "You must provide an EphemerisProvider" << std::endl;
+        }
+
+        sunPosition.normalize();
+        setSunPosition( sunPosition, view );
+        setMoonPosition( moonPosition, view );       
 
         // position the stars:
         double time_r = hoursUTC/24.0; // 0..1
@@ -782,10 +1043,19 @@ SkyNode::setDateTime( int year, int month, int date, double hoursUTC, osg::View*
         if ( !view )
         {
             _defaultPerViewData._starsMatrix = starsMatrix;
+            _defaultPerViewData._year = year;
+            _defaultPerViewData._month = month;
+            _defaultPerViewData._date = date;
+            _defaultPerViewData._hoursUTC = hoursUTC;
+
             for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
             {
                 i->second._starsMatrix = starsMatrix;
                 i->second._starsXform->setMatrix( starsMatrix );
+                i->second._year = year;
+                i->second._month = month;
+                i->second._date = date;
+                i->second._hoursUTC = hoursUTC;
             }
         }
         else if ( _perViewData.find(view) != _perViewData.end() )
@@ -793,6 +1063,10 @@ SkyNode::setDateTime( int year, int month, int date, double hoursUTC, osg::View*
             PerViewData& data = _perViewData[view];
             data._starsMatrix = starsMatrix;
             data._starsXform->setMatrix( starsMatrix );
+            data._year = year;
+            data._month = month;
+            data._date = date;
+            data._hoursUTC = hoursUTC;
         }
     }
 }
@@ -803,6 +1077,7 @@ SkyNode::setStarsVisible( bool value, osg::View* view )
     if ( !view )
     {
         _defaultPerViewData._starsVisible = value;
+        _defaultPerViewData._starsXform->setNodeMask( value ? ~0 : 0 );
         for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
         {
             i->second._starsVisible = value;
@@ -816,6 +1091,26 @@ SkyNode::setStarsVisible( bool value, osg::View* view )
     }
 }
 
+void
+SkyNode::setMoonVisible( bool value, osg::View* view )
+{
+    if ( !view )
+    {
+        _defaultPerViewData._moonVisible = value;
+        _defaultPerViewData._moonXform->setNodeMask( value ? ~0 : 0 );
+        for( PerViewDataMap::iterator i = _perViewData.begin(); i != _perViewData.end(); ++i )
+        {
+            i->second._moonVisible = value;
+            i->second._moonXform->setNodeMask( value ? ~0 : 0 );
+        }
+    }
+    else if ( _perViewData.find(view) != _perViewData.end() )
+    {
+        _perViewData[view]._moonVisible = value;
+        _perViewData[view]._moonXform->setNodeMask( value ? ~0 : 0 );
+    }
+}
+
 bool
 SkyNode::getStarsVisible( osg::View* view ) const
 {
@@ -831,12 +1126,27 @@ SkyNode::getStarsVisible( osg::View* view ) const
     }
 }
 
+bool
+SkyNode::getMoonVisible( osg::View* view ) const
+{
+    PerViewDataMap::const_iterator i = _perViewData.find(view);
+
+    if ( !view || i == _perViewData.end() )
+    {
+        return _defaultPerViewData._moonVisible;
+    }
+    else
+    {
+        return i->second._moonVisible;
+    }
+}
+
 void
 SkyNode::makeAtmosphere( const osg::EllipsoidModel* em )
 {
     // create some skeleton geometry to shade:
     osg::Geometry* drawable = s_makeEllipsoidGeometry( em, _outerRadius );
-
+    
     osg::Geode* geode = new osg::Geode();
     geode->addDrawable( drawable );
 
@@ -844,20 +1154,33 @@ SkyNode::makeAtmosphere( const osg::EllipsoidModel* em )
 
     // configure the state set:
     set->setMode( GL_LIGHTING, osg::StateAttribute::OFF );
-    set->setMode( GL_CULL_FACE, osg::StateAttribute::ON );
-    set->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
-    //set->setBinNumber( 65 ); // todo, what?
-    set->setBinNumber( BIN_ATMOSPHERE );
+    //set->setMode( GL_CULL_FACE, osg::StateAttribute::ON );
+    set->setMode( GL_CULL_FACE, osg::StateAttribute::OFF );
+    //set->setRenderingHint( osg::StateSet::TRANSPARENT_BIN );
     set->setAttributeAndModes( new osg::Depth( osg::Depth::LESS, 0, 1, false ) ); // no depth write
     set->setAttributeAndModes( new osg::BlendFunc( GL_ONE, GL_ONE ), osg::StateAttribute::ON );
-    set->setAttributeAndModes( new osg::FrontFace( osg::FrontFace::CLOCKWISE ), osg::StateAttribute::ON );
 
     // next, create and add the shaders:
     osg::Program* program = new osg::Program();
-    osg::Shader* vs = new osg::Shader( osg::Shader::VERTEX, s_atmosphereVertexSource );
+    osg::Shader* vs = new osg::Shader( osg::Shader::VERTEX, Stringify()
+        << s_versionString
+        << s_mathUtils
+        << s_atmosphereVertexDeclarations
+        << s_atmosphereVertexShared
+        << s_atmosphereVertexMain );
     program->addShader( vs );
-    osg::Shader* fs = new osg::Shader( osg::Shader::FRAGMENT, s_atmosphereFragmentSource );
+
+    osg::Shader* fs = new osg::Shader( osg::Shader::FRAGMENT, Stringify()
+        << s_versionString
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision highp float;\n"
+#endif
+        << s_mathUtils
+        << s_atmosphereFragmentDeclarations
+        //<< s_atmosphereFragmentShared
+        << s_atmosphereFragmentMain );
     program->addShader( fs );
+
     set->setAttributeAndModes( program, osg::StateAttribute::ON );
 
     // apply the uniforms:
@@ -877,8 +1200,7 @@ SkyNode::makeAtmosphere( const osg::EllipsoidModel* em )
     
     float Scale = 1.0f / (_outerRadius - _innerRadius);
 
-    _defaultPerViewData._lightPosUniform = set->getOrCreateUniform( "atmos_v3LightPos", osg::Uniform::FLOAT_VEC3 );
-    _defaultPerViewData._lightPosUniform->set( _defaultPerViewData._lightPos / _defaultPerViewData._lightPos.length() );
+    // TODO: replace this with a UBO.
 
     set->getOrCreateUniform( "atmos_v3InvWavelength", osg::Uniform::FLOAT_VEC3 )->set( RGB_wl );
     set->getOrCreateUniform( "atmos_fInnerRadius",    osg::Uniform::FLOAT )->set( _innerRadius );
@@ -898,11 +1220,16 @@ SkyNode::makeAtmosphere( const osg::EllipsoidModel* em )
     set->getOrCreateUniform( "atmos_fSamples",        osg::Uniform::FLOAT )->set( (float)Samples );
     set->getOrCreateUniform( "atmos_fWeather",        osg::Uniform::FLOAT )->set( Weather );
     
-    //geode->setCullCallback( new DoNotIncludeInNearFarComputationCallback() );
-    AddCallbackToDrawablesVisitor visitor( _innerRadius );
-    geode->accept( visitor );
-
-    _atmosphere = geode;
+    // A nested camera isolates the projection matrix calculations so the node won't 
+    // affect the clip planes in the rest of the scene.
+    osg::Camera* cam = new osg::Camera();
+    cam->getOrCreateStateSet()->setRenderBinDetails( BIN_ATMOSPHERE, "RenderBin" );
+    cam->setRenderOrder( osg::Camera::NESTED_RENDER );
+    //cam->setComputeNearFarMode( osg::CullSettings::COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES );
+    cam->setComputeNearFarMode( osg::CullSettings::COMPUTE_NEAR_FAR_USING_PRIMITIVES );
+    cam->addChild( geode );
+
+    _atmosphere = cam;
 }
 
 void
@@ -917,21 +1244,29 @@ SkyNode::makeSun()
     sun->addDrawable( s_makeDiscGeometry( sunRadius*80.0f ) ); 
 
     osg::StateSet* set = sun->getOrCreateStateSet();
+    set->setMode( GL_BLEND, 1 );
 
     set->getOrCreateUniform( "sunAlpha", osg::Uniform::FLOAT )->set( 1.0f );
 
     // configure the stateset
     set->setMode( GL_LIGHTING, osg::StateAttribute::OFF );
     set->setMode( GL_CULL_FACE, osg::StateAttribute::OFF );
-    set->setRenderBinDetails( BIN_SUN, "RenderBin" );
     set->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), osg::StateAttribute::ON );
-    set->setAttributeAndModes( new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA), osg::StateAttribute::ON );
+   // set->setAttributeAndModes( new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA), osg::StateAttribute::ON );
 
     // create shaders
     osg::Program* program = new osg::Program();
-    osg::Shader* vs = new osg::Shader( osg::Shader::VERTEX, s_sunVertexSource );
+    osg::Shader* vs = new osg::Shader( osg::Shader::VERTEX, Stringify()
+        << s_versionString
+        << s_sunVertexSource );
     program->addShader( vs );
-    osg::Shader* fs = new osg::Shader( osg::Shader::FRAGMENT, s_sunFragmentSource );
+    osg::Shader* fs = new osg::Shader( osg::Shader::FRAGMENT, Stringify()
+        << s_versionString
+#ifdef OSG_GLES2_AVAILABLE
+        << "precision highp float;\n"
+#endif
+        << s_mathUtils
+        << s_sunFragmentSource );
     program->addShader( fs );
     set->setAttributeAndModes( program, osg::StateAttribute::ON );
 
@@ -943,11 +1278,94 @@ SkyNode::makeSun()
         _sunDistance * _defaultPerViewData._lightPos.y(), 
         _sunDistance * _defaultPerViewData._lightPos.z() ) );
     _defaultPerViewData._sunXform->addChild( sun );
+
+    // A nested camera isolates the projection matrix calculations so the node won't 
+    // affect the clip planes in the rest of the scene.
+    osg::Camera* cam = new osg::Camera();
+    cam->getOrCreateStateSet()->setRenderBinDetails( BIN_SUN, "RenderBin" );
+    cam->setRenderOrder( osg::Camera::NESTED_RENDER );
+    cam->setComputeNearFarMode( osg::CullSettings::COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES );
+    cam->addChild( sun );
+
+    _sun = cam;
+}
+
+void
+SkyNode::makeMoon()
+{
+    osg::ref_ptr< osg::EllipsoidModel > em = new osg::EllipsoidModel( 1738140.0, 1735970.0 );   
+    osg::Geode* moon = new osg::Geode;
+    moon->getOrCreateStateSet()->setAttributeAndModes( new osg::Program(), osg::StateAttribute::OFF | osg::StateAttribute::PROTECTED );
+    osg::Geometry* geom = s_makeEllipsoidGeometry( em.get(), em->getRadiusEquator(), true );    
+    //TODO:  Embed this texture in code or provide a way to have a default resource directory for osgEarth.
+    //       Right now just need to have this file somewhere in your OSG_FILE_PATH
+    osg::Image* image = osgDB::readImageFile( "moon_1024x512.jpg" );
+    osg::Texture2D * texture = new osg::Texture2D( image );
+    texture->setFilter(osg::Texture::MIN_FILTER,osg::Texture::LINEAR);
+    texture->setFilter(osg::Texture::MAG_FILTER,osg::Texture::LINEAR);
+    texture->setResizeNonPowerOfTwoHint(false);
+    geom->getOrCreateStateSet()->setTextureAttributeAndModes( 0, texture, osg::StateAttribute::ON | osg::StateAttribute::PROTECTED);
+    
+    osg::Vec4Array* colors = new osg::Vec4Array(1);    
+    geom->setColorArray( colors );
+    geom->setColorBinding(osg::Geometry::BIND_OVERALL);
+    (*colors)[0] = osg::Vec4(1, 1, 1, 1 );
+    moon->addDrawable( geom  ); 
+    
+    osg::StateSet* set = moon->getOrCreateStateSet();
+    // configure the stateset
+    set->setMode( GL_LIGHTING, osg::StateAttribute::ON );
+    set->setAttributeAndModes( new osg::CullFace( osg::CullFace::BACK ), osg::StateAttribute::ON);
+    set->setRenderBinDetails( BIN_MOON, "RenderBin" );
+    set->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), osg::StateAttribute::ON );
+    set->setAttributeAndModes( new osg::BlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA), osg::StateAttribute::ON );
+
+#ifdef OSG_GLES2_AVAILABLE
+    
+    set->addUniform(new osg::Uniform("moonTex", 0));
+    
+    // create shaders
+    osg::Program* program = new osg::Program();
+    osg::Shader* vs = new osg::Shader( osg::Shader::VERTEX, Stringify()
+                                      << s_versionString
+                                      << "precision highp float;\n"
+                                      << s_moonVertexSource );
+    program->addShader( vs );
+    osg::Shader* fs = new osg::Shader( osg::Shader::FRAGMENT, Stringify()
+                                      << s_versionString
+                                      << "precision highp float;\n"
+                                      << s_moonFragmentSource );
+    program->addShader( fs );
+    set->setAttributeAndModes( program, osg::StateAttribute::ON | osg::StateAttribute::PROTECTED );
+#endif
     
-    AddCallbackToDrawablesVisitor visitor( _sunDistance );
-    sun->accept( visitor );
+    // make the moon's transform:
+    // todo: move this?
+    _defaultPerViewData._moonXform = new osg::MatrixTransform();    
+
+    Moon moonModel;
+    //Get some default value of the moon
+    osg::Vec3d pos = moonModel.getPosition( 2011, 2, 1, 0 );            
+    _defaultPerViewData._moonXform->setMatrix( osg::Matrix::translate( pos ) ); 
+    _defaultPerViewData._moonXform->addChild( moon );
 
-    _sun = sun;
+    //If we couldn't load the moon texture, turn the moon off
+    if (!image)
+    {
+        OSG_ALWAYS << "Couldn't load moon texture, add osgEarth's data directory your OSG_FILE_PATH" << std::endl;
+        _defaultPerViewData._moonXform->setNodeMask( 0 );
+        _defaultPerViewData._moonVisible = false;
+    }
+
+    // A nested camera isolates the projection matrix calculations so the node won't 
+    // affect the clip planes in the rest of the scene.
+    osg::Camera* cam = new osg::Camera();
+    cam->getOrCreateStateSet()->setRenderBinDetails( BIN_MOON, "RenderBin" );
+    cam->setRenderOrder( osg::Camera::NESTED_RENDER );
+    cam->setComputeNearFarMode( osg::CullSettings::COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES );
+    cam->addChild( moon );
+
+    _moon = cam;
 }
 
 SkyNode::StarData::StarData(std::stringstream &ss)
@@ -979,13 +1397,13 @@ SkyNode::makeStars(const std::string& starFile)
 
   osg::Node* starNode = buildStarGeometry(stars);
 
-  AddCallbackToDrawablesVisitor visitor(_starRadius);
-  starNode->accept(visitor);
+  //AddCallbackToDrawablesVisitor visitor(_starRadius);
+  //starNode->accept(visitor);
 
   _stars = starNode;
 }
 
-osg::Geode*
+osg::Node*
 SkyNode::buildStarGeometry(const std::vector<StarData>& stars)
 {
   double minMag = DBL_MAX, maxMag = DBL_MIN;
@@ -994,10 +1412,8 @@ SkyNode::buildStarGeometry(const std::vector<StarData>& stars)
   std::vector<StarData>::const_iterator p;
   for( p = stars.begin(); p != stars.end(); p++ )
   {
-    osg::Vec3 v = osg::Vec3(0,_starRadius,0) * 
-      osg::Matrix::rotate( p->declination, 1, 0, 0 ) * 
-      osg::Matrix::rotate( p->right_ascension, 0, 0, 1 );
-
+    
+    osg::Vec3d v = getPositionFromRADecl( p->right_ascension, p->declination, _starRadius );
     coords->push_back( v );
 
     if ( p->magnitude < minMag ) minMag = p->magnitude;
@@ -1007,34 +1423,44 @@ SkyNode::buildStarGeometry(const std::vector<StarData>& stars)
   osg::Vec4Array* colors = new osg::Vec4Array();
   for( p = stars.begin(); p != stars.end(); p++ )
   {
-      //float c = 0.5f + 0.5f * ( (p->magnitude-minMag) / (maxMag-minMag) );
       float c = ( (p->magnitude-minMag) / (maxMag-minMag) );
       colors->push_back( osg::Vec4(c,c,c,1.0f) );
   }
 
   osg::Geometry* geometry = new osg::Geometry;
-  geometry->setUseVertexBufferObjects( true );
+  geometry->setUseVertexBufferObjects(true);
+
   geometry->setVertexArray( coords );
   geometry->setColorArray( colors );
   geometry->setColorBinding(osg::Geometry::BIND_PER_VERTEX);
   geometry->addPrimitiveSet( new osg::DrawArrays(osg::PrimitiveSet::POINTS, 0, coords->size()));
 
-  osg::StateSet* sset = new osg::StateSet;
+  osg::StateSet* sset = geometry->getOrCreateStateSet();
 
+  sset->setTextureAttributeAndModes( 0, new osg::PointSprite(), osg::StateAttribute::ON );
   sset->setMode( GL_VERTEX_PROGRAM_POINT_SIZE, osg::StateAttribute::ON );
+
   osg::Program* program = new osg::Program;
-  program->addShader( new osg::Shader(osg::Shader::VERTEX, s_starVertexSource) );
-  program->addShader( new osg::Shader(osg::Shader::FRAGMENT, s_starFragmentSource) );
+  program->addShader( new osg::Shader(osg::Shader::VERTEX, s_createStarVertexSource()) );
+  program->addShader( new osg::Shader(osg::Shader::FRAGMENT, s_createStarFragmentSource()) );
   sset->setAttributeAndModes( program, osg::StateAttribute::ON );
 
   sset->setRenderBinDetails( BIN_STARS, "RenderBin");
   sset->setAttributeAndModes( new osg::Depth(osg::Depth::ALWAYS, 0, 1, false), osg::StateAttribute::ON );
-  geometry->setStateSet( sset );
+  sset->setMode(GL_BLEND, 1);
 
   osg::Geode* starGeode = new osg::Geode;
   starGeode->addDrawable( geometry );
 
-  return starGeode;
+  // A separate camera isolates the projection matrix calculations.
+  osg::Camera* cam = new osg::Camera();
+  cam->getOrCreateStateSet()->setRenderBinDetails( BIN_STARS, "RenderBin" );
+  cam->setRenderOrder( osg::Camera::NESTED_RENDER );
+  cam->setComputeNearFarMode( osg::CullSettings::COMPUTE_NEAR_FAR_USING_BOUNDING_VOLUMES );
+  cam->addChild( starGeode );
+
+  return cam;
+  //return starGeode;
 }
 
 void
@@ -1046,6 +1472,9 @@ SkyNode::getDefaultStars(std::vector<StarData>& out_stars)
   {
     std::stringstream ss(*sptr);
     out_stars.push_back(StarData(ss));
+
+    if (out_stars[out_stars.size() - 1].magnitude < _minStarMagnitude)
+      out_stars.pop_back();
   }
 }
 
@@ -1074,9 +1503,20 @@ SkyNode::parseStarFile(const std::string& starFile, std::vector<StarData>& out_s
 
     std::stringstream ss(line);
     out_stars.push_back(StarData(ss));
+
+    if (out_stars[out_stars.size() - 1].magnitude < _minStarMagnitude)
+      out_stars.pop_back();
   }
 
   in.close();
 
   return true;
 }
+
+osg::Vec3d
+SkyNode::getPositionFromRADecl( double ra, double decl, double range )
+{
+    return osg::Vec3(0,range,0) * 
+           osg::Matrix::rotate( decl, 1, 0, 0 ) * 
+           osg::Matrix::rotate( ra - osg::PI_2, 0, 0, 1 );
+}
diff --git a/src/osgEarthUtil/SpatialData b/src/osgEarthUtil/SpatialData
index 8d023fa..0ca90fc 100644
--- a/src/osgEarthUtil/SpatialData
+++ b/src/osgEarthUtil/SpatialData
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -50,6 +50,9 @@ namespace osgEarth { namespace Util
             float    splitRangeFactor,
             unsigned depth );
 
+        /** dtor */
+        virtual ~GeoCell() { }
+
         /** Adds an object to this geocell graph. */
         virtual bool insertObject( GeoObject* object );
 
@@ -122,6 +125,8 @@ namespace osgEarth { namespace Util
             unsigned         rootWidth        =2,
             unsigned         rootHeight       =2 );
 
+        /** dtor */
+        virtual ~GeoGraph() { }
 
         bool insertObject( GeoObject* object );
 
@@ -133,6 +138,7 @@ namespace osgEarth { namespace Util
     {
     public:
         GeoCellVisitor() : osg::NodeVisitor( osg::NodeVisitor::TRAVERSE_ALL_CHILDREN ) { }
+        virtual ~GeoCellVisitor() { }
 
         virtual void operator()( const GeoCell* cell, const GeoObjectCollection& objects ) =0;
 
@@ -167,6 +173,7 @@ namespace osgEarth { namespace Util
 
     protected:
         GeoObject();
+        virtual ~GeoObject() { }
         osg::observer_ptr<GeoCell> _cell;
         float _priority;
         friend class GeoCell;
diff --git a/src/osgEarthUtil/SpatialData.cpp b/src/osgEarthUtil/SpatialData.cpp
index 7790101..20a7067 100644
--- a/src/osgEarthUtil/SpatialData.cpp
+++ b/src/osgEarthUtil/SpatialData.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -60,7 +60,9 @@ namespace
         
         std::stringstream buf;
         buf << num;
-        t->setText( buf.str() );
+        std::string str;
+        str = buf.str();
+        t->setText( str );
         t->setCharacterSizeMode( osgText::TextBase::SCREEN_COORDS );
         t->setCharacterSize( 22.0f );
         t->setAutoRotateToScreen( true );
@@ -247,6 +249,7 @@ void
 GeoCell::generateBoundaryGeometry()
 {
     osg::Geometry* g = new osg::Geometry();
+    g->setUseVertexBufferObjects(true);
 
     osg::Vec3Array* v = new osg::Vec3Array(10);
     for( unsigned i=0; i<10; ++i )
@@ -369,7 +372,9 @@ GeoCell::adjustCount( int delta )
             osgText::Text* t = static_cast<osgText::Text*>( _clusterGeode->getDrawable(0) );
             std::stringstream buf;
             buf << _count;
-            t->setText( buf.str() );
+            std::string str;
+            str = buf.str();
+            t->setText( str );
         }
 #endif
     }
diff --git a/src/osgEarthUtil/StarData b/src/osgEarthUtil/StarData
index ef874fa..b599c99 100644
--- a/src/osgEarthUtil/StarData
+++ b/src/osgEarthUtil/StarData
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -31,1561 +31,5263 @@ namespace osgEarth { namespace Util
   static const char*  s_defaultStarData[] =  {
     "          ,0.0351079691843475,0.789397876266602,6.7\n",
     "          ,0.0269183473096049,0.0087799757648937,6.29\n",
+    " 33    Psc,0.0488020910076876,-0.0749182581418566,4.61\n",
+    " 86    Peg,0.0782041760989767,0.233806245851885,5.51\n",
+    "          ,0.0476609141890759,1.01991223722375,5.96\n",
+    "          ,0.0516885970782936,-0.853902336538226,5.7\n",
+    " 10    Cas,0.0617578043013378,1.120433505865,5.59\n",
+    "          ,0.0755861822209852,0.50651878961281,6.13\n",
+    "          ,0.0934422430298503,-0.399549499012802,6.18\n",
+    "          ,0.0549778714378214,-0.289962214534802,6.19\n",
     "          ,0.0897502003814007,-0.0253266667011622,6.43\n",
+    "          ,0.0933751149816966,-0.375090648800826,5.94\n",
+    "          ,0.0396055484106406,-0.566718104396181,5.68\n",
+    "          ,0.0511515726930646,-0.0270913885004009,6.07\n",
+    " 21Alp And,0.0661882554794773,0.507725975678773,2.06\n",
+    "          ,0.0582671457973492,-0.125246766377838,5.99\n",
+    "          ,0.0899515845258616,0.63925592736379,6.19\n",
+    "          ,0.0797481212065101,-0.286626696408769,6.06\n",
     "          ,0.104988267312274,0.444409308925867,6.23\n",
+    "          ,0.0663896396239381,1.39128436509047,6.01\n",
+    " 11Bet Cas,0.0536353104747488,1.03235740441783,2.27\n",
+    " 87    Peg,0.0424920544812466,0.317858393745845,5.53\n",
     "          ,0.0424920544812466,-0.94244385911926,6.33\n",
+    "   Kap1Scl,0.0674636883943962,-0.453998923538214,5.42\n",
+    "   Eps Phe,0.0724311639577647,-0.772351827238791,3.88\n",
+    " 34    Psc,0.0467211215149251,0.19452664140839,5.51\n",
+    " 22    And,0.0695446578871587,0.804111971488276,5.03\n",
     "          ,0.0835072919031133,0.997727163176181,6.74\n",
+    "          ,0.0688733774056224,-0.0829273801537861,5.84\n",
+    "   Gam3Oct,0.0464526093223106,-1.42726238836561,5.28\n",
+    "          ,0.101094840519364,-0.199316600577752,5.85\n",
     "          ,0.0954560844744591,-1.2701730594125,6.64\n",
+    "  6    Cet,0.0693432737426978,-0.253630277272454,4.89\n",
+    "   Kap2Scl,0.0941806515595402,-0.457281112159325,5.41\n",
+    "   The Scl,0.107069236805037,-0.608542980665501,5.25\n",
+    "          ,0.127341907347432,0.840419668066569,6.16\n",
+    "          ,0.0657854871905555,-0.280328966691156,5.25\n",
     "          ,0.120024950098687,0.657872772718396,6.73\n",
+    " 88Gam Peg,0.0757875663654461,0.265004006231283,2.83\n",
     "          ,0.0889446638035572,0.471015883745159,6.3\n",
+    " 23    And,0.0980740783524506,0.716200706692684,5.72\n",
+    "          ,0.113245017235171,-0.453402602710449,5.94\n",
     "          ,0.116064395257623,-0.448816265287153,6.31\n",
     "          ,0.0641744140348684,0.579555970671962,6.25\n",
+    " 89Chi Peg,0.109687230683028,0.352672864186321,4.8\n",
+    "          ,0.0981412064006042,-0.108549783200425,5.12\n",
+    "          ,0.0827688833734234,-1.44872509002833,5.77\n",
+    "  7    Cet,0.112640864801788,-0.297879221947321,4.44\n",
     "          ,0.136404193848172,0.388932079396503,6.24\n",
+    " 35    Psc,0.140029108448468,0.153952584436333,5.79\n",
+    "          ,0.134256096307256,-0.147136104079933,5.75\n",
     "          ,0.0748477736912953,0.550404124026845,6.45\n",
     "          ,0.0796809931583565,0.476179149448975,6.35\n",
+    "          ,0.139223571870625,-0.577626412221146,6.17\n",
     "          ,0.088609023562789,1.34304540382007,6.35\n",
+    "          ,0.0988124868821405,0.760871439270117,6.15\n",
+    "          ,0.081761962651119,-0.533261112262812,5.67\n",
     "          ,0.139559212111393,-1.29309020211854,6.49\n",
+    " 36    Psc,0.115594498920548,0.143815130364333,6.11\n",
+    "          ,0.146473401071216,1.07395926639384,5.74\n",
     "          ,0.126872011010357,-0.345390962696056,6.47\n",
+    "          ,0.0863937979737193,0.836841743099981,5.89\n",
+    " 24The And,0.0815605785066581,0.675122443492273,4.61\n",
     "          ,0.135598657270329,-1.3477335521164,6.77\n",
+    "          ,0.131906614621879,0.897676163805606,6.14\n",
     "          ,0.117943980605924,-0.330720500705681,6.45\n",
+    "          ,0.13821665114832,0.0294766718114598,6.17\n",
+    " 25Sig And,0.104988267312274,0.642024213482925,4.52\n",
+    "          ,0.101631864904593,0.195578687096398,6.05\n",
+    " 26    And,0.1350616328851,0.764299071995561,6.11\n",
+    "          ,0.129959901225424,0.550079298860502,5.87\n",
     "          ,0.134658864596178,-0.138705194165438,6.46\n",
     "          ,0.135732913366636,-0.746385206478564,6.33\n",
+    "  8Iot Cet,0.117406956220695,-0.125246766377838,3.56\n",
     "          ,0.138753675533549,0.710867756200479,6.33\n",
     "          ,0.0942477796076938,0.85285998712384,6.52\n",
+    "   Zet Tuc,0.0930394747409285,-1.10174393845823,4.23\n",
+    "          ,0.120024950098687,0.539932148514879,5.9\n",
+    "          ,0.148352986419518,0.574412097515389,5.79\n",
+    " 41    Psc,0.135464401174021,0.142947313875147,5.37\n",
     "          ,0.160436035087171,0.191583822364055,6.56\n",
+    " 27Rho And,0.101430480760132,0.662677276298192,5.18\n",
+    "   Pi  Tuc,0.139626340159546,-1.19336887605112,5.51\n",
+    "   Iot Scl,0.133517687777566,-0.471558875068001,5.18\n",
+    "          ,0.153790358319962,-0.348057437942158,5.12\n",
     " 42    Psc,0.130228413418038,0.235314016400135,6.23\n",
+    "          ,0.130027029273578,-1.33645193775698,5.97\n",
     "  9    Cet,0.165537766746847,-0.205784015083754,6.39\n",
     "          ,0.117272700124388,-0.5404218103328,6.55\n",
     "          ,0.107404877045805,0.673299544051301,7.39\n",
+    "          ,0.125663706143592,0.90792027688745,5.57\n",
+    " 12    Cas,0.168491400865606,1.07915646905534,5.4\n",
+    "          ,0.144593815722915,-0.0310814050959324,6.07\n",
+    "          ,0.11767546841331,0.92584383867807,5.74\n",
+    " 44    Psc,0.141573053556002,0.0338545393518789,5.77\n",
+    "   Bet Hyi,0.169632577684218,-1.33946747885348,2.8\n",
+    "   Alp Phe,0.136269937751865,-0.727695639071791,2.39\n",
+    "   Kap Phe,0.129825645129117,-0.738623339444,3.94\n",
+    " 10    Cet,0.163658181398545,0.000867816489186069,6.19\n",
+    "          ,0.137545370666784,-0.426781483480724,5.98\n",
+    " 47    Psc,0.126066474432513,0.312292732686708,5.06\n",
+    "          ,0.140566132833697,0.77482922514926,5.17\n",
+    "   Eta Scl,0.192590370152759,-0.57583260160104,4.81\n",
+    " 48    Psc,0.139223571870625,0.287019395490468,6.06\n",
+    "          ,0.149158522997362,0.177844202641411,6.04\n",
     "          ,0.150501083960434,-0.343218997404685,6.43\n",
+    "          ,0.157616657064719,-0.66470864562204,5.43\n",
     "          ,0.19816199814951,0.644026493985908,6.26\n",
     "          ,0.18003742514803,-0.863365899593484,6.26\n",
     "          ,0.204740546868566,1.34424289361241,6.21\n",
+    "          ,0.157616657064719,1.04680000397809,5.94\n",
+    " 28    And,0.140700388930004,0.51926454128918,5.23\n",
+    "          ,0.196215284753055,-0.229263541659888,6.14\n",
     "          ,0.192187601863837,-0.556469143177525,6.57\n",
+    " 12    Cet,0.134121840210949,-0.0356531981087953,5.72\n",
+    "          ,0.161375827761322,-0.387676411962429,5.19\n",
+    "          ,0.168222888672992,-0.681735302102607,6.19\n",
+    "          ,0.165940535035769,-0.83400558306549,5.69\n",
+    " 13    Cas,0.169229809395296,1.16098332215301,6.18\n",
+    "          ,0.169632577684218,0.586110651640562,5.87\n",
+    " 14Lam Cas,0.197557845716127,0.951592293281797,4.73\n",
+    "          ,0.19057652870815,0.922222280480182,5.6\n",
+    "   Lam1Phe,0.168827041106375,-0.823732381162779,4.77\n",
+    "   Bet1Tuc,0.179164760522033,-1.06538291237502,4.37\n",
+    "   Bet2Tuc,0.180373065388799,-1.06524716454431,4.54\n",
     "          ,0.175606973969891,0.759126110018122,6.7\n",
     "          ,0.169901089876833,1.23886379188644,6.42\n",
+    " 15Kap Cas,0.143989663289532,1.0983647871009,4.16\n",
+    " 52    Psc,0.187287254348622,0.354204875418627,5.38\n",
+    " 51    Psc,0.171579291080673,0.121397345749828,5.67\n",
     "          ,0.18594469338555,0.481371503973658,6.67\n",
     "          ,0.205546083446409,0.493583960600807,6.3\n",
+    "          ,0.157952297305487,0.958098492882287,5.93\n",
+    "   Bet3Tuc,0.198430510342125,-1.09901443743358,5.09\n",
     " 16    Cas,0.181782754400025,1.16501212384303,6.48\n",
+    "          ,0.199168918871814,-0.496400728088054,5.55\n",
+    "   The Tuc,0.175271333729123,-1.23453925385094,6.13\n",
+    "          ,0.185676181192935,-0.90106016329975,5.57\n",
     "          ,0.222596607677431,0.233369913538886,6.4\n",
+    " 13    Cet,0.172720467899285,-0.0420139536049524,5.2\n",
+    " 14    Cet,0.196752309138284,0.00882360899619355,5.93\n",
+    "          ,0.168222888672992,0.945420615121273,5.08\n",
     "          ,0.226154394229573,0.230499816546718,6.41\n",
+    "          ,0.193731546971371,1.05288926381282,5.79\n",
+    "   Lam2Phe,0.207895565131786,-0.837743496546845,5.51\n",
+    "          ,0.197557845716127,-0.928132159252907,6.06\n",
     "          ,0.183930851940941,0.475684639494244,6.5\n",
     "          ,0.161107315568707,-0.227353375756317,6.45\n",
+    "          ,0.16634330332469,-0.3692680364907,6.06\n",
+    "          ,0.219642973558671,0.776472743528222,5.13\n",
+    " 17Zet Cas,0.23535093682662,0.940679137320022,3.66\n",
+    " 29Pi  And,0.228101107626028,0.588515327498866,4.36\n",
+    " 53    Psc,0.220582766232822,0.265842733899603,5.89\n",
     "          ,0.171109394743598,0.419126275456005,6.47\n",
+    "          ,0.189770992130307,0.61783685893237,5.48\n",
     "          ,0.233672735622779,1.43978997388548,6.4\n",
+    "          ,0.189233967745077,-0.405488466606394,5.57\n",
     "          ,0.207291412698403,-1.13228720036813,6.42\n",
     "          ,0.202391065183189,0.0547209201868333,6.39\n",
     "          ,0.185743309241089,-0.935598289941994,6.41\n",
+    " 30Eps And,0.210513559009778,0.511585092580405,4.37\n",
+    "          ,0.183460955603865,0.861397556048179,5.43\n",
+    " 31Del And,0.196618053041977,0.538623151575883,3.27\n",
+    " 54    Psc,0.199437431064429,0.370892162322417,5.87\n",
+    " 55    Psc,0.244815991616282,0.374169502806718,5.36\n",
+    " 18Alp Cas,0.215481034573146,0.986760677709483,2.23\n",
     "          ,0.220582766232822,-1.27169537437118,6.85\n",
     "          ,0.247903881831348,-0.559174403518117,6.69\n",
+    "          ,0.23998277214922,-0.754040414503284,6.01\n",
     "          ,0.212930168743308,-0.270230297713644,6.49\n",
+    "          ,0.21870318088452,-0.387385523753764,6.14\n",
+    "          ,0.23145751003371,-0.0636705807401154,5.91\n",
+    " 32    And,0.188562687263541,0.688682682152907,5.33\n",
+    "          ,0.209976534624549,-1.0218127068537,5.89\n",
+    "          ,0.187824278733851,1.15449166696295,5.83\n",
+    "          ,0.227228443000031,0.42986005035577,6.04\n",
+    " 19Xi  Cas,0.188495559215388,0.881609438413636,4.8\n",
+    "   Mu  Phe,0.205210443205641,-0.801367926053196,4.59\n",
+    "          ,0.225013217410961,1.0254391131884,6.17\n",
+    "   Xi  Phe,0.241191077015986,-0.968628646035986,5.7\n",
+    " 20Pi  Cas,0.225348857651729,0.820736232613522,4.94\n",
+    "   Lam1Scl,0.240855436775217,-0.655138423556938,6.06\n",
+    "          ,0.239378619715838,-1.04261606191011,5.98\n",
+    "   Rho Tuc,0.221388302810665,-1.12629490326962,5.39\n",
+    " 16Bet Cet,0.235149552682159,-0.279485390886025,2.04\n",
+    "          ,0.227429827144492,0.835387302056653,5.67\n",
+    "          ,0.255019454935633,-0.209235888493254,6.02\n",
+    "   Eta Phe,0.216085187006529,-0.986755829572672,4.36\n",
+    " 21    Cas,0.248709418409192,1.30878846911287,5.66\n",
+    " 22Omi Cas,0.250387619613033,0.84272253305184,4.54\n",
+    " 17Phi1Cet,0.207291412698403,-0.16389611303589,4.76\n",
+    "   Lam2Scl,0.208231205372554,-0.655865644078602,5.9\n",
+    "          ,0.21944158941421,0.963799901772135,5.42\n",
+    "          ,0.251595924479798,-0.383865776428908,5.24\n",
+    "          ,0.26864644871082,-0.72122822456579,5.94\n",
+    "          ,0.23535093682662,-1.073416275071,6.07\n",
     "          ,0.253072741539178,1.20994950394507,6.33\n",
+    "          ,0.228705260059411,-0.0588321402026422,6.15\n",
+    "          ,0.196349540849362,-0.912545399405235,6.15\n",
+    " 18    Cet,0.234881040489545,-0.194066068411336,6.15\n",
     "          ,0.220985534521744,0.965259190952275,6.52\n",
+    "          ,0.215346778476839,0.782978943128712,6.05\n",
     "          ,0.252334333009488,-0.27184957540855,6.47\n",
     "          ,0.257637448813624,1.039770205602,6.39\n",
+    " 23    Cas,0.266968247506979,1.30633531188646,5.41\n",
+    "          ,0.257570320765471,-0.8106763487305,5.8\n",
+    "          ,0.216555083343604,-0.374862786370704,5.5\n",
+    " 57    Psc,0.245017375760742,0.270099398019745,5.38\n",
+    "          ,0.22165681500328,1.26841803388688,5.87\n",
+    " 58    Psc,0.207090028553943,0.208983785379077,5.5\n",
+    " 59    Psc,0.223335016207121,0.341716074993245,6.13\n",
+    " 34Zet And,0.232330174659707,0.423542928090913,4.06\n",
+    " 60    Psc,0.236760625837846,0.117649735994851,5.99\n",
     " 61    Psc,0.27864852788571,0.365214994116625,6.54\n",
+    "          ,0.263209076810376,-0.313087827123727,5.7\n",
+    " 24Eta Cas,0.221858199147741,1.00907665145095,3.44\n",
+    "          ,0.210916327298699,-0.35390913907315,5.57\n",
+    " 62    Psc,0.232800070996782,0.127409035395586,5.93\n",
+    "          ,0.240318412389988,0.0921630807789228,5.75\n",
+    " 25Nu  Cas,0.276701814489255,0.889565230920643,4.89\n",
+    " 63Del Psc,0.264484509725295,0.13238322376377,4.43\n",
+    " 64    Psc,0.288247838771679,0.295668471561462,5.07\n",
+    " 35Nu  And,0.279319808367246,0.716961864172026,4.53\n",
+    "          ,0.248172394023963,-0.217094718264039,5.59\n",
+    "          ,0.232464430756014,-0.416498585304391,5.9\n",
     "          ,0.285562716845534,-0.79067293624792,6.27\n",
     " 65    Psc,0.284690052219537,0.483645280138062,7\n",
     " 65    Psc,0.285227076604766,0.48363558386444,7.1\n",
     "          ,0.258644369535929,-0.39511345383065,6.28\n",
+    "          ,0.276701814489255,1.12133041117506,5.39\n",
+    "          ,0.242735022123519,0.785436948491937,6.15\n",
+    " 19Phi2Cet,0.228369619818643,-0.163285247797692,5.19\n",
+    "   Lam Hyi,0.256966168332088,-1.27542843971572,5.07\n",
+    "          ,0.244547479423667,1.07871528860553,6.07\n",
     "          ,0.295229155779656,0.898985160744601,6.39\n",
     "          ,0.22313363206266,-0.743602375948995,6.48\n",
+    "          ,0.306909436158387,1.46096663547634,5.62\n",
     "          ,0.267773784084822,0.90008568780072,6.21\n",
+    "   Rho Phe,0.273479668177881,-0.855439195907343,5.22\n",
     "          ,0.247098345253505,0.0590793951800081,6.37\n",
+    "          ,0.236760625837846,1.0668179608711,4.82\n",
     "          ,0.292476905805357,-0.738114285078835,6.9\n",
     "          ,0.298585558187338,0.672800185959758,6.69\n",
+    "          ,0.281400777860009,-0.418777209605606,5.46\n",
+    " 20    Cet,0.231927406370785,-0.0149371095149848,4.77\n",
+    "          ,0.269116345047895,0.6530682691386,6.06\n",
     "          ,0.295162027731503,0.919599438465379,6.27\n",
     "          ,0.247903881831348,-0.405318781818005,6.46\n",
     "   Lam1Tuc,0.259517034161926,-1.19547296742714,6.22\n",
+    " 26Ups1Cas,0.240117028245528,1.02926914126917,4.83\n",
+    " 66    Psc,0.282877594919389,0.334899594636845,5.74\n",
+    " 21    Cet,0.259248521969312,-0.126696359284355,6.16\n",
     "          ,0.246964089157198,0.849602039186784,6.27\n",
+    "          ,0.282139186389699,-1.06689553106008,5.7\n",
+    " 36    And,0.313487984877443,0.412392213425394,5.47\n",
+    "          ,0.259718418306387,0.428599534784885,6.2\n",
     "          ,0.261665131702842,1.01223278851498,6.21\n",
     "          ,0.318992484826041,1.20036958560634,6.37\n",
+    " 67    Psc,0.318522588488965,0.474894393194035,6.09\n",
+    "          ,0.296907356983497,-0.116112876625734,5.85\n",
+    " 27Gam Cas,0.30140493620979,1.05970574416922,2.47\n",
+    " 28Ups2Cas,0.297780021609494,1.03290524387749,4.63\n",
+    "          ,0.307580716639924,1.05352921787189,5.55\n",
+    " 22Phi3Cet,0.246359936723815,-0.187332006380725,5.31\n",
+    "          ,0.314494905599747,-0.457702900061891,6.1\n",
+    " 37Mu  And,0.305029850810086,0.671942065744195,3.87\n",
+    "   Lam2Tuc,0.240385540438142,-1.19508026834544,5.45\n",
+    " 38Eta And,0.265357174351292,0.408712477585772,4.42\n",
+    "          ,0.302009088643173,0.80005408097739,6.12\n",
+    "          ,0.294826387490734,1.15806474379273,5.97\n",
+    " 68    Psc,0.316105978755435,0.506009735247645,5.42\n",
+    "          ,0.272137107214808,0.592553825462508,5.98\n",
     "          ,0.321878990896647,0.239037385471057,6.32\n",
     "          ,0.278447143741249,0.373578030115764,6.37\n",
     "          ,0.303418777654399,1.2388880325705,6.39\n",
+    " 23Phi4Cet,0.312011167818063,-0.185353966561798,5.61\n",
+    "   Alp Scl,0.301941960595019,-0.499905931002476,4.31\n",
     "          ,0.283146107112003,-1.03504327221118,6.23\n",
     "          ,0.266364095073596,0.780356101113909,6.84\n",
+    "          ,0.266632607266211,0.780394886208398,6.04\n",
+    "          ,0.32416134453387,0.113150665034155,6.11\n",
+    "          ,0.35671844788838,1.50546768326539,4.25\n",
     "          ,0.473454123627539,1.55361452993637,6.46\n",
     "          ,0.295229155779656,0.890728783755306,6.47\n",
+    "   Xi  Scl,0.290731576553363,-0.647226264281231,5.59\n",
     "          ,0.276903198633716,0.826869125679558,6.45\n",
+    " 39    And,0.343427094353961,0.721606379237056,5.98\n",
+    " 69Sig Psc,0.336445777345984,0.555092272323174,5.5\n",
+    "          ,0.324564112822792,1.06595984065554,5.92\n",
+    "   Sig Scl,0.305969643484237,-0.531418820274596,5.5\n",
+    " 71Eps Psc,0.346514984569028,0.137706477982353,4.28\n",
+    "   Ome Phe,0.272942643792652,-0.994794040405468,6.11\n",
+    " 25    Cet,0.278380015693096,-0.055210582004754,5.43\n",
+    "          ,0.305566875195315,1.07477860151492,5.84\n",
+    "          ,0.282474826630467,0.916336642391512,5.99\n",
+    "          ,0.336580033442291,-0.795913772140714,5.36\n",
     "          ,0.298518430139184,-0.496967960094952,6.29\n",
+    " 26    Cet,0.340674844379662,0.0238528331105892,6.04\n",
     "          ,0.342084533390889,0.890292451442307,6.54\n",
+    "          ,0.316307362899895,0.517640415457463,6.19\n",
     "          ,0.328121899374934,-1.1265033731525,6.21\n",
     "          ,0.328121899374934,0.697976560419777,6.72\n",
     "          ,0.349737130880402,1.52097202478727,6.25\n",
+    " 73    Psc,0.349871386976709,0.0987226098843348,6\n",
+    " 72    Psc,0.29086583264967,0.260858849257797,5.68\n",
     "          ,0.318589716537119,1.09539772737251,6.54\n",
+    " 74Psi1Psc,0.338526746838746,0.374780368044916,5.34\n",
+    " 74Psi1Psc,0.339600795609204,0.374639772077394,5.56\n",
     "          ,0.317582795814814,1.39646702334153,6.29\n",
     " 77    Psc,0.349670002832249,0.085666577452055,6.35\n",
     " 77    Psc,0.352623636951008,0.0856859699992994,7.25\n",
+    " 27    Cet,0.333022246890149,-0.139989950420379,6.12\n",
     "          ,0.292611161901665,0.993703209622971,6.43\n",
+    " 28    Cet,0.294826387490734,-0.14242856323636,5.58\n",
     "          ,0.30509697885824,0.9337220609961,6.38\n",
+    " 75    Psc,0.333089374938302,0.22612679714311,6.12\n",
+    "          ,0.298317045994723,-0.384103335132652,6.14\n",
+    " 30Mu  Cas,0.318723972633426,0.958539673332097,5.17\n",
+    "   Bet Phe,0.294692131394427,-0.790309325987088,3.31\n",
     "          ,0.323557192100487,-0.59933152072442,6.61\n",
+    " 41    And,0.297914277705801,0.766931610283986,5.03\n",
     "          ,0.309930198325301,-0.384035461217297,6.37\n",
+    "          ,0.341413252909352,1.01689184799044,5.79\n",
     " 78    Psc,0.29845130209103,0.558718678657874,6.25\n",
+    " 79Psi2Psc,0.369137136796801,0.361966742453191,5.55\n",
+    " 30    Cet,0.354368966203003,-0.143369101777712,5.82\n",
+    " 80    Psc,0.326510826219247,0.0986062546008685,5.52\n",
+    "   Ups Phe,0.356651319840226,-0.707086209487825,5.21\n",
+    "   Iot Tuc,0.317448539718507,-1.05111969387677,5.37\n",
+    "          ,0.336580033442291,1.39057168897924,5.64\n",
+    " 31Eta Cet,0.344232630931805,-0.171352547451354,3.45\n",
+    " 42Phi And,0.341614637053813,0.824527475599799,4.25\n",
+    " 31    Cas,0.358195264947759,1.20041321883764,5.29\n",
+    " 43Bet And,0.360007722247907,0.621695975834002,2.06\n",
+    "   Zet Phe,0.327719131086012,-0.955640487519062,3.92\n",
+    " 81Psi3Psc,0.367123295352192,0.34310749025803,5.55\n",
+    " 44    And,0.330672765204772,0.734458789923269,5.65\n",
+    "          ,0.331478301782615,0.444322042463268,5.8\n",
+    "          ,0.344165502883651,1.12054986114847,5.55\n",
+    " 33The Cas,0.318119820200043,0.962544234338062,4.33\n",
+    "          ,0.320872070174342,0.273565815839678,6.06\n",
+    " 32    Cas,0.365377966100198,1.13479368709947,5.57\n",
     " 32    Cet,0.321543350655878,-0.123811717881753,6.4\n",
+    " 33    Cet,0.350542667458246,0.0426829964848836,5.95\n",
+    " 45    And,0.323624320148641,0.658410915904428,5.81\n",
+    " 82    Psc,0.318925356777887,0.548464869302407,5.16\n",
     "          ,0.315367570225745,-0.982717331609029,6.41\n",
+    " 84Chi Psc,0.346313600424567,0.367125160020196,4.66\n",
+    " 83Tau Psc,0.362961356366667,0.525164723788283,4.51\n",
+    " 34    Cet,0.36819734412265,-0.0305238693626564,5.94\n",
     "          ,0.331813942023383,1.07696995935353,6.41\n",
+    "          ,0.359806338103446,0.79129349775974,6.11\n",
+    "          ,0.394041642661797,0.524718695201662,6.19\n",
     "          ,0.37282917944525,1.39469260526867,6.26\n",
     "          ,0.345575191894877,-0.509597356487855,6.52\n",
+    "          ,0.375111533082474,-0.630825017449295,5.92\n",
+    " 85Phi Psc,0.378803575730923,0.42906495591875,4.65\n",
+    " 86Zet Psc,0.377461014767851,0.132213538975382,5.24\n",
     " 86Zet Psc,0.379340600116152,0.132266868480304,6.3\n",
     "          ,0.329598716434314,0.497937587457171,6.43\n",
+    " 87    Psc,0.333089374938302,0.28158463412523,5.98\n",
     "          ,0.347857545532101,1.25216707929609,7.83\n",
+    " 37    Cet,0.355107374732692,-0.106062689016333,5.13\n",
+    " 88    Psc,0.379810496453228,0.122090629313814,6.03\n",
+    " 38    Cet,0.388939911002121,0.0169975676597003,5.7\n",
     "          ,0.3645053014742,0.839193089453362,6.61\n",
+    "   Nu  Phe,0.342151661439042,-0.776123677677823,4.96\n",
+    "          ,0.356852703984687,0.577960933661111,6.02\n",
     "          ,0.342822941920578,0.783686771103132,6.34\n",
+    " 39    Cet,0.380347520838457,-0.0261750906431038,5.41\n",
     "          ,0.368331600218957,0.554049922908789,6.73\n",
     "          ,0.375245789178781,1.35386159704562,6.31\n",
     "          ,0.354033325962234,0.8276302831589,6.25\n",
+    "   Kap Tuc,0.389141295146582,-1.17153286785395,4.86\n",
+    " 89    Psc,0.400418807236391,0.0630839561859728,5.16\n",
     "          ,0.403439569403305,0.652510733405325,6.46\n",
     "          ,0.34080910047597,-1.14496992626596,6.24\n",
     "          ,0.43277452644644,1.33061962917323,6.38\n",
+    " 34Phi Cas,0.355644399117922,1.01633431225716,4.98\n",
+    " 90Ups Psc,0.382294234234912,0.475849476145821,4.76\n",
     " 35    Cas,0.360410490536829,1.12850080551867,6.34\n",
+    " 42    Cet,0.409548221785285,0.0088817866379267,5.87\n",
+    "          ,0.424987672860619,1.37402499804297,6.07\n",
     "          ,0.395384203624869,-0.0480498839347661,6.23\n",
+    "          ,0.386389045172283,-0.187816820061834,6.15\n",
+    " 91    Psc,0.363364124655589,0.501573690065493,5.23\n",
+    " 46Xi  And,0.385180740305518,0.794629015885774,4.88\n",
     "          ,0.391155136591191,1.01478775661443,6.45\n",
+    "          ,0.407467252292522,0.0301311702809577,6.2\n",
     " 43    Cet,0.404513618173763,0.00784913349716339,6.49\n",
     "          ,0.398740606032551,-0.330192053793272,6.35\n",
+    " 47    And,0.416663794889569,0.658250927389661,5.58\n",
     "          ,0.412501855904044,0.597702546755892,6.29\n",
+    "          ,0.39558558776933,0.357249505335995,5.97\n",
     "          ,0.433311550831669,1.23883470306558,6.49\n",
+    " 36Psi Cas,0.446065879980858,1.18909281938374,4.74\n",
+    "          ,0.403775209644073,-0.50709571789333,5.84\n",
     " 44    Cet,0.369875545326491,-0.139495440465647,6.21\n",
+    " 45The Cet,0.368398728267111,-0.136426569864223,3.6\n",
+    " 37Del Cas,0.436667953239351,1.0513039230756,2.68\n",
+    "          ,0.394175898758104,-0.0887548406007228,5.91\n",
+    "          ,0.419953069249097,-0.250275366599176,6.14\n",
+    "          ,0.431901861820443,-0.0200955270819903,6.15\n",
+    "          ,0.418811892430485,0.410355995964733,6.18\n",
+    "          ,0.42129563021217,-0.706989246751603,5.42\n",
+    "          ,0.40021742309193,0.758481307822247,5.96\n",
     "          ,0.386926069557512,0.603530007202828,6.31\n",
     "          ,0.42277244727155,-0.758723714662802,6.26\n",
+    " 46    Cet,0.420825733875094,-0.233893512314484,4.9\n",
+    " 93Rho Psc,0.395786971913791,0.334618402701802,5.38\n",
+    " 94    Psc,0.431230581338907,0.33580619622052,5.5\n",
     "          ,0.387932990279816,0.600000563604351,6.27\n",
     "          ,0.411897703470662,0.00695707632392184,6.41\n",
+    " 48Ome And,0.432506014253826,0.792495835688892,4.83\n",
     "          ,0.415321233926497,0.717340018843292,6.46\n",
     "          ,0.447072800703163,0.0617022371948106,6.58\n",
+    "          ,0.37799803915308,-1.11056269931761,5.93\n",
+    " 47    Cet,0.444521934873325,-0.225903782849799,5.66\n",
     "          ,0.442709477573177,0.703988250065535,6.6\n",
+    "          ,0.453248581133297,-0.549027253172494,5.79\n",
+    "  1Alp UMi,0.724244511529493,1.5579536123823,2.02\n",
+    "          ,0.442172453187948,-0.158795873110617,6.13\n",
+    "          ,0.414717081493114,0.138952449142804,6.2\n",
+    " 38    Cas,0.415589746119111,1.226350750777,5.81\n",
+    "          ,0.462915020067419,1.15362869861057,6.14\n",
+    "   Gam Phe,0.413374520530042,-0.744935613572046,3.41\n",
+    " 49    And,0.401022959669774,0.820430799994423,5.27\n",
     "          ,0.442105325139794,-0.562631125064428,6.58\n",
+    " 97    Psc,0.459357233515277,0.320364880477181,6.02\n",
+    " 48    Cet,0.436802209335658,-0.355533264904867,5.12\n",
+    " 98Mu  Psc,0.40760150838883,0.107231089987807,4.84\n",
     "          ,0.429149611846144,-0.789649979380779,6.31\n",
+    "          ,0.423443727753086,-0.450159199183826,5.93\n",
+    " 99Eta Psc,0.435996672757814,0.267835318128963,3.62\n",
     "          ,0.411629191278047,0.607374579694027,6.39\n",
+    "          ,0.440427123935954,1.01800691945699,5.7\n",
+    "   Del Phe,0.417335075371106,-0.853941121632715,3.95\n",
+    "          ,0.455195294529752,-0.518653676050982,5.82\n",
+    " 39Chi Cas,0.480838208924438,1.03379245291392,4.71\n",
+    "          ,0.449556538484847,-0.775352823924859,6.17\n",
     "          ,0.410488014459436,-0.156822681428502,6.59\n",
+    "          ,0.476609141890759,-0.613216584551397,5.51\n",
+    "          ,0.432438886205672,0.649912132074577,5.88\n",
     "          ,0.45016069091823,-0.842509215032151,6.28\n",
+    "          ,0.463384916404494,-0.121731867189793,5.76\n",
     "          ,0.453449965277758,1.29679417864222,6.58\n",
+    "          ,0.47607211750553,0.322197476191775,5.89\n",
+    " 49    Cet,0.46090117862281,-0.249999022800943,5.63\n",
     "          ,0.485000147909963,0.716918230940726,6.38\n",
+    "          ,0.478220215046446,-0.525479852681004,6.12\n",
+    "          ,0.455396678674213,0.850372892939748,5.92\n",
     "101    Psc,0.47681052603522,0.255889509026424,6.22\n",
+    " 40    Cas,0.469090800497553,1.27478848565666,5.28\n",
+    "          ,0.48808803812503,0.304273914401156,5.8\n",
+    " 50Ups And,0.483053434513508,0.722663273061874,4.09\n",
+    " 50    Cet,0.493726794169934,-0.254813222654361,5.42\n",
+    "          ,0.434922623987356,-1.00985720147754,6.01\n",
+    "          ,0.437809130057962,1.01189826707501,5.56\n",
+    "   Tau Scl,0.430156532568449,-0.490306620116507,5.69\n",
+    "102Pi  Psc,0.431163453290753,0.211912060012978,5.57\n",
+    " 51    And,0.50325897700775,0.848724526423976,3.57\n",
     "          ,0.470164849268011,0.792379480405426,6.36\n",
     "          ,0.47385689191646,-0.150030441756157,6.24\n",
+    "          ,0.458417440841126,-1.35254775196982,6.11\n",
+    "          ,0.47902575162429,-1.00756403276589,6.18\n",
+    " 52Chi And,0.46016277009312,0.774683781044928,4.98\n",
     "          ,0.453919861614833,0.940179779228479,6.39\n",
+    "          ,0.464391837126799,-0.619097374503255,5.94\n",
+    "   Alp Eri,0.480838208924438,-0.990707061073715,0.46\n",
+    "          ,0.497150324625769,-0.361714639339014,5.58\n",
     "          ,0.494733714892239,-0.435949310190506,6.7\n",
+    "105    Psc,0.486745477161957,0.286335808200103,5.97\n",
+    "          ,0.48976623932887,0.755688781019056,5.61\n",
+    " 53Tau And,0.483053434513508,0.708201280954377,4.94\n",
+    " 43    Cas,0.472581459001542,1.18757535256186,5.59\n",
     "          ,0.492317105158708,-0.917364447395464,6.84\n",
+    " 42    Cas,0.52010811709431,1.2325951509897,5.18\n",
     "          ,0.449086642147772,1.06531988659647,6.71\n",
     "          ,0.468956544401246,1.02324775534979,6.37\n",
+    "          ,0.504064513585593,0.743747820053328,4.95\n",
+    "          ,0.465398757849103,0.449349560336373,6.17\n",
+    "          ,0.493324025881013,0.524422958856185,5.99\n",
+    "          ,0.495606379518236,-0.973927659570514,5.87\n",
+    "          ,0.496143403903465,-0.973985837212247,5.76\n",
     "          ,0.523464519501992,1.07201031539578,6.34\n",
+    "106Nu  Psc,0.475467965072148,0.0957749427031888,4.44\n",
+    "          ,0.449757922629308,0.615150991139024,5.64\n",
+    " 44    Cas,0.475870733361069,1.05681625462981,5.78\n",
+    "          ,0.500708111177912,-0.186318745787206,5.75\n",
+    "107    Psc,0.485067275958116,0.353753998695195,5.24\n",
+    "          ,0.477347550420449,-0.66090285822533,6.17\n",
     "          ,0.471574538279237,0.791022002098319,6.34\n",
+    "   Phi Per,0.502587696526213,0.88468315715187,4.07\n",
+    "   Pi  Scl,0.456604983540978,-0.552799103611526,5.25\n",
+    "          ,0.449086642147772,-0.613788664695106,5.72\n",
     "          ,0.477817446757525,1.00419942581899,6.21\n",
+    "          ,0.50346036115221,-0.0403122575842579,4.99\n",
     "          ,0.495874891710851,-0.871985886843612,6.64\n",
     "          ,0.515677665916171,0.996393925553129,6.25\n",
     "          ,0.516550330542168,0.561850575037841,6.34\n",
     "          ,0.489363471039949,0.805290068733372,6.35\n",
+    "          ,0.505138562356051,-1.03341914637946,5.71\n",
+    "          ,0.48439599547658,-0.912099370818614,5.52\n",
+    "          ,0.522994623164916,-0.0564517050283944,6.19\n",
     "109    Psc,0.528700507257975,0.350515443305383,6.27\n",
+    " 52Tau Cet,0.459290105467123,-0.245436926061703,3.5\n",
+    "110Omi Psc,0.489833367377024,0.159833374388192,4.26\n",
+    "          ,0.527022306054134,1.11443151249287,5.63\n",
+    "          ,0.497888733155459,-1.41415302642841,5.87\n",
+    "          ,0.537762793758714,-0.0744673814184247,5.34\n",
+    "   Eps Scl,0.510240294015727,-0.435416015141285,5.31\n",
     "          ,0.509904653774959,0.303915152277135,6.55\n",
     "   Tau1Hyi,0.469292184642014,-1.3762212040184,6.33\n",
     "          ,0.46385481274157,-0.465144790066922,6.39\n",
     "          ,0.531318501135966,0.806860865060168,6.32\n",
+    "          ,0.470299105364318,-0.858415951909355,5.49\n",
+    "          ,0.470970385845854,-0.915914854488946,5.04\n",
+    "          ,0.523464519501992,0.662400932499959,5.94\n",
+    "  4    Ari,0.48587281253596,0.295930270949261,5.84\n",
+    "          ,0.527089434102287,0.570552980613757,5.79\n",
+    "          ,0.489430599088102,-0.702320491002518,6.18\n",
+    "          ,0.460834050574657,-1.45264238457169,5.69\n",
+    "          ,0.496680428288694,0.835959382200362,5.82\n",
+    "          ,0.506145483078356,0.0643250792096132,5.91\n",
     "          ,0.531049988943352,-0.642984144571522,6.32\n",
+    "          ,0.556625775289884,0.906407658202388,5.9\n",
+    "  1    Ari,0.491377312484557,0.388776939018548,5.86\n",
+    " 53Chi Cet,0.522726110972302,-0.162553179139216,4.67\n",
     "          ,0.50178215994837,-0.539781856273735,6.34\n",
+    "  1    Per,0.563942732538629,0.962505449243573,5.52\n",
+    "          ,0.549778714378214,0.192742527061907,5.94\n",
     "          ,0.541119196166396,-0.656175924834513,6.37\n",
+    "  2    Per,0.501312263611294,0.886501208456031,5.79\n",
+    "          ,0.507085275752506,-0.806056074349526,6.14\n",
     "          ,0.556894287482498,0.89840338432727,6.26\n",
+    " 55Zet Cet,0.521383550009229,-0.168686072205252,3.73\n",
     "          ,0.558169720397417,0.97036912715117,6.45\n",
+    "          ,0.553135116785895,-0.869067308483332,5.94\n",
+    " 45Eps Cas,0.529237531643204,1.11125113474479,3.38\n",
+    " 55    And,0.516281818349553,0.710867756200479,5.4\n",
+    "  2Alp Tri,0.499634062407454,0.516249000192678,3.41\n",
+    "  5Gam1Ari,0.535748952314106,0.336775823582739,4.83\n",
+    "  5Gam2Ari,0.535748952314106,0.33673703848825,4.75\n",
+    "          ,0.558639616734493,-0.263035662685979,5.8\n",
+    " 46Ome Cas,0.506145483078356,1.19878424486912,4.99\n",
+    "111Xi  Psc,0.537762793758714,0.0556323699073192,4.62\n",
+    "   Tau2Hyi,0.529304659691357,-1.39317998658361,6.06\n",
     "          ,0.569648616631688,0.71038294251937,6.24\n",
     "          ,0.574616092195056,0.648011662444628,6.26\n",
+    "  6Bet Ari,0.54897317780037,0.363169080382342,2.64\n",
+    "          ,0.524202928031682,-0.65284525484529,6.1\n",
+    "   Psi Phe,0.545146879055613,-0.797571834930109,4.41\n",
+    "          ,0.574817476339517,0.650619960048997,5.89\n",
+    " 56    And,0.51863130003493,0.650164235188754,5.67\n",
+    "   Phi Phe,0.52695517800598,-0.724364969082569,5.11\n",
+    "  7    Ari,0.57025276906507,0.411500156252152,5.74\n",
+    "          ,0.574011939761674,0.032283743025084,6.01\n",
+    "          ,0.559579409408643,1.07683421152282,6.02\n",
     "          ,0.586229244525634,0.727705335345413,6.78\n",
+    "  8Iot Ari,0.538836842529172,0.31097403947409,5.1\n",
+    "          ,0.56931297639092,0.485279102243401,5.82\n",
+    " 56    Cet,0.560116433793873,-0.374775519908105,4.85\n",
+    "   Chi Eri,0.578979415325042,-0.879490802627187,3.7\n",
+    "          ,0.57025276906507,1.12785600332279,5.26\n",
+    "  3    Per,0.559982177697565,0.858774714033377,5.69\n",
+    "  9Lam Ari,0.585289451851483,0.411829829555306,4.79\n",
+    "   Eta2Hyi,0.572736506846755,-1.15807444006635,4.69\n",
+    "          ,0.564076988634937,-1.03216347894539,6.06\n",
+    "          ,0.609119908946021,1.35989752737544,6.04\n",
+    "          ,0.510643062304649,-0.876746757192107,6.1\n",
+    "          ,0.523934415839067,-0.813585230817157,4.83\n",
+    " 48    Cas,0.60502509800865,1.23755964308426,4.54\n",
     "          ,0.550718507052365,-0.574795100323466,6.35\n",
+    "          ,0.567164878850003,0.367537251649139,5.87\n",
+    "          ,0.554007781411892,0.214583383395892,6.09\n",
     "          ,0.550785635100518,1.28893534887143,6.23\n",
+    " 50    Cas,0.57172958612445,1.26399168497835,3.98\n",
+    " 47    Cas,0.555350342374965,1.34881468662527,5.38\n",
+    "112    Psc,0.535950336458566,0.0540567254437133,5.88\n",
+    " 57    Cet,0.581127512865958,-0.334676580343535,5.41\n",
     "          ,0.582470073829031,-1.12705121261215,6.37\n",
+    " 59Ups Cet,0.524001543887221,-0.365161664611702,4\n",
+    " 52    Cas,0.603078384612194,1.13274292522838,6\n",
+    "          ,0.559713665504951,-0.130487602270632,5.51\n",
+    "          ,0.571326817835528,-0.732504990788398,5.57\n",
+    " 53    Cas,0.537091513277178,1.12381750535915,5.58\n",
+    "  4    Per,0.556625775289884,0.95098627618041,5.04\n",
+    "   Alp Hyi,0.576898445832279,-1.05470731511698,2.86\n",
+    " 49    Cas,0.587303293296092,1.32845736015548,5.22\n",
+    "   Sig Hyi,0.569581488583534,-1.35527725299446,6.16\n",
+    "   Pi  For,0.547697744885451,-0.523569686777432,5.35\n",
+    "113Alp Psc,0.536084592554874,0.0482341131335877,5.23\n",
+    "113Alp Psc,0.536084592554874,0.0482341131335877,4.33\n",
+    "          ,0.596835476133907,1.41887995981922,6.05\n",
     "          ,0.594888762737452,1.13626752069004,6.52\n",
+    "  3Eps Tri,0.610193957716479,0.580913448979068,5.5\n",
+    "          ,0.574414708050595,-1.15075860161841,6.1\n",
+    "          ,0.579583567758425,0.235212205527102,5.94\n",
+    "   Chi Phe,0.584886683562561,-0.755490007409801,5.14\n",
+    " 57Gam1And,0.609187036994175,0.738793024232389,2.26\n",
+    " 57Gam2And,0.610126829668325,0.738812416779633,4.84\n",
+    " 10    Ari,0.589451390837008,0.452660837778352,5.63\n",
     "          ,0.570051384920609,-0.494539043552593,6.42\n",
+    " 60    Cet,0.552396708256205,0.00223983920672606,5.43\n",
+    "          ,0.610999494294323,-0.256461589170133,5.86\n",
     "          ,0.593881842015147,0.318580766130698,6.21\n",
+    " 61    Cet,0.601400183408354,0.00593896759359182,5.93\n",
+    "          ,0.591062463992695,-0.0680048150492346,5.62\n",
+    "   Nu  For,0.580523360432576,-0.500962824827295,4.69\n",
+    " 12Kap Ari,0.595291531026374,0.395287986755849,5.03\n",
     "          ,0.566292214224006,0.143946030058232,6.31\n",
+    " 11    Ari,0.615832713761384,0.448632036088331,6.15\n",
     "          ,0.58911575059624,0.000610865238198015,6.28\n",
+    " 13Alp Ari,0.568104671524154,0.40949787574917,2\n",
+    "          ,0.612879079642624,1.01968437479363,5.67\n",
     "          ,0.603615408997424,0.775963689163057,6.42\n",
+    " 58    And,0.597842396856211,0.66076711039462,4.82\n",
     "          ,0.577703982410123,0.939738598778669,6.31\n",
+    "  4Bet Tri,0.606636171164337,0.610642223904705,3\n",
+    " 14    Ari,0.596835476133907,0.452733559830518,4.98\n",
     "          ,0.593881842015147,0.300623267382401,6.43\n",
+    "          ,0.619860396650602,-0.283102100947102,6.1\n",
     "          ,0.608784268705253,1.29202846015691,6.29\n",
     "  5    Per,0.610529597957247,1.00610959172256,6.36\n",
+    " 59    And,0.638119225748388,0.681366843704964,5.63\n",
+    " 59    And,0.639327530615154,0.681429869483508,6.1\n",
     "          ,0.609589805283096,-0.412843090148825,6.48\n",
+    " 15    Ari,0.617712299109685,0.340344052275705,5.7\n",
+    "          ,0.575354500724746,-0.741474043888924,5.85\n",
+    " 16    Ari,0.587706061585014,0.452685078462407,6.02\n",
     "  5    Tri,0.605159354104957,0.550239287375268,6.23\n",
+    " 64    Cet,0.599923366348974,0.149569868759103,5.63\n",
     "          ,0.573810555617213,-0.736257448680186,6.32\n",
+    "          ,0.601601567552815,-0.858275355941834,6.12\n",
+    "          ,0.601400183408354,-0.173621475478947,6.01\n",
+    " 63    Cet,0.619659012506141,-0.00304947805417898,5.93\n",
+    " 55    Cas,0.623753823443512,1.16107058861561,6.07\n",
     "          ,0.636038256255626,1.02208420251512,6.44\n",
+    "  6    Tri,0.605897762634647,0.528888092859204,4.94\n",
+    " 60    And,0.59817803709698,0.771988216977959,4.83\n",
+    "          ,0.62630468927335,0.421807295112541,5.96\n",
+    "          ,0.629056939247649,0.891266926941338,5.31\n",
+    " 17Eta Ari,0.640535835481919,0.370198878758431,5.27\n",
+    "          ,0.588175957922089,0.828755050899074,6.06\n",
+    " 19    Ari,0.584752427466254,0.266681461567922,5.71\n",
+    " 65Xi 1Cet,0.580321976288115,0.154403461159765,4.37\n",
+    " 66    Cet,0.639730298904075,-0.0280367751785645,5.54\n",
+    "          ,0.58153028115488,-0.366514294781998,5.86\n",
+    "   Mu  For,0.649128225645583,-0.510964531068584,5.28\n",
     "          ,0.666782902309987,0.834466156062544,6.33\n",
     "          ,0.662822347468923,0.995802452862176,6.48\n",
+    "  7    Tri,0.664500548672764,0.582222445918064,5.28\n",
+    " 20    Ari,0.650806426849424,0.44999921066906,5.79\n",
+    " 21    Ari,0.646510231767592,0.437083774204302,5.58\n",
     "          ,0.62704309780304,-0.148954155384094,6.55\n",
+    "          ,0.627647250236422,-0.712676111231018,5.91\n",
+    "  8Del Tri,0.60207146388989,0.597324392084626,4.87\n",
+    "  8    Per,0.678194670496104,1.01054078876791,5.75\n",
+    "  7    Per,0.60818011627187,1.00385520810541,5.98\n",
     "          ,0.642616804974681,0.773302062053765,6.7\n",
+    "  9Gam Tri,0.623149671010129,0.59074547043197,4.01\n",
     "          ,0.611737902824012,0.414825978104563,6.55\n",
+    " 67    Cet,0.672623042499353,-0.0973505871667948,5.51\n",
+    "   Pi 1Hyi,0.604420945575267,-1.15468074429858,5.55\n",
     "          ,0.628184274621651,1.12289635936504,6.6\n",
+    " 22The Ari,0.612207799161088,0.347339913694116,5.62\n",
+    " 62    And,0.629056939247649,0.826936999594913,5.3\n",
     "          ,0.62113582956552,0.811098136633065,6.21\n",
+    "          ,0.604018177286345,0.0306790097406114,5.58\n",
     "          ,0.636978048929777,0.854430783450635,6.37\n",
+    "   Phi Eri,0.634494311148092,-0.881177954237448,3.56\n",
+    " 10    Tri,0.67866456683318,0.499905931002476,5.03\n",
     "          ,0.680007127796252,0.404354002592597,6.46\n",
     "          ,0.656579438990636,0.695251907531941,6.63\n",
+    "   Pi 2Hyi,0.627311609995654,-1.15634365522479,5.69\n",
+    "          ,0.666447262069219,0.82572981352895,6.11\n",
     "          ,0.616772506435535,0.526885812356221,6.47\n",
+    " 68Omi Cet,0.634292927003631,-0.017845991601642,3.04\n",
+    " 63    And,0.689002286248838,0.875306860559212,5.59\n",
     "          ,0.680678408277788,-0.419829255293614,6.34\n",
     "          ,0.66127840236139,-0.0637820878867705,6.5\n",
+    "  9    Per,0.64832268906774,0.974688817049856,5.17\n",
     "          ,0.639663170855922,-0.70077878349659,6.37\n",
+    "          ,0.687122700900537,0.722503284547108,5.82\n",
+    "          ,0.67940297536287,-0.943442575302346,5.81\n",
+    " 69    Cet,0.691217511837908,0.00690859495581089,5.28\n",
     "          ,0.693499865475131,0.966291844093038,6.28\n",
+    " 70    Cet,0.636239640400087,0.0154461638801498,5.42\n",
+    "          ,0.621471469806289,-0.160958142128366,5.46\n",
+    "          ,0.62630468927335,-0.285148014681385,5.87\n",
+    " 64    And,0.661748298698465,0.872780981280631,5.19\n",
+    "   Kap For,0.663359371854153,-0.387177053870886,5.2\n",
     " 10    Per,0.654162829257105,0.98803088955399,6.25\n",
     "          ,0.697191908123581,-0.307973042788022,6.22\n",
     "          ,0.635434103822243,-0.747000919853573,6.31\n",
+    " 65    And,0.682893633866858,0.877527307218693,4.71\n",
     "          ,0.632681853847944,-0.635711939354879,6.53\n",
+    "          ,0.692895713041749,-0.888508337095824,5.92\n",
+    " 24Xi  Ari,0.694104017908514,0.185189129910221,5.47\n",
     "          ,0.655304006075717,-0.42154064758793,6.44\n",
     " 71    Cet,0.706724090961396,-0.0212930168743308,6.33\n",
+    "   Del Hyi,0.675509548569959,-1.1753144145666,4.09\n",
+    "          ,0.673697091269811,-0.683461238807357,6.18\n",
+    "   Iot Cas,0.655505390220178,1.17639554907548,4.52\n",
+    " 72Rho Cet,0.709207828743081,-0.204368359134914,4.89\n",
+    " 66    And,0.710953157995075,0.882608154596721,6.12\n",
+    "          ,0.637447945266852,-0.255845875795124,5.83\n",
+    "          ,0.650806426849424,0.471471608605401,6.18\n",
+    " 11    Tri,0.678597438785026,0.555038942818252,5.54\n",
+    "          ,0.684303322878084,-0.348319237329957,5.88\n",
+    "   Lam Hor,0.70068256662757,-1.04175309355774,5.35\n",
+    "   Kap Hyi,0.689807822826682,-1.26281843587006,5.01\n",
     "          ,0.683699170444702,0.969292840779106,6.51\n",
+    " 12    Tri,0.659197432868627,0.517829492793095,5.29\n",
+    " 73Xi 2Cet,0.658526152387091,0.14765485471872,4.28\n",
     "          ,0.645771823237902,0.0342229977495221,6.45\n",
+    " 13    Tri,0.710886029946921,0.522410982079581,5.89\n",
+    "   Kap Eri,0.716390529895519,-0.808019569758019,4.25\n",
     "          ,0.667991207176753,-1.1432827746557,6.41\n",
+    "          ,0.668393975465675,0.409609382895825,6.19\n",
+    "   Phi For,0.648054176875125,-0.56180209366973,5.14\n",
+    "          ,0.697527548364349,0.166955287363691,6.07\n",
     "          ,0.676784981484878,0.590512759865037,6.25\n",
+    "          ,0.693298481330671,-0.539263105634948,6.11\n",
+    "          ,0.697997444701425,0.440433836740769,5.92\n",
+    " 26    Ari,0.70605281047986,0.346539971120285,6.15\n",
     "          ,0.724513023722108,-0.37205571515708,6.77\n",
     " 27    Ari,0.727533785889021,0.308991151518352,6.23\n",
+    "          ,0.715182225028753,0.00445543772939664,6\n",
     "          ,0.673025810788275,-0.433079213198337,6.51\n",
     "          ,0.651679091475421,-1.1117795816572,6.37\n",
+    "          ,0.698534469086654,-0.374450694741761,6.1\n",
+    " 14    Tri,0.671548993728895,0.630888043227839,5.15\n",
+    "          ,0.699272877616343,0.0395704926521603,5.25\n",
+    "          ,0.733709566319155,0.602880356870141,5.83\n",
+    " 75    Cet,0.675845188810727,-0.0168424272817453,5.35\n",
+    " 76Sig Cet,0.670206432765822,-0.257528179268574,4.75\n",
+    " 29    Ari,0.735857663860071,0.262405404900536,6.04\n",
     "          ,0.683095018011319,-0.620857248165683,6.3\n",
+    "          ,0.692090176463905,1.2709196724814,5.16\n",
+    "   Lam1For,0.676986365629339,-0.582067305540109,5.9\n",
     "          ,0.721559389603348,-0.349031913441188,6.21\n",
     "          ,0.713772536017527,0.692275151529929,6.36\n",
+    "          ,0.733508182174694,1.14747641299729,5.78\n",
+    "          ,0.728406450515018,0.651221129013573,5.71\n",
+    "   Ome For,0.73565627971561,-0.484634300047526,4.9\n",
+    " 15    Tri,0.739146938219599,0.605411084285533,5.35\n",
+    "          ,0.6818195850964,0.130400335808032,6.18\n",
+    " 77    Cet,0.729279115141015,-0.107172912346074,5.75\n",
+    "          ,0.687256956996844,0.120199855957487,5.82\n",
+    " 78Nu  Cet,0.746799535709112,0.0976220828282161,4.86\n",
     "          ,0.740892267471593,-0.888484096411769,6.24\n",
+    "          ,0.757472895365539,0.676014500665515,5.9\n",
+    "          ,0.738274273593601,0.551654943324108,6.1\n",
+    "          ,0.688398133815456,0.598017675648613,5.3\n",
+    " 80    Cet,0.680678408277788,-0.107657726027184,5.53\n",
     "          ,0.712966999439684,0.696313649493571,6.54\n",
     "          ,0.693634121571439,0.574072727938613,6.25\n",
     "          ,0.712698487247069,-1.07186002315464,6.77\n",
+    " 31    Ari,0.731561468778239,0.217249858641994,5.68\n",
     " 30    Ari,0.758144175847075,0.430194571795736,7.09\n",
     " 30    Ari,0.685713011889311,0.430180027385302,6.5\n",
+    "          ,0.727802298081636,0.134909103042351,5.81\n",
+    "   Iot1For,0.693164225234363,-0.522818225571713,5.75\n",
+    "          ,0.713302639680452,0.658454549135727,6.18\n",
     "          ,0.726728249311177,0.664786215811018,6.3\n",
     "          ,0.690479103308218,0.134307934077775,6.39\n",
+    " 81    Cet,0.741160779664207,-0.0454464344672079,5.65\n",
+    "   Lam2For,0.759352480713841,-0.583318124837371,5.79\n",
+    " 32Nu  Ari,0.755190541728316,0.38329854442201,5.43\n",
+    "          ,0.792580864549886,1.42154158692851,5.78\n",
     "          ,0.738945554075138,0.060092655773527,6.21\n",
+    "   Mu  Hyi,0.713235511632298,-1.37689994317195,5.28\n",
+    "   Iot2For,0.714510944547217,-0.520209927967343,5.83\n",
+    "   Eta Hor,0.717800218906745,-0.89809310357136,5.31\n",
+    " 82Del Cet,0.73270264559685,0.00573534584752581,4.07\n",
     "          ,0.72270056642196,-0.628483367369536,6.49\n",
+    " 83Eps Cet,0.739146938219599,-0.176763068132537,4.84\n",
+    " 33    Ari,0.753310956380014,0.472300640000099,5.3\n",
     "          ,0.719209907917971,0.106673554254531,6.25\n",
+    "          ,0.714645200643524,-0.149172321540593,5.78\n",
+    " 11    Per,0.714980840884292,0.961778228721909,5.77\n",
     "          ,0.701488103205413,-0.512535327395379,6.52\n",
+    "          ,0.787009236553135,0.934206874677209,5.84\n",
+    " 12    Per,0.726862505407485,0.701515700291876,4.91\n",
+    "          ,0.758211303895229,-0.717475766674002,4.75\n",
+    " 84    Cet,0.721156621314426,0.0121445827117939,5.71\n",
+    "          ,0.782310273182381,1.18376471702834,5.95\n",
     "          ,0.713772536017527,0.842392859748685,6.48\n",
+    " 34Mu  Ari,0.7363946882453,0.349269472144932,5.69\n",
+    "   Iot Eri,0.751834139320634,-0.665746146899615,4.11\n",
+    "          ,0.767340718444122,-0.0486365084889086,6.05\n",
+    "          ,0.748142096672185,-0.23475648066686,5.98\n",
     "          ,0.7456583588905,0.187477450485058,6.3\n",
     "          ,0.736327560197146,-1.11208986241311,6.55\n",
+    " 13The Per,0.731695724874546,0.859196501935942,4.12\n",
+    " 14    Per,0.722566310325652,0.773127529128566,5.43\n",
+    " 35    Ari,0.747605072286956,0.483582254359518,4.66\n",
+    "   Zet Hor,0.751297114935405,-0.932878485190969,5.21\n",
     "          ,0.779960791497004,0.447468483253668,6.35\n",
+    " 86Gam Cet,0.735387767522995,0.0564759457124498,3.47\n",
+    "          ,0.715719249413982,-0.656524990684911,6.01\n",
+    "   Eps Hyi,0.741295035760515,-1.18216483188068,4.11\n",
+    "          ,0.71827011524382,-0.793698173618044,6.1\n",
     " 36    Ari,0.741227907712361,0.310038349069548,6.46\n",
+    " 37Omi Ari,0.759755249002762,0.267238997301198,5.77\n",
+    "   Iot Hor,0.751834139320634,-0.858697143844399,5.41\n",
+    " 89Pi  Cet,0.725519944444412,-0.211907211876167,4.25\n",
+    " 38    Ari,0.792916504790655,0.217220769821128,5.18\n",
+    " 87Mu  Cet,0.791439687731275,0.176525509428793,4.27\n",
     "          ,0.738475657738062,-0.688925088993462,6.36\n",
+    "          ,0.807550419288146,1.21534548021582,6.18\n",
+    "          ,0.748007840575877,0.0822340965897995,6.03\n",
     "          ,0.743107493060663,-0.549342382065215,6.22\n",
+    "  1Tau1Eri,0.728272194418711,-0.304167255391312,4.47\n",
     "          ,0.802582943724777,0.628032490646104,6.25\n",
     "          ,0.733373926078386,0.620551815546584,6.3\n",
+    "          ,0.729950395622551,-0.897613138027061,6.15\n",
     "          ,0.742100572338358,-0.797838482454719,6.85\n",
     "          ,0.746933791805419,-1.13944789843812,6.26\n",
+    " 39    Ari,0.801844535195087,0.51046032484023,4.51\n",
     "          ,0.778752486630239,0.99630665909053,6.25\n",
     "          ,0.784995395108527,-0.355353883842857,6.49\n",
     "          ,0.743711645494045,-0.375497892292958,6.47\n",
+    " 40    Ari,0.776134492752248,0.319109213043108,5.82\n",
+    "          ,0.824936583759935,1.20233308101484,5.8\n",
+    "          ,0.794661834042649,0.439614501619694,5.86\n",
     "          ,0.773785011066871,0.651463535854128,6.45\n",
     "          ,0.803858376639696,-0.201401299406523,6.9\n",
+    "   Gam Hor,0.756868742932156,-1.08726255380349,5.74\n",
+    " 15Eta Per,0.797883980354023,0.975561481675853,3.76\n",
     "   Eta1For,0.773919267163178,-0.601251382901613,6.51\n",
+    " 42Pi  Ari,0.760896425821374,0.304807209450376,5.22\n",
+    "   Zet Hyi,0.763715803843826,-1.15860773511557,4.84\n",
+    " 41    Ari,0.816612705788885,0.475786450367276,3.63\n",
     "          ,0.807214779047377,1.01778390516368,6.45\n",
+    " 16    Per,0.788888821901437,0.668785928680172,4.23\n",
+    "   Bet For,0.744651438168196,-0.551422232757175,4.46\n",
+    "          ,0.802113047387702,0.817546158591822,5.88\n",
+    " 17    Per,0.787479132890211,0.611907587612401,4.53\n",
+    "   Gam1For,0.805872218084305,-0.40910032853066,6.14\n",
+    "   Gam2For,0.810168413166137,-0.454803714248856,5.39\n",
     "          ,0.820304748437335,0.924985718462506,6.36\n",
+    " 43Sig Ari,0.785868059734524,0.263229588158423,5.49\n",
+    "   Eta2For,0.761634834351064,-0.596141446702719,5.92\n",
     "          ,0.783317193904686,0.847696721420024,6.26\n",
+    "  2Tau2Eri,0.749216145442643,-0.366446420866643,4.75\n",
+    "   Eta3For,0.796004395005722,-0.599064873199809,5.47\n",
+    "   Nu  Hor,0.739415450412213,-1.06802514693706,5.26\n",
     "          ,0.806073602228766,-0.664417757413375,6.36\n",
+    " 18Tau Per,0.780027919545158,0.920879346583508,3.95\n",
+    " 20    Per,0.812047998514439,0.669115601983326,5.33\n",
     "          ,0.770562864755496,0.287688438370399,6.31\n",
+    "          ,0.793587785272191,-0.196010171272585,6.04\n",
     "          ,0.820371876485488,-0.509384038468167,6.4\n",
     "          ,0.818290906992726,-0.14938079142347,6.32\n",
+    "          ,0.839973266546348,1.07374594837416,5.59\n",
     "          ,0.801240382761705,1.12281394103925,6.24\n",
+    "          ,0.802247303484009,-0.377403210059718,5.95\n",
+    "   Psi For,0.801038998617243,-0.655598996553992,5.92\n",
     "          ,0.835878455608977,0.894670318982727,6.22\n",
+    "          ,0.812786407044129,0.823165149155881,6.02\n",
+    "          ,0.776268748848555,-1.06622648818015,6.03\n",
+    " 45Rho2Ari,0.828695754456538,0.319947940711427,5.91\n",
+    "          ,0.825876376434086,-0.839673054997661,4\n",
+    " 46Rho3Ari,0.802985712013699,0.3145616607143,5.63\n",
+    "          ,0.786472212167906,0.146287680137991,5.97\n",
     "          ,0.767944870877505,-0.857456020820759,6.21\n",
+    "   Nu  Hyi,0.780027919545158,-1.30782853802427,4.75\n",
+    " 21    Per,0.795534498668646,0.557356352213956,5.11\n",
+    "  3Eta Eri,0.80244868762847,-0.123952313849275,3.89\n",
+    "          ,0.818156650896419,-0.0399292547761814,5.17\n",
+    "          ,0.779759407352543,0.67395889065761,6.04\n",
+    "          ,0.778483974437625,0.0785592088869892,6.11\n",
+    " 47    Ari,0.783652834145454,0.360735315703172,5.8\n",
+    " 22Pi  Per,0.838026553149893,0.692246062709062,4.7\n",
     "          ,0.78727774874575,-1.10940884275657,6.56\n",
+    "          ,0.822050077689329,1.38611625124984,5.49\n",
+    " 24    Per,0.786002315830831,0.614060160356527,4.93\n",
+    "  4    Eri,0.804126888832311,-0.386381959433867,5.45\n",
     "          ,0.789895742623742,-0.491218069836993,6.29\n",
+    "          ,0.848028632324783,0.824159017202156,5.47\n",
+    "          ,0.834603022694058,0.716161921598195,5.89\n",
+    " 48Eps Ari,0.798085364498484,0.372458110512401,4.63\n",
+    " 48Eps Ari,0.798085364498484,0.372458110512401,4.63\n",
+    "  6    Eri,0.78432411462699,-0.390847093436886,5.84\n",
+    "          ,0.855479845669836,0.913708952239898,5.28\n",
     "          ,0.857090918825523,0.91371864851352,6.74\n",
+    "          ,0.833059077586524,-0.021249383643031,5.23\n",
     "          ,0.816209937499964,-0.659889597631812,6.41\n",
+    "          ,0.801240382761705,0.665523132606304,6.11\n",
+    "          ,0.840308906787116,-0.143529090292478,6.14\n",
+    " 91Lam Cet,0.838630705583275,0.155465203121395,4.7\n",
+    "   The1Eri,0.797749724257716,-0.69281329471596,3.24\n",
+    "   The2Eri,0.798555260835559,-0.692818142852771,4.35\n",
+    "  5    Eri,0.836348351946052,-0.026790804018113,5.56\n",
+    "          ,0.789895742623742,-0.472863023870186,6.14\n",
+    "   Zet For,0.829501291034382,-0.431547201966031,5.71\n",
+    "          ,0.844605101868948,0.189722137828595,5.95\n",
     "          ,0.832454925153142,-0.549652662821125,6.31\n",
+    "  7    Eri,0.853868772514149,-0.019571928306392,6.11\n",
+    " 49    Ari,0.86239403462966,0.461852905172188,5.9\n",
+    "          ,0.890856327046798,1.4219294378734,5.95\n",
+    "  8Rho1Eri,0.80318709615816,-0.11060539320833,5.75\n",
     "          ,0.859977424896129,0.0931327081411419,6.25\n",
+    "   Bet Hor,0.840845931172345,-1.11576475011592,4.99\n",
+    " 93    Cet,0.824332431326553,0.0759703038298643,5.61\n",
+    " 92Alp Cet,0.816679833837039,0.071379118269757,2.53\n",
+    "          ,0.865079156555805,-0.140300231176289,5.83\n",
+    "          ,0.806610626613995,-0.0960852234590989,6.19\n",
+    "   Eps For,0.84037603483527,-0.487092305410751,5.89\n",
+    " 23Gam Per,0.86702586995226,0.933862656963621,2.93\n",
     "          ,0.839167729968504,0.493399731401986,6.36\n",
+    "  9Rho2Eri,0.850915138395389,-0.110212694126631,5.32\n",
+    "          ,0.850713754250928,0.989703496753818,4.76\n",
+    " 11Tau3Eri,0.825674992289625,-0.390527116407353,4.09\n",
+    "          ,0.860782961473973,0.978581870909165,6.11\n",
+    " 25Rho Per,0.821445925255947,0.677890729611409,3.39\n",
+    "          ,0.841450083605728,1.11801913373308,5.89\n",
+    "          ,0.835140047079287,0.708298243690599,6.05\n",
     "          ,0.857493687114445,0.276741345450945,6.49\n",
+    " 10Rho3Eri,0.824869455711782,-0.111686527717204,5.26\n",
+    "          ,0.854003028610456,0.0325261498656388,6.05\n",
     " 52    Ari,0.843061156761415,0.440787750727979,6.8\n",
     " 52    Ari,0.843061156761415,0.440787750727979,7\n",
+    "          ,0.869173967493176,-0.785834495710447,5.82\n",
     "          ,0.825540736193318,0.911294580107973,6.31\n",
+    "          ,0.843396797002183,0.230160446969941,5.62\n",
+    "          ,0.908980900048277,1.29841345633713,4.87\n",
     "          ,0.879578814956988,0.825686180297651,6.41\n",
+    "   Mu  Hor,0.847894376228476,-1.01686760730639,5.11\n",
+    "          ,0.856553894440294,-0.10317319947692,5.27\n",
+    " 26Bet Per,0.833864614164368,0.7148092914279,2.12\n",
+    "   Iot Per,0.830038315419611,0.86591601955612,4.05\n",
+    " 53    Ari,0.850445242058314,0.312064870256586,6.11\n",
+    "   The Hyi,0.814800248488737,-1.22343217241673,5.53\n",
     " 54    Ari,0.848767040854473,0.328034632912334,6.27\n",
+    " 27Kap Per,0.864676388266883,0.782906221076545,3.8\n",
     "          ,0.872261857708243,0.147843932054353,6.28\n",
+    "          ,0.884277778327743,-0.456733272699672,6.19\n",
+    " 55    Ari,0.873940058912084,0.507488416975029,5.72\n",
     "          ,0.840845931172345,0.485550597904822,6.42\n",
+    "          ,0.865280540700266,0.46943054300793,6.02\n",
+    " 28Ome Per,0.856755278584755,0.69135400553582,4.63\n",
+    "          ,0.881257016160829,0.207214215443027,5.98\n",
     "          ,0.873201650382394,0.832972929924727,6.33\n",
+    "          ,0.850646626202775,0.739602663079842,6.15\n",
+    " 57Del Ari,0.884143522231435,0.344295283776748,4.35\n",
+    "          ,0.862796802918582,0.227726682290771,6.12\n",
     "          ,0.876558052790075,-0.388539380314804,6.38\n",
+    " 56    Ari,0.856822406632908,0.475723424588732,5.79\n",
+    "          ,0.858634863933056,-0.0381936217978092,6.05\n",
+    "          ,0.874342827201005,0.840846304105946,5.9\n",
     "          ,0.855949742006912,-0.278811499869283,6.26\n",
+    "          ,0.873201650382394,0.116253472593256,5.56\n",
+    "          ,0.881995424690519,-1.19964236508468,6.15\n",
+    "          ,0.865817565085495,-0.824944415365553,6.12\n",
+    "          ,0.899113076969694,1.35672684590098,5.45\n",
+    " 94    Cet,0.900052869643845,-0.01403050793131,5.06\n",
+    "   Alp For,0.84353105309849,-0.47146676046859,3.87\n",
+    "          ,0.915290936574719,0.997295678999993,5.79\n",
+    "          ,0.952009978914753,1.48197846041563,5.61\n",
+    "          ,0.922607893823464,0.741832806012945,6.07\n",
     "          ,0.9019995830403,1.14595894617542,6.36\n",
+    "          ,0.87239611380455,-0.76061933615594,5.93\n",
+    "          ,0.871590577226707,0.889031935871423,5.03\n",
     "          ,0.844135205531873,-0.594391269313913,6.27\n",
+    "          ,0.878370510090223,0.533314441767734,5.52\n",
+    " 58Zet Ari,0.919117235319475,0.367294844808584,4.89\n",
+    "          ,0.861521370003662,0.791434093727262,6.16\n",
+    "          ,0.893138680684021,-0.492110127010234,6.16\n",
     "          ,0.913948375611646,0.573452166426792,6.31\n",
     "          ,0.857762199307059,0.605430476832777,6.25\n",
+    "          ,0.882331064931287,-0.989223531209519,5.74\n",
+    "          ,0.902335223281069,0.561709979070319,6.06\n",
     "          ,0.874879851586234,0.706567458849038,6.45\n",
     "          ,0.85111652253985,-0.45203542812972,6.25\n",
+    "          ,0.858903376125671,-1.34408775323446,5.57\n",
+    " 30    Per,0.923212046256847,0.768381203190504,5.47\n",
+    "          ,0.856419638343987,-0.0712336741654241,6.17\n",
+    " 13Zet Eri,0.917976058500864,-0.125319488430004,4.8\n",
+    "          ,0.948049424073689,1.14584743902877,4.84\n",
+    "          ,0.921063948715931,0.685623507825106,5.96\n",
+    " 29    Per,0.914686784141336,0.876543135446041,5.15\n",
+    " 14    Eri,0.903140759858912,-0.154384068612521,6.14\n",
+    " 31    Per,0.87850476618653,0.874322688786559,5.03\n",
     "          ,0.870382272359941,-0.509156176038046,6.65\n",
+    "          ,0.922742149919771,0.59730015140057,4.82\n",
+    " 95    Cet,0.894011345310018,0.0162364101803584,5.38\n",
+    "          ,0.867697150433796,-0.47478288604738,5.91\n",
+    " 15    Eri,0.893608577021097,-0.375047015569526,4.88\n",
+    " 59    Ari,0.943216204606628,0.472480021062109,5.9\n",
+    " 96Kap1Cet,0.897434875765854,0.05882244392902,4.83\n",
+    "          ,0.919251491415783,-0.304390269684622,5.71\n",
+    "          ,0.895286778224938,-0.807185690226511,5.85\n",
+    "          ,0.900052869643845,0.506989058883486,4.47\n",
+    " 60    Ari,0.907034186651822,0.447899967429856,6.12\n",
+    "          ,0.947646655784767,0.856447608364051,5.93\n",
+    " 32    Per,0.912605814648573,0.756241468615521,4.95\n",
+    " 16Tau4Eri,0.909920692722428,-0.353293425698141,3.69\n",
+    "          ,0.915022424382104,-0.416731295871324,5.61\n",
+    " 61Tau1Ari,0.895286778224938,0.369083807291879,5.28\n",
+    "   Zet1Ret,0.92160097310116,-1.07206364490071,5.54\n",
+    " 97Kap2Cet,0.886157363676044,0.0641505462844138,5.69\n",
+    "          ,0.943081948510321,-0.749274696017977,4.27\n",
+    "          ,0.944491637521547,1.12724028994778,5.23\n",
+    "   Zet2Ret,0.881257016160829,-1.07326598282986,5.24\n",
+    "          ,0.90347640009968,0.858934702548143,5.29\n",
+    " 62    Ari,0.8973677477177,0.481841773244335,5.52\n",
     "          ,0.933348381528045,-0.443202122859904,6.39\n",
+    "          ,0.938785753428488,-1.13573907377763,6.05\n",
+    " 63Tau2Ari,0.942075027788016,0.362015223821302,5.09\n",
+    "          ,0.909249412240892,-0.390338039071721,5.52\n",
+    " 33Alp Per,0.916163601200716,0.870240557591617,1.79\n",
     "          ,0.903275015955219,-0.426073655506305,6.35\n",
+    "          ,0.929991979120363,0.585310709066732,5.61\n",
     "          ,0.959461192259806,0.941110621496209,6.51\n",
     "          ,0.921735229197467,-0.806744509776701,6.39\n",
+    " 64    Ari,0.91495529633395,0.431518113145165,5.5\n",
     "          ,0.938248729043259,0.085206004455001,6.38\n",
+    "          ,0.909652180529814,-0.108312224496681,6.2\n",
+    "   Iot Hyi,0.928179521820215,-1.33712582877372,5.52\n",
     "          ,0.907101314699976,0.720074368004749,6.51\n",
+    " 65    Ari,0.925158759653302,0.363091510193365,6.08\n",
+    "          ,0.903677784244141,0.220425388253262,6.04\n",
+    "          ,0.971544240927459,0.857320272990048,6.09\n",
+    "  1Omi Tau,0.955634893515049,0.157583838907844,3.6\n",
     "          ,0.945632814340158,-0.546162004317137,6.5\n",
     "          ,0.942477796076938,1.25426147439848,6.32\n",
     "          ,0.939255649765564,1.05165783706281,6.49\n",
+    "          ,0.911733150022576,0.856307012396529,4.98\n",
+    "          ,0.917439034115635,1.04615520178221,4.21\n",
     "          ,0.907504082988898,0.327360741895592,6.57\n",
+    "          ,0.977921405502054,0.870017543298307,5.58\n",
+    "  2Xi  Tau,0.916902009730406,0.169869017587159,3.74\n",
     "          ,0.928313777916522,0.222267680241478,6.28\n",
+    "          ,0.985641131039721,1.02762562289021,4.54\n",
+    "          ,0.935496479068961,0.590052186867983,5.61\n",
     "   Chi1For,0.969396143386543,-0.594793664669234,6.39\n",
+    "          ,0.931468796179743,1.03613410299368,6.13\n",
+    " 34    Per,0.941605131450941,0.864093120115148,4.67\n",
+    "          ,0.929052186446212,-0.465697477663387,5.93\n",
+    "          ,0.916566369489638,0.967819007188533,5.09\n",
     "          ,0.947109631399538,0.819218765791649,6.24\n",
+    " 66    Ari,0.943283332654782,0.398007791506874,6.03\n",
     "          ,0.914552528045029,-0.704468215609833,6.32\n",
+    "          ,0.908913772000124,-0.186982940530326,5.73\n",
+    "          ,0.965972612930708,0.839566395987817,5.82\n",
+    " 35Sig Per,0.962616210523026,0.83767562263149,4.36\n",
+    "          ,0.89347432092479,-1.19337372418793,6.15\n",
+    "   Chi2For,0.948049424073689,-0.598972758600398,5.71\n",
     "          ,0.954762228889052,1.28014567683292,6.57\n",
     "          ,0.960132472741342,0.858871676769599,6.29\n",
     "   Chi3For,0.923010662112386,-0.59597176191433,6.5\n",
     "          ,0.986580923713872,0.862207194895632,6.39\n",
+    "          ,0.964428667823174,-0.0906698546411054,5.99\n",
+    "  4    Tau,0.949190600892301,0.197857311397613,5.14\n",
+    "          ,0.960266728837649,-0.197663385925169,5.59\n",
+    "          ,0.936570527839419,0.838170132586221,5.47\n",
+    "          ,0.943081948510321,-1.19840609019785,5.96\n",
+    "          ,0.948586448458918,0.481221211732514,5.96\n",
+    "  5    Tau,0.986648051762025,0.225787427566333,4.11\n",
+    "          ,0.977250125020517,0.108011640014394,5.94\n",
     "          ,0.97248403360161,1.02564273493447,6.4\n",
+    " 36    Per,0.960333856885803,0.803845323963666,5.31\n",
+    " 17    Eri,0.966106869027015,-0.0859526175239096,4.73\n",
     "          ,0.98470133836557,1.01000264558187,6.37\n",
     "          ,0.977518637213132,0.782877132255679,6.41\n",
+    "          ,0.98174770424681,0.959489908147072,5.98\n",
+    "          ,0.978726942079897,0.618922841578056,5.9\n",
+    "          ,0.985775387136028,-0.721969989497888,5.78\n",
+    "          ,0.93455668639481,-0.709127275085296,6.12\n",
     "          ,0.93918852171741,1.04791507544464,6.46\n",
+    "          ,0.976511716490827,0.696376675272115,5.81\n",
+    "  6    Tau,0.973356698227607,0.163600376690413,5.77\n",
     "          ,0.988863277351095,1.32190752732369,6.27\n",
+    "          ,0.965972612930708,-0.813754915605545,5.99\n",
     "          ,0.99302521633662,-0.425613082509251,6.38\n",
+    "   Kap Ret,0.942410668028784,-1.06574167449904,4.72\n",
+    " 18Eps Eri,0.999939405296444,-0.149080206941182,3.73\n",
+    "          ,0.944894405810469,0.3112406869987,6.17\n",
+    "  7    Tau,0.969463271434696,0.42698510522679,5.92\n",
+    " 37Psi Per,0.981949088391271,0.841122647904178,4.23\n",
+    " 19Tau5Eri,0.992890960240313,-0.355475087263134,4.27\n",
     "          ,0.999805149200136,0.112011352883547,6.49\n",
+    "          ,0.97174562507192,-0.866056615523642,5.68\n",
     "          ,0.98396292983588,-0.141919508871194,6.25\n",
+    "          ,0.985574002991567,-1.1433700411183,5.83\n",
+    "          ,1.0056452893895,-0.539650956579836,6.2\n",
     "          ,0.977652893309439,0.993664424528483,6.3\n",
     "          ,0.978726942079897,-0.525785285300103,6.4\n",
     "          ,0.994300649251539,-1.06435510737106,6.41\n",
     "          ,0.951472954529524,0.743214525004108,6.42\n",
+    "          ,1.01558024051624,-0.188607066362043,5.57\n",
+    "          ,1.00598092963027,0.0102586574922778,5.71\n",
+    " 20    Eri,0.965838356834401,-0.288556254859585,5.23\n",
+    " 10    Tau,1.01282799054194,0.00701040582884389,4.28\n",
     "          ,1.01101553324179,0.269318847993158,6.39\n",
     "          ,0.955702021563203,0.365050157465047,6.5\n",
     "          ,0.966912405604858,-1.12112194129218,6.75\n",
+    "          ,0.981143551813428,1.10333897546908,5.1\n",
+    "          ,0.954493716696437,-0.693336893491558,4.58\n",
+    "          ,1.09284462394106,1.51191085708733,5.86\n",
+    "          ,0.990407222458628,-0.115337174735959,5.85\n",
+    "          ,0.990877118795704,-1.35521422721592,5.7\n",
+    "          ,0.99007158221786,0.288619280638129,6.16\n",
+    " 21    Eri,0.957044582526275,-0.0763387622275075,5.96\n",
+    "          ,1.02598508798005,1.04666425614738,5.76\n",
+    "          ,0.97490064333514,0.655894732899469,5.57\n",
+    "   Tau For,1.01524460027547,-0.4547794735648,6.01\n",
+    " 12    Tau,1.0241726306799,0.0533537456061044,5.57\n",
     "          ,1.00698785035257,-0.04549976397213,6.23\n",
+    "          ,0.989668813928938,-0.166901957858769,6.19\n",
+    " 11    Tau,1.02209166118714,0.442082203256542,6.11\n",
+    "          ,1.03545014276971,-0.0153492011439279,6.12\n",
     "          ,0.975236283575909,-0.257843308161296,6.33\n",
+    " 22    Eri,1.01135117348256,-0.0835915748969062,5.53\n",
+    " 39Del Per,1.04316986830738,0.83404921629679,3.01\n",
+    " 40    Per,0.998865356525986,0.592801080439874,4.97\n",
+    "          ,0.987319332243561,1.17289034616106,5.8\n",
     "          ,0.982821753017268,-0.1779702541985,6.49\n",
+    " 13    Tau,0.994032137058924,0.343834710779694,5.69\n",
+    "          ,0.985976771280489,0.846896778846193,6.06\n",
     "          ,0.994367777299692,-0.321407229891567,6.59\n",
+    "          ,0.989198917591863,1.10557881467581,4.8\n",
+    "          ,1.03229512450649,0.804591937032575,6.11\n",
+    " 38Omi Per,1.00302729551151,0.563537726648102,3.83\n",
+    " 14    Tau,1.03638993544386,0.343218997404685,6.14\n",
+    "          ,1.0195407953573,0.636347045277133,5.59\n",
+    "   Del For,0.988661893206634,-0.524675061970362,5\n",
+    " 41Nu  Per,0.997321411418452,0.74313695481513,3.77\n",
+    " 23Del Eri,0.99302521633662,-0.1437569527226,3.54\n",
+    "          ,1.01511034417916,0.365273171758358,6.1\n",
+    "          ,1.01772833805716,1.23693423343563,5.44\n",
+    "          ,1.01839961853869,-0.166058382053638,5.6\n",
+    " 16    Tau,1.04209581953692,0.423930779035801,5.46\n",
+    "          ,1.06136156935701,0.797300339268687,5.66\n",
+    " 17    Tau,1.04786883167813,0.420857060297566,3.7\n",
+    "          ,1.03592003910679,-0.640298276778175,4.59\n",
+    " 18    Tau,0.994770545588614,0.433525241784958,5.64\n",
+    " 19    Tau,0.998529716285217,0.427033586594901,4.3\n",
+    " 24    Eri,1.01833249049054,-0.0146074362118303,5.25\n",
+    "          ,1.03370481351772,0.976031750946529,6.1\n",
+    "   Gam Cam,1.0324293806028,1.24498214054204,4.63\n",
+    " 20    Tau,1.04833872801521,0.425297953616529,3.87\n",
+    " 25    Eri,1.05323907553042,0.00517781011424984,5.55\n",
+    " 21    Tau,1.05478302063796,0.428560749690397,5.76\n",
     " 22    Tau,0.990004454169707,0.428095328556531,6.43\n",
+    " 29    Tau,1.03598716715494,0.105592419745657,5.35\n",
     "          ,0.982754624969115,-1.35571843344427,6.29\n",
+    "          ,1.04108889881462,1.14364638491653,4.47\n",
+    " 23    Tau,1.01242522225302,0.417977267031775,4.18\n",
     "          ,0.985708259087874,-0.686607679597758,6.45\n",
+    "          ,1.04847298411152,1.1047449351443,5.85\n",
+    "          ,0.998865356525986,0.118735718640536,5.91\n",
+    "          ,1.019406539261,0.88552188482019,6.14\n",
     "          ,1.02551519164298,0.996898131781483,6.46\n",
+    " 26Pi  Eri,0.997522795562913,-0.207665092166459,4.42\n",
     "          ,1.0610930571644,0.586430628670095,6.57\n",
     "          ,1.05612558160103,0.561908752679574,6.25\n",
+    " 25Eta Tau,1.02954287453219,0.420711616193233,2.87\n",
     "          ,1.06404669128316,1.19568143731002,6.32\n",
     "          ,1.0453179658483,-0.836686602722026,6.49\n",
     "          ,1.02276294166868,-0.937697533181198,6.3\n",
+    "          ,1.00296016746336,-0.814026411266966,5.73\n",
+    "          ,1.01020999666395,0.767300068681629,6.02\n",
+    "   Sig For,1.02289719776498,-0.500245300579252,5.9\n",
+    "          ,1.02289719776498,0.408775503364316,5.45\n",
+    " 27Tau6Eri,1.05444738039719,-0.397067252965521,4.23\n",
+    " 30    Tau,1.01672141733485,0.194487856313901,5.07\n",
+    "   Bet Ret,0.993495112673695,-1.10292688384014,3.85\n",
+    "          ,1.00960584423057,0.784835779527361,5.66\n",
+    " 42    Per,1.04296848416292,0.577553690168979,5.11\n",
+    " 27    Tau,1.01222383810856,0.419809862746369,3.63\n",
     "          ,1.01745982586454,-0.490403582852729,6.55\n",
+    " 28    Tau,1.01423767955317,0.421264303789698,5.09\n",
+    " 28Tau7Eri,1.04363976464446,-0.386158945140556,5.24\n",
+    "          ,1.04706329510029,0.0039754721850982,5.91\n",
+    "          ,1.05760239866041,0.413846654468722,6.17\n",
+    "   Rho For,1.06565776443885,-0.520670500964397,5.54\n",
+    "          ,1.07304184973574,0.388238795832516,6.07\n",
     "          ,1.05706537427518,-0.626471390592931,6.21\n",
+    "          ,1.04290135611477,-0.333304557625995,5.81\n",
+    "          ,1.02893872209881,0.446445526386527,5.26\n",
+    "          ,1.04236433172954,-0.634911996781048,5.4\n",
+    "          ,1.04303561221107,-0.634941085601915,4.73\n",
+    "          ,1.08002316674372,0.599680586574818,5.77\n",
+    "          ,1.07478717898774,1.01185463384371,5.8\n",
     "          ,1.05706537427518,0.384525123035217,6.83\n",
     "          ,1.02914010624327,0.227692745333094,6.3\n",
+    "          ,1.03585291105863,-0.624823024077159,4.17\n",
     "          ,1.07028959976145,1.25352455760319,6.34\n",
     "          ,1.01806397829792,0.543990039025766,6.25\n",
+    "          ,1.06861139855761,0.849112377368864,5.76\n",
+    " 31    Tau,1.01255947834933,0.114052418481018,5.67\n",
     "          ,1.05404461210827,-0.620896033260172,6.86\n",
+    "          ,1.03007989891742,0.302412229865695,5.97\n",
+    " 30    Eri,1.06814150222053,-0.0809590366084814,5.48\n",
+    " 44Zet Per,1.03162384402496,0.556473991314337,2.85\n",
+    "          ,1.06834288636499,1.10081794432731,5.03\n",
+    "          ,1.04525083780014,1.06655131334649,5\n",
     "          ,1.03410758180664,-0.306576779386426,6.22\n",
+    "          ,1.10351798359749,0.835513353613741,5.37\n",
+    "   Gam Hyi,1.00967297227872,-1.28737424881826,3.24\n",
+    "          ,1.05625983769734,0.541852010692073,6.1\n",
+    " 43    Per,1.0787477338288,0.884799512435336,5.28\n",
+    " 32    Eri,1.04437817317415,-0.0182774757778295,6.14\n",
+    " 32    Eri,1.04451242927045,-0.0182435388201518,4.79\n",
+    " 33Tau8Eri,1.07384738631359,-0.408188878810174,4.65\n",
+    "          ,1.06887991075022,-0.580632257044025,5.11\n",
+    "          ,1.06827575831684,0.612280894146855,5.49\n",
+    "          ,1.06136156935701,-0.787254999796098,5.93\n",
+    "          ,1.04726467924475,-0.207708725397758,6\n",
+    " 32    Tau,1.09969168485273,0.392316078890648,5.63\n",
+    "          ,1.05216502675997,-0.691896996858663,5.71\n",
+    " 45Eps Per,1.10284670311596,0.698311081859742,2.89\n",
+    " 33    Tau,1.03920931346632,0.404489750423308,6.06\n",
+    "          ,1.06955119123176,0.426941471995491,6.16\n",
     "          ,1.04263284392215,0.607626682808204,6.53\n",
+    "          ,1.03638993544386,0.105417886820458,6.09\n",
+    "          ,1.0806273191771,-0.143975118879099,6.19\n",
     "          ,1.07753942896204,0.677890729611409,6.3\n",
     "          ,1.06666468516115,-0.895518742924668,6.46\n",
+    " 46Xi  Per,1.11620518469853,0.624672731836015,4.04\n",
     "          ,1.09653666658951,0.677546511897821,6.38\n",
+    "          ,1.09458995319306,1.40845646567537,5.1\n",
+    " 34Gam Eri,1.04088751467016,-0.218015864258147,2.95\n",
+    "          ,1.10868684330532,-0.0790634151153431,5.83\n",
     "          ,1.09747645926367,0.180307056141447,6.37\n",
     "          ,1.07129652048375,0.645597290312703,6.41\n",
+    "          ,1.0832453130551,-0.199418411450785,5.6\n",
+    "          ,1.03511450252894,-1.09146588841871,6.14\n",
     "          ,1.09673805073398,0.301883782953286,6.32\n",
+    "          ,1.11271452619454,0.317543264853124,5.89\n",
+    " 35Lam Tau,1.10197403848996,0.217996471710903,3.47\n",
+    " 36Tau9Eri,1.11734636151714,-0.418592980406784,4.66\n",
+    "          ,1.07753942896204,1.19869213026971,5.87\n",
+    "          ,1.10116850191211,1.03245921529087,5.06\n",
+    "          ,1.11345293472423,0.174494140104944,5.67\n",
+    " 35    Eri,1.09452282514491,-0.00785882977078558,5.28\n",
+    "          ,1.09606677025244,-0.993048711153474,6.05\n",
+    "          ,1.10183978239365,-0.515032117853093,5.93\n",
+    "   Del Ret,1.09848337998597,-1.05766467857175,4.56\n",
+    "          ,1.12573736753634,1.14355427031712,6.17\n",
+    "          ,1.10519618480133,0.00469299643314031,5.38\n",
     "          ,1.06827575831684,-0.880261656380151,6.51\n",
+    " 38Nu  Tau,1.07290759363944,0.104530677784027,3.91\n",
+    " 36    Tau,1.09378441661522,0.420726160603666,5.47\n",
+    " 40    Tau,1.12016573953959,0.094868341119514,5.33\n",
+    "          ,1.13627647109646,0.143068517295424,5.46\n",
     "          ,1.12251522122497,0.942628088318082,6.31\n",
+    " 37    Tau,1.12063563587667,0.385402635798026,4.36\n",
+    "          ,1.07794219725096,0.0493394883265175,5.36\n",
     "          ,1.09344877637445,-0.346549667393907,6.46\n",
     "          ,1.10969376402763,-0.346302412416542,7.01\n",
     "          ,1.14634567831951,1.08786372276807,6.99\n",
+    " 47Lam Per,1.12036712368405,0.8787975190632,4.29\n",
+    " 39    Tau,1.09613389830059,0.384127575816708,5.9\n",
     "          ,1.07633112409527,-0.268974630279571,6.39\n",
+    "   Gam Ret,1.1194273310099,-1.07932130570692,4.51\n",
+    "          ,1.09512697757829,-0.195607775917264,5.61\n",
+    "   Iot Ret,1.0759954838545,-1.06327397286219,4.97\n",
+    "          ,1.11969584320252,-0.342404510420421,6.13\n",
+    " 41    Tau,1.12224670903235,0.481710873550435,5.2\n",
+    " 42Psi Tau,1.07841209358803,0.506169723762411,5.23\n",
     "          ,1.12352214194727,1.04559281791213,6.28\n",
     "          ,1.01175394177148,-1.47895322304551,6.41\n",
     "          ,1.14486886126013,-0.12468438250775,6.26\n",
+    " 48    Per,1.13540380647047,0.832740219357795,4.04\n",
     "          ,1.13171176382202,-0.340125886119206,6.34\n",
+    "          ,1.11922594686544,-0.459865169079639,5.59\n",
+    "          ,1.1165408249393,0.956944636321246,6.18\n",
+    " 49    Per,1.10264531897149,0.658473941682972,6.09\n",
+    " 50    Per,1.13124186748494,0.663918399321832,5.51\n",
+    "          ,1.13412837355555,0.264640395970451,6.01\n",
+    "          ,1.15748893431301,0.302635244159006,5.89\n",
+    "          ,1.16420173912837,1.25884296368497,6.03\n",
     "          ,1.16883357445097,1.19557962643698,6.32\n",
+    " 43Ome1Tau,1.0998930689972,0.342244521905655,5.5\n",
+    "          ,1.08861555690739,0.233845030946374,5.95\n",
     "          ,1.11143909327962,-0.717034586224193,6.59\n",
+    "          ,1.17004187931774,0.586197918103162,5.72\n",
+    " 44    Tau,1.15782457455378,0.462177730338532,5.41\n",
+    "          ,1.11036504450916,-0.272518618288481,5.37\n",
+    "          ,1.18682389135614,1.46272166100196,5.57\n",
+    " 37    Eri,1.12103840416559,-0.0885948520859566,5.44\n",
     "          ,1.12761695288464,-0.770305913504508,6.59\n",
+    " 45    Tau,1.12244809317681,0.096395504215009,5.72\n",
+    "          ,1.15487094043502,-0.125319488430004,5.7\n",
     "          ,1.10674012990887,-1.11312736369068,6.38\n",
+    "          ,1.14171384299691,0.30154926151332,6.09\n",
+    "          ,1.11506400787992,1.00287103633275,6.08\n",
+    "          ,1.16829655006574,0.391191311150473,6.12\n",
+    " 38Omi1Eri,1.16487301960991,-0.0901026226342073,4.04\n",
     "          ,1.15232007460518,-0.606084975302275,6.44\n",
+    "          ,1.14379481248967,-0.342850539007042,5.79\n",
     "          ,1.18393738528554,0.662648187477325,6.45\n",
+    "   Del Hor,1.15876436722793,-0.698243207944387,4.93\n",
+    " 51Mu  Per,1.18064811092601,0.844904194616833,4.14\n",
+    "          ,1.17823150119248,1.4545670948857,5.46\n",
+    "          ,1.18897198889706,1.0794909904953,5.7\n",
+    " 52    Per,1.17984257434817,0.706572306985849,4.71\n",
     "          ,1.15064187340134,0.17823690172311,6.23\n",
     "          ,1.14594291003058,0.155169466775918,6.51\n",
+    " 46    Tau,1.14835951976412,0.134671544338607,5.29\n",
     "          ,1.17091454394373,0.22258765727101,6.25\n",
+    " 47    Tau,1.17964119020371,0.161680514513219,4.84\n",
     "          ,1.15520658067579,-0.0148401467787629,6.44\n",
+    "          ,1.13238304430355,1.00985720147754,5.71\n",
+    "          ,1.1748750987848,0.935704948951838,5.19\n",
+    "          ,1.15701903797593,0.174726850671877,5.22\n",
     "          ,1.14198235518952,-0.761516241465993,6.71\n",
+    "          ,1.16876644640282,1.41064782351398,5.43\n",
+    " 39    Eri,1.14010276984122,-0.170058094922792,4.87\n",
     " 48    Tau,1.17480797073664,0.268790401080749,6.32\n",
+    " 49Mu  Tau,1.15574360506101,0.155198555596785,4.29\n",
     "          ,1.14728547099366,0.108205565486837,6.93\n",
     "          ,1.1518501782681,0.107977703056716,6.31\n",
     "          ,1.1518501782681,-0.691887300585041,6.37\n",
+    "          ,1.1453387575972,0.87782304356417,4.61\n",
+    " 40Omi2Eri,1.13453114184447,-0.110779926133529,4.43\n",
+    "   Alp Hor,1.10841833111271,-0.727899260817857,3.86\n",
+    "          ,1.18856922060814,1.13691717102273,5.27\n",
     "          ,1.13674636743354,0.735501139337655,6.22\n",
+    " 50Ome2Tau,1.14231799543029,0.359164519376378,4.94\n",
+    "          ,1.14795675147519,0.873517898075918,5.45\n",
+    " 51    Tau,1.15688478187963,0.376627508169943,5.65\n",
+    "          ,1.14715121489735,-0.0964827706776088,5.94\n",
+    "          ,1.14990346487165,0.888736199525946,5.55\n",
     "          ,1.15863011113162,0.165573568372529,6.54\n",
+    "          ,1.20273323876855,1.06003541747238,5.39\n",
+    "   Alp Ret,1.14251937957475,-1.07383321483676,3.35\n",
+    "          ,1.15379689166456,0.729688223301151,5.92\n",
+    "   Gam Dor,1.11915881881729,-0.881623982824069,4.25\n",
+    " 53    Tau,1.16514153180252,0.36900138896609,5.35\n",
+    "          ,1.17366679391803,-1.07875407370002,5.45\n",
+    " 56    Tau,1.17937267801109,0.38002120393771,5.38\n",
+    "          ,1.20837199481346,0.986227382660263,5.88\n",
+    " 54    Per,1.1674910134879,0.603302144772707,4.93\n",
+    "          ,1.14788962342704,0.557690873653921,6.16\n",
+    "          ,1.1470840868492,-0.336577049973484,6\n",
+    " 54Gam Tau,1.19400659250858,0.272751328855414,3.65\n",
+    " 41Ups4Eri,1.19346956812335,-0.562025107963041,3.56\n",
+    " 52Phi Tau,1.16306056230976,0.477362094830882,4.95\n",
     "          ,1.18044672678155,0.176651560985882,6.31\n",
+    " 53    Per,1.18340036090031,0.811558709630119,4.85\n",
+    " 57    Tau,1.20756645823562,0.244961808654215,5.59\n",
+    "          ,1.22092493981819,1.04050227426048,6.19\n",
+    "          ,1.17594914755526,-0.367037893557596,6.07\n",
+    "          ,1.16816229396944,0.327118335055037,6.12\n",
+    "   Eps Ret,1.15581073310917,-1.02447433396299,4.44\n",
+    " 58    Tau,1.18319897675585,0.263462298725355,5.26\n",
     "          ,1.1453387575972,-1.03064116398671,6.37\n",
+    "          ,1.20535123264655,0.241975356378581,6.17\n",
     "          ,1.13412837355555,-0.56016342342758,6.37\n",
+    "          ,1.1897775254749,0.107003227557686,5.77\n",
     "          ,1.20024950098687,0.161016319770099,6.53\n",
     "          ,1.18642112306722,-0.100434002178651,6.27\n",
+    "          ,1.19192562301582,-0.111831971821537,5.85\n",
+    "          ,1.15238720265333,-0.763266418854798,5.34\n",
+    "          ,1.17943980605925,-0.8925613794699,6.09\n",
+    "          ,1.17521073902557,0.00171139229431666,5.86\n",
+    "          ,1.18682389135614,-0.337900591322913,5.38\n",
+    " 60    Tau,1.14788962342704,0.245693877312691,5.72\n",
+    " 59Chi Tau,1.19004603766752,0.447313342875713,5.37\n",
+    "          ,1.17380105001434,0.363401790949275,5.91\n",
     "          ,1.19575192176058,0.740509264663516,6.23\n",
+    "   The Ret,1.17534499512187,-1.09509714289022,5.87\n",
+    " 61Del1Tau,1.21850833008466,0.306174384031105,3.76\n",
+    "          ,1.18084949507047,-0.42362049827989,6.01\n",
+    "          ,1.19105295838982,0.366208862162899,5.99\n",
+    " 63    Tau,1.18111800726309,0.292817767116538,5.64\n",
+    " 55    Per,1.19112008643798,0.595690569979287,5.73\n",
     " 62    Tau,1.22783912877801,0.424134400781866,6.36\n",
+    " 56    Per,1.20212908633517,0.592708965840463,5.76\n",
+    " 64Del2Tau,1.15970415990208,0.304453295463166,4.8\n",
+    " 66    Tau,1.21723289716974,0.165122691649097,5.12\n",
     "          ,1.16621558057298,1.00505269789775,6.32\n",
+    " 42Xi  Eri,1.20233047047963,-0.0393474783588499,5.17\n",
+    "          ,1.15520658067579,-0.403306805041401,5.83\n",
+    "          ,1.2285775373077,0.332339778400587,5.98\n",
     "          ,1.15789170260193,-0.601353193774646,6.39\n",
+    " 65Kap1Tau,1.18595122673015,0.389101764184891,4.22\n",
+    " 67Kap2Tau,1.18984465352306,0.38745824580593,5.28\n",
+    " 68Del3Tau,1.19575192176058,0.312903597924906,4.29\n",
+    "          ,1.16910208664359,0.548712124279773,5.28\n",
     " 70    Tau,1.20635815336885,0.278220027178329,6.46\n",
+    " 69Ups Tau,1.18548133039307,0.398172628158451,4.28\n",
+    " 43    Eri,1.15487094043502,-0.593116209332595,3.96\n",
+    " 71    Tau,1.18856922060814,0.272591340340648,4.49\n",
+    "   Eta Ret,1.21038583625807,-1.09281367045219,5.24\n",
+    " 73Pi  Tau,1.20951317163207,0.25680095874691,4.69\n",
+    "          ,1.18897198889706,0.149928630883124,6.06\n",
     "          ,1.22763774463355,-0.580186228457404,6.55\n",
+    " 72    Tau,1.18850209255998,0.401362702180152,5.53\n",
     "          ,1.16594706838037,0.0362931521678599,6.23\n",
+    "          ,1.23240383605246,1.26586306578743,5.94\n",
+    "          ,1.2036730314427,0.195695042379864,5.88\n",
+    "          ,1.17044464760666,0.377340184281174,5.72\n",
     "          ,1.18192354384093,-0.765137799663881,6.39\n",
     "          ,1.16829655006574,-0.993591702476316,6.29\n",
     "          ,1.23904951281967,0.529906201589534,6.4\n",
+    " 75    Tau,1.20481420826132,0.285531017489461,4.97\n",
+    " 76    Tau,1.2007865253721,0.257276076154397,5.9\n",
+    " 74Eps Tau,1.21904535446989,0.334758998669324,3.53\n",
+    "          ,1.23716992747137,-0.417458516392988,6.11\n",
+    " 77The1Tau,1.2156889520622,0.278593333712784,3.84\n",
+    " 78The2Tau,1.22267026907018,0.276998296701933,3.4\n",
+    "          ,1.17420381830326,0.0324388834030391,6.15\n",
+    " 79    Tau,1.23676715918244,0.22772183415396,5.03\n",
+    "          ,1.21246680575083,0.024100088087955,5.55\n",
+    "          ,1.16339620255053,-1.06049114233262,5.94\n",
+    "  1    Cam,1.18924050108967,0.940921544160576,5.77\n",
+    "          ,1.17306264148465,-0.786314461254745,6.1\n",
     "          ,1.22951732998185,0.566499938239682,6.21\n",
     "          ,1.231329787282,0.18363772613067,6.79\n",
+    "          ,1.22173047639603,-0.323613132140615,5.96\n",
+    " 80    Tau,1.1896432693786,0.272935558054235,5.58\n",
+    "          ,1.18299759261139,-0.226049226954132,5.6\n",
     "          ,1.2146820313399,0.698311081859742,6.26\n",
     "          ,1.18131939140755,0.179114414485918,6.48\n",
+    "   Del Men,1.20071939732394,-1.39253033625092,5.69\n",
+    "          ,1.22334154955172,0.282636679813237,4.78\n",
+    " 81    Tau,1.2303228665597,0.273876096595588,5.48\n",
     "          ,1.18199067188908,-0.698829832498529,6.44\n",
+    " 83    Tau,1.22817476901878,0.2395367435626,5.4\n",
     "          ,1.19112008643798,-0.216556575078008,6.24\n",
+    " 85    Tau,1.25200522611332,0.276663775261968,6.02\n",
+    "          ,1.20058514122764,-0.79385816213281,6.16\n",
+    " 57    Per,1.22461698246664,0.751606649824114,6.09\n",
+    "          ,1.22663082391125,-1.07301387971568,5.75\n",
     "          ,1.19326818397889,0.0944223125328932,6.39\n",
+    " 45    Eri,1.25321353098008,0.000766005616153067,4.91\n",
     "          ,1.21723289716974,-0.215635429083899,6.21\n",
+    "          ,1.232202451908,-0.599457572281508,5.96\n",
+    "          ,1.23676715918244,1.12157766615242,5.94\n",
+    "          ,1.23703567137506,-0.0487092305410751,5.81\n",
     "          ,1.23535747017122,0.314450153567645,6.25\n",
+    "   Del Cae,1.24535954934611,-0.751296369068203,5.07\n",
+    " 86Rho Tau,1.25952356750652,0.259084431184936,4.65\n",
+    "          ,1.24656785421287,0.505466743924802,5.88\n",
+    "          ,1.25576439680992,0.164288812117588,6.01\n",
+    "          ,1.22072355567373,-0.160817546160844,6.06\n",
+    "          ,1.20669379360962,0.0971905986520287,5.68\n",
+    " 46    Eri,1.26475955526251,-0.0918237112021461,5.72\n",
+    "          ,1.21461490329175,-0.0900977744973962,6.09\n",
+    " 47    Eri,1.21112424478776,-0.135587842195904,5.11\n",
+    "          ,1.21125850088406,-0.12269179827839,5.26\n",
+    " 50Ups1Eri,1.23226957995615,-0.492764625479732,4.51\n",
+    " 58    Per,1.25985920774729,0.720205267698649,4.25\n",
     "          ,1.2572412138693,0.347000544117339,6.36\n",
+    "   Nu  Men,1.21219829355822,-1.40359378445384,5.79\n",
+    " 87Alp Tau,1.27402322590771,0.288139315093831,0.85\n",
+    " 88    Tau,1.25267650659485,0.177339996413057,4.25\n",
+    "          ,1.24347996399781,0.40737439182591,6.02\n",
     "          ,1.21870971422912,-0.144222373856465,6.37\n",
+    "          ,1.20058514122764,-0.315545832486953,6.13\n",
     "          ,1.206425281417,-0.0416794321649868,6.33\n",
+    " 48Nu  Eri,1.22992009827077,-0.0462075919465499,3.93\n",
+    " 52Ups2Eri,1.2442183725275,-0.513786146692642,3.82\n",
+    "   Alp Dor,1.27147236007787,-0.959145690433484,3.27\n",
+    "  2    Cam,1.29536994522056,0.93328088054629,5.35\n",
+    "  3    Cam,1.29080523794611,0.926415918821779,5.05\n",
     "          ,1.24831318346487,1.3371161325001,6.49\n",
+    "          ,1.22703359220017,0.0174242036990767,5.31\n",
     "          ,1.25274363464301,0.470191700487272,6.47\n",
+    "          ,1.23421629335261,0.361016507638216,5.92\n",
+    " 89    Tau,1.22562390318894,0.279834456736424,5.79\n",
+    " 90    Tau,1.22575815928525,0.218355233834924,4.27\n",
+    " 51    Eri,1.25710695777299,-0.0266453599137801,5.23\n",
+    "          ,1.2368342872306,-1.06772941059159,5.79\n",
     "          ,1.27261353689648,-0.511090582625673,6.3\n",
     "          ,1.24838031151302,0.440142948532103,6.22\n",
+    " 91Sig1Tau,1.22971871412631,0.275757173678293,5.07\n",
+    " 92Sig2Tau,1.23951940915674,0.27782247995982,4.69\n",
+    "          ,1.22569103123709,0.137371956542387,5.39\n",
+    " 53    Eri,1.22750348853724,-0.239042233607868,3.87\n",
+    "          ,1.25844951873607,0.843008573123694,5.67\n",
+    "          ,1.28496509775675,-0.207291785632004,5.01\n",
+    " 93    Tau,1.22629518367048,0.212891383648819,5.46\n",
     "          ,1.21152701307668,-1.41547656777783,6.76\n",
     "          ,1.2591207992176,1.03883451519746,6.5\n",
+    "          ,1.24381560423857,-0.23807745438246,5.45\n",
+    "          ,1.28073603072307,-0.0165321465258352,6.1\n",
+    "          ,1.29362461596857,0.66811688580024,5.99\n",
+    "          ,1.25267650659485,0.499425965458177,5.78\n",
+    "          ,1.32416787787847,1.32542242651174,6.06\n",
+    "          ,1.2654979637922,-1.08075150606619,5.4\n",
+    "          ,1.26381976258836,0.872208901136922,5.87\n",
+    " 59    Per,1.30335818295084,0.756862030127341,5.29\n",
+    "          ,1.23085989094492,-0.410457806837767,5.58\n",
+    " 54    Eri,1.25730834191745,-0.319889763069694,4.32\n",
+    " 94Tau Tau,1.25019276881317,0.400674266752976,4.28\n",
     "          ,1.22314016540726,-0.878375731160635,6.44\n",
+    " 95    Tau,1.25334778707639,0.42043042425819,6.13\n",
+    "          ,1.25650280533961,0.711866472383565,6.08\n",
     "          ,1.29966614030239,0.573607306804747,6.45\n",
+    "   Alp Cae,1.26697478085158,-0.700507287835169,4.45\n",
+    "   Bet Cae,1.23515608602676,-0.643250792096132,5.05\n",
     "          ,1.24629934202026,-0.99582184540942,6.53\n",
     " 55    Eri,1.2812730551083,-0.125775213290247,6.82\n",
     " 55    Eri,1.28194433558984,-0.125731580058947,6.7\n",
+    "          ,1.27382184176325,0.194536337682012,5.4\n",
+    " 56    Eri,1.24629934202026,-0.13083666812103,5.9\n",
+    "          ,1.24730626274256,-0.51023731054692,5.68\n",
     "          ,1.31423292675173,1.23816566018564,6.37\n",
+    "  4    Cam,1.25703982972484,0.990600402063871,5.3\n",
     "          ,1.30060593297654,0.412387365288582,6.35\n",
+    "          ,1.24992425662055,-0.30252373701235,5.53\n",
+    "          ,1.30752012193637,0.703590702847025,5.97\n",
     "          ,1.26603498817743,0.970446697340147,6.26\n",
+    "   Lam Pic,1.29275195134257,-0.864262804903536,5.31\n",
+    "          ,1.27046543935556,0.326987435361138,6.01\n",
     "          ,1.2941616403538,-0.71445537744069,6.25\n",
+    "          ,1.25019276881317,0.204300485219558,5.37\n",
+    " 57Mu  Eri,1.28395817703444,-0.0479141361040554,4.02\n",
+    "          ,1.24918584809086,-0.361569195234681,5.72\n",
     "          ,1.28026613438599,-0.0182483869569629,6.33\n",
+    "          ,1.33678795093135,1.41710069360955,5.07\n",
     "          ,1.31013811581436,-0.593324679215472,6.86\n",
+    "          ,1.28254848802322,-0.487165027462917,6.19\n",
+    "          ,1.31792496940018,-0.674453400612342,6.05\n",
+    "          ,1.28107167096384,1.10837618961581,5.44\n",
+    "          ,1.28650904286428,0.568773714404086,5.86\n",
+    "          ,1.27818516489323,0.548683035458906,5.58\n",
+    "   Kap Dor,1.26751180523681,-1.01695487376898,5.27\n",
+    "          ,1.24213740303473,-1.33245222488783,6.05\n",
+    " 58    Eri,1.30100870126547,-0.262943548086568,5.51\n",
+    "          ,1.33430421314967,0.654294847751808,4.88\n",
+    "          ,1.31651528038895,0.0626282313257299,6.03\n",
+    "          ,1.28221284778245,0.85068802183247,5.66\n",
+    "          ,1.30537202439545,-0.0755048826959991,5.78\n",
+    " 96    Tau,1.3202073230374,0.277580073119265,6.08\n",
+    " 59    Eri,1.30027029273578,-0.273502790061134,5.77\n",
     "   Zet Cae,1.31886476207433,-0.523244861611089,6.37\n",
     "          ,1.31691804867788,-1.09554801961365,6.46\n",
+    "   Mu  Men,1.24005643354197,-1.20547952180524,5.54\n",
+    "  9Alp Cam,1.28684468310505,1.15789990714115,4.29\n",
+    "  1Pi 3Ori,1.32866545710476,0.121499156622861,3.19\n",
+    "  2Pi 2Ori,1.31463569504065,0.155339151564306,4.36\n",
     "          ,1.31765645720757,-0.213458615655718,6.26\n",
     "          ,1.29161077452396,0.922246521164237,6.41\n",
+    " 97    Tau,1.29993465249501,0.328815182938921,5.1\n",
     "          ,1.30201562198777,-0.733387351688017,6.72\n",
+    " 60    Eri,1.28093741486753,-0.275461437332816,5.03\n",
+    "          ,1.33826476799073,0.743277550782652,5.71\n",
+    "  2    Aur,1.32510767055262,0.640589164986841,4.78\n",
+    "  3Pi 4Ori,1.28637478676797,0.0978257045742821,3.69\n",
+    "          ,1.32799417662322,0.174096592886434,6.11\n",
+    "          ,1.33732497531658,0.486903228075118,5.97\n",
+    "  5    Cam,1.29134226233134,0.964454400241633,5.52\n",
+    "  4Omi1Ori,1.31705230477418,0.248719114682814,4.74\n",
+    "          ,1.28711319529766,-0.70998539530086,6.07\n",
+    "          ,1.35169037762145,0.769006612839135,6.08\n",
+    "          ,1.30758724998452,-0.577592475263468,5.86\n",
+    " 61Ome Eri,1.34618587767286,-0.079363999597631,4.39\n",
+    "          ,1.30107582931362,0.92274587925578,5.75\n",
+    "  5    Ori,1.3090640670439,0.04377382726738,5.33\n",
+    "   Iot Pic,1.33947307285749,-0.916971748313765,5.61\n",
     "   Iot Pic,1.34094988991687,-0.917000837134632,6.42\n",
     "          ,1.3533685788253,0.0273919729826888,6.61\n",
     "          ,1.36108830436296,0.340082252887906,6.37\n",
+    "  8Pi 5Ori,1.30308967075823,0.0425957300222838,3.72\n",
+    "  7    Cam,1.31899901817064,0.938153258041441,4.47\n",
+    "  6    Ori,1.34578310938394,0.199423259587597,5.19\n",
+    "  7Pi 1Ori,1.35504678002914,0.177165463487858,4.65\n",
+    "          ,1.3469914142507,0.135772071394726,5.33\n",
+    "          ,1.34470906061348,1.29624149104576,6.06\n",
+    "          ,1.31826060964095,0.631266197899105,6.07\n",
+    "          ,1.35088484104361,0.00815941425307349,5.99\n",
     "          ,1.31248759749974,0.429215248159894,6.37\n",
+    "          ,1.35471113978837,0.262497519499947,5.81\n",
+    "  3Iot Aur,1.37156027987493,0.578857838971164,2.69\n",
     "          ,1.36558588358926,0.0942332351972605,6.5\n",
+    "          ,1.29630973789471,-0.266327547580713,5.7\n",
+    "  9Omi2Ori,1.32148275595232,0.235871552133411,4.07\n",
+    "          ,1.31215195725897,-0.271961082555205,5.72\n",
+    " 62    Eri,1.32403362178216,-0.0842751621872706,5.51\n",
     "          ,1.32772566443061,-0.423630194553512,6.72\n",
+    "          ,1.35638934099221,-0.66970707467428,6.1\n",
+    "          ,1.32584607908231,0.299386992495572,5.48\n",
+    " 99    Tau,1.36128968850742,0.417982115168586,5.79\n",
     "          ,1.34390352403563,1.28742273018637,6.66\n",
+    "  8    Cam,1.36679418845602,0.927739460171208,6.08\n",
+    "          ,1.37988415784598,1.29271204744728,5.96\n",
+    " 98    Tau,1.31289036578866,0.437209825761391,5.81\n",
     "          ,1.31899901817064,-0.0162800434116582,6.23\n",
+    "  4Ome Aur,1.32530905469708,0.661310101717463,4.94\n",
+    "          ,1.36155820070004,1.06601317016046,6.03\n",
+    "          ,1.38538865779458,1.16627748755072,6.19\n",
+    "          ,1.35605370075144,-0.240307597315564,6.15\n",
     "          ,1.31476995113696,-0.0311977603793986,6.35\n",
+    "          ,1.35397273125868,-1.00274013663885,6.12\n",
     "          ,1.31940178645956,-1.14012663759167,6.41\n",
+    "  5    Aur,1.33356580461998,0.687567610686355,5.95\n",
+    "          ,1.38001841394229,0.253819354608086,6.09\n",
+    " 10Pi 6Ori,1.34444054842086,0.0299178522612695,4.47\n",
     "  6    Aur,1.34014435333903,0.692110314878351,6.58\n",
+    " 10Bet Cam,1.35578518855883,1.05491578499986,4.03\n",
+    "          ,1.30637894511776,-0.272693151213681,5.66\n",
+    "  7Eps Aur,1.39136305408025,0.764861455865648,2.99\n",
     "          ,1.28583776238275,-1.24952484473404,6.28\n",
     "          ,1.35363709101791,-0.230281650390219,7.71\n",
+    " 63    Eri,1.37229868840462,-0.169936891502515,5.38\n",
     "          ,1.35276442639191,0.0630985005964061,7.03\n",
     "          ,1.35450975564391,0.0631130450068394,6.66\n",
+    " 64    Eri,1.37954851760521,-0.20005836550985,4.79\n",
+    "  8Zet Aur,1.3562550848959,0.716908534667104,3.75\n",
     "          ,1.36243086532604,-0.0337624247524681,6.32\n",
     "          ,1.3747824261863,-0.0741183155680259,6.22\n",
+    "          ,1.34705854229885,0.723293530847317,6.14\n",
     "          ,1.50870288225279,1.49991171847987,6.51\n",
+    " 65Psi Eri,1.34866961545454,-0.119138113995857,4.81\n",
+    "          ,1.38089107856828,0.0126051557088479,5.92\n",
     "          ,1.31772358525572,0.0280804084098643,6.24\n",
+    "102Iot Tau,1.32973950587522,0.376816585505576,4.64\n",
+    "          ,1.34772982278039,-0.348159248815191,4.91\n",
+    " 11    Cam,1.34658864596178,1.02926429313236,5.08\n",
+    " 12    Cam,1.35155612152515,1.0301127170743,6.08\n",
+    "          ,1.37505093837892,1.06761790344493,6.04\n",
+    "          ,1.37881010907552,-0.0661528267873962,5.85\n",
+    "          ,1.34591736548024,0.53223330725886,6.14\n",
     "          ,1.37599073105307,0.564095262381378,6.62\n",
+    "          ,1.33088068269383,-0.448985950075541,5.02\n",
+    "   Eta Men,1.30221700613223,-1.27519088101198,5.47\n",
     "          ,1.36471321896326,0.949560923957948,7.24\n",
+    "          ,1.35967861535174,-0.668145974621107,6.03\n",
     "          ,1.37733329201614,0.483388328887074,6.6\n",
+    "          ,1.35544954831806,0.371372127866716,6.19\n",
+    "  1    Lep,1.37800457249768,-0.370097067885398,5.75\n",
+    "          ,1.34833397521377,-0.52758879219383,5.94\n",
     "          ,1.39753883451038,1.21543759481523,6.41\n",
+    "  9    Aur,1.38968485287641,0.900551108934585,5\n",
+    " 11    Ori,1.37223156035646,0.268853426859293,4.68\n",
     "          ,1.33638518264243,0.627208307388218,6.52\n",
     "          ,1.39190007846548,-0.237898073320449,6.41\n",
+    " 10Eta Aur,1.3766620115346,0.71967682078624,3.17\n",
     "          ,1.37390976156031,0.345686699041532,6.44\n",
+    "          ,1.3914301821284,1.29061280420807,5.43\n",
+    "          ,1.40176790154406,0.753541056411741,6.2\n",
+    "          ,1.39364540771747,-0.41211102149035,5.61\n",
+    "          ,1.39961980400315,-0.0516665939958432,6.05\n",
     "          ,1.40801081002235,1.1330580541211,6.41\n",
+    "          ,1.3626322494705,0.0205512519422332,6.17\n",
+    "   Eta1Pic,1.38297204806105,-0.852569098915175,5.38\n",
     "          ,1.41787863310093,1.33470176036817,6.37\n",
     "          ,1.39458520039162,-0.702582290390317,6.31\n",
+    "   Gam1Cae,1.35920871901466,-0.602429480146709,4.55\n",
     "   Gam2Cae,1.36149107265188,-0.598555818834644,6.34\n",
+    "  2Eps Lep,1.36800249332279,-0.377495324659129,3.19\n",
+    "          ,1.35256304224745,-0.451123978409234,5.73\n",
+    "104    Tau,1.37578934690861,0.325416639034343,5\n",
+    " 66    Eri,1.39653191378808,-0.0583812634792103,5.12\n",
+    "106    Tau,1.40452015151836,0.356367144436376,5.3\n",
+    "103    Tau,1.35276442639191,0.423508991133235,5.5\n",
+    "105    Tau,1.41405233435618,0.378818866008558,5.89\n",
+    "          ,1.38444886512043,-0.224764470699192,6.05\n",
+    " 13    Ori,1.39096028579133,0.165316617121541,6.17\n",
+    "   Eta2Pic,1.4043187673739,-0.845127208910143,5.03\n",
+    " 14    Ori,1.41056167585219,0.148323897598651,5.34\n",
+    "          ,1.37310422498246,-0.200877700630925,5.97\n",
+    " 67Bet Eri,1.40801081002235,-0.0857586920514658,2.79\n",
     "          ,1.33161909122352,-0.935365579375061,6.27\n",
+    "          ,1.41022603561142,0.819645401831026,5.68\n",
+    "          ,1.37800457249768,0.651041747951563,6.02\n",
+    "          ,1.40881634660019,0.489225485607633,6.01\n",
+    "          ,1.3710232554897,-0.128019900633784,5.78\n",
+    " 16    Ori,1.37458104204184,0.17155616919742,5.43\n",
+    " 68    Eri,1.4024391820256,-0.0618525294359546,5.12\n",
+    "   Zet Dor,1.3718959201157,-0.986586144784284,4.72\n",
+    "          ,1.3700163347674,1.07948614235849,6.17\n",
+    " 15    Ori,1.40465440761467,0.272222881943004,4.82\n",
+    "   Bet Men,1.37545370666784,-1.23369567804581,5.31\n",
     " 14    Cam,1.40774229782973,1.0941711487593,6.5\n",
+    " 69Lam Eri,1.36008138364066,-0.126463648717422,4.27\n",
     "          ,1.36377342628911,-0.598327956404523,6.52\n",
+    "          ,1.35692636537744,0.00986595841057906,6.1\n",
     "          ,1.32671874370831,-1.35611598066278,6.29\n",
+    "          ,1.40539281614436,1.27876880597857,5.74\n",
+    "          ,1.41284402948941,0.280047774756112,5.18\n",
     "          ,1.43049870615381,-0.0304753879945454,6.25\n",
+    "          ,1.44996584011837,1.38284375890235,5.05\n",
+    "          ,1.38277066391658,-0.0263399272946811,5.9\n",
+    "          ,1.38961772482825,1.03682253842085,6.15\n",
+    " 11Mu  Aur,1.40022395643653,0.671680266356396,4.86\n",
     "          ,1.4125755172968,0.0089835975109597,6.67\n",
+    "          ,1.41781150505278,0.018098094715819,5.89\n",
+    "          ,1.42955891347966,0.928757568901538,6.2\n",
+    "          ,1.38760388338365,-0.177165463487858,5.68\n",
     "          ,1.41237413315233,-0.420459513079056,6.41\n",
+    "          ,1.38518727365012,-1.09258095988526,5.2\n",
+    "  3Iot Lep,1.38538865779458,-0.176816397637459,4.45\n",
+    "          ,1.42606825497567,-0.103721038936574,5.91\n",
+    " 17Rho Ori,1.38921495653933,0.0499358091542822,4.46\n",
     "          ,1.4051914319999,-0.638872924555713,6.57\n",
     "          ,1.34766269473224,-1.27343100734955,6.27\n",
+    "          ,1.40814506611866,0.0343490493066106,6.09\n",
+    "  5Mu  Lep,1.43640597439133,-0.275665059078882,3.31\n",
     "          ,1.42908901714259,0.00977869194797934,6.32\n",
     "          ,1.41042741975588,-0.137047131376044,6.37\n",
+    "  4Kap Lep,1.38438173707227,-0.193009174586517,4.36\n",
+    " 14    Aur,1.40720527344451,0.570509347382458,5.02\n",
     "          ,1.4070710173482,0.935254072228406,6.5\n",
+    " 13Alp Aur,1.43439213294672,0.802817518959714,0.08\n",
+    "          ,1.42929040128705,0.0899911154875521,5.5\n",
     "          ,1.44613954137361,-0.233757764483774,6.21\n",
     "108    Tau,1.41163572462264,0.388941775670125,6.27\n",
+    "          ,1.40324471860344,0.598856403316932,5.96\n",
+    " 19Bet Ori,1.41344818192279,-0.136106592834691,0.12\n",
     "          ,1.56200255248677,1.49518963322586,6.6\n",
     "          ,1.42814922446844,-0.59645657559544,6.98\n",
+    "   Xi  Men,1.36860664575617,-1.42295724287735,5.85\n",
+    "          ,1.39914990766607,-0.0103119869971998,6.15\n",
+    " 18    Ori,1.38431460902412,0.197944577860212,5.56\n",
+    " 15    Cam,1.4292232732389,1.01433687989099,6.13\n",
+    "          ,1.4266052793609,1.09351180215299,5.61\n",
+    "          ,1.40874921855204,-0.593809492896582,5.76\n",
+    "          ,1.40888347464835,0.746865172022862,5.48\n",
+    "          ,1.4070710173482,-0.437321332908046,5.07\n",
     "          ,1.4339893646578,0.0339854390457785,6.42\n",
+    "          ,1.44177621824362,0.706247481819505,6.18\n",
+    " 16    Aur,1.40190215764037,0.582445460211374,4.54\n",
+    "          ,1.43727863901733,-0.907028219714209,6.05\n",
+    " 17    Aur,1.41291115753756,0.589349207030374,6.14\n",
+    " 15Lam Aur,1.40331184665159,0.699862485639293,4.71\n",
     "          ,1.43754715120994,-0.577238561276258,6.66\n",
     "          ,1.44338729139931,-0.294233423065377,6.56\n",
+    "          ,1.39190007846548,0.58901953372722,5.41\n",
     "          ,1.39935129181053,0.775372216472103,6.62\n",
     " 18    Aur,1.42358451719399,0.593159842563895,6.49\n",
+    " 20Tau Ori,1.43204265126135,-0.0899814192139299,3.6\n",
     "          ,1.44902604744422,0.819674490651893,6.54\n",
+    "          ,1.43714438292102,-0.217821938785703,5.5\n",
+    "          ,1.41613330384894,0.717087915729115,5.52\n",
+    "109    Tau,1.41418659045248,0.385654738912203,4.94\n",
+    " 19    Aur,1.39747170646223,0.592679877019597,5.03\n",
+    "          ,1.41163572462264,0.351417196752247,6.08\n",
     "          ,1.42667240740906,-0.904395681425784,6.49\n",
+    "   Omi Col,1.42224195623092,-0.577786400735912,4.83\n",
+    "   The Dor,1.42667240740906,-1.1661368915832,4.83\n",
     "          ,1.4700371265163,1.36096411747388,6.56\n",
+    " 21    Ori,1.40693676125189,0.0453058384996861,5.34\n",
+    "          ,1.45520182787435,-0.311890337331387,5.96\n",
     "          ,1.43915822436563,-0.0102586574922778,6.34\n",
+    " 20Rho Aur,1.46560667533816,0.729625197522607,5.23\n",
     "          ,1.47587726670567,0.487945577489504,6.33\n",
+    " 16    Cam,1.44667656575884,1.00434002178651,5.28\n",
+    "          ,1.41767724895647,0.516093859814723,5.76\n",
     "          ,1.41539489531925,-0.305083553248609,6.36\n",
     "          ,1.41646894408971,-0.305262934310619,6.54\n",
+    "          ,1.47225235210537,0.345822446872243,6.18\n",
+    "  6Lam Lep,1.43821843169148,-0.223809387747406,4.29\n",
+    "  7Nu  Lep,1.47124543138307,-0.203932026821915,5.3\n",
+    "          ,1.4237187732903,-0.464800572353334,5.99\n",
     "          ,1.43170701102058,-0.0808669220090706,6.39\n",
+    "          ,1.47252086429799,0.716098895819651,5.54\n",
     "          ,1.42653815131275,0.0700216399626503,6.57\n",
+    "          ,1.43237829150212,-0.362340048987645,4.71\n",
+    "          ,1.45916238271541,0.147107015259067,5.8\n",
+    "          ,1.44332016335116,0.00726735707983195,5.68\n",
+    " 22    Ori,1.46198176073787,0.00667588438887831,4.73\n",
     "          ,1.42392015743476,-0.581214033461356,6.34\n",
+    "   Zet Pic,1.42157067574938,-0.862085991475355,5.45\n",
     " 22    Aur,1.44009801703978,0.505040107885426,6.46\n",
     "          ,1.46909733384215,-0.213696174359461,6.56\n",
+    " 23    Ori,1.47211809600906,0.0618622257095768,5\n",
+    "          ,1.4626530412194,-0.405386655733361,5.06\n",
+    "          ,1.42331600500138,-0.58738571162188,6.09\n",
+    " 21Sig Aur,1.46634508386785,0.652501037131702,4.99\n",
+    "110    Tau,1.45996791929326,0.291460288809431,6.08\n",
     "          ,1.46513677900109,0.544959666387985,6.28\n",
+    "          ,1.4654052911937,0.543548858575956,5.94\n",
     "          ,1.45110701693698,0.0928951494373982,6.35\n",
+    "          ,1.43419074880226,-0.132368679353337,5.9\n",
     "          ,1.43553330976534,0.608339358919435,6.55\n",
+    "111    Tau,1.44781774257745,0.303396401638348,4.99\n",
+    "          ,1.46614369972339,0.00278767866637983,5.7\n",
+    "          ,1.47836100448735,0.0151358831242397,6.11\n",
+    "  8    Lep,1.44989871207021,-0.210709722083827,5.25\n",
+    " 29    Ori,1.48561083368794,-0.108069817656127,4.14\n",
     "          ,1.42546410254229,-0.441466489881532,6.49\n",
     "          ,1.46231740097863,0.0410637187899777,6.32\n",
+    " 27    Ori,1.4525167059482,0.015557671026805,5.08\n",
+    " 28Eta Ori,1.45211393765928,-0.0279785975368313,3.36\n",
+    " 25Psi1Ori,1.47386342526106,0.0322255653833509,4.95\n",
+    " 24Gam Ori,1.42868624885367,0.110823559364829,1.64\n",
+    "112Bet Tau,1.44593815722915,0.499295065764278,1.65\n",
+    "          ,1.45184542546667,-0.262216327564904,5.65\n",
+    "          ,1.44157483409916,-0.668834410048283,5.71\n",
+    "          ,1.49534440067022,0.618845271389078,6.15\n",
+    "          ,1.48809457146963,0.600247818581717,5.94\n",
+    "          ,1.491316717781,0.580544990581425,6.15\n",
     "          ,1.46171324854525,-0.639895881422854,6.82\n",
     "113    Tau,1.43009593786489,0.291474833219864,6.25\n",
+    "          ,1.42022811478631,-0.168787883078285,5.61\n",
     "          ,1.45996791929326,0.00949750001293581,6.57\n",
+    "   Kap Pic,1.43466064513934,-0.975037882900254,6.11\n",
+    " 17    Cam,1.45359075471866,1.10073067786471,5.42\n",
+    "          ,1.4811803825098,0.0090902565208038,6.16\n",
+    "          ,1.43794991949887,0.527239726343432,5.74\n",
+    " 24Phi Aur,1.47903228496889,0.601716804035478,5.07\n",
     "          ,1.42566548668675,-0.0782198393102125,6.23\n",
     "          ,1.47453470574259,0.119889575201577,6.42\n",
+    "115    Tau,1.4403665292324,0.31349991875267,5.42\n",
+    "          ,1.44533400479577,0.266298458759846,6.16\n",
+    "114    Tau,1.47795823619843,0.382871908382634,4.88\n",
+    " 30Psi2Ori,1.48983990072162,0.0540276366228467,4.59\n",
+    "          ,1.49836516283713,-0.31947282330394,5.89\n",
+    "          ,1.48836308366224,-0.764003335650084,6.08\n",
+    "116    Tau,1.48802744342147,0.277056474343667,5.5\n",
     "          ,1.39586063330654,-1.40426282733377,6.51\n",
+    "117    Tau,1.43331808417627,0.300875370496578,5.77\n",
     "          ,1.43325095612811,-0.176263710040994,6.35\n",
     "   The Pic,1.47574301060936,-0.902049183209214,6.27\n",
     "          ,1.47789110815028,0.23874164912558,6.35\n",
     "          ,1.43331808417627,0.0226601914550597,6.41\n",
+    "118    Tau,1.45768556565603,0.438960003150196,5.47\n",
     "          ,1.49004128486608,0.509398582878601,6.24\n",
+    "          ,1.47581013865751,-0.359964461950208,6.07\n",
+    "          ,1.50514509570065,0.723647444834527,6\n",
     "          ,1.50044613232989,0.695091919017175,6.37\n",
     "          ,1.50729319324156,-0.0469929901099473,6.39\n",
+    "          ,1.43392223660965,-0.681662580050441,5.87\n",
     " 18    Cam,1.49400183970715,0.9986967905384,6.48\n",
+    "  9Bet Lep,1.45090563279252,-0.335811044357331,2.84\n",
+    "          ,1.46721774849385,-0.0445689217043996,5.79\n",
     "          ,1.49816377869267,0.392044583229226,6.29\n",
+    "          ,1.47493747403152,0.26808742124314,5.94\n",
+    "          ,1.50910565054171,0.0312268492002652,5.78\n",
+    " 31    Ori,1.49460599214053,-0.0158437110986596,4.71\n",
+    "          ,1.45171116937036,-0.641747869684693,5.57\n",
+    "   Lam Dor,1.44835476696268,-0.996364836732263,5.14\n",
     "          ,1.46647933996416,0.0733765506359283,6.21\n",
     "          ,1.44452846821792,-0.521562558137639,6.75\n",
+    " 32    Ori,1.50313125425604,0.103813153535985,4.2\n",
     "          ,1.46768764483092,-0.114585713530239,6.33\n",
+    " 33    Ori,1.46372708998986,0.0574601174851022,5.46\n",
+    " 25Chi Aur,1.50729319324156,0.561855423174652,4.76\n",
+    "          ,1.53783645515147,1.3097629446119,6.17\n",
+    "119    Tau,1.46580805948262,0.324534278134723,4.38\n",
     "          ,1.49151810192546,0.734938755467568,6.55\n",
+    "          ,1.46768764483092,0.297719233432555,5.46\n",
     "          ,1.47231948015352,-0.0923570062513666,6.22\n",
+    " 10    Lep,1.45446341934466,-0.33399299305317,5.55\n",
     "          ,1.48990702876977,0.572487387201384,6.48\n",
     " 34Del Ori,1.44929455963683,0.00496449209456165,6.85\n",
+    " 34Del Ori,1.44916030354052,0.0052214433455497,2.23\n",
     "          ,1.492189382407,1.16406673716486,6.26\n",
     "          ,1.50400391888204,0.606080127165464,6.27\n",
+    " 36Ups Ori,1.51917485776476,-0.116912819199565,4.62\n",
+    "          ,1.45265096204451,-0.818947270130228,5.46\n",
+    " 19    Cam,1.49071256534762,1.11971113348015,6.15\n",
+    "120    Tau,1.49541152871837,0.32358889145656,5.69\n",
+    "          ,1.42680666350536,-1.17595436862567,6.03\n",
+    "          ,1.50507796765249,0.357341619935406,6.18\n",
+    "          ,1.50407104693019,-0.00712191297549908,5.35\n",
+    "   Eps Col,1.46131048025633,-0.60265249444002,3.87\n",
     "          ,1.4626530412194,-0.00491601072645069,6.46\n",
+    " 35    Ori,1.52588766258012,0.249679045771411,5.64\n",
+    " 11Alp Lep,1.50742744933787,-0.282355487878194,2.58\n",
+    "          ,1.51333471757539,0.949963319313269,5.73\n",
     "          ,1.4588938705228,-1.07661604536632,6.59\n",
+    "          ,1.49514301652576,-0.0147286396321077,5.34\n",
+    "          ,1.48742329098809,0.832788700725905,6.11\n",
+    "          ,1.49272640679223,-0.76924901967969,5.86\n",
     "          ,1.53031811375826,0.0245703573586313,6.59\n",
+    " 38    Ori,1.47977069349858,0.0657455832952642,5.36\n",
     "          ,1.46258591317125,-0.0168327310081231,6.22\n",
+    "          ,1.46272016926756,-0.00924054876194775,5.93\n",
+    "121    Tau,1.49809665064452,0.419567455905815,5.38\n",
+    " 37Phi1Ori,1.52340392479844,0.16562204974064,4.41\n",
+    "          ,1.51749665656092,-0.654270607067752,5.48\n",
     "          ,1.53622538199578,0.48279685619612,6.27\n",
+    " 39Lam Ori,1.47285650453875,0.173383916775203,3.54\n",
+    " 39Lam Ori,1.47312501673137,0.173398461185637,5.61\n",
+    "          ,1.46292155341202,-0.608426625382034,5.78\n",
+    "          ,1.46124335220818,-1.08336465180737,6.19\n",
+    "          ,1.47970356545042,0.178721715404219,5.6\n",
+    "          ,1.53642676614024,0.70131207854581,6.09\n",
+    "          ,1.60227938137895,1.48671024194326,6.11\n",
+    "          ,1.46292155341202,-0.104559766604894,5.67\n",
+    "          ,1.46533816314555,-0.104685818161982,4.78\n",
     "          ,1.52293402846136,-0.491329576983648,6.53\n",
     "          ,1.50662191276003,0.452728711693707,6.49\n",
     "          ,1.49098107754023,-0.0612028791032678,6.56\n",
     "          ,1.49192087021438,-0.0623906726219862,6.24\n",
+    " 42    Ori,1.49286066288853,-0.0551814931838874,4.59\n",
     " 41The1Ori,1.4830599678581,-0.0805081598850495,6.73\n",
     " 41The1Ori,1.48332848005072,-0.0805420968427272,7.96\n",
+    " 41The1Ori,1.48386550443595,-0.0804645266537497,5.13\n",
     " 41The1Ori,1.48493955320641,-0.0804984636114273,6.7\n",
+    " 43The2Ori,1.49245789459961,-0.0800039536566956,5.08\n",
     "          ,1.50346689449681,-0.063447566446805,6.38\n",
+    " 44Iot Ori,1.49661983358514,-0.0713839664065681,2.77\n",
     "          ,1.50977693102325,-0.0479480730617331,6.4\n",
+    " 45    Ori,1.51474440658662,-0.0548760605647884,5.26\n",
+    "          ,1.48225443128026,0.46991535668904,5.83\n",
+    " 46Eps Ori,1.48326135200257,-0.013928697058277,1.7\n",
     "          ,1.53179493081764,0.585717952558864,6.33\n",
+    "122    Tau,1.4755416264649,0.297408952676645,5.54\n",
     "          ,1.48621498612133,-0.075955759419431,6.54\n",
+    " 40Phi2Ori,1.53897763197008,0.162150783783895,4.09\n",
+    "          ,1.47634716304274,0.192597082957574,5.94\n",
+    "          ,1.48238868737657,-0.574562389756533,5.78\n",
+    "123Zet Tau,1.52239700407613,0.369006237102901,3\n",
+    "          ,1.51400599805693,-0.103585291105863,5.72\n",
     "          ,1.5125963090457,-0.9267310477145,6.43\n",
+    "          ,1.49635132139252,0.15624090501117,6.12\n",
+    " 26    Aur,1.52595479062827,0.532194522164371,5.4\n",
     "          ,1.47990494959488,-0.476339137963741,6.26\n",
+    "          ,1.52770011988027,1.14664253346579,5.6\n",
+    "          ,1.52863991255442,-1.11304009722808,5.34\n",
+    "          ,1.50722606519341,-0.0708894564518364,6.05\n",
+    "          ,1.48225443128026,-0.178450219742798,6.11\n",
+    "          ,1.47628003499459,0.131622066284428,5.88\n",
     "          ,1.55186621721557,0.464567861786402,6.37\n",
+    "   Bet Dor,1.5033326384005,-1.07355687103852,3.76\n",
+    "          ,1.5421326502333,-0.0556129773600749,6.19\n",
+    "          ,1.50386966278573,0.509902789106955,5.96\n",
     "          ,1.51514717487554,0.933421476513812,6.23\n",
+    "   Nu 1Col,1.49259215069592,-0.456030292862063,6.16\n",
+    "          ,1.46970148627553,-0.814826353840797,6.11\n",
+    "125    Tau,1.538507735633,0.451986946761609,5.18\n",
     "          ,1.51541568706815,0.379832126602077,6.34\n",
     "          ,1.46493539485663,-0.997087209117116,6.75\n",
+    " 48Sig Ori,1.53494994908086,-0.0244346095279206,3.81\n",
     "          ,1.53803783929593,-0.0245364204009536,6.65\n",
+    "          ,1.52555202233935,-0.0947035044679368,5.96\n",
+    " 47Ome Ori,1.4940689677553,0.0719318058662218,4.57\n",
+    "   Nu 2Col,1.53031811375826,-0.476659114993274,5.31\n",
     "          ,1.53468143688824,-1.06158197311512,6.32\n",
+    " 49    Ori,1.54609320507436,-0.118454526705493,4.8\n",
+    "          ,1.53172780276948,0.547301316467744,6.04\n",
+    "          ,1.54005168074053,0.557123641647023,6.11\n",
+    "          ,1.52105444311306,-0.042503615422873,6\n",
+    " 24    Cam,1.49876793112605,0.987536379599258,6.05\n",
     "          ,1.52051741872783,-0.144745972632063,6.5\n",
+    " 23    Cam,1.51252918099755,1.07297024648438,6.15\n",
     "          ,1.50105028476328,-0.281880370470706,6.38\n",
     "          ,1.51608696754969,0.514653963181828,6.43\n",
+    "126    Tau,1.51165651637155,0.288570799270018,4.86\n",
+    "          ,1.53333887592517,-0.685783496339872,5.82\n",
+    " 50Zet Ori,1.54461638801498,-0.000998716183085644,2.05\n",
+    " 50Zet Ori,1.54475064411129,-0.000998716183085644,4.21\n",
     "          ,1.53360738811779,-0.0205076187109334,6.22\n",
     "          ,1.56119701590893,0.407122288711733,6.59\n",
+    "          ,1.55146344892665,-0.015203757039595,4.95\n",
+    "   Gam Men,1.51528143097185,-1.32049671951167,5.19\n",
     "          ,1.49749249821113,0.395496456638726,6.36\n",
+    "          ,1.49541152871837,0.00589533436229196,5.93\n",
+    "   Alp Col,1.53139216252872,-0.592117493149509,2.64\n",
     "          ,1.54528766849652,-0.167386771539878,6.52\n",
+    "          ,1.54602607702621,-0.547524330761054,5.45\n",
     "          ,1.54199839413699,-0.019266495687293,6.42\n",
     "          ,1.53951465635531,-1.14213861436828,6.31\n",
     "          ,1.52279977236505,0.404989108514851,6.21\n",
     "          ,1.54360946729268,-0.266589346968512,6.21\n",
+    " 51    Ori,1.53065375399903,0.0257387583301053,4.91\n",
+    "          ,1.51736240046461,-1.26115067680705,5.78\n",
+    "          ,1.51145513222709,-0.287450879666655,6.15\n",
     "          ,1.52414233332813,-0.568967639876529,6.34\n",
+    "          ,1.56448629026846,-0.0908249950190605,6.02\n",
+    " 12    Lep,1.51091810784186,-0.377451691427829,5.87\n",
+    " 26    Cam,1.5505236562525,0.97940120603024,5.94\n",
     "          ,1.50910565054171,-0.00675345457785584,6.31\n",
+    " 27Omi Aur,1.57784477185103,0.86963454049023,5.47\n",
+    "          ,1.50783021762679,-0.514251567826507,6.19\n",
+    "          ,1.51252918099755,-0.581757024784199,5.29\n",
     "          ,1.5718032475172,0.706984398614792,6.58\n",
+    "          ,1.5256191503875,-0.304429054779111,5.73\n",
+    "          ,1.52937832108411,1.09620736621996,6.13\n",
     "          ,1.55824338179017,0.361195888700227,6.95\n",
+    "          ,1.50789734567495,0.0699537660472949,6.09\n",
     "          ,1.53380877226225,0.742230353231455,6.29\n",
     "          ,1.53911188806638,-0.346859948149817,6.34\n",
     "          ,1.53716517466993,-0.673575887849534,6.25\n",
+    "          ,1.53656102223655,-0.37661296375951,6.15\n",
+    " 13Gam Lep,1.53830635148854,-0.376147542625645,3.6\n",
     "          ,1.55179908916742,-0.770858601100973,6.39\n",
+    "129    Tau,1.5707963267949,0.276154720896803,6\n",
     "          ,1.5134689736717,-0.0651298699202551,6.34\n",
+    "          ,1.57965722915118,0.166194129884349,5.79\n",
+    "          ,1.55669943668263,0.020386415290656,5.95\n",
+    "131    Tau,1.53179493081764,0.252869119793112,5.72\n",
+    "130    Tau,1.54924822333758,0.309432331968161,5.49\n",
+    "   Iot Men,1.51044821150478,-1.34703057227879,6.05\n",
     " 29    Cam,1.57281016823951,0.993422017687928,6.54\n",
+    "133    Tau,1.57166899142089,0.242595917890401,5.29\n",
+    "          ,1.61040187520554,1.19505117952457,6.2\n",
+    " 29Tau Aur,1.53689666247731,0.683839393478623,4.52\n",
+    "   Mu  Col,1.58576588153316,-0.553157865735547,5.17\n",
+    "          ,1.54850981480789,0.364240518617594,6.07\n",
+    " 14Zet Lep,1.58663854615915,-0.230000458455175,3.55\n",
+    " 52    Ori,1.51870496142768,0.112646458805801,5.27\n",
+    "          ,1.52427658942443,-0.275102675208795,6.17\n",
+    "          ,1.54991950381912,-0.165229350658941,6.03\n",
+    "132    Tau,1.52414233332813,0.428783763983707,4.86\n",
     "          ,1.60288353381233,0.899101516028068,6.29\n",
+    " 53Kap Ori,1.57502539382858,-0.145390774827939,2.06\n",
     "          ,1.52038316263152,-0.477536627756082,6.22\n",
+    " 30    Cam,1.55925030251247,1.02911884902802,6.14\n",
+    "          ,1.5652918268463,-0.0681599554271897,5.97\n",
+    "          ,1.54649597336328,-0.792427961773537,5.31\n",
     "          ,1.53904476001823,-0.599089113883865,6.32\n",
+    "134    Tau,1.56697002805014,0.220803542924527,4.91\n",
+    " 31Ups Aur,1.5347485649364,0.651104773730107,4.74\n",
+    " 32Nu  Aur,1.57099771093936,0.683272161471725,3.97\n",
+    "          ,1.60516588744955,0.488129806688325,5.56\n",
+    "          ,1.53065375399903,0.172283389719085,5.8\n",
+    "   Del Dor,1.56327798540169,-1.12162614752053,4.35\n",
+    "135    Tau,1.56596310732784,0.249679045771411,5.52\n",
     "          ,1.5920759180596,-0.686743427428469,6.61\n",
     "          ,1.56603023537599,0.560687022203178,6.25\n",
+    "          ,1.54475064411129,0.0772017305798825,5.97\n",
+    "   Bet Pic,1.53703091857362,-0.888959213819256,3.85\n",
+    "          ,1.5718032475172,-0.235905489091089,5.49\n",
+    "   Pi  Men,1.48359699224333,-1.38807489852152,5.65\n",
+    "          ,1.53152641862502,-0.936180066359325,6.18\n",
+    "          ,1.56743992438722,0.035333221079263,5.98\n",
     "          ,1.58892089979638,0.690704355203134,6.45\n",
+    "          ,1.59462678388943,-0.367013652873541,5.87\n",
+    " 31    Cam,1.62221641168058,1.04524860019854,5.2\n",
+    "          ,1.58972643637422,0.591972049045177,5.98\n",
+    " 30Xi  Aur,1.61281848493907,0.972269596781119,4.99\n",
+    "          ,1.56730566829091,0.346762985413596,6.06\n",
+    " 55    Ori,1.56106275981262,-0.11313127248691,5.35\n",
     "          ,1.56858110120583,-0.752668391785744,6.38\n",
+    "137    Tau,1.56582885123153,0.247342243828463,5.59\n",
+    "136    Tau,1.56656725976122,0.481924191570123,4.58\n",
+    " 15Del Lep,1.55743784521232,-0.333721497391749,3.81\n",
+    "          ,1.5699236621689,-0.367808747310561,6.17\n",
+    " 56    Ori,1.57133335118013,0.0323758576244948,4.78\n",
     "          ,1.56589597927968,0.354287293744416,6.71\n",
+    "          ,1.54609320507436,-0.156357260294636,5.97\n",
+    "   Bet Col,1.60449460696802,-0.597455291778526,3.12\n",
     "          ,1.60469599111248,1.1535947616529,6.25\n",
+    "   Gam Pic,1.58952505222976,-0.974475499030167,4.51\n",
     "          ,1.61140879592784,-0.498315742128437,6.45\n",
     "          ,1.56556033903891,-0.894170960891184,6.35\n",
     "          ,1.5726759121432,0.904148426448418,6.49\n",
+    "          ,1.62382748483626,0.553298461703069,5.9\n",
+    " 54Chi1Ori,1.57536103406934,0.353884898389095,4.41\n",
+    "          ,1.56260670492015,0.184777038281277,6.12\n",
+    "          ,1.5985873387305,-0.905670741407102,5.17\n",
     "          ,1.58784685102592,0.205294353265833,6.59\n",
     "          ,1.56569459513522,0.0562917165136282,6.31\n",
+    " 57    Ori,1.6207395946212,0.344697679132069,5.92\n",
+    "          ,1.58046276572902,-0.634756856403093,5.63\n",
     "          ,1.56428490612399,0.855725235979198,6.47\n",
     "          ,1.59992989969357,-0.654047592774442,6.7\n",
+    "   Lam Col,1.5495167355302,-0.561971778458119,4.87\n",
+    "          ,1.60382332648648,0.0169006049234784,6\n",
     "          ,1.5912032534336,-0.0686980986132213,6.57\n",
+    "          ,1.45855823028203,-1.45237573704708,6.2\n",
     "          ,1.61731606416536,-0.320471539487026,6.69\n",
+    " 58Alp Ori,1.56280808906461,0.129275568067858,0.5\n",
     "   Lam Men,1.57865030842887,-1.24438097157747,6.53\n",
+    "          ,1.61516796662444,0.352120176589856,5.4\n",
+    "   Eps Dor,1.59476103998574,-1.13618995050106,5.11\n",
+    "          ,1.60315204600495,-0.178479308563665,5.66\n",
     "          ,1.59872159482681,0.505137070621648,6.32\n",
     "          ,1.55804199764571,0.243041946477021,6.6\n",
     "          ,1.5635464975943,-0.503566274294853,6.36\n",
     "          ,1.57099771093936,-0.716957016035215,6.55\n",
+    "          ,1.58965930832607,-0.0590551544959526,5.87\n",
     "          ,1.59650636923774,-0.0560541578098846,6.28\n",
+    "          ,1.56314372930538,-0.992113020748932,5.94\n",
     "          ,1.56240532077569,-1.11642409672223,6.36\n",
+    "          ,1.62866070430332,0.423237495471814,6.02\n",
+    "          ,1.59093474124099,0.16597596372785,5.99\n",
+    "          ,1.61979980194705,0.201081322376991,5.87\n",
+    " 33Del Aur,1.608857930098,0.947447136308311,3.72\n",
     "          ,1.6050987594014,1.31922165953035,6.4\n",
     "          ,1.62778803967733,0.965530686613696,6.44\n",
+    "          ,1.6310101859887,0.952028625594796,6.14\n",
+    "          ,1.59570083265989,0.871345932784547,5.89\n",
+    "          ,1.61510083857629,-0.663957184416321,5.57\n",
     "          ,1.55898179031986,-0.866347503732308,6.52\n",
+    "139    Tau,1.63785724690037,0.452980814807884,4.82\n",
+    " 16Eta Lep,1.58596726567762,-0.241417820645305,3.71\n",
+    "          ,1.57254165604689,-0.369306821585189,5.96\n",
+    "   Xi  Col,1.58912228394084,-0.643662883725075,4.97\n",
+    " 34Bet Aur,1.60899218619431,0.784481865540151,1.9\n",
+    "          ,1.59979564359726,-0.844269088694579,6.1\n",
     "          ,1.59966138750096,-0.397663573793286,6.36\n",
+    " 35Pi  Aur,1.64175067369328,0.801750928861273,4.26\n",
+    "   Sig Col,1.58140255840317,-0.534376183729364,5.5\n",
     "          ,1.63047316160347,0.0213705870633083,6.22\n",
+    "          ,1.61201294836122,-0.896483522150076,5.29\n",
+    " 37The Aur,1.62456589336595,0.64948064789839,2.62\n",
     "          ,1.59630498509328,0.778276250421949,6.22\n",
     "          ,1.57777764380287,0.0173514816469103,6.22\n",
     "          ,1.61912852146551,-0.524015715364053,6.44\n",
+    "          ,1.63349392377039,0.223552436496418,5.7\n",
+    " 59    Ori,1.5948281680339,0.0320607287317736,5.9\n",
+    " 36    Aur,1.64947039923095,0.836046648662962,5.73\n",
+    "          ,1.55280600988972,-1.09798663242963,4.65\n",
+    " 60    Ori,1.62866070430332,0.00965264039089086,5.22\n",
     "          ,1.56059286347555,-1.10859435577231,6.63\n",
+    "          ,1.63302402743331,0.854503505502802,5.96\n",
+    "   Gam Col,1.60093682041588,-0.605920138650698,4.36\n",
+    "  1    Mon,1.56777556462798,-0.150408596427422,6.12\n",
+    "  2    Mon,1.57220601580612,-0.147334877689188,5.03\n",
     "          ,1.61704755197275,-0.00969627362219072,6.63\n",
+    "          ,1.58885377174822,0.541658085219629,5.98\n",
+    "          ,1.57569667431011,0.481226059869325,6.05\n",
+    "          ,1.6449056919565,0.871016259481392,6.05\n",
+    "          ,1.57536103406934,-0.0510654250312674,4.53\n",
     "          ,1.57703923527318,-0.917587461688774,6.45\n",
     "          ,1.65148424067556,0.757099588831085,6.42\n",
     "          ,1.6310101859887,0.390968296857163,6.37\n",
+    "          ,1.61254997274645,-0.767343701912929,5.81\n",
     "          ,1.59455965584128,-0.193736395108182,6.22\n",
+    " 38    Aur,1.60805239352016,0.748949870851633,6.1\n",
+    "   Eta Col,1.57824754013995,-0.718809004297054,3.96\n",
     "          ,1.60375619843833,1.03660437226435,6.34\n",
     "          ,1.65349808212017,0.569602745798783,6.24\n",
     "          ,1.62731814334025,0.900124472895209,6.45\n",
+    " 61Mu  Ori,1.61040187520554,0.168380639586153,4.12\n",
+    "   Kap Men,1.54958386357835,-1.37250268308429,5.47\n",
     "          ,1.64960465532726,1.10747443616895,6.39\n",
     "          ,1.60248076552341,0.0295736345476817,6.59\n",
+    "  3    Mon,1.64282472246374,-0.164094886645145,4.95\n",
+    "          ,1.59274719854113,-0.429040715234695,6.05\n",
+    " 64    Ori,1.62053821047674,0.343665025991306,5.14\n",
+    "          ,1.59717764971927,-0.560047068144114,5.55\n",
+    " 39    Aur,1.59717764971927,0.75017160132803,5.87\n",
+    "          ,1.61704755197275,0.203869001043371,6.08\n",
+    "  1    Gem,1.59791605824896,0.406021761655614,4.16\n",
+    " 62Chi2Ori,1.65799566134646,0.351480222530791,4.63\n",
+    "          ,1.62490153360672,-0.235667930387345,6.2\n",
     "          ,1.59610360094881,0.662599706109214,6.34\n",
+    "          ,1.63685032617807,-0.886341219941265,5.67\n",
     "          ,1.63826001518929,0.586416084259661,6.23\n",
+    "          ,1.60469599111248,-0.448821113423964,5.04\n",
+    "          ,1.60838803376093,0.617628389049493,6.12\n",
+    "          ,1.60637419231632,-0.0923424618409333,5.21\n",
+    " 40    Aur,1.64410015537866,0.671651177535529,5.36\n",
+    " 63    Ori,1.66638666736566,0.0945968454580927,5.67\n",
+    " 66    Ori,1.66665517955828,0.0725814561989086,5.63\n",
+    "          ,1.62718388724394,0.515090295494826,6.08\n",
+    "          ,1.63745447861145,0.730493014011793,6.12\n",
+    " 17    Lep,1.66759497223243,-0.270797529720542,4.93\n",
+    "          ,1.61550360686521,-0.555494667678495,5.65\n",
+    "          ,1.62886208844778,-0.170295653626536,5.87\n",
     "          ,1.59187453391514,-1.04550555144953,6.45\n",
+    " 37    Cam,1.68941158788236,1.02862433907329,5.36\n",
     "          ,1.63658181398545,0.716554620679894,6.36\n",
+    "          ,1.64893337484572,-0.0664291705856286,5.38\n",
+    " 18The Lep,1.60946208253139,-0.228022418636248,4.67\n",
     "          ,1.65396797845724,-0.415465932163628,6.95\n",
     "          ,1.6263783506661,-0.784758209338384,6.35\n",
+    "          ,1.64222057003036,-0.784021292543097,5.93\n",
+    " 67Nu  Ori,1.64738942973819,0.257756041698696,4.42\n",
+    "          ,1.62899634454409,-0.6019010332343,5.8\n",
     "          ,1.66665517955828,-0.188956132212442,6.66\n",
     "          ,1.65121572848294,-0.82975376708216,6.58\n",
+    "          ,1.63993821639313,-0.39949616950788,5.47\n",
+    "          ,1.60436035087171,-0.492905221447254,5.81\n",
+    " 36    Cam,1.69176106956773,1.14700129558981,5.32\n",
+    "          ,1.67430777704779,-0.352333494609544,5.78\n",
     "          ,1.66907178929181,0.151320046147908,6.55\n",
+    " 19    Lep,1.65719012476862,-0.328718220202699,5.31\n",
+    "          ,1.65356521016832,0.387288561017542,5.93\n",
+    "          ,1.60630706426817,-0.587967488039212,5.83\n",
+    "   Pi 1Col,1.65202126506079,-0.727826538765691,6.12\n",
     "          ,1.68055068552608,0.918867369806903,6.3\n",
+    "  3    Gem,1.66913891733996,0.403403767777623,5.75\n",
+    "          ,1.68343719159668,0.043623535026236,5.73\n",
     " 41    Aur,1.66779635637689,0.85020320815136,6.82\n",
+    " 41    Aur,1.6679306124732,0.850169271193682,6.09\n",
+    "   The Col,1.64376451513789,-0.641355170602994,5.02\n",
     "          ,1.60389045453464,-0.783803126386598,6.51\n",
+    "          ,1.658666941828,-0.0748552323633124,6.17\n",
+    "          ,1.68343719159668,-0.376511152886477,5.5\n",
+    "   Pi 2Col,1.67236106365134,-0.730352418044272,5.5\n",
     "          ,1.63732022251514,-0.311958211246742,6.35\n",
+    "          ,1.65611607599816,-0.234150463565473,5.56\n",
     "          ,1.62120949095827,0.31641849711295,6.33\n",
+    "  5    Gem,1.66215760033198,0.426214251473826,5.8\n",
+    "          ,1.67437490509594,-0.37046067814623,5.71\n",
     "          ,1.65215552115709,-0.761729559485681,6.27\n",
+    "          ,1.6883375391119,0.893128611476798,6.04\n",
+    "          ,1.65014167971249,0.570606310118679,5.78\n",
     "          ,1.68780051472667,0.381679266727104,6.56\n",
+    "          ,1.65625033209447,0.238038669287971,6.04\n",
     "          ,1.67343511242179,-0.441553756344132,6.27\n",
+    " 68    Ori,1.62490153360672,0.3454103552433,5.75\n",
+    "   Eta1Dor,1.60959633862769,-1.15122402275227,5.71\n",
+    "          ,1.62053821047674,-0.0915570636775359,6.15\n",
+    "          ,1.60590429597924,-1.0794037240327,5.05\n",
     "  6    Gem,1.64879911874941,0.399825842811034,6.39\n",
+    " 69    Ori,1.62758665553287,0.281531304620308,4.95\n",
+    " 70Xi  Ori,1.69451331954203,0.24799189416115,4.48\n",
+    "          ,1.66088216741707,-0.468548182108311,5.72\n",
+    " 40    Cam,1.69075414884543,1.04718300678616,5.35\n",
+    "          ,1.67746279531101,-0.0581970342803887,6.18\n",
+    "          ,1.6282579360144,-0.691960022637207,5.58\n",
     "          ,1.64134790540436,-0.845389008297942,6.49\n",
+    "          ,1.6883375391119,-0.0951155960968799,5.05\n",
+    "          ,1.63691745422622,-0.445369240014464,6.09\n",
     "          ,1.67236106365134,0.326032352409352,6.58\n",
     "          ,1.64443579561943,0.185484866255697,6.45\n",
+    "          ,1.71753824005873,1.20985738934566,4.8\n",
     "          ,1.68276591111515,-0.0261023685909374,6.62\n",
     "          ,1.66799774052135,-0.780477304534187,6.31\n",
+    "   Del Pic,1.63846139933375,-0.925572343016648,4.81\n",
     "          ,1.68531677694499,-0.283388141018957,6.52\n",
+    "          ,1.67028009415857,0.31252544325364,5.88\n",
+    "  1    Lyn,1.71854516078103,1.07364413750112,4.98\n",
+    "  7Eta Gem,1.70250155727231,0.39281543698219,3.28\n",
     "          ,1.68860605130451,0.630912283911895,6.92\n",
+    "          ,1.70042058777955,-0.0394202004110164,5.83\n",
+    " 44Kap Aur,1.66672230760643,0.51483819238065,4.35\n",
+    " 71    Ori,1.70021920363509,0.334342058903569,5.2\n",
+    "   Nu  Dor,1.66504410640259,-1.17210494799766,5.06\n",
+    "          ,1.6476579419308,0.241747493948459,5.91\n",
+    " 72    Ori,1.66994445391781,0.281749470776807,5.3\n",
+    "          ,1.68115483795946,-0.0598938821642721,5.83\n",
     "          ,1.68806902691928,-0.386381959433867,6.39\n",
     "          ,1.67222680755503,-0.499232039985734,6.54\n",
+    "  5Gam Mon,1.70075622802032,-0.0999249478134865,3.98\n",
     " 42    Aur,1.69155968542327,0.810254560827934,6.52\n",
+    " 73    Ori,1.69666141708295,0.219058213672533,5.33\n",
+    "  8    Gem,1.66611815517305,0.418355421703041,6.08\n",
+    "          ,1.69008286836389,0.1058736116807,6.07\n",
     "          ,1.69934653900909,0.0747631177639015,6.64\n",
+    "          ,1.68229601477807,0.00893996427965984,5.65\n",
+    "          ,1.67612023434794,-0.053838559287214,5.99\n",
     "          ,1.6725624477958,0.299871806176681,6.39\n",
     "          ,1.7087444657506,0.0204058078379004,6.37\n",
+    "          ,1.67115275878457,-0.156463919304481,6.1\n",
+    "  2    Lyn,1.70391124628354,1.02993333601229,4.48\n",
     " 43    Aur,1.67202542341057,0.809144337498193,6.38\n",
     "  9    Gem,1.71941782540703,0.414355708833887,6.25\n",
+    " 74    Ori,1.6763216184924,0.214190684314193,5.04\n",
+    "          ,1.64752368583449,-0.344314676323992,5.91\n",
+    "          ,1.65974099059845,-0.30583986259114,5.99\n",
+    "          ,1.69652716098664,-0.21435552096577,5.01\n",
+    "   Eta2Dor,1.63893129567083,-1.12417626748317,5.01\n",
     "          ,1.66907178929181,0.0188544040583499,6.63\n",
+    " 75    Ori,1.65383372236093,0.173529360879536,5.39\n",
     "          ,1.71901505711811,0.123099041770522,6.57\n",
+    "          ,1.65094721629033,-0.268470424051217,5.92\n",
     "          ,1.68968010007497,0.245364204009536,6.59\n",
+    "          ,1.66658805151012,0.0890166399885219,5.71\n",
     "          ,1.71304066083243,-0.492386470808467,6.67\n",
+    "          ,1.65685448452785,0.251026827804896,6.16\n",
+    "          ,1.64967178337541,-0.371493331286993,6.07\n",
     "  6    Mon,1.69223096590481,-0.161874439985663,6.75\n",
+    "   Kap Col,1.68504826475237,-0.608412080971601,4.37\n",
+    "  4    Lyn,1.67162265512165,1.03624076200352,5.94\n",
     "          ,1.65611607599816,0.302378292908018,6.32\n",
     "          ,1.70370986213908,0.157903815937376,6.24\n",
+    "          ,1.70095761216478,-0.265013702504906,5.14\n",
+    "   Alp Men,1.633762435963,-1.27840034758092,5.09\n",
+    "          ,1.68840466716005,-0.676062982033626,6\n",
+    "          ,1.64658389316034,-0.632900020004444,5.53\n",
+    " 45    Aur,1.72431817292224,0.932917270285458,5.36\n",
+    "          ,1.65772714915384,-0.641355170602994,5.87\n",
+    "          ,1.66772922832874,-0.3147361936395,5.52\n",
+    "          ,1.71726972786611,-0.150268000459901,5.36\n",
+    "          ,1.71485311813258,-0.261367903622962,6.06\n",
+    "          ,1.66370154543952,0.255710127964414,5.69\n",
     "          ,1.6643056978729,-0.129391923351324,6.22\n",
+    "          ,1.72854723995592,-0.332902162270674,5.81\n",
     "          ,1.67867110017778,0.515589653586369,6.43\n",
+    "  7    Mon,1.71116107548413,-0.107808018268328,5.27\n",
     "          ,1.66544687469151,-1.02601604146892,6.43\n",
+    "          ,1.73371609966375,-0.0184229198821624,4.9\n",
     "          ,1.72827872776331,0.205187694255989,6.54\n",
     "          ,1.69719844146818,0.310033500932737,6.35\n",
     "          ,1.71438322179551,-0.894776977992571,6.41\n",
+    "          ,1.7087444657506,-0.586488806311828,5.78\n",
     "          ,1.69706418537187,0.0395947333362158,6.31\n",
     "          ,1.71216799620644,-0.866395985100418,7.04\n",
+    "  1Zet CMa,1.68330293550038,-0.522493400405369,3.02\n",
     "          ,1.64416728342681,-1.2269179827839,6.64\n",
+    "          ,1.69558736831249,-0.178489004837287,5.64\n",
+    "          ,1.71257076449536,1.23107768416782,5.97\n",
+    " 13Mu  Gem,1.74412094712756,0.392936640402468,2.88\n",
+    "          ,1.71579291080673,0.219387886975687,6\n",
+    "          ,1.70679775235415,-0.590900610809925,5.53\n",
+    " 46Psi1Aur,1.74788011782417,0.860238851350327,4.91\n",
     "          ,1.66625241126936,-0.824823211945276,6.6\n",
+    "          ,1.7188808010218,0.982358569485008,5.64\n",
     "          ,1.69599013660141,0.0657019500639643,6.4\n",
+    "  5    Lyn,1.74989395926878,1.01957286764698,5.21\n",
+    "  2Bet CMa,1.72317699610363,-0.280023534072057,1.98\n",
     "          ,1.70162889264632,-0.0578188796091233,6.67\n",
+    "   Del Col,1.67591885020348,-0.568342230227898,3.85\n",
     "          ,1.74613478857217,0.518488839399404,6.71\n",
+    "  8Eps Mon,1.73304481918222,0.0801590940346507,4.44\n",
     "          ,1.73358184356744,0.0802075754027616,6.72\n",
     "          ,1.67860397212962,0.155067655902885,6.26\n",
+    "          ,1.71948495345518,-0.141817697998161,6.19\n",
     "          ,1.74653755686109,0.280246548365367,6.33\n",
     "          ,1.73291056308591,-0.260548568501887,6.24\n",
+    "          ,1.72404966072963,0.407131984985355,6.06\n",
+    "          ,1.6893444598342,-0.182731124546995,5.22\n",
     "          ,1.73505866062682,-0.317906875113956,6.6\n",
     "          ,1.69048563665282,-0.527263967027487,6.34\n",
     "          ,1.71760536810688,0.256946402851243,6.24\n",
+    "          ,1.70303858165754,-0.192640716188874,6.12\n",
+    "          ,1.69746695366079,0.123671121914232,5.98\n",
+    "          ,1.74620191662033,-0.426248188431504,5.63\n",
     "          ,1.70458252676508,0.0261993313271593,6.66\n",
+    "          ,1.70189740483893,0.0165127539785908,5.87\n",
     "          ,1.75721091651752,0.827378180044723,6.56\n",
     "          ,1.74244274592372,0.03965775911476,6.51\n",
+    "          ,1.67685864287763,-0.615965478123288,5.62\n",
     "          ,1.74311402640526,-0.0368409916275136,6.35\n",
     "          ,1.73445450819344,-0.475078622392857,6.39\n",
     "          ,1.73626696549359,0.568332533954276,6.43\n",
+    "   Nu  Pic,1.74170433739403,-0.970926662884446,5.61\n",
     "          ,1.75882198967321,-0.106566895244687,6.4\n",
+    "          ,1.72176730709241,-0.904410225836217,5.98\n",
     "          ,1.73526004477129,-0.693172056839981,6.31\n",
+    "          ,1.7374081423122,-0.00860059470288317,5.87\n",
+    "          ,1.73056108140053,-0.0593896759359182,6.15\n",
     "          ,1.76305105670689,0.0146753101271857,6.71\n",
     "          ,1.74452371541649,-0.113247627770377,6.27\n",
     "          ,1.72002197784041,-0.609750166731464,6.25\n",
     " 16    Gem,1.76459500181442,0.357724622743482,6.22\n",
+    "  6    Lyn,1.7650648981515,1.01513197432801,5.88\n",
+    " 48    Aur,1.73875070327527,0.532204218437993,5.55\n",
+    "          ,1.71599429495119,0.0507551442753573,5.55\n",
+    "          ,1.70713339259492,0.0052214433455497,5.2\n",
+    "          ,1.70955000232845,0.00481904799022879,5.55\n",
     "          ,1.73411886795267,-1.00279831428059,6.48\n",
     "          ,1.67289808803656,-1.08763586033794,6.27\n",
+    " 47    Aur,1.70572370358369,0.814816657567175,5.9\n",
     "          ,1.76895832494441,0.470676514168382,6.47\n",
     "          ,1.73056108140053,0.283412381703013,6.23\n",
     "          ,1.74022752033465,-0.893497069874442,6.51\n",
+    "          ,1.71820952054026,0.179836786870771,6.15\n",
+    " 18Nu  Gem,1.77056939810009,0.352769826922543,4.15\n",
+    " 10    Mon,1.76593756277749,-0.0565098826701275,5.06\n",
+    "          ,1.69390916710865,-1.04229123674377,5.8\n",
     "          ,1.76788427617395,1.38927238831386,6.54\n",
     "          ,1.71552439861412,0.0333745738075805,6.48\n",
+    "          ,1.73841506303451,-0.834664929671799,5.76\n",
+    "          ,1.70364273409093,-0.421380659073164,6.07\n",
     "          ,1.80332788559906,1.43318196341195,6.65\n",
     "          ,1.69733269756449,0.192325587296153,6.59\n",
+    "   Pi 1Dor,1.71807526444396,-1.18710023515438,5.56\n",
     "          ,1.69867525852756,-0.630141430158931,6.48\n",
     "          ,1.71082543524336,-1.0920719055201,6.46\n",
+    "          ,1.71733685591427,0.0461833512624944,6.16\n",
+    " 11Bet Mon,1.75875486162506,-0.121600967495894,4.6\n",
+    " 11Bet Mon,1.75942614210659,-0.121571878675027,5.4\n",
+    " 11Bet Mon,1.75942614210659,-0.121571878675027,5.6\n",
+    "          ,1.74304689835711,-0.288570799270018,5.77\n",
     "          ,1.75016247146139,-1.08510998105936,6.27\n",
+    "   Lam CMa,1.70652924016153,-0.548382450976618,4.48\n",
     "          ,1.70908010599137,0.157588687044655,6.57\n",
+    "          ,1.78399500773082,1.36128409450341,5.73\n",
+    "          ,1.74559776418694,-0.552028249858562,5.74\n",
     "          ,1.80594587947706,1.28623008853084,6.24\n",
+    "          ,1.71961920955149,0.295634534603784,6.2\n",
+    "          ,1.71686695957719,-0.173112421113782,5.93\n",
     "          ,1.74975970317247,-0.714285692652302,6.32\n",
+    "          ,1.6939762951568,-1.01225218106222,5.82\n",
+    "          ,1.71881367297365,0.196364085259795,6.14\n",
     " 19    Gem,1.75627112384337,0.277565528708832,6.4\n",
+    "          ,1.74694032515002,0.566441760597949,5.87\n",
+    "          ,1.74828288611309,-0.224308745838949,6.16\n",
     "          ,1.7586877335769,0.20581310390462,6.65\n",
+    "          ,1.77090503834086,0.201488565869123,5.23\n",
     "  7    Lyn,1.76318531280319,0.966093070483784,6.45\n",
+    "   Pi 2Dor,1.71827664858842,-1.19222956390052,5.38\n",
+    "          ,1.74170433739403,0.203742949486282,6.03\n",
+    "          ,1.73693824597513,-0.202603637335675,5.15\n",
+    "          ,1.76385659328473,-0.457809559071735,5.93\n",
+    "          ,1.77332164807439,-0.136867750314033,5.43\n",
+    " 12    Mon,1.73619983744544,0.084750279594758,5.84\n",
     "          ,1.77211334320763,0.576380441060694,6.42\n",
+    "          ,1.76325244085135,-0.868490380202812,5.27\n",
+    " 13    Mon,1.78318947115298,0.127985963676106,4.5\n",
+    "          ,1.74143582520142,-0.0721014906546102,5.6\n",
+    "  4Xi 1CMa,1.77493272123008,-0.394124433921186,4.33\n",
+    "          ,1.7235126363444,-0.606341926553263,5.84\n",
+    "          ,1.73559568501205,-0.962500601106762,5.22\n",
+    "          ,1.78198116628621,-0.682137697457928,6.2\n",
+    "          ,1.76325244085135,0.247056203756608,5.53\n",
     "          ,1.77338877612255,-0.18908218376953,6.24\n",
     "          ,1.753048977532,-0.611912435749212,6.34\n",
+    "  8    Lyn,1.78782130647558,1.07304781667336,5.94\n",
+    "          ,1.76566905058488,-0.0136087200287447,5.1\n",
+    "          ,1.78855971500527,1.25225434575869,5.92\n",
+    "          ,1.76278254451427,-0.557972065588965,5.69\n",
+    " 49    Aur,1.73975762399758,0.4890800415033,5.27\n",
+    "          ,1.73901921546789,-0.633612696115675,5.24\n",
+    "          ,1.73062820944868,-0.87569955964091,5.6\n",
+    "          ,1.79043930035357,1.38866637121248,5.45\n",
+    " 11    Lyn,1.78392787968267,0.992350579452676,5.85\n",
     "          ,1.75049811170216,-0.332940947365163,6.4\n",
     " 14    Mon,1.78144414190098,0.132165057607271,6.45\n",
+    "          ,1.77204621515947,0.670996679066031,5.29\n",
+    "          ,1.74714170929448,0.174329303453367,5.88\n",
     "          ,1.72861436800408,-0.65231195979607,6.44\n",
     "          ,1.70572370358369,-1.12454472588081,6.29\n",
+    "          ,1.74472509956095,0.0155334303427495,5.8\n",
+    "          ,1.72029049003303,-1.0492967944358,6.15\n",
+    "          ,1.78124275775652,-0.624265488343883,5.42\n",
+    "   Mu  Pic,1.78446490406789,-0.999128274714587,5.7\n",
     "          ,1.72787595947439,0.078496183108445,6.55\n",
+    "  5Xi 2CMa,1.72807734361885,-0.367134856293818,4.54\n",
+    "          ,1.76654171521088,-0.546002015802371,5.62\n",
+    "          ,1.74982683122062,-0.901831017052714,6.19\n",
     "          ,1.76875694079995,0.429191007475839,6.44\n",
+    "          ,1.77526836147085,-0.083581878623284,5.52\n",
+    " 51    Aur,1.78963376377572,0.687499736771,5.69\n",
+    " 52Psi3Aur,1.80265660511753,0.696430004777037,5.2\n",
+    " 24Gam Gem,1.78956663572757,0.286219452916637,1.93\n",
+    "          ,1.76459500181442,0.107080797746663,6.06\n",
+    "  6Nu 1CMa,1.75848634943244,-0.302640092295817,5.7\n",
+    "          ,1.75586835555445,-0.614704962552403,5.59\n",
+    " 53    Aur,1.76748150788503,0.505869139280123,5.79\n",
     "          ,1.78177978214175,0.189421553346307,6.38\n",
+    " 50Psi2Aur,1.76768289202949,0.741571006625146,4.79\n",
+    "          ,1.79057355644988,-0.221293204742448,5.97\n",
+    "  7Nu 2CMa,1.78292095896036,-0.327147423875904,3.95\n",
+    "          ,1.7863444894162,0.0471966118560133,6.17\n",
     "          ,1.79601092835032,-0.626767126938408,6.35\n",
+    "          ,1.8029922453583,0.0865198495308078,6.15\n",
     "          ,1.78278670286405,-0.373238660538987,6.35\n",
     "          ,1.81883446472255,0.76818727771806,6.41\n",
+    "          ,1.79782338565047,-0.890544554556484,4.39\n",
+    "          ,1.74808150196863,0.384510578624784,6.04\n",
+    "          ,1.78715002599404,-0.192248017107175,6.12\n",
+    " 54    Aur,1.78540469674205,0.49328337611852,6.03\n",
     "          ,1.78312234310482,0.429350995990605,6.38\n",
+    "          ,1.76412510547735,-0.025418781300573,6.14\n",
     "          ,1.80305937340645,0.0820401711173557,6.57\n",
     "          ,1.78775417842742,0.0281628267356529,6.21\n",
+    "  8Nu 3CMa,1.80393203803245,-0.310014108385493,4.43\n",
+    "          ,1.73479014843421,-0.660665299521587,6.04\n",
     "          ,1.79674933688001,-0.705864479011429,6.34\n",
+    "          ,1.75076662389477,-0.611030074849592,5.71\n",
+    "          ,1.79614518444663,-0.552576089318216,5.27\n",
+    "          ,1.78412926382713,-0.264005290048198,6.03\n",
+    "          ,1.8048718307066,0.226597066413786,5.97\n",
+    "          ,1.76338669694766,-0.241800823453381,4.82\n",
+    "   Nu  Pup,1.79359431861679,-0.747068793768928,3.17\n",
     "          ,1.80030712343215,0.62713073719924,6.46\n",
     " 25    Gem,1.77788635534884,0.492119823283857,6.42\n",
     "          ,1.78802269062004,0.111206562172905,6.51\n",
+    "          ,1.78970089182388,-0.389285993383713,6.05\n",
+    " 15    Mon,1.82413758052669,0.172710025758461,4.66\n",
     "          ,1.7789604041193,0.28619036409577,6.28\n",
+    "          ,1.77278462368916,0.192044395361109,6.11\n",
+    " 55Psi4Aur,1.76513202619965,0.777098153176853,5.02\n",
+    "          ,1.79829328198754,-0.515390879977114,5.71\n",
+    "          ,1.75694240432491,0.00864422793418303,5.79\n",
+    "          ,1.78708289794589,-0.83391346846608,4.93\n",
     "          ,1.77835625168591,0.930197465534433,6.27\n",
+    "          ,1.77694656267469,0.648336487610971,6.19\n",
     "          ,1.81735764766317,-0.660451981501899,6.58\n",
+    " 26    Gem,1.78668012965696,0.307968194651211,5.21\n",
     "          ,1.82930644023452,0.11074114103904,6.37\n",
+    "          ,1.7374081423122,-1.05534726917605,6.18\n",
+    "          ,1.82541301344161,-0.15416105431921,5.19\n",
+    " 12    Lyn,1.79043930035357,1.0374527962063,4.87\n",
     "          ,1.77969881264899,0.630233544758341,6.31\n",
+    " 27Eps Gem,1.83346837922004,0.438620633573419,2.98\n",
+    "          ,1.76714586764426,0.0529416539771613,6.19\n",
+    "          ,1.76862268470364,-0.692027896552563,6.12\n",
     "          ,1.81151750747381,-0.808528624123184,6.65\n",
+    " 13    Lyn,1.83796595844634,0.997790188954725,5.35\n",
+    " 30    Gem,1.83803308649449,0.230868274944361,4.49\n",
+    "          ,1.8103763306552,0.0686302246978659,5.9\n",
+    " 28    Gem,1.82386906833407,0.50563642871319,5.44\n",
+    "          ,1.81554519036302,-0.376132998215211,6.13\n",
     "          ,1.77607389804869,-0.656268039433923,6.29\n",
+    " 56Psi5Aur,1.83098464143836,0.760570854787829,5.25\n",
+    " 31Xi  Gem,1.79050642840172,0.225069903318291,3.36\n",
     "          ,1.79755487345785,0.972225963549819,6.33\n",
     "          ,1.79674933688001,0.972225963549819,6.28\n",
+    " 57Psi6Aur,1.8290379280419,0.851536445774411,5.22\n",
     "          ,1.78970089182388,-0.677304105057266,6.3\n",
     " 32    Gem,1.83991267184279,0.221545307856625,6.46\n",
+    " 42    Cam,1.86562271428563,1.17935291253025,5.14\n",
+    " 10    CMa,1.80091127586553,-0.539820641368224,5.2\n",
     "          ,1.83246145849774,-0.465280537897633,6.45\n",
+    " 16    Mon,1.8150081659778,0.149875301378202,5.93\n",
+    "          ,1.79842753808385,-0.393363276441844,6.05\n",
     "          ,1.77036801395563,-0.513369206926888,6.54\n",
+    "          ,1.84675973275446,-0.230451335178607,5.32\n",
+    "          ,1.80742269653644,0.317533568579502,6.2\n",
+    "          ,1.79775625760231,-0.527200941248943,5.92\n",
+    "          ,1.80916802578843,-0.507037540251597,5.8\n",
+    "          ,1.82386906833407,-0.17266154439035,5.66\n",
+    " 17    Mon,1.80245522097307,0.140275990492233,4.77\n",
+    " 11    CMa,1.84011405598725,-0.236913901547797,5.29\n",
     "          ,1.82292927565992,-1.2256477709394,6.51\n",
+    " 18    Mon,1.84514865959877,0.0421012200675521,4.47\n",
     "          ,1.77593964195238,-0.671253630317019,6.62\n",
+    "          ,1.82568152563422,-0.12220213646047,5.07\n",
+    " 12    CMa,1.77788635534884,-0.366247647257388,6.08\n",
     "          ,1.78775417842742,-0.632235825261324,6.21\n",
+    " 43    Cam,1.85870852532581,1.20232823287803,5.12\n",
+    "          ,1.8400469279391,0.569093691433618,5.71\n",
     "          ,1.80218670878045,-0.904061159985818,6.57\n",
+    "          ,1.8057444953326,-0.0118827833239947,5.75\n",
+    "          ,1.83924139136126,-0.900415361103875,5.8\n",
+    " 58Psi7Aur,1.85058603149922,0.729222802167286,5.02\n",
+    "          ,1.78956663572757,0.017487229477621,6.15\n",
+    "          ,1.80460331851398,-0.629545109331166,5.26\n",
+    " 33    Gem,1.85145869612522,0.282791820191192,5.85\n",
+    " 14    Lyn,1.80889951359582,1.03757399962657,5.33\n",
+    "          ,1.80661715995859,-0.0301602591018242,5.74\n",
+    "          ,1.85783586069981,-0.259273508520569,5.39\n",
+    "          ,1.84239640962448,-0.88547825158889,5.4\n",
     "          ,1.82722547074176,-0.930352605912389,6.46\n",
+    " 35    Gem,1.82319778785254,0.234106830334173,5.65\n",
+    "          ,1.80097840391369,-0.950506310636112,5.61\n",
+    "          ,1.83796595844634,1.34351082495394,4.55\n",
     "          ,1.84367184253939,-0.41755547912921,6.33\n",
+    " 36    Gem,1.83763031820557,0.379803037781211,5.27\n",
+    "          ,1.85595627535151,0.00943932237120266,5.77\n",
     "          ,1.80782546482536,-1.27202989581115,6.37\n",
     "          ,1.8122559160035,0.782595940320635,6.26\n",
+    "          ,1.79768912955416,0.411926792291528,5.65\n",
     "          ,1.84575281203216,-0.138908815911504,6.29\n",
+    "          ,1.81836456838548,-0.295241835522085,5.79\n",
+    "          ,1.83810021454264,-1.2141576866971,6.11\n",
     "          ,1.79701784907262,-0.465411437591532,7.04\n",
+    " 13Kap CMa,1.85239848879937,-0.54962842213707,3.96\n",
+    " 59    Aur,1.80406629412875,0.678394935839763,6.12\n",
+    " 34The Gem,1.86119226310749,0.592733206524519,3.6\n",
     " 60    Aur,1.82004276958932,0.670870627508943,6.3\n",
+    "          ,1.80661715995859,0.624629098604715,6.01\n",
     "          ,1.84608845227293,0.0530870980814942,6.38\n",
     "          ,1.83850298283157,-0.422752681790704,6.33\n",
+    "          ,1.82024415373378,-0.528728104344438,5.7\n",
     "          ,1.8621991838298,-0.777544181763474,6.55\n",
     " 61Psi8Aur,1.87857842757928,0.672039028480417,6.48\n",
+    "          ,1.85790298874796,-0.792122529154437,5.14\n",
+    "          ,1.85931267775919,-0.587002708813804,4.99\n",
+    "   Alp Pic,1.79554103201324,-1.04822050806374,3.27\n",
+    "          ,1.86401164112994,0.146263439453936,5.77\n",
     "          ,1.82843377560852,-0.08174928290869,6.3\n",
+    "   Tau Pup,1.86005108628888,-0.861935699234211,2.93\n",
+    "          ,1.85347253756982,-0.914164677100141,4.4\n",
     "          ,1.83226007435328,0.191923191940832,6.24\n",
     "          ,1.83118602558282,0.799821370410457,6.34\n",
+    "          ,1.83051474510128,0.76637407455071,6.13\n",
+    "          ,1.85011613516214,-0.624299425301561,5.96\n",
+    "   Zet Men,1.74895416659463,-1.38206320887577,5.64\n",
+    " 15    Lyn,1.84165800109479,1.01966498224639,4.35\n",
+    "          ,1.83722754991665,1.00466969508967,6.05\n",
+    "          ,1.79043930035357,-1.04284877247705,6.11\n",
     "          ,1.83736180601295,-0.832652952895195,6.42\n",
+    " 38    Gem,1.85837288508504,0.229995610318364,4.65\n",
+    "          ,1.82729259878991,-0.331040477735213,5.64\n",
+    "          ,1.83118602558282,-0.297869525673699,6.14\n",
     "          ,1.80218670878045,-0.43707407793068,6.4\n",
+    "   Psi9Aur,1.85850714118135,0.807636566949943,5.87\n",
+    " 37    Gem,1.83575073285727,0.442886993967183,5.73\n",
     "          ,1.81782754400025,-0.0723875307264648,6.41\n",
+    " 15    CMa,1.84622270836923,-0.345153403992312,4.83\n",
+    "          ,1.83944277550572,-0.0152376939972727,5.45\n",
+    "          ,1.89032583600617,0.815156027143952,5.86\n",
+    " 14The CMa,1.82172097079316,-0.208765619222577,4.07\n",
     "          ,1.85098879978814,-0.724234069388669,6.52\n",
+    "          ,1.84756526933231,-0.479272260734454,6.04\n",
     "          ,1.86293759235949,-0.00425181598333063,6.21\n",
     "          ,1.87629607394206,-0.409468786928303,6.21\n",
     "          ,1.86092375091488,-0.733460073740184,6.46\n",
+    " 16Omi1CMa,1.8170220074224,-0.415669553909694,3.87\n",
+    "          ,1.86582409843009,1.23583370637951,5.68\n",
+    "          ,1.8853583604428,-0.0208809252453877,6.04\n",
     "          ,1.82386906833407,-0.385223254736015,6.91\n",
     "          ,1.85723170826643,0.145293812091717,6.29\n",
+    " 16    Lyn,1.86931475693408,0.78704168177641,4.9\n",
+    "          ,1.82017702568562,0.587846284618935,5.89\n",
     "          ,1.86065523872226,-0.940906999750143,6.57\n",
+    " 17    CMa,1.81440401354441,-0.3420021150651,5.74\n",
+    "          ,1.84978049492137,0.173771767720091,5.92\n",
+    " 19Pi  CMa,1.86099087896303,-0.346685415224618,4.68\n",
     "          ,1.84226215352817,-0.726658137794217,6.32\n",
     "          ,1.85864139727765,-1.02379074667263,6.41\n",
+    " 18Mu  CMa,1.82400332443038,-0.243584937799864,5\n",
     "          ,1.8095036660292,-0.861989028739133,6.26\n",
+    "          ,1.87361095201591,-0.36754209978595,5.3\n",
+    " 20Iot CMa,1.8261514219713,-0.295760586160872,4.37\n",
     "          ,1.85400956195505,0.207825080681225,6.27\n",
     "          ,1.88435143972049,-0.527263967027487,6.36\n",
     "          ,1.8196400013004,-0.136504140053201,6.34\n",
+    " 62    Aur,1.83199156216066,0.664136565478331,6\n",
+    " 39    Gem,1.88750645798371,0.455201261467366,6.1\n",
+    "   Iot Vol,1.82957495242713,-1.20491713793515,5.4\n",
     "          ,1.83937564745756,-0.380423599293031,6.61\n",
     "          ,1.87649745808652,-0.604902029920368,6.29\n",
     " 40    Gem,1.86568984233378,0.452287531243897,6.4\n",
     "          ,1.8762289458939,0.133028025959646,6.27\n",
+    "          ,1.86501856185225,-0.407873749917453,5.46\n",
+    "          ,1.83662339748326,-0.825172277795674,4.95\n",
+    "          ,2.04807674916719,1.51878551508547,5.07\n",
+    "          ,1.90039504322921,0.0628706381662846,5.97\n",
     "          ,1.87643033003837,-0.461857753308999,6.23\n",
     "          ,1.84313481815417,-0.602007692244144,6.23\n",
     "          ,1.85521786682182,0.127704771741063,6.35\n",
     "          ,1.83407253165343,-0.468363952909489,6.37\n",
+    " 41    Gem,1.85380817781059,0.280629551173444,5.68\n",
+    "          ,1.87206700690838,-0.42910858915005,5.59\n",
     "          ,1.92395698813113,1.23450531689327,6.5\n",
+    " 21Eps CMa,1.8742151044493,-0.471723711719579,1.5\n",
+    "          ,1.8575673485072,-0.591462994680012,5.06\n",
     "          ,1.86005108628888,0.56573878076034,6.59\n",
     "          ,1.88267323851665,-0.506184268172844,6.42\n",
     "          ,1.85676181192935,-0.0808620738722595,6.3\n",
     "          ,1.88099503731281,-0.35598898976511,6.26\n",
+    "          ,1.86441440941887,-0.132523819731292,5.96\n",
     "          ,1.84347045839493,-0.346292716142919,6.31\n",
     "          ,1.87998811659051,-0.77199306511477,6.22\n",
     "          ,1.8853583604428,-0.153535644670579,6.49\n",
     "          ,1.85850714118135,-0.381887736609981,6.53\n",
     "          ,1.89254106159524,0.084090932988449,6.63\n",
+    " 42Ome Gem,1.87461787273822,0.422636326507238,5.18\n",
+    "          ,1.87555766541237,0.309892904965215,5.94\n",
+    "          ,1.86468292161148,0.267665633340575,5.74\n",
     "          ,1.91079989069302,0.0969966731795849,6.59\n",
     "          ,1.87703448247175,-0.947199881330945,6.27\n",
+    "          ,1.88629815311695,0.291019108359621,5.82\n",
+    "          ,1.90798051267057,-0.0114222103269407,6.17\n",
     "          ,1.88978881162094,-0.480149773497262,6.27\n",
     "          ,1.8724697751973,-0.970495178708258,6.45\n",
+    "          ,1.91267947604132,-0.0746613068908685,5.2\n",
+    "          ,1.84488014740616,-0.432575006969983,5.63\n",
     "          ,1.89945525055506,-0.567838023999544,6.4\n",
     "          ,1.86052098262596,1.04374082965029,6.44\n",
+    "          ,1.88649953726141,0.512031121167025,5.93\n",
+    "          ,1.90784625657426,0.920801776394531,6.12\n",
     "          ,1.86649537891163,0.833831050140291,6.38\n",
+    " 22Sig CMa,1.89482341523246,-0.454924917669133,3.47\n",
+    "          ,1.869717525223,0.159494004811415,5.97\n",
+    " 19    Mon,1.91489470163039,-0.0656389242854201,4.99\n",
+    "          ,1.89670300058076,0.191142641914246,5.13\n",
+    " 43Zet Gem,1.85877565337396,0.359019075272045,3.79\n",
+    "          ,1.91496182967855,0.219814523015064,5.98\n",
+    "          ,1.90173760419228,-0.883092968277831,5.14\n",
+    " 24Omi2CMa,1.84769952542861,-0.38688131752541,3.02\n",
     "          ,1.87716873856805,0.0259763170338489,6.57\n",
+    "          ,1.85703032412197,-0.0816183832147904,5.62\n",
     "          ,1.92261442716806,-0.172365808044873,6.45\n",
+    " 23Gam CMa,1.90677220780381,-0.250745635869852,4.12\n",
     "          ,1.86226631187795,-0.743437539297418,6.43\n",
+    " 44    Gem,1.87911545196451,0.395094061283405,6.02\n",
+    "          ,1.8743493605456,0.601682867077801,5.55\n",
+    "          ,1.8438060986357,-0.995884871187964,6.02\n",
+    "          ,1.89603172009922,-1.15338144363321,5.17\n",
+    "          ,1.90690646390011,0.160323036206112,5.78\n",
+    "          ,1.91328362847471,-0.383410051568665,6.09\n",
+    "          ,1.89307808598047,0.593576782329649,5.91\n",
+    "          ,1.85380817781059,-0.727152647748949,5.2\n",
+    "          ,1.92261442716806,-0.739879006878074,5.54\n",
     "          ,1.92462826861267,-0.73981598109953,6.79\n",
     "          ,1.89670300058076,0.491785301843891,6.48\n",
     "          ,1.92113761010868,-0.162994359589026,6.49\n",
     "          ,1.8918697811137,0.396252765981257,7.68\n",
+    "          ,1.917781207701,-0.845020549900299,4.93\n",
     "          ,1.8853583604428,0.590483671044171,6.28\n",
+    "          ,1.86662963500794,-1.02663660298074,5.5\n",
+    "          ,1.91623726259347,0.653538538409277,6.16\n",
+    "          ,1.87173136666761,0.0857005144097327,6.11\n",
+    "          ,1.8973742810623,-0.579837162607005,6.14\n",
+    "          ,1.91341788457101,-0.186852040836426,5.39\n",
     "          ,1.90697359194827,-0.202564852241186,6.48\n",
     "          ,1.8595811899518,-0.512157172724114,6.34\n",
     "          ,1.96732170723838,1.25343729114059,6.35\n",
+    "          ,1.92959574417604,0.130395487671221,5.75\n",
+    "          ,1.87461787273822,-0.964299259863678,5.17\n",
+    " 45    Gem,1.89703864082153,0.27804549425313,5.44\n",
+    "          ,1.86186354358903,-0.656544383232156,6.11\n",
+    "          ,1.92899159174266,-0.402114163385871,6.08\n",
     "          ,1.87656458613467,-0.866376592553174,6.46\n",
     "          ,1.86327323260025,-0.442305217549852,6.62\n",
+    "   The Men,1.8613265192038,-1.37147487808033,5.45\n",
+    "          ,1.89348085426939,-0.386760114105132,5.71\n",
+    "          ,1.87267115934176,-0.682540092813249,5.79\n",
     "          ,1.88522410434649,0.370829136543873,6.43\n",
+    " 25Del CMa,1.89905248226614,-0.446920643794015,1.84\n",
     "          ,1.89911961031429,-0.168472754185564,6.21\n",
     "          ,1.93369055511341,-0.418108166725675,6.65\n",
+    " 63    Aur,1.93335491487264,0.686273158157793,4.9\n",
+    " 46Tau Gem,1.8918697811137,0.527879680402496,4.41\n",
+    "          ,1.88099503731281,-0.873227009867252,5.96\n",
+    "          ,1.91643864673793,-0.275156004713717,6.03\n",
+    " 47    Gem,1.91160542727087,0.468737259443944,5.78\n",
+    " 20    Mon,1.894622031088,-0.0656728612430977,4.92\n",
+    "          ,1.93610716484694,-0.669231957266792,4.83\n",
+    "          ,1.92073484181976,0.897603441753439,5.47\n",
+    "          ,1.92946148807973,-0.432298663171751,5.69\n",
     "          ,1.88871476285048,-0.302198911846007,6.23\n",
+    " 48    Gem,1.92039920157899,0.421118859685365,5.85\n",
+    " 21    Mon,1.9122767077524,0.00526992471366066,5.45\n",
+    "          ,1.90227462857751,-0.462662544019641,5.46\n",
     "          ,1.97108087793498,1.41821091693929,6.31\n",
+    "          ,1.94946564642951,0.0986935210634682,6.09\n",
     "          ,1.95074107934443,0.475161040718645,6.43\n",
     "          ,1.87770576295328,-1.1722116070075,6.47\n",
+    "          ,1.89489054328061,0.0955519284098784,6.16\n",
+    " 22Del Mon,1.95027118300736,0.00860059470288317,4.15\n",
+    " 18    Lyn,1.97175215841652,1.04087073265812,5.2\n",
+    "          ,1.93644280508771,-0.333653623476394,5.84\n",
+    " 51    Gem,1.91925802476038,0.282025814575039,5\n",
+    " 26    CMa,1.90133483590336,-0.419882584798536,5.92\n",
+    "          ,1.94000059163985,-0.821487693819242,5.14\n",
+    "          ,1.89046009210247,-0.509257986911079,6.1\n",
+    "          ,1.96530786579377,0.824493538642121,5.58\n",
     "          ,1.92939436003158,0.431285402578232,6.89\n",
+    "          ,1.89898535421798,-0.187598653905335,5.78\n",
     "          ,1.91731131136392,-0.462963128501929,6.59\n",
+    " 52    Gem,1.94993554276659,0.434325184358789,5.82\n",
+    "          ,1.91945940890484,-0.618816182568212,5.96\n",
+    "          ,1.90616805537042,-0.689424447085005,5.31\n",
+    "          ,1.93744972581001,0.211461183289546,5.62\n",
+    "          ,1.9205334576753,0.0543039804210791,5.35\n",
+    "          ,1.9214061223013,-0.372220551808657,6.01\n",
+    "          ,1.90845040900765,-0.0366276736078254,5.75\n",
+    "          ,1.91449193334147,-0.140542638016843,5.9\n",
     "          ,1.95416460980027,-0.368152965024148,6.36\n",
+    "          ,1.9380538782434,-0.465018738509834,6.12\n",
+    "   Gam1Vol,1.92415837227559,-1.21305231150417,5.69\n",
+    "   Gam2Vol,1.92778328687589,-1.2130232226833,3.78\n",
+    "          ,1.95201651225935,0.909854683475077,5.92\n",
+    " 53    Gem,1.97470579253528,0.486903228075118,5.71\n",
+    "          ,1.93154245757249,-0.169006049234784,6.03\n",
+    "          ,1.93006564051311,-0.789596649875857,4.49\n",
     "          ,1.95255353664458,-0.539587930801291,6.6\n",
+    "          ,1.97376599986113,1.43835007725258,4.96\n",
     "          ,1.96611340237161,-0.517664656141518,6.33\n",
     " 24    Mon,1.92395698813113,0.0028167674872464,6.41\n",
+    " 27    CMa,1.91408916505255,-0.447633319905246,4.66\n",
+    "          ,1.90730923218903,-0.782203241238936,4.89\n",
+    "          ,1.95094246348889,0.139238489214659,5.82\n",
+    "          ,1.93281789048741,-0.756779611801552,5.1\n",
+    " 28Ome CMa,1.95906495731548,-0.440298088910058,3.85\n",
+    "          ,1.96228710362686,-0.470574703295349,5.58\n",
+    "          ,1.95396322565581,0.863327114498995,5.05\n",
+    "          ,1.95590993905226,-0.16434214162251,5.95\n",
+    " 64    Aur,1.91408916505255,0.713548775857015,5.78\n",
+    "          ,1.88764071408002,-1.09624130317764,6.02\n",
     "          ,1.96181720728978,-0.388500595220316,6.32\n",
+    "          ,1.92623934176836,-0.511619029538082,5.36\n",
     "          ,1.91664003088239,0.540281214365278,6.24\n",
+    "          ,1.92187601863837,-0.251574667264549,5.46\n",
+    "          ,1.97034246940529,-0.708152799586266,5.94\n",
     "          ,1.9306697929465,0.116597690306843,6.65\n",
+    "          ,1.95530578661888,-0.788021005412251,5.72\n",
+    "          ,1.94496806720322,-0.833016563156027,4.76\n",
+    " 54Lam Gem,1.918653872327,0.288682306416673,3.58\n",
+    "          ,1.95181512811489,-0.395918244541291,4.79\n",
     "          ,1.94933139033321,-0.0928515162060983,6.29\n",
+    "          ,1.94939851838136,-0.455860608073675,4.64\n",
+    "          ,1.92623934176836,-0.898849412913891,5.97\n",
     "          ,1.97920337176157,-0.507948989972083,6.32\n",
+    "          ,1.94510232329953,-0.657659454698708,5.8\n",
+    "          ,1.96886565234591,-0.617972606763081,5.03\n",
+    "          ,1.92321857960144,-0.789334850488058,5.66\n",
     " 47    Cam,1.95168087201858,1.04548615890228,6.35\n",
+    "   Pi  Pup,1.91831823208623,-0.644070127217207,2.7\n",
     "          ,1.97108087793498,-0.439866604733871,6.46\n",
     "          ,1.92838743930927,0.744479888711803,6.35\n",
+    "          ,1.94772031717752,0.789378483719358,5.77\n",
+    " 55Del Gem,1.9297971283205,0.383662154682842,3.53\n",
+    "          ,1.9455722196366,0.0478317177782668,5.89\n",
+    "          ,1.97940475590603,0.124664989960506,5.91\n",
     "          ,1.92912584783896,0.264291330120052,6.45\n",
+    " 29    CMa,1.96524073774561,-0.409124569214715,4.98\n",
+    " 30Tau CMa,1.96806011576807,-0.402225670532527,4.4\n",
     " 19    Lyn,1.99692517647413,0.964895580691443,6.53\n",
+    " 19    Lyn,1.99853624962981,0.964842251186521,5.45\n",
+    "          ,1.91818397598992,-0.326720787836527,6.09\n",
+    "          ,1.97987465224311,-0.443560884983926,5.28\n",
+    "          ,1.93583865265433,-0.615504905126234,4.66\n",
+    "          ,1.95322481712612,-0.272358629773715,5.7\n",
+    "          ,1.9167742869787,-0.733270996404551,5.85\n",
+    "          ,1.96242135972316,-0.61535461288509,5.11\n",
+    "          ,1.95624557929303,-0.677008368711789,5.25\n",
     "          ,1.94657914035891,0.680610534362433,6.4\n",
+    " 65    Aur,1.93207948195772,0.641592729306738,5.13\n",
     "          ,1.93389193925787,-0.563266230986681,6.3\n",
+    " 56    Gem,2.00048296302627,0.356808324886185,5.1\n",
+    "          ,1.99799922524459,-0.238062909972027,5.45\n",
     "          ,2.03424837124754,1.41191318722168,6.41\n",
     "          ,1.94691478059967,-0.124296531562863,6.55\n",
     "          ,1.99128642042922,-0.369108047975934,6.61\n",
+    "          ,1.99370303016275,-0.436967418920836,6.01\n",
+    "          ,1.93328778682449,0.00309311128547884,5.99\n",
+    "          ,1.92999851246496,-0.420774641971777,5.87\n",
+    "   Del Vol,1.96926842063483,-1.15266391938517,3.98\n",
+    "          ,2.01410995680146,0.905602867491747,5.8\n",
+    " 66    Aur,1.94872723789982,0.709864191880582,5.19\n",
     "          ,1.93127394537988,-0.122536657900435,6.43\n",
     "          ,1.95342620127058,-0.0178217509175865,6.23\n",
+    " 57    Gem,1.97121513403129,0.437214673898202,5.03\n",
     "          ,1.98504351195094,1.15770598166871,6.47\n",
+    " 58    Gem,1.97081236574237,0.40047064500691,6.02\n",
+    "          ,1.96268987191578,-0.0701137545620611,5.82\n",
+    "          ,1.94671339645521,-0.331321669670257,4.96\n",
+    "          ,1.94859298180352,-0.902131601535002,6.05\n",
     "          ,1.94899575009244,-0.90216553849268,6.6\n",
+    "          ,1.97181928646467,-0.906068288625612,5.39\n",
+    " 59    Gem,1.98215700588033,0.482375068293555,5.76\n",
     "          ,1.97450440839082,0.270826618541409,6.41\n",
+    " 21    Lyn,2.00350372519318,0.858900765590465,4.64\n",
+    "          ,1.93375768316156,-0.524927165084539,5.43\n",
+    "  1    CMi,2.01545251776453,0.203675075570927,5.3\n",
+    " 60Iot Gem,2.00021445083366,0.485167595096746,3.79\n",
+    "          ,1.97202067060913,-0.45667994319475,5.38\n",
+    "          ,1.97577984130573,-0.554975917039708,5.39\n",
     "          ,2.00585320687856,-0.519812380748833,6.6\n",
+    "          ,1.99115216433292,-0.27574262926786,5.33\n",
+    "          ,1.96040751827855,-0.368041457877493,6.19\n",
+    " 31Eta CMa,1.94496806720322,-0.500856165817451,2.45\n",
+    "  2Eps CMi,1.99390441430721,0.161898680669718,4.99\n",
     "          ,2.01122345073085,-0.596243257575752,6.31\n",
+    "          ,2.03424837124754,1.19494936865154,5.64\n",
     "          ,2.00538331054148,-0.331399239859234,6.24\n",
+    "          ,1.95282204883719,-0.213768896411628,5.78\n",
+    "          ,2.01014940196039,-0.0737401608967604,5.97\n",
+    "          ,1.99611963989628,-0.526934293724332,5.35\n",
     "          ,2.01343867631992,0.375871198827412,6.54\n",
     "          ,1.9834995668434,0.185150344815732,6.37\n",
+    " 61    Gem,2.02162829819466,0.35355522508594,5.93\n",
     "          ,1.95074107934443,-0.0604320253503037,6.76\n",
+    "          ,1.96839575600884,-0.349366434881154,6.05\n",
     "          ,2.00148988374857,0.192146206234142,6.41\n",
+    "          ,1.97564558520943,-0.432531373738684,5.78\n",
     "          ,2.00068434717073,-0.640710368407118,6.97\n",
     "          ,2.00081860326704,-0.640695823996685,6.84\n",
+    "          ,2.02404490792819,0.840967507526223,5.72\n",
+    "  3Bet CMi,1.96248848777132,0.144678098716708,2.9\n",
+    " 63    Gem,2.01001514586408,0.374285858090184,5.22\n",
     "          ,1.99940891425581,-0.52816087233754,6.31\n",
     "          ,1.8503175193066,-1.51800011692207,6.47\n",
+    " 22    Lyn,2.0343154992957,0.866948672696883,5.36\n",
     "          ,2.00068434717073,-0.388995105175047,6.56\n",
+    "  5Eta CMi,1.9575881402561,0.121159787046084,5.25\n",
+    " 62Rho Gem,1.96812724381622,0.554743206472776,4.18\n",
+    "          ,1.96114592680824,-0.281618571082907,5.63\n",
+    "  4Gam CMi,1.96792585967176,0.155780332014116,4.32\n",
+    "          ,2.02579023718019,-0.399922805547256,5.61\n",
+    "          ,2.00283244471165,-0.590953940314847,5.9\n",
+    " 64    Gem,1.98652032901032,0.490752648703128,5.05\n",
     "          ,2.01827189578698,0.263709553702721,6.22\n",
+    "          ,2.01981584089451,-0.18226570341313,5.79\n",
+    "          ,2.00800130441948,-0.368967452008412,5.95\n",
+    " 65    Gem,2.02451480426527,0.487228053241461,5.01\n",
+    "          ,1.97544420106497,-0.889797941487576,5.1\n",
+    "          ,2.02988504811756,-0.503425678327331,5.54\n",
+    "  6    CMi,2.0233064993985,0.209555865522786,4.54\n",
+    "          ,1.98423797537309,-0.00165321465258352,5.59\n",
+    "          ,1.9936359021146,-0.11255434420639,5.86\n",
+    "          ,1.98880268264754,-0.168831516309585,5.75\n",
+    "          ,1.98853417045492,-0.226907347169696,6.05\n",
     "          ,1.9853791521917,-0.631629808159937,6.58\n",
     "          ,2.02364213963927,-0.526245858297157,6.38\n",
     "          ,2.02391065183189,-0.526270098981212,7.13\n",
     "          ,2.04263937726675,0.67887005324725,6.54\n",
+    "          ,1.96571063408269,-0.533086579337613,5.77\n",
+    "          ,2.02813971886556,-0.400999091919319,4.85\n",
+    "          ,1.96678468285315,-0.649049163722202,5.43\n",
     "          ,2.03210027370663,-0.0833152310986738,6.24\n",
+    "          ,2.03283868223632,0.298208895250476,5.42\n",
+    "   Sig Pup,1.97765942665404,-0.745231349917523,3.25\n",
     "          ,2.04015563948506,0.399467080687013,6.54\n",
+    "  7Del1CMi,1.98014316443572,0.0334133589020692,5.25\n",
+    "          ,2.0205542494242,-0.506804829684665,4.65\n",
     "          ,2.0204199933279,-0.639842551917932,6.65\n",
+    "          ,1.98000890833941,-0.124252898331563,5.9\n",
+    "          ,2.03914871876276,-0.896207178351844,5.87\n",
     "          ,2.00249680447088,-0.625652055471856,6.68\n",
+    " 68    Gem,2.02558885303573,0.276227442948969,5.25\n",
+    "  8Del2CMi,1.99215908505522,0.0574261805274245,5.59\n",
     "          ,2.02364213963927,-1.1081095420912,6.39\n",
     "          ,2.02532034084311,-0.595370592949755,6.61\n",
+    " 66Alp Gem,2.02928089568418,0.556561257776936,2.88\n",
+    " 66Alp Gem,2.02928089568418,0.556556409640125,1.98\n",
+    "          ,2.00498054225256,-0.935506175342583,5.96\n",
     "          ,1.98779576192523,0.184452213114934,6.28\n",
+    "          ,2.05277571253795,0.97311317258625,5.92\n",
     "          ,2.00216116423011,-0.594085836694814,6.3\n",
+    "          ,1.99699230452228,0.540373328964689,5.33\n",
     "          ,2.00625597516748,-0.238441064643292,6.21\n",
     "          ,2.06049543807561,0.751034569680404,6.3\n",
+    "          ,2.00276531666349,-0.324413074714446,5.66\n",
+    "          ,1.98960821922538,-0.406472638379046,5.85\n",
+    "  9Del3CMi,2.00216116423011,0.0588418364762644,5.81\n",
+    "          ,2.04089404801475,-0.23520250925348,4.97\n",
+    "          ,2.03210027370663,0.805997896707792,5.65\n",
     "          ,2.0427065053149,0.0475602221168455,6.55\n",
+    " 69Ups Gem,2.05955564540146,0.469420846734308,4.06\n",
+    "          ,1.9852448960954,-0.378804321598125,4.45\n",
     "          ,1.99470995088506,-0.69710389579378,6.26\n",
     "          ,1.99444143869244,-0.748983807809311,6.52\n",
+    "          ,2.00592033492671,-0.393159654695778,5.83\n",
+    "          ,2.00659161540825,-0.393140262148534,5.87\n",
+    "          ,2.04505598700028,-0.622413500082044,5.54\n",
     "          ,2.01961445675005,-0.451749388057866,6.65\n",
+    "          ,1.99813348134089,-0.567871960957222,6.11\n",
+    "          ,2.06640270631313,0.851260101976179,5.92\n",
     "          ,2.01793625554621,0.698572881247541,6.38\n",
+    "          ,2.0278040786248,-0.471030428155592,5.77\n",
     "          ,2.05512519422332,-0.664868634136807,6.76\n",
+    "          ,2.03626221269215,0.102305382987734,5.91\n",
+    "   Eps Men,1.99269610944045,-1.37716659069656,5.53\n",
     "          ,2.01196185926054,-0.134191578794308,6.27\n",
+    "          ,1.99491133502952,-0.235745500576323,5.7\n",
+    "          ,2.0159224141016,-0.482244168599655,4.64\n",
     "          ,2.0001473227855,-0.381170212361939,6.34\n",
+    " 70    Gem,2.04243799312229,0.611713662139957,5.56\n",
     "          ,2.03397985905493,-0.881832452706946,6.28\n",
     "          ,2.01786912749806,0.42516705392263,6.27\n",
+    " 25    Mon,2.01645943848683,-0.067873915355335,5.13\n",
+    "          ,2.04472034675951,-0.319356468020474,5.74\n",
+    " 23    Lyn,2.07358540746557,0.996282418406474,6.06\n",
+    " 71Omi Gem,2.01605667019791,0.603607577391806,4.9\n",
+    "          ,2.01874179212406,0.422762378064326,6.17\n",
     "          ,2.04626429186704,-0.236647254023187,6.53\n",
     "          ,2.01659369458314,-0.38789942625574,6.37\n",
+    "          ,2.03861169437753,-0.898253092086126,4.94\n",
+    "          ,2.02673002985434,0.669236805403604,5.73\n",
+    "          ,2.07539786476572,0.558675045426574,6.17\n",
+    "          ,2.02370926768743,-0.576506492617782,4.53\n",
+    " 74    Gem,2.04116256020737,0.308482097153187,5.05\n",
+    "          ,2.02813971886556,0.840056057805737,5.56\n",
+    "          ,2.04861377355242,-0.823266960028914,5.72\n",
     "          ,1.99195770091076,-0.944441291485431,6.39\n",
     "          ,2.05418540154917,-0.606026797660542,6.6\n",
+    " 10Alp CMi,2.02706567009511,0.0911934534167037,0.38\n",
+    "          ,2.02256809086881,-0.429966709365614,4.7\n",
     "          ,2.0547224259344,-0.663040886559024,6.38\n",
+    " 24    Lyn,2.02075563356867,1.02468765198268,4.99\n",
     "          ,2.01229749950131,-0.302305570855851,6.72\n",
+    "          ,2.06459024901298,-0.439793882681705,4.5\n",
+    "          ,2.06526152949452,-0.439759945724027,4.62\n",
+    "          ,2.01652656653499,0.0912952642897367,6.02\n",
+    "          ,2.08566845613322,0.401750553125039,5.89\n",
     "          ,2.03089196883986,-0.663375407998989,6.59\n",
     "          ,2.07063177334681,0.240346382410052,6.24\n",
+    "          ,2.05734041981239,-0.619645213962909,5.8\n",
+    "          ,2.04216948092967,-0.649592155045045,6.19\n",
     "          ,2.03888020657015,-0.438722444446452,6.5\n",
+    "          ,2.02283660306143,-0.827266672898068,5.68\n",
+    "          ,2.05478955398255,-0.136382936632924,6.01\n",
+    "          ,2.03827605413676,-0.25719850596542,4.94\n",
+    "          ,2.02538746889127,-0.320078840405327,5.93\n",
+    "          ,2.03955148705168,-0.657843683897529,4.84\n",
+    "          ,2.07425668794711,0.593416793814883,6.02\n",
+    "          ,2.06156948684607,-0.660791351078675,5.73\n",
+    "          ,2.06693973069836,-0.658672715292227,5.76\n",
+    "          ,2.08103662081062,0.235280079442458,5.77\n",
+    "          ,2.05875010882362,0.0632633372479833,5.94\n",
+    "          ,2.02015148113528,0.247982197887528,5.56\n",
+    "          ,2.0806338525217,-0.635658609849957,6\n",
+    "          ,2.03022068835833,0.880237415696096,5.27\n",
+    " 26Alp Mon,2.03136186517694,-0.147460929246276,3.93\n",
+    "          ,2.00330234104872,-0.920253936934877,6.06\n",
     "          ,2.06539578559083,-0.454730992196689,6.76\n",
+    " 75Sig Gem,2.04532449919289,0.504114113754507,4.28\n",
     "          ,2.0778816025474,-0.529518350644646,6.56\n",
+    " 51    Cam,2.0871452731926,1.14241980630332,5.92\n",
+    "          ,2.04317640165198,-0.378086797350083,6.18\n",
     " 49    Cam,2.07009474896158,1.09660006530166,6.49\n",
     "          ,2.05002346256365,0.390944056173108,6.21\n",
     "          ,2.01444559704222,-1.2867342947592,7.16\n",
     "          ,2.01457985313853,-1.2867342947592,7.26\n",
+    "          ,2.03270442614001,-0.653911844943731,5.42\n",
+    "          ,2.02746843838403,0.00330642930516703,6.19\n",
+    " 76    Gem,2.03384560295862,0.450018603216305,5.31\n",
     "          ,2.04075979191845,-0.756910511495452,6.41\n",
+    " 77Kap Gem,2.06056256612377,0.425826400528939,3.57\n",
     "          ,2.08936049878167,-0.65399426326952,6.54\n",
     "          ,2.04337778579644,0.224439645532849,6.43\n",
+    "          ,2.08043246837724,-0.447657560589301,5.64\n",
     "          ,2.03451688344016,0.0419751685104636,6.47\n",
+    " 78Bet Gem,2.05431965764548,0.489147915418655,1.14\n",
     " 79    Gem,2.04143107239998,0.354587878226704,6.33\n",
     "          ,2.07271274283957,-0.427537792823255,6.55\n",
+    "  1    Pup,2.06371758438699,-0.481516948077991,4.59\n",
+    "          ,2.03632934074031,-0.627441017955151,5.6\n",
     "          ,2.02961653592494,-0.648142562138528,6.89\n",
+    "  3    Pup,2.08533281589246,-0.472029144338678,3.96\n",
     "          ,2.10016811453441,1.40089822038687,6.56\n",
+    "          ,2.0926497731412,-0.782372926027325,5.06\n",
+    "          ,2.08607122442215,0.654803902116972,5.18\n",
+    "          ,1.99531410331844,-1.3328352276959,6.18\n",
     "          ,2.07781447449925,-0.659700520296179,6.4\n",
+    "          ,2.07647191353618,-0.681832264838829,5.17\n",
+    " 81    Gem,2.04324352970013,0.32306044454415,4.88\n",
+    "          ,2.07022900505789,-0.407117440574922,5.62\n",
     "          ,2.02948227982864,-0.837884092514367,6.57\n",
     "          ,2.02954940787679,-1.00128084745871,6.43\n",
+    "          ,2.03747051755892,-0.627222851798651,5.8\n",
+    " 11    CMi,2.05505806617517,0.187942871618923,5.3\n",
     "  2    Pup,2.06747675508359,-0.232371197355801,6.89\n",
+    "  2    Pup,2.06801377946882,-0.232288779030012,6.07\n",
+    "          ,2.0704975172505,-0.629312398764233,5.88\n",
     "          ,2.08741378538522,-1.00827670887712,6.21\n",
+    " 80Pi  Gem,2.07835149888448,0.583211465827527,5.14\n",
+    "          ,2.03626221269215,-0.0912370866480036,5.49\n",
+    "  4    Pup,2.10533697424224,-0.234504377552683,5.04\n",
     "          ,2.03512103587354,-0.630277177989641,6.54\n",
+    "          ,2.04948643817842,-0.628866370177612,3.61\n",
+    "          ,2.07593488915095,-0.59039155644476,5.37\n",
     "          ,2.09358956581535,-0.197653689651547,6.39\n",
+    "          ,2.05324560887502,-0.737362823873115,6.03\n",
+    " 82    Gem,2.0871452731926,0.403888581458732,6.18\n",
+    "          ,2.04727121258935,-0.629472387278999,5.88\n",
+    "          ,2.05445391374179,-0.374901571465193,5.9\n",
+    "   Zet Vol,2.07754596230663,-1.24605842691411,3.95\n",
     "          ,2.07815011474002,-0.697089351383346,6.57\n",
     "          ,2.08936049878167,-0.244506083793972,6.34\n",
     "          ,2.09835565723426,-0.279000577204916,6.43\n",
+    "          ,2.06277779171284,0.944732179694097,6.02\n",
+    "  5    Pup,2.11379510830959,-0.206070055155608,5.48\n",
+    "          ,2.0490836698895,0.233365065402075,6.04\n",
+    "          ,2.07674042572879,-0.964774377271165,6.12\n",
     "          ,2.0454587552892,-0.674894581062152,6.31\n",
     "          ,2.12111206555834,0.0756212379794654,6.53\n",
+    "   Omi Pup,2.04901654184134,-0.419974699397947,4.5\n",
+    "          ,2.07123592578019,-0.65430454402543,5.08\n",
     "          ,2.08352035859231,-1.15066163888218,6.38\n",
+    "          ,2.07996257204017,-0.792229188164282,5.23\n",
+    "          ,2.04203522483337,-1.18994124332568,6.18\n",
     "          ,2.10862624860176,0.963586583752447,6.38\n",
+    "          ,2.05821308443839,0.58003593621626,6.03\n",
+    "          ,2.05344699301948,-0.68674827556528,6.14\n",
     "          ,2.08479579150723,-0.22072597273555,6.23\n",
+    "          ,2.04868090160057,-0.402957739191002,5.33\n",
+    "  6    Pup,2.10171205964194,-0.292720804380316,5.18\n",
+    "  7Xi  Pup,2.07016187700974,-0.403874037048299,3.34\n",
+    "          ,2.06928921238374,-0.818947270130228,4.71\n",
+    "          ,2.06499301730191,-0.153879862384167,5.61\n",
     "          ,2.10708230349423,-0.3454539884746,6.56\n",
+    "          ,2.06613419412052,-0.606618270351496,5.93\n",
+    "          ,2.11439926074298,0.0571983180973031,6.18\n",
+    "          ,2.05841446858285,-0.322473819990008,6.12\n",
+    "          ,2.09392520605612,-0.57091659087459,5.6\n",
+    "          ,2.13124840082954,0.337289726084715,5.99\n",
+    "          ,2.12487123625494,-0.189741530375839,6.16\n",
+    "          ,2.06559716973529,-0.796335560043279,4.11\n",
     "          ,2.06781239532436,-0.969161941085207,6.33\n",
     "          ,2.084258767122,-0.75482096452987,6.32\n",
+    "          ,2.06371758438699,-0.787880409444729,5.84\n",
+    " 13Zet CMi,2.11151275467237,0.0308389982553776,5.14\n",
     "          ,2.05512519422332,-0.409657864263936,6.45\n",
     "          ,2.06915495628743,0.0571983180973031,6.31\n",
+    "          ,2.05539370641594,-0.970218834910026,5.59\n",
     "  8    Pup,2.11003593761299,-0.195137506646588,6.36\n",
+    "  9    Pup,2.11728576681358,-0.211218776448992,5.17\n",
     " 25    Lyn,2.10755219983131,0.827043658604757,6.25\n",
+    " 26    Lyn,2.12554251673648,0.830161010574292,5.45\n",
+    " 83Phi Gem,2.10386015718286,0.467151918706716,4.97\n",
+    "          ,2.11272105953914,-0.363484209275064,5.63\n",
     "          ,2.10768645592761,-0.757826809352749,6.45\n",
+    "          ,2.06371758438699,-1.04224760351247,5.78\n",
+    "          ,2.08284907811077,-0.863768294948805,5.91\n",
+    "          ,2.12379718748448,-0.0797954837738185,5.76\n",
+    " 10    Pup,2.08486291955538,-0.229573822415799,5.69\n",
     "          ,2.08264769396631,-0.748823819294545,6.32\n",
+    "          ,2.11010306566114,1.29011344611653,5.41\n",
     "          ,2.11997088873973,-1.04630549402336,6.72\n",
     "          ,2.1129224436836,0.986188597565774,6.72\n",
+    "          ,2.10923040103515,-0.717533944315735,6.04\n",
+    "          ,2.08056672447355,-0.581102526314701,5.01\n",
+    "          ,2.07694180987325,-0.688081513188331,3.73\n",
+    "          ,2.10144354744933,-1.14849936986444,5.79\n",
+    "          ,2.17508301627386,1.38718284134828,5.42\n",
     "          ,2.12735497403663,0.618069569499303,6.23\n",
+    "          ,2.11144562662422,-0.648161954685772,4.49\n",
+    "          ,2.06855080385405,-0.621967471495424,5.43\n",
+    " 85    Gem,2.12614666916986,0.347039329211828,5.35\n",
+    "          ,2.11473490098374,0.154684653094809,5.86\n",
+    "          ,2.09936257795656,-0.93606855921267,5.7\n",
+    "          ,2.06881931604666,-0.844511495535134,4.63\n",
+    "          ,2.08828645001122,-0.835959382200362,4.24\n",
+    "          ,2.08298333420708,-0.595549974011765,5.49\n",
+    "          ,2.12178334603988,-0.578629976541042,6.15\n",
+    "          ,2.10902901689069,0.078292561362379,6.17\n",
     "          ,2.10795496812023,0.767552171795806,6.34\n",
+    "  1    Cnc,2.15668993107976,0.275592337026716,5.78\n",
     "          ,2.09097157193736,-0.507585379711251,6.44\n",
+    "          ,2.10265185231609,0.150820688056366,6.05\n",
     "          ,2.10305462060501,0.0196688910426139,6.35\n",
     "          ,2.10755219983131,-0.518619739093304,6.33\n",
     "          ,2.0732497672248,-0.897394971870562,6.38\n",
+    "          ,2.13500757152614,-0.73574354617821,6.02\n",
+    " 11    Pup,2.14608369947149,-0.368613538021202,4.2\n",
     "          ,2.09345530971904,0.125901264847335,6.41\n",
+    "          ,2.12795912647001,0.288304151745408,5.99\n",
+    "          ,2.13963940684874,-0.989548356375863,5.63\n",
+    "          ,2.12654943745878,1.03057329007135,5.77\n",
     "          ,2.10956604127592,-0.685279290111518,6.78\n",
     "          ,2.23643805228627,1.46708498413194,6.49\n",
+    " 53    Cam,2.15568301035746,1.05286017499196,6.01\n",
+    " 14    CMi,2.11332521197252,0.0388287277200627,5.29\n",
+    "          ,2.15467608963515,-0.725950309819797,6.09\n",
     "          ,2.1444726263158,1.10113307322003,6.4\n",
+    "          ,2.13514182762245,-0.517756770740929,4.79\n",
+    "          ,2.15467608963515,-0.741760083960779,5.35\n",
+    "          ,2.13715566906706,0.231120378058538,6.02\n",
+    "          ,2.10600825472377,-0.766029856837122,5.09\n",
+    "   Chi Car,2.13963940684874,-0.890428199273018,3.47\n",
     "          ,2.10815635226469,-0.804766469957774,6.22\n",
     "          ,2.15118543113116,0.999613088395697,6.49\n",
+    "          ,2.1019134437864,-1.03801033193957,5.74\n",
+    "          ,2.1508497908904,-0.77531403883037,5.17\n",
+    " 27    Mon,2.14923871773471,-0.0404964867830796,4.93\n",
+    " 12    Pup,2.09768437675272,-0.396005511003891,5.11\n",
+    "  2Ome1Cnc,2.16944426022895,0.443187578449471,5.83\n",
     "          ,2.15883802862068,0.345856383829921,6.25\n",
     "          ,2.14500965070103,-1.02753835642761,6.25\n",
     "          ,2.09969821819733,0.411601967125185,6.34\n",
+    "  3    Cnc,2.15789823594653,0.302092252836163,5.55\n",
+    "          ,2.10500133400147,-0.850935276809835,4.41\n",
     "          ,2.17273353458848,0.618074417636114,6.34\n",
+    "          ,2.15984494934298,-0.307192492761435,4.61\n",
     "  4Ome2Cnc,2.15756259570576,0.437898261188566,6.31\n",
     "          ,2.11439926074298,-0.882288177567189,6.44\n",
+    "  5    Cnc,2.13943802270428,0.287198776552478,5.99\n",
     "          ,2.1536020408647,-0.0195185988014699,6.51\n",
+    "          ,2.11728576681358,0.0851672193605122,5.65\n",
+    "          ,2.09244838899674,-0.781626312958416,5.99\n",
+    "          ,2.14427124217134,-1.04190338579888,5.6\n",
+    "          ,2.09808714504165,-1.09437477050537,6.14\n",
+    "          ,2.12816051061447,-0.675490901889917,5.24\n",
+    " 28    Mon,2.11661448633205,-0.0106028752058656,4.68\n",
     "          ,2.106545279109,-0.83816528444941,6.32\n",
     "          ,2.10802209616838,-0.838218613954332,6.34\n",
     "          ,2.16682626635096,0.15557671026805,6.22\n",
+    "          ,2.12446846796602,0.0407437417604454,4.39\n",
     "          ,2.12070929726942,-0.777422978343196,6.61\n",
+    "          ,2.15346778476839,-1.03280828114127,5.81\n",
+    "          ,2.11439926074298,-0.820629573603678,6.02\n",
+    "   Chi Gem,2.14923871773471,0.485099721181391,4.94\n",
     "          ,2.13802833369305,-0.09883411703099,6.33\n",
+    "          ,2.13319511422599,-0.822549435780872,6.12\n",
     "          ,2.14400272997873,-1.04357599299871,6.33\n",
+    "          ,2.14051207147474,-1.03695343811475,5.17\n",
+    "          ,2.1489702055421,-0.640821875553774,5.95\n",
     "          ,2.11144562662422,-0.644889462338283,6.34\n",
+    "          ,2.16138889445052,-0.939835561514891,5.87\n",
+    "          ,2.12950307157754,-0.933489350429167,6.1\n",
+    "          ,2.17253215044402,0.32885881617022,6.15\n",
+    "          ,2.12124632165465,-1.08965268525136,4.82\n",
+    "          ,2.11298957173175,-0.550408972163656,5.82\n",
     "          ,2.14104909585997,-0.951989840500307,6.28\n",
+    "          ,2.16326847979882,-0.710174472636493,5.52\n",
+    "  8    Cnc,2.12225324237695,0.228953260903978,5.12\n",
     "          ,2.16588647367681,0.480484294937228,6.21\n",
+    "   Zet Pup,2.154608961587,-0.698073523155999,2.25\n",
     "          ,2.14709062019379,-0.716481898627728,6.29\n",
     " 28    Lyn,2.13822971783751,0.755034282549558,6.26\n",
+    " 14    Pup,2.16756467488065,-0.318905591297042,6.13\n",
+    "  9Mu 1Cnc,2.14527816289365,0.395064972462539,5.99\n",
+    "          ,2.13359788251491,-0.546724388187224,5.31\n",
     "          ,2.11164701076868,-1.26981914542529,6.34\n",
     "          ,2.18280274181152,0.0100114025149119,6.41\n",
+    " 27    Lyn,2.16608785782127,0.898960920060546,4.84\n",
     "          ,2.15749546765761,-0.152803576012104,6.23\n",
+    "          ,2.14313006535273,1.01662035232902,5.93\n",
+    " 10Mu 2Cnc,2.18642765641182,0.376671141401243,5.3\n",
+    "          ,2.17649270528508,-0.566024820832194,6.14\n",
+    "          ,2.16877297974742,-0.862357487136776,5.95\n",
+    "          ,2.1435999616898,-0.785766621795091,6.19\n",
+    "          ,2.12158196189541,-0.923138578337479,5.53\n",
     "          ,2.16467816881004,0.740552897894816,6.27\n",
+    "          ,2.21227195495097,1.19509966089268,5.32\n",
+    "          ,2.1491044616384,-0.339384121187108,5.38\n",
     " 12    Cnc,2.18622627226736,0.23807745438246,6.27\n",
+    " 15Rho Pup,2.16870585169926,-0.41357031067049,2.81\n",
     "          ,2.16944426022895,-1.06751124443509,6.3\n",
+    "          ,2.17481450408124,-0.780748800195608,5.05\n",
+    " 29Zet Mon,2.17709685771846,-0.0177344844549868,4.34\n",
     "          ,2.20569340623191,-0.186056946399407,6.32\n",
     "          ,2.18770308932674,-0.342729335586764,6.36\n",
+    " 14Psi Cnc,2.17454599188863,0.445185010815642,5.73\n",
+    " 16    Pup,2.13581310810398,-0.327336501211537,4.4\n",
     "          ,2.17139097362541,0.675990259981459,6.58\n",
+    "          ,2.17192799801064,-0.274908749736351,5.68\n",
     "          ,2.17978197964461,-0.633879343640285,6.37\n",
     "          ,2.14266016901565,-0.517970088760617,6.65\n",
     "          ,2.24328511319794,1.43868944682936,6.32\n",
     "          ,2.21697091832172,0.255331973293148,6.23\n",
+    "          ,2.14735913238641,-0.602923990101441,6.2\n",
+    "          ,2.21851486342925,0.985277147845288,5.85\n",
+    "          ,2.16467816881004,0.171410725093088,6.07\n",
+    " 18    Pup,2.19146226002334,-0.212944713153742,5.54\n",
+    "          ,2.14655359580856,-0.825812231854739,5.7\n",
+    "          ,2.18186294913737,-0.765801994407001,5.21\n",
     "          ,2.19770516850163,-0.721858482351232,6.26\n",
+    "   Gam1Vel,2.17300204678109,-0.814268818107521,4.27\n",
+    "   Gam2Vel,2.17662696138139,-0.814428806622287,1.78\n",
+    " 16Zet1Cnc,2.16380550418405,0.30801182788251,5.63\n",
+    " 16Zet1Cnc,2.16380550418405,0.30801182788251,6.02\n",
+    " 16Zet2Cnc,2.16461104076189,0.30801182788251,6.2\n",
+    " 19    Pup,2.16427540052112,-0.193261277700694,4.72\n",
+    "          ,2.18669616860443,-0.108690379167947,5.36\n",
+    "          ,2.1916636441678,-0.803942286699888,5.23\n",
     "          ,2.17642557723693,0.244413969194561,6.54\n",
+    " 15    Cnc,2.16306709565436,0.517606478499785,5.64\n",
+    "          ,2.22052870487386,1.32220811180598,5.54\n",
     "          ,2.16219443102836,-1.08557540219323,6.28\n",
+    "          ,2.17877505892231,-0.975891154979007,5.66\n",
     "          ,2.14453975436396,-0.64067158331263,6.44\n",
+    "          ,2.13460480323722,-1.05937122272926,4.76\n",
     "          ,2.22764427797815,1.0538394986278,6.45\n",
+    "          ,2.22704012554476,0.28822658155643,6.01\n",
+    "   Eps Vol,2.19985326604254,-1.17605133136189,4.35\n",
     "          ,2.20710309524314,0.403830403816999,6.56\n",
+    "          ,2.1712567175291,-0.669881607599479,4.45\n",
+    "          ,2.17716398576662,-0.715808007610985,4.75\n",
+    "          ,2.15729408351314,-0.829695589440426,5.82\n",
     "          ,2.1703840529031,0.308501489700431,6.47\n",
+    " 20    Pup,2.17796952234446,-0.248040375529261,4.99\n",
     "          ,2.20851278425436,-0.490248442474774,6.52\n",
     "          ,2.18367540643752,0.227736378564393,6.38\n",
+    "          ,2.14675497995303,-0.791608626652462,5.76\n",
     "          ,2.21589686955126,-0.629637223930577,6.43\n",
+    "          ,2.18824011371197,-0.79824087781004,6.03\n",
+    " 29    Lyn,2.23623666814181,1.03971202796027,5.64\n",
+    "          ,2.23576677180474,1.26374443000098,5.98\n",
+    "          ,2.19085810758996,-0.595162123066877,4.78\n",
     "          ,2.20629755866529,-0.566024820832194,6.37\n",
+    "          ,2.1702497968068,-0.55604735527496,6.06\n",
+    "          ,2.22952386332645,-0.622689843880277,5.08\n",
+    "          ,2.23006088771168,-0.622365018713934,6.11\n",
+    "          ,2.17320343092555,-0.602303428589621,5.78\n",
+    "          ,2.15937505300591,-0.692056985373429,4.44\n",
+    "          ,2.19971900994624,-0.78553875936497,5.13\n",
+    "          ,2.20052454652408,1.09095683405354,5.71\n",
     "          ,2.19414738194949,0.944984282808274,6.27\n",
+    "          ,2.19689963192379,-0.869241841408531,5.51\n",
     "          ,2.20972108912113,0.204664095480391,7.13\n",
+    " 17Bet Cnc,2.20569340623191,0.160318188069301,3.52\n",
+    "          ,2.18756883323043,-0.770834360416918,5.83\n",
     "          ,2.23032939990429,-0.507439935606918,6.21\n",
     "          ,2.21113077813235,0.154742830736542,6.29\n",
+    "          ,2.23892179006796,-0.595108793561955,6.16\n",
+    " 30    Lyn,2.21670240612911,1.00781128774326,5.89\n",
     "          ,2.2369750766715,-0.360929241175616,6.6\n",
     "          ,2.19112661978257,-0.864820340636813,6.44\n",
+    " 21    Pup,2.19958475384993,-0.274278491950909,6.16\n",
     "          ,2.22073008901832,0.93505045048234,6.49\n",
+    "          ,2.20502212575037,-0.198409998994078,5.98\n",
+    "          ,2.18119166865584,-1.0661198291703,5.16\n",
     "          ,2.24684289975008,-0.523540597956566,6.45\n",
+    " 18Chi Cnc,2.18689755274889,0.475039837298368,5.14\n",
     "          ,2.24959514972438,1.05821251803141,6.41\n",
+    "          ,2.20985534521744,0.362117034694335,5.83\n",
     "          ,2.19757091240532,-0.171638587523209,6.32\n",
+    "          ,2.1962954794904,-0.602982167743174,5.58\n",
     "          ,2.18985118686765,-0.639241382953356,6.7\n",
+    " 19Lam Cnc,2.22475777190754,0.419266871423527,5.98\n",
+    "          ,2.24429203392025,0.0689017203592873,6.05\n",
+    "          ,2.21764219880326,-0.616809053928418,4.45\n",
+    "          ,2.19924911360916,0.0158727999195262,6.18\n",
+    "          ,2.20461935746145,-0.0815214204785685,6.13\n",
     "          ,2.21676953417726,-0.583109654954494,6.43\n",
     "          ,2.2434864973424,-1.02683052845319,6.42\n",
+    " 31    Lyn,2.25765051550282,0.753773766978673,4.25\n",
+    "          ,2.2184477353811,-0.367832987994616,6.13\n",
+    "          ,2.25986574109189,0.928859379774571,5.51\n",
     "          ,2.21314461957696,-0.00694253191348855,6.5\n",
+    "          ,2.21448718054004,-0.347684131407704,5.58\n",
+    "          ,2.19830932093501,-1.12375932771742,5.07\n",
+    "          ,2.25932871670666,-0.286471556030814,5.75\n",
+    "          ,2.21690379027357,-0.575008418343154,4.83\n",
+    "          ,2.21421866834742,-0.619863380119408,5.2\n",
+    " 20    Cnc,2.22401936337785,0.319957636985049,5.95\n",
+    "          ,2.23093355233768,-0.101592706876503,6.15\n",
+    "          ,2.21851486342925,-0.66984282250499,6.16\n",
+    "          ,2.25657646673236,0.733125552300218,6.02\n",
+    "          ,2.2628865032588,-0.112690092037101,5.96\n",
+    " 22    Pup,2.25322006432468,-0.225937719807477,6.11\n",
+    " 21    Cnc,2.26886089954447,0.185562436444675,6.08\n",
+    "          ,2.2573820033102,-0.447710890094223,5.9\n",
+    "          ,2.2100567293619,0.61106401180727,6.06\n",
+    "          ,2.20213561967977,-0.977854650387501,5.97\n",
+    "          ,2.23281313768598,-0.829201079485695,4.82\n",
+    "          ,2.2479840765687,-0.0573001289703361,6.01\n",
     "          ,2.21784358294772,-0.658236382979228,6.32\n",
+    "  1    Hya,2.24610449122039,-0.039250515622628,5.61\n",
+    "          ,2.19636260753856,-1.11515873301453,6.12\n",
+    " 25    Cnc,2.27047197270016,0.297510763549678,6.14\n",
+    "          ,2.26449757641449,-0.905408942019303,5.85\n",
+    "   Kap1Vol,2.24308372905348,-1.2301953232682,5.37\n",
+    "   Kap2Vol,2.18260135766706,-1.23036500805659,5.65\n",
+    "          ,2.28295778965674,1.17456295336088,5.88\n",
+    " 22Phi1Cnc,2.24503044244994,0.486835354159763,5.57\n",
+    "          ,2.25113909483192,0.0366906993863697,5.73\n",
+    "          ,2.27705052141922,0.132024461639749,5.13\n",
+    "   Eps Car,2.23173908891552,-1.02084792762829,1.86\n",
+    "          ,2.27308996657815,-0.39874470830216,5.68\n",
     "          ,2.26161107034388,0.796796133040333,6.32\n",
     " 23Phi2Cnc,2.27067335684462,0.47009473775105,6.32\n",
     " 23Phi2Cnc,2.27094186903724,0.470109282161484,6.3\n",
     " 24    Cnc,2.26127543010311,0.428201987566376,7.02\n",
     " 24    Cnc,2.26167819839204,0.42822138011362,7.81\n",
+    "          ,2.25664359478051,-0.0365404071452257,3.9\n",
+    "          ,2.20844565620621,-0.418074229767997,5.28\n",
+    "          ,2.22912109503753,-0.365719200344978,6.01\n",
     "          ,2.2563750825879,-0.289036220403883,6.44\n",
+    "   Alp Cha,2.21535984516603,-1.31039805053415,4.07\n",
+    " 27    Cnc,2.26677993005171,0.22086172056626,5.5\n",
+    "          ,2.27812457018968,-0.22811938137247,5.98\n",
+    "  2    Hya,2.2443591619684,-0.0351247511963859,5.59\n",
+    "          ,2.27590934460061,-0.719608946870884,5.98\n",
+    "  1Omi UMa,2.24664151560562,1.05972998485328,3.36\n",
+    "          ,2.26409480812557,-0.200111695014772,5.54\n",
     "          ,2.23529687546766,-0.0975687533232941,6.59\n",
+    "          ,2.27315709462631,-0.730362114317894,5.47\n",
     "          ,2.2314705767229,-0.679640907000214,6.53\n",
     "          ,2.23227611330075,-0.679626362589781,7.25\n",
+    " 28    Cnc,2.26597439347387,0.42140489975722,6.1\n",
+    "          ,2.24509757049809,-0.877410951935227,5.17\n",
     "          ,2.27604360069691,-0.502388177049757,6.73\n",
     "          ,2.30571419798082,1.20986223748247,6.31\n",
+    " 29    Cnc,2.2666456739554,0.248025831118828,5.95\n",
+    "   Eta Vol,2.1962954794904,-1.26710903694788,5.29\n",
     "          ,2.25691210697313,-0.334337210766758,6.56\n",
     "          ,2.2342228266972,-0.529305032624958,6.33\n",
     "          ,2.25577093015452,-0.025879354297627,6.39\n",
     "          ,2.24301660100533,-0.125382514208548,6.43\n",
     "          ,2.28403183842719,-0.451473044259633,6.62\n",
+    "   The Cha,2.23335016207121,-1.33544837343708,4.35\n",
+    "          ,2.24167404004226,-0.893477677327197,6.05\n",
+    "          ,2.28490450305319,-0.144018752110399,6\n",
+    "          ,2.29181869201302,-0.608877502105466,5.75\n",
     "          ,2.2647660886071,-0.400174908661433,6.51\n",
     "          ,2.28812664936457,-0.332480374368109,6.67\n",
+    "          ,2.27275432633739,-1.10652420135397,5.97\n",
+    "   Bet Vol,2.26281937521065,-1.14952717486839,3.77\n",
+    "          ,2.2563750825879,0.65041149016612,6.18\n",
     "          ,2.248990997291,-0.959727466850815,6.53\n",
+    "          ,2.26120830205496,-0.923477947914255,5.09\n",
     "          ,2.27899723481567,0.927026784059977,6.24\n",
     "          ,2.31685745397432,1.30417304286871,6.31\n",
     "          ,2.25798615574359,-0.465435678275588,6.7\n",
+    "  2    UMa,2.29134879567594,1.13699474121171,5.47\n",
+    " 30Ups1Cnc,2.27060622879647,0.420294676427479,5.75\n",
+    "          ,2.23113493648214,-0.765142647800692,5.79\n",
+    " 31The Cnc,2.27758754580445,0.315807631874752,5.35\n",
+    "          ,2.22724150968923,-0.804087730804221,5.33\n",
+    "          ,2.25798615574359,-0.755291233800546,4.99\n",
+    "          ,2.30786229552173,0.6635111558297,5.9\n",
     "          ,2.30296194800652,0.171294369809621,6.83\n",
+    "          ,2.26369203983665,-0.555722530108617,5.65\n",
+    "          ,2.28215225307889,-0.797057932428133,5.99\n",
     "          ,2.26503460079972,-0.615732767556355,6.69\n",
     " 32    Lyn,2.26765259467771,0.635934953648189,6.24\n",
+    " 33Eta Cnc,2.29108028348333,0.356764691654885,5.33\n",
+    "          ,2.2711432531817,-0.321533281448655,5.42\n",
     "          ,2.26966643612232,-0.956595570470848,6.36\n",
     " 32Ups2Cnc,2.23851902177903,0.420357702206023,6.36\n",
+    "          ,2.23489410717874,-1.2201015024275,5.53\n",
     "          ,2.27792318604521,-0.755077915780858,6.3\n",
     " 34    Cnc,2.28758962497934,0.175686781760474,6.46\n",
     "          ,2.26268511911434,-0.679558488674425,6.31\n",
     "          ,2.27872872262306,-0.261285485297173,6.38\n",
     "          ,2.24415777782394,-0.805178561586717,6.39\n",
     "          ,2.2989342651173,0.231382177446337,6.28\n",
+    " 33    Lyn,2.30155225899529,0.635639217302713,5.78\n",
+    "          ,2.29678616757638,0.0830194947531969,5.87\n",
+    "          ,2.32175780148953,1.28508108010661,6.15\n",
+    "          ,2.26060414962158,0.147514258751199,6.03\n",
+    "          ,2.24482905830548,-0.408295537820018,6.19\n",
     "          ,2.2693979239297,-0.935598289941994,6.34\n",
+    "          ,2.24489618635363,-0.0322595023410285,5.81\n",
     "          ,2.30316333215098,-0.532310877447837,6.38\n",
     "          ,2.31269551498879,-0.582348497475152,6.36\n",
+    "          ,2.24046573517549,-0.921320527033318,5.69\n",
     " 35    Cnc,2.27315709462631,0.341910000465689,6.58\n",
     "          ,2.26510172884787,-0.656748004978222,6.49\n",
+    "          ,2.28980485056841,-0.648409209663138,5.96\n",
     "          ,2.27919861896013,-0.785902369625802,6.24\n",
+    "  3Pi 1UMa,2.28027266773059,1.13482762405715,5.64\n",
     "          ,2.28054117992321,0.0478850472831889,6.33\n",
+    "          ,2.22569756458169,-1.38030818335015,5.69\n",
     "          ,2.26181245448834,0.267272934258876,6.32\n",
+    "          ,2.3155820210594,0.115540796482025,5.99\n",
     "          ,2.31598478934832,0.115584429713324,7.25\n",
     "          ,2.28530727134211,-0.548057625810275,6.43\n",
+    "  3    Hya,2.28497163110135,-0.10503003587557,5.72\n",
     "          ,2.28208512503074,-0.635101074116681,6.3\n",
+    "          ,2.29000623471287,0.932030061249027,5.66\n",
     "          ,2.27825882628598,1.04614065737178,6.48\n",
+    "          ,2.28577716767919,-0.439061814023229,5.96\n",
+    "  4Pi 2UMa,2.28611280791996,1.12273152271346,4.6\n",
     "          ,2.26402768007741,-0.663748714533444,6.47\n",
     "          ,2.26456470446264,0.923715506617999,6.42\n",
+    " 36    Cnc,2.26362491178849,0.168521235553675,5.88\n",
+    "          ,2.30128374680268,-0.838732516456309,5.01\n",
+    "          ,2.28819377741272,0.919992137547078,5.91\n",
+    "          ,2.28571003963104,0.572501931611818,5.94\n",
+    "  4Del Hya,2.30873496014773,0.099546793142221,4.16\n",
+    "          ,2.29222146030194,-0.0535185822576817,6.19\n",
     " 37    Cnc,2.26718269834063,0.167110427741646,6.53\n",
+    "          ,2.31705883811878,-0.85573493225282,5.8\n",
+    "          ,2.27342560681892,-1.01213097764194,4.86\n",
+    "          ,2.26778685077402,-1.00836397533972,5.26\n",
     "          ,2.28745536888303,-0.0931569488251973,6.51\n",
+    "          ,2.2906775151944,-1.26786534629041,6.12\n",
+    "  5Sig Hya,2.32115364905615,0.0583182377006661,4.44\n",
     "          ,2.29571211880593,-0.562941405820338,6.48\n",
+    "   Eta Pyx,2.32591974047506,-0.44933501592594,5.27\n",
     "          ,2.28255502136782,-0.69555734015104,6.55\n",
+    " 34    Lyn,2.27476816778199,0.799952270104357,5.37\n",
+    "          ,2.29349689321686,0.557492100044667,6.1\n",
     "          ,2.29759170415423,0.139926924641834,6.45\n",
     "          ,2.31430658814448,-0.318750450919087,6.33\n",
+    "          ,2.30779516747358,-0.715774070653308,4.14\n",
     " 39    Cnc,2.27752041775629,0.349201598229577,6.39\n",
     "          ,2.29859862487653,0.343306263867285,6.44\n",
     " 41Eps Cnc,2.30517717359559,0.341124602302292,6.3\n",
+    "          ,2.27530519216722,-0.372419325417912,5.05\n",
+    "  6    Hya,2.27094186903724,-0.201144348155535,4.98\n",
+    "          ,2.28107820430844,-1.06720581181599,5.47\n",
+    "   Zet Pyx,2.32162354539323,-0.496352246719943,4.89\n",
+    "          ,2.29423530174655,-0.617725351785715,6.13\n",
     "          ,2.32048236857461,-0.923444010956578,6.47\n",
     "          ,2.2822865091752,0.818578811732585,6.22\n",
     "          ,2.27543944826353,-0.156173031095815,6.63\n",
+    "   Bet Pyx,2.27725190556368,-0.6054838063377,3.97\n",
+    "          ,2.29483945417993,-0.69352112269038,5.2\n",
+    "          ,2.29651765538377,-0.917349902985031,5.48\n",
+    "  9    Hya,2.33142424042366,-0.24533511518867,4.88\n",
+    "          ,2.34189621593562,-0.924064572468398,5.19\n",
     "          ,2.2822865091752,-1.04166097895833,6.36\n",
+    "          ,2.31632042958909,-0.782057797134604,5.71\n",
+    "          ,2.31940831980416,-0.791526208326673,3.84\n",
     "          ,2.29081177129071,-0.175124397890387,6.45\n",
+    "          ,2.29255710054271,-0.891480244961026,3.62\n",
+    "          ,2.29228858835009,-0.924757856032384,5.61\n",
+    " 43Gam Cnc,2.30497578945113,0.374697949719127,4.66\n",
+    " 45    Cnc,2.29853149682838,0.221322293563314,5.64\n",
     "          ,2.2999411858396,0.644341622878629,6.33\n",
+    "          ,2.29087889933886,-0.814773024335875,4.77\n",
+    "          ,2.2804069238269,-0.821657378607631,5.9\n",
+    "  7Eta Hya,2.30014256998407,0.0593169538837517,4.3\n",
     "          ,2.32746368558259,-0.985320781076588,6.34\n",
+    "          ,2.34968306952144,-0.778227769053838,5.23\n",
+    "          ,2.31860278322631,-1.01646036381425,4.33\n",
     "          ,2.36216888647802,0.0756551749371431,6.37\n",
+    "          ,2.33625745989072,-0.118095764581472,4.62\n",
+    "   The Vol,2.27154602147062,-1.21497702181817,5.2\n",
+    " 47Del Cnc,2.34156057569485,0.316849981289137,3.94\n",
+    "          ,2.29913564926176,-0.836027256115717,5.51\n",
     "          ,2.35418064874774,-0.594400965587536,6.42\n",
+    " 46    Cnc,2.31947544785231,0.53577729526777,6.13\n",
+    " 49    Cnc,2.34679656345084,0.175958277421895,5.66\n",
+    "          ,2.30302907605467,-0.923279174305,5.52\n",
+    "          ,2.31188997841095,-0.923036767464446,4.86\n",
+    "   Alp Pyx,2.32967891117166,-0.572705553357884,3.68\n",
+    " 10    Hya,2.29248997249455,0.0991443977869001,6.13\n",
+    "          ,2.3701571242083,1.16427520704774,6.2\n",
     "          ,2.30571419798082,-0.946419331304359,6.29\n",
     "          ,2.31866991127447,-0.0244200651174873,6.41\n",
+    "          ,2.36049068527418,-0.363590868284908,6.11\n",
     " 48Iot Cnc,2.34881040489545,0.50204880747298,6.57\n",
+    " 48Iot Cnc,2.35122701462898,0.501956692873569,4.02\n",
+    "          ,2.33612320379441,-0.840851152242757,5.16\n",
+    "          ,2.31860278322631,-0.721708190110089,4.07\n",
+    "          ,2.29846436878022,-0.0340533129611338,5.7\n",
+    "          ,2.35606023409604,-0.643202310728021,5.76\n",
     "          ,2.30437163701774,-0.191874710572721,6.25\n",
+    " 50    Cnc,2.37029138030461,0.211359372416513,5.87\n",
+    " 11Eps Hya,2.35767130725172,0.112030745430792,3.38\n",
+    "          ,2.35693289872204,-0.429569162147104,6.1\n",
+    " 12    Hya,2.32531558804168,-0.217332276967783,4.32\n",
+    "   Del Vel,2.34303739275423,-0.930115047208645,1.96\n",
+    "          ,2.31960970394862,-0.00179381062010528,5.29\n",
+    "          ,2.29739032000977,-0.802124235395727,3.91\n",
     "          ,2.32706091729367,-0.71339363547906,6.21\n",
     "          ,2.29786021634684,-0.999637329079752,6.21\n",
     "          ,2.36116196575571,-0.582542422947596,6.37\n",
     "          ,2.35491905727743,-1.18312961110609,6.32\n",
+    " 13Rho Hya,2.3387411976724,0.10188844322198,4.36\n",
+    "          ,2.31041316135157,-0.094970151992547,6.09\n",
+    "          ,2.33619033184256,-0.769467185836189,5.46\n",
+    "          ,2.32665814900475,-1.12005535119374,6.05\n",
+    "          ,2.3248456917046,-0.800136499303178,5.75\n",
     "          ,2.35384500850697,-0.702718038221028,6.36\n",
+    "          ,2.35216680730313,-0.963950194013279,4.49\n",
     "          ,2.35579172190342,0.580937689663124,6.25\n",
+    " 14    Hya,2.33733150866118,-0.0446270993461328,5.31\n",
     "          ,2.31564914910755,-0.724941897363089,6.43\n",
+    "   Eta Cha,2.29947128950253,-1.3445434780947,5.47\n",
     "          ,2.30410312482513,-0.892726216121477,6.3\n",
+    "          ,2.37311075832706,0.328684283245021,6.16\n",
+    "  5    UMa,2.35599310604788,1.08144478963018,5.73\n",
     "          ,2.33357233796457,1.0307235823125,6.25\n",
     "          ,2.36847892300446,-0.365670718976867,6.47\n",
+    " 35    Lyn,2.39318204472499,0.763174304255387,5.15\n",
+    "          ,2.3368616123241,0.790852317309931,5.99\n",
     " 54    Cnc,2.31893842346708,0.267917736454752,6.38\n",
+    "          ,2.33471351478318,0.733081919068918,5.99\n",
+    "          ,2.37733982536074,-0.544882096199008,5.21\n",
+    "          ,2.31551489301125,-0.49806363901426,5.87\n",
+    "          ,2.36082632551495,-0.692536950917728,5.48\n",
+    "          ,2.34156057569485,-0.477905086153725,6.17\n",
     "          ,2.3785481302275,-0.67820585850413,6.39\n",
+    "   Gam Pyx,2.3553889536145,-0.458847060349309,4.01\n",
+    " 51Sig1Cnc,2.36774051447477,0.566781130174725,5.66\n",
+    "          ,2.37223809370106,-0.780021579673943,4.93\n",
     " 53    Cnc,2.35968514869633,0.493215502203164,6.23\n",
+    " 55Rho1Cnc,2.36935158763046,0.494466321500427,5.95\n",
+    " 15    Hya,2.36324293524848,-0.119079936354124,5.54\n",
+    "          ,2.29866575292469,-1.37759322673594,6.05\n",
+    "          ,2.34075503911701,-0.731467489510823,6\n",
     "          ,2.35377788045881,0.0932005820564972,6.33\n",
+    "          ,2.35753705115542,-0.793615755292255,5.1\n",
+    "          ,2.40043187392559,0.620260927337918,6.14\n",
+    "          ,2.36250452671879,-0.222815519701132,6.13\n",
     "          ,2.3543820328922,-0.724234069388669,6.55\n",
+    "  6    UMa,2.38908723378762,1.12755057070369,5.58\n",
+    " 57    Cnc,2.3497501975696,0.533711988986244,5.39\n",
     "          ,2.35632874628865,-0.549618725863448,6.5\n",
     "          ,2.37311075832706,-0.618796790020967,6.42\n",
+    "          ,2.38573083137994,-0.65058602309132,5.82\n",
+    "          ,2.36606231327093,-0.983779073570659,5.59\n",
+    "          ,2.35928238040741,-1.13807587572058,5.35\n",
+    "          ,2.35404639265143,-0.0796839766271633,6\n",
+    "          ,2.37311075832706,-0.831489400060532,5.91\n",
+    " 58Rho2Cnc,2.3876775447764,0.487426826850716,5.22\n",
     "          ,2.36512252059678,0.300744470802678,6.64\n",
     "          ,2.37606439244582,-0.905316827419892,6.39\n",
+    "          ,2.36485400840416,-1.37000589262657,5.79\n",
+    "          ,2.37572875220505,-1.24702320613952,6.11\n",
+    "          ,2.40586924582603,0.79642767464269,5.74\n",
+    "          ,2.37968930704611,0.701651448122587,5.89\n",
+    " 16Zet Hya,2.36606231327093,0.103769520304685,3.11\n",
     "          ,2.39371906911022,-0.690321352395057,6.47\n",
+    "          ,2.33075295994212,-0.966049437252484,6.03\n",
+    " 60    Cnc,2.40902426408925,0.202913918091585,5.41\n",
+    "          ,2.39371906911022,-0.811214491916531,5.33\n",
     " 17    Hya,2.37398342295306,-0.105238505758447,6.91\n",
     " 17    Hya,2.37411767904936,-0.105223961348014,6.67\n",
+    "          ,2.35102563048452,-0.309946234470137,5.75\n",
+    " 59Sig2Cnc,2.41473014818231,0.574392704968145,5.45\n",
+    "   Del Pyx,2.3766685448792,-0.45933672216723,4.89\n",
+    "          ,2.38828169720978,0.0739437826428264,6.14\n",
+    "          ,2.35411352069958,0.299217307707183,6.17\n",
     "          ,2.40942703237817,-0.387143116913209,6.39\n",
+    "          ,2.39103394718408,-1.04101617676245,5.78\n",
+    " 62Omi1Cnc,2.36310867915217,0.267432922773642,5.2\n",
     "          ,2.36028930112972,-0.784670942875784,6.26\n",
     " 61    Cnc,2.42191284933475,0.52767605865643,6.29\n",
+    "          ,2.38452252651318,-0.266870538903555,5.96\n",
+    " 63Omi2Cnc,2.39036266670254,0.271946538144772,5.67\n",
     "          ,2.38438827041687,0.62487150544527,6.51\n",
+    "          ,2.39949208125143,0.163847631667779,6.19\n",
     "          ,2.40251284341835,-1.00810217595192,6.38\n",
+    "  9Iot UMa,2.36847892300446,0.838485261478943,3.14\n",
+    "          ,2.35035435000298,-0.92562567252157,5.71\n",
+    "          ,2.33813704523902,-1.03594502565805,3.84\n",
+    " 65Alp Cnc,2.38667062405409,0.206957264192039,4.25\n",
     "          ,2.35847684382957,0.0269071593015792,6.59\n",
+    "          ,2.36478688035601,-0.894941814644148,4.69\n",
+    " 64Sig3Cnc,2.39559865445852,0.565811502812506,5.2\n",
+    "  8Rho UMa,2.40882287994479,1.18036132498695,4.76\n",
     "          ,2.36633082546354,0.316510611712361,6.38\n",
+    "          ,2.40640627021126,-0.276935270923389,5.86\n",
+    "          ,2.40774883117433,0.729247042851342,3.97\n",
     "          ,2.39754536785498,0.656321368938846,6.44\n",
     "          ,2.45010662955927,1.46923755687607,6.33\n",
+    "          ,2.41714675791584,-1.02573969767069,4.92\n",
+    "          ,2.41801942254184,-0.827751486579177,5.87\n",
+    "          ,2.40539934948895,-0.327981303407412,6.18\n",
     "          ,2.3729093741826,-0.474622897532614,6.25\n",
     "          ,2.41506578842308,0.693128423608682,6.36\n",
+    " 66    Cnc,2.39291353253238,0.562912316999471,5.82\n",
+    "          ,2.41768378230107,-0.816208072831959,5.18\n",
+    " 67    Cnc,2.42620904441658,0.486995342674529,6.07\n",
+    "          ,2.40271422756281,0.0984511142229135,6.07\n",
+    "          ,2.36344431939294,-0.711153796272334,4.45\n",
+    "          ,2.37418480709752,0.947432591897877,5.75\n",
+    "          ,2.38599934357256,-0.747466340987438,6.07\n",
+    " 12Kap UMa,2.41963049569752,0.823039097598793,3.6\n",
+    " 69Nu  Cnc,2.42439658711643,0.426781483480724,5.45\n",
+    "          ,2.43842634918054,0.00842606177768374,5.67\n",
+    "          ,2.37586300830136,-0.442198558540008,6.2\n",
+    "          ,2.38418688627241,-1.02828496949651,5.16\n",
+    "          ,2.42506786759797,0.127375098437908,5.85\n",
+    "          ,2.38848308135424,-0.700497591561546,5.55\n",
     " 70    Cnc,2.38693913624671,0.486917772485551,6.38\n",
     "          ,2.37351352661598,-0.673653458038511,6.27\n",
+    "          ,2.41036682505232,0.847013134129659,5.95\n",
+    "          ,2.41754952620476,-1.0303745164621,5.79\n",
+    "          ,2.42043603227537,-0.904284174279129,5.23\n",
     "          ,2.44775714787389,0.565084282290842,6.46\n",
     "          ,2.38109899605734,-0.427528096549633,6.74\n",
     "          ,2.44023880648069,1.03575594832241,6.45\n",
+    " 11Sig1UMa,2.42278551396074,1.16715984845034,5.14\n",
+    "          ,2.37196958150845,-1.17488777852723,5.88\n",
     "          ,2.37626577659028,-0.915430040807837,6.4\n",
+    "          ,2.42506786759797,0.671117882486309,4.56\n",
+    " 18Ome Hya,2.45641666608571,0.0888760440210001,4.97\n",
+    "          ,2.38613359966886,-0.818598204279829,3.75\n",
+    "   Alp Vol,2.40090177026266,-1.14500386322364,4\n",
+    " 13Sig2UMa,2.43097513583549,1.17172194518958,4.8\n",
     "          ,2.4228526420089,0.401096054655541,6.4\n",
+    "          ,2.46279383066031,0.0255302884472282,6.17\n",
+    " 15    UMa,2.46131701360093,0.900672312354863,4.48\n",
     "          ,2.39660557518083,0.567939834872577,6.5\n",
+    " 72Tau Cnc,2.39123533132854,0.517562845268485,5.43\n",
     "          ,2.43809070893977,-0.979958741763516,6.44\n",
+    " 76Kap Cnc,2.4468844832479,0.186192694230117,5.24\n",
+    " 14Tau UMa,2.4738028305575,1.10852163372014,4.67\n",
+    "          ,2.45970594044524,0.591356335670168,5.93\n",
+    " 75    Cnc,2.45460420878556,0.464766635395657,5.98\n",
+    " 77Xi  Cnc,2.42432945906828,0.384767529875772,5.14\n",
+    "   Kap Pyx,2.39499450202514,-0.421351570252298,4.58\n",
+    "          ,2.42802150171673,-0.945910276939194,6.11\n",
+    " 19    Hya,2.44775714787389,-0.129338593846402,5.6\n",
     "          ,2.40647339825941,-0.886418790130242,6.73\n",
     "          ,2.39257789229161,-1.10828892315321,6.37\n",
     "          ,2.42157720909398,1.25063021992697,6.55\n",
+    "   Lam Vel,2.46702289769398,-0.742943029342686,2.21\n",
     "          ,2.45775922704878,0.201837631719522,6.48\n",
+    "          ,2.41090384943755,-0.203195110026629,5.77\n",
+    "          ,2.44950247712589,-0.440385355372658,6.15\n",
+    "          ,2.40123741050343,-0.308423919511453,5.73\n",
+    "          ,2.45178483076311,0.540407265922366,5.95\n",
+    " 79    Cnc,2.42788724562042,0.383909409660208,6.01\n",
+    " 20    Hya,2.44312531255129,-0.12587702416328,5.46\n",
+    "          ,2.42943119072795,-1.21232509098251,4.71\n",
+    "          ,2.38982564231731,-1.24611660455584,4.48\n",
+    "   Eps Pyx,2.47118483667951,-0.517223475691708,5.59\n",
+    "          ,2.49226304379975,1.27314981541451,5.96\n",
     "          ,2.43070662364287,-0.398342312946839,6.53\n",
     "          ,2.45601389779679,-0.847798532293057,6.48\n",
+    " 16    UMa,2.44493776985144,1.07203940421665,5.13\n",
     "          ,2.47883743416902,0.0954404212632233,6.35\n",
     " 81Pi 1Cnc,2.43218344070225,0.261731513883794,6.51\n",
+    "          ,2.42587340417581,0.0674957606840696,6.14\n",
+    " 36    Lyn,2.47762912930226,0.75429251761746,5.32\n",
+    "          ,2.48299937315455,-0.318561373583454,5.73\n",
+    "          ,2.41009831285971,-0.752794443342832,5\n",
+    " 21    Hya,2.44346095279206,-0.12025803359922,6.11\n",
+    "          ,2.45923604410816,-0.676159944769848,6\n",
     "          ,2.46299521480477,0.371464242466126,6.48\n",
+    "          ,2.4487640685962,-0.792660672340469,5.79\n",
+    "          ,2.47769625735041,-0.995414601917288,3.44\n",
+    " 17    UMa,2.48863812919945,0.990324058265638,5.27\n",
+    "          ,2.44963673322219,-0.739782044141852,5.57\n",
+    " 18    UMa,2.44117859915484,0.942860798885015,4.83\n",
+    "          ,2.42647755660919,-1.07656756399821,3.97\n",
+    "          ,2.44084295891407,0.60447054574418,5.97\n",
+    " 22The Hya,2.44668309910344,0.0403898277732354,3.88\n",
     "          ,2.51401253140152,1.29182968654766,6.5\n",
     "          ,2.44769001982574,-0.652467100174025,6.31\n",
     "          ,2.43788932479531,-0.728262871078689,6.29\n",
+    " 82Pi 2Cnc,2.44017167843253,0.260776430932008,5.34\n",
+    "          ,2.45923604410816,-0.81439486966461,5.92\n",
+    "          ,2.42829001390934,-0.76539959905168,5.85\n",
+    "          ,2.48320075729901,-1.0225108385545,5.54\n",
+    "          ,2.45017375760742,-0.746520954309275,5.25\n",
     "          ,2.45507410512264,-0.261367903622962,6.35\n",
+    "          ,2.47225888544997,0.817114674415634,5.97\n",
+    "          ,2.4940755010999,-0.635256214494636,5.86\n",
+    "   Zet Oct,2.39392045325468,-1.4719573616271,5.42\n",
+    "          ,2.44144711134745,-0.949987559997325,5.27\n",
     "          ,2.44124572720299,-0.775701889775258,6.25\n",
+    " 23    Hya,2.48199245243224,-0.0985577732327576,5.24\n",
+    "          ,2.4709163244869,-0.653276739021478,4.94\n",
+    " 24    Hya,2.48145542804702,-0.126628485369,5.47\n",
+    "          ,2.4821938365767,-0.638557795662992,4.62\n",
+    "   Bet Car,2.42902842243903,-1.19175929462984,1.68\n",
+    "          ,2.46964089157198,0.617221145557361,5.75\n",
+    "          ,2.44044019062515,-0.234334692764294,5.84\n",
+    "          ,2.43164641631702,-0.752261148293612,6.04\n",
     "          ,2.49937861690403,0.200732256526592,6.41\n",
+    " 38    Lyn,2.50280214735987,0.642324797965213,3.82\n",
+    "          ,2.4451391539959,-1.00550842275799,6.02\n",
+    "          ,2.45702081851909,-0.763305203949287,5.12\n",
     "          ,2.46863397084967,-0.984748700932878,6.32\n",
+    "          ,2.50280214735987,-0.673672850585756,5.33\n",
+    "          ,2.42506786759797,-1.31487772894761,6.14\n",
+    "          ,2.4423869040216,-0.985388654991943,4.34\n",
+    "          ,2.50226512297464,0.894762433582137,6.13\n",
+    "          ,2.50595716562309,0.989587141470351,5.47\n",
+    "   Iot Car,2.4376208126027,-1.02493975509686,2.25\n",
     "          ,2.48716131214007,-0.933833568142755,6.33\n",
+    "          ,2.52307481790226,0.666512152515768,6.12\n",
     "          ,2.48434193411762,-0.186502974986027,6.62\n",
+    "          ,2.44252116011791,-0.889225861343867,5.26\n",
+    "          ,2.48367065363608,-0.247235584818619,5.78\n",
+    " 40Alp Lyn,2.45225472710019,0.60026236299215,3.13\n",
+    " 26    Hya,2.50139245834864,-0.174969257512432,4.79\n",
+    "          ,2.48434193411762,0.574247260863812,6.16\n",
+    "          ,2.49139037917375,-0.880334378432318,5.87\n",
+    " 27    Hya,2.48239522072117,-0.147378510920488,4.8\n",
     "          ,2.50340629979325,-0.591608438784345,6.39\n",
     "          ,2.46849971475336,0.268276498578773,6.53\n",
+    "          ,2.45346303196695,-1.17479081579101,5.39\n",
+    "          ,2.49978138519296,-1.16848338979977,6.11\n",
     "          ,2.51797308624259,-0.251017131531273,6.33\n",
     "          ,2.50280214735987,-0.527777869529463,6.82\n",
+    "          ,2.48320075729901,-0.635624672892279,6.05\n",
     "          ,2.48286511705824,-0.956673140659825,6.28\n",
+    "   The Pyx,2.487564080429,-0.419480189443215,4.72\n",
     "          ,2.54328036039651,1.31071317942687,6.29\n",
+    "          ,2.46447203186415,-1.27593264594408,5.29\n",
+    "          ,2.46715715379029,-1.27872032461046,5.86\n",
     "          ,2.5246187630098,1.11597806813561,6.28\n",
     "          ,2.49924436080773,0.439527235157094,6.41\n",
     "          ,2.52052395207243,-0.142438259509982,6.53\n",
     "          ,2.53569489095515,0.900134169168831,6.31\n",
+    "          ,2.51616062894244,-0.72963489379623,5.58\n",
     "          ,2.49112186698114,0.638562643799803,6.67\n",
+    "          ,2.51971841549458,-1.07504040090272,4.81\n",
     "          ,2.5014595863968,-0.667156954711643,6.54\n",
+    "          ,2.48440906216577,-0.802022424522694,5.75\n",
+    "  1Kap Leo,2.51367689116076,0.456965983266604,4.46\n",
+    "          ,2.51495232407568,-0.95094264294911,5.63\n",
+    "   Lam Pyx,2.47306442202781,-0.474138083851504,4.69\n",
+    "   Kap Vel,2.46131701360093,-0.959742011261249,2.5\n",
     "          ,2.51669765332767,-0.632555802290856,6.48\n",
     "          ,2.50891079974185,0.289472552716882,6.29\n",
+    "          ,2.48279798901009,-0.673246214546379,6.06\n",
+    " 28    Hya,2.49749903155573,-0.0852157007286231,5.59\n",
+    "          ,2.53643329948484,-0.877250963420461,6.08\n",
     "          ,2.49333709257021,-1.04191793020931,6.3\n",
+    "          ,2.49958000104849,-0.00935690404541405,6.01\n",
+    "          ,2.46856684280152,-1.05332559612582,5.99\n",
+    "          ,2.53206997635485,0.79589437959347,5.41\n",
     " 29    Hya,2.49360560476282,-0.153176882546558,6.54\n",
+    "          ,2.52978762271763,-0.474947722698957,6.1\n",
+    "          ,2.50790387901954,-0.689371117580082,6.2\n",
     "          ,2.54663676280419,0.972943487797861,6.45\n",
+    " 30Alp Hya,2.52126236060212,-0.128131407780439,1.98\n",
+    "          ,2.4987073364225,-0.377970442066616,4.69\n",
+    "          ,2.53683606777376,-0.103478632096019,5.38\n",
+    "          ,2.5246187630098,1.41941325486844,4.29\n",
+    "          ,2.50166097054126,-1.04806536768578,5.77\n",
+    "          ,2.49394124500359,-0.918406796809849,5.11\n",
+    "  2Ome Leo,2.51528796431644,0.158068652588953,5.41\n",
+    "  3    Leo,2.51757031795367,0.142913376917469,5.71\n",
     "          ,2.52555855568395,-0.610729490367305,6.65\n",
+    " 23    UMa,2.53401668975131,1.1006385632653,3.67\n",
     "          ,2.48568449508069,-0.0129687659696801,6.27\n",
+    " 31Tau1Hya,2.49467965353328,-0.0214869423467746,4.6\n",
+    "          ,2.51562360455721,-0.0313238119364871,6.14\n",
+    "          ,2.52898208613978,-1.10078400736963,6.05\n",
     "          ,2.52622983616548,-0.0654983283178983,6.26\n",
+    "          ,2.49964712909665,-0.336000121692964,5.66\n",
+    "  7    LMi,2.54509281769665,0.587400256032314,5.85\n",
+    "   Eps Ant,2.5024665071191,-0.594260369620014,4.51\n",
+    "          ,2.50461460466002,-0.656175924834513,6.19\n",
     "          ,2.54972465301925,-0.395399493902504,6.24\n",
+    " 22    UMa,2.57650874423255,1.26022468267613,5.72\n",
+    "  8    LMi,2.53495648242546,0.612663896954932,5.37\n",
+    "          ,2.55590043344939,-0.44349301106857,5.48\n",
+    " 24    UMa,2.54334748844466,1.21876826480445,4.56\n",
+    "          ,2.51743606185736,-0.251724959505693,5.85\n",
+    "  4Lam Leo,2.54945614082664,0.40086819222542,4.31\n",
     "          ,2.52240353742073,1.2970899149877,6.46\n",
+    " 25The UMa,2.56482846385382,0.901937676062559,3.17\n",
+    "          ,2.54146790309636,-1.07733841775118,5.92\n",
+    "          ,2.48259660486563,-1.22867300830952,5.47\n",
     "          ,2.509850592416,0.862866541501941,6.76\n",
+    "  6    Leo,2.56878901869489,0.169573281241682,5.07\n",
     "   Zet1Ant,2.54804645181541,-0.525494397091437,7\n",
+    "   Zet1Ant,2.54898624448956,-0.525528334049115,6.18\n",
+    "  5Xi  Leo,2.56758071382812,0.197217357338548,4.97\n",
+    "          ,2.51944990330197,-1.13966606459462,5.91\n",
+    "          ,2.4940755010999,-0.881090687774848,5.45\n",
+    "          ,2.54368312868543,-0.164894829218975,6.14\n",
+    "   Psi Vel,2.54348174454097,-0.689986830955092,3.6\n",
+    " 32Tau2Hya,2.57053434794688,-0.0142244334037538,4.57\n",
+    "          ,2.56637240896135,-0.168065510693432,6.13\n",
+    "   Zet2Ant,2.53468797023284,-0.525833766668214,5.93\n",
+    "          ,2.53562776290699,-0.598386134046256,5.87\n",
+    "  9    LMi,2.54086375066298,0.636817314547809,6.18\n",
     "          ,2.52475301910611,0.495115971833114,6.53\n",
+    "          ,2.51851011062782,-1.00597869202867,5.88\n",
+    "          ,2.5514028542231,0.032535846139261,6.11\n",
+    "   Iot Cha,2.47313155007596,-1.38252863000963,5.36\n",
+    "          ,2.52320907399857,-0.324626392734134,5.74\n",
     "          ,2.53086167148808,0.818598204279829,6.52\n",
     "          ,2.52065820816873,-0.477730553228526,6.46\n",
+    " 26    UMa,2.57100424428395,0.908468116347104,4.5\n",
+    " 10    LMi,2.52253779351704,0.635256214494636,4.55\n",
+    "          ,2.50300353150433,-0.130807579300164,6.12\n",
+    "          ,2.57073573209134,-0.217870420153814,5.94\n",
+    "          ,2.50931356803077,-0.994236504672192,3.13\n",
     "          ,2.57952950639947,0.409347583508026,6.25\n",
     "          ,2.52716962883964,-0.118856922060814,6.24\n",
     "          ,2.5930893721265,1.27549631363108,6.42\n",
+    "          ,2.52173225693919,-0.686796756933391,5.35\n",
+    "          ,2.51696616552028,-0.364497469868582,5.01\n",
+    "          ,2.51401253140152,0.691523690324209,4.81\n",
+    "          ,2.53535925071438,-0.368894729956246,5.91\n",
     "          ,2.53898416531467,0.697491746738667,6.76\n",
     "          ,2.51065612899384,-0.67842887279744,6.43\n",
     "          ,2.53562776290699,-1.13936063197552,6.27\n",
+    " 33    Hya,2.54844922010434,-0.0712966999439684,5.56\n",
+    " 11    LMi,2.56207621387952,0.625007253275981,5.41\n",
+    "          ,2.51542222041275,-1.06833542769297,6.1\n",
+    "          ,2.55992811633861,-0.855124067014622,5.12\n",
     "  7    Leo,2.57993227468839,0.250973498299974,6.36\n",
+    "          ,2.5163620130869,-0.885662480787711,5.01\n",
+    "          ,2.57086998818765,0.5438736837423,5.56\n",
+    "          ,2.54019247018144,-1.27267954614383,5.47\n",
     "          ,2.55415510419739,-0.321426622438811,6.31\n",
     "          ,2.52475301910611,-0.596485664416306,6.49\n",
+    "          ,2.56382154313152,1.17412177291107,5.94\n",
+    "          ,2.5403938543259,-1.02573969767069,4.08\n",
+    "  8    Leo,2.52112810450581,0.286893343933379,5.69\n",
+    " 10    Leo,2.53468797023284,0.119307798784246,5\n",
     "          ,2.55851842732738,-0.406613234346568,6.53\n",
+    " 42    Lyn,2.55113434203048,0.702315642865707,5.25\n",
+    "          ,2.51790595819443,-0.431154502884332,5.7\n",
+    "          ,2.54724091523757,-0.824643830883265,6.17\n",
     " 34    Hya,2.58677933560006,-0.149671679632136,6.4\n",
+    "          ,2.53092879953624,-0.555388008668651,5.63\n",
+    "          ,2.55865268342369,0.081143265807303,4.68\n",
+    "          ,2.55563192125677,-0.626645923518131,5.98\n",
+    "          ,2.57986514664023,-0.849010566495831,4.35\n",
+    "          ,2.57543469546209,-0.891092394016138,6.19\n",
+    "          ,2.55932396390522,1.20842234084957,5.69\n",
+    " 27    UMa,2.6162485487395,1.2610440177972,5.17\n",
+    "          ,2.53415094584761,-0.913355038252688,5.45\n",
     "          ,2.5201211837835,-1.1004203971088,6.56\n",
+    "          ,2.52401461057642,-0.747156060231528,5.5\n",
     "          ,2.59389490870434,1.36370816290896,6.23\n",
     "          ,2.57664300032886,-0.669959177788457,6.7\n",
+    " 35Iot Hya,2.59537172576372,-0.0149613501990403,3.91\n",
     " 37    Hya,2.59000148191143,-0.164579700326254,6.31\n",
+    "          ,2.58543677463698,1.38119539238658,6.17\n",
     "          ,2.55771289074954,-0.16110843436951,6.37\n",
+    " 38Kap Hya,2.55543053711231,-0.238547723653136,5.06\n",
+    "          ,2.58234888442192,0.545905053066149,5.89\n",
+    " 43    Lyn,2.53985682994067,0.693904125498457,5.62\n",
+    " 14Omi Leo,2.54717378718942,0.172651848116728,3.52\n",
     " 13    Leo,2.58677933560006,0.452263290559842,6.24\n",
     "          ,2.59731843916018,0.845282349288098,6.39\n",
     "          ,2.55321531152324,0.948824007162662,6.47\n",
+    "          ,2.55455787248632,-1.05892519414264,4.52\n",
+    " 13    LMi,2.59678141477495,0.612494212166543,6.14\n",
+    "          ,2.557914274894,-0.391099196551063,4.77\n",
+    "          ,2.59745269525648,1.13418282186127,6.17\n",
+    "   Zet Cha,2.57160839671734,-1.37983306594266,5.11\n",
+    " 15    Leo,2.58852466485205,0.523152747011678,5.64\n",
+    "          ,2.55878693951999,-0.385446269029325,4.94\n",
+    "          ,2.58778625632236,-0.977670421188679,5.32\n",
+    "          ,2.53804437264052,-0.990304665718394,5.8\n",
     " 28    UMa,2.62692190839593,1.11096024653612,6.34\n",
+    " 16Psi Leo,2.60275581106062,0.244724249950472,5.35\n",
     "          ,2.59503608552295,-0.602109503117177,6.41\n",
+    "          ,2.59926515255663,-0.956193175115527,6\n",
     "          ,2.5884575368039,0.329232122704675,6.5\n",
+    "          ,2.59946653670109,0.997072664706683,5.2\n",
+    "   The Ant,2.5644256955649,-0.457809559071735,4.79\n",
+    "          ,2.58073781126623,-0.886132750058388,6.15\n",
+    " 17Eps Leo,2.62114889625472,0.414937485251219,2.98\n",
     "          ,2.56939317112827,-0.670710638994176,6.82\n",
+    "          ,2.6004734574234,-0.909461984393378,5.56\n",
+    "          ,2.57033296380242,0.117087352124764,5.79\n",
+    " 18    Leo,2.58818902461128,0.20612338466053,5.63\n",
     "          ,2.58181186003669,-0.520059635726199,6.45\n",
+    "          ,2.58859179290021,0.031163823421721,5.65\n",
     " 19    Leo,2.59604300624526,0.201905505634877,6.45\n",
+    "          ,2.61316065852443,0.803219914315035,5.09\n",
+    "          ,2.60624646956461,0.199471740955707,6.02\n",
     "          ,2.60691775004615,-0.991599118246956,6.46\n",
+    "          ,2.57241393329518,-1.0732417421458,3.69\n",
     "          ,2.60617934151646,1.14481963402481,6.31\n",
+    "          ,2.5977212074491,-0.754767635024948,5.55\n",
     "          ,2.62692190839593,-0.99843014301379,6.22\n",
+    " 29Ups UMa,2.65410876789815,1.0304181496934,3.8\n",
+    " 20    Leo,2.63725962781159,0.369651039298777,6.09\n",
+    "   Ups Car,2.56946029917642,-1.13320834636224,3.01\n",
     "   Ups Car,2.57026583575426,-1.13319865008862,6.26\n",
+    "          ,2.60772328662399,-0.642518723437657,5.97\n",
     "  4    Sex,2.61477173168012,0.0758103153150981,6.24\n",
+    " 30Phi UMa,2.59167968311527,0.943602563817112,4.59\n",
+    "          ,2.61933643895457,-0.97019459422597,6.06\n",
     " 23    Leo,2.58140909174777,0.228046659320304,6.46\n",
     "          ,2.63887070096727,-0.623630382421629,6.37\n",
+    "          ,2.64665755455309,-0.772608778489779,5.08\n",
+    "  6    Sex,2.59751982330464,-0.0655662022332537,6.01\n",
+    " 22    Leo,2.64987970086447,0.425777919160828,5.32\n",
     "          ,2.60772328662399,-0.101549073645203,6.42\n",
+    "   Nu  Cha,2.58456411001099,-1.31290453726549,5.45\n",
+    " 39Ups1Hya,2.6172554694618,-0.229568974278987,4.12\n",
+    "          ,2.63074820714068,-0.786542323684867,5.73\n",
+    " 24Mu  Leo,2.64457658506033,0.453906808938803,3.88\n",
+    "  7    Sex,2.59946653670109,0.0428332887260275,6.02\n",
     "          ,2.59919802450848,0.00131869321261794,6.35\n",
+    "          ,2.65874060322075,-0.269920016957734,6.08\n",
+    "  8Gam Sex,2.62390114622901,-0.137793744444952,5.05\n",
+    "          ,2.60530667689046,-0.799467456423247,5.62\n",
     "          ,2.60074196961601,1.06667736490358,6.27\n",
+    "          ,2.63350045711498,-0.793290930125912,4.58\n",
+    "          ,2.5949689574748,-1.02231206494525,5.79\n",
+    "          ,2.64914129233478,-1.06909658517232,5.57\n",
+    "          ,2.64504648139741,0.103992534597995,5.95\n",
     "          ,2.66095582880982,-0.465440526412399,6.3\n",
+    " 31    UMa,2.65390738375369,0.869523033343575,5.27\n",
+    "          ,2.63987762168958,1.27198626257985,5.83\n",
+    "          ,2.60832743905737,-0.420057117723735,4.88\n",
     "          ,2.58745061608159,-0.953415192722769,6.48\n",
     "          ,2.63437312174098,-0.375449410924847,6.24\n",
+    "          ,2.62316273769932,1.00213896767428,5.93\n",
+    "          ,2.66189562148397,-0.331447721227345,4.94\n",
+    "          ,2.65484717642784,-0.887553254144039,5.93\n",
+    "          ,2.61544301216166,-0.780443367576509,5.71\n",
+    "          ,2.63544717051144,0.155911231708016,5.85\n",
+    "          ,2.6606873166172,-0.868407961877023,5.72\n",
+    " 19    LMi,2.66008316418382,0.716554620679894,5.14\n",
     "          ,2.68129562740037,0.792631583519603,6.3\n",
     "          ,2.60779041467214,-0.68373758260559,6.41\n",
     "          ,2.66296967025442,-0.444181446495746,6.28\n",
+    "          ,2.64820149966063,-0.568652510983808,5.84\n",
     "          ,2.67303887747747,-0.462948584091496,6.32\n",
     "          ,2.69895030406477,1.46465121945278,6.37\n",
     "          ,2.62994267056284,-0.884251672975683,6.37\n",
     "          ,2.64430807286772,0.484484007806382,6.3\n",
+    " 27Nu  Leo,2.62725754863669,0.217201377273883,5.26\n",
+    "          ,2.61947069505087,0.145109582892895,6.04\n",
+    "          ,2.68304095665236,0.991555485015656,5.48\n",
+    "   Phi Vel,2.67008524335871,-0.932568204435059,3.54\n",
+    "          ,2.61953782309903,-0.896420496371532,6.12\n",
+    "          ,2.66223126172474,0.51740770489053,5.73\n",
+    "          ,2.66196274953212,-0.830524620835124,6.05\n",
     "          ,2.61356342681335,-1.23238668110682,6.35\n",
     " 12    Sex,2.67149493236994,0.059074547043197,6.7\n",
     "          ,2.62182017673625,-0.384840251927939,6.21\n",
+    "   Eta Ant,2.67948317010022,-0.595312415308021,5.23\n",
     "          ,2.62531083524024,-1.10846830421522,6.58\n",
+    "          ,2.68069147496698,-1.20249791766642,6.2\n",
+    " 29Pi  Leo,2.63517865831882,0.140397193912511,4.7\n",
+    " 20    LMi,2.62329699379563,0.557172123015134,5.36\n",
+    "          ,2.69237175534571,0.383085226402322,5.66\n",
     "          ,2.66417797512119,-0.960861930864612,6.52\n",
+    "          ,2.68418213347097,0.940587022720611,5.74\n",
+    "          ,2.67673092012592,-0.918663748060838,6.2\n",
     "          ,2.69290877973094,-0.513519499168032,6.54\n",
+    "          ,2.70022573697969,-0.988733869391599,6.2\n",
+    "          ,2.65390738375369,0.914043473679864,6.14\n",
+    "          ,2.68612884686743,-0.147063382027767,6.12\n",
+    "          ,2.62672052425147,-1.03985262392779,5.94\n",
     " 13    Sex,2.64672468260125,0.0558699286110629,6.45\n",
     "          ,2.68666587125266,-0.430805437033934,6.7\n",
+    "          ,2.63934059730435,-0.312384847286118,5.86\n",
+    "          ,2.65860634712444,-0.791749222619983,6.12\n",
+    "          ,2.66364095073596,-0.413895135836833,5.7\n",
+    "          ,2.70713992593951,-1.04408019922706,6.19\n",
     "          ,2.69304303582725,-1.07937463521184,6.42\n",
     "          ,2.66686309704734,-0.66364690366041,6.43\n",
     "          ,2.69472123703109,0.275020256883006,6.37\n",
+    " 40Ups2Hya,2.64987970086447,-0.225763186882278,4.6\n",
+    "          ,2.67713368841484,-1.04922407238364,6.14\n",
     "          ,2.66021742028013,-0.621618405645025,6.27\n",
     " 14    Sex,2.70781120642105,0.0979372117209374,6.21\n",
+    " 21    LMi,2.68317521274867,0.61513644672859,4.48\n",
+    " 30Eta Leo,2.67538835916285,0.292565664002361,3.52\n",
+    "          ,2.65934475565413,-0.813847030204956,5.08\n",
+    "          ,2.66129146905058,-0.294233423065377,5.6\n",
     "          ,2.65370599960922,-0.90428902241594,6.52\n",
     "          ,2.67424718234423,0.551596765682375,6.24\n",
+    " 31    Leo,2.72143820019624,0.174489291968133,4.37\n",
+    " 15Alp Sex,2.72412332212238,0.00648680705324559,4.49\n",
+    " 32Alp Leo,2.6828395725079,0.20886743009561,1.35\n",
+    "   Mu 1Cha,2.67666379207777,-1.42742237688037,5.52\n",
     "          ,2.6551828166686,-0.639949210927776,6.36\n",
     "          ,2.7142554990438,-0.159091609456094,6.53\n",
     "          ,2.70056137722046,-0.251123790541117,6.27\n",
     "          ,2.74070395001633,0.70967511454495,6.32\n",
     "          ,2.73311848057497,-0.207766903039492,6.24\n",
+    " 17    Sex,2.6716963165144,-0.132499579047236,5.91\n",
+    "          ,2.72848664525237,-0.87596135902871,4.86\n",
+    "          ,2.66954821897348,-0.195195684288321,5.31\n",
+    "          ,2.69995722478707,-0.595913584272597,6.13\n",
+    "          ,2.68317521274867,0.652787077203557,5.85\n",
+    " 41Lam Hya,2.70901951128781,-0.203258135805173,3.61\n",
+    "          ,2.71009356005827,-1.12023473225575,5.28\n",
+    " 18    Sex,2.7365420110308,-0.132325046122037,5.65\n",
     "   Mu 2Cha,2.64565063383079,-1.40384103943121,6.6\n",
     " 34    Leo,2.71727626121071,0.233088721603843,6.44\n",
+    "          ,2.68666587125266,-1.05506607724101,5.6\n",
     "          ,2.68988801756403,-0.116646171674954,6.25\n",
+    "          ,2.7125101697918,-0.703105889165916,5.98\n",
+    "          ,2.69821189553508,-1.17489747480085,5.81\n",
     "          ,2.67424718234423,-0.478108707899791,6.28\n",
+    " 19    Sex,2.73519945006773,0.0805420968427272,5.77\n",
     "          ,2.72110255995547,-0.328931538222387,6.44\n",
+    "          ,2.74157661464232,0.473609636939095,6.04\n",
     "          ,2.71324857832149,-0.997838670322836,6.4\n",
     "          ,2.69378144435694,1.04694544808242,6.25\n",
+    "          ,2.72841951720421,-1.01123407233189,5.72\n",
+    "          ,2.70123265770199,-0.904720506592127,6.16\n",
     "          ,2.70076276136492,-0.470734691810115,6.25\n",
+    "          ,2.71895446241455,0.369447417552711,6.02\n",
     "          ,2.70801259056551,-0.575401117424853,6.38\n",
     " 22    LMi,2.69190185900864,0.549221178644938,6.46\n",
+    "          ,2.73634062688634,-0.692095770467918,5.9\n",
     "          ,2.69801051139062,1.27537026207399,6.4\n",
+    "          ,2.70532746863936,-0.886045483595788,5.28\n",
+    "          ,2.6764624079333,-1.01372116651598,6.1\n",
     "          ,2.75070602919122,-0.692711483842927,6.35\n",
+    "          ,2.71230878564734,-0.876921290117306,5.78\n",
     "          ,2.76010395593273,1.24024066274079,6.66\n",
     "          ,2.70317937109845,-1.05315106320062,6.41\n",
+    "          ,2.7384215963791,-0.730909953777547,3.85\n",
+    " 23    LMi,2.70713992593951,0.51156570003316,5.35\n",
+    "          ,2.71579944415133,-1.14540625857896,5.16\n",
+    " 32    UMa,2.69921881625738,1.13635478715264,5.82\n",
     " 24    LMi,2.72553301113361,0.500604062703274,6.49\n",
     "          ,2.70942227957674,0.309626257440605,6.55\n",
+    "          ,2.7115032490695,-0.619276755565266,6.19\n",
+    " 35    Leo,2.73117176717851,0.410205703723589,5.97\n",
+    " 36Zet Leo,2.74338907194247,0.408707629448961,3.44\n",
+    "          ,2.74406035242401,0.442814271915017,5.84\n",
+    " 33Lam UMa,2.69995722478707,0.748998352219744,3.45\n",
+    "          ,2.70002435283523,-0.188437381573654,6.08\n",
+    " 37    Leo,2.74244927926832,0.239604617477955,5.41\n",
+    "          ,2.72573439527807,-0.748528082949068,5.6\n",
+    "   Ome Car,2.73405827324912,-1.22106628165291,3.32\n",
+    "          ,2.70573023692829,-0.925475380280426,6.16\n",
+    " 39    Leo,2.71177176126211,0.403277716220534,5.82\n",
     "          ,2.74902782798738,-0.337362448136882,6.57\n",
     "          ,2.71036207225089,0.478486862571057,6.52\n",
+    " 22Eps Sex,2.7429191756054,-0.138424002230395,5.24\n",
     "          ,2.69196898705679,-1.01397811776697,6.22\n",
     "          ,2.77574479115252,0.816130502642982,6.43\n",
     "          ,2.74177799878678,-0.886539993550519,6.3\n",
+    "          ,2.73687765127157,0.844686028460333,6\n",
+    "          ,2.71418837099564,1.1998702275148,5.96\n",
     "          ,2.70183681013538,0.431299946988665,6.4\n",
+    "          ,2.70673715765059,-0.471379494005991,5.34\n",
+    "          ,2.69888317601662,-1.05885247209047,3.4\n",
     "          ,2.72513024284468,0.938623527312117,6.45\n",
+    "          ,2.74714824263907,0.946264190926403,6\n",
     "          ,2.74728249873538,-0.614273478376215,6.3\n",
+    " 40    Leo,2.76010395593273,0.339830149773729,4.79\n",
+    "          ,2.72345204164084,-0.200223202161427,6\n",
+    "          ,2.73439391348989,-0.70392037615018,5.96\n",
+    " 41Gam1Leo,2.77916832160836,0.346302412416542,2.61\n",
+    " 41Gam2Leo,2.77957108989728,0.346283019869297,3.8\n",
     "          ,2.74412748047216,-0.0854193224746891,6.37\n",
     "          ,2.78064513866773,-0.156051827675537,6.32\n",
+    "          ,2.74701398654277,-0.975464518939631,5.81\n",
+    "          ,2.80024652872859,1.47047867989971,5.5\n",
+    "          ,2.7503032609023,-0.959417186094905,4.57\n",
     " 23    Sex,2.71230878564734,0.0399631917338591,6.66\n",
+    "          ,2.70734131008397,-1.10520550814135,5.67\n",
+    "          ,2.72768110867452,-0.808101988083808,5.65\n",
+    "          ,2.72808387696344,0.71958955432364,5.76\n",
     "          ,2.72009563923316,-0.279514479706892,6.51\n",
+    " 34Mu  UMa,2.74043543782371,0.724301943304025,3.05\n",
+    " 42    Leo,2.77715448016375,0.261372751759773,6.12\n",
     "          ,2.74815516336138,-0.389019345859103,6.5\n",
+    "          ,2.73331986471943,1.14434936475414,4.97\n",
     "          ,2.75795585839181,-0.374751279224049,6.51\n",
+    "          ,2.77883268136759,-0.976632919911105,4.5\n",
+    " 27    LMi,2.72680844404853,0.591807212393599,5.9\n",
+    "          ,2.73130602327482,-0.316481522891494,6.13\n",
+    " 43    Leo,2.7188873343664,0.114188166311729,6.07\n",
     "          ,2.7744693582376,0.516893802388554,6.39\n",
     "          ,2.73795170004203,0.0993819564906438,6.54\n",
+    "          ,2.7403011817274,-0.704240353179712,4.83\n",
+    " 28    LMi,2.73425965739358,0.588500783088432,5.5\n",
+    " 25    Sex,2.75392817550259,-0.0685187175512107,5.97\n",
     "          ,2.73593785859742,-0.520767463700619,6.27\n",
+    "          ,2.75943267545119,1.44091958976246,5.26\n",
     "          ,2.7403011817274,0.0413303663145879,6.32\n",
+    "          ,2.75768734619919,-0.663050582832646,5.33\n",
     "          ,2.7725897728893,-0.698946187781996,6.27\n",
+    " 44    Leo,2.74748388287984,0.153322326650891,5.61\n",
+    "          ,2.7919897788057,-1.13618025422744,4.99\n",
+    " 30    LMi,2.80078355311382,0.589853413258728,4.74\n",
     "          ,2.78668666300156,-0.978189171827466,6.35\n",
+    "          ,2.78655240690525,-0.121130698225218,5.57\n",
+    "          ,2.75016900480599,-0.724869175310923,6.18\n",
+    " 42Mu  Hya,2.73869010857172,-0.264654940380885,3.81\n",
+    "          ,2.80246175431766,-1.00223108227369,5.95\n",
+    "          ,2.77339530946714,0.726071513240074,6.02\n",
+    "          ,2.73647488298265,0.33797331337508,6.15\n",
     "          ,2.74526865729077,0.851454027448623,6.44\n",
+    "          ,2.74419460852031,-0.720142241920105,6.13\n",
+    " 31Bet LMi,2.80695933354396,0.640661887039008,4.21\n",
+    " 45    Leo,2.78816348006094,0.170387768225946,6.04\n",
+    "          ,2.75453232793597,-1.29099095887934,4\n",
     "          ,2.78917040078325,0.789102139921125,6.35\n",
+    "   Alp Ant,2.74802090726507,-0.539869122736335,4.25\n",
+    "          ,2.78218908377527,-1.25713157139065,6.19\n",
     " 35    UMa,2.81743130905592,1.14539171416852,6.32\n",
+    "          ,2.79722576656168,-0.927162531890688,5.58\n",
+    "          ,2.7846056935088,1.12150494410026,6.12\n",
+    "          ,2.79923960800629,-0.039400807863772,6.05\n",
+    "          ,2.76856209000008,-0.983686958971249,4.66\n",
+    "          ,2.74271779146094,-0.848133053733022,6.1\n",
+    " 36    UMa,2.7993738641026,0.977045011540048,4.84\n",
+    " 32    LMi,2.75748596205473,0.679374259475604,5.77\n",
+    "          ,2.80655656525504,-0.999385225965575,3.82\n",
+    "          ,2.76977039486685,-1.12216429070657,6.01\n",
+    " 29Del Sex,2.78306174840127,-0.0220056929855618,5.21\n",
+    "          ,2.78346451669019,-0.494563284236649,5.58\n",
+    "   Del Ant,2.79205690685385,-0.513000748529244,5.56\n",
+    " 30Bet Sex,2.77238838874484,0.0111167777078417,5.09\n",
+    "          ,2.81078563228871,-1.11400487645349,5.29\n",
     "          ,2.77735586430821,1.40489308511921,6.52\n",
+    "          ,2.82770190042343,-0.111046573658139,6.2\n",
+    "          ,2.82917871748281,-0.216624448993363,5.58\n",
+    " 33    LMi,2.82226452852298,0.565127915522142,5.9\n",
     "          ,2.817901205393,-0.445340151193598,6.51\n",
+    "          ,2.7780942728379,1.32144210618983,4.84\n",
+    " 46    Leo,2.7734624375153,0.246741074863887,5.46\n",
     "          ,2.80152196164351,-1.05843553232472,6.43\n",
+    "          ,2.7605738522698,-1.13472581318411,6.19\n",
+    "          ,2.81850535782638,-0.484547033584926,6.05\n",
     "          ,2.82051919927099,0.933707516585667,6.45\n",
+    "          ,2.78064513866773,0.70555904639233,4.75\n",
+    " 47Rho Leo,2.82300293705267,0.162431975718939,3.85\n",
+    "          ,2.78252472401604,-0.912535703131613,4.89\n",
+    "          ,2.83045415039773,-0.784234610562785,5.74\n",
+    "          ,2.82924584553096,-0.784186129194674,6.09\n",
+    " 34    LMi,2.80346867503997,0.61066646458876,5.58\n",
+    "          ,2.77587904724883,-1.22185167981631,4.74\n",
+    "          ,2.80273026651028,-0.757143222062384,5.91\n",
+    "          ,2.75949980349934,-1.05269049020357,3.32\n",
+    " 37    UMa,2.7837330288828,0.996282418406474,5.16\n",
+    "          ,2.7559420169472,-1.27022154078061,4.93\n",
+    "          ,2.83401193694987,-0.820246570795602,5.02\n",
+    "          ,2.82152611999329,-1.00065058967327,6\n",
+    " 44    Hya,2.76755516927778,-0.388418176894527,5.08\n",
+    " 48    Leo,2.83078979063849,0.12136340879215,5.08\n",
+    "          ,2.79595033364676,-1.00896999244111,6.14\n",
+    " 49    Leo,2.77366382165976,0.150975828434321,5.67\n",
+    "          ,2.8438126319803,-0.398352009220461,6.1\n",
     " 35    LMi,2.80380431528074,0.634024787744618,6.28\n",
     "          ,2.78366590083465,-1.02995757669634,6.23\n",
     "          ,2.82293580900452,-0.304225433033045,6.49\n",
+    "          ,2.78802922396463,-0.670856083098509,5.38\n",
+    "          ,2.78480707765326,-0.73888998696861,6.08\n",
     "          ,2.79843407142845,-0.164351837896133,6.57\n",
+    "   Phi2Hya,2.7974942787543,-0.273240990673334,6.03\n",
     "          ,2.78124929110112,-0.442004633067564,6.29\n",
+    "          ,2.81857248587453,-0.205420404822922,5.7\n",
+    "          ,2.81810258953746,-0.985102614920088,4.45\n",
     "          ,2.79501054097261,-0.178920489013474,6.52\n",
     "          ,2.82172750413776,-1.39764027244981,7.07\n",
+    "          ,2.79782991899506,-0.464039414873992,4.89\n",
+    "          ,2.82400985777498,-0.220182981412707,4.82\n",
+    "          ,2.80232749822136,-1.0198879965397,5.08\n",
+    "          ,2.79581607755045,0.93668912072449,5.52\n",
+    " 37    LMi,2.84179879053569,0.558088420872431,4.71\n",
+    "          ,2.80373718723258,-0.833816505729858,3.84\n",
+    " 38    LMi,2.79836694338029,0.66165431943105,5.85\n",
+    "          ,2.81541746761131,-0.999491884975419,5.45\n",
     "          ,2.8040056994252,-1.32105425524494,6.3\n",
+    "   Phi3Hya,2.83078979063849,-0.263951960543276,4.91\n",
+    "          ,2.85146522946981,-0.201697035752,6.04\n",
+    "          ,2.78715655933864,-0.990362843360127,5.91\n",
+    "   Gam Cha,2.80843615060334,-1.3507490932129,4.11\n",
+    "          ,2.85133097337351,-0.719885290669117,6.11\n",
+    "          ,2.86173582083732,1.19456151770665,5.75\n",
+    "          ,2.84434965636553,-1.02654933651814,4.66\n",
+    " 38    UMa,2.87287907683082,1.14696735863213,5.12\n",
+    "          ,2.86354827813747,-0.99803259579528,5.92\n",
+    "          ,2.81286660178148,-0.949400935443182,4.28\n",
+    "          ,2.81112127252948,1.20560557336233,5\n",
     " 33    Sex,2.82938010162727,-0.00450876723431868,6.26\n",
     "          ,2.86180294888547,-0.597920712912391,6.37\n",
+    "          ,2.81642438833362,0.55321604337728,6.02\n",
+    "          ,2.80769774207365,-1.1327089882707,5.52\n",
+    "          ,2.81044999204795,-1.28292850736249,6.07\n",
+    " 39    UMa,2.86374966228193,0.998313787730323,5.8\n",
     "          ,2.82051919927099,-1.01792934926802,6.42\n",
+    " 40    LMi,2.80803338231442,0.459467621861129,5.51\n",
     "          ,2.84327560759507,-0.209875842552318,6.24\n",
+    "          ,2.84978702826597,0.806409988336736,5.18\n",
+    " 41    LMi,2.8391807966577,0.404712764716618,5.08\n",
+    " 35    Sex,2.8336762967091,0.0828643543752419,5.79\n",
+    "          ,2.85925208305563,-0.546011712075993,5.64\n",
+    "          ,2.81971366269315,1.17655068945343,6\n",
+    "          ,2.82004930293391,-1.10887069957054,4.82\n",
     "          ,2.82944722967542,0.344852819510024,6.27\n",
+    "          ,2.85576142455164,-1.02597725637443,5.38\n",
+    "   The Car,2.87831644873126,-1.11012636700462,2.76\n",
+    "          ,2.84871297949551,-1.03730735210196,4.57\n",
     " 36    Sex,2.82696349189374,0.0434247614169811,6.28\n",
     " 41    UMa,2.84891436363997,1.00122266981698,6.34\n",
+    " 42    LMi,2.88402233282432,0.535505799606349,5.24\n",
+    "          ,2.8743558938902,-1.11266679069363,5.77\n",
+    "          ,2.81924376635607,-1.08278287539004,4.82\n",
+    "          ,2.86576350372654,-1.36513836326823,5.97\n",
     "          ,2.82635933946036,0.111230802856961,6.37\n",
+    " 51    Leo,2.85159948556612,0.329716936385784,5.49\n",
+    " 52    Leo,2.85267353433658,0.247744639183784,5.48\n",
     "   Eta Car,2.81917663830792,-1.01780329771093,6.21\n",
     "          ,2.83602577839448,-1.20672064482888,6.26\n",
     "          ,2.8530763026255,-1.20680791129148,6.46\n",
     "          ,2.84555796123229,-1.24888973881179,6.27\n",
+    "          ,2.88851991205062,-0.291528162724786,5.42\n",
     "          ,2.89456143638444,1.1367717269184,6.39\n",
+    "   Mu  Vel,2.88073305846479,-0.847880950618845,2.69\n",
     "          ,2.84126176615046,-1.0366673980429,6.25\n",
     "          ,2.87408738169759,-0.257227594786287,6.67\n",
+    "          ,2.84085899786154,-1.1080222756286,5.34\n",
+    "          ,2.8585808025741,-1.11241468757945,5.23\n",
+    "          ,2.89590399734751,-0.964168360169778,5.23\n",
+    "          ,2.88744586328016,-1.11032029247706,4.85\n",
+    " 43    LMi,2.90422787531856,0.513403143884565,6.15\n",
+    "          ,2.88194136333156,-0.000717524248042114,5.93\n",
+    "          ,2.84649775390644,-0.529038385100348,5.88\n",
     "          ,2.87502717437174,-0.986673411246883,6.36\n",
+    " 53    Leo,2.85247215019212,0.184049817759613,5.34\n",
+    "          ,2.83468321743141,-1.01370177396874,6\n",
     " 40    Sex,2.85502301602196,-0.0693913821772079,6.61\n",
+    " 44    LMi,2.9038922350778,0.488236465698169,6.04\n",
+    "   Del1Cha,2.8354216259611,-1.3880652022479,5.47\n",
+    "   Nu  Hya,2.88214274747602,-0.275873528961759,3.11\n",
+    "          ,2.89019811325446,-0.142195852669427,5.86\n",
+    "   Del2Cha,2.87717527191265,-1.38683377549788,4.45\n",
+    " 43    UMa,2.85542578431088,0.98754607587288,5.67\n",
+    " 42    UMa,2.87234205244559,1.03532931228304,5.58\n",
+    " 41    Sex,2.8604603879224,-0.123957161986086,5.79\n",
+    "          ,2.90832268625594,-0.592398685084553,5.61\n",
+    "          ,2.86415243057085,-1.02409617929173,5.91\n",
+    "          ,2.84777318682136,-0.0507454480017351,5.95\n",
     "          ,2.88623755841339,0.91743716944763,6.65\n",
     "          ,2.88771437547277,0.916360883075567,6.44\n",
+    "          ,2.89046662544707,1.21918035643339,5.93\n",
     "          ,2.86327976594485,0.017894472969753,6.38\n",
     "          ,2.89335313151768,0.00351489918804414,6.31\n",
+    " 44    UMa,2.89556835710675,0.952687972201105,5.1\n",
+    " 46    LMi,2.8743558938902,0.59716440356986,3.83\n",
+    " 45Ome UMa,2.9280583324131,0.753807703936351,4.71\n",
+    "          ,2.88267977186125,-0.03045114731049,6.12\n",
+    "          ,2.8863718145097,-0.990639187158359,5.25\n",
+    "          ,2.88885555229138,-0.346641781993318,5.24\n",
     "          ,2.89342025956583,-0.254022976354153,6.38\n",
+    "          ,2.90791991796701,-0.0326522014227272,5.45\n",
+    " 48    LMi,2.91026939965239,0.444898970743788,6.2\n",
+    "          ,2.87751091215342,-0.213662237401784,5.66\n",
+    "          ,2.93175037506155,0.594017962779459,5.72\n",
+    "          ,2.88898980838769,-0.997397489873026,3.78\n",
+    " 46    UMa,2.91758635690114,0.584806502838378,5.03\n",
+    " 54    Leo,2.90738289358178,0.431964141731785,4.5\n",
     " 54    Leo,2.90805417406332,0.431949597321352,6.3\n",
     "          ,2.87355035731236,-0.337459410873104,6.44\n",
+    "          ,2.90563756432979,-1.20915925764486,5.99\n",
+    "          ,2.85931921110379,-0.728655570160388,6.11\n",
+    "          ,2.88180710723525,0.733183729941951,6.03\n",
+    " 55    Leo,2.91490123497499,0.012862106959836,5.91\n",
+    "          ,2.89335313151768,-1.05022278856672,5.93\n",
+    " 56    Leo,2.86435381471531,0.10795346237266,5.81\n",
     "          ,2.88180710723525,-1.36904596153797,6.33\n",
+    "          ,2.88502925354663,0.390110176641599,6.14\n",
     " 50    LMi,2.9085240704004,0.445058959258554,6.35\n",
+    "          ,2.88106869870556,-1.03817516859115,5.92\n",
+    "          ,2.95168740536318,1.35734255927599,6.2\n",
+    "   Iot Ant,2.92020435077913,-0.643367147379599,4.6\n",
+    "          ,2.87730952800896,-0.859312857219408,5.91\n",
+    "          ,2.89946178389966,0.905515601029147,6.17\n",
+    "          ,2.9316832470134,-1.01696941817942,6.11\n",
+    " 47    UMa,2.91302164962669,0.705641464718118,5.05\n",
+    "          ,2.91946594224944,0.629942656549676,6\n",
+    "          ,2.88778150352093,-1.30725645788056,6.13\n",
+    "          ,2.89952891194781,0.794580534517663,5.47\n",
     "          ,2.93060919824294,0.20430533335637,6.55\n",
+    "          ,2.89409154004737,-0.563091698061482,5.71\n",
     "          ,2.9141628264453,0.898878501734757,6.43\n",
+    "          ,2.9169150764196,-0.273076154021757,5.89\n",
+    "          ,2.90745002162994,0.748945022714822,6.02\n",
     "          ,2.89194344250645,1.10690720416205,6.39\n",
+    "  7Alp Crt,2.93785902744353,-0.308942670150241,4.08\n",
+    " 49    UMa,2.9474583383295,0.684382384801465,5.08\n",
+    "          ,2.89536697296229,-0.242891654235878,5.88\n",
+    "          ,2.89422579614367,-1.05906094197335,6.16\n",
+    " 58    Leo,2.92490331414988,0.0631372856908949,4.84\n",
+    "          ,2.95517806386717,-0.736402892784519,5.81\n",
+    "          ,2.89227908274722,-0.729096750610198,4.39\n",
+    " 59    Leo,2.93993999693629,0.10648932505571,4.99\n",
+    " 48Bet UMa,2.95195591755579,0.984060265505703,2.37\n",
+    "          ,2.89133929007307,-0.875845003745243,6.15\n",
     "          ,2.95658775287839,-0.247962805340283,6.34\n",
+    "          ,2.934569753084,-0.526400998675112,6.07\n",
+    " 61    Leo,2.95088186878534,-0.0264465863045252,4.74\n",
+    " 60    Leo,2.91510261911945,0.352202594915645,4.42\n",
+    " 50Alp UMa,2.95155314926687,1.07775535751693,1.79\n",
     "          ,2.92127839954959,-0.439275132042917,6.23\n",
+    "          ,2.91248462524146,0.0131336026212573,6.14\n",
     "          ,2.89274897908429,-1.40401072421959,6.71\n",
+    "          ,2.91288739353038,-0.186687204184849,5.5\n",
+    " 62    Leo,2.94202096642906,1.45444104332861E-05,5.95\n",
     "          ,2.91449846668607,-0.524282362888663,6.46\n",
     "          ,2.94188671033275,-0.21931031678671,6.34\n",
+    " 51    UMa,2.93913446035845,0.667438146646687,6\n",
+    " 63Chi Leo,2.90295244240364,0.128039293181028,4.63\n",
+    "          ,2.93913446035845,-0.808451053934207,5.67\n",
+    "   Eta Oct,2.89395728395106,-1.45571125517312,6.19\n",
+    "          ,2.97001336250912,-0.596820185856272,5.43\n",
+    "   Chi1Hya,2.92832684460572,-0.466114417429141,4.94\n",
+    "          ,2.94725695418504,-0.190434813939826,6.09\n",
+    "          ,2.90724863748548,-0.848360916163144,6.13\n",
+    "   Chi2Hya,2.97894139291355,-0.466216228302174,5.71\n",
     "          ,2.91376005815638,-0.88640909385662,6.3\n",
+    " 65    Leo,2.97874000876909,0.0341308831501113,5.52\n",
     "          ,2.95793031384147,-0.475990072113342,6.77\n",
     "          ,2.94275937495875,-0.855967642819752,6.32\n",
     " 64    Leo,2.96363619793453,0.407073807343622,6.46\n",
+    "          ,2.94531024078858,-1.00050514556894,6.02\n",
     "          ,2.92161403979035,-0.54825639941953,6.59\n",
+    "          ,2.94947217977411,-1.07470103132594,4.61\n",
     "          ,2.93846317987691,-1.10235480369643,6.41\n",
+    "          ,2.93262303968755,-0.72189241930891,5.15\n",
     "          ,2.98337184409169,-0.52054929754412,6.54\n",
+    "          ,2.97296699662788,-1.20640551593616,5.57\n",
+    "          ,2.97263135638711,1.1730406384022,6.06\n",
     "          ,2.93591231404708,-0.4891673079659,6.49\n",
+    " 67    Leo,2.98061959411739,0.430369104720935,5.68\n",
+    "          ,2.9447060883552,0.633719355125519,5.74\n",
+    "          ,2.97363827710942,-0.487286230883195,5.44\n",
+    " 52Psi UMa,2.9724971002908,0.776647276453421,3.01\n",
+    "          ,2.97075177103881,0.75411313655545,5.89\n",
+    "          ,2.9622265089233,-0.995274005949766,3.91\n",
+    "          ,2.960346923575,-1.04811869719071,5.13\n",
+    "          ,2.99075592938859,-0.552091275637106,5.81\n",
     "          ,2.94692131394427,1.19157021729421,6.4\n",
     "          ,2.98645973430676,0.251332260423995,6.3\n",
     "          ,2.99686458177057,-1.00434486992333,6.88\n",
+    " 11Bet Crt,2.98082097826185,-0.369558924699366,4.48\n",
     "          ,2.9918971062072,0.958083948471854,6.63\n",
     "          ,2.97538360636141,0.625065430917713,6.41\n",
     "          ,2.95202304560395,-0.550932570939255,6.38\n",
+    "   Psi Crt,2.97296699662788,-0.305432619099008,6.13\n",
     "          ,2.97860575267278,-0.353443717939285,6.4\n",
     "          ,2.96739536863113,-1.23156734598574,6.35\n",
+    "          ,2.97659191122818,-0.853446611677983,5.36\n",
     "          ,2.99048741719598,0.717131548960415,6.33\n",
+    "          ,2.98048533802109,-1.04165613082152,4.6\n",
+    "          ,3.0085448621493,-0.842358922791008,6.11\n",
+    "          ,2.95625211263763,-0.761448367550637,5.8\n",
+    "          ,2.99283689888135,-1.11404850968479,5.23\n",
+    " 69    Leo,2.99773724639657,0.00121688233958494,5.42\n",
+    " 68Del Leo,2.94960643587042,0.358204588287781,2.56\n",
+    "          ,2.94329639934398,0.140683233984365,5.79\n",
+    " 70The Leo,2.96021266747869,0.269294607309103,3.34\n",
+    "          ,2.98927911232921,-0.920981157456541,5.76\n",
+    "          ,2.97786734414309,-1.01893291358791,5.74\n",
+    " 72    Leo,2.96162235648992,0.403093487021712,4.63\n",
     "          ,2.95497667972271,0.92106357578233,6.5\n",
     "          ,3.01337808161636,-0.737677952765837,6.21\n",
+    " 73    Leo,3.0149220267239,0.232259690209145,5.32\n",
     "          ,3.02284313640603,0.224182694281861,6.67\n",
+    "          ,3.00585974022316,0.86352588810825,5.88\n",
+    " 74Phi Leo,3.0029061061044,-0.0409861486010002,4.47\n",
+    "          ,3.02774348392124,-0.119821701286222,6.14\n",
     "          ,2.98679537454753,-0.770039265979898,6.31\n",
+    " 75    Leo,2.97733031975787,0.0350908142387082,5.18\n",
     "          ,2.96981197836466,-0.662973012643668,6.27\n",
     "          ,3.00659814875285,-0.580544990581425,6.45\n",
+    " 53Xi  UMa,2.97296699662788,0.550287768743379,4.87\n",
+    " 53Xi  UMa,2.97310125272419,0.550287768743379,4.41\n",
     "          ,3.01169988041252,-0.618990715493411,6.68\n",
+    " 54Nu  UMa,2.99686458177057,0.57760217153709,3.48\n",
     "          ,2.98652686235491,0.209172862714709,6.66\n",
+    "          ,2.97947841729878,-1.1549958731913,6.06\n",
+    " 55    UMa,2.97330263686865,0.666463671147657,4.78\n",
+    " 76    Leo,3.03217393509938,0.0288076289315286,5.91\n",
+    " 12Del Crt,2.99021890500336,-0.230756767797706,3.56\n",
     "          ,3.03928950820366,1.17112562436182,6.21\n",
+    "          ,2.98484866115107,-1.1068441783835,5.99\n",
     "          ,3.00438292316378,-1.36714064377121,6.35\n",
+    " 77Sig Leo,2.98243205141754,0.105233657621636,4.05\n",
     "          ,3.01143136821991,-1.30650984481166,6.27\n",
     "          ,3.03761130699982,0.996146670575764,6.43\n",
     "          ,2.97229571614634,-1.22182743913225,6.41\n",
+    "   Pi  Cen,2.97196007590558,-0.933906290194921,3.89\n",
+    "          ,3.04465975205595,1.12278000408157,6.02\n",
+    " 56    UMa,3.04237739841873,0.758917640135245,4.99\n",
+    "          ,3.00679953289731,-0.756672952791708,6.12\n",
+    "          ,3.00431579511562,0.0022980168484592,6.05\n",
+    " 13Lam Crt,3.00955178287161,-0.300545697193424,5.09\n",
+    "          ,2.99720022201134,-0.625443585588979,5\n",
     "          ,3.04808328251179,-1.33328610441933,6.43\n",
+    "          ,2.99102444158121,-0.963780509224891,5.79\n",
+    " 78Iot Leo,3.05466183123084,0.18376862582457,3.94\n",
+    " 79    Leo,2.98760091112537,0.0245703573586313,5.39\n",
+    "          ,3.0094175267753,-1.10034282691983,5.11\n",
+    " 14Eps Crt,3.03365075215876,-0.159532789905904,4.83\n",
+    "          ,3.01418361819421,-0.72135912425969,6.12\n",
+    "          ,3.06358986163528,0.199495981639763,5.8\n",
+    " 15Gam Crt,3.05553449585684,-0.284769860010119,4.08\n",
+    "          ,2.99941544760041,-1.25215738302247,5.59\n",
+    "          ,3.06553657503173,0.974776083512455,5.75\n",
+    " 81    Leo,3.03774556309613,0.287218169099722,5.57\n",
+    "          ,3.02834763635462,-0.62721800366184,5.22\n",
     " 80    Leo,3.05600439219392,0.0673697091269811,6.37\n",
+    "          ,3.03331511191799,-0.632720638942433,5.89\n",
     "          ,3.02747497172863,0.583822331065725,6.32\n",
+    "          ,3.04687497764502,-1.08257925364397,5.17\n",
     " 83    Leo,3.05405767879746,0.0525877399899514,6.5\n",
+    "          ,3.04063206916674,-1.06263886693994,5.3\n",
+    " 16Kap Crt,3.01035731944945,-0.203214502573873,5.94\n",
+    "          ,3.05674280072361,-0.922231976753804,5.81\n",
+    " 84Tau Leo,3.07305491642494,0.0498485426916825,4.95\n",
     "          ,3.06969851401726,-0.00523598775598299,6.25\n",
     "          ,3.07614280664001,-0.605129892350489,6.45\n",
+    "          ,3.01250541699037,1.07823532306123,5.83\n",
+    " 57    UMa,3.01196839260514,0.686559198229647,5.31\n",
+    "          ,3.04909020323409,-0.72127185779709,5.08\n",
     "          ,3.06473103845389,0.990256184350283,6.28\n",
+    "          ,3.02640092295817,-1.24835644376257,6.09\n",
+    " 85    Leo,3.06258294091297,0.269013415374059,5.74\n",
     "          ,3.02801199611385,0.948790070204984,6.41\n",
+    "          ,3.05815248973483,-0.410792328277732,5.76\n",
+    "          ,3.08272135535906,1.41593714077489,6.15\n",
     "          ,3.04425698376703,0.814326995749254,6.35\n",
+    " 58    UMa,3.05244660564177,0.753516815727685,5.94\n",
+    " 87    Leo,3.03606736189229,-0.0522968517812856,4.77\n",
+    " 86    Leo,3.04962722761932,0.321310267155345,5.52\n",
+    "  1Lam Dra,3.04754625812656,1.21005616295491,3.84\n",
     "          ,3.08171443463676,0.836521766070449,6.42\n",
     "          ,3.02875040464354,0.8515315976376,6.56\n",
+    " 88    Leo,3.07533727006216,0.250706850775363,6.2\n",
     "          ,3.03519469726629,-1.05979301063182,6.38\n",
+    "          ,3.0473448739821,1.06609074034944,5.48\n",
     "          ,3.07896218466246,-0.335510459875043,6.24\n",
+    "   Omi1Cen,3.07694834321785,-1.02202602487339,5.13\n",
+    "   Omi2Cen,3.08057325781815,-1.02074126861845,5.15\n",
+    "          ,3.04103483745566,-0.501549449381437,5.81\n",
+    "          ,3.04130334964827,-0.501588234475926,5.64\n",
+    "          ,3.05070127638978,-0.440753813770301,6.16\n",
+    "          ,3.08319125169614,-0.10773044807935,5.95\n",
+    "          ,3.08399678827398,-0.690515277867501,5.64\n",
+    "          ,3.04613656911533,-1.13512336040262,5.9\n",
+    "          ,3.09205215405242,-0.539529753159558,5.04\n",
+    "   Xi  Hya,3.02391718517648,-0.52608102164558,3.54\n",
+    "          ,3.04338431914104,-0.274356062139886,6.05\n",
     "          ,3.09936911130116,0.642552660395335,6.4\n",
+    "          ,3.07386045300278,-0.687887587715887,5.39\n",
     "          ,3.04157186184089,0.192398309348319,6.55\n",
+    " 89    Leo,3.05768259339776,0.0534070751110265,5.77\n",
+    " 90    Leo,3.08520509314075,0.293161984830125,5.95\n",
+    "          ,3.0390881240592,0.956183478841905,5.63\n",
+    "          ,3.0677518006208,-0.543994887162577,5.98\n",
     "          ,3.03761130699982,0.356769539791696,6.45\n",
+    "          ,3.08950128822258,-0.937867217969586,4.62\n",
+    "  2    Dra,3.04063206916674,1.20991071885058,5.2\n",
+    "          ,3.10440371491268,-0.852826050166163,5.5\n",
+    "          ,3.05023138005271,-0.813803396973656,5.71\n",
     "          ,3.0907767211375,0.190434813939826,6.56\n",
+    "          ,3.06090473970913,0.484871858751269,5.8\n",
+    "          ,3.10715596488698,-0.809105552403705,5.25\n",
+    "   Lam Cen,3.09534142841194,-1.09921321104284,3.13\n",
+    " 21The Crt,3.0917836418598,-0.143078213569046,4.7\n",
+    "          ,3.08386253217767,-0.566010276421761,5.74\n",
     "          ,3.09164938576349,-0.641621818127604,6.31\n",
+    " 91Ups Leo,3.11326461726896,0.0143795737817088,4.3\n",
+    "          ,3.06681200794665,-1.06373939399606,5.83\n",
     "          ,3.04284729475581,-0.541260538001119,6.29\n",
+    "          ,3.11239195264297,0.883456578538663,6.14\n",
+    "          ,3.04204175817796,-1.05970574416922,5.15\n",
+    "          ,3.08674903824828,-0.807263260415488,5.44\n",
+    " 59    UMa,3.0732563005694,0.761409582456149,5.59\n",
+    "          ,3.05875664216822,0.155057959629263,6.17\n",
+    "   Pi  Cha,3.06218017262405,-1.29334715336953,5.65\n",
+    " 60    UMa,3.09057533699304,0.817410410761111,6.1\n",
     "          ,3.11165354411327,1.12306604415343,6.46\n",
     "          ,3.08883000774104,0.586876657256716,6.27\n",
+    "  1Ome Vir,3.08265422731091,0.141967990239305,5.36\n",
     "          ,3.07795526394015,-0.0272950102464669,6.22\n",
+    "          ,3.10621617221283,-1.15854470933702,5.96\n",
     "          ,3.10588053197206,0.787293784890586,6.44\n",
+    "          ,3.05540023976053,-1.05022763670353,5.15\n",
+    " 24Iot Crt,3.09943623934931,-0.223368207297597,5.48\n",
     "          ,3.05049989224532,-0.406293257317036,6.42\n",
     "          ,3.1185677330731,-0.236167288478888,6.21\n",
+    "          ,3.11762794039895,-0.268426790819917,6.19\n",
+    "          ,3.08943416017442,-1.12752148188283,5.17\n",
     "          ,3.09111236137826,1.01177706365474,6.37\n",
+    "   Omi Hya,3.07151097131741,-0.580414090887525,4.7\n",
+    " 92    Leo,3.11756081235079,0.3726762766689,5.26\n",
+    " 61    UMa,3.06271719700928,0.596931693002927,5.33\n",
+    "          ,3.11151928801697,-0.908119050496705,5.96\n",
     "          ,3.06996702620987,-0.502717850352911,6.44\n",
+    "          ,3.12628745861077,-1.08053333990969,4.94\n",
     "          ,3.11722517211003,0.962941781556572,6.27\n",
+    " 62    UMa,3.10473935515345,0.554074163592844,5.73\n",
+    "          ,3.0852722211889,-0.748818971157734,5.55\n",
+    "          ,3.11776219649526,-0.549783562515025,5.22\n",
+    "  3    Dra,3.10118156860131,1.16492000924362,5.3\n",
     "          ,3.07003415425803,0.387652171278374,6.59\n",
     "          ,3.0677518006208,-0.343936521652727,6.22\n",
     "          ,3.06030058727575,-1.4468779499033,6.33\n",
+    "          ,3.10393381857561,-0.642450849522302,5.98\n",
     "          ,3.13743071460427,-1.37346261417288,6.39\n",
+    "          ,3.14139126944533,-0.0928999975742093,6.07\n",
+    "          ,3.1093040624279,-1.07356171917533,5.03\n",
+    "          ,3.08950128822258,0.440142948532103,6.02\n",
+    "          ,3.13843763532657,-1.0667743276398,6.1\n",
+    " 27Zet Crt,3.13326877561874,-0.308036068566566,4.73\n",
+    "  2Xi  Vir,3.09910059910855,0.144135107393865,4.85\n",
     "          ,3.09305907477472,-0.853994451137637,6.26\n",
+    "  3Nu  Vir,3.14541895233455,0.113960303881608,4.03\n",
+    " 63Chi UMa,3.08453381265921,0.833908620329268,3.71\n",
+    "          ,3.13508123291889,-0.773355391558687,5.29\n",
+    "   Lam Mus,3.12501202569585,-1.13920064346075,3.64\n",
+    "          ,3.15515251931683,0.970897574063579,5.27\n",
+    "          ,3.12185700743263,-1.06153833988382,4.11\n",
+    "          ,3.12225977572155,-0.689395358264138,4.91\n",
+    "          ,3.09426737964149,-0.595036071509789,6.17\n",
     "          ,3.10594766002022,-0.518590650272437,6.48\n",
+    "          ,3.11051236729466,-0.982683394651352,5.41\n",
+    " 93    Leo,3.16421480581757,0.352886182206009,4.53\n",
+    "  4    Vir,3.15857604977266,0.143916941237366,5.32\n",
     "          ,3.12078295866217,-0.169064226876517,6.26\n",
+    "   Mu  Mus,3.1084313978019,-1.13769772104931,4.72\n",
+    "          ,3.14118988530087,0.249305739236957,5.88\n",
+    "          ,3.14978227546454,-0.440700484265379,5.11\n",
+    "          ,3.09520717231564,0.00556081292232638,6.15\n",
+    " 94Bet Leo,3.09842931862701,0.254328408973251,2.14\n",
+    "          ,3.11360025750973,0.28348995189199,6.04\n",
+    "          ,3.14958089132007,0.609672596542486,5.7\n",
+    "          ,3.14877535474223,-1.08579841648654,4.32\n",
+    "          ,3.16958504966986,-1.21778894116861,4.97\n",
+    "          ,3.12413936106985,-0.246721682316643,6.13\n",
+    "  5Bet Vir,3.15394421445006,0.0308002131608888,3.61\n",
+    "          ,3.13447708048551,-1.07076919237214,5.7\n",
     "          ,3.14776843401993,-0.466390761227374,6.48\n",
     "          ,3.17220304354785,0.214307039597659,6.35\n",
+    "          ,3.10527637953868,-0.0814486984264021,5.64\n",
     "          ,3.1149428184728,0.582503637853107,6.27\n",
+    "          ,3.11400302579865,-0.782368077890514,4.46\n",
     "          ,3.13172483051121,-0.206162169755019,6.35\n",
+    "          ,3.15817328148374,-0.509025276344146,5.85\n",
+    "          ,3.17106186672924,-1.13086669628248,4.9\n",
     "          ,3.18562865317857,0.658313953168206,6.45\n",
+    "          ,3.12024593427694,-0.960144406616569,5.57\n",
+    "   Bet Hya,3.17998989713367,-0.560110093922658,4.28\n",
+    "          ,3.14703002549024,-0.609701685363352,6.17\n",
+    " 64Gam UMa,3.17790892764091,0.937149693721544,2.44\n",
     "          ,3.17858020812244,0.00963324784364648,6.3\n",
+    "          ,3.13085216588521,-0.987681823703591,6.06\n",
     "          ,3.15005078765715,-0.632701246395189,6.46\n",
+    "          ,3.17247155574046,-0.423872601394067,5.3\n",
+    "  6    Vir,3.12393797692539,0.147373662783677,5.58\n",
     " 65    UMa,3.12742863542938,0.811175706822042,6.54\n",
     " 65    UMa,3.13481272072628,0.811049655264954,7.03\n",
     "          ,3.13870614751919,0.641520007254571,6.49\n",
+    "          ,3.19569786040162,-1.09468989939809,5.91\n",
+    " 95    Leo,3.1741497569443,0.273085850295379,5.53\n",
+    "          ,3.17361273255907,-0.480367939653762,5.93\n",
+    " 66    UMa,3.1981815981833,0.987832115944735,5.84\n",
+    " 30Eta Crt,3.12534766593661,-0.294073434550611,5.18\n",
+    "          ,3.19321412261993,-0.668650180849461,6.13\n",
     "          ,3.19556360430531,1.07423561019208,6.22\n",
     "          ,3.18307778734874,-0.819039384729639,6.26\n",
     "          ,3.1334701597632,-0.570456017877536,6.21\n",
     "          ,3.1481040742607,0.704128846033057,6.62\n",
+    "          ,3.18233937881905,-1.07426954714975,5.57\n",
     "          ,3.14253244626394,0.563285623533926,6.42\n",
     "          ,3.16052276316912,1.0727617766015,6.76\n",
+    "          ,3.15327293396853,-0.971847808878554,5.44\n",
     "          ,3.16011999488019,-0.681599554271897,6.79\n",
+    "          ,3.19690616526838,-1.11109114623002,5.61\n",
     "          ,3.20590132372097,-0.420469209352678,6.43\n",
+    "          ,3.14179403773425,0.00925994130919214,6.17\n",
+    "          ,3.16085840340988,0.578882079655219,5.96\n",
+    "          ,3.1518632449573,-0.877958791394881,6.05\n",
+    "   Eps Cha,3.18730685438241,-1.35748315524351,4.91\n",
     "          ,3.21402381754756,0.59402281091627,6.5\n",
+    "  7    Vir,3.21362104925864,0.0637966322972038,5.37\n",
+    "          ,3.16656428750294,1.41115202974234,6.17\n",
+    "          ,3.20133661644652,-0.166746817480814,5.55\n",
     "          ,3.19865149452038,-0.351906858570168,6.28\n",
+    "  8Pi  Vir,3.2119428480548,0.115438985608992,4.66\n",
+    "          ,3.21033177489911,-0.320112777363004,5.26\n",
     "          ,3.14837258645331,-0.00404819423726462,6.31\n",
+    "          ,3.18489024464888,-0.986048001598252,6.16\n",
+    "          ,3.19898713476115,0.629050599376434,5.59\n",
+    " 67    UMa,3.15944871439866,0.751286672794581,5.21\n",
+    "          ,3.17730477520752,-1.47250520108675,6.05\n",
     "          ,3.18871654339364,-1.23065104812845,6.42\n",
+    "          ,3.2009338481576,-1.20092227320281,5.89\n",
     "          ,3.21959544554431,-0.110241782947497,6.22\n",
+    "   The1Cru,3.15669646442436,-1.09409842670713,4.33\n",
+    "          ,3.20784803711742,-0.725460648001876,5.15\n",
     "          ,3.21415807364387,-1.28781058113126,6.44\n",
+    "  2    Com,3.18133245809674,0.37453311306755,5.87\n",
+    "   The2Cru,3.18482311660073,-1.09666793921701,4.72\n",
+    "          ,3.21100305538064,-1.181078849235,5.35\n",
+    "   Kap Cha,3.22147503089261,-1.31738906381575,5.04\n",
     "          ,3.19677190917208,1.49377882541384,6.27\n",
+    "          ,3.23570617710118,-1.03028240186269,5.96\n",
+    "  9Omi Vir,3.18019128127813,0.152420573204027,4.12\n",
+    "          ,3.18368193978212,1.34226000565667,5.8\n",
+    "          ,3.2167089394737,1.09838902778495,6.13\n",
     "          ,3.23483351247518,-1.12491318427846,6.33\n",
     "          ,3.23953247584594,-0.598754592443899,6.23\n",
     "          ,3.24369441483146,-0.0500618607113707,6.37\n",
     "          ,3.19435529943855,-1.17546470680775,6.23\n",
+    "          ,3.19878575061668,-1.12208672051759,6.06\n",
+    "   Eta Cru,3.23879406731625,-1.10630118706066,4.15\n",
+    "          ,3.23899545146071,-1.30259255026829,5.18\n",
+    "          ,3.18348055563766,-0.861121212249947,4.47\n",
     "          ,3.18294353125243,-0.859341946040275,6.37\n",
+    "          ,3.19623488478685,-0.825666787750406,5.34\n",
+    "   Del Cen,3.20536429933574,-0.860054622151506,2.6\n",
     "          ,3.20952623832126,-1.03241073392276,6.22\n",
+    "  1Alp Crv,3.20979475051388,-0.406157509486325,4.02\n",
+    "          ,3.24872901844298,-0.762253158261279,5.75\n",
+    "          ,3.24966881111713,-0.711546495354032,5.48\n",
+    " 10    Vir,3.23631032953456,0.0331224706934035,5.95\n",
     "          ,3.244365695313,1.30308706022302,6.35\n",
+    "          ,3.18858228729733,-0.581107374451512,6.17\n",
+    " 11    Vir,3.1897905921641,0.101350300035949,5.72\n",
+    "  2Eps Crv,3.1952950921127,-0.373156242213199,3\n",
+    "          ,3.2306044454415,-0.63058261060874,6.06\n",
     "  3    Com,3.22765081132274,0.293375302849814,6.39\n",
+    "          ,3.2471179452873,0.476150060628109,6.01\n",
+    "          ,3.19616775673869,-1.05980755504226,6.08\n",
+    "  3    Crv,3.19482519577562,-0.39091011921543,5.46\n",
     "          ,3.19348263481255,-0.778019299170961,6.61\n",
     "          ,3.23174562226012,-0.883844429483551,6.23\n",
+    "   Rho Cen,3.24208334167577,-0.901137733488728,3.96\n",
+    "          ,3.18958920801964,1.42610853180457,6\n",
+    "  4    Com,3.25832832932895,0.451521525627744,5.66\n",
     " 68    UMa,3.24987019526159,0.995787908451742,6.43\n",
     "          ,3.19556360430531,0.498049094603826,6.49\n",
+    "  5    Com,3.2064383481062,0.358524565317313,5.57\n",
+    "          ,3.22348887233722,-1.0655089639321,5.92\n",
+    "          ,3.25678438422142,-1.21907854556036,6.17\n",
+    "          ,3.20992900661019,1.35466153961945,5.14\n",
     "          ,3.21576914679955,-0.591220587839457,6.5\n",
+    "          ,3.23228264664534,-0.647008098124731,5.76\n",
     "          ,3.27309649992275,-1.35134541404067,6.35\n",
+    " 12    Vir,3.23308818322319,0.179109566349107,5.85\n",
     "          ,3.24758784162437,-0.562122070699263,6.33\n",
+    "          ,3.20616983591358,-0.772763918867734,5.31\n",
     "          ,3.22523420158921,-1.10987911202725,6.22\n",
+    "          ,3.26094632320694,0.932611837666359,6.16\n",
+    "          ,3.28269581080872,-0.334332362629947,5.83\n",
+    "   Del Cru,3.21872278091831,-0.999220389313998,2.8\n",
+    "          ,3.22127364674815,-0.169078771286951,6.11\n",
     "          ,3.24799060991329,-0.699649167619605,6.26\n",
+    "          ,3.2184542687257,1.22522113490002,5.71\n",
+    " 69Del UMa,3.24141206119424,0.995404905643666,3.31\n",
     "          ,3.27014286580399,-0.395254049798171,6.54\n",
+    "  4Gam Crv,3.27202245115229,-0.287247257920589,2.59\n",
+    "  6    Com,3.21167433586218,0.260034665999911,5.1\n",
     "          ,3.24295600630177,-1.24590813467296,6.22\n",
     "          ,3.26262452441078,1.26625091673232,6.29\n",
+    "  2    CVn,3.22160928698892,0.709655721997706,5.66\n",
+    "  7    Com,3.23892832341255,0.417923937526853,4.95\n",
+    "          ,3.25181690865805,0.577030091393381,5\n",
+    "          ,3.22382451257799,-1.12237276058944,6.06\n",
+    "          ,3.22019959797769,-0.267146882701788,6.05\n",
+    "   Eps Mus,3.26155047564033,-1.15260089360662,4.11\n",
+    "          ,3.25537469521019,0.928360021683028,5.81\n",
+    "          ,3.25671725617326,0.505049804159048,5.7\n",
+    "   Bet Cha,3.24792348186514,-1.37336080329985,4.26\n",
+    "          ,3.27927228035288,-0.626679860475808,6.15\n",
     "          ,3.27524459746367,0.264315570804108,6.34\n",
     "          ,3.2323497746935,-0.0357016794769062,6.99\n",
     "          ,3.23302105517503,-0.0358034903499392,6.54\n",
+    "   Zet Cru,3.25517331106573,-1.11695739177145,4.04\n",
     "          ,3.26255739636263,0.527947554317851,6.23\n",
+    " 13    Vir,3.27423767674136,0.0137396197226443,5.9\n",
+    "          ,3.30028335942497,-0.957434298139167,5\n",
     "          ,3.2804134571715,1.50859473150854,6.33\n",
     "          ,3.22731517108198,0.453921353349236,6.48\n",
     "  8    Com,3.25013870745421,0.402031745060083,6.27\n",
     "          ,3.23429648808995,1.53065375399903,6.28\n",
+    "          ,3.28712626198686,1.31179916207256,5.38\n",
     "  9    Com,3.26423559756647,0.491431387856681,6.33\n",
+    " 15Eta Vir,3.29753110945067,0.01164037648344,3.89\n",
+    "  3    CVn,3.28987851196116,0.854934989678989,5.29\n",
+    "          ,3.24322451849439,-0.38090841297414,5.97\n",
     "          ,3.26645082315554,-1.11975476671145,6.21\n",
+    "          ,3.25530756716204,0.464596950607268,5.54\n",
+    "          ,3.25262244523589,0.453819542476203,6.15\n",
+    " 16    Vir,3.25705289641403,0.0578140314723122,4.96\n",
+    "  5Zet Crv,3.27410342064506,-0.380205433136531,5.21\n",
+    " 11    Com,3.28658923760163,0.310542555297902,4.74\n",
     "          ,3.28430688396441,0.472193980990255,7.13\n",
+    "          ,3.30363976183265,-0.217021996211873,5.14\n",
+    "   Eps Cru,3.26222175612186,-1.04019684164138,3.59\n",
+    " 70    UMa,3.2970612131136,1.00991537911927,5.55\n",
+    "          ,3.31041969469617,-0.970844244558657,5.92\n",
+    "   Zet2Mus,3.24738645747991,-1.16026094976815,5.15\n",
+    "   Zet1Mus,3.25356223791004,-1.18145700390626,5.74\n",
+    "          ,3.25208542085066,0.432385929634351,6.19\n",
+    "          ,3.30377401792896,-0.983037308638562,5.39\n",
+    " 12    Com,3.27826535963058,0.451099737725179,4.81\n",
     " 17    Vir,3.2805477132678,0.0925994130919214,6.4\n",
     "          ,3.30102176795466,-1.49835546656351,6.33\n",
     "          ,3.26047642686987,-1.15834593572777,6.36\n",
+    "  6    Crv,3.27094840238183,-0.404208558488265,5.68\n",
+    "          ,3.28947574367224,-0.603660906896728,5.32\n",
     "          ,3.29148958511684,-0.675389091016884,6.4\n",
+    "          ,3.30223007282142,-0.647323227017452,5.79\n",
+    "  4    CVn,3.30504945084388,0.742511545166499,6.06\n",
+    "  5    CVn,3.24832625015406,0.899930547422765,4.8\n",
+    " 13    Com,3.2711497865263,0.455506694086465,5.18\n",
     "          ,3.3063248837588,-0.70888002010793,6.25\n",
     "          ,3.28215878642349,0.44650370402826,6.42\n",
     "          ,3.27390203650059,-1.12101528228234,6.3\n",
+    "          ,3.26208750002556,-0.72405953646347,6.11\n",
+    "          ,3.26638369510739,-0.1813348611454,5.95\n",
+    "          ,3.27537885355997,-0.458163473058945,6.09\n",
+    "          ,3.27994356083442,-0.60761213839777,5.73\n",
+    "          ,3.27094840238183,0.417589416086888,6.03\n",
+    " 71    UMa,3.25497192692127,0.99095431605108,5.81\n",
     "          ,3.2592681220031,1.11356854414049,6.32\n",
+    "  6    CVn,3.31901208485983,0.681003233444132,5.02\n",
+    "          ,3.29652418872837,-1.09741940042273,4.86\n",
+    "   Alp1Cru,3.30323699354373,-1.09782664391487,1.33\n",
+    "   Alp2Cru,3.30404253012157,-1.09782179577806,1.73\n",
+    "          ,3.29746398140252,-0.8822493924727,4.82\n",
+    " 14    Com,3.28739477417947,0.475922198197987,4.95\n",
     "          ,3.31975049338952,-0.821817367122397,6.26\n",
+    "          ,3.32444945676028,-0.544019127846633,5.55\n",
+    "          ,3.292429377791,-1.08578387207611,6\n",
+    " 15Gam Com,3.33062523719041,0.49337549071793,4.36\n",
+    " 16    Com,3.33465292007963,0.468194268121101,5\n",
+    "          ,3.29793387773959,-0.99497826960429,5.5\n",
     "          ,3.28752903027578,1.25541048282271,6.24\n",
     "          ,3.31592419464477,0.150277696733523,6.37\n",
     "          ,3.3257248896752,-0.268223169073851,6.35\n",
+    "   Sig Cen,3.26698784754077,-0.868640672443956,3.91\n",
+    "          ,3.28914010343147,-1.11105236113553,6.04\n",
+    " 73    UMa,3.30652626790326,0.972371407654152,5.7\n",
     "          ,3.32867852379395,-0.059074547043197,6.22\n",
     "          ,3.29800100578775,-1.05077062802638,6.22\n",
+    "          ,3.29397332289853,-0.679956035892935,5.44\n",
+    "          ,3.30860723739602,-0.970267316278137,6.15\n",
     "          ,3.31491727392246,0.45774168515638,6.54\n",
     "          ,3.32364392018243,0.452025731856098,6.65\n",
+    " 17    Com,3.33720378590947,0.452263290559842,5.29\n",
+    " 18    Com,3.30424391426603,0.420779490108589,5.48\n",
+    "          ,3.34049306026899,-0.968226250680665,5.8\n",
+    "          ,3.34586330412128,-0.702737430768272,6.02\n",
+    " 20    Com,3.32612765796412,0.36470593975146,5.69\n",
+    "  7Del Crv,3.33780793834285,-0.2702545383977,2.95\n",
     "          ,3.27893664011212,-0.220032689171563,6.35\n",
+    "          ,3.29598716434314,-0.389266600836469,5.63\n",
+    " 74    UMa,3.34505776754344,1.01937409403772,5.35\n",
     "  7    CVn,3.27638577428228,0.8994651262889,6.21\n",
+    " 75    UMa,3.27826535963058,1.02568636816577,6.08\n",
+    "   Gam Cru,3.29014702415377,-0.992859633817841,1.63\n",
     "   Gam Cru,3.29927643870267,-0.993422017687928,6.42\n",
+    "  4    Dra,3.28148750594195,1.20778723492732,4.95\n",
+    " 21    Com,3.2776612071972,0.428778915846896,5.46\n",
     "          ,3.3397546517393,0.926362589316857,6.21\n",
+    "          ,3.33096087743118,-1.02234600190292,5.48\n",
+    "          ,3.29464460338006,-1.27406126513499,5.88\n",
+    "          ,3.30558647522911,0.132717745203735,6.05\n",
+    "          ,3.3517705723588,-1.09072412348661,5.95\n",
+    "          ,3.32881277989026,-0.0863501647424194,6.19\n",
+    "   Gam Mus,3.31881070071537,-1.2543148039034,3.87\n",
     "          ,3.28726051808317,-0.549192089824071,6.46\n",
+    "  8Eta Crv,3.28685774979424,-0.275829895730459,4.31\n",
+    "          ,3.32955118841995,-0.211897515602545,5.74\n",
     " 20    Vir,3.28947574367224,0.179691342766438,6.26\n",
     "          ,3.31565568245215,-0.31779051983049,6.26\n",
+    "          ,3.33163215791271,-0.194948429310956,5.58\n",
     " 22    Com,3.33149790181641,0.423819271889145,6.29\n",
+    " 21    Vir,3.34841416995112,-0.149191714087838,5.48\n",
     "          ,3.36506192589322,-0.839338533557695,6.38\n",
+    "          ,3.33780793834285,0.580278343056815,5.42\n",
     "          ,3.34921970652896,0.582673322641496,6.24\n",
+    "  8Bet CVn,3.34532627973605,0.721824545393555,4.26\n",
+    "  9Bet Crv,3.32109305435259,-0.394502588592452,2.65\n",
+    "  5Kap Dra,3.32451658480843,1.21803619614598,3.87\n",
+    "          ,3.34673596874728,-0.75619298724741,5.77\n",
+    " 23    Com,3.35855050522232,0.394953465315883,4.81\n",
     "          ,3.3332432310684,-1.04995614104211,6.22\n",
     " 24    Com,3.30276709720665,0.320743035148447,6.56\n",
+    " 24    Com,3.30478093865126,0.320738187011636,5.02\n",
+    "          ,3.30518370694018,0.381902281020415,5.85\n",
+    "          ,3.3553954869591,-0.715201990509599,5.13\n",
+    "  6    Dra,3.3490183223845,1.22211347920411,4.94\n",
+    "          ,3.30028335942497,-0.665494043785438,5.8\n",
+    "          ,3.37298303557535,-0.339864086731407,6.2\n",
+    "   Alp Mus,3.31780377999307,-1.20191129311227,2.69\n",
+    " 25    Vir,3.36230967591892,-0.0727462928504859,5.87\n",
+    "          ,3.32995395670887,1.0382430425065,5.5\n",
+    " 25    Com,3.37694359041641,0.298267072892209,5.68\n",
+    "   Tau Cen,3.35969168204093,-0.828313870449264,3.86\n",
+    "          ,3.35969168204093,-0.468814829632921,5.45\n",
     "          ,3.33122938962379,-1.30254891703699,6.49\n",
     "          ,3.31330620076677,0.0572904326967139,6.33\n",
     "          ,3.37788338309056,-1.16600114375249,6.25\n",
+    "          ,3.33747229810208,0.0323710094876837,5.71\n",
     "          ,3.34767576142143,0.121969425893537,7.08\n",
+    "          ,3.36727715148229,-0.309791094092182,6\n",
+    "          ,3.31646121902999,-0.516229607645434,5.89\n",
     "  9    CVn,3.36955950511951,0.71339363547906,6.37\n",
     "          ,3.31458163368169,0.395481912228293,6.38\n",
+    " 26Chi Vir,3.33163215791271,-0.104797325308637,4.66\n",
     "          ,3.38640864520607,-1.14298703831022,6.26\n",
+    " 26    Com,3.32156295068967,0.367609973701306,5.46\n",
     "          ,3.33445153593517,0.627479803049639,6.45\n",
+    "          ,3.38224670622055,-0.663443281914344,4.64\n",
+    "          ,3.35136780406988,-0.800311032228378,5.84\n",
+    "   Gam Cen,3.36210829177446,-0.821007728274944,2.17\n",
     "          ,3.33169928596087,-1.19716496717421,6.33\n",
+    "          ,3.34196987732837,-0.226655244055519,6.08\n",
+    "          ,3.34223838952099,-0.226631003371464,5.98\n",
+    "          ,3.39647785242912,-1.01777420889006,4.93\n",
+    " 27    Vir,3.36667299904891,0.181974815204464,6.19\n",
+    " 29Gam Vir,3.37365431605689,-0.009609007159591,3.65\n",
+    " 29Gam Vir,3.37365431605689,-0.009609007159591,3.68\n",
+    "          ,3.38654290130238,-0.318372296247821,6.03\n",
+    " 30Rho Vir,3.39177888905836,0.178644145215242,4.88\n",
+    " 31    Vir,3.39714913291066,0.118798744419081,5.59\n",
+    "          ,3.39238304149175,-1.09853447188929,5.31\n",
+    "          ,3.37237888314197,-0.823567544511202,4.66\n",
+    "          ,3.3914432488176,-0.943398942071046,6.08\n",
+    " 76    UMa,3.36600171856737,1.09454930343057,6.07\n",
+    "          ,3.34143285294314,-0.97431066237859,6\n",
     "          ,3.36707576733783,-0.99652967338384,6.4\n",
     "          ,3.36452490150799,-0.695028893238631,6.44\n",
+    "          ,3.38036712087225,-0.00738371236329823,5.93\n",
     "          ,3.40802387671154,-0.622224422746412,6.39\n",
+    "          ,3.33425015179071,-0.483039263036675,5.48\n",
     "          ,3.33485430422409,1.06736580033075,6.38\n",
+    "          ,3.34022454807638,-1.17231826601735,6.16\n",
+    "   Iot Cru,3.38882525493961,-1.03007393197981,4.69\n",
     "          ,3.36996227340844,0.769743529634421,6.33\n",
+    "   Bet Mus,3.36499479784507,-1.18493796613663,3.05\n",
+    " 10    CVn,3.41346124861199,0.685545937636128,5.95\n",
+    "          ,3.34841416995112,0.793082460243034,4.99\n",
+    " 32    Vir,3.38775120616915,0.133924931269698,5.22\n",
+    "          ,3.37278165143089,-0.968851660329297,4.65\n",
+    " 33    Vir,3.37251313923827,0.166504410640259,5.67\n",
+    "          ,3.40406332187048,-0.570451169740724,5.86\n",
+    " 27    Com,3.39426262684005,0.28933195674936,5.12\n",
     "          ,3.36848545634906,1.40710383550507,6.4\n",
+    "   Bet Cru,3.40466747430386,-1.01772572752195,1.25\n",
     "          ,3.34975673091419,0.103861634904096,6.34\n",
+    " 34    Vir,3.36492766979691,0.208707441580844,6.07\n",
     "          ,3.39151037686575,-0.0994498304059991,6.26\n",
     "          ,3.41876436441612,-0.404014633015821,6.44\n",
     " 35    Vir,3.41567647420106,0.0623567356643085,6.41\n",
+    "          ,3.3720432429012,1.09573224881247,5.89\n",
+    "          ,3.38647577325423,-0.460810555757803,5.66\n",
     " 28    Com,3.37023078560105,0.236545443150154,6.56\n",
+    "          ,3.41567647420106,-1.22196803509977,5.55\n",
+    "  7    Dra,3.39285293782882,1.16571025554382,5.43\n",
     "          ,3.41413252909352,0.433544634332203,6.31\n",
+    " 29    Com,3.42379896802765,0.246484123612899,5.7\n",
     " 11    CVn,3.40715121208555,0.845907758936729,6.27\n",
+    "          ,3.40392906577417,1.05278260480298,5.85\n",
     "          ,3.37586954164596,-1.04020168977819,6.75\n",
+    " 30    Com,3.37875604771656,0.480876994018927,5.78\n",
+    "   Iot Oct,3.45588617504508,-1.48137729145105,5.46\n",
     "          ,3.38607300496531,-0.829734374534915,6.24\n",
+    "          ,3.43749308985099,-0.893826743177596,5.73\n",
     "          ,3.38311937084655,0.399040444647637,6.43\n",
+    "          ,3.41507232176767,-0.558515056911808,4.91\n",
+    "          ,3.37412421239396,0.65479420584335,5.89\n",
+    "          ,3.38801971836176,-1.04144281280183,5.72\n",
     "          ,3.39486677927343,-0.168627894563519,6.41\n",
+    " 37    Vir,3.41366263275645,0.0533488974692933,6.02\n",
+    "          ,3.44037959592159,-0.668795624953794,5.98\n",
     "          ,3.37560102945334,-0.836114522578317,6.33\n",
+    "          ,3.44185641298097,-0.440904106011445,6.15\n",
     "          ,3.40151245604064,-0.910547967039064,6.24\n",
+    " 31    Com,3.42037543757181,0.480673372272861,4.94\n",
     " 32    Com,3.38499895619485,0.297995577230787,6.32\n",
+    "          ,3.37808476723503,-0.925853534951692,5.93\n",
     "          ,3.40554013892986,0.281390708652786,6.3\n",
+    "          ,3.40211660847402,-1.04146220534907,5.76\n",
+    "          ,3.38211245012424,-0.821293768346798,4.33\n",
+    "          ,3.40802387671154,-0.695009500691386,4.27\n",
+    "   Kap Cru,3.4387685227659,-1.04061862954394,5.9\n",
+    " 38    Vir,3.38788546226545,-0.042707237168939,6.11\n",
+    "          ,3.36425638931538,1.45591972505599,5.85\n",
+    "          ,3.37365431605689,1.45582761045658,5.28\n",
+    " 35    Com,3.39674636462173,0.370795199586195,4.9\n",
     "          ,3.40674844379662,-1.00477635409951,6.58\n",
     "          ,3.42400035217211,-0.0659055718100303,6.44\n",
+    "   Lam Cru,3.42984049236147,-1.0271844424404,4.62\n",
+    "   Mu 1Cru,3.42500727289441,-0.991734866077667,4.03\n",
+    "   Mu 2Cru,3.4266183460501,-0.991899702729244,5.17\n",
     " 41    Vir,3.43957405934375,0.21674565241364,6.25\n",
+    "          ,3.40231799261848,-0.180665818265469,6\n",
+    " 40Psi Vir,3.40567439502617,-0.147674247265965,4.79\n",
+    "          ,3.45575191894877,-0.765292940041836,5.89\n",
     "          ,3.39479965122528,0.585286468382676,6.26\n",
+    " 77Eps UMa,3.37949445624625,0.976681401279216,1.77\n",
+    "          ,3.40762110842262,-0.717053978771437,5.47\n",
+    "          ,3.42822941920578,-1.25340335418292,5.93\n",
+    "          ,3.45810140063415,-0.962791489315427,5.32\n",
+    "          ,3.45306679702263,0.82373722929959,5.84\n",
+    " 43Del Vir,3.43017613260224,0.0592975613365073,3.38\n",
+    "          ,3.45313392507078,-0.25609313077249,6.17\n",
     "          ,3.42634983385748,-0.445752242822541,6.62\n",
+    "          ,3.3962093402365,-0.886651500697175,5.16\n",
+    " 12Alp1CVn,3.38647577325423,0.668718054764816,5.6\n",
+    " 12Alp2CVn,3.38822110250622,0.668781080543361,2.9\n",
+    "  8    Dra,3.41983841318658,1.14211922182103,5.24\n",
+    "          ,3.40956782181908,0.94421342905531,5.82\n",
     "          ,3.43487509597299,-0.37081459213344,6.31\n",
+    "          ,3.40063979141464,0.805939719066059,6.12\n",
+    " 36    Com,3.46904327248319,0.303852126498591,4.78\n",
+    " 44    Vir,3.45205987630032,-0.0381887736609982,5.79\n",
+    "          ,3.44715952878511,-0.567139892298746,6.02\n",
+    "   Del Mus,3.43386817525069,-1.22960385057725,3.62\n",
+    " 37    Com,3.42554429727964,0.537299610226454,4.9\n",
+    " 46    Vir,3.45158997996325,-0.0459264000115063,5.99\n",
+    "          ,3.45548340675616,0.32067031309628,6.2\n",
+    "          ,3.4581685286823,1.31724361971142,6.01\n",
+    "  9    Dra,3.47300382732425,1.16234080046011,5.32\n",
+    " 38    Com,3.42064394976443,0.298853697446351,5.96\n",
+    "          ,3.42346332778688,-1.23087406242176,6.03\n",
+    " 78    UMa,3.46219621157152,0.983779073570659,4.93\n",
+    " 47Eps Vir,3.42634983385748,0.191273541608145,2.83\n",
+    "   Xi 1Cen,3.46105503475291,-0.846009569809762,4.85\n",
+    "          ,3.47058721759072,1.1102087853304,6\n",
+    "          ,3.47837407117655,-0.338889611232377,5.58\n",
     "          ,3.46635815055705,1.04224275537566,6.53\n",
     " 48    Vir,3.48951732717005,-0.0407825268549342,6.59\n",
     "          ,3.48542251623268,-0.71215251245542,6.26\n",
     "          ,3.46655953470151,-0.905564082397258,6.43\n",
+    "          ,3.45199274825217,-0.82966650061956,4.71\n",
+    "          ,3.4766958699727,-0.705311791414964,5.59\n",
+    "   Xi 2Cen,3.50287580875262,-0.839396711199428,4.27\n",
+    " 14    CVn,3.4849526198956,0.624808479666726,5.25\n",
+    "          ,3.4664252786052,-1.01472473083588,5.99\n",
+    "          ,3.49542459540757,0.790086311693778,5.63\n",
+    " 39    Com,3.458034272586,0.369195314438534,5.99\n",
     "          ,3.5024730404637,-0.595821469673186,6.54\n",
     "          ,3.4432661019922,0.506659385580332,6.54\n",
+    " 40    Com,3.4599138579343,0.394725602885762,5.6\n",
     "          ,3.48757061377359,1.27453153440567,6.31\n",
+    "          ,3.48535538818452,-0.917000837134632,5.71\n",
+    "   The Mus,3.44769655317034,-1.12911651889368,5.51\n",
+    "          ,3.4600481140306,1.08283620489496,6.14\n",
+    " 41    Com,3.44830070560372,0.482142357726622,4.8\n",
+    " 49    Vir,3.50616508311215,-0.161612640597864,5.19\n",
+    "          ,3.50589657091953,0.480940019797471,6.19\n",
+    "          ,3.48193185772869,-0.122444543301024,5.55\n",
+    " 45Psi Hya,3.44709240073695,-0.39936526981398,4.95\n",
     "          ,3.46199482742706,-0.147683943539587,6.32\n",
+    "          ,3.45930970550091,0.174920776144321,5.78\n",
+    " 50    Vir,3.503479961186,-0.168783034941474,5.94\n",
+    "          ,3.50683636359368,0.294063738276989,5.91\n",
+    " 51The Vir,3.51918792445395,-0.0778610771861915,4.38\n",
+    "          ,3.49461905882972,0.6531555356012,6.02\n",
+    "          ,3.52543083293224,-0.897676163805606,6.06\n",
+    "          ,3.52066474151333,-1.18783715194966,5.91\n",
     " 15    CVn,3.49904951000786,0.672543234708771,6.28\n",
+    " 42Alp Com,3.52227581466902,0.305946521600984,5.22\n",
+    " 42Alp Com,3.52227581466902,0.305946521600984,5.22\n",
+    "          ,3.46320313229383,-0.728970699053109,5.79\n",
+    " 17    CVn,3.45132146777063,0.671932369470573,5.91\n",
     "          ,3.52267858295794,-1.09427295963233,6.33\n",
+    "          ,3.48253601016207,-0.744053252672427,5.25\n",
     "          ,3.51005850990506,1.08610384910564,6.54\n",
+    "          ,3.47911247970623,-1.01367268514787,4.6\n",
+    "          ,3.48757061377359,-1.35355131628971,5.85\n",
+    "          ,3.52140315004302,-1.14795637854159,5.9\n",
     "          ,3.50401698557123,-0.44415720581169,6.5\n",
+    "          ,3.4600481140306,-0.631755859717025,4.85\n",
+    "          ,3.53093533288084,-1.01549073645203,6.16\n",
+    " 53    Vir,3.46045088231953,-0.27578626249916,5.04\n",
     "          ,3.52408827196917,-0.720825829210469,6.22\n",
+    " 43Bet Com,3.52173879028379,0.486563858498341,4.26\n",
     "          ,3.46702943103858,0.423382939576147,6.33\n",
+    "          ,3.49166542471096,-0.860447321233204,5.89\n",
+    "          ,3.49992217463386,0.201692187615189,5.77\n",
     "          ,3.50394985752308,0.327278323569803,6.53\n",
+    "          ,3.48072355286192,-1.00035485332779,5.89\n",
+    "          ,3.48434846746222,-1.02794075178293,4.92\n",
     " 54    Vir,3.4960958758891,-0.299731210209159,6.28\n",
+    "          ,3.53731249745543,-0.748067509952014,6.16\n",
+    "          ,3.47676299802086,0.326846839393616,6.11\n",
+    "   Eta Mus,3.48884604668851,-1.15375959830447,4.8\n",
     "          ,3.50334570508969,-1.19241379309934,6.37\n",
+    " 55    Vir,3.47911247970623,-0.315366451424942,5.33\n",
+    "          ,3.52234294271717,-0.821061057779866,5.89\n",
+    "          ,3.51784536349088,0.700798176043834,4.92\n",
+    "          ,3.50650072335292,0.197774893071824,5.67\n",
+    "          ,3.48186472968053,-0.621841419938335,6.19\n",
+    "          ,3.53335194261437,-1.13204964166439,6.07\n",
+    " 57    Vir,3.5477844729674,-0.315153133405254,5.22\n",
+    "          ,3.49502182711864,-1.13824071237216,4.87\n",
     "          ,3.50307719289708,1.27058030290463,6.59\n",
+    " 19    CVn,3.51180383915705,0.713059114039095,5.79\n",
     "          ,3.50744051602707,-0.0106368121635432,6.68\n",
+    "          ,3.54449519860787,-0.532218762848426,5.1\n",
     "          ,3.49240383324065,0.332514311325786,6.45\n",
+    "          ,3.49623013198541,-0.733397047961639,5.84\n",
     "          ,3.48985296741082,1.40449068976389,6.25\n",
     "          ,3.51656993057596,0.345318240643889,6.45\n",
+    " 59    Vir,3.53563429625159,0.164482737590032,5.22\n",
+    "          ,3.51166958306074,-1.2560164999241,6.04\n",
+    "          ,3.49851248562263,0.238683471483847,5.33\n",
     "          ,3.51771110739457,0.0118100612718283,6.37\n",
+    " 60Sig Vir,3.52630349755824,0.0954646619472787,4.8\n",
+    "          ,3.528384467051,-0.88512433760168,6.19\n",
+    " 20    CVn,3.52120176589856,0.708123710765399,4.73\n",
+    "          ,3.51160245501259,1.19394580433164,6.2\n",
+    " 61    Vir,3.51455608913135,-0.308724503993741,4.74\n",
+    " 46Gam Hya,3.5561754789866,-0.398429579409439,3\n",
     "          ,3.5505367229417,0.064363864304102,6.62\n",
+    "          ,3.5192550525021,0.595123337972389,5.82\n",
+    " 21    CVn,3.50139899169324,0.867113509348461,5.15\n",
+    "          ,3.53751388159989,-1.01624704579456,6.18\n",
+    "          ,3.49193393690358,0.61310022926793,6.02\n",
+    "          ,3.5414073083928,-0.894515178604771,5.48\n",
+    "          ,3.55550419850506,-0.945958758307304,6.02\n",
+    "   Iot Cen,3.53872218646666,-0.61588790793431,2.75\n",
+    "          ,3.56812427155795,-0.787482862226219,5.77\n",
+    "          ,3.57000385690625,-1.25407724519966,6.05\n",
     "          ,3.54650904005248,0.0513417688294999,6.26\n",
+    " 23    CVn,3.51616716228704,0.700759390949345,5.6\n",
     "          ,3.53516439991451,-0.323079837091395,6.21\n",
+    "          ,3.54731457663032,-1.03022907235776,6.18\n",
+    "          ,3.55026821074908,-1.02994788042272,4.53\n",
+    "          ,3.52113463785041,-0.904376288878539,5.83\n",
+    "          ,3.55087236318246,0.0364288999985705,5.69\n",
+    "          ,3.57013811300255,-0.803845323963666,6.16\n",
     "          ,3.5072391318826,-0.827935715777999,6.38\n",
+    " 64    Vir,3.51240799159043,0.0899668748034966,5.87\n",
+    "          ,3.50878307699014,-1.10765866536777,4.53\n",
+    "   Iot1Mus,3.5220073024764,-1.27604900122754,5.05\n",
     "          ,3.51542875375735,-0.57264252757934,6.22\n",
+    " 63    Vir,3.505225290438,-0.283872954700067,5.37\n",
     "          ,3.50448688190831,0.766252871130433,6.35\n",
     "          ,3.57396441174731,-0.840846304105946,6.48\n",
+    " 65    Vir,3.52912287558069,-0.0536785707724478,5.89\n",
+    "          ,3.5311367170253,-1.10854102626739,5.31\n",
+    "          ,3.57973742388852,-1.21077853533977,5.67\n",
+    " 66    Vir,3.55268482048261,-0.0844060618811702,5.75\n",
     "   Iot2Mus,3.54577063152279,-1.27946693767937,6.63\n",
+    "          ,3.57624676538454,0.646363295928856,6.07\n",
     "          ,3.54905990588232,0.216978362980573,6.44\n",
+    " 79Zet UMa,3.57826060682914,0.958626939794697,2.27\n",
+    " 79Zet UMa,3.57946891169591,0.958563914016152,3.95\n",
+    " 67Alp Vir,3.52804882681023,-0.18916945023213,0.98\n",
+    "          ,3.52147027809117,0.416338596789625,5.78\n",
+    "          ,3.52731041828054,-0.66749632428842,5.09\n",
+    "          ,3.5321436377476,-0.0140935337098542,5.97\n",
+    "          ,3.59215611279694,-0.706892284015381,5.69\n",
     "          ,3.52965989996592,-0.852699998609074,6.31\n",
+    " 80    UMa,3.53059969264007,0.959722618714004,4.01\n",
     "          ,3.54912703393047,-0.84856453790921,6.28\n",
+    " 68    Vir,3.57483707637331,-0.197086457644649,5.25\n",
     "          ,3.54093741205573,-0.695285844489619,6.4\n",
+    "          ,3.58785991771511,-1.1933155465462,6.2\n",
+    "          ,3.53912495475558,0.803341117735312,5.88\n",
+    " 69    Vir,3.55771942409413,-0.24480666827626,4.76\n",
+    "          ,3.54013187547788,-1.10521520441498,6.11\n",
     "          ,3.59289452132663,1.10411467735886,6.5\n",
+    "          ,3.56376094842796,-0.887233277114506,5.06\n",
+    " 70    Vir,3.56020316187582,0.240486978377574,4.98\n",
+    "          ,3.52771318656946,1.26346808620275,5.79\n",
     "          ,3.52737754632869,1.12984858755215,6.66\n",
     "          ,3.53556716820344,1.12956739561711,7.04\n",
     "          ,3.60108414320138,0.920588458374842,6.34\n",
     "          ,3.56074018626105,0.710867756200479,6.47\n",
     "          ,3.54993257050831,-0.0110925370237862,6.43\n",
     "          ,3.54127305229649,0.88291358721582,6.8\n",
+    "          ,3.58739002137804,-0.396514565369056,4.97\n",
+    " 71    Vir,3.54738170467847,0.18881553624492,5.65\n",
     "          ,3.56725160693195,-1.33398423612013,6.48\n",
     "          ,3.58692012504096,0.885201907790657,6.43\n",
+    "   Kap Oct,3.6524371000389,-1.46980963701978,5.58\n",
+    "          ,3.56194849112781,1.04625216451843,5.4\n",
+    "          ,3.53442599138482,0.125295247745948,6.17\n",
     "          ,3.60725992363151,0.104952465686592,6.51\n",
+    " 72    Vir,3.56879555203948,-0.0965118594984753,6.09\n",
+    "          ,3.5422799730188,-0.673566191575912,3.88\n",
     "          ,3.58336233848882,-0.486723847013108,6.47\n",
+    "          ,3.59296164937479,1.3725947976837,5.77\n",
+    "          ,3.55013395465277,-0.656258343160301,6.16\n",
     "          ,3.59531113106017,-1.12342480627745,6.37\n",
+    " 73    Vir,3.54677755224509,-0.301437754366665,6.01\n",
+    " 74    Vir,3.6163893381804,-0.100254621116641,4.69\n",
+    "          ,3.55986752163505,0.734890274099457,6.08\n",
+    "          ,3.59121632012279,-0.47660093735154,5.69\n",
     "          ,3.58933673477449,-0.496279524667776,6.45\n",
+    " 75    Vir,3.61242878333934,-0.255462872987048,5.55\n",
+    " 76    Vir,3.621021173503,-0.171653131933642,5.21\n",
     "          ,3.54832149735263,-0.118769655598214,6.68\n",
+    "          ,3.60759556387228,0.424924647082075,6.11\n",
     "          ,3.59054503964126,-0.833006866882405,6.33\n",
     "          ,3.61028068579842,-0.570533588066513,6.44\n",
+    " 78    Vir,3.56235125941673,0.0638596580757481,4.94\n",
+    "          ,3.6061187468129,-0.223150041141097,5.91\n",
+    " 79Zet Vir,3.60759556387228,0.0103992534597995,3.37\n",
     "          ,3.58101285680344,0.676998672438167,6.37\n",
+    " 81    UMa,3.56154572283889,0.966015500294806,5.6\n",
+    "          ,3.61591944184333,0.648957049122792,4.98\n",
+    " 80    Vir,3.59813050908262,-0.0803530195070945,5.73\n",
+    " 24    CVn,3.58839694210034,0.855492525412265,4.7\n",
+    "          ,3.5812142409479,-1.0525741349201,5.63\n",
     "          ,3.60081563100876,0.17810600202921,6.49\n",
     "          ,3.58953811891895,-1.29706082616683,6.34\n",
     "          ,3.57503846051777,0.771382199876572,6.84\n",
     "          ,3.6282710027036,-0.585247683288188,6.5\n",
+    "          ,3.57289036297685,-0.76544323228298,5.98\n",
+    "          ,3.63055335634082,-1.21396376122466,6.1\n",
+    "          ,3.62545162468114,-0.445146225721154,5.78\n",
+    "          ,3.59665369202324,-0.795375628954683,5.9\n",
     "          ,3.57940178364776,-1.00504784976093,6.42\n",
+    "          ,3.63981702698602,0.429583706557538,5.74\n",
+    "          ,3.63511806361527,-0.983963302769481,6.01\n",
     "          ,3.57873050316622,-1.20797146412614,6.59\n",
     "          ,3.61390560039872,0.863705269170261,6.49\n",
+    " 25    CVn,3.60188967977922,0.633467252011342,4.82\n",
+    "          ,3.62558588077745,-0.496357094856754,5.83\n",
     "          ,3.57980455193668,0.249611171856056,6.52\n",
+    "          ,3.59255888108587,-1.10694114111973,5.79\n",
     "          ,3.60920663702797,1.33599136475993,6.57\n",
+    "   Eps Cen,3.64498588669385,-0.916884481851166,2.3\n",
     "          ,3.62256511861054,0.885138882012113,6.48\n",
+    "          ,3.65371253295382,-0.838625857446464,6\n",
     "          ,3.62833813075175,-0.667622375845509,6.27\n",
+    "          ,3.63881010626372,-0.697225099214057,5.6\n",
     "          ,3.57664953367346,0.318789236013575,6.48\n",
+    "          ,3.6200142527807,0.187555020674035,5.57\n",
+    "          ,3.57960316779222,1.24341134421525,5.5\n",
+    "          ,3.58812842990773,-0.998551346434067,5.38\n",
+    "          ,3.6423007647677,-0.93270395226577,5.01\n",
+    " 82    UMa,3.6143754967358,0.923652480839455,5.46\n",
     "          ,3.59886891761231,0.541260538001119,6.21\n",
+    "  1    Boo,3.63229868559281,0.348290148509091,5.75\n",
     "          ,3.63041910024451,0.48983150270902,6.23\n",
     "          ,3.6237734234773,-0.393576594461532,6.59\n",
+    "          ,3.64364332573078,-0.565540007151085,6.05\n",
     "          ,3.60907238093166,0.881730641833913,6.32\n",
+    "  2    Boo,3.58537617993343,0.392626359646558,5.62\n",
+    " 82    Vir,3.63169453315943,-0.127355705890664,5.01\n",
+    "          ,3.66196928287672,-0.963979282834146,6\n",
     "          ,3.65995544143211,-0.858866828632787,6.41\n",
     "          ,3.60652151510182,0.998459231834656,6.29\n",
+    " 83    UMa,3.63740041725249,0.954375123811366,4.66\n",
+    "          ,3.66049246581734,-0.708584283762454,5.98\n",
+    "          ,3.60370213707937,0.146404035421458,6.16\n",
+    "          ,3.64471737450124,-0.731860188592522,5.98\n",
     "          ,3.61672497842117,-0.889890056086987,6.47\n",
+    " 84    Vir,3.5959824115417,0.0617507185629216,5.36\n",
     "          ,3.62531736858484,0.727351421358204,6.3\n",
+    "          ,3.6449187586457,0.610671312725572,5.98\n",
+    "          ,3.62243086251423,1.13136605437402,5.85\n",
     "          ,3.66391599627317,-0.0785592088869892,6.51\n",
+    "          ,3.65169869150921,0.396194588339524,6.13\n",
+    " 83    Vir,3.63538657580788,-0.276125632075936,5.6\n",
     "          ,3.65673329512073,-0.427591122328177,6.21\n",
+    "          ,3.64928208177568,-0.451759084331488,5.81\n",
+    "  1    Cen,3.65505509391689,-0.575192647541976,4.23\n",
+    "          ,3.6644530206584,0.908695978777225,6.02\n",
+    " 85    Vir,3.64686547204215,-0.248403985790093,6.19\n",
     "          ,3.62283363080315,-1.07180669364972,6.51\n",
+    "          ,3.65686755121704,-0.882564521365422,4.65\n",
+    " 86    Vir,3.67532776445929,-0.201992772097477,5.51\n",
+    "          ,3.67982534368558,-0.623921270630295,5.15\n",
+    "          ,3.64552291107908,-0.868310999140801,5.91\n",
+    "          ,3.66002256948026,-0.867060179843538,5.45\n",
     "          ,3.61746338695086,0.975280289740809,6.5\n",
+    "          ,3.62659280149976,-0.144702339400763,6.05\n",
+    "          ,3.62222947836977,0.717131548960415,5.87\n",
+    "          ,3.62961356366667,0.672019635933172,5.94\n",
+    " 87    Vir,3.64256927696032,-0.281696141271885,5.43\n",
+    "  3    Boo,3.66223779506933,0.448588402857031,5.95\n",
     "          ,3.68076513635973,0.110838103775262,6.33\n",
+    "          ,3.6394142586971,1.36248158429575,5.91\n",
+    "  4Tau Boo,3.62954643561852,0.304676309756477,4.5\n",
+    "          ,3.68439005096003,0.672698375086726,5.5\n",
+    " 84    UMa,3.65203433174998,0.950031193228624,5.7\n",
+    "          ,3.69533192280907,-1.41954415456234,5.95\n",
     "          ,3.68680666069356,-0.5985800595187,6.53\n",
+    "   Nu  Cen,3.65787447193935,-0.703581006573403,3.41\n",
+    " 85Eta UMa,3.65196720370183,0.860680031800137,1.86\n",
+    "  2    Cen,3.65304125247229,-0.585543419633664,4.19\n",
+    "   Mu  Cen,3.66686963039193,-0.72476736443789,3.04\n",
+    "          ,3.68955891066786,-1.19727162618405,5.75\n",
+    "          ,3.66478866089917,0.544373041833843,5.62\n",
+    " 89    Vir,3.68741081312694,-0.31181761527922,4.97\n",
+    "          ,3.63028484414821,-0.504724978992705,6.18\n",
     "          ,3.64760388057184,-0.664951052462595,6.44\n",
     "          ,3.68962603871601,0.690151667606669,7.4\n",
+    "  5Ups Boo,3.65559211830212,0.275723236720615,4.07\n",
+    "  6    Boo,3.67465648397775,0.371129721026161,4.91\n",
     "          ,3.66787655111424,-0.315953075979085,6.53\n",
+    "          ,3.61766477109532,1.44430358925661,5.98\n",
     "          ,3.67761011809651,0.639362586373634,6.38\n",
+    "          ,3.65471945367613,0.0959446274915772,6.01\n",
+    "          ,3.68929039847524,-0.787158037059876,5.77\n",
+    "          ,3.63672913677095,-0.893404955275031,5.25\n",
     "          ,3.67505925226668,-0.62075543729265,6.35\n",
     "          ,3.6533097646649,-0.412057691985428,6.45\n",
+    "  3    Cen,3.69251254478662,-0.541149030854464,4.56\n",
+    "  3    Cen,3.69318382526816,-0.541144182717653,6.06\n",
+    "          ,3.63149314901497,-0.5302407230295,6.12\n",
+    "          ,3.67828139857805,1.07318841264088,5.96\n",
     "          ,3.63196304535205,0.606894614149728,6.65\n",
+    "          ,3.63827308187849,0.605008688930212,5.87\n",
     "          ,3.65874713656534,1.02170604784386,6.46\n",
+    "          ,3.69251254478662,-0.918503759546071,5.89\n",
+    "          ,3.70466272150243,-1.15798232546694,5.71\n",
+    "          ,3.68969316676417,0.601164116439013,4.74\n",
+    "          ,3.65498796586874,0.212324151641921,6.04\n",
+    "  4    Cen,3.6514301793166,-0.524859291169184,4.73\n",
+    "          ,3.67868416686697,-0.599273343082686,5.54\n",
+    "          ,3.71103988607702,-0.81806975736742,6.1\n",
+    "          ,3.70472984955058,-0.605377147327856,6.19\n",
+    "  7    Boo,3.65196720370183,0.312986016250694,5.7\n",
+    " 10    Dra,3.6606938499618,1.12963526953246,4.65\n",
     "          ,3.70103780690213,1.19232652663674,6.4\n",
+    "          ,3.66129800239518,-0.478748661958856,6.04\n",
+    "          ,3.64847654519784,0.500002893738698,5.9\n",
+    "          ,3.65975405728765,-0.904759291686616,5.71\n",
+    "   Zet Cen,3.68687378874171,-0.815272382427418,2.55\n",
+    " 90    Vir,3.69553330695353,-0.0086733167550496,5.15\n",
+    "          ,3.717148538459,-0.138598535155594,6.19\n",
+    "          ,3.67432084373699,-0.940174931091668,6.14\n",
+    "  8Eta Boo,3.69419074599046,0.321101797272468,2.68\n",
+    "          ,3.69204264844954,-0.930182921124,6\n",
     "          ,3.70311877639489,-0.536077879750058,6.51\n",
+    " 86    UMa,3.70311877639489,0.937741166412498,5.7\n",
+    "          ,3.67391807544806,-0.792510380099325,5.83\n",
+    "          ,3.70922742877687,-1.35105937396881,6.09\n",
+    "          ,3.70432708126166,-1.0875728345594,4.71\n",
+    "          ,3.69835268497598,-1.12049168350674,6.2\n",
+    "          ,3.71050286169179,0.245330267051859,6.16\n",
+    " 92    Vir,3.68519558753787,0.0183356534195627,5.91\n",
     "          ,3.66183502678041,0.559072592645084,6.32\n",
+    "          ,3.68929039847524,-0.401028180740186,6.14\n",
+    "  9    Boo,3.69365372160523,0.479824948330919,5.01\n",
+    "   Phi Cen,3.6783485266262,-0.731278412175191,3.83\n",
+    "   Ups1Cen,3.71124127022148,-0.753919211083006,3.87\n",
+    " 47    Hya,3.69821842887968,-0.401910541639805,5.15\n",
+    "          ,3.68405441071926,-0.866206907764786,5.91\n",
     "          ,3.68841773384925,-1.05624902262291,6.49\n",
+    "          ,3.73527311146048,-1.14722915801993,5.97\n",
+    "          ,3.71003296535472,0.255681039143547,6\n",
+    " 10    Boo,3.70869040439164,0.378668573767414,5.76\n",
     "          ,3.69519766671276,1.07325143841942,6.37\n",
+    " 48    Hya,3.6653256852844,-0.436152931936572,5.77\n",
     "          ,3.72701636153758,-0.0427654148106722,6.4\n",
+    "          ,3.69506341061646,-0.694253191348856,6.13\n",
+    "   Ups2Cen,3.72782189811543,-0.774863162106938,4.34\n",
+    "   The Aps,3.71359075190686,-1.31254577514147,5.5\n",
+    "          ,3.69694299596476,0.155242188828084,5.99\n",
     " 11    Boo,3.68365164243034,0.477987504479514,6.23\n",
+    " 93Tau Vir,3.72164611768529,0.0269556406696902,4.26\n",
+    "          ,3.70452846540612,-0.463733982254893,5.48\n",
+    "          ,3.71345649581055,-0.973656163909092,5.92\n",
+    "   Bet Cen,3.74460391015383,-1.0406865034593,0.61\n",
+    "          ,3.68056375221527,-0.529115955289325,6.18\n",
+    "          ,3.71520182506254,-0.708196432817566,6.11\n",
+    "          ,3.71661151407377,0.169059378739706,6.2\n",
     "          ,3.69029731919755,0.79855115856595,6.27\n",
     "          ,3.7495713857172,-0.37661296375951,6.3\n",
     "          ,3.72164611768529,0.188262848648455,6.3\n",
@@ -1593,1207 +5295,3832 @@ namespace osgEarth { namespace Util
     "          ,3.7531963003175,0.0855356777581554,6.24\n",
     "          ,3.70224611176889,-0.0806099707580826,6.39\n",
     "          ,3.71889386771099,-0.227387312713995,6.28\n",
+    "          ,3.74943712962089,-0.930793786362198,6.17\n",
+    "          ,3.73648141632725,-1.27670349969704,6.02\n",
+    "          ,3.7540689649435,0.889628256699187,6.15\n",
     "          ,3.72506964814113,-1.01725545825127,6.42\n",
     "          ,3.73748833704955,1.19866788958565,6.34\n",
     "          ,3.73299075782326,0.0400989395645697,6.28\n",
     "          ,3.70580389832104,-0.273391282914478,6.56\n",
+    "   Chi Cen,3.69513053866461,-0.712448248800897,4.36\n",
+    "          ,3.7060052824655,-0.748886845073089,6.2\n",
+    " 49Pi  Hya,3.72131047744452,-0.441873733373664,3.27\n",
+    "  5The Cen,3.74641636745398,-0.62186081248558,2.06\n",
     "          ,3.71929663599992,-1.09592617428492,6.4\n",
+    " 95    Vir,3.74883297718751,-0.151610934356574,5.46\n",
+    " 11Alp Dra,3.71392639214763,1.12357025038178,3.65\n",
     "          ,3.77568419644896,-1.0249155144128,6.34\n",
+    "          ,3.75030979424689,-1.21639752590383,6.05\n",
+    "          ,3.76977692821144,-0.742269138325944,6.17\n",
+    "          ,3.71573884944777,-1.19171566139854,6.06\n",
+    "          ,3.7514509710655,-0.881308853931348,6\n",
+    "          ,3.77803367813434,-0.917359599258653,4.75\n",
     " 96    Vir,3.70526687393581,-0.168695768478874,6.47\n",
+    "          ,3.77064959283744,0.765404447188491,5.27\n",
+    " 13    Boo,3.72332431888913,0.863205911078718,5.25\n",
+    "          ,3.77662398912311,-0.273982755605432,4.91\n",
     "          ,3.76185581852932,1.03563959303895,6.46\n",
+    "   Eta Aps,3.76225858681824,-1.4135809462847,4.91\n",
+    " 12    Boo,3.74091186750538,0.437932198146244,4.83\n",
     "  3    UMi,3.7670918062853,1.30190411484111,6.45\n",
     "          ,3.80871119614055,-1.33231647705712,6.47\n",
     "          ,3.7550758856658,0.0237752629216116,6.43\n",
+    "          ,3.7439326296723,-0.913403519620799,5.56\n",
     "          ,3.7504440503432,-0.412523113119293,6.34\n",
+    "          ,3.73346065416033,0.563663778205191,6.11\n",
+    "          ,3.7754828123045,-0.93155494384154,6.11\n",
+    " 50    Hya,3.77930911104926,-0.466681649436039,5.08\n",
+    "          ,3.73876376996447,0.0420527386994412,5.01\n",
     "          ,3.73963643459047,-0.443100311986872,6.24\n",
+    " 98Kap Vir,3.78978108656123,-0.169757510440504,4.19\n",
+    "          ,3.80280392790303,-0.993339599362139,5.07\n",
+    "          ,3.77669111717127,0.0147577284529743,5.91\n",
+    "          ,3.78347105003478,-0.700967860832223,5.61\n",
     "          ,3.75910356855502,-0.916128172508635,6.39\n",
+    "          ,3.78682745244247,-1.14165864882398,5.75\n",
+    "  4    UMi,3.76843436724837,1.3534592016903,4.82\n",
     "          ,3.75487450152134,-0.0707294679370702,6.36\n",
+    " 14    Boo,3.73325927001587,0.226184974784843,5.54\n",
+    "          ,3.73238660538987,-0.501224624215094,6.08\n",
     "          ,3.78273264150509,-0.785383618987015,6.31\n",
     "          ,3.78092018420495,-1.01379388856815,6.39\n",
     "          ,3.80119285474734,-1.41635892867745,6.42\n",
     " 17Kap1Boo,3.75910356855502,0.903867234513374,6.69\n",
+    " 17Kap2Boo,3.76084889780701,0.903910867744674,4.54\n",
+    " 15    Boo,3.79448004993198,0.176287950725049,5.29\n",
     "          ,3.79743368405074,0.0582261231012553,6.45\n",
+    "          ,3.76299699534793,-0.310654062444557,5.43\n",
     "          ,3.78132295249387,0.381761685052893,6.39\n",
+    "          ,3.72292155060021,1.21182573289096,5.24\n",
     "          ,3.7578281356401,0.724641312880801,6.24\n",
+    "   Eps Aps,3.79166067190953,-1.39436293196551,5.06\n",
     "          ,3.75957346489209,-0.571745622269287,6.55\n",
+    " 99Iot Vir,3.73621290413463,-0.104710058846038,4.08\n",
+    "   Del Oct,3.85234442744041,-1.43696835826142,4.32\n",
     "          ,3.76386965997393,-0.0938647767996172,6.44\n",
+    "          ,3.77541568425635,-0.0489322448343855,6.15\n",
+    "          ,3.74064335531277,0.330075698509805,5.98\n",
     "          ,3.74446965405753,-0.303944241098001,6.22\n",
     "          ,3.75333055641381,0.916923266945654,6.58\n",
     "          ,3.77904059885665,0.351184486185315,6.25\n",
     "          ,3.76749457457422,0.693676263068335,6.38\n",
     "          ,3.77568419644896,-0.572109232530119,6.54\n",
+    "          ,3.81723645825606,-1.05988512523123,5.23\n",
+    " 21Iot Boo,3.74829595280228,0.896527155381376,4.75\n",
+    " 19Lam Boo,3.76588350141853,0.80439316342332,4.18\n",
+    "          ,3.77749665374911,0.266395421496068,5.8\n",
     "          ,3.74453678210568,-0.112704636447534,6.47\n",
+    "   Iot Lup,3.78058454396418,-0.801843043460684,3.55\n",
+    "          ,3.79515133041352,-0.301660768659975,5.9\n",
+    "          ,3.74916861742828,-0.422098183321206,5.87\n",
+    "          ,3.78018177567526,-0.645708797459358,5.94\n",
+    "          ,3.77863783056772,-0.97063577467578,4.33\n",
+    "100Lam Vir,3.7569554710141,-0.220415691979639,4.52\n",
+    "          ,3.76769595871868,0.895479957830179,6.2\n",
+    "          ,3.81965306798959,0.619756721109564,4.81\n",
+    "          ,3.76548073312961,-0.749463773353609,5.56\n",
     "          ,3.80542192178102,0.837787129778145,6.32\n",
+    "          ,3.80951673271839,-0.78213051918677,4.77\n",
+    " 18    Boo,3.76997831235591,0.226965524811429,5.41\n",
+    "102Ups Vir,3.79172779995768,-0.0302717662484794,5.14\n",
+    "   Psi Cen,3.79729942795443,-0.630320811220941,4.05\n",
+    "          ,3.80300531204749,0.00670497320974488,6.19\n",
     "          ,3.81851189117098,0.676620517766902,6.86\n",
+    " 20    Boo,3.8087783241887,0.284609871495353,4.86\n",
+    "          ,3.81085929368146,-1.00427214787116,4.92\n",
     "          ,3.81864614726729,0.957560349696256,6.53\n",
     "          ,3.81213472659638,0.677081090763956,6.33\n",
     "          ,3.76413817216654,0.531089146971441,6.44\n",
+    "          ,3.81314164731869,-0.832168139214085,6.09\n",
+    "          ,3.78763298902031,-0.579677174092239,5.56\n",
+    "          ,3.79280184872814,-0.85918680566232,6.02\n",
+    "          ,3.76850149529653,-0.671738443998129,4.42\n",
+    "          ,3.78273264150509,-1.18341565117794,5.61\n",
+    "          ,3.83052781179048,-0.921941088545138,6\n",
+    " 51    Hya,3.77333471476359,-0.458081054733156,4.77\n",
     "          ,3.8273056654791,-1.14889206894613,6.36\n",
     "  2    Lib,3.79991742183242,-0.17952165797805,6.21\n",
     "          ,3.78608904391278,0.0216711715455963,6.27\n",
     "          ,3.79588973894321,0.147393055330921,6.86\n",
+    "          ,3.79602399503951,0.147422144151788,5.12\n",
     "          ,3.77467727572666,0.442232495497685,6.22\n",
+    "          ,3.77111948917452,0.143878156142877,5.95\n",
+    "          ,3.84113404339875,-1.31372387238657,6.07\n",
+    "          ,3.83515964711308,-0.404804879316029,5.32\n",
+    "          ,3.79253333653552,-1.12012322510909,5.85\n",
+    "          ,3.78508212319047,0.10157816246607,5.1\n",
     "          ,3.82482192769742,-0.180297359867825,6.49\n",
+    "          ,3.79448004993198,0.141109870023742,6.19\n",
+    "   Tau1Lup,3.78964683046492,-0.781534198359005,4.56\n",
+    "   Tau2Lup,3.79313748896891,-0.778775608513492,4.35\n",
     "          ,3.8142828241373,-0.314687712271389,6.61\n",
     "          ,3.7966281474729,-0.72746777664167,6.32\n",
     "          ,3.8383146653763,-0.438906673645274,6.48\n",
     "          ,3.84563162262504,-0.665426169870083,6.35\n",
+    "          ,3.79938039744719,-0.800504957700821,5.83\n",
     "          ,3.81347728755946,0.670085229345545,6.27\n",
     "          ,3.84576587872135,-1.02629238526715,6.45\n",
+    " 23The Boo,3.79011672680199,0.904967761569493,4.05\n",
+    " 22    Boo,3.81542400095591,0.335573485653587,5.39\n",
+    "104    Vir,3.81575964119668,-0.102620511880455,6.17\n",
+    " 52    Hya,3.80132711084365,-0.497564280922717,4.97\n",
+    "          ,3.82260670210835,-1.15685270958995,5.83\n",
+    "105Phi Vir,3.80360946448087,-0.0309262647179773,4.81\n",
+    "106    Vir,3.84334926898782,-0.0890020955780886,5.42\n",
     "          ,3.81965306798959,0.716021325630674,6.63\n",
+    "          ,3.80763714737009,-0.7797840209702,5.5\n",
+    "          ,3.82415064721588,-0.846150165777284,5.37\n",
     "          ,3.82965514716448,0.493739100978763,7.62\n",
     "          ,3.83207175689801,0.493768189799629,7.12\n",
+    "          ,3.80938247662208,0.631755859717025,6.1\n",
     "          ,3.87194581750127,-0.68338366861838,6.39\n",
+    "          ,3.85952712859285,0.0144668402443086,5.94\n",
+    "          ,3.81495410461884,-0.648045599402306,5.97\n",
+    " 24    Boo,3.83811328123184,0.869954517519762,5.59\n",
     "          ,3.84898802503273,-0.961889735868564,6.93\n",
+    "          ,3.85845307982239,0.554859561756242,6.06\n",
     "          ,3.84113404339875,0.729474905281463,6.35\n",
+    "          ,3.85704339081116,0.0832909904146183,6.02\n",
+    "   Sig Lup,3.85435826888502,-0.864689440942913,4.42\n",
+    "          ,3.85268006768117,-0.925053592377861,5.87\n",
+    "          ,3.84932366527349,-0.89570297212349,5.87\n",
+    "          ,3.82206967772312,-0.511134215856973,6.09\n",
+    " 25Rho Boo,3.86731398217867,0.530080734514733,3.58\n",
+    "  5    UMi,3.82529182403449,1.32114636984435,4.25\n",
     "          ,3.82428490331219,-0.731297804722435,6.6\n",
     "          ,3.84099978730244,-1.04692120739837,6.4\n",
+    "          ,3.8319375008017,0.465605363063976,6.01\n",
+    " 26    Boo,3.8484510006475,0.388510291493938,5.92\n",
+    " 27Gam Boo,3.81112780587408,0.668606547618161,3.03\n",
+    "          ,3.85798318348531,1.10279598414624,6.09\n",
     "          ,3.85791605543716,1.05113423828721,6.27\n",
     "          ,3.88161225643539,-0.341400946100524,6.5\n",
+    "          ,3.86019840907438,-0.706557762575415,5.87\n",
+    "   Eta Cen,3.858721592015,-0.730284544128916,2.31\n",
     "          ,3.836435080028,0.645063995263482,6.43\n",
+    "          ,3.84630290310658,0.96687362051037,5.76\n",
+    "          ,3.88879495758783,-1.15310025169816,6.04\n",
+    "          ,3.84777972016596,-0.798570551113194,5.55\n",
     "          ,3.82925237887556,0.567833175862733,6.33\n",
+    "          ,3.85476103717394,-0.670254914133933,6.13\n",
+    " 28Sig Boo,3.86832090290097,0.519148186005713,4.46\n",
+    "          ,3.8652330126859,0.639241382953356,6.03\n",
+    "          ,3.88161225643539,-0.694437420547677,5.74\n",
+    "          ,3.85361986035533,-0.800514653974444,5.41\n",
     "          ,3.83489113492046,0.995976985787375,6.48\n",
+    "          ,3.86670982974528,0.861639962888734,5.74\n",
+    "   Rho Lup,3.89805862823303,-0.847779139745812,4.05\n",
     "          ,3.83153473251278,0.405793899225493,6.38\n",
+    "          ,3.90255620745932,-0.204111407883926,6.2\n",
+    "          ,3.85731190300378,-0.649364292614924,6.02\n",
+    "          ,3.85012920185134,-0.792655824203658,6.07\n",
     "          ,3.86852228704543,-0.854241706115003,6.39\n",
+    "   Alp2Cen,3.88382748202446,-1.03261435566882,1.33\n",
     "          ,3.88376035397631,-0.969690387997616,6.3\n",
+    "          ,3.84979356161057,0.319366164294096,5.91\n",
+    "   Alp Cir,3.8892648539249,-1.09998891293262,3.19\n",
+    "          ,3.84777972016596,0.761695622528003,5.7\n",
     "          ,3.91886832316065,-1.0015377987097,6.22\n",
+    "          ,3.84596726286581,-0.625962336227766,5.67\n",
+    "          ,3.85140463476626,0.94288503956907,5.85\n",
+    " 33    Boo,3.8983942684738,0.77500375807446,5.39\n",
+    "   Alp Lup,3.91900257925696,-0.813527053175424,2.3\n",
+    "   Alp Aps,3.93954376199197,-1.37802955904893,3.83\n",
+    "          ,3.92141918899049,-0.631920696368602,4\n",
+    "          ,3.86912643947881,0.383545799399376,6.1\n",
+    "          ,3.8966489392218,0.236215769846999,5.91\n",
     "          ,3.91269254273052,-0.507309035913018,6.37\n",
+    " 29Pi 1Boo,3.89826001237749,0.286553974356602,4.94\n",
+    " 29Pi 2Boo,3.89866278066641,0.28654427808298,5.88\n",
+    " 30Zet Boo,3.85603647008886,0.239604617477955,4.83\n",
+    " 30Zet Boo,3.85603647008886,0.239604617477955,4.43\n",
     "          ,3.8606011773633,1.39033413027549,6.26\n",
+    " 31    Boo,3.89617904288473,0.142447955783604,4.86\n",
+    " 32    Boo,3.90248907941117,0.203515087056161,5.56\n",
+    "          ,3.88476727469861,-1.0668179608711,5.36\n",
     "          ,3.91685448171604,0.368676563799747,6.38\n",
+    "  4    Lib,3.87107315287527,-0.401469361189996,5.73\n",
+    "          ,3.90571122572254,-0.607835152691081,4.05\n",
+    "          ,3.931689780358,-1.00395217084163,6.11\n",
+    "107Mu  Vir,3.85764754324454,-0.0757763783574205,3.88\n",
+    "          ,3.87617488453494,-0.949425176127238,6.1\n",
+    "          ,3.93665725592136,-0.607515175661549,4.92\n",
+    " 34    Boo,3.88691537223953,0.462997065459607,4.81\n",
     "          ,4.07480677902153,-1.5335674842225,6.48\n",
     "          ,3.85274719572933,1.0692226367294,6.25\n",
+    "          ,3.9124240305379,0.706145670946472,5.73\n",
+    "          ,3.90497281719285,-0.812605907181316,5.74\n",
+    "          ,3.87201294554942,-0.900875934100929,5.21\n",
+    "          ,3.8772489333054,-0.0101616947560559,6.07\n",
+    " 54    Hya,3.86603854926375,-0.428599534784885,4.94\n",
+    "          ,3.88678111614322,-0.903983589796841,6.07\n",
+    "          ,3.87503370771633,-0.398754404575782,5.81\n",
+    "          ,3.93424064618783,-1.14155198981414,5.91\n",
+    "108    Vir,3.90208631112225,0.0125178892462482,5.69\n",
+    " 35Omi Boo,3.88100810400201,0.296085411327216,4.6\n",
     "  5    Lib,3.93914099370305,-0.253775721376787,6.33\n",
     "          ,3.88053820766493,-0.363445424180575,6.4\n",
+    " 36Eps Boo,3.93665725592136,0.472547894977465,5.12\n",
+    " 36Eps Boo,3.93665725592136,0.472533350567031,2.7\n",
+    "          ,3.88933198197306,0.329600581102318,6.13\n",
+    "          ,3.8771146772091,-0.658149116516628,5.94\n",
     "          ,3.91336382321205,-0.740761367777693,6.3\n",
     "          ,3.87993405523155,0.572264372908074,6.28\n",
+    "109    Vir,3.88590845151722,0.0330352042308038,3.72\n",
+    "          ,3.87395965894587,0.26410225278442,5.63\n",
+    "          ,3.88866070149152,-0.360851670986639,6.06\n",
+    " 55    Hya,3.90047523796656,-0.42543370144724,5.63\n",
     "          ,3.8882579332026,-0.965729460222951,6.23\n",
+    " 56    Hya,3.93041434744308,-0.452258442423031,5.24\n",
+    " 57    Hya,3.9474648716741,-0.442503991159107,5.77\n",
     "          ,3.94397421317011,-0.194783592659378,6.35\n",
+    "          ,3.92578251212048,-0.617240538104606,6.04\n",
+    "          ,3.91484064027143,-1.27077422837707,5.6\n",
+    "          ,3.90410015256685,-0.414486608527787,5.68\n",
+    "          ,3.94726348752964,0.014796513547463,6.14\n",
+    "  7Mu  Lib,3.90463717695208,-0.241747493948459,5.31\n",
+    "          ,3.905912609867,0.425278561069285,6.14\n",
+    "   Pi 1Oct,3.99955623704131,-1.4446478069702,5.65\n",
+    " 58    Hya,3.90658389034854,-0.454478889082512,4.41\n",
+    "          ,3.93907386565489,-1.08542026181527,5.87\n",
+    "   Omi Lup,3.93927524979936,-0.740446238884972,4.32\n",
+    "          ,3.88798942100998,0.6599283827263,6.16\n",
+    "  8Alp1Lib,3.93867109736597,-0.244394576647317,5.15\n",
+    "  9Alp2Lib,3.95411054844131,-0.278525459797428,2.75\n",
+    "          ,3.95739982280084,0.499440509868611,5.8\n",
+    " 38    Boo,3.90410015256685,0.804877977104429,5.74\n",
+    "          ,3.90457004890393,0.417342161109522,5.85\n",
+    " 11    Lib,3.88906346978044,-0.0296851416943369,4.94\n",
+    "          ,3.88785516491368,0.0044893746870743,6.18\n",
     "          ,3.92235898166464,0.896658055075276,6.51\n",
+    " 39    Boo,3.93444203033229,0.85033410784526,5.69\n",
+    "   Zet Cir,3.9577354630416,-1.11716101351751,6.09\n",
+    "          ,3.98492232254382,-1.31488257708442,5.34\n",
+    "          ,3.92309739019433,0.650518149175964,5.48\n",
     "          ,3.93652299982506,-0.513529195441654,6.29\n",
+    "          ,3.96068909716036,-0.631751011580214,5.03\n",
+    " 37Xi  Boo,3.91900257925696,0.333377279678161,4.55\n",
+    "   Pi 2Oct,4.00714170648267,-1.44795423627536,5.65\n",
+    "          ,3.95162681065962,-1.04520496696724,5.2\n",
+    "          ,3.9428330363515,-1.34110614909563,5.93\n",
+    " 12    Lib,3.92779635356509,-0.407670128171387,5.3\n",
+    "          ,3.95182819480408,-0.570712969128524,5.82\n",
     "          ,3.92772922551693,0.274094262752087,6.4\n",
+    "   The Cir,3.96861020684249,-1.0684760236605,5.11\n",
+    "          ,3.92316451824248,1.03487358742279,5.46\n",
+    "          ,3.92826624990216,0.334279033125025,6.01\n",
+    " 13Xi 1Lib,3.93155552426169,-0.176307343272294,5.8\n",
+    "          ,3.99781090778932,-1.30842970698885,6.2\n",
+    "          ,3.93276382912845,-0.893438892232708,5.38\n",
+    "   Ome Oct,3.98613062741059,-1.45233210381578,5.91\n",
+    "          ,3.96518667638666,-0.561021543643144,5.32\n",
+    "          ,3.95249947528562,-0.804960395430218,5.64\n",
     "          ,3.91578043294559,-0.882317266388056,6.64\n",
     "          ,3.9576012069453,-0.673415899334768,6.36\n",
+    "          ,3.95102265822624,-0.547393431067155,6.06\n",
+    "  7Bet UMi,3.94014791442535,1.29425860309002,2.08\n",
+    " 15Xi 2Lib,3.97142958486494,-0.184835215923011,5.46\n",
     "          ,3.93215967669507,-0.503391741369653,6.29\n",
     "          ,3.93007870720231,-0.822694879885205,6.35\n",
+    "          ,3.92725932917986,0.252137051134636,5.77\n",
+    "          ,3.95149255456332,-0.359266330249411,5.74\n",
+    "          ,3.98398252986967,0.563746196530979,6.12\n",
+    " 16    Lib,3.92866901819108,-0.0637675434763373,4.49\n",
+    "   Bet Lup,3.96109186544928,-0.748154776414614,2.68\n",
+    "          ,3.96767041416834,-0.664854089726373,6.15\n",
+    "          ,3.9586081276676,0.0029234264970905,5.53\n",
     "          ,3.91873406706435,0.376210568404189,6.49\n",
+    "          ,3.92960881086523,0.286030375581004,5.71\n",
+    "   Kap Cen,3.93565033519906,-0.731220234533458,3.13\n",
+    " 59    Hya,3.97089256047971,-0.459768206343417,5.65\n",
     " 17    Lib,3.93625448763244,-0.189280957378785,6.6\n",
     "          ,3.94128909124396,-0.630388685136296,6.47\n",
+    "          ,3.95901089595652,-0.747699051554371,6.1\n",
+    "          ,3.94041642661797,0.86618266708073,5.63\n",
+    " 18    Lib,3.99022543834796,-0.189470034714418,5.87\n",
+    "          ,3.9891513895775,-0.0525489548954626,6.09\n",
+    "          ,3.95364065210423,0.0797227617216521,5.93\n",
+    "          ,3.94880743263717,-0.662207007027515,5.89\n",
+    " 19Del Lib,4.00539637723068,-0.13057002059642,4.92\n",
     "          ,4.00935693207174,-0.587148152918137,6.22\n",
+    " 40    Boo,3.97216799339463,0.685308378932385,5.64\n",
+    "          ,3.96089048130482,1.15073920907116,4.6\n",
+    "          ,3.95793684718606,-0.0217293491873294,5.52\n",
+    " 60    Hya,3.94430985341088,-0.487635296733593,5.85\n",
     "          ,3.99734101145224,0.384767529875772,6.38\n",
+    "   Eta Cir,4.00915554792728,-1.11645803367991,5.17\n",
+    "          ,3.99700537121148,0.00245315722641425,5.71\n",
+    "          ,4.01533132835742,-0.547277075783689,5.44\n",
+    "          ,3.91074582933406,1.4401051027782,5.64\n",
     "          ,3.97894792625815,0.82515288524843,6.37\n",
     "          ,3.96921435927587,-1.22338369104861,6.52\n",
     "          ,3.99599845048917,-0.0518120381001761,6.61\n",
+    " 41Ome Boo,3.94444410950718,0.436472908966104,4.81\n",
+    "110    Vir,4.00821575525313,0.036501622050737,4.4\n",
+    " 42Bet Boo,4.00761160281975,0.704948181154132,3.5\n",
+    " 20Sig Lib,3.95008286555209,-0.431411454135321,3.29\n",
     "          ,4.002039974823,-0.683097628546525,6.41\n",
+    "   Pi  Lup,3.95847387157129,-0.819412691264093,4.72\n",
+    "   Pi  Lup,3.95847387157129,-0.819412691264093,4.82\n",
+    "          ,3.97445034703186,-0.71441174420939,5.15\n",
+    "          ,3.96773754221649,1.05076577988956,5.93\n",
+    "          ,3.94827040825194,0.614457707575037,5.51\n",
     "          ,3.95303649967085,0.0958622091657886,6.5\n",
+    "          ,4.03379154159966,-1.12965466207971,6.17\n",
     "          ,3.94894168873348,0.779192548279246,6.65\n",
     "          ,3.98908426152935,0.603292448499084,6.59\n",
     "          ,4.01284759057573,-0.422549060044638,6.67\n",
     "          ,3.97183235315386,-0.623707952610607,6.27\n",
+    " 43Psi Boo,3.98029048722122,0.470322600181172,4.54\n",
+    "          ,3.99230640784072,-0.853669625971293,5.77\n",
+    " 44    Boo,4.00371817602684,0.831726958764275,4.76\n",
+    "          ,3.99787803583747,-0.507561139027195,5.96\n",
+    "          ,3.98955415786642,-0.383414899705477,6.17\n",
+    "          ,4.00640329795298,-1.16790161338244,5.76\n",
+    " 21Nu  Lib,4.00365104797868,-0.27476815376883,5.2\n",
     "          ,4.00049602971546,-1.08833884017555,6.28\n",
+    "          ,3.97814238968031,-0.687940917220809,5.79\n",
+    "          ,4.01439153568327,-0.717892706439757,5.85\n",
+    "   Lam Lup,4.0298309867586,-0.780516089628675,4.05\n",
+    " 47    Boo,3.98344550548444,0.840395427382514,5.57\n",
+    "          ,4.02472925509892,-1.24319317805875,6.01\n",
+    "          ,4.01768081004279,1.15051619477785,6.13\n",
     "          ,4.000294645571,0.636269475088155,6.35\n",
+    "          ,4.01163928570897,0.0959591719020104,6.16\n",
     "          ,4.03050226724014,-1.05727682762686,6.3\n",
+    "          ,3.98492232254382,0.321867802888621,6.02\n",
+    " 45    Boo,3.98183443232876,0.434048840560557,4.93\n",
+    "          ,3.97559152385047,0.952188614109562,5.25\n",
+    "          ,3.98069325551014,-0.64939338143579,5.98\n",
+    "          ,3.99646834682625,-0.953890310130256,5.54\n",
+    " 46    Boo,3.99385035294825,0.459040985821753,5.67\n",
+    "          ,4.0335901574552,0.230994326501449,6.1\n",
+    "          ,4.0095583162162,0.438227934491721,5.81\n",
+    "          ,3.99559568220025,-0.447977537618833,5.76\n",
     "          ,4.02184274902832,-0.780554874723164,6.44\n",
     "          ,4.0178150661391,-0.780520937765486,7.39\n",
+    "          ,4.01372025520173,-1.22034390926806,5.81\n",
     "          ,3.98505657864013,-1.05166753333643,6.32\n",
+    "   Kap1Lup,4.05030504144546,-0.824881389587009,3.87\n",
+    "   Kap2Lup,4.05231888289007,-0.824779578713976,5.69\n",
     "          ,3.98807734080704,0.873624557085762,6.39\n",
+    "   Zet Lup,4.00230848701561,-0.90584042619549,3.41\n",
     "          ,4.02137285269124,-0.833942557286946,6.33\n",
+    "          ,4.04580746221916,-0.759208528343911,4.82\n",
+    " 24Iot1Lib,3.99720675535594,-0.317795367967301,4.54\n",
+    "          ,3.99364896880379,-0.626723493707108,6.1\n",
+    "          ,3.98512370668828,0.331190769976357,5.89\n",
     "          ,4.00720883453083,-0.418733576374306,6.47\n",
+    " 25Iot2Lib,4.00949118816805,-0.320311550972259,6.08\n",
     " 23    Lib,4.02224551731724,-0.430936336727833,6.45\n",
+    "          ,4.05527251700882,-0.450406454161192,5.84\n",
     "          ,4.03775209644073,0.33660129065754,6.68\n",
+    "  1    Lup,4.03815486472965,-0.531990900418305,4.91\n",
+    "          ,4.04567320612286,-1.03142171401329,5.73\n",
+    " 26    Lib,4.03332164526259,-0.283291178282735,6.17\n",
+    "          ,4.06467044375033,-0.836463588428716,5.95\n",
+    "   Del Cir,4.07292719367323,-1.03048602360875,5.09\n",
     "          ,4.02654171239907,0.40113483975003,6.3\n",
+    "   Eps Cir,4.05339293166052,-1.08890122404564,4.86\n",
+    "          ,4.00217423091931,-0.707013487435659,5.16\n",
+    "          ,4.01090087717928,-0.7420315796222,6.04\n",
     "          ,4.05614518163482,-0.0784913349716339,6.28\n",
+    "   Bet Cir,4.04251818785964,-0.998308939593512,4.07\n",
+    "   Gam TrA,4.07883446191075,-1.1749653487162,2.89\n",
+    "          ,4.0298309867586,1.18300840768581,6.17\n",
+    "          ,4.03150918796244,0.667845390138819,6.2\n",
+    "          ,3.99626696268179,0.55480623225132,5.99\n",
+    "  3    Ser,4.00774585891606,0.0862095687748977,5.33\n",
+    " 48Chi Boo,4.02728012092876,0.509010731933713,5.26\n",
+    "          ,4.00190571872669,0.736029586250064,6.13\n",
+    "          ,4.02768288921768,-0.377000814704397,5.5\n",
+    "  4    Ser,4.05836040722389,0.00649650332686778,5.63\n",
+    "          ,4.07118186442123,-1.03853393071517,5.46\n",
+    " 49Del Boo,4.03298600502182,0.5814515921651,3.47\n",
     "          ,4.01815070637987,-0.714523251356045,6.28\n",
+    "   Mu  Lup,4.04849258414531,-0.805033117482384,4.27\n",
     "          ,4.06889951078401,-1.16096877774257,6.28\n",
+    " 27Bet Lib,4.00170433458223,-0.150394052016989,2.61\n",
+    "  2    Lup,4.06816110225432,-0.521000174267552,4.34\n",
+    "          ,4.08125107164428,-0.684372688527843,5.59\n",
+    "          ,4.06097840110188,-0.537396572962676,6.18\n",
+    "          ,4.05231888289007,-0.644084671627641,6.2\n",
+    "          ,4.04070573055949,0.00805275524322939,5.89\n",
+    "          ,4.03949742569272,1.17542107357645,5.13\n",
+    "          ,4.03842337692226,0.359062708503344,5.7\n",
     "          ,4.05775625479051,1.2033221009243,6.51\n",
+    "  5    Ser,4.03513410256274,0.030809909434511,5.06\n",
+    "   Del Lup,4.04855971219346,-0.686830693891068,3.22\n",
+    "          ,4.06601300471341,-0.685046579544585,6.2\n",
     "          ,4.05903168770543,-0.659399935813891,6.48\n",
+    "   Nu 1Lup,4.03412718184043,-0.804111971488276,5\n",
+    "   Nu 2Lup,4.08333204113704,-0.832211772445385,5.65\n",
+    "          ,4.04130988299287,-1.03573170763836,5.67\n",
+    " 28    Lib,4.08635280330395,-0.311390979239844,6.17\n",
     "          ,4.05043929754176,0.567498654422767,6.32\n",
     " 29Omi Lib,4.02050018806525,-0.252229165734047,6.3\n",
+    "   Gam Cir,4.05782338283866,-1.02414466065984,4.51\n",
+    "   Phi1Lup,4.08360055332966,-0.623756433978718,3.56\n",
     "          ,4.07749190094768,-0.0276925574649767,6.35\n",
+    "          ,4.02882406603629,-0.0728723444075744,5.54\n",
+    "   Eps Lup,4.0778946692366,-0.755911795312366,3.37\n",
+    "  1Omi CrB,4.02566904777308,0.516898650525365,5.51\n",
+    "  6    Ser,4.02130572464309,0.0124839522885705,5.35\n",
     "          ,4.02788427336214,0.435595396203296,6.39\n",
+    "   Phi2Lup,4.0399673220298,-0.613332939834863,4.54\n",
+    "          ,4.06017286452404,-1.18142791508539,5.89\n",
+    " 11    UMi,4.00908841987913,1.25356334269768,5.02\n",
+    "          ,4.02123859659494,0.906848838652198,5.66\n",
+    "          ,4.07010781565078,0.775522508713247,6.19\n",
     "  7    Ser,4.05413134019021,0.219344253744387,6.28\n",
+    " 50    Boo,4.08386906552227,0.574804796597088,5.37\n",
+    "   Ups Lup,4.09199155934886,-0.668281722451818,5.37\n",
+    "          ,4.0974289312493,-0.202991488280563,5.72\n",
+    "  8    Ser,4.08601716306319,-0.0170605934382446,6.12\n",
     "          ,4.04493479759317,-0.660267752303077,7.03\n",
+    " 31Eps Lib,4.04768704756746,-0.168909086498562,4.94\n",
+    "          ,4.06319362669095,-0.650421186439742,4.6\n",
+    "          ,4.08923930937456,-1.10773623555675,5.71\n",
+    "          ,4.07319570586584,0.690825558623411,5.5\n",
+    "  2Eta CrB,4.04386074882271,0.528621445334594,5.58\n",
+    "  2Eta CrB,4.04386074882271,0.528621445334594,6.08\n",
+    "   Rho Oct,4.13716873575625,-1.45795594251665,5.57\n",
+    "   Kap1Aps,4.10360471167944,-1.2672932661467,5.49\n",
+    "          ,4.07306144976954,1.08292831949437,5.98\n",
+    "          ,4.03855763301857,0.790129944925077,6.01\n",
+    " 51Mu 1Boo,4.07118186442123,0.652355593027369,4.31\n",
     " 51Mu 2Boo,4.07319570586584,0.651841690525393,6.5\n",
+    " 13Gam UMi,4.07292719367323,1.25373787562288,3.05\n",
+    "          ,4.06923515102478,-0.614918280572091,5.45\n",
+    "          ,4.07453826682892,1.10551578889726,5.79\n",
+    "          ,4.08568152282242,-0.879689576236442,6.1\n",
+    "  9Tau1Ser,4.09971128488653,0.269270366625047,5.17\n",
     "          ,4.10763239456865,0.340004682698929,6.27\n",
+    "          ,4.06379777912433,0.599273343082686,5.46\n",
+    "          ,4.08615141915949,-0.790062071009722,5.24\n",
+    " 32Zet1Lib,4.06983930345816,-0.266749335483278,5.64\n",
+    " 12Iot Dra,4.10662547384635,1.0291527859857,3.29\n",
+    "          ,4.09702616296038,0.438106731071443,6.02\n",
+    " 10    Ser,4.10044969341622,0.0321528433311844,5.17\n",
+    "  3Bet CrB,4.11152582136156,0.507992623203383,3.68\n",
     "          ,4.08407044966673,0.942826861927337,6.45\n",
     "          ,4.10662547384635,-0.336354035680174,6.22\n",
+    " 34Zet3Lib,4.11212997379495,-0.26861586815555,5.82\n",
     "          ,4.07252442538431,-0.652350744890558,6.25\n",
+    "          ,4.10890782748357,0.823819647625379,6.15\n",
     "          ,4.12978465045935,-0.543127070673391,6.46\n",
     "          ,4.09957702879022,1.08691348795309,6.5\n",
+    "          ,4.11380817499879,1.05889610532177,5.9\n",
     "          ,4.12052097981415,-0.346190905269886,6.22\n",
+    "          ,4.12172928468092,-1.32788043187496,6.18\n",
     "          ,4.13226838824104,0.14973470541068,6.57\n",
     "          ,4.12542132732937,0.96333448063827,6.43\n",
     "          ,4.08836664474856,0.54604564903367,6.46\n",
     "          ,4.09534796175654,0.64235388678608,6.37\n",
+    "          ,4.11588914449155,-0.319909155616938,5.52\n",
+    " 52Nu 1Boo,4.13280541262627,0.712671263094207,5.02\n",
+    " 35Zet4Lib,4.14072652230839,-0.26436890030903,5.5\n",
     "          ,4.08319778504073,-0.410336603417489,7\n",
     "          ,4.10743101042419,-1.12375932771742,6.51\n",
+    "          ,4.07749190094768,-0.696977844236691,5.82\n",
     "          ,4.08198948017397,1.08384461735167,6.38\n",
     "          ,4.09232719958963,0.639076546301779,6.38\n",
     " 12Tau2Ser,4.07963999848859,0.280232003954934,6.22\n",
+    "   Eps TrA,4.14206908327147,-1.1463855822148,4.11\n",
+    " 11    Ser,4.14435143690869,-0.0142001927196983,5.51\n",
     "          ,4.10340332753498,-0.674579452169431,6.36\n",
+    " 53Nu 2Boo,4.12535419928121,0.713829967792059,5.02\n",
+    " 36    Lib,4.12542132732937,-0.487872855437337,5.15\n",
+    "   Gam Lup,4.09111889472286,-0.712671263094207,2.78\n",
+    " 37    Lib,4.08970920571164,-0.173408157459259,4.62\n",
+    "  4The CrB,4.14153205888624,0.547320709014988,4.14\n",
     "          ,4.10326907143867,-0.0751364242983559,6.51\n",
+    "          ,4.11105592502449,-0.153879862384167,5.17\n",
+    "          ,4.15113136977221,-0.751213950742415,4.54\n",
+    "   Kap2Aps,4.12998603460381,-1.26629454996362,5.65\n",
     "          ,4.14186769912701,0.299110648697339,6.45\n",
+    "          ,4.10031543731991,-0.76101688337445,5.43\n",
+    "          ,4.13267115652996,1.1206516720215,5.79\n",
+    "          ,4.17919089390042,-1.32502003115642,5.95\n",
+    " 38Gam Lib,4.12213205296984,-0.230567690462073,3.91\n",
+    " 13Del Ser,4.13992098573055,0.183914069928902,3.8\n",
+    " 13Del Ser,4.13992098573055,0.183943158749769,3.8\n",
     "          ,4.09937564464576,-0.574339375463223,6.24\n",
     "          ,4.08588290696688,0.0291276059610609,6.56\n",
     "          ,4.11696319326201,-1.21775500421093,6.44\n",
+    "  5Alp CrB,4.13079157118166,0.466259861533474,2.23\n",
+    " 39Ups Lib,4.09044761424133,-0.48633599606822,3.58\n",
+    " 15Tau3Ser,4.12428015051075,0.308147575713221,6.12\n",
+    "          ,4.15139988196482,0.196621036510783,6.07\n",
+    "   Ome Lup,4.09709329100853,-0.723133542332551,4.33\n",
+    "          ,4.15925386359879,-0.901065011436561,5.44\n",
     " 14    Ser,4.12931475412228,0.00980293263203482,6.51\n",
+    "  6Mu  CrB,4.09984554098283,0.680852941202988,5.11\n",
+    "          ,4.12669676024428,-0.448898683612942,6.19\n",
+    " 16    Ser,4.12381025417368,0.174707458124632,5.26\n",
+    "          ,4.17301511347029,-1.01389085130437,5.95\n",
+    " 18Tau5Ser,4.12340748588476,0.281327682874242,5.93\n",
     "          ,4.13669883941918,-0.677871337064164,6.57\n",
+    "          ,4.15301095512051,-0.398953178185037,5.78\n",
+    "          ,4.14958742466467,-0.678443417207874,6.04\n",
     "          ,4.14589538201622,0.66975070790558,6.42\n",
     "          ,4.11387530304694,-0.485085176770957,6.32\n",
+    "          ,4.11468083962479,-0.366237950983766,5.84\n",
+    "          ,4.10159087023483,0.94111546963302,5.97\n",
+    " 40Tau Lib,4.14569399787176,-0.492570700007289,3.66\n",
     "          ,4.15576320509481,0.523443635220344,6.52\n",
+    " 41    Lib,4.16596666841416,-0.326342633165262,5.38\n",
     "          ,4.14649953444961,-0.125760668879814,6.5\n",
     "          ,4.14663379054591,-0.125818846521547,6.48\n",
     "          ,4.08957494961533,0.908788093376636,6.74\n",
+    "          ,4.15636735752819,0.953483066638124,5.74\n",
     "          ,4.12575696757013,-0.398802885943893,6.34\n",
+    "  3Psi1Lup,4.15891822335803,-0.586222158787218,4.67\n",
     "          ,4.1797950463338,-0.807466882161554,6.23\n",
     "          ,4.12219918101799,-0.53732385091051,6.34\n",
+    " 54Phi Boo,4.15502479656512,0.704298530821445,5.24\n",
+    " 42    Lib,4.1242130224626,-0.38714796505002,4.96\n",
+    "          ,4.12105800419938,-0.756406305267098,4.64\n",
+    " 15The UMi,4.09568360199731,1.35000248014399,4.96\n",
+    "          ,4.15844832702095,0.605192918129034,6.11\n",
+    "          ,4.13139572361504,0.951359582714865,5.87\n",
     "          ,4.06829535835063,1.40409314254538,6.58\n",
+    "          ,4.11454658352848,0.816775304838857,5.75\n",
     "          ,4.11548637620263,0.210365504370239,6.25\n",
+    "          ,4.16019365627294,-0.846668916416071,6.04\n",
+    "  7Zet1CrB,4.1269652724369,0.639430460288989,6\n",
+    "  7Zet2CrB,4.12763655291844,0.639415915878556,5.07\n",
+    "          ,4.13884693696009,0.880053186497274,5.84\n",
     "          ,4.18858882064193,-1.04218457773393,6.48\n",
+    "          ,4.16167047333233,-0.638354173916926,5.24\n",
+    " 43Kap Lib,4.18214452801918,-0.319763711512606,4.74\n",
+    "  4Psi2Lup,4.16529538793262,-0.58101041171529,4.75\n",
+    " 19Tau6Ser,4.18100335120057,0.27968416449528,6.01\n",
     "          ,4.10991474820588,1.01097227294409,6.45\n",
+    " 21Iot Ser,4.15032583319436,0.343311112004096,4.52\n",
+    " 20Chi Ser,4.1695244549663,0.224231175649971,5.33\n",
+    "          ,4.14092790645285,1.2092222834234,5.62\n",
+    " 22Tau7Ser,4.17932514999673,0.322255653833509,5.81\n",
+    "          ,4.14931891247206,-0.701282989724944,5.94\n",
     "          ,4.14804347955714,-0.261043078456619,6.31\n",
+    " 44Eta Lib,4.12488430294414,-0.250057200442676,5.41\n",
+    "  8Gam CrB,4.17012860739968,0.458944023085531,3.84\n",
     "          ,4.1288448577852,0.238547723653136,6.48\n",
+    "          ,4.20402827171726,-1.12674093185624,6.18\n",
     "          ,4.20416252781357,-1.12674093185624,6.39\n",
+    " 23Psi Ser,4.12139364444015,0.0438950306876574,5.88\n",
+    " 24Alp Ser,4.14059226621209,0.112147100714258,2.65\n",
+    "  9Pi  CrB,4.19422757668683,0.56750835069639,5.56\n",
     "          ,4.14488846129392,-0.487615904186349,6.51\n",
+    "          ,4.17831822927443,0.913868940754664,5.51\n",
+    " 26Tau8Ser,4.17549885125197,0.301316550946388,6.14\n",
+    "          ,4.15489054046881,0.0950671147287689,5.58\n",
+    "          ,4.1870448755344,-0.581500073533211,5.61\n",
     "          ,4.17664002807058,0.015557671026805,6.33\n",
     "          ,4.16616805255862,-0.694742853166776,6.42\n",
+    " 25    Ser,4.1352220223598,-0.00341308831501113,5.4\n",
+    "          ,4.17100127202568,-0.629777819898098,6.01\n",
+    "          ,4.20396114366911,-0.899925699285954,6.07\n",
     "          ,4.18865594869008,-0.102620511880455,6.24\n",
+    " 28Bet Ser,4.14287461984931,0.269163707615203,3.67\n",
+    " 27Lam Ser,4.16341580258432,0.128335029526505,4.43\n",
+    "          ,4.15442064413173,-0.921369008401429,5.77\n",
+    " 31Ups Ser,4.15529330875773,0.246358072055811,5.71\n",
+    "          ,4.21799090573322,-0.821841607806452,5.84\n",
+    "          ,4.16704071718462,-0.778387757568604,6.12\n",
+    "          ,4.15864971116541,-0.958956613097851,5.73\n",
+    "          ,4.15428638803543,0.240656663165963,6\n",
+    "          ,4.21268778992908,-0.0380724183775319,5.53\n",
     "          ,4.23000682635272,-1.13180238668702,6.54\n",
     "          ,4.13911544915271,0.553894782530834,6.44\n",
+    "          ,4.17442480248152,0.968216554407043,5.92\n",
+    " 35Kap Ser,4.19604003398698,0.316631815132638,4.09\n",
+    "          ,4.18261442435626,0.49142653971987,5.85\n",
+    " 32Mu  Ser,4.19073691818285,-0.0448501136394432,3.53\n",
+    "          ,4.1918109669533,-0.819247854612516,6.01\n",
+    "  5Chi Lup,4.22235422886321,-0.565011560238675,3.95\n",
+    "          ,4.18885733283454,-1.07151095730424,6.19\n",
+    "  1    Sco,4.22396530201889,-0.423218102924569,4.64\n",
+    "          ,4.18140611948949,1.09256641547483,5.19\n",
+    "          ,4.18308432069333,0.966505162112727,5.86\n",
+    " 34Ome Ser,4.1686517903403,0.038334217765331,5.23\n",
+    " 10Del CrB,4.18872307673824,0.454978247174055,4.63\n",
     "          ,4.22302550934474,-0.861926002960589,6.6\n",
+    "   Kap TrA,4.20671339364341,-1.17629858633926,5.09\n",
+    " 37Eps Ser,4.21094246067709,0.0781519653948572,3.71\n",
     "          ,4.17106840007383,-0.490670230377339,6.4\n",
+    "          ,4.20114176564666,0.264131341605286,5.2\n",
+    " 36    Ser,4.17046424764045,-0.0507793849594128,5.11\n",
+    "          ,4.2010746375985,-0.242014141473069,6.19\n",
+    "   Bet TrA,4.17838535732258,-1.09204281669923,2.85\n",
+    "          ,4.23322897266409,-1.03422393709011,6.15\n",
+    " 38Rho Ser,4.17086701592937,0.366131291973922,4.76\n",
+    "          ,4.21033830824371,-1.0440947436375,5.77\n",
+    " 11Kap CrB,4.16818189400323,0.622340778029878,4.82\n",
+    " 45Lam Lib,4.18523241823425,-0.346147272038587,5.03\n",
+    " 16Zet UMi,4.12367599807737,1.35776919531537,4.32\n",
+    "  2    Sco,4.20751893022125,-0.430621207835112,4.59\n",
+    "          ,4.17939227804488,-1.03877148941891,5.76\n",
+    "          ,4.23047672268979,-0.409575445938147,5.39\n",
+    "          ,4.23316184461594,-0.384355438246829,5.42\n",
+    " 46The Lib,4.22470371054858,-0.266521473053156,4.15\n",
     "          ,4.22933554587118,0.303750315625558,6.36\n",
+    "          ,4.20288709489865,-0.465329019265744,6.14\n",
+    " 39    Ser,4.17449193052967,0.230325283621518,6.1\n",
+    "  3    Sco,4.21564142404784,-0.432080497015252,5.87\n",
+    "          ,4.20510232048772,0.280561677258088,6.09\n",
+    "  1Chi Her,4.20825733875094,0.740921356292459,4.62\n",
+    " 47    Lib,4.16737635742538,-0.324926977216422,5.94\n",
     "          ,4.20778744241387,-0.539592778938102,6.21\n",
+    "  4    Sco,4.20738467412495,-0.449145938590307,5.62\n",
+    "          ,4.18006355852642,-0.665595854658471,6.03\n",
     " 40    Ser,4.2167154728183,0.149754097957925,6.29\n",
+    "          ,4.25806635048093,-1.13380466719001,5.75\n",
     "          ,4.18080196705611,-0.834926729059598,6.31\n",
+    "          ,4.17617013173351,0.974359143746701,5.81\n",
     "          ,4.18999850965316,-0.527336689079653,6.29\n",
+    "          ,4.20906287532879,0.354490915490482,5.44\n",
+    "   Xi 1Lup,4.24316392379083,-0.559091985192328,5.12\n",
+    "   Xi 2Lup,4.24410371646498,-0.559130770286817,5.62\n",
     "          ,4.19066979013469,-0.237374474544851,6.37\n",
+    "  5Rho Sco,4.2426268994056,-0.502407569597001,3.88\n",
+    "          ,4.20429678390988,-0.625089671601769,5.8\n",
+    "          ,4.21617844843307,-0.229874406898087,6.13\n",
     "          ,4.22040751546675,0.324990002994966,6.26\n",
+    "  2    Her,4.21349332650693,0.752910798626298,5.37\n",
+    " 41Gam Ser,4.20785457046202,0.273347649683179,3.85\n",
+    "          ,4.22993969830456,-0.331908294224399,5.85\n",
     "          ,4.22128018009275,-0.636991847473008,6.31\n",
+    " 12Lam CrB,4.23087949097872,0.662299121626926,5.45\n",
+    "          ,4.25692517366232,-0.942109337679295,6.1\n",
+    "  4    Her,4.20805595460648,0.742918788658631,5.75\n",
     "          ,4.20751893022125,-1.08600203823261,6.41\n",
+    "   Phi Ser,4.19530162545729,0.25157951540136,5.54\n",
+    " 48    Lib,4.19536875350545,-0.239468869647244,4.88\n",
+    "          ,4.22678468004134,-0.404368547003031,5.43\n",
+    "          ,4.2251064788375,-0.702591986663939,4.99\n",
+    "  6Pi  Sco,4.24866842373943,-0.451793021289165,2.89\n",
     "          ,4.26229541751461,-0.686738579291658,6.49\n",
+    "          ,4.20174591808004,-0.93239367150986,6.13\n",
+    " 13Eps CrB,4.2230926373929,0.469105717841587,4.15\n",
+    "   Eta Lup,4.19859089981682,-0.65629712825479,3.41\n",
     "          ,4.23369886900117,1.02820255117073,6.31\n",
     "          ,4.2158428081923,0.69281329471596,6.31\n",
     "          ,4.26786704551137,-1.07265026945485,6.25\n",
     "          ,4.26088572850339,-0.690534670414745,6.21\n",
+    "  7Del Sco,4.21564142404784,-0.373122305255521,2.32\n",
+    " 49    Lib,4.21510439966261,-0.26994425764179,5.47\n",
+    "          ,4.28552172217577,-1.24964120001751,5.7\n",
     "          ,4.21933346669629,-0.525528334049115,6.33\n",
+    "          ,4.25752932609571,0.639556511846078,5.62\n",
+    "          ,4.2249722227412,0.452394190253741,2\n",
+    " 50    Lib,4.25269610662864,-0.132446249542314,5.55\n",
+    "          ,4.23933762504607,0.955562917330084,4.95\n",
+    "   Iot1Nor,4.24470786889836,-0.981306523797001,4.63\n",
+    "   Eta Nor,4.21919921059998,-0.851201924334446,4.65\n",
+    "          ,4.2573950699994,0.0772744526320489,5.83\n",
+    "          ,4.19033414989392,0.870589623442016,6.05\n",
+    "          ,4.25041375299142,-0.50377474417773,6.03\n",
+    "  5    Her,4.21235214968831,0.310988583884523,5.12\n",
+    "          ,4.2343701494827,-0.652709507014579,4.89\n",
+    " 15Rho CrB,4.19677844251667,0.581257666692656,5.41\n",
+    "          ,4.22953693001564,-0.42123036683202,5\n",
+    "          ,4.24793001520974,-0.558495664364563,6.01\n",
+    " 14Iot CrB,4.22886564953411,0.521000174267552,4.99\n",
+    " 44Pi  Ser,4.22128018009275,0.398012639643685,4.83\n",
     "          ,4.27531825885642,-0.406201142717625,6.21\n",
+    "          ,4.23014108244903,-0.572215891539963,6.1\n",
+    "          ,4.2555154846511,-0.630708662165829,5.9\n",
+    " 43    Ser,4.26323521018876,0.0870337520327839,6.08\n",
+    "   Xi  Sco,4.23591409459024,-0.185475169982075,5.07\n",
+    "   Xi  Sco,4.23591409459024,-0.185475169982075,4.77\n",
+    "          ,4.25155492981003,-0.97404401485398,6.16\n",
+    "   Del Nor,4.25444143588064,-0.782372926027325,4.72\n",
+    "          ,4.20490093634326,0.923555518103233,5.93\n",
+    "  6Ups Her,4.26182552117754,0.803491409976456,4.76\n",
+    "          ,4.22792585685996,0.639343193826389,5.83\n",
+    "  8Bet1Sco,4.24578191766882,-0.317552961126746,2.62\n",
+    "  8Bet2Sco,4.24618468595774,-0.31761598690529,4.92\n",
+    " 13The Dra,4.26471202724814,1.02215692456729,4.01\n",
+    "   The Lup,4.26263105775538,-0.614317111607515,4.23\n",
+    "          ,4.22342827763366,-0.390842245300075,5.92\n",
     "          ,4.27035078329305,-0.0996292114680096,6.53\n",
     "          ,4.29089196602806,-0.10228599044049,6.41\n",
+    "          ,4.24135146649068,-0.615131598591779,5.73\n",
     "          ,4.26135562484046,0.141303795496185,6.29\n",
+    "  9Ome1Sco,4.27995009417902,-0.337386688820937,3.96\n",
+    "   Iot2Nor,4.25303174686941,-0.978528541404243,5.57\n",
+    "          ,4.21436599113292,1.03691465302026,6.19\n",
     "          ,4.22389817397074,-0.243109820392377,6.32\n",
+    " 10Ome2Sco,4.25195769809895,-0.333905726590571,4.32\n",
     "          ,4.28901238067976,-0.410816568961787,6.33\n",
     "          ,4.26961237476336,-0.678840964426383,7.05\n",
     "          ,4.26988088695597,-0.679054282446071,6.65\n",
+    "          ,4.23390025314563,-0.448084196628677,5.38\n",
+    " 11    Sco,4.26820268575213,-0.19642711103834,5.78\n",
+    "          ,4.28236670391255,-0.389460526308912,5.88\n",
+    " 45    Ser,4.26967950281151,0.172642151843106,5.63\n",
+    "          ,4.2491383200765,0.380874476016463,6.14\n",
+    "          ,4.27061929548566,-0.547165568637033,6.19\n",
+    "          ,4.29867881961388,-0.566432064324326,5.54\n",
+    "  7Kap Her,4.2297383141601,0.297525307960111,5\n",
     "  7Kap Her,4.23027533854533,0.297656207654011,6.25\n",
+    " 47    Ser,4.26128849679231,0.148949307247283,5.73\n",
+    "          ,4.30277363055125,0.0602914293827819,5.91\n",
     "          ,4.30216947811787,-0.308210601491765,6.47\n",
+    "  8    Her,4.28626013070546,0.300298442216058,6.14\n",
+    "          ,4.24309679574268,0.111332613729994,5.97\n",
+    "          ,4.26055008826262,-0.713495446352093,5.86\n",
+    "          ,4.29585944159143,-0.0442101595803786,5.37\n",
+    "          ,4.23947188114238,-0.498878125998524,5.13\n",
+    " 16Tau CrB,4.30196809397341,0.636885188463164,4.76\n",
+    "   Zet Nor,4.27585528324165,-0.950491766225679,5.81\n",
+    "   Del1Aps,4.30398193541802,-1.34921223384378,4.68\n",
+    "   Del2Aps,4.31203730119645,-1.34971159193533,5.27\n",
+    "          ,4.26806842965583,-0.913301708747766,5.83\n",
+    " 11Phi Her,4.28572310632023,0.784263699383652,4.26\n",
+    "   Kap Nor,4.28404490511639,-0.931472525515752,4.94\n",
+    "          ,4.24141859453884,1.18351261391417,5.44\n",
     " 14Nu  Sco,4.31546083165229,-0.323763424381759,6.3\n",
+    " 14Nu  Sco,4.31693764871167,-0.323574347046126,4.01\n",
+    " 13    Sco,4.26558469187414,-0.455070361773466,4.59\n",
+    " 12    Sco,4.26249680165907,-0.481405440931336,5.67\n",
+    "   Del TrA,4.28954940506499,-1.08759222710664,3.85\n",
+    " 15Psi Sco,4.24115008234622,-0.17341300559607,4.94\n",
     "          ,4.27666081981949,0.169515103599949,6.53\n",
+    " 16    Sco,4.25095077737665,-0.130070662504877,5.43\n",
+    "          ,4.24390233232052,1.34030135838499,5.56\n",
+    "          ,4.27531825885642,0.290868816118477,6.08\n",
     "          ,4.23195353974917,1.01120498351103,6.33\n",
+    "          ,4.27035078329305,-1.1529402631834,5.75\n",
     "          ,4.26296669799615,0.97439792884119,6.49\n",
+    " 10    Her,4.28780407581299,0.410060259619257,5.7\n",
+    "          ,4.32096533160088,-0.978916392349131,5.63\n",
     "          ,4.31700477675982,-0.0659589013149524,6.25\n",
     "          ,4.30686844148862,-0.411514700662585,6.41\n",
     "          ,4.29008642945022,0.581936405846209,6.29\n",
+    "          ,4.27981583808271,-0.575759879548874,5.92\n",
+    "   The Nor,4.27478123447119,-0.813808245110467,5.14\n",
+    "          ,4.30122968544372,0.635736180038935,5.63\n",
+    "  9    Her,4.26618884430752,0.0876349209973597,5.48\n",
+    " 17Chi Sco,4.3138497584966,-0.177369085233924,5.22\n",
+    "          ,4.28646151484992,-0.717335170706481,6.14\n",
+    "          ,4.30069266105849,0.739573574258975,5.87\n",
     "          ,4.28854248434268,-0.364642913972915,6.41\n",
     "          ,4.30196809397341,0.465493855917321,6.5\n",
     "          ,4.30237086226233,-0.304816905723999,6.32\n",
+    "          ,4.32183799622688,-0.428008062093932,6.05\n",
+    "          ,4.31646775237459,-0.910867944068596,5.44\n",
+    "  1Del Oph,4.27766774054179,-0.0402395355320915,2.74\n",
     "          ,4.26800130160767,0.103008362825343,6.31\n",
+    "   Gam1Nor,4.26417500286292,-0.871471984341635,4.99\n",
     "          ,4.29102622212437,-0.923511884871933,6.33\n",
+    " 18    Sco,4.30431757565878,-0.13317831820079,5.5\n",
+    "          ,4.32338194133441,-0.229525341047688,6.09\n",
     "          ,4.3370089351096,-0.97913455850563,6.49\n",
+    " 17Sig CrB,4.30465321589955,0.590944244041224,5.64\n",
     " 17Sig CrB,4.30465321589955,0.590939395904413,6.66\n",
+    " 16    Her,4.29277155137636,0.328267343479267,5.69\n",
     "          ,4.33754595949483,-0.361215281247471,6.61\n",
+    "          ,4.33284699612408,-0.0357210720241506,6.18\n",
+    "          ,4.31787744138582,0.478608065991334,6.14\n",
     "          ,4.27484836251934,1.17188678184116,6.21\n",
+    "          ,4.29136186236514,-0.477977808205892,4.78\n",
+    "   Lam Nor,4.29545667330251,-0.721276705933901,5.45\n",
+    "   Gam2Nor,4.33935841679498,-0.869949669382951,4.02\n",
+    "          ,4.30988920365554,-0.957487627644089,5.77\n",
+    " 18Ups CrB,4.31875010601182,0.508768325093158,5.78\n",
+    "  2Eps Oph,4.29324144771344,-0.0577267650097124,3.24\n",
     "          ,4.28203106367178,-0.345264911138967,6.29\n",
+    "          ,4.31559508774859,-0.507774457046884,5.49\n",
+    "          ,4.27223036864135,-0.229118097555556,5.94\n",
+    " 19    UMi,4.29888020375834,1.324312203182,5.48\n",
+    "          ,4.31982415478227,-0.67315894808378,6.12\n",
+    " 19Omi Sco,4.32734249617548,-0.415921657023871,4.55\n",
     " 20    UMi,4.28438054535716,1.31267182669856,6.39\n",
+    "          ,4.32237502061211,-0.845224171646365,5.33\n",
+    " 20Sig Sco,4.29559092939881,-0.425986389043705,2.89\n",
+    "          ,4.32358332547888,-0.734570297069924,5.88\n",
+    "          ,4.28350788073116,1.04292149452921,5.4\n",
+    "          ,4.28182967952732,0.368831704177702,6.05\n",
+    "          ,4.29485252086912,1.28098440450124,5.98\n",
+    "          ,4.32740962422363,-1.09738061532825,6.15\n",
+    "          ,4.28673002704253,0.855875528220342,5.91\n",
+    "          ,4.34566845332142,0.693046005282893,5.46\n",
+    " 22Tau Her,4.33130305101654,0.808320154240307,3.89\n",
+    " 50Sig Ser,4.2906905818836,0.0179623468851083,4.82\n",
+    "          ,4.29525528915805,-0.677308953194077,5.4\n",
+    " 20Gam Her,4.3545293556777,0.334283881261836,3.75\n",
     "          ,4.3370089351096,-0.0335151697751022,6.23\n",
     "          ,4.36526984338228,-0.572477690927762,6.47\n",
+    "   Zet TrA,4.34868921548833,-1.22025664280546,4.91\n",
     "          ,4.36627676410458,-0.779304055425901,6.33\n",
+    "          ,4.33606914243545,-0.635896168553701,5.42\n",
     "          ,4.27995009417902,1.19650077243109,6.41\n",
+    "   Gam Aps,4.36902901407888,-1.34569733465574,3.89\n",
+    " 19Xi  CrB,4.2925701672319,0.539166142898726,4.85\n",
+    "  4Psi Oph,4.3018338378771,-0.348411351929368,4.5\n",
     "          ,4.34667537404372,-0.493870000672662,6.63\n",
+    "          ,4.34680963014003,-0.493845759988607,5.84\n",
+    " 20Nu 1CrB,4.31351411825583,0.58990674276365,5.2\n",
+    " 21Nu 2CrB,4.3239860937678,0.588238983700633,5.39\n",
+    "   Iot TrA,4.38352867248007,-1.11599746068285,5.27\n",
     "          ,4.36063800805968,0.564318276674689,6.4\n",
+    " 21    Her,4.30800961830723,0.121266446055928,5.85\n",
+    "  5Rho Oph,4.34513142893619,-0.393620227692832,5.02\n",
+    "  5Rho Oph,4.34499717283988,-0.393639620240077,5.92\n",
+    "          ,4.3313701790647,-1.00182383878156,5.69\n",
+    "   Eps Nor,4.32150235598611,-0.810618171088766,4.47\n",
+    " 21Eta UMi,4.30364629517725,1.32217902298512,4.95\n",
+    " 24Ome Her,4.33143730711285,0.244927871696538,4.57\n",
+    "  7Chi Oph,4.30847951464431,-0.30619377657835,4.42\n",
     "          ,4.3619134409746,0.329736328933029,6.7\n",
+    "          ,4.37574181889425,-0.981645893373777,6.06\n",
+    "          ,4.31767605724136,0.199098434421253,6.11\n",
+    "          ,4.33069889858316,-0.642639926857934,5.79\n",
+    " 25    Her,4.33036325834239,0.652646481236035,5.54\n",
+    "          ,4.36949891041596,0.0409716041905669,6.07\n",
+    "          ,4.38601241026175,-1.05359224365043,5.2\n",
+    "          ,4.34580270941773,1.20618734977966,5.25\n",
+    "          ,4.32747675227179,0.96350901356347,5.74\n",
+    "          ,4.36500133118966,-0.111735009085315,5.23\n",
+    "  3Ups Oph,4.3711771116198,-0.133139533106301,4.63\n",
+    "          ,4.35224700204048,1.07680997083877,5.67\n",
+    "          ,4.37211690429395,-0.798604488070872,5.35\n",
+    " 14Eta Dra,4.36902901407888,1.07362474495388,2.74\n",
     "          ,4.59565330464553,-1.50855109827724,6.57\n",
+    " 21Alp Sco,4.34808506305495,-0.446246752777272,0.96\n",
+    "          ,4.36305461779321,-1.20448565375896,5.5\n",
+    "          ,4.35661032517046,0.0116064395257623,5.39\n",
     "          ,4.37661448352024,-0.137376804679198,6.48\n",
     "          ,4.45710101325644,-1.44445388149775,6.57\n",
+    "          ,4.52912940892528,-1.49462240121897,6.04\n",
+    "          ,4.37829268472408,-0.234732239982804,5.68\n",
+    " 22    Sco,4.33633765462807,-0.434325184358789,4.79\n",
+    "          ,4.38003801397608,-0.701326622956244,5.33\n",
+    "          ,4.35479786787031,-0.581117070725134,4.23\n",
     "          ,4.35983247148184,-0.113184601991832,6.5\n",
+    "          ,4.35466361177401,-0.444399612652245,6.1\n",
+    " 30    Her,4.36265184950429,0.730972979556092,5.04\n",
+    "  8Phi Oph,4.33519647780945,-0.268557690513816,4.28\n",
+    " 27Bet Her,4.33741170339852,0.37506640811677,2.77\n",
+    " 10Lam Oph,4.39326223946234,0.0346253931048431,3.82\n",
     "          ,4.36923039822334,0.897234983355796,6.29\n",
+    "   The TrA,4.40165324548154,-1.12581978586213,5.52\n",
+    "          ,4.3647999470452,0.357428886398005,5.25\n",
+    "  9Ome Oph,4.33942554484313,-0.35837912121298,4.45\n",
+    "          ,4.34204353872112,0.387380675616953,5.76\n",
+    "   Mu  Nor,4.34385599602127,-0.767154624577296,4.94\n",
     " 34    Her,4.3277452644644,0.854527746186857,6.45\n",
     "          ,4.32781239251255,0.614792229015003,6.25\n",
+    " 28    Her,4.37634597132763,0.0963615672573314,5.63\n",
+    " 29    Her,4.37715150790547,0.200504394096471,4.84\n",
     "          ,4.35211274594417,-0.781126954866873,6.46\n",
+    " 15    Dra,4.38581102611729,1.20022898963882,5\n",
+    "          ,4.38755635536928,0.795841050088548,5.65\n",
+    "   Bet Aps,4.38258887980591,-1.33487144515656,4.24\n",
+    "          ,4.37607745913501,-0.718047846817712,5.47\n",
+    " 23Tau Sco,4.41266224537874,-0.48492034011938,2.82\n",
+    "          ,4.37607745913501,-0.606404952331808,4.16\n",
+    "          ,4.42534944647978,-1.02991394346504,6.18\n",
+    " 35Sig Her,4.34546706917696,0.740664405041471,4.2\n",
     "          ,4.3768158676647,0.297704689022122,6.41\n",
+    "          ,4.3629203616969,1.06156742870468,5.94\n",
+    " 12    Oph,4.37473489817194,-0.0292391131077161,5.75\n",
+    "   Eta1TrA,4.3989681235554,-1.18165577751552,5.91\n",
+    "          ,4.35573766054446,1.37817985129008,5.56\n",
+    "          ,4.38977158095835,-0.74353450203364,5.83\n",
+    " 13Zet Oph,4.36298748974506,-0.164633029831176,2.56\n",
     "          ,4.403599958878,0.270492097101443,6.3\n",
+    "          ,4.43112245862099,-1.03941144347798,6.18\n",
+    "          ,4.36594112386382,-0.641975732114814,5.91\n",
+    "          ,4.35674458126677,-0.0953289141165681,6.09\n",
     "          ,4.36177918487829,1.26731750683076,6.3\n",
     "          ,4.41467608682335,0.238882245093102,6.31\n",
+    "          ,4.40608369665968,-1.16182204982133,6.03\n",
+    "          ,4.36090652025229,0.81355614199629,5.79\n",
+    " 16    Dra,4.36130928854122,0.923284022441811,5.53\n",
+    " 17    Dra,4.36426292265997,0.923705810344377,5.08\n",
     " 17    Dra,4.3647999470452,0.923700962207566,6.53\n",
+    "          ,4.39494044066618,-0.824440209137199,5.65\n",
+    "          ,4.42165740383133,-0.843837604518392,5.65\n",
     "          ,4.41145394051198,-0.147402751604543,6.35\n",
     "          ,4.40964148321183,-0.341934241149745,6.26\n",
     "          ,4.37178126405318,1.35169932802788,6.34\n",
+    "          ,4.42877297693561,-0.573403685058682,5.87\n",
+    "          ,4.41628715997904,-0.410709909951943,6.09\n",
     " 36    Her,4.41044701978967,0.0734298801408503,6.93\n",
+    " 37    Her,4.41528023925673,0.0736480462973496,5.77\n",
+    "          ,4.41387055024551,-0.283751751279789,4.96\n",
     "          ,4.38097780665023,-0.801620029167373,6.23\n",
+    "          ,4.41971069043487,1.10082764060093,6.16\n",
+    "          ,4.35513350811108,0.977655876778246,5.29\n",
+    " 42    Her,4.41487747096781,0.853960514179959,4.9\n",
     "          ,4.38312590419114,-0.0174435962463211,6.24\n",
+    "          ,4.43978197683281,-0.315477958571597,5.57\n",
+    "          ,4.43233076348775,0.216333560784697,6.08\n",
+    "          ,4.44320550728864,-1.16745558479582,5.13\n",
+    " 14    Oph,4.42474529404639,0.0206142777207775,5.74\n",
+    "          ,4.43749962319558,-0.713509990762526,6.2\n",
+    "          ,4.43421034883606,-0.922362876447703,5.96\n",
+    "          ,4.36849198969365,0.433864611361735,6.06\n",
+    "          ,4.44877713528539,-0.713611801635559,6.12\n",
+    "          ,4.44031900121804,-0.660490766596388,6.05\n",
     "          ,4.42837020864669,-0.556653372376347,6.46\n",
+    " 40Zet Her,4.39077850168066,0.55157737313513,2.81\n",
+    " 39    Her,4.41695844046057,0.469789305131952,5.92\n",
+    "          ,4.43796951953266,-0.683475783217791,5.71\n",
+    "          ,4.41796536118288,-1.0035012941182,5.74\n",
     "          ,4.40400272716692,-0.46327825739465,6.58\n",
+    "   Alp TrA,4.45179789745231,-1.20379237019498,1.92\n",
+    "          ,4.38540825782837,-0.479795859510052,6.02\n",
+    "          ,4.42004633067564,-1.00633260601587,5.58\n",
+    " 44Eta Her,4.4442795560591,0.679320929970682,3.53\n",
+    "          ,4.45367748280061,-0.674094638488321,5.48\n",
+    "          ,4.44582350116663,0.594090684831625,5.99\n",
+    " 18    Dra,4.43729823905112,1.1272936194527,4.83\n",
+    " 16    Oph,4.42501380623901,0.0178072065071533,6.03\n",
     " 25    Sco,4.45837644617136,-0.427106308647068,6.71\n",
+    "          ,4.45045533648923,0.971978708572453,6.16\n",
+    "          ,4.41534736730489,0.274806938863318,5.56\n",
+    " 43    Her,4.45213353769307,0.149792883052413,5.15\n",
+    "   Eta Ara,4.46582765951641,-1.0290218862918,3.76\n",
+    "          ,4.4008477089037,0.754282821343838,6.05\n",
     "          ,4.43904356830312,-1.15746842296496,6.32\n",
+    " 19    Oph,4.40702348933384,0.0360313527800607,6.1\n",
+    "          ,4.48368372032528,-1.12790933282771,6.13\n",
+    " 45    Her,4.45616122058229,0.0915716080879692,5.24\n",
+    "          ,4.43447886102867,-0.22847329535968,6.03\n",
     "          ,4.45515429985999,-0.871869531560145,6.47\n",
+    "          ,4.40903733077844,0.991031886240058,4.85\n",
     "          ,4.4212546355424,1.37738475685306,6.32\n",
     "          ,4.41017850759706,0.237199941619652,6.35\n",
+    "          ,4.43991623292911,-0.250149315042087,6.1\n",
+    " 26Eps Sco,4.42011345872379,-0.588292313205555,2.29\n",
+    "          ,4.42044909896456,0.73720768349516,5.87\n",
+    " 20    Oph,4.46972108630932,-0.160866027528955,4.65\n",
+    "          ,4.48724150687742,-0.636793073863753,6.11\n",
+    "          ,4.45656398887121,-0.711561039764466,5.22\n",
+    "          ,4.44904564747801,0.231454899498504,5.91\n",
+    "   Mu 1Sco,4.48140136668806,-0.662396084363148,3.08\n",
     "          ,4.4368954707622,-0.0234940709865681,6.32\n",
     "          ,4.44132592194034,-0.700672124486746,6.49\n",
+    " 47    Her,4.43300204396929,0.1264975856751,5.49\n",
+    "          ,4.42508093428716,-0.978964873717242,5.94\n",
+    "   Mu 2Sco,4.44266848290341,-0.662919683138746,3.57\n",
+    "          ,4.4619342327235,-1.09484988791285,6.02\n",
+    " 52    Her,4.42165740383133,0.802560567708726,4.82\n",
+    " 21    Oph,4.44474945239617,0.0212251429589755,5.51\n",
+    "          ,4.45696675716014,0.758006190414759,6.13\n",
+    "          ,4.47710517160622,-0.749604369321131,5.96\n",
+    " 50    Her,4.45931623884551,0.520224472377777,5.72\n",
+    "          ,4.46482073879411,0.568167697302698,6.13\n",
+    "          ,4.42682626353916,-0.701510852155065,5.45\n",
     "          ,4.49898891530431,-0.698223815397143,6.32\n",
+    "   Zet1Sco,4.50019722017107,-0.72671631543595,4.73\n",
     "          ,4.44025187316988,-0.700744846538912,6.45\n",
     "          ,4.4554228120526,0.731234778943891,6.29\n",
     "          ,4.45072384868185,-0.701273293451322,6.59\n",
+    "          ,4.46052454371228,-0.72468009797529,5.88\n",
+    "          ,4.38446846515422,1.35287742527297,5.98\n",
     " 49    Her,4.42226155626471,0.261348511075718,6.52\n",
+    "          ,4.45387886694507,-0.341813037729467,5.88\n",
+    " 51    Her,4.47213769604285,0.430335167763257,5.04\n",
+    "   Zet2Sco,4.47139928751317,-0.726730859846383,3.62\n",
+    "          ,4.50281521404906,-0.712947606892439,5.77\n",
     "          ,4.47274184847624,-0.513349814379643,6.35\n",
     "          ,4.44508509263694,-0.860883653546203,6.33\n",
+    "          ,4.47166779970578,-0.902616415216112,5.94\n",
+    "          ,4.49160483000741,-1.19959388371657,5.79\n",
     "          ,4.43864080001419,-0.00676799898828912,6.25\n",
     "          ,4.47851486061745,-0.178154483397321,6.57\n",
+    " 53    Her,4.49368579950017,0.553298461703069,5.32\n",
+    " 23    Oph,4.47233908018732,-0.102033887326313,5.25\n",
+    " 25Iot Oph,4.42508093428716,0.177417566602035,4.38\n",
     "          ,4.50637300060121,-0.567105955341069,6.37\n",
+    "          ,4.48146849473621,-0.683756975152834,6.15\n",
     "          ,4.43555290979913,-0.265183387293294,6.37\n",
+    "   Zet Ara,4.49180621415187,-0.942647480865326,3.13\n",
+    "          ,4.44367540362572,0.827581801790789,6\n",
+    "          ,4.49851901896723,0.365796770533956,5.41\n",
+    " 27    Sco,4.45240204988569,-0.571430493376566,5.48\n",
+    "          ,4.46602904366087,-0.861475126237157,5.55\n",
     "          ,4.45025395234477,0.237708995984817,6.34\n",
+    " 24    Oph,4.49757922629308,-0.398807734080704,5.58\n",
+    " 56    Her,4.43159235495806,0.449082912811763,6.08\n",
+    " 54    Her,4.45857783031582,0.321722358784288,5.35\n",
     "          ,4.44286986704787,-0.322187779918153,6.27\n",
+    "   Eps1Ara,4.4933501592594,-0.922222280480182,4.06\n",
+    "          ,4.47254046433178,-0.157719586738554,6.19\n",
+    "          ,4.45891347055659,-0.932059150069894,5.65\n",
+    "          ,4.51221314079057,-0.634931389328293,6.09\n",
+    " 27Kap Oph,4.49133631781479,0.163624617374468,3.2\n",
+    "          ,4.48697299468481,-0.826452185913804,6\n",
     "          ,4.4804615740139,0.242324422228979,6.37\n",
     "          ,4.49771348238939,-0.229166578923667,6.59\n",
     "          ,4.49395431169278,-0.777515092942607,6.65\n",
+    "          ,4.51859030536516,-0.995564894158432,6.11\n",
     " 57    Her,4.47911901305083,0.442489446748674,6.28\n",
     "          ,4.44172869022926,0.873343365150718,6.56\n",
     "          ,4.49428995193355,0.425535512320273,6.32\n",
+    "          ,4.52355778092853,-0.43472757971411,5.86\n",
+    " 26    Oph,4.46334392173473,-0.401614805294328,5.75\n",
+    "          ,4.50013009212292,-0.594560954102302,5.97\n",
     "          ,4.51684497611317,-0.887834446079082,6.45\n",
     "          ,4.50489618354183,0.741983098254089,6.34\n",
+    "   Eps2Ara,4.47549409845054,-0.92088904285713,5.29\n",
+    " 19    Dra,4.43541865370282,1.1368153601497,4.89\n",
+    "          ,4.52570587846945,-0.555998873906849,5.03\n",
     "          ,4.49006088489987,0.114905690559771,6.59\n",
+    " 30    Oph,4.45978613518259,-0.0659298124940858,4.82\n",
     " 20    Dra,4.46696883633503,1.13514760108668,6.41\n",
+    "          ,4.50120414089337,-0.982407050853119,5.73\n",
     " 29    Oph,4.52369203702484,-0.298703405205207,6.26\n",
+    " 22Eps UMi,4.46314253759027,1.43181963696804,4.23\n",
+    "          ,4.51966435413562,-0.817512221634144,6.06\n",
+    " 58Eps Her,4.473950153343,0.539767311863302,3.92\n",
+    "          ,4.52859238454006,0.395006794820806,5.65\n",
     "          ,4.49925742749692,0.26091702689953,6.31\n",
+    "          ,4.53188165889958,-0.660568336785365,5.91\n",
     "          ,4.46784150096102,0.474666530763913,6.55\n",
     "          ,4.53429826863311,0.147490018067143,6.33\n",
+    "          ,4.47509133016161,0.98940291227153,6.03\n",
     "          ,4.47952178133975,-0.77664242831661,6.28\n",
+    " 59    Her,4.50382213477137,0.58587794107363,5.25\n",
+    "          ,4.48442212885497,0.445155921994776,5.75\n",
+    "          ,4.53436539668127,-0.591269069207568,4.87\n",
     "          ,4.45569132424522,1.27632049688896,6.3\n",
     "          ,4.48240828741036,0.556493383861581,6.36\n",
+    "          ,4.47415153748746,0.245950828563679,4.98\n",
+    "          ,4.5376546710408,-0.766112275162911,6.19\n",
     "          ,4.47764219599145,0.253266667011622,6.52\n",
     "          ,4.52886089673267,-0.340431318738305,6.3\n",
+    "          ,4.51644220782425,0.23745689287064,5.93\n",
+    "          ,4.54154809783371,0.236797546264331,6.08\n",
     "          ,4.53443252472942,0.343665025991306,6.35\n",
+    "          ,4.50402351891583,-0.641801199189615,5.98\n",
     "          ,4.44971692795954,1.20753028367633,6.4\n",
     " 61    Her,4.50422490306029,0.618093810183359,6.69\n",
+    "          ,4.51489826271672,-0.602991864016797,6.13\n",
+    "          ,4.47737368379884,1.05852764692413,6.13\n",
+    "          ,4.4950954885114,0.0122609379952602,6.01\n",
     "          ,4.49261175072971,-0.356662880781852,6.3\n",
+    "          ,4.53550657349988,0.607204894905638,6.04\n",
+    "          ,4.52349065288038,0.342069988980455,6.17\n",
+    "          ,4.51577092734271,0.0155673673004272,5.64\n",
     "          ,4.54819377460092,-0.444831096828432,6.29\n",
+    " 60    Her,4.50288234209722,0.222369491114511,4.91\n",
     "          ,4.50268095795276,-1.05286017499196,6.39\n",
     "          ,4.52953217721421,-1.20914471323443,6.22\n",
     "          ,4.48979237270726,0.169878713860781,6.37\n",
     "          ,4.49435707998171,0.182459628885574,6.37\n",
+    "          ,4.47985742158052,1.12749239306196,6.1\n",
     "          ,4.54779100631199,-0.00599714523532496,6.38\n",
     "          ,4.47911901305083,0.764667530393204,6.43\n",
+    "          ,4.5349024210665,0.851793397025399,6.09\n",
+    "          ,4.50106988479707,0.385441420892514,5.56\n",
+    "          ,4.50550033597521,-0.286074008812304,5.99\n",
+    "          ,4.54926782337137,-0.516554432811777,5.97\n",
+    "          ,4.50375500672321,-0.01606672539197,6.06\n",
+    "          ,4.53080761012913,-1.16593811797395,5.89\n",
+    " 21Mu  Dra,4.49898891530431,0.950685691698122,5.83\n",
+    " 21Mu  Dra,4.498854659208,0.950685691698122,5.8\n",
+    "          ,4.55101315262337,-0.758214660297637,5.08\n",
     "          ,4.55866575011288,-0.0369524987741688,6.36\n",
     "          ,4.5681979329507,-1.28224007193531,6.25\n",
+    "          ,4.55081176847891,-0.822500954412761,5.84\n",
+    "          ,4.5543024269829,-0.165399035447329,5.56\n",
     "          ,4.54383045147093,0.707139538992747,6.34\n",
+    "          ,4.48818129955157,0.627188914840973,5.39\n",
+    " 35Eta Oph,4.52469895774715,-0.249150598859002,2.43\n",
     "          ,4.50892386643104,1.31418444538362,6.21\n",
+    "   Eta Sco,4.51530103100564,-0.746317332563209,3.33\n",
+    "          ,4.52469895774715,-0.671830558597539,5.67\n",
     "          ,4.52510172603607,-0.648874630797003,6.3\n",
     "          ,4.50845397009397,0.887364176808406,6.46\n",
+    "          ,4.5293979211179,-0.961880039594942,6.09\n",
     "          ,4.55571211599412,0.217594076355582,6.57\n",
     "          ,4.52120829924316,-0.431886571542808,6.54\n",
+    "          ,4.53651349422218,-0.457940458765634,6.14\n",
+    "          ,4.53456678082573,0.711696787595177,5.08\n",
+    "          ,4.58175779867773,-0.550850152613466,6.01\n",
     "          ,4.55926990254626,0.137788896308141,6.33\n",
+    " 63    Her,4.50288234209722,0.423029025588937,6.19\n",
     "          ,4.54886505508245,-0.667292702542354,6.6\n",
+    " 37    Oph,4.54027266491879,0.184747949460411,5.33\n",
     "          ,4.57598478653652,0.00614258933965782,6.65\n",
     "          ,4.53530518935542,0.914707668422984,6.29\n",
+    " 22Zet Dra,4.54886505508245,1.14693826981126,3.17\n",
+    "          ,4.54195086612263,-0.566388431093027,5.53\n",
+    "          ,4.56423737810963,-0.652859799255723,5.96\n",
+    "          ,4.5525570977309,0.868243125225446,6.04\n",
     "          ,4.55504083551259,-1.22093538195901,6.53\n",
+    " 36    Oph,4.54423321975985,-0.443265148638449,5.11\n",
+    " 36    Oph,4.54396470756724,-0.443289389322504,5.07\n",
     "          ,4.58518132913356,-0.519923887895489,6.21\n",
+    "          ,4.5432934270857,-0.234155311702284,5.99\n",
+    "          ,4.54926782337137,-0.59778496508168,6.12\n",
+    " 64Alp1Her,4.56390173786886,0.251157727498795,3.48\n",
+    " 64Alp2Her,4.56430450615779,0.251152879361984,5.39\n",
+    "          ,4.55014048799737,-1.01762391664892,5.91\n",
+    "          ,4.52973356135867,-0.546937706206912,5.55\n",
+    " 65Del Her,4.51859030536516,0.433525241784958,3.14\n",
+    "   Iot Aps,4.55450381112736,-1.2195779036519,5.41\n",
+    "          ,4.53946712834094,0.0381548367033205,6.17\n",
+    "          ,4.57786437188482,-0.100443698452274,6.09\n",
+    "          ,4.56296194519471,0.0211281802227536,5.88\n",
+    " 41    Oph,4.56967475001008,0.00777156330818586,4.73\n",
+    "          ,4.5377889271371,-0.791788007714472,5.48\n",
+    "   Zet Aps,4.62196749952175,-1.15592186732222,4.78\n",
+    " 67Pi  Her,4.51979861023193,0.642441153248679,3.16\n",
+    "          ,4.57188997559915,0.414389645791565,5.96\n",
+    "          ,4.59357233515277,-0.765680790986723,5.76\n",
+    "          ,4.54671695754154,1.09736607091781,5.56\n",
     "          ,4.55651765257197,-0.548847872110483,6.36\n",
     "          ,4.57417232923637,-0.871559250804235,6.27\n",
+    " 39Omi Oph,4.53006920159944,-0.413870895152778,5.2\n",
     " 39Omi Oph,4.52980068940682,-0.413919376520889,6.8\n",
+    "          ,4.60592389601304,-0.576138034220139,5.91\n",
     "          ,4.56638547565055,-0.764051817018195,6.65\n",
     "          ,4.55490657941628,-0.273808222680233,6.43\n",
+    "          ,4.62250452390698,-1.38126811443875,5.88\n",
     "          ,4.5729640243696,0.403011068695924,6.45\n",
+    " 68    Her,4.55094602457521,0.577703982410123,4.82\n",
+    "          ,4.53584221374065,0.30225708948774,6\n",
+    "          ,4.57880416455897,0.189620326955562,5.03\n",
     "          ,4.60001662777552,0.106208133120666,6.51\n",
+    "          ,4.60505123138704,-0.283504496302423,6.02\n",
+    " 69    Her,4.57887129260712,0.650862366889552,4.65\n",
     "          ,4.58565122547064,0.867273497863227,7.48\n",
+    "          ,4.62042355441422,-1.0121115850947,5.88\n",
     "          ,4.61337510935809,-0.0712579148494796,6.32\n",
+    "          ,4.55678616476458,-1.06702158261717,5.7\n",
     "          ,4.58377164012234,-0.32580448997923,6.52\n",
+    "          ,4.56020969522042,-0.968216554407043,5.8\n",
+    "          ,4.5942436156343,0.503057219929688,5.65\n",
+    "          ,4.56041107936488,0.677386523383055,5.94\n",
+    " 40Xi  Oph,4.54248789050786,-0.364550799373504,4.39\n",
+    " 53Nu  Ser,4.60458133504996,-0.19465754110229,4.33\n",
+    "          ,4.58041523771466,-1.03544081942969,5.77\n",
     "          ,4.55987405497965,1.05890095345858,6.32\n",
     "          ,4.60860901793918,-0.162383494350828,6.46\n",
     "          ,4.59947960339029,-0.631721922759348,6.41\n",
+    "   Iot Ara,4.57256125608068,-0.812130789773828,5.25\n",
+    "          ,4.56323045738733,0.315157981542065,5\n",
+    " 42The Oph,4.54738823802307,-0.401435424232318,3.27\n",
     "          ,4.59760001804199,-0.594982742004867,6.47\n",
+    "          ,4.55101315262337,0.445713457728052,5.38\n",
+    "          ,4.62028929831791,-0.641922402609892,5.93\n",
+    " 70    Her,4.61062285938379,0.427595970464989,5.12\n",
+    " 72    Her,4.59102146932293,0.56666962302807,5.39\n",
+    " 43    Oph,4.57994534137758,-0.486195400100698,5.35\n",
+    "          ,4.57276264022514,-0.765108710843014,5.12\n",
+    "   Bet Ara,4.58383876817049,-0.950680843561311,2.85\n",
+    "   Gam Ara,4.5913571095637,-0.970795763190546,3.34\n",
     "          ,4.58706091448187,0.292008128269085,6.35\n",
+    " 74    Her,4.56618409150609,0.807054790532611,5.59\n",
     "          ,4.61545607885085,-0.0281288897779753,6.29\n",
     "          ,4.58410728036311,0.501922755915891,6.35\n",
     "          ,4.5829661035445,0.841045077715201,6.43\n",
+    "   Kap Ara,4.56403599396517,-0.861606025931056,5.23\n",
+    "          ,4.60075503630521,0.697685672211111,5.51\n",
+    "          ,4.56329758543548,-0.581257666692656,6.16\n",
     "          ,4.5831003596408,-1.09892232283417,6.24\n",
+    "          ,4.61169690815425,-0.358810605389168,5.85\n",
     "          ,4.60511835943519,-0.306378005777171,6.21\n",
+    "          ,4.56799654880624,-0.414627204495308,6.19\n",
+    "          ,4.63962217618616,-0.873551835033595,6.19\n",
+    "          ,4.62827753604819,0.154510120169609,5.77\n",
+    "          ,4.63317788356341,-0.770674371902152,5.29\n",
+    "          ,4.58504707303726,-0.861664203572789,5.92\n",
+    "          ,4.60317164603874,0.932364582688993,5.67\n",
+    " 73    Her,4.56417025006148,0.400732444394709,5.74\n",
+    "          ,4.59760001804199,0.28450806062232,5.71\n",
     "          ,4.60068790825705,0.272378022320959,6.35\n",
+    "          ,4.64573082856814,-0.902383704649179,5.75\n",
+    " 75Rho Her,4.60558825577227,0.64833163947416,5.47\n",
+    " 75Rho Her,4.60599102406119,0.648317095063727,4.52\n",
+    " 44    Oph,4.59384084734538,-0.415819846150838,4.17\n",
+    "          ,4.62471974949605,-0.956968877005302,5.94\n",
     "          ,4.55826298182396,0.673396506787523,6.49\n",
     "          ,4.63740695059709,-0.00607956356111358,6.44\n",
     "          ,4.63814535912678,-0.419868040388103,6.44\n",
     "          ,4.59169274980447,0.644933095569582,6.28\n",
+    " 45    Oph,4.5969958656086,-0.491014448090927,4.29\n",
+    "          ,4.61491905446562,-0.0857538439146547,4.54\n",
+    "          ,4.61874535321038,-0.493501542275019,6\n",
+    "          ,4.63270798722633,0.295266076206141,5.98\n",
     "          ,4.57121869511761,-0.200494697822849,6.21\n",
+    "          ,4.58954465226355,0.132567452962592,6.06\n",
+    " 49Sig Oph,4.60552112772411,0.0722614791693764,4.34\n",
     "          ,4.56524429883194,0.469125110388831,6.41\n",
+    "   Del Ara,4.59377371929723,-1.03526143836768,3.62\n",
+    "          ,4.64808031025351,-0.61473405137327,6.02\n",
+    "          ,4.62995573725203,0.350476658210895,5.54\n",
     "          ,4.61162978010609,-0.654207581289208,6.39\n",
     "          ,4.57585053044021,-0.135990237551225,6.37\n",
+    "          ,4.61673151176577,-0.961317655724855,5.95\n",
+    "          ,4.62606231045912,0.605556528389866,5.94\n",
+    "          ,4.63948792008985,0.00576928280520348,5.44\n",
+    " 34Ups Sco,4.64297857859384,-0.640608557534085,2.69\n",
+    " 77    Her,4.62337718853298,0.842295897012463,5.85\n",
+    "   Alp Ara,4.65365193825027,-0.839920309975027,2.95\n",
+    "          ,4.61512043861008,1.04804112700173,5.65\n",
     "          ,4.64076335300477,-0.0712142816181797,6.37\n",
+    "          ,4.65177235290196,-0.802216349995138,6.03\n",
     "          ,4.57061454268423,1.02366954325235,6.51\n",
+    "          ,4.61344223740624,-0.0163624617374468,5.31\n",
     "          ,4.64948999926474,-0.563692867026057,6.44\n",
     "          ,4.5599411830278,1.17471809373884,6.43\n",
+    " 51    Oph,4.61941663369191,-0.384622085771439,4.81\n",
+    "          ,4.64546231637552,-0.449078064674952,6.05\n",
     "          ,4.61156265205794,0.208130513300324,6.39\n",
+    "          ,4.62310867634036,-0.588529871909299,6.17\n",
+    "          ,4.60451420700181,-0.71255490781074,5.84\n",
+    "          ,4.61444915812855,0.0475505258432233,5.59\n",
     "          ,4.65016127974628,-1.01497683395006,6.28\n",
+    " 76Lam Her,4.64096473714923,0.455715163969342,4.41\n",
+    " 35Lam Sco,4.64358273102722,-0.643958620070552,1.63\n",
+    "          ,4.65586716383933,0.543815506100567,5.61\n",
+    "          ,4.58316748768896,1.39864383676971,5.72\n",
+    "          ,4.6301571213965,-0.918867369806903,6.1\n",
     "          ,4.63559449329694,0.678622798269884,6.43\n",
     "          ,4.61035434719117,0.208222627899735,6.42\n",
+    " 78    Her,4.6524436333835,0.495804407260289,5.62\n",
+    "          ,4.63472182867094,-0.0742686078091698,5.62\n",
+    "          ,4.65600141993564,-0.548353362155752,5.7\n",
+    " 23Bet Dra,4.616395871525,0.91283143947709,2.79\n",
+    "  1Sig Ara,4.65647131627272,-0.794027846921198,4.59\n",
     "          ,4.59169274980447,0.59813887906889,6.56\n",
     "          ,4.66103602354716,-0.638092374529127,6.48\n",
     "          ,4.64029345666769,1.01013354527577,6.4\n",
+    "          ,4.62518964583313,0.336092236292375,5.64\n",
+    "          ,4.64747615782013,0.284794100694175,5.69\n",
     "          ,4.65204086509458,0.259035949816825,6.48\n",
+    "          ,4.66123740769163,-0.187763490556912,5.55\n",
     " 52    Oph,4.62814327995189,-0.383206429822599,6.57\n",
+    "          ,4.65170522485381,-0.65213742687087,4.29\n",
+    "          ,4.64855020659059,-0.871617428445968,5.93\n",
+    " 53    Oph,4.64821456634982,0.167318897624523,5.81\n",
+    "   Pi  Ara,4.62391421291821,-0.933746301680155,5.25\n",
+    "          ,4.6043799509055,0.719836809301006,5.74\n",
     "          ,4.63546023720063,0.28804720049442,6.4\n",
     "          ,4.76253363235545,-1.4797822544402,6.45\n",
+    "   The Sco,4.63780971888601,-0.715623778412164,1.87\n",
+    " 24Nu 1Dra,4.60444707895366,0.963145403302637,4.88\n",
+    " 25Nu 2Dra,4.61169690815425,0.962951477830194,4.87\n",
+    " 55Alp Oph,4.67426024903343,0.219213354050488,2.08\n",
     "          ,4.64801318220536,-0.662080955470427,6.26\n",
+    "          ,4.62780763971112,-0.717669692146446,6.1\n",
+    "          ,4.68332253553417,0.366451269003454,6.1\n",
+    "          ,4.63713843840447,1.00459212490069,6.17\n",
+    " 55Xi  Ser,4.65929069429517,-0.254842311475228,3.54\n",
+    "          ,4.66063325525824,-0.251831618515537,5.94\n",
+    "          ,4.66023048696932,0.651036899814751,6.1\n",
     "          ,4.6182754568733,0.491916201537791,6.38\n",
     "          ,4.66902426127745,-1.2527827926711,6.49\n",
+    " 27    Dra,4.663586889377,1.18918008584634,5.05\n",
+    " 57Mu  Oph,4.68010038922279,-0.137551337604398,4.62\n",
+    "          ,4.62915020067419,-0.15836438893443,5.75\n",
+    "   Lam Ara,4.65680695651349,-0.847958520807823,4.77\n",
+    "          ,4.65694121260979,0.537304458363265,6.02\n",
+    " 79    Her,4.65378619434657,0.424289541159822,5.77\n",
+    "          ,4.65136958461304,-0.786760489841366,5.79\n",
+    " 26    Dra,4.67882495630788,1.07992247467149,5.23\n",
+    " 82    Her,4.65814951747656,0.847977913355067,5.37\n",
     "          ,4.6321709628411,0.0353962468578072,6.26\n",
     "          ,4.63908515180093,-0.863753750538371,6.24\n",
+    "          ,4.6939958951906,0.232637844880411,6.12\n",
+    "          ,4.64096473714923,-0.0322449579305952,6.19\n",
     "          ,4.68312115138971,0.571411100829321,6.37\n",
+    "   Kap Sco,4.67318620026297,-0.68015480950219,2.41\n",
+    " 56Omi Ser,4.66291560889547,-0.194163031147558,4.26\n",
+    "   Eta Pav,4.70601181581009,-1.10437647674666,3.62\n",
+    "          ,4.70231977316165,-0.611810624876179,5.54\n",
+    "          ,4.69795645003166,0.544586359853531,6.03\n",
+    "   Mu  Ara,4.65425609068365,-0.875558963673389,5.15\n",
+    "          ,4.71749071204437,-0.985320781076588,6.01\n",
     "          ,4.64747615782013,-0.575066595984887,6.4\n",
+    " 85Iot Her,4.65821664552471,0.802962963064047,3.8\n",
     "          ,4.64425401150876,0.264907043495062,6.34\n",
+    "          ,4.6728505600222,0.110178757168953,5.95\n",
     "          ,4.68043602946356,0.546069889717726,6.28\n",
     "          ,4.63686992621186,0.427838377305543,6.36\n",
     "          ,4.66211007231762,-0.455807278568752,6.36\n",
+    "          ,4.70829416944732,0.278413952650773,5.52\n",
+    " 58    Oph,4.6728505600222,-0.354592726363515,4.87\n",
+    " 28Ome Dra,4.68432945625647,1.20005445671362,4.8\n",
+    "          ,4.69896337075396,-0.720316774845304,5.87\n",
     "          ,4.66096889549901,1.21424010502289,6.42\n",
     "          ,4.6756028099965,0.758709170252368,6.59\n",
     "          ,4.70346094998026,-0.218015864258147,6.39\n",
     "          ,4.70131285243934,-0.12078648051163,6.3\n",
+    " 83    Her,4.67197789539621,0.428725586341974,5.52\n",
+    " 60Bet Oph,4.67634121852619,0.0797130654480299,2.77\n",
     "          ,4.66774882836253,0.249494816572589,6.24\n",
     "          ,4.6737232246482,1.00025304245476,6.77\n",
+    "          ,4.62384708487005,1.26459285394292,5.86\n",
+    "          ,4.65875366990994,0.904395681425784,5.99\n",
+    " 84    Her,4.6672118039773,0.424599821915732,5.71\n",
+    " 61    Oph,4.68822288304938,0.0450197984278315,6.17\n",
     "          ,4.69010246839768,0.0450101021542093,6.56\n",
+    "          ,4.66580211496607,0.251506793349194,6.19\n",
     "          ,4.64573082856814,0.769418704468078,6.34\n",
     "          ,4.6654664747253,-0.661276164759785,6.43\n",
+    "          ,4.71118067551792,-0.952920682768037,6.11\n",
+    "   Iot1Sco,4.70278966949872,-0.695916102275061,3.03\n",
+    "  3    Sgr,4.70077582805411,-0.456738120836483,4.54\n",
+    "          ,4.71688655961098,-0.375628791986857,6.18\n",
+    "          ,4.71782635228513,0.939016226393816,5.75\n",
     "          ,4.70104434024673,0.549861132704003,6.23\n",
+    "          ,4.70507202313595,-0.231677913791814,5.94\n",
     "          ,4.69735229759828,-0.436768645311581,6.35\n",
+    "          ,4.70661596824348,-0.91433921002534,5.92\n",
+    " 86Mu  Her,4.68822288304938,0.48381496492645,3.42\n",
+    "          ,4.72077998640389,-1.04432745420443,5.78\n",
     "          ,4.7190346571519,0.678608253859451,6.52\n",
     "          ,4.72547894977465,0.68630709511547,6.68\n",
+    "          ,4.66640626739945,0.308874796234885,5.72\n",
+    "          ,4.67848931606711,-0.528776585712549,4.83\n",
+    " 62Gam Oph,4.72762704731556,0.0472499413609354,3.75\n",
+    "          ,4.73353431555308,-0.645015513895371,3.21\n",
+    "   Iot2Sco,4.68379243187124,-0.696551208197315,4.81\n",
+    "          ,4.68788724280862,-0.92274587925578,6.09\n",
     "          ,4.68714883427893,0.066395233627951,6.22\n",
     "          ,4.70654884019532,-1.12592644487198,6.49\n",
+    "          ,4.75541805925117,-1.3233522720934,6.07\n",
+    " 31Psi1Dra,4.70507202313595,1.25923566276666,4.58\n",
+    " 31Psi1Dra,4.70735437677317,1.25937625873419,5.79\n",
+    "          ,4.69332461470906,0.358936656946256,5.69\n",
     "          ,4.68976682815692,0.0342278458863332,6.47\n",
+    "          ,4.73286303507155,-0.77491649161186,6.11\n",
     "          ,4.66654052349576,0.830990041968989,6.43\n",
+    "          ,4.72433777295603,0.336067995608319,6.12\n",
+    "          ,4.7171550718036,-0.684649032326076,5.96\n",
+    " 87    Her,4.72608310220803,0.447201835729058,5.12\n",
     "          ,4.68990108425322,-0.513873413155242,6.66\n",
     "          ,4.77005197374866,-1.40522760655918,6.35\n",
+    "          ,4.69574122444259,-0.579463856072551,5.9\n",
+    "          ,4.70393084631733,-0.586139740461429,5.84\n",
+    "          ,4.74823535809873,-0.698189878439465,6.2\n",
+    "          ,4.72715715097849,0.208508667971589,6.17\n",
+    "          ,4.74353639472797,-0.591419361448712,6.06\n",
     "          ,4.75253155318056,-0.610540413031672,6.45\n",
+    "          ,4.7552166751067,-0.599971474783484,6.03\n",
+    "          ,4.69950039513919,0.511769321779226,5.5\n",
+    "          ,4.73373569969754,0.38949446326659,5.98\n",
+    " 30    Dra,4.67016543809606,0.886297586709965,5.02\n",
+    "          ,4.70815991335101,-0.580661345864891,6.17\n",
+    "          ,4.71312738891438,-0.577786400735912,5.6\n",
     "          ,4.75300144951763,-0.01332267995689,6.35\n",
     "          ,4.74293224229459,-0.579696566639483,6.38\n",
     "          ,4.72957376071202,-0.102213268388323,6.21\n",
+    "          ,4.75555231534747,-0.580278343056815,5.96\n",
     "          ,4.7598485104293,-0.578896624065652,6.42\n",
     " 88    Her,4.67318620026297,0.844637547092223,6.68\n",
     "          ,4.75165888855456,0.267486252278564,6.46\n",
+    "          ,4.68667893794185,-0.158829810068295,6.18\n",
+    "          ,4.72500905343757,0.022776546738526,5.95\n",
+    "          ,4.72272669980035,-0.585271923972243,5.96\n",
     "          ,4.69191492569783,0.699397064505428,6.46\n",
+    "          ,4.70091008415042,0.10648932505571,5.77\n",
+    "          ,4.70117859634303,-0.620013672360552,6.06\n",
+    "          ,4.75870733361069,-0.403394071504001,6.2\n",
+    "          ,4.68379243187124,0.697821420041822,6.04\n",
     "          ,4.67882495630788,0.814079740771888,6.38\n",
+    "          ,4.75857307751439,-0.761971966326235,4.86\n",
     "          ,4.70527340728041,0.194264842020591,6.38\n",
+    " 90    Her,4.7061460719064,0.698272296765254,5.16\n",
     "          ,4.7698505896042,-0.692798750305527,6.43\n",
     "          ,4.76441321770375,-0.300157846248536,6.52\n",
+    "          ,4.75118899221749,-0.487552878407805,5.8\n",
+    "          ,4.72044434616312,-0.247618587626695,5.89\n",
+    "          ,4.76333916893329,-0.703086496618671,4.88\n",
     "          ,4.77689903466033,-0.678288276829918,6.29\n",
+    "          ,4.71963880958528,0.0116985541251731,5.82\n",
+    " 89    Her,4.72440490100419,0.454658270144523,5.46\n",
+    "          ,4.75897584580331,-0.0683829697205001,5.47\n",
+    "          ,4.75877446165885,0.392073672050093,5.58\n",
+    " 32Xi  Dra,4.72440490100419,0.992617226977286,3.75\n",
+    "          ,4.70507202313595,0.00115870469785179,5.97\n",
     "          ,4.77011910179681,0.113233083359943,6.29\n",
+    "          ,4.77830872367155,-0.613337787971674,5.74\n",
+    "          ,4.75615646778085,-0.475442232653689,6.01\n",
+    "          ,4.71500697426268,-0.519182122963391,5.16\n",
     "          ,4.7154097425516,-0.51917727482658,7.04\n",
+    " 91The Her,4.71534261450345,0.65014484264151,3.86\n",
     "          ,4.73541390090138,0.19275707147234,6.36\n",
     "          ,4.71849763276667,0.418806298426473,6.3\n",
+    " 64Nu  Oph,4.71017375479562,-0.143577571660589,3.34\n",
+    "          ,4.72239105955958,0.976885023025282,6.1\n",
+    "  4    Sgr,4.77193155909696,-0.387181902007698,4.76\n",
+    " 35    Dra,4.7006415719578,1.34325387370295,5.04\n",
+    "          ,4.75991563847746,0.791521360189862,6.02\n",
+    " 92Xi  Her,4.76092255919976,0.510470021113853,3.7\n",
     "          ,4.712523236481,-0.343146275352519,6.21\n",
+    " 33Gam Dra,4.74380490692059,0.898650639304636,2.23\n",
+    "          ,4.75729764459947,-0.0554772295293642,5.87\n",
+    " 94Nu  Her,4.74420767520951,0.526905204903466,4.41\n",
     "          ,4.78159799803108,-0.621725064654869,6.3\n",
     "          ,4.73319867531231,0.0109858780139421,6.37\n",
+    " 57Zet Ser,4.75132324831379,-0.0403122575842579,4.62\n",
+    "          ,4.76045266286269,0.633341200454253,6\n",
+    " 66    Oph,4.73360144360124,0.0762466476280967,4.64\n",
+    " 93    Her,4.71695368765914,0.292357194119483,4.67\n",
+    " 67    Oph,4.7643460896556,0.0511672359043004,3.97\n",
     "  6    Sgr,4.74776546176165,-0.293966775540767,6.28\n",
+    "          ,4.78978761990582,-0.370349170999575,5.77\n",
     "          ,4.68285263919709,1.36670915959503,6.24\n",
     "          ,4.77387827249341,0.793707869891666,6.48\n",
     "          ,4.78341045533123,0.109403055279178,6.34\n",
     "          ,4.7495779190618,0.340441015011927,6.5\n",
+    "   Chi Oct,5.01097453857203,-1.50786266285007,5.28\n",
     "          ,4.78918346747244,0.263428361767677,6.26\n",
+    " 68    Oph,4.77743605904555,0.0227813948753371,4.45\n",
+    "  7    Sgr,4.78972049185767,-0.413953313478566,5.34\n",
+    " 34Psi2Dra,4.70560904752117,1.25672432789852,5.45\n",
+    "          ,4.76125819944053,0.579691718502672,5.99\n",
     "          ,4.72776130341187,-0.37143515364526,6.74\n",
+    "          ,4.78347758337938,0.794149050341475,5.67\n",
+    " 95    Her,4.75689487631055,0.376908700104987,5.18\n",
+    " 95    Her,4.75756615679208,0.376913548241798,4.96\n",
+    "          ,4.78146374193477,-1.29343926796894,5.86\n",
     "          ,4.78327619923492,-0.0810075179765924,6.76\n",
+    " 69Tau Oph,4.73219175459001,-0.136479899369145,5.94\n",
+    " 69Tau Oph,4.7320574984937,-0.136475051232334,5.24\n",
     "          ,4.7219211632225,1.31197854313457,6.36\n",
+    "  9    Sgr,4.79582914423965,-0.412586138897837,5.97\n",
+    "          ,4.76495024208898,0.581393414523367,6.15\n",
+    " 96    Her,4.75212878489164,0.363615108968963,5.28\n",
+    "          ,4.79750734544349,-0.595133034246011,6\n",
     "          ,4.80777793681099,-1.1074114103904,6.41\n",
     " 97    Her,4.76152671163315,0.400082794062022,6.21\n",
+    "   Gam1Sgr,4.73595092528661,-0.496022573416789,4.69\n",
+    "   The Ara,4.78945197966505,-0.871064740849503,3.66\n",
     "          ,4.74521459593181,0.34231239582101,6.5\n",
+    "   Pi  Pav,4.7940166869395,-1.08789281158893,4.35\n",
+    " 10Gam2Sgr,4.79931980274364,-0.516195670687756,2.99\n",
+    "          ,4.77991979682724,0.0334957772278578,6.14\n",
+    "          ,4.77038761398943,-0.627974313004371,5.95\n",
+    "          ,4.80542845512562,-0.743078777173397,5.77\n",
+    "          ,4.80542845512562,-0.743078777173397,5.77\n",
+    "          ,4.81106721117052,-1.26236755914663,5.85\n",
+    " 70    Oph,4.7708575103265,0.043623535026236,4.03\n",
     "          ,4.7375619984423,0.84586412570543,6.21\n",
     "          ,4.78381322362015,0.417875456158742,6.34\n",
+    "          ,4.74850387029134,-0.133973412637809,5.85\n",
+    "          ,4.75897584580331,-0.0566989600057602,5.77\n",
     "          ,4.74850387029134,0.00779580399224134,6.34\n",
     "          ,4.79233848573566,0.209507384154675,7.04\n",
+    "          ,4.78770665041306,-0.772007609525203,6.15\n",
     "          ,4.82899040002754,-1.02904612697586,6.38\n",
+    "   Iot Pav,4.79106305282074,-1.082065351142,5.49\n",
     "          ,4.75823743727362,-0.358771820294679,6.28\n",
+    "          ,4.77475093711941,0.37781045355185,6.15\n",
     "          ,4.78784090650937,0.699600686251494,6.52\n",
+    " 98    Her,4.74111978499444,0.387792767245896,5.06\n",
+    "          ,4.75400837023994,-0.480712157367349,4.57\n",
     "          ,4.73527964480508,0.732107443569888,6.34\n",
+    "          ,4.80079661980302,0.562529314191395,5.71\n",
+    "          ,4.8079121929073,-0.294015256908878,5.52\n",
+    " 71    Oph,4.76763536401513,0.15243511761446,4.64\n",
+    " 72    Oph,4.77112602251911,0.166921350406013,3.73\n",
     "          ,4.78173225412739,-0.616581191498297,6.58\n",
     "          ,4.8199281135268,-0.428085632282909,6.61\n",
     "          ,4.80583122341454,-1.20861626632202,6.73\n",
+    " 99    Her,4.7449460837392,0.533406556367145,5.04\n",
     "          ,4.8079121929073,0.228133925782903,6.63\n",
     "          ,4.83207829024261,-0.545943838160637,6.43\n",
+    "          ,4.76642705914836,-0.811350239747242,6.07\n",
+    "103Omi Her,4.78669972969076,0.502000326104869,3.83\n",
+    "          ,4.76367480917406,-0.510882112742796,5.53\n",
+    "100    Her,4.80938900996668,0.455555175454575,5.86\n",
+    "100    Her,4.80938900996668,0.45548730153922,5.9\n",
+    "   Eps Tel,4.77891287610494,-0.768739965314525,4.53\n",
     "          ,4.79253986988012,0.249315435510579,6.37\n",
     "          ,4.80992603435191,-0.210583670526738,6.39\n",
+    "          ,4.76790387620774,-0.709316352420929,5.86\n",
+    "102    Her,4.80838208924438,0.363280587528998,4.36\n",
+    "          ,4.83013157684615,-0.562000867278985,6.16\n",
+    " 23Del UMi,4.60753496916872,1.51121757352335,4.36\n",
     "          ,4.81039593068899,0.887024807231629,6.29\n",
+    "          ,4.78159799803108,0.758549181737602,5\n",
     "          ,4.75139037636195,0.867612867440003,6.32\n",
+    "          ,4.75024919954334,0.635324088409991,5.48\n",
+    "101    Her,4.81831704037111,0.349856096699075,5.1\n",
+    " 73    Oph,4.79703744910641,0.0696968147963069,5.73\n",
     "          ,4.79522499180627,-1.08752435319129,6.47\n",
+    "          ,4.82415718056048,0.054449424525412,5.69\n",
     "          ,4.78025543706801,-0.316913007067681,6.36\n",
     "          ,4.7653530103779,0.53179212680905,6.38\n",
+    "          ,4.81012741849637,0.0580176532183782,5.51\n",
+    " 11    Sgr,4.81865268061188,-0.389189030647491,4.98\n",
     "          ,4.83852258286536,-0.472959986606408,6.51\n",
+    "          ,4.76770249206328,0.287572083086932,6.09\n",
+    "          ,4.78602844920922,-0.70971874777625,5.47\n",
+    "          ,4.83274957072415,-1.09858780139421,5.6\n",
     "          ,4.80200492466978,0.671209997085719,6.4\n",
+    "          ,4.83086998537584,0.636458552423788,5.58\n",
     "          ,4.7921371015912,-1.18282417848699,6.33\n",
+    " 40    Dra,4.71695368765914,1.3962779460059,6.04\n",
+    " 41    Dra,4.72474054124496,1.39633612364763,5.68\n",
+    " 24    UMi,4.6459322127126,1.51787891350179,5.79\n",
+    " 13Mu  Sgr,4.83060147318323,-0.365491337914857,3.86\n",
     "          ,4.78253779070523,-0.0696095483337072,6.59\n",
+    "          ,4.82093503424911,0.583759305287181,5.88\n",
+    "104    Her,4.83315233901307,0.54812549972563,4.97\n",
+    " 14    Sgr,4.79482222351735,-0.354073975724727,5.44\n",
+    "          ,4.79844713811764,0.947481073265988,5.95\n",
+    "          ,4.8485917900884,-0.76433785709005,5.46\n",
+    "          ,4.79663468081749,-0.976977137624693,5.33\n",
+    "          ,4.7912644369652,0.38188288847317,6.12\n",
+    "          ,4.78777377846121,-0.888925276861579,6.06\n",
+    " 15    Sgr,4.79515786375811,-0.336354035680174,5.38\n",
+    " 16    Sgr,4.79515786375811,-0.342293003273766,5.95\n",
     "          ,4.82194195497141,0.718149657690745,6.36\n",
+    "          ,4.81918970499711,-0.302615851611761,6.07\n",
+    "          ,4.77555647369725,0.676727176776746,6.04\n",
     "          ,4.76991771765235,1.05434370485615,6.49\n",
+    "          ,4.84926307056994,-1.0840773279186,6.18\n",
+    "   Phi Oct,4.86121186314128,-1.30822608524278,5.47\n",
     "          ,4.85570736319269,-0.0415824694287649,6.36\n",
     "          ,4.83254818657968,0.509762193139433,6.56\n",
+    "   Eta Sgr,4.83704576580598,-0.615024939581935,3.11\n",
+    "          ,4.83503192436137,-0.591540564868989,6.16\n",
+    "          ,4.78972049185767,0.0415000511029763,6.01\n",
+    "          ,4.81878693670819,-0.477303917189149,6.19\n",
     "          ,4.81838416841927,-0.483645280138062,6.4\n",
+    "          ,4.86510528993419,-1.39220066294777,5.95\n",
+    "          ,4.80213918076609,-0.290180380691302,5.75\n",
     "          ,4.84463123524734,-0.728005919827701,6.3\n",
+    "          ,4.85349213760362,-0.0522338260027414,6\n",
     "          ,4.82482846104202,-0.306072573158072,6.54\n",
+    "          ,4.79522499180627,-0.470497133106371,4.65\n",
     "          ,4.81905544890081,-0.143839371048388,6.31\n",
     "          ,4.7930097662172,0.0175551033929763,6.63\n",
+    "          ,4.82993019270169,0.735821116367187,5.59\n",
     "          ,4.84691358888456,-0.425777919160828,6.51\n",
     "          ,4.82160631473064,0.789053658553014,6.29\n",
     "          ,4.84906168642548,-0.303347920270237,6.84\n",
     "          ,4.82865475978677,0.987652734882725,6.37\n",
+    " 36    Dra,4.84134196088781,1.12394355691624,5.03\n",
     "          ,4.79482222351735,0.240453041419897,6.3\n",
+    "          ,4.80126651614009,0.316452434070627,5.99\n",
+    "          ,4.79569488814334,0.714479618124745,6.11\n",
     "          ,4.80126651614009,0.406603538072946,6.63\n",
+    "   Xi  Pav,4.83100424147215,-1.05603085646641,4.36\n",
     "          ,4.87389906424232,-0.63726334313443,6.45\n",
+    "          ,4.80804644900361,0.126706055557977,5.39\n",
+    "          ,4.81146997945944,-0.24728406618673,5.39\n",
+    " 19Del Sgr,4.87980633247984,-0.49169318724448,2.7\n",
+    "105    Her,4.8096575221593,0.426665128197258,5.27\n",
     "          ,4.84617518035487,-0.402909257822891,6.25\n",
+    "          ,4.83335372315753,-0.651759272199605,5.1\n",
+    "          ,4.83503192436137,-0.299149433791828,5.75\n",
+    "          ,4.80865060143699,-0.481187274774837,6.16\n",
+    " 37    Dra,4.80066236370671,1.20001567161913,5.95\n",
+    " 74    Oph,4.86960286916049,0.0589436473492974,4.86\n",
+    "          ,4.8652395460305,0.517771315151362,5.99\n",
+    "106    Her,4.8236872842234,0.38329854442201,4.95\n",
+    " 58Eta Ser,4.82899040002754,-0.019218014319182,3.26\n",
+    "          ,4.87967207638353,-0.616634521003219,5.34\n",
+    "          ,4.86376272897112,-1.09918412222197,6.14\n",
+    "  1Kap Lyr,4.86470252164527,0.629443298458133,4.33\n",
+    "          ,4.84228175356196,0.0948731892563251,6.13\n",
+    "          ,4.85154542420716,-0.624158829334039,5.55\n",
+    "          ,4.84154334503227,-0.7660201605635,5.25\n",
+    "108    Her,4.87631567397585,0.521135922098262,5.63\n",
+    "107    Her,4.80536132707746,0.503876555050763,5.12\n",
     "          ,4.81569904649312,-0.170717441529101,6.33\n",
+    " 20Eps Sgr,4.830937113424,-0.586697276194705,1.85\n",
     "          ,4.87060978988279,0.896187785804599,6.3\n",
+    "          ,4.82912465612385,-0.209182558988331,5.73\n",
+    "          ,4.82006236962311,0.406404764463691,5.41\n",
+    "          ,4.85577449124084,0.209943716467673,5.89\n",
+    "   Zet Sct,4.86577657041573,-0.123322056063833,4.68\n",
+    "          ,4.87416757643493,0.311134027988856,5.25\n",
     "          ,4.81355094895221,0.867874666827803,6.4\n",
     "          ,4.81663883916727,0.291261515200176,6.22\n",
+    " 18    Sgr,4.82348590007894,-0.510392450924875,5.6\n",
+    "          ,4.85060563153301,-0.593557389782405,6.15\n",
     "          ,4.8218076988751,-0.0421787902565296,6.38\n",
+    "          ,4.84792050960686,0.857334817400481,5.05\n",
     "          ,4.8736305520497,-0.120859202563796,6.31\n",
     "          ,4.8947758872181,-0.559460443589971,6.3\n",
+    "          ,4.89819941767393,-0.835716975359807,5.46\n",
+    "109    Her,4.8689987167271,0.379953330022354,3.84\n",
+    " 21    Sgr,4.84966583885886,-0.33961198361723,4.81\n",
+    "   Alp Tel,4.90424094200776,-0.76849755847397,3.51\n",
+    "          ,4.89363471039949,-0.00734007913199837,6.15\n",
+    "          ,4.92625894180215,-1.25723823040049,5.89\n",
     "          ,4.83328659510937,0.0887451443271006,6.74\n",
     "          ,4.88980841165473,0.67612600781217,6.36\n",
+    "          ,4.87356342400155,0.140183875892822,5.65\n",
+    "  2Mu  Lyr,4.83563607679475,0.689531106094849,5.12\n",
     "          ,4.89564855184409,0.478137796720658,6.27\n",
+    "   Zet Tel,4.90155582008161,-0.853975058590392,4.13\n",
     "          ,4.89584993598856,0.261217611381818,6.37\n",
+    "          ,4.8966554725664,-0.491896808990546,5.92\n",
+    "          ,4.91504855776049,-0.985708632021475,5.76\n",
     "          ,4.88900287507689,-0.442707612905173,6.31\n",
+    "          ,4.87094543012356,-0.645849393426879,5.64\n",
     "          ,4.87691982640923,0.930275035723411,6.32\n",
     "          ,4.91457866142342,-1.39961831226874,6.27\n",
+    " 22Lam Sgr,4.90833575294513,-0.42897284131934,2.81\n",
     "          ,4.84288590599534,-0.44056958457148,6.27\n",
     "          ,4.85624438757791,-0.735729001767776,6.36\n",
+    "   Nu  Pav,4.87772536298708,-1.07724630315177,4.64\n",
+    "          ,4.900414643263,0.520612323322664,5.83\n",
+    " 59    Ser,4.84698071693271,0.00342278458863332,5.21\n",
+    "          ,4.90605339930791,-0.282743338823081,6.2\n",
+    " 43Phi Dra,4.86074196680421,1.24507910327827,4.22\n",
     "          ,4.8614803753339,-0.648370424568649,6.63\n",
+    "          ,4.91384025289373,-0.816460175946136,5.7\n",
+    " 39    Dra,4.88591498486182,1.02626329644629,4.98\n",
     "          ,4.88074612515399,0.461629890878878,6.53\n",
+    "          ,4.89772952133686,0.0654256062657319,6.07\n",
     "          ,4.91162502730466,-0.443633607036092,6.5\n",
+    " 44Chi Dra,4.80858347338884,1.26942644634359,3.57\n",
+    "          ,4.90914128952297,0.108108602750615,5.73\n",
     "          ,4.86846169234188,-0.431857482721941,6.59\n",
+    "   Gam Sct,4.85490182661484,-0.234470440595005,4.7\n",
+    "          ,4.85167968030347,-0.699639471345982,6.04\n",
+    "          ,4.90175720422608,-0.234194096796772,5.96\n",
+    "          ,4.85926514974483,-0.301437754366665,5.66\n",
+    "   Del1Tel,4.90860426513774,-0.7694284007417,4.96\n",
+    " 60    Ser,4.89397035064025,-0.000256951250988055,5.39\n",
+    "          ,4.854096290037,-0.541241145453875,5.34\n",
+    "          ,4.92310392353893,-0.74162918426688,5.72\n",
+    "   Del2Tel,4.85470044247038,-0.772182142450402,5.07\n",
     "          ,4.89598419208486,-0.999913672877985,6.44\n",
     "          ,4.8624872960562,-0.0746273699331909,6.28\n",
     "          ,4.85013573519593,0.0709524822303806,6.69\n",
+    "          ,4.88074612515399,-0.668393229598473,5.16\n",
+    "          ,4.88685477753597,0.416542218535691,5.9\n",
+    "          ,4.88296135074306,-0.307129466982891,5.14\n",
+    " 42    Dra,4.90081741155192,1.14430088338603,4.82\n",
+    "          ,4.88215581416522,-0.160643013235645,5.72\n",
     "          ,4.91921049674602,-0.32943089631393,6.68\n",
     "          ,4.85758694854099,-0.66510619284055,6.22\n",
     "          ,4.88698903363228,1.03932902515219,6.43\n",
     "          ,4.89913921034808,0.363295131939431,6.5\n",
+    "   The CrA,4.89692398475901,-0.727584131925136,4.64\n",
     "   Kap1CrA,4.88766031411381,-0.650653897006675,6.32\n",
+    "   Kap2CrA,4.8873918019212,-0.650552086133642,5.65\n",
     "          ,4.90262986885207,-0.892003843736624,6.22\n",
+    "          ,4.85355926565177,0.295460001678585,5.77\n",
     "          ,4.87994058857615,-0.233103266014276,6.37\n",
+    " 61    Ser,4.92417797230939,-0.0173999630150212,5.94\n",
     "          ,4.86141324728574,0.0638742024861814,6.43\n",
+    "          ,4.91014821024528,-0.229239300975833,5.5\n",
+    "          ,4.93397866733982,-0.575667764949463,5.28\n",
+    " 24    Sgr,4.9282056551986,-0.418311788471741,5.49\n",
+    "          ,4.90873852123405,-0.22944777085871,5.76\n",
     "          ,4.88712328972858,-0.0713597257225126,6.36\n",
     "          ,5.01265273977587,-1.44310125132746,7.16\n",
     " 25    Sgr,4.90477796639299,-0.414995662892952,6.51\n",
+    "          ,4.91404163703819,0.412193439816139,5.84\n",
     "          ,4.88766031411381,0.144309640319064,6.42\n",
+    "          ,4.91900911260156,0.533270808536434,5.48\n",
     "          ,4.89370183844764,-0.33439054027168,6.48\n",
+    "          ,4.86832743624557,-0.157477179897999,5.14\n",
     "          ,4.8873918019212,0.539175839172348,6.59\n",
     "          ,4.94525617942963,-0.493942722724829,6.37\n",
+    "   Alp Sct,4.88175304587629,-0.135364827902594,3.85\n",
     "          ,4.86732051552326,0.909588035950467,6.56\n",
     "          ,4.88705616168043,0.357205872104695,6.57\n",
     "          ,4.92451361255015,0.190095444363049,6.4\n",
+    "          ,4.88202155806891,0.317708101504701,5.78\n",
+    " 45    Dra,4.89833367377024,0.995632768073787,4.77\n",
     "          ,4.86752189966772,1.14207558858973,6.59\n",
+    "          ,4.9059191432116,0.411994666206884,5.61\n",
     "          ,4.93652953316965,0.29627933679966,6.21\n",
+    "   Zet Pav,4.90283125299653,-1.23171279009008,4.01\n",
+    "          ,4.93250185028044,0.913742889197576,5.36\n",
+    "          ,4.88322986293567,0.601401675142757,6.1\n",
+    "          ,4.9067918078376,0.159217661013183,5.39\n",
+    "          ,4.90175720422608,-0.804427100380998,5.86\n",
+    "          ,4.92196274672032,0.116447398065699,5.45\n",
+    "          ,4.94686725258531,-0.359576611005321,5.94\n",
     "          ,4.88437103975429,-0.244263676953418,6.47\n",
+    "          ,4.91941188089048,-0.392611815236124,5.81\n",
+    "          ,4.92954821616168,-0.747243326694128,5.37\n",
     "          ,4.89074820432888,0.199345689398619,6.42\n",
+    "          ,4.92216413086478,0.00540082440756023,5.75\n",
     "          ,4.98378767906981,-1.32876764091139,6.39\n",
     "          ,4.88591498486182,0.282714250002215,6.29\n",
     "          ,4.92585617351323,-1.10578728455869,6.37\n",
+    "          ,4.91941188089048,0.584142308095258,5.42\n",
+    "          ,4.94988801475223,-0.365612541335134,5.86\n",
     "          ,4.91001395414897,-0.0489807262024964,6.49\n",
     "          ,4.90383817371884,-0.0154752527010164,6.66\n",
+    "  3Alp Lyr,4.94505479528516,0.676901709701945,0.03\n",
     "          ,4.90638903954868,0.154180446866455,6.4\n",
+    "          ,4.93068939298029,0.754365239669627,6.2\n",
+    "          ,4.94995514280038,-1.10739201784316,5.78\n",
     "          ,4.93236759418413,-0.836099978167884,6.49\n",
+    "          ,4.89920633839624,1.35344950541668,5.64\n",
+    "          ,4.88759318606566,-0.108375250275226,5.84\n",
     "          ,4.93209908199151,0.0918770407070682,6.38\n",
+    "          ,4.88692190558412,0.692338177308473,6.04\n",
     "          ,4.95183472814868,0.128427144125916,6.28\n",
     " 26    Sgr,4.96056137440865,-0.38688131752541,6.23\n",
+    "          ,4.9448534111407,-1.10180211609996,4.79\n",
+    "          ,4.88732467387304,1.14299188644703,6.06\n",
     "          ,4.94834406964469,-0.234499529415871,6.42\n",
+    "          ,4.92417797230939,-1.06299278092715,6.04\n",
     "          ,4.88960702751027,0.538424377966628,6.36\n",
     "          ,4.92699735033184,0.714450529303879,6.25\n",
+    "          ,4.9188077284571,1.09129620363032,5.74\n",
     "          ,4.90330114933361,0.669634352622113,6.45\n",
+    "   Del Sct,4.91766655163848,-0.156163334822193,4.72\n",
+    "   Lam CrA,4.96297798414218,-0.657577036372919,5.13\n",
     "          ,4.94055721605887,-0.961996394878408,6.22\n",
     "          ,4.9697579170057,-0.326657762057983,6.35\n",
+    "          ,4.94411500261101,-0.120893139521474,6.15\n",
+    "          ,4.82946029636462,1.45168245348309,6.17\n",
     "          ,4.91471291751972,-0.615776400787655,6.32\n",
+    "          ,4.98459321564765,-1.23927588351538,6.06\n",
+    "          ,4.95344580130437,0.910993995625685,6\n",
+    "          ,4.93042088078767,-0.599661194027574,4.87\n",
     "          ,4.94673299648901,0.551834324386118,6.41\n",
+    "          ,4.98116968519182,-0.668698662217572,5.43\n",
+    "   Eps Sct,4.94203403311825,-0.134821836579751,4.9\n",
     "          ,4.90652329564498,0.606443737426296,6.47\n",
     "          ,4.96901950847601,-0.0904322959373618,6.31\n",
+    "          ,4.97096622187247,-0.436138387526139,5.83\n",
+    "   The Pav,4.97257729502815,-1.13310653548921,5.73\n",
     "          ,4.99244719728163,-0.871016259481392,6.54\n",
     "          ,4.93384441124351,-0.366494902234754,6.36\n",
+    " 27Phi Sgr,4.96163542317911,-0.436492301513349,3.17\n",
+    "  4    Aql,4.97136899016139,0.0359537825910832,5.02\n",
     "          ,4.92243264305739,0.685919244170582,6.45\n",
+    "          ,4.96250808780511,1.09518925748963,6.09\n",
+    "          ,4.948478325741,0.638034196887394,6.01\n",
+    "          ,4.96928802066862,0.557225452520056,5.7\n",
     "          ,4.91471291751972,-0.321029075220301,6.42\n",
+    " 28    Sgr,4.94075860020333,-0.377126866261486,5.37\n",
     "          ,4.95834614881958,0.411718322408651,6.31\n",
+    "          ,4.94686725258531,0.095988260722877,5.83\n",
+    " 46    Dra,4.94653161234454,0.969346170284028,5.04\n",
+    "   Mu  CrA,4.97734338644706,-0.691043724779911,5.24\n",
+    "  4Eps1Lyr,4.93176344175075,0.69237211426615,5.06\n",
+    "  4Eps1Lyr,4.93162918565444,0.692391506813395,6.02\n",
+    "  5Eps2Lyr,4.93511984415843,0.691378246219876,5.14\n",
+    "  5Eps2Lyr,4.93511984415843,0.691373398083065,5.37\n",
+    "          ,4.97123473406508,-0.17235126363444,5.71\n",
+    "  6Zet1Lyr,4.96667002679063,0.656331065212468,4.36\n",
+    "  7Zet2Lyr,4.96908663652416,0.656146836013646,5.73\n",
     "          ,4.95666794761574,0.383710636050953,6.51\n",
+    "  5    Aql,4.95136483181161,0.0167842496400121,5.9\n",
+    "          ,4.93894614290318,0.940242805007023,6.11\n",
+    "110    Her,4.96203819146803,0.358602135506291,4.19\n",
+    "   Eta1CrA,4.98962781925917,-0.738623339444,5.49\n",
+    "   Bet Sct,4.93156205760629,-0.0567619857843045,4.22\n",
+    "          ,4.91914336869786,0.465343563676177,4.83\n",
+    "          ,4.96297798414218,-0.771256148319483,5.81\n",
+    "          ,4.95639943542313,-0.0749618913731565,5.2\n",
+    "          ,4.96868386823524,0.326478380995973,6.17\n",
+    "   Eta2CrA,4.97318144746153,-0.742918788658631,5.61\n",
+    "111    Her,4.91921049674602,0.317325098696625,4.36\n",
     "          ,4.94928386231884,-0.58034621697217,6.62\n",
     "          ,4.97875307545829,0.958127581703154,6.23\n",
     "          ,4.9826465022512,-0.303663049162958,6.47\n",
+    "          ,4.93055513688398,0.723293530847317,6.07\n",
+    "   Lam Pav,4.9567350756639,-1.07883164388899,4.22\n",
+    "          ,4.92880980763199,1.06548957138486,5.99\n",
     "          ,4.9254534052243,0.0740262009686151,6.21\n",
     "          ,4.97385272794307,-0.329130311831642,6.75\n",
+    " 29    Sgr,4.9800285083732,-0.343398378466695,5.24\n",
+    "          ,4.9438464904184,0.410399629196033,6.15\n",
     "          ,4.99231294118532,0.808349243061174,6.52\n",
+    "          ,4.9946624228707,0.554263240928477,6.06\n",
     "          ,4.91370599679742,1.2355670588549,6.44\n",
+    "          ,4.98123681323997,-0.0713354850384571,5.99\n",
+    "          ,4.97096622187247,0.924816033674117,5.88\n",
     "          ,4.97600082548399,0.0145880436645859,6.25\n",
+    "          ,4.99352124605208,0.337347903726448,5.88\n",
+    "   Kap Tel,4.99244719728163,-0.905694982091157,5.17\n",
     " 30    Sgr,4.99835446551914,-0.381141123541073,6.61\n",
     "          ,4.95740635614543,-0.106334184677755,6.8\n",
     "          ,4.97116760601693,0.856520330416217,6.4\n",
     "          ,4.94552469162224,0.437141951846035,6.59\n",
+    "          ,4.97566518524322,-0.792461898731214,5.54\n",
     "          ,4.95989009392712,-0.873866963926316,6.31\n",
+    "          ,5.00909495322373,-0.143567875386967,5.83\n",
+    "          ,4.94700150868162,-0.831474855650099,6.19\n",
+    "          ,4.94344372212948,0.851153442966335,6.12\n",
+    "          ,5.01929841654308,-0.792626735382791,6.19\n",
     "          ,4.98526449612919,0.552033097995373,6.64\n",
     "          ,4.99177591680009,0.191574126090433,6.55\n",
+    "  8Nu 1Lyr,4.98781536195903,0.57269100894745,5.91\n",
+    "  8    Aql,4.96458905729787,-0.0468136090479368,6.1\n",
+    "  9Nu 2Lyr,4.99721328870053,0.568119215934587,5.25\n",
     "          ,4.97754477059152,-0.442436117243751,6.29\n",
+    "          ,4.98895653877764,-0.499522928194399,6.13\n",
     "          ,4.99526657530408,-0.510785150006574,6.63\n",
+    " 10Bet Lyr,4.93699942950673,0.582290319833419,3.45\n",
+    "   Kap Pav,5.03326105055903,-1.16529331577807,4.44\n",
     "          ,4.99137314851117,-0.839876676743727,6.6\n",
+    "          ,4.94183264897379,0.24374492631463,6.14\n",
     "          ,4.94619597210378,-0.147024596933278,6.34\n",
     "          ,5.03017316034396,-1.06812210967329,6.48\n",
+    "          ,4.98311639858827,0.502368784502512,6.18\n",
+    "112    Her,4.96129978293834,0.373941640376596,5.48\n",
+    " 33    Sgr,4.94814268550023,-0.360240805748441,5.69\n",
+    "          ,4.98392193516612,0.637719067994672,6.09\n",
+    " 32Nu 1Sgr,4.96170255122726,-0.370969732511395,4.83\n",
+    "          ,4.97143611820954,1.29303687261362,5.27\n",
     "          ,4.94881396598177,0.722275422116987,6.28\n",
+    "          ,5.00587280691235,-0.251274082782261,5.1\n",
+    " 35Nu 2Sgr,4.96190393537173,-0.372254488766335,4.99\n",
+    " 34Sig Sgr,4.97371847184676,-0.448607795404276,2.02\n",
+    "          ,4.97942435593982,-0.720636751874836,5.36\n",
+    "          ,4.98190809372151,0.924588171243996,5.51\n",
+    " 50    Dra,4.94290669774425,1.31656972869468,5.35\n",
+    " 47Omi Dra,4.95116344766714,1.03652195393857,4.66\n",
+    "          ,4.99399114238916,-0.272678606803247,5.79\n",
+    "   Ome Pav,5.01433094097971,-1.04369719641899,5.14\n",
+    "          ,4.95754061224174,-0.398395642451761,5.93\n",
+    "          ,5.01110879466833,-0.639779526139388,5.38\n",
+    "          ,4.97888733155459,-1.14051448853656,6.01\n",
+    " 11Del1Lyr,5.0021807642639,0.64527731328317,5.58\n",
+    "          ,4.96573023411648,0.487111697957995,5.62\n",
+    "113    Her,5.00828941664588,0.395229809114116,4.59\n",
+    "   Lam Tel,5.00265066060098,-0.89118935675236,4.87\n",
+    "          ,4.98929217901841,0.115458378156236,5.57\n",
     "          ,5.0076852642125,-0.666308530769702,6.31\n",
+    "          ,4.96190393537173,0.885027374865458,4.92\n",
     "          ,4.96720705117586,0.719521680408285,7.3\n",
+    " 12Del2Lyr,4.98855377048872,0.644007101438663,4.3\n",
+    "          ,5.01849287996523,0.592864106218418,6.02\n",
+    " 63The1Ser,4.97445688037645,0.0733668543623061,4.62\n",
+    " 63The2Ser,4.97633646572476,0.0733377655414395,4.98\n",
     "          ,4.98721120952564,-0.00349065850398866,6.22\n",
+    "          ,4.99110463631855,0.0431290250715043,6.15\n",
+    " 36Xi 1Sgr,4.98862089853687,-0.337609703114248,5.08\n",
+    "          ,5.01809011167631,0.726105450197752,5.44\n",
     "          ,4.96197106341988,0.31407199889638,6.63\n",
+    "          ,4.96505895363495,0.315996709210384,5.69\n",
+    "   Eta Sct,4.96606587435725,-0.07249903787312,4.83\n",
+    " 37Xi 2Sgr,5.01990256897646,-0.364657458383349,3.51\n",
+    "          ,4.99405827043731,-0.5404218103328,6.12\n",
+    "   Eps CrA,5.02372886772122,-0.643895594292008,4.87\n",
     "          ,5.0058056788642,1.00333645746662,6.22\n",
+    "          ,5.01124305076464,0.852763024387618,5.77\n",
     "          ,4.99298422166686,-0.403578300702822,6.62\n",
     "          ,4.98472747174396,-0.67134574491643,6.49\n",
+    " 13    Lyr,4.97935722789167,0.767004332336152,4.04\n",
+    " 64    Ser,4.98338491078089,0.0442489446748673,5.57\n",
+    "          ,4.99848872161545,-0.374731886676805,6.14\n",
     "          ,4.95989009392712,1.39525983727557,6.39\n",
+    "          ,5.02715239817705,-1.17364180736678,5.88\n",
+    "          ,4.9632464963348,0.57423756459019,5.22\n",
     "          ,4.99741467284499,0.108913393461257,6.21\n",
     "          ,5.0058056788642,-0.304264218127534,6.37\n",
+    "          ,4.98519736808103,0.303003702556649,5.38\n",
+    "          ,5.00177799597498,-0.194769048248945,5.53\n",
+    " 10    Aql,5.02842783109197,0.242717121310678,5.89\n",
     "          ,5.00748388006804,-0.402434140415404,6.36\n",
     "          ,4.98284788639566,-0.644710081276272,6.69\n",
     "          ,4.98432470345504,-0.644690688729028,6.4\n",
     "          ,5.02601122135844,0.345473381021844,6.5\n",
+    " 11    Aql,4.97747764254337,0.237757477352928,5.23\n",
     "          ,4.99331986190762,0.176990930562658,6.75\n",
+    "          ,4.96801258775371,0.667869630822875,5.89\n",
+    " 48    Dra,5.01715031900216,1.00906210704052,5.66\n",
+    " 13Eps Aql,5.02003682507277,0.262992029454679,4.02\n",
     "          ,4.99459529482254,-0.699702497124527,6.23\n",
+    " 14Gam Lyr,5.04145067243377,0.570538436203324,3.24\n",
     "          ,5.02802506280305,0.70998539530086,6.22\n",
+    " 52Ups Dra,4.98009563642136,1.24437127530385,4.82\n",
+    "          ,5.03091156887365,0.457809559071735,5.27\n",
     "          ,5.02930049571797,-0.37183270086377,6.24\n",
     "          ,5.04782783700837,0.398192020705695,6.29\n",
     "          ,4.99922713014514,1.01622280511051,6.46\n",
     "          ,4.98633854489965,0.684479347537687,6.41\n",
     "          ,5.02352748357676,-0.256868832662265,6.32\n",
+    "          ,4.99110463631855,1.13896793289382,5.63\n",
+    "   Zet CrA,4.996542008219,-0.731375374911413,4.75\n",
+    "          ,5.06434133685416,-0.889793093350765,5.93\n",
     "          ,4.98445895955134,1.08902727560273,6.45\n",
+    " 15Lam Lyr,4.9753966730506,0.561045784327199,4.93\n",
+    " 12    Aql,5.03332817860719,-0.0743704186822028,4.02\n",
+    " 38Zet Sgr,5.03218700178857,-0.490781737523994,2.6\n",
+    "          ,5.02010395312092,-0.404097051341609,5.65\n",
     "          ,5.04547835532299,0.886792096664697,6.3\n",
+    "          ,5.01104166662018,-0.658803614986126,5.74\n",
     "          ,4.98593577661072,0.337018230423294,6.39\n",
     "          ,4.98821813024795,1.3227414068552,6.22\n",
     "          ,5.00889356907926,0.363615108968963,6.69\n",
     "          ,4.99969702648222,0.71007266176346,6.65\n",
+    "          ,5.00191225207129,0.458871301033365,5.69\n",
+    "          ,4.99238006923347,-0.327331653074725,6.05\n",
+    "          ,5.04829773334544,0.589960072268572,6.01\n",
     "          ,4.9966762643153,-0.329809050985195,6.37\n",
     "          ,5.02540706892506,0.436783189722014,6.72\n",
     "          ,5.04500845898592,0.388578165409293,6.4\n",
     "          ,5.01191433124618,0.146156780444092,6.3\n",
+    " 14    Aql,5.05608458693126,-0.040161965343114,5.42\n",
+    "          ,4.99258145337793,0.881977896811279,5.38\n",
+    "          ,5.0253399408769,-0.540232732997167,5.5\n",
     "          ,5.04339738583023,0.586803935204549,6.39\n",
+    "   Rho Tel,5.0270852701289,-0.901622547169837,5.16\n",
+    "          ,5.03050880058473,0.0317455998390524,5.83\n",
+    " 16    Lyr,5.01399530073894,0.819165436286727,5.01\n",
+    "          ,5.05353372110143,0.34315112348933,6.09\n",
+    " 39Omi Sgr,5.04668666018976,-0.353574617633185,3.77\n",
+    " 49    Dra,5.03245551398119,0.971421172839177,5.48\n",
     "          ,5.00600706300866,0.0581291603650334,6.73\n",
     "          ,5.02413163601014,-0.0753109572235553,6.9\n",
+    "          ,5.08421123910764,-1.17941109017198,5.33\n",
     "          ,5.04433717850438,0.371192746804705,6.52\n",
+    "          ,5.07501469651059,-0.832536597611728,5.97\n",
     "          ,5.03608042858148,1.2135468214589,6.52\n",
+    " 15    Aql,5.06897317217676,-0.0692653306201194,5.42\n",
+    "   Gam CrA,5.03406658713688,-0.644666448044972,4.93\n",
+    "   Gam CrA,5.03406658713688,-0.644666448044972,4.99\n",
+    "   Sig Oct,5.59472004531598,-1.51919760671441,5.47\n",
     "          ,4.99231294118532,0.912128459639481,6.31\n",
+    "          ,5.05131849551236,-0.250275366599176,5.97\n",
     "          ,5.02097661774692,-0.00850363196666126,6.53\n",
+    "          ,5.07085275752506,-0.631629808159937,6.16\n",
     "          ,5.07904237939981,-0.947359869845711,6.49\n",
+    " 40Tau Sgr,5.07608874528105,-0.459535495776485,3.32\n",
+    " 17Zet Aql,5.02903198352535,0.241960811968147,2.99\n",
+    " 16Lam Aql,5.02037246531353,-0.0544106394309232,3.44\n",
+    "          ,5.06937594046568,0.554045074771978,5.56\n",
+    "          ,5.06991296485091,0.536397856779591,6.06\n",
+    "          ,5.07058424533245,-0.27525781558675,6.03\n",
+    "          ,5.04621676385268,-0.477575412850571,6.04\n",
     "          ,5.01614339827986,-0.30128261398871,6.29\n",
+    "   Del CrA,5.03715447735194,-0.689463232179493,4.59\n",
+    "          ,5.03017316034396,0.143640597439133,6.09\n",
     "          ,5.05923960519449,0.52223160101757,6.31\n",
     "          ,5.0169489348577,0.0111991960336303,6.56\n",
     "          ,5.02869634328459,-0.407413176920399,6.3\n",
     "          ,5.03789288588163,1.34479073307206,6.54\n",
+    " 18    Aql,5.07904237939981,0.193232188879828,5.09\n",
+    "          ,5.03151572130704,-0.326551103048139,5.54\n",
+    "          ,5.05192264794574,0.423256888019058,5.77\n",
+    " 51    Dra,5.06575102586539,0.931947642923239,5.38\n",
     "          ,5.00929633736819,0.871326540237302,6.43\n",
+    "          ,5.05098285527159,0.499663524161921,5.55\n",
+    "   Alp CrA,5.05145275160866,-0.629986289780975,4.11\n",
     "          ,5.06675794658769,-0.666226112443913,6.46\n",
     "          ,5.06232749540955,-0.625443585588979,6.56\n",
+    "          ,5.0910583000193,-0.700007929743626,5.88\n",
     "          ,5.02319184333599,0.722808717166207,6.49\n",
+    "   Bet CrA,5.02010395312092,-0.674729744410574,4.11\n",
+    "          ,5.0816603732778,0.294146156602778,6.07\n",
+    " 17    Lyr,5.0391011907484,0.567261095719024,5.23\n",
+    " 18Iot Lyr,5.02903198352535,0.630068708106764,5.28\n",
     "          ,5.01392817269079,0.378717055135525,6.23\n",
+    " 41Pi  Sgr,5.07494756846243,-0.366107051289866,2.89\n",
+    "          ,5.0780354586775,-0.317586898084424,6.13\n",
+    " 19    Aql,5.08951435491177,0.105999663237789,5.22\n",
     "          ,5.06306590393924,0.2941122196451,6.48\n",
     "          ,5.02460153234721,-0.680591141815189,6.36\n",
     "          ,5.08273442204826,0.00747097882589795,6.34\n",
     "          ,5.04755932481575,-0.497380051723895,6.3\n",
+    "          ,5.08844030614131,-0.864175538440937,6.13\n",
     "          ,5.01936554459123,0.60389361746366,6.74\n",
     "          ,5.03970534318178,-0.635600432208224,6.57\n",
     "   Tau Pav,5.08226452571118,-1.20095136202368,6.27\n",
+    "          ,5.043733026071,0.914998556631649,5.81\n",
     "          ,5.0641399527097,-0.355033906813324,6.41\n",
+    "          ,5.04930465406775,-0.420507994447167,5.8\n",
+    "          ,5.06447559295047,-1.14037389256904,5.53\n",
+    " 20    Aql,5.08119047694072,-0.105776648944479,5.34\n",
     "          ,5.06367005637262,0.466628319931117,6.36\n",
+    "          ,5.08857456223762,-0.782023860176926,5.92\n",
+    "          ,5.05172126380128,-0.204508955102436,5.51\n",
+    " 19    Lyr,5.08394272691502,0.54599716766556,5.98\n",
+    "          ,5.05319808086066,0.705622072170874,6.18\n",
     "          ,5.07273234287336,0.2940249531825,6.73\n",
+    "          ,5.07582023308843,0.376196023993756,5.93\n",
+    " 21    Aql,5.08823892199685,0.0400310656492144,5.15\n",
     "          ,5.09011850734515,0.0962694526579206,6.49\n",
+    "          ,5.07313511116229,-0.777258141691619,5.4\n",
     " 55    Dra,5.07494756846243,1.1515439997818,6.25\n",
     "          ,5.08421123910764,-0.415751972235483,6.25\n",
+    " 42Psi Sgr,5.08313719033718,-0.43185263458513,4.85\n",
     "          ,5.0327240261738,0.87011935417134,6.75\n",
     "          ,5.03326105055903,0.870153291129017,6.57\n",
+    " 53    Dra,5.07655864161812,0.992379668273543,5.12\n",
     "          ,5.08803753785239,-0.566853852226892,6.25\n",
     "          ,5.06534825757647,-0.91827589711595,6.38\n",
+    " 20Eta Lyr,5.09199809269346,0.683228528240425,4.39\n",
+    "          ,5.04312887363762,0.352614686544588,6\n",
+    "          ,5.06662369049138,0.263258676979289,5.57\n",
+    "  1    Sge,5.06299877589109,0.370572185292885,5.64\n",
+    "          ,5.07293372701783,0.532785994855325,5.85\n",
+    " 22    Aql,5.08562092811886,0.0843818211971147,5.59\n",
+    " 43    Sgr,5.09951643408666,-0.297525307960111,4.96\n",
     "          ,5.11616419002876,0.479189842408665,6.54\n",
+    "  1    Vul,5.06145483078356,0.373330775138398,4.77\n",
+    "          ,5.07998217207396,0.253853291565764,5.63\n",
+    "          ,5.11938633634014,0.487417130577094,6.16\n",
+    " 54    Dra,5.10502093403526,1.00714224486333,4.99\n",
+    " 57Del Dra,5.07125552581399,1.18091886072023,3.07\n",
     "          ,5.06554964172093,0.873900900883994,6.27\n",
+    " 59    Dra,5.02661537379182,1.33623377160048,5.13\n",
+    "          ,5.1130762998137,0.0354592726363515,6.19\n",
+    " 21The Lyr,5.07367213554752,0.665557069563982,4.36\n",
+    " 25Ome1Aql,5.11415034858415,0.202375774905554,5.28\n",
+    "          ,5.11079394617647,-0.603510614655584,5.59\n",
+    "          ,5.05722576374988,-0.252437635616924,6.06\n",
+    "  2    Vul,5.10690051938356,0.401871756545317,5.43\n",
+    " 23    Aql,5.09636141582344,0.0189416705209496,5.1\n",
     "          ,5.08615795250409,-1.18034678057652,6.34\n",
     " 24    Aql,5.12106453754398,0.00591957504634744,6.41\n",
+    "          ,5.11300917176554,0.820290204026902,6\n",
     "          ,5.09662992801606,-0.526779153346377,6.58\n",
     "          ,5.05380223329404,0.54143991906313,6.68\n",
     "          ,5.12348114727751,0.167866737084177,6.32\n",
     "          ,5.1178423912326,0.34226876258971,6.58\n",
+    "          ,5.11260640347662,-0.376947485199475,5.58\n",
+    "  1Kap Cyg,5.05668873936465,0.931457981105318,3.77\n",
+    "   Eta Tel,5.13878634225653,-0.935084387440018,5.05\n",
     "          ,5.10596072670941,-0.576239845093172,6.48\n",
+    " 28    Aql,5.10985415350232,0.215979646797487,5.53\n",
+    " 29Ome2Aql,5.12824723869642,0.201323729217546,6.02\n",
+    " 26    Aql,5.10562508646864,-0.0800088017935067,5.01\n",
     "          ,5.08307006228902,-0.732757093902575,6.34\n",
     "          ,5.06219323931325,0.582746044693662,6.6\n",
+    " 27    Aql,5.10938425716525,0.0155722154372383,5.49\n",
+    "   Bet1Sgr,5.12160156192921,-0.759935748865575,4.01\n",
     "          ,5.05870258080926,0.653543386546088,6.22\n",
     "          ,5.11562716564353,-0.327525578547169,6.26\n",
+    " 44Rho1Sgr,5.12005761682167,-0.281919155565195,3.93\n",
     "          ,5.10334273283142,0.865154862076778,6.31\n",
+    " 46Ups Sgr,5.12435381190351,-0.245131493442604,4.61\n",
+    "   Bet2Sgr,5.09226660488607,-0.753987084998361,4.29\n",
+    " 45Rho2Sgr,5.13415450693393,-0.308777833498663,5.87\n",
     "          ,5.10931712911709,0.651541106043105,6.31\n",
     "          ,5.10589359866126,0.614113489861449,6.31\n",
     "          ,5.09797248897913,-0.136116289108313,6.31\n",
+    "   Alp Sgr,5.14596904340897,-0.687378533350722,3.97\n",
+    "          ,5.09904653774959,0.00440695636128568,5.83\n",
+    "          ,5.10763892791325,-0.73787187823828,6.17\n",
     "          ,5.10609498280572,0.949042173319161,6.26\n",
+    " 60Tau Dra,5.08394272691502,1.28029596907406,4.45\n",
     "          ,5.08072058060365,-0.115186882494815,6.32\n",
     "          ,5.13516142765624,0.17301545837756,6.35\n",
+    "          ,5.11931920829198,-0.456132103735096,6.04\n",
+    "          ,5.08307006228902,1.00609989544894,5.91\n",
     "          ,5.08555380007071,0.260422516944798,6.64\n",
+    "  3    Vul,5.13851783006392,0.458367094805011,5.18\n",
+    "          ,5.11502301321015,0.585000428310822,6.06\n",
+    "          ,5.08877594638208,-0.500749506807606,5.93\n",
     "          ,5.11898356805122,1.12383204976958,6.52\n",
+    " 47Chi1Sgr,5.10542370232418,-0.410002081977523,5.03\n",
+    " 49Chi3Sgr,5.12314550703674,-0.384631782045061,5.43\n",
     "          ,5.13751090934162,0.353681276643029,6.4\n",
     "          ,5.09991920237558,1.0082233793722,6.43\n",
     "          ,5.0854195439744,-0.0543815506100566,6.52\n",
+    "          ,5.11227076323585,-0.211238168996236,5.69\n",
     "          ,5.12019187291798,0.579837162607005,6.37\n",
     "  2    Sge,5.1085787205874,0.295619990193351,6.25\n",
+    "          ,5.15657527501725,-0.936800627871145,5.69\n",
+    " 58Pi  Dra,5.11529152540277,1.14693826981126,4.59\n",
+    "  2    Cyg,5.08911158662285,0.516990765124776,4.97\n",
+    " 31    Aql,5.15704517135432,0.208469882877101,5.16\n",
     "          ,5.10898148887632,0.490224201790718,6.53\n",
+    " 50    Sgr,5.11341194005446,-0.352963752394987,5.59\n",
     "          ,5.08709774517824,0.636206449309611,6.36\n",
+    " 30Del Aql,5.12341401922935,0.0543621580628123,3.36\n",
+    "          ,5.10253719625358,-0.26087339366823,5.72\n",
     "          ,5.12066176925506,-0.234727391845993,6.7\n",
+    "          ,5.16348946397707,-0.493171868971864,5.67\n",
     "          ,5.10649775109464,0.877401255661605,6.51\n",
+    "          ,5.15039949458711,0.757264425482662,5.84\n",
+    "          ,5.12408529971089,-1.17925110165721,5.96\n",
     "          ,5.11334481200631,0.353802480063306,6.31\n",
+    "  4    Vul,5.12166868997736,0.345550951210822,5.16\n",
+    "          ,5.11790951928076,0.434809998039898,6.19\n",
+    " 32Nu  Aql,5.12938841551503,0.00590987877272524,4.66\n",
+    "          ,5.17134344561105,-0.952227399204051,6.13\n",
+    "          ,5.11999048877352,0.227309742525017,5.74\n",
+    "  5    Vul,5.10535657427603,0.350772394556371,5.63\n",
+    "          ,5.12616626920365,0.347170228905728,5.81\n",
+    "          ,5.13281194597086,-0.742710318775754,5.71\n",
     "   Mu  Tel,5.15140641530942,-0.958011226419688,6.3\n",
     "   Lam UMi,4.59666022536784,1.55400238088126,6.38\n",
+    "  4    Cyg,5.09985207432743,0.633864799229852,5.15\n",
     "          ,5.13751090934162,0.24927665041609,6.32\n",
+    "          ,5.12428668385535,0.0511429952202449,5.85\n",
+    "          ,5.17080642122582,-0.436584416112759,5.52\n",
     "          ,5.12482370824058,-0.556895779216902,6.6\n",
+    " 35    Aql,5.1020672999165,0.0340387685507005,5.8\n",
     "          ,5.14596904340897,1.0127660835642,6.6\n",
     "          ,5.12958979965949,-0.12140704202345,6.61\n",
     "          ,5.14100156784561,0.662197310753893,6.34\n",
     "          ,5.12489083628873,0.00429544921463049,6.25\n",
+    "  6Alp Vul,5.15315174456141,0.430485460004401,4.44\n",
+    "  8    Vul,5.17288739071858,0.43229381503494,5.81\n",
+    "          ,5.13039533623733,0.254745348739006,5.56\n",
+    "  7Iot1Cyg,5.12677042163704,0.913165960917055,5.75\n",
     "  7    Vul,5.12878426308164,0.353947924167639,6.33\n",
+    "          ,5.17758635408933,-0.361069837143138,6.13\n",
+    "          ,5.18604448815669,-0.921781100030372,5.75\n",
+    "          ,5.11918495219568,0.050687270360002,6.09\n",
     "          ,5.12321263508489,1.09182949867954,6.38\n",
+    " 36    Aql,5.1585219884137,-0.0211378764963758,5.03\n",
+    "          ,5.14952682996112,0.0601168964575825,6.05\n",
+    "          ,5.14717734827574,-0.780651837459386,5.61\n",
+    "  6Bet1Cyg,5.16322095178446,0.487989210720803,3.08\n",
+    "  6Bet2Cyg,5.1659060737106,0.488086173457025,5.11\n",
     "          ,5.16805417125152,0.63230854731349,6.25\n",
+    " 10Iot2Cyg,5.1575150676914,0.902853973919856,3.79\n",
+    "          ,5.13871921420838,0.46455816551278,5.87\n",
+    "          ,5.13395312278947,-0.697525683696345,5.89\n",
+    "          ,5.11978910462906,1.3893305659556,6.05\n",
+    "   Iot Tel,5.14435797025329,-0.836027256115717,4.9\n",
     "          ,5.05011019064559,1.45670027508258,6.53\n",
+    "  8    Cyg,5.17161195780366,0.601319256816969,4.74\n",
+    "          ,5.1353628118007,0.878016969036614,5.53\n",
     "          ,5.12771021431119,0.972705929094117,6.37\n",
+    " 38Mu  Aql,5.12979118380395,0.128785906249937,4.45\n",
+    " 37    Aql,5.13670537276377,-0.164754233251454,5.12\n",
+    " 51    Sgr,5.13355035450055,-0.406327194274713,5.65\n",
     "          ,5.16691299443291,-0.114139684943618,6.34\n",
     "          ,5.17201472609258,-0.205027705741223,6.27\n",
+    "          ,5.17476697606688,-0.97767526932549,6.18\n",
     "          ,5.21430539642937,-1.13995210466647,6.39\n",
     "          ,5.16704725052921,0.676528403167491,6.61\n",
+    "  9    Vul,5.16939673221459,0.345109770761012,5\n",
     "          ,5.16073721400277,0.0508472588747681,6.38\n",
+    "          ,5.16630884199952,-0.299275485348917,6.11\n",
+    " 52    Sgr,5.18819258569761,-0.403457097282545,4.6\n",
+    "  9    Cyg,5.19087770762375,0.514227327142452,5.38\n",
+    "          ,5.17402856753719,0.859792822763707,5.96\n",
+    "          ,5.14006177517145,-0.310125615532148,5.64\n",
+    "          ,5.17785486628195,0.740242617138906,5.35\n",
     "          ,5.14200848856791,0.194604211597368,6.68\n",
+    " 39Kap Aql,5.20309501238771,-0.121693082095305,4.95\n",
+    " 41Iot Aql,5.18940089056437,-0.012454863467704,4.36\n",
     "          ,5.1317378972004,1.04996583731573,6.29\n",
     "          ,5.15248046407988,0.251181968182851,6.38\n",
+    "          ,5.10971989740601,1.23899953971715,6.07\n",
+    "          ,5.14912406167219,0.894248531080161,5.73\n",
     "          ,5.14241125685683,0.394197155973353,6.32\n",
     "          ,5.17610953702995,0.840632986086258,6.67\n",
+    "          ,5.18181542112301,-0.239081018702357,5.47\n",
+    "          ,5.20343065262848,-1.1195559931022,6.09\n",
+    "          ,5.20175245142464,0.196756784341494,5.98\n",
+    " 11    Cyg,5.19175037224975,0.644802195875683,6.05\n",
     "          ,5.18188254917116,0.354873918298558,7.14\n",
     "          ,5.1732901590075,-0.935191046449862,6.26\n",
+    " 42    Aql,5.19913445754665,-0.0585121631731099,5.46\n",
     "          ,5.20074553070233,-0.780545178449542,6.25\n",
+    " 61Sig Dra,5.14281402514575,1.21581574948649,4.68\n",
+    "  4Eps Sge,5.15899188475078,0.287329676246378,5.66\n",
     "          ,5.21913861589643,-0.67311531485248,6.61\n",
     "          ,5.2019538355691,0.876829175517896,6.52\n",
     "          ,5.1482513970462,0.511968095388481,6.43\n",
     "          ,5.20725695137324,0.669925240830779,6.5\n",
+    "          ,5.18215106136378,0.780074909178866,5.17\n",
+    " 13The Cyg,5.16684586638475,0.876523742898797,4.48\n",
     " 53    Sgr,5.21068048182907,-0.393959597269609,6.34\n",
     "          ,5.20578013431386,0.0590212175382749,6.35\n",
     "          ,5.16348946397707,0.362727899932533,6.48\n",
+    "          ,5.15825347622109,-0.393945052859176,5.97\n",
+    " 44Sig Aql,5.15993167742493,0.094208994513205,5.17\n",
     "          ,5.17845901871533,0.289225297739516,6.38\n",
+    " 54    Sgr,5.20698843918062,-0.274133047846576,6.2\n",
     "          ,5.21175453059953,0.860175825571783,6.47\n",
+    " 12Phi Cyg,5.17469984801873,0.526274947118023,4.69\n",
+    "  5Alp Sge,5.15650814696909,0.314401672199534,4.37\n",
+    " 45    Aql,5.20685418308431,0.0108404339096092,5.67\n",
+    "          ,5.20477321359155,0.59304833541724,6.1\n",
     "          ,5.18671576863822,0.357385253166706,6.5\n",
+    " 14    Cyg,5.17993583577471,0.747320896883105,5.4\n",
+    "          ,5.19530815880189,0.959475363736638,5.82\n",
     "          ,5.20202096361725,0.413948465341755,6.64\n",
+    "          ,5.16046870181016,0.241126932436639,6.01\n",
+    "          ,5.19054206738298,0.802119387258916,6.2\n",
+    "  6Bet Sge,5.15697804330617,0.305015679333253,4.37\n",
+    " 55    Sgr,5.1992015855948,-0.277090411301344,5.06\n",
     "          ,5.17308877486304,0.391874898440838,6.36\n",
+    "          ,5.21229155498476,-0.636366437824377,6.16\n",
+    "          ,5.20403480506186,0.751849056664668,6.16\n",
     " 46    Aql,5.17463271997057,0.212813813459842,6.34\n",
     "          ,5.22054830490765,-1.40761288987024,6.39\n",
+    "          ,5.21611785372952,0.794561141970418,5.06\n",
+    "          ,5.20678705503616,-0.253596340314776,5.49\n",
+    " 47Chi Aql,5.20309501238771,0.206414272869196,5.27\n",
+    "          ,5.22195799391888,-1.24785223753421,5.41\n",
     "          ,5.23028187188993,0.702562897843073,6.23\n",
     "          ,5.16617458590322,1.05605024901366,6.51\n",
     "          ,5.22336768293011,0.511934158430803,6.49\n",
+    "          ,5.21732615859628,0.565952098780028,5.94\n",
+    " 16    Cyg,5.21873584760751,0.881832452706946,5.96\n",
+    "          ,5.22289778659303,0.881696704876235,6.2\n",
+    "          ,5.17456559192242,0.535442773827805,6.05\n",
+    " 10    Vul,5.21940712808904,0.449805285196616,5.49\n",
+    "          ,5.17651230531887,-0.525193812609149,5.52\n",
     "          ,5.23686042060899,0.473604788802284,6.28\n",
     "          ,5.16295243959184,0.968017780797788,6.48\n",
+    "   Nu  Tel,5.18523895157885,-0.971057562578345,5.35\n",
     " 48Psi Aql,5.21195591474399,0.232177271883357,6.26\n",
+    "          ,5.23081889627516,0.596248105712563,6.05\n",
     "          ,5.25954970088491,-1.13773165800699,6.45\n",
+    "          ,5.2222265061115,0.729077358062953,5.84\n",
+    " 56    Sgr,5.20403480506186,-0.318328663016521,4.86\n",
     "          ,5.24061959130559,-0.0194895099806033,6.48\n",
+    " 15    Cyg,5.18846109789022,0.65195804580886,4.89\n",
     "          ,5.23155730480485,0.510765757459329,6.82\n",
+    " 49Ups Aql,5.2241060914598,0.132877733718502,5.91\n",
     "          ,5.21746041469259,0.600635669526604,6.57\n",
     "          ,5.25760298748846,-0.892071717651979,6.25\n",
     "          ,5.18141265283409,1.01257700622857,6.22\n",
     "          ,5.23196007309377,0.710639893770358,6.34\n",
+    "          ,5.19846317706511,-1.12390477182175,6.05\n",
+    " 50Gam Aql,5.19584518318712,0.185237611278332,2.72\n",
     "          ,5.2149766769109,0.995579438568865,6.27\n",
     "          ,5.2214880975818,-1.06357940548129,6.21\n",
+    " 18Del Cyg,5.24471440224296,0.787681635835474,2.87\n",
     "          ,5.22370332317087,0.629908719591998,6.43\n",
+    "          ,5.23954554253513,0.611088252491326,6.09\n",
+    "          ,5.25250125582878,-1.02637480359294,5.42\n",
+    "          ,5.18765556131238,-0.214617320353569,6.11\n",
     "          ,5.22793239020455,0.43866911494153,6.62\n",
+    " 17    Cyg,5.20927079281784,0.588660771603199,4.99\n",
+    "          ,5.22189086587073,0.574014550296879,6.18\n",
+    "  7Del Sge,5.21054622573276,0.323482232446716,3.82\n",
+    "          ,5.21088186597353,-0.810579385994278,5.94\n",
+    "          ,5.20356490872479,-0.474923482014901,6.05\n",
+    "          ,5.2445130180985,0.443032438071516,5.95\n",
+    "          ,5.1909448356719,-0.159334016296649,6.04\n",
     "          ,5.22444173170056,0.18664841909036,6.44\n",
+    "          ,5.21658775006659,0.670337332459722,5.77\n",
+    " 52Pi  Aql,5.24014969496851,0.206225195533563,5.72\n",
+    "          ,5.19101196372006,1.21015797382795,5.92\n",
+    "  8Zet Sge,5.26243620695552,0.334094803926203,5\n",
+    "          ,5.21524518910352,0.836148459535994,6.12\n",
+    "          ,5.25156146315463,-0.925528709785349,5.74\n",
     "          ,5.25344104850293,-0.925431747049127,6.5\n",
     "          ,5.24256630470204,0.616299999563253,6.53\n",
     "          ,5.25156146315463,0.583589620498793,6.44\n",
+    "          ,5.26465143254459,-0.66541647359646,5.33\n",
+    " 51    Aql,5.25518637775493,-0.161205397105732,5.39\n",
     "          ,5.2158493415369,0.137924644138852,6.51\n",
+    "          ,5.22491162803764,0.675616953447005,6.11\n",
     "          ,5.26129503013691,0.496381335540809,6.38\n",
+    " 53Alp Aql,5.25545488994754,0.15478161583103,0.77\n",
     "          ,5.26404728011121,-1.06166923957772,6.24\n",
+    "          ,5.21162027450322,-0.0268635260702794,6.13\n",
+    " 54Omi Aql,5.19886594535403,0.181785737868832,5.11\n",
+    " 57    Sgr,5.21719190249997,-0.330827159715525,5.92\n",
     "          ,5.2204811768595,0.168080055103865,6.25\n",
     "          ,5.23491370721253,1.19447425124405,6.34\n",
+    "   Chi Cyg,5.23786734133129,0.5744605788835,4.23\n",
+    " 12    Vul,5.20222234776171,0.394618943875918,4.95\n",
+    " 19    Cyg,5.2380015974276,0.675835119603504,5.12\n",
+    "          ,5.24243204860574,0.708598828172887,5.69\n",
+    "          ,5.25545488994754,0.660195030250911,6.06\n",
+    "          ,5.20578013431386,0.202962399459696,6.13\n",
+    " 55Eta Aql,5.23920990229436,0.0175502552561652,3.9\n",
     "          ,5.21403688423675,-0.233820790262318,6.48\n",
     "          ,5.22202512196703,0.180665818265469,6.54\n",
+    "          ,5.20322926848402,0.436196565167872,5.57\n",
     "  9    Sge,5.23034899993808,0.325886908305019,6.23\n",
+    "          ,5.23055038408254,-0.0503624451936586,5.65\n",
+    " 20    Cyg,5.24296907299097,0.924816033674117,5.03\n",
+    "          ,5.22276353049672,0.826888518226802,6.2\n",
+    "          ,5.23357114624946,-0.385000240442705,6.18\n",
+    "          ,5.28270887749791,-1.20141678315754,5.75\n",
     "          ,5.23578637183853,0.0768041833613727,6.53\n",
+    "   Iot Sgr,5.2352493474533,-0.700429717646191,4.13\n",
+    " 63Eps Dra,5.19759051243911,1.22640408028193,3.83\n",
+    "          ,5.22296491464119,0.635862231596023,6.1\n",
+    " 56    Aql,5.22081681710027,-0.129605241371012,5.79\n",
     "          ,5.22101820124473,-0.575149014310676,6.46\n",
     "          ,5.29600023103233,-0.978683681782198,6.53\n",
+    "          ,5.23122166456408,-0.996558762204707,5.26\n",
     "          ,5.29841684076586,-1.1735206039465,6.39\n",
+    "          ,5.2760632007307,0.820784713981633,5.62\n",
+    "   Eps Pav,5.28364867017206,-1.24074486896915,3.96\n",
+    "          ,5.21074760987722,0.83657024743856,5.91\n",
+    " 13    Vul,5.2426334327502,0.420270435743423,4.58\n",
+    " 57    Aql,5.2602881094146,-0.13566056424807,5.71\n",
     " 57    Aql,5.26095938989614,-0.135486031322871,6.49\n",
+    " 59Xi  Aql,5.22981197555285,0.147679095402776,4.71\n",
+    " 58    Aql,5.26995454834872,0.00477541475892893,5.61\n",
+    " 58Ome Sgr,5.28183621287192,-0.448559314036165,4.7\n",
+    "          ,5.2639130240149,0.124621356729206,6.15\n",
     "          ,5.24048533520928,-0.0919061295279347,6.51\n",
     "          ,5.20705556722878,0.834398282147189,6.29\n",
+    "          ,5.25156146315463,0.424454377811399,5.52\n",
+    " 60Bet Aql,5.23941128643882,0.111817427411103,3.71\n",
+    "   Mu 1Pav,5.26686665813366,-1.13534637469593,5.76\n",
+    " 59    Sgr,5.29479192616557,-0.468271838310079,4.52\n",
     "          ,5.27834555436793,-0.662207007027515,6.55\n",
+    "          ,5.27465351171948,0.645703949322547,5.76\n",
     "          ,5.22289778659303,0.527007015776499,6.57\n",
+    " 23    Cyg,5.22880505483055,1.00397641152568,5.14\n",
+    " 10    Sge,5.22027979271504,0.290330672932446,5.36\n",
+    " 61Phi Aql,5.23773308523498,0.199384474493108,5.28\n",
+    "          ,5.25297115216586,1.04211670381857,6.06\n",
+    "   Mu 2Pav,5.31070127357798,-1.13543848929534,5.31\n",
+    " 22    Cyg,5.28358154212391,0.671719051450884,4.94\n",
+    " 61    Sgr,5.29942376148817,-0.253223033780322,5.02\n",
+    " 21Eta Cyg,5.24323758518358,0.612319679241344,3.89\n",
     "          ,5.22316629878565,0.366485205961132,6.48\n",
     "          ,5.30298154804031,-0.514207934595207,6.28\n",
+    " 60    Sgr,5.30405559681077,-0.450372517203515,4.83\n",
+    " 24Psi Cyg,5.2649199447372,0.915231267198582,4.92\n",
+    "          ,5.27787565803085,0.632696398258378,6.02\n",
+    "          ,5.26995454834872,-0.849083288547997,6.17\n",
+    " 11    Sge,5.28385005431653,0.293026236999415,5.53\n",
+    "   The1Sgr,5.29096562742081,-0.606041342070975,4.37\n",
+    "   The2Sgr,5.30049781025862,-0.581233426008601,5.3\n",
+    "          ,5.30036355416232,-1.02317988143443,5.13\n",
+    "          ,5.24384173761696,1.01665913742351,6.09\n",
+    "          ,5.27156562150441,-0.749735269015031,6.14\n",
+    "          ,5.24155938397974,0.704555482072433,5.45\n",
+    "          ,5.25733447529584,-0.633515733379453,5.95\n",
+    "          ,5.30083345049939,-0.783424971715333,5.81\n",
+    "          ,5.26324174353336,-0.563673474478813,5.66\n",
     "          ,5.27908396289762,0.888416222496414,6.43\n",
+    "          ,5.28854901768728,1.02705839088331,4.96\n",
+    "          ,5.24404312176142,0.989373823450663,6.12\n",
+    " 12Gam Sge,5.28821337744651,0.340203456308184,3.47\n",
+    "          ,5.26210056671475,0.024046758583033,6.17\n",
+    "          ,5.29526182250264,-0.140353560681211,5.88\n",
     "          ,5.29834971271771,0.737590686303237,6.43\n",
     "          ,5.27579468853809,-0.683921811804411,6.29\n",
+    "          ,5.27827842631977,0.540766028046388,5.49\n",
+    " 14    Vul,5.24572132296526,0.403195297894746,5.67\n",
     "          ,5.27344520685271,0.665067407746061,6.32\n",
+    "          ,5.27243828613041,-0.371105480342105,6.01\n",
+    "          ,5.3018403712217,-1.16377100081939,6.07\n",
+    " 13    Sge,5.24041820716113,0.305723507307673,5.37\n",
+    "          ,5.25914693259599,0.798875983732293,5.92\n",
+    " 25    Cyg,5.30573379801461,0.646518436306811,5.19\n",
+    "          ,5.31506459670796,0.149366247013037,5.91\n",
+    " 63    Sgr,5.31902515154903,-0.215776025051421,5.71\n",
+    " 62    Sgr,5.29774556028433,-0.45885190848612,4.58\n",
+    "          ,5.25229987168432,0.908545686536081,6.15\n",
+    "          ,5.29405351763588,-0.629351183858722,4.77\n",
+    " 15    Vul,5.24854070098772,0.484391893206971,4.64\n",
+    "          ,5.2657926093632,1.10888039584416,5.96\n",
+    "          ,5.26089226184798,0.647497759942652,6.2\n",
+    "          ,5.30036355416232,0.432846502631405,5.88\n",
+    " 16    Vul,5.24659398759126,0.435251178489708,5.22\n",
     "          ,5.30855317603706,-0.373578030115764,6.45\n",
+    "          ,5.27975524337915,-0.557521188865533,4.99\n",
+    " 26    Cyg,5.26935039591534,0.874492373574948,5.05\n",
     "          ,5.25505212165862,-0.113974848292041,6.72\n",
+    "          ,5.27109572516734,0.322895607892573,5.96\n",
     "          ,5.29841684076586,-1.14572623560849,6.45\n",
+    "          ,5.28935455426512,0.279800519778746,5.67\n",
+    "   Del Pav,5.32942999901284,-1.14874177670499,3.56\n",
     "          ,5.28351441407576,1.22813486512349,6.33\n",
+    " 62    Aql,5.28458846284622,0.0123821414155375,5.68\n",
     "          ,5.30090057854755,-0.575958653158129,6.53\n",
+    " 63Tau Aql,5.26458430449643,0.12702603258751,5.52\n",
+    "          ,5.29928950539186,0.521795268704571,5.71\n",
     "          ,5.26505420083351,-0.181523938481032,6.34\n",
+    " 15    Sge,5.26176492647398,0.297927703315432,5.8\n",
+    "   Xi  Tel,5.29767843223617,-0.892197769209068,4.94\n",
     "          ,5.31365490769674,-0.959645048525027,6.26\n",
     " 65    Sgr,5.29324798105803,-0.197828222576746,6.55\n",
+    " 64    Dra,5.27861406656054,1.13134181368997,5.27\n",
     "          ,5.33211512093898,0.405095767524695,6.45\n",
+    "          ,5.30190749926985,0.562320844308518,5.64\n",
+    " 16Eta Sge,5.27055870078211,0.348910710020911,5.1\n",
     "          ,5.29338223715434,0.270530882195932,6.34\n",
     "          ,5.27854693851239,-0.0684459954990443,6.47\n",
     " 65    Dra,5.27196838979333,1.12808386575291,6.57\n",
+    "          ,5.27096146907103,0.671573607346551,6.19\n",
+    "          ,5.29210680423942,0.841767450100054,6.16\n",
+    " 67Rho Dra,5.31063414552982,1.1846179891071,4.51\n",
+    " 69    Dra,5.28076216410146,1.33485205260932,6.2\n",
+    "          ,5.2667995300855,0.904768987960238,6.14\n",
+    " 17    Vul,5.33386045019098,0.412149806584839,5.07\n",
+    " 27    Cyg,5.29143552375789,0.62783856517366,5.36\n",
+    " 64    Aql,5.27331095075641,0.0118391500926949,5.99\n",
     "          ,5.29365074934696,-0.985694087611042,6.37\n",
     "          ,5.28666943233898,0.983342741257661,6.21\n",
     "          ,5.33406183433544,0.164056101550656,6.43\n",
+    "          ,5.31291649916705,-0.173437246280125,6.18\n",
     "          ,5.31331926745597,1.1151005553728,6.26\n",
     "          ,5.27962098728285,0.290844575434422,6.42\n",
+    "          ,5.2806950360533,0.927918841233219,5.85\n",
+    "          ,5.4137428274938,-1.44320306220049,6.17\n",
+    "          ,5.32211304176409,0.60079565804137,6.11\n",
     "          ,5.32231442590855,0.187201106686825,6.31\n",
+    " 66    Dra,5.3018403712217,1.08202656604751,5.39\n",
     "          ,5.28197046896822,0.876664338866319,6.54\n",
+    "          ,5.2999607858734,-0.62655380891872,5.32\n",
     "          ,5.3249995478347,1.18729900876363,6.28\n",
     " 17The Sge,5.35124661466277,0.365040461191425,6.48\n",
     "          ,5.32043484056025,-0.71941502139844,6.22\n",
+    "          ,5.33318916970944,-1.09229976795022,6.09\n",
+    " 28    Cyg,5.30962722480752,0.6429744482979,4.93\n",
     "          ,5.29754417613987,-0.124926789348305,6.49\n",
+    " 65The Aql,5.30855317603706,0.014335940550409,3.23\n",
+    " 18    Vul,5.32459677954578,0.469566290838641,5.52\n",
     "  1Xi 1Cap,5.36171859017473,-0.202589092925242,6.34\n",
     "          ,5.28868327378359,0.36887048927219,6.22\n",
+    "          ,5.32258293810117,-0.899794799592055,5.65\n",
+    "  2Xi 2Cap,5.3231199624864,-0.198662102108255,5.85\n",
     "          ,5.31231234673366,0.381800470147382,6.26\n",
     "          ,5.33560577944297,0.0151407312610508,6.27\n",
+    " 19    Vul,5.34842723664032,0.467903379912435,5.49\n",
+    " 20    Vul,5.28928742621697,0.462143793380854,5.92\n",
+    " 66    Aql,5.31137255405951,-0.0172884558683661,5.47\n",
     "          ,5.29344936520249,0.833166855397171,6.92\n",
+    "          ,5.32479816369024,-0.47066681789476,5.73\n",
     "          ,5.34721893177355,0.423048418136181,6.56\n",
+    " 67Rho Aql,5.31936079178979,0.265246413071838,4.95\n",
     "          ,5.36937118766425,-0.523506660998888,6.3\n",
+    "          ,5.33104107216853,0.898209458854826,6.01\n",
+    " 68    Dra,5.33083968802407,1.08347615895402,5.75\n",
     "          ,5.33761962088758,-0.620386978895006,6.39\n",
     "          ,5.34137879158418,-0.607413364788515,6.53\n",
+    " 30    Cyg,5.31687705400811,0.817090433731579,4.83\n",
+    " 21    Vul,5.31654141376734,0.500817380722962,5.18\n",
     "          ,5.32291857834194,-1.0955237789296,6.27\n",
+    "          ,5.35017256589231,0.757109285104707,6.14\n",
     "          ,5.30378708461815,0.638882620829335,6.45\n",
+    " 31    Cyg,5.34359401717325,0.815791133066205,3.79\n",
+    " 29    Cyg,5.34003623062111,0.642392671880568,4.97\n",
     "          ,5.32607359660516,0.734846640868157,6.71\n",
     "  3    Cap,5.33641131602082,-0.203558720287461,6.32\n",
+    "          ,5.32278432224563,0.446663692543027,4.78\n",
+    " 33    Cyg,5.32479816369024,0.987293972758704,4.3\n",
+    " 22    Vul,5.34198294401757,0.410302666459811,5.15\n",
+    "          ,5.32989989534991,1.05837735468298,5.79\n",
+    "          ,5.3332562977576,0.588689860424065,5.66\n",
+    " 23    Vul,5.36332966333042,0.48544878703179,4.52\n",
     "          ,5.3897109862548,-0.807898366337742,6.31\n",
+    " 18    Sge,5.33224937703529,0.37696687774672,6.13\n",
+    "  5Alp1Cap,5.36238987065627,-0.200567419875015,4.24\n",
+    "  4    Cap,5.31640715767104,-0.352381975977655,5.87\n",
+    "          ,5.34292273669172,-0.810176990638957,6.13\n",
+    "  1Kap Cep,5.34245284035464,1.35631960240885,4.39\n",
+    " 32    Cyg,5.33943207818773,0.832774156315472,3.98\n",
     "          ,5.31036563333721,0.678894293931305,6.27\n",
+    " 24    Vul,5.36903554742348,0.430592119014246,5.32\n",
+    "  6Alp2Cap,5.31895802350087,-0.199932313952762,3.57\n",
     "          ,5.35970474873013,0.876727364644863,6.31\n",
+    "          ,5.30660646264061,0.795511376785393,5.91\n",
     "          ,5.34366114522141,0.646755995010554,6.48\n",
     "          ,5.36661893768995,-0.959043879560451,6.27\n",
+    "          ,5.38004454732067,0.704502152567511,5.24\n",
     "          ,5.35245491952953,0.508729539998669,6.22\n",
+    "  7Sig Cap,5.35057533418123,-0.329542403460585,5.28\n",
     "          ,5.34923277321816,0.745638593409655,6.29\n",
+    " 34    Cyg,5.37353312664977,0.663802044038366,4.81\n",
     "          ,5.36098018164504,-0.502703305942478,6.3\n",
     "          ,5.39293313256617,-0.599108506431109,6.46\n",
     "          ,5.38266254119867,-0.8377677372309,6.27\n",
+    "          ,5.32392549906424,0.710911389431779,5.84\n",
+    "          ,5.37702378515376,-0.0160812698024033,6.06\n",
+    " 36    Cyg,5.35292481586661,0.645771823237902,5.58\n",
+    " 35    Cyg,5.36702170597887,0.610564653715727,5.17\n",
     "          ,5.35809367557444,0.230679197608728,6.21\n",
     "          ,5.3582950597189,-0.0984074809916136,6.63\n",
+    "  8Nu  Cap,5.37668814491299,-0.196189552334596,4.76\n",
+    "          ,5.32352273077532,0.236458176687554,5.95\n",
+    "          ,5.38581755946189,-0.230645260651051,6.1\n",
+    "  9Bet Cap,5.32855733438684,-0.230708286429595,3.08\n",
     "          ,5.38111859609113,0.808484990891884,6.45\n",
+    "          ,5.35077671832569,0.254279927605141,6.13\n",
+    "   Kap1Sgr,5.36890129132717,-0.732170469348432,5.59\n",
+    "          ,5.35198502319246,0.310547403434713,5.8\n",
+    "          ,5.34782308420693,0.966863924236748,5.76\n",
     "          ,5.38373658996912,0.648084384496794,6.57\n",
+    "          ,5.35218640733692,1.16682047887356,5.93\n",
     "          ,5.34366114522141,0.687717902927499,6.23\n",
+    "          ,5.40347223612629,-1.37942097431372,5.77\n",
     "          ,5.39420856548109,0.817468588402844,6.5\n",
+    "   Kap2Sgr,5.40776843120812,-0.725659421611131,5.64\n",
     "          ,5.33741823674312,-0.145652574215738,6.3\n",
+    " 25    Vul,5.33654557211712,0.426665128197258,5.54\n",
+    "   Alp Pav,5.39729645569616,-0.964556211114666,1.94\n",
+    "          ,5.36406807186011,0.935428605153605,6.18\n",
+    " 71    Dra,5.36816288279748,1.08659835906037,5.72\n",
+    "          ,5.40219680321137,0.25396964684923,6.17\n",
+    "          ,5.35070959027754,0.0932539115614192,5.31\n",
     "          ,5.33600854773189,0.717878162029323,6.39\n",
+    " 37Gam Cyg,5.35037395003677,0.702611379211184,2.2\n",
+    "          ,5.38219264486159,0.545677190636027,6.09\n",
+    "          ,5.33923069404327,0.799273530950803,5.58\n",
+    "          ,5.40937950436381,-0.684232092560321,6.09\n",
+    "          ,5.39279887646986,0.716040718177918,5.93\n",
+    "          ,5.38105146804298,-0.477114839853517,5.85\n",
+    "          ,5.4064929982932,0.750200690148896,6.2\n",
+    "          ,5.39105354721787,0.0186507823122838,6.15\n",
+    "          ,5.33130958436114,1.20218763691051,5.55\n",
+    "          ,5.34292273669172,1.11666650356278,5.69\n",
+    " 39    Cyg,5.40575458976351,0.561821486216975,4.43\n",
+    "          ,5.39595389473308,0.654086377868931,5.9\n",
     "          ,5.42058988840547,-0.638737176725003,6.25\n",
+    "          ,5.40212967516322,-0.0209391028871209,6.11\n",
     "          ,5.40414351660783,0.175517096972085,6.33\n",
+    "          ,5.39944455323707,0.373670144715175,5.66\n",
+    "          ,5.4267656688356,-1.40867463183187,5.91\n",
     "          ,5.35104523051831,0.346709655908674,6.41\n",
+    " 10Pi  Cap,5.3795746509836,-0.310464985108925,5.25\n",
     "          ,5.3842064863062,0.934657751400641,6.51\n",
     "          ,5.3805815717059,0.30221345625644,6.22\n",
+    "          ,5.42085840059808,-0.600465984738216,6.1\n",
     "          ,5.3519178951443,1.04021623418862,6.44\n",
     "          ,5.41669646161256,-0.248854862513525,6.41\n",
     "          ,5.36823001084564,0.147262155637022,6.25\n",
+    " 68    Aql,5.3915905716031,-0.0461154773471391,6.13\n",
+    " 11Rho Cap,5.42743694931714,-0.282505780119338,4.78\n",
     "          ,5.36413519990827,0.599152139662409,6.39\n",
     "          ,5.38071582780221,0.0512593505037112,6.21\n",
+    "          ,5.40454628489675,-0.377136562535108,6.16\n",
+    " 40    Cyg,5.39984732152599,0.670909412603431,5.62\n",
     "          ,5.38098433999483,0.988535095782344,6.36\n",
+    " 43    Cyg,5.35688537070767,0.861901762276533,5.69\n",
     " 12Omi Cap,5.43300857731389,-0.303920000413946,6.74\n",
+    " 12Omi Cap,5.43488816266219,-0.303978178055679,5.94\n",
+    " 69    Aql,5.41488400431241,-0.0194507248861146,4.91\n",
     "          ,5.44314491258509,-0.504181987669862,6.39\n",
     "          ,5.39085216307341,0.350597861631172,6.55\n",
+    " 41    Cyg,5.3943428215774,0.530032253146622,4.01\n",
+    " 42    Cyg,5.38991237039926,0.636254930677722,5.88\n",
+    "  1    Del,5.39105354721787,0.190168166415215,6.08\n",
+    "          ,5.37702378515376,-0.260815216026497,6.12\n",
+    "          ,5.45811446732334,-1.19361128289168,6.11\n",
+    "          ,5.44489024183708,0.359639636783865,6.18\n",
     "          ,5.38870406553249,0.196533770048184,7.11\n",
     "          ,5.44294352844062,0.80160548475694,6.41\n",
     "          ,5.44596429060754,-0.402405051594537,6.36\n",
+    "          ,5.39890752885184,0.978572174635543,5.91\n",
+    " 45Ome1Cyg,5.37158641325332,0.854367757672091,4.95\n",
+    "          ,5.40743279096735,-0.142186156395805,5.65\n",
+    "   Nu  Mic,5.45395252833782,-0.75893703268249,5.11\n",
+    " 44    Cyg,5.44636705889646,0.644651903634539,6.19\n",
+    "   Phi1Pav,5.43542518704742,-1.03704555271416,4.76\n",
     "          ,5.44938782106337,0.450372517203515,6.34\n",
+    "  2The Cep,5.40937950436381,1.09945561788339,4.22\n",
+    " 46Ome2Cyg,5.39649091911831,0.85905590596842,5.44\n",
+    "  2Eps Del,5.39716219959985,0.197280383117092,4.03\n",
     "          ,5.45885287585303,-0.661659167567861,6.44\n",
+    "          ,5.39957880933338,0.912976883581423,6.18\n",
+    "          ,5.40004870567046,-0.214307039597659,6.13\n",
     "          ,5.44797813205215,-0.515332702335381,6.4\n",
     "          ,5.45193868689321,0.175575274613818,6.56\n",
+    "  3Eta Del,5.45650339416766,0.22736792016675,5.38\n",
+    "   Rho Pav,5.44482311378893,-1.05540059868097,4.88\n",
+    "          ,5.43367985779542,0.99099794928238,6.14\n",
     "          ,5.44583003451123,0.753836792757217,6.6\n",
     "          ,5.39776635203323,0.366262191667821,6.48\n",
+    "   Mu 1Oct,5.4231407542353,-1.32329894258848,6\n",
     "   Mu 2Oct,5.47355391839868,-1.30287859034015,6.55\n",
+    "          ,5.43193452854343,-0.270075157335689,6.19\n",
+    " 47    Cyg,5.45274422347105,0.615243105738434,4.61\n",
     "          ,5.44495736988523,0.72906281365252,6.49\n",
     "          ,5.36782724255671,1.26591639529235,6.27\n",
+    "   Alp Ind,5.44307778453693,-0.815219052922496,3.11\n",
+    "          ,5.4536840161452,0.814962101671508,5.78\n",
+    "  4Zet Del,5.41354144334933,0.256112523319735,4.68\n",
     "          ,5.47516499155437,-1.06626042513782,6.22\n",
+    " 70    Aql,5.45160304665244,-0.0253072741539178,4.89\n",
     " 26    Vul,5.40421064465598,0.451734843647432,6.41\n",
+    "   Phi2Pav,5.41401133968641,-1.03761763285787,5.12\n",
+    "          ,5.45200581494136,0.905025939211226,6.11\n",
     "          ,5.46737813796854,-0.434431843368633,6.36\n",
     "          ,5.42199957741669,0.00169199974707228,6.22\n",
+    " 73    Dra,5.41206462628996,1.30820669269554,5.2\n",
+    " 27    Vul,5.40374074831891,0.461848057035377,5.59\n",
+    "   Ups Pav,5.49154423530385,-1.13863825959067,5.15\n",
+    "  6Bet Del,5.44173522357386,0.254735652465383,3.63\n",
+    "  5Iot Del,5.46335045507933,0.198579683782466,5.43\n",
+    " 71    Aql,5.42904802247282,-0.0156158486685382,4.32\n",
     " 48    Cyg,5.44012415041817,0.55104407808591,6.32\n",
     "          ,5.47073454037623,0.318857109928931,6.25\n",
     "          ,5.44119819918863,0.55016171718629,6.49\n",
+    "          ,5.42911515052098,0.668960461605371,6.2\n",
+    " 14Tau Cap,5.42817535784683,-0.227683049059471,5.22\n",
     "          ,5.42387916276499,-0.0277022537385989,6.22\n",
+    " 29    Vul,5.44381619306662,0.370029193970042,4.82\n",
+    "  8The Del,5.46073246120134,0.232390589903045,5.72\n",
+    "          ,5.43710338825126,-0.568419800416876,5.47\n",
+    " 28    Vul,5.44462172964446,0.420905541665677,5.04\n",
+    "          ,5.4489179247263,0.413303663145879,5.91\n",
+    "  7Kap Del,5.4166293335644,0.176035847610873,5.05\n",
+    "  1    Aqr,5.43958712603294,0.00848908755622797,5.16\n",
     "          ,5.42622864445037,-0.387918818802984,6.37\n",
+    "          ,5.4128701628678,0.276426216558224,5.97\n",
+    " 15Ups Cap,5.41454836407164,-0.311740045090243,5.1\n",
+    " 75    Dra,5.37776219368345,1.42109555834189,5.46\n",
     "          ,5.45885287585303,-0.442528231843162,6.51\n",
+    "          ,5.420388504261,0.380782361417052,6.08\n",
+    "          ,5.48167641222527,0.529435932318858,5.68\n",
+    "          ,5.45415391248228,-0.277085563164533,5.8\n",
+    "  9Alp Del,5.45757744293811,0.277715820949975,3.77\n",
     "          ,5.47570201593959,0.196344692712551,6.42\n",
+    " 74    Dra,5.39944455323707,1.41531173112626,5.96\n",
+    "          ,5.44670269913723,-0.530609181427143,5.76\n",
     "          ,5.44723972352246,-0.453785605518526,6.28\n",
+    "          ,5.45086463812275,0.708244914185677,6.06\n",
     "          ,5.43717051629941,0.797038539880888,6.58\n",
+    "   Bet Pav,5.50517122907904,-1.14837331830735,3.42\n",
     "          ,5.4712044367133,0.347936234521881,6.45\n",
     "          ,5.49040305848524,-0.670928805150676,6.29\n",
     "          ,5.40642587024505,0.977471647579424,6.48\n",
+    "          ,5.45912138804565,0.520200231693721,6.08\n",
+    " 10    Del,5.43663349191418,0.254522334445695,5.99\n",
+    "          ,5.41468262016795,0.75849585223268,5.95\n",
+    "   Eta Ind,5.43106186391743,-0.874041496851516,4.51\n",
+    " 49    Cyg,5.4183746628164,0.563867399951257,5.51\n",
     "          ,5.41542102869764,0.682113456773873,6.51\n",
     "          ,5.49302105236323,0.305805925633462,6.22\n",
+    " 50Alp Cyg,5.44965633325599,0.790289933439843,1.25\n",
+    "          ,5.43455252242142,1.05601631205598,6.01\n",
+    "          ,5.49073869872601,0.728098034427112,5.67\n",
     "          ,5.4490521808226,0.618825878841834,6.66\n",
+    " 11Del Del,5.46053107705688,0.263098688464523,4.43\n",
+    " 51    Cyg,5.43616359557711,0.878598745453945,5.39\n",
+    "          ,5.3666860657381,1.45954128325388,6.19\n",
     "          ,5.45005910154491,-0.466924056276594,6.5\n",
     "          ,5.45610062587873,0.621123895690293,6.47\n",
+    "          ,5.4636860953201,-0.677202294184233,5.5\n",
+    "   Sig Pav,5.47409094278391,-1.17327334896913,5.41\n",
     "          ,5.46167225387549,-0.626219287478754,6.49\n",
+    " 16Psi Cap,5.44435321745185,-0.431605379607764,4.14\n",
+    " 17    Cap,5.45012622959306,-0.357545241681472,5.93\n",
+    "          ,5.47254699767637,1.05769376739262,6.15\n",
+    " 30    Vul,5.49845842426367,0.441054398252589,4.91\n",
     "          ,5.44173522357386,0.996830257866128,6.32\n",
     "          ,5.470197515991,0.315734909822585,6.38\n",
+    " 52    Cyg,5.48563696706633,0.536160298075847,4.22\n",
+    "   Iot Mic,5.48463004634403,-0.733237059446873,5.11\n",
+    "          ,5.45751031488996,0.985902557493919,5.78\n",
+    "  4    Cep,5.43837882116618,1.16339284614812,5.58\n",
     "          ,5.44589716255938,-0.0264126493468475,6.27\n",
+    " 12Gam1Del,5.48865772923324,0.281424645610463,5.14\n",
+    " 12Gam2Del,5.4897317780037,0.281419797473652,4.27\n",
+    " 53Eps Cyg,5.45375114419336,0.592893195039285,2.46\n",
+    "  2Eps Aqr,5.49557191819307,-0.148425708471684,3.77\n",
+    "  3    Aqr,5.50040513766013,-0.0867816489186069,4.42\n",
+    "   Zet Ind,5.4887248572814,-0.798890528142727,4.89\n",
+    " 13    Del,5.50590963760873,0.104865199223993,5.58\n",
     "          ,5.50523835712719,0.0577122205992792,6.4\n",
+    "          ,5.46066533315318,1.00495573516152,4.51\n",
+    "          ,5.45556360149351,0.599942385962618,4.92\n",
+    "  3Eta Cep,5.45569785758981,1.07929221688605,3.43\n",
     "          ,5.48838921704063,0.812130789773828,6.3\n",
     "          ,5.50993732049794,-1.07461376486334,6.28\n",
     "          ,5.51060860097948,-1.07461376486334,6.59\n",
+    "          ,5.47341966230237,-0.422694504148971,5.86\n",
     "          ,5.46516291237947,0.924942085231206,6.33\n",
+    " 54Lam Cyg,5.4739566866876,0.636885188463164,4.53\n",
     "          ,5.47731308909528,-0.313533855710348,6.21\n",
+    "   Alp Mic,5.52779338130681,-0.562349933129384,4.9\n",
     "          ,5.46898921112423,0.795516224922204,6.4\n",
     "          ,5.47241274158007,1.21740109022372,6.41\n",
+    "   Iot Ind,5.49892832060075,-0.879500498900809,5.05\n",
+    "          ,5.5072521985718,0.834824918186566,5.57\n",
     "          ,5.517388533843,-0.557555125823211,6.36\n",
+    "          ,5.45945702828642,-0.62983114940302,5.52\n",
     "          ,5.51195116194255,0.914678579602117,6.27\n",
+    " 15    Del,5.50053939375644,0.2189564027995,5.98\n",
     " 14    Del,5.5146362838687,0.137255601258921,6.33\n",
     "          ,5.52913594226988,0.0967736588862745,6.21\n",
+    "          ,5.51027296073871,-0.19992746581595,5.88\n",
+    " 55    Cyg,5.52101344844329,0.804844040146752,4.84\n",
     "          ,5.50275461934551,0.906010110983879,6.29\n",
+    "   Bet Mic,5.53745982024093,-0.57286554187265,6.04\n",
+    " 18Ome Cap,5.52470549109174,-0.437743120810611,4.11\n",
     "          ,5.50382866811596,0.315056170669032,6.52\n",
+    "  4    Aqr,5.49302105236323,-0.0763339140906964,5.99\n",
     "          ,5.52322867403236,0.814390021527798,6.33\n",
+    " 56    Cyg,5.46073246120134,0.768982372155079,5.04\n",
+    "  5    Aqr,5.47456083912098,-0.0784186129194674,5.55\n",
+    "   Bet Ind,5.53685566780755,-1.00436426247057,3.65\n",
+    "          ,5.52121483258775,-0.666541241336635,5.35\n",
+    "          ,5.49637745477091,0.49306520996202,5.77\n",
     "          ,5.46885495502792,-0.387758830288218,6.33\n",
+    "  6Mu  Aqr,5.5155089484947,-0.122463935848269,4.73\n",
     "          ,5.50080790594905,-0.511056645667995,6.35\n",
     "          ,5.51859683870976,-0.859962507552095,6.24\n",
     "          ,5.47315115010976,1.11774763807166,6.45\n",
     "          ,5.47476222326544,-0.181974815204464,6.38\n",
+    " 31    Vul,5.47321827815791,0.472930897785541,4.59\n",
     "          ,5.46328332703117,0.573326114869704,6.44\n",
     "          ,5.48073661955112,-0.455084906183899,6.41\n",
     "          ,5.54564944211567,-0.0891911729137213,6.44\n",
     "          ,5.47717883299897,0.517480426942696,6.34\n",
+    " 19    Cap,5.5359158751334,-0.280595614215766,5.78\n",
+    " 57    Cyg,5.48711378412571,0.774703173592172,4.78\n",
+    " 76    Dra,5.46650547334255,1.44043962421816,5.75\n",
+    "          ,5.49221551578539,0.788573693008716,5.45\n",
     "          ,5.50268749129735,0.740198983907606,6.66\n",
+    "          ,5.53960791778185,0.583599316772415,5.47\n",
     "          ,5.4868452719331,-0.0109373966458311,6.55\n",
     "          ,5.50168057057505,0.49780183962646,6.56\n",
+    " 32    Vul,5.51671725336146,0.489695754878309,5.01\n",
     "          ,5.50154631447874,0.710402335066614,6.7\n",
+    "          ,5.53061275932926,0.0791118964834541,6.05\n",
+    " 17    Del,5.52524251547697,0.239483414057677,5.17\n",
+    " 16    Del,5.52779338130681,0.219363646291632,5.58\n",
+    "          ,5.54383698481553,-0.448612643541087,5.7\n",
     "          ,5.50490271688642,-0.0425617930646062,6.57\n",
+    "  7    Aqr,5.55283214326811,-0.144905961146829,5.51\n",
+    "          ,5.48590547925895,1.40590149757592,5.39\n",
+    "          ,5.49892832060075,0.00809154033771816,6.05\n",
+    "          ,5.53920514949293,-0.278699992722628,5.87\n",
     "          ,5.53987642997446,-1.18316354806377,6.37\n",
+    "          ,5.54283006409322,0.827596346201222,5.67\n",
+    "   Alp Oct,5.5729705577142,-1.34348658426988,5.15\n",
     "          ,5.49765288768583,0.891426915456104,6.63\n",
+    "          ,5.52692071668081,0.784089166458452,5.96\n",
+    "          ,5.54531380187491,-0.235920033501522,6.01\n",
+    "          ,5.51456915582054,0.885381288852668,5.81\n",
+    "          ,5.51510618020577,0.858629269929044,5.9\n",
+    "          ,5.5266522044882,-0.885487947862512,5.76\n",
+    " 58Nu  Cyg,5.49865980840814,0.718503571677954,3.94\n",
     "          ,5.50315738763443,0.992874178228274,6.23\n",
+    " 18    Del,5.52383282646575,0.189179146505752,5.48\n",
+    "          ,5.57357471014758,-0.626054450827177,6.11\n",
+    " 33    Vul,5.51107849731656,0.389659299918167,5.31\n",
     " 20    Cap,5.54189027141907,-0.330996844503913,6.25\n",
+    "  1Eps Equ,5.49933108888967,0.074937650689101,5.23\n",
+    "          ,5.51524043630208,0.776177007182745,5.55\n",
+    "          ,5.5304113751848,0.731995936423233,6.16\n",
     "          ,5.56162591757624,0.293637102237613,6.66\n",
+    "          ,5.50302313153812,0.131185733971429,5.99\n",
+    "   Gam Mic,5.52564528376589,-0.554006289677489,4.67\n",
+    "          ,5.52947158251065,0.880731925650827,5.61\n",
     " 11    Aqr,5.54316570433399,-0.0570674184034035,6.21\n",
     "          ,5.52343005817682,-0.750457641399884,6.64\n",
+    "          ,5.53108265566634,1.32515093085032,6.05\n",
+    "          ,5.53497608245925,0.337362448136882,5.65\n",
+    "          ,5.56296847853931,-0.438407315553731,6.05\n",
+    "          ,5.54303144823768,-0.653965174448653,5.94\n",
+    " 59    Cyg,5.56001484442055,0.82939985309495,4.74\n",
+    "   Zet Mic,5.58438232590032,-0.652200452649414,5.3\n",
+    "          ,5.5275248691142,1.03739946670137,5.51\n",
     "          ,5.52457123499544,-0.458464057541233,6.25\n",
+    "          ,5.51946950333576,0.628774255578202,5.97\n",
     "          ,5.5970023989532,-1.3227414068552,6.58\n",
+    " 60    Cyg,5.51678438140962,0.805571260668416,5.37\n",
     "          ,5.58653042344123,0.0161394474441365,6.5\n",
+    "   Mu  Ind,5.5386681251077,-0.92978537390549,5.16\n",
     "          ,5.51490479606131,0.0267374745131909,6.25\n",
     "          ,5.51329372290563,0.257086998818765,6.31\n",
     " 12    Aqr,5.52141621673222,-0.0728965850916298,7.31\n",
+    " 12    Aqr,5.52155047282852,-0.0729014332284409,5.89\n",
+    " 22Eta Cap,5.54786466770474,-0.316689992774371,4.84\n",
+    "          ,5.56699616142853,-1.27106996472255,5.68\n",
+    "          ,5.53886950925216,0.781752364515504,6.19\n",
+    "          ,5.51732140579484,0.674700655589708,6.07\n",
     "          ,5.57162799675113,0.800214069492156,6.48\n",
+    "          ,5.51873109480607,0.989073238968375,5.83\n",
+    "  3    Equ,5.5618273017207,0.0960415902277991,5.61\n",
     "          ,5.57122522846221,0.051346616966311,6.42\n",
     "          ,5.57619270402558,0.0396141258834602,6.33\n",
+    "   Eta Mic,5.5582023871204,-0.708846083150252,5.53\n",
+    "   Del Mic,5.52557815571774,-0.521417114033306,5.68\n",
     "          ,5.58082453934818,0.726546630647562,6.33\n",
     "          ,5.54578369821198,0.878807215336823,6.37\n",
+    "          ,5.57686398450711,-1.08334525926012,5.76\n",
     "          ,5.56901000287314,0.817895224442221,6.32\n",
+    " 23The Cap,5.59586122213459,-0.292643234191338,4.07\n",
+    "          ,5.55712833834995,-0.552542152360538,5.18\n",
+    "  4    Equ,5.5554501371461,0.103992534597995,5.94\n",
+    "          ,5.57478301501435,0.930018084472423,5.9\n",
+    " 62Xi  Cyg,5.59028959413784,0.76668435530662,3.72\n",
+    " 24    Cap,5.5386681251077,-0.436230502125549,4.5\n",
+    "          ,5.57357471014758,-1.24713956142298,6.2\n",
+    "          ,5.55551726519426,0.469920204825851,6.12\n",
+    "          ,5.58820862464508,-0.288759876605651,6.17\n",
+    "          ,5.56464667974315,0.544276079097621,5.82\n",
+    " 61    Cyg,5.59727091114581,0.676242363095636,5.21\n",
+    " 61    Cyg,5.59821070381996,0.676198729864336,6.03\n",
+    " 25Chi Cap,5.57780377718126,-0.363139991561476,5.3\n",
     "          ,5.57344045405128,0.273294320178257,6.34\n",
+    " 63    Cyg,5.57243353332897,0.831620299754431,4.55\n",
+    "          ,5.57055394798067,0.121988818440781,6.15\n",
     " 27    Cap,5.58136156373341,-0.339355032366242,6.25\n",
+    "   Omi Pav,5.58203284421494,-1.21952457414698,5.02\n",
+    " 13Nu  Aqr,5.5849864783337,-0.185499410666131,4.51\n",
+    "          ,5.58491935028555,0.52719124497532,5.59\n",
     "          ,5.61532835609914,0.0513708576503664,6.45\n",
     "          ,5.6043864842501,-0.150903106382154,6.27\n",
+    "  5Gam Equ,5.56894287482498,0.176830942047892,4.69\n",
+    "  6    Equ,5.58330827712986,0.175386197278186,6.07\n",
+    "          ,5.55524875300164,1.24672262165723,5.87\n",
+    "          ,5.56840585043976,-0.693429008090969,5.83\n",
     "          ,5.58438232590032,0.391908835398516,6.68\n",
     "          ,5.60123146598688,-0.236104262700344,6.48\n",
     "          ,5.61573112438806,0.79416844288872,6.63\n",
+    "          ,5.55867228345748,-0.673255910820002,5.26\n",
     "          ,5.55101968596797,0.633539974063508,6.54\n",
+    "          ,5.56236432610593,0.934856525009896,5.73\n",
     "          ,5.58303976493725,0.832381457233773,6.46\n",
+    "          ,5.57988474667402,-0.620920273944227,5.96\n",
     "          ,5.57585706378481,1.10471584632343,6.54\n",
+    "          ,5.57773664913311,-0.460427552949726,5.42\n",
     "          ,5.59794219162735,-1.3029464642555,6.63\n",
+    "          ,5.55894079565009,1.36356271880463,5.91\n",
     "          ,5.58001900277033,1.19538085282773,7.33\n",
+    "          ,5.62486053893696,-0.920433317996887,5.75\n",
+    " 64Zet Cyg,5.62559894746665,0.527559703372964,3.2\n",
     "          ,5.59317610020844,0.278947247699994,6.27\n",
     "          ,5.58297263688909,-0.689293547391105,6.21\n",
     "          ,5.58129443568525,-0.163968835088056,6.77\n",
+    "          ,5.61049513663208,1.04695999249285,5.64\n",
+    "          ,5.58981969780076,0.639377130784067,6.05\n",
     "          ,5.60854842323563,0.00160958142128366,6.38\n",
+    "          ,5.5720978930882,-0.290684586919656,6.04\n",
+    "  7Del Equ,5.59767367943474,0.17465412861971,4.49\n",
+    "          ,5.62606884380372,-0.624638794878337,6.12\n",
     "          ,5.5767297284108,-1.10511339354194,6.31\n",
+    "          ,5.57270204552159,0.521872838893549,6.17\n",
+    " 28Phi Cap,5.61412005123237,-0.337692121440036,5.24\n",
+    " 29    Cap,5.62351797797388,-0.258808087386704,5.28\n",
     "          ,5.64305223998659,-1.45193940473408,6.45\n",
+    " 65Tau Cyg,5.62264531334789,0.664020210194865,3.72\n",
+    "  8Alp Equ,5.62955950230771,0.0915910006352135,3.92\n",
     "          ,5.62076572799958,-0.00684556917726665,6.48\n",
     "          ,5.61170344149884,1.1240599121997,6.39\n",
     "          ,5.59008820999338,-0.222025273400923,6.4\n",
+    "   Eps Mic,5.64754981921288,-0.555494667678495,4.71\n",
     "          ,5.612643234173,0.837297467960224,6.46\n",
+    " 30    Cap,5.64889238017595,-0.279509631570081,5.43\n",
     "          ,5.60734011836886,0.73742584965166,6.43\n",
     " 31    Cap,5.59740516724212,-0.288638673185373,7.05\n",
+    "   The Ind,5.65050345333164,-0.917175370059831,4.39\n",
+    " 15    Aqr,5.59122938681199,-0.0607471542430249,5.82\n",
     "          ,5.64936227651303,-0.475330725507033,6.4\n",
+    " 67Sig Cyg,5.60552766106871,0.687567610686355,4.23\n",
+    "          ,5.60311105133518,0.744964702392913,6.19\n",
+    "          ,5.59780793553104,-0.785010312452561,6\n",
+    " 66Ups Cyg,5.64593874605719,0.609066579441099,4.43\n",
+    "          ,5.57464875891804,0.942434162845638,6.13\n",
     "          ,5.64217957536059,-0.447623623631624,6.56\n",
+    "          ,5.64614013020166,0.195535053865098,5.96\n",
+    "          ,5.59116225876384,0.973859785655158,5.98\n",
+    "   The1Mic,5.64627438629796,-0.683999381993389,4.82\n",
     "          ,5.61143492930623,-0.838844023602964,6.38\n",
     "          ,5.59720378309766,1.02296656341474,6.42\n",
+    " 68    Cyg,5.61284461831746,0.766999484199342,5\n",
+    "          ,5.6505705813798,0.716297669428906,6.15\n",
     "          ,5.62492766698511,-1.19146355828436,6.41\n",
+    "          ,5.61049513663208,0.667370272731332,5.83\n",
     "          ,5.60384945986487,0.384433008435807,6.29\n",
+    "          ,5.6311705754634,-1.22523083117364,6.09\n",
+    " 16    Aqr,5.59518994165305,-0.0600393262686049,5.87\n",
+    "          ,5.61935603898836,0.864117360799204,5.76\n",
+    "  5Alp Cep,5.62304808163681,1.09232400863427,2.44\n",
+    "  9    Equ,5.59586122213459,0.128359270210561,5.82\n",
+    "          ,5.60190274646842,1.02317503329762,5.66\n",
+    "          ,5.59532419774936,0.416362837473681,5.57\n",
+    "          ,5.65231591063179,0.566407823640271,5.68\n",
+    " 32Iot Cap,5.6136501548953,-0.264688877338562,4.28\n",
+    "          ,5.61989306337359,1.34411684205532,5.95\n",
+    "          ,5.61895327069944,0.569200350443462,6.04\n",
     "          ,5.59129651486014,0.704162782990734,6.4\n",
+    "  6    Cep,5.61049513663208,1.1322290227264,5.18\n",
+    "          ,5.59881485625335,-0.372298121997635,5.6\n",
+    "  1    Peg,5.6007615696498,0.345652762083855,4.08\n",
+    "          ,5.58337540517801,1.41774549580543,6.15\n",
+    " 17    Aqr,5.66936643486281,-0.15150427534673,5.99\n",
     "          ,5.71481212346282,-1.41924841821687,6.38\n",
     "          ,5.63043216693371,-0.792117681017626,6.31\n",
+    " 10Bet Equ,5.66574152026252,0.118876314608058,5.16\n",
+    "          ,5.63002939864479,1.06040872400683,6.11\n",
+    "   The2Mic,5.635802410786,-0.715468638034209,5.77\n",
+    "   Gam Pav,5.6469456667795,-1.12807416947929,4.22\n",
+    "          ,5.65003355699457,0.52900444814267,6.05\n",
+    " 33    Cap,5.61539548414729,-0.334196614799236,5.41\n",
     "          ,5.61311313051007,-0.370935795553717,6.38\n",
+    "          ,5.59431727702705,0.861998725012755,5.69\n",
     "          ,5.65674636180993,0.674293412097576,6.63\n",
+    " 18    Aqr,5.61794634997713,-0.194114549779447,5.49\n",
+    "   Gam Ind,5.63190898399309,-0.930948926740153,6.12\n",
     "          ,5.62902247792248,0.652869495529346,6.58\n",
+    "          ,5.67708616040048,0.42366413151119,5.71\n",
     "          ,5.63553389859338,0.17757270697999,6.35\n",
     " 20    Aqr,5.67191730069265,-0.0454076493727191,6.36\n",
     "          ,5.66298927028822,0.651904716303938,6.47\n",
+    "          ,5.61244185002854,0.441781618774254,6.15\n",
+    " 19    Aqr,5.62445777064803,-0.144013903973588,5.7\n",
+    "          ,5.6802411786637,-1.1954584230167,5.34\n",
     "          ,5.63352005714877,0.428109872966965,6.32\n",
+    "          ,5.64815397164627,0.456830235435894,5.68\n",
+    " 21    Aqr,5.62969375840402,-0.0426442113903948,5.49\n",
+    "          ,5.64197819121613,-0.631295286719971,5.63\n",
     "          ,5.66943356291097,-1.3955798143051,6.47\n",
+    "          ,5.61774496583267,-0.723477760046138,5.51\n",
     "          ,5.67601211163002,0.00932781522454747,6.46\n",
+    " 34Zet Cap,5.66493598368467,-0.37679234482152,3.74\n",
+    "          ,5.64895950822411,0.0192567994136708,6.13\n",
     "          ,5.67701903235232,0.860854564725337,6.58\n",
+    " 35    Cap,5.63546677054523,-0.363096358330176,5.78\n",
+    "          ,5.63318441690801,0.815320863795529,5.6\n",
+    " 69    Cyg,5.66997058729619,0.639968603475021,5.94\n",
+    "          ,5.64707992287581,0.338167238847524,6.07\n",
     "          ,5.62472628284065,-0.912705387920001,6.39\n",
     "          ,5.63862178880845,-0.182066929803875,6.61\n",
+    " 36    Cap,5.67822733721909,-0.352430457345766,4.51\n",
     "  5    PsA,5.6294252462114,-0.536887518597511,6.5\n",
+    " 70    Cyg,5.64432767290151,0.647808040698562,5.31\n",
+    "          ,5.68050969085631,0.852331540211431,5.31\n",
+    " 35    Vul,5.66943356291097,0.481861165791579,5.41\n",
+    "          ,5.67164878850003,0.923254933620945,6.03\n",
     "          ,5.65325570330594,0.143039428474558,6.4\n",
+    "          ,5.63110344741524,0.562437199591984,5.8\n",
     "          ,5.70037959310979,0.312515746980018,6.44\n",
     "          ,5.70434014795085,-0.32903334909542,6.57\n",
+    "          ,5.70037959310979,0.38710433181872,5.93\n",
+    "          ,5.64956366065749,1.04283422806661,6.1\n",
+    "  2    Peg,5.70071523335055,0.412576442624215,4.57\n",
+    "          ,5.69071315417566,0.967237230771202,6.12\n",
+    "  7    Cep,5.6774889286894,1.16603992884698,5.44\n",
+    " 71    Cyg,5.66057266055469,0.812285930151783,5.24\n",
+    "   Xi  Gru,5.64533459362381,-0.712457945074519,5.29\n",
+    "  6    PsA,5.65701487400254,-0.559470139863594,5.97\n",
+    "          ,5.64593874605719,0.211839337960812,6.08\n",
+    " 22Bet Aqr,5.67802595307463,-0.0772986933161044,2.91\n",
     "          ,5.66554013611805,-0.894699407803593,6.41\n",
+    "          ,5.73904534884628,-1.37108702713545,6.18\n",
     "          ,5.682120764012,-0.40857188161825,6.43\n",
+    "          ,5.67332698970388,-0.753133812919609,5.57\n",
+    "          ,5.65607508132839,0.924292434898519,6.02\n",
+    "  8Bet Cep,5.67312560555941,1.23151886461763,3.23\n",
+    "          ,5.6692321787665,1.40542153203162,5.97\n",
     "          ,5.67379688604095,0.408310082230451,6.7\n",
     "          ,5.66896366657389,-0.716893990256671,6.32\n",
+    "          ,5.66997058729619,0.918392252399416,6.16\n",
+    "          ,5.70830070279192,1.05521636948215,5.53\n",
     "          ,5.7172958612445,-0.493996052229751,6.41\n",
+    " 37    Cap,5.71461073931836,-0.347592016808293,5.69\n",
+    "          ,5.71340243445159,0.872276775052277,5.75\n",
     "          ,5.6718501726445,-0.393499024272555,6.4\n",
     "          ,5.66580864831067,0.800306184091567,6.25\n",
+    "          ,5.66748684951451,-1.10262629935785,6.2\n",
     "          ,5.69178720294612,0.397144823154499,6.47\n",
+    "          ,5.67413252628172,-0.0352023213853634,5.77\n",
+    " 73Rho Cyg,5.72085364779664,0.795729542941892,4.02\n",
+    "  8    PsA,5.66963494705543,-0.45079430510608,5.73\n",
+    "   Nu  Oct,5.71494637955912,-1.33709673995286,3.76\n",
+    " 72    Cyg,5.70870347108084,0.672548082845582,4.9\n",
+    "  7    PsA,5.72051800755588,-0.575119925489809,6.11\n",
     "          ,5.67601211163002,0.49213436769429,6.31\n",
+    "          ,5.6867525993346,0.426771787207102,6.11\n",
+    "          ,5.68306055668615,0.902306134460202,6.15\n",
+    " 39Eps Cap,5.66567439221436,-0.323477384309905,4.68\n",
     "          ,5.67352837384834,0.524568402960518,6.36\n",
+    "          ,5.658088922773,0.791938299955616,5.53\n",
     "          ,5.70460866014347,0.00681163221958898,6.25\n",
+    " 23Xi  Aqr,5.71977959902619,-0.107265026945485,4.69\n",
+    "  3    Peg,5.71790001367788,0.115511707661158,6.18\n",
+    " 74    Cyg,5.73139275135676,0.705350576509453,5.01\n",
+    "  5    Peg,5.72018236731511,0.337173370801249,5.45\n",
     "          ,5.67614636772633,-0.564104958655001,6.28\n",
     "          ,5.74810763534702,-0.901302570140305,6.21\n",
+    "  4    Peg,5.70642111744361,0.100734586660939,5.67\n",
     "          ,5.71743011734081,-0.947059285363423,6.33\n",
+    "          ,5.69668755046134,0.780103997999732,6.2\n",
+    "          ,5.70568270891392,-0.164463345042788,6.08\n",
+    "          ,5.72400866605986,0.44503956671131,6.16\n",
+    "          ,5.71118720886252,0.943214712872224,6.15\n",
+    "          ,5.66943356291097,0.353695821053462,5.85\n",
+    " 25    Aqr,5.7126640259219,0.0391584010232172,5.1\n",
+    " 40Gam Cap,5.67970415427847,-0.267694722161441,3.68\n",
+    "  9    Cep,5.73333946475322,1.08353433659576,4.73\n",
+    "   Lam Oct,5.78885436057627,-1.41861816043142,5.29\n",
+    "          ,5.74092493419458,1.00337524256111,5.62\n",
     "          ,5.7385754525092,-0.43455304678891,6.49\n",
+    " 42    Cap,5.72085364779664,-0.243517063884509,5.18\n",
+    " 75    Cyg,5.68722249567168,0.755271841253302,5.11\n",
+    " 41    Cap,5.682120764012,-0.3968393905354,5.24\n",
+    "          ,5.73280244036799,-1.23902862853802,6.01\n",
+    " 26    Aqr,5.69460658096858,0.0224323290249382,5.67\n",
+    " 43Kap Cap,5.73407787328291,-0.299037926645173,4.73\n",
+    "  7    Peg,5.70185641016917,0.0991347015132779,5.3\n",
+    "          ,5.73045295868261,0.957700945663777,6.2\n",
+    " 76    Cyg,5.72273323314495,0.712186449413097,6.11\n",
+    "          ,5.72535122702294,0.188927043391575,6.09\n",
     "          ,5.70353461137301,-0.320776972106124,6.22\n",
     "          ,5.99433331597452,-1.52160713070952,6.57\n",
+    " 44    Cap,5.69131730660905,-0.23736962640804,5.88\n",
+    "          ,5.68252353230092,0.619771265519998,6.07\n",
+    "          ,5.69232422733135,0.798764476585638,6.17\n",
     "          ,5.72937890991215,-0.653582171640577,6.3\n",
+    " 77    Cyg,5.7117913612959,0.71693277535116,5.69\n",
+    " 80Pi 1Cyg,5.68869931273106,0.893429195959086,4.67\n",
+    " 45    Cap,5.69111592246459,-0.231265822162871,5.99\n",
     "          ,5.71964534292988,-0.846508927901305,6.45\n",
+    "          ,5.73327233670507,0.865688157125999,6.09\n",
+    "  9Iot PsA,5.76603082420404,-0.575507776434697,4.34\n",
+    "          ,5.69400242853519,0.718290253658266,5.49\n",
+    " 79    Cyg,5.71991385512249,0.668179911578785,5.65\n",
+    "  8Eps Peg,5.70481004428793,0.17235126363444,2.39\n",
+    " 78Mu 1Cyg,5.70131938578394,0.501656108391281,4.73\n",
+    " 78Mu 2Cyg,5.70091661749502,0.501660956528092,6.08\n",
+    " 46    Cap,5.69453945292042,-0.155639736046594,5.09\n",
+    "          ,5.74199898296504,1.03447604020428,6.08\n",
+    "  9    Peg,5.73098998306784,0.302814625221016,4.34\n",
+    "          ,5.73179551964569,0.25781906747724,5.94\n",
+    " 10Kap Peg,5.74173047077242,0.447589686673946,4.13\n",
+    "   Mu  Cep,5.72622389164893,1.02590453432227,4.08\n",
+    " 11    Cep,5.75092701336947,1.24461853028121,4.56\n",
+    " 47    Cap,5.72038375145957,-0.152265432826072,6\n",
+    " 48Lam Cap,5.74159621467612,-0.185601221539164,5.58\n",
     "          ,5.75388064748823,0.625826588397056,6.4\n",
+    " 12    Peg,5.70440727599901,0.400533670785454,5.29\n",
+    " 49Del Cap,5.70608547720285,-0.277032233659611,2.87\n",
+    "          ,5.728439117238,-0.815005734902808,5.58\n",
+    "          ,5.69078028222382,1.26222696317911,5.17\n",
     "          ,5.73072147087523,0.446164334451484,6.28\n",
+    " 10The PsA,5.76220452545928,-0.507919901151216,5.01\n",
+    "          ,5.76133186083328,1.09014234706928,5.95\n",
+    " 11    Peg,5.72165918437449,0.0468814829632921,5.64\n",
     "          ,5.72078651974849,0.751553320319192,6.54\n",
     "          ,5.70917336741791,0.300094820469992,6.21\n",
+    "          ,5.71608755637774,-1.10457525035591,5.62\n",
+    "          ,5.75401490358454,-0.0712579148494796,6.17\n",
+    "   Omi Ind,5.77918792164215,-1.19329130586215,5.53\n",
+    " 10Nu  Cep,5.73025157453815,1.06675978322937,4.29\n",
+    " 81Pi 2Cyg,5.76240590960374,0.860612157884782,4.23\n",
     "          ,5.71836991001496,0.638451136653148,6.47\n",
     "          ,5.76676923273372,-0.196819810120038,6.31\n",
+    "          ,5.74669794633579,0.674545515211753,6.12\n",
+    " 12    Cep,5.73683012325721,1.05928880440347,5.52\n",
     "          ,5.73354084889768,-0.264509496276552,6.38\n",
     "          ,5.7477048670581,0.35713799818934,6.29\n",
     "          ,5.70420589185454,1.22436301468446,6.29\n",
+    " 14    Peg,5.77965781797922,0.526638557378856,5.04\n",
+    " 13    Peg,5.72763358066016,0.301689857480842,5.29\n",
     "          ,5.76542667177065,0.718183594648422,6.48\n",
+    "          ,5.77643567166785,-0.303284894491692,6.16\n",
+    "          ,5.73709863544982,1.06941171406504,6.17\n",
+    "          ,5.7662322083485,0.346040613028742,5.77\n",
+    "          ,5.72689517213047,0.690045008596825,6.17\n",
     "          ,5.74911455606932,0.371284861404116,6.89\n",
+    " 51Mu  Cap,5.75294085481408,-0.217264403052427,5.08\n",
+    "          ,5.75320936700669,-1.04918043915234,5.9\n",
+    "   Gam Gru,5.80382391531453,-0.639401371468123,3.01\n",
+    " 15    Peg,5.76482251933727,0.502538469290901,5.53\n",
     "          ,5.777375464342,-0.169093315697384,6.59\n",
+    " 16    Peg,5.73414500133106,0.45247660857953,5.08\n",
+    "          ,5.72602250750447,0.973840393107914,5.71\n",
+    "          ,5.7792550496903,0.343277175046418,5.68\n",
+    "          ,5.80664329333698,0.119807156875789,6.15\n",
+    "          ,5.74736922681733,-0.0649941220895444,5.71\n",
     "          ,5.77039414733402,1.14760246455438,6.37\n",
+    "   Pi  Ind,5.76092909254436,-0.979139406642441,6.19\n",
+    "          ,5.78160453137568,-0.0471044972566025,6.2\n",
     "          ,5.75676715355883,0.344149839672415,6.39\n",
     "          ,5.81241630547819,-0.513015292939678,6.41\n",
+    "          ,5.7727436290194,-0.641345474329372,5.46\n",
+    "          ,5.74945019631009,-0.632735183352866,6.18\n",
+    "   Del Ind,5.82047167125663,-0.925155403250894,4.4\n",
+    "   Kap1Ind,5.7912709703098,-1.02953094065697,6.12\n",
     "          ,5.83389728088735,-1.33234071774117,6.41\n",
+    " 13    Cep,5.80483083603683,0.988055130238045,5.8\n",
     "          ,5.77435470217509,0.370703084986785,6.4\n",
+    " 17    Peg,5.81785367737864,0.210772747862371,5.54\n",
+    "          ,5.76556092786696,1.07410955863499,6.13\n",
+    "          ,5.77952356188291,1.14006361181313,5.86\n",
     "          ,5.76871594613018,-0.0798536614155517,6.33\n",
     "          ,5.74945019631009,0.849427506261585,6.42\n",
+    "          ,5.80966405550389,-0.363329068897108,6.12\n",
+    "          ,5.7792550496903,-0.656326217075657,5.5\n",
+    "          ,5.77777823263092,-1.32438007709735,5.95\n",
+    "          ,5.79194225079134,-0.94452370981122,6.01\n",
     "          ,5.82470073829031,-0.0633021223424721,6.22\n",
+    "          ,5.79462737271748,1.11047543285501,4.91\n",
     "          ,5.76139898888144,1.15464195920409,6.43\n",
+    " 18    Peg,5.77019276318956,0.117242492502719,6\n",
+    " 12Eta PsA,5.82698309192753,-0.480775183145894,5.42\n",
+    "   Eps Ind,5.80167581777361,-0.963664153941425,4.69\n",
+    "          ,5.82255264074939,1.09429235217958,5.93\n",
     "          ,5.78610211060197,1.00632775787906,6.59\n",
+    " 28    Aqr,5.77066265952664,0.0105592419745657,5.58\n",
     "          ,5.79556716539163,0.576065312167973,6.46\n",
+    " 20    Peg,5.77119968391186,0.228982349724845,5.6\n",
+    " 19    Peg,5.77630141557154,0.144115714846621,5.65\n",
     "          ,5.78428965330182,-0.280934983792543,6.28\n",
     "          ,5.81496717130803,1.30893876135401,6.35\n",
     " 29    Aqr,5.80402529945899,-0.262424797447781,6.37\n",
     "          ,5.77019276318956,0.191530492859133,6.37\n",
     "          ,5.79576854953609,-0.49036479775824,7.1\n",
     "          ,5.81234917743004,1.09062231261358,6.66\n",
+    " 16    Cep,5.77536162289739,1.27723194660945,5.03\n",
+    " 30    Aqr,5.79469450076563,-0.0956004097779894,5.54\n",
+    " 31Omi Aqr,5.79805090317332,-0.0321964765624843,4.69\n",
+    "          ,5.83188343944274,0.92296889354909,5.78\n",
+    " 21    Peg,5.79818515926962,0.19872997602361,5.8\n",
     " 13    PsA,5.80912703111867,-0.490146631601741,6.47\n",
+    " 14    Cep,5.77448895827139,1.01230066243033,5.56\n",
+    "          ,5.84443638444747,0.779289511015468,5.6\n",
+    "          ,5.8264460675423,-0.439430272420872,5.96\n",
+    "   Kap2Ind,5.84973950025161,-1.01864202537925,5.62\n",
+    " 32    Aqr,5.84067721375087,0.0158243185514153,5.3\n",
+    "   Lam Gru,5.7950301410064,-0.671195452675286,4.46\n",
     "          ,5.82322392123093,0.57494539256461,6.38\n",
+    " 22Nu  Peg,5.83617963452458,0.0882894194668576,4.84\n",
+    " 34Alp Aqr,5.84450351249563,0.00558020546957076,2.96\n",
+    "          ,5.79670834221024,0.465547185422243,5.78\n",
+    " 18    Cep,5.84369797591778,1.10164697572201,5.29\n",
+    " 17Xi  Cep,5.83631389062088,1.12796751046945,4.29\n",
+    " 33Iot Aqr,5.8209415675937,-0.211713286403723,4.27\n",
+    " 23    Peg,5.82799001264983,0.505515225292913,5.7\n",
     "          ,5.86027860381173,-1.29362834530457,6.55\n",
+    "          ,5.80342114702561,0.815849310707938,6.13\n",
     "          ,5.84933673196269,0.787356810669131,6.44\n",
     "          ,5.76791040955234,1.44634950299089,6.98\n",
+    "          ,5.78845159228735,0.785650266511625,5.14\n",
+    "   Alp Gru,5.81328897010419,-0.786076902551002,1.74\n",
+    " 20    Cep,5.78207442771275,1.09581466713826,5.27\n",
     "          ,5.85014226854053,0.841801387057732,6.27\n",
+    " 19    Cep,5.79335193980256,1.08699105814207,5.11\n",
+    "          ,5.8024142263033,0.789737245843379,6.19\n",
+    " 24Iot Peg,5.79106958616534,0.442353698917963,3.76\n",
+    " 14Mu  PsA,5.82537201877184,-0.541250841727497,4.5\n",
+    "          ,5.88182670726904,-1.32442371032865,6.15\n",
+    "   Ups PsA,5.82939970166106,-0.592645940061919,4.99\n",
     "          ,5.80389104336268,0.983371830078527,6.39\n",
+    "          ,5.82852703703506,0.339912568099518,5.75\n",
     "          ,5.83040662238337,0.314168961632602,6.35\n",
     "          ,5.85182046974437,-0.573767295319514,6.37\n",
+    " 25    Peg,5.85766060993374,0.37878492905088,5.78\n",
+    " 35    Aqr,5.87370421344246,-0.30508840138542,5.81\n",
     "          ,5.87672497560937,-0.835886660148195,6.43\n",
+    "          ,5.81758516518602,0.445820116737896,6.11\n",
     "          ,5.80301837873668,1.0269662762839,6.32\n",
+    "          ,5.82436509804954,0.930386542870066,6.14\n",
+    "          ,5.8736370853943,-0.593154994427084,5.37\n",
     "          ,5.81664537251187,0.869110941714632,6.42\n",
     "          ,5.80335401897745,-0.483587102496329,6.44\n",
+    " 15Tau PsA,5.81503429935618,-0.548935138573083,4.92\n",
+    "          ,5.84953811610715,0.798347536819884,6.11\n",
+    " 27Pi 1Peg,5.81711526884895,0.578964497981008,5.58\n",
+    " 26The Peg,5.81933049443802,0.10817162852916,3.53\n",
     "          ,5.83154779920198,-0.0367537251649139,6.27\n",
+    " 38    Aqr,5.85356579899637,-0.182125107445608,5.46\n",
+    "          ,5.848598323433,-0.0651492624674994,6.01\n",
+    " 29Pi 2Peg,5.87833604876506,0.579071156990852,4.29\n",
+    "          ,5.82872842117952,0.342380269736365,6.18\n",
     "          ,5.83302461626136,0.25534166956677,6.33\n",
+    "          ,5.8108052323225,-0.362461252407922,6.09\n",
+    "          ,5.85343154290006,0.202884829270719,5.78\n",
     " 28    Peg,5.84376510396594,0.366136140110733,6.46\n",
     "          ,5.87249590857569,0.53325141598919,6.32\n",
+    "          ,5.87645646341675,0.279960508293513,5.95\n",
+    " 39    Aqr,5.84658448198839,-0.240962095785062,6.03\n",
+    "          ,5.82087443954555,0.887034503505251,5.4\n",
+    "          ,5.88914366451779,-0.448064804081433,6.17\n",
+    " 21Zet Cep,5.87209314028677,1.01580101720794,3.35\n",
+    "          ,5.8226868968457,0.435459648372585,5.92\n",
     "          ,5.8707505793237,-0.0572322550549807,6.39\n",
+    " 24    Cep,5.86383639036387,1.26259057343994,4.79\n",
+    " 22Lam Cep,5.84879970757746,1.03697767879881,5.04\n",
+    "          ,5.87591943903152,-0.433176175934559,5.58\n",
+    "   Psi Oct,5.90156235342621,-1.3349732560296,5.51\n",
+    "          ,5.87310006100907,0.992035450559955,5.24\n",
     "          ,5.82376094561616,1.25857631616036,6.37\n",
+    "          ,5.85544538434467,1.22404788579173,5.5\n",
+    "          ,5.87612082317599,0.603966339515827,5.33\n",
     "          ,5.88397480480996,1.03122294040404,6.3\n",
     "          ,5.87249590857569,-0.70892365333923,6.23\n",
+    " 16Lam PsA,5.84591320150685,-0.457853192303035,5.43\n",
+    "          ,5.81449727497095,1.06045235723813,5.35\n",
+    " 41    Aqr,5.84483915273639,-0.365224690390247,5.32\n",
+    "   Eps Oct,5.84886683562561,-1.3885888010235,5.1\n",
+    "          ,5.8681325854457,0.499309610174711,5.89\n",
+    "          ,5.84188551861764,1.10464312427127,5.79\n",
+    "          ,5.87216026833492,-0.760056952285853,6.1\n",
+    "          ,5.88706269502503,0.693157512429548,4.49\n",
+    "   Mu 1Gru,5.87457687806845,-0.709534518577428,4.79\n",
+    "          ,5.88249798775058,0.793092156516657,5.53\n",
+    "   Mu 2Gru,5.86511182327879,-0.704633052261411,5.1\n",
+    "          ,5.88028276216151,0.74968678764692,5.71\n",
+    "          ,5.8827664999432,1.10239358879092,6.11\n",
     "          ,5.90532152412281,0.149215954771893,6.21\n",
+    "          ,5.87961148167997,-0.4206534385515,6.15\n",
+    "          ,5.88296788408766,1.27945239326893,6.08\n",
+    " 23Eps Cep,5.82772150045722,0.99559883111611,4.19\n",
+    "          ,5.8745097500203,-0.00704434278652156,6.15\n",
+    " 42    Aqr,5.89397688398485,-0.194929036763711,5.34\n",
+    "          ,5.9096848472528,-0.398982267005904,6.17\n",
+    "  1    Lac,5.9031734265819,0.658842400080615,4.13\n",
+    " 43The Aqr,5.89652774981469,-0.108501301832314,4.16\n",
+    "          ,5.90001840831868,-0.156381500978692,5.79\n",
+    "          ,5.85907029894496,-0.914067714363919,5.37\n",
+    "   Alp Tuc,5.87853743290952,-1.04266454327822,2.86\n",
     "          ,5.86927376226432,0.48527425410659,6.37\n",
+    " 44    Aqr,5.84248967105102,-0.0805081598850495,5.75\n",
+    "   Ups Oct,5.94506132862976,-1.46664865181895,5.77\n",
+    "          ,5.86497756718248,0.998682246127966,5.88\n",
     "          ,5.84389936006225,0.00415000511029763,6.39\n",
+    " 45    Aqr,5.84356371982148,-0.22156954854068,5.95\n",
     "          ,5.89545370104423,-0.985936494451597,6.34\n",
+    "          ,5.91357827404571,0.659201162204636,6.17\n",
+    " 25    Cep,5.85517687215205,1.09614434044142,5.75\n",
+    " 46Rho Aqr,5.86282946964157,-0.107841955226005,5.37\n",
+    " 30    Peg,5.88390767676181,0.10104486741685,5.37\n",
+    "          ,5.92176789592045,0.142884288096602,6.17\n",
+    "   Nu  Ind,5.91371253014202,-1.25217677556971,5.29\n",
+    " 47    Aqr,5.89901148759637,-0.35607625622771,5.13\n",
     "          ,5.8513505734073,0.470109282161484,6.47\n",
+    " 48Gam Aqr,5.90411321925605,-0.0106949898052764,3.84\n",
     "          ,5.90001840831868,0.889783397077142,6.42\n",
+    " 31    Peg,5.89296996326255,0.213022283342719,5.01\n",
     "   Pi 1Gru,5.91451806671986,-0.768856320597991,6.62\n",
+    " 32    Peg,5.87712774389829,0.494461473363616,4.81\n",
+    "  2    Lac,5.85336441485191,0.812218056236428,4.57\n",
+    "   Pi 2Gru,5.87068345127554,-0.769190842037957,5.62\n",
     "          ,5.86551459156771,1.33496840789279,6.66\n",
+    "          ,5.93714021894763,-1.30872544333433,6.04\n",
+    "          ,5.8827664999432,-1.21419647179159,5.78\n",
     "          ,5.91955267033138,0.734405460418347,6.41\n",
+    " 49    Aqr,5.9014280973299,-0.405570884932182,5.53\n",
+    "          ,5.90303917048559,-0.118779351871836,5.93\n",
+    "          ,5.94002672501824,-0.980923520988924,5.32\n",
+    " 33    Peg,5.91310837770863,0.363872060219951,6.04\n",
+    " 51    Aqr,5.87356995734615,-0.0552057338679429,5.78\n",
+    " 50    Aqr,5.90068968880021,-0.217652253997315,5.76\n",
+    "          ,5.86021147576358,0.999802165731329,6.16\n",
     "          ,5.93270976776949,0.673236518272757,6.22\n",
+    "          ,5.86021147576358,1.08943451909486,6.04\n",
+    "  3Bet Lac,5.9050530119302,0.911570923906205,4.43\n",
+    " 52Pi  Aqr,5.89095612181794,0.0240419104462219,4.66\n",
+    "   Del Tuc,5.90424747535236,-1.10014405331057,4.48\n",
+    "  4    Lac,5.9059256765562,0.86352588810825,4.57\n",
     "          ,5.88739833526579,-0.389513855813834,6.29\n",
     "          ,5.92331184102799,0.321916284256732,6.26\n",
     " 53    Aqr,5.918948517898,-0.266313003170279,6.57\n",
     " 53    Aqr,5.91921703009061,-0.266293610623035,6.35\n",
+    "          ,5.83054087847967,1.50286908193464,5.27\n",
+    "          ,5.93237412752873,-1.16083302991186,5.55\n",
+    " 34    Peg,5.92324471297983,0.0766829799410953,5.75\n",
     "          ,5.93438796897333,0.653519145862032,6.46\n",
     "          ,5.91539073134586,1.3656037844021,6.76\n",
+    " 35    Peg,5.94653814568914,0.081952904654756,4.79\n",
+    "   Nu  Gru,5.93438796897333,-0.678375543292518,5.47\n",
+    "          ,5.91297412161233,0.694810727082131,6.14\n",
     "          ,5.95251254197481,0.984947474542133,6.57\n",
+    "          ,5.93942257258486,0.555717681971806,5.98\n",
+    "   Del1Gru,5.90787238995265,-0.741842502286568,3.97\n",
+    "          ,5.87410698173138,1.23518405604682,5.47\n",
+    " 55Zet1Aqr,5.9484848590856,0.000353913987209961,4.59\n",
+    " 55Zet2Aqr,5.94902188347083,0.000349065850398866,4.42\n",
+    "   Del2Gru,5.94720942617068,-0.737411305241226,4.11\n",
+    " 26    Cep,5.88451182919519,1.1367717269184,5.46\n",
+    " 36    Peg,5.89686339005546,0.159329168159838,5.58\n",
+    "          ,5.94788070665221,-0.469367517229386,5.95\n",
+    "          ,5.89981702417422,0.467103437338605,5.79\n",
     "          ,5.89250006692547,-0.193469747583571,6.4\n",
+    " 37    Peg,5.96399143820909,0.0773471746842154,5.48\n",
     " 56    Aqr,5.91384678623832,-0.234121374744606,6.37\n",
     "          ,5.90820803019342,1.11850394741419,6.29\n",
     "          ,5.94506132862976,0.623528571548597,6.56\n",
     "   Zet PsA,5.96258174919786,-0.452500849263585,6.43\n",
+    " 27Del Cep,5.89995128027052,1.0195389306893,3.75\n",
+    "  5    Lac,5.92881634097658,0.832643256621573,4.36\n",
+    " 57Sig Aqr,5.94257759084808,-0.162698623243549,4.82\n",
+    " 38    Peg,5.89290283521439,0.568497370605853,5.65\n",
     "          ,5.89921287174083,0.861426644869046,6.4\n",
+    " 17Bet PsA,5.93552914579195,-0.552464582171561,4.29\n",
+    "          ,5.94774645055591,-1.34788869249435,6.15\n",
+    " 28Rho1Cep,5.9300917738915,1.37507219559417,5.83\n",
+    "  6    Lac,5.92982326169889,0.752644151101688,4.51\n",
+    "          ,5.91955267033138,-0.0190046962994938,6.16\n",
+    "          ,5.91955267033138,-0.0950331777710912,6.14\n",
+    "   Nu  Tuc,5.90371045096713,-1.04750783195251,4.81\n",
     " 58    Aqr,5.95029731638574,-0.158727999195262,6.38\n",
     "          ,5.94076513354793,0.515618742407236,6.35\n",
+    "  7Alp Lac,5.91834436546462,0.877595181134049,3.77\n",
     " 39    Peg,5.94687378592991,0.353080107678453,6.42\n",
     "          ,5.96217898090894,0.276867397008034,6.32\n",
+    "          ,5.93465648116595,0.694287128306533,5.88\n",
     "          ,5.9244530178466,0.943132294546436,6.35\n",
+    " 60    Aqr,5.91183294479372,-0.00743219373140919,5.89\n",
+    " 29Rho2Cep,5.95714437729742,1.3757412384741,5.5\n",
+    " 59Ups Aqr,5.96379005406462,-0.336703101530573,5.2\n",
     "          ,5.98332431607733,-0.979415750440674,6.23\n",
+    "          ,5.95808416997157,0.988292688941789,5.71\n",
     "          ,5.90746962166373,1.22022270584778,6.6\n",
+    "          ,5.96130631628294,-0.384127575816707,5.97\n",
+    " 62Eta Aqr,5.94103364574054,0.00205076187109334,4.02\n",
     "          ,5.92639973124305,1.22825606854376,6.34\n",
+    "          ,5.92096235934261,1.33040146301673,5.68\n",
     "   Sig1Gru,5.9560032004788,-0.687960309768054,6.28\n",
+    "          ,5.96419282235355,-0.529465021139724,5.82\n",
+    "   Sig2Gru,5.99560874888944,-0.687814865663721,5.86\n",
+    "  8    Lac,5.98251877949949,0.691746704617519,5.73\n",
+    "          ,5.92727239586905,0.620939666491472,6.1\n",
     "          ,5.96553538331662,0.204150192978414,6.4\n",
     "          ,5.98399559655887,0.873905749020805,6.29\n",
     "          ,5.98184749901795,0.978606111593221,6.38\n",
     "          ,5.9273395239172,0.219513938532776,6.3\n",
     "          ,5.98204888316241,0.622253511567278,6.3\n",
+    " 63Kap Aqr,5.98198175511426,-0.0658328497578639,5.03\n",
     "          ,5.94103364574054,-0.895489654103802,6.65\n",
     "          ,5.95519766390096,-0.106503869466143,6.23\n",
+    "  9    Lac,5.95110285296359,0.899634811077288,4.63\n",
     "          ,5.98540528557009,-0.475641006262944,6.47\n",
+    " 31    Cep,5.97419490152844,1.28531379067355,5.08\n",
+    "          ,5.99453470011899,-0.574538149072478,5.66\n",
     "          ,5.94888762737452,0.78859308555596,6.4\n",
+    " 40    Peg,5.99601151717837,0.340727055083782,5.82\n",
     "          ,5.98882881602593,-0.48301502235262,6.31\n",
+    "          ,5.99977068787497,-0.987468505683903,5.97\n",
+    "          ,5.9762758710212,0.991274293080613,5.21\n",
+    " 10    Lac,5.95083434077097,0.681555921040597,4.88\n",
+    "          ,5.96405856625724,-0.512098995082381,5.87\n",
     " 41    Peg,5.99285649891515,0.343500189339728,6.21\n",
+    "          ,5.93848277991071,1.31548374604899,5.79\n",
+    "          ,5.97580597468412,0.656117747192779,6.03\n",
+    " 30    Cep,5.97775268808058,1.10975790860697,5.19\n",
+    " 18Eps PsA,5.98701635872578,-0.470477740559127,4.17\n",
     "          ,5.9985623830082,-0.0426878446216946,6.31\n",
+    "   Bet Oct,5.96472984673878,-1.40705535413696,4.15\n",
+    "          ,6.00487241953464,0.253935709891553,5.71\n",
+    " 11    Lac,5.97560459053966,0.772768767004545,4.46\n",
+    "          ,5.95882257850126,0.939791928283591,5.93\n",
+    " 42Zet Peg,5.97567171858782,0.189043398675041,3.4\n",
+    "          ,5.99238660257807,-0.816629860734524,5.98\n",
+    "   Bet Gru,5.9966827976599,-0.787410140174053,2.1\n",
+    " 19    PsA,5.9725167003246,-0.499847753360743,6.17\n",
     "          ,5.98063919415118,0.540455747290477,6.34\n",
+    "          ,6.00071048054912,-0.763620332842008,6.07\n",
+    " 12    Lac,5.97688002345458,0.702068387888341,5.25\n",
+    " 43Omi Peg,5.9994350476342,0.511512370528238,4.79\n",
+    "          ,6.01554577919107,0.253358781611032,5.9\n",
+    "          ,5.98694923067763,0.725174607930022,5.94\n",
+    "   Rho Gru,5.98748625506285,-0.708351573195521,4.85\n",
     "          ,5.95190838954143,-0.134186730657497,6.45\n",
     "          ,5.97372500519136,-1.03848060121025,6.3\n",
     " 67    Aqr,5.96640804794262,-0.0879161129324032,6.41\n",
+    "          ,5.9707713710726,0.940887607202899,6.12\n",
+    " 66    Aqr,5.99460182816714,-0.299668184430615,4.69\n",
+    " 44Eta Peg,5.94734368226698,0.527462740636742,2.94\n",
     "          ,6.01735823649122,0.659782938621968,6.43\n",
     "          ,5.95325095050451,0.82324756748167,6.39\n",
     "          ,6.00453677929388,0.190924475757746,6.51\n",
+    "          ,5.95855406630864,0.688803885573184,5.95\n",
+    "   Eta Gru,6.0068191329311,-0.916293009160212,4.85\n",
+    " 13    Lac,5.95895683459756,0.729882148773595,5.08\n",
+    "          ,6.0105783036277,-0.793295778262723,5.51\n",
     "          ,5.97103988326522,-0.820673206834978,6.62\n",
     "          ,5.99829387081559,-0.843241283690627,6.48\n",
     " 45    Peg,5.9937962915893,0.338012098469568,6.25\n",
     "          ,6.01762674868383,0.916598441779311,6.55\n",
     "          ,6.01896930964691,-0.786455057222267,6.56\n",
+    "   Xi  Oct,6.00849733413494,-1.3940962844409,5.35\n",
     "          ,6.02830010834026,-1.34302116313601,6.73\n",
+    " 46Xi  Peg,6.01614993162445,0.212455051335821,4.19\n",
+    "          ,5.97399351738397,0.777476307848119,5.76\n",
+    " 47Lam Peg,6.00312709028265,0.411296534506086,3.95\n",
     "          ,5.99030563308531,-0.590600026327637,6.28\n",
     "          ,5.99775684643036,-1.05270988275081,6.37\n",
+    " 68    Aqr,6.00910148656832,-0.320907871800024,5.26\n",
     "          ,6.02789734005134,-0.65935145444578,6.71\n",
     "          ,5.99674992570806,-1.21566060910854,6.34\n",
+    " 69Tau1Aqr,6.02212432791013,-0.243361923506554,5.66\n",
     "          ,6.0401146448153,-0.420415879847756,6.3\n",
+    "   Eps Gru,6.01373332189092,-0.884586194415648,3.49\n",
+    " 70    Aqr,6.0095713829054,-0.164836651577242,6.19\n",
     "          ,5.9958101330339,1.02071702793439,6.36\n",
+    "          ,5.9836599563181,0.653044028454545,5.9\n",
+    " 71Tau2Aqr,6.02105027913967,-0.216551726941196,4.01\n",
     "          ,6.05273471786818,-0.54445061202282,6.33\n",
     "          ,6.01675408405784,0.182891113061761,6.54\n",
+    "          ,6.03320045585548,0.949720912472715,6.12\n",
+    "          ,6.02836723638841,1.09848114238436,6.06\n",
+    " 48Mu  Peg,5.97802120027319,0.429380084811472,3.48\n",
+    "          ,5.98506964532932,-0.67793921097952,5.42\n",
     "          ,6.04239699845252,-1.01436112057505,6.46\n",
+    "          ,5.97432915762474,1.19677711622932,6.19\n",
+    "          ,6.03541568144455,0.975687533232941,5.43\n",
+    "          ,5.99977068787497,-1.09626554386169,6.12\n",
+    " 14    Lac,6.00702051707556,0.732228646990166,5.92\n",
     "          ,6.03024682173672,0.334070563242148,6.4\n",
     "          ,5.99144680990392,0.884479535405804,6.21\n",
+    " 21    PsA,6.01017553533878,-0.496788579032941,5.97\n",
+    " 32Iot Cep,6.02816585224395,1.15541766109387,3.52\n",
+    " 22Gam PsA,6.02890426077364,-0.543224033409613,4.46\n",
+    "          ,6.01272640116862,1.07681481897558,5.6\n",
+    " 49Sig Peg,6.0188350535506,0.171662828207265,5.16\n",
+    " 73Lam Aqr,6.03601983387793,-0.112054986114847,3.74\n",
+    " 15    Lac,5.98916445626669,0.755945732270044,4.94\n",
+    "   Tau1Gru,6.04172571797099,-0.82732000240299,6.04\n",
+    "   Rho Ind,6.04810288254558,-1.22044572014109,6.05\n",
+    "          ,6.00359698661973,1.45130914694864,4.74\n",
+    "          ,5.9939305476856,0.29393283858309,5.64\n",
+    " 74    Aqr,6.02937415711072,-0.181223353998745,5.8\n",
     "          ,6.05669527270924,0.879854412888019,6.46\n",
     "          ,6.00601359635326,0.701050279158011,6.34\n",
+    "          ,5.99594438913021,1.04896227299584,6.01\n",
+    "          ,6.04467935208975,0.781020295857029,5.81\n",
+    " 76Del Aqr,6.04756585816035,-0.247473143522363,3.27\n",
+    " 78    Aqr,6.0409873094413,-0.118599970809826,6.19\n",
+    " 77    Aqr,6.05629250442032,-0.27450635438103,5.56\n",
+    "          ,6.00460390734203,0.704710622450388,5.81\n",
     "          ,6.01957346208029,-0.621535987319236,6.4\n",
+    "          ,6.04313540698221,0.295687864108706,6.12\n",
+    "  1    Psc,6.07508835790334,0.0185829083969285,6.11\n",
+    "          ,6.01433747432431,-0.0525731955795181,5.72\n",
+    " 50Rho Peg,6.0179623889246,0.153865317973733,4.9\n",
+    "          ,6.0030599622345,0.647114757134575,5.91\n",
+    "          ,6.06857693723244,-0.530003164325756,6.1\n",
+    " 23Del PsA,6.07596102252934,-0.549085430814227,4.21\n",
     "          ,6.03615408997424,-0.531181261570852,6.48\n",
+    "   Tau3Gru,6.06810704089536,-0.803389599103423,5.7\n",
+    "          ,6.05931326658724,0.634456271920805,5.74\n",
     "          ,6.07307451645873,0.206792427540462,6.51\n",
+    " 16    Lac,6.03561706558901,0.726124842744996,5.59\n",
+    "          ,6.03883921190038,0.868015262795324,4.95\n",
     "          ,6.03138799855533,-0.0556760031386191,6.31\n",
+    " 24Alp PsA,6.06079008364662,-0.495285656621502,1.16\n",
+    " 51    Peg,6.0457534008602,0.362485493091978,5.49\n",
     "          ,6.05233194957926,0.066501892637795,6.28\n",
+    "          ,6.01433747432431,0.849699001923006,5.43\n",
+    "          ,6.059648906828,-0.601736196582723,6.13\n",
+    "          ,6.06293818118753,0.686069536411727,6.18\n",
+    "          ,6.03346896804809,-0.0280076863576979,6.16\n",
     "          ,6.04447796794528,-0.0102925944499554,6.37\n",
+    "          ,5.98506964532932,1.4900506082061,5.9\n",
     "          ,6.05978316292431,0.163309488481747,6.43\n",
     "          ,6.06985237014736,0.128102318959573,6.33\n",
+    " 52    Peg,6.03286481561471,0.20470772871169,5.75\n",
+    "          ,6.06508627872845,-0.498078183424693,5.51\n",
+    "          ,6.06495202263214,-0.225656527872434,6.07\n",
+    "  2    Psc,6.05380876663864,0.0168036421872565,5.43\n",
+    "          ,6.02917277296626,-0.433467064143225,5.65\n",
     "          ,6.0308509741701,0.918993421363992,6.29\n",
     "          ,6.0291056449181,1.0439638439436,6.43\n",
     "          ,6.05441291907202,-0.425394916352751,6.29\n",
+    "   Zet Gru,6.09227313823067,-0.894408519594927,4.12\n",
+    "          ,6.02850149248472,1.47211735014186,4.71\n",
+    "          ,6.03581844973347,-0.856083998103219,5.68\n",
     "  3    Psc,6.07226897988089,0.0032434035266228,6.21\n",
+    "          ,6.07898178469625,0.0525634993058959,5.83\n",
+    "          ,6.02823298029211,0.993882590684982,5\n",
     "          ,6.07844476031102,0.54250166102476,6.6\n",
+    "          ,6.05179492519403,-0.473793866137916,5.55\n",
     "          ,6.06757001651013,0.791943148092427,6.5\n",
     "          ,6.05662814466109,-0.370169789937564,6.28\n",
     " 81    Aqr,6.05743368123894,-0.121106457541162,6.21\n",
     "          ,6.0948240040605,0.675583016489327,6.54\n",
+    "          ,6.06830842503982,-0.057397091706558,5.94\n",
     "          ,6.07575963838488,-0.620973603449149,6.47\n",
+    "          ,6.06696586407675,0.996679965624984,6.2\n",
+    "  1Omi And,6.09999286376833,0.738729998453844,3.62\n",
+    " 82    Aqr,6.07388005303657,-0.0946986563311257,6.15\n",
+    "          ,6.08958801630452,-0.333871789632893,5.97\n",
     "          ,6.07455133351811,0.55467533255742,6.57\n",
+    "  2    And,6.07884752859994,0.746264003058286,5.1\n",
+    "   Pi  PsA,6.07448420546996,-0.580331672561737,5.11\n",
     "          ,6.09079632117129,0.768972675881457,6.39\n",
+    "          ,6.10892089417277,-1.17250734335298,5.52\n",
     "          ,6.08891673582299,0.964056853023123,6.5\n",
+    "          ,6.11435826607321,-0.707236501728969,5.79\n",
     "          ,6.11140463195445,-0.0559329543896072,6.68\n",
+    "  4Bet Psc,6.10509459542801,0.0666715774261834,4.53\n",
+    "   Kap Gru,6.09200462603805,-0.908182076275249,5.37\n",
+    " 53Bet Peg,6.09690497355327,0.490136935328119,2.42\n",
     "          ,6.04018177286345,0.115482618840291,6.41\n",
     "          ,6.06629458359521,1.05496911450478,6.74\n",
     "          ,6.06347520557276,1.02214722829367,6.43\n",
+    "          ,6.07864614445548,1.17302124585496,5.24\n",
+    "  3    And,6.05360738249418,0.873576075717651,4.65\n",
+    " 54Alp Peg,6.1001942479128,0.265382160902549,2.49\n",
+    " 83    Aqr,6.05635963246848,-0.110067250022298,5.43\n",
+    "          ,6.06038731535769,-0.295324253847874,6.14\n",
     "          ,6.05166066909772,0.289079853635183,6.44\n",
     "          ,6.06683160798044,0.0228104836962037,6.39\n",
+    "          ,6.08811119924514,-1.37041798425551,6.12\n",
+    "   The Gru,6.11845307701058,-0.741406169973569,4.28\n",
+    "          ,6.07200046768827,0.32319134423805,6.13\n",
+    " 86    Aqr,6.10247660155002,-0.388456961989016,4.47\n",
+    "   Ups Gru,6.11952712578104,-0.647652900320607,5.61\n",
     "          ,6.06468351043953,-0.844623002681789,6.33\n",
     "          ,6.09039355288237,0.347509598482504,6.3\n",
+    "          ,6.0716648274475,-0.860684879936948,5.83\n",
+    "          ,6.10422193080201,-1.26385593714764,6.15\n",
+    " 55    Peg,6.05233194957926,0.164225786339044,4.52\n",
+    " 56    Peg,6.06105859583923,0.444506271662089,4.76\n",
+    "  1    Cas,6.09710635769773,1.03706979339822,4.85\n",
+    "          ,6.08911811996745,0.572918871377572,6.02\n",
+    "          ,6.09046068093052,0.368860792998568,5.99\n",
     "          ,6.07622953472195,0.80403924943611,6.66\n",
+    "          ,6.06548904701737,0.921819885124861,6.11\n",
+    "          ,6.08448628464485,-0.474322313050326,5.6\n",
     "          ,6.06589181530629,1.04244152898491,6.4\n",
+    "  4    And,6.10469182713909,0.809609758632059,5.33\n",
+    "  5    And,6.11288144901383,0.860374599181038,5.7\n",
     "          ,6.07280600426612,0.77774780350954,6.56\n",
+    "  5    Psc,6.11120324780999,0.0371367279729905,5.4\n",
     "          ,6.1159693392289,1.11061118068573,6.26\n",
     "          ,6.08072711394824,-1.13695110798041,6.47\n",
     "          ,6.08985652849714,-1.3803324240342,6.41\n",
     "          ,6.12872366837809,1.12089407886206,6.21\n",
+    " 88    Aqr,6.09663646136065,-0.363508449959119,3.66\n",
+    "          ,6.12053404650335,-0.487145634915673,5.87\n",
+    "          ,6.13758457073437,-0.718018757996845,5.81\n",
+    " 57    Peg,6.10294649788709,0.151446097704997,5.12\n",
     "          ,6.12724685131871,-0.235435219820413,6.42\n",
+    " 89    Aqr,6.13422816832669,-0.375987554110878,4.69\n",
+    "          ,6.07817624811841,-0.687805169390099,5.83\n",
+    " 33Pi  Cep,6.12429321719995,1.31576008984723,4.41\n",
+    "   Iot Gru,6.09401846748266,-0.781093017909196,3.9\n",
+    " 58    Peg,6.06703299212491,0.171425269503521,5.39\n",
+    "  2    Cas,6.11986276602181,1.03555717471316,5.7\n",
     "          ,6.12758249155948,-0.496982504505385,6.51\n",
+    "          ,6.12221224770719,0.30708098561478,5.71\n",
+    "  6    And,6.10153680887587,0.759989078370497,5.94\n",
+    " 59    Peg,6.12872366837809,0.152192710773906,5.16\n",
+    " 60    Peg,6.13543647319345,0.468572422792366,6.17\n",
     "          ,6.09824753451634,-0.844409684662101,6.8\n",
+    "          ,6.09133334555652,-1.06988683147252,6.12\n",
+    "  7    And,6.11805030872166,0.862304157631854,4.52\n",
     "          ,6.08347936392254,0.513854020607997,6.35\n",
+    "          ,6.10093265644249,0.997775644544291,5.56\n",
+    "          ,6.11368698559168,0.193120681733173,5.82\n",
+    " 90Phi Aqr,6.10851812588385,-0.103866483040907,4.22\n",
+    "          ,6.16114651563629,-0.713742701329459,5.77\n",
+    "          ,6.13644339391576,-0.162514394044728,6.12\n",
     "          ,6.10167106497218,0.883446882265041,6.31\n",
     "          ,6.11160601609891,0.519613607139578,6.41\n",
     "          ,6.13147591835239,0.420677679235555,6.36\n",
+    "          ,6.13288560736361,-0.0436962570784025,5.55\n",
+    " 91Psi1Aqr,6.15866277785461,-0.155547621447184,4.21\n",
     " 61    Peg,6.14899633892048,0.493016728593909,6.49\n",
+    "          ,6.1686648570295,-1.08208474368924,5.66\n",
+    "          ,6.13254996712284,1.29557729630264,5.84\n",
     "          ,6.16457004609213,0.43233744826624,6.6\n",
+    "          ,6.14449875969419,-0.759407301953166,5.92\n",
     "          ,6.15805862542122,-0.712191297549908,6.47\n",
+    "   Gam Tuc,6.13020048543747,-1.00817489800409,3.99\n",
     "          ,6.11516380265106,-1.37055858022304,6.33\n",
+    " 92Chi Aqr,6.1595354424806,-0.109490321741778,5.06\n",
+    "          ,6.13758457073437,1.2372299697811,5.56\n",
+    "  6Gam Psc,6.10885376612461,0.0572855845599028,3.69\n",
+    "          ,6.14798941819818,0.928752720764727,5.54\n",
     "          ,6.12717972327055,1.08145933404061,6.53\n",
+    "          ,6.12677695498163,-1.16114815880458,6.13\n",
     "          ,6.1492648511131,-0.179541050525294,6.34\n",
     "          ,6.1178489245772,0.788263412252806,6.43\n",
+    " 93Psi2Aqr,6.16832921678873,-0.1538944067946,4.39\n",
+    "   Phi Gru,6.1132170892546,-0.683742430742401,5.53\n",
+    "  8    And,6.15557488763954,0.855477981001832,4.85\n",
     "          ,6.17088008261857,0.793930884184976,6.48\n",
+    "   Tau Oct,6.14852644258341,-1.510020083731,5.49\n",
+    "   Gam Scl,6.16624824729597,-0.549221178644938,4.41\n",
+    "  9    And,6.13134166225608,0.729087054336576,6.02\n",
+    " 95Psi3Aqr,6.17739150328947,-0.146418579831891,4.98\n",
+    " 94    Aqr,6.11328421730275,-0.218883680747333,5.08\n",
     "          ,6.12093681479227,1.3142183823413,6.38\n",
+    " 96    Aqr,6.13651052196391,-0.0850944973083458,5.55\n",
+    "          ,6.13664477806022,-0.312845420283172,5.93\n",
     "          ,6.10751120516154,0.787793142982129,6.5\n",
     "          ,6.1622876924549,-0.563600752426647,6.37\n",
+    " 34Omi Cep,6.1502717718354,1.1887728423542,4.75\n",
     "          ,6.14107522923836,0.60725822441056,6.32\n",
+    " 11    And,6.14429737554973,0.848671196919054,5.44\n",
     "          ,6.16013959491399,0.84440483652529,6.32\n",
+    " 10    And,6.17463925331517,0.734400612281536,5.79\n",
+    "          ,6.17578043013378,-0.867312282957715,6.05\n",
+    "  7    Psc,6.13630913781945,0.0939229544413504,5.05\n",
+    "          ,6.16356312536982,-0.0714179033642457,6.17\n",
+    " 62Tau Peg,6.15993821076953,0.414346012560265,4.6\n",
     "          ,6.12785100375209,1.08158053746089,6.45\n",
+    " 63    Peg,6.17524340574855,0.530841891994075,5.59\n",
+    "          ,6.13382540003776,-0.436565023565515,5.64\n",
+    "          ,6.16772506435535,0.769976240201354,6.13\n",
+    " 12    And,6.18021088131192,0.666405493505924,5.77\n",
     "          ,6.15510499130246,1.08582265717059,6.39\n",
+    " 64    Peg,6.18672230198282,0.555232868290696,5.32\n",
     "          ,6.19115275316096,0.464412721408447,6.62\n",
+    "          ,6.19377074703895,-1.04622307569757,6.09\n",
+    " 97    Aqr,6.17000741799257,-0.261115800508785,5.2\n",
     " 65    Peg,6.17175274724456,0.363527842506363,6.29\n",
+    " 98    Aqr,6.19551607629095,-0.347310824873249,3.97\n",
+    " 66    Peg,6.12791813180025,0.214917904835857,5.08\n",
+    "          ,6.16101225953998,1.04952950500273,5.56\n",
+    "          ,6.19464341166495,-0.910916425436707,6.15\n",
+    "          ,6.18269461909361,-0.748319613066191,6.1\n",
     "          ,6.16457004609213,0.00508569551483903,6.31\n",
+    "          ,6.14369322311635,-0.874560247490303,5.75\n",
     "          ,6.18551399711606,0.567779846357811,6.69\n",
+    "          ,6.13657765001206,-0.302160126751518,6.19\n",
+    "          ,6.15651468031369,-0.962563626885306,5.59\n",
     "          ,6.17309530820764,0.71755333686298,6.72\n",
+    " 67    Peg,6.19430777142418,0.565224878258364,5.57\n",
+    "  4    Cas,6.19363649094265,1.08703953951018,4.98\n",
+    " 68Ups Peg,6.16107938758814,0.40847976701884,4.4\n",
+    " 99    Aqr,6.13859149145667,-0.337861806228425,4.39\n",
+    "   Omi Gru,6.18397005200852,-0.894975751601826,5.52\n",
     "          ,6.14886208282418,-1.14177500410745,6.45\n",
+    "          ,6.15933405833614,-1.00398125966249,5.63\n",
+    "          ,6.15141294865401,-0.869920580562085,6.2\n",
+    "  8Kap Psc,6.21001573469213,0.021913578386151,4.94\n",
     "  9    Psc,6.15906554614353,0.0195913208536363,6.25\n",
+    " 13    And,6.14913059501679,0.748954718988444,5.75\n",
     "          ,6.14449875969419,-0.601362890048268,6.32\n",
+    " 69    Peg,6.19343510679819,0.439250891358862,5.98\n",
+    " 10The Psc,6.21719843584457,0.111332613729994,4.28\n",
     "          ,6.15054028402802,-0.184137084222213,6.37\n",
+    "          ,6.16148215587706,1.2280088135664,5.6\n",
+    "          ,6.1492648511131,-1.0976230221688,5.68\n",
     "          ,6.14899633892048,-0.759257009712022,6.43\n",
+    "          ,6.14872782672787,-0.15243511761446,6.18\n",
     "          ,6.15544063154323,0.402259607490204,6.35\n",
+    " 70    Peg,6.1604081071066,0.222713708828099,4.55\n",
     "          ,6.19101849706465,-0.0605144436760923,6.25\n",
+    "          ,6.16222056440675,0.857533591009736,6.17\n",
+    "          ,6.15497073520616,1.02187088449544,4.91\n",
+    "          ,6.20558528351399,0.674778225778686,6.05\n",
     "          ,6.15812575346938,-0.0996873891097428,6.39\n",
+    "          ,6.19289808241296,-0.753221079382208,6.02\n",
+    " 14    And,6.18000949716746,0.684804172704031,5.22\n",
     "          ,6.19893960674678,-0.0682908551210892,6.49\n",
     "100    Aqr,6.21317075295535,-0.360071120960052,6.29\n",
     "          ,6.21451331391843,0.495736533344934,6.41\n",
     " 13    Psc,6.23398044788298,-0.0159552182453148,6.38\n",
+    "          ,6.19155552144988,-1.33717915827864,5.81\n",
     "          ,6.19403925923157,0.610036206803318,6.65\n",
+    "   Bet Scl,6.23928356368711,-0.631489212192415,4.37\n",
+    "          ,6.14026969266051,1.52380333668495,5.58\n",
+    "101    Aqr,6.18766209465697,-0.33310578401674,4.71\n",
+    " 71    Peg,6.20310154573231,0.39267968915148,5.32\n",
     "          ,6.22270293579317,0.786411423990967,6.24\n",
+    "          ,6.2398877161205,0.363741160526051,6.06\n",
+    " 72    Peg,6.24217006975772,0.546729236324035,4.98\n",
+    " 14    Psc,6.18182195446761,-0.0131336026212573,5.87\n",
     "          ,6.19115275316096,-1.10497764571123,7.4\n",
+    "          ,6.23606141737574,-0.25750878672133,5.96\n",
+    " 15    And,6.22008494191518,0.702257465223974,5.59\n",
+    " 73    Peg,6.22102473458933,0.584636818049989,5.63\n",
+    "   Iot Phe,6.18027800936007,-0.722304510937853,4.71\n",
+    "          ,6.23243650277544,0.663642055523599,6.18\n",
     "          ,6.21719843584457,-0.114066962891452,6.39\n",
+    "          ,6.24895000262124,1.25039266122323,5.84\n",
     "          ,6.2491513867657,0.428672256837052,6.45\n",
+    " 16    Psc,6.20974722249952,0.0366906993863697,5.68\n",
     "          ,6.21941366143364,0.574286045958301,6.35\n",
     "          ,6.1900787043905,-0.525853159215458,6.52\n",
+    "          ,6.21954791752995,-1.31126586702334,6\n",
+    "          ,6.23599428932759,-0.225840757071255,5.65\n",
+    "          ,6.25129948430661,-0.776802416831376,4.74\n",
     " 74    Peg,6.2362628015202,0.293661342921668,6.26\n",
+    " 16Lam And,6.22834169183807,0.810846033518888,3.82\n",
+    "          ,6.22579082600823,0.775435242250647,5.8\n",
+    " 75    Peg,6.25908633789243,0.321150278640579,5.53\n",
     "          ,6.26150294762596,0.806337266284569,6.58\n",
+    " 17Iot And,6.19820119821709,0.755170030380269,4.29\n",
+    "   The Phe,6.22914722841591,-0.791720133799117,6.09\n",
+    " 18    And,6.20269877744339,0.880896762302405,5.3\n",
+    "102Ome1Aqr,6.2547901428106,-0.240477282103952,5\n",
+    " 17Iot Psc,6.26808149634502,0.0981990111087365,4.13\n",
+    "          ,6.26553063051518,0.16889939022494,5.97\n",
+    "          ,6.20551815546584,1.31410687519464,5.95\n",
+    "          ,6.21988355777072,1.29159212784391,5.98\n",
     "          ,6.19967801527647,0.657160096607165,6.53\n",
+    " 35Gam Cep,6.21948078948179,1.3549427315545,3.21\n",
+    "   Mu  Scl,6.24720467336924,-0.557230300656867,5.31\n",
+    " 19Kap And,6.22881158817515,0.773772331324442,4.14\n",
     "          ,6.25042681968062,0.640899445742751,6.23\n",
     "          ,6.20968009445136,-0.416081645538637,6.6\n",
+    "          ,6.2122309602812,-0.180108282532193,5.89\n",
+    "103    Aqr,6.24660052093586,-0.313684147951492,5.34\n",
     "          ,6.23639705761651,0.864151297756881,6.26\n",
+    "104    Aqr,6.26177145981858,-0.282457298751227,4.82\n",
+    "          ,6.27640537431607,0.126546067043211,5.89\n",
+    " 18Lam Psc,6.20840466153645,0.0310668606854991,4.5\n",
     "          ,6.27345174019731,0.999375529691953,6.24\n",
     "          ,6.22451539309331,0.785257567429926,6.57\n",
+    "          ,6.24210294170956,-0.253984191259664,5.28\n",
+    "105Ome2Aqr,6.26277838054088,-0.234834050855837,4.49\n",
     "          ,6.23257075887175,1.12600886319776,6.56\n",
     "          ,6.24693616117663,1.07650938635648,6.4\n",
+    " 77    Peg,6.23908217954265,0.18031675241507,5.06\n",
     "          ,6.27546558164192,-0.256834895704588,6.36\n",
+    "          ,6.21525172244812,-0.78394372235412,6.09\n",
+    "          ,6.24747318556186,-1.21317351492445,6.07\n",
+    "          ,6.26801436829687,-1.34754447478077,5.75\n",
+    "          ,6.22948286865668,-1.10995183407942,5.72\n",
+    " 78    Peg,6.28889119127264,0.512457757206402,4.93\n",
+    "106    Aqr,6.22961712475299,-0.309325672958317,5.24\n",
+    "          ,6.25217214893261,-0.449485308167084,6.17\n",
     "          ,6.27821783161622,0.973888874476025,6.51\n",
     "          ,6.22370985651547,-0.694946474912842,6.31\n",
+    "107    Aqr,6.22330708822655,-0.302324963403096,5.29\n",
+    " 20Psi And,6.22491816138224,0.810186686912579,4.95\n",
+    " 19    Psc,6.25364896599199,0.060853813252869,5.04\n",
+    "          ,6.27137077070455,1.1655696595763,5.95\n",
+    "   Sig Phe,6.24794308189893,-0.868708546359311,5.18\n",
     "          ,6.25774377692936,-1.1799443852212,6.89\n",
+    "  5Tau Cas,6.23116106986052,1.02366954325235,4.87\n",
+    "          ,6.24780882580262,-0.176089177115795,5.73\n",
+    "          ,6.22901297231961,1.0027158959548,5.51\n",
+    "          ,6.27103513046378,0.817381321940244,6.07\n",
+    " 20    Psc,6.30231680090337,-0.0216129939038631,5.49\n",
+    "          ,6.30003444726615,1.18345443627243,5.04\n",
+    "          ,6.27445866091962,-0.0980778076884591,6.07\n",
     "          ,6.29701368509923,0.0386444985212411,6.46\n",
+    "   Del Scl,6.30547181916659,-0.486418414394009,4.57\n",
     "          ,6.28318530717959,1.13230659291538,6.41\n",
+    "  6    Cas,6.298221989966,1.08584689785465,5.43\n",
     "          ,6.30318946552937,1.04682909279895,6.34\n",
     "          ,6.25129948430661,1.02909945648078,6.33\n",
     "          ,6.27761367918284,-0.246770163684754,6.24\n",
+    " 21    Psc,6.27210917923424,0.0187816820061834,5.77\n",
     "          ,6.29520122779909,-1.06745306679335,6.59\n",
+    "          ,6.29023375223572,0.635741028175746,5.9\n",
+    " 79    Peg,6.2880856546948,0.503396589506464,5.97\n",
     "          ,6.30177977651814,-0.430548485782946,6.42\n",
+    "          ,6.25928772203689,-0.140077216882978,5.94\n",
     "          ,6.26949118535625,0.90096804870034,6.44\n",
+    "          ,6.28425935595004,-0.237330841313551,5.72\n",
+    " 80    Peg,6.27237769142685,0.162548331002405,5.79\n",
+    "108    Aqr,6.27251194752316,-0.298296161713075,5.18\n",
+    "   Gam1Oct,6.25687111230336,-1.4308403133322,5.11\n",
+    " 22    Psc,6.32164967877161,0.0511429952202449,5.55\n",
     "          ,6.32124691048269,1.35436580327398,6.55\n",
+    "          ,6.2796946486756,0.378227393317604,6.11\n",
+    " 81Phi Peg,6.28761575835773,0.333711801118127,5.08\n",
+    "          ,6.28855555103188,-0.239963379601976,5.87\n",
     "          ,6.28197700231282,1.31850413528231,6.39\n",
+    " 82    Peg,6.29808773386969,0.191069919862079,5.3\n",
+    "          ,6.31607805077486,-0.122231225281336,5.75\n",
+    " 24    Psc,6.32292511168653,-0.0496449209456165,5.93\n",
     " 25    Psc,6.25908633789243,0.0364870776403037,6.28\n",
     "          ,6.2805673133016,-0.414879307609485,6.24\n",
     "          ,6.28573617300942,-0.470501981243182,6.35\n",
+    "  7Rho Cas,6.28788427055034,1.00355462362312,4.54\n",
+    "          ,6.30882822157427,-0.692895713041749,6.03\n",
+    "          ,6.31956870927885,0.00190531776676048,5.61\n",
     " 26    Psc,6.27184066704162,0.123414170663243,6.21\n",
+    "          ,6.28365520351666,-0.524965950179028,6.1\n",
     "          ,6.28365520351666,-0.525620448648526,6.83\n",
     "          ,6.29224759368033,0.453000207355128,6.54\n",
+    "          ,6.3066129959852,1.00203230866443,6\n",
+    "          ,6.3064787398889,0.826515211692348,6\n",
     "          ,6.30587458745551,-0.406012065381992,6.31\n",
+    "          ,6.32144829462715,0.395283138619038,6.15\n",
     "          ,6.30292095333675,1.45195879728133,6.59\n",
+    "          ,6.27492855725669,0.744528370079914,5.97\n",
     "          ,6.28123859378313,-0.442901538377617,6.26\n",
+    "          ,6.28150710597575,0.972250204233875,5.55\n",
+    "          ,6.29681230095477,-1.06541200119588,5.97\n",
+    "   Gam2Oct,6.3139970812821,-1.42820292690696,5.73\n",
+    "   Eta Tuc,6.31735348368978,-1.11180382234125,5\n",
     "          ,6.31507113005256,1.04760964282554,6.47\n",
+    " 84Psi Peg,6.33118186160943,0.43880001463543,4.66\n",
     "  1    Cet,6.30292095333675,-0.247007722388497,6.26\n",
+    "          ,6.30775417280381,0.89690046191583,4.8\n",
+    " 27    Psc,6.32869812382775,-0.042653907664017,4.86\n",
     "          ,6.34051266030279,0.56516670061663,6.52\n",
+    "   Pi  Phe,6.34937356265906,-0.89455396369926,5.13\n",
     "          ,6.33688774570249,0.81006063535549,6.54\n",
+    "  8Sig Cas,6.27949326453114,0.973108324449438,4.88\n",
+    " 28Ome Psc,6.30392787405906,0.119787764328544,4.01\n",
+    "          ,6.31627943491932,-0.497680636206183,5.62\n",
     "          ,6.31802476417132,0.588602593961465,6.58\n",
     "          ,6.31802476417132,0.588602593961465,6.58\n",
+    "   Eps Tuc,6.35266283701859,-1.12438958550286,4.5\n",
     "          ,0.0257771704909932,-0.762873719773099,6.29\n",
     "          ,0.0320872070174342,0.469813545816007,6.46\n",
+    "          ,0.0414851337589421,1.03951325435101,6.19\n",
     "          ,0.0586699140862709,0.789819664169167,6.38\n",
+    "   Tau Phe,0.0104048474638123,-0.823620874016124,5.71\n",
+    "          ,0.031214542391437,-0.866778987908495,5.53\n",
     "          ,0.0302747497172863,0.872344648967632,6.22\n",
+    "   The Oct,0.0522927495116763,-1.3427545156114,4.78\n",
+    "          ,0.0539038226673633,1.06854389757585,5.55\n",
     "          ,0.063167493312564,0.739447522701887,6.25\n",
+    " 29    Psc,0.0706858347057703,-0.0518799120155315,5.1\n",
+    " 85    Peg,0.0224207680833118,0.472669098397742,5.75\n",
+    " 30    Psc,0.0816948346029654,-0.104472500142294,4.41\n",
     "          ,0.0185273412904013,-0.232545730281,7.1\n",
+    "   Zet Scl,0.0354436094251156,-0.493574264327185,5.01\n",
     " 31    Psc,0.0412166215663276,0.15632817147377,6.32\n",
+    " 32    Psc,0.0486007068632267,0.148100883305341,5.63\n",
+    "          ,0.0571930970268911,1.15364324302101,5.86\n",
     "          ,0.0860581577329512,-0.348261059688224,6.25\n",
     "          ,0.0234276888056162,-0.416343444926436,6.44\n",
     "          ,0.0475937861409223,1.11076147292687,6.24\n",
+    "  2    Cet,0.0726996761503792,-0.290839727297611,4.55\n",
     "          ,0.0827688833734234,1.16434792909991,6.29\n",
+    "  9    Cas,0.0357121216177301,1.08712680597278,5.88\n",
+    "          ,0.0439017434924728,-0.270021827830767,5.78\n",
     "          ,0.0447072800703163,-0.501457334782026,6.4\n",
+    "  3    Cet,0.0578643775084274,-0.165641442287884,4.94\n",
+    "          ,0.0738408529689909,1.17227948092286,5.67\n",
+    "          ,0.0667252798647063,0.734647867258902,6.01\n",
     "          ,0.0586699140862709,-1.24096788326246,7.31\n",
+    "          ,0.0896830723332471,0.604926270604424,6.12\n",
+    "          ,0.0729010602948401,-1.23155764971212,5.59\n",
     "          ,0.0926367064520067,0.465110853109244,6.25\n",
+    "          ,0.030140493620979,1.07013408644989,5.8\n",
     0L };
 
 } } //namespace osgEarth::Util
diff --git a/src/osgEarthUtil/TFS b/src/osgEarthUtil/TFS
new file mode 100644
index 0000000..a2bfc4d
--- /dev/null
+++ b/src/osgEarthUtil/TFS
@@ -0,0 +1,88 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+#ifndef OSGEARTHUTIL_TFS_H
+#define OSGEARTHUTIL_TFS_H 1
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/GeoData>
+#include <osgEarth/URI>
+#include <osg/Referenced>
+#include <osg/ref_ptr>
+
+#include <osgDB/ReaderWriter>
+#include <osg/Version>
+#if OSG_MIN_VERSION_REQUIRED(2,9,5)
+#include <osgDB/Options>
+#endif
+
+
+#include <string>
+#include <vector>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+
+    class OSGEARTHUTIL_EXPORT TFSLayer
+    {
+    public:
+        TFSLayer();
+
+        const std::string& getTitle() const { return _title;}
+        void setTitle(const std::string& value) { _title = value;}
+
+        const std::string& getAbstract() const { return _abstract;}
+        void setAbstract(const std::string& value) { _abstract = value;}
+
+        const GeoExtent& getExtent() const { return _extent;}
+        void setExtent(const GeoExtent& value) { _extent = value;}
+
+        unsigned int getMaxLevel() const { return _maxLevel;}
+        void setMaxLevel( unsigned int value ) { _maxLevel = value;}
+
+        unsigned int getFirstLevel() const { return _firstLevel;}
+        void setFirstLevel(unsigned int value) { _firstLevel = value;}
+
+        const SpatialReference* getSRS() const { return _srs;}
+        void setSRS( const SpatialReference* srs ) { _srs = srs;}
+
+    private:
+        std::string _title;
+        std::string _abstract;
+        osgEarth::GeoExtent _extent;
+        unsigned int _maxLevel;
+        unsigned int _firstLevel;
+        osg::ref_ptr< const osgEarth::SpatialReference > _srs;
+    };
+
+    class OSGEARTHUTIL_EXPORT TFSReaderWriter
+    {
+    public:
+        static bool read(const URI& uri, const osgDB::ReaderWriter::Options* options, TFSLayer &layer);
+        static bool read( std::istream &in, TFSLayer &layer);
+
+        static void write(const TFSLayer &layer, const std::string& location);
+        static void write(const TFSLayer &layer, std::ostream& output);
+
+    };
+
+} } // namespace osgEarth::Util
+
+#endif //OSGEARTHUTIL_TFS_H
diff --git a/src/osgEarthUtil/TFS.cpp b/src/osgEarthUtil/TFS.cpp
new file mode 100644
index 0000000..b901219
--- /dev/null
+++ b/src/osgEarthUtil/TFS.cpp
@@ -0,0 +1,134 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthUtil/TFS>
+#include <osgEarth/XmlUtils>
+
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace std;
+
+
+TFSLayer::TFSLayer():
+_firstLevel(0),
+_maxLevel(8),
+_title("layer"),
+_srs( SpatialReference::create("EPSG:4326") )
+{
+}
+
+/************************************************/
+
+bool
+TFSReaderWriter::read(const URI& uri, const osgDB::ReaderWriter::Options *options, TFSLayer &layer)
+{
+    osgEarth::ReadResult result = uri.readString(options);
+    if (result.succeeded())
+    {
+        std::string str = result.getString();
+        std::stringstream in( str.c_str()  );
+        return read( in, layer);
+    }    
+    return false;
+}
+
+bool
+TFSReaderWriter::read( std::istream &in, TFSLayer &layer)
+{
+    osg::ref_ptr< XmlDocument > doc = XmlDocument::load( in );
+    if (!doc.valid()) return false;
+
+    osg::ref_ptr<XmlElement> e_layer = doc->getSubElement( "layer" );
+    if (!e_layer.valid()) return false;
+
+    layer.setTitle( e_layer->getSubElementText("title") );
+    layer.setAbstract( e_layer->getSubElementText("abstract") );
+    layer.setFirstLevel( as<unsigned int>(e_layer->getSubElementText("firstlevel"), 0) );
+    layer.setMaxLevel( as<unsigned int>(e_layer->getSubElementText("maxlevel"), 0) );
+
+    std::string srsString = e_layer->getSubElementText("srs");
+    if (!srsString.empty())
+    {
+        const SpatialReference* srs = SpatialReference::create( srsString );
+        if (srs)
+        {
+            layer.setSRS( srs );
+        }
+    }
+
+     //Read the bounding box
+    osg::ref_ptr<XmlElement> e_bounding_box = e_layer->getSubElement("boundingbox");
+    if (e_bounding_box.valid())
+    {
+        double minX = as<double>(e_bounding_box->getAttr( "minx" ), 0.0);
+        double minY = as<double>(e_bounding_box->getAttr( "miny" ), 0.0);
+        double maxX = as<double>(e_bounding_box->getAttr( "maxx" ), 0.0);
+        double maxY = as<double>(e_bounding_box->getAttr( "maxy" ), 0.0);
+        layer.setExtent( GeoExtent( layer.getSRS(), minX, minY, maxX, maxY) );
+    }    
+
+    return true;
+}
+
+
+static XmlDocument*
+tfsToXmlDocument(const TFSLayer &layer)
+{
+    //Create the root XML document
+    osg::ref_ptr<XmlDocument> doc = new XmlDocument();
+    doc->setName( "Layer" );
+        
+    doc->addSubElement( "Title", layer.getTitle() );
+    doc->addSubElement( "Abstract", layer.getAbstract() );
+    doc->addSubElement( "MaxLevel", toString<unsigned int>(layer.getMaxLevel() ));
+    doc->addSubElement( "FirstLevel", toString<unsigned int>(layer.getFirstLevel() ));
+    
+    osg::ref_ptr<XmlElement> e_bounding_box = new XmlElement( "BoundingBox" );
+    e_bounding_box->getAttrs()["minx"] = toString(layer.getExtent().xMin());
+    e_bounding_box->getAttrs()["miny"] = toString(layer.getExtent().yMin());
+    e_bounding_box->getAttrs()["maxx"] = toString(layer.getExtent().xMax());
+    e_bounding_box->getAttrs()["maxy"] = toString(layer.getExtent().yMax());
+    doc->getChildren().push_back(e_bounding_box.get() );
+
+    doc->addSubElement( "SRS", layer.getSRS()->getHorizInitString() );
+    
+    return doc.release();
+}
+
+void
+TFSReaderWriter::write(const TFSLayer &layer, const std::string &location)
+{
+    std::string path = osgDB::getFilePath(location);
+    if (!osgDB::fileExists(path) && !osgDB::makeDirectory(path))
+    {
+        OE_WARN << "Couldn't create path " << std::endl;
+    }
+    std::ofstream out(location.c_str());
+    write(layer, out);
+}
+
+void
+TFSReaderWriter::write(const TFSLayer &layer, std::ostream &output)
+{
+    osg::ref_ptr<XmlDocument> doc = tfsToXmlDocument(layer);    
+    doc->store(output);
+}
diff --git a/src/osgEarthUtil/TFSPackager b/src/osgEarthUtil/TFSPackager
new file mode 100644
index 0000000..d02f3a6
--- /dev/null
+++ b/src/osgEarthUtil/TFSPackager
@@ -0,0 +1,111 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#ifndef OSGEARTHFEATURES_TFS_PACKAGER_H
+#define OSGEARTHFEATURES_TFS_PACKAGER_H 1
+
+#include <osgEarthFeatures/Common>
+#include <osgEarthFeatures/Feature>
+#include <osgEarthFeatures/FeatureSource>
+#include <osgEarthFeatures/CropFilter>
+#include <osgEarthUtil/TFS>
+
+
+namespace osgEarth { namespace Util {
+    using namespace osgEarth;    
+    using namespace osgEarth::Features;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Utility that grids up feature data into a tiled json format.
+     */
+    class OSGEARTHUTIL_EXPORT TFSPackager
+    {
+    public:
+        TFSPackager();
+
+        /**
+         * The first level in the quadtree that tiles will be added.          
+         */
+        unsigned int getFirstLevel() const { return _firstLevel;}
+        void setFirstLevel( unsigned int value ) { _firstLevel = value;}
+
+        /**
+         * The maximum level in the quadtree that tiles can be added.
+         */
+        unsigned int getMaxLevel() const { return _maxLevel;}
+        void setMaxLevel( unsigned int value) { _maxLevel = value;}
+
+        /**
+         * The maximum number of features that should be added to a tile before moving onto the next level.
+         * Once the max level is reached, features will simply be added to it no matter how many features are in the tile.
+         */
+        unsigned int getMaxFeatures() const { return _maxFeatures;}
+        void setMaxFeatures( unsigned int value ) { _maxFeatures = value;}
+
+        /**
+         * The query to run on the FeatureSource.
+         */
+        const Query& getQuery() const { return _query;}
+        void setQuery( const Query& query) { _query = query;}
+
+        /**
+         * The cropping method to use when processing the features
+         * If the cropping method is set to METHOD_CROP features can be added to multiple tiles.
+         */
+        CropFilter::Method getMethod() const { return _method;}
+        void setMethod( CropFilter::Method method) { _method = method;}
+
+        /**
+         * The SRS to use for the output dataset.  If not set the SRS of the FeatureSource wil be used.
+         * Can be any string that will result in a valid osgEarth::SpatialReference (epsg codes, wkt, proj4).
+         */
+        const std::string& getDestSRS() const { return _destSRSString;}
+        void setDestSRS(const std::string& srs ) { _destSRSString = srs; }
+
+        /**
+         * Package the given feature source
+         * @param features
+         *     The feature source to package
+         * @param destination
+         *     The destination directory
+         * @param layername
+         *     The name of the layer
+         * @param description
+         *     Optional description that will be written to the metadata document
+         */
+        void package( FeatureSource* features, const std::string& destination, const std::string& layername, const std::string& description = "" );
+
+
+
+
+    private:
+        unsigned int _firstLevel;
+        unsigned int _maxLevel;
+        unsigned int _maxFeatures;
+        Query _query;
+        CropFilter::Method _method;
+        std::string _destSRSString;
+        osg::ref_ptr< const SpatialReference > _srs;
+
+    };
+
+} } // namespace osgEarth::Util
+
+#endif
diff --git a/src/osgEarthUtil/TFSPackager.cpp b/src/osgEarthUtil/TFSPackager.cpp
new file mode 100644
index 0000000..9e116a9
--- /dev/null
+++ b/src/osgEarthUtil/TFSPackager.cpp
@@ -0,0 +1,369 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/TFSPackager>
+
+#include <osgEarth/Registry>
+#include <osgDB/FileNameUtils>
+#include <osgDB/FileUtils>
+
+#define LC "[TFSPackager] "
+
+using namespace osgEarth;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Util;
+
+/******************************************************************************************/
+class FeatureTileVisitor;
+class FeatureTile;
+
+typedef std::list< osgEarth::Features::FeatureID > FeatureIDList;
+
+class FeatureTile : public osg::Referenced
+{
+public:
+    FeatureTile( const TileKey& key ):
+      _key( key ),
+          _isSplit( false )
+      {        
+      }
+
+      const GeoExtent& getExtent() const
+      {
+          return _key.getExtent();
+      }
+
+      const TileKey& getKey() const
+      {
+          return _key;
+      }
+
+      bool getIsSplit() const { return _isSplit;}
+
+      void split()
+      {
+          if (!_isSplit)
+          {
+              for (unsigned int i = 0; i < 4; ++i)
+              {  
+                  _children[i] = new FeatureTile(_key.createChildKey( i ) );
+              }
+              _isSplit = true;
+          }
+      }
+
+      void accept( FeatureTileVisitor* v);
+
+      void traverse( FeatureTileVisitor* v )
+      {
+          if (_isSplit)
+          {
+              for (unsigned int i = 0; i < 4; ++i)
+              {
+                  _children[i]->accept( v );
+              }
+          }
+      }
+
+      FeatureIDList& getFeatures()
+      {
+          return _features;
+      }
+
+
+private:    
+    FeatureIDList _features;
+    TileKey _key;   
+    osg::ref_ptr<FeatureTile> _children[4];
+    bool _isSplit;
+};
+
+class FeatureTileVisitor : public osg::Referenced
+{
+public:
+    virtual void traverse(FeatureTile* tile)
+    {
+        tile->traverse( this );
+    }
+};
+
+void FeatureTile::accept(FeatureTileVisitor* v)
+{    
+    v->traverse( this );
+}
+
+/******************************************************************************************/
+
+class AddFeatureVisitor : public FeatureTileVisitor
+{
+public:
+    AddFeatureVisitor( Feature* feature, int maxFeatures, int firstLevel, int maxLevel, CropFilter::Method cropMethod):
+      _feature( feature ),
+          _maxFeatures( maxFeatures ),      
+          _maxLevel( maxLevel ),
+          _firstLevel( firstLevel ),
+          _added(false),
+          _numAdded( 0 ),
+          _levelAdded(-1),
+          _cropMethod( cropMethod )
+      {
+
+      }
+
+      virtual void traverse( FeatureTile* tile)
+      {        
+          if (_added && _cropMethod != CropFilter::METHOD_CROPPING) return;
+
+          bool traverse = true;
+
+          GeoExtent featureExtent(_feature->getSRS(), _feature->getGeometry()->getBounds());
+          if (featureExtent.intersects( tile->getExtent()))
+          {
+              //If the node contains the feature, and it doesn't contain the max number of features add it.  If it's already full then 
+              //split it.
+              if (tile->getKey().getLevelOfDetail() >= (unsigned int)_firstLevel && 
+                  (tile->getFeatures().size() < (unsigned int)_maxFeatures || tile->getKey().getLevelOfDetail() == _maxLevel || tile->getKey().getLevelOfDetail() == _levelAdded))
+              {
+                  if (_levelAdded < 0 || _levelAdded == tile->getKey().getLevelOfDetail())
+                  {
+                      osg::ref_ptr< Feature > clone = new Feature( *_feature, osg::CopyOp::DEEP_COPY_ALL );
+                      FeatureList features;
+                      features.push_back( clone );
+
+                      CropFilter cropFilter(_cropMethod);
+                      FilterContext context(0);
+                      context.extent() = tile->getExtent();
+                      cropFilter.push( features, context );
+
+
+                      if (!features.empty() && clone->getGeometry() && clone->getGeometry()->isValid())
+                      {
+                          //tile->getFeatures().push_back( clone );
+                          tile->getFeatures().push_back( clone->getFID() );
+                          _added = true;
+                          _levelAdded = tile->getKey().getLevelOfDetail();
+                          _numAdded++;                   
+                          traverse = false;
+                      }
+                  }
+
+                  if (traverse || _cropMethod == CropFilter::METHOD_CROPPING)
+                  {
+                      tile->traverse( this );
+                  }
+              }
+              else
+              {   
+                  tile->split();
+                  tile->traverse( this );
+              }
+
+          }
+
+
+      }
+
+      int _levelAdded;
+
+      bool _added;
+      int _maxFeatures;
+      int _firstLevel;
+      int _maxLevel;
+      int _numAdded;
+
+      CropFilter::Method _cropMethod;
+
+
+
+      osg::ref_ptr< Feature > _feature;
+};
+
+
+/******************************************************************************************/
+class WriteFeaturesVisitor : public FeatureTileVisitor
+{
+public:
+    WriteFeaturesVisitor(FeatureSource* features, const std::string& dest, CropFilter::Method cropMethod, const SpatialReference* srs):
+      _dest( dest ),
+          _features( features ),
+          _cropMethod( cropMethod ),
+          _srs( srs )
+      {
+
+      }
+
+      virtual void traverse( FeatureTile* tile)
+      {
+          if (tile->getFeatures().size() > 0)
+          {                 
+              //Actually load up the features
+              FeatureList features;
+              for (FeatureIDList::const_iterator i = tile->getFeatures().begin(); i != tile->getFeatures().end(); i++)
+              {
+                  Feature* f = _features->getFeature( *i );                  
+
+                  if (f)
+                  {
+                      //Reproject the feature to the dest SRS if it's not already
+                      if (!f->getSRS()->isEquivalentTo( _srs ) )
+                      {
+                          f->transform( _srs );
+                      }
+                      features.push_back( f );
+                  }
+                  else
+                  {
+                      OE_NOTICE << "couldn't get feature " << *i << std::endl;
+                  }
+              }
+
+              //Need to do the cropping again since these are brand new features coming from the feature source.
+              CropFilter cropFilter(_cropMethod);
+              FilterContext context(0);
+              context.extent() = tile->getExtent();
+              cropFilter.push( features, context );
+
+              std::string contents = Feature::featuresToGeoJSON( features );
+              std::stringstream buf;
+              int x =  tile->getKey().getTileX();
+              unsigned int numRows, numCols;
+              tile->getKey().getProfile()->getNumTiles(tile->getKey().getLevelOfDetail(), numCols, numRows);
+              int y  = numRows - tile->getKey().getTileY() - 1;
+
+              buf << _dest << "/" << tile->getKey().getLevelOfDetail() << "/" << x << "/" << y << ".json";
+              std::string filename = buf.str();
+              //OE_NOTICE << "Writing " << features.size() << " features to " << filename << std::endl;
+
+              if ( !osgDB::fileExists( osgDB::getFilePath(filename) ) )
+                  osgDB::makeDirectoryForFile( filename );
+
+
+              std::fstream output( filename.c_str(), std::ios_base::out );
+              if ( output.is_open() )
+              {
+                  output << contents;
+                  output.flush();
+                  output.close();                
+              }            
+          }
+          tile->traverse( this );        
+      }
+
+      osg::ref_ptr< FeatureSource > _features;
+      std::string _dest;      
+      CropFilter::Method _cropMethod;
+      osg::ref_ptr< const SpatialReference > _srs;
+};
+
+
+
+/******************************************************************************************/
+
+TFSPackager::TFSPackager():
+_firstLevel( 0 ),
+    _maxLevel( 10 ),
+    _maxFeatures( 300 ),
+    _method( CropFilter::METHOD_CENTROID )
+{
+}
+
+void
+    TFSPackager::package( FeatureSource* features, const std::string& destination, const std::string& layername, const std::string& description )
+{   
+    if (!_destSRSString.empty())
+    {
+        _srs = SpatialReference::create( _destSRSString );
+    }
+
+    //Get the destination SRS from the feature source if it's not already set
+    if (!_srs.valid())
+    {
+        _srs = features->getFeatureProfile()->getSRS();
+    }
+
+    //Transform to lat/lon extents
+    GeoExtent extent = features->getFeatureProfile()->getExtent().transform( _srs.get() );
+
+    osg::ref_ptr< const osgEarth::Profile > profile = osgEarth::Profile::create(extent.getSRS(), extent.xMin(), extent.yMin(), extent.xMax(), extent.yMax(), 1, 1);
+
+
+    TileKey rootKey = TileKey(0, 0, 0, profile );    
+
+
+    osg::ref_ptr< FeatureTile > root = new FeatureTile( rootKey );
+    //Loop through all the features and try to insert them into the quadtree
+    osg::ref_ptr< FeatureCursor > cursor = features->createFeatureCursor( _query );
+    int added = 0;
+    int failed = 0;
+    int skipped = 0;
+    int highestLevel = 0;
+
+    while (cursor.valid() && cursor->hasMore())
+    {        
+        osg::ref_ptr< Feature > feature = cursor->nextFeature();
+
+        //Reproject the feature to the dest SRS if it's not already
+        if (!feature->getSRS()->isEquivalentTo( _srs ) )
+        {
+            feature->transform( _srs );
+        }
+
+        if (feature->getGeometry() && feature->getGeometry()->getBounds().valid() && feature->getGeometry()->isValid())
+        {
+
+            AddFeatureVisitor v(feature.get(), _maxFeatures, _firstLevel, _maxLevel, _method);
+            root->accept( &v );
+            if (!v._added)
+            {
+                OE_NOTICE << "Failed to add feature " << feature->getFID() << std::endl;
+                failed++;
+            }
+            else
+            {                
+                if (highestLevel < v._levelAdded)
+                {
+                    highestLevel = v._levelAdded;
+                }
+                added++;
+                OE_DEBUG << "Added " << added << std::endl;
+            }   
+        }
+        else
+        {
+            OE_NOTICE << "Skipping feature " << feature->getFID() << " with null or invalid geometry" << std::endl;
+            skipped++;
+        }
+    }   
+    OE_NOTICE << "Added=" << added << " Skipped=" << skipped << " Failed=" << failed << std::endl;
+
+    WriteFeaturesVisitor write(features, destination, _method, _srs);
+    root->accept( &write );
+
+    //Write out the meta doc
+    TFSLayer layer;
+    layer.setTitle( layername );
+    layer.setAbstract( description );
+    layer.setFirstLevel( _firstLevel );
+    layer.setMaxLevel( highestLevel );
+    layer.setExtent( profile->getExtent() );
+    layer.setSRS( _srs.get() );
+    TFSReaderWriter::write( layer, osgDB::concatPaths( destination, "tfs.xml"));
+
+}
+
diff --git a/src/osgEarthUtil/TMS b/src/osgEarthUtil/TMS
new file mode 100644
index 0000000..0c4fd05
--- /dev/null
+++ b/src/osgEarthUtil/TMS
@@ -0,0 +1,447 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+
+
+/**
+ * These classes assist in dealing with the Tile Map Service specification
+ * (http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification)
+ */
+
+#ifndef OSGEARTH_UTIL_TMS_H
+#define OSGEARTH_UTIL_TMS_H 1
+
+#include <osgEarthUtil/Common>
+
+#include <vector>
+#include <iostream>
+#include <osgEarth/Profile>
+#include <osgEarth/Common>
+
+#include <osg/Referenced>
+#include <osgDB/ReaderWriter>
+
+#include <osg/Version>
+#if OSG_MIN_VERSION_REQUIRED(2,9,5)
+#include <osgDB/Options>
+#endif
+
+namespace osgEarth 
+{   
+    class TileSource;
+}
+
+namespace osgEarth { namespace Util { namespace TMS
+{
+    /**
+     * TMS tile format.  Specifies format information of a tile
+     */
+    class OSGEARTHUTIL_EXPORT TileFormat
+    {
+    public:
+        TileFormat();
+
+        /** dtor */
+        virtual ~TileFormat() { }
+
+        /**
+        *Gets the width of a tile
+        */
+        unsigned int getWidth() const {return _width;}
+
+        /**
+        *Sets the width of a tile
+        */
+        void setWidth(unsigned int width) {_width = width;}
+
+        /**
+        *Gets the height of a tile
+        */
+        unsigned int getHeight() const {return _height;}
+
+        /**
+        *Sets the height of a tile
+        */
+        void setHeight(unsigned int height) {_height = height;}
+
+        /**
+        *Gets the mime type of a tile
+        */
+        const std::string& getMimeType() const {return _mimeType;}
+
+        /**
+        *Sets the mime type of a tile
+        */
+        void setMimeType(const std::string& mimeType) {_mimeType = mimeType;}
+
+        /**
+        *Gets the extension of a tile
+        */
+        const std::string& getExtension() const {return _extension;}
+
+        /**
+        *Sets the extension of a tile
+        */
+        void setExtension(const std::string& extension) {_extension = extension;}
+
+    protected:
+        unsigned int _width;
+        unsigned int _height;
+        std::string _mimeType;
+        std::string _extension;
+    };
+
+    /**
+    *TMS tile set.  A collection of tiled images at a given zoom level.
+    */
+    class OSGEARTHUTIL_EXPORT TileSet
+    {
+    public:
+        TileSet();
+
+        /** dtor */
+        virtual ~TileSet() { }
+
+        /**
+        *Gets the reference link for this TileSet.
+        */
+        const std::string& getHref() const {return _href;}
+
+        /**
+        *Sets the reference link for this TileSet.
+        */
+        void setHref( const std::string &href) {_href = href;}
+
+        /**
+        *Gets the units per pixel for this TileSet.
+        */
+        double getUnitsPerPixel() const {return _unitsPerPixel;}
+
+        /**
+        *Sets the units per pixel for this TileSet.
+        */
+        void setUnitsPerPixel(double unitsPerPixel) {_unitsPerPixel = unitsPerPixel;}
+
+        /**
+        *Gets the zoom level of this TileSet.
+        */
+        unsigned int getOrder() const {return _order;}
+
+        /**
+        *Sets the zoom level of this TileSet.
+        */
+        void setOrder( int order ) {_order = order;}
+
+    protected:
+        std::string _href;
+        double _unitsPerPixel;
+        unsigned int _order;
+    };
+
+    /**
+    *A TMS tile map
+    */
+    class OSGEARTHUTIL_EXPORT TileMap : public osg::Referenced
+    {
+    public:
+        TileMap();
+
+        /** dtor */
+        virtual ~TileMap() { }
+
+        /**
+        *Gets the tile map service for this TileMap
+        */
+        const std::string& getTileMapService() const {return _tileMapService;}
+
+        /**
+        *Sets the tile map service for this TileMap
+        */
+        void setTileMapService(const std::string& tileMapService) {_tileMapService = tileMapService;}
+
+        /**
+        *Gets the version of this TileMap
+        */
+        const std::string& getVersion() const {return _version;}
+
+        /**
+        *Sets the version of this TileMap
+        */
+        void setVersion(const std::string& version) {_version = version;}
+
+        /**
+        *Gets the title of this TileMap
+        */
+        const std::string& getTitle() const {return _title;}
+
+        /**
+        *Sets the title of this TileMap
+        */
+        void setTitle(const std::string& title) {_title = title;}
+
+        /**
+        *Gets the abstract of this TileMap
+        */
+        const std::string& getAbstract() const {return _abstract;}
+
+        /**
+        *Sets the abstract of this TileMap
+        */
+        void setAbstract(const std::string& value) {_abstract = value;}
+
+        /**
+        *Gets the spatial reference of this TileMap
+        */
+        const std::string& getSRS() const {return _srs;}
+
+        /**
+        *Sets the spatial reference of this TileMap
+        */
+        void setSRS(const std::string& srs) {_srs = srs;}
+
+        /**
+        *Gets the vertical spatial reference of this TileMap
+        */
+        const std::string& getVerticalSRS() const { return _vsrs; }
+
+        /**
+        *Sets the vertical spatial reference of this TileMap
+        */
+        void setVerticalSRS(const std::string& vsrs) { _vsrs = vsrs; }
+
+        /**
+        *Gets the filename that this TileMap was loaded from
+        */
+        const std::string& getFilename() const {return _filename;}
+
+        /**
+        *Sets the filename that this TileMap was loaded from
+        */
+        void setFilename(const std::string& filename) {_filename = filename;}
+
+        /**
+        *Gets the minimum zoom level that this TileMap has valid data for
+        */
+        unsigned int getMinLevel() const {return _minLevel;}
+
+        /**
+        *Gets the maximum level that this TileMap has valid data for
+        */
+        unsigned int getMaxLevel() const {return _maxLevel;}
+
+        /**
+        *Computes the minimum and maximum levels of valid data for this TileMap
+        */
+        void computeMinMaxLevel();
+
+        /**
+        *Computes the number of tiles at level 0 from the existing TileSets
+        */
+        void computeNumTiles();
+
+        /**
+        *Gets the x coordinate of the origin of this TileMap
+        */
+        double getOriginX() const {return _originX;}
+
+        /**
+        *Sets the x coordinate of the origin of this TileMap
+        */
+        void setOriginX(double x) {_originX = x;}
+
+        /**
+        *Gets the y coordinate of the origin of this TileMap
+        */
+        double getOriginY() const {return _originY;}
+
+        /**
+        *Sets the y coordinate of the origin of this TileMap
+        */
+        void setOriginY(double y) {_originY = y;}
+
+        /**
+        *Sets the origin of this TileMap
+        *
+        *@param x
+        *       The origin's x coordinate
+        *@param y
+        *       The origin's y coordinate
+        */
+        void setOrigin(double x, double y);
+
+        /**
+        *Gets the extents of this TileMap
+        *@param minX
+        *       The minimum x coordinate of the extents
+        *@param minY
+        *       The minimum y coordinate of the extents
+        *@param maxX
+        *       The maximum x coordinate of the extents
+        *@param maxY
+        *       The maximum y coordinate of the extents
+        */
+        void getExtents( double &minX, double &minY, double &maxX, double &maxY) const;
+
+        /**
+        *Sets the extents of this TileMap
+        *@param minX
+        *       The minimum x coordinate of the extents
+        *@param minY
+        *       The minimum y coordinate of the extents
+        *@param maxX
+        *       The maximum x coordinate of the extents
+        *@param maxY
+        *       The maximum y coordinate of the extents
+        */
+        void setExtents( double minX, double minY, double maxX, double maxY);
+
+        /**
+        *Gets the number of tiles wide at lod 0
+        */
+        unsigned int getNumTilesWide() const { return _numTilesWide; }
+
+        /**
+        *Sets the number of tiles wide at lod 0
+        */
+        void setNumTilesWide(unsigned int w) { _numTilesWide = w; }
+
+        /**
+        *Gets the number of tiles high at lod 0
+        */
+        unsigned int getNumTilesHigh() const { return _numTilesHigh; }
+
+        /**
+        *Sets the number of tiles high at lod 0
+        */
+        void setNumTilesHigh(unsigned int h) {_numTilesHigh = h;}
+
+        osgEarth::Profile::ProfileType getProfileType() const {return _profile_type;}
+        void setProfileType( osgEarth::Profile::ProfileType type ) {_profile_type = type;}
+
+        const Profile* createProfile() const;
+
+        /** Gets the TileFormat for this TileMap */
+        TileFormat& getFormat() {return _format;}
+        
+        /** Gets the TileFormat for this TileMap */
+        const TileFormat& getFormat() const {return _format;}
+
+
+        /** A list of TileSets */
+        typedef std::vector<TileSet> TileSetList;
+
+        /** Gets the TileSets for this TileMap */
+        TileSetList& getTileSets() {return _tileSets;}
+
+        /** Gets the TileSets for this TileMap */
+        const TileSetList& getTileSets() const {return _tileSets;}
+
+        DataExtentList& getDataExtents() { return _dataExtents;}
+        const DataExtentList& getDataExtents() const { return _dataExtents;}
+
+       
+        /**
+        *Gets a URL string that can be used to retrieve the image for the given TileKey
+        *@param tileKey
+        *       The TileKey to get the URL for.
+        *@param invertY
+        *       If false, treat tile 0,0 as the lower left tile in the the map.  If true, treat 0,0 as the top left tile in the map.
+        *@returns
+        *       The URL if the data intersects the TileKey.
+        */
+        std::string getURL(const osgEarth::TileKey& tileKey, bool invertY);
+
+        /**
+        *Determines whether or not the given TileKey intersects the TileMap
+        */
+        bool intersectsKey(const osgEarth::TileKey& tileKey);
+
+        /**
+        *Automatically generates a number of TileSets
+        */
+        void generateTileSets(unsigned int numLevels = 20);
+
+        /**
+        * Creates a TileMap corresponding to one of osgEarth's built-in profile types
+        */
+        static TileMap* create(
+            const std::string& url,
+            const Profile* profile,
+            //osgEarth::Profile::ProfileType type,
+            const std::string& format,
+            int tile_width,
+            int tile_height );
+
+        /**
+         * Creates a TileMap based on the parameters of a TileSource
+         */
+        static TileMap* create(
+            const TileSource* tileSource,
+            const Profile*    profile );
+
+    protected:
+        std::string _tileMapService;
+        std::string _version;
+        std::string _title;
+        std::string _abstract;
+        std::string _srs;
+        std::string _vsrs;
+
+
+        double _originX, _originY;
+
+        double _minX, _minY, _maxX, _maxY;
+
+        TileSetList _tileSets;
+
+        TileFormat _format;
+
+        std::string _filename;
+
+        unsigned int _minLevel;
+        unsigned int _maxLevel;
+
+        unsigned int _numTilesWide;
+        unsigned int _numTilesHigh;
+
+        osgEarth::Profile::ProfileType _profile_type;        
+
+        DataExtentList _dataExtents;
+    };
+
+    class OSGEARTHUTIL_EXPORT TileMapReaderWriter
+    {
+    public:
+        static TileMap* read( const std::string &location, const osgDB::ReaderWriter::Options* options );
+        static TileMap* read( std::istream &in );
+        static TileMap* read( const Config& conf );
+
+        static void write(const TileMap* tileMap, const std::string& location);
+        static void write(const TileMap* tileMap, std::ostream& output);
+
+    private:
+        TileMapReaderWriter();
+        TileMapReaderWriter(const TileMapReaderWriter &tmr);
+
+        /** dtor */
+        virtual ~TileMapReaderWriter() { }
+    };
+
+} } } // namespace osgEarth::Util::TMS
+
+#endif //OSGEARTHUTIL_TMS_H
diff --git a/src/osgEarthUtil/TMS.cpp b/src/osgEarthUtil/TMS.cpp
new file mode 100644
index 0000000..d2258c7
--- /dev/null
+++ b/src/osgEarthUtil/TMS.cpp
@@ -0,0 +1,672 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+
+#include <osgEarthUtil/TMS>
+#include <osgEarth/Common>
+#include <osgEarth/GeoData>
+#include <osgEarth/XmlUtils>
+#include <osgEarth/TileKey>
+#include <osgEarth/TileSource>
+#include <osgEarth/Registry>
+#include <osgEarth/StringUtils>
+#include <osgEarth/Profile>
+
+#include <osg/Notify>
+#include <osgDB/FileUtils>
+#include <osgDB/FileNameUtils>
+
+#include <limits.h>
+#include <iomanip>
+
+using namespace osgEarth;
+using namespace osgEarth::Util::TMS;
+
+#define LC "[TMS] "
+
+static std::string toString(double value, int precision = 25)
+{
+    std::stringstream out;
+    out << std::fixed << std::setprecision(precision) << value;
+	std::string outStr;
+	outStr = out.str();
+    return outStr;
+}
+
+TileFormat::TileFormat():
+_width(0),
+_height(0)
+{
+}
+
+TileSet::TileSet():
+_unitsPerPixel(0.0),
+_order(0)
+{
+}
+
+TileMap::TileMap():
+_originX(0),
+_originY(0),
+_minX(0.0),
+_minY(0.0),
+_maxX(0.0),
+_maxY(0.0),
+_minLevel(0),
+_maxLevel(0),
+_numTilesHigh(-1),
+_numTilesWide(-1)
+{   
+}
+
+void TileMap::setOrigin(double x, double y)
+{
+    _originX = x;
+    _originY = y;
+}
+
+void TileMap::getExtents( double &minX, double &minY, double &maxX, double &maxY) const
+{
+    minX = _minX;
+    minY = _minY;
+    maxX = _maxX;
+    maxY = _maxY;
+}
+
+void TileMap::setExtents( double minX, double minY, double maxX, double maxY)
+{
+    _minX = minX;
+    _minY = minY;
+    _maxX = maxX;
+    _maxY = maxY;
+}
+
+
+
+
+#define ELEM_TILEMAP "tilemap"
+#define ELEM_TITLE "title"
+#define ELEM_ABSTRACT "abstract"
+#define ELEM_SRS "srs"
+#define ELEM_VERTICAL_SRS "vsrs"
+#define ELEM_BOUNDINGBOX "boundingbox"
+#define ELEM_ORIGIN "origin"
+#define ELEM_TILE_FORMAT "tileformat"
+#define ELEM_TILESETS "tilesets"
+#define ELEM_TILESET "tileset"
+#define ELEM_DATA_EXTENTS "dataextents"
+#define ELEM_DATA_EXTENT "dataextent"
+
+#define ATTR_VERSION "version"
+#define ATTR_TILEMAPSERVICE "tilemapservice"
+
+#define ATTR_MINX "minx"
+#define ATTR_MINY "miny"
+#define ATTR_MAXX "maxx"
+#define ATTR_MAXY "maxy"
+#define ATTR_X "x"
+#define ATTR_Y "y"
+#define ATTR_MIN_LEVEL "minlevel"
+#define ATTR_MAX_LEVEL "maxlevel"
+
+#define ATTR_WIDTH "width"
+#define ATTR_HEIGHT "height"
+#define ATTR_MIME_TYPE "mime-type"
+#define ATTR_EXTENSION "extension"
+
+#define ATTR_PROFILE "profile"
+
+#define ATTR_HREF "href"
+#define ATTR_ORDER "order"
+#define ATTR_UNITSPERPIXEL "units-per-pixel"
+
+bool intersects(const double &minXa, const double &minYa, const double &maxXa, const double &maxYa,
+                const double &minXb, const double &minYb, const double &maxXb, const double &maxYb)
+{
+    return  osg::maximum(minXa, minXb) <= osg::minimum(maxXa,maxXb) &&
+            osg::maximum(minYa, minYb) <= osg::minimum(maxYa, maxYb);
+}
+
+
+
+void TileMap::computeMinMaxLevel()
+{
+    _minLevel = INT_MAX;
+    _maxLevel = 0;
+    for (TileSetList::iterator itr = _tileSets.begin(); itr != _tileSets.end(); ++itr)
+    { 
+        if (itr->getOrder() < _minLevel) _minLevel = itr->getOrder();
+        if (itr->getOrder() > _maxLevel) _maxLevel = itr->getOrder();
+    }
+}
+
+void TileMap::computeNumTiles()
+{
+    _numTilesWide = -1;
+    _numTilesHigh = -1;
+
+    if (_tileSets.size() > 0)
+    {
+        unsigned int level = _tileSets[0].getOrder();
+        double res = _tileSets[0].getUnitsPerPixel();
+
+        _numTilesWide = (int)((_maxX - _minX) / (res * _format.getWidth()));
+        _numTilesHigh = (int)((_maxY - _minY) / (res * _format.getWidth()));
+
+        //In case the first level specified isn't level 0, compute the number of tiles at level 0
+        for (unsigned int i = 0; i < level; i++)
+        {
+            _numTilesWide /= 2;
+            _numTilesHigh /= 2;
+        }
+
+        OE_DEBUG << LC << "TMS has " << _numTilesWide << ", " << _numTilesHigh << " tiles at level 0 " <<  std::endl;
+    }
+}
+
+const Profile*
+TileMap::createProfile() const
+{
+    osg::ref_ptr< SpatialReference > spatialReference =  osgEarth::SpatialReference::create(_srs);
+
+    if (getProfileType() == Profile::TYPE_GEODETIC)
+    {
+        return osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+    }
+    else if (getProfileType() == Profile::TYPE_MERCATOR)
+    {
+        return osgEarth::Registry::instance()->getSphericalMercatorProfile();
+    }    
+    else if (spatialReference->isSphericalMercator())
+    {
+        //HACK:  Some TMS sources, most notably TileCache, use a global mercator extent that is very slightly different than
+        //       the automatically computed mercator bounds which can cause rendering issues due to the some texture coordinates
+        //       crossing the dateline.  If the incoming bounds are nearly the same as our definion of global mercator, just use our definition.
+        double eps = 0.01;
+        osg::ref_ptr< const Profile > merc = osgEarth::Registry::instance()->getSphericalMercatorProfile();
+        if (_numTilesWide == 1 && _numTilesHigh == 1 &&
+            osg::equivalent(merc->getExtent().xMin(), _minX, eps) && 
+            osg::equivalent(merc->getExtent().yMin(), _minY, eps) &&
+            osg::equivalent(merc->getExtent().xMax(), _maxX, eps) &&
+            osg::equivalent(merc->getExtent().yMax(), _maxY, eps))
+        {            
+            return osgEarth::Registry::instance()->getSphericalMercatorProfile();
+        }
+    }
+
+    else if ( 
+        spatialReference->isGeographic()  && 
+        !spatialReference->isPlateCarre() &&
+        osg::equivalent(_minX, -180.) &&
+        osg::equivalent(_maxX,  180.) &&
+        osg::equivalent(_minY,  -90.) &&
+        osg::equivalent(_maxY,   90.) )
+    {
+        return osgEarth::Registry::instance()->getGlobalGeodeticProfile();
+    }
+    else if ( _profile_type == Profile::TYPE_MERCATOR )
+    {
+        return osgEarth::Registry::instance()->getSphericalMercatorProfile();
+    }    
+
+    // everything else is a "LOCAL" profile.
+    return Profile::create(
+        _srs,
+        _minX, _minY, _maxX, _maxY,
+        _vsrs,
+        osg::maximum(_numTilesWide, (unsigned int)1),
+        osg::maximum(_numTilesHigh, (unsigned int)1) );
+}
+
+
+std::string
+TileMap::getURL(const osgEarth::TileKey& tilekey, bool invertY)
+{
+    if (!intersectsKey(tilekey))
+    {
+        //OE_NOTICE << LC << "No key intersection for tile key " << tilekey.str() << std::endl;
+        return "";
+    }
+
+    unsigned int zoom = tilekey.getLevelOfDetail();
+
+    unsigned int x, y;
+    tilekey.getTileXY(x, y);
+
+    //Some TMS like services swap the Y coordinate so 0,0 is the upper left rather than the lower left.  The normal TMS
+    //specification has 0,0 at the bottom left, so inverting Y will make 0,0 in the upper left.
+    //http://code.google.com/apis/maps/documentation/overlays.html#Google_Maps_Coordinates
+    if (!invertY)
+    {
+        unsigned int numRows, numCols;
+        tilekey.getProfile()->getNumTiles(tilekey.getLevelOfDetail(), numCols, numRows);
+        y  = numRows - y - 1;
+    }
+
+    //OE_NOTICE << LC << "KEY: " << tilekey.str() << " level " << zoom << " ( " << x << ", " << y << ")" << std::endl;
+
+    //Select the correct TileSet
+    if ( _tileSets.size() > 0 )
+    {
+        for (TileSetList::iterator itr = _tileSets.begin(); itr != _tileSets.end(); ++itr)
+        { 
+            if (itr->getOrder() == zoom)
+            {
+                std::stringstream ss;
+                std::string path = osgDB::getFilePath(_filename);
+                ss << path << "/" << zoom << "/" << x << "/" << y << "." << _format.getExtension();
+                //OE_NOTICE << LC << "Returning URL " << ss.str() << std::endl;
+                std::string ssStr;
+				ssStr = ss.str();
+				return ssStr;
+            }
+        }
+    }
+    else // Just go with it. No way of knowing the max level.
+    {
+        std::stringstream ss;
+        std::string path = osgDB::getFilePath(_filename);
+        ss << path << "/" << zoom << "/" << x << "/" << y << "." << _format.getExtension();
+        std::string ssStr;
+		ssStr = ss.str();
+		return ssStr;        
+    }
+
+    return "";
+}
+
+bool
+TileMap::intersectsKey(const TileKey& tilekey)
+{
+    osg::Vec3d keyMin, keyMax;
+
+    //double keyMinX, keyMinY, keyMaxX, keyMaxY;
+
+    //Check to see if the key overlaps the bounding box using lat/lon.  This is necessary to check even in 
+    //Mercator situations in case the BoundingBox is described using lat/lon coordinates such as those produced by GDAL2Tiles
+    //This should be considered a bug on the TMS production side, but we can work around it for now...
+    tilekey.getExtent().getBounds(keyMin.x(), keyMin.y(), keyMax.x(), keyMax.y());
+    //tilekey.getExtent().getBounds(keyMinX, keyMinY, keyMaxX, keyMaxY);
+
+    bool inter = intersects(_minX, _minY, _maxX, _maxY, keyMin.x(), keyMin.y(), keyMax.x(), keyMax.y() ); //keyMinX, keyMinY, keyMaxX, keyMaxY);
+
+    if (!inter && tilekey.getProfile()->getSRS()->isSphericalMercator())
+    {
+        tilekey.getProfile()->getSRS()->transform(keyMin, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMin );
+        tilekey.getProfile()->getSRS()->transform(keyMax, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMax );
+        inter = intersects(_minX, _minY, _maxX, _maxY, keyMin.x(), keyMin.y(), keyMax.x(), keyMax.y() );
+        //tilekey.getProfile()->getSRS()->transform2D(keyMinX, keyMinY, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMinX, keyMinY);
+        //tilekey.getProfile()->getSRS()->transform2D(keyMaxX, keyMaxY, tilekey.getProfile()->getSRS()->getGeographicSRS(), keyMaxX, keyMaxY);
+        //inter = intersects(_minX, _minY, _maxX, _maxY, keyMinX, keyMinY, keyMaxX, keyMaxY);
+    }
+
+    return inter;
+}
+
+void
+TileMap::generateTileSets(unsigned int numLevels)
+{
+    osg::ref_ptr<const Profile> profile = createProfile();
+
+    _tileSets.clear();
+
+    double width = (_maxX - _minX);
+//    double height = (_maxY - _minY);
+
+    for (unsigned int i = 0; i < numLevels; ++i)
+    {
+        unsigned int numCols, numRows;
+        profile->getNumTiles(i, numCols, numRows);
+        double res = (width / (double)numCols) / (double)_format.getWidth();
+
+        TileSet ts;
+        ts.setUnitsPerPixel(res);
+        ts.setOrder(i);
+        _tileSets.push_back(ts);
+    }
+}
+
+std::string getHorizSRSString(const osgEarth::SpatialReference* srs)
+{
+    if (srs->isSphericalMercator())
+    {
+        return "EPSG:900913";
+    }
+    else if (srs->isGeographic())
+    {
+        return "EPSG:4326";
+    }
+    else
+    {
+        return srs->getHorizInitString(); //srs();
+    }	
+}
+
+
+TileMap*
+TileMap::create(const std::string& url,
+                const Profile* profile,
+                const std::string& format,
+                int tile_width,
+                int tile_height)
+{
+    //Profile profile(type);
+
+    const GeoExtent& ex = profile->getExtent();
+
+    TileMap* tileMap = new TileMap();
+    tileMap->setProfileType(profile->getProfileType()); //type);
+    tileMap->setExtents(ex.xMin(), ex.yMin(), ex.xMax(), ex.yMax());
+    tileMap->setOrigin(ex.xMin(), ex.yMin());
+    tileMap->_filename = url;
+    tileMap->_srs = getHorizSRSString(profile->getSRS());
+    tileMap->_vsrs = profile->getSRS()->getVertInitString();
+    //tileMap->_vsrs = profile->getVerticalSRS() ? profile->getVerticalSRS()->getInitString() : "";
+    tileMap->_format.setWidth( tile_width );
+    tileMap->_format.setHeight( tile_height );
+    tileMap->_format.setExtension( format );
+	profile->getNumTiles( 0, tileMap->_numTilesWide, tileMap->_numTilesHigh );
+
+	tileMap->generateTileSets();
+	tileMap->computeMinMaxLevel();
+        
+    return tileMap;
+}
+
+TileMap* TileMap::create(const TileSource* tileSource, const Profile* profile)
+{
+    TileMap* tileMap = new TileMap();
+
+    tileMap->setTitle( tileSource->getName() );
+    tileMap->setProfileType( profile->getProfileType() );
+
+    const GeoExtent& ex = profile->getExtent();
+    
+    tileMap->_srs = getHorizSRSString(profile->getSRS()); //srs();
+    tileMap->_vsrs = profile->getSRS()->getVertInitString(); //profile->getVerticalSRS() ? profile->getVerticalSRS()->getInitString() : 0L;
+    tileMap->_originX = ex.xMin();
+    tileMap->_originY = ex.yMin();
+    tileMap->_minX = ex.xMin();
+    tileMap->_minY = ex.yMin();
+    tileMap->_maxX = ex.xMax();
+    tileMap->_maxY = ex.yMax();
+    profile->getNumTiles( 0, tileMap->_numTilesWide, tileMap->_numTilesHigh );
+
+    tileMap->_format.setWidth( tileSource->getPixelsPerTile() );
+    tileMap->_format.setHeight( tileSource->getPixelsPerTile() );
+    tileMap->_format.setExtension( tileSource->getExtension() );
+
+    tileMap->generateTileSets();
+
+    return tileMap;
+}
+
+
+
+//----------------------------------------------------------------------------
+
+
+TileMap* 
+TileMapReaderWriter::read( const std::string& location, const osgDB::ReaderWriter::Options* options )
+{
+    TileMap* tileMap = NULL;
+
+    ReadResult r = URI(location).readString();
+    if ( r.failed() )
+    {
+        OE_WARN << LC << "Failed to read TMS tile map file from " << location << std::endl;
+        return 0L;
+    }
+    
+    // Read tile map into a Config:
+    Config conf;
+    std::stringstream buf( r.getString() );
+    conf.fromXML( buf );
+
+    // parse that into a tile map:        
+    tileMap = TileMapReaderWriter::read( conf );
+
+    if (tileMap)
+    {
+        tileMap->setFilename( location );
+    }
+
+    return tileMap;
+}
+
+TileMap*
+TileMapReaderWriter::read( const Config& conf )
+{
+    const Config* tileMapConf = conf.find( ELEM_TILEMAP );
+    if ( !tileMapConf )
+    {
+        OE_WARN << LC << "Could not find root TileMap element " << std::endl;
+        return 0L;
+    }
+
+    TileMap* tileMap = new TileMap();
+
+    tileMap->setVersion       ( tileMapConf->value(ATTR_VERSION) );
+    tileMap->setTileMapService( tileMapConf->value(ATTR_TILEMAPSERVICE) ); 
+    tileMap->setTitle         ( tileMapConf->value(ELEM_TITLE) );
+    tileMap->setAbstract      ( tileMapConf->value(ELEM_ABSTRACT) );
+    tileMap->setSRS           ( tileMapConf->value(ELEM_SRS) );
+    tileMap->setVerticalSRS   ( tileMapConf->value(ELEM_VERTICAL_SRS) );
+
+    const Config* bboxConf = tileMapConf->find( ELEM_BOUNDINGBOX );
+    if ( bboxConf )
+    {
+        double minX = bboxConf->value<double>( ATTR_MINX, 0.0 );
+        double minY = bboxConf->value<double>( ATTR_MINY, 0.0 );
+        double maxX = bboxConf->value<double>( ATTR_MAXX, 0.0 );
+        double maxY = bboxConf->value<double>( ATTR_MAXY, 0.0 );
+        tileMap->setExtents( minX, minY, maxX, maxY);
+    }
+
+    //Read the origin
+    const Config* originConf = tileMapConf->find(ELEM_ORIGIN);
+    if ( originConf )
+    {
+        tileMap->setOriginX( originConf->value<double>( ATTR_X, 0.0) );
+        tileMap->setOriginY( originConf->value<double>( ATTR_Y, 0.0) );
+    }
+
+    //Read the tile format
+    const Config* formatConf = tileMapConf->find( ELEM_TILE_FORMAT );
+    if ( formatConf )
+    {
+        tileMap->getFormat().setExtension( formatConf->value(ATTR_EXTENSION) );
+        tileMap->getFormat().setMimeType ( formatConf->value(ATTR_MIME_TYPE) );
+        tileMap->getFormat().setWidth    ( formatConf->value<unsigned>(ATTR_WIDTH,  256) );
+        tileMap->getFormat().setHeight   ( formatConf->value<unsigned>(ATTR_HEIGHT, 256) );
+    }
+
+    //Read the tilesets
+    const Config* tileSetsConf = tileMapConf->find(ELEM_TILESETS);
+    if ( tileSetsConf )
+    {
+        //Read the profile
+        std::string profile = tileSetsConf->value(ATTR_PROFILE);
+        if (profile == "global-geodetic") tileMap->setProfileType( Profile::TYPE_GEODETIC );
+        else if (profile == "global-mercator") tileMap->setProfileType( Profile::TYPE_MERCATOR );
+        else if (profile == "local") tileMap->setProfileType( Profile::TYPE_LOCAL );
+        else tileMap->setProfileType( Profile::TYPE_UNKNOWN );
+
+        //Read each TileSet
+        const ConfigSet& setConfs = tileSetsConf->children(ELEM_TILESET);
+        for( ConfigSet::const_iterator i = setConfs.begin(); i != setConfs.end(); ++i )
+        {
+            const Config& conf = *i;
+            TileSet tileset;
+            tileset.setHref( conf.value(ATTR_HREF) );
+            tileset.setOrder( conf.value<unsigned>(ATTR_ORDER, ~0) );
+            tileset.setUnitsPerPixel( conf.value<double>(ATTR_UNITSPERPIXEL, 0.0) );
+            tileMap->getTileSets().push_back(tileset);
+        }
+    }
+
+    //Try to compute the profile based on the SRS if there was no PROFILE tag given
+    if (tileMap->getProfileType() == Profile::TYPE_UNKNOWN && !tileMap->getSRS().empty())
+    {
+        tileMap->setProfileType( Profile::getProfileTypeFromSRS(tileMap->getSRS()) );
+    }
+
+    tileMap->computeMinMaxLevel();
+    tileMap->computeNumTiles();
+
+    //Read the data areas
+    const Config* extentsConf = tileMapConf->find(ELEM_DATA_EXTENTS);
+    if ( extentsConf )
+    {
+        osg::ref_ptr< const osgEarth::Profile > profile = tileMap->createProfile();
+        OE_DEBUG << LC << "Found DataExtents " << std::endl;
+        const ConfigSet& children = extentsConf->children(ELEM_DATA_EXTENT);
+        for( ConfigSet::const_iterator i = children.begin(); i != children.end(); ++i )
+        {
+            const Config& conf = *i;
+            double minX = conf.value<double>(ATTR_MINX, 0.0);
+            double minY = conf.value<double>(ATTR_MINY, 0.0);
+            double maxX = conf.value<double>(ATTR_MAXX, 0.0);
+            double maxY = conf.value<double>(ATTR_MAXY, 0.0);
+
+            unsigned int maxLevel = conf.value<unsigned>(ATTR_MAX_LEVEL, 0);
+
+            //OE_DEBUG << LC << "Read area " << minX << ", " << minY << ", " << maxX << ", " << maxY << ", minlevel=" << minLevel << " maxlevel=" << maxLevel << std::endl;
+
+            if ( maxLevel > 0 )
+                tileMap->getDataExtents().push_back( DataExtent(GeoExtent(profile->getSRS(), minX, minY, maxX, maxY), 0, maxLevel));
+            else
+                tileMap->getDataExtents().push_back( DataExtent(GeoExtent(profile->getSRS(), minX, minY, maxX, maxY), 0) );
+        }
+    }
+
+
+    return tileMap;
+}
+
+static XmlDocument*
+tileMapToXmlDocument(const TileMap* tileMap)
+{
+    //Create the root XML document
+    osg::ref_ptr<XmlDocument> doc = new XmlDocument();
+    doc->setName( ELEM_TILEMAP );
+    
+    //Create the root node
+    //osg::ref_ptr<XmlElement> e_tile_map = new XmlElement( ELEM_TILEMAP );
+    //doc->getChildren().push_back( e_tile_map.get() );
+
+    doc->getAttrs()[ ATTR_VERSION ] = tileMap->getVersion();
+    doc->getAttrs()[ ATTR_TILEMAPSERVICE ] = tileMap->getTileMapService();
+  
+    doc->addSubElement( ELEM_TITLE, tileMap->getTitle() );
+    doc->addSubElement( ELEM_ABSTRACT, tileMap->getAbstract() );
+    doc->addSubElement( ELEM_SRS, tileMap->getSRS() );
+    doc->addSubElement( ELEM_VERTICAL_SRS, tileMap->getVerticalSRS() );
+
+    osg::ref_ptr<XmlElement> e_bounding_box = new XmlElement( ELEM_BOUNDINGBOX );
+    double minX, minY, maxX, maxY;
+    tileMap->getExtents( minX, minY, maxX, maxY );
+    e_bounding_box->getAttrs()[ATTR_MINX] = toString(minX);
+    e_bounding_box->getAttrs()[ATTR_MINY] = toString(minY);
+    e_bounding_box->getAttrs()[ATTR_MAXX] = toString(maxX);
+    e_bounding_box->getAttrs()[ATTR_MAXY] = toString(maxY);
+    doc->getChildren().push_back(e_bounding_box.get() );
+
+    osg::ref_ptr<XmlElement> e_origin = new XmlElement( ELEM_ORIGIN );
+    e_origin->getAttrs()[ATTR_X] = toString(tileMap->getOriginX());
+    e_origin->getAttrs()[ATTR_Y] = toString(tileMap->getOriginY());
+    doc->getChildren().push_back(e_origin.get());
+
+    osg::ref_ptr<XmlElement> e_tile_format = new XmlElement( ELEM_TILE_FORMAT );
+    e_tile_format->getAttrs()[ ATTR_EXTENSION ] = tileMap->getFormat().getExtension();
+    e_tile_format->getAttrs()[ ATTR_MIME_TYPE ] = tileMap->getFormat().getMimeType();
+    e_tile_format->getAttrs()[ ATTR_WIDTH ] = toString<unsigned int>(tileMap->getFormat().getWidth());
+    e_tile_format->getAttrs()[ ATTR_HEIGHT ] = toString<unsigned int>(tileMap->getFormat().getHeight());
+    doc->getChildren().push_back(e_tile_format.get());
+
+    osg::ref_ptr< const osgEarth::Profile > profile = tileMap->createProfile();
+
+    osg::ref_ptr<XmlElement> e_tile_sets = new XmlElement ( ELEM_TILESETS );
+    std::string profileString = "none";
+    if (profile->isEquivalentTo(osgEarth::Registry::instance()->getGlobalGeodeticProfile()))
+    {
+        profileString = "global-geodetic";
+    }
+    else if (profile->isEquivalentTo(osgEarth::Registry::instance()->getGlobalMercatorProfile()))
+    {
+        profileString = "global-mercator";
+    }
+    else
+    {
+        profileString = "local";
+    }
+    e_tile_sets->getAttrs()[ ATTR_PROFILE ] = profileString;
+
+
+    for (TileMap::TileSetList::const_iterator itr = tileMap->getTileSets().begin(); itr != tileMap->getTileSets().end(); ++itr)
+    {
+        osg::ref_ptr<XmlElement> e_tile_set = new XmlElement( ELEM_TILESET );
+        e_tile_set->getAttrs()[ATTR_HREF] = itr->getHref();
+        e_tile_set->getAttrs()[ATTR_ORDER] = toString<unsigned int>(itr->getOrder());
+        e_tile_set->getAttrs()[ATTR_UNITSPERPIXEL] = toString(itr->getUnitsPerPixel());
+        e_tile_sets->getChildren().push_back( e_tile_set.get() );
+    }
+    doc->getChildren().push_back(e_tile_sets.get());
+
+    //Write out the data areas
+    if (tileMap->getDataExtents().size() > 0)
+    {
+        osg::ref_ptr<XmlElement> e_data_extents = new XmlElement( ELEM_DATA_EXTENTS );
+        for (DataExtentList::const_iterator itr = tileMap->getDataExtents().begin(); itr != tileMap->getDataExtents().end(); ++itr)
+        {
+            osg::ref_ptr<XmlElement> e_data_extent = new XmlElement( ELEM_DATA_EXTENT );
+            e_data_extent->getAttrs()[ATTR_MINX] = toString(itr->xMin());
+            e_data_extent->getAttrs()[ATTR_MINY] = toString(itr->yMin());
+            e_data_extent->getAttrs()[ATTR_MAXX] = toString(itr->xMax());
+            e_data_extent->getAttrs()[ATTR_MAXY] = toString(itr->yMax());
+            if ( itr->minLevel().isSet() )
+                e_data_extent->getAttrs()[ATTR_MIN_LEVEL] = toString<unsigned int>(*itr->minLevel());
+            if ( itr->maxLevel().isSet() )
+                e_data_extent->getAttrs()[ATTR_MAX_LEVEL] = toString<unsigned int>(*itr->maxLevel());
+            e_data_extents->getChildren().push_back( e_data_extent );
+        }
+        doc->getChildren().push_back( e_data_extents.get() );
+    }
+    return doc.release();
+}
+
+void
+TileMapReaderWriter::write(const TileMap* tileMap, const std::string &location)
+{
+    std::string path = osgDB::getFilePath(location);
+    if (!osgDB::fileExists(path) && !osgDB::makeDirectory(path))
+    {
+        OE_WARN << LC << "Couldn't create path " << std::endl;
+    }
+    std::ofstream out(location.c_str());
+    write(tileMap, out);
+}
+
+void
+TileMapReaderWriter::write(const TileMap* tileMap, std::ostream &output)
+{
+    osg::ref_ptr<XmlDocument> doc = tileMapToXmlDocument(tileMap);    
+    doc->store(output);
+}
+
+
diff --git a/src/osgEarthUtil/TMSPackager b/src/osgEarthUtil/TMSPackager
new file mode 100644
index 0000000..b63de0d
--- /dev/null
+++ b/src/osgEarthUtil/TMSPackager
@@ -0,0 +1,160 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_TMS_PACKAGER_H
+#define OSGEARTHUTIL_TMS_PACKAGER_H
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/ImageLayer>
+#include <osgEarth/ElevationLayer>
+#include <osgEarth/Profile>
+
+namespace osgEarth { namespace Util
+{
+    /**
+     * Utility that reads tiles from an ImageLayer or ElevationLayer and stores
+     * the resulting data in a disk-based TMS (Tile Map Service) repository.
+     *
+     * See: http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification
+     */
+    class OSGEARTHUTIL_EXPORT TMSPackager
+    {
+    public:
+        /**
+         * Constructs a new packager.
+         * @param profile    Profile of packaged tile data (required)
+         */
+        TMSPackager( const Profile* outProfile );
+
+        /** dtor */
+        virtual ~TMSPackager() { }
+
+        /**
+         * Whether to dump out progress messages 
+         * default = false
+         */
+        void setVerbose( bool value ) { _verbose = value; }
+        bool getVerbose() const { return _verbose; }
+
+        /**
+         * Whether to abort if a tile writing error is encountered
+         * default = true
+         */
+        void setAbortOnError( bool value ) { _abortOnError = value; }
+        bool getAbortOnError() const { return _abortOnError; }
+
+        /**
+         * Maximum level of detail of tiles to package
+         */
+        void setMaxLevel( unsigned value ) { _maxLevel = value; }
+        unsigned getMaxLevel() const { return _maxLevel; }
+
+        /**
+         * Whether to overwrite files that already exist in the repo
+         * default = false
+         */
+        void setOverwrite( bool value ) { _overwrite = value; }
+        bool getOverwrite() const { return _overwrite; }
+
+        /**
+         * Whether to package empty image tiles. An empty tile is a tile
+         * that is fully transparent. By default, the packager discards
+         * them and does not subdivide past them.
+         * default = false
+         */
+        void setKeepEmptyImageTiles( bool value ) { _keepEmptyImageTiles = value; }
+        bool getKeepEmptyImageTiles() const { return _keepEmptyImageTiles; }
+
+        /**
+         * Whether to subdivide single color image tiles. An single color tile is a tile
+         * that is filled with a single color. By default, the packager does not subdivide past them.
+         * default = false
+         */
+        void setSubdivideSingleColorImageTiles( bool value ) { _subdivideSingleColorImageTiles = value; }
+        bool getSubdivideSingleColorImageTiles() const { return _subdivideSingleColorImageTiles; }
+
+        /**
+         * Bounding box to package
+         */
+        void addExtent( const GeoExtent& value );
+
+        /**
+         * Result structure for method calls
+         */
+        struct Result {
+            Result() : ok(true) { }
+            Result(const std::string& m) : message(m), ok(false) { }
+            operator bool() const { return ok; }
+            bool ok;
+            std::string message;
+        };
+
+        /**
+         * Packages an image layer as a TMS repository.
+         * @param layer          Image layer to export
+         * @param rootFolder     Root output folder of TMS repo
+         * @param imageExtension (optional) Force an image type extension (e.g., "jpg")
+         */
+        Result package(
+            ImageLayer*        layer,
+            const std::string& rootFolder,
+            const std::string& imageExtension ="png" );
+
+        /**
+         * Packages an elevation layer as a TMS repository.
+         * @param layer          Image layer to 
+         * @param rootFolder     Root output folder of TMS repo
+         */
+        Result package( 
+            ElevationLayer*    layer,
+            const std::string& rootFolder );
+
+    protected:
+
+        Result packageImageTile(
+            ImageLayer*          layer,
+            const TileKey&       key,
+            const std::string&   rootDir,
+            const std::string&   extension,
+            unsigned&            out_maxLevel );
+
+        Result packageElevationTile(
+            ElevationLayer*      layer,
+            const TileKey&       key,
+            const std::string&   rootDir,
+            const std::string&   extension,
+            unsigned&            out_maxLevel );
+
+        bool shouldPackageKey( 
+            const TileKey&     key ) const;
+
+    protected:
+
+        bool                        _verbose;
+        bool                        _abortOnError;
+        bool                        _overwrite;
+        bool                        _keepEmptyImageTiles;
+        bool                        _subdivideSingleColorImageTiles;
+        unsigned                    _maxLevel;
+        std::vector<GeoExtent>      _extents;
+        osg::ref_ptr<const Profile> _outProfile;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_TMS_PACKAGER_H
diff --git a/src/osgEarthUtil/TMSPackager.cpp b/src/osgEarthUtil/TMSPackager.cpp
new file mode 100644
index 0000000..bd96dec
--- /dev/null
+++ b/src/osgEarthUtil/TMSPackager.cpp
@@ -0,0 +1,439 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/TMSPackager>
+#include <osgEarthUtil/TMS>
+#include <osgEarth/ImageUtils>
+#include <osgEarth/ImageToHeightFieldConverter>
+#include <osgDB/FileUtils>
+#include <osgDB/FileNameUtils>
+#include <osgDB/WriteFile>
+
+#define LC "[TMSPackager] "
+
+using namespace osgEarth::Util;
+using namespace osgEarth;
+
+
+TMSPackager::TMSPackager(const Profile* outProfile) :
+_outProfile                     ( outProfile ),
+_maxLevel                       ( 5 ),
+_verbose                        ( false ),
+_overwrite                      ( false ),
+_keepEmptyImageTiles            ( false ),
+_subdivideSingleColorImageTiles ( false ),
+_abortOnError                   ( true )
+{
+    //nop
+}
+
+
+void
+TMSPackager::addExtent( const GeoExtent& extent )
+{
+    _extents.push_back(extent);
+}
+
+
+bool
+TMSPackager::shouldPackageKey( const TileKey& key ) const
+{
+    // if there are no extent filters, or we're at a sufficiently low level, 
+    // always package the key.
+    if ( _extents.size() == 0 || key.getLevelOfDetail() <= 1 )
+        return true;
+
+    // check for intersection with one of the filter extents.
+    for( std::vector<GeoExtent>::const_iterator i = _extents.begin(); i != _extents.end(); ++i )
+    {
+        if ( i->intersects( key.getExtent() ) )
+            return true;
+    }
+
+    return false;
+}
+
+
+TMSPackager::Result
+TMSPackager::packageImageTile(ImageLayer*          layer,
+                              const TileKey&       key,
+                              const std::string&   rootDir,
+                              const std::string&   extension,
+                              unsigned&            out_maxLevel )
+{
+    unsigned minLevel = layer->getImageLayerOptions().minLevel().isSet() ?
+        *layer->getImageLayerOptions().minLevel() : 0;
+    
+
+    if ( shouldPackageKey(key) && key.getLevelOfDetail() >= minLevel )
+    {
+        unsigned w, h;
+        key.getProfile()->getNumTiles( key.getLevelOfDetail(), w, h );
+
+        std::string path = Stringify() 
+            << rootDir 
+            << "/" << key.getLevelOfDetail() 
+            << "/" << key.getTileX() 
+            << "/" << h - key.getTileY() - 1
+            << "." << extension;
+
+        bool isSingleColor = false;
+        bool tileOK = osgDB::fileExists(path) && !_overwrite;
+        if ( !tileOK )
+        {
+            GeoImage image = layer->createImage( key );
+            if ( image.valid() )
+            {
+                // Check for single color
+                if ( !_subdivideSingleColorImageTiles )
+                {
+                    isSingleColor = ImageUtils::isSingleColorImage(image.getImage());
+                    if ( _verbose )
+                    {
+                        OE_NOTICE << LC << "Not subdividing single color tile " << key.str() << std::endl;
+                    }
+                }
+
+                // check for empty:
+                if ( !_keepEmptyImageTiles && ImageUtils::isEmptyImage(image.getImage()) )
+                {
+                    if ( _verbose )
+                    {
+                        OE_NOTICE << LC << "Skipping empty tile " << key.str() << std::endl;
+                    }
+                }
+                else
+                {
+                    // convert to RGB if necessary
+                    osg::ref_ptr<osg::Image> final = image.getImage();
+                    if ( extension == "jpg" && final->getPixelFormat() != GL_RGB )
+                        final = ImageUtils::convertToRGB8( image.getImage() );
+
+                    // dump it to disk
+                    osgDB::makeDirectoryForFile( path );
+                    tileOK = osgDB::writeImageFile( *final.get(), path );
+
+                    if ( _verbose )
+                    {
+                        if ( tileOK ) {
+                            OE_NOTICE << LC << "Wrote tile " << key.str() << " (" << key.getExtent().toString() << ")" << std::endl;
+                        }
+                        else {
+                            OE_NOTICE << LC << "Error write tile " << key.str() << std::endl;
+                        }
+                    }
+
+                    if ( _abortOnError && !tileOK )
+                    {
+                        return Result( Stringify() << "Aborting, write failed for tile " << key.str() );
+                    }
+                }
+            }
+        }
+        else
+        {
+            if ( _verbose )
+            {
+                OE_NOTICE << LC << "Tile " << key.str() << " already exists" << std::endl;
+            }
+        }
+
+        // increment the maximum detected tile level:
+        if ( tileOK && key.getLevelOfDetail() > out_maxLevel )
+        {
+            out_maxLevel = key.getLevelOfDetail();
+        }
+
+        // see if subdivision should continue.
+        unsigned lod = key.getLevelOfDetail();
+        const ImageLayerOptions& options = layer->getImageLayerOptions();
+
+        unsigned layerMaxLevel = (options.maxLevel().isSet()? *options.maxLevel() : 99);
+        unsigned maxLevel = std::min(_maxLevel, layerMaxLevel);
+        bool subdivide =
+            (options.minLevel().isSet() && lod < *options.minLevel()) ||
+            (tileOK && lod+1 < maxLevel);
+
+        // subdivide if necessary:
+        if ( (subdivide == true) && (isSingleColor == false) )
+        {
+            for( unsigned q=0; q<4; ++q )
+            {
+                TileKey childKey = key.createChildKey(q);
+                Result r = packageImageTile( layer, childKey, rootDir, extension, out_maxLevel );
+                if ( _abortOnError && !r.ok )
+                    return r;
+            }
+        }
+    }
+
+    return Result();
+}
+
+
+TMSPackager::Result
+TMSPackager::packageElevationTile(ElevationLayer*      layer,
+                                  const TileKey&       key,
+                                  const std::string&   rootDir,
+                                  const std::string&   extension,
+                                  unsigned&            out_maxLevel)
+{
+    unsigned minLevel = layer->getElevationLayerOptions().minLevel().isSet() ?
+        *layer->getElevationLayerOptions().minLevel() : 0;
+
+    if ( shouldPackageKey(key) && key.getLevelOfDetail() >= minLevel )
+    {
+        unsigned w, h;
+        key.getProfile()->getNumTiles( key.getLevelOfDetail(), w, h );
+
+        std::string path = Stringify() 
+            << rootDir 
+            << "/" << key.getLevelOfDetail() 
+            << "/" << key.getTileX() 
+            << "/" << h - key.getTileY() - 1
+            << "." << extension;
+
+        bool tileOK = osgDB::fileExists(path) && !_overwrite;
+        if ( !tileOK )
+        {
+
+            GeoHeightField hf = layer->createHeightField( key );
+            if ( hf.valid() )
+            {
+                // convert the HF to an image
+                ImageToHeightFieldConverter conv;
+                osg::ref_ptr<osg::Image> image = conv.convert( hf.getHeightField() );
+
+                // dump it to disk
+                osgDB::makeDirectoryForFile( path );
+                tileOK = osgDB::writeImageFile( *image.get(), path );
+
+                if ( _verbose )
+                {
+                    if ( tileOK ) {
+                        OE_NOTICE << LC << "Wrote tile " << key.str() << " (" << key.getExtent().toString() << ")" << std::endl;
+                    }
+                    else {
+                        OE_NOTICE << LC << "Error write tile " << key.str() << std::endl;
+                    }
+                }
+
+                if ( _abortOnError && !tileOK )
+                {
+                    return Result( Stringify() << "Aborting, write failed for tile " << key.str() );
+                }
+            }
+        }
+        else
+        {
+            if ( _verbose )
+            {
+                OE_NOTICE << LC << "Tile " << key.str() << " already exists" << std::endl;
+            }
+        }
+
+        // increment the maximum detected tile level:
+        if ( tileOK && key.getLevelOfDetail() > out_maxLevel )
+        {
+            out_maxLevel = key.getLevelOfDetail();
+        }
+
+        // see if subdivision should continue.
+        unsigned lod = key.getLevelOfDetail();
+        const ElevationLayerOptions& options = layer->getElevationLayerOptions();
+
+        unsigned layerMaxLevel = (options.maxLevel().isSet()? *options.maxLevel() : 99);
+        unsigned maxLevel = std::min(_maxLevel, layerMaxLevel);
+        bool subdivide =
+            (options.minLevel().isSet() && lod < *options.minLevel()) ||
+            (tileOK && lod+1 < maxLevel);
+
+        // subdivide if necessary:
+        if ( subdivide )
+        {
+            for( unsigned q=0; q<4; ++q )
+            {
+                TileKey childKey = key.createChildKey(q);
+                Result r = packageElevationTile( layer, childKey, rootDir, extension, out_maxLevel );
+                if ( _abortOnError && !r.ok )
+                    return r;
+            }
+        }
+    }
+
+    return Result();
+}
+
+
+TMSPackager::Result
+TMSPackager::package(ImageLayer*        layer,
+                     const std::string& rootFolder,
+                     const std::string& overrideExtension )
+{
+    if ( !layer || !_outProfile.valid() )
+        return Result( "Illegal null layer or profile" );
+
+    // attempt to create the output folder:
+    osgDB::makeDirectory( rootFolder );
+    if ( !osgDB::fileExists( rootFolder ) )
+        return Result( "Unable to create output folder" );
+
+    // collect the root tile keys in preparation for packaging:
+    std::vector<TileKey> rootKeys;
+    _outProfile->getRootKeys( rootKeys );
+
+    if ( rootKeys.size() == 0 )
+        return Result( "Unable to calculate root key set" );
+
+    // fetch one tile to see what the image size should be
+    
+    GeoImage testImage;
+    for( std::vector<TileKey>::iterator i = rootKeys.begin(); i != rootKeys.end() && !testImage.valid(); ++i )
+    {
+        testImage = layer->createImage( *i );
+    }
+    if ( !testImage.valid() )
+        return Result( "Unable to get a test image!" );
+
+    // try to determine the image extension:
+    std::string extension = overrideExtension;
+
+    if ( extension.empty() && testImage.valid() )
+    {
+        extension = toLower( osgDB::getFileExtension( testImage.getImage()->getFileName() ) );
+        if ( extension.empty() )
+        {
+            if ( ImageUtils::hasAlphaChannel(testImage.getImage()) )
+            {
+                extension = "png";
+            }
+            else
+            {
+                extension = "jpg";
+            }
+        }
+    }
+
+    // compute a mime type
+    std::string mimeType;
+    if ( extension == "png" )
+        mimeType = "image/png";
+    else if ( extension == "jpg" || extension == "jpeg" )
+        mimeType = "image/jpeg";
+    else if ( extension == "tif" || extension == "tiff" )
+        mimeType = "image/tiff";
+    else {
+        OE_WARN << LC << "Unable to determine mime-type for extension \"" << extension << "\"" << std::endl;
+    }
+
+    if ( _verbose )
+    {
+        OE_NOTICE << LC << "MIME-TYPE = " << mimeType << ", Extension = " << extension << std::endl;
+    }
+
+    // package the tile hierarchy
+    unsigned maxLevel = 0;
+    for( std::vector<TileKey>::const_iterator i = rootKeys.begin(); i != rootKeys.end(); ++i )
+    {
+        Result r = packageImageTile( layer, *i, rootFolder, extension, maxLevel );
+        if ( _abortOnError && !r.ok )
+            return r;
+    }
+
+    // create the tile map metadata:
+    osg::ref_ptr<TMS::TileMap> tileMap = TMS::TileMap::create(
+        "",
+        _outProfile.get(),
+        extension,
+        testImage.getImage()->s(),
+        testImage.getImage()->t() );
+
+    tileMap->setTitle( layer->getName() );
+    tileMap->setVersion( "1.0.0" );
+    tileMap->getFormat().setMimeType( mimeType );
+    tileMap->generateTileSets( std::min(23u, maxLevel+1) );
+
+    // write out the tilemap catalog:
+    std::string tileMapFilename = osgDB::concatPaths(rootFolder, "tms.xml");
+    TMS::TileMapReaderWriter::write( tileMap.get(), tileMapFilename );
+
+    return Result();
+}
+
+
+TMSPackager::Result
+TMSPackager::package(ElevationLayer*    layer,
+                     const std::string& rootFolder)
+{
+    if ( !layer || !_outProfile.valid() )
+        return Result( "Illegal null layer or profile" );
+
+    // attempt to create the output folder:
+    osgDB::makeDirectory( rootFolder );
+    if ( !osgDB::fileExists( rootFolder ) )
+        return Result( "Unable to create output folder" );
+
+    // collect the root tile keys in preparation for packaging:
+    std::vector<TileKey> rootKeys;
+    _outProfile->getRootKeys( rootKeys );
+
+    if ( rootKeys.size() == 0 )
+        return Result( "Unable to calculate root key set" );
+
+    std::string extension = "tif", mimeType = "image/tiff";
+    if ( _verbose )
+    {
+        OE_NOTICE << LC << "MIME-TYPE = " << mimeType << ", Extension = " << extension << std::endl;
+    }
+
+    // fetch one tile to see what the tile size will be
+    GeoHeightField testHF;
+    for( std::vector<TileKey>::iterator i = rootKeys.begin(); i != rootKeys.end() && !testHF.valid(); ++i )
+    {
+        testHF = layer->createHeightField( *i );
+    }
+    if ( !testHF.valid() )
+        return Result( "Unable to determine heightfield size" );
+
+    unsigned maxLevel = 0;
+    for( std::vector<TileKey>::const_iterator i = rootKeys.begin(); i != rootKeys.end(); ++i )
+    {
+        Result r = packageElevationTile( layer, *i, rootFolder, extension, maxLevel );
+        if ( _abortOnError && !r.ok )
+            return r;
+    }
+
+    // create the tile map metadata:
+    osg::ref_ptr<TMS::TileMap> tileMap = TMS::TileMap::create(
+        "",
+        _outProfile.get(),
+        extension,
+        testHF.getHeightField()->getNumColumns(),
+        testHF.getHeightField()->getNumRows() );
+
+    tileMap->setTitle( layer->getName() );
+    tileMap->setVersion( "1.0.0" );
+    tileMap->getFormat().setMimeType( mimeType );
+    tileMap->generateTileSets( std::min(23u, maxLevel+1) );
+
+    // write out the tilemap catalog:
+    std::string tileMapFilename = osgDB::concatPaths(rootFolder, "tms.xml");
+    TMS::TileMapReaderWriter::write( tileMap.get(), tileMapFilename );
+
+    return Result();
+}
diff --git a/src/osgEarthUtil/TerrainProfile b/src/osgEarthUtil/TerrainProfile
new file mode 100644
index 0000000..ffda042
--- /dev/null
+++ b/src/osgEarthUtil/TerrainProfile
@@ -0,0 +1,209 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#ifndef OSGEARTHUTIL_TERRAINPROFILE
+#define OSGEARTHUTIL_TERRAINPROFILE
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/Terrain>
+#include <osgSim/ElevationSlice>
+
+namespace osgEarth {     
+    class MapNode;
+}
+    
+namespace osgEarth { namespace Util {
+
+    /**
+     * Stores the results of a terrain profile calculation
+     */
+    class OSGEARTHUTIL_EXPORT TerrainProfile
+    {
+    public:
+        /**
+         * Create a new TerrainProfile
+         */
+        TerrainProfile();
+
+        /**
+         * Copy constructor
+         */
+        TerrainProfile(const TerrainProfile& profile);
+
+        /** dtor */
+        virtual ~TerrainProfile() { }
+
+        /**
+         * Gets the distance at the given index
+         * @param i
+         *        The index of the profile measurement
+         */
+        double getDistance( int i ) const;
+
+        /**
+         * Gets the total distance covered by this TerrainProfile
+         */
+        double getTotalDistance() const;
+
+        /**
+         * Gets the min and max elevations of this TerrainProfile
+         * @param min
+         *        The minimum elevation in meters of this TerrainProfile
+         * @param max
+         *        The maximum elevation in meters of this TerrainProfile
+         */
+        void getElevationRanges(double &min, double &max ) const;
+
+        /**
+         * Gets the elevation at the given index
+         * @param i
+         *        The index of the profile measurement
+         */
+        double getElevation( int i ) const;
+
+        /**
+         * Gets the number of elevation measurements in this TerrainProfile
+         */
+        unsigned int getNumElevations() const;
+        
+        /**
+         * Add an elevation measurement to this TerrainProfile
+         */
+        void addElevation( double distance, double elevation );
+
+        /**
+         * Clears all measurements from this TerrainProfile
+         */
+        void clear();
+
+
+    private:
+        double _spacing;
+        typedef std::pair<double,double> DistanceHeight;
+        typedef std::vector<DistanceHeight> DistanceHeightList;
+        DistanceHeightList                      _elevations;
+    };
+
+
+    /**
+     * Computes a TerrainProfile between two points.  Monitors the scene graph for changes
+     * to elevation and updates the profile.
+     */
+    class OSGEARTHUTIL_EXPORT TerrainProfileCalculator : public TerrainCallback
+    {
+    public:
+
+        /**
+         * Callback that is fired when the profile changes
+         */
+        struct ChangedCallback : public osg::Referenced
+        {
+        public:
+            virtual void onChanged(const TerrainProfileCalculator* sender) {};
+            virtual ~ChangedCallback() { }
+        };
+
+        typedef std::list< osg::observer_ptr<ChangedCallback> > ChangedCallbackList;
+
+
+        /**
+         * Creates a new TerrainProfileCalculator
+         * @param mapNode
+         *        The MapNode to compute the terrain profile against
+         * @param start
+         *        The start point of the profile
+         * @param end
+         *        The end point of the profile
+         */
+        TerrainProfileCalculator(osgEarth::MapNode* mapNode, const osgEarth::GeoPoint& start, const osgEarth::GeoPoint& end);
+
+        /**
+         * Creates a new TerrainProfileCalculator
+         * @param mapNode
+         *        The MapNode to compute the terrain profile against
+         */
+        TerrainProfileCalculator(osgEarth::MapNode* mapNode);
+
+        /** dtor */
+        virtual ~TerrainProfileCalculator();
+    
+        /**
+         * Add a ChangedCallback
+         */
+        void addChangedCallback( ChangedCallback* callback );
+
+        /**
+         * Remove a ChangedCallback
+         */
+        void removeChangedCallback( ChangedCallback* callback );
+
+        /**
+         * Gets the computed TerrainProfile
+         */
+        const TerrainProfile& getProfile() const;
+
+        /**
+         * Gets the start point of the terrain profile
+         */
+        const GeoPoint& getStart() const;
+
+        /**
+         * Gets the end point of the terrain profile
+         */
+        const GeoPoint& getEnd() const;
+
+        /**
+         * Sets the start and end points of the terrain profile
+         */
+        void setStartEnd(const osgEarth::GeoPoint& start, const osgEarth::GeoPoint& end);
+
+        virtual void onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext&);
+
+        /**
+         * Recomputes the terrain profile
+         */
+        void recompute();
+
+        /**
+         * Utility to directly compute a terrain profile
+         * @param mapNode
+         *        The MapNode to compute the terrain profile one
+         * @param start
+         *        The start point of the terrain profile
+         * @param end
+         *        The end point of the terrain profile
+         * @param numSamples
+         *        The number of samples to compute
+         * @param profile
+         *        The resulting TerrainProfile
+         */
+        static void computeTerrainProfile( osgEarth::MapNode* mapNode, const osgEarth::GeoPoint& start, const osgEarth::GeoPoint& end, unsigned int numSamples, TerrainProfile& profile);
+
+
+
+    private:
+        osgEarth::GeoPoint _start;
+        osgEarth::GeoPoint _end;
+        TerrainProfile _profile;
+        osg::ref_ptr< osgEarth::MapNode > _mapNode;
+        ChangedCallbackList _changedCallbacks;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_TERRAINPROFILE
diff --git a/src/osgEarthUtil/TerrainProfile.cpp b/src/osgEarthUtil/TerrainProfile.cpp
new file mode 100644
index 0000000..ceaa2f1
--- /dev/null
+++ b/src/osgEarthUtil/TerrainProfile.cpp
@@ -0,0 +1,220 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+* Copyright 2008-2012 Pelican Mapping
+* http://osgearth.org
+*
+* osgEarth is free software; you can redistribute it and/or modify
+* it under the terms of the GNU Lesser General Public License as published by
+* the Free Software Foundation; either version 2 of the License, or
+* (at your option) any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+* GNU Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public License
+* along with this program.  If not, see <http://www.gnu.org/licenses/>
+*/
+#include <osgEarthUtil/TerrainProfile>
+#include <osgEarth/MapNode>
+#include <osgEarth/TerrainEngineNode>
+#include <osgEarth/GeoMath>
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+
+/***************************************************/
+TerrainProfile::TerrainProfile():
+_spacing( 1.0 )
+{
+}
+
+TerrainProfile::TerrainProfile(const TerrainProfile& rhs):
+_spacing( rhs._spacing ),
+_elevations( rhs._elevations )
+{
+}
+
+void
+TerrainProfile::clear()
+{
+    _elevations.clear();
+}
+
+void
+TerrainProfile::addElevation( double distance, double elevation )
+{
+    _elevations.push_back( DistanceHeight(distance, elevation));
+}
+
+double
+TerrainProfile::getElevation( int i ) const
+{
+    if (i >= 0 && i < static_cast<int>(_elevations.size())) return _elevations[i].second;
+    return DBL_MAX;    
+}
+
+double
+TerrainProfile::getDistance( int i ) const
+{
+    if (i >= 0 && i < static_cast<int>(_elevations.size())) return _elevations[i].first;
+    return DBL_MAX;    
+}
+
+double
+TerrainProfile::getTotalDistance() const
+{
+    return _elevations.empty() ? 0.0 : _elevations.back().first;
+}
+
+unsigned int
+TerrainProfile::getNumElevations() const
+{
+    return _elevations.size();
+}
+
+void
+TerrainProfile::getElevationRanges(double &min, double &max ) const
+{
+    min = DBL_MAX;
+    max = -DBL_MAX;
+
+    for (unsigned int i = 0; i < _elevations.size(); i++)
+    {
+        if (_elevations[i].second < min) min = _elevations[i].second;
+        if (_elevations[i].second > max) max = _elevations[i].second;
+    }
+}
+
+/***************************************************/
+TerrainProfileCalculator::TerrainProfileCalculator(MapNode* mapNode, const GeoPoint& start, const GeoPoint& end):
+_mapNode( mapNode ),
+_start( start),
+_end( end )
+{        
+    _mapNode->getTerrain()->addTerrainCallback( this );        
+    recompute();
+}
+
+TerrainProfileCalculator::TerrainProfileCalculator(MapNode* mapNode):
+_mapNode( mapNode )
+{
+    _mapNode->getTerrain()->addTerrainCallback( this );
+}
+
+TerrainProfileCalculator::~TerrainProfileCalculator()
+{
+    _mapNode->getTerrain()->removeTerrainCallback( this );
+}
+
+void TerrainProfileCalculator::addChangedCallback( ChangedCallback* callback )
+{
+    _changedCallbacks.push_back( callback );
+}
+
+void TerrainProfileCalculator::removeChangedCallback( ChangedCallback* callback )
+{
+    ChangedCallbackList::iterator i = std::find( _changedCallbacks.begin(), _changedCallbacks.end(), callback);
+    if (i != _changedCallbacks.end())
+    {
+        _changedCallbacks.erase( i );
+    }    
+}
+
+const TerrainProfile& TerrainProfileCalculator::getProfile() const
+{
+    return _profile;
+}
+
+const GeoPoint& TerrainProfileCalculator::getStart() const
+{
+    return _start;
+}
+
+const GeoPoint& TerrainProfileCalculator::getEnd() const
+{
+    return _end;
+}
+
+void TerrainProfileCalculator::setStartEnd(const GeoPoint& start, const GeoPoint& end)
+{
+    if (_start != start || _end != end)
+    {
+        _start = start;
+        _end = end;
+        recompute();
+    }
+}
+
+void TerrainProfileCalculator::onTileAdded(const osgEarth::TileKey& tileKey, osg::Node* terrain, TerrainCallbackContext&)
+{
+    if (_start.isValid() && _end.isValid())
+    {
+        GeoExtent extent( _start.getSRS());
+        extent.expandToInclude(_start.x(), _start.y());
+        extent.expandToInclude(_end.x(), _end.y());
+
+        if (tileKey.getExtent().intersects( extent ))
+        {
+            recompute();
+        }
+    }
+}
+
+void TerrainProfileCalculator::recompute()
+{
+    if (_start.isValid() && _end.isValid())
+    {
+        //computeTerrainProfile( _mapNode.get(), _start, _end, _numSamples, _profile);
+        osg::Vec3d start, end;
+        _start.toWorld( start, _mapNode->getTerrain() );
+        _end.toWorld( end, _mapNode->getTerrain() );
+        osgSim::ElevationSlice slice;
+        slice.setStartPoint( start );
+        slice.setEndPoint( end );
+        slice.setDatabaseCacheReadCallback( 0 );
+        slice.computeIntersections( _mapNode->getTerrainEngine());
+        _profile.clear();
+        for (unsigned int i = 0; i < slice.getDistanceHeightIntersections().size(); i++)
+        {
+            _profile.addElevation( slice.getDistanceHeightIntersections()[i].first, slice.getDistanceHeightIntersections()[i].second);
+        }
+
+        for( ChangedCallbackList::iterator i = _changedCallbacks.begin(); i != _changedCallbacks.end(); i++ )
+        {
+            if ( i->get() )
+                i->get()->onChanged(this);
+        }
+    }
+}
+
+void TerrainProfileCalculator::computeTerrainProfile( osgEarth::MapNode* mapNode, const GeoPoint& start, const GeoPoint& end, unsigned int numSamples, TerrainProfile& profile)
+{
+    GeoPoint geoStart(start);
+    geoStart.makeGeographic();
+
+    GeoPoint geoEnd(end);
+    geoEnd.makeGeographic();
+
+    double startXRad = osg::DegreesToRadians( geoStart.x() );
+    double startYRad = osg::DegreesToRadians( geoStart.y() );
+    double endXRad = osg::DegreesToRadians( geoEnd.x() );
+    double endYRad = osg::DegreesToRadians( geoEnd.y() );
+
+    double distance = osgEarth::GeoMath::distance(startYRad, startXRad, endYRad, endXRad );
+
+    double spacing = distance / ((double)numSamples - 1.0);
+    
+    profile.clear();
+
+    for (unsigned int i = 0; i < numSamples; i++)
+    {
+        double t = (double)i / (double)numSamples;
+        double lat, lon;
+        GeoMath::interpolate( startYRad, startXRad, endYRad, endXRad, t, lat, lon );
+        double hamsl;
+        mapNode->getTerrain()->getHeight( geoStart.getSRS(), osg::RadiansToDegrees(lon), osg::RadiansToDegrees(lat), &hamsl );
+        profile.addElevation( spacing * (double)i, hamsl );
+    }
+}
diff --git a/src/osgEarthUtil/UTMGraticule b/src/osgEarthUtil/UTMGraticule
new file mode 100644
index 0000000..3a7bc96
--- /dev/null
+++ b/src/osgEarthUtil/UTMGraticule
@@ -0,0 +1,146 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#ifndef OSGEARTHUTIL_UTM_GRATICLE
+#define OSGEARTHUTIL_UTM_GRATICLE
+
+#include <osgEarthUtil/Common>
+#include <osgEarth/MapNode>
+#include <osgEarth/MapNodeObserver>
+#include <osgEarthSymbology/Style>
+#include <osgEarthFeatures/Feature>
+#include <vector>
+
+namespace osgEarth { namespace Util
+{
+    using namespace osgEarth;
+    using namespace osgEarth::Features;
+    using namespace osgEarth::Symbology;
+
+    /**
+     * Configuration options for the geodetic graticule.
+     */
+    class OSGEARTHUTIL_EXPORT UTMGraticuleOptions : public ConfigOptions
+    {
+    public:
+        UTMGraticuleOptions( const Config& conf =Config() );
+
+        /** dtor */
+        virtual ~UTMGraticuleOptions() { }
+
+
+    public:
+
+        /** Default style for grid lines and text */
+        optional<Style>& primaryStyle() { return _primaryStyle; }
+        const optional<Style>& primaryStyle() const { return _primaryStyle; }
+
+        /** Text scale factor (default = 1) */
+        optional<float>& textScale() { return _textScale; }
+        const optional<float>& textScale() const { return _textScale; }
+
+    public:
+        Config getConfig() const;
+
+    protected:
+        optional<Style>    _primaryStyle;
+        optional<float>    _textScale;
+
+        void mergeConfig( const Config& conf );
+    };
+
+
+    /**
+     * Implements a UTM map graticule. 
+     * 
+     * NOTE: So far, this only works for geocentric maps.
+     * TODO: Add projected support; add text label support
+     */
+    class OSGEARTHUTIL_EXPORT UTMGraticule : public osg::Group, public MapNodeObserver
+    {
+    public:
+
+        /**
+         * Constructs a new graticule for use with the specified map. The graticule
+         * is created with several default levels. If you call addLevel(), the 
+         * default levels are deleted.
+         *
+         * @param map
+         *      Map with which you will use this graticule
+         * @param options
+         *      Optional "options" that configure the graticule. Defaults will be used
+         *      if you don't specify this.
+         */
+        UTMGraticule( MapNode* mapNode );
+        UTMGraticule( MapNode* mapNode, const UTMGraticuleOptions& options);
+
+        /** dtor */
+        virtual ~UTMGraticule() { }
+
+        /** 
+         * Applies a new set of options. The graticule will be rebuilt if necessary.
+         */
+        void setOptions( const UTMGraticuleOptions& options );
+
+        /**
+         * Gets the options with which the graticule was built.
+         */
+        const UTMGraticuleOptions& getOptions() const { return _options.value(); }
+
+        
+    public: // MapNodeObserver
+
+        virtual void setMapNode( MapNode* mapNode );
+
+        virtual MapNode* getMapNode() { return _mapNode.get(); }
+
+
+    protected:
+        osg::ref_ptr<const Profile>        _profile;
+        osg::ref_ptr<const FeatureProfile> _featureProfile;
+
+        unsigned int               _id;
+        osg::observer_ptr<MapNode> _mapNode;
+        osg::Group*                _root;
+
+        optional<UTMGraticuleOptions> _options;
+
+        typedef std::map<std::string, GeoExtent> SectorTable;
+        SectorTable _gzd;
+
+        osg::StateAttribute* _depthAttribute;
+
+    protected:
+        unsigned int getID() const { return _id; }
+        void init();
+        void rebuild();
+        osg::Node* buildGZDTile( const std::string& name, const GeoExtent& extent );
+        //osg::Node* buildPolarGZDTiles();
+
+        virtual osg::Group* buildGZDChildren( osg::Group* node, const std::string& gzd ) {
+            return node; }
+
+    public:
+        static Threading::Mutex s_graticuleMutex;
+        typedef std::map<unsigned, osg::ref_ptr<UTMGraticule> > UTMGraticuleRegistry;
+        static UTMGraticuleRegistry s_graticuleRegistry;
+    };
+
+} } // namespace osgEarth::Util
+
+#endif // OSGEARTHUTIL_UTM_GRATICLE
diff --git a/src/osgEarthUtil/UTMGraticule.cpp b/src/osgEarthUtil/UTMGraticule.cpp
new file mode 100644
index 0000000..bd12aba
--- /dev/null
+++ b/src/osgEarthUtil/UTMGraticule.cpp
@@ -0,0 +1,340 @@
+/* -*-c++-*- */
+/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
+ * Copyright 2008-2012 Pelican Mapping
+ * http://osgearth.org
+ *
+ * osgEarth is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>
+ */
+#include <osgEarthUtil/UTMGraticule>
+#include <osgEarthUtil/MGRSFormatter>
+
+#include <osgEarthFeatures/GeometryCompiler>
+#include <osgEarthFeatures/TextSymbolizer>
+
+#include <osgEarthSymbology/Geometry>
+#include <osgEarthAnnotation/LabelNode>
+#include <osgEarthAnnotation/Decluttering>
+
+#include <osgEarth/Registry>
+#include <osgEarth/DepthOffset>
+#include <osgEarth/ECEF>
+#include <osgEarth/NodeUtils>
+#include <osgEarth/Utils>
+#include <osgEarth/CullingUtils>
+#include <osgEarth/DrapeableNode>
+#include <osgEarth/ThreadingUtils>
+
+#include <OpenThreads/Mutex>
+#include <OpenThreads/ScopedLock>
+#include <osg/PagedLOD>
+#include <osg/Depth>
+#include <osg/Program>
+#include <osgDB/FileNameUtils>
+
+#define LC "[UTMGraticule] "
+
+using namespace osgEarth;
+using namespace osgEarth::Util;
+using namespace osgEarth::Features;
+using namespace osgEarth::Symbology;
+using namespace osgEarth::Annotation;
+
+Threading::Mutex UTMGraticule::s_graticuleMutex;
+UTMGraticule::UTMGraticuleRegistry UTMGraticule::s_graticuleRegistry;
+
+//---------------------------------------------------------------------------
+
+UTMGraticuleOptions::UTMGraticuleOptions( const Config& conf ) :
+ConfigOptions( conf ),
+_textScale   ( 1.0f )
+{
+    mergeConfig( _conf );
+}
+
+void
+UTMGraticuleOptions::mergeConfig( const Config& conf )
+{
+    //todo
+}
+
+Config
+UTMGraticuleOptions::getConfig() const
+{
+    Config conf = ConfigOptions::newConfig();
+    conf.key() = "utm_graticule";
+    //todo
+    return conf;
+}
+
+//---------------------------------------------------------------------------
+
+
+UTMGraticule::UTMGraticule( MapNode* mapNode ) :
+_mapNode   ( mapNode ),
+_root      ( 0L )
+{
+    init();
+}
+
+UTMGraticule::UTMGraticule( MapNode* mapNode, const UTMGraticuleOptions& options ) :
+_mapNode   ( mapNode ),
+_root      ( 0L )
+{
+    _options = options;
+    init();
+}
+
+void
+UTMGraticule::init()
+{
+    // safely generate a unique ID for this graticule:
+    _id = Registry::instance()->createUID();
+    {
+        Threading::ScopedMutexLock lock( s_graticuleMutex );
+        s_graticuleRegistry[_id] = this;
+    }
+
+    // make the shared depth attr:
+    _depthAttribute = new osg::Depth(osg::Depth::LEQUAL,0,1,false);
+
+    // this will intialize the graph.
+    rebuild();
+}
+
+void
+UTMGraticule::setMapNode( MapNode* mapNode )
+{
+    _mapNode = mapNode;
+    rebuild();
+}
+
+void
+UTMGraticule::setOptions( const UTMGraticuleOptions& options )
+{
+    _options = options;
+    rebuild();
+}
+
+void
+UTMGraticule::rebuild()
+{
+    // clear everything out
+    this->removeChildren( 0, this->getNumChildren() );
+
+    // requires a map node
+    if ( !getMapNode() )
+    {
+        return;
+    }
+
+    // requires a geocentric map
+    if ( !getMapNode()->isGeocentric() )
+    {
+        OE_WARN << LC << "Projected map mode is not yet supported" << std::endl;
+        return;
+    }
+
+    const Profile* mapProfile = getMapNode()->getMap()->getProfile();
+
+    _profile = Profile::create(
+        mapProfile->getSRS(),
+        mapProfile->getExtent().xMin(),
+        mapProfile->getExtent().yMin(),
+        mapProfile->getExtent().xMax(),
+        mapProfile->getExtent().yMax(),
+        8, 4 );
+
+    _featureProfile = new FeatureProfile(_profile->getSRS());
+
+    //todo: do this right..
+    osg::StateSet* set = this->getOrCreateStateSet();
+    set->setMode( GL_LIGHTING, 0 );
+    set->setMode( GL_BLEND, 1 );
+
+    // set up default options if the caller did not supply them
+    if ( !_options.isSet() )
+    {
+        _options->primaryStyle() = Style();
+
+        LineSymbol* line = _options->primaryStyle()->getOrCreate<LineSymbol>();
+        line->stroke()->color() = Color::Gray;
+        line->stroke()->width() = 1.0;
+        line->tessellation() = 20;
+
+        AltitudeSymbol* alt = _options->primaryStyle()->getOrCreate<AltitudeSymbol>();
+
+        TextSymbol* text = _options->primaryStyle()->getOrCreate<TextSymbol>();
+        text->fill()->color() = Color(Color::White, 0.3f);
+        text->halo()->color() = Color(Color::Black, 0.2f);
+        text->alignment() = TextSymbol::ALIGN_CENTER_CENTER;
+    }
+
+
+    // rebuild the graph:
+    _root = new DrapeableNode( getMapNode(), false );
+    this->addChild( _root );
+
+    // set up depth offsetting.
+    osg::StateSet* s = _root->getOrCreateStateSet();
+    s->setAttributeAndModes( DepthOffsetUtils::getOrCreateProgram(), 1 );
+    s->addUniform( DepthOffsetUtils::getIsNotTextUniform() );
+    osg::Uniform* u = DepthOffsetUtils::createMinOffsetUniform();
+    u->set( 10000.0f );
+    s->addUniform( u );
+
+    // build the base Grid Zone Designator (GZD) loolup table. This is a table
+    // that maps the GZD string to its extent.
+    static std::string s_gzdRows( "CDEFGHJKLMNPQRSTUVWX" );
+    const SpatialReference* geosrs = _profile->getSRS()->getGeographicSRS();
+
+    // build the lateral zones:
+    for( unsigned zone = 0; zone < 60; ++zone )
+    {
+        for( unsigned row = 0; row < s_gzdRows.size(); ++row )
+        {
+            double yMaxExtra = row == s_gzdRows.size()-1 ? 4.0 : 0.0; // extra 4 deg for row X
+
+            GeoExtent cellExtent(
+                geosrs,
+                -180.0 + double(zone)*6.0,
+                -80.0  + row*8.0,
+                -180.0 + double(zone+1)*6.0,
+                -80.0  + double(row+1)*8.0 + yMaxExtra );
+
+            _gzd[ Stringify() << (zone+1) << s_gzdRows[row] ] = cellExtent;
+        }        
+    }
+
+    // the polar zones (UPS):
+    _gzd["1Y"] = GeoExtent( geosrs, -180.0,  84.0,   0.0,  90.0 );
+    _gzd["1Z"] = GeoExtent( geosrs,    0.0,  84.0, 180.0,  90.0 );
+    _gzd["1A"] = GeoExtent( geosrs, -180.0, -90.0,   0.0, -80.0 );
+    _gzd["1B"] = GeoExtent( geosrs,    0.0, -90.0, 180.0, -80.0 );
+
+    // replace the "exception" zones in Norway and Svalbard
+    _gzd["31V"] = GeoExtent( geosrs, 0.0, 56.0, 3.0, 64.0 );
+    _gzd["32V"] = GeoExtent( geosrs, 3.0, 56.0, 12.0, 64.0 );
+    _gzd["31X"] = GeoExtent( geosrs, 0.0, 72.0, 9.0, 84.0 );
+    _gzd["33X"] = GeoExtent( geosrs, 9.0, 72.0, 21.0, 84.0 );
+    _gzd["35X"] = GeoExtent( geosrs, 21.0, 72.0, 33.0, 84.0 );
+    _gzd["37X"] = GeoExtent( geosrs, 33.0, 72.0, 42.0, 84.0 );
+
+    // ..and remove the non-existant zones:
+    _gzd.erase( "32X" );
+    _gzd.erase( "34X" );
+    _gzd.erase( "36X" );
+
+    // now build the lateral tiles for the GZD level.
+    for( SectorTable::iterator i = _gzd.begin(); i != _gzd.end(); ++i )
+    {
+        osg::Node* tile = buildGZDTile( i->first, i->second );
+        if ( tile )
+            _root->addChild( tile );
+    }
+
+    DepthOffsetUtils::prepareGraph( _root );
+}
+
+
+osg::Node*
+UTMGraticule::buildGZDTile( const std::string& name, const GeoExtent& extent )
+{
+    osg::Group* group = new osg::Group();
+
+    Style lineStyle;
+    lineStyle.add( _options->primaryStyle()->get<LineSymbol>() );
+    lineStyle.add( _options->primaryStyle()->get<AltitudeSymbol>() );
+
+    bool hasText = _options->primaryStyle()->get<TextSymbol>() != 0L;
+
+    GeometryCompiler compiler;
+    osg::ref_ptr<Session> session = new Session( getMapNode()->getMap() );
+    FilterContext context( session.get(), _featureProfile.get(), extent );
+
+    // make sure we get sufficient tessellation:
+    compiler.options().maxGranularity() = 1.0;
+
+    FeatureList features;
+
+    // longitudinal line:
+    LineString* lon = new LineString(2);
+    lon->push_back( osg::Vec3d(extent.xMin(), extent.yMax(), 0) );
+    lon->push_back( osg::Vec3d(extent.xMin(), extent.yMin(), 0) );
+    Feature* lonFeature = new Feature(lon, extent.getSRS());
+    lonFeature->geoInterp() = GEOINTERP_GREAT_CIRCLE;
+    features.push_back( lonFeature );
+
+    // latitudinal line:
+    LineString* lat = new LineString(2);
+    lat->push_back( osg::Vec3d(extent.xMin(), extent.yMin(), 0) );
+    lat->push_back( osg::Vec3d(extent.xMax(), extent.yMin(), 0) );
+    Feature* latFeature = new Feature(lat, extent.getSRS());
+    latFeature->geoInterp() = GEOINTERP_RHUMB_LINE;
+    features.push_back( latFeature );
+
+    // top lat line at 84N
+    if ( extent.yMax() == 84.0 )
+    {
+        LineString* lat = new LineString(2);
+        lat->push_back( osg::Vec3d(extent.xMin(), extent.yMax(), 0) );
+        lat->push_back( osg::Vec3d(extent.xMax(), extent.yMax(), 0) );
+        Feature* latFeature = new Feature(lat, extent.getSRS());
+        latFeature->geoInterp() = GEOINTERP_RHUMB_LINE;
+        features.push_back( latFeature );
+    }
+
+    osg::Node* geomNode = compiler.compile(features, lineStyle, context);
+    if ( geomNode ) 
+        group->addChild( geomNode );
+
+    // get the geocentric tile center:
+    osg::Vec3d tileCenter;
+    extent.getCentroid( tileCenter.x(), tileCenter.y() );
+    
+    osg::Vec3d centerECEF;
+    extent.getSRS()->transformToECEF( tileCenter, centerECEF );
+
+    if ( hasText )
+    {
+        osg::Vec3d west, east;
+        extent.getSRS()->transformToECEF(osg::Vec3d(extent.xMin(),tileCenter.y(),0), west );
+        extent.getSRS()->transformToECEF(osg::Vec3d(extent.xMax(),tileCenter.y(),0), east );
+
+        TextSymbol* textSym = _options->primaryStyle()->getOrCreate<TextSymbol>();
+        textSym->size() = (west-east).length() / 3.0;
+
+        TextSymbolizer ts( textSym );
+        
+        osg::Geode* textGeode = new osg::Geode();
+        textGeode->getOrCreateStateSet()->setRenderBinDetails( 9998, "DepthSortedBin" );   
+        textGeode->getOrCreateStateSet()->setAttributeAndModes( _depthAttribute, 1 );
+        
+        osg::Drawable* d = ts.create(name);
+        d->getOrCreateStateSet()->setRenderBinToInherit();
+
+        textGeode->addDrawable(d);
+        osg::MatrixTransform* mt = new osg::MatrixTransform(ECEF::createLocalToWorld(centerECEF));
+        mt->addChild(textGeode);
+       
+        group->addChild(mt);
+    }
+
+    group = buildGZDChildren( group, name );
+
+    group = ClusterCullingFactory::createAndInstall( group, centerECEF )->asGroup();
+
+    return group;
+}
+
+
diff --git a/src/osgEarthUtil/Viewpoint b/src/osgEarthUtil/Viewpoint
deleted file mode 100644
index 6b9a6eb..0000000
--- a/src/osgEarthUtil/Viewpoint
+++ /dev/null
@@ -1,200 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#ifndef OSGEARTHUTIL_VIEWPOINT
-#define OSGEARTHUTIL_VIEWPOINT
-
-#include <osgEarthUtil/Common>
-#include <osgEarth/SpatialReference>
-#include <osgEarth/Config>
-
-namespace osgEarth { namespace Util
-{
-    /**
-     * Viewpoint data object. Stores a view configuration as a focal point
-     * and the camera's position relative to that focal point.
-     */
-    class OSGEARTHUTIL_EXPORT Viewpoint
-    {
-    public:
-        /**
-         * Constructs a blank (invalid) viewpoint.
-         */
-        Viewpoint();
-
-        /**
-         * Constructs a new viewpoint.
-         *
-         * @param focal_point
-         *      The location at which the camera points. Express this is either
-         *      cartesian coordinates (for a "flat-earth" model) or in lat/long
-         *      degrees for a round-earth model.
-         *
-         * @param heading_deg
-         *      Heading (in clockwise degrees) of the camera relative to the 
-         *      tangent plane of the focal point.
-         *
-         * @param pitch_deg
-         *      Pitch (in degrees) of the camera relative to the tangent plane
-         *      of the focal point.
-         *
-         * @param range
-         *      Straight-line distance from the camera to the focal point.
-         *
-         * @param srs (optional)
-         *      Spatial reference defining the focal point.
-         */
-        Viewpoint(
-            const osg::Vec3d& focal_point,
-            double heading_deg,
-            double pitch_deg,
-            double range,
-            const osgEarth::SpatialReference* srs =NULL );
-
-        Viewpoint(
-            double x_or_lon, double y_or_lat, double z,
-            double heading_deg,
-            double pitch_deg,
-            double range,
-            const osgEarth::SpatialReference* srs =NULL );
-
-        /**
-         * Constructs a new viewpoint.
-         *
-         * @param name
-         *      Name of this viewpoint.
-         *
-         * @param focal_point
-         *      The location at which the camera points. Express this is either
-         *      cartesian coordinates (for a "flat-earth" model) or in lat/long
-         *      degrees for a round-earth model.
-         *
-         * @param heading_deg
-         *      Heading (in clockwise degrees) of the camera relative to the 
-         *      tangent plane of the focal point.
-         *
-         * @param pitch_deg
-         *      Pitch (in degrees) of the camera relative to the tangent plane
-         *      of the focal point.
-         *
-         * @param range
-         *      Straight-line distance from the camera to the focal point.
-         *
-         * @param srs (optional)
-         *      Spatial reference defining the focal point.
-         */
-        Viewpoint(
-            const std::string& name,
-            const osg::Vec3d& focal_point,
-            double heading_deg,
-            double pitch_deg,
-            double range,
-            const osgEarth::SpatialReference* srs =NULL );
-
-        Viewpoint(
-            const std::string& name,
-            double x_or_lon, double y_or_lat, double z,
-            double heading_deg,
-            double pitch_deg,
-            double range,
-            const osgEarth::SpatialReference* srs =NULL );
-
-        /**
-         * Deserialize a Config into this viewpoint object.
-         */
-        Viewpoint( const Config& conf );
-
-        /**
-         * Copy constructor.
-         */
-        Viewpoint( const Viewpoint& rhs );
-
-    public:
-
-        /**
-         * Returns true if this viewpoint contains valid information.
-         */
-        bool isValid() const;
-
-        /**
-         * Gets or sets the name of the viewpoint.
-         */
-        void setName( const std::string& name );
-        const std::string& getName() const;
-
-        /**
-         * Gets or sets the location at which the camera is pointing.
-         */
-        const osg::Vec3d& getFocalPoint() const;
-        void setFocalPoint( const osg::Vec3d& point );
-
-        double x() const;
-        double& x();
-
-        double y() const;
-        double& y();
-
-        double z() const;
-        double& z();
-
-        /**
-         * Gets the heading (in degrees) of the camera relative to the focal point.
-         */
-        double getHeading() const;
-        void setHeading( double heading_deg );
-
-        /**
-         * Gets the pitch (in degrees) of the camera relative to the focal point.
-         */
-        double getPitch() const;
-        void setPitch( double pitch_deg );
-
-        /**
-         * Gets the distance from the camera to the focal point.
-         */
-        double getRange() const;
-        void setRange( double range );
-
-        /**
-         * Gets the spatial reference system of the focal point, if defined.
-         */
-        const osgEarth::SpatialReference* getSRS() const;
-
-        /**
-         * Returns a printable string with the viewpoint data
-         */
-        std::string toString() const;
-
-        /**
-         * Serialize this viewpoint to a config.
-         */
-        Config getConfig() const;
-
-    private:
-        std::string _name;
-        osg::Vec3d _focal_point;
-        double _heading_deg;
-        double _pitch_deg;
-        double _range;
-        osg::ref_ptr<const osgEarth::SpatialReference> _srs;
-        bool _is_valid;
-    };
-
-} } // namespace osgEarth::Util
-
-#endif // OSGEARTHUTIL_VIEWPOINT
diff --git a/src/osgEarthUtil/Viewpoint.cpp b/src/osgEarthUtil/Viewpoint.cpp
deleted file mode 100644
index 9f35fd5..0000000
--- a/src/osgEarthUtil/Viewpoint.cpp
+++ /dev/null
@@ -1,271 +0,0 @@
-/* -*-c++-*- */
-/* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
- * http://osgearth.org
- *
- * osgEarth is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>
- */
-#include <osgEarthUtil/Viewpoint>
-#include <sstream>
-
-using namespace osgEarth::Util;
-using namespace osgEarth;
-
-
-Viewpoint::Viewpoint() :
-_is_valid( false ),
-_heading_deg(0.0),
-_pitch_deg(0.0),
-_range(1.0)
-{
-    //NOP
-}
-
-Viewpoint::Viewpoint(const osg::Vec3d& focal_point,
-                     double heading_deg,
-                     double pitch_deg, 
-                     double range,
-                     const osgEarth::SpatialReference* srs ) :
-_focal_point( focal_point ),
-_heading_deg( heading_deg ),
-_pitch_deg( pitch_deg ),
-_range( range ),
-_srs( srs ),
-_is_valid( true )
-{
-    //NOP
-}
-Viewpoint::Viewpoint(double x, double y, double z,
-                     double heading_deg,
-                     double pitch_deg, 
-                     double range,
-                     const osgEarth::SpatialReference* srs ) :
-_focal_point( x, y, z ),
-_heading_deg( heading_deg ),
-_pitch_deg( pitch_deg ),
-_range( range ),
-_srs( srs ),
-_is_valid( true )
-{
-    //NOP
-}
-
-Viewpoint::Viewpoint(const std::string& name,
-                     const osg::Vec3d& focal_point,
-                     double heading_deg,
-                     double pitch_deg, 
-                     double range,
-                     const osgEarth::SpatialReference* srs ) :
-_name( name ),
-_focal_point( focal_point ),
-_heading_deg( heading_deg ),
-_pitch_deg( pitch_deg ),
-_range( range ),
-_srs( srs ),
-_is_valid( true )
-{
-    //NOP
-}
-
-Viewpoint::Viewpoint(const std::string& name,
-                     double x, double y, double z,
-                     double heading_deg,
-                     double pitch_deg, 
-                     double range,
-                     const osgEarth::SpatialReference* srs ) :
-_name( name ),
-_focal_point( x, y, z ),
-_heading_deg( heading_deg ),
-_pitch_deg( pitch_deg ),
-_range( range ),
-_srs( srs ),
-_is_valid( true )
-{
-    //NOP
-}
-
-Viewpoint::Viewpoint( const Viewpoint& rhs ) :
-_name( rhs._name ),
-_focal_point( rhs._focal_point ),
-_heading_deg( rhs._heading_deg ),
-_pitch_deg( rhs._pitch_deg ),
-_range( rhs._range ),
-_srs( rhs._srs.get() ),
-_is_valid( rhs._is_valid )
-{
-    //NOP
-}
-
-Viewpoint::Viewpoint( const Config& conf )
-{
-    _name = conf.value("name");
-
-    if ( conf.hasValue("x") )
-    {
-        _focal_point.set(
-            conf.value<double>("x", 0.0),
-            conf.value<double>("y", 0.0),
-            conf.value<double>("z", 0.0) );
-    }
-    else if ( conf.hasValue("lat") )
-    {
-        _focal_point.set(
-            conf.value<double>("long", 0.0),
-            conf.value<double>("lat", 0.0),
-            conf.value<double>("height", 0.0) );
-    }
-
-    _heading_deg = conf.value<double>("heading", 0.0);
-    _pitch_deg   = conf.value<double>("pitch",   0.0);
-    _range       = conf.value<double>("range",   0.0);
-    _is_valid    = _range > 0.0;
-
-    //TODO: SRS
-}
-
-Config
-Viewpoint::getConfig() const
-{
-    Config conf;
-
-    if ( _is_valid )
-    {
-        conf.attr("name") = _name;
-        if ( getSRS() && getSRS()->isGeographic() )
-        {
-            conf.attr("lat") = osgEarth::toString(_focal_point.y());
-            conf.attr("long") = osgEarth::toString(_focal_point.x());
-            conf.attr("height") = osgEarth::toString(_focal_point.z());
-        }
-        else
-        {
-            conf.attr("x") = osgEarth::toString(_focal_point.x());
-            conf.attr("y") = osgEarth::toString(_focal_point.y());
-            conf.attr("z") = osgEarth::toString(_focal_point.z());
-        }
-
-        conf.attr("heading") = osgEarth::toString(_heading_deg);
-        conf.attr("pitch") = osgEarth::toString(_pitch_deg);
-        conf.attr("range") = osgEarth::toString(_range);
-
-        //TODO: SRS
-    }
-
-    return conf;
-}
-
-bool
-Viewpoint::isValid() const {
-    return _is_valid;
-}
-
-const std::string&
-Viewpoint::getName() const {
-    return _name;
-}
-
-void
-Viewpoint::setName( const std::string& name ) {
-    _name = name;
-}
-
-const osg::Vec3d&
-Viewpoint::getFocalPoint() const {
-    return _focal_point;
-}
-
-void
-Viewpoint::setFocalPoint( const osg::Vec3d& value ) {
-    _focal_point = value;
-}
-
-double
-Viewpoint::x() const {
-    return _focal_point.x();
-}
-
-double&
-Viewpoint::x() {
-    return _focal_point.x();
-}
-
-double
-Viewpoint::y() const {
-    return _focal_point.y();
-}
-
-double&
-Viewpoint::y() {
-    return _focal_point.y();
-}
-
-double
-Viewpoint::z() const {
-    return _focal_point.z();
-}
-
-double&
-Viewpoint::z() {
-    return _focal_point.z();
-}
-
-double
-Viewpoint::getHeading() const {
-    return _heading_deg;
-}
-
-void
-Viewpoint::setHeading( double value ) {
-    _heading_deg = value;
-}
-
-double
-Viewpoint::getPitch() const {
-    return _pitch_deg;
-}
-
-void
-Viewpoint::setPitch( double value ) {
-    _pitch_deg = value;
-}
-
-double
-Viewpoint::getRange() const {
-    return _range;
-}
-
-void
-Viewpoint::setRange( double value ) {
-    _range = value;
-}
-
-const SpatialReference*
-Viewpoint::getSRS() const {
-    return _srs.get();
-}
-
-std::string
-Viewpoint::toString() const
-{
-    std::stringstream buf;
-    buf << "x=" << _focal_point.x()
-        << ", y=" << _focal_point.y()
-        << ", z=" << _focal_point.z()
-        << ", h=" << _heading_deg
-        << ", p=" << _pitch_deg
-        << ", d=" << _range
-        ;
-    std::string str = buf.str();
-    return str;
-}
diff --git a/src/osgEarthUtil/WFS b/src/osgEarthUtil/WFS
index 0cb4476..793d1de 100644
--- a/src/osgEarthUtil/WFS
+++ b/src/osgEarthUtil/WFS
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -22,9 +22,9 @@
 
 #include <osgEarthUtil/Common>
 #include <osgEarth/GeoData>
+#include <osgEarth/URI>
 #include <osg/Referenced>
 #include <osg/ref_ptr>
-#include <osgEarth/Common>
 
 #include <osgDB/ReaderWriter>
 #include <osg/Version>
@@ -43,6 +43,9 @@ namespace osgEarth { namespace Util
     public:
         WFSFeatureType();
 
+        /** dtor */
+        virtual ~WFSFeatureType() { }
+
         const std::string& getName() const { return _name;}
         void setName(const std::string& name) { _name = name;}
 
@@ -90,6 +93,9 @@ namespace osgEarth { namespace Util
     public:
         WFSCapabilities();
 
+        /** dtor */
+        virtual ~WFSCapabilities() { }
+
         /**
         *Gets the WFS capabilities version
         */
@@ -129,11 +135,14 @@ namespace osgEarth { namespace Util
     class OSGEARTHUTIL_EXPORT WFSCapabilitiesReader
     {
     public:
-        static WFSCapabilities* read( const std::string &location, const osgDB::ReaderWriter::Options *options );
+        static WFSCapabilities* read( const URI& uri, const osgDB::Options* options );
         static WFSCapabilities* read( std::istream &in );
     private:
         WFSCapabilitiesReader(){}
         WFSCapabilitiesReader(const WFSCapabilitiesReader &cr){}
+
+        /** dtor */
+        virtual ~WFSCapabilitiesReader() { }
     };
 
 } } // namespace osgEarth::Util
diff --git a/src/osgEarthUtil/WFS.cpp b/src/osgEarthUtil/WFS.cpp
index 4ff0600..3f3b5e0 100644
--- a/src/osgEarthUtil/WFS.cpp
+++ b/src/osgEarthUtil/WFS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,6 @@
 
 #include <osgEarthUtil/WFS>
 #include <osgEarth/XmlUtils>
-#include <osgEarth/HTTPClient>
 
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -29,9 +28,6 @@ using namespace osgEarth::Util;
 using namespace std;
 
 
-
-
-
 WFSCapabilities::WFSCapabilities()
 {
 }
@@ -73,26 +69,16 @@ WFSFeatureType::WFSFeatureType()
 /**************************************************************************************/
 
 WFSCapabilities* 
-WFSCapabilitiesReader::read( const std::string &location, const osgDB::ReaderWriter::Options *options )
+WFSCapabilitiesReader::read( const URI& location, const osgDB::Options* dbOptions )
 {
-    WFSCapabilities *caps = NULL;
-    if ( osgDB::containsServerAddress( location ) )
+    // read the data into a string buffer and parse it from there
+    std::string buffer = location.readString(dbOptions).getString();
+    if ( !buffer.empty() )
     {
-        HTTPResponse response = HTTPClient::get( location, options );
-        if ( response.isOK() && response.getNumParts() > 0 )
-        {
-            caps = read( response.getPartStream( 0 ) );
-        }
-    }
-    else
-    {
-        if ((osgDB::fileExists(location)) && (osgDB::fileType(location) == osgDB::REGULAR_FILE))
-        {
-            std::ifstream in( location.c_str() );
-            caps = read( in );
-        }
+        std::stringstream buf(buffer);
+        return read(buf);
     }
-    return caps;
+    else return 0L;
 }
 
 WFSCapabilities*
diff --git a/src/osgEarthUtil/WMS b/src/osgEarthUtil/WMS
index 3a50404..dcbfb21 100644
--- a/src/osgEarthUtil/WMS
+++ b/src/osgEarthUtil/WMS
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
-* Copyright 2008-2010 Pelican Mapping
+* Copyright 2008-2012 Pelican Mapping
 * http://osgearth.org
 *
 * osgEarth is free software; you can redistribute it and/or modify
@@ -44,7 +44,10 @@ namespace osgEarth { namespace Util
     {
     public:
         WMSStyle();
-        WMSStyle(const std::string& name, const std::string &title);
+        WMSStyle(const std::string& name, const std::string& title);
+
+        /** dtor */
+        virtual ~WMSStyle() { }
 
         /**
         *Gets the name of the style
@@ -79,6 +82,9 @@ namespace osgEarth { namespace Util
     public:
         WMSLayer();
 
+        /** dtor */
+        virtual ~WMSLayer() { }
+
         /**
         *Gets the name of the layer
         */
@@ -191,6 +197,9 @@ namespace osgEarth { namespace Util
     public:
         WMSCapabilities();
 
+        /** dtor */
+        virtual ~WMSCapabilities() { }
+
         /**
         *Gets the WMS capabilities version
         */
@@ -248,6 +257,9 @@ namespace osgEarth { namespace Util
     private:
         WMSCapabilitiesReader(){}
         WMSCapabilitiesReader(const WMSCapabilitiesReader &cr){}
+
+        /** dtor */
+        virtual ~WMSCapabilitiesReader() { }
     };
 
 } } // namespace osgEarth::Util
diff --git a/src/osgEarthUtil/WMS.cpp b/src/osgEarthUtil/WMS.cpp
index 34f520b..bf18ff4 100644
--- a/src/osgEarthUtil/WMS.cpp
+++ b/src/osgEarthUtil/WMS.cpp
@@ -1,6 +1,6 @@
 /* -*-c++-*- */
 /* osgEarth - Dynamic map generation toolkit for OpenSceneGraph
- * Copyright 2008-2010 Pelican Mapping
+ * Copyright 2008-2012 Pelican Mapping
  * http://osgearth.org
  *
  * osgEarth is free software; you can redistribute it and/or modify
@@ -19,7 +19,6 @@
 
 #include <osgEarthUtil/WMS>
 #include <osgEarth/XmlUtils>
-#include <osgEarth/HTTPClient>
 
 #include <osgDB/FileNameUtils>
 #include <osgDB/FileUtils>
@@ -28,16 +27,18 @@ using namespace osgEarth;
 using namespace osgEarth::Util;
 using namespace std;
 
-static
-WMSLayer* getLayerByName(const string &name, WMSLayer::LayerList& layers)
+namespace
 {
-    for (WMSLayer::LayerList::iterator i = layers.begin(); i != layers.end(); ++i)
+    WMSLayer* getLayerByName(const string &name, WMSLayer::LayerList& layers)
     {
-        if (osgDB::equalCaseInsensitive(i->get()->getName(),name)) return i->get();
-        WMSLayer *l = getLayerByName(name, i->get()->getLayers());
-        if (l) return l;
+        for (WMSLayer::LayerList::iterator i = layers.begin(); i != layers.end(); ++i)
+        {
+            if (osgDB::equalCaseInsensitive(i->get()->getName(),name)) return i->get();
+            WMSLayer *l = getLayerByName(name, i->get()->getLayers());
+            if (l) return l;
+        }
+        return 0;
     }
-    return 0;
 }
 
 WMSStyle::WMSStyle()
@@ -138,10 +139,11 @@ WMSCapabilitiesReader::read( const std::string &location, const osgDB::ReaderWri
     WMSCapabilities *caps = NULL;
     if ( osgDB::containsServerAddress( location ) )
     {
-        HTTPResponse response = HTTPClient::get( location, options );
-        if ( response.isOK() && response.getNumParts() > 0 )
+        ReadResult rr = URI(location).readString( options );
+        if ( rr.succeeded() )
         {
-            caps = read( response.getPartStream( 0 ) );
+            std::istringstream in( rr.getString() );
+            caps = read( in );
         }
     }
     else
@@ -168,13 +170,17 @@ WMSCapabilitiesReader::read( const std::string &location, const osgDB::ReaderWri
 #define ELEM_SRS "srs"
 #define ELEM_CRS "crs"
 #define ELEM_LATLONBOUNDINGBOX "latlonboundingbox"
+#define ELEM_GEOGRAPHICBOUNDINGBOX "ex_geographicboundingbox"
 #define ELEM_BOUNDINGBOX "boundingbox"
 #define ATTR_MINX              "minx"
 #define ATTR_MINY              "miny"
 #define ATTR_MAXX              "maxx"
 #define ATTR_MAXY              "maxy"
 
-
+#define ATTR_EASTLON           "eastboundlongitude"
+#define ATTR_WESTLON           "westboundlongitude"
+#define ATTR_NORTHLAT          "northboundlatitude"
+#define ATTR_SOUTHLAT          "southboundlatitude"
 
 static void
 readLayers(XmlElement* e, WMSLayer* parentLayer, WMSLayer::LayerList& layers)
@@ -225,6 +231,18 @@ readLayers(XmlElement* e, WMSLayer* parentLayer, WMSLayer::LayerList& layers)
             maxY = as<double>(e_bb->getAttr( ATTR_MAXY ), 0);
             layer->setLatLonExtents(minX, minY, maxX, maxY);
         }
+        else {
+            osg::ref_ptr<XmlElement> e_gbb = e_layer->getSubElement( ELEM_GEOGRAPHICBOUNDINGBOX );
+            if (e_gbb.valid())
+            {
+                double minX, minY, maxX, maxY;
+                minX = as<double>(e_gbb->getSubElementText( ATTR_WESTLON ), 0);
+                minY = as<double>(e_gbb->getSubElementText( ATTR_SOUTHLAT ), 0);
+                maxX = as<double>(e_gbb->getSubElementText( ATTR_EASTLON ), 0);
+                maxY = as<double>(e_gbb->getSubElementText( ATTR_NORTHLAT ), 0);
+                layer->setLatLonExtents(minX, minY, maxX, maxY);
+            }
+        }
 
         e_bb = e_layer->getSubElement( ELEM_BOUNDINGBOX );
         if (e_bb.valid())
diff --git a/tests/annotation.earth b/tests/annotation.earth
new file mode 100644
index 0000000..d252338
--- /dev/null
+++ b/tests/annotation.earth
@@ -0,0 +1,105 @@
+<!--
+osgEarth Sample - Annotations
+-->
+<map name="readymap.org" type="geocentric" version="2">
+
+    <image name="ReadyMap.org - Imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
+    </image>
+        
+    <elevation name="ReadyMap.org - Elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
+    
+    <options>
+        <terrain>
+            <lighting>false</lighting>
+            <sample_ratio>0.125</sample_ratio>
+        </terrain>
+        <!-- <cache_policy usage="cache_only"/> -->
+    </options>
+    
+    <external>
+        <viewpoint name="Annotation Samples" heading="35.27" lat="33" long="-118" pitch="-35" range="500000"/>
+        
+        <annotations declutter="true">
+        
+            <label text="Los Angeles">
+                <position lat="34.051" long="-117.974" alt="100" mode="relative"/>
+                <style type="text/css">
+                    text-align: center_center;
+                    text-size:  20;
+                </style>
+            </label>
+            
+            <place text="San Diego">
+                <position lat="32.73" long="-117.17"/>
+                <icon>http://demo.pelicanmapping.com/icons/gmaps/yoga.png</icon>
+            </place>
+            
+            <circle draped="true">
+                <position lat="34.051" long="-117.974"/>
+                <radius value="50" units="km"/>
+                <style type="text/css">fill: #ffff0080;</style>
+            </circle>
+            
+            <ellipse>
+                <position lat="32.73" long="-119.0"/>
+                <radius_major value="50" units="km"/>
+                <radius_minor value="20" units="km"/>
+                <style type="text/css">
+                    fill:             #ff7f008f;
+                    stroke:           #ff0000ff;
+                    extrusion-height: 5000;
+                </style>
+            </ellipse>
+            
+            <rectangle>
+                <position lat="32.2" long="-118" alt="1000"/>
+                <width value="50" units="nm"/>
+                <height value="25" units="nm"/>
+                <style type="text/css"> stroke: #00ffff; stroke-width: 2; </style>
+            </rectangle>
+
+            <feature>
+                <srs>wgs84</srs>
+                <geometry>
+                    LINESTRING(-120.37 34.039, -120.09 33.96, -119.75 34, -118.43 33.37, -118.48 32.88)
+                </geometry>
+                <style type="text/css">
+                    fill:             #ff00ff7f;
+                    stroke:           #ffff00;
+                    stroke-width:     3;
+                    extrusion-height: 30000;
+                </style>
+            </feature>
+            
+            <local_geometry>
+                <geometry>
+                    POLYGON((0 0 0, -1000 0 25000, -5000 0 25000, 0 0 30000, 5000 0 25000, 1000 0 25000))
+                </geometry>
+                <position lat="33.4" long="-116.6" alt="0"/>
+                <style type="text/css">
+                    fill: #00ff00;
+                    stroke: #ffff00;
+                </style>
+            </local_geometry>
+            
+            <model>
+                <url>../data/red_flag.osg.18000.scale</url>
+                <position lat="33" long="-117.75" hat="0"/>
+            </model>
+            
+            <imageoverlay>
+                <url>../data/fractal.png</url>
+                <alpha>1.0</alpha>
+                <geometry>POLYGON((-81 26, -80.5 26, -80.5 26.5, -81 26.5))</geometry>
+            </imageoverlay>
+            <label text="image overlay">
+                <position lat="26" long="-81" />
+            </label>
+            
+        </annotations>
+        
+    </external>
+</map>
diff --git a/tests/annotation_flat.earth b/tests/annotation_flat.earth
new file mode 100644
index 0000000..e2925a9
--- /dev/null
+++ b/tests/annotation_flat.earth
@@ -0,0 +1,94 @@
+<!--
+osgEarth Sample - Annotations
+-->
+<map name="readymap.org" type="projected" version="2">
+
+    <image name="mapquest_osm" driver="xyz">
+        <url>http://otile[1234].mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg</url>
+        <profile>global-mercator</profile>
+        <cache_policy usage="no_cache"/>
+    </image>
+        
+    <elevation name="ReadyMap.org - Elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
+    
+    <options>
+        <terrain>
+            <lighting>false</lighting>
+            <sample_ratio>0.125</sample_ratio>
+        </terrain>
+        <!-- <cache_policy usage="cache_only"/> -->
+    </options>
+    
+    <external>
+        <viewpoint name="Annotation Samples" heading="35.27" lat="33" long="-118" pitch="-35" range="500000"/>
+        
+        <annotations declutter="true">
+        
+            <label text="Los Angeles">
+                <position lat="34.051" long="-117.974" alt="100" mode="relative"/>
+                <style type="text/css">
+                    text-align: center_center;
+                    text-size:  20;
+                    text-halo:  #000000;
+                </style>
+            </label>
+            
+            <place text="San Diego">
+                <position lat="32.73" long="-117.17"/>
+                <icon>http://demo.pelicanmapping.com/icons/gmaps/yoga.png</icon>
+            </place>
+            
+            <circle draped="true">
+                <position lat="34.051" long="-117.974"/>
+                <radius value="50" units="km"/>
+                <style type="text/css">fill: #ffff005f;</style>
+            </circle>
+            
+            <ellipse>
+                <position lat="32.73" long="-119.0"/>
+                <radius_major value="50" units="km"/>
+                <radius_minor value="20" units="km"/>
+                <style type="text/css">
+                    fill:             #ff7f008f;
+                    stroke:           #ff0000ff;
+                    extrusion-height: 5000;
+                </style>
+            </ellipse>
+            
+            <rectangle>
+                <position lat="32.2" long="-118" alt="1000"/>
+                <width value="50" units="nm"/>
+                <height value="25" units="nm"/>
+                <style type="text/css"> stroke: #00ffff; stroke-width: 2; </style>
+            </rectangle>
+
+            <feature>
+                <srs>wgs84</srs>
+                <geometry>
+                    LINESTRING(-120.37 34.039, -120.09 33.96, -119.75 34, -118.43 33.37, -118.48 32.88)
+                </geometry>
+                <style type="text/css">
+                    fill:             #ff00ff7f;
+                    stroke:           #ffff00;
+                    stroke-width:     3;
+                    extrusion-height: 30000;
+                </style>
+            </feature>
+            
+            <local_geometry>
+                <geometry>
+                    POLYGON((0 0 0, -1000 0 25000, -5000 0 25000, 0 0 30000, 5000 0 25000, 1000 0 25000))
+                </geometry>
+                <position lat="33.4" long="-116.6" alt="0"/>
+                <style type="text/css">
+                    fill: #00ff00;
+                    stroke: #ffff00;
+                </style>
+            </local_geometry>
+            
+        </annotations>
+        
+    </external>
+</map>
diff --git a/tests/arc_imagery.earth b/tests/arc_imagery.earth
deleted file mode 100644
index 7d9b758..0000000
--- a/tests/arc_imagery.earth
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-osgEarth Sample
-
-This example shows how to pull map tiles from an ESRI ArcGIS Server.
-
-Please note that use of ESRI's free maps is subject to certain restrictions:
-http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
--->
-
-<map name="ESRI Imagery and Roads" type="geocentric" version="2">        
-    <image name="arcgisonline esri imagery" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-    </image>
-    
-    <options>
-        <lighting>false</lighting>
-    </options>
-</map>
diff --git a/tests/arc_imagery_roads.earth b/tests/arc_imagery_roads.earth
deleted file mode 100644
index 50f1b9b..0000000
--- a/tests/arc_imagery_roads.earth
+++ /dev/null
@@ -1,28 +0,0 @@
-<!--
-osgEarth Sample
-
-This example shows how to pull map tiles from an ESRI ArcGIS Server.
-
-Please note that use of ESRI's free maps is subject to certain restrictions:
-http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
--->
-
-<map name="ESRI Imagery and Roads" type="geocentric" version="2">
-        
-    <image name="arcgisonline esri imagery" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-		<nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-    </image>
-      
-    <image name="arcgisonline transportation" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/Reference/ESRI_Transportation_World_2D/MapServer</url>
-    </image>
-    
-    <options>
-        <lighting>false</lighting>
-        <terrain>
-            <loading_policy mode="sequential"/>
-            <compositor>multitexture</compositor>
-        </terrain>
-    </options>
-</map>
diff --git a/tests/arc_imagery_roads_utm.earth b/tests/arc_imagery_roads_utm.earth
deleted file mode 100644
index 912f053..0000000
--- a/tests/arc_imagery_roads_utm.earth
+++ /dev/null
@@ -1,41 +0,0 @@
-<!--
-osgEarth Sample
-
-This example tests osgEarth's image reprojection capabilities.  The imagery coming from
-ESRI is in WGS1984 Geodetic and it is being reprojected on the fly to NAD83 UTM zone 17N. The
-"tile_size" attribute tells osgEarth what size the reprojected imagery should be.
-
-Refer to this site for spatial reference definitions:
-http://spatialreference.org
-
-Please note that use of ESRI's free maps is subject to certain restrictions:
-http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
--->
-
-<map name="ESRI Imagery and Roads UTM" type="projected" version="2">
-    
-    <options>
-        <!--Specify the profile to use since we want to reproject to UTM-->        
-        <profile srs="+proj=utm +zone=17 +ellps=GRS80 +datum=NAD83 +units=m +no_defs" 
-                 xmin="560725.500" ymin="4385762.500" 
-                 xmax="573866.500" ymax="4400705.500"/>
-                 
-        <lighting>false</lighting>
-    </options>
-
-    <image name="ags-imagery" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-
-        <!--Specify a tile_size to reproject the imagery to -->
-        <tile_size>512</tile_size>
-        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-    </image>
-      
-    <image name="ags-trans" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/Reference/ESRI_Transportation_World_2D/MapServer</url>
-
-        <!--Specify a tile_size to reproject the imagery to -->
-        <tile_size>512</tile_size>
-    </image>
-
-</map>
diff --git a/tests/arc_preemptive.earth b/tests/arc_preemptive.earth
deleted file mode 100644
index f172c20..0000000
--- a/tests/arc_preemptive.earth
+++ /dev/null
@@ -1,44 +0,0 @@
-<!--
-osgEarth Sample
-
-This map shows how to use the preemptive loading mode of osgearth. Preemptive
-mode prioritizes the highest visible imagery LOD, skipping intermediate
-levels. It also demonstrates per-layer resource allocation. Preemptive mode
-uses a pool of loading threads to fetch tiles. You can use "loading_weight"
-to give some layers more threads than others.
-
-Please note that use of ESRI's free maps is subject to certain restrictions:
-http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
--->
-
-<map name="ESRI Imagery and Roads" type="geocentric" version="2">        
-
-    <!-- Set a "preemptive" loading policy, and set the number of
-         loading threads to use. -->
-    <options>
-        <terrain>
-            <loading_policy mode="preemptive" loading_threads_per_core="3"/>
-        </terrain>
-    </options>
-    
-    <!-- loading_weight specifies the relative number of threads
-         to use for this particular layer.  For heightfield layers,
-         the highest specified loading_weight for all heightfield layers
-         will be used.  For imagery layers, a separate group of threads
-         will be allocated to handle each layer. -->
-         
-    <image name="arcgisonline esri imagery" driver="arcgis" loading_weight="1">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-		<compress_textures>true</compress_textures>
-    </image>
-      
-      
-    <!-- We give the transportation layer 5x the resources as the image layer: -->
-    
-    <image name="arcgisonline transportation" driver="arcgis" loading_weight="5">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/Reference/ESRI_Transportation_World_2D/MapServer</url>
-		<compress_textures>true</compress_textures>
-    </image>
-    
-</map>
diff --git a/tests/arc_sequential.earth b/tests/arc_sequential.earth
deleted file mode 100644
index d6d51c2..0000000
--- a/tests/arc_sequential.earth
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-osgEarth Sample
-
-This example shows how to use the "sequential" loading policy.
--->
-
-<map name="ESRI Imagery" type="geocentric" version="2">      
-    <image name="arcgisonline esri imagery" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-    </image>
-
-    <options>
-        <lighting>false</lighting>
-        <terrain>
-            <loading_policy mode="sequential" loading_threads="12"/>
-        </terrain>
-    </options>
-</map>
diff --git a/tests/arcgisonline-utm.earth b/tests/arcgisonline-utm.earth
new file mode 100644
index 0000000..45a4232
--- /dev/null
+++ b/tests/arcgisonline-utm.earth
@@ -0,0 +1,36 @@
+<!--
+osgEarth Sample
+
+This example shows how to pull map tiles from an ESRI ArcGIS Server.
+
+Please note that use of ESRI's free maps is subject to certain restrictions:
+http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
+-->
+
+<map name="ESRI ArcGIS Online UTM" type="projected" version="2">
+    
+    <options>
+        <!--Specify the profile to use since we want to reproject to UTM-->        
+        <profile srs="+proj=utm +zone=17 +ellps=GRS80 +datum=NAD83 +units=m +no_defs" 
+                 xmin="560725.500" ymin="4385762.500" 
+                 xmax="573866.500" ymax="4400705.500"/>
+                 
+        <lighting>false</lighting>
+    </options>
+        
+    <image name="arcgis-world-imagery" driver="arcgis">
+        <url>http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer</url>
+		<nodata_image>http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/100/0/0.jpeg</nodata_image>
+    </image>
+      
+    <image name="arcgis-transportation" driver="arcgis">
+        <url>http://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Transportation/MapServer</url>
+    </image>
+    
+    <options>
+        <lighting>false</lighting>
+        <terrain>
+            <min_tile_range_factor>9</min_tile_range_factor>
+        </terrain>
+    </options>
+</map>
diff --git a/tests/arcgisonline.earth b/tests/arcgisonline.earth
new file mode 100644
index 0000000..2c23bdd
--- /dev/null
+++ b/tests/arcgisonline.earth
@@ -0,0 +1,31 @@
+<!--
+osgEarth Sample
+
+This example shows how to pull map tiles from an ESRI ArcGIS Server.
+
+Please note that use of ESRI's free maps is subject to certain restrictions:
+http://resources.esri.com/arcgisonlineservices/index.cfm?fa=content
+-->
+
+<map name="ArcGIS Online" type="geocentric" version="2">
+        
+    <image name="arcgis-world-imagery" driver="arcgis">
+        <url>http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer</url>
+		<nodata_image>http://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/100/0/0.jpeg</nodata_image>
+    </image>
+      
+    <image name="arcgis-transportation" driver="arcgis">
+        <url>http://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Transportation/MapServer</url>
+    </image>
+    
+    <image name="arcgis-reference-overlay" driver="arcgis">
+        <url>http://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Boundaries_and_Places_Alternate/MapServer</url>
+    </image>
+    
+    <options>
+        <lighting>false</lighting>
+        <terrain>
+            <min_tile_range_factor>9</min_tile_range_factor>
+        </terrain>
+    </options>
+</map>
diff --git a/tests/attenuation_distance.earth b/tests/attenuation_distance.earth
new file mode 100644
index 0000000..268d7ba
--- /dev/null
+++ b/tests/attenuation_distance.earth
@@ -0,0 +1,27 @@
+<!--
+This example demonstrates the "max_range" and "attenuation_distance" settings.
+"max_range" controls the maximum distance from camera (i.e., elevation) from which
+an image layer is visible. The "attenuation_distance" is the range over which that
+layer will "fade in" to view.
+
+Please note that usage of Yahoo! map data is subject to Yahoo!'s terms of service.
+-->
+
+<map name="Yahoo Levels" type="geocentric" version="2">
+
+    <options>
+        <terrain attenuation_distance="1e6"/>
+        <cache_policy usage="no_cache"/>
+    </options>
+    
+    <!-- this level will be visible at lower resolutions -->
+    <image name="yahoo_sat" driver="yahoo">
+        <dataset>satellite</dataset>
+        <max_level>5</max_level>
+    </image> 
+
+    <!-- this level will be visible at higher resolutions -->
+    <image name="yahoo_maps" driver="yahoo" max_range="5e6">
+    </image> 
+   
+</map>
diff --git a/tests/boston.earth b/tests/boston.earth
index 875a2be..c70e0fa 100644
--- a/tests/boston.earth
+++ b/tests/boston.earth
@@ -5,7 +5,7 @@ Demonstrates the use of a Resource Library in order to apply "typical" textures
 to extruded buildings.
 -->
 
-<map name="Resource Library Demo" type="geocentric" version="2">
+<map name="Boston Demo" type="geocentric" version="2">
     
     <image name="ReadyMap.org - Imagery" driver="tms">
         <url>http://readymap.org/readymap/tiles/1.0.0/22/</url>
@@ -18,6 +18,10 @@ to extruded buildings.
             <build_spatial_index>true</build_spatial_index>
         </features>
         
+        <feature_indexing>true</feature_indexing>
+        
+        <fade_in_duration>1.0</fade_in_duration>
+        
         <!--
            The "layout" element activates tiling and paging of the feature set. If you
            omit the layout element, the entire feature set will render as one pre-loaded
@@ -74,22 +78,13 @@ to extruded buildings.
         <lighting>true</lighting>        
     </model>
     
-    
-    <options>
-        <lighting>false</lighting>
-        <terrain>
-            <sample_ratio>0.5</sample_ratio>
-        </terrain>
-        <cache type="tms">
-            <path>osgearth_cache</path>
-        </cache>
-    </options> 
-    
     <external>
-        <viewpoint name="Boston Overview" heading="24.261" height="0" lat="42.34425" long="-71.076262" pitch="-21.6" range="3450"/>
-        <viewpoint name="Boston Downtown 1" heading="117" lat="42.3568" long="-71.0585" height="0" pitch="-20.4" range="1500" />
-        <viewpoint name="Boston Downtown 2" heading="-128.5" lat="42.3582" long="-71.0546" height="0" pitch="-19" range="1620" />
-        <viewpoint name="Boston Street Level" heading="-145.85" lat="42.36460" long="-71.053612" pitch="-10.1" range="85.034"/>
+        <viewpoints>
+            <viewpoint name="Boston Overview" heading="24.261" height="0" lat="42.34425" long="-71.076262" pitch="-21.6" range="3450"/>
+            <viewpoint name="Boston Downtown 1" heading="117" lat="42.3568" long="-71.0585" height="0" pitch="-20.4" range="1500" />
+            <viewpoint name="Boston Downtown 2" heading="-128.5" lat="42.3582" long="-71.0546" height="0" pitch="-19" range="1620" />
+            <viewpoint name="Boston Street Level" heading="-145.85" lat="42.36460" long="-71.053612" pitch="-10.1" range="85.034"/>
+        </viewpoints>
         <sky hours="21.0"/>
     </external>
   
diff --git a/tests/boston_buildings.earth b/tests/boston_buildings.earth
new file mode 100644
index 0000000..86cddf6
--- /dev/null
+++ b/tests/boston_buildings.earth
@@ -0,0 +1,87 @@
+<!--
+osgEarth Sample.
+
+Same as the boston.earth example only it excludes certain buildings
+from being rendered so we can replace them with geospecific models.
+Run this example with:
+
+osgearth_viewer boston_buildings.earth --kml ../data/BostonBuildings.kmz 
+
+..to see the hand modeled buildings.
+-->
+
+<map name="Boston Demo" type="geocentric" version="2">
+    
+    <image name="ReadyMap.org - Imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/22/</url>
+    </image>
+      
+    <model name="buildings" driver="feature_geom">
+             
+        <features name="buildings" driver="ogr">
+            <url>../data/boston_buildings_utm19.shp</url>
+            <build_spatial_index>true</build_spatial_index>
+        </features>
+        
+        <layout>
+            <tile_size_factor>45</tile_size_factor>
+            <level name="default" max_range="20000">
+                <selector class="buildings"/>
+            </level>
+        </layout>
+        
+        <styles>            
+            <library name="us_resources">
+                <url>../data/resources/textures_us/catalog.xml</url>
+            </library>
+            
+            <style type="text/css">
+                buildings {
+                    extrusion-height:      3.5 * max([story_ht_], 1);
+                    extrusion-flatten:     true;
+                    extrusion-wall-style:  building-wall;
+                    extrusion-roof-style:  building-rooftop;
+                    altitude-clamping:     none;
+                }            
+                building-wall {
+                    skin-library:     us_resources;
+                    skin-tags:        building;
+                    skin-random-seed: 1;
+                    fill:             #ffffff;
+                }
+                building-rooftop {
+                    skin-library:     us_resources;
+                    skin-tags:        rooftop;
+                    skin-tiled:       true;
+                    skin-random-seed: 1;
+                    fill:             #ffffff;
+                }
+            </style>
+			
+						
+		    <!--Exclude certain buildings from being rendered b/c they will be replaced with geospecific buildings -->
+			<selector class="buildings">
+                <query>
+                    <expr><![CDATA[ OBJECTID_1 <> 91506 and OBJECTID_1 <> 12921 and OBJECTID_1 <> 11460 and OBJECTID_1 <> 11474 and OBJECTID_1 <> 11471 and OBJECTID_1 <> 11439 and OBJECTID_1 <> 11432 and  OBJECTID_1 <> 91499 and OBJECTID_1 <> 10878 ]]> </expr>
+                </query>
+            </selector>			
+			
+        </styles>
+
+        <lighting>true</lighting>        
+    </model>
+    
+    
+    <options>
+        <lighting>false</lighting>
+    </options> 
+    
+    <external>
+        <viewpoint name="Boston Overview" heading="24.261" height="0" lat="42.34425" long="-71.076262" pitch="-21.6" range="3450"/>
+        <viewpoint name="Boston Downtown 1" heading="117" lat="42.3568" long="-71.0585" height="0" pitch="-20.4" range="1500" />
+        <viewpoint name="Boston Downtown 2" heading="-128.5" lat="42.3582" long="-71.0546" height="0" pitch="-19" range="1620" />
+        <viewpoint name="Boston Street Level" heading="-145.85" lat="42.36460" long="-71.053612" pitch="-10.1" range="85.034"/>
+        <sky hours="21.0"/>
+    </external>
+  
+</map>
diff --git a/tests/boston_tfs.earth b/tests/boston_tfs.earth
new file mode 100644
index 0000000..802a118
--- /dev/null
+++ b/tests/boston_tfs.earth
@@ -0,0 +1,50 @@
+<!--
+osgEarth Sample.
+
+Demonstrates TFS feature source.
+-->
+
+<map name="Boston Demo" type="geocentric" version="2">
+    
+    <image name="ReadyMap.org - Imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/22/</url>
+    </image>
+      
+    <model name="buildings" driver="feature_geom">
+             
+        <features name="buildings" driver="tfs">
+            <url>../data/tfs_boston.zip/layer/tfs.xml</url>
+            <format>json</format>
+        </features>
+        
+        <layout>
+            <tile_size_factor>10</tile_size_factor>
+        </layout>
+        
+        <styles>            
+            <style type="text/css">
+                buildings {
+                    extrusion-height:      3.5 * max([story_ht_], 1);
+                    extrusion-flatten:     true;
+                    fill:                  #7f7f7f;
+                    stroke:                #4f4f4f;
+                }
+            </style>
+        </styles>
+
+        <lighting>true</lighting>        
+    </model>
+    
+    
+    <options>
+        <lighting>false</lighting>
+    </options> 
+    
+    <external>
+        <viewpoints>
+            <viewpoint name="Boston Overview" heading="24.261" height="0" lat="42.34425" long="-71.076262" pitch="-21.6" range="3450"/>
+        </viewpoints>
+        <sky hours="21.0"/>
+    </external>
+  
+</map>
diff --git a/tests/cache_readymap/186c072c/1/0/0.png b/tests/cache_readymap/186c072c/1/0/0.png
new file mode 100644
index 0000000..ecc2cca
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/0/0.png differ
diff --git a/tests/cache_readymap/186c072c/1/0/1.png b/tests/cache_readymap/186c072c/1/0/1.png
new file mode 100644
index 0000000..fc1ceb1
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/0/1.png differ
diff --git a/tests/cache_readymap/186c072c/1/1/0.png b/tests/cache_readymap/186c072c/1/1/0.png
new file mode 100644
index 0000000..69cd11a
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/1/0.png differ
diff --git a/tests/cache_readymap/186c072c/1/1/1.png b/tests/cache_readymap/186c072c/1/1/1.png
new file mode 100644
index 0000000..4ee778c
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/1/1.png differ
diff --git a/tests/cache_readymap/186c072c/1/2/0.png b/tests/cache_readymap/186c072c/1/2/0.png
new file mode 100644
index 0000000..4cd96e9
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/2/0.png differ
diff --git a/tests/cache_readymap/186c072c/1/2/1.png b/tests/cache_readymap/186c072c/1/2/1.png
new file mode 100644
index 0000000..83e44fc
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/2/1.png differ
diff --git a/tests/cache_readymap/186c072c/1/3/0.png b/tests/cache_readymap/186c072c/1/3/0.png
new file mode 100644
index 0000000..fa4708f
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/3/0.png differ
diff --git a/tests/cache_readymap/186c072c/1/3/1.png b/tests/cache_readymap/186c072c/1/3/1.png
new file mode 100644
index 0000000..271a318
Binary files /dev/null and b/tests/cache_readymap/186c072c/1/3/1.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/778.png b/tests/cache_readymap/186c072c/10/1070/778.png
new file mode 100644
index 0000000..ba52ee9
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/779.png b/tests/cache_readymap/186c072c/10/1070/779.png
new file mode 100644
index 0000000..f6fdf0a
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/780.png b/tests/cache_readymap/186c072c/10/1070/780.png
new file mode 100644
index 0000000..8952ba2
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/781.png b/tests/cache_readymap/186c072c/10/1070/781.png
new file mode 100644
index 0000000..8e11a26
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/782.png b/tests/cache_readymap/186c072c/10/1070/782.png
new file mode 100644
index 0000000..241f8fa
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/782.png differ
diff --git a/tests/cache_readymap/186c072c/10/1070/783.png b/tests/cache_readymap/186c072c/10/1070/783.png
new file mode 100644
index 0000000..acc1cea
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1070/783.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/778.png b/tests/cache_readymap/186c072c/10/1071/778.png
new file mode 100644
index 0000000..616b35e
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/779.png b/tests/cache_readymap/186c072c/10/1071/779.png
new file mode 100644
index 0000000..451001e
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/780.png b/tests/cache_readymap/186c072c/10/1071/780.png
new file mode 100644
index 0000000..5ff7560
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/781.png b/tests/cache_readymap/186c072c/10/1071/781.png
new file mode 100644
index 0000000..5eb6a54
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/782.png b/tests/cache_readymap/186c072c/10/1071/782.png
new file mode 100644
index 0000000..686f4e3
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/782.png differ
diff --git a/tests/cache_readymap/186c072c/10/1071/783.png b/tests/cache_readymap/186c072c/10/1071/783.png
new file mode 100644
index 0000000..7faba72
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1071/783.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/778.png b/tests/cache_readymap/186c072c/10/1072/778.png
new file mode 100644
index 0000000..462640c
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/779.png b/tests/cache_readymap/186c072c/10/1072/779.png
new file mode 100644
index 0000000..63751ac
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/780.png b/tests/cache_readymap/186c072c/10/1072/780.png
new file mode 100644
index 0000000..1506adb
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/781.png b/tests/cache_readymap/186c072c/10/1072/781.png
new file mode 100644
index 0000000..ac9a2d2
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/782.png b/tests/cache_readymap/186c072c/10/1072/782.png
new file mode 100644
index 0000000..15fc262
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/782.png differ
diff --git a/tests/cache_readymap/186c072c/10/1072/783.png b/tests/cache_readymap/186c072c/10/1072/783.png
new file mode 100644
index 0000000..29600d0
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1072/783.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/778.png b/tests/cache_readymap/186c072c/10/1073/778.png
new file mode 100644
index 0000000..9ef2ff4
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/779.png b/tests/cache_readymap/186c072c/10/1073/779.png
new file mode 100644
index 0000000..4298338
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/780.png b/tests/cache_readymap/186c072c/10/1073/780.png
new file mode 100644
index 0000000..e4b21e3
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/781.png b/tests/cache_readymap/186c072c/10/1073/781.png
new file mode 100644
index 0000000..bc2fc8f
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/782.png b/tests/cache_readymap/186c072c/10/1073/782.png
new file mode 100644
index 0000000..c78b46a
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/782.png differ
diff --git a/tests/cache_readymap/186c072c/10/1073/783.png b/tests/cache_readymap/186c072c/10/1073/783.png
new file mode 100644
index 0000000..db90c96
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1073/783.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/776.png b/tests/cache_readymap/186c072c/10/1074/776.png
new file mode 100644
index 0000000..b3cfc22
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/777.png b/tests/cache_readymap/186c072c/10/1074/777.png
new file mode 100644
index 0000000..c0db33b
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/778.png b/tests/cache_readymap/186c072c/10/1074/778.png
new file mode 100644
index 0000000..0808485
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/779.png b/tests/cache_readymap/186c072c/10/1074/779.png
new file mode 100644
index 0000000..cc3fc80
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/780.png b/tests/cache_readymap/186c072c/10/1074/780.png
new file mode 100644
index 0000000..988c921
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1074/781.png b/tests/cache_readymap/186c072c/10/1074/781.png
new file mode 100644
index 0000000..47b1b91
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1074/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/776.png b/tests/cache_readymap/186c072c/10/1075/776.png
new file mode 100644
index 0000000..7a4ccd8
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/777.png b/tests/cache_readymap/186c072c/10/1075/777.png
new file mode 100644
index 0000000..86b6573
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/778.png b/tests/cache_readymap/186c072c/10/1075/778.png
new file mode 100644
index 0000000..1fc25f5
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/779.png b/tests/cache_readymap/186c072c/10/1075/779.png
new file mode 100644
index 0000000..a465697
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/780.png b/tests/cache_readymap/186c072c/10/1075/780.png
new file mode 100644
index 0000000..0c221a1
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/780.png differ
diff --git a/tests/cache_readymap/186c072c/10/1075/781.png b/tests/cache_readymap/186c072c/10/1075/781.png
new file mode 100644
index 0000000..3e9fea1
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1075/781.png differ
diff --git a/tests/cache_readymap/186c072c/10/1076/776.png b/tests/cache_readymap/186c072c/10/1076/776.png
new file mode 100644
index 0000000..b194181
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1076/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1076/777.png b/tests/cache_readymap/186c072c/10/1076/777.png
new file mode 100644
index 0000000..f04dec8
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1076/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1076/778.png b/tests/cache_readymap/186c072c/10/1076/778.png
new file mode 100644
index 0000000..75dfea8
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1076/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1076/779.png b/tests/cache_readymap/186c072c/10/1076/779.png
new file mode 100644
index 0000000..9501d65
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1076/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1077/776.png b/tests/cache_readymap/186c072c/10/1077/776.png
new file mode 100644
index 0000000..b1ec6c0
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1077/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1077/777.png b/tests/cache_readymap/186c072c/10/1077/777.png
new file mode 100644
index 0000000..39584a4
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1077/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1077/778.png b/tests/cache_readymap/186c072c/10/1077/778.png
new file mode 100644
index 0000000..7322057
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1077/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1077/779.png b/tests/cache_readymap/186c072c/10/1077/779.png
new file mode 100644
index 0000000..c4a3509
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1077/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1078/776.png b/tests/cache_readymap/186c072c/10/1078/776.png
new file mode 100644
index 0000000..4a66f4d
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1078/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1078/777.png b/tests/cache_readymap/186c072c/10/1078/777.png
new file mode 100644
index 0000000..aaad2d5
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1078/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1078/778.png b/tests/cache_readymap/186c072c/10/1078/778.png
new file mode 100644
index 0000000..d60f123
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1078/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1078/779.png b/tests/cache_readymap/186c072c/10/1078/779.png
new file mode 100644
index 0000000..f1b5b01
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1078/779.png differ
diff --git a/tests/cache_readymap/186c072c/10/1079/776.png b/tests/cache_readymap/186c072c/10/1079/776.png
new file mode 100644
index 0000000..8aab861
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1079/776.png differ
diff --git a/tests/cache_readymap/186c072c/10/1079/777.png b/tests/cache_readymap/186c072c/10/1079/777.png
new file mode 100644
index 0000000..e030306
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1079/777.png differ
diff --git a/tests/cache_readymap/186c072c/10/1079/778.png b/tests/cache_readymap/186c072c/10/1079/778.png
new file mode 100644
index 0000000..8d8ce76
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1079/778.png differ
diff --git a/tests/cache_readymap/186c072c/10/1079/779.png b/tests/cache_readymap/186c072c/10/1079/779.png
new file mode 100644
index 0000000..57635ab
Binary files /dev/null and b/tests/cache_readymap/186c072c/10/1079/779.png differ
diff --git a/tests/cache_readymap/186c072c/11/2142/1562.png b/tests/cache_readymap/186c072c/11/2142/1562.png
new file mode 100644
index 0000000..4a5e3b4
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2142/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2142/1563.png b/tests/cache_readymap/186c072c/11/2142/1563.png
new file mode 100644
index 0000000..681e9e6
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2142/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2143/1562.png b/tests/cache_readymap/186c072c/11/2143/1562.png
new file mode 100644
index 0000000..74b54ef
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2143/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2143/1563.png b/tests/cache_readymap/186c072c/11/2143/1563.png
new file mode 100644
index 0000000..8c14301
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2143/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1558.png b/tests/cache_readymap/186c072c/11/2144/1558.png
new file mode 100644
index 0000000..7e999ec
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1558.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1559.png b/tests/cache_readymap/186c072c/11/2144/1559.png
new file mode 100644
index 0000000..cfcf849
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1559.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1560.png b/tests/cache_readymap/186c072c/11/2144/1560.png
new file mode 100644
index 0000000..b9086d0
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1560.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1561.png b/tests/cache_readymap/186c072c/11/2144/1561.png
new file mode 100644
index 0000000..3b87af5
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1561.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1562.png b/tests/cache_readymap/186c072c/11/2144/1562.png
new file mode 100644
index 0000000..f2ad4a9
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2144/1563.png b/tests/cache_readymap/186c072c/11/2144/1563.png
new file mode 100644
index 0000000..8401d81
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2144/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1558.png b/tests/cache_readymap/186c072c/11/2145/1558.png
new file mode 100644
index 0000000..7467a61
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1558.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1559.png b/tests/cache_readymap/186c072c/11/2145/1559.png
new file mode 100644
index 0000000..dd2cce4
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1559.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1560.png b/tests/cache_readymap/186c072c/11/2145/1560.png
new file mode 100644
index 0000000..60099c7
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1560.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1561.png b/tests/cache_readymap/186c072c/11/2145/1561.png
new file mode 100644
index 0000000..2f0a85c
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1561.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1562.png b/tests/cache_readymap/186c072c/11/2145/1562.png
new file mode 100644
index 0000000..6c3feaf
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2145/1563.png b/tests/cache_readymap/186c072c/11/2145/1563.png
new file mode 100644
index 0000000..a8c1dc6
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2145/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2146/1560.png b/tests/cache_readymap/186c072c/11/2146/1560.png
new file mode 100644
index 0000000..80c72fd
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2146/1560.png differ
diff --git a/tests/cache_readymap/186c072c/11/2146/1561.png b/tests/cache_readymap/186c072c/11/2146/1561.png
new file mode 100644
index 0000000..9a02016
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2146/1561.png differ
diff --git a/tests/cache_readymap/186c072c/11/2146/1562.png b/tests/cache_readymap/186c072c/11/2146/1562.png
new file mode 100644
index 0000000..af6fe7a
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2146/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2146/1563.png b/tests/cache_readymap/186c072c/11/2146/1563.png
new file mode 100644
index 0000000..50f9a3d
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2146/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2147/1560.png b/tests/cache_readymap/186c072c/11/2147/1560.png
new file mode 100644
index 0000000..0a9f977
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2147/1560.png differ
diff --git a/tests/cache_readymap/186c072c/11/2147/1561.png b/tests/cache_readymap/186c072c/11/2147/1561.png
new file mode 100644
index 0000000..3bd2ea1
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2147/1561.png differ
diff --git a/tests/cache_readymap/186c072c/11/2147/1562.png b/tests/cache_readymap/186c072c/11/2147/1562.png
new file mode 100644
index 0000000..94449b8
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2147/1562.png differ
diff --git a/tests/cache_readymap/186c072c/11/2147/1563.png b/tests/cache_readymap/186c072c/11/2147/1563.png
new file mode 100644
index 0000000..f8ffef2
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2147/1563.png differ
diff --git a/tests/cache_readymap/186c072c/11/2154/1556.png b/tests/cache_readymap/186c072c/11/2154/1556.png
new file mode 100644
index 0000000..c6b7388
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2154/1556.png differ
diff --git a/tests/cache_readymap/186c072c/11/2154/1557.png b/tests/cache_readymap/186c072c/11/2154/1557.png
new file mode 100644
index 0000000..d16865d
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2154/1557.png differ
diff --git a/tests/cache_readymap/186c072c/11/2155/1556.png b/tests/cache_readymap/186c072c/11/2155/1556.png
new file mode 100644
index 0000000..d4bf5c4
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2155/1556.png differ
diff --git a/tests/cache_readymap/186c072c/11/2155/1557.png b/tests/cache_readymap/186c072c/11/2155/1557.png
new file mode 100644
index 0000000..4fbc355
Binary files /dev/null and b/tests/cache_readymap/186c072c/11/2155/1557.png differ
diff --git a/tests/cache_readymap/186c072c/12/4288/3122.png b/tests/cache_readymap/186c072c/12/4288/3122.png
new file mode 100644
index 0000000..dd77b36
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4288/3122.png differ
diff --git a/tests/cache_readymap/186c072c/12/4288/3123.png b/tests/cache_readymap/186c072c/12/4288/3123.png
new file mode 100644
index 0000000..12b3097
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4288/3123.png differ
diff --git a/tests/cache_readymap/186c072c/12/4288/3124.png b/tests/cache_readymap/186c072c/12/4288/3124.png
new file mode 100644
index 0000000..ef8466e
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4288/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4288/3125.png b/tests/cache_readymap/186c072c/12/4288/3125.png
new file mode 100644
index 0000000..5ec42a3
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4288/3125.png differ
diff --git a/tests/cache_readymap/186c072c/12/4289/3122.png b/tests/cache_readymap/186c072c/12/4289/3122.png
new file mode 100644
index 0000000..b0a7d5d
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4289/3122.png differ
diff --git a/tests/cache_readymap/186c072c/12/4289/3123.png b/tests/cache_readymap/186c072c/12/4289/3123.png
new file mode 100644
index 0000000..638cb61
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4289/3123.png differ
diff --git a/tests/cache_readymap/186c072c/12/4289/3124.png b/tests/cache_readymap/186c072c/12/4289/3124.png
new file mode 100644
index 0000000..e42f122
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4289/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4289/3125.png b/tests/cache_readymap/186c072c/12/4289/3125.png
new file mode 100644
index 0000000..59e2efd
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4289/3125.png differ
diff --git a/tests/cache_readymap/186c072c/12/4290/3122.png b/tests/cache_readymap/186c072c/12/4290/3122.png
new file mode 100644
index 0000000..4296577
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4290/3122.png differ
diff --git a/tests/cache_readymap/186c072c/12/4290/3123.png b/tests/cache_readymap/186c072c/12/4290/3123.png
new file mode 100644
index 0000000..4a203bd
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4290/3123.png differ
diff --git a/tests/cache_readymap/186c072c/12/4290/3124.png b/tests/cache_readymap/186c072c/12/4290/3124.png
new file mode 100644
index 0000000..dab9887
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4290/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4290/3125.png b/tests/cache_readymap/186c072c/12/4290/3125.png
new file mode 100644
index 0000000..8699ec4
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4290/3125.png differ
diff --git a/tests/cache_readymap/186c072c/12/4291/3122.png b/tests/cache_readymap/186c072c/12/4291/3122.png
new file mode 100644
index 0000000..44e09d2
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4291/3122.png differ
diff --git a/tests/cache_readymap/186c072c/12/4291/3123.png b/tests/cache_readymap/186c072c/12/4291/3123.png
new file mode 100644
index 0000000..2ad763e
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4291/3123.png differ
diff --git a/tests/cache_readymap/186c072c/12/4291/3124.png b/tests/cache_readymap/186c072c/12/4291/3124.png
new file mode 100644
index 0000000..bbe9cc2
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4291/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4291/3125.png b/tests/cache_readymap/186c072c/12/4291/3125.png
new file mode 100644
index 0000000..49581a3
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4291/3125.png differ
diff --git a/tests/cache_readymap/186c072c/12/4292/3124.png b/tests/cache_readymap/186c072c/12/4292/3124.png
new file mode 100644
index 0000000..e332a8e
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4292/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4292/3125.png b/tests/cache_readymap/186c072c/12/4292/3125.png
new file mode 100644
index 0000000..83ce54d
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4292/3125.png differ
diff --git a/tests/cache_readymap/186c072c/12/4293/3124.png b/tests/cache_readymap/186c072c/12/4293/3124.png
new file mode 100644
index 0000000..a367ad1
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4293/3124.png differ
diff --git a/tests/cache_readymap/186c072c/12/4293/3125.png b/tests/cache_readymap/186c072c/12/4293/3125.png
new file mode 100644
index 0000000..8054140
Binary files /dev/null and b/tests/cache_readymap/186c072c/12/4293/3125.png differ
diff --git a/tests/cache_readymap/186c072c/13/8578/6246.png b/tests/cache_readymap/186c072c/13/8578/6246.png
new file mode 100644
index 0000000..68f18e5
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8578/6246.png differ
diff --git a/tests/cache_readymap/186c072c/13/8578/6247.png b/tests/cache_readymap/186c072c/13/8578/6247.png
new file mode 100644
index 0000000..9b12d32
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8578/6247.png differ
diff --git a/tests/cache_readymap/186c072c/13/8578/6250.png b/tests/cache_readymap/186c072c/13/8578/6250.png
new file mode 100644
index 0000000..c6886e2
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8578/6250.png differ
diff --git a/tests/cache_readymap/186c072c/13/8578/6251.png b/tests/cache_readymap/186c072c/13/8578/6251.png
new file mode 100644
index 0000000..435e1d1
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8578/6251.png differ
diff --git a/tests/cache_readymap/186c072c/13/8579/6246.png b/tests/cache_readymap/186c072c/13/8579/6246.png
new file mode 100644
index 0000000..e915752
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8579/6246.png differ
diff --git a/tests/cache_readymap/186c072c/13/8579/6247.png b/tests/cache_readymap/186c072c/13/8579/6247.png
new file mode 100644
index 0000000..0d4e593
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8579/6247.png differ
diff --git a/tests/cache_readymap/186c072c/13/8579/6250.png b/tests/cache_readymap/186c072c/13/8579/6250.png
new file mode 100644
index 0000000..1719e98
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8579/6250.png differ
diff --git a/tests/cache_readymap/186c072c/13/8579/6251.png b/tests/cache_readymap/186c072c/13/8579/6251.png
new file mode 100644
index 0000000..98c77cc
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8579/6251.png differ
diff --git a/tests/cache_readymap/186c072c/13/8580/6246.png b/tests/cache_readymap/186c072c/13/8580/6246.png
new file mode 100644
index 0000000..e1453d9
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8580/6246.png differ
diff --git a/tests/cache_readymap/186c072c/13/8580/6247.png b/tests/cache_readymap/186c072c/13/8580/6247.png
new file mode 100644
index 0000000..ff29975
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8580/6247.png differ
diff --git a/tests/cache_readymap/186c072c/13/8580/6250.png b/tests/cache_readymap/186c072c/13/8580/6250.png
new file mode 100644
index 0000000..719b5af
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8580/6250.png differ
diff --git a/tests/cache_readymap/186c072c/13/8580/6251.png b/tests/cache_readymap/186c072c/13/8580/6251.png
new file mode 100644
index 0000000..5201cc3
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8580/6251.png differ
diff --git a/tests/cache_readymap/186c072c/13/8581/6246.png b/tests/cache_readymap/186c072c/13/8581/6246.png
new file mode 100644
index 0000000..813c1a8
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8581/6246.png differ
diff --git a/tests/cache_readymap/186c072c/13/8581/6247.png b/tests/cache_readymap/186c072c/13/8581/6247.png
new file mode 100644
index 0000000..4aa685f
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8581/6247.png differ
diff --git a/tests/cache_readymap/186c072c/13/8581/6250.png b/tests/cache_readymap/186c072c/13/8581/6250.png
new file mode 100644
index 0000000..2653fd2
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8581/6250.png differ
diff --git a/tests/cache_readymap/186c072c/13/8581/6251.png b/tests/cache_readymap/186c072c/13/8581/6251.png
new file mode 100644
index 0000000..baee27d
Binary files /dev/null and b/tests/cache_readymap/186c072c/13/8581/6251.png differ
diff --git a/tests/cache_readymap/186c072c/2/0/0.png b/tests/cache_readymap/186c072c/2/0/0.png
new file mode 100644
index 0000000..6b84a9a
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/0/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/0/1.png b/tests/cache_readymap/186c072c/2/0/1.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/0/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/0/2.png b/tests/cache_readymap/186c072c/2/0/2.png
new file mode 100644
index 0000000..db711a5
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/0/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/0/3.png b/tests/cache_readymap/186c072c/2/0/3.png
new file mode 100644
index 0000000..6d51b1a
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/0/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/1/0.png b/tests/cache_readymap/186c072c/2/1/0.png
new file mode 100644
index 0000000..eb9de8b
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/1/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/1/1.png b/tests/cache_readymap/186c072c/2/1/1.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/1/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/1/2.png b/tests/cache_readymap/186c072c/2/1/2.png
new file mode 100644
index 0000000..cc8ae51
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/1/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/1/3.png b/tests/cache_readymap/186c072c/2/1/3.png
new file mode 100644
index 0000000..b25c8d8
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/1/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/2/0.png b/tests/cache_readymap/186c072c/2/2/0.png
new file mode 100644
index 0000000..ac8710d
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/2/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/2/1.png b/tests/cache_readymap/186c072c/2/2/1.png
new file mode 100644
index 0000000..7dadd4d
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/2/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/2/2.png b/tests/cache_readymap/186c072c/2/2/2.png
new file mode 100644
index 0000000..c5d328e
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/2/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/2/3.png b/tests/cache_readymap/186c072c/2/2/3.png
new file mode 100644
index 0000000..5e148fa
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/2/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/3/0.png b/tests/cache_readymap/186c072c/2/3/0.png
new file mode 100644
index 0000000..1c00463
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/3/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/3/1.png b/tests/cache_readymap/186c072c/2/3/1.png
new file mode 100644
index 0000000..4fa043c
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/3/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/3/2.png b/tests/cache_readymap/186c072c/2/3/2.png
new file mode 100644
index 0000000..0c2aea3
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/3/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/3/3.png b/tests/cache_readymap/186c072c/2/3/3.png
new file mode 100644
index 0000000..0b09d27
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/3/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/4/0.png b/tests/cache_readymap/186c072c/2/4/0.png
new file mode 100644
index 0000000..cb7670f
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/4/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/4/1.png b/tests/cache_readymap/186c072c/2/4/1.png
new file mode 100644
index 0000000..0935627
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/4/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/4/2.png b/tests/cache_readymap/186c072c/2/4/2.png
new file mode 100644
index 0000000..e94224d
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/4/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/4/3.png b/tests/cache_readymap/186c072c/2/4/3.png
new file mode 100644
index 0000000..6ed38ff
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/4/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/5/0.png b/tests/cache_readymap/186c072c/2/5/0.png
new file mode 100644
index 0000000..945a302
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/5/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/5/1.png b/tests/cache_readymap/186c072c/2/5/1.png
new file mode 100644
index 0000000..07af245
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/5/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/5/2.png b/tests/cache_readymap/186c072c/2/5/2.png
new file mode 100644
index 0000000..4004a48
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/5/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/5/3.png b/tests/cache_readymap/186c072c/2/5/3.png
new file mode 100644
index 0000000..b18246e
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/5/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/6/0.png b/tests/cache_readymap/186c072c/2/6/0.png
new file mode 100644
index 0000000..94d10de
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/6/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/6/1.png b/tests/cache_readymap/186c072c/2/6/1.png
new file mode 100644
index 0000000..98386d9
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/6/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/6/2.png b/tests/cache_readymap/186c072c/2/6/2.png
new file mode 100644
index 0000000..6cceda4
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/6/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/6/3.png b/tests/cache_readymap/186c072c/2/6/3.png
new file mode 100644
index 0000000..e0842e6
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/6/3.png differ
diff --git a/tests/cache_readymap/186c072c/2/7/0.png b/tests/cache_readymap/186c072c/2/7/0.png
new file mode 100644
index 0000000..ce11b95
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/7/0.png differ
diff --git a/tests/cache_readymap/186c072c/2/7/1.png b/tests/cache_readymap/186c072c/2/7/1.png
new file mode 100644
index 0000000..2735d43
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/7/1.png differ
diff --git a/tests/cache_readymap/186c072c/2/7/2.png b/tests/cache_readymap/186c072c/2/7/2.png
new file mode 100644
index 0000000..050e86d
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/7/2.png differ
diff --git a/tests/cache_readymap/186c072c/2/7/3.png b/tests/cache_readymap/186c072c/2/7/3.png
new file mode 100644
index 0000000..d52ab98
Binary files /dev/null and b/tests/cache_readymap/186c072c/2/7/3.png differ
diff --git a/tests/cache_readymap/186c072c/3/10/4.png b/tests/cache_readymap/186c072c/3/10/4.png
new file mode 100644
index 0000000..bcd08e2
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/10/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/10/5.png b/tests/cache_readymap/186c072c/3/10/5.png
new file mode 100644
index 0000000..14a3b84
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/10/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/10/6.png b/tests/cache_readymap/186c072c/3/10/6.png
new file mode 100644
index 0000000..51be4b8
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/10/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/10/7.png b/tests/cache_readymap/186c072c/3/10/7.png
new file mode 100644
index 0000000..c7a3de7
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/10/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/11/4.png b/tests/cache_readymap/186c072c/3/11/4.png
new file mode 100644
index 0000000..a0b156a
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/11/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/11/5.png b/tests/cache_readymap/186c072c/3/11/5.png
new file mode 100644
index 0000000..ed0af21
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/11/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/11/6.png b/tests/cache_readymap/186c072c/3/11/6.png
new file mode 100644
index 0000000..d1b9719
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/11/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/11/7.png b/tests/cache_readymap/186c072c/3/11/7.png
new file mode 100644
index 0000000..2c78346
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/11/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/12/4.png b/tests/cache_readymap/186c072c/3/12/4.png
new file mode 100644
index 0000000..c9cb9f1
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/12/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/12/5.png b/tests/cache_readymap/186c072c/3/12/5.png
new file mode 100644
index 0000000..571676d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/12/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/12/6.png b/tests/cache_readymap/186c072c/3/12/6.png
new file mode 100644
index 0000000..a125524
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/12/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/12/7.png b/tests/cache_readymap/186c072c/3/12/7.png
new file mode 100644
index 0000000..90cc815
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/12/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/13/4.png b/tests/cache_readymap/186c072c/3/13/4.png
new file mode 100644
index 0000000..0123853
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/13/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/13/5.png b/tests/cache_readymap/186c072c/3/13/5.png
new file mode 100644
index 0000000..cf30eff
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/13/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/13/6.png b/tests/cache_readymap/186c072c/3/13/6.png
new file mode 100644
index 0000000..22c40ef
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/13/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/13/7.png b/tests/cache_readymap/186c072c/3/13/7.png
new file mode 100644
index 0000000..767dc59
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/13/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/14/6.png b/tests/cache_readymap/186c072c/3/14/6.png
new file mode 100644
index 0000000..948315b
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/14/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/14/7.png b/tests/cache_readymap/186c072c/3/14/7.png
new file mode 100644
index 0000000..650a51c
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/14/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/15/6.png b/tests/cache_readymap/186c072c/3/15/6.png
new file mode 100644
index 0000000..07b172f
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/15/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/15/7.png b/tests/cache_readymap/186c072c/3/15/7.png
new file mode 100644
index 0000000..210eaf4
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/15/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/2.png b/tests/cache_readymap/186c072c/3/2/2.png
new file mode 100644
index 0000000..698314a
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/2.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/3.png b/tests/cache_readymap/186c072c/3/2/3.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/3.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/4.png b/tests/cache_readymap/186c072c/3/2/4.png
new file mode 100644
index 0000000..5d54da5
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/5.png b/tests/cache_readymap/186c072c/3/2/5.png
new file mode 100644
index 0000000..24542de
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/6.png b/tests/cache_readymap/186c072c/3/2/6.png
new file mode 100644
index 0000000..6b20eb7
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/2/7.png b/tests/cache_readymap/186c072c/3/2/7.png
new file mode 100644
index 0000000..51e5bfb
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/2/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/2.png b/tests/cache_readymap/186c072c/3/3/2.png
new file mode 100644
index 0000000..78329e8
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/2.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/3.png b/tests/cache_readymap/186c072c/3/3/3.png
new file mode 100644
index 0000000..6c09710
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/3.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/4.png b/tests/cache_readymap/186c072c/3/3/4.png
new file mode 100644
index 0000000..72153fa
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/5.png b/tests/cache_readymap/186c072c/3/3/5.png
new file mode 100644
index 0000000..103aee5
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/6.png b/tests/cache_readymap/186c072c/3/3/6.png
new file mode 100644
index 0000000..271030d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/3/7.png b/tests/cache_readymap/186c072c/3/3/7.png
new file mode 100644
index 0000000..c953254
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/3/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/2.png b/tests/cache_readymap/186c072c/3/4/2.png
new file mode 100644
index 0000000..5a122e5
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/2.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/3.png b/tests/cache_readymap/186c072c/3/4/3.png
new file mode 100644
index 0000000..a4fa594
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/3.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/4.png b/tests/cache_readymap/186c072c/3/4/4.png
new file mode 100644
index 0000000..0bd5968
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/5.png b/tests/cache_readymap/186c072c/3/4/5.png
new file mode 100644
index 0000000..789f2e1
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/6.png b/tests/cache_readymap/186c072c/3/4/6.png
new file mode 100644
index 0000000..1b09768
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/4/7.png b/tests/cache_readymap/186c072c/3/4/7.png
new file mode 100644
index 0000000..2f1b129
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/4/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/2.png b/tests/cache_readymap/186c072c/3/5/2.png
new file mode 100644
index 0000000..5584c82
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/2.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/3.png b/tests/cache_readymap/186c072c/3/5/3.png
new file mode 100644
index 0000000..44b44c2
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/3.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/4.png b/tests/cache_readymap/186c072c/3/5/4.png
new file mode 100644
index 0000000..decc94c
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/5.png b/tests/cache_readymap/186c072c/3/5/5.png
new file mode 100644
index 0000000..c22623d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/6.png b/tests/cache_readymap/186c072c/3/5/6.png
new file mode 100644
index 0000000..23eab31
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/5/7.png b/tests/cache_readymap/186c072c/3/5/7.png
new file mode 100644
index 0000000..2707fe9
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/5/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/6/4.png b/tests/cache_readymap/186c072c/3/6/4.png
new file mode 100644
index 0000000..c6dd3d9
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/6/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/6/5.png b/tests/cache_readymap/186c072c/3/6/5.png
new file mode 100644
index 0000000..6754b08
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/6/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/6/6.png b/tests/cache_readymap/186c072c/3/6/6.png
new file mode 100644
index 0000000..ef9fdee
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/6/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/6/7.png b/tests/cache_readymap/186c072c/3/6/7.png
new file mode 100644
index 0000000..0a462c6
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/6/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/7/4.png b/tests/cache_readymap/186c072c/3/7/4.png
new file mode 100644
index 0000000..1499c49
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/7/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/7/5.png b/tests/cache_readymap/186c072c/3/7/5.png
new file mode 100644
index 0000000..2cb48ea
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/7/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/7/6.png b/tests/cache_readymap/186c072c/3/7/6.png
new file mode 100644
index 0000000..b03ade6
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/7/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/7/7.png b/tests/cache_readymap/186c072c/3/7/7.png
new file mode 100644
index 0000000..94cffe4
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/7/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/8/4.png b/tests/cache_readymap/186c072c/3/8/4.png
new file mode 100644
index 0000000..28b554f
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/8/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/8/5.png b/tests/cache_readymap/186c072c/3/8/5.png
new file mode 100644
index 0000000..9480d60
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/8/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/8/6.png b/tests/cache_readymap/186c072c/3/8/6.png
new file mode 100644
index 0000000..4132037
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/8/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/8/7.png b/tests/cache_readymap/186c072c/3/8/7.png
new file mode 100644
index 0000000..d33bb6f
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/8/7.png differ
diff --git a/tests/cache_readymap/186c072c/3/9/4.png b/tests/cache_readymap/186c072c/3/9/4.png
new file mode 100644
index 0000000..e6ce12d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/9/4.png differ
diff --git a/tests/cache_readymap/186c072c/3/9/5.png b/tests/cache_readymap/186c072c/3/9/5.png
new file mode 100644
index 0000000..10d894d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/9/5.png differ
diff --git a/tests/cache_readymap/186c072c/3/9/6.png b/tests/cache_readymap/186c072c/3/9/6.png
new file mode 100644
index 0000000..ea27193
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/9/6.png differ
diff --git a/tests/cache_readymap/186c072c/3/9/7.png b/tests/cache_readymap/186c072c/3/9/7.png
new file mode 100644
index 0000000..6e3a51d
Binary files /dev/null and b/tests/cache_readymap/186c072c/3/9/7.png differ
diff --git a/tests/cache_readymap/186c072c/4/12/12.png b/tests/cache_readymap/186c072c/4/12/12.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/12/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/12/13.png b/tests/cache_readymap/186c072c/4/12/13.png
new file mode 100644
index 0000000..2c6e295
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/12/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/13/12.png b/tests/cache_readymap/186c072c/4/13/12.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/13/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/13/13.png b/tests/cache_readymap/186c072c/4/13/13.png
new file mode 100644
index 0000000..a12b127
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/13/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/14/12.png b/tests/cache_readymap/186c072c/4/14/12.png
new file mode 100644
index 0000000..4fe9ab3
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/14/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/14/13.png b/tests/cache_readymap/186c072c/4/14/13.png
new file mode 100644
index 0000000..3e1f69a
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/14/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/15/12.png b/tests/cache_readymap/186c072c/4/15/12.png
new file mode 100644
index 0000000..9a4249d
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/15/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/15/13.png b/tests/cache_readymap/186c072c/4/15/13.png
new file mode 100644
index 0000000..1ac29eb
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/15/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/16/10.png b/tests/cache_readymap/186c072c/4/16/10.png
new file mode 100644
index 0000000..c84bad2
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/16/10.png differ
diff --git a/tests/cache_readymap/186c072c/4/16/11.png b/tests/cache_readymap/186c072c/4/16/11.png
new file mode 100644
index 0000000..76992b6
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/16/11.png differ
diff --git a/tests/cache_readymap/186c072c/4/16/12.png b/tests/cache_readymap/186c072c/4/16/12.png
new file mode 100644
index 0000000..2a8e395
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/16/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/16/13.png b/tests/cache_readymap/186c072c/4/16/13.png
new file mode 100644
index 0000000..b2b8064
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/16/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/17/10.png b/tests/cache_readymap/186c072c/4/17/10.png
new file mode 100644
index 0000000..cac49c9
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/17/10.png differ
diff --git a/tests/cache_readymap/186c072c/4/17/11.png b/tests/cache_readymap/186c072c/4/17/11.png
new file mode 100644
index 0000000..76e2e19
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/17/11.png differ
diff --git a/tests/cache_readymap/186c072c/4/17/12.png b/tests/cache_readymap/186c072c/4/17/12.png
new file mode 100644
index 0000000..c1cfa7d
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/17/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/17/13.png b/tests/cache_readymap/186c072c/4/17/13.png
new file mode 100644
index 0000000..1fb0813
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/17/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/18/10.png b/tests/cache_readymap/186c072c/4/18/10.png
new file mode 100644
index 0000000..5f12dc5
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/18/10.png differ
diff --git a/tests/cache_readymap/186c072c/4/18/11.png b/tests/cache_readymap/186c072c/4/18/11.png
new file mode 100644
index 0000000..df9de65
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/18/11.png differ
diff --git a/tests/cache_readymap/186c072c/4/18/12.png b/tests/cache_readymap/186c072c/4/18/12.png
new file mode 100644
index 0000000..7ac64e5
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/18/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/18/13.png b/tests/cache_readymap/186c072c/4/18/13.png
new file mode 100644
index 0000000..2a115e1
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/18/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/19/10.png b/tests/cache_readymap/186c072c/4/19/10.png
new file mode 100644
index 0000000..fb97495
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/19/10.png differ
diff --git a/tests/cache_readymap/186c072c/4/19/11.png b/tests/cache_readymap/186c072c/4/19/11.png
new file mode 100644
index 0000000..00a78f3
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/19/11.png differ
diff --git a/tests/cache_readymap/186c072c/4/19/12.png b/tests/cache_readymap/186c072c/4/19/12.png
new file mode 100644
index 0000000..0f09353
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/19/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/19/13.png b/tests/cache_readymap/186c072c/4/19/13.png
new file mode 100644
index 0000000..b453900
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/19/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/20/12.png b/tests/cache_readymap/186c072c/4/20/12.png
new file mode 100644
index 0000000..9f5f59f
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/20/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/20/13.png b/tests/cache_readymap/186c072c/4/20/13.png
new file mode 100644
index 0000000..6d70e88
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/20/13.png differ
diff --git a/tests/cache_readymap/186c072c/4/21/12.png b/tests/cache_readymap/186c072c/4/21/12.png
new file mode 100644
index 0000000..c90ab2e
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/21/12.png differ
diff --git a/tests/cache_readymap/186c072c/4/21/13.png b/tests/cache_readymap/186c072c/4/21/13.png
new file mode 100644
index 0000000..8532be5
Binary files /dev/null and b/tests/cache_readymap/186c072c/4/21/13.png differ
diff --git a/tests/cache_readymap/186c072c/5/30/24.png b/tests/cache_readymap/186c072c/5/30/24.png
new file mode 100644
index 0000000..0820070
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/30/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/30/25.png b/tests/cache_readymap/186c072c/5/30/25.png
new file mode 100644
index 0000000..7b2e3bc
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/30/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/31/24.png b/tests/cache_readymap/186c072c/5/31/24.png
new file mode 100644
index 0000000..5192b05
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/31/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/31/25.png b/tests/cache_readymap/186c072c/5/31/25.png
new file mode 100644
index 0000000..56e7a9b
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/31/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/32/22.png b/tests/cache_readymap/186c072c/5/32/22.png
new file mode 100644
index 0000000..e9e5fb8
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/32/22.png differ
diff --git a/tests/cache_readymap/186c072c/5/32/23.png b/tests/cache_readymap/186c072c/5/32/23.png
new file mode 100644
index 0000000..a079018
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/32/23.png differ
diff --git a/tests/cache_readymap/186c072c/5/32/24.png b/tests/cache_readymap/186c072c/5/32/24.png
new file mode 100644
index 0000000..c6ec975
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/32/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/32/25.png b/tests/cache_readymap/186c072c/5/32/25.png
new file mode 100644
index 0000000..000f750
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/32/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/33/22.png b/tests/cache_readymap/186c072c/5/33/22.png
new file mode 100644
index 0000000..6d0c790
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/33/22.png differ
diff --git a/tests/cache_readymap/186c072c/5/33/23.png b/tests/cache_readymap/186c072c/5/33/23.png
new file mode 100644
index 0000000..f053d23
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/33/23.png differ
diff --git a/tests/cache_readymap/186c072c/5/33/24.png b/tests/cache_readymap/186c072c/5/33/24.png
new file mode 100644
index 0000000..47bff54
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/33/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/33/25.png b/tests/cache_readymap/186c072c/5/33/25.png
new file mode 100644
index 0000000..e1345d0
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/33/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/22.png b/tests/cache_readymap/186c072c/5/34/22.png
new file mode 100644
index 0000000..dc47f66
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/22.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/23.png b/tests/cache_readymap/186c072c/5/34/23.png
new file mode 100644
index 0000000..e27e46e
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/23.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/24.png b/tests/cache_readymap/186c072c/5/34/24.png
new file mode 100644
index 0000000..55d4280
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/25.png b/tests/cache_readymap/186c072c/5/34/25.png
new file mode 100644
index 0000000..e908ec2
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/26.png b/tests/cache_readymap/186c072c/5/34/26.png
new file mode 100644
index 0000000..2116cec
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/26.png differ
diff --git a/tests/cache_readymap/186c072c/5/34/27.png b/tests/cache_readymap/186c072c/5/34/27.png
new file mode 100644
index 0000000..f1fff2d
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/34/27.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/22.png b/tests/cache_readymap/186c072c/5/35/22.png
new file mode 100644
index 0000000..cfa4fc4
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/22.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/23.png b/tests/cache_readymap/186c072c/5/35/23.png
new file mode 100644
index 0000000..ed110d5
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/23.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/24.png b/tests/cache_readymap/186c072c/5/35/24.png
new file mode 100644
index 0000000..ba710ef
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/24.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/25.png b/tests/cache_readymap/186c072c/5/35/25.png
new file mode 100644
index 0000000..283de1d
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/25.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/26.png b/tests/cache_readymap/186c072c/5/35/26.png
new file mode 100644
index 0000000..13f3a34
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/26.png differ
diff --git a/tests/cache_readymap/186c072c/5/35/27.png b/tests/cache_readymap/186c072c/5/35/27.png
new file mode 100644
index 0000000..bfad62b
Binary files /dev/null and b/tests/cache_readymap/186c072c/5/35/27.png differ
diff --git a/tests/cache_readymap/186c072c/6/64/48.png b/tests/cache_readymap/186c072c/6/64/48.png
new file mode 100644
index 0000000..fa47f20
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/64/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/64/49.png b/tests/cache_readymap/186c072c/6/64/49.png
new file mode 100644
index 0000000..b410afa
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/64/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/65/48.png b/tests/cache_readymap/186c072c/6/65/48.png
new file mode 100644
index 0000000..0da8355
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/65/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/65/49.png b/tests/cache_readymap/186c072c/6/65/49.png
new file mode 100644
index 0000000..49d2090
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/65/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/46.png b/tests/cache_readymap/186c072c/6/66/46.png
new file mode 100644
index 0000000..a5561a7
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/46.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/47.png b/tests/cache_readymap/186c072c/6/66/47.png
new file mode 100644
index 0000000..1bd3d16
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/47.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/48.png b/tests/cache_readymap/186c072c/6/66/48.png
new file mode 100644
index 0000000..deffca9
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/49.png b/tests/cache_readymap/186c072c/6/66/49.png
new file mode 100644
index 0000000..907d23b
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/50.png b/tests/cache_readymap/186c072c/6/66/50.png
new file mode 100644
index 0000000..5d33318
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/50.png differ
diff --git a/tests/cache_readymap/186c072c/6/66/51.png b/tests/cache_readymap/186c072c/6/66/51.png
new file mode 100644
index 0000000..645ffc9
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/66/51.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/46.png b/tests/cache_readymap/186c072c/6/67/46.png
new file mode 100644
index 0000000..037f5b4
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/46.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/47.png b/tests/cache_readymap/186c072c/6/67/47.png
new file mode 100644
index 0000000..755ffc9
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/47.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/48.png b/tests/cache_readymap/186c072c/6/67/48.png
new file mode 100644
index 0000000..625a16f
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/49.png b/tests/cache_readymap/186c072c/6/67/49.png
new file mode 100644
index 0000000..713ae93
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/50.png b/tests/cache_readymap/186c072c/6/67/50.png
new file mode 100644
index 0000000..7f563cf
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/50.png differ
diff --git a/tests/cache_readymap/186c072c/6/67/51.png b/tests/cache_readymap/186c072c/6/67/51.png
new file mode 100644
index 0000000..be223e2
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/67/51.png differ
diff --git a/tests/cache_readymap/186c072c/6/68/48.png b/tests/cache_readymap/186c072c/6/68/48.png
new file mode 100644
index 0000000..a26e05f
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/68/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/68/49.png b/tests/cache_readymap/186c072c/6/68/49.png
new file mode 100644
index 0000000..d170a6f
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/68/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/68/50.png b/tests/cache_readymap/186c072c/6/68/50.png
new file mode 100644
index 0000000..5a0b820
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/68/50.png differ
diff --git a/tests/cache_readymap/186c072c/6/68/51.png b/tests/cache_readymap/186c072c/6/68/51.png
new file mode 100644
index 0000000..71c7a88
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/68/51.png differ
diff --git a/tests/cache_readymap/186c072c/6/69/48.png b/tests/cache_readymap/186c072c/6/69/48.png
new file mode 100644
index 0000000..341616e
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/69/48.png differ
diff --git a/tests/cache_readymap/186c072c/6/69/49.png b/tests/cache_readymap/186c072c/6/69/49.png
new file mode 100644
index 0000000..eed7a16
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/69/49.png differ
diff --git a/tests/cache_readymap/186c072c/6/69/50.png b/tests/cache_readymap/186c072c/6/69/50.png
new file mode 100644
index 0000000..cd2594c
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/69/50.png differ
diff --git a/tests/cache_readymap/186c072c/6/69/51.png b/tests/cache_readymap/186c072c/6/69/51.png
new file mode 100644
index 0000000..a2d76fb
Binary files /dev/null and b/tests/cache_readymap/186c072c/6/69/51.png differ
diff --git a/tests/cache_readymap/186c072c/7/132/96.png b/tests/cache_readymap/186c072c/7/132/96.png
new file mode 100644
index 0000000..86a13e0
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/132/96.png differ
diff --git a/tests/cache_readymap/186c072c/7/132/97.png b/tests/cache_readymap/186c072c/7/132/97.png
new file mode 100644
index 0000000..099d763
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/132/97.png differ
diff --git a/tests/cache_readymap/186c072c/7/132/98.png b/tests/cache_readymap/186c072c/7/132/98.png
new file mode 100644
index 0000000..2645fd1
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/132/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/132/99.png b/tests/cache_readymap/186c072c/7/132/99.png
new file mode 100644
index 0000000..c47074a
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/132/99.png differ
diff --git a/tests/cache_readymap/186c072c/7/133/96.png b/tests/cache_readymap/186c072c/7/133/96.png
new file mode 100644
index 0000000..a447c44
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/133/96.png differ
diff --git a/tests/cache_readymap/186c072c/7/133/97.png b/tests/cache_readymap/186c072c/7/133/97.png
new file mode 100644
index 0000000..07539b7
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/133/97.png differ
diff --git a/tests/cache_readymap/186c072c/7/133/98.png b/tests/cache_readymap/186c072c/7/133/98.png
new file mode 100644
index 0000000..55067f2
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/133/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/133/99.png b/tests/cache_readymap/186c072c/7/133/99.png
new file mode 100644
index 0000000..98f3924
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/133/99.png differ
diff --git a/tests/cache_readymap/186c072c/7/134/96.png b/tests/cache_readymap/186c072c/7/134/96.png
new file mode 100644
index 0000000..0c1854f
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/134/96.png differ
diff --git a/tests/cache_readymap/186c072c/7/134/97.png b/tests/cache_readymap/186c072c/7/134/97.png
new file mode 100644
index 0000000..73d0cf8
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/134/97.png differ
diff --git a/tests/cache_readymap/186c072c/7/134/98.png b/tests/cache_readymap/186c072c/7/134/98.png
new file mode 100644
index 0000000..3505f0c
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/134/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/134/99.png b/tests/cache_readymap/186c072c/7/134/99.png
new file mode 100644
index 0000000..9a4f7b2
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/134/99.png differ
diff --git a/tests/cache_readymap/186c072c/7/135/96.png b/tests/cache_readymap/186c072c/7/135/96.png
new file mode 100644
index 0000000..e247533
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/135/96.png differ
diff --git a/tests/cache_readymap/186c072c/7/135/97.png b/tests/cache_readymap/186c072c/7/135/97.png
new file mode 100644
index 0000000..4c6c638
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/135/97.png differ
diff --git a/tests/cache_readymap/186c072c/7/135/98.png b/tests/cache_readymap/186c072c/7/135/98.png
new file mode 100644
index 0000000..b666501
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/135/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/135/99.png b/tests/cache_readymap/186c072c/7/135/99.png
new file mode 100644
index 0000000..2e8277e
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/135/99.png differ
diff --git a/tests/cache_readymap/186c072c/7/136/98.png b/tests/cache_readymap/186c072c/7/136/98.png
new file mode 100644
index 0000000..bc03ca1
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/136/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/136/99.png b/tests/cache_readymap/186c072c/7/136/99.png
new file mode 100644
index 0000000..3c6c3db
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/136/99.png differ
diff --git a/tests/cache_readymap/186c072c/7/137/98.png b/tests/cache_readymap/186c072c/7/137/98.png
new file mode 100644
index 0000000..692bfcf
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/137/98.png differ
diff --git a/tests/cache_readymap/186c072c/7/137/99.png b/tests/cache_readymap/186c072c/7/137/99.png
new file mode 100644
index 0000000..8bb9218
Binary files /dev/null and b/tests/cache_readymap/186c072c/7/137/99.png differ
diff --git a/tests/cache_readymap/186c072c/8/266/194.png b/tests/cache_readymap/186c072c/8/266/194.png
new file mode 100644
index 0000000..2c63d03
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/266/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/266/195.png b/tests/cache_readymap/186c072c/8/266/195.png
new file mode 100644
index 0000000..a7e4eef
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/266/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/266/196.png b/tests/cache_readymap/186c072c/8/266/196.png
new file mode 100644
index 0000000..9282aa9
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/266/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/266/197.png b/tests/cache_readymap/186c072c/8/266/197.png
new file mode 100644
index 0000000..28e51d9
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/266/197.png differ
diff --git a/tests/cache_readymap/186c072c/8/267/194.png b/tests/cache_readymap/186c072c/8/267/194.png
new file mode 100644
index 0000000..7ea3589
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/267/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/267/195.png b/tests/cache_readymap/186c072c/8/267/195.png
new file mode 100644
index 0000000..ebcf7ff
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/267/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/267/196.png b/tests/cache_readymap/186c072c/8/267/196.png
new file mode 100644
index 0000000..27dbbf2
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/267/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/267/197.png b/tests/cache_readymap/186c072c/8/267/197.png
new file mode 100644
index 0000000..0b40712
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/267/197.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/192.png b/tests/cache_readymap/186c072c/8/268/192.png
new file mode 100644
index 0000000..6ca69c8
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/192.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/193.png b/tests/cache_readymap/186c072c/8/268/193.png
new file mode 100644
index 0000000..b3670e9
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/193.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/194.png b/tests/cache_readymap/186c072c/8/268/194.png
new file mode 100644
index 0000000..9448866
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/195.png b/tests/cache_readymap/186c072c/8/268/195.png
new file mode 100644
index 0000000..03a6ab5
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/196.png b/tests/cache_readymap/186c072c/8/268/196.png
new file mode 100644
index 0000000..377a5cb
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/268/197.png b/tests/cache_readymap/186c072c/8/268/197.png
new file mode 100644
index 0000000..4b89ec4
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/268/197.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/192.png b/tests/cache_readymap/186c072c/8/269/192.png
new file mode 100644
index 0000000..a1d7095
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/192.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/193.png b/tests/cache_readymap/186c072c/8/269/193.png
new file mode 100644
index 0000000..165ff60
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/193.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/194.png b/tests/cache_readymap/186c072c/8/269/194.png
new file mode 100644
index 0000000..7d3779a
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/195.png b/tests/cache_readymap/186c072c/8/269/195.png
new file mode 100644
index 0000000..620dee8
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/196.png b/tests/cache_readymap/186c072c/8/269/196.png
new file mode 100644
index 0000000..d153b3e
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/269/197.png b/tests/cache_readymap/186c072c/8/269/197.png
new file mode 100644
index 0000000..dac0d96
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/269/197.png differ
diff --git a/tests/cache_readymap/186c072c/8/270/194.png b/tests/cache_readymap/186c072c/8/270/194.png
new file mode 100644
index 0000000..5a5dd6d
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/270/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/270/195.png b/tests/cache_readymap/186c072c/8/270/195.png
new file mode 100644
index 0000000..e303bcd
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/270/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/270/196.png b/tests/cache_readymap/186c072c/8/270/196.png
new file mode 100644
index 0000000..6107722
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/270/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/270/197.png b/tests/cache_readymap/186c072c/8/270/197.png
new file mode 100644
index 0000000..6783170
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/270/197.png differ
diff --git a/tests/cache_readymap/186c072c/8/271/194.png b/tests/cache_readymap/186c072c/8/271/194.png
new file mode 100644
index 0000000..60288cb
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/271/194.png differ
diff --git a/tests/cache_readymap/186c072c/8/271/195.png b/tests/cache_readymap/186c072c/8/271/195.png
new file mode 100644
index 0000000..acf1bb4
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/271/195.png differ
diff --git a/tests/cache_readymap/186c072c/8/271/196.png b/tests/cache_readymap/186c072c/8/271/196.png
new file mode 100644
index 0000000..5b78f91
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/271/196.png differ
diff --git a/tests/cache_readymap/186c072c/8/271/197.png b/tests/cache_readymap/186c072c/8/271/197.png
new file mode 100644
index 0000000..006f5b5
Binary files /dev/null and b/tests/cache_readymap/186c072c/8/271/197.png differ
diff --git a/tests/cache_readymap/186c072c/9/534/388.png b/tests/cache_readymap/186c072c/9/534/388.png
new file mode 100644
index 0000000..217a0dc
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/534/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/534/389.png b/tests/cache_readymap/186c072c/9/534/389.png
new file mode 100644
index 0000000..8721498
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/534/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/534/390.png b/tests/cache_readymap/186c072c/9/534/390.png
new file mode 100644
index 0000000..df03efc
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/534/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/534/391.png b/tests/cache_readymap/186c072c/9/534/391.png
new file mode 100644
index 0000000..2841568
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/534/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/535/388.png b/tests/cache_readymap/186c072c/9/535/388.png
new file mode 100644
index 0000000..bb5c35d
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/535/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/535/389.png b/tests/cache_readymap/186c072c/9/535/389.png
new file mode 100644
index 0000000..c9c82eb
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/535/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/535/390.png b/tests/cache_readymap/186c072c/9/535/390.png
new file mode 100644
index 0000000..41b5797
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/535/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/535/391.png b/tests/cache_readymap/186c072c/9/535/391.png
new file mode 100644
index 0000000..a6264a4
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/535/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/536/388.png b/tests/cache_readymap/186c072c/9/536/388.png
new file mode 100644
index 0000000..a0fb31f
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/536/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/536/389.png b/tests/cache_readymap/186c072c/9/536/389.png
new file mode 100644
index 0000000..5688d89
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/536/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/536/390.png b/tests/cache_readymap/186c072c/9/536/390.png
new file mode 100644
index 0000000..612a925
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/536/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/536/391.png b/tests/cache_readymap/186c072c/9/536/391.png
new file mode 100644
index 0000000..a276e99
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/536/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/537/388.png b/tests/cache_readymap/186c072c/9/537/388.png
new file mode 100644
index 0000000..4d67a38
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/537/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/537/389.png b/tests/cache_readymap/186c072c/9/537/389.png
new file mode 100644
index 0000000..553c4fb
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/537/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/537/390.png b/tests/cache_readymap/186c072c/9/537/390.png
new file mode 100644
index 0000000..b416454
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/537/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/537/391.png b/tests/cache_readymap/186c072c/9/537/391.png
new file mode 100644
index 0000000..4154897
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/537/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/538/388.png b/tests/cache_readymap/186c072c/9/538/388.png
new file mode 100644
index 0000000..59d53a0
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/538/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/538/389.png b/tests/cache_readymap/186c072c/9/538/389.png
new file mode 100644
index 0000000..82fe3b6
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/538/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/538/390.png b/tests/cache_readymap/186c072c/9/538/390.png
new file mode 100644
index 0000000..fb13c31
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/538/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/538/391.png b/tests/cache_readymap/186c072c/9/538/391.png
new file mode 100644
index 0000000..4a19b5a
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/538/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/539/388.png b/tests/cache_readymap/186c072c/9/539/388.png
new file mode 100644
index 0000000..6241f37
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/539/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/539/389.png b/tests/cache_readymap/186c072c/9/539/389.png
new file mode 100644
index 0000000..c7d06fb
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/539/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/539/390.png b/tests/cache_readymap/186c072c/9/539/390.png
new file mode 100644
index 0000000..149ee44
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/539/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/539/391.png b/tests/cache_readymap/186c072c/9/539/391.png
new file mode 100644
index 0000000..5493329
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/539/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/540/388.png b/tests/cache_readymap/186c072c/9/540/388.png
new file mode 100644
index 0000000..cff7ed7
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/540/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/540/389.png b/tests/cache_readymap/186c072c/9/540/389.png
new file mode 100644
index 0000000..3987cf1
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/540/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/540/390.png b/tests/cache_readymap/186c072c/9/540/390.png
new file mode 100644
index 0000000..92a53f7
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/540/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/540/391.png b/tests/cache_readymap/186c072c/9/540/391.png
new file mode 100644
index 0000000..8d3ed9f
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/540/391.png differ
diff --git a/tests/cache_readymap/186c072c/9/541/388.png b/tests/cache_readymap/186c072c/9/541/388.png
new file mode 100644
index 0000000..2dcbe5d
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/541/388.png differ
diff --git a/tests/cache_readymap/186c072c/9/541/389.png b/tests/cache_readymap/186c072c/9/541/389.png
new file mode 100644
index 0000000..e727d1e
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/541/389.png differ
diff --git a/tests/cache_readymap/186c072c/9/541/390.png b/tests/cache_readymap/186c072c/9/541/390.png
new file mode 100644
index 0000000..cd60b63
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/541/390.png differ
diff --git a/tests/cache_readymap/186c072c/9/541/391.png b/tests/cache_readymap/186c072c/9/541/391.png
new file mode 100644
index 0000000..b713c6b
Binary files /dev/null and b/tests/cache_readymap/186c072c/9/541/391.png differ
diff --git a/tests/cache_readymap/186c072c/tms.xml b/tests/cache_readymap/186c072c/tms.xml
new file mode 100644
index 0000000..3d5b14a
--- /dev/null
+++ b/tests/cache_readymap/186c072c/tms.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<tilemap tilemapservice="" version="">
+    <title>
+        ReadyMap.org - Street Map
+    </title>
+    <abstract>
+        
+    </abstract>
+    <srs>
+        EPSG:4326
+    </srs>
+    <vsrs>
+        meters
+    </vsrs>
+    <boundingbox maxx="180.0000000000000000000000000" maxy="90.0000000000000000000000000" minx="-180.0000000000000000000000000" miny="-90.0000000000000000000000000">
+    </boundingbox>
+    <origin x="-180.0000000000000000000000000" y="-90.0000000000000000000000000">
+    </origin>
+    <tileformat extension="png" height="256" mime-type="" width="256">
+    </tileformat>
+    <tilesets profile="global-geodetic">
+        <tileset href="" order="0" units-per-pixel="0.7031250000000000000000000">
+        </tileset>
+        <tileset href="" order="1" units-per-pixel="0.3515625000000000000000000">
+        </tileset>
+        <tileset href="" order="2" units-per-pixel="0.1757812500000000000000000">
+        </tileset>
+        <tileset href="" order="3" units-per-pixel="0.0878906250000000000000000">
+        </tileset>
+        <tileset href="" order="4" units-per-pixel="0.0439453125000000000000000">
+        </tileset>
+        <tileset href="" order="5" units-per-pixel="0.0219726562500000000000000">
+        </tileset>
+        <tileset href="" order="6" units-per-pixel="0.0109863281250000000000000">
+        </tileset>
+        <tileset href="" order="7" units-per-pixel="0.0054931640625000000000000">
+        </tileset>
+        <tileset href="" order="8" units-per-pixel="0.0027465820312500000000000">
+        </tileset>
+        <tileset href="" order="9" units-per-pixel="0.0013732910156250000000000">
+        </tileset>
+        <tileset href="" order="10" units-per-pixel="0.0006866455078125000000000">
+        </tileset>
+        <tileset href="" order="11" units-per-pixel="0.0003433227539062500000000">
+        </tileset>
+        <tileset href="" order="12" units-per-pixel="0.0001716613769531250000000">
+        </tileset>
+        <tileset href="" order="13" units-per-pixel="0.0000858306884765625000000">
+        </tileset>
+        <tileset href="" order="14" units-per-pixel="0.0000429153442382812500000">
+        </tileset>
+        <tileset href="" order="15" units-per-pixel="0.0000214576721191406250000">
+        </tileset>
+        <tileset href="" order="16" units-per-pixel="0.0000107288360595703125000">
+        </tileset>
+        <tileset href="" order="17" units-per-pixel="0.0000053644180297851562500">
+        </tileset>
+        <tileset href="" order="18" units-per-pixel="0.0000026822090148925781250">
+        </tileset>
+        <tileset href="" order="19" units-per-pixel="0.0000013411045074462890625">
+        </tileset>
+    </tilesets>
+</tilemap>
diff --git a/tests/cache_readymap/18ecd7d5/1/0/0.jpeg b/tests/cache_readymap/18ecd7d5/1/0/0.jpeg
new file mode 100644
index 0000000..f0749a0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/0/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/0/1.jpeg b/tests/cache_readymap/18ecd7d5/1/0/1.jpeg
new file mode 100644
index 0000000..fca0bd1
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/0/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/1/0.jpeg b/tests/cache_readymap/18ecd7d5/1/1/0.jpeg
new file mode 100644
index 0000000..664b5d2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/1/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/1/1.jpeg b/tests/cache_readymap/18ecd7d5/1/1/1.jpeg
new file mode 100644
index 0000000..43d2f4a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/1/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/2/0.jpeg b/tests/cache_readymap/18ecd7d5/1/2/0.jpeg
new file mode 100644
index 0000000..2798e38
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/2/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/2/1.jpeg b/tests/cache_readymap/18ecd7d5/1/2/1.jpeg
new file mode 100644
index 0000000..270d77a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/2/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/3/0.jpeg b/tests/cache_readymap/18ecd7d5/1/3/0.jpeg
new file mode 100644
index 0000000..a067d75
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/3/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/1/3/1.jpeg b/tests/cache_readymap/18ecd7d5/1/3/1.jpeg
new file mode 100644
index 0000000..346f725
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/1/3/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/0/0.jpeg b/tests/cache_readymap/18ecd7d5/2/0/0.jpeg
new file mode 100644
index 0000000..560fd3e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/0/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/0/1.jpeg b/tests/cache_readymap/18ecd7d5/2/0/1.jpeg
new file mode 100644
index 0000000..319d2de
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/0/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/0/2.jpeg b/tests/cache_readymap/18ecd7d5/2/0/2.jpeg
new file mode 100644
index 0000000..f2fcbd0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/0/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/0/3.jpeg b/tests/cache_readymap/18ecd7d5/2/0/3.jpeg
new file mode 100644
index 0000000..ba60457
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/0/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/1/0.jpeg b/tests/cache_readymap/18ecd7d5/2/1/0.jpeg
new file mode 100644
index 0000000..01db6d7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/1/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/1/1.jpeg b/tests/cache_readymap/18ecd7d5/2/1/1.jpeg
new file mode 100644
index 0000000..bd45ee5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/1/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/1/2.jpeg b/tests/cache_readymap/18ecd7d5/2/1/2.jpeg
new file mode 100644
index 0000000..15584e0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/1/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/1/3.jpeg b/tests/cache_readymap/18ecd7d5/2/1/3.jpeg
new file mode 100644
index 0000000..47e8584
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/1/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/2/0.jpeg b/tests/cache_readymap/18ecd7d5/2/2/0.jpeg
new file mode 100644
index 0000000..e6e528a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/2/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/2/1.jpeg b/tests/cache_readymap/18ecd7d5/2/2/1.jpeg
new file mode 100644
index 0000000..253d4aa
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/2/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/2/2.jpeg b/tests/cache_readymap/18ecd7d5/2/2/2.jpeg
new file mode 100644
index 0000000..d59630a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/2/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/2/3.jpeg b/tests/cache_readymap/18ecd7d5/2/2/3.jpeg
new file mode 100644
index 0000000..e30bd0a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/2/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/3/0.jpeg b/tests/cache_readymap/18ecd7d5/2/3/0.jpeg
new file mode 100644
index 0000000..8236a36
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/3/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/3/1.jpeg b/tests/cache_readymap/18ecd7d5/2/3/1.jpeg
new file mode 100644
index 0000000..d661839
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/3/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/3/2.jpeg b/tests/cache_readymap/18ecd7d5/2/3/2.jpeg
new file mode 100644
index 0000000..3685d25
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/3/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/3/3.jpeg b/tests/cache_readymap/18ecd7d5/2/3/3.jpeg
new file mode 100644
index 0000000..6f51350
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/3/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/4/0.jpeg b/tests/cache_readymap/18ecd7d5/2/4/0.jpeg
new file mode 100644
index 0000000..ff0a874
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/4/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/4/1.jpeg b/tests/cache_readymap/18ecd7d5/2/4/1.jpeg
new file mode 100644
index 0000000..d1f8e68
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/4/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/4/2.jpeg b/tests/cache_readymap/18ecd7d5/2/4/2.jpeg
new file mode 100644
index 0000000..2d4210b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/4/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/4/3.jpeg b/tests/cache_readymap/18ecd7d5/2/4/3.jpeg
new file mode 100644
index 0000000..eed7750
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/4/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/5/0.jpeg b/tests/cache_readymap/18ecd7d5/2/5/0.jpeg
new file mode 100644
index 0000000..ab3de33
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/5/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/5/1.jpeg b/tests/cache_readymap/18ecd7d5/2/5/1.jpeg
new file mode 100644
index 0000000..068947e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/5/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/5/2.jpeg b/tests/cache_readymap/18ecd7d5/2/5/2.jpeg
new file mode 100644
index 0000000..ced4341
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/5/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/5/3.jpeg b/tests/cache_readymap/18ecd7d5/2/5/3.jpeg
new file mode 100644
index 0000000..80d436f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/5/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/6/0.jpeg b/tests/cache_readymap/18ecd7d5/2/6/0.jpeg
new file mode 100644
index 0000000..4072665
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/6/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/6/1.jpeg b/tests/cache_readymap/18ecd7d5/2/6/1.jpeg
new file mode 100644
index 0000000..d687ba0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/6/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/6/2.jpeg b/tests/cache_readymap/18ecd7d5/2/6/2.jpeg
new file mode 100644
index 0000000..9f7b521
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/6/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/6/3.jpeg b/tests/cache_readymap/18ecd7d5/2/6/3.jpeg
new file mode 100644
index 0000000..e1d943b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/6/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/7/0.jpeg b/tests/cache_readymap/18ecd7d5/2/7/0.jpeg
new file mode 100644
index 0000000..ad64d1c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/7/0.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/7/1.jpeg b/tests/cache_readymap/18ecd7d5/2/7/1.jpeg
new file mode 100644
index 0000000..bb49172
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/7/1.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/7/2.jpeg b/tests/cache_readymap/18ecd7d5/2/7/2.jpeg
new file mode 100644
index 0000000..2fa44b4
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/7/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/2/7/3.jpeg b/tests/cache_readymap/18ecd7d5/2/7/3.jpeg
new file mode 100644
index 0000000..bfb1b04
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/2/7/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/10/4.jpeg b/tests/cache_readymap/18ecd7d5/3/10/4.jpeg
new file mode 100644
index 0000000..e39e4ef
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/10/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/10/5.jpeg b/tests/cache_readymap/18ecd7d5/3/10/5.jpeg
new file mode 100644
index 0000000..180fddd
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/10/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/10/6.jpeg b/tests/cache_readymap/18ecd7d5/3/10/6.jpeg
new file mode 100644
index 0000000..af84b55
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/10/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/10/7.jpeg b/tests/cache_readymap/18ecd7d5/3/10/7.jpeg
new file mode 100644
index 0000000..0a44cb5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/10/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/11/4.jpeg b/tests/cache_readymap/18ecd7d5/3/11/4.jpeg
new file mode 100644
index 0000000..13f53e4
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/11/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/11/5.jpeg b/tests/cache_readymap/18ecd7d5/3/11/5.jpeg
new file mode 100644
index 0000000..07b291c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/11/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/11/6.jpeg b/tests/cache_readymap/18ecd7d5/3/11/6.jpeg
new file mode 100644
index 0000000..5531bb5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/11/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/11/7.jpeg b/tests/cache_readymap/18ecd7d5/3/11/7.jpeg
new file mode 100644
index 0000000..854c5ed
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/11/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/12/4.jpeg b/tests/cache_readymap/18ecd7d5/3/12/4.jpeg
new file mode 100644
index 0000000..aae34d2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/12/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/12/5.jpeg b/tests/cache_readymap/18ecd7d5/3/12/5.jpeg
new file mode 100644
index 0000000..94e068c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/12/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/12/6.jpeg b/tests/cache_readymap/18ecd7d5/3/12/6.jpeg
new file mode 100644
index 0000000..2e32b61
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/12/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/12/7.jpeg b/tests/cache_readymap/18ecd7d5/3/12/7.jpeg
new file mode 100644
index 0000000..386cd53
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/12/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/13/4.jpeg b/tests/cache_readymap/18ecd7d5/3/13/4.jpeg
new file mode 100644
index 0000000..507586d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/13/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/13/5.jpeg b/tests/cache_readymap/18ecd7d5/3/13/5.jpeg
new file mode 100644
index 0000000..14f12d7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/13/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/13/6.jpeg b/tests/cache_readymap/18ecd7d5/3/13/6.jpeg
new file mode 100644
index 0000000..7ecd063
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/13/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/13/7.jpeg b/tests/cache_readymap/18ecd7d5/3/13/7.jpeg
new file mode 100644
index 0000000..e8794ca
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/13/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/14/6.jpeg b/tests/cache_readymap/18ecd7d5/3/14/6.jpeg
new file mode 100644
index 0000000..7cae77d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/14/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/14/7.jpeg b/tests/cache_readymap/18ecd7d5/3/14/7.jpeg
new file mode 100644
index 0000000..9a612cd
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/14/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/15/6.jpeg b/tests/cache_readymap/18ecd7d5/3/15/6.jpeg
new file mode 100644
index 0000000..42e3265
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/15/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/15/7.jpeg b/tests/cache_readymap/18ecd7d5/3/15/7.jpeg
new file mode 100644
index 0000000..b3dd270
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/15/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/2.jpeg b/tests/cache_readymap/18ecd7d5/3/2/2.jpeg
new file mode 100644
index 0000000..7b12473
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/3.jpeg b/tests/cache_readymap/18ecd7d5/3/2/3.jpeg
new file mode 100644
index 0000000..d5a9f58
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/4.jpeg b/tests/cache_readymap/18ecd7d5/3/2/4.jpeg
new file mode 100644
index 0000000..a21dabe
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/5.jpeg b/tests/cache_readymap/18ecd7d5/3/2/5.jpeg
new file mode 100644
index 0000000..a025152
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/6.jpeg b/tests/cache_readymap/18ecd7d5/3/2/6.jpeg
new file mode 100644
index 0000000..a8b3d23
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/2/7.jpeg b/tests/cache_readymap/18ecd7d5/3/2/7.jpeg
new file mode 100644
index 0000000..35cfb0a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/2/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/2.jpeg b/tests/cache_readymap/18ecd7d5/3/3/2.jpeg
new file mode 100644
index 0000000..2a7ac3b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/3.jpeg b/tests/cache_readymap/18ecd7d5/3/3/3.jpeg
new file mode 100644
index 0000000..3e00023
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/4.jpeg b/tests/cache_readymap/18ecd7d5/3/3/4.jpeg
new file mode 100644
index 0000000..9255d90
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/5.jpeg b/tests/cache_readymap/18ecd7d5/3/3/5.jpeg
new file mode 100644
index 0000000..948faf9
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/6.jpeg b/tests/cache_readymap/18ecd7d5/3/3/6.jpeg
new file mode 100644
index 0000000..5ddf0d1
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/3/7.jpeg b/tests/cache_readymap/18ecd7d5/3/3/7.jpeg
new file mode 100644
index 0000000..f00d070
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/3/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/2.jpeg b/tests/cache_readymap/18ecd7d5/3/4/2.jpeg
new file mode 100644
index 0000000..bb6939e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/3.jpeg b/tests/cache_readymap/18ecd7d5/3/4/3.jpeg
new file mode 100644
index 0000000..ed67017
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/4.jpeg b/tests/cache_readymap/18ecd7d5/3/4/4.jpeg
new file mode 100644
index 0000000..7d81b7c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/5.jpeg b/tests/cache_readymap/18ecd7d5/3/4/5.jpeg
new file mode 100644
index 0000000..35336df
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/6.jpeg b/tests/cache_readymap/18ecd7d5/3/4/6.jpeg
new file mode 100644
index 0000000..0488a48
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/4/7.jpeg b/tests/cache_readymap/18ecd7d5/3/4/7.jpeg
new file mode 100644
index 0000000..9d22e3a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/4/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/2.jpeg b/tests/cache_readymap/18ecd7d5/3/5/2.jpeg
new file mode 100644
index 0000000..908ff18
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/2.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/3.jpeg b/tests/cache_readymap/18ecd7d5/3/5/3.jpeg
new file mode 100644
index 0000000..02271a1
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/3.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/4.jpeg b/tests/cache_readymap/18ecd7d5/3/5/4.jpeg
new file mode 100644
index 0000000..e681aad
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/5.jpeg b/tests/cache_readymap/18ecd7d5/3/5/5.jpeg
new file mode 100644
index 0000000..cfcd0ee
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/6.jpeg b/tests/cache_readymap/18ecd7d5/3/5/6.jpeg
new file mode 100644
index 0000000..e18aec4
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/5/7.jpeg b/tests/cache_readymap/18ecd7d5/3/5/7.jpeg
new file mode 100644
index 0000000..1b74155
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/5/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/6/4.jpeg b/tests/cache_readymap/18ecd7d5/3/6/4.jpeg
new file mode 100644
index 0000000..ddd72c4
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/6/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/6/5.jpeg b/tests/cache_readymap/18ecd7d5/3/6/5.jpeg
new file mode 100644
index 0000000..e636935
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/6/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/6/6.jpeg b/tests/cache_readymap/18ecd7d5/3/6/6.jpeg
new file mode 100644
index 0000000..0a7d49b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/6/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/6/7.jpeg b/tests/cache_readymap/18ecd7d5/3/6/7.jpeg
new file mode 100644
index 0000000..c4cfafa
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/6/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/7/4.jpeg b/tests/cache_readymap/18ecd7d5/3/7/4.jpeg
new file mode 100644
index 0000000..225fb8e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/7/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/7/5.jpeg b/tests/cache_readymap/18ecd7d5/3/7/5.jpeg
new file mode 100644
index 0000000..bb45aee
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/7/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/7/6.jpeg b/tests/cache_readymap/18ecd7d5/3/7/6.jpeg
new file mode 100644
index 0000000..e4d009f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/7/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/7/7.jpeg b/tests/cache_readymap/18ecd7d5/3/7/7.jpeg
new file mode 100644
index 0000000..58667b5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/7/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/8/4.jpeg b/tests/cache_readymap/18ecd7d5/3/8/4.jpeg
new file mode 100644
index 0000000..4ea79f4
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/8/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/8/5.jpeg b/tests/cache_readymap/18ecd7d5/3/8/5.jpeg
new file mode 100644
index 0000000..4f3cf12
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/8/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/8/6.jpeg b/tests/cache_readymap/18ecd7d5/3/8/6.jpeg
new file mode 100644
index 0000000..76265d6
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/8/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/8/7.jpeg b/tests/cache_readymap/18ecd7d5/3/8/7.jpeg
new file mode 100644
index 0000000..193c6fe
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/8/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/9/4.jpeg b/tests/cache_readymap/18ecd7d5/3/9/4.jpeg
new file mode 100644
index 0000000..a9a7e5e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/9/4.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/9/5.jpeg b/tests/cache_readymap/18ecd7d5/3/9/5.jpeg
new file mode 100644
index 0000000..e87da2a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/9/5.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/9/6.jpeg b/tests/cache_readymap/18ecd7d5/3/9/6.jpeg
new file mode 100644
index 0000000..c2a1a02
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/9/6.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/3/9/7.jpeg b/tests/cache_readymap/18ecd7d5/3/9/7.jpeg
new file mode 100644
index 0000000..04d8c5a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/3/9/7.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/12/12.jpeg b/tests/cache_readymap/18ecd7d5/4/12/12.jpeg
new file mode 100644
index 0000000..7b6abca
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/12/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/12/13.jpeg b/tests/cache_readymap/18ecd7d5/4/12/13.jpeg
new file mode 100644
index 0000000..0bce5ef
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/12/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/13/12.jpeg b/tests/cache_readymap/18ecd7d5/4/13/12.jpeg
new file mode 100644
index 0000000..13ba059
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/13/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/13/13.jpeg b/tests/cache_readymap/18ecd7d5/4/13/13.jpeg
new file mode 100644
index 0000000..4670fcb
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/13/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/14/12.jpeg b/tests/cache_readymap/18ecd7d5/4/14/12.jpeg
new file mode 100644
index 0000000..3f232b3
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/14/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/14/13.jpeg b/tests/cache_readymap/18ecd7d5/4/14/13.jpeg
new file mode 100644
index 0000000..b789c51
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/14/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/15/12.jpeg b/tests/cache_readymap/18ecd7d5/4/15/12.jpeg
new file mode 100644
index 0000000..54f2ef6
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/15/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/15/13.jpeg b/tests/cache_readymap/18ecd7d5/4/15/13.jpeg
new file mode 100644
index 0000000..6deda7c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/15/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/16/10.jpeg b/tests/cache_readymap/18ecd7d5/4/16/10.jpeg
new file mode 100644
index 0000000..e6aa9bb
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/16/10.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/16/11.jpeg b/tests/cache_readymap/18ecd7d5/4/16/11.jpeg
new file mode 100644
index 0000000..5676174
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/16/11.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/16/12.jpeg b/tests/cache_readymap/18ecd7d5/4/16/12.jpeg
new file mode 100644
index 0000000..0f11299
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/16/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/16/13.jpeg b/tests/cache_readymap/18ecd7d5/4/16/13.jpeg
new file mode 100644
index 0000000..750080c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/16/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/17/10.jpeg b/tests/cache_readymap/18ecd7d5/4/17/10.jpeg
new file mode 100644
index 0000000..7fdb43c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/17/10.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/17/11.jpeg b/tests/cache_readymap/18ecd7d5/4/17/11.jpeg
new file mode 100644
index 0000000..40fbd24
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/17/11.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/17/12.jpeg b/tests/cache_readymap/18ecd7d5/4/17/12.jpeg
new file mode 100644
index 0000000..a9d32a0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/17/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/17/13.jpeg b/tests/cache_readymap/18ecd7d5/4/17/13.jpeg
new file mode 100644
index 0000000..2fa6543
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/17/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/18/10.jpeg b/tests/cache_readymap/18ecd7d5/4/18/10.jpeg
new file mode 100644
index 0000000..d1c5410
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/18/10.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/18/11.jpeg b/tests/cache_readymap/18ecd7d5/4/18/11.jpeg
new file mode 100644
index 0000000..1c1f5c8
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/18/11.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/18/12.jpeg b/tests/cache_readymap/18ecd7d5/4/18/12.jpeg
new file mode 100644
index 0000000..5f4b11f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/18/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/18/13.jpeg b/tests/cache_readymap/18ecd7d5/4/18/13.jpeg
new file mode 100644
index 0000000..45cae02
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/18/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/19/10.jpeg b/tests/cache_readymap/18ecd7d5/4/19/10.jpeg
new file mode 100644
index 0000000..bb5fcf0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/19/10.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/19/11.jpeg b/tests/cache_readymap/18ecd7d5/4/19/11.jpeg
new file mode 100644
index 0000000..a08ceac
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/19/11.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/19/12.jpeg b/tests/cache_readymap/18ecd7d5/4/19/12.jpeg
new file mode 100644
index 0000000..66d6c1a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/19/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/19/13.jpeg b/tests/cache_readymap/18ecd7d5/4/19/13.jpeg
new file mode 100644
index 0000000..f8df670
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/19/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/20/12.jpeg b/tests/cache_readymap/18ecd7d5/4/20/12.jpeg
new file mode 100644
index 0000000..a9b101e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/20/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/20/13.jpeg b/tests/cache_readymap/18ecd7d5/4/20/13.jpeg
new file mode 100644
index 0000000..eed7549
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/20/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/21/12.jpeg b/tests/cache_readymap/18ecd7d5/4/21/12.jpeg
new file mode 100644
index 0000000..321976c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/21/12.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/4/21/13.jpeg b/tests/cache_readymap/18ecd7d5/4/21/13.jpeg
new file mode 100644
index 0000000..2119531
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/4/21/13.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/30/24.jpeg b/tests/cache_readymap/18ecd7d5/5/30/24.jpeg
new file mode 100644
index 0000000..4a4c078
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/30/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/30/25.jpeg b/tests/cache_readymap/18ecd7d5/5/30/25.jpeg
new file mode 100644
index 0000000..be81612
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/30/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/31/24.jpeg b/tests/cache_readymap/18ecd7d5/5/31/24.jpeg
new file mode 100644
index 0000000..03e24a2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/31/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/31/25.jpeg b/tests/cache_readymap/18ecd7d5/5/31/25.jpeg
new file mode 100644
index 0000000..3d02765
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/31/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/32/22.jpeg b/tests/cache_readymap/18ecd7d5/5/32/22.jpeg
new file mode 100644
index 0000000..28a0121
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/32/22.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/32/23.jpeg b/tests/cache_readymap/18ecd7d5/5/32/23.jpeg
new file mode 100644
index 0000000..ff8f8c7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/32/23.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/32/24.jpeg b/tests/cache_readymap/18ecd7d5/5/32/24.jpeg
new file mode 100644
index 0000000..2e5f27c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/32/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/32/25.jpeg b/tests/cache_readymap/18ecd7d5/5/32/25.jpeg
new file mode 100644
index 0000000..75c9429
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/32/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/33/22.jpeg b/tests/cache_readymap/18ecd7d5/5/33/22.jpeg
new file mode 100644
index 0000000..b7aa59d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/33/22.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/33/23.jpeg b/tests/cache_readymap/18ecd7d5/5/33/23.jpeg
new file mode 100644
index 0000000..e10e3d2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/33/23.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/33/24.jpeg b/tests/cache_readymap/18ecd7d5/5/33/24.jpeg
new file mode 100644
index 0000000..4e21805
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/33/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/33/25.jpeg b/tests/cache_readymap/18ecd7d5/5/33/25.jpeg
new file mode 100644
index 0000000..75d94a2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/33/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/22.jpeg b/tests/cache_readymap/18ecd7d5/5/34/22.jpeg
new file mode 100644
index 0000000..d44fbdd
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/22.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/23.jpeg b/tests/cache_readymap/18ecd7d5/5/34/23.jpeg
new file mode 100644
index 0000000..c015f2b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/23.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/24.jpeg b/tests/cache_readymap/18ecd7d5/5/34/24.jpeg
new file mode 100644
index 0000000..a92a7d9
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/25.jpeg b/tests/cache_readymap/18ecd7d5/5/34/25.jpeg
new file mode 100644
index 0000000..d21ef07
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/26.jpeg b/tests/cache_readymap/18ecd7d5/5/34/26.jpeg
new file mode 100644
index 0000000..75c5492
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/26.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/34/27.jpeg b/tests/cache_readymap/18ecd7d5/5/34/27.jpeg
new file mode 100644
index 0000000..cbe8f27
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/34/27.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/22.jpeg b/tests/cache_readymap/18ecd7d5/5/35/22.jpeg
new file mode 100644
index 0000000..91eb60a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/22.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/23.jpeg b/tests/cache_readymap/18ecd7d5/5/35/23.jpeg
new file mode 100644
index 0000000..383cd47
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/23.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/24.jpeg b/tests/cache_readymap/18ecd7d5/5/35/24.jpeg
new file mode 100644
index 0000000..5d9fc76
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/24.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/25.jpeg b/tests/cache_readymap/18ecd7d5/5/35/25.jpeg
new file mode 100644
index 0000000..aaaae93
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/25.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/26.jpeg b/tests/cache_readymap/18ecd7d5/5/35/26.jpeg
new file mode 100644
index 0000000..ec26b75
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/26.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/5/35/27.jpeg b/tests/cache_readymap/18ecd7d5/5/35/27.jpeg
new file mode 100644
index 0000000..6ea6525
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/5/35/27.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/64/48.jpeg b/tests/cache_readymap/18ecd7d5/6/64/48.jpeg
new file mode 100644
index 0000000..63ea9a7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/64/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/64/49.jpeg b/tests/cache_readymap/18ecd7d5/6/64/49.jpeg
new file mode 100644
index 0000000..a9dc3e2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/64/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/65/48.jpeg b/tests/cache_readymap/18ecd7d5/6/65/48.jpeg
new file mode 100644
index 0000000..f5eff40
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/65/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/65/49.jpeg b/tests/cache_readymap/18ecd7d5/6/65/49.jpeg
new file mode 100644
index 0000000..ad31cb9
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/65/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/46.jpeg b/tests/cache_readymap/18ecd7d5/6/66/46.jpeg
new file mode 100644
index 0000000..47875ee
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/46.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/47.jpeg b/tests/cache_readymap/18ecd7d5/6/66/47.jpeg
new file mode 100644
index 0000000..76a3444
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/47.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/48.jpeg b/tests/cache_readymap/18ecd7d5/6/66/48.jpeg
new file mode 100644
index 0000000..24ffea7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/49.jpeg b/tests/cache_readymap/18ecd7d5/6/66/49.jpeg
new file mode 100644
index 0000000..98ffffc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/50.jpeg b/tests/cache_readymap/18ecd7d5/6/66/50.jpeg
new file mode 100644
index 0000000..4d792e0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/50.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/66/51.jpeg b/tests/cache_readymap/18ecd7d5/6/66/51.jpeg
new file mode 100644
index 0000000..5e8fe9b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/66/51.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/46.jpeg b/tests/cache_readymap/18ecd7d5/6/67/46.jpeg
new file mode 100644
index 0000000..6447ccc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/46.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/47.jpeg b/tests/cache_readymap/18ecd7d5/6/67/47.jpeg
new file mode 100644
index 0000000..1c84fdf
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/47.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/48.jpeg b/tests/cache_readymap/18ecd7d5/6/67/48.jpeg
new file mode 100644
index 0000000..8c67600
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/49.jpeg b/tests/cache_readymap/18ecd7d5/6/67/49.jpeg
new file mode 100644
index 0000000..4a1ad7f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/50.jpeg b/tests/cache_readymap/18ecd7d5/6/67/50.jpeg
new file mode 100644
index 0000000..59f9e5c
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/50.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/67/51.jpeg b/tests/cache_readymap/18ecd7d5/6/67/51.jpeg
new file mode 100644
index 0000000..570268b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/67/51.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/68/48.jpeg b/tests/cache_readymap/18ecd7d5/6/68/48.jpeg
new file mode 100644
index 0000000..f5cc8f6
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/68/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/68/49.jpeg b/tests/cache_readymap/18ecd7d5/6/68/49.jpeg
new file mode 100644
index 0000000..a9d8895
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/68/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/68/50.jpeg b/tests/cache_readymap/18ecd7d5/6/68/50.jpeg
new file mode 100644
index 0000000..6e8e5ad
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/68/50.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/68/51.jpeg b/tests/cache_readymap/18ecd7d5/6/68/51.jpeg
new file mode 100644
index 0000000..cc1c6df
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/68/51.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/69/48.jpeg b/tests/cache_readymap/18ecd7d5/6/69/48.jpeg
new file mode 100644
index 0000000..4dd568d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/69/48.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/69/49.jpeg b/tests/cache_readymap/18ecd7d5/6/69/49.jpeg
new file mode 100644
index 0000000..535f8cf
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/69/49.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/69/50.jpeg b/tests/cache_readymap/18ecd7d5/6/69/50.jpeg
new file mode 100644
index 0000000..7381cf7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/69/50.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/6/69/51.jpeg b/tests/cache_readymap/18ecd7d5/6/69/51.jpeg
new file mode 100644
index 0000000..58e8934
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/6/69/51.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/132/96.jpeg b/tests/cache_readymap/18ecd7d5/7/132/96.jpeg
new file mode 100644
index 0000000..218d9d6
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/132/96.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/132/97.jpeg b/tests/cache_readymap/18ecd7d5/7/132/97.jpeg
new file mode 100644
index 0000000..1e0c452
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/132/97.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/132/98.jpeg b/tests/cache_readymap/18ecd7d5/7/132/98.jpeg
new file mode 100644
index 0000000..99f54dc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/132/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/132/99.jpeg b/tests/cache_readymap/18ecd7d5/7/132/99.jpeg
new file mode 100644
index 0000000..4db0ac2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/132/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/133/96.jpeg b/tests/cache_readymap/18ecd7d5/7/133/96.jpeg
new file mode 100644
index 0000000..eb33d11
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/133/96.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/133/97.jpeg b/tests/cache_readymap/18ecd7d5/7/133/97.jpeg
new file mode 100644
index 0000000..b5af1fa
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/133/97.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/133/98.jpeg b/tests/cache_readymap/18ecd7d5/7/133/98.jpeg
new file mode 100644
index 0000000..4b90956
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/133/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/133/99.jpeg b/tests/cache_readymap/18ecd7d5/7/133/99.jpeg
new file mode 100644
index 0000000..db19ef9
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/133/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/134/96.jpeg b/tests/cache_readymap/18ecd7d5/7/134/96.jpeg
new file mode 100644
index 0000000..490e45a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/134/96.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/134/97.jpeg b/tests/cache_readymap/18ecd7d5/7/134/97.jpeg
new file mode 100644
index 0000000..fc01750
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/134/97.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/134/98.jpeg b/tests/cache_readymap/18ecd7d5/7/134/98.jpeg
new file mode 100644
index 0000000..5c3153a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/134/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/134/99.jpeg b/tests/cache_readymap/18ecd7d5/7/134/99.jpeg
new file mode 100644
index 0000000..7918f62
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/134/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/135/96.jpeg b/tests/cache_readymap/18ecd7d5/7/135/96.jpeg
new file mode 100644
index 0000000..692b848
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/135/96.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/135/97.jpeg b/tests/cache_readymap/18ecd7d5/7/135/97.jpeg
new file mode 100644
index 0000000..fd0319e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/135/97.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/135/98.jpeg b/tests/cache_readymap/18ecd7d5/7/135/98.jpeg
new file mode 100644
index 0000000..822ab59
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/135/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/135/99.jpeg b/tests/cache_readymap/18ecd7d5/7/135/99.jpeg
new file mode 100644
index 0000000..9101e15
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/135/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/136/98.jpeg b/tests/cache_readymap/18ecd7d5/7/136/98.jpeg
new file mode 100644
index 0000000..b5bf5fc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/136/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/136/99.jpeg b/tests/cache_readymap/18ecd7d5/7/136/99.jpeg
new file mode 100644
index 0000000..755255b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/136/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/137/98.jpeg b/tests/cache_readymap/18ecd7d5/7/137/98.jpeg
new file mode 100644
index 0000000..ce386c3
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/137/98.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/7/137/99.jpeg b/tests/cache_readymap/18ecd7d5/7/137/99.jpeg
new file mode 100644
index 0000000..84251fa
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/7/137/99.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/266/194.jpeg b/tests/cache_readymap/18ecd7d5/8/266/194.jpeg
new file mode 100644
index 0000000..6ad4046
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/266/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/266/195.jpeg b/tests/cache_readymap/18ecd7d5/8/266/195.jpeg
new file mode 100644
index 0000000..dd76d9a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/266/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/266/196.jpeg b/tests/cache_readymap/18ecd7d5/8/266/196.jpeg
new file mode 100644
index 0000000..e7129bc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/266/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/266/197.jpeg b/tests/cache_readymap/18ecd7d5/8/266/197.jpeg
new file mode 100644
index 0000000..2c443dc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/266/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/267/194.jpeg b/tests/cache_readymap/18ecd7d5/8/267/194.jpeg
new file mode 100644
index 0000000..8d02e55
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/267/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/267/195.jpeg b/tests/cache_readymap/18ecd7d5/8/267/195.jpeg
new file mode 100644
index 0000000..d4e0c0a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/267/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/267/196.jpeg b/tests/cache_readymap/18ecd7d5/8/267/196.jpeg
new file mode 100644
index 0000000..053a3a7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/267/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/267/197.jpeg b/tests/cache_readymap/18ecd7d5/8/267/197.jpeg
new file mode 100644
index 0000000..c10af57
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/267/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/192.jpeg b/tests/cache_readymap/18ecd7d5/8/268/192.jpeg
new file mode 100644
index 0000000..467080f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/192.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/193.jpeg b/tests/cache_readymap/18ecd7d5/8/268/193.jpeg
new file mode 100644
index 0000000..ab87661
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/193.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/194.jpeg b/tests/cache_readymap/18ecd7d5/8/268/194.jpeg
new file mode 100644
index 0000000..29a5d71
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/195.jpeg b/tests/cache_readymap/18ecd7d5/8/268/195.jpeg
new file mode 100644
index 0000000..fd573a0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/196.jpeg b/tests/cache_readymap/18ecd7d5/8/268/196.jpeg
new file mode 100644
index 0000000..3b718e2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/268/197.jpeg b/tests/cache_readymap/18ecd7d5/8/268/197.jpeg
new file mode 100644
index 0000000..ffc55c5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/268/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/192.jpeg b/tests/cache_readymap/18ecd7d5/8/269/192.jpeg
new file mode 100644
index 0000000..32177fc
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/192.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/193.jpeg b/tests/cache_readymap/18ecd7d5/8/269/193.jpeg
new file mode 100644
index 0000000..ea429df
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/193.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/194.jpeg b/tests/cache_readymap/18ecd7d5/8/269/194.jpeg
new file mode 100644
index 0000000..c038978
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/195.jpeg b/tests/cache_readymap/18ecd7d5/8/269/195.jpeg
new file mode 100644
index 0000000..3120fcd
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/196.jpeg b/tests/cache_readymap/18ecd7d5/8/269/196.jpeg
new file mode 100644
index 0000000..d8d7916
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/269/197.jpeg b/tests/cache_readymap/18ecd7d5/8/269/197.jpeg
new file mode 100644
index 0000000..0868b2a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/269/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/270/194.jpeg b/tests/cache_readymap/18ecd7d5/8/270/194.jpeg
new file mode 100644
index 0000000..de65cda
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/270/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/270/195.jpeg b/tests/cache_readymap/18ecd7d5/8/270/195.jpeg
new file mode 100644
index 0000000..4901f2a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/270/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/270/196.jpeg b/tests/cache_readymap/18ecd7d5/8/270/196.jpeg
new file mode 100644
index 0000000..48a2c4b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/270/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/270/197.jpeg b/tests/cache_readymap/18ecd7d5/8/270/197.jpeg
new file mode 100644
index 0000000..a4029fe
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/270/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/271/194.jpeg b/tests/cache_readymap/18ecd7d5/8/271/194.jpeg
new file mode 100644
index 0000000..9cde509
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/271/194.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/271/195.jpeg b/tests/cache_readymap/18ecd7d5/8/271/195.jpeg
new file mode 100644
index 0000000..cf21a96
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/271/195.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/271/196.jpeg b/tests/cache_readymap/18ecd7d5/8/271/196.jpeg
new file mode 100644
index 0000000..cda34a2
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/271/196.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/8/271/197.jpeg b/tests/cache_readymap/18ecd7d5/8/271/197.jpeg
new file mode 100644
index 0000000..9e54be3
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/8/271/197.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/534/388.jpeg b/tests/cache_readymap/18ecd7d5/9/534/388.jpeg
new file mode 100644
index 0000000..5a92a92
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/534/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/534/389.jpeg b/tests/cache_readymap/18ecd7d5/9/534/389.jpeg
new file mode 100644
index 0000000..81e950a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/534/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/534/390.jpeg b/tests/cache_readymap/18ecd7d5/9/534/390.jpeg
new file mode 100644
index 0000000..fa02f8d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/534/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/534/391.jpeg b/tests/cache_readymap/18ecd7d5/9/534/391.jpeg
new file mode 100644
index 0000000..35cdc90
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/534/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/535/388.jpeg b/tests/cache_readymap/18ecd7d5/9/535/388.jpeg
new file mode 100644
index 0000000..62755ad
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/535/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/535/389.jpeg b/tests/cache_readymap/18ecd7d5/9/535/389.jpeg
new file mode 100644
index 0000000..eabecd0
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/535/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/535/390.jpeg b/tests/cache_readymap/18ecd7d5/9/535/390.jpeg
new file mode 100644
index 0000000..fddcf03
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/535/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/535/391.jpeg b/tests/cache_readymap/18ecd7d5/9/535/391.jpeg
new file mode 100644
index 0000000..754cd72
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/535/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/536/388.jpeg b/tests/cache_readymap/18ecd7d5/9/536/388.jpeg
new file mode 100644
index 0000000..26bb4db
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/536/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/536/389.jpeg b/tests/cache_readymap/18ecd7d5/9/536/389.jpeg
new file mode 100644
index 0000000..e2b0b55
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/536/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/536/390.jpeg b/tests/cache_readymap/18ecd7d5/9/536/390.jpeg
new file mode 100644
index 0000000..69855c5
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/536/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/536/391.jpeg b/tests/cache_readymap/18ecd7d5/9/536/391.jpeg
new file mode 100644
index 0000000..54c9255
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/536/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/537/388.jpeg b/tests/cache_readymap/18ecd7d5/9/537/388.jpeg
new file mode 100644
index 0000000..46d9608
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/537/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/537/389.jpeg b/tests/cache_readymap/18ecd7d5/9/537/389.jpeg
new file mode 100644
index 0000000..49c4371
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/537/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/537/390.jpeg b/tests/cache_readymap/18ecd7d5/9/537/390.jpeg
new file mode 100644
index 0000000..12da53a
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/537/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/537/391.jpeg b/tests/cache_readymap/18ecd7d5/9/537/391.jpeg
new file mode 100644
index 0000000..ee95161
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/537/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/538/388.jpeg b/tests/cache_readymap/18ecd7d5/9/538/388.jpeg
new file mode 100644
index 0000000..0cc796d
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/538/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/538/389.jpeg b/tests/cache_readymap/18ecd7d5/9/538/389.jpeg
new file mode 100644
index 0000000..cbd0059
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/538/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/538/390.jpeg b/tests/cache_readymap/18ecd7d5/9/538/390.jpeg
new file mode 100644
index 0000000..5fe4af7
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/538/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/538/391.jpeg b/tests/cache_readymap/18ecd7d5/9/538/391.jpeg
new file mode 100644
index 0000000..f0c3b4b
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/538/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/539/388.jpeg b/tests/cache_readymap/18ecd7d5/9/539/388.jpeg
new file mode 100644
index 0000000..0611011
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/539/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/539/389.jpeg b/tests/cache_readymap/18ecd7d5/9/539/389.jpeg
new file mode 100644
index 0000000..5a06b52
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/539/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/539/390.jpeg b/tests/cache_readymap/18ecd7d5/9/539/390.jpeg
new file mode 100644
index 0000000..aa8f9fa
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/539/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/539/391.jpeg b/tests/cache_readymap/18ecd7d5/9/539/391.jpeg
new file mode 100644
index 0000000..ee84589
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/539/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/540/388.jpeg b/tests/cache_readymap/18ecd7d5/9/540/388.jpeg
new file mode 100644
index 0000000..c685745
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/540/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/540/389.jpeg b/tests/cache_readymap/18ecd7d5/9/540/389.jpeg
new file mode 100644
index 0000000..65af25e
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/540/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/540/390.jpeg b/tests/cache_readymap/18ecd7d5/9/540/390.jpeg
new file mode 100644
index 0000000..2e1fb95
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/540/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/540/391.jpeg b/tests/cache_readymap/18ecd7d5/9/540/391.jpeg
new file mode 100644
index 0000000..12ff357
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/540/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/541/388.jpeg b/tests/cache_readymap/18ecd7d5/9/541/388.jpeg
new file mode 100644
index 0000000..e5d9afe
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/541/388.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/541/389.jpeg b/tests/cache_readymap/18ecd7d5/9/541/389.jpeg
new file mode 100644
index 0000000..ffaaa65
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/541/389.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/541/390.jpeg b/tests/cache_readymap/18ecd7d5/9/541/390.jpeg
new file mode 100644
index 0000000..eeb1647
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/541/390.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/9/541/391.jpeg b/tests/cache_readymap/18ecd7d5/9/541/391.jpeg
new file mode 100644
index 0000000..e49134f
Binary files /dev/null and b/tests/cache_readymap/18ecd7d5/9/541/391.jpeg differ
diff --git a/tests/cache_readymap/18ecd7d5/tms.xml b/tests/cache_readymap/18ecd7d5/tms.xml
new file mode 100644
index 0000000..2862c20
--- /dev/null
+++ b/tests/cache_readymap/18ecd7d5/tms.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<tilemap tilemapservice="" version="">
+    <title>
+        ReadyMap.org - Imagery
+    </title>
+    <abstract>
+        
+    </abstract>
+    <srs>
+        EPSG:4326
+    </srs>
+    <vsrs>
+        meters
+    </vsrs>
+    <boundingbox maxx="180.0000000000000000000000000" maxy="90.0000000000000000000000000" minx="-180.0000000000000000000000000" miny="-90.0000000000000000000000000">
+    </boundingbox>
+    <origin x="-180.0000000000000000000000000" y="-90.0000000000000000000000000">
+    </origin>
+    <tileformat extension="jpeg" height="256" mime-type="" width="256">
+    </tileformat>
+    <tilesets profile="global-geodetic">
+        <tileset href="" order="0" units-per-pixel="0.7031250000000000000000000">
+        </tileset>
+        <tileset href="" order="1" units-per-pixel="0.3515625000000000000000000">
+        </tileset>
+        <tileset href="" order="2" units-per-pixel="0.1757812500000000000000000">
+        </tileset>
+        <tileset href="" order="3" units-per-pixel="0.0878906250000000000000000">
+        </tileset>
+        <tileset href="" order="4" units-per-pixel="0.0439453125000000000000000">
+        </tileset>
+        <tileset href="" order="5" units-per-pixel="0.0219726562500000000000000">
+        </tileset>
+        <tileset href="" order="6" units-per-pixel="0.0109863281250000000000000">
+        </tileset>
+        <tileset href="" order="7" units-per-pixel="0.0054931640625000000000000">
+        </tileset>
+        <tileset href="" order="8" units-per-pixel="0.0027465820312500000000000">
+        </tileset>
+        <tileset href="" order="9" units-per-pixel="0.0013732910156250000000000">
+        </tileset>
+        <tileset href="" order="10" units-per-pixel="0.0006866455078125000000000">
+        </tileset>
+        <tileset href="" order="11" units-per-pixel="0.0003433227539062500000000">
+        </tileset>
+        <tileset href="" order="12" units-per-pixel="0.0001716613769531250000000">
+        </tileset>
+        <tileset href="" order="13" units-per-pixel="0.0000858306884765625000000">
+        </tileset>
+        <tileset href="" order="14" units-per-pixel="0.0000429153442382812500000">
+        </tileset>
+        <tileset href="" order="15" units-per-pixel="0.0000214576721191406250000">
+        </tileset>
+        <tileset href="" order="16" units-per-pixel="0.0000107288360595703125000">
+        </tileset>
+        <tileset href="" order="17" units-per-pixel="0.0000053644180297851562500">
+        </tileset>
+        <tileset href="" order="18" units-per-pixel="0.0000026822090148925781250">
+        </tileset>
+        <tileset href="" order="19" units-per-pixel="0.0000013411045074462890625">
+        </tileset>
+    </tilesets>
+</tilemap>
diff --git a/tests/cache_readymap/e31762cc/1/0/0.tif b/tests/cache_readymap/e31762cc/1/0/0.tif
new file mode 100644
index 0000000..3578a4d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/0/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/0/1.tif b/tests/cache_readymap/e31762cc/1/0/1.tif
new file mode 100644
index 0000000..944f810
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/0/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/1/0.tif b/tests/cache_readymap/e31762cc/1/1/0.tif
new file mode 100644
index 0000000..29531eb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/1/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/1/1.tif b/tests/cache_readymap/e31762cc/1/1/1.tif
new file mode 100644
index 0000000..939908a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/1/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/2/0.tif b/tests/cache_readymap/e31762cc/1/2/0.tif
new file mode 100644
index 0000000..13644ca
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/2/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/2/1.tif b/tests/cache_readymap/e31762cc/1/2/1.tif
new file mode 100644
index 0000000..21e0f26
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/2/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/3/0.tif b/tests/cache_readymap/e31762cc/1/3/0.tif
new file mode 100644
index 0000000..3f05fed
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/3/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/1/3/1.tif b/tests/cache_readymap/e31762cc/1/3/1.tif
new file mode 100644
index 0000000..5a979b4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/1/3/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/778.tif b/tests/cache_readymap/e31762cc/10/1070/778.tif
new file mode 100644
index 0000000..fafc9df
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/779.tif b/tests/cache_readymap/e31762cc/10/1070/779.tif
new file mode 100644
index 0000000..d0a0662
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/780.tif b/tests/cache_readymap/e31762cc/10/1070/780.tif
new file mode 100644
index 0000000..fb129db
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/781.tif b/tests/cache_readymap/e31762cc/10/1070/781.tif
new file mode 100644
index 0000000..114efc7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/782.tif b/tests/cache_readymap/e31762cc/10/1070/782.tif
new file mode 100644
index 0000000..818ffae
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/782.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1070/783.tif b/tests/cache_readymap/e31762cc/10/1070/783.tif
new file mode 100644
index 0000000..28d508f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1070/783.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/778.tif b/tests/cache_readymap/e31762cc/10/1071/778.tif
new file mode 100644
index 0000000..a77f503
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/779.tif b/tests/cache_readymap/e31762cc/10/1071/779.tif
new file mode 100644
index 0000000..3712d5b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/780.tif b/tests/cache_readymap/e31762cc/10/1071/780.tif
new file mode 100644
index 0000000..043328d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/781.tif b/tests/cache_readymap/e31762cc/10/1071/781.tif
new file mode 100644
index 0000000..9fa7138
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/782.tif b/tests/cache_readymap/e31762cc/10/1071/782.tif
new file mode 100644
index 0000000..201e59b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/782.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1071/783.tif b/tests/cache_readymap/e31762cc/10/1071/783.tif
new file mode 100644
index 0000000..5b76bbe
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1071/783.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/778.tif b/tests/cache_readymap/e31762cc/10/1072/778.tif
new file mode 100644
index 0000000..f056fb8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/779.tif b/tests/cache_readymap/e31762cc/10/1072/779.tif
new file mode 100644
index 0000000..160ea4a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/780.tif b/tests/cache_readymap/e31762cc/10/1072/780.tif
new file mode 100644
index 0000000..9fe4b97
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/781.tif b/tests/cache_readymap/e31762cc/10/1072/781.tif
new file mode 100644
index 0000000..cf2fb1c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/782.tif b/tests/cache_readymap/e31762cc/10/1072/782.tif
new file mode 100644
index 0000000..856ace2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/782.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1072/783.tif b/tests/cache_readymap/e31762cc/10/1072/783.tif
new file mode 100644
index 0000000..d626f7a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1072/783.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/778.tif b/tests/cache_readymap/e31762cc/10/1073/778.tif
new file mode 100644
index 0000000..242acac
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/779.tif b/tests/cache_readymap/e31762cc/10/1073/779.tif
new file mode 100644
index 0000000..7dfc6c1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/780.tif b/tests/cache_readymap/e31762cc/10/1073/780.tif
new file mode 100644
index 0000000..b7c7d3b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/781.tif b/tests/cache_readymap/e31762cc/10/1073/781.tif
new file mode 100644
index 0000000..830536c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/782.tif b/tests/cache_readymap/e31762cc/10/1073/782.tif
new file mode 100644
index 0000000..4ed645c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/782.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1073/783.tif b/tests/cache_readymap/e31762cc/10/1073/783.tif
new file mode 100644
index 0000000..abce253
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1073/783.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/776.tif b/tests/cache_readymap/e31762cc/10/1074/776.tif
new file mode 100644
index 0000000..2f82cd3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/777.tif b/tests/cache_readymap/e31762cc/10/1074/777.tif
new file mode 100644
index 0000000..4a3a599
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/778.tif b/tests/cache_readymap/e31762cc/10/1074/778.tif
new file mode 100644
index 0000000..4beb96e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/779.tif b/tests/cache_readymap/e31762cc/10/1074/779.tif
new file mode 100644
index 0000000..1853f0b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/780.tif b/tests/cache_readymap/e31762cc/10/1074/780.tif
new file mode 100644
index 0000000..0947979
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1074/781.tif b/tests/cache_readymap/e31762cc/10/1074/781.tif
new file mode 100644
index 0000000..a839887
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1074/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/776.tif b/tests/cache_readymap/e31762cc/10/1075/776.tif
new file mode 100644
index 0000000..cb65632
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/777.tif b/tests/cache_readymap/e31762cc/10/1075/777.tif
new file mode 100644
index 0000000..096dbe9
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/778.tif b/tests/cache_readymap/e31762cc/10/1075/778.tif
new file mode 100644
index 0000000..b4d741f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/779.tif b/tests/cache_readymap/e31762cc/10/1075/779.tif
new file mode 100644
index 0000000..3e5aa57
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/780.tif b/tests/cache_readymap/e31762cc/10/1075/780.tif
new file mode 100644
index 0000000..9cd3641
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/780.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1075/781.tif b/tests/cache_readymap/e31762cc/10/1075/781.tif
new file mode 100644
index 0000000..e06c366
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1075/781.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1076/776.tif b/tests/cache_readymap/e31762cc/10/1076/776.tif
new file mode 100644
index 0000000..10785ed
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1076/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1076/777.tif b/tests/cache_readymap/e31762cc/10/1076/777.tif
new file mode 100644
index 0000000..6dee39b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1076/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1076/778.tif b/tests/cache_readymap/e31762cc/10/1076/778.tif
new file mode 100644
index 0000000..5014f12
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1076/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1076/779.tif b/tests/cache_readymap/e31762cc/10/1076/779.tif
new file mode 100644
index 0000000..9ff22d0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1076/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1077/776.tif b/tests/cache_readymap/e31762cc/10/1077/776.tif
new file mode 100644
index 0000000..4657767
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1077/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1077/777.tif b/tests/cache_readymap/e31762cc/10/1077/777.tif
new file mode 100644
index 0000000..cad38b3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1077/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1077/778.tif b/tests/cache_readymap/e31762cc/10/1077/778.tif
new file mode 100644
index 0000000..809ca95
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1077/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1077/779.tif b/tests/cache_readymap/e31762cc/10/1077/779.tif
new file mode 100644
index 0000000..ebe95e2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1077/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1078/776.tif b/tests/cache_readymap/e31762cc/10/1078/776.tif
new file mode 100644
index 0000000..7d8c802
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1078/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1078/777.tif b/tests/cache_readymap/e31762cc/10/1078/777.tif
new file mode 100644
index 0000000..0479a43
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1078/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1078/778.tif b/tests/cache_readymap/e31762cc/10/1078/778.tif
new file mode 100644
index 0000000..9f7d166
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1078/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1078/779.tif b/tests/cache_readymap/e31762cc/10/1078/779.tif
new file mode 100644
index 0000000..15b362d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1078/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1079/776.tif b/tests/cache_readymap/e31762cc/10/1079/776.tif
new file mode 100644
index 0000000..0e60e4a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1079/776.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1079/777.tif b/tests/cache_readymap/e31762cc/10/1079/777.tif
new file mode 100644
index 0000000..984dd26
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1079/777.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1079/778.tif b/tests/cache_readymap/e31762cc/10/1079/778.tif
new file mode 100644
index 0000000..fcca72b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1079/778.tif differ
diff --git a/tests/cache_readymap/e31762cc/10/1079/779.tif b/tests/cache_readymap/e31762cc/10/1079/779.tif
new file mode 100644
index 0000000..c781fb7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/10/1079/779.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2142/1562.tif b/tests/cache_readymap/e31762cc/11/2142/1562.tif
new file mode 100644
index 0000000..9865907
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2142/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2142/1563.tif b/tests/cache_readymap/e31762cc/11/2142/1563.tif
new file mode 100644
index 0000000..864ad06
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2142/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2143/1562.tif b/tests/cache_readymap/e31762cc/11/2143/1562.tif
new file mode 100644
index 0000000..9d98231
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2143/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2143/1563.tif b/tests/cache_readymap/e31762cc/11/2143/1563.tif
new file mode 100644
index 0000000..3ed328c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2143/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1558.tif b/tests/cache_readymap/e31762cc/11/2144/1558.tif
new file mode 100644
index 0000000..52f6a24
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1558.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1559.tif b/tests/cache_readymap/e31762cc/11/2144/1559.tif
new file mode 100644
index 0000000..5148d47
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1559.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1560.tif b/tests/cache_readymap/e31762cc/11/2144/1560.tif
new file mode 100644
index 0000000..992fe2d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1560.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1561.tif b/tests/cache_readymap/e31762cc/11/2144/1561.tif
new file mode 100644
index 0000000..e552f29
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1561.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1562.tif b/tests/cache_readymap/e31762cc/11/2144/1562.tif
new file mode 100644
index 0000000..b53ab5c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2144/1563.tif b/tests/cache_readymap/e31762cc/11/2144/1563.tif
new file mode 100644
index 0000000..188bd07
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2144/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1558.tif b/tests/cache_readymap/e31762cc/11/2145/1558.tif
new file mode 100644
index 0000000..ba280c0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1558.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1559.tif b/tests/cache_readymap/e31762cc/11/2145/1559.tif
new file mode 100644
index 0000000..af898e5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1559.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1560.tif b/tests/cache_readymap/e31762cc/11/2145/1560.tif
new file mode 100644
index 0000000..5e301c3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1560.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1561.tif b/tests/cache_readymap/e31762cc/11/2145/1561.tif
new file mode 100644
index 0000000..85f792c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1561.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1562.tif b/tests/cache_readymap/e31762cc/11/2145/1562.tif
new file mode 100644
index 0000000..bd5be2a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2145/1563.tif b/tests/cache_readymap/e31762cc/11/2145/1563.tif
new file mode 100644
index 0000000..1d2542b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2145/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2146/1560.tif b/tests/cache_readymap/e31762cc/11/2146/1560.tif
new file mode 100644
index 0000000..d5908f8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2146/1560.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2146/1561.tif b/tests/cache_readymap/e31762cc/11/2146/1561.tif
new file mode 100644
index 0000000..45e09d6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2146/1561.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2146/1562.tif b/tests/cache_readymap/e31762cc/11/2146/1562.tif
new file mode 100644
index 0000000..459087f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2146/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2146/1563.tif b/tests/cache_readymap/e31762cc/11/2146/1563.tif
new file mode 100644
index 0000000..6d12a13
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2146/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2147/1560.tif b/tests/cache_readymap/e31762cc/11/2147/1560.tif
new file mode 100644
index 0000000..6f7efb8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2147/1560.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2147/1561.tif b/tests/cache_readymap/e31762cc/11/2147/1561.tif
new file mode 100644
index 0000000..fb76dfb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2147/1561.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2147/1562.tif b/tests/cache_readymap/e31762cc/11/2147/1562.tif
new file mode 100644
index 0000000..b7fb5c2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2147/1562.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2147/1563.tif b/tests/cache_readymap/e31762cc/11/2147/1563.tif
new file mode 100644
index 0000000..d5ec680
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2147/1563.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2154/1556.tif b/tests/cache_readymap/e31762cc/11/2154/1556.tif
new file mode 100644
index 0000000..3d3660f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2154/1556.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2154/1557.tif b/tests/cache_readymap/e31762cc/11/2154/1557.tif
new file mode 100644
index 0000000..b1bf749
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2154/1557.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2155/1556.tif b/tests/cache_readymap/e31762cc/11/2155/1556.tif
new file mode 100644
index 0000000..e043ba7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2155/1556.tif differ
diff --git a/tests/cache_readymap/e31762cc/11/2155/1557.tif b/tests/cache_readymap/e31762cc/11/2155/1557.tif
new file mode 100644
index 0000000..dbc6e74
Binary files /dev/null and b/tests/cache_readymap/e31762cc/11/2155/1557.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4288/3122.tif b/tests/cache_readymap/e31762cc/12/4288/3122.tif
new file mode 100644
index 0000000..9a31b59
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4288/3122.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4288/3123.tif b/tests/cache_readymap/e31762cc/12/4288/3123.tif
new file mode 100644
index 0000000..d896c72
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4288/3123.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4288/3124.tif b/tests/cache_readymap/e31762cc/12/4288/3124.tif
new file mode 100644
index 0000000..caef2a7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4288/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4288/3125.tif b/tests/cache_readymap/e31762cc/12/4288/3125.tif
new file mode 100644
index 0000000..5de5d4e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4288/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4289/3122.tif b/tests/cache_readymap/e31762cc/12/4289/3122.tif
new file mode 100644
index 0000000..60d4475
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4289/3122.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4289/3123.tif b/tests/cache_readymap/e31762cc/12/4289/3123.tif
new file mode 100644
index 0000000..49535ed
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4289/3123.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4289/3124.tif b/tests/cache_readymap/e31762cc/12/4289/3124.tif
new file mode 100644
index 0000000..20f75d3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4289/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4289/3125.tif b/tests/cache_readymap/e31762cc/12/4289/3125.tif
new file mode 100644
index 0000000..6936d91
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4289/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4290/3122.tif b/tests/cache_readymap/e31762cc/12/4290/3122.tif
new file mode 100644
index 0000000..30f5f48
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4290/3122.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4290/3123.tif b/tests/cache_readymap/e31762cc/12/4290/3123.tif
new file mode 100644
index 0000000..8b85d4f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4290/3123.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4290/3124.tif b/tests/cache_readymap/e31762cc/12/4290/3124.tif
new file mode 100644
index 0000000..60cc2e2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4290/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4290/3125.tif b/tests/cache_readymap/e31762cc/12/4290/3125.tif
new file mode 100644
index 0000000..19b6df8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4290/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4291/3122.tif b/tests/cache_readymap/e31762cc/12/4291/3122.tif
new file mode 100644
index 0000000..ecd42db
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4291/3122.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4291/3123.tif b/tests/cache_readymap/e31762cc/12/4291/3123.tif
new file mode 100644
index 0000000..c053625
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4291/3123.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4291/3124.tif b/tests/cache_readymap/e31762cc/12/4291/3124.tif
new file mode 100644
index 0000000..44a75a3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4291/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4291/3125.tif b/tests/cache_readymap/e31762cc/12/4291/3125.tif
new file mode 100644
index 0000000..856f5d1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4291/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4292/3124.tif b/tests/cache_readymap/e31762cc/12/4292/3124.tif
new file mode 100644
index 0000000..b873eea
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4292/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4292/3125.tif b/tests/cache_readymap/e31762cc/12/4292/3125.tif
new file mode 100644
index 0000000..be6b919
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4292/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4293/3124.tif b/tests/cache_readymap/e31762cc/12/4293/3124.tif
new file mode 100644
index 0000000..10e4c15
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4293/3124.tif differ
diff --git a/tests/cache_readymap/e31762cc/12/4293/3125.tif b/tests/cache_readymap/e31762cc/12/4293/3125.tif
new file mode 100644
index 0000000..bd553c7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/12/4293/3125.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8578/6246.tif b/tests/cache_readymap/e31762cc/13/8578/6246.tif
new file mode 100644
index 0000000..928038a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8578/6246.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8578/6247.tif b/tests/cache_readymap/e31762cc/13/8578/6247.tif
new file mode 100644
index 0000000..5752246
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8578/6247.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8578/6250.tif b/tests/cache_readymap/e31762cc/13/8578/6250.tif
new file mode 100644
index 0000000..4a1bea4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8578/6250.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8578/6251.tif b/tests/cache_readymap/e31762cc/13/8578/6251.tif
new file mode 100644
index 0000000..46c2f2f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8578/6251.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8579/6246.tif b/tests/cache_readymap/e31762cc/13/8579/6246.tif
new file mode 100644
index 0000000..4c2470e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8579/6246.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8579/6247.tif b/tests/cache_readymap/e31762cc/13/8579/6247.tif
new file mode 100644
index 0000000..050cd12
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8579/6247.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8579/6250.tif b/tests/cache_readymap/e31762cc/13/8579/6250.tif
new file mode 100644
index 0000000..7f1c93d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8579/6250.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8579/6251.tif b/tests/cache_readymap/e31762cc/13/8579/6251.tif
new file mode 100644
index 0000000..f477cb0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8579/6251.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8580/6246.tif b/tests/cache_readymap/e31762cc/13/8580/6246.tif
new file mode 100644
index 0000000..17cf40b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8580/6246.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8580/6247.tif b/tests/cache_readymap/e31762cc/13/8580/6247.tif
new file mode 100644
index 0000000..6949e4d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8580/6247.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8580/6250.tif b/tests/cache_readymap/e31762cc/13/8580/6250.tif
new file mode 100644
index 0000000..eab7d08
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8580/6250.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8580/6251.tif b/tests/cache_readymap/e31762cc/13/8580/6251.tif
new file mode 100644
index 0000000..2e748ac
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8580/6251.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8581/6246.tif b/tests/cache_readymap/e31762cc/13/8581/6246.tif
new file mode 100644
index 0000000..05da009
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8581/6246.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8581/6247.tif b/tests/cache_readymap/e31762cc/13/8581/6247.tif
new file mode 100644
index 0000000..805bcee
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8581/6247.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8581/6250.tif b/tests/cache_readymap/e31762cc/13/8581/6250.tif
new file mode 100644
index 0000000..b00d512
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8581/6250.tif differ
diff --git a/tests/cache_readymap/e31762cc/13/8581/6251.tif b/tests/cache_readymap/e31762cc/13/8581/6251.tif
new file mode 100644
index 0000000..796e771
Binary files /dev/null and b/tests/cache_readymap/e31762cc/13/8581/6251.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/0/0.tif b/tests/cache_readymap/e31762cc/2/0/0.tif
new file mode 100644
index 0000000..c470f1c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/0/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/0/1.tif b/tests/cache_readymap/e31762cc/2/0/1.tif
new file mode 100644
index 0000000..a2ccd00
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/0/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/0/2.tif b/tests/cache_readymap/e31762cc/2/0/2.tif
new file mode 100644
index 0000000..be33095
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/0/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/0/3.tif b/tests/cache_readymap/e31762cc/2/0/3.tif
new file mode 100644
index 0000000..09c7134
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/0/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/1/0.tif b/tests/cache_readymap/e31762cc/2/1/0.tif
new file mode 100644
index 0000000..2ecf92b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/1/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/1/1.tif b/tests/cache_readymap/e31762cc/2/1/1.tif
new file mode 100644
index 0000000..67527c1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/1/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/1/2.tif b/tests/cache_readymap/e31762cc/2/1/2.tif
new file mode 100644
index 0000000..5c30c6b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/1/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/1/3.tif b/tests/cache_readymap/e31762cc/2/1/3.tif
new file mode 100644
index 0000000..5330875
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/1/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/2/0.tif b/tests/cache_readymap/e31762cc/2/2/0.tif
new file mode 100644
index 0000000..18a10c2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/2/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/2/1.tif b/tests/cache_readymap/e31762cc/2/2/1.tif
new file mode 100644
index 0000000..80ddbf6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/2/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/2/2.tif b/tests/cache_readymap/e31762cc/2/2/2.tif
new file mode 100644
index 0000000..5dcdf4b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/2/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/2/3.tif b/tests/cache_readymap/e31762cc/2/2/3.tif
new file mode 100644
index 0000000..4a96656
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/2/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/3/0.tif b/tests/cache_readymap/e31762cc/2/3/0.tif
new file mode 100644
index 0000000..6430950
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/3/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/3/1.tif b/tests/cache_readymap/e31762cc/2/3/1.tif
new file mode 100644
index 0000000..01c04ff
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/3/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/3/2.tif b/tests/cache_readymap/e31762cc/2/3/2.tif
new file mode 100644
index 0000000..d6c6b2e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/3/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/3/3.tif b/tests/cache_readymap/e31762cc/2/3/3.tif
new file mode 100644
index 0000000..5e49075
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/3/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/4/0.tif b/tests/cache_readymap/e31762cc/2/4/0.tif
new file mode 100644
index 0000000..3a6cd2d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/4/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/4/1.tif b/tests/cache_readymap/e31762cc/2/4/1.tif
new file mode 100644
index 0000000..78f969c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/4/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/4/2.tif b/tests/cache_readymap/e31762cc/2/4/2.tif
new file mode 100644
index 0000000..e1949eb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/4/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/4/3.tif b/tests/cache_readymap/e31762cc/2/4/3.tif
new file mode 100644
index 0000000..451b636
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/4/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/5/0.tif b/tests/cache_readymap/e31762cc/2/5/0.tif
new file mode 100644
index 0000000..7d3615c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/5/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/5/1.tif b/tests/cache_readymap/e31762cc/2/5/1.tif
new file mode 100644
index 0000000..e9b9a70
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/5/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/5/2.tif b/tests/cache_readymap/e31762cc/2/5/2.tif
new file mode 100644
index 0000000..080d774
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/5/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/5/3.tif b/tests/cache_readymap/e31762cc/2/5/3.tif
new file mode 100644
index 0000000..1aa576d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/5/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/6/0.tif b/tests/cache_readymap/e31762cc/2/6/0.tif
new file mode 100644
index 0000000..07a5221
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/6/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/6/1.tif b/tests/cache_readymap/e31762cc/2/6/1.tif
new file mode 100644
index 0000000..11e24f8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/6/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/6/2.tif b/tests/cache_readymap/e31762cc/2/6/2.tif
new file mode 100644
index 0000000..9004224
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/6/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/6/3.tif b/tests/cache_readymap/e31762cc/2/6/3.tif
new file mode 100644
index 0000000..a7dce22
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/6/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/7/0.tif b/tests/cache_readymap/e31762cc/2/7/0.tif
new file mode 100644
index 0000000..f281e2d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/7/0.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/7/1.tif b/tests/cache_readymap/e31762cc/2/7/1.tif
new file mode 100644
index 0000000..cddba9a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/7/1.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/7/2.tif b/tests/cache_readymap/e31762cc/2/7/2.tif
new file mode 100644
index 0000000..1e01f03
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/7/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/2/7/3.tif b/tests/cache_readymap/e31762cc/2/7/3.tif
new file mode 100644
index 0000000..a8463b3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/2/7/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/10/4.tif b/tests/cache_readymap/e31762cc/3/10/4.tif
new file mode 100644
index 0000000..3d6cce6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/10/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/10/5.tif b/tests/cache_readymap/e31762cc/3/10/5.tif
new file mode 100644
index 0000000..c4b57b2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/10/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/10/6.tif b/tests/cache_readymap/e31762cc/3/10/6.tif
new file mode 100644
index 0000000..a6feea0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/10/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/10/7.tif b/tests/cache_readymap/e31762cc/3/10/7.tif
new file mode 100644
index 0000000..7f94aa6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/10/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/11/4.tif b/tests/cache_readymap/e31762cc/3/11/4.tif
new file mode 100644
index 0000000..be1d8ea
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/11/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/11/5.tif b/tests/cache_readymap/e31762cc/3/11/5.tif
new file mode 100644
index 0000000..3478b96
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/11/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/11/6.tif b/tests/cache_readymap/e31762cc/3/11/6.tif
new file mode 100644
index 0000000..053dc73
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/11/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/11/7.tif b/tests/cache_readymap/e31762cc/3/11/7.tif
new file mode 100644
index 0000000..b44f8f6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/11/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/12/4.tif b/tests/cache_readymap/e31762cc/3/12/4.tif
new file mode 100644
index 0000000..2549c71
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/12/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/12/5.tif b/tests/cache_readymap/e31762cc/3/12/5.tif
new file mode 100644
index 0000000..eabd9a5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/12/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/12/6.tif b/tests/cache_readymap/e31762cc/3/12/6.tif
new file mode 100644
index 0000000..0dc399f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/12/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/12/7.tif b/tests/cache_readymap/e31762cc/3/12/7.tif
new file mode 100644
index 0000000..35a64fd
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/12/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/13/4.tif b/tests/cache_readymap/e31762cc/3/13/4.tif
new file mode 100644
index 0000000..cbf0e34
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/13/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/13/5.tif b/tests/cache_readymap/e31762cc/3/13/5.tif
new file mode 100644
index 0000000..79dfc6f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/13/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/13/6.tif b/tests/cache_readymap/e31762cc/3/13/6.tif
new file mode 100644
index 0000000..e80ec6b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/13/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/13/7.tif b/tests/cache_readymap/e31762cc/3/13/7.tif
new file mode 100644
index 0000000..5d348b8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/13/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/14/6.tif b/tests/cache_readymap/e31762cc/3/14/6.tif
new file mode 100644
index 0000000..cd501e4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/14/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/14/7.tif b/tests/cache_readymap/e31762cc/3/14/7.tif
new file mode 100644
index 0000000..a2b2833
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/14/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/15/6.tif b/tests/cache_readymap/e31762cc/3/15/6.tif
new file mode 100644
index 0000000..ff4e071
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/15/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/15/7.tif b/tests/cache_readymap/e31762cc/3/15/7.tif
new file mode 100644
index 0000000..afc92d8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/15/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/2.tif b/tests/cache_readymap/e31762cc/3/2/2.tif
new file mode 100644
index 0000000..0c6cfe4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/3.tif b/tests/cache_readymap/e31762cc/3/2/3.tif
new file mode 100644
index 0000000..1e4da0e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/4.tif b/tests/cache_readymap/e31762cc/3/2/4.tif
new file mode 100644
index 0000000..42bdb1b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/5.tif b/tests/cache_readymap/e31762cc/3/2/5.tif
new file mode 100644
index 0000000..1078dc2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/6.tif b/tests/cache_readymap/e31762cc/3/2/6.tif
new file mode 100644
index 0000000..b6f7525
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/2/7.tif b/tests/cache_readymap/e31762cc/3/2/7.tif
new file mode 100644
index 0000000..3132aa7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/2/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/2.tif b/tests/cache_readymap/e31762cc/3/3/2.tif
new file mode 100644
index 0000000..f4d431e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/3.tif b/tests/cache_readymap/e31762cc/3/3/3.tif
new file mode 100644
index 0000000..f1561c0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/4.tif b/tests/cache_readymap/e31762cc/3/3/4.tif
new file mode 100644
index 0000000..625fb3c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/5.tif b/tests/cache_readymap/e31762cc/3/3/5.tif
new file mode 100644
index 0000000..9bffb32
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/6.tif b/tests/cache_readymap/e31762cc/3/3/6.tif
new file mode 100644
index 0000000..fe934cf
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/3/7.tif b/tests/cache_readymap/e31762cc/3/3/7.tif
new file mode 100644
index 0000000..c3758a9
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/3/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/2.tif b/tests/cache_readymap/e31762cc/3/4/2.tif
new file mode 100644
index 0000000..a83bbee
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/3.tif b/tests/cache_readymap/e31762cc/3/4/3.tif
new file mode 100644
index 0000000..db26e00
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/4.tif b/tests/cache_readymap/e31762cc/3/4/4.tif
new file mode 100644
index 0000000..4dff263
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/5.tif b/tests/cache_readymap/e31762cc/3/4/5.tif
new file mode 100644
index 0000000..57e66bd
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/6.tif b/tests/cache_readymap/e31762cc/3/4/6.tif
new file mode 100644
index 0000000..281a39f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/4/7.tif b/tests/cache_readymap/e31762cc/3/4/7.tif
new file mode 100644
index 0000000..21b78be
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/4/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/2.tif b/tests/cache_readymap/e31762cc/3/5/2.tif
new file mode 100644
index 0000000..591f3a1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/2.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/3.tif b/tests/cache_readymap/e31762cc/3/5/3.tif
new file mode 100644
index 0000000..edf1a20
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/3.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/4.tif b/tests/cache_readymap/e31762cc/3/5/4.tif
new file mode 100644
index 0000000..b6b7b21
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/5.tif b/tests/cache_readymap/e31762cc/3/5/5.tif
new file mode 100644
index 0000000..1449d1e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/6.tif b/tests/cache_readymap/e31762cc/3/5/6.tif
new file mode 100644
index 0000000..b896dd6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/5/7.tif b/tests/cache_readymap/e31762cc/3/5/7.tif
new file mode 100644
index 0000000..fb0b591
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/5/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/6/4.tif b/tests/cache_readymap/e31762cc/3/6/4.tif
new file mode 100644
index 0000000..d949e3c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/6/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/6/5.tif b/tests/cache_readymap/e31762cc/3/6/5.tif
new file mode 100644
index 0000000..2609576
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/6/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/6/6.tif b/tests/cache_readymap/e31762cc/3/6/6.tif
new file mode 100644
index 0000000..1b457f6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/6/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/6/7.tif b/tests/cache_readymap/e31762cc/3/6/7.tif
new file mode 100644
index 0000000..92f3009
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/6/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/7/4.tif b/tests/cache_readymap/e31762cc/3/7/4.tif
new file mode 100644
index 0000000..13e6e81
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/7/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/7/5.tif b/tests/cache_readymap/e31762cc/3/7/5.tif
new file mode 100644
index 0000000..760645c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/7/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/7/6.tif b/tests/cache_readymap/e31762cc/3/7/6.tif
new file mode 100644
index 0000000..40fd5a0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/7/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/7/7.tif b/tests/cache_readymap/e31762cc/3/7/7.tif
new file mode 100644
index 0000000..fbd08c3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/7/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/8/4.tif b/tests/cache_readymap/e31762cc/3/8/4.tif
new file mode 100644
index 0000000..d12466a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/8/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/8/5.tif b/tests/cache_readymap/e31762cc/3/8/5.tif
new file mode 100644
index 0000000..f293681
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/8/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/8/6.tif b/tests/cache_readymap/e31762cc/3/8/6.tif
new file mode 100644
index 0000000..fbd5469
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/8/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/8/7.tif b/tests/cache_readymap/e31762cc/3/8/7.tif
new file mode 100644
index 0000000..f9b6e40
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/8/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/9/4.tif b/tests/cache_readymap/e31762cc/3/9/4.tif
new file mode 100644
index 0000000..e0172fc
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/9/4.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/9/5.tif b/tests/cache_readymap/e31762cc/3/9/5.tif
new file mode 100644
index 0000000..b72c90c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/9/5.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/9/6.tif b/tests/cache_readymap/e31762cc/3/9/6.tif
new file mode 100644
index 0000000..f1d86d1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/9/6.tif differ
diff --git a/tests/cache_readymap/e31762cc/3/9/7.tif b/tests/cache_readymap/e31762cc/3/9/7.tif
new file mode 100644
index 0000000..5497f2f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/3/9/7.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/12/12.tif b/tests/cache_readymap/e31762cc/4/12/12.tif
new file mode 100644
index 0000000..affb89e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/12/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/12/13.tif b/tests/cache_readymap/e31762cc/4/12/13.tif
new file mode 100644
index 0000000..0ff6bd3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/12/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/13/12.tif b/tests/cache_readymap/e31762cc/4/13/12.tif
new file mode 100644
index 0000000..c0eb9dc
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/13/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/13/13.tif b/tests/cache_readymap/e31762cc/4/13/13.tif
new file mode 100644
index 0000000..b63058f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/13/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/14/12.tif b/tests/cache_readymap/e31762cc/4/14/12.tif
new file mode 100644
index 0000000..7c024bf
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/14/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/14/13.tif b/tests/cache_readymap/e31762cc/4/14/13.tif
new file mode 100644
index 0000000..f5ce4bb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/14/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/15/12.tif b/tests/cache_readymap/e31762cc/4/15/12.tif
new file mode 100644
index 0000000..86755c5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/15/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/15/13.tif b/tests/cache_readymap/e31762cc/4/15/13.tif
new file mode 100644
index 0000000..a1b43bb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/15/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/16/10.tif b/tests/cache_readymap/e31762cc/4/16/10.tif
new file mode 100644
index 0000000..73a64ac
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/16/10.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/16/11.tif b/tests/cache_readymap/e31762cc/4/16/11.tif
new file mode 100644
index 0000000..32500da
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/16/11.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/16/12.tif b/tests/cache_readymap/e31762cc/4/16/12.tif
new file mode 100644
index 0000000..be2b749
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/16/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/16/13.tif b/tests/cache_readymap/e31762cc/4/16/13.tif
new file mode 100644
index 0000000..825f7ad
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/16/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/17/10.tif b/tests/cache_readymap/e31762cc/4/17/10.tif
new file mode 100644
index 0000000..ce5ce9c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/17/10.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/17/11.tif b/tests/cache_readymap/e31762cc/4/17/11.tif
new file mode 100644
index 0000000..5d1d6e5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/17/11.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/17/12.tif b/tests/cache_readymap/e31762cc/4/17/12.tif
new file mode 100644
index 0000000..26b58e7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/17/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/17/13.tif b/tests/cache_readymap/e31762cc/4/17/13.tif
new file mode 100644
index 0000000..3c60db6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/17/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/18/10.tif b/tests/cache_readymap/e31762cc/4/18/10.tif
new file mode 100644
index 0000000..021b13d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/18/10.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/18/11.tif b/tests/cache_readymap/e31762cc/4/18/11.tif
new file mode 100644
index 0000000..ed1610f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/18/11.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/18/12.tif b/tests/cache_readymap/e31762cc/4/18/12.tif
new file mode 100644
index 0000000..6839296
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/18/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/18/13.tif b/tests/cache_readymap/e31762cc/4/18/13.tif
new file mode 100644
index 0000000..6e2a6da
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/18/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/19/10.tif b/tests/cache_readymap/e31762cc/4/19/10.tif
new file mode 100644
index 0000000..1025cda
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/19/10.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/19/11.tif b/tests/cache_readymap/e31762cc/4/19/11.tif
new file mode 100644
index 0000000..c8e8cdf
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/19/11.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/19/12.tif b/tests/cache_readymap/e31762cc/4/19/12.tif
new file mode 100644
index 0000000..53f8e89
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/19/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/19/13.tif b/tests/cache_readymap/e31762cc/4/19/13.tif
new file mode 100644
index 0000000..027e757
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/19/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/20/12.tif b/tests/cache_readymap/e31762cc/4/20/12.tif
new file mode 100644
index 0000000..48ab6fb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/20/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/20/13.tif b/tests/cache_readymap/e31762cc/4/20/13.tif
new file mode 100644
index 0000000..0c5f548
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/20/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/21/12.tif b/tests/cache_readymap/e31762cc/4/21/12.tif
new file mode 100644
index 0000000..da3066d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/21/12.tif differ
diff --git a/tests/cache_readymap/e31762cc/4/21/13.tif b/tests/cache_readymap/e31762cc/4/21/13.tif
new file mode 100644
index 0000000..bd098bb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/4/21/13.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/30/24.tif b/tests/cache_readymap/e31762cc/5/30/24.tif
new file mode 100644
index 0000000..4e12b4a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/30/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/30/25.tif b/tests/cache_readymap/e31762cc/5/30/25.tif
new file mode 100644
index 0000000..b5bfbb1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/30/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/31/24.tif b/tests/cache_readymap/e31762cc/5/31/24.tif
new file mode 100644
index 0000000..d2d524b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/31/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/31/25.tif b/tests/cache_readymap/e31762cc/5/31/25.tif
new file mode 100644
index 0000000..fda6b2f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/31/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/32/22.tif b/tests/cache_readymap/e31762cc/5/32/22.tif
new file mode 100644
index 0000000..ca9c2b8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/32/22.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/32/23.tif b/tests/cache_readymap/e31762cc/5/32/23.tif
new file mode 100644
index 0000000..02736c7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/32/23.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/32/24.tif b/tests/cache_readymap/e31762cc/5/32/24.tif
new file mode 100644
index 0000000..a8a2103
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/32/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/32/25.tif b/tests/cache_readymap/e31762cc/5/32/25.tif
new file mode 100644
index 0000000..695f5f3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/32/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/33/22.tif b/tests/cache_readymap/e31762cc/5/33/22.tif
new file mode 100644
index 0000000..9601c83
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/33/22.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/33/23.tif b/tests/cache_readymap/e31762cc/5/33/23.tif
new file mode 100644
index 0000000..fb4abd1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/33/23.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/33/24.tif b/tests/cache_readymap/e31762cc/5/33/24.tif
new file mode 100644
index 0000000..0efa1be
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/33/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/33/25.tif b/tests/cache_readymap/e31762cc/5/33/25.tif
new file mode 100644
index 0000000..b72fc75
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/33/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/22.tif b/tests/cache_readymap/e31762cc/5/34/22.tif
new file mode 100644
index 0000000..4ff7b4f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/22.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/23.tif b/tests/cache_readymap/e31762cc/5/34/23.tif
new file mode 100644
index 0000000..b574918
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/23.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/24.tif b/tests/cache_readymap/e31762cc/5/34/24.tif
new file mode 100644
index 0000000..fd8f31d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/25.tif b/tests/cache_readymap/e31762cc/5/34/25.tif
new file mode 100644
index 0000000..5f64f55
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/26.tif b/tests/cache_readymap/e31762cc/5/34/26.tif
new file mode 100644
index 0000000..89bbd54
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/26.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/34/27.tif b/tests/cache_readymap/e31762cc/5/34/27.tif
new file mode 100644
index 0000000..0024487
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/34/27.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/22.tif b/tests/cache_readymap/e31762cc/5/35/22.tif
new file mode 100644
index 0000000..3634fe0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/22.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/23.tif b/tests/cache_readymap/e31762cc/5/35/23.tif
new file mode 100644
index 0000000..1bf3e92
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/23.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/24.tif b/tests/cache_readymap/e31762cc/5/35/24.tif
new file mode 100644
index 0000000..e6e2c23
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/24.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/25.tif b/tests/cache_readymap/e31762cc/5/35/25.tif
new file mode 100644
index 0000000..ff06102
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/25.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/26.tif b/tests/cache_readymap/e31762cc/5/35/26.tif
new file mode 100644
index 0000000..bf85e38
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/26.tif differ
diff --git a/tests/cache_readymap/e31762cc/5/35/27.tif b/tests/cache_readymap/e31762cc/5/35/27.tif
new file mode 100644
index 0000000..6a32679
Binary files /dev/null and b/tests/cache_readymap/e31762cc/5/35/27.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/64/48.tif b/tests/cache_readymap/e31762cc/6/64/48.tif
new file mode 100644
index 0000000..1e97c68
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/64/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/64/49.tif b/tests/cache_readymap/e31762cc/6/64/49.tif
new file mode 100644
index 0000000..d41f37c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/64/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/65/48.tif b/tests/cache_readymap/e31762cc/6/65/48.tif
new file mode 100644
index 0000000..140a9d5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/65/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/65/49.tif b/tests/cache_readymap/e31762cc/6/65/49.tif
new file mode 100644
index 0000000..5e952d3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/65/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/46.tif b/tests/cache_readymap/e31762cc/6/66/46.tif
new file mode 100644
index 0000000..6075dbd
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/46.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/47.tif b/tests/cache_readymap/e31762cc/6/66/47.tif
new file mode 100644
index 0000000..6406791
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/47.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/48.tif b/tests/cache_readymap/e31762cc/6/66/48.tif
new file mode 100644
index 0000000..c0b16d7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/49.tif b/tests/cache_readymap/e31762cc/6/66/49.tif
new file mode 100644
index 0000000..f49379e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/50.tif b/tests/cache_readymap/e31762cc/6/66/50.tif
new file mode 100644
index 0000000..8110a53
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/50.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/66/51.tif b/tests/cache_readymap/e31762cc/6/66/51.tif
new file mode 100644
index 0000000..bb8bc4e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/66/51.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/46.tif b/tests/cache_readymap/e31762cc/6/67/46.tif
new file mode 100644
index 0000000..01dda2b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/46.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/47.tif b/tests/cache_readymap/e31762cc/6/67/47.tif
new file mode 100644
index 0000000..12f6749
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/47.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/48.tif b/tests/cache_readymap/e31762cc/6/67/48.tif
new file mode 100644
index 0000000..27a6a7c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/49.tif b/tests/cache_readymap/e31762cc/6/67/49.tif
new file mode 100644
index 0000000..ad6c4ca
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/50.tif b/tests/cache_readymap/e31762cc/6/67/50.tif
new file mode 100644
index 0000000..9c91592
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/50.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/67/51.tif b/tests/cache_readymap/e31762cc/6/67/51.tif
new file mode 100644
index 0000000..ae4b0ca
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/67/51.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/68/48.tif b/tests/cache_readymap/e31762cc/6/68/48.tif
new file mode 100644
index 0000000..d67b12f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/68/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/68/49.tif b/tests/cache_readymap/e31762cc/6/68/49.tif
new file mode 100644
index 0000000..c57aa81
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/68/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/68/50.tif b/tests/cache_readymap/e31762cc/6/68/50.tif
new file mode 100644
index 0000000..0b75fdc
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/68/50.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/68/51.tif b/tests/cache_readymap/e31762cc/6/68/51.tif
new file mode 100644
index 0000000..7550a3e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/68/51.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/69/48.tif b/tests/cache_readymap/e31762cc/6/69/48.tif
new file mode 100644
index 0000000..2cd7b68
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/69/48.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/69/49.tif b/tests/cache_readymap/e31762cc/6/69/49.tif
new file mode 100644
index 0000000..20434f3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/69/49.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/69/50.tif b/tests/cache_readymap/e31762cc/6/69/50.tif
new file mode 100644
index 0000000..8544555
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/69/50.tif differ
diff --git a/tests/cache_readymap/e31762cc/6/69/51.tif b/tests/cache_readymap/e31762cc/6/69/51.tif
new file mode 100644
index 0000000..65395f1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/6/69/51.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/132/96.tif b/tests/cache_readymap/e31762cc/7/132/96.tif
new file mode 100644
index 0000000..af11253
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/132/96.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/132/97.tif b/tests/cache_readymap/e31762cc/7/132/97.tif
new file mode 100644
index 0000000..97fd2ac
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/132/97.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/132/98.tif b/tests/cache_readymap/e31762cc/7/132/98.tif
new file mode 100644
index 0000000..89ab50a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/132/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/132/99.tif b/tests/cache_readymap/e31762cc/7/132/99.tif
new file mode 100644
index 0000000..9e2338a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/132/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/133/96.tif b/tests/cache_readymap/e31762cc/7/133/96.tif
new file mode 100644
index 0000000..a31056f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/133/96.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/133/97.tif b/tests/cache_readymap/e31762cc/7/133/97.tif
new file mode 100644
index 0000000..2cc0a2c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/133/97.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/133/98.tif b/tests/cache_readymap/e31762cc/7/133/98.tif
new file mode 100644
index 0000000..888c4ea
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/133/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/133/99.tif b/tests/cache_readymap/e31762cc/7/133/99.tif
new file mode 100644
index 0000000..9c243d4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/133/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/134/96.tif b/tests/cache_readymap/e31762cc/7/134/96.tif
new file mode 100644
index 0000000..fac0ccf
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/134/96.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/134/97.tif b/tests/cache_readymap/e31762cc/7/134/97.tif
new file mode 100644
index 0000000..567fe01
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/134/97.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/134/98.tif b/tests/cache_readymap/e31762cc/7/134/98.tif
new file mode 100644
index 0000000..7aed8dd
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/134/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/134/99.tif b/tests/cache_readymap/e31762cc/7/134/99.tif
new file mode 100644
index 0000000..d788ec0
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/134/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/135/96.tif b/tests/cache_readymap/e31762cc/7/135/96.tif
new file mode 100644
index 0000000..b2ea0c4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/135/96.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/135/97.tif b/tests/cache_readymap/e31762cc/7/135/97.tif
new file mode 100644
index 0000000..094ad2e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/135/97.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/135/98.tif b/tests/cache_readymap/e31762cc/7/135/98.tif
new file mode 100644
index 0000000..b55c680
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/135/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/135/99.tif b/tests/cache_readymap/e31762cc/7/135/99.tif
new file mode 100644
index 0000000..9cd030f
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/135/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/136/98.tif b/tests/cache_readymap/e31762cc/7/136/98.tif
new file mode 100644
index 0000000..0c6a9da
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/136/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/136/99.tif b/tests/cache_readymap/e31762cc/7/136/99.tif
new file mode 100644
index 0000000..2d2324b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/136/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/137/98.tif b/tests/cache_readymap/e31762cc/7/137/98.tif
new file mode 100644
index 0000000..a8f3a6d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/137/98.tif differ
diff --git a/tests/cache_readymap/e31762cc/7/137/99.tif b/tests/cache_readymap/e31762cc/7/137/99.tif
new file mode 100644
index 0000000..4e0584a
Binary files /dev/null and b/tests/cache_readymap/e31762cc/7/137/99.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/266/194.tif b/tests/cache_readymap/e31762cc/8/266/194.tif
new file mode 100644
index 0000000..96d9552
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/266/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/266/195.tif b/tests/cache_readymap/e31762cc/8/266/195.tif
new file mode 100644
index 0000000..1022a4d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/266/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/266/196.tif b/tests/cache_readymap/e31762cc/8/266/196.tif
new file mode 100644
index 0000000..660223e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/266/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/266/197.tif b/tests/cache_readymap/e31762cc/8/266/197.tif
new file mode 100644
index 0000000..4a453d3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/266/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/267/194.tif b/tests/cache_readymap/e31762cc/8/267/194.tif
new file mode 100644
index 0000000..68f6d20
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/267/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/267/195.tif b/tests/cache_readymap/e31762cc/8/267/195.tif
new file mode 100644
index 0000000..0ef7746
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/267/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/267/196.tif b/tests/cache_readymap/e31762cc/8/267/196.tif
new file mode 100644
index 0000000..ceaac49
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/267/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/267/197.tif b/tests/cache_readymap/e31762cc/8/267/197.tif
new file mode 100644
index 0000000..f1a2867
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/267/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/192.tif b/tests/cache_readymap/e31762cc/8/268/192.tif
new file mode 100644
index 0000000..568d464
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/192.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/193.tif b/tests/cache_readymap/e31762cc/8/268/193.tif
new file mode 100644
index 0000000..7b0c903
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/193.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/194.tif b/tests/cache_readymap/e31762cc/8/268/194.tif
new file mode 100644
index 0000000..4aca19c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/195.tif b/tests/cache_readymap/e31762cc/8/268/195.tif
new file mode 100644
index 0000000..2ca910b
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/196.tif b/tests/cache_readymap/e31762cc/8/268/196.tif
new file mode 100644
index 0000000..61a23ab
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/268/197.tif b/tests/cache_readymap/e31762cc/8/268/197.tif
new file mode 100644
index 0000000..17b2647
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/268/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/192.tif b/tests/cache_readymap/e31762cc/8/269/192.tif
new file mode 100644
index 0000000..b9b26e7
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/192.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/193.tif b/tests/cache_readymap/e31762cc/8/269/193.tif
new file mode 100644
index 0000000..93d41a3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/193.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/194.tif b/tests/cache_readymap/e31762cc/8/269/194.tif
new file mode 100644
index 0000000..4bc36f2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/195.tif b/tests/cache_readymap/e31762cc/8/269/195.tif
new file mode 100644
index 0000000..ec24ec6
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/196.tif b/tests/cache_readymap/e31762cc/8/269/196.tif
new file mode 100644
index 0000000..214e07d
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/269/197.tif b/tests/cache_readymap/e31762cc/8/269/197.tif
new file mode 100644
index 0000000..db64ac5
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/269/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/270/194.tif b/tests/cache_readymap/e31762cc/8/270/194.tif
new file mode 100644
index 0000000..25904a2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/270/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/270/195.tif b/tests/cache_readymap/e31762cc/8/270/195.tif
new file mode 100644
index 0000000..aab9eb8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/270/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/270/196.tif b/tests/cache_readymap/e31762cc/8/270/196.tif
new file mode 100644
index 0000000..eb84e4c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/270/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/270/197.tif b/tests/cache_readymap/e31762cc/8/270/197.tif
new file mode 100644
index 0000000..8b193bc
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/270/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/271/194.tif b/tests/cache_readymap/e31762cc/8/271/194.tif
new file mode 100644
index 0000000..95f90c1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/271/194.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/271/195.tif b/tests/cache_readymap/e31762cc/8/271/195.tif
new file mode 100644
index 0000000..8d49524
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/271/195.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/271/196.tif b/tests/cache_readymap/e31762cc/8/271/196.tif
new file mode 100644
index 0000000..3370e4c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/271/196.tif differ
diff --git a/tests/cache_readymap/e31762cc/8/271/197.tif b/tests/cache_readymap/e31762cc/8/271/197.tif
new file mode 100644
index 0000000..8b47f03
Binary files /dev/null and b/tests/cache_readymap/e31762cc/8/271/197.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/534/388.tif b/tests/cache_readymap/e31762cc/9/534/388.tif
new file mode 100644
index 0000000..09be3fb
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/534/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/534/389.tif b/tests/cache_readymap/e31762cc/9/534/389.tif
new file mode 100644
index 0000000..cc7cd20
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/534/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/534/390.tif b/tests/cache_readymap/e31762cc/9/534/390.tif
new file mode 100644
index 0000000..0b0e688
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/534/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/534/391.tif b/tests/cache_readymap/e31762cc/9/534/391.tif
new file mode 100644
index 0000000..a7cadc1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/534/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/535/388.tif b/tests/cache_readymap/e31762cc/9/535/388.tif
new file mode 100644
index 0000000..ec82a00
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/535/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/535/389.tif b/tests/cache_readymap/e31762cc/9/535/389.tif
new file mode 100644
index 0000000..2e8e2aa
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/535/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/535/390.tif b/tests/cache_readymap/e31762cc/9/535/390.tif
new file mode 100644
index 0000000..3ef8148
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/535/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/535/391.tif b/tests/cache_readymap/e31762cc/9/535/391.tif
new file mode 100644
index 0000000..9b4687e
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/535/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/536/388.tif b/tests/cache_readymap/e31762cc/9/536/388.tif
new file mode 100644
index 0000000..6506fb2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/536/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/536/389.tif b/tests/cache_readymap/e31762cc/9/536/389.tif
new file mode 100644
index 0000000..57379c3
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/536/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/536/390.tif b/tests/cache_readymap/e31762cc/9/536/390.tif
new file mode 100644
index 0000000..1162004
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/536/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/536/391.tif b/tests/cache_readymap/e31762cc/9/536/391.tif
new file mode 100644
index 0000000..9389468
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/536/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/537/388.tif b/tests/cache_readymap/e31762cc/9/537/388.tif
new file mode 100644
index 0000000..475d288
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/537/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/537/389.tif b/tests/cache_readymap/e31762cc/9/537/389.tif
new file mode 100644
index 0000000..26cb9b2
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/537/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/537/390.tif b/tests/cache_readymap/e31762cc/9/537/390.tif
new file mode 100644
index 0000000..5304344
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/537/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/537/391.tif b/tests/cache_readymap/e31762cc/9/537/391.tif
new file mode 100644
index 0000000..0507ade
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/537/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/538/388.tif b/tests/cache_readymap/e31762cc/9/538/388.tif
new file mode 100644
index 0000000..d554fb1
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/538/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/538/389.tif b/tests/cache_readymap/e31762cc/9/538/389.tif
new file mode 100644
index 0000000..575e95c
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/538/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/538/390.tif b/tests/cache_readymap/e31762cc/9/538/390.tif
new file mode 100644
index 0000000..0e150a9
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/538/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/538/391.tif b/tests/cache_readymap/e31762cc/9/538/391.tif
new file mode 100644
index 0000000..ea9c363
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/538/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/539/388.tif b/tests/cache_readymap/e31762cc/9/539/388.tif
new file mode 100644
index 0000000..54052b9
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/539/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/539/389.tif b/tests/cache_readymap/e31762cc/9/539/389.tif
new file mode 100644
index 0000000..c6af4c8
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/539/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/539/390.tif b/tests/cache_readymap/e31762cc/9/539/390.tif
new file mode 100644
index 0000000..e9651d4
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/539/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/539/391.tif b/tests/cache_readymap/e31762cc/9/539/391.tif
new file mode 100644
index 0000000..7046b98
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/539/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/540/388.tif b/tests/cache_readymap/e31762cc/9/540/388.tif
new file mode 100644
index 0000000..8a65e60
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/540/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/540/389.tif b/tests/cache_readymap/e31762cc/9/540/389.tif
new file mode 100644
index 0000000..a7bb8ef
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/540/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/540/390.tif b/tests/cache_readymap/e31762cc/9/540/390.tif
new file mode 100644
index 0000000..8602651
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/540/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/540/391.tif b/tests/cache_readymap/e31762cc/9/540/391.tif
new file mode 100644
index 0000000..f4bbd25
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/540/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/541/388.tif b/tests/cache_readymap/e31762cc/9/541/388.tif
new file mode 100644
index 0000000..7eac186
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/541/388.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/541/389.tif b/tests/cache_readymap/e31762cc/9/541/389.tif
new file mode 100644
index 0000000..e3c9c47
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/541/389.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/541/390.tif b/tests/cache_readymap/e31762cc/9/541/390.tif
new file mode 100644
index 0000000..9daf8ec
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/541/390.tif differ
diff --git a/tests/cache_readymap/e31762cc/9/541/391.tif b/tests/cache_readymap/e31762cc/9/541/391.tif
new file mode 100644
index 0000000..589e155
Binary files /dev/null and b/tests/cache_readymap/e31762cc/9/541/391.tif differ
diff --git a/tests/cache_readymap/e31762cc/tms.xml b/tests/cache_readymap/e31762cc/tms.xml
new file mode 100644
index 0000000..fbe0d4f
--- /dev/null
+++ b/tests/cache_readymap/e31762cc/tms.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0"?>
+<tilemap tilemapservice="" version="">
+    <title>
+        ReadyMap.org - Elevation
+    </title>
+    <abstract>
+        
+    </abstract>
+    <srs>
+        EPSG:4326
+    </srs>
+    <vsrs>
+        meters
+    </vsrs>
+    <boundingbox maxx="180.0000000000000000000000000" maxy="90.0000000000000000000000000" minx="-180.0000000000000000000000000" miny="-90.0000000000000000000000000">
+    </boundingbox>
+    <origin x="-180.0000000000000000000000000" y="-90.0000000000000000000000000">
+    </origin>
+    <tileformat extension="tif" height="32" mime-type="" width="32">
+    </tileformat>
+    <tilesets profile="global-geodetic">
+        <tileset href="" order="0" units-per-pixel="5.6250000000000000000000000">
+        </tileset>
+        <tileset href="" order="1" units-per-pixel="2.8125000000000000000000000">
+        </tileset>
+        <tileset href="" order="2" units-per-pixel="1.4062500000000000000000000">
+        </tileset>
+        <tileset href="" order="3" units-per-pixel="0.7031250000000000000000000">
+        </tileset>
+        <tileset href="" order="4" units-per-pixel="0.3515625000000000000000000">
+        </tileset>
+        <tileset href="" order="5" units-per-pixel="0.1757812500000000000000000">
+        </tileset>
+        <tileset href="" order="6" units-per-pixel="0.0878906250000000000000000">
+        </tileset>
+        <tileset href="" order="7" units-per-pixel="0.0439453125000000000000000">
+        </tileset>
+        <tileset href="" order="8" units-per-pixel="0.0219726562500000000000000">
+        </tileset>
+        <tileset href="" order="9" units-per-pixel="0.0109863281250000000000000">
+        </tileset>
+        <tileset href="" order="10" units-per-pixel="0.0054931640625000000000000">
+        </tileset>
+        <tileset href="" order="11" units-per-pixel="0.0027465820312500000000000">
+        </tileset>
+        <tileset href="" order="12" units-per-pixel="0.0013732910156250000000000">
+        </tileset>
+        <tileset href="" order="13" units-per-pixel="0.0006866455078125000000000">
+        </tileset>
+        <tileset href="" order="14" units-per-pixel="0.0003433227539062500000000">
+        </tileset>
+        <tileset href="" order="15" units-per-pixel="0.0001716613769531250000000">
+        </tileset>
+        <tileset href="" order="16" units-per-pixel="0.0000858306884765625000000">
+        </tileset>
+        <tileset href="" order="17" units-per-pixel="0.0000429153442382812500000">
+        </tileset>
+        <tileset href="" order="18" units-per-pixel="0.0000214576721191406250000">
+        </tileset>
+        <tileset href="" order="19" units-per-pixel="0.0000107288360595703125000">
+        </tileset>
+    </tilesets>
+</tilemap>
diff --git a/tests/cloudmade.earth b/tests/cloudmade.earth
index c0cdecb..8436b37 100644
--- a/tests/cloudmade.earth
+++ b/tests/cloudmade.earth
@@ -1,7 +1,7 @@
 <!-- 
 osgEarth Sample - TMS
 
-Show how to use CloudMade's TMS interface.
+Show how to use CloudMade's XYZ interface.
 -->
 
 <map name="Cloudmade" type="geocentric" version="2">
@@ -10,12 +10,9 @@ Show how to use CloudMade's TMS interface.
         <url>../data/world.tif</url>
     </image>
 
-   <image name="osm-cloudmade-35117" driver="tms">
-       <url>http://b.tile.cloudmade.com/f10ecb40ab2159639c5f2d4b9a273f1d/35117/256/</url>
+   <image name="osm-cloudmade-35117" driver="xyz">
+       <url>http://[abc].tile.cloudmade.com/f10ecb40ab2159639c5f2d4b9a273f1d/35117/256/{z}/{x}/{y}.png</url>
        <profile>global-mercator</profile>
-       <format>png</format>
-       <tile_size>256</tile_size>
-       <tms_type>google</tms_type>       
    </image> 
 
    <options>   
diff --git a/tests/clouds.earth b/tests/clouds.earth
deleted file mode 100644
index 8bf4cef..0000000
--- a/tests/clouds.earth
+++ /dev/null
@@ -1,31 +0,0 @@
-<!--
-osgEarth Sample
-
-This example demonstrates a floating cloud layer. Use this together with another .earth file,
-e.g.: osgviewer tiff.earth clouds.earth
--->
-
-<map name="Clouds" type="geocentric" version="2">     
-        
-    <options>
-        <!-- create an ellipsoid that's slightly larger than the earth -->
-        <profile>
-            <srs>+proj=latlong +a=6610000 +b=6600000</srs>
-        </profile>
-        <lighting>false</lighting>
-        <terrain>
-            <!-- don't want a terrain skirt on the clouds -->
-            <skirt_ratio>0</skirt_ratio>
-            <sample_ratio>0.5</sample_ratio>
-            <compositor>multipass</compositor>
-        </terrain>
-    </options>
-    
-    <!-- the OSG driver allows us to use non-geoferenced data -->
-    <image name="test" driver="osg">
-        <url>../data/clouds.jpg</url>
-        <profile>global-geodetic</profile>
-        <luminance_to_rgba>true</luminance_to_rgba>
-    </image>
-         
-</map>
diff --git a/tests/feature_custom_filters.earth b/tests/feature_custom_filters.earth
new file mode 100644
index 0000000..cc2f4f3
--- /dev/null
+++ b/tests/feature_custom_filters.earth
@@ -0,0 +1,48 @@
+<!--
+osgEarth Sample
+This example shows how you can use a custom FeatureFilter, even one that is defined in an Earth File!  Run this example with the osgearth_feature_filter example
+-->
+
+<map name="Feature Custom Filter Demo" type="geocentric" version="2">
+        
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+    
+    <model name="cities" driver="feature_geom">
+
+        <features name="cities" driver="ogr">
+            <url>../data/world.shp</url>
+			
+			<!--Define a ChangeAttributeFilter, which is defined in the osgearth_featurefilter example.  This will change the cntry_name of all countries to osgEarthLand.-->
+			<change_attribute key="cntry_name" value="osgEarthLand"/>
+        </features>
+
+        <styles>
+            <style type="text/css">              
+                cities {
+                   text-provider:  annotation;
+                   text-content:   [cntry_name];
+                   text-priority:  [pop_cntry];
+                   text-halo:      #3f3f7f;
+                   text-align:     center_center;
+                   text-declutter: true;
+                }     
+            </style>
+        </styles>
+        
+    </model>
+    
+    <options lighting="false"/>
+    
+    <external>
+        <decluttering>
+            <out_animation_time>  0.0  </out_animation_time>
+            <in_animation_time>   0.25 </in_animation_time>
+            <min_animation_scale> 0.45 </min_animation_scale>
+            <min_animation_alpha> 0.35 </min_animation_alpha>
+            <sort_by_priority>    true </sort_by_priority>
+        </decluttering>
+    </external>
+  
+</map>
diff --git a/tests/feature_extrude.earth b/tests/feature_extrude.earth
index 30e97d3..8d40d25 100644
--- a/tests/feature_extrude.earth
+++ b/tests/feature_extrude.earth
@@ -28,6 +28,7 @@ Footprint Extrusion using the "feature_geom" driver.
                     extrusion-flatten: true;
                     fill:              #ff7f2f;
                     altitude-clamping: terrain;
+                    altitude-resolution: 0.001;
                 }            
             </style>
         </styles>   
@@ -41,9 +42,6 @@ Footprint Extrusion using the "feature_geom" driver.
         <terrain>
             <sample_ratio>0.2</sample_ratio>
         </terrain>
-        <cache type="tms">
-            <path>osgearth_cache</path>
-        </cache>
     </options> 
     
     <image name="ReadyMap.org - Imagery" driver="tms">
diff --git a/tests/feature_gpx.earth b/tests/feature_gpx.earth
new file mode 100644
index 0000000..3fb0c25
--- /dev/null
+++ b/tests/feature_gpx.earth
@@ -0,0 +1,42 @@
+<!--
+osgEarth Sample
+
+This one demonstrates how to read feature data from a GPX file, or any other file with multiple layers.
+
+Note:  You must have GDAL built with Expat support to read GPX files
+-->
+
+<map name="Feature GPX Demo" type="geocentric" version="2">
+    
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+    
+    <model name="fells loop" driver="feature_geom">
+
+        <!-- Configure the OGR feature driver to read the gpx file -->
+        <features name="routes" driver="ogr">
+            <url>../data/fells_loop.gpx</url>
+			<!-- Specify the layer index-->
+			<layer>1</layer>
+			
+        </features>
+              
+        <!-- Appearance details -->
+        <styles>
+            <style type="text/css">
+                routes {
+                   stroke: #ffff00;                   
+                }                    
+            </style>
+        </styles>
+		
+		<lighting>false</lighting>
+        
+    </model>
+	
+	<external>
+        <viewpoint name="Fells Loop" heading="0" height="0" lat="42.43095" long="-71.1076" pitch="-90" range="5000"/>
+    </external>
+  
+</map>
diff --git a/tests/feature_labels.earth b/tests/feature_labels.earth
index cac673e..4e40b16 100644
--- a/tests/feature_labels.earth
+++ b/tests/feature_labels.earth
@@ -4,9 +4,7 @@ This shows how to label point features with an attribute.
 -->
 
 <map name="Feature Geometry Demo" type="geocentric" version="2">
-    
-    <options lighting="false"/>
-    
+        
     <image name="world" driver="gdal">
         <url>../data/world.tif</url>
     </image>
@@ -20,18 +18,28 @@ This shows how to label point features with an attribute.
         <styles>
             <style type="text/css">              
                 cities {
-                   text-provider: overlay;
-                   text-content:  [cntry_name];
-                   text-priority: [pop_cntry];
-                   text-halo:     #3f3f7f;
-                   text-font:     arial.ttf;
-                   text-size:     16;
-                   text-remove-duplicate-labels: true;
-                   altitude-clamping: terrain;
+                   text-provider:  annotation;
+                   text-content:   [cntry_name];
+                   text-priority:  [pop_cntry];
+                   text-halo:      #3f3f7f;
+                   text-align:     center_center;
+                   text-declutter: true;
                 }     
             </style>
         </styles>
         
     </model>
+    
+    <options lighting="false"/>
+    
+    <external>
+        <decluttering>
+            <out_animation_time>  0.0  </out_animation_time>
+            <in_animation_time>   0.25 </in_animation_time>
+            <min_animation_scale> 0.45 </min_animation_scale>
+            <min_animation_alpha> 0.35 </min_animation_alpha>
+            <sort_by_priority>    true </sort_by_priority>
+        </decluttering>
+    </external>
   
 </map>
diff --git a/tests/feature_model_scatter.earth b/tests/feature_model_scatter.earth
index 5da290a..b62cd91 100644
--- a/tests/feature_model_scatter.earth
+++ b/tests/feature_model_scatter.earth
@@ -23,11 +23,13 @@ is randomized, but it is randomized exactly the same way each time.
             <build_spatial_index>true</build_spatial_index>
         </features>
         
-        <!-- Clustering is a method of combining geometry in the scene graph to
-             improve performance. It is recommended when dealing with large numbers
-             of features. -->
+        <!-- Instancing enables GL's "DrawInstanced" support. -->
              
-        <clustering>true</clustering>
+        <instancing>true</instancing>
+        
+        <!-- Disables feature indexing, since the trees are not mapped 1-to-1 to
+             real features anyway. -->
+        <feature_indexing>false</feature_indexing>
         
         <!-- The stylesheet will describe how to render the feature data. In this case
              we indicate model substitution with density-based scattering. The "density"
@@ -35,66 +37,75 @@ is randomized, but it is randomized exactly the same way each time.
              
         <layout>
             <crop_features>true</crop_features>
-            <level max_range="100000" min_range="0">
-                <selector class="parks-outline"/>
-            </level>
-            <level max_range="10000">
-                <selector class="parks-1"/>
-            </level>            
-            <level max_range="5000">
-                <selector class="parks-2"/>
-            </level>       
-            <level max_range="1500">
-                <selector class="parks-3"/>
-            </level>
+            <level max_range="7000" style="parks-1"/>
+            <level max_range="3000" style="parks-2"/>
+            <level max_range="1000" style="parks-3"/>
         </layout>
              
         <styles>
             <style type="text/css">
                 parks-1 {
-                   marker:              "../data/tree.ive";
-                   marker-placement:    random;
-                   marker-density:      1000;
-                   marker-scale:        2;
+                   model:               "../data/tree.ive";
+                   model-placement:     random;
+                   model-density:       1000;
+                   model-scale:         1.5;
                    altitude-clamping:   terrain;
+                   altitude-resolution: 0.001;
                 }            
                 parks-2 {
-                   marker:              "../data/tree.ive";
-                   marker-placement:    random;
-                   marker-density:      1000;
-                   marker-scale:        2;
+                   model:               "../data/tree.ive";
+                   model-placement:     random;
+                   model-density:       2500;
+                   model-scale:         2;
+                   model-random-seed:   1;
                    altitude-clamping:   terrain;
-                   marker-random-seed:  1;
+                   altitude-resolution: 0.001;
                 }              
                 parks-3 {
-                   marker:              "../data/tree.ive";
-                   marker-placement:    random;
-                   marker-density:      1000;
-                   marker-scale:        2;
+                   model:               "../data/tree.ive";
+                   model-placement:     random;
+                   model-density:       5000;
+                   model-scale:         2.5;
+                   model-random-seed:   2;
                    altitude-clamping:   terrain;
-                   marker-random-seed:  2;
-                }           
-                parks-outline {
-                   stroke:              #00ff00ff;
-                   altitude-offset:     25;
-                   altitide-clamping:   terrain;
-                }
-                
+                   altitude-resolution: 0.001;
+                }                
             </style>
         </styles>        
     </model>
     
     
+    <model name="parks" driver="feature_geom" overlay="true">
+        <features name="parks" driver="ogr">
+            <url>../data/parks.shp</url>
+            <build_spatial_index>false</build_spatial_index>
+        </features>
+        <styles>
+            <style type="text/css">      
+                default {
+                   fill:                #00ff007f;
+                   stroke:              #ffff00ff;
+                   altitide-clamping:   terrain;
+                }                
+            </style>
+        </styles>
+    </model>
+    
+    
     <options>
         <lighting>false</lighting>
-        <cache type="tms">
+        <cache type="filesystem">
             <path>osgearth_cache</path>
         </cache>
     </options> 
     
-    <image name="ReadyMap.org - Imagery" driver="tms">
-        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
+    <image name="mapquest_open_aerial" driver="xyz">
+        <url>http://oatile[1234].mqcdn.com/tiles/1.0.0/sat/{z}/{x}/{y}.jpg</url>
+        <profile>spherical-mercator</profile>
+        <cache_policy usage="no_cache"/>
+        <nodata_image>http://oatile3.mqcdn.com/tiles/1.0.0/sat/18/49761/99026.jpg</nodata_image>
     </image>
+    
     <elevation name="ReadyMap.org - Elevation" driver="tms">
         <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
     </elevation>
diff --git a/tests/feature_models.earth b/tests/feature_models.earth
index 008347f..242badc 100644
--- a/tests/feature_models.earth
+++ b/tests/feature_models.earth
@@ -20,26 +20,20 @@ Shows how to use point model substitution with a model encoded in the shapefile.
         <styles>
             <style type="text/css">
                 points {
-                   marker:              [model];
-                   marker-scale:        200;    
+                   model:               [model];
+                   model-scale:         200;    
                    altitude-clamping:   terrain;
                    altitude-offset:     500;				   
                 }                                            
             </style>
         </styles>   
-	<clustering>false</clustering>	
-    <lighting>false</lighting>	
+        
     </model>
     
     
     <options>
-        <lighting>false</lighting>
-        <cache type="tms">
-            <path>osgearth_cache</path>
-        </cache>
-		
 		<osg_file_paths>
-		  <url>../data</url>
+		    <url>../data</url>
 		</osg_file_paths>
     </options> 
     
diff --git a/tests/feature_rasterize.earth b/tests/feature_rasterize.earth
index 33fc3df..3a833a6 100644
--- a/tests/feature_rasterize.earth
+++ b/tests/feature_rasterize.earth
@@ -5,14 +5,7 @@ Demonstrates use of the "agglite" feature rasterization driver.
 
 <map name="Geometry Rasterizer Demo" type="round" version="2">
   
-    <options>
-        <lighting>false</lighting>
-        <terrain>
-            <lod_blending>true</lod_blending>
-            <compositor>texture_array</compositor>
-            <!-- <loading_policy mode="sequential"/> -->
-        </terrain>
-    </options>
+    <options lighting="false"/>
 
     <image name="world" driver="gdal">
         <url>../data/world.tif</url>
@@ -31,6 +24,8 @@ Demonstrates use of the "agglite" feature rasterization driver.
                 
         <!-- This means the "stroke-width" in the style is (approximately) in pixels. -->
         <relative_line_size>true</relative_line_size>
+        
+        <lod_blending>true</lod_blending>
                 
         <styles>
             <style type="text/css">
diff --git a/tests/feature_scripted_styling.earth b/tests/feature_scripted_styling.earth
new file mode 100644
index 0000000..e78b9cd
--- /dev/null
+++ b/tests/feature_scripted_styling.earth
@@ -0,0 +1,60 @@
+<!--
+osgEarth Sample
+
+This one demonstrates how to generate inline styles using JavaScript 
+and a custom selector. 
+-->
+
+<map name="Inline styling" type="geocentric" version="2">
+    
+    <options>
+        <lighting>false</lighting>
+        <overlay_blending>false</overlay_blending>
+    </options>
+
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+    
+    <model name="countries" driver="feature_geom" overlay="true">
+                          
+        <features name="states" driver="ogr">
+            <url>../data/world.shp</url>
+            <buffer distance="-0.05"/>
+        </features>
+        
+        <styles>            
+            <script language="javascript">
+            <![CDATA[
+                var g_styles = [];
+                
+                // convert a number to a 2-char hex string
+                function hex(n) {
+                     n = parseInt(n,10);
+                     return "0123456789ABCDEF".charAt((n-n%16)/16) + "0123456789ABCDEF".charAt(n%16);
+                }
+                
+                // generates a collection of styles with random color fill values
+                function initialize() {                
+                    for( var i=0; i<10; ++i ) {
+                        var r = Math.floor(Math.random()*255);
+                        var g = Math.floor(Math.random()*255);
+                        var b = Math.floor(Math.random()*255);
+                        g_styles.push( "{fill:#"+hex(r)+hex(g)+hex(b)+"6f;}" );
+                    }
+                }
+                initialize();
+                
+                // selects a color at random
+                function randomColor() {
+                    var n = parseInt(Math.floor(Math.random()*10));
+                    return g_styles[n];
+                }
+            ]]>
+            </script>
+            
+            <selector style_expr="randomColor()"/>
+        </styles>
+        
+    </model>
+</map>
diff --git a/tests/feature_scripted_styling_2.earth b/tests/feature_scripted_styling_2.earth
new file mode 100644
index 0000000..69e428e
--- /dev/null
+++ b/tests/feature_scripted_styling_2.earth
@@ -0,0 +1,53 @@
+<!--
+osgEarth Sample
+
+This one demonstrates how to read feature data from a shapefile and "drape" it
+on the map using the overlay technique.
+-->
+
+<map name="Feature Overlay Demo" type="geocentric" version="2">
+    
+    <options>
+        <lighting>false</lighting>
+        <overlay_blending>false</overlay_blending>
+    </options>
+
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+    
+    <model name="countries" driver="feature_geom" overlay="true">
+                          
+        <features name="states" driver="ogr">
+            <url>../data/world.shp</url>
+            <buffer distance="-0.05"/>
+        </features>
+        
+        <styles>        
+            <style type="text/css">
+                p1 { fill: #ffff8066; }       
+                p2 { fill: #80ffff66; }   
+                p3 { fill: #ff80ff66; }       
+                p4 { fill: #ff808066; }     
+                p5 { fill: #80ff8066; }                                      
+            </style>
+            
+            <script language="javascript">
+            <![CDATA[
+                function getStyleClass()
+                {
+                    var pop = parseInt(feature.attributes['pop_cntry']);
+                    if      ( pop <= 14045470 )  return "p1";
+                    else if ( pop <= 43410900 )  return "p2";
+                    else if ( pop <= 97228750 )  return "p3";
+                    else if ( pop <= 258833000 ) return "p4";
+                    else                         return "p5";
+                }
+            ]]>
+            </script>
+            
+            <selector class_expr="getStyleClass()"/>
+        </styles>
+        
+    </model>
+</map>
diff --git a/tests/feature_scripting.earth b/tests/feature_scripting.earth
new file mode 100644
index 0000000..4ec54b8
--- /dev/null
+++ b/tests/feature_scripting.earth
@@ -0,0 +1,81 @@
+<!--
+osgEarth Sample - Feature Scripting
+
+This example demonstrates the use of scripting to style features.
+-->
+
+<map name="Feature Geometry Demo" type="geocentric" version="2">
+    
+    <options lighting="false"/>
+    
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+    
+    <model name="cities" driver="feature_geom">
+
+        <features name="cities" driver="ogr">
+            <url>../data/world.shp</url>
+        </features>
+
+        <styles>
+            <script language="javascript">
+
+                  /* A global variable within this script block */
+                  var prefix = "";
+
+                  function initialize()
+                  {
+                    prefix = "This is ";
+                  }
+
+                  function getName()
+                  {
+                    /* Two objects, feature and context, are globally available in a script.
+                     * feature is the current osgEarth::Features::Feature being styled and
+                     * context is the osgEarth::Features::FilterContext.
+                     *
+                     * See the osgEarth wiki for full documentation.
+                     */
+
+                    if (feature.attributes["code"] == "US")
+                    {
+                      var extent = new GeoExtent(context.profile.srs, feature.geometry.bounds);
+                      if (extent != undefined)
+                      {
+                        /* Check if the extent contains the city of Hilo */
+                        if (extent.contains(-155.07, 19.72))
+                          return prefix + "Hawaii";
+
+                        /* Two extents representing Alaska's bounds to deal with hemisphere crossover */
+                        var alaskaExtent1 = new GeoExtent(context.profile.srs, -180.0, 49.7, -128.3, 72.5);
+                        var alaskaExtent2 = new GeoExtent(context.profile.srs, 171.0, 49.7, 180.0, 72.5);
+                        if (extent.intersects(alaskaExtent1) || extent.intersects(alaskaExtent2))
+                          return prefix + "Alaska";
+                      }
+                    }
+
+                    return prefix + feature.attributes["cntry_name"];
+                  }
+
+                  /* This call to initialize will execute when the script is initially processed */
+                  initialize();
+
+            </script>
+
+            <style type="text/css">              
+                cities {
+                   text-content:  getName() + " (" + [code] + ")";
+                   text-priority: [pop_cntry];
+                   text-halo:     #3f3f7f;
+                   text-font:     arial.ttf;
+                   text-size:     16;
+                   text-remove-duplicate-labels: true;
+                   altitude-clamping: terrain;
+                }     
+            </style>
+        </styles>
+        
+    </model>
+  
+</map>
diff --git a/tests/feature_tfs.earth b/tests/feature_tfs.earth
new file mode 100644
index 0000000..a926dc1
--- /dev/null
+++ b/tests/feature_tfs.earth
@@ -0,0 +1,45 @@
+<!--
+osgEarth Sample - TFS
+
+This example shows how to use the TFS driver.
+-->
+<map name="TFS" type="geocentric" version="2">
+
+    <model name="buildings" driver="feature_geom">
+    
+        <features name="buildings" driver="tfs">		                
+			<url>http://readymap.org/readymap/features/tfs/4/</url>
+            <format>json</format>            
+        </features>
+        
+        <layout>        
+            <tile_size_factor>5.0</tile_size_factor>
+        </layout>
+        
+        <styles>                
+            <style type="text/css">
+                buildings {
+                    extrusion-height:  15;
+                    extrusion-flatten: true;
+                    fill:              #ff7f2f;
+                    altitude-clamping: terrain;
+                }            
+            </style>
+        </styles>  
+        
+        <lighting>true</lighting>
+    </model>
+                    
+ 
+
+    <image name="esri imagery" driver="arcgis">
+        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
+        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
+    </image>
+    
+    <external>
+        <sky hours="20.0"/>
+        <viewpoint name="Mexico Buildings" height="0" lat="19.42" long="-99.163" pitch="-89" range="5000"/>
+    </external>
+  
+</map>
diff --git a/tests/feature_tfs_scripting.earth b/tests/feature_tfs_scripting.earth
new file mode 100644
index 0000000..0f10998
--- /dev/null
+++ b/tests/feature_tfs_scripting.earth
@@ -0,0 +1,73 @@
+<!--
+osgEarth Sample - TFS
+
+This example shows how to use the TFS driver.
+-->
+<map name="TFS" type="geocentric" version="2">
+
+    <model name="buildings" driver="feature_geom">
+    
+        <features name="buildings" driver="tfs">		                
+			<url>http://readymap.org/readymap/features/tfs/4/</url>
+            <format>json</format>            
+        </features>
+        
+        <layout>        
+            <tile_size_factor>5.0</tile_size_factor>
+        </layout>
+        
+        <styles>                
+            <style type="text/css">
+                b1 {
+                    extrusion-height:  15;
+                    extrusion-flatten: true;
+                    fill:              #ff7f2f;
+                    altitude-clamping: terrain;
+                    altitude-resolution: 0.1;
+                }
+                b2 {
+                    extrusion-height:  30;
+                    extrusion-flatten: true;
+                    fill:              #2f7fff;
+                    altitude-clamping: terrain;
+                    altitude-resolution: 0.1;
+                }
+                b3 {
+                    extrusion-height:  45;
+                    extrusion-flatten: true;
+                    fill:              #ff2f7f;
+                    altitude-clamping: terrain;
+                    altitude-resolution: 0.1;
+                }
+            </style>
+            
+            <selector name="default" style_expr="selectStyle()"/>
+            
+            <script language="javascript">
+            <![CDATA[
+                rotator = 0;
+                function selectStyle() {
+                    rotator = (rotator+1)%3;
+                    if      (rotator==0) return "b1";
+                    else if (rotator==1) return "b2";
+                    else                 return "b3";
+                }
+            ]]>
+            </script>
+        </styles>  
+        
+        <lighting>true</lighting>
+    </model>
+                    
+ 
+    <image name="mapquest_osm" driver="xyz">
+        <url>http://otile[1234].mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg</url>
+        <profile>global-mercator</profile>
+    </image>
+    
+    <external>
+        <sky hours="20.0"/>
+        <viewpoint name="Mexico Buildings" height="0" lat="19.42" long="-99.163" pitch="-89" range="5000"/>
+    </external>
+  
+</map>
diff --git a/tests/feature_wfs.earth b/tests/feature_wfs.earth
index 83cbf80..ffc57e9 100644
--- a/tests/feature_wfs.earth
+++ b/tests/feature_wfs.earth
@@ -19,15 +19,13 @@ This one demonstrates how to read feature data from a WFS server
             <typename>states</typename>
             <outputformat>json</outputformat>
         </features>
-        
-        <geometry_type>line</geometry_type>
                   
         <styles>        
             <style type="text/css">
                 states {
-                   stroke: #ffff00;
-                   stroke-opacity: 1.0;
-                   stroke-width: 3.0;
+                   stroke:          #ffff00;
+                   stroke-opacity:  1.0;
+                   stroke-width:    3.0;
                 }                       
             </style>                   
             
diff --git a/tests/gdal_tiff.earth b/tests/gdal_tiff.earth
index 81a6daa..0613eb0 100644
--- a/tests/gdal_tiff.earth
+++ b/tests/gdal_tiff.earth
@@ -4,8 +4,9 @@ Demonstrates the simplest possible use of the GDAL driver to load a GeoTIFF imag
 -->
 
 <map version="2">
-    <image driver="gdal" name="world-tiff">
+    <image driver="gdal" name="world-tiff" cache_enabled="false">
         <url>../data/world.tif</url>
+        <caching_policy usage="no_cache"/>
     </image>
     
     <options lighting="false"/>
diff --git a/tests/graticule.earth b/tests/graticule.earth
deleted file mode 100644
index bdd3052..0000000
--- a/tests/graticule.earth
+++ /dev/null
@@ -1,80 +0,0 @@
-<!--
-osgEarth Sample
-
-Combines a model overlay with inline geometry to display a map 10 degree graticule.
--->
-
-<map name="Graticule" type="geocentric" version="2">
-
-    <options>
-        <lighting>false</lighting>
-    </options>
-    
-    <image name="world" driver="gdal">
-        <url>../data/world.tif</url>
-    </image>
-    
-    <model name="graticule 10deg" driver="feature_geom" overlay="true">
-        
-        <!-- The maximum angle between verts - limits the tessellation granularity. -->
-        <max_granularity>2.5</max_granularity>
-        
-        <!-- Appearance details -->
-        <styles>
-            <style type="text/css">
-                default {
-                   stroke: #ffffff;
-                   stroke-opacity: 0.5;
-                   stroke-width: 3.5;
-                }                    
-            </style>
-        </styles>
-
-	    <!-- Define an inline geometry in WKT format.
-		     See: http://en.wikipedia.org/wiki/Well-known_text#Geometric_objects -->
-	    <features driver="ogr">
-			<geometry>
-                MULTILINESTRING(
-                    (-180   0, -90   0, 0   0, 90   0, 180   0),
-                    (-180  10, -90  10, 0  10, 90  10, 180  10), 
-                    (-180  20, -90  20, 0  20, 90  20, 180  20), 
-                    (-180  30, -90  30, 0  30, 90  30, 180  30), 
-                    (-180  40, -90  40, 0  40, 90  40, 180  40), 
-                    (-180  50, -90  50, 0  50, 90  50, 180  50), 
-                    (-180  60, -90  60, 0  60, 90  60, 180  60), 
-                    (-180  70, -90  70, 0  70, 90  70, 180  70), 
-                    (-180  80, -90  80, 0  80, 90  80, 180  80), 
-                    (-180 -10, -90 -10, 0 -10, 90 -10, 180 -10), 
-                    (-180 -20, -90 -20, 0 -20, 90 -20, 180 -20), 
-                    (-180 -30, -90 -30, 0 -30, 90 -30, 180 -30), 
-                    (-180 -40, -90 -40, 0 -40, 90 -40, 180 -40), 
-                    (-180 -50, -90 -50, 0 -50, 90 -50, 180 -50), 
-                    (-180 -60, -90 -60, 0 -60, 90 -60, 180 -60), 
-                    (-180 -70, -90 -70, 0 -70, 90 -70, 180 -70), 
-                    (-180 -80, -90 -80, 0 -80, 90 -80, 180 -80),
-                    
-                    (   0  80,   0 -80), (  180  80,  180 -80),
-                    (  10  80,  10 -80), (  -10  80,  -10 -80),
-                    (  20  80,  20 -80), (  -20  80,  -20 -80),
-                    (  30  80,  30 -80), (  -30  80,  -30 -80),
-                    (  40  80,  40 -80), (  -40  80,  -40 -80),
-                    (  50  80,  50 -80), (  -50  80,  -50 -80),
-                    (  60  80,  60 -80), (  -60  80,  -60 -80),
-                    (  70  80,  70 -80), (  -70  80,  -70 -80),
-                    (  80  80,  80 -80), (  -80  80,  -80 -80),
-                    (  90  80,  90 -80), (  -90  80,  -90 -80),
-                    ( 100  80, 100 -80), ( -100  80, -100 -80),
-                    ( 110  80, 110 -80), ( -110  80, -110 -80),
-                    ( 120  80, 120 -80), ( -120  80, -120 -80),
-                    ( 130  80, 130 -80), ( -130  80, -130 -80),
-                    ( 140  80, 140 -80), ( -140  80, -140 -80),
-                    ( 150  80, 150 -80), ( -150  80, -150 -80),
-                    ( 160  80, 160 -80), ( -160  80, -160 -80),
-                    ( 170  80, 170 -80), ( -170  80, -170 -80)
-                )                
-			</geometry>
-		</features>
-        
-    </model>
-  
-</map>
diff --git a/tests/hires-inset.earth b/tests/hires-inset.earth
index 1631ef1..046b063 100644
--- a/tests/hires-inset.earth
+++ b/tests/hires-inset.earth
@@ -9,12 +9,14 @@ Look for hi-res insets over the cities of Boston and New York.
 
 <map name="hi-res inset" type="geocentric" version="2">
 
-    <options lighting="false"/>
-     
-    <image name="pelican nasa blue marble" driver="tms">
-        <url>http://demo.pelicanmapping.com/rmweb/data/bluemarble-tms/tms.xml</url>
-    </image>
+    <options lighting="false">
+        <cache_policy usage="no_cache"/>        
+    </options>
     
+    <image name="world" driver="gdal">
+        <url>../data/world.tif</url>
+    </image>
+
     <image name="hires insets" driver="composite">
     
         <image name="boston_inset" driver="gdal">
diff --git a/tests/mapquest_open_aerial.earth b/tests/mapquest_open_aerial.earth
new file mode 100644
index 0000000..2fb09f7
--- /dev/null
+++ b/tests/mapquest_open_aerial.earth
@@ -0,0 +1,28 @@
+<!-- 
+MapQuest - Open Aerial Map
+LOD 1-12 worldwide; 12+ US-only.
+http://developer.mapquest.com/web/products/open/map
+
+NOTE: You are responsible for abiding by the provider's terms of service:
+http://developer.mapquest.com/web/info/terms-of-use
+
+TIP: set your OSG_NUM_HTTP_DATABASE_THREADS to 4 or more!
+-->
+
+<map name="MapQuest Open Aerial" type="geocentric" version="2">
+ 
+    <image name="mapquest_open_aerial" driver="xyz">
+        <url>http://oatile[1234].mqcdn.com/tiles/1.0.0/sat/{z}/{x}/{y}.jpg</url>
+        <profile>spherical-mercator</profile>
+        <cache_policy usage="no_cache"/>
+        <nodata_image>http://oatile3.mqcdn.com/tiles/1.0.0/sat/13/636/6210.jpg</nodata_image>
+    </image>
+    
+    <options>
+        <lighting>false</lighting>
+        <terrain>
+            <min_tile_range_factor>9</min_tile_range_factor>
+        </terrain>
+    </options>
+    
+</map>
diff --git a/tests/mapquest_osm.earth b/tests/mapquest_osm.earth
new file mode 100644
index 0000000..6c70d7e
--- /dev/null
+++ b/tests/mapquest_osm.earth
@@ -0,0 +1,26 @@
+<!-- 
+MapQuest - OpenStreetMap
+http://developer.mapquest.com/web/products/open/map
+
+NOTE: You are responsible for abiding by the provider's terms of service:
+http://developer.mapquest.com/web/info/terms-of-use
+
+TIP: set your OSG_NUM_HTTP_DATABASE_THREADS to 4 or more!
+-->
+
+<map name="MapQuest OpenStreetMap" type="geocentric" version="2">
+ 
+    <image name="mapquest_osm" driver="xyz">
+        <url>http://otile[1234].mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg</url>
+        <profile>global-mercator</profile>
+    </image>
+    
+    <options>
+        <lighting>false</lighting>
+        <cache_policy usage="no_cache"/>
+        <terrain>
+            <min_tile_range_factor>9</min_tile_range_factor>
+        </terrain>
+    </options>
+    
+</map>
diff --git a/tests/mercator_to_plate_carre.earth b/tests/mercator_to_plate_carre.earth
index 9cb0fab..6617c55 100644
--- a/tests/mercator_to_plate_carre.earth
+++ b/tests/mercator_to_plate_carre.earth
@@ -8,17 +8,11 @@ Plate Carre (y=lat, x=lon) by applying the <profile> tag.
     <options>
         <profile>global-geodetic</profile>    
         <lighting>false</lighting>
-        <terrain>
-            <loading_policy mode="preemptive"/>
-        </terrain>
     </options>
     
-    <image name="OSM on Mapnik" driver="tms">
-        <url>http://tile.openstreetmap.org/</url>
+    <image name="mapquest_osm" driver="xyz" cache_enabled="false">
+        <url>http://otile[1234].mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg</url>
         <profile>global-mercator</profile>
-        <format>png</format>
-        <tile_size>256</tile_size>
-        <tms_type>google</tms_type>
     </image>
     
     
diff --git a/tests/mgrs.earth b/tests/mgrs.earth
deleted file mode 100644
index b6f0018..0000000
--- a/tests/mgrs.earth
+++ /dev/null
@@ -1,108 +0,0 @@
-<!--
-osgEarth Sample
-
-Combines a model overlay with inline geometry to display a map 10 degree graticule.
--->
-
-<map name="Graticule" type="geocentric" version="2">
-
-    <options>
-        <lighting>false</lighting>
-        <cache type="tms">
-            <path>osgearth_cache</path>
-        </cache>
-    </options>
-    
-    <image name="ReadyMap.org - Imagery" driver="tms" cache_only="true">
-        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
-    </image>
-    
-    <model name="MGRS GZD Overlay" driver="feature_geom" overlay="true">
-        
-        <!-- The maximum angle between verts - limits the tessellation granularity. -->
-        <max_granularity>2.5</max_granularity>
-        
-        <!-- Appearance details -->
-        <styles>
-            <style type="text/css">
-                default {
-                   stroke: #ffffff;
-                   stroke-opacity: 0.5;
-                   stroke-width: 3.5;
-                }                    
-            </style>
-        </styles>
-
-	    <!-- Line set that forms the MGRS GZD layout -->
-	    <features driver="ogr">
-			<geometry>
-                MULTILINESTRING(
-                    (-180   0, -90   0, 0   0, 90   0, 180   0),
-                    (-180   8, -90   8, 0   8, 90   8, 180   8), 
-                    (-180  16, -90  16, 0  16, 90  16, 180  16), 
-                    (-180  24, -90  24, 0  24, 90  24, 180  24), 
-                    (-180  32, -90  32, 0  32, 90  32, 180  32), 
-                    (-180  40, -90  40, 0  40, 90  40, 180  40), 
-                    (-180  48, -90  48, 0  48, 90  48, 180  48), 
-                    (-180  56, -90  56, 0  56, 90  56, 180  56), 
-                    (-180  64, -90  64, 0  64, 90  64, 180  64), 
-                    (-180  72, -90  72, 0  72, 90  72, 180  72), 
-                    (-180  84, -90  84, 0  84, 90  84, 180  84),
-                    
-                    (-180   0, -90    0, 0   0, 90     0, 180   0),
-                    (-180  -8, -90   -8, 0   -8, 90   -8, 180   -8), 
-                    (-180 -16, -90  -16, 0  -16, 90  -16, 180  -16), 
-                    (-180 -24, -90  -24, 0  -24, 90  -24, 180  -24), 
-                    (-180 -32, -90  -32, 0  -32, 90  -32, 180  -32), 
-                    (-180 -40, -90  -40, 0  -40, 90  -40, 180  -40), 
-                    (-180 -48, -90  -48, 0  -48, 90  -48, 180  -48), 
-                    (-180 -56, -90  -56, 0  -56, 90  -56, 180  -56), 
-                    (-180 -64, -90  -64, 0  -64, 90  -64, 180  -64), 
-                    (-180 -72, -90  -72, 0  -72, 90  -72, 180  -72), 
-                    (-180 -80, -90  -80, 0  -80, 90  -80, 180  -80),
-                    
-                    (   0  84,   0 -80),
-                    (   6  84,   6 -80), (   -6  84,   -6 -80),
-                    (  12  84,  12 -80), (  -12  84,  -12 -80),
-                    (  18  84,  18 -80), (  -18  84,  -18 -80),
-                    (  24  84,  24 -80), (  -24  84,  -24 -80),
-                    (  30  84,  30 -80), (  -30  84,  -30 -80),
-                    (  36  84,  36 -80), (  -36  84,  -36 -80),
-                    (  42  84,  42 -80), (  -42  84,  -42 -80),
-                    (  48  84,  48 -80), (  -48  84,  -48 -80),
-                    (  54  84,  54 -80), (  -54  84,  -54 -80),
-                    (  60  84,  60 -80), (  -60  84,  -60 -80),
-                    (  66  84,  66 -80), (  -66  84,  -66 -80),
-                    (  72  84,  72 -80), (  -72  84,  -72 -80),
-                    (  78  84,  78 -80), (  -78  84,  -78 -80),
-                    (  84  84,  84 -80), (  -84  84,  -84 -80),
-                    (  90  84,  90 -80), (  -90  84,  -90 -80),
-                    
-                    (  96  84,  96 -80), (  -96  84,  -96 -80),
-                    ( 102  84, 102 -80), ( -102  84, -102 -80),
-                    ( 108  84, 108 -80), ( -108  84, -108 -80),
-                    ( 114  84, 114 -80), ( -114  84, -114 -80),
-                    ( 120  84, 120 -80), ( -120  84, -120 -80),
-                    ( 126  84, 126 -80), ( -126  84, -126 -80),
-                    ( 132  84, 132 -80), ( -132  84, -132 -80),
-                    ( 138  84, 138 -80), ( -138  84, -138 -80),
-                    ( 144  84, 144 -80), ( -144  84, -144 -80),
-                    ( 150  84, 150 -80), ( -150  84, -150 -80),
-                    ( 156  84, 156 -80), ( -156  84, -156 -80),
-                    ( 162  84, 162 -80), ( -162  84, -162 -80),
-                    ( 168  84, 168 -80), ( -168  84, -168 -80),
-                    ( 174  84, 174 -80), ( -174  84, -174 -80),
-                    ( 180  84, 180 -80),
-
-                    (   0  84,   0  90), (  180  84,  180  90),
-                    (  -90 84,  -90 90), (   90  84,  90   90),
-                    
-                    (   0 -80,   0 -90), (  180 -80,  180 -90),
-                    ( -90 -80, -90 -90), (   90 -80,   90 -90)
-                )                
-			</geometry>
-		</features>
-        
-    </model>
-  
-</map>
diff --git a/tests/min_max_range.earth b/tests/min_max_range.earth
new file mode 100644
index 0000000..10e1650
--- /dev/null
+++ b/tests/min_max_range.earth
@@ -0,0 +1,30 @@
+<!-- 
+Demonstrates the "min_range" and "max_range" properties.
+
+As you zoom in, you will see the aerial imagery transition into
+a street map. Zoom in further and see it transition back to aerial.
+
+TIP: set your OSG_NUM_HTTP_DATABASE_THREADS to 4 or more!
+-->
+
+<map name="MapQuest Open Aerial" type="geocentric" version="2">
+ 
+    <image name="mapquest_open_aerial" driver="xyz">
+        <url>http://oatile[1234].mqcdn.com/naip/{z}/{x}/{y}.jpg</url>
+        <profile>spherical-mercator</profile>
+    </image>
+    
+    <image name="mapquest_osm" driver="xyz" max_range="5e6" min_range="1e6">
+        <url>http://otile[1234].mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpg</url>
+        <profile>global-mercator</profile>
+    </image>
+    
+    <options>
+        <lighting>false</lighting>
+        <cache_policy usage="no_cache"/>
+        <terrain>
+            <min_tile_range_factor>9</min_tile_range_factor>
+        </terrain>
+    </options>
+    
+</map>
diff --git a/tests/mixed_profiles.earth b/tests/mixed_profiles.earth
deleted file mode 100644
index 3e84511..0000000
--- a/tests/mixed_profiles.earth
+++ /dev/null
@@ -1,17 +0,0 @@
-<!--
-osgEarth Sample
-
-This shows how to mix data from a Mercator and a Geodetic source on the same
-geodetic globe.
--->
-<map name="mercator data on a geodetic globe" type="round" version="2">
-   
-    <image name="mercator-imagery" driver="yahoo">
-        <dataset>satellite</dataset>
-    </image>
-    
-    <image name="geodetic-roads" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/Reference/ESRI_Transportation_World_2D/MapServer</url>
-    </image>
-    
-</map>
diff --git a/tests/nodata.earth b/tests/nodata.earth
new file mode 100644
index 0000000..c831791
--- /dev/null
+++ b/tests/nodata.earth
@@ -0,0 +1,18 @@
+<!-- 
+osgEarth Sample - GDAL Driver NoData
+Demonstrates the use of a file with nodata.  The white circle is a GeoTiff which has 0 marked as NoData so the black borders in the original imagery should show up as transparent.
+-->
+
+<map version="2">
+    <image driver="gdal" name="world-tiff" cache_enabled="false">
+        <url>../data/world.tif</url>
+        <caching_policy usage="no_cache"/>
+    </image>
+	
+	<image driver="gdal" name="nodata-tiff" cache_enabled="false">
+        <url>../data/nodata.tif</url>
+        <caching_policy usage="no_cache"/>
+    </image>
+    
+    <options lighting="false"/>
+</map>
diff --git a/tests/ocean.earth b/tests/ocean.earth
index 1236385..6509a01 100644
--- a/tests/ocean.earth
+++ b/tests/ocean.earth
@@ -1,28 +1,47 @@
 <!--
-osgEarth Sample
-Tests the use of an oceanmask, use with the osgearth_ocean example
+osgEarth Sample - ReadyMap.ORG Server - http://readymap.org
+
+ReadyMap.ORG provides free global base map data for osgEarth developers!
+This tiled, worldwide dataset of imagery, elevation, and street map data
+is a great base map that provides global context for your own local datasets.
+It works "out of the box" with osgEarth applications.
+
+**** NOTICE ****
+YOU ARE RESPONSIBLE for abiding by the TERMS AND CONDITIONS outlined at:
+http://readymap.org
+
 -->
+<map name="readymap.org" type="geocentric" version="2">
 
-<map name="Ocean" type="geocentric" version="2">
-    
-    <image name="pelican nasa blue marble" driver="tms">
-        <url>http://demo.pelicanmapping.com/rmweb/data/bluemarble-tms/tms.xml</url>
+    <image name="ReadyMap.org - Imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
     </image>
-  
-    <elevation name="pelican srtm" driver="tms">
-        <url>http://demo.pelicanmapping.com/rmweb/data/srtm30_plus_tms/tms.xml</url>
-    </elevation>
 
-    <image name="ocean" driver="gdal" enabled="false">
-        <url>../data/ocean_mask.tif</url>
-    </image>   
+    <image name="ReadyMap.org - Street Map" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/35/</url>
+    </image>
+        
+    <elevation name="ReadyMap.org - Elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
     
     <options>
-        <lighting>false</lighting>
         <terrain>
-            <loading_policy mode="sequential" compile_threads="2"/>
-            <sample_ratio>0.0625</sample_ratio>
+            <lighting>true</lighting>
+            <sample_ratio>0.125</sample_ratio>
         </terrain>
+        
+        <cache driver="filesystem">
+            <path>osgearth_cache</path>
+        </cache>
     </options>
-
+    
+    <external>
+        <sky/>
+        <ocean>
+            <texture_url>../data/watersurface1.png</texture_url>
+            <base_color>#334f7faf</base_color>
+        </ocean>
+        <viewpoint name="Los Angeles" heading="35.27" height="97.48" lat="34.051" long="-117.974" pitch="-17" range="136405"/>
+    </external>
 </map>
diff --git a/tests/openstreetmap.earth b/tests/openstreetmap.earth
index 0d98919..8fb4eee 100644
--- a/tests/openstreetmap.earth
+++ b/tests/openstreetmap.earth
@@ -1,30 +1,20 @@
 <!-- 
-OpenStreetMap's Mapnik "Slippy Map"
-
-This is an example of using the TMS driver when there is no TMS
-TileMap config available on the server. We have to manually specify:
-
- * The map's profile
- * The image source's format, tile_width, and tile_height
-
-In this case, we also specify the "google" tms_type, which will
-invert the Y tile index.
+OpenStreetMap's Mapnik "Slippy Map" - Geocentric.
+See:
+http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames
 -->
 
 <map name="OpenStreetMap" type="geocentric" version="2">
  
-    <image name="OSM on Mapnik Slippy Map" driver="tms">
-        <url>http://tile.openstreetmap.org/</url>
-        <profile>global-mercator</profile>
-        <format>png</format>
-        <tile_size>256</tile_size>
-        <tms_type>google</tms_type>
+    <image name="osm_mapnik" driver="xyz">
+        <url>http://[abc].tile.openstreetmap.org/{z}/{x}/{y}.png</url>
+        <profile>spherical-mercator</profile>
+        <cache_policy usage="none"/>
     </image>
     
     <options>
         <lighting>false</lighting>
         <terrain>
-            <loading_policy mode="preemptive"/>
             <min_tile_range_factor>8</min_tile_range_factor>
         </terrain>
     </options>
diff --git a/tests/openstreetmap_flat.earth b/tests/openstreetmap_flat.earth
index 7549c5f..b394afd 100644
--- a/tests/openstreetmap_flat.earth
+++ b/tests/openstreetmap_flat.earth
@@ -1,33 +1,20 @@
 <!-- 
-OpenStreetMap's Mapnik "Slippy Map"
-
-This is an example of using the TMS driver when there is no TMS
-TileMap config available on the server. We have to manually specify:
-
- * The map's profile
- * The image source's format, tile_width, and tile_height
-
-In this case, we also specify the "google" tms_type, which will
-invert the Y tile index.
+OpenStreetMap's Mapnik "Slippy Map" - Projected.
+See:
+http://wiki.openstreetmap.org/wiki/Slippy_map_tilenames
 -->
 
 <map name="OpenStreetMap" type="projected" version="2">
 
     <options>
-        <profile>global-mercator</profile>
+        <profile>spherical-mercator</profile>
         <lighting>false</lighting>
-        <terrain>
-            <loading_policy mode="preemptive"/>
-        </terrain>
     </options>
     
-    <image name="OSM on Mapnik" driver="tms">
-        <url>http://tile.openstreetmap.org/</url>
-        <profile>global-mercator</profile>
-        <format>png</format>
-        <tile_width>256</tile_width>
-        <tile_height>256</tile_height>
-        <tms_type>google</tms_type>
+    <image name="osm_mapnik" driver="xyz">
+        <url>http://[abc].tile.openstreetmap.org/{z}/{x}/{y}.png</url>
+        <profile>spherical-mercator</profile>
+        <cache_policy usage="none"/>
     </image>
     
 </map>
diff --git a/tests/readymap-osm.earth b/tests/readymap-osm.earth
new file mode 100644
index 0000000..d30d587
--- /dev/null
+++ b/tests/readymap-osm.earth
@@ -0,0 +1,38 @@
+<!--
+osgEarth Sample - ReadyMap.ORG Server - http://readymap.org
+
+ReadyMap.ORG provides free global base map data for osgEarth developers!
+This tiled, worldwide dataset of imagery, elevation, and street map data
+is a great base map that provides global context for your own local datasets.
+It works "out of the box" with osgEarth applications.
+
+**** NOTICE ****
+YOU ARE RESPONSIBLE for abiding by the TERMS AND CONDITIONS outlined at:
+http://readymap.org
+
+-->
+<map name="readymap.org" type="geocentric" version="2">
+
+    <image name="readymap_imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
+    </image>
+
+    <image name="readymap_streets" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/35/</url>
+    </image>
+        
+    <elevation name="readymap_elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
+    
+    <options>
+        <terrain>
+            <lighting>false</lighting>
+            <sample_ratio>0.125</sample_ratio>
+        </terrain>
+    </options>
+    
+    <external>
+        <viewpoint name="Los Angeles" heading="35.27" height="97.48" lat="34.051" long="-117.974" pitch="-17" range="136405"/>
+    </external>
+</map>
diff --git a/tests/readymap.earth b/tests/readymap.earth
index ba70850..ddc5555 100644
--- a/tests/readymap.earth
+++ b/tests/readymap.earth
@@ -13,31 +13,12 @@ http://readymap.org
 -->
 <map name="readymap.org" type="geocentric" version="2">
 
-    <image name="ReadyMap.org - Imagery" driver="tms">
+    <image name="readymap_imagery" driver="tms">
         <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
     </image>
-
-    <image name="ReadyMap.org - Street Map" driver="tms">
-        <url>http://readymap.org/readymap/tiles/1.0.0/35/</url>
-    </image>
         
-    <elevation name="ReadyMap.org - Elevation" driver="tms">
+    <elevation name="readymap_elevation" driver="tms">
         <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
     </elevation>
     
-    <options>
-        <terrain>
-            <lighting>false</lighting>
-            <compositor>multitexture</compositor>
-            <sample_ratio>0.125</sample_ratio>
-        </terrain>
-        
-        <cache type="tms">
-            <path>osgearth_cache</path>
-        </cache>
-    </options>
-    
-    <external>
-        <viewpoint name="Los Angeles" heading="35.27" height="97.48" lat="34.051" long="-117.974" pitch="-17" range="136405"/>
-    </external>
 </map>
diff --git a/tests/refresh.earth b/tests/refresh.earth
new file mode 100644
index 0000000..bbb2184
--- /dev/null
+++ b/tests/refresh.earth
@@ -0,0 +1,33 @@
+<!--
+osgEarth Sample - Refresh
+
+This example is a test of a dynamic image capability that refreshes an image every N seconds.  This doesn't really serve any purpose other than to serve
+as a an example of how one might go about providing a dynamically refreshing image for a tile.
+-->
+<map name="refresh" type="geocentric" version="2">
+
+    <image name="Refresh" driver="refresh">
+	    <!--This url is a traffic camera that changes periodically.  The resolution isn't great but you can get the idea.
+		You can also point to a local file, load it in an image editing program and save it and the new image will appear
+		-->
+        <url>http://webcam.mta.info/mta3/servlet/MtaImageServlet?cam_id=5</url>
+		
+		<!--Polling frequency.  How often to refresh the image.  You don't want this too high or too many images will be loaded since the same image applies to every tile.-->
+		<frequency>2.0</frequency>
+    </image>
+  
+    
+    <options>
+        <terrain>
+            <lighting>false</lighting>            
+			<!--
+			Setting the filters to linear disables mipmapping and reduces frame breaks b/c many new images are being sent to the graphics card when it refresh
+			and can cause stalls when generating mipmaps
+			-->
+			<min_filter>LINEAR</min_filter>
+			<mag_filter>LINEAR</mag_filter>
+			
+        </terrain>
+    </options>
+    
+</map>
diff --git a/tests/shadows.earth b/tests/shadows.earth
new file mode 100644
index 0000000..fb2a188
--- /dev/null
+++ b/tests/shadows.earth
@@ -0,0 +1,39 @@
+<!--
+osgEarth Sample - ReadyMap Shadows - http://readymap.org
+
+Run with the osgearth_shadow example.  Shows how to set the nodemasks separately for the terrain skirts and surface
+so that skirts don't cast shadows to avoid visual artifacts.
+
+ReadyMap.ORG provides free global base map data for osgEarth developers!
+This tiled, worldwide dataset of imagery, elevation, and street map data
+is a great base map that provides global context for your own local datasets.
+It works "out of the box" with osgEarth applications.
+
+**** NOTICE ****
+YOU ARE RESPONSIBLE for abiding by the TERMS AND CONDITIONS outlined at:
+http://readymap.org
+
+-->
+<map name="shadows" type="geocentric" version="2">
+
+    <image name="readymap_imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
+    </image>
+        
+    <elevation name="readymap_elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
+	
+	<options>
+	  <terrain>
+	    <surface_node_mask>1</surface_node_mask>
+	    <skirt_node_mask>2</skirt_node_mask>
+	  </terrain>
+	</options>
+       
+    <external>
+        <viewpoints>
+            <viewpoint name="Mt Rainier" heading="0" height="97.48" lat="46.852" long="-121.759" pitch="-17" range="30000"/>
+        </viewpoints>
+    </external>
+</map>
diff --git a/tests/simple_caching.earth b/tests/simple_caching.earth
deleted file mode 100644
index f00fd16..0000000
--- a/tests/simple_caching.earth
+++ /dev/null
@@ -1,22 +0,0 @@
-<!--
-osgEarth Sample
-
-Shows how to set up a simple map level cache
--->
-
-<map name="My Map" type="geocentric" version="2">
-
-  <options>
-      <!--Specify a map level "tms" cache for all images and heightfields.--> 
-      <cache type="tms">
-          <path>cache_dir</path>
-      </cache>
-  </options>
-
-  <!--Because the bluemarble image doesn't have a cache element of its own, it will inherit the map level cache-->
-  <image name="bluemarble" driver="tms">
-     <url>http://demo.pelicanmapping.com/rmweb/data/bluemarble-tms/tms.xml</url>       
-  </image>
-  
-</map>
-
diff --git a/tests/simple_model.earth b/tests/simple_model.earth
new file mode 100644
index 0000000..cea3881
--- /dev/null
+++ b/tests/simple_model.earth
@@ -0,0 +1,25 @@
+<!-- 
+osgEarth Sample - Simple Model Driver
+Demonstates how to place a model at a location using the simple model driver.  If you do not specify a location the model is loaded as is to the scene graph so
+needs to be absolutely positioned.
+-->
+
+<map version="2">
+    <image driver="gdal" name="world-tiff" cache_enabled="false">
+        <url>../data/world.tif</url>
+        <caching_policy usage="no_cache"/>
+    </image>
+	
+	<model name = "cow" driver="simple">
+	  <url>../data/red_flag.osg.100,100,100.scale</url>
+	  <location>-74.018 40.717 10</location>	  
+	</model>
+    
+    <options lighting="false">
+        <terrain min_lod="12"/>
+    </options>
+	
+	<external>
+        <viewpoint name="Zoom to model" heading="0" height="0" lat="40.717" long="-74.018" pitch="-90" range="6000"/>    
+    </external>	
+</map>
diff --git a/tests/sqlite3_cache.earth b/tests/sqlite3_cache.earth
deleted file mode 100644
index 52323e0..0000000
--- a/tests/sqlite3_cache.earth
+++ /dev/null
@@ -1,22 +0,0 @@
-<map name="map" version="2">
-
-    <options>
-        <cache type="sqlite3">
-            <path>test_sqlite3.cachedb</path>
-            <serialized>false</serialized>
-            <async_writes>true</async_writes>
-            <max_size>100</max_size>
-        </cache>
-    </options>
-    
-    <image name="test.imagery" driver="tms">
-        <url>http://demo.pelicanmapping.com/rmweb/data/bluemarble-tms/tms.xml</url>
-    </image>
-    
-    <heightfield name="test.elevation.nobathy" driver="tms">
-        <url>http://demo.pelicanmapping.com/rmweb/data/srtm30_plus_tms/tms.xml</url>
-        <nodata_min>-1.0</nodata_min>
-    </heightfield>
-    
-</map>
-
diff --git a/tests/srtm.earth b/tests/srtm.earth
index ccc8a47..5d50825 100644
--- a/tests/srtm.earth
+++ b/tests/srtm.earth
@@ -14,12 +14,5 @@ The heightfield is draped with the NASA Blue Marble imagery.
   <heightfield name="pelican srtm" driver="tms">
     <url>http://demo.pelicanmapping.com/rmweb/data/srtm30_plus_tms/tms.xml</url>
   </heightfield>
-  
-  <options>
-      <terrain>
-          <vertical_scale>2</vertical_scale>
-          <loading_policy mode="sequential"/>
-      </terrain>
-  </options>
-  
+
 </map>
diff --git a/tests/t.earth b/tests/t.earth
new file mode 100644
index 0000000..8669bef
--- /dev/null
+++ b/tests/t.earth
@@ -0,0 +1,34 @@
+<!--
+osgEarth Sample - ReadyMap.ORG Server - http://readymap.org
+
+ReadyMap.ORG provides free global base map data for osgEarth developers!
+This tiled, worldwide dataset of imagery, elevation, and street map data
+is a great base map that provides global context for your own local datasets.
+It works "out of the box" with osgEarth applications.
+
+**** NOTICE ****
+YOU ARE RESPONSIBLE for abiding by the TERMS AND CONDITIONS outlined at:
+http://readymap.org
+
+-->
+<map name="readymap.org" type="geocentric" version="2">
+
+    <image name="ReadyMap.org - Imagery" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/7/</url>
+    </image>
+
+    <image name="ReadyMap.org - Street Map" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/35/</url>
+    </image>
+        
+    <elevation name="ReadyMap.org - Elevation" driver="tms">
+        <url>http://readymap.org/readymap/tiles/1.0.0/9/</url>
+    </elevation>
+    
+    <options>
+        <terrain>
+            <lighting>false</lighting>
+        </terrain>
+    </options>
+    
+</map>
diff --git a/tests/vertical_datum.earth b/tests/vertical_datum.earth
index bf8023b..014e999 100644
--- a/tests/vertical_datum.earth
+++ b/tests/vertical_datum.earth
@@ -14,7 +14,7 @@ exaggeration in order to make the geoid's shape stand out.
     <options>
         <profile>
             <srs>epsg:4326</srs>
-            <vsrs>egm96-meters</vsrs>
+            <vdatum>egm96</vdatum>
         </profile>
         <terrain>
             <vertical_scale>5000.0</vertical_scale>
diff --git a/tests/vpb_earth_bayarea.earth b/tests/vpb_earth_bayarea.earth
index caf5db8..562c34c 100644
--- a/tests/vpb_earth_bayarea.earth
+++ b/tests/vpb_earth_bayarea.earth
@@ -18,6 +18,7 @@ This example pulls imagery and dems from an online VirtualPlanetBuilder generate
     
     <options>
         <lighting>false</lighting>
+        <cache_policy usage="no_cache"/>
     </options>
 
 </map>
diff --git a/tests/wms_jpl_global_mosaic.earth b/tests/wms_jpl_global_mosaic.earth
deleted file mode 100644
index 73ef154..0000000
--- a/tests/wms_jpl_global_mosaic.earth
+++ /dev/null
@@ -1,16 +0,0 @@
-<map name="JPL" type="geocentric" version="2">   
-   <image name="daily_planet" driver="wms">
-       <url>http://onearth.jpl.nasa.gov/wms.cgi</url>
-       <layers>global_mosaic</layers>
-       <format>jpeg</format>
-       <styles>visual</styles>
-       <tile_size>512</tile_size>
-   </image> 
-   
-   <options>
-       <terrain>
-           <loading_policy mode="preemptive"/>
-           <lighting>false</lighting>
-       </terrain>
-   </options>
-</map>
diff --git a/tests/wms_jpl_landsat.earth b/tests/wms_jpl_landsat.earth
new file mode 100644
index 0000000..7fe9099
--- /dev/null
+++ b/tests/wms_jpl_landsat.earth
@@ -0,0 +1,18 @@
+<!-- 
+osgEarth Sample - WMS Driver
+Demonstrates the WMS Driver connecting to the JPL landsat tiled WMS using their TileService spec.
+-->
+
+<map version="2">
+	
+	<image name="Landsat" driver="wms">
+        <url>http://onearth.jpl.nasa.gov/wms.cgi</url>
+        <srs>EPSG:4326</srs>
+        <tile_size>512</tile_size>
+        <layers>global_mosaic</layers>
+        <styles>visual</styles>
+        <format>jpeg</format>
+    </image>  
+    
+    <options lighting="false"/>
+</map>
diff --git a/tests/wms_jpl_tileservice.earth b/tests/wms_jpl_tileservice.earth
deleted file mode 100644
index b65b5e0..0000000
--- a/tests/wms_jpl_tileservice.earth
+++ /dev/null
@@ -1,24 +0,0 @@
-<!--
-  JPL TileService example
-  
-  The JPL uses a custom custom tiling scheme as an extension to WMS to provide pre-cached tiles for fast access.  This example shows
-  how to use this capability in osgEarth. 
--->
-
-<map name="JPL" type="geocentric" version="2">
-  
-   <!--Decrease the min_tile_range_factor so tiles don't come in so early-->
-   <min_tile_range_factor>5</min_tile_range_factor>
-
-   <!--
-    Specify the JPL source.  There are certain patterns that are pre-tiled.
-    If the layers, format and tile_size all match one of those patterns, then the tiled access will be used.
-	If not, osgEarth will fall back to using the regular WMS server.
-	-->
-   <image name="mosaic" driver="wms">
-       <url>http://onearth.jpl.nasa.gov/wms.cgi</url>
-       <layers>global_mosaic</layers>
-       <format>jpeg</format>
-       <tile_size>512</tile_size>
-   </image> 
-</map>
diff --git a/tests/wms_naip.earth b/tests/wms_naip.earth
index 43b9d04..4029c0e 100644
--- a/tests/wms_naip.earth
+++ b/tests/wms_naip.earth
@@ -8,6 +8,6 @@ Access to the USGS Seamless WMS Server - NAIP Dataset
     <srs>EPSG:4326</srs>
 	<tile_size>256</tile_size>
 	<layers>0</layers>
-	<format>jpeg</format>
+	<format>png</format>
   </image>
 </map>
diff --git a/tests/wms_nexrad.earth b/tests/wms_nexrad.earth
index 90f945f..328a1ba 100644
--- a/tests/wms_nexrad.earth
+++ b/tests/wms_nexrad.earth
@@ -10,13 +10,14 @@ US NEXRAD 45 minute radar returns overlaid on imagery.
         <url>../data/world.tif</url>
     </image>
     
-    <image name="nexrad45min" driver="wms" loading_weight="2">
+    <image name="nexrad45min" driver="wms">
         <url>http://mesonet.agron.iastate.edu/cgi-bin/wms/nexrad/n0r.cgi</url>
         <format>png</format>
         <layers>nexrad-n0r</layers>
         <tile_size>256</tile_size>
         <srs>EPSG:4326</srs>
         <transparent>true</transparent>
+        <cache_policy usage="no_cache"/>
     </image>
     
     <options>
diff --git a/tests/worldwind_elevation.earth b/tests/worldwind_elevation.earth
deleted file mode 100644
index 402f33b..0000000
--- a/tests/worldwind_elevation.earth
+++ /dev/null
@@ -1,27 +0,0 @@
-<!--
-osgEarth Sample
-
-WorldWind Elevation example
-
-This example shows how to use the NASA WorldWind elevation reader mixed with ArcGIS imagery
--->
-
-<map name="WorldWind Elevation" type="geocentric" version="2">
-   
-    <image name="arcgisonline esri imagery" driver="arcgis">
-        <url>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer</url>
-        <nodata_image>http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer/tile/100/0/0.jpeg</nodata_image>
-    </image>
-       
-    <heightfield name="WorldWind bil" driver="worldwind">
-	  <!-- Specify where to download SRTM zip files to and store the resuling .bil files -->
-      <worldwind_cache>worldwind_SRTM</worldwind_cache>
-    </heightfield>
-		
-    <options>
-        <terrain>
-            <vertical_scale>2</vertical_scale>
-            <sample_ratio>0.25</sample_ratio>    
-        </terrain>
-    </options>
-</map> 
\ No newline at end of file
diff --git a/tests/worldwind_tileservice.earth b/tests/worldwind_tileservice.earth
deleted file mode 100644
index 23b837c..0000000
--- a/tests/worldwind_tileservice.earth
+++ /dev/null
@@ -1,19 +0,0 @@
-<!--
-osgEarth Sample
-
-WorldWind TileService example
-
-TileService was created to support WorldWind layers. This example shows how
-to use it.
--->
-
-<map name="TileService" type="geocentric" version="2">
-
-   <image name="tileservice" driver="tileservice">
-       <url>http://s0.tileservice.worldwindcentral.com/getTile?</url>
-       <dataset>bmng.topo.bathy.200401</dataset>
-       <format>jpg</format>
-	   <max_level>7</max_level>
-   </image>  
-   
-</map>
diff --git a/tests/yahoo_aerial.earth b/tests/yahoo_aerial.earth
index c0a83de..fdd3a7a 100644
--- a/tests/yahoo_aerial.earth
+++ b/tests/yahoo_aerial.earth
@@ -14,9 +14,6 @@ the provider's terms of service when using their data.
     </image>
     
     <options>
-        <terrain>
-            <loading_policy mode="sequential"/>
-        </terrain>
         <lighting>false</lighting>
     </options>
    
diff --git a/tests/yahoo_maps.earth b/tests/yahoo_maps.earth
index 6e09161..3791a6f 100644
--- a/tests/yahoo_maps.earth
+++ b/tests/yahoo_maps.earth
@@ -14,15 +14,7 @@ the provider's terms of service when using their data.
     </image>
     
     <options>
-        <terrain>
-            <loading_policy mode="sequential"/>
-            <compositor>multitexture_gpu</compositor>
-        </terrain>
         <lighting>false</lighting>
-		
-		<cache driver="tms">
-		  <path>yahoo_cache</path>
-		</cache>		
     </options>
    
 </map>

-- 
osgEarth terrain rendering toolkit



More information about the Pkg-grass-devel mailing list